[SCM] Audacity debian packaging branch, upstream, updated. upstream/1.3.7-1-g280dd96
bdrung-guest at users.alioth.debian.org
bdrung-guest at users.alioth.debian.org
Fri Jul 17 12:30:32 UTC 2009
The following commit has been merged in the upstream branch:
commit 280dd9686ee6dd759580134c683892605925ed59
Author: Benjamin Drung <bdrung at gmail.com>
Date: Fri Jul 17 14:26:37 2009 +0200
Imported upstream version 1.3.8
diff --git a/LICENSE.txt b/LICENSE.txt
index ed5560c..e8a5cdf 100644
--- a/LICENSE.txt
+++ b/LICENSE.txt
@@ -6,6 +6,10 @@ directory may be released under a different license
README.txt file, and for specific details, see the license
information inside each subdirectory of lib-src.
+Documentation is distributed under the Creative Commoms license.
+Please see here for that:
+http://creativecommons.org/licenses/by/3.0/legalcode
+
The full text of the GNU GPL follows:
GNU GENERAL PUBLIC LICENSE
diff --git a/README.txt b/README.txt
index 87d370e..082922f 100644
--- a/README.txt
+++ b/README.txt
@@ -10,20 +10,23 @@ Personal support with Audacity is not provided by e-mail,
but on our Forum:
http://audacityteam.org/forum/
-Audacity is copyright (c) 1999-2008 by Audacity Team.
+Audacity is copyright (c) 1999-2009 by Audacity Team.
This copyright notice applies to all documents in the
Audacity source code archive, except as otherwise noted
(mostly in the lib-src subdirectories).
+The documentation for Audacity is licensed under the Creative Commons license
+http://creativecommons.org/licenses/by/3.0/legalcode
+
"Audacity" is a registered trademark of Dominic Mazzoni.
-Version 1.3.7 Beta
+Version 1.3.8 Beta
Contents of this README:
1. Licensing
-2. Changes in version 1.3.7 Beta
-3. Known Issues
+2. Changes in version 1.3.8 Beta
+3. Known Issues at Release
4. Source Code, Libraries and Additional Copyright Information
5. Compilation Instructions
6. Previous Changes going back to version 1.1.0
@@ -51,253 +54,246 @@ to http://www.gnu.org/copyleft/gpl.html or write to
59 Temple Place - Suite 330
Boston, MA 02111-1307 USA
-
--------------------------------------------------------------------------------
-2. Changes in version 1.3.7 Beta
-
-Cross-platform Bug Fixes:
- * Muting/soloing caused incorrect channel results in exported
- stereo files
- * Noise Removal and all Nyquist effects pasted the original
- unmodified audio at the end of the modified region
- * Noise Removal inserted a tail of low level noise at the end
- of the modified region
- * Nyquist and Compressor plug-ins did not display moving bars
- in progress dialogue and over-estimated "Remaining Time"
- * Cancelling Nyquist effects deleted unprocessed audio
- * Change Speed and Change Tempo failed to modify the original
- selection length
- * Cut lines invisible
- * Fixed various bugs importing multi-stream files via FFmpeg
- * File > Export as WAV could be corrupted if overwriting
- an imported WAV read direct from the file
- * Export multiple "Other uncompressed files" choice always
- produced 16-bit PCM audio irrespective of chosen options.
- * MP3 export usually produced a 128 kbps constant bit rate file
- irrespective of chosen options; reported length often
- incorrect
- * MP3 ID3 Genre tag misread on import if the genre list in
- Metadata Editor was opened and saved
- * Exported metadata tags in MP3, OGG and FLAC often not seen by
- player software - now substantially improved
- * WMA exports (via FFmpeg)corrupted if metadata tags included
- * Some multi-channel recording devices that previously recorded
- more than two channels no longer did so
- * Generated audio did not fit in window
- * No warning was given when saving an empty project
- * Beep on completing longer process did not work on many
- systems
- * fixed crashes importing lists of files (.LOF), in Meter Toolbar
- and Change Speed
-
-Platform-specific Bug Fixes:
- * Windows Vista: crash opening Preferences with no sound
- devices enabled and connected
- * Mac OS X and Linux:
- * Spurious clipping at start of playback
- * Labels did not accept certain legal characters
- * Shortcuts did not work after running effects
- * Project Rate did not change to respect rate of first
- imported file if that rate was unsupported
- * Mac OS X only:
- * Crash resizing project window
- * Menu items became inactive or visibly corrupted
- * File > Open dialogue did not always work on OS X 10.4
- * Impossible to set independent Command and Control
- shortcuts that shared the same key
- * Freeze importing uncompressed files via On-Demand
- (please report any remaining instances of this to:
- feedback at audacityteam.org)
- * Portable settings were not picked up, instead settings
- were taken from the default location
- * Fixed unavailability of FFmpeg installer
+2. Changes in version 1.3.8 Beta:
New Features:
- * F11 Full Screen mode
- * High-quality "Sliding Time Scale/Pitch Shift" effect
- * Audio Contrast Analyzer for testing audio on the
- internet for WCAG2 accessibility compliance.
- * Windows: sound devices can now be opened using the
- more efficient DirectSound API
-
-Other changes:
- * Latency correction should be improved for many users
- by employing a fixed rather than variable correction
- * Grouping of Effects into categories turned off until
- a way is added for users to do so themselves
- * Numerous minor interface improvements such as Metadata
- Editor navigation, new "hh:mm:ss + hundredths"
- selection format
- * Note: Windows users wanting to export MP3 files will
- require the latest version of the LAME encoder from
- http://lame.buanzo.com.ar/
+ * Effects and Analysis:
+ * VST Effects now display GUI by default
+ * Faster Equalization and Noise Removal; improved
+ Truncate Silence and Click Track
+ * Chains applied to files now clear temporary data after
+ processing each file
+ * Updated Nyquist implementation with support for SAL
+ syntax and improved memory management
+ * Plot Spectrum now analyzes up to 237.8 seconds of audio,
+ with separate windows for each project and improved
+ display; new preferences for Spectrograms
+ * Contrast Analysis tool now modeless for easier use
+ * Interface:
+ * Draft Manual/Quick Help included in Windows and Mac
+ installers
+ * New "Mixer Board" view with per-track VU meters
+ * Mute, solo, gain, pan and track height saved in projects
+ * More compact Preferences window with easier-to-use Keyboard
+ tab and new toolbars shortcuts
+ * New Screenshot Tools and improved screen reader support
+ * Other:
+ * Record more than 16 channels (hardware/drivers permitting)
+ * Improved support for non-mmap ALSA devices such as PulseAudio
+ * 32-bit float data over 0 dB now handled without clipping
+ * "Stop" option when importing preserves already imported data
+ * AMR NB export now supported if the optional FFmpeg library
+ is installed
+ * Faster waveform drawing and better response in multi-track
+ projects
+
+Bug fixes for:
+ * Export Multiple: failed with no export or warning if empty
+ label encountered; silenced project and exported files if
+ overwriting imported WAV files without copying the data in
+ * Metadata Editor hidden if it was on a now unavailable second
+ monitor
+ * Misaligned audio after "Split New" or Noise Removal effect
+ * Incorrect label movement and paste with linked audio and label
+ tracks
+ * Equalization, Cut Preview and Advanced Mixing Options dialogue
+ * (Linux) Mixer Toolbar should now adjust levels and select input
+ sources properly
+ * "Audio cache" preference caused crashes - data is now only
+ cached in memory if available RAM is above a level defined
+ in preferences
+ * Various other crashes
--------------------------------------------------------------------------------
-3. Known Issues
+3. Known Issues at Release
Please also check:
- http://audacityteam.org/wiki/index.php?title=Known_Issues
+ http://wiki.audacityteam.org/index.php?title=Known_Issues
for details of any issues that have been identified after release of
this version.
-
- * Analyze > Silence Finder and Analyze > Beat Finder crash on
- cancelling progress dialogue.
-
- * Creating a Label Track (with or without a label), then pasting in
- error into any selected audio track before clipboard has content
- causes a crash. Pasting into the Label Track does not crash
-
- * Muting specific time-shifted mono tracks when exporting produces
- audio at wrong point on timeline in exported file if muted tracks
- are to left of unmuted.
-
- * In projects containing many tracks, clips dragged at the bottom of
- the project may jump upwards into tracks towards the top when they
- pass the snap-to point with other clips.
-
+ * Some VST plug-ins may have two instances if vst-bridge present.
+
+ * Imports:
+ * Non-MP3 files imported via drag or Recent Files will crash
+ or freeze when filter in file open window is set to MP3.
+ * (Windows) The Audacity 1.3.8 executable cannot be added to
+ the Explorer "Open With" menu if you have another version
+ of Audacity also called "audacity.exe". You can set the
+ file association to always use Audacity 1.3.8 to open the
+ required file type, but it will not appear in the list
+ accessed by the "Open With" context menu item.
+
* Exports:
+ * Metadata Editor appears before the Export window when exporting
+ to any format. Click OK in Metadata Editor to proceed to the
+ Export window. If you do not use metadata, you can go to the
+ Import / Export tab of Preferences and uncheck "Show Metadata
+ Editor prior to export step".
* WAVEX (Microsoft) headers: GSM 6.10 files cannot be exported, and
U-Law/A-Law files may not be playable
* M4A: exports at rates below 44100 Hz have incorrect sample rates,
and 38000 Hz exports may not play properly (FFmpeg bugs); M4A
- renamed to MOV will not play in Windows iTunes or QuickTime
-
- * Export Multiple:
- * fails with no export or warning if an empty label is encountered.
-
- * if user chooses to overwrite WAV files imported with preference
- set to "read directly", the exported files and the project are
- silenced. Set the preference to "Make a copy..." or use the
- "FFmpeg-compatible files" import filter.
+ renamed to MOV will not play on Windows in iTunes or QuickTime
+ * Muting specific time-shifted mono tracks produces audio at wrong
+ point on timeline in exported file if muted tracks are to left
+ of unmuted.
- * Applying a chain including Equalization to files (File > Apply
- Chain... > Apply to Files) leads to corruption of the waveform
-
- * Cut Preview: when label track present and linking on, audio playback
- continues through the region instead of omitting it.
+ * It is currently possible to attempt simultaneous imports or exports
+ by using shortcuts (or File > New on Mac): Audacity is not yet
+ capable of running these simultaneous operations safely, and
+ attempting this may crash your project.
- * Nyquist effects remove or corrupt cut and split lines in the
- modified region.
+ * Genre WAV info tag (IGNR) not supported due to limitation in
+ libsndfile.
+
+ * Effects and Analysis:
+ * Nyquist effects, SoundTouch, SBSMS and Generators join separate
+ clips together.
+ * Equalization used in a chain applies the parameters last used
+ via the Effect menu instead of those stored in chain.
+ * LADSPA Multiband EQ (optional download) may not be visible in
+ the Effect menu, or may crash in use.
+ * Compressor produces shorter attack/decay times than those specified
+ in the dialogue.
+
+ * Audio generated or pasted when cursor is in white space overwrites
+ instead of inserts.
+
+ * If playback scrolls, cursor jumps to start of scroll on stop, hiding
+ previously visible audio preceding the playback position.
* If shortcut for "Add label at playback position" is an unmodified
- character, using it a second time while playing or recording a
- track enters that shortcut in a label placed at the start cursor.
-
- * After using Plot Spectrum in one window then clearing to a new
- window, Plot Spectrum no longer opens until Audacity is exited
- and restarted.
+ character, confirming the second label with ENTER places that
+ character in a label at the start cursor.
- * Preferences window:
- * overflows in some locales using smaller screen sizes or larger
- fonts, and on Macs at 1024x768 or smaller.
- * OK button does not work when a tab is selected in the left-hand
- panel.
+ * Preferences window: OK button does not respond to ENTER when a tab
+ is selected in the left-hand panel.
- * LADSPA Multiband EQ may not be visible in the Effect menu, and
- may crash in use.
+ * At 120 DPI, importing a second stereo track causes the pre-existing
+ stereo track above to split.
- * On-demand:
+ * On-Demand:
* does not work if using the optional FFmpeg importer (that is, if
- "FFmpeg-compatible files" set in the import window)
+ "FFmpeg-compatible files" set in the import dialogue)
* when importing a mixture of uncompressed and compressed files,
- on-demand loading does not start until normal import of the
- compressed files completes, if the names of the compressed files
- come earlier in the alphabet
-
- * Linked audio and label tracks:
- * Labels do not move with Effect > Repeat, Reverse, and Truncate
- Silence, or when time-shifting clips
- * When a Time Track is present, cut, copy and paste have no effect
-
- * When in Spectrum, Spectrum log or Pitch view, pasting in audio then
- zooming in causes the pasted content beyond the horizontal scroll
- to disappear.
-
- * When more than one track is selected, and the region selected in the
- clips includes white space, "Split New" and "Noise Removal" cause
- the clip(s) to perform unwanted alignments instead of remaining at
- their original time position. The problem occurs whether or not the
- entire audio of the tracks is selected.
-
- * Split New: If selecting part of a clip from the left edge of the
- clip, the newly split clip wrongly aligns with the left edge of the
- residual clip in the original track.
-
- * Import > Audio produces no entries in File > Recent Files.
-
- * "Audio Cache" on the Directories tab of Preferences caches most
- audio data for the duration of the session, including project data
- and imported files. Enabling it could cause a crash when making
- long recordings or opening large files or projects.
-
- * It is currently possible to attempt simultaneous imports or exports
- by using shortcuts (or File > New on Mac). Audacity is not yet
- capable of running these simultaneous operations safely, and
- attempting this may crash your project.
+ the compressed files intentionally load first to minimise UI
+ blockage, unless File > Open is used so that the files import
+ into separate projects. This distinction is not yet observed on
+ Windows. On all platforms, multiple files in one project will
+ not necessarily be sorted in file name order after import.
+
+ * Mixer Board:
+ * The slider maximum gain is +6 dB, and its tooltip will not show
+ more than this maximum even if the gain applied on the Track Panel
+ slider is higher.
+ * Selecting a track by clicking the Track Panel does not select it on
+ the Mixer Board.
+ * The meter range does not reflect a change in the dB range meter
+ preferences until restart.
* Not all menu items are correctly enabled when the preference:
- "Select all audio in project, if none selected" is checked.
+ "Select all audio in project, if none selected" is checked
- * A few interface elements do not change language without restart.
+ * A few interface elements do not change correctly after a language
+ change until restart.
* Calculation of "disk space remains for recording (time)" incorrect
- when recording in 24 bit quality. You may record for 50% longer
+ when recording in 24-bit quality. You may record for 50% longer
than the indicated time.
- * Pressing Play (but not spacebar) in a second project when another is
- already playing stops playback of the first project.
+ * Pressing Play (but not Space) in a second project when another is
+ already playing stops playback of the first project
* Projects created by Audacity 1.1.x or earlier are no longer
supported. Export each project track as WAV using the appropriate
legacy version of Audacity, then import the WAV files into current
- Audacity.
+ Audacity
* Audacity can import, display and cut/copy/paste MIDI files, then
- export them, but they cannot be played. Undoing an edit with a MIDI
+ export them, but they cannot be played; undoing an edit with a MIDI
track open causes the MIDI data to be lost in Windows builds
- * Windows and Linux only: Welcome Message: On some systems/browsers,
- links are not brought to top when the browser is already running.
-
- * Windows (reported on): There have been reports of clicks during
- recording on some Windows XP systems using Audacity 1.3.4 and
- later, where 1.2.6 had no problem. It is unclear if current
- releases will have this issue or if it will occur on other
- operating systems. Users can help us by sending any reports of this
- problem to:
- feedback at audacityteam.org
-
- * Windows only: Audacity is incompatible with some professional sound
+ * Audacity requires restart to detect audio devices plugged in while
+ it is running.
+
+ * Intermittently occurring bugs: Please write to feedback at audacityteam.org
+ if you experience any of these known but not fully understood
+ issues, giving us steps to reproduce them so they can be fixed:
+
+ * Projects do not reopen properly with "orphaned" or "missing"
+ blockfiles or "duplicate attribute" errors
+ * Projects do not re-open properly from the Automatic
+ Crash Recovery dialogue
+ * Projects crash when applying repeated effects towards
+ the end of audio tracks
+ * AIFF files import as noise
+ * (Windows XP, reported on) Clicks during recording
+ * (Windows) Timer Record unreliable with recordings starting
+ before and ending after midnight
+ * (Linux) After opening a sufficiently long audio file, opening a
+ second file of any size leads to locked GUI/console messages
+ until first file completes play
+
+ * (Windows) On Vista, and on XP with some USB microphones, the system
+ mixer level sliders and the Audacity Mixer Toolbar level sliders
+ act independently. The achieved recorded level only matches the
+ level indicated on the Recording VU meter if the Audacity input
+ slider is at 100%.
+
+ * (Windows) On Vista, input sources such as microphone and line-in
+ must be selected in the Audacity Audio I/O Preferences, not the
+ Mixer Toolbar input selector.
+
+ * (Windows) Timer Record cannot maintain scheduled duration if system
+ clock changes.
+
+ * (Windows) Audacity is incompatible with some professional sound
cards and may crash if one of these cards is the default when you
- open Audacity. As a workaround, make a different sound card your
+ open Audacity: as a workaround, make a different sound card your
default when using Audacity, but please let us know if this affects
you so we can track down and solve the problem.
- * Mac OS X only: Very occasionally, users may find that recording
+ * (Mac OS X) Very occasionally, users may find that recording
causes "error opening sound device", or that after running
- Audacity, other media players don't produce any sound, or crash.
- To resolve this, set up your sound device in Apple Audio MIDI Setup
- to work in stereo, 16 bits, with a sample rate of 44100 Hz or
+ Audacity, other media players don't produce any sound, or crash:
+ to resolve this, set up your sound device in Apple Audio MIDI Setup
+ to work in stereo, 16-bit, with a sample rate of 44100 Hz or
48000 Hz, and set the sample format and rate identically in
Audacity. More help at:
http://audacityteam.org/forum/viewtopic.php?f=17&t=5064
- * Mac OS X only: If using Audacity when the "Hear" audio plug-in is
+ * (Mac OS X) If using Audacity when the "Hear" audio plug-in is
running (or has been since boot), there will be excessive memory
- usage which could cause a crash. This appears to be due to buggy
+ usage which could cause a crash: appears to be due to buggy
memory allocation in "Hear".
- * Linux only: Audacity now supports interfacing with Jack, however
- this has not been tested, and has a number of known reliability and
- usability issues. Patches to improve both will be welcomed.
+ * (Linux) Undoing or redoing a label edit may cause a crash if some
+ character strings are common to all labels.
+
+ * (Linux) Effects and other dialogues do not have focus on opening.
+ This is a bug in wxGTK for which there is no current workaround.
+ Click in the dialogue to navigate it and change parameters.
+
+ * (Linux) If Portmixer uses emulated playback volume rather than
+ native, the Audacity output slider will affect the VU playback
+ meters and these may not then reflect the actual volume level
+ of the waveform.
+
+ * (Linux) Audacity will require a FFmpeg package or build later than
+ 0.5 in order for optional FFmpeg import/export features to work.
+
+ * (Linux) Audacity now supports interfacing with JACK, but this has
+ not been tested, and has a number of known reliability and usability
+ issues: patches to improve both will be welcomed
Also note the Windows installer will not replace 1.2.x installations,
-but will install alongside them.
+but will install alongside them.
--------------------------------------------------------------------------------
@@ -330,6 +326,10 @@ GPL-compatible license. Specifically:
Reads/writes ID3 tags in MP3 files. Optional
separate download as part of libmad.
+ libflac: Xiph.Org BSD-like licence (the parts we use)
+ Decodes and Encodes Free Lossless Audio Codec files. Optional separate
+ download.
+
libmad: GPL
Decodes MP3 files. Optional separate download.
@@ -344,10 +344,20 @@ GPL-compatible license. Specifically:
Reads and writes uncompressed PCM audio files.
Included with Audacity.
+ libvamp: new-style BSD
+ Plug-in interface and support library for audio analysis plug-ins.
+ Included with Audacity.
+
libvorbis: BSD-like license.
Decodes and encodes Ogg Vorbis files. Optional
separate download.
+ portsmf: BSD-like license.
+ library for reading and writing midi files. Included with Audacity
+
+ sbsms: GPL v2
+ Pitch and tempo changing library. Included in Audacity
+
SoundTouch: LGPL
Changes tempo without changing pitch and vice versa.
Included in audacity
@@ -429,8 +439,8 @@ ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
5. Compilation instructions
-First you must download wxWidgets. Audacity 1.3.6 and later requires
-wxWidgets 2.8.9 from:
+First you must download wxWidgets. Audacity 1.3.8 and later requires
+wxWidgets 2.8.10 from:
http://www.wxWidgets.org/
@@ -455,6 +465,7 @@ and header dependencies:
To compile on Windows using MSVC++, please follow the instructions found in
compile.txt in the "win" subdirectory.
+
To compile using Xcode on Mac OS X, see the instructions in mac/compile.txt.
For more information on compilation, please visit:
@@ -469,6 +480,85 @@ or e-mail us at:
6. Previous Changes going back to version 1.1.0
+Changes in version 1.3.7 Beta:
+
+Cross-platform Bug Fixes:
+ * Muting/soloing caused incorrect channel results in exported
+ stereo files
+ * Noise Removal and all Nyquist effects pasted the original
+ unmodified audio at the end of the modified region
+ * Noise Removal inserted a tail of low level noise at the end
+ of the modified region
+ * Nyquist and Compressor plug-ins did not display moving bars
+ in progress dialogue and over-estimated "Remaining Time"
+ * Cancelling Nyquist effects deleted unprocessed audio
+ * Change Speed and Change Tempo failed to modify the original
+ selection length
+ * Cut lines invisible
+ * Fixed various bugs importing multi-stream files via FFmpeg
+ * File > Export as WAV could be corrupted if overwriting
+ an imported WAV read direct from the file
+ * Export multiple "Other uncompressed files" choice always
+ produced 16-bit PCM audio irrespective of chosen options.
+ * MP3 export usually produced a 128 kbps constant bit rate file
+ irrespective of chosen options; reported length often
+ incorrect
+ * MP3 ID3 Genre tag misread on import if the genre list in
+ Metadata Editor was opened and saved
+ * Exported metadata tags in MP3, OGG and FLAC often not seen by
+ player software - now substantially improved
+ * WMA exports (via FFmpeg)corrupted if metadata tags included
+ * Some multi-channel recording devices that previously recorded
+ more than two channels no longer did so
+ * Generated audio did not fit in window
+ * No warning was given when saving an empty project
+ * Beep on completing longer process did not work on many
+ systems
+ * fixed crashes importing lists of files (.LOF), in Meter Toolbar
+ and Change Speed
+
+Platform-specific Bug Fixes:
+ * Windows Vista: crash opening Preferences with no sound
+ devices enabled and connected
+ * Mac OS X and Linux:
+ * Spurious clipping at start of playback
+ * Labels did not accept certain legal characters
+ * Shortcuts did not work after running effects
+ * Project Rate did not change to respect rate of first
+ imported file if that rate was unsupported
+ * Mac OS X only:
+ * Crash resizing project window
+ * Menu items became inactive or visibly corrupted
+ * File > Open dialogue did not always work on OS X 10.4
+ * Impossible to set independent Command and Control
+ shortcuts that shared the same key
+ * Freeze importing uncompressed files via On-Demand
+ (please report any remaining instances of this to:
+ feedback at audacityteam.org)
+ * Portable settings were not picked up, instead settings
+ were taken from the default location
+ * Fixed unavailability of FFmpeg installer
+
+New Features:
+ * F11 Full Screen mode
+ * High-quality "Sliding Time Scale/Pitch Shift" effect
+ * Audio Contrast Analyzer for testing audio on the
+ internet for WCAG2 accessibility compliance.
+ * Windows: sound devices can now be opened using the
+ more efficient DirectSound API
+
+Other changes:
+ * Latency correction should be improved for many users
+ by employing a fixed rather than variable correction
+ * Grouping of Effects into categories turned off until
+ a way is added for users to do so themselves
+ * Numerous minor interface improvements such as Metadata
+ Editor navigation, new "hh:mm:ss + hundredths"
+ selection format
+ * Note: Windows users wanting to export MP3 files will
+ require the latest version of the LAME encoder from
+ http://lame.buanzo.com.ar/
+
Changes in 1.3.6 Beta (since 1.3.6a6 Alpha):
diff --git a/audacity.dox b/audacity.dox
index 7d405d7..d03284f 100644
--- a/audacity.dox
+++ b/audacity.dox
@@ -1,19 +1,93 @@
-# Doxyfile 1.4.6
+# Doxyfile 1.5.4
+
+# This file describes the settings to be used by the documentation system
+# doxygen (www.doxygen.org) for a project
+#
+# All text after a hash (#) is considered a comment and will be ignored
+# The format is:
+# TAG = value [value, ...]
+# For lists items can also be appended using:
+# TAG += value [value, ...]
+# Values that contain spaces should be placed between quotes (" ")
#---------------------------------------------------------------------------
# Project related configuration options
#---------------------------------------------------------------------------
+
+# This tag specifies the encoding used for all characters in the config file that
+# follow. The default is UTF-8 which is also the encoding used for all text before
+# the first occurrence of this tag. Doxygen uses libiconv (or the iconv built into
+# libc) for the transcoding. See http://www.gnu.org/software/libiconv for the list of
+# possible encodings.
+
+DOXYFILE_ENCODING = UTF-8
+
+# The PROJECT_NAME tag is a single word (or a sequence of words surrounded
+# by quotes) that should identify the project.
+
PROJECT_NAME = Audacity
-PROJECT_NUMBER = 1.3.x
+
+# The PROJECT_NUMBER tag can be used to enter a project or revision number.
+# This could be handy for archiving the generated documentation or
+# if some version control system is used.
+
+PROJECT_NUMBER = 1.3.8
+
+# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
+# base path where the generated documentation will be put.
+# If a relative path is entered, it will be relative to the location
+# where doxygen was started. If left blank the current directory will be used.
+
OUTPUT_DIRECTORY = dox/
+
+# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create
+# 4096 sub-directories (in 2 levels) under the output directory of each output
+# format and will distribute the generated files over these directories.
+# Enabling this option can be useful when feeding doxygen a huge amount of
+# source files, where putting all generated files in the same directory would
+# otherwise cause performance problems for the file system.
+
CREATE_SUBDIRS = NO
+
+# The OUTPUT_LANGUAGE tag is used to specify the language in which all
+# documentation generated by doxygen is written. Doxygen will use this
+# information to generate all constant output in the proper language.
+# The default language is English, other supported languages are:
+# Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional,
+# Croatian, Czech, Danish, Dutch, Finnish, French, German, Greek, Hungarian,
+# Italian, Japanese, Japanese-en (Japanese with English messages), Korean,
+# Korean-en, Lithuanian, Norwegian, Polish, Portuguese, Romanian, Russian,
+# Serbian, Slovak, Slovene, Spanish, Swedish, and Ukrainian.
+
OUTPUT_LANGUAGE = English
-USE_WINDOWS_ENCODING = YES
+
+# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will
+# include brief member descriptions after the members that are listed in
+# the file and class documentation (similar to JavaDoc).
+# Set to NO to disable this.
+
BRIEF_MEMBER_DESC = YES
+
+# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend
+# the brief description of a member or function before the detailed description.
+# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
+# brief descriptions will be completely suppressed.
+
REPEAT_BRIEF = YES
-ABBREVIATE_BRIEF = "The $name class" \
- "The $name widget" \
- "The $name file" \
+
+# This tag implements a quasi-intelligent brief description abbreviator
+# that is used to form the text in various listings. Each string
+# in this list, if found as the leading text of the brief description, will be
+# stripped from the text and the result after processing the whole list, is
+# used as the annotated text. Otherwise, the brief description is used as-is.
+# If left blank, the following values are used ("$name" is automatically
+# replaced with the name of the entity): "The $name class" "The $name widget"
+# "The $name file" "is" "provides" "specifies" "contains"
+# "represents" "a" "an" "the"
+
+ABBREVIATE_BRIEF = "The $name class " \
+ "The $name widget " \
+ "The $name file " \
is \
provides \
specifies \
@@ -22,215 +96,1228 @@ ABBREVIATE_BRIEF = "The $name class" \
a \
an \
the
+
+# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
+# Doxygen will generate a detailed section even if there is only a brief
+# description.
+
ALWAYS_DETAILED_SEC = NO
+
+# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all
+# inherited members of a class in the documentation of that class as if those
+# members were ordinary class members. Constructors, destructors and assignment
+# operators of the base classes will not be shown.
+
INLINE_INHERITED_MEMB = NO
+
+# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full
+# path before files name in the file list and in the header files. If set
+# to NO the shortest path that makes the file name unique will be used.
+
FULL_PATH_NAMES = NO
+
+# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag
+# can be used to strip a user-defined part of the path. Stripping is
+# only done if one of the specified strings matches the left-hand part of
+# the path. The tag can be used to show relative paths in the file list.
+# If left blank the directory from which doxygen is run is used as the
+# path to strip.
+
STRIP_FROM_PATH =
+
+# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of
+# the path mentioned in the documentation of a class, which tells
+# the reader which header file to include in order to use a class.
+# If left blank only the name of the header file containing the class
+# definition is used. Otherwise one should specify the include paths that
+# are normally passed to the compiler using the -I flag.
+
STRIP_FROM_INC_PATH =
+
+# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter
+# (but less readable) file names. This can be useful is your file systems
+# doesn't support long names like on DOS, Mac, or CD-ROM.
+
SHORT_NAMES = NO
+
+# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen
+# will interpret the first line (until the first dot) of a JavaDoc-style
+# comment as the brief description. If set to NO, the JavaDoc
+# comments will behave just like regular Qt-style comments
+# (thus requiring an explicit @brief command for a brief description.)
+
JAVADOC_AUTOBRIEF = NO
+
+# If the QT_AUTOBRIEF tag is set to YES then Doxygen will
+# interpret the first line (until the first dot) of a Qt-style
+# comment as the brief description. If set to NO, the comments
+# will behave just like regular Qt-style comments (thus requiring
+# an explicit \brief command for a brief description.)
+
+QT_AUTOBRIEF = NO
+
+# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen
+# treat a multi-line C++ special comment block (i.e. a block of //! or ///
+# comments) as a brief description. This used to be the default behaviour.
+# The new default is to treat a multi-line C++ comment block as a detailed
+# description. Set this tag to YES if you prefer the old behaviour instead.
+
MULTILINE_CPP_IS_BRIEF = NO
+
+# If the DETAILS_AT_TOP tag is set to YES then Doxygen
+# will output the detailed description near the top, like JavaDoc.
+# If set to NO, the detailed description appears after the member
+# documentation.
+
DETAILS_AT_TOP = YES
+
+# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented
+# member inherits the documentation from any documented member that it
+# re-implements.
+
INHERIT_DOCS = YES
+
+# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce
+# a new page for each member. If set to NO, the documentation of a member will
+# be part of the file/class/namespace that contains it.
+
SEPARATE_MEMBER_PAGES = NO
+
+# The TAB_SIZE tag can be used to set the number of spaces in a tab.
+# Doxygen uses this value to replace tabs by spaces in code fragments.
+
TAB_SIZE = 3
+
+# This tag can be used to specify a number of aliases that acts
+# as commands in the documentation. An alias has the form "name=value".
+# For example adding "sideeffect=\par Side Effects:\n" will allow you to
+# put the command \sideeffect (or @sideeffect) in the documentation, which
+# will result in a user-defined paragraph with heading "Side Effects:".
+# You can put \n's in the value part of an alias to insert newlines.
+
ALIASES =
+
+# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C
+# sources only. Doxygen will then generate output that is more tailored for C.
+# For instance, some of the names that are used will be different. The list
+# of all members will be omitted, etc.
+
OPTIMIZE_OUTPUT_FOR_C = NO
+
+# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java
+# sources only. Doxygen will then generate output that is more tailored for Java.
+# For instance, namespaces will be presented as packages, qualified scopes
+# will look different, etc.
+
OPTIMIZE_OUTPUT_JAVA = NO
-BUILTIN_STL_SUPPORT = NO
+
+# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want to
+# include (a tag file for) the STL sources as input, then you should
+# set this tag to YES in order to let doxygen match functions declarations and
+# definitions whose arguments contain STL classes (e.g. func(std::string); v.s.
+# func(std::string) {}). This also make the inheritance and collaboration
+# diagrams that involve STL classes more complete and accurate.
+
+BUILTIN_STL_SUPPORT = YES
+
+# If you use Microsoft's C++/CLI language, you should set this option to YES to
+# enable parsing support.
+
+CPP_CLI_SUPPORT = NO
+
+# Set the SIP_SUPPORT tag to YES if your project consists of sip sources only.
+# Doxygen will parse them like normal C++ but will assume all classes use public
+# instead of private inheritance when no explicit protection keyword is present.
+
+SIP_SUPPORT = NO
+
+# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
+# tag is set to YES, then doxygen will reuse the documentation of the first
+# member in the group (if any) for the other members of the group. By default
+# all members of a group must be documented explicitly.
+
DISTRIBUTE_GROUP_DOC = NO
+
+# Set the SUBGROUPING tag to YES (the default) to allow class member groups of
+# the same type (for instance a group of public functions) to be put as a
+# subgroup of that type (e.g. under the Public Functions section). Set it to
+# NO to prevent subgrouping. Alternatively, this can be done per class using
+# the \nosubgrouping command.
+
SUBGROUPING = YES
+
+# When TYPEDEF_HIDES_STRUCT is enabled, a typedef of a struct (or union) is
+# documented as struct with the name of the typedef. So
+# typedef struct TypeS {} TypeT, will appear in the documentation as a struct
+# with name TypeT. When disabled the typedef will appear as a member of a file,
+# namespace, or class. And the struct will be named TypeS. This can typically
+# be useful for C code where the coding convention is that all structs are
+# typedef'ed and only the typedef is referenced never the struct's name.
+
+TYPEDEF_HIDES_STRUCT = NO
+
#---------------------------------------------------------------------------
# Build related configuration options
#---------------------------------------------------------------------------
+
+# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in
+# documentation are documented, even if no documentation was available.
+# Private class members and static file members will be hidden unless
+# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES
+
EXTRACT_ALL = YES
+
+# If the EXTRACT_PRIVATE tag is set to YES all private members of a class
+# will be included in the documentation.
+
EXTRACT_PRIVATE = YES
+
+# If the EXTRACT_STATIC tag is set to YES all static members of a file
+# will be included in the documentation.
+
EXTRACT_STATIC = YES
+
+# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs)
+# defined locally in source files will be included in the documentation.
+# If set to NO only classes defined in header files are included.
+
EXTRACT_LOCAL_CLASSES = YES
+
+# This flag is only useful for Objective-C code. When set to YES local
+# methods, which are defined in the implementation section but not in
+# the interface are included in the documentation.
+# If set to NO (the default) only methods in the interface are included.
+
EXTRACT_LOCAL_METHODS = NO
+
+# If this flag is set to YES, the members of anonymous namespaces will be extracted
+# and appear in the documentation as a namespace called 'anonymous_namespace{file}',
+# where file will be replaced with the base name of the file that contains the anonymous
+# namespace. By default anonymous namespace are hidden.
+
+EXTRACT_ANON_NSPACES = NO
+
+# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all
+# undocumented members of documented classes, files or namespaces.
+# If set to NO (the default) these members will be included in the
+# various overviews, but no documentation section is generated.
+# This option has no effect if EXTRACT_ALL is enabled.
+
HIDE_UNDOC_MEMBERS = NO
+
+# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all
+# undocumented classes that are normally visible in the class hierarchy.
+# If set to NO (the default) these classes will be included in the various
+# overviews. This option has no effect if EXTRACT_ALL is enabled.
+
HIDE_UNDOC_CLASSES = NO
+
+# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all
+# friend (class|struct|union) declarations.
+# If set to NO (the default) these declarations will be included in the
+# documentation.
+
HIDE_FRIEND_COMPOUNDS = NO
+
+# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any
+# documentation blocks found inside the body of a function.
+# If set to NO (the default) these blocks will be appended to the
+# function's detailed documentation block.
+
HIDE_IN_BODY_DOCS = NO
+
+# The INTERNAL_DOCS tag determines if documentation
+# that is typed after a \internal command is included. If the tag is set
+# to NO (the default) then the documentation will be excluded.
+# Set it to YES to include the internal documentation.
+
INTERNAL_DOCS = NO
-CASE_SENSE_NAMES = YES
+
+# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate
+# file names in lower-case letters. If set to YES upper-case letters are also
+# allowed. This is useful if you have classes or files whose names only differ
+# in case and if your file system supports case sensitive file names. Windows
+# and Mac users are advised to set this option to NO.
+
+CASE_SENSE_NAMES = NO
+
+# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen
+# will show members with their full class and namespace scopes in the
+# documentation. If set to YES the scope will be hidden.
+
HIDE_SCOPE_NAMES = NO
+
+# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen
+# will put a list of the files that are included by a file in the documentation
+# of that file.
+
SHOW_INCLUDE_FILES = YES
+
+# If the INLINE_INFO tag is set to YES (the default) then a tag [inline]
+# is inserted in the documentation for inline members.
+
INLINE_INFO = YES
+
+# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen
+# will sort the (detailed) documentation of file and class members
+# alphabetically by member name. If set to NO the members will appear in
+# declaration order.
+
SORT_MEMBER_DOCS = YES
+
+# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the
+# brief documentation of file, namespace and class members alphabetically
+# by member name. If set to NO (the default) the members will appear in
+# declaration order.
+
SORT_BRIEF_DOCS = NO
+
+# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be
+# sorted by fully-qualified names, including namespaces. If set to
+# NO (the default), the class list will be sorted only by class name,
+# not including the namespace part.
+# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
+# Note: This option applies only to the class list, not to the
+# alphabetical list.
+
SORT_BY_SCOPE_NAME = NO
+
+# The GENERATE_TODOLIST tag can be used to enable (YES) or
+# disable (NO) the todo list. This list is created by putting \todo
+# commands in the documentation.
+
GENERATE_TODOLIST = YES
+
+# The GENERATE_TESTLIST tag can be used to enable (YES) or
+# disable (NO) the test list. This list is created by putting \test
+# commands in the documentation.
+
GENERATE_TESTLIST = YES
+
+# The GENERATE_BUGLIST tag can be used to enable (YES) or
+# disable (NO) the bug list. This list is created by putting \bug
+# commands in the documentation.
+
GENERATE_BUGLIST = YES
+
+# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or
+# disable (NO) the deprecated list. This list is created by putting
+# \deprecated commands in the documentation.
+
GENERATE_DEPRECATEDLIST= YES
+
+# The ENABLED_SECTIONS tag can be used to enable conditional
+# documentation sections, marked by \if sectionname ... \endif.
+
ENABLED_SECTIONS =
+
+# The MAX_INITIALIZER_LINES tag determines the maximum number of lines
+# the initial value of a variable or define consists of for it to appear in
+# the documentation. If the initializer consists of more lines than specified
+# here it will be hidden. Use a value of 0 to hide initializers completely.
+# The appearance of the initializer of individual variables and defines in the
+# documentation can be controlled using \showinitializer or \hideinitializer
+# command in the documentation regardless of this setting.
+
MAX_INITIALIZER_LINES = 30
+
+# Set the SHOW_USED_FILES tag to NO to disable the list of files generated
+# at the bottom of the documentation of classes and structs. If set to YES the
+# list will mention the files that were used to generate the documentation.
+
SHOW_USED_FILES = YES
+
+# If the sources in your project are distributed over multiple directories
+# then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy
+# in the documentation. The default is NO.
+
SHOW_DIRECTORIES = YES
+
+# The FILE_VERSION_FILTER tag can be used to specify a program or script that
+# doxygen should invoke to get the current version for each file (typically from the
+# version control system). Doxygen will invoke the program by executing (via
+# popen()) the command <command> <input-file>, where <command> is the value of
+# the FILE_VERSION_FILTER tag, and <input-file> is the name of an input file
+# provided by doxygen. Whatever the program writes to standard output
+# is used as the file version. See the manual for examples.
+
FILE_VERSION_FILTER =
+
#---------------------------------------------------------------------------
# configuration options related to warning and progress messages
#---------------------------------------------------------------------------
-QUIET = NO
+
+# The QUIET tag can be used to turn on/off the messages that are generated
+# by doxygen. Possible values are YES and NO. If left blank NO is used.
+
+QUIET = YES
+
+# The WARNINGS tag can be used to turn on/off the warning messages that are
+# generated by doxygen. Possible values are YES and NO. If left blank
+# NO is used.
+
WARNINGS = YES
+
+# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings
+# for undocumented members. If EXTRACT_ALL is set to YES then this flag will
+# automatically be disabled.
+
WARN_IF_UNDOCUMENTED = YES
+
+# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for
+# potential errors in the documentation, such as not documenting some
+# parameters in a documented function, or documenting parameters that
+# don't exist or using markup commands wrongly.
+
WARN_IF_DOC_ERROR = YES
+
+# This WARN_NO_PARAMDOC option can be abled to get warnings for
+# functions that are documented, but have no documentation for their parameters
+# or return value. If set to NO (the default) doxygen will only warn about
+# wrong or incomplete parameter documentation, but not about the absence of
+# documentation.
+
WARN_NO_PARAMDOC = NO
-WARN_FORMAT = "$file:$line: $text"
+
+# The WARN_FORMAT tag determines the format of the warning messages that
+# doxygen can produce. The string should contain the $file, $line, and $text
+# tags, which will be replaced by the file and line number from which the
+# warning originated and the warning text. Optionally the format may contain
+# $version, which will be replaced by the version of the file (if it could
+# be obtained via FILE_VERSION_FILTER)
+
+WARN_FORMAT = "$file:$line: $text "
+
+# The WARN_LOGFILE tag can be used to specify a file to which warning
+# and error messages should be written. If left blank the output is written
+# to stderr.
+
WARN_LOGFILE =
+
#---------------------------------------------------------------------------
# configuration options related to the input files
#---------------------------------------------------------------------------
+
+# The INPUT tag can be used to specify the files and/or directories that contain
+# documented source files. You may enter file names like "myfile.cpp" or
+# directories like "/usr/src/myproject". Separate the files or directories
+# with spaces.
+
INPUT = src/ \
dox2-src/
+
+# This tag can be used to specify the character encoding of the source files that
+# doxygen parses. Internally doxygen uses the UTF-8 encoding, which is also the default
+# input encoding. Doxygen uses libiconv (or the iconv built into libc) for the transcoding.
+# See http://www.gnu.org/software/libiconv for the list of possible encodings.
+
+INPUT_ENCODING = UTF-8
+
+# If the value of the INPUT tag contains directories, you can use the
+# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
+# and *.h) to filter out the source-files in the directories. If left
+# blank the following patterns are tested:
+# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx
+# *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py *.f90
+
FILE_PATTERNS = *.cpp \
*.h \
*.dox2
+
+# The RECURSIVE tag can be used to turn specify whether or not subdirectories
+# should be searched for input files as well. Possible values are YES and NO.
+# If left blank NO is used.
+
RECURSIVE = YES
+
+# The EXCLUDE tag can be used to specify files and/or directories that should
+# excluded from the INPUT source files. This way you can easily exclude a
+# subdirectory from a directory tree whose root is specified with the INPUT tag.
+
EXCLUDE =
+
+# The EXCLUDE_SYMLINKS tag can be used select whether or not files or
+# directories that are symbolic links (a Unix filesystem feature) are excluded
+# from the input.
+
EXCLUDE_SYMLINKS = NO
+
+# If the value of the INPUT tag contains directories, you can use the
+# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
+# certain files from those directories. Note that the wildcards are matched
+# against the file with absolute path, so to exclude all test directories
+# for example use the pattern */test/*
+
EXCLUDE_PATTERNS =
+
+# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names
+# (namespaces, classes, functions, etc.) that should be excluded from the output.
+# The symbol name can be a fully qualified name, a word, or if the wildcard * is used,
+# a substring. Examples: ANamespace, AClass, AClass::ANamespace, ANamespace::*Test
+
+EXCLUDE_SYMBOLS =
+
+# The EXAMPLE_PATH tag can be used to specify one or more files or
+# directories that contain example code fragments that are included (see
+# the \include command).
+
EXAMPLE_PATH = dox2-src/
+
+# If the value of the EXAMPLE_PATH tag contains directories, you can use the
+# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
+# and *.h) to filter out the source-files in the directories. If left
+# blank all files are included.
+
EXAMPLE_PATTERNS =
+
+# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
+# searched for input files to be used with the \include or \dontinclude
+# commands irrespective of the value of the RECURSIVE tag.
+# Possible values are YES and NO. If left blank NO is used.
+
EXAMPLE_RECURSIVE = NO
+
+# The IMAGE_PATH tag can be used to specify one or more files or
+# directories that contain image that are included in the documentation (see
+# the \image command).
+
IMAGE_PATH =
+
+# The INPUT_FILTER tag can be used to specify a program that doxygen should
+# invoke to filter for each input file. Doxygen will invoke the filter program
+# by executing (via popen()) the command <filter> <input-file>, where <filter>
+# is the value of the INPUT_FILTER tag, and <input-file> is the name of an
+# input file. Doxygen will then use the output that the filter program writes
+# to standard output. If FILTER_PATTERNS is specified, this tag will be
+# ignored.
+
INPUT_FILTER =
+
+# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern
+# basis. Doxygen will compare the file name with each pattern and apply the
+# filter if there is a match. The filters are a list of the form:
+# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further
+# info on how filters are used. If FILTER_PATTERNS is empty, INPUT_FILTER
+# is applied to all files.
+
FILTER_PATTERNS =
+
+# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
+# INPUT_FILTER) will be used to filter the input files when producing source
+# files to browse (i.e. when SOURCE_BROWSER is set to YES).
+
FILTER_SOURCE_FILES = NO
+
#---------------------------------------------------------------------------
# configuration options related to source browsing
#---------------------------------------------------------------------------
+
+# If the SOURCE_BROWSER tag is set to YES then a list of source files will
+# be generated. Documented entities will be cross-referenced with these sources.
+# Note: To get rid of all source code in the generated output, make sure also
+# VERBATIM_HEADERS is set to NO. If you have enabled CALL_GRAPH or CALLER_GRAPH
+# then you must also enable this option. If you don't then doxygen will produce
+# a warning and turn it on anyway
+
SOURCE_BROWSER = NO
+
+# Setting the INLINE_SOURCES tag to YES will include the body
+# of functions and classes directly in the documentation.
+
INLINE_SOURCES = NO
+
+# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct
+# doxygen to hide any special comment blocks from generated source code
+# fragments. Normal C and C++ comments will always remain visible.
+
STRIP_CODE_COMMENTS = YES
+
+# If the REFERENCED_BY_RELATION tag is set to YES (the default)
+# then for each documented function all documented
+# functions referencing it will be listed.
+
REFERENCED_BY_RELATION = YES
+
+# If the REFERENCES_RELATION tag is set to YES (the default)
+# then for each documented function all documented entities
+# called/used by that function will be listed.
+
REFERENCES_RELATION = YES
+
+# If the REFERENCES_LINK_SOURCE tag is set to YES (the default)
+# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from
+# functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will
+# link to the source code. Otherwise they will link to the documentstion.
+
+REFERENCES_LINK_SOURCE = YES
+
+# If the USE_HTAGS tag is set to YES then the references to source code
+# will point to the HTML generated by the htags(1) tool instead of doxygen
+# built-in source browser. The htags tool is part of GNU's global source
+# tagging system (see http://www.gnu.org/software/global/global.html). You
+# will need version 4.8.6 or higher.
+
USE_HTAGS = NO
+
+# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen
+# will generate a verbatim copy of the header file for each class for
+# which an include is specified. Set to NO to disable this.
+
VERBATIM_HEADERS = YES
+
#---------------------------------------------------------------------------
# configuration options related to the alphabetical class index
#---------------------------------------------------------------------------
+
+# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index
+# of all compounds will be generated. Enable this if the project
+# contains a lot of classes, structs, unions or interfaces.
+
ALPHABETICAL_INDEX = NO
+
+# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then
+# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns
+# in which this list will be split (can be a number in the range [1..20])
+
COLS_IN_ALPHA_INDEX = 5
+
+# In case all classes in a project start with a common prefix, all
+# classes will be put under the same header in the alphabetical index.
+# The IGNORE_PREFIX tag can be used to specify one or more prefixes that
+# should be ignored while generating the index headers.
+
IGNORE_PREFIX =
+
#---------------------------------------------------------------------------
# configuration options related to the HTML output
#---------------------------------------------------------------------------
+
+# If the GENERATE_HTML tag is set to YES (the default) Doxygen will
+# generate HTML output.
+
GENERATE_HTML = YES
+
+# The HTML_OUTPUT tag is used to specify where the HTML docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `html' will be used as the default path.
+
HTML_OUTPUT = html
+
+# The HTML_FILE_EXTENSION tag can be used to specify the file extension for
+# each generated HTML page (for example: .htm,.php,.asp). If it is left blank
+# doxygen will generate files with .html extension.
+
HTML_FILE_EXTENSION = .html
+
+# The HTML_HEADER tag can be used to specify a personal HTML header for
+# each generated HTML page. If it is left blank doxygen will generate a
+# standard header.
+
HTML_HEADER =
+
+# The HTML_FOOTER tag can be used to specify a personal HTML footer for
+# each generated HTML page. If it is left blank doxygen will generate a
+# standard footer.
+
HTML_FOOTER =
+
+# The HTML_STYLESHEET tag can be used to specify a user-defined cascading
+# style sheet that is used by each HTML page. It can be used to
+# fine-tune the look of the HTML output. If the tag is left blank doxygen
+# will generate a default style sheet. Note that doxygen will try to copy
+# the style sheet file to the HTML output directory, so don't put your own
+# stylesheet in the HTML output directory as well, or it will be erased!
+
HTML_STYLESHEET =
+
+# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes,
+# files or namespaces will be aligned in HTML using tables. If set to
+# NO a bullet list will be used.
+
HTML_ALIGN_MEMBERS = YES
+
+# If the GENERATE_HTMLHELP tag is set to YES, additional index files
+# will be generated that can be used as input for tools like the
+# Microsoft HTML help workshop to generate a compressed HTML help file (.chm)
+# of the generated HTML documentation.
+
GENERATE_HTMLHELP = NO
+
+# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML
+# documentation will contain sections that can be hidden and shown after the
+# page has loaded. For this to work a browser that supports
+# JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox
+# Netscape 6.0+, Internet explorer 5.0+, Konqueror, or Safari).
+
+HTML_DYNAMIC_SECTIONS = NO
+
+# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can
+# be used to specify the file name of the resulting .chm file. You
+# can add a path in front of the file if the result should not be
+# written to the html output directory.
+
CHM_FILE =
+
+# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can
+# be used to specify the location (absolute path including file name) of
+# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run
+# the HTML help compiler on the generated index.hhp.
+
HHC_LOCATION =
+
+# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag
+# controls if a separate .chi index file is generated (YES) or that
+# it should be included in the master .chm file (NO).
+
GENERATE_CHI = NO
+
+# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag
+# controls whether a binary table of contents is generated (YES) or a
+# normal table of contents (NO) in the .chm file.
+
BINARY_TOC = NO
+
+# The TOC_EXPAND flag can be set to YES to add extra items for group members
+# to the contents of the HTML help documentation and to the tree view.
+
TOC_EXPAND = NO
+
+# The DISABLE_INDEX tag can be used to turn on/off the condensed index at
+# top of each HTML page. The value NO (the default) enables the index and
+# the value YES disables it.
+
DISABLE_INDEX = NO
+
+# This tag can be used to set the number of enum values (range [1..20])
+# that doxygen will group on one line in the generated HTML documentation.
+
ENUM_VALUES_PER_LINE = 4
+
+# If the GENERATE_TREEVIEW tag is set to YES, a side panel will be
+# generated containing a tree-like index structure (just like the one that
+# is generated for HTML Help). For this to work a browser that supports
+# JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+,
+# Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are
+# probably better off using the HTML help feature.
+
GENERATE_TREEVIEW = YES
+
+# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be
+# used to set the initial width (in pixels) of the frame in which the tree
+# is shown.
+
TREEVIEW_WIDTH = 250
+
#---------------------------------------------------------------------------
# configuration options related to the LaTeX output
#---------------------------------------------------------------------------
-GENERATE_LATEX = YES
+
+# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will
+# generate Latex output.
+
+GENERATE_LATEX = NO
+
+# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `latex' will be used as the default path.
+
LATEX_OUTPUT = latex
+
+# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
+# invoked. If left blank `latex' will be used as the default command name.
+
LATEX_CMD_NAME = latex
+
+# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to
+# generate index for LaTeX. If left blank `makeindex' will be used as the
+# default command name.
+
MAKEINDEX_CMD_NAME = makeindex
+
+# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact
+# LaTeX documents. This may be useful for small projects and may help to
+# save some trees in general.
+
COMPACT_LATEX = NO
+
+# The PAPER_TYPE tag can be used to set the paper type that is used
+# by the printer. Possible values are: a4, a4wide, letter, legal and
+# executive. If left blank a4wide will be used.
+
PAPER_TYPE = a4wide
+
+# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX
+# packages that should be included in the LaTeX output.
+
EXTRA_PACKAGES =
+
+# The LATEX_HEADER tag can be used to specify a personal LaTeX header for
+# the generated latex document. The header should contain everything until
+# the first chapter. If it is left blank doxygen will generate a
+# standard header. Notice: only use this tag if you know what you are doing!
+
LATEX_HEADER =
+
+# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated
+# is prepared for conversion to pdf (using ps2pdf). The pdf file will
+# contain links (just like the HTML output) instead of page references
+# This makes the output suitable for online browsing using a pdf viewer.
+
PDF_HYPERLINKS = NO
+
+# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of
+# plain latex in the generated Makefile. Set this option to YES to get a
+# higher quality PDF documentation.
+
USE_PDFLATEX = NO
+
+# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode.
+# command to the generated LaTeX files. This will instruct LaTeX to keep
+# running if errors occur, instead of asking the user for help.
+# This option is also used when generating formulas in HTML.
+
LATEX_BATCHMODE = NO
+
+# If LATEX_HIDE_INDICES is set to YES then doxygen will not
+# include the index chapters (such as File Index, Compound Index, etc.)
+# in the output.
+
LATEX_HIDE_INDICES = NO
+
#---------------------------------------------------------------------------
# configuration options related to the RTF output
#---------------------------------------------------------------------------
+
+# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output
+# The RTF output is optimized for Word 97 and may not look very pretty with
+# other RTF readers or editors.
+
GENERATE_RTF = NO
+
+# The RTF_OUTPUT tag is used to specify where the RTF docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `rtf' will be used as the default path.
+
RTF_OUTPUT = rtf
+
+# If the COMPACT_RTF tag is set to YES Doxygen generates more compact
+# RTF documents. This may be useful for small projects and may help to
+# save some trees in general.
+
COMPACT_RTF = NO
+
+# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated
+# will contain hyperlink fields. The RTF file will
+# contain links (just like the HTML output) instead of page references.
+# This makes the output suitable for online browsing using WORD or other
+# programs which support those fields.
+# Note: wordpad (write) and others do not support links.
+
RTF_HYPERLINKS = NO
+
+# Load stylesheet definitions from file. Syntax is similar to doxygen's
+# config file, i.e. a series of assignments. You only have to provide
+# replacements, missing definitions are set to their default value.
+
RTF_STYLESHEET_FILE =
+
+# Set optional variables used in the generation of an rtf document.
+# Syntax is similar to doxygen's config file.
+
RTF_EXTENSIONS_FILE =
+
#---------------------------------------------------------------------------
# configuration options related to the man page output
#---------------------------------------------------------------------------
+
+# If the GENERATE_MAN tag is set to YES (the default) Doxygen will
+# generate man pages
+
GENERATE_MAN = NO
+
+# The MAN_OUTPUT tag is used to specify where the man pages will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `man' will be used as the default path.
+
MAN_OUTPUT = man
+
+# The MAN_EXTENSION tag determines the extension that is added to
+# the generated man pages (default is the subroutine's section .3)
+
MAN_EXTENSION = .3
+
+# If the MAN_LINKS tag is set to YES and Doxygen generates man output,
+# then it will generate one additional man file for each entity
+# documented in the real man page(s). These additional files
+# only source the real man page, but without them the man command
+# would be unable to find the correct page. The default is NO.
+
MAN_LINKS = NO
+
#---------------------------------------------------------------------------
# configuration options related to the XML output
#---------------------------------------------------------------------------
+
+# If the GENERATE_XML tag is set to YES Doxygen will
+# generate an XML file that captures the structure of
+# the code including all documentation.
+
GENERATE_XML = NO
+
+# The XML_OUTPUT tag is used to specify where the XML pages will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `xml' will be used as the default path.
+
XML_OUTPUT = xml
+
+# The XML_SCHEMA tag can be used to specify an XML schema,
+# which can be used by a validating XML parser to check the
+# syntax of the XML files.
+
XML_SCHEMA =
+
+# The XML_DTD tag can be used to specify an XML DTD,
+# which can be used by a validating XML parser to check the
+# syntax of the XML files.
+
XML_DTD =
+
+# If the XML_PROGRAMLISTING tag is set to YES Doxygen will
+# dump the program listings (including syntax highlighting
+# and cross-referencing information) to the XML output. Note that
+# enabling this will significantly increase the size of the XML output.
+
XML_PROGRAMLISTING = YES
+
#---------------------------------------------------------------------------
# configuration options for the AutoGen Definitions output
#---------------------------------------------------------------------------
+
+# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will
+# generate an AutoGen Definitions (see autogen.sf.net) file
+# that captures the structure of the code including all
+# documentation. Note that this feature is still experimental
+# and incomplete at the moment.
+
GENERATE_AUTOGEN_DEF = NO
+
#---------------------------------------------------------------------------
# configuration options related to the Perl module output
#---------------------------------------------------------------------------
+
+# If the GENERATE_PERLMOD tag is set to YES Doxygen will
+# generate a Perl module file that captures the structure of
+# the code including all documentation. Note that this
+# feature is still experimental and incomplete at the
+# moment.
+
GENERATE_PERLMOD = NO
+
+# If the PERLMOD_LATEX tag is set to YES Doxygen will generate
+# the necessary Makefile rules, Perl scripts and LaTeX code to be able
+# to generate PDF and DVI output from the Perl module output.
+
PERLMOD_LATEX = NO
+
+# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be
+# nicely formatted so it can be parsed by a human reader. This is useful
+# if you want to understand what is going on. On the other hand, if this
+# tag is set to NO the size of the Perl module output will be much smaller
+# and Perl will parse it just the same.
+
PERLMOD_PRETTY = YES
+
+# The names of the make variables in the generated doxyrules.make file
+# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX.
+# This is useful so different doxyrules.make files included by the same
+# Makefile don't overwrite each other's variables.
+
PERLMOD_MAKEVAR_PREFIX =
+
#---------------------------------------------------------------------------
# Configuration options related to the preprocessor
#---------------------------------------------------------------------------
+
+# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will
+# evaluate all C-preprocessor directives found in the sources and include
+# files.
+
ENABLE_PREPROCESSING = YES
+
+# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro
+# names in the source code. If set to NO (the default) only conditional
+# compilation will be performed. Macro expansion can be done in a controlled
+# way by setting EXPAND_ONLY_PREDEF to YES.
+
MACRO_EXPANSION = NO
+
+# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES
+# then the macro expansion is limited to the macros specified with the
+# PREDEFINED and EXPAND_AS_DEFINED tags.
+
EXPAND_ONLY_PREDEF = NO
+
+# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files
+# in the INCLUDE_PATH (see below) will be search if a #include is found.
+
SEARCH_INCLUDES = YES
+
+# The INCLUDE_PATH tag can be used to specify one or more directories that
+# contain include files that are not input files but should be processed by
+# the preprocessor.
+
INCLUDE_PATH =
+
+# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
+# patterns (like *.h and *.hpp) to filter out the header-files in the
+# directories. If left blank, the patterns specified with FILE_PATTERNS will
+# be used.
+
INCLUDE_FILE_PATTERNS =
+
+# The PREDEFINED tag can be used to specify one or more macro names that
+# are defined before the preprocessor is started (similar to the -D option of
+# gcc). The argument of the tag is a list of macros of the form: name
+# or name=definition (no spaces). If the definition and the = are
+# omitted =1 is assumed. To prevent a macro definition from being
+# undefined via #undef or recursively expanded use the := operator
+# instead of the = operator.
+
PREDEFINED =
+
+# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
+# this tag can be used to specify a list of macro names that should be expanded.
+# The macro definition that is found in the sources will be used.
+# Use the PREDEFINED tag if you want to use a different macro definition.
+
EXPAND_AS_DEFINED =
+
+# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then
+# doxygen's preprocessor will remove all function-like macros that are alone
+# on a line, have an all uppercase name, and do not end with a semicolon. Such
+# function macros are typically used for boiler-plate code, and will confuse
+# the parser if not removed.
+
SKIP_FUNCTION_MACROS = YES
+
#---------------------------------------------------------------------------
# Configuration::additions related to external references
#---------------------------------------------------------------------------
+
+# The TAGFILES option can be used to specify one or more tagfiles.
+# Optionally an initial location of the external documentation
+# can be added for each tagfile. The format of a tag file without
+# this location is as follows:
+# TAGFILES = file1 file2 ...
+# Adding location for the tag files is done as follows:
+# TAGFILES = file1=loc1 "file2 = loc2" ...
+# where "loc1" and "loc2" can be relative or absolute paths or
+# URLs. If a location is present for each tag, the installdox tool
+# does not have to be run to correct the links.
+# Note that each tag file must have a unique name
+# (where the name does NOT include the path)
+# If a tag file is not located in the directory in which doxygen
+# is run, you must also specify the path to the tagfile here.
+
TAGFILES =
+
+# When a file name is specified after GENERATE_TAGFILE, doxygen will create
+# a tag file that is based on the input files it reads.
+
GENERATE_TAGFILE =
+
+# If the ALLEXTERNALS tag is set to YES all external classes will be listed
+# in the class index. If set to NO only the inherited external classes
+# will be listed.
+
ALLEXTERNALS = NO
+
+# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed
+# in the modules index. If set to NO, only the current project's groups will
+# be listed.
+
EXTERNAL_GROUPS = YES
+
+# The PERL_PATH should be the absolute path and name of the perl script
+# interpreter (i.e. the result of `which perl').
+
PERL_PATH = /usr/bin/perl
+
#---------------------------------------------------------------------------
# Configuration options related to the dot tool
#---------------------------------------------------------------------------
+
+# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will
+# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base
+# or super classes. Setting the tag to NO turns the diagrams off. Note that
+# this option is superseded by the HAVE_DOT option below. This is only a
+# fallback. It is recommended to install and use dot, since it yields more
+# powerful graphs.
+
CLASS_DIAGRAMS = YES
+
+# You can define message sequence charts within doxygen comments using the \msc
+# command. Doxygen will then run the mscgen tool (see http://www.mcternan.me.uk/mscgen/) to
+# produce the chart and insert it in the documentation. The MSCGEN_PATH tag allows you to
+# specify the directory where the mscgen tool resides. If left empty the tool is assumed to
+# be found in the default search path.
+
+MSCGEN_PATH =
+
+# If set to YES, the inheritance and collaboration graphs will hide
+# inheritance and usage relations if the target is undocumented
+# or is not a class.
+
HIDE_UNDOC_RELATIONS = YES
+
+# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
+# available from the path. This tool is part of Graphviz, a graph visualization
+# toolkit from AT&T and Lucent Bell Labs. The other options in this section
+# have no effect if this option is set to NO (the default)
+
HAVE_DOT = NO
+
+# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen
+# will generate a graph for each documented class showing the direct and
+# indirect inheritance relations. Setting this tag to YES will force the
+# the CLASS_DIAGRAMS tag to NO.
+
CLASS_GRAPH = YES
+
+# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen
+# will generate a graph for each documented class showing the direct and
+# indirect implementation dependencies (inheritance, containment, and
+# class references variables) of the class with other documented classes.
+
COLLABORATION_GRAPH = YES
+
+# If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen
+# will generate a graph for groups, showing the direct groups dependencies
+
GROUP_GRAPHS = YES
+
+# If the UML_LOOK tag is set to YES doxygen will generate inheritance and
+# collaboration diagrams in a style similar to the OMG's Unified Modeling
+# Language.
+
UML_LOOK = NO
+
+# If set to YES, the inheritance and collaboration graphs will show the
+# relations between templates and their instances.
+
TEMPLATE_RELATIONS = YES
+
+# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT
+# tags are set to YES then doxygen will generate a graph for each documented
+# file showing the direct and indirect include dependencies of the file with
+# other documented files.
+
INCLUDE_GRAPH = YES
+
+# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and
+# HAVE_DOT tags are set to YES then doxygen will generate a graph for each
+# documented header file showing the documented files that directly or
+# indirectly include this file.
+
INCLUDED_BY_GRAPH = YES
+
+# If the CALL_GRAPH, SOURCE_BROWSER and HAVE_DOT tags are set to YES then doxygen will
+# generate a call dependency graph for every global function or class method.
+# Note that enabling this option will significantly increase the time of a run.
+# So in most cases it will be better to enable call graphs for selected
+# functions only using the \callgraph command.
+
CALL_GRAPH = NO
+
+# If the CALLER_GRAPH, SOURCE_BROWSER and HAVE_DOT tags are set to YES then doxygen will
+# generate a caller dependency graph for every global function or class method.
+# Note that enabling this option will significantly increase the time of a run.
+# So in most cases it will be better to enable caller graphs for selected
+# functions only using the \callergraph command.
+
+CALLER_GRAPH = NO
+
+# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen
+# will graphical hierarchy of all classes instead of a textual one.
+
GRAPHICAL_HIERARCHY = YES
+
+# If the DIRECTORY_GRAPH, SHOW_DIRECTORIES and HAVE_DOT tags are set to YES
+# then doxygen will show the dependencies a directory has on other directories
+# in a graphical way. The dependency relations are determined by the #include
+# relations between the files in the directories.
+
DIRECTORY_GRAPH = YES
+
+# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
+# generated by dot. Possible values are png, jpg, or gif
+# If left blank png will be used.
+
DOT_IMAGE_FORMAT = gif
+
+# The tag DOT_PATH can be used to specify the path where the dot tool can be
+# found. If left blank, it is assumed the dot tool can be found in the path.
+
DOT_PATH =
+
+# The DOTFILE_DIRS tag can be used to specify one or more directories that
+# contain dot files that are included in the documentation (see the
+# \dotfile command).
+
DOTFILE_DIRS =
-MAX_DOT_GRAPH_WIDTH = 1024
-MAX_DOT_GRAPH_HEIGHT = 1024
+
+# The MAX_DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of
+# nodes that will be shown in the graph. If the number of nodes in a graph
+# becomes larger than this value, doxygen will truncate the graph, which is
+# visualized by representing a node as a red box. Note that doxygen if the number
+# of direct children of the root node in a graph is already larger than
+# MAX_DOT_GRAPH_NOTES then the graph will not be shown at all. Also note
+# that the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH.
+
+DOT_GRAPH_MAX_NODES = 50
+
+# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the
+# graphs generated by dot. A depth value of 3 means that only nodes reachable
+# from the root by following a path via at most 3 edges will be shown. Nodes
+# that lay further from the root node will be omitted. Note that setting this
+# option to 1 or 2 may greatly reduce the computation time needed for large
+# code bases. Also note that the size of a graph can be further restricted by
+# DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction.
+
MAX_DOT_GRAPH_DEPTH = 1000
+
+# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent
+# background. This is disabled by default, which results in a white background.
+# Warning: Depending on the platform used, enabling this option may lead to
+# badly anti-aliased labels on the edges of a graph (i.e. they become hard to
+# read).
+
DOT_TRANSPARENT = NO
+
+# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output
+# files in one run (i.e. multiple -o and -T options on the command line). This
+# makes dot run faster, but since only newer versions of dot (>1.8.10)
+# support this, this feature is disabled by default.
+
DOT_MULTI_TARGETS = NO
+
+# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will
+# generate a legend page explaining the meaning of the various boxes and
+# arrows in the dot generated graphs.
+
GENERATE_LEGEND = YES
+
+# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will
+# remove the intermediate dot files that are used to generate
+# the various graphs.
+
DOT_CLEANUP = YES
+
#---------------------------------------------------------------------------
# Configuration::additions related to the search engine
#---------------------------------------------------------------------------
+
+# The SEARCHENGINE tag specifies whether or not a search engine should be
+# used. If set to NO the values of all tags below this one will be ignored.
+
SEARCHENGINE = NO
diff --git a/configure b/configure
index 3d38b91..4d3ff73 100755
--- a/configure
+++ b/configure
@@ -642,6 +642,9 @@ ac_subst_vars='LTLIBOBJS
LIBOBJS
JACK_LIBS
JACK_CFLAGS
+GTK_LIBS
+GTK_CFLAGS
+HAVE_GTK
host_os
host_vendor
host_cpu
@@ -650,6 +653,8 @@ build_os
build_vendor
build_cpu
build
+TAGLIB_LIBS
+TAGLIB_CFLAGS
PORTSMF_LIBS
PORTSMF_CFLAGS
AVFORMAT_LIBS
@@ -677,9 +682,9 @@ subdirs
WX_CONFIG
HAVE_VISIBILITY
CFLAG_VISIBILITY
-SED
EGREP
GREP
+SED
AUDACITY_NAME
LIBSRC_BUILD
BUILD_LDFLAGS
@@ -768,11 +773,11 @@ with_libvamp
with_libtwolame
with_ffmpeg
with_midi
+with_taglib
enable_audiounits
enable_ladspa
enable_quicktime
with_portmixer
-with_portaudio
'
ac_precious_vars='build_alias
host_alias
@@ -809,6 +814,10 @@ AVFORMAT_CFLAGS
AVFORMAT_LIBS
PORTSMF_CFLAGS
PORTSMF_LIBS
+TAGLIB_CFLAGS
+TAGLIB_LIBS
+GTK_CFLAGS
+GTK_LIBS
JACK_CFLAGS
JACK_LIBS'
ac_subdirs_all='"lib-src/FileDialog"
@@ -1474,9 +1483,8 @@ Optional Packages:
--with-libtwolame use libtwolame for MP2 export support
--with-ffmpeg use ffmpeg for import and export support
--with-midi use portSMF for Midi support
+ --with-taglib use TagLib for metadata support
--with-portmixer compile with PortMixer [default=yes]
- --with-portaudio which version of PortAudio to use (=[v18,v19])
- [default=v19]
Some influential environment variables:
CC C compiler command
@@ -1530,6 +1538,11 @@ Some influential environment variables:
C compiler flags for PORTSMF, overriding pkg-config
PORTSMF_LIBS
linker flags for PORTSMF, overriding pkg-config
+ TAGLIB_CFLAGS
+ C compiler flags for TAGLIB, overriding pkg-config
+ TAGLIB_LIBS linker flags for TAGLIB, overriding pkg-config
+ GTK_CFLAGS C compiler flags for GTK, overriding pkg-config
+ GTK_LIBS linker flags for GTK, overriding pkg-config
JACK_CFLAGS C compiler flags for JACK, overriding pkg-config
JACK_LIBS linker flags for JACK, overriding pkg-config
@@ -3748,12 +3761,195 @@ cat >>confdefs.h <<_ACEOF
_ACEOF
+### Configuration of Audacity module support ###
+################################################
cat >>confdefs.h <<\_ACEOF
#define BUILDING_AUDACITY 1
_ACEOF
+# Add -rdynamic to linker flags so the right symbols are exported for
+# plug-ins. This might not work on all architectures / compilers, so we need
+# to check if it does or not.
+{ $as_echo "$as_me:$LINENO: checking for a sed that does not truncate output" >&5
+$as_echo_n "checking for a sed that does not truncate output... " >&6; }
+if test "${ac_cv_path_SED+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/
+ for ac_i in 1 2 3 4 5 6 7; do
+ ac_script="$ac_script$as_nl$ac_script"
+ done
+ echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed
+ $as_unset ac_script || ac_script=
+ if test -z "$SED"; then
+ ac_path_SED_found=false
+ # Loop through the user's path and test for each of PROGNAME-LIST
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_prog in sed gsed; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ ac_path_SED="$as_dir/$ac_prog$ac_exec_ext"
+ { test -f "$ac_path_SED" && $as_test_x "$ac_path_SED"; } || continue
+# Check for GNU ac_path_SED and select it if it is found.
+ # Check for GNU $ac_path_SED
+case `"$ac_path_SED" --version 2>&1` in
+*GNU*)
+ ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;;
+*)
+ ac_count=0
+ $as_echo_n 0123456789 >"conftest.in"
+ while :
+ do
+ cat "conftest.in" "conftest.in" >"conftest.tmp"
+ mv "conftest.tmp" "conftest.in"
+ cp "conftest.in" "conftest.nl"
+ $as_echo '' >> "conftest.nl"
+ "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break
+ diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
+ ac_count=`expr $ac_count + 1`
+ if test $ac_count -gt ${ac_path_SED_max-0}; then
+ # Best one so far, save it but keep looking for a better one
+ ac_cv_path_SED="$ac_path_SED"
+ ac_path_SED_max=$ac_count
+ fi
+ # 10*(2^10) chars as input seems more than enough
+ test $ac_count -gt 10 && break
+ done
+ rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
+esac
+
+ $ac_path_SED_found && break 3
+ done
+ done
+done
+IFS=$as_save_IFS
+ if test -z "$ac_cv_path_SED"; then
+ { { $as_echo "$as_me:$LINENO: error: no acceptable sed could be found in \$PATH" >&5
+$as_echo "$as_me: error: no acceptable sed could be found in \$PATH" >&2;}
+ { (exit 1); exit 1; }; }
+ fi
+else
+ ac_cv_path_SED=$SED
+fi
+
+fi
+{ $as_echo "$as_me:$LINENO: result: $ac_cv_path_SED" >&5
+$as_echo "$ac_cv_path_SED" >&6; }
+ SED="$ac_cv_path_SED"
+ rm -f conftest.sed
+
+
+
+
+
+
+
+ flag=`echo "-rdynamic" | $SED 'y% .=/+-(){}<>:*,%_______________%'`
+
+ { $as_echo "$as_me:$LINENO: checking whether the linker accepts the -rdynamic flag" >&5
+$as_echo_n "checking whether the linker accepts the -rdynamic flag... " >&6; }
+if { as_var=ax_cv_ld_check_flag_$flag; eval "test \"\${$as_var+set}\" = set"; }; then
+ $as_echo_n "(cached) " >&6
+else
+
+
+ #AC_LANG_PUSH([C])
+
+ save_LDFLAGS="$LDFLAGS"
+ LDFLAGS="$LDFLAGS -rdynamic"
+ cat >conftest.$ac_ext <<_ACEOF
+
+ /* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_cxx_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+
+ eval "ax_cv_ld_check_flag_$flag=yes"
+
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+
+ eval "ax_cv_ld_check_flag_$flag=no"
+
+fi
+
+rm -rf conftest.dSYM
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+
+ LDFLAGS="$save_LDFLAGS"
+
+ #AC_LANG_POP
+
+
+fi
+ac_res=`eval 'as_val=${'ax_cv_ld_check_flag_$flag'}
+ $as_echo "$as_val"'`
+ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+
+ if eval "test \"`echo '$ax_cv_ld_check_flag_'$flag`\" = yes"; then
+ :
+ have_dynamic_link=yes
+
+else
+
+ :
+ have_dynamic_link=no
+
+fi
+
+
+if test "x$have_dynamic_link" = "xyes" ; then
+ BUILD_LDFLAGS="${BUILD_LDFLAGS} -rdynamic "
+else
+ { $as_echo "$as_me:$LINENO: WARNING: \"Linker does not support -rdynamic. Could not enable exporting all symbols\"" >&5
+$as_echo "$as_me: WARNING: \"Linker does not support -rdynamic. Could not enable exporting all symbols\"" >&2;}
+ { $as_echo "$as_me:$LINENO: WARNING: \"Audacity module support will probably not work\"" >&5
+$as_echo "$as_me: WARNING: \"Audacity module support will probably not work\"" >&2;}
+fi
+
+### Build Options ###
+#####################
# Check whether --enable-static was given.
if test "${enable_static+set}" = set; then
@@ -3797,7 +3993,6 @@ $as_echo "$as_me: Adding -g for debugging to CFLAGS and CXXFLAGS ..." >&6;}
CXXFLAGS="${CXXFLAGS} -g "
fi
-
{ $as_echo "$as_me:$LINENO: checking for an ANSI C-conforming const" >&5
$as_echo_n "checking for an ANSI C-conforming const... " >&6; }
if test "${ac_cv_c_const+set}" = set; then
@@ -4793,77 +4988,6 @@ case ".$ac_cv_cflags_warn_all" in
esac
CFLAGS="${CFLAGS} $wall_flags"
-{ $as_echo "$as_me:$LINENO: checking for a sed that does not truncate output" >&5
-$as_echo_n "checking for a sed that does not truncate output... " >&6; }
-if test "${ac_cv_path_SED+set}" = set; then
- $as_echo_n "(cached) " >&6
-else
- ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/
- for ac_i in 1 2 3 4 5 6 7; do
- ac_script="$ac_script$as_nl$ac_script"
- done
- echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed
- $as_unset ac_script || ac_script=
- if test -z "$SED"; then
- ac_path_SED_found=false
- # Loop through the user's path and test for each of PROGNAME-LIST
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_prog in sed gsed; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- ac_path_SED="$as_dir/$ac_prog$ac_exec_ext"
- { test -f "$ac_path_SED" && $as_test_x "$ac_path_SED"; } || continue
-# Check for GNU ac_path_SED and select it if it is found.
- # Check for GNU $ac_path_SED
-case `"$ac_path_SED" --version 2>&1` in
-*GNU*)
- ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;;
-*)
- ac_count=0
- $as_echo_n 0123456789 >"conftest.in"
- while :
- do
- cat "conftest.in" "conftest.in" >"conftest.tmp"
- mv "conftest.tmp" "conftest.in"
- cp "conftest.in" "conftest.nl"
- $as_echo '' >> "conftest.nl"
- "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break
- diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
- ac_count=`expr $ac_count + 1`
- if test $ac_count -gt ${ac_path_SED_max-0}; then
- # Best one so far, save it but keep looking for a better one
- ac_cv_path_SED="$ac_path_SED"
- ac_path_SED_max=$ac_count
- fi
- # 10*(2^10) chars as input seems more than enough
- test $ac_count -gt 10 && break
- done
- rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
- $ac_path_SED_found && break 3
- done
- done
-done
-IFS=$as_save_IFS
- if test -z "$ac_cv_path_SED"; then
- { { $as_echo "$as_me:$LINENO: error: no acceptable sed could be found in \$PATH" >&5
-$as_echo "$as_me: error: no acceptable sed could be found in \$PATH" >&2;}
- { (exit 1); exit 1; }; }
- fi
-else
- ac_cv_path_SED=$SED
-fi
-
-fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_path_SED" >&5
-$as_echo "$ac_cv_path_SED" >&6; }
- SED="$ac_cv_path_SED"
- rm -f conftest.sed
-
@@ -5606,7 +5730,7 @@ BUILD_LDFLAGS="$BUILD_LDFLAGS $WIDGETEXTRA_LIBS"
CXXFLAGS="$CXXFLAGS $WIDGETEXTRA_CFLAGS"
LIBSRC_BUILD="$LIBSRC_BUILD widgetextra"
-LIBRARIES="LIBVORBIS LIBMAD LIBSNDFILE LIBFLAC LIBID3TAG LIBSAMPLERATE LIBRESAMPLE LIBSBSMS LIBSOUNDTOUCH LIBNYQUIST LIBVAMP LIBEXPAT LIBTWOLAME FFMPEG PORTSMF"
+LIBRARIES="LIBVORBIS LIBMAD LIBSNDFILE LIBFLAC LIBID3TAG LIBSAMPLERATE LIBRESAMPLE LIBSBSMS LIBSOUNDTOUCH LIBNYQUIST LIBVAMP LIBEXPAT LIBTWOLAME FFMPEG PORTSMF TAGLIB"
{ $as_echo "$as_me:$LINENO: Determining what libraries are available in this tree and on the system" >&5
$as_echo "$as_me: Determining what libraries are available in this tree and on the system" >&6;}
@@ -5742,7 +5866,7 @@ fi
$as_echo "$as_me: libsndfile libraries are available in this source tree" >&6;}
- ac_configure_args="$ac_configure_args --disable-sqlite --disable-flac --disable-alsa"
+ ac_configure_args="$ac_configure_args --disable-sqlite --disable-external-libs --disable-alsa"
else
LIBSNDFILE_LOCAL_AVAILABLE="no"
{ $as_echo "$as_me:$LINENO: libsndfile libraries are NOT available in this source tree" >&5
@@ -7701,9 +7825,9 @@ _ACEOF
LIBNYQUIST_SYSTEM_AVAILABLE="no"
- as_ac_File=`$as_echo "ac_cv_file_${srcdir}/lib-src/libnyquist/nyx/nyx.h" | $as_tr_sh`
-{ $as_echo "$as_me:$LINENO: checking for ${srcdir}/lib-src/libnyquist/nyx/nyx.h" >&5
-$as_echo_n "checking for ${srcdir}/lib-src/libnyquist/nyx/nyx.h... " >&6; }
+ as_ac_File=`$as_echo "ac_cv_file_${srcdir}/lib-src/libnyquist/nyx.h" | $as_tr_sh`
+{ $as_echo "$as_me:$LINENO: checking for ${srcdir}/lib-src/libnyquist/nyx.h" >&5
+$as_echo_n "checking for ${srcdir}/lib-src/libnyquist/nyx.h... " >&6; }
if { as_var=$as_ac_File; eval "test \"\${$as_var+set}\" = set"; }; then
$as_echo_n "(cached) " >&6
else
@@ -7711,7 +7835,7 @@ else
{ { $as_echo "$as_me:$LINENO: error: cannot check for file existence when cross compiling" >&5
$as_echo "$as_me: error: cannot check for file existence when cross compiling" >&2;}
{ (exit 1); exit 1; }; }
-if test -r "${srcdir}/lib-src/libnyquist/nyx/nyx.h"; then
+if test -r "${srcdir}/lib-src/libnyquist/nyx.h"; then
eval "$as_ac_File=yes"
else
eval "$as_ac_File=no"
@@ -7733,11 +7857,13 @@ fi
if test "x$nyx_h_found" = "xyes" ; then
LIBNYQUIST_LOCAL_AVAILABLE="yes"
LIBNYQUIST_LOCAL_LIBS="libnyquist.a"
- LIBNYQUIST_LOCAL_CXXFLAGS='-I$(top_srcdir)/lib-src/libnyquist/nyx'
+ LIBNYQUIST_LOCAL_CXXFLAGS='-I$(top_srcdir)/lib-src/libnyquist'
LIBNYQUIST_LOCAL_CPPSYMBOLS="USE_NYQUIST"
LIBNYQUIST_LOCAL_OPTOBJS="effects/nyquist/Nyquist.o"
LIBNYQUIST_LOCAL_OPTOBJS="$LIBNYQUIST_LOCAL_OPTOBJS effects/nyquist/LoadNyquist.o"
+ LIBNYQUIST_LOCAL_CONFIG_SUBDIRS="lib-src/libnyquist"
+
{ $as_echo "$as_me:$LINENO: nyquist libraries are available in the local tree" >&5
$as_echo "$as_me: nyquist libraries are available in the local tree" >&6;}
else
@@ -8556,6 +8682,152 @@ fi
+# Check whether --with-taglib was given.
+if test "${with_taglib+set}" = set; then
+ withval=$with_taglib; TAGLIB_ARGUMENT=$withval
+else
+ TAGLIB_ARGUMENT="unspecified"
+fi
+
+
+ if false ; then
+
+cat >>confdefs.h <<\_ACEOF
+#define USE_TAGLIB 1
+_ACEOF
+
+ fi
+
+
+
+pkg_failed=no
+{ $as_echo "$as_me:$LINENO: checking for TAGLIB" >&5
+$as_echo_n "checking for TAGLIB... " >&6; }
+
+if test -n "$TAGLIB_CFLAGS"; then
+ pkg_cv_TAGLIB_CFLAGS="$TAGLIB_CFLAGS"
+ elif test -n "$PKG_CONFIG"; then
+ if test -n "$PKG_CONFIG" && \
+ { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"taglib >= 1.5\"") >&5
+ ($PKG_CONFIG --exists --print-errors "taglib >= 1.5") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ pkg_cv_TAGLIB_CFLAGS=`$PKG_CONFIG --cflags "taglib >= 1.5" 2>/dev/null`
+else
+ pkg_failed=yes
+fi
+ else
+ pkg_failed=untried
+fi
+if test -n "$TAGLIB_LIBS"; then
+ pkg_cv_TAGLIB_LIBS="$TAGLIB_LIBS"
+ elif test -n "$PKG_CONFIG"; then
+ if test -n "$PKG_CONFIG" && \
+ { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"taglib >= 1.5\"") >&5
+ ($PKG_CONFIG --exists --print-errors "taglib >= 1.5") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ pkg_cv_TAGLIB_LIBS=`$PKG_CONFIG --libs "taglib >= 1.5" 2>/dev/null`
+else
+ pkg_failed=yes
+fi
+ else
+ pkg_failed=untried
+fi
+
+
+
+if test $pkg_failed = yes; then
+
+if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
+ _pkg_short_errors_supported=yes
+else
+ _pkg_short_errors_supported=no
+fi
+ if test $_pkg_short_errors_supported = yes; then
+ TAGLIB_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "taglib >= 1.5" 2>&1`
+ else
+ TAGLIB_PKG_ERRORS=`$PKG_CONFIG --print-errors "taglib >= 1.5" 2>&1`
+ fi
+ # Put the nasty error message in config.log where it belongs
+ echo "$TAGLIB_PKG_ERRORS" >&5
+
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+ taglib_available_system="no"
+elif test $pkg_failed = untried; then
+ taglib_available_system="no"
+else
+ TAGLIB_CFLAGS=$pkg_cv_TAGLIB_CFLAGS
+ TAGLIB_LIBS=$pkg_cv_TAGLIB_LIBS
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+ taglib_available_system="yes"
+fi
+
+ if test "x$taglib_available_system" = "xyes" ; then
+ TAGLIB_SYSTEM_AVAILABLE="yes"
+ TAGLIB_SYSTEM_LIBS=$TAGLIB_LIBS
+ TAGLIB_SYSTEM_CXXFLAGS=$TAGLIB_CFLAGS
+ TAGLIB_SYSTEM_CPPSYMBOLS="USE_TAGLIB"
+ { $as_echo "$as_me:$LINENO: TagLib library available as system library" >&5
+$as_echo "$as_me: TagLib library available as system library" >&6;}
+ else
+ TAGLIB_SYSTEM_AVAILABLE="no"
+ { $as_echo "$as_me:$LINENO: TagLib library NOT available as system library" >&5
+$as_echo "$as_me: TagLib library NOT available as system library" >&6;}
+ fi
+
+
+ as_ac_File=`$as_echo "ac_cv_file_${srcdir}/lib-src/taglib/taglib/tag.h" | $as_tr_sh`
+{ $as_echo "$as_me:$LINENO: checking for ${srcdir}/lib-src/taglib/taglib/tag.h" >&5
+$as_echo_n "checking for ${srcdir}/lib-src/taglib/taglib/tag.h... " >&6; }
+if { as_var=$as_ac_File; eval "test \"\${$as_var+set}\" = set"; }; then
+ $as_echo_n "(cached) " >&6
+else
+ test "$cross_compiling" = yes &&
+ { { $as_echo "$as_me:$LINENO: error: cannot check for file existence when cross compiling" >&5
+$as_echo "$as_me: error: cannot check for file existence when cross compiling" >&2;}
+ { (exit 1); exit 1; }; }
+if test -r "${srcdir}/lib-src/taglib/taglib/tag.h"; then
+ eval "$as_ac_File=yes"
+else
+ eval "$as_ac_File=no"
+fi
+fi
+ac_res=`eval 'as_val=${'$as_ac_File'}
+ $as_echo "$as_val"'`
+ { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+as_val=`eval 'as_val=${'$as_ac_File'}
+ $as_echo "$as_val"'`
+ if test "x$as_val" = x""yes; then
+ tag_h_found="yes"
+else
+ tag_h_found="no"
+fi
+
+
+ if test "x$tag_h_found" = "xyes" ; then
+ TAGLIB_LOCAL_AVAILABLE="yes"
+ TAGLIB_LOCAL_LIBS="taglib.a"
+ TAGLIB_LOCAL_CXXFLAGS='-I$(top_srcdir)/lib-src/taglib/taglib'
+ TAGLIB_LOCAL_CPPSYMBOLS="USE_TAGLIB"
+
+ TAGLIB_LOCAL_CONFIG_SUBDIRS="lib-src/taglib"
+
+ { $as_echo "$as_me:$LINENO: TagLib library is available in the local tree" >&5
+$as_echo "$as_me: TagLib library is available in the local tree" >&6;}
+ else
+ TAGLIB_LOCAL_AVAILABLE="no"
+ { $as_echo "$as_me:$LINENO: TagLib library is NOT available in the local tree" >&5
+$as_echo "$as_me: TagLib library is NOT available in the local tree" >&6;}
+ fi
+
+
+
{ $as_echo "$as_me:$LINENO: Figuring out what libraries to enable" >&5
$as_echo "$as_me: Figuring out what libraries to enable" >&6;}
@@ -8737,17 +9009,6 @@ else
fi
-
-# Check whether --with-portaudio was given.
-if test "${with_portaudio+set}" = set; then
- withval=$with_portaudio; use_portaudio=$withval
-else
- use_portaudio="v19"
-fi
-
-
-
-
# Make sure we can run config.sub.
$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
{ { $as_echo "$as_me:$LINENO: error: cannot run $SHELL $ac_aux_dir/config.sub" >&5
@@ -8838,7 +9099,7 @@ case "${host_os}" in
CDEPEND="AudacityHeaders.h.gch"
PRECOMP_CFLAGS="-include AudacityHeaders.h"
CONFIGHEADER="configunix.h"
- CXXFLAGS="-I../mac $CXXFLAGS"
+ CXXFLAGS="-I\$(top_srcdir)/mac $CXXFLAGS"
AFTERBUILD=""
EXTRATARGETS="../Audacity.app"
if [ "$use_audiounits" = "auto" ] ; then
@@ -8872,32 +9133,104 @@ _ACEOF
AFTERBUILD=""
EXTRAINSTALLTARGETS="$EXTRAINSTALLTARGETS install-extra-data"
EXTRAUNINSTALLTARGETS="$EXTRAUNINSTALLTARGETS uninstall-extra-data"
-esac
-if [ "$use_portaudio" = "v19" ] ; then
+
+pkg_failed=no
+{ $as_echo "$as_me:$LINENO: checking for GTK" >&5
+$as_echo_n "checking for GTK... " >&6; }
+
+if test -n "$GTK_CFLAGS"; then
+ pkg_cv_GTK_CFLAGS="$GTK_CFLAGS"
+ elif test -n "$PKG_CONFIG"; then
+ if test -n "$PKG_CONFIG" && \
+ { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gtk+-2.0\"") >&5
+ ($PKG_CONFIG --exists --print-errors "gtk+-2.0") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ pkg_cv_GTK_CFLAGS=`$PKG_CONFIG --cflags "gtk+-2.0" 2>/dev/null`
+else
+ pkg_failed=yes
+fi
+ else
+ pkg_failed=untried
+fi
+if test -n "$GTK_LIBS"; then
+ pkg_cv_GTK_LIBS="$GTK_LIBS"
+ elif test -n "$PKG_CONFIG"; then
+ if test -n "$PKG_CONFIG" && \
+ { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gtk+-2.0\"") >&5
+ ($PKG_CONFIG --exists --print-errors "gtk+-2.0") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ pkg_cv_GTK_LIBS=`$PKG_CONFIG --libs "gtk+-2.0" 2>/dev/null`
+else
+ pkg_failed=yes
+fi
+ else
+ pkg_failed=untried
+fi
+
+
+
+if test $pkg_failed = yes; then
+
+if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
+ _pkg_short_errors_supported=yes
+else
+ _pkg_short_errors_supported=no
+fi
+ if test $_pkg_short_errors_supported = yes; then
+ GTK_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "gtk+-2.0" 2>&1`
+ else
+ GTK_PKG_ERRORS=`$PKG_CONFIG --print-errors "gtk+-2.0" 2>&1`
+ fi
+ # Put the nasty error message in config.log where it belongs
+ echo "$GTK_PKG_ERRORS" >&5
+
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+ have_gtk=no
+elif test $pkg_failed = untried; then
+ have_gtk=no
+else
+ GTK_CFLAGS=$pkg_cv_GTK_CFLAGS
+ GTK_LIBS=$pkg_cv_GTK_LIBS
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+ have_gtk=yes
+fi
+ if [ "$have_gtk" = "yes" ]
+ then
cat >>confdefs.h <<\_ACEOF
-#define USE_PORTAUDIO_V19 1
+#define HAVE_GTK 1
_ACEOF
+ CPPFLAGS="$CPPFLAGS $GTK_CFLAGS"
+ fi
+ ;;
+esac
- LOCAL_LIBS="$LOCAL_LIBS portaudio-v19/lib/libportaudio.a"
- EXTRAOBJS="$EXTRAOBJS ../lib-src/portaudio-v19/lib/libportaudio.a"
- CXXFLAGS="-I\$(top_srcdir)/lib-src/portaudio-v19/include $CXXFLAGS"
- subdirs="$subdirs lib-src/portaudio-v19"
+LOCAL_LIBS="$LOCAL_LIBS portaudio-v19/lib/libportaudio.a"
+EXTRAOBJS="$EXTRAOBJS ../lib-src/portaudio-v19/lib/libportaudio.a"
+CXXFLAGS="-I\$(top_srcdir)/lib-src/portaudio-v19/include $CXXFLAGS"
+subdirs="$subdirs lib-src/portaudio-v19"
- case "${host_os}" in
- darwin* | rhapsody*)
- LIBS="-framework AudioUnit -framework AudioToolbox $LIBS"
- LIBS="-framework CoreAudio $LIBS -lz"
- ;;
- cygwin*)
- ;;
- *)
- { $as_echo "$as_me:$LINENO: checking for snd_pcm_open in -lasound" >&5
+
+case "${host_os}" in
+ darwin* | rhapsody*)
+ LIBS="-framework AudioUnit -framework AudioToolbox $LIBS"
+ LIBS="-framework CoreAudio $LIBS -lz"
+ ;;
+ cygwin*)
+ ;;
+ *)
+ { $as_echo "$as_me:$LINENO: checking for snd_pcm_open in -lasound" >&5
$as_echo_n "checking for snd_pcm_open in -lasound... " >&6; }
if test "${ac_cv_lib_asound_snd_pcm_open+set}" = set; then
$as_echo_n "(cached) " >&6
@@ -8968,9 +9301,9 @@ else
have_alsa=no
fi
- if [ $have_alsa = "yes" ] ; then
- LIBS="$LIBS -lasound"
- fi
+ if [ $have_alsa = "yes" ] ; then
+ LIBS="$LIBS -lasound"
+ fi
pkg_failed=no
{ $as_echo "$as_me:$LINENO: checking for JACK" >&5
@@ -9038,10 +9371,10 @@ else
$as_echo "yes" >&6; }
have_jack=yes
fi
- if [ $have_jack = "yes" ] ; then
- LIBS="$LIBS $JACK_LIBS"
- fi
- { $as_echo "$as_me:$LINENO: checking for HPI_SubSysCreate in -lhpi" >&5
+ if [ $have_jack = "yes" ] ; then
+ LIBS="$LIBS $JACK_LIBS"
+ fi
+ { $as_echo "$as_me:$LINENO: checking for HPI_SubSysCreate in -lhpi" >&5
$as_echo_n "checking for HPI_SubSysCreate in -lhpi... " >&6; }
if test "${ac_cv_lib_hpi_HPI_SubSysCreate+set}" = set; then
$as_echo_n "(cached) " >&6
@@ -9112,10 +9445,10 @@ else
have_asihpi=no
fi
- if [ $have_asihpi = "yes" ] ; then
- LIBS="$LIBS -lhpi"
- fi
- { $as_echo "$as_me:$LINENO: checking for clock_gettime in -lrt" >&5
+ if [ $have_asihpi = "yes" ] ; then
+ LIBS="$LIBS -lhpi"
+ fi
+ { $as_echo "$as_me:$LINENO: checking for clock_gettime in -lrt" >&5
$as_echo_n "checking for clock_gettime in -lrt... " >&6; }
if test "${ac_cv_lib_rt_clock_gettime+set}" = set; then
$as_echo_n "(cached) " >&6
@@ -9184,7 +9517,7 @@ if test "x$ac_cv_lib_rt_clock_gettime" = x""yes; then
rt_libs=" -lrt"
fi
- LIBS="${LIBS}${rt_libs}"
+ LIBS="${LIBS}${rt_libs}"
for ac_func in clock_gettime nanosleep
@@ -9287,30 +9620,8 @@ _ACEOF
fi
done
- ;;
- esac
-
-else
- CXXFLAGS="-I\$(top_srcdir)/lib-src/portaudio/pa_common $CXXFLAGS"
-
- case "${host_os}" in
- darwin* | rhapsody*)
- LOCAL_LIBS="$LOCAL_LIBS portaudio/pa_mac_core/portaudio.a"
- EXTRAOBJS="$EXTRAOBJS ../lib-src/portaudio/pa_mac_core/portaudio.a"
-
- LIBS="-framework AudioUnit -framework AudioToolbox $LIBS"
- LIBS="-framework CoreAudio $LIBS -lz"
- ;;
- cygwin*)
- LOCAL_LIBS="$LOCAL_LIBS portaudio/pa_win_wmme/portaudio.a"
- EXTRAOBJS="$EXTRAOBJS ../lib-src/portaudio/pa_win_wmme/portaudio.a"
- ;;
- *)
- LOCAL_LIBS="$LOCAL_LIBS portaudio/pa_unix_oss/portaudio.a"
- EXTRAOBJS="$EXTRAOBJS ../lib-src/portaudio/pa_unix_oss/portaudio.a"
- ;;
- esac
-fi
+ ;;
+esac
if [ "$use_portmixer" = "yes" ] ; then
@@ -9319,33 +9630,14 @@ cat >>confdefs.h <<\_ACEOF
#define USE_PORTMIXER 1
_ACEOF
- if [ "$use_portaudio" = "v19" ] ; then
-
- CXXFLAGS="-I\$(top_srcdir)/lib-src/portmixer/include $CXXFLAGS"
- LOCAL_LIBS="$LOCAL_LIBS portmixer/libportmixer.a"
- EXTRAOBJS="$EXTRAOBJS ../lib-src/portmixer/libportmixer.a"
- subdirs="$subdirs lib-src/portmixer"
+ CXXFLAGS="-I\$(top_srcdir)/lib-src/portmixer/include $CXXFLAGS"
+ LOCAL_LIBS="$LOCAL_LIBS portmixer/libportmixer.a"
+ EXTRAOBJS="$EXTRAOBJS ../lib-src/portmixer/libportmixer.a"
- ac_configure_args="$ac_configure_args --with-pa-include=../portaudio-v19/include"
- else
+ subdirs="$subdirs lib-src/portmixer"
- CXXFLAGS="-I\$(top_srcdir)/lib-src/portmixer/px_common $CXXFLAGS"
- case "${host_os}" in
- darwin* | rhapsody*)
- LOCAL_LIBS="$LOCAL_LIBS portmixer/px_mac_core/portmixer.a"
- EXTRAOBJS="$EXTRAOBJS ../lib-src/portmixer/px_mac_core/portmixer.a"
- ;;
- cygwin*)
- LOCAL_LIBS="$LOCAL_LIBS portmixer/px_win_wmme/portmixer.a"
- EXTRAOBJS="$EXTRAOBJS ../lib-src/portmixer/px_win_wmme/portmixer.a"
- ;;
- *)
- LOCAL_LIBS="$LOCAL_LIBS portmixer/px_unix_oss/portmixer.a"
- EXTRAOBJS="$EXTRAOBJS ../lib-src/portmixer/px_unix_oss/portmixer.a"
- ;;
- esac
- fi
+ ac_configure_args="$ac_configure_args --with-pa-include=../portaudio-v19/include"
fi
{ $as_echo "$as_me:$LINENO: checking for lrint" >&5
@@ -9530,16 +9822,12 @@ case "${host_os}" in
;;
esac
-ac_config_files="$ac_config_files Makefile src/Makefile lib-src/Makefile lib-src/libnyquist/Makefile lib-src/libnyquist/misc/Makefile locale/Makefile"
+ac_config_files="$ac_config_files Makefile src/Makefile lib-src/Makefile locale/Makefile"
if [ "x$LIBEXPAT_USE_LOCAL" = "xyes" ]; then
ac_config_files="$ac_config_files lib-src/expat/Makefile"
fi
-if [ "$use_portaudio" != "v19" ]; then
- ac_config_files="$ac_config_files lib-src/portaudio/pa_unix_oss/Makefile"
-
-fi
if [ -e tests/Makefile.in ]; then
ac_config_files="$ac_config_files tests/Makefile"
@@ -10144,11 +10432,8 @@ do
"Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
"src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;;
"lib-src/Makefile") CONFIG_FILES="$CONFIG_FILES lib-src/Makefile" ;;
- "lib-src/libnyquist/Makefile") CONFIG_FILES="$CONFIG_FILES lib-src/libnyquist/Makefile" ;;
- "lib-src/libnyquist/misc/Makefile") CONFIG_FILES="$CONFIG_FILES lib-src/libnyquist/misc/Makefile" ;;
"locale/Makefile") CONFIG_FILES="$CONFIG_FILES locale/Makefile" ;;
"lib-src/expat/Makefile") CONFIG_FILES="$CONFIG_FILES lib-src/expat/Makefile" ;;
- "lib-src/portaudio/pa_unix_oss/Makefile") CONFIG_FILES="$CONFIG_FILES lib-src/portaudio/pa_unix_oss/Makefile" ;;
"tests/Makefile") CONFIG_FILES="$CONFIG_FILES tests/Makefile" ;;
*) { { $as_echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
@@ -10987,9 +11272,7 @@ fi
pa_libs=
-if [ "$use_portaudio" = "v19" ] ; then
- pa_libs=`grep 'Libs:' lib-src/portaudio-v19/portaudio-2.0.pc | sed -e 's/Libs://;s/-L${libdir}//;s/-lportaudio//'`
-fi
+pa_libs=`grep 'Libs:' lib-src/portaudio-v19/portaudio-2.0.pc | sed -e 's/Libs://;s/-L${libdir}//;s/-lportaudio//'`
sed -i -e "s/@PA_LIBS@/$pa_libs/" src/Makefile
echo ""
@@ -11008,7 +11291,6 @@ for lib in $LIBRARIES ; do
fi
done
-
if [ "$use_ladspa" = "yes" ] ; then
echo "ladspa: enabled"
else
@@ -11023,20 +11305,6 @@ fi
echo "prefix=$prefix";
-case "${host_os}" in
- darwin* | rhapsody*)
- ;;
- cygwin*)
- ;;
- *)
- if [ "$use_portaudio" = "v19" ] ; then
- echo "portaudio: v19"
- else
- echo "portaudio: v18 (OSS only)"
- fi
- ;;
-esac
-
echo ""
echo "Run 'configure --help' for an explanation of these options,"
echo "otherwise run 'make' to build Audacity."
diff --git a/configure.in b/configure.in
index 6e0fcc7..706dd4c 100644
--- a/configure.in
+++ b/configure.in
@@ -126,14 +126,28 @@ if test x$prefix = "xNONE" ; then
fi
AC_DEFINE_UNQUOTED(INSTALL_PREFIX, "$prefix", [define as prefix where Audacity is installed])
+### Configuration of Audacity module support ###
+################################################
dnl Some code (headers) can be built either as part of audacity, or as part of
dnl audacity plug-ins. In order to tell this code what is going on, we need to
dnl define BUILDING_AUDACITY during the audacity build, and not during the
dnl plug-in build. This code puts the relevant content into configunix.h
AC_DEFINE(BUILDING_AUDACITY, 1,
[Define we are compiling Audacity itself, not an Audacity plug-in])
+# Add -rdynamic to linker flags so the right symbols are exported for
+# plug-ins. This might not work on all architectures / compilers, so we need
+# to check if it does or not.
+AX_LD_CHECK_FLAG([-rdynamic],[],[],
+ have_dynamic_link=yes,have_dynamic_link=no)
+if test "x$have_dynamic_link" = "xyes" ; then
+ BUILD_LDFLAGS="${BUILD_LDFLAGS} -rdynamic "
+else
+ AC_MSG_WARN(["Linker does not support -rdynamic. Could not enable exporting all symbols"])
+ AC_MSG_WARN(["Audacity module support will probably not work"])
+fi
-dnl Build Options
+### Build Options ###
+#####################
AC_ARG_ENABLE(static,
[AS_HELP_STRING([--enable-static],
@@ -289,9 +303,9 @@ dnl-------------------------------------------------------------
dnl Optional library support. Lots of things we could use, but
dnl can do without if they aren't available.
dnl-------------------------------------------------------------
-dnl LIBRARIES="LIBVORBIS LIBMAD LIBSNDFILE LIBFLAC LIBID3TAG LIBSAMPLERATE LIBRESAMPLE LIBSBSMS LIBSOUNDTOUCH LIBNYQUIST LIBVAMP LIBEXPAT LIBTWOLAME FFMPEG LIBLRDF SLV2 REDLAND PORTSMF"
+dnl LIBRARIES="LIBVORBIS LIBMAD LIBSNDFILE LIBFLAC LIBID3TAG LIBSAMPLERATE LIBRESAMPLE LIBSBSMS LIBSOUNDTOUCH LIBNYQUIST LIBVAMP LIBEXPAT LIBTWOLAME FFMPEG LIBLRDF SLV2 REDLAND PORTSMF TAGLIB"
dnl disable plugin categorisation and LV2 libs for 1.3.7 release
-LIBRARIES="LIBVORBIS LIBMAD LIBSNDFILE LIBFLAC LIBID3TAG LIBSAMPLERATE LIBRESAMPLE LIBSBSMS LIBSOUNDTOUCH LIBNYQUIST LIBVAMP LIBEXPAT LIBTWOLAME FFMPEG PORTSMF"
+LIBRARIES="LIBVORBIS LIBMAD LIBSNDFILE LIBFLAC LIBID3TAG LIBSAMPLERATE LIBRESAMPLE LIBSBSMS LIBSOUNDTOUCH LIBNYQUIST LIBVAMP LIBEXPAT LIBTWOLAME FFMPEG PORTSMF TAGLIB"
AC_MSG_NOTICE([Determining what libraries are available in this tree and on the system])
@@ -313,6 +327,7 @@ dnl AUDACITY_CHECKLIB_REDLAND
dnl AUDACITY_CHECKLIB_SLV2
dnl AUDACITY_CHECKLIB_LIBLRDF
AUDACITY_CHECKLIB_PORTSMF
+AUDACITY_CHECKLIB_TAGLIB
dnl Decide what libraries to build with, and whether to use system or local libraries
dnl Set variables based on choices.
@@ -486,20 +501,6 @@ AC_ARG_WITH(portmixer,
use_portmixer=$withval,
use_portmixer="yes")
-AC_ARG_WITH(portaudio,
- [AS_HELP_STRING([--with-portaudio],
- [which version of PortAudio to use (=[v18,v19]) [default=v19]])],
- use_portaudio=$withval,
- use_portaudio="v19")
-
-dnl RTaudio doesn't work right now, so commenting this out RA 30/07/07
-dnl AC_ARG_WITH(rtaudio,
-dnl [AS_HELP_STRING([--with-rtaudio],
-dnl [compile with RTAudio instead of PortAudio [default=no]])],
-dnl use_rtaudio=$withval,
-dnl use_rtaudio="no")
-
-
AC_CANONICAL_HOST
dnl OS-specific configuration
@@ -510,7 +511,7 @@ case "${host_os}" in
CDEPEND="AudacityHeaders.h.gch"
PRECOMP_CFLAGS="-include AudacityHeaders.h"
CONFIGHEADER="configunix.h"
- CXXFLAGS="-I../mac $CXXFLAGS"
+ CXXFLAGS="-I\$(top_srcdir)/mac $CXXFLAGS"
AFTERBUILD=""
EXTRATARGETS="../Audacity.app"
if [[ "$use_audiounits" = "auto" ]] ; then
@@ -538,116 +539,62 @@ case "${host_os}" in
AFTERBUILD=""
EXTRAINSTALLTARGETS="$EXTRAINSTALLTARGETS install-extra-data"
EXTRAUNINSTALLTARGETS="$EXTRAUNINSTALLTARGETS uninstall-extra-data"
+
+ AC_SUBST(HAVE_GTK)
+ PKG_CHECK_MODULES(GTK, gtk+-2.0, have_gtk=yes, have_gtk=no)
+ if [[ "$have_gtk" = "yes" ]]
+ then
+ AC_DEFINE(HAVE_GTK, 1, [Define if GTK is available])
+ CPPFLAGS="$CPPFLAGS $GTK_CFLAGS"
+ fi
+ ;;
esac
dnl PortAudio configuration
-if [[ "$use_portaudio" = "v19" ]] ; then
- dnl PortAudio v19
- AC_DEFINE(USE_PORTAUDIO_V19, 1,
- [Define if PortAudio v19 is being used (instead of v18)])
+LOCAL_LIBS="$LOCAL_LIBS portaudio-v19/lib/libportaudio.a"
+EXTRAOBJS="$EXTRAOBJS ../lib-src/portaudio-v19/lib/libportaudio.a"
+CXXFLAGS="-I\$(top_srcdir)/lib-src/portaudio-v19/include $CXXFLAGS"
- LOCAL_LIBS="$LOCAL_LIBS portaudio-v19/lib/libportaudio.a"
- EXTRAOBJS="$EXTRAOBJS ../lib-src/portaudio-v19/lib/libportaudio.a"
- CXXFLAGS="-I\$(top_srcdir)/lib-src/portaudio-v19/include $CXXFLAGS"
+AC_CONFIG_SUBDIRS([lib-src/portaudio-v19])
- AC_CONFIG_SUBDIRS([lib-src/portaudio-v19])
-
- case "${host_os}" in
- darwin* | rhapsody*)
- LIBS="-framework AudioUnit -framework AudioToolbox $LIBS"
- LIBS="-framework CoreAudio $LIBS -lz"
- ;;
- cygwin*)
- ;;
- *)
- dnl Unix
- AC_CHECK_LIB(asound, snd_pcm_open, have_alsa=yes, have_alsa=no)
- if [[ $have_alsa = "yes" ]] ; then
- LIBS="$LIBS -lasound"
- fi
- PKG_CHECK_MODULES(JACK, jack, have_jack=yes, have_jack=no)
- if [[ $have_jack = "yes" ]] ; then
- LIBS="$LIBS $JACK_LIBS"
- fi
- AC_CHECK_LIB(hpi, HPI_SubSysCreate, have_asihpi=yes, have_asihpi=no, -lm)
- if [[ $have_asihpi = "yes" ]] ; then
- LIBS="$LIBS -lhpi"
- fi
- AC_CHECK_LIB(rt, clock_gettime, [rt_libs=" -lrt"])
- LIBS="${LIBS}${rt_libs}"
- AC_CHECK_FUNCS([clock_gettime nanosleep])
- ;;
- esac
-
-else
- dnl PortAudio v18
- CXXFLAGS="-I\$(top_srcdir)/lib-src/portaudio/pa_common $CXXFLAGS"
-
- case "${host_os}" in
- darwin* | rhapsody*)
- LOCAL_LIBS="$LOCAL_LIBS portaudio/pa_mac_core/portaudio.a"
- EXTRAOBJS="$EXTRAOBJS ../lib-src/portaudio/pa_mac_core/portaudio.a"
-
- LIBS="-framework AudioUnit -framework AudioToolbox $LIBS"
- LIBS="-framework CoreAudio $LIBS -lz"
- ;;
- cygwin*)
- LOCAL_LIBS="$LOCAL_LIBS portaudio/pa_win_wmme/portaudio.a"
- EXTRAOBJS="$EXTRAOBJS ../lib-src/portaudio/pa_win_wmme/portaudio.a"
- ;;
- *)
- dnl Unix
- LOCAL_LIBS="$LOCAL_LIBS portaudio/pa_unix_oss/portaudio.a"
- EXTRAOBJS="$EXTRAOBJS ../lib-src/portaudio/pa_unix_oss/portaudio.a"
- ;;
- esac
-fi
+case "${host_os}" in
+ darwin* | rhapsody*)
+ LIBS="-framework AudioUnit -framework AudioToolbox $LIBS"
+ LIBS="-framework CoreAudio $LIBS -lz"
+ ;;
+ cygwin*)
+ ;;
+ *)
+ dnl Unix
+ AC_CHECK_LIB(asound, snd_pcm_open, have_alsa=yes, have_alsa=no)
+ if [[ $have_alsa = "yes" ]] ; then
+ LIBS="$LIBS -lasound"
+ fi
+ PKG_CHECK_MODULES(JACK, jack, have_jack=yes, have_jack=no)
+ if [[ $have_jack = "yes" ]] ; then
+ LIBS="$LIBS $JACK_LIBS"
+ fi
+ AC_CHECK_LIB(hpi, HPI_SubSysCreate, have_asihpi=yes, have_asihpi=no, -lm)
+ if [[ $have_asihpi = "yes" ]] ; then
+ LIBS="$LIBS -lhpi"
+ fi
+ AC_CHECK_LIB(rt, clock_gettime, [rt_libs=" -lrt"])
+ LIBS="${LIBS}${rt_libs}"
+ AC_CHECK_FUNCS([clock_gettime nanosleep])
+ ;;
+esac
-dnl Again, not in use now so disable
-dnl if [[ "$use_rtaudio" = "yes" ]] ; then
-dnl AC_CONFIG_SUBDIRS([lib-src/rtaudio])
-dnl AC_DEFINE(USE_RTAUDIO, 1,
-dnl [Define if RTAudio support should be enabled])
-dnl CXXFLAGS="-I\$(top_srcdir)/lib-src/rtaudio $CXXFLAGS"
-dnl CXXFLAGS="\`../lib-src/rtaudio/rtaudio-config --cflags\` $CXXFLAGS"
-dnl LOCAL_LIBS="$LOCAL_LIBS rtaudio/librtaudio.a"
-dnl EXTRAOBJS="$EXTRAOBJS ../lib-src/librtaudio.a"
-dnl LIBS = "$LIBS \`../lib-src/rtaudio/rtaudio-config --libs\`"
-dnl fi
if [[ "$use_portmixer" = "yes" ]] ; then
AC_DEFINE(USE_PORTMIXER, 1,
[Define if PortMixer support should be enabled])
- if [[ "$use_portaudio" = "v19" ]] ; then
- dnl PortMixer with PortAudio v19
- CXXFLAGS="-I\$(top_srcdir)/lib-src/portmixer/include $CXXFLAGS"
- LOCAL_LIBS="$LOCAL_LIBS portmixer/libportmixer.a"
- EXTRAOBJS="$EXTRAOBJS ../lib-src/portmixer/libportmixer.a"
+ CXXFLAGS="-I\$(top_srcdir)/lib-src/portmixer/include $CXXFLAGS"
+ LOCAL_LIBS="$LOCAL_LIBS portmixer/libportmixer.a"
- AC_CONFIG_SUBDIRS([lib-src/portmixer])
- ac_configure_args="$ac_configure_args --with-pa-include=../portaudio-v19/include"
- else
- dnl PortMixer with PortAudio v18
-
- CXXFLAGS="-I\$(top_srcdir)/lib-src/portmixer/px_common $CXXFLAGS"
- case "${host_os}" in
- darwin* | rhapsody*)
- LOCAL_LIBS="$LOCAL_LIBS portmixer/px_mac_core/portmixer.a"
- EXTRAOBJS="$EXTRAOBJS ../lib-src/portmixer/px_mac_core/portmixer.a"
- ;;
- cygwin*)
- LOCAL_LIBS="$LOCAL_LIBS portmixer/px_win_wmme/portmixer.a"
- EXTRAOBJS="$EXTRAOBJS ../lib-src/portmixer/px_win_wmme/portmixer.a"
- ;;
- *)
- dnl Unix
- LOCAL_LIBS="$LOCAL_LIBS portmixer/px_unix_oss/portmixer.a"
- EXTRAOBJS="$EXTRAOBJS ../lib-src/portmixer/px_unix_oss/portmixer.a"
- ;;
- esac
- fi
+ AC_CONFIG_SUBDIRS([lib-src/portmixer])
+ ac_configure_args="$ac_configure_args --with-pa-include=../portaudio-v19/include"
fi
dnl Check for lrint/lrintf
@@ -700,16 +647,12 @@ case "${host_os}" in
esac
AC_CONFIG_FILES([Makefile src/Makefile lib-src/Makefile \
- lib-src/libnyquist/Makefile lib-src/libnyquist/misc/Makefile \
locale/Makefile])
dnl There are various other files we might need to process, depends on what
dnl has been enabled previously
if [[ "x$LIBEXPAT_USE_LOCAL" = "xyes" ]]; then
AC_CONFIG_FILES([lib-src/expat/Makefile])
fi
-if [[ "$use_portaudio" != "v19" ]]; then
- AC_CONFIG_FILES([lib-src/portaudio/pa_unix_oss/Makefile])
-fi
if [[ -e tests/Makefile.in ]]; then
AC_CONFIG_FILES([tests/Makefile])
fi
@@ -720,9 +663,7 @@ dnl
dnl Substitute any addition libraries that portaudio (v19) requires
dnl
pa_libs=
-if [[ "$use_portaudio" = "v19" ]] ; then
- pa_libs=`grep 'Libs:' lib-src/portaudio-v19/portaudio-2.0.pc | sed -e 's/Libs://;s/-L${libdir}//;s/-lportaudio//'`
-fi
+pa_libs=`grep 'Libs:' lib-src/portaudio-v19/portaudio-2.0.pc | sed -e 's/Libs://;s/-L${libdir}//;s/-lportaudio//'`
sed -i -e "s/@PA_LIBS@/$pa_libs/" src/Makefile
echo ""
@@ -741,13 +682,6 @@ for lib in $LIBRARIES ; do
fi
done
-dnl disabled as not working
-dnl if [[ "$use_rtaudio" = "yes" ]] ; then
-dnl echo "RTAudio: enabled"
-dnl else
-dnl echo "RTAudio: disabled"
-dnl fi
-
if [[ "$use_ladspa" = "yes" ]] ; then
echo "ladspa: enabled"
else
@@ -762,20 +696,6 @@ fi
echo "prefix=$prefix";
-case "${host_os}" in
- darwin* | rhapsody*)
- ;;
- cygwin*)
- ;;
- *)
- if [[ "$use_portaudio" = "v19" ]] ; then
- echo "portaudio: v19"
- else
- echo "portaudio: v18 (OSS only)"
- fi
- ;;
-esac
-
echo ""
echo "Run 'configure --help' for an explanation of these options,"
echo "otherwise run 'make' to build Audacity."
diff --git a/lib-src/FileDialog/FileDialog.vcproj b/lib-src/FileDialog/FileDialog.vcproj
old mode 100644
new mode 100755
diff --git a/lib-src/FileDialog/generic/FileDialogPrivate.cpp b/lib-src/FileDialog/generic/FileDialogPrivate.cpp
index 84c25ff..06a772f 100644
--- a/lib-src/FileDialog/generic/FileDialogPrivate.cpp
+++ b/lib-src/FileDialog/generic/FileDialogPrivate.cpp
@@ -4,7 +4,7 @@
// Author: Robert Roebling
// Modified by: Leland Lucius
// Created: 12/12/98
-// RCS-ID: $Id: FileDialogPrivate.cpp,v 1.2 2008/05/24 02:57:39 llucius Exp $
+// RCS-ID: $Id: FileDialogPrivate.cpp,v 1.3 2009/07/02 22:11:18 vjohnson Exp $
// Copyright: (c) Robert Roebling
// Licence: wxWindows licence
//
@@ -255,25 +255,25 @@ void FileData::ReadData()
// __WXWINCE__
#if defined(__UNIX__)
- m_permissions.Printf(_T("%c%c%c%c%c%c%c%c%c"),
- buff.st_mode & wxS_IRUSR ? _T('r') : _T('-'),
- buff.st_mode & wxS_IWUSR ? _T('w') : _T('-'),
- buff.st_mode & wxS_IXUSR ? _T('x') : _T('-'),
- buff.st_mode & wxS_IRGRP ? _T('r') : _T('-'),
- buff.st_mode & wxS_IWGRP ? _T('w') : _T('-'),
- buff.st_mode & wxS_IXGRP ? _T('x') : _T('-'),
- buff.st_mode & wxS_IROTH ? _T('r') : _T('-'),
- buff.st_mode & wxS_IWOTH ? _T('w') : _T('-'),
- buff.st_mode & wxS_IXOTH ? _T('x') : _T('-'));
+ m_permissions.Printf(wxT("%c%c%c%c%c%c%c%c%c"),
+ buff.st_mode & wxS_IRUSR ? wxT('r') : wxT('-'),
+ buff.st_mode & wxS_IWUSR ? wxT('w') : wxT('-'),
+ buff.st_mode & wxS_IXUSR ? wxT('x') : wxT('-'),
+ buff.st_mode & wxS_IRGRP ? wxT('r') : wxT('-'),
+ buff.st_mode & wxS_IWGRP ? wxT('w') : wxT('-'),
+ buff.st_mode & wxS_IXGRP ? wxT('x') : wxT('-'),
+ buff.st_mode & wxS_IROTH ? wxT('r') : wxT('-'),
+ buff.st_mode & wxS_IWOTH ? wxT('w') : wxT('-'),
+ buff.st_mode & wxS_IXOTH ? wxT('x') : wxT('-'));
#elif defined(__WIN32__)
DWORD attribs = GetFileAttributes(m_filePath.fn_str());
if (attribs != (DWORD)-1)
{
- m_permissions.Printf(_T("%c%c%c%c"),
- attribs & FILE_ATTRIBUTE_ARCHIVE ? _T('A') : _T(' '),
- attribs & FILE_ATTRIBUTE_READONLY ? _T('R') : _T(' '),
- attribs & FILE_ATTRIBUTE_HIDDEN ? _T('H') : _T(' '),
- attribs & FILE_ATTRIBUTE_SYSTEM ? _T('S') : _T(' '));
+ m_permissions.Printf(wxT("%c%c%c%c"),
+ attribs & FILE_ATTRIBUTE_ARCHIVE ? wxT('A') : wxT(' '),
+ attribs & FILE_ATTRIBUTE_READONLY ? wxT('R') : wxT(' '),
+ attribs & FILE_ATTRIBUTE_HIDDEN ? wxT('H') : wxT(' '),
+ attribs & FILE_ATTRIBUTE_SYSTEM ? wxT('S') : wxT(' '));
}
#endif
@@ -347,7 +347,7 @@ wxString FileData::GetEntry( fileListFieldType num ) const
case FileList_Size:
if (!IsDir() && !IsLink() && !IsDrive())
- s.Printf(_T("%ld"), m_size);
+ s.Printf(wxT("%ld"), m_size);
break;
case FileList_Type:
@@ -366,7 +366,7 @@ wxString FileData::GetEntry( fileListFieldType num ) const
#endif // defined(__UNIX__) || defined(__WIN32__)
default:
- wxFAIL_MSG( _T("unexpected field in FileData::GetEntry()") );
+ wxFAIL_MSG( wxT("unexpected field in FileData::GetEntry()") );
}
return s;
@@ -391,7 +391,7 @@ void FileData::MakeItem( wxListItem &item )
if (IsLink())
{
- wxColour dg = wxTheColourDatabase->Find( _T("MEDIUM GREY") );
+ wxColour dg = wxTheColourDatabase->Find( wxT("MEDIUM GREY") );
if ( dg.Ok() )
item.SetTextColour(dg);
}
@@ -1215,7 +1215,7 @@ void FileDialog::DoSetFilterIndex(int filterindex)
if ( str->Left(2) == wxT("*.") )
{
m_filterExtension = str->Mid(1);
- if (m_filterExtension == _T(".*"))
+ if (m_filterExtension == wxT(".*"))
m_filterExtension.clear();
}
else
diff --git a/lib-src/FileDialog/gtk/FileDialogPrivate.cpp b/lib-src/FileDialog/gtk/FileDialogPrivate.cpp
index a48c63a..7e788c3 100644
--- a/lib-src/FileDialog/gtk/FileDialogPrivate.cpp
+++ b/lib-src/FileDialog/gtk/FileDialogPrivate.cpp
@@ -2,7 +2,7 @@
// Name: gtk/filedlg.cpp
// Purpose: native implementation of FileDialog
// Author: Robert Roebling, Zbigniew Zagorski, Mart Raudsepp
-// Id: $Id: FileDialogPrivate.cpp,v 1.6 2008/10/16 22:22:48 dwritten Exp $
+// Id: $Id: FileDialogPrivate.cpp,v 1.7 2009/05/25 11:10:00 llucius Exp $
// Copyright: (c) 1998 Robert Roebling, 2004 Zbigniew Zagorski, 2005 Mart Raudsepp
// Licence: wxWindows licence
//
@@ -346,8 +346,12 @@ void FileDialog::DoSetSize(int x, int y, int width, int height, int sizeFlags )
wxString FileDialog::GetPath() const
{
#if defined(__WXGTK24__) && (!defined(__WXGPE__))
- if (!gtk_check_version(2,4,0))
- return wxConvFileName->cMB2WX(gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(m_widget)));
+ if (!gtk_check_version(2,4,0)) {
+ char *f = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(m_widget));
+ wxString path = wxConvFileName->cMB2WX(f);
+ g_free(f);
+ return path;
+ }
else
#endif
return wxGenericFileDialog::GetPath();
@@ -468,8 +472,12 @@ void FileDialog::SetFilename(const wxString& name)
wxString FileDialog::GetFilename() const
{
#if defined(__WXGTK24__) && (!defined(__WXGPE__))
- if (!gtk_check_version(2,4,0))
- return wxFileName(wxConvFileName->cMB2WX(gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(m_widget))) ).GetFullName();
+ if (!gtk_check_version(2,4,0)) {
+ char *f = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(m_widget));
+ wxFileName name(wxConvFileName->cMB2WX(f));
+ g_free(f);
+ return name.GetFullName();
+ }
else
#endif
return wxGenericFileDialog::GetFilename();
diff --git a/lib-src/FileDialog/win/FileDialogPrivate.cpp b/lib-src/FileDialog/win/FileDialogPrivate.cpp
index 64bf76c..3a61ded 100644
--- a/lib-src/FileDialog/win/FileDialogPrivate.cpp
+++ b/lib-src/FileDialog/win/FileDialogPrivate.cpp
@@ -4,7 +4,7 @@
// Author: Julian Smart
// Modified by: Leland Lucius
// Created: 01/02/97
-// RCS-ID: $Id: FileDialogPrivate.cpp,v 1.14 2008/11/08 21:00:26 llucius Exp $
+// RCS-ID: $Id: FileDialogPrivate.cpp,v 1.17 2009/07/02 22:11:19 vjohnson Exp $
// Copyright: (c) Julian Smart
// Licence: wxWindows licence
//
@@ -228,18 +228,16 @@ FileDialogHookFunction(HWND hDlg,
{
OPENFILENAME *ofn = (OPENFILENAME *)
GetWindowLongPtr(hDlg, GWLP_USERDATA);
- FileDialog *me = (FileDialog *)
- ofn->lCustData;
- me->FilterFiles(hDlg);
+ FileDialog *me = (FileDialog *) ofn->lCustData;
+ me->FilterFiles(hDlg, false);
}
else if (CDN_TYPECHANGE == (pNotifyCode->hdr).code)
{
OPENFILENAME *ofn = (OPENFILENAME *)
GetWindowLongPtr(hDlg, GWLP_USERDATA);
- FileDialog *me = (FileDialog *)
- ofn->lCustData;
+ FileDialog *me = (FileDialog *) ofn->lCustData;
me->ParseFilter(ofn->nFilterIndex);
- me->FilterFiles(hDlg);
+ me->FilterFiles(hDlg, true);
}
break;
}
@@ -249,10 +247,15 @@ FileDialogHookFunction(HWND hDlg,
return 0;
}
-void FileDialog::FilterFiles(HWND hDlg)
+#define WM_GETISHELLBROWSER WM_USER + 7
+
+void FileDialog::FilterFiles(HWND hDlg, bool refresh)
{
HWND parent = ::GetParent(hDlg);
IShellFolder *ishell = NULL;
+ IShellBrowser *ishellbrowser = NULL; // Does not have to be released
+ IShellView *ishellview = NULL;
+ IFolderView *ifolderview = NULL;
LPMALLOC imalloc = NULL;
HRESULT hr;
@@ -271,13 +274,25 @@ void FileDialog::FilterFiles(HWND hDlg)
wxASSERT((hr == NOERROR) && (imalloc != NULL));
return;
}
-
+
+ // Get IShellBrowser interface for current dialog
+ ishellbrowser = (IShellBrowser*)::SendMessage(parent, WM_GETISHELLBROWSER, 0, 0);
+ if (ishellbrowser)
+ {
+ // Get IShellBrowser interface for returned browser
+ if (ishellbrowser->QueryActiveShellView(&ishellview) == S_OK)
+ {
+ // Get the IFolderView interface...available on XP or greater
+ ishellview->QueryInterface(IID_IFolderView, (void **)&ifolderview);
+ }
+ }
+
// Init
LVITEM lvi;
wxZeroMemory(lvi);
-
+
// Process all items
- int fltcnt = m_Filters.GetCount();
+ int fltcnt = (int) m_Filters.GetCount();
int itmcnt = ::SendMessage(lv, LVM_GETITEMCOUNT, 0, 0);
for (int itm = 0; itm < itmcnt; itm++)
{
@@ -289,8 +304,24 @@ void FileDialog::FilterFiles(HWND hDlg)
wxASSERT(FALSE);
break;
}
+
LPCITEMIDLIST fidl = (LPCITEMIDLIST) lvi.lParam;
-
+
+ // On Vista, lParam no longer contains the pidl so retrieve it via the
+ // IFolderView interface. This interface is only available on XP or higher
+ // so if that limitation isn't workable, use IShellView::GetItemObject() to
+ // retrieve items.
+ if (fidl == NULL && ifolderview != NULL)
+ {
+ ifolderview->Item(itm, (LPITEMIDLIST *) &fidl);
+ }
+
+ if (fidl == NULL)
+ {
+ wxASSERT(fidl != NULL);
+ break;
+ }
+
// Retrieve the IShellFolder interface of the parent (must be Release()'d)
if (ishell == NULL)
{
@@ -370,9 +401,28 @@ void FileDialog::FilterFiles(HWND hDlg)
itmcnt--;
}
}
-
-done:
-
+
+ // On Vista and maybe XP, we seem to need to refresh the view after
+ // changing the filters. But, only refresh for type changes and not
+ // selection changes since it causes additional selection change
+ // events to occur.
+ if (ishellview && refresh)
+ {
+ ishellview->Refresh();
+ }
+
+ // Release the interface
+ if (ifolderview)
+ {
+ ifolderview->Release();
+ }
+
+ // Release the interface
+ if (ishellview)
+ {
+ ishellview->Release();
+ }
+
// Release the interface
if (ishell)
{
@@ -419,8 +469,8 @@ FileDialog::FileDialog(wxWindow *parent,
{
m_dialogStyle = style;
- if ( ( m_dialogStyle & wxMULTIPLE ) && ( m_dialogStyle & wxSAVE ) )
- m_dialogStyle &= ~wxMULTIPLE;
+ if ( ( m_dialogStyle & wxFD_MULTIPLE ) && ( m_dialogStyle & wxFD_SAVE ) )
+ m_dialogStyle &= ~wxFD_MULTIPLE;
m_bMovedWindow = false;
@@ -439,8 +489,8 @@ void FileDialog::GetPaths(wxArrayString& paths) const
paths.Empty();
wxString dir(m_dir);
- if ( m_dir.Last() != _T('\\') )
- dir += _T('\\');
+ if ( m_dir.Last() != wxT('\\') )
+ dir += wxT('\\');
size_t count = m_fileNames.GetCount();
for ( size_t n = 0; n < count; n++ )
@@ -462,7 +512,7 @@ void FileDialog::SetPath(const wxString& path)
wxString ext;
wxSplitPath(path, &m_dir, &m_fileName, &ext);
if ( !ext.empty() )
- m_fileName << _T('.') << ext;
+ m_fileName << wxT('.') << ext;
}
void FileDialog::DoGetPosition( int *x, int *y ) const
@@ -514,7 +564,7 @@ int FileDialog::ShowModal()
long msw_flags = OFN_HIDEREADONLY;
#endif
- if ( m_dialogStyle & wxFILE_MUST_EXIST )
+ if ( m_dialogStyle & wxFD_FILE_MUST_EXIST )
msw_flags |= OFN_PATHMUSTEXIST | OFN_FILEMUSTEXIST;
/*
If the window has been moved the programmer is probably
@@ -537,7 +587,7 @@ int FileDialog::ShowModal()
#endif
}
- if (m_dialogStyle & wxMULTIPLE )
+ if (m_dialogStyle & wxFD_MULTIPLE )
{
// OFN_EXPLORER must always be specified with OFN_ALLOWMULTISELECT
msw_flags |= OFN_EXPLORER | OFN_ALLOWMULTISELECT;
@@ -546,12 +596,12 @@ int FileDialog::ShowModal()
// if wxCHANGE_DIR flag is not given we shouldn't change the CWD which the
// standard dialog does by default (notice that under NT it does it anyhow,
// OFN_NOCHANGEDIR or not, see below)
- if ( !(m_dialogStyle & wxCHANGE_DIR) )
+ if ( !(m_dialogStyle & wxFD_CHANGE_DIR) )
{
msw_flags |= OFN_NOCHANGEDIR;
}
- if ( m_dialogStyle & wxOVERWRITE_PROMPT )
+ if ( m_dialogStyle & wxFD_OVERWRITE_PROMPT )
{
msw_flags |= OFN_OVERWRITEPROMPT;
}
@@ -573,7 +623,7 @@ int FileDialog::ShowModal()
wxZeroMemory(of);
// Allow Places bar to show on supported platforms
- if ( wxGetOsVersion() == wxWINDOWS_NT )
+ if ( wxGetOsVersion() == wxOS_WINDOWS_NT )
{
of.lStructSize = sizeof(OPENFILENAME);
}
@@ -600,17 +650,17 @@ int FileDialog::ShowModal()
wxChar ch = m_dir[i];
switch ( ch )
{
- case _T('/'):
+ case wxT('/'):
// convert to backslash
- ch = _T('\\');
+ ch = wxT('\\');
// fall through
- case _T('\\'):
+ case wxT('\\'):
while ( i < len - 1 )
{
wxChar chNext = m_dir[i + 1];
- if ( chNext != _T('\\') && chNext != _T('/') )
+ if ( chNext != wxT('\\') && chNext != wxT('/') )
break;
// ignore the next one, unless it is at the start of a UNC path
@@ -636,7 +686,7 @@ int FileDialog::ShowModal()
size_t items = wxParseCommonDialogsFilter(m_wildCard, wildDescriptions, m_FilterGroups);
- wxASSERT_MSG( items > 0 , _T("empty wildcard list") );
+ wxASSERT_MSG( items > 0 , wxT("empty wildcard list") );
wxString filterBuffer;
@@ -675,7 +725,7 @@ int FileDialog::ShowModal()
// user types "foo" and the default extension is ".bar" we should force it
// to check for "foo.bar" existence and not "foo")
wxString defextBuffer; // we need it to be alive until GetSaveFileName()!
- if (m_dialogStyle & wxSAVE && m_dialogStyle & wxOVERWRITE_PROMPT)
+ if (m_dialogStyle & wxFD_SAVE && m_dialogStyle & wxFD_OVERWRITE_PROMPT)
{
const wxChar* extension = filterBuffer;
int maxFilter = (int)(of.nFilterIndex*2L) - 1;
@@ -697,7 +747,7 @@ int FileDialog::ShowModal()
//== Execute FileDialog >>=================================================
- bool success = (m_dialogStyle & wxSAVE ? GetSaveFileName(&of)
+ bool success = (m_dialogStyle & wxFD_SAVE ? GetSaveFileName(&of)
: GetOpenFileName(&of)) != 0;
#ifdef __WXWINCE__
@@ -713,7 +763,7 @@ int FileDialog::ShowModal()
// seems safe).
if ( success &&
(msw_flags & OFN_NOCHANGEDIR) &&
- wxGetOsVersion() == wxWINDOWS_NT )
+ wxGetOsVersion() == wxOS_WINDOWS_NT )
{
wxSetWorkingDirectory(cwdOrig);
}
@@ -725,14 +775,14 @@ int FileDialog::ShowModal()
int oldStructSize = of.lStructSize;
of.lStructSize = oldStructSize - (sizeof(void *) + 2*sizeof(DWORD));
- success = (m_dialogStyle & wxSAVE) ? (GetSaveFileName(&of) != 0)
+ success = (m_dialogStyle & wxFD_SAVE) ? (GetSaveFileName(&of) != 0)
: (GetOpenFileName(&of) != 0);
errCode = CommDlgExtendedError();
if (!success && (errCode == CDERR_STRUCTSIZE))
{
of.lStructSize = oldStructSize + (sizeof(void *) + 2*sizeof(DWORD));
- success = (m_dialogStyle & wxSAVE) ? (GetSaveFileName(&of) != 0)
+ success = (m_dialogStyle & wxFD_SAVE) ? (GetSaveFileName(&of) != 0)
: (GetOpenFileName(&of) != 0);
}
}
@@ -743,7 +793,7 @@ int FileDialog::ShowModal()
{
m_fileNames.Empty();
- if ( ( m_dialogStyle & wxMULTIPLE ) &&
+ if ( ( m_dialogStyle & wxFD_MULTIPLE ) &&
#if defined(OFN_EXPLORER)
( fileNameBuffer[of.nFileOffset-1] == wxT('\0') )
#else
@@ -764,7 +814,7 @@ int FileDialog::ShowModal()
i += wxStrlen(&fileNameBuffer[i]) + 1;
}
#else
- wxStringTokenizer toke(fileNameBuffer, _T(" \t\r\n"));
+ wxStringTokenizer toke(fileNameBuffer, wxT(" \t\r\n"));
m_dir = toke.GetNextToken();
m_fileName = toke.GetNextToken();
m_fileNames.Add(m_fileName);
@@ -774,8 +824,8 @@ int FileDialog::ShowModal()
#endif // OFN_EXPLORER
wxString dir(m_dir);
- if ( m_dir.Last() != _T('\\') )
- dir += _T('\\');
+ if ( m_dir.Last() != wxT('\\') )
+ dir += wxT('\\');
m_path = dir + m_fileName;
m_filterIndex = (int)of.nFilterIndex - 1;
diff --git a/lib-src/FileDialog/win/FileDialogPrivate.h b/lib-src/FileDialog/win/FileDialogPrivate.h
index c166f9c..06be9e9 100644
--- a/lib-src/FileDialog/win/FileDialogPrivate.h
+++ b/lib-src/FileDialog/win/FileDialogPrivate.h
@@ -4,7 +4,7 @@
// Author: Julian Smart
// Modified by: Leland Lucius
// Created: 01/02/97
-// RCS-ID: $Id: FileDialogPrivate.h,v 1.5 2008/05/24 02:57:39 llucius Exp $
+// RCS-ID: $Id: FileDialogPrivate.h,v 1.6 2009/04/11 05:53:09 llucius Exp $
// Copyright: (c) Julian Smart
// Licence: wxWindows licence
//
@@ -41,7 +41,7 @@ class FileDialog: public wxFileDialogBase
virtual void EnableButton(wxString label, fdCallback cb, void *cbdata);
virtual void ClickButton(int index);
- virtual void FilterFiles(HWND hDlg);
+ virtual void FilterFiles(HWND hDlg, bool refresh);
virtual void ParseFilter(int index);
wxString m_buttonlabel;
diff --git a/lib-src/Makefile.in b/lib-src/Makefile.in
index c2f75e8..d127b4d 100644
--- a/lib-src/Makefile.in
+++ b/lib-src/Makefile.in
@@ -49,7 +49,6 @@ libFLAC++.a libFLAC.a: libflac-recursive
# libnyquist
libnyquist-recursive:
- $(MAKE) -C libnyquist/misc
$(MAKE) -C libnyquist
libnyquist.a: libnyquist-recursive
ln -sf libnyquist/libnyquist.a libnyquist.a
@@ -136,6 +135,12 @@ soundtouch-recursive:
libSoundTouch.a: soundtouch-recursive
ln -sf soundtouch/source/SoundTouch/.libs/libSoundTouch.a .
+# TagLib
+taglib-recursive:
+ $(MAKE) -C taglib
+taglib.a: taglib-recursive
+ ln -sf taglib/taglib/.libs/libtag.a taglib.a
+
# PortAudio
portaudio-v19-recursive:
$(MAKE) -C portaudio-v19 lib/libportaudio.la
@@ -146,7 +151,6 @@ portaudio-v19/lib/libportaudio.a: portaudio-v19-recursive
portmixer-recursive:
$(MAKE) -C portmixer
portmixer/libportmixer.a: portmixer-recursive
- ln -sf portmixer/libportmixer.a .
portaudio/pa_unix_oss/portaudio.a:
$(MAKE) -C portaudio/pa_unix_oss
@@ -154,12 +158,6 @@ portaudio/pa_unix_oss/portaudio.a:
portaudio/pa_mac_core/portaudio.a:
$(MAKE) -C portaudio/pa_mac_core
-portmixer/px_unix_oss/portmixer.a:
- $(MAKE) -C portmixer/px_unix_oss PA_VER=$(findstring -v19, at BUILDLIBS@)
-
-portmixer/px_mac_core/portmixer.a:
- $(MAKE) -C portmixer/px_mac_core PA_VER=$(findstring -v19, at BUILDLIBS@)
-
# RTAudio not supported 23/08/2007 R.A.
# librtaudio-recursive:
# $(MAKE) -C rtaudio
@@ -188,8 +186,6 @@ clean:
-$(MAKE) -C portaudio/pa_unix_oss clean
-$(MAKE) -C portaudio/pa_mac_core clean
-$(MAKE) -C portmixer clean
- -$(MAKE) -C portmixer/px_unix_oss clean
- -$(MAKE) -C portmixer/px_mac_core clean
-$(MAKE) -C sbsms clean
-$(MAKE) -C soundtouch clean
-$(MAKE) -C twolame clean
@@ -216,8 +212,6 @@ distclean:
-$(MAKE) -C portaudio/pa_unix_oss distclean
-$(MAKE) -C portaudio/pa_mac_core distclean
-$(MAKE) -C portmixer distclean
- -$(MAKE) -C portmixer/px_unix_oss distclean
- -$(MAKE) -C portmixer/px_mac_core distclean
-$(MAKE) -C sbsms distclean
-$(MAKE) -C soundtouch distclean
-$(MAKE) -C twolame distclean
diff --git a/lib-src/audacity-patches.txt b/lib-src/audacity-patches.txt
index e5a7a81..96343ca 100644
--- a/lib-src/audacity-patches.txt
+++ b/lib-src/audacity-patches.txt
@@ -91,35 +91,36 @@ libsamplerate
Erik de Castro Lopo's high quality sample rate conversion library. Not used
in release builds, could probably be removed altogther except for comparision
purposes.
-Version in Audacity CVS: 0.1.2
-Patches: ??
+Version in Audacity CVS: 0.1.7
+Patches: endian.m4, lrint.m4, llrint.m4, lrintf.m4, clip_mode.m4 copied from
+ libsndfile's M4/.
+ signal.m4 created out of the tail of acinclude.m4 with the remaining
+ necessary macro
AM_MAINTAINER_MODE has been added to configure.ac to disable autotools rebuilds
by default
-Upstream Version: 0.1.2
+Upstream Version: 0.1.7
libsndfile
----------
Erik de Castro Lopo's uncompressed audio file I/O library. Core and essential
to audacity.
-Version in Audacity CVS: 1.0.17
-Patches: wav-bext.patch: backport patch from 1.0.18 of a patch to fix reading
-bext chunks in WAV files
- update-autotools.patch: backport patch from 1.0.18pre25 to use an M4
- directory for m4 macro files, and other changes so that the source
- tree will take libtoolise --copy --force; aclocal -I M4 --install;
- autoreconf and generate a working build system on any reasonably
- sensible host.
+Version in Audacity CVS: 1.0.18
+Patches: macro-quoting.patch: quote arguments to AC_DEFUN such that
+ autoreconf works with autorecnf 2.63. Has been accepted upstream
+ portability.patch: add portability macros / pre-processor to
+ enable build on non-standard platforms. Not yet accepted upstream.
AM_MAINTAINER_MODE has been added to configure.ac to disable autotools rebuilds
by default
-Upstream Version: 1.0.17
-TODO: upgrade to 1.0.18 when it comes out in order to drop the bext patch
+Upstream Version: 1.0.18
libvamp
-------
Library to load and use VAMP plug-ins. http://www.vamp-plugins.org/
Version in Audacity CVS: 2.0
Patches: optional-progs.patch: Make building the Vamp host (and so the
-dependecy on libsndfile) optional rather than mandatory
+dependecy on libsndfile) optional rather than mandatory. Accepted upstream.
+ distclean.patch: ensure that distclean actually works and takes away
+ auto* droppings. Accepted upstream.
Upstream Version: 2.0
libvorbis
@@ -158,12 +159,18 @@ portaudio-v19
-------------
http://portaudio.com/
cross-platform audio I/O library version 19, used for 1.3.2 onwards releases
-Version in audacity cvs: 31st December 2008 SVN snapshot (r1396)
+Version in audacity cvs: 1st July 2009 SVN snapshot (r1416)
Patches:
../portmixer/portaudio.patch add features needed to make portmixer work.
Integration by upstream in progress. Will need updating as upstream
portaudio moves
+portaudio/libtool22.patch Patch from Gentoo to ensure that static libraries
+are always built, not shared ones, otherwise the assumptions elsewhere in the
+build system break. Not suitable for upstream, what is needed is more
+powerfull autoconf features to pass the right options to portaudio's configure
+script, which suffers from the broken-ness of autoconf's subdirectory support
+
portsmf
-------
http://portmedia.sourceforge.net/
@@ -175,8 +182,12 @@ portsmf-includes.patch add include of <cstring> needed to compile with recent
portsmf-string-const.patch Add string const qualifiers as needed
local-macros.patch Add all the necessary 3rd party m4 macros into autotools
/m4/ and supporting changes.
+unsigned-const-casts.patch Build fix for Solaris compiler, adds casts to
+ unsigned integer literals.
AM_MAINTAINER_MODE has been added to configure.ac to disable autotools rebuilds
by default
+All patches have been added to upstream patch tracker at
+https://sourceforge.net/tracker2/?group_id=196750&atid=958711
portburn
@@ -215,6 +226,11 @@ Misc fixes to configure.in/Makefile.am for autoconf macros and libtool. More
files added to m4/ directory by libtoolizing commited to CVS.
AM_MAINTAINER_MODE has been added to configure.ac to disable autotools rebuilds
by default
+dont-mangle-cflags.patch patch to stop sed-ing the CXXFLAGS and achieve the
+same ends by better means, replacing a hacked version from Gentoo. Patch
+linked to from upstream tracker at
+https://sourceforge.net/tracker/index.php?func=detail&aid=2561247&group_id=177794&atid=882654
+because attachements there don't seem to work.
slv2
-------
@@ -243,6 +259,21 @@ Argument ([-Wall foreign]) added to AM_INIT_AUTOMAKE because autoreconf fails
otherwise
Upstream Version: 1.3.1
+taglib
+------
+http://developer.kde.org/~wheeler/taglib.html
+svn co svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib
+Audio Meta-Data Library
+Version in audacity cvs: svn revision 924567 (post 1.5)
+Patches: none
+
+If replacing via svn, you need to do the following to generate the configure
+scripts (from within the base taglib directory):
+ sh admin/cvs.sh dist
+
+And remove the .svn directories (from within the base taglib direcotry):
+ find -d . -path \*/.svn\* -exec rm -rf \{\} \;
+
twolame
-------
http://www.twolame.org/
@@ -280,7 +311,9 @@ run find . -name '*.orig' -delete and find . -name '*~' -delete. To remove
find . -wholename '*/.svn/*' -delete and then find . -name '.svn' -delete
* run autoreconf if we have modified configure.in or configure.ac
-* run libtoolize --copy --force to update ltmain.sh, config.sub, config.guess
+* If the package uses libtool, run libtoolize --copy --force to update
+ ltmain.sh, config.sub, config.guess. If not, update config.sub,
+ config.guess from /usr/share/gnuconfig/
By doing it this way we have already updated the mtime on all files, so we
don't need to do a recusive touch.
diff --git a/lib-src/ffmpeg/libavcodec/avcodec.h b/lib-src/ffmpeg/libavcodec/avcodec.h
index dfd7264..8eb7c3c 100644
--- a/lib-src/ffmpeg/libavcodec/avcodec.h
+++ b/lib-src/ffmpeg/libavcodec/avcodec.h
@@ -22,15 +22,15 @@
#define AVCODEC_AVCODEC_H
/**
- * @file avcodec.h
+ * @file libavcodec/avcodec.h
* external API header
*/
-
+#include <errno.h>
#include "libavutil/avutil.h"
#define LIBAVCODEC_VERSION_MAJOR 52
-#define LIBAVCODEC_VERSION_MINOR 0
+#define LIBAVCODEC_VERSION_MINOR 32
#define LIBAVCODEC_VERSION_MICRO 0
#define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
@@ -189,6 +189,15 @@ enum CodecID {
CODEC_ID_CMV,
CODEC_ID_MOTIONPIXELS,
CODEC_ID_TGV,
+ CODEC_ID_TGQ,
+ CODEC_ID_TQI,
+ CODEC_ID_AURA,
+ CODEC_ID_AURA2,
+ CODEC_ID_V210X,
+ CODEC_ID_TMV,
+ CODEC_ID_V210,
+ CODEC_ID_DPX,
+ CODEC_ID_MAD,
/* various PCM "codecs" */
CODEC_ID_PCM_S16LE= 0x10000,
@@ -244,6 +253,7 @@ enum CodecID {
CODEC_ID_ADPCM_IMA_EA_EACS,
CODEC_ID_ADPCM_EA_XAS,
CODEC_ID_ADPCM_EA_MAXIS_XA,
+ CODEC_ID_ADPCM_IMA_ISS,
/* AMR */
CODEC_ID_AMR_NB= 0x12000,
@@ -305,6 +315,10 @@ enum CodecID {
CODEC_ID_ATRAC3P,
CODEC_ID_EAC3,
CODEC_ID_SIPR,
+ CODEC_ID_MP1,
+ CODEC_ID_TWINVQ,
+ CODEC_ID_TRUEHD,
+ CODEC_ID_MP4ALS,
/* subtitle codecs */
CODEC_ID_DVD_SUBTITLE= 0x17000,
@@ -346,6 +360,45 @@ enum SampleFormat {
SAMPLE_FMT_NB ///< Number of sample formats. DO NOT USE if dynamically linking to libavcodec
};
+/* Audio channel masks */
+#define CH_FRONT_LEFT 0x00000001
+#define CH_FRONT_RIGHT 0x00000002
+#define CH_FRONT_CENTER 0x00000004
+#define CH_LOW_FREQUENCY 0x00000008
+#define CH_BACK_LEFT 0x00000010
+#define CH_BACK_RIGHT 0x00000020
+#define CH_FRONT_LEFT_OF_CENTER 0x00000040
+#define CH_FRONT_RIGHT_OF_CENTER 0x00000080
+#define CH_BACK_CENTER 0x00000100
+#define CH_SIDE_LEFT 0x00000200
+#define CH_SIDE_RIGHT 0x00000400
+#define CH_TOP_CENTER 0x00000800
+#define CH_TOP_FRONT_LEFT 0x00001000
+#define CH_TOP_FRONT_CENTER 0x00002000
+#define CH_TOP_FRONT_RIGHT 0x00004000
+#define CH_TOP_BACK_LEFT 0x00008000
+#define CH_TOP_BACK_CENTER 0x00010000
+#define CH_TOP_BACK_RIGHT 0x00020000
+#define CH_STEREO_LEFT 0x20000000 ///< Stereo downmix.
+#define CH_STEREO_RIGHT 0x40000000 ///< See CH_STEREO_LEFT.
+
+/* Audio channel convenience macros */
+#define CH_LAYOUT_MONO (CH_FRONT_CENTER)
+#define CH_LAYOUT_STEREO (CH_FRONT_LEFT|CH_FRONT_RIGHT)
+#define CH_LAYOUT_2_1 (CH_LAYOUT_STEREO|CH_BACK_CENTER)
+#define CH_LAYOUT_SURROUND (CH_LAYOUT_STEREO|CH_FRONT_CENTER)
+#define CH_LAYOUT_4POINT0 (CH_LAYOUT_SURROUND|CH_BACK_CENTER)
+#define CH_LAYOUT_2_2 (CH_LAYOUT_STEREO|CH_SIDE_LEFT|CH_SIDE_RIGHT)
+#define CH_LAYOUT_QUAD (CH_LAYOUT_STEREO|CH_BACK_LEFT|CH_BACK_RIGHT)
+#define CH_LAYOUT_5POINT0 (CH_LAYOUT_SURROUND|CH_SIDE_LEFT|CH_SIDE_RIGHT)
+#define CH_LAYOUT_5POINT1 (CH_LAYOUT_5POINT0|CH_LOW_FREQUENCY)
+#define CH_LAYOUT_5POINT0_BACK (CH_LAYOUT_SURROUND|CH_BACK_LEFT|CH_BACK_RIGHT)
+#define CH_LAYOUT_5POINT1_BACK (CH_LAYOUT_5POINT0_BACK|CH_LOW_FREQUENCY)
+#define CH_LAYOUT_7POINT1 (CH_LAYOUT_5POINT1|CH_BACK_LEFT|CH_BACK_RIGHT)
+#define CH_LAYOUT_7POINT1_WIDE (CH_LAYOUT_5POINT1_BACK|\
+ CH_FRONT_LEFT_OF_CENTER|CH_FRONT_RIGHT_OF_CENTER)
+#define CH_LAYOUT_STEREO_DOWNMIX (CH_STEREO_LEFT|CH_STEREO_RIGHT)
+
/* in bytes */
#define AVCODEC_MAX_AUDIO_FRAME_SIZE 192000 // 1 second of 48khz 32bit audio
@@ -364,6 +417,7 @@ enum SampleFormat {
*/
#define FF_MIN_BUFFER_SIZE 16384
+
/**
* motion estimation type.
*/
@@ -391,6 +445,59 @@ enum AVDiscard{
AVDISCARD_ALL = 48, ///< discard all
};
+enum AVColorPrimaries{
+ AVCOL_PRI_BT709 =1, ///< also ITU-R BT1361 / IEC 61966-2-4 / SMPTE RP177 Annex B
+ AVCOL_PRI_UNSPECIFIED=2,
+ AVCOL_PRI_BT470M =4,
+ AVCOL_PRI_BT470BG =5, ///< also ITU-R BT601-6 625 / ITU-R BT1358 625 / ITU-R BT1700 625 PAL & SECAM
+ AVCOL_PRI_SMPTE170M =6, ///< also ITU-R BT601-6 525 / ITU-R BT1358 525 / ITU-R BT1700 NTSC
+ AVCOL_PRI_SMPTE240M =7, ///< functionally identical to above
+ AVCOL_PRI_FILM =8,
+ AVCOL_PRI_NB , ///< Not part of ABI
+};
+
+enum AVColorTransferCharacteristic{
+ AVCOL_TRC_BT709 =1, ///< also ITU-R BT1361
+ AVCOL_TRC_UNSPECIFIED=2,
+ AVCOL_TRC_GAMMA22 =4, ///< also ITU-R BT470M / ITU-R BT1700 625 PAL & SECAM
+ AVCOL_TRC_GAMMA28 =5, ///< also ITU-R BT470BG
+ AVCOL_TRC_NB , ///< Not part of ABI
+};
+
+enum AVColorSpace{
+ AVCOL_SPC_RGB =0,
+ AVCOL_SPC_BT709 =1, ///< also ITU-R BT1361 / IEC 61966-2-4 xvYCC709 / SMPTE RP177 Annex B
+ AVCOL_SPC_UNSPECIFIED=2,
+ AVCOL_SPC_FCC =4,
+ AVCOL_SPC_BT470BG =5, ///< also ITU-R BT601-6 625 / ITU-R BT1358 625 / ITU-R BT1700 625 PAL & SECAM / IEC 61966-2-4 xvYCC601
+ AVCOL_SPC_SMPTE170M =6, ///< also ITU-R BT601-6 525 / ITU-R BT1358 525 / ITU-R BT1700 NTSC / functionally identical to above
+ AVCOL_SPC_SMPTE240M =7,
+ AVCOL_SPC_NB , ///< Not part of ABI
+};
+
+enum AVColorRange{
+ AVCOL_RANGE_UNSPECIFIED=0,
+ AVCOL_RANGE_MPEG =1, ///< the normal 219*2^(n-8) "MPEG" YUV ranges
+ AVCOL_RANGE_JPEG =2, ///< the normal 2^n-1 "JPEG" YUV ranges
+ AVCOL_RANGE_NB , ///< Not part of ABI
+};
+
+/**
+ * X X 3 4 X X are luma samples,
+ * 1 2 1-6 are possible chroma positions
+ * X X 5 6 X 0 is undefined/unknown position
+ */
+enum AVChromaLocation{
+ AVCHROMA_LOC_UNSPECIFIED=0,
+ AVCHROMA_LOC_LEFT =1, ///< mpeg2/4, h264 default
+ AVCHROMA_LOC_CENTER =2, ///< mpeg1, jpeg, h263
+ AVCHROMA_LOC_TOPLEFT =3, ///< DV
+ AVCHROMA_LOC_TOP =4,
+ AVCHROMA_LOC_BOTTOMLEFT =5,
+ AVCHROMA_LOC_BOTTOM =6,
+ AVCHROMA_LOC_NB , ///< Not part of ABI
+};
+
typedef struct RcOverride{
int start_frame;
int end_frame;
@@ -490,6 +597,10 @@ typedef struct RcOverride{
* This can be used to prevent truncation of the last audio samples.
*/
#define CODEC_CAP_SMALL_LAST_FRAME 0x0040
+/**
+ * Codec can export data for HW decoding (VDPAU).
+ */
+#define CODEC_CAP_HWACCEL_VDPAU 0x0080
//The following defines may change, don't expect compatibility if you use them.
#define MB_TYPE_INTRA4x4 0x0001
@@ -614,6 +725,7 @@ typedef struct AVPanScan{
* is this picture used as reference\
* The values for this are the same as the MpegEncContext.picture_structure\
* variable, that is 1->top field, 2->bottom field, 3->frame/both fields.\
+ * Set to 4 for delayed, non-reference frames.\
* - encoding: unused\
* - decoding: Set by libavcodec. (before get_buffer() call)).\
*/\
@@ -761,6 +873,13 @@ typedef struct AVPanScan{
* - decoding: Read by user.\
*/\
int64_t reordered_opaque;\
+\
+ /**\
+ * hardware accelerator private data (FFmpeg allocated)\
+ * - encoding: unused\
+ * - decoding: Set by libavcodec\
+ */\
+ void *hwaccel_picture_private;\
#define FF_QSCALE_TYPE_MPEG1 0
@@ -786,6 +905,58 @@ typedef struct AVPanScan{
#define FF_BUFFER_HINTS_PRESERVE 0x04 // User must not alter buffer content.
#define FF_BUFFER_HINTS_REUSABLE 0x08 // Codec will reuse the buffer (update).
+typedef struct AVPacket {
+ /**
+ * Presentation timestamp in AVStream->time_base units; the time at which
+ * the decompressed packet will be presented to the user.
+ * Can be AV_NOPTS_VALUE if it is not stored in the file.
+ * pts MUST be larger or equal to dts as presentation cannot happen before
+ * decompression, unless one wants to view hex dumps. Some formats misuse
+ * the terms dts and pts/cts to mean something different. Such timestamps
+ * must be converted to true pts/dts before they are stored in AVPacket.
+ */
+ int64_t pts;
+ /**
+ * Decompression timestamp in AVStream->time_base units; the time at which
+ * the packet is decompressed.
+ * Can be AV_NOPTS_VALUE if it is not stored in the file.
+ */
+ int64_t dts;
+ uint8_t *data;
+ int size;
+ int stream_index;
+ int flags;
+ /**
+ * Duration of this packet in AVStream->time_base units, 0 if unknown.
+ * Equals next_pts - this_pts in presentation order.
+ */
+ int duration;
+ void (*destruct)(struct AVPacket *);
+ void *priv;
+ int64_t pos; ///< byte position in stream, -1 if unknown
+
+ /**
+ * Time difference in AVStream->time_base units from the pts of this
+ * packet to the point at which the output from the decoder has converged
+ * independent from the availability of previous frames. That is, the
+ * frames are virtually identical no matter if decoding started from
+ * the very first frame or from this keyframe.
+ * Is AV_NOPTS_VALUE if unknown.
+ * This field is not the display duration of the current packet.
+ *
+ * The purpose of this field is to allow seeking in streams that have no
+ * keyframes in the conventional sense. It corresponds to the
+ * recovery point SEI in H.264 and match_time_delta in NUT. It is also
+ * essential for some types of subtitle streams to ensure that all
+ * subtitles are correctly displayed after seeking.
+ */
+ int64_t convergence_duration;
+} AVPacket;
+#define AV_PKT_FLAG_KEY 0x0001
+#if LIBAVCODEC_VERSION_MAJOR < 53
+#define PKT_FLAG_KEY AV_PKT_FLAG_KEY
+#endif
+
/**
* Audio Video Frame.
* New fields can be added to the end of FF_COMMON_FRAME with minor version
@@ -916,6 +1087,13 @@ typedef struct AVCodecContext {
* decoder to draw a horizontal band. It improves cache usage. Not
* all codecs can do that. You must check the codec capabilities
* beforehand.
+ * The function is also used by hardware acceleration APIs.
+ * It is called at least once during frame decoding to pass
+ * the data needed for hardware render.
+ * In that mode instead of pixel data, AVFrame points to
+ * a structure specific to the acceleration API. The application
+ * reads the structure and can change some fields to indicate progress
+ * or mark state.
* - encoding: unused
* - decoding: Set by user.
* @param height the height of the slice
@@ -936,7 +1114,7 @@ typedef struct AVCodecContext {
* - encoding: Set by user.
* - decoding: Set by libavcodec.
*/
- enum SampleFormat sample_fmt; ///< sample format, currently unused
+ enum SampleFormat sample_fmt; ///< sample format
/* The following data should not be initialized. */
/**
@@ -944,7 +1122,9 @@ typedef struct AVCodecContext {
*/
int frame_size;
int frame_number; ///< audio or video frame number
+#if LIBAVCODEC_VERSION_MAJOR < 53
int real_pict_num; ///< Returns the real picture number of previous encoded frame.
+#endif
/**
* Number of frames the decoded output will be delayed relative to
@@ -1153,6 +1333,9 @@ typedef struct AVCodecContext {
* If pic.reference is set then the frame will be read later by libavcodec.
* avcodec_align_dimensions() should be used to find the required width and
* height, as they normally need to be rounded up to the next multiple of 16.
+ * if CODEC_CAP_DR1 is not set then get_buffer() must call
+ * avcodec_default_get_buffer() instead of providing buffers allocated by
+ * some other means.
* - encoding: unused
* - decoding: Set by libavcodec., user can override.
*/
@@ -1168,7 +1351,8 @@ typedef struct AVCodecContext {
void (*release_buffer)(struct AVCodecContext *c, AVFrame *pic);
/**
- * If 1 the stream has a 1 frame delay during decoding.
+ * Size of the frame reordering buffer in the decoder.
+ * For MPEG-2 it is 1 IPB or 0 low delay IP.
* - encoding: Set by libavcodec.
* - decoding: Set by libavcodec.
*/
@@ -1353,6 +1537,9 @@ typedef struct AVCodecContext {
#define FF_IDCT_SIMPLEVIS 18
#define FF_IDCT_WMV2 19
#define FF_IDCT_FAAN 20
+#define FF_IDCT_EA 21
+#define FF_IDCT_SIMPLENEON 22
+#define FF_IDCT_SIMPLEALPHA 23
/**
* slice count
@@ -1389,13 +1576,19 @@ typedef struct AVCodecContext {
/* lower 16 bits - CPU features */
#define FF_MM_MMX 0x0001 ///< standard MMX
#define FF_MM_3DNOW 0x0004 ///< AMD 3DNOW
+#if LIBAVCODEC_VERSION_MAJOR < 53
#define FF_MM_MMXEXT 0x0002 ///< SSE integer functions or AMD MMX ext
+#endif
+#define FF_MM_MMX2 0x0002 ///< SSE integer functions or AMD MMX ext
#define FF_MM_SSE 0x0008 ///< SSE functions
#define FF_MM_SSE2 0x0010 ///< PIV SSE2 functions
#define FF_MM_3DNOWEXT 0x0020 ///< AMD 3DNowExt
#define FF_MM_SSE3 0x0040 ///< Prescott SSE3 functions
#define FF_MM_SSSE3 0x0080 ///< Conroe SSSE3 functions
+#define FF_MM_SSE4 0x0100 ///< Penryn SSE4.1 functions
+#define FF_MM_SSE42 0x0200 ///< Nehalem SSE4.2 functions
#define FF_MM_IWMMXT 0x0100 ///< XScale IWMMXT
+#define FF_MM_ALTIVEC 0x0001 ///< standard AltiVec
/**
* bits per sample/pixel from the demuxer (needed for huffyuv).
@@ -1771,6 +1964,9 @@ typedef struct AVCodecContext {
* libavcodec will pass previous buffer in pic, function should return
* same buffer or new buffer with old frame "painted" into it.
* If pic.data[0] == NULL must behave like get_buffer().
+ * if CODEC_CAP_DR1 is not set then reget_buffer() must call
+ * avcodec_default_reget_buffer() instead of providing buffers allocated by
+ * some other means.
* - encoding: unused
* - decoding: Set by libavcodec., user can override
*/
@@ -1838,7 +2034,7 @@ typedef struct AVCodecContext {
* - encoding: Set by libavcodec, user can override.
* - decoding: Set by libavcodec, user can override.
*/
- int (*execute)(struct AVCodecContext *c, int (*func)(struct AVCodecContext *c2, void *arg), void **arg2, int *ret, int count);
+ int (*execute)(struct AVCodecContext *c, int (*func)(struct AVCodecContext *c2, void *arg), void *arg2, int *ret, int count, int size);
/**
* thread opaque
@@ -2043,7 +2239,7 @@ typedef struct AVCodecContext {
/**
* number of reference frames
* - encoding: Set by user.
- * - decoding: unused
+ * - decoding: Set by lavc.
*/
int refs;
@@ -2198,12 +2394,15 @@ typedef struct AVCodecContext {
*/
int64_t timecode_frame_start;
+#if LIBAVCODEC_VERSION_MAJOR < 53
/**
* Decoder should decode to this many channels if it can (0 for default)
* - encoding: unused
* - decoding: Set by user.
+ * @deprecated Deprecated in favor of request_channel_layout.
*/
int request_channels;
+#endif
/**
* Percentage of dynamic range compression to be applied by the decoder.
@@ -2228,6 +2427,97 @@ typedef struct AVCodecContext {
* - decoding: set by libavcodec.
*/
int bits_per_raw_sample;
+
+ /**
+ * Audio channel layout.
+ * - encoding: set by user.
+ * - decoding: set by libavcodec.
+ */
+ int64_t channel_layout;
+
+ /**
+ * Request decoder to use this channel layout if it can (0 for default)
+ * - encoding: unused
+ * - decoding: Set by user.
+ */
+ int64_t request_channel_layout;
+
+ /**
+ * Ratecontrol attempt to use, at maximum, <value> of what can be used without an underflow.
+ * - encoding: Set by user.
+ * - decoding: unused.
+ */
+ float rc_max_available_vbv_use;
+
+ /**
+ * Ratecontrol attempt to use, at least, <value> times the amount needed to prevent a vbv overflow.
+ * - encoding: Set by user.
+ * - decoding: unused.
+ */
+ float rc_min_vbv_overflow_use;
+
+ /**
+ * Hardware accelerator in use
+ * - encoding: unused.
+ * - decoding: Set by libavcodec
+ */
+ struct AVHWAccel *hwaccel;
+
+ /**
+ * For some codecs, the time base is closer to the field rate than the frame rate.
+ * Most notably, H.264 and MPEG-2 specify time_base as half of frame duration
+ * if no telecine is used ...
+ *
+ * Set to time_base ticks per frame. Default 1, e.g., H.264/MPEG-2 set it to 2.
+ */
+ int ticks_per_frame;
+
+ /**
+ * Hardware accelerator context.
+ * For some hardware accelerators, a global context needs to be
+ * provided by the user. In that case, this holds display-dependent
+ * data FFmpeg cannot instantiate itself. Please refer to the
+ * FFmpeg HW accelerator documentation to know how to fill this
+ * is. e.g. for VA API, this is a struct vaapi_context.
+ * - encoding: unused
+ * - decoding: Set by user
+ */
+ void *hwaccel_context;
+
+ /**
+ * Chromaticity coordinates of the source primaries.
+ * - encoding: Set by user
+ * - decoding: Set by libavcodec
+ */
+ enum AVColorPrimaries color_primaries;
+
+ /**
+ * Color Transfer Characteristic.
+ * - encoding: Set by user
+ * - decoding: Set by libavcodec
+ */
+ enum AVColorTransferCharacteristic color_trc;
+
+ /**
+ * YUV colorspace type.
+ * - encoding: Set by user
+ * - decoding: Set by libavcodec
+ */
+ enum AVColorSpace colorspace;
+
+ /**
+ * MPEG vs JPEG YUV range.
+ * - encoding: Set by user
+ * - decoding: Set by libavcodec
+ */
+ enum AVColorRange color_range;
+
+ /**
+ * This defines the location of chroma samples.
+ * - encoding: Set by user
+ * - decoding: Set by libavcodec
+ */
+ enum AVChromaLocation chroma_sample_location;
} AVCodecContext;
/**
@@ -2247,8 +2537,7 @@ typedef struct AVCodec {
int (*init)(AVCodecContext *);
int (*encode)(AVCodecContext *, uint8_t *buf, int buf_size, void *data);
int (*close)(AVCodecContext *);
- int (*decode)(AVCodecContext *, void *outdata, int *outdata_size,
- const uint8_t *buf, int buf_size);
+ int (*decode)(AVCodecContext *, void *outdata, int *outdata_size, AVPacket *avpkt);
/**
* Codec capabilities.
* see CODEC_CAP_*
@@ -2263,15 +2552,106 @@ typedef struct AVCodec {
const AVRational *supported_framerates; ///< array of supported framerates, or NULL if any, array is terminated by {0,0}
const enum PixelFormat *pix_fmts; ///< array of supported pixel formats, or NULL if unknown, array is terminated by -1
/**
- * Descriptive name for the codec, meant to be more human readable than \p name.
- * You \e should use the NULL_IF_CONFIG_SMALL() macro to define it.
+ * Descriptive name for the codec, meant to be more human readable than name.
+ * You should use the NULL_IF_CONFIG_SMALL() macro to define it.
*/
const char *long_name;
const int *supported_samplerates; ///< array of supported audio samplerates, or NULL if unknown, array is terminated by 0
const enum SampleFormat *sample_fmts; ///< array of supported sample formats, or NULL if unknown, array is terminated by -1
+ const int64_t *channel_layouts; ///< array of support channel layouts, or NULL if unknown. array is terminated by 0
} AVCodec;
/**
+ * AVHWAccel.
+ */
+typedef struct AVHWAccel {
+ /**
+ * Name of the hardware accelerated codec.
+ * The name is globally unique among encoders and among decoders (but an
+ * encoder and a decoder can share the same name).
+ */
+ const char *name;
+
+ /**
+ * Type of codec implemented by the hardware accelerator.
+ *
+ * See CODEC_TYPE_xxx
+ */
+ enum CodecType type;
+
+ /**
+ * Codec implemented by the hardware accelerator.
+ *
+ * See CODEC_ID_xxx
+ */
+ enum CodecID id;
+
+ /**
+ * Supported pixel format.
+ *
+ * Only hardware accelerated formats are supported here.
+ */
+ enum PixelFormat pix_fmt;
+
+ /**
+ * Hardware accelerated codec capabilities.
+ * see FF_HWACCEL_CODEC_CAP_*
+ */
+ int capabilities;
+
+ struct AVHWAccel *next;
+
+ /**
+ * Called at the beginning of each frame or field picture.
+ *
+ * Meaningful frame information (codec specific) is guaranteed to
+ * be parsed at this point. This function is mandatory.
+ *
+ * Note that buf can be NULL along with buf_size set to 0.
+ * Otherwise, this means the whole frame is available at this point.
+ *
+ * @param avctx the codec context
+ * @param buf the frame data buffer base
+ * @param buf_size the size of the frame in bytes
+ * @return zero if successful, a negative value otherwise
+ */
+ int (*start_frame)(AVCodecContext *avctx, const uint8_t *buf, uint32_t buf_size);
+
+ /**
+ * Callback for each slice.
+ *
+ * Meaningful slice information (codec specific) is guaranteed to
+ * be parsed at this point. This function is mandatory.
+ *
+ * @param avctx the codec context
+ * @param buf the slice data buffer base
+ * @param buf_size the size of the slice in bytes
+ * @return zero if successful, a negative value otherwise
+ */
+ int (*decode_slice)(AVCodecContext *avctx, const uint8_t *buf, uint32_t buf_size);
+
+ /**
+ * Called at the end of each frame or field picture.
+ *
+ * The whole picture is parsed at this point and can now be sent
+ * to the hardware accelerator. This function is mandatory.
+ *
+ * @param avctx the codec context
+ * @return zero if successful, a negative value otherwise
+ */
+ int (*end_frame)(AVCodecContext *avctx);
+
+ /**
+ * Size of HW accelerator private data.
+ *
+ * Private data is allocated with av_mallocz() before
+ * AVCodecContext.get_buffer() and deallocated after
+ * AVCodecContext.release_buffer().
+ */
+ int priv_data_size;
+} AVHWAccel;
+
+/**
* four components are given, that's all.
* the last component is alpha
*/
@@ -2280,6 +2660,7 @@ typedef struct AVPicture {
int linesize[4]; ///< number of bytes per line
} AVPicture;
+#if LIBAVCODEC_VERSION_MAJOR < 53
/**
* AVPaletteControl
* This structure defines a method for communicating palette changes
@@ -2303,26 +2684,108 @@ typedef struct AVPaletteControl {
unsigned int palette[AVPALETTE_COUNT];
} AVPaletteControl attribute_deprecated;
+#endif
+
+enum AVSubtitleType {
+ SUBTITLE_NONE,
+
+ SUBTITLE_BITMAP, ///< A bitmap, pict will be set
+
+ /**
+ * Plain text, the text field must be set by the decoder and is
+ * authoritative. ass and pict fields may contain approximations.
+ */
+ SUBTITLE_TEXT,
+
+ /**
+ * Formatted text, the ass field must be set by the decoder and is
+ * authoritative. pict and text fields may contain approximations.
+ */
+ SUBTITLE_ASS,
+};
typedef struct AVSubtitleRect {
- uint16_t x;
- uint16_t y;
- uint16_t w;
- uint16_t h;
- uint16_t nb_colors;
- int linesize;
- uint32_t *rgba_palette;
- uint8_t *bitmap;
+ int x; ///< top left corner of pict, undefined when pict is not set
+ int y; ///< top left corner of pict, undefined when pict is not set
+ int w; ///< width of pict, undefined when pict is not set
+ int h; ///< height of pict, undefined when pict is not set
+ int nb_colors; ///< number of colors in pict, undefined when pict is not set
+
+ /**
+ * data+linesize for the bitmap of this subtitle.
+ * can be set for text/ass as well once they where rendered
+ */
+ AVPicture pict;
+ enum AVSubtitleType type;
+
+ char *text; ///< 0 terminated plain UTF-8 text
+
+ /**
+ * 0 terminated ASS/SSA compatible event line.
+ * The pressentation of this is unaffected by the other values in this
+ * struct.
+ */
+ char *ass;
} AVSubtitleRect;
typedef struct AVSubtitle {
uint16_t format; /* 0 = graphics */
uint32_t start_display_time; /* relative to packet pts, in ms */
uint32_t end_display_time; /* relative to packet pts, in ms */
- uint32_t num_rects;
- AVSubtitleRect *rects;
+ unsigned num_rects;
+ AVSubtitleRect **rects;
+ int64_t pts; ///< Same as packet pts, in AV_TIME_BASE
} AVSubtitle;
+/* packet functions */
+
+/**
+ * @deprecated use NULL instead
+ */
+attribute_deprecated void av_destruct_packet_nofree(AVPacket *pkt);
+
+/**
+ * Default packet destructor.
+ */
+void av_destruct_packet(AVPacket *pkt);
+
+/**
+ * Initialize optional fields of a packet with default values.
+ *
+ * @param pkt packet
+ */
+void av_init_packet(AVPacket *pkt);
+
+/**
+ * Allocate the payload of a packet and initialize its fields with
+ * default values.
+ *
+ * @param pkt packet
+ * @param size wanted payload size
+ * @return 0 if OK, AVERROR_xxx otherwise
+ */
+int av_new_packet(AVPacket *pkt, int size);
+
+/**
+ * Reduce packet size, correctly zeroing padding
+ *
+ * @param pkt packet
+ * @param size new size
+ */
+void av_shrink_packet(AVPacket *pkt, int size);
+
+/**
+ * @warning This is a hack - the packet memory allocation stuff is broken. The
+ * packet is allocated if it was not really allocated.
+ */
+int av_dup_packet(AVPacket *pkt);
+
+/**
+ * Free a packet.
+ *
+ * @param pkt packet to free
+ */
+void av_free_packet(AVPacket *pkt);
/* resample.c */
@@ -2331,13 +2794,75 @@ struct AVResampleContext;
typedef struct ReSampleContext ReSampleContext;
-ReSampleContext *audio_resample_init(int output_channels, int input_channels,
- int output_rate, int input_rate);
+#if LIBAVCODEC_VERSION_MAJOR < 53
+/**
+ * @deprecated Use av_audio_resample_init() instead.
+ */
+attribute_deprecated ReSampleContext *audio_resample_init(int output_channels, int input_channels,
+ int output_rate, int input_rate);
+#endif
+/**
+ * Initializes audio resampling context
+ *
+ * @param output_channels number of output channels
+ * @param input_channels number of input channels
+ * @param output_rate output sample rate
+ * @param input_rate input sample rate
+ * @param sample_fmt_out requested output sample format
+ * @param sample_fmt_in input sample format
+ * @param filter_length length of each FIR filter in the filterbank relative to the cutoff freq
+ * @param log2_phase_count log2 of the number of entries in the polyphase filterbank
+ * @param linear If 1 then the used FIR filter will be linearly interpolated
+ between the 2 closest, if 0 the closest will be used
+ * @param cutoff cutoff frequency, 1.0 corresponds to half the output sampling rate
+ * @return allocated ReSampleContext, NULL if error occured
+ */
+ReSampleContext *av_audio_resample_init(int output_channels, int input_channels,
+ int output_rate, int input_rate,
+ enum SampleFormat sample_fmt_out,
+ enum SampleFormat sample_fmt_in,
+ int filter_length, int log2_phase_count,
+ int linear, double cutoff);
+
int audio_resample(ReSampleContext *s, short *output, short *input, int nb_samples);
void audio_resample_close(ReSampleContext *s);
+
+/**
+ * Initializes an audio resampler.
+ * Note, if either rate is not an integer then simply scale both rates up so they are.
+ * @param filter_length length of each FIR filter in the filterbank relative to the cutoff freq
+ * @param log2_phase_count log2 of the number of entries in the polyphase filterbank
+ * @param linear If 1 then the used FIR filter will be linearly interpolated
+ between the 2 closest, if 0 the closest will be used
+ * @param cutoff cutoff frequency, 1.0 corresponds to half the output sampling rate
+ */
struct AVResampleContext *av_resample_init(int out_rate, int in_rate, int filter_length, int log2_phase_count, int linear, double cutoff);
+
+/**
+ * resamples.
+ * @param src an array of unconsumed samples
+ * @param consumed the number of samples of src which have been consumed are returned here
+ * @param src_size the number of unconsumed samples available
+ * @param dst_size the amount of space in samples available in dst
+ * @param update_ctx If this is 0 then the context will not be modified, that way several channels can be resampled with the same context.
+ * @return the number of samples written in dst or -1 if an error occurred
+ */
int av_resample(struct AVResampleContext *c, short *dst, short *src, int *consumed, int src_size, int dst_size, int update_ctx);
+
+
+/**
+ * Compensates samplerate/timestamp drift. The compensation is done by changing
+ * the resampler parameters, so no audible clicks or similar distortions occur
+ * @param compensation_distance distance in output samples over which the compensation should be performed
+ * @param sample_delta number of output samples which should be output less
+ *
+ * example: av_resample_compensate(c, 10, 500)
+ * here instead of 510 samples only 500 samples would be output
+ *
+ * note, due to rounding the actual compensation might be slightly different,
+ * especially if the compensation_distance is large and the in_rate used during init is small
+ */
void av_resample_compensate(struct AVResampleContext *c, int sample_delta, int compensation_distance);
void av_resample_close(struct AVResampleContext *c);
@@ -2350,7 +2875,7 @@ void av_resample_close(struct AVResampleContext *c);
* @param height the height of the picture
* @return zero if successful, a negative value if not
*/
-int avpicture_alloc(AVPicture *picture, int pix_fmt, int width, int height);
+int avpicture_alloc(AVPicture *picture, enum PixelFormat pix_fmt, int width, int height);
/**
* Free a picture previously allocated by avpicture_alloc().
@@ -2367,6 +2892,7 @@ void avpicture_free(AVPicture *picture);
* If a planar format is specified, several pointers will be set pointing to
* the different picture planes and the line sizes of the different planes
* will be stored in the lines_sizes array.
+ * Call with ptr == NULL to get the required size for the ptr buffer.
*
* @param picture AVPicture whose fields are to be filled in
* @param ptr Buffer which will contain or contains the actual image data
@@ -2376,23 +2902,38 @@ void avpicture_free(AVPicture *picture);
* @return size of the image data in bytes
*/
int avpicture_fill(AVPicture *picture, uint8_t *ptr,
- int pix_fmt, int width, int height);
-int avpicture_layout(const AVPicture* src, int pix_fmt, int width, int height,
+ enum PixelFormat pix_fmt, int width, int height);
+int avpicture_layout(const AVPicture* src, enum PixelFormat pix_fmt, int width, int height,
unsigned char *dest, int dest_size);
/**
* Calculate the size in bytes that a picture of the given width and height
* would occupy if stored in the given picture format.
+ * Note that this returns the size of a compact representation as generated
+ * by avpicture_layout, which can be smaller than the size required for e.g.
+ * avpicture_fill.
*
* @param pix_fmt the given picture format
* @param width the width of the image
* @param height the height of the image
- * @return Image data size in bytes
+ * @return Image data size in bytes or -1 on error (e.g. too large dimensions).
*/
-int avpicture_get_size(int pix_fmt, int width, int height);
-void avcodec_get_chroma_sub_sample(int pix_fmt, int *h_shift, int *v_shift);
-const char *avcodec_get_pix_fmt_name(int pix_fmt);
+int avpicture_get_size(enum PixelFormat pix_fmt, int width, int height);
+void avcodec_get_chroma_sub_sample(enum PixelFormat pix_fmt, int *h_shift, int *v_shift);
+const char *avcodec_get_pix_fmt_name(enum PixelFormat pix_fmt);
void avcodec_set_dimensions(AVCodecContext *s, int width, int height);
+
+/**
+ * Returns the pixel format corresponding to the name name.
+ *
+ * If there is no pixel format with name name, then looks for a
+ * pixel format with the name corresponding to the native endian
+ * format of name.
+ * For example in a little-endian system, first looks for "gray16",
+ * then for "gray16le".
+ *
+ * Finally if no pixel format has been found, returns PIX_FMT_NONE.
+ */
enum PixelFormat avcodec_get_pix_fmt(const char* name);
unsigned int avcodec_pix_fmt_to_codec_tag(enum PixelFormat p);
@@ -2420,7 +2961,7 @@ unsigned int avcodec_pix_fmt_to_codec_tag(enum PixelFormat p);
* @param[in] has_alpha Whether the source pixel format alpha channel is used.
* @return Combination of flags informing you what kind of losses will occur.
*/
-int avcodec_get_pix_fmt_loss(int dst_pix_fmt, int src_pix_fmt,
+int avcodec_get_pix_fmt_loss(enum PixelFormat dst_pix_fmt, enum PixelFormat src_pix_fmt,
int has_alpha);
/**
@@ -2431,7 +2972,7 @@ int avcodec_get_pix_fmt_loss(int dst_pix_fmt, int src_pix_fmt,
* some formats to other formats. avcodec_find_best_pix_fmt() searches which of
* the given pixel formats should be used to suffer the least amount of loss.
* The pixel formats from which it chooses one, are determined by the
- * \p pix_fmt_mask parameter.
+ * pix_fmt_mask parameter.
*
* @code
* src_pix_fmt = PIX_FMT_YUV420P;
@@ -2445,7 +2986,7 @@ int avcodec_get_pix_fmt_loss(int dst_pix_fmt, int src_pix_fmt,
* @param[out] loss_ptr Combination of flags informing you what kind of losses will occur.
* @return The best pixel format to convert to or -1 if none was found.
*/
-int avcodec_find_best_pix_fmt(int64_t pix_fmt_mask, int src_pix_fmt,
+enum PixelFormat avcodec_find_best_pix_fmt(int64_t pix_fmt_mask, enum PixelFormat src_pix_fmt,
int has_alpha, int *loss_ptr);
@@ -2459,7 +3000,7 @@ int avcodec_find_best_pix_fmt(int64_t pix_fmt_mask, int src_pix_fmt,
* a negative value to print the corresponding header.
* Meaningful values for obtaining a pixel format info vary from 0 to PIX_FMT_NB -1.
*/
-void avcodec_pix_fmt_string (char *buf, int buf_size, int pix_fmt);
+void avcodec_pix_fmt_string (char *buf, int buf_size, enum PixelFormat pix_fmt);
#define FF_ALPHA_TRANSP 0x0001 /* image has some totally transparent pixels */
#define FF_ALPHA_SEMI_TRANSP 0x0002 /* image has some transparent pixels */
@@ -2469,15 +3010,20 @@ void avcodec_pix_fmt_string (char *buf, int buf_size, int pix_fmt);
* @return ored mask of FF_ALPHA_xxx constants
*/
int img_get_alpha_info(const AVPicture *src,
- int pix_fmt, int width, int height);
+ enum PixelFormat pix_fmt, int width, int height);
/* deinterlace a picture */
/* deinterlace - if not supported return -1 */
int avpicture_deinterlace(AVPicture *dst, const AVPicture *src,
- int pix_fmt, int width, int height);
+ enum PixelFormat pix_fmt, int width, int height);
/* external high level API */
+/**
+ * If c is NULL, returns the first registered codec,
+ * if c is non-NULL, returns the next registered codec after c,
+ * or NULL if c is the last one.
+ */
AVCodec *av_codec_next(AVCodec *c);
/**
@@ -2488,12 +3034,24 @@ unsigned avcodec_version(void);
/**
* Initializes libavcodec.
*
- * @warning This function \e must be called before any other libavcodec
+ * @warning This function must be called before any other libavcodec
* function.
*/
void avcodec_init(void);
-void register_avcodec(AVCodec *format);
+#if LIBAVCODEC_VERSION_MAJOR < 53
+/**
+ * @deprecated Deprecated in favor of avcodec_register().
+ */
+attribute_deprecated void register_avcodec(AVCodec *codec);
+#endif
+
+/**
+ * Register the codec codec and initialize libavcodec.
+ *
+ * @see avcodec_init()
+ */
+void avcodec_register(AVCodec *codec);
/**
* Finds a registered encoder with a matching codec ID.
@@ -2586,8 +3144,8 @@ enum PixelFormat avcodec_default_get_format(struct AVCodecContext *s, const enum
int avcodec_thread_init(AVCodecContext *s, int thread_count);
void avcodec_thread_free(AVCodecContext *s);
-int avcodec_thread_execute(AVCodecContext *s, int (*func)(AVCodecContext *c2, void *arg2),void **arg, int *ret, int count);
-int avcodec_default_execute(AVCodecContext *c, int (*func)(AVCodecContext *c2, void *arg2),void **arg, int *ret, int count);
+int avcodec_thread_execute(AVCodecContext *s, int (*func)(AVCodecContext *c2, void *arg2),void *arg, int *ret, int count, int size);
+int avcodec_default_execute(AVCodecContext *c, int (*func)(AVCodecContext *c2, void *arg2),void *arg, int *ret, int count, int size);
//FIXME func typedef
/**
@@ -2619,108 +3177,165 @@ int avcodec_default_execute(AVCodecContext *c, int (*func)(AVCodecContext *c2, v
*/
int avcodec_open(AVCodecContext *avctx, AVCodec *codec);
+#if LIBAVCODEC_VERSION_MAJOR < 53
+/**
+ * Decodes an audio frame from buf into samples.
+ * Wrapper function which calls avcodec_decode_audio3.
+ *
+ * @deprecated Use avcodec_decode_audio3 instead.
+ * @param avctx the codec context
+ * @param[out] samples the output buffer
+ * @param[in,out] frame_size_ptr the output buffer size in bytes
+ * @param[in] buf the input buffer
+ * @param[in] buf_size the input buffer size in bytes
+ * @return On error a negative value is returned, otherwise the number of bytes
+ * used or zero if no frame could be decompressed.
+ */
+attribute_deprecated int avcodec_decode_audio2(AVCodecContext *avctx, int16_t *samples,
+ int *frame_size_ptr,
+ const uint8_t *buf, int buf_size);
+#endif
+
/**
- * Decodes an audio frame from \p buf into \p samples.
- * The avcodec_decode_audio2() function decodes an audio frame from the input
- * buffer \p buf of size \p buf_size. To decode it, it makes use of the
- * audio codec which was coupled with \p avctx using avcodec_open(). The
- * resulting decoded frame is stored in output buffer \p samples. If no frame
- * could be decompressed, \p frame_size_ptr is zero. Otherwise, it is the
- * decompressed frame size in \e bytes.
+ * Decodes the audio frame of size avpkt->size from avpkt->data into samples.
+ * Some decoders may support multiple frames in a single AVPacket, such
+ * decoders would then just decode the first frame.
+ * If no frame
+ * could be decompressed, frame_size_ptr is zero. Otherwise, it is the
+ * decompressed frame size in bytes.
*
- * @warning You \e must set \p frame_size_ptr to the allocated size of the
- * output buffer before calling avcodec_decode_audio2().
+ * @warning You must set frame_size_ptr to the allocated size of the
+ * output buffer before calling avcodec_decode_audio3().
*
- * @warning The input buffer must be \c FF_INPUT_BUFFER_PADDING_SIZE larger than
+ * @warning The input buffer must be FF_INPUT_BUFFER_PADDING_SIZE larger than
* the actual read bytes because some optimized bitstream readers read 32 or 64
* bits at once and could read over the end.
*
- * @warning The end of the input buffer \p buf should be set to 0 to ensure that
+ * @warning The end of the input buffer avpkt->data should be set to 0 to ensure that
* no overreading happens for damaged MPEG streams.
*
- * @note You might have to align the input buffer \p buf and output buffer \p
+ * @note You might have to align the input buffer avpkt->data and output buffer
* samples. The alignment requirements depend on the CPU: On some CPUs it isn't
* necessary at all, on others it won't work at all if not aligned and on others
- * it will work but it will have an impact on performance. In practice, the
- * bitstream should have 4 byte alignment at minimum and all sample data should
- * be 16 byte aligned unless the CPU doesn't need it (AltiVec and SSE do). If
- * the linesize is not a multiple of 16 then there's no sense in aligning the
- * start of the buffer to 16.
+ * it will work but it will have an impact on performance.
+ *
+ * In practice, avpkt->data should have 4 byte alignment at minimum and
+ * samples should be 16 byte aligned unless the CPU doesn't need it
+ * (AltiVec and SSE do).
*
* @param avctx the codec context
- * @param[out] samples the output buffer
+ * @param[out] samples the output buffer, sample type in avctx->sample_fmt
* @param[in,out] frame_size_ptr the output buffer size in bytes
- * @param[in] buf the input buffer
- * @param[in] buf_size the input buffer size in bytes
+ * @param[in] avpkt The input AVPacket containing the input buffer.
+ * You can create such packet with av_init_packet() and by then setting
+ * data and size, some decoders might in addition need other fields.
+ * All decoders are designed to use the least fields possible though.
* @return On error a negative value is returned, otherwise the number of bytes
* used or zero if no frame could be decompressed.
*/
-int avcodec_decode_audio2(AVCodecContext *avctx, int16_t *samples,
+int avcodec_decode_audio3(AVCodecContext *avctx, int16_t *samples,
int *frame_size_ptr,
+ AVPacket *avpkt);
+
+#if LIBAVCODEC_VERSION_MAJOR < 53
+/**
+ * Decodes a video frame from buf into picture.
+ * Wrapper function which calls avcodec_decode_video2.
+ *
+ * @deprecated Use avcodec_decode_video2 instead.
+ * @param avctx the codec context
+ * @param[out] picture The AVFrame in which the decoded video frame will be stored.
+ * @param[in] buf the input buffer
+ * @param[in] buf_size the size of the input buffer in bytes
+ * @param[in,out] got_picture_ptr Zero if no frame could be decompressed, otherwise, it is nonzero.
+ * @return On error a negative value is returned, otherwise the number of bytes
+ * used or zero if no frame could be decompressed.
+ */
+attribute_deprecated int avcodec_decode_video(AVCodecContext *avctx, AVFrame *picture,
+ int *got_picture_ptr,
const uint8_t *buf, int buf_size);
+#endif
/**
- * Decodes a video frame from \p buf into \p picture.
- * The avcodec_decode_video() function decodes a video frame from the input
- * buffer \p buf of size \p buf_size. To decode it, it makes use of the
- * video codec which was coupled with \p avctx using avcodec_open(). The
- * resulting decoded frame is stored in \p picture.
+ * Decodes the video frame of size avpkt->size from avpkt->data into picture.
+ * Some decoders may support multiple frames in a single AVPacket, such
+ * decoders would then just decode the first frame.
*
- * @warning The input buffer must be \c FF_INPUT_BUFFER_PADDING_SIZE larger than
+ * @warning The input buffer must be FF_INPUT_BUFFER_PADDING_SIZE larger than
* the actual read bytes because some optimized bitstream readers read 32 or 64
* bits at once and could read over the end.
*
- * @warning The end of the input buffer \p buf should be set to 0 to ensure that
+ * @warning The end of the input buffer buf should be set to 0 to ensure that
* no overreading happens for damaged MPEG streams.
*
- * @note You might have to align the input buffer \p buf and output buffer \p
- * samples. The alignment requirements depend on the CPU: on some CPUs it isn't
+ * @note You might have to align the input buffer avpkt->data.
+ * The alignment requirements depend on the CPU: on some CPUs it isn't
* necessary at all, on others it won't work at all if not aligned and on others
- * it will work but it will have an impact on performance. In practice, the
- * bitstream should have 4 byte alignment at minimum and all sample data should
- * be 16 byte aligned unless the CPU doesn't need it (AltiVec and SSE do). If
- * the linesize is not a multiple of 16 then there's no sense in aligning the
- * start of the buffer to 16.
+ * it will work but it will have an impact on performance.
+ *
+ * In practice, avpkt->data should have 4 byte alignment at minimum.
+ *
+ * @note Some codecs have a delay between input and output, these need to be
+ * feeded with avpkt->data=NULL, avpkt->size=0 at the end to return the remaining frames.
*
* @param avctx the codec context
* @param[out] picture The AVFrame in which the decoded video frame will be stored.
- * @param[in] buf the input buffer
- * @param[in] buf_size the size of the input buffer in bytes
+ * @param[in] avpkt The input AVpacket containing the input buffer.
+ * You can create such packet with av_init_packet() and by then setting
+ * data and size, some decoders might in addition need other fields like
+ * flags&PKT_FLAG_KEY. All decoders are designed to use the least
+ * fields possible.
* @param[in,out] got_picture_ptr Zero if no frame could be decompressed, otherwise, it is nonzero.
* @return On error a negative value is returned, otherwise the number of bytes
* used or zero if no frame could be decompressed.
*/
-int avcodec_decode_video(AVCodecContext *avctx, AVFrame *picture,
+int avcodec_decode_video2(AVCodecContext *avctx, AVFrame *picture,
int *got_picture_ptr,
- const uint8_t *buf, int buf_size);
+ AVPacket *avpkt);
+#if LIBAVCODEC_VERSION_MAJOR < 53
/* Decode a subtitle message. Return -1 if error, otherwise return the
* number of bytes used. If no subtitle could be decompressed,
* got_sub_ptr is zero. Otherwise, the subtitle is stored in *sub. */
-int avcodec_decode_subtitle(AVCodecContext *avctx, AVSubtitle *sub,
+attribute_deprecated int avcodec_decode_subtitle(AVCodecContext *avctx, AVSubtitle *sub,
int *got_sub_ptr,
const uint8_t *buf, int buf_size);
+#endif
+
+/**
+ * Decodes a subtitle message.
+ * Returns a negative value on error, otherwise returns the number of bytes used.
+ * If no subtitle could be decompressed, got_sub_ptr is zero.
+ * Otherwise, the subtitle is stored in *sub.
+ *
+ * @param avctx the codec context
+ * @param[out] sub The AVSubtitle in which the decoded subtitle will be stored.
+ * @param[in,out] got_sub_ptr Zero if no subtitle could be decompressed, otherwise, it is nonzero.
+ * @param[in] avpkt The input AVPacket containing the input buffer.
+ */
+int avcodec_decode_subtitle2(AVCodecContext *avctx, AVSubtitle *sub,
+ int *got_sub_ptr,
+ AVPacket *avpkt);
int avcodec_parse_frame(AVCodecContext *avctx, uint8_t **pdata,
int *data_size_ptr,
uint8_t *buf, int buf_size);
/**
- * Encodes an audio frame from \p samples into \p buf.
- * The avcodec_encode_audio() function encodes an audio frame from the input
- * buffer \p samples. To encode it, it makes use of the audio codec which was
- * coupled with \p avctx using avcodec_open(). The resulting encoded frame is
- * stored in output buffer \p buf.
+ * Encodes an audio frame from samples into buf.
*
- * @note The output buffer should be at least \c FF_MIN_BUFFER_SIZE bytes large.
+ * @note The output buffer should be at least FF_MIN_BUFFER_SIZE bytes large.
+ * However, for PCM audio the user will know how much space is needed
+ * because it depends on the value passed in buf_size as described
+ * below. In that case a lower value can be used.
*
* @param avctx the codec context
* @param[out] buf the output buffer
* @param[in] buf_size the output buffer size
* @param[in] samples the input buffer containing the samples
* The number of samples read from this buffer is frame_size*channels,
- * both of which are defined in \p avctx.
- * For PCM audio the number of samples read from \p samples is equal to
- * \p buf_size * input_sample_size / output_sample_size.
+ * both of which are defined in avctx.
+ * For PCM audio the number of samples read from samples is equal to
+ * buf_size * input_sample_size / output_sample_size.
* @return On error a negative value is returned, on success zero or the number
* of bytes used to encode the data read from the input buffer.
*/
@@ -2728,19 +3343,16 @@ int avcodec_encode_audio(AVCodecContext *avctx, uint8_t *buf, int buf_size,
const short *samples);
/**
- * Encodes a video frame from \p pict into \p buf.
- * The avcodec_encode_video() function encodes a video frame from the input
- * \p pict. To encode it, it makes use of the video codec which was coupled with
- * \p avctx using avcodec_open(). The resulting encoded bytes representing the
- * frame are stored in the output buffer \p buf. The input picture should be
- * stored using a specific format, namely \c avctx.pix_fmt.
+ * Encodes a video frame from pict into buf.
+ * The input picture should be
+ * stored using a specific format, namely avctx.pix_fmt.
*
* @param avctx the codec context
* @param[out] buf the output buffer for the bitstream of encoded frame
* @param[in] buf_size the size of the output buffer in bytes
* @param[in] pict the input picture to encode
* @return On error a negative value is returned, on success zero or the number
- * of bytes used from the input buffer.
+ * of bytes used from the output buffer.
*/
int avcodec_encode_video(AVCodecContext *avctx, uint8_t *buf, int buf_size,
const AVFrame *pict);
@@ -2749,6 +3361,16 @@ int avcodec_encode_subtitle(AVCodecContext *avctx, uint8_t *buf, int buf_size,
int avcodec_close(AVCodecContext *avctx);
+/**
+ * Register all the codecs, parsers and bitstream filters which were enabled at
+ * configuration time. If you do not call this function you can select exactly
+ * which formats you want to support, by using the individual registration
+ * functions.
+ *
+ * @see avcodec_register
+ * @see av_register_codec_parser
+ * @see av_register_bitstream_filter
+ */
void avcodec_register_all(void);
/**
@@ -2761,7 +3383,7 @@ void avcodec_default_free_buffers(AVCodecContext *s);
/* misc useful functions */
/**
- * Returns a single letter to describe the given picture type \p pict_type.
+ * Returns a single letter to describe the given picture type pict_type.
*
* @param[in] pict_type the picture type
* @return A single character representing the picture type.
@@ -2794,6 +3416,15 @@ typedef struct AVCodecParserContext {
int64_t next_frame_offset; /* offset of the next frame */
/* video info */
int pict_type; /* XXX: Put it back in AVCodecContext. */
+ /**
+ * This field is used for proper frame duration computation in lavf.
+ * It signals, how much longer the frame duration of the current frame
+ * is compared to normal frame duration.
+ *
+ * frame_duration = (1 + repeat_pict) * time_base
+ *
+ * It is used by codecs like H.264 to display telecined material.
+ */
int repeat_pict; /* XXX: Put it back in AVCodecContext. */
int64_t pts; /* pts of the current frame */
int64_t dts; /* dts of the current frame */
@@ -2814,6 +3445,89 @@ typedef struct AVCodecParserContext {
int64_t offset; ///< byte offset from starting packet start
int64_t cur_frame_end[AV_PARSER_PTS_NB];
+
+ /*!
+ * Set by parser to 1 for key frames and 0 for non-key frames.
+ * It is initialized to -1, so if the parser doesn't set this flag,
+ * old-style fallback using FF_I_TYPE picture type as key frames
+ * will be used.
+ */
+ int key_frame;
+
+ /**
+ * Time difference in stream time base units from the pts of this
+ * packet to the point at which the output from the decoder has converged
+ * independent from the availability of previous frames. That is, the
+ * frames are virtually identical no matter if decoding started from
+ * the very first frame or from this keyframe.
+ * Is AV_NOPTS_VALUE if unknown.
+ * This field is not the display duration of the current frame.
+ *
+ * The purpose of this field is to allow seeking in streams that have no
+ * keyframes in the conventional sense. It corresponds to the
+ * recovery point SEI in H.264 and match_time_delta in NUT. It is also
+ * essential for some types of subtitle streams to ensure that all
+ * subtitles are correctly displayed after seeking.
+ */
+ int64_t convergence_duration;
+
+ // Timestamp generation support:
+ /**
+ * Synchronization point for start of timestamp generation.
+ *
+ * Set to >0 for sync point, 0 for no sync point and <0 for undefined
+ * (default).
+ *
+ * For example, this corresponds to presence of H.264 buffering period
+ * SEI message.
+ */
+ int dts_sync_point;
+
+ /**
+ * Offset of the current timestamp against last timestamp sync point in
+ * units of AVCodecContext.time_base.
+ *
+ * Set to INT_MIN when dts_sync_point unused. Otherwise, it must
+ * contain a valid timestamp offset.
+ *
+ * Note that the timestamp of sync point has usually a nonzero
+ * dts_ref_dts_delta, which refers to the previous sync point. Offset of
+ * the next frame after timestamp sync point will be usually 1.
+ *
+ * For example, this corresponds to H.264 cpb_removal_delay.
+ */
+ int dts_ref_dts_delta;
+
+ /**
+ * Presentation delay of current frame in units of AVCodecContext.time_base.
+ *
+ * Set to INT_MIN when dts_sync_point unused. Otherwise, it must
+ * contain valid non-negative timestamp delta (presentation time of a frame
+ * must not lie in the past).
+ *
+ * This delay represents the difference between decoding and presentation
+ * time of the frame.
+ *
+ * For example, this corresponds to H.264 dpb_output_delay.
+ */
+ int pts_dts_delta;
+
+ /**
+ * Position of the packet in file.
+ *
+ * Analogous to cur_frame_pts/dts
+ */
+ int64_t cur_frame_pos[AV_PARSER_PTS_NB];
+
+ /**
+ * Byte position of currently parsed frame in stream.
+ */
+ int64_t pos;
+
+ /**
+ * Previous frame byte position.
+ */
+ int64_t last_pos;
} AVCodecParserContext;
typedef struct AVCodecParser {
@@ -2833,11 +3547,51 @@ AVCodecParser *av_parser_next(AVCodecParser *c);
void av_register_codec_parser(AVCodecParser *parser);
AVCodecParserContext *av_parser_init(int codec_id);
+
+#if LIBAVCODEC_VERSION_MAJOR < 53
+attribute_deprecated
int av_parser_parse(AVCodecParserContext *s,
AVCodecContext *avctx,
uint8_t **poutbuf, int *poutbuf_size,
const uint8_t *buf, int buf_size,
int64_t pts, int64_t dts);
+#endif
+
+/**
+ * Parse a packet.
+ *
+ * @param s parser context.
+ * @param avctx codec context.
+ * @param poutbuf set to pointer to parsed buffer or NULL if not yet finished.
+ * @param poutbuf_size set to size of parsed buffer or zero if not yet finished.
+ * @param buf input buffer.
+ * @param buf_size input length, to signal EOF, this should be 0 (so that the last frame can be output).
+ * @param pts input presentation timestamp.
+ * @param dts input decoding timestamp.
+ * @param pos input byte position in stream.
+ * @return the number of bytes of the input bitstream used.
+ *
+ * Example:
+ * @code
+ * while(in_len){
+ * len = av_parser_parse2(myparser, AVCodecContext, &data, &size,
+ * in_data, in_len,
+ * pts, dts, pos);
+ * in_data += len;
+ * in_len -= len;
+ *
+ * if(size)
+ * decode_frame(data, size);
+ * }
+ * @endcode
+ */
+int av_parser_parse2(AVCodecParserContext *s,
+ AVCodecContext *avctx,
+ uint8_t **poutbuf, int *poutbuf_size,
+ const uint8_t *buf, int buf_size,
+ int64_t pts, int64_t dts,
+ int64_t pos);
+
int av_parser_change(AVCodecParserContext *s,
AVCodecContext *avctx,
uint8_t **poutbuf, int *poutbuf_size,
@@ -2885,27 +3639,41 @@ AVBitStreamFilter *av_bitstream_filter_next(AVBitStreamFilter *f);
void *av_fast_realloc(void *ptr, unsigned int *size, unsigned int min_size);
/**
+ * Allocates a buffer, reusing the given one if large enough.
+ *
+ * Contrary to av_fast_realloc the current buffer contents might not be
+ * preserved and on error the old buffer is freed, thus no special
+ * handling to avoid memleaks is necessary.
+ *
+ * @param ptr pointer to pointer to already allocated buffer, overwritten with pointer to new buffer
+ * @param size size of the buffer *ptr points to
+ * @param min_size minimum size of *ptr buffer after returning, *ptr will be NULL and
+ * *size 0 if an error occurred.
+ */
+void av_fast_malloc(void *ptr, unsigned int *size, unsigned int min_size);
+
+/**
* Copy image 'src' to 'dst'.
*/
void av_picture_copy(AVPicture *dst, const AVPicture *src,
- int pix_fmt, int width, int height);
+ enum PixelFormat pix_fmt, int width, int height);
/**
* Crop image top and left side.
*/
int av_picture_crop(AVPicture *dst, const AVPicture *src,
- int pix_fmt, int top_band, int left_band);
+ enum PixelFormat pix_fmt, int top_band, int left_band);
/**
* Pad image.
*/
-int av_picture_pad(AVPicture *dst, const AVPicture *src, int height, int width, int pix_fmt,
+int av_picture_pad(AVPicture *dst, const AVPicture *src, int height, int width, enum PixelFormat pix_fmt,
int padtop, int padbottom, int padleft, int padright, int *color);
-extern unsigned int av_xiphlacing(unsigned char *s, unsigned int v);
+unsigned int av_xiphlacing(unsigned char *s, unsigned int v);
/**
- * Parses \p str and put in \p width_ptr and \p height_ptr the detected values.
+ * Parses str and put in width_ptr and height_ptr the detected values.
*
* @return 0 in case of a successful parsing, a negative value otherwise
* @param[in] str the string to parse: it has to be a string in the format
@@ -2918,28 +3686,16 @@ extern unsigned int av_xiphlacing(unsigned char *s, unsigned int v);
int av_parse_video_frame_size(int *width_ptr, int *height_ptr, const char *str);
/**
- * Parses \p str and put in \p frame_rate the detected values.
+ * Parses str and put in frame_rate the detected values.
*
* @return 0 in case of a successful parsing, a negative value otherwise
* @param[in] str the string to parse: it has to be a string in the format
- * <frame_rate_nom>/<frame_rate_den>, a float number or a valid video rate abbreviation
+ * <frame_rate_num>/<frame_rate_den>, a float number or a valid video rate abbreviation
* @param[in,out] frame_rate pointer to the AVRational which will contain the detected
* frame rate
*/
int av_parse_video_frame_rate(AVRational *frame_rate, const char *str);
-/**
- * Logs a generic warning message about a missing feature.
- * @param[in] avc a pointer to an arbitrary struct of which the first field is
- * a pointer to an AVClass struct
- * @param[in] feature string containing the name of the missing feature
- * @param[in] want_sample indicates if samples are wanted which exhibit this feature.
- * If \p want_sample is non-zero, additional verbage will be added to the log
- * message which tells the user how to report samples to the development
- * mailing list.
- */
-void av_log_missing_feature(void *avc, const char *feature, int want_sample);
-
/* error handling */
#if EINVAL > 0
#define AVERROR(e) (-(e)) /**< Returns a negative error code from a POSIX error code, to return from library functions. */
@@ -2957,6 +3713,69 @@ void av_log_missing_feature(void *avc, const char *feature, int want_sample);
#define AVERROR_NOFMT AVERROR(EILSEQ) /**< unknown format */
#define AVERROR_NOTSUPP AVERROR(ENOSYS) /**< Operation not supported. */
#define AVERROR_NOENT AVERROR(ENOENT) /**< No such file or directory. */
+#define AVERROR_EOF AVERROR(EPIPE) /**< End of file. */
#define AVERROR_PATCHWELCOME -MKTAG('P','A','W','E') /**< Not yet implemented in FFmpeg. Patches welcome. */
+/**
+ * Logs a generic warning message about a missing feature. This function is
+ * intended to be used internally by FFmpeg (libavcodec, libavformat, etc.)
+ * only, and would normally not be used by applications.
+ * @param[in] avc a pointer to an arbitrary struct of which the first field is
+ * a pointer to an AVClass struct
+ * @param[in] feature string containing the name of the missing feature
+ * @param[in] want_sample indicates if samples are wanted which exhibit this feature.
+ * If want_sample is non-zero, additional verbage will be added to the log
+ * message which tells the user how to report samples to the development
+ * mailing list.
+ */
+void av_log_missing_feature(void *avc, const char *feature, int want_sample);
+
+/**
+ * Logs a generic warning message asking for a sample. This function is
+ * intended to be used internally by FFmpeg (libavcodec, libavformat, etc.)
+ * only, and would normally not be used by applications.
+ * @param[in] avc a pointer to an arbitrary struct of which the first field is
+ * a pointer to an AVClass struct
+ * @param[in] msg string containing an optional message, or NULL if no message
+ */
+void av_log_ask_for_sample(void *avc, const char *msg);
+
+/**
+ * Registers the hardware accelerator hwaccel.
+ */
+void av_register_hwaccel(AVHWAccel *hwaccel);
+
+/**
+ * If hwaccel is NULL, returns the first registered hardware accelerator,
+ * if hwaccel is non-NULL, returns the next registered hardware accelerator
+ * after hwaccel, or NULL if hwaccel is the last one.
+ */
+AVHWAccel *av_hwaccel_next(AVHWAccel *hwaccel);
+
+
+/**
+ * Lock operation used by lockmgr
+ */
+enum AVLockOp {
+ AV_LOCK_CREATE, ///< Create a mutex
+ AV_LOCK_OBTAIN, ///< Lock the mutex
+ AV_LOCK_RELEASE, ///< Unlock the mutex
+ AV_LOCK_DESTROY, ///< Free mutex resources
+};
+
+/**
+ * Register a user provided lock manager supporting the operations
+ * specified by AVLockOp. mutex points to a (void *) where the
+ * lockmgr should store/get a pointer to a user allocated mutex. It's
+ * NULL upon AV_LOCK_CREATE and != NULL for all other ops.
+ *
+ * @param cb User defined callback. Note: FFmpeg may invoke calls to this
+ * callback during the call to av_lockmgr_register().
+ * Thus, the application must be prepared to handle that.
+ * If cb is set to NULL the lockmgr will be unregistered.
+ * Also note that during unregistration the previously registered
+ * lockmgr callback may also be invoked.
+ */
+int av_lockmgr_register(int (*cb)(void **mutex, enum AVLockOp op));
+
#endif /* AVCODEC_AVCODEC_H */
diff --git a/lib-src/ffmpeg/libavformat/avformat.h b/lib-src/ffmpeg/libavformat/avformat.h
index d8e0b0a..2185edc 100644
--- a/lib-src/ffmpeg/libavformat/avformat.h
+++ b/lib-src/ffmpeg/libavformat/avformat.h
@@ -22,8 +22,8 @@
#define AVFORMAT_AVFORMAT_H
#define LIBAVFORMAT_VERSION_MAJOR 52
-#define LIBAVFORMAT_VERSION_MINOR 22
-#define LIBAVFORMAT_VERSION_MICRO 1
+#define LIBAVFORMAT_VERSION_MINOR 36
+#define LIBAVFORMAT_VERSION_MICRO 0
#define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \
LIBAVFORMAT_VERSION_MINOR, \
@@ -46,85 +46,78 @@ unsigned avformat_version(void);
#include "avio.h"
-/* packet functions */
+struct AVFormatContext;
-typedef struct AVPacket {
- /**
- * Presentation timestamp in time_base units.
- * This is the time at which the decompressed packet will be presented
- * to the user.
- * Can be AV_NOPTS_VALUE if it is not stored in the file.
- * pts MUST be larger or equal to dts as presentation cannot happen before
- * decompression, unless one wants to view hex dumps. Some formats misuse
- * the terms dts and pts/cts to mean something different, these timestamps
- * must be converted to true pts/dts before they are stored in AVPacket.
- */
- int64_t pts;
- /**
- * Decompression timestamp in time_base units.
- * This is the time at which the packet is decompressed.
- * Can be AV_NOPTS_VALUE if it is not stored in the file.
- */
- int64_t dts;
- uint8_t *data;
- int size;
- int stream_index;
- int flags;
- /**
- * Duration of this packet in time_base units, 0 if unknown.
- * Equals next_pts - this_pts in presentation order.
- */
- int duration;
- void (*destruct)(struct AVPacket *);
- void *priv;
- int64_t pos; ///< byte position in stream, -1 if unknown
- /**
- * Time difference in stream time base units from the pts of this
- * packet to the point at which the output from the decoder has converged
- * independent from the availability of previous frames. That is, the
- * frames are virtually identical no matter if decoding started from
- * the very first frame or from this keyframe.
- * Is AV_NOPTS_VALUE if unknown.
- * This field is not the display duration of the current packet.
- *
- * The purpose of this field is to allow seeking in streams that have no
- * keyframes in the conventional sense. It corresponds to the
- * recovery point SEI in H.264 and match_time_delta in NUT. It is also
- * essential for some types of subtitle streams to ensure that all
- * subtitles are correctly displayed after seeking.
- */
- int64_t convergence_duration;
-} AVPacket;
-#define PKT_FLAG_KEY 0x0001
+/*
+ * Public Metadata API.
+ * The metadata API allows libavformat to export metadata tags to a client
+ * application using a sequence of key/value pairs.
+ * Important concepts to keep in mind:
+ * 1. Keys are unique; there can never be 2 tags with the same key. This is
+ * also meant semantically, i.e., a demuxer should not knowingly produce
+ * several keys that are literally different but semantically identical.
+ * E.g., key=Author5, key=Author6. In this example, all authors must be
+ * placed in the same tag.
+ * 2. Metadata is flat, not hierarchical; there are no subtags. If you
+ * want to store, e.g., the email address of the child of producer Alice
+ * and actor Bob, that could have key=alice_and_bobs_childs_email_address.
+ * 3. A tag whose value is localized for a particular language is appended
+ * with a dash character ('-') and the ISO 639-2/B 3-letter language code.
+ * For example: Author-ger=Michael, Author-eng=Mike
+ * The original/default language is in the unqualified "Author" tag.
+ * A demuxer should set a default if it sets any translated tag.
+ */
-void av_destruct_packet_nofree(AVPacket *pkt);
+#define AV_METADATA_MATCH_CASE 1
+#define AV_METADATA_IGNORE_SUFFIX 2
+
+typedef struct {
+ char *key;
+ char *value;
+}AVMetadataTag;
+
+typedef struct AVMetadata AVMetadata;
+typedef struct AVMetadataConv AVMetadataConv;
/**
- * Default packet destructor.
+ * Gets a metadata element with matching key.
+ * @param prev Set to the previous matching element to find the next.
+ * @param flags Allows case as well as suffix-insensitive comparisons.
+ * @return Found tag or NULL, changing key or value leads to undefined behavior.
*/
-void av_destruct_packet(AVPacket *pkt);
+AVMetadataTag *
+av_metadata_get(AVMetadata *m, const char *key, const AVMetadataTag *prev, int flags);
/**
- * Initialize optional fields of a packet with default values.
- *
- * @param pkt packet
+ * Sets the given tag in m, overwriting an existing tag.
+ * @param key tag key to add to m (will be av_strduped)
+ * @param value tag value to add to m (will be av_strduped)
+ * @return >= 0 on success otherwise an error code <0
*/
-void av_init_packet(AVPacket *pkt);
+int av_metadata_set(AVMetadata **pm, const char *key, const char *value);
/**
- * Allocate the payload of a packet and initialize its fields with
- * default values.
- *
- * @param pkt packet
- * @param size wanted payload size
- * @return 0 if OK, AVERROR_xxx otherwise
+ * Converts all the metadata sets from ctx according to the source and
+ * destination conversion tables.
+ * @param d_conv destination tags format conversion table
+ * @param s_conv source tags format conversion table
+ */
+void av_metadata_conv(struct AVFormatContext *ctx,const AVMetadataConv *d_conv,
+ const AVMetadataConv *s_conv);
+
+/**
+ * Frees all the memory allocated for an AVMetadata struct.
*/
-int av_new_packet(AVPacket *pkt, int size);
+void av_metadata_free(AVMetadata **m);
+
+
+/* packet functions */
+
/**
- * Allocate and read the payload of a packet and initialize its fields with
- * default values.
+ * Allocates and reads the payload of a packet and initializes its
+ * fields with default values.
*
* @param pkt packet
* @param size desired payload size
@@ -132,23 +125,6 @@ int av_new_packet(AVPacket *pkt, int size);
*/
int av_get_packet(ByteIOContext *s, AVPacket *pkt, int size);
-/**
- * @warning This is a hack - the packet memory allocation stuff is broken. The
- * packet is allocated if it was not really allocated.
- */
-int av_dup_packet(AVPacket *pkt);
-
-/**
- * Free a packet.
- *
- * @param pkt packet to free
- */
-static inline void av_free_packet(AVPacket *pkt)
-{
- if (pkt && pkt->destruct) {
- pkt->destruct(pkt);
- }
-}
/*************************************************/
/* fractional numbers for exact pts handling */
@@ -156,19 +132,16 @@ static inline void av_free_packet(AVPacket *pkt)
/**
* The exact value of the fractional number is: 'val + num / den'.
* num is assumed to be 0 <= num < den.
- * @deprecated Use AVRational instead.
-*/
+ */
typedef struct AVFrac {
int64_t val, num, den;
-} AVFrac attribute_deprecated;
+} AVFrac;
/*************************************************/
/* input/output formats */
struct AVCodecTag;
-struct AVFormatContext;
-
/** This structure contains the data a format has to probe a file. */
typedef struct AVProbeData {
const char *filename;
@@ -176,7 +149,7 @@ typedef struct AVProbeData {
int buf_size;
} AVProbeData;
-#define AVPROBE_SCORE_MAX 100 ///< Maximum score, half of that is used for file-extension-based detection.
+#define AVPROBE_SCORE_MAX 100 ///< maximum score, half of that is used for file-extension-based detection
#define AVPROBE_PADDING_SIZE 32 ///< extra allocated bytes at the end of the probe buffer
typedef struct AVFormatParameters {
@@ -211,18 +184,19 @@ typedef struct AVFormatParameters {
#define AVFMT_NOTIMESTAMPS 0x0080 /**< Format does not need / have any timestamps. */
#define AVFMT_GENERIC_INDEX 0x0100 /**< Use generic index building code. */
#define AVFMT_TS_DISCONT 0x0200 /**< Format allows timestamp discontinuities. */
+#define AVFMT_VARIABLE_FPS 0x0400 /**< Format allows variable fps. */
typedef struct AVOutputFormat {
const char *name;
/**
* Descriptive name for the format, meant to be more human-readable
- * than \p name. You \e should use the NULL_IF_CONFIG_SMALL() macro
+ * than name. You should use the NULL_IF_CONFIG_SMALL() macro
* to define it.
*/
const char *long_name;
const char *mime_type;
const char *extensions; /**< comma-separated filename extensions */
- /** Size of private data so that it can be allocated in the wrapper. */
+ /** size of private data so that it can be allocated in the wrapper */
int priv_data_size;
/* output support */
enum CodecID audio_codec; /**< default audio codec */
@@ -239,12 +213,14 @@ typedef struct AVOutputFormat {
/**
* List of supported codec_id-codec_tag pairs, ordered by "better
- * choice first". The arrays are all CODEC_ID_NONE terminated.
+ * choice first". The arrays are all terminated by CODEC_ID_NONE.
*/
const struct AVCodecTag * const *codec_tag;
enum CodecID subtitle_codec; /**< default subtitle codec */
+ const AVMetadataConv *metadata_conv;
+
/* private fields */
struct AVOutputFormat *next;
} AVOutputFormat;
@@ -253,14 +229,14 @@ typedef struct AVInputFormat {
const char *name;
/**
* Descriptive name for the format, meant to be more human-readable
- * than \p name. You \e should use the NULL_IF_CONFIG_SMALL() macro
+ * than name. You should use the NULL_IF_CONFIG_SMALL() macro
* to define it.
*/
const char *long_name;
/** Size of private data so that it can be allocated in the wrapper. */
int priv_data_size;
/**
- * Tell if a given file has a chance of being parsed by this format.
+ * Tell if a given file has a chance of being parsed as this format.
* The buffer provided is guaranteed to be AVPROBE_PADDING_SIZE bytes
* big so you do not have to check for that unless you need more.
*/
@@ -273,21 +249,27 @@ typedef struct AVInputFormat {
AVFormatParameters *ap);
/** Read one packet and put it in 'pkt'. pts and flags are also
set. 'av_new_stream' can be called only if the flag
- AVFMTCTX_NOHEADER is used. */
+ AVFMTCTX_NOHEADER is used.
+ @return 0 on success, < 0 on error.
+ When returning an error, pkt must not have been allocated
+ or must be freed before returning */
int (*read_packet)(struct AVFormatContext *, AVPacket *pkt);
/** Close the stream. The AVFormatContext and AVStreams are not
freed by this function */
int (*read_close)(struct AVFormatContext *);
+
+#if LIBAVFORMAT_VERSION_MAJOR < 53
/**
* Seek to a given timestamp relative to the frames in
* stream component stream_index.
- * @param stream_index must not be -1
- * @param flags selects which direction should be preferred if no exact
- * match is available
+ * @param stream_index Must not be -1.
+ * @param flags Selects which direction should be preferred if no exact
+ * match is available.
* @return >= 0 on success (but not necessarily the new offset)
*/
int (*read_seek)(struct AVFormatContext *,
int stream_index, int64_t timestamp, int flags);
+#endif
/**
* Gets the next timestamp in stream[stream_index].time_base units.
* @return the timestamp or AV_NOPTS_VALUE if an error occurred
@@ -303,16 +285,26 @@ typedef struct AVInputFormat {
/** General purpose read-only value that the format can use. */
int value;
- /** Start/resume playing - only meaningful if using a network-based format
+ /** Starts/resumes playing - only meaningful if using a network-based format
(RTSP). */
int (*read_play)(struct AVFormatContext *);
- /** Pause playing - only meaningful if using a network-based format
+ /** Pauses playing - only meaningful if using a network-based format
(RTSP). */
int (*read_pause)(struct AVFormatContext *);
const struct AVCodecTag * const *codec_tag;
+ /**
+ * Seeks to timestamp ts.
+ * Seeking will be done so that the point from which all active streams
+ * can be presented successfully will be closest to ts and within min/max_ts.
+ * Active streams are all streams that have AVStream.discard < AVDISCARD_ALL.
+ */
+ int (*read_seek2)(struct AVFormatContext *s, int stream_index, int64_t min_ts, int64_t ts, int64_t max_ts, int flags);
+
+ const AVMetadataConv *metadata_conv;
+
/* private fields */
struct AVInputFormat *next;
} AVInputFormat;
@@ -352,11 +344,11 @@ typedef struct AVStream {
int id; /**< format-specific stream ID */
AVCodecContext *codec; /**< codec context */
/**
- * Real base frame rate of the stream.
- * This is the lowest frame rate with which all timestamps can be
+ * Real base framerate of the stream.
+ * This is the lowest framerate with which all timestamps can be
* represented accurately (it is the least common multiple of all
- * frame rates in the stream). Note, this value is just a guess!
- * For example if the time base is 1/90000 and all frames have either
+ * framerates in the stream). Note, this value is just a guess!
+ * For example, if the time base is 1/90000 and all frames have either
* approximately 3600 or 1800 timer ticks, then r_frame_rate will be 50/1.
*/
AVRational r_frame_rate;
@@ -370,7 +362,7 @@ typedef struct AVStream {
/**
* This is the fundamental unit of time (in seconds) in terms
* of which frame timestamps are represented. For fixed-fps content,
- * time base should be 1/frame rate and timestamp increments should be 1.
+ * time base should be 1/framerate and timestamp increments should be 1.
*/
AVRational time_base;
int pts_wrap_bits; /**< number of bits in pts (used for wrapping control) */
@@ -397,7 +389,9 @@ typedef struct AVStream {
*/
int64_t duration;
- char language[4]; /** ISO 639 3-letter language code (empty string if undefined) */
+#if LIBAVFORMAT_VERSION_INT < (53<<16)
+ char language[4]; /** ISO 639-2/B 3-letter language code (empty string if undefined) */
+#endif
/* av_read_frame() support */
enum AVStreamParseType need_parsing;
@@ -416,9 +410,9 @@ typedef struct AVStream {
#if LIBAVFORMAT_VERSION_INT < (53<<16)
int64_t unused[4+1];
-#endif
char *filename; /**< source filename of the stream */
+#endif
int disposition; /**< AV_DISPOSITION_* bit field */
@@ -432,6 +426,30 @@ typedef struct AVStream {
* - decoding: Set by libavformat.
*/
AVRational sample_aspect_ratio;
+
+ AVMetadata *metadata;
+
+ /* av_read_frame() support */
+ const uint8_t *cur_ptr;
+ int cur_len;
+ AVPacket cur_pkt;
+
+ // Timestamp generation support:
+ /**
+ * Timestamp corresponding to the last dts sync point.
+ *
+ * Initialized when AVCodecParserContext.dts_sync_point >= 0 and
+ * a DTS is received from the underlying container. Otherwise set to
+ * AV_NOPTS_VALUE by default.
+ */
+ int64_t reference_dts;
+
+ /**
+ * Number of packets to buffer for codec probing
+ * NOT PART OF PUBLIC API
+ */
+#define MAX_PROBE_PACKETS 100
+ int probe_packets;
} AVStream;
#define AV_PROGRAM_RUNNING 1
@@ -444,12 +462,15 @@ typedef struct AVStream {
*/
typedef struct AVProgram {
int id;
+#if LIBAVFORMAT_VERSION_INT < (53<<16)
char *provider_name; ///< network name for DVB streams
char *name; ///< service name for DVB streams
+#endif
int flags;
enum AVDiscard discard; ///< selects which program to discard and which to feed to the caller
unsigned int *stream_index;
unsigned int nb_stream_indexes;
+ AVMetadata *metadata;
} AVProgram;
#define AVFMTCTX_NOHEADER 0x0001 /**< signal that no header is present
@@ -459,7 +480,10 @@ typedef struct AVChapter {
int id; ///< unique ID to identify the chapter
AVRational time_base; ///< time base in which the start/end timestamps are specified
int64_t start, end; ///< chapter start/end time in time_base units
+#if LIBAVFORMAT_VERSION_INT < (53<<16)
char *title; ///< chapter title
+#endif
+ AVMetadata *metadata;
} AVChapter;
#define MAX_STREAMS 20
@@ -472,7 +496,7 @@ typedef struct AVChapter {
* sizeof(AVFormatContext) must not be used outside libav*.
*/
typedef struct AVFormatContext {
- const AVClass *av_class; /**< Set by av_alloc_format_context. */
+ const AVClass *av_class; /**< Set by avformat_alloc_context. */
/* Can only be iformat or oformat, not both at the same time. */
struct AVInputFormat *iformat;
struct AVOutputFormat *oformat;
@@ -483,6 +507,7 @@ typedef struct AVFormatContext {
char filename[1024]; /**< input or output filename */
/* stream info */
int64_t timestamp;
+#if LIBAVFORMAT_VERSION_INT < (53<<16)
char title[512];
char author[512];
char copyright[512];
@@ -491,6 +516,7 @@ typedef struct AVFormatContext {
int year; /**< ID3 year, 0 if none */
int track; /**< track number, 0 if none */
char genre[32]; /**< ID3 genre */
+#endif
int ctx_flags; /**< Format-specific flags, see AVFMTCTX_xx */
/* private data for pts handling (do not modify directly). */
@@ -511,21 +537,23 @@ typedef struct AVFormatContext {
int64_t file_size;
/** Decoding: total stream bitrate in bit/s, 0 if not
available. Never set it directly if the file_size and the
- duration are known as ffmpeg can compute it automatically. */
+ duration are known as FFmpeg can compute it automatically. */
int bit_rate;
/* av_read_frame() support */
AVStream *cur_st;
- const uint8_t *cur_ptr;
- int cur_len;
- AVPacket cur_pkt;
+#if LIBAVFORMAT_VERSION_INT < (53<<16)
+ const uint8_t *cur_ptr_deprecated;
+ int cur_len_deprecated;
+ AVPacket cur_pkt_deprecated;
+#endif
/* av_seek_frame() support */
int64_t data_offset; /** offset of the first packet */
int index_built;
int mux_rate;
- int packet_size;
+ unsigned int packet_size;
int preload;
int max_delay;
@@ -535,12 +563,12 @@ typedef struct AVFormatContext {
int loop_output;
int flags;
-#define AVFMT_FLAG_GENPTS 0x0001 ///< Generate pts if missing even if it requires parsing future frames.
+#define AVFMT_FLAG_GENPTS 0x0001 ///< Generate missing pts even if it requires parsing future frames.
#define AVFMT_FLAG_IGNIDX 0x0002 ///< Ignore index.
#define AVFMT_FLAG_NONBLOCK 0x0004 ///< Do not block when reading packets from input.
int loop_input;
- /** Decoding: size of data to probe; encoding: unused. */
+ /** decoding: size of data to probe; encoding: unused. */
unsigned int probesize;
/**
@@ -572,8 +600,8 @@ typedef struct AVFormatContext {
enum CodecID subtitle_codec_id;
/**
- * Maximum amount of memory in bytes to use per stream for the index.
- * If the needed index exceeds this size, entries will be discarded as
+ * Maximum amount of memory in bytes to use for the index of each stream.
+ * If the index exceeds this size, entries will be discarded as
* needed to maintain a smaller size. This can lead to slower or less
* accurate seeking (depends on demuxer).
* Demuxers for which a full in-memory index is mandatory will ignore
@@ -608,6 +636,15 @@ typedef struct AVFormatContext {
struct AVPacketList *raw_packet_buffer_end;
struct AVPacketList *packet_buffer_end;
+
+ AVMetadata *metadata;
+
+ /**
+ * Remaining size available for raw_packet_buffer, in bytes.
+ * NOT PART OF PUBLIC API
+ */
+#define RAW_PACKET_BUFFER_SIZE 32000
+ int raw_packet_buffer_remaining_size;
} AVFormatContext;
typedef struct AVPacketList {
@@ -620,13 +657,24 @@ extern AVInputFormat *first_iformat;
extern AVOutputFormat *first_oformat;
#endif
+/**
+ * If f is NULL, returns the first registered input format,
+ * if f is non-NULL, returns the next registered input format after f
+ * or NULL if f is the last one.
+ */
AVInputFormat *av_iformat_next(AVInputFormat *f);
+
+/**
+ * If f is NULL, returns the first registered output format,
+ * if f is non-NULL, returns the next registered output format after f
+ * or NULL if f is the last one.
+ */
AVOutputFormat *av_oformat_next(AVOutputFormat *f);
enum CodecID av_guess_image2_codec(const char *filename);
-/* XXX: use automatic init with either ELF sections or C file parser */
-/* modules */
+/* XXX: Use automatic init with either ELF sections or C file parser */
+/* modules. */
/* utils.c */
void av_register_input_format(AVInputFormat *format);
@@ -646,7 +694,7 @@ enum CodecID av_guess_codec(AVOutputFormat *fmt, const char *short_name,
enum CodecType type);
/**
- * Send a nice hexadecimal dump of a buffer to the specified file stream.
+ * Sends a nice hexadecimal dump of a buffer to the specified file stream.
*
* @param f The file stream pointer where the dump should be sent to.
* @param buf buffer
@@ -657,7 +705,7 @@ enum CodecID av_guess_codec(AVOutputFormat *fmt, const char *short_name,
void av_hex_dump(FILE *f, uint8_t *buf, int size);
/**
- * Send a nice hexadecimal dump of a buffer to the log.
+ * Sends a nice hexadecimal dump of a buffer to the log.
*
* @param avcl A pointer to an arbitrary struct of which the first field is a
* pointer to an AVClass struct.
@@ -671,7 +719,7 @@ void av_hex_dump(FILE *f, uint8_t *buf, int size);
void av_hex_dump_log(void *avcl, int level, uint8_t *buf, int size);
/**
- * Send a nice dump of a packet to the specified file stream.
+ * Sends a nice dump of a packet to the specified file stream.
*
* @param f The file stream pointer where the dump should be sent to.
* @param pkt packet to dump
@@ -680,7 +728,7 @@ void av_hex_dump_log(void *avcl, int level, uint8_t *buf, int size);
void av_pkt_dump(FILE *f, AVPacket *pkt, int dump_payload);
/**
- * Send a nice dump of a packet to the log.
+ * Sends a nice dump of a packet to the log.
*
* @param avcl A pointer to an arbitrary struct of which the first field is a
* pointer to an AVClass struct.
@@ -691,11 +739,20 @@ void av_pkt_dump(FILE *f, AVPacket *pkt, int dump_payload);
*/
void av_pkt_dump_log(void *avcl, int level, AVPacket *pkt, int dump_payload);
+/**
+ * Initializes libavformat and registers all the muxers, demuxers and
+ * protocols. If you do not call this function, then you can select
+ * exactly which formats you want to support.
+ *
+ * @see av_register_input_format()
+ * @see av_register_output_format()
+ * @see av_register_protocol()
+ */
void av_register_all(void);
/** codec tag <-> codec id */
-enum CodecID av_codec_get_id(const struct AVCodecTag **tags, unsigned int tag);
-unsigned int av_codec_get_tag(const struct AVCodecTag **tags, enum CodecID id);
+enum CodecID av_codec_get_id(const struct AVCodecTag * const *tags, unsigned int tag);
+unsigned int av_codec_get_tag(const struct AVCodecTag * const *tags, enum CodecID id);
/* media file input */
@@ -705,7 +762,7 @@ unsigned int av_codec_get_tag(const struct AVCodecTag **tags, enum CodecID id);
AVInputFormat *av_find_input_format(const char *short_name);
/**
- * Guess file format.
+ * Guesses the file format.
*
* @param is_opened Whether the file is already opened; determines whether
* demuxers with or without AVFMT_NOFILE are probed.
@@ -721,7 +778,7 @@ int av_open_input_stream(AVFormatContext **ic_ptr,
AVInputFormat *fmt, AVFormatParameters *ap);
/**
- * Open a media file as input. The codecs are not opened. Only the file
+ * Opens a media file as input. The codecs are not opened. Only the file
* header (if present) is read.
*
* @param ic_ptr The opened media file handle is put here.
@@ -736,17 +793,25 @@ int av_open_input_file(AVFormatContext **ic_ptr, const char *filename,
AVInputFormat *fmt,
int buf_size,
AVFormatParameters *ap);
+
+#if LIBAVFORMAT_VERSION_MAJOR < 53
+/**
+ * @deprecated Use avformat_alloc_context() instead.
+ */
+attribute_deprecated AVFormatContext *av_alloc_format_context(void);
+#endif
+
/**
- * Allocate an AVFormatContext.
+ * Allocates an AVFormatContext.
* Can be freed with av_free() but do not forget to free everything you
* explicitly allocated as well!
*/
-AVFormatContext *av_alloc_format_context(void);
+AVFormatContext *avformat_alloc_context(void);
/**
- * Read packets of a media file to get stream information. This
+ * Reads packets of a media file to get stream information. This
* is useful for file formats with no headers such as MPEG. This
- * function also computes the real frame rate in case of MPEG-2 repeat
+ * function also computes the real framerate in case of MPEG-2 repeat
* frame mode.
* The logical file position is not changed by this function;
* examined packets may be buffered for later processing.
@@ -759,7 +824,7 @@ AVFormatContext *av_alloc_format_context(void);
int av_find_stream_info(AVFormatContext *ic);
/**
- * Read a transport packet from a media file.
+ * Reads a transport packet from a media file.
*
* This function is obsolete and should never be used.
* Use av_read_frame() instead.
@@ -771,7 +836,7 @@ int av_find_stream_info(AVFormatContext *ic);
int av_read_packet(AVFormatContext *s, AVPacket *pkt);
/**
- * Return the next frame of a stream.
+ * Returns the next frame of a stream.
*
* The returned packet is valid
* until the next av_read_frame() or until av_close_input_file() and
@@ -782,7 +847,7 @@ int av_read_packet(AVFormatContext *s, AVPacket *pkt);
* then it contains one frame.
*
* pkt->pts, pkt->dts and pkt->duration are always set to correct
- * values in AVStream.timebase units (and guessed if the format cannot
+ * values in AVStream.time_base units (and guessed if the format cannot
* provide them). pkt->pts can be AV_NOPTS_VALUE if the video format
* has B-frames, so it is better to rely on pkt->dts if you do not
* decompress the payload.
@@ -792,7 +857,7 @@ int av_read_packet(AVFormatContext *s, AVPacket *pkt);
int av_read_frame(AVFormatContext *s, AVPacket *pkt);
/**
- * Seek to the key frame at timestamp.
+ * Seeks to the keyframe at timestamp.
* 'timestamp' in 'stream_index'.
* @param stream_index If stream_index is (-1), a default
* stream is selected, and timestamp is automatically converted
@@ -806,33 +871,61 @@ int av_seek_frame(AVFormatContext *s, int stream_index, int64_t timestamp,
int flags);
/**
- * Start playing a network based stream (e.g. RTSP stream) at the
+ * Seeks to timestamp ts.
+ * Seeking will be done so that the point from which all active streams
+ * can be presented successfully will be closest to ts and within min/max_ts.
+ * Active streams are all streams that have AVStream.discard < AVDISCARD_ALL.
+ *
+ * If flags contain AVSEEK_FLAG_BYTE, then all timestamps are in bytes and
+ * are the file position (this may not be supported by all demuxers).
+ * If flags contain AVSEEK_FLAG_FRAME, then all timestamps are in frames
+ * in the stream with stream_index (this may not be supported by all demuxers).
+ * Otherwise all timestamps are in units of the stream selected by stream_index
+ * or if stream_index is -1, in AV_TIME_BASE units.
+ * If flags contain AVSEEK_FLAG_ANY, then non-keyframes are treated as
+ * keyframes (this may not be supported by all demuxers).
+ *
+ * @param stream_index index of the stream which is used as time base reference
+ * @param min_ts smallest acceptable timestamp
+ * @param ts target timestamp
+ * @param max_ts largest acceptable timestamp
+ * @param flags flags
+ * @returns >=0 on success, error code otherwise
+ *
+ * @NOTE This is part of the new seek API which is still under construction.
+ * Thus do not use this yet. It may change at any time, do not expect
+ * ABI compatibility yet!
+ */
+int avformat_seek_file(AVFormatContext *s, int stream_index, int64_t min_ts, int64_t ts, int64_t max_ts, int flags);
+
+/**
+ * Starts playing a network-based stream (e.g. RTSP stream) at the
* current position.
*/
int av_read_play(AVFormatContext *s);
/**
- * Pause a network based stream (e.g. RTSP stream).
+ * Pauses a network-based stream (e.g. RTSP stream).
*
* Use av_read_play() to resume it.
*/
int av_read_pause(AVFormatContext *s);
/**
- * Free a AVFormatContext allocated by av_open_input_stream.
+ * Frees a AVFormatContext allocated by av_open_input_stream.
* @param s context to free
*/
void av_close_input_stream(AVFormatContext *s);
/**
- * Close a media file (but not its codecs).
+ * Closes a media file (but not its codecs).
*
* @param s media file handle
*/
void av_close_input_file(AVFormatContext *s);
/**
- * Add a new stream to a media file.
+ * Adds a new stream to a media file.
*
* Can only be called in the read_header() function. If the flag
* AVFMTCTX_NOHEADER is in the format context, then new streams
@@ -845,7 +938,7 @@ AVStream *av_new_stream(AVFormatContext *s, int id);
AVProgram *av_new_program(AVFormatContext *s, int id);
/**
- * Add a new chapter.
+ * Adds a new chapter.
* This function is NOT part of the public API
* and should ONLY be used by demuxers.
*
@@ -861,7 +954,7 @@ AVChapter *ff_new_chapter(AVFormatContext *s, int id, AVRational time_base,
int64_t start, int64_t end, const char *title);
/**
- * Set the pts for a given stream.
+ * Sets the pts for a given stream.
*
* @param s stream
* @param pts_wrap_bits number of bits effectively used by the pts
@@ -870,7 +963,7 @@ AVChapter *ff_new_chapter(AVFormatContext *s, int id, AVRational time_base,
* @param pts_den denominator to convert to seconds (MPEG: 90000)
*/
void av_set_pts_info(AVStream *s, int pts_wrap_bits,
- int pts_num, int pts_den);
+ unsigned int pts_num, unsigned int pts_den);
#define AVSEEK_FLAG_BACKWARD 1 ///< seek backward
#define AVSEEK_FLAG_BYTE 2 ///< seeking based on position in bytes
@@ -890,7 +983,7 @@ int av_index_search_timestamp(AVStream *st, int64_t timestamp, int flags);
/**
* Ensures the index uses less memory than the maximum specified in
- * AVFormatContext.max_index_size, by discarding entries if it grows
+ * AVFormatContext.max_index_size by discarding entries if it grows
* too large.
* This function is not part of the public API and should only be called
* by demuxers.
@@ -898,7 +991,7 @@ int av_index_search_timestamp(AVStream *st, int64_t timestamp, int flags);
void ff_reduce_index(AVFormatContext *s, int stream_index);
/**
- * Add an index entry into a sorted list. Update the entry if the list
+ * Adds an index entry into a sorted list. Updates the entry if the list
* already contains it.
*
* @param timestamp timestamp in the time base of the given stream
@@ -945,7 +1038,7 @@ int64_t av_gen_search(AVFormatContext *s, int stream_index,
int av_set_parameters(AVFormatContext *s, AVFormatParameters *ap);
/**
- * Allocate the stream private data and write the stream header to an
+ * Allocates the stream private data and writes the stream header to an
* output media file.
*
* @param s media file handle
@@ -954,7 +1047,7 @@ int av_set_parameters(AVFormatContext *s, AVFormatParameters *ap);
int av_write_header(AVFormatContext *s);
/**
- * Write a packet to an output media file.
+ * Writes a packet to an output media file.
*
* The packet shall contain one audio or video frame.
* The packet must be correctly interleaved according to the container
@@ -971,7 +1064,7 @@ int av_write_frame(AVFormatContext *s, AVPacket *pkt);
* Writes a packet to an output media file ensuring correct interleaving.
*
* The packet must contain one audio or video frame.
- * If the packets are already correctly interleaved the application should
+ * If the packets are already correctly interleaved, the application should
* call av_write_frame() instead as it is slightly faster. It is also important
* to keep in mind that completely non-interleaved input will need huge amounts
* of memory to interleave with this, so it is preferable to interleave at the
@@ -985,10 +1078,10 @@ int av_write_frame(AVFormatContext *s, AVPacket *pkt);
int av_interleaved_write_frame(AVFormatContext *s, AVPacket *pkt);
/**
- * Interleave a packet per dts in an output media file.
+ * Interleaves a packet per dts in an output media file.
*
* Packets with pkt->destruct == av_destruct_packet will be freed inside this
- * function, so they cannot be used after it, note calling av_free_packet()
+ * function, so they cannot be used after it. Note that calling av_free_packet()
* on them is still safe.
*
* @param s media file handle
@@ -1003,8 +1096,8 @@ int av_interleave_packet_per_dts(AVFormatContext *s, AVPacket *out,
AVPacket *pkt, int flush);
/**
- * @brief Write the stream trailer to an output media file and
- * free the file private data.
+ * Writes the stream trailer to an output media file and frees the
+ * file private data.
*
* May only be called after a successful call to av_write_header.
*
@@ -1018,6 +1111,7 @@ void dump_format(AVFormatContext *ic,
const char *url,
int is_output);
+#if LIBAVFORMAT_VERSION_MAJOR < 53
/**
* Parses width and height out of string str.
* @deprecated Use av_parse_video_frame_size instead.
@@ -1026,14 +1120,15 @@ attribute_deprecated int parse_image_size(int *width_ptr, int *height_ptr,
const char *str);
/**
- * Converts frame rate from string to a fraction.
+ * Converts framerate from a string to a fraction.
* @deprecated Use av_parse_video_frame_rate instead.
*/
attribute_deprecated int parse_frame_rate(int *frame_rate, int *frame_rate_base,
const char *arg);
+#endif
/**
- * Parses \p datestr and returns a corresponding number of microseconds.
+ * Parses datestr and returns a corresponding number of microseconds.
* @param datestr String representing a date or a duration.
* - If a date the syntax is:
* @code
@@ -1044,7 +1139,7 @@ attribute_deprecated int parse_frame_rate(int *frame_rate, int *frame_rate_base,
* If the year-month-day part is not specified it takes the current
* year-month-day.
* Returns the number of microseconds since 1st of January, 1970 up to
- * the time of the parsed date or INT64_MIN if \p datestr cannot be
+ * the time of the parsed date or INT64_MIN if datestr cannot be
* successfully parsed.
* - If a duration the syntax is:
* @code
@@ -1052,10 +1147,10 @@ attribute_deprecated int parse_frame_rate(int *frame_rate, int *frame_rate_base,
* [-]S+[.m...]
* @endcode
* Returns the number of microseconds contained in a time interval
- * with the specified duration or INT64_MIN if \p datestr cannot be
+ * with the specified duration or INT64_MIN if datestr cannot be
* successfully parsed.
- * @param duration Flag which tells how to interpret \p datestr, if
- * not zero \p datestr is interpreted as a duration, otherwise as a
+ * @param duration Flag which tells how to interpret datestr, if
+ * not zero datestr is interpreted as a duration, otherwise as a
* date.
*/
int64_t parse_date(const char *datestr, int duration);
@@ -1066,7 +1161,7 @@ int64_t av_gettime(void);
/* ffm-specific for ffserver */
#define FFM_PACKET_SIZE 4096
int64_t ffm_read_write_index(int fd);
-void ffm_write_write_index(int fd, int64_t pos);
+int ffm_write_write_index(int fd, int64_t pos);
void ffm_set_write_index(AVFormatContext *s, int64_t pos, int64_t file_size);
/**
@@ -1078,7 +1173,7 @@ void ffm_set_write_index(AVFormatContext *s, int64_t pos, int64_t file_size);
int find_info_tag(char *arg, int arg_size, const char *tag1, const char *info);
/**
- * Returns in 'buf' the path with '%d' replaced by number.
+ * Returns in 'buf' the path with '%d' replaced by a number.
*
* Also handles the '%0nd' format where 'n' is the total number
* of digits and '%%'.
@@ -1093,7 +1188,7 @@ int av_get_frame_filename(char *buf, int buf_size,
const char *path, int number);
/**
- * Check whether filename actually is a numbered sequence generator.
+ * Checks whether filename actually is a numbered sequence generator.
*
* @param filename possible numbered sequence string
* @return 1 if a valid numbered sequence string, 0 otherwise
@@ -1101,7 +1196,7 @@ int av_get_frame_filename(char *buf, int buf_size,
int av_filename_number_test(const char *filename);
/**
- * Generate an SDP for an RTP session.
+ * Generates an SDP for an RTP session.
*
* @param ac array of AVFormatContexts describing the RTP streams. If the
* array is composed by only one context, such context can contain
@@ -1118,7 +1213,7 @@ int avf_sdp_create(AVFormatContext *ac[], int n_files, char *buff, int size);
#ifdef HAVE_AV_CONFIG_H
-void ff_dynarray_add(unsigned long **tab_ptr, int *nb_ptr, unsigned long elem);
+void ff_dynarray_add(intptr_t **tab_ptr, int *nb_ptr, intptr_t elem);
#ifdef __GNUC__
#define dynarray_add(tab, nb_ptr, elem)\
@@ -1126,12 +1221,12 @@ do {\
__typeof__(tab) _tab = (tab);\
__typeof__(elem) _elem = (elem);\
(void)sizeof(**_tab == _elem); /* check that types are compatible */\
- ff_dynarray_add((unsigned long **)_tab, nb_ptr, (unsigned long)_elem);\
+ ff_dynarray_add((intptr_t **)_tab, nb_ptr, (intptr_t)_elem);\
} while(0)
#else
#define dynarray_add(tab, nb_ptr, elem)\
do {\
- ff_dynarray_add((unsigned long **)(tab), nb_ptr, (unsigned long)(elem));\
+ ff_dynarray_add((intptr_t **)(tab), nb_ptr, (intptr_t)(elem));\
} while(0)
#endif
@@ -1150,6 +1245,12 @@ void url_split(char *proto, int proto_size,
char *path, int path_size,
const char *url);
+/**
+ * Returns a positive value if the given filename has one of the given
+ * extensions, 0 otherwise.
+ *
+ * @param extensions a comma-separated list of filename extensions
+ */
int match_ext(const char *filename, const char *extensions);
#endif /* HAVE_AV_CONFIG_H */
diff --git a/lib-src/ffmpeg/libavformat/avio.h b/lib-src/ffmpeg/libavformat/avio.h
index 687333e..d44e300 100644
--- a/lib-src/ffmpeg/libavformat/avio.h
+++ b/lib-src/ffmpeg/libavformat/avio.h
@@ -1,5 +1,4 @@
/*
- * unbuffered io for ffmpeg system
* copyright (c) 2001 Fabrice Bellard
*
* This file is part of FFmpeg.
@@ -21,8 +20,18 @@
#ifndef AVFORMAT_AVIO_H
#define AVFORMAT_AVIO_H
+/**
+ * @file libavformat/avio.h
+ * unbuffered I/O operations
+ *
+ * @warning This file has to be considered an internal but installed
+ * header, so it should not be directly included in your projects.
+ */
+
#include <stdint.h>
+#include "libavutil/common.h"
+
/* unbuffered I/O */
/**
@@ -32,7 +41,7 @@
* version bump.
* sizeof(URLContext) must not be used outside libav*.
*/
-struct URLContext {
+typedef struct URLContext {
#if LIBAVFORMAT_VERSION_MAJOR >= 53
const AVClass *av_class; ///< information for av_log(). Set by url_open().
#endif
@@ -42,9 +51,7 @@ struct URLContext {
int max_packet_size; /**< if non zero, the stream is packetized with this max packet size */
void *priv_data;
char *filename; /**< specified filename */
-};
-
-typedef struct URLContext URLContext;
+} URLContext;
typedef struct URLPollEntry {
URLContext *handle;
@@ -62,6 +69,7 @@ int url_open_protocol (URLContext **puc, struct URLProtocol *up,
const char *filename, int flags);
int url_open(URLContext **h, const char *filename, int flags);
int url_read(URLContext *h, unsigned char *buf, int size);
+int url_read_complete(URLContext *h, unsigned char *buf, int size);
int url_write(URLContext *h, unsigned char *buf, int size);
int64_t url_seek(URLContext *h, int64_t pos, int whence);
int url_close(URLContext *h);
@@ -69,6 +77,15 @@ int url_exist(const char *filename);
int64_t url_filesize(URLContext *h);
/**
+ * Return the file descriptor associated with this URL. For RTP, this
+ * will return only the RTP file descriptor, not the RTCP file descriptor.
+ * To get both, use rtp_get_file_handles().
+ *
+ * @return the file descriptor associated with this URL, or <0 on error.
+ */
+int url_get_file_handle(URLContext *h);
+
+/**
* Return the maximum packet size associated to packetized file
* handle. If the file is not packetized (stream like HTTP or file on
* disk), then 0 is returned.
@@ -114,8 +131,8 @@ int av_url_read_pause(URLContext *h, int pause);
* @return >= 0 on success
* @see AVInputFormat::read_seek
*/
-int64_t av_url_read_seek(URLContext *h,
- int stream_index, int64_t timestamp, int flags);
+int64_t av_url_read_seek(URLContext *h, int stream_index,
+ int64_t timestamp, int flags);
/**
* Passing this as the "whence" parameter to a seek function causes it to
@@ -133,16 +150,32 @@ typedef struct URLProtocol {
int (*url_close)(URLContext *h);
struct URLProtocol *next;
int (*url_read_pause)(URLContext *h, int pause);
- int64_t (*url_read_seek)(URLContext *h,
- int stream_index, int64_t timestamp, int flags);
+ int64_t (*url_read_seek)(URLContext *h, int stream_index,
+ int64_t timestamp, int flags);
+ int (*url_get_file_handle)(URLContext *h);
} URLProtocol;
+#if LIBAVFORMAT_VERSION_MAJOR < 53
extern URLProtocol *first_protocol;
+#endif
+
extern URLInterruptCB *url_interrupt_cb;
+/**
+ * If protocol is NULL, returns the first registered protocol,
+ * if protocol is non-NULL, returns the next registered protocol after protocol,
+ * or NULL if protocol is the last one.
+ */
URLProtocol *av_protocol_next(URLProtocol *p);
-int register_protocol(URLProtocol *protocol);
+#if LIBAVFORMAT_VERSION_MAJOR < 53
+/**
+ * @deprecated Use av_register_protocol() instead.
+ */
+attribute_deprecated int register_protocol(URLProtocol *protocol);
+#endif
+
+int av_register_protocol(URLProtocol *protocol);
/**
* Bytestream IO Context.
@@ -170,8 +203,8 @@ typedef struct {
unsigned long (*update_checksum)(unsigned long checksum, const uint8_t *buf, unsigned int size);
int error; ///< contains the error code or 0 if no error happened
int (*read_pause)(void *opaque, int pause);
- int64_t (*read_seek)(void *opaque,
- int stream_index, int64_t timestamp, int flags);
+ int64_t (*read_seek)(void *opaque, int stream_index,
+ int64_t timestamp, int flags);
} ByteIOContext;
int init_put_byte(ByteIOContext *s,
@@ -238,8 +271,8 @@ int url_feof(ByteIOContext *s);
int url_ferror(ByteIOContext *s);
int av_url_read_fpause(ByteIOContext *h, int pause);
-int64_t av_url_read_fseek(ByteIOContext *h,
- int stream_index, int64_t timestamp, int flags);
+int64_t av_url_read_fseek(ByteIOContext *h, int stream_index,
+ int64_t timestamp, int flags);
#define URL_EOF (-1)
/** @note return URL_EOF (-1) if EOF */
@@ -253,7 +286,7 @@ int url_fprintf(ByteIOContext *s, const char *fmt, ...);
#endif
/** @note unlike fgets, the EOL character is not returned and a whole
- line is parsed. return NULL if first char read was EOF */
+ line is parsed. return NULL if first char read was EOF */
char *url_fgets(ByteIOContext *s, char *buf, int buf_size);
void put_flush_packet(ByteIOContext *s);
@@ -274,7 +307,7 @@ int get_buffer(ByteIOContext *s, unsigned char *buf, int size);
int get_partial_buffer(ByteIOContext *s, unsigned char *buf, int size);
/** @note return 0 if EOF, so you cannot use it if EOF handling is
- necessary */
+ necessary */
int get_byte(ByteIOContext *s);
unsigned int get_le24(ByteIOContext *s);
unsigned int get_le32(ByteIOContext *s);
@@ -295,7 +328,7 @@ static inline int url_is_streamed(ByteIOContext *s)
}
/** @note when opened as read/write, the buffers are only used for
- writing */
+ writing */
int url_fdopen(ByteIOContext **s, URLContext *h);
/** @warning must be called before any I/O */
@@ -307,7 +340,7 @@ int url_setbufsize(ByteIOContext *s, int buf_size);
int url_resetbuf(ByteIOContext *s, int flags);
/** @note when opened as read/write, the buffers are only used for
- writing */
+ writing */
int url_fopen(ByteIOContext **s, const char *filename, int flags);
int url_fclose(ByteIOContext *s);
URLContext *url_fileno(ByteIOContext *s);
@@ -355,13 +388,18 @@ int url_open_dyn_packet_buf(ByteIOContext **s, int max_packet_size);
*/
int url_close_dyn_buf(ByteIOContext *s, uint8_t **pbuffer);
-unsigned long ff_crc04C11DB7_update(unsigned long checksum, const uint8_t *buf, unsigned int len);
+unsigned long ff_crc04C11DB7_update(unsigned long checksum, const uint8_t *buf,
+ unsigned int len);
unsigned long get_checksum(ByteIOContext *s);
-void init_checksum(ByteIOContext *s, unsigned long (*update_checksum)(unsigned long c, const uint8_t *p, unsigned int len), unsigned long checksum);
+void init_checksum(ByteIOContext *s,
+ unsigned long (*update_checksum)(unsigned long c, const uint8_t *p, unsigned int len),
+ unsigned long checksum);
/* udp.c */
int udp_set_remote_url(URLContext *h, const char *uri);
int udp_get_local_port(URLContext *h);
+#if (LIBAVFORMAT_VERSION_MAJOR <= 52)
int udp_get_file_handle(URLContext *h);
+#endif
#endif /* AVFORMAT_AVIO_H */
diff --git a/lib-src/ffmpeg/libavutil/avutil.h b/lib-src/ffmpeg/libavutil/avutil.h
index 801eb51..fac1f5e 100644
--- a/lib-src/ffmpeg/libavutil/avutil.h
+++ b/lib-src/ffmpeg/libavutil/avutil.h
@@ -22,7 +22,7 @@
#define AVUTIL_AVUTIL_H
/**
- * @file avutil.h
+ * @file libavutil/avutil.h
* external API header
*/
@@ -34,8 +34,8 @@
#define AV_VERSION_DOT(a, b, c) a ##.## b ##.## c
#define AV_VERSION(a, b, c) AV_VERSION_DOT(a, b, c)
-#define LIBAVUTIL_VERSION_MAJOR 49
-#define LIBAVUTIL_VERSION_MINOR 11
+#define LIBAVUTIL_VERSION_MAJOR 50
+#define LIBAVUTIL_VERSION_MINOR 3
#define LIBAVUTIL_VERSION_MICRO 0
#define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \
@@ -58,90 +58,6 @@ unsigned avutil_version(void);
#include "rational.h"
#include "intfloat_readwrite.h"
#include "log.h"
-
-/**
- * Pixel format. Notes:
- *
- * PIX_FMT_RGB32 is handled in an endian-specific manner. A RGBA
- * color is put together as:
- * (A << 24) | (R << 16) | (G << 8) | B
- * This is stored as BGRA on little endian CPU architectures and ARGB on
- * big endian CPUs.
- *
- * When the pixel format is palettized RGB (PIX_FMT_PAL8), the palettized
- * image data is stored in AVFrame.data[0]. The palette is transported in
- * AVFrame.data[1] and, is 1024 bytes long (256 4-byte entries) and is
- * formatted the same as in PIX_FMT_RGB32 described above (i.e., it is
- * also endian-specific). Note also that the individual RGB palette
- * components stored in AVFrame.data[1] should be in the range 0..255.
- * This is important as many custom PAL8 video codecs that were designed
- * to run on the IBM VGA graphics adapter use 6-bit palette components.
- */
-enum PixelFormat {
- PIX_FMT_NONE= -1,
- PIX_FMT_YUV420P, ///< Planar YUV 4:2:0, 12bpp, (1 Cr & Cb sample per 2x2 Y samples)
- PIX_FMT_YUYV422, ///< Packed YUV 4:2:2, 16bpp, Y0 Cb Y1 Cr
- PIX_FMT_RGB24, ///< Packed RGB 8:8:8, 24bpp, RGBRGB...
- PIX_FMT_BGR24, ///< Packed RGB 8:8:8, 24bpp, BGRBGR...
- PIX_FMT_YUV422P, ///< Planar YUV 4:2:2, 16bpp, (1 Cr & Cb sample per 2x1 Y samples)
- PIX_FMT_YUV444P, ///< Planar YUV 4:4:4, 24bpp, (1 Cr & Cb sample per 1x1 Y samples)
- PIX_FMT_RGB32, ///< Packed RGB 8:8:8, 32bpp, (msb)8A 8R 8G 8B(lsb), in cpu endianness
- PIX_FMT_YUV410P, ///< Planar YUV 4:1:0, 9bpp, (1 Cr & Cb sample per 4x4 Y samples)
- PIX_FMT_YUV411P, ///< Planar YUV 4:1:1, 12bpp, (1 Cr & Cb sample per 4x1 Y samples)
- PIX_FMT_RGB565, ///< Packed RGB 5:6:5, 16bpp, (msb) 5R 6G 5B(lsb), in cpu endianness
- PIX_FMT_RGB555, ///< Packed RGB 5:5:5, 16bpp, (msb)1A 5R 5G 5B(lsb), in cpu endianness most significant bit to 0
- PIX_FMT_GRAY8, ///< Y , 8bpp
- PIX_FMT_MONOWHITE, ///< Y , 1bpp, 0 is white, 1 is black
- PIX_FMT_MONOBLACK, ///< Y , 1bpp, 0 is black, 1 is white
- PIX_FMT_PAL8, ///< 8 bit with PIX_FMT_RGB32 palette
- PIX_FMT_YUVJ420P, ///< Planar YUV 4:2:0, 12bpp, full scale (jpeg)
- PIX_FMT_YUVJ422P, ///< Planar YUV 4:2:2, 16bpp, full scale (jpeg)
- PIX_FMT_YUVJ444P, ///< Planar YUV 4:4:4, 24bpp, full scale (jpeg)
- PIX_FMT_XVMC_MPEG2_MC,///< XVideo Motion Acceleration via common packet passing(xvmc_render.h)
- PIX_FMT_XVMC_MPEG2_IDCT,
- PIX_FMT_UYVY422, ///< Packed YUV 4:2:2, 16bpp, Cb Y0 Cr Y1
- PIX_FMT_UYYVYY411, ///< Packed YUV 4:1:1, 12bpp, Cb Y0 Y1 Cr Y2 Y3
- PIX_FMT_BGR32, ///< Packed RGB 8:8:8, 32bpp, (msb)8A 8B 8G 8R(lsb), in cpu endianness
- PIX_FMT_BGR565, ///< Packed RGB 5:6:5, 16bpp, (msb) 5B 6G 5R(lsb), in cpu endianness
- PIX_FMT_BGR555, ///< Packed RGB 5:5:5, 16bpp, (msb)1A 5B 5G 5R(lsb), in cpu endianness most significant bit to 1
- PIX_FMT_BGR8, ///< Packed RGB 3:3:2, 8bpp, (msb)2B 3G 3R(lsb)
- PIX_FMT_BGR4, ///< Packed RGB 1:2:1, 4bpp, (msb)1B 2G 1R(lsb)
- PIX_FMT_BGR4_BYTE, ///< Packed RGB 1:2:1, 8bpp, (msb)1B 2G 1R(lsb)
- PIX_FMT_RGB8, ///< Packed RGB 3:3:2, 8bpp, (msb)2R 3G 3B(lsb)
- PIX_FMT_RGB4, ///< Packed RGB 1:2:1, 4bpp, (msb)1R 2G 1B(lsb)
- PIX_FMT_RGB4_BYTE, ///< Packed RGB 1:2:1, 8bpp, (msb)1R 2G 1B(lsb)
- PIX_FMT_NV12, ///< Planar YUV 4:2:0, 12bpp, 1 plane for Y and 1 for UV
- PIX_FMT_NV21, ///< as above, but U and V bytes are swapped
-
- PIX_FMT_RGB32_1, ///< Packed RGB 8:8:8, 32bpp, (msb)8R 8G 8B 8A(lsb), in cpu endianness
- PIX_FMT_BGR32_1, ///< Packed RGB 8:8:8, 32bpp, (msb)8B 8G 8R 8A(lsb), in cpu endianness
-
- PIX_FMT_GRAY16BE, ///< Y , 16bpp, big-endian
- PIX_FMT_GRAY16LE, ///< Y , 16bpp, little-endian
- PIX_FMT_YUV440P, ///< Planar YUV 4:4:0 (1 Cr & Cb sample per 1x2 Y samples)
- PIX_FMT_YUVJ440P, ///< Planar YUV 4:4:0 full scale (jpeg)
- PIX_FMT_YUVA420P, ///< Planar YUV 4:2:0, 20bpp, (1 Cr & Cb sample per 2x2 Y & A samples)
- PIX_FMT_NB, ///< number of pixel formats, DO NOT USE THIS if you want to link with shared libav* because the number of formats might differ between versions
-};
-
-#ifdef WORDS_BIGENDIAN
-#define PIX_FMT_RGBA PIX_FMT_RGB32_1
-#define PIX_FMT_BGRA PIX_FMT_BGR32_1
-#define PIX_FMT_ARGB PIX_FMT_RGB32
-#define PIX_FMT_ABGR PIX_FMT_BGR32
-#define PIX_FMT_GRAY16 PIX_FMT_GRAY16BE
-#else
-#define PIX_FMT_RGBA PIX_FMT_BGR32
-#define PIX_FMT_BGRA PIX_FMT_RGB32
-#define PIX_FMT_ARGB PIX_FMT_BGR32_1
-#define PIX_FMT_ABGR PIX_FMT_RGB32_1
-#define PIX_FMT_GRAY16 PIX_FMT_GRAY16LE
-#endif
-
-#if LIBAVUTIL_VERSION_INT < (50<<16)
-#define PIX_FMT_UYVY411 PIX_FMT_UYYVYY411
-#define PIX_FMT_RGBA32 PIX_FMT_RGB32
-#define PIX_FMT_YUV422 PIX_FMT_YUYV422
-#endif
+#include "pixfmt.h"
#endif /* AVUTIL_AVUTIL_H */
diff --git a/lib-src/ffmpeg/libavutil/common.h b/lib-src/ffmpeg/libavutil/common.h
index 42fe951..5f47572 100644
--- a/lib-src/ffmpeg/libavutil/common.h
+++ b/lib-src/ffmpeg/libavutil/common.h
@@ -19,30 +19,30 @@
*/
/**
- * @file common.h
+ * @file libavutil/common.h
* common internal and external API header
*/
#ifndef AVUTIL_COMMON_H
#define AVUTIL_COMMON_H
+#include <ctype.h>
+#include <errno.h>
#include <inttypes.h>
-
-#ifdef HAVE_AV_CONFIG_H
-/* only include the following when compiling package */
-# include "config.h"
-
-# include <stdlib.h>
-# include <stdio.h>
-# include <string.h>
-# include <ctype.h>
-# include <limits.h>
-# include <errno.h>
-# include <math.h>
-#endif /* HAVE_AV_CONFIG_H */
+#include <limits.h>
+#include <math.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
+#ifdef __GNUC__
+# define AV_GCC_VERSION_AT_LEAST(x,y) (__GNUC__ > x || __GNUC__ == x && __GNUC_MINOR__ >= y)
+#else
+# define AV_GCC_VERSION_AT_LEAST(x,y) 0
+#endif
#ifndef av_always_inline
-#if defined(__GNUC__) && (__GNUC__ > 3 || __GNUC__ == 3 && __GNUC_MINOR__ > 0)
+#if AV_GCC_VERSION_AT_LEAST(3,1)
# define av_always_inline __attribute__((always_inline)) inline
#else
# define av_always_inline inline
@@ -50,7 +50,7 @@
#endif
#ifndef av_noinline
-#if defined(__GNUC__) && (__GNUC__ > 3 || __GNUC__ == 3 && __GNUC_MINOR__ > 0)
+#if AV_GCC_VERSION_AT_LEAST(3,1)
# define av_noinline __attribute__((noinline))
#else
# define av_noinline
@@ -58,7 +58,7 @@
#endif
#ifndef av_pure
-#if defined(__GNUC__) && (__GNUC__ > 3 || __GNUC__ == 3 && __GNUC_MINOR__ > 0)
+#if AV_GCC_VERSION_AT_LEAST(3,1)
# define av_pure __attribute__((pure))
#else
# define av_pure
@@ -66,7 +66,7 @@
#endif
#ifndef av_const
-#if defined(__GNUC__) && (__GNUC__ > 2 || __GNUC__ == 2 && __GNUC_MINOR__ > 5)
+#if AV_GCC_VERSION_AT_LEAST(2,6)
# define av_const __attribute__((const))
#else
# define av_const
@@ -74,19 +74,23 @@
#endif
#ifndef av_cold
-#if defined(__GNUC__) && (__GNUC__ > 4 || __GNUC__ == 4 && __GNUC_MINOR__ > 2)
+#if (!defined(__ICC) || __ICC > 1110) && AV_GCC_VERSION_AT_LEAST(4,3)
# define av_cold __attribute__((cold))
#else
# define av_cold
#endif
#endif
-#ifdef HAVE_AV_CONFIG_H
-# include "internal.h"
-#endif /* HAVE_AV_CONFIG_H */
+#ifndef av_flatten
+#if (!defined(__ICC) || __ICC > 1110) && AV_GCC_VERSION_AT_LEAST(4,1)
+# define av_flatten __attribute__((flatten))
+#else
+# define av_flatten
+#endif
+#endif
#ifndef attribute_deprecated
-#if defined(__GNUC__) && (__GNUC__ > 3 || __GNUC__ == 3 && __GNUC_MINOR__ > 0)
+#if AV_GCC_VERSION_AT_LEAST(3,1)
# define attribute_deprecated __attribute__((deprecated))
#else
# define attribute_deprecated
@@ -101,9 +105,15 @@
#endif
#endif
-#include "mem.h"
+#ifndef av_uninit
+#if defined(__GNUC__) && !defined(__ICC)
+# define av_uninit(x) x=x
+#else
+# define av_uninit(x) x
+#endif
+#endif
-//rounded divison & shift
+//rounded division & shift
#define RSHIFT(a,b) ((a) > 0 ? ((a) + ((1<<(b))>>1))>>(b) : ((a) + ((1<<(b))>>1)-1)>>(b))
/* assume b>0 */
#define ROUNDED_DIV(a,b) (((a)>0 ? (a) + ((b)>>1) : (a) - ((b)>>1))/(b))
@@ -116,6 +126,8 @@
#define FFMIN3(a,b,c) FFMIN(FFMIN(a,b),c)
#define FFSWAP(type,a,b) do{type SWAP_tmp= b; b= a; a= SWAP_tmp;}while(0)
+#define FF_ARRAY_ELEMS(a) (sizeof(a) / sizeof((a)[0]))
+#define FFALIGN(x, a) (((x)+(a)-1)&~((a)-1))
/* misc math functions */
extern const uint8_t ff_log2_tab[256];
@@ -148,49 +160,8 @@ static inline av_const int av_log2_16bit(unsigned int v)
return n;
}
-/* median of 3 */
-static inline av_const int mid_pred(int a, int b, int c)
-{
-#ifdef HAVE_CMOV
- int i=b;
- asm volatile(
- "cmp %2, %1 \n\t"
- "cmovg %1, %0 \n\t"
- "cmovg %2, %1 \n\t"
- "cmp %3, %1 \n\t"
- "cmovl %3, %1 \n\t"
- "cmp %1, %0 \n\t"
- "cmovg %1, %0 \n\t"
- :"+&r"(i), "+&r"(a)
- :"r"(b), "r"(c)
- );
- return i;
-#elif 0
- int t= (a-b)&((a-b)>>31);
- a-=t;
- b+=t;
- b-= (b-c)&((b-c)>>31);
- b+= (a-b)&((a-b)>>31);
-
- return b;
-#else
- if(a>b){
- if(c>b){
- if(c>a) b=a;
- else b=c;
- }
- }else{
- if(b>c){
- if(c>a) b=c;
- else b=a;
- }
- }
- return b;
-#endif
-}
-
/**
- * clip a signed integer value into the amin-amax range
+ * Clips a signed integer value into the amin-amax range.
* @param a value to clip
* @param amin minimum value of the clip range
* @param amax maximum value of the clip range
@@ -204,7 +175,7 @@ static inline av_const int av_clip(int a, int amin, int amax)
}
/**
- * clip a signed integer value into the 0-255 range
+ * Clips a signed integer value into the 0-255 range.
* @param a value to clip
* @return clipped value
*/
@@ -215,7 +186,7 @@ static inline av_const uint8_t av_clip_uint8(int a)
}
/**
- * clip a signed integer value into the -32768,32767 range
+ * Clips a signed integer value into the -32768,32767 range.
* @param a value to clip
* @return clipped value
*/
@@ -226,7 +197,7 @@ static inline av_const int16_t av_clip_int16(int a)
}
/**
- * clip a float value into the amin-amax range
+ * Clips a float value into the amin-amax range.
* @param a value to clip
* @param amin minimum value of the clip range
* @param amax maximum value of the clip range
@@ -239,26 +210,12 @@ static inline av_const float av_clipf(float a, float amin, float amax)
else return a;
}
-/* math */
-int64_t av_const ff_gcd(int64_t a, int64_t b);
-
-/**
- * converts fourcc string to int
- */
-static inline av_pure int ff_get_fourcc(const char *s){
-#ifdef HAVE_AV_CONFIG_H
- assert( strlen(s)==4 );
-#endif
-
- return (s[0]) + (s[1]<<8) + (s[2]<<16) + (s[3]<<24);
-}
-
#define MKTAG(a,b,c,d) (a | (b << 8) | (c << 16) | (d << 24))
#define MKBETAG(a,b,c,d) (d | (c << 8) | (b << 16) | (a << 24))
/*!
* \def GET_UTF8(val, GET_BYTE, ERROR)
- * converts a UTF-8 character (up to 4 bytes long) to its 32-bit UCS-4 encoded form
+ * Converts a UTF-8 character (up to 4 bytes long) to its 32-bit UCS-4 encoded form
* \param val is the output and should be of type uint32_t. It holds the converted
* UCS-4 character and should be a left value.
* \param GET_BYTE gets UTF-8 encoded bytes from any proper source. It can be
@@ -286,19 +243,19 @@ static inline av_pure int ff_get_fourcc(const char *s){
/*!
* \def PUT_UTF8(val, tmp, PUT_BYTE)
- * converts a 32-bit unicode character to its UTF-8 encoded form (up to 4 bytes long).
- * \param val is an input only argument and should be of type uint32_t. It holds
- * a ucs4 encoded unicode character that is to be converted to UTF-8. If
- * val is given as a function it's executed only once.
+ * Converts a 32-bit Unicode character to its UTF-8 encoded form (up to 4 bytes long).
+ * \param val is an input-only argument and should be of type uint32_t. It holds
+ * a UCS-4 encoded Unicode character that is to be converted to UTF-8. If
+ * val is given as a function it is executed only once.
* \param tmp is a temporary variable and should be of type uint8_t. It
* represents an intermediate value during conversion that is to be
- * outputted by PUT_BYTE.
+ * output by PUT_BYTE.
* \param PUT_BYTE writes the converted UTF-8 bytes to any proper destination.
* It could be a function or a statement, and uses tmp as the input byte.
* For example, PUT_BYTE could be "*output++ = tmp;" PUT_BYTE will be
* executed up to 4 times for values in the valid UTF-8 range and up to
* 7 times in the general case, depending on the length of the converted
- * unicode character.
+ * Unicode character.
*/
#define PUT_UTF8(val, tmp, PUT_BYTE)\
{\
@@ -320,96 +277,11 @@ static inline av_pure int ff_get_fourcc(const char *s){
}\
}
-#if defined(ARCH_X86) || defined(ARCH_POWERPC) || defined(ARCH_BFIN)
-#define AV_READ_TIME read_time
-#if defined(ARCH_X86_64)
-static inline uint64_t read_time(void)
-{
- uint64_t a, d;
- asm volatile("rdtsc\n\t"
- : "=a" (a), "=d" (d));
- return (d << 32) | (a & 0xffffffff);
-}
-#elif defined(ARCH_X86_32)
-static inline long long read_time(void)
-{
- long long l;
- asm volatile("rdtsc\n\t"
- : "=A" (l));
- return l;
-}
-#elif ARCH_BFIN
-static inline uint64_t read_time(void)
-{
- union {
- struct {
- unsigned lo;
- unsigned hi;
- } p;
- unsigned long long c;
- } t;
- asm volatile ("%0=cycles; %1=cycles2;" : "=d" (t.p.lo), "=d" (t.p.hi));
- return t.c;
-}
-#else //FIXME check ppc64
-static inline uint64_t read_time(void)
-{
- uint32_t tbu, tbl, temp;
-
- /* from section 2.2.1 of the 32-bit PowerPC PEM */
- asm volatile(
- "1:\n"
- "mftbu %2\n"
- "mftb %0\n"
- "mftbu %1\n"
- "cmpw %2,%1\n"
- "bne 1b\n"
- : "=r"(tbl), "=r"(tbu), "=r"(temp)
- :
- : "cc");
-
- return (((uint64_t)tbu)<<32) | (uint64_t)tbl;
-}
-#endif
-#elif defined(HAVE_GETHRTIME)
-#define AV_READ_TIME gethrtime
-#endif
-
-#ifdef AV_READ_TIME
-#define START_TIMER \
-uint64_t tend;\
-uint64_t tstart= AV_READ_TIME();\
-
-#define STOP_TIMER(id) \
-tend= AV_READ_TIME();\
-{\
- static uint64_t tsum=0;\
- static int tcount=0;\
- static int tskip_count=0;\
- if(tcount<2 || tend - tstart < FFMAX(8*tsum/tcount, 2000)){\
- tsum+= tend - tstart;\
- tcount++;\
- }else\
- tskip_count++;\
- if(((tcount+tskip_count)&(tcount+tskip_count-1))==0){\
- av_log(NULL, AV_LOG_ERROR, "%"PRIu64" dezicycles in %s, %d runs, %d skips\n",\
- tsum*10/tcount, id, tcount, tskip_count);\
- }\
-}
-#else
-#define START_TIMER
-#define STOP_TIMER(id) {}
-#endif
+#include "mem.h"
-/**
- * Returns NULL if CONFIG_SMALL is defined otherwise the argument
- * without modifications, used to disable the definition of strings
- * (for example AVCodec long_names).
- */
-#ifdef CONFIG_SMALL
-# define NULL_IF_CONFIG_SMALL(x) NULL
-#else
-# define NULL_IF_CONFIG_SMALL(x) x
-#endif
+#ifdef HAVE_AV_CONFIG_H
+# include "config.h"
+# include "internal.h"
+#endif /* HAVE_AV_CONFIG_H */
#endif /* AVUTIL_COMMON_H */
diff --git a/lib-src/ffmpeg/libavutil/fifo.h b/lib-src/ffmpeg/libavutil/fifo.h
index 37338ca..a904dfd 100644
--- a/lib-src/ffmpeg/libavutil/fifo.h
+++ b/lib-src/ffmpeg/libavutil/fifo.h
@@ -17,28 +17,29 @@
*/
/**
- * @file fifo.h
- * A very simple circular buffer FIFO implementation.
+ * @file libavutil/fifo.h
+ * a very simple circular buffer FIFO implementation
*/
#ifndef AVUTIL_FIFO_H
#define AVUTIL_FIFO_H
#include <stdint.h>
+#include "avutil.h"
#include "common.h"
typedef struct AVFifoBuffer {
uint8_t *buffer;
uint8_t *rptr, *wptr, *end;
+ uint32_t rndx, wndx;
} AVFifoBuffer;
/**
* Initializes an AVFifoBuffer.
- * @param *f AVFifoBuffer to initialize
* @param size of FIFO
- * @return <0 for failure >=0 otherwise
+ * @return AVFifoBuffer or NULL if mem allocation failure
*/
-int av_fifo_init(AVFifoBuffer *f, unsigned int size);
+AVFifoBuffer *av_fifo_alloc(unsigned int size);
/**
* Frees an AVFifoBuffer.
@@ -47,6 +48,12 @@ int av_fifo_init(AVFifoBuffer *f, unsigned int size);
void av_fifo_free(AVFifoBuffer *f);
/**
+ * Resets the AVFifoBuffer to the state right after av_fifo_alloc, in particular it is emptied.
+ * @param *f AVFifoBuffer to reset
+ */
+void av_fifo_reset(AVFifoBuffer *f);
+
+/**
* Returns the amount of data in bytes in the AVFifoBuffer, that is the
* amount of data you can read from it.
* @param *f AVFifoBuffer to read from
@@ -55,59 +62,41 @@ void av_fifo_free(AVFifoBuffer *f);
int av_fifo_size(AVFifoBuffer *f);
/**
- * Reads data from an AVFifoBuffer.
- * @param *f AVFifoBuffer to read from
- * @param *buf data destination
- * @param buf_size number of bytes to read
+ * Returns the amount of space in bytes in the AVFifoBuffer, that is the
+ * amount of data you can write into it.
+ * @param *f AVFifoBuffer to write into
+ * @return size
*/
-int av_fifo_read(AVFifoBuffer *f, uint8_t *buf, int buf_size);
+int av_fifo_space(AVFifoBuffer *f);
/**
- * Feeds data from an AVFifoBuffer to a user supplied callback.
+ * Feeds data from an AVFifoBuffer to a user-supplied callback.
* @param *f AVFifoBuffer to read from
* @param buf_size number of bytes to read
* @param *func generic read function
* @param *dest data destination
*/
-int av_fifo_generic_read(AVFifoBuffer *f, int buf_size, void (*func)(void*, void*, int), void* dest);
-
-/**
- * Writes data into an AVFifoBuffer.
- * @param *f AVFifoBuffer to write to
- * @param *buf data source
- * @param size data size
- */
-attribute_deprecated void av_fifo_write(AVFifoBuffer *f, const uint8_t *buf, int size);
+int av_fifo_generic_read(AVFifoBuffer *f, void *dest, int buf_size, void (*func)(void*, void*, int));
/**
- * Feeds data from a user supplied callback to an AVFifoBuffer.
+ * Feeds data from a user-supplied callback to an AVFifoBuffer.
* @param *f AVFifoBuffer to write to
* @param *src data source
* @param size number of bytes to write
- * @param *func generic write function. First parameter is src,
- * second is dest_buf, third is dest_buf_size.
+ * @param *func generic write function; the first parameter is src,
+ * the second is dest_buf, the third is dest_buf_size.
* func must return the number of bytes written to dest_buf, or <= 0 to
* indicate no more data available to write.
* If func is NULL, src is interpreted as a simple byte array for source data.
- * @return the number of bytes written to the fifo.
+ * @return the number of bytes written to the FIFO
*/
int av_fifo_generic_write(AVFifoBuffer *f, void *src, int size, int (*func)(void*, void*, int));
-#if LIBAVUTIL_VERSION_MAJOR < 50
-/**
- * Resizes an AVFifoBuffer.
- * @param *f AVFifoBuffer to resize
- * @param size new AVFifoBuffer size in bytes
- * @see av_fifo_realloc2()
- */
-attribute_deprecated void av_fifo_realloc(AVFifoBuffer *f, unsigned int size);
-#endif
-
/**
* Resizes an AVFifoBuffer.
* @param *f AVFifoBuffer to resize
* @param size new AVFifoBuffer size in bytes
- * @return <0 for failure >=0 otherwise
+ * @return <0 for failure, >=0 otherwise
*/
int av_fifo_realloc2(AVFifoBuffer *f, unsigned int size);
diff --git a/lib-src/ffmpeg/libavutil/log.h b/lib-src/ffmpeg/libavutil/log.h
index 152e773..6a7a279 100644
--- a/lib-src/ffmpeg/libavutil/log.h
+++ b/lib-src/ffmpeg/libavutil/log.h
@@ -22,9 +22,10 @@
#define AVUTIL_LOG_H
#include <stdarg.h>
+#include "avutil.h"
/**
- * Describes the class of an AVClass context structure, that is an
+ * Describes the class of an AVClass context structure. That is an
* arbitrary struct of which the first field is a pointer to an
* AVClass struct (e.g. AVCodecContext, AVFormatContext etc.).
*/
@@ -37,8 +38,8 @@ struct AVCLASS {
const char* class_name;
/**
- * a pointer to a function which returns the name of a context
- * instance \p ctx associated with the class
+ * A pointer to a function which returns the name of a context
+ * instance ctx associated with the class.
*/
const char* (*item_name)(void* ctx);
@@ -52,38 +53,29 @@ struct AVCLASS {
/* av_log API */
-#if LIBAVUTIL_VERSION_INT < (50<<16)
-#define AV_LOG_QUIET -1
-#define AV_LOG_FATAL 0
-#define AV_LOG_ERROR 0
-#define AV_LOG_WARNING 1
-#define AV_LOG_INFO 1
-#define AV_LOG_VERBOSE 1
-#define AV_LOG_DEBUG 2
-#else
#define AV_LOG_QUIET -8
/**
- * something went really wrong and we will crash now
+ * Something went really wrong and we will crash now.
*/
#define AV_LOG_PANIC 0
/**
- * something went wrong and recovery is not possible
- * like no header in a format which depends on it or a combination
- * of parameters which are not allowed
+ * Something went wrong and recovery is not possible.
+ * For example, no header was found for a format which depends
+ * on headers or an illegal combination of parameters is used.
*/
#define AV_LOG_FATAL 8
/**
- * something went wrong and cannot losslessly be recovered
- * but not all future data is affected
+ * Something went wrong and cannot losslessly be recovered.
+ * However, not all future data is affected.
*/
#define AV_LOG_ERROR 16
/**
- * something somehow does not look correct / something which may or may not
- * lead to some problems like use of -vstrict -2
+ * Something somehow does not look correct. This may or may not
+ * lead to problems. An example would be the use of '-vstrict -2'.
*/
#define AV_LOG_WARNING 24
@@ -91,18 +83,13 @@ struct AVCLASS {
#define AV_LOG_VERBOSE 40
/**
- * stuff which is only useful for libav* developers
+ * Stuff which is only useful for libav* developers.
*/
#define AV_LOG_DEBUG 48
-#endif
-
-#if LIBAVUTIL_VERSION_INT < (50<<16)
-extern int av_log_level;
-#endif
/**
- * Send the specified message to the log if the level is less than or equal to
- * the current av_log_level. By default, all logging messages are sent to
+ * Sends the specified message to the log if the level is less than or equal
+ * to the current av_log_level. By default, all logging messages are sent to
* stderr. This behavior can be altered by setting a different av_vlog callback
* function.
*
diff --git a/lib-src/ffmpeg/libavutil/mathematics.h b/lib-src/ffmpeg/libavutil/mathematics.h
index 7438527..782efcc 100644
--- a/lib-src/ffmpeg/libavutil/mathematics.h
+++ b/lib-src/ffmpeg/libavutil/mathematics.h
@@ -23,6 +23,7 @@
#include <stdint.h>
#include <math.h>
+#include "common.h"
#include "rational.h"
#ifndef M_E
@@ -42,27 +43,29 @@
#endif
enum AVRounding {
- AV_ROUND_ZERO = 0, ///< round toward zero
- AV_ROUND_INF = 1, ///< round away from zero
- AV_ROUND_DOWN = 2, ///< round toward -infinity
- AV_ROUND_UP = 3, ///< round toward +infinity
- AV_ROUND_NEAR_INF = 5, ///< round to nearest and halfway cases away from zero
+ AV_ROUND_ZERO = 0, ///< Round toward zero.
+ AV_ROUND_INF = 1, ///< Round away from zero.
+ AV_ROUND_DOWN = 2, ///< Round toward -infinity.
+ AV_ROUND_UP = 3, ///< Round toward +infinity.
+ AV_ROUND_NEAR_INF = 5, ///< Round to nearest and halfway cases away from zero.
};
+int64_t av_const av_gcd(int64_t a, int64_t b);
+
/**
- * rescale a 64bit integer with rounding to nearest.
- * a simple a*b/c isn't possible as it can overflow
+ * Rescales a 64-bit integer with rounding to nearest.
+ * A simple a*b/c isn't possible as it can overflow.
*/
int64_t av_rescale(int64_t a, int64_t b, int64_t c) av_const;
/**
- * rescale a 64bit integer with specified rounding.
- * a simple a*b/c isn't possible as it can overflow
+ * Rescales a 64-bit integer with specified rounding.
+ * A simple a*b/c isn't possible as it can overflow.
*/
int64_t av_rescale_rnd(int64_t a, int64_t b, int64_t c, enum AVRounding) av_const;
/**
- * rescale a 64bit integer by 2 rational numbers.
+ * Rescales a 64-bit integer by 2 rational numbers.
*/
int64_t av_rescale_q(int64_t a, AVRational bq, AVRational cq) av_const;
diff --git a/lib-src/ffmpeg/libavutil/mem.h b/lib-src/ffmpeg/libavutil/mem.h
index a02c7e1..37ba276 100644
--- a/lib-src/ffmpeg/libavutil/mem.h
+++ b/lib-src/ffmpeg/libavutil/mem.h
@@ -19,13 +19,15 @@
*/
/**
- * @file mem.h
- * Memory handling functions.
+ * @file libavutil/mem.h
+ * memory handling functions
*/
#ifndef AVUTIL_MEM_H
#define AVUTIL_MEM_H
+#include "common.h"
+
#if defined(__ICC) || defined(__SUNPRO_C)
#define DECLARE_ALIGNED(n,t,v) t v __attribute__ ((aligned (n)))
#define DECLARE_ASM_CONST(n,t,v) const t __attribute__ ((aligned (n))) v
@@ -35,51 +37,50 @@
#elif defined(_MSC_VER)
#define DECLARE_ALIGNED(n,t,v) __declspec(align(n)) t v
#define DECLARE_ASM_CONST(n,t,v) __declspec(align(n)) static const t v
-#elif defined(HAVE_INLINE_ASM)
- #error The asm code needs alignment, but we do not know how to do it for this compiler.
#else
#define DECLARE_ALIGNED(n,t,v) t v
#define DECLARE_ASM_CONST(n,t,v) static const t v
#endif
-#if defined(__GNUC__) && (__GNUC__ > 3 || __GNUC__ == 3 && __GNUC_MINOR__ > 0)
+
+#if AV_GCC_VERSION_AT_LEAST(3,1)
#define av_malloc_attrib __attribute__((__malloc__))
#else
#define av_malloc_attrib
#endif
-#if defined(__GNUC__) && (__GNUC__ > 4 || __GNUC__ == 4 && __GNUC_MINOR__ > 2)
+#if (!defined(__ICC) || __ICC > 1110) && AV_GCC_VERSION_AT_LEAST(4,3)
#define av_alloc_size(n) __attribute__((alloc_size(n)))
#else
#define av_alloc_size(n)
#endif
/**
- * Allocate a block of \p size bytes with alignment suitable for all
+ * Allocates a block of size bytes with alignment suitable for all
* memory accesses (including vectors if available on the CPU).
* @param size Size in bytes for the memory block to be allocated.
- * @return Pointer to the allocated block, NULL if it cannot allocate
- * it.
+ * @return Pointer to the allocated block, NULL if the block cannot
+ * be allocated.
* @see av_mallocz()
*/
void *av_malloc(unsigned int size) av_malloc_attrib av_alloc_size(1);
/**
- * Allocate or reallocate a block of memory.
- * If \p ptr is NULL and \p size > 0, allocate a new block. If \p
- * size is zero, free the memory block pointed by \p ptr.
+ * Allocates or reallocates a block of memory.
+ * If ptr is NULL and size > 0, allocates a new block. If \p
+ * size is zero, frees the memory block pointed to by ptr.
* @param size Size in bytes for the memory block to be allocated or
* reallocated.
* @param ptr Pointer to a memory block already allocated with
* av_malloc(z)() or av_realloc() or NULL.
- * @return Pointer to a newly reallocated block or NULL if it cannot
- * reallocate or the function is used to free the memory block.
+ * @return Pointer to a newly reallocated block or NULL if the block
+ * cannot be reallocated or the function is used to free the memory block.
* @see av_fast_realloc()
*/
void *av_realloc(void *ptr, unsigned int size) av_alloc_size(2);
/**
- * Free a memory block which has been allocated with av_malloc(z)() or
+ * Frees a memory block which has been allocated with av_malloc(z)() or
* av_realloc().
* @param ptr Pointer to the memory block which should be freed.
* @note ptr = NULL is explicitly allowed.
@@ -89,27 +90,26 @@ void *av_realloc(void *ptr, unsigned int size) av_alloc_size(2);
void av_free(void *ptr);
/**
- * Allocate a block of \p size bytes with alignment suitable for all
+ * Allocates a block of size bytes with alignment suitable for all
* memory accesses (including vectors if available on the CPU) and
- * set to zeroes all the bytes of the block.
+ * zeroes all the bytes of the block.
* @param size Size in bytes for the memory block to be allocated.
- * @return Pointer to the allocated block, NULL if it cannot allocate
- * it.
+ * @return Pointer to the allocated block, NULL if it cannot be allocated.
* @see av_malloc()
*/
void *av_mallocz(unsigned int size) av_malloc_attrib av_alloc_size(1);
/**
- * Duplicate the string \p s.
- * @param s String to be duplicated.
+ * Duplicates the string s.
+ * @param s string to be duplicated
* @return Pointer to a newly allocated string containing a
- * copy of \p s or NULL if it cannot be allocated.
+ * copy of s or NULL if the string cannot be allocated.
*/
char *av_strdup(const char *s) av_malloc_attrib;
/**
- * Free a memory block which has been allocated with av_malloc(z)() or
- * av_realloc() and set to NULL the pointer to it.
+ * Frees a memory block which has been allocated with av_malloc(z)() or
+ * av_realloc() and set the pointer pointing to it to NULL.
* @param ptr Pointer to the pointer to the memory block which should
* be freed.
* @see av_free()
diff --git a/lib-src/ffmpeg/libavutil/rational.h b/lib-src/ffmpeg/libavutil/rational.h
index 70b7735..0f415ed 100644
--- a/lib-src/ffmpeg/libavutil/rational.h
+++ b/lib-src/ffmpeg/libavutil/rational.h
@@ -1,5 +1,5 @@
/*
- * Rational numbers
+ * rational numbers
* Copyright (c) 2003 Michael Niedermayer <michaelni at gmx.at>
*
* This file is part of FFmpeg.
@@ -20,8 +20,8 @@
*/
/**
- * @file rational.h
- * Rational numbers.
+ * @file libavutil/rational.h
+ * rational numbers
* @author Michael Niedermayer <michaelni at gmx.at>
*/
@@ -32,7 +32,7 @@
#include "common.h"
/**
- * Rational number num/den.
+ * rational number numerator/denominator
*/
typedef struct AVRational{
int num; ///< numerator
@@ -40,10 +40,10 @@ typedef struct AVRational{
} AVRational;
/**
- * Compare two rationals.
+ * Compares two rationals.
* @param a first rational
* @param b second rational
- * @return 0 if a==b, 1 if a>b and -1 if a<b.
+ * @return 0 if a==b, 1 if a>b and -1 if a<b
*/
static inline int av_cmp_q(AVRational a, AVRational b){
const int64_t tmp= a.num * (int64_t)b.den - b.num * (int64_t)a.den;
@@ -53,7 +53,7 @@ static inline int av_cmp_q(AVRational a, AVRational b){
}
/**
- * Rational to double conversion.
+ * Converts rational to double.
* @param a rational to convert
* @return (double) a
*/
@@ -62,46 +62,46 @@ static inline double av_q2d(AVRational a){
}
/**
- * Reduce a fraction.
+ * Reduces a fraction.
* This is useful for framerate calculations.
- * @param dst_nom destination numerator
+ * @param dst_num destination numerator
* @param dst_den destination denominator
- * @param nom source numerator
+ * @param num source numerator
* @param den source denominator
- * @param max the maximum allowed for dst_nom & dst_den
+ * @param max the maximum allowed for dst_num & dst_den
* @return 1 if exact, 0 otherwise
*/
-int av_reduce(int *dst_nom, int *dst_den, int64_t nom, int64_t den, int64_t max);
+int av_reduce(int *dst_num, int *dst_den, int64_t num, int64_t den, int64_t max);
/**
* Multiplies two rationals.
- * @param b first rational.
- * @param c second rational.
- * @return b*c.
+ * @param b first rational
+ * @param c second rational
+ * @return b*c
*/
AVRational av_mul_q(AVRational b, AVRational c) av_const;
/**
* Divides one rational by another.
- * @param b first rational.
- * @param c second rational.
- * @return b/c.
+ * @param b first rational
+ * @param c second rational
+ * @return b/c
*/
AVRational av_div_q(AVRational b, AVRational c) av_const;
/**
* Adds two rationals.
- * @param b first rational.
- * @param c second rational.
- * @return b+c.
+ * @param b first rational
+ * @param c second rational
+ * @return b+c
*/
AVRational av_add_q(AVRational b, AVRational c) av_const;
/**
* Subtracts one rational from another.
- * @param b first rational.
- * @param c second rational.
- * @return b-c.
+ * @param b first rational
+ * @param c second rational
+ * @return b-c
*/
AVRational av_sub_q(AVRational b, AVRational c) av_const;
@@ -109,18 +109,18 @@ AVRational av_sub_q(AVRational b, AVRational c) av_const;
* Converts a double precision floating point number to a rational.
* @param d double to convert
* @param max the maximum allowed numerator and denominator
- * @return (AVRational) d.
+ * @return (AVRational) d
*/
AVRational av_d2q(double d, int max) av_const;
/**
- * @return 1 if \q1 is nearer to \p q than \p q2, -1 if \p q2 is nearer
- * than \p q1, 0 if they have the same distance.
+ * @return 1 if q1 is nearer to q than q2, -1 if q2 is nearer
+ * than q1, 0 if they have the same distance.
*/
int av_nearer_q(AVRational q, AVRational q1, AVRational q2);
/**
- * Finds the nearest value in \p q_list to \p q.
+ * Finds the nearest value in q_list to q.
* @param q_list an array of rationals terminated by {0, 0}
* @return the index of the nearest value found in the array
*/
diff --git a/lib-src/lib-widget-extra/Makefile.in b/lib-src/lib-widget-extra/Makefile.in
index c38638c..c1e445b 100644
--- a/lib-src/lib-widget-extra/Makefile.in
+++ b/lib-src/lib-widget-extra/Makefile.in
@@ -82,6 +82,9 @@ clean:
rm -rf $(OBJS)
rm -f $(LIBFILE) $(EXTRAS)
+distclean: clean
+ rm -f config.log config.status Makefile
+
#
# Rule for compiling C++ files
#
diff --git a/lib-src/libnyquist/LICENSE.txt b/lib-src/libnyquist/LICENSE.txt
index b0f2dae..622eebd 100644
--- a/lib-src/libnyquist/LICENSE.txt
+++ b/lib-src/libnyquist/LICENSE.txt
@@ -13,116 +13,4 @@ If any modifications affect Nyx or Audacity, please send these
modifications to the Audacity developers, otherwise contact
Roger Dannenberg directly.
-The full license for Nyquist follows.
-
-LICENSE INFORMATION
-
-Nyquist is built upon and derived from XLISP. Both are copyrighted software.
-Two copyright notices and licenses appear below.
-
--------------------------------------------------------------------------------
-COPYRIGHT AND LICENSE INFORMATION FOR NYQUIST
-
-Copyright (c) 2000-2002, by Roger B. Dannenberg
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
-Redistributions of source code must retain the above copyright notice, this
-list of conditions and the following disclaimer.
-
-Redistributions of source code must retain the copyright notice, the
-list of conditions, and the disclaimer, all three of which appear below under
-"COPYRIGHT AND LICENSE INFORMATION FOR XLISP."
-
-Redistributions in binary form must reproduce the above copyright notice, this
-list of conditions and the following disclaimer in the documentation and/or
-other materials provided with the distribution.
-
-Redistributions in binary form must reproduce the copyright notice, the
-list of conditions, and the disclaimer, all three of which appear below under
-"COPYRIGHT AND LICENSE INFORMATION FOR XLISP," in the documentation and/or
-other materials provided with the distribution.
-
-Neither the name of Roger B. Dannenberg, Carnegie Mellon University, nor the
-names of any contributors may be used to endorse or promote products derived
-from this software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS "AS IS" AND
-ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
-ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-What follows is not a part of the license:
-
-Please send bug fixes and improvements to me at the address below.
-
-Please do not distribute modified versions of Nyquist without permission.
-
-Any redistribution of Nyquist should include a notice that Nyquist can be
-obtained free from http://www.cs.cmu.edu/~music.
-
-In addition, as a courtesy, I ask that you send me a copy of any product that
-makes substantial use of Nyquist. Please contact me at the address below for my
-current mailing address. I am asking this because I enjoy learning about
-applications of my software.
-
-When Nyquist is used to generate music and conduct research, please mention
-and acknowledge the use of Nyquist in program notes, acknowledgement sections
-of papers, and whereever thanks or credits would normally be given.
-
-Roger B. Dannenberg
-
-roger.dannenberg at cs.cmu.edu
-
---------------------------------------------------------------------------------
-COPYRIGHT AND LICENSE INFORMATION FOR XLISP
-
-Copyright (c) 1984-2002, by David Michael Betz
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-Redistributions of source code must retain the above copyright notice, this list
-of conditions and the following disclaimer.
-
-Redistributions in binary form must reproduce the above copyright notice, this
-list of conditions and the following disclaimer in the documentation and/or
-other materials provided with the distribution.
-
-Neither the name of David Michael Betz nor the names of any contributors may be
-used to endorse or promote products derived from this software without specific
-prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS "AS IS" AND
-ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
-ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-What follows is not a part of the license:
-
-Please send bug fixes and improvements to me at the address below.
-
-In addition, as a courtesy, I ask that you send me a copy of any product that
-makes substantial use of XLISP. Please contact me at the address below for my
-current mailing address. I am asking this because I enjoy learning about
-applications of my software.
-
-David Betz
-
-dbetz at xlisper.mv.com
-
+Refer to nyquist/license.txt for Nyquist licensing details.
diff --git a/lib-src/libnyquist/Makefile.in b/lib-src/libnyquist/Makefile.in
index 4045789..d268729 100644
--- a/lib-src/libnyquist/Makefile.in
+++ b/lib-src/libnyquist/Makefile.in
@@ -1,523 +1,3845 @@
-#
-# Makefile for libnyquist on Unix
-#
-
-# Standard list of includes (common to all unix versions)
-INCL = -Inyqsrc -Itran -Ixlisp -Icmt -Isys -Isnd -Ifft
-
+# Makefile.in generated by automake 1.10.2 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+ at SET_MAKE@
+
+# Makefile(.in) for portSMF using Autotools (but not libtool).
+# Written by Richard Ash following Gary Vaughan's Autobook
+
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+subdir = .
+DIST_COMMON = $(am__configure_deps) $(srcdir)/Makefile.am \
+ $(srcdir)/Makefile.in $(top_srcdir)/configure \
+ autotools/depcomp autotools/install-sh autotools/missing
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = \
+ $(top_srcdir)/autotools/m4/ax_cflags_strict_prototypes.m4 \
+ $(top_srcdir)/autotools/m4/ax_cflags_warn_all.m4 \
+ $(top_srcdir)/autotools/m4/ax_cxx_check_flag.m4 \
+ $(top_srcdir)/autotools/m4/ax_cxxcpp_check_flag.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
+ configure.lineno config.status.lineno
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+ *) f=$$p;; \
+ esac;
+am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__installdirs = "$(DESTDIR)$(libdir)"
+libLIBRARIES_INSTALL = $(INSTALL_DATA)
+LIBRARIES = $(lib_LIBRARIES)
+AR = ar
+ARFLAGS = cru
+libnyquist_a_AR = $(AR) $(ARFLAGS)
+libnyquist_a_LIBADD =
+am_libnyquist_a_OBJECTS = extern.$(OBJEXT) xldmem.$(OBJEXT) \
+ xlbfun.$(OBJEXT) xlcont.$(OBJEXT) xldbug.$(OBJEXT) \
+ xleval.$(OBJEXT) xlfio.$(OBJEXT) xlftab.$(OBJEXT) \
+ xlglob.$(OBJEXT) xlimage.$(OBJEXT) xlinit.$(OBJEXT) \
+ xlio.$(OBJEXT) xlisp.$(OBJEXT) xljump.$(OBJEXT) \
+ xllist.$(OBJEXT) xlmath.$(OBJEXT) xlobj.$(OBJEXT) \
+ xlpp.$(OBJEXT) xlprin.$(OBJEXT) xlread.$(OBJEXT) \
+ xlstr.$(OBJEXT) xlsubr.$(OBJEXT) xlsym.$(OBJEXT) \
+ xlsys.$(OBJEXT) path.$(OBJEXT) abs.$(OBJEXT) \
+ allpoles.$(OBJEXT) alpass.$(OBJEXT) alpasscv.$(OBJEXT) \
+ alpassvv.$(OBJEXT) amosc.$(OBJEXT) areson.$(OBJEXT) \
+ aresonvc.$(OBJEXT) aresoncv.$(OBJEXT) aresonvv.$(OBJEXT) \
+ atone.$(OBJEXT) atonev.$(OBJEXT) biquadfilt.$(OBJEXT) \
+ buzz.$(OBJEXT) chase.$(OBJEXT) clip.$(OBJEXT) congen.$(OBJEXT) \
+ const.$(OBJEXT) coterm.$(OBJEXT) delaycc.$(OBJEXT) \
+ delaycv.$(OBJEXT) eqbandvvv.$(OBJEXT) exp.$(OBJEXT) \
+ follow.$(OBJEXT) fmosc.$(OBJEXT) fromobject.$(OBJEXT) \
+ fromarraystream.$(OBJEXT) gate.$(OBJEXT) ifft.$(OBJEXT) \
+ instrclar.$(OBJEXT) instrclarall.$(OBJEXT) \
+ instrclarfreq.$(OBJEXT) instrsax.$(OBJEXT) \
+ instrsaxall.$(OBJEXT) instrsaxfreq.$(OBJEXT) \
+ integrate.$(OBJEXT) log.$(OBJEXT) lpreson.$(OBJEXT) \
+ maxv.$(OBJEXT) offset.$(OBJEXT) oneshot.$(OBJEXT) \
+ osc.$(OBJEXT) partial.$(OBJEXT) pluck.$(OBJEXT) prod.$(OBJEXT) \
+ pwl.$(OBJEXT) quantize.$(OBJEXT) recip.$(OBJEXT) \
+ reson.$(OBJEXT) resonvc.$(OBJEXT) resoncv.$(OBJEXT) \
+ resonvv.$(OBJEXT) sampler.$(OBJEXT) scale.$(OBJEXT) \
+ shape.$(OBJEXT) sine.$(OBJEXT) siosc.$(OBJEXT) slope.$(OBJEXT) \
+ sqrt.$(OBJEXT) tapf.$(OBJEXT) tapv.$(OBJEXT) tone.$(OBJEXT) \
+ tonev.$(OBJEXT) upsample.$(OBJEXT) white.$(OBJEXT) \
+ stkrev.$(OBJEXT) stkpitshift.$(OBJEXT) stkchorus.$(OBJEXT) \
+ instrbow.$(OBJEXT) instrbowedfreq.$(OBJEXT) \
+ instrbanded.$(OBJEXT) instrmandolin.$(OBJEXT) \
+ instrsitar.$(OBJEXT) instrmodalbar.$(OBJEXT) \
+ instrflute.$(OBJEXT) instrflutefreq.$(OBJEXT) \
+ instrfluteall.$(OBJEXT) fmfb.$(OBJEXT) fmfbv.$(OBJEXT) \
+ cext.$(OBJEXT) cleanup.$(OBJEXT) cmdline.$(OBJEXT) \
+ cmtcmd.$(OBJEXT) moxc.$(OBJEXT) mem.$(OBJEXT) \
+ midifile.$(OBJEXT) midifns.$(OBJEXT) record.$(OBJEXT) \
+ seq.$(OBJEXT) seqmread.$(OBJEXT) seqmwrite.$(OBJEXT) \
+ seqread.$(OBJEXT) seqwrite.$(OBJEXT) tempomap.$(OBJEXT) \
+ timebase.$(OBJEXT) userio.$(OBJEXT) debug.$(OBJEXT) \
+ falloc.$(OBJEXT) local.$(OBJEXT) handlers.$(OBJEXT) \
+ multiread.$(OBJEXT) seqext.$(OBJEXT) seqinterf.$(OBJEXT) \
+ stats.$(OBJEXT) ffilterkit.$(OBJEXT) sliders.$(OBJEXT) \
+ sound.$(OBJEXT) add.$(OBJEXT) avg.$(OBJEXT) compose.$(OBJEXT) \
+ convolve.$(OBJEXT) downsample.$(OBJEXT) fft.$(OBJEXT) \
+ inverse.$(OBJEXT) multiseq.$(OBJEXT) resamp.$(OBJEXT) \
+ resampv.$(OBJEXT) samples.$(OBJEXT) sndmax.$(OBJEXT) \
+ sndread.$(OBJEXT) sndseq.$(OBJEXT) sndwritepa.$(OBJEXT) \
+ yin.$(OBJEXT) trigger.$(OBJEXT) lpanal.$(OBJEXT) \
+ Generator.$(OBJEXT) SineWave.$(OBJEXT) Function.$(OBJEXT) \
+ FileRead.$(OBJEXT) FileWvIn.$(OBJEXT) Effect.$(OBJEXT) \
+ Clarinet.$(OBJEXT) Delay.$(OBJEXT) DelayL.$(OBJEXT) \
+ Envelope.$(OBJEXT) Filter.$(OBJEXT) Instrmnt.$(OBJEXT) \
+ Noise.$(OBJEXT) OneZero.$(OBJEXT) ReedTable.$(OBJEXT) \
+ Saxofony.$(OBJEXT) Stk.$(OBJEXT) WaveLoop.$(OBJEXT) \
+ WvIn.$(OBJEXT) NRev.$(OBJEXT) JCRev.$(OBJEXT) PRCRev.$(OBJEXT) \
+ PitShift.$(OBJEXT) Chorus.$(OBJEXT) Bowed.$(OBJEXT) \
+ BowTable.$(OBJEXT) ADSR.$(OBJEXT) OnePole.$(OBJEXT) \
+ BiQuad.$(OBJEXT) BandedWG.$(OBJEXT) DelayA.$(OBJEXT) \
+ Mandolin.$(OBJEXT) PluckTwo.$(OBJEXT) Sitar.$(OBJEXT) \
+ ModalBar.$(OBJEXT) Modal.$(OBJEXT) Flute.$(OBJEXT) \
+ JetTable.$(OBJEXT) PoleZero.$(OBJEXT) stkinit.$(OBJEXT) \
+ instr.$(OBJEXT) stkint.$(OBJEXT) fftext.$(OBJEXT) \
+ fftlib.$(OBJEXT) matlib.$(OBJEXT) sndfnint.$(OBJEXT) \
+ seqfnint.$(OBJEXT) nyx.$(OBJEXT)
+libnyquist_a_OBJECTS = $(am_libnyquist_a_OBJECTS)
+DEFAULT_INCLUDES = -I. at am__isrc@
+depcomp = $(SHELL) $(top_srcdir)/autotools/depcomp
+am__depfiles_maybe = depfiles
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
+CXXLD = $(CXX)
+CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
+ -o $@
+SOURCES = $(libnyquist_a_SOURCES)
+DIST_SOURCES = $(libnyquist_a_SOURCES)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+distdir = $(PACKAGE)-$(VERSION)
+top_distdir = $(distdir)
+am__remove_distdir = \
+ { test ! -d $(distdir) \
+ || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
+ && rm -fr $(distdir); }; }
+DIST_ARCHIVES = $(distdir).tar.gz
+GZIP_ENV = --best
+distuninstallcheck_listfiles = find . -type f -print
+distcleancheck_listfiles = find . -type f -print
+ACLOCAL = @ACLOCAL@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
CC = @CC@
-CFLAGS += -DCMTSTUFF -DEXT @CFLAGS@ $(INCL)
-
-INTGEN = misc/intgen
-
-OBJECTS = nyx/nyx.o \
- xlisp/path.o \
- xlisp/extern.o xlisp/xldmem.o xlisp/xlbfun.o xlisp/xlcont.o \
- xlisp/xldbug.o xlisp/xleval.o xlisp/xlfio.o xlisp/xlftab.o \
- xlisp/xlglob.o xlisp/xlimage.o xlisp/xlinit.o xlisp/xlio.o \
- xlisp/xlisp.o xlisp/xljump.o xlisp/xllist.o xlisp/xlmath.o \
- xlisp/xlobj.o xlisp/xlpp.o xlisp/xlprin.o xlisp/xlread.o \
- xlisp/xlstr.o xlisp/xlsubr.o xlisp/xlsym.o xlisp/xlsys.o \
- tran/amosc.o tran/clip.o tran/const.o tran/fmosc.o \
- tran/integrate.o tran/log.o tran/maxv.o tran/osc.o \
- tran/prod.o tran/buzz.o tran/pwl.o tran/recip.o \
- tran/upsample.o tran/scale.o tran/sine.o tran/partial.o \
- tran/white.o tran/tone.o tran/tonev.o tran/atonev.o \
- tran/atone.o tran/reson.o tran/areson.o tran/resonvc.o \
- tran/resoncv.o tran/aresonvc.o tran/aresoncv.o tran/resonvv.o \
- tran/aresonvv.o tran/offset.o tran/slope.o tran/delay.o \
- tran/delaycv.o tran/shape.o tran/sampler.o tran/exp.o \
- tran/siosc.o tran/follow.o tran/gate.o tran/quantize.o \
- tran/ifft.o tran/congen.o tran/fromobject.o tran/fromarraystream.o \
- tran/coterm.o tran/convolve.o tran/alpass.o tran/oneshot.o \
- tran/chase.o tran/tapv.o tran/biquad.o tran/pluck.o \
- tran/abs.o tran/sqrt.o tran/alpasscv.o tran/alpassvc.o \
- cmt/cext.o cmt/cleanup.o cmt/cmdline.o cmt/cmtcmd.o \
- cmt/moxc.o cmt/mem.o cmt/midifile.o cmt/midifns.o \
- cmt/record.o cmt/seq.o cmt/seqmread.o cmt/seqmwrite.o \
- cmt/seqread.o cmt/seqwrite.o cmt/tempomap.o cmt/timebase.o \
- cmt/userio.o nyqsrc/debug.o nyqsrc/falloc.o nyqsrc/add.o \
- nyqsrc/local.o nyqsrc/downsample.o nyqsrc/handlers.o nyqsrc/multiread.o \
- nyqsrc/multiseq.o nyqsrc/samples.o nyqsrc/seqext.o nyqsrc/seqinterf.o \
- nyqsrc/sndread.o nyqsrc/sndseq.o nyqsrc/sndwrite.o nyqsrc/sndmax.o \
- nyqsrc/sound.o nyqsrc/stats.o nyqsrc/compose.o nyqsrc/inverse.o \
- nyqsrc/resamp.o nyqsrc/resampv.o nyqsrc/ffilterkit.o nyqsrc/avg.o \
- nyqsrc/fft.o nyqsrc/sndfail.o fft/fftn.o nyqsrc/sndfnint.o \
- nyqsrc/seqfnint.o snd/audionone.o snd/sndlinux.o snd/ieeecvt.o \
- snd/snd.o snd/sndcvt.o snd/sndio.o snd/sndheader.o \
- sys/term.o
-
-# Sound functions to add to xlisp
-NYQHDRS = snd/snd.h nyqsrc/sound.h nyqsrc/downsample.h nyqsrc/sndread.h \
- nyqsrc/sndseq.h nyqsrc/add.h nyqsrc/multiseq.h nyqsrc/samples.h \
- nyqsrc/sndwrite.h nyqsrc/sndmax.h nyqsrc/compose.h nyqsrc/inverse.h \
- nyqsrc/resamp.h nyqsrc/resampv.h nyqsrc/fft.h nyqsrc/avg.h \
- tran/amosc.h tran/clip.h tran/const.h tran/fmosc.h \
- tran/integrate.h tran/log.h tran/maxv.h tran/osc.h \
- tran/prod.h tran/buzz.h tran/pwl.h tran/recip.h \
- tran/upsample.h tran/scale.h tran/sine.h tran/partial.h \
- tran/white.h tran/tone.h tran/tonev.h tran/atonev.h \
- tran/atone.h tran/reson.h tran/areson.h tran/resonvc.h \
- tran/resoncv.h tran/aresonvc.h tran/aresoncv.h tran/resonvv.h \
- tran/aresonvv.h tran/offset.h tran/slope.h tran/delay.h \
- tran/delaycv.h tran/shape.h tran/sampler.h tran/exp.h \
- tran/siosc.h tran/follow.h tran/gate.h tran/quantize.h \
- tran/ifft.h tran/congen.h tran/fromobject.h tran/fromarraystream.h \
- tran/coterm.h tran/convolve.h tran/alpass.h tran/oneshot.h \
- tran/chase.h tran/tapv.h tran/biquad.h tran/pluck.h \
- tran/abs.h tran/sqrt.h tran/alpasscv.h tran/alpassvc.h
-
-CMTHDRS = cmt/seqdecls.h nyqsrc/seqext.h cmt/seq.h nyqsrc/seqinterf.h \
- cmt/seqread.h cmt/seqmread.h cmt/seqwrite.h cmt/seqmwrite.h
-
-EVERYTHING = libnyquist.a
-
-CURRENT = $(EVERYTHING)
-
-current: $(CURRENT)
-
-libnyquist.a: $(OBJECTS)
- ar ruv libnyquist.a $(OBJECTS)
- ranlib libnyquist.a
-
-nyqsrc/debug.o: nyqsrc/debug.c nyqsrc/debug.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c nyqsrc/debug.c -o nyqsrc/debug.o $(CFLAGS)
-
-nyqsrc/falloc.o: nyqsrc/falloc.c nyqsrc/falloc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c nyqsrc/falloc.c -o nyqsrc/falloc.o $(CFLAGS)
-
-nyqsrc/add.o: nyqsrc/add.c nyqsrc/add.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c nyqsrc/add.c -o nyqsrc/add.o $(CFLAGS)
-
-nyqsrc/local.o: nyqsrc/local.c xlisp/xlisp.h nyqsrc/sound.h
- $(CC) -c nyqsrc/local.c -o nyqsrc/local.o $(CFLAGS)
-
-nyqsrc/downsample.o: nyqsrc/downsample.c nyqsrc/downsample.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c nyqsrc/downsample.c -o nyqsrc/downsample.o $(CFLAGS)
-
-nyqsrc/handlers.o: nyqsrc/handlers.c
- $(CC) -c nyqsrc/handlers.c -o nyqsrc/handlers.o $(CFLAGS)
-
-nyqsrc/multiread.o: nyqsrc/multiread.c nyqsrc/multiread.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c nyqsrc/multiread.c -o nyqsrc/multiread.o $(CFLAGS)
-
-nyqsrc/multiseq.o: nyqsrc/multiseq.c nyqsrc/multiseq.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c nyqsrc/multiseq.c -o nyqsrc/multiseq.o $(CFLAGS)
-
-nyqsrc/samples.o: nyqsrc/samples.c nyqsrc/samples.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c nyqsrc/samples.c -o nyqsrc/samples.o $(CFLAGS)
-
-nyqsrc/seqext.o: nyqsrc/seqext.c nyqsrc/seqext.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c nyqsrc/seqext.c -o nyqsrc/seqext.o $(CFLAGS)
-
-nyqsrc/seqinterf.o: nyqsrc/seqinterf.c nyqsrc/seqinterf.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c nyqsrc/seqinterf.c -o nyqsrc/seqinterf.o $(CFLAGS)
-
-nyqsrc/sndread.o: nyqsrc/sndread.c nyqsrc/sndread.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c nyqsrc/sndread.c -o nyqsrc/sndread.o $(CFLAGS)
-
-nyqsrc/sndseq.o: nyqsrc/sndseq.c nyqsrc/sndseq.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c nyqsrc/sndseq.c -o nyqsrc/sndseq.o $(CFLAGS)
-
-nyqsrc/sndwrite.o: nyqsrc/sndwrite.c nyqsrc/sndwrite.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c nyqsrc/sndwrite.c -o nyqsrc/sndwrite.o $(CFLAGS)
-
-nyqsrc/sndmax.o: nyqsrc/sndmax.c nyqsrc/sndmax.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c nyqsrc/sndmax.c -o nyqsrc/sndmax.o $(CFLAGS)
-
-nyqsrc/sound.o: nyqsrc/sound.c nyqsrc/sound.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c nyqsrc/sound.c -o nyqsrc/sound.o $(CFLAGS)
-
-nyqsrc/stats.o: nyqsrc/stats.c nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c nyqsrc/stats.c -o nyqsrc/stats.o $(CFLAGS)
-
-nyqsrc/compose.o: nyqsrc/compose.c nyqsrc/compose.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c nyqsrc/compose.c -o nyqsrc/compose.o $(CFLAGS)
-
-nyqsrc/inverse.o: nyqsrc/inverse.c nyqsrc/inverse.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c nyqsrc/inverse.c -o nyqsrc/inverse.o $(CFLAGS)
-
-nyqsrc/resamp.o: nyqsrc/resamp.c nyqsrc/resamp.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c nyqsrc/resamp.c -o nyqsrc/resamp.o $(CFLAGS)
-
-nyqsrc/resampv.o: nyqsrc/resampv.c nyqsrc/resampv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c nyqsrc/resampv.c -o nyqsrc/resampv.o $(CFLAGS)
-
-nyqsrc/ffilterkit.o: nyqsrc/ffilterkit.c nyqsrc/ffilterkit.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c nyqsrc/ffilterkit.c -o nyqsrc/ffilterkit.o $(CFLAGS)
-
-nyqsrc/avg.o: nyqsrc/avg.c nyqsrc/avg.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c nyqsrc/avg.c -o nyqsrc/avg.o $(CFLAGS)
-
-nyqsrc/fft.o: nyqsrc/fft.c nyqsrc/fft.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c nyqsrc/fft.c -o nyqsrc/fft.o $(CFLAGS)
-
-nyqsrc/sndfail.o: nyqsrc/sndfail.c
- $(CC) -c nyqsrc/sndfail.c -o nyqsrc/sndfail.o $(CFLAGS)
-
-snd/audionone.o: snd/audionone.c snd/snd.h
- $(CC) -c snd/audionone.c -o snd/audionone.o $(CFLAGS)
-
-snd/sndlinux.o: snd/sndlinux.c snd/sndlinux.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c snd/sndlinux.c -o snd/sndlinux.o $(CFLAGS)
-
-snd/ieeecvt.o: snd/ieeecvt.c snd/ieeecvt.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c snd/ieeecvt.c -o snd/ieeecvt.o $(CFLAGS)
-
-snd/snd.o: snd/snd.c snd/snd.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c snd/snd.c -o snd/snd.o $(CFLAGS)
-
-snd/sndcvt.o: snd/sndcvt.c snd/snd.h
- $(CC) -c snd/sndcvt.c -o snd/sndcvt.o $(CFLAGS)
-
-snd/sndio.o: snd/sndio.c snd/snd.h
- $(CC) -c snd/sndio.c -o snd/sndio.o $(CFLAGS)
-
-snd/sndheader.o: snd/sndheader.c snd/sndheader.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c snd/sndheader.c -o snd/sndheader.o $(CFLAGS)
-
-fft/fftn.o: fft/fftn.c fft/fftn.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c fft/fftn.c -o fft/fftn.o $(CFLAGS)
-
-tran/amosc.o: tran/amosc.c tran/amosc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/amosc.c -o tran/amosc.o $(CFLAGS)
-
-tran/clip.o: tran/clip.c tran/clip.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/clip.c -o tran/clip.o $(CFLAGS)
-
-tran/const.o: tran/const.c tran/const.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/const.c -o tran/const.o $(CFLAGS)
-
-tran/fmosc.o: tran/fmosc.c tran/fmosc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/fmosc.c -o tran/fmosc.o $(CFLAGS)
-
-tran/integrate.o: tran/integrate.c tran/integrate.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/integrate.c -o tran/integrate.o $(CFLAGS)
-
-tran/log.o: tran/log.c tran/log.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/log.c -o tran/log.o $(CFLAGS)
-
-tran/maxv.o: tran/maxv.c tran/maxv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/maxv.c -o tran/maxv.o $(CFLAGS)
-
-tran/osc.o: tran/osc.c tran/osc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/osc.c -o tran/osc.o $(CFLAGS)
-
-tran/prod.o: tran/prod.c tran/prod.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/prod.c -o tran/prod.o $(CFLAGS)
-
-tran/buzz.o: tran/buzz.c tran/buzz.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/buzz.c -o tran/buzz.o $(CFLAGS)
-
-tran/pwl.o: tran/pwl.c tran/pwl.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/pwl.c -o tran/pwl.o $(CFLAGS)
-
-tran/recip.o: tran/recip.c tran/recip.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/recip.c -o tran/recip.o $(CFLAGS)
-
-tran/upsample.o: tran/upsample.c tran/upsample.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/upsample.c -o tran/upsample.o $(CFLAGS)
-
-tran/scale.o: tran/scale.c tran/scale.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/scale.c -o tran/scale.o $(CFLAGS)
-
-tran/sine.o: tran/sine.c tran/sine.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/sine.c -o tran/sine.o $(CFLAGS)
-
-tran/partial.o: tran/partial.c tran/partial.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/partial.c -o tran/partial.o $(CFLAGS)
-
-tran/white.o: tran/white.c tran/white.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/white.c -o tran/white.o $(CFLAGS)
-
-tran/tone.o: tran/tone.c tran/tone.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/tone.c -o tran/tone.o $(CFLAGS)
-
-tran/tonev.o: tran/tonev.c tran/tonev.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/tonev.c -o tran/tonev.o $(CFLAGS)
-
-tran/atonev.o: tran/atonev.c tran/atonev.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/atonev.c -o tran/atonev.o $(CFLAGS)
-
-tran/atone.o: tran/atone.c tran/atone.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/atone.c -o tran/atone.o $(CFLAGS)
-
-tran/reson.o: tran/reson.c tran/reson.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/reson.c -o tran/reson.o $(CFLAGS)
-
-tran/areson.o: tran/areson.c tran/areson.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/areson.c -o tran/areson.o $(CFLAGS)
-
-tran/resonvc.o: tran/resonvc.c tran/resonvc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/resonvc.c -o tran/resonvc.o $(CFLAGS)
-
-tran/resoncv.o: tran/resoncv.c tran/resoncv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/resoncv.c -o tran/resoncv.o $(CFLAGS)
-
-tran/aresonvc.o: tran/aresonvc.c tran/aresonvc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/aresonvc.c -o tran/aresonvc.o $(CFLAGS)
-
-tran/aresoncv.o: tran/aresoncv.c tran/aresoncv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/aresoncv.c -o tran/aresoncv.o $(CFLAGS)
-
-tran/resonvv.o: tran/resonvv.c tran/resonvv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/resonvv.c -o tran/resonvv.o $(CFLAGS)
-
-tran/aresonvv.o: tran/aresonvv.c tran/aresonvv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/aresonvv.c -o tran/aresonvv.o $(CFLAGS)
-
-tran/offset.o: tran/offset.c tran/offset.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/offset.c -o tran/offset.o $(CFLAGS)
-
-tran/slope.o: tran/slope.c tran/slope.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/slope.c -o tran/slope.o $(CFLAGS)
-
-tran/delay.o: tran/delay.c tran/delay.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/delay.c -o tran/delay.o $(CFLAGS)
-
-tran/delaycv.o: tran/delaycv.c tran/delaycv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/delaycv.c -o tran/delaycv.o $(CFLAGS)
-
-tran/shape.o: tran/shape.c tran/shape.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/shape.c -o tran/shape.o $(CFLAGS)
-
-tran/sampler.o: tran/sampler.c tran/sampler.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/sampler.c -o tran/sampler.o $(CFLAGS)
-
-tran/exp.o: tran/exp.c tran/exp.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/exp.c -o tran/exp.o $(CFLAGS)
-
-tran/siosc.o: tran/siosc.c tran/siosc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/siosc.c -o tran/siosc.o $(CFLAGS)
-
-tran/follow.o: tran/follow.c tran/follow.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/follow.c -o tran/follow.o $(CFLAGS)
-
-tran/gate.o: tran/gate.c tran/gate.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/gate.c -o tran/gate.o $(CFLAGS)
-
-tran/quantize.o: tran/quantize.c tran/quantize.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/quantize.c -o tran/quantize.o $(CFLAGS)
-
-tran/ifft.o: tran/ifft.c tran/ifft.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/ifft.c -o tran/ifft.o $(CFLAGS)
-
-tran/congen.o: tran/congen.c tran/congen.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/congen.c -o tran/congen.o $(CFLAGS)
-
-tran/fromobject.o: tran/fromobject.c tran/fromobject.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/fromobject.c -o tran/fromobject.o $(CFLAGS)
-
-tran/fromarraystream.o: tran/fromarraystream.c tran/fromarraystream.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/fromarraystream.c -o tran/fromarraystream.o $(CFLAGS)
-
-tran/coterm.o: tran/coterm.c tran/coterm.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/coterm.c -o tran/coterm.o $(CFLAGS)
-
-tran/convolve.o: tran/convolve.c tran/convolve.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/convolve.c -o tran/convolve.o $(CFLAGS)
-
-tran/alpass.o: tran/alpass.c tran/alpass.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/alpass.c -o tran/alpass.o $(CFLAGS)
-
-tran/oneshot.o: tran/oneshot.c tran/oneshot.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/oneshot.c -o tran/oneshot.o $(CFLAGS)
-
-tran/chase.o: tran/chase.c tran/chase.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/chase.c -o tran/chase.o $(CFLAGS)
-
-tran/tapv.o: tran/tapv.c tran/tapv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/tapv.c -o tran/tapv.o $(CFLAGS)
-
-tran/biquad.o: tran/biquad.c tran/biquad.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/biquad.c -o tran/biquad.o $(CFLAGS)
-
-tran/pluck.o: tran/pluck.c tran/pluck.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/pluck.c -o tran/pluck.o $(CFLAGS)
-
-tran/abs.o: tran/abs.c tran/abs.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/abs.c -o tran/abs.o $(CFLAGS)
-
-tran/sqrt.o: tran/sqrt.c tran/sqrt.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/sqrt.c -o tran/sqrt.o $(CFLAGS)
-
-tran/alpasscv.o: tran/alpasscv.c tran/alpasscv.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/alpasscv.c -o tran/alpasscv.o $(CFLAGS)
-
-tran/alpassvc.o: tran/alpassvc.c tran/alpassvc.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h
- $(CC) -c tran/alpassvc.c -o tran/alpassvc.o $(CFLAGS)
-
-nyqsrc/sndfnint.o: nyqsrc/sndfnint.c
- $(CC) -c nyqsrc/sndfnint.c -o nyqsrc/sndfnint.o $(CFLAGS)
-
-nyqsrc/seqfnint.o: nyqsrc/seqfnint.c
- $(CC) -c nyqsrc/seqfnint.c -o nyqsrc/seqfnint.o $(CFLAGS)
-
-xlisp/xlftab.o: nyqsrc/sndfnintptrs.h nyqsrc/sndfnintdefs.h nyqsrc/seqfnintptrs.h nyqsrc/seqfnintdefs.h
- $(CC) -c xlisp/xlftab.c -o xlisp/xlftab.o $(CFLAGS)
-
-xlisp/extern.o: xlisp/extern.c
- $(CC) -c xlisp/extern.c -o xlisp/extern.o $(CFLAGS)
-
-xlisp/xldmem.o: xlisp/xldmem.c
- $(CC) -c xlisp/xldmem.c -o xlisp/xldmem.o $(CFLAGS)
-
-xlisp/xlbfun.o: xlisp/xlbfun.c
- $(CC) -c xlisp/xlbfun.c -o xlisp/xlbfun.o $(CFLAGS)
-
-xlisp/xlcont.o: xlisp/xlcont.c
- $(CC) -c xlisp/xlcont.c -o xlisp/xlcont.o $(CFLAGS)
-
-xlisp/xldbug.o: xlisp/xldbug.c
- $(CC) -c xlisp/xldbug.c -o xlisp/xldbug.o $(CFLAGS)
-
-xlisp/xleval.o: xlisp/xleval.c
- $(CC) -c xlisp/xleval.c -o xlisp/xleval.o $(CFLAGS)
-
-xlisp/xlfio.o: xlisp/xlfio.c
- $(CC) -c xlisp/xlfio.c -o xlisp/xlfio.o $(CFLAGS)
-
-xlisp/xlglob.o: xlisp/xlglob.c
- $(CC) -c xlisp/xlglob.c -o xlisp/xlglob.o $(CFLAGS)
-
-xlisp/xlimage.o: xlisp/xlimage.c
- $(CC) -c xlisp/xlimage.c -o xlisp/xlimage.o $(CFLAGS)
-
-xlisp/xlinit.o: xlisp/xlinit.c
- $(CC) -c xlisp/xlinit.c -o xlisp/xlinit.o $(CFLAGS)
-
-xlisp/xlio.o: xlisp/xlio.c
- $(CC) -c xlisp/xlio.c -o xlisp/xlio.o $(CFLAGS)
-
-xlisp/xlisp.o: xlisp/xlisp.c
- $(CC) -c xlisp/xlisp.c -o xlisp/xlisp.o $(CFLAGS)
-
-xlisp/xljump.o: xlisp/xljump.c
- $(CC) -c xlisp/xljump.c -o xlisp/xljump.o $(CFLAGS)
-
-xlisp/xllist.o: xlisp/xllist.c
- $(CC) -c xlisp/xllist.c -o xlisp/xllist.o $(CFLAGS)
-
-xlisp/xlmath.o: xlisp/xlmath.c
- $(CC) -c xlisp/xlmath.c -o xlisp/xlmath.o $(CFLAGS)
-
-xlisp/xlobj.o: xlisp/xlobj.c
- $(CC) -c xlisp/xlobj.c -o xlisp/xlobj.o $(CFLAGS)
-
-xlisp/xlpp.o: xlisp/xlpp.c
- $(CC) -c xlisp/xlpp.c -o xlisp/xlpp.o $(CFLAGS)
-
-xlisp/xlprin.o: xlisp/xlprin.c
- $(CC) -c xlisp/xlprin.c -o xlisp/xlprin.o $(CFLAGS)
-
-xlisp/xlread.o: xlisp/xlread.c
- $(CC) -c xlisp/xlread.c -o xlisp/xlread.o $(CFLAGS)
-
-xlisp/xlstr.o: xlisp/xlstr.c
- $(CC) -c xlisp/xlstr.c -o xlisp/xlstr.o $(CFLAGS)
-
-xlisp/xlsubr.o: xlisp/xlsubr.c
- $(CC) -c xlisp/xlsubr.c -o xlisp/xlsubr.o $(CFLAGS)
-
-xlisp/xlsym.o: xlisp/xlsym.c
- $(CC) -c xlisp/xlsym.c -o xlisp/xlsym.o $(CFLAGS)
-
-xlisp/xlsys.o: xlisp/xlsys.c
- $(CC) -c xlisp/xlsys.c -o xlisp/xlsys.o $(CFLAGS)
-
-cmt/cext.o: cmt/cext.c
- $(CC) -c cmt/cext.c -o cmt/cext.o $(CFLAGS)
-
-cmt/cleanup.o: cmt/cleanup.c
- $(CC) -c cmt/cleanup.c -o cmt/cleanup.o $(CFLAGS)
-
-cmt/cmdline.o: cmt/cmdline.c
- $(CC) -c cmt/cmdline.c -o cmt/cmdline.o $(CFLAGS)
-
-cmt/cmtcmd.o: cmt/cmtcmd.c
- $(CC) -c cmt/cmtcmd.c -o cmt/cmtcmd.o $(CFLAGS)
-
-cmt/moxc.o: cmt/moxc.c
- $(CC) -c cmt/moxc.c -o cmt/moxc.o $(CFLAGS)
-
-cmt/mem.o: cmt/mem.c
- $(CC) -c cmt/mem.c -o cmt/mem.o $(CFLAGS)
-
-cmt/midifile.o: cmt/midifile.c
- $(CC) -c cmt/midifile.c -o cmt/midifile.o $(CFLAGS)
-
-cmt/midifns.o: cmt/midifns.c
- $(CC) -c cmt/midifns.c -o cmt/midifns.o $(CFLAGS)
-
-cmt/record.o: cmt/record.c
- $(CC) -c cmt/record.c -o cmt/record.o $(CFLAGS)
-
-cmt/seq.o: cmt/seq.c
- $(CC) -c cmt/seq.c -o cmt/seq.o $(CFLAGS)
-
-cmt/seqmread.o: cmt/seqmread.c
- $(CC) -c cmt/seqmread.c -o cmt/seqmread.o $(CFLAGS)
-
-cmt/seqmwrite.o: cmt/seqmwrite.c
- $(CC) -c cmt/seqmwrite.c -o cmt/seqmwrite.o $(CFLAGS)
-
-cmt/seqread.o: cmt/seqread.c
- $(CC) -c cmt/seqread.c -o cmt/seqread.o $(CFLAGS)
-
-cmt/seqwrite.o: cmt/seqwrite.c
- $(CC) -c cmt/seqwrite.c -o cmt/seqwrite.o $(CFLAGS)
-
-cmt/tempomap.o: cmt/tempomap.c
- $(CC) -c cmt/tempomap.c -o cmt/tempomap.o $(CFLAGS)
-
-cmt/timebase.o: cmt/timebase.c
- $(CC) -c cmt/timebase.c -o cmt/timebase.o $(CFLAGS)
-
-cmt/userio.o: cmt/userio.c
- $(CC) -c cmt/userio.c -o cmt/userio.o $(CFLAGS)
-
-misc/intgen: misc/intgen.c
- cd misc; $(MAKE) intgen
-
-misc/unpacker: misc/unpacker.c misc/convert.c
- cd misc; $(MAKE) unpacker
-
-misc/packer: misc/packer.c misc/convert.c
- cd misc; $(MAKE) packer
-
-nyqsrc/sndfnintptrs.h: $(NYQHDRS) snd/snd.h misc/intgen
- $(INTGEN) nyqsrc/sndfnint $(NYQHDRS)
-
-nyqsrc/seqfnintptrs.h: $(CMTHDRS) misc/intgen
- $(INTGEN) nyqsrc/seqfnint $(CMTHDRS)
-
-nyqsrc/sndfnintdefs.h : nyqsrc/sndfnintptrs.h
-
-nyqsrc/seqfnintdefs.h : nyqsrc/seqfnintptrs.h
-
-nyqsrc/sndfnint.c : nyqsrc/sndfnintptrs.h
-
-nyqsrc/seqfnint.c : nyqsrc/seqfnintptrs.h
-
-clean:
- rm -f libnyquist.a
- cd misc; $(MAKE) clean
- rm -f $(OBJECTS)
-# Note that these files are machine-generated:
- rm -f nyqsrc/sndfnintptrs.h nyqsrc/sndfnint.c nyqsrc/sndfnintdefs.h
- rm -f nyqsrc/seqfnintptrs.h nyqsrc/seqfnint.c nyqsrc/seqfnintdefs.h
-
-cleaner: clean
- cd misc; $(MAKE) cleaner
- rm -f *.backup */*.backup
- rm -f *~ */*.*~
- rm -f *.save */*.save
- rm -f *.CKP */*.CKP
- rm -f *.BAK */*.BAK
- rm -f *.old */*.old
- rm -f *.gold */*.gold
- rm -f playparms
- rm -f points.dat
-
-distclean: cleaner
- rm -f Makefile
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXCPP = @CXXCPP@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MKDIR_P = @MKDIR_P@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build_alias = @build_alias@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host_alias = @host_alias@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+NYQUIST = nyquist
+PORTAUDIO_CFLAGS = -I../portaudio-v19/include
+SNDFILE_CFLAGS = -I../libsndfile/src
+
+# tell aclocal that extra macros can be found in autotools/m4/
+ACLOCAL_AMFLAGS = -I autotools/m4
+INC = \
+ -I. \
+ -I$(NYQUIST)/nyqsrc \
+ -I$(NYQUIST)/tran \
+ -I$(NYQUIST)/xlisp \
+ -I$(NYQUIST)/sys/unix \
+ -I$(NYQUIST)/cmt \
+ -I$(NYQUIST)/ffts/src \
+ -I$(NYQUIST)/nyqstk/include \
+ -I$(NYQUIST)/nyqstk
+
+AM_CFLAGS = $(INC) $(PORTAUDIO_CFLAGS) $(SNDFILE_CFLAGS) \
+ -DCMTSTUFF -DEXT
+
+AM_CXXFLAGS = $(INC) $(PORTAUDIO_CFLAGS) $(SNDFILE_CFLAGS) \
+ -DCMTSTUFF -DEXT
+
+
+# define the output library (link with -lportSMF)
+lib_LIBRARIES = libnyquist.a
+
+# define the source files to use
+libnyquist_a_SOURCES = \
+ $(NYQUIST)/xlisp/extern.c \
+ $(NYQUIST)/xlisp/xldmem.c \
+ $(NYQUIST)/xlisp/xlbfun.c \
+ $(NYQUIST)/xlisp/xlcont.c \
+ $(NYQUIST)/xlisp/xldbug.c \
+ $(NYQUIST)/xlisp/xleval.c \
+ $(NYQUIST)/xlisp/xlfio.c \
+ $(NYQUIST)/xlisp/xlftab.c \
+ $(NYQUIST)/xlisp/xlglob.c \
+ $(NYQUIST)/xlisp/xlimage.c \
+ $(NYQUIST)/xlisp/xlinit.c \
+ $(NYQUIST)/xlisp/xlio.c \
+ $(NYQUIST)/xlisp/xlisp.c \
+ $(NYQUIST)/xlisp/xljump.c \
+ $(NYQUIST)/xlisp/xllist.c \
+ $(NYQUIST)/xlisp/xlmath.c \
+ $(NYQUIST)/xlisp/xlobj.c \
+ $(NYQUIST)/xlisp/xlpp.c \
+ $(NYQUIST)/xlisp/xlprin.c \
+ $(NYQUIST)/xlisp/xlread.c \
+ $(NYQUIST)/xlisp/xlstr.c \
+ $(NYQUIST)/xlisp/xlsubr.c \
+ $(NYQUIST)/xlisp/xlsym.c \
+ $(NYQUIST)/xlisp/xlsys.c \
+ $(NYQUIST)/xlisp/path.c \
+ $(NYQUIST)/tran/abs.c \
+ $(NYQUIST)/tran/allpoles.c \
+ $(NYQUIST)/tran/alpass.c \
+ $(NYQUIST)/tran/alpasscv.c \
+ $(NYQUIST)/tran/alpassvv.c \
+ $(NYQUIST)/tran/amosc.c \
+ $(NYQUIST)/tran/areson.c \
+ $(NYQUIST)/tran/aresonvc.c \
+ $(NYQUIST)/tran/aresoncv.c \
+ $(NYQUIST)/tran/aresonvv.c \
+ $(NYQUIST)/tran/atone.c \
+ $(NYQUIST)/tran/atonev.c \
+ $(NYQUIST)/tran/biquadfilt.c \
+ $(NYQUIST)/tran/buzz.c \
+ $(NYQUIST)/tran/chase.c \
+ $(NYQUIST)/tran/clip.c \
+ $(NYQUIST)/tran/congen.c \
+ $(NYQUIST)/tran/const.c \
+ $(NYQUIST)/tran/coterm.c \
+ $(NYQUIST)/tran/delaycc.c \
+ $(NYQUIST)/tran/delaycv.c \
+ $(NYQUIST)/tran/eqbandvvv.c \
+ $(NYQUIST)/tran/exp.c \
+ $(NYQUIST)/tran/follow.c \
+ $(NYQUIST)/tran/fmosc.c \
+ $(NYQUIST)/tran/fromobject.c \
+ $(NYQUIST)/tran/fromarraystream.c \
+ $(NYQUIST)/tran/gate.c \
+ $(NYQUIST)/tran/ifft.c \
+ $(NYQUIST)/tran/instrclar.c \
+ $(NYQUIST)/tran/instrclarall.c \
+ $(NYQUIST)/tran/instrclarfreq.c \
+ $(NYQUIST)/tran/instrsax.c \
+ $(NYQUIST)/tran/instrsaxall.c \
+ $(NYQUIST)/tran/instrsaxfreq.c \
+ $(NYQUIST)/tran/integrate.c \
+ $(NYQUIST)/tran/log.c \
+ $(NYQUIST)/tran/lpreson.c \
+ $(NYQUIST)/tran/maxv.c \
+ $(NYQUIST)/tran/offset.c \
+ $(NYQUIST)/tran/oneshot.c \
+ $(NYQUIST)/tran/osc.c \
+ $(NYQUIST)/tran/partial.c \
+ $(NYQUIST)/tran/pluck.c \
+ $(NYQUIST)/tran/prod.c \
+ $(NYQUIST)/tran/pwl.c \
+ $(NYQUIST)/tran/quantize.c \
+ $(NYQUIST)/tran/recip.c \
+ $(NYQUIST)/tran/reson.c \
+ $(NYQUIST)/tran/resonvc.c \
+ $(NYQUIST)/tran/resoncv.c \
+ $(NYQUIST)/tran/resonvv.c \
+ $(NYQUIST)/tran/sampler.c \
+ $(NYQUIST)/tran/scale.c \
+ $(NYQUIST)/tran/shape.c \
+ $(NYQUIST)/tran/sine.c \
+ $(NYQUIST)/tran/siosc.c \
+ $(NYQUIST)/tran/slope.c \
+ $(NYQUIST)/tran/sqrt.c \
+ $(NYQUIST)/tran/tapf.c \
+ $(NYQUIST)/tran/tapv.c \
+ $(NYQUIST)/tran/tone.c \
+ $(NYQUIST)/tran/tonev.c \
+ $(NYQUIST)/tran/upsample.c \
+ $(NYQUIST)/tran/white.c \
+ $(NYQUIST)/tran/stkrev.c \
+ $(NYQUIST)/tran/stkpitshift.c \
+ $(NYQUIST)/tran/stkchorus.c \
+ $(NYQUIST)/tran/instrbow.c \
+ $(NYQUIST)/tran/instrbowedfreq.c \
+ $(NYQUIST)/tran/instrbanded.c \
+ $(NYQUIST)/tran/instrmandolin.c \
+ $(NYQUIST)/tran/instrsitar.c \
+ $(NYQUIST)/tran/instrmodalbar.c \
+ $(NYQUIST)/tran/instrflute.c \
+ $(NYQUIST)/tran/instrflutefreq.c \
+ $(NYQUIST)/tran/instrfluteall.c \
+ $(NYQUIST)/tran/fmfb.c \
+ $(NYQUIST)/tran/fmfbv.c \
+ $(NYQUIST)/cmt/cext.c \
+ $(NYQUIST)/cmt/cleanup.c \
+ $(NYQUIST)/cmt/cmdline.c \
+ $(NYQUIST)/cmt/cmtcmd.c \
+ $(NYQUIST)/cmt/moxc.c \
+ $(NYQUIST)/cmt/mem.c \
+ $(NYQUIST)/cmt/midifile.c \
+ $(NYQUIST)/cmt/midifns.c \
+ $(NYQUIST)/cmt/record.c \
+ $(NYQUIST)/cmt/seq.c \
+ $(NYQUIST)/cmt/seqmread.c \
+ $(NYQUIST)/cmt/seqmwrite.c \
+ $(NYQUIST)/cmt/seqread.c \
+ $(NYQUIST)/cmt/seqwrite.c \
+ $(NYQUIST)/cmt/tempomap.c \
+ $(NYQUIST)/cmt/timebase.c \
+ $(NYQUIST)/cmt/userio.c \
+ $(NYQUIST)/nyqsrc/debug.c \
+ $(NYQUIST)/nyqsrc/falloc.c \
+ $(NYQUIST)/nyqsrc/local.c \
+ $(NYQUIST)/nyqsrc/handlers.c \
+ $(NYQUIST)/nyqsrc/multiread.c \
+ $(NYQUIST)/nyqsrc/seqext.c \
+ $(NYQUIST)/nyqsrc/seqinterf.c \
+ $(NYQUIST)/nyqsrc/stats.c \
+ $(NYQUIST)/nyqsrc/ffilterkit.c \
+ $(NYQUIST)/nyqsrc/sliders.c \
+ $(NYQUIST)/nyqsrc/sound.c \
+ $(NYQUIST)/nyqsrc/add.c \
+ $(NYQUIST)/nyqsrc/avg.c \
+ $(NYQUIST)/nyqsrc/compose.c \
+ $(NYQUIST)/nyqsrc/convolve.c \
+ $(NYQUIST)/nyqsrc/downsample.c \
+ $(NYQUIST)/nyqsrc/fft.c \
+ $(NYQUIST)/nyqsrc/inverse.c \
+ $(NYQUIST)/nyqsrc/multiseq.c \
+ $(NYQUIST)/nyqsrc/resamp.c \
+ $(NYQUIST)/nyqsrc/resampv.c \
+ $(NYQUIST)/nyqsrc/samples.c \
+ $(NYQUIST)/nyqsrc/sndmax.c \
+ $(NYQUIST)/nyqsrc/sndread.c \
+ $(NYQUIST)/nyqsrc/sndseq.c \
+ $(NYQUIST)/nyqsrc/sndwritepa.c \
+ $(NYQUIST)/nyqsrc/yin.c \
+ $(NYQUIST)/nyqsrc/trigger.c \
+ $(NYQUIST)/nyqsrc/lpanal.c \
+ $(NYQUIST)/nyqstk/src/Generator.cpp \
+ $(NYQUIST)/nyqstk/src/SineWave.cpp \
+ $(NYQUIST)/nyqstk/src/Function.cpp \
+ $(NYQUIST)/nyqstk/src/FileRead.cpp \
+ $(NYQUIST)/nyqstk/src/FileWvIn.cpp \
+ $(NYQUIST)/nyqstk/src/Effect.cpp \
+ $(NYQUIST)/nyqstk/src/Clarinet.cpp \
+ $(NYQUIST)/nyqstk/src/Delay.cpp \
+ $(NYQUIST)/nyqstk/src/DelayL.cpp \
+ $(NYQUIST)/nyqstk/src/Envelope.cpp \
+ $(NYQUIST)/nyqstk/src/Filter.cpp \
+ $(NYQUIST)/nyqstk/src/Instrmnt.cpp \
+ $(NYQUIST)/nyqstk/src/Noise.cpp \
+ $(NYQUIST)/nyqstk/src/OneZero.cpp \
+ $(NYQUIST)/nyqstk/src/ReedTable.cpp \
+ $(NYQUIST)/nyqstk/src/Saxofony.cpp \
+ $(NYQUIST)/nyqstk/src/Stk.cpp \
+ $(NYQUIST)/nyqstk/src/WaveLoop.cpp \
+ $(NYQUIST)/nyqstk/src/WvIn.cpp \
+ $(NYQUIST)/nyqstk/src/NRev.cpp \
+ $(NYQUIST)/nyqstk/src/JCRev.cpp \
+ $(NYQUIST)/nyqstk/src/PRCRev.cpp \
+ $(NYQUIST)/nyqstk/src/PitShift.cpp \
+ $(NYQUIST)/nyqstk/src/Chorus.cpp \
+ $(NYQUIST)/nyqstk/src/Bowed.cpp \
+ $(NYQUIST)/nyqstk/src/BowTable.cpp \
+ $(NYQUIST)/nyqstk/src/ADSR.cpp \
+ $(NYQUIST)/nyqstk/src/OnePole.cpp \
+ $(NYQUIST)/nyqstk/src/BiQuad.cpp \
+ $(NYQUIST)/nyqstk/src/BandedWG.cpp \
+ $(NYQUIST)/nyqstk/src/DelayA.cpp \
+ $(NYQUIST)/nyqstk/src/Mandolin.cpp \
+ $(NYQUIST)/nyqstk/src/PluckTwo.cpp \
+ $(NYQUIST)/nyqstk/src/Sitar.cpp \
+ $(NYQUIST)/nyqstk/src/ModalBar.cpp \
+ $(NYQUIST)/nyqstk/src/Modal.cpp \
+ $(NYQUIST)/nyqstk/src/Flute.cpp \
+ $(NYQUIST)/nyqstk/src/JetTable.cpp \
+ $(NYQUIST)/nyqstk/src/PoleZero.cpp \
+ $(NYQUIST)/nyqstk/stkinit.cpp \
+ $(NYQUIST)/nyqstk/instr.cpp \
+ $(NYQUIST)/nyqstk/stkint.cpp \
+ $(NYQUIST)/ffts/src/fftext.c \
+ $(NYQUIST)/ffts/src/fftlib.c \
+ $(NYQUIST)/ffts/src/matlib.c \
+ $(NYQUIST)/nyqsrc/sndfnint.c \
+ $(NYQUIST)/nyqsrc/seqfnint.c \
+ nyx.c
+
+
+# files that only really viscous cleans remove
+MAINTAINERCLEANFILES = Makefile.in
+
+# other distributed files in case users don't have a complete set of auto*
+AUX_DIST = $(ac_aux_dir)/config.guess \
+ $(ac_aux_dir)/config.sub \
+ $(ac_aux_dir)/install-sh \
+ $(ac_aux_dir)/mdate-sh \
+ $(ac_aux_dir)/missing \
+ $(ac_aux_dir)/mkinstalldirs \
+ $(MAINTAINERCLEANFILES)
+
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .c .cpp .o .obj
+am--refresh:
+ @:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ echo ' cd $(srcdir) && $(AUTOMAKE) --foreign '; \
+ cd $(srcdir) && $(AUTOMAKE) --foreign \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ echo ' $(SHELL) ./config.status'; \
+ $(SHELL) ./config.status;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ $(SHELL) ./config.status --recheck
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(srcdir) && $(AUTOCONF)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
+install-libLIBRARIES: $(lib_LIBRARIES)
+ @$(NORMAL_INSTALL)
+ test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)"
+ @list='$(lib_LIBRARIES)'; for p in $$list; do \
+ if test -f $$p; then \
+ f=$(am__strip_dir) \
+ echo " $(libLIBRARIES_INSTALL) '$$p' '$(DESTDIR)$(libdir)/$$f'"; \
+ $(libLIBRARIES_INSTALL) "$$p" "$(DESTDIR)$(libdir)/$$f"; \
+ else :; fi; \
+ done
+ @$(POST_INSTALL)
+ @list='$(lib_LIBRARIES)'; for p in $$list; do \
+ if test -f $$p; then \
+ p=$(am__strip_dir) \
+ echo " $(RANLIB) '$(DESTDIR)$(libdir)/$$p'"; \
+ $(RANLIB) "$(DESTDIR)$(libdir)/$$p"; \
+ else :; fi; \
+ done
+
+uninstall-libLIBRARIES:
+ @$(NORMAL_UNINSTALL)
+ @list='$(lib_LIBRARIES)'; for p in $$list; do \
+ p=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(libdir)/$$p'"; \
+ rm -f "$(DESTDIR)$(libdir)/$$p"; \
+ done
+
+clean-libLIBRARIES:
+ -test -z "$(lib_LIBRARIES)" || rm -f $(lib_LIBRARIES)
+libnyquist.a: $(libnyquist_a_OBJECTS) $(libnyquist_a_DEPENDENCIES)
+ -rm -f libnyquist.a
+ $(libnyquist_a_AR) libnyquist.a $(libnyquist_a_OBJECTS) $(libnyquist_a_LIBADD)
+ $(RANLIB) libnyquist.a
+
+mostlyclean-compile:
+ -rm -f *.$(OBJEXT)
+
+distclean-compile:
+ -rm -f *.tab.c
+
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ADSR.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/BandedWG.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/BiQuad.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/BowTable.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/Bowed.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/Chorus.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/Clarinet.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/Delay.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/DelayA.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/DelayL.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/Effect.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/Envelope.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/FileRead.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/FileWvIn.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/Filter.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/Flute.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/Function.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/Generator.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/Instrmnt.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/JCRev.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/JetTable.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/Mandolin.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/Modal.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ModalBar.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/NRev.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/Noise.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/OnePole.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/OneZero.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/PRCRev.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/PitShift.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/PluckTwo.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/PoleZero.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ReedTable.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/Saxofony.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/SineWave.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/Sitar.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/Stk.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/WaveLoop.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/WvIn.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/abs.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/add.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/allpoles.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/alpass.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/alpasscv.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/alpassvv.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/amosc.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/areson.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/aresoncv.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/aresonvc.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/aresonvv.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/atone.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/atonev.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/avg.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/biquadfilt.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/buzz.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/cext.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/chase.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/cleanup.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/clip.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/cmdline.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/cmtcmd.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/compose.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/congen.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/const.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/convolve.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/coterm.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/debug.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/delaycc.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/delaycv.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/downsample.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/eqbandvvv.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/exp.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/extern.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/falloc.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ffilterkit.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/fft.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/fftext.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/fftlib.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/fmfb.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/fmfbv.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/fmosc.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/follow.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/fromarraystream.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/fromobject.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/gate.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/handlers.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ifft.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/instr.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/instrbanded.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/instrbow.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/instrbowedfreq.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/instrclar.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/instrclarall.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/instrclarfreq.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/instrflute.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/instrfluteall.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/instrflutefreq.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/instrmandolin.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/instrmodalbar.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/instrsax.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/instrsaxall.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/instrsaxfreq.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/instrsitar.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/integrate.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/inverse.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/local.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/log.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/lpanal.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/lpreson.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/matlib.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/maxv.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/mem.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/midifile.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/midifns.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/moxc.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/multiread.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/multiseq.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/nyx.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/offset.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/oneshot.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/osc.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/partial.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/path.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/pluck.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/prod.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/pwl.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/quantize.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/recip.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/record.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/resamp.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/resampv.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/reson.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/resoncv.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/resonvc.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/resonvv.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/sampler.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/samples.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/scale.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/seq.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/seqext.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/seqfnint.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/seqinterf.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/seqmread.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/seqmwrite.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/seqread.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/seqwrite.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/shape.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/sine.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/siosc.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/sliders.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/slope.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/sndfnint.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/sndmax.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/sndread.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/sndseq.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/sndwritepa.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/sound.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/sqrt.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/stats.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/stkchorus.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/stkinit.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/stkint.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/stkpitshift.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/stkrev.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/tapf.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/tapv.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/tempomap.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/timebase.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/tone.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/tonev.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/trigger.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/upsample.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/userio.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/white.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/xlbfun.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/xlcont.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/xldbug.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/xldmem.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/xleval.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/xlfio.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/xlftab.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/xlglob.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/xlimage.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/xlinit.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/xlio.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/xlisp.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/xljump.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/xllist.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/xlmath.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/xlobj.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/xlpp.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/xlprin.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/xlread.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/xlstr.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/xlsubr.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/xlsym.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/xlsys.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/yin.Po at am__quote@
+
+.c.o:
+ at am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(COMPILE) -c $<
+
+.c.obj:
+ at am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
+
+extern.o: $(NYQUIST)/xlisp/extern.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT extern.o -MD -MP -MF $(DEPDIR)/extern.Tpo -c -o extern.o `test -f '$(NYQUIST)/xlisp/extern.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/extern.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/extern.Tpo $(DEPDIR)/extern.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/extern.c' object='extern.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o extern.o `test -f '$(NYQUIST)/xlisp/extern.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/extern.c
+
+extern.obj: $(NYQUIST)/xlisp/extern.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT extern.obj -MD -MP -MF $(DEPDIR)/extern.Tpo -c -o extern.obj `if test -f '$(NYQUIST)/xlisp/extern.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/extern.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/extern.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/extern.Tpo $(DEPDIR)/extern.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/extern.c' object='extern.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o extern.obj `if test -f '$(NYQUIST)/xlisp/extern.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/extern.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/extern.c'; fi`
+
+xldmem.o: $(NYQUIST)/xlisp/xldmem.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xldmem.o -MD -MP -MF $(DEPDIR)/xldmem.Tpo -c -o xldmem.o `test -f '$(NYQUIST)/xlisp/xldmem.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xldmem.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xldmem.Tpo $(DEPDIR)/xldmem.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xldmem.c' object='xldmem.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xldmem.o `test -f '$(NYQUIST)/xlisp/xldmem.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xldmem.c
+
+xldmem.obj: $(NYQUIST)/xlisp/xldmem.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xldmem.obj -MD -MP -MF $(DEPDIR)/xldmem.Tpo -c -o xldmem.obj `if test -f '$(NYQUIST)/xlisp/xldmem.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xldmem.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xldmem.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xldmem.Tpo $(DEPDIR)/xldmem.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xldmem.c' object='xldmem.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xldmem.obj `if test -f '$(NYQUIST)/xlisp/xldmem.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xldmem.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xldmem.c'; fi`
+
+xlbfun.o: $(NYQUIST)/xlisp/xlbfun.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlbfun.o -MD -MP -MF $(DEPDIR)/xlbfun.Tpo -c -o xlbfun.o `test -f '$(NYQUIST)/xlisp/xlbfun.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlbfun.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlbfun.Tpo $(DEPDIR)/xlbfun.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlbfun.c' object='xlbfun.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlbfun.o `test -f '$(NYQUIST)/xlisp/xlbfun.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlbfun.c
+
+xlbfun.obj: $(NYQUIST)/xlisp/xlbfun.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlbfun.obj -MD -MP -MF $(DEPDIR)/xlbfun.Tpo -c -o xlbfun.obj `if test -f '$(NYQUIST)/xlisp/xlbfun.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlbfun.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlbfun.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlbfun.Tpo $(DEPDIR)/xlbfun.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlbfun.c' object='xlbfun.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlbfun.obj `if test -f '$(NYQUIST)/xlisp/xlbfun.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlbfun.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlbfun.c'; fi`
+
+xlcont.o: $(NYQUIST)/xlisp/xlcont.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlcont.o -MD -MP -MF $(DEPDIR)/xlcont.Tpo -c -o xlcont.o `test -f '$(NYQUIST)/xlisp/xlcont.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlcont.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlcont.Tpo $(DEPDIR)/xlcont.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlcont.c' object='xlcont.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlcont.o `test -f '$(NYQUIST)/xlisp/xlcont.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlcont.c
+
+xlcont.obj: $(NYQUIST)/xlisp/xlcont.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlcont.obj -MD -MP -MF $(DEPDIR)/xlcont.Tpo -c -o xlcont.obj `if test -f '$(NYQUIST)/xlisp/xlcont.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlcont.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlcont.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlcont.Tpo $(DEPDIR)/xlcont.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlcont.c' object='xlcont.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlcont.obj `if test -f '$(NYQUIST)/xlisp/xlcont.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlcont.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlcont.c'; fi`
+
+xldbug.o: $(NYQUIST)/xlisp/xldbug.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xldbug.o -MD -MP -MF $(DEPDIR)/xldbug.Tpo -c -o xldbug.o `test -f '$(NYQUIST)/xlisp/xldbug.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xldbug.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xldbug.Tpo $(DEPDIR)/xldbug.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xldbug.c' object='xldbug.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xldbug.o `test -f '$(NYQUIST)/xlisp/xldbug.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xldbug.c
+
+xldbug.obj: $(NYQUIST)/xlisp/xldbug.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xldbug.obj -MD -MP -MF $(DEPDIR)/xldbug.Tpo -c -o xldbug.obj `if test -f '$(NYQUIST)/xlisp/xldbug.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xldbug.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xldbug.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xldbug.Tpo $(DEPDIR)/xldbug.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xldbug.c' object='xldbug.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xldbug.obj `if test -f '$(NYQUIST)/xlisp/xldbug.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xldbug.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xldbug.c'; fi`
+
+xleval.o: $(NYQUIST)/xlisp/xleval.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xleval.o -MD -MP -MF $(DEPDIR)/xleval.Tpo -c -o xleval.o `test -f '$(NYQUIST)/xlisp/xleval.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xleval.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xleval.Tpo $(DEPDIR)/xleval.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xleval.c' object='xleval.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xleval.o `test -f '$(NYQUIST)/xlisp/xleval.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xleval.c
+
+xleval.obj: $(NYQUIST)/xlisp/xleval.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xleval.obj -MD -MP -MF $(DEPDIR)/xleval.Tpo -c -o xleval.obj `if test -f '$(NYQUIST)/xlisp/xleval.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xleval.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xleval.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xleval.Tpo $(DEPDIR)/xleval.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xleval.c' object='xleval.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xleval.obj `if test -f '$(NYQUIST)/xlisp/xleval.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xleval.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xleval.c'; fi`
+
+xlfio.o: $(NYQUIST)/xlisp/xlfio.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlfio.o -MD -MP -MF $(DEPDIR)/xlfio.Tpo -c -o xlfio.o `test -f '$(NYQUIST)/xlisp/xlfio.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlfio.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlfio.Tpo $(DEPDIR)/xlfio.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlfio.c' object='xlfio.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlfio.o `test -f '$(NYQUIST)/xlisp/xlfio.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlfio.c
+
+xlfio.obj: $(NYQUIST)/xlisp/xlfio.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlfio.obj -MD -MP -MF $(DEPDIR)/xlfio.Tpo -c -o xlfio.obj `if test -f '$(NYQUIST)/xlisp/xlfio.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlfio.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlfio.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlfio.Tpo $(DEPDIR)/xlfio.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlfio.c' object='xlfio.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlfio.obj `if test -f '$(NYQUIST)/xlisp/xlfio.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlfio.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlfio.c'; fi`
+
+xlftab.o: $(NYQUIST)/xlisp/xlftab.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlftab.o -MD -MP -MF $(DEPDIR)/xlftab.Tpo -c -o xlftab.o `test -f '$(NYQUIST)/xlisp/xlftab.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlftab.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlftab.Tpo $(DEPDIR)/xlftab.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlftab.c' object='xlftab.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlftab.o `test -f '$(NYQUIST)/xlisp/xlftab.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlftab.c
+
+xlftab.obj: $(NYQUIST)/xlisp/xlftab.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlftab.obj -MD -MP -MF $(DEPDIR)/xlftab.Tpo -c -o xlftab.obj `if test -f '$(NYQUIST)/xlisp/xlftab.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlftab.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlftab.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlftab.Tpo $(DEPDIR)/xlftab.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlftab.c' object='xlftab.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlftab.obj `if test -f '$(NYQUIST)/xlisp/xlftab.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlftab.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlftab.c'; fi`
+
+xlglob.o: $(NYQUIST)/xlisp/xlglob.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlglob.o -MD -MP -MF $(DEPDIR)/xlglob.Tpo -c -o xlglob.o `test -f '$(NYQUIST)/xlisp/xlglob.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlglob.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlglob.Tpo $(DEPDIR)/xlglob.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlglob.c' object='xlglob.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlglob.o `test -f '$(NYQUIST)/xlisp/xlglob.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlglob.c
+
+xlglob.obj: $(NYQUIST)/xlisp/xlglob.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlglob.obj -MD -MP -MF $(DEPDIR)/xlglob.Tpo -c -o xlglob.obj `if test -f '$(NYQUIST)/xlisp/xlglob.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlglob.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlglob.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlglob.Tpo $(DEPDIR)/xlglob.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlglob.c' object='xlglob.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlglob.obj `if test -f '$(NYQUIST)/xlisp/xlglob.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlglob.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlglob.c'; fi`
+
+xlimage.o: $(NYQUIST)/xlisp/xlimage.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlimage.o -MD -MP -MF $(DEPDIR)/xlimage.Tpo -c -o xlimage.o `test -f '$(NYQUIST)/xlisp/xlimage.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlimage.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlimage.Tpo $(DEPDIR)/xlimage.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlimage.c' object='xlimage.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlimage.o `test -f '$(NYQUIST)/xlisp/xlimage.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlimage.c
+
+xlimage.obj: $(NYQUIST)/xlisp/xlimage.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlimage.obj -MD -MP -MF $(DEPDIR)/xlimage.Tpo -c -o xlimage.obj `if test -f '$(NYQUIST)/xlisp/xlimage.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlimage.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlimage.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlimage.Tpo $(DEPDIR)/xlimage.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlimage.c' object='xlimage.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlimage.obj `if test -f '$(NYQUIST)/xlisp/xlimage.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlimage.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlimage.c'; fi`
+
+xlinit.o: $(NYQUIST)/xlisp/xlinit.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlinit.o -MD -MP -MF $(DEPDIR)/xlinit.Tpo -c -o xlinit.o `test -f '$(NYQUIST)/xlisp/xlinit.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlinit.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlinit.Tpo $(DEPDIR)/xlinit.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlinit.c' object='xlinit.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlinit.o `test -f '$(NYQUIST)/xlisp/xlinit.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlinit.c
+
+xlinit.obj: $(NYQUIST)/xlisp/xlinit.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlinit.obj -MD -MP -MF $(DEPDIR)/xlinit.Tpo -c -o xlinit.obj `if test -f '$(NYQUIST)/xlisp/xlinit.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlinit.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlinit.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlinit.Tpo $(DEPDIR)/xlinit.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlinit.c' object='xlinit.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlinit.obj `if test -f '$(NYQUIST)/xlisp/xlinit.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlinit.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlinit.c'; fi`
+
+xlio.o: $(NYQUIST)/xlisp/xlio.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlio.o -MD -MP -MF $(DEPDIR)/xlio.Tpo -c -o xlio.o `test -f '$(NYQUIST)/xlisp/xlio.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlio.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlio.Tpo $(DEPDIR)/xlio.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlio.c' object='xlio.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlio.o `test -f '$(NYQUIST)/xlisp/xlio.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlio.c
+
+xlio.obj: $(NYQUIST)/xlisp/xlio.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlio.obj -MD -MP -MF $(DEPDIR)/xlio.Tpo -c -o xlio.obj `if test -f '$(NYQUIST)/xlisp/xlio.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlio.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlio.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlio.Tpo $(DEPDIR)/xlio.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlio.c' object='xlio.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlio.obj `if test -f '$(NYQUIST)/xlisp/xlio.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlio.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlio.c'; fi`
+
+xlisp.o: $(NYQUIST)/xlisp/xlisp.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlisp.o -MD -MP -MF $(DEPDIR)/xlisp.Tpo -c -o xlisp.o `test -f '$(NYQUIST)/xlisp/xlisp.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlisp.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlisp.Tpo $(DEPDIR)/xlisp.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlisp.c' object='xlisp.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlisp.o `test -f '$(NYQUIST)/xlisp/xlisp.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlisp.c
+
+xlisp.obj: $(NYQUIST)/xlisp/xlisp.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlisp.obj -MD -MP -MF $(DEPDIR)/xlisp.Tpo -c -o xlisp.obj `if test -f '$(NYQUIST)/xlisp/xlisp.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlisp.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlisp.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlisp.Tpo $(DEPDIR)/xlisp.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlisp.c' object='xlisp.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlisp.obj `if test -f '$(NYQUIST)/xlisp/xlisp.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlisp.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlisp.c'; fi`
+
+xljump.o: $(NYQUIST)/xlisp/xljump.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xljump.o -MD -MP -MF $(DEPDIR)/xljump.Tpo -c -o xljump.o `test -f '$(NYQUIST)/xlisp/xljump.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xljump.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xljump.Tpo $(DEPDIR)/xljump.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xljump.c' object='xljump.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xljump.o `test -f '$(NYQUIST)/xlisp/xljump.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xljump.c
+
+xljump.obj: $(NYQUIST)/xlisp/xljump.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xljump.obj -MD -MP -MF $(DEPDIR)/xljump.Tpo -c -o xljump.obj `if test -f '$(NYQUIST)/xlisp/xljump.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xljump.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xljump.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xljump.Tpo $(DEPDIR)/xljump.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xljump.c' object='xljump.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xljump.obj `if test -f '$(NYQUIST)/xlisp/xljump.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xljump.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xljump.c'; fi`
+
+xllist.o: $(NYQUIST)/xlisp/xllist.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xllist.o -MD -MP -MF $(DEPDIR)/xllist.Tpo -c -o xllist.o `test -f '$(NYQUIST)/xlisp/xllist.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xllist.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xllist.Tpo $(DEPDIR)/xllist.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xllist.c' object='xllist.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xllist.o `test -f '$(NYQUIST)/xlisp/xllist.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xllist.c
+
+xllist.obj: $(NYQUIST)/xlisp/xllist.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xllist.obj -MD -MP -MF $(DEPDIR)/xllist.Tpo -c -o xllist.obj `if test -f '$(NYQUIST)/xlisp/xllist.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xllist.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xllist.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xllist.Tpo $(DEPDIR)/xllist.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xllist.c' object='xllist.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xllist.obj `if test -f '$(NYQUIST)/xlisp/xllist.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xllist.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xllist.c'; fi`
+
+xlmath.o: $(NYQUIST)/xlisp/xlmath.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlmath.o -MD -MP -MF $(DEPDIR)/xlmath.Tpo -c -o xlmath.o `test -f '$(NYQUIST)/xlisp/xlmath.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlmath.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlmath.Tpo $(DEPDIR)/xlmath.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlmath.c' object='xlmath.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlmath.o `test -f '$(NYQUIST)/xlisp/xlmath.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlmath.c
+
+xlmath.obj: $(NYQUIST)/xlisp/xlmath.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlmath.obj -MD -MP -MF $(DEPDIR)/xlmath.Tpo -c -o xlmath.obj `if test -f '$(NYQUIST)/xlisp/xlmath.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlmath.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlmath.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlmath.Tpo $(DEPDIR)/xlmath.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlmath.c' object='xlmath.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlmath.obj `if test -f '$(NYQUIST)/xlisp/xlmath.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlmath.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlmath.c'; fi`
+
+xlobj.o: $(NYQUIST)/xlisp/xlobj.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlobj.o -MD -MP -MF $(DEPDIR)/xlobj.Tpo -c -o xlobj.o `test -f '$(NYQUIST)/xlisp/xlobj.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlobj.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlobj.Tpo $(DEPDIR)/xlobj.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlobj.c' object='xlobj.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlobj.o `test -f '$(NYQUIST)/xlisp/xlobj.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlobj.c
+
+xlobj.obj: $(NYQUIST)/xlisp/xlobj.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlobj.obj -MD -MP -MF $(DEPDIR)/xlobj.Tpo -c -o xlobj.obj `if test -f '$(NYQUIST)/xlisp/xlobj.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlobj.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlobj.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlobj.Tpo $(DEPDIR)/xlobj.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlobj.c' object='xlobj.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlobj.obj `if test -f '$(NYQUIST)/xlisp/xlobj.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlobj.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlobj.c'; fi`
+
+xlpp.o: $(NYQUIST)/xlisp/xlpp.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlpp.o -MD -MP -MF $(DEPDIR)/xlpp.Tpo -c -o xlpp.o `test -f '$(NYQUIST)/xlisp/xlpp.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlpp.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlpp.Tpo $(DEPDIR)/xlpp.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlpp.c' object='xlpp.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlpp.o `test -f '$(NYQUIST)/xlisp/xlpp.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlpp.c
+
+xlpp.obj: $(NYQUIST)/xlisp/xlpp.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlpp.obj -MD -MP -MF $(DEPDIR)/xlpp.Tpo -c -o xlpp.obj `if test -f '$(NYQUIST)/xlisp/xlpp.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlpp.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlpp.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlpp.Tpo $(DEPDIR)/xlpp.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlpp.c' object='xlpp.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlpp.obj `if test -f '$(NYQUIST)/xlisp/xlpp.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlpp.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlpp.c'; fi`
+
+xlprin.o: $(NYQUIST)/xlisp/xlprin.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlprin.o -MD -MP -MF $(DEPDIR)/xlprin.Tpo -c -o xlprin.o `test -f '$(NYQUIST)/xlisp/xlprin.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlprin.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlprin.Tpo $(DEPDIR)/xlprin.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlprin.c' object='xlprin.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlprin.o `test -f '$(NYQUIST)/xlisp/xlprin.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlprin.c
+
+xlprin.obj: $(NYQUIST)/xlisp/xlprin.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlprin.obj -MD -MP -MF $(DEPDIR)/xlprin.Tpo -c -o xlprin.obj `if test -f '$(NYQUIST)/xlisp/xlprin.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlprin.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlprin.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlprin.Tpo $(DEPDIR)/xlprin.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlprin.c' object='xlprin.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlprin.obj `if test -f '$(NYQUIST)/xlisp/xlprin.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlprin.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlprin.c'; fi`
+
+xlread.o: $(NYQUIST)/xlisp/xlread.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlread.o -MD -MP -MF $(DEPDIR)/xlread.Tpo -c -o xlread.o `test -f '$(NYQUIST)/xlisp/xlread.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlread.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlread.Tpo $(DEPDIR)/xlread.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlread.c' object='xlread.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlread.o `test -f '$(NYQUIST)/xlisp/xlread.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlread.c
+
+xlread.obj: $(NYQUIST)/xlisp/xlread.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlread.obj -MD -MP -MF $(DEPDIR)/xlread.Tpo -c -o xlread.obj `if test -f '$(NYQUIST)/xlisp/xlread.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlread.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlread.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlread.Tpo $(DEPDIR)/xlread.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlread.c' object='xlread.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlread.obj `if test -f '$(NYQUIST)/xlisp/xlread.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlread.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlread.c'; fi`
+
+xlstr.o: $(NYQUIST)/xlisp/xlstr.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlstr.o -MD -MP -MF $(DEPDIR)/xlstr.Tpo -c -o xlstr.o `test -f '$(NYQUIST)/xlisp/xlstr.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlstr.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlstr.Tpo $(DEPDIR)/xlstr.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlstr.c' object='xlstr.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlstr.o `test -f '$(NYQUIST)/xlisp/xlstr.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlstr.c
+
+xlstr.obj: $(NYQUIST)/xlisp/xlstr.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlstr.obj -MD -MP -MF $(DEPDIR)/xlstr.Tpo -c -o xlstr.obj `if test -f '$(NYQUIST)/xlisp/xlstr.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlstr.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlstr.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlstr.Tpo $(DEPDIR)/xlstr.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlstr.c' object='xlstr.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlstr.obj `if test -f '$(NYQUIST)/xlisp/xlstr.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlstr.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlstr.c'; fi`
+
+xlsubr.o: $(NYQUIST)/xlisp/xlsubr.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlsubr.o -MD -MP -MF $(DEPDIR)/xlsubr.Tpo -c -o xlsubr.o `test -f '$(NYQUIST)/xlisp/xlsubr.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlsubr.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlsubr.Tpo $(DEPDIR)/xlsubr.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlsubr.c' object='xlsubr.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlsubr.o `test -f '$(NYQUIST)/xlisp/xlsubr.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlsubr.c
+
+xlsubr.obj: $(NYQUIST)/xlisp/xlsubr.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlsubr.obj -MD -MP -MF $(DEPDIR)/xlsubr.Tpo -c -o xlsubr.obj `if test -f '$(NYQUIST)/xlisp/xlsubr.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlsubr.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlsubr.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlsubr.Tpo $(DEPDIR)/xlsubr.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlsubr.c' object='xlsubr.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlsubr.obj `if test -f '$(NYQUIST)/xlisp/xlsubr.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlsubr.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlsubr.c'; fi`
+
+xlsym.o: $(NYQUIST)/xlisp/xlsym.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlsym.o -MD -MP -MF $(DEPDIR)/xlsym.Tpo -c -o xlsym.o `test -f '$(NYQUIST)/xlisp/xlsym.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlsym.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlsym.Tpo $(DEPDIR)/xlsym.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlsym.c' object='xlsym.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlsym.o `test -f '$(NYQUIST)/xlisp/xlsym.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlsym.c
+
+xlsym.obj: $(NYQUIST)/xlisp/xlsym.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlsym.obj -MD -MP -MF $(DEPDIR)/xlsym.Tpo -c -o xlsym.obj `if test -f '$(NYQUIST)/xlisp/xlsym.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlsym.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlsym.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlsym.Tpo $(DEPDIR)/xlsym.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlsym.c' object='xlsym.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlsym.obj `if test -f '$(NYQUIST)/xlisp/xlsym.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlsym.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlsym.c'; fi`
+
+xlsys.o: $(NYQUIST)/xlisp/xlsys.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlsys.o -MD -MP -MF $(DEPDIR)/xlsys.Tpo -c -o xlsys.o `test -f '$(NYQUIST)/xlisp/xlsys.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlsys.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlsys.Tpo $(DEPDIR)/xlsys.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlsys.c' object='xlsys.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlsys.o `test -f '$(NYQUIST)/xlisp/xlsys.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/xlsys.c
+
+xlsys.obj: $(NYQUIST)/xlisp/xlsys.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xlsys.obj -MD -MP -MF $(DEPDIR)/xlsys.Tpo -c -o xlsys.obj `if test -f '$(NYQUIST)/xlisp/xlsys.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlsys.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlsys.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/xlsys.Tpo $(DEPDIR)/xlsys.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/xlsys.c' object='xlsys.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xlsys.obj `if test -f '$(NYQUIST)/xlisp/xlsys.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/xlsys.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/xlsys.c'; fi`
+
+path.o: $(NYQUIST)/xlisp/path.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT path.o -MD -MP -MF $(DEPDIR)/path.Tpo -c -o path.o `test -f '$(NYQUIST)/xlisp/path.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/path.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/path.Tpo $(DEPDIR)/path.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/path.c' object='path.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o path.o `test -f '$(NYQUIST)/xlisp/path.c' || echo '$(srcdir)/'`$(NYQUIST)/xlisp/path.c
+
+path.obj: $(NYQUIST)/xlisp/path.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT path.obj -MD -MP -MF $(DEPDIR)/path.Tpo -c -o path.obj `if test -f '$(NYQUIST)/xlisp/path.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/path.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/path.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/path.Tpo $(DEPDIR)/path.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/xlisp/path.c' object='path.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o path.obj `if test -f '$(NYQUIST)/xlisp/path.c'; then $(CYGPATH_W) '$(NYQUIST)/xlisp/path.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/xlisp/path.c'; fi`
+
+abs.o: $(NYQUIST)/tran/abs.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT abs.o -MD -MP -MF $(DEPDIR)/abs.Tpo -c -o abs.o `test -f '$(NYQUIST)/tran/abs.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/abs.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/abs.Tpo $(DEPDIR)/abs.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/abs.c' object='abs.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o abs.o `test -f '$(NYQUIST)/tran/abs.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/abs.c
+
+abs.obj: $(NYQUIST)/tran/abs.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT abs.obj -MD -MP -MF $(DEPDIR)/abs.Tpo -c -o abs.obj `if test -f '$(NYQUIST)/tran/abs.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/abs.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/abs.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/abs.Tpo $(DEPDIR)/abs.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/abs.c' object='abs.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o abs.obj `if test -f '$(NYQUIST)/tran/abs.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/abs.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/abs.c'; fi`
+
+allpoles.o: $(NYQUIST)/tran/allpoles.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT allpoles.o -MD -MP -MF $(DEPDIR)/allpoles.Tpo -c -o allpoles.o `test -f '$(NYQUIST)/tran/allpoles.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/allpoles.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/allpoles.Tpo $(DEPDIR)/allpoles.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/allpoles.c' object='allpoles.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o allpoles.o `test -f '$(NYQUIST)/tran/allpoles.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/allpoles.c
+
+allpoles.obj: $(NYQUIST)/tran/allpoles.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT allpoles.obj -MD -MP -MF $(DEPDIR)/allpoles.Tpo -c -o allpoles.obj `if test -f '$(NYQUIST)/tran/allpoles.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/allpoles.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/allpoles.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/allpoles.Tpo $(DEPDIR)/allpoles.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/allpoles.c' object='allpoles.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o allpoles.obj `if test -f '$(NYQUIST)/tran/allpoles.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/allpoles.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/allpoles.c'; fi`
+
+alpass.o: $(NYQUIST)/tran/alpass.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alpass.o -MD -MP -MF $(DEPDIR)/alpass.Tpo -c -o alpass.o `test -f '$(NYQUIST)/tran/alpass.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/alpass.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/alpass.Tpo $(DEPDIR)/alpass.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/alpass.c' object='alpass.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alpass.o `test -f '$(NYQUIST)/tran/alpass.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/alpass.c
+
+alpass.obj: $(NYQUIST)/tran/alpass.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alpass.obj -MD -MP -MF $(DEPDIR)/alpass.Tpo -c -o alpass.obj `if test -f '$(NYQUIST)/tran/alpass.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/alpass.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/alpass.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/alpass.Tpo $(DEPDIR)/alpass.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/alpass.c' object='alpass.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alpass.obj `if test -f '$(NYQUIST)/tran/alpass.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/alpass.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/alpass.c'; fi`
+
+alpasscv.o: $(NYQUIST)/tran/alpasscv.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alpasscv.o -MD -MP -MF $(DEPDIR)/alpasscv.Tpo -c -o alpasscv.o `test -f '$(NYQUIST)/tran/alpasscv.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/alpasscv.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/alpasscv.Tpo $(DEPDIR)/alpasscv.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/alpasscv.c' object='alpasscv.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alpasscv.o `test -f '$(NYQUIST)/tran/alpasscv.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/alpasscv.c
+
+alpasscv.obj: $(NYQUIST)/tran/alpasscv.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alpasscv.obj -MD -MP -MF $(DEPDIR)/alpasscv.Tpo -c -o alpasscv.obj `if test -f '$(NYQUIST)/tran/alpasscv.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/alpasscv.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/alpasscv.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/alpasscv.Tpo $(DEPDIR)/alpasscv.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/alpasscv.c' object='alpasscv.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alpasscv.obj `if test -f '$(NYQUIST)/tran/alpasscv.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/alpasscv.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/alpasscv.c'; fi`
+
+alpassvv.o: $(NYQUIST)/tran/alpassvv.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alpassvv.o -MD -MP -MF $(DEPDIR)/alpassvv.Tpo -c -o alpassvv.o `test -f '$(NYQUIST)/tran/alpassvv.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/alpassvv.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/alpassvv.Tpo $(DEPDIR)/alpassvv.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/alpassvv.c' object='alpassvv.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alpassvv.o `test -f '$(NYQUIST)/tran/alpassvv.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/alpassvv.c
+
+alpassvv.obj: $(NYQUIST)/tran/alpassvv.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alpassvv.obj -MD -MP -MF $(DEPDIR)/alpassvv.Tpo -c -o alpassvv.obj `if test -f '$(NYQUIST)/tran/alpassvv.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/alpassvv.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/alpassvv.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/alpassvv.Tpo $(DEPDIR)/alpassvv.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/alpassvv.c' object='alpassvv.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alpassvv.obj `if test -f '$(NYQUIST)/tran/alpassvv.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/alpassvv.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/alpassvv.c'; fi`
+
+amosc.o: $(NYQUIST)/tran/amosc.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT amosc.o -MD -MP -MF $(DEPDIR)/amosc.Tpo -c -o amosc.o `test -f '$(NYQUIST)/tran/amosc.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/amosc.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/amosc.Tpo $(DEPDIR)/amosc.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/amosc.c' object='amosc.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o amosc.o `test -f '$(NYQUIST)/tran/amosc.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/amosc.c
+
+amosc.obj: $(NYQUIST)/tran/amosc.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT amosc.obj -MD -MP -MF $(DEPDIR)/amosc.Tpo -c -o amosc.obj `if test -f '$(NYQUIST)/tran/amosc.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/amosc.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/amosc.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/amosc.Tpo $(DEPDIR)/amosc.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/amosc.c' object='amosc.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o amosc.obj `if test -f '$(NYQUIST)/tran/amosc.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/amosc.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/amosc.c'; fi`
+
+areson.o: $(NYQUIST)/tran/areson.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT areson.o -MD -MP -MF $(DEPDIR)/areson.Tpo -c -o areson.o `test -f '$(NYQUIST)/tran/areson.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/areson.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/areson.Tpo $(DEPDIR)/areson.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/areson.c' object='areson.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o areson.o `test -f '$(NYQUIST)/tran/areson.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/areson.c
+
+areson.obj: $(NYQUIST)/tran/areson.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT areson.obj -MD -MP -MF $(DEPDIR)/areson.Tpo -c -o areson.obj `if test -f '$(NYQUIST)/tran/areson.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/areson.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/areson.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/areson.Tpo $(DEPDIR)/areson.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/areson.c' object='areson.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o areson.obj `if test -f '$(NYQUIST)/tran/areson.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/areson.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/areson.c'; fi`
+
+aresonvc.o: $(NYQUIST)/tran/aresonvc.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT aresonvc.o -MD -MP -MF $(DEPDIR)/aresonvc.Tpo -c -o aresonvc.o `test -f '$(NYQUIST)/tran/aresonvc.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/aresonvc.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/aresonvc.Tpo $(DEPDIR)/aresonvc.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/aresonvc.c' object='aresonvc.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o aresonvc.o `test -f '$(NYQUIST)/tran/aresonvc.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/aresonvc.c
+
+aresonvc.obj: $(NYQUIST)/tran/aresonvc.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT aresonvc.obj -MD -MP -MF $(DEPDIR)/aresonvc.Tpo -c -o aresonvc.obj `if test -f '$(NYQUIST)/tran/aresonvc.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/aresonvc.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/aresonvc.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/aresonvc.Tpo $(DEPDIR)/aresonvc.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/aresonvc.c' object='aresonvc.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o aresonvc.obj `if test -f '$(NYQUIST)/tran/aresonvc.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/aresonvc.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/aresonvc.c'; fi`
+
+aresoncv.o: $(NYQUIST)/tran/aresoncv.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT aresoncv.o -MD -MP -MF $(DEPDIR)/aresoncv.Tpo -c -o aresoncv.o `test -f '$(NYQUIST)/tran/aresoncv.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/aresoncv.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/aresoncv.Tpo $(DEPDIR)/aresoncv.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/aresoncv.c' object='aresoncv.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o aresoncv.o `test -f '$(NYQUIST)/tran/aresoncv.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/aresoncv.c
+
+aresoncv.obj: $(NYQUIST)/tran/aresoncv.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT aresoncv.obj -MD -MP -MF $(DEPDIR)/aresoncv.Tpo -c -o aresoncv.obj `if test -f '$(NYQUIST)/tran/aresoncv.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/aresoncv.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/aresoncv.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/aresoncv.Tpo $(DEPDIR)/aresoncv.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/aresoncv.c' object='aresoncv.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o aresoncv.obj `if test -f '$(NYQUIST)/tran/aresoncv.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/aresoncv.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/aresoncv.c'; fi`
+
+aresonvv.o: $(NYQUIST)/tran/aresonvv.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT aresonvv.o -MD -MP -MF $(DEPDIR)/aresonvv.Tpo -c -o aresonvv.o `test -f '$(NYQUIST)/tran/aresonvv.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/aresonvv.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/aresonvv.Tpo $(DEPDIR)/aresonvv.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/aresonvv.c' object='aresonvv.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o aresonvv.o `test -f '$(NYQUIST)/tran/aresonvv.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/aresonvv.c
+
+aresonvv.obj: $(NYQUIST)/tran/aresonvv.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT aresonvv.obj -MD -MP -MF $(DEPDIR)/aresonvv.Tpo -c -o aresonvv.obj `if test -f '$(NYQUIST)/tran/aresonvv.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/aresonvv.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/aresonvv.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/aresonvv.Tpo $(DEPDIR)/aresonvv.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/aresonvv.c' object='aresonvv.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o aresonvv.obj `if test -f '$(NYQUIST)/tran/aresonvv.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/aresonvv.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/aresonvv.c'; fi`
+
+atone.o: $(NYQUIST)/tran/atone.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT atone.o -MD -MP -MF $(DEPDIR)/atone.Tpo -c -o atone.o `test -f '$(NYQUIST)/tran/atone.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/atone.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/atone.Tpo $(DEPDIR)/atone.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/atone.c' object='atone.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o atone.o `test -f '$(NYQUIST)/tran/atone.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/atone.c
+
+atone.obj: $(NYQUIST)/tran/atone.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT atone.obj -MD -MP -MF $(DEPDIR)/atone.Tpo -c -o atone.obj `if test -f '$(NYQUIST)/tran/atone.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/atone.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/atone.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/atone.Tpo $(DEPDIR)/atone.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/atone.c' object='atone.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o atone.obj `if test -f '$(NYQUIST)/tran/atone.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/atone.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/atone.c'; fi`
+
+atonev.o: $(NYQUIST)/tran/atonev.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT atonev.o -MD -MP -MF $(DEPDIR)/atonev.Tpo -c -o atonev.o `test -f '$(NYQUIST)/tran/atonev.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/atonev.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/atonev.Tpo $(DEPDIR)/atonev.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/atonev.c' object='atonev.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o atonev.o `test -f '$(NYQUIST)/tran/atonev.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/atonev.c
+
+atonev.obj: $(NYQUIST)/tran/atonev.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT atonev.obj -MD -MP -MF $(DEPDIR)/atonev.Tpo -c -o atonev.obj `if test -f '$(NYQUIST)/tran/atonev.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/atonev.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/atonev.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/atonev.Tpo $(DEPDIR)/atonev.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/atonev.c' object='atonev.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o atonev.obj `if test -f '$(NYQUIST)/tran/atonev.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/atonev.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/atonev.c'; fi`
+
+biquadfilt.o: $(NYQUIST)/tran/biquadfilt.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT biquadfilt.o -MD -MP -MF $(DEPDIR)/biquadfilt.Tpo -c -o biquadfilt.o `test -f '$(NYQUIST)/tran/biquadfilt.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/biquadfilt.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/biquadfilt.Tpo $(DEPDIR)/biquadfilt.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/biquadfilt.c' object='biquadfilt.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o biquadfilt.o `test -f '$(NYQUIST)/tran/biquadfilt.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/biquadfilt.c
+
+biquadfilt.obj: $(NYQUIST)/tran/biquadfilt.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT biquadfilt.obj -MD -MP -MF $(DEPDIR)/biquadfilt.Tpo -c -o biquadfilt.obj `if test -f '$(NYQUIST)/tran/biquadfilt.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/biquadfilt.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/biquadfilt.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/biquadfilt.Tpo $(DEPDIR)/biquadfilt.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/biquadfilt.c' object='biquadfilt.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o biquadfilt.obj `if test -f '$(NYQUIST)/tran/biquadfilt.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/biquadfilt.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/biquadfilt.c'; fi`
+
+buzz.o: $(NYQUIST)/tran/buzz.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT buzz.o -MD -MP -MF $(DEPDIR)/buzz.Tpo -c -o buzz.o `test -f '$(NYQUIST)/tran/buzz.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/buzz.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/buzz.Tpo $(DEPDIR)/buzz.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/buzz.c' object='buzz.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o buzz.o `test -f '$(NYQUIST)/tran/buzz.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/buzz.c
+
+buzz.obj: $(NYQUIST)/tran/buzz.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT buzz.obj -MD -MP -MF $(DEPDIR)/buzz.Tpo -c -o buzz.obj `if test -f '$(NYQUIST)/tran/buzz.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/buzz.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/buzz.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/buzz.Tpo $(DEPDIR)/buzz.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/buzz.c' object='buzz.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o buzz.obj `if test -f '$(NYQUIST)/tran/buzz.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/buzz.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/buzz.c'; fi`
+
+chase.o: $(NYQUIST)/tran/chase.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT chase.o -MD -MP -MF $(DEPDIR)/chase.Tpo -c -o chase.o `test -f '$(NYQUIST)/tran/chase.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/chase.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/chase.Tpo $(DEPDIR)/chase.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/chase.c' object='chase.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o chase.o `test -f '$(NYQUIST)/tran/chase.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/chase.c
+
+chase.obj: $(NYQUIST)/tran/chase.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT chase.obj -MD -MP -MF $(DEPDIR)/chase.Tpo -c -o chase.obj `if test -f '$(NYQUIST)/tran/chase.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/chase.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/chase.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/chase.Tpo $(DEPDIR)/chase.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/chase.c' object='chase.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o chase.obj `if test -f '$(NYQUIST)/tran/chase.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/chase.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/chase.c'; fi`
+
+clip.o: $(NYQUIST)/tran/clip.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT clip.o -MD -MP -MF $(DEPDIR)/clip.Tpo -c -o clip.o `test -f '$(NYQUIST)/tran/clip.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/clip.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/clip.Tpo $(DEPDIR)/clip.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/clip.c' object='clip.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o clip.o `test -f '$(NYQUIST)/tran/clip.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/clip.c
+
+clip.obj: $(NYQUIST)/tran/clip.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT clip.obj -MD -MP -MF $(DEPDIR)/clip.Tpo -c -o clip.obj `if test -f '$(NYQUIST)/tran/clip.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/clip.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/clip.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/clip.Tpo $(DEPDIR)/clip.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/clip.c' object='clip.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o clip.obj `if test -f '$(NYQUIST)/tran/clip.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/clip.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/clip.c'; fi`
+
+congen.o: $(NYQUIST)/tran/congen.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT congen.o -MD -MP -MF $(DEPDIR)/congen.Tpo -c -o congen.o `test -f '$(NYQUIST)/tran/congen.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/congen.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/congen.Tpo $(DEPDIR)/congen.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/congen.c' object='congen.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o congen.o `test -f '$(NYQUIST)/tran/congen.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/congen.c
+
+congen.obj: $(NYQUIST)/tran/congen.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT congen.obj -MD -MP -MF $(DEPDIR)/congen.Tpo -c -o congen.obj `if test -f '$(NYQUIST)/tran/congen.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/congen.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/congen.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/congen.Tpo $(DEPDIR)/congen.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/congen.c' object='congen.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o congen.obj `if test -f '$(NYQUIST)/tran/congen.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/congen.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/congen.c'; fi`
+
+const.o: $(NYQUIST)/tran/const.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT const.o -MD -MP -MF $(DEPDIR)/const.Tpo -c -o const.o `test -f '$(NYQUIST)/tran/const.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/const.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/const.Tpo $(DEPDIR)/const.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/const.c' object='const.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o const.o `test -f '$(NYQUIST)/tran/const.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/const.c
+
+const.obj: $(NYQUIST)/tran/const.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT const.obj -MD -MP -MF $(DEPDIR)/const.Tpo -c -o const.obj `if test -f '$(NYQUIST)/tran/const.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/const.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/const.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/const.Tpo $(DEPDIR)/const.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/const.c' object='const.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o const.obj `if test -f '$(NYQUIST)/tran/const.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/const.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/const.c'; fi`
+
+coterm.o: $(NYQUIST)/tran/coterm.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT coterm.o -MD -MP -MF $(DEPDIR)/coterm.Tpo -c -o coterm.o `test -f '$(NYQUIST)/tran/coterm.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/coterm.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/coterm.Tpo $(DEPDIR)/coterm.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/coterm.c' object='coterm.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o coterm.o `test -f '$(NYQUIST)/tran/coterm.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/coterm.c
+
+coterm.obj: $(NYQUIST)/tran/coterm.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT coterm.obj -MD -MP -MF $(DEPDIR)/coterm.Tpo -c -o coterm.obj `if test -f '$(NYQUIST)/tran/coterm.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/coterm.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/coterm.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/coterm.Tpo $(DEPDIR)/coterm.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/coterm.c' object='coterm.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o coterm.obj `if test -f '$(NYQUIST)/tran/coterm.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/coterm.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/coterm.c'; fi`
+
+delaycc.o: $(NYQUIST)/tran/delaycc.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT delaycc.o -MD -MP -MF $(DEPDIR)/delaycc.Tpo -c -o delaycc.o `test -f '$(NYQUIST)/tran/delaycc.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/delaycc.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/delaycc.Tpo $(DEPDIR)/delaycc.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/delaycc.c' object='delaycc.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o delaycc.o `test -f '$(NYQUIST)/tran/delaycc.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/delaycc.c
+
+delaycc.obj: $(NYQUIST)/tran/delaycc.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT delaycc.obj -MD -MP -MF $(DEPDIR)/delaycc.Tpo -c -o delaycc.obj `if test -f '$(NYQUIST)/tran/delaycc.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/delaycc.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/delaycc.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/delaycc.Tpo $(DEPDIR)/delaycc.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/delaycc.c' object='delaycc.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o delaycc.obj `if test -f '$(NYQUIST)/tran/delaycc.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/delaycc.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/delaycc.c'; fi`
+
+delaycv.o: $(NYQUIST)/tran/delaycv.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT delaycv.o -MD -MP -MF $(DEPDIR)/delaycv.Tpo -c -o delaycv.o `test -f '$(NYQUIST)/tran/delaycv.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/delaycv.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/delaycv.Tpo $(DEPDIR)/delaycv.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/delaycv.c' object='delaycv.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o delaycv.o `test -f '$(NYQUIST)/tran/delaycv.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/delaycv.c
+
+delaycv.obj: $(NYQUIST)/tran/delaycv.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT delaycv.obj -MD -MP -MF $(DEPDIR)/delaycv.Tpo -c -o delaycv.obj `if test -f '$(NYQUIST)/tran/delaycv.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/delaycv.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/delaycv.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/delaycv.Tpo $(DEPDIR)/delaycv.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/delaycv.c' object='delaycv.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o delaycv.obj `if test -f '$(NYQUIST)/tran/delaycv.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/delaycv.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/delaycv.c'; fi`
+
+eqbandvvv.o: $(NYQUIST)/tran/eqbandvvv.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT eqbandvvv.o -MD -MP -MF $(DEPDIR)/eqbandvvv.Tpo -c -o eqbandvvv.o `test -f '$(NYQUIST)/tran/eqbandvvv.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/eqbandvvv.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/eqbandvvv.Tpo $(DEPDIR)/eqbandvvv.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/eqbandvvv.c' object='eqbandvvv.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o eqbandvvv.o `test -f '$(NYQUIST)/tran/eqbandvvv.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/eqbandvvv.c
+
+eqbandvvv.obj: $(NYQUIST)/tran/eqbandvvv.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT eqbandvvv.obj -MD -MP -MF $(DEPDIR)/eqbandvvv.Tpo -c -o eqbandvvv.obj `if test -f '$(NYQUIST)/tran/eqbandvvv.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/eqbandvvv.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/eqbandvvv.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/eqbandvvv.Tpo $(DEPDIR)/eqbandvvv.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/eqbandvvv.c' object='eqbandvvv.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o eqbandvvv.obj `if test -f '$(NYQUIST)/tran/eqbandvvv.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/eqbandvvv.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/eqbandvvv.c'; fi`
+
+exp.o: $(NYQUIST)/tran/exp.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT exp.o -MD -MP -MF $(DEPDIR)/exp.Tpo -c -o exp.o `test -f '$(NYQUIST)/tran/exp.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/exp.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/exp.Tpo $(DEPDIR)/exp.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/exp.c' object='exp.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o exp.o `test -f '$(NYQUIST)/tran/exp.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/exp.c
+
+exp.obj: $(NYQUIST)/tran/exp.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT exp.obj -MD -MP -MF $(DEPDIR)/exp.Tpo -c -o exp.obj `if test -f '$(NYQUIST)/tran/exp.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/exp.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/exp.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/exp.Tpo $(DEPDIR)/exp.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/exp.c' object='exp.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o exp.obj `if test -f '$(NYQUIST)/tran/exp.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/exp.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/exp.c'; fi`
+
+follow.o: $(NYQUIST)/tran/follow.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT follow.o -MD -MP -MF $(DEPDIR)/follow.Tpo -c -o follow.o `test -f '$(NYQUIST)/tran/follow.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/follow.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/follow.Tpo $(DEPDIR)/follow.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/follow.c' object='follow.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o follow.o `test -f '$(NYQUIST)/tran/follow.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/follow.c
+
+follow.obj: $(NYQUIST)/tran/follow.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT follow.obj -MD -MP -MF $(DEPDIR)/follow.Tpo -c -o follow.obj `if test -f '$(NYQUIST)/tran/follow.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/follow.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/follow.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/follow.Tpo $(DEPDIR)/follow.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/follow.c' object='follow.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o follow.obj `if test -f '$(NYQUIST)/tran/follow.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/follow.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/follow.c'; fi`
+
+fmosc.o: $(NYQUIST)/tran/fmosc.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fmosc.o -MD -MP -MF $(DEPDIR)/fmosc.Tpo -c -o fmosc.o `test -f '$(NYQUIST)/tran/fmosc.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/fmosc.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/fmosc.Tpo $(DEPDIR)/fmosc.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/fmosc.c' object='fmosc.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fmosc.o `test -f '$(NYQUIST)/tran/fmosc.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/fmosc.c
+
+fmosc.obj: $(NYQUIST)/tran/fmosc.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fmosc.obj -MD -MP -MF $(DEPDIR)/fmosc.Tpo -c -o fmosc.obj `if test -f '$(NYQUIST)/tran/fmosc.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/fmosc.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/fmosc.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/fmosc.Tpo $(DEPDIR)/fmosc.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/fmosc.c' object='fmosc.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fmosc.obj `if test -f '$(NYQUIST)/tran/fmosc.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/fmosc.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/fmosc.c'; fi`
+
+fromobject.o: $(NYQUIST)/tran/fromobject.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fromobject.o -MD -MP -MF $(DEPDIR)/fromobject.Tpo -c -o fromobject.o `test -f '$(NYQUIST)/tran/fromobject.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/fromobject.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/fromobject.Tpo $(DEPDIR)/fromobject.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/fromobject.c' object='fromobject.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fromobject.o `test -f '$(NYQUIST)/tran/fromobject.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/fromobject.c
+
+fromobject.obj: $(NYQUIST)/tran/fromobject.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fromobject.obj -MD -MP -MF $(DEPDIR)/fromobject.Tpo -c -o fromobject.obj `if test -f '$(NYQUIST)/tran/fromobject.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/fromobject.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/fromobject.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/fromobject.Tpo $(DEPDIR)/fromobject.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/fromobject.c' object='fromobject.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fromobject.obj `if test -f '$(NYQUIST)/tran/fromobject.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/fromobject.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/fromobject.c'; fi`
+
+fromarraystream.o: $(NYQUIST)/tran/fromarraystream.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fromarraystream.o -MD -MP -MF $(DEPDIR)/fromarraystream.Tpo -c -o fromarraystream.o `test -f '$(NYQUIST)/tran/fromarraystream.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/fromarraystream.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/fromarraystream.Tpo $(DEPDIR)/fromarraystream.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/fromarraystream.c' object='fromarraystream.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fromarraystream.o `test -f '$(NYQUIST)/tran/fromarraystream.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/fromarraystream.c
+
+fromarraystream.obj: $(NYQUIST)/tran/fromarraystream.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fromarraystream.obj -MD -MP -MF $(DEPDIR)/fromarraystream.Tpo -c -o fromarraystream.obj `if test -f '$(NYQUIST)/tran/fromarraystream.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/fromarraystream.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/fromarraystream.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/fromarraystream.Tpo $(DEPDIR)/fromarraystream.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/fromarraystream.c' object='fromarraystream.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fromarraystream.obj `if test -f '$(NYQUIST)/tran/fromarraystream.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/fromarraystream.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/fromarraystream.c'; fi`
+
+gate.o: $(NYQUIST)/tran/gate.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT gate.o -MD -MP -MF $(DEPDIR)/gate.Tpo -c -o gate.o `test -f '$(NYQUIST)/tran/gate.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/gate.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/gate.Tpo $(DEPDIR)/gate.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/gate.c' object='gate.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o gate.o `test -f '$(NYQUIST)/tran/gate.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/gate.c
+
+gate.obj: $(NYQUIST)/tran/gate.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT gate.obj -MD -MP -MF $(DEPDIR)/gate.Tpo -c -o gate.obj `if test -f '$(NYQUIST)/tran/gate.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/gate.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/gate.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/gate.Tpo $(DEPDIR)/gate.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/gate.c' object='gate.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o gate.obj `if test -f '$(NYQUIST)/tran/gate.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/gate.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/gate.c'; fi`
+
+ifft.o: $(NYQUIST)/tran/ifft.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ifft.o -MD -MP -MF $(DEPDIR)/ifft.Tpo -c -o ifft.o `test -f '$(NYQUIST)/tran/ifft.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/ifft.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/ifft.Tpo $(DEPDIR)/ifft.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/ifft.c' object='ifft.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ifft.o `test -f '$(NYQUIST)/tran/ifft.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/ifft.c
+
+ifft.obj: $(NYQUIST)/tran/ifft.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ifft.obj -MD -MP -MF $(DEPDIR)/ifft.Tpo -c -o ifft.obj `if test -f '$(NYQUIST)/tran/ifft.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/ifft.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/ifft.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/ifft.Tpo $(DEPDIR)/ifft.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/ifft.c' object='ifft.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ifft.obj `if test -f '$(NYQUIST)/tran/ifft.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/ifft.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/ifft.c'; fi`
+
+instrclar.o: $(NYQUIST)/tran/instrclar.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT instrclar.o -MD -MP -MF $(DEPDIR)/instrclar.Tpo -c -o instrclar.o `test -f '$(NYQUIST)/tran/instrclar.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/instrclar.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/instrclar.Tpo $(DEPDIR)/instrclar.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/instrclar.c' object='instrclar.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o instrclar.o `test -f '$(NYQUIST)/tran/instrclar.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/instrclar.c
+
+instrclar.obj: $(NYQUIST)/tran/instrclar.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT instrclar.obj -MD -MP -MF $(DEPDIR)/instrclar.Tpo -c -o instrclar.obj `if test -f '$(NYQUIST)/tran/instrclar.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/instrclar.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/instrclar.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/instrclar.Tpo $(DEPDIR)/instrclar.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/instrclar.c' object='instrclar.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o instrclar.obj `if test -f '$(NYQUIST)/tran/instrclar.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/instrclar.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/instrclar.c'; fi`
+
+instrclarall.o: $(NYQUIST)/tran/instrclarall.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT instrclarall.o -MD -MP -MF $(DEPDIR)/instrclarall.Tpo -c -o instrclarall.o `test -f '$(NYQUIST)/tran/instrclarall.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/instrclarall.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/instrclarall.Tpo $(DEPDIR)/instrclarall.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/instrclarall.c' object='instrclarall.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o instrclarall.o `test -f '$(NYQUIST)/tran/instrclarall.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/instrclarall.c
+
+instrclarall.obj: $(NYQUIST)/tran/instrclarall.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT instrclarall.obj -MD -MP -MF $(DEPDIR)/instrclarall.Tpo -c -o instrclarall.obj `if test -f '$(NYQUIST)/tran/instrclarall.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/instrclarall.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/instrclarall.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/instrclarall.Tpo $(DEPDIR)/instrclarall.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/instrclarall.c' object='instrclarall.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o instrclarall.obj `if test -f '$(NYQUIST)/tran/instrclarall.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/instrclarall.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/instrclarall.c'; fi`
+
+instrclarfreq.o: $(NYQUIST)/tran/instrclarfreq.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT instrclarfreq.o -MD -MP -MF $(DEPDIR)/instrclarfreq.Tpo -c -o instrclarfreq.o `test -f '$(NYQUIST)/tran/instrclarfreq.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/instrclarfreq.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/instrclarfreq.Tpo $(DEPDIR)/instrclarfreq.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/instrclarfreq.c' object='instrclarfreq.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o instrclarfreq.o `test -f '$(NYQUIST)/tran/instrclarfreq.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/instrclarfreq.c
+
+instrclarfreq.obj: $(NYQUIST)/tran/instrclarfreq.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT instrclarfreq.obj -MD -MP -MF $(DEPDIR)/instrclarfreq.Tpo -c -o instrclarfreq.obj `if test -f '$(NYQUIST)/tran/instrclarfreq.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/instrclarfreq.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/instrclarfreq.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/instrclarfreq.Tpo $(DEPDIR)/instrclarfreq.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/instrclarfreq.c' object='instrclarfreq.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o instrclarfreq.obj `if test -f '$(NYQUIST)/tran/instrclarfreq.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/instrclarfreq.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/instrclarfreq.c'; fi`
+
+instrsax.o: $(NYQUIST)/tran/instrsax.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT instrsax.o -MD -MP -MF $(DEPDIR)/instrsax.Tpo -c -o instrsax.o `test -f '$(NYQUIST)/tran/instrsax.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/instrsax.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/instrsax.Tpo $(DEPDIR)/instrsax.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/instrsax.c' object='instrsax.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o instrsax.o `test -f '$(NYQUIST)/tran/instrsax.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/instrsax.c
+
+instrsax.obj: $(NYQUIST)/tran/instrsax.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT instrsax.obj -MD -MP -MF $(DEPDIR)/instrsax.Tpo -c -o instrsax.obj `if test -f '$(NYQUIST)/tran/instrsax.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/instrsax.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/instrsax.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/instrsax.Tpo $(DEPDIR)/instrsax.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/instrsax.c' object='instrsax.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o instrsax.obj `if test -f '$(NYQUIST)/tran/instrsax.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/instrsax.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/instrsax.c'; fi`
+
+instrsaxall.o: $(NYQUIST)/tran/instrsaxall.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT instrsaxall.o -MD -MP -MF $(DEPDIR)/instrsaxall.Tpo -c -o instrsaxall.o `test -f '$(NYQUIST)/tran/instrsaxall.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/instrsaxall.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/instrsaxall.Tpo $(DEPDIR)/instrsaxall.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/instrsaxall.c' object='instrsaxall.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o instrsaxall.o `test -f '$(NYQUIST)/tran/instrsaxall.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/instrsaxall.c
+
+instrsaxall.obj: $(NYQUIST)/tran/instrsaxall.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT instrsaxall.obj -MD -MP -MF $(DEPDIR)/instrsaxall.Tpo -c -o instrsaxall.obj `if test -f '$(NYQUIST)/tran/instrsaxall.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/instrsaxall.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/instrsaxall.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/instrsaxall.Tpo $(DEPDIR)/instrsaxall.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/instrsaxall.c' object='instrsaxall.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o instrsaxall.obj `if test -f '$(NYQUIST)/tran/instrsaxall.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/instrsaxall.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/instrsaxall.c'; fi`
+
+instrsaxfreq.o: $(NYQUIST)/tran/instrsaxfreq.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT instrsaxfreq.o -MD -MP -MF $(DEPDIR)/instrsaxfreq.Tpo -c -o instrsaxfreq.o `test -f '$(NYQUIST)/tran/instrsaxfreq.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/instrsaxfreq.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/instrsaxfreq.Tpo $(DEPDIR)/instrsaxfreq.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/instrsaxfreq.c' object='instrsaxfreq.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o instrsaxfreq.o `test -f '$(NYQUIST)/tran/instrsaxfreq.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/instrsaxfreq.c
+
+instrsaxfreq.obj: $(NYQUIST)/tran/instrsaxfreq.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT instrsaxfreq.obj -MD -MP -MF $(DEPDIR)/instrsaxfreq.Tpo -c -o instrsaxfreq.obj `if test -f '$(NYQUIST)/tran/instrsaxfreq.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/instrsaxfreq.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/instrsaxfreq.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/instrsaxfreq.Tpo $(DEPDIR)/instrsaxfreq.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/instrsaxfreq.c' object='instrsaxfreq.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o instrsaxfreq.obj `if test -f '$(NYQUIST)/tran/instrsaxfreq.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/instrsaxfreq.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/instrsaxfreq.c'; fi`
+
+integrate.o: $(NYQUIST)/tran/integrate.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT integrate.o -MD -MP -MF $(DEPDIR)/integrate.Tpo -c -o integrate.o `test -f '$(NYQUIST)/tran/integrate.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/integrate.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/integrate.Tpo $(DEPDIR)/integrate.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/integrate.c' object='integrate.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o integrate.o `test -f '$(NYQUIST)/tran/integrate.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/integrate.c
+
+integrate.obj: $(NYQUIST)/tran/integrate.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT integrate.obj -MD -MP -MF $(DEPDIR)/integrate.Tpo -c -o integrate.obj `if test -f '$(NYQUIST)/tran/integrate.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/integrate.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/integrate.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/integrate.Tpo $(DEPDIR)/integrate.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/integrate.c' object='integrate.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o integrate.obj `if test -f '$(NYQUIST)/tran/integrate.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/integrate.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/integrate.c'; fi`
+
+log.o: $(NYQUIST)/tran/log.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT log.o -MD -MP -MF $(DEPDIR)/log.Tpo -c -o log.o `test -f '$(NYQUIST)/tran/log.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/log.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/log.Tpo $(DEPDIR)/log.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/log.c' object='log.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o log.o `test -f '$(NYQUIST)/tran/log.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/log.c
+
+log.obj: $(NYQUIST)/tran/log.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT log.obj -MD -MP -MF $(DEPDIR)/log.Tpo -c -o log.obj `if test -f '$(NYQUIST)/tran/log.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/log.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/log.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/log.Tpo $(DEPDIR)/log.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/log.c' object='log.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o log.obj `if test -f '$(NYQUIST)/tran/log.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/log.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/log.c'; fi`
+
+lpreson.o: $(NYQUIST)/tran/lpreson.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lpreson.o -MD -MP -MF $(DEPDIR)/lpreson.Tpo -c -o lpreson.o `test -f '$(NYQUIST)/tran/lpreson.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/lpreson.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/lpreson.Tpo $(DEPDIR)/lpreson.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/lpreson.c' object='lpreson.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lpreson.o `test -f '$(NYQUIST)/tran/lpreson.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/lpreson.c
+
+lpreson.obj: $(NYQUIST)/tran/lpreson.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lpreson.obj -MD -MP -MF $(DEPDIR)/lpreson.Tpo -c -o lpreson.obj `if test -f '$(NYQUIST)/tran/lpreson.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/lpreson.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/lpreson.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/lpreson.Tpo $(DEPDIR)/lpreson.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/lpreson.c' object='lpreson.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lpreson.obj `if test -f '$(NYQUIST)/tran/lpreson.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/lpreson.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/lpreson.c'; fi`
+
+maxv.o: $(NYQUIST)/tran/maxv.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT maxv.o -MD -MP -MF $(DEPDIR)/maxv.Tpo -c -o maxv.o `test -f '$(NYQUIST)/tran/maxv.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/maxv.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/maxv.Tpo $(DEPDIR)/maxv.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/maxv.c' object='maxv.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o maxv.o `test -f '$(NYQUIST)/tran/maxv.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/maxv.c
+
+maxv.obj: $(NYQUIST)/tran/maxv.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT maxv.obj -MD -MP -MF $(DEPDIR)/maxv.Tpo -c -o maxv.obj `if test -f '$(NYQUIST)/tran/maxv.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/maxv.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/maxv.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/maxv.Tpo $(DEPDIR)/maxv.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/maxv.c' object='maxv.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o maxv.obj `if test -f '$(NYQUIST)/tran/maxv.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/maxv.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/maxv.c'; fi`
+
+offset.o: $(NYQUIST)/tran/offset.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT offset.o -MD -MP -MF $(DEPDIR)/offset.Tpo -c -o offset.o `test -f '$(NYQUIST)/tran/offset.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/offset.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/offset.Tpo $(DEPDIR)/offset.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/offset.c' object='offset.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o offset.o `test -f '$(NYQUIST)/tran/offset.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/offset.c
+
+offset.obj: $(NYQUIST)/tran/offset.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT offset.obj -MD -MP -MF $(DEPDIR)/offset.Tpo -c -o offset.obj `if test -f '$(NYQUIST)/tran/offset.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/offset.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/offset.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/offset.Tpo $(DEPDIR)/offset.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/offset.c' object='offset.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o offset.obj `if test -f '$(NYQUIST)/tran/offset.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/offset.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/offset.c'; fi`
+
+oneshot.o: $(NYQUIST)/tran/oneshot.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT oneshot.o -MD -MP -MF $(DEPDIR)/oneshot.Tpo -c -o oneshot.o `test -f '$(NYQUIST)/tran/oneshot.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/oneshot.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/oneshot.Tpo $(DEPDIR)/oneshot.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/oneshot.c' object='oneshot.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o oneshot.o `test -f '$(NYQUIST)/tran/oneshot.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/oneshot.c
+
+oneshot.obj: $(NYQUIST)/tran/oneshot.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT oneshot.obj -MD -MP -MF $(DEPDIR)/oneshot.Tpo -c -o oneshot.obj `if test -f '$(NYQUIST)/tran/oneshot.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/oneshot.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/oneshot.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/oneshot.Tpo $(DEPDIR)/oneshot.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/oneshot.c' object='oneshot.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o oneshot.obj `if test -f '$(NYQUIST)/tran/oneshot.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/oneshot.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/oneshot.c'; fi`
+
+osc.o: $(NYQUIST)/tran/osc.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT osc.o -MD -MP -MF $(DEPDIR)/osc.Tpo -c -o osc.o `test -f '$(NYQUIST)/tran/osc.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/osc.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/osc.Tpo $(DEPDIR)/osc.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/osc.c' object='osc.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o osc.o `test -f '$(NYQUIST)/tran/osc.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/osc.c
+
+osc.obj: $(NYQUIST)/tran/osc.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT osc.obj -MD -MP -MF $(DEPDIR)/osc.Tpo -c -o osc.obj `if test -f '$(NYQUIST)/tran/osc.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/osc.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/osc.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/osc.Tpo $(DEPDIR)/osc.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/osc.c' object='osc.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o osc.obj `if test -f '$(NYQUIST)/tran/osc.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/osc.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/osc.c'; fi`
+
+partial.o: $(NYQUIST)/tran/partial.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT partial.o -MD -MP -MF $(DEPDIR)/partial.Tpo -c -o partial.o `test -f '$(NYQUIST)/tran/partial.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/partial.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/partial.Tpo $(DEPDIR)/partial.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/partial.c' object='partial.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o partial.o `test -f '$(NYQUIST)/tran/partial.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/partial.c
+
+partial.obj: $(NYQUIST)/tran/partial.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT partial.obj -MD -MP -MF $(DEPDIR)/partial.Tpo -c -o partial.obj `if test -f '$(NYQUIST)/tran/partial.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/partial.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/partial.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/partial.Tpo $(DEPDIR)/partial.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/partial.c' object='partial.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o partial.obj `if test -f '$(NYQUIST)/tran/partial.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/partial.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/partial.c'; fi`
+
+pluck.o: $(NYQUIST)/tran/pluck.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT pluck.o -MD -MP -MF $(DEPDIR)/pluck.Tpo -c -o pluck.o `test -f '$(NYQUIST)/tran/pluck.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/pluck.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/pluck.Tpo $(DEPDIR)/pluck.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/pluck.c' object='pluck.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o pluck.o `test -f '$(NYQUIST)/tran/pluck.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/pluck.c
+
+pluck.obj: $(NYQUIST)/tran/pluck.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT pluck.obj -MD -MP -MF $(DEPDIR)/pluck.Tpo -c -o pluck.obj `if test -f '$(NYQUIST)/tran/pluck.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/pluck.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/pluck.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/pluck.Tpo $(DEPDIR)/pluck.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/pluck.c' object='pluck.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o pluck.obj `if test -f '$(NYQUIST)/tran/pluck.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/pluck.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/pluck.c'; fi`
+
+prod.o: $(NYQUIST)/tran/prod.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT prod.o -MD -MP -MF $(DEPDIR)/prod.Tpo -c -o prod.o `test -f '$(NYQUIST)/tran/prod.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/prod.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/prod.Tpo $(DEPDIR)/prod.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/prod.c' object='prod.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o prod.o `test -f '$(NYQUIST)/tran/prod.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/prod.c
+
+prod.obj: $(NYQUIST)/tran/prod.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT prod.obj -MD -MP -MF $(DEPDIR)/prod.Tpo -c -o prod.obj `if test -f '$(NYQUIST)/tran/prod.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/prod.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/prod.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/prod.Tpo $(DEPDIR)/prod.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/prod.c' object='prod.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o prod.obj `if test -f '$(NYQUIST)/tran/prod.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/prod.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/prod.c'; fi`
+
+pwl.o: $(NYQUIST)/tran/pwl.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT pwl.o -MD -MP -MF $(DEPDIR)/pwl.Tpo -c -o pwl.o `test -f '$(NYQUIST)/tran/pwl.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/pwl.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/pwl.Tpo $(DEPDIR)/pwl.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/pwl.c' object='pwl.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o pwl.o `test -f '$(NYQUIST)/tran/pwl.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/pwl.c
+
+pwl.obj: $(NYQUIST)/tran/pwl.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT pwl.obj -MD -MP -MF $(DEPDIR)/pwl.Tpo -c -o pwl.obj `if test -f '$(NYQUIST)/tran/pwl.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/pwl.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/pwl.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/pwl.Tpo $(DEPDIR)/pwl.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/pwl.c' object='pwl.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o pwl.obj `if test -f '$(NYQUIST)/tran/pwl.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/pwl.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/pwl.c'; fi`
+
+quantize.o: $(NYQUIST)/tran/quantize.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT quantize.o -MD -MP -MF $(DEPDIR)/quantize.Tpo -c -o quantize.o `test -f '$(NYQUIST)/tran/quantize.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/quantize.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/quantize.Tpo $(DEPDIR)/quantize.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/quantize.c' object='quantize.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o quantize.o `test -f '$(NYQUIST)/tran/quantize.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/quantize.c
+
+quantize.obj: $(NYQUIST)/tran/quantize.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT quantize.obj -MD -MP -MF $(DEPDIR)/quantize.Tpo -c -o quantize.obj `if test -f '$(NYQUIST)/tran/quantize.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/quantize.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/quantize.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/quantize.Tpo $(DEPDIR)/quantize.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/quantize.c' object='quantize.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o quantize.obj `if test -f '$(NYQUIST)/tran/quantize.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/quantize.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/quantize.c'; fi`
+
+recip.o: $(NYQUIST)/tran/recip.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT recip.o -MD -MP -MF $(DEPDIR)/recip.Tpo -c -o recip.o `test -f '$(NYQUIST)/tran/recip.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/recip.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/recip.Tpo $(DEPDIR)/recip.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/recip.c' object='recip.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o recip.o `test -f '$(NYQUIST)/tran/recip.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/recip.c
+
+recip.obj: $(NYQUIST)/tran/recip.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT recip.obj -MD -MP -MF $(DEPDIR)/recip.Tpo -c -o recip.obj `if test -f '$(NYQUIST)/tran/recip.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/recip.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/recip.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/recip.Tpo $(DEPDIR)/recip.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/recip.c' object='recip.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o recip.obj `if test -f '$(NYQUIST)/tran/recip.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/recip.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/recip.c'; fi`
+
+reson.o: $(NYQUIST)/tran/reson.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT reson.o -MD -MP -MF $(DEPDIR)/reson.Tpo -c -o reson.o `test -f '$(NYQUIST)/tran/reson.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/reson.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/reson.Tpo $(DEPDIR)/reson.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/reson.c' object='reson.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o reson.o `test -f '$(NYQUIST)/tran/reson.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/reson.c
+
+reson.obj: $(NYQUIST)/tran/reson.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT reson.obj -MD -MP -MF $(DEPDIR)/reson.Tpo -c -o reson.obj `if test -f '$(NYQUIST)/tran/reson.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/reson.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/reson.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/reson.Tpo $(DEPDIR)/reson.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/reson.c' object='reson.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o reson.obj `if test -f '$(NYQUIST)/tran/reson.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/reson.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/reson.c'; fi`
+
+resonvc.o: $(NYQUIST)/tran/resonvc.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT resonvc.o -MD -MP -MF $(DEPDIR)/resonvc.Tpo -c -o resonvc.o `test -f '$(NYQUIST)/tran/resonvc.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/resonvc.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/resonvc.Tpo $(DEPDIR)/resonvc.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/resonvc.c' object='resonvc.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o resonvc.o `test -f '$(NYQUIST)/tran/resonvc.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/resonvc.c
+
+resonvc.obj: $(NYQUIST)/tran/resonvc.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT resonvc.obj -MD -MP -MF $(DEPDIR)/resonvc.Tpo -c -o resonvc.obj `if test -f '$(NYQUIST)/tran/resonvc.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/resonvc.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/resonvc.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/resonvc.Tpo $(DEPDIR)/resonvc.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/resonvc.c' object='resonvc.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o resonvc.obj `if test -f '$(NYQUIST)/tran/resonvc.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/resonvc.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/resonvc.c'; fi`
+
+resoncv.o: $(NYQUIST)/tran/resoncv.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT resoncv.o -MD -MP -MF $(DEPDIR)/resoncv.Tpo -c -o resoncv.o `test -f '$(NYQUIST)/tran/resoncv.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/resoncv.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/resoncv.Tpo $(DEPDIR)/resoncv.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/resoncv.c' object='resoncv.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o resoncv.o `test -f '$(NYQUIST)/tran/resoncv.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/resoncv.c
+
+resoncv.obj: $(NYQUIST)/tran/resoncv.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT resoncv.obj -MD -MP -MF $(DEPDIR)/resoncv.Tpo -c -o resoncv.obj `if test -f '$(NYQUIST)/tran/resoncv.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/resoncv.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/resoncv.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/resoncv.Tpo $(DEPDIR)/resoncv.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/resoncv.c' object='resoncv.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o resoncv.obj `if test -f '$(NYQUIST)/tran/resoncv.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/resoncv.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/resoncv.c'; fi`
+
+resonvv.o: $(NYQUIST)/tran/resonvv.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT resonvv.o -MD -MP -MF $(DEPDIR)/resonvv.Tpo -c -o resonvv.o `test -f '$(NYQUIST)/tran/resonvv.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/resonvv.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/resonvv.Tpo $(DEPDIR)/resonvv.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/resonvv.c' object='resonvv.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o resonvv.o `test -f '$(NYQUIST)/tran/resonvv.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/resonvv.c
+
+resonvv.obj: $(NYQUIST)/tran/resonvv.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT resonvv.obj -MD -MP -MF $(DEPDIR)/resonvv.Tpo -c -o resonvv.obj `if test -f '$(NYQUIST)/tran/resonvv.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/resonvv.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/resonvv.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/resonvv.Tpo $(DEPDIR)/resonvv.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/resonvv.c' object='resonvv.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o resonvv.obj `if test -f '$(NYQUIST)/tran/resonvv.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/resonvv.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/resonvv.c'; fi`
+
+sampler.o: $(NYQUIST)/tran/sampler.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sampler.o -MD -MP -MF $(DEPDIR)/sampler.Tpo -c -o sampler.o `test -f '$(NYQUIST)/tran/sampler.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/sampler.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/sampler.Tpo $(DEPDIR)/sampler.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/sampler.c' object='sampler.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sampler.o `test -f '$(NYQUIST)/tran/sampler.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/sampler.c
+
+sampler.obj: $(NYQUIST)/tran/sampler.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sampler.obj -MD -MP -MF $(DEPDIR)/sampler.Tpo -c -o sampler.obj `if test -f '$(NYQUIST)/tran/sampler.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/sampler.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/sampler.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/sampler.Tpo $(DEPDIR)/sampler.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/sampler.c' object='sampler.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sampler.obj `if test -f '$(NYQUIST)/tran/sampler.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/sampler.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/sampler.c'; fi`
+
+scale.o: $(NYQUIST)/tran/scale.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT scale.o -MD -MP -MF $(DEPDIR)/scale.Tpo -c -o scale.o `test -f '$(NYQUIST)/tran/scale.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/scale.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/scale.Tpo $(DEPDIR)/scale.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/scale.c' object='scale.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o scale.o `test -f '$(NYQUIST)/tran/scale.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/scale.c
+
+scale.obj: $(NYQUIST)/tran/scale.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT scale.obj -MD -MP -MF $(DEPDIR)/scale.Tpo -c -o scale.obj `if test -f '$(NYQUIST)/tran/scale.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/scale.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/scale.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/scale.Tpo $(DEPDIR)/scale.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/scale.c' object='scale.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o scale.obj `if test -f '$(NYQUIST)/tran/scale.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/scale.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/scale.c'; fi`
+
+shape.o: $(NYQUIST)/tran/shape.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT shape.o -MD -MP -MF $(DEPDIR)/shape.Tpo -c -o shape.o `test -f '$(NYQUIST)/tran/shape.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/shape.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/shape.Tpo $(DEPDIR)/shape.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/shape.c' object='shape.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o shape.o `test -f '$(NYQUIST)/tran/shape.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/shape.c
+
+shape.obj: $(NYQUIST)/tran/shape.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT shape.obj -MD -MP -MF $(DEPDIR)/shape.Tpo -c -o shape.obj `if test -f '$(NYQUIST)/tran/shape.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/shape.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/shape.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/shape.Tpo $(DEPDIR)/shape.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/shape.c' object='shape.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o shape.obj `if test -f '$(NYQUIST)/tran/shape.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/shape.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/shape.c'; fi`
+
+sine.o: $(NYQUIST)/tran/sine.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sine.o -MD -MP -MF $(DEPDIR)/sine.Tpo -c -o sine.o `test -f '$(NYQUIST)/tran/sine.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/sine.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/sine.Tpo $(DEPDIR)/sine.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/sine.c' object='sine.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sine.o `test -f '$(NYQUIST)/tran/sine.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/sine.c
+
+sine.obj: $(NYQUIST)/tran/sine.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sine.obj -MD -MP -MF $(DEPDIR)/sine.Tpo -c -o sine.obj `if test -f '$(NYQUIST)/tran/sine.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/sine.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/sine.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/sine.Tpo $(DEPDIR)/sine.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/sine.c' object='sine.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sine.obj `if test -f '$(NYQUIST)/tran/sine.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/sine.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/sine.c'; fi`
+
+siosc.o: $(NYQUIST)/tran/siosc.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT siosc.o -MD -MP -MF $(DEPDIR)/siosc.Tpo -c -o siosc.o `test -f '$(NYQUIST)/tran/siosc.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/siosc.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/siosc.Tpo $(DEPDIR)/siosc.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/siosc.c' object='siosc.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o siosc.o `test -f '$(NYQUIST)/tran/siosc.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/siosc.c
+
+siosc.obj: $(NYQUIST)/tran/siosc.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT siosc.obj -MD -MP -MF $(DEPDIR)/siosc.Tpo -c -o siosc.obj `if test -f '$(NYQUIST)/tran/siosc.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/siosc.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/siosc.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/siosc.Tpo $(DEPDIR)/siosc.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/siosc.c' object='siosc.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o siosc.obj `if test -f '$(NYQUIST)/tran/siosc.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/siosc.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/siosc.c'; fi`
+
+slope.o: $(NYQUIST)/tran/slope.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT slope.o -MD -MP -MF $(DEPDIR)/slope.Tpo -c -o slope.o `test -f '$(NYQUIST)/tran/slope.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/slope.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/slope.Tpo $(DEPDIR)/slope.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/slope.c' object='slope.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o slope.o `test -f '$(NYQUIST)/tran/slope.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/slope.c
+
+slope.obj: $(NYQUIST)/tran/slope.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT slope.obj -MD -MP -MF $(DEPDIR)/slope.Tpo -c -o slope.obj `if test -f '$(NYQUIST)/tran/slope.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/slope.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/slope.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/slope.Tpo $(DEPDIR)/slope.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/slope.c' object='slope.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o slope.obj `if test -f '$(NYQUIST)/tran/slope.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/slope.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/slope.c'; fi`
+
+sqrt.o: $(NYQUIST)/tran/sqrt.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sqrt.o -MD -MP -MF $(DEPDIR)/sqrt.Tpo -c -o sqrt.o `test -f '$(NYQUIST)/tran/sqrt.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/sqrt.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/sqrt.Tpo $(DEPDIR)/sqrt.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/sqrt.c' object='sqrt.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sqrt.o `test -f '$(NYQUIST)/tran/sqrt.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/sqrt.c
+
+sqrt.obj: $(NYQUIST)/tran/sqrt.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sqrt.obj -MD -MP -MF $(DEPDIR)/sqrt.Tpo -c -o sqrt.obj `if test -f '$(NYQUIST)/tran/sqrt.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/sqrt.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/sqrt.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/sqrt.Tpo $(DEPDIR)/sqrt.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/sqrt.c' object='sqrt.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sqrt.obj `if test -f '$(NYQUIST)/tran/sqrt.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/sqrt.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/sqrt.c'; fi`
+
+tapf.o: $(NYQUIST)/tran/tapf.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT tapf.o -MD -MP -MF $(DEPDIR)/tapf.Tpo -c -o tapf.o `test -f '$(NYQUIST)/tran/tapf.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/tapf.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/tapf.Tpo $(DEPDIR)/tapf.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/tapf.c' object='tapf.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o tapf.o `test -f '$(NYQUIST)/tran/tapf.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/tapf.c
+
+tapf.obj: $(NYQUIST)/tran/tapf.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT tapf.obj -MD -MP -MF $(DEPDIR)/tapf.Tpo -c -o tapf.obj `if test -f '$(NYQUIST)/tran/tapf.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/tapf.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/tapf.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/tapf.Tpo $(DEPDIR)/tapf.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/tapf.c' object='tapf.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o tapf.obj `if test -f '$(NYQUIST)/tran/tapf.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/tapf.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/tapf.c'; fi`
+
+tapv.o: $(NYQUIST)/tran/tapv.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT tapv.o -MD -MP -MF $(DEPDIR)/tapv.Tpo -c -o tapv.o `test -f '$(NYQUIST)/tran/tapv.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/tapv.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/tapv.Tpo $(DEPDIR)/tapv.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/tapv.c' object='tapv.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o tapv.o `test -f '$(NYQUIST)/tran/tapv.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/tapv.c
+
+tapv.obj: $(NYQUIST)/tran/tapv.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT tapv.obj -MD -MP -MF $(DEPDIR)/tapv.Tpo -c -o tapv.obj `if test -f '$(NYQUIST)/tran/tapv.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/tapv.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/tapv.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/tapv.Tpo $(DEPDIR)/tapv.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/tapv.c' object='tapv.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o tapv.obj `if test -f '$(NYQUIST)/tran/tapv.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/tapv.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/tapv.c'; fi`
+
+tone.o: $(NYQUIST)/tran/tone.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT tone.o -MD -MP -MF $(DEPDIR)/tone.Tpo -c -o tone.o `test -f '$(NYQUIST)/tran/tone.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/tone.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/tone.Tpo $(DEPDIR)/tone.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/tone.c' object='tone.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o tone.o `test -f '$(NYQUIST)/tran/tone.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/tone.c
+
+tone.obj: $(NYQUIST)/tran/tone.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT tone.obj -MD -MP -MF $(DEPDIR)/tone.Tpo -c -o tone.obj `if test -f '$(NYQUIST)/tran/tone.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/tone.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/tone.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/tone.Tpo $(DEPDIR)/tone.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/tone.c' object='tone.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o tone.obj `if test -f '$(NYQUIST)/tran/tone.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/tone.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/tone.c'; fi`
+
+tonev.o: $(NYQUIST)/tran/tonev.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT tonev.o -MD -MP -MF $(DEPDIR)/tonev.Tpo -c -o tonev.o `test -f '$(NYQUIST)/tran/tonev.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/tonev.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/tonev.Tpo $(DEPDIR)/tonev.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/tonev.c' object='tonev.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o tonev.o `test -f '$(NYQUIST)/tran/tonev.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/tonev.c
+
+tonev.obj: $(NYQUIST)/tran/tonev.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT tonev.obj -MD -MP -MF $(DEPDIR)/tonev.Tpo -c -o tonev.obj `if test -f '$(NYQUIST)/tran/tonev.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/tonev.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/tonev.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/tonev.Tpo $(DEPDIR)/tonev.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/tonev.c' object='tonev.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o tonev.obj `if test -f '$(NYQUIST)/tran/tonev.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/tonev.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/tonev.c'; fi`
+
+upsample.o: $(NYQUIST)/tran/upsample.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT upsample.o -MD -MP -MF $(DEPDIR)/upsample.Tpo -c -o upsample.o `test -f '$(NYQUIST)/tran/upsample.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/upsample.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/upsample.Tpo $(DEPDIR)/upsample.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/upsample.c' object='upsample.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o upsample.o `test -f '$(NYQUIST)/tran/upsample.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/upsample.c
+
+upsample.obj: $(NYQUIST)/tran/upsample.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT upsample.obj -MD -MP -MF $(DEPDIR)/upsample.Tpo -c -o upsample.obj `if test -f '$(NYQUIST)/tran/upsample.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/upsample.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/upsample.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/upsample.Tpo $(DEPDIR)/upsample.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/upsample.c' object='upsample.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o upsample.obj `if test -f '$(NYQUIST)/tran/upsample.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/upsample.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/upsample.c'; fi`
+
+white.o: $(NYQUIST)/tran/white.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT white.o -MD -MP -MF $(DEPDIR)/white.Tpo -c -o white.o `test -f '$(NYQUIST)/tran/white.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/white.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/white.Tpo $(DEPDIR)/white.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/white.c' object='white.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o white.o `test -f '$(NYQUIST)/tran/white.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/white.c
+
+white.obj: $(NYQUIST)/tran/white.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT white.obj -MD -MP -MF $(DEPDIR)/white.Tpo -c -o white.obj `if test -f '$(NYQUIST)/tran/white.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/white.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/white.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/white.Tpo $(DEPDIR)/white.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/white.c' object='white.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o white.obj `if test -f '$(NYQUIST)/tran/white.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/white.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/white.c'; fi`
+
+stkrev.o: $(NYQUIST)/tran/stkrev.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT stkrev.o -MD -MP -MF $(DEPDIR)/stkrev.Tpo -c -o stkrev.o `test -f '$(NYQUIST)/tran/stkrev.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/stkrev.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/stkrev.Tpo $(DEPDIR)/stkrev.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/stkrev.c' object='stkrev.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o stkrev.o `test -f '$(NYQUIST)/tran/stkrev.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/stkrev.c
+
+stkrev.obj: $(NYQUIST)/tran/stkrev.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT stkrev.obj -MD -MP -MF $(DEPDIR)/stkrev.Tpo -c -o stkrev.obj `if test -f '$(NYQUIST)/tran/stkrev.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/stkrev.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/stkrev.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/stkrev.Tpo $(DEPDIR)/stkrev.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/stkrev.c' object='stkrev.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o stkrev.obj `if test -f '$(NYQUIST)/tran/stkrev.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/stkrev.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/stkrev.c'; fi`
+
+stkpitshift.o: $(NYQUIST)/tran/stkpitshift.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT stkpitshift.o -MD -MP -MF $(DEPDIR)/stkpitshift.Tpo -c -o stkpitshift.o `test -f '$(NYQUIST)/tran/stkpitshift.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/stkpitshift.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/stkpitshift.Tpo $(DEPDIR)/stkpitshift.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/stkpitshift.c' object='stkpitshift.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o stkpitshift.o `test -f '$(NYQUIST)/tran/stkpitshift.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/stkpitshift.c
+
+stkpitshift.obj: $(NYQUIST)/tran/stkpitshift.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT stkpitshift.obj -MD -MP -MF $(DEPDIR)/stkpitshift.Tpo -c -o stkpitshift.obj `if test -f '$(NYQUIST)/tran/stkpitshift.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/stkpitshift.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/stkpitshift.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/stkpitshift.Tpo $(DEPDIR)/stkpitshift.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/stkpitshift.c' object='stkpitshift.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o stkpitshift.obj `if test -f '$(NYQUIST)/tran/stkpitshift.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/stkpitshift.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/stkpitshift.c'; fi`
+
+stkchorus.o: $(NYQUIST)/tran/stkchorus.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT stkchorus.o -MD -MP -MF $(DEPDIR)/stkchorus.Tpo -c -o stkchorus.o `test -f '$(NYQUIST)/tran/stkchorus.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/stkchorus.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/stkchorus.Tpo $(DEPDIR)/stkchorus.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/stkchorus.c' object='stkchorus.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o stkchorus.o `test -f '$(NYQUIST)/tran/stkchorus.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/stkchorus.c
+
+stkchorus.obj: $(NYQUIST)/tran/stkchorus.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT stkchorus.obj -MD -MP -MF $(DEPDIR)/stkchorus.Tpo -c -o stkchorus.obj `if test -f '$(NYQUIST)/tran/stkchorus.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/stkchorus.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/stkchorus.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/stkchorus.Tpo $(DEPDIR)/stkchorus.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/stkchorus.c' object='stkchorus.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o stkchorus.obj `if test -f '$(NYQUIST)/tran/stkchorus.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/stkchorus.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/stkchorus.c'; fi`
+
+instrbow.o: $(NYQUIST)/tran/instrbow.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT instrbow.o -MD -MP -MF $(DEPDIR)/instrbow.Tpo -c -o instrbow.o `test -f '$(NYQUIST)/tran/instrbow.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/instrbow.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/instrbow.Tpo $(DEPDIR)/instrbow.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/instrbow.c' object='instrbow.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o instrbow.o `test -f '$(NYQUIST)/tran/instrbow.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/instrbow.c
+
+instrbow.obj: $(NYQUIST)/tran/instrbow.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT instrbow.obj -MD -MP -MF $(DEPDIR)/instrbow.Tpo -c -o instrbow.obj `if test -f '$(NYQUIST)/tran/instrbow.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/instrbow.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/instrbow.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/instrbow.Tpo $(DEPDIR)/instrbow.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/instrbow.c' object='instrbow.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o instrbow.obj `if test -f '$(NYQUIST)/tran/instrbow.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/instrbow.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/instrbow.c'; fi`
+
+instrbowedfreq.o: $(NYQUIST)/tran/instrbowedfreq.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT instrbowedfreq.o -MD -MP -MF $(DEPDIR)/instrbowedfreq.Tpo -c -o instrbowedfreq.o `test -f '$(NYQUIST)/tran/instrbowedfreq.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/instrbowedfreq.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/instrbowedfreq.Tpo $(DEPDIR)/instrbowedfreq.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/instrbowedfreq.c' object='instrbowedfreq.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o instrbowedfreq.o `test -f '$(NYQUIST)/tran/instrbowedfreq.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/instrbowedfreq.c
+
+instrbowedfreq.obj: $(NYQUIST)/tran/instrbowedfreq.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT instrbowedfreq.obj -MD -MP -MF $(DEPDIR)/instrbowedfreq.Tpo -c -o instrbowedfreq.obj `if test -f '$(NYQUIST)/tran/instrbowedfreq.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/instrbowedfreq.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/instrbowedfreq.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/instrbowedfreq.Tpo $(DEPDIR)/instrbowedfreq.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/instrbowedfreq.c' object='instrbowedfreq.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o instrbowedfreq.obj `if test -f '$(NYQUIST)/tran/instrbowedfreq.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/instrbowedfreq.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/instrbowedfreq.c'; fi`
+
+instrbanded.o: $(NYQUIST)/tran/instrbanded.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT instrbanded.o -MD -MP -MF $(DEPDIR)/instrbanded.Tpo -c -o instrbanded.o `test -f '$(NYQUIST)/tran/instrbanded.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/instrbanded.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/instrbanded.Tpo $(DEPDIR)/instrbanded.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/instrbanded.c' object='instrbanded.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o instrbanded.o `test -f '$(NYQUIST)/tran/instrbanded.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/instrbanded.c
+
+instrbanded.obj: $(NYQUIST)/tran/instrbanded.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT instrbanded.obj -MD -MP -MF $(DEPDIR)/instrbanded.Tpo -c -o instrbanded.obj `if test -f '$(NYQUIST)/tran/instrbanded.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/instrbanded.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/instrbanded.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/instrbanded.Tpo $(DEPDIR)/instrbanded.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/instrbanded.c' object='instrbanded.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o instrbanded.obj `if test -f '$(NYQUIST)/tran/instrbanded.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/instrbanded.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/instrbanded.c'; fi`
+
+instrmandolin.o: $(NYQUIST)/tran/instrmandolin.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT instrmandolin.o -MD -MP -MF $(DEPDIR)/instrmandolin.Tpo -c -o instrmandolin.o `test -f '$(NYQUIST)/tran/instrmandolin.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/instrmandolin.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/instrmandolin.Tpo $(DEPDIR)/instrmandolin.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/instrmandolin.c' object='instrmandolin.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o instrmandolin.o `test -f '$(NYQUIST)/tran/instrmandolin.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/instrmandolin.c
+
+instrmandolin.obj: $(NYQUIST)/tran/instrmandolin.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT instrmandolin.obj -MD -MP -MF $(DEPDIR)/instrmandolin.Tpo -c -o instrmandolin.obj `if test -f '$(NYQUIST)/tran/instrmandolin.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/instrmandolin.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/instrmandolin.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/instrmandolin.Tpo $(DEPDIR)/instrmandolin.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/instrmandolin.c' object='instrmandolin.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o instrmandolin.obj `if test -f '$(NYQUIST)/tran/instrmandolin.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/instrmandolin.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/instrmandolin.c'; fi`
+
+instrsitar.o: $(NYQUIST)/tran/instrsitar.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT instrsitar.o -MD -MP -MF $(DEPDIR)/instrsitar.Tpo -c -o instrsitar.o `test -f '$(NYQUIST)/tran/instrsitar.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/instrsitar.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/instrsitar.Tpo $(DEPDIR)/instrsitar.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/instrsitar.c' object='instrsitar.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o instrsitar.o `test -f '$(NYQUIST)/tran/instrsitar.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/instrsitar.c
+
+instrsitar.obj: $(NYQUIST)/tran/instrsitar.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT instrsitar.obj -MD -MP -MF $(DEPDIR)/instrsitar.Tpo -c -o instrsitar.obj `if test -f '$(NYQUIST)/tran/instrsitar.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/instrsitar.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/instrsitar.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/instrsitar.Tpo $(DEPDIR)/instrsitar.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/instrsitar.c' object='instrsitar.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o instrsitar.obj `if test -f '$(NYQUIST)/tran/instrsitar.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/instrsitar.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/instrsitar.c'; fi`
+
+instrmodalbar.o: $(NYQUIST)/tran/instrmodalbar.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT instrmodalbar.o -MD -MP -MF $(DEPDIR)/instrmodalbar.Tpo -c -o instrmodalbar.o `test -f '$(NYQUIST)/tran/instrmodalbar.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/instrmodalbar.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/instrmodalbar.Tpo $(DEPDIR)/instrmodalbar.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/instrmodalbar.c' object='instrmodalbar.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o instrmodalbar.o `test -f '$(NYQUIST)/tran/instrmodalbar.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/instrmodalbar.c
+
+instrmodalbar.obj: $(NYQUIST)/tran/instrmodalbar.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT instrmodalbar.obj -MD -MP -MF $(DEPDIR)/instrmodalbar.Tpo -c -o instrmodalbar.obj `if test -f '$(NYQUIST)/tran/instrmodalbar.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/instrmodalbar.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/instrmodalbar.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/instrmodalbar.Tpo $(DEPDIR)/instrmodalbar.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/instrmodalbar.c' object='instrmodalbar.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o instrmodalbar.obj `if test -f '$(NYQUIST)/tran/instrmodalbar.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/instrmodalbar.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/instrmodalbar.c'; fi`
+
+instrflute.o: $(NYQUIST)/tran/instrflute.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT instrflute.o -MD -MP -MF $(DEPDIR)/instrflute.Tpo -c -o instrflute.o `test -f '$(NYQUIST)/tran/instrflute.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/instrflute.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/instrflute.Tpo $(DEPDIR)/instrflute.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/instrflute.c' object='instrflute.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o instrflute.o `test -f '$(NYQUIST)/tran/instrflute.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/instrflute.c
+
+instrflute.obj: $(NYQUIST)/tran/instrflute.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT instrflute.obj -MD -MP -MF $(DEPDIR)/instrflute.Tpo -c -o instrflute.obj `if test -f '$(NYQUIST)/tran/instrflute.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/instrflute.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/instrflute.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/instrflute.Tpo $(DEPDIR)/instrflute.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/instrflute.c' object='instrflute.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o instrflute.obj `if test -f '$(NYQUIST)/tran/instrflute.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/instrflute.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/instrflute.c'; fi`
+
+instrflutefreq.o: $(NYQUIST)/tran/instrflutefreq.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT instrflutefreq.o -MD -MP -MF $(DEPDIR)/instrflutefreq.Tpo -c -o instrflutefreq.o `test -f '$(NYQUIST)/tran/instrflutefreq.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/instrflutefreq.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/instrflutefreq.Tpo $(DEPDIR)/instrflutefreq.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/instrflutefreq.c' object='instrflutefreq.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o instrflutefreq.o `test -f '$(NYQUIST)/tran/instrflutefreq.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/instrflutefreq.c
+
+instrflutefreq.obj: $(NYQUIST)/tran/instrflutefreq.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT instrflutefreq.obj -MD -MP -MF $(DEPDIR)/instrflutefreq.Tpo -c -o instrflutefreq.obj `if test -f '$(NYQUIST)/tran/instrflutefreq.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/instrflutefreq.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/instrflutefreq.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/instrflutefreq.Tpo $(DEPDIR)/instrflutefreq.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/instrflutefreq.c' object='instrflutefreq.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o instrflutefreq.obj `if test -f '$(NYQUIST)/tran/instrflutefreq.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/instrflutefreq.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/instrflutefreq.c'; fi`
+
+instrfluteall.o: $(NYQUIST)/tran/instrfluteall.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT instrfluteall.o -MD -MP -MF $(DEPDIR)/instrfluteall.Tpo -c -o instrfluteall.o `test -f '$(NYQUIST)/tran/instrfluteall.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/instrfluteall.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/instrfluteall.Tpo $(DEPDIR)/instrfluteall.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/instrfluteall.c' object='instrfluteall.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o instrfluteall.o `test -f '$(NYQUIST)/tran/instrfluteall.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/instrfluteall.c
+
+instrfluteall.obj: $(NYQUIST)/tran/instrfluteall.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT instrfluteall.obj -MD -MP -MF $(DEPDIR)/instrfluteall.Tpo -c -o instrfluteall.obj `if test -f '$(NYQUIST)/tran/instrfluteall.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/instrfluteall.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/instrfluteall.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/instrfluteall.Tpo $(DEPDIR)/instrfluteall.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/instrfluteall.c' object='instrfluteall.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o instrfluteall.obj `if test -f '$(NYQUIST)/tran/instrfluteall.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/instrfluteall.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/instrfluteall.c'; fi`
+
+fmfb.o: $(NYQUIST)/tran/fmfb.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fmfb.o -MD -MP -MF $(DEPDIR)/fmfb.Tpo -c -o fmfb.o `test -f '$(NYQUIST)/tran/fmfb.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/fmfb.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/fmfb.Tpo $(DEPDIR)/fmfb.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/fmfb.c' object='fmfb.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fmfb.o `test -f '$(NYQUIST)/tran/fmfb.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/fmfb.c
+
+fmfb.obj: $(NYQUIST)/tran/fmfb.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fmfb.obj -MD -MP -MF $(DEPDIR)/fmfb.Tpo -c -o fmfb.obj `if test -f '$(NYQUIST)/tran/fmfb.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/fmfb.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/fmfb.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/fmfb.Tpo $(DEPDIR)/fmfb.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/fmfb.c' object='fmfb.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fmfb.obj `if test -f '$(NYQUIST)/tran/fmfb.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/fmfb.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/fmfb.c'; fi`
+
+fmfbv.o: $(NYQUIST)/tran/fmfbv.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fmfbv.o -MD -MP -MF $(DEPDIR)/fmfbv.Tpo -c -o fmfbv.o `test -f '$(NYQUIST)/tran/fmfbv.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/fmfbv.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/fmfbv.Tpo $(DEPDIR)/fmfbv.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/fmfbv.c' object='fmfbv.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fmfbv.o `test -f '$(NYQUIST)/tran/fmfbv.c' || echo '$(srcdir)/'`$(NYQUIST)/tran/fmfbv.c
+
+fmfbv.obj: $(NYQUIST)/tran/fmfbv.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fmfbv.obj -MD -MP -MF $(DEPDIR)/fmfbv.Tpo -c -o fmfbv.obj `if test -f '$(NYQUIST)/tran/fmfbv.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/fmfbv.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/fmfbv.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/fmfbv.Tpo $(DEPDIR)/fmfbv.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/tran/fmfbv.c' object='fmfbv.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fmfbv.obj `if test -f '$(NYQUIST)/tran/fmfbv.c'; then $(CYGPATH_W) '$(NYQUIST)/tran/fmfbv.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/tran/fmfbv.c'; fi`
+
+cext.o: $(NYQUIST)/cmt/cext.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT cext.o -MD -MP -MF $(DEPDIR)/cext.Tpo -c -o cext.o `test -f '$(NYQUIST)/cmt/cext.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/cext.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/cext.Tpo $(DEPDIR)/cext.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/cext.c' object='cext.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o cext.o `test -f '$(NYQUIST)/cmt/cext.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/cext.c
+
+cext.obj: $(NYQUIST)/cmt/cext.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT cext.obj -MD -MP -MF $(DEPDIR)/cext.Tpo -c -o cext.obj `if test -f '$(NYQUIST)/cmt/cext.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/cext.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/cext.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/cext.Tpo $(DEPDIR)/cext.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/cext.c' object='cext.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o cext.obj `if test -f '$(NYQUIST)/cmt/cext.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/cext.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/cext.c'; fi`
+
+cleanup.o: $(NYQUIST)/cmt/cleanup.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT cleanup.o -MD -MP -MF $(DEPDIR)/cleanup.Tpo -c -o cleanup.o `test -f '$(NYQUIST)/cmt/cleanup.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/cleanup.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/cleanup.Tpo $(DEPDIR)/cleanup.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/cleanup.c' object='cleanup.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o cleanup.o `test -f '$(NYQUIST)/cmt/cleanup.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/cleanup.c
+
+cleanup.obj: $(NYQUIST)/cmt/cleanup.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT cleanup.obj -MD -MP -MF $(DEPDIR)/cleanup.Tpo -c -o cleanup.obj `if test -f '$(NYQUIST)/cmt/cleanup.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/cleanup.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/cleanup.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/cleanup.Tpo $(DEPDIR)/cleanup.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/cleanup.c' object='cleanup.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o cleanup.obj `if test -f '$(NYQUIST)/cmt/cleanup.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/cleanup.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/cleanup.c'; fi`
+
+cmdline.o: $(NYQUIST)/cmt/cmdline.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT cmdline.o -MD -MP -MF $(DEPDIR)/cmdline.Tpo -c -o cmdline.o `test -f '$(NYQUIST)/cmt/cmdline.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/cmdline.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/cmdline.Tpo $(DEPDIR)/cmdline.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/cmdline.c' object='cmdline.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o cmdline.o `test -f '$(NYQUIST)/cmt/cmdline.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/cmdline.c
+
+cmdline.obj: $(NYQUIST)/cmt/cmdline.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT cmdline.obj -MD -MP -MF $(DEPDIR)/cmdline.Tpo -c -o cmdline.obj `if test -f '$(NYQUIST)/cmt/cmdline.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/cmdline.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/cmdline.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/cmdline.Tpo $(DEPDIR)/cmdline.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/cmdline.c' object='cmdline.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o cmdline.obj `if test -f '$(NYQUIST)/cmt/cmdline.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/cmdline.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/cmdline.c'; fi`
+
+cmtcmd.o: $(NYQUIST)/cmt/cmtcmd.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT cmtcmd.o -MD -MP -MF $(DEPDIR)/cmtcmd.Tpo -c -o cmtcmd.o `test -f '$(NYQUIST)/cmt/cmtcmd.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/cmtcmd.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/cmtcmd.Tpo $(DEPDIR)/cmtcmd.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/cmtcmd.c' object='cmtcmd.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o cmtcmd.o `test -f '$(NYQUIST)/cmt/cmtcmd.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/cmtcmd.c
+
+cmtcmd.obj: $(NYQUIST)/cmt/cmtcmd.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT cmtcmd.obj -MD -MP -MF $(DEPDIR)/cmtcmd.Tpo -c -o cmtcmd.obj `if test -f '$(NYQUIST)/cmt/cmtcmd.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/cmtcmd.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/cmtcmd.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/cmtcmd.Tpo $(DEPDIR)/cmtcmd.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/cmtcmd.c' object='cmtcmd.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o cmtcmd.obj `if test -f '$(NYQUIST)/cmt/cmtcmd.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/cmtcmd.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/cmtcmd.c'; fi`
+
+moxc.o: $(NYQUIST)/cmt/moxc.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT moxc.o -MD -MP -MF $(DEPDIR)/moxc.Tpo -c -o moxc.o `test -f '$(NYQUIST)/cmt/moxc.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/moxc.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/moxc.Tpo $(DEPDIR)/moxc.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/moxc.c' object='moxc.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o moxc.o `test -f '$(NYQUIST)/cmt/moxc.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/moxc.c
+
+moxc.obj: $(NYQUIST)/cmt/moxc.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT moxc.obj -MD -MP -MF $(DEPDIR)/moxc.Tpo -c -o moxc.obj `if test -f '$(NYQUIST)/cmt/moxc.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/moxc.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/moxc.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/moxc.Tpo $(DEPDIR)/moxc.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/moxc.c' object='moxc.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o moxc.obj `if test -f '$(NYQUIST)/cmt/moxc.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/moxc.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/moxc.c'; fi`
+
+mem.o: $(NYQUIST)/cmt/mem.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT mem.o -MD -MP -MF $(DEPDIR)/mem.Tpo -c -o mem.o `test -f '$(NYQUIST)/cmt/mem.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/mem.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/mem.Tpo $(DEPDIR)/mem.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/mem.c' object='mem.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o mem.o `test -f '$(NYQUIST)/cmt/mem.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/mem.c
+
+mem.obj: $(NYQUIST)/cmt/mem.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT mem.obj -MD -MP -MF $(DEPDIR)/mem.Tpo -c -o mem.obj `if test -f '$(NYQUIST)/cmt/mem.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/mem.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/mem.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/mem.Tpo $(DEPDIR)/mem.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/mem.c' object='mem.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o mem.obj `if test -f '$(NYQUIST)/cmt/mem.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/mem.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/mem.c'; fi`
+
+midifile.o: $(NYQUIST)/cmt/midifile.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT midifile.o -MD -MP -MF $(DEPDIR)/midifile.Tpo -c -o midifile.o `test -f '$(NYQUIST)/cmt/midifile.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/midifile.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/midifile.Tpo $(DEPDIR)/midifile.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/midifile.c' object='midifile.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o midifile.o `test -f '$(NYQUIST)/cmt/midifile.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/midifile.c
+
+midifile.obj: $(NYQUIST)/cmt/midifile.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT midifile.obj -MD -MP -MF $(DEPDIR)/midifile.Tpo -c -o midifile.obj `if test -f '$(NYQUIST)/cmt/midifile.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/midifile.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/midifile.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/midifile.Tpo $(DEPDIR)/midifile.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/midifile.c' object='midifile.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o midifile.obj `if test -f '$(NYQUIST)/cmt/midifile.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/midifile.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/midifile.c'; fi`
+
+midifns.o: $(NYQUIST)/cmt/midifns.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT midifns.o -MD -MP -MF $(DEPDIR)/midifns.Tpo -c -o midifns.o `test -f '$(NYQUIST)/cmt/midifns.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/midifns.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/midifns.Tpo $(DEPDIR)/midifns.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/midifns.c' object='midifns.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o midifns.o `test -f '$(NYQUIST)/cmt/midifns.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/midifns.c
+
+midifns.obj: $(NYQUIST)/cmt/midifns.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT midifns.obj -MD -MP -MF $(DEPDIR)/midifns.Tpo -c -o midifns.obj `if test -f '$(NYQUIST)/cmt/midifns.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/midifns.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/midifns.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/midifns.Tpo $(DEPDIR)/midifns.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/midifns.c' object='midifns.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o midifns.obj `if test -f '$(NYQUIST)/cmt/midifns.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/midifns.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/midifns.c'; fi`
+
+record.o: $(NYQUIST)/cmt/record.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT record.o -MD -MP -MF $(DEPDIR)/record.Tpo -c -o record.o `test -f '$(NYQUIST)/cmt/record.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/record.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/record.Tpo $(DEPDIR)/record.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/record.c' object='record.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o record.o `test -f '$(NYQUIST)/cmt/record.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/record.c
+
+record.obj: $(NYQUIST)/cmt/record.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT record.obj -MD -MP -MF $(DEPDIR)/record.Tpo -c -o record.obj `if test -f '$(NYQUIST)/cmt/record.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/record.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/record.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/record.Tpo $(DEPDIR)/record.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/record.c' object='record.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o record.obj `if test -f '$(NYQUIST)/cmt/record.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/record.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/record.c'; fi`
+
+seq.o: $(NYQUIST)/cmt/seq.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT seq.o -MD -MP -MF $(DEPDIR)/seq.Tpo -c -o seq.o `test -f '$(NYQUIST)/cmt/seq.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/seq.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/seq.Tpo $(DEPDIR)/seq.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/seq.c' object='seq.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o seq.o `test -f '$(NYQUIST)/cmt/seq.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/seq.c
+
+seq.obj: $(NYQUIST)/cmt/seq.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT seq.obj -MD -MP -MF $(DEPDIR)/seq.Tpo -c -o seq.obj `if test -f '$(NYQUIST)/cmt/seq.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/seq.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/seq.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/seq.Tpo $(DEPDIR)/seq.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/seq.c' object='seq.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o seq.obj `if test -f '$(NYQUIST)/cmt/seq.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/seq.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/seq.c'; fi`
+
+seqmread.o: $(NYQUIST)/cmt/seqmread.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT seqmread.o -MD -MP -MF $(DEPDIR)/seqmread.Tpo -c -o seqmread.o `test -f '$(NYQUIST)/cmt/seqmread.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/seqmread.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/seqmread.Tpo $(DEPDIR)/seqmread.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/seqmread.c' object='seqmread.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o seqmread.o `test -f '$(NYQUIST)/cmt/seqmread.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/seqmread.c
+
+seqmread.obj: $(NYQUIST)/cmt/seqmread.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT seqmread.obj -MD -MP -MF $(DEPDIR)/seqmread.Tpo -c -o seqmread.obj `if test -f '$(NYQUIST)/cmt/seqmread.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/seqmread.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/seqmread.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/seqmread.Tpo $(DEPDIR)/seqmread.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/seqmread.c' object='seqmread.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o seqmread.obj `if test -f '$(NYQUIST)/cmt/seqmread.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/seqmread.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/seqmread.c'; fi`
+
+seqmwrite.o: $(NYQUIST)/cmt/seqmwrite.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT seqmwrite.o -MD -MP -MF $(DEPDIR)/seqmwrite.Tpo -c -o seqmwrite.o `test -f '$(NYQUIST)/cmt/seqmwrite.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/seqmwrite.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/seqmwrite.Tpo $(DEPDIR)/seqmwrite.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/seqmwrite.c' object='seqmwrite.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o seqmwrite.o `test -f '$(NYQUIST)/cmt/seqmwrite.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/seqmwrite.c
+
+seqmwrite.obj: $(NYQUIST)/cmt/seqmwrite.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT seqmwrite.obj -MD -MP -MF $(DEPDIR)/seqmwrite.Tpo -c -o seqmwrite.obj `if test -f '$(NYQUIST)/cmt/seqmwrite.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/seqmwrite.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/seqmwrite.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/seqmwrite.Tpo $(DEPDIR)/seqmwrite.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/seqmwrite.c' object='seqmwrite.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o seqmwrite.obj `if test -f '$(NYQUIST)/cmt/seqmwrite.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/seqmwrite.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/seqmwrite.c'; fi`
+
+seqread.o: $(NYQUIST)/cmt/seqread.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT seqread.o -MD -MP -MF $(DEPDIR)/seqread.Tpo -c -o seqread.o `test -f '$(NYQUIST)/cmt/seqread.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/seqread.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/seqread.Tpo $(DEPDIR)/seqread.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/seqread.c' object='seqread.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o seqread.o `test -f '$(NYQUIST)/cmt/seqread.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/seqread.c
+
+seqread.obj: $(NYQUIST)/cmt/seqread.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT seqread.obj -MD -MP -MF $(DEPDIR)/seqread.Tpo -c -o seqread.obj `if test -f '$(NYQUIST)/cmt/seqread.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/seqread.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/seqread.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/seqread.Tpo $(DEPDIR)/seqread.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/seqread.c' object='seqread.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o seqread.obj `if test -f '$(NYQUIST)/cmt/seqread.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/seqread.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/seqread.c'; fi`
+
+seqwrite.o: $(NYQUIST)/cmt/seqwrite.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT seqwrite.o -MD -MP -MF $(DEPDIR)/seqwrite.Tpo -c -o seqwrite.o `test -f '$(NYQUIST)/cmt/seqwrite.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/seqwrite.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/seqwrite.Tpo $(DEPDIR)/seqwrite.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/seqwrite.c' object='seqwrite.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o seqwrite.o `test -f '$(NYQUIST)/cmt/seqwrite.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/seqwrite.c
+
+seqwrite.obj: $(NYQUIST)/cmt/seqwrite.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT seqwrite.obj -MD -MP -MF $(DEPDIR)/seqwrite.Tpo -c -o seqwrite.obj `if test -f '$(NYQUIST)/cmt/seqwrite.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/seqwrite.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/seqwrite.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/seqwrite.Tpo $(DEPDIR)/seqwrite.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/seqwrite.c' object='seqwrite.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o seqwrite.obj `if test -f '$(NYQUIST)/cmt/seqwrite.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/seqwrite.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/seqwrite.c'; fi`
+
+tempomap.o: $(NYQUIST)/cmt/tempomap.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT tempomap.o -MD -MP -MF $(DEPDIR)/tempomap.Tpo -c -o tempomap.o `test -f '$(NYQUIST)/cmt/tempomap.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/tempomap.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/tempomap.Tpo $(DEPDIR)/tempomap.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/tempomap.c' object='tempomap.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o tempomap.o `test -f '$(NYQUIST)/cmt/tempomap.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/tempomap.c
+
+tempomap.obj: $(NYQUIST)/cmt/tempomap.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT tempomap.obj -MD -MP -MF $(DEPDIR)/tempomap.Tpo -c -o tempomap.obj `if test -f '$(NYQUIST)/cmt/tempomap.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/tempomap.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/tempomap.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/tempomap.Tpo $(DEPDIR)/tempomap.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/tempomap.c' object='tempomap.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o tempomap.obj `if test -f '$(NYQUIST)/cmt/tempomap.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/tempomap.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/tempomap.c'; fi`
+
+timebase.o: $(NYQUIST)/cmt/timebase.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT timebase.o -MD -MP -MF $(DEPDIR)/timebase.Tpo -c -o timebase.o `test -f '$(NYQUIST)/cmt/timebase.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/timebase.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/timebase.Tpo $(DEPDIR)/timebase.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/timebase.c' object='timebase.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o timebase.o `test -f '$(NYQUIST)/cmt/timebase.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/timebase.c
+
+timebase.obj: $(NYQUIST)/cmt/timebase.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT timebase.obj -MD -MP -MF $(DEPDIR)/timebase.Tpo -c -o timebase.obj `if test -f '$(NYQUIST)/cmt/timebase.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/timebase.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/timebase.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/timebase.Tpo $(DEPDIR)/timebase.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/timebase.c' object='timebase.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o timebase.obj `if test -f '$(NYQUIST)/cmt/timebase.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/timebase.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/timebase.c'; fi`
+
+userio.o: $(NYQUIST)/cmt/userio.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT userio.o -MD -MP -MF $(DEPDIR)/userio.Tpo -c -o userio.o `test -f '$(NYQUIST)/cmt/userio.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/userio.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/userio.Tpo $(DEPDIR)/userio.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/userio.c' object='userio.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o userio.o `test -f '$(NYQUIST)/cmt/userio.c' || echo '$(srcdir)/'`$(NYQUIST)/cmt/userio.c
+
+userio.obj: $(NYQUIST)/cmt/userio.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT userio.obj -MD -MP -MF $(DEPDIR)/userio.Tpo -c -o userio.obj `if test -f '$(NYQUIST)/cmt/userio.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/userio.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/userio.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/userio.Tpo $(DEPDIR)/userio.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/cmt/userio.c' object='userio.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o userio.obj `if test -f '$(NYQUIST)/cmt/userio.c'; then $(CYGPATH_W) '$(NYQUIST)/cmt/userio.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/cmt/userio.c'; fi`
+
+debug.o: $(NYQUIST)/nyqsrc/debug.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT debug.o -MD -MP -MF $(DEPDIR)/debug.Tpo -c -o debug.o `test -f '$(NYQUIST)/nyqsrc/debug.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/debug.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/debug.Tpo $(DEPDIR)/debug.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/debug.c' object='debug.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o debug.o `test -f '$(NYQUIST)/nyqsrc/debug.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/debug.c
+
+debug.obj: $(NYQUIST)/nyqsrc/debug.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT debug.obj -MD -MP -MF $(DEPDIR)/debug.Tpo -c -o debug.obj `if test -f '$(NYQUIST)/nyqsrc/debug.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/debug.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/debug.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/debug.Tpo $(DEPDIR)/debug.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/debug.c' object='debug.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o debug.obj `if test -f '$(NYQUIST)/nyqsrc/debug.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/debug.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/debug.c'; fi`
+
+falloc.o: $(NYQUIST)/nyqsrc/falloc.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT falloc.o -MD -MP -MF $(DEPDIR)/falloc.Tpo -c -o falloc.o `test -f '$(NYQUIST)/nyqsrc/falloc.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/falloc.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/falloc.Tpo $(DEPDIR)/falloc.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/falloc.c' object='falloc.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o falloc.o `test -f '$(NYQUIST)/nyqsrc/falloc.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/falloc.c
+
+falloc.obj: $(NYQUIST)/nyqsrc/falloc.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT falloc.obj -MD -MP -MF $(DEPDIR)/falloc.Tpo -c -o falloc.obj `if test -f '$(NYQUIST)/nyqsrc/falloc.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/falloc.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/falloc.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/falloc.Tpo $(DEPDIR)/falloc.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/falloc.c' object='falloc.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o falloc.obj `if test -f '$(NYQUIST)/nyqsrc/falloc.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/falloc.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/falloc.c'; fi`
+
+local.o: $(NYQUIST)/nyqsrc/local.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT local.o -MD -MP -MF $(DEPDIR)/local.Tpo -c -o local.o `test -f '$(NYQUIST)/nyqsrc/local.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/local.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/local.Tpo $(DEPDIR)/local.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/local.c' object='local.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o local.o `test -f '$(NYQUIST)/nyqsrc/local.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/local.c
+
+local.obj: $(NYQUIST)/nyqsrc/local.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT local.obj -MD -MP -MF $(DEPDIR)/local.Tpo -c -o local.obj `if test -f '$(NYQUIST)/nyqsrc/local.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/local.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/local.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/local.Tpo $(DEPDIR)/local.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/local.c' object='local.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o local.obj `if test -f '$(NYQUIST)/nyqsrc/local.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/local.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/local.c'; fi`
+
+handlers.o: $(NYQUIST)/nyqsrc/handlers.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT handlers.o -MD -MP -MF $(DEPDIR)/handlers.Tpo -c -o handlers.o `test -f '$(NYQUIST)/nyqsrc/handlers.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/handlers.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/handlers.Tpo $(DEPDIR)/handlers.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/handlers.c' object='handlers.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o handlers.o `test -f '$(NYQUIST)/nyqsrc/handlers.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/handlers.c
+
+handlers.obj: $(NYQUIST)/nyqsrc/handlers.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT handlers.obj -MD -MP -MF $(DEPDIR)/handlers.Tpo -c -o handlers.obj `if test -f '$(NYQUIST)/nyqsrc/handlers.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/handlers.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/handlers.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/handlers.Tpo $(DEPDIR)/handlers.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/handlers.c' object='handlers.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o handlers.obj `if test -f '$(NYQUIST)/nyqsrc/handlers.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/handlers.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/handlers.c'; fi`
+
+multiread.o: $(NYQUIST)/nyqsrc/multiread.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT multiread.o -MD -MP -MF $(DEPDIR)/multiread.Tpo -c -o multiread.o `test -f '$(NYQUIST)/nyqsrc/multiread.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/multiread.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/multiread.Tpo $(DEPDIR)/multiread.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/multiread.c' object='multiread.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o multiread.o `test -f '$(NYQUIST)/nyqsrc/multiread.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/multiread.c
+
+multiread.obj: $(NYQUIST)/nyqsrc/multiread.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT multiread.obj -MD -MP -MF $(DEPDIR)/multiread.Tpo -c -o multiread.obj `if test -f '$(NYQUIST)/nyqsrc/multiread.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/multiread.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/multiread.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/multiread.Tpo $(DEPDIR)/multiread.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/multiread.c' object='multiread.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o multiread.obj `if test -f '$(NYQUIST)/nyqsrc/multiread.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/multiread.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/multiread.c'; fi`
+
+seqext.o: $(NYQUIST)/nyqsrc/seqext.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT seqext.o -MD -MP -MF $(DEPDIR)/seqext.Tpo -c -o seqext.o `test -f '$(NYQUIST)/nyqsrc/seqext.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/seqext.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/seqext.Tpo $(DEPDIR)/seqext.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/seqext.c' object='seqext.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o seqext.o `test -f '$(NYQUIST)/nyqsrc/seqext.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/seqext.c
+
+seqext.obj: $(NYQUIST)/nyqsrc/seqext.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT seqext.obj -MD -MP -MF $(DEPDIR)/seqext.Tpo -c -o seqext.obj `if test -f '$(NYQUIST)/nyqsrc/seqext.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/seqext.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/seqext.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/seqext.Tpo $(DEPDIR)/seqext.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/seqext.c' object='seqext.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o seqext.obj `if test -f '$(NYQUIST)/nyqsrc/seqext.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/seqext.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/seqext.c'; fi`
+
+seqinterf.o: $(NYQUIST)/nyqsrc/seqinterf.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT seqinterf.o -MD -MP -MF $(DEPDIR)/seqinterf.Tpo -c -o seqinterf.o `test -f '$(NYQUIST)/nyqsrc/seqinterf.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/seqinterf.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/seqinterf.Tpo $(DEPDIR)/seqinterf.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/seqinterf.c' object='seqinterf.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o seqinterf.o `test -f '$(NYQUIST)/nyqsrc/seqinterf.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/seqinterf.c
+
+seqinterf.obj: $(NYQUIST)/nyqsrc/seqinterf.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT seqinterf.obj -MD -MP -MF $(DEPDIR)/seqinterf.Tpo -c -o seqinterf.obj `if test -f '$(NYQUIST)/nyqsrc/seqinterf.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/seqinterf.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/seqinterf.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/seqinterf.Tpo $(DEPDIR)/seqinterf.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/seqinterf.c' object='seqinterf.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o seqinterf.obj `if test -f '$(NYQUIST)/nyqsrc/seqinterf.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/seqinterf.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/seqinterf.c'; fi`
+
+stats.o: $(NYQUIST)/nyqsrc/stats.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT stats.o -MD -MP -MF $(DEPDIR)/stats.Tpo -c -o stats.o `test -f '$(NYQUIST)/nyqsrc/stats.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/stats.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/stats.Tpo $(DEPDIR)/stats.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/stats.c' object='stats.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o stats.o `test -f '$(NYQUIST)/nyqsrc/stats.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/stats.c
+
+stats.obj: $(NYQUIST)/nyqsrc/stats.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT stats.obj -MD -MP -MF $(DEPDIR)/stats.Tpo -c -o stats.obj `if test -f '$(NYQUIST)/nyqsrc/stats.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/stats.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/stats.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/stats.Tpo $(DEPDIR)/stats.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/stats.c' object='stats.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o stats.obj `if test -f '$(NYQUIST)/nyqsrc/stats.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/stats.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/stats.c'; fi`
+
+ffilterkit.o: $(NYQUIST)/nyqsrc/ffilterkit.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ffilterkit.o -MD -MP -MF $(DEPDIR)/ffilterkit.Tpo -c -o ffilterkit.o `test -f '$(NYQUIST)/nyqsrc/ffilterkit.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/ffilterkit.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/ffilterkit.Tpo $(DEPDIR)/ffilterkit.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/ffilterkit.c' object='ffilterkit.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ffilterkit.o `test -f '$(NYQUIST)/nyqsrc/ffilterkit.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/ffilterkit.c
+
+ffilterkit.obj: $(NYQUIST)/nyqsrc/ffilterkit.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ffilterkit.obj -MD -MP -MF $(DEPDIR)/ffilterkit.Tpo -c -o ffilterkit.obj `if test -f '$(NYQUIST)/nyqsrc/ffilterkit.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/ffilterkit.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/ffilterkit.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/ffilterkit.Tpo $(DEPDIR)/ffilterkit.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/ffilterkit.c' object='ffilterkit.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ffilterkit.obj `if test -f '$(NYQUIST)/nyqsrc/ffilterkit.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/ffilterkit.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/ffilterkit.c'; fi`
+
+sliders.o: $(NYQUIST)/nyqsrc/sliders.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sliders.o -MD -MP -MF $(DEPDIR)/sliders.Tpo -c -o sliders.o `test -f '$(NYQUIST)/nyqsrc/sliders.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/sliders.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/sliders.Tpo $(DEPDIR)/sliders.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/sliders.c' object='sliders.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sliders.o `test -f '$(NYQUIST)/nyqsrc/sliders.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/sliders.c
+
+sliders.obj: $(NYQUIST)/nyqsrc/sliders.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sliders.obj -MD -MP -MF $(DEPDIR)/sliders.Tpo -c -o sliders.obj `if test -f '$(NYQUIST)/nyqsrc/sliders.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/sliders.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/sliders.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/sliders.Tpo $(DEPDIR)/sliders.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/sliders.c' object='sliders.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sliders.obj `if test -f '$(NYQUIST)/nyqsrc/sliders.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/sliders.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/sliders.c'; fi`
+
+sound.o: $(NYQUIST)/nyqsrc/sound.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sound.o -MD -MP -MF $(DEPDIR)/sound.Tpo -c -o sound.o `test -f '$(NYQUIST)/nyqsrc/sound.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/sound.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/sound.Tpo $(DEPDIR)/sound.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/sound.c' object='sound.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sound.o `test -f '$(NYQUIST)/nyqsrc/sound.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/sound.c
+
+sound.obj: $(NYQUIST)/nyqsrc/sound.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sound.obj -MD -MP -MF $(DEPDIR)/sound.Tpo -c -o sound.obj `if test -f '$(NYQUIST)/nyqsrc/sound.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/sound.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/sound.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/sound.Tpo $(DEPDIR)/sound.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/sound.c' object='sound.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sound.obj `if test -f '$(NYQUIST)/nyqsrc/sound.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/sound.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/sound.c'; fi`
+
+add.o: $(NYQUIST)/nyqsrc/add.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT add.o -MD -MP -MF $(DEPDIR)/add.Tpo -c -o add.o `test -f '$(NYQUIST)/nyqsrc/add.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/add.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/add.Tpo $(DEPDIR)/add.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/add.c' object='add.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o add.o `test -f '$(NYQUIST)/nyqsrc/add.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/add.c
+
+add.obj: $(NYQUIST)/nyqsrc/add.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT add.obj -MD -MP -MF $(DEPDIR)/add.Tpo -c -o add.obj `if test -f '$(NYQUIST)/nyqsrc/add.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/add.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/add.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/add.Tpo $(DEPDIR)/add.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/add.c' object='add.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o add.obj `if test -f '$(NYQUIST)/nyqsrc/add.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/add.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/add.c'; fi`
+
+avg.o: $(NYQUIST)/nyqsrc/avg.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT avg.o -MD -MP -MF $(DEPDIR)/avg.Tpo -c -o avg.o `test -f '$(NYQUIST)/nyqsrc/avg.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/avg.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/avg.Tpo $(DEPDIR)/avg.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/avg.c' object='avg.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o avg.o `test -f '$(NYQUIST)/nyqsrc/avg.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/avg.c
+
+avg.obj: $(NYQUIST)/nyqsrc/avg.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT avg.obj -MD -MP -MF $(DEPDIR)/avg.Tpo -c -o avg.obj `if test -f '$(NYQUIST)/nyqsrc/avg.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/avg.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/avg.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/avg.Tpo $(DEPDIR)/avg.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/avg.c' object='avg.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o avg.obj `if test -f '$(NYQUIST)/nyqsrc/avg.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/avg.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/avg.c'; fi`
+
+compose.o: $(NYQUIST)/nyqsrc/compose.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT compose.o -MD -MP -MF $(DEPDIR)/compose.Tpo -c -o compose.o `test -f '$(NYQUIST)/nyqsrc/compose.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/compose.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/compose.Tpo $(DEPDIR)/compose.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/compose.c' object='compose.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o compose.o `test -f '$(NYQUIST)/nyqsrc/compose.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/compose.c
+
+compose.obj: $(NYQUIST)/nyqsrc/compose.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT compose.obj -MD -MP -MF $(DEPDIR)/compose.Tpo -c -o compose.obj `if test -f '$(NYQUIST)/nyqsrc/compose.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/compose.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/compose.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/compose.Tpo $(DEPDIR)/compose.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/compose.c' object='compose.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o compose.obj `if test -f '$(NYQUIST)/nyqsrc/compose.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/compose.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/compose.c'; fi`
+
+convolve.o: $(NYQUIST)/nyqsrc/convolve.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT convolve.o -MD -MP -MF $(DEPDIR)/convolve.Tpo -c -o convolve.o `test -f '$(NYQUIST)/nyqsrc/convolve.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/convolve.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/convolve.Tpo $(DEPDIR)/convolve.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/convolve.c' object='convolve.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o convolve.o `test -f '$(NYQUIST)/nyqsrc/convolve.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/convolve.c
+
+convolve.obj: $(NYQUIST)/nyqsrc/convolve.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT convolve.obj -MD -MP -MF $(DEPDIR)/convolve.Tpo -c -o convolve.obj `if test -f '$(NYQUIST)/nyqsrc/convolve.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/convolve.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/convolve.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/convolve.Tpo $(DEPDIR)/convolve.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/convolve.c' object='convolve.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o convolve.obj `if test -f '$(NYQUIST)/nyqsrc/convolve.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/convolve.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/convolve.c'; fi`
+
+downsample.o: $(NYQUIST)/nyqsrc/downsample.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT downsample.o -MD -MP -MF $(DEPDIR)/downsample.Tpo -c -o downsample.o `test -f '$(NYQUIST)/nyqsrc/downsample.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/downsample.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/downsample.Tpo $(DEPDIR)/downsample.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/downsample.c' object='downsample.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o downsample.o `test -f '$(NYQUIST)/nyqsrc/downsample.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/downsample.c
+
+downsample.obj: $(NYQUIST)/nyqsrc/downsample.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT downsample.obj -MD -MP -MF $(DEPDIR)/downsample.Tpo -c -o downsample.obj `if test -f '$(NYQUIST)/nyqsrc/downsample.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/downsample.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/downsample.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/downsample.Tpo $(DEPDIR)/downsample.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/downsample.c' object='downsample.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o downsample.obj `if test -f '$(NYQUIST)/nyqsrc/downsample.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/downsample.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/downsample.c'; fi`
+
+fft.o: $(NYQUIST)/nyqsrc/fft.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fft.o -MD -MP -MF $(DEPDIR)/fft.Tpo -c -o fft.o `test -f '$(NYQUIST)/nyqsrc/fft.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/fft.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/fft.Tpo $(DEPDIR)/fft.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/fft.c' object='fft.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fft.o `test -f '$(NYQUIST)/nyqsrc/fft.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/fft.c
+
+fft.obj: $(NYQUIST)/nyqsrc/fft.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fft.obj -MD -MP -MF $(DEPDIR)/fft.Tpo -c -o fft.obj `if test -f '$(NYQUIST)/nyqsrc/fft.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/fft.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/fft.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/fft.Tpo $(DEPDIR)/fft.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/fft.c' object='fft.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fft.obj `if test -f '$(NYQUIST)/nyqsrc/fft.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/fft.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/fft.c'; fi`
+
+inverse.o: $(NYQUIST)/nyqsrc/inverse.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT inverse.o -MD -MP -MF $(DEPDIR)/inverse.Tpo -c -o inverse.o `test -f '$(NYQUIST)/nyqsrc/inverse.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/inverse.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/inverse.Tpo $(DEPDIR)/inverse.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/inverse.c' object='inverse.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o inverse.o `test -f '$(NYQUIST)/nyqsrc/inverse.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/inverse.c
+
+inverse.obj: $(NYQUIST)/nyqsrc/inverse.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT inverse.obj -MD -MP -MF $(DEPDIR)/inverse.Tpo -c -o inverse.obj `if test -f '$(NYQUIST)/nyqsrc/inverse.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/inverse.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/inverse.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/inverse.Tpo $(DEPDIR)/inverse.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/inverse.c' object='inverse.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o inverse.obj `if test -f '$(NYQUIST)/nyqsrc/inverse.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/inverse.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/inverse.c'; fi`
+
+multiseq.o: $(NYQUIST)/nyqsrc/multiseq.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT multiseq.o -MD -MP -MF $(DEPDIR)/multiseq.Tpo -c -o multiseq.o `test -f '$(NYQUIST)/nyqsrc/multiseq.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/multiseq.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/multiseq.Tpo $(DEPDIR)/multiseq.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/multiseq.c' object='multiseq.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o multiseq.o `test -f '$(NYQUIST)/nyqsrc/multiseq.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/multiseq.c
+
+multiseq.obj: $(NYQUIST)/nyqsrc/multiseq.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT multiseq.obj -MD -MP -MF $(DEPDIR)/multiseq.Tpo -c -o multiseq.obj `if test -f '$(NYQUIST)/nyqsrc/multiseq.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/multiseq.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/multiseq.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/multiseq.Tpo $(DEPDIR)/multiseq.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/multiseq.c' object='multiseq.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o multiseq.obj `if test -f '$(NYQUIST)/nyqsrc/multiseq.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/multiseq.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/multiseq.c'; fi`
+
+resamp.o: $(NYQUIST)/nyqsrc/resamp.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT resamp.o -MD -MP -MF $(DEPDIR)/resamp.Tpo -c -o resamp.o `test -f '$(NYQUIST)/nyqsrc/resamp.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/resamp.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/resamp.Tpo $(DEPDIR)/resamp.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/resamp.c' object='resamp.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o resamp.o `test -f '$(NYQUIST)/nyqsrc/resamp.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/resamp.c
+
+resamp.obj: $(NYQUIST)/nyqsrc/resamp.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT resamp.obj -MD -MP -MF $(DEPDIR)/resamp.Tpo -c -o resamp.obj `if test -f '$(NYQUIST)/nyqsrc/resamp.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/resamp.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/resamp.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/resamp.Tpo $(DEPDIR)/resamp.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/resamp.c' object='resamp.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o resamp.obj `if test -f '$(NYQUIST)/nyqsrc/resamp.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/resamp.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/resamp.c'; fi`
+
+resampv.o: $(NYQUIST)/nyqsrc/resampv.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT resampv.o -MD -MP -MF $(DEPDIR)/resampv.Tpo -c -o resampv.o `test -f '$(NYQUIST)/nyqsrc/resampv.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/resampv.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/resampv.Tpo $(DEPDIR)/resampv.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/resampv.c' object='resampv.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o resampv.o `test -f '$(NYQUIST)/nyqsrc/resampv.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/resampv.c
+
+resampv.obj: $(NYQUIST)/nyqsrc/resampv.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT resampv.obj -MD -MP -MF $(DEPDIR)/resampv.Tpo -c -o resampv.obj `if test -f '$(NYQUIST)/nyqsrc/resampv.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/resampv.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/resampv.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/resampv.Tpo $(DEPDIR)/resampv.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/resampv.c' object='resampv.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o resampv.obj `if test -f '$(NYQUIST)/nyqsrc/resampv.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/resampv.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/resampv.c'; fi`
+
+samples.o: $(NYQUIST)/nyqsrc/samples.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT samples.o -MD -MP -MF $(DEPDIR)/samples.Tpo -c -o samples.o `test -f '$(NYQUIST)/nyqsrc/samples.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/samples.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/samples.Tpo $(DEPDIR)/samples.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/samples.c' object='samples.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o samples.o `test -f '$(NYQUIST)/nyqsrc/samples.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/samples.c
+
+samples.obj: $(NYQUIST)/nyqsrc/samples.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT samples.obj -MD -MP -MF $(DEPDIR)/samples.Tpo -c -o samples.obj `if test -f '$(NYQUIST)/nyqsrc/samples.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/samples.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/samples.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/samples.Tpo $(DEPDIR)/samples.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/samples.c' object='samples.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o samples.obj `if test -f '$(NYQUIST)/nyqsrc/samples.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/samples.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/samples.c'; fi`
+
+sndmax.o: $(NYQUIST)/nyqsrc/sndmax.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sndmax.o -MD -MP -MF $(DEPDIR)/sndmax.Tpo -c -o sndmax.o `test -f '$(NYQUIST)/nyqsrc/sndmax.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/sndmax.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/sndmax.Tpo $(DEPDIR)/sndmax.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/sndmax.c' object='sndmax.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sndmax.o `test -f '$(NYQUIST)/nyqsrc/sndmax.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/sndmax.c
+
+sndmax.obj: $(NYQUIST)/nyqsrc/sndmax.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sndmax.obj -MD -MP -MF $(DEPDIR)/sndmax.Tpo -c -o sndmax.obj `if test -f '$(NYQUIST)/nyqsrc/sndmax.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/sndmax.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/sndmax.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/sndmax.Tpo $(DEPDIR)/sndmax.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/sndmax.c' object='sndmax.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sndmax.obj `if test -f '$(NYQUIST)/nyqsrc/sndmax.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/sndmax.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/sndmax.c'; fi`
+
+sndread.o: $(NYQUIST)/nyqsrc/sndread.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sndread.o -MD -MP -MF $(DEPDIR)/sndread.Tpo -c -o sndread.o `test -f '$(NYQUIST)/nyqsrc/sndread.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/sndread.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/sndread.Tpo $(DEPDIR)/sndread.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/sndread.c' object='sndread.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sndread.o `test -f '$(NYQUIST)/nyqsrc/sndread.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/sndread.c
+
+sndread.obj: $(NYQUIST)/nyqsrc/sndread.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sndread.obj -MD -MP -MF $(DEPDIR)/sndread.Tpo -c -o sndread.obj `if test -f '$(NYQUIST)/nyqsrc/sndread.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/sndread.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/sndread.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/sndread.Tpo $(DEPDIR)/sndread.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/sndread.c' object='sndread.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sndread.obj `if test -f '$(NYQUIST)/nyqsrc/sndread.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/sndread.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/sndread.c'; fi`
+
+sndseq.o: $(NYQUIST)/nyqsrc/sndseq.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sndseq.o -MD -MP -MF $(DEPDIR)/sndseq.Tpo -c -o sndseq.o `test -f '$(NYQUIST)/nyqsrc/sndseq.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/sndseq.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/sndseq.Tpo $(DEPDIR)/sndseq.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/sndseq.c' object='sndseq.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sndseq.o `test -f '$(NYQUIST)/nyqsrc/sndseq.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/sndseq.c
+
+sndseq.obj: $(NYQUIST)/nyqsrc/sndseq.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sndseq.obj -MD -MP -MF $(DEPDIR)/sndseq.Tpo -c -o sndseq.obj `if test -f '$(NYQUIST)/nyqsrc/sndseq.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/sndseq.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/sndseq.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/sndseq.Tpo $(DEPDIR)/sndseq.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/sndseq.c' object='sndseq.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sndseq.obj `if test -f '$(NYQUIST)/nyqsrc/sndseq.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/sndseq.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/sndseq.c'; fi`
+
+sndwritepa.o: $(NYQUIST)/nyqsrc/sndwritepa.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sndwritepa.o -MD -MP -MF $(DEPDIR)/sndwritepa.Tpo -c -o sndwritepa.o `test -f '$(NYQUIST)/nyqsrc/sndwritepa.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/sndwritepa.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/sndwritepa.Tpo $(DEPDIR)/sndwritepa.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/sndwritepa.c' object='sndwritepa.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sndwritepa.o `test -f '$(NYQUIST)/nyqsrc/sndwritepa.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/sndwritepa.c
+
+sndwritepa.obj: $(NYQUIST)/nyqsrc/sndwritepa.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sndwritepa.obj -MD -MP -MF $(DEPDIR)/sndwritepa.Tpo -c -o sndwritepa.obj `if test -f '$(NYQUIST)/nyqsrc/sndwritepa.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/sndwritepa.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/sndwritepa.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/sndwritepa.Tpo $(DEPDIR)/sndwritepa.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/sndwritepa.c' object='sndwritepa.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sndwritepa.obj `if test -f '$(NYQUIST)/nyqsrc/sndwritepa.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/sndwritepa.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/sndwritepa.c'; fi`
+
+yin.o: $(NYQUIST)/nyqsrc/yin.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT yin.o -MD -MP -MF $(DEPDIR)/yin.Tpo -c -o yin.o `test -f '$(NYQUIST)/nyqsrc/yin.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/yin.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/yin.Tpo $(DEPDIR)/yin.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/yin.c' object='yin.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o yin.o `test -f '$(NYQUIST)/nyqsrc/yin.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/yin.c
+
+yin.obj: $(NYQUIST)/nyqsrc/yin.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT yin.obj -MD -MP -MF $(DEPDIR)/yin.Tpo -c -o yin.obj `if test -f '$(NYQUIST)/nyqsrc/yin.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/yin.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/yin.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/yin.Tpo $(DEPDIR)/yin.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/yin.c' object='yin.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o yin.obj `if test -f '$(NYQUIST)/nyqsrc/yin.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/yin.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/yin.c'; fi`
+
+trigger.o: $(NYQUIST)/nyqsrc/trigger.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT trigger.o -MD -MP -MF $(DEPDIR)/trigger.Tpo -c -o trigger.o `test -f '$(NYQUIST)/nyqsrc/trigger.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/trigger.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/trigger.Tpo $(DEPDIR)/trigger.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/trigger.c' object='trigger.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o trigger.o `test -f '$(NYQUIST)/nyqsrc/trigger.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/trigger.c
+
+trigger.obj: $(NYQUIST)/nyqsrc/trigger.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT trigger.obj -MD -MP -MF $(DEPDIR)/trigger.Tpo -c -o trigger.obj `if test -f '$(NYQUIST)/nyqsrc/trigger.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/trigger.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/trigger.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/trigger.Tpo $(DEPDIR)/trigger.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/trigger.c' object='trigger.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o trigger.obj `if test -f '$(NYQUIST)/nyqsrc/trigger.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/trigger.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/trigger.c'; fi`
+
+lpanal.o: $(NYQUIST)/nyqsrc/lpanal.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lpanal.o -MD -MP -MF $(DEPDIR)/lpanal.Tpo -c -o lpanal.o `test -f '$(NYQUIST)/nyqsrc/lpanal.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/lpanal.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/lpanal.Tpo $(DEPDIR)/lpanal.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/lpanal.c' object='lpanal.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lpanal.o `test -f '$(NYQUIST)/nyqsrc/lpanal.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/lpanal.c
+
+lpanal.obj: $(NYQUIST)/nyqsrc/lpanal.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lpanal.obj -MD -MP -MF $(DEPDIR)/lpanal.Tpo -c -o lpanal.obj `if test -f '$(NYQUIST)/nyqsrc/lpanal.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/lpanal.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/lpanal.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/lpanal.Tpo $(DEPDIR)/lpanal.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/lpanal.c' object='lpanal.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lpanal.obj `if test -f '$(NYQUIST)/nyqsrc/lpanal.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/lpanal.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/lpanal.c'; fi`
+
+fftext.o: $(NYQUIST)/ffts/src/fftext.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fftext.o -MD -MP -MF $(DEPDIR)/fftext.Tpo -c -o fftext.o `test -f '$(NYQUIST)/ffts/src/fftext.c' || echo '$(srcdir)/'`$(NYQUIST)/ffts/src/fftext.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/fftext.Tpo $(DEPDIR)/fftext.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/ffts/src/fftext.c' object='fftext.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fftext.o `test -f '$(NYQUIST)/ffts/src/fftext.c' || echo '$(srcdir)/'`$(NYQUIST)/ffts/src/fftext.c
+
+fftext.obj: $(NYQUIST)/ffts/src/fftext.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fftext.obj -MD -MP -MF $(DEPDIR)/fftext.Tpo -c -o fftext.obj `if test -f '$(NYQUIST)/ffts/src/fftext.c'; then $(CYGPATH_W) '$(NYQUIST)/ffts/src/fftext.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/ffts/src/fftext.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/fftext.Tpo $(DEPDIR)/fftext.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/ffts/src/fftext.c' object='fftext.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fftext.obj `if test -f '$(NYQUIST)/ffts/src/fftext.c'; then $(CYGPATH_W) '$(NYQUIST)/ffts/src/fftext.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/ffts/src/fftext.c'; fi`
+
+fftlib.o: $(NYQUIST)/ffts/src/fftlib.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fftlib.o -MD -MP -MF $(DEPDIR)/fftlib.Tpo -c -o fftlib.o `test -f '$(NYQUIST)/ffts/src/fftlib.c' || echo '$(srcdir)/'`$(NYQUIST)/ffts/src/fftlib.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/fftlib.Tpo $(DEPDIR)/fftlib.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/ffts/src/fftlib.c' object='fftlib.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fftlib.o `test -f '$(NYQUIST)/ffts/src/fftlib.c' || echo '$(srcdir)/'`$(NYQUIST)/ffts/src/fftlib.c
+
+fftlib.obj: $(NYQUIST)/ffts/src/fftlib.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fftlib.obj -MD -MP -MF $(DEPDIR)/fftlib.Tpo -c -o fftlib.obj `if test -f '$(NYQUIST)/ffts/src/fftlib.c'; then $(CYGPATH_W) '$(NYQUIST)/ffts/src/fftlib.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/ffts/src/fftlib.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/fftlib.Tpo $(DEPDIR)/fftlib.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/ffts/src/fftlib.c' object='fftlib.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fftlib.obj `if test -f '$(NYQUIST)/ffts/src/fftlib.c'; then $(CYGPATH_W) '$(NYQUIST)/ffts/src/fftlib.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/ffts/src/fftlib.c'; fi`
+
+matlib.o: $(NYQUIST)/ffts/src/matlib.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT matlib.o -MD -MP -MF $(DEPDIR)/matlib.Tpo -c -o matlib.o `test -f '$(NYQUIST)/ffts/src/matlib.c' || echo '$(srcdir)/'`$(NYQUIST)/ffts/src/matlib.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/matlib.Tpo $(DEPDIR)/matlib.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/ffts/src/matlib.c' object='matlib.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o matlib.o `test -f '$(NYQUIST)/ffts/src/matlib.c' || echo '$(srcdir)/'`$(NYQUIST)/ffts/src/matlib.c
+
+matlib.obj: $(NYQUIST)/ffts/src/matlib.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT matlib.obj -MD -MP -MF $(DEPDIR)/matlib.Tpo -c -o matlib.obj `if test -f '$(NYQUIST)/ffts/src/matlib.c'; then $(CYGPATH_W) '$(NYQUIST)/ffts/src/matlib.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/ffts/src/matlib.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/matlib.Tpo $(DEPDIR)/matlib.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/ffts/src/matlib.c' object='matlib.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o matlib.obj `if test -f '$(NYQUIST)/ffts/src/matlib.c'; then $(CYGPATH_W) '$(NYQUIST)/ffts/src/matlib.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/ffts/src/matlib.c'; fi`
+
+sndfnint.o: $(NYQUIST)/nyqsrc/sndfnint.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sndfnint.o -MD -MP -MF $(DEPDIR)/sndfnint.Tpo -c -o sndfnint.o `test -f '$(NYQUIST)/nyqsrc/sndfnint.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/sndfnint.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/sndfnint.Tpo $(DEPDIR)/sndfnint.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/sndfnint.c' object='sndfnint.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sndfnint.o `test -f '$(NYQUIST)/nyqsrc/sndfnint.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/sndfnint.c
+
+sndfnint.obj: $(NYQUIST)/nyqsrc/sndfnint.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT sndfnint.obj -MD -MP -MF $(DEPDIR)/sndfnint.Tpo -c -o sndfnint.obj `if test -f '$(NYQUIST)/nyqsrc/sndfnint.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/sndfnint.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/sndfnint.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/sndfnint.Tpo $(DEPDIR)/sndfnint.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/sndfnint.c' object='sndfnint.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o sndfnint.obj `if test -f '$(NYQUIST)/nyqsrc/sndfnint.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/sndfnint.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/sndfnint.c'; fi`
+
+seqfnint.o: $(NYQUIST)/nyqsrc/seqfnint.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT seqfnint.o -MD -MP -MF $(DEPDIR)/seqfnint.Tpo -c -o seqfnint.o `test -f '$(NYQUIST)/nyqsrc/seqfnint.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/seqfnint.c
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/seqfnint.Tpo $(DEPDIR)/seqfnint.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/seqfnint.c' object='seqfnint.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o seqfnint.o `test -f '$(NYQUIST)/nyqsrc/seqfnint.c' || echo '$(srcdir)/'`$(NYQUIST)/nyqsrc/seqfnint.c
+
+seqfnint.obj: $(NYQUIST)/nyqsrc/seqfnint.c
+ at am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT seqfnint.obj -MD -MP -MF $(DEPDIR)/seqfnint.Tpo -c -o seqfnint.obj `if test -f '$(NYQUIST)/nyqsrc/seqfnint.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/seqfnint.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/seqfnint.c'; fi`
+ at am__fastdepCC_TRUE@ mv -f $(DEPDIR)/seqfnint.Tpo $(DEPDIR)/seqfnint.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$(NYQUIST)/nyqsrc/seqfnint.c' object='seqfnint.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o seqfnint.obj `if test -f '$(NYQUIST)/nyqsrc/seqfnint.c'; then $(CYGPATH_W) '$(NYQUIST)/nyqsrc/seqfnint.c'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqsrc/seqfnint.c'; fi`
+
+.cpp.o:
+ at am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $<
+
+.cpp.obj:
+ at am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
+
+Generator.o: $(NYQUIST)/nyqstk/src/Generator.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Generator.o -MD -MP -MF $(DEPDIR)/Generator.Tpo -c -o Generator.o `test -f '$(NYQUIST)/nyqstk/src/Generator.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Generator.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Generator.Tpo $(DEPDIR)/Generator.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Generator.cpp' object='Generator.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Generator.o `test -f '$(NYQUIST)/nyqstk/src/Generator.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Generator.cpp
+
+Generator.obj: $(NYQUIST)/nyqstk/src/Generator.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Generator.obj -MD -MP -MF $(DEPDIR)/Generator.Tpo -c -o Generator.obj `if test -f '$(NYQUIST)/nyqstk/src/Generator.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Generator.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Generator.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Generator.Tpo $(DEPDIR)/Generator.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Generator.cpp' object='Generator.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Generator.obj `if test -f '$(NYQUIST)/nyqstk/src/Generator.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Generator.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Generator.cpp'; fi`
+
+SineWave.o: $(NYQUIST)/nyqstk/src/SineWave.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT SineWave.o -MD -MP -MF $(DEPDIR)/SineWave.Tpo -c -o SineWave.o `test -f '$(NYQUIST)/nyqstk/src/SineWave.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/SineWave.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/SineWave.Tpo $(DEPDIR)/SineWave.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/SineWave.cpp' object='SineWave.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o SineWave.o `test -f '$(NYQUIST)/nyqstk/src/SineWave.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/SineWave.cpp
+
+SineWave.obj: $(NYQUIST)/nyqstk/src/SineWave.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT SineWave.obj -MD -MP -MF $(DEPDIR)/SineWave.Tpo -c -o SineWave.obj `if test -f '$(NYQUIST)/nyqstk/src/SineWave.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/SineWave.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/SineWave.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/SineWave.Tpo $(DEPDIR)/SineWave.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/SineWave.cpp' object='SineWave.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o SineWave.obj `if test -f '$(NYQUIST)/nyqstk/src/SineWave.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/SineWave.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/SineWave.cpp'; fi`
+
+Function.o: $(NYQUIST)/nyqstk/src/Function.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Function.o -MD -MP -MF $(DEPDIR)/Function.Tpo -c -o Function.o `test -f '$(NYQUIST)/nyqstk/src/Function.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Function.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Function.Tpo $(DEPDIR)/Function.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Function.cpp' object='Function.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Function.o `test -f '$(NYQUIST)/nyqstk/src/Function.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Function.cpp
+
+Function.obj: $(NYQUIST)/nyqstk/src/Function.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Function.obj -MD -MP -MF $(DEPDIR)/Function.Tpo -c -o Function.obj `if test -f '$(NYQUIST)/nyqstk/src/Function.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Function.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Function.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Function.Tpo $(DEPDIR)/Function.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Function.cpp' object='Function.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Function.obj `if test -f '$(NYQUIST)/nyqstk/src/Function.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Function.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Function.cpp'; fi`
+
+FileRead.o: $(NYQUIST)/nyqstk/src/FileRead.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT FileRead.o -MD -MP -MF $(DEPDIR)/FileRead.Tpo -c -o FileRead.o `test -f '$(NYQUIST)/nyqstk/src/FileRead.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/FileRead.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/FileRead.Tpo $(DEPDIR)/FileRead.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/FileRead.cpp' object='FileRead.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o FileRead.o `test -f '$(NYQUIST)/nyqstk/src/FileRead.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/FileRead.cpp
+
+FileRead.obj: $(NYQUIST)/nyqstk/src/FileRead.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT FileRead.obj -MD -MP -MF $(DEPDIR)/FileRead.Tpo -c -o FileRead.obj `if test -f '$(NYQUIST)/nyqstk/src/FileRead.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/FileRead.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/FileRead.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/FileRead.Tpo $(DEPDIR)/FileRead.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/FileRead.cpp' object='FileRead.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o FileRead.obj `if test -f '$(NYQUIST)/nyqstk/src/FileRead.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/FileRead.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/FileRead.cpp'; fi`
+
+FileWvIn.o: $(NYQUIST)/nyqstk/src/FileWvIn.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT FileWvIn.o -MD -MP -MF $(DEPDIR)/FileWvIn.Tpo -c -o FileWvIn.o `test -f '$(NYQUIST)/nyqstk/src/FileWvIn.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/FileWvIn.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/FileWvIn.Tpo $(DEPDIR)/FileWvIn.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/FileWvIn.cpp' object='FileWvIn.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o FileWvIn.o `test -f '$(NYQUIST)/nyqstk/src/FileWvIn.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/FileWvIn.cpp
+
+FileWvIn.obj: $(NYQUIST)/nyqstk/src/FileWvIn.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT FileWvIn.obj -MD -MP -MF $(DEPDIR)/FileWvIn.Tpo -c -o FileWvIn.obj `if test -f '$(NYQUIST)/nyqstk/src/FileWvIn.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/FileWvIn.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/FileWvIn.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/FileWvIn.Tpo $(DEPDIR)/FileWvIn.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/FileWvIn.cpp' object='FileWvIn.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o FileWvIn.obj `if test -f '$(NYQUIST)/nyqstk/src/FileWvIn.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/FileWvIn.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/FileWvIn.cpp'; fi`
+
+Effect.o: $(NYQUIST)/nyqstk/src/Effect.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Effect.o -MD -MP -MF $(DEPDIR)/Effect.Tpo -c -o Effect.o `test -f '$(NYQUIST)/nyqstk/src/Effect.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Effect.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Effect.Tpo $(DEPDIR)/Effect.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Effect.cpp' object='Effect.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Effect.o `test -f '$(NYQUIST)/nyqstk/src/Effect.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Effect.cpp
+
+Effect.obj: $(NYQUIST)/nyqstk/src/Effect.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Effect.obj -MD -MP -MF $(DEPDIR)/Effect.Tpo -c -o Effect.obj `if test -f '$(NYQUIST)/nyqstk/src/Effect.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Effect.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Effect.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Effect.Tpo $(DEPDIR)/Effect.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Effect.cpp' object='Effect.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Effect.obj `if test -f '$(NYQUIST)/nyqstk/src/Effect.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Effect.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Effect.cpp'; fi`
+
+Clarinet.o: $(NYQUIST)/nyqstk/src/Clarinet.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Clarinet.o -MD -MP -MF $(DEPDIR)/Clarinet.Tpo -c -o Clarinet.o `test -f '$(NYQUIST)/nyqstk/src/Clarinet.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Clarinet.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Clarinet.Tpo $(DEPDIR)/Clarinet.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Clarinet.cpp' object='Clarinet.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Clarinet.o `test -f '$(NYQUIST)/nyqstk/src/Clarinet.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Clarinet.cpp
+
+Clarinet.obj: $(NYQUIST)/nyqstk/src/Clarinet.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Clarinet.obj -MD -MP -MF $(DEPDIR)/Clarinet.Tpo -c -o Clarinet.obj `if test -f '$(NYQUIST)/nyqstk/src/Clarinet.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Clarinet.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Clarinet.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Clarinet.Tpo $(DEPDIR)/Clarinet.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Clarinet.cpp' object='Clarinet.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Clarinet.obj `if test -f '$(NYQUIST)/nyqstk/src/Clarinet.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Clarinet.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Clarinet.cpp'; fi`
+
+Delay.o: $(NYQUIST)/nyqstk/src/Delay.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Delay.o -MD -MP -MF $(DEPDIR)/Delay.Tpo -c -o Delay.o `test -f '$(NYQUIST)/nyqstk/src/Delay.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Delay.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Delay.Tpo $(DEPDIR)/Delay.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Delay.cpp' object='Delay.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Delay.o `test -f '$(NYQUIST)/nyqstk/src/Delay.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Delay.cpp
+
+Delay.obj: $(NYQUIST)/nyqstk/src/Delay.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Delay.obj -MD -MP -MF $(DEPDIR)/Delay.Tpo -c -o Delay.obj `if test -f '$(NYQUIST)/nyqstk/src/Delay.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Delay.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Delay.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Delay.Tpo $(DEPDIR)/Delay.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Delay.cpp' object='Delay.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Delay.obj `if test -f '$(NYQUIST)/nyqstk/src/Delay.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Delay.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Delay.cpp'; fi`
+
+DelayL.o: $(NYQUIST)/nyqstk/src/DelayL.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT DelayL.o -MD -MP -MF $(DEPDIR)/DelayL.Tpo -c -o DelayL.o `test -f '$(NYQUIST)/nyqstk/src/DelayL.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/DelayL.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/DelayL.Tpo $(DEPDIR)/DelayL.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/DelayL.cpp' object='DelayL.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o DelayL.o `test -f '$(NYQUIST)/nyqstk/src/DelayL.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/DelayL.cpp
+
+DelayL.obj: $(NYQUIST)/nyqstk/src/DelayL.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT DelayL.obj -MD -MP -MF $(DEPDIR)/DelayL.Tpo -c -o DelayL.obj `if test -f '$(NYQUIST)/nyqstk/src/DelayL.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/DelayL.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/DelayL.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/DelayL.Tpo $(DEPDIR)/DelayL.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/DelayL.cpp' object='DelayL.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o DelayL.obj `if test -f '$(NYQUIST)/nyqstk/src/DelayL.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/DelayL.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/DelayL.cpp'; fi`
+
+Envelope.o: $(NYQUIST)/nyqstk/src/Envelope.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Envelope.o -MD -MP -MF $(DEPDIR)/Envelope.Tpo -c -o Envelope.o `test -f '$(NYQUIST)/nyqstk/src/Envelope.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Envelope.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Envelope.Tpo $(DEPDIR)/Envelope.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Envelope.cpp' object='Envelope.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Envelope.o `test -f '$(NYQUIST)/nyqstk/src/Envelope.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Envelope.cpp
+
+Envelope.obj: $(NYQUIST)/nyqstk/src/Envelope.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Envelope.obj -MD -MP -MF $(DEPDIR)/Envelope.Tpo -c -o Envelope.obj `if test -f '$(NYQUIST)/nyqstk/src/Envelope.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Envelope.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Envelope.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Envelope.Tpo $(DEPDIR)/Envelope.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Envelope.cpp' object='Envelope.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Envelope.obj `if test -f '$(NYQUIST)/nyqstk/src/Envelope.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Envelope.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Envelope.cpp'; fi`
+
+Filter.o: $(NYQUIST)/nyqstk/src/Filter.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Filter.o -MD -MP -MF $(DEPDIR)/Filter.Tpo -c -o Filter.o `test -f '$(NYQUIST)/nyqstk/src/Filter.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Filter.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Filter.Tpo $(DEPDIR)/Filter.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Filter.cpp' object='Filter.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Filter.o `test -f '$(NYQUIST)/nyqstk/src/Filter.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Filter.cpp
+
+Filter.obj: $(NYQUIST)/nyqstk/src/Filter.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Filter.obj -MD -MP -MF $(DEPDIR)/Filter.Tpo -c -o Filter.obj `if test -f '$(NYQUIST)/nyqstk/src/Filter.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Filter.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Filter.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Filter.Tpo $(DEPDIR)/Filter.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Filter.cpp' object='Filter.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Filter.obj `if test -f '$(NYQUIST)/nyqstk/src/Filter.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Filter.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Filter.cpp'; fi`
+
+Instrmnt.o: $(NYQUIST)/nyqstk/src/Instrmnt.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Instrmnt.o -MD -MP -MF $(DEPDIR)/Instrmnt.Tpo -c -o Instrmnt.o `test -f '$(NYQUIST)/nyqstk/src/Instrmnt.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Instrmnt.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Instrmnt.Tpo $(DEPDIR)/Instrmnt.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Instrmnt.cpp' object='Instrmnt.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Instrmnt.o `test -f '$(NYQUIST)/nyqstk/src/Instrmnt.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Instrmnt.cpp
+
+Instrmnt.obj: $(NYQUIST)/nyqstk/src/Instrmnt.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Instrmnt.obj -MD -MP -MF $(DEPDIR)/Instrmnt.Tpo -c -o Instrmnt.obj `if test -f '$(NYQUIST)/nyqstk/src/Instrmnt.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Instrmnt.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Instrmnt.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Instrmnt.Tpo $(DEPDIR)/Instrmnt.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Instrmnt.cpp' object='Instrmnt.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Instrmnt.obj `if test -f '$(NYQUIST)/nyqstk/src/Instrmnt.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Instrmnt.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Instrmnt.cpp'; fi`
+
+Noise.o: $(NYQUIST)/nyqstk/src/Noise.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Noise.o -MD -MP -MF $(DEPDIR)/Noise.Tpo -c -o Noise.o `test -f '$(NYQUIST)/nyqstk/src/Noise.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Noise.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Noise.Tpo $(DEPDIR)/Noise.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Noise.cpp' object='Noise.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Noise.o `test -f '$(NYQUIST)/nyqstk/src/Noise.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Noise.cpp
+
+Noise.obj: $(NYQUIST)/nyqstk/src/Noise.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Noise.obj -MD -MP -MF $(DEPDIR)/Noise.Tpo -c -o Noise.obj `if test -f '$(NYQUIST)/nyqstk/src/Noise.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Noise.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Noise.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Noise.Tpo $(DEPDIR)/Noise.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Noise.cpp' object='Noise.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Noise.obj `if test -f '$(NYQUIST)/nyqstk/src/Noise.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Noise.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Noise.cpp'; fi`
+
+OneZero.o: $(NYQUIST)/nyqstk/src/OneZero.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT OneZero.o -MD -MP -MF $(DEPDIR)/OneZero.Tpo -c -o OneZero.o `test -f '$(NYQUIST)/nyqstk/src/OneZero.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/OneZero.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/OneZero.Tpo $(DEPDIR)/OneZero.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/OneZero.cpp' object='OneZero.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o OneZero.o `test -f '$(NYQUIST)/nyqstk/src/OneZero.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/OneZero.cpp
+
+OneZero.obj: $(NYQUIST)/nyqstk/src/OneZero.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT OneZero.obj -MD -MP -MF $(DEPDIR)/OneZero.Tpo -c -o OneZero.obj `if test -f '$(NYQUIST)/nyqstk/src/OneZero.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/OneZero.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/OneZero.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/OneZero.Tpo $(DEPDIR)/OneZero.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/OneZero.cpp' object='OneZero.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o OneZero.obj `if test -f '$(NYQUIST)/nyqstk/src/OneZero.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/OneZero.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/OneZero.cpp'; fi`
+
+ReedTable.o: $(NYQUIST)/nyqstk/src/ReedTable.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT ReedTable.o -MD -MP -MF $(DEPDIR)/ReedTable.Tpo -c -o ReedTable.o `test -f '$(NYQUIST)/nyqstk/src/ReedTable.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/ReedTable.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/ReedTable.Tpo $(DEPDIR)/ReedTable.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/ReedTable.cpp' object='ReedTable.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o ReedTable.o `test -f '$(NYQUIST)/nyqstk/src/ReedTable.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/ReedTable.cpp
+
+ReedTable.obj: $(NYQUIST)/nyqstk/src/ReedTable.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT ReedTable.obj -MD -MP -MF $(DEPDIR)/ReedTable.Tpo -c -o ReedTable.obj `if test -f '$(NYQUIST)/nyqstk/src/ReedTable.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/ReedTable.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/ReedTable.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/ReedTable.Tpo $(DEPDIR)/ReedTable.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/ReedTable.cpp' object='ReedTable.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o ReedTable.obj `if test -f '$(NYQUIST)/nyqstk/src/ReedTable.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/ReedTable.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/ReedTable.cpp'; fi`
+
+Saxofony.o: $(NYQUIST)/nyqstk/src/Saxofony.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Saxofony.o -MD -MP -MF $(DEPDIR)/Saxofony.Tpo -c -o Saxofony.o `test -f '$(NYQUIST)/nyqstk/src/Saxofony.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Saxofony.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Saxofony.Tpo $(DEPDIR)/Saxofony.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Saxofony.cpp' object='Saxofony.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Saxofony.o `test -f '$(NYQUIST)/nyqstk/src/Saxofony.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Saxofony.cpp
+
+Saxofony.obj: $(NYQUIST)/nyqstk/src/Saxofony.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Saxofony.obj -MD -MP -MF $(DEPDIR)/Saxofony.Tpo -c -o Saxofony.obj `if test -f '$(NYQUIST)/nyqstk/src/Saxofony.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Saxofony.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Saxofony.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Saxofony.Tpo $(DEPDIR)/Saxofony.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Saxofony.cpp' object='Saxofony.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Saxofony.obj `if test -f '$(NYQUIST)/nyqstk/src/Saxofony.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Saxofony.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Saxofony.cpp'; fi`
+
+Stk.o: $(NYQUIST)/nyqstk/src/Stk.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Stk.o -MD -MP -MF $(DEPDIR)/Stk.Tpo -c -o Stk.o `test -f '$(NYQUIST)/nyqstk/src/Stk.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Stk.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Stk.Tpo $(DEPDIR)/Stk.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Stk.cpp' object='Stk.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Stk.o `test -f '$(NYQUIST)/nyqstk/src/Stk.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Stk.cpp
+
+Stk.obj: $(NYQUIST)/nyqstk/src/Stk.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Stk.obj -MD -MP -MF $(DEPDIR)/Stk.Tpo -c -o Stk.obj `if test -f '$(NYQUIST)/nyqstk/src/Stk.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Stk.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Stk.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Stk.Tpo $(DEPDIR)/Stk.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Stk.cpp' object='Stk.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Stk.obj `if test -f '$(NYQUIST)/nyqstk/src/Stk.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Stk.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Stk.cpp'; fi`
+
+WaveLoop.o: $(NYQUIST)/nyqstk/src/WaveLoop.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT WaveLoop.o -MD -MP -MF $(DEPDIR)/WaveLoop.Tpo -c -o WaveLoop.o `test -f '$(NYQUIST)/nyqstk/src/WaveLoop.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/WaveLoop.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/WaveLoop.Tpo $(DEPDIR)/WaveLoop.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/WaveLoop.cpp' object='WaveLoop.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o WaveLoop.o `test -f '$(NYQUIST)/nyqstk/src/WaveLoop.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/WaveLoop.cpp
+
+WaveLoop.obj: $(NYQUIST)/nyqstk/src/WaveLoop.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT WaveLoop.obj -MD -MP -MF $(DEPDIR)/WaveLoop.Tpo -c -o WaveLoop.obj `if test -f '$(NYQUIST)/nyqstk/src/WaveLoop.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/WaveLoop.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/WaveLoop.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/WaveLoop.Tpo $(DEPDIR)/WaveLoop.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/WaveLoop.cpp' object='WaveLoop.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o WaveLoop.obj `if test -f '$(NYQUIST)/nyqstk/src/WaveLoop.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/WaveLoop.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/WaveLoop.cpp'; fi`
+
+WvIn.o: $(NYQUIST)/nyqstk/src/WvIn.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT WvIn.o -MD -MP -MF $(DEPDIR)/WvIn.Tpo -c -o WvIn.o `test -f '$(NYQUIST)/nyqstk/src/WvIn.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/WvIn.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/WvIn.Tpo $(DEPDIR)/WvIn.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/WvIn.cpp' object='WvIn.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o WvIn.o `test -f '$(NYQUIST)/nyqstk/src/WvIn.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/WvIn.cpp
+
+WvIn.obj: $(NYQUIST)/nyqstk/src/WvIn.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT WvIn.obj -MD -MP -MF $(DEPDIR)/WvIn.Tpo -c -o WvIn.obj `if test -f '$(NYQUIST)/nyqstk/src/WvIn.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/WvIn.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/WvIn.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/WvIn.Tpo $(DEPDIR)/WvIn.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/WvIn.cpp' object='WvIn.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o WvIn.obj `if test -f '$(NYQUIST)/nyqstk/src/WvIn.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/WvIn.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/WvIn.cpp'; fi`
+
+NRev.o: $(NYQUIST)/nyqstk/src/NRev.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT NRev.o -MD -MP -MF $(DEPDIR)/NRev.Tpo -c -o NRev.o `test -f '$(NYQUIST)/nyqstk/src/NRev.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/NRev.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/NRev.Tpo $(DEPDIR)/NRev.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/NRev.cpp' object='NRev.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o NRev.o `test -f '$(NYQUIST)/nyqstk/src/NRev.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/NRev.cpp
+
+NRev.obj: $(NYQUIST)/nyqstk/src/NRev.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT NRev.obj -MD -MP -MF $(DEPDIR)/NRev.Tpo -c -o NRev.obj `if test -f '$(NYQUIST)/nyqstk/src/NRev.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/NRev.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/NRev.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/NRev.Tpo $(DEPDIR)/NRev.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/NRev.cpp' object='NRev.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o NRev.obj `if test -f '$(NYQUIST)/nyqstk/src/NRev.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/NRev.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/NRev.cpp'; fi`
+
+JCRev.o: $(NYQUIST)/nyqstk/src/JCRev.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT JCRev.o -MD -MP -MF $(DEPDIR)/JCRev.Tpo -c -o JCRev.o `test -f '$(NYQUIST)/nyqstk/src/JCRev.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/JCRev.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/JCRev.Tpo $(DEPDIR)/JCRev.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/JCRev.cpp' object='JCRev.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o JCRev.o `test -f '$(NYQUIST)/nyqstk/src/JCRev.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/JCRev.cpp
+
+JCRev.obj: $(NYQUIST)/nyqstk/src/JCRev.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT JCRev.obj -MD -MP -MF $(DEPDIR)/JCRev.Tpo -c -o JCRev.obj `if test -f '$(NYQUIST)/nyqstk/src/JCRev.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/JCRev.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/JCRev.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/JCRev.Tpo $(DEPDIR)/JCRev.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/JCRev.cpp' object='JCRev.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o JCRev.obj `if test -f '$(NYQUIST)/nyqstk/src/JCRev.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/JCRev.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/JCRev.cpp'; fi`
+
+PRCRev.o: $(NYQUIST)/nyqstk/src/PRCRev.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT PRCRev.o -MD -MP -MF $(DEPDIR)/PRCRev.Tpo -c -o PRCRev.o `test -f '$(NYQUIST)/nyqstk/src/PRCRev.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/PRCRev.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/PRCRev.Tpo $(DEPDIR)/PRCRev.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/PRCRev.cpp' object='PRCRev.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o PRCRev.o `test -f '$(NYQUIST)/nyqstk/src/PRCRev.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/PRCRev.cpp
+
+PRCRev.obj: $(NYQUIST)/nyqstk/src/PRCRev.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT PRCRev.obj -MD -MP -MF $(DEPDIR)/PRCRev.Tpo -c -o PRCRev.obj `if test -f '$(NYQUIST)/nyqstk/src/PRCRev.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/PRCRev.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/PRCRev.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/PRCRev.Tpo $(DEPDIR)/PRCRev.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/PRCRev.cpp' object='PRCRev.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o PRCRev.obj `if test -f '$(NYQUIST)/nyqstk/src/PRCRev.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/PRCRev.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/PRCRev.cpp'; fi`
+
+PitShift.o: $(NYQUIST)/nyqstk/src/PitShift.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT PitShift.o -MD -MP -MF $(DEPDIR)/PitShift.Tpo -c -o PitShift.o `test -f '$(NYQUIST)/nyqstk/src/PitShift.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/PitShift.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/PitShift.Tpo $(DEPDIR)/PitShift.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/PitShift.cpp' object='PitShift.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o PitShift.o `test -f '$(NYQUIST)/nyqstk/src/PitShift.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/PitShift.cpp
+
+PitShift.obj: $(NYQUIST)/nyqstk/src/PitShift.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT PitShift.obj -MD -MP -MF $(DEPDIR)/PitShift.Tpo -c -o PitShift.obj `if test -f '$(NYQUIST)/nyqstk/src/PitShift.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/PitShift.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/PitShift.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/PitShift.Tpo $(DEPDIR)/PitShift.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/PitShift.cpp' object='PitShift.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o PitShift.obj `if test -f '$(NYQUIST)/nyqstk/src/PitShift.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/PitShift.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/PitShift.cpp'; fi`
+
+Chorus.o: $(NYQUIST)/nyqstk/src/Chorus.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Chorus.o -MD -MP -MF $(DEPDIR)/Chorus.Tpo -c -o Chorus.o `test -f '$(NYQUIST)/nyqstk/src/Chorus.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Chorus.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Chorus.Tpo $(DEPDIR)/Chorus.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Chorus.cpp' object='Chorus.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Chorus.o `test -f '$(NYQUIST)/nyqstk/src/Chorus.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Chorus.cpp
+
+Chorus.obj: $(NYQUIST)/nyqstk/src/Chorus.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Chorus.obj -MD -MP -MF $(DEPDIR)/Chorus.Tpo -c -o Chorus.obj `if test -f '$(NYQUIST)/nyqstk/src/Chorus.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Chorus.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Chorus.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Chorus.Tpo $(DEPDIR)/Chorus.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Chorus.cpp' object='Chorus.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Chorus.obj `if test -f '$(NYQUIST)/nyqstk/src/Chorus.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Chorus.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Chorus.cpp'; fi`
+
+Bowed.o: $(NYQUIST)/nyqstk/src/Bowed.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Bowed.o -MD -MP -MF $(DEPDIR)/Bowed.Tpo -c -o Bowed.o `test -f '$(NYQUIST)/nyqstk/src/Bowed.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Bowed.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Bowed.Tpo $(DEPDIR)/Bowed.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Bowed.cpp' object='Bowed.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Bowed.o `test -f '$(NYQUIST)/nyqstk/src/Bowed.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Bowed.cpp
+
+Bowed.obj: $(NYQUIST)/nyqstk/src/Bowed.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Bowed.obj -MD -MP -MF $(DEPDIR)/Bowed.Tpo -c -o Bowed.obj `if test -f '$(NYQUIST)/nyqstk/src/Bowed.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Bowed.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Bowed.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Bowed.Tpo $(DEPDIR)/Bowed.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Bowed.cpp' object='Bowed.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Bowed.obj `if test -f '$(NYQUIST)/nyqstk/src/Bowed.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Bowed.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Bowed.cpp'; fi`
+
+BowTable.o: $(NYQUIST)/nyqstk/src/BowTable.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT BowTable.o -MD -MP -MF $(DEPDIR)/BowTable.Tpo -c -o BowTable.o `test -f '$(NYQUIST)/nyqstk/src/BowTable.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/BowTable.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/BowTable.Tpo $(DEPDIR)/BowTable.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/BowTable.cpp' object='BowTable.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o BowTable.o `test -f '$(NYQUIST)/nyqstk/src/BowTable.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/BowTable.cpp
+
+BowTable.obj: $(NYQUIST)/nyqstk/src/BowTable.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT BowTable.obj -MD -MP -MF $(DEPDIR)/BowTable.Tpo -c -o BowTable.obj `if test -f '$(NYQUIST)/nyqstk/src/BowTable.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/BowTable.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/BowTable.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/BowTable.Tpo $(DEPDIR)/BowTable.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/BowTable.cpp' object='BowTable.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o BowTable.obj `if test -f '$(NYQUIST)/nyqstk/src/BowTable.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/BowTable.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/BowTable.cpp'; fi`
+
+ADSR.o: $(NYQUIST)/nyqstk/src/ADSR.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT ADSR.o -MD -MP -MF $(DEPDIR)/ADSR.Tpo -c -o ADSR.o `test -f '$(NYQUIST)/nyqstk/src/ADSR.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/ADSR.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/ADSR.Tpo $(DEPDIR)/ADSR.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/ADSR.cpp' object='ADSR.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o ADSR.o `test -f '$(NYQUIST)/nyqstk/src/ADSR.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/ADSR.cpp
+
+ADSR.obj: $(NYQUIST)/nyqstk/src/ADSR.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT ADSR.obj -MD -MP -MF $(DEPDIR)/ADSR.Tpo -c -o ADSR.obj `if test -f '$(NYQUIST)/nyqstk/src/ADSR.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/ADSR.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/ADSR.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/ADSR.Tpo $(DEPDIR)/ADSR.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/ADSR.cpp' object='ADSR.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o ADSR.obj `if test -f '$(NYQUIST)/nyqstk/src/ADSR.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/ADSR.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/ADSR.cpp'; fi`
+
+OnePole.o: $(NYQUIST)/nyqstk/src/OnePole.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT OnePole.o -MD -MP -MF $(DEPDIR)/OnePole.Tpo -c -o OnePole.o `test -f '$(NYQUIST)/nyqstk/src/OnePole.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/OnePole.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/OnePole.Tpo $(DEPDIR)/OnePole.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/OnePole.cpp' object='OnePole.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o OnePole.o `test -f '$(NYQUIST)/nyqstk/src/OnePole.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/OnePole.cpp
+
+OnePole.obj: $(NYQUIST)/nyqstk/src/OnePole.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT OnePole.obj -MD -MP -MF $(DEPDIR)/OnePole.Tpo -c -o OnePole.obj `if test -f '$(NYQUIST)/nyqstk/src/OnePole.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/OnePole.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/OnePole.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/OnePole.Tpo $(DEPDIR)/OnePole.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/OnePole.cpp' object='OnePole.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o OnePole.obj `if test -f '$(NYQUIST)/nyqstk/src/OnePole.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/OnePole.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/OnePole.cpp'; fi`
+
+BiQuad.o: $(NYQUIST)/nyqstk/src/BiQuad.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT BiQuad.o -MD -MP -MF $(DEPDIR)/BiQuad.Tpo -c -o BiQuad.o `test -f '$(NYQUIST)/nyqstk/src/BiQuad.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/BiQuad.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/BiQuad.Tpo $(DEPDIR)/BiQuad.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/BiQuad.cpp' object='BiQuad.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o BiQuad.o `test -f '$(NYQUIST)/nyqstk/src/BiQuad.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/BiQuad.cpp
+
+BiQuad.obj: $(NYQUIST)/nyqstk/src/BiQuad.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT BiQuad.obj -MD -MP -MF $(DEPDIR)/BiQuad.Tpo -c -o BiQuad.obj `if test -f '$(NYQUIST)/nyqstk/src/BiQuad.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/BiQuad.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/BiQuad.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/BiQuad.Tpo $(DEPDIR)/BiQuad.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/BiQuad.cpp' object='BiQuad.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o BiQuad.obj `if test -f '$(NYQUIST)/nyqstk/src/BiQuad.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/BiQuad.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/BiQuad.cpp'; fi`
+
+BandedWG.o: $(NYQUIST)/nyqstk/src/BandedWG.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT BandedWG.o -MD -MP -MF $(DEPDIR)/BandedWG.Tpo -c -o BandedWG.o `test -f '$(NYQUIST)/nyqstk/src/BandedWG.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/BandedWG.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/BandedWG.Tpo $(DEPDIR)/BandedWG.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/BandedWG.cpp' object='BandedWG.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o BandedWG.o `test -f '$(NYQUIST)/nyqstk/src/BandedWG.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/BandedWG.cpp
+
+BandedWG.obj: $(NYQUIST)/nyqstk/src/BandedWG.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT BandedWG.obj -MD -MP -MF $(DEPDIR)/BandedWG.Tpo -c -o BandedWG.obj `if test -f '$(NYQUIST)/nyqstk/src/BandedWG.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/BandedWG.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/BandedWG.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/BandedWG.Tpo $(DEPDIR)/BandedWG.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/BandedWG.cpp' object='BandedWG.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o BandedWG.obj `if test -f '$(NYQUIST)/nyqstk/src/BandedWG.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/BandedWG.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/BandedWG.cpp'; fi`
+
+DelayA.o: $(NYQUIST)/nyqstk/src/DelayA.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT DelayA.o -MD -MP -MF $(DEPDIR)/DelayA.Tpo -c -o DelayA.o `test -f '$(NYQUIST)/nyqstk/src/DelayA.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/DelayA.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/DelayA.Tpo $(DEPDIR)/DelayA.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/DelayA.cpp' object='DelayA.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o DelayA.o `test -f '$(NYQUIST)/nyqstk/src/DelayA.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/DelayA.cpp
+
+DelayA.obj: $(NYQUIST)/nyqstk/src/DelayA.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT DelayA.obj -MD -MP -MF $(DEPDIR)/DelayA.Tpo -c -o DelayA.obj `if test -f '$(NYQUIST)/nyqstk/src/DelayA.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/DelayA.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/DelayA.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/DelayA.Tpo $(DEPDIR)/DelayA.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/DelayA.cpp' object='DelayA.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o DelayA.obj `if test -f '$(NYQUIST)/nyqstk/src/DelayA.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/DelayA.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/DelayA.cpp'; fi`
+
+Mandolin.o: $(NYQUIST)/nyqstk/src/Mandolin.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Mandolin.o -MD -MP -MF $(DEPDIR)/Mandolin.Tpo -c -o Mandolin.o `test -f '$(NYQUIST)/nyqstk/src/Mandolin.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Mandolin.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Mandolin.Tpo $(DEPDIR)/Mandolin.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Mandolin.cpp' object='Mandolin.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Mandolin.o `test -f '$(NYQUIST)/nyqstk/src/Mandolin.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Mandolin.cpp
+
+Mandolin.obj: $(NYQUIST)/nyqstk/src/Mandolin.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Mandolin.obj -MD -MP -MF $(DEPDIR)/Mandolin.Tpo -c -o Mandolin.obj `if test -f '$(NYQUIST)/nyqstk/src/Mandolin.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Mandolin.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Mandolin.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Mandolin.Tpo $(DEPDIR)/Mandolin.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Mandolin.cpp' object='Mandolin.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Mandolin.obj `if test -f '$(NYQUIST)/nyqstk/src/Mandolin.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Mandolin.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Mandolin.cpp'; fi`
+
+PluckTwo.o: $(NYQUIST)/nyqstk/src/PluckTwo.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT PluckTwo.o -MD -MP -MF $(DEPDIR)/PluckTwo.Tpo -c -o PluckTwo.o `test -f '$(NYQUIST)/nyqstk/src/PluckTwo.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/PluckTwo.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/PluckTwo.Tpo $(DEPDIR)/PluckTwo.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/PluckTwo.cpp' object='PluckTwo.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o PluckTwo.o `test -f '$(NYQUIST)/nyqstk/src/PluckTwo.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/PluckTwo.cpp
+
+PluckTwo.obj: $(NYQUIST)/nyqstk/src/PluckTwo.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT PluckTwo.obj -MD -MP -MF $(DEPDIR)/PluckTwo.Tpo -c -o PluckTwo.obj `if test -f '$(NYQUIST)/nyqstk/src/PluckTwo.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/PluckTwo.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/PluckTwo.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/PluckTwo.Tpo $(DEPDIR)/PluckTwo.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/PluckTwo.cpp' object='PluckTwo.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o PluckTwo.obj `if test -f '$(NYQUIST)/nyqstk/src/PluckTwo.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/PluckTwo.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/PluckTwo.cpp'; fi`
+
+Sitar.o: $(NYQUIST)/nyqstk/src/Sitar.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Sitar.o -MD -MP -MF $(DEPDIR)/Sitar.Tpo -c -o Sitar.o `test -f '$(NYQUIST)/nyqstk/src/Sitar.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Sitar.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Sitar.Tpo $(DEPDIR)/Sitar.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Sitar.cpp' object='Sitar.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Sitar.o `test -f '$(NYQUIST)/nyqstk/src/Sitar.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Sitar.cpp
+
+Sitar.obj: $(NYQUIST)/nyqstk/src/Sitar.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Sitar.obj -MD -MP -MF $(DEPDIR)/Sitar.Tpo -c -o Sitar.obj `if test -f '$(NYQUIST)/nyqstk/src/Sitar.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Sitar.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Sitar.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Sitar.Tpo $(DEPDIR)/Sitar.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Sitar.cpp' object='Sitar.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Sitar.obj `if test -f '$(NYQUIST)/nyqstk/src/Sitar.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Sitar.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Sitar.cpp'; fi`
+
+ModalBar.o: $(NYQUIST)/nyqstk/src/ModalBar.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT ModalBar.o -MD -MP -MF $(DEPDIR)/ModalBar.Tpo -c -o ModalBar.o `test -f '$(NYQUIST)/nyqstk/src/ModalBar.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/ModalBar.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/ModalBar.Tpo $(DEPDIR)/ModalBar.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/ModalBar.cpp' object='ModalBar.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o ModalBar.o `test -f '$(NYQUIST)/nyqstk/src/ModalBar.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/ModalBar.cpp
+
+ModalBar.obj: $(NYQUIST)/nyqstk/src/ModalBar.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT ModalBar.obj -MD -MP -MF $(DEPDIR)/ModalBar.Tpo -c -o ModalBar.obj `if test -f '$(NYQUIST)/nyqstk/src/ModalBar.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/ModalBar.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/ModalBar.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/ModalBar.Tpo $(DEPDIR)/ModalBar.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/ModalBar.cpp' object='ModalBar.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o ModalBar.obj `if test -f '$(NYQUIST)/nyqstk/src/ModalBar.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/ModalBar.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/ModalBar.cpp'; fi`
+
+Modal.o: $(NYQUIST)/nyqstk/src/Modal.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Modal.o -MD -MP -MF $(DEPDIR)/Modal.Tpo -c -o Modal.o `test -f '$(NYQUIST)/nyqstk/src/Modal.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Modal.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Modal.Tpo $(DEPDIR)/Modal.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Modal.cpp' object='Modal.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Modal.o `test -f '$(NYQUIST)/nyqstk/src/Modal.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Modal.cpp
+
+Modal.obj: $(NYQUIST)/nyqstk/src/Modal.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Modal.obj -MD -MP -MF $(DEPDIR)/Modal.Tpo -c -o Modal.obj `if test -f '$(NYQUIST)/nyqstk/src/Modal.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Modal.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Modal.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Modal.Tpo $(DEPDIR)/Modal.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Modal.cpp' object='Modal.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Modal.obj `if test -f '$(NYQUIST)/nyqstk/src/Modal.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Modal.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Modal.cpp'; fi`
+
+Flute.o: $(NYQUIST)/nyqstk/src/Flute.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Flute.o -MD -MP -MF $(DEPDIR)/Flute.Tpo -c -o Flute.o `test -f '$(NYQUIST)/nyqstk/src/Flute.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Flute.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Flute.Tpo $(DEPDIR)/Flute.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Flute.cpp' object='Flute.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Flute.o `test -f '$(NYQUIST)/nyqstk/src/Flute.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/Flute.cpp
+
+Flute.obj: $(NYQUIST)/nyqstk/src/Flute.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Flute.obj -MD -MP -MF $(DEPDIR)/Flute.Tpo -c -o Flute.obj `if test -f '$(NYQUIST)/nyqstk/src/Flute.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Flute.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Flute.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/Flute.Tpo $(DEPDIR)/Flute.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/Flute.cpp' object='Flute.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Flute.obj `if test -f '$(NYQUIST)/nyqstk/src/Flute.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/Flute.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/Flute.cpp'; fi`
+
+JetTable.o: $(NYQUIST)/nyqstk/src/JetTable.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT JetTable.o -MD -MP -MF $(DEPDIR)/JetTable.Tpo -c -o JetTable.o `test -f '$(NYQUIST)/nyqstk/src/JetTable.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/JetTable.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/JetTable.Tpo $(DEPDIR)/JetTable.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/JetTable.cpp' object='JetTable.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o JetTable.o `test -f '$(NYQUIST)/nyqstk/src/JetTable.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/JetTable.cpp
+
+JetTable.obj: $(NYQUIST)/nyqstk/src/JetTable.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT JetTable.obj -MD -MP -MF $(DEPDIR)/JetTable.Tpo -c -o JetTable.obj `if test -f '$(NYQUIST)/nyqstk/src/JetTable.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/JetTable.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/JetTable.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/JetTable.Tpo $(DEPDIR)/JetTable.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/JetTable.cpp' object='JetTable.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o JetTable.obj `if test -f '$(NYQUIST)/nyqstk/src/JetTable.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/JetTable.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/JetTable.cpp'; fi`
+
+PoleZero.o: $(NYQUIST)/nyqstk/src/PoleZero.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT PoleZero.o -MD -MP -MF $(DEPDIR)/PoleZero.Tpo -c -o PoleZero.o `test -f '$(NYQUIST)/nyqstk/src/PoleZero.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/PoleZero.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/PoleZero.Tpo $(DEPDIR)/PoleZero.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/PoleZero.cpp' object='PoleZero.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o PoleZero.o `test -f '$(NYQUIST)/nyqstk/src/PoleZero.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/src/PoleZero.cpp
+
+PoleZero.obj: $(NYQUIST)/nyqstk/src/PoleZero.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT PoleZero.obj -MD -MP -MF $(DEPDIR)/PoleZero.Tpo -c -o PoleZero.obj `if test -f '$(NYQUIST)/nyqstk/src/PoleZero.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/PoleZero.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/PoleZero.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/PoleZero.Tpo $(DEPDIR)/PoleZero.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/src/PoleZero.cpp' object='PoleZero.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o PoleZero.obj `if test -f '$(NYQUIST)/nyqstk/src/PoleZero.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/src/PoleZero.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/src/PoleZero.cpp'; fi`
+
+stkinit.o: $(NYQUIST)/nyqstk/stkinit.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT stkinit.o -MD -MP -MF $(DEPDIR)/stkinit.Tpo -c -o stkinit.o `test -f '$(NYQUIST)/nyqstk/stkinit.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/stkinit.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/stkinit.Tpo $(DEPDIR)/stkinit.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/stkinit.cpp' object='stkinit.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o stkinit.o `test -f '$(NYQUIST)/nyqstk/stkinit.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/stkinit.cpp
+
+stkinit.obj: $(NYQUIST)/nyqstk/stkinit.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT stkinit.obj -MD -MP -MF $(DEPDIR)/stkinit.Tpo -c -o stkinit.obj `if test -f '$(NYQUIST)/nyqstk/stkinit.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/stkinit.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/stkinit.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/stkinit.Tpo $(DEPDIR)/stkinit.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/stkinit.cpp' object='stkinit.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o stkinit.obj `if test -f '$(NYQUIST)/nyqstk/stkinit.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/stkinit.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/stkinit.cpp'; fi`
+
+instr.o: $(NYQUIST)/nyqstk/instr.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT instr.o -MD -MP -MF $(DEPDIR)/instr.Tpo -c -o instr.o `test -f '$(NYQUIST)/nyqstk/instr.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/instr.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/instr.Tpo $(DEPDIR)/instr.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/instr.cpp' object='instr.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o instr.o `test -f '$(NYQUIST)/nyqstk/instr.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/instr.cpp
+
+instr.obj: $(NYQUIST)/nyqstk/instr.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT instr.obj -MD -MP -MF $(DEPDIR)/instr.Tpo -c -o instr.obj `if test -f '$(NYQUIST)/nyqstk/instr.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/instr.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/instr.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/instr.Tpo $(DEPDIR)/instr.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/instr.cpp' object='instr.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o instr.obj `if test -f '$(NYQUIST)/nyqstk/instr.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/instr.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/instr.cpp'; fi`
+
+stkint.o: $(NYQUIST)/nyqstk/stkint.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT stkint.o -MD -MP -MF $(DEPDIR)/stkint.Tpo -c -o stkint.o `test -f '$(NYQUIST)/nyqstk/stkint.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/stkint.cpp
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/stkint.Tpo $(DEPDIR)/stkint.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/stkint.cpp' object='stkint.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o stkint.o `test -f '$(NYQUIST)/nyqstk/stkint.cpp' || echo '$(srcdir)/'`$(NYQUIST)/nyqstk/stkint.cpp
+
+stkint.obj: $(NYQUIST)/nyqstk/stkint.cpp
+ at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT stkint.obj -MD -MP -MF $(DEPDIR)/stkint.Tpo -c -o stkint.obj `if test -f '$(NYQUIST)/nyqstk/stkint.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/stkint.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/stkint.cpp'; fi`
+ at am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/stkint.Tpo $(DEPDIR)/stkint.Po
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(NYQUIST)/nyqstk/stkint.cpp' object='stkint.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o stkint.obj `if test -f '$(NYQUIST)/nyqstk/stkint.cpp'; then $(CYGPATH_W) '$(NYQUIST)/nyqstk/stkint.cpp'; else $(CYGPATH_W) '$(srcdir)/$(NYQUIST)/nyqstk/stkint.cpp'; fi`
+
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ mkid -fID $$unique
+tags: TAGS
+
+TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$tags $$unique; \
+ fi
+ctags: CTAGS
+CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ test -z "$(CTAGS_ARGS)$$tags$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$tags $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && cd $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) $$here
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+distdir: $(DISTFILES)
+ $(am__remove_distdir)
+ test -d $(distdir) || mkdir $(distdir)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+ fi; \
+ cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+ else \
+ test -f $(distdir)/$$file \
+ || cp -p $$d/$$file $(distdir)/$$file \
+ || exit 1; \
+ fi; \
+ done
+ -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
+ ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
+ ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
+ ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
+ || chmod -R a+r $(distdir)
+dist-gzip: distdir
+ tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
+ $(am__remove_distdir)
+
+dist-bzip2: distdir
+ tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
+ $(am__remove_distdir)
+
+dist-lzma: distdir
+ tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma
+ $(am__remove_distdir)
+
+dist-tarZ: distdir
+ tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
+ $(am__remove_distdir)
+
+dist-shar: distdir
+ shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
+ $(am__remove_distdir)
+
+dist-zip: distdir
+ -rm -f $(distdir).zip
+ zip -rq $(distdir).zip $(distdir)
+ $(am__remove_distdir)
+
+dist dist-all: distdir
+ tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
+ $(am__remove_distdir)
+
+# This target untars the dist file and tries a VPATH configuration. Then
+# it guarantees that the distribution is self-contained by making another
+# tarfile.
+distcheck: dist
+ case '$(DIST_ARCHIVES)' in \
+ *.tar.gz*) \
+ GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\
+ *.tar.bz2*) \
+ bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\
+ *.tar.lzma*) \
+ unlzma -c $(distdir).tar.lzma | $(am__untar) ;;\
+ *.tar.Z*) \
+ uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
+ *.shar.gz*) \
+ GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\
+ *.zip*) \
+ unzip $(distdir).zip ;;\
+ esac
+ chmod -R a-w $(distdir); chmod a+w $(distdir)
+ mkdir $(distdir)/_build
+ mkdir $(distdir)/_inst
+ chmod a-w $(distdir)
+ dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
+ && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
+ && cd $(distdir)/_build \
+ && ../configure --srcdir=.. --prefix="$$dc_install_base" \
+ $(DISTCHECK_CONFIGURE_FLAGS) \
+ && $(MAKE) $(AM_MAKEFLAGS) \
+ && $(MAKE) $(AM_MAKEFLAGS) dvi \
+ && $(MAKE) $(AM_MAKEFLAGS) check \
+ && $(MAKE) $(AM_MAKEFLAGS) install \
+ && $(MAKE) $(AM_MAKEFLAGS) installcheck \
+ && $(MAKE) $(AM_MAKEFLAGS) uninstall \
+ && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
+ distuninstallcheck \
+ && chmod -R a-w "$$dc_install_base" \
+ && ({ \
+ (cd ../.. && umask 077 && mkdir "$$dc_destdir") \
+ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
+ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
+ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
+ distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
+ } || { rm -rf "$$dc_destdir"; exit 1; }) \
+ && rm -rf "$$dc_destdir" \
+ && $(MAKE) $(AM_MAKEFLAGS) dist \
+ && rm -rf $(DIST_ARCHIVES) \
+ && $(MAKE) $(AM_MAKEFLAGS) distcleancheck
+ $(am__remove_distdir)
+ @(echo "$(distdir) archives ready for distribution: "; \
+ list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
+ sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
+distuninstallcheck:
+ @cd $(distuninstallcheck_dir) \
+ && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
+ || { echo "ERROR: files left after uninstall:" ; \
+ if test -n "$(DESTDIR)"; then \
+ echo " (check DESTDIR support)"; \
+ fi ; \
+ $(distuninstallcheck_listfiles) ; \
+ exit 1; } >&2
+distcleancheck: distclean
+ @if test '$(srcdir)' = . ; then \
+ echo "ERROR: distcleancheck can only run from a VPATH build" ; \
+ exit 1 ; \
+ fi
+ @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
+ || { echo "ERROR: files left in build directory after distclean:" ; \
+ $(distcleancheck_listfiles) ; \
+ exit 1; } >&2
+check-am: all-am
+check: check-am
+all-am: Makefile $(LIBRARIES)
+installdirs:
+ for dir in "$(DESTDIR)$(libdir)"; do \
+ test -z "$$dir" || $(MKDIR_P) "$$dir"; \
+ done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+clean: clean-am
+
+clean-am: clean-generic clean-libLIBRARIES mostlyclean-am
+
+distclean: distclean-am
+ -rm -f $(am__CONFIG_DISTCLEAN_FILES)
+ -rm -rf ./$(DEPDIR)
+ -rm -f Makefile
+distclean-am: clean-am distclean-compile distclean-generic \
+ distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-exec-am: install-libLIBRARIES
+
+install-html: install-html-am
+
+install-info: install-info-am
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-ps: install-ps-am
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f $(am__CONFIG_DISTCLEAN_FILES)
+ -rm -rf $(top_srcdir)/autom4te.cache
+ -rm -rf ./$(DEPDIR)
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-compile mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-libLIBRARIES
+
+.MAKE: install-am install-strip
+
+.PHONY: CTAGS GTAGS all all-am am--refresh check check-am clean \
+ clean-generic clean-libLIBRARIES ctags dist dist-all \
+ dist-bzip2 dist-gzip dist-lzma dist-shar dist-tarZ dist-zip \
+ distcheck distclean distclean-compile distclean-generic \
+ distclean-tags distcleancheck distdir distuninstallcheck dvi \
+ dvi-am html html-am info info-am install install-am \
+ install-data install-data-am install-dvi install-dvi-am \
+ install-exec install-exec-am install-html install-html-am \
+ install-info install-info-am install-libLIBRARIES install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-compile mostlyclean-generic pdf pdf-am ps ps-am \
+ tags uninstall uninstall-am uninstall-libLIBRARIES
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/lib-src/libnyquist/README.txt b/lib-src/libnyquist/README.txt
index ef84777..e83f85d 100644
--- a/lib-src/libnyquist/README.txt
+++ b/lib-src/libnyquist/README.txt
@@ -1,8 +1,9 @@
libnyquist
Library code and the "nyx" interface by Dominic Mazzoni.
+Updated to Nyquist version 3.03 by Leland Lucius.
-Based on Nyquist version 2.29 by Roger B. Dannenberg,
+Originally based on Nyquist version 2.29 by Roger B. Dannenberg,
which was based on xlisp 2 by David Michael Betz.
For license information, please see the file LICENSE.txt
@@ -16,173 +17,6 @@ within another application, contact the Audacity developers:
For information about Nyquist as a standalone, interactive audio
programming language, see the Nyquist website:
- http://www.cs.cmu.edu/~rbd/nyquist.html
-
-------------------------------------------------------------
-
-README file for Nyquist Version 2.29
-
-WEB SITE
-====================
-http://www.cs.cmu.edu/~rbd/nyquist.html
-
-INSTALLING NYQUIST
-====================
-Please see Section 1.1, Page 1, of the Nyquist Manual
-
-If you use Windows 95 or Windows NT, this release was
-compiled with Visual C++ 6.0.
-
-For the Macintosh release, there is an executable
-Nyquist program in the runtime directory.
-
-IMPLEMENTATION STATUS
-=====================
-Version 2.29 provides:
- new functions: snd-alpassvc, sndalpassvv, snd-eqbandvvv
- corresponding high-level functions in Nyquist
- new licenses for both Nyquist and XLISP
- new NyqIDE implementation
- fixed BUZZ function
- various bug and documentation fixes
-Version 2.28 provides:
- include indx.html in doc folder (in files.txt)
- fixed compute-default-sound-file in nyquist.lsp to
- compute appropriate extension (.wav, .aif)
- more code to automate win32 releases
-Version 2.27 provides:
- makefile.lsp now generates sndfn.wcl & sndfn.cl
- fix to include snd-pluck and some others omittted from 2.26
-Version 2.26 provides:
- bug fix in sampler, negative frequency handling
- guard against out-of-order events in TIMED-SEQ
- added FMLFO, an lfo with frequency modulation
- added SND-SQRT, S-SQRT, SND-ABS, S-ABS functions
- new NyqIDE version with S-PLOT function (!)
- NyqIDE has better parsing for paren balancing
- NyqIDE upgrade to WindowsXP and Delphi 6
- NyqIDE increases input string length maximum
- NyqIDE prompts on save conflict
- added voice-synthesis demo from Eduardo Miranda
- corrected absolute path in demos/pmorales/e2.lsp
- minor documentation and indexing improvements
- pointer to demo docs goes on start menu now
-Version 2.25 provides:
- new way to provide search path: set *SEARCH-PATH* to a string,
- e.g. (SETF *SEARCH-PATH*
- "C:/program files/nyquist/runtime,c:/program files/nyquist/lib")
- allowing Nyquist to be run without setting registry.
-Version 2.24 provides:
- text editing for command lines in Linux version
-Version 2.23 provides:
- bug fix in (current-path) for Mac
- fixes to some Mac sources corrupted in 2.22
-Version 2.22 provides:
- documentation (HTML) included in release now
- bug fix for Mac console output exceeding 32K limit
- protection from playing very high sample rates in Win32
- (crashes in Windows MME library!)
- change s-save to take :endian rather than :swap parameter
- pianosyn.lsp runs on the Mac now
- demos/examples.lsp generates audio with "normal" sample rates
-Version 2.21 provides:
- s-plot uses gnu-plot in Linux
- separation from CVS -- I just couldn't keep beating my head
- against the wall
-Version 2.20 provides:
- improved Macintosh support
-Version 2.19 provides:
- integration of Macintosh code (from v2.12)
- addition of PLUCK and BUZZ synthesis functions
-Version 2.18 provides:
- bug fix in midifile read routine under Linux
-Version 2.17 provides:
- bug fix for long line input under linux and windows
- biquad filters
- hzosc osc-tri osc-saw osc-pulse -- new oscillator variants
- bug fix for reading in non-AIFF files with 'FORM' headings
- extension to s-read to support explicit byte-swap parameter
-Version 2.16 provides:
- bug fix in tables (lookup oscillators and other functions)
- Windows GUI version of Nyquist
-Version 2.15 provides:
- port to Linux
-Version 2.5 provides:
- more signal processing functions
-Version 2.2 provides:
- ports to more systems including Win32 (Win95 and NT)
- bug fixes
- more signal processing functions
- improved sound I/O subsystem
-Version 2.1 provides:
- bug fixes
- documentation and code for user extensions
-Version 2.0 provides:
- continuous time warps
- many more functions
- bug fixes
-
-The distribution may contain sources for Nyquist. If not,
-you got the runtime distribution, and there is a source version
-available.
-
-A number of "source" files are machine generated, including:
-- many .c and .h files that implement signal processing functions.
- These are generated by translation system that converts
- .alg files to .c and .h files. .alg files give high-level
- descriptions of DSP algorithms.
-- Makefile.* is generated by "makefile.lsp".
-
-The status is:
-
-System Status
-
-RS6K = RS6000, AIX untested, but used to work
-NEXT = NeXT 3.0 (Cube) untested, but worked fine on a previous version
-SGI = ??? untested, but used to work
-PMAX = Mach 2.5 on Dec workstation
- untested, but worked in previous version
-SPARC = Sun Sparc ??? untested - previous version of Nyquist DID work
-LINUX = Linux tested
-Win32 tested
-Mac tested
-
-If you have problems running Nyquist on a Unix machine, I'd be happy to
-help. I can give you advice or if you give me an account, I can log in
-remotely and install Nyquist for you. If you make corrections yourself,
-please let me have them so I can put them in the next release.
-
-DIRECTORY STRUCTURE
-===================
-cmt - CMU MIDI Toolkit files, used by Nyquist for MIDI File I/O
-demos - Nyquist demos go here
-fft - some fft functions
-lib - .lsp files offering extensions to Nyquist
-misc - various files and programs used to implement Nyquist
-nyqsrc - general Nyquist source code (mostly in C)
-runtime - the Nyquist and XLisp runtime code (mostly in XLisp)
-sys - system specific files
-snd - the sound file, sound input, and sound output package
-test - test code (this is not maintained and may not be in the release)
-todo - list of things to do (this may not be in the release)
-tran - descriptor (.alg) files for machine-translated Nyquist code
-xlisp - sources for Xlisp (these are linked into Nyquist)
-
-THE RUNTIME ONLY RELEASE
-========================
-The runtime-only release contains everything related to running
-Nyquist, but no source code. The files in this release are:
- Readme.txt (this file)
- nyquist.exe (located in the runtime directory)
- runtime (directory)
- lib (directory)
- demos (directory)
- test (directory)
-
-BUILDING UNDER LINUX
-====================
-in the nyquist directory:
-> ln -s sys/unix/linux/Makefile
-> make
-
+ http://www.cs.cmu.edu/~music/nyquist/
+See nyquist/Readme.txt for latest changes to Nyquist.
diff --git a/lib-src/libnyquist/cmt/cext.c b/lib-src/libnyquist/cmt/cext.c
deleted file mode 100644
index 452e18f..0000000
--- a/lib-src/libnyquist/cmt/cext.c
+++ /dev/null
@@ -1,107 +0,0 @@
-/****************************************************************************
- cext.c
- Copyright 1989 Carnegie Mellon University
-
- August 3, 1987
- Author: Frits Habermann
-----------------------------------------------------------------------------
- 02-May-1988 | JCD : portable & AMIGA version.
- 17-Oct-1988 | JCD : more portability (FREE).
- 28-Apr-2003 | DM : changed includes for portability
-****************************************************************************/
-
-#include "switches.h"
-
-#include <stdio.h>
-#include <stdlib.h>
-
-#include "cext.h"
-#include "userio.h"
-
-#define calc_middle(top, bot) (((top - bot) / 2 ) + bottom )
-
-#define kbyte 1000
-#define outof_mem(blocksize) (blocksize == 0 )
-#define done_search(top, bot, middle) ( (( (top - bot) < kbyte ) && \
-( !toomuch_mem(middle)) ) || \
- ( outof_mem( middle )) )
-
-private boolean toomuch_mem(ushort maximum)
-{
- char *test;
- boolean istoo_much;
- istoo_much = ( (test = (char *) MALLOC(maximum)) == NULL );
- if (test) FREE(test);
- return( istoo_much );
-}
-
-private boolean toolittle_mem(maximum)
-ushort maximum;
-{
- char *test;
- boolean istoo_little;
- istoo_little = !( (test = (char *) MALLOC(maximum)) == NULL );
- if (test) FREE( test );
- return(istoo_little);
-}
-
-private ushort get_biggest_block( maximum )
-ushort maximum;
-{
- ushort maxblock;
- ushort top = maximum;
- ushort bottom = 0;
- if (!toomuch_mem(maximum)) return(maximum); /* If there's enough memory */
- else {
- gprintf(ERROR, "Running out of memory...\n");
- maxblock = calc_middle( top, bottom );
- while( !done_search(top, bottom, maxblock) ) {
- if( toomuch_mem(maxblock) ) {
- top = maxblock;
- maxblock = calc_middle(top,bottom);
- }
- else if (toolittle_mem(maxblock)) {
- bottom = maxblock;
- maxblock = calc_middle(top,bottom);
- }
- }
- }
- return( maxblock );
-}
-
-public ulong MyMaxMem(ushort *growbytes)
-{
- ulong x;
- if( growbytes != NULL ) *growbytes = 0;
- x=( (ulong)get_biggest_block((ushort)BIGGEST_BLOCK));
-/* gprintf(TRANS,"cext: MyMaxMem %ld\n",x); */
- return x;
-}
-
-/* note: EXIT is defined to be cmt_exit */
-
-void cmt_exit(n)
- int n;
-{
- cu_cleanup();
-/* For protection, exit is #defined to hide it. Expose it and call it. */
-#undef exit
- exit(n);
-}
-
-
-#ifdef AMIGA
-#ifdef LATTICE
-/* for some reason, these don't seem to be defined
- anywhere in the standard libraries
- */
-#include "signal.h"
-
-int _FPERR;
-int (*_SIGFPE)(int) = SIG_DFL;
-
-int _oserr;
-
-#endif
-#endif
-
diff --git a/lib-src/libnyquist/cmt/cext.h b/lib-src/libnyquist/cmt/cext.h
deleted file mode 100644
index 59e2f65..0000000
--- a/lib-src/libnyquist/cmt/cext.h
+++ /dev/null
@@ -1,189 +0,0 @@
-/******************************************************************
-* modified JCD 27 Apr-88 for AMIGA
-* cext.h -- extensions to c to make it more portable
-* Copyright 1989 Carnegie Mellon University
-*
-*******************************************************************
-
-cext must provide the following definitions:
-
-true -- a constant
-false -- a boolean constant
-private -- defined as static, used to declare local functions
-public -- defined as empty string, used to declare exported functions
-boolean -- a new type
-byte -- unsigned 8-bit quantity
-ushort -- unsigned 16-bit quantity
-ulong -- unsigned 32-bit quantity
-Pointer -- pointer to char, a generic pointer
-ABS() -- absolute value of any type of number
-MAX() -- maximum of two numbers
-MIN() -- minimum of two numbers
-ROUND() -- round a double to long
-
-NULL -- pointer to nothing, a constant
-EOS -- end of string, a constant '\0'
-MALLOC(x) -- allocates x bytes
-FREE(x) -- frees something from MALLOC
-AVAILMEM -- tells how much memory is available.
- (N.B.: no parens, no args.)
-EXIT(n) -- calls exit(n) after shutting down/deallocating resources
-
-*****************************************************************************/
-
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm many changes for new conditional compilation switches
- * 28Apr03 rbd removed macro redefinitions: min, max
- */
-
-#ifndef CEXT_H
-#ifndef SWITCHES
-#include "switches.h"
-#endif
-
-#include <stdio.h>
-#include <string.h>
-#include <math.h>
-
-#if HAS_STDLIB_H
-#include <stdlib.h>
-#endif
-
-#if HAS_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-
-#if HAS_MALLOC_H
-#include <malloc.h>
-#endif
-
-#if NEED_ULONG
-typedef unsigned long ulong;
-#endif
-
-#if NEED_USHORT
-typedef unsigned long ushort;
-#endif
-
-#if NEED_BYTE
-typedef unsigned char byte;
-#endif
-
-/* There's a name conflict between true/false as an enum type in
- * Apple #includes:Types.h on the Mac, and true/false as #defined below
- */
-#ifndef TRUE
-#define TRUE 1
-#endif
-
-#ifndef FALSE
-#define FALSE 0
-#endif
-
-#define private static
-#define public
-
-#if NEED_DEFINE_MALLOC
-public void *malloc();
-#endif
-
-typedef char *Pointer;
-
-#ifdef UNIX_MACH
-typedef int boolean;
-#else
-/* hopefully, unsigned short will save sign extension instructions */
-typedef unsigned char boolean;
-#endif
-
-#ifndef ABS
-#define ABS(a) (((a) > 0) ? (a) : -(a))
-#endif
-#ifndef MAX
-#define MAX(a, b) (((a) > (b)) ? (a) : (b))
-#endif
-#ifndef MIN
-#define MIN(a, b) (((a) < (b)) ? (a) : (b))
-#endif
-
-#define MAXULONG 0xffffffff
-
-#ifndef NULL
-#define NULL 0L
-#endif
-
-#ifndef EOS
-#define EOS '\0'
-#endif
-
-#define SAFETYBUF 10 /* Safety buffer when allocating memory */
-#define BIGGEST_BLOCK 32765 /* Should find a happy medium for this */
-
-#ifdef MACINTOSH /*DMH: gets AVAILMEM in record.c*/
-#include <stddef.h>
-#define MALLOC(x) malloc((size_t)(x)) /*DMH: size_t is ulong, for MAC*/
-#define FREE(x) free((char *)(x))
-#define AVAILMEM MyMaxMem(NULL)/*???*/
-#endif
-
-#ifdef LATTICE322
-#define MALLOC malloc
-#define FREE free
-#define AVAILMEM MyMaxMem(NULL)
-
-#else
-
-#ifdef DOS /* was MICROSOFT */
-#define MALLOC malloc
-#define FREE free
-#define AVAILMEM MyMaxMem(NULL)
-#endif
-#endif
-
-#ifdef UNIX
-#define MALLOC malloc
-#define FREE free
-#define AVAILMEM 10000000 /* since we have virtual memory, assume 10Mb */
-#endif
-
-#ifdef AMIGA
-#define MALLOC malloc
-#define FREE free
-#define AVAILMEM 128000
-#endif
-
-public ulong MyMaxMem(ushort *);
-
-#ifndef MEM
-#include "mem.h"
-#endif
-
-#ifndef CLEANUP
-#include "cleanup.h"
-#endif
-
-#ifdef CMTSTUFF
-#define EXIT cmt_exit
-public void EXIT(int);
-/* don't allow anyone to call exit directly */
-#define exit(n) PLEASE_CALL_EXIT_NOT_exit
-#else
-#define EXIT(n) exit(n)
-#endif
-
-#define _cext
-
-#ifndef MALLOC
-MALLOC is not defined!
-#endif
-
-#define ROUND(x) ((long) ((x) + 0.5))
-
-/* for compatibility */
-#ifdef NEED_ROUND
-#define round ROUND
-#endif
-
-#define CEXT_H
-#endif
diff --git a/lib-src/libnyquist/cmt/cleanup.c b/lib-src/libnyquist/cmt/cleanup.c
deleted file mode 100644
index a0797d9..0000000
--- a/lib-src/libnyquist/cmt/cleanup.c
+++ /dev/null
@@ -1,62 +0,0 @@
-/* cleanup.c -- registers work to do upon exit */
-
-#include "stdio.h"
-#include "cext.h"
-
-typedef struct cleanup_struct {
- struct cleanup_struct *next;
- cu_fn_type fn;
- cu_parm_type obj;
-} cleanup_node, *cleanup_type;
-
-cleanup_type cleanup_list = NULL;
-
-/* cu_register -- remember function and arg to call in order to clean up */
-/**/
-void cu_register(cu_fn_type fn, cu_parm_type obj)
-{
- cleanup_type cu = (cleanup_type) memget(sizeof(cleanup_node));
- cu->fn = fn;
- cu->obj = obj;
- cu->next = cleanup_list;
- cleanup_list = cu;
-}
-
-
-/* cu_unregister -- erase memory of obj (should be unique in cleanup list) */
-/**/
-void cu_unregister(obj)
- void *obj;
-{
- cleanup_type *cu = &cleanup_list;
- while (*cu) {
- if ((*cu)->obj == obj) {
- cleanup_type found = *cu;
- *cu = (*cu)->next; /* splice out found */
- memfree((char *) found, sizeof(cleanup_node));
- return;
- }
- cu = &((*cu)->next);
- }
-}
-
-
-/* cu_cleanup -- call the registered functions */
-/**/
-void cu_cleanup()
-{
- while (cleanup_list) {
- cleanup_type cu = cleanup_list;
-#ifdef CU_TRACE
- gprintf(GTRANS, "cu_cleanup: node %lx fn %lx obj %lx\n",
- cu, cu->fn, cu->obj);
-#endif
- cu->fn(cu->obj);
- cleanup_list = cu->next;
- memfree((char *) cu, sizeof(cleanup_node));
- }
-#ifdef CU_TRACE
- gprintf(GTRANS, "cu_cleanup done.\n");
- fflush(stdout);
-#endif
-}
diff --git a/lib-src/libnyquist/cmt/cleanup.h b/lib-src/libnyquist/cmt/cleanup.h
deleted file mode 100644
index 62aaf6f..0000000
--- a/lib-src/libnyquist/cmt/cleanup.h
+++ /dev/null
@@ -1,9 +0,0 @@
-/* cleanup.c -- registers work to do upon exit */
-
-typedef void *cu_parm_type;
-typedef void (*cu_fn_type)(cu_parm_type);
-void cu_register(cu_fn_type fn, cu_parm_type obj);
-void cu_unregister(void *obj);
-void cu_cleanup(void);
-
-#define CLEANUP
diff --git a/lib-src/libnyquist/cmt/cmdline.c b/lib-src/libnyquist/cmt/cmdline.c
deleted file mode 100644
index 0f1d958..0000000
--- a/lib-src/libnyquist/cmt/cmdline.c
+++ /dev/null
@@ -1,478 +0,0 @@
-/* cmdline.c -- command line parsing routines */
-/* Copyright 1989 Carnegie Mellon University */
-/*
- * This module is designed to allow various modules to scan (and rescan)
- * the command line for applicable arguments. The goal is to hide as
- * much information about switches and their names as possible so that
- * switches become more consistent across applications and so that the
- * author of an application need not do a lot of work to provide numerous
- * options. Instead, each module scans the command line for its own
- * arguments.
- *
- * Command lines are of the following form:
- * command -s1 -s2 opt2 -s3 arg1 arg2 -s4 opt4 arg3
- * Note that there are three kinds of command line parameters:
- * (1) A Switch is a "-" followed by a name, e.g. "-s1"
- * (2) An Option is a Switch followed by a space and name, e.g. "-s2 opt2"
- * (3) An Argument is a name by itself, e.g. "arg1"
- * Note also that a switch followed by an argument looks just like an
- * option, so a list of valid option names is necessary to disambiguate.
- *
- * Long names are good for readability, but single character abbreviations
- * are nice for experienced users. cmdline.c allows single character
- * abbreviations provided that they are unambiguous. These are
- * recognized with no extra work by the programmer. If an
- * isolated '?' is encountered in the command line, then all of
- * the options and switches are printed as help and for debugging.
- *
- * Given that we must tell this module about option names and switch
- * names, how should we do it? We can't wait until modules are
- * initialized, since often modules want to read the command line
- * at initialization time. In the original implementation, the
- * main program was supposed to provide names for the whole program,
- * but this violates modularity: when an option is added to a module,
- * the main program has to be modified too. This is a real pain when
- * different machines support different options and you want to have
- * a single machine-independent main program. The solution is to
- * have the main program import strings describing the options and
- * switches used by each module. These are passed into cmdline.c
- * before initialization of other modules is begun.
- *
- * A main program that uses cmdline.c should do the following:
- * call cl_syntax(s) for each module's option/switch string.
- * The string s should have the following format:
- * "opt1<o>description;opt2<o>description;...;switch1<s>description;..."
- * where opt1 and opt2 are option names (without the preceding "-"), and
- * switch1 is a switch name. The <o> and <s> indicate whether the
- * name is an option or a switch. The descriptions are arbitrary strings
- * (without semicolons) that are printed out for the user when "?"
- * is typed on the command line.
- *
- * After calling cl_syntax, main() should call
- * cl_init(argv, argc)
- * cl_init will report an error (to stderr) if it finds any illegal
- * switch or option names in argv, and help will be printed if "?"
- * is found in argv. If cl_init returns false, then the user has been
- * given an error message or help, and main should probably exit.
- *
- * Afterward, switches, options, and arguments can be accessed by
- * calling cl_switch, cl_option, and cl_arg. If cl_switch or cl_option
- * is called with a switch name that was not mentioned in the call to
- * cl_init, an error will result. This indicates that the application
- * author omitted a valid switch or option name when calling cl_init.
- * This is an error because the full set of names is needed for error
- * checking and to distinguish arguments from options.
- *
- */
-
-/*****************************************************************************
-* Change Log
-* Date | Change
-*-----------+-----------------------------------------------------------------
-* 13-Jun-86 | Created Change Log
-* 6-Aug-86 | Modified for Lattice 3.0 -- use "void" to type some routines
-* 20-Sep-89 | Redesigned the interface, adding cl_syntax call.
-* 2-Apr-91 | JDW : further changes
-* 27-Dec-93 | "@file" as first arg reads command line args from file
-* 11-Mar-94 | PLu: Add private to cl_search() definition.
-* 28-Apr-03 | DM: true->TRUE, false->FALSE
-*****************************************************************************/
-
-/* stdlib.h not on PMAX */
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "stdio.h"
-#include "cext.h"
-#include "userio.h"
-#include "cmdline.h"
-#include "ctype.h"
-#include "string.h"
-
-#define syntax_max 10 /* allow for 10 syntax strings */
-private char *syntax[syntax_max];
-private int n_syntax = 0; /* number of strings so far */
-private char **argv; /* command line argument vector */
-private int argc; /* length of argv */
-
-private boolean cl_rdy = FALSE; /* set to TRUE when initialized */
-
-#define cl_OPT 1
-#define cl_SW 2
-#define cl_INIT 3
-#define cl_ARG 4
-
-/*****************************************************************************
-* Routines local to this module
-*****************************************************************************/
-private char *cl_search();
-private int find_string();
-private void indirect_command(char *filename, char *oldarg0);
-private void ready_check();
-
-/****************************************************************
-* cl_arg
-* Inputs:
-* n: the index of the arg needed
-* Results:
-* pointer to the nth arg, or NULL if none exists
-* arg 0 is the command name
-*****************************************************************/
-
-char *cl_arg(n)
- int n;
-{
- return (n <= 0 ? argv[0] :
- cl_search((char *)NULL, cl_ARG, n));
-}
-
-/* cl_help -- print help from syntax strings */
-/**/
-void cl_help()
-{
- register int i, j;
- int count = 0; /* see if there are any switches or flags */
-
- for (i = 0; i < n_syntax; i++) {
- register char *ptr = syntax[i];
- register char c = *ptr++;
- while (c != EOS) {
- while (c != EOS && !(isalnum(c))) c = *ptr++;
- if (c != EOS) {
- count++;
- gprintf(TRANS, "-");
- j = 1;
- while (c != EOS && c != '<') {
- gprintf(TRANS, "%c", c);
- c = *ptr++;
- j++;
- }
- if (c != EOS) {
- c = *ptr++;
- if (c == 'o') {
- gprintf(TRANS, " xxx");
- j += 4;
- }
- }
- /* attempt to tab */
- do {
- gprintf(TRANS, " ");
- } while (j++ < 16);
- while (c != EOS && c != '>') c = *ptr++;
- if (c != EOS) c = *ptr++;
- while (c != EOS && c != ';') {
- gprintf(TRANS, "%c", c);
- c = *ptr++;
- }
- gprintf(TRANS, "\n");
- }
- }
- }
- if (!count) gprintf(TRANS, "No switches or options exist.\n");
-}
-
-/*****************************************************************************
-* cl_init
-* Inputs:
-* char *switches[]: array of switch names
-* int nsw: number of switch names
-* char *options[]: array of option names
-* int nopt: number of option names
-* char *av: array of command line fields (argv)
-* int ac: number of command line fields (argc)
-* Effect:
-* Checks that all command line entries are valid.
-* Saves info for use by other routines.
-* Returns:
-* TRUE if syntax checks OK, otherwise false
-*****************************************************************************/
-
-boolean cl_init(av, ac)
- char *av[];
- int ac;
-{
- argv = av;
- argc = ac;
-
- /* check for help request */
- if (argc == 2 && strcmp(argv[1], "?") == 0) {
- cl_help();
- return FALSE; /* avoid cl_search which would complain about "?" */
- }
- /* check for indirection */
- if (argc == 2 && *(argv[1]) == '@') {
- /* read new args from file */
- indirect_command(av[1] + 1, av[0]);
- }
- /* check command line syntax: */
- cl_rdy = TRUE;
- return (cl_rdy = (cl_search("true", cl_INIT, 0) != NULL));
-}
-
-
-/****************************************************************
-* cl_int_option
-* Inputs:
-* char *name: name of option
-* long default: default value for option
-* Result:
-* returns long encoding of the option, deflt if none
-* Implementation:
-* call cl_option and sscanf result
-*****************************************************************/
-
-long cl_int_option(name, deflt)
- char *name;
- long deflt;
-{
- char *opt = cl_option(name);
- if (opt) {
- if (sscanf(opt, "%ld", &deflt) != 1) {
- gprintf(TRANS, "Warning: option %s %s not an integer, ignored\n",
- name, opt);
- }
- }
- return deflt;
-}
-
-
-/****************************************************************
-* cl_search
-* Inputs:
-* char *name: name of field, must be non-null if opt_sw == cl_INIT
-* int opt_sw: option, switch, init, or arg
-* int n: argument number (if opt_sw is cl_ARG)
-* Result:
-* returns pointer to option value/switch if one exists, otherwise null
-* Implementation:
-* parse the command line until name or arg is found
-* see if the option is followed by a string that does
-* not start with "-"
-*****************************************************************/
-
-private char *cl_search(name, opt_sw, n)
- char *name;
- int opt_sw;
- int n; /* if opt_sw is cl_ARG, n > 0 tells which one */
-{
- register int i = 1; /* index into command line */
- boolean abbr;
- boolean result = TRUE;
-
- ready_check();
-
- /* parse command line: */
- while (i < argc) {
- register char *arg = argv[i];
- /* arguments that start with '-' should be quoted and quotes must
- be removed by the application
- */
- if (*arg == '-') {
- int arg_type = find_string(arg + 1, &abbr);
- if (arg_type == cl_OPT) {
- i += 1; /* skip name and option */
- /* don't look for '-' because the option might be a
- * negative number
- */
- if (i >= argc /* || *arg == '-' */) {
- if (opt_sw == cl_INIT) {
- gprintf(ERROR, "missing argument after %s\n", arg);
- result = FALSE;
- }
- } else if (opt_sw == cl_OPT &&
- (strcmp(arg + 1, name) == 0 ||
- (abbr && *(arg + 1) == name[0]))) {
- return argv[i];
- }
- } else if (arg_type == cl_SW) {
- if (opt_sw == cl_SW &&
- (strcmp(arg + 1, name) == 0 ||
- (abbr && *(arg + 1) == name[0])))
- return arg;
- } else if (opt_sw == cl_INIT) {
- gprintf(ERROR, "invalid switch: %s\n", arg);
- result = FALSE;
- }
- } else if (opt_sw == cl_ARG) {
- if (n == 1) return arg;
- n--;
- }
- i++; /* skip to next field */
- }
- if (opt_sw == cl_INIT) {
- /* return name or NULL to represent TRUE or FALSE */
- return (result ? name : NULL);
- }
- return NULL;
-}
-
-/****************************************************************
-* cl_option
-* Inputs:
-* char *name: option name
-* Outputs:
-* returns char *: the option string if found, otherwise null
-****************************************************************/
-
-char *cl_option(name)
-char *name;
-{
- return cl_search(name, cl_OPT, 0);
-}
-
-/****************************************************************
-* cl_switch
-* Inputs:
-* char *name: switch name
-* Outputs:
-* boolean: TRUE if switch found
-****************************************************************/
-
-boolean cl_switch(name)
-char *name;
-{
- return (boolean)(cl_search(name, cl_SW, 0) != NULL);
-}
-
-/* cl_syntax -- install a string specifying options and switches */
-/**/
-boolean cl_syntax(char *s)
-{
- if (n_syntax < syntax_max) {
- syntax[n_syntax++] = s;
- return TRUE;
- } else {
- gprintf(ERROR, "cl_syntax: out of room\n");
- return FALSE;
- }
-}
-
-/****************************************************************
-* find_string
-* Inputs:
-* char *s: string to find, terminated by any non-alphanumeric
-* boolean *abbr: set TRUE if s is an abbreviation, otherwise false
-* Effect:
-* Looks for s in syntax strings
-* Returns:
-* 0 = FALSE = not found, 1 = cl_OPT = option, 2 = cl_SW = switch
-*****************************************************************/
-
-private int find_string(s, abbr)
- char *s;
- boolean *abbr;
-{
- int found_it = FALSE;
- int i;
- *abbr = FALSE;
- for (i = 0; i < n_syntax; i++) { /* loop through strings */
- register char *syntax_ptr = syntax[i];
- while (*syntax_ptr != EOS) {
- register char *s_ptr = s;
- while (*syntax_ptr != EOS &&
- !(isalnum(*syntax_ptr))) syntax_ptr++;
- while (*s_ptr != EOS && (*s_ptr++ == *syntax_ptr))
- syntax_ptr++; /* only increment if there's a match */
- if (!(isalnum(*s_ptr)) && *syntax_ptr == '<') {
- syntax_ptr++; /* advance to the type field */
- if (*syntax_ptr == 's') return cl_SW;
- if (*syntax_ptr != 'o')
- gprintf(ERROR,
- "(internal error) bad cl_syntax string: %s\n",
- syntax[i]);
- return cl_OPT;
- }
- /* no match, so go to next */
- while (*syntax_ptr != ';' && *syntax_ptr != EOS) syntax_ptr++;
- if (*syntax_ptr == ';') syntax_ptr++;
- }
- }
-
- /* no match, maybe there is a single character match */
- if (s[0] == EOS || s[1] != EOS) return FALSE;
-
- for (i = 0; i < n_syntax; i++) { /* loop through strings */
- char *syntax_ptr = syntax[i];
- while (*syntax_ptr != EOS) {
- while (*syntax_ptr != EOS &&
- !(isalnum(*syntax_ptr))) syntax_ptr++;
- if (s[0] == *syntax_ptr) {
- if (found_it) return FALSE; /* ambiguous */
- /* else, find the type */
- while (*syntax_ptr != '<' && *syntax_ptr != EOS)
- syntax_ptr++;
- syntax_ptr++;
- if (*syntax_ptr == 's') found_it = cl_SW;
- else if (*syntax_ptr == 'o') found_it = cl_OPT;
- else return FALSE; /* error in string syntax */
- }
- /* no match, so go to next */
- while (*syntax_ptr != ';' && *syntax_ptr != EOS) syntax_ptr++;
- if (*syntax_ptr == ';') syntax_ptr++;
- }
- }
- if (found_it) *abbr = TRUE;
- return found_it;
-}
-
-
-/* get_arg -- get an argument from a file */
-/**/
-boolean get_arg(file, arg)
- FILE *file;
- char *arg;
-{
- int c;
- while ((c = getc(file)) != EOF && isspace(c)) ;
- if (c == EOF) return FALSE;
- ungetc(c, file);
- while ((c = getc(file)) != EOF && !isspace(c)) {
- *arg++ = c;
- }
- *arg = 0;
- return TRUE;
-}
-
-
-/* indirect_command -- get argv, argc from a file */
-/**/
-private void indirect_command(filename, oldarg0)
- char *filename;
- char *oldarg0;
-{
- FILE *argfile = fopen(filename, "r");
- if (!argfile) {
- argv = (char **) malloc(sizeof(char *));
- argv[0] = oldarg0;
- argc = 1;
- } else {
- int i = 1;
- char arg[100];
- while (get_arg(argfile, arg)) i++;
- fclose(argfile);
- argfile = fopen(filename, "r");
- argv = (char **) malloc(sizeof(char *) * i);
- argv[0] = oldarg0;
- argc = i;
- i = 1;
- while (get_arg(argfile, arg)) {
- argv[i] = (char *) malloc(strlen(arg) + 1);
- strcpy(argv[i], arg);
- i++;
- }
- }
-}
-
-/****************************************************************
-* ready_check
-* Effect:
-* Halt program if cl_rdy is not true.
-*****************************************************************/
-private void ready_check()
-{
- if (!cl_rdy) {
- gprintf(ERROR,
- "Internal error: cl_init was not called, see cmdline.c\n");
- EXIT(1);
- }
-}
diff --git a/lib-src/libnyquist/cmt/cmdline.h b/lib-src/libnyquist/cmt/cmdline.h
deleted file mode 100644
index 06ff4c3..0000000
--- a/lib-src/libnyquist/cmt/cmdline.h
+++ /dev/null
@@ -1,8 +0,0 @@
-/* Copyright 1989 Carnegie Mellon University */
-
-char *cl_arg(int n);
-boolean cl_init(char *av[], int ac);
-long cl_int_option(char *name, long deflt);
-char *cl_option(char *name);
-boolean cl_switch(char *name);
-boolean cl_syntax(char *name);
diff --git a/lib-src/libnyquist/cmt/cmtcmd.c b/lib-src/libnyquist/cmt/cmtcmd.c
deleted file mode 100644
index 2881467..0000000
--- a/lib-src/libnyquist/cmt/cmtcmd.c
+++ /dev/null
@@ -1,53 +0,0 @@
-/* cmtcmd.c -- routines for the moxc side of the command interface */
-
-#include "switches.h"
-#include "stdio.h"
-#ifdef AMIGA
-#include "exec/types.h"
-#include "exec/exec.h"
-#endif
-#include "cmtcmd.h"
-#include "cext.h"
-#include "userio.h"
-#include "string.h"
-
-#define HASHELEM(p) ((p).symbol_name)
-#define HASHVAL 50
-#define HASHENTRIES 50
-#define HASHENTER lookup
-#define HASHNOCOPY
-
-#include "hashrout.h"
-
-void defvar(name, addr)
- char *name;
- int *addr;
-{
- int i = lookup(name);
- HASHENTRY(i).symb_type = var_symb_type;
- HASHENTRY(i).ptr.intptr = addr;
-}
-
-
-void defun(name, addr)
- char *name;
- int (*addr)();
-{
- int i = lookup(name);
- HASHENTRY(i).symb_type = fn_symb_type;
- HASHENTRY(i).ptr.routine = addr;
-}
-
-
-void defvec(name, addr, size)
- char *name;
- int *addr;
- int size;
-{
- int i = lookup(name);
- HASHENTRY(i).symb_type = vec_symb_type;
- HASHENTRY(i).size = size;
- HASHENTRY(i).ptr.intptr = addr;
-}
-
-
diff --git a/lib-src/libnyquist/cmt/cmtcmd.h b/lib-src/libnyquist/cmt/cmtcmd.h
deleted file mode 100644
index 9ad1cac..0000000
--- a/lib-src/libnyquist/cmt/cmtcmd.h
+++ /dev/null
@@ -1,35 +0,0 @@
-/* cmtcmd.h -- header for remote action and variable setting interface */
-
-#define var_symb_type 333
-#define fn_symb_type 555
-#define vec_symb_type 777
-
-#ifdef AMIGA
-struct cmd_msg {
- struct Message msg;
- long symb_type; /* one of var_, fn_, or vec_symb_type */
- char *symbol_name;
- long the_args[8]; /* args for function call. If var_symb_type,
- the_args[0] is the new value. If vec_symb_type,
- the_args[0] is index, the_args[1] is new value. */
-};
-#endif
-
-typedef struct symb_descr {
- char *symbol_name;
- int symb_type;
- int size; /* for array bounds checking */
- union {
- int *intptr;
- int (*routine)();
- } ptr;
-} symb_descr_node;
-
-int lookup(char *s);
-void defvar(char *name, int *addr);
-void defvec(char *name, int *addr, int size);
-typedef int (*defun_type)();
-void defun(char *name, defun_type addr);
-
-#define HASHTYPE symb_descr_node
-#include "hash.h"
diff --git a/lib-src/libnyquist/cmt/cmtio.c b/lib-src/libnyquist/cmt/cmtio.c
deleted file mode 100644
index e6f1ebc..0000000
--- a/lib-src/libnyquist/cmt/cmtio.c
+++ /dev/null
@@ -1,161 +0,0 @@
-/*
- **********************************************************************
- * File io.c
- **********************************************************************
- *
- * Non blocking input routine
- * Works by puttng the terminal in CBREAK mode and using the FIONREAD
- * ioctl call to determine the number of characters in the input queue
- */
-
-#include "stdio.h"
-#include "io.h"
-#include <sys/types.h>
-#include <sys/time.h>
-#include <signal.h>
-#include <sgtty.h>
-#include "cext.h"
-
-int IOinputfd; /* input file descriptor (usually 0) */
-
-int IOnochar; /* Value to be returned by IOgetchar()
- where there is no input to be had */
-
-static struct sgttyb IOoldmodes, IOcurrentmodes;
- /* Initial and current tty modes */
-
-/*
- * IOsetup(inputfd)
- * Args:
- * inputfd - input file descriptor (should be zero for standard input)
- * Returns:
- * 0 - if all goes well
- * -1 - if an ioctl fails (also calls perror)
- * Side Effects:
- * Puts the terminal in CBREAK mode - before process termination
- * IOcleanup() should be called to restore old terminal modes
- * Catch's interrupts (if they are not already being caught) and
- * calls IOcleanup before exiting
- *
- */
-
-#define ERROR(s) return (perror(s), -1)
-
-IOsetup(inputfd)
-{
- static IOdiegracefully();
- int (*interrupt_handler)();
-
- IOinputfd = inputfd;
- IOnochar = NOCHAR;
- if(ioctl(IOinputfd, TIOCGETP, &IOoldmodes) < 0)
- ERROR("IOsetup");
-
- IOcurrentmodes = IOoldmodes;
- IOcurrentmodes.sg_flags |= CBREAK;
- IOcurrentmodes.sg_flags &= ~ECHO;
- if(ioctl(IOinputfd, TIOCSETP, &IOcurrentmodes))
- ERROR("IOsetup-2");
-
- if( (interrupt_handler = signal(SIGINT, IOdiegracefully)) != 0)
- signal(SIGINT, interrupt_handler);
- return 0;
-}
-
-static
-IOdiegracefully()
-{
- write(2, "\nBye\n", 5);
- IOcleanup();
- EXIT(2);
-}
-
-/*
- * IOcleanup()
- * Returns:
- * 0 - if all goes well
- * -1 - if an ioctl fails (also calls perror)
- * Side Effects:
- * Restores initial terminal modes
- */
-
-IOcleanup()
-{
- if(ioctl(IOinputfd, TIOCSETP, &IOoldmodes) < 0)
- ERROR("IOclean");
- return 0;
-}
-
-
-/*
- * IOgetchar()
- * Returns:
- * A character off the input queue if there is one,
- * IOnochar if there is no character waiting to be read,
- * -1 if an ioctl fails (shouldn't happen if IOsetup went OK)
- */
-
-#ifndef UNIX_MACH
-
-IOgetchar()
-{
- int n;
- char c;
-
- if(ioctl(IOinputfd, FIONREAD, &n) < 0)
- ERROR("IOgetchar");
- if(n <= 0)
- return IOnochar;
- switch(read(IOinputfd, &c, 1)) {
- case 1:
- return c;
- case 0:
- return EOF;
- default:
- ERROR("IOgetchar-read");
- }
-}
-
-#ifdef IOGETCHAR2
-IOgetchar2()
-{
- int nfds, readfds = 1 << IOinputfd;
- char c;
- static struct timeval zero;
-
- if(IOinputfd < 0 || IOinputfd >= 32) {
- printf("IOgetchar2: bad IOinputfd (%d)%s\n", IOinputfd,
- IOinputfd == -1 ? "Did you call IOsetup(fd)?" : "");
- }
- nfds = select(32, &readfds, 0, 0, &zero);
- if(nfds > 0) {
- switch(read(IOinputfd, &c, 1)) {
- case 0:
- return EOF;
- case 1:
- return c;
- default:
- printf("IOgetchar2: read failed!\n");
- return NOCHAR;
- }
- }
- else if(nfds < 0)
- printf("IOgetchar2: select failed!\n");
- return NOCHAR;
-}
-#endif
-
-/*
- * IOwaitchar()
- * Returns:
- * A character off the input queue. Waits if necessary.
- */
-
-int IOwaitchar()
-{
- char c;
- if (read(IOinputfd, &c, 1) == 1) return c;
- else return EOF;
-}
-
-#endif /* not UNIX_MACH */
diff --git a/lib-src/libnyquist/cmt/cmtio.h b/lib-src/libnyquist/cmt/cmtio.h
deleted file mode 100644
index 3e50ad9..0000000
--- a/lib-src/libnyquist/cmt/cmtio.h
+++ /dev/null
@@ -1,9 +0,0 @@
-#define NOCHAR -2
-
-int IOinputfd;
-int IOnochar;
-
-int IOsetup(int inputfd);
-int IOcleanup(void);
-int IOgetchar(void);
-int IOwaitchar(void);
diff --git a/lib-src/libnyquist/cmt/hash.h b/lib-src/libnyquist/cmt/hash.h
deleted file mode 100644
index 0257cfe..0000000
--- a/lib-src/libnyquist/cmt/hash.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * This file should be included in all files that use
- * the HASHENTRY macro; see hashrout.h for details
- */
-/* Copyright 1989 Carnegie Mellon University */
-
-#ifndef HASHTYPE
-# include "-- HASHTYPE undefined"
-#endif
-
-/*
- * An element really is a HASHTYPE along with a h_next entry,
- * which chains together entries of the same hash value.
- */
-
-typedef struct hashelem {
- HASHTYPE h_elem;
- struct hashelem *h_next;
-} hashelem;
-
-extern hashelem hashfirstchunk[];
-
-#define HASHENTRY(i) (hashfirstchunk[i].h_elem)
diff --git a/lib-src/libnyquist/cmt/hashrout.h b/lib-src/libnyquist/cmt/hashrout.h
deleted file mode 100644
index a566b9f..0000000
--- a/lib-src/libnyquist/cmt/hashrout.h
+++ /dev/null
@@ -1,220 +0,0 @@
-/* hashrout.h -- Rubine's hash table package */
-/* Copyright 1989 Carnegie Mellon University */
-
-/* ChangeLog:
- * 2-jan-85 rbd Added option to count entries: define COUNTER and
- * HASHENTER routine will increment it on new entries
- * 28-Apr-03 DM Explicit declaration of int type for HASHENTER()
- */
-
-/*
- * Generic symbol table functions
- *
- * After writing this code over for a bunch of interpreters
- * I think I know how to do it once and for all, generally
- * enough for most application.
- * There are enough settable parameters to suit anyone, and
- * the defaults usually do something sane.
- *
- * The basic idea is that you have a bunch of symbol table entries
- * that need to be entered or looked up given a character string.
- * Symbol table entries are usually structures, and one element
- * of the structure must be the character string of the key.
- * The structure should be given a type name, and these routines
- * are informed of the type name via
- * #define HASHTYPE type-name-of-symbol-table-entry
- * You must inform the routines how to access the character string
- * given the symbol table entry; for example
- * #define HASHELEM(p) ((p).name)
- * There are two size parameters - the number of different hash
- * values and the number of symbol table entries to allocate at one
- * time. Both default to 256.
- * #define HASHVAL 128
- * #define HASHENTRIES 512
- * The name of the function that performs both entry and lookup is
- * enter(name) - it takes one argument, a character string. The name
- * of the function may be changed via
- * #define HASHENTER new-name-for-enter-routine
- * Note that if there is no entry in the table for name, name is entered
- * automatically. The returned structure will have only the name
- * field filled in; the rest of the fields are guarenteed to be zero
- * so an application can check if this is the first time name was entered.
- * If HASHPOINT is defined, the enter routine returns a pointer to a hash
- * table entry. In the default case, i.e. HASHPOINT undefined, the
- * enter routine returns an integer between zero and HASHENTRIES.
- * The macro HASHENTRY(i) will, given that integer, return the
- * table element (not a pointer to it), so for example,
- * HASHENTRY(enter(x)).name == x.
- * Any file that wishes to use HASHENTRY should have at the top
- * #define HASHTYPE type-name-of-symbol-table-entry
- * #include "hash.h"
- * Note in this case at most HASHENTRIES entries will be allocated
- * before hash table overflow. If HASHPOINT is defined, allocations
- * will take place until memory runs out.
- * By default, hash strings are copied into space obtained from malloc
- * before being placed in new entry. This copying can be supressed
- * by defining HASHNOCOPY.
- * The following is an example of using the hash table stuff.
-
-typedef struct {
- char *n_name;
- int n_value;
-} symbolentry;
-
-#define HASHTYPE symbolentry
-#define HASHELEM(p) ((p).n_name)
-#define HASHENTRIES 1024
-
-#include "hashrout.h"
-
-*/
-
-
-/*
- * OK, now the meat.
- */
-
-#ifndef HASHTYPE
-# include "-- HASHTYPE undefined"
-#endif
-
-#ifndef HASHELEM
-# include "-- HASHELEM undefined"
-#endif
-
-#ifndef HASHVAL
-# define HASHVAL 256
-#endif
-
-#ifndef HASHENTRIES
-# define HASHENTRIES 256
-#endif
-
-#ifndef HASHENTER
-# define HASHENTER enter
-#endif
-
-/*
- * HASHNOCOPY, HASHPOINT are undefined by default
- */
-
-/*
- * get definition of hash elem structure
- */
-
-#ifndef HASHENTRY
-# include "hash.h"
-#endif
-
-/*
- * Table of pointers, indexed by hash values
- */
-
-hashelem *hashtab[HASHVAL];
-
-/*
- * First chunk of elements, pointer to the start,
- * and index for allocation
- */
-
-hashelem hashfirstchunk[HASHENTRIES];
-hashelem *hashchunk = hashfirstchunk;
-int hashindex = 0;
-
-/*
- * stdio.h if we don't have it yet
- */
-
-#ifndef _NFILE
-# include <stdio.h>
-#endif
-
-/*
- * Declare counter if necessary
- */
-
-#ifdef COUNTER
-extern COUNTER;
-#endif
-
-/*
- * The enter routine
- */
-
-#ifdef HASHPOINT
-HASHTYPE *
-#else
-int
-#endif
-HASHENTER (s)
-char *s;
-{
- register int i, hash;
- register hashelem *elem;
-
- /*
- * Compute s's hash value
- * I really should look up some good hash functions, but
- * I haven't bothered.
- */
-
-for(i = 0, hash = 0; s[i] != '\0' && i < 15; i++)
- hash += (i + 1) * s[i];
-hash %= HASHVAL;
-
-/*
- * search for s in the table
- */
-
-for(elem = hashtab[hash]; elem != NULL; elem = elem->h_next)
- if(strcmp(s, HASHELEM((elem->h_elem))) == 0) { /* found it */
-#ifdef HASHPOINT
- return(&elem->h_elem);
-#else
- return(elem - hashfirstchunk);
-#endif
- }
-
-if(hashindex >= HASHENTRIES) {
-#ifdef HASHPOINT
- char *calloc();
-
- hashindex = 0;
- hashchunk = (hashelem *) calloc(HASHENTRIES, sizeof(hashelem));
- if(hashchunk == NULL) {
- gprintf(FATAL, "No mem for hash symbol table\n");
- EXIT(1);
-#ifdef COUNTER
- COUNTER++; /* optional symbol counter */
-#endif
- }
-#else
- gprintf(FATAL, "No hash table space, increase HASHENTRIES\n");
- EXIT(1);
-#endif
-}
-
-/*
- * Splice a new entry into the list and fill in the string field
- */
-
-elem = &hashchunk[hashindex++];
-elem->h_next = hashtab[hash];
-hashtab[hash] = elem;
-
-#ifdef HASHNOCOPY
-HASHELEM((elem->h_elem)) = s;
-#else
-{
- char *strcpy();
- HASHELEM((elem->h_elem)) = memget((strlen(s) + 1));
- strcpy(HASHELEM((elem->h_elem)), s);
-}
-#endif
-
-#ifdef HASHPOINT
-return(&elem->h_elem);
-#else
-return(elem - hashfirstchunk);
-#endif
-}
diff --git a/lib-src/libnyquist/cmt/mem.c b/lib-src/libnyquist/cmt/mem.c
deleted file mode 100644
index 7256188..0000000
--- a/lib-src/libnyquist/cmt/mem.c
+++ /dev/null
@@ -1,91 +0,0 @@
-/* mem.c -- fast memory allocation/deallocation module */
-
-/* Allocate large chunks of memory using malloc. From the chunks,
- allocate memory as needed on long-word boundaries. Memory is
- freed by linking memory onto a freelist. An array of freelists,
- one for each size, is maintained and checked before going to the
- chunck for more memory. The freelist array only holds lists of
- nodes up to a certain size. After that, malloc is used directly.
- */
-/* CHANGE LOG
- ----------------------------------------------------------------------
- 28-Apr-03 | DM : fix #includes for portability
- ----------------------------------------------------------------------
- */
-
-#include "switches.h"
-
-#include <stdio.h>
-#include <stdlib.h>
-
-#include "cext.h"
-#include "userio.h"
-
-/* how many bytes in the largest node managed in mem_free_list array */
-#define MAX_SIZE_FOR_FREELIST 256
-
-long *mem_free_list[MAX_SIZE_FOR_FREELIST/4];
-
-#define MEM_CHUNK_SIZE 4096
-char *mem_chunk;
-long mem_chunk_remaining = 0;
-
-void meminit()
-{
- int i;
- for (i = 0; i < MAX_SIZE_FOR_FREELIST/4; i++) {
- mem_free_list[i] = NULL;
- }
-}
-
-
-void *memget(register size_t size)
-{
- if (size > MAX_SIZE_FOR_FREELIST) {
-/* gprintf(TRANS, "memget calling MALLOC\n"); */
- return MALLOC(size);
- } else {
- long **p = mem_free_list + ((size - 1) >> 2);
- if (*p) {
- register long *result = *p;
- *p = (long *) *result;
-/* gprintf(TRANS, "memget->%lx\n", result); */
- return (char *) result;
- } else if ((size_t) mem_chunk_remaining >= size) {
- register char *result = mem_chunk;
- size = (size + 3) & ~3; /* round up to multiple of 4 */
- mem_chunk += size;
- mem_chunk_remaining -= size;
-/* gprintf(TRANS, "memget->%lx\n", result); */
- return result;
- /* note that we throw away remaining chunk when there isn't enough */
- } else if ((mem_chunk = (char *) MALLOC(MEM_CHUNK_SIZE))) {
- register char *result = mem_chunk;
-/* gprintf(TRANS, "mem_chunk at %lx\n", mem_chunk); */
- size = (size + 3) & ~3; /* round up to multiple of 4 */
- mem_chunk += size;
- mem_chunk_remaining = MEM_CHUNK_SIZE - size;
-/* gprintf(TRANS, "memget->%lx\n", result); */
- return result;
- } else {
- return NULL;
- }
- }
-}
-
-
-void memfree(register void *ptr, register size_t size)
-{
- register long **p = (long **) ptr;
- if (size > MAX_SIZE_FOR_FREELIST) {
- FREE(ptr);
- } else {
- register long **head_ptr = mem_free_list + ((size - 1) >> 2);
- *p = *head_ptr;
- *head_ptr = (long *) p;
- }
-}
-
-
-
-
diff --git a/lib-src/libnyquist/cmt/mem.h b/lib-src/libnyquist/cmt/mem.h
deleted file mode 100644
index ea33ba9..0000000
--- a/lib-src/libnyquist/cmt/mem.h
+++ /dev/null
@@ -1,12 +0,0 @@
-#ifdef AMIGA
-#include "stddef.h"
-#endif
-
-extern long *mem_free_list[];
-
-void *memget(register size_t size);
-void memfree(register void *ptr, register size_t size);
-
-void meminit(void);
-
-#define MEM
diff --git a/lib-src/libnyquist/cmt/mfmidi.h b/lib-src/libnyquist/cmt/mfmidi.h
deleted file mode 100644
index 9621c67..0000000
--- a/lib-src/libnyquist/cmt/mfmidi.h
+++ /dev/null
@@ -1,19 +0,0 @@
-#define NOTEOFF 0x80
-#define NOTEON 0x90
-#define PRESSURE 0xa0
-#define CONTROLLER 0xb0
-#define PITCHBEND 0xe0
-#define PROGRAM 0xc0
-#define CHANPRESSURE 0xd0
-
-/* These are the strings used in keynote to identify Standard MIDI File */
-/* meta text messages. */
-
-#define METATEXT "Text Event"
-#define METACOPYRIGHT "Copyright Notice"
-#define METASEQUENCE "Sequence/Track Name"
-#define METAINSTRUMENT "Instrument Name"
-#define METALYRIC "Lyric"
-#define METAMARKER "Marker"
-#define METACUE "Cue Point"
-#define METAUNRECOGNIZED "Unrecognized"
diff --git a/lib-src/libnyquist/cmt/midibuff.h b/lib-src/libnyquist/cmt/midibuff.h
deleted file mode 100644
index f8dc1c1..0000000
--- a/lib-src/libnyquist/cmt/midibuff.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/* midibuff.h -- defines the size of the midi input buffer */
-
-/* midi input buffer */
-/* WARNING: BUFF_SIZE must be a power of 2 so we can use masking to wrap */
-#define EVENT_COUNT 128
-#define EVENT_SIZE 4
-#define BUFF_SIZE (EVENT_COUNT * EVENT_SIZE)
-#define BUFF_MASK (BUFF_SIZE - 1)
-
-#ifdef WINDOWS
-#define huge
-#endif
-
-extern byte huge *xbuff; /* application-supplied sysex buffer */
-extern long xbufmask; /* mask for circular buffer */
-extern long xbufhead; /* buffer head and tail offsets */
-extern long xbuftail;
-extern int midi_error;
-/* midi input buffer */
-/* data buffer, declared long to get 32-bit alignment: */
-extern long buff[BUFF_SIZE/4];
-extern int buffhead; /* buffer head and tail pointers */
-extern int bufftail;
diff --git a/lib-src/libnyquist/cmt/midicode.h b/lib-src/libnyquist/cmt/midicode.h
deleted file mode 100644
index 26361d3..0000000
--- a/lib-src/libnyquist/cmt/midicode.h
+++ /dev/null
@@ -1,62 +0,0 @@
-/************************************************************************
-*
-* Midi codes
-* Copyright 1989 Carnegie Mellon University
-*
-*************************************************************************
-* Change Log
-* Date | Change
-*-----------+------------------------------------------------------------
-* 11-Mar-94 | PLu : Port to IRI
-************************************************************************/
-
-#define MIDI_DATA(d) (0x7f & (d))
-#define MIDI_CHANNEL(c) (0x0f & ((c) - 1))
-#define MIDI_PORT(c) (((c) - 1) >> 4)
-#define MIDI_PROGRAM(p) MIDI_DATA((p) - 1)
-
-#define MIDI_STATUS_BIT 0x80
-#define MIDI_COMMON 0x70
-#define MIDI_CODE_MASK 0xf0
-#define MIDI_CHN_MASK 0x0f
-#define MIDI_REALTIME 0xf8
-#define MIDI_CHAN_MODE 0xfa
-
-#define MIDI_OFF_NOTE 0x80
-#define MIDI_ON_NOTE 0x90
-#define MIDI_POLY_TOUCH 0xa0
-#define MIDI_CTRL 0xb0
-#define MIDI_CH_PROGRAM 0xc0
-#define MIDI_TOUCH 0xd0
-#define MIDI_BEND 0xe0
-
-#ifdef UNIX_IRIX_MIDIFNS
-#define CMT_MIDI_SYSEX 0xf0
-#define CMT_MIDI_EOX 0xf7
-#else
-#define MIDI_SYSEX 0xf0
-#define MIDI_EOX 0xf7
-#endif
-#define MIDI_Q_FRAME 0xf1
-#define MIDI_SONG_POINTER 0xf2
-#define MIDI_SONG_SELECT 0xf3
-#define MIDI_F4 0xf4
-#define MIDI_F5 0xf5
-#define MIDI_TUNE_REQ 0xf6
-#define MIDI_TIME_CLOCK 0xf8
-#define MIDI_F9 0xf9
-#define MIDI_START 0xfa
-#define MIDI_CONTINUE 0xfb
-#define MIDI_STOP 0xfc
-#define MIDI_FD 0xfd
-#define MIDI_ACTIVE_SENSING 0xfe
-#define MIDI_SYS_RESET 0xff
-
-#define MIDI_LOCAL 0x7a
-#define MIDI_LOCAL_OFF 0x00
-#define MIDI_LOCAL_ON 0x7f
-#define MIDI_ALL_OFF 0x7b
-#define MIDI_OMNI_OFF 0x7c
-#define MIDI_OMNI_ON 0x7d
-#define MIDI_MONO_ON 0x7e
-#define MIDI_POLY_ON 0x7f
diff --git a/lib-src/libnyquist/cmt/midierr.h b/lib-src/libnyquist/cmt/midierr.h
deleted file mode 100644
index d00ce4c..0000000
--- a/lib-src/libnyquist/cmt/midierr.h
+++ /dev/null
@@ -1,17 +0,0 @@
-/* midierr.h -- error codes */
-
-#define NESTERR 1 /* nested interrupts */
-#define BUFFOVFL 2 /* input buffer overflow */
-#define CMDERR 3 /* unknown command from mpu-401 */
-#define TIMEOUTERR 4 /* interface timeout */
-#define MSGERR 5 /* invalid message */
-#define SYSEXOVFL 6 /* sysex buffer overflow */
-#define MEMERR 7 /* internal out of memory */
-#define RECVERR 8 /* receive error or device buffer overflow */
-#define MIDIMGRERR 9 /* error reported by midi manager (Macintosh) */
-
-#define SYSEX_ERR ((1<<RECVERR) | (1<<MEMERR) | (1<<SYSEXOVFL))
-extern short midi_error_flags;
-
-void midi_show_errors(void);
-
diff --git a/lib-src/libnyquist/cmt/midifile.c b/lib-src/libnyquist/cmt/midifile.c
deleted file mode 100644
index 0ec1137..0000000
--- a/lib-src/libnyquist/cmt/midifile.c
+++ /dev/null
@@ -1,618 +0,0 @@
-/*
- * Read a Standard MIDI File. Externally-assigned function pointers are
- * called upon recognizing things in the file. See midifile(3).
- */
-
-/*****************************************************************************
-* Change Log
-* Date | who : Change
-*-----------+-----------------------------------------------------------------
-* 2-Mar-92 | GWL : created changelog; MIDIFILE_ERROR to satisfy compiler
-* 28-Apr-03 | DM : changed #includes and give return types for portability
-*****************************************************************************/
-
-#include "switches.h"
-
-#include <stdio.h>
-#include <stdlib.h>
-
-#include "mfmidi.h"
-#include "midifile.h"
-#include "cext.h"
-#include "userio.h"
-#include "string.h"
-
-#define MIDIFILE_ERROR -1
-
-#ifdef PROTOTYPES
-#define NOARGS void
-#else
-#define NOARGS
-#endif
-
-/* public stuff */
-extern int abort_flag;
-
-/* Functions to be called while processing the MIDI file. */
-void (*Mf_starttrack)(NOARGS) = 0;
-void (*Mf_endtrack)(NOARGS) = 0;
-int (*Mf_getc)(NOARGS) = 0;
-void (*Mf_eot)(NOARGS) = 0;
-#ifdef PROTOTYPES
-void (*Mf_error)(char *) = 0;
-void (*Mf_header)(int,int,int) = 0;
-void (*Mf_on)(int,int,int) = 0;
-void (*Mf_off)(int,int,int) = 0;
-void (*Mf_pressure)(int,int,int) = 0;
-void (*Mf_controller)(int,int,int) = 0;
-void (*Mf_pitchbend)(int,int,int) = 0;
-void (*Mf_program)(int,int) = 0;
-void (*Mf_chanpressure)(int,int) = 0;
-void (*Mf_sysex)(int,char*) = 0;
-void (*Mf_arbitrary)(int,char*) = 0;
-void (*Mf_metamisc)(int,int,char*) = 0;
-void (*Mf_seqnum)(int) = 0;
-void (*Mf_smpte)(int,int,int,int,int) = 0;
-void (*Mf_timesig)(int,int,int,int) = 0;
-void (*Mf_tempo)(int) = 0;
-void (*Mf_keysig)(int,int) = 0;
-void (*Mf_sqspecific)(int,char*) = 0;
-void (*Mf_text)(int,int,char*) = 0;
-#else
-void (*Mf_error)() = 0;
-void (*Mf_header)() = 0;
-void (*Mf_on)() = 0;
-void (*Mf_off)() = 0;
-void (*Mf_pressure)() = 0;
-void (*Mf_controller)() = 0;
-void (*Mf_pitchbend)() = 0;
-void (*Mf_program)() = 0;
-void (*Mf_chanpressure)() = 0;
-void (*Mf_sysex)() = 0;
-void (*Mf_arbitrary)() = 0;
-void (*Mf_metamisc)() = 0;
-void (*Mf_seqnum)() = 0;
-void (*Mf_smpte)() = 0;
-void (*Mf_tempo)() = 0;
-void (*Mf_timesig)() = 0;
-void (*Mf_keysig)() = 0;
-void (*Mf_sqspecific)() = 0;
-void (*Mf_text)() = 0;
-#endif
-
-int Mf_nomerge = 0; /* 1 => continue'ed system exclusives are */
- /* not collapsed. */
-long Mf_currtime = 0L; /* current time in delta-time units */
-int Mf_skipinit = 0; /* 1 if initial garbage should be skipped */
-
-/* private stuff */
-
-static long Mf_toberead = 0L;
-
-static long readvarinum(NOARGS);
-static long read32bit(NOARGS);
-static int read16bit(NOARGS);
-static void msgenlarge(NOARGS);
-static char *msg(NOARGS);
-static int readheader(NOARGS);
-static void readtrack(NOARGS);
-static void sysex(NOARGS), msginit(NOARGS);
-static int egetc(NOARGS);
-static int msgleng(NOARGS);
-
-#ifdef PROTOTYPES
-static int readmt(char*,int);
-static long to32bit(int,int,int,int);
-static int to16bit(int,int);
-static void mferror(char *);
-static void badbyte(int);
-static void metaevent(int);
-static void msgadd(int);
-static void chanmessage(int,int,int);
-#else
-static long to32bit();
-static int to16bit();
-static void mferror();
-static void badbyte();
-static void metaevent();
-static void msgadd();
-static void chanmessage();
-#endif
-
-static int midifile_error;
-
-void
-midifile() /* The only non-static function in this file. */
-{
- int ntrks;
- midifile_error = 0;
-
- if ( Mf_getc == 0 ) {
- mferror("mf.h() called without setting Mf_getc");
- return;
- }
- ntrks = readheader();
- if (midifile_error) return;
- if ( ntrks <= 0 ) {
- mferror("No tracks!");
- /* no need to return since midifile_error is set */
- }
- while ( ntrks-- > 0 && !midifile_error && !check_aborted())
- readtrack();
- if (check_aborted()) {
- mferror("Midifile read aborted\n\
-\tthe rest of your file will be ignored.\n");
- if (abort_flag == BREAK_LEVEL) abort_flag = 0;
- }
-}
-
-static int
-readmt(s,skip) /* read through the "MThd" or "MTrk" header string */
-char *s;
-int skip; /* if 1, we attempt to skip initial garbage. */
-{
- int nread = 0;
- char b[4];
- char buff[32];
- int c;
- char *errmsg = "expecting ";
-
- retry:
- while ( nread<4 ) {
- c = (*Mf_getc)();
- if ( c == EOF ) {
- errmsg = "EOF while expecting ";
- goto err;
- }
- b[nread++] = c;
- }
- /* See if we found the 4 characters we're looking for */
- if ( s[0]==b[0] && s[1]==b[1] && s[2]==b[2] && s[3]==b[3] )
- return(0);
- if ( skip ) {
- /* If we are supposed to skip initial garbage, */
- /* try again with the next character. */
- b[0]=b[1];
- b[1]=b[2];
- b[2]=b[3];
- nread = 3;
- goto retry;
- }
- err:
- (void) strcpy(buff,errmsg);
- (void) strcat(buff,s);
- mferror(buff);
- return(0);
-}
-
-static int
-egetc() /* read a single character and abort on EOF */
-{
- int c = (*Mf_getc)();
-
- if ( c == EOF ) {
- mferror("premature EOF");
- return EOF;
- }
- Mf_toberead--;
- return(c);
-}
-
-static int
-readheader() /* read a header chunk */
-{
- int format, ntrks, division;
-
- if ( readmt("MThd",Mf_skipinit) == EOF )
- return(0);
-
- Mf_toberead = read32bit();
- if (midifile_error) return MIDIFILE_ERROR;
- format = read16bit();
- if (midifile_error) return MIDIFILE_ERROR;
- ntrks = read16bit();
- if (midifile_error) return MIDIFILE_ERROR;
- division = read16bit();
- if (midifile_error) return MIDIFILE_ERROR;
-
- if ( Mf_header )
- (*Mf_header)(format,ntrks,division);
-
- /* flush any extra stuff, in case the length of header is not 6 */
- while ( Mf_toberead > 0 && !midifile_error)
- (void) egetc();
- return(ntrks);
-}
-
-static void
-readtrack() /* read a track chunk */
-{
- /* This array is indexed by the high half of a status byte. It's */
- /* value is either the number of bytes needed (1 or 2) for a channel */
- /* message, or 0 (meaning it's not a channel message). */
- static int chantype[] = {
- 0, 0, 0, 0, 0, 0, 0, 0, /* 0x00 through 0x70 */
- 2, 2, 2, 2, 1, 1, 2, 0 /* 0x80 through 0xf0 */
- };
- long lookfor, lng;
- int c, c1, type;
- int sysexcontinue = 0; /* 1 if last message was an unfinished sysex */
- int running = 0; /* 1 when running status used */
- int status = 0; /* (possibly running) status byte */
- int needed;
-
- if ( readmt("MTrk",0) == EOF )
- return;
-
- Mf_toberead = read32bit();
-
- if (midifile_error) return;
-
- Mf_currtime = 0L;
-
- if ( Mf_starttrack ){
-
- (*Mf_starttrack)();
- }
- while ( Mf_toberead > 0 ) {
-
- Mf_currtime += readvarinum(); /* delta time */
- if (midifile_error) return;
-
- c = egetc(); if (midifile_error) return;
-
- if ( sysexcontinue && c != 0xf7 ) {
- mferror("didn't find expected continuation of a sysex");
- return;
- }
- if ( (c & 0x80) == 0 ) { /* running status? */
- if ( status == 0 ) {
- mferror("unexpected running status");
- return;
- }
- running = 1;
- }
- else {
- status = c;
- running = 0;
- }
-
- needed = chantype[ (status>>4) & 0xf ];
-
- if ( needed ) { /* ie. is it a channel message? */
-
- if ( running )
- c1 = c;
- else {
- c1 = egetc();
- if (midifile_error) return;
- }
- chanmessage( status, c1, (needed>1) ? egetc() : 0 );
- if (midifile_error) return;
- continue;;
- }
-
- switch ( c ) {
-
- case 0xff: /* meta event */
-
- type = egetc();
- if (midifile_error) return;
- /* watch out - Don't combine the next 2 statements */
- lng = readvarinum();
- if (midifile_error) return;
- lookfor = Mf_toberead - lng;
- msginit();
-
- while ( Mf_toberead > lookfor ) {
- char c = egetc();
- if (midifile_error) return;
- msgadd(c);
- }
- metaevent(type);
- break;
-
- case 0xf0: /* start of system exclusive */
-
- /* watch out - Don't combine the next 2 statements */
- lng = readvarinum();
- if (midifile_error) return;
- lookfor = Mf_toberead - lng;
- msginit();
- msgadd(0xf0);
-
- while ( Mf_toberead > lookfor ) {
- c = egetc();
- if (midifile_error) return;
- msgadd(c);
- }
- if ( c==0xf7 || Mf_nomerge==0 )
- sysex();
- else
- sysexcontinue = 1; /* merge into next msg */
- break;
-
- case 0xf7: /* sysex continuation or arbitrary stuff */
-
- /* watch out - Don't combine the next 2 statements */
- lng = readvarinum();
- if (midifile_error) return;
- lookfor = Mf_toberead - lng;
-
- if ( ! sysexcontinue )
- msginit();
-
- while ( Mf_toberead > lookfor ) {
- c = egetc();
- if (midifile_error) return;
- msgadd(c);
- }
- if ( ! sysexcontinue ) {
- if ( Mf_arbitrary )
- (*Mf_arbitrary)(msgleng(),msg());
- }
- else if ( c == 0xf7 ) {
- sysex();
- sysexcontinue = 0;
- }
- break;
- default:
-
- badbyte(c);
-
- break;
- }
- }
- if ( Mf_endtrack )
- (*Mf_endtrack)();
- return;
-}
-
-static void
-badbyte(c)
-int c;
-{
- char buff[32];
-
- (void) sprintf(buff,"unexpected byte: 0x%02x",c);
- mferror(buff);
-}
-
-static void
-metaevent(type)
-{
- int leng = msgleng();
- char *m = msg();
-
- switch ( type ) {
- case 0x00:
- if ( Mf_seqnum )
- (*Mf_seqnum)(to16bit(m[0],m[1]));
- break;
- case 0x01: /* Text event */
- case 0x02: /* Copyright notice */
- case 0x03: /* Sequence/Track name */
- case 0x04: /* Instrument name */
- case 0x05: /* Lyric */
- case 0x06: /* Marker */
- case 0x07: /* Cue point */
- case 0x08:
- case 0x09:
- case 0x0a:
- case 0x0b:
- case 0x0c:
- case 0x0d:
- case 0x0e:
- case 0x0f:
- /* These are all text events */
- if ( Mf_text )
- (*Mf_text)(type,leng,m);
- break;
- case 0x2f: /* End of Track */
- if ( Mf_eot )
- (*Mf_eot)();
- break;
- case 0x51: /* Set tempo */
- if ( Mf_tempo )
- (*Mf_tempo)(to32bit(0,m[0],m[1],m[2]));
- break;
- case 0x54:
- if ( Mf_smpte )
- (*Mf_smpte)(m[0],m[1],m[2],m[3],m[4]);
- break;
- case 0x58:
- if ( Mf_timesig )
- (*Mf_timesig)(m[0],m[1],m[2],m[3]);
- break;
- case 0x59:
- if ( Mf_keysig )
- (*Mf_keysig)(m[0],m[1]);
- break;
- case 0x7f:
- if ( Mf_sqspecific )
- (*Mf_sqspecific)(leng,m);
- break;
- default:
- if ( Mf_metamisc )
- (*Mf_metamisc)(type,leng,m);
- }
-}
-
-static void
-sysex()
-{
- if ( Mf_sysex )
- (*Mf_sysex)(msgleng(),msg());
-}
-
-static void
-chanmessage(status,c1,c2)
-int status;
-int c1, c2;
-{
- int chan = status & 0xf;
-
- switch ( status & 0xf0 ) {
- case NOTEOFF:
- if ( Mf_off )
- (*Mf_off)(chan,c1,c2);
- break;
- case NOTEON:
- if ( Mf_on )
- (*Mf_on)(chan,c1,c2);
- break;
- case PRESSURE:
- if ( Mf_pressure )
- (*Mf_pressure)(chan,c1,c2);
- break;
- case CONTROLLER:
- if ( Mf_controller )
- (*Mf_controller)(chan,c1,c2);
- break;
- case PITCHBEND:
- if ( Mf_pitchbend )
- (*Mf_pitchbend)(chan,c1,c2);
- break;
- case PROGRAM:
- if ( Mf_program )
- (*Mf_program)(chan,c1);
- break;
- case CHANPRESSURE:
- if ( Mf_chanpressure )
- (*Mf_chanpressure)(chan,c1);
- break;
- }
-}
-
-/* readvarinum - read a varying-length number, and return the */
-/* number of characters it took. */
-
-static long
-readvarinum()
-{
- long value;
- int c;
-
- c = egetc();
- if (midifile_error) return 0;
-
- value = (long) c;
- if ( c & 0x80 ) {
- value &= 0x7f;
- do {
- c = egetc();
- if (midifile_error) return 0;
- value = (value << 7) + (c & 0x7f);
- } while (c & 0x80);
- }
- return (value);
-}
-
-static long
-to32bit(c1,c2,c3,c4)
-{
- long value = 0L;
-
- value = (c1 & 0xff);
- value = (value<<8) + (c2 & 0xff);
- value = (value<<8) + (c3 & 0xff);
- value = (value<<8) + (c4 & 0xff);
- return (value);
-}
-
-static int
-to16bit(c1,c2)
-int c1, c2;
-{
- return ((c1 & 0xff ) << 8) + (c2 & 0xff);
-}
-
-static long
-read32bit()
-{
- int c1, c2, c3, c4;
-
- c1 = egetc(); if (midifile_error) return 0;
- c2 = egetc(); if (midifile_error) return 0;
- c3 = egetc(); if (midifile_error) return 0;
- c4 = egetc(); if (midifile_error) return 0;
- return to32bit(c1,c2,c3,c4);
-}
-
-static int
-read16bit()
-{
- int c1, c2;
- c1 = egetc(); if (midifile_error) return 0;
- c2 = egetc(); if (midifile_error) return 0;
- return to16bit(c1,c2);
-}
-
-static void
-mferror(s)
-char *s;
-{
- if ( Mf_error )
- (*Mf_error)(s);
- midifile_error = 1;
-}
-
-/* The code below allows collection of a system exclusive message of */
-/* arbitrary length. The Msgbuff is expanded as necessary. The only */
-/* visible data/routines are msginit(), msgadd(), msg(), msgleng(). */
-
-#define MSGINCREMENT 128
-static char *Msgbuff = 0; /* message buffer */
-static int Msgsize = 0; /* Size of currently allocated Msg */
-static int Msgindex = 0; /* index of next available location in Msg */
-
-static void
-msginit()
-{
- Msgindex = 0;
-}
-
-static char *
-msg()
-{
- return(Msgbuff);
-}
-
-static int
-msgleng()
-{
- return(Msgindex);
-}
-
-static void
-msgadd(c)
-int c;
-{
- /* If necessary, allocate larger message buffer. */
- if ( Msgindex >= Msgsize )
- msgenlarge();
- Msgbuff[Msgindex++] = c;
-}
-
-static void
-msgenlarge()
-{
- char *newmess;
- char *oldmess = Msgbuff;
- int oldleng = Msgsize;
-
- Msgsize += MSGINCREMENT;
- newmess = MALLOC((sizeof(char)*Msgsize) );
-
- /* copy old message into larger new one */
- if ( oldmess != 0 ) {
- register char *p = newmess;
- register char *q = oldmess;
- register char *endq = &oldmess[oldleng];
-
- for ( ; q!=endq ; p++,q++ )
- *p = *q;
- free(oldmess);
- }
- Msgbuff = newmess;
-}
diff --git a/lib-src/libnyquist/cmt/midifile.h b/lib-src/libnyquist/cmt/midifile.h
deleted file mode 100644
index f81f1e1..0000000
--- a/lib-src/libnyquist/cmt/midifile.h
+++ /dev/null
@@ -1,27 +0,0 @@
-extern void midifile();
-extern int (*Mf_getc)();
-extern void (*Mf_header)();
-extern void (*Mf_starttrack)();
-extern void (*Mf_endtrack)();
-extern void (*Mf_on)();
-extern void (*Mf_off)();
-extern void (*Mf_pressure)();
-extern void (*Mf_controller)();
-extern void (*Mf_pitchbend)();
-extern void (*Mf_program)();
-extern void (*Mf_chanpressure)();
-extern void (*Mf_sysex)();
-extern void (*Mf_metamisc)();
-extern void (*Mf_sqspecific)();
-extern void (*Mf_seqnum)();
-extern void (*Mf_text)();
-extern void (*Mf_eot)();
-extern void (*Mf_timesig)();
-extern void (*Mf_smpte)();
-extern void (*Mf_tempo)();
-extern void (*Mf_keysig)();
-extern void (*Mf_arbitrary)();
-extern void (*Mf_error)();
-extern long Mf_currtime;
-extern int Mf_nomerge;
-extern int Mf_skipinit;
diff --git a/lib-src/libnyquist/cmt/midifns.c b/lib-src/libnyquist/cmt/midifns.c
deleted file mode 100644
index 6227090..0000000
--- a/lib-src/libnyquist/cmt/midifns.c
+++ /dev/null
@@ -1,1873 +0,0 @@
-/*****************************************************************************
-* midifns.c
-* Copyright 1989 Carnegie Mellon University
-* Date | Change
-*-----------+-----------------------------------------------------------------
-* 29-Mar-88 | Created from IBM PC version of mpu.c
-* | Added settime()
-* 02-May-88 | AMIGA 2000 version. portable version.
-* 12-Oct-88 | JCD : Exclusive AMIGA Version.
-* 13-Apr-89 | JCD : New portable version.
-* 19-Apr-89 | JCD : Amiga CAMD Version added.
-* 5-Apr-91 | JDW : Further modification
-* 17-Feb-92 | GWL : incorporate JMN's new mpu.c
-* 8-Jun-92 | JDZ : add support for ITC midi interface
-* 16-Dec-92 | RBD : replace JMN's mpu.c with LMS's mpu.c
-* 11-Mar-94 | PLu : port to IRIX
-* 25-Apr-97 | RBD : it looks like SGI changed their interface. I
-* | made it compile again, but MIDI does not work, so
-* | took out calls to actually send/recv MIDI data
-* 28-Apr-03 | DM : Renamed random -> cmtrand, true->TRUE, false->FALSE
-* | Use features rather than system names in #ifdef's
-*****************************************************************************/
-
-#include "switches.h"
-
-#ifdef UNIX
-#include <sys/param.h>
-#ifndef OPEN_MAX
-/* this is here for compiling the UNIX version under AIX. This is a BSDism */
-#define OPEN_MAX 2000
-#endif /* OPEN_MAX */
-#endif /* UNIX */
-
-#ifdef UNIX_MACH
-#include "machmidi.h"
-#endif
-
-
-#ifdef AMIGA
-#ifdef AZTEC
-#include "functions.h"
-#endif /* AZTEC */
-#include "midi/camd.h"
-#include "clib/camd_protos.h"
-/* note: azt_camd_pragmas.h was produced by running MAPFD on the
- * lib/camd_lib.fd file included in the CAMD disk from Commodore.
- * The "CamdClient" calls are manually removed from
- */
-#ifdef AZTEC
-#include "pragmas/azt_camd_pragmas.h"
-#else /* !AZTEC */
-#include "pragmas/lat_camd_pragmas.h"
-#endif /* AZTEC */
-#include "camdmidi.h"
-#include "ctype.h"
-#endif /* AMIGA */
-
-#ifdef UNIX_IRIX
-/* #define UNIX_IRIX_MIDIFNS -- this would enable actual midi I/O
- * if the actual midi I/O code worked
- */
-/* IRIX changed the MIDI interface,
- * retain this for older systems:
- */
-#ifdef UNIX_IRIX_MIDIFNS
-#include <dmedia/midi.h>
-#endif
-#endif
-
-#include "stdio.h"
-#include "cext.h"
-#include "midicode.h"
-#include "cmdline.h"
-#include "pitch.h"
-#include "midifns.h"
-#include "userio.h"
-#ifdef MACINTOSH_OR_DOS
-#ifndef WINDOWS
-#include "midibuff.h"
-#endif
-#endif
-
-#ifdef UNIX_ITC /* was ITC */
-#include "sys/param.h"
-/* since boolean is defined, block its definition in midistruct.h.
- * CMT defines boolean as ushort, but midistruct.h uses int.
- * This is not a problem on RS/6000s, but beware!
- */
-/* the following would be included if we had the BSD switch set. I think
- we should try to avoid BSDisms; when fixed, the following should be
- removed
- */
-#define NBBY 8
-#include "sys/select.h" /* defines fd_set */
-#define MIDI_HAS_BOOLEAN
-#include "midistruct.h"
-#include "cmtio.h"
-#endif /* UNIX_ITC */
-
-#ifdef DOS
-#ifndef WINDOWS
-#include "timer.h"
-#include "mpu.h"
-#endif /* ifndef WINDOWS */
-#endif /* ifdef DOS */
-
-#ifndef BREAKTEST
-#define BREAKTEST
-#endif
-
-#ifdef UNIX
-#ifndef UNIX_IRIX
-#include "sys/time.h"
-#include "sys/timeb.h"
-#include "cmtio.h"
-#else
-#include <sys/types.h>
-#include <sys/time.h>
-#include <errno.h>
-
-#ifdef UNIX_IRIX_MIDIFNS
-#include <midi.h>
-#include <midiio.h>
-#endif /* UNIX_IRIX_MIDIFNS */
-#endif /* UNIX_IRIX */
-#endif /* UNIX */
-
-
-#ifdef ITC
-static int ignore_realtime = 0;
-#endif /* ITC */
-
-#ifdef MACINTOSH
-
-/* added for ThinkC 7: */
-#include <OSUtils.h>
-
-/* port numbers are in the range 0..MAX_PORTS-1 */
-#define CHANNELS_PER_PORT 16
-#define MAX_PORTS ((MAX_CHANNELS + CHANNELS_PER_PORT - 1) / CHANNELS_PER_PORT)
-
-/* here are some MIDIMGR specific definitions */
-#ifdef MIDIMGR
-#include "MIDI.h"
-#include "midimgr.h"
-
-#define TICKS_TO_MS(t) t
-#define MS_TO_TICKS(t) t
-
-#else
-/* here are some non-MIDIMGR definitions for the Mac */
-/****************************************************************************
-*
-* DMH: constants from macmidi.c
-*
-****************************************************************************/
-
-/* the modem port, also called port A */
-#define portA 0
-
-/* the printer port, also called port B */
-#define portB 1
-
-/* a tick is 1/60 of a second
- *
- * the following tables and routines are used to convert
- * between ticks and milliseconds
- */
-#define TICKS_TO_MS(t) (((t) * 50) / 3)
-#define MS_TO_TICKS(t) (((t) * 3) / 50)
-#endif /* def MIDIMGR */
-#endif /* def MACINTOSH */
-
-#ifdef WINDOWS
-#define huge
-#endif
-
-/****************************************************************************
-*
-* exported flags
-*
-****************************************************************************/
-
-boolean miditrace = FALSE; /* enables printed trace of MIDI output */
-boolean musictrace = FALSE; /* enables printed trace of commands */
-#ifdef MACINTOSH_OR_DOS
-boolean ctrlFilter = TRUE; /* suppress continuous controller data */
-boolean exclFilter = TRUE; /* suppress exclusive messages */
-boolean realFilter = TRUE; /* suppress realtime messages */
-#endif
-
-/****************************************************************************
-*
-* exported variables
-*
-****************************************************************************/
-
-public int keyloud; /* set to velocity of last getkey event */
-/* public long error; */
-public short midi_error_flags = 0;
-
-/* The following midifns_syntax lists command line switches and options.
- Since these are machine dependent, use conditional compilation.
- Conditional compilation within a string is a bit tricky: you want to
- write "\" for line continuation within the string, but "\" gets eaten
- by the macro preprocessor.
- That's why we define macros like AMIGAINPORT.
- Regretably it doesn't work for all compilers.
- */
-
-
-/* Lattice and RT/Unix aren't happy expanding the embedded macros below, so
- I made a separate declaration of midifns_syntax for Unix
- */
-#ifdef UNIX
-public char *midifns_syntax = "block<s>Turn off midi THRU;\
- miditrace<s>Trace low-level midi functions;\
- noalloff<s>Do not send alloff message when done;\
- trace<s>Trace music operations;\
- tune<o>Load a tuning file";
-#else
-#ifdef MACINTOSH
-#ifdef MIDIMGR
-public char *midifns_syntax = "miditrace<s>Trace low-level midi functions;\
- noalloff<s>Do not send alloff message when done;\
- patch<s>Remember/reuse Midi Mgr patches;\
- trace<s>Trace music operations;\
- keep<s>Keep other processes running;\
- tune<o>Load a tuning file";
-#else /* no MIDIMGR */
-public char *midifns_syntax = "miditrace<s>Trace low-level midi functions;\
- noalloff<s>Do not send alloff message when done;\
- patch<s>Remember/reuse Midi Mgr patches;\
- trace<s>Trace music operations;\
- tune<o>Load a tuning file";
-#endif /* MIDIMGR */
-#else
-#ifdef AMIGA
-public char *midifns_syntax = "block<s>Turn off midi THRU;\
- inport<o>Inpur port number;\
- miditrace<s>Trace low-level midi functions;\
- noalloff<s>Do not send alloff message when done;\
- outport<o>Output port number;\
- trace<s>Trace music operations;\
- tune<o>Load a tuning file";
-#else /* not UNIX or MACINTOSH or MIDIMGR or AMIGA */
-#ifdef DOS
-public char *midifns_syntax = "miditrace<s>Trace low-level midi functions;\
- noalloff<s>Do not send alloff message when done;\
- trace<s>Trace music operations;\
- tune<o>Load a tuning file";
-#endif /* DOS */
-#endif /* AMIGA */
-#endif /* MACINTOSH */
-#endif /* UNIX */
-
-#ifdef MACINTOSH
-boolean do_midi_thru = FALSE; /* exported: copy midi in to midi out */
-#endif
-
-
-/****************************************************************************
-*
-* local module variables
-*
-****************************************************************************/
-
-private int initialized = FALSE; /* set by musicinit, cleared by musicterm */
-private boolean tune_flag = FALSE; /* set by musicinit, never cleared */
-#ifdef DOS
-private boolean metroflag = FALSE; /* flag to turn on metronome */
-#endif
-private int user_scale = FALSE; /* TRUE if user-defined scale */
-private int bend[MAX_CHANNELS]; /* current pitch bend on channel */
-short cur_midi_prgm[MAX_CHANNELS];
-private pitch_table pit_tab[128]; /* scale definition */
-
-#ifdef DOS
-private ulong timeoffset = 0;
-public boolean exclerr = FALSE;
-public byte xcodemask; /* mask (00 or FF) */
-public byte xcode; /* mfr code */
-#endif
-
-#ifdef MACINTOSH_OR_DOS
-boolean sysex_pending = FALSE;
-#endif
-
-#ifdef AMIGA
-
-#define CONTCONT ((CMF_Ctrl & ~CMF_CtrlSwitch) | CMF_PitchBend | \
- CMF_ChanPress)
-#endif /* def AMIGA */
-
-#ifdef UNIX
-private ulong timeoffset = 0;
-#endif
-
-#ifdef UNIX_IRIX_MIDIFNS
-static MIport *miport;
-static int ignore_realtime = 0;
-
-private byte *sysex_p;
-private int sysex_n;
-#endif
-
-#ifdef ITC
-mi_id midiconn;
-#endif
-
-#ifdef MACINTOSH
-private ulong ticksAtStart = 0L;
- /* clock ticks at time of last musicinit or timereset
- * ASSUME: tick clock never wraps. this is a good assumption, since
- * the tick clock is set to zero when the power is turned on and the
- * tick counter is 32 bits. the Macintosh would need to be on for
- * 828.5 days for the tick counter to wrap around! */
-
-#endif /* def MACINTOSH */
-
-/****************************************************************************
-*
-* functions declared in this module
-*
-****************************************************************************/
-
-private void fixup();
-private void midi_init();
-extern boolean check_ascii(); /*userio.c*/
-private void musicterm();
-
-
-/****************************************************************************
-* alloff
-* Inputs:
-* none
-* Effect:
-* Sends MIDI all notes off command on every channel.
-****************************************************************************/
-
-#define ALL_NOTES_OFF 0x7B /*DMH: from macmidi.c*/
-
-void alloff()
-{
- int c;
-
- if (!initialized) fixup();
- if (musictrace)
- gprintf(TRANS,"alloff()\n");
- for (c = 1; c <= MAX_CHANNELS; c++) {
- midi_write(3, MIDI_PORT(c), (byte) (0xb0 | MIDI_CHANNEL(c)), ALL_NOTES_OFF, 0);
- }
-}
-
-
-
-/***************************************************************
-* eventwait
-*
-* Input : wakeup time, -1 means forever
-* Output : none
-* Return: none
-* Effect: waits until ascii or midi input or timeout
-***************************************************************/
-
-#ifdef UNIX_ITC
-void eventwait(timeout)
- long timeout;
-{
- struct timeval unix_timeout;
- struct timeval *waitspec = NULL;
- fd_set readfds;
-
- FD_ZERO(&readfds);
- FD_SET(MI_CONNECTION(midiconn), &readfds);
- FD_SET(fileno(stdin), &readfds);
- if (timeout >= 0) {
- timeout -= gettime(); /* convert to millisecond delay */
- unix_timeout.tv_sec = timeout / 1000;
- /* remainder become microsecs: */
- unix_timeout.tv_usec = (timeout - (unix_timeout.tv_sec * 1000)) * 1000;
- waitspec = &unix_timeout;
- }
- select(NOFILE+1, &readfds, 0, 0, waitspec);
- return;
-}
-#else /* !UNIX_ITC */
-#ifdef UNIX
-/* see machmidi.c for UNIX_MACH implementation */
-#ifndef UNIX_MACH
-#ifdef UNIX_IRIX_MIDIFNS
-void eventwait(timeout)
- long timeout;
-{
- struct timeval unix_timeout;
- struct timeval *waitspec = NULL;
- fd_set readfds;
-
- FD_ZERO(&readfds);
- FD_SET(mdGetFd(miport), &readfds);
- FD_SET(fileno(stdin), &readfds);
- if (timeout >= 0) {
-
- timeout -= gettime(); /* convert to millisecond delay */
- unix_timeout.tv_sec = timeout / 1000;
- /* remainder become microsecs: */
- unix_timeout.tv_usec = (timeout - (unix_timeout.tv_sec * 1000)) * 1000;
- waitspec = &unix_timeout;
- }
- select(FD_SETSIZE, &readfds, 0, 0, waitspec);
-
- return;
-}
-#else
-#ifdef BUFFERED_SYNCHRONOUS_INPUT
-void eventwait(timeout)
- long timeout;
-{
- struct timeval unix_timeout;
- struct timeval *waitspec = NULL;
-
- if (timeout >= 0) {
- timeout -= gettime(); /* convert to millisecond delay */
- unix_timeout.tv_sec = timeout / 1000;
- /* remainder become microsecs: */
- unix_timeout.tv_usec = (timeout - (unix_timeout.tv_sec * 1000)) * 1000;
- waitspec = &unix_timeout;
- select(NOFILE+1, 0, 0, 0, waitspec);
- } else {
- int c = getc(stdin);
- ungetc(c, stdin);
- }
- return;
-}
-#else
-void eventwait(timeout)
- long timeout;
-{
- struct timeval unix_timeout;
- struct timeval *waitspec = NULL;
- int readfds = 1 << IOinputfd;
-
- if (timeout >= 0) {
- timeout -= gettime(); /* convert to millisecond delay */
- unix_timeout.tv_sec = timeout / 1000;
- /* remainder become microsecs: */
- unix_timeout.tv_usec = (timeout - (unix_timeout.tv_sec * 1000)) * 1000;
- waitspec = &unix_timeout;
- }
- select(NOFILE+1, &readfds, 0, 0, waitspec);
- return;
-}
-#endif /* BUFFERED_SYNCHRONOUS_INPUT */
-#endif /* UNIX_IRIX */
-#endif /* UNIX_MACH */
-#endif /* UNIX */ /* I wanted to put an else here, but this confused a Unix C compiler */
-#endif /* UNIX_ITC */
-#ifdef AMIGA
-/* see camdmidi.c for Amiga implementation */
-#else
-#ifndef UNIX /* since I couldn't use an else above, have to check UNIX here */
-#ifdef WINDOWS
-void eventwait(timeout)
- long timeout;
-{
- if (timeout >= 0) {
- gprintf(TRANS, "eventwait: not implemented\n");
- return;
- } else {
- int c = getc(stdin);
- ungetc(c, stdin);
- }
- return;
-}
-#else
-void eventwait(timeout)
- long timeout;
-{
- while (timeout > gettime() || timeout == -1) {
- if (check_ascii() || check_midi()) return;
- }
-}
-#endif /* WINDOWS */
-#endif /* UNIX */
-#endif /* AMIGA */
-
-
-/****************************************************************************
-* exclusive
-* Inputs:
-* boolean onflag -- set to TRUE to receive midi exclusive data
-* Effect:
-* Tells module to read exclusive messages into buffer
-****************************************************************************/
-
-void exclusive(boolean onflag)
-{
- if (!initialized) fixup();
- if (musictrace) gprintf(TRANS, "exclusive: %d\n", onflag);
-#ifdef AMIGA
- if (onflag) SetMidiFilters(cmt_mi,
- cmt_mi->PortFilter, cmt_mi->TypeFilter | CMF_SysEx, cmt_mi->ChanFilter);
- else SetMidiFilters(cmt_mi,
- cmt_mi->PortFilter, cmt_mi->TypeFilter & ~CMF_SysEx, cmt_mi->ChanFilter);
-#endif
-#ifdef MACINTOSH_OR_DOS
- exclFilter = !onflag;
-#endif
-}
-
-
-/****************************************************************************
-* fixup
-* Effect:
-* Print error message and call musicinit
-****************************************************************************/
-
-private void fixup()
-{
- gprintf(ERROR, "You forgot to call musicinit. I'll do it for you.\n");
- musicinit();
-}
-
-#ifdef UNIX_IRIX_MIDIFNS
-private void flush_sysex(void);
-#endif
-
-long get_excl(byte *buffer, long len)
-{
- long ret = 0;
-#ifdef UNIX_IRIX_MIDIFNS
- byte *sxp = sysex_p;
- long l = len;
-#endif
-#ifdef UNIX_ITC /* was ITC */
- ret = mi_getx(midiconn, FALSE, len, (char *) buffer);
-#endif
-#ifdef UNIX_MACH
- ret = mi_getx(midiconn, FALSE, len, (unsigned char *)buffer);
-#endif
-#ifdef UNIX_IRIX_MIDIFNS
- if (!sysex_p) return 0;
- if (len > sysex_n) len = sysex_n;
- while (l--)
- {
- *buffer = *(sxp++);
- if (*(buffer++) == CMT_MIDI_EOX)
- {
- flush_sysex();
- break;
- }
- }
- ret = len - l - 1;
-#endif
-#ifdef AMIGA
- ret = GetSysEx(cmt_mi, (UBYTE *) buffer, len);
- AMIGA_ERROR_CHECK;
-#endif
-#ifdef MACINTOSH_OR_DOS
-#ifndef WINDOWS
- /* I'm not sure the following line is a good thing: it forces the
- * caller to wait until a full sysex message is received and the
- * 1st 4 bytes are fetched via getbuf() before a sysex message can
- * be read via get_excl(). Without this, both mm.c and exget.c
- * were fetching ahead and getting out of sync with getbuf(). I
- * fixed mm.c and exget.c to work (by checking for EOX), but I added
- * this line (which should never have any effect) just to make the
- * DOS interface behave more like the Amiga and Mac interfaces. The
- * drawback is that you can't fetch bytes until the EOX is seen,
- * because nothing goes into the getbuf() buffer until then.
- */
- if (!sysex_pending) return 0;
- while (len-- && (xbufhead != xbuftail)) {
- *buffer = xbuff[xbufhead++];
- ret++;
- if (*buffer == MIDI_EOX) {
- sysex_pending = FALSE;
- break;
- }
- buffer++;
- xbufhead &= xbufmask;
- }
-#endif
-#endif
- return ret;
-}
-
-/****************************************************************************
-* getbuf
-* Inputs:
-* boolean waitflag: TRUE if routine should wait for data
-* byte * p: Pointer to data destination
-* Result: boolean
-* TRUE if data was written to *p
-* FALSE if data not written to *p
-* Effect:
-* copies data from buffer to *p
-* will wait for buffer to become nonempty if waitflag is TRUE
-*
-* Modified 24 May 1988 for AMIGA (JCD)
-****************************************************************************/
-
-#ifdef UNIX_IRIX_MIDIFNS
- private void setup_sysex(MDevent *event, u_char *buffer);
-#endif /* UNIX_IRIX */
-boolean getbuf(boolean waitflag, unsigned char * p)
-{
-#ifdef UNIX_IRIX_MIDIFNS
- MDevent event;
- int ret;
-#endif /* UNIX_IRIX */
-
- if (!initialized) fixup();
-#ifdef UNIX
-#ifdef UNIX_IRIX_MIDIFNS
-/* current IRIX version ignores the waitflag (it never waits) */
-
- if (sysex_p) flush_sysex();
- if (ignore_realtime == 0) {
- ret = mdReceive(miport, &event, 1);
- if (ret) {
- if (event.msg[0] != 0xF0) {
- *((u_long*) p) = *((u_long*) event.msg);
- } else {
- setup_sysex(&event, p);
- }
- }
- return ret;
- } else {
- do /* skip realtime messages */
- {
- ret = mdReceive(miport, &event, 1);
- if (ret == -1) return ret;
- } while (event.msg[0] == 0xf8);
- if (event.msg[0] != 0xF0) {
- *((u_long*) p) = *((u_long*) event.msg);
- } else {
- setup_sysex(&event, p);
- }
- return ret;
- }
-#endif /* UNIX_IRIX */
-#ifdef UNIX_ITC
- if (ignore_realtime == 0) {
- return(mi_get(midiconn, waitflag, (char *) p));
- }
- else {
- boolean ret=false;
- /* filter out realtime msgs */
- do {
- ret = mi_get(midiconn, waitflag, (char *) p);
- if (ret == FALSE)
- return(ret);
- } while(p[0] == 0xf8);
- return(ret);
- }
-#else /* UNIX_ITC */
-#ifndef UNIX_IRIX
- if (waitflag) {
- gprintf(ERROR, "getbuf called with waitflag!");
- EXIT(1);
- }
- return FALSE;
-#endif /* UNIX_IRIX */
-#endif /* UNIX_ITC */
-#endif /* UNIX */
-
-#ifdef MACINTOSH_OR_DOS
-#ifndef WINDOWS
- if (sysex_pending) { /* flush sysex to keep buffers in sync */
- while (xbuff[xbufhead++] != MIDI_EOX) {
- xbufhead &= xbufmask;
- if (xbufhead == xbuftail) break;
- }
- sysex_pending = FALSE;
- }
- if (waitflag) while (buffhead == bufftail) /* wait */ ;
- else if (buffhead == bufftail) return(false);
- *(long *)p = *(long *)(((char *)buff)+buffhead);
- buffhead = (buffhead + 4) & BUFF_MASK;
- if (*p == MIDI_SYSEX) { /* if sys-ex, remember to fetch from xbuff */
- sysex_pending = TRUE;
- }
- return(true);
-#else
- return FALSE;
-#endif /* WINDOWS */
-#endif /* MACINTOSH_OR_DOS */
-
-#ifdef AMIGA
- if (waitflag) {
- do {
- WaitMidi(cmt_mi, &cmt_msg);
- AMIGA_ERROR_CHECK;
- } while (amigaerrflags);
- } else {
- AMIGA_ERROR_CHECK;
- if (!GetMidi(cmt_mi, &cmt_msg)) return(false);
- }
- *(long *)p = *(long *)&cmt_msg;
- clearmsg(cmt_msg);
- return(true);
-#endif /* AMIGA */
-}
-
-#ifdef UNIX_IRIX_MIDIFNS
-
-private void setup_sysex(MDevent *event, u_char *buffer)
-/* N.B. do not leak memory remember to call free(sysex_p) */
-{
- u_char *sxp = (u_char *) event->sysexmsg;
- int i;
-
- for (i=0;i<4;i++)
- *(buffer++) = *(sxp++);
- sysex_p = event->sysexmsg;
- sysex_n = event->msglen;
-}
-
-private void flush_sysex()
-{
- mdFree(sysex_p);
- sysex_p = 0;
- sysex_n = 0;
-}
-#endif
-
-#ifdef MACINTOSH_OR_DOS
-#ifndef WINDOWS
-public boolean check_midi()
-{
- if (buffhead == bufftail) return FALSE;
- else return TRUE;
-}
-#endif
-#endif
-
-
-/****************************************************************************
-* getkey
-* Inputs:
-* boolean waitflag: TRUE if wait until key depression, FALSE if
-* return immediately
-* Result: int
-* key number of key which has been depressed
-* It returns -1 if waitflag is FALSE and no key has been pressed
-* If waitflag is TRUE this routine will block until a key is pressed
-* Effect:
-* reads a key
-****************************************************************************/
-
-/*DMH: in previous version, macmidi.c subtracted 12 from msg to get key at each occurence...*/
-
-short getkey(boolean waitflag)
-{
- byte msg[4];
- short k;
-
- if (!initialized) fixup();
-
- while (TRUE) { /* process data until you find a note */
- /* look for data and exit if none found */
- /* NOTE: waitflag will force waiting until data arrives */
- if (!getbuf(waitflag, msg)) { /* nothing there */
- k = -1;
- break;
- } else if ((msg[0] & MIDI_CODE_MASK) == MIDI_ON_NOTE) {
- if (msg[2] == 0) { /* velocity 0 -> note off */
- keyloud = 0;
- k = msg[1] + 128;
- } else {
- keyloud = msg[2];
- k = msg[1];
- }
- break;
- } else if ((msg[0] & MIDI_CODE_MASK) == MIDI_OFF_NOTE) {
- keyloud = 0;
- k = msg[1] + 128;
- break;
- }
- }
- if (musictrace) {
- if (k != -1) gprintf(TRANS,"getkey got %d\n", k);
- }
- return k;
-}
-
-
-/****************************************************************************
-* gettime
-* Result: ulong
-* current timestamp since the last call to
-* musicinit or timereset
-* Effect:
-* fakes it
-****************************************************************************/
-
-ulong gettime() /*DMH: ulong is from mpu->midifns conversion, for Mac*/
-{
-#if HAS_GETTIMEOFDAY
- struct timeval timeval;
-#endif
-#if HAS_FTIME
- struct timeb ftime_res;
-#endif
- register ulong ticks = 0L;
-
- BREAKTEST /* abort if user typed Ctrl Break */
- if (!initialized) fixup();
-
-#ifdef MACINTOSH
-#ifdef MIDIMGR
- ticks = MIDIGetCurTime(OutputRefNum) - ticksAtStart;
-#else
- ticks = TickCount() - ticksAtStart;
-#endif
- if (initialized) abort_check(); /* give user a chance to abort */
- ticks = TICKS_TO_MS(ticks);
-#endif
-
-#ifdef AMIGA
- ticks = (*camdtime - timeoffset) << 1; /* return milliseconds */
-#endif
-
-#ifdef DOS
-#ifndef WINDOWS
- ticks = elapsedtime(timeoffset, readtimer()); /* return milliseconds */
- /* gprintf(TRANS, "currtime = %ld, timeoffset = %ld\n", currtime, timeoffset); */
-#endif
-#endif /* ifdef DOS */
-
-#if HAS_GETTIMEOFDAY
- gettimeofday(&timeval, 0);
- ticks = timeval.tv_sec * 1000 + timeval.tv_usec / 1000 - timeoffset;
-#endif
-#if HAS_FTIME
- ftime(&ftime_res);
- ticks = ((ftime_res.time - timeoffset) * 1000) + ftime_res.millitm;
-#endif
-
- /* if (miditrace) gprintf(TRANS, "."); */
- return(ticks);
-}
-
-
-/****************************************************************************
-* l_rest
-* Inputs:
-* long time: Amount of time to rest
-* Effect:
-* Waits until the amount of time specified has lapsed
-****************************************************************************/
-
-void l_rest(time)
-long time;
-{
- if (!initialized) fixup();
- l_restuntil(time + gettime());
-}
-
-/****************************************************************************
-* l_restuntil
-* Inputs:
-* long time: Event time to rest until
-* Effect:
-* Waits until the specified time has been reached (absolute time)
-****************************************************************************/
-
-void l_restuntil(time)
-long time;
-{
-#ifdef MACINTOSH
- ulong now = gettime();
- ulong junk; /* changed from ulong for ThinkC 7, back to ulong for CW5 */
-#endif
-
-#ifdef AMIGA
- while (time > gettime()) eventwait(time);
-#else
- for(; (time_type) time > gettime(););
-#endif
-
-#ifdef MACINTOSH
- now = gettime();
-
- if (time > now) Delay(MS_TO_TICKS(time - now), &junk);
- /* else time <= now, so return immediately */
-#endif
-
-}
-
-/****************************************************************************
-* metronome
-* Inputs:
-* boolean onflag: TRUE or FALSE
-* Effect:
-* enables (true) or disables (false) MPU-401 metronome function.
-* must be called before musicinit
-****************************************************************************/
-
-void metronome(boolean onflag)
-{
-#ifdef DOS
-metroflag = onflag;
-#endif
-}
-
-
-/****************************************************************************
-* midi_bend
-* Inputs:
-* int channel: midi channel on which to send data
-* int value: pitch bend value
-* Effect:
-* Sends a midi pitch bend message
-****************************************************************************/
-
-void midi_bend(int channel, int value)
-{
- if (!initialized) fixup();
- if (musictrace)
- gprintf(TRANS,"midi_bend: ch %d, val %d\n", channel, value - (1 << 13));
- bend[MIDI_CHANNEL(channel)] = value;
-
- midi_write(3, MIDI_PORT(channel), (byte) (MIDI_BEND | MIDI_CHANNEL(channel)),
- (byte) MIDI_DATA(value), (byte) MIDI_DATA(value >> 7));
-}
-
-
-/****************************************************************************
-* midi_buffer
-* Inputs:
-* byte * buffer: the buffer address
-* int size: number of bytes in buffer
-* Returns:
-* FALSE if size is less than 16 or buffer is NULL, otherwise TRUE
-* Effect: DOS, MAC:
-* tells interrupt routine to store system exclusive messages in
-* buffer. The largest power of 2 bytes less than size will be
-* used. xbufhead and xbuftail will be initialized to zero,
-* and xbuftail will be one greater than the index of the last
-* system exclusive byte read. Since there may already be a buffer
-* and therefore the normal midi message buffer may have the first
-* 4 bytes of some sysex messages, clear the normal midi buffer too.
-* AMIGA:
-* adds buffer to midi interface
-*
-****************************************************************************/
-
-boolean midi_buffer(byte huge *buffer, ulong size)
-{
- if (!buffer) return FALSE;
-#ifdef AMIGA
- if (!SetSysExQueue(cmt_mi, (UBYTE *) buffer, (ULONG) size)) return(false);
- cu_register(remove_sysex_buffer, buffer);
-#endif
-
-#ifdef MACINTOSH_OR_DOS
-#ifndef WINDOWS
- {
- int mask = 0x000F;
-
- if (size < 16) return(false);
- while (mask < size && mask > 0) mask = ((mask << 1) | 1);
- midi_flush();
- xbuff = NULL; /* turn off buffering */
- xbufmask = mask >> 1;
- xbufhead = xbuftail = 0;
- xbuff = buffer; /* set buffer, turn on buffering */
- }
-#endif
-#endif
-#ifdef UNIX
- return FALSE;
-#else
- exclusive(TRUE);
- return TRUE;
-#endif
-}
-
-
-/* midi_clock -- send a midi time clock message */
-/**/
-void midi_clock()
-{
- if (!initialized) fixup();
- if (musictrace) gprintf(TRANS, "+");
- midi_write(1, 0, MIDI_TIME_CLOCK, 0, 0);
-}
-
-
-/****************************************************************************
-* midi_cont
-* Inputs:
-* boolean onflag: TRUE or FALSE
-* Effect:
-* enables (true) or disables (false) continuous control
-****************************************************************************/
-
-void midi_cont(boolean onflag)
-{
- if (!initialized) fixup();
- if (onflag) {
-#ifdef AMIGA
- SetMidiFilters(cmt_mi, cmt_mi->PortFilter,
- cmt_mi->TypeFilter | CONTCONT, cmt_mi->ChanFilter);
-#endif
-#ifdef DOS
-#ifndef WINDOWS
- mPutCmd(BENDERON);
-#endif
-#endif
- } else {
-#ifdef AMIGA
- SetMidiFilters(cmt_mi, cmt_mi->PortFilter,
- cmt_mi->TypeFilter & ~CONTCONT, cmt_mi->ChanFilter);
-#endif
- }
-#ifdef MACINTOSH_OR_DOS
- ctrlFilter = !onflag;
-#endif
- if (musictrace) gprintf(TRANS,"midi_cont: %d\n", onflag);
-}
-
-
-/****************************************************************************
-* midi_ctrl
-* Inputs:
-* int channel: midi channel on which to send data
-* int control: control number
-* int value: control value
-* Effect:
-* Sends a midi control change message
-****************************************************************************/
-
-void midi_ctrl(int channel, int control, int value)
-{
- if (!initialized) fixup();
- if (musictrace)
- gprintf(TRANS,"midi_ctrl: ch %d, ctrl %d, val %d\n",
- channel, control, value);
-
- midi_write(3, MIDI_PORT(channel), (byte) (MIDI_CTRL | MIDI_CHANNEL(channel)),
- (byte) MIDI_DATA(control), (byte) MIDI_DATA(value));
-}
-
-
-/****************************************************************************
-* midi_exclusive
-* Inputs:
-* byte *msg: pointer to a midi exclusive message, terminated by 0xF7
-* Effect:
-* Sends a midi exclusive message
-* Bugs:
-* 18-mar-94 PLu : This function does not know which port to send to in
-* case of multiple midi-ports (MAC, IRIX)
-****************************************************************************/
-
-#ifdef MACINTOSH
-#define INTERBYTE_DELAY 10
-#endif
-
-void midi_exclusive(msg)
-unsigned char *msg; /* the data to be sent */
-{
-#ifdef ITC
- int count, done, tosend, willsend;
- unsigned char *m;
- mi_status ret;
-#endif
-#ifdef UNIX_IRIX_MIDIFNS
- unsigned char *m;
- MDevent mdevent;
-#endif
-
-#ifdef MACINTOSH
-#ifndef NYQUIST
- int i; /* for DX7 delay loop */
- int count = 0; /* counter for formatting midi byte trace */
- MIDIPacket TheMIDIPacket;
- unsigned char prev = 0;
- boolean first_packet = TRUE;
-#endif
-#endif
-
- /*
- * if user mistakenly called midi_exclusive instead of exclusive,
- * the argument will be TRUE or FALSE, both of which are highly
- * unlikely valid arguments for midi_exclusive:
- */
-
- if (msg == (byte *) FALSE || msg == (byte *) TRUE) {
- gprintf(ERROR,"midi_exclusive: invalid argument %u.\n", msg);
- EXIT(1);
- }
- if (!initialized) fixup();
- if (musictrace) gprintf(TRANS,"midi_exclusive\n");
-
-#ifdef AMIGA
- PutSysEx(cmt_mi, msg);
-#endif
-#ifdef MACINTOSH
-#ifndef NYQUIST /* if NYQUIST, do nothing */
-#ifdef MIDIMGR
- while (prev != MIDI_EOX) {
- int len = 0;
- while (prev != MIDI_EOX && len < 249) {
- TheMIDIPacket.data[len++] = prev = *msg++;
- }
- TheMIDIPacket.len = 6 + len;
- TheMIDIPacket.tStamp = 0;
- if (first_packet && (prev != MIDI_EOX)) {
- TheMIDIPacket.flags = midiTimeStampCurrent + midiStartCont;
- first_packet = FALSE;
- } else if (first_packet) {
- TheMIDIPacket.flags = midiTimeStampCurrent + midiNoCont;
- } else if (prev == MIDI_EOX) {
- TheMIDIPacket.flags = midiTimeStampCurrent + midiEndCont;
- } else {
- TheMIDIPacket.flags = midiTimeStampCurrent + midiMidCont;
- }
- MIDIWritePacket(OutputRefNum, &TheMIDIPacket);
- }
-#else
- while (*msg != MIDI_EOX) {
- Xmit(0, *msg);
- msg++;
- count++;
- /* this is a delay loop, without which your DX7 will crash */
- for (i = INTERBYTE_DELAY; i > 0; i--)
- abort_check();
- }
- Xmit(0, MIDI_EOX);
-#endif /* MIDIMGR */
-#endif /* NYQUIST */
-#endif /* MACINTOSH */
-
-#ifdef DOS
-#ifndef WINDOWS
- do {
- mPutData(*msg);
- } while (*msg++ != MIDI_EOX);
-#endif
-#endif
-#ifdef ITC
- for (m = msg, tosend = 1; (*m) != MIDI_EOX; m++, tosend++);
- for (count = 0; count < tosend; count += done) {
- willsend = min(16384, tosend);
- ret = mi_exclusive(midiconn, 1, msg, (short) willsend);
- if (ret != MI_SUCCESS) {
- gprintf(GWARN, "Got %d from mi_exclusive\n", ret);
- }
- done = willsend;
- }
-#endif
-#ifdef UNIX_IRIX_MIDIFNS
-/* we don't know which device to sent SYSEX messages to so port zero is
- assumed. */
- for (m = msg, mdevent.msglen = 1; (*m) != CMT_MIDI_EOX; m++, mdevent.msglen++);
- mdevent.sysexmsg = msg;
- if (mdSend(miport, &mdevent, 1) == -1) {
- gprintf(GWARN, "could not send SYSEX message\n");
- }
-#endif
-
- if (miditrace) {
- do { gprintf(TRANS, "~%2x", *msg);
-#ifdef UNIX_IRIX_MIDIFNS
- } while (*msg++ != CMT_MIDI_EOX);
-#else
- } while (*msg++ != MIDI_EOX);
-#endif
- }
-}
-
-
-/****************************************************************************
-* midi_note
-* Inputs:
-* int channel: midi channel on which to send data
-* int pitch: midi pitch code
-* int velocity: velocity with which to sound it (0=> release)
-* Effect:
-* Sends a midi note-play request out
-****************************************************************************/
-
-void midi_note(int channel, int pitch, int velocity)
-{
- if (!initialized) fixup();
- if (musictrace) gprintf(TRANS,"midi_note: ch %d, key %d, vel %d\n",
- channel, pitch, velocity);
- if (user_scale) {
- /* check for correct pitch bend */
- if ((pit_tab[pitch].pbend != bend[MIDI_CHANNEL(channel)])
- && (velocity != 0)) {
- midi_bend(channel, pit_tab[pitch].pbend);
- bend[channel] = pit_tab[pitch].pbend;
- }
- pitch = pit_tab[pitch].ppitch;
- }
- midi_write(3, MIDI_PORT(channel), (byte) (MIDI_ON_NOTE | MIDI_CHANNEL(channel)),
- (byte) MIDI_DATA(pitch), (byte) MIDI_DATA(velocity));
-}
-
-
-/****************************************************************************
-* midi_program
-* Inputs:
-* int channel: Channel on which to send midi program change request
-* int program: Program number to send (decremented by 1 before
-* being sent as midi data)
-* Effect:
-* Sends a program change request out the channel
-****************************************************************************/
-
-void midi_program(int channel, int program)
-{
-#ifdef MACINTOSH
- int port, midi_chan;
-#endif
-
- if (!initialized) fixup();
- if (musictrace) gprintf(TRANS,"midi_program: ch %d, prog %d\n",
- channel, program);
- channel = MIDI_CHANNEL(channel);
- if (cur_midi_prgm[channel] != program) {
- midi_write(2, MIDI_PORT(channel), (byte) (MIDI_CH_PROGRAM | channel),
- (byte) (MIDI_PROGRAM(program)), 0);
- cur_midi_prgm[channel] = program;
- }
-}
-
-
-/****************************************************************************
-* midi_real
-* Inputs:
-* boolean onflag: TRUE or FALSE
-* Effect:
-* enables (true) or disables (false) midi realtime messages F8-FF
-****************************************************************************/
-
-void midi_real(boolean onflag)
-{
- if (!initialized) fixup();
-#ifdef UNIX_ITC
- {
- mi_status ret;
-
- ret = mi_realtime(midiconn, onflag);
- if (ret != MI_SUCCESS) {
- gprintf(ERROR, "Warning: bad ret = %d in midi_real\n", ret);
- }
- }
-#endif /* UNIX_ITC */
-#ifdef ITC
- ignore_realtime = !onflag;
-#endif /* ITC */
-#ifdef AMIGA
- if (onflag) {
- SetMidiFilters(cmt_mi, cmt_mi->PortFilter,
- cmt_mi->TypeFilter | CMF_RealTime, cmt_mi->ChanFilter);
- } else {
- SetMidiFilters(cmt_mi, cmt_mi->PortFilter,
- cmt_mi->TypeFilter & ~CMF_RealTime, cmt_mi->ChanFilter);
- }
-#endif
-#ifdef MACINTOSH_OR_DOS
- realFilter = !onflag;
-#endif
-
- if (musictrace) gprintf(TRANS,"midi_real: %d\n", onflag);
-}
-
-
-/* midi_start -- send a midi start message */
-/**/
-void midi_start()
-{
- if (!initialized) fixup();
- if (musictrace) gprintf(TRANS, "`");
- midi_write(1, 0, MIDI_START, 0, 0);
-}
-
-
-/* midi_stop -- send a midi stop message */
-/**/
-void midi_stop()
-{
- if (!initialized) fixup();
- if (musictrace) gprintf(TRANS, "'");
- midi_write(1, 0 /* ignored */, MIDI_STOP, 0, 0);
-}
-
-
-/****************************************************************************
-* midi_thru
-* Inputs:
-* boolean onflag: TRUE or FALSE
-* Effect:
-* DOS: enables (true) or disables (false) midi thru info from
-* MPU-401 to host. (Default is set; reset with cmdline -block.)
-* AMIGA: enables (true) or disables (false) midi route from AMIGA
-* midi input to AMIGA midi output.
-****************************************************************************/
-
-void midi_thru(boolean onflag) /* DMH: midi thru is not supported on the MAC or DOS */
-{
- if (!initialized) fixup();
-#ifndef MIDI_THRU
- gprintf(ERROR, "midi_thru called but not implemented\n");
-#else
-#ifdef AMIGA
- MidiThru(0L, (long) onflag);
-#endif
-#ifdef MACINTOSH
- /* this currently does not do anything - Mac driver doesn't
- * support THRU
- */
- do_midi_thru = onflag;
-#endif
-#endif
-
- if (musictrace) gprintf(TRANS,"midi_thru: %d\n", onflag);
-}
-
-
-/****************************************************************************
-* midi_touch
-* Inputs:
-* int channel: midi channel on which to send data
-* int value: control value
-* Effect:
-* Sends a midi after touch message
-****************************************************************************/
-
-void midi_touch(int channel, int value)
-{
- if (!initialized) fixup();
- if (musictrace) gprintf(TRANS,"midi_touch: ch %d, val %d\n",channel,value);
- midi_write(2, MIDI_PORT(channel), (byte) (MIDI_TOUCH | MIDI_CHANNEL(channel)),
- (byte) MIDI_DATA(value), 0);
-}
-
-
-/****************************************************************************
-* midi_write
-* Inputs:
-* UBYTE n: number of characters to send (1, 2 or 3);
- int port: the port number (usually 0), on MAC, this may be 1
-* char c1,c2,c3: Character(s) to write to MIDI data port
-* Effect:
-* Writes the data to the serial interface designated by port
-****************************************************************************
-* Change log
-* Date | Change
-*-----------+----------------------------------------------------------------
-* 15-Mar-94 | PLu : Added IRIX version
-****************************************************************************/
-
-#ifdef UNIX
-#ifdef UNIX_IRIX_MIDIFNS
-void midi_write(int n, int port, unsigned char c1, unsigned char c2, unsigned char c3)
-{
- MDevent event;
-
- if (port < 0) return;
-
- * ((u_long *) event.msg) = 0xe0000000 | ((port & 0x1f) << 24) | (c1 << 16) |
- (c2 << 8) | c3;
- if (mdSend(miport, &event, 1) == -1)
- gprintf(ERROR, "Can not send midi message in midi_write");
-
- midi_write_trace(n, port, c1, c2, c3);
-}
-#else
-
-#ifdef ITC
-void midi_write(int n, int port,
- unsigned char c1, unsigned char c2, unsigned char c3)
-{
- unsigned char outb[3];
- mi_channel mch;
- mi_status ret;
-
- if (port < 0) return;
- outb[0] = c1;
- outb[1] = c2;
- outb[2] = c3;
- mch = (16*port)+((int)MI_CHANNEL(c1));
- ret = mi_put(midiconn, mch, outb);
- if (ret != MI_SUCCESS)
- gprintf(ERROR, "Warning: bad ret = %d in midi_write\n", (int)ret);
- midi_write_trace(n, port, c1, c2, c3);
-}
-#else
-void midi_write(int n, int port,
- unsigned char c1, unsigned char c2, unsigned char c3)
-{
- /* no output */
- midi_write_trace(n, port, c1, c2, c3);
-}
-#endif /* ITC */
-#endif /* UNIX_IRIX */
-#endif /* UNIX */
-
-#ifdef DOS
-#ifndef WINDOWS
-void midi_write(int n, int port,
- unsigned char c1, unsigned char c2, unsigned char c3)
-{
- if (n >= 1) mPutData(c1);
- if (n >= 2) mPutData(c2);
- if (n >= 3) mPutData(c3);
- midi_write_trace(n, port, c1, c2, c3);
-}
-#else
-void midi_write(int n, int port,
- unsigned char c1, unsigned char c2, unsigned char c3)
-{
- midi_write_trace(n, port, c1, c2, c3);
-}
-#endif
-#endif
-
-#ifdef MACINTOSH
-#ifdef MIDIMGR
-void midi_write(int n, int port,
- unsigned char c1, unsigned char c2, unsigned char c3)
-{
- MIDIPacket TheMIDIPacket;
-
- TheMIDIPacket.flags = midiTimeStampCurrent;
- TheMIDIPacket.len = 6 + n;
- TheMIDIPacket.tStamp = 0;
- TheMIDIPacket.data[0] = c1;
- TheMIDIPacket.data[1] = c2;
- TheMIDIPacket.data[2] = c3;
- MIDIWritePacket(OutputRefNum, &TheMIDIPacket);
- midi_write_trace(n, port, c1, c2, c3);
-}
-#else
-void midi_write(int n, int port, unsigned char c1, unsigned char c2, unsigned char c3)
-{
-#ifndef NYQUIST
- Xmit(port, c1);
- if (n >= 2) Xmit(port, c2);
- if (n >= 3) Xmit(port, c3);
-#endif
- midi_write_trace(n, port, c1, c2, c3);
-}
-#endif
-#endif
-
-void midi_write_trace(int n, int port,
- unsigned char c1, unsigned char c2, unsigned char c3)
-{
- if (miditrace) {
- /* to indicate bytes going out on port 1, put message in brackets
- * with the port number, e.g. [1:~90~3c~64]
- */
- if (port > 0) gprintf(TRANS, "[%d:", port);
- if (n >= 1) gprintf(TRANS, "~%2x", c1);
- if (n >= 2) gprintf(TRANS, "~%2x", c2);
- if (n >= 3) gprintf(TRANS, "~%2x", c3);
- if (port > 0) gprintf(TRANS, "]", port);
- }
-}
-
-
-
-/*****************************************************************
-* set_pitch_default
-*****************************************************************/
-
-private void set_pitch_default()
-{
- int i;
-
- for (i = 0; i < 128; i++) {
- pit_tab[i].pbend = 8192;
- pit_tab[i].ppitch = i;
- }
-}
-
-/*****************************************************************
-* read_tuning
-*****************************************************************/
-
-void read_tuning(filename)
-char *filename;
-{
- int index, pit, lineno = 0;
- float bend;
- FILE *fpp;
-
- user_scale = TRUE;
- set_pitch_default();
-
- fpp = fileopen(filename, "tun", "r", "Tuning definition file");
- while ((fscanf(fpp, "%d %d %f\n", &index, &pit, &bend) > 2) &&
- (lineno < 128)) {
- lineno++;
- if (index >= 0 && index <= 127) {
- pit_tab[index].pbend = (int)(8192 * bend/100 + 8192);
- pit_tab[index].ppitch = pit;
- }
- }
-}
-
-
-/****************************************************************************
-* musicinit
-* Effect:
-****************************************************************************/
-
-void musicinit()
-{
- int i;
- char *filename;
-
- if (!tune_flag) { /* do this code only once */
- miditrace = cl_switch("miditrace");
- musictrace = cl_switch("trace");
- }
-
- if (!initialized) {
- cu_register((cu_fn_type) musicterm, NULL);
- midi_init();
- }
- initialized = TRUE;
- /* this does some random cleanup activity */
-
-#ifndef APPLICATION
- if (!tune_flag) { /* do this code only once */
-#ifdef DOS
-#ifndef WINDOWS
-#if 0
- version = mPutGetCmd(GETMPUVER);
- revision = mPutGetCmd(GETMPUREV);
- gprintf(TRANS, "MPU version %d.%d%c\n", version >> 4, version & 0x0f,
- revision + 'A' - 1);
-#endif
- mPutCmd(UARTMODE);
- mPutCmd(NOREALTIME); /* initially prevent Real Time MIDI info */
- mPutCmd(EXCLUSIVOFF); /* initially prevent Sys-Ex data */
-#endif
-#endif
- tune_flag = TRUE;
- filename = cl_option("tune");
- if (filename != NULL) read_tuning(filename);
- }
- /* now that flags are set, print the trace message */
- if (musictrace) gprintf(TRANS, "musicinit()\n");
-
- if (user_scale) {
- for (i = 0; i < MAX_CHANNELS; i++) {
- midi_bend(i, 8192);
- bend[i] = 8192;
- }
- }
-#endif /* ifndef APPLICATION */
-
- for (i = 0; i < MAX_CHANNELS; i++) {
- /* initialize to impossible values so that the
- * next call to midi_bend or midi_program will
- * not match and therefore send an output:
- */
- bend[i] = -1;
- cur_midi_prgm[i] = -1;
- }
-#ifdef MIDI_THRU
- midi_thru(!(cl_switch("block"))); /* set MIDI thru */
-#endif
- timereset(); /* Reset clock */
-#ifdef AMIGA
- event_mask |= (1L << ascii_signal()) | (1L << cmt_mi->AlarmSigBit) |
- (1L << cmt_mi->RecvSigBit);
-#endif
-}
-
-
-/****************************************************************************
-* musicterm
-* Effect:
-* Miscellaneous cleanup of things done by musicinit.
-****************************************************************************/
-
-private void musicterm()
-{
- if (musictrace) gprintf(TRANS, "musicterm()\n");
- initialized = FALSE;
-}
-
-
-/****************************************************************************
-* cmtrand
-* Inputs:
-* int lo: Lower limit of value
-* int hi: Upper limit of value
-* Result: int
-* random number (lo <= result <= hi)
-****************************************************************************/
-
-long randseed = 1534781L;
-
-short cmtrand(short lo, short hi)
-{
- randseed *= 13L;
- randseed += 1874351L;
- return((short)(lo + (((hi + 1 - lo) * ((0x00ffff00 & randseed) >> 8)) >> 16)));
-}
-
-
-#ifdef AMIGA
-/* remove_sysex_buffer -- a cleanup procedure for the Amiga */
-/**/
-void remove_sysex_buffer(void *obj)
-{
- ClearSysExQueue(cmt_mi);
-}
-#endif /* AMIGA */
-
-
-/****************************************************************************
-* settime
-* Inputs: new time
-* Effect:
-* Sets the current time to the new time.
-* DMH: for MAC, sets the clock to absTime
-* implemented by adjusting ticksATStart
-****************************************************************************/
-
-void settime(newtime)
- time_type newtime;
-{
- if (musictrace) gprintf(TRANS, "settime(%lu)\n", newtime);
-#ifdef AMIGA
- timeoffset = *camdtime - (newtime >> 1);
-#endif
-
-#ifdef MACINTOSH
-#ifdef MIDIMGR
- ticksAtStart = MIDIGetCurTime(OutputRefNum);
-#else
- ticksAtStart = TickCount() - MS_TO_TICKS(newtime);
-#endif
-#endif
-}
-
-/****************************************************************************
-* timereset
-* Effect:
-* Resets the time.
-* DMH: for MAC, implemented by setting ticksAtStart to
-* current value of system tick counter
-* JMN: for DOS, resets the time on the MPU-401. Ticks is reset to 0
-****************************************************************************/
-
-void timereset()
-{
-#if HAS_GETTIMEOFDAY
- struct timeval timeval;
-#endif
-#if HAS_FTIME
- struct timeb ftime_res;
-#endif
-
- if (!initialized) fixup();
- if (musictrace) gprintf(TRANS,"timereset()\n");
-
-#ifdef AMIGA
- timeoffset = *camdtime;
-#endif
-
-#ifdef DOS
-#ifndef WINDOWS
- timeoffset = (ulong) readtimer();
-#endif
-#endif
-
-#ifdef MACINTOSH
-#ifdef MIDIMGR
- ticksAtStart = MIDIGetCurTime(OutputRefNum);
-#else
- ticksAtStart = TickCount();
-#endif
-#endif
-
-#if HAS_GETTIMEOFDAY
- gettimeofday(&timeval, 0);
- timeoffset = timeval.tv_sec * 1000 + timeval.tv_usec / 1000 - timeoffset;
-#endif
-#if HAS_FTIME
- ftime(&ftime_res);
- timeoffset = ftime_res.time;
-#endif
-}
-
-
-/****************************************************************************
-* trace
-* Inputs:
-* boolean flag: TRUE for trace on
-* Effect:
-* turns tracing on (flag == TRUE) or off (flag == FALSE)
-****************************************************************************/
-
-void trace(boolean flag)
-{
- musictrace = flag;
-}
-
-/****************************************************************************
-* tracemidi
-* Inputs:
-* boolean flag: TRUE for trace on
-* Effect:
-* turns midi tracing on (flag == TRUE) or off (flag == FALSE)
-****************************************************************************/
-
-void tracemidi(boolean flag)
-{
- miditrace = flag;
-}
-
-
-
-/***********************************************************************
-*
-* midi and timer initialization
-*
-***********************************************************************/
-
-#ifdef DOS
-
-/* binary value of hex char */
-
-private int xval(int c)
-{
- int i;
- static char t[]="0123456789abcdef";
-
- for (i=0; i<16; i++)
- if(tolower(c)==t[i]) return(i);
- return (-1);
-}
-
-/* binary value of hex string */
-
-private int atox(char *t)
-{
- int i=0;
- int x;
- while(*t)
- {
- if ((x=xval(*t++))<0)return (0);
- i=(i<<4)+x;
- }
- return (i);
-}
-#endif /* def DOS */
-
-
-private void midi_init()
-{
-#ifdef UNIX_IRIX_MIDIFNS
-#define PBUFLEN 4
- MIconfig *config;
- static u_int pbuf[] = { MI_STAMPING, MINOSTAMP, MI_BLOCKING, MINONBLOCKING};
-#endif
-
-#ifdef UNIX_MACH
- mach_midi_init();
-#else
-#ifdef ITC
- midiconn = mi_open(NULL);
- if (midiconn == NULL) {
- gprintf(FATAL, "could not open a MIDI device\n");
- EXIT(1);
- }
- cu_register((cu_fn_type) mi_close, (void *) midiconn);
-#endif
-#endif
-#ifdef AMIGA
- amiga_midi_init();
-#endif /* def AMIGA */
-#ifdef DOS
-#ifndef WINDOWS
- int err;
- int irq=SEARCHIRQ;
- int base=MPUBASEADDR;
- char *t;
-
- if (t=getenv("MPUIRQ")) {
- if (musictrace)
- gprintf(TRANS,"MPUIRQ %s\n",t);
- irq=atoi(t);
- }
- if (t=getenv("MPUBASE")) {
- if (musictrace)
- gprintf(TRANS,"MPUBASE %s\n",t);
- base=atox(t);
- }
- if(err = mOpen(base, irq)) {
- mClose(err);
- EXIT(1);
- }
- cu_register((cu_fn_type) mClose, 0);
- cu_register((cu_fn_type) mPutCmd, (cu_parm_type) MPURESET);
- initializetimer();
- cu_register((cu_fn_type) restoretimer, NULL);
-#endif
-#endif
-
-#ifdef MACINTOSH
-#ifndef NYQUIST /* if NYQUIST, do nothing */
-#ifdef MIDIMGR
- setup_midimgr(); /* this registers itself for cleanup */
-#else
- init_abort_handler();
- cu_register(cleanup_abort_handler, NULL);
- setupMIDI(portA, 0x80);
- cu_register(restoreMIDI, (long) portA);
- /* only initialize portB if necessary */
- if (MAX_CHANNELS > CHANNELS_PER_PORT) {
- setupMIDI(portB, 0x80);
- cu_register(restoreMIDI, (long) portB);
- }
-#endif
-#endif /* NYQUIST */
-#ifdef MIDIMGR
- ticksAtStart = MIDIGetCurTime(OutputRefNum);
-#else
- ticksAtStart = TickCount(); /* reset the clock */
-#endif
-#endif /* def MACINTOSH */
-
- if (!(cl_switch("noalloff")))
- cu_register((cu_fn_type) alloff, NULL);
-}
-
-#ifdef DOS
-/****************************************************************************
-* set_x_mfr
-* Inputs:
-* unsigned char mfr: Manufacturer ID for MIDI
-* Result: void
-*
-* Effect:
-* Sets the xcode and xcodemask to allow only these sysex messages
-****************************************************************************/
-
-void set_x_mfr(mfr)
-unsigned char mfr;
-{
- xcode = mfr;
- xcodemask = 0xFF;
-}
-
-/****************************************************************************
-* clear_x_mfr
-* Result: void
-*
-* Effect:
-* Clears sysex manufacturer code filter; accepts all sysex messages
-****************************************************************************/
-
-void clear_x_mfr()
-{
- xcode = 0;
- xcodemask = 0;
-}
-#endif /* DOS */
diff --git a/lib-src/libnyquist/cmt/midifns.h b/lib-src/libnyquist/cmt/midifns.h
deleted file mode 100644
index 99042d3..0000000
--- a/lib-src/libnyquist/cmt/midifns.h
+++ /dev/null
@@ -1,137 +0,0 @@
-/* midifns.h -- definitions for users of midifns.c */
-
-/*****************************************************************************
-* Change Log
-* Date | Change
-*-----------+-----------------------------------------------------------------
-* 5-Mar-92 | GWL : insert definitions and logs from JMN's mpu.h
-* for LATTICE322, only variable type in prototypes
-* 28-Apr-03 | DM : random() is now named cmtrand() to avoid conflicts
-*****************************************************************************/
-
-#ifndef _MIDIFNS_H_
-#define _MIDIFNS_H_
-
-/* declaration types */
-
-typedef unsigned long time_type;
-typedef long sgnd_time_type;
-
-/* Maximum time value: */
-#define MAXTIME 0xFFFFFFFFL
-
-#define delay_type long
-
-/* controller numbers */
-
-#define MODWHEEL 1
-#define BREATH 2
-#define FOOT 4
-#define PORTARATE 5
-#define VOLUME 7
-#define SUSTAIN 64
-#define PORTASWITCH 65
-
-#include "midierr.h"
-
-extern char *midifns_syntax;
-
-/* support for allocating sysex buffer - examples in mm.c & exget.c */
-#ifdef DOS
-#define midibuff_alloc(size) (byte huge *) halloc(size, 1)
-#endif
-#ifndef midibuff_alloc
-#define midibuff_alloc (byte *) MALLOC
-#endif
-
-/* DMH: from mpu.h -- definitions for users of mpu.c */
-
-#ifdef OLD_PROTOTYPES
-
-void eventwait();
-void exclusive(boolean);
-boolean getbuf(boolean, unsigned char * );
-long get_excl();
-boolean getxbuf();
-boolean testxbuf();
-short getkey(boolean);
-ulong gettime(void); /*DMH: note- now unsigned*/
-void l_rest(long);
-void l_restuntil(long);
-void metronome(boolean);
-void midi_bend(short,short);
-boolean midi_buffer(byte * , ulong);
-void midi_cont(boolean);
-void midi_clock();
-void midi_ctrl(short, short, short);
-void midi_exclusive(unsigned char * );
-void midi_note(short, short, short);
-void midi_program(short, short);
-void midi_real();
-void midi_start();
-void midi_stop();
-#ifdef AMIGA
-/* MIDI_THRU defined means that it is really implemented. */
-#define MIDI_THRU
-#endif
-void midi_thru();/*boolean onflag*/
-void midi_touch(short, short);
-void midi_write();
-void musicinit();
-short cmtrand(short, short);
-void read_tuning();/*char *filename*/
-void settime();
-void synth_init();/*void*/
-void timereset();
-void trace();
-void tracemidi();
-boolean is_exclusive(void);
-unsigned char get_exclusive(void);
-
-#else
-
-void alloff(void);
-void eventwait(long timeout);
-void exclusive(boolean onflag);
-long get_excl(byte *buffer, long len);
-boolean getbuf(boolean waitflag, unsigned char * p);
-short getkey(boolean waitflag);
-ulong gettime(void);
-void l_rest(long time);
-void l_restuntil(long time);
-void metronome(boolean onflag);
-void midi_bend(int channel, int value);
-boolean midi_buffer(byte *buffer, ulong size);
-void midi_clock(void);
-void midi_cont(boolean onflag);
-void midi_ctrl(int channel, int control, int value);
-void midi_exclusive(unsigned char *msg);
-void midi_flush();
-void midi_note(int channel, int pitch, int velocity);
-void midi_program(int channel, int program);
-void midi_real(boolean onflag);
-void midi_start(void);
-void midi_stop(void);
-void midi_thru(boolean onflag);
-void midi_touch(int channel, int value);
-void read_tuning(char *filename);
-void midi_write(int n, int port, unsigned char c1, unsigned char c2, unsigned char c3);
-void midi_write_trace(int n, int port,
- unsigned char c1, unsigned char c2, unsigned char c3);
-void musicinit(void);
-void settime(time_type newtime);
-void timereset(void);
-void trace(boolean flag);
-void tracemidi(boolean flag);
-
-
-boolean check_midi(void);
-#endif /* ifdef OLD_PROTOTYPES */
-
-
-#ifdef AMIGA
-byte *head_of_excl();
-byte *tail_of_excl();
-#endif
-
-#endif /* _MIDIFNS_H_ */
diff --git a/lib-src/libnyquist/cmt/midimgr.c b/lib-src/libnyquist/cmt/midimgr.c
deleted file mode 100644
index e7db136..0000000
--- a/lib-src/libnyquist/cmt/midimgr.c
+++ /dev/null
@@ -1,784 +0,0 @@
-/* midimgr.c -- this file contains interface code to support use of Apple Midi Manager */
-/*
- * This code is based on code supplied with the Apple Midi Manager.
- * Copyright 1991, Carnegie Mellon University
- */
-
-/* BUGS:
- * If exclusive() is called to turn exclusive messages on or off DURING the
- * receipt of an exclusive message, incoming data will be garbled. The correct
- * handling would be to record when receipt of an exclusive message is in
- * progress, then properly remove any partial message when exclusive is turned
- * off, and ignore any remaining message part when exclusive is turned on.
- * The present code does neither.
- */
-
-#include "cext.h"
-#undef round
-#ifdef THINK_C
-#include <pascal.h> /* for ThinkC 7 */
-#endif
-
-#include "stdio.h"
-#include "userio.h"
-#include "MIDI.h"
-#include "midifns.h"
-#include "midibuff.h"
-#include "midierr.h"
-#include "midimgr.h"
-#include "midicode.h"
-#include "cmdline.h"
-
-/* Needed for KillEverybody */
-#include <toolutils.h>
-#include <AppleEvents.h>
-#include <EPPC.h>
-#include <Gestalt.h>
-#include <PPCToolbox.h>
-#include <Processes.h>
-#include <Sound.h>
-
-
-#define CMTclientID 'CMT '
-/* note the following are in alphabetical order for Patcher display */
-#define timePortID 'Atim'
-#define inputPortID 'Bin '
-#define outputPortID 'Cout'
-#define noClient ' '
-
-#define noTimeBaseRefNum 0
-#define noReadHook 0L
-#define zeroTime 0L
-#define timePortBuffSize 0L
-#define inputPortBuffSize 2048
-#define outputPortBuffSize 0L
-#define refCon0 0L
-
-pascal short CMTreader(MIDIPacket *ThePacketPtr, long TheRefCon);
-
-/* "patch" switch from command line. This switch is cached in patch_flag and tells
- whether to look in the resource fork for a patch, or just hook up to midi in and
- out. If the resource fork is used, the patch will be saved upon exit. */
-private boolean patch_flag;
-extern boolean ctrlFilter;
-extern boolean exclFilter;
-extern boolean realFilter;
-
-private midi_read_lock = false; /* used to stop input during data structure manipulation */
-
-private void set_error(int bit);
-#ifndef NYQUIST
-void PatchPorts(void);
-void SavePatch(OSType PortID, short PortInfoResID, char *PortInfoResName);
-#endif
-
-/* exported: */
-public short InputRefNum; /* Input port reference number. */
-public short OutputRefNum; /* Output port reference number. */
-public short TimeRefNum; /* Time base port reference number. */
-
-Boolean GManualPatch; /* True if not launched by a PatchBay Config. File. */
-
-/****************************************************************************
-*
-* variables shared with other modules
-*
-****************************************************************************/
-
-/* midi input buffer */
-long buff[BUFF_SIZE/4]; /* data buffer, declared long to get 32-bit alignment */
-int buffhead = 0; /* buffer head and tail pointers */
-int bufftail = 0;
-
-/* user supplied system exclusive buffer */
-byte *xbuff = NULL; /* address of the user-supplied buffer */
-public long xbufmask; /* mask for circular buffer address calculation */
-long xbufhead = 0; /* buffer head and tail pointers */
-long xbuftail = 0;
-boolean xbuf_flush = true; /* says to flush remainder of sysex message */
-
-#ifdef SYSEXDEBUG
-int sysexcount = 0; /* for debugging */
-int sysexdone = 0;
-int sysexheadcount = 0;
-byte sysexfirst = 0;
-int sysexsysex = 0;
-#endif
-
-/* midi_flush -- empty out buffers */
-/**/
-void midi_flush()
-{
- midi_read_lock = true;
- buffhead = 0;
- bufftail = 0;
- xbufhead = 0;
- xbuftail = 0;
- xbuf_flush = true; /* in case sysex continuation messages are still coming */
- midi_read_lock = false;
-}
-
-
-/* Nyquist only uses CMT for Midi and Adagio file IO */
-#ifndef NYQUIST
-/* Get String representation of MIDI Mgr Version Num.*/
-/* See Mac Tech Note #189 for details. */
-char *StdMacVerNumToStr(long VerNum, char *VerStr)
-{
- char *RetVal;
- char MajVer, MinVer, VerStage, VerRev, BugFixVer = 0;
-
- if (VerNum == 0)
- {
- RetVal = NULL;
- }
- else
- {
- MajVer = (VerNum & 0xFF000000) >> 24;
- MinVer = (VerNum & 0x00FF0000) >> 16;
- VerStage = (VerNum & 0x0000FF00) >> 8;
- VerRev = (VerNum & 0x000000FF) >> 0;
- BugFixVer = MinVer & 0x0F;
-
- switch (VerStage)
- {
- case 0x20:
- VerStage = 'd';
- break;
- case 0x40:
- VerStage = 'a';
- break;
- case 0x60:
- VerStage = 'b';
- break;
- case 0x80:
- VerStage = ' ';
- break;
- default:
- VerStage = '?';
- break;
- }
-
- if (BugFixVer == 0)
- {
- sprintf(VerStr,"%X.%X%c%X",
- MajVer, MinVer>>4, VerStage, VerRev);
- }
- else
- {
- sprintf(VerStr,"%X.%X.%X%c%X",
- MajVer, MinVer >> 4, MinVer & 0x0F, VerStage, VerRev);
- }
-
- RetVal = VerStr;
- }
-
- return(RetVal);
-}
-
-
-/* C2PStrCpy -- Convert a C String (from Cstr) into a Pascal string */
-/*
- * NOTE: this is not the same code as shipped with midi manager example
- */
-char *C2PStrCpy(char *Cstr, Str255 Pstr)
-{
- char *c = Cstr;
- char *p = ((char *) Pstr) + 1;
-
- while (*c) *p++ = *c++;
- *Pstr = c - Cstr;
- return( (char *) Pstr );
-}
-
-/* This checks to see if THINK C is running under System 7,
- and ONLY WORKS UNDER SYSTEM 7! Don't use unless you check! */
-boolean ThinkCRunning(void)
-{
- ProcessSerialNumber processSN;
- OSErr myErr;
- ProcessInfoRec infoRec;
-
- processSN.lowLongOfPSN = kNoProcess;
- processSN.highLongOfPSN = kNoProcess;
- do {
- myErr = GetNextProcess(&processSN);
-
- infoRec.processInfoLength = sizeof(ProcessInfoRec);
- infoRec.processName = 0L;
- infoRec.processAppSpec = 0L;
- myErr = GetProcessInformation(&processSN, &infoRec);
- if (!myErr) {
- if (infoRec.processSignature == 'KAHL') {
- return(true);
- }
- }
- } while (myErr == noErr);
- return(false);
-}
-
-/* This kills off all the other running processes...
- ONLY WORKS UNDER SYSTEM 7! Don't use unless you check! */
-void KillEverybody(void)
-{
- ProcessSerialNumber myProc, processSN;
- ProcessSerialNumber finderPSN;
- ProcessInfoRec infoRec;
- Str31 processName;
- FSSpec procSpec;
-
- OSErr myErr = noErr;
- OSErr otherError;
- AppleEvent theEvent;
- AEDesc theAddress;
- Boolean ourFlag, notFinder;
- Boolean finderFound = false;
-
- GetCurrentProcess(&myProc);
- /* Preset the PSN to no PSN, see IM VI, the Process Manager */
- processSN.lowLongOfPSN = kNoProcess;
- processSN.highLongOfPSN = kNoProcess;
- finderPSN.lowLongOfPSN = 0UL; /* brk: was nil */
- finderPSN.highLongOfPSN = 0UL; /* brk: was nil */
-
- do {
- myErr = GetNextProcess(&processSN);
- /* See if it's us first */
- notFinder = true;
- SameProcess(&myProc, &processSN, &ourFlag);
-
- infoRec.processInfoLength = sizeof(ProcessInfoRec);
- infoRec.processName = (StringPtr) &processName;
- infoRec.processAppSpec = &procSpec;
- GetProcessInformation(&processSN, &infoRec);
- if (!ourFlag && !finderFound) {
- /* see if it's the Finder, we have to kill the finder LAST */
- /* or else non-sys 7 apps won't get killed */
- /* since the Finder must be there to convert the AppleEvent to Puppet Strings */
- /* if the app is not APpleEvent aware */
- /* Also, FileShare HAS to be killed before the Finder */
- /* or your life will be unpleasant */
-
- if (infoRec.processSignature == 'MACS' && infoRec.processType == 'FNDR') {
- /* save this number for later */
- finderPSN = processSN;
- notFinder = false;
- finderFound = true;
-
- } else {
- notFinder = true;
- }
- }
- if (!myErr && !ourFlag && notFinder) {
- otherError = AECreateDesc(typeProcessSerialNumber, (Ptr)&processSN, sizeof(processSN), &theAddress);
- if (!otherError)
- otherError = AECreateAppleEvent(kCoreEventClass, kAEQuitApplication, &theAddress, kAutoGenerateReturnID,
- kAnyTransactionID, &theEvent);
- if (!otherError)
- AEDisposeDesc(&theAddress);
- /* Again, the Finder will convert the AppleEvent to puppetstrings if */
- /* the application is a System 6 or non-AE aware app. This ONLY */
- /* happens for the 4 required (oapp,odoc,pdoc, and quit) AppleEvents */
- /* and ONLY if you use the PSN for the address */
- if (!otherError)
- AESend(&theEvent, 0L, kAENoReply + kAEAlwaysInteract + kAECanSwitchLayer, kAENormalPriority, kAEDefaultTimeout,
- 0L, 0L);
- AEDisposeDesc(&theEvent);
- }
- } while (!myErr);
-
- /* Now, if the finder was running, it's safe to kill it */
- if (finderPSN.lowLongOfPSN || finderPSN.highLongOfPSN) {
- otherError = AECreateDesc(typeProcessSerialNumber, (Ptr)&finderPSN, sizeof(processSN), &theAddress);
- if (!otherError)
- otherError = AECreateAppleEvent(kCoreEventClass, kAEQuitApplication, &theAddress, kAutoGenerateReturnID,
- kAnyTransactionID, &theEvent);
- if (!otherError)
- AEDisposeDesc(&theAddress);
- if (!otherError)
- AESend(&theEvent, 0L, kAENoReply + kAEAlwaysInteract + kAECanSwitchLayer, kAENormalPriority, kAEDefaultTimeout, 0L,
- 0L);
- AEDisposeDesc(&theEvent);
- }
-}
-
-/* Sign into the MIDI Manager. */
-/* Set up time, input, and output ports. */
-/* Start our time base clock. */
-void setup_midimgr(void)
-{
- MIDIPortParams Init; /* MIDI Mgr Init data structure */
- Handle TheIconHndl;
- OSErr TheErr;
- long MIDIMgrVerNum; /* MIDI Manager Ver (Std Mac Ver #) */
- Str255 name = "\pCMU MIDI Toolkit";
- char MIDIMgrVerStr[256]; /* MIDI Manager Ver (Std Mac Ver # String) */
- long vers;
- EventRecord theEvent;
-
- Gestalt(gestaltSystemVersion, &vers);
- vers = (vers >> 8) & 0xf; /* shift result over and mask out major version number */
- if ((vers >= 7) && (!cl_switch("keep")) && (!ThinkCRunning())) {
- gprintf(TRANS,"Killing other processes...\n");
- KillEverybody();
- for (vers=0; vers<100; ++vers) {
- while (WaitNextEvent(everyEvent, &theEvent, 0L, 0L)) ;
- }
- }
-
- /* Make sure MIDIMgr is installed and save version num. */
- MIDIMgrVerNum = SndDispVersion(midiToolNum);
- if (MIDIMgrVerNum == 0) {
- gprintf(ERROR, "The MIDI Manager is not installed! Exiting...\n");
- EXIT(1);
- } else {
- StdMacVerNumToStr(MIDIMgrVerNum, MIDIMgrVerStr);
- gprintf(TRANS,"MIDI Manager Version %s\n", MIDIMgrVerStr);
- }
-
-
- /* Sign in to the MIDI Manager. */
- TheIconHndl = GetResource('ICN#', 1);
- TheErr = MIDISignIn(CMTclientID,
- 0L,
- TheIconHndl,
- name);
- if (TheErr) {
- gprintf(ERROR, "Trouble signing into MIDI Manager! Aborting...");
- EXIT(1);
- }
-
- /* Assume not a Patchbay configuration. */
- GManualPatch = true;
-
- /* Add time port. */
- Init.portID = timePortID;
- Init.portType = midiPortTypeTime;
- Init.timeBase = noTimeBaseRefNum;
- Init.readHook = noReadHook;
- Init.initClock.syncType = midiInternalSync;
- Init.initClock.curTime = zeroTime;
- Init.initClock.format = midiFormatMSec;
- Init.refCon = SetCurrentA5();
- C2PStrCpy("TimeBase", Init.name);
- TheErr = MIDIAddPort(CMTclientID, timePortBuffSize, &TimeRefNum, &Init);
- /* Has a PatchBay connection been resolved? */
- if (TheErr == midiVConnectMade) {
- GManualPatch = false;
- } else if (TheErr == memFullErr) {
- gprintf(ERROR, "Not enough room in heap zone to add time port! Aborting...");
- MIDISignOut(CMTclientID);
- EXIT(1);
- }
-
- /* Add an input port. */
- Init.portID = inputPortID;
- Init.portType = midiPortTypeInput;
- Init.timeBase = TimeRefNum;
- Init.offsetTime = midiGetCurrent;
- Init.readHook = NewMIDIReadHookProc(CMTreader);
- Init.refCon = SetCurrentA5();
- C2PStrCpy("InputPort", Init.name);
- TheErr = MIDIAddPort(CMTclientID, inputPortBuffSize, &InputRefNum, &Init);
- /* Has a PatchBay connection been resolved? */
- if (TheErr == midiVConnectMade) {
- GManualPatch = false;
- } else if (TheErr == memFullErr) {
- gprintf(ERROR, "Not enough room in heap zone to add input port! Aborting...");
- MIDISignOut(CMTclientID);
- EXIT(1);
- }
-
- /* Add an output port. */
- Init.portID = outputPortID;
- Init.portType = midiPortTypeOutput;
- Init.timeBase = TimeRefNum;
- Init.offsetTime = midiGetCurrent;
- Init.readHook = NULL;
- Init.refCon = refCon0;
- C2PStrCpy("OutputPort", Init.name);
- TheErr = MIDIAddPort(CMTclientID, outputPortBuffSize, &OutputRefNum, &Init);
- /* Has a PatchBay connection been resolved? */
- if (TheErr == midiVConnectMade) {
- GManualPatch = false;
- } else if (TheErr == memFullErr) {
- printf("Not enough room in heap zone to add output port! Aborting...");
- MIDISignOut(CMTclientID);
- EXIT(1);
- }
-
- if (GManualPatch) {
- PatchPorts(); /* connect ports as they were */
- }
- /* to clean this up (later) call finish_midimgr() */
- cu_register((cu_fn_type) finish_midimgr, (cu_parm_type) finish_midimgr);
-
- /* Start our Clock. */
- MIDIStartTime(TimeRefNum);
-}
-
-
-/* The Read Hook Function. */
-
-/* 1st 4 bytes of sysex message get saved here and enqueued later */
-char save_sysex_head[4];
-int save_sysex_head_x = 0;
-
-void sysex_insert(unsigned char data) {
- if (save_sysex_head_x < 4) {
- save_sysex_head[save_sysex_head_x++] = data;
- }
- xbuff[xbuftail++] = data;
- xbuftail &= xbufmask;
- if (xbuftail == xbufhead) {
- set_error(SYSEXOVFL);
- }
- if (data == MIDI_EOX) { /* we're done with the message */
- *((long *) (((byte *) buff) + bufftail)) = *((long *)save_sysex_head);
- bufftail = (bufftail + 4) & BUFF_MASK;
- if (bufftail == buffhead) {
- set_error(BUFFOVFL);
- }
- }
-}
-
-/* Read all incomming MIDI data. */
-
-pascal short CMTreader(MIDIPacket *ThePacketPtr, long TheRefCon)
-{
- /* Set up our A5 world. */
- long SysA5 = SetA5(TheRefCon);
- short RetVal = midiMorePacket, i, j;
- unsigned char *mm_data = ThePacketPtr->data;
- register byte data1 = mm_data[1];
-
- if (midi_read_lock) {
- /* Don't want to read packet now, get it later */
- /* DOES THIS REALLY WORK? WHAT WILL CAUSE AN INTERRUPT
- * TO OCCUR LATER? THIS IS ONLY USED BY midi_flush, IS
- * BASED ON THE MidiArp CODE FROM APPLE, AND IS UNTESTED - RBD
- */
- RetVal = midiKeepPacket;
- goto alldone;
- }
-
- /* see if Packet is an error message */
- if (((ThePacketPtr->flags & midiTypeMask) == midiMgrType) &&
- *((short *) (&(ThePacketPtr->data))) < midiMaxErr) {
- set_error(MIDIMGRERR);
- goto alldone;
- }
-
- /* filter out control changes */
- if (ctrlFilter) {
- register int hibits = *mm_data & 0xF0;
- if (hibits == 0xD0 || /* Chan Pressure */
- hibits == 0xE0 || /* Pitch Bend */
- hibits == 0xA0 || /* Poly Pressure */
- ((hibits == 0xB0) && /* Control change (don't count switches) */
- ((data1 < 64) || (data1 > 121)))) {
- /* CONTROL MESSAGE HAS BEEN FILTERED */
- goto alldone;
- }
- } else if (realFilter) {
- register int hibits = *mm_data & 0xF0;
- if (hibits >= 0xF8) goto alldone;
- }
-
-
- /* if not a continuation, copy the data into cmt_data */
- /* The logic to detect a non-continued
- * packet or a first packet is: "flags bit 1 is clear".
- */
- if ((((ThePacketPtr->flags & midiContMask) == midiNoCont)) &&
- (*mm_data != MIDI_SYSEX)) {
- register byte *cmt_data = ((byte *) buff) + bufftail;
- *((long *) cmt_data) = *((long *) mm_data);
-
- bufftail = (bufftail + 4) & BUFF_MASK;
- if (bufftail == buffhead) {
- /* filled buffer faster than client emptied it */
- set_error(BUFFOVFL);
- }
- }
-
- /* see if we have a sysex message to copy to buffer */
- if (xbuff && !exclFilter &&
- ((ThePacketPtr->flags & midiContMask) || *mm_data == MIDI_SYSEX)) {
- int i;
- register byte *x_data = xbuff + xbuftail;
-
- /* iterate over data in message */
- /* NOTE: in the previous implementation, I thought Sysex messages were
- * always starting at the beginning of the buffer, but that didn't work.
- * This implementation assumes nothing -- it is slower because of additional
- * testing and parsing inside the loop, but seems to work.
- */
- for (i = ThePacketPtr->len - 6; i > 0; i--) {
- if (xbuf_flush) { /* we're searching for beginning of message */
- if (*mm_data == MIDI_SYSEX) {
- xbuf_flush = false;
- sysex_insert(MIDI_SYSEX);
- }
- } else { /* we're scanning to the end of the message */
- if (*mm_data == MIDI_SYSEX) { /* found it, insert proper EOX */
- sysex_insert(MIDI_EOX);
- sysex_insert(MIDI_SYSEX);
- } else if (*mm_data == MIDI_EOX) { /* found it */
- sysex_insert(MIDI_EOX);
- xbuf_flush = true;
- } else sysex_insert(*mm_data);
-
- }
- mm_data++;
- }
- }
-alldone:
-
- /* Restore the systems A5 world. */
- SetA5(SysA5);
-
- return(RetVal);
-}
-
-
-/* Sign out from the MIDI Manager. */
-void finish_midimgr(void)
-{
- if (GManualPatch && patch_flag) {
- SavePatch(timePortID, timePortResInfoID, "timePortInfo");
- SavePatch(inputPortID, inputPortResInfoID, "inputPortInfo");
- SavePatch(outputPortID, outputPortResInfoID, "outputPortInfo");
- }
- MIDISignOut(CMTclientID);
-}
-
-
-
-/* Alert user to Resource Manager Error. */
-void
-ReportResError(char *Msg)
-{
- OSErr TheErr;
- char Buf[256];
-
- if ( (TheErr = ResError()) != noErr) {
- gprintf(ERROR, "ResError %d: %s...Aborting.", TheErr, Msg);
- EXIT(1);
- } else {
- /* gprintf(ERROR, "%s OK\n", Msg); */
- }
-}
-
-
-/****************************************************************************
-* error handling
-* Effect:
-* various error conditions are flagged by setting bits in
-* the global midi_error_flags. it is up to the client to clear this
-* word when necessary.
-****************************************************************************/
-
-private void set_error(int bit)
-{
- midi_error_flags |= (1 << bit);
-}
-
-
-void midi_show_errors()
-{
- if (midi_error_flags & (1<<BUFFOVFL))
- gprintf(ERROR, "Midi Buffer Overflow Error\n");
- if (midi_error_flags & (1<<MIDIMGRERR))
- gprintf(ERROR, "Midi Manager Error\n");
- if (midi_error_flags & (1<<SYSEXOVFL))
- gprintf(ERROR, "Midi Sysex Overflow Error\n");
-}
-
-
-/**************** PATCHING CODE ***************/
-
-/*
- MIDIArp Time, Input, and Output Port
- Info Record Resource ID's.
-*/
-
-/* Get previously saved port connections (port info records) */
-/* from application's 'port' resource. */
-void
-PatchPorts(void)
-{
- MIDIPortInfoHdl PortInfoH; /* Handle to port info record. */
- MIDIPortInfoPtr PortInfoP; /* Pointer to port info record. */
- short i, TheErr;
-
- patch_flag = cl_switch("patch");
-
- /* SET UP TIME PORT CONNECTIONS. */
- if (patch_flag)
- PortInfoH = (MIDIPortInfoHdl) GetResource(portResType, timePortResInfoID);
- if (!patch_flag || PortInfoH == NULL) {
- MIDIIDListHdl clients, ports;
- OSErr err;
-
- gprintf(TRANS, "Connecting to MIDI IN and OUT\n");
-#ifdef MIDIMGR_VERBOSE
- clients = MIDIGetClients();
- gprintf(TRANS, "clients = %lx\n", clients);
- HLock((Handle) clients);
-
- for (i = 0; i < (*clients)->numIDs; i++) {
- OSType id = (*clients)->list[i];
- gprintf(TRANS, "%d: %c%c%c%c\n", i, (char) (id>>24),
- (char) ((id >> 16) & 0xFF), (char) ((id >> 8) & 0xFF),
- (char) (id & 0xFF));
- }
- ports = MIDIGetPorts('amdr');
- HLock((Handle) ports);
- for (i = 0; i < (*ports)->numIDs; i++) {
- OSType id = (*ports)->list[i];
- gprintf(TRANS, "%d: %c%c%c%c\n", i, (char) (id>>24),
- (char) ((id >> 16) & 0xFF), (char) ((id >> 8) & 0xFF),
- (char) (id & 0xFF));
- }
- HUnlock((Handle) ports);
- HUnlock((Handle) clients);
-#endif
- /* the work starts here */
- err = MIDIConnectData('CMT ', 'Cout', 'amdr', 'Aout');
- /* gprintf(TRANS, "Connected CMT.Cout to amdr.Aout: %d\n", err); */
- err = MIDIConnectData('amdr', 'Ain ', 'CMT ', 'Bin ');
- /* gprintf(TRANS, "Connected amdr.Ain to CMT.Bin: %d\n", err); */
-
- return;
- }
- HLock((Handle) PortInfoH);
- PortInfoP = *PortInfoH;
- if (GetHandleSize((Handle) PortInfoH) != 0)
- {
- /* Were we supposed to be sync'd to another client? */
- if (PortInfoP->timeBase.clientID != noClient)
- {
- /* Yes, so make that client our time base. */
- TheErr = MIDIConnectTime(
- PortInfoP->timeBase.clientID,
- PortInfoP->timeBase.portID,
- CMTclientID,
- timePortID
- );
-#ifdef IGNORE
- /* Is the client still signed in? */
- if (TheErr != midiVConnectErr)
- {
- /* Yes, so set our sync mode to external. */
- MIDISetSync(ArpGlobals.TimeRefNum, midiExternalSync);
- }
-#endif
-
- }
- /* Were we somebody else's time base? */
- for (i=0; i<PortInfoP->numConnects; i++)
- {
- MIDIConnectTime(CMTclientID,
- timePortID,
- PortInfoP->cList[i].clientID,
- PortInfoP->cList[i].portID);
- }
- }
- HUnlock((Handle) PortInfoH);
- ReleaseResource((Handle) PortInfoH);
- ReportResError("PatchPorts/ReleaseResource()");
-
- /* SET UP INPUT PORT CONNECTIONS. */
- PortInfoH = (MIDIPortInfoHdl) GetResource(portResType, inputPortResInfoID);
- if (PortInfoH == NULL)
- {
- ReportResError("PatchPorts/GetResource()");
- }
- HLock((Handle) PortInfoH);
- PortInfoP = *PortInfoH;
- if (GetHandleSize((Handle) PortInfoH) != 0)
- {
- /* Were we connected to anyone? */
- for (i=0; i<PortInfoP->numConnects; i++)
- {
- MIDIConnectData(CMTclientID,
- inputPortID,
- PortInfoP->cList[i].clientID,
- PortInfoP->cList[i].portID);
- }
- }
- HUnlock((Handle) PortInfoH);
- ReleaseResource((Handle) PortInfoH);
- ReportResError("PatchPorts/GetResource()");
-
- /* SET UP OUTPUT PORT CONNECTIONS. */
- PortInfoH = (MIDIPortInfoHdl) GetResource(portResType, outputPortResInfoID);
- if (PortInfoH == NULL)
- {
- ReportResError("PatchPorts/GetResource()");
- }
- HLock((Handle) PortInfoH);
- PortInfoP = *PortInfoH;
- if (GetHandleSize((Handle) PortInfoH) != 0) {
- /* Were we connected to anyone? */
- for (i=0; i<PortInfoP->numConnects; i++)
- {
- MIDIConnectData(CMTclientID,
- outputPortID,
- PortInfoP->cList[i].clientID,
- PortInfoP->cList[i].portID);
- }
- }
- HUnlock((Handle) PortInfoH);
- ReleaseResource((Handle) PortInfoH);
- ReportResError("PatchPorts/ReleaseResource()");
-
-}
-
-/* Save current port connections (port info records) */
-/* to application's 'port' resource. */
-void
-SavePatch(OSType PortID, short PortInfoResID, char *PortInfoResName)
-{
- Handle PortResH; /* Handle to ptch resource. */
- CursHandle WatchCurs;
-
- WatchCurs = GetCursor(watchCursor);
- HLock((Handle) WatchCurs);
- SetCursor(*WatchCurs);
- HUnlock((Handle) WatchCurs);
-
-
- /* Remove existing port info resource. */
- PortResH = GetResource(portResType, PortInfoResID);
- /* gprintf(TRANS, "PortResH: %lx, *PortResH: %lx\n", PortResH, *PortResH); */
- if (PortResH) {
- ReportResError("SavePatch/GetResource()");
- RmveResource(PortResH);
- ReportResError("SavePatch/RmveResource()");
- DisposHandle(PortResH);
- UpdateResFile(CurResFile());
- ReportResError("SavePatch/UpdateResFile()");
- }
-
- /* Get new configurateion. */
- PortResH = (Handle) MIDIGetPortInfo(CMTclientID, PortID);
-
- /* Save new configurateion. */
- CtoPstr(PortInfoResName);
- AddResource(PortResH, portResType, PortInfoResID,
- (ConstStr255Param) PortInfoResName);
- PtoCstr((unsigned char *) PortInfoResName);
-
- ReportResError("SavePatch/AddResource()");
- WriteResource(PortResH);
- ReportResError("SavePatch/WriteResource()");
- UpdateResFile(CurResFile());
- ReportResError("SavePatch/UpdateResFile()");
- ReleaseResource(PortResH);
- ReportResError("SavePatch/ReleaseResource()");
-
- InitCursor();
-}
-#endif /* NYQUIST */
diff --git a/lib-src/libnyquist/cmt/midimgr.h b/lib-src/libnyquist/cmt/midimgr.h
deleted file mode 100644
index 790fc06..0000000
--- a/lib-src/libnyquist/cmt/midimgr.h
+++ /dev/null
@@ -1,14 +0,0 @@
-#define portResType 'port'
-#define timePortResInfoID 128
-#define inputPortResInfoID 129
-#define outputPortResInfoID 130
-
-
-
-extern short InputRefNum; /* Input port reference number. */
-extern short OutputRefNum; /* Output port reference number. */
-extern short TimeRefNum; /* Time base port reference number. */
-
-void setup_midimgr(void);
-void finish_midimgr(void);
-void midi_show_errors();
diff --git a/lib-src/libnyquist/cmt/moxc.c b/lib-src/libnyquist/cmt/moxc.c
deleted file mode 100644
index f66fa53..0000000
--- a/lib-src/libnyquist/cmt/moxc.c
+++ /dev/null
@@ -1,661 +0,0 @@
-/* MOXC -- a C version of Collinge's MOXIE language */
-/* Copyright 1989 Carnegie Mellon University */
-
-/*****************************************************************************
-* Change Log
-* Date | Change
-*-----------+-----------------------------------------------------------------
-* 31-Dec-85 | Modified for use with midi
-* 5-Feb-86 | Added m_rest and m_restuntil allowing rests at top level
-* 28-May-86 | Added command line parsing
-* 4-Jun-86 | changed keyevent to separate calls for each event type
-* 10-Jul-86 | put loop in mainscore with prompt to play and replay
-* 03-Jun-88 | modified for portability (AMIGA) -JCD
-* 07-Jul-89 | time bases -RBD
-* 31-Jan-90 | GWL : cleaned up for LATTICE
-* 30-Jun-90 | RBD : further changes
-* 2-Apr-91 | JDW : further changes
-* 4-Mar-91 | GWL : DOS allows odd inst addrs
-* 10-Oct-94 | nix : posicionador tridimensionale interface
-* 28-Apr-03 | DM : true->TRUE, false->FALSE
-*****************************************************************************/
-
-#include "switches.h"
-
-#ifdef AMIGA
-#ifdef AZTEC
-#include "functions.h"
-#else
-#include "amiga.h"
-#endif
-#include "exec/exec.h"
-#include "cmtcmd.h"
-
-extern long event_mask; /* imported from midifns.c */
-#endif
-extern int abort_flag; /*DMH: taken out of ifdef AMIGA for moxcrun*/
-
-#include "stdio.h"
-#include "cext.h"
-#include "userio.h"
-#include "midifns.h"
-
-#include "cmdline.h"
-#include "midicode.h"
-#include "timebase.h"
-#include "moxc.h"
-
-#ifdef AMIGA /*DMH: only AMIGA cares about AMIGA's "proportional controllers"*/
-#include "prop1.h"
-#endif
-#ifdef POSICIONADOR_3D
-#include "pos3d.h"
-#include "pos3dbuf.h"
-#endif /* POSICIONADOR_3D */
-
-extern char *app_syntax;
-
-/***************************************************************************
-*
-* IMPORTS:
-* asciievent(k) user-defined action for terminal input
-* bendchange(ch, val) user-defined pitch bend handler
-* ctrlchange(ch, c, val) user-defined control change handler
-* keydown(ch, p, v) user-defined MIDI note on handler
-* keyup(ch, p) user-defined MIDI note off handler
-* mainscore() user-defined first action(s)
-* musicfns lots of time and io functions
-* peddown(ch) user-defined pedal down handler
-* pedup(ch) user-defined pedal up handler
-* touchchange(ch, val) user-defined aftertouch handler
-* app_syntax string defining extra command line options
-*
-* EXPORTS:
-*
-* cause(delay, routine, p1, p2, ..., p8)
-* moxcdone -- set to TRUE to quit
-* eventtime -- ideallized current time
-*
-*****************************************************************************/
-
-#define SAFEMOXC TRUE
-#define BREAKKEY 0x03
-
-int moxcdone; /* flag to halt execution */
-time_type eventtime; /* time of current call -- used to avoid */
- /* timing errors due to finite execution speed */
-time_type virttime; /* virtual time of current call */
-timebase_type timebase; /* time base of current call */
-int mididecode = TRUE; /* whether to decode messages or just call midievent */
-
-int debug = FALSE;
-int moxcdebug = FALSE;
-time_type next_wakeup;
-timebase_type default_base;
-
-#ifdef AMIGA
-int pub_port_signal;
-struct MsgPort pub_port;
-#endif
-
-/*****************************************************************************
-* Routines local to this module
-*****************************************************************************/
-
-private void callrun();
-private void decode();
-private void moxcterm();
-
-/****************************************************************************
-* callallcancel
-* Inputs:
-* timebase_queue
-* Effect:
-* return all calls to free list
-* Implementation:
-* If timebase_queue is not empty, there's a pending call. Remove the call
-* (not necessarily the timebase) and repeat.
-****************************************************************************/
-
-void callallcancel()
-{
- if (moxcdebug) gprintf(GDEBUG, "cancel all calls\n");
- while (timebase_queue) {
- timebase = timebase_queue;
- timebase_queue = timebase->next;
- while (timebase->heap_size > 0) {
- call_free(remove_call(timebase));
- }
- insert_base(timebase);
- }
-}
-
-/* catchup -- bring current timebase up to date by running its calls */
-/**/
-void catchup()
-{
- register call_type call;
- /* Remember where we're going in virtual time because setting the
- * rate will also modify timebase->virt_base. We don't want catchup
- * to stop short:
- */
- time_type target_time = timebase->virt_base;
- /* remember timebase here because it's possible that a call will do
- * a timebase_use() and change it:
- */
- register timebase_type my_base = timebase;
-
- while (my_base->heap_size != 0 &&
- (my_base->heap[1]->u.e.time < target_time)) {
- /* eventtime is the real time at which something was scheduled */
- eventtime = (my_base->next_time) >> 8;
- call = remove_call(my_base);
- virttime = call->u.e.time;
- (*(call->u.e.routine))(CALLARGS(call));
- call_free(call);
- }
- /* now that we've possibly pulled events out of the timebase, adjust
- * the position in the timebase queue (and possibly remove it).
- */
- remove_base(my_base);
- insert_base(my_base);
-}
-
-
-
-/****************************************************************************
-* cause
-* Inputs:
-* delay_type (long) delay: time before this call should occur
-* int (*routine)(): routine that implements the call
-* int p1 through p8: parameters to pass to routine
-* Effect:
-* builds a call and puts it in pending queue for later scheduling
-****************************************************************************/
-
-#ifndef DOTS_FOR_ARGS
-void cause(delay, routine, p)
- delay_type delay;
- int (*routine)();
- call_args_node p;
-#else
-#include <stdarg.h>
-
-void cause(delay_type delay, ...)
-/* note: the routine parameter is not checked because any routine type can
- be passed as a parameter, but in the call struct it's an int (*)()
- */
-#endif
-{
- register call_type call = call_alloc();
-#ifdef DOTS_FOR_ARGS
- va_list xp;
-#endif
-
- if (!call) {
- gprintf(ERROR, "cause: out of memory\n");
- EXIT(1);
- }
-
-#ifdef DOTS_FOR_ARGS
- call->u.e.time = virttime + delay;
- call->u.e.priority = 128; /* default priority */
- va_start(xp, delay);
- call->u.e.routine = (int (*)()) va_arg(xp, long *);
- call->u.e.p = va_arg(xp, call_args_node);
- va_end(xp);
-#else
- call->u.e.time = virttime + delay;
- call->u.e.priority = 128; /* default priority */
- call->u.e.routine = routine;
- call->u.e.p = p;
-#endif
-#ifdef SAFEMOXC
- if (call->u.e.routine == 0) {
- gprintf(ERROR,"cause called with NULL routine\n");
- EXIT(1);
-#ifndef DOS /* IBM allows odd addresses */
- } else if (((long) call->u.e.routine) & 1) {
- gprintf(ERROR, "cause called with bad routine address: 0x%lx\n",
- call->u.e.routine);
- EXIT(1);
-#endif
- }
-#endif
- /* put call in default queue */
- callinsert(timebase, call);
- if (moxcdebug) {
- gprintf(GDEBUG,"(cause) call is pending on timebase 0x%x:\n", timebase);
- callshow(call);
- }
-}
-
-/****************************************************************************
-* causepri
-* Inputs:
-* int delay: time before this call should occur
-* int pri: priority, lowest priority goes first
-* int (*routine)(): routine that implements the call
-* int p1 through p8: parameters to pass to routine
-* Effect:
-* builds a call and puts it in pending queue for later scheduling
-****************************************************************************/
-
-#ifndef DOTS_FOR_ARGS
-void causepri(delay, pri, routine, p)
- delay_type delay;
- int pri;
- int (*routine)();
- call_args_node p;
-#else
-/* already included stdarg.h */
-
-void causepri(delay_type delay, int pri, ...)
-#endif
-{
- register call_type call = call_alloc();
-#ifdef DOTS_FOR_ARGS
- va_list xp;
-#endif
-
- if (!call) {
- gprintf(ERROR, "cause: out of memory\n");
- EXIT(1);
- }
-
-#ifdef DOTS_FOR_ARGS
- call->u.e.time = virttime + delay;
- call->u.e.priority = pri; /* default priority */
- va_start(xp, pri);
- call->u.e.routine = (int (*)()) va_arg(xp, long *);
- call->u.e.p = va_arg(xp, call_args_node);
- va_end(xp);
-#else
- call->u.e.time = virttime + delay;
- call->u.e.priority = pri; /* default priority */
- call->u.e.routine = routine;
- call->u.e.p = p;
-#endif
-#ifdef SAFEMOXC
- if (call->u.e.routine == 0) {
- gprintf(ERROR,"cause called with NULL routine\n");
- EXIT(1);
-#ifndef DOS /* IBM allows odd addresses */
- } else if (((long) call->u.e.routine) & 1) {
- gprintf(ERROR, "causepri called with bad routine address: 0x%lx\n",
- call->u.e.routine);
- EXIT(1);
-#endif
- }
-#endif
- /* put call in default queue */
- callinsert(timebase, call);
- if (moxcdebug) {
- gprintf(GDEBUG,"(cause) call is pending:");
- callshow(call);
- }
-}
-
-/****************************************************************************
-* callrun
-* Inputs:
-* call_type call: the call to execute
-* Effect:
-* executes the previously scheduled call call and deallocates it
-****************************************************************************/
-
-private void callrun()
-{
- call_type call;
- if (moxcdebug) {
- gprintf(GDEBUG,"(callrun) running a call: \n");
- }
- /* remove from head of queue */
- while (!timebase_queue) gprintf(TRANS, "callrun fatal error\n");
- timebase = timebase_queue;
- timebase_queue = timebase->next;
-
- if (debug) gprintf(TRANS, "callrun time %ld\n", timebase->next_time);
- eventtime = (timebase->next_time) >> 8; /* real time of the call */
-
- /* remove first call from timebase */
- call = remove_call(timebase);
- if (debug) gprintf(TRANS, "callrun call %lx\n", (ulong)call);
- insert_base(timebase);
- virttime = call->u.e.time; /* virtual time of the call */
- if (moxcdebug) callshow(call);
- (*(call->u.e.routine))(CALLARGS(call));
- call_free(call);
-}
-
-/****************************************************************************
-* m_restuntil
-* Inputs:
-* int time: call time to rest until
-* Effect:
-* Waits until the specified time has been reached (absolute time).
-* Other "caused" calls will take place during the rest provided
-* this routine is called from "mainscore" (see m_rest description).
-****************************************************************************/
-void m_restuntil(time)
- time_type time;
-{
- time = virt_to_real(timebase, time);
- while(time > gettime()) {
- moxcwait(time);
- }
-}
-
-
-/****************************************************************************
-* m_rest
-* Inputs:
-* int time: Amount of time to rest
-* Effect:
-* Waits until the amount of time specified has lapsed
-* Assumes:
-* Must not be called from a "caused" routine. Must only be called
-* from "mainscore" or a routine called directly or indirectly from
-* "mainscore" without using "cause".
-****************************************************************************/
-
-void m_rest(time)
- time_type time;
-{
- m_restuntil(time + real_to_virt(timebase, gettime()));
-}
-
-/****************************************************************************
-* moxcinit
-* Inputs:
-* int argc: number of command line arguments
-* char * argv: command line argument array
-* Effect: initializes moxc system
-****************************************************************************/
-
-boolean moxcinit(argc, argv)
- int argc;
- char * argv[];
-{
- meminit();
- io_init();
-#ifdef AMIGA
- pub_port_signal = AllocSignal(-1L);
- pub_port.mp_Node.ln_Type = NT_MSGPORT;
- pub_port.mp_SigBit = pub_port_signal;
- pub_port.mp_SigTask = FindTask(0L);
- pub_port.mp_Flags = PA_SIGNAL;
- pub_port.mp_Node.ln_Name = "CMTcmdport";
- pub_port.mp_MsgList.lh_Head =
- (struct Node *)&pub_port.mp_MsgList.lh_Tail;
- pub_port.mp_MsgList.lh_TailPred =
- (struct Node *)&pub_port.mp_MsgList.lh_Head;
- event_mask |= (1L << pub_port_signal);
- AddPort(&pub_port);
-#endif
- cu_register((cu_fn_type) moxcterm, NULL);
- cl_syntax(midifns_syntax);
- cl_syntax("debug<s>Enable verbose debugging;\
- moxc<s>Enable moxc debug mode;");
- cl_syntax(app_syntax);
-
- if (!cl_init(argv, argc)) {
- /* make sure user gets to read the error message(s): */
- gprintf(TRANS, "Type anything to exit...");
-#ifdef DOS
- wait_ascii();
-#else
- ggetchar();
-#endif
- return FALSE;
- }
- debug = cl_switch("debug");
- moxcdebug = cl_switch("moxc");
- timebase = default_base = timebase_create(100);
- default_base->rate = 2560L;
-
- eventtime = 0L;
- next_wakeup = MAXTIME;
- musicinit();
-#ifdef POSICIONADOR_3D
- ptInit();
-#endif
- moxcdone = 0;
- return TRUE;
-}
-
-
-/****************************************************************************
-* moxcwait
-* Input:
-* -1 => wait for next keyboard or midi event or queued event
-* 0 => don't wait
-* T => wait up to T for next keyboard or midi event or queued event
-* (this is used by m_restuntil)
-* Assume: there is work to do (npending > 0 || evqueue) ??
-* Effect: dispatch on user inputs, cause calls
-****************************************************************************/
-
-void moxcwait(dateoftimeout)
- time_type dateoftimeout;
-{
- time_type maxtime = dateoftimeout;
-
- if (timebase_queue) {
- if ((timebase_queue->next_time >> 8) < maxtime)
- maxtime = (timebase_queue->next_time) >> 8;
- }
- eventwait(maxtime);
- decode();
-}
-
-
-/****************************************************************************
-* decode
-* Effect: dispatch on user inputs, cause calls
-****************************************************************************/
-
-private void decode()
-{
- /* It is important that midi_data is on a word boundary because we
- copy to it by doing a word transfer.
- */
- byte midi_data[4];
- time_type now;
- byte code;
- char k;
-#ifdef AMIGA
- struct cmd_msg *cmd;
-#endif
-
- now = gettime();
- timebase = default_base;
- eventtime = now;
- virttime = 0L;
-
-/* gprintf(GDEBUG, "decode at time %ld\n", now); */
-
-/**********************************************
-* poll for and decode midi keyboard input
-***********************************************/
-
- while (getbuf(FALSE, midi_data)) {
- /* only divide if necessary, divides take 100us on 8MHz 68000: */
- if (virttime == 0)
- virttime = real_to_virt(default_base, now);
-
- /* short-circuit midi decoding */
- if (!mididecode) {
- midievent(midi_data);
- continue;
- }
-
- code = midi_data[0] & MIDI_CODE_MASK;
- if (code == MIDI_ON_NOTE) {
- if (midi_data[2] == 0) { /* velocity 0 -> note off */
- keyup(1+(midi_data[0] & MIDI_CHN_MASK), midi_data[1]);
- } else {
- keydown((midi_data[0] & MIDI_CHN_MASK)+1,
- midi_data[1], midi_data[2]);
- }
- } else if (code == MIDI_OFF_NOTE) {
- keyup((midi_data[0] & MIDI_CHN_MASK)+1, midi_data[1]);
- } else if (code == MIDI_TOUCH) {
- touchchange((midi_data[0] & MIDI_CHN_MASK)+1,midi_data[1]);
- } else if (code == MIDI_BEND) {
- bendchange((midi_data[0] & MIDI_CHN_MASK)+1,
- midi_data[1] + (midi_data[2] << 7));
- } else if (code == MIDI_CTRL && midi_data[1] == SUSTAIN) {
- if (midi_data[2] == 0) pedup((midi_data[0] & MIDI_CHN_MASK) + 1);
- else peddown((midi_data[0] & MIDI_CHN_MASK) + 1);
- } else if (code == MIDI_CTRL) {
- ctrlchange((midi_data[0] & MIDI_CHN_MASK) + 1,
- midi_data[1], midi_data[2]);
- } else if (code == MIDI_CH_PROGRAM) {
- prgmchange((midi_data[0] & MIDI_CHN_MASK) + 1, midi_data[1] + 1);
-/* think C midi driver doesn't handle sysex the way the Amiga drivers do (yet) */
-#ifndef MACINTOSH
- } else if (code == MIDI_SYSEX) {
- sysex();
-#endif
- }
- }
-
-/**********************************************
-* poll for ASCII keyboard input
-***********************************************/
- while (get_ascii(&k)) {
- virttime = real_to_virt(default_base, now);
- asciievent(k);
- /* if user doesn't handle abort char in asciievent,
- we should exit now to avoid an infinite loop */
- if (abort_flag) EXIT(1);
- }
-
-#ifdef POSICIONADOR_3D
-/**********************************************
-* poll for posicionador tridimensionale input
-**********************************************/
- {
- pt_value pt_data;
- while (ptGetValue(&pt_data)) {
- /* only divide if necessary, divides take 100us on 8MHz 68000: */
- if (virttime == 0)
- virttime = real_to_virt(default_base, now);
- ptevent(&pt_data);
- }
- }
-#endif /* POSICIONADOR_3D */
-
-#ifdef AMIGA
-/**********************************************
-* poll for proportional controller port
-**********************************************/
- if (prop_1_events) {
- int events;
-
- Disable();
- events = prop_1_events;
- prop_1_events = 0;
- Enable();
-
- if (events & BUTTON_1_RIGHT_CHANGE)
- buttonchange(3, prop_1_right_button);
- if (events & BUTTON_1_LEFT_CHANGE)
- buttonchange(2, prop_1_left_button);
- if (events & PROP_1_LEFT_CHANGE)
- propchange(2, prop_1_left_data);
- if (events & PROP_1_RIGHT_CHANGE)
- propchange(3, prop_1_right_data);
- }
-
-/**********************************************
-* poll for input from public command port
-***********************************************/
-
- while (cmd = (struct cmd_msg *) GetMsg(&pub_port)) {
- struct symb_descr *desc = &HASHENTRY(lookup(cmd->symbol_name));
-/* gprintf(TRANS, "got %lx (%s) from pub_port\n", cmd, cmd->symbol_name); */
- virttime = real_to_virt(default_base, now);
- if (!desc) {
- gprintf(TRANS, "Error, symbol %s undefined.\n", cmd->symbol_name);
- } else if (desc->symb_type != cmd->symb_type) {
- gprintf(TRANS, "Error, wrong type for symbol %s\n",
- cmd->symbol_name);
- } else if (cmd->symb_type == fn_symb_type) {
-/* gprintf(TRANS, "Calling routine\n"); */
- (*(desc->ptr.routine))(
- (int) cmd->the_args[0], (int) cmd->the_args[1],
- (int) cmd->the_args[2], (int) cmd->the_args[3],
- (int) cmd->the_args[4], (int) cmd->the_args[5],
- (int) cmd->the_args[6], (int) cmd->the_args[7]
- );
- } else if (cmd->symb_type == var_symb_type) {
- *(desc->ptr.intptr) = (int) cmd->the_args[0];
- } else if (cmd->symb_type == vec_symb_type) {
- if (cmd->the_args[0] >= desc->size) {
- gprintf(TRANS, "Error: Vector %s is of size %d\n",
- cmd->symbol_name, desc->size);
- } else {
- (desc->ptr.intptr)[cmd->the_args[0]] = cmd->the_args[1];
-/* gprintf(TRANS, "vec: setting %lx\n",
- &(desc->ptr.intptr)[cmd->the_args[0]]); */
- }
- } else gprintf(TRANS, "Symbol Type Error\n");
- ReplyMsg(&(cmd->msg));
- }
-#endif
-/**********************************************
-* poll for next call in queue
-***********************************************/
- now = (now + 1) << 8; /* shift because next_time is also scaled,
- * add 256 because next_time has added priority */
- if (debug)
- gprintf(TRANS, "now %ld next_time %ld\n",
- now, (timebase_queue ? timebase_queue->next_time : 1234));
- /* give pending events priority, but every 100 events, loop to allow
- input processing (user may want to give a "quit" command) */
- for (k = 0;
- k < 100 && timebase_queue && (now > timebase_queue->next_time);
- k++) {
- callrun();
- }
-/*******************
-* flush text output
-********************/
-#ifdef MACINTOSH_OR_UNIX
- gflush();
-#endif
-}
-
-
-/****************************************************************************
-* quit
-* Effect: tells moxc to shut down
-****************************************************************************/
-
-void quit()
-{
- moxcdone = TRUE;
-}
-
-/* moxcrun -- schedule events until done */
-/**/
-void moxcrun()
-{
- moxcdone = FALSE;
- while (!moxcdone && !abort_flag) { /* test for finish */
- if (!timebase_queue) moxcdone = TRUE;
- else moxcwait(MAXTIME); /* do work */
- }
-}
-
-/* moxcterm -- clean up after moxcinit */
-/**/
-private void moxcterm()
-{
-#ifdef AMIGA
- FreeSignal((long) pub_port_signal);
- RemPort(&pub_port);
-#endif
-}
diff --git a/lib-src/libnyquist/cmt/moxc.h b/lib-src/libnyquist/cmt/moxc.h
deleted file mode 100644
index 975ebb9..0000000
--- a/lib-src/libnyquist/cmt/moxc.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/* moxc.h -- functions exported by moxie.c */
-/* Copyright 1989 Carnegie Mellon University */
-
-#define maxparms 8
-
-extern timebase_type timebase;
-extern time_type eventtime, virttime;
-extern int debug;
-extern int mididecode;
-extern int moxcdone;
-
-void catchup(void);
-void callallcancel(void);
-#ifdef DOTS_FOR_ARGS
-void cause(delay_type delay, ...);
-void causepri(delay_type delay, int pri, ...);
-#else
-void cause();
-void causepri();
-#endif
-void m_rest(time_type time);
-void m_restuntil(time_type time);
-void quit(void);
-boolean moxcinit(int argc, char * argv[]);
-void moxcrun(void);
-void moxcwait(time_type dateoftimeout);
-
-void asciievent(char k);
-void bendchange(int chan, int value);
-void coda(void);
-void ctrlchange(int chan, int ctrl, int value);
-void keydown(int chan, int key, int vel);
-void keyup(int chan, int key);
-void mainscore(void);
-void midievent(byte midi_data[4]);
-void peddown(int chan);
-void pedup(int chan);
-void prgmchange(int chan, int prgm);
-void touchchange(int chan, int value);
-#ifdef AMIGA
-void buttonchange(int number, int value);
-void propchange(int number, int value);
-#endif
-void sysex(void);
diff --git a/lib-src/libnyquist/cmt/musiprog.h b/lib-src/libnyquist/cmt/musiprog.h
deleted file mode 100644
index ddd9f95..0000000
--- a/lib-src/libnyquist/cmt/musiprog.h
+++ /dev/null
@@ -1,31 +0,0 @@
-/* musiprog.h -- include file for cmt application programs */
-
-#include "stdio.h"
-#include "cext.h"
-#include "midifns.h"
-#include "userio.h"
-#include "timebase.h"
-#include "moxc.h"
-
-/*
- * override the definition of l_rest - l_rest is not recommended because
- * it stops polling for input. If you really want to use it, use #undef
- * to make it visible.
- */
-#define l_rest(d) m_rest(d)
-#define l_restuntil(t) m_restuntil(t)
-
-/*
- * The default implementation of rest() and restuntil() poll for
- * input during the rest. You might call rest() or restuntil() from
- * mainscore(), but it is generally a bad idea to rest at all. If
- * you are in a rest(), you get an event, e.g. keydown(), and you
- * make a nested call to rest(), the original rest will be locked out
- * until the nested one returns. It's better to use cause().
- */
-#define rest(x) l_rest( (long) x )
-#define restuntil(x) l_restuntil( (long) x)
-
-#define repeat(var, count) {int var; for (var=1; var <= count; var++) {
-#define endrep ;}}
-
diff --git a/lib-src/libnyquist/cmt/pitch.h b/lib-src/libnyquist/cmt/pitch.h
deleted file mode 100644
index ab6dd9c..0000000
--- a/lib-src/libnyquist/cmt/pitch.h
+++ /dev/null
@@ -1,9 +0,0 @@
-/* mbc code */
-/* Copyright 1989 Carnegie Mellon University */
-
-typedef struct pitch_struct {
- int ppitch;
- int pbend;
-}
-pitch_table;
-/* end */
diff --git a/lib-src/libnyquist/cmt/record.c b/lib-src/libnyquist/cmt/record.c
deleted file mode 100644
index 44f2373..0000000
--- a/lib-src/libnyquist/cmt/record.c
+++ /dev/null
@@ -1,638 +0,0 @@
-/* record.c -- keyboard to adagio recorder
- * Copyright 1989 Carnegie Mellon University
- *
- * the interface consists of three routines:
- * rec_init() -- initialization
- * rec_event(byte *data) -- called to insert (record) midi data,
- * -- returns FALSE if no more space
- * rec_final() -- called to finish up
- */
-
-/*****************************************************************************
-* Change Log
-* Date | Change
-*-----------+-----------------------------------------------------------------
-* 27-Feb-86 | Created changelog
-* | Use pedal information when computing durations (code taken
-* | from transcribe.c)
-* 23-Mar-86 | Determine size of transcription when rec_init is called.
-* 21-May-86 | Major rewrite to use continuous controls (code taken
-* | from transcribe.c)
-* 1-Aug-87 | F.H. Changed rec_init() to new memory handling.
-* 17-Oct-88 | JCD : portable version.
-* 31-Jan-90 | GWL : cleaned up for LATTICE
-* 30-Jun-90 | RBD : further changes
-* 2-Apr-91 | JDW : further changes
-* 28-Apr-03 | DM : changed for portability; true->TRUE, false->FALSE
-*****************************************************************************/
-
-#include "switches.h"
-
-#include <stdio.h>
-#include <stdlib.h>
-
-#include "cext.h"
-#include "midifns.h"
-#include "userio.h"
-#include "midicode.h"
-#include "record.h"
-#include "cmdline.h"
-
-extern long space; /* how much space is left? */
-
-int debug_rec = FALSE; /* verbose debug flag for this module */
-
-long max_notes = -1L; /* -1 is flag that space must be allocated */
-
-time_type previous_time;
-
-/****************************************************************
-* data structure notes: the midi stream is stored as an array
-* of 4-byte records, each of which is either a time or midi
-* data. Midi data always begins with a control byte (high
-* order bit set), and it is assumed times are positive (high
-* order bit clear), so the two are easy to distinguish
-* IF THE COMPILER PUTS THESE BITS IN THE SAME PLACE. It looks
-* like the high order byte of the time lines up with the last
-* byte of a 4 byte array, so we will always set the high order
-* bit of the last array byte when the first 3 bytes are filled
-* with MIDI data. This is refered to as the "tag" bit.
-* WARNING: Lattice C longs are UNSIGNED, therefore always
-* positive. Test the high order bit with a mask.
-****************************************************************/
-
-#define MIDI_CMD_BIT 0x80
-#define HIGH_BIT 0x80000000
-#define istime(note) (!(((note)->when) & HIGH_BIT))
-
-typedef union note_struct {
- byte n[4];
- long when;
-}
-*note_type, note_node;
-
-private note_type event_buff; /* pointer to allocated buffer */
-private note_type next; /* pointer to next entry in buffer */
-private note_type last; /* pointer to last entry in buffer */
-private int pile_ups; /* inner loop iteration count */
-private int max_pile_up; /* maximum of pile_ups */
-private boolean fixed_octave; /* used to avoid many error messages */
-
-/****************************************************************************
-* Routines local to this module
-****************************************************************************/
-private void bend_filter();
-private void byteorder();
-private void ctrl_filter();
-private int event_bend();
-private void filter();
-private long getdur();
-private long getnext();
-private char map_ctrl();
-private void output();
-
-/****************************************************************************
-* bend_filter
-* Inputs:
-* note_type note: the current note
-* note_type last: the last recorded event
-* long now: the current time
-* Effect:
-* remove pitch bend events in same 0.01 sec time slot
-* Implementation:
-* If the current event is a pitch bend that bends again
-* in the same time slot, make it a no-op by replacing it with
-* the time.
-****************************************************************************/
-
-private void bend_filter(note, last, now)
-note_type note; /* current note */
-note_type last; /* the last recorded event */
-long now; /* the current time */
-{
- /* first see if there is another bend in this time
- * slot.
- */
- note_type note2 = note + 1;
- while (note2 < last) {
- if (istime(note2) && (note2->when > now)) {
- break; /* new time slot */
- }
- else if (note->n[0] == note2->n[0]) {
- note->when = now;
- return; /* found another bend */
- }
- note2++;
- }
-}
-
-/****************************************************************************
-* byteorder
-* Effect:
-* check out assumptions about byte order and placement
-****************************************************************************/
-
-private void byteorder()
-{
- note_node test_event;
- if ((sizeof(test_event) != 4) ||
- (sizeof(test_event.when) != 4) ||
- (sizeof(test_event.n[0]) != 1)) {
- gprintf(ERROR, "implementation error: size problem\n");
- EXIT(1);
- }
- test_event.n[0] = 0x12;
- test_event.n[1] = 0x34;
- test_event.n[2] = 0x56;
- test_event.n[3] = 0x78;
- if ((test_event.when != 0x78563412) &&
- (test_event.when != 0x12345678)) {
- gprintf(ERROR, "implementation error: layout problem\n");
- EXIT(1);
- }
-}
-
-/****************************************************************************
-* ctrl_filter
-* Inputs:
-* note_type note: the current note
-* note_type last: the last recorded event
-* long now: the current time
-* Effect:
-* remove ctrl change events in same 0.01 sec time slot
-* Implementation:
-* If the current event is a control change that changes again
-* in the same time slot, make it a no-op by replacing it with
-* the time.
-****************************************************************************/
-
-private void ctrl_filter(note, last, now)
-note_type note; /* the current note */
-note_type last; /* the last recorded event */
-long now; /* the current time */
-{
- /* see if there is another control change in this time
- * slot.
- */
- note_type note2 = note+1;
- while (note2 < last) {
- if (istime(note2) && (note2->when > now)) {
- break; /* new time slot */
- }
- else if ((note->n[0] == note2->n[0]) &&
- (note->n[1] == note2->n[1])) {
- note->when = now;
- return; /* found another change */
- }
- note2++;
- }
-}
-
-/****************************************************************************
-* event_bend
-* Inputs:
-* note_type note: pointer to a pitch bend event
-* Outputs:
-* returns int: an 8 bit pitch bend number
-****************************************************************************/
-
-private int event_bend(note)
-note_type note;
-{
- return((int) (((note->n[1]) >> 6) + ((note->n[2]) << 1)));
-}
-
-/****************************************************************************
-* filter
-* Inputs:
-* note_type last: the last note recorded
-* Effect: allow only one control change per time slot (0.01 sec)
-* Implementation:
-* call ctrl_filter and bend_filter to overwrite control changes with
-* noop data (the current time is used as a noop)
-****************************************************************************/
-
-private void filter(last)
-note_type last;
-{
- note_type note; /* loop control variable */
- long now=0; /* last time seen */
- int command; /* command pointed to by note */
-
- for (note = event_buff; note <= last; note++) {
- if (istime(note)) {
- now = note->when;
- }
- else {
- command = note->n[0] & MIDI_CODE_MASK;
-
- if (command == MIDI_CTRL &&
- note->n[1] == SUSTAIN) {
- /* do nothing */;
- }
- else if (command == MIDI_CTRL) {
- ctrl_filter(note, last, now);
- }
- else if (command == MIDI_TOUCH) {
- bend_filter(note, last, now); /* bend and touch use the */
- }
- else if (command == MIDI_BEND) { /* same filter routines */
- bend_filter(note, last, now);
- }
- }
- }
-}
-
-
-/****************************************************************************
-* getdur
-* Inputs:
-* int i: index of the note
-* note_type last: pointer to the last event recorded
-* int ped: TRUE if pedal is down at event i
-* long now: the time at event i
-* Outputs:
-* returns long: the duration of note i
-* Assumes:
-* assumes i is a note
-* Implementation:
-* This is tricky because of pedal messages. The note is kept on by
-* either the key or the pedal. Keep 2 flags, key and ped. Key is
-* turned off when a key is released, ped goes off and on with pedal.
-* Note ends when (1) both key and ped are FALSE, (2) key is
-* pressed (this event will also start another note).
-****************************************************************************/
-
-private long getdur(i, last, ped, now)
-int i;
-note_type last;
-int ped;
-long now;
-{
- int key = TRUE; /* flag that says if note is on */
- long start = now;
- int chan = event_buff[i].n[0] & MIDI_CHN_MASK;
- int pitch = event_buff[i].n[1];
- note_type note = &(event_buff[i+1]);
- int noteon; /* TRUE if a noteon message received on chan */
- int keyon; /* TRUE if noteon message had non-zero velocity */
-
- /* search from the next event (i+1) to the end of the buffer:
- */
- for (; note < last; note++) {
- if (istime(note)) {
- now = note->when;
- }
- else {
- noteon = keyon = FALSE;
- if ((note->n[0] & MIDI_CHN_MASK) == chan) {
- noteon = ((note->n[0] & MIDI_CODE_MASK) == MIDI_ON_NOTE) &&
- (note->n[1] == pitch);
- keyon = noteon && (note->n[2] != 0);
- if ((noteon && (note->n[2] == 0)) ||
- (((note->n[0] & MIDI_CODE_MASK) == MIDI_OFF_NOTE) &&
- (note->n[1] == pitch))) key = FALSE;
- if (((note->n[0] & MIDI_CODE_MASK) == MIDI_CTRL) &&
- note->n[1] == SUSTAIN && note->n[2] == 127) ped = TRUE;
- if (((note->n[0] & MIDI_CODE_MASK) == MIDI_CTRL) &&
- note->n[1] == SUSTAIN && note->n[2] == 0) ped = FALSE;
-
- if ((!key && !ped) || keyon)
- return(now - start);
- }
- }
- }
- return(last->when - start);
-}
-
-/****************************************************************************
-* getnext
-* Inputs:
-* int i: the index of the current note
-* note_type last: pointer to last valid data
-* long now: the current time
-* Outputs:
-* returns long: the time of the next note, program, or control change
-* (returns time of last event if nothing else is found)
-****************************************************************************/
-
-private long getnext(i, last, now)
-int i; /* the index of the current note */
-note_type last; /* pointer to last valid data */
-long now; /* the current time */
-{
- i++; /* advance to next item */
- for (; event_buff + i < last; i++) {
- note_type note = &(event_buff[i]);
- int cmd = note->n[0] & MIDI_CODE_MASK;
-
- if (istime(note)) {
- now = note->when;
- }
- else if (((cmd == MIDI_ON_NOTE) &&
- (note->n[2] != 0)) /* note on */ ||
- (cmd == MIDI_CH_PROGRAM) /* program change */ ||
- ((cmd == MIDI_CTRL) &&
- (note->n[1] != SUSTAIN) /* control change */ ) ||
- (cmd == MIDI_TOUCH) ||
- (cmd == MIDI_BEND)) {
- return(now);
- }
- }
- return(last->when);
-}
-
-/****************************************************************************
-* map_ctrl
-* Inputs:
-* int control: a midi control number
-* Outputs:
-* returns char: an adagio control change command letter, EOS if
-* control change is not one of PORTARATE, PORTASWITCH,
-* MODWHEEL, FOOT
-****************************************************************************/
-
-private char map_ctrl(control)
-int control;
-{
- switch (control) {
-/* 'J' is no longer code for PORTARATE
- case PORTARATE:
- return 'J'; */
- case PORTASWITCH:
- return 'K';
- case MODWHEEL:
- return 'M';
- case VOLUME:
- return 'X';
- default:
- return EOS;
- }
-#ifdef LATTICE322
- return EOS; /* make Lattice C type checker happy */
-#endif
-}
-
-/****************************************************************************
-* output
-* Inputs:
-* FILE *fp: an opened file pointer
-* note_type last: the last data in the buffer
-* boolean absflag: set to TRUE if first line of the adagio score should
-* include the absolute time
-* Effect:
-* write adagio file using data in event_buff
-* Implementation:
-* NOTE: put all program changes in rests
-* use N(ext) notation for all timing
-* output no more than one continuous parameter change per
-* clock tick for each continuous change parameter
-****************************************************************************/
-
-private void output(fp, last, absflag)
-FILE *fp;
-note_type last;
-boolean absflag;
-{
- int i; /* loop counter */
- int command; /* the current command */
- int voice; /* the midi channel of the current event */
- int last_velocity = -1; /* used to filter repeated Lnn attributes */
- int last_voice = 0; /* the default adagio channel (1) */
- int ped = FALSE; /* flag maintains state of pedal */
- int how_many = last - event_buff;
- long now=0; /* the time of the next event */
-
- if (fp == NULL) {
- gprintf(ERROR, "internal error: output called with NULL file.\n");
- EXIT(1);
- }
-
- if (debug_rec)
- gprintf(GDEBUG,"hint: if file is not being closed, decrease MAXSPACE\n");
-
-
- fprintf(fp, "!MSEC\n"); /* times will be in milliseconds */
- /* set the initial absolute time, all other times are relative */
-
- if (absflag) {
- now = event_buff[0].when;
- if (now < 0) {
- fprintf(fp, "* First event took place at Adagio time %d,\n",
- (int)now);
- fprintf(fp, "* but Adagio cannot represent negative times,\n");
- fprintf(fp, "* so this entire score will be %d ms late\n",
- (int)-now);
- gprintf(TRANS, "First event took place at Adagio time %d!\n",
- (int)now);
- gprintf(TRANS, "All events times will be %d ms late\n",
- (int)-now);
- now = 0L;
- }
- fprintf(fp, "T%ld ", now);
- }
-
- for (i = 0; i < how_many; i++) {
- if (debug_rec) {
- gprintf(GDEBUG,"ev %d: %x %x %x (%ld)\n", i, event_buff[i].n[0],
- event_buff[i].n[1], event_buff[i].n[2], event_buff[i].when);
- }
-
- if (istime(event_buff+i)) {
- now = event_buff[i].when;
- if (debug_rec) gprintf(GDEBUG,"i = %d, now = %ld\n", i, now);
- } else {
- boolean needs_voice = TRUE;
- command = event_buff[i].n[0] & MIDI_CODE_MASK;
- voice = event_buff[i].n[0] & MIDI_CHN_MASK;
-
- if (command == MIDI_ON_NOTE && event_buff[i].n[2] != 0) {
- int velocity = event_buff[i].n[2];
- write_pitch(fp, event_buff[i].n[1]);
- fprintf(fp, " U%ld", getdur(i, last, ped, now));
- if (last_velocity != velocity) {
- fprintf(fp, " L%d", velocity);
- last_velocity = velocity;
- }
- } else if (command == MIDI_CH_PROGRAM) {
- fprintf(fp, "Z%d", event_buff[i].n[1] + 1);
- } else if (command == MIDI_CTRL &&
- event_buff[i].n[1] == SUSTAIN) {
- ped = (event_buff[i].n[2] != 0);
- needs_voice = FALSE;
- } else if (command == MIDI_CTRL) {
- char c = map_ctrl(event_buff[i].n[1]);
- if (c != EOS) fprintf(fp, "%c%d", c, event_buff[i].n[2]);
- else fprintf(fp, "~%d(%d)", event_buff[i].n[1], event_buff[i].n[2]);
- } else if (command == MIDI_TOUCH) {
- fprintf(fp, "O%d", event_buff[i].n[1]);
- } else if (command == MIDI_BEND) {
- fprintf(fp, "Y%d", event_bend(&event_buff[i]));
- } else if (command == MIDI_ON_NOTE || command == MIDI_OFF_NOTE) {
- needs_voice = FALSE; /* ignore note-offs */
- } else {
- gprintf(ERROR, "Command 0x%x ignored\n", command);
- needs_voice = FALSE;
- }
- if (needs_voice) {
- if (last_voice != voice) {
- fprintf(fp, " V%d", voice + 1);
- last_voice = voice;
- }
- fprintf(fp, " N%d", (int)(getnext(i, last, now) - now));
- fprintf(fp, "\n");
- }
- }
- }
-}
-
-
-/****************************************************************************
-* write_pitch
-* Inputs:
-* FILE *fp: an open file
-* int p: a pitch number
-* Effect: write out the pitch name for a given number
-****************************************************************************/
-
-void write_pitch(FILE *fp, int p)
-{
- static char *ptos[] = {
- "C", "CS", "D", "EF", "E", "F", "FS", "G",
- "GS", "A", "BF", "B" };
- /* avoid negative numbers: adagio can't express lowest octave: */
- while (p < 12) {
- if (!fixed_octave) {
- gprintf(ERROR, "%s%s%s",
- "A low note was transposed up an octave\n",
- "(Adagio cannot express the lowest MIDI octave).\n",
- "This message will appear only once.\n");
- fixed_octave = TRUE;
- }
- p += 12;
- }
- fprintf(fp, "%s%d", ptos[p % 12], (p / 12) - 1);
-}
-
-/**********************************************************************
-* rec_final
-* Inputs:
-* boolean absflag: output absolute time of first note if TRUE
-* Effect:
-* Write recorded data to a file
-**********************************************************************/
-
-void rec_final(FILE *fp, boolean absflag)
-{
- next->when = gettime();
- last = next;
- if (debug_rec) gprintf(GDEBUG,"max_pile_up = %d, ", max_pile_up);
- gprintf(TRANS,"%ld times and events recorded.\n",
- (long) (last - event_buff));
- filter(last);
- output(fp, last, absflag);
- fclose(fp);
- FREE(event_buff);
- max_notes = -1;
-}
-
-/****************************************************************************
-* rec_init
-* Inputs:
-* char *file: pointer to file name from command line (if any)
-* boolean bender: TRUE if pitch bend should be enabled
-* Outputs:
-* return TRUE if initialization succeeds
-* Effect:
-* prepares module to record midi input
-****************************************************************************/
-
-/* ENOUGH_ROOM says if we have room for 10000 events + 10000 timestamps =
- * 20000 note_struct's, then that's "enough room" for recording a sequence.
- * If more ram is available, it won't be used. If less is available, we'll
- * use as much as we can get, minus "SPACE_FOR_PLAY", which leaves a little
- * bit of spare ram in case Moxc or stdio need to allocate some space.
- * For DOS, we limit recording space to 64K.
- */
-#ifdef DOS
-#define ENOUGH_ROOM 64000L
-#else
-#define ENOUGH_ROOM (20000L * sizeof(union note_struct))
-#endif
-
-
-boolean rec_init(boolean bender)
-{
- size_t biggestChunk, spaceForRecord;
-
- debug_rec = cl_switch("debug");
- byteorder();
- pile_ups = 0;
- max_pile_up = 0;
- previous_time = (unsigned) -1L; /* this will force putting in initial timestamp */
- fixed_octave = FALSE;
-
- if (max_notes == -1) { /* allocate space 1st time rec_init called */
- biggestChunk = AVAILMEM;
- if (biggestChunk <= SPACE_FOR_PLAY) {
- /* not enough memory; give up */
- return(FALSE);
- }
- else {
- spaceForRecord =
- MIN((biggestChunk - SPACE_FOR_PLAY), ENOUGH_ROOM);
- /* leave SPACE_FOR_PLAY contiguous bytes of memory */
- }
- max_notes = spaceForRecord / sizeof(note_node);
- /* gprintf(GDEBUG,"max_notes = %d\n", max_notes);*/
- event_buff = (note_type) MALLOC(spaceForRecord);
- if (event_buff == NULL) {
- /* should never happen */
- gprintf(FATAL, "Implementation error (record.c): getting memory.");
- return FALSE;
- }
- }
- next = event_buff;
- last = event_buff + max_notes - 2; /* it is critical that last not point
- * to the very last storage loc */
- midi_cont(bender);
- return((boolean)(max_notes > 10));
- /* it would be silly to record with only room enough for 10 notes! */
-}
-
-
-/****************************************************************************
-* rec_event
-* Inputs:
-* long time: the current time
-* long data: midi data to record
-* Outputs:
-* returns FALSE if there is no more memory
-* Effect: reads and stores any input
-* Implementation:
-* time stamps and midi events share the same buffer of 4-byte events
-* save time at most once per call to rec_poll
-* save time only if it changes
-****************************************************************************/
-
-boolean rec_event(long *data, time_type time)
-{
- /* can't allow negative time because sign bit distinguishes
- * data from time: */
- if (time < 0) time = 0;
-
- if (previous_time != time) {
- next++->when = previous_time = time;
- if (next >= last) goto overflow;
- }
-
- next->when = *data;
- next++->n[3] = MIDI_CMD_BIT; /* set tag bit */
- if (next >= last) goto overflow;
- return TRUE;
-
-overflow:
- next = last; /* last doesn't really point to last storage */
- gprintf(ERROR, "No more memory.\n");
- return FALSE;
-}
diff --git a/lib-src/libnyquist/cmt/record.h b/lib-src/libnyquist/cmt/record.h
deleted file mode 100644
index de1479d..0000000
--- a/lib-src/libnyquist/cmt/record.h
+++ /dev/null
@@ -1,6 +0,0 @@
-/* Copyright 1989 Carnegie Mellon University */
-
-boolean rec_init(boolean bender);
-boolean rec_event(long *data, time_type time);
-void rec_final(FILE *fp, boolean absflag);
-void write_pitch(FILE *fp, int p);
diff --git a/lib-src/libnyquist/cmt/seq.c b/lib-src/libnyquist/cmt/seq.c
deleted file mode 100644
index eb7fc04..0000000
--- a/lib-src/libnyquist/cmt/seq.c
+++ /dev/null
@@ -1,1210 +0,0 @@
-/* seq.c -- implement adagio scores as abstract data type */
-
-/*****************************************************************************
-* Change Log
-* Date | Change
-*-----------+-----------------------------------------------------------------
-* 2-Apr-91 | JDW : further changes
-* 16-Feb-92 | GWL : use reg_timebase in seq_play()
-* 28-Apr-03 | DM : false->FALSE, true->TRUE, portability changes
-* 19-May-03 | RBD : no longer assume seq->current remains untouched between
-* | note inserts
-*****************************************************************************/
-
-#include "stdio.h"
-#include "cext.h"
-#include "userio.h"
-#include "midicode.h"
-#include "midifns.h"
-#include "timebase.h"
-#include "moxc.h"
-#include "seq.h"
-#include "string.h"
-
-extern int moxcdebug;
-extern timebase_type default_base;
-
-boolean seq_print = FALSE; /* debugging print switch */
-
-seq_type sequence; /* this is a global to be accessed by routines called
- * from the sequence */
-
-/* clock state: */
-time_type clock_ticksize; /* millisec per tick shifted 16 bits */
-boolean clock_running = FALSE; /* TRUE if clock is running */
-boolean external_midi_clock = FALSE;
-boolean suppress_midi_clock = FALSE;
-
-private void insert_event();
-private void process_event();
-
-private char *chunk_alloc();
-private void clock_tick();
-private void ramp_event(seq_type seq, event_type event, unsigned int value,
- unsigned int to_value, int increment, time_type step, int n);
-/*private*/ void send_macro();
-
-/* chunk_alloc -- allocate data for a sequence */
-/*
- * NOTE: This assumes one chunk is already allocated.
- * The first chunk holds shared sequence information in
- * the info struct, and by convention this is always in
- * the first chunk.
- */
-private char *chunk_alloc(seq_type seq, int size)
-{
- chunk_type chunk = seq->chunklist->u.info.last_chunk;
- /* gprintf(TRANS, "chunk_alloc: seq %lx size %d\n", seq, size); */
- if (size & 1) size++; /* make it even */
- if (chunk->free + size >= CHUNK_SIZE) {
- chunk_type new_chunk = chunk_create(FALSE);
- if (!chunk) {
- gprintf(FATAL, "Out of memory while reading seq\n");
- return NULL;
- }
- /* add new_chunk to chunk chain */
- seq->chunklist->u.info.last_chunk = new_chunk;
- chunk->next = new_chunk;
- chunk = new_chunk;
- }
- chunk->free += size;
- return &(chunk->u.data[chunk->free - size]);
-}
-
-
-/* chunk_create -- create a new chunk for seq data */
-/*
- * If this is the first chunk, set first_flag to reserve
- * space for the info structure.
- */
-chunk_type chunk_create(boolean first_flag)
-{
- chunk_type result = (chunk_type) memget(sizeof(chunk_node));
- if (result) {
- result->next = NULL;
- result->u.info.refcount = 1; /* pre-initialize for caller */
- result->free = 0;
- if (first_flag) {
- result->free = sizeof(struct info_struct);
- result->u.info.last_chunk = result;
- result->u.info.dictionary = NULL;
- result->u.info.eventlist = NULL;
- result->u.info.ctrlcount = 0;
- result->u.info.notecount = 0;
- result->u.info.duration = 0;
- result->u.info.used_mask = 0;
- }
- }
- /* gprintf(TRANS, "chunk_create: got %lx (size %d)\n", */
- /* result, sizeof(chunk_node)); */
- return result;
-}
-
-/* clock_tick -- advance the clock and send a tick */
-/**/
-private void clock_tick(seq, fraction)
- seq_type seq;
- time_type fraction;
-{
- int delay;
- fraction += clock_ticksize;
- delay = fraction >> 16;
- fraction &= 0xFFFF;
- if (seq->runflag && clock_ticksize && seq->note_enable) {
- midi_clock();
- cause((delay_type)delay, clock_tick, seq, fraction);
- } else {
- clock_running = FALSE;
- midi_stop();
- midi_clock(); /* stop takes effect on next clock, so provide one */
- }
-}
-
-private void cycle(seq)
- seq_type seq;
-{
- seq_reset(seq);
- seq_play(seq);
-}
-
-
-
-/****************************************************************************
-* event_create
-* Inputs:
-* seq_type seq: the seq to hold the event
-* int size: the size of the event in bytes
-* time_type etime: the time of the event
-* int eline: the line number of the event
-* Returns:
-* event_type: a new event structure or
-* NULL if there is not enough memory left
-* Effect:
-* allocates memory from the chunk, then heap as needed
-* Implementation:
-* to reduce the per block storage overhead, we allocate memory in
-* large chunks and do our own allocation. Allocate from first
-* chunk first. If full, allocate a new chunk.
-* WARNING: this implementation assumes that individual events are never freed!!
-****************************************************************************/
-
-private event_type event_create(seq, size, etime, eline)
- seq_type seq;
- int size;
- time_type etime;
- int eline;
-{
- event_type result = (event_type) chunk_alloc(seq, size);
- if (result) {
- result->ntime = etime;
- result->nline = eline;
- /* since we know the time, we can insert now: */
- insert_event(seq, result);
- seq_duration(seq) = MAX(seq_duration(seq), etime);
- }
- return result;
-}
-
-
-/* insert_call -- add a call event to the seq */
-/**/
-event_type insert_call(seq, ctime, cline, voice, addr, value, n)
- seq_type seq;
- time_type ctime;
- int cline;
- int voice;
- int (*addr)();
- long value[SEQ_MAX_PARMS];
- int n;
-{
- int i;
- register event_type event = event_create(seq, callsize, ctime, cline);
- if (seq_print) {
- gprintf(TRANS,
- "call(%lx): time %ld, line %d, voice %d, fn %lx,\n\tvalues:",
- event, ctime, cline, voice, addr);
- for (i = 0; i < n; i++) gprintf(TRANS, " %ld", value[i]);
- gprintf(TRANS, "\n");
- }
- if (event) {
- seq_used_mask(seq) |= 1 << (voice - 1);
- event->nvoice = ctrl_voice(ESC_CTRL, voice);
- event->value = CALL_VALUE;
- event->u.call.routine = addr;
- /* save the arguments */
- for (i = 0; i < n; i++) event->u.call.args.a[i] = value[i];
- seq_ctrlcount(seq)++;
- }
- return event;
-}
-
-
-/* insert_clock -- add a clock cmd to the seq */
-/**/
-event_type insert_clock(seq, ctime, cline, ticksize)
- seq_type seq;
- time_type ctime;
- int cline;
- time_type ticksize;
-{
- register event_type event = event_create(seq, clocksize, ctime, cline);
-
- if (seq_print) {
- gprintf(TRANS, "clock(%lx): time %ld, line %d\n", event, ctime, cline);
- }
- if (event) {
- event->nvoice = ctrl_voice(ESC_CTRL, 1);
- event->value = CLOCK_VALUE;
- event->u.clock.ticksize = ticksize;
- seq_ctrlcount(seq)++;
- }
- return event;
-}
-
-
-/* insert_ctrl -- add a control to the seq */
-/**/
-event_type insert_ctrl(seq, ctime, cline, ctrl, voice, value)
- seq_type seq;
- time_type ctime;
- int cline;
- int ctrl;
- int voice;
- int value;
-{
- register event_type event = event_create(seq, ctrlsize, ctime, cline);
- if (seq_print) {
- gprintf(TRANS,
- "ctrl(%lx): time %ld, line %d, ctrl %d, voice %d, value %d\n",
- event, ctime, cline, ctrl, voice, value);
- }
- if (event) {
- seq_used_mask(seq) |= 1 << (voice - 1);
- event->nvoice = ctrl_voice(ctrl, voice);
- event->value = value;
- seq_ctrlcount(seq)++;
- }
- return event;
-}
-
-
-/* insert_ctrlramp -- add a control ramp event to the seq */
-/**/
-event_type insert_ctrlramp(seq, rtime, rline, voice, step, dur, ctrl, v1, v2)
- seq_type seq;
- time_type rtime;
- int rline;
- int voice;
- time_type step;
- time_type dur;
- int ctrl;
- int v1, v2;
-{
- register event_type event = event_create(seq, ctrlrampsize, rtime, rline);
- if (seq_print) {
- gprintf(TRANS,
- "ctrlramp(%lx): time %ld, line %d, step %ld, dur %ld, ctrl %d, voice %d\n",
- event, rtime, rline, step, dur, ctrl, voice);
- gprintf(TRANS, "\tfrom %d to %d\n", v1, v2);
- }
-
- if (event) {
- seq_used_mask(seq) |= 1 << (voice - 1);
- event->nvoice = ctrl_voice(ESC_CTRL, voice);
- event->value = CTRLRAMP_VALUE;
- if (dur <= 0) dur = 1L; /* don't allow zero duration */
- event->u.ramp.dur = dur;
- event->u.ramp.ctrl = ctrl;
- if (step <= 0) step = 1; /* don't allow zero step size */
- event->u.ramp.step = (short) step;
- event->u.ramp.u.ctrl.from_value = v1;
- event->u.ramp.u.ctrl.to_value = v2;
- seq_ctrlcount(seq)++;
- seq_duration(seq) = MAX(seq_duration(seq), rtime + dur);
- }
- return event;
-}
-
-
-/* insert_def -- add a definition to the dictionary */
-/**/
-def_type insert_def(seq, symbol, definition, deflen)
- seq_type seq;
- char *symbol;
- unsigned char *definition;
- int deflen;
-{
- int i;
- def_type defn = (def_type) chunk_alloc(seq, sizeof(def_node));
- defn->symbol = chunk_alloc(seq, strlen(symbol) + 1);
- defn->definition = (unsigned char *) chunk_alloc(seq, deflen);
- strcpy(defn->symbol, symbol);
- for (i = 0; i < deflen; i++) {
- defn->definition[i] = definition[i];
- }
- defn->next = seq_dictionary(seq);
- seq_dictionary(seq) = defn;
- if (seq_print) {
- gprintf(TRANS, "def(%ld): symbol %s defn \n", defn, symbol);
- for (i = 0; i < deflen; i++) gprintf(TRANS, "%x", definition[i]);
- gprintf(TRANS, "\n");
- }
- return defn;
-}
-
-
-/* insert_deframp -- add a def ramp event to the seq */
-/**/
-event_type insert_deframp(seq, rtime, rline, voice, step, dur,
- def, nparms, parms, parm_num, to_value)
- seq_type seq;
- time_type rtime;
- int rline;
- int voice;
- time_type step;
- time_type dur;
- def_type def;
- int nparms; /* number of parameters for macro */
- short parms[]; /* actual parameter vector */
- int parm_num; /* which of the actual parameters to ramp */
- int to_value; /* final destination of ramp */
-{
- register event_type event = event_create(seq, deframpsize, rtime, rline);
- if (seq_print) {
- int i;
- gprintf(TRANS,
- "deframp(%ld): time %ld, line %d, voice %d, step %ld, dur %ld\n",
- event, rtime, rline, voice, step, dur);
- gprintf(TRANS, "def %ld, parms");
- for (i = 0; i < nparms; i++) gprintf(TRANS, " %d", parms[i]);
- gprintf(TRANS, "parm_num %d to %d\n", parm_num, to_value);
- }
- if (event) {
- int i;
- seq_used_mask(seq) |= 1 << (voice - 1);
- event->nvoice = ctrl_voice(ESC_CTRL, voice);
- event->value = DEFRAMP_VALUE;
- if (dur <= 0) dur = 1L; /* don't allow zero duration */
- event->u.ramp.dur = dur;
- event->u.ramp.ctrl = 0;
- if (step <= 0) step = 1; /* don't allow zero step size */
- event->u.ramp.step = (short) step;
- event->u.ramp.u.def.definition = def->definition;
- for (i = 0; i < nmacroparms; i++) {
- event->u.ramp.u.def.parameter[i] = (i < nparms ? parms[i] : 0);
- }
- event->u.ramp.u.def.parm_num = parm_num;
- event->u.ramp.u.def.to_value = to_value;
- seq_ctrlcount(seq)++;
- seq_duration(seq) = MAX(seq_duration(seq), rtime + dur);
- }
- return event;
-}
-
-
-/****************************************************************************
-* insert_event
-* Inputs:
-* seq_type seq: where to put the event
-* event_type event: the event to insert
-* Effect:
-* inserts event into the event list
-* NOTE: it is inserted *after* previously inserted events with the same time
-* Implementation:
-* adagio files often contain many independent voices. Although each voice
-* consists of events in sequence, the voices need not be inter-twined in
-* the input file. Rather, all the events of voice 1 appear followed by all
-* the events of voice 2, and so forth. As phase one merges these event
-* sequences, it must make many passes over an increasingly long list of
-* events: expensive if we always start from the beginning of the list!
-* we can exploit the fact that each voice is sequential by starting the
-* search for the proper point of insertion at the last event inserted.
-* the variable "last_event" is used to remember this hint. We could
-* also snapshot "last_event" in "ref_event" when a !tempo or !rate
-* command occurs as another hint, but we don't.
-****************************************************************************/
-
-private void insert_event(seq, event)
- seq_type seq;
- register event_type event;
-{
- event_type *evlptr = &(seq_eventlist(seq));
- if ((*evlptr == NULL) ||
- (event->ntime < (*evlptr)->ntime)) {
- /* insert at the head of the list */
- event->next = *evlptr;
- *evlptr = event;
- seq->current = event;
- } else {
- /* insert somewhere after the head of the list
- * do not assume: current is not NULL. Although we always leave
- * it set, the client may access the sequence before the next
- * insert.
- */
- register event_type previous;
- register event_type insert_before;
-
- if (!seq->current) {
- seq->current = seq_eventlist(seq);
- }
- if (event->ntime >= seq->current->ntime) {
- /* insertion point is after current */
- previous = seq->current;
- insert_before = previous->next;
- } else {
- /* insertion point is before current; start at beginning */
- /* assume: not inserting at very head of list; that would
- * have been taken care of above */
- previous = seq_events(seq);
- insert_before = previous->next;
- }
-
- while ((insert_before != NULL) &&
- (event->ntime >= insert_before->ntime)) {
- previous = insert_before;
- insert_before = insert_before->next;
- }
- previous->next = event;
- event->next = insert_before;
- seq->current = event;
- }
-}
-
-
-/* insert_macctrl -- add a control to the seq */
-/**/
-event_type insert_macctrl(seq, ctime, cline, ctrl, voice, value)
- seq_type seq;
- time_type ctime;
- int cline;
- int ctrl;
- int voice;
- int value;
-{
- register event_type event = event_create(seq, macctrlsize, ctime, cline);
- if (seq_print) {
- gprintf(TRANS,
- "macctrl(%lx): time %ld, line %d, ctrl %d, voice %d, value %d\n",
- event, ctime, cline, ctrl, voice, value);
- }
- if (event) {
- seq_used_mask(seq) |= 1 << (voice - 1);
- event->nvoice = ctrl_voice(ESC_CTRL, voice);
- event->value = MACCTRL_VALUE;
- event->u.macctrl.ctrl_number = ctrl;
- event->u.macctrl.value = value;
- seq_ctrlcount(seq)++;
- }
- return event;
-}
-
-
-/* insert_macro -- insert a macro call seq */
-/**/
-event_type insert_macro(seq, ctime, cline, def, voice, nparms, parms)
- seq_type seq;
- time_type ctime;
- int cline;
- def_type def;
- int voice;
- int nparms;
- short *parms;
-{
- register event_type event = event_create(seq, macrosize, ctime, cline);
- if (seq_print) {
- int i;
- gprintf(TRANS,
- "macro(%lx): time %ld, line %d, def %ld, voice %d, parms",
- event, ctime, cline, def, voice);
- for (i = 0; i < nparms; i++) gprintf(TRANS, " %d", parms[i]);
- gprintf(TRANS, "\n");
- }
- if (event) {
- seq_used_mask(seq) |= 1 << (voice - 1);
- event->nvoice = ctrl_voice(ESC_CTRL, voice);
- event->value = MACRO_VALUE;
- event->u.macro.definition = def->definition;
- while (nparms-- > 0) {
- event->u.macro.parameter[nparms] = parms[nparms];
- }
- seq_ctrlcount(seq)++;
- }
- return event;
-}
-
-
-/* insert_note -- add a note to the seq */
-/**/
-event_type insert_note(seq, ntime, nline, voice, pitch, dur, loud)
- seq_type seq;
- time_type ntime;
- int nline;
- int voice;
- int pitch;
- time_type dur;
- int loud;
-{
- register event_type event = event_create(seq, notesize, ntime, nline);
-
- if (seq_print) {
- gprintf(TRANS,
- "note(%lx): time %ld, line %d, dur %ld, pitch %d, voice %d, loudness %d\n",
- event, ntime, nline, dur, pitch, voice, loud);
- }
-
- if (event) {
- seq_used_mask(seq) |= 1 << (voice - 1);
- event->nvoice = voice - 1;
- event->value = pitch;
- event->u.note.ndur = (dur << 8) + loud;
- seq_notecount(seq)++;
- seq_duration(seq) = MAX(seq_duration(seq), ntime + dur);
- }
- return event;
-}
-
-
-/* insert_seti -- add a seti event to the seq */
-/**/
-event_type insert_seti(seq, stime, sline, voice, addr, value)
- seq_type seq;
- time_type stime;
- int sline;
- int voice;
- int *addr;
- int value;
-{
- register event_type event = event_create(seq, setisize, stime, sline);
- if (seq_print) {
- gprintf(TRANS,
- "seti(%ld): time %ld, line %d, voice %d, addr %ld, value %d\n",
- event, stime, sline, voice, addr, value);
- }
- if (event) {
- event->nvoice = ctrl_voice(ESC_CTRL, voice);
- event->value = SETI_VALUE;
- event->u.seti.int_to_set = addr;
- event->u.seti.value = value;
- seq_ctrlcount(seq)++;
- }
- return event;
-}
-
-
-/* noop -- just returns, the default stopfunc for sequences */
-/**/
-void noop(seq_type seq) {}
-
-
-private void process_event(seq)
- seq_type seq;
-{
- register event_type event;
- if (!seq->runflag) return;
- while ((event = seq->current) && (event->ntime <= virttime)) {
- int voice;
- /* process all current (and earlier) events */
- if (is_note(event)) { /*** play a note or rest ***/
- /* if this note is not a rest, play it and schedule an off event */
- if (event->value != NO_PITCH &&
- (seq_channel_mask(seq) &
- (1 << ((voice = vc_voice(event->nvoice)) - 1)))) {
- seq_noteon(seq, voice, event->value,
- (int) event->u.note.ndur & 0xFF);
- if (debug) {
- gprintf(TRANS, "play pitch %d at %ld\n",
- event->value, event->ntime);
- }
- seq_cause_noteoff(seq, (event->u.note.ndur) >> 8,
- voice, event->value);
-
- }
- } else { /*** send a control command ***/
- int n;
- time_type step;
- int delta;
- long increment;
- int voice = vc_voice(event->nvoice);
- ulong enabled = seq_channel_mask(seq) & (1 << (voice - 1));
-
- switch (vc_ctrl(event->nvoice)) {
- case PSWITCH_CTRL:
- if (!enabled) break;
- seq_midi_ctrl(seq, voice, PORTASWITCH, event->value);
- break;
- case MODWHEEL_CTRL:
- if (!enabled) break;
- seq_midi_ctrl(seq, voice, MODWHEEL, event->value);
- break;
- case TOUCH_CTRL:
- if (!enabled) break;
- seq_midi_touch(seq, voice, event->value);
- break;
- case VOLUME_CTRL:
- if (!enabled) break;
- seq_midi_ctrl(seq, voice, VOLUME, event->value);
- break;
- case BEND_CTRL:
- if (!enabled) break;
- seq_midi_bend(seq, voice, (event->value << 6));
- break;
- case PROGRAM_CTRL:
- if (!enabled) break;
- seq_midi_program(seq, voice, event->value + 1);
- break;
- case ESC_CTRL:
- switch (event->value) {
- case CALL_VALUE:
- sequence = seq;
- (*(event->u.call.routine))(event->u.call.args);
- break;
- case CLOCK_VALUE:
- clock_ticksize = event->u.clock.ticksize;
- if (!clock_running && !suppress_midi_clock &&
- !external_midi_clock) {
- clock_running = TRUE;
- midi_start();
- clock_tick(seq, 0L);
- }
- break;
- case MACCTRL_VALUE:
- if (!enabled) break;
- seq_midi_ctrl(seq, voice, event->u.macctrl.ctrl_number,
- event->u.macctrl.value);
- break;
- case MACRO_VALUE: {
- if (!enabled) break;
- send_macro(event->u.macro.definition, voice,
- event->u.macro.parameter, -1, 0,
- event->nline);
- break;
- }
- case CTRLRAMP_VALUE:
- case DEFRAMP_VALUE: {
- int from, to;
- if (!enabled) break;
-
- step = event->u.ramp.step;
- if (event->value == CTRLRAMP_VALUE) {
- from = event->u.ramp.u.ctrl.from_value;
- to = event->u.ramp.u.ctrl.to_value;
- } else {
- from = event->u.ramp.u.def.parameter[
- event->u.ramp.u.def.parm_num];
- to = event->u.ramp.u.def.to_value;
- }
- delta = to - from;
- increment = delta;
- if (delta < 0) delta = -delta;
- /* Note: Step is always non-zero */
- n = event->u.ramp.dur / step;
- increment = (increment << 8) / n;
- ramp_event(seq, event, from << 8, to << 8,
- (int) increment, step, n);
- seq->noteoff_count++;
- break;
- }
- case SETI_VALUE:
- *(event->u.seti.int_to_set) = event->u.seti.value;
- break;
- default:
- gprintf(TRANS, "unexpected ESC_CTRL value\n");
- break;
- }
- break;
- default:
- gprintf(TRANS, "unexpected seq data\n");
- break;
- }
- }
- seq->current = event->next;
- }
- if (seq->current) {
- cause((delay_type)(event->ntime - virttime), process_event, seq);
- } else if (seq->noteoff_count == 0 && seq->note_enable) {
- /* if we're just advancing to a start point, note_enable will be
- * FALSE and this won't get called:
- */
- if (seq->stopfunc) {
- (*(seq->stopfunc))(seq);
- }
- }
-}
-
-
-/* ramp_event -- generate a ramp */
-/**/
-private void ramp_event(seq, event, value, to_value, increment, step, n)
- seq_type seq;
- register event_type event;
- unsigned int value;
- unsigned int to_value;
- int increment;
- time_type step;
- int n;
-{
- if (seq->runflag) {
- int voice = vc_voice(event->nvoice);
-/* printf("ramp_event: value %d to_value %d increment %d step %d n %d time %d\n",
- value, to_value, increment, step, n, virttime); */
- if (n == 0) value = to_value;
- else {
- causepri((delay_type)step, 5, ramp_event, seq, event, value + increment,
- to_value, increment, step, n - 1);
- }
- if (event->value == CTRLRAMP_VALUE) {
- int ctrl = event->u.ramp.ctrl;
- if (ctrl == -TOUCH_CTRL) midi_touch(voice, value >> 8);
- else if (ctrl == -BEND_CTRL) midi_bend(voice, value >> 2);
- else midi_ctrl(voice, ctrl, value >> 8);
- } else { /* must be DEFRAMP_VALUE */
- send_macro(event->u.ramp.u.def.definition,
- vc_voice(event->nvoice),
- event->u.ramp.u.def.parameter,
- event->u.ramp.u.def.parm_num, value >> 8,
- event->nline);
- }
- if (n == 0) seq_end_event(seq);
- }
-}
-
-
-/* report_enabled_channels -- print out concise listing of channels */
-/*
- * to fit on one line, write out ranges, e.g. 1-5 9-11
- */
-void report_enabled_channels(seq)
- seq_type seq;
-{
- ulong mask = seq_channel_mask(seq);
- int i, range_open_at = 0;
-
- for (i = 1; i <= MAX_CHANNELS; i++) {
- if (!range_open_at && (mask & 1)) {
- gprintf(TRANS, " %d", i);
- range_open_at = i;
- } else if (range_open_at && !(mask & 1)) {
- if (i > (range_open_at + 1)) {
- gprintf(TRANS, "-%d", i - 1);
- }
- range_open_at = 0; /* FALSE */
- }
- mask = mask >> 1;
- }
- if (range_open_at) gprintf(TRANS, "-%d", MAX_CHANNELS);
-}
-
-
-/* send_macro -- instantiate macro and send it */
-/*
- * note: to support ramping, "value" is used in place of
- * parameter["parm_num"]
- */
-/*private*/
-void send_macro(ptr, voice, parameter, parm_num, value, nline)
- register unsigned char *ptr;
- int voice;
- short parameter[];
- int parm_num;
- int value;
- int nline;
-{
- register unsigned char code, *loc;
- while ((code = *ptr++)) {
- loc = ptr + *ptr;
- ptr++;
- if (code <= nmacroparms) {
- code--;
- *loc = (code == parm_num ? value : parameter[code]) & 0x7f;
- } else if (code == nmacroparms + 1) {
- /* take old high order bits and OR in 4 voice bits */
- *loc = (*loc & 0xF0) | ((voice - 1) & 0xF);
- } else {
- code -= (nmacroparms + 2);
- *loc = ((code == parm_num ? value : parameter[code]) >> 7) & 0x7F;
- }
- }
- if (ptr[1] == MIDI_SYSEX) {
- midi_exclusive(ptr + 1);
- } else {
- /* make sure user didn't try to send more than 3 bytes. This test
- * could be done at sequence read time, but it's tricky because the
- * first byte could be a parameter, so in general you need to
- * plug the actual parameters into the message and then do the test.
- * Currently, this is the only place parameters are plugged in.
- */
- if (*ptr > 3) {
- gprintf(ERROR,
- "Non-sysex macro longer than 3 bytes ignored, line %d.\n",
- nline);
- } else {
- midi_write((int) *ptr, MIDI_PORT(voice), ptr[1], ptr[2], ptr[3]);
- }
- }
-}
-
-
-/* seq_alloc -- a utility function to allocate a seq struct */
-/**/
-seq_type seq_alloc()
-{
- seq_type seq;
- seq = (seq_type) memget(sizeof(seq_node));
- return seq;
-}
-
-
-/* seq_at_end -- set the function to be called at sequence end */
-/**/
-void seq_at_end(seq, fn)
- seq_type seq;
- void (*fn)(seq_type);
-{
- if (!fn) fn = noop;
- seq->stopfunc = fn;
-}
-
-
-/* seq_cause_noteoff_meth -- turn off a note in the future */
-/**/
-void seq_cause_noteoff_meth(seq, delay, voice, pitch)
- seq_type seq;
- time_type delay;
- int voice;
- int pitch;
-{
- if (seq->note_enable) {
- pitch += seq->transpose;
- while (pitch < 0) pitch += 12;
- while (pitch > 127) pitch -= 12;
- seq->noteoff_count++;
- causepri((delay_type) delay, 10, seq->noteoff_fn,
- seq, voice, pitch);
- }
-}
-
-/* seq_copy -- copy a sequence, share the eventlist */
-/**/
-seq_type seq_copy(from_seq)
- seq_type from_seq;
-{
- register seq_type seq = seq_init(seq_alloc(), FALSE);
- if (!seq) return NULL;
- seq->chunklist = from_seq->chunklist;
- seq->current = seq_events(seq);
- seq->chunklist->u.info.refcount++;
- seq->transpose = from_seq->transpose;
- seq->loudness = from_seq->loudness;
- seq->rate = from_seq->rate;
- seq->paused = from_seq->paused;
- seq->noteoff_count = 0;
- return seq;
-}
-
-
-/* seq_create -- create a seq structure and an initial event chunk */
-/**/
-seq_type seq_create()
-{
- return seq_init(seq_alloc(), TRUE);
-}
-
-
-/* seq_cycle -- set parameters for cycling a sequence */
-/**/
-void seq_cycle(seq_type seq, boolean flag, time_type dur)
-{
- seq->cycleflag = flag;
- seq->cycledur = dur;
-}
-
-
-/* seq_end_event -- call this when an score-generated event ends */
-/*
- * Assumes that noteoff_count was incremented when event started.
- */
-void seq_end_event(seq)
- seq_type seq;
-{
- /*gprintf(TRANS, "nd");*/
- seq->noteoff_count--;
- if (seq->current == NULL /* finished seq */ &&
- seq->noteoff_count == 0 /* finished noteoff's */ &&
- seq->runflag /* we've not been stopped */) {
- if (seq->cycleflag) {
- cause((delay_type) (seq->cycledur - virttime), cycle, seq);
- } else if (seq->stopfunc) {
- (*(seq->stopfunc))(seq);
- }
- }
-}
-
-
-
-/****************************************************************************
-* seq_free_meth
-* Input: a seq_type
-* Effect:
-* frees storage occupied by a seq
-****************************************************************************/
-
-private void seq_free_meth(seq)
- seq_type seq;
-{
- seq_free_chunks(seq);
- if (seq->timebase) timebase_free(seq->timebase);
- memfree((void *) seq, sizeof(seq_node));
-}
-
-
-/* seq_free_chunks -- free storage for note list */
-/*
- * NOTE: in its original form, this routine was perhaps more readable,
- * but would not compile under Microsoft C V7.00 due to a compiler bug.
- * I rewrote the code until the bug disappeared, hopefully without
- * changing the semantics! If you change this code, make sure it still
- * compiles under Microsoft C.
- *
- * This module frees chunks from a seq_type in preparation for freeing
- * the seq_type itself. Reference counts are checked and chunks are
- * only freed when the last reference is removed.
- */
-public void seq_free_chunks(seq)
- seq_type seq;
-{
- chunk_type tail;
- chunk_type head;
-
- head = seq->chunklist;
- if (((head->u.info.refcount)--) != 0) return;
-
- while (head != NULL) {
- tail = head->next;
- memfree((void *) head, sizeof(chunk_node));
- head = tail;
- seq->chunklist = head;
- }
-}
-
-
-seq_type seq_init(seq, create_chunk)
- seq_type seq;
- int create_chunk;
-{
- if (!seq || !(seq->timebase = timebase_create(50))) {
- return NULL;
- }
- seq->chunklist = NULL;
- if (create_chunk) {
- seq->chunklist = chunk_create(TRUE);
- if (!seq->chunklist) {
- seq_free(seq);
- return NULL;
- }
- }
- seq->cause_noteoff_fn = seq_cause_noteoff_meth;
- seq->midi_bend_fn = seq_midi_bend_meth;
- seq->midi_ctrl_fn = seq_midi_ctrl_meth;
- seq->midi_program_fn = seq_midi_program_meth;
- seq->midi_touch_fn = seq_midi_touch_meth;
- seq->noteoff_fn = seq_noteoff_meth;
- seq->noteon_fn = seq_noteon_meth;
- seq->free_fn = seq_free_meth;
- seq->reset_fn = seq_reset_meth;
-
- seq->current = NULL;
- seq->transpose = 0;
- seq->loudness = 0;
- seq->cycleflag = FALSE;
- seq->cycledur = 0L;
- seq->rate = 256L;
- seq->paused = FALSE;
- seq->stopfunc = noop;
- seq->channel_mask = 0xFFFFFFFFL;
- seq->runflag = seq->note_enable = FALSE;
- return seq;
-}
-
-
-/* seq_midi_bend_meth -- send a midi bend */
-/**/
-void seq_midi_bend_meth(seq_type seq, int voice, int value)
-{
- midi_bend(voice, value);
-}
-
-
-/* seq_midi_ctrl_meth -- send a midi ctrl change */
-/**/
-void seq_midi_ctrl_meth(seq_type seq, int voice, int ctrl, int value)
-{
- midi_ctrl(voice, ctrl, value);
-}
-
-
-/* seq_midi_program_meth -- send a midi program change */
-/**/
-void seq_midi_program_meth(seq_type seq, int voice, int prog)
-{
- midi_bend(voice, prog);
-}
-
-
-/* seq_midi_touch_meth -- send a midi touch */
-/**/
-void seq_midi_touch_meth(seq_type seq, int voice, int value)
-{
- midi_touch(voice, value);
-}
-
-
-/* seq_noteoff_meth -- turn a seq note off */
-/**/
-void seq_noteoff_meth(seq, voice, pitch)
- seq_type seq;
- int voice;
- int pitch;
-{
- midi_note(voice, pitch, 0);
- /*gprintf(TRANS, "_e");*/
- seq_end_event(seq);
-}
-
-
-/* seq_noteon_meth -- play a note with transformations */
-/**/
-void seq_noteon_meth(seq, chan, pitch, vel)
- seq_type seq;
- int chan, pitch, vel;
-{
- if (seq->note_enable) {
- pitch += seq->transpose;
- while (pitch < 0) pitch += 12;
- while (pitch > 127) pitch -= 12;
-
- vel += seq->loudness;
- if (vel <= 0) vel = 1;
- else if (vel > 127) vel = 127;
-
- midi_note(chan, pitch, vel);
- }
-}
-
-
-/* seq_pause -- stop playing momentarily or resume playing */
-/**/
-time_type seq_pause(seq_type seq, boolean flag)
-{
- if (!seq->paused && flag) {
- seq->paused = TRUE;
- seq->rate = seq->timebase->rate;
- set_rate(seq->timebase, STOPRATE);
- } else if (seq->paused && !flag) {
- seq_play(seq);
- }
- return (time_type) seq->timebase->virt_base;
-}
-
-
-/* seq_play -- play a sequence from the current event forward */
-/**/
-void seq_play(seq)
- seq_type seq;
-{
- timebase_type prev_timebase = timebase;
- register timebase_type reg_timebase = seq->timebase;
-
- if (!seq->runflag) {
- seq_reset(seq);
- }
- if (!seq->paused) return;
- eventtime = gettime();
-
- /* assume that virt_base is correct virtual time as the result
- of seq_start_time or seq_reset
- */
- timebase = reg_timebase;
- virttime = reg_timebase->virt_base;
- /* note that set_rate will set reg_timebase->real_base to eventtime */
- set_rate(reg_timebase, seq->rate);
- seq->paused = FALSE; /* in case the score had been paused; note that
- seq_pause() has no effect if paused is TRUE */
- seq->runflag = TRUE;
- seq->note_enable = TRUE;
-
- /* restore previous timebase */
- timebase_use(prev_timebase);
-}
-
-
-/* seq_reset_meth -- reset a sequence to start back at the first event */
-/**/
-void seq_reset_meth(seq)
- seq_type seq;
-{
- timebase_type old_timebase = timebase;
-
- if (seq->runflag) {
- /* maybe this seq is already reset, and process_event is
- * already scheduled. If so, don't schedule another one.
- */
- if ((seq->timebase->virt_base == 0) &&
- (seq->timebase->rate == STOPRATE)) {
- /* in case the reader just iterated through the list without
- * cause'ing events, reset the event list
- */
- seq->current = seq_events(seq);
- return;
- }
- /* Otherwise, the seq is running, so stop it. */
- seq_stop(seq);
- }
-
- timebase_use(seq->timebase);
- set_rate(seq->timebase, STOPRATE);
- set_virttime(seq->timebase, 0L);
- seq->current = seq_events(seq);
- seq->noteoff_count = 0L;
- seq->runflag = TRUE;
- seq->paused = TRUE;
- if (seq->current)
- cause((delay_type)(seq->current->ntime - virttime), process_event, seq);
- timebase_use(old_timebase);
-}
-
-
-/* seq_set_loudness -- set the loudness offset of a sequence */
-/**/
-void seq_set_loudness(seq, loud)
- seq_type seq;
- int loud;
-{
- seq->loudness = loud;
-}
-
-/* seq_set_rate -- set the rate of a sequence */
-/**/
-void seq_set_rate(seq, rate)
- seq_type seq;
- time_type rate;
-{
- seq->rate = rate;
- if (!seq->paused) set_rate(seq->timebase, rate);
-}
-
-
-/* seq_set_transpose -- set the sequence transposition */
-/**/
-void seq_set_transpose(seq, trans)
- seq_type seq;
- int trans;
-{
- seq->transpose = trans;
-}
-
-
-/* seq_start_time -- set the current pointer so the sequence starts here */
-/**/
-void seq_start_time(seq, start_time)
- seq_type seq;
- time_type start_time;
-{
- timebase_type prev_timebase = timebase;
- if (!seq->runflag) {
- seq_reset(seq);
- }
- if (real_to_virt(seq->timebase, eventtime) > start_time) {
- seq_reset(seq);
- }
- timebase_use(seq->timebase);
- seq->note_enable = FALSE;
- /* prime the pump */
- set_rate(timebase, STOPRATE);
- set_virttime(timebase, start_time);
- catchup();
- seq->note_enable = TRUE;
- seq->paused = TRUE;
- /* restore previous timebase */
- timebase_use(prev_timebase);
-}
-
-
-/* seq_stop -- stop a sequence, clear out all pending events */
-/**/
-void seq_stop(seq)
- seq_type seq;
-{
- timebase_type prev_timebase = timebase;
-
- if (seq->runflag) {
- if (moxcdebug)
- gprintf(TRANS, "seq_reset swap from timebase 0x%x to 0x%x\n",
- timebase, seq->timebase);
- timebase = seq->timebase;
- seq->runflag = FALSE;
- set_rate(timebase, STOPRATE);
- set_virttime(timebase, MAXTIME);
- catchup();
- }
- timebase_use(prev_timebase);
-}
diff --git a/lib-src/libnyquist/cmt/seq.h b/lib-src/libnyquist/cmt/seq.h
deleted file mode 100644
index 2bfac26..0000000
--- a/lib-src/libnyquist/cmt/seq.h
+++ /dev/null
@@ -1,295 +0,0 @@
-/* seq.h -- definitions for seq, the MIDI Toolkit sequence data type */
-
-#define minpitch 0
-#define maxpitch 127
-#define NO_PITCH (maxpitch+1)
-#define minprogram 1
-#define maxprogram 128
-
-/* keep these two lines in sync */
-#define nmacroparms 4
-#define parm_expected_error "Parameter number [1-4] expected"
-
-#define seq_dflt_loud 127
-#define seq_dflt_voice 1
-#define seq_dflt_pitch 60
-
-struct clock_struct {
- time_type ticksize;
-};
-
-
-struct ctrlramp_struct {
- unsigned char from_value;
- unsigned char to_value;
-};
-
-
-struct deframp_struct {
- unsigned char *definition;
- short parameter[nmacroparms];
- unsigned char parm_num;
- short to_value;
-};
-
-
-struct macctrl_struct {
- unsigned char ctrl_number;
- unsigned char value;
-};
-
-
-struct macro_struct {
- unsigned char *definition;
- short parameter[nmacroparms];
-};
-
-
-struct note_struct {
- long ndur; /* duration */
- /* char nloud; loudness (MIDI velocity) now stored as low order byte
- * of ndur
- */
-};
-
-
-struct ramp_struct {
- time_type dur;
- short ctrl; /* encode pitch bend and after touch as negative */
- short step;
- union {
- struct ctrlramp_struct ctrl;
- struct deframp_struct def;
- } u;
-};
-
-
-struct seti_struct {
- int *int_to_set;
- int value;
-};
-
-
-#define SEQ_MAX_PARMS 8
-struct cause_struct {
- int (*routine)();
- /* make a structure so we can copy by value */
- struct seq_arg_struct {
- long a[SEQ_MAX_PARMS];
- } args;
-};
-
-
-typedef struct event_struct {
- struct event_struct *next;
- time_type ntime; /* start time */
- short nline; /* line number from source code */
- unsigned char nvoice; /* adagio voice (MIDI Channel)
- * if this is a control change, high order 4 bits
- * contain the control number, otherwise high order
- * 4 bits are 0 (see is_note macro below)
- */
- unsigned char value;
- /* this is a note pitch or a control value. It goes
- * here rather than in the union to achieve word
- * alignment (!). Also, value is used for extra commands
- * such as call, seti, setv.
- */
- union {
- struct cause_struct call;
- struct clock_struct clock;
- struct macctrl_struct macctrl;
- struct macro_struct macro;
- struct note_struct note;
- struct ramp_struct ramp;
- struct seti_struct seti;
- } u;
-} event_node, *event_type;
-
-#define PSWITCH_CTRL 1
-#define MODWHEEL_CTRL 2
-#define TOUCH_CTRL 3
-#define VOLUME_CTRL 4
-#define BEND_CTRL 5
-#define PROGRAM_CTRL 6
-#define ESC_CTRL 7
-
-#define CALL_VALUE 0
-#define CLOCK_VALUE 1
-#define MACCTRL_VALUE 2
-#define MACRO_VALUE 3
-#define CTRLRAMP_VALUE 4
-#define DEFRAMP_VALUE 5
-#define SETI_VALUE 6
-
-#define commonsize (sizeof(struct event_struct) - sizeof(struct cause_struct))
-#define rampcommon (sizeof(struct ramp_struct) - sizeof(struct deframp_struct))
-#define ctrlsize commonsize
-#define callsize (commonsize + sizeof(struct cause_struct))
-#define clocksize (commonsize + sizeof(struct clock_struct))
-#define ctrlrampsize (commonsize + rampcommon + sizeof(struct ctrlramp_struct))
-#define deframpsize (commonsize + sizeof(struct ramp_struct))
-#define macctrlsize (commonsize + sizeof(struct macctrl_struct))
-#define macrosize (commonsize + sizeof(struct macro_struct))
-#define notesize (commonsize + sizeof(struct note_struct))
-#define setisize (commonsize + sizeof(struct seti_struct))
-#define ctrl_voice(c, v) (((c) << 5) + ((v) - 1))
-#define vc_ctrl(v) ((v) >> 5)
-#define vc_voice(v) (((v) & 0x1F) + 1)
-
-#define is_note(n) (((n)->nvoice & 0xE0) == 0)
-
-#define CHUNK_SIZE 2000
-
-typedef struct def_struct {
- struct def_struct *next;
- char *symbol;
- unsigned char *definition;
-} def_node, *def_type;
-
-
-typedef struct chunk_struct {
- struct chunk_struct *next;
- short free;
- union {
- char data[CHUNK_SIZE];
- struct info_struct {
- short refcount;
- struct chunk_struct *last_chunk; /* where to allocate memory */
- def_type dictionary; /* macro defns, routine addresses */
- event_type eventlist; /* first event in sequence */
- ulong used_mask; /* tells what channels are actually present */
- long ctrlcount;
- long notecount;
- time_type duration; /* time of the last event+dur in score */
- } info;
- } u;
-} chunk_node, *chunk_type;
-
-
-typedef struct seq_struct {
- void (*cause_noteoff_fn)();
- void (*midi_bend_fn)();
- void (*midi_ctrl_fn)();
- void (*midi_program_fn)();
- void (*midi_touch_fn)();
- void (*noteoff_fn)();
- void (*noteon_fn)();
- void (*free_fn)();
- void (*reset_fn)();
- void (*stopfunc)(struct seq_struct *);
- chunk_type chunklist;
- /* event_type eventlist;
- seq->eventlist is now seq->eventlist->chunklist */
- event_type current;
- boolean runflag; /* normally true, set to false as a flag for
- * processes started by score to terminate */
- boolean note_enable; /* normally true, set to false as a flag to
- * suppress note output, e.g. when indexing
- * to a particular time point */
- boolean cycleflag; /* normally false, set to true to make the
- * sequence cycle every cycledur */
- int transpose;
- int loudness;
- time_type cycledur;
- timebase_type timebase;
- time_type rate; /* remembers rate across pauses */
- boolean paused; /* remembers if seq has been stopped or not */
- short noteoff_count; /* keeps track of pending events, such as
- * note off commands. When this count goes
- * to zero, the score is finished */
- ulong channel_mask;
-} seq_node, *seq_type;
-
-extern seq_type sequence;
-
-chunk_type chunk_create(boolean first_flag);
-
-#define seq_cause_noteoff(seq, delay, voice, pitch) \
- (*(((seq_type) seq)->cause_noteoff_fn))(seq, delay, voice, pitch)
-#define seq_midi_bend(seq, voice, value) \
- (*(((seq_type) seq)->midi_bend_fn))(seq, voice, value)
-#define seq_midi_ctrl(seq, voice, ctrl, value) \
- (*(((seq_type) seq)->midi_ctrl_fn))(seq, voice, ctrl, value)
-#define seq_midi_program(seq, voice, prog) \
- (*(((seq_type) seq)->midi_program_fn))(seq, voice, prog)
-#define seq_midi_touch(seq, voice, value) \
- (*(((seq_type) seq)->midi_touch_fn))(seq, voice, value)
-#define seq_noteoff(seq, voice, pitch) \
- (*(((seq_type) seq)->noteoff_fn))(seq, voice, pitch)
-#define seq_noteon(seq, voice, pitch, vel) \
- (*(((seq_type) seq)->noteon_fn))(seq, voice, pitch, vel)
-#define seq_free(seq) (*(((seq_type) seq)->free_fn))(seq)
-#define seq_register(seq) \
- cu_register((cu_fn_type) (((seq_type) seq)->free_fn), seq)
-#define seq_reset(seq) (*(((seq_type) seq)->reset_fn))(seq)
- /* LISP: void (SEQ-RESET SEQ) */
-
-extern boolean seq_print; /* debugging switch */
-
-void seq_extensions(void); /* to be defined outside of seq -- user dependent */
-event_type insert_call(seq_type seq, time_type ctime, int cline,
- int voice, int (*addr)(), long value[], int n);
-event_type insert_clock(seq_type seq, time_type ctime, int cline,
- time_type ticksize);
-event_type insert_ctrl(seq_type seq, time_type ctime, int cline, int ctrl,
- int voice, int value);
- /* LISP: (SEQ-INSERT-CTRL SEQ FIXNUM FIXNUM FIXNUM FIXNUM FIXNUM) */
-event_type insert_ctrlramp(seq_type seq, time_type rtime, int rline, int voice,
- time_type step, time_type dur, int ctrl, int v1, int v2);
- /* LISP: (SEQ-INSERT-RAMP SEQ FIXNUM FIXNUM FIXNUM FIXNUM FIXNUM FIXNUM FIXNUM FIXNUM) */
-def_type insert_def(seq_type seq, char *symbol, unsigned char *definition,
- int deflen);
-event_type insert_deframp(seq_type seq, time_type rtime, int rline, int voice,
- time_type step, time_type dur, def_type def,
- int nparms, short parms[], int parm_num, int to_value);
-event_type insert_macctrl(seq_type seq, time_type ctime, int cline, int ctrl,
- int voice, int value);
- /* LISP: (SEQ-INSERT-MACCTRL SEQ FIXNUM FIXNUM FIXNUM FIXNUM FIXNUM) */
-event_type insert_macro(seq_type seq, time_type ctime, int cline,
- def_type def, int voice, int nparms, short *parms);
-event_type insert_note(seq_type seq, time_type ntime, int nline, int voice,
- int pitch, time_type dur, int loud);
- /* LISP: (SEQ-INSERT-NOTE SEQ FIXNUM FIXNUM FIXNUM FIXNUM FIXNUM FIXNUM) */
-event_type insert_seti(seq_type seq, time_type stime, int sline, int voice,
- int *addr, int value);
-void noop(seq_type seq);
-seq_type seq_alloc(void);
-void seq_at_end(seq_type seq, void (*fn)(seq_type));
-void seq_cause_noteoff_meth(seq_type seq, time_type delay, int voice, int pitch);
-#define seq_channel_mask(seq) ((seq)->channel_mask)
-seq_type seq_copy(seq_type from_seq); /* LISP: (SEQ-COPY SEQ) */
-seq_type seq_create(void); /* LISP: (SEQ-CREATE) */
-void seq_cycle(seq_type seq, boolean flag, time_type dur);
-#define seq_duration(seq) (((seq_type) seq)->chunklist->u.info.duration)
-void seq_end_event(seq_type seq);
-#define seq_events(seq) (((seq_type) seq)->chunklist ? \
- (((seq_type) seq)->chunklist->u.info.eventlist) : NULL)
-#define seq_dictionary(seq) (seq)->chunklist->u.info.dictionary
-#define seq_eventlist(seq) (seq)->chunklist->u.info.eventlist
-#define seq_ctrlcount(seq) (seq)->chunklist->u.info.ctrlcount
-#define seq_notecount(seq) (seq)->chunklist->u.info.notecount
-#define seq_used_mask(seq) (seq)->chunklist->u.info.used_mask
-void seq_free_chunks(seq_type seq);
-seq_type seq_init(seq_type seq, int create_chunk);
-#define seq_loudness(seq) (((seq_type) seq)->loudness)
-void seq_midi_bend_meth(seq_type seq, int voice, int value);
-void seq_midi_ctrl_meth(seq_type seq, int voice, int ctrl, int value);
-void seq_midi_program_meth(seq_type seq, int voice, int prog);
-void seq_midi_touch_meth(seq_type seq, int voice, int value);
-void seq_noteon_meth(seq_type seq, int voice, int pitch, int vel);
-void seq_noteoff_meth(seq_type seq, int chan, int pitch);
-time_type seq_pause(seq_type seq, boolean flag);
-void seq_play(seq_type seq);
-#define seq_rate(seq) ((seq_type) seq)->rate
-void seq_reset_meth(seq_type seq);
-#define seq_runflag(seq) ((seq_type) seq)->runflag
-#define seq_set_channel_mask(seq, cm) ((seq)->channel_mask) = (cm)
-void seq_set_loudness(seq_type seq, int offset);
-void seq_set_rate(seq_type seq, time_type rate);
-#define seq_set_timebase(seq, tb) ((seq_type) seq)->timebase = (tb)
-void seq_set_transpose(seq_type seq, int trans);
-void seq_start_time(seq_type seq, time_type start_time);
-void seq_stop(seq_type seq);
-#define seq_timebase(seq) ((seq_type) seq)->timebase
-#define seq_transpose(seq) ((seq_type) seq)->transpose
diff --git a/lib-src/libnyquist/cmt/seqdecls.h b/lib-src/libnyquist/cmt/seqdecls.h
deleted file mode 100644
index 654d12a..0000000
--- a/lib-src/libnyquist/cmt/seqdecls.h
+++ /dev/null
@@ -1,11 +0,0 @@
-/* This .h file declares everything you need to include seq.h */
-/*
- * This file gets included by an interface to seq generated by intgen
- */
-#include "switches.h"
-#include "stdio.h"
-#include "cext.h"
-#include "userio.h"
-#include "midifns.h"
-#include "timebase.h"
-#include "moxc.h"
diff --git a/lib-src/libnyquist/cmt/seqmread.c b/lib-src/libnyquist/cmt/seqmread.c
deleted file mode 100644
index 52f0c57..0000000
--- a/lib-src/libnyquist/cmt/seqmread.c
+++ /dev/null
@@ -1,448 +0,0 @@
-/*
- * seqmread.c
- *
- * Convert a MIDI file to a seq.
- */
-
-/* Copyright 1989 Carnegie Mellon University */
-
-/*****************************************************************************
-* Change Log
-* Date | who : Change
-*-----------+-----------------------------------------------------------------
-* 17-Feb-92 | GWL : only one stdio.h
-* : fix to satisfy compiler:
- void returns, time_type giotime(), int filegetc()
-*****************************************************************************/
-
-#include "switches.h"
-#include "stdio.h"
-#include "cext.h"
-#include "cmdline.h"
-#include "midifns.h" /* to get time_type */
-#include "timebase.h"
-#include "moxc.h" /* to get debug declared */
-#include "seq.h"
-#include "seqread.h" /* to get scale */
-#include "seqmread.h"
-#include "userio.h"
-#include "ctype.h"
-
-#include "midifile.h"
-#include "tempomap.h"
-
-int filegetc();
-void initfuncs();
-void prtime();
-void snding_free();
-
-typedef struct snding_struct {
- struct snding_struct *next;
- event_type event_ptr;
- int pitch;
- int channel;
-} snding_node, *snding_type;
-
-#define snding_alloc() (snding_type) memget(sizeof(snding_node))
-#define snding_free(s) memfree(s, sizeof(snding_node))
-
-snding_type snding_list = NULL;
-
-tempomap_type the_tempomap;
-event_type initial_clock; /* remember the first clock event */
-long prev_ticksize; /* remember the previous ticksize */
-int sysex_id = 0;
-
-
-void smf_noteoff();
-void smf_error();
-void smf_header();
-void smf_trackstart();
-void smf_trackend();
-void smf_noteon();
-void smf_pressure();
-void smf_parameter();
-void smf_pitchbend();
-void smf_program();
-void smf_chanpressure();
-void smf_sysex();
-void smf_metamisc();
-void smf_metaseq();
-void smf_metaeot();
-void smf_timesig();
-void smf_smpte();
-void smf_tempo();
-void smf_keysig();
-void smf_metaspecial();
-void smf_metatext();
-void smf_arbitrary();
-
-private seq_type the_score;
-
-static FILE *F;
-
-int filegetc()
-{
-/* int temp = getc(F);
- printf(" %x ", temp);*/
- return(int)(getc(F));
-}
-
-void seq_read_smf(seq, fp)
- seq_type seq;
- FILE *fp;
-{
- F = fp;
- initfuncs();
- sysex_id = 0; /* sysex in seq has to correspond to a symbol */
- the_score = seq; /* current sequence is a global within this module */
- if (!seq) return;
- the_tempomap = tempomap_create();
- /* insert an initial clock to correspond to the default midifile tempo
- (tempomap_create creates a corresponding initial entry in the tempomap)
- (see smf_tempo for explanation of the scale() call)
- */
- initial_clock = insert_clock(the_score, 0L, 0, 500L << 16);
- /* scale(24 * 500000, 1 << 16, 24000) */
- if (!the_tempomap) return;
- Mf_getc = filegetc;
- midifile();
- /* fmac_close(F); -- do not close the file because the caller might try to
- * close it (in fact XLISP insists on closing it as a side effect of
- * garbage collection.
- */
- gprintf(TRANS, "\nLoaded Midi file with %ld note(s), %ld ctrl(s).\n\n",
- seq_notecount(seq), seq_ctrlcount(seq));
- seq_reset(seq);
- while (snding_list) {
- snding_type snding = snding_list;
- snding_list = snding_list->next;
- gprintf(TRANS, "Note-on (key %d, chan %d) has no matching noteoff\n",
- snding->pitch, snding->channel + 1);
- snding_free(snding);
- }
- tempomap_free(the_tempomap);
-}
-
-
-/* gio_time -- get the time in millisec for Adagio */
-/*
- * Since Adagio times are (in their precise form) 1/256 ms, we want
- * a similar time for midifiles, whose natural unit would be microseconds.
- * We'll shift the microsecond time by 2 to get 1/250 ms = 4 us units
- * and convert using the scale function when necessary.
- * Real time is the time of the last tempo change (last_tempo_time)
- * which is in 4us units + elapsed time.
- * Elapsed time is the elapsed beats times the beat duration.
- * Elapsed beats is Mf_currtime - last_tempo_beat.
- * Beat duration is the specified tempo / division, where specified tempo
- * is in microseconds, and division is parts per quarternote.
- */
-unsigned long divisions = 24L;
-
-time_type gio_time()
-{
- return (tempomap_lookup(the_tempomap, Mf_currtime) + 125L) / 250L;
-}
-
-
-void smf_header(format,ntrks,division)
-{
-/* gprintf(TRANS, "Header format=%d ntrks=%d division=%d\n",
- format,ntrks,division); */
- if (format > 1) gprintf(TRANS,
- "Warning: format %d midi file may not work.\n",
- format);
- divisions = division;
- /* adjust the initial tempochange */
- the_tempomap->entries->tempo = 500000L / division;
-}
-
-
-void smf_trackstart()
-{
-/* gprintf(TRANS, "Track start\n"); */
-}
-
-void smf_trackend()
-{
-/* gprintf(TRANS, "Track end\n"); */
-}
-
-void smf_noteon(chan,pitch,vol)
-{
- snding_type snding;
- if (vol == 0) { /* convert to a noteoff */
- smf_noteoff(chan, pitch, 0);
- return;
- }
-/* prtime();
- gprintf(TRANS, "Note on, chan=%d pitch=%d vol=%d\n",chan+1,pitch,vol);
-*/
- /* get ready to remember the sounding note */
- snding = snding_alloc();
- snding->next = snding_list;
- snding_list = snding;
- /* enter an event into score and remember it */
- snding->event_ptr = insert_note(the_score, gio_time(), 0,
- chan + 1, pitch, 0L, vol);
- snding->pitch = pitch;
- snding->channel = chan;
-}
-
-void smf_noteoff(chan,pitch,vol)
-{
- snding_type *snding_ptr;
- register snding_type snding;
-/* prtime();
- gprintf(TRANS, "Note off, chan=%d pitch=%d vol=%d\n",chan+1,pitch,vol);
-*/ /* search for the snding record */
- for (snding_ptr = &snding_list;
- (snding = *snding_ptr) &&
- ((snding->pitch != pitch) || (snding->channel != chan));
- snding_ptr = &(snding->next)) /* printf("* search *\n") */;
- if (!snding) {
- gprintf(TRANS, "Note off %d, channel %d ignored: no note on\n",
- pitch, chan + 1);
- } else {
- event_type event = snding->event_ptr;
- event->u.note.ndur += (gio_time() - event->ntime) << 8;
- /* free the snding record */
- *snding_ptr = snding->next;
- snding_free(snding);
- }
-}
-
-
-void smf_pressure(chan,pitch,press)
-{
- prtime();
- gprintf(TRANS, "Pressure, chan=%d pitch=%d press=%d (IGNORED)\n",
- chan + 1, pitch, press);
-}
-
-void smf_parameter(chan,control,value)
-{
- int ctrl = 0;
-/* prtime();
- gprintf(TRANS, "Parameter, chan=%d c1=%d c2=%d\n",chan+1,control,value);
- */ /* see if the control is one of the standard Adagio controls that
- can be encoded in a special way. If not, ctrl remains at zero.
- */
- switch (control) {
- case PORTASWITCH: ctrl = PSWITCH_CTRL; break;
- case MODWHEEL: ctrl = MODWHEEL_CTRL; break;
- case VOLUME: ctrl = VOLUME_CTRL; break;
- }
- if (ctrl) /* then do special ctrl insert and save storage */
- insert_ctrl(the_score, gio_time(), 0, ctrl, chan + 1, value);
- else insert_macctrl(the_score, gio_time(), 0, control, chan + 1, value);
-}
-
-
-/* smf_pitchbend -- handle a pitch bend event */
-/*
- * NOTE: the midifile code from Tim Thompson has the msb and lsb bytes swapped.
- * Thus the parameter msb is really the low order byte and lsb is high order.
- */
-void smf_pitchbend(chan,msb,lsb)
-{
-/* prtime();
- gprintf(TRANS, "Pitchbend, chan=%d msb=%d lsb=%d\n",chan+1,msb,lsb); */
- insert_ctrl(the_score, gio_time(), 0, BEND_CTRL, chan + 1,
- ((lsb << 7) + msb) >> 6);
-}
-
-void smf_program(chan,program)
-{
-/* prtime();
- gprintf(TRANS, "Program, chan=%d program=%d\n",chan+1,program); */
- insert_ctrl(the_score, gio_time(), 0, PROGRAM_CTRL, chan + 1, program);
-}
-
-void smf_chanpressure(chan,press)
-{
-/* prtime();
- gprintf(TRANS, "Channel pressure, chan=%d pressure=%d\n",chan+1,press);
- */
- insert_ctrl(the_score, gio_time(), 0, TOUCH_CTRL, chan + 1, press);
-}
-
-void smf_sysex(leng,mess)
-int leng;
-char *mess;
-{
- char symb[10];
- def_type defn;
- int i;
- sprintf(symb, "X%d", sysex_id++);
- if (leng > 255) {
- gprintf(TRANS, "sysex too long (%d bytes), ignored\n", leng - 2);
- return;
- }
- /* need to end up with a prefix of [0][length], so add 2 to length;
- note that this will copy past the end of the message -- this is
- slightly dangerous and definitely crufty:
- */
- defn = insert_def(the_score, symb, (unsigned char *) mess, leng + 2);
- /* now fix up the definition by inserting the prefix bytes: */
- for (i = leng + 1; i > 1; i--)
- defn->definition[i] = defn->definition[i - 2];
- defn->definition[0] = 0;
- defn->definition[1] = leng;
- insert_macro(the_score, gio_time(), 0, defn, 1, 0, NULL);
-/* prtime();
- gprintf(TRANS, "Sysex, leng=%d (IGNORED)\n",leng); */
-}
-
-void smf_metamisc(type,leng,mess)
-char *mess;
-{
- prtime();
- gprintf(TRANS,
- "Meta event, unrecognized, type=0x%02x leng=%d (IGNORED)\n",
- type, leng);
-}
-
-void smf_metaspecial(type,leng,mess)
-char *mess;
-{
- prtime();
- gprintf(TRANS,
- "Meta event, sequencer-specific, type=0x%02x leng=%d (IGNORED)\n",
- type, leng);
-}
-
-void smf_metatext(type,leng,mess)
-char *mess;
-{
- static char *ttype[] = {
- NULL,
- "Text Event", /* type=0x01 */
- "Copyright Notice", /* type=0x02 */
- "Sequence/Track Name",
- "Instrument Name", /* ... */
- "Lyric",
- "Marker",
- "Cue Point", /* type=0x07 */
- "Unrecognized"
- };
- int unrecognized = (sizeof(ttype)/sizeof(char *)) - 1;
-
- if ( type < 1 || type > unrecognized )
- type = unrecognized;
-}
-
-void smf_metaseq(num)
-{
- prtime();
- gprintf(TRANS, "Meta event, sequence number = %d (IGNORED)\n",num);
-}
-
-void smf_metaeot()
-{
-/* prtime();
- gprintf(TRANS, "Meta event, end of track\n"); */
-}
-
-void smf_keysig(sf,mi)
-{
-/* prtime();
- gprintf(TRANS, "Key signature, sharp/flats=%d minor=%d\n",sf,mi); */
-}
-
-/* smf_tempo -- handle a midifile tempo change */
-/*
- * NOTE: if divisions is positive, it gives time units per quarter, and
- * tempo is microsec per division. The product is microsec per quarter.
- * To convert to ticksize (parameter to insert_clock), we divide by 24*1000
- * to get units of millisec and 24ths of quarter notes. insert_clock
- * expects this to have a 16 bit fractional part.
- */
-void smf_tempo(tempo)
-long tempo;
-{
- time_type ctime = gio_time();
- long ticksize = scale(tempo, 1024L, 375L);
-/* (tempo / 24000) << 16; microsec/clock converted to ms/quarter, shifted 16*/
-
-/* prtime();
- gprintf(TRANS, "Tempo, microseconds-per-MIDI-quarter-note = %ld\n",tempo);
-*/
- tempomap_insert(the_tempomap, Mf_currtime, tempo / divisions);
- if (ctime == 0) {
- /* we already have a clock event at t=0 -> fix it */
- initial_clock->u.clock.ticksize = ticksize;
- } else { /* we need a new one */
- /* NOTE: after the first clock, insert clock events 1/2 tick early
- to make sure ticksize is set before clock_tick() wakes up and
- reads it.
- */
- insert_clock(the_score, ctime - (prev_ticksize >> 17), 0, ticksize);
- prev_ticksize = ticksize;
- }
-}
-
-void smf_timesig(nn,dd,cc,bb)
-{
-/* int denom = 1;
- while ( dd-- > 0 )
- denom *= 2;
- prtime();
- gprintf(TRANS,
-"Time signature=%d/%d MIDI-clocks/click=%d 32nd-notes/24-MIDI-clocks=%d\n",
- nn,denom,cc,bb); */
-}
-
-void smf_smpte(hr,mn,se,fr,ff)
-{
- prtime();
- gprintf(TRANS,
- "SMPTE, hour=%d minute=%d second=%d frame=%d fract-frame=%d (IGNORED)\n",
- hr, mn, se, fr, ff);
-}
-
-void smf_arbitrary(leng,mess)
-char *mess;
-{
- prtime();
- gprintf(TRANS, "Arbitrary bytes, leng=%d (IGNORED)\n",leng);
-}
-
-void smf_error(msg)
- char *msg;
-{
- gprintf(ERROR, msg);
-}
-
-
-void prtime()
-{
- gprintf(TRANS, "Time=%ld/%ld ",Mf_currtime, gio_time());
-}
-
-void initfuncs()
-{
- Mf_error = smf_error;
- Mf_header = smf_header;
- Mf_starttrack = smf_trackstart;
- Mf_endtrack = smf_trackend;
- Mf_on = smf_noteon;
- Mf_off = smf_noteoff;
- Mf_pressure = smf_pressure;
- Mf_controller = smf_parameter;
- Mf_pitchbend = smf_pitchbend;
- Mf_program = smf_program;
- Mf_chanpressure = smf_chanpressure;
- Mf_sysex = smf_sysex;
- Mf_metamisc = smf_metamisc;
- Mf_seqnum = smf_metaseq;
- Mf_eot = smf_metaeot;
- Mf_timesig = smf_timesig;
- Mf_smpte = smf_smpte;
- Mf_tempo = smf_tempo;
- Mf_keysig = smf_keysig;
- Mf_sqspecific = smf_metaspecial;
- Mf_text = smf_metatext;
- Mf_arbitrary = smf_arbitrary;
-}
diff --git a/lib-src/libnyquist/cmt/seqmread.h b/lib-src/libnyquist/cmt/seqmread.h
deleted file mode 100644
index a03da03..0000000
--- a/lib-src/libnyquist/cmt/seqmread.h
+++ /dev/null
@@ -1,4 +0,0 @@
-/* seqmread.h -- midi file reader */
-
-void seq_read_smf(seq_type seq, FILE *fp); /* LISP: (SEQ-READ-SMF SEQ FILE) */
-
diff --git a/lib-src/libnyquist/cmt/seqmwrite.c b/lib-src/libnyquist/cmt/seqmwrite.c
deleted file mode 100644
index 1aaa37f..0000000
--- a/lib-src/libnyquist/cmt/seqmwrite.c
+++ /dev/null
@@ -1,642 +0,0 @@
-/* created by DMH (damonhorowitz): write seq_type as standard midifile */
-/***************************************************************************
-* Change Log
-* Date | Change
-*-----------+---------------------------------------------------------------
-* 11-Mar-94 | Created Change Log
-* 11-Mar-94 | PLu : Added private to function defs.
-* 28-Apr-03 | DM : Change #include's for portability
-****************************************************************************/
-
-#include "switches.h"
-
-#include <stdio.h>
-
-#include "cext.h"
-#include "userio.h"
-#include "midicode.h"
-#include "mfmidi.h"
-#include "midifns.h"
-#include "timebase.h"
-#include "moxc.h"
-#include "seq.h"
-#include "seqread.h" /* to get scale() */
-#include "seqmwrite.h"
-
-long chunk_size_marker;
-int seti_counter;
-extern time_type a_start_time;
-
-long last_event; /*time from last_clock_event to the last event*/
-time_type last_clock_event;
-time_type last_tick_size; /* millisec per tick shifted 16 bits */
-
-struct smf_write_seq {
- seq_type seq;
- int track;
- FILE *outfile;
- } smfw_seq;
-extern seq_type sequence; /* this is a global to be accessed by
- * routines called from the sequence */
-/* clock state: */
-extern time_type clock_ticksize; /* millisec per tick shifted 16 bits */
-extern boolean clock_running; /* TRUE if clock is running */
-extern boolean use_midi_clock;
-
-private void smfw_bend();
-private void smfw_cause_noteoff();
-private void smfw_ctrl();
-private void smfw_deltatime();
-private void smfw_dotrack();
-private void smfw_exclusive();
-private void smfw_noteoff();
-private void smfw_noteon();
-private void smfw_process_event();
-private void smfw_ramp_event(seq_type seq, event_type event,
- unsigned int value, unsigned int to_value, int increment,
- time_type step, int n);
-private void smfw_send_macro();
-private void smfw_touch(seq_type seq, int voice, int value);
-private void writevarlen();
-
-
-/* smfw_bend -- write a pitch bend to a midi file */
-/**/
-private void smfw_bend(seq_type seq, int voice, int value)
-{
- if(debug) gprintf(TRANS, "smfw_bend %d\n", value);
- smfw_deltatime();
- putc(MIDI_BEND | (voice - 1), smfw_seq.outfile);
- putc(0xFF & ((value & 0x1) << 6) , smfw_seq.outfile);
- putc(0xFF & (value >> 1), smfw_seq.outfile);
-}
-
-
-/* smfw_cause_noteoff -- schedule a noteoff for midi file */
-/*
- * NOTE: this is called by smfw_process_event when it handles a note
- * event node in a seq_type's event list. The ordinary moxc scheduler
- * is used to "schedule" the noteoff in the future. In reality, the
- * output is done as fast as possible (by attempting an infinite rate),
- * so no real timing delays occur. The effect is to sort events by their
- * specified time.
- */
-private void smfw_cause_noteoff(seq, delay, voice, pitch)
- seq_type seq;
- time_type delay;
- int voice;
- int pitch;
-{
- if(debug) gprintf(TRANS, "cause noteoff at %ld...", virttime + delay);
- pitch += seq->transpose;
- while (pitch <= 0) pitch += 12;
- while (pitch >= 127) pitch -= 12;
- seq->noteoff_count++;
- causepri((delay_type) delay, 10, seq->noteoff_fn,
- seq, voice, pitch);
-
-}
-
-private void smfw_clock_event(old_ticksize, new_ticksize)
- time_type old_ticksize, new_ticksize;
-{
- time_type temp_ticksize = new_ticksize;
- new_ticksize = scale(new_ticksize, 375L, 1024L);
-/* (new_ticksize >> 16) * 24000 ms/clock becomes us/midiquarter */
-
- if(debug) gprintf(TRANS, "smfw_clock: write %ld (time:%ld) ->->->tempo %ld\n",
- new_ticksize, virttime, 2500L / (new_ticksize / 24000));
-
- /*use old ticksize to write the delta for the clock event*/
- last_tick_size = old_ticksize;
- smfw_deltatime();
- last_tick_size = temp_ticksize;/* reset to = new_tick_size */
- putc(0xFF, smfw_seq.outfile);
- putc(0x51, smfw_seq.outfile);
- putc(0x03, smfw_seq.outfile);
- putc((int) ((new_ticksize >> 16) & 0xFF), smfw_seq.outfile);
- putc((int) ((new_ticksize >> 8) & 0xFF), smfw_seq.outfile);
- putc((int) (new_ticksize & 0xFF), smfw_seq.outfile);
-
- last_clock_event = virttime;
- last_event = 0L;
- /*no time expired between last clockevent and last event(they are the same).*/
- /*next clock event will be exactly the next this_event from last_clock_event*/
-}
-
-
-/* smfw_ctrl -- write a control change to a midi file */
-/**/
-private void smfw_ctrl(seq_type seq, int voice, int ctrl_name, int value)
-{
- if(debug) gprintf(TRANS, "smfw_ctrl %d: %d\n", ctrl_name, value);
- smfw_deltatime();
- putc(MIDI_CTRL | (voice - 1), smfw_seq.outfile);
- putc(ctrl_name, smfw_seq.outfile);
- putc(value, smfw_seq.outfile);
-}
-
-
-/* smfw_deltatime -- write the time difference between now an previous event */
-/**/
-private void smfw_deltatime()
-{
- /* if last_ and clock_ are different, use last_ for clock deltatime*/
- time_type use_ticksize = (clock_ticksize != last_tick_size) ?
- last_tick_size : clock_ticksize;
- time_type this_event = virttime - last_clock_event;
- if(debug) gprintf(TRANS, "delta! ticksize: %lu Lastev: %ld ThisevScaled: %lu Thisev: %lu ",
- clock_ticksize, last_event, (this_event * ((2500L << 16) / use_ticksize)) / 100,
- this_event);
-
- this_event = ((virttime - last_clock_event) * ((2500L << 16) / use_ticksize)) / 100;
-
- if(debug) gprintf(TRANS, "--- deltatime: %lu\n", this_event - last_event);
- writevarlen((long) (this_event - last_event));
-
- last_event = this_event;
-}
-
-
-/* smfw_dotrack -- write the remainder of a track */
-private void smfw_dotrack(seq)
- seq_type seq;
-{
- long end_marker;
- timebase_type old_timebase = timebase;
- unsigned long chunk_size;
-
- if (seq->runflag) {
- if ((seq->timebase->virt_base == 0) &&
- (seq->timebase->rate == STOPRATE))
- /*we just set these last time through... do nothing*/;
- seq_stop(seq);
- }
- timebase_use(seq->timebase);
- set_rate(seq->timebase, STOPRATE);
- set_virttime(seq->timebase, 0L);
- seq->current = seq_events(seq);
- seq->noteoff_count = 0L;
- seq->runflag = TRUE;
- seq->paused = TRUE;
- last_clock_event = 0L;
- last_event = 0L;
- if(debug) gprintf(TRANS, "dotrack (reset) %d %ld (%lu) \n",
- smfw_seq.track, last_event, virttime);
-
- if (seq->current)
- cause((delay_type)(seq->current->ntime - virttime), smfw_process_event,
- seq);
- set_virttime(timebase, MAXTIME);
- catchup();
-
- putc(0x00, smfw_seq.outfile);
- putc(0xFF, smfw_seq.outfile);/*end of track chunk*/
- putc(0x2F, smfw_seq.outfile);
- putc(0x00, smfw_seq.outfile);
- end_marker = ftell(smfw_seq.outfile);
- fseek(smfw_seq.outfile, chunk_size_marker, 0);/*go back to enter chunksize*/
- chunk_size = (end_marker - chunk_size_marker) - 4;/* - 4 for 4 size bytes*/
- if(debug) gprintf(TRANS, "bytes written in previous track: %ld \n\n", chunk_size);
- putc((int) ((0xFF & (chunk_size >> 24))), smfw_seq.outfile);
- putc((int) ((0xFF & (chunk_size >> 16))), smfw_seq.outfile);
- putc((int) ((0xFF & (chunk_size >> 8))), smfw_seq.outfile);
- putc((int) ((0xFF & chunk_size)), smfw_seq.outfile);
- fseek(smfw_seq.outfile, end_marker, 0);/*return file pointer to end of track*/
- timebase_use(old_timebase);
-}
-
-
-/* smfw_exclusive -- write a system excl. msg to midi file */
-private void smfw_exclusive(length, msg)
-int length;
-unsigned char *msg;
-{
- int length_count = 0;
-
- if(debug) gprintf(TRANS, "SYSEX (time:%ld)\n", virttime);
-
- smfw_deltatime();
-
- while (length > length_count){ /* *(msg-1) != MIDI_EOX) { */
- putc(*msg++, smfw_seq.outfile);
- length_count++;
- }
- if(*(--msg) != MIDI_EOX) gprintf(TRANS, "ERROR: no end of sysex\n");
-}
-
-private void smfw_msg_write(n,c1,c2,c3)
- int n;
- unsigned char c1,c2,c3;
-{
- if(debug) gprintf(TRANS, "MSGWRITE %d bytes (time:%ld)\n", n, virttime);
- smfw_deltatime();
- switch(n) {
- case 1: putc(c1, smfw_seq.outfile);
- break;
- case 2: putc(c1, smfw_seq.outfile);
- putc(c2, smfw_seq.outfile);
- break;
- case 3: putc(c1, smfw_seq.outfile);
- putc(c2, smfw_seq.outfile);
- putc(c3, smfw_seq.outfile);
- break;
- }
-}
-
-
-/* smfw_noteoff -- write noteoff to midi file */
-/**/
-private void smfw_noteoff(seq_type seq, int voice, int pitch)
-{
- if(debug) gprintf(TRANS, "smfw_noteoff %d: %d (time:%ld)\n", voice, pitch, virttime);
- smfw_deltatime();
- putc(NOTEOFF | (voice - 1), smfw_seq.outfile);
- putc(pitch, smfw_seq.outfile);
- putc(0x40, smfw_seq.outfile);
-}
-
-
-/* smfw_noteon -- write noteon to midi file */
-/*
- * NOTE: the seq parameter is not used here, but is passed in by the
- * seq_noteon macro, so we have to have a placeholder for it.
- */
-private void smfw_noteon(seq, voice, pitch, vel)
- seq_type seq;
- int voice, pitch, vel;
-{
- if(debug) gprintf(TRANS, "smfw_noteon %d: %d %d(time:%ld)\n", voice, pitch, vel, virttime);
- smfw_deltatime();
- putc(NOTEON | (voice - 1), smfw_seq.outfile);
- putc(pitch, smfw_seq.outfile);
- putc(vel, smfw_seq.outfile);
-}
-
-
-/* smfw_process_event -- write a seq event to a midi file */
-/**/
-private void smfw_process_event(seq)
- seq_type seq;
-{
- register event_type event;
- if (!seq->runflag) return;
- while ((event = seq->current) && (event->ntime <= virttime)) {
- unsigned int voice;
- if ((vc_voice(event->nvoice) == smfw_seq.track) || /*if on current track*/
- (((vc_voice(event->nvoice) - 16) == smfw_seq.track)
- && (smfw_seq.track > 0)) ||
- /* acknowledge clock change on all tracks*/
- (event->value == CLOCK_VALUE)) {
-
- /* process all current (and earlier) events */
- if (is_note(event)) { /*** play a note or rest ***/
- /* if this note is not a rest, play it and schedule an off event */
- if (event->value != NO_PITCH &&
- (seq_channel_mask(seq) &
- (1 << ((voice = vc_voice(event->nvoice)) - 1)))) {
- seq_noteon(seq, voice, (0xFF & event->value),
- (int) (event->u.note.ndur & 0xFF));
-
- seq_cause_noteoff(seq, (event->u.note.ndur) >> 8,
- voice, (0xFF & event->value));
- }
- } else { /*** send a control command ***/
- int n;
- time_type step;
- int delta;
- int increment;
- int voice = vc_voice(event->nvoice);
- ulong enabled = seq_channel_mask(seq) & (1 << (voice - 1));
-
- switch (vc_ctrl(event->nvoice)) {
- case PSWITCH_CTRL:
- if (!enabled) break;
- if(debug) gprintf(TRANS, "porta %d (time:%ld)... ", event->value, virttime);
- seq_midi_ctrl(seq, voice, PORTASWITCH, 0xFF & event->value);
- break;
- case MODWHEEL_CTRL:
- if (!enabled) break;
- if(debug) gprintf(TRANS, "modw %d (time:%ld)...", event->value, virttime);
- seq_midi_ctrl(seq, voice, MODWHEEL, 0xFF & event->value);
- break;
- case TOUCH_CTRL:
- if (!enabled) break;
- if(debug) gprintf(TRANS, "touch %d (time:%ld)... ", event->value, virttime);
- seq_midi_touch(seq, voice, 0xFF & event->value);
- break;
- case VOLUME_CTRL:
- if (!enabled) break;
- if(debug) gprintf(TRANS, "ftvol %d (time:%ld)...", event->value, virttime);
- seq_midi_ctrl(seq, voice, VOLUME, 0xFF & event->value);
- break;
- case BEND_CTRL:
- if (!enabled) break;
- if(debug) gprintf(TRANS, "bend %d (time:%ld)... ", event->value, virttime);
- seq_midi_bend(seq, voice, event->value);
- break;
- case PROGRAM_CTRL:
- if (!enabled) break;
- if(debug) gprintf(TRANS, "prog %d (time:%ld)\n", event->value, virttime);
- smfw_deltatime();
- putc(MIDI_CH_PROGRAM | (voice - 1), smfw_seq.outfile);
- putc(0xFF & event->value, smfw_seq.outfile);
- break;
- case ESC_CTRL:
- switch (event->value) {
- time_type this_event;
- case CALL_VALUE: /*called routine will write to midifile in execution */
- sequence = seq;
- (*(event->u.call.routine))(event->u.call.args);
- break;
- case CLOCK_VALUE:
- clock_ticksize = event->u.clock.ticksize;
- if(debug) gprintf(TRANS, "clockevent! ticksize: %lu (time:%ld)\n",
- clock_ticksize, virttime);
-
- if (virttime > 0) { /* any clock before this is already recorded in the header */
- if (smfw_seq.track == 0) { /* record clock event on tempo track = 0 */
- /* cause clock write in half a newtick, because it was written .5 tick early*/
- cause((delay_type) (clock_ticksize >> 17), smfw_clock_event,
- last_tick_size, clock_ticksize);
- last_tick_size = clock_ticksize; /*set new ticksize*/
- } else { /*not on tempo track*/
- this_event = ((virttime - last_clock_event) *
- ((2500L << 16) / last_tick_size)) / 100;
- if(debug) gprintf(TRANS, "track != 0: Lastev: %ld Thisev: %ld NewLast: %ld\n",
- last_event, this_event, this_event - last_event);
- last_event = 0L - (this_event - last_event);
- last_clock_event = virttime;
- /*last_event is negative, so will be ADDED to next this_event*/
-
- last_tick_size = clock_ticksize;
- }
- } else if (debug) gprintf(TRANS, "IGNORED\n");/* if virttime <= 0 */
- break;
- case MACCTRL_VALUE:
- if (!enabled) break;
- if (debug) gprintf(TRANS, "MACCTRL %d: %d (time:%ld)\n",
- event->u.macctrl.ctrl_number, event->u.macctrl.value, virttime);
- smfw_deltatime();
- putc(MIDI_CTRL | (voice - 1), smfw_seq.outfile);
- putc(0xFF & event->u.macctrl.ctrl_number, smfw_seq.outfile);
- putc(0xFF & event->u.macctrl.value, smfw_seq.outfile);
- break;
- case MACRO_VALUE:
- if (!enabled) break;
- if (debug) gprintf(TRANS, "MACRO sent to...\n");
- smfw_send_macro(event->u.macro.definition,
- voice, event->u.macro.parameter, -1, 0);
- break;
- case CTRLRAMP_VALUE:
- case DEFRAMP_VALUE: {
- int from, to;
- if (!enabled) break;
- step = event->u.ramp.step;
- if (event->value == CTRLRAMP_VALUE) {
- if(debug) gprintf(TRANS, "CTRLRAMP (time:%ld)...", virttime);
- from = event->u.ramp.u.ctrl.from_value;
- to = event->u.ramp.u.ctrl.to_value;
- } else {
- if (debug) gprintf(TRANS, "DEFRAMP (time:%ld)...", virttime);
- from = event->u.ramp.u.def.parameter[
- event->u.ramp.u.def.parm_num];
- to = event->u.ramp.u.def.to_value;
- }
- delta = to - from;
- increment = delta;
- if (delta < 0) delta = -delta;
- /* RBD - Note: Step is always non-zero */
- n = event->u.ramp.dur / step;
- increment = (increment << 8) / n;
- smfw_ramp_event(seq, event, from << 8, to << 8,
- increment, step, n);
- seq->noteoff_count++;
- break;
- }
- case SETI_VALUE:
- seti_counter++; /*will be printed after writing is completed*/
- *(event->u.seti.int_to_set) = event->u.seti.value;
- break;
- default:
- gprintf(TRANS, "unexpected ESC_CTRL value\n");
- break;
- }
- break;
- default:
- gprintf(TRANS, "unexpected seq data\n");
- break;
- }
- }
- }
- seq->current = event->next;
- }
- if (seq->current) { /* if there is an event: delay, and then process again */
- cause((delay_type)(event->ntime - virttime), smfw_process_event, seq);
- }
-}
-
-/* smfw_ramp_event -- generate a ramp to write*/
-private void smfw_ramp_event(seq, event, value, to_value, increment, step, n)
- seq_type seq;
- register event_type event;
- unsigned int value;
- unsigned int to_value;
- int increment;
- time_type step;
- int n;
-{
- if(debug) gprintf(TRANS, "ramp of %d: %d to %d\n", event->u.ramp.ctrl, value >> 8,
- to_value >> 8);
- if (seq->runflag) {
- int voice = vc_voice(event->nvoice);
- if (n == 0) value = to_value;
- else cause((delay_type)step, smfw_ramp_event, seq, event, value + increment,
- to_value, increment, step, n - 1);
- if (event->value == CTRLRAMP_VALUE) {
- int ctrl = event->u.ramp.ctrl;
- if (ctrl == -TOUCH_CTRL) smfw_touch(seq, voice, value >> 8);
- else if (ctrl == -BEND_CTRL) smfw_bend(seq, voice, value >> 8);
- else smfw_ctrl(seq, voice, ctrl, value >> 8);
- } else { /* must be DEFRAMP_VALUE */
- smfw_send_macro(event->u.ramp.u.def.definition,
- vc_voice(event->nvoice),
- event->u.ramp.u.def.parameter,
- event->u.ramp.u.def.parm_num, value >> 8);
- }
- if (n == 0) seq_end_event(seq);
- }
-}
-
-
-/* smfw_send_macro -- write msg to midi file from a seq "macro" event */
-/**/
-private void smfw_send_macro(ptr, voice, parameter, parm_num, value)
- register unsigned char *ptr;
- int voice;
- short parameter[];
- int parm_num;
- int value;
-{
- register unsigned char code, *loc;
- while ((code = *ptr++)) {
- loc = ptr + *ptr;
- ptr++;
- if (code <= nmacroparms) {
- code--;
- *loc = (code == parm_num ? value : parameter[code]) & 0x7f;
- }
- else if (code == nmacroparms + 1) {
- *loc = ((voice - 1) & 0xF) | *loc;
- }
- else {
- code -= (nmacroparms + 2);
- *loc = ((code == parm_num ? value : parameter[code]) >> 7) & 0x7F;
- }
- }
- if (ptr[1] == MIDI_SYSEX)
- smfw_exclusive(*ptr, ptr + 1);
- else
- smfw_msg_write(*ptr, ptr[1], ptr[2], ptr[3]);
-}
-
-
-/* smfw_touch -- write aftertouch msg to midi file */
-/**/
-private void smfw_touch(seq_type seq, int voice, int value)
-{
- if(debug) gprintf(TRANS, "smfw_touch %d\n", value);
- smfw_deltatime();
- putc(MIDI_TOUCH | (voice - 1), smfw_seq.outfile);
- putc(value, smfw_seq.outfile);
-}
-
-
-void seq_write_smf(seq, outfile)
- seq_type seq;
- FILE *outfile;
-{
- time_type put_tick_size;
- int i;
- time_type starting_ticksize = 1638400L;/*default midifile tempo 100*/
- int track_count = 0;
- long track_count_marker;
- register event_type event;
-
- seti_counter = 0;
-
- /*initialize the smfw_seq struct*/
- smfw_seq.outfile = outfile;
- smfw_seq.seq = seq_copy(seq);
-
- smfw_seq.seq->cause_noteoff_fn = smfw_cause_noteoff;
- smfw_seq.seq->midi_bend_fn = smfw_bend;
- smfw_seq.seq->midi_ctrl_fn = smfw_ctrl;
- smfw_seq.seq->midi_touch_fn = smfw_touch;
- smfw_seq.seq->noteoff_fn = smfw_noteoff;
- smfw_seq.seq->noteon_fn = smfw_noteon;
-
- event = seq_events(smfw_seq.seq);
-
- /*search for clock events up till start of score*/
- while(event->ntime <= 0){
- if(debug) gprintf(TRANS, "event (time:%ld)\n", event->ntime);
- if(event->value == CLOCK_VALUE) {
- if(debug) gprintf(TRANS, "clock %lu at 0\n", event->u.clock.ticksize);
- starting_ticksize = event->u.clock.ticksize;
- break;
- }
- event = event->next;
- }
-
- putc(0x4D, smfw_seq.outfile); /*header: MThd*/
- putc(0x54, smfw_seq.outfile);
- putc(0x68, smfw_seq.outfile);
- putc(0x64, smfw_seq.outfile);
- putc(0x00, smfw_seq.outfile);
- putc(0x00, smfw_seq.outfile);
- putc(0x00, smfw_seq.outfile);
- putc(0x06, smfw_seq.outfile);
- putc(0x00, smfw_seq.outfile);
- putc(0x01, smfw_seq.outfile); /*format 1 */
- putc(0x00, smfw_seq.outfile);
-
- track_count_marker = ftell(smfw_seq.outfile); /*number of tracks will be written later*/
- putc(0x00, smfw_seq.outfile); /*will be filled by track_count_marker*/
-
- putc(0x02, smfw_seq.outfile);/*division resolution of 600*/
- putc(0x58, smfw_seq.outfile);
-
- for(i = 0; i < 17; i++){/*for each track..*/
- if(((seq_used_mask(smfw_seq.seq) >> (i - 1)) & 0x1) || (i == 0)){
- if(debug) gprintf(TRANS, "write track %d \n", i);
- track_count++;
- clock_ticksize = starting_ticksize;
- last_tick_size = starting_ticksize;
- putc(0x4D, smfw_seq.outfile);/*track header: MTrk*/
- putc(0x54, smfw_seq.outfile);
- putc(0x72, smfw_seq.outfile);
- putc(0x6B, smfw_seq.outfile);
-
- chunk_size_marker = ftell(smfw_seq.outfile);/*size of chunk will be written later*/
- putc(0x00, smfw_seq.outfile); /*will be filled by chunk_size_marker*/
- putc(0x00, smfw_seq.outfile);
- putc(0x00, smfw_seq.outfile);
- putc(0x00, smfw_seq.outfile);
-
- if(i == 0) { /*tempo and time signature track*/
- putc(0x00, smfw_seq.outfile);/* default time sig stuff*/
- putc(0xFF, smfw_seq.outfile);
- putc(0x58, smfw_seq.outfile);
- putc(0x04, smfw_seq.outfile);
- putc(0x04, smfw_seq.outfile);
- putc(0x02, smfw_seq.outfile);
- putc(0x18, smfw_seq.outfile);
- putc(0x08, smfw_seq.outfile);
- putc(0x00, smfw_seq.outfile);
-
- putc(0xFF, smfw_seq.outfile);/*TEMPO: inserted here in case default is used*/
- putc(0x51, smfw_seq.outfile);
- putc(0x03, smfw_seq.outfile);
- put_tick_size = scale(clock_ticksize, 375L, 1024L);
- putc((int) ((put_tick_size >> 16) & 0xFF), smfw_seq.outfile);
- putc((int) ((put_tick_size >> 8) & 0xFF), smfw_seq.outfile);
- putc((int) (put_tick_size & 0xFF), smfw_seq.outfile);
- }
- smfw_seq.track = i;
- smfw_dotrack(smfw_seq.seq);
- }
- }
- if(seti_counter) gprintf(TRANS, "%d SETI events IGNORED!\n", seti_counter);
- seq_stop(smfw_seq.seq);
- fseek(smfw_seq.outfile, track_count_marker, 0);/*go back and insert number of tracks*/
- putc(0xFF & track_count, smfw_seq.outfile);
- fclose(smfw_seq.outfile);
-}
-
-
-/* writevarlen -- write a variable length integer to midi file */
-/**/
-private void writevarlen(value)
- register long value;
-{
- register ulong buffer;
-
- if(debug) gprintf(TRANS, "variable length quantity...");
-
- buffer = value & 0x7f;
-
- while((value >>= 7) > 0) {
- buffer <<= 8;
- buffer |= 0x80;
- buffer += (value & 0x7f);
- }
-
- for(;;) {
- if(debug) gprintf(TRANS, " byte ");
- putc((int) (buffer & 0xFF), smfw_seq.outfile);
- if (buffer & 0x80) buffer >>= 8;
- else break;
- }
- if(debug) gprintf(TRANS, "written!\n");
-}
diff --git a/lib-src/libnyquist/cmt/seqmwrite.h b/lib-src/libnyquist/cmt/seqmwrite.h
deleted file mode 100644
index 458336f..0000000
--- a/lib-src/libnyquist/cmt/seqmwrite.h
+++ /dev/null
@@ -1,4 +0,0 @@
-/* seqmwrite.h -- midi file writer */
-
-void seq_write_smf(seq_type seq, FILE *outfile); /* LISP: (SEQ-WRITE-SMF SEQ FILE) */
-
diff --git a/lib-src/libnyquist/cmt/seqread.c b/lib-src/libnyquist/cmt/seqread.c
deleted file mode 100644
index dbb91eb..0000000
--- a/lib-src/libnyquist/cmt/seqread.c
+++ /dev/null
@@ -1,1888 +0,0 @@
-/****************************************************************************
- seqread.c -- Phase 1 of adagio compilation...
-
- this module parses adagio programs and builds a linked list structure
- consisting of notes and control changes in time order.
-
- Copyright 1989 Carnegie Mellon University
-*****************************************************************************/
-
-/*****************************************************************************
-* Change Log
-* Date | Change
-*-----------+-----------------------------------------------------------------
-* 31-Dec-85 | Created changelog
-* 31-Dec-85 | Add c:\ to include directives
-* 31-Dec-85 | Added standard command scanner, metronome variable, need to add
-* | cmdline_help procedure
-* 31-Dec-85 | Call intr_init
-* 31-Dec-85 | Set musictrace from command line via -trace
-* 31-Dec-85 | Added -poll
-* 1-Jan-86 | Put error messages out to stderr
-* 1-Jan-86 | Set IsAT. Can be later overridden by -at and -xt switches,
-* | currently only used for diagnostics (may be needed for
-* | compatibles, who knows? In which case remove the tests which
-* | confirm the type of processor)
-* 1-Jan-86 | <rgd/jmn> Removed dur-adjusted message
-* 1-Jan-86 | Added miditrace
-* 18-Jan-86 | Shortened durations by 1/200 s to avoid roundoff problems --
-* | see buildnote for details.
-* 3-Mar-86 | Allow octave and accidentals in either order after pitch name.
-* | Default octave is now one that gets nearest previous pitch,
-* | the tritone (half an octave) interval is descending by default.
-* | Special commands handled by table search, !Rate command added
-* | to scale all times by a percentage (50 = half speed).
-* 9-Mar-86 | Use space to limit amount of storage allocation. Otherwise
-* | exhausting storage in phase1 caused phase2 to fail.
-* 12-Mar-86 | Broke off command line parser into adagio.c, only parser remains
-* 24-Mar-86 | Changed representation from note_struct to event_struct
-* | Parse M, N, O, X, and Y as control change commands
-* 23-May-86 | Added , and ; syntax: "," means "N0\n", ";" means "\n"
-* 16-Jul-86 | modify to only call toupper/lower with upper/lower case as
-* | parameter to be compatible with standard C functions
-* 7-Aug-86 | fixed bug with default pitches and rests
-* 5-Jul-87 | F.H: Introduced new memory handling from Mac version.
-* | Changed: init()
-* | ins_event()
-* | ins_ctrl()
-* | ins_note()
-* | Deleted: reverse()
-* | nalloc()
-* | Introduced: event_alloc()
-* | phase1_FreeMem()
-* | system.h & system.c dependencies
-* 10-Feb-88 | fixed parseend to accept blanks and tabs,
-* | fixed rate scaling of durations
-* 11-Jun-88 | commented out gprintf of \n to ERROR after parsing finished.
-* 13-Oct-88 | JCD : exclusive AMIGA version.
-* 13-Apr-89 | JCD : New portable version.
-* 31-Jan-90 | GWL : Cleaned up for LATTICE
-* 30-Jun-90 | RBD : further changes
-* 2-Apr-91 | JDW : further changes
-* 30-Jun-91 | RBD : parse '+' and '/' in durations, * after space is comment
-* 28-Apr-03 | DM : changes for portability
-*****************************************************************************/
-
-#include "switches.h"
-
-#include <stdio.h>
-#include <string.h>
-
-#include "cext.h"
-#include "cmdline.h"
-#include "midifns.h" /* to get time_type */
-#include "timebase.h"
-#include "moxc.h" /* to get debug declared */
-#include "seq.h"
-#include "seqread.h"
-#include "userio.h"
-/* ctype.h used to be included only by UNIX and AMIGA,
- surely everyone wants this? */
-#include "ctype.h"
-
-#ifndef toupper
-/* we're already taking precautions, so inline version of toupper is ok: */
-#define toupper(c) ((c)-'a'+'A')
-/* CAUTION: AZTEC V5.0 defines an inline version of toupper called _toupper,
- but they got it wrong!
- */
-#endif
-
-/* cmtcmd.h references amiga message ports */
-#ifdef AMIGA
-#ifdef LATTICE
-#include "amiga.h"
-#endif
-#include "exec/exec.h"
-#endif
-#include "cmtcmd.h"
-
-/* public stuff */
-extern long space; /* remaining free bytes */
-extern int abort_flag;
-
-/****************************************************************************
- The following are used to simulate fixed point with the radix point
- 8 bits from the right:
-****************************************************************************/
-
-#define precise(x) (((time_type) x) << 8)
-#define seqround(x) ((((time_type) x) + 128) >> 8)
-#define trunc(x) (((time_type) x) >> 8)
-
-#define nullstring(s) (s[0] == EOS)
-
-
-/****************************************************************************
-* Routines local to this module:
-****************************************************************************/
-private void do_a_rest();
-private time_type doabsdur();
-private int doabspitch();
-private void doclock();
-private void docomment();
-private void doctrl();
-private void dodef();
-private time_type dodur();
-private void doerror();
-private int doloud();
-void domacro();
-private void donextdur();
-private int dopitch();
-private void doprogram();
-private void dorate();
-private void doset();
-private void dospecial();
-private time_type dosymdur();
-private void dotempo();
-private void dotime();
-private void dovoice();
-private void fferror();
-private void init();
-private int issymbol();
-private void marker();
-private void parseend();
-private void parsefield();
-private boolean parsenote();
-private boolean parseparm();
-private int scan();
-private int scan1();
-private long scanint();
-private void scansymb();
-private long scansgnint();
-
-/****************************************************************************
-* data structures for parser lookup tables
-****************************************************************************/
-
-struct durt { /* duration translation table */
- char symbol;
- time_type value;
-};
-
-#define durtable_len 7
-struct durt durtable[durtable_len] = {
- {'W', 4800L},
- {'H', 2400L},
- {'Q', 1200L},
- {'I', 600L},
- {'S', 300L},
- {'%', 150L},
- {'^', 75L}
-};
-
-struct loudt { /* loudness translation table */
- char symbol[4];
- int value;
-};
-
-struct loudt loudtable[] = {
- {"PPP", 20},
- {"PP\0", 26},
- {"P\0\0", 34},
- {"MP\0", 44},
- {"MF\0", 58},
- {"F\0\0", 75},
- {"FF\0", 98},
- {"FFF", 127}
-};
-
-char too_many_error[] = "Too many parameters";
-
-private char *ssymbols[] = {"TEMPO", "RATE", "CSEC", "MSEC",
- "SETI", "SETV", "CALL", "RAMP",
- "CLOCK", "DEF", "END"};
-
-#define sym_tempo 0
-#define sym_rate 1
-#define sym_csec 2
-#define sym_msec 3
-#define sym_seti 4
-#define sym_setv 5
-#define sym_call 6
-#define sym_ramp 7
-#define sym_clock 8
-#define sym_def 9
-#define sym_end 10
-
-/* number of symbols */
-#define sym_n 11
-
-#define linesize 100
-private char line[linesize]; /* the input line */
-private char token[linesize]; /* a token scanned from the input line */
-
-private boolean pitch_flag; /* set when a pitch is indicated */
-/* (if controls changes are given, only allocate a note event if
- * a pitch was specified -- i.e. when pitch_flag is set)
- */
-private boolean rest_flag; /* set when a rest (R) is found */
-/* this flag is NOT inherited by the next line */
-
-private boolean symbolic_dur_flag;
-/* TRUE if last dur was not absolute
- * (if this is set, then the default duration is changed
- * accordingly when the tempo is changed.)
- */
-
-
-#define nctrl 8
-
-private boolean ctrlflag[nctrl];
-/* TRUE if control change was present
- * ctrlflag[0] TRUE if ANY control change
- * was present
- */
-private int ctrlval[nctrl];
-/* the new value of the control */
-#define nmacroctrl 10
-short macctrlx; /* index into the following: */
-short macctrlnum[nmacroctrl]; /* macro ctrl number, e.g. for ~4(67), or
- * number of parameters for a symbolic macro */
-short macctrlparmx[nmacroctrl]; /* ctrl value for ctrl change, or index of
- * parameters for symbolic macro */
-short macctrlparms[nmacroctrl*nmacroparms]; /* parameters for symbolic macros */
-short macctrlnextparm;
-def_type macctrldef[nmacroctrl]; /* definition for symbolic macro */
-
-private time_type time_scale; /* 1000 if centisec, 100 if millisec */
-/* note: user_specified_time * (time_scale / rate) = millisec */
-
-
-
-/****************************************************************************
-*
-* variables private to this module
-*
-****************************************************************************/
-
-private boolean end_flag = FALSE; /* set "true" when "!END" is seen */
-
-/****************************************************************************
-* state variables
-* Because each line of an Adagio score inherits properties from the previous
-* line, it makes sense to implement the parser as a collection of routines
-* that make small changes to some global state. For example, pitch is a
-* global variable. When the field G4 is encountered, the dopitch routine
-* assigns the pitch number for G4 to the variable pitch. After all fields
-* are processed, these variables describe the current note and contain the
-* default parameters for the next note as well.
-*
-* Global variables that are used in this way by the parsing rountines are:
-****************************************************************************/
-private int
-linex, /* index of the next character to be scanned */
-lineno, /* current line number */
-fieldx, /* index of the current character within a field */
-pitch, /* pitch of note */
-loud, /* loudness of note */
-voice, /* voice (midi channel) of note */
-artic; /* articulation (a percentage of duration) */
-
-private boolean ndurp; /* set when a next (N) is indicated */
-/* (next time defaults to the current time plus duration unless
- * overridden by a next (N) command whose presence is signalled
- * by ndurp.)
- */
-
-private time_type
-thetime, /* the starting time of the note */
-rate, /* time rate -- scales time and duration, default = 100 */
-ntime, /* the starting time of the next note */
-dur, /* the duration of the note */
-tempo, /* the current tempo */
-start, /* the reference time (time of last !tempo or !rate cmd) */
-ticksize; /* set by !clock command, zero for no clock */
-
-private int pitchtable[7] = {
- 69, 71, 60, 62, 64, 65, 67 };
-
-extern char score_na[name_length];
-
-private seq_type the_score; /* this is the score we are parsing */
-
-
-/* def_append -- append a byte to the current definition */
-/*
- * The def data structure:
- * [code][offset][code][offset]...[0][length][data][data][data]...
- * where code is 1:nmacroparms for %n,
- * nmacroparms+1 for %v,
- * nmacroparms+2:nmacroparms*2+1 for ^n
- * and offset is the byte offset (from the offset byte) to the data
- * where the parameter should be substituted
- * and length is the number of data bytes
- */
-boolean def_append(def, nparms, data)
- unsigned char def[];
- int nparms;
- int data;
-{
- int base = (nparms << 1) + 1; /* this byte is the length */
- /* first parameter has to be able to reference last byte: */
- if ((def[base])++ >= (254 - (nparms << 1))) {
- fferror("Data too long");
- return FALSE;
- }
- def[base + def[base]] = data;
- return TRUE;
-}
-
-
-def_type def_lookup(symbol)
- char *symbol;
-{
- def_type defn = seq_dictionary(the_score);
- while (defn) {
- if (strcmp(defn->symbol, symbol) == 0) {
- return defn;
- }
- defn = defn->next;
- }
- return NULL;
-}
-
-
-void def_parm(def, nparms, code)
- unsigned char def[];
- int nparms;
- int code;
-{
- int i, j;
- /* in order to insert a 2-byte parameter descriptor, the offsets from
- * previous descriptors (that precede the data) need to be increased by 2:
- */
- for (i = 1; i < (nparms << 1); i += 2) {
- def[i] += 2;
- }
- /* now i is index of length; work backwards from the last byte, moving
- * everything up by 2 bytes to make room for the new descriptor:
- */
- for (j = i + def[i] + 2; j > i; j--) {
- def[j] = def[j - 2];
- }
- /* now i is index of offset; insert the descriptor code (first byte)
- * and the offset to the parameter location in the message (second byte)
- */
- def[i - 1] = code;
- def[i] = def[i + 2] + 2;
-}
-
-/****************************************************************************
-* do_a_rest
-* Effect: parses a rest (R) command
-****************************************************************************/
-
-private void do_a_rest()
-{
- if (token[fieldx])
- fferror("Nothing expected after rest");
- rest_flag = TRUE;
-}
-
-/****************************************************************************
-* doabsdur
-* Effect: parses an absolute dur (U) command
-****************************************************************************/
-
-private time_type doabsdur()
-{
- time_type result=1000L;
- register char c;
- if (isdigit(token[fieldx])) {
- result = precise(scanint());
- /* allow comma or paren for use in parameter lists */
- if ((c = token[fieldx]) && (c != ',') && (c != ')') && (c != '+')) {
- fferror("U must be followed by digits only");
- }
- if (time_scale == 1000) result *= 10; /* convert to ms */
- } else fferror("No digit after U");
- return result;
-}
-
-/****************************************************************************
-* doabspitch
-* Effect: parses an absolute pitch (P) command
-****************************************************************************/
-
-private int doabspitch()
-{
- int result = 60;
- int startx = fieldx;
- register char c;
- int savex;
- if (isdigit (token[fieldx])) {
- result = (int) scanint();
- /* allow comma or paren for abspitch in parameter */
- if ((c = token[fieldx]) && c != ',' && c != ')')
- fferror("P must be followed by digits only");
- else if (result < minpitch) {
- savex = fieldx;
- fieldx = startx;
- fferror("Minimum pitch of 0 will be used");
- result = minpitch;
- fieldx = savex;
- } else if (result > maxpitch) {
- savex = fieldx;
- fieldx = startx;
- fferror("Maximum pitch of 127 will be used");
- result = maxpitch;
- fieldx = savex;
- }
- } else fferror("No digits after P");
- return result;
-}
-
-
-/* doartic -- compute an articulation factor */
-/*
- NOTE: artic is a percentage that scales the duration
- of notes but not the time to the next note onset. It
- is applied to the final computed duration after all
- other scaling is applied.
- */
-private void doartic()
-{
- if (isdigit(token[fieldx])) {
- artic = (int) scanint();
- if (token[fieldx])
- fferror("Only digits were expected here");
- } else fferror("No digits after /");
-}
-
-
-/* docall -- parse a call in the form !CALL fn(p1,p2,p3) */
-/**/
-private void docall()
-{
- boolean error_flag = TRUE;
- ndurp = FALSE;
-
- linex += scan();
-
- if (token[0] == 0) fferror("Function name expected");
- else {
- char symbol[100];
- struct symb_descr *desc;
- long value[SEQ_MAX_PARMS];
- int i=0;
-
- scansymb(symbol);
- if (fieldx == 1) fferror("Routine name expected");
- else if (token[fieldx] != '(') fferror("Open paren expected");
- else {
- desc = &HASHENTRY(lookup(symbol));
- if (!desc->symb_type) {
- fieldx = 0;
- fferror("Function not defined");
- } else if (desc->symb_type != fn_symb_type) {
- fieldx = 0;
- gprintf(TRANS, "desc->symb_type is %d\n", desc->symb_type);
- fferror("This is not a function");
- } else {
- error_flag = FALSE;
- fieldx++; /* skip over paren */
- for (i = 0; i < SEQ_MAX_PARMS; i++) value[i] = 0;
- i = 0;
- /* note that no params "()" is legal */
- while (i < SEQ_MAX_PARMS && token[fieldx] != ')' &&
- parseparm(&value[i])) {
- i++;
- if (token[fieldx] == ',') {
- fieldx++;
- } else if (token[fieldx] != ')') {
- fferror("Unexpected character");
- error_flag = TRUE;
- break;
- }
- }
- fieldx++;
- if (i > SEQ_MAX_PARMS) fferror("Too many parameters");
- }
- while (TRUE) {
- linex += scan();
- if (nullstring(token)) {
- break;
- }
- switch (token[0]) {
- case 'T':
- fieldx = 1;
- dotime();
- break;
- case 'V':
- fieldx = 1;
- dovoice();
- break;
- case 'N':
- fieldx = 1;
- donextdur();
- break;
- default:
- fferror("Unexpected character");
- }
- }
- if (!error_flag)
- insert_call(the_score, seqround(thetime), lineno, voice,
- desc->ptr.routine, value, i);
- /* advance the time only if an N field was given */
- if (ndurp) thetime += ntime;
- }
- }
-}
-
-
-/* doclock -- insert a clock command */
-/*
- * derivation: if there is no previous clock running, then start the
- * clock on time. Otherwise, start the clock half a tick early.
- * ticksize = (beattime / 24) = ((60sec/tempo)/24) =
- * ((60000ms/tempo)/24) = (60000/24)/tempo = 2500/tempo
- */
-private void doclock()
-{
- int oldticksize = ticksize;
- ticksize = (2500L << 16) / tempo;
- insert_clock(the_score, seqround(thetime) - (oldticksize >> 17),
- lineno, ticksize);
-}
-
-
-/****************************************************************************
-* docomment
-* Effect: parses a comment (*) command
-****************************************************************************/
-
-private void docomment()
-{
- line[linex] = '\n'; /* force end of line to skip comment line */
- line[linex+1] = EOS;
-}
-
-/****************************************************************************
-* doctrl
-* Inputs:
-* n: control number
-* Effect: parses a control (K, M, O, X, or Y) command
-****************************************************************************/
-
-private void doctrl(n)
-int n;
-{
- ctrlval[n] = (int) scanint();
- if (token[fieldx]) {
- fferror("Only digits expected here");
- } else {
- ctrlflag[n] = TRUE;
- ctrlflag[0] = TRUE; /* ctrlflag[0] set if any flag is set */
- }
-}
-
-
-private void dodef()
-{
- /* maximum def size is 256 + 9 parms * 2 + 2 = 276 */
- unsigned char def[280];
- char symbol[100];
- int nparms = 0;
- int nibcount = 0;
- int data = 0;
- register char c;
-
- linex += scan();
-
- if (!token[0]) fferror("Symbol expected");
- else {
- strcpy(symbol, token);
- def[0] = def[1] = 0;
- while (TRUE) {
- linex += scan1(&line[linex]);
- c = token[0];
- if (!c) {
- linex--;
- if (nibcount & 1) {
- fferror("Expected pairs of hex digits: one missing");
- return;
- }
- break;
- } else if (c == ' ' || c == '\t' || c == '\n') continue;
- else if (isdigit(c)) {
- data = (data << 4) + (c - '0');
- nibcount++;
- if (!(nibcount & 1)) {
- if (!def_append(def, nparms, data))
- return;
- data = 0;
- }
- } else if ('A' <= c && c <= 'F') {
- data = (data << 4) + (c - 'A') + 10;
- nibcount++;
- if (!(nibcount & 1)) {
- if (!def_append(def, nparms, data))
- return;
- data = 0;
- }
- } else if (c == 'V') {
- data = data << 4;
- nibcount++;
- /* v without a leading nibble is equivalent to 0v: */
- if (nibcount & 1) nibcount++;
- if (!def_append(def, nparms, data))
- return;
- def_parm(def, nparms++, nmacroparms+1);
- } else if (c == '%') {
- linex += scan1(&line[linex]);
- c = token[0];
- if (c < '1' || c > ('0' + nmacroparms)) {
- fferror(parm_expected_error);
- break;
- }
- if (!def_append(def, nparms, 0))
- return;
- def_parm(def, nparms++, c - '0');
- } else if (c == '^') {
- linex += scan1(&line[linex]);
- c = token[0];
- if (c < '1' || c > ('0' + nmacroparms)) {
- fferror(parm_expected_error);
- break;
- }
- if (!def_append(def, nparms, 0))
- return;
- def_parm(def, nparms++, (c - '0') + nmacroparms + 1);
- } else { /* something unexpected here -- just exit */
- linex--;
- fferror("Unexpected data");
- return;
- }
- }
- insert_def(the_score, symbol, def,
- (nparms << 1) + def[(nparms << 1) + 1] + 2);
- }
-}
-
-/****************************************************************************
-* dodur
-* Effect: parses a duration (sum of dosymdur and/or doabsdur)
-* sets symbolic_dur_flag (according to the first addend in mixed arithmetic)
-*
-* Returns: duration in "precise" units
-****************************************************************************/
-private time_type dodur()
-{
- time_type result = 0L;
- symbolic_dur_flag = TRUE;
-
- if (token[fieldx-1] == 'U') {
- result = doabsdur();
- symbolic_dur_flag = FALSE;
- } else result = dosymdur();
- while (token[fieldx] == '+') {
- fieldx += 2;
- if (token[fieldx-1] == 'U') result += doabsdur();
- else result += dosymdur();
- }
- return scale(result, 100L, rate);
-}
-
-/****************************************************************************
-* doerror
-* Effect: parse an unrecognized field by reporting an error
-****************************************************************************/
-
-private void doerror()
-{
- fieldx = 0;
- fferror("Bad field");
-}
-
-/****************************************************************************
-* doloud
-* Effect: parse a loudness (L) command
-****************************************************************************/
-
-private int doloud()
-{
- int i, j;
- int result;
- int oldfieldx = fieldx;
- int newfieldx;
- char symbol[100];
-
- if (!token[fieldx] || token[fieldx]==')' || token[fieldx]==',') {
- fferror("L must be followed by loudness indication");
- return 100;
- }
- if (isdigit(token[fieldx])) {
- result = (int) scanint();
- newfieldx = fieldx;
- if (token[fieldx] && token[fieldx]!=')' && token[fieldx]!=',')
- fferror("Digits expected after L");
- else if (result > 127) {
- fieldx = oldfieldx;
- fferror("Maximum loudness of 127 will be used");
- fieldx = newfieldx;
- result = 127;
- } else if (result == 0) {
- fieldx = oldfieldx;
- fferror("Minimum loudness of 1 will be used");
- fieldx = newfieldx;
- result = 1;
- }
- return result;
- }
- scansymb(symbol);
- newfieldx = fieldx;
- if ((i = strlen(symbol)) > 3 ) { /* maximum is 3, e.g. "ppp" */
- fieldx = oldfieldx;
- fferror("Loudness field too long");
- fieldx = newfieldx;
- return 100;
- }
- symbol[i + 1] = '\0'; /* pad short symbols with 0 */
- /* e.g. "p\0" -> "p\0\0" */
- for (i = 0; i <= 7; i++) { /* loop through possibilities */
- for (j = 0; j <= 2; j++) { /* test 3 characters */
- if (symbol[j] != loudtable[i].symbol[j])
- break;
- }
- if (j == 3) {
- return loudtable[i].value;
- }
- }
- fieldx = oldfieldx;
- fferror("Bad loudness indication");
- fieldx = newfieldx;
- return 100;
-}
-
-
-void domacro()
-{
- int control_num;
- int value;
- if (isdigit(token[1])) {
- control_num = (int) scanint();
- if (token[fieldx] == '(') {
- fieldx++;
- if (!isdigit(token[fieldx])) {
- fferror("Control value expected");
- } else {
- value = (int) scanint();
- if (token[fieldx] != ')') {
- fferror("Missing close paren");
- } else {
- fieldx++;
- if (token[fieldx])
- fferror("Nothing expected after paren");
- else if (macctrlx < nmacroctrl - 1) {
- macctrlnum[macctrlx] = control_num;
- macctrlparmx[macctrlx] = value;
- macctrldef[macctrlx] = NULL;
- macctrlx++;
- } else fferror("Too many controls");
- }
- }
- } else fferror("Missing paren");
- } else {
- def_type def;
- char symbol[100];
- scansymb(symbol);
- if (fieldx == 1) fferror("Macro name expected");
- else if (token[fieldx] != '(') fferror("Open paren expected");
- else {
- fieldx++;
- def = def_lookup(symbol);
- if (!def) {
- fieldx = 1;
- fferror("Undefined macro");
- } else {
- long val;
- macctrlnum[macctrlx] = 0;
- macctrlparmx[macctrlx] = macctrlnextparm;
- macctrldef[macctrlx] = def;
- while (token[fieldx] != ')' && parseparm(&val)) {
- macctrlparms[macctrlnextparm++] = (short) val;
- macctrlnum[macctrlx]++;
- if (token[fieldx] == ',') {
- fieldx++;
- } else if (token[fieldx] != ')') {
- fferror("Unexpected character");
- break;
- }
- }
- fieldx++;
- macctrlx++;
- }
- }
- }
-}
-
-
-/****************************************************************************
-* donextdur
-* Effect: parse a next (N) command
-* Implementation:
-* The syntax is N followed by a duration, so save dur and use dosymdur()
-* to parse the duration field.
-* The form N<digits> is parsed directly with scanint().
-****************************************************************************/
-
-private void donextdur()
-{
- ndurp = TRUE; /* flag that N was given */
- if (isdigit(token[fieldx])) {
- ntime = precise(scanint());
- ntime = scale(ntime, (ulong)time_scale, rate);
- if (token[fieldx])
- fferror("Only digits were expected here");
- } else {
- fieldx++;
- ntime = dodur();
- }
-}
-
-/****************************************************************************
-* dopitch
-* Effect: parses a pitch command
-****************************************************************************/
-
-private int dopitch()
-{
- int p, octave=0;
- int octflag = FALSE; /* set if octave is specified */
- int oldfieldx = fieldx;
-
- p = pitchtable[token[fieldx-1]-'A'];
- while (TRUE) {
- if (token[fieldx] == 'S') { /* sharp */
- p++;
- fieldx++;
- }
- else if (token[fieldx] == 'N') { /* skip */
- fieldx++;
- }
- else if (token[fieldx] == 'F') { /* flat */
- p--;
- fieldx++;
- }
- else if (isdigit(token[fieldx]) && !octflag) { /* octave */
- octave = (int) scanint();
- octflag = TRUE;
- }
- else break; /* none of the above */
- }
- if (octflag) p = (p-48) + 12 * octave; /* adjust p to given octave */
- else { /* adjust p to note nearest the default pitch */
- int octdiff = (p + 126 - pitch) / 12;
- p = p + 120 - (octdiff * 12);
- }
- if (p > maxpitch) { /* pitch in range? */
- int newfield = fieldx;
- fieldx = oldfieldx;
- fferror("Pitch too high");
- fieldx = newfield;
- p = maxpitch;
- }
- /* We really should test for end-of-field, but we don't know if we're
- in a parameter list, so comma may or may not be legal */
- return p;
-}
-
-/****************************************************************************
-* doprogram
-* Effect: parses a program change (Z) command
-****************************************************************************/
-
-private void doprogram()
-{
- register int program = (int) scanint();
- ctrlflag[PROGRAM_CTRL] = ctrlflag[0] = TRUE;
- if (token[fieldx]) {
- fferror("Z must be followed by digits only");
- } else if (program < minprogram) {
- fieldx = 1;
- fferror("Minimum program of 1 will be used");
- program = minprogram;
- } else if (program > maxprogram) {
- fieldx = 1;
- fferror("Maximum program of 128 will be used");
- program = maxprogram;
- }
- ctrlval[PROGRAM_CTRL] = program - 1;
-}
-
-
-private void doramp()
-{
- int values[2];
- time_type stepsize = 100L; /* default 10 per second */
- int index = 0;
- ndurp = FALSE;
- values[0] = values[1] = 0;
- while (TRUE) {
- linex += scan();
- fieldx = 1;
- if (nullstring(token)) {
- break;
- } else if (index == 2) { /* must be stepsize in dur syntax */
- stepsize = dodur();
- } else {
- int ctrlx = 0;
- static int ctrl_map[] = { -BEND_CTRL, VOLUME, -TOUCH_CTRL, MODWHEEL };
-
- switch (token[0]) {
- case 'M': ctrlx++; /* modwheel */
- case 'O': ctrlx++; /* aftertouch */
- case 'X': ctrlx++; /* volume */
- case 'Y': /* pitch bend */
-
- if (index < 2) {
- macctrlnum[index] = ctrl_map[ctrlx];
- macctrlparmx[index] = (int) scanint();
- if (token[fieldx])
- fferror("Only digits expected here");
- macctrldef[index] = NULL;
- } else fferror("Unexpected control");
- break;
- case '~':
- if (index < 2) {
- domacro();
- if (token[fieldx]) fferror("Unexpected character");
- } else fferror("Unexpected control");
- break;
- case 'T':
- if (index < 2) fferror("Control expected");
- dotime();
- break;
- case 'V':
- if (index < 2) fferror("Control expected");
- dovoice();
- break;
- case 'N':
- if (index < 2) fferror("Control expected");
- donextdur();
- break;
- default:
- if (index < 2) fferror("Control expected");
- dur = dodur();
- break;
- }
- if (index == 1 && (macctrlnum[0] != macctrlnum[1] ||
- macctrldef[0] != macctrldef[1])) {
- fferror("Controls do not match");
- }
- }
- index++;
- }
- if (index < 3) fferror("Expected 2 controls and step size");
- else {
- if (macctrldef[0]) {
- int i, j, n;
- n = 0;
- i = macctrlparmx[0];
- j = macctrlparmx[1];
- while (n < macctrlnum[0]) {
- if (macctrlparms[i] != macctrlparms[j]) break;
- n++; i++; j++;
- }
- if (n >= macctrlnum[0]) n = 0;
- /* Note: duration shortened to prevent overlap with next ramp */
- insert_deframp(the_score, seqround(thetime), lineno, voice,
- seqround(stepsize), trunc(dur) - 1, macctrldef[0], macctrlnum[0],
- macctrlparms + macctrlparmx[0], n, macctrlparms[j]);
- } else {
- /* Note: duration shortened to prevent overlap with next ramp */
- insert_ctrlramp(the_score, seqround(thetime), lineno, voice,
- seqround(stepsize), trunc(dur) - 1,
- macctrlnum[0], macctrlparmx[0], macctrlparmx[1]);
- }
- }
- /* advance the time only if an N field was given */
- if (ndurp) thetime += ntime;
- else thetime += dur;
-}
-
-
-/****************************************************************************
-* dorate
-* Effect: parses a !rate command
-****************************************************************************/
-
-private void dorate()
-{
- linex += scan();
- if (!token[0])
- fferror("rate number expected");
- else {
- long oldrate = rate;
- rate = (int) scanint();
- if (token[fieldx])
- fferror("Only digits expected here");
- if (rate == 0) {
- fieldx = 0;
- fferror("Rate 100 will be used here");
- rate = 100L;
- }
- start = thetime;
- /* adjust dur in case it is inherited by next note */
- dur = (dur * oldrate);
- dur = dur / rate;
- }
-}
-
-
-private void doset(vec_flag)
- boolean vec_flag;
-{
- ndurp = FALSE;
- linex += scan();
- if (!token[0]) fferror("Variable name expected");
- else {
- struct symb_descr *desc = &HASHENTRY(lookup(token));
- if (!desc->symb_type) fferror("Called function not defined");
- else if (vec_flag && (desc->symb_type != vec_symb_type)) {
- fferror("This is not an array");
- } else if (!vec_flag && (desc->symb_type != var_symb_type)) {
- fferror("This is not a variable");
- } else {
- int numargs = 1 + vec_flag;
- int value[2];
- int i;
- int *address = desc->ptr.intptr;
- value[0] = value[1] = 0;
- i = 0;
- while (TRUE) {
- linex += scan();
- if (nullstring(token)) {
- break;
- } else if (isdigit(token[0]) || token[0] == '-' ||
- token[0] == '+') {
- if (i < numargs) {
- value[i++] = (int) scansgnint();
- if (token[fieldx])
- fferror("Only digits expected here");
- } else fferror(too_many_error);
- } else {
- switch (token[0]) {
- case 'T':
- fieldx = 1;
- dotime();
- break;
- case 'V':
- fieldx = 1;
- dovoice();
- break;
- case 'N':
- fieldx = 1;
- donextdur();
- break;
- default:
- fieldx++;
- if (i < numargs) {
- value[i++] = seqround(dodur());
- } else fferror(too_many_error);
- break;
- }
- }
- }
- if (vec_flag && i != 2) fferror("No index given");
- if (vec_flag) {
- if (value[0] >= desc->size) {
- fferror("Subscript out of bounds");
- return;
- }
- /* reduce to the seti case: */
- address += value[0]; /* compute the vector address */
- value[0] = value[1]; /* set up value[] and i as if */
- i--; /* this were seti, not setv */
- }
- if (i != 1) fferror("No value given");
- insert_seti(the_score, seqround(thetime), lineno, voice,
- address, value[0]);
- /* advance the time only if an N field was given */
- if (ndurp) thetime += ntime;
- }
- }
-}
-
-/****************************************************************************
-* dospecial
-* Effect: parses special (those starting with "!") commands
-****************************************************************************/
-
-private void dospecial()
-{
- switch (issymbol()) {
- case sym_tempo:
- dotempo();
- break;
- case sym_rate:
- dorate();
- break;
- case sym_csec:
- /* adjust dur for inheritance by next note */
- dur = (dur * 1000L) / time_scale;
- time_scale = 1000L;
- break;
- case sym_msec:
- dur = (dur * 100L) / time_scale;
- time_scale = 100L;
- break;
- case sym_seti:
- doset(FALSE);
- break;
- case sym_setv:
- doset(TRUE);
- break;
- case sym_call:
- docall();
- break;
- case sym_ramp:
- doramp();
- break;
- case sym_clock:
- doclock();
- break;
- case sym_def:
- dodef();
- break;
- case sym_end:
- end_flag = TRUE;
- break;
- default:
- fferror("Special command expected");
- }
- parseend(); /* flush the rest of the line */
-}
-
-/****************************************************************************
-* dosymdur
-* Effect: parses a duration (^, %, S, I, Q, H, or W) command
-****************************************************************************/
-
-private time_type dosymdur()
-{
- int i, dotcnt = 0;
- long dotfactor;
- time_type result = 0;
-
- for (i = 0; i < durtable_len; i++) {
- if (durtable[i].symbol == token[fieldx-1]) {
- /* the shift right is because durs are stored doubled because
- * otherwise a 64th note would have the value 75/2: */
- result = precise(durtable[i].value) >> 1;
- break;
- }
- }
- if (i == durtable_len) {
- fieldx--;
- fferror("Duration expected: one of W, H, Q, I, S, %, or ^");
- return 0L;
- }
- while (token[fieldx]) {
- if (token[fieldx] == 'T') { /* triplet notation */
- result = (result * 2) / 3; /* lose a bit but avoid scale() */
- fieldx++;
- }
- else if (token[fieldx] == '.') { /* dotted notation */
- dotcnt++;
- fieldx++;
- }
- else if (token[fieldx] == '/') {
- long divisor;
- fieldx++;
- divisor = scanint();
- if (divisor > 0) result = result / divisor;
- else fferror("non-zero integer expected");
- }
- else if (isdigit(token[fieldx])) { /* numbers are multipliers */
- result = result * scanint();
- }
- else break;
- }
- dotfactor = 1L;
- for (i=1; i<=dotcnt; i++)
- dotfactor = dotfactor * 2;
- result = (2 * result) - (result / dotfactor);
-
- return scale(result, 100L, tempo); /* time in milliseconds */
-}
-
-/****************************************************************************
-* dotempo
-* Effect: parses a !tempo command
-****************************************************************************/
-
-private void dotempo()
-{
- linex += scan();
- if (!token[0])
- fferror("Tempo number expected");
- else {
- long oldtempo = tempo;
- tempo = scanint();
- if (token[fieldx])
- fferror("Only digits expected here");
- if (tempo == 0) {
- fieldx = 0;
- fferror("Tempo 100 will be used here");
- tempo = 100L;
- }
- start = thetime;
- /* adjust dur in case it is inherited by next note */
- if (symbolic_dur_flag) {
- dur = (dur * oldtempo);
- dur = dur / tempo;
- }
- }
-}
-
-/****************************************************************************
-* dotime
-* Effect: parses a time (T) command
-* Implementation: see implementation of donextdur()
-****************************************************************************/
-
-private void dotime()
-{
- if (isdigit(token[fieldx])) {
- thetime = precise(scanint());
- thetime = scale(thetime, (ulong)time_scale, rate);
- if (token[fieldx] )
- fferror("Only digits were expected here");
- } else {
- fieldx++;
- thetime = dodur();
- }
- thetime += start; /* time is relative to start */
-}
-
-/****************************************************************************
-* dovoice
-* Effect: parse a voice (V) command (the voice is the MIDI channel)
-****************************************************************************/
-
-private void dovoice()
-{
- if (isdigit(token[fieldx])) {
- voice = (int) scanint();
- if (token[fieldx])
- fferror("V must be followed by digits only");
- if (voice > MAX_CHANNELS) {
- char msg[40];
- sprintf(msg, "number too high, using %d instead", MAX_CHANNELS);
- fferror(msg);
- voice = MAX_CHANNELS;
- }
- else if (voice < 1) {
- fferror("number too low, using 1 instead");
- voice = 1;
- }
- }
- else fferror("No digit after V");
-}
-
-/****************************************************************************
-* fferror
-* Inputs:
-* char *s: an error message string
-* Effect:
-* prints the line with the error
-* puts a cursor (^) at the error location
-* prints the error message (s)
-* Implementation:
-* this routine prints a carat under the character that
-* was copied into token[fieldx]. E.g. if fieldx = 0, the
-* carat will point to the first character in the field.
-****************************************************************************/
-
-private void fferror(s)
- char *s;
-{
- gprintf(ERROR, "%3d | %s", lineno, line);
- marker(linex-strlen(token)+fieldx+1+6);
- gprintf(ERROR, "Error: %s.\n", s);
-}
-
-/****************************************************************************
-* init
-* Effect:
-* initializes the state variables
-****************************************************************************/
-
-private void init()
-{
- int i;
-
- end_flag = FALSE;
-
- /* initial (default) values for all state variables */
- symbolic_dur_flag = TRUE; /* default dur is symbolic */
- for (i = 0; i < nctrl; i++) {
- /* no initial control changes */
- ctrlflag[i] = FALSE;
- ctrlval[i] = 0;
- }
-
- lineno = 0;
- pitch = seq_dflt_pitch;
- loud = seq_dflt_loud;
- voice = seq_dflt_voice;
- time_scale = 1000L;
- tempo = 100L;
- rate = 100L;
- dur = precise(600); /* default dur is quarter note */
- thetime = precise(0);
- start = thetime;
- ntime = 0L;
- ticksize = 0L;
- artic = 100;
-}
-
-/****************************************************************************
-* ins_a_note
-* Returns:
-* boolean: TRUE on success, FALSE if not enough memory
-* Effect:
-* note events (if any) corresponding to the current line are inserted
-* Implementation:
-* if a note on should occur after a note off and doesn't, and the
-* two notes have the same pitch, then the note off can cancel the
-* note on. to make it unlikely that roundoff will cause this situation,
-* dur is decreased by one half of a clock tick before rounding.
-* also, phase2 gives precedence to note-offs that are simultaneous
-* with note-ons.
-****************************************************************************/
-
-private boolean ins_a_note()
-{
- long the_dur = (trunc(dur) * artic + 50) / 100;
- int the_pitch = pitch;
- event_type note;
- if (rest_flag) the_pitch = NO_PITCH;
- note = insert_note(the_score, seqround(thetime), lineno, voice,
- the_pitch, the_dur, loud);
- if (!note) return FALSE;
- return TRUE; /* success! */
-}
-
-/****************************************************************************
-* ins_ctrls
-* Returns:
-* boolean: TRUE on success, FALSE if not enough memory
-* Effect:
-* control events corresponding to current line are inserted in score
-* Implementation:
-* ctrlflag[i] is TRUE if control i was specified in this line, so
-* insert one control change for each ctrlflag[i] that is TRUE
-****************************************************************************/
-
-private boolean ins_ctrls()
-{
- int i;
- event_type ctrl;
-
- for (i = 1; i < nctrl; i++) {
- if (ctrlflag[i]) {
- ctrl = insert_ctrl(the_score, seqround(thetime), lineno, i, voice,
- ctrlval[i]);
- if (!ctrl) return FALSE;
- ctrlflag[i] = FALSE;
- ctrlval[i] = 0;
- }
- }
- return TRUE; /* success! */
-}
-
-/****************************************************************************
-* issymbol
-* Outputs: returns symbol number, or -1 if no match
-* Assumes: token[1] has the symbol to look up (token[0] == '!')
-****************************************************************************/
-
-private int issymbol()
-{
- int i, symb_num;
- char *sym;
-
- for (symb_num = 0; symb_num < sym_n; symb_num++) {
- sym = ssymbols[symb_num];
- i = 1;
- while (TRUE) {
- if (token[i] != *sym) break;
- if (*sym == 0) return symb_num;
- sym++;
- i++;
- }
- }
- return -1;
-}
-
-/****************************************************************************
-* marker
-* Inputs:
-* int count: the number of characters to indent
-* Effect:
-* prints a carat (^) at the position specified on file stderr
-****************************************************************************/
-
-private void marker(count)
-int count;
-{
- int i;
- char s[128];
- for (i=0; i<(count-1); s[i++]=' ') /* */ ;
- s[count-1] = '^';
- s[count] = '\0';
- gprintf(ERROR,"%s\n",s);
-}
-
-/*****************************************************************
-* parseend
-* Effect:
-* parse the note terminator, either ",", ";", EOS or "\n"
-*
-****************************************************************/
-
-private void parseend()
-{
- boolean done = FALSE;
- while (!done) {
- linex += scan1(&line[linex]);
- switch (token[0]) {
- case ',':
- ndurp = TRUE; /* switch that next time was specified */
- ntime = 0L;
- done = TRUE;
- break;
- case ';':
- case '\n':
- case EOS:
- done = TRUE;
- break;
- case ' ':
- case '\t':
- break; /* skip over blanks and scan1 again */
- default:
- fferror("Unexpected token");
- linex += scan(); /* flush the token */
- break;
- }
- }
-}
-
-/****************************************************************************
-* parsefield
-* Effect: looks at first character of token and calls a parsing routine
-*
-****************************************************************************/
-
-private void parsefield()
-{
- fieldx = 1;
- switch (token[0]) {
- case 'T' :
- dotime();
- break;
- case 'U':
- case 'W':
- case 'H':
- case 'Q':
- case 'S':
- case 'I':
- case '%':
- case '^':
- dur = dodur();
- break;
- case 'R':
- do_a_rest();
- break;
- case 'A':
- case 'B':
- case 'C':
- case 'D':
- case 'E':
- case 'F':
- case 'G':
- pitch = dopitch();
- pitch_flag = TRUE;
- break;
- case 'P':
- pitch = doabspitch();
- pitch_flag = TRUE;
- break;
- case 'L':
- loud = doloud();
- break;
- case 'N':
- donextdur();
- break;
-/* case 'J':
- * doctrl(1);
- * break;
- */
- case 'K':
- doctrl(PSWITCH_CTRL);
- break;
- case 'M':
- doctrl(MODWHEEL_CTRL);
- break;
- case 'O':
- doctrl(TOUCH_CTRL);
- break;
- case 'X':
- doctrl(VOLUME_CTRL);
- break;
- case 'Y':
- doctrl(BEND_CTRL);
- break;
- case 'Z':
- doprogram();
- break;
- case 'V':
- dovoice();
- break;
- case '~':
- domacro();
- break;
- case '*':
- docomment();
- break;
- case '#':
- doartic();
- break;
- default :
- doerror();
- break;
- }
-}
-
-/****************************************************************************
-* parsenote
-* Effect:
-* parses a note line -- control events (if any) and note event (if
-* present) are inserted into score
-* Assumes:
-* line contains a string to be parsed
-****************************************************************************/
-
-private boolean parsenote()
-{
- boolean out_of_memory = FALSE;
- int i;
-
- ndurp = FALSE;
- rest_flag = FALSE;
-
- /* this loop reads tokens for a note */
- while (token[0]) {
- parsefield();
- linex += scan();
- }
-
- parseend(); /* take care of note terminator */
-
- /*
- * insert ctrl's first so that will come before the note.
- */
- if (ctrlflag[0]) {
- out_of_memory |= !ins_ctrls();
- /* don't reset ctrlflag[0], it's used below */
- }
-
- /*
- * insert macro's
- */
- for (i = 0; i < macctrlx; i++) {
- event_type ctrl;
- if (macctrldef[i] == NULL) {
- ctrl = insert_macctrl(the_score, seqround(thetime), lineno,
- macctrlnum[i], voice, macctrlparmx[i]);
- } else {
- ctrl = insert_macro(the_score, seqround(thetime), lineno,
- macctrldef[i], voice, macctrlnum[i],
- &(macctrlparms[macctrlparmx[i]]));
- }
- out_of_memory |= (ctrl == NULL);
- }
-
- /* insert a note if
- * (1) a pitch was specified OR
- * (2) no control was specified and this is not a rest
- * (it's a pitch by default)
- *
- * NOTE: program changes during rests are advised since
- * synthesizers may not be able to process a program
- * change followed immediately by a note-on. In fact, this
- * is why we insert notes whose pitch is NO_PITCH -- so that
- * the program change can be processed during the rest.
- */
- if (pitch_flag ||
- (!ctrlflag[0] && !rest_flag && (macctrlx == 0))) {
- out_of_memory |= !ins_a_note();
- }
-
- if (ndurp) thetime += ntime;
- else thetime += dur;
-
- return out_of_memory;
-}
-
-
-private boolean parseparm(valptr)
- long *valptr;
-{
- register char c = token[fieldx];
- if (isdigit(c) || c == '-') {
- *valptr = scansgnint();
- return TRUE;
- } else {
- switch (c) {
- case 'P':
- fieldx++;
- *valptr = doabspitch();
- return TRUE;
- case 'A':
- case 'B':
- case 'C':
- case 'D':
- case 'E':
- case 'F':
- case 'G':
- fieldx++;
- *valptr = dopitch();
- return TRUE;
- case 'U':
- case 'W':
- case 'H':
- case 'Q':
- case 'I':
- case 'S':
- case '%':
- case '^':
- fieldx++;
- *valptr = seqround(dodur());
- return TRUE;
- case 'L':
- fieldx++;
- *valptr = doloud();
- return TRUE;
- case '\'':
- fieldx++;
- *valptr = token[fieldx];
- fieldx++;
- if (token[fieldx] != '\'') {
- fferror("single quote expected");
- }
- fieldx++;
- return TRUE;
- default:
- fferror("Parameter expected");
- return FALSE;
- }
- }
-}
-
-
-
-/****************************************************************************
-* scale
-* Inputs:
-* time_type x
-* int (ulong?) n, d
-* Outputs:
-* returns time_type: result of scaling x by n/d
-****************************************************************************/
-
-public time_type scale(x, n, d)
- ulong x;
- ulong n, d;
-{
- ulong lo = (x & 0xFFFFL) * n;
- ulong hi = (x >> 16) * n;
- ulong res = hi / d;
- lo = (((hi - (res * d)) << 16) + lo + (d >> 1)) / d;
- return (time_type)( (res << 16) + lo );
-}
-
-/****************************************************************************
-* scan
-* Inputs:
-* char *start: the string to scan
-* Outputs:
-* returns int: the index of the next char in start to scan
-* Effect:
-* skips over leading blanks
-* copies characters from start into token, converting to upper case
-* scanning stops on delimiter: one of space, tab, newline, semicolon
-****************************************************************************/
-
-private int scan()
-{
- char *start = line + linex;
- register char c;
- register int i = 0;
- register int j = 0;
- register int parens = 0;
-
- while (((c = start[i]) == ' ') || (c == '\t')) i++;
-
- while ((c = start[i]) != ' ' && c != '\n' && c != '\t' && c != EOS &&
- (c != ',' || token[0] == '~' || parens > 0) && c != ';') {
-
- if (islower(start[i])) token[j] = toupper(start[i]);
- else token[j] = start[i];
- if (c == '(') parens++;
- else if (c == ')') parens--;
- j++;
- i++;
- }
- token[j] = '\0';
-
- fieldx = 0;
- if (parens) fferror("Unbalanced parens");
-
- return i;
-}
-
-/****************************************************************************
-* scan1
-* Inputs:
-* char *start: the string to scan
-* Outputs:
-* returns int: the index of the next char in start to scan
-* Effect:
-* copies one char from start into token, converting to upper case
-****************************************************************************/
-
-private int scan1(start)
-char *start;
-{
- int i = 0;
-
- token[0] = *start;
- if (islower(token[0])) token[0] = toupper(token[0]);
-
- if (!nullstring(token)) {
- token[1] = '\0';
- i = 1;
- }
- fieldx = 0;
- return i;
-}
-
-/****************************************************************************
-* scanint
-* Outputs:
-* returns long: the scanned integer
-* Effect:
-* scans an unsigned long from token, starting at fieldx
-* fieldx is incremented to end of the integer
-****************************************************************************/
-
-private long scanint()
-{
- long i = 0;
- char c;
- while ((c = token[fieldx])) {
- if (isdigit(c)) {
- i = (i*10) + (c - '0');
- fieldx++;
- } else return i;
- }
- return i;
-}
-
-private long scansgnint()
-{
- if (token[fieldx] == '-') {
- fieldx++;
- return -scanint();
- } else {
- if (token[fieldx] == '+') {
- fieldx++;
- }
- return scanint();
- }
-}
-
-
-/* scansymb -- scan a symbol from the token */
-/**/
-private void scansymb(str)
- char *str;
-{
- char c;
- while ((c = token[fieldx])) {
- if (isdigit(c) || isalpha(c) || c == '_') {
- *str++ = c;
- fieldx++;
- } else break;
- }
- *str = EOS;
-}
-
-/****************************************************************************
-* seq_read
-* Inputs:
-* seq_type seq: the sequence to receive the score
-* FILE *fp: input file
-* Outputs:
-* none
-* Effect:
-* parses score from input file and builds score data structure
-****************************************************************************/
-
-void seq_read(seq, fp)
- seq_type seq;
- FILE *fp;
-{
- boolean out_of_memory = FALSE; /* set when no more memory */
- /* printf("seq_read: chunklist is 0x%x\n", seq->chunklist); */
- the_score = seq; /* current sequence is a global within this module */
- if (!seq) return;
- init();
- lineno = 0;
-
- /* make sure line is well terminated or scan might run off the end */
- line[linesize - 1] = EOS;
- line[linesize - 2] = '\n';
-
- /* this loop reads lines */
- while ((fgets(line, linesize - 2, fp) != NULL) && !out_of_memory &&
- !check_aborted() && !end_flag) {
- lineno++;
- linex = 0;
- /* this loop reads notes from a line */
- while ((line[linex] != EOS) && !out_of_memory) {
- /* loop invariant: line[linex] is first char of next note */
- ctrlflag[0] = FALSE; /* other ctrlflags are reset by ins_ctrls() */
- macctrlx = 0;
- macctrlnextparm = 0;
- pitch_flag = FALSE;
- linex += scan();
- if (!nullstring(token)) {
- if (token[0] == '*') docomment();
- else if (token[0] == '!') dospecial();
- else out_of_memory = parsenote();
- }
- else parseend();
- }
- }
-
- if (out_of_memory) {
- gprintf(ERROR, "Out of note memory at line %d,\n", lineno-1);
- gprintf(ERROR, " the rest of your file will be ignored.\n");
- }
-
- if (check_aborted()) {
- gprintf(ERROR, "User aborted score input,\n");
- gprintf(ERROR, " the rest of your file will be ignored.\n");
- if (abort_flag == BREAK_LEVEL) abort_flag = 0;
- }
-
- fclose(fp);
-
- gprintf(TRANS, "\nLoaded Adagio file with %ld note(s), %ld ctrl(s).\n\n",
- seq_notecount(the_score), seq_ctrlcount(the_score));
-}
diff --git a/lib-src/libnyquist/cmt/seqread.h b/lib-src/libnyquist/cmt/seqread.h
deleted file mode 100644
index 1348574..0000000
--- a/lib-src/libnyquist/cmt/seqread.h
+++ /dev/null
@@ -1,7 +0,0 @@
-/* seqread.h -- header file for users of seqread.c */
-/* Copyright 1989 Carnegie Mellon University */
-
-#define name_length 255
-void seq_read(seq_type seq, FILE *fp); /* LISP: (SEQ-READ SEQ FILE) */
-time_type scale(ulong, ulong, ulong); /*now public for smf_write, smf_read*/
-
diff --git a/lib-src/libnyquist/cmt/seqwrite.c b/lib-src/libnyquist/cmt/seqwrite.c
deleted file mode 100644
index fde0746..0000000
--- a/lib-src/libnyquist/cmt/seqwrite.c
+++ /dev/null
@@ -1,282 +0,0 @@
-/* seqwrite -- write a seq in Adagio format to a file */
-/***************************************************************************
-* Change Log
-* Date | Change
-*-----------+--------------------------------------------------------------
-* 11-Mar-94 | Created Change Log
-* 11-Mar-94 | PLu : Added private to function defs.
-* 28-Apr-03 | DM : changed for portability, true->TRUE, false->FALSE
-****************************************************************************/
-
-#include "switches.h"
-
-#include <stdio.h>
-
-#include "cext.h"
-#include "midifns.h"
-#include "timebase.h"
-#include "seq.h"
-#include "seqwrite.h"
-#include "userio.h"
-#include "record.h"
-
-private boolean next_event_time();
-private void write_event();
-private void write_velocity(FILE *f, int velocity);
-private void write_voice();
-private void write_rest(FILE *f, event_type ev, boolean abs_flag);
-private void write_time();
-
-private boolean clock_started;
-private long clock_half_tick;
-private int new_tempo;
-/* non-zero indicates a pending tempo change... */
-private time_type tempo_change_at;
-
-private int macro_count;
-private int call_count;
-private int deframp_count;
-private int seti_count;
-
-private int last_velocity;
-private int last_voice = seq_dflt_voice;
-
-
-/* next_event_time -- get the time of the next event */
-/*
- * NOTE: clock events are ignored (unless this is the first clock event)
- */
-private boolean next_event_time(event, next_time)
- event_type event;
- time_type *next_time;
-{
- while (event) {
- if (vc_ctrl(event->nvoice) == ESC_CTRL &&
- event->value == CLOCK_VALUE &&
- clock_started) {
- /* this is a clock event, ignore it: */
- event = event->next;
- } else {
- *next_time = event->ntime;
- return TRUE;
- }
- }
- return FALSE;
-}
-
-
-/* seq_write -- write a seq to a file */
-/*
- * NOTE: if abs_flag, then write using absolute times ('T'), otherwise use
- * relative timing ('N'). Also, only selected channels are written.
- */
-void seq_write(seq_type seq, FILE *f, boolean abs_flag)
-{
- event_type ev = seq_events(seq);
-
- last_velocity = seq_dflt_loud;
- last_voice = seq_dflt_voice;
-
- fprintf(f, "!MSEC\n");
- clock_started = FALSE;
- tempo_change_at = 0;
-
- macro_count = 0;
- call_count = 0;
- deframp_count = 0;
- seti_count = 0;
-
- while (ev) {
- write_event(seq, ev, f, abs_flag);
- ev = ev->next;
- }
- if (macro_count) gprintf(TRANS, "%d macros ignored.\n", macro_count);
- if (call_count) gprintf(TRANS, "%d calls ignored.\n", call_count);
- if (deframp_count) gprintf(TRANS, "%d deframps ignored.\n", deframp_count);
- if (seti_count) gprintf(TRANS, "%d setis ignored.\n", seti_count);
-}
-
-
-private char ctrl_letter[] = "?KMOXYZ";
-
-/* write_event -- write a single event to a file */
-/**/
-private void write_event(seq, event, f, abs_flag)
- seq_type seq;
- event_type event;
- FILE *f;
- boolean abs_flag;
-{
- int voice = vc_voice(event->nvoice);
-
- /* process all current (and earlier) events */
- if (is_note(event)) { /*** a note or rest ***/
- /* if this note is not a rest, write it */
- if (event->value != NO_PITCH &&
- (seq_channel_mask(seq) &
- (1 << (voice - 1)))) {
- write_pitch(f, event->value);
- fprintf(f, " U%ld ", event->u.note.ndur >> 8);
- write_velocity(f, (int) (event->u.note.ndur & 0xFF));
- write_voice(f, voice);
- write_time(f, event, abs_flag);
- }
- } else { /*** a control command ***/
- switch (vc_ctrl(event->nvoice)) {
- case PSWITCH_CTRL:
- case MODWHEEL_CTRL:
- case TOUCH_CTRL:
- case VOLUME_CTRL:
- case BEND_CTRL:
- fprintf(f, "%c%d ", ctrl_letter[vc_ctrl(event->nvoice)],
- event->value);
- write_voice(f, voice);
- write_time(f, event, abs_flag);
- break;
- case PROGRAM_CTRL:
- fprintf(f, "Z%d ", event->value + 1);
- write_voice(f, voice);
- write_time(f, event, abs_flag);
- break;
- case ESC_CTRL:
- switch (event->value) {
- case CALL_VALUE:
- call_count++;
- write_rest(f, event, abs_flag);
- /* !call's are not written because there isn't enough
- * information. A future version of seq should store
- * the hash table entry instead of the address of the
- * routine (then we could get string name of the call)
- * and the number of arguments.
- */
- break;
- case CLOCK_VALUE:
- /* design for !clock: for absolute (absflag) files, put the
- clocks (if any) at the end where they can be edited out
- easily. For relative files, keep the clocks in-line.
- On each clock, write a !tempo command inferred by the
- clock and followed by the !clock. Because the clock
- event comes before the actual tempo change, the chnage
- must be delayed by a half tick except for the first one.
- */
- if (abs_flag) break;
- new_tempo = (2500L << 16) / event->u.clock.ticksize;
- if (clock_started) {
- tempo_change_at = event->ntime + clock_half_tick;
- } else {
- fprintf(f, "!tempo %d\n", new_tempo);
- fprintf(f, "!clock\n");
- clock_started = TRUE;
- }
- clock_half_tick = (event->u.clock.ticksize) >> 17;
- break;
- case MACCTRL_VALUE:
- fprintf(f, "~%d(%d) ", event->u.macctrl.ctrl_number,
- event->u.macctrl.value);
- write_voice(f, voice);
- write_time(f, event, abs_flag);
- break;
- case MACRO_VALUE:
- macro_count++;
- write_rest(f, event, abs_flag);
- /* macros are not written because there isn't enough
- * information. A future version of seq should store
- * the number of arguments in the event, or better yet,
- * in the definition. Send complaints to RBD!
- */
- break;
- case CTRLRAMP_VALUE:
- fprintf(f, "!ramp ~%d(%d) ~%d(%d) U%d U%d ",
- event->u.ramp.ctrl, event->u.ramp.u.ctrl.from_value,
- event->u.ramp.ctrl, event->u.ramp.u.ctrl.to_value,
- (int)event->u.ramp.step,
- (int)event->u.ramp.dur);
- write_voice(f, voice);
- write_time(f, event, abs_flag);
- break;
- case DEFRAMP_VALUE:
- deframp_count++;
- write_rest(f, event, abs_flag);
- /* See MACRO_VALUE above for why this isn't implemented. */
- break;
- case SETI_VALUE:
- seti_count++;
- write_rest(f, event, abs_flag);
- /* !seti and !setv are not implemented -- a future version
- * of seq should save more information so we can reconstruct
- * the Adagio source command.
- */
- break;
- default:
- gprintf(TRANS, "unexpected ESC_CTRL value\n");
- break;
- }
- break;
- default:
- gprintf(TRANS, "unexpected seq data\n");
- break;
- }
- }
-}
-
-
-/* write_rest -- write a rest (in place of an event) */
-/**/
-private void write_rest(FILE *f, event_type ev, boolean abs_flag)
-{
- fprintf(f, "R ");
- write_time(f, ev, abs_flag);
-}
-
-
-/* write_time -- write the final field on the line with N or T command */
-/**/
-private void write_time(f, event, abs_flag)
- FILE *f;
- event_type event;
- boolean abs_flag;
-{
- time_type next_time;
-
- if (abs_flag) {
- fprintf(f, "T%ld\n", event->ntime);
- return;
- }
-
- if (next_event_time(event->next, &next_time)) {
- if (tempo_change_at && (next_time >= tempo_change_at)) {
- fprintf(f, "N%ld\n!TEMPO %d\n!CLOCK\nR U%ld\n",
- tempo_change_at - event->ntime,
- new_tempo, next_time - tempo_change_at);
- tempo_change_at = 0;
- } else {
- fprintf(f, "N%ld\n", next_time - event->ntime);
- }
- } else {
- fprintf(f, "\n");
- }
-}
-
-
-/* write_velocity -- write the velocity field */
-/**/
-private void write_velocity(FILE *f, int velocity)
-{
- if (last_velocity != velocity) {
- last_velocity = velocity;
- fprintf(f, "L%d ", velocity);
- }
-}
-
-
-/* write_voice -- write the voice field */
-/**/
-private void write_voice(f, voice)
- FILE *f;
- int voice;
-{
- if (last_voice != voice) {
- last_voice = voice;
- fprintf(f, "V%d ", voice);
- }
-}
diff --git a/lib-src/libnyquist/cmt/seqwrite.h b/lib-src/libnyquist/cmt/seqwrite.h
deleted file mode 100644
index 3f9ab6b..0000000
--- a/lib-src/libnyquist/cmt/seqwrite.h
+++ /dev/null
@@ -1,6 +0,0 @@
-/* seqwrite.h -- write adagio format file */
-/* Copyright 1994 Carnegie Mellon University */
-
-void seq_write(seq_type seq, FILE *f, boolean abs_flag);
- /* LISP: (SEQ-WRITE SEQ FILE BOOLEAN) */
-
diff --git a/lib-src/libnyquist/cmt/swlogic.h b/lib-src/libnyquist/cmt/swlogic.h
deleted file mode 100644
index e09bd6c..0000000
--- a/lib-src/libnyquist/cmt/swlogic.h
+++ /dev/null
@@ -1,197 +0,0 @@
-/********************************************************************
-* swlogic.h - switch logic, loaded from various versions of switch.h
-*
-* Copyright 1989 Carnegie Mellon University
-*
-*********************************************************************/
-
-/*
- * When included, one of the following should be defined:
- * AZTEC (manx compiler, implies AMIGA)
- * THINK_C (Think C compiler, implies Macintosh)
- * __MWERKS__ (Metrowerks C compiler, implies Macintosh)
- * LATTICE & DOS (Lattice compiler for IBM PC/AT/XT/CLONES)
- * MICROSOFT & DOS (Microsoft compiler, implies IBM PC/AT/XT/CLONES)
- * UNIX (emulator for UNIX)
- * UNIX_ITC (ITC code for RS6000)
- * UNIX_MACH (MACH ukernel system)
- */
-
-/*------------------------------------------*/
-/* Other switches that might be defined in switches.h are as follows: */
-/* APPLICATION, SPACE_FOR_PLAY, MAX_CHANNELS */
-/*------------------------------------------*/
-
-/* We're moving toward the elimination of switches.h, so try to map
- * predefined constants into our standard constants shown above:
- */
-
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm new conditional compilation structure
- * 28Apr03 rbd remove macro redefinitions: MICROSOFT
- */
-
-
-
-/* Microsoft C compiler: */
-#ifdef _MSC_VER
-#endif
-#ifdef _MSDOS
-#define DOS
-#endif
-
-/* Quick C compiler: */
-#ifndef DOS
-#ifdef MICROSOFT
-#define DOS
-#endif
-#endif
-
-/* Borland C compiler: */
-#ifdef __BORLANDC__
-#define BORLAND
-#define DOS
-#endif
-
-/* Borland Turbo C compiler: */
-#ifdef __TURBOC__
-#define BORLAND]
-#define DOS
-#endif
-
-/* SGI systems */
-#ifdef sgi
-#ifndef UNIX
-#define UNIX
-#endif
-#define UNIX_IRIX
-#define MAX_CHANNELS 32
-#endif
-
-/* APPLICATION -- define APPLICATION if you want to disable
- * looking for command line switches in the midi interface.
- * I think this feature is here for the Piano Tutor project
- * and you should not define APPLICATION for CMU Midi Toolkit
- * projects (APPLICATION is a poor choice of terms):
- */
-
-
-/* memory space management (system dependent):
- * SPACE_FOR_PLAY must be enough space to allow
- * seq to play a score. This may include space for
- * note-off events, I/O buffers, etc.
- */
-#ifndef SPACE_FOR_PLAY
-#define SPACE_FOR_PLAY 10000L
-#endif
-
-
-/* How many MIDI channels are there? MACINTOSH can use 2 ports,
- * so it supports 32 channels. Others have one port, 16 channels.
- * On the other hand, if you don't have all the MIDI ports plugged
- * into MIDI interfaces, CMT will just hang, so I'll compile with
- * just 16 channels. The 32 channel option for the Mac is untested.
- */
-#ifndef MAX_CHANNELS
-#define MAX_CHANNELS 16
-#endif
-
-
-/*------------------------------------------*/
-/* Now we get to the "logic": define things as a function of what
- * was defined in switches.h
- */
-
-#ifdef THINK_C
-#define MACINTOSH
-#endif
-
-#ifdef __MWERKS__
-#define MACINTOSH
-#endif
-
-#ifdef MACINTOSH
-#define MACINTOSH_OR_DOS
-#define MACINTOSH_OR_UNIX
-/* I don't know if THINK_C defines this and we need it for a few prototypes... */
-#ifndef __STDC__
-#define __STDC__
-#endif
-#ifndef TAB_WIDTH
-#define TAB_WIDTH 4
-#endif
-#endif
-
-#ifndef TAB_WIDTH
-#define TAB_WIDTH 8
-#endif
-
-/*
- * If MIDIMGR is defined, compile for the Apple MIDI Manager
- * (Non MIDI manager code is no longer supported)
- */
-#ifdef MACINTOSH
-/* under Nyquist, the MidiMgr is not used, so you can't
- * receive or send Midi as in CMU MIDI Toolkit; however,
- * much of CMU MIDI Toolkit is used for Midi file IO
- */
-#ifndef NYQUIST
-#define MIDIMGR
-#endif
-#define USE_VSPRINTF
-#endif
-
-#ifdef BORLAND
-#define DOS
-#endif
-
-#ifdef LATTICE322
-#define DOS
-#define OLD_PROTOTYPES
-#endif
-
-#ifdef UNIX_ITC
-#define UNIX
-#define ITC
-#endif
-
-#ifdef UNIX_MACH
-#define UNIX
-#define ITC
-#endif
-
-/* USE_VSPRINTF says vsprintf() is defined */
-#ifdef ITC
-#define USE_VSPRINTF
-#endif
-#ifdef AZTEC
-#define USE_VSPRINTF
-#endif
-
-
-/* DOTS_FOR_ARGS says ANSI "..." notation is recognized */
-#ifdef __STDC__
-#define DOTS_FOR_ARGS
-#endif
-#ifdef UNIX_ITC
-#define DOTS_FOR_ARGS
-#endif
-#ifdef BORLAND
-#define DOTS_FOR_ARGS
-#endif
-#ifdef MICROSOFT
-#define DOTS_FOR_ARGS
-#endif
-
-#ifdef DOS
-#define MACINTOSH_OR_DOS
-#else
-#define huge
-#endif
-
-#ifdef UNIX
-#define MACINTOSH_OR_UNIX
-#endif
-
-#define SWITCHES
diff --git a/lib-src/libnyquist/cmt/tempomap.c b/lib-src/libnyquist/cmt/tempomap.c
deleted file mode 100644
index e56b9bf..0000000
--- a/lib-src/libnyquist/cmt/tempomap.c
+++ /dev/null
@@ -1,124 +0,0 @@
-/* tempomap.c -- used by midifile reader to record and lookup time maps */
-/*
- * This module is designed to provide tempo change list insert and
- * lookup facilities. The exact interpretation of beat and tempo are
- * defined in one function, elapsed_time, which takes a tempo and a
- * number of beats, and returns time.
- */
-
-#include "cext.h"
-#include "midifns.h"
-#include "timebase.h"
-#include "moxc.h"
-#include "seq.h"
-#include "tempomap.h"
-
-static time_type elapsed_time();
-
-/* tempomap_create -- create a tempomap */
-/**/
-tempomap_type tempomap_create()
-{
- tempochange_type tempochange = tempochange_alloc();
- tempomap_type tempomap = tempomap_alloc();
- tempomap->hint = tempomap->entries = tempochange;
- tempochange->beat = 0L;
- /* default tempo is 120 (= 50000microsec/beat) and 24 divisions/quarter */
- /* this may be overridden by a tempomap_insert */
- tempochange->tempo = 500000L / 24;
- tempochange->rtime = 0L;
- tempochange->next = NULL;
- return tempomap;
-}
-
-
-/* tempomap_free -- deallocate storage for tempo map */
-/**/
-void tempomap_free(tm)
- tempomap_type tm;
-{
- while (tm->entries) {
- tempochange_type tc = tm->entries;
- tm->entries = tc->next;
- tempochange_free(tc);
- }
- memfree(tm, sizeof(tempomap_node));
-}
-
-
-/* tempomap_insert -- insert a tempo change into the map */
-/**/
-void tempomap_insert(tempomap, beat, tempo)
- tempomap_type tempomap;
- long beat; /* beat division number */
- long tempo; /* microseconds per beat division */
-{
- tempochange_type tempochange = tempochange_alloc();
- register tempochange_type prev;
- register tempochange_type next;
-
- tempochange->tempo = tempo;
- tempochange->beat = beat;
-
- if ((!(tempomap->hint->next)) ||
- (tempomap->hint->beat > beat))
- tempomap->hint = tempomap->entries;
-
- /* find the insert point */
- for (prev = tempomap->hint;
- (next = prev->next) && (next->beat <= beat);
- prev = next);
-
- /* make the insert */
- tempochange->next = next;
- prev->next = tempochange;
- tempomap->hint = prev;
-
- /* update the real time of each change */
- for (tempochange = prev;
- tempochange->next;
- tempochange = tempochange->next) {
- tempochange->next->rtime =
- tempochange->rtime +
- elapsed_time(tempochange->tempo,
- tempochange->next->beat - tempochange->beat);
- }
-}
-
-
-/* tempomap_lookup -- convert beat to 4us time */
-/*
- * The returned time is real time in units of 4us.
- */
-time_type tempomap_lookup(tempomap, beat)
- tempomap_type tempomap;
- long beat;
-{
- register tempochange_type prev;
- register tempochange_type next;
-
- if ((!(tempomap->hint->next)) ||
- (tempomap->hint->beat > beat))
- tempomap->hint = tempomap->entries;
-
- /* find the last inflection point */
- for (prev = tempomap->hint;
- (next = prev->next) && (next->beat <= beat);
- prev = next);
-
- /* interpolate */
- return prev->rtime +
- elapsed_time(prev->tempo, beat - prev->beat);
-}
-
-
-/* elapsed_time -- compute the real elapsed time at a given tempo */
-/*
- * the time returned is in units of 4us.
- */
-static time_type elapsed_time(tempo, beat)
- long tempo;
- long beat;
-{
- return (time_type)((tempo * beat) >> 2);
-}
diff --git a/lib-src/libnyquist/cmt/tempomap.h b/lib-src/libnyquist/cmt/tempomap.h
deleted file mode 100644
index a437c25..0000000
--- a/lib-src/libnyquist/cmt/tempomap.h
+++ /dev/null
@@ -1,25 +0,0 @@
-/* tempomap.h -- list of tempo changes */
-
-typedef struct tempochange_struct {
- struct tempochange_struct *next;
- time_type rtime;
- long beat;
- long tempo;
-} tempochange_node, *tempochange_type;
-
-
-typedef struct tempomap_struct {
- tempochange_type entries;
- tempochange_type hint;
-} tempomap_node, *tempomap_type;
-
-
-#define tempochange_alloc() (tempochange_type) memget(sizeof(tempochange_node))
-#define tempochange_free(tc) memfree(tc, sizeof(tempochange_node))
-#define tempomap_alloc() (tempomap_type) memget(sizeof(tempomap_node))
-tempomap_type tempomap_create(void);
-void tempomap_free(tempomap_type tm);
-void tempomap_insert(tempomap_type tempomap, long beat, long tempo);
-time_type tempomap_lookup(tempomap_type tempomap, long beat);
-
-
diff --git a/lib-src/libnyquist/cmt/timebase.c b/lib-src/libnyquist/cmt/timebase.c
deleted file mode 100644
index 0bb1713..0000000
--- a/lib-src/libnyquist/cmt/timebase.c
+++ /dev/null
@@ -1,322 +0,0 @@
-/* timebase.c -- management of calls, time bases and heaps for moxc */
-
-/*****************************************************************************
-* Change Log
-* Date | Change
-*-----------+-----------------------------------------------------------------
-* 2-Apr-91 | JDW : further changes
-* 21-Mar-92 | GWL : abort recovery
-* 28-Apr-03 | DM : true->TRUE
-*****************************************************************************/
-
-
-#include "stdio.h"
-#include "cext.h"
-#include "userio.h"
-#include "midifns.h"
-#include "timebase.h"
-#include "moxc.h"
-
-
-timebase_type timebase_queue = NULL; /* waiting to run timebase queue */
-call_type callfree = NULL; /* free list */
-
-private void fatal();
-
-
-/****************************************************************************
-* timebase_create
-* Inputs:
-* maxsize is the initial size of the heap
-* Outputs:
-* returns an initialized timebase_type
-****************************************************************************/
-
-timebase_type timebase_create(maxsize)
- int maxsize;
-{
- static char *error_msg = "Out of memory in timebase_create()";
- timebase_type base = (timebase_type) memget(sizeof(timebase_node));
- if (!base) fatal(error_msg);
- base->next = NULL;
- base->next_time = MAXTIME;
- base->virt_base = 0L;
- base->real_base = 0L;
- base->rate = 256L;
- base->heap_size = 0;
- base->heap_max = maxsize;
- base->heap = (call_type *) memget(sizeof(call_type) * maxsize);
- if (!base->heap) fatal(error_msg);
- return base;
-}
-
-/****************************************************************************
-* callinsert
-* Inputs:
-* timebase_type base: the time base and heap
-* call_type call: the call to insert in heap
-* Outputs:
- none
-* Implementation:
-* linear insertion; to be changed to heap
-****************************************************************************/
-
-void callinsert(base, call)
- timebase_type base;
- call_type call;
-{
- int i;
- register call_type *heap = base->heap;
-
- /* handle overflow -- this should never be executed if the user
- * gives the right initial heap size
- */
- base->heap_size++;
- if (base->heap_size >= base->heap_max) {
- call_type *new_heap = (call_type *)
- memget((base->heap_max << 1) * sizeof(call_type));
- int i;
- call_type *oldptr;
- call_type *newptr;
- if (!new_heap) {
- gprintf(TRANS, "Out of space, can't allocate new heap\n");
- EXIT(1);
- }
-
- oldptr = base->heap;
- newptr = new_heap;
-
- for (i = base->heap_max; i > 0; i--) *newptr++ = *oldptr++;
- memfree((char *) heap, base->heap_max * sizeof(call_type));
- base->heap = heap = new_heap;
- base->heap_max = (base->heap_max << 1);
- }
-
- /* now do the heap insert */
- i = base->heap_size;
- while (i > 1) {
- int parent = i >> 1;
- if (heap[parent]->u.e.time < call->u.e.time ||
- (heap[parent]->u.e.time == call->u.e.time &&
- heap[parent]->u.e.priority <= call->u.e.priority)) break;
- heap[i] = heap[parent];
- i = parent;
- }
- heap[i] = call;
-
- /* if next_time might change, reinsert base into queue */
- if (heap[1] == call) {
- remove_base(base);
- insert_base(base);
- }
-}
-
-/****************************************************************************
-* callshow
-* Inputs:
-* calltype call: the call to show
-* Effect:
-* prints a description of call
-* Assumes:
-* call is not null
-****************************************************************************/
-void callshow(call)
- call_type call;
-{
- int i;
- gprintf(TRANS,"address: %lx\n", (ulong)call);
- gprintf(TRANS,"time: %ld\n", call->u.e.time);
- gprintf(TRANS,"routine: %lx\n", (ulong)call->u.e.routine);
- gprintf(TRANS,"parameters:");
- for (i = 0; i < MAX_CALL_ARGS; i++) {
- gprintf(TRANS, " %d", call->u.e.p.arg[i]);
- }
- gprintf(TRANS, "\n");
-}
-
-/***************************************************************
-* fatal
-*
-* Input : msg: a message to be displayed
-* Effect: print message and exit program
-***************************************************************/
-
-private void fatal(msg)
- char *msg;
-{
- gprintf(FATAL, msg);
- EXIT(1);
-}
-
-/***************************************************************
-* timebase_free
-*
-* Input : a time base
-* Effect: deallocate the time base
-***************************************************************/
-
-void timebase_free(timebase)
- timebase_type timebase;
-{
- remove_base(timebase);
- if (timebase->heap) {
- memfree((char *) timebase->heap,
- (timebase->heap_max * sizeof(call_type)));
- }
- memfree((char *) timebase, sizeof(timebase_node));
-}
-
-/***************************************************************
-* insert_base
-*
-* Input : a time base not in the list
-* Effect: insert timebase at the appropriate spot in the list
-* computes the next_time field from the top of the heap
-***************************************************************/
-
-void insert_base(timebase)
- timebase_type timebase;
-{
- register timebase_type *ptr = &timebase_queue;
- register time_type next_time = MAXTIME;
- /* compute next_time */
- if (timebase->heap_size != 0) {
- register call_type call = timebase->heap[1];
- /* virt to real calculation */
- next_time = (virt_to_real_256(timebase, call->u.e.time) &
- 0xFFFFFF00) + call->u.e.priority;
-/* gprintf(TRANS,
- "insert next_time is %ld, vt %ld, rb %ld, vb %ld rt %ld\n",
- next_time, timebase->heap[1]->u.e.time,
- timebase->real_base, timebase->virt_base, timebase->rate);
- */
- }
- timebase->next_time = next_time;
-
- if (next_time != MAXTIME) {
- /* insert into the list */
- while (TRUE) {
- if (! *ptr) {
- *ptr = timebase;
- timebase->next = NULL;
- return;
- } else if ((*ptr)->next_time >= next_time) {
- timebase->next = *ptr;
- *ptr = timebase;
- return;
- } else ptr = &((*ptr)->next);
- }
- }
-}
-
-/***************************************************************
-* remove_base
-*
-* Input : timebase
-* Effect: if timebase is in the queue, remove it
-***************************************************************/
-
-void remove_base(timebase)
- timebase_type timebase;
-{
- timebase_type *ptr = &timebase_queue;
- while (*ptr) {
- if (*ptr == timebase) {
- *ptr = timebase->next;
- return;
- } else ptr = &((*ptr)->next);
- }
-}
-
-/***************************************************************
-* remove_call
-*
-* Input : a timebase -- passed as a global
-* Assumes: a_timebase->heap_size > 0
-* Returns: the earliest call in the queue
-* Effect: removes the earliest call in the queue
-***************************************************************/
-
-call_type remove_call(timebase_type a_timebase)
-{
- register call_type *heap = a_timebase->heap;
- call_type result = heap[1];
- register call_type large;
- int i = 1;
- int child = i << 1;;
- large = heap[a_timebase->heap_size--];
- while (child <= a_timebase->heap_size) {
- if (child + 1 <= a_timebase->heap_size) {
- if (heap[child + 1]->u.e.time < heap[child]->u.e.time ||
- (heap[child + 1]->u.e.time == heap[child]->u.e.time &&
- heap[child + 1]->u.e.priority < heap[child]->u.e.priority))
- child++;
- }
- /* child is now the index of the least child */
- if (large->u.e.time < heap[child]->u.e.time ||
- (large->u.e.time == heap[child]->u.e.time &&
- large->u.e.priority <= heap[child]->u.e.priority)) break;
- /* swap */
- heap[i] = heap[child];
- i = child;
- child = i << 1;
- }
- heap[i] = large;
- return result;
-}
-
-/***************************************************************
-* set_rate
-*
-* Input : timebase and new rate
-* Effect: makes the current rate of timebase be rate
-***************************************************************/
-
-void set_rate(base, rate)
- timebase_type base;
- time_type rate;
-{
- if (base == timebase) base->virt_base = virttime;
- else base->virt_base = real_to_virt(base, eventtime);
- base->real_base = eventtime;
- base->rate = rate;
-/* gprintf(TRANS, "new real_base %ld virt_base %ld\n",
- base->real_base, base->virt_base);
- */
- remove_base(base);
- insert_base(base);
-}
-
-/***************************************************************
-* set_virttime
-*
-* Input : virtual time
-* Effect: makes the current virtual time of timebase be vtime
-***************************************************************/
-
-void set_virttime(base, vtime)
- timebase_type base;
- time_type vtime;
-{
- base->real_base = eventtime;
- base->virt_base = vtime;
- if (base == timebase) virttime = vtime;
- remove_base(base);
- insert_base(base);
-}
-
-/***************************************************************
-* timebase_use
-*
-* Input : a timebase to use for scheduling
-* Effect: sets up globals: timebase, virttime
-***************************************************************/
-
-void timebase_use(base)
- register timebase_type base;
-{
- if (timebase != base) {
- timebase = base;
- virttime = real_to_virt(base, eventtime);
- }
-}
diff --git a/lib-src/libnyquist/cmt/timebase.h b/lib-src/libnyquist/cmt/timebase.h
deleted file mode 100644
index 9da4e90..0000000
--- a/lib-src/libnyquist/cmt/timebase.h
+++ /dev/null
@@ -1,85 +0,0 @@
-/* timebase.h -- management of calls, time bases and heaps for moxc */
-
-#define STOPRATE 0xFFFFL
-
-/***************************************************************************
-* call structure
-****************************************************************************/
-
-/* ---NOTE!!! if you change MAX_CALL_ARGS, change CALLARGS macro below--- */
-#define MAX_CALL_ARGS 8
-typedef struct call_args_struct {
- long arg[MAX_CALL_ARGS];
-} call_args_node;
-
-typedef struct call {
- union {
- struct {
- time_type time; /* virtual time of this call */
- int priority; /* an 8-bit the priority, low priority first */
- int (*routine)(); /* who to call */
- call_args_node p; /* what to pass */
- } e;
- struct call *p; /* used to link free calls */
- } u;
-} *call_type, call_node;
-
-/* CALLARGS - given a call_type, this macro generates an argument list */
-/*
- * NOTE: originally, I thought call->u.e.p (a structure), would do it, but
- * Lattice C for the Amiga has a compiler bug, and even in places where the
- * bug doesn't show up, the code generated for the structure passing is
- * a sequence of two loops: one to copy data to a local area on the stack,
- * and one to push this data (a byte at a time!) to the top of the stack.
- * With Lattice (and perhaps others, I haven't checked), it's better to
- * push the data in-line.
- */
-#ifdef LATTICE
-#define CARG(n) call->u.e.p.arg[n]
-#define CALLARGS(call) CARG(0), CARG(1), CARG(2), CARG(3), \
- CARG(4), CARG(5), CARG(6), CARG(7)
-#else
-#define CALLARGS(call) call->u.e.p
-#endif
-
-/***************************************************************************
-* timebase structure
-****************************************************************************/
-
-typedef struct timebase_struct {
- struct timebase_struct *next; /* used for list */
- time_type next_time;
- time_type virt_base;
- time_type real_base;
- time_type rate; /* ratio of real/virt time, STOPRATE or more is infinity */
- short heap_size;
- short heap_max;
- call_type *heap;
-} timebase_node, *timebase_type;
-
-extern timebase_type timebase_queue;
-
-#define call_alloc() ((call_type) memget(sizeof(call_node)))
-#define call_free(c) memfree((char *) (c), sizeof(call_node))
-
-timebase_type timebase_create(int maxsize);
-void callinsert(timebase_type base, call_type call);
-void callshow(call_type call);
-void timebase_free(timebase_type timebase);
-void insert_base(timebase_type timebase);
-void remove_base(timebase_type timebase);
-call_type remove_call(timebase_type a_timebase);
-void set_rate(timebase_type base, time_type rate);
-void set_virttime(timebase_type base, time_type vtime);
-void timebase_use(timebase_type base);
-
-#define real_to_virt(base, rtime) ((base)->rate == 0 ? MAXTIME : \
- ((base)->virt_base + (((rtime) - (base)->real_base) << 8) / (base)->rate))
-
-#define virt_to_real(base, vtime) ((base)->rate >= STOPRATE ? \
- ((base)->virt_base > vtime ? (base)->real_base : MAXTIME) : \
- (base)->real_base + ((((vtime) - (base)->virt_base) * (base)->rate) >> 8))
-
-#define virt_to_real_256(base, vtime) ((base)->rate >= STOPRATE ? \
- ((base)->virt_base > vtime ? (base)->real_base << 8 : MAXTIME) : \
- ((base)->real_base << 8) + ((((vtime) - (base)->virt_base) * (base)->rate)))
diff --git a/lib-src/libnyquist/cmt/userio.c b/lib-src/libnyquist/cmt/userio.c
deleted file mode 100644
index 54ac148..0000000
--- a/lib-src/libnyquist/cmt/userio.c
+++ /dev/null
@@ -1,1281 +0,0 @@
-/* userio.c -- handy user interface functions */
-/* Copyright 1989 Carnegie Mellon University */
-
-/*****************************************************************************
-* Change Log
-* Date | Change
-*-----------+-----------------------------------------------------------------
-* 21-May-86 | Created
-* 11-Aug-87 | F.H: Added clear_abort(), stop()
-* May-88 | JCD : AMIGA VERSION
-* 11-Jun-88 | RBD: disable printing of GDEBUG messages
-* 12-Oct-88 | JCD : EXCLUSIVE AMIGA VERSION
-* 13-Apr-89 | JCD : New portable version.
-* 5-Apr | JDW : Further changes
-* 2-Mar-92 | GWL : Little changes to satisfy compiler
-* 19-Nov-92 | JDZ : Mach tty io threads
-* 28-Apr-03 | DM : portability changes. true->TRUE, false->FALSE
-*****************************************************************************/
-
-/* Notes on ascii input:
-
-Input is complicated because different systems have varying input models,
-especially with regard to handling ^C. The CMT model handles ^C and ^G as
-special characters, and these do not cause software interrupts. Also, the
-lowest level of the CMT model does not support line editing: Every character
-is acted upon immediately. This has two implications:
-(1) CMT must "read ahead" looking for ^C and ^G characters. This is handled
-by the check_aborted() procedure, which reads characters into the
-type_ahead[] array.
-(2) CMT must do its own line editing. This is handled by the ggets() routine.
-
-A number of functions support ascii input, only some of which are visible
-to the application programmer. Let's start at the top-level and work down;
-each of the following calls the routine below it:
-
-ggets() - gets a string with line editing support. This function is fairly
-machine independent, except for some backspace-and-erase control character
-code sequences.
-
-ggetchar() - gets a raw character. This function calls wait_ascii()
- and echoes it. Note that it may return ABORT_CHAR or BREAK_CHAR.
-
-wait_ascii() - gets a raw character without echo and without character
-code translation. wait_ascii() either polls get_ascii() or uses some
-kind of system-dependent event waiting. Returns ABORT_CHAR or BREAK_CHAR
-immediately if abort_flag has been set, regardless of whether there is
-new ascii input.
-
-get_ascii() - checks to see if a character is available. (Using
-check_aborted().)
-The only dependency here is on the Amiga, we restart input when buffer goes
-from full to non-full.
-
-check_aborted() - looks for input by calling ascii_input. If found,
-put the input into the type_ahead[] buffer. Returns abort_flag.
-
-ascii_input() - lowest level of input; just gets a character if there is
-one. Does conversion from RETURN (\r) to EOL (\n). The Amiga handles
-this in-line directly in check_aborted().
-
-Here's a quick summary:
-
-ggets = ggetchar + line editing & string building
-ggetchar = wait_ascii + character echo
-wait_ascii = get_ascii + wait for character
-get_ascii = check_aborted + pull char from buffer
-check_aborted = ascii_input + test for ^C,^G + put in buffer
-ascii_input = poll for char + CR->EOL conversion
-
-*/
-
-#include "switches.h"
-
-#include <stdio.h>
-#include <string.h>
-#if HAS_STDLIB_H
-#include <stdlib.h> /* normal case */
-#endif
-
-
-#ifdef MACINTOSH
-# include "StandardFile.h"
- /* added for ThinkC 7 */
-# ifdef THINK_C
-# include <pascal.h>
-# endif
-#endif
-
-#ifdef AMIGA
-
-# ifdef AZTEC
-# include "functions.h"
-# else /* LATTICE */
-# include "amiga.h"
-# include "stdarg.h"
-# endif
-
-# include "intuition/intuition.h"
-# include "devices/console.h"
-#endif
-
-#include "ctype.h"
-#include "stdio.h"
-#include "cext.h"
-#include "userio.h"
-
-#ifdef MICROSOFT
-#include "signal.h"
-#endif
-
-#ifdef UNIX_MACH
-#include <varargs.h>
-#include <midistruct.h>
-extern char a_in;
-extern int a_in_flag;
-extern int i_am_running;
-#ifdef RTMach
-extern itc_mutex_t a_mutex;
-extern itc_condition_t a_cond, a_in_cond;
-#define A_LOCK() itc_mutex_lock(&a_mutex)
-#define A_UNLOCK() itc_mutex_unlock(&a_mutex)
-#else /* RTMach */
-extern struct mutex a_mutex;
-extern struct condition a_cond, a_in_cond;
-#define A_LOCK() mutex_lock(&a_mutex)
-#define A_UNLOCK() mutex_unlock(&a_mutex)
-#endif /* RTMach */
-#endif
-
-#ifdef DOTS_FOR_ARGS
-#include <stdarg.h>
-#endif
-
-#ifdef UNIX
-#include <sys/param.h>
-#include "cmtio.h"
-#ifdef _IBMR2
-#define NBBY 8
-#define OPEN_MAX 2000
-#include <sys/select.h>
-#endif
-#endif
-
-#ifdef linux
-#include <sys/time.h> /* for FD_ZERO / FD_SET */
-#endif
-
-extern int debug;
-
-#ifdef NYQUIST
-/* get definitions for stdputstr, etc. */
-#include "xlisp.h"
-#endif
-
-
-/****************************************************************************
-*
-* routines private to this module
-*
-****************************************************************************/
-
-int GetReadFileName();
-int GetWriteFileName();
-
-#ifdef MACINTOSH
-private void PtoC_StrCopy(char *p1, char *p2);
-#endif
-
-#ifdef AMIGA
- char ConGetChar();
- ConMayGetChar();
-private void ConRead();
-private void ConPutStr();
-private void ConPutChar();
-UBYTE ascii_signal();
-UBYTE KeybSig();
-#endif
-
-
-/****************************************************************************
-*
-* variables shared with other modules
-*
-****************************************************************************/
-
-public int abort_flag; /* control C or control G equivalent */
-public int redirect_flag; /* check whether the I/O has been redirected--
- Added by Ning Hu Apr.2001*/
-/* extern void musicterm(); */ /*DMH: from macmidi.c, to allow abort_check*/
-public boolean ascii_input();
-
-/****************************************************************************
-*
-* variables private to this module
-*
-****************************************************************************/
-
-#ifdef AMIGA
-struct IntuitionBase *IntuitionBase;
-private struct IOStdReq *ConOutReq;
-private struct MsgPort *ConOutPort;
-private struct IOStdReq *ConInReq;
-private struct MsgPort *ConInPort;
-private char KeyBuff[16];
-private struct Window *Window;
-private struct NewWindow NewWindow = {
- 0,11,640,189,
- 0,1,
- NULL,
- SMART_REFRESH | ACTIVATE | WINDOWDRAG | WINDOWDEPTH |
- WINDOWSIZING,
- NULL,NULL,
- (STRPTR) "Carnegie Mellon University MIDI Toolkit for Commodore AMIGA",
- NULL,NULL,
- 100,25,640,200,
- WBENCHSCREEN };
-#endif
-
-#ifdef MACINTOSH
-private OSType io_file_type = 0x3F3F3F3F; /* '????' */
-private OSType io_file_creator = 0x3F3F3F3F; /* '????' */
-#endif
-
-#define type_ahead_max 100
-char type_ahead[100];
-int type_ahead_head = 0;
-int type_ahead_tail = 0;
-int type_ahead_count = 0;
-
-
-#ifdef DOS
-#ifdef BORLAND
-int c_break(void)
-{
- gprintf(TRANS, " BREAK ");
- abort_flag = ABORT_LEVEL;
- return 1; /* non-zero means do not exit program */
-}
-#endif
-#ifdef MICROSOFT
-void c_break(int sig)
-{
- abort_flag = ABORT_LEVEL;
- /* The CTRL+C interrupt must be reset to our handler since
- * by default it is reset to the system handler.
- */
- signal(SIGINT, c_break); /* assume this succeeds */
-}
-#endif
-#endif
-
-#ifdef MACINTOSH
-#ifdef NYQUIST
-void FlushOutput (void);
-#endif
-#endif
-
-/* gflush -- flush output produced by gprintf, etc. */
-/**/
-void gflush(void)
-{
-#ifdef MACINTOSH
-#ifdef NYQUIST
- FlushOutput();
-#else
- fflush(stdout); /* make sure any prompts or errors have been output */
- fflush(stderr);
-#endif /* NYQUIST */
-#endif /* MACINTOSH */
-#ifdef UNIX
- fflush(stdout); /* make sure any prompts or errors have been output */
- fflush(stderr);
-#endif
-}
-
-
-/****************************************************************************
-* io_init
-*
-* I added this init function for the AMIGA version.
-*
-* io_init : opens a window
-* and exits if initialisation can not be done properly.
-* registers cleanup calls to carefully deallocate resources.
-*
-* io_init is not amiga specific : the simplest version
-* of io_init could be a clear screen statement for example, and a
-* printf("Good bye !\n") on exit.
-*
-* for the Mac, it seems that ascii_input doesn't work unless getchar() is
-* called first. I assume this is because getchar() initializes the ability
-* of the window to process type-in, so there is probably a way to set this
-* directly. If you figure it out, let me know. -RBD
-*
-*****************************************************************************/
-
-void
-io_init()
-{
-
-#ifdef AMIGA
- int error;
-
- /* Window and console initialisation */
- IntuitionBase = (struct IntuitionBase *)OpenLibrary("intuition.library",1L);
- if (IntuitionBase == NULL) EXIT(1);
- cu_register((cu_fn_type) CloseLibrary, IntuitionBase);
-
- ConOutPort = CreatePort("conoutport", 0L);
- if (ConOutPort == NULL) EXIT(1);
- cu_register((cu_fn_type) DeletePort, ConOutPort);
-
- ConOutReq = CreateStdIO(ConOutPort);
- if (ConOutReq == NULL) EXIT(1);
- cu_register((cu_fn_type) DeleteStdIO, ConOutReq);
-
- ConInPort = CreatePort("coninport", 0L);
- if (ConInPort == NULL) EXIT(1);
- cu_register((cu_fn_type) DeletePort, ConInPort);
-
- ConInReq = CreateStdIO(ConInPort);
- if (ConInReq == NULL) EXIT(1);
- cu_register((cu_fn_type) DeleteStdIO, ConInReq);
-
- Window = OpenWindow(&NewWindow);
- if (Window == NULL) EXIT(1);
- cu_register((cu_fn_type) CloseWindow, Window);
-
- ConOutReq->io_Data = (APTR)Window;
- ConOutReq->io_Length = sizeof(*Window);
- error = OpenDevice("console.device", 0L, (struct IORequest *) ConOutReq, 0L);
- ConInReq->io_Device = ConOutReq->io_Device;
- ConInReq->io_Unit = ConOutReq->io_Unit;
- if (error != NULL) EXIT(1);
- cu_register((cu_fn_type) CloseDevice, ConOutReq);
-
- ConInReq->io_Command = CMD_READ;
- ConInReq->io_Data = (APTR)KeyBuff;
- ConInReq->io_Length = 1;
- SendIO((struct IORequest *) ConInReq);
-#endif
-
-#ifdef UNIX
-#ifndef BUFFERED_SYNCHRONOUS_INPUT
- IOsetup(0 /* standard input */);
- cu_register((cu_fn_type) IOcleanup, NULL);
-#endif
-#endif
-
-#ifdef MACINTOSH
-#ifndef NYQUIST /* don't need this if we're in Nyquist */
- char s[100];
- printf("Type <return> to start: ");
- fgets(s, 100, stdin);
-#endif /* NYQUIST */
-#endif
-
-#ifdef DOS
-#ifdef MICROSOFT
- if (signal(SIGINT, c_break) == SIG_ERR) {
- gprintf(ERROR, "Couldn't set Ctrl C handler\n");
- EXIT(1);
- }
-#else
-#ifdef BORLAND
- ctrlbrk(c_break);
-#else
- ... we are in DOS, but neither MICROSOFT nor BORLAND,
- please set up a control C handler here...
-#endif
-#endif
-#endif
-}
-
-#ifdef MACINTOSH
-
-/****************************************************************************
-* abort_check
-* Effect:
-* exit nicely if the aborted flag is set
-****************************************************************************/
-
-public void abort_check()
-{
- if (abort_flag) clean_exit();
-}
-
-
-/****************************************************************************
-* clean_exit
-* Effect:
-* clean up and exit
-****************************************************************************/
-
-public void clean_exit()
-{
- gprintf(TRANS, "Exiting...\n");
- EXIT(1);
-}
-
-#ifdef MPW
-/****************************************************************************
-* cleanup_abort_handler
-* Effect:
-* shuts down abort watcher
-****************************************************************************/
-
-public void cleanup_abort_handler()
-{
- (void) sigset(SIGINT, SIG_DFL); /* deactivate abort watcher */
-}
-
-
-/****************************************************************************
-* init_abort_handler
-* Effect:
-* starts abort watcher
-* aborted flag is set to FALSE
-****************************************************************************/
-
-public void init_abort_handler()
-{
- abort_flag = FALSE;
- (void) sigset(SIGINT, abort_watcher); /* activate abort watcher */
-}
-#endif
-
-#endif
-
-
-/****************************************************************************
-* askbool
-* Inputs:
-* char *prompt: string to prompt for user input
-* int deflt: TRUE or FALSE default
-* Returns:
-* boolean: TRUE or FALSE as entered by user
-* Effect:
-* prompts user for yes or no input, returns result
-****************************************************************************/
-
-int askbool(prompt, deflt)
-char *prompt;
-int deflt;
-{
-#define undefined -1
- char defchar; /* the default answer */
- char c; /* user input */
- char in_string[100];
- int result = -1; /* the result: -1 = undefined, 0 = FALSE, 1 = TRUE */
- if (deflt) defchar = 'y';
- else defchar = 'n';
- while (result == undefined) {
- gprintf(TRANS, "%s? [%c]: ", prompt, defchar);
- ggets(in_string);
- c = in_string[0];
- if (islower(c)) c = toupper(c);
- if (c == 'Y') result = TRUE;
- else if (c == 'N') result = FALSE;
- else if (c == EOS) result = deflt;
- else if (abort_flag) result = deflt;
- /* space before Please to separate from user's type-in: */
- else gprintf(TRANS, " Please type Y or N.\n");
- }
- if (abort_flag == BREAK_LEVEL) {
- abort_flag = 0;
- result = deflt;
- gprintf(TRANS, "\n");
- }
- return result;
-}
-
-
-/****************************************************************************
-* fileopen
-* Inputs:
-* char *deflt: the default file name (e.g. from command line)
-* char *extension: default extension
-* char *mode: read ("r") or write ("w")
-* char *prompt: prompt for user
-* Returns:
-* opened file pointer
-* Effect:
-* opens file, prompts for user input if necessary and warns about
-* possible confusion. If deflt is a null string or NULL, the user will
-* be prompted for a name. The routine loops until a file is opened.
-* If the mode is "r", a check is made to see if the file exists
-* with and without the extension. If both exist a warning is given.
-* For mode "w", a check is made to see if the file will be overwritten.
-* The extension is automatically added if the default or user-typed
-* file has no "." At the bottom of the loop body, if no file has
-* been opened, the user is prompted for another file name.
-****************************************************************************/
-
-char fileopen_name[100]; /* name of the opened file */
-
-FILE *fileopen(deflt, extension, mode, prompt)
- char *deflt;
- char *extension; /* default extension */
- char *mode; /* read "r" or write "w" */
- char *prompt; /* prompt for user */
-{
- char extname[100]; /* trial name with extension added */
- FILE *fp = NULL; /* file corresponding to filename */
- FILE *fpext; /* file corresponding to extname */
- char *problem = NULL; /* tells user why he has to try again */
-
- if (!deflt) deflt = ""; /* treat NULL as the empty string */
- strcpy(fileopen_name, deflt);
- /* keep trying until a good file is found: */
- while (fp == NULL) {
- /* avoid null file names: */
- while (strlen(fileopen_name) == 0) {
-#ifndef MACINTOSH
- gprintf(TRANS, "%s : ", prompt);
- ggets(fileopen_name);
- if (abort_flag) {
- if (abort_flag == BREAK_LEVEL) {
- abort_flag = 0;
- /* type return since user didn't... */
- gprintf(TRANS, "\n");
- }
- return NULL;
- }
-#else /* use Macintosh file dialog */
- if (mode[0] == 'r') {
- if (!GetReadFileName(fileopen_name)) return NULL;
- } else if (mode[0] == 'w') {
- if (!(GetWriteFileName(fileopen_name, prompt))) return NULL;
- } else {
- gprintf(ERROR, "(fileopen) internal error: bad mode\n");
- }
-#endif /* MACINTOSH */
- }
- if (mode[0] == 'r') {
- strcpy(extname, fileopen_name);
- strcat(extname, ".");
- strcat(extname, extension);
- fp = fopen(fileopen_name, mode);
- fpext = fopen(extname, mode);
- if (fp != NULL && fpext != NULL) {
- gprintf(TRANS,
- "warning: both %s and %s exist. %s will be used.\n",
- fileopen_name, extname, fileopen_name);
- fclose(fpext);
- } else if (fpext != NULL) {
- fp = fpext;
- strcpy(fileopen_name, extname); /* remember what was opened */
- }
- if (fp == NULL) problem = "Couldn't find %s.\n";
- } else if (mode[0] == 'w') {
- boolean added_extension = FALSE;
-
- /* add the extension if there is no '.' in the file name */
- if (!strchr(fileopen_name, '.')) {
- strcat(fileopen_name, ".");
- strcat(fileopen_name, extension);
- added_extension = TRUE;
- }
- if (TRUE
-#ifdef MACINTOSH
- /* file open dialog already asked user to confirm unless we're
- * adding an extension
- */
- && added_extension
-#endif
- ) {
- fp = fopen(fileopen_name, "r");
- if (fp != NULL) {
- char question[100];
- fclose(fp);
- strcpy(question, "OK to overwrite ");
- strcat(question, fileopen_name);
- if (!askbool(question, FALSE)) {
- fp = NULL;
- problem = "\n";
- goto tryagain;
- }
- }
- }
- fp = fopen(fileopen_name, mode);
- if (fp == NULL) problem = "Couldn't create %s.\n";
- }
- tryagain:
- if (fp == NULL) {
- gprintf(TRANS, problem, fileopen_name);
- gprintf(TRANS,"Try again.\n");
- fileopen_name[0] = EOS;
- }
- }
- return fp;
-}
-
-
-#ifdef MACINTOSH
-
-static int GetReadFileName(name)
-char *name;
-{
- static Point p = {100,100};
- SFReply loadfile;
- SFTypeList mytypes;
-
- mytypes[0] = 0x54455854; /* 'TEXT' */
- mytypes[1] = 0x4D696469; /* 'Midi' */
- mytypes[2] = 0x3F3F3F3F; /* '????' */
-/* could put any filter here (i.e. giofilefileter) */
- SFGetFile(p, "\p", NULL, 3, mytypes, 0L, &loadfile);
- if (loadfile.good) {
- SetVol(0L,loadfile.vRefNum);
- PtoC_StrCopy((char *) &loadfile.fName, name);
- return(true);
- } else return(false);
-}
-
-
-static int GetWriteFileName(fn, str)
-char *fn, *str;
-{
- static Point SFPwhere = { 106, 104 };
- unsigned char Pstr[100], Pfn[100];
- SFReply reply;
-
- strcpy((char *)Pstr, str);
- CtoPstr((char *)Pstr);
- strcpy((char *)Pfn, fn);
- CtoPstr((char *)Pfn);
-
- SFPutFile(SFPwhere, (ConstStr255Param) Pstr, (ConstStr255Param) Pfn,
- 0L, &reply);
- if (reply.good) {
- SetVol (0L,reply.vRefNum);
- PtoC_StrCopy((char *) &reply.fName, fn);
- return(true);
- }
- else return(false);
-}
-
-
-void PtoC_StrCopy(p1, p2)
- register char *p1, *p2;
-/* copies a pascal string from p1 to p2 */
-{
- register int len;
-
- len = *p1++;
- while (--len>=0) *p2++=*p1++;
- *p2 = '\0';
-}
-
-
-boolean get_file_info(char *filename, OSType *file_type, OSType *file_creator)
-{
- short rc; /* toolbox return code */
- FInfo fi; /* toolbox file info */
- char fn[101]; /* temporary file name */
-
- strcpy(fn, filename);
- CtoPstr(fn);
- if (rc = GetFInfo((byte*)fn, 0, &fi)) {
- gprintf(ERROR, "rc from GetFInfo=%d\n", rc);
- gprintf(ERROR, "unable to get file type\n");
- *file_type = 0x3F3F3F3F; /* '????' */
- *file_creator = 0x3F3F3F3F; /* '????' */
- return FALSE;
- } else /* set file type & creator */ {
- if (debug) gprintf(TRANS, "File Type: '%.4s' File Creator: '%.4s'\n",
- &fi.fdType, &fi.fdCreator );
- *file_type = fi.fdType;
- *file_creator = fi.fdCreator;
- }
- return TRUE;
-}
-
-
-boolean put_file_info(char *filename, OSType file_type, OSType file_creator)
-{
- short rc; /* toolbox return code */
- FInfo fi; /* toolbox file info */
- char fn[101]; /* temporary file name */
-
- if (debug) gprintf(TRANS,"set file %s to become type '%.4s'\n", filename, &file_type);
- strcpy(fn, filename);
- CtoPstr(fn);
- if (rc = GetFInfo((byte*)fn, 0, &fi)) {
- gprintf(TRANS, "rc from GetFInfo=%d\n", rc);
- gprintf(TRANS, "unable to set file type\n");
- } else /* set file type & creator */ {
- if (debug) gprintf(TRANS, "File Type: '%.4s' File Creator: '%.4s'\n",
- &fi.fdType, &fi.fdCreator );
- fi.fdType = file_type;
- fi.fdCreator = file_creator;
- if (rc=SetFInfo((byte*)fn, 0, &fi)) {
- gprintf(TRANS, "rc from SetFInfo=%d\n", rc);
- gprintf(TRANS, "unable to set file type\n");
- } else if (rc=GetFInfo((byte*)fn, 0, &fi)) {
- gprintf(TRANS, "rc from GetFInfo=%d\n", rc);
- gprintf(TRANS, "unable to verify file type\n");
- } else {
- if (debug) gprintf(TRANS, "File Type: '%.4s' File Creator: '%.4s'\n",
- &fi.fdType, &fi.fdCreator );
- }
- }
-}
-#endif /* MACINTOSH */
-
-
-
-#ifdef AMIGA
-/***************************************************************
-* ascii_signal
-*
-* Input : none
-* Ouput : none
-* Return: the signal that will be raised on ascii input
-* Effect: none
-***************************************************************/
-
-UBYTE ascii_signal()
-{
- return ConInPort->mp_SigBit;
-}
-#endif
-
-/* check_aborted -- see if any characters are available, check for ctrl C */
-
-int check_aborted()
-{
- char in_c;
-#ifdef AMIGA
- if (GetMsg(ConInPort)) {
- in_c = KeyBuff[0];
- if (in_c == '\r') in_c = '\n';
-#endif
-#ifndef AMIGA /* DOS or MACINTOSH or UNIX */
- if (type_ahead_count < type_ahead_max && ascii_input(&in_c)) {
-#endif
- type_ahead[type_ahead_tail] = in_c;
- if (in_c == ABORT_CHAR) abort_flag = ABORT_LEVEL;
- else if (!abort_flag && in_c == BREAK_CHAR)
- abort_flag = BREAK_LEVEL;
-
- /* go ahead and insert anything into buffer, including ^C, ^G: */
- type_ahead_count++;
- type_ahead_tail++;
- if (type_ahead_tail == type_ahead_max) type_ahead_tail = 0;
-
-#ifdef AMIGA
- if (type_ahead_count < type_ahead_max) ConRead();
-#endif
- }
- return abort_flag;
-}
-
-
-/****************************************************************************
-* readln
-* Inputs:
-* FILE * fp: File to read from
-* Effect:
-* Reads and discards characters until a newline is seen
-****************************************************************************/
-
-void readln(fp)
- register FILE *fp;
-{
- register int c;
- while (((c = getc(fp)) != '\n') && (c != EOF)) ;
-}
-
-
-/****************************************************************************
-* gprintf
-* Inputs:
-* int * handler: pointer to output handler (say, a window)
-* or one of {TRANS, ERROR, FATAL, GDEBUG} from userio.h
-* char * format: a null-terminated printf style format string
-* int arg0 through arg14: a variable number of arguments for printf
-* Effect:
-* formats and outputs the specified information to an output handler.
-* this is a system-independent approach to output. On
-* a simple machine, it is like printf. on a more complex machine,
-* output is directed to the appropriate window.
-* Implementation
-* Note that to handle the variable argument list, a number of different
-* approaches are implemented. The first part of the implementation selects
-* one of 4 ways to build temp1, a formatted string. The 4 ways arise from
-* use or non-use of vsprintf, and use or non-use of ... in the arg list.
-* After building temp1, non-Amiga systems write to stdout or stderr,
-* whereas AMIGA writes to a special console. Why? Because the Amiga
-* needs a new console so we can set up a signal upon character typein.
-****************************************************************************/
-
-#ifndef gprintf
-#define GPRINTF_MESSAGE_LEN 512
-#ifdef USE_VSPRINTF
-#ifdef DOTS_FOR_ARGS
-
-/* define with ... in arg list and use vsprintf to get temp1 */
-public void gprintf(long where, char *format, ...)
-{
- char temp1[GPRINTF_MESSAGE_LEN];
-#ifdef AMIGA
- char temp2[GPRINTF_MESSAGE_LEN];
-#endif
- va_list ap;
-
- va_start(ap, format);
- vsprintf(temp1, format, ap);
- va_end(ap);
-
-#else /* !DOTS_FOR_ARGS */
-
-/* define with va_alist and use vsprintf to get temp1 */
-public void gprintf(where, format, va_alist)
-long where;
-char *format;
-va_dcl
-{
- char temp1[GPRINTF_MESSAGE_LEN];
- va_list pvar;
-/* this is a syntax error - if you don't have to remove this, */
-/* then this whole section of code is unnecessary. */
- va_start(pvar);
- vsprintf(temp1, format, pvar);
- va_end(pvar);
-
-#endif /* DOTS_FOR_ARGS */
-
-#else /* !USE_VSPRINTF */
-#define MAX_GPRINTF_ARGS 10
-typedef struct gp_args_struct {
- long arg[MAX_GPRINTF_ARGS];
-} gp_args_node;
-
-#ifdef DOTS_FOR_ARGS
-/* use ... but not vsprintf */
-public void gprintf(long where, char *format, ...)
-{
- char temp1[GPRINTF_MESSAGE_LEN];
-#ifdef AMIGA
- char temp2[GPRINTF_MESSAGE_LEN];
-#endif
- va_list ap;
- gp_args_node args;
- va_start(ap, format);
- args = va_arg(ap, gp_args_node);
- va_end(ap);
-#else /* !DOTS_FOR_ARGS */
-/* don't use ... and don't use vsprintf */
-public void gprintf(where, format, args)
- long where;
- char *format;
- gp_args_node args;
-{
- char temp1[GPRINTF_MESSAGE_LEN];
-#ifdef AMIGA
- char temp2[GPRINTF_MESSAGE_LEN];
-#endif /* AMIGA*/
-#endif /* DOTS_FOR_ARGS */
-
- sprintf(temp1, format, args);
-
-#endif /* USE_VSPRINTF */
-
-/*
- * Now we've got formatted output in temp1. Write it out.
- */
-#ifdef NYQUIST
- switch ((long) where) {
- case TRANS:
- stdputstr(temp1);
- break;
- case ERROR:
- errputstr(temp1);
- break;
- case FATAL:
- errputstr("FATAL: ");
- errputstr(temp1);
- break;
- case GDEBUG:
- errputstr("DEBUG: ");
- errputstr(temp1);
- break;
- default:
- errputstr("UNKNOWN: ");
- errputstr(temp1);
- break;
- }
- gflush();
-#else /* not NYQUIST */
-#ifdef AMIGA
-
- switch((long) where) {
- case TRANS:
- strcpy(temp2, temp1);
- break;
- case ERROR:
- strcpy(temp2, temp1);
- break;
- case FATAL:
- strcpy(temp2, "FATAL: ");
- strcat(temp2, temp1);
- break;
- case GDEBUG:
- strcpy(temp2,"DEBUG: ");
- strcat(temp2, temp1);
- break;
- default:
- strcpy(temp2, "UNKNOWN: ");
- strcat(temp2, temp1);
- break;
- }
- ConOutReq->io_Command = CMD_WRITE;
- ConOutReq->io_Data = (APTR)temp2;
- ConOutReq->io_Length = -1; /* NULL terminated string */
- DoIO((struct IORequest *) ConOutReq);
-#else /* not NYQUIST or AMIGA */
- switch(where) {
- case TRANS:
- printf("%s", temp1);
- break;
- case ERROR:
- fprintf(stderr, "%s", temp1);
- break;
- case GDEBUG:
- fprintf(stderr, "DEBUG %s", temp1);
- break;
- case FATAL:
- fprintf(stderr, "FATAL %s", temp1);
- break;
- default:
- fprintf(stderr, "UNKNOWN %s", temp1);
- break;
- }
-#endif /* AMIGA */
-#endif /* NYQUIST */
-}
-
-#endif /* ifndef gprintf */
-
-
-/**************************************************************************
-* gputchar
-* General putchar
-**************************************************************************/
-
-#ifndef gputchar
-
-#ifdef AMIGA
-public int gputchar(c)
-int c;
-{
- ConPutChar((char)c);
- return(c);
-}
-#else
-public int gputchar(c)
-int c;
-{
- putchar((char)c);
- return(c);
-}
-#endif
-
-#endif /* ifndef gputchar */
-
-/**************************************************************************
-* ggetchar
-* General getchar
-**************************************************************************/
-
-public int ggetchar()
-{
-
-#ifdef BUFFERED_SYNCHRONOUS_INPUT
- return getchar();
-#else
- key = wait_ascii();
- if (key != ABORT_CHAR && key != '\b') gputchar((char)key);
- return(key);
-#endif
-}
-
-
-/**************************************************************************
-* ggets
-* General gets
-**************************************************************************/
-
-
-#ifndef ggets
-
-public char *ggets(str)
- char *str;
-{
- char *s = str;
- int c;
-
- do {
- c = ggetchar();
- if (c == '\b' /* backspace */) {
- if (s != str) {
- gputchar('\b');
- gputchar((int)' ');
- gputchar('\b');
- s--;
- } else {
-#ifdef AMIGA
- gputchar((int)0x9b);
- gputchar((int)0x43);
-#else
- /* gputchar((int)' '); */
-#endif
- gputchar((int)0x07);
- }
- } else *s++ = (char) c;
- } while (c != (int) '\n' && !abort_flag);
-
- *(s-1) = EOS;
- if (abort_flag) *str = EOS;
- return str;
-}
-
-#endif /* ifndef ggets */
-
-
-/****************************************************************************
-* get_ascii
-* Returns:
-* boolean: TRUE if a character was found
-* int * c: pointer to int into which to store the character, if any
-* Effect:
-* polls (doesn't wait) for an ascii character and says if it got one
-* the character is returned in *c.
-****************************************************************************/
-
-public boolean get_ascii(c)
- char *c;
-{
- check_aborted(); /* input buffer check */
- if (type_ahead_count == 0) return FALSE;
-#ifdef AMIGA
- /* if the buffer is full, then there is no outstanding read, restart it: */
- if (type_ahead_count == type_ahead_max) ConRead();
-#endif
- type_ahead_count--;
- *c = type_ahead[type_ahead_head++];
- if (type_ahead_head == type_ahead_max) type_ahead_head = 0;
- return TRUE;
-}
-
-#ifdef MACINTOSH /** Macintosh direct ascii input**/
-public boolean ascii_input(c)
-char *c;
-{
- EventRecord theEvent;
-
- (void) GetNextEvent((keyDownMask | autoKeyMask), &theEvent);
- if ((theEvent.what == keyDown) || (theEvent.what == autoKey)) {
- *c = theEvent.message & charCodeMask;
- if (*c == '\r') *c = '\n';
- return(true);
- }
- else {
- return(false);
- }
-}
-#endif
-
-#ifdef WINDOWS
-#include "conio.h"
-#define kbhit _kbhit
-#define getch _getch
-#endif
-
-#ifdef DOS
-public boolean ascii_input(c)
-char *c;
-{
- if (abort_flag == ABORT_LEVEL) {
- *c=ABORT_CHAR;
- return((boolean)TRUE);
- }
- if (kbhit()) { /* If the keyboard was hit */
- *c = getch(); /* Don't echo it */
-// printf("now break");
- if (*c == '\r') *c = '\n';
- return((boolean)TRUE);
- }
- return((boolean)FALSE); /* Keeps Lattice compiler happy */
-}
-#endif
-
-#ifdef UNIX
-public boolean ascii_input(c)
-char *c;
-{
-#ifdef UNIX_MACH
- /*
- * we can't read from stdin directly, because the ascii
- * input thread is already doing so, so instead we'll
- * wait for that thread to read a character and then take
- * it
- */
- boolean ret = FALSE;
-
- A_LOCK();
- if (a_in_flag) {
- (*c) = a_in;
- a_in_flag = 0;
- ret = TRUE;
- }
- A_UNLOCK();
- if (ret) {
-#ifdef RTMach
- itc_condition_signal(&a_cond);
-#else /* RTMach */
- condition_signal(&a_cond);
-#endif /* RTMach */
- }
- if ((*c) == '\r')
- (*c) = '\n';
- return(ret);
-#else /* UNIX_MACH */
-#ifndef BUFFERED_SYNCHRONOUS_INPUT
- int input = IOgetchar();
- if (input != IOnochar) {
- *c = input;
- if (*c == '\r') *c = '\n';
- return TRUE;
- }
-#endif /* BUFFERED_SYNCHRONOUS_INPUT */
- return FALSE;
-#endif /* UNIX_MACH */
-}
-#endif
-
-#ifndef AMIGA /*DOS and MAC and UNIX */
-public void unget_ascii(char c)
-{
- if (type_ahead_head == 0) type_ahead_head = type_ahead_max;
- type_ahead_head--;
- type_ahead[type_ahead_head] = c;
- type_ahead_count++;
-}
-
-
-public boolean check_ascii()
-{
- char c;
-
- if(get_ascii(&c)) {
- unget_ascii(c);
- return TRUE;
- }
- else return FALSE;
-}
-#endif
-
-
-/****************************************************************************
-* wait_ascii
-* Returns:
-* int: character for key pressed
-* Effect:
-* waits for the user to type a key on the terminal keyboard
-* (versus the synthesizer keyboard) and returns the key typed
-****************************************************************************/
-
-#ifdef MACINTOSH
-public int wait_ascii()
-{
- char key ; /* key typed */
-
- if (abort_flag == ABORT_LEVEL) return ABORT_CHAR;
- if (abort_flag == BREAK_LEVEL) return BREAK_CHAR;
- gflush();
- while (!get_ascii(&key)) ;
- return(key);
-}
-#endif
-
-#ifdef DOS
-public int wait_ascii()
-{
- char key ; /* key typed */
-
- if (abort_flag == ABORT_LEVEL) return ABORT_CHAR;
- if (abort_flag == BREAK_LEVEL) return BREAK_CHAR;
- while(!get_ascii(&key));
- /* GWL - check for abort on previos line */
- return (int)key;
-}
-#endif
-
-#ifndef MACINTOSH
-#ifndef DOS
-public int wait_ascii()
-{
-#ifdef UNIX /* was defined (UNIX) || defined(ITC) */
-#ifndef UNIX_MACH
- fd_set readfds;
-#endif /* !UNIX_MACH */
-#endif
- char c;
-
- if (abort_flag == ABORT_LEVEL) return ABORT_CHAR;
- if (abort_flag == BREAK_LEVEL) return BREAK_CHAR;
- while (!get_ascii(&c)) {
-#ifdef AMIGA
- WaitPort(ConInPort);
-#endif
-#ifdef UNIX
- fflush(stdout);
-#ifdef UNIX_MACH
- /*
- * we can't select, since another thread is reading
- * from stdin, and we don't want to have an input war
- * so instead, the ascii input thread will signal
- * a_in_cond when it gets input, so we just wait
- * for that to happen
- */
- A_LOCK();
-#ifdef RTMach
- itc_condition_wait(&a_in_cond, &a_mutex);
-#else /* RTMach */
- condition_wait(&a_in_cond, &a_mutex);
-#endif /* RTMach */
- A_UNLOCK();
-#else /* UNIX_MACH */
- FD_ZERO(&readfds);
- FD_SET(IOinputfd, &readfds);
- gflush();
- select(NOFILE+1, &readfds, 0, 0, NULL);
-#endif /* !UNIX_MACH */
-#endif /* ifdef UNIX */
- }
- return (int) c;
-}
-#endif
-#endif
-
-#ifdef AMIGA
-/******************************************************************
- AMIGA 2000.
- Console IO Functions
- JCD 25-Apr-88
-*******************************************************************/
-
-UBYTE KeybSig()
-{
- return ConInPort->mp_SigBit;
-}
-
-private void ConPutChar(c)
-char c;
-{
- ConOutReq->io_Command = CMD_WRITE;
- ConOutReq->io_Data = (APTR)&c;
- ConOutReq->io_Length = 1;
- DoIO((struct IORequest *) ConOutReq);
-}
-
-private void ConPutStr(str)
-char *str;
-{
- ConOutReq->io_Command = CMD_WRITE;
- ConOutReq->io_Data = (APTR)str;
- ConOutReq->io_Length = -1;
- DoIO((struct IORequest *) ConOutReq);
-}
-
-private void ConRead()
-{
- ConInReq->io_Command = CMD_READ;
- ConInReq->io_Data = (APTR)KeyBuff;
- ConInReq->io_Length = 1;
- SendIO((struct IORequest *) ConInReq);
-}
-#endif
diff --git a/lib-src/libnyquist/cmt/userio.h b/lib-src/libnyquist/cmt/userio.h
deleted file mode 100644
index 57972dd..0000000
--- a/lib-src/libnyquist/cmt/userio.h
+++ /dev/null
@@ -1,92 +0,0 @@
-/* Copyright 1989 Carnegie Mellon University */
-
-/*****************************************************************************
-* Change Log
-* Date | Change
-*-----------+-----------------------------------------------------------------
-* 5-Apr |JDW : Further changes
-*****************************************************************************/
-
-/* classes of output for gprintf */
-#ifdef MACINTOSH
-#undef false
-#undef true
-#include <MacTypes.h>
-#define TRANS (long) 0
-#define ERROR (long) 1
-#define FATAL (long) 2
-#define GDEBUG (long) 3
-#endif
-
-#ifdef DONT_USE_CMT_IO
-#define TRANS stdout
-#define ERROR stdout
-#define FATAL stdout
-#define GDEBUG stdout
-#endif
-
-#ifndef TRANS /* default */
-#define TRANS 0
-#define ERROR 1
-#define FATAL 2
-#define GDEBUG 3
-#endif
-
-#define CR '\n'
-#define ABORT_CHAR 0x03
-#ifdef NYQUIST
-#define BREAK_CHAR 0x02
-#else
-#define BREAK_CHAR 0x07
-#endif
-
-#define BREAK_LEVEL 1
-#define ABORT_LEVEL 2
-
-#define read_to_eol(ch) if (ch != CR) { char temp[100]; ggets(temp); }
-
-extern char fileopen_name[];
-extern int abort_flag;
-extern int redirect_flag; /* added by Ning Hu, Apr 2001 */
-
-boolean get_ascii(char *c); /* polls for an ascii character */
-#ifdef DOTS_FOR_ARGS
-/* was (defined(ITC_MACH) && defined(__STDC__)) || defined(MACINTOSH) || defined(AZTEC) || (defined(AMIGA) && defined(LATTICE)) || defined(UNIX_ITC) */
-void gprintf(long where, char *format, ...); /* general printf */
-#else
-void gprintf();
-#endif
-
-char *ggets(char *str); /* general gets */
-int wait_ascii(void); /* a waiting version of get_ascii */
-void clean_exit(void); /* exit the program after cleaning up */
-void io_init(void); /* overall initialization */
-void abort_check(void); /* exit if aborted */
-
-int check_aborted(void); /* looks to see if user typed ctrl-C */
-
-int askbool(char *prompt, int deflt);
-FILE *fileopen(char *deflt, char *extension, char *mode, char *prompt);
-void readln(FILE *fp);
-void gflush(void);
-int gputchar(int c);
-int ggetchar();
-char *ggets(char *str);
-boolean ascii_input(char *c);
-void unget_ascii(char c);
-boolean check_ascii(void);
-
-#ifdef MACINTOSH
-boolean get_file_info(char *filename, OSType *file_type, OSType *file_creator);
-boolean put_file_info(char *filename, OSType file_type, OSType file_creator);
-#endif
-
-#ifdef DONT_USE_CMT_IO
-#define ggetchar getchar
-#define ggets gets
-#define gprintf fprintf
-#define gputchar putchar
-#define gprintf fprintf
-#define gputchar putchar
-#endif
-
diff --git a/lib-src/libnyquist/fft/fftn.c b/lib-src/libnyquist/fft/fftn.c
deleted file mode 100644
index 6ee7c5a..0000000
--- a/lib-src/libnyquist/fft/fftn.c
+++ /dev/null
@@ -1,1046 +0,0 @@
-/*--------------------------------*-C-*---------------------------------*
- * File:
- * fftn.c
- *
- * Public:
- * fft_free ();
- * fftn / fftnf ();
- *
- * Private:
- * fftradix / fftradixf ();
- *
- * Descript:
- * multivariate complex Fourier transform, computed in place
- * using mixed-radix Fast Fourier Transform algorithm.
- *
- * Fortran code by:
- * RC Singleton, Stanford Research Institute, Sept. 1968
- *
- * translated by f2c (version 19950721).
- *
- * Revisions:
- * 26 July 95 John Beale
- * - added maxf and maxp as parameters to fftradix()
- *
- * 28 July 95 Mark Olesen <olesen at me.queensu.ca>
- * - cleaned-up the Fortran 66 goto spaghetti, only 3 labels remain.
- *
- * - added fft_free() to provide some measure of control over
- * allocation/deallocation.
- *
- * - added fftn() wrapper for multidimensional FFTs
- *
- * - use -DFFT_NOFLOAT or -DFFT_NODOUBLE to avoid compiling that
- * precision. Note suffix `f' on the function names indicates
- * float precision.
- *
- * - revised documentation
- *
- * 31 July 95 Mark Olesen <olesen at me.queensu.ca>
- * - added GNU Public License
- * - more cleanup
- * - define SUN_BROKEN_REALLOC to use malloc() instead of realloc()
- * on the first pass through, apparently needed for old libc
- * - removed #error directive in favour of some code that simply
- * won't compile (generate an error that way)
- *
- * 1 Aug 95 Mark Olesen <olesen at me.queensu.ca>
- * - define FFT_RADIX4 to only have radix 2, radix 4 transforms
- * - made fftradix /fftradixf () static scope, just use fftn()
- * instead. If you have good ideas about fixing the factors
- * in fftn() please do so.
- *
- * ======================================================================*
- * NIST Guide to Available Math Software.
- * Source for module FFT from package GO.
- * Retrieved from NETLIB on Wed Jul 5 11:50:07 1995.
- * ======================================================================*
- *
- *-----------------------------------------------------------------------*
- *
- * int fftn (int ndim, const int dims[], REAL Re[], REAL Im[],
- * int iSign, double scaling);
- *
- * NDIM = the total number dimensions
- * DIMS = a vector of array sizes
- * if NDIM is zero then DIMS must be zero-terminated
- *
- * RE and IM hold the real and imaginary components of the data, and return
- * the resulting real and imaginary Fourier coefficients. Multidimensional
- * data *must* be allocated contiguously. There is no limit on the number
- * of dimensions.
- *
- * ISIGN = the sign of the complex exponential (ie, forward or inverse FFT)
- * the magnitude of ISIGN (normally 1) is used to determine the
- * correct indexing increment (see below).
- *
- * SCALING = normalizing constant by which the final result is *divided*
- * if SCALING == -1, normalize by total dimension of the transform
- * if SCALING < -1, normalize by the square-root of the total dimension
- *
- * example:
- * tri-variate transform with Re[n1][n2][n3], Im[n1][n2][n3]
- *
- * int dims[3] = {n1,n2,n3}
- * fftn (3, dims, Re, Im, 1, scaling);
- *
- *-----------------------------------------------------------------------*
- * int fftradix (REAL Re[], REAL Im[], size_t nTotal, size_t nPass,
- * size_t nSpan, int iSign, size_t max_factors,
- * size_t max_perm);
- *
- * RE, IM - see above documentation
- *
- * Although there is no limit on the number of dimensions, fftradix() must
- * be called once for each dimension, but the calls may be in any order.
- *
- * NTOTAL = the total number of complex data values
- * NPASS = the dimension of the current variable
- * NSPAN/NPASS = the spacing of consecutive data values while indexing the
- * current variable
- * ISIGN - see above documentation
- *
- * example:
- * tri-variate transform with Re[n1][n2][n3], Im[n1][n2][n3]
- *
- * fftradix (Re, Im, n1*n2*n3, n1, n1, 1, maxf, maxp);
- * fftradix (Re, Im, n1*n2*n3, n2, n1*n2, 1, maxf, maxp);
- * fftradix (Re, Im, n1*n2*n3, n3, n1*n2*n3, 1, maxf, maxp);
- *
- * single-variate transform,
- * NTOTAL = N = NSPAN = (number of complex data values),
- *
- * fftradix (Re, Im, n, n, n, 1, maxf, maxp);
- *
- * The data can also be stored in a single array with alternating real and
- * imaginary parts, the magnitude of ISIGN is changed to 2 to give correct
- * indexing increment, and data [0] and data [1] used to pass the initial
- * addresses for the sequences of real and imaginary values,
- *
- * example:
- * REAL data [2*NTOTAL];
- * fftradix ( &data[0], &data[1], NTOTAL, nPass, nSpan, 2, maxf, maxp);
- *
- * for temporary allocation:
- *
- * MAX_FACTORS >= the maximum prime factor of NPASS
- * MAX_PERM >= the number of prime factors of NPASS. In addition,
- * if the square-free portion K of NPASS has two or more prime
- * factors, then MAX_PERM >= (K-1)
- *
- * storage in FACTOR for a maximum of 15 prime factors of NPASS. if NPASS
- * has more than one square-free factor, the product of the square-free
- * factors must be <= 210 array storage for maximum prime factor of 23 the
- * following two constants should agree with the array dimensions.
- *
- *-----------------------------------------------------------------------*
- *
- * void fft_free (void);
- *
- * free-up allocated temporary storage after finished all the Fourier
- * transforms.
- *
- *----------------------------------------------------------------------*/
-#ifndef _FFTN_C
-#define _FFTN_C
-#include <stdio.h>
-#include <stdlib.h>
-#include <math.h>
-#include "fftn.h"
-
-/* double precision routine */
-static int
-fftradix (double Re[], double Im[],
- size_t nTotal, size_t nPass, size_t nSpan, int isign,
- int max_factors, int max_perm);
-
-/* float precision routine */
-static int
-fftradixf (float Re[], float Im[],
- size_t nTotal, size_t nPass, size_t nSpan, int isign,
- int max_factors, int max_perm);
-
-/* parameters for memory management */
-
-static size_t SpaceAlloced = 0;
-static size_t MaxPermAlloced = 0;
-
-/* temp space, (void *) since both float and double routines use it */
-static void *Tmp0 = NULL; /* temp space for real part */
-static void *Tmp1 = NULL; /* temp space for imaginary part */
-static void *Tmp2 = NULL; /* temp space for Cosine values */
-static void *Tmp3 = NULL; /* temp space for Sine values */
-static int *Perm = NULL; /* Permutation vector */
-
-#define NFACTOR 11
-static int factor [NFACTOR];
-
-void
-fft_free (void)
-{
- SpaceAlloced = MaxPermAlloced = 0;
- if (Tmp0 != NULL) { free (Tmp0); Tmp0 = NULL; }
- if (Tmp1 != NULL) { free (Tmp1); Tmp1 = NULL; }
- if (Tmp2 != NULL) { free (Tmp2); Tmp2 = NULL; }
- if (Tmp3 != NULL) { free (Tmp3); Tmp3 = NULL; }
- if (Perm != NULL) { free (Perm); Perm = NULL; }
-}
-
-#ifndef M_PI
-# define M_PI 3.14159265358979323846264338327950288
-#endif
-
-#ifndef SIN60
-# define SIN60 0.86602540378443865 /* sin(60 deg) */
-# define COS72 0.30901699437494742 /* cos(72 deg) */
-# define SIN72 0.95105651629515357 /* sin(72 deg) */
-#endif
-
-/* re-include this source file on the second pass through */
-#undef REAL
-#undef FFTN
-#undef FFTNS
-#undef FFTRADIX
-#undef FFTRADIXS
-
-#ifndef FFT_NOFLOAT
-# define REAL float
-# define FFTN fftnf /* trailing 'f' for float */
-# define FFTNS "fftnf" /* name for error message */
-# define FFTRADIX fftradixf /* trailing 'f' for float */
-# define FFTRADIXS "fftradixf" /* name for error message */
-# include "fftn.c" /* include this file again */
-#endif
-
-#undef REAL
-#undef FFTN
-#undef FFTNS
-#undef FFTRADIX
-#undef FFTRADIXS
-
-#ifndef FFT_NODOUBLE
-# define REAL double
-# define FFTN fftn
-# define FFTNS "fftn"
-# define FFTRADIX fftradix
-# define FFTRADIXS "fftradix"
-# include "fftn.c" /* include this file again */
-#endif
-
-#if defined (FFT_NOFLOAT) && defined (FFT_NODOUBLE) && !defined (lint)
-Error: cannot have both -DFFT_NOFLOAT and -DFFT_NODOUBLE
-#endif
-#else /* _FFTN_C */
-
-/*
- *
- */
-int
-FFTN (int ndim, const int dims[],
- REAL Re [],
- REAL Im [],
- int iSign,
- double scaling)
-{
- size_t nSpan, nPass, nTotal;
- int ret, i, max_factors, max_perm;
-
- /*
- * tally the number of elements in the data array
- * and determine the number of dimensions
- */
- nTotal = 1;
- if (ndim && dims [0])
- {
- for (i = 0; i < ndim; i++)
- {
- if (dims [i] <= 0)
- {
- fputs ("Error: " FFTNS "() - dimension error\n", stderr);
- fft_free (); /* free-up memory */
- return -1;
- }
- nTotal *= dims [i];
- }
- }
- else
- {
- ndim = 0;
- for (i = 0; dims [i]; i++)
- {
- if (dims [i] <= 0)
- {
- fputs ("Error: " FFTNS "() - dimension error\n", stderr);
- fft_free (); /* free-up memory */
- return -1;
- }
- nTotal *= dims [i];
- ndim++;
- }
- }
-
- /* determine maximum number of factors and permuations */
-#if 1
- /*
- * follow John Beale's example, just use the largest dimension and don't
- * worry about excess allocation. May be someone else will do it?
- */
- max_factors = max_perm = 1;
- for (i = 0; i < ndim; i++)
- {
- nSpan = dims [i];
- if (nSpan > max_factors) max_factors = nSpan;
- if (nSpan > max_perm) max_perm = nSpan;
- }
-#else
- /* use the constants used in the original Fortran code */
- max_factors = 23;
- max_perm = 209;
-#endif
- /* loop over the dimensions: */
- nPass = 1;
- for (i = 0; i < ndim; i++)
- {
- nSpan = dims [i];
- nPass *= nSpan;
- ret = FFTRADIX (Re, Im, nTotal, nSpan, nPass, iSign,
- max_factors, max_perm);
- /* exit, clean-up already done */
- if (ret)
- return ret;
- }
-
- /* Divide through by the normalizing constant: */
- if (scaling && scaling != 1.0)
- {
- if (iSign < 0) iSign = -iSign;
- if (scaling < 0.0)
- {
- scaling = nTotal;
- if (scaling < -1.0)
- scaling = sqrt (scaling);
- }
- scaling = 1.0 / scaling; /* multiply is often faster */
- for (i = 0; i < nTotal; i += iSign)
- {
- Re [i] *= scaling;
- Im [i] *= scaling;
- }
- }
- return 0;
-}
-
-/*
- * singleton's mixed radix routine
- *
- * could move allocation out to fftn(), but leave it here so that it's
- * possible to make this a standalone function
- */
-static int
-FFTRADIX (REAL Re[],
- REAL Im[],
- size_t nTotal,
- size_t nPass,
- size_t nSpan,
- int iSign,
- int max_factors,
- int max_perm)
-{
- int ii, mfactor, kspan, ispan, inc;
- int j, jc, jf, jj, k, k1, k2, k3, k4, kk, kt, nn, ns, nt;
-
- REAL radf;
- REAL c1, c2, c3, cd, aa, aj, ak, ajm, ajp, akm, akp;
- REAL s1, s2, s3, sd, bb, bj, bk, bjm, bjp, bkm, bkp;
-
- REAL *Rtmp = NULL; /* temp space for real part*/
- REAL *Itmp = NULL; /* temp space for imaginary part */
- REAL *Cos = NULL; /* Cosine values */
- REAL *Sin = NULL; /* Sine values */
-
- REAL s60 = SIN60; /* sin(60 deg) */
- REAL c72 = COS72; /* cos(72 deg) */
- REAL s72 = SIN72; /* sin(72 deg) */
- REAL pi2 = M_PI; /* use PI first, 2 PI later */
-
- /* gcc complains about k3 being uninitialized, but I can't find out where
- * or why ... it looks okay to me.
- *
- * initialize to make gcc happy
- */
- k3 = 0;
-
- /* gcc complains about c2, c3, s2,s3 being uninitialized, but they're
- * only used for the radix 4 case and only AFTER the (s1 == 0.0) pass
- * through the loop at which point they will have been calculated.
- *
- * initialize to make gcc happy
- */
- c2 = c3 = s2 = s3 = 0.0;
-
- /* Parameter adjustments, was fortran so fix zero-offset */
- Re--;
- Im--;
-
- if (nPass < 2)
- return 0;
-
- /* allocate storage */
- if (SpaceAlloced < max_factors * sizeof (REAL))
- {
-#ifdef SUN_BROKEN_REALLOC
- if (!SpaceAlloced) /* first time */
- {
- SpaceAlloced = max_factors * sizeof (REAL);
- Tmp0 = (void *) malloc (SpaceAlloced);
- Tmp1 = (void *) malloc (SpaceAlloced);
- Tmp2 = (void *) malloc (SpaceAlloced);
- Tmp3 = (void *) malloc (SpaceAlloced);
- }
- else
- {
-#endif
- SpaceAlloced = max_factors * sizeof (REAL);
- Tmp0 = (void *) realloc (Tmp0, SpaceAlloced);
- Tmp1 = (void *) realloc (Tmp1, SpaceAlloced);
- Tmp2 = (void *) realloc (Tmp2, SpaceAlloced);
- Tmp3 = (void *) realloc (Tmp3, SpaceAlloced);
-#ifdef SUN_BROKEN_REALLOC
- }
-#endif
- }
- else
- {
- /* allow full use of alloc'd space */
- max_factors = SpaceAlloced / sizeof (REAL);
- }
- if (MaxPermAlloced < max_perm)
- {
-#ifdef SUN_BROKEN_REALLOC
- if (!MaxPermAlloced) /* first time */
- Perm = (int *) malloc (max_perm * sizeof(int));
- else
-#endif
- Perm = (int *) realloc (Perm, max_perm * sizeof(int));
- MaxPermAlloced = max_perm;
- }
- else
- {
- /* allow full use of alloc'd space */
- max_perm = MaxPermAlloced;
- }
- if (Tmp0 == NULL || Tmp1 == NULL || Tmp2 == NULL || Tmp3 == NULL
- || Perm == NULL)
- goto Memory_Error_Label;
-
- /* assign pointers */
- Rtmp = (REAL *) Tmp0;
- Itmp = (REAL *) Tmp1;
- Cos = (REAL *) Tmp2;
- Sin = (REAL *) Tmp3;
-
- /*
- * Function Body
- */
- inc = iSign;
- if (iSign < 0) {
- s72 = -s72;
- s60 = -s60;
- pi2 = -pi2;
- inc = -inc; /* absolute value */
- }
-
- /* adjust for strange increments */
- nt = inc * nTotal;
- ns = inc * nSpan;
- kspan = ns;
-
- nn = nt - inc;
- jc = ns / nPass;
- radf = pi2 * (double) jc;
- pi2 *= 2.0; /* use 2 PI from here on */
-
- ii = 0;
- jf = 0;
- /* determine the factors of n */
- mfactor = 0;
- k = nPass;
- while (k % 16 == 0) {
- mfactor++;
- factor [mfactor - 1] = 4;
- k /= 16;
- }
- j = 3;
- jj = 9;
- do {
- while (k % jj == 0) {
- mfactor++;
- factor [mfactor - 1] = j;
- k /= jj;
- }
- j += 2;
- jj = j * j;
- } while (jj <= k);
- if (k <= 4) {
- kt = mfactor;
- factor [mfactor] = k;
- if (k != 1)
- mfactor++;
- } else {
- if (k - (k / 4 << 2) == 0) {
- mfactor++;
- factor [mfactor - 1] = 2;
- k /= 4;
- }
- kt = mfactor;
- j = 2;
- do {
- if (k % j == 0) {
- mfactor++;
- factor [mfactor - 1] = j;
- k /= j;
- }
- j = ((j + 1) / 2 << 1) + 1;
- } while (j <= k);
- }
- if (kt) {
- j = kt;
- do {
- mfactor++;
- factor [mfactor - 1] = factor [j - 1];
- j--;
- } while (j);
- }
-
- /* test that mfactors is in range */
- if (mfactor > NFACTOR)
- {
- fputs ("Error: " FFTRADIXS "() - exceeded number of factors\n", stderr);
- goto Memory_Error_Label;
- }
-
- /* compute fourier transform */
- for (;;) {
- sd = radf / (double) kspan;
- cd = sin(sd);
- cd = 2.0 * cd * cd;
- sd = sin(sd + sd);
- kk = 1;
- ii++;
-
- switch (factor [ii - 1]) {
- case 2:
- /* transform for factor of 2 (including rotation factor) */
- kspan /= 2;
- k1 = kspan + 2;
- do {
- do {
- k2 = kk + kspan;
- ak = Re [k2];
- bk = Im [k2];
- Re [k2] = Re [kk] - ak;
- Im [k2] = Im [kk] - bk;
- Re [kk] += ak;
- Im [kk] += bk;
- kk = k2 + kspan;
- } while (kk <= nn);
- kk -= nn;
- } while (kk <= jc);
- if (kk > kspan)
- goto Permute_Results_Label; /* exit infinite loop */
- do {
- c1 = 1.0 - cd;
- s1 = sd;
- do {
- do {
- do {
- k2 = kk + kspan;
- ak = Re [kk] - Re [k2];
- bk = Im [kk] - Im [k2];
- Re [kk] += Re [k2];
- Im [kk] += Im [k2];
- Re [k2] = c1 * ak - s1 * bk;
- Im [k2] = s1 * ak + c1 * bk;
- kk = k2 + kspan;
- } while (kk < nt);
- k2 = kk - nt;
- c1 = -c1;
- kk = k1 - k2;
- } while (kk > k2);
- ak = c1 - (cd * c1 + sd * s1);
- s1 = sd * c1 - cd * s1 + s1;
- c1 = 2.0 - (ak * ak + s1 * s1);
- s1 *= c1;
- c1 *= ak;
- kk += jc;
- } while (kk < k2);
- k1 += inc + inc;
- kk = (k1 - kspan) / 2 + jc;
- } while (kk <= jc + jc);
- break;
-
- case 4: /* transform for factor of 4 */
- ispan = kspan;
- kspan /= 4;
-
- do {
- c1 = 1.0;
- s1 = 0.0;
- do {
- do {
- k1 = kk + kspan;
- k2 = k1 + kspan;
- k3 = k2 + kspan;
- akp = Re [kk] + Re [k2];
- akm = Re [kk] - Re [k2];
- ajp = Re [k1] + Re [k3];
- ajm = Re [k1] - Re [k3];
- bkp = Im [kk] + Im [k2];
- bkm = Im [kk] - Im [k2];
- bjp = Im [k1] + Im [k3];
- bjm = Im [k1] - Im [k3];
- Re [kk] = akp + ajp;
- Im [kk] = bkp + bjp;
- ajp = akp - ajp;
- bjp = bkp - bjp;
- if (iSign < 0) {
- akp = akm + bjm;
- bkp = bkm - ajm;
- akm -= bjm;
- bkm += ajm;
- } else {
- akp = akm - bjm;
- bkp = bkm + ajm;
- akm += bjm;
- bkm -= ajm;
- }
- /* avoid useless multiplies */
- if (s1 == 0.0) {
- Re [k1] = akp;
- Re [k2] = ajp;
- Re [k3] = akm;
- Im [k1] = bkp;
- Im [k2] = bjp;
- Im [k3] = bkm;
- } else {
- Re [k1] = akp * c1 - bkp * s1;
- Re [k2] = ajp * c2 - bjp * s2;
- Re [k3] = akm * c3 - bkm * s3;
- Im [k1] = akp * s1 + bkp * c1;
- Im [k2] = ajp * s2 + bjp * c2;
- Im [k3] = akm * s3 + bkm * c3;
- }
- kk = k3 + kspan;
- } while (kk <= nt);
-
- c2 = c1 - (cd * c1 + sd * s1);
- s1 = sd * c1 - cd * s1 + s1;
- c1 = 2.0 - (c2 * c2 + s1 * s1);
- s1 *= c1;
- c1 *= c2;
- /* values of c2, c3, s2, s3 that will get used next time */
- c2 = c1 * c1 - s1 * s1;
- s2 = 2.0 * c1 * s1;
- c3 = c2 * c1 - s2 * s1;
- s3 = c2 * s1 + s2 * c1;
- kk = kk - nt + jc;
- } while (kk <= kspan);
- kk = kk - kspan + inc;
- } while (kk <= jc);
- if (kspan == jc)
- goto Permute_Results_Label; /* exit infinite loop */
- break;
-
- default:
- /* transform for odd factors */
-#ifdef FFT_RADIX4
- fputs ("Error: " FFTRADIXS "(): compiled for radix 2/4 only\n", stderr);
- fft_free (); /* free-up memory */
- return -1;
- break;
-#else /* FFT_RADIX4 */
- k = factor [ii - 1];
- ispan = kspan;
- kspan /= k;
-
- switch (k) {
- case 3: /* transform for factor of 3 (optional code) */
- do {
- do {
- k1 = kk + kspan;
- k2 = k1 + kspan;
- ak = Re [kk];
- bk = Im [kk];
- aj = Re [k1] + Re [k2];
- bj = Im [k1] + Im [k2];
- Re [kk] = ak + aj;
- Im [kk] = bk + bj;
- ak -= 0.5 * aj;
- bk -= 0.5 * bj;
- aj = (Re [k1] - Re [k2]) * s60;
- bj = (Im [k1] - Im [k2]) * s60;
- Re [k1] = ak - bj;
- Re [k2] = ak + bj;
- Im [k1] = bk + aj;
- Im [k2] = bk - aj;
- kk = k2 + kspan;
- } while (kk < nn);
- kk -= nn;
- } while (kk <= kspan);
- break;
-
- case 5: /* transform for factor of 5 (optional code) */
- c2 = c72 * c72 - s72 * s72;
- s2 = 2.0 * c72 * s72;
- do {
- do {
- k1 = kk + kspan;
- k2 = k1 + kspan;
- k3 = k2 + kspan;
- k4 = k3 + kspan;
- akp = Re [k1] + Re [k4];
- akm = Re [k1] - Re [k4];
- bkp = Im [k1] + Im [k4];
- bkm = Im [k1] - Im [k4];
- ajp = Re [k2] + Re [k3];
- ajm = Re [k2] - Re [k3];
- bjp = Im [k2] + Im [k3];
- bjm = Im [k2] - Im [k3];
- aa = Re [kk];
- bb = Im [kk];
- Re [kk] = aa + akp + ajp;
- Im [kk] = bb + bkp + bjp;
- ak = akp * c72 + ajp * c2 + aa;
- bk = bkp * c72 + bjp * c2 + bb;
- aj = akm * s72 + ajm * s2;
- bj = bkm * s72 + bjm * s2;
- Re [k1] = ak - bj;
- Re [k4] = ak + bj;
- Im [k1] = bk + aj;
- Im [k4] = bk - aj;
- ak = akp * c2 + ajp * c72 + aa;
- bk = bkp * c2 + bjp * c72 + bb;
- aj = akm * s2 - ajm * s72;
- bj = bkm * s2 - bjm * s72;
- Re [k2] = ak - bj;
- Re [k3] = ak + bj;
- Im [k2] = bk + aj;
- Im [k3] = bk - aj;
- kk = k4 + kspan;
- } while (kk < nn);
- kk -= nn;
- } while (kk <= kspan);
- break;
-
- default:
- if (k != jf) {
- jf = k;
- s1 = pi2 / (double) k;
- c1 = cos(s1);
- s1 = sin(s1);
- if (jf > max_factors)
- goto Memory_Error_Label;
- Cos [jf - 1] = 1.0;
- Sin [jf - 1] = 0.0;
- j = 1;
- do {
- Cos [j - 1] = Cos [k - 1] * c1 + Sin [k - 1] * s1;
- Sin [j - 1] = Cos [k - 1] * s1 - Sin [k - 1] * c1;
- k--;
- Cos [k - 1] = Cos [j - 1];
- Sin [k - 1] = -Sin [j - 1];
- j++;
- } while (j < k);
- }
- do {
- do {
- k1 = kk;
- k2 = kk + ispan;
- ak = aa = Re [kk];
- bk = bb = Im [kk];
- j = 1;
- k1 += kspan;
- do {
- k2 -= kspan;
- j++;
- Rtmp [j - 1] = Re [k1] + Re [k2];
- ak += Rtmp [j - 1];
- Itmp [j - 1] = Im [k1] + Im [k2];
- bk += Itmp [j - 1];
- j++;
- Rtmp [j - 1] = Re [k1] - Re [k2];
- Itmp [j - 1] = Im [k1] - Im [k2];
- k1 += kspan;
- } while (k1 < k2);
- Re [kk] = ak;
- Im [kk] = bk;
- k1 = kk;
- k2 = kk + ispan;
- j = 1;
- do {
- k1 += kspan;
- k2 -= kspan;
- jj = j;
- ak = aa;
- bk = bb;
- aj = 0.0;
- bj = 0.0;
- k = 1;
- do {
- k++;
- ak += Rtmp [k - 1] * Cos [jj - 1];
- bk += Itmp [k - 1] * Cos [jj - 1];
- k++;
- aj += Rtmp [k - 1] * Sin [jj - 1];
- bj += Itmp [k - 1] * Sin [jj - 1];
- jj += j;
- if (jj > jf) {
- jj -= jf;
- }
- } while (k < jf);
- k = jf - j;
- Re [k1] = ak - bj;
- Im [k1] = bk + aj;
- Re [k2] = ak + bj;
- Im [k2] = bk - aj;
- j++;
- } while (j < k);
- kk += ispan;
- } while (kk <= nn);
- kk -= nn;
- } while (kk <= kspan);
- break;
- }
- /* multiply by rotation factor (except for factors of 2 and 4) */
- if (ii == mfactor)
- goto Permute_Results_Label; /* exit infinite loop */
- kk = jc + 1;
- do {
- c2 = 1.0 - cd;
- s1 = sd;
- do {
- c1 = c2;
- s2 = s1;
- kk += kspan;
- do {
- do {
- ak = Re [kk];
- Re [kk] = c2 * ak - s2 * Im [kk];
- Im [kk] = s2 * ak + c2 * Im [kk];
- kk += ispan;
- } while (kk <= nt);
- ak = s1 * s2;
- s2 = s1 * c2 + c1 * s2;
- c2 = c1 * c2 - ak;
- kk = kk - nt + kspan;
- } while (kk <= ispan);
- c2 = c1 - (cd * c1 + sd * s1);
- s1 += sd * c1 - cd * s1;
- c1 = 2.0 - (c2 * c2 + s1 * s1);
- s1 *= c1;
- c2 *= c1;
- kk = kk - ispan + jc;
- } while (kk <= kspan);
- kk = kk - kspan + jc + inc;
- } while (kk <= jc + jc);
- break;
-#endif /* FFT_RADIX4 */
- }
- }
-
-/* permute the results to normal order---done in two stages */
-/* permutation for square factors of n */
-Permute_Results_Label:
- Perm [0] = ns;
- if (kt) {
- k = kt + kt + 1;
- if (mfactor < k)
- k--;
- j = 1;
- Perm [k] = jc;
- do {
- Perm [j] = Perm [j - 1] / factor [j - 1];
- Perm [k - 1] = Perm [k] * factor [j - 1];
- j++;
- k--;
- } while (j < k);
- k3 = Perm [k];
- kspan = Perm [1];
- kk = jc + 1;
- k2 = kspan + 1;
- j = 1;
- if (nPass != nTotal) {
-/* permutation for multivariate transform */
-Permute_Multi_Label:
- do {
- do {
- k = kk + jc;
- do {
- /* swap Re [kk] <> Re [k2], Im [kk] <> Im [k2] */
- ak = Re [kk]; Re [kk] = Re [k2]; Re [k2] = ak;
- bk = Im [kk]; Im [kk] = Im [k2]; Im [k2] = bk;
- kk += inc;
- k2 += inc;
- } while (kk < k);
- kk += ns - jc;
- k2 += ns - jc;
- } while (kk < nt);
- k2 = k2 - nt + kspan;
- kk = kk - nt + jc;
- } while (k2 < ns);
- do {
- do {
- k2 -= Perm [j - 1];
- j++;
- k2 = Perm [j] + k2;
- } while (k2 > Perm [j - 1]);
- j = 1;
- do {
- if (kk < k2)
- goto Permute_Multi_Label;
- kk += jc;
- k2 += kspan;
- } while (k2 < ns);
- } while (kk < ns);
- } else {
-/* permutation for single-variate transform (optional code) */
-Permute_Single_Label:
- do {
- /* swap Re [kk] <> Re [k2], Im [kk] <> Im [k2] */
- ak = Re [kk]; Re [kk] = Re [k2]; Re [k2] = ak;
- bk = Im [kk]; Im [kk] = Im [k2]; Im [k2] = bk;
- kk += inc;
- k2 += kspan;
- } while (k2 < ns);
- do {
- do {
- k2 -= Perm [j - 1];
- j++;
- k2 = Perm [j] + k2;
- } while (k2 > Perm [j - 1]);
- j = 1;
- do {
- if (kk < k2)
- goto Permute_Single_Label;
- kk += inc;
- k2 += kspan;
- } while (k2 < ns);
- } while (kk < ns);
- }
- jc = k3;
- }
-
- if ((kt << 1) + 1 >= mfactor)
- return 0;
- ispan = Perm [kt];
- /* permutation for square-free factors of n */
- j = mfactor - kt;
- factor [j] = 1;
- do {
- factor [j - 1] *= factor [j];
- j--;
- } while (j != kt);
- kt++;
- nn = factor [kt - 1] - 1;
- if (nn > max_perm)
- goto Memory_Error_Label;
- j = jj = 0;
- for (;;) {
- k = kt + 1;
- k2 = factor [kt - 1];
- kk = factor [k - 1];
- j++;
- if (j > nn)
- break; /* exit infinite loop */
- jj += kk;
- while (jj >= k2) {
- jj -= k2;
- k2 = kk;
- k++;
- kk = factor [k - 1];
- jj += kk;
- }
- Perm [j - 1] = jj;
- }
- /* determine the permutation cycles of length greater than 1 */
- j = 0;
- for (;;) {
- do {
- j++;
- kk = Perm [j - 1];
- } while (kk < 0);
- if (kk != j) {
- do {
- k = kk;
- kk = Perm [k - 1];
- Perm [k - 1] = -kk;
- } while (kk != j);
- k3 = kk;
- } else {
- Perm [j - 1] = -j;
- if (j == nn)
- break; /* exit infinite loop */
- }
- }
- max_factors *= inc;
- /* reorder a and b, following the permutation cycles */
- for (;;) {
- j = k3 + 1;
- nt -= ispan;
- ii = nt - inc + 1;
- if (nt < 0)
- break; /* exit infinite loop */
- do {
- do {
- j--;
- } while (Perm [j - 1] < 0);
- jj = jc;
- do {
- kspan = jj;
- if (jj > max_factors) {
- kspan = max_factors;
- }
- jj -= kspan;
- k = Perm [j - 1];
- kk = jc * k + ii + jj;
- k1 = kk + kspan;
- k2 = 0;
- do {
- k2++;
- Rtmp [k2 - 1] = Re [k1];
- Itmp [k2 - 1] = Im [k1];
- k1 -= inc;
- } while (k1 != kk);
- do {
- k1 = kk + kspan;
- k2 = k1 - jc * (k + Perm [k - 1]);
- k = -Perm [k - 1];
- do {
- Re [k1] = Re [k2];
- Im [k1] = Im [k2];
- k1 -= inc;
- k2 -= inc;
- } while (k1 != kk);
- kk = k2;
- } while (k != j);
- k1 = kk + kspan;
- k2 = 0;
- do {
- k2++;
- Re [k1] = Rtmp [k2 - 1];
- Im [k1] = Itmp [k2 - 1];
- k1 -= inc;
- } while (k1 != kk);
- } while (jj);
- } while (j != 1);
- }
- return 0; /* exit point here */
-
- /* alloc or other problem, do some clean-up */
-Memory_Error_Label:
- fputs ("Error: " FFTRADIXS "() - insufficient memory.\n", stderr);
- fft_free (); /* free-up memory */
- return -1;
-}
-#endif /* _FFTN_C */
-/* ---------------------- end-of-file (c source) ---------------------- */
diff --git a/lib-src/libnyquist/fft/fftn.h b/lib-src/libnyquist/fft/fftn.h
deleted file mode 100644
index c760f80..0000000
--- a/lib-src/libnyquist/fft/fftn.h
+++ /dev/null
@@ -1,32 +0,0 @@
-/*--------------------------------*-C-*---------------------------------*
- * File:
- * fftn.h
- * ---------------------------------------------------------------------*
- * Re[]: real value array
- * Im[]: imaginary value array
- * nTotal: total number of complex values
- * nPass: number of elements involved in this pass of transform
- * nSpan: nspan/nPass = number of bytes to increment pointer
- * in Re[] and Im[]
- * isign: exponent: +1 = forward -1 = reverse
- * scaling: normalizing constant by which the final result is *divided*
- * scaling == -1, normalize by total dimension of the transform
- * scaling < -1, normalize by the square-root of the total dimension
- *
- * ----------------------------------------------------------------------
- * See the comments in the code for correct usage!
- */
-
-#ifndef _FFTN_H
-#define _FFTN_H
-
-extern void fft_free (void);
-
-/* double precision routine */
-extern int fftn (int ndim, const int dims[], double Re[], double Im[],
- int isign, double scaling);
-
-/* float precision routine */
-extern int fftnf (int ndim, const int dims[], float Re[], float Im[],
- int isign, double scaling);
-#endif /* _FFTN_H */
diff --git a/lib-src/libnyquist/mac/macfun.c b/lib-src/libnyquist/mac/macfun.c
deleted file mode 100644
index 3c2e04d..0000000
--- a/lib-src/libnyquist/mac/macfun.c
+++ /dev/null
@@ -1,127 +0,0 @@
-/* macfun.c - macintosh user interface functions for xlisp */
-
-#include <Quickdraw.h>
-#include <Windows.h>
-#include <Memory.h>
-
-#include <string.h>
-
-#include "xlisp.h"
-
-void CtoPstr(char *x)
-{
- int len = strlen(x);
- int i;
-
- for(i=len; i>0; i--)
- x[i] = x[i-1];
- x[0] = len;
-}
-
-void FlushOutput()
-{
-}
-
-unsigned long startupTicks = 0;
-
-unsigned long ticks_per_second (void) { return 60; }
-unsigned long run_tick_count (void) { return ((unsigned long) TickCount ()) - startupTicks; }
-unsigned long real_tick_count (void) { return (unsigned long) TickCount (); }
-
-LVAL xrealtime (void) { return cvfixnum ((FIXTYPE)real_tick_count()); } /* get-internal-real-time */
-LVAL xruntime (void) { return cvfixnum ((FIXTYPE)run_tick_count()); } /* get-internal-run-time */
-LVAL xtime (void) { return cvfixnum ((FIXTYPE)real_tick_count()); } /* time */
-
-/* get an integer parameter */
-LOCAL int getNumber () {
- LVAL num = xlgafixnum ();
- return ((int) getfixnum (num));
-}
-
-/* handle commands that require integer arguments */
-LOCAL LVAL GrafCmd (char funct, int nArgs) {
- return NIL;
-}
-
-LVAL xshowgraphics (void) { return GrafCmd ('G', 0); } /* show graphics win */
-LVAL xhidegraphics (void) { return GrafCmd ('g', 0); } /* hide graphics win */
-LVAL xcleargraphics (void) { return GrafCmd ('x', 0); } /* clear graphics win */
-LVAL xshowpen (void) { return GrafCmd ('s', 0); } /* show the pen */
-LVAL xhidepen (void) { return GrafCmd ('h', 0); } /* hide the pen */
-LVAL xpenmode (void) { return GrafCmd ('d', 1); } /* set the pen mode */
-LVAL xmove (void) { return GrafCmd ('M', 2); } /* move pen in a specified direction */
-LVAL xmoveto (void) { return GrafCmd ('m', 2); } /* move pen to a screen location */
-LVAL xdraw (void) { return GrafCmd ('L', 2); } /* draw a line in a specified direction */
-LVAL xdrawto (void) { return GrafCmd ('l', 2); } /* draw a line to a screen location */
-LVAL xpensize (void) { return GrafCmd ('S', 2); } /* set the pen size */
-LVAL xpennormal (void) { return GrafCmd ('p', 0); } /* set the pen to normal */
-LVAL xcolor (void) { return GrafCmd ('c', 3); } /* set RGB color of pen */
-
-
-LVAL xgetpen (void) { /* get the pen position */
- return NIL;
-}
-
-LVAL xpenpat (void) { /* set the pen pattern */
- return NIL;
-}
-
-/* The functions below are not yet implemented. */
-
-LVAL xtool (void) { /* call the toolbox */
- int trap = getNumber ();
- LVAL val;
-
- return cvfixnum ((FIXTYPE) trap);
-}
-
-LVAL xtool16 (void) { /* call the toolbox with a 16 bit result */
- int trap = getNumber ();
- int val;
-
- return cvfixnum ((FIXTYPE) trap);
-}
-
-LVAL xtool32 (void) { /* call the toolbox with a 32 bit result */
- int trap = getNumber ();
- long val;
-
- return cvfixnum ((FIXTYPE) trap);
-}
-
-LVAL xnewhandle (void) { /* allocate a new handle */
- LVAL num = xlgafixnum ();
- long size = getfixnum (num);
- xllastarg ();
- return cvfixnum ((FIXTYPE) NewHandle (size));
-}
-
-LVAL xnewptr (void) { /* allocate memory */
- LVAL num = xlgafixnum ();
- long size = getfixnum (num);
- xllastarg ();
- return cvfixnum ((FIXTYPE) NewPtr (size));
-}
-
-LVAL xhiword (void) { /* return the high order 16 bits of an integer */
- unsigned int val = (unsigned int) (getNumber () >> 16);
- xllastarg ();
- return cvfixnum ((FIXTYPE) val);
-}
-
-LVAL xloword (void) { /* return the low order 16 bits of an integer */
- unsigned int val = (unsigned int) getNumber ();
- xllastarg ();
- return cvfixnum ((FIXTYPE) val);
-}
-
-LVAL xrdnohang (void) { /* get the next character in the look-ahead buffer */
- int ch = 0;
- xllastarg ();
-/* if ((ch = scrnextc ()) == EOF) return NIL; */
- return cvfixnum ((FIXTYPE) ch);
-}
-
-
-void xoserror (char *msg) { /* do nothing */ }
-
diff --git a/lib-src/libnyquist/mac/macint.c b/lib-src/libnyquist/mac/macint.c
deleted file mode 100644
index 3e1e230..0000000
--- a/lib-src/libnyquist/mac/macint.c
+++ /dev/null
@@ -1,516 +0,0 @@
-/* macint.c - macintosh interface routines for xlisp 2.1e */
-/* Written by Brian Kendig. */
-/* The functions here are only called by macstuff.c. */
-
-#include <Events.h>
-#include <Gestalt.h>
-#include <Memory.h>
-#include <Menus.h>
-#include <Events.h>
-#include <Quickdraw.h>
-#include <StandardFile.h>
-#include <TextEdit.h>
-#include <ToolUtils.h>
-#include <Traps.h>
-#include <Windows.h>
-#include <Controls.h>
-/* #include <ControlDefinitions.h> */
-#include <SIOUX.h>
-#include <AppleEvents.h>
-#include "macint.h"
-/* #define FALSE 0
-#define TRUE 1 */
-#define NIL ((void *) 0)
-
-
-#include "MacCommandWin.h"
-#include "macaboutbox.h"
-#include "MacDrag.h"
-#include "MacHandleEv.h"
-#include "macstuff.h"
-#include "stdio.h"
-#define TEXTREC (*hTERec) /* the command window text record */
-#define TEXTCHAR(i) ((*(TEXTREC->hText))[i])
-
-// Struct for apple event handling
-typedef struct AEventList {
- AEEventClass evclass;
- AEEventID evid;
- void *handler;
- long refcon;
-} AEventList, *AEventListPtr;
-
-//===========================================================================
-// GLOBALS DEFINED HERE USE MacGlobals.h FOR ACCESS
-//===========================================================================
-
-// Menu handles
-MenuHandle appleMenu, fileMenu, editMenu, controlMenu;
-
-/* command and graphics windows */
-WindowPtr gCommandWin, gGraphicsWin;
-WindowRecord commandWinRec, bwGraphicsWinRec;
-CWindowRecord colorGraphicsWinRec;
-Boolean gGraphicsShown, gCommandWinResized = false;
-
-// Screen size stuff
-Rect dragRect, sizeRect;
-int screenWidth, screenHeight; /* screen dimensions */
-int sHorizontal, sVertical, sWidth, sHeight; /* command win, split screen */
-int gHorizontal, gVertical, gWidth, gHeight; /* graphics win, split screen */
-
-// The Text handle
-TEHandle hTERec;
-
-/* output is buffered */
-//Handle hOutputBuffer = NULL;
-int outputBufferLength = 0;
-
-// Allocate space for UPPs
-ControlActionUPP uppScrollProc;
-TEClickLoopUPP uppScrollClickLoop;
-//AEEventHandlerUPP uppAEOpenFiles, uppAEQuit;
-
-// Text related globals
-CharsHandle pastedTextH = NULL; /* a handle to pasted text */
-int pastedLength = 0; /* how many chars there are in the paste buffer */
-int flashTime = 0, cursorBeforeFlash; /* for flashing cursor when parens match */
-char recentChar; /* the last character typed */
-RgnHandle gMouseRgn; // holds current mouse regin
-
-/* miscellaneous stuff */
-Boolean gInBackground; /* are we in background or not */
-int wneImplemented;
-unsigned long startupTicks;
-Boolean hasColorQD;
-
-short howManyFiles = 0, whichFile = 0; /* keep track of files opened from Finder */
-
-
-// Prototypes
-static pascal OSErr AEQuit (AppleEvent *theAppleEvent, AppleEvent *theReply, long Refcon);
-static pascal OSErr AEOpenFiles (AppleEvent *theAppleEvent, AppleEvent *theReply, long Refcon);
-pascal Boolean ScrollClickLoop (void);
-pascal void ScrollProc (ControlHandle control, short thePart);
-Rect SetTERect (void);
-void FlushOutput (void);
-
-void ShowGrafWin (void) {
- /* make the graphics window visible */
- ShowWindow (gGraphicsWin);
- SelectWindow (gGraphicsWin);
- SetMenuItemText (controlMenu, SHOW_GRAPHICS, "\pHide Graphics");
- //AdjustCursor ();
- gGraphicsShown = true;
-}
-
-void HideGrafWin (void) {
- /* hide the graphics window */
- HideWindow (gGraphicsWin);
- SetMenuItemText (controlMenu, SHOW_GRAPHICS, "\pShow Graphics");
- gGraphicsShown = false;
-}
-
-
-static void UpdateGraphWindow ()
-{
- BeginUpdate (gGraphicsWin);
- EndUpdate (gGraphicsWin);
-}
-void InitMac (void) {
-// { /* set up memory properly */
-// int i;
- // fix this later. -EAD
- //if (DefltStack < STACKMIN) SetApplLimit (CurStackBase - STACKMIN);
-// MaxApplZone ();
-// for (i = 0; i < MASTERS; i++) MoreMasters ();
-// }
- AEventListPtr theAppleEvent;
- AEventList theEventList[] = {
- { kCoreEventClass, kAEOpenDocuments, AEOpenFiles, 0 },
- { kCoreEventClass, kAEQuitApplication, AEQuit, 0 },
- { 0, 0, nil, 0 }
- };
- int i;
-
- /* do all the necessary initialization mumbo-jumbo */
- if (StackSpace() < STACKMIN)
- SetApplLimit(GetApplLimit() - STACKMIN);
- MaxApplZone();
- /* printf("New StackSpace %lx GetApplLimit %lx\n",
- StackSpace(), GetApplLimit()); */
- for (i = 0; i < MASTERS; i++) MoreMasters ();
- /* getchar(); */
-
- /* initialize the toolbox */
- InitGraf (&qd.thePort);
- InitFonts ();
- FlushEvents (everyEvent, 0);
- InitWindows ();
- InitMenus ();
- TEInit ();
- InitDialogs (NIL);
- InitCursor ();
-
- // Setup Callbacks
- uppScrollClickLoop = NewTEClickLoopProc(ScrollClickLoop);
- uppScrollProc = NewControlActionProc(ScrollProc);
-
- // Handlers for core apple events
- for (theAppleEvent = theEventList; theAppleEvent->handler; theAppleEvent++)
- if (AEInstallEventHandler(theAppleEvent->evclass, theAppleEvent->evid, NewAEEventHandlerProc((ProcPtr)theAppleEvent->handler),
- theAppleEvent->refcon, 0) != noErr);
-
- // Set up the SIOUX window
- SIOUXSettings.initializeTB = FALSE; //Toolbox is alread inited
- SIOUXSettings.setupmenus = FALSE; //keep the csound menus
- SIOUXSettings.autocloseonquit = TRUE; //close sioux without asking for save
- SIOUXSettings.showstatusline = FALSE; //no status line
- SIOUXSettings.asktosaveonclose = FALSE; //don't ask to save
- SIOUXSettings.toppixel = 40;
- SIOUXSettings.leftpixel = 5;
-
- /* see if we have WaitNextEvent and Color Quickdraw */
- wneImplemented = (NGetTrapAddress (_WaitNextEvent, ToolTrap) != NGetTrapAddress (_Unimplemented, ToolTrap));
- if (NGetTrapAddress ((short) Gestalt, ToolTrap) != NGetTrapAddress (_Unimplemented, ToolTrap)) {
- long returnCode;
- OSErr err = Gestalt (gestaltQuickdrawVersion, &returnCode);
- hasColorQD = ((err == noErr) && (returnCode >= gestalt8BitQD));
- } else hasColorQD = false;
-
- { /* set up menus */
- Handle theMenuBar = GetNewMBar (MBAR_RES);
- SetMenuBar (theMenuBar);
- appleMenu = (MenuHandle)GetMenuHandle (APPLE_MENU_RES);
- fileMenu = (MenuHandle)GetMenuHandle (FILE_MENU_RES);
- editMenu = (MenuHandle)GetMenuHandle (EDIT_MENU_RES);
- controlMenu = (MenuHandle)GetMenuHandle (CONTROL_MENU_RES);
- AppendResMenu (appleMenu, 'DRVR');
- DrawMenuBar ();
- }
-
- /* get the size of the main screen */
- screenWidth = qd.screenBits.bounds.right - qd.screenBits.bounds.left;
- screenHeight = qd.screenBits.bounds.bottom - qd.screenBits.bounds.top;
-
- /* compute the size of the graphics window in split-screen mode */
- gHorizontal = SCREEN_MARGIN;
- gVertical = MBAR_HEIGHT + TITLEBAR_HEIGHT - 1;
- gWidth = screenWidth - (SCREEN_MARGIN * 2);
- gHeight = GRAFWIN_HEIGHT;
-
- /* compute the size of the command window in split-screen mode */
- sHorizontal = SCREEN_MARGIN;
- sVertical = MBAR_HEIGHT + TITLEBAR_HEIGHT - 1 + SCREEN_MARGIN + GRAFWIN_HEIGHT;
- sWidth = screenWidth - (SCREEN_MARGIN * 2);
- sHeight = screenHeight - MBAR_HEIGHT - TITLEBAR_HEIGHT - (SCREEN_MARGIN * 2) - GRAFWIN_HEIGHT - 1;
-
- /* set up size and drag rects */
- dragRect = (*GetGrayRgn ())->rgnBBox;
-// dragRect.left += DRAG_THRESHOLD;
-// dragRect.right -= DRAG_THRESHOLD;
-// dragRect.bottom -= DRAG_THRESHOLD;
- sizeRect.top = MIN_WIN_HEIGHT;
- sizeRect.left = MIN_WIN_WIDTH;
- sizeRect.bottom = qd.screenBits.bounds.bottom - qd.screenBits.bounds.top;
- sizeRect.right = qd.screenBits.bounds.right - qd.screenBits.bounds.left;
-
- /* create the command window */
- gCommandWin = GetNewWindow (CWINRES, &commandWinRec, (WindowPtr) -1L);
- SetPort (gCommandWin);
-
- /* create the graphics window */
- if (hasColorQD) gGraphicsWin = GetNewCWindow (GWINRES, &colorGraphicsWinRec, (WindowPtr) -1L);
- else gGraphicsWin = GetNewWindow (GWINRES, &bwGraphicsWinRec, (WindowPtr) -1L);
-
- startupTicks = TickCount (); /* take note of what time we're starting up */
-
- // Create mouse regin
- gMouseRgn = NewRgn();
-
- // Initalize some command window stuff
- InitalizeCmdWindow();
-
- // Turn on text outlineing
- TEFeatureFlag(teFOutlineHilite, teBitSet, hTERec);
-
- HideGrafWin ();
-
- { /* see if the user launched the app by opening text files from the Finder */
- short doWhat;\
-// call to CountAppFiles was commented out, but that left doWhat uninitialized
-// RBD added this ifdef, I wonder where CountAppFiles came from?
-#ifdef CountAppFilesDefined
- CountAppFiles (&doWhat, &howManyFiles);
- if (doWhat != appOpen) howManyFiles = 0;
-#else
- howManyFiles = 0;
-#endif
- }
-
- UpdateCmdWindow ();
-
-}
-
-
-
-static void DoAppleMenu (int theItem) {
- switch (theItem) {
- case ABOUT_ITEM:
- DoAboutBox ();
- break;
- default: {
- Str255 name;
- GetMenuItemText (appleMenu, theItem, name);
- OpenDeskAcc (name);
- break;
- }
- }
-}
-/* this should really be in a header for MacFileUtils.c */
-
-
-
- extern xlload (char *, int, int);
- extern xlabort(char *);
- extern xlisp_wrapup (void);
- StandardFileReply theFile;
-
- SFTypeList fileTypes;
- Point pt = { 100, 100 };
-
- fileTypes[0] = 'TEXT';
- switch (theItem) {
- case LOAD:
- case LOAD_NOISILY:
- StopPasting ();
- StandardGetFile(NIL, 1, fileTypes, &theFile);
- if (theFile.sfGood) {
- Str255 theFullPath;
-
- OSErr err;
-
- err = OpenWD(theFile.sfFile.vRefNum, theFile.sfFile.parID, 'Nyqu', &wdRefNum);
- err = SetVol(NIL, wdRefNum);
-
- GetFullPath(&theFile.sfFile, theFullPath);
-
- if ((xlload((char *) theFullPath, 1, (theItem == LOAD_NOISILY))) == 0) {
-
-
-
- PrepareForInput ();
- }
- break;
- case QUIT:
- xlisp_wrapup ();
- }
-}
-
-static void DoEditMenu (int theItem) {
- if (SystemEdit (theItem-1) == false)
- switch (theItem) {
- case CUT: case COPY:
- if (ZeroScrap () == noErr) {
- TECopy (hTERec); /* after copying, export the TE scrap */
- if (TEToScrap () != noErr) ZeroScrap ();
- }
- if (theItem == CUT) DeleteRange ();
- break;
- case PASTE: {
- long scrapOffset;
- if (pastedTextH) DisposeHandle (pastedTextH);
- pastedTextH = (CharsHandle) NewHandle (0);
- pastedLength = GetScrap (pastedTextH, 'TEXT', &scrapOffset);
- if (pastedLength < 0) pastedLength = 0; /* error */
- else {
- SetHandleSize (pastedTextH, pastedLength + 1);
- HLock (pastedTextH);
- ((char *)(*pastedTextH))[pastedLength] = '\0';
- HUnlock (pastedTextH);
- }
- } /* and fall through ... */
- case CLEAR:
- DeleteRange ();
- break;
- }
-}
-
-static void DoControlMenu (int theItem) {
- extern xlbreak (char *, char *);
- extern char *s_unbound;
- extern xlcontinue (void);
- extern xlcleanup (void);
- extern xlabort (char *);
- extern xltoplevel (void);
-
- scrflush ();
- HiliteMenu (0);
- switch (theItem) {
- case BREAK: StopPasting (); xlbreak ("user break", s_unbound); PrepareForInput (); break;
- case CONTINUE: StopPasting (); xlcontinue (); PrepareForInput (); break;
- case CLEAN_UP: StopPasting (); xlcleanup (); PrepareForInput (); break;
- case CANCEL_INPUT: StopPasting (); xlabort ("input canceled"); PrepareForInput (); break;
- case TOP_LEVEL: StopPasting (); xltoplevel (); PrepareForInput (); break;
- case SHOW_GRAPHICS:
- if (gGraphicsShown) HideGrafWin ();
- else ShowGrafWin ();
- break;
- case SPLIT_SCREEN:
- MoveWindow (gCommandWin, sHorizontal, sVertical, -1);
- SizeWindow (gCommandWin, sWidth, sHeight, -1);
- InvalRect (&gCommandWin->portRect);
- SetTERect ();
- SetScrollRect ();
- ShowGrafWin ();
- MoveWindow (gGraphicsWin, gHorizontal, gVertical, -1);
- SizeWindow (gGraphicsWin, gWidth, gHeight, -1);
- break;
- }
-}
-
-void DoMenu (long choice) {
- int theMenu = HiWord (choice), theItem = LoWord (choice);
-
- HiliteMenu (theMenu);
- switch (theMenu) {
- case APPLE_MENU_RES: DoAppleMenu (theItem); break;
- case FILE_MENU_RES: DoFileMenu (theItem); break;
- case EDIT_MENU_RES: DoEditMenu (theItem); break;
- case CONTROL_MENU_RES: DoControlMenu (theItem); break;
- }
- HiliteMenu (0);
-}
-
-void AdjustMenus (void) {
- /* turn the stuff in the Edit menu on and off as necessary */
- long temp;
- DisableItem (editMenu, UNDO);
- if (TEXTREC->selStart != TEXTREC->selEnd) {
- EnableItem (editMenu, CUT);
- EnableItem (editMenu, COPY);
- EnableItem (editMenu, CLEAR);
- } else {
- DisableItem (editMenu, CUT);
- DisableItem (editMenu, COPY);
- DisableItem (editMenu, CLEAR);
- }
- if (GetScrap (NIL, 'TEXT', &temp) > 0) EnableItem (editMenu, PASTE);
- else DisableItem (editMenu, PASTE);
-}
-
-RgnHandle rgn = nil;
-
-void DoContent (EventRecord *theEvent) {
- /* handle a click in a window's content region */
- ControlHandle theScrollBar;
- GrafPtr oldPort;
- int scrollValue;
- Point mouse = theEvent->where;
- int thePart;
-// RgnHandle rgn = nil;
-
- GetPort (&oldPort);
- SetPort (gCommandWin);
- GlobalToLocal (&mouse);
-
- // Get Selected text
- rgn = NewRgn();
- TEGetHiliteRgn(rgn, hTERec);
-
- if (thePart = FindControl (mouse, gCommandWin, &theScrollBar)) {
- switch (thePart) {
- case kControlUpButtonPart:
- case kControlDownButtonPart:
- case kControlPageUpPart:
- case kControlPageDownPart:
- scrollValue = TrackControl (theScrollBar, mouse, uppScrollProc);
- break;
- case kControlIndicatorPart:
- scrollValue = GetControlValue (theScrollBar);
- thePart = TrackControl (theScrollBar, mouse, NIL);
- if (thePart) {
- scrollValue -= GetControlValue (theScrollBar);
- if (scrollValue) TEScroll (0, scrollValue * LINEHEIGHT, hTERec);
- }
- break;
- }
- } else if (PtInRgn(mouse, rgn)) {
- if (!DragText(theEvent)) {
- TEClick(mouse, false, hTERec);
- }
- } else if (PtInRect (mouse, &(TEXTREC->viewRect))) {
- TEClick (mouse, (theEvent->modifiers & shiftKey) != 0, hTERec);
- }
- SetPort (oldPort);
- DisposeRgn(rgn);
-}
-
-
-void DoEvent (void) {
- EventRecord theEvent;
-
- if ((flashTime) && (--flashTime == 0)) SetSelection (cursorBeforeFlash, cursorBeforeFlash);
- if (outputBufferLength) FlushOutput ();
- if (FrontWindow () == gCommandWin) TEIdle (hTERec);
- recentChar = '\0';
-
- if (WaitNextEvent (everyEvent, &theEvent, 0, gMouseRgn)) {
-
- AdjustCursor (theEvent.where, gMouseRgn);
-
- switch (theEvent.what) {
- case kHighLevelEvent:
- AEProcessAppleEvent(&theEvent);
- break;
- case mouseDown:
- DoMouseDown (&theEvent);
- break;
- case keyDown:
- case autoKey:
- DoKeyPress (&theEvent);
- break;
- case activateEvt: {
- WindowPtr whichWindow = (WindowPtr)theEvent.message;
- SetPort (whichWindow);
- if (whichWindow == gCommandWin) {
- if ((theEvent.modifiers & activeFlag) == 1) {
- ActivateCmdWindow();
- } else {
- DeactivateCmdWindow();
- }
- }
- break;
- }
- case updateEvt: {
- if ((WindowPtr)theEvent.message == gCommandWin) UpdateCmdWindow ();
- if ((WindowPtr)theEvent.message == gGraphicsWin) UpdateGraphWindow ();
- break;
- }
- case osEvt:
- if (((theEvent.message >> 24) & 0xff) == suspendResumeMessage) {
- if (theEvent.message & resumeFlag) {
- gInBackground = false;
- if (FrontWindow () == gCommandWin) {
- ActivateCmdWindow();
- }
- } else {
- gInBackground = true;
- if (FrontWindow () == gCommandWin) {
- SetPort (gCommandWin);
- DeactivateCmdWindow();
- }
- }
- }
- break;
-
- }
- }
- AdjustCursor (theEvent.where, gMouseRgn);
-}
-
-void MacWrapUp (void) {
- /* take everything down in preparation for quitting */
- CleanupCmdWindow();
- CloseWindow (gGraphicsWin);
-}
diff --git a/lib-src/libnyquist/mac/macint.h b/lib-src/libnyquist/mac/macint.h
deleted file mode 100644
index 683317c..0000000
--- a/lib-src/libnyquist/mac/macint.h
+++ /dev/null
@@ -1,169 +0,0 @@
-#include <Events.h>
-
-#undef INT_MAX
-#undef INT_MIN
-#define INT_MAX +32767
-#define INT_MIN -32767
-
-/* resource id's */
-
-#define CWINRES 400
-
-#define GWINRES 401
-
-#define MBAR_RES 400
-
-#define APPLE_MENU_RES 400
-
-#define FILE_MENU_RES 401
-
-#define EDIT_MENU_RES 402
-
-#define CONTROL_MENU_RES 403
-
-#define STRINGS_RES 400
-
-
-
-/* Apple menu */
-
-#define ABOUT_ITEM 1
-
-#define ABOUT_BOX 400
-
-#define ABOUT_PICT 400
-
-
-
-/* File menu */
-
-#define LOAD 1
-
-#define LOAD_NOISILY 2
-
-#define QUIT 4
-
-
-
-/* Edit menu */
-
-#define UNDO 1
-
-#define CUT 3
-
-#define COPY 4
-
-#define PASTE 5
-
-#define CLEAR 6
-
-
-
-/* Control menu */
-
-#define BREAK 1
-
-#define CONTINUE 2
-
-#define CLEAN_UP 3
-
-#define CANCEL_INPUT 4
-
-#define TOP_LEVEL 5
-
-#define SHOW_GRAPHICS 7
-
-#define SPLIT_SCREEN 8
-
-
-
-/* window sizing/dragging stuff */
-
-#define DRAG_THRESHOLD 8
-
-#define MIN_WIN_HEIGHT 80
-
-#define MIN_WIN_WIDTH 120
-
-
-
-#define MAX_BUF 250 /* max chars in output buffer */
-
-#define SCROLLBACK_THRESHHOLD 30000 /* max chars kept in window */
-
-#define DELETE_BLOCK 10000 /* how many chars to delete when threshhold reached */
-
-
-
-#define LINEHEIGHT 11 /* height in pixels of 9-point Geneva, the font used */
-
-#define STACKMIN 400000 /* amout of memory for application stack */
-
-#define MASTERS 3 /* arbitrary -- how many times to call MoreMasters() */
-
-
-
-/* key codes */
-
-#define RETURN 0x0d
-
-#define ENTER 0x03
-
-#define DELETE 0x08
-
-#define FWDDEL 0x7F
-
-#define CLRKEY 0x1b
-
-#define PAGEUP 0x0b
-
-#define PAGEDN 0x0c
-
-#define HOMEKEY 0x01
-
-#define ENDKEY 0x04
-
-#define HELPKEY 0x05
-
-#define FNKEY 0x10
-
-#define LEFTARROW 0x1c
-
-#define RIGHTARROW 0x1d
-
-#define UPARROW 0x1e
-
-#define DOWNARROW 0x1f
-
-#define DBLQUOTE '\"'
-
-
-
-/* useful definitions */
-
-#define MBAR_HEIGHT 20
-
-#define TITLEBAR_HEIGHT 20
-
-#define SCROLLER_WIDTH 15
-
-#define SCREEN_MARGIN 2
-
-#define TEXT_MARGIN 4
-
-#define GRAFWIN_HEIGHT 232
-
-void AdjustMenus(void);
-
-void DoMenu(long choice);
-
-void HideGrafWin(void);
-
-void DoContent(EventRecord *theEvent);
-
-void InitMac(void);
-
-void MacWrapUp(void);
-
-
-void DoEvent (void);
diff --git a/lib-src/libnyquist/mac/macptrs.h b/lib-src/libnyquist/mac/macptrs.h
deleted file mode 100644
index 4dad03a..0000000
--- a/lib-src/libnyquist/mac/macptrs.h
+++ /dev/null
@@ -1,52 +0,0 @@
-{ "HIDEPEN", S, xhidepen }, /* 300 */
-
-{ "SHOWPEN", S, xshowpen }, /* 301 */
-
-{ "GETPEN", S, xgetpen }, /* 302 */
-
-{ "PENSIZE", S, xpensize }, /* 303 */
-
-{ "PENMODE", S, xpenmode }, /* 304 */
-
-{ "PENPAT", S, xpenpat }, /* 305 */
-
-{ "PENNORMAL", S, xpennormal }, /* 306 */
-
-{ "MOVETO", S, xmoveto }, /* 307 */
-
-{ "MOVE", S, xmove }, /* 308 */
-
-{ "LINETO", S, xdrawto }, /* 309 */
-
-{ "LINE", S, xdraw }, /* 310 */
-
-{ "SHOW-GRAPHICS", S, xshowgraphics }, /* 311 */
-
-{ "HIDE-GRAPHICS", S, xhidegraphics }, /* 312 */
-
-{ "CLEAR-GRAPHICS", S, xcleargraphics }, /* 313 */
-
-{ "TOOLBOX", S, xtool }, /* 314 */
-
-{ "TOOLBOX-16", S, xtool16 }, /* 315 */
-
-{ "TOOLBOX-32", S, xtool32 }, /* 316 */
-
-{ "NEWHANDLE", S, xnewhandle }, /* 317 */
-
-{ "NEWPTR", S, xnewptr }, /* 318 */
-
-{ "HIWORD", S, xhiword }, /* 319 */
-
-{ "LOWORD", S, xloword }, /* 320 */
-
-{ "READ-CHAR-NO-HANG", S, xrdnohang }, /* 321 */
-
-
-
-/* not implemented - take a look at code in directory "sys:mac:old" */
-
-/*{ "COMMAND-POINT-SIZE", S, xptsize }, 322 */
-
-
-
diff --git a/lib-src/libnyquist/mac/macstuff.c b/lib-src/libnyquist/mac/macstuff.c
deleted file mode 100644
index a79ad58..0000000
--- a/lib-src/libnyquist/mac/macstuff.c
+++ /dev/null
@@ -1,55 +0,0 @@
-/* macstuff.c - macintosh interface routines for xlisp */
-/* Written by Brian Kendig. */
-/* This file contains the stuff that the other xlisp files call directly. */
-
-#include "cext.h"
-#include <stdio.h>
-#include <stdarg.h>
-#include <QuickDraw.h> /* for Random */
-#include <Memory.h> /* for DisposePtr */
-#include <SegLoad.h> /* for ExitToShell */
-#include "xlisp.h"
-#include <string.h>
-#include "macint.h"
-#define DELETE 0x08
-
-/* externals */
-extern FILE *tfp; /* transcript file pointer */
-extern int cursorPos;
-extern char *macgets (void);
-
-#define GPRINTF_MESSAGE_LEN 500
-
-/* nyquist_printf -- system independent version of printf */
-/*
- * this function prints to console like printf, but using GUI
- * rather than stdio when appropriate.
- *
- */
-void nyquist_printf(char *format, ...)
-{
- char temp[GPRINTF_MESSAGE_LEN];
- va_list pvar;
- char *p = temp;
- va_start(pvar, format);
- vsnprintf(temp, GPRINTF_MESSAGE_LEN, format, pvar);
- va_end(pvar);
- while (*p) ostputc(*p++);
-}
-
-
-
-/* this should really be in a header for MacFileUtils.c */
-void GetFullPath(FSSpec *theSpec, StringPtr theName);
-
-
-
-
-
-/* this is called when we load a file -- if need_preference_file,
- * we will build a preference file and insert the path of the file
- * we just opened, assuming it will tell us where to find init.lsp
- */
-void setup_preferences(char *filename)
-{
-}
diff --git a/lib-src/libnyquist/mac/macstuff.h b/lib-src/libnyquist/mac/macstuff.h
deleted file mode 100644
index d3a8c15..0000000
--- a/lib-src/libnyquist/mac/macstuff.h
+++ /dev/null
@@ -1,9 +0,0 @@
-/* macstuff.h -- header for mac-specific functions */
-
-void osfinish(void);
-/* put searchpath into p, prefs_found tells if preference file exists */
-
-/*void get_xlisp_path(char *p, long p_max, int *prefs_found);
-
-void setup_preferences(char *filename);
-*/
diff --git a/lib-src/libnyquist/mac/moremac.c b/lib-src/libnyquist/mac/moremac.c
deleted file mode 100644
index e69de29..0000000
diff --git a/lib-src/libnyquist/mac/sndsystem.h b/lib-src/libnyquist/mac/sndsystem.h
deleted file mode 100644
index f34ea83..0000000
--- a/lib-src/libnyquist/mac/sndsystem.h
+++ /dev/null
@@ -1,2 +0,0 @@
-#include "sndmac.h"
-
diff --git a/lib-src/libnyquist/mac/switches.h b/lib-src/libnyquist/mac/switches.h
deleted file mode 100644
index 0cbf226..0000000
--- a/lib-src/libnyquist/mac/switches.h
+++ /dev/null
@@ -1,61 +0,0 @@
-/* switches.h for Macintosh (primarily Mac OS X) */
-
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm major reorganization of conditional compilation in Nyquist
- */
-
-
-#define HAS_STDLIB_H 1
-#undef HAS_SYS_TYPES_H
-#undef HAS_SYS_STAT_H
-#define HAS_STAT_H 1
-#undef HAS_MALLOC_H
-
-#define HAS_GETTIMEOFDAY 1
-
-#undef READLINE
-
-#define XL_BIG_ENDIAN 1
-#undef XL_LITTLE_ENDIAN
-
-#define USE_RAND 1
-#undef USE_RANDOM
-
-/* define this to be printf, or define your own fn of the form
- void nyquist_printf(char *format, ...);
- (for a GUI)
-*/
-void nyquist_printf(char *format, ...);
-
-#define NEED_ULONG 1
-#define NEED_USHORT 1
-#define NEED_BYTE 1
-
-#define NEED_ROUND 1
-
-#undef NEED_DEFINE_MALLOC
-
-/* explicitly choose a platform */
-#undef UNIX
-#undef WINDOWS
-#undef MICROSOFT
-#undef DOS
-#define MACINTOSH 1
-
-#define BUFFERED_SYNCHRONOUS_INPUT 1
-#define SPACE_FOR_PLAY 10000
-#define MAX_CHANNELS 16
-
-/* this will enable code to read midi files, etc. */
-#define CMTSTUFF 1
-
-/* NYQUIST tells some CMT code that we're really in
- * XLISP and NYQUIST
- */
-#define NYQUIST 1
-
-#include "swlogic.h"
-
-#include "Types.h"
-
diff --git a/lib-src/libnyquist/mac/xlextstart.c b/lib-src/libnyquist/mac/xlextstart.c
deleted file mode 100644
index be321fe..0000000
--- a/lib-src/libnyquist/mac/xlextstart.c
+++ /dev/null
@@ -1 +0,0 @@
-/* nothing to do */
diff --git a/lib-src/libnyquist/misc/Makefile.in b/lib-src/libnyquist/misc/Makefile.in
deleted file mode 100644
index 8a84268..0000000
--- a/lib-src/libnyquist/misc/Makefile.in
+++ /dev/null
@@ -1,67 +0,0 @@
-#
-# FILE: Makefile
-# BY: Christopher Lee Fraley
-# and Roger B. Dannenberg.
-# DESC: This file builds various utilities for Nyquist
-#
-
-CC = @CC@ @CFLAGS@
-
-# the unix path gets us switches.h:
-# the cmt path gets us swlogic.h:
-CFLAGS += -I../sys -I../cmt
-
-# Directory info:
-BINPATH = .
-
-# Intgen stuff:
-intgen: cmdline.o intgen.o
- $(CC) cmdline.o intgen.o -o $(BINPATH)/intgen
-
-cmdline.o: cext.h cmdline.h
-intgen.o: cext.h cmdline.h
-
-#sampleprint - dumb but useful
-sampleprint: sampleprint.o
- $(CC) sampleprint.o -o $(BINPATH)/sampleprint
-
-sampleprint.o: sampleprint.c
-
-#sine
-sne: sne.o
- $(CC) sne.o -o $(BINPATH)/sne
-
-sne.o: sne.c
-
-#play
-play: play.o
- $(CC) play.o -o $(BINPATH)/play
-
-play.o: play.c
-
-#plot
-plot: plot.o
- $(CC) plot.o -o $(BINPATH)/plot
-
-plot.o: plot.c
-
-#unpacker
-unpacker_o = unpacker.o convert.o
-
-unpacker: $(unpacker_o)
- $(CC) $(unpacker_o) -o unpacker
-
-#packer
-packer_o = packer.o convert.o
-
-packer: $(packer_o)
- $(CC) $(packer_o) -o packer
-
-clean:
- rm -f *.o
-
-cleaner: clean
- rm -f intgen play sine plot packer unpacker
- rm -f *.BAK
- rm -f *~
-
diff --git a/lib-src/libnyquist/misc/args.h b/lib-src/libnyquist/misc/args.h
deleted file mode 100644
index dc51ef2..0000000
--- a/lib-src/libnyquist/misc/args.h
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
- * Argument processing macros
- * I got tired of rethinking this everytime,
- * and 4xbsd doesn't have getopt()
- *
- * The following is an example of the use of this stuff
- *
-
-#include "args.h"
-#include <stdio.h>
-
-main(argc, argv)
-char **argv;
-{
- char *a = "a", *b = "b", *c = "c";
- int x = 0, y = 0, z = 0;
- ARGLOOP
- STRINGARG(a) a = p; ENDSTRINGARG
- STRINGARG(b) b = p; ENDSTRINGARG
- STRINGARG(c) c = p; ENDSTRINGARG
- FLAGARG(x) x++; ENDFLAGARG
- FLAGARG(y) y++; ENDFLAGARG
- FLAGARG(z) z++; ENDFLAGARG
-
- BADARG
- fprintf(stderr, "unknown option %c\n", *p);
- fprintf(stderr, "Usage: usage\n");
- exit(1);
- ENDBADARG
- ENDARGLOOP
-
- Here, the remaining args are argv[0] to argv[argc - 1]
-
- printf("a=%s b=%s c=%s x=%d y=%d z=%d\nargs:", a, b, c, x, y, z);
- { int i; for(i = 0; i < argc; i++)
- printf(" %s", argv[i]);
- }
- printf("\n");
-}
-
- *
- */
-
-
-#define ARGLOOP \
- while(--argc > 0 && **++argv == '-') { \
- register char *p; \
- for(p = *argv + 1; *p != '\0'; p++) { \
- switch(*p) { \
-
-#define ENDARGLOOP \
- } \
- } \
-nextarg:; \
- } \
-
-#define FLAGARG(c) case c:
-#define ENDFLAGARG break;
-
-#define STRINGARG(c) case c: if(!*++p) p = *++argv, argc--;
-#define ENDSTRINGARG goto nextarg;
-
-#define BADARG default:
-#define ENDBADARG break;
-
diff --git a/lib-src/libnyquist/misc/cext.h b/lib-src/libnyquist/misc/cext.h
deleted file mode 100644
index 1d03def..0000000
--- a/lib-src/libnyquist/misc/cext.h
+++ /dev/null
@@ -1,7 +0,0 @@
-/* cext.h -- extensions to c */
-
-#define true 1
-#define false 0
-#define private static
-#define boolean int
-#define byte unsigned char
diff --git a/lib-src/libnyquist/misc/cmdline.c b/lib-src/libnyquist/misc/cmdline.c
deleted file mode 100644
index 5302353..0000000
--- a/lib-src/libnyquist/misc/cmdline.c
+++ /dev/null
@@ -1,406 +0,0 @@
-/* cmdline.c -- command line parsing routines */
-/*
- * This module is designed to allow various modules to scan (and rescan)
- * the command line for applicable arguments. The goal is to hide as
- * much information about switches and their names as possible so that
- * switches become more consistent across applications and so that the
- * author of an application need not do a lot of work to provide numerous
- * options. Instead, each module scans the command line for its own
- * arguments.
- *
- * Command lines are of the following form:
- * command -s1 -s2 opt2 -s3 arg1 arg2 -s4 opt4 arg3
- * command @filename
- * The @filename form reads commands of the first form from filename
- * Note that there are three kinds of command line parameters:
- * (1) A Switch is a "-" followed by a name, e.g. "-s1"
- * (2) An Option is a Switch followed by a space and name, e.g. "-s2 opt2"
- * (3) An Argument is a name by itself, e.g. "arg1"
- * Note also that a switch followed by an argument looks just like an
- * option, so a list of valid option names is necessary to disambiguate.
- *
- * A main program that uses cmdline.c should do the following:
- * (1) create an array of pointers to strings (char *names[]) that
- * contains every possible option name
- * (2) create another array of pointers to strings that contains
- * every possible switch name
- * (2) call cl_init(switches, nsw, options, nopt, argv, argc)
- * cl_init will report an error (to stderr) if it finds any illegal
- * switch or option names.
- *
- * Afterward, switches, options, and arguments can be accessed by
- * calling cl_switch, cl_option, and cl_arg. If cl_switch or cl_option
- * is called with a switch name that was not mentioned in the call to
- * cl_init, an error will result. This indicates that the application
- * author omitted a valid switch or option name when calling cl_init.
- * This is an error because the full set of names is needed for error
- * checking and to distinguish arguments from options.
- *
- * cl_nswitch and cl_noption are similar to cl_switch and cl_option,
- * except they each take a list of equivalent switch or option names.
- * This makes it simple to allow both verbose (-debug) and terse (-d) names.
- */
-
-/*****************************************************************************
-* Change Log
-* Date | Change
-*-----------+-----------------------------------------------------------------
-* 13-Jun-86 | Created Change Log
-* 6-Aug-86 | Modified for Lattice 3.0 -- use "void" to type some routines
-* 27-Dec-93 | "@file" as first arg reads command line args from file
-*****************************************************************************/
-
-#include "stdlib.h"
-#include "cext.h"
-#include "stdio.h"
-#include "ctype.h"
-#include "cmdline.h"
-#include "string.h"
-
-private char **voptions; /* valid options */
-private int noptions; /* number of options */
-private char **vswitches; /* valid switches */
-private int nswitches; /* number of switches */
-private char **argv; /* command line argument vector */
-private int argc; /* length of argv */
-
-private int cl_rdy = false; /* set to true when initialized */
-
-/*****************************************************************************
-* Routines local to this module
-*****************************************************************************/
-private void check_names();
-private int find_match();
-private int find_string();
-private void ready_check();
-void indirect_command(char *filename, char ***argvp, int *argcp, char *oldarg0);
-
-
-/****************************************************************
-* check_names
-* Inputs:
-* char *names[]: array of alternative switch or option names
-* int nnames: number of alternative switch or option names
-* char *valid[]: array of valid names
-* int nvalid: number of valid names
-* Effect:
-* Checks that all names are in validnames. If not, print
-* an error message.
-*****************************************************************/
-
-private void check_names(names, nnames, valid, nvalid)
- char *names[];
- int nnames;
- char *valid[];
- int nvalid;
-{
- int i; /* loop counters */
- for (i = 0; i < nnames; i++) {
- if (find_string(names[i], valid, nvalid) >= nvalid) {
- fprintf(stderr, "internal error detected by cmdline module:\n");
- fprintf(stderr, "\t'%s' should be in valid lists\n", names[i]);
- }
- }
-}
-
-/****************************************************************
-* cl_arg
-* Inputs:
-* n: the index of the arg needed
-* Results:
-* pointer to the nth arg, or NULL if none exists
-* arg 0 is the command name
-*****************************************************************/
-
-char *cl_arg(n)
- int n;
-{
- int i = 1;
- if (n <= 0) return argv[0];
- while (i < argc) {
- if (*argv[i] == '-') {
- if (find_string(argv[i], voptions, noptions) < noptions)
- i += 2; /* skip name and option */
- else i += 1; /* skip over switch name */
- } else if (n == 1) {
- return argv[i];
- } else { /* skip over argument */
- n--;
- i++;
- }
- }
- return NULL;
-}
-
-/*****************************************************************************
-* cl_init
-* Inputs:
-* char *switches[]: array of switch names
-* int nsw: number of switch names
-* char *options[]: array of option names
-* int nopt: number of option names
-* char *av: array of command line fields (argv)
-* int ac: number of command line fields (argc)
-* Effect:
-* Checks that all command line entries are valid.
-* Saves info for use by other routines.
-* Returns:
-* True if syntax checks OK, otherwise false
-*****************************************************************************/
-
-boolean cl_init(switches, nsw, options, nopt, av, ac)
- char *switches[];
- int nsw;
- char *options[];
- int nopt;
- char *av[];
- int ac;
-{
- int i; /* index into argv */
- boolean result = true;
-
- vswitches = switches; nswitches = nsw;
- voptions = options; noptions = nopt;
- argv = av; argc = ac;
-
- if (ac == 2 && *(av[1]) == '@') {
- /* read new args from file */
- indirect_command(av[1] + 1, &argv, &argc, av[0]);
- }
-
- for (i = 1; i < argc; i++) { /* case fold lower */
- size_t j;
- for (j = 0; j < strlen(argv[i]); j++)
- if (isupper(argv[i][j]))
- argv[i][j] = tolower(argv[i][j]);
- }
-
- /* check command line syntax: */
- i = 1;
- while (i < argc) {
- if (*argv[i] == '-') {
- if (find_string(argv[i], voptions, noptions) < noptions) {
- i += 1; /* skip name and option */
- if (i < argc && *argv[i] == '-') {
- fprintf(stderr, "missing argument after %s\n", argv[i-1]);
- result = false;
- i += 1;
- }
- } else if (find_string(argv[i], vswitches, nswitches) <
- nswitches) {
- i += 1; /* skip over switch name */
- } else {
- fprintf(stderr, "invalid switch: %s\n", argv[i]);
- i += 1;
- result = false;
- }
- } else i++; /* skip over argument */
- }
- cl_rdy = true;
- return result;
-}
-
-/****************************************************************
-* cl_noption
-* Inputs:
-* char *names[]: array of alternative switch names
-* int nnames: number of alternative switch names
-* Result:
-* returns pointer to if one exists, otherwise null
-* Effect:
-* looks for pattern in command line of the form "-n s",
-* where n is a member of names. Returns pointer to s.
-* Implementation:
-* find the option name, then
-* see if the switch is followed by a string that does
-* not start with "-"
-*****************************************************************/
-
-char *cl_noption(names, nnames)
- char *names[];
- int nnames;
-{
- int i; /* index of switch */
-
- ready_check();
- check_names(names, nnames, voptions, noptions);
- i = find_match(names, nnames) + 1; /* point at the option */
- if (i < argc) { /* make sure option exists */
- if (*(argv[i]) != '-') return argv[i];
- }
- return NULL;
-}
-
-/*****************************************************************
-* cl_nswitch
-* Inputs:
-* char *names[]: array of alternative switch names
-* int nnames: number of alternative switch names
-* Effect:
-* Checks that names is valid.
-* Finds a pattern in command line of the form "-n", where
-* n is a member of names.
-* Result:
-* returns pointer to command line switch if one exists,
-* otherwise null
-*****************************************************************/
-
-char *cl_nswitch(names, nnames)
- char *names[];
- int nnames;
-{
- int i; /* index of switch */
-
- ready_check();
- check_names(names, nnames, vswitches, nswitches);
- i = find_match(names, nnames);
- if (i < argc) return argv[i];
- /* else */ return NULL;
-}
-
-/****************************************************************
-* cl_option
-* Inputs:
-* char *name: option name
-* Outputs:
-* returns char *: the option string if found, otherwise null
-****************************************************************/
-
-char *cl_option(name)
- char *name;
-{
- char *names[1]; /* array to hold name */
-
- names[0] = name;
- return cl_noption(names, 1);
-}
-
-/****************************************************************
-* cl_switch
-* Inputs:
-* char *name: switch name
-* Outputs:
-* boolean: true if switch found
-****************************************************************/
-
-boolean cl_switch(name)
- char *name;
-{
- char *names[1]; /* array to hold name */
-
- names[0] = name;
- return cl_nswitch(names, 1) != NULL;
-}
-
-/****************************************************************
-* find_match
-* Inputs:
-* char *names[]: array of alternative switch or option names
-* int nnames: number of alternative switch or option names
-* Effect:
-* Looks for command line switch that matches one of names.
-* Returns:
-* Index of switch if found, argc if not found.
-*****************************************************************/
-
-private int find_match(names, nnames)
- char *names[];
- int nnames;
-{
- int j; /* loop counter */
- for (j = 0; j < argc; j++) {
- if (find_string(argv[j], names, nnames) < nnames) return j;
- }
- return argc;
-}
-
-/****************************************************************
-* find_string
-* Inputs:
-* char *s: string to find
-* char *names[]: array of strings
-* int nnames: number of strings
-* Effect:
-* Looks for s in names
-* Returns:
-* Index of s in names if found, nnames if not found
-*****************************************************************/
-
-private int find_string(s, names, nnames)
- char *s;
- char *names[];
- int nnames;
-{
- int i; /* loop counter */
- for (i = 0; i < nnames; i++) {
- if (strcmp(s, names[i]) == 0) {
- return i;
- }
- }
- return nnames;
-}
-
-boolean is_whitespace(int c)
-{
- return c == ' ' || c == '\t' || c == '\n' || c == '\r';
-}
-
-boolean get_arg(file, arg)
- FILE *file;
- char *arg;
-{
- int c;
- while ((c = getc(file)) != EOF && is_whitespace(c)) ;
- if (c == EOF) return false;
- ungetc(c, file);
- while ((c = getc(file)) != EOF && !is_whitespace(c)) {
- *arg++ = c;
- }
- *arg = 0;
- return true;
-}
-
-
-void indirect_command(filename, argvp, argcp, oldarg0)
- char *filename;
- char ***argvp;
- int *argcp;
- char *oldarg0;
-{
- FILE *argfile = fopen(filename, "r");
- if (!argfile) {
- *argvp = (char **) malloc(sizeof(char *));
- (*argvp)[0] = oldarg0;
- *argcp = 1;
- } else {
- int i = 1;
- char arg[100];
- while (get_arg(argfile, arg)) i++;
- fclose(argfile);
- argfile = fopen(filename, "r");
- *argvp = (char **) malloc(sizeof(char *) * i);
- (*argvp)[0] = oldarg0;
- *argcp = i;
- i = 1;
- while (get_arg(argfile, arg)) {
- (*argvp)[i] = (char *) malloc(strlen(arg) + 1);
- strcpy((*argvp)[i], arg);
- i++;
- }
- }
-}
-
-
-/****************************************************************
-* ready_check
-* Effect:
-* Halt program if cl_rdy is not true.
-*****************************************************************/
-private void ready_check()
-{
- if (!cl_rdy) {
- fprintf(stderr,
- "Internal error: cl_init was not called, see cmdline.c\n");
- exit(1);
- }
-}
diff --git a/lib-src/libnyquist/misc/cmdline.h b/lib-src/libnyquist/misc/cmdline.h
deleted file mode 100644
index fe72b28..0000000
--- a/lib-src/libnyquist/misc/cmdline.h
+++ /dev/null
@@ -1,6 +0,0 @@
-boolean cl_init();
-char *cl_option();
-char *cl_noption();
-boolean cl_switch();
-char *cl_nswitch();
-char *cl_arg();
diff --git a/lib-src/libnyquist/misc/convert.c b/lib-src/libnyquist/misc/convert.c
deleted file mode 100644
index a242acd..0000000
--- a/lib-src/libnyquist/misc/convert.c
+++ /dev/null
@@ -1,59 +0,0 @@
-/* convert.c -- convert between file name notations */
-
-
-#include "switches.h"
-#include "stdio.h"
-#include "string.h"
-#include "convert.h"
-
-char dir_separator =
-#ifdef MACINTOSH
-':';
-#endif
-#ifdef DOS
-'\\';
-#endif
-#ifdef UNIX
-'/';
-#endif
-#ifdef AMIGA
-'/';
-#endif
-/* Note: syntax error if not one and only one is defined (this is a feature) */
-
-
-int pauseflag;
-
-
-/* convert -- convert filename to local naming conventions */
-/**/
-void convert(char *filename)
-{
- int i;
- /* first test for problem characters */
- for (i = strlen(filename); i >= 0; i--) {
- if (filename[i] == ':' || filename[i] == '\\') {
- fprintf(stderr, "WARNING: %s has one of \":\\\" and may not port.\n",
- filename);
- fprintf(stderr, " '/' should be used as directory separator.\n");
- if (PAUSE) getchar();
- }
- }
-#ifdef MACINTOSH
- /* prepend a ":" */
- for (i = strlen(filename); i >= 0; i--) {
- filename[i + 1] = filename[i];
- }
- filename[0] = ':';
-#endif
-#ifndef UNIX
-#ifndef AMIGA
- /* replace '/' with local separator */
- for (i = strlen(filename); i >= 0; i--) {
- if (filename[i] == '/') filename[i] = dir_separator;
- }
-#endif
-#endif
-}
-
-
diff --git a/lib-src/libnyquist/misc/convert.h b/lib-src/libnyquist/misc/convert.h
deleted file mode 100644
index 3c74cdc..0000000
--- a/lib-src/libnyquist/misc/convert.h
+++ /dev/null
@@ -1,7 +0,0 @@
-/* convert.h -- convert from packer internal filenames to local OS */
-
-void convert(char *filename);
-
-extern int pauseflag;
-#define PAUSE pauseflag
-
diff --git a/lib-src/libnyquist/misc/filelist.c b/lib-src/libnyquist/misc/filelist.c
deleted file mode 100644
index 677fbe4..0000000
--- a/lib-src/libnyquist/misc/filelist.c
+++ /dev/null
@@ -1,222 +0,0 @@
-/* filelist.c -- program to convert a DOS DIR listing into an input
- * file for the packer program
- *
- * To use the program, first run DIR *.* /s > ..\xxx
- * Then run filelist.exe ..\xxx files
- * to create "files"
- * Then you can run packer.exe files myproject.pac
- * to create the pac file.
- */
-
-/* usage: filelist <dir filename> <packer filename> */
-
-#include "stdio.h"
-#include "stdlib.h"
-#include "string.h"
-#include "cext.h"
-#include "cmdline.h"
-
-#define EOS '\0'
-
-FILE *inf;
-FILE *out;
-
-#ifdef MAYBE_THIS_IS_FOR_WIN95_DIRECTORY_LISTINGS
-/* findfilename -- look for pattern "*-*-*:* " in string */
-/**/
-int findfilename(char *line, char *rslt)
-{
- char *ptr;
- if (ptr = strchr(line, '-')) {
- if (ptr = strchr(ptr, '-')) {
- if (ptr = strchr(ptr, ':')) {
- if (ptr = strchr(ptr, ' ')) {
- strcpy(rslt, ptr + 1);
- if (strcmp(rslt, ".") == 0 ||
- strcmp(rslt, "..") == 0 ||
- strstr(line, "<DIR>")) return 0;
- return 1;
- }
- }
- }
- }
- return 0;
-}
-#endif
-
-/* findfilename -- look for pattern "*<slash>*<slash>*:* " in string */
-/*
- * NOTE: the <slash> is "/", part of the file date; ":" is in the file time
- * lines without these characters are not lines that contain filenames
- */
-int findfilename(char *line, char *rslt)
-{
- char *ptr;
- if (ptr = strchr(line, '/')) {
- if (ptr = strchr(ptr + 1, '/')) {
- if (ptr = strchr(ptr + 1, ':')) {
- if (ptr = strrchr(line, ' ')) {
- // now ptr points to space before filename
- strcpy(rslt, ptr + 1);
- // make sure this is not directory
- if (strstr(line, "<DIR>")) return 0;
- return 1;
- }
- }
- }
- }
- return 0;
-}
-
-
-int directory_filter(char *directory)
-{
- int skip = false;;
- if (strstr(directory, "WinDebug") != NULL) skip = true;
- if (strstr(directory, "trash") != NULL) skip = true;
- return skip;
-}
-
-/* fixup -- convert \ to / */
-/**/
-void fixup(char *s)
-{
- while (*s) {
- if (*s == '\\') *s = '/';
- s++;
- }
-}
-
-
-/* giveup -- quit the program */
-/**/
-void giveup()
-{
- printf("Type return.");
- exit(1);
-}
-
-
-/*
-/* main -- */
-/**/
-int main(int argc, char **argv)
-{
-#define stringmax 128
- char in_file[stringmax];
- char out_file[stringmax];
- char inline[stringmax];
- char basedir[stringmax];
- char filename[stringmax];
- char directory[stringmax];
- char wholename[stringmax];
- char *s;
- int skip_directory = false;
-
- basedir[0] = 0; /* empty string */
-
- cl_init(NULL, 0, NULL, 0, argv, argc);
- if ((s = cl_arg(1)) != NULL) {
- strcpy(in_file, s);
- inf = fopen(in_file, "r");
- if (inf == NULL) {
- fprintf(stdout, "Error: couldn't open %s\n", in_file);
- exit(1);
- }
- }
- if ((s = cl_arg(2)) != NULL) {
- strcpy(out_file, s);
- out = fopen(out_file, "w");
- if (out == NULL) {
- fprintf(stdout, "Error: couldn't open %s\n", out_file);
- exit(1);
- }
- } else {
- fprintf(stdout, "Error: no output file specified\n");
- exit(1);
- }
-
- printf("writing %s ...\n", out_file);
-
- /* read a line at a time.
- * if the line has "Directory of", then
- * if you don't have base directory, grab it
- * otherwise search for base directory and grab remainder
- * if the line matches "*-*-*:* " then
- * grab remainder as filename
- * prepend directory and type ("a") and output
- */
- while (fgets(inline, stringmax, inf)) {
- inline[strlen(inline) - 1] = EOS; /* remove newline at end */
- if (inline[0] == EOS) continue; /* skip blank lines */
- /* search for Directory */
- s = strstr(inline, "Directory of ");
- if (s) {
- s += strlen("Directory of ");
- if (!basedir[0]) {
- strcpy(basedir, s);
- strcat(basedir, "\\"); /* append a slash to complete directory name */
- strcpy(directory, "");
- } else {
- s = strstr(s, basedir);
- if (!s) {
- printf("Expected %s at beginning of directory.\n");
- printf("Input line: %s\n");
- giveup();
- } else {
- strcpy(directory, s + strlen(basedir));
- fixup(directory);
- strcat(directory, "/");
- }
- skip_directory = directory_filter(directory);
- }
- } else if (!skip_directory && findfilename(inline, filename)) {
- char type_of_file = 'a';
- sprintf(wholename, "%s%s", directory, filename);
- /* strlwr(wholename); */
- s = strchr(wholename, '.');
- if (s) s++;
- else s = "";
- if (strcmp(s, "nh") == 0 ||
- strcmp(s, "rsrc") == 0 ||
- strcmp(s, "dsp") == 0 ||
- strcmp(s, "dsw") == 0 ||
- strcmp(s, "cod") == 0 ||
- strcmp(s, "tab") == 0 ||
- strcmp(s, "pcm") == 0 ||
- strcmp(s, "mp3") == 0 ||
- strcmp(s, "mid") == 0 ||
- strcmp(s, "aiff") == 0 ||
- false)
- type_of_file = 'b';
- if (strcmp(s, "pac") == 0 ||
- strcmp(s, "ncb") == 0 ||
- strcmp(s, "opt") == 0 ||
- strcmp(s, "plg") == 0 ||
- strcmp(s, "tar") == 0 ||
- strcmp(s, "obj") == 0 ||
- strcmp(s, "vcp") == 0 ||
- strcmp(s, "exe") == 0 ||
- strcmp(s, "vcp") == 0 ||
- strcmp(s, "pdb") == 0 ||
- strcmp(s, "sbr") == 0 ||
- strcmp(s, "ilk") == 0 ||
- strcmp(s, "bsc") == 0 ||
- /* this last one says "only .lsp files in runtime directory
- (strcmp(directory, "runtime/") == 0 && strcmp(s, "lsp") != 0) || */
- strstr(directory, "CVS/") ||
- false
- ) {
- /* do nothing */
- } else {
- fprintf(out, "%c %s\n", type_of_file, wholename);
- }
- }
- }
-
- fclose(inf);
- fclose(out);
- return 0;
-}
-
-
diff --git a/lib-src/libnyquist/misc/filelist.dsp b/lib-src/libnyquist/misc/filelist.dsp
deleted file mode 100644
index 4cf7a50..0000000
--- a/lib-src/libnyquist/misc/filelist.dsp
+++ /dev/null
@@ -1,104 +0,0 @@
-# Microsoft Developer Studio Project File - Name="filelist" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Console Application" 0x0103
-
-CFG=filelist - Win32 Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE
-!MESSAGE NMAKE /f "filelist.mak".
-!MESSAGE
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE
-!MESSAGE NMAKE /f "filelist.mak" CFG="filelist - Win32 Debug"
-!MESSAGE
-!MESSAGE Possible choices for configuration are:
-!MESSAGE
-!MESSAGE "filelist - Win32 Release" (based on "Win32 (x86) Console Application")
-!MESSAGE "filelist - Win32 Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-RSC=rc.exe
-
-!IF "$(CFG)" == "filelist - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "filelist_Release"
-# PROP Intermediate_Dir "filelist_Release"
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-
-!ELSEIF "$(CFG)" == "filelist - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug"
-# PROP BASE Intermediate_Dir "Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "filelist_Debug"
-# PROP Intermediate_Dir "filelist_Debug"
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
-# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "../cmt" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-
-!ENDIF
-
-# Begin Target
-
-# Name "filelist - Win32 Release"
-# Name "filelist - Win32 Debug"
-# Begin Group "Source Files"
-
-# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
-# Begin Source File
-
-SOURCE=.\cmdline.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\filelist.c
-# End Source File
-# End Group
-# Begin Group "Header Files"
-
-# PROP Default_Filter "h;hpp;hxx;hm;inl"
-# End Group
-# Begin Group "Resource Files"
-
-# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
-# End Group
-# End Target
-# End Project
diff --git a/lib-src/libnyquist/misc/intgen.c b/lib-src/libnyquist/misc/intgen.c
deleted file mode 100644
index fb9f678..0000000
--- a/lib-src/libnyquist/misc/intgen.c
+++ /dev/null
@@ -1,909 +0,0 @@
-/* intgen.c -- an interface generator for xlisp */
-
-/* (c) Copyright Carnegie Mellon University 1991
- * For a statement of limited permission to use, see Permission.doc
- *
- * HISTORY
- *
- * 5-Jul-95 Roger Dannenberg
- * strip directory prefixes from files before writing include statements
- * 24-Oct-88 Roger Dannenberg at CMU
- * Changed so that if C routine returns void and has result parameters,
- * then result parameters are returned by the lisp subr as well as
- * assigned to *RSLT*.
- *
- * 13-Apr-88 Roger Dannenberg at CMU
- * Modified for xlisp version 2.0
- *
- * 22-Dec-87 Roger Dannenberg at NeXT
- * Added FILE type.
- *
- * 21-May-87 Dale Amon at CMU CSD
- * Included use of NODE *s_true under SCORE_EDITOR conditional. Standard
- * xlisp code use NODE *true instead.
- *
- * 13-May-87 Dale Amon at CMU CSD
- * Added conditional compilation switch SCORE_EDITOR so that this
- * program will work with both standard XLISP sources and with Roger's
- * (ahem) modified version. Also put in error checking for case where
- * user does not specifiy an output file so program will exit instead
- * of coredump.
- */
-
-
-/* Summary and Design: (NOTE THAT AN INTGEN MANUAL IS AVAILABLE)
- * The first command line argument gives the name of
- * the .c file to generate. All following arguments are
- * .h files to read and use as interface specifications.
- *
- * The main program opens the output file, calls
- * write_prelude, and then process_file for each input
- * file. Then call write_postlude and close the file.
- *
- * process_file opens an input file and reads each line
- * into current_line.
- * if the first characters of the file are "ih", then
- * the rest of the file is processed as normal, except the
- * .h extension of the file is replaced by .ih before the
- * filename is written into an include statement in the
- * output file. This is done to handle ".ih" files generated
- * by the Andrew Toolkit Class processor.
- * In any case, the first line of EVERY .h file is discarded.
- * If #define is found, save the following identifier as
- * macro_name.
- * If "LISP:" is found, then see if it is preceded by one
- * or two identifiers and an open paren.
- * If yes, call routine_call,
- * else call macro_call.
- *
- * routine_call gets the first one or two identifiers off the
- * line into type_name and routine_name. If there is just one id,
- * assign it to routine_name and make type_name = "void".
- * If the routine_name starts with *, remove the * from
- * routine_name and append "*" to type_name.
- * Call write_interface with type_name, routine_name, and location
- * of parameter type description after "LISP:".
- *
- * macro_call gets a type_name from the input line after
- * "LISP:".
- * Then call write_interface with type_name, macro_name, and
- * location of parameter type description.
- *
- * lisp function names are saved in a table, and an
- * initialization routine is written to install the new
- * SUBRs into the xlisp symbol table, as well as to lookup
- * RSLT_sym, the atom on which results are placed
- *
- *
- */
-
-/* Turn on special handling for Roger's Score Editor if the following #define
- * is uncommented:
- */
-/* #define SCORE_EDITOR */
-
-/* Turn on special handling for Chris's Sound Editor if the following #define
- * is uncommented:
- */
-/* #define SOUND_EDITOR */
-
-/* Turn on special handling for Nyquist if the following #define
- * is uncommented:
- */
-#define NYQUIST
-
-/* atom 't is named s_true if this is defined, o.w. named true: */
-#define S_TRUE 1
-
-/* Turn on special handling for CMU MIDI Toolkit seq_type:
- */
-#define SEQ_TYPE
-
-#define errfile stdout
-
-#define ident_max 100
-#define line_max 200
-#define subr_max 500
-
-/* prefix for include files not to be included in interface module */
-#define no_include_prefix '~'
-
-#define false 0
-#define true 1
-
-#include "switches.h"
-#include "stdlib.h"
-#include "cext.h"
-#include <string.h>
-#ifndef boolean
-typedef int boolean;
-#endif
-#include "stdio.h"
-#include "ctype.h"
-#include "cmdline.h"
-#ifdef MACINTOSH
-#include "console.h"
-#endif
-
-#ifdef MACINTOSH
-#define FILESEP ':'
-#else
-#ifdef WINDOWS
-#define FILESEP '\\'
-#else
-#define FILESEP '/'
-#endif
-#endif
-
-static char *sindex();
-
-#define whitep(c) ((c) == ' ' || (c) == '\t')
-#define symbolp(c) (isalpha(c) || (c) == '*' || (c) == '_' || (c) == '-' ||\
- (c) == ':' || isdigit(c) || (c) == '^' || (c) == '*')
-
-/* c and Lisp parameters are encoded in the same table.
- * Field type_id is the string name of the type.
- * For c types (return types of C routines), code is 'C',
- * convert gives the routine for making a lisp node from
- * the c datum.
- * listtype_or_special is "v" for types that should be
- * returned as LISP NIL (e.g. "void"), "s" for types
- * that when NULL should be returned as NIL, "r"
- * for normal types, and "" to raise an error.
- * ctype is not used and should be NULL.
- * For Lisp types (from parameter specs), code is 'L'.
- * convert gives the routine that extracts a C value
- * from a lisp node whose type is given by the field
- * getarg_or_special.
- * c_type is the type of the local C variable which is
- * passed as a parameter to the C routine.
- * initializer is the initial value for result only parameters
- *
- * End of table is marked by a NULL type_id.
- *
- * Location 0 is reserved to indicate errors.
- * Location 1 MUST BE type ANY
- *
- */
-
-#define any_index 1
-struct {
- char *type_id;
- char code;
- char *convert;
- char *getarg_or_special;
- char *ctype;
- char *makenode;
- char *initializer;
-} type_table[] = {
- {" ", ' ', NULL, NULL, NULL, NULL, NULL},
- {"ANY", 'L', "", "", "LVAL", "", "NIL"},
- {"ATOM", 'L', "", "xlgasymbol", "LVAL", "", "NIL"},
- {"FILE", 'L', "getfile", "xlgastream", "FILE *", "cvfile", "NULL"},
- {"FIXNUM", 'L', "getfixnum", "xlgafixnum", "long", "cvfixnum", "0"},
- {"FIXNUM", 'L', "getfixnum", "xlgafixnum", "int", "cvfixnum", "0"},
- {"FLOAT", 'L', "getflonum", "xlgaflonum", "float", "cvflonum", "0.0"},
- {"FLONUM", 'L', "getflonum", "xlgaflonum", "double", "cvflonum", "0.0"},
- {"ANYNUM", 'L', "testarg2", "xlgaanynum", "double", "cvflonum", "0.0"},
- {"STRING", 'L', "getstring", "xlgastring", "unsigned char *", "cvstring", "NULL"},
- {"BOOLEAN", 'L', "getboolean", "xlgetarg", "int", "cvboolean", "0"},
- {"atom_type", 'C', "", "r", NULL, NULL, NULL},
- {"LVAL", 'C', "", "r", NULL, NULL, "NIL"},
-
-#ifdef SOUND_EDITOR
- /* Extensions for Sound Type: */
- {"SOUND", 'L', "getsound", "xlgasound", "SoundPtr", "cvsound", "NULL"},
- {"SoundPtr", 'C', "cvsound", "r", NULL, NULL, NULL},
-#endif
-
-#ifdef NYQUIST
- {"SOUND", 'L', "getsound", "xlgasound", "sound_type", "cvsound", "NULL"},
- {"sound_type", 'C', "cvsound", "r", NULL, NULL, NULL},
-#endif
-#ifdef SEQ_TYPE
- {"SEQ", 'L', "getseq", "xlgaseq", "seq_type", "cvseq", "NULL"},
- {"seq_type", 'C', "cvseq", "r", NULL, NULL, NULL},
-/* look out! event_type is treated as void to eliminate
- * warning messages ... */
- {"event_type", 'C', "", "v", NULL, NULL, NULL},
-#endif
-#ifdef SCORE_EDITOR
- {"VALUE", 'L', "getval", "xlgaval", "value_type", "cvval", "NULL"},
- {"value_type", 'C', "cvval", "r", NULL, NULL, NULL},
- {"EVENT", 'L', "getevent", "xlgaevent", "event_type", "cvevent", "NULL"},
- {"event_type", 'C', "cvevent", "r", NULL, NULL, NULL},
- {"score_type", 'C', "cvevent", "r", NULL, NULL, NULL},
-#endif
-#ifdef DMA_EXTENSIONS
- /* begin DMA entries */
- {"DEXT", 'L', "getdext", "xlgadext", "ext_type", "cvdext", "NULL"},
- {"DEXT", 'C', "cvdext", "r", NULL, NULL, NULL},
- {"SEXT", 'L', "getsext", "xlgasext", "ext_type", "cvsext", "NULL"},
- {"SEXT", 'C', "cvsext", "r", NULL, NULL, NULL},
- /* end DMA entries */
-#endif
- {"int", 'C', "cvfixnum", "r", NULL, NULL, NULL},
- {"long", 'C', "cvfixnum", "r", NULL, NULL, NULL},
- {"boolean", 'C', "cvboolean", "r", NULL, NULL, NULL},
- {"float", 'C', "cvflonum", "r", NULL, NULL, NULL},
- {"double", 'C', "cvflonum", "r", NULL, NULL, NULL},
- {"string", 'C', "cvstring", "s", NULL, NULL, NULL},
- {"char*", 'C', "cvstring", "s", NULL, NULL, NULL},
- {"char", 'C', "cvfixnum", "r", NULL, NULL, NULL},
- {"string_type", 'C', "cvstring", "s", NULL, NULL, NULL},
- {"FILE*", 'C', "cvfile", "s", NULL, NULL, NULL},
- {"void", 'C', "", "v", NULL, NULL, NULL},
-/*eot*/ {NULL, ' ', NULL, NULL, NULL, NULL, NULL}};
-
-/* subr names get saved here: */
-char *subr_table[subr_max];
-int subr_table_x;
-
-#define get_c_special(i) type_table[(i)].getarg_or_special[0]
-#define get_c_conversion(i) type_table[(i)].convert
-#define get_lisp_extract(i) type_table[(i)].convert
-#define get_lisp_getarg(i) type_table[(i)].getarg_or_special
-#define get_lisp_ctype(i) type_table[(i)].ctype
-#define get_lisp_makenode(i) type_table[(i)].makenode
-#define get_lisp_initializer(i) type_table[(i)].initializer
-
-static void lisp_code();
-static int lookup();
-static void process_file();
-static void routine_call();
-static void write_interface();
-static void write_postlude();
-static void write_prelude();
-static void write_ptrfile();
-
-char source_file[ident_max]; /* source file */
-char current_line[4 * line_max]; /* current line in source file */
-char out_file[ident_max]; /* output file name */
-char ptr_file[ident_max]; /* ptr.h file name */
-char def_file[ident_max]; /* def.h file name */
-
-FILE *lispout = NULL; /* output for lisp source code (if any) */
-
-#define EOS '\000'
-
-/* getarg -- get an identifier from a string */
-/**/
-int getarg(start, result, pos)
- char *start; /* where to start scanning */
- char *result; /* where to put the identifier */
- char **pos; /* ptr to char after identifier in source */
-{
- *result = EOS;
- while (whitep(*start) && *start != EOS) start++;
- if (*start == EOS) return false;
- if (!symbolp(*start)) return false;
- while (symbolp(*start) && *start != EOS) {
- *result = *start;
- result++;
- start++;
- }
- *result = EOS;
- *pos = start;
- return true;
-}
-
-
-/* error() -- print source file and line */
-/**/
-void error()
-{
- fprintf(errfile, "\n%s: |%s|\n", source_file, current_line);
-}
-
-
-/* lisp_code -- write lisp code to file */
-/*
- * read from inp if necessary until close comment found
- */
-static void lisp_code(inp, s)
- FILE *inp;
- char *s;
-{
- char lisp[line_max];
- char *endcomment;
- char *inputline; /* for end of file detection */
-
- if (lispout == NULL) {
- char lisp_file_name[ident_max];
- char *extension;
- strcpy(lisp_file_name, out_file);
- extension = sindex(lisp_file_name, ".c");
- strcpy(extension, ".lsp"); /* overwrite .c with .lsp */
- lispout = fopen(lisp_file_name, "w");
- if (lispout == NULL) {
- fprintf(stdout, "Error: couldn't open %s\n", lisp_file_name);
- exit(1);
- }
- printf("writing %s ...\n", lisp_file_name);
- }
-
- strcpy(lisp, s); /* don't modify s */
- inputline = lisp;
- while (inputline != NULL &&
- (endcomment = sindex(lisp, "*/")) == NULL) {
- fputs(lisp, lispout);
- inputline = fgets(lisp, line_max, inp);
- }
- strcpy(endcomment, "\n\n");
- fputs(lisp, lispout);
-}
-
-
-/* lookup -- find type data */
-/**/
-static int lookup(s, t)
- char *s;
- char t;
-{
- int i = 1;
- while (type_table[i].type_id != NULL) {
- if (type_table[i].code == t &&
- strcmp(type_table[i].type_id, s) == 0)
- return i;
- i++;
- }
- return 0;
-}
-
-/* macro_call -- generate xlisp interface for C routine */
-/**/
-void macro_call(in, out, curline, macro_name, arg_loc)
- FILE *in; /* input file */
- FILE *out; /* output file */
- char *curline; /* input line */
- char *macro_name; /* name of the macro to call */
- char *arg_loc; /* location after "LISP:" */
-{
- char type_name[ident_max];
- if (!getarg(arg_loc, type_name, &arg_loc)) {
- error();
- fprintf(errfile, "no type given for macro.\n");
- } else {
- write_interface(in, out, type_name, macro_name, arg_loc, true);
- }
-}
-
-
-
-/* main -- generate an xlisp to c interface file */
-/**/
-int main(argc, argv)
- int argc;
- char *argv[];
-{
- char *s;
- FILE *out;
- FILE *ptrfile;
- FILE *deffile;
- int n;
-
-#ifdef MACINTOSH
- argc = ccommand(&argv);
-#endif
-
- for (n = 0; n < subr_max; n++)
- {
- subr_table[n] = (char *) malloc(ident_max);
- subr_table[n][0] = EOS;
- }
- subr_table_x = 0;
-
- cl_init(NULL, 0, NULL, 0, argv, argc);
- if ((s = cl_arg(1)) != NULL) {
- strcpy(out_file, s);
- if (sindex(out_file, ".") == 0)
- strcat(out_file, ".c");
- else fprintf(stderr,
- "1st command line argument should be a legal c identifier\n");
- out = fopen(out_file, "w");
- if (out == NULL) {
- fprintf(stdout, "Error: couldn't open %s\n", out_file);
- exit(1);
- }
- strcpy(ptr_file, s);
- strcat(ptr_file, "ptrs.h");
- ptrfile = fopen(ptr_file, "w");
- if (ptrfile == NULL) {
- fprintf(stdout, "Error: couldn't open %s\n", ptr_file);
- exit(1);
- }
- strcpy(def_file, s);
- strcat(def_file, "defs.h");
- deffile = fopen(def_file, "w");
- if (deffile == NULL) {
- fprintf(stdout, "Error: couldn't open %s\n", def_file);
- exit(1);
- }
- } else {
- fprintf(stdout, "Error: no output file specified\n");
- exit(1);
- }
-
- printf("writing %s ...\n", out_file);
-
- write_prelude(out, out_file);
- n = 2;
- while ((s = cl_arg(n)) != NULL) {
- printf(" %s\n", s);
- process_file(s, out);
- n++;
- }
- write_postlude(out);
- fclose(out);
- write_ptrfile(ptrfile, deffile);
- fclose(ptrfile);
- fclose(deffile);
- if (lispout != NULL) fclose(lispout);
- return 0;
-}
-
-
-static void process_file(fname, out)
- char *fname;
- FILE *out;
-{
- FILE *in;
- char *cp;
- char *pos;
- char incl_file[ident_max]; /* name of file to include */
- char type_name[ident_max]; /* the type of the routine */
- char routine_name[ident_max]; /* the name of the routine or macro */
- char flag = fname[0];
- boolean reading_parameters = false; /* says we've got a routine, and
- we're skipping over parameter declarations */
-
- if (flag == no_include_prefix) fname++;
-
- strcpy(source_file, fname); /* for error reporting */
- in = fopen(fname, "r");
- if (in == NULL) {
- fprintf(errfile, "couldn't open %s\n", fname);
- return;
- }
-
- /* first check out the first line: if the first two characters are
- "ih", then replace fname with file.ih so that the CLASS ".ih"
- file will be included instead of this ".h" file. This is a
- hack to allow calls into Andrew Tool Kit objects.
- */
-
- strcpy(incl_file, fname);
- if (fgets(current_line, line_max, in) != NULL) {
- if (current_line[0] == 'i' && current_line[1] == 'h') {
- cp = sindex(incl_file, ".h");
- if (cp != NULL) {
- strcpy(cp, ".ih");
- }
- }
- }
-
- /* strip off leading directory prefix, if any */
- cp = strrchr(incl_file, FILESEP); /* find the last slash */
- if (cp) {
- strcpy(incl_file, cp + 1 /* skip the slash */);
- }
-
- if (flag != no_include_prefix) fprintf(out, "#include \"%s\"\n\n", incl_file);
-
- while (fgets(current_line, line_max, in) != NULL) {
- cp = sindex(current_line, "#define");
- if (cp != NULL) {
- cp += strlen("#define");
- if (!getarg(cp, routine_name, &cp)) {
- error();
- fprintf(errfile, "#define not followed by identifier\n");
- }
- /* watch out for multi-line macros: */
- while (sindex(current_line, "\\\n")) {
- if (fgets(current_line, line_max, in) == NULL) return;
- }
- } else if ((cp = sindex(current_line, "LISP:")) != NULL) {
- char type_str[ident_max];
- char routine_str[ident_max];
- if (!reading_parameters &&
- getarg(current_line, type_str, &pos) &&
- getarg(pos, routine_str, &pos) &&
- pos < cp) {
- routine_call(in, out, current_line, type_str, routine_str,
- cp + strlen("LISP:"));
- } else if (getarg(cp + strlen("LISP:"), type_str, &pos)) {
- macro_call(in, out, current_line, routine_name,
- cp + strlen("LISP:"));
- } else routine_call(in, out, current_line, type_name, routine_name,
- cp + strlen("LISP:"));
- } else if ((cp = sindex(current_line, "LISP-SRC:")) != NULL) {
- lisp_code(in, cp + strlen("LISP-SRC:"));
- } else if (reading_parameters && sindex(current_line, ")")) {
- reading_parameters = false;
- } else if (reading_parameters) { /* skip */ ;
- } else if (getarg(current_line, type_name, &pos) &&
- getarg(pos, routine_name, &pos)) {
- /* we grabbed the type and routine name. Check to see if the
- * parameter list is open but not closed on this line: */
- if (sindex(current_line, "(") && !sindex(current_line, ")")) {
- reading_parameters = true;
- }
- /* printf("saw %s %s\n", type_name, routine_name);*/
- } else { /* wipe out names for safety: */
- type_name[0] = EOS;
- routine_name[0] = EOS;
- }
- }
-
- fclose(in);
-}
-
-
-/* routine_call -- generate xlisp interface for C routine */
-/**/
-static void routine_call(in, out, curline, type_name, routine_name, arg_loc)
- FILE *in; /* input file */
- FILE *out; /* output file */
- char *curline; /* input line */
- char *type_name; /* type id */
- char *routine_name; /* routine id */
- char *arg_loc; /* location after "LISP:" */
-{
-
- if (*routine_name == EOS) {
- routine_name = type_name;
- type_name = "void";
- }
- if (*routine_name == '*') {
- char *r = routine_name;
- while (*r != EOS) { /* shift left */
- *r = *(r+1);
- r++;
- }
- strcat(type_name, "*");
- }
- write_interface(in, out, type_name, routine_name, arg_loc, false);
-}
-
-
-/* sindex -- find substring */
-/**/
-static char *sindex(sup, sub)
- char *sup; /* the containing string */
- char *sub; /* the substring */
-{
- int i;
- for ( ; *sup != EOS; sup++) {
- for (i = 0; true; i++) {
- if (*(sub+i) == EOS) return sup;
- if (*(sup+i) != *(sub+i)) break;
- }
- }
- return EOS;
-}
-
-
-/* write_interface -- write SUBR for xlisp */
-/*
- * NOTE: if is_macro and there are no arguments, then
- * do not write parens: e.g. "foo" instead of "foo()"
- */
-static void write_interface(in, out, type_name, fn_name, arg_loc, is_macro)
- FILE *in; /* input file */
- FILE *out; /* output file */
- char *type_name; /* c type for return value */
- char *fn_name; /* c function to be called */
- char *arg_loc; /* LISP arg type are described here */
- int is_macro; /* true if this is a macro */
-{
- char lispfn[ident_max]; /* lisp fn name */
- char *cp; /* a temporary */
- int len; /* a string length */
-#define args_max 20
- struct {
- int index; /* table location for this type */
- int res_flag; /* is a result returned? */
- } args[args_max];
- char arg_type[ident_max]; /* the original type spec */
- char *c_type; /* c type for an argument */
- char *c_str; /* temp for a c code line */
- int argcnt = 0; /* counts arguments */
- int i; /* argument index */
- int result_flag = false; /* true if there are result parameters */
- int result_x; /* index of result type */
- char newline[line_max]; /* place to read continuation lines */
-
-
-/* printf("write_interface: %s %s %s", type_name, fn_name, arg_loc);*/
- if (*type_name == EOS || *fn_name == EOS) {
- error();
- fprintf(errfile, "Error: bad syntax, maybe missing type\n");
- return;
- }
-
- while (*arg_loc != '(' && *arg_loc != EOS) arg_loc++;
- if (*arg_loc == EOS) {
- error();
- fprintf(errfile, "Error: '(' expected after 'LISP:'\n");
- return;
- } else arg_loc++;
- if (!getarg(arg_loc, lispfn, &arg_loc)) {
- error();
- fprintf(stdout, "Error: lisp function name expected\n");
- return;
- }
- /* make it upper case: */
- for (cp = lispfn; *cp != EOS; cp++) {
- if (islower(*cp)) *cp = toupper(*cp);
- }
-
- /* save SUBR name */
- strcpy(subr_table[subr_table_x], lispfn);
- subr_table_x++;
-
- /* make lispfn lower case, dash, colon -> underscore: */
- for (cp = lispfn; *cp != EOS; cp++) {
- if (isupper(*cp)) *cp = tolower(*cp);
- if (*cp == '-' || *cp == ':') *cp = '_';
- }
-
- /* append continuation lines to arg_loc to handle multi-line specs */
- while (sindex(arg_loc, "*/") == NULL) {
- /* remove newline */
- if (strlen(arg_loc) > 0)
- arg_loc[strlen(arg_loc) - 1] = EOS;
- if (fgets(newline, line_max, in) == NULL) {
- error();
- fprintf(stdout, "Error: end of file unexpected\n");
- exit(1);
- }
- if ((strlen(arg_loc) + strlen(newline)) > (3 * line_max)) {
- error();
- fprintf(stdout,
- "Error: specification too long or missing end of comment.\n");
- exit(1);
- }
- strcat(arg_loc, newline);
- }
-
- fprintf(out, "/%c xlc_%s -- interface to C routine %s */\n/**/\n",
- '*', lispfn, fn_name);
-
- fprintf(out, "LVAL xlc_%s(void)\n{\n", lispfn);
- while (getarg(arg_loc, arg_type, &arg_loc)) {
- int result_only_flag = false;
-
- if (argcnt >= args_max) {
- error();
- fprintf(errfile,
- "Internal error: too many args, increase args_max\n");
- }
- len = strlen(arg_type);
- if (arg_type[len-1] == '*') {
- arg_type[len-1] = EOS;
- args[argcnt].res_flag = true;
- result_flag = true;
- } else if (arg_type[len-1] == '^') {
- arg_type[len-1] = EOS;
- args[argcnt].res_flag = true;
- result_flag = true;
- result_only_flag = true;
- } else args[argcnt].res_flag = false;
-
- args[argcnt].index = lookup(arg_type, 'L');
- c_type = get_lisp_ctype(args[argcnt].index);
-
- if (c_type == NULL) {
- error();
- fprintf(errfile, "Error: %s undefined, using int.\n",
- arg_type);
- c_type = "int";
- args[argcnt].index = lookup("FIXNUM", 'L');
- }
- fprintf(out, " %s arg%d = ", c_type, argcnt+1);
- if (result_only_flag) {
- fprintf(out, "%s;\n",
- get_lisp_initializer(args[argcnt].index));
- } else if (args[argcnt].index == any_index) {
- fprintf(out, "xlgetarg();\n");
- } else {
- c_str = "%s(%s());\n";
- fprintf(out,c_str,
- get_lisp_extract(args[argcnt].index),
- get_lisp_getarg(args[argcnt].index));
- }
- argcnt++;
- }
-
- if (*arg_loc != ')') {
- fprintf(errfile,
- "Warning: paren expected immediately after last arg of %s\n",
- lispfn);
- }
-
- /* check for close paren and close comment: */
- cp = sindex(arg_loc, ")");
- if (cp == NULL || sindex(cp+1, "*/") == NULL) {
- error();
- fprintf(errfile, "Warning: close paren and close comment expected\n");
- }
-
- /* lookup result type */
- result_x = lookup(type_name, 'C');
- if (result_x == 0) {
- fprintf(errfile, "(Warning) unknown type: %s, assuming void\n",
- type_name);
- result_x = lookup("void", 'C');
- }
-
- /* if there are result parameters then return them rather than NIL
- * when the type is void
- */
- if (get_c_special(result_x) == 'v' && result_flag) {
- fprintf(out, " LVAL result;\n");
- }
-
- if (get_c_special(result_x) != 'v') {
- /* declare result: */
- fprintf(out, " %s result;\n", type_name);
- }
-
- /* check for end of argument list: */
- fprintf(out, "\n xllastarg();\n");
-
- /* if there are results, we'll call cons, so
- * protect the result from garbage collection
- * if necessary
- */
- if (result_flag && strcmp(type_name, "LVAL") == 0) {
- fprintf(out, " xlprot1(result);\n");
- }
-
- /* call the c routine */
- if (get_c_special(result_x) != 'v') {
- fprintf(out, " result = ");
- } else fprintf(out, " ");
- fprintf(out, "%s", fn_name);
- if (!is_macro || argcnt > 0) fprintf(out, "(");
-
- /* pass arguments: */
- for (i = 0; i < argcnt; i++) {
- if (i > 0) fprintf(out, ", ");
- if (args[i].res_flag) fprintf(out, "&");
- fprintf(out, "arg%d", i+1);
- }
- if (!is_macro || argcnt > 0) fprintf(out, ")");
- fprintf(out, ";\n");
-
- /* put results (if any) on *RSLT* */
- if (result_flag) {
- int wrote_one_flag = false;
- fprintf(out, " {\tLVAL *next = &getvalue(RSLT_sym);\n");
- for (i = 0; i < argcnt; i++) {
- if (args[i].res_flag) {
- if (wrote_one_flag)
- fprintf(out, "\tnext = &cdr(*next);\n");
- wrote_one_flag = true;
- fprintf(out, "\t*next = cons(NIL, NIL);\n");
- fprintf(out, "\tcar(*next) = %s(arg%d);",
- get_lisp_makenode(args[i].index), i+1);
- }
- }
- fprintf(out, "\n }\n");
-
- /* copy *RSLT* to result if appropriate */
- if (get_c_special(result_x) == 'v') {
- fprintf(out, " result = getvalue(RSLT_sym);\n");
- }
- }
-
-
- /* generate xlpop() if there was an xlprot1() */
- if (result_flag && strcmp(type_name, "LVAL") == 0) {
- fprintf(out, " xlpop();\n");
- }
-
-
- /* now return actual return value */
- if (get_c_special(result_x) == EOS) {
- error();
- fprintf(errfile, "Warning: unknown type from C, coercing to int.\n");
- fprintf(out, " return cvfixnum((int) result);\n");
- } else if (get_c_special(result_x) == 'v' && !result_flag) {
- fprintf(out, " return NIL;\n");
- } else if (get_c_special(result_x) == 'v' && result_flag) {
- fprintf(out, " return result;\n");
- } else if (get_c_special(result_x) == 's') {
- fprintf(out, " if (result == NULL) return NIL;\n");
- fprintf(out, " else return %s(result);\n",
- get_c_conversion(result_x));
- } else {
- fprintf(out, " return %s(result);\n",
- get_c_conversion(result_x));
- }
- fprintf(out, "}\n\n\n");
-}
-
-
-/* write_postlude -- write stuff at end of file */
-/**/
-static void write_postlude(out)
- FILE *out;
-{
- /* nothing to do for version 2 */
-}
-
-
-/* write_ptrfile -- write function definition table */
-/**/
-static void write_ptrfile(pf, df)
- FILE *pf;
- FILE *df;
-{
- int n;
- char *cp;
- char cname[ident_max];
-
- for (n = 0; n < subr_table_x; n++) {
- strcpy(cname, subr_table[n]);
- /* make cname lower case, dash,colon -> underscore: */
- for (cp = cname; *cp != EOS; cp++) {
- if (isupper(*cp)) *cp = tolower(*cp);
- if (*cp == '-' || *cp == ':') *cp = '_';
- }
- fprintf(df, "extern LVAL xlc_%s(void);\n", cname);
- fprintf(pf, " { \"%s\", S, xlc_%s}, \n", subr_table[n], cname);
- }
- printf(" Add %s to localdefs.h and add %s to localptrs.h\n",
- def_file, ptr_file);
-}
-
-
-/* write_prelude -- write stuff at head of file */
-/**/
-static void write_prelude(out, out_file)
- FILE *out;
- char *out_file;
-{
- int i = 2;
- int col = strlen(out_file) + 21;
- char *s;
- fprintf(out, "/%c %s -- interface to ",
- '*', out_file);
- while ((s = cl_arg(i)) != NULL) {
- if (i > 2) {
- fprintf(out, ", ");
- col += 2;
- }
- col += strlen(s) + 2;
- if (col > 65) {
- fprintf(out, "\n * ");
- col = 4 + strlen(s) + 2;
- }
- fprintf(out, "%s", s);
- i++;
- }
- fprintf(out, " */\n\n%cifndef mips\n%cinclude \"stdlib.h\"\n", '#', '#');
- fprintf(out, "%cendif\n%cinclude \"xlisp.h\"\n\n", '#', '#');
-#ifdef S_TRUE
- fprintf(out, "extern LVAL s_true;\n");
- fprintf(out, "%cdefine cvboolean(i) ((i) ? s_true : NIL)\n", '#');
-#else
- fprintf(out, "extern LVAL true;\n");
- fprintf(out, "%cdefine cvboolean(i) ((i) ? true : NIL)\n", '#');
-#endif
-
- fprintf(out, "%c%s\n",
- '#',
- "define testarg2(e) (moreargs() ? (e) : (getflonum(xltoofew())))");
-
- fprintf(out, "%c%s\n%s\n%s\n",
- '#',
- "define xlgaanynum() (floatp(*xlargv) ? getflonum(nextarg()) : \\",
- " (fixp(*xlargv) ? (double) getfixnum(nextarg()) : \\",
-/* note: getflonum never gets called here, but this makes typechecking happy */
- " getflonum(xlbadtype(*xlargv))))");
-
- fprintf(out, "%cdefine getboolean(lval) ((lval) != NIL)\n\n", '#');
- fprintf(out, "extern LVAL RSLT_sym;\n\n\n");
-}
diff --git a/lib-src/libnyquist/misc/intgen2.c b/lib-src/libnyquist/misc/intgen2.c
deleted file mode 100644
index f462815..0000000
--- a/lib-src/libnyquist/misc/intgen2.c
+++ /dev/null
@@ -1,910 +0,0 @@
-/* intgen.c -- an interface generator for xlisp */
-
-/* (c) Copyright Carnegie Mellon University 1991
- * For a statement of limited permission to use, see Permission.doc
- *
- * HISTORY
- *
- * 5-Jul-95 Roger Dannenberg
- * strip directory prefixes from files before writing include statements
- * 24-Oct-88 Roger Dannenberg at CMU
- * Changed so that if C routine returns void and has result parameters,
- * then result parameters are returned by the lisp subr as well as
- * assigned to *RSLT*.
- *
- * 13-Apr-88 Roger Dannenberg at CMU
- * Modified for xlisp version 2.0
- *
- * 22-Dec-87 Roger Dannenberg at NeXT
- * Added FILE type.
- *
- * 21-May-87 Dale Amon at CMU CSD
- * Included use of NODE *s_true under SCORE_EDITOR conditional. Standard
- * xlisp code use NODE *true instead.
- *
- * 13-May-87 Dale Amon at CMU CSD
- * Added conditional compilation switch SCORE_EDITOR so that this
- * program will work with both standard XLISP sources and with Roger's
- * (ahem) modified version. Also put in error checking for case where
- * user does not specifiy an output file so program will exit instead
- * of coredump.
- */
-
-
-/* Summary and Design: (NOTE THAT AN INTGEN MANUAL IS AVAILABLE)
- * The first command line argument gives the name of
- * the .c file to generate. All following arguments are
- * .h files to read and use as interface specifications.
- *
- * The main program opens the output file, calls
- * write_prelude, and then process_file for each input
- * file. Then call write_postlude and close the file.
- *
- * process_file opens an input file and reads each line
- * into current_line.
- * if the first characters of the file are "ih", then
- * the rest of the file is processed as normal, except the
- * .h extension of the file is replaced by .ih before the
- * filename is written into an include statement in the
- * output file. This is done to handle ".ih" files generated
- * by the Andrew Toolkit Class processor.
- * In any case, the first line of EVERY .h file is discarded.
- * If #define is found, save the following identifier as
- * macro_name.
- * If "LISP:" is found, then see if it is preceded by one
- * or two identifiers and an open paren.
- * If yes, call routine_call,
- * else call macro_call.
- *
- * routine_call gets the first one or two identifiers off the
- * line into type_name and routine_name. If there is just one id,
- * assign it to routine_name and make type_name = "void".
- * If the routine_name starts with *, remove the * from
- * routine_name and append "*" to type_name.
- * Call write_interface with type_name, routine_name, and location
- * of parameter type description after "LISP:".
- *
- * macro_call gets a type_name from the input line after
- * "LISP:".
- * Then call write_interface with type_name, macro_name, and
- * location of parameter type description.
- *
- * lisp function names are saved in a table, and an
- * initialization routine is written to install the new
- * SUBRs into the xlisp symbol table, as well as to lookup
- * RSLT_sym, the atom on which results are placed
- *
- *
- */
-
-/* Turn on special handling for Roger's Score Editor if the following #define
- * is uncommented:
- */
-/* #define SCORE_EDITOR */
-
-/* Turn on special handling for Chris's Sound Editor if the following #define
- * is uncommented:
- */
-/* #define SOUND_EDITOR */
-
-/* Turn on special handling for Nyquist if the following #define
- * is uncommented:
- */
-#define NYQUIST
-
-/* atom 't is named s_true if this is defined, o.w. named true: */
-#define S_TRUE 1
-
-/* Turn on special handling for CMU MIDI Toolkit seq_type:
- */
-#define SEQ_TYPE
-
-#define errfile stdout
-
-#define ident_max 100
-#define line_max 200
-#define subr_max 500
-
-/* prefix for include files not to be included in interface module */
-#define no_include_prefix '~'
-
-#define false 0
-#define true 1
-
-#include "stdlib.h"
-#include "switches.h"
-#include "cext.h"
-#include <string.h>
-#ifndef boolean
-typedef int boolean;
-#endif
-#include "stdio.h"
-#include "ctype.h"
-#include "cmdline.h"
-#ifdef MACINTOSH
-#include "console.h"
-#endif
-
-#ifdef MACINTOSH
-#define FILESEP ':'
-#else
-#ifdef WINDOWS
-#define FILESEP '\\'
-#else
-#define FILESEP '/'
-#endif
-#endif
-
-static char *sindex();
-
-#define whitep(c) ((c) == ' ' || (c) == '\t')
-#define symbolp(c) (isalpha(c) || (c) == '*' || (c) == '_' || (c) == '-' ||\
- (c) == ':' || isdigit(c) || (c) == '^' || (c) == '*')
-
-/* c and Lisp parameters are encoded in the same table.
- * Field type_id is the string name of the type.
- * For c types (return types of C routines), code is 'C',
- * convert gives the routine for making a lisp node from
- * the c datum.
- * listtype_or_special is "v" for types that should be
- * returned as LISP NIL (e.g. "void"), "s" for types
- * that when NULL should be returned as NIL, "r"
- * for normal types, and "" to raise an error.
- * ctype is not used and should be NULL.
- * For Lisp types (from parameter specs), code is 'L'.
- * convert gives the routine that extracts a C value
- * from a lisp node whose type is given by the field
- * getarg_or_special.
- * c_type is the type of the local C variable which is
- * passed as a parameter to the C routine.
- * initializer is the initial value for result only parameters
- *
- * End of table is marked by a NULL type_id.
- *
- * Location 0 is reserved to indicate errors.
- * Location 1 MUST BE type ANY
- *
- */
-
-#define any_index 1
-struct {
- char *type_id;
- char code;
- char *convert;
- char *getarg_or_special;
- char *ctype;
- char *makenode;
- char *initializer;
-} type_table[] = {
- {" ", ' ', NULL, NULL, NULL, NULL, NULL},
- {"ANY", 'L', "", "", "LVAL", "", "NIL"},
- {"ATOM", 'L', "", "xlgasymbol", "LVAL", "", "NIL"},
- {"FILE", 'L', "getfile", "xlgastream", "FILE *", "cvfile", "NULL"},
- {"FIXNUM", 'L', "getfixnum", "xlgafixnum", "long", "cvfixnum", "0"},
- {"FIXNUM", 'L', "getfixnum", "xlgafixnum", "int", "cvfixnum", "0"},
- {"FLOAT", 'L', "getflonum", "xlgaflonum", "float", "cvflonum", "0.0"},
- {"FLONUM", 'L', "getflonum", "xlgaflonum", "double", "cvflonum", "0.0"},
- {"ANYNUM", 'L', "testarg2", "xlgaanynum", "double", "cvflonum", "0.0"},
- {"STRING", 'L', "getstring", "xlgastring", "unsigned char *", "cvstring", "NULL"},
- {"BOOLEAN", 'L', "getboolean", "xlgetarg", "int", "cvboolean", "0"},
- {"atom_type", 'C', "", "r", NULL, NULL, NULL},
- {"LVAL", 'C', "", "r", NULL, NULL, "NIL"},
-
-#ifdef SOUND_EDITOR
- /* Extensions for Sound Type: */
- {"SOUND", 'L', "getsound", "xlgasound", "SoundPtr", "cvsound", "NULL"},
- {"SoundPtr", 'C', "cvsound", "r", NULL, NULL, NULL},
-#endif
-
-#ifdef NYQUIST
- {"SOUND", 'L', "getsound", "xlgasound", "sound_type", "cvsound", "NULL"},
- {"sound_type", 'C', "cvsound", "r", NULL, NULL, NULL},
-#endif
-#ifdef SEQ_TYPE
- {"SEQ", 'L', "getseq", "xlgaseq", "seq_type", "cvseq", "NULL"},
- {"seq_type", 'C', "cvseq", "r", NULL, NULL, NULL},
-#endif
-#ifdef SCORE_EDITOR
- {"VALUE", 'L', "getval", "xlgaval", "value_type", "cvval", "NULL"},
- {"value_type", 'C', "cvval", "r", NULL, NULL, NULL},
- {"EVENT", 'L', "getevent", "xlgaevent", "event_type", "cvevent", "NULL"},
- {"event_type", 'C', "cvevent", "r", NULL, NULL, NULL},
- {"score_type", 'C', "cvevent", "r", NULL, NULL, NULL},
-#endif
-#ifdef DMA_EXTENSIONS
- /* begin DMA entries */
- {"DEXT", 'L', "getdext", "xlgadext", "ext_type", "cvdext", "NULL"},
- {"DEXT", 'C', "cvdext", "r", NULL, NULL, NULL},
- {"SEXT", 'L', "getsext", "xlgasext", "ext_type", "cvsext", "NULL"},
- {"SEXT", 'C', "cvsext", "r", NULL, NULL, NULL},
- /* end DMA entries */
-#endif
- {"int", 'C', "cvfixnum", "r", NULL, NULL, NULL},
- {"long", 'C', "cvfixnum", "r", NULL, NULL, NULL},
- {"boolean", 'C', "cvboolean", "r", NULL, NULL, NULL},
- {"float", 'C', "cvflonum", "r", NULL, NULL, NULL},
- {"double", 'C', "cvflonum", "r", NULL, NULL, NULL},
- {"string", 'C', "cvstring", "s", NULL, NULL, NULL},
- {"char*", 'C', "cvstring", "s", NULL, NULL, NULL},
- {"char", 'C', "cvfixnum", "r", NULL, NULL, NULL},
- {"string_type", 'C', "cvstring", "s", NULL, NULL, NULL},
- {"FILE*", 'C', "cvfile", "s", NULL, NULL, NULL},
- {"void", 'C', "", "v", NULL, NULL, NULL},
-/*eot*/ {NULL, ' ', NULL, NULL, NULL, NULL, NULL}};
-
-/* subr names get saved here: */
-char *subr_table[subr_max];
-int subr_table_x;
-
-#define get_c_special(i) type_table[(i)].getarg_or_special[0]
-#define get_c_conversion(i) type_table[(i)].convert
-#define get_lisp_extract(i) type_table[(i)].convert
-#define get_lisp_getarg(i) type_table[(i)].getarg_or_special
-#define get_lisp_ctype(i) type_table[(i)].ctype
-#define get_lisp_makenode(i) type_table[(i)].makenode
-#define get_lisp_initializer(i) type_table[(i)].initializer
-
-static void lisp_code();
-static int lookup();
-static void process_file();
-static void routine_call();
-static void write_interface();
-static void write_postlude();
-static void write_prelude();
-static void write_ptrfile();
-
-char source_file[ident_max]; /* source file */
-char current_line[4 * line_max]; /* current line in source file */
-char out_file[ident_max]; /* output file name */
-char ptr_file[ident_max]; /* ptr.h file name */
-char def_file[ident_max]; /* def.h file name */
-
-FILE *lispout = NULL; /* output for lisp source code (if any) */
-
-#define EOS '\000'
-
-/* getarg -- get an identifier from a string */
-/**/
-int getarg(start, result, pos)
- char *start; /* where to start scanning */
- char *result; /* where to put the identifier */
- char **pos; /* ptr to char after identifier in source */
-{
- char *save = result;
- *result = EOS;
- while (whitep(*start) && *start != EOS) start++;
- if (*start == EOS) return false;
- if (!symbolp(*start)) return false;
-
- while (symbolp(*start) && *start != EOS) {
- *result = *start;
- result++;
- start++;
- }
- *result = EOS;
- *pos = start;
- printf("getarg got %s\n", save);
- return true;
-}
-
-
-/* error() -- print source file and line */
-/**/
-error()
-{
- fprintf(errfile, "\n%s: |%s|\n", source_file, current_line);
-}
-
-
-/* lisp_code -- write lisp code to file */
-/*
- * read from inp if necessary until close comment found
- */
-static void lisp_code(inp, s)
- FILE *inp;
- char *s;
-{
- char lisp[line_max];
- char *endcomment;
- char *inputline; /* for end of file detection */
-
- if (lispout == NULL) {
- char lisp_file_name[ident_max];
- char *extension;
- strcpy(lisp_file_name, out_file);
- extension = sindex(lisp_file_name, ".c");
- strcpy(extension, ".lsp"); /* overwrite .c with .lsp */
- lispout = fopen(lisp_file_name, "w");
- if (lispout == NULL) {
- fprintf(stdout, "Error: couldn't open %s\n", lisp_file_name);
- exit(1);
- }
- printf("writing %s ...\n", lisp_file_name);
- }
-
- strcpy(lisp, s); /* don't modify s */
- inputline = lisp;
- while (inputline != NULL &&
- (endcomment = sindex(lisp, "*/")) == NULL) {
- fputs(lisp, lispout);
- inputline = fgets(lisp, line_max, inp);
- }
- strcpy(endcomment, "\n\n");
- fputs(lisp, lispout);
-}
-
-
-/* lookup -- find type data */
-/**/
-static int lookup(s, t)
- char *s;
- char t;
-{
- int i = 1;
- while (type_table[i].type_id != NULL) {
- if (type_table[i].code == t &&
- strcmp(type_table[i].type_id, s) == 0)
- return i;
- i++;
- }
- return 0;
-}
-
-/* macro_call -- generate xlisp interface for C routine */
-/**/
-void macro_call(in, out, curline, macro_name, arg_loc)
- FILE *in; /* input file */
- FILE *out; /* output file */
- char *curline; /* input line */
- char *macro_name; /* name of the macro to call */
- char *arg_loc; /* location after "LISP:" */
-{
- char type_name[ident_max];
- if (!getarg(arg_loc, type_name, &arg_loc)) {
- error();
- fprintf(errfile, "no type given for macro.\n");
- } else {
- write_interface(in, out, type_name, macro_name, arg_loc, true);
- }
-}
-
-
-
-/* main -- generate an xlisp to c interface file */
-/**/
-int main(argc, argv)
- int argc;
- char *argv[];
-{
- char *s;
- FILE *out;
- FILE *ptrfile;
- FILE *deffile;
- int n;
-
-#ifdef MACINTOSH
- argc = ccommand(&argv);
-#endif
-
- for (n = 0; n < subr_max; n++)
- {
- subr_table[n] = (char *) malloc(ident_max);
- subr_table[n][0] = EOS;
- }
- subr_table_x = 0;
-
- cl_init(NULL, 0, NULL, 0, argv, argc);
- if ((s = cl_arg(1)) != NULL) {
- strcpy(out_file, s);
- if (sindex(out_file, ".") == 0)
- strcat(out_file, ".c");
- else fprintf(stderr,
- "1st command line argument should be a legal c identifier\n");
- out = fopen(out_file, "w");
- if (out == NULL) {
- fprintf(stdout, "Error: couldn't open %s\n", out_file);
- exit(1);
- }
- strcpy(ptr_file, s);
- strcat(ptr_file, "ptrs.h");
- ptrfile = fopen(ptr_file, "w");
- if (ptrfile == NULL) {
- fprintf(stdout, "Error: couldn't open %s\n", ptr_file);
- exit(1);
- }
- strcpy(def_file, s);
- strcat(def_file, "defs.h");
- deffile = fopen(def_file, "w");
- if (deffile == NULL) {
- fprintf(stdout, "Error: couldn't open %s\n", def_file);
- exit(1);
- }
- } else {
- fprintf(stdout, "Error: no output file specified\n");
- exit(1);
- }
-
- printf("writing %s ...\n", out_file);
-
- write_prelude(out, out_file);
- n = 2;
- while ((s = cl_arg(n)) != NULL) {
- printf(" %s\n", s);
- process_file(s, out);
- n++;
- }
- write_postlude(out);
- fclose(out);
- write_ptrfile(ptrfile, deffile);
- fclose(ptrfile);
- fclose(deffile);
- if (lispout != NULL) fclose(lispout);
- exit(0);
-}
-
-
-static void process_file(fname, out)
- char *fname;
- FILE *out;
-{
- FILE *in;
- char *cp;
- char *pos;
- char incl_file[ident_max]; /* name of file to include */
- char type_name[ident_max]; /* the type of the routine */
- char routine_name[ident_max]; /* the name of the routine or macro */
- char flag = fname[0];
- boolean reading_parameters = false; /* says we've got a routine, and
- we're skipping over parameter declarations */
-
- if (flag == no_include_prefix) fname++;
-
- strcpy(source_file, fname); /* for error reporting */
- in = fopen(fname, "r");
- if (in == NULL) {
- fprintf(errfile, "couldn't open %s\n", fname);
- return;
- }
-
- /* first check out the first line: if the first two characters are
- "ih", then replace fname with file.ih so that the CLASS ".ih"
- file will be included instead of this ".h" file. This is a
- hack to allow calls into Andrew Tool Kit objects.
- */
-
- strcpy(incl_file, fname);
- if (fgets(current_line, line_max, in) != NULL) {
- if (current_line[0] == 'i' && current_line[1] == 'h') {
- cp = sindex(incl_file, ".h");
- if (cp != NULL) {
- strcpy(cp, ".ih");
- }
- }
- }
-
- /* strip off leading directory prefix, if any */
- cp = strrchr(incl_file, FILESEP); /* find the last slash */
- if (cp) {
- strcpy(incl_file, cp + 1 /* skip the slash */);
- }
-
- if (flag != no_include_prefix) fprintf(out, "#include \"%s\"\n\n", incl_file);
-
- while (fgets(current_line, line_max, in) != NULL) {
- cp = sindex(current_line, "#define");
- if (cp != NULL) {
- cp += strlen("#define");
- if (!getarg(cp, routine_name, &cp)) {
- error();
- fprintf(errfile, "#define not followed by identifier\n");
- }
- /* watch out for multi-line macros: */
- while (sindex(current_line, "\\\n")) {
- if (fgets(current_line, line_max, in) == NULL) return;
- }
- } else if ((cp = sindex(current_line, "LISP:")) != NULL) {
- char type_str[ident_max];
- char routine_str[ident_max];
- if (!reading_parameters &&
- getarg(current_line, type_str, &pos) &&
- getarg(pos, routine_str, &pos) &&
- pos < cp) {
- routine_call(in, out, current_line, type_str, routine_str,
- cp + strlen("LISP:"));
- } else if (getarg(cp + strlen("LISP:"), type_str, &pos)) {
- macro_call(in, out, current_line, routine_name,
- cp + strlen("LISP:"));
- } else routine_call(in, out, current_line, type_name, routine_name,
- cp + strlen("LISP:"));
- } else if ((cp = sindex(current_line, "LISP-SRC:")) != NULL) {
- lisp_code(in, cp + strlen("LISP-SRC:"));
- } else if (reading_parameters && sindex(current_line, ")")) {
- reading_parameters = false;
- } else if (reading_parameters) { /* skip */ ;
- } else if (getarg(current_line, type_name, &pos) &&
- getarg(pos, routine_name, &pos)) {
- /* we grabbed the type and routine name. Check to see if the
- * parameter list is open but not closed on this line: */
- printf("type_name %s, routine_name %s\n", type_name, routine_name);
- if (sindex(current_line, "(") && !sindex(current_line, ")")) {
- reading_parameters = true;
- }
- /* printf("saw %s %s\n", type_name, routine_name);*/
- } else { /* wipe out names for safety: */
- type_name[0] = EOS;
- routine_name[0] = EOS;
- }
- }
-
- fclose(in);
-}
-
-
-/* routine_call -- generate xlisp interface for C routine */
-/**/
-static void routine_call(in, out, curline, type_name, routine_name, arg_loc)
- FILE *in; /* input file */
- FILE *out; /* output file */
- char *curline; /* input line */
- char *type_name; /* type id */
- char *routine_name; /* routine id */
- char *arg_loc; /* location after "LISP:" */
-{
-
- if (*routine_name == EOS) {
- routine_name = type_name;
- type_name = "void";
- }
- if (*routine_name == '*') {
- char *r = routine_name;
- while (*r != EOS) { /* shift left */
- *r = *(r+1);
- r++;
- }
- strcat(type_name, "*");
- }
- write_interface(in, out, type_name, routine_name, arg_loc, false);
-}
-
-
-/* sindex -- find substring */
-/**/
-static char *sindex(sup, sub)
- char *sup; /* the containing string */
- char *sub; /* the substring */
-{
- int i;
- for ( ; *sup != EOS; sup++) {
- for (i = 0; true; i++) {
- if (*(sub+i) == EOS) return sup;
- if (*(sup+i) != *(sub+i)) break;
- }
- }
- return EOS;
-}
-
-
-/* write_interface -- write SUBR for xlisp */
-/*
- * NOTE: if is_macro and there are no arguments, then
- * do not write parens: e.g. "foo" instead of "foo()"
- */
-static void write_interface(in, out, type_name, fn_name, arg_loc, is_macro)
- FILE *in; /* input file */
- FILE *out; /* output file */
- char *type_name; /* c type for return value */
- char *fn_name; /* c function to be called */
- char *arg_loc; /* LISP arg type are described here */
- int is_macro; /* true if this is a macro */
-{
- char lispfn[ident_max]; /* lisp fn name */
- char *cp; /* a temporary */
- int len; /* a string length */
-#define args_max 20
- struct {
- int index; /* table location for this type */
- int res_flag; /* is a result returned? */
- } args[args_max];
- char arg_type[ident_max]; /* the original type spec */
- char *c_type; /* c type for an argument */
- char *c_str; /* temp for a c code line */
- int argcnt = 0; /* counts arguments */
- int i; /* argument index */
- int result_flag = false; /* true if there are result parameters */
- int result_x; /* index of result type */
- char newline[line_max]; /* place to read continuation lines */
-
-
-/* printf("write_interface: %s %s %s", type_name, fn_name, arg_loc);*/
- if (*type_name == EOS || *fn_name == EOS) {
- error();
- fprintf(errfile, "Error: bad syntax, maybe missing type\n");
- return;
- }
-
- while (*arg_loc != '(' && *arg_loc != EOS) arg_loc++;
- if (*arg_loc == EOS) {
- error();
- fprintf(errfile, "Error: '(' expected after 'LISP:'\n");
- return;
- } else arg_loc++;
- if (!getarg(arg_loc, lispfn, &arg_loc)) {
- error();
- fprintf(stdout, "Error: lisp function name expected\n");
- return;
- }
- /* make it upper case: */
- for (cp = lispfn; *cp != EOS; cp++) {
- if (islower(*cp)) *cp = toupper(*cp);
- }
-
- /* save SUBR name */
- strcpy(subr_table[subr_table_x], lispfn);
- subr_table_x++;
-
- /* make lispfn lower case, dash, colon -> underscore: */
- for (cp = lispfn; *cp != EOS; cp++) {
- if (isupper(*cp)) *cp = tolower(*cp);
- if (*cp == '-' || *cp == ':') *cp = '_';
- }
-
- /* append continuation lines to arg_loc to handle multi-line specs */
- while (sindex(arg_loc, "*/") == NULL) {
- /* remove newline */
- if (strlen(arg_loc) > 0)
- arg_loc[strlen(arg_loc) - 1] = EOS;
- if (fgets(newline, line_max, in) == NULL) {
- error();
- fprintf(stdout, "Error: end of file unexpected\n");
- exit(1);
- }
- if ((strlen(arg_loc) + strlen(newline)) > (3 * line_max)) {
- error();
- fprintf(stdout,
- "Error: specification too long or missing end of comment.\n");
- exit(1);
- }
- strcat(arg_loc, newline);
- }
-
- fprintf(out, "/%c xlc_%s -- interface to C routine %s */\n/**/\n",
- '*', lispfn, fn_name);
-
- fprintf(out, "LVAL xlc_%s(void)\n{\n", lispfn);
- while (getarg(arg_loc, arg_type, &arg_loc)) {
- int result_only_flag = false;
-
- if (argcnt >= args_max) {
- error();
- fprintf(errfile,
- "Internal error: too many args, increase args_max\n");
- }
- len = strlen(arg_type);
- if (arg_type[len-1] == '*') {
- arg_type[len-1] = EOS;
- args[argcnt].res_flag = true;
- result_flag = true;
- } else if (arg_type[len-1] == '^') {
- arg_type[len-1] = EOS;
- args[argcnt].res_flag = true;
- result_flag = true;
- result_only_flag = true;
- } else args[argcnt].res_flag = false;
-
- args[argcnt].index = lookup(arg_type, 'L');
- c_type = get_lisp_ctype(args[argcnt].index);
-
- if (c_type == NULL) {
- error();
- fprintf(errfile, "Error: %s undefined, using int.\n",
- arg_type);
- c_type = "int";
- args[argcnt].index = lookup("FIXNUM", 'L');
- }
- fprintf(out, " %s arg%d = ", c_type, argcnt+1);
- if (result_only_flag) {
- fprintf(out, "%s;\n",
- get_lisp_initializer(args[argcnt].index));
- } else if (args[argcnt].index == any_index) {
- fprintf(out, "xlgetarg();\n");
- } else {
- c_str = "%s(%s());\n";
- fprintf(out,c_str,
- get_lisp_extract(args[argcnt].index),
- get_lisp_getarg(args[argcnt].index));
- }
- argcnt++;
- }
-
- if (*arg_loc != ')') {
- fprintf(errfile,
- "Warning: paren expected immediately after last arg of %s\n",
- lispfn);
- }
-
- /* check for close paren and close comment: */
- cp = sindex(arg_loc, ")");
- if (cp == NULL || sindex(cp+1, "*/") == NULL) {
- error();
- fprintf(errfile, "Warning: close paren and close comment expected\n");
- }
-
- /* lookup result type */
- result_x = lookup(type_name, 'C');
- if (result_x == 0) {
- fprintf(errfile, "Error: unknown type: %s, assuming void\n",
- type_name);
- result_x = lookup("void", 'C');
- }
-
- /* if there are result parameters then return them rather than NIL
- * when the type is void
- */
- if (get_c_special(result_x) == 'v' && result_flag) {
- fprintf(out, " LVAL result;\n");
- }
-
- if (get_c_special(result_x) != 'v') {
- /* declare result: */
- fprintf(out, " %s result;\n", type_name);
- }
-
- /* check for end of argument list: */
- fprintf(out, "\n xllastarg();\n");
-
- /* if there are results, we'll call cons, so
- * protect the result from garbage collection
- * if necessary
- */
- if (result_flag && strcmp(type_name, "LVAL") == 0) {
- fprintf(out, " xlprot1(result);\n");
- }
-
- /* call the c routine */
- if (get_c_special(result_x) != 'v') {
- fprintf(out, " result = ");
- } else fprintf(out, " ");
- fprintf(out, "%s", fn_name);
- if (!is_macro || argcnt > 0) fprintf(out, "(");
-
- /* pass arguments: */
- for (i = 0; i < argcnt; i++) {
- if (i > 0) fprintf(out, ", ");
- if (args[i].res_flag) fprintf(out, "&");
- fprintf(out, "arg%d", i+1);
- }
- if (!is_macro || argcnt > 0) fprintf(out, ")");
- fprintf(out, ";\n");
-
- /* put results (if any) on *RSLT* */
- if (result_flag) {
- int wrote_one_flag = false;
- fprintf(out, " {\tLVAL *next = &getvalue(RSLT_sym);\n");
- for (i = 0; i < argcnt; i++) {
- if (args[i].res_flag) {
- if (wrote_one_flag)
- fprintf(out, "\tnext = &cdr(*next);\n");
- wrote_one_flag = true;
- fprintf(out, "\t*next = cons(NIL, NIL);\n");
- fprintf(out, "\tcar(*next) = %s(arg%d);",
- get_lisp_makenode(args[i].index), i+1);
- }
- }
- fprintf(out, "\n }\n");
-
- /* copy *RSLT* to result if appropriate */
- if (get_c_special(result_x) == 'v') {
- fprintf(out, " result = getvalue(RSLT_sym);\n");
- }
- }
-
-
- /* generate xlpop() if there was an xlprot1() */
- if (result_flag && strcmp(type_name, "LVAL") == 0) {
- fprintf(out, " xlpop();\n");
- }
-
-
- /* now return actual return value */
- if (get_c_special(result_x) == EOS) {
- error();
- fprintf(errfile, "Warning: unknown type from C, coercing to int.\n");
- fprintf(out, " return cvfixnum((int) result);\n");
- } else if (get_c_special(result_x) == 'v' && !result_flag) {
- fprintf(out, " return NIL;\n");
- } else if (get_c_special(result_x) == 'v' && result_flag) {
- fprintf(out, " return result;\n");
- } else if (get_c_special(result_x) == 's') {
- fprintf(out, " if (result == NULL) return NIL;\n");
- fprintf(out, " else return %s(result);\n",
- get_c_conversion(result_x));
- } else {
- fprintf(out, " return %s(result);\n",
- get_c_conversion(result_x));
- }
- fprintf(out, "}\n\n\n");
-}
-
-
-/* write_postlude -- write stuff at end of file */
-/**/
-static void write_postlude(out)
- FILE *out;
-{
- /* nothing to do for version 2 */
-}
-
-
-/* write_ptrfile -- write function definition table */
-/**/
-static void write_ptrfile(pf, df)
- FILE *pf;
- FILE *df;
-{
- int n;
- char *cp;
- char cname[ident_max];
-
- for (n = 0; n < subr_table_x; n++) {
- strcpy(cname, subr_table[n]);
- /* make cname lower case, dash,colon -> underscore: */
- for (cp = cname; *cp != EOS; cp++) {
- if (isupper(*cp)) *cp = tolower(*cp);
- if (*cp == '-' || *cp == ':') *cp = '_';
- }
- fprintf(df, "extern LVAL xlc_%s(void);\n", cname);
- fprintf(pf, " { \"%s\", S, xlc_%s}, \n", subr_table[n], cname);
- }
- printf(" Add %s to localdefs.h and add %s to localptrs.h\n",
- def_file, ptr_file);
-}
-
-
-/* write_prelude -- write stuff at head of file */
-/**/
-static void write_prelude(out, out_file)
- FILE *out;
- char *out_file;
-{
- int i = 2;
- int col = strlen(out_file) + 21;
- char *s;
- fprintf(out, "/%c %s -- interface to ",
- '*', out_file);
- while ((s = cl_arg(i)) != NULL) {
- if (i > 2) {
- fprintf(out, ", ");
- col += 2;
- }
- col += strlen(s) + 2;
- if (col > 65) {
- fprintf(out, "\n * ");
- col = 4 + strlen(s) + 2;
- }
- fprintf(out, "%s", s);
- i++;
- }
- fprintf(out, " */\n\n%cifndef mips\n%cinclude \"stdlib.h\"\n", '#', '#');
- fprintf(out, "%cendif\n%cinclude \"xlisp.h\"\n\n", '#', '#');
-#ifdef S_TRUE
- fprintf(out, "extern LVAL s_true;\n");
- fprintf(out, "%cdefine cvboolean(i) ((i) ? s_true : NIL)\n", '#');
-#else
- fprintf(out, "extern LVAL true;\n");
- fprintf(out, "%cdefine cvboolean(i) ((i) ? true : NIL)\n", '#');
-#endif
-
- fprintf(out, "%c%s\n",
- '#',
- "define testarg2(e) (moreargs() ? (e) : (getflonum(xltoofew())))");
-
- fprintf(out, "%c%s\n%s\n%s\n",
- '#',
- "define xlgaanynum() (floatp(*xlargv) ? getflonum(nextarg()) : \\",
- " (fixp(*xlargv) ? (double) getfixnum(nextarg()) : \\",
-/* note: getflonum never gets called here, but this makes typechecking happy */
- " getflonum(xlbadtype(*xlargv))))");
-
- fprintf(out, "%cdefine getboolean(lval) ((lval) != NIL)\n\n", '#');
- fprintf(out, "extern LVAL RSLT_sym;\n\n\n");
-}
diff --git a/lib-src/libnyquist/misc/intgen_win32/intgen.dsp b/lib-src/libnyquist/misc/intgen_win32/intgen.dsp
deleted file mode 100644
index 4e485c9..0000000
--- a/lib-src/libnyquist/misc/intgen_win32/intgen.dsp
+++ /dev/null
@@ -1,112 +0,0 @@
-# Microsoft Developer Studio Project File - Name="intgen" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Console Application" 0x0103
-
-CFG=intgen - Win32 Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE
-!MESSAGE NMAKE /f "intgen.mak".
-!MESSAGE
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE
-!MESSAGE NMAKE /f "intgen.mak" CFG="intgen - Win32 Debug"
-!MESSAGE
-!MESSAGE Possible choices for configuration are:
-!MESSAGE
-!MESSAGE "intgen - Win32 Release" (based on "Win32 (x86) Console Application")
-!MESSAGE "intgen - Win32 Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-RSC=rc.exe
-
-!IF "$(CFG)" == "intgen - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "WinRel"
-# PROP Intermediate_Dir "WinRel"
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-
-!ELSEIF "$(CFG)" == "intgen - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug"
-# PROP BASE Intermediate_Dir "Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "WinDebug"
-# PROP Intermediate_Dir "WinDebug"
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
-# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "..\..\sys\win\msvc" /I "..\..\cmt" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-
-!ENDIF
-
-# Begin Target
-
-# Name "intgen - Win32 Release"
-# Name "intgen - Win32 Debug"
-# Begin Group "Source Files"
-
-# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
-# Begin Source File
-
-SOURCE=..\cmdline.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\intgen2.c
-# End Source File
-# End Group
-# Begin Group "Header Files"
-
-# PROP Default_Filter "h;hpp;hxx;hm;inl"
-# Begin Source File
-
-SOURCE=..\cmdline.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\sys\win\msvc\switches.h
-# End Source File
-# End Group
-# Begin Group "Resource Files"
-
-# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
-# End Group
-# End Target
-# End Project
diff --git a/lib-src/libnyquist/misc/makefile.lsp b/lib-src/libnyquist/misc/makefile.lsp
deleted file mode 100644
index 11a3e3c..0000000
--- a/lib-src/libnyquist/misc/makefile.lsp
+++ /dev/null
@@ -1,550 +0,0 @@
-;; makefile.lsp -- builds makefiles for various machine types
-
-(setf system-types '(rs6k next pmax sparc sgi linux))
-
-(if (not (boundp 'system-type)) (setf system-type nil))
-(if (not (boundp 'target-file)) (setf target-file "ny"))
-
-(format t "System types: ~A~%" system-types)
-(format t "Current type: ~A~%" system-type)
-(format t "Current target: ~A~%" target-file)
-(format t "~%Instructions: (run from top nyquist directory)~%")
-(format t "Choose a system from the list above by typing:~%")
-(format t "\t(setf system-type '<a system type>)~%")
-(format t "Override the executable name or location by:~%")
-(format t "\t(setf target-file \"unix-path-name/ny\")~%")
-(format t "To build the Makefile, type:~%")
-(format t "\t(makefile)~%")
-(format t "To make Makefiles for all system types, type:~%")
-(format t "\t(makeall)~%")
-
-;(format t "To build the Makesrc file, type:~%")
-;(format t "\t(makesrc)~%")
-;(format t
-;"Note: Makesrc is used to update sources from other directories.
-; It isn't necessary if you got the sources from the normal
-; .tar file release of Nyquist
-;")
-
-
-(setf xlfiles '("extern" "xldmem"
- "xlbfun" "xlcont" "xldbug" "xleval"
- "xlfio" "xlftab" "xlglob" "xlimage" "xlinit" "xlio" "xlisp"
- "xljump" "xllist" "xlmath" "xlobj" "xlpp" "xlprin" "xlread"
- "xlstr" "xlsubr" "xlsym" "xlsys"))
-
-(setf xlfiles-h '("osdefs" "osptrs" "xldmem" "xlisp" "extern"))
-
-(setf xlfiles-lsp '("xlinit" "misc" "evalenv" "printrec"))
-
-(setf nyqfiles '("debug" "falloc" "add" "local"
- "downsample" "handlers" "multiread" "multiseq" "samples"
- "seqext" "seqinterf" "sndread" "sndseq"
- "sndwrite" "sndmax" "sound" "stats" "compose" "inverse"
- "resamp" "resampv" "ffilterkit" "avg" "fft" "sndfail"))
-
-(setf fftfiles '("fftn"))
-
-; note: audio<sys> and snd<sys> will be prepended to this list, e.g.
-; the strings "audiooss" and "sndlinux" will be added for linux systems
-;
-(defun init-sndfiles ()
- (setf sndfiles '("ieeecvt" "snd" "sndcvt" "sndio" "sndheader"))
- (setf sndfiles-lsp '("snd")))
-
-(init-sndfiles)
-
-(setf depends-exceptions '(
- ("nyqsrc/handlers" "")
- ("nyqsrc/sndfail" "")
- ("nyqsrc/local" "xlisp/xlisp.h nyqsrc/sound.h")
- ("nyqsrc/stats" "nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h")
- ("snd/sndcvt" "snd/snd.h")
- ("snd/sndio" "snd/snd.h")
- ("snd/audiors6k" "snd/snd.h")
- ("snd/audionext" "snd/snd.h")
- ("snd/audiosgi" "snd/snd.h")
- ("snd/audiopmax" "snd/snd.h")
- ("snd/audiosparc" "snd/snd.h")
- ("snd/audiolinux" "snd/snd.h")
- ("snd/audiooss" "snd/snd.h")
- ("nyqsrc/sndfnint" "") ; sparc needs explicit rule for sndfnint.o
- ("nyqsrc/seqfnint" "") ; ditto for seqfnint.o
-))
-
-(setf nyqfiles-lsp '("init" "nyquist" "seqmidi" "seq" "makefile" "update" "transfiles" "examples" "nyinit"))
-
-(setf system-types-as-strings (mapcar #'string-downcase
- (mapcar #'symbol-name system-types)))
-(setf nyqfiles-lsp (append nyqfiles-lsp system-types-as-strings))
-
-(setf nyqfiles-h '("localdefs" "localptrs" "seqdecls" "cque" "switches"))
-
-(setf intfiles '("sndfnint" "seqfnint"))
-
-(setf extrafiles nil)
-;(dolist (m system-types)
-; (push (strcat "Makefile."
-; (string-downcase (symbol-name m)))
-; extrafiles))
-(push "export" extrafiles)
-(push "README" extrafiles)
-(push "howtorelease.doc" extrafiles)
-
-(setf cmtfiles '("cext" "cleanup" "cmdline" "cmtcmd"
- "moxc" "mem" "midifile" "midifns" "record"
- "seq" "seqmread" "seqmwrite" "seqread" "seqwrite" "tempomap"
- "timebase" "userio")) ; "midimgr" - removed by RBD
-
-(setf cmtfiles-h '("mfmidi" "midicode" "midierr" "musiprog"
- "pitch" "swlogic" "hash" "hashrout" "io" "midibuff"))
-
-
-;; MAKEALL - makes all makefiles and copies them to nyqsrc
-;;
-;; run this in nyquist/src
-;;
-(defun makeall ()
-; (makesrc)
-; (system "cp -p Makesrc nyqsrc")
- (dolist (m system-types)
- (setf system-type m)
- (setf m (string-downcase (symbol-name m)))
- (init-sndfiles)
- (makefile)))
-
-
-;; MAKE-AUDIO-NAME -- (strcat "audio" system-name)
-(defun make-audio-name (system-name)
- (cond ((eq system-type 'linux)
- "audiooss")
- (t (strcat "audio" system-name))))
-
-;; MAKE-SND-NAME -- (strcat "audio" system-name)
-(defun make-snd-name (system-name)
- (strcat "snd" system-name))
-
-
-;; MAKEFILE - creates a Makefile from a list of sources
-;;
-;; reads sources from nyqfiles.txt
-(defun makefile ()
- (let (system-name outf outf-name)
- (load "misc/transfiles.lsp") ; just to make sure we're current
- (while (null system-type)
- (format t "Write Makefile for what system? One of:~A~%" system-types)
- (setf system-type (read))
- (cond ((not (member system-type system-types))
- (format t "Unknown system type.~%")
- (setf system-type nil))))
- (setf system-name (string-downcase
- (symbol-name system-type)))
- (setf outf-name (strcat "sys/unix/" system-name "/Makefile"))
- (format t "Opening for output: ~A\n" outf-name)
- (setf outf (open outf-name :direction :output))
- (setf sndfiles (cons (make-audio-name system-name)
- (cons (make-snd-name system-name) sndfiles)))
- (format outf
- "#
-# Makefile for Nyquist, SYSTEM-TYPE is ~A
-# run make in the top-level Nyquist directory to compile Nyquist
-#
-# NOTE: this file is machine-generated. DO NOT EDIT!
-# Instead, modify makefile.lsp and regenerate the makefile.
-# Ports and bug fixes are welcome - please mail them to
-# dannenberg at cs.cmu.edu. Thanks.
-#
-
-# This is the resulting executable (normally \"ny\"):
-NY = ~A
-
-# Standard list of includes (common to all unix versions)
-INCL = -Inyqsrc -Itran -Ixlisp -Isys/unix -Icmt -Isnd -Ifft
-
-# system dependent stuff for ~A:
-~A
-
-INTGEN = misc/intgen
-
-# Object files for Nyquist:
-" system-type target-file system-name (system-defs))
-
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- (object-files outf)
- (format outf "# Sound functions to add to xlisp~%")
- (nyqheaders outf)
- (cmtheaders outf)
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-
- (format outf "
-EVERYTHING = $(NY) runtime/system.lsp
-
-CURRENT = $(EVERYTHING)
-
-current: $(CURRENT)
-
-$(NY): $(OBJECTS)
-\t$(LN) $(OBJECTS) $(LFLAGS) -o $(NY)
-
-# copy appropriate system.lsp and make it read-only;
-# changes should be made to sys/unix/<system>/system.lsp
-runtime/system.lsp: sys/unix/~A/system.lsp
-\tchmod +w runtime/system.lsp
-\tcp -p sys/unix/~A/system.lsp runtime/system.lsp
-\tchmod -w runtime/system.lsp
-
-" system-name system-name)
-
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- (dependencies outf system-name)
- (format outf (system-rules))
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- (format outf
- "misc/intgen: misc/intgen.c
-\tcd misc; make intgen
-
-misc/unpacker: misc/unpacker.c misc/convert.c
-\tcd misc; make unpacker
-
-misc/packer: misc/packer.c misc/convert.c
-\tcd misc; make packer
-
-nyqsrc/sndfnintptrs.h: $(NYQHDRS) snd/snd.h misc/intgen
-\t$(INTGEN) nyqsrc/sndfnint $(NYQHDRS)
-
-nyqsrc/seqfnintptrs.h: $(CMTHDRS) misc/intgen
-\t$(INTGEN) nyqsrc/seqfnint $(CMTHDRS)
-
-clean:
-\tcd misc; make clean
-\trm -f $(OBJECTS)
-# Note that these files are machine-generated:
-\trm -f nyqsrc/sndfnintptrs.h nyqsrc/sndfnint.c nyqsrc/sndfnintdefs.h
-\trm -f nyqsrc/seqfnintptrs.h nyqsrc/seqfnint.c nyqsrc/seqfnintdefs.h
-
-cleaner: clean
-\tcd misc; make cleaner
-\trm -f *.backup */*.backup
-\trm -f *~~ */*.*~~
-\trm -f *.save */*.save
-\trm -f *.CKP */*.CKP
-\trm -f *.BAK */*.BAK
-\trm -f *.old */*.old
-\trm -f *.gold */*.gold
-\trm -f playparms
-\trm -f points.dat
-")
-
- (cond ((eq system-type 'rs6k)
- (format outf "
-tar: cleaner
-\tsh -v sys/unix/cmu/tar.script
-
-backup: cleaner
-\tsh -v sys/unix/cmu/backup.script
-")))
- (close outf)
- ))
-
-
-
-;; system-defs looks for a string of system-dependent defs for the makefile
-;;
-(defun system-defs () (system-var "-DEFS"))
-
-
-;; system-rules looks for a string of system-dependent rules for the makefile
-;;
-(defun system-rules () (system-var "-RULES"))
-
-
-;; system-var returns a string stored in the variable (if any):
-;; <system-type>-<suffix>
-;;
-(defun system-var (suffix)
- (let ((v (intern (strcat (symbol-name system-type) suffix))))
- (cond ((boundp v) (symbol-value v))
- (t ""))))
-
-
-;; object-files - writes names of all object files for linking
-;;
-(defun object-files (outf)
- (let ((flist (append (add-prefix "xlisp/" xlfiles)
- (add-prefix "tran/" transfiles)
- (add-prefix "cmt/" cmtfiles)
- (add-prefix "nyqsrc/" nyqfiles)
- (add-prefix "fft/" fftfiles)
- (add-prefix "nyqsrc/" intfiles)
- (add-prefix "snd/" sndfiles)
- '("sys/unix/osstuff" "sys/unix/term"))))
- (setf flist (add-suffix flist ".o"))
- (format outf "OBJECTS = ")
- (write-file-list outf flist)))
-
-
-;; add-prefix - place string at beginning of each string in list
-;;
-(defun add-prefix (prefix lis)
- (mapcar #'(lambda (str) (strcat prefix str)) lis))
-
-
-;; add-suffix - place string at end of each string in list
-;;
-(defun add-suffix (lis suffix)
- (mapcar #'(lambda (str) (strcat str suffix)) lis))
-
-
-;; write-file-list - write file names to Make macro
-;;
-(defun write-file-list (outf flist)
- (while flist
- (dotimes (i 4)
- (format outf "~A " (car flist))
- (setf flist (cdr flist))
- (if (null flist) (return)))
- (if flist (format outf " \\~%\t")))
- (format outf "~%~%"))
-
-
-(defun nyqheaders (outf)
- (let ((flist (append
- (list "snd/snd")
- (add-prefix "nyqsrc/"
- '("sound" "downsample" "sndread" "sndseq" "add"
- "multiseq" "samples" "sndwrite" "sndmax" "compose"
- "inverse" "resamp" "resampv" "fft" "avg"))
- (add-prefix "tran/" transfiles))))
- (setf flist (mapcar #'(lambda (f) (strcat f ".h")) flist))
- (format outf "NYQHDRS = ")
- (write-file-list outf flist)))
-
-
-(defun cmtheaders (outf)
- (let ((flist
- (append '("cmt/seqdecls" "nyqsrc/seqext" "cmt/seq"
- "nyqsrc/seqinterf") ; order is important here!
- (add-prefix "cmt/"
- '("seqread" "seqmread" "seqwrite" "seqmwrite")))))
- (setf flist (add-suffix flist ".h"))
- (format outf "CMTHDRS = ")
- (write-file-list outf flist)))
-
-
-(defun dependencies (outf system-name)
- ;; this forces generation of sndfnintdefs.h, seqfnintdefs.h:
- (dolist (f (append (add-prefix "nyqsrc/" nyqfiles)
- (add-prefix "snd/" sndfiles)
- (add-prefix "fft/" fftfiles)
- (add-prefix "tran/" transfiles)
- (add-prefix "nyqsrc/" intfiles)))
- (let ((ex (assoc f depends-exceptions :test #'equal)))
- (cond ((and ex (cdr ex))
- (format outf "~A.o: ~A.c ~A~%" f f (cadr ex))
- (format outf "\tcc -c ~A.c -o ~A.o $(CFLAGS)~%~%" f f))
- (t
- (format outf "~A.o: ~A.c ~A.h nyqsrc/sound.h nyqsrc/falloc.h nyqsrc/cque.h~%"
- f f f)
- (format outf "\tcc -c ~A.c -o ~A.o $(CFLAGS)~%~%" f f)))))
-
- (format outf "xlisp/xlftab.o: nyqsrc/sndfnintptrs.h nyqsrc/sndfnintdefs.h")
- (format outf " nyqsrc/seqfnintptrs.h nyqsrc/seqfnintdefs.h~%")
- (format outf "\tcc -c xlisp/xlftab.c -o xlisp/xlftab.o $(CFLAGS)~%~%")
- (dolist (f (append (add-prefix "xlisp/" xlfiles)
- (add-prefix "cmt/" cmtfiles)
- '("sys/unix/osstuff")))
- (cond ((and (not (equal f "xlisp/xlftab")) ; special case handled above
- (not (and (equal f "xlisp/xljump") ; case handled below
- (equal system-name "next"))))
- (format outf "~A.o: ~A.c~%\tcc -c ~A.c -o ~A.o $(CFLAGS)~%~%"
- f f f f)))))
-
-
-;; MAKESRC -- makes the Makesrc file
-;;
-(defun makesrc ()
- (let (outf)
- (load "misc/transfiles.lsp") ; just to make sure we're current
- (format t "Writing Makesrc\n")
- (setf outf (open "Makesrc" :direction :output))
- (format outf "#
-# FILE: Makefile to import sources
-#
-# usage: make -f Makesrc
-#
-# I want to be able to keep sources separate from objects, e.g. the
-# MIDI sequence code comes from the CMU MIDI Toolkit, and XLisp should
-# be compile-able without Nyquist.
-#
-# There are tools to do this, but I don't expect to find the same tool
-# everywhere Nyquist is ported, so I'm taking this simple path.
-
-# Source Paths:
-NYQ = nyqsrc
-CMT = cmt
-XLISP = xlisp
-TRANS = tran
-SND = snd
-
-EVERYTHING: sources
-
-")
- (source-files outf)
- (format outf "
-#
-# XLISP SOURCES
-#
-")
- (source-depends outf xlfiles ".c" "XLISP")
- (source-depends outf xlfiles-h ".h" "XLISP")
- (source-depends outf xlfiles-lsp ".lsp" "XLISP")
-
- (format outf "
-#
-# NYQUIST SOURCES
-#
-")
- (source-depends outf nyqfiles ".c" "NYQ")
- (source-depends outf (exceptions-filter nyqfiles) ".h" "NYQ")
- (source-depends outf nyqfiles-h ".h" "NYQ")
- (source-depends outf nyqfiles-lsp ".lsp" "NYQ")
- (source-depends outf extrafiles "" "NYQ")
-
- (format outf "
-#
-# CMT SOURCES
-#
-")
- (source-depends outf cmtfiles ".c" "CMT")
- (source-depends outf (exceptions-filter cmtfiles) ".h" "CMT")
- (source-depends outf cmtfiles-h ".h" "CMT")
-
- (format outf "
-#
-# TRANS SOURCES
-#
-")
- (source-depends outf transfiles ".c" "TRANS")
- (source-depends outf transfiles ".h" "TRANS")
-
- (format outf "
-#
-# SND SOURCES
-#
-")
- (source-depends outf sndfiles ".c" "SND")
- (source-depends outf sndfiles ".h" "SND")
-
- (close outf)))
-
-
-;; SOURCE-FILES -- writes the sources: list to Makesrc
-;;
-(defun source-files (outf)
- (setf flist (append xlfiles nyqfiles fftfiles cmtfiles transfiles sndfiles))
- (setf flist-h (append xlfiles-h nyqfiles-h cmtfiles-h transfiles))
- ; Add .c files as .h files unless exceptions list indicates there is
- ; no .h file:
- (setf flist-h (append (exceptions-filter nyqfiles)
- (exceptions-filter cmtfiles)
- (exceptions-filter sndfiles)
- flist-h))
- (setf flist-lsp (append xlfiles-lsp nyqfiles-lsp sndfiles-lsp))
- (setf flist (mapcar #'(lambda (f) (strcat f ".c")) flist))
- (setf flist-h (mapcar #'(lambda (f) (strcat f ".h")) flist-h))
- (setf flist-lsp
- (mapcar #'(lambda (f) (strcat f ".lsp")) flist-lsp))
- (format outf "sources: ")
- (write-file-list outf (append flist flist-h flist-lsp extrafiles)))
-
-
-;; EXCEPTIONS-FILTER - remove .h files from list
-; the depends-exceptions tells whether a .h file exists for a .c file
-;;
-(defun exceptions-filter (files)
- (let (result)
- (dolist (f files)
- (let ((ex (assoc f depends-exceptions :test #'equal)))
- (cond (ex
- (if (and (cdr ex)
- (string-search (strcat f ".h") (cadr ex)))
- (push f result)))
- (t (push f result)))))
- result))
-
-
-;; SOURCE-DEPENDS -- write dependency for source files
-;;
-(defun source-depends (outf files ext dir)
- (dolist (f files)
- (let ((fname (strcat f ext)))
- (format outf
- "~A: $(~A)/~A~%\trm -f ~A~%\tcp -p $(~A)/~A .~%\tchmod -w ~A~%~%"
- fname dir fname fname dir fname fname))))
-
-
-;;===================================================
-;; SYSTEM DEPENDENCIES
-;;===================================================
-
-(setf rs6k-defs "
-MIDI = /afs/cs/project/music/rs6k/midilib
-CC = cc
-# change -g to -O for optimization
-CFLAGS = -DCMTSTUFF -g $(INCL) -I$(MIDI)
-XFLAGS = $(CFLAGS) -qlanglvl=extended
-LN = xlc -qattr -qlist
-LFLAGS = -lm -L$(MIDI) -lmidi -lbsd -lg
-")
-
-
-(setf next-defs "
-CC = cc
-CFLAGS = -DCMTSTUFF -O $(INCL)
-LN = cc
-LFLAGS = -lm
-")
-
-(setf next-rules "
-# this doesn't compile with the -O switch (a NeXT compiler bug?)
-xlisp/xljump.o : xlisp/xljump.c xlisp/xlisp.h
-\t$(CC) -DCMTSTUFF -c xlisp/xljump.c -o xlisp/xljump.o
-")
-
-(setf pmax-defs "
-CC = cc
-CFLAGS = -DCMTSTUFF -g $(INCL)
-LN = cc
-LFLAGS = -lm
-")
-
-
-(setf sgi-defs "
-CC = cc
-CFLAGS = -DCMTSTUFF -g $(INCL)
-LN = cc
-LFLAGS = -lm
-# you would need -lmd if UNIX_IRIX_MIDIFNS were defined in midifns.c
-")
-
-
-(setf sparc-defs "
-CC = gcc
-CFLAGS = -DCMTSTUFF -g $(INCL)
-LN = $(CC)
-LFLAGS = -lm
-")
-
-(setf linux-defs "
-CC = gcc
-CFLAGS = -DCMTSTUFF -O2 $(INCL)
-LN = $(CC)
-LFLAGS = -lm
-")
-
-
-
-
-
-
-
diff --git a/lib-src/libnyquist/misc/packer.c b/lib-src/libnyquist/misc/packer.c
deleted file mode 100644
index ffd89fa..0000000
--- a/lib-src/libnyquist/misc/packer.c
+++ /dev/null
@@ -1,311 +0,0 @@
-/* packer -- a program to pack a list of files into one */
-
-/* The input is a file with one line per file to be packed.
- Each line starts with either 'a' or 'b' for ascii or binary.
- The second character is a space or tab (it's ignored).
- The third character to the end of the line is the file to be packed.
-
- The encoding is as follows:
- A file starts with '!' for ascii or '#' for binary in column one.
- The remainder of the line is a file name/path.
- Ascii files have a special character in column 1:
- 'A'-'~' indicates 0 to n blanks. Leading Tabs are converted to blanks
- and included in this count.
- '0'-'9' indicates 0 to 9 blank lines (always followed by an additional newline).
- Otherwise, all characters are just copied to output except:
- '$' is an escape character:
- $$ indicates $,
- $@ through $_ indicate 0x00 through 0x1F,
- $\n indicates an empty string (useful for avoiding long lines on output)
- After $\n, the following character is not treated specially even though
- it is in column 1.
-
- Should we be doing more to compress files? It looks like the special
- handling of leading blanks compresses files about 4%. This is not much,
- but the encoding allows us to put markers (! and #) in column 1 to
- separate files. Originally, leading blank handling also converted between
- 8 and 4 character tab stops, but you can no longer assume tab stops under,
- say, Windows, are 8 characters wide. Source files should not have
- tabs.
-
- Further simple encoding such as run-length encoding and word
- substitution doesn't buy too much and was deemed not worth the effort.
- Run-length encoding seems to buy another couple of percent.
- Substitution for common words like int, print, return, the, register,
- etc. buys maybe .5% per word, but it seems unlikely this will buy
- more than a total of 10%, so we're looking at a max of 15% to 20%
- compression without starting to huffman encode at the bit level.
-
- For binary files, every 3 bytes are used to form a 24-bit number which is
- split into 4 fields of 6 bits. Each field is encoded by adding ascii '0'.
- If only one or two bytes are left at the end of the file, the encoding is
- as if zeros were appended to the file, but only 2 or 3 ascii characters
- (instead of the usual 4) are output. The ascii file encoding is terminated
- with a period ('.'). Newlines are inserted to keep line lengths down but
- should be ignored by the reader.
- */
-
-
-#include "switches.h"
-#include "stdlib.h"
-#include "string.h"
-#include "cext.h"
-#include "convert.h"
-/* since we aren't using the cleanup package, expose exit(): */
-#undef exit
-
-#include "stdio.h"
-#ifdef MACINTOSH
-#include "console.h"
-#endif
-
-#define EOS 0
-
-#define string_max 500
-
-void pack_newline();
-void pack_ascii();
-void pack_binary();
-void put_binary();
-
-/* main -- pack a list of files */
-/**/
-int main(argc, argv)
- int argc;
- char *argv[];
-{
- FILE *inf; /* input file: a list of file names to pack */
- FILE *outf; /* the packed output */
- char filename[string_max]; /* holds names of input files */
- char convname[string_max]; /* filename converted to local syntax */
- int base = 1;
-#ifdef MACINTOSH
- argc = ccommand(&argv);
-#endif
- if (argc != 3 && argc != 4) {
- fprintf(stderr, "Usage: packer [-p] input-list-file output-file\n");
- exit(1);
- }
- if (argc == 4) {
- base = 2;
- if (strcmp(argv[1], "-p") == 0) {
- pauseflag = 1;
- } else {
- fprintf(stderr, "Expected \"-p\" as 1st argument.\n");
- exit(1);
- }
- }
- inf = fopen(argv[base], "r");
- if (!inf) {
- fprintf(stderr, "Couldn't open |%s|\n", argv[base]);
- exit(1);
- }
- outf = fopen(argv[base+1], "w");
- if (!outf) {
- fclose(inf);
- fprintf(stderr, "Couldn't open |%s|\n", argv[base + 1]);
- exit(1);
- }
- printf("Using tab width of %d\n", TAB_WIDTH);
- while (fgets(filename, string_max, inf)) {
- filename[strlen(filename) - 1] = EOS; /* remove newline at end */
- if (filename[0] == EOS) continue; /* skip blank lines */
- puts(filename);
- strcpy(convname, filename + 2);
- convert(convname);
- if (filename[0] == 'a') pack_ascii(filename + 2, convname, outf);
- else if (filename[0] == 'b') pack_binary(filename + 2, convname, outf);
- else {
- fprintf(stderr, "Bad file spec (expecting a or b in col 1): %s\n",
- filename);
- if (PAUSE) getchar();
- }
-
- }
- fclose(outf);
- fclose(inf);
- return 0;
-}
-
-
-/* pack_ascii -- open filename and append its encoding to outf */
-/**/
-void pack_ascii(filename, convname, outf)
- char *filename;
- char *convname;
- FILE *outf;
-{
- int line_len = 0;
- int c;
- FILE *inf;
-
- inf = fopen(convname, "r");
- /* printf("opened %lx\n", inf); */
- if (!inf) {
- fprintf(stderr, "Couldn't open |%s| - skipped\n", convname);
- if (PAUSE) getchar();
- return;
- }
- fprintf(outf, "!%s\n", filename);
-
- pack_newline(inf, outf, &line_len);
- while ((c = getc(inf)) != EOF) {
- if (c > 127) {
- fprintf(stderr, "non-ascii char 0x%x in %s.\n", c, convname);
- exit(1);
- } else if (c == '\n') {
- putc(c, outf);
- line_len = 0;
- pack_newline(inf, outf, &line_len);
- } else if (c == '$') {
- putc('$', outf);
- putc('$', outf);
- line_len += 2;
- } else if (c < 32) {
- putc('$', outf);
- putc('@' + c, outf);
- line_len += 2;
- } else {
- putc(c, outf);
- line_len++;
- }
- if (line_len > 70) {
- putc('$', outf);
- putc('\n', outf);
- line_len = 0;
- }
- }
- if (line_len) {
- fprintf(stderr, "missing newline added to the end of %s\n", convname);
- putc('\n', outf);
- if (PAUSE) getchar();
- }
- /* printf("closing %lx\n", inf); */
- fclose(inf);
-}
-
-
-/* pack_binary -- open binary filename and append its encoding to outf */
-/**/
-void pack_binary(filename, convname, outf)
- char *filename;
- char *convname;
- FILE *outf;
-{
- int line_len = 0;
- int c;
- long data;
- int n;
- FILE *inf;
- boolean isbinary = false;
-
- inf = fopen(convname, "rb");
- /* printf("opened %lx\n", inf); */
- if (!inf) {
- fprintf(stderr, "Couldn't open |%s| - skipped\n", convname);
- if (PAUSE) getchar();
- return;
- }
- fprintf(outf, "#%s\n", filename);
-
- n = 0;
- data = 0;
- while ((c = getc(inf)) != EOF) {
- if (c > 127) isbinary = true;
- data = (data << 8) | c;
- n++;
- if (n == 3) {
- put_binary(data, outf);
- n = 0;
- data = 0;
- line_len += 4;
- if (line_len >= 70) {
- putc('\n', outf);
- line_len = 0;
- }
- }
- }
- if (n == 1) {
- data = data << 16;
- putc('0' + ((data >> 18) & 0x3F), outf);
- putc('0' + ((data >> 12) & 0x3F), outf);
- }
- if (n == 2) {
- data = data << 8;
- putc('0' + ((data >> 18) & 0x3F), outf);
- putc('0' + ((data >> 12) & 0x3F), outf);
- putc('0' + ((data >> 6) & 0x3F), outf);
- }
- putc('.', outf);
- putc('\n', outf);
- if (!isbinary) {
- fprintf(stderr, "%s seems to be an ascii file.\n", convname);
- if (PAUSE) getchar();
- }
- /* printf("closing %lx\n", inf); */
- fclose(inf);
-}
-
-
-/* pack_newline -- newline sequence encoding to outf */
-/**/
-void pack_newline(inf, outf, line_len)
- FILE *inf; /* input file */
- FILE *outf; /* where to write output */
- int *line_len;
-{
- int c;
- int count = 0;
- int outc;
-
- while (((c = getc(inf)) != EOF) && (c == '\n')) {
- count++;
- }
- while (count >= 10) {
- fprintf(outf, "9\n");
- *line_len = 0;
- count -= 10;
- }
- if (count > 0) {
- fprintf(outf, "%c\n", '0' + count - 1);
- *line_len = 0;
- }
-
- /* now run-length encode leading blanks... */
- count = 0;
- while (c != EOF) {
- if (c == ' ') count++;
- /* we no longer convert tabs to spaces...
- else if (c == '\t') count += TAB_WIDTH;
- */
- else break;
- c = getc(inf);
- }
- if (c != EOF || count) {
- outc = 'A' + count;
- if (outc > '~') outc = '~';
- putc(outc, outf);
- (*line_len) += 1;
- count -= (outc - 'A');
- while (count > 0) {
- putc(' ', outf);
- (*line_len) += 1;
- count--;
- }
- }
- /* now do the rest of the line */
- if (c != EOF) ungetc(c, inf);
-}
-
-
-/* put_binary -- write 3 binary bytes as 4 ascii bytes */
-/**/
-void put_binary(data, outf)
- long data;
- FILE *outf;
-{
- putc('0' + ((data >> 18) & 0x3F), outf);
- putc('0' + ((data >> 12) & 0x3F), outf);
- putc('0' + ((data >> 6) & 0x3F), outf);
- putc('0' + (data & 0x3F), outf);
-}
diff --git a/lib-src/libnyquist/misc/packer.dsp b/lib-src/libnyquist/misc/packer.dsp
deleted file mode 100644
index e74e028..0000000
--- a/lib-src/libnyquist/misc/packer.dsp
+++ /dev/null
@@ -1,108 +0,0 @@
-# Microsoft Developer Studio Project File - Name="packer" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Console Application" 0x0103
-
-CFG=packer - Win32 Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE
-!MESSAGE NMAKE /f "packer.mak".
-!MESSAGE
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE
-!MESSAGE NMAKE /f "packer.mak" CFG="packer - Win32 Debug"
-!MESSAGE
-!MESSAGE Possible choices for configuration are:
-!MESSAGE
-!MESSAGE "packer - Win32 Release" (based on "Win32 (x86) Console Application")
-!MESSAGE "packer - Win32 Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-RSC=rc.exe
-
-!IF "$(CFG)" == "packer - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "packer_Release"
-# PROP Intermediate_Dir "packer_Release"
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-
-!ELSEIF "$(CFG)" == "packer - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "packer___Win32_Debug"
-# PROP BASE Intermediate_Dir "packer___Win32_Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "packer_Debug"
-# PROP Intermediate_Dir "packer_Debug"
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
-# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "..\cmt" /I "..\sys\win\msvc" /I "../cmt" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-
-!ENDIF
-
-# Begin Target
-
-# Name "packer - Win32 Release"
-# Name "packer - Win32 Debug"
-# Begin Group "Source Files"
-
-# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
-# Begin Source File
-
-SOURCE=..\..\nyquist21\misc\convert.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\nyquist21\misc\packer.c
-# End Source File
-# End Group
-# Begin Group "Header Files"
-
-# PROP Default_Filter "h;hpp;hxx;hm;inl"
-# Begin Source File
-
-SOURCE=..\..\nyquist21\misc\convert.h
-# End Source File
-# End Group
-# Begin Group "Resource Files"
-
-# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
-# End Group
-# End Target
-# End Project
diff --git a/lib-src/libnyquist/misc/play.c b/lib-src/libnyquist/misc/play.c
deleted file mode 100644
index 19bfac6..0000000
--- a/lib-src/libnyquist/misc/play.c
+++ /dev/null
@@ -1,90 +0,0 @@
-/*
-
- A cheap command to play sample files to the D/A's.
- The sample files should have no headers. They can be
- eight or sixteen bits, with one or two channels.
- Sample rate is eigher 44.1 or 22.05.
-
- NOTE: samples brought from the VAX may have byte order
- reversed. Use "dd conv=swab" to fix this.
-
- William Walker, University of Illinois, 27 January 1989
- (walker at m.cs.uiuc.edu)
-*/
-
-#include <stdio.h>
-#include <sound/sound.h>
-#define THESIZE 3000000
-
-
-#include "args.h"
-
-#define TAG 9839283
-
-main(argc, argv)
-char **argv;
-{
- int srate = SND_RATE_LOW;
- int nchannels = 1;
- int again = 1;
- int i;
- SNDSoundStruct *cow;
- FILE *data;
-
- ARGLOOP
- FLAGARG('h') srate = SND_RATE_HIGH; ENDFLAGARG
- FLAGARG('s') nchannels = 2; ENDFLAGARG
- STRINGARG('r') srate = atoi(p); ENDSTRINGARG
- FLAGARG('o') again = 0; ENDFLAGARG
-
- BADARG
- fprintf(stderr, "unknown option %c\n", *p);
- goto error;
- ENDBADARG
- ENDARGLOOP
-
- if (argc != 1) goto error;
-
- cow = (SNDSoundStruct *) malloc(THESIZE);
-
- /* these fields should probably be invariant: */
- cow->magic = SND_MAGIC;
- cow->dataLocation = sizeof(SNDSoundStruct);
- cow->dataSize = 0;
- cow->dataFormat = SND_FORMAT_LINEAR_16;
- cow->samplingRate = srate;
- cow->channelCount = nchannels;
-
- printf("%d Hz sample rate, %d channels\n",
- cow->samplingRate,
- nchannels);
-
-
- do {
- data = fopen(argv[0],"r");
- if (data == NULL) { printf("play: fopen error\n"); exit(1); }
- printf("Read %d bytes\n",cow->dataSize = fread((char *)cow+sizeof(SNDSoundStruct),1,THESIZE-sizeof(SNDSoundStruct),data));
- fclose(data);
-
- /* printf("Reserve sound for playing (%d)\n",SNDReserve()); */
- printf("Play (%d)\n", SNDStartPlaying(cow,TAG,0,0,(SNDNotificationFun)NULL,(SNDNotificationFun)NULL));
- printf("Wait for played sound (%d)\n",SNDWait(TAG));
- /* printf("Query played sound (%d)\n",SNDQueryPlayedSound()); */
- /* printf("Unreserve sound for playing (%d)\n",SNDUnreserveSoundForPlaying()); */
- if(again) {
- char line[100];
- printf("Again? [y] ");
- gets(line);
- if(line[0] != 'y' && line[0] != 'Y' && line[0] != '\0')
- again = 0;
- }
- } while( again );
- exit(0);
-error:
- fprintf(stderr, "\nUsage: play [ -h ] [ -s ] [ -o ] file\n\n");
- fprintf(stderr, " -h 44.1KHz sample rate (default 22.1KHz)\n");
- fprintf(stderr, " -s stereo (default mono)\n");
- fprintf(stderr, " -o play only once (default asks to play again)\n");
- fprintf(stderr, "\n");
- exit(1);
-}
diff --git a/lib-src/libnyquist/misc/plot.c b/lib-src/libnyquist/misc/plot.c
deleted file mode 100644
index e540592..0000000
--- a/lib-src/libnyquist/misc/plot.c
+++ /dev/null
@@ -1,249 +0,0 @@
-/*
- * FILE: plot.c
- * BY: Christopher Lee Fraley (cf0v at spice.cs.cmu.edu)
- * DESC: graphs file of numbers on terminal
- *
- * 1.1 ( 1-JUN-88) - added lines from 0 to data points (cf0v)
- * 1.2 ( 3-JUN-88) - added skip parameter (cf0v)
- * 1.3 (23-JUN-88) - added -x and -y options (cf0v)
- * 1.4 (30-JUN-88) - clean-up. (cf0v)
- * 2.0 ( 5-JUL-88) - added binary sound file format option. Changed scaling
- * for "-n" option to only consider those values being
- * plotted, instead of whole file.
- */
-
-char plotVERSION[] = "2.0 (5-JUL-88, 11:40am)";
-
-/*
- * plot [<file> [-nxyab]]
- * Accepts input stream of numbers from <file> (or stdin, if no <file>
- * argument is present), drawing a graph to sdout. File is prescanned for
- * min and max values, and the graph is scaled accordingly. If making the
- * file's min non-zero delta equal to one char allows the entire graph to
- * fit on the screen, then this scalar is used. If the -n<num> option is
- * used, then only every <num>th number from the input stream is plotted.
- * The -x option enables printing the line number in the file on the screen
- * every 10 lines. The -y option enables printing the y value on the screen
- * every line. Note -x and -y are NOT mutually exclusive. The -a option
- * indicates the input file is in ascii format, while the -b option indicates
- * the input file is in the binary sound file format. When neither of these
- * is present, binary is assumed unless input is from stdin.
- */
-
-#include <stdio.h>
-#include "stdefs.h"
-
-#define MAXNUMINPUT 16*1024
-#define BINARY 0
-#define ASCII 1
-
-
-fail(s, arg)
-char *s, *arg;
-{
- fprintf(stderr,"\nplot: ");
- fprintf(stderr, s, arg);
- fprintf(stderr,"\n\n");
- exit(1);
-}
-
-
-
-FILE *fain; /* Pointer to input file for ascii format */
-int fbin; /* Input file for binary format */
-int ftype; /* Type of input file */
-
-
-prescan(X, Num, Max, Min, Delta)
-HWORD X[];
-int *Num, *Max, *Min, *Delta;
-{
- int last, i, len;
-
- *Min = *Delta = 32767;
- *Max = -32768;
- *Num = last = 0;
- if (ftype == ASCII)
- while (fscanf(fain,"%d",&i) != EOF)
- {
- *Min = MIN(i, *Min);
- *Max = MAX(i, *Max);
- if (i != last)
- *Delta = MIN(ABS(i-last), *Delta);
- *Num += 1;
- last = i;
- *X++ = i;
- }
- else
- {
- printf("| binary prescan, fbin:%d\n", fbin);
- len = read(fbin, (char *)X, MAXNUMINPUT*sizeof(HWORD)) / sizeof(HWORD);
- if (len >= MAXNUMINPUT)
- fprintf(stderr, "plot: input truncated to %d samples\n",
- MAXNUMINPUT);
- for (i=0; i<len; i++)
- {
- *Min = MIN(*X, *Min);
- *Max = MAX(*X, *Max);
- if (*X != last)
- *Delta = MIN(ABS(*X-last), *Delta);
- last = *X++;
- }
- *Num = len;
- }
-}
-
-
-
-getargs(argc, argv, skip, xPrint, yPrint, start)
-int argc, *skip, *yPrint, *xPrint, *start;
-char *argv[];
-{
- char *file;
-
- file = NULL;
- fain = stdin;
- ftype = BINARY;
- *start = 0;
- *skip = 1;
- *xPrint = FALSE;
- *yPrint = FALSE;
- while (--argc)
- {
- ++argv;
- if ((*argv)[0] != '-')
- {
- if (file || (*argv)[0]=='?')
- fail("syntax error argument '%s'.\
- \n format: 'plot [<file>] [-n/s<num>] [-x/y/a/b]',\
- \n where: <file> to plot (stdin is default),\
- \n -n<num> plot every <num>th value in file,\
- \n -s<num> start at the <num>th sample,\
- \n -x print line # in file every 10 lines,\
- \n -y print y coordinate every line,\
- \n -a indicates input file is in ascii format,\
- \n -b indicates input is in binary sound file format.\
- \n -x and -y are NOT mutually exclusive; -a and -b ARE.\
- \n -b is assumed unless input is stdin.", *argv);
- file = *argv;
- printf("| file:%s\n", file);
- }
- else if ((*argv)[1]=='x' || (*argv)[1]=='X')
- *xPrint = TRUE;
- else if ((*argv)[1]=='y' || (*argv)[1]=='Y')
- *yPrint = TRUE;
- else if ((*argv)[1]=='a' || (*argv)[1]=='A')
- ftype = ASCII;
- else if ((*argv)[1]=='b' || (*argv)[1]=='B')
- ftype = BINARY;
- else if ((*argv)[1]=='n' || (*argv)[1]=='N')
- {
- if (1 != sscanf(*argv+2, "%d", skip))
- fail("illegal -n parameter '%s'", *argv);
- }
- else if ((*argv)[1]=='s' || (*argv)[1]=='S')
- {
- if (1 != sscanf(*argv+2, "%d", start))
- fail("illegal -s parameter '%s'", *argv);
- }
- }
- if (!file)
- ftype = ASCII;
- else if (ftype == ASCII)
- {
- if (NULL == (fain = fopen(file, "r")))
- fail("could not open ascii input file '%s'\n", file);
- }
- else
- {
- if (NULL > (fbin = open(file, 0)))
- fail("could not open binary input file '%s'\n", file);
- }
-}
-
-
-
-main (argc,argv)
-int argc;
-char *argv[];
-{
- int Num, Max, Min, Delta, i;
- HWORD X[MAXNUMINPUT];
- double factor;
- int target, skip, start;
- int xCount, xPrint, yPrint;
- char *Star[41], *Space[41];
-
- printf("\nData Plotting Program\n");
- printf("by: Christopher Lee Fraley\n");
- printf("Version: %s\n", plotVERSION);
-
- Star[40] = "****************************************";
- Space[40] = " ";
- for (i=39; i>=0; i--)
- {
- Star[i] = Star[i+1] + 1;
- Space[i] = Space[i+1] + 1;
- }
-
- getargs(argc, argv, &skip, &xPrint, &yPrint, &start);
- prescan(X, &Num, &Max, &Min, &Delta);
-
- factor = 1.0/Delta;
- if (factor*Max>39)
- factor = 39.0/Max;
- if (factor*Min<-40)
- factor = 40.0/-Min;
-
- printf("\n Number of Data Points:%d \t [%d:%d]\n",Num,Min,Max);
- printf(" Scale: %g/char",1.0/factor);
- if (skip > 1)
- printf(" \t\t Plotting every %dth sample", skip);
- if (start)
- printf(" Starting plot at sample %d", start);
- printf("\n\n=========3=========2=========1=========0=========1=========2\
-=========3=========\n");
-
- if (xPrint)
- xCount = 11;
- else
- xCount = -1;
- for (i=start; i<Num; i+=skip)
- {
- target = X[i]*factor+40;
- --xCount;
- if (target < 40)
- {
- printf(Space[target-1]);
- printf(Star[41-target]);
- if (!xCount)
- printf("\t\t %6d",i);
- else
- printf("\t\t\t ");
- if (yPrint)
- printf(" %6d\n",X[i]);
- else
- printf("\n");
- }
- else
- {
- if (yPrint)
- printf(" %6d ",X[i]);
- else
- printf("\t ");
- if (!xCount)
- printf("%6d ",i);
- else
- printf(" ");
- printf(Star[target-39]);
- printf("\n");
- }
- if (!xCount)
- xCount = 10;
- }
-
- if (ftype == BINARY)
- (void) close(fbin);
- else if (fain != stdin)
- (void) fclose(fain);
-}
diff --git a/lib-src/libnyquist/misc/sampleprint.c b/lib-src/libnyquist/misc/sampleprint.c
deleted file mode 100644
index 8862671..0000000
--- a/lib-src/libnyquist/misc/sampleprint.c
+++ /dev/null
@@ -1,39 +0,0 @@
-#include <stdio.h>
-
-#define NPERLINE 10
-
-main()
-{
- short line[2][NPERLINE];
- register int n, i, j;
- register int curline = 0;
- int currently_printing = 1;
-
- for(i = 0;
- (n = fread(line[curline], sizeof(short), NPERLINE, stdin)) > 0;
- i += n, curline = 1-curline) {
- if(i != 0 && n == NPERLINE && sameline(line[0], line[1])) {
- if(currently_printing) {
- printf("*\n");
- currently_printing = 0;
- }
- continue;
- }
- currently_printing = 1;
- printf("%7d ", i);
- for(j = 0; j < n; j++)
- printf("%6d ", line[curline][j]);
- printf("\n");
- }
- printf("%4d\n", i);
-}
-
-sameline(l1, l2)
-register short *l1, *l2;
-{
- register n = NPERLINE;
- while(--n >= 0)
- if(*l1++ != *l2++)
- return 0;
- return 1;
-}
diff --git a/lib-src/libnyquist/misc/sine.c b/lib-src/libnyquist/misc/sine.c
deleted file mode 100644
index e691b59..0000000
--- a/lib-src/libnyquist/misc/sine.c
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * FILE: sine.c
- * BY: Christopher Lee Fraley (cf0v at spice.cs.cmu.edu)
- * DESC: Creates sine waves of given period, amplitude, and length.
- *
- * 1.0 ( 1-JUN-88) - created. (cf0v)
- * 2.0 ( 5-JUL-88) - converted to binary sound file format. (cf0v)
- */
-
-/*
- * sine <amplitude> <period> <length> [-outfile]
- * Outputs integer sine wave of maximum <amplitude>, with <period>
- * samples per period, and <length> number of periods to stdout. Illegal
- * arguments cause the defaults 32767, 20, and 3 to be used, respectively.
- * If the flag "-outfile" is present, the output is in binary format to the
- * named file. If the flag is ommitted, the output is to stdout, and is in
- * ascii format, one number per line.
- */
-
-#include <stdio.h>
-#include <math.h>
-#include "stdefs.h"
-
-#define PERMS 0644 /* -rw-r--r-- */
-
-fails(s, s2)
-char *s, *s2;
-{
- fprintf(stderr, s, s2);
- exit(1);
-}
-
-
-main (argc,argv)
-int argc;
-char *argv[];
-{
- double Amp, Samps, Perds;
- int i;
-
- if (argc!=4 && argc!=5)
- fails("format is 'sine %s'\n",
- "<amplitude> <samples-per-period> <#-of-periods> [-outfile]");
- if (!sscanf(*++argv, "%lf", &Amp))
- Amp = 32767.0;
- if (!sscanf(*++argv, "%lf", &Samps))
- Samps = 20.0;
- if (!sscanf(*++argv, "%lf", &Perds))
- Perds = 3.0;
- if (argc==5)
- {
- int fout;
- HWORD *Data, *ptr;
- unsigned int outLen, len;
-
- if (NULL > (fout = creat(*++argv+1, PERMS)))
- fails("could not create <outfile> '%s'\n", *argv+1);
- outLen = Samps*Perds*sizeof(HWORD);
- ptr = Data = (HWORD *)malloc(outLen);
- if (NULL == Data)
- fails("could not allocate enough memory for output", "");
- for (i=0; i<(Samps*Perds); i++)
- *ptr++ = (HWORD) (sin(2*PI*i/Samps) * Amp);
- len = write(fout, (char *)Data, outLen);
- if (len != outLen)
- fails("incorrect number of bytes written", "");
- }
- else
- {
- for (i=0; i<(Samps*Perds); i++)
- printf("%d\n", (int)(sin(2*PI*i/Samps)*Amp));
- }
-}
diff --git a/lib-src/libnyquist/misc/stdefs2.h b/lib-src/libnyquist/misc/stdefs2.h
deleted file mode 100644
index 3254d02..0000000
--- a/lib-src/libnyquist/misc/stdefs2.h
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * FILE: stdefs.h
- * BY: Christopher Lee Fraley (cf0v at spice.cs.cmu.edu)
- * DESC: Defines standard stuff for inclusion in C programs.
- *
- * 1.0 ( 6-JUN-88) - created. (cf0v)
- * 1.1 (30-JUN-88) - moved GetUHWORD def here. (cf0v)
- * 1.2 (11-JUL-88) - added ffail() defs. (cf0v)
- * 1.3 (25-JUL-88) - added dB() and undB() defs. (cf0v)
- * 1.4 ( 8-AUG-88) - added stuff used by apple & new NULL def. (cf0v)
- */
-
-/* General purpose constants: */
-/* #define TRUE 1
- #define FALSE 0
- */
-
-#define FATAL 1
-#define WARN 0
-
-#define PI (3.14159265358979232846)
-#define PI2 (6.28318530717958465692)
-#define D2R (0.01745329348) /* (2*pi)/360 */
-#define R2D (57.29577951) /* 360/(2*pi) */
-
-
-/* General purpose typedefs: */
-typedef int bool;
-typedef char BOOL;
-typedef short HWORD;
-typedef unsigned short UHWORD;
-typedef int WORD;
-typedef unsigned int UWORD;
-
-
-/* General purpose macros: */
-#define GetUHWORD(x,y,z) GetUShort(x,y,z)
-#define ffail(x,y) fail(sprintf(ERROR,x,y))
-#define ffail2(x,y,z) fail(sprintf(ERROR,x,y,z))
-#define MAX(x,y) ((x)>(y) ?(x):(y))
-#define MIN(x,y) ((x)<(y) ?(x):(y))
-#define ABS(x) ((x)<0 ?(-(x)):(x))
-#define SGN(x) ((x)<0 ?(-1):((x)==0?(0):(1)))
-#define round(x) ((int)((x) + 0.5))
-
-/* Convert amplitudes to and from dB scale: */
-#define MINLIN undB(-100)
-#define undB(x) (((double)(REF)) * pow(10.0, ((double)(x))/20.0))
-#define dB(x) (((x)<MINLIN) ? (20.0 * log10(MINLIN/((double)(REF))))\
- : (20.0 * log10((x)/((double)(REF)))))
diff --git a/lib-src/libnyquist/misc/transfiles.lsp b/lib-src/libnyquist/misc/transfiles.lsp
deleted file mode 100644
index 94b99f7..0000000
--- a/lib-src/libnyquist/misc/transfiles.lsp
+++ /dev/null
@@ -1,12 +0,0 @@
-(setf transfiles '("amosc" "clip" "const" "fmosc" "integrate" "log"
- "maxv" "osc" "prod" "buzz"
- "pwl" "recip" "upsample" "scale" "sine" "partial" "white"
- "tone" "tonev" "atonev" "atone" "reson" "areson"
- "resonvc" "resoncv" "aresonvc" "aresoncv" "resonvv"
- "aresonvv" "offset" "slope" "delay" "delaycv" "shape"
- "sampler" "exp" "siosc" "follow" "gate" "quantize" "ifft"
- "congen" "fromobject" "fromarraystream" "coterm"
- "convolve" "alpass" "oneshot" "chase" "tapv" "biquad"
- "pluck"))
-
-; deleted comb
diff --git a/lib-src/libnyquist/misc/unpacker.c b/lib-src/libnyquist/misc/unpacker.c
deleted file mode 100644
index e38cd47..0000000
--- a/lib-src/libnyquist/misc/unpacker.c
+++ /dev/null
@@ -1,328 +0,0 @@
-/* unpacker -- a program to unpack a set of files */
-/* See packer.c for a description of the input file format. */
-
-#include "switches.h"
-#ifdef MACINTOSH
-#include <Files.h>
-#include <Script.h>
-#endif
-
-#include "cext.h"
-#include "convert.h"
-#include "string.h"
-
-/* since we aren't using the cleanup package, expose exit(): */
-#undef exit
-
-#include "stdio.h"
-#ifdef THINK_C
-#include "console.h"
-#endif
-
-#define string_max 500
-#ifndef EOS
-#define EOS 0
-#endif
-
-void escape();
-void unpack_ascii();
-void unpack_binary();
-void put_run();
-
-#ifdef UNIX
-#define FILESEP '/'
-#include <sys/types.h>
-#include <dirent.h>
-
-int dir_isvaliddir(char *path)
-{
- DIR *dir = opendir(path);
- if (!dir) return false;
- closedir(dir);
- return true;
-}
-
-
-#include <sys/stat.h>
-int _mkdir(char *p)
-{
- int rslt = mkdir(p, S_IRUSR | S_IWUSR | S_IXUSR |
- S_IXGRP | S_IWGRP | S_IROTH | S_IXOTH);
- printf("_mkdir: %s, rslt %d\n", p, rslt);
- if (rslt == -1) {
- printf("mkdir error\n");
- perror("unpacker mkdir");
- }
- return rslt;
-}
-
-#endif
-
-#ifdef WINDOWS
-#define FILESEP '\\'
-
-// deal with some incompatible definitions
-#undef byte
-#undef boolean
-#include "windows.h"
-#include <direct.h>
-/*
- * Function: dir_isvaliddir
- *
- * Purpose:
- *
- * Is this a valid directory ?
- */
-BOOL dir_isvaliddir(LPSTR path)
-{
- DWORD dwAttrib;
- dwAttrib = GetFileAttributes(path);
- if (dwAttrib == -1) {
- return(FALSE); }
- if (dwAttrib & FILE_ATTRIBUTE_DIRECTORY) {
- return(TRUE);
- }
- return(FALSE);
-} /* dir_isvaliddir */
-#endif
-
-/* early_eof -- print error message and exit */
-void early_eof()
-{
- fprintf(stderr, "Unexpected end of file while unpacking\n");
- exit(1);
-}
-#ifdef MACINTOSH
-
-#define FILESEP ':'
-
-int dir_isvaliddir(char *path)
-{
- char filename[256];
- OSErr err;
- FSSpec spec;
- strcpy(filename, path);
- c2pstr(filename);
- err = FSMakeFSSpec(0, 0, (unsigned char *) filename, &spec);
- if (err == noErr) {
- /* if we can open this as a file, it's not a directory */
- SInt16 refnum;
- err = FSpOpenDF(&spec, fsCurPerm, &refnum);
- if (err == noErr) {
- FSClose(refnum);
- return false;
- }
- return true;
- }
- return false;
-}
-
-
-int _mkdir(char *p)
-{
- OSErr err;
- FSSpec spec;
- SInt32 dirid;
- spec.vRefNum = 0;
- spec.parID = 0;
- strcpy((char *) spec.name, p);
- c2pstr(spec.name);
- err = FSpDirCreate(&spec, smSystemScript, &dirid);
- if (err == noErr) {
- return 0;
- }
-
- if (err != noErr) {
- printf("mkdir error %d\n", err);
- }
- return -1;
-}
-#endif
-
-
-void make_path(char *full_name)
-// make directories as needed
-{
- char directory[256];
- char *ptr = full_name;
- while (ptr = strchr(ptr, FILESEP)) {
- strcpy(directory, full_name);
- directory[ptr - full_name] = 0;
- if (!dir_isvaliddir(directory)) {
- if (_mkdir(directory) != 0) {
- printf("Could not create %s\n", directory);
- return;
- } else {
- printf("Created directory %s\n", directory);
- }
- }
- // now directory is valid, so move to next one
- ptr++;
- }
-}
-
-
-/* main -- unpack a set of files */
-/**/
-int main(argc, argv)
- int argc;
- char *argv[];
-{
- FILE *inf; /* input file: a packed set of files */
- FILE *outf; /* a file to unpack */
- char filename[string_max]; /* holds names of inptu files */
-#ifdef MACINTOSH
- argc = ccommand(&argv);
-#endif
- if (argc != 2) {
- fprintf(stderr, "Usage: unpack input-file\n");
- exit(1);
- }
- inf = fopen(argv[1], "r");
- if (!inf) {
- fprintf(stderr, "Couldn't open |%s|\n", argv[1]);
- exit(1);
- }
- while (fgets(filename, string_max, inf)) {
- char *filetype = "w";
- filename[strlen(filename) - 1] = EOS; /* remove newline at end */
- puts(filename + 1); /* don't print the leading ! or # */
- convert(filename + 1); /* convert to local filename conventions */
- if (filename[0] == '#') filetype = "wb";
- outf = fopen(filename + 1, filetype);
- if (!outf) {
- make_path(filename + 1);
- outf = fopen(filename + 1, filetype);
- if (!outf) {
- fprintf(stderr, "Couldn't open |%s|\n", filename + 1);
- exit(1);
- }
- }
- if (filename[0] == '!') {
- unpack_ascii(inf, outf, filename + 1);
- } else if (filename[0] == '#') {
- unpack_binary(inf, outf);
- }
- if (outf) fclose(outf);
- }
- fclose(inf);
- return 0;
-}
-
-
-/* put_run -- output a run of characters */
-/**/
-void put_run(f, c, n)
- FILE *f;
- int c;
- int n;
-{
- while (n--) putc(c, f);
-}
-
-
-/* unpack_ascii -- from inf to outf */
-/**/
-void unpack_ascii(inf, outf, filename)
- FILE *inf;
- FILE *outf;
- char *filename;
-{
- for (;;) {
- int c = getc(inf);
- if (c == EOF) return;
- else if (c > 127) {
- fprintf(stderr, "Non-ascii char 0x%x found while unpacking %s.\n", c, filename);
- return;
- } else if (c >= 'A' && c <= '~') {
- int n = (c - 'A');
- //DO NOT OUTPUT LEADING TABS -- USE SPACES INSTEAD
- // int tabs = (n / TAB_WIDTH);
- // n -= tabs * TAB_WIDTH;
- // put_run(outf, '\t', tabs);
- put_run(outf, ' ', n);
- } else if (c >= '0' && c <= '9') {
- put_run(outf, '\n', c - '0');
- } else if (c == '!' || c == '#') {
- ungetc(c, inf);
- return;
- } else {
- fprintf(stderr, "Unexpected char in col 1 (%c) while unpacking %s.\n",
- c, filename);
- return;
- }
-
- /* now get rest of the line */
- while ((c = getc(inf)) != EOF) {
- if (c == '$') {
- c = getc(inf);
- if (c == EOF) {
- early_eof();
- } else if (c == '$') {
- putc('$', outf);
- } else if (c >= '@' && c <= '_') {
- putc(c - '@', outf);
- } else if (c == '\n') {
- ; /* do nothing */
- } else {
- fprintf(stderr, "Bad char (%c) after '$' while unpacking %s.\n",
- c, filename);
- }
- } else {
- putc(c, outf);
- if (c == '\n') break; /* go up and process col. 1 char */
- }
- }
- }
-}
-
-
-/* unpack_binary -- from inf to outf */
-/**/
-void unpack_binary(inf, outf)
- FILE *inf;
- FILE *outf;
-{
- for (;;) {
- long l;
- int c = getc(inf);
- if (c == EOF) {
- early_eof();
- } else if (c == '.') {
- break;
- } else if (c == '\n') {
- ; /* do nothing */
- } else {
- l = c - '0';
- c = getc(inf);
- if (c == EOF) {
- early_eof();
- } else {
- l = (l << 6) + (c - '0');
- c = getc(inf);
- if (c == EOF) {
- early_eof();
- } else if (c == '.') {
- putc(l >> 4, outf);
- break;
- } else {
- l = (l << 6) + (c - '0');
- c = getc(inf);
- if (c == EOF) {
- early_eof();
- } else if (c == '.') {
- putc((l >> 10) & 0xFF, outf);
- putc((l >> 2) & 0xFF, outf);
- break;
- } else {
- l = (l << 6) + (c - '0');
- putc((l >> 16) & 0xFF, outf);
- putc((l >> 8) & 0xFF, outf);
- putc(l & 0xFF, outf);
- }
- }
- }
- }
- }
- getc(inf); /* read the final newline */
-}
diff --git a/lib-src/libnyquist/misc/unpacker.dsp b/lib-src/libnyquist/misc/unpacker.dsp
deleted file mode 100644
index 9cdc6bf..0000000
--- a/lib-src/libnyquist/misc/unpacker.dsp
+++ /dev/null
@@ -1,105 +0,0 @@
-# Microsoft Developer Studio Project File - Name="unpacker" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Console Application" 0x0103
-
-CFG=unpacker - Win32 Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE
-!MESSAGE NMAKE /f "unpacker.mak".
-!MESSAGE
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE
-!MESSAGE NMAKE /f "unpacker.mak" CFG="unpacker - Win32 Debug"
-!MESSAGE
-!MESSAGE Possible choices for configuration are:
-!MESSAGE
-!MESSAGE "unpacker - Win32 Release" (based on "Win32 (x86) Console Application")
-!MESSAGE "unpacker - Win32 Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-RSC=rc.exe
-
-!IF "$(CFG)" == "unpacker - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "unpacker_Release"
-# PROP Intermediate_Dir "unpacker_Release"
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-
-!ELSEIF "$(CFG)" == "unpacker - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "unpacker___Win32_Debug"
-# PROP BASE Intermediate_Dir "unpacker___Win32_Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "unpacker_Debug"
-# PROP Intermediate_Dir "unpacker_Debug"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
-# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "..\cmt" /I "..\sys\win\msvc" /I "../cmt" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-
-!ENDIF
-
-# Begin Target
-
-# Name "unpacker - Win32 Release"
-# Name "unpacker - Win32 Debug"
-# Begin Group "Source Files"
-
-# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
-# Begin Source File
-
-SOURCE=.\convert.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\unpacker.c
-# End Source File
-# End Group
-# Begin Group "Header Files"
-
-# PROP Default_Filter "h;hpp;hxx;hm;inl"
-# End Group
-# Begin Group "Resource Files"
-
-# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
-# End Group
-# End Target
-# End Project
diff --git a/lib-src/libnyquist/nyqsrc/add.c b/lib-src/libnyquist/nyqsrc/add.c
deleted file mode 100644
index b665354..0000000
--- a/lib-src/libnyquist/nyqsrc/add.c
+++ /dev/null
@@ -1,885 +0,0 @@
-/* add.c -- add two signals */
-/* CHANGE LOG
- * 19May92 rbd fix t0 to mean time rather than samples
- fix to logically stop and terminate at MAX of 2 inputs
- * 28Apr03 dm changes for portability and fix compiler warnings
- */
-
-/* DOCUMENTATION:
- Most DSP modules in Nyquist select a single fetch routine
-and use it until the signal terminates. The ADD operation
-instead can use a number of different fetch routines in sequence.
-This allows ADD to do the most efficient computation, such as
-simply copying pointers when only one input signal is defined
-(the other is zero.)
- Here's what the functions assume and do:
-add_s1_s2_nn_fetch: both arguments (s1, s2) have signals; add
- them.
-add_s1_nn_fetch: only s1 is active, so pass along pointers if
- possible. Revert to add_s1_s2_nn_fetch when s2 becomes active.
-add_s2_nn_fetch: symetric with add_s1_nn_fetch.
-add_zero_fill_nn_fetch: fill in when one input has terminated and
- the other hasn't begun.
-
-An important optimization (we think) is the ability to collapse
-ADD operations. When one operand goes to zero, the ADD just
-passes along pointers to blocks from the other operand. In some
-cases, we can just splice out the ADD suspension and link
-directly to the suspension of the second operand.
-
-Doing this requires that there be no scale factors, so ADD does
-not deal with scaling. If an operand comes in with a scale
-factor, ADD will create a rescaling of the operand.
-*/
-
-#include "switches.h"
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-#include "falloc.h"
-#include "cext.h"
-#include "scale.h"
-#include "multiseq.h"
-#include "add.h"
-
-
-
-#define debugA 0
-#define A if (debugA)
-/* I don't know how these debug switches (A and D) differ: */
-#define D A
-
-/* switch B is/was to look for a particular zero block length bug */
-#define debugB 0
-#define B if (debugB | debugA)
-
-/* #define GC_DEBUG 1 */
-
-
-void add_s1_s2_nn_fetch(add_susp_type, snd_list_type);
-void add_s1_nn_fetch(add_susp_type, snd_list_type);
-void add_s2_nn_fetch(add_susp_type, snd_list_type);
-void add_zero_fill_nn_fetch(add_susp_type, snd_list_type);
-void add_free();
-
-
-void add_s1_s2_nn_fetch(susp, snd_list)
- register add_susp_type susp;
- snd_list_type snd_list;
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
- register sample_block_values_type s1_ptr_reg;
- register sample_block_values_type s2_ptr_reg;
- register sample_block_values_type out_ptr_reg;
-
-#ifdef GC_DEBUG
- snd_list_report(snd_list, "add_s1_s2_nn_fetch");
-#endif
- /* assume the snd_list is the one with a null block */
- /* put a fresh, clean block in the snd_list (get new snd_list later) */
- falloc_sample_block(out, "add_s1_s2_nn_fetch");
- snd_list->block = out;
- out_ptr = out->samples;
-A nyquist_printf("add[%p,%p] (s1_s2_nn) %p new block %p\n",
- susp->s1, susp->s2, susp, out);
-
- /* fill up the new block */
- while (cnt < max_sample_block_len && susp->terminate_bits == 0) {
-A nyquist_printf("add[%p,%p] (s1_s2_nn) %p starting outer loop, cnt %d\n",
- susp->s1, susp->s2, susp, cnt);
-
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
-A nyquist_printf("add[%p,%p]: look for samples (for s1) \n", susp->s1, susp->s2);
-/* if (!susp->s1->list->block) watch_susp(susp->s1->list->u.susp); */
- susp_check_term_log_block_samples(s1, s1_bptr, s1_ptr, s1_cnt, 1, 3);
-A nyquist_printf("add[%p,%p]: found samples (for s1) s1_cnt=%d\n",
- susp->s1, susp->s2, (int)susp->s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
- if (susp->terminate_bits & 1) {
-A nyquist_printf("add[%p,%p]: terminate bits on (for s1) togo=%d\n",
- susp->s1, susp->s2, togo);
- }
-
- /* don't run past the s2 input sample block: */
-A nyquist_printf("add[%p,%p]: look for samples (for s2) \n", susp->s1, susp->s2);
- susp_check_term_log_block_samples(s2, s2_bptr, s2_ptr, s2_cnt, 2, 3);
-A nyquist_printf("add[%p,%p]: found samples (for s2) s2_cnt=%d\n",
- susp->s1, susp->s2, (int)susp->s2_cnt);
- togo = MIN(togo, susp->s2_cnt);
-A if (susp->terminate_bits & 2) {
- nyquist_printf("add[%p,%p]: terminate bits on (for s2) togo=%d\n",
- susp->s1, susp->s2, togo);
- }
-
- /* don't run past logical stop time (need to check this even
- * if a sound has terminated)
- */
-A nyquist_printf(
- "add[%p,%p] (s1_s2_nn) %p: logically_stopped %d, logical_stop_cnt %d\n",
- susp->s1, susp->s2, susp, susp->logically_stopped,
- (int)susp->susp.log_stop_cnt);
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
-A nyquist_printf("add[%p,%p]: to_stop = %d\n", susp->s1, susp->s2, to_stop);
- /* logical stops have to be indicated on block boundaries */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* indicate logical stop immediately */
- susp->logically_stopped = true;
- } else {
- /* logical stop will take place on the following block,
- * so compute up to logical stop and return partial block
- */
- togo = to_stop;
- }
- }
- }
-
- /* check please */
- if (susp->terminate_bits) {
- break;
- }
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
-D nyquist_printf("add[%p,%p]: togo = %d\n", susp->s1, susp->s2, togo);
- if (togo == 0) break;
- }
-
- n = togo;
-A nyquist_printf("add[%p,%p] (s1_s2_nn) %p starting inner loop, n %d\n",
- susp->s1, susp->s2, susp, n);
- s1_ptr_reg = susp->s1_ptr;
- s2_ptr_reg = susp->s2_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- /* scale? */
-A nyquist_printf("add_s1_s2_nn: %g + %g\n", *s1_ptr_reg, *s2_ptr_reg);
- *out_ptr_reg++ = *(s1_ptr_reg++) + *(s2_ptr_reg++);
- } while (--n); /* inner loop */
- /* using s1_ptr_reg is a bad idea on RS/6000 */
- susp->s1_ptr += togo;
- /* using s2_ptr_reg is a bad idea on RS/6000 */
- susp->s2_ptr += togo;
- /* using out_ptr_reg is a bad idea on RS/6000 */
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp_took(s2_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
-A nyquist_printf("add[%p,%p] (s1_s2_nn) %p ending outer loop, cnt %d\n",
- susp->s1, susp->s2, susp, cnt);
-
- snd_list->block_len = cnt;
-
- /* test for logical stop - normally this is detected by
- * susp.log_stop_cnt == susp->susp.current, but then the logical
- * stop flag is set on the NEXT block. To remember to set on the
- * NEXT block, set susp->logically_stopped, which is also tested
- * below. One special case is if the current block should indicate
- * logically stopped (this happens sometimes when the sounds have
- * zero logical length) then susp->logically_stopped will be set
- * (see above) and we just never test susp->susp.log_stop_cnt.
- */
- if (susp->logically_stopped) {
-A nyquist_printf("add[%p,%p] (s1_s2_nn) %p->logically_stopped already true\n",
- susp->s1, susp->s2, susp);
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
-A nyquist_printf("add[%p,%p] (s1_s2_nn) %p->logically_stopped set to true\n",
- susp->s1, susp->s2, susp);
- susp->logically_stopped = true;
- }
-
- /* test for termination of s1 */
- if (susp->terminate_bits == 3) {
-D nyquist_printf("add[%p,%p] (s1_s2_nn) s1 and s2 terminated, unrefed\n",
- susp->s1, susp->s2);
- /* free susp and point to terminal zeros (leaving pending snd_lists)*/
- if (cnt) {
- /* we have samples, put zero_block at end */
- snd_list_unref(snd_list->u.next);
- snd_list->u.next = zero_snd_list;
- } else {
- /* no samples generated */
- snd_list_terminate(snd_list);
- }
-D nyquist_printf("add[%p,%p] (s1_s2_nn) %p terminated.\n",
- susp->s1, susp->s2, susp);
- } else {
- if (susp->terminate_bits & 1) {
-D nyquist_printf("add[%p,%p] (s1_s2_nn) s1 terminated, unrefed\n",
- susp->s1, susp->s2);
- sound_unref(susp->s1);
- susp->s1 = NULL;
- susp->susp.fetch = add_s2_nn_fetch;
-D nyquist_printf("add_s1_s2_nn_fetch: add_s2_nn_fetch installed\n");
- if (cnt == 0) {
-D nyquist_printf("add[%p,%p]: calling add_s2_nn_fetch\n",
- susp->s1, susp->s2);
- add_s2_nn_fetch(susp, snd_list);
- }
- }
- else if (susp->terminate_bits & 2) {
-D nyquist_printf("add[%p,%p] (s1_s2_nn) s2 terminated, unrefed\n",
- susp->s1, susp->s2);
- sound_unref(susp->s2);
- susp->s2 = NULL;
- susp->susp.fetch = add_s1_nn_fetch;
-D stdputstr("add_s1_s2_nn_fetch: add_s1_nn_fetch installed\n");
- if (cnt == 0) {
-D nyquist_printf("add[%p,%p]: calling add_s1_nn_fetch\n",
- susp->s1, susp->s2);
- add_s1_nn_fetch(susp, snd_list);
- }
- }
-
- /* add a new snd_list for the susp */
- susp->susp.current += cnt;
- }
-
-} /* add_s1_s2_nn_fetch */
-
-
-
-/* Note that add_s1_nn_fetch and add_s2_nn_fetch are symetric.
- * They should probably be made into one routine, but for now,
- * any changes to one should be made to the other.
- */
-void add_s1_nn_fetch(susp, snd_list)
- register add_susp_type susp;
- snd_list_type snd_list;
-{
- /* expansion of add_s_nn_fetch(snd_list,s1,s2,1); follows: */
- int togo, s2_start=0;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
-D nyquist_printf("add_s1_nn_fetch(susp %p, snd_list %p, s1_cnt %d)\n",
- susp, snd_list, (int)susp->s1_cnt);
-
-#ifdef GC_DEBUG
- snd_list_report(snd_list, "add_s1_nn_fetch");
-#endif
- /*
- * first compute how many samples to copy (or transfer)
- */
-
- /* see what the next samples look like */
- susp_check_term_log_block_samples(s1, s1_bptr,
- s1_ptr, s1_cnt, 1, 3);
-B if (susp->terminate_bits & 1)
- nyquist_printf("add[%p,%p]: s1 terminates\n", susp->s1, susp->s2);
-
- /* don't run past the s1 input sample block: */
- togo = susp->s1_cnt;
-B if (togo == 0) stdputstr("togo is zero at checkpoint 1\n");
-
- /* don't run past terminate time of this signal */
-/* if (susp->s1_ptr == zero_block->samples) { -sep21 RBD*/
- if (susp->terminate_bits & 1) {
- if (susp->s2) {
- s2_start = (long) ((susp->s2->t0 - susp->susp.t0) *
- susp->s2->sr + 0.5);
-D nyquist_printf("add_s_nn_fetch: s2_start %d\n", s2_start);
- }
- togo = 0;
-B if (togo == 0) stdputstr("togo is zero at checkpoint 2\n");
- if (susp->s2 && susp->susp.current == s2_start) {
- /* s2 starting and s1 stops */
- /* go to s2 alone state */
- sound_unref(susp->s1);
- susp->s1 = NULL;
- susp->susp.fetch = add_s2_nn_fetch;
-D stdputstr("add_s_nn_fetch: other installed, calling now...\n");
- add_s2_nn_fetch(susp, snd_list);
- } else if (susp->s2 && susp->susp.current < s2_start) {
- /* s2 not started and s1 stops */
- /* go to zero-fill state */
- sound_unref(susp->s1);
- susp->s1 = NULL;
- susp->susp.fetch = add_zero_fill_nn_fetch;
-B stdputstr("add_s_nn_fetch: zero_fill installed\n");
- add_zero_fill_nn_fetch(susp, snd_list);
- } else if (susp->s2) {
-D stdputstr("add_s_nn_fetch: unexpected condition\n");
- EXIT(1);
- } else /* no s2 */ {
- snd_list_terminate(snd_list);
- }
-D nyquist_printf("add_s_nn_fetch: special return, susp %p\n", susp);
- return; /* fetching taken care of by another routine */
- }
-/* if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + togo) {
- togo = susp->terminate_cnt - susp->susp.current;
- }
- */
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - susp->susp.current;
- if (to_stop < togo) {
- if (to_stop == 0) {
- susp->logically_stopped = true;
- } else togo = to_stop;
- }
-B if (togo == 0) stdputstr("togo is zero at checkpoint 3\n");
-D nyquist_printf("add_s1_nn_fetch: to_stop %d togo %d\n", to_stop, togo);
- }
-
- /* consider other signal? don't run past its start time... */
- if (susp->s2) {
- s2_start = ROUND((susp->s2->t0 - susp->susp.t0) *
- susp->s2->sr);
- if (s2_start < susp->susp.current + togo)
- togo = MIN(togo, s2_start - susp->susp.current);
-B if (togo == 0) stdputstr("togo is zero at checkpoint 4\n");
- }
-
- /*
- * two cases: copy a partial block or manipulate pointers for
- * copyless transfer of whole block (may not be full block):
- *
- * copy partial block when:
- * o samples begin in middle of block
- * o stopping time is before end of block (when other signal
- * splits the block for this signal)
- * transfer (copyless) block when:
- * o the block is of maximum size
- * o the block is small due to logical stop time or termination
- * time
- */
- if (susp->s1_ptr == susp->s1_bptr->samples &&
- susp->s1_cnt == togo) {
- /*
- * we want to copy this whole block (starting at the beginning
- * and going to the rest of the block) -- just do pointers.
- */
-
- /* just fetch and pass blocks on */
- if (0) nyquist_printf("add[%p,%p] (s%d_nn) %p starting uncopy, togo %d\n", susp->s1, susp->s2,
- 1, susp, togo);
- snd_list->block = susp->s1_bptr;
- (susp->s1_bptr->refcnt)++;
- if (0) nyquist_printf("add[%p,%p] (s%d_nn) %p shared block %p zero_block %p\n",susp->s1, susp->s2,
- 1, susp, susp->s1_bptr, zero_block);
-
- susp_took(s1_cnt, togo);
- snd_list->block_len = togo;
-
- /* if other is terminated and sound_types match, collapse */
- /* NOTE: in order to collapse, we need s2 to be generating
- * blocks and linking them onto a sound list. This is true
- * when the get_next fn is SND_get_next. (A counterexample is
- * SND_get_zeros, which returns zero blocks but does not link
- * them onto the sound list.
- */
- if (0) nyquist_printf("s2 %p thissr %g suspsr %g get_next %d lsc %d\n",
- susp->s2, susp->s1->sr, susp->susp.sr,
- susp->s1->get_next == SND_get_next,
- susp->s1->logical_stop_cnt == UNKNOWN);
- if (susp->s2 == NULL && susp->s1->sr == susp->susp.sr &&
- susp->s1->get_next == SND_get_next &&
- susp->s1->logical_stop_cnt == UNKNOWN) {
- snd_list_type addend_list;
-D nyquist_printf("add[%p,%p]: collapsing! LSC %d\n", susp->s1, susp->s2,
- (int)susp->s1->logical_stop_cnt);
-D sound_print_tree(susp->s1);
- /* will "current" values match? */
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- }
- else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
- /* free the superfluous sound_type and susp */
- addend_list = susp->s1->list->u.next;
- snd_list_ref(addend_list);
- snd_list_unref(snd_list->u.next);
- snd_list->u.next = addend_list;
- return;
- }
- } else {
- /*
- * we want to copy a partial block
- */
-
- /* assume the snd_list is the one with a null block */
- /*
- * put a fresh, clean block in the snd_list
- * (get new snd_list later)
- */
- falloc_sample_block(out, "add_s1_nn_fetch");
- snd_list->block = out;
- out_ptr = out->samples;
-B nyquist_printf("add[%p,%p] (s1_nn) %p new block %p, s1_ptr %p block %p s1_cnt %d togo %d\n", susp->s1, susp->s2, susp, out, susp->s1_ptr, susp->s1_bptr->samples, (int)susp->s1_cnt, togo);
- n = togo;
-B if (togo == 0) stdputstr("togo is zero at checkpoint 5\n");
-B if (togo == 0) nyquist_printf(
- "add[%p,%p] (s%d_nn) %p starting copy loop, togo %d\n",
- susp->s1, susp->s2, 1, susp, togo);
- while (n--) { /* the inner sample computation loop */
- /* scale? */
- *out_ptr++ = *(susp->s1_ptr++);
- } /* inner loop */
-
- susp_took(s1_cnt, togo);
- snd_list->block_len = togo;
- }
-
- /* add a new snd_list for the susp */
- susp->susp.current += togo;
-
-D stdputstr("testing...");
- /*
- * test for termination or change of state,
- * note s2_start computed earlier
- */
- if (susp->s2 && susp->susp.current == s2_start &&
- susp->s1->list != zero_snd_list) {
- /* s2 starting and s1 continues */
- /* go to s1+s2 state */
- susp->susp.fetch = add_s1_s2_nn_fetch;
-D stdputstr("add_s_nn_fetch: add_s1_s2_fetch installed\n");
- } else if (susp->terminate_bits == 3) {
- /* s2 finished and s1 stops */
- /* go to terminal state */
- susp->s1 = NULL;
-D nyquist_printf("add_s_nn_fetch: go to terminal state. susp->s2 %p, \
- susp->susp.current %d, s2_start %d, susp->s1->list %p, \
- zero_snd_list %p\n", susp->s2, (int)susp->susp.current,
- s2_start, susp->s1->list, zero_snd_list);
- /* !!! free resources and set up pointers to terminal snd_list */
- /* !!! logically stopped? */
- }
-
- /* test for logical stop */
- if (susp->logically_stopped) {
-D stdputstr("add_s_nn_fetch: snd_list->logically_stopped\n");
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
-D stdputstr("add_s_nn_fetch: susp->logically_stopped\n");
- susp->logically_stopped = true;
- }
-D {
- if (susp->logically_stopped || snd_list->logically_stopped)
- stdputstr("STOPPED\n");
- else nyquist_printf("ok: current %d\n", (int)susp->susp.current); }
-}
-
-
-void add_s2_nn_fetch(susp, snd_list)
- register add_susp_type susp;
- snd_list_type snd_list;
-{
- int togo, s1_start=0;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
-D nyquist_printf("add_s2_nn_fetch(susp %p, snd_list %p)\n",
- susp, snd_list);
-
-#ifdef GC_DEBUG
- snd_list_report(snd_list, "add_s2_nn_fetch");
-#endif
-
- /*
- * first compute how many samples to copy (or transfer)
- */
-
- /* see what the next samples look like */
- susp_check_term_log_block_samples(s2, s2_bptr,
- s2_ptr, s2_cnt, 2, 3);
-
- /* don't run past the s2 input sample block: */
- togo = susp->s2_cnt;
-
- /* don't run past terminate time of this signal */
- /* if (susp->s2_ptr == zero_block->samples) { -sep21 RBD*/
- if (susp->terminate_bits & 2) {
- if (susp->s1) {
- s1_start = ROUND((susp->s1->t0 - susp->susp.t0) *
- susp->s1->sr);
- if (0) nyquist_printf("add_s_nn_fetch: s1_start %d\n", s1_start);
- }
- togo = 0;
- if (susp->s1 && susp->susp.current == s1_start) {
- /* s1 starting and s2 stops */
- /* go to s1 alone state */
- sound_unref(susp->s2);
- susp->s2 = NULL;
- susp->susp.fetch = add_s1_nn_fetch;
-D stdputstr("add_s_nn_fetch: other installed, calling now...\n");
- add_s1_nn_fetch(susp, snd_list);
- } else if (susp->s1 && susp->susp.current < s1_start) {
- /* s1 not started and s2 stops */
- /* go to zero-fill state */
- sound_unref(susp->s2);
- susp->s2 = NULL;
- susp->susp.fetch = add_zero_fill_nn_fetch;
-D stdputstr("add_s_nn_fetch: zero_fill installed\n");
- add_zero_fill_nn_fetch(susp, snd_list);
- } else if (susp->s1) {
-D stdputstr("add_s_nn_fetch: unexpected condition\n");
- EXIT(1);
- } else /* no s1 */ {
- snd_list_terminate(snd_list);
- }
-D nyquist_printf("add_s_nn_fetch: special return, susp %p\n", susp);
- return; /* fetching taken care of by another routine */
- }
-/* if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + togo) {
- togo = susp->terminate_cnt - susp->susp.current;
- }
- */
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - susp->susp.current;
- if (to_stop < togo) {
- if (to_stop == 0) {
- susp->logically_stopped = true;
- } else togo = to_stop;
- }
-B if (togo == 0) stdputstr("togo is zero at checkpoint 3\n");
-D nyquist_printf("add_s2_nn_fetch: to_stop %d togo %d\n", to_stop, togo);
- }
-
- /* consider other signal? don't run past its start time... */
- if (susp->s1) {
- s1_start = ROUND((susp->s1->t0 - susp->susp.t0) *
- susp->s1->sr);
- if (s1_start < susp->susp.current + togo)
- togo = MIN(togo, s1_start - susp->susp.current);
- }
-
- /*
- * two cases: copy a partial block or manipulate pointers for
- * copyless transfer of whole block (may not be full block):
- *
- * copy partial block when:
- * o samples begin in middle of block
- * o stopping time is before end of block (when other signal
- * splits the block for this signal)
- * transfer (copyless) block when:
- * o the block is of maximum size
- * o the block is small due to logical stop time or termination
- * time
- */
- if (susp->s2_ptr == susp->s2_bptr->samples &&
- susp->s2_cnt == togo) {
- /*
- * we want to copy this whole block (starting at the beginning
- * and going to the rest of the block) -- just do pointers.
- */
-
- /* just fetch and pass blocks on */
-D nyquist_printf("add[%p,%p] (s%d_nn) %p starting uncopy, togo %d\n", susp->s2, susp->s1,
- 2, susp, togo);
- snd_list->block = susp->s2_bptr;
- (susp->s2_bptr->refcnt)++;
-D nyquist_printf("add[%p,%p] (s%d_nn) %p shared block %p zero_block %p\n",susp->s2, susp->s1,
- 2, susp, susp->s2_bptr, zero_block);
-
- susp_took(s2_cnt, togo);
- snd_list->block_len = togo;
-
- /* if other is terminated and sound_types match, collapse */
- /* NOTE: in order to collapse, we need s1 to be generating
- * blocks and linking them onto a sound list. This is true
- * when the get_next fn is SND_get_next. (A counterexample is
- * SND_get_zeros, which returns zero blocks but does not link
- * them onto the sound list.
- */
- if (0) nyquist_printf("s1 %p thissr %g suspsr %g get_next %d lsc %d\n",
- susp->s1, susp->s2->sr, susp->susp.sr,
- susp->s2->get_next == SND_get_next,
- susp->s2->logical_stop_cnt == UNKNOWN);
- if (susp->s1 == NULL && susp->s2->sr == susp->susp.sr &&
- susp->s2->get_next == SND_get_next &&
- susp->s2->logical_stop_cnt == UNKNOWN) {
- snd_list_type addend_list;
-D nyquist_printf("add[%p,%p]: collapsing! LSC %d\n",
- susp->s2, susp->s1, (int)susp->s2->logical_stop_cnt);
-D sound_print_tree(susp->s2);
- /* will "current" values match? */
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- }
- else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
- /* free the superfluous sound_type and susp */
- addend_list = susp->s2->list->u.next;
- snd_list_ref(addend_list);
- snd_list_unref(snd_list->u.next);
- snd_list->u.next = addend_list;
- return;
- }
- } else {
- /*
- * we want to copy a partial block
- */
-
- /* assume the snd_list is the one with a null block */
- /*
- * put a fresh, clean block in the snd_list
- * (get new snd_list later)
- */
- falloc_sample_block(out, "add_s2_nn_fetch");
- snd_list->block = out;
- out_ptr = out->samples;
-B nyquist_printf("add[%p,%p] (s2_nn) %p new block %p\n",
- susp->s2, susp->s1, susp, out);
- n = togo;
- if (n == 0)
- stdputstr("zero block length error in add_s2_nn_fetch\n");
-B nyquist_printf(
- "add[%p,%p] (s2_nn) %p starting copy loop, togo %d\n",
- susp->s2, susp->s1, susp, togo);
- while (n--) { /* the inner sample computation loop */
- /* scale? */
- *out_ptr++ = *(susp->s2_ptr++);
- } /* inner loop */
-
- susp_took(s2_cnt, togo);
- snd_list->block_len = togo;
- }
-
- /* add a new snd_list for the susp */
- susp->susp.current += togo;
-
- if (0) stdputstr("testing...");
- /*
- * test for termination or change of state,
- * note s1_start computed earlier
- */
- if (susp->s1 && susp->susp.current == s1_start &&
- susp->s2->list != zero_snd_list) {
- /* s1 starting and s2 continues */
- /* go to s1+s2 state */
- susp->susp.fetch = add_s1_s2_nn_fetch;
-D stdputstr("add_s_nn_fetch: add_s1_s2_fetch installed\n");
- }
-/* else if (!susp->s1 && susp->s2->list == zero_snd_list) { */
- else if (susp->terminate_bits == 3) {
- /* s1 finished and s2 stops */
- /* go to terminal state */
- susp->s2 = NULL;
-D nyquist_printf("add_s_nn_fetch: go to terminal state. susp->s1 %p, \
- susp->susp.current %d, s1_start %d, susp->s2->list %p, \
- zero_snd_list %p\n", susp->s1, (int)susp->susp.current,
- s1_start, susp->s2->list, zero_snd_list);
- /* !!! free resources and set up pointers to terminal snd_list */
- /* !!! logically stopped? */
- }
-
- /* test for logical stop */
- if (susp->logically_stopped) {
-D stdputstr("add_s_nn_fetch: snd_list->logically_stopped\n");
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
-D stdputstr("add_s_nn_fetch: susp->logically_stopped\n");
- susp->logically_stopped = true;
- }
- if (0) {
- if (susp->logically_stopped || snd_list->logically_stopped)
- stdputstr("STOPPED\n");
- else
- nyquist_printf("ok: current %d\n", (int)susp->susp.current);
- }
-}
-
-
-
-void add_zero_fill_nn_fetch(susp, snd_list)
- register add_susp_type susp;
- snd_list_type snd_list;
-{
- int togo, s_start=0;
-
-#ifdef GC_DEBUG
- snd_list_report(snd_list, "add_zero_fill_nn_fetch");
-#endif
- togo = max_sample_block_len;
-
- if (0) fprintf(stderr, "add_zero_fill_nn_fetch, susp.current %d\n",
- (int)susp->susp.current);
- /* don't run past start time ... */
- if (susp->s1) {
- s_start = ROUND((susp->s1->t0 - susp->susp.t0) * susp->s1->sr);
- if (s_start < susp->susp.current + togo) {
- togo = s_start - susp->susp.current;
- }
- } else if (susp->s2) {
- s_start = ROUND((susp->s2->t0 - susp->susp.t0) * susp->s2->sr);
- if (s_start < susp->susp.current + togo) {
- togo = s_start - susp->susp.current;
- }
- }
-
- snd_list->block_len = togo;
- susp->susp.current += togo;
- /*
- * test for change of state,
- * note s_start computed earlier
- */
- if (susp->s1 && susp->susp.current == s_start) {
- /* s1 starting, go to s1 state */
- susp->susp.fetch = add_s1_nn_fetch;
-D stdputstr("add_zero_fill_nn_fetch: add_s1_nn_fetch installed\n");
- } else if (susp->s2 && susp->susp.current == s_start) {
- /* s2 starting, go to s2 state */
- susp->susp.fetch = add_s2_nn_fetch;
-D stdputstr("add_zero_fill_nn_fetch: add_s2_nn_fetch installed\n");
- }
-} /* add_zero_fill_nn_fetch */
-
-
-void add_free(add_susp_type susp)
-{
- sound_unref(susp->s1);
- sound_unref(susp->s2);
- ffree_generic(susp, sizeof(add_susp_node), "add_free");
-}
-
-
-void add_mark(add_susp_type susp)
-{
-/* nyquist_printf("add_mark(%p)\n", susp);*/
-/* nyquist_printf("marking s1@%p in add@%p\n", susp->s1, susp);*/
- sound_xlmark(susp->s1);
-/* nyquist_printf("marking s2@%p in add@%p\n", susp->s2, susp);*/
- sound_xlmark(susp->s2);
-
-}
-
-
-void add_print_tree(add_susp_type susp, int n)
-{
- indent(n);
- nyquist_printf("logically_stopped %d logical_stop_bits %d terminate_bits %d\n",
- susp->logically_stopped, susp->logical_stop_bits, susp->terminate_bits);
- indent(n);
- stdputstr("s1:");
- if (susp->s1) sound_print_tree_1(susp->s1, n);
- else stdputstr(" NULL\n");
-
- indent(n);
- stdputstr("s2:");
- if (susp->s2) sound_print_tree_1(susp->s2, n);
- else stdputstr(" NULL\n");
-}
-
-
-sound_type snd_make_add(s1, s2)
- sound_type s1;
- sound_type s2;
-{
- register add_susp_type susp;
- rate_type sr = MAX(s1->sr, s2->sr);
- time_type t0 = MIN(s1->t0, s2->t0);
- int interp_desc = 0;
- double sample_offset;
-
- /* sort commutative signals: (S1 S2) */
- snd_sort_2(&s1, &s2, sr);
-
- falloc_generic(susp, add_susp_node, "snd_make_add");
-
- /* select a susp fn based on sample rates */
- interp_desc = (interp_style(s1, sr) << 2) + interp_style(s2, sr);
- switch (interp_desc) {
- case INTERP_nn:
- case INTERP_ns:
- case INTERP_ss:
- /* eliminate scale factor on s1 if any */
- if (((interp_desc >> INTERP_SHIFT) & INTERP_MASK) == INTERP_s) {
- /* stdputstr("add: prescaling s1\n");*/
- s1 = snd_make_normalize(s1);
- }
- /* eliminate scale factor on s2 if any */
- if ((interp_desc & INTERP_MASK) == INTERP_s) {
- /* stdputstr("add: prescaling s2\n"); */
- s2 = snd_make_normalize(s2);
- }
- sample_offset = (s2->t0 - s1->t0) * sr;
- if (sample_offset >= 0.5) { /* s1 starts first */
- susp->susp.fetch = add_s1_nn_fetch;
-D stdputstr("snd_make_add: add_s1_nn_fetch installed\n");
- } else if (sample_offset < -0.5) { /* s2 starts first */
- susp->susp.fetch = add_s2_nn_fetch;
-D stdputstr("snd_make_add: add_s2_nn_fetch installed\n");
- } else { /* equal start times */
- susp->susp.fetch = add_s1_s2_nn_fetch;
-D stdputstr("snd_make_add: add_s1_s2_nn_fetch installed\n");
- }
- break;
- case INTERP_ni:
- case INTERP_nr:
- errputstr("add: can't interpolate!\n");
- EXIT(1);
- default:
- errputstr("add: can't add these operands!\n");
- EXIT(1);
- }
-
- susp->terminate_cnt = UNKNOWN;
- susp->terminate_bits = 0; /* bits for s1 and s2 termination */
- susp->logical_stop_bits = 0; /* bits for s1 and s2 logical stop */
-
- /* initialize susp state */
- susp->susp.free = add_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = add_mark;
- susp->susp.print_tree = add_print_tree;
- susp->susp.name = "add";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = UNKNOWN;
- susp->started = false;
- susp->susp.current = 0;
- susp->s1 = s1;
- susp->s1_cnt = 0;
- susp->s2 = s2;
- susp->s2_cnt = 0;
-#ifdef UPSAMPLECODE
- susp->susp.s2_phase = 0.0;
- susp->susp.s2_phase_incr = s2->sr / sr;
- susp->susp.output_per_s2 = sr / s2->sr;
-#endif
- return sound_create((snd_susp_type)susp, t0, sr, 1.0);
-}
-
-
-sound_type snd_add(s1, s2, t0)
- sound_type s1;
- sound_type s2;
- time_type t0;
-{
- sound_type s1_copy = sound_copy(s1);
- sound_type s2_copy = sound_copy(s2);
-/* nyquist_printf("snd_add %p %p copied to %p %p\n", s1, s2, s1_copy, s2_copy); */
- return snd_make_add(s1_copy, s2_copy, t0);
-}
diff --git a/lib-src/libnyquist/nyqsrc/add.h b/lib-src/libnyquist/nyqsrc/add.h
deleted file mode 100644
index 02b8105..0000000
--- a/lib-src/libnyquist/nyqsrc/add.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/* this typedef goes here because it is needed by multiseq.c */
-
-typedef struct add_susp_struct {
- snd_susp_node susp;
- boolean started;
- int terminate_bits;
- long terminate_cnt;
- int logical_stop_bits;
- boolean logically_stopped;
- sound_type s1;
- long s1_cnt;
- sample_block_type s1_bptr; /* block pointer */
- sample_block_values_type s1_ptr;
- sound_type s2;
- long s2_cnt;
- sample_block_type s2_bptr; /* block pointer */
- sample_block_values_type s2_ptr;
-
-#ifdef UPSAMPLECODE
- /* support for interpolation of s2 */
- sample_type s2_x1_sample;
- double s2_phase;
- double s2_phase_incr;
-
- /* support for ramp between samples of s2 */
- double output_per_s2;
-#endif
- /* pointer used to synchronize adds in multiseq */
- struct multiseq_struct *multiseq;
- long s1_prepend; /* offset to susp.current */
-} add_susp_node, *add_susp_type;
-
-sound_type snd_make_add();
-sound_type snd_add();
- /* LISP: (SND-ADD SOUND SOUND) */
-
-/* we export these for seq.c and multiseq.c */
-void add_zero_fill_nn_fetch(add_susp_type susp, snd_list_type snd_list);
-void add_s1_s2_nn_fetch(add_susp_type susp, snd_list_type snd_list);
-void add_s2_nn_fetch(add_susp_type susp, snd_list_type snd_list);
-void add_s1_nn_fetch(add_susp_type susp, snd_list_type snd_list);
-void add_mark(add_susp_type susp);
-void add_print_tree(add_susp_type susp, int n);
-void add_free(add_susp_type susp);
diff --git a/lib-src/libnyquist/nyqsrc/avg.c b/lib-src/libnyquist/nyqsrc/avg.c
deleted file mode 100644
index 31c1406..0000000
--- a/lib-src/libnyquist/nyqsrc/avg.c
+++ /dev/null
@@ -1,266 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "avg.h"
-
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm changes for portability and fix compiler warnings
- */
-
-
-void avg_free();
-
-typedef sample_type (*process_block_type)(/* struct avg_susp_struct *susp */);
-
-typedef struct avg_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type s;
- long s_cnt;
- sample_block_values_type s_ptr;
- long blocksize;
- long stepsize;
- sample_type *block;
- sample_type *fillptr;
- sample_type *endptr;
- process_block_type process_block;
-} avg_susp_node, *avg_susp_type;
-
-
-sample_type average_block(avg_susp_type susp)
-{
- /* this version just computes average */
- double sum = 0.0;
- int i;
- for (i = 0; i < susp->blocksize; i++) {
- sum += susp->block[i];
- }
- for (i = susp->stepsize; i < susp->blocksize; i++) {
- susp->block[i - susp->stepsize] = susp->block[i];
- }
- return (sample_type) (sum / susp->blocksize);
-}
-
-
-sample_type peak_block(avg_susp_type susp)
-{
- /* this version just computes average */
- sample_type peak = 0.0F;
- sample_type minus_peak = 0.0F;
- int i;
- for (i = 0; i < susp->blocksize; i++) {
- sample_type s = susp->block[i];
- if (s > peak) {
- peak = s; minus_peak = -s;
- } else if (s < minus_peak) {
- minus_peak = s; peak = -s;
- }
- }
- for (i = susp->stepsize; i < susp->blocksize; i++) {
- susp->block[i - susp->stepsize] = susp->block[i];
- }
- return peak;
-}
-
-
-void avg_s_fetch(avg_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo = 0;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_type *fillptr_reg;
- register sample_type *endptr_reg = susp->endptr;
-
- register sample_block_values_type s_ptr_reg;
- falloc_sample_block(out, "avg_s_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = (max_sample_block_len - cnt) * susp->stepsize;
-
- /* don't run past the s input sample block: */
- susp_check_term_log_samples(s, s_ptr, s_cnt);
- togo = MIN(togo, susp->s_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo/susp->stepsize) {
- togo = (susp->terminate_cnt - (susp->susp.current + cnt)) * susp->stepsize;
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo/susp->stepsize) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop * susp->stepsize;
- }
- }
-
- n = togo;
- s_ptr_reg = susp->s_ptr;
- fillptr_reg = susp->fillptr;
- if (n) do { /* the inner sample computation loop */
- *fillptr_reg++ = *s_ptr_reg++;
- if (fillptr_reg >= endptr_reg) {
- *out_ptr++ = (*(susp->process_block))(susp);
- cnt++;
- fillptr_reg -= susp->stepsize;
- }
- } while (--n); /* inner loop */
-
- /* using s_ptr_reg is a bad idea on RS/6000: */
- susp->s_ptr += togo;
- susp->fillptr = fillptr_reg;
- susp_took(s_cnt, togo);
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* avg_s_fetch */
-
-
-void avg_toss_fetch(susp, snd_list)
- avg_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = MIN(susp->susp.current + max_sample_block_len,
- susp->susp.toss_cnt);
- time_type final_time = susp->susp.t0 + final_count / susp->susp.sr;
- long n;
-
- /* fetch samples from s up to final_time for this block of zeros */
- while (((long) ((final_time - susp->s->t0) * susp->s->sr + 0.5)) >=
- susp->s->current)
- susp_get_samples(s, s_ptr, s_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- if (final_count == susp->susp.toss_cnt) {
- n = ROUND((final_time - susp->s->t0) * susp->s->sr -
- (susp->s->current - susp->s_cnt));
- susp->s_ptr += n;
- susp_took(s_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- }
- snd_list->block_len = (short) (final_count - susp->susp.current);
- susp->susp.current = final_count;
- snd_list->u.next = snd_list_create((snd_susp_type) susp);
- snd_list->block = internal_zero_block;
-}
-
-
-void avg_mark(avg_susp_type susp)
-{
- sound_xlmark(susp->s);
-}
-
-
-void avg_free(avg_susp_type susp)
-{
- sound_unref(susp->s);
- free(susp->block);
- ffree_generic(susp, sizeof(avg_susp_node), "avg_free");
-}
-
-
-void avg_print_tree(avg_susp_type susp, int n)
-{
- indent(n);
- stdputstr("s:");
- sound_print_tree_1(susp->s, n);
-}
-
-
-sound_type snd_make_avg(sound_type s, long blocksize, long stepsize, long op)
-{
- register avg_susp_type susp;
- rate_type sr = s->sr;
- time_type t0 = s->t0;
- time_type t0_min = t0;
-
- falloc_generic(susp, avg_susp_node, "snd_make_avg");
- susp->susp.fetch = avg_s_fetch;
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < s->t0) sound_prepend_zeros(s, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(s->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = ROUND((t0 - t0_min) * sr);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = avg_toss_fetch;
- t0 = t0_min;
- }
-
- /* initialize susp state */
- susp->susp.free = avg_free;
- susp->susp.sr = sr / stepsize;
- susp->susp.t0 = t0;
- susp->susp.mark = avg_mark;
- susp->susp.print_tree = avg_print_tree;
- susp->susp.name = "avg";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(s);
- susp->susp.current = 0;
- susp->s = s;
- susp->s_cnt = 0;
- susp->blocksize = blocksize;
- susp->stepsize = stepsize;
- susp->block = (sample_type *) malloc(blocksize * sizeof(sample_type));
- susp->fillptr = susp->block;
- susp->endptr = susp->block + blocksize;
- susp->process_block = average_block;
- if (op == op_peak) susp->process_block = peak_block;
- /* scale factor gets passed to output signal: */
- return sound_create((snd_susp_type) susp, t0, susp->susp.sr, susp->s->scale);
-}
-
-
-sound_type snd_avg(sound_type s, long blocksize, long stepsize, long op)
-{
- sound_type s_copy = sound_copy(s);
- return snd_make_avg(s_copy, blocksize, stepsize, op);
-}
diff --git a/lib-src/libnyquist/nyqsrc/avg.h b/lib-src/libnyquist/nyqsrc/avg.h
deleted file mode 100644
index 4c21cc3..0000000
--- a/lib-src/libnyquist/nyqsrc/avg.h
+++ /dev/null
@@ -1,6 +0,0 @@
-sound_type snd_make_avg(sound_type s, long blocksize, long stepsize, long op);
-sound_type snd_avg(sound_type s, long blocksize, long stepsize, long op);
- /* LISP: (snd-avg SOUND FIXNUM FIXNUM FIXNUM) */
-#define op_average 1
-#define op_peak 2
-/* LISP-SRC: (setf OP-AVERAGE 1) (setf OP-PEAK 2) */
diff --git a/lib-src/libnyquist/nyqsrc/compose.c b/lib-src/libnyquist/nyqsrc/compose.c
deleted file mode 100644
index a15fe34..0000000
--- a/lib-src/libnyquist/nyqsrc/compose.c
+++ /dev/null
@@ -1,304 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "compose.h"
-
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm changes for portability and fix compiler warnings
- */
-
-void compose_free();
-
-
-typedef struct compose_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type f;
- long f_cnt;
- sample_block_values_type f_ptr;
- sample_type f_prev;
- double f_time;
- double f_time_increment;
- boolean started;
- sound_type g;
- long g_cnt;
- sample_block_values_type g_ptr;
-} compose_susp_node, *compose_susp_type;
-
-
-/* compose_fetch -- computes f(g(t)) */
-/**/
-void compose_fetch(register compose_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo = 0;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register sample_block_values_type g_ptr_reg;
- register sample_block_values_type f_ptr_reg;
- falloc_sample_block(out, "compose_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure we are primed with first value of f */
- /* This is a lot of work just to prefetch susp->f_prev! */
- if (!susp->started) {
- susp->started = true;
- /* see comments below about susp_check_term_log_samples() */
- if (susp->f_cnt == 0) {
- susp_get_samples(f, f_ptr, f_cnt);
- if (susp->f_ptr == zero_block->samples) {
- susp->terminate_cnt = susp->susp.current;
- }
- }
- susp->f_prev = susp_fetch_sample(f, f_ptr, f_cnt);
- susp->f_time += susp->f_time_increment;
- }
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the f input sample block: */
- /* most fetch routines call susp_check_term_log_samples() here
- * but we can't becasue susp_check_term_log_samples() assumes
- * that output time progresses at the same rate as input time.
- * Here, some time warping is going on, so this doesn't work.
- * Instead, check for termination of f and fix terminate_cnt to
- * be the current output count rather than the current input time.
- */
- if (susp->f_cnt == 0) {
- susp_get_samples(f, f_ptr, f_cnt);
- if (susp->f->logical_stop_cnt == susp->f->current - susp->f_cnt) {
- if (susp->susp.log_stop_cnt == UNKNOWN) {
- susp->susp.log_stop_cnt = susp->susp.current + cnt;
- }
- }
- if (susp->f_ptr == zero_block->samples) {
- susp->terminate_cnt = susp->susp.current + cnt;
- /* we can't simply terminate here because we might have
- * some output samples computed already, in which case we
- * want to return them now and terminate the NEXT time we're
- * called.
- */
- }
- }
-
-#ifdef CUT
- /* don't run past the f input sample block: */
- susp_check_term_log_samples(f, f_ptr, f_cnt);
- togo = MIN(togo, susp->f_cnt);
-#endif
- /* don't run past the g input sample block: */
- susp_check_term_samples(g, g_ptr, g_cnt);
- togo = MIN(togo, susp->g_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- if (to_stop < togo && ((togo = to_stop) == 0)) break;
- }
-
- n = togo;
-
- g_ptr_reg = susp->g_ptr;
- f_ptr_reg = susp->f_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- double g_of_t = *g_ptr_reg;
- #if 0
- float tmp; /* for debugging */
- nyquist_printf("output sample %d, g_of_t %g", susp->susp.current + cnt, g_of_t);
- #endif
- /* now we scan f and interpolate at time point g_of_t */
- while (susp->f_time < g_of_t) {
- susp->f_time += susp->f_time_increment;
- susp->f_prev = *f_ptr_reg++;
-/* nyquist_printf(", (f_time %g, f %g)", susp->f_time, *f_ptr_reg); */
- susp->f_ptr++;
- susp->f_cnt--;
- if (susp->f_cnt == 0) {
- togo -= n;
-/* stdputstr("\n\tf out of samples...\n"); */
- goto f_out_of_samples;
- }
- }
- g_ptr_reg++;
- *out_ptr_reg++ /* = tmp */ =
- (sample_type) (*f_ptr_reg - (*f_ptr_reg - susp->f_prev) *
- (susp->f_time - g_of_t) * susp->f->sr);
-/* nyquist_printf(", output %g\n", tmp);*/
- } while (--n); /* inner loop */
-f_out_of_samples:
- /* using g_ptr_reg is a bad idea on RS/6000: */
- susp->g_ptr += togo;
- out_ptr += togo;
- susp_took(g_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* compose_fetch */
-
-
-void compose_toss_fetch(susp, snd_list)
- register compose_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = MIN(susp->susp.current + max_sample_block_len,
- susp->susp.toss_cnt);
- time_type final_time = susp->susp.t0 + final_count / susp->susp.sr;
- long n;
-
- /* fetch samples from f up to final_time for this block of zeros */
- while (((long) ((final_time - susp->f->t0) * susp->f->sr + 0.5)) >=
- susp->f->current)
- susp_get_samples(f, f_ptr, f_cnt);
- /* fetch samples from g up to final_time for this block of zeros */
- while (((long) ((final_time - susp->g->t0) * susp->g->sr + 0.5)) >=
- susp->g->current)
- susp_get_samples(g, g_ptr, g_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- if (final_count == susp->susp.toss_cnt) {
- n = ROUND((final_time - susp->f->t0) * susp->f->sr -
- (susp->f->current - susp->f_cnt));
- susp->f_ptr += n;
- susp_took(f_cnt, n);
- n = ROUND((final_time - susp->g->t0) * susp->g->sr -
- (susp->g->current - susp->g_cnt));
- susp->g_ptr += n;
- susp_took(g_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- }
- snd_list->block_len = (short) (final_count - susp->susp.current);
- susp->susp.current = final_count;
- snd_list->u.next = snd_list_create((snd_susp_type) susp);
- snd_list->block = internal_zero_block;
-}
-
-
-void compose_mark(compose_susp_type susp)
-{
- sound_xlmark(susp->f);
- sound_xlmark(susp->g);
-}
-
-
-void compose_free(compose_susp_type susp)
-{
- sound_unref(susp->f);
- sound_unref(susp->g);
- ffree_generic(susp, sizeof(compose_susp_node), "compose_free");
-}
-
-
-void compose_print_tree(compose_susp_type susp, int n)
-{
- indent(n);
- stdputstr("f:");
- sound_print_tree_1(susp->f, n);
-
- indent(n);
- stdputstr("g:");
- sound_print_tree_1(susp->g, n);
-}
-
-
-sound_type snd_make_compose(sound_type f, sound_type g)
-{
- register compose_susp_type susp;
- rate_type sr = g->sr;
- time_type t0 = g->t0;
-
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
-
- /* combine scale factors of linear inputs (S1 S2) */
- scale_factor *= f->scale;
- f->scale = 1.0F;
-
- /* scale factor in g effectively scales sample rate of f: */
- f->sr *= g->scale;
-/* BUG */
- /* probably need to correct f->t0, but I don't understand this,
- so I'll leave this until we have some test cases */
-
- falloc_generic(susp, compose_susp_node, "snd_make_compose");
- susp->susp.fetch = compose_fetch;
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
-/* BUG: do we need to prepend to f?
- if (t0 < f->t0) sound_prepend_zeros(f, t0); */
- if (t0 < g->t0) sound_prepend_zeros(g, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(g->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = ROUND((t0 - t0_min) * sr);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = compose_toss_fetch;
- t0 = t0_min;
- }
-
- /* initialize susp state */
- susp->susp.free = compose_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = compose_mark;
- susp->susp.print_tree = compose_print_tree;
- susp->susp.name = "compose";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = f->logical_stop_cnt;
- if (susp->susp.log_stop_cnt > g->logical_stop_cnt)
- susp->susp.log_stop_cnt = g->logical_stop_cnt;
- susp->susp.current = 0;
- susp->f = f;
- susp->f_cnt = 0;
- susp->f_time = 0;
- susp->f_time_increment = 1 / f->sr;
- susp->g = g;
- susp->g_cnt = 0;
- susp->started = false;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_compose(sound_type f, sound_type g)
-{
- sound_type f_copy = sound_copy(f);
- sound_type g_copy = sound_copy(g);
- return snd_make_compose(f_copy, g_copy);
-}
diff --git a/lib-src/libnyquist/nyqsrc/compose.h b/lib-src/libnyquist/nyqsrc/compose.h
deleted file mode 100644
index efd773c..0000000
--- a/lib-src/libnyquist/nyqsrc/compose.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_compose(sound_type f, sound_type g);
-sound_type snd_compose(sound_type f, sound_type g);
- /* LISP: (snd-compose SOUND SOUND) */
diff --git a/lib-src/libnyquist/nyqsrc/cque.h b/lib-src/libnyquist/nyqsrc/cque.h
deleted file mode 100644
index e001e3c..0000000
--- a/lib-src/libnyquist/nyqsrc/cque.h
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- * cque.h
- * macros for free lists.
- */
-
-typedef struct cque {
- struct cque *qnext;
-} CQUE;
-
-#define Qinit(q1) { (q1) = 0; }
-
-/* q1 points to a stack CQUE*, new is an element to insert */
-#define Qenter(q1,new) { \
- ((CQUE *)(new))->qnext = ((CQUE *)(q1)); \
- q1 = ((CQUE *)(new)); }
-
-
-/* q1 points to a list of CQUE*: remove elt and assign to new */
-/* NOTE: q1 must be non-empty */
-#define Qget(q1,newtype,new) { \
- (new) = (newtype)(q1); \
- q1 = ((CQUE *)(q1))->qnext; }
-
-
-#define Qempty(q1) ((q1) == 0)
diff --git a/lib-src/libnyquist/nyqsrc/debug.c b/lib-src/libnyquist/nyqsrc/debug.c
deleted file mode 100644
index eb22e01..0000000
--- a/lib-src/libnyquist/nyqsrc/debug.c
+++ /dev/null
@@ -1,248 +0,0 @@
-#include <stdio.h>
-#include "xlisp.h"
-#include "sound.h"
-#include "falloc.h"
-#include "debug.h"
-
-/* The DEBUG_MEM related routines are:
- * dbg_mem_allocated: called when memory is allocated
- * dbg_mem_freed: called when memory is freed
- * dbg_mem_released: called when memory is released
- */
-
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm changes for portability and fix compiler warnings
- */
-
-
-#if DEBUG_MEM
-typedef struct {
- long seq_num;
- char *who;
-} dbg_mem_node, *dbg_mem_type;
-
-static long dbg_mem_last_seq_num = 0;
-long dbg_mem_seq_num = 0;
-long dbg_mem_trace = 0;
-
-void dbg_mem_pause(void)
-{
- stdputstr("RETURN to continue: ");
- getchar();
-}
-
-
-void dbg_mem_allocated(void *p, char *who)
-{
- dbg_mem_type info = (dbg_mem_type) p;
- if (p == (void *) dbg_mem_trace) {
- nyquist_printf("dbg_mem_allocated(%p, %s)\n", p, who);
- }
- info--; /* info is stored (hidden) BEFORE the data */
- dbg_mem_last_seq_num++;
- if (dbg_mem_last_seq_num == dbg_mem_seq_num) {
- nyquist_printf("dbg_mem_allocated: "
- "%s just allocated %p as number %d\n",
- who, p, (int)dbg_mem_last_seq_num);
- dbg_mem_pause();
- }
- info->seq_num = dbg_mem_last_seq_num;
- info->who = who;
-}
-
-
-void dbg_mem_freed(void *p, char *who)
-{
- dbg_mem_type info = (dbg_mem_type) p;
- if (p == (void *) dbg_mem_trace) {
- nyquist_printf("dbg_mem_freed(%p, %s)\n", p, who);
- }
- info--; /* info is stored (hidden) BEFORE the data */
- if (!info->who) {
- nyquist_printf("MEMORY %p FREED TWICE!, "
- "second time by: %s, seq_num %d\n",
- p, who, (int)info->seq_num);
- fflush(stdout);
- dbg_mem_pause();
- }
- if (info->seq_num == dbg_mem_seq_num) {
- nyquist_printf("dbg_mem_freed: %s freeing %p, number %d\n",
- who, p, (int)dbg_mem_seq_num);
- dbg_mem_pause();
- }
- info->who = NULL;
-}
-
-void dbg_mem_released(void *p, char *who)
-{
- dbg_mem_type info = (dbg_mem_type) p;
- if (p == (void *) dbg_mem_trace) {
- nyquist_printf("dbg_mem_released(%p, %s)\n", p, who);
- }
- info--; /* info is stored (hidden) BEFORE the data */
- if (!info->who) {
- nyquist_printf("MEMORY %p RELEASED BUT NOT ALLOCATED!, "
- "released by: %s, seq_num %d\n",
- p, who, (int)info->seq_num);
- fflush(stdout);
- dbg_mem_pause();
- }
- if (info->seq_num == dbg_mem_seq_num) {
- nyquist_printf("dbg_mem_released: %s releasing %p, number %d\n",
- who, p, (int)dbg_mem_seq_num);
- dbg_mem_pause();
- }
-}
-
-
-void dbg_mem_check(void *p, char *who)
-{
- dbg_mem_type info = (dbg_mem_type) p;
- if (!info) {
- nyquist_printf("DBG_MEM_CHECK (from %s): NULL POINTER!", who);
- fflush(stdout);
- dbg_mem_pause();
- }
- info--; /* info is stored (hidden) BEFORE the data */
- if (!info->who) {
- nyquist_printf("DBG_MEM_CHECK (from %s): %p IS FREE!, seq_num %d\n",
- who, p, (int)info->seq_num);
- fflush(stdout);
- dbg_mem_pause();
- }
-}
-
-
-void dbg_mem_print(char *msg, void *p)
-{
- dbg_mem_type info = (dbg_mem_type) p;
- stdputstr(msg);
- if (!info) {
- stdputstr(" NULL POINTER");
- } else {
- info--; /* info is stored (hidden) BEFORE the data */
- if (!info->who) {
- nyquist_printf(" %p IS FREE!, ", p);
- } else {
- nyquist_printf(" %p allocated by %s, ", p, info->who);
- }
- nyquist_printf("seq_num %d\n", (int)info->seq_num);
- }
-}
-#endif
-
-
-void print_sound_type(sound_type s)
-{
- snd_list_type list;
- int blockcount;
-
- nyquist_printf("sound_type: 0x%p\n", s);
- nyquist_printf("\tt0: %f\n", s->t0);
- nyquist_printf("\tsr: %f\n", s->sr);
- nyquist_printf("\tcurrent: %d\n", (int)s->current);
- nyquist_printf("\tlogical_stop_cnt: %d\n", (int)s->logical_stop_cnt);
- nyquist_printf("\tlist: 0x%p\n", s->list);
- nyquist_printf("\tscale: %f\n", s->scale);
-
- list = s->list;
- blockcount = 0;
- nyquist_printf("\t(0x%p:0x%p)->", list, list->block);
- while (list->block) {
- list = list->u.next;
- if (blockcount < 5) {
- nyquist_printf("(0x%p:0x%p)->", list, list->block);
- }
- else if (blockcount == 5) {
- stdputstr(" ... ");
- break;
- }
- blockcount++;
- }
- stdputstr("\n");
-}
-
-void print_snd_list_type(snd_list_type list)
-{
- nyquist_printf("%p: [%p[%d], %p] refcnt %d ls %d", list, list->block,
- list->block_len, list->u.next,
- list->refcnt, list->logically_stopped);
-}
-
-
-
-void print_sample_block_type(char *label,
- sample_block_type sampblock,
- int len)
-{
- int j;
- sample_block_values_type samp;
-
- samp = sampblock->samples;
- nyquist_printf("%s: [%p(ref %d): len %d]: =========>>",
- label, sampblock, (int)sampblock->refcnt, len);
- for (j = 0; j < len; j++) {
- nyquist_printf("%6g ", *samp++);
- }
- stdputstr("\n");
-}
-
-
-/*******/
-snd_susp_type susp_to_watch = NULL;
-
-void watch_susp(snd_susp_type s)
-{
- if (!susp_to_watch) {
- susp_to_watch = s;
- nyquist_printf("watching susp %p\n", s);
- }
-}
-
-sound_type sound_to_watch = NULL;
-
-void watch_sound(sound_type s)
-{
- if (!sound_to_watch) {
- sound_to_watch = s;
- nyquist_printf("watching sound %p\n", s);
- }
-}
-
-
-snd_list_type snd_list_to_watch = NULL;
-
-void watch_snd_list(snd_list_type s)
-{
- snd_list_to_watch = s;
- nyquist_printf("watching snd_list %p\n", s);
-}
-
-
-void snd_list_debug(snd_list_type snd_list, char *s)
-{
- if (snd_list == snd_list_to_watch) {
- nyquist_printf("%s%s\n", s,
- " appended to snd_list_to_watch.");
- watch_snd_list(snd_list->u.next);
- }
-}
-
-
-void snd_list_report(snd_list_type snd_list, char *s)
-{
- if (snd_list == snd_list_to_watch) {
- nyquist_printf("%s: fetching block for watched snd_list.\n",
- s);
- }
-}
-
-
-#ifdef IGNORE
-void test_it()
-{
- if (susp_to_watch && susp_to_watch->keep_fetch)
- stdputstr("WE FOUND A SERIOUS PROBLEM\n");
-}
-#endif
diff --git a/lib-src/libnyquist/nyqsrc/debug.h b/lib-src/libnyquist/nyqsrc/debug.h
deleted file mode 100644
index 26f978e..0000000
--- a/lib-src/libnyquist/nyqsrc/debug.h
+++ /dev/null
@@ -1,43 +0,0 @@
-#ifndef DEBUG_H
-
-#ifdef PARTIAL_DECLARATIONS
-typedef struct partial_susp_struct {
- snd_susp_node susp;
- boolean started;
- long terminate_cnt;
- long logical_stop_cnt;
- boolean logically_stopped;
- sound_type env;
- long env_cnt;
- sample_block_values_type env_ptr;
-
- /* support for interpolation of env */
- sample_type env_x1_sample;
- double env_pHaSe;
- double env_pHaSe_iNcR;
-
- /* support for ramp between samples of env */
- double output_per_env;
- long env_n;
-
- long phase;
- long ph_incr;
- double max_diff;
- double prev_output;
-} partial_susp_node, *partial_susp_type;
-#endif
-
-void print_sound_type(sound_type s);
-void print_sample_block_type(char *label,
- sample_block_type sampblock, int len);
-void watch_susp(snd_susp_type s);
-void watch_sound(sound_type s);
-void watch_snd_list(snd_list_type s);
-void dbg_mem_allocated(void *p, char *who);
-void dbg_mem_freed(void *p, char *who);
-void dbg_mem_print(char *msg, void *p);
-
-/* #define TRACESNDGC */
-
-#define DEBUG_H
-#endif
diff --git a/lib-src/libnyquist/nyqsrc/downsample.c b/lib-src/libnyquist/nyqsrc/downsample.c
deleted file mode 100644
index a796ee5..0000000
--- a/lib-src/libnyquist/nyqsrc/downsample.c
+++ /dev/null
@@ -1,404 +0,0 @@
-/* downsample.c -- linear interpolation to a lower sample rate */
-
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm changes for portability and fix compiler warnings
- */
-
-
-
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-#include "falloc.h"
-#include "cext.h"
-#include "downsample.h"
-
-void down_free();
-
-
-typedef struct down_susp_struct {
- snd_susp_node susp;
- boolean started;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type s;
- long s_cnt;
- sample_block_values_type s_ptr;
-
- /* support for interpolation of s */
- sample_type s_x1_sample;
- double s_pHaSe;
- double s_pHaSe_iNcR;
-
- /* support for ramp between samples of s */
- double output_per_s;
- long s_n;
-} down_susp_node, *down_susp_type;
-
-
-void down_n_fetch(susp, snd_list)
- register down_susp_type susp;
- snd_list_type snd_list;
-{
- int cnt = 0; /* how many samples computed */
- int togo = 0;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register sample_block_values_type s_ptr_reg;
- falloc_sample_block(out, "down_n_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s input sample block: */
- susp_check_term_log_samples(s, s_ptr, s_cnt);
- togo = MIN(togo, susp->s_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- if (to_stop < togo && ((togo = to_stop) == 0)) break;
- }
-
- n = togo;
- s_ptr_reg = susp->s_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- *out_ptr_reg++ = *s_ptr_reg++;
- } while (--n); /* inner loop */
-
- /* using s_ptr_reg is a bad idea on RS/6000: */
- susp->s_ptr += togo;
- out_ptr += togo;
- susp_took(s_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* down_n_fetch */
-
-
-void down_s_fetch(susp, snd_list)
- register down_susp_type susp;
- snd_list_type snd_list;
-{
- int cnt = 0; /* how many samples computed */
- int togo = 0;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register sample_type s_scale_reg = susp->s->scale;
- register sample_block_values_type s_ptr_reg;
- falloc_sample_block(out, "down_s_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- if (to_stop < togo && ((togo = to_stop) == 0)) break;
- }
-
- n = togo;
- s_ptr_reg = susp->s_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- *out_ptr_reg++ = (s_scale_reg * *s_ptr_reg++);
- } while (--n); /* inner loop */
-
- susp->s_ptr = s_ptr_reg;
- out_ptr += togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* down_s_fetch */
-
-
-void down_i_fetch(susp, snd_list)
- register down_susp_type susp;
- snd_list_type snd_list;
-{
- int cnt = 0; /* how many samples computed */
- sample_type s_x2_sample;
- int togo = 0;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register sample_type s_pHaSe_iNcR_rEg = (sample_type) susp->s_pHaSe_iNcR;
- register double s_pHaSe_ReG;
- register sample_type s_x1_sample_reg;
-
- falloc_sample_block(out, "down_i_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp_check_term_log_samples(s, s_ptr, s_cnt);
- susp->s_x1_sample = susp_fetch_sample(s, s_ptr, s_cnt);
- }
-
- susp_check_term_log_samples(s, s_ptr, s_cnt);
- s_x2_sample = susp_current_sample(s, s_ptr);
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo <= 0) {
- togo = 0;
- break;
- }
- }
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- if (to_stop < togo && ((togo = to_stop) <= 0)) {
- togo = 0;
- break;
- }
- }
-
- n = togo;
- s_pHaSe_ReG = susp->s_pHaSe;
- s_x1_sample_reg = susp->s_x1_sample;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- while (s_pHaSe_ReG >= 1.0) {
- s_x1_sample_reg = s_x2_sample;
- /* pick up next sample as s_x2_sample: */
- susp->s_ptr++;
- susp_took(s_cnt, 1);
- s_pHaSe_ReG -= 1.0;
- /* derived from susp_check_term_log_samples_break, but with
- a goto instead of a break */
- if (susp->s_cnt == 0) {
- susp_get_samples(s, s_ptr, s_cnt);
- terminate_test(s_ptr, s, susp->s_cnt);
- /* see if newly discovered logical stop time: */
- logical_stop_test(s, susp->s_cnt);
- if ((susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <
- susp->susp.current + cnt + togo) ||
- (!susp->logically_stopped &&
- susp->susp.log_stop_cnt != UNKNOWN &&
- susp->susp.log_stop_cnt <
- susp->susp.current + cnt + togo)) {
- goto breakout;
- }
- }
- s_x2_sample = susp_current_sample(s, s_ptr);
- }
- *out_ptr_reg++ = (sample_type)
- (s_x1_sample_reg * (1 - s_pHaSe_ReG) +
- s_x2_sample * s_pHaSe_ReG);
- s_pHaSe_ReG += s_pHaSe_iNcR_rEg;
- } while (--n); /* inner loop */
-breakout:
- togo -= n;
- susp->s_pHaSe = s_pHaSe_ReG;
- susp->s_x1_sample = s_x1_sample_reg;
- out_ptr += togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* down_i_fetch */
-
-
-void down_toss_fetch(snd_list)
- snd_list_type snd_list;
-{
- register down_susp_type susp = (down_susp_type) snd_list->u.susp;
- long final_count = MIN(susp->susp.current + max_sample_block_len,
- susp->susp.toss_cnt);
- time_type final_time = susp->susp.t0 + final_count / susp->susp.sr;
- long n;
-
- /* fetch samples from s up to final_time for this block of zeros */
- while (((long) ((final_time - susp->s->t0) * susp->s->sr + 0.5)) >=
- susp->s->current)
- susp_get_samples(s, s_ptr, s_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- if (final_count == susp->susp.toss_cnt) {
- n = ROUND((final_time - susp->s->t0) * susp->s->sr -
- (susp->s->current - susp->s_cnt));
- susp->s_ptr += n;
- susp_took(s_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- }
- snd_list->block_len = (short) (final_count - susp->susp.current);
- susp->susp.current = final_count;
- snd_list->u.next = snd_list_create((snd_susp_type) susp);
- snd_list->block = internal_zero_block;
-}
-
-
-void down_mark(down_susp_type susp)
-{
- sound_xlmark(susp->s);
-}
-
-
-void down_free(down_susp_type susp)
-{
- sound_unref(susp->s);
- ffree_generic(susp, sizeof(down_susp_node), "down_free");
-}
-
-
-void down_print_tree(down_susp_type susp, int n)
-{
- indent(n);
- stdputstr("s:");
- sound_print_tree_1(susp->s, n);
-}
-
-
-sound_type snd_make_down(sr, s)
- rate_type sr;
- sound_type s;
-{
- register down_susp_type susp;
- /* sr specified as input parameter */
- time_type t0 = s->t0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
-
- if (s->sr < sr) {
- sound_unref(s);
- xlfail("snd-down: output sample rate must be lower than input");
- }
- falloc_generic(susp, down_susp_node, "snd_make_down");
-
- /* select a susp fn based on sample rates */
- if (s->sr == sr) {
- susp->susp.fetch = ((s->scale == 1.0) ?
- down_n_fetch : down_s_fetch);
- } else {
- susp->susp.fetch = down_i_fetch;
- }
-
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < s->t0) sound_prepend_zeros(s, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(s->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = ROUND((t0 - t0_min) * sr);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = down_toss_fetch;
- t0 = t0_min;
- }
-
- /* initialize susp state */
- susp->susp.free = down_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = down_mark;
- susp->susp.print_tree = down_print_tree;
- susp->susp.name = "down";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(s);
- susp->started = false;
- susp->susp.current = 0;
- susp->s = s;
- susp->s_cnt = 0;
- susp->s_pHaSe = 0.0;
- susp->s_pHaSe_iNcR = s->sr / sr;
- susp->s_n = 0;
- susp->output_per_s = sr / s->sr;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_down(sr, s)
- rate_type sr;
- sound_type s;
-{
- sound_type s_copy = sound_copy(s);
- return snd_make_down(sr, s_copy);
-}
diff --git a/lib-src/libnyquist/nyqsrc/downsample.h b/lib-src/libnyquist/nyqsrc/downsample.h
deleted file mode 100644
index 1435a73..0000000
--- a/lib-src/libnyquist/nyqsrc/downsample.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_down();
-sound_type snd_down();
- /* LISP: (snd-down ANYNUM SOUND) */
diff --git a/lib-src/libnyquist/nyqsrc/falloc.c b/lib-src/libnyquist/nyqsrc/falloc.c
deleted file mode 100644
index f6f8081..0000000
--- a/lib-src/libnyquist/nyqsrc/falloc.c
+++ /dev/null
@@ -1,126 +0,0 @@
-/*
- * falloc.c
- * data for fugue memory allocation.
- */
-
-#include <stdio.h>
-#include "xlisp.h"
-#include "sound.h"
-#include "falloc.h"
-
-/* special free lists */
-CQUE *sample_block_free = NULL; /* really a sample_block_type */
-
-/* special counts */
-int sample_block_used = 0;
-int sample_block_low_water = 0;
-int sample_block_total = 0;
-int snd_list_used = 0;
-int sound_used = 0;
-
-/* generic free lists */
-CQUE *generic_free[MAXLISTS];
-
-
-void falloc_init(void)
-{
- int i;
- for (i = 0; i < MAXLISTS; i++) generic_free[i] = NULL;
-}
-
-
-/* memory pool */
-char *poolp = NULL;
-char *poolend = NULL;
-int npools = 0;
-
-void sound_already_free_test(s)
- sound_type s;
-{
- sound_type sp;
- for (sp = (sound_type) sound_free; sp; sp = (sound_type) ((CQUE *) sp)->qnext) {
- if (s == sp) {
- stdputstr("SOUND ALREADY FREE!!!");
- fflush(stdout);
- sp = 0; sp->list = 0; /* trap to debugger */
- }
- }
-}
-
-
-/* new_pool -- allocate a new pool from which mem is allocated */
-/**/
-void new_pool(void)
-{
- poolp = (char *) malloc(MAXPOOLSIZE);
- if (poolp == NULL) {
- fprintf(stderr, "fugue: out of memory!\n");
- EXIT(1);
- }
- poolend = poolp + MAXPOOLSIZE;
- npools++;
- /* stick to double word boundaries */
- poolp = (char *) round_size(((long) poolp));
-}
-
-
-/* find_sample_block -- get sample block when freelist is empty */
-/* Try these strategies in order:
- 1) try free list
- 2) use pool to get sample_blocks_low_water + BLOCKS_PER_GC blocks or until
- pool runs out
- 3) GC and try free list again, set sample_blocks_low_water to
- sample_blocks_used
- 4) try pool again
- 5) allocate new pool and use it
- */
-sample_block_type find_sample_block(void)
-{
- sample_block_type sp;
- if (sample_block_total < sample_block_low_water + BLOCKS_PER_GC &&
- check_pool(round_size(sizeof(sample_block_node)))) {
- if (DEBUG_MEM) poolp += DEBUG_MEM_INFO_SIZE;
- sp = (sample_block_type) poolp;
- poolp += round_size(sizeof(sample_block_node));
- sample_block_total++;
-/* printf("fp%d ", sample_block_total - sample_block_low_water); */
- } else {
-/* printf("falloc calling gc\n"); */
- gc();
- sample_block_low_water = sample_block_used;
- if (!Qempty(sample_block_free)) {
- Qget(sample_block_free, sample_block_type, sp);
-/* printf("gc, then from freelist\n"); */
- } else if (check_pool(round_size(sizeof(sample_block_node)))) {
- if (DEBUG_MEM) poolp += DEBUG_MEM_INFO_SIZE;
- sp = (sample_block_type) poolp;
- poolp += sizeof(sample_block_node);
- sample_block_total++;
-/* printf("gc, then from pool\n"); */
- } else {
- new_pool();
- if (DEBUG_MEM) poolp += DEBUG_MEM_INFO_SIZE;
- sp = (sample_block_type) poolp;
- poolp += round_size(sizeof(sample_block_node));
- sample_block_total++;
-/* printf("gc, then new pool\n"); */
- }
- }
- return sp;
-}
-
-
-
-/* get_from_pool -- return size bytes from pool memory */
-/**/
-char *get_from_pool(size_t siz)
-{
- if (!check_pool(siz)) {
- new_pool();
- }
- poolp += siz;
- if (DEBUG_MEM) poolp += DEBUG_MEM_INFO_SIZE; /* allow for debug info */
- return poolp - siz;
-}
-
-
diff --git a/lib-src/libnyquist/nyqsrc/falloc.h b/lib-src/libnyquist/nyqsrc/falloc.h
deleted file mode 100644
index 3227052..0000000
--- a/lib-src/libnyquist/nyqsrc/falloc.h
+++ /dev/null
@@ -1,230 +0,0 @@
-/*
- * falloc.h
- * nyquist memory allocation data structures and macros
- *
- * there is an falloc and ffree for each major type of data structure
- * there is an falloc and ffree for generic (not so common) structures
- * there is an frelease for some structures. this reduces the
- * reference count for the particular structure by 1; it
- * does not continue recursively.
- */
-
-/* Debugging support:
- * When DEBUG_MEM is set, each piece of allocated storage will contain
- * a pointer to a string naming the caller or other allocation info,
- * and a sequence number. (8 extra bytes are allocated for this info).
- *
- * When storage is freed, the ID is set to NULL, and the routine
- * dbg_mem_check(ptr) will abort if ID is NULL. Call this routine to
- * avoid following a pointer to data that was previously freed.
- *
- * The goal of this support is to allow you to "go back" to the point
- * where memory is corrupted; specifically where a memory block is freed
- * too early.
- *
- * When a memory-related bug is crashing the system:
- * (1) Recompile with DEBUG_MEM on.
- * (2) Develop some Nyquist code that will predictably crash the system.
- * (3) When Nyquist crashes, use a debugger to find where the bad
- * pointer came from. See if the source of the pointer was freed.
- * (4) If the source of the pointer was freed, then notice the sequence
- * number.
- * (5) Rerun with dbg_mem_seq_num set to the number noted in (4).
- * (6) Nyquist will print when the storage in question was allocated and
- * freed. Use the debugger to find out why the storage is
- * freed too early and who did it.
- * (7) If the source of the pointer in (3) was not freed, you're on your
- * own.
- *
- * The DEBUG_MEM related routines are:
- * dbg_mem_allocated: called when memory is allocated
- * dbg_mem_freed: called when memory is freed
- * dbg_mem_released: called when memory is released
- * dbg_mem_check: called to check memory
- *
- * see also xldmem.c:
- * by setting xldmem_trace to a pointer, you can trace when the
- * pointer is referenced by anything in the heap
- */
-
-
-/* to get size_t on pmax: */
-#ifdef pmax
-#include "sys/types.h"
-#endif
-
-#include "cque.h"
-#include "debug.h"
-
-#define DEBUG_MEM 1
-#define DEBUG_MEM_INFO_SIZE (sizeof(long) + sizeof(char *))
-
-/* special free lists */
-extern CQUE *sample_block_free; /* really a sample_block_type */
-
-/* special counts */
-extern int sample_block_total;
-extern int sample_block_used;
-extern int snd_list_used;
-extern int sound_used;
-extern long table_memory;
-
-/* generic free lists */
-#define MAXLISTS 128
-extern CQUE *generic_free[MAXLISTS];
-
-/* memory pool */
-#define MAXPOOLSIZE 1000000
-extern char *poolp;
-extern char *poolend;
-extern int npools;
-extern int sample_blocks_since_gc;
-
-void falloc_init(void);
-void new_pool(void);
-sample_block_type find_sample_block(void);
-
-char *get_from_pool(size_t siz);
-
-#define round_size(n) (((n) + 7) & ~7)
-
-/* check_pool -- returns true if enough bytes are available */
-#if DEBUG_MEM
-#define check_pool(size) (poolp + (size) + DEBUG_MEM_INFO_SIZE <= poolend)
-#else
-#define check_pool(size) (poolp + (size) <= poolend)
-#endif
-
-#define BLOCKS_PER_GC 100
-
-#define falloc_sample_block(sp, who) { \
- if (!Qempty(sample_block_free)) \
- Qget(sample_block_free, sample_block_type, sp) \
- else sp = find_sample_block(); \
- /* sample_block_test(sp, "falloc_sample_block"); */ \
- /* printf("[%x] ", sp); */ \
- if (DEBUG_MEM) dbg_mem_allocated(sp, who); \
- sp->refcnt = 1; \
- sample_block_used++; \
-}
-
-
-#define ffree_sample_block(sp, who) { \
- /* printf("freeing sample_block@%x\n", sp); */ \
- if (DEBUG_MEM) dbg_mem_freed(sp, who); \
- Qenter(sample_block_free, sp); \
- sample_block_used--; \
-}
-
-
-#define frelease_sample_block(sp, who) { \
- sp->refcnt--; \
- if (DEBUG_MEM) dbg_mem_released(sp, who); \
- if (sp->refcnt <= 0) { \
- ffree_sample_block(sp); \
- } \
-}
-
-
-/* NOTE: This must not cause garbage collection.
- * LVAL parameters to snd_make_? functions are not
- * protected and falloc_sound is invoked there.
- */
-#define snd_list_free (generic_free[round_size(sizeof(snd_list_node)) >> 3])
-
-#define falloc_snd_list(sp, who) { \
- if (!Qempty(snd_list_free)) \
- Qget(snd_list_free, snd_list_type, sp) \
- else \
- sp = (snd_list_type)get_from_pool(round_size(sizeof(snd_list_node)));\
- snd_list_used++; \
- if (DEBUG_MEM) dbg_mem_allocated(sp, who); \
-}
-
-
-#define ffree_snd_list(sp, who) { \
- if (DEBUG_MEM) dbg_mem_freed(sp, who); \
- Qenter(snd_list_free, sp); \
- snd_list_used--; \
-}
-
-
-#define frelease_snd_list(sp, who) { \
- sp->refcnt--; \
- if (DEBUG_MEM) dbg_mem_released(sp, who); \
- if (sp->refcnt <= 0) { \
- ffree_snd_list(sp, who); \
- } \
-}
-
-
-#define sound_free (generic_free[round_size(sizeof(sound_node)) >> 3])
-
-#define NORMALSOUNDALLOC
-#ifdef NORMALSOUNDALLOC
-#define falloc_sound(sp, who) { \
- if (!Qempty(sound_free)) { \
- Qget(sound_free, sound_type, sp); \
- } else { \
- sp = (sound_type) get_from_pool(round_size(sizeof(sound_node))); \
- } \
- sound_used++; \
- if (DEBUG_MEM) dbg_mem_allocated(sp, who); \
-}
-#else
-#define falloc_sound(sp) \
- sp =(sound_type) \
- get_from_pool(round_size(sizeof(sound_node)))
-#endif
-
-/* note: usually you call sound_unref, not this macro */
-#define ffree_sound(sp, who) { \
-/* sound_already_free_test(); */ \
- if (DEBUG_MEM) dbg_mem_freed(sp, who); \
- Qenter(sound_free, sp); \
- sound_used--; \
-}
-
-
-/* falloc_generic -- sp gets new node of type sptype */
-/**/
-#define falloc_generic(sp, sptype, who) { \
- int size = round_size(sizeof(sptype)); \
- falloc_generic_bytes(sp, sptype, size, who) }
-
-/* falloc_generic_n -- sp gets new array of n sptype's */
-/**/
-#define falloc_generic_n(sp, sptype, n, who) { \
- int min_size = sizeof(sptype) * (n); \
- int size = round_size(min_size); \
- falloc_generic_bytes(sp, sptype, size, who) }
-
-#define falloc_generic_bytes(sp, sptype, size, who) \
- if ((size >> 3) >= MAXLISTS) { \
- stdputstr("falloc_generic problem\n"); \
- sp = (sptype *) malloc(size); \
- } else if (!Qempty(generic_free[size >> 3])) { \
- Qget(generic_free[size >> 3], sptype *, sp); \
- } else { \
- sp = (sptype *) get_from_pool(size); \
- } \
- if (DEBUG_MEM) dbg_mem_allocated(sp, who); \
-/* printf("GENERIC ALLOC %x\n", sp); */
-
-
-/* ffree_generic puts an item back on proper freelist */
-/* NOTE: sIzE is capitalized funny so that it will not
- * match an actual parameter, e.g. if the caller writes
- * ffree_generic(ptr, size), we don't want the expanded
- * code to include: "int size = round_size(size) >> 3"!
- */
-#define ffree_generic(sp, nn, who) { \
- int sIzE = round_size(nn) >> 3; \
- if (DEBUG_MEM) dbg_mem_freed(sp, who); \
- /* printf("GENERIC FREE %x SIZE %d\n", sp, nnn); */ \
- if ((sIzE) >= MAXLISTS) { \
- free(sp); \
- } else { \
- Qenter(generic_free[sIzE], sp); \
- } \
-}
diff --git a/lib-src/libnyquist/nyqsrc/ffilterkit.c b/lib-src/libnyquist/nyqsrc/ffilterkit.c
deleted file mode 100644
index d78d5c5..0000000
--- a/lib-src/libnyquist/nyqsrc/ffilterkit.c
+++ /dev/null
@@ -1,123 +0,0 @@
-/*
- * ffilterkit.c (library "filterkit.a"):
- * Kaiser-windowed low-pass filter support.
- */
-
-/* ffilterkit.c
- *
- * FilterUp() - Applies a filter to a given sample when up-converting.
- * FilterUD() - Applies a filter to a given sample when up- or down-
- * converting.
- */
-
- /* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm changes for portability and fix compiler warnings
- */
-
-#include <stdio.h>
-#include <math.h>
-#include <string.h>
-#include "stdefs.h"
-#include "fresample.h"
-#include "ffilterkit.h"
-
-
-fast_float FilterUp(float Imp[], float ImpD[],
- int Nwing, boolean Interp,
- float *Xp, double Ph, int Inc)
-{
- float *Hp, *Hdp = NULL, *End;
- fast_float a = 0;
- fast_float v, t;
- double exact_index = Ph * Npc;
- long index = (long) exact_index; /* convert fraction to filter index */
-
-/* nyquist_printf("FilterUp, Inc %d, phase %g\n", Inc, Ph); */
- v=0;
- Hp = &Imp[index];
- End = &Imp[Nwing];
- if (Interp) {
- Hdp = &ImpD[index];
- a = exact_index - index;
-/* nyquist_printf("fraction %g\n", a); */
- }
- if (Inc == 1) /* If doing right wing... */
- { /* ...drop extra coeff, so when Ph is */
- End--; /* 0.5, we don't do too many mult's */
- if (Ph == 0) /* If the phase is zero... */
- { /* ...then we've already skipped the */
- Hp += Npc; /* first sample, so we must also */
- Hdp += Npc; /* skip ahead in Imp[] and ImpD[] */
- }
- }
- if (Interp) {
- while (Hp < End) {
- t = *Hp; /* Get filter coeff */
- /* t scaled by 2^(16 + NLpScl)/LpScl */
- t += *Hdp *a; /* t is now interp'd filter coeff */
- Hdp += Npc; /* Filter coeff differences step */
- t *= *Xp; /* Mult coeff by input sample */
- /* t scaled by 2^(16 + NLpScl)/LpScl */
- v += t; /* The filter output */
- Hp += Npc; /* Filter coeff step */
- Xp += Inc; /* Input signal step. NO CHECK ON BOUNDS */
- }
- } else {
- while (Hp < End) {
- t = *Hp; /* Get filter coeff */
- t *= *Xp; /* Mult coeff by input sample */
- v += t; /* The filter output */
- Hp += Npc; /* Filter coeff step */
- Xp += Inc; /* Input signal step. NO CHECK ON BOUNDS */
- }
- }
- return(v);
-}
-
-fast_float FilterUD( float Imp[], float ImpD[],
- int Nwing, boolean Interp,
- float *Xp, double Ph, int Inc, double dhb)
-{
- double a;
- float *Hp, *Hdp, *End;
- fast_float v, t;
- double Ho;
-
- v=0;
- Ho = Ph*dhb;
- End = &Imp[Nwing];
- if (Inc == 1) /* If doing right wing... */
- { /* ...drop extra coeff, so when Ph is */
- End--; /* 0.5, we don't do too many mult's */
- if (Ph == 0) /* If the phase is zero... */
- Ho += dhb; /* ...then we've already skipped the */
- } /* first sample, so we must also */
- /* skip ahead in Imp[] and ImpD[] */
- if (Interp) {
- long HoIndex = (long) Ho;
- while ((Hp = &Imp[HoIndex]) < End) {
- t = *Hp; /* Get IR sample */
- Hdp = &ImpD[HoIndex]; /* get interp (lower Na) bits from diff table*/
- a = Ho - HoIndex; /* a is logically between 0 and 1 */
- t += *Hdp * a; /* t is now interp'd filter coeff */
- t *= *Xp; /* Mult coeff by input sample */
- v += t; /* The filter output */
- Ho += dhb; /* IR step */
- Xp += Inc; /* Input signal step. NO CHECK ON BOUNDS */
- HoIndex = (long) Ho;
- }
- } else {
- long HoIndex = (long) Ho;
- while ((Hp = &Imp[HoIndex]) < End) {
- t = *Hp; /* Get IR sample */
- t *= *Xp; /* Mult coeff by input sample */
- v += t; /* The filter output */
- Ho += dhb; /* IR step */
- Xp += Inc; /* Input signal step. NO CHECK ON BOUNDS */
- HoIndex = (long) Ho;
- }
- }
- return(v);
-}
-
diff --git a/lib-src/libnyquist/nyqsrc/ffilterkit.h b/lib-src/libnyquist/nyqsrc/ffilterkit.h
deleted file mode 100644
index d277e7d..0000000
--- a/lib-src/libnyquist/nyqsrc/ffilterkit.h
+++ /dev/null
@@ -1,15 +0,0 @@
-/*:filterkit.h */
-
-/*
- * FilterUp() - Applies a filter to a given sample when up-converting.
- * FilterUD() - Applies a filter to a given sample when up- or down-
- * converting.
- */
-
-fast_float FilterUp(mem_float Imp[], mem_float ImpD[], int Nwing,
- boolean Interp, mem_float *Xp, double Ph, int Inc);
-
-fast_float FilterUD(mem_float Imp[], mem_float ImpD[], int Nwing,
- boolean Interp, mem_float *Xp, double Ph, int Inc,
- double dhb);
-
diff --git a/lib-src/libnyquist/nyqsrc/fft-rbd.c b/lib-src/libnyquist/nyqsrc/fft-rbd.c
deleted file mode 100644
index 6d01e6a..0000000
--- a/lib-src/libnyquist/nyqsrc/fft-rbd.c
+++ /dev/null
@@ -1,156 +0,0 @@
-/* samples.c -- fugue sound data type */
-
-#include <stdio.h>
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-#include "falloc.h"
-#include "fft.h"
-
-
-/* NOTE: this code does not properly handle start times that do not
- * correspond to the time of the first actual sample
- */
-
-
-/* snd_fetch_array -- fetch a lisp array of samples */
-/*
- * storage layout: the extra field points to extra state that we'll use
- * extra[0] -> length of extra storage
- * extra[1] -> CNT (number of samples in current block)
- * extra[2] -> INDEX (current sample index in current block)
- * extra[3] -> FILLCNT (how many samples in buffer)
- * extra[4] -> TERMCNT (how many samples until termination)
- * extra[4 .. 4+len-1] -> samples (stored as floats)
- *
- * Termination details:
- * Return NIL when the sound terminates.
- * Termination is defined as the point where all original
- * signal samples have been shifted out of the samples buffer
- * so that all that's left are zeros from beyond the termination
- * point.
- * Implementation: when termination is discovered, set TERMCNT
- * to the number of samples to be shifted out. TERMCNT is initially
- * -1 as a flag that we haven't seen the termination yet.
- * Each time samples are shifted, decrement TERMCNT by the shift amount.
- * When TERMCNT goes to zero, return NULL.
- */
-
-#define CNT extra[1]
-#define INDEX extra[2]
-#define FILLCNT extra[3]
-#define TERMCNT extra[4]
-#define OFFSET 5
-#define SAMPLES list->block->samples
-
-LVAL snd_fft(sound_type s, long len, long step /* more parameters may belong here */)
-{
- long i, maxlen, skip, fillptr;
- float *samples;
- LVAL result;
-
- if (len < 1) xlfail("len < 1");
-
- if (!s->extra) { /* this is the first call, so fix up s */
- /* note: any storage required by fft must be allocated here in a contiguous
- * block of memory who's size is given by the first long in the block.
- * Here, there are 4 more longs after the size, and then room for len floats
- * (assumes that floats and longs take equal space).
- *
- * The reason for this storage restriction is that when a sound is freed, the
- * block of memory pointed to by extra is also freed. There is no function
- * call that might free a more complex structure (this could be added in sound.c
- * however if it's really necessary).
- */
- falloc_generic_n(s->extra, long, len + OFFSET, "snd_fft");
- s->extra[0] = sizeof(long) * (len + OFFSET);
- s->CNT = s->INDEX = s->FILLCNT = 0;
- s->TERMCNT = -1;
- maxlen = len;
- } else {
- maxlen = (s->extra[0] / sizeof(long)) - OFFSET;
- if (maxlen < 1) xlfail("sound in use by another iterator");
- if (maxlen < len) xlfail("len grew");
- }
- samples = (float *) &(s->extra[OFFSET]);
-
- /* step 1: refill buffer with samples */
- fillptr = s->FILLCNT;
- while (fillptr < maxlen) {
- if (s->INDEX == s->CNT) {
- sound_get_next(s, &(s->CNT));
- if (s->SAMPLES == zero_block->samples) {
- if (s->TERMCNT < 0) s->TERMCNT = fillptr;
- }
- s->INDEX = 0;
- }
- samples[fillptr++] = s->SAMPLES[s->INDEX++] * s->scale;
- }
- s->FILLCNT = fillptr;
-
- /* it is important to test here AFTER filling the buffer, because
- * if fillptr WAS 0 when we hit the zero_block, then filling the
- * buffer will set TERMCNT to 0.
- */
- if (s->TERMCNT == 0) return NULL;
-
- /* logical stop time is ignored by this code -- to fix this,
- * you would need a way to return the logical stop time to
- * the caller.
- */
-
- /* HERE IS WHERE THE FFT SHOULD TAKE PLACE ON samples. DO NOT
- * DESTROY SAMPLES IF YOU WANT TO ALLOW OVERLAPPED FFT'S. THE
- * CURRENT CODE RETURNS SAMPLES, BUT A REAL FFT WOULD RETURN
- * THE RESULT OF THE FFT IN STEP 2, WHICH FOLLOWS:
- */
-
- /* step 2: construct an array and return it */
- xlsave1(result);
- result = newvector(len);
-
- for (i = 0; i < len; i++) {
- setelement(result, i, cvflonum(samples[i]));
- }
-
- /* step 3: shift samples by step */
- if (step < 0) xlfail("step < 0");
- s->FILLCNT -= step;
- if (s->FILLCNT < 0) s->FILLCNT = 0;
- for (i = 0; i < s->FILLCNT; i++) {
- samples[i] = samples[i + step];
- }
-
-
- if (s->TERMCNT >= 0) {
- s->TERMCNT -= step;
- if (s->TERMCNT < 0) s->TERMCNT = 0;
- }
-
-
- /* step 4: advance in sound to next sample we need
- * (only does work if step > size of buffer)
- */
- skip = step - maxlen;
- while (skip > 0) {
- long remaining = s->CNT - s->INDEX;
- if (remaining >= skip) {
- s->INDEX += skip;
- skip = 0;
- } else {
- skip -= remaining;
- sound_get_next(s, &(s->CNT));
- s->INDEX = 0;
- }
- }
-
- /* restore the stack */
- xlpop();
- return result;
-} /* snd_fetch_array */
-
-
-
-
diff --git a/lib-src/libnyquist/nyqsrc/fft.c b/lib-src/libnyquist/nyqsrc/fft.c
deleted file mode 100644
index 03da6fb..0000000
--- a/lib-src/libnyquist/nyqsrc/fft.c
+++ /dev/null
@@ -1,221 +0,0 @@
-/* fft.c -- implement snd_fft */
-
-#include <math.h>
-#include <stdio.h>
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-#include "falloc.h"
-#include "fft.h"
-#include "fftn.h"
-
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm change for portability: min->MIN
- */
-
-
-/* NOTE: this code does not properly handle start times that do not
- * correspond to the time of the first actual sample
- */
-
-
-/* snd_fetch_array -- fetch a lisp array of samples */
-/*
- * storage layout: the extra field points to extra state that we'll use
- * extra[0] -> length of extra storage
- * extra[1] -> CNT (number of samples in current block)
- * extra[2] -> INDEX (current sample index in current block)
- * extra[3] -> FILLCNT (how many samples in buffer)
- * extra[4] -> TERMCNT (how many samples until termination)
- * extra[5 .. 5+len-1] -> samples (stored as floats)
- * extra[5+len .. 5+3*len-1] -> real and imag. arrays for fft
- * extra[5+3*len ... 5+4*len-1] -> window coefficients
- *
- * Termination details:
- * Return NIL when the sound terminates.
- * Termination is defined as the point where all original
- * signal samples have been shifted out of the samples buffer
- * so that all that's left are zeros from beyond the termination
- * point.
- * Implementation: when termination is discovered, set TERMCNT
- * to the number of samples to be shifted out. TERMCNT is initially
- * -1 as a flag that we haven't seen the termination yet.
- * Each time samples are shifted, decrement TERMCNT by the shift amount.
- * When TERMCNT goes to zero, return NULL.
- */
-
-#define CNT extra[1]
-#define INDEX extra[2]
-#define FILLCNT extra[3]
-#define TERMCNT extra[4]
-#define OFFSET 5
-#define SAMPLES list->block->samples
-
-/* DEBUGGING PRINT FUNCTION:
- void printfloats(char *caption, float *data, int len)
- {
- int i;
- printf("%s: ", caption);
- for (i = 0; i < len; i++) {
- printf("%d:%g ", i, data[i]);
- }
- printf("\n");
- }
-*/
-
-void n_samples_from_sound(sound_type s, long n, float *table)
-{
- long blocklen;
- sample_type scale_factor = s->scale;
- s = sound_copy(s);
- while (n > 0) {
- sample_block_type sampblock = sound_get_next(s, &blocklen);
- long togo = MIN(blocklen, n);
- long i;
- sample_block_values_type sbufp = sampblock->samples;
- for (i = 0; i < togo; i++) {
- *table++ = (float) (*sbufp++ * scale_factor);
- }
- n -= togo;
- }
- sound_unref(s);
-}
-
-
-LVAL snd_fft(sound_type s, long len, long step, LVAL winval)
-{
- long i, maxlen, skip, fillptr;
- float *samples;
- float *temp_fft;
- float *window;
- LVAL result;
-
- if (len < 1) xlfail("len < 1");
-
- if (!s->extra) { /* this is the first call, so fix up s */
- sound_type w = NULL;
- if (winval) {
- if (soundp(winval)) {
- w = getsound(winval);
- } else {
- xlerror("expected a sound", winval);
- }
- }
- /* note: any storage required by fft must be allocated here in a
- * contiguous block of memory who's size is given by the first long
- * in the block. Here, there are 4 more longs after the size, and
- * then room for 4*len floats (assumes that floats and longs take
- * equal space).
- *
- * The reason for 4*len floats is to provide space for:
- * the samples to be transformed (len)
- * the complex FFT result (2*len)
- * the window coefficients (len)
- *
- * The reason for this storage restriction is that when a sound is
- * freed, the block of memory pointed to by extra is also freed.
- * There is no function call that might free a more complex
- * structure (this could be added in sound.c, however, if it's
- * really necessary).
- */
- s->extra = (long *) malloc(sizeof(long) * (4 * len + OFFSET));
- s->extra[0] = sizeof(long) * (4 * len + OFFSET);
- s->CNT = s->INDEX = s->FILLCNT = 0;
- s->TERMCNT = -1;
- maxlen = len;
- window = (float *) &(s->extra[OFFSET + 3 * len]);
- /* fill the window from w */
- if (!w) {
- for (i = 0; i < len; i++) *window++ = 1.0F;
- } else {
- n_samples_from_sound(w, len, window);
- }
- } else {
- maxlen = ((s->extra[0] / sizeof(long)) - OFFSET) / 4;
- if (maxlen != len) xlfail("len changed from initial value");
- }
- samples = (float *) &(s->extra[OFFSET]);
- temp_fft = samples + len;
- window = temp_fft + 2 * len;
- /* step 1: refill buffer with samples */
- fillptr = s->FILLCNT;
- while (fillptr < maxlen) {
- if (s->INDEX == s->CNT) {
- sound_get_next(s, &(s->CNT));
- if (s->SAMPLES == zero_block->samples) {
- if (s->TERMCNT < 0) s->TERMCNT = fillptr;
- }
- s->INDEX = 0;
- }
- samples[fillptr++] = s->SAMPLES[s->INDEX++] * s->scale;
- }
- s->FILLCNT = fillptr;
-
- /* it is important to test here AFTER filling the buffer, because
- * if fillptr WAS 0 when we hit the zero_block, then filling the
- * buffer will set TERMCNT to 0.
- */
- if (s->TERMCNT == 0) return NULL;
-
- /* logical stop time is ignored by this code -- to fix this,
- * you would need a way to return the logical stop time to
- * the caller.
- */
-
- /* step 2: construct an array and return it */
- xlsave1(result);
- result = newvector(len);
-
- /* first len floats will be real part, second len floats imaginary
- * copy buffer to temp_fft with windowing
- */
- for (i = 0; i < len; i++) {
- temp_fft[i] = samples[i] * *window++;
- temp_fft[i + len] = 0.0F;
- }
- /* perform the fft: */
- fftnf(1, (const int *) &len, temp_fft, temp_fft + len, 1, -1.0);
- setelement(result, 0, cvflonum(temp_fft[0]));
- for (i = 2; i < len; i += 2) {
- setelement(result, i - 1, cvflonum(temp_fft[i / 2] * 2));
- setelement(result, i, cvflonum(temp_fft[len + (i / 2)] * -2));
- }
- if (len % 2 == 0)
- setelement(result, len - 1, cvflonum(temp_fft[len / 2]));
-
- /* step 3: shift samples by step */
- if (step < 0) xlfail("step < 0");
- s->FILLCNT -= step;
- if (s->FILLCNT < 0) s->FILLCNT = 0;
- for (i = 0; i < s->FILLCNT; i++) {
- samples[i] = samples[i + step];
- }
-
- if (s->TERMCNT >= 0) {
- s->TERMCNT -= step;
- if (s->TERMCNT < 0) s->TERMCNT = 0;
- }
-
- /* step 4: advance in sound to next sample we need
- * (only does work if step > size of buffer)
- */
- skip = step - maxlen;
- while (skip > 0) {
- long remaining = s->CNT - s->INDEX;
- if (remaining >= skip) {
- s->INDEX += skip;
- skip = 0;
- } else {
- skip -= remaining;
- sound_get_next(s, &(s->CNT));
- s->INDEX = 0;
- }
- }
-
- /* restore the stack */
- xlpop();
- return result;
-} /* snd_fetch_array */
diff --git a/lib-src/libnyquist/nyqsrc/fft.h b/lib-src/libnyquist/nyqsrc/fft.h
deleted file mode 100644
index 74b2b24..0000000
--- a/lib-src/libnyquist/nyqsrc/fft.h
+++ /dev/null
@@ -1,4 +0,0 @@
-/* fft.h -- fft returned through a lisp array */
-
-LVAL snd_fft(sound_type s, long len, long step, LVAL w);
- /* LISP: (SND-FFT SOUND FIXNUM FIXNUM ANY) */
diff --git a/lib-src/libnyquist/nyqsrc/fftr4.c b/lib-src/libnyquist/nyqsrc/fftr4.c
deleted file mode 100644
index d5dfcc9..0000000
--- a/lib-src/libnyquist/nyqsrc/fftr4.c
+++ /dev/null
@@ -1,264 +0,0 @@
-#include <stdio.h>
-#include <stdlib.h>
-#include <math.h>
-#ifdef WIN32
-#include <sys\time.h>
-#else
-#include <sys/time.h>
-#endif
-
-#define PI 3.14159265359
-#define MAXPOW 24
-
-struct complex
-{
- double r;
- double i;
-};
-
-int pow_2[MAXPOW];
-int pow_4[MAXPOW];
-
-void twiddle(struct complex *W, int N, double stuff)
-{
- W->r=cos(stuff*2.0*PI/(double)N);
- W->i=-sin(stuff*2.0*PI/(double)N);
-}
-
-void bit_reverse_reorder(struct complex *W, int N)
-{
- int bits, i, j, k;
- double tempr, tempi;
-
- for (i=0; i<MAXPOW; i++)
- if (pow_2[i]==N) bits=i;
-
- for (i=0; i<N; i++)
- {
- j=0;
- for (k=0; k<bits; k++)
- if (i&pow_2[k]) j+=pow_2[bits-k-1];
-
- if (j>i) /** Only make "up" swaps */
- {
- tempr=W[i].r;
- tempi=W[i].i;
- W[i].r=W[j].r;
- W[i].i=W[j].i;
- W[j].r=tempr;
- W[j].i=tempi;
- }
- }
-}
-void bit_r4_reorder(struct complex *W, int N)
-{
- int bits, i, j, k;
- double tempr, tempi;
-
- for (i=0; i<MAXPOW; i++)
- if (pow_2[i]==N) bits=i;
-
- for (i=0; i<N; i++)
- {
- j=0;
- for (k=0; k<bits; k+=2)
- {
- if (i&pow_2[k]) j+=pow_2[bits-k-2];
- if (i&pow_2[k+1]) j+=pow_2[bits-k-1];
- }
-
- if (j>i) /** Only make "up" swaps */
- {
- tempr=W[i].r;
- tempi=W[i].i;
- W[i].r=W[j].r;
- W[i].i=W[j].i;
- W[j].r=tempr;
- W[j].i=tempi;
- }
- }
-}
-
-/** RADIX-4 FFT ALGORITHM */
-void radix4(struct complex *x, int N)
-{
- int n2, k1, N1, N2;
- struct complex W, bfly[4];
-
- N1=4;
- N2=N/4;
-
- /** Do 4 Point DFT */
- for (n2=0; n2<N2; n2++)
- {
- /** Don't hurt the butterfly */
- bfly[0].r = (x[n2].r + x[N2 + n2].r + x[2*N2+n2].r + x[3*N2+n2].r);
- bfly[0].i = (x[n2].i + x[N2 + n2].i + x[2*N2+n2].i + x[3*N2+n2].i);
-
- bfly[1].r = (x[n2].r + x[N2 + n2].i - x[2*N2+n2].r - x[3*N2+n2].i);
- bfly[1].i = (x[n2].i - x[N2 + n2].r - x[2*N2+n2].i + x[3*N2+n2].r);
-
- bfly[2].r = (x[n2].r - x[N2 + n2].r + x[2*N2+n2].r - x[3*N2+n2].r);
- bfly[2].i = (x[n2].i - x[N2 + n2].i + x[2*N2+n2].i - x[3*N2+n2].i);
-
- bfly[3].r = (x[n2].r - x[N2 + n2].i - x[2*N2+n2].r + x[3*N2+n2].i);
- bfly[3].i = (x[n2].i + x[N2 + n2].r - x[2*N2+n2].i - x[3*N2+n2].r);
-
-
- /** In-place results */
- for (k1=0; k1<N1; k1++)
- {
- twiddle(&W, N, (double)k1*(double)n2);
- x[n2 + N2*k1].r = bfly[k1].r*W.r - bfly[k1].i*W.i;
- x[n2 + N2*k1].i = bfly[k1].i*W.r + bfly[k1].r*W.i;
- }
- }
-
- /** Don't recurse if we're down to one butterfly */
- if (N2!=1)
- for (k1=0; k1<N1; k1++)
- {
- radix4(&x[N2*k1], N2);
- }
-}
-
-/** RADIX-2 FFT ALGORITHM */
-void radix2(struct complex *data, int N)
-{
- int n2, k1, N1, N2;
- struct complex W, bfly[2];
-
- N1=2;
- N2=N/2;
-
- /** Do 2 Point DFT */
- for (n2=0; n2<N2; n2++)
- {
- /** Don't hurt the butterfly */
- twiddle(&W, N, (double)n2);
- bfly[0].r = (data[n2].r + data[N2 + n2].r);
- bfly[0].i = (data[n2].i + data[N2 + n2].i);
- bfly[1].r = (data[n2].r - data[N2 + n2].r) * W.r -
- ((data[n2].i - data[N2 + n2].i) * W.i);
- bfly[1].i = (data[n2].i - data[N2 + n2].i) * W.r +
- ((data[n2].r - data[N2 + n2].r) * W.i);
-
- /** In-place results */
- for (k1=0; k1<N1; k1++)
- {
- data[n2 + N2*k1].r = bfly[k1].r;
- data[n2 + N2*k1].i = bfly[k1].i;
- }
- }
-
- /** Don't recurse if we're down to one butterfly */
- if (N2!=1)
- for (k1=0; k1<N1; k1++)
- radix2(&data[N2*k1], N2);
-}
-
-void main(int argc, char *argv[])
-{
- FILE *infile;
- int N, radix, numsamp;
- int i;
- struct complex *data;
- double freq, phase, fs, A;
- int dotime;
- struct timeval start, end;
- long totaltime;
-
-#ifdef GEN
- if (argc!=9)
- {
- printf("usage:\n");
- printf(" fft [A] [f] [phase] [fs] [num samp] [sequence length] [radix] [time]\n");
- printf(" output: DFT\n");
- exit(1);
- }
-
-
- sscanf(argv[1], "%lf", &A);
- sscanf(argv[2], "%lf", &freq);
- sscanf(argv[3], "%lf", &phase);
- sscanf(argv[4], "%lf", &fs);
- sscanf(argv[5], "%d", &numsamp);
- sscanf(argv[6], "%d", &N);
- sscanf(argv[7], "%d", &radix);
- sscanf(argv[8], "%d", &dotime);
-#endif
-#ifndef GEN
- if (argc<4)
- {
- printf("usage:\n");
- printf(" fft [input file] [sequence length] [radix]\n");
- printf(" output: DFT\n");
- exit(1);
- }
- else if ((infile=fopen(argv[1], "r"))==NULL)
- {
- printf("Error reading input sequence file: %s\n", argv[1]);
- exit(1);
- }
-
- sscanf(argv[2], "%d", &N);
- sscanf(argv[3], "%d", &radix);
- dotime=0;
-#endif
-
-
- /** Set up power of two arrays */
- pow_2[0]=1;
- for (i=1; i<MAXPOW; i++)
- pow_2[i]=pow_2[i-1]*2;
- pow_4[0]=1;
- for (i=1; i<MAXPOW; i++)
- pow_4[i]=pow_4[i-1]*4;
-
- if ((data=malloc(sizeof(struct complex)*(size_t)N))==NULL)
- {
- fprintf(stderr, "Out of memory!\n");
- exit(1);
- }
-
- /** Generate cosine **/
-#ifdef GEN
- for (i=0; i<N; i++)
- {
- data[i].r=0.0;
- data[i].i=0.0;
- }
- for (i=0; i<numsamp; i++)
- data[i].r=A*cos(2.0*PI*freq*i/fs - phase*PI/180);
-#endif
-#ifndef GEN
- for (i=0; i<N; i++)
- {
- fscanf(infile, "%lf", &data[i].r);
- data[i].i=0.0;
- }
-#endif
-
- gettimeofday(&start, (struct timezone *) 0);
- if (radix==2) radix2(data, N);
- if (radix==4) radix4(data, N);
- gettimeofday(&end, (struct timezone *) 0);
- totaltime=(end.tv_sec*1000000 + end.tv_usec)-(start.tv_sec*1000000
- + start.tv_usec);
- if (radix==2) bit_reverse_reorder(data, N);
- if (radix==4) bit_r4_reorder(data, N);
-
- if (!dotime)
- for (i=0; i<N; i++)
- printf("%f\n", sqrt(data[i].r*data[i].r +
- data[i].i*data[i].i));
- else
- printf("%ld us\n\n", totaltime);
-
-#ifndef GEN
- fclose(infile);
-#endif
-}
-
-
-
diff --git a/lib-src/libnyquist/nyqsrc/fftw.h b/lib-src/libnyquist/nyqsrc/fftw.h
deleted file mode 100644
index 1a8405f..0000000
--- a/lib-src/libnyquist/nyqsrc/fftw.h
+++ /dev/null
@@ -1,412 +0,0 @@
-/* -*- C -*- */
-/*
- * Copyright (c) 1997-1999 Massachusetts Institute of Technology
- *
- * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- *
- */
-
-/* fftw.h -- system-wide definitions */
-/* $Id: fftw.h,v 1.2 2003/06/08 21:15:08 dmazzoni Exp $ */
-
-#ifndef FFTW_H
-#define FFTW_H
-
-#include <stdlib.h>
-#include <stdio.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
-
-/* Define for using single precision */
-/*
- * If you can, use configure --enable-float instead of changing this
- * flag directly
- */
-/* #undef FFTW_ENABLE_FLOAT */
-
-/* our real numbers */
-#ifdef FFTW_ENABLE_FLOAT
-typedef float fftw_real;
-#else
-typedef double fftw_real;
-#endif
-
-/*********************************************
- * Complex numbers and operations
- *********************************************/
-typedef struct {
- fftw_real re, im;
-} fftw_complex;
-
-#define c_re(c) ((c).re)
-#define c_im(c) ((c).im)
-
-typedef enum {
- FFTW_FORWARD = -1, FFTW_BACKWARD = 1
-} fftw_direction;
-
-/* backward compatibility with FFTW-1.3 */
-typedef fftw_complex FFTW_COMPLEX;
-typedef fftw_real FFTW_REAL;
-
-#ifndef FFTW_1_0_COMPATIBILITY
-#define FFTW_1_0_COMPATIBILITY 0
-#endif
-
-#if FFTW_1_0_COMPATIBILITY
-/* backward compatibility with FFTW-1.0 */
-#define REAL fftw_real
-#define COMPLEX fftw_complex
-#endif
-
-/*********************************************
- * Success or failure status
- *********************************************/
-
-typedef enum {
- FFTW_SUCCESS = 0, FFTW_FAILURE = -1
-} fftw_status;
-
-/*********************************************
- * Codelets
- *********************************************/
-typedef void (fftw_notw_codelet)
- (const fftw_complex *, fftw_complex *, int, int);
-typedef void (fftw_twiddle_codelet)
- (fftw_complex *, const fftw_complex *, int,
- int, int);
-typedef void (fftw_generic_codelet)
- (fftw_complex *, const fftw_complex *, int,
- int, int, int);
-typedef void (fftw_real2hc_codelet)
- (const fftw_real *, fftw_real *, fftw_real *,
- int, int, int);
-typedef void (fftw_hc2real_codelet)
- (const fftw_real *, const fftw_real *,
- fftw_real *, int, int, int);
-typedef void (fftw_hc2hc_codelet)
- (fftw_real *, const fftw_complex *,
- int, int, int);
-typedef void (fftw_rgeneric_codelet)
- (fftw_real *, const fftw_complex *, int,
- int, int, int);
-
-/*********************************************
- * Configurations
- *********************************************/
-/*
- * A configuration is a database of all known codelets
- */
-
-enum fftw_node_type {
- FFTW_NOTW, FFTW_TWIDDLE, FFTW_GENERIC, FFTW_RADER,
- FFTW_REAL2HC, FFTW_HC2REAL, FFTW_HC2HC, FFTW_RGENERIC
-};
-
-/* description of a codelet */
-typedef struct {
- const char *name; /* name of the codelet */
- void (*codelet) (); /* pointer to the codelet itself */
- int size; /* size of the codelet */
- fftw_direction dir; /* direction */
- enum fftw_node_type type; /* TWIDDLE or NO_TWIDDLE */
- int signature; /* unique id */
- int ntwiddle; /* number of twiddle factors */
- const int *twiddle_order; /*
- * array that determines the order
- * in which the codelet expects
- * the twiddle factors
- */
-} fftw_codelet_desc;
-
-/* On Win32, you need to do funny things to access global variables
- in shared libraries. Thanks to Andrew Sterian for this hack. */
-#if defined(__WIN32__) || defined(WIN32) || defined(_WINDOWS)
-# if defined(BUILD_FFTW_DLL)
-# define DL_IMPORT(type) __declspec(dllexport) type
-# elif defined(USE_FFTW_DLL)
-# define DL_IMPORT(type) __declspec(dllimport) type
-# else
-# define DL_IMPORT(type) type
-# endif
-#else
-# define DL_IMPORT(type) type
-#endif
-
-extern DL_IMPORT(const char *) fftw_version;
-
-/*****************************
- * Plans
- *****************************/
-/*
- * A plan is a sequence of reductions to compute a FFT of
- * a given size. At each step, the FFT algorithm can:
- *
- * 1) apply a notw codelet, or
- * 2) recurse and apply a twiddle codelet, or
- * 3) apply the generic codelet.
- */
-
-/* structure that contains twiddle factors */
-typedef struct fftw_twiddle_struct {
- int n;
- const fftw_codelet_desc *cdesc;
- fftw_complex *twarray;
- struct fftw_twiddle_struct *next;
- int refcnt;
-} fftw_twiddle;
-
-typedef struct fftw_rader_data_struct {
- struct fftw_plan_struct *plan;
- fftw_complex *omega;
- int g, ginv;
- int p, flags, refcount;
- struct fftw_rader_data_struct *next;
- fftw_codelet_desc *cdesc;
-} fftw_rader_data;
-
-typedef void (fftw_rader_codelet)
- (fftw_complex *, const fftw_complex *, int,
- int, int, fftw_rader_data *);
-
-/* structure that holds all the data needed for a given step */
-typedef struct fftw_plan_node_struct {
- enum fftw_node_type type;
-
- union {
- /* nodes of type FFTW_NOTW */
- struct {
- int size;
- fftw_notw_codelet *codelet;
- const fftw_codelet_desc *codelet_desc;
- } notw;
-
- /* nodes of type FFTW_TWIDDLE */
- struct {
- int size;
- fftw_twiddle_codelet *codelet;
- fftw_twiddle *tw;
- struct fftw_plan_node_struct *recurse;
- const fftw_codelet_desc *codelet_desc;
- } twiddle;
-
- /* nodes of type FFTW_GENERIC */
- struct {
- int size;
- fftw_generic_codelet *codelet;
- fftw_twiddle *tw;
- struct fftw_plan_node_struct *recurse;
- } generic;
-
- /* nodes of type FFTW_RADER */
- struct {
- int size;
- fftw_rader_codelet *codelet;
- fftw_rader_data *rader_data;
- fftw_twiddle *tw;
- struct fftw_plan_node_struct *recurse;
- } rader;
-
- /* nodes of type FFTW_REAL2HC */
- struct {
- int size;
- fftw_real2hc_codelet *codelet;
- const fftw_codelet_desc *codelet_desc;
- } real2hc;
-
- /* nodes of type FFTW_HC2REAL */
- struct {
- int size;
- fftw_hc2real_codelet *codelet;
- const fftw_codelet_desc *codelet_desc;
- } hc2real;
-
- /* nodes of type FFTW_HC2HC */
- struct {
- int size;
- fftw_direction dir;
- fftw_hc2hc_codelet *codelet;
- fftw_twiddle *tw;
- struct fftw_plan_node_struct *recurse;
- const fftw_codelet_desc *codelet_desc;
- } hc2hc;
-
- /* nodes of type FFTW_RGENERIC */
- struct {
- int size;
- fftw_direction dir;
- fftw_rgeneric_codelet *codelet;
- fftw_twiddle *tw;
- struct fftw_plan_node_struct *recurse;
- } rgeneric;
- } nodeu;
-
- int refcnt;
-} fftw_plan_node;
-
-struct fftw_plan_struct {
- int n;
- int refcnt;
- fftw_direction dir;
- int flags;
- int wisdom_signature;
- enum fftw_node_type wisdom_type;
- struct fftw_plan_struct *next;
- fftw_plan_node *root;
- double cost;
-};
-
-/* a plan is just an array of instructions */
-typedef struct fftw_plan_struct *fftw_plan;
-
-/* flags for the planner */
-#define FFTW_ESTIMATE (0)
-#define FFTW_MEASURE (1)
-
-#define FFTW_OUT_OF_PLACE (0)
-#define FFTW_IN_PLACE (8)
-#define FFTW_USE_WISDOM (16)
-
-#define FFTW_THREADSAFE (128) /* guarantee plan is read-only so that the
- same plan can be used in parallel by
- multiple threads */
-
-#define FFTWND_FORCE_BUFFERED (256) /* internal, undocumented flag */
-
-extern fftw_plan fftw_create_plan_specific(int n, fftw_direction dir,
- int flags,
- fftw_complex *in, int istride,
- fftw_complex *out, int ostride);
-#define FFTW_HAS_PLAN_SPECIFIC
-extern fftw_plan fftw_create_plan(int n, fftw_direction dir, int flags);
-extern void fftw_print_plan(fftw_plan plan);
-extern void fftw_destroy_plan(fftw_plan plan);
-extern void fftw(fftw_plan plan, int howmany, fftw_complex *in, int istride,
- int idist, fftw_complex *out, int ostride, int odist);
-extern void fftw_one(fftw_plan plan, fftw_complex *in, fftw_complex *out);
-extern void fftw_die(const char *s);
-extern void *fftw_malloc(size_t n);
-extern void fftw_free(void *p);
-extern void fftw_check_memory_leaks(void);
-extern void fftw_print_max_memory_usage(void);
-
-typedef void *(*fftw_malloc_type_function) (size_t n);
-typedef void (*fftw_free_type_function) (void *p);
-typedef void (*fftw_die_type_function) (const char *errString);
-extern DL_IMPORT(fftw_malloc_type_function) fftw_malloc_hook;
-extern DL_IMPORT(fftw_free_type_function) fftw_free_hook;
-extern DL_IMPORT(fftw_die_type_function) fftw_die_hook;
-
-extern size_t fftw_sizeof_fftw_real(void);
-
-/* Wisdom: */
-/*
- * define this symbol so that users know we are using a version of FFTW
- * with wisdom
- */
-#define FFTW_HAS_WISDOM
-extern void fftw_forget_wisdom(void);
-extern void fftw_export_wisdom(void (*emitter) (char c, void *), void *data);
-extern fftw_status fftw_import_wisdom(int (*g) (void *), void *data);
-extern void fftw_export_wisdom_to_file(FILE *output_file);
-extern fftw_status fftw_import_wisdom_from_file(FILE *input_file);
-extern char *fftw_export_wisdom_to_string(void);
-extern fftw_status fftw_import_wisdom_from_string(const char *input_string);
-
-/*
- * define symbol so we know this function is available (it is not in
- * older FFTWs)
- */
-#define FFTW_HAS_FPRINT_PLAN
-extern void fftw_fprint_plan(FILE *f, fftw_plan plan);
-
-/*****************************
- * N-dimensional code
- *****************************/
-typedef struct {
- int is_in_place; /* 1 if for in-place FFTs, 0 otherwise */
-
- int rank; /*
- * the rank (number of dimensions) of the
- * array to be FFTed
- */
- int *n; /*
- * the dimensions of the array to the
- * FFTed
- */
- fftw_direction dir;
-
- int *n_before; /*
- * n_before[i] = product of n[j] for j < i
- */
- int *n_after; /* n_after[i] = product of n[j] for j > i */
-
- fftw_plan *plans; /* 1d fftw plans for each dimension */
-
- int nbuffers, nwork;
- fftw_complex *work; /*
- * work array big enough to hold
- * nbuffers+1 of the largest dimension
- * (has nwork elements)
- */
-} fftwnd_data;
-
-typedef fftwnd_data *fftwnd_plan;
-
-/* Initializing the FFTWND plan: */
-extern fftwnd_plan fftw2d_create_plan(int nx, int ny, fftw_direction dir,
- int flags);
-extern fftwnd_plan fftw3d_create_plan(int nx, int ny, int nz,
- fftw_direction dir, int flags);
-extern fftwnd_plan fftwnd_create_plan(int rank, const int *n,
- fftw_direction dir,
- int flags);
-
-extern fftwnd_plan fftw2d_create_plan_specific(int nx, int ny,
- fftw_direction dir,
- int flags,
- fftw_complex *in, int istride,
- fftw_complex *out, int ostride);
-extern fftwnd_plan fftw3d_create_plan_specific(int nx, int ny, int nz,
- fftw_direction dir, int flags,
- fftw_complex *in, int istride,
- fftw_complex *out, int ostride);
-extern fftwnd_plan fftwnd_create_plan_specific(int rank, const int *n,
- fftw_direction dir,
- int flags,
- fftw_complex *in, int istride,
- fftw_complex *out, int ostride);
-
-/* Freeing the FFTWND plan: */
-extern void fftwnd_destroy_plan(fftwnd_plan plan);
-
-/* Printing the plan: */
-extern void fftwnd_fprint_plan(FILE *f, fftwnd_plan p);
-extern void fftwnd_print_plan(fftwnd_plan p);
-#define FFTWND_HAS_PRINT_PLAN
-
-/* Computing the N-Dimensional FFT */
-extern void fftwnd(fftwnd_plan plan, int howmany,
- fftw_complex *in, int istride, int idist,
- fftw_complex *out, int ostride, int odist);
-extern void fftwnd_one(fftwnd_plan p, fftw_complex *in, fftw_complex *out);
-
-#ifdef __cplusplus
-} /* extern "C" */
-
-#endif /* __cplusplus */
-#endif /* FFTW_H */
diff --git a/lib-src/libnyquist/nyqsrc/fresample.h b/lib-src/libnyquist/nyqsrc/fresample.h
deleted file mode 100644
index be1a199..0000000
--- a/lib-src/libnyquist/nyqsrc/fresample.h
+++ /dev/null
@@ -1,75 +0,0 @@
-/*
- * FILE: fresample.h
- *
- * The configuration constants below govern
- * the number of bits in the input sample and filter coefficients, the
- * number of bits to the right of the binary-point for fixed-point math, etc.
- *
- */
-
-/* #include "stdefs.h" */
-
-typedef double SAMPLE_TYPE;
-#define SCALE_FACTOR_TO_SHORT 32767
-
-/* Conversion constants */
-#define Nhc 8
-/* #define Na 7 */
-/* #define Np (Nhc+Na)*/
-#define Npc (1<<Nhc)
-/* #define Amask ((1<<Na)-1) */
-/* #define Pmask ((1<<Np)-1) */
-/* #define Nh 16 */
-/* #define Nb 16 */
-/* #define Nhxn 14 */
-/* #define Nhg (Nh-Nhxn) */
-/* #define NLpScl 13 */
-
-/* Description of constants:
- *
- * Npc - is the number of look-up values available for the lowpass filter
- * between the beginning of its impulse response and the "cutoff time"
- * of the filter. The cutoff time is defined as the reciprocal of the
- * lowpass-filter cut off frequence in Hz. For example, if the
- * lowpass filter were a sinc function, Npc would be the index of the
- * impulse-response lookup-table corresponding to the first zero-
- * crossing of the sinc function. (The inverse first zero-crossing
- * time of a sinc function equals its nominal cutoff frequency in Hz.)
- * Npc must be a power of 2 due to the details of the current
- * implementation. The default value of 512 is sufficiently high that
- * using linear interpolation to fill in between the table entries
- * gives approximately 16-bit accuracy in filter coefficients.
- *
- * Nhc - is log base 2 of Npc.
- *
- * Na - is the number of bits devoted to linear interpolation of the
- * filter coefficients.
- *
- * Np - is Na + Nhc, the number of bits to the right of the binary point
- * in the integer "time" variable. To the left of the point, it indexes
- * the input array (X), and to the right, it is interpreted as a number
- * between 0 and 1 sample of the input X. Np must be less than 16 in
- * this implementation.
- *
- * Nh - is the number of bits in the filter coefficients. The sum of Nh and
- * the number of bits in the input data (typically 16) cannot exceed 32.
- * Thus Nh should be 16. The largest filter coefficient should nearly
- * fill 16 bits (32767).
- *
- * Nb - is the number of bits in the input data. The sum of Nb and Nh cannot
- * exceed 32.
- *
- * Nhxn - is the number of bits to right shift after multiplying each input
- * sample times a filter coefficient. It can be as great as Nh and as
- * small as 0. Nhxn = Nh-2 gives 2 guard bits in the multiply-add
- * accumulation. If Nhxn=0, the accumulation will soon overflow 32 bits.
- *
- * Nhg - is the number of guard bits in mpy-add accumulation (equal to Nh-Nhxn)
- *
- * NLpScl - is the number of bits allocated to the unity-gain normalization
- * factor. The output of the lowpass filter is multiplied by LpScl and
- * then right-shifted NLpScl bits. To avoid overflow, we must have
- * Nb+Nhg+NLpScl < 32.
- */
-
-
diff --git a/lib-src/libnyquist/nyqsrc/fsmallfilter.h b/lib-src/libnyquist/nyqsrc/fsmallfilter.h
deleted file mode 100644
index 8cd6e12..0000000
--- a/lib-src/libnyquist/nyqsrc/fsmallfilter.h
+++ /dev/null
@@ -1,3079 +0,0 @@
-/* Included by resamplesubs.c */
-#define SMALL_FILTER_NMULT 13
-#define SMALL_FILTER_SCALE 13128 /* Unity-gain scale factor */
-#define SMALL_FILTER_NWING 1536 /* Filter table length */
-static float SMALL_FILTER_IMP[] /* Impulse response */ = {
-32767.0F,
-32766.0F,
-32765.0F,
-32762.0F,
-32758.0F,
-32753.0F,
-32747.0F,
-32739.0F,
-32731.0F,
-32722.0F,
-32711.0F,
-32699.0F,
-32686.0F,
-32672.0F,
-32657.0F,
-32641.0F,
-32623.0F,
-32605.0F,
-32585.0F,
-32565.0F,
-32543.0F,
-32520.0F,
-32496.0F,
-32471.0F,
-32445.0F,
-32417.0F,
-32389.0F,
-32359.0F,
-32329.0F,
-32297.0F,
-32264.0F,
-32230.0F,
-32195.0F,
-32159.0F,
-32122.0F,
-32084.0F,
-32044.0F,
-32004.0F,
-31962.0F,
-31920.0F,
-31876.0F,
-31832.0F,
-31786.0F,
-31739.0F,
-31691.0F,
-31642.0F,
-31592.0F,
-31541.0F,
-31489.0F,
-31436.0F,
-31382.0F,
-31327.0F,
-31271.0F,
-31214.0F,
-31156.0F,
-31096.0F,
-31036.0F,
-30975.0F,
-30913.0F,
-30849.0F,
-30785.0F,
-30720.0F,
-30654.0F,
-30586.0F,
-30518.0F,
-30449.0F,
-30379.0F,
-30308.0F,
-30236.0F,
-30163.0F,
-30089.0F,
-30014.0F,
-29938.0F,
-29861.0F,
-29784.0F,
-29705.0F,
-29625.0F,
-29545.0F,
-29464.0F,
-29381.0F,
-29298.0F,
-29214.0F,
-29129.0F,
-29043.0F,
-28956.0F,
-28869.0F,
-28780.0F,
-28691.0F,
-28601.0F,
-28510.0F,
-28418.0F,
-28325.0F,
-28232.0F,
-28137.0F,
-28042.0F,
-27946.0F,
-27849.0F,
-27752.0F,
-27653.0F,
-27554.0F,
-27454.0F,
-27353.0F,
-27252.0F,
-27149.0F,
-27046.0F,
-26943.0F,
-26838.0F,
-26733.0F,
-26627.0F,
-26520.0F,
-26413.0F,
-26305.0F,
-26196.0F,
-26086.0F,
-25976.0F,
-25865.0F,
-25753.0F,
-25641.0F,
-25528.0F,
-25415.0F,
-25301.0F,
-25186.0F,
-25070.0F,
-24954.0F,
-24838.0F,
-24720.0F,
-24602.0F,
-24484.0F,
-24365.0F,
-24245.0F,
-24125.0F,
-24004.0F,
-23883.0F,
-23761.0F,
-23639.0F,
-23516.0F,
-23392.0F,
-23268.0F,
-23144.0F,
-23019.0F,
-22893.0F,
-22767.0F,
-22641.0F,
-22514.0F,
-22386.0F,
-22259.0F,
-22130.0F,
-22001.0F,
-21872.0F,
-21743.0F,
-21613.0F,
-21482.0F,
-21352.0F,
-21220.0F,
-21089.0F,
-20957.0F,
-20825.0F,
-20692.0F,
-20559.0F,
-20426.0F,
-20292.0F,
-20158.0F,
-20024.0F,
-19889.0F,
-19754.0F,
-19619.0F,
-19483.0F,
-19347.0F,
-19211.0F,
-19075.0F,
-18939.0F,
-18802.0F,
-18665.0F,
-18527.0F,
-18390.0F,
-18252.0F,
-18114.0F,
-17976.0F,
-17838.0F,
-17700.0F,
-17561.0F,
-17422.0F,
-17283.0F,
-17144.0F,
-17005.0F,
-16866.0F,
-16726.0F,
-16587.0F,
-16447.0F,
-16307.0F,
-16167.0F,
-16027.0F,
-15887.0F,
-15747.0F,
-15607.0F,
-15467.0F,
-15327.0F,
-15187.0F,
-15046.0F,
-14906.0F,
-14766.0F,
-14625.0F,
-14485.0F,
-14345.0F,
-14205.0F,
-14065.0F,
-13924.0F,
-13784.0F,
-13644.0F,
-13504.0F,
-13364.0F,
-13225.0F,
-13085.0F,
-12945.0F,
-12806.0F,
-12666.0F,
-12527.0F,
-12388.0F,
-12249.0F,
-12110.0F,
-11971.0F,
-11833.0F,
-11694.0F,
-11556.0F,
-11418.0F,
-11280.0F,
-11142.0F,
-11005.0F,
-10867.0F,
-10730.0F,
-10594.0F,
-10457.0F,
-10321.0F,
-10185.0F,
-10049.0F,
-9913.0F,
-9778.0F,
-9643.0F,
-9508.0F,
-9374.0F,
-9239.0F,
-9105.0F,
-8972.0F,
-8839.0F,
-8706.0F,
-8573.0F,
-8441.0F,
-8309.0F,
-8177.0F,
-8046.0F,
-7915.0F,
-7785.0F,
-7655.0F,
-7525.0F,
-7396.0F,
-7267.0F,
-7138.0F,
-7010.0F,
-6882.0F,
-6755.0F,
-6628.0F,
-6502.0F,
-6376.0F,
-6250.0F,
-6125.0F,
-6001.0F,
-5876.0F,
-5753.0F,
-5630.0F,
-5507.0F,
-5385.0F,
-5263.0F,
-5141.0F,
-5021.0F,
-4900.0F,
-4781.0F,
-4661.0F,
-4543.0F,
-4425.0F,
-4307.0F,
-4190.0F,
-4073.0F,
-3957.0F,
-3842.0F,
-3727.0F,
-3613.0F,
-3499.0F,
-3386.0F,
-3273.0F,
-3161.0F,
-3050.0F,
-2939.0F,
-2828.0F,
-2719.0F,
-2610.0F,
-2501.0F,
-2394.0F,
-2286.0F,
-2180.0F,
-2074.0F,
-1968.0F,
-1864.0F,
-1760.0F,
-1656.0F,
-1554.0F,
-1451.0F,
-1350.0F,
-1249.0F,
-1149.0F,
-1050.0F,
-951.0F,
-853.0F,
-755.0F,
-658.0F,
-562.0F,
-467.0F,
-372.0F,
-278.0F,
-185.0F,
-92.0F,
-0.0F,
--90.0F,
--181.0F,
--271.0F,
--360.0F,
--448.0F,
--536.0F,
--623.0F,
--709.0F,
--795.0F,
--880.0F,
--964.0F,
--1047.0F,
--1130.0F,
--1212.0F,
--1293.0F,
--1373.0F,
--1453.0F,
--1532.0F,
--1610.0F,
--1688.0F,
--1764.0F,
--1840.0F,
--1916.0F,
--1990.0F,
--2064.0F,
--2137.0F,
--2209.0F,
--2281.0F,
--2351.0F,
--2421.0F,
--2491.0F,
--2559.0F,
--2627.0F,
--2694.0F,
--2760.0F,
--2825.0F,
--2890.0F,
--2954.0F,
--3017.0F,
--3080.0F,
--3141.0F,
--3202.0F,
--3262.0F,
--3322.0F,
--3380.0F,
--3438.0F,
--3495.0F,
--3551.0F,
--3607.0F,
--3662.0F,
--3716.0F,
--3769.0F,
--3821.0F,
--3873.0F,
--3924.0F,
--3974.0F,
--4024.0F,
--4072.0F,
--4120.0F,
--4167.0F,
--4214.0F,
--4259.0F,
--4304.0F,
--4348.0F,
--4392.0F,
--4434.0F,
--4476.0F,
--4517.0F,
--4558.0F,
--4597.0F,
--4636.0F,
--4674.0F,
--4712.0F,
--4748.0F,
--4784.0F,
--4819.0F,
--4854.0F,
--4887.0F,
--4920.0F,
--4953.0F,
--4984.0F,
--5015.0F,
--5045.0F,
--5074.0F,
--5103.0F,
--5131.0F,
--5158.0F,
--5184.0F,
--5210.0F,
--5235.0F,
--5259.0F,
--5283.0F,
--5306.0F,
--5328.0F,
--5349.0F,
--5370.0F,
--5390.0F,
--5409.0F,
--5428.0F,
--5446.0F,
--5463.0F,
--5480.0F,
--5496.0F,
--5511.0F,
--5526.0F,
--5540.0F,
--5553.0F,
--5566.0F,
--5578.0F,
--5589.0F,
--5600.0F,
--5610.0F,
--5619.0F,
--5628.0F,
--5636.0F,
--5643.0F,
--5650.0F,
--5656.0F,
--5662.0F,
--5667.0F,
--5671.0F,
--5674.0F,
--5678.0F,
--5680.0F,
--5682.0F,
--5683.0F,
--5684.0F,
--5684.0F,
--5683.0F,
--5682.0F,
--5680.0F,
--5678.0F,
--5675.0F,
--5672.0F,
--5668.0F,
--5663.0F,
--5658.0F,
--5652.0F,
--5646.0F,
--5639.0F,
--5632.0F,
--5624.0F,
--5616.0F,
--5607.0F,
--5597.0F,
--5587.0F,
--5577.0F,
--5566.0F,
--5554.0F,
--5542.0F,
--5529.0F,
--5516.0F,
--5503.0F,
--5489.0F,
--5474.0F,
--5459.0F,
--5444.0F,
--5428.0F,
--5412.0F,
--5395.0F,
--5378.0F,
--5360.0F,
--5342.0F,
--5323.0F,
--5304.0F,
--5284.0F,
--5264.0F,
--5244.0F,
--5223.0F,
--5202.0F,
--5180.0F,
--5158.0F,
--5136.0F,
--5113.0F,
--5090.0F,
--5066.0F,
--5042.0F,
--5018.0F,
--4993.0F,
--4968.0F,
--4943.0F,
--4917.0F,
--4891.0F,
--4864.0F,
--4838.0F,
--4810.0F,
--4783.0F,
--4755.0F,
--4727.0F,
--4698.0F,
--4670.0F,
--4640.0F,
--4611.0F,
--4581.0F,
--4551.0F,
--4521.0F,
--4490.0F,
--4460.0F,
--4428.0F,
--4397.0F,
--4365.0F,
--4333.0F,
--4301.0F,
--4269.0F,
--4236.0F,
--4203.0F,
--4170.0F,
--4137.0F,
--4103.0F,
--4069.0F,
--4035.0F,
--4001.0F,
--3966.0F,
--3932.0F,
--3897.0F,
--3862.0F,
--3827.0F,
--3791.0F,
--3755.0F,
--3720.0F,
--3684.0F,
--3648.0F,
--3611.0F,
--3575.0F,
--3538.0F,
--3502.0F,
--3465.0F,
--3428.0F,
--3390.0F,
--3353.0F,
--3316.0F,
--3278.0F,
--3241.0F,
--3203.0F,
--3165.0F,
--3127.0F,
--3089.0F,
--3051.0F,
--3013.0F,
--2974.0F,
--2936.0F,
--2898.0F,
--2859.0F,
--2820.0F,
--2782.0F,
--2743.0F,
--2704.0F,
--2666.0F,
--2627.0F,
--2588.0F,
--2549.0F,
--2510.0F,
--2471.0F,
--2432.0F,
--2393.0F,
--2354.0F,
--2315.0F,
--2276.0F,
--2237.0F,
--2198.0F,
--2159.0F,
--2120.0F,
--2081.0F,
--2042.0F,
--2003.0F,
--1964.0F,
--1925.0F,
--1886.0F,
--1847.0F,
--1808.0F,
--1770.0F,
--1731.0F,
--1692.0F,
--1654.0F,
--1615.0F,
--1577.0F,
--1538.0F,
--1500.0F,
--1462.0F,
--1424.0F,
--1386.0F,
--1348.0F,
--1310.0F,
--1272.0F,
--1234.0F,
--1197.0F,
--1159.0F,
--1122.0F,
--1084.0F,
--1047.0F,
--1010.0F,
--973.0F,
--936.0F,
--900.0F,
--863.0F,
--827.0F,
--790.0F,
--754.0F,
--718.0F,
--682.0F,
--646.0F,
--611.0F,
--575.0F,
--540.0F,
--505.0F,
--470.0F,
--435.0F,
--401.0F,
--366.0F,
--332.0F,
--298.0F,
--264.0F,
--230.0F,
--197.0F,
--163.0F,
--130.0F,
--97.0F,
--64.0F,
--31.0F,
-0.0F,
-32.0F,
-64.0F,
-96.0F,
-128.0F,
-159.0F,
-190.0F,
-221.0F,
-252.0F,
-283.0F,
-313.0F,
-343.0F,
-373.0F,
-403.0F,
-432.0F,
-462.0F,
-491.0F,
-519.0F,
-548.0F,
-576.0F,
-604.0F,
-632.0F,
-660.0F,
-687.0F,
-714.0F,
-741.0F,
-768.0F,
-794.0F,
-821.0F,
-847.0F,
-872.0F,
-898.0F,
-923.0F,
-948.0F,
-972.0F,
-997.0F,
-1021.0F,
-1045.0F,
-1068.0F,
-1092.0F,
-1115.0F,
-1138.0F,
-1160.0F,
-1183.0F,
-1205.0F,
-1227.0F,
-1248.0F,
-1270.0F,
-1291.0F,
-1311.0F,
-1332.0F,
-1352.0F,
-1372.0F,
-1392.0F,
-1411.0F,
-1430.0F,
-1449.0F,
-1468.0F,
-1486.0F,
-1504.0F,
-1522.0F,
-1539.0F,
-1556.0F,
-1573.0F,
-1590.0F,
-1607.0F,
-1623.0F,
-1639.0F,
-1654.0F,
-1669.0F,
-1685.0F,
-1699.0F,
-1714.0F,
-1728.0F,
-1742.0F,
-1756.0F,
-1769.0F,
-1782.0F,
-1795.0F,
-1808.0F,
-1820.0F,
-1832.0F,
-1844.0F,
-1855.0F,
-1867.0F,
-1878.0F,
-1888.0F,
-1899.0F,
-1909.0F,
-1919.0F,
-1929.0F,
-1938.0F,
-1947.0F,
-1956.0F,
-1964.0F,
-1973.0F,
-1981.0F,
-1989.0F,
-1996.0F,
-2003.0F,
-2010.0F,
-2017.0F,
-2024.0F,
-2030.0F,
-2036.0F,
-2042.0F,
-2047.0F,
-2052.0F,
-2057.0F,
-2062.0F,
-2066.0F,
-2071.0F,
-2074.0F,
-2078.0F,
-2082.0F,
-2085.0F,
-2088.0F,
-2091.0F,
-2093.0F,
-2095.0F,
-2097.0F,
-2099.0F,
-2101.0F,
-2102.0F,
-2103.0F,
-2104.0F,
-2104.0F,
-2105.0F,
-2105.0F,
-2105.0F,
-2104.0F,
-2104.0F,
-2103.0F,
-2102.0F,
-2101.0F,
-2100.0F,
-2098.0F,
-2096.0F,
-2094.0F,
-2092.0F,
-2089.0F,
-2087.0F,
-2084.0F,
-2081.0F,
-2077.0F,
-2074.0F,
-2070.0F,
-2066.0F,
-2062.0F,
-2058.0F,
-2053.0F,
-2048.0F,
-2043.0F,
-2038.0F,
-2033.0F,
-2028.0F,
-2022.0F,
-2016.0F,
-2010.0F,
-2004.0F,
-1998.0F,
-1991.0F,
-1984.0F,
-1978.0F,
-1970.0F,
-1963.0F,
-1956.0F,
-1948.0F,
-1941.0F,
-1933.0F,
-1925.0F,
-1917.0F,
-1908.0F,
-1900.0F,
-1891.0F,
-1882.0F,
-1873.0F,
-1864.0F,
-1855.0F,
-1846.0F,
-1836.0F,
-1826.0F,
-1817.0F,
-1807.0F,
-1797.0F,
-1787.0F,
-1776.0F,
-1766.0F,
-1755.0F,
-1745.0F,
-1734.0F,
-1723.0F,
-1712.0F,
-1701.0F,
-1689.0F,
-1678.0F,
-1667.0F,
-1655.0F,
-1643.0F,
-1632.0F,
-1620.0F,
-1608.0F,
-1596.0F,
-1583.0F,
-1571.0F,
-1559.0F,
-1546.0F,
-1534.0F,
-1521.0F,
-1509.0F,
-1496.0F,
-1483.0F,
-1470.0F,
-1457.0F,
-1444.0F,
-1431.0F,
-1417.0F,
-1404.0F,
-1391.0F,
-1377.0F,
-1364.0F,
-1350.0F,
-1337.0F,
-1323.0F,
-1309.0F,
-1296.0F,
-1282.0F,
-1268.0F,
-1254.0F,
-1240.0F,
-1226.0F,
-1212.0F,
-1198.0F,
-1184.0F,
-1170.0F,
-1156.0F,
-1141.0F,
-1127.0F,
-1113.0F,
-1099.0F,
-1084.0F,
-1070.0F,
-1056.0F,
-1041.0F,
-1027.0F,
-1013.0F,
-998.0F,
-984.0F,
-969.0F,
-955.0F,
-940.0F,
-926.0F,
-911.0F,
-897.0F,
-882.0F,
-868.0F,
-854.0F,
-839.0F,
-825.0F,
-810.0F,
-796.0F,
-781.0F,
-767.0F,
-753.0F,
-738.0F,
-724.0F,
-709.0F,
-695.0F,
-681.0F,
-667.0F,
-652.0F,
-638.0F,
-624.0F,
-610.0F,
-596.0F,
-581.0F,
-567.0F,
-553.0F,
-539.0F,
-525.0F,
-511.0F,
-498.0F,
-484.0F,
-470.0F,
-456.0F,
-442.0F,
-429.0F,
-415.0F,
-402.0F,
-388.0F,
-375.0F,
-361.0F,
-348.0F,
-335.0F,
-321.0F,
-308.0F,
-295.0F,
-282.0F,
-269.0F,
-256.0F,
-243.0F,
-230.0F,
-217.0F,
-205.0F,
-192.0F,
-180.0F,
-167.0F,
-155.0F,
-142.0F,
-130.0F,
-118.0F,
-106.0F,
-94.0F,
-82.0F,
-70.0F,
-58.0F,
-46.0F,
-35.0F,
-23.0F,
-11.0F,
-0.0F,
--10.0F,
--22.0F,
--33.0F,
--44.0F,
--55.0F,
--66.0F,
--77.0F,
--87.0F,
--98.0F,
--109.0F,
--119.0F,
--130.0F,
--140.0F,
--150.0F,
--160.0F,
--170.0F,
--180.0F,
--190.0F,
--200.0F,
--209.0F,
--219.0F,
--228.0F,
--238.0F,
--247.0F,
--256.0F,
--265.0F,
--274.0F,
--283.0F,
--292.0F,
--301.0F,
--309.0F,
--318.0F,
--326.0F,
--335.0F,
--343.0F,
--351.0F,
--359.0F,
--367.0F,
--375.0F,
--382.0F,
--390.0F,
--397.0F,
--405.0F,
--412.0F,
--419.0F,
--426.0F,
--433.0F,
--440.0F,
--447.0F,
--454.0F,
--460.0F,
--467.0F,
--473.0F,
--479.0F,
--486.0F,
--492.0F,
--498.0F,
--504.0F,
--509.0F,
--515.0F,
--521.0F,
--526.0F,
--531.0F,
--537.0F,
--542.0F,
--547.0F,
--552.0F,
--557.0F,
--561.0F,
--566.0F,
--571.0F,
--575.0F,
--579.0F,
--584.0F,
--588.0F,
--592.0F,
--596.0F,
--600.0F,
--604.0F,
--607.0F,
--611.0F,
--614.0F,
--618.0F,
--621.0F,
--624.0F,
--627.0F,
--630.0F,
--633.0F,
--636.0F,
--638.0F,
--641.0F,
--644.0F,
--646.0F,
--648.0F,
--651.0F,
--653.0F,
--655.0F,
--657.0F,
--658.0F,
--660.0F,
--662.0F,
--664.0F,
--665.0F,
--666.0F,
--668.0F,
--669.0F,
--670.0F,
--671.0F,
--672.0F,
--673.0F,
--674.0F,
--675.0F,
--675.0F,
--676.0F,
--676.0F,
--677.0F,
--677.0F,
--677.0F,
--677.0F,
--677.0F,
--677.0F,
--677.0F,
--677.0F,
--677.0F,
--676.0F,
--676.0F,
--675.0F,
--675.0F,
--674.0F,
--674.0F,
--673.0F,
--672.0F,
--671.0F,
--670.0F,
--669.0F,
--668.0F,
--667.0F,
--665.0F,
--664.0F,
--663.0F,
--661.0F,
--660.0F,
--658.0F,
--656.0F,
--654.0F,
--653.0F,
--651.0F,
--649.0F,
--647.0F,
--645.0F,
--643.0F,
--641.0F,
--638.0F,
--636.0F,
--634.0F,
--631.0F,
--629.0F,
--626.0F,
--624.0F,
--621.0F,
--619.0F,
--616.0F,
--613.0F,
--610.0F,
--608.0F,
--605.0F,
--602.0F,
--599.0F,
--596.0F,
--593.0F,
--589.0F,
--586.0F,
--583.0F,
--580.0F,
--576.0F,
--573.0F,
--570.0F,
--566.0F,
--563.0F,
--559.0F,
--556.0F,
--552.0F,
--549.0F,
--545.0F,
--541.0F,
--538.0F,
--534.0F,
--530.0F,
--526.0F,
--522.0F,
--519.0F,
--515.0F,
--511.0F,
--507.0F,
--503.0F,
--499.0F,
--495.0F,
--491.0F,
--487.0F,
--482.0F,
--478.0F,
--474.0F,
--470.0F,
--466.0F,
--462.0F,
--457.0F,
--453.0F,
--449.0F,
--445.0F,
--440.0F,
--436.0F,
--432.0F,
--427.0F,
--423.0F,
--419.0F,
--414.0F,
--410.0F,
--406.0F,
--401.0F,
--397.0F,
--392.0F,
--388.0F,
--383.0F,
--379.0F,
--375.0F,
--370.0F,
--366.0F,
--361.0F,
--357.0F,
--352.0F,
--348.0F,
--343.0F,
--339.0F,
--334.0F,
--330.0F,
--325.0F,
--321.0F,
--316.0F,
--312.0F,
--307.0F,
--303.0F,
--298.0F,
--294.0F,
--290.0F,
--285.0F,
--281.0F,
--276.0F,
--272.0F,
--267.0F,
--263.0F,
--259.0F,
--254.0F,
--250.0F,
--245.0F,
--241.0F,
--237.0F,
--232.0F,
--228.0F,
--224.0F,
--219.0F,
--215.0F,
--211.0F,
--207.0F,
--202.0F,
--198.0F,
--194.0F,
--190.0F,
--185.0F,
--181.0F,
--177.0F,
--173.0F,
--169.0F,
--165.0F,
--161.0F,
--157.0F,
--153.0F,
--149.0F,
--145.0F,
--141.0F,
--137.0F,
--133.0F,
--129.0F,
--125.0F,
--121.0F,
--117.0F,
--113.0F,
--110.0F,
--106.0F,
--102.0F,
--98.0F,
--95.0F,
--91.0F,
--87.0F,
--84.0F,
--80.0F,
--77.0F,
--73.0F,
--69.0F,
--66.0F,
--62.0F,
--59.0F,
--56.0F,
--52.0F,
--49.0F,
--46.0F,
--42.0F,
--39.0F,
--36.0F,
--32.0F,
--29.0F,
--26.0F,
--23.0F,
--20.0F,
--17.0F,
--14.0F,
--11.0F,
--8.0F,
--5.0F,
--2.0F,
-0.0F,
-3.0F,
-6.0F,
-8.0F,
-11.0F,
-14.0F,
-17.0F,
-19.0F,
-22.0F,
-25.0F,
-27.0F,
-30.0F,
-32.0F,
-35.0F,
-37.0F,
-40.0F,
-42.0F,
-44.0F,
-47.0F,
-49.0F,
-51.0F,
-54.0F,
-56.0F,
-58.0F,
-60.0F,
-62.0F,
-64.0F,
-66.0F,
-68.0F,
-70.0F,
-72.0F,
-74.0F,
-76.0F,
-78.0F,
-80.0F,
-82.0F,
-83.0F,
-85.0F,
-87.0F,
-89.0F,
-90.0F,
-92.0F,
-93.0F,
-95.0F,
-96.0F,
-98.0F,
-99.0F,
-101.0F,
-102.0F,
-104.0F,
-105.0F,
-106.0F,
-107.0F,
-109.0F,
-110.0F,
-111.0F,
-112.0F,
-113.0F,
-114.0F,
-116.0F,
-117.0F,
-118.0F,
-119.0F,
-120.0F,
-120.0F,
-121.0F,
-122.0F,
-123.0F,
-124.0F,
-125.0F,
-125.0F,
-126.0F,
-127.0F,
-128.0F,
-128.0F,
-129.0F,
-129.0F,
-130.0F,
-131.0F,
-131.0F,
-132.0F,
-132.0F,
-133.0F,
-133.0F,
-133.0F,
-134.0F,
-134.0F,
-134.0F,
-135.0F,
-135.0F,
-135.0F,
-135.0F,
-136.0F,
-136.0F,
-136.0F,
-136.0F,
-136.0F,
-136.0F,
-136.0F,
-136.0F,
-136.0F,
-137.0F,
-136.0F,
-136.0F,
-136.0F,
-136.0F,
-136.0F,
-136.0F,
-136.0F,
-136.0F,
-136.0F,
-135.0F,
-135.0F,
-135.0F,
-135.0F,
-135.0F,
-134.0F,
-134.0F,
-134.0F,
-133.0F,
-133.0F,
-133.0F,
-132.0F,
-132.0F,
-131.0F,
-131.0F,
-131.0F,
-130.0F,
-130.0F,
-129.0F,
-129.0F,
-128.0F,
-128.0F,
-127.0F,
-127.0F,
-126.0F,
-125.0F,
-125.0F,
-124.0F,
-124.0F,
-123.0F,
-122.0F,
-122.0F,
-121.0F,
-120.0F,
-120.0F,
-119.0F,
-118.0F,
-118.0F,
-117.0F,
-116.0F,
-115.0F,
-115.0F,
-114.0F,
-113.0F,
-112.0F,
-112.0F,
-111.0F,
-110.0F,
-109.0F,
-108.0F,
-108.0F,
-107.0F,
-106.0F,
-105.0F,
-104.0F,
-103.0F,
-103.0F,
-102.0F,
-101.0F,
-100.0F,
-99.0F,
-98.0F,
-97.0F,
-96.0F,
-96.0F,
-95.0F,
-94.0F,
-93.0F,
-92.0F,
-91.0F,
-90.0F,
-89.0F,
-88.0F,
-87.0F,
-87.0F,
-86.0F,
-85.0F,
-84.0F,
-83.0F,
-82.0F,
-81.0F,
-80.0F,
-79.0F,
-78.0F,
-77.0F,
-76.0F,
-76.0F,
-75.0F,
-74.0F,
-73.0F,
-72.0F,
-71.0F,
-70.0F,
-69.0F,
-68.0F,
-67.0F,
-66.0F,
-65.0F,
-65.0F,
-64.0F,
-63.0F,
-62.0F,
-61.0F,
-60.0F,
-59.0F,
-58.0F,
-57.0F,
-57.0F,
-56.0F,
-55.0F,
-54.0F,
-53.0F,
-52.0F,
-51.0F,
-51.0F,
-50.0F,
-49.0F,
-48.0F,
-47.0F,
-46.0F,
-46.0F,
-45.0F,
-44.0F,
-43.0F,
-42.0F,
-42.0F,
-41.0F,
-40.0F,
-39.0F,
-38.0F,
-38.0F,
-37.0F,
-36.0F,
-35.0F,
-35.0F,
-34.0F,
-33.0F,
-33.0F,
-32.0F,
-31.0F,
-30.0F,
-30.0F,
-29.0F,
-28.0F,
-28.0F};
-
-static float SMALL_FILTER_IMPD[] = {
--1.0F,
--1.0F,
--3.0F,
--4.0F,
--5.0F,
--6.0F,
--8.0F,
--8.0F,
--9.0F,
--11.0F,
--12.0F,
--13.0F,
--14.0F,
--15.0F,
--16.0F,
--18.0F,
--18.0F,
--20.0F,
--20.0F,
--22.0F,
--23.0F,
--24.0F,
--25.0F,
--26.0F,
--28.0F,
--28.0F,
--30.0F,
--30.0F,
--32.0F,
--33.0F,
--34.0F,
--35.0F,
--36.0F,
--37.0F,
--38.0F,
--40.0F,
--40.0F,
--42.0F,
--42.0F,
--44.0F,
--44.0F,
--46.0F,
--47.0F,
--48.0F,
--49.0F,
--50.0F,
--51.0F,
--52.0F,
--53.0F,
--54.0F,
--55.0F,
--56.0F,
--57.0F,
--58.0F,
--60.0F,
--60.0F,
--61.0F,
--62.0F,
--64.0F,
--64.0F,
--65.0F,
--66.0F,
--68.0F,
--68.0F,
--69.0F,
--70.0F,
--71.0F,
--72.0F,
--73.0F,
--74.0F,
--75.0F,
--76.0F,
--77.0F,
--77.0F,
--79.0F,
--80.0F,
--80.0F,
--81.0F,
--83.0F,
--83.0F,
--84.0F,
--85.0F,
--86.0F,
--87.0F,
--87.0F,
--89.0F,
--89.0F,
--90.0F,
--91.0F,
--92.0F,
--93.0F,
--93.0F,
--95.0F,
--95.0F,
--96.0F,
--97.0F,
--97.0F,
--99.0F,
--99.0F,
--100.0F,
--101.0F,
--101.0F,
--103.0F,
--103.0F,
--103.0F,
--105.0F,
--105.0F,
--106.0F,
--107.0F,
--107.0F,
--108.0F,
--109.0F,
--110.0F,
--110.0F,
--111.0F,
--112.0F,
--112.0F,
--113.0F,
--113.0F,
--114.0F,
--115.0F,
--116.0F,
--116.0F,
--116.0F,
--118.0F,
--118.0F,
--118.0F,
--119.0F,
--120.0F,
--120.0F,
--121.0F,
--121.0F,
--122.0F,
--122.0F,
--123.0F,
--124.0F,
--124.0F,
--124.0F,
--125.0F,
--126.0F,
--126.0F,
--126.0F,
--127.0F,
--128.0F,
--127.0F,
--129.0F,
--129.0F,
--129.0F,
--129.0F,
--130.0F,
--131.0F,
--130.0F,
--132.0F,
--131.0F,
--132.0F,
--132.0F,
--133.0F,
--133.0F,
--133.0F,
--134.0F,
--134.0F,
--134.0F,
--135.0F,
--135.0F,
--135.0F,
--136.0F,
--136.0F,
--136.0F,
--136.0F,
--136.0F,
--137.0F,
--137.0F,
--138.0F,
--137.0F,
--138.0F,
--138.0F,
--138.0F,
--138.0F,
--138.0F,
--139.0F,
--139.0F,
--139.0F,
--139.0F,
--139.0F,
--139.0F,
--140.0F,
--139.0F,
--140.0F,
--140.0F,
--140.0F,
--140.0F,
--140.0F,
--140.0F,
--140.0F,
--140.0F,
--140.0F,
--140.0F,
--141.0F,
--140.0F,
--140.0F,
--141.0F,
--140.0F,
--140.0F,
--140.0F,
--140.0F,
--141.0F,
--140.0F,
--140.0F,
--140.0F,
--140.0F,
--139.0F,
--140.0F,
--140.0F,
--139.0F,
--140.0F,
--139.0F,
--139.0F,
--139.0F,
--139.0F,
--139.0F,
--138.0F,
--139.0F,
--138.0F,
--138.0F,
--138.0F,
--138.0F,
--137.0F,
--138.0F,
--137.0F,
--136.0F,
--137.0F,
--136.0F,
--136.0F,
--136.0F,
--136.0F,
--135.0F,
--135.0F,
--135.0F,
--134.0F,
--135.0F,
--134.0F,
--133.0F,
--133.0F,
--133.0F,
--133.0F,
--132.0F,
--132.0F,
--132.0F,
--131.0F,
--131.0F,
--130.0F,
--130.0F,
--130.0F,
--129.0F,
--129.0F,
--129.0F,
--128.0F,
--128.0F,
--127.0F,
--127.0F,
--126.0F,
--126.0F,
--126.0F,
--125.0F,
--124.0F,
--125.0F,
--123.0F,
--123.0F,
--123.0F,
--122.0F,
--122.0F,
--122.0F,
--120.0F,
--121.0F,
--119.0F,
--120.0F,
--118.0F,
--118.0F,
--118.0F,
--117.0F,
--117.0F,
--116.0F,
--115.0F,
--115.0F,
--114.0F,
--114.0F,
--113.0F,
--113.0F,
--112.0F,
--111.0F,
--111.0F,
--111.0F,
--109.0F,
--109.0F,
--109.0F,
--107.0F,
--108.0F,
--106.0F,
--106.0F,
--106.0F,
--104.0F,
--104.0F,
--104.0F,
--102.0F,
--103.0F,
--101.0F,
--101.0F,
--100.0F,
--99.0F,
--99.0F,
--98.0F,
--98.0F,
--97.0F,
--96.0F,
--95.0F,
--95.0F,
--94.0F,
--93.0F,
--93.0F,
--92.0F,
--90.0F,
--91.0F,
--90.0F,
--89.0F,
--88.0F,
--88.0F,
--87.0F,
--86.0F,
--86.0F,
--85.0F,
--84.0F,
--83.0F,
--83.0F,
--82.0F,
--81.0F,
--80.0F,
--80.0F,
--79.0F,
--78.0F,
--78.0F,
--76.0F,
--76.0F,
--76.0F,
--74.0F,
--74.0F,
--73.0F,
--72.0F,
--72.0F,
--70.0F,
--70.0F,
--70.0F,
--68.0F,
--68.0F,
--67.0F,
--66.0F,
--65.0F,
--65.0F,
--64.0F,
--63.0F,
--63.0F,
--61.0F,
--61.0F,
--60.0F,
--60.0F,
--58.0F,
--58.0F,
--57.0F,
--56.0F,
--56.0F,
--55.0F,
--54.0F,
--53.0F,
--52.0F,
--52.0F,
--51.0F,
--50.0F,
--50.0F,
--48.0F,
--48.0F,
--47.0F,
--47.0F,
--45.0F,
--45.0F,
--44.0F,
--44.0F,
--42.0F,
--42.0F,
--41.0F,
--41.0F,
--39.0F,
--39.0F,
--38.0F,
--38.0F,
--36.0F,
--36.0F,
--35.0F,
--35.0F,
--33.0F,
--33.0F,
--33.0F,
--31.0F,
--31.0F,
--30.0F,
--29.0F,
--29.0F,
--28.0F,
--27.0F,
--26.0F,
--26.0F,
--25.0F,
--24.0F,
--24.0F,
--23.0F,
--22.0F,
--21.0F,
--21.0F,
--20.0F,
--19.0F,
--19.0F,
--18.0F,
--17.0F,
--17.0F,
--16.0F,
--15.0F,
--15.0F,
--14.0F,
--13.0F,
--13.0F,
--12.0F,
--11.0F,
--11.0F,
--10.0F,
--9.0F,
--9.0F,
--8.0F,
--7.0F,
--7.0F,
--6.0F,
--6.0F,
--5.0F,
--4.0F,
--3.0F,
--4.0F,
--2.0F,
--2.0F,
--1.0F,
--1.0F,
-0.0F,
-1.0F,
-1.0F,
-2.0F,
-2.0F,
-3.0F,
-3.0F,
-4.0F,
-5.0F,
-5.0F,
-6.0F,
-6.0F,
-7.0F,
-7.0F,
-8.0F,
-8.0F,
-9.0F,
-10.0F,
-10.0F,
-10.0F,
-11.0F,
-12.0F,
-12.0F,
-13.0F,
-13.0F,
-13.0F,
-14.0F,
-15.0F,
-15.0F,
-15.0F,
-16.0F,
-16.0F,
-17.0F,
-17.0F,
-18.0F,
-18.0F,
-19.0F,
-19.0F,
-20.0F,
-20.0F,
-20.0F,
-21.0F,
-21.0F,
-22.0F,
-22.0F,
-22.0F,
-23.0F,
-23.0F,
-24.0F,
-24.0F,
-24.0F,
-25.0F,
-25.0F,
-25.0F,
-26.0F,
-26.0F,
-27.0F,
-26.0F,
-28.0F,
-27.0F,
-28.0F,
-28.0F,
-29.0F,
-28.0F,
-30.0F,
-29.0F,
-30.0F,
-30.0F,
-30.0F,
-31.0F,
-30.0F,
-32.0F,
-31.0F,
-32.0F,
-32.0F,
-32.0F,
-32.0F,
-33.0F,
-33.0F,
-33.0F,
-33.0F,
-34.0F,
-34.0F,
-34.0F,
-34.0F,
-35.0F,
-34.0F,
-35.0F,
-35.0F,
-35.0F,
-36.0F,
-36.0F,
-35.0F,
-36.0F,
-36.0F,
-37.0F,
-36.0F,
-37.0F,
-36.0F,
-37.0F,
-37.0F,
-38.0F,
-37.0F,
-37.0F,
-38.0F,
-37.0F,
-38.0F,
-38.0F,
-38.0F,
-38.0F,
-38.0F,
-38.0F,
-39.0F,
-38.0F,
-38.0F,
-39.0F,
-39.0F,
-38.0F,
-39.0F,
-39.0F,
-38.0F,
-39.0F,
-39.0F,
-39.0F,
-39.0F,
-39.0F,
-39.0F,
-39.0F,
-39.0F,
-39.0F,
-39.0F,
-39.0F,
-39.0F,
-39.0F,
-39.0F,
-39.0F,
-39.0F,
-39.0F,
-39.0F,
-39.0F,
-39.0F,
-39.0F,
-39.0F,
-38.0F,
-39.0F,
-39.0F,
-38.0F,
-39.0F,
-38.0F,
-39.0F,
-38.0F,
-38.0F,
-38.0F,
-38.0F,
-38.0F,
-38.0F,
-38.0F,
-38.0F,
-37.0F,
-38.0F,
-37.0F,
-38.0F,
-37.0F,
-37.0F,
-37.0F,
-37.0F,
-36.0F,
-37.0F,
-36.0F,
-37.0F,
-36.0F,
-36.0F,
-36.0F,
-36.0F,
-35.0F,
-36.0F,
-35.0F,
-35.0F,
-35.0F,
-35.0F,
-34.0F,
-35.0F,
-34.0F,
-34.0F,
-34.0F,
-34.0F,
-33.0F,
-34.0F,
-33.0F,
-33.0F,
-33.0F,
-33.0F,
-31.0F,
-32.0F,
-32.0F,
-32.0F,
-32.0F,
-31.0F,
-31.0F,
-31.0F,
-31.0F,
-31.0F,
-30.0F,
-30.0F,
-30.0F,
-30.0F,
-29.0F,
-30.0F,
-29.0F,
-28.0F,
-29.0F,
-28.0F,
-28.0F,
-28.0F,
-28.0F,
-27.0F,
-27.0F,
-27.0F,
-27.0F,
-26.0F,
-27.0F,
-26.0F,
-25.0F,
-26.0F,
-25.0F,
-25.0F,
-24.0F,
-25.0F,
-24.0F,
-24.0F,
-23.0F,
-24.0F,
-23.0F,
-23.0F,
-22.0F,
-23.0F,
-22.0F,
-22.0F,
-21.0F,
-22.0F,
-21.0F,
-20.0F,
-21.0F,
-20.0F,
-20.0F,
-20.0F,
-19.0F,
-19.0F,
-19.0F,
-19.0F,
-18.0F,
-18.0F,
-18.0F,
-17.0F,
-17.0F,
-17.0F,
-17.0F,
-17.0F,
-16.0F,
-16.0F,
-15.0F,
-15.0F,
-16.0F,
-14.0F,
-15.0F,
-14.0F,
-14.0F,
-14.0F,
-13.0F,
-13.0F,
-13.0F,
-13.0F,
-12.0F,
-12.0F,
-12.0F,
-11.0F,
-12.0F,
-11.0F,
-10.0F,
-11.0F,
-10.0F,
-10.0F,
-10.0F,
-9.0F,
-9.0F,
-9.0F,
-8.0F,
-9.0F,
-8.0F,
-8.0F,
-7.0F,
-7.0F,
-7.0F,
-7.0F,
-7.0F,
-6.0F,
-6.0F,
-6.0F,
-5.0F,
-5.0F,
-5.0F,
-5.0F,
-4.0F,
-5.0F,
-3.0F,
-4.0F,
-4.0F,
-3.0F,
-3.0F,
-3.0F,
-2.0F,
-2.0F,
-2.0F,
-2.0F,
-2.0F,
-1.0F,
-1.0F,
-1.0F,
-0.0F,
-1.0F,
-0.0F,
-0.0F,
--1.0F,
-0.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--2.0F,
--2.0F,
--2.0F,
--2.0F,
--3.0F,
--2.0F,
--3.0F,
--3.0F,
--4.0F,
--3.0F,
--4.0F,
--4.0F,
--4.0F,
--4.0F,
--5.0F,
--5.0F,
--5.0F,
--5.0F,
--5.0F,
--5.0F,
--6.0F,
--6.0F,
--6.0F,
--6.0F,
--6.0F,
--7.0F,
--7.0F,
--6.0F,
--8.0F,
--7.0F,
--7.0F,
--8.0F,
--7.0F,
--8.0F,
--8.0F,
--8.0F,
--9.0F,
--8.0F,
--9.0F,
--9.0F,
--9.0F,
--9.0F,
--9.0F,
--9.0F,
--10.0F,
--10.0F,
--9.0F,
--10.0F,
--10.0F,
--10.0F,
--11.0F,
--10.0F,
--11.0F,
--10.0F,
--11.0F,
--11.0F,
--11.0F,
--11.0F,
--12.0F,
--11.0F,
--11.0F,
--12.0F,
--12.0F,
--11.0F,
--12.0F,
--12.0F,
--12.0F,
--13.0F,
--12.0F,
--12.0F,
--13.0F,
--12.0F,
--13.0F,
--12.0F,
--13.0F,
--13.0F,
--13.0F,
--13.0F,
--13.0F,
--13.0F,
--14.0F,
--13.0F,
--13.0F,
--14.0F,
--13.0F,
--14.0F,
--13.0F,
--14.0F,
--14.0F,
--13.0F,
--14.0F,
--14.0F,
--14.0F,
--14.0F,
--14.0F,
--14.0F,
--14.0F,
--14.0F,
--14.0F,
--14.0F,
--15.0F,
--14.0F,
--14.0F,
--14.0F,
--15.0F,
--14.0F,
--14.0F,
--15.0F,
--14.0F,
--14.0F,
--15.0F,
--14.0F,
--15.0F,
--14.0F,
--15.0F,
--14.0F,
--15.0F,
--14.0F,
--15.0F,
--14.0F,
--14.0F,
--15.0F,
--14.0F,
--15.0F,
--14.0F,
--15.0F,
--14.0F,
--14.0F,
--15.0F,
--14.0F,
--15.0F,
--14.0F,
--14.0F,
--14.0F,
--15.0F,
--14.0F,
--14.0F,
--14.0F,
--14.0F,
--15.0F,
--14.0F,
--14.0F,
--14.0F,
--14.0F,
--14.0F,
--13.0F,
--14.0F,
--14.0F,
--14.0F,
--14.0F,
--13.0F,
--14.0F,
--13.0F,
--14.0F,
--13.0F,
--14.0F,
--13.0F,
--13.0F,
--14.0F,
--13.0F,
--13.0F,
--13.0F,
--13.0F,
--13.0F,
--13.0F,
--13.0F,
--13.0F,
--12.0F,
--13.0F,
--12.0F,
--13.0F,
--12.0F,
--13.0F,
--12.0F,
--12.0F,
--12.0F,
--12.0F,
--12.0F,
--12.0F,
--12.0F,
--12.0F,
--11.0F,
--12.0F,
--12.0F,
--11.0F,
--10.0F,
--12.0F,
--11.0F,
--11.0F,
--11.0F,
--11.0F,
--11.0F,
--10.0F,
--11.0F,
--11.0F,
--10.0F,
--11.0F,
--10.0F,
--10.0F,
--10.0F,
--10.0F,
--10.0F,
--10.0F,
--10.0F,
--9.0F,
--10.0F,
--9.0F,
--10.0F,
--9.0F,
--9.0F,
--9.0F,
--9.0F,
--9.0F,
--9.0F,
--9.0F,
--8.0F,
--9.0F,
--8.0F,
--9.0F,
--8.0F,
--8.0F,
--8.0F,
--8.0F,
--8.0F,
--7.0F,
--8.0F,
--7.0F,
--8.0F,
--7.0F,
--7.0F,
--7.0F,
--7.0F,
--7.0F,
--7.0F,
--7.0F,
--6.0F,
--7.0F,
--6.0F,
--6.0F,
--7.0F,
--6.0F,
--6.0F,
--6.0F,
--5.0F,
--6.0F,
--6.0F,
--5.0F,
--5.0F,
--6.0F,
--5.0F,
--5.0F,
--5.0F,
--5.0F,
--4.0F,
--5.0F,
--5.0F,
--4.0F,
--4.0F,
--5.0F,
--4.0F,
--4.0F,
--4.0F,
--4.0F,
--4.0F,
--3.0F,
--4.0F,
--3.0F,
--4.0F,
--3.0F,
--3.0F,
--3.0F,
--3.0F,
--3.0F,
--3.0F,
--2.0F,
--3.0F,
--3.0F,
--2.0F,
--2.0F,
--3.0F,
--2.0F,
--2.0F,
--2.0F,
--1.0F,
--2.0F,
--2.0F,
--2.0F,
--1.0F,
--1.0F,
--2.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
-0.0F,
--1.0F,
-0.0F,
--1.0F,
-0.0F,
-0.0F,
-0.0F,
-0.0F,
-0.0F,
-0.0F,
-0.0F,
-0.0F,
-1.0F,
-0.0F,
-1.0F,
-0.0F,
-1.0F,
-0.0F,
-1.0F,
-1.0F,
-1.0F,
-1.0F,
-1.0F,
-1.0F,
-1.0F,
-2.0F,
-1.0F,
-1.0F,
-2.0F,
-1.0F,
-2.0F,
-2.0F,
-2.0F,
-1.0F,
-2.0F,
-2.0F,
-2.0F,
-2.0F,
-2.0F,
-2.0F,
-3.0F,
-2.0F,
-2.0F,
-3.0F,
-2.0F,
-3.0F,
-2.0F,
-3.0F,
-2.0F,
-3.0F,
-3.0F,
-3.0F,
-2.0F,
-3.0F,
-3.0F,
-3.0F,
-3.0F,
-3.0F,
-4.0F,
-3.0F,
-3.0F,
-3.0F,
-4.0F,
-3.0F,
-3.0F,
-4.0F,
-3.0F,
-4.0F,
-3.0F,
-4.0F,
-3.0F,
-4.0F,
-4.0F,
-3.0F,
-4.0F,
-4.0F,
-4.0F,
-4.0F,
-3.0F,
-4.0F,
-4.0F,
-4.0F,
-4.0F,
-4.0F,
-4.0F,
-4.0F,
-4.0F,
-5.0F,
-4.0F,
-4.0F,
-4.0F,
-4.0F,
-4.0F,
-5.0F,
-4.0F,
-4.0F,
-4.0F,
-5.0F,
-4.0F,
-4.0F,
-5.0F,
-4.0F,
-4.0F,
-5.0F,
-4.0F,
-4.0F,
-5.0F,
-4.0F,
-5.0F,
-4.0F,
-5.0F,
-4.0F,
-4.0F,
-5.0F,
-4.0F,
-5.0F,
-4.0F,
-5.0F,
-4.0F,
-5.0F,
-4.0F,
-5.0F,
-4.0F,
-5.0F,
-4.0F,
-5.0F,
-4.0F,
-5.0F,
-4.0F,
-5.0F,
-4.0F,
-4.0F,
-5.0F,
-4.0F,
-5.0F,
-4.0F,
-5.0F,
-4.0F,
-4.0F,
-5.0F,
-4.0F,
-5.0F,
-4.0F,
-4.0F,
-5.0F,
-4.0F,
-4.0F,
-5.0F,
-4.0F,
-4.0F,
-4.0F,
-5.0F,
-4.0F,
-4.0F,
-4.0F,
-5.0F,
-4.0F,
-4.0F,
-4.0F,
-4.0F,
-4.0F,
-4.0F,
-4.0F,
-4.0F,
-4.0F,
-4.0F,
-4.0F,
-4.0F,
-4.0F,
-4.0F,
-4.0F,
-4.0F,
-4.0F,
-4.0F,
-3.0F,
-4.0F,
-4.0F,
-4.0F,
-3.0F,
-4.0F,
-4.0F,
-3.0F,
-4.0F,
-3.0F,
-4.0F,
-4.0F,
-3.0F,
-4.0F,
-3.0F,
-3.0F,
-4.0F,
-3.0F,
-3.0F,
-4.0F,
-3.0F,
-3.0F,
-4.0F,
-3.0F,
-3.0F,
-3.0F,
-3.0F,
-3.0F,
-3.0F,
-3.0F,
-3.0F,
-3.0F,
-3.0F,
-2.0F,
-3.0F,
-3.0F,
-2.0F,
-3.0F,
-3.0F,
-3.0F,
-2.0F,
-3.0F,
-3.0F,
-2.0F,
-3.0F,
-2.0F,
-3.0F,
-2.0F,
-3.0F,
-2.0F,
-2.0F,
-3.0F,
-2.0F,
-2.0F,
-3.0F,
-2.0F,
-2.0F,
-2.0F,
-2.0F,
-2.0F,
-2.0F,
-2.0F,
-2.0F,
-2.0F,
-2.0F,
-2.0F,
-2.0F,
-2.0F,
-2.0F,
-1.0F,
-2.0F,
-2.0F,
-2.0F,
-1.0F,
-2.0F,
-1.0F,
-2.0F,
-1.0F,
-2.0F,
-1.0F,
-2.0F,
-1.0F,
-2.0F,
-1.0F,
-1.0F,
-1.0F,
-2.0F,
-1.0F,
-1.0F,
-1.0F,
-1.0F,
-1.0F,
-2.0F,
-1.0F,
-1.0F,
-1.0F,
-1.0F,
-0.0F,
-1.0F,
-1.0F,
-1.0F,
-1.0F,
-1.0F,
-0.0F,
-1.0F,
-1.0F,
-1.0F,
-0.0F,
-1.0F,
-0.0F,
-1.0F,
-1.0F,
-0.0F,
-1.0F,
-0.0F,
-1.0F,
-0.0F,
-0.0F,
-1.0F,
-0.0F,
-0.0F,
-1.0F,
-0.0F,
-0.0F,
-0.0F,
-1.0F,
-0.0F,
-0.0F,
-0.0F,
-0.0F,
-0.0F,
-0.0F,
-0.0F,
-0.0F,
-1.0F,
--1.0F,
-0.0F,
-0.0F,
-0.0F,
-0.0F,
-0.0F,
-0.0F,
-0.0F,
-0.0F,
--1.0F,
-0.0F,
-0.0F,
-0.0F,
-0.0F,
--1.0F,
-0.0F,
-0.0F,
--1.0F,
-0.0F,
-0.0F,
--1.0F,
-0.0F,
--1.0F,
-0.0F,
-0.0F,
--1.0F,
-0.0F,
--1.0F,
-0.0F,
--1.0F,
-0.0F,
--1.0F,
-0.0F,
--1.0F,
--1.0F,
-0.0F,
--1.0F,
-0.0F,
--1.0F,
--1.0F,
-0.0F,
--1.0F,
--1.0F,
-0.0F,
--1.0F,
--1.0F,
-0.0F,
--1.0F,
--1.0F,
--1.0F,
-0.0F,
--1.0F,
--1.0F,
--1.0F,
-0.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
-0.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
-0.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
-0.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
-0.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
-0.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
-0.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
-0.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
-0.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
-0.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
-0.0F,
--1.0F,
--1.0F,
--1.0F,
--1.0F,
-0.0F,
--1.0F,
--1.0F,
--1.0F,
-0.0F,
--1.0F,
--1.0F,
-0.0F,
--1.0F,
--1.0F,
--1.0F,
-0.0F,
--1.0F,
--1.0F,
-0.0F,
--28.0F};
diff --git a/lib-src/libnyquist/nyqsrc/handlers.c b/lib-src/libnyquist/nyqsrc/handlers.c
deleted file mode 100644
index a57691c..0000000
--- a/lib-src/libnyquist/nyqsrc/handlers.c
+++ /dev/null
@@ -1,120 +0,0 @@
-/* handlers.c -- null handlers to avoid link errors due to callouts in moxc.c */
-
-#include "musiprog.h"
-
-char *app_syntax = "";
-
-/* note -- a simple way to make a midi note on channel 1 */
-/**/
-void note(pitch, dur)
-{
-}
-
-/* asciievent -- ascii event handler */
-/**/
-void asciievent(char c)
-{
-}
-
-
-/* keyup -- key up handler */
-/**/
-void keyup(int c, int k)
-{
- /* insert key up actions here */
-}
-
-
-/* keydown -- key down handler */
-/**/
-void keydown(int c, int k, int v)
-{
- /* insert key down actions here */
-}
-
-
-/* midievent -- handle a midi message */
-/**/
-void midievent(midi_data)
- byte midi_data[4];
-{
- /* this is only called if mididecode is false so */
- /* you can assume this function is never called */
-}
-
-
-/* prgmchange -- program change handler */
-/**/
-void prgmchange(int chan, int value)
-{
- /* insert program change actions here */
-}
-
-
-/* bendchange -- pitch bend handler */
-/**/
-void bendchange(int chan, int value)
-{
- /* insert pitchbend actions here */
-}
-
-
-/* ctrlchange -- control change handler */
-/**/
-void ctrlchange(int chan, int ctrl, int value)
-{
- /* insert control change actions here */
-}
-
-
-/* peddown -- pedal down handler */
-/**/
-void peddown(int c)
-{
- /* insert pedal down actions here */
- /* the following default action invokes your control change handler */
- ctrlchange(c, SUSTAIN, 127);
-}
-
-
-/* pedup -- pedal up handler */
-/**/
-void pedup(int c)
-{
- /* insert pedal up actions here */
- /* the following default action invokes your control change handler */
- ctrlchange(c, SUSTAIN, 0);
-}
-
-
-/* touchchange -- after touch handler */
-/**/
-void touchchange(int chan, int value)
-{
- /* insert after touch actions here */
-}
-
-
-void sysex(void)
-{
-}
-
-
-/*
- * NOTE: this is called just before closing down the midi interface.
- */
-void coda(void)
-{
-}
-
-
-#ifdef AMIGA
-void buttonchange(int number, int value)
-{
-}
-
-void propchange(int number, int value)
-{
- /* insert propchange actions here */
-}
-#endif
diff --git a/lib-src/libnyquist/nyqsrc/inverse.c b/lib-src/libnyquist/nyqsrc/inverse.c
deleted file mode 100644
index 1dd757c..0000000
--- a/lib-src/libnyquist/nyqsrc/inverse.c
+++ /dev/null
@@ -1,214 +0,0 @@
-/* inverse.c -- compute the inverse of a sampled function */
-
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm changes for portability and fix compiler warnings
- */
-
-
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-#include "cext.h"
-
-#include "falloc.h"
-#include "inverse.h"
-
-void inverse_free();
-
-
-typedef struct inverse_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type s;
- long s_cnt;
- sample_block_values_type s_ptr;
- double s_prev;
- double s_time;
- double s_time_increment;
- double out_time_increment;
- boolean started;
-} inverse_susp_node, *inverse_susp_type;
-
-void inverse_fetch(register inverse_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples read from s */
- int out_cnt = 0; /* how many samples output */
- int togo = 0; /* how many more to read from s in inner loop */
- int n;
- sample_block_type out;
- double out_time = susp->susp.current * susp->out_time_increment;
-
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type s_ptr_reg;
- falloc_sample_block(out, "inverse_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure we are primed with first value */
- /* This is a lot of work just to prefetch susp->s_prev! */
- if (!susp->started) {
- susp->started = true;
- /* see comments below about susp_check_term_log_samples() */
- if (susp->s_cnt == 0) {
- susp_get_samples(s, s_ptr, s_cnt);
- if (susp->s_ptr == zero_block->samples) {
- susp->terminate_cnt = susp->susp.current;
- }
- }
- susp->s_prev = susp_fetch_sample(s, s_ptr, s_cnt);
- }
-
- while (out_cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't run past the s input sample block: */
- /* most fetch routines call susp_check_term_log_samples() here
- * but we can't becasue susp_check_term_log_samples() assumes
- * that output time progresses at the same rate as input time.
- * Here, some time warping is going on, so this doesn't work.
- * Instead, check for termination of s and fix terminate_cnt to
- * be the current output count rather than the current input time.
- */
- if (susp->s_cnt == 0) {
- susp_get_samples(s, s_ptr, s_cnt);
- if (susp->s_ptr == zero_block->samples) {
- susp->terminate_cnt = susp->susp.current + out_cnt;
- /* we can't simply terminate here because we might have
- * some output samples computed already, in which case we
- * want to return them now and terminate the NEXT time we're
- * called.
- */
- }
- }
- togo = susp->s_cnt;
-
- /* if we ran past terminate time, fix up output */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + out_cnt) {
- /* pretend like we computed the correct number of samples */
- togo = 0;
- out_cnt = susp->terminate_cnt - susp->susp.current;
- /* exit the loop to complete the termination */
- break;
- }
- n = togo;
- s_ptr_reg = susp->s_ptr;
- if (n) do { /* the inner sample computation loop */
- /* scan s_ptr_reg to time t, output and loop */
- register double next_value = *s_ptr_reg++;
- while (out_time < next_value) {
- *out_ptr++ = (float) (susp->s_time +
- (out_time - susp->s_prev) /
- (susp->s->sr * (next_value - susp->s_prev)));
- out_time += susp->out_time_increment;
- if (++out_cnt >= max_sample_block_len) goto output_full;
- }
- susp->s_prev = next_value;
- susp->s_time += susp->s_time_increment;
- } while (--n); /* inner loop */
- output_full:
- /* using s_ptr_reg is a bad idea on RS/6000: */
- susp->s_ptr += (togo - n);
- susp_took(s_cnt, (togo - n));
- cnt += (togo - n);
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && out_cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = out_cnt;
- susp->susp.current += out_cnt;
- }
-} /* inverse_fetch */
-
-
-void inverse_toss_fetch(susp, snd_list)
- register inverse_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = MIN(susp->susp.current + max_sample_block_len,
- susp->susp.toss_cnt);
- time_type final_time = susp->susp.t0 + final_count / susp->susp.sr;
- long n;
-
- /* fetch samples from s up to final_time for this block of zeros */
- while (((long) ((final_time - susp->s->t0) * susp->s->sr + 0.5)) >=
- susp->s->current)
- susp_get_samples(s, s_ptr, s_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- if (final_count == susp->susp.toss_cnt) {
- n = ROUND((final_time - susp->s->t0) * susp->s->sr -
- (susp->s->current - susp->s_cnt));
- susp->s_ptr += n;
- susp_took(s_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- }
- snd_list->block_len = (short) (final_count - susp->susp.current);
- susp->susp.current = final_count;
- snd_list->u.next = snd_list_create((snd_susp_type) susp);
- snd_list->block = internal_zero_block;
-}
-
-
-void inverse_mark(inverse_susp_type susp)
-{
- sound_xlmark(susp->s);
-}
-
-
-void inverse_free(inverse_susp_type susp)
-{
- sound_unref(susp->s);
- ffree_generic(susp, sizeof(inverse_susp_node), "inverse_free");
-}
-
-
-void inverse_print_tree(inverse_susp_type susp, int n)
-{
- indent(n);
- stdputstr("s:");
- sound_print_tree_1(susp->s, n);
-}
-
-
-sound_type snd_make_inverse(sound_type s, time_type t0, rate_type sr)
-{
- register inverse_susp_type susp;
-
- falloc_generic(susp, inverse_susp_node, "snd_make_inverse");
- susp->susp.fetch = inverse_fetch;
- susp->terminate_cnt = UNKNOWN;
-
- /* initialize susp state */
- susp->susp.free = inverse_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = inverse_mark;
- susp->susp.print_tree = inverse_print_tree;
- susp->susp.name = "inverse";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = UNKNOWN; /* log stop time = term time */
- susp->susp.current = 0;
- susp->s = s;
- susp->s_cnt = 0;
- susp->s_prev = 0;
- susp->s_time = 0;
- susp->s_time_increment = 1 / s->sr;
- susp->out_time_increment = 1 / (sr * s->scale);
- susp->started = false;
- return sound_create((snd_susp_type)susp, t0, sr, 1.0 /* scale */);
-}
-
-
-sound_type snd_inverse(sound_type s, time_type t0, rate_type sr)
-{
- sound_type s_copy = sound_copy(s);
- return snd_make_inverse(s_copy, t0, sr);
-}
diff --git a/lib-src/libnyquist/nyqsrc/inverse.h b/lib-src/libnyquist/nyqsrc/inverse.h
deleted file mode 100644
index 4ecf563..0000000
--- a/lib-src/libnyquist/nyqsrc/inverse.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_inverse(sound_type s, time_type t0, rate_type sr);
-sound_type snd_inverse(sound_type s, time_type t0, rate_type sr);
- /* LISP: (snd-inverse SOUND ANYNUM ANYNUM) */
diff --git a/lib-src/libnyquist/nyqsrc/local.c b/lib-src/libnyquist/nyqsrc/local.c
deleted file mode 100644
index c06a3d2..0000000
--- a/lib-src/libnyquist/nyqsrc/local.c
+++ /dev/null
@@ -1,53 +0,0 @@
-/* local.c -- call initialization code for all extensions */
-
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm changes for portability and fix compiler warnings
- */
-
-#include "xlisp.h"
-#include "sound.h"
-#include "samples.h"
-#ifdef CMTSTUFF
-#include "seqext.h"
-#endif
-#include "falloc.h"
-#include "sine.h"
-
-LVAL RSLT_sym;
-
-void localinit(void)
-{
- falloc_init();
-/* probe_init(true);*/
- sound_init();
-#ifdef CMTSTUFF
- seqext_init();
-#endif
- sine_init();
-}
-
-
-void localsymbols(void)
-{
- RSLT_sym = xlenter("*RSLT*");
- sound_symbols();
- samples_symbols();
-#ifdef CMTSTUFF
- seqext_symbols();
-#endif
-}
-
-extern int sample_block_total;
-extern int sample_block_used;
-
-void print_local_gc_info(void)
-{
- char buf[50];
- /* print sample blocks */
- sprintf(buf, "; samples %dKB, %dKB free",
- (sample_block_total * max_sample_block_len) / 1024,
- ((sample_block_total - sample_block_used) *
- max_sample_block_len) / 1024);
- stdputstr(buf);
-}
diff --git a/lib-src/libnyquist/nyqsrc/localdefs.h b/lib-src/libnyquist/nyqsrc/localdefs.h
deleted file mode 100644
index b227c2f..0000000
--- a/lib-src/libnyquist/nyqsrc/localdefs.h
+++ /dev/null
@@ -1,3 +0,0 @@
-/* include actual local file headers: */
-#include "sndfnintdefs.h"
-#include "seqfnintdefs.h"
diff --git a/lib-src/libnyquist/nyqsrc/localptrs.h b/lib-src/libnyquist/nyqsrc/localptrs.h
deleted file mode 100644
index a2d2ab7..0000000
--- a/lib-src/libnyquist/nyqsrc/localptrs.h
+++ /dev/null
@@ -1,7 +0,0 @@
-/* localptrs.h -- extend XLISP with these functions
-
-/* CHANGE LOG
- * 28-Apr-03 rbd Removed "include switches.h" -- already included
-/* extension to xlisp */
-#include "sndfnintptrs.h"
-#include "seqfnintptrs.h"
diff --git a/lib-src/libnyquist/nyqsrc/multiread.c b/lib-src/libnyquist/nyqsrc/multiread.c
deleted file mode 100644
index 38924db..0000000
--- a/lib-src/libnyquist/nyqsrc/multiread.c
+++ /dev/null
@@ -1,287 +0,0 @@
-/* multiread.c -- read multichannel sound file */
-
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm changes for portability and fix compiler warnings
- */
-
-#include "stdio.h"
-#ifdef UNIX
-#include "sys/file.h"
-#endif
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "snd.h"
-#include "xlisp.h"
-#include "sound.h"
-#include "falloc.h"
-#include "sndread.h"
-#include "multiread.h"
-
-/* allocate input buffer space for this many bytes/frame,
- * e.g. 8 allows 2 channels
- * If frames are bigger, then multiple reads will be issued.
- */
-#define max_bytes_per_frame 8
-#define input_buffer_max (max_sample_block_len * max_bytes_per_frame)
-
-/* multiread_fetch - read samples into multiple channels. */
-/*
- * The susp is shared by all channels. The susp has backpointers
- * to the tail-most snd_list node of each channels, and it is by
- * extending the list at these nodes that sounds are read in.
- * To avoid a circularity, the reference counts on snd_list nodes
- * do not include the backpointers from this susp. When a snd_list
- * node refcount goes to zero, the multiread susp's free routine
- * is called. This must scan the backpointers to find the node that
- * has a zero refcount (the free routine is called before the node
- * is deallocated, so this is safe). The backpointer is then set
- * to NULL. When all backpointers are NULL, the susp itself is
- * deallocated, because it can only be referenced through the
- * snd_list nodes to which there are backpointers.
- */
-void multiread_fetch(susp, snd_list)
- register read_susp_type susp;
- snd_list_type snd_list;
-{
- int i, j;
- int frames_read = 0; /* total frames read in this call to fetch */
- int n;
- sample_block_type out;
- char input_buffer[input_buffer_max];
- float *float_ptr;
- int buff_frame_size;
- int file_frame_size;
-
- /* when we are called, the caller (SND_get_first) will insert a new
- * snd_list node. We need to do this here for all other channels.
- */
- for (j = 0; j < susp->snd.format.channels; j++) {
-
-/* nyquist_printf("multiread_fetch: chan[%d] = ", j);
- print_snd_list_type(susp->chan[j]);
- stdputstr("\n");
- */
- if (!susp->chan[j]) { /* ignore non-existent channels */
-/* nyquist_printf("multiread_fetch: ignore channel %d\n", j);*/
- continue;
- }
- falloc_sample_block(out, "multiread_fetch");
-/* nyquist_printf("multiread: allocated block %x\n", out); */
- /* Since susp->chan[i] exists, we want to append a block of samples.
- * The block, out, has been allocated. Before we insert the block,
- * we must figure out whether to insert a new snd_list_type node for
- * the block. Recall that before SND_get_next is called, the last
- * snd_list_type in the list will have a null block pointer, and the
- * snd_list_type's susp field points to the suspension (in this case,
- * susp). When SND_get_next (in sound.c) is called, it appends a new
- * snd_list_type and points the previous one to internal_zero_block
- * before calling this fetch routine. On the other hand, since
- * SND_get_next is only going to be called on one of the channels, the
- * other channels will not have had a snd_list_type appended.
- * SND_get_next does not tell us directly which channel it wants (it
- * doesn't know), but we can test by looking for a non-null block in the
- * snd_list_type pointed to by our back-pointers in susp->chan[]. If
- * the block is null, the channel was untouched by SND_get_next, and
- * we should append a snd_list_type. If it is non-null, then it
- * points to internal_zero_block (the block inserted by SND_get_next)
- * and a new snd_list_type has already been appended.
- */
- /* Before proceeding, it may be that garbage collection ran when we
- * allocated out, so check again to see if susp->chan[j] is Null:
- */
- if (!susp->chan[j]) {
- ffree_sample_block(out, "multiread_fetch");
- continue;
- }
- if (!susp->chan[j]->block) {
- snd_list_type snd_list = snd_list_create((snd_susp_type) susp);
- /* Now we have a snd_list to append to the channel, but a very
- * interesting thing can happen here. snd_list_create, which
- * we just called, MAY have invoked the garbage collector, and
- * the GC MAY have freed all references to this channel, in which
- * case multread_free(susp) will have been called, and susp->chan[j]
- * will now be NULL!
- */
- if (!susp->chan[j]) {
- nyquist_printf("susp %p Channel %d disappeared!\n", susp, j);
- ffree_snd_list(snd_list, "multiread_fetch");
- } else {
- susp->chan[j]->u.next = snd_list;
- }
- }
- /* see the note above: we don't know if susp->chan still exists */
- /* Note: We DO know that susp still exists because even if we lost
- * some channels in a GC, someone is still calling SND_get_next on
- * some channel. I suppose that there might be some very pathological
- * code that could free a global reference to a sound that is in the
- * midst of being computed, perhaps by doing something bizarre in the
- * closure that snd_seq activates at the logical stop time of its first
- * sound, but I haven't thought that one through.
- */
- if (susp->chan[j]) {
- susp->chan[j]->block = out;
- /* check some assertions */
- if (susp->chan[j]->u.next->u.susp != (snd_susp_type) susp) {
- nyquist_printf("didn't find susp at end of list for chan %d\n", j);
- }
- } else { /* we allocated out, but don't need it anymore due to GC */
- ffree_sample_block(out, "multiread_fetch");
- }
- }
-
- file_frame_size = susp->snd.format.channels * susp->bytes_per_sample;
- buff_frame_size = susp->snd.format.channels * sizeof(float);
- /* now fill sample blocks with frames from the file
- until eof or end of blocks */
- while (true) {
-
- /* compute how many frames to read to fill sample blocks */
- long frame_count = max_sample_block_len - frames_read;
- long byte_count; /* how many bytes to read */
- long actual; /* how many frames actually read */
- float peak;
-
- /* make sure frames will fit in buffer */
- /* assume buff_frame_size >= file_frame_size, i.e. the limiting
- factor will be the number of floats we can fit in the buffer */
- if (frame_count * buff_frame_size > input_buffer_max) {
- frame_count = input_buffer_max / buff_frame_size;
- }
-
- byte_count = frame_count * file_frame_size;
-
- /* put samples at end of buffer so we can
- overwrite buffer with converted samples */
- actual = snd_read(&susp->snd,
- input_buffer + input_buffer_max - byte_count,
- frame_count);
-
- n = actual;
-
- /* don't read too many */
- if (n > (susp->cnt - susp->susp.current)) {
- n = susp->cnt - susp->susp.current;
- }
-
- /* we want n frames, convert data to floats */
- (*susp->cvtfn)((void *) input_buffer,
- (void *) (input_buffer + input_buffer_max - byte_count),
- n * susp->snd.format.channels, 1.0F, &peak);
-
- /* process one channel at a time, multiple passes through input */
- for (j = 0; j < susp->snd.format.channels; j++) {
- register sample_block_values_type out_ptr;
- /* offset by channel number: */
- float_ptr = ((float *) input_buffer) + j;
-
- /* ignore nonexistent channels */
- if (!susp->chan[j]) continue;
-
- /* find pointer to sample buffer */
- out_ptr = susp->chan[j]->block->samples + frames_read;
-
- /* copy samples */
- for (i = 0; i < n; i++) {
- *out_ptr++ = *float_ptr;
- float_ptr += susp->snd.format.channels;
- }
- susp->chan[j]->block_len = frames_read + n;
- }
-
- frames_read += n;
- susp->susp.current += n;
-
- if (frames_read == 0) {
- /* we didn't read anything, but can't return length zero, so
- * convert snd_list's to pointer to zero block. This loop
- * will free the susp via snd_list_unref().
- */
- for (j = 0; j < susp->snd.format.channels; j++) {
- if (susp->chan[j]) {
- snd_list_type the_snd_list = susp->chan[j];
- /* this is done so that multiread_free works right: */
- susp->chan[j] = susp->chan[j]->u.next;
- /* nyquist_printf("end of file, terminating channel %d\n", j); */
- /* this fixes up the tail of channel j */
- snd_list_terminate(the_snd_list);
- }
- }
- return;
- } else if (susp->cnt == susp->susp.current || actual < frame_count) {
- /* we've read the requested number of frames or we
- * reached end of file
- * last iteration will close file and free susp:
- */
- for (j = 0; j < susp->snd.format.channels; j++) {
- snd_list_type the_snd_list = susp->chan[j];
- /* nyquist_printf("reached susp->cnt, terminating chan %d\n", j); */
- if (the_snd_list) {
- /* assert: */
- if (the_snd_list->u.next->u.susp != (snd_susp_type) susp) {
- stdputstr("assertion violation");
- }
- /* this is done so that multiread_free works right: */
- susp->chan[j] = the_snd_list->u.next;
- snd_list_unref(the_snd_list->u.next);
- /* terminate by pointing to zero block */
- the_snd_list->u.next = zero_snd_list;
- }
- }
- return;
- } else if (frames_read >= max_sample_block_len) {
- /* move pointer to next list node */
- for (j = 0; j < susp->snd.format.channels; j++) {
- if (susp->chan[j]) susp->chan[j] = susp->chan[j]->u.next;
- }
- return;
- }
- }
-} /* multiread__fetch */
-
-
-void multiread_free(read_susp_type susp)
-{
- int j;
- boolean active = false;
-/* stdputstr("multiread_free: "); */
- for (j = 0; j < susp->snd.format.channels; j++) {
- if (susp->chan[j]) {
- if (susp->chan[j]->refcnt) active = true;
- else {
- susp->chan[j] = NULL;
- /* nyquist_printf("deactivating channel %d\n", j); */
- }
- }
- }
- if (!active) {
-/* stdputstr("all channels freed, freeing susp now\n"); */
- read_free(susp);
- }
-}
-
-
-LVAL multiread_create(susp)
- read_susp_type susp;
-{
- LVAL result;
- int j;
-
- xlsave1(result);
-
- result = newvector(susp->snd.format.channels); /* create array for sounds */
- falloc_generic_n(susp->chan, snd_list_type, susp->snd.format.channels,
- "multiread_create");
- /* create sounds to return */
- for (j = 0; j < susp->snd.format.channels; j++) {
- sound_type snd = sound_create((snd_susp_type)susp,
- susp->susp.t0, susp->susp.sr, 1.0);
- LVAL snd_lval = cvsound(snd);
-/* nyquist_printf("multiread_create: sound %d is %x, LVAL %x\n", j, snd, snd_lval); */
- setelement(result, j, snd_lval);
- susp->chan[j] = snd->list;
- }
- xlpop();
- return result;
-}
diff --git a/lib-src/libnyquist/nyqsrc/multiread.h b/lib-src/libnyquist/nyqsrc/multiread.h
deleted file mode 100644
index 7bd1b17..0000000
--- a/lib-src/libnyquist/nyqsrc/multiread.h
+++ /dev/null
@@ -1,3 +0,0 @@
-LVAL multiread_create(read_susp_type susp);
-void multiread_fetch(read_susp_type susp, snd_list_type snd_list);
-void multiread_free(read_susp_type susp);
diff --git a/lib-src/libnyquist/nyqsrc/multiseq.c b/lib-src/libnyquist/nyqsrc/multiseq.c
deleted file mode 100644
index 9ac797b..0000000
--- a/lib-src/libnyquist/nyqsrc/multiseq.c
+++ /dev/null
@@ -1,667 +0,0 @@
-/* multiseq.c -- return a multichannel signal until its logical stop, then
- evaluate a closure to get another signal and convert to adds
- of two multichannel signals */
-
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm changes for portability and fix compiler warnings
- */
-
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-#include "falloc.h"
-#include "multiseq.h"
-#include "add.h"
-#include "scale.h"
-#include "extern.h"
-#include "cext.h"
-
-/* #define MULTISEQ_GC_DEBUG */
-#ifdef MULTISEQ_GC_DEBUG
-extern snd_list_type snd_list_to_watch;
-#endif
-
-#define D if(0)
-
-/* Design:
-
-This operator implements sequences of multichannel signals.
-A single data structure manages an array of susps that
-initially are used to fetch blocks from the first multichannel
-signal. When the LAST logical stop is reached, a closure
-is evaluated to yield a new multichannel signal. The component
-sounds of this are stored into the susps which are then
-converted into add suspensions. The other managing structures
-are then freed.
-
-The main constraint here is that the conversion to add susps
-must take place at the same time across all channels, so before
-the conversion, a fetch from the susp can only be made if it is
-known that the samples returned happen BEFORE the conversion will
-take place. Since the conversion takes place at the maximum of
-the logical stop times of all channels, we have to advance all
-channels synchronously. We keep track of a greatest lower bound,
-refered to as the horizon, on the maximum logical stop time. It
-is safe to fetch blocks up to the horizon, but not beyond.
-
-This synchronous fetching is done by a single routine and an
-auxilliarly structure that manages the whole multichannel array
-of susps. The basic idea is that a fetch from a
-suspension gets forwarded to the managing structure, which
-uses its array of susps to fetch from ALL suspensions up to
-the requested time or until the logical stop, whichever comes
-first. These "synchronous" fetches are not made by calling the
-fetch routines on the suspensions to avoid infinite recursion.
-
-At any time, there will be some set of channels whose logical
-stop time is unknown. The "s1" fields (s1, s1_ptr, s1_bptr) of
-these suspensions are used to look ahead by geting a block from
-s1. If no logical stop is indicated, then we can append the block
-to the snd_list and update the horizon, allowing fetches from other
-susps. In other words, the s1_bptr of each susp provides a one
-buffer lookahead by which we can obtain advance knowledge of the
-maximum logical stop time.
-
-The algorithm is as follows:
-
-1. When fetch is called on a suspension, compute when any
-prefetched samples will end (if there are none, then fetch
-a block from s1 and compute the time at which the block ends).
-This becomes the target time for other fetches.
-
-2. Call multiseq_advance(), passing the target time and the
-manager structure (which has pointers to all other channels).
-(Note: every susp has a pointer to the manager).
-The function of multiseq_advance() is to push the horizon for
-the logical stop forward. This is done by
-iterating over the array of susps until the target is reached.
-Actually, the array contains pointers to the snd_list_node that
-points to each susp and where the next block will be linked.
-The goal of this loop is to satisfy the original fetch, which
-means we have to push low_water to greater than or equal to the
-target. (Low water is the minimum time of the next sample to
-be returned by any multiseq susp.) This goal will be met unless
-we reach the last logical stop time, in which case we evaluate
-the closure for the next multichannel sound, convert
-everything to add's and let the additions take care of returning
-blocks.
-
-3. The Iteration Loop:
-low_water is the lowest sample count of the next sample
-horizon is the greatest lower bound on the maximum logical stop time
-Iterate over susps until low_water >= target
-(Note: whenever data is fetched for a sound whose logical stop time
-is unknown, update the horizon. If a logical stop time becomes known,
-then test if the final maximum logical stop time is known (by keeping
-a count of how many are still unknown), and if the count goes to zero,
-evaluate the continuation and convert to multiple adds.)
-(Another Note: we may reach the logical stop time and convert to
-multiple adds before the loop terminates, in which case we return
-without finishing the loop. Take care that the caller does the right
-thing to produce a sample block in this case.)
-
-3a. If a block hasn't been prefetched, do it.
-
-3b. While the susp has prefetched a block that ends at or before horizon,
-put the block on the snd_list and prefetch another block.
-
-3c. If the susp hasn't a known logical stop time, set new_horizon to
-the end time of the last sample prefetched in 3b.
-
-3d. If new_horizon == horizon, signal an error, no progress was made.
-
-3d. Set horizon to new_horizon and repeat the loop.
-
-NOTE ON A BUG FIX (1 Jul 95): old code assumed that when a logical stop
-was detected it was at the beginning of the next block, but if logical
-stop is explicit, then it may be way in the future. We could convert
-to adds at this point, but that would force early evaluation of the
-closure, which we'd like to delay (be lazy when possible). Therefore,
-we want to ignore knowledge of a logical stop time until the logical
-stop time falls within the currently known block of samples. By "currently
-known", I mean somewhere in the block referenced by ->s1_ptr and ->s1_cnt.
-
-*/
-
-/* extern LVAL s_stdout; */
-
-void multiseq_convert(multiseq_type ms);
-void multiseq_free(add_susp_type susp);
-sample_block_type multiseq_get_next(sound_type snd, long * cnt);
-void multiseq_print_tree(add_susp_type susp, int n);
-
-
-#define susp_cnt_time(ssp, ms, cnt) (ssp->susp.t0 - ms->t0 + (cnt)/ssp->s1->sr)
-#define susp_time(ssp, ms) susp_cnt_time(ssp, ms, \
- (ssp->susp.current + ssp->s1_cnt))
-#define susp_low_water(ssp, ms) susp_cnt_time(ssp, ms, ssp->susp.current)
-#define susp_log_stop_time(ssp, ms) susp_cnt_time(ssp, ms, ssp->susp.log_stop_cnt)
-
-
-/* multiseq_advance fetches from each channel to advance to target time */
-/*
- * If a channel terminates early, we must be careful: continuing to
- * fetch will return pointers to the zero_block, but this will
- * indicate termination to whoever is fetching from multiseq. We
- * must check the pointers and substitute internal_zero_block to
- * avoid premature termination.
- */
-void multiseq_advance(multiseq_type ms, time_type target)
-{
- int i;
- time_type new_horizon;
- time_type new_low_water;
-
-D nyquist_printf("multiseq_advance: %p->low_water %g, target %g\n",
- ms, ms->low_water, target);
- while (ms->low_water < target - 0.000001) {
- new_horizon = 0.0;
-D nyquist_printf("multiseq_advance loop: target %g low_water %g horizon %g\n",
- target, ms->low_water, ms->horizon);
- /* new_low_water will be a minimum over every
- * channel, so start with a big number */
- new_low_water = target;
- for (i = 0; i < ms->nchans; i++) {
- snd_list_type snd_list = ms->chans[i];
- add_susp_type susp = (add_susp_type) snd_list->u.susp;
- time_type my_hor;
- time_type my_low_water;
-D nyquist_printf("chans[%d]: ", i);
-
- /* fetch up to horizon */
-
- /* see if susp has an unprocessed block (test on susp->s1_ptr
- * is probably not necessary, in fact, it isn't initialized
- * until the first block is fetched, but s1_cnt is
- */
- if (susp->s1_cnt && susp->s1_ptr &&
- susp->s1_ptr == susp->s1_bptr->samples) {
- /* do nothing, unprocessed block already there as a
- * result of the initiating fetch
- */
- } else if (susp->s1_cnt != 0) {
- stdputstr("multiseq_advance: s1_cnt != 0\n");
- EXIT(1); /* this should never happen */
- } else { /* otherwise fetch it */
-D stdputstr("prefetching samples ");
- susp_get_block_samples(s1, s1_bptr, s1_ptr, s1_cnt);
- if (susp->s1_ptr == zero_block->samples) {
- susp->terminate_bits = 1;
- susp->s1_bptr = internal_zero_block;
- susp->s1_ptr = internal_zero_block->samples;
- }
- /* see if we've reached a logical stop
- * (I can't believe this code block is in 3 places -
- * there must be a better way... RBD)
- */
- if (!susp->logical_stop_bits) {
- if (susp->s1->logical_stop_cnt != UNKNOWN) {
- if (susp->susp.current + susp->s1_cnt >=
- susp->s1->logical_stop_cnt) {
- susp->logical_stop_bits = 1;
- susp->susp.log_stop_cnt =
- susp->s1->logical_stop_cnt;
- ms->not_logically_stopped_cnt--;
-D nyquist_printf(
- "snd_make_multiseq: Logical stop reached, not_logically_stopped_cnt %d\n",
- ms->not_logically_stopped_cnt);
- }
- }
- }
- }
-D nyquist_printf(" current %d cnt %d ",
- (int)susp->susp.current, (int)susp->s1_cnt);
-
- /* while the susp has prefetched a block that ends at or
- * before horizon, put the block on the snd_list and
- * prefetch another block
- */
- while (susp_time(susp, ms) < ms->horizon + 0.000001) {
- snd_list->block = susp->s1_bptr;
- snd_list->block_len = (short) susp->s1_cnt;
- susp->susp.current += susp->s1_cnt;
- (susp->s1_bptr->refcnt)++;
- susp->s1_cnt = 0;
-#ifdef MULTISEQ_GC_DEBUG
- nyquist_printf(
- "multiseq: output block %p%s on snd_list %p to chan %d\n",
- susp->s1_bptr,
- (susp->s1_bptr == internal_zero_block ?
- " (INTERNAL ZERO BLOCK)" : ""),
- snd_list, i);
-#endif
- snd_list->u.next = snd_list_create(&(susp->susp));
-#ifdef MULTISEQ_GC_DEBUG
- snd_list_debug(snd_list, "multiseq_advance");
-#endif
- ms->chans[i] = snd_list = snd_list->u.next;
- susp_get_block_samples(s1, s1_bptr, s1_ptr, s1_cnt);
- if (susp->s1_ptr == zero_block->samples) {
- susp->terminate_bits = 1;
- susp->s1_bptr = internal_zero_block;
- susp->s1_ptr = internal_zero_block->samples;
- }
- if (susp->s1_ptr != susp->s1_bptr->samples) {
- stdputstr("bug in multiseq_advance\n");
- EXIT(1);
- }
- /* see if we've reached a logical stop
- * (I can't believe this code block is in 3 places -
- * there must be a better way... RBD)
- */
- if (!susp->logical_stop_bits) {
- if (susp->s1->logical_stop_cnt != UNKNOWN) {
- if (susp->susp.current + susp->s1_cnt >=
- susp->s1->logical_stop_cnt) {
- susp->logical_stop_bits = 1;
- susp->susp.log_stop_cnt =
- susp->s1->logical_stop_cnt;
- ms->not_logically_stopped_cnt--;
-D nyquist_printf(
- "snd_make_multiseq: Logical stop reached, not_logically_stopped_cnt %d\n",
- ms->not_logically_stopped_cnt);
- }
- }
- }
-D nyquist_printf("\n\toutput block, current %d cnt %d ",
- (int)susp->susp.current, (int)susp->s1_cnt);
- }
- if (!susp->logical_stop_bits)
- my_hor = susp_time(susp, ms);
- else my_hor = susp_log_stop_time(susp, ms);
- if (new_horizon < my_hor) {
-D nyquist_printf("new_horizon %g ", my_hor);
- new_horizon = my_hor;
- }
- if (ms->not_logically_stopped_cnt == 0) {
- ms->horizon = new_horizon; /* pass t0 to multiseq_convert */
-D stdputstr("Calling multiseq_convert\n");
- multiseq_convert(ms);
- return;
- }
- my_low_water = susp_low_water(susp, ms);
- if (my_low_water < new_low_water) {
- new_low_water = my_low_water;
- }
-D stdputstr("\n");
- }
- ms->low_water = new_low_water;
- if (new_horizon <= ms->horizon) {
- stdputstr("no progress in multiseq_advance\n");
- EXIT(1);
- } else {
- ms->horizon = new_horizon;
- }
- }
-}
-
-
-/* multiseq_convert -- eval closure and convert to adds */
-/**/
-void multiseq_convert(multiseq_type ms)
-{
- LVAL result, new;
- sound_type snd;
- time_type now = ms->t0 + ms->horizon;
- int i;
- long size;
-
- xlsave1(result);
- result = xleval(cons(ms->closure, consa(cvflonum(now))));
- if (exttypep(result, a_sound)) {
- snd = sound_copy(getsound(result));
- result = newvector(ms->nchans);
- setelement(result, 0, cvsound(snd));
- for (i = 1; i < ms->nchans; i++) {
- setelement(result, i, cvsound(sound_zero(now, ms->sr)));
- }
- } else if (vectorp(result)) {
- if (getsize(result) > ms->nchans) {
- xlerror("too few channels", result);
- } else if (getsize(result) < ms->nchans) {
- new = newvector(ms->nchans);
- for (i = 1; i < getsize(result); i++) {
- setelement(new, i, getelement(result, i));
- }
- for (i = getsize(result); i < ms->nchans; i++) {
- setelement(new, i, cvsound(sound_zero(now, ms->sr)));
- }
- result = new;
- }
- } else xlerror("closure did not return a sound", result);
-
- /* now result holds a vector of nchans, insert them into add_susp's */
- for (i = 0; i < ms->nchans; i++) {
- snd_list_type snd_list = ms->chans[i];
- add_susp_type susp = (add_susp_type) snd_list->u.susp;
- long sother_start;
-
- /* remove backpointer to ms */
- susp->multiseq = NULL;
- susp->susp.print_tree = add_print_tree;
- susp->susp.free = add_free;
- susp->susp.mark = add_mark;
-
- susp->s2 = sound_copy(getsound(getelement(result, i)));
- if (susp->s1->sr != susp->s2->sr)
- xlfail("multiseq: sample rates must match");
-
- if (susp->s2->scale != 1.0) {
- susp->s2 = snd_make_normalize(susp->s2);
- }
-
- sother_start = ROUND((susp->s2->t0 - susp->susp.t0) * susp->s2->sr);
-D nyquist_printf("sother_start computed for %p: %d\n",
- susp, (int)sother_start);
- if (sother_start > susp->susp.current) {
-D nyquist_printf("susp %p using add_s1_nn_fetch\n", susp);
- susp->susp.fetch = add_s1_nn_fetch;
- susp->susp.name = "multiseq:add_s1_nn_fetch";
- } else if (susp->terminate_bits) { /* s1 is done, just get s2 now */
- sound_unref(susp->s1);
- susp->s1 = NULL;
-D nyquist_printf("susp %p using add_s2_nn_fetch\n", susp);
- susp->susp.fetch = add_s2_nn_fetch;
- susp->susp.name = "multiseq:add_s2_nn_fetch";
- } else {
-D nyquist_printf("susp %p using add_s1_s2_nn_fetch\n", susp);
- susp->susp.fetch = add_s1_s2_nn_fetch;
- susp->susp.name = "multiseq:add_s1_s2_nn_fetch";
- }
-
- /* fix up logical stop info */
- /* BUG: what if s2 is already stopped? */
- susp->susp.log_stop_cnt = UNKNOWN;
- susp->logically_stopped = false;
-
- /* we need to compute at least 1 sample
- * (at this point we don't really know if we've
- * computed anything or not, so to be safe, do it.
- */
- snd_list->u.next = snd_list_create(&(susp->susp));
- snd_list->block = internal_zero_block;
- (*(susp->susp.fetch))(susp, snd_list);
- }
-
- /* now free the multiseq struct */
- size = sizeof(snd_list_type) * ms->nchans;
- ffree_generic(ms->chans, size, "multiseq_convert");
- ffree_generic(ms, sizeof(multiseq_node), "multiseq_convert(2)");
-
- ms->closure = NIL; /* allow garbage collection now */
- xlpop();
-}
-
-
-/* multiseq_fetch returns blocks of s1 until the logical stop time of s1's */
-/*
- * Fetch routines (in particular, the add_*_fetch routines that will
- * be installed on this susp at a later time) expect to be called with
- * a new snd_list installed and ready for a new block. However, since
- * we are going to call multiseq_advance to pull blocks out of susps
- * that will not be set up with a fresh snd_list in this way, it is
- * simpler to dispose of the preallocated snd_list so that all susps
- * look alike to multiseq_advance. Of course, multiseq_advance will
- * redo the work of allocating a snd_list.
- *
- * If a channel terminates early, we must be careful: continuing to
- * fetch will return pointers to the zero_block, but this will
- * indicate termination to whoever is fetching from multiseq. We
- * must check the pointers and substitute internal_zero_block to
- * avoid premature termination.
- */
-void multiseq_fetch(susp, snd_list)
- register add_susp_type susp;
- snd_list_type snd_list;
-{
- time_type block_end_time;
-
- /* undo the preallocation of a snd_list_node */
- /* we can bypass the reference counting code because we
- * know that this snd_list was just allocated and has no
- * other references
- */
-#ifdef MULTISEQ_GC_DEBUG
- if (snd_list_to_watch == snd_list->u.next) {
- nyquist_printf("multiseq_fetch: backing out snd_list_to_watch from %p\n",
- snd_list_to_watch);
- watch_snd_list(snd_list);
- }
-#endif
- ffree_snd_list(snd_list->u.next, "multiseq_fetch");
- snd_list->u.susp = (snd_susp_type) susp;
- snd_list->block = NULL;
-
-D nyquist_printf("multiseq_fetch called: susp %p s1_cnt %d\n",
- susp, (int)susp->s1_cnt);
-
- /* first compute how many samples we can generate from s1: */
- if (susp->s1_cnt == 0) {
- susp_get_block_samples(s1, s1_bptr, s1_ptr, s1_cnt);
- if (susp->s1_ptr == zero_block->samples) {
- susp->terminate_bits = 1; /* mark s1 as terminated */
- susp->s1_bptr = internal_zero_block;
- susp->s1_ptr = internal_zero_block->samples;
- }
- /* see if we've reached a logical stop
- * (I can't believe this code block is in 3 places -
- * there must be a better way... RBD)
- */
- if (!susp->logical_stop_bits) {
- if (susp->s1->logical_stop_cnt != UNKNOWN) {
- if (susp->susp.current + susp->s1_cnt >=
- susp->s1->logical_stop_cnt) {
- susp->logical_stop_bits = 1;
- susp->susp.log_stop_cnt =
- susp->s1->logical_stop_cnt;
- susp->multiseq->not_logically_stopped_cnt--;
-D nyquist_printf(
- "snd_make_multiseq: Logical stop reached, not_logically_stopped_cnt %d\n",
- susp->multiseq->not_logically_stopped_cnt);
- }
- }
- }
- }
- /* s1_cnt has the number of samples we can return */
-
- /* now compute time of the last sample */
- block_end_time = susp_time(susp, susp->multiseq);
-D nyquist_printf("block_end_time of %p: %g\n", susp, block_end_time);
- multiseq_advance(susp->multiseq, block_end_time);
-}
-
-
-/* multiseq_mark -- mark routine for multiseq susps */
-/**/
-void multiseq_mark(add_susp_type susp)
-{
- int i;
- multiseq_type ms = susp->multiseq;
-D nyquist_printf("multiseq_mark(%p)\n", susp);
-/* nyquist_printf("marking s1@%p in add@%p\n", susp->s1, susp);*/
- if (ms->closure) mark(ms->closure);
-
- /* mark s1 of each susp in multiseq */
- for (i = 0; i < ms->nchans; i++) {
- snd_list_type snd_list = ms->chans[i];
- if (snd_list) {
- while (snd_list->block != NULL) {
- if (snd_list == zero_snd_list) break;
- snd_list = snd_list->u.next;
- }
- sound_xlmark(((add_susp_type) snd_list->u.susp)->s1);
- }
- }
-}
-
-
-/* snd_make_multiseq -- make a multiseq from an array and a closure */
-/*
- * NOTE: the resulting array of sounds will not use the normal
- * SND_get_first and SND_get_next routines to fetch new blocks
- * because these extend the snd_list of the sound immediately,
- * and this would confuse multiseq_advance() which has to extend
- * multiple snd_lists synchronously. So, we use multiseq_get_next()
- * instead.
- */
-LVAL snd_make_multiseq(LVAL s1, LVAL closure)
-{
- multiseq_type ms;
- int i;
- LVAL result;
-
- xlsave1(result);
-
- /* allocate multiseq */
- falloc_generic(ms, multiseq_node, "snd_make_multiseq");
-
- /* install its array of snd_list_type */
- if (!vectorp(s1) || getsize(s1) == 0) {
- ffree_generic(ms, sizeof(multiseq_node), "snd_make_multiseq");
- xlerror("bad argument type", s1);
- }
- ms->nchans = getsize(s1);
- ms->closure = closure;
- ms->not_logically_stopped_cnt = 0;
- ms->low_water = 0.0;
- ms->horizon = 0.0;
- falloc_generic_n(ms->chans, snd_list_type, ms->nchans,
- "snd_make_multiseq");
-
- /* allocate sounds to return */
- result = newvector(ms->nchans);
-
- /* ms->t0 will be the minimum of all t0's in array */
- ms->t0 = (getsound(getelement(s1, 0)))->t0;
-
- /* create sounds to return */
- for (i = 0; i < ms->nchans; i++) {
- add_susp_type susp;
- sound_type snd;
- falloc_generic(susp, add_susp_node, "snd_make_multiseq(add_susp)");
- susp->s1 = sound_copy(getsound(getelement(s1, i)));
- /* we used to only incr this if lsc was UNKNOWN, but
- that's wrong. Should move this out of the loop now.
- */
- if (susp->s1->scale != 1.0) {
- /* stdputstr("normalizing first sound in a seq\n"); */
- susp->s1 = snd_make_normalize(susp->s1);
- }
-
- ms->not_logically_stopped_cnt++;
-D nyquist_printf("snd_make_multiseq: not_logically_stopped_cnt %d\n",
- ms->not_logically_stopped_cnt);
- susp->s1_cnt = 0;
- susp->s2 = NULL;
- susp->s2_cnt = 0;
- susp->susp.fetch = multiseq_fetch;
- susp->susp.free = multiseq_free;
- susp->susp.sr = susp->s1->sr;
- susp->susp.mark = multiseq_mark;
- susp->susp.print_tree = multiseq_print_tree;
- susp->susp.name = "multiseq";
- susp->susp.t0 = susp->s1->t0;
- susp->terminate_bits = 0; /* bits for s1 and s2 termination */
- susp->terminate_cnt = UNKNOWN;
- susp->logical_stop_bits = 0; /* bits for s1 and s2 log. stop */
- susp->susp.log_stop_cnt = UNKNOWN;
- susp->logically_stopped = false;
- susp->started = false;
- susp->susp.current = 0;
- susp->multiseq = ms;
- snd = sound_create((snd_susp_type) susp, susp->s1->t0, susp->susp.sr,
- 1.0);
-#ifdef GC_DEBUG
- if (snd == sound_to_watch) {
- nyquist_printf("watched sound is channel %d\n", i);
- }
-#endif
- setelement(result, i, cvsound(snd));
- if (snd->list->block || !snd->list->u.susp) {
- stdputstr("data inconsistency in snd_make_seq\n");
- EXIT(1);
- }
- ms->chans[i] = snd->list;
-D nyquist_printf("ms->chans[%d] = %p, %p->u.susp = %p\n",
- i, snd->list, snd->list, snd->list->u.susp);
- ms->t0 = MIN(ms->t0, susp->s1->t0);
- ms->sr = susp->s1->sr; /* assume all samp rates are equal */
-D nyquist_printf("Multiseq sound[%d]: \n", i);
-D sound_print_tree(susp->s1);
- }
-D nyquist_printf("ms->t0 == %g\n", ms->t0);
- xlpop();
- return result;
-}
-
-
-/* note: snd_multiseq is a noop, just call snd_make_multiseq */
-
-void multiseq_free(add_susp_type susp)
-{
- int i;
- multiseq_type ms = susp->multiseq;
- boolean dead = true;
- sound_unref(susp->s1);
- sound_unref(susp->s2); /* probably not necessary */
- /* tricky part: remove pointer from ms->chans */
- for (i = 0; i < ms->nchans; i++) {
- if (ms->chans[i]) {
- dead = false;
- /*
- * note that ms->chans is still a valid
- * pointer (see snd_list_unref)
- */
- if (ms->chans[i]->u.susp == (snd_susp_type) susp) {
- ms->chans[i] = NULL;
-D nyquist_printf("susp %p freed, ms@%p->chans[%d] = NULL\n",
- susp, ms, i);
- }
- }
- }
-
- /* if last element is freed, free the multiseq struct too */
- if (dead) {
- i = sizeof(snd_list_type) * ms->nchans;
- ffree_generic(ms->chans, i, "multiseq_free");
- ffree_generic(ms, sizeof(multiseq_node), "multiseq_free(2)");
- }
-
- susp->multiseq = NULL; /* just to be safe */
- ffree_generic(susp, sizeof(add_susp_node), "multiseq_free(3)");
-}
-
-
-void multiseq_print_tree(add_susp_type susp, int n)
-{
- int i;
-
- indent(n);
- if (!susp->multiseq) {
- xlfail("internal error: missing multiseq structure");
- }
- nyquist_printf("multiseq@%p = [ ", susp->multiseq);
- for (i = 0; i < susp->multiseq->nchans; i++) {
- if (susp->multiseq->chans[i]) {
- nyquist_printf("%p", susp->multiseq->chans[i]->u.susp);
- } else {
- stdputstr("NULL");
- }
- }
-
- indent(n);
- stdputstr("s1:");
- sound_print_tree_1(susp->s1, n);
-
- indent(n);
- stdputstr("closure:");
- stdprint(susp->multiseq->closure);
-
- indent(n);
-}
-
-
diff --git a/lib-src/libnyquist/nyqsrc/multiseq.h b/lib-src/libnyquist/nyqsrc/multiseq.h
deleted file mode 100644
index 921ba24..0000000
--- a/lib-src/libnyquist/nyqsrc/multiseq.h
+++ /dev/null
@@ -1,19 +0,0 @@
-/* this typedef goes here because it is needed by add */
-
-typedef struct multiseq_struct {
- int not_logically_stopped_cnt;
- int nchans;
- /* greatest lower bound on logical stop time: */
- time_type horizon;
- /* lowest time corresp to sample count on a snd_list: */
- time_type low_water;
- snd_list_type *chans;
- time_type t0;
- rate_type sr;
- LVAL closure;
-} multiseq_node, *multiseq_type;
-
-
-
-LVAL snd_make_multiseq(LVAL s1, LVAL closure);
- /* LISP: (SND-MULTISEQ ANY ANY) */
diff --git a/lib-src/libnyquist/nyqsrc/nfilterkit.c b/lib-src/libnyquist/nyqsrc/nfilterkit.c
deleted file mode 100644
index 00e7f65..0000000
--- a/lib-src/libnyquist/nyqsrc/nfilterkit.c
+++ /dev/null
@@ -1,199 +0,0 @@
-/*
- * nfilterkit.c - windowed low-pass filter support.
- * adapted from filterkit.c, by Julius Smith et al., CCRMA, Stanford University
- *
-
-/*
- * FilterUp() - Applies a filter to a given sample when up-converting.
- * FilterUD() - Applies a filter to a given sample when up- or down-
- * converting.
- */
-
-#include "soundstruct.h"
-#include "nresample.h"
-#include "nfilterkit.h"
-
-/* #include <libc.h> */
-#include <stdio.h>
-#include <math.h>
-#include <string.h>
-
-
-#include <math.h>
-
-fast_float FilterUp(float Imp[], float ImpD[],
- UHWORD Nwing, BOOL Interp,
- float *Xp, double Ph, HWORD Inc)
-{
- float *Hp, *Hdp = NULL, *End;
- fast_float a = 0;
- fast_float v, t;
- double exact_index = Ph * Npc;
- long index = exact_index; /* convert fraction to filter index */
-
-/* printf("FilterUp, Inc %d, phase %g\n", Inc, Ph); */
- v=0;
- Hp = &Imp[index];
- End = &Imp[Nwing];
- if (Interp) {
- Hdp = &ImpD[index];
- a = exact_index - index;
-/* printf("fraction %g\n", a); */
- }
- if (Inc == 1) /* If doing right wing... */
- { /* ...drop extra coeff, so when Ph is */
- End--; /* 0.5, we don't do too many mult's */
- if (Ph == 0) /* If the phase is zero... */
- { /* ...then we've already skipped the */
- printf("Ph == 0\n");
- Hp += Npc; /* first sample, so we must also */
- Hdp += Npc; /* skip ahead in Imp[] and ImpD[] */
- }
- }
- if (Interp) {
- while (Hp < End) {
- t = *Hp; /* Get filter coeff */
- /* t scaled by 2^(16 + NLpScl)/LpScl */
-/* printf("coeff %g ", t); */
- t += *Hdp *a; /* t is now interp'd filter coeff */
-/* printf("interp'd coeff %g ", t);*/
- Hdp += Npc; /* Filter coeff differences step */
-/* printf("input sample %g ", *Xp); */
- t *= *Xp; /* Mult coeff by input sample */
- /* t scaled by 2^(16 + NLpScl)/LpScl */
-/* printf("product %g\n", t); */
- v += t; /* The filter output */
- Hp += Npc; /* Filter coeff step */
- Xp += Inc; /* Input signal step. NO CHECK ON BOUNDS */
- }
- } else {
- while (Hp < End) {
- t = *Hp; /* Get filter coeff */
- t *= *Xp; /* Mult coeff by input sample */
- v += t; /* The filter output */
- Hp += Npc; /* Filter coeff step */
- Xp += Inc; /* Input signal step. NO CHECK ON BOUNDS */
- }
- }
-/* printf("FilterUp, Inc %d returns %g\n", Inc, v); */
- return(v);
-}
-
-fast_float FilterUD( float Imp[], float ImpD[],
- UHWORD Nwing, BOOL Interp,
- float *Xp, double Ph, HWORD Inc, double dhb)
-{
- double a;
- float *Hp, *Hdp, *End;
- fast_float v, t;
- double Ho;
-
- v=0;
- Ho = Ph*dhb;
- End = &Imp[Nwing];
- if (Inc == 1) /* If doing right wing... */
- { /* ...drop extra coeff, so when Ph is */
- End--; /* 0.5, we don't do too many mult's */
- if (Ph == 0) /* If the phase is zero... */
- Ho += dhb; /* ...then we've already skipped the */
- } /* first sample, so we must also */
- /* skip ahead in Imp[] and ImpD[] */
- if (Interp) {
- long HoIndex = Ho;
- while ((Hp = &Imp[HoIndex]) < End) {
- t = *Hp; /* Get IR sample */
- Hdp = &ImpD[HoIndex]; /* get interp (lower Na) bits from diff table*/
- a = Ho - HoIndex; /* a is logically between 0 and 1 */
- t += *Hdp * a; /* t is now interp'd filter coeff */
- t *= *Xp; /* Mult coeff by input sample */
- v += t; /* The filter output */
- Ho += dhb; /* IR step */
- Xp += Inc; /* Input signal step. NO CHECK ON BOUNDS */
- HoIndex = Ho;
- }
- } else {
- long HoIndex = Ho;
- while ((Hp = &Imp[HoIndex]) < End) {
- t = *Hp; /* Get IR sample */
- t *= *Xp; /* Mult coeff by input sample */
- v += t; /* The filter output */
- Ho += dhb; /* IR step */
- Xp += Inc; /* Input signal step. NO CHECK ON BOUNDS */
- HoIndex = Ho;
- }
- }
- return(v);
-}
-
-/* Sampling rate up-conversion only subroutine;
- * Slightly faster than down-conversion;
- */
-static int SrcUp(float X[], float Y[], double factor, double *Time,
- UHWORD Nx, UHWORD Nwing, double LpScl,
- float Imp[], float ImpD[], BOOL Interp)
-{
- mem_float *Xp, *Ystart;
- fast_float v;
-
- double dt; /* Step through input signal */
- double endTime; /* When Time reaches EndTime, return to user */
-
-/* printf("SrcUp: interpFilt %d\n", Interp);*/
-
- dt = 1.0/factor; /* Output sampling period */
-
- Ystart = Y;
- endTime = *Time + Nx;
- while (*Time < endTime)
- {
- long iTime = *Time;
- Xp = &X[iTime]; /* Ptr to current input sample */
- /* Perform left-wing inner product */
- v = FilterUp(Imp, ImpD, Nwing, Interp, Xp, *Time - iTime, -1);
- /* Perform right-wing inner product */
- v += FilterUp(Imp, ImpD, Nwing, Interp, Xp+1,
- (1 + iTime) - *Time, 1);
- v *= LpScl; /* Normalize for unity filter gain */
-/* printf("SrcUp output sample %g\n", v); */
- *Y++ = v;
- *Time += dt; /* Move to next sample by time increment */
- }
- return (Y - Ystart); /* Return the number of output samples */
-}
-
-
-/* Sampling rate conversion subroutine */
-
-static int SrcUD(float X[], float Y[], double factor, double *Time,
- UHWORD Nx, UHWORD Nwing, double LpScl,
- float Imp[], float ImpD[], BOOL Interp)
-{
- mem_float *Xp, *Ystart;
- fast_float v;
-
- double dh; /* Step through filter impulse response */
- double dt; /* Step through input signal */
- double endTime; /* When Time reaches EndTime, return to user */
-
- dt = 1.0/factor; /* Output sampling period */
-
- dh = MIN(Npc, factor*Npc); /* Filter sampling period */
-
- Ystart = Y;
- endTime = *Time + Nx;
- while (*Time < endTime)
- {
- long iTime = *Time;
- Xp = &X[iTime]; /* Ptr to current input sample */
- v = FilterUD(Imp, ImpD, Nwing, Interp, Xp, *Time - iTime,
- -1, dh); /* Perform left-wing inner product */
- v += FilterUD(Imp, ImpD, Nwing, Interp, Xp+1, (1 + iTime) - *Time,
- 1, dh); /* Perform right-wing inner product */
- v *= LpScl; /* Normalize for unity filter gain */
- *Y++ = v;
- *Time += dt; /* Move to next sample by time increment */
- }
- return (Y - Ystart); /* Return the number of output samples */
-}
-
-
diff --git a/lib-src/libnyquist/nyqsrc/nfilterkit.h b/lib-src/libnyquist/nyqsrc/nfilterkit.h
deleted file mode 100644
index b7343e5..0000000
--- a/lib-src/libnyquist/nyqsrc/nfilterkit.h
+++ /dev/null
@@ -1,80 +0,0 @@
-/* nfilterkit.h -- header for adapted version of filterkit */
-
-typedef char BOOL;
-typedef short HWORD;
-typedef unsigned short UHWORD;
-typedef int WORD;
-typedef unsigned int UWORD;
-
-#define MAX_HWORD (32767)
-#define MIN_HWORD (-32768)
-
-#ifdef DEBUG
-#define INLINE
-#else DEBUG
-/* #define INLINE inline */
-#define INLINE
-#endif DEBUG
-
-/*
- * FilterUp() - Applies a filter to a given sample when up-converting.
- * FilterUD() - Applies a filter to a given sample when up- or down-
- */
-
-/* Conversion constants */
-#define Nhc 8
-#define Np (Nhc+Na)
-
-/* Description of constants:
- *
- * Npc - is the number of look-up values available for the lowpass filter
- * between the beginning of its impulse response and the "cutoff time"
- * of the filter. The cutoff time is defined as the reciprocal of the
- * lowpass-filter cut off frequence in Hz. For example, if the
- * lowpass filter were a sinc function, Npc would be the index of the
- * impulse-response lookup-table corresponding to the first zero-
- * crossing of the sinc function. (The inverse first zero-crossing
- * time of a sinc function equals its nominal cutoff frequency in Hz.)
- * Npc must be a power of 2 due to the details of the current
- * implementation. The default value of 512 is sufficiently high that
- * using linear interpolation to fill in between the table entries
- * gives approximately 16-bit accuracy in filter coefficients.
- *
- * Nhc - is log base 2 of Npc.
- *
- * Na - is the number of bits devoted to linear interpolation of the
- * filter coefficients.
- *
- * Np - is Na + Nhc, the number of bits to the right of the binary point
- * in the integer "time" variable. To the left of the point, it indexes
- * the input array (X), and to the right, it is interpreted as a number
- * between 0 and 1 sample of the input X. Np must be less than 16 in
- * this implementation.
- *
- * Nh - is the number of bits in the filter coefficients. The sum of Nh and
- * the number of bits in the input data (typically 16) cannot exceed 32.
- * Thus Nh should be 16. The largest filter coefficient should nearly
- * fill 16 bits (32767).
- *
- * Nb - is the number of bits in the input data. The sum of Nb and Nh cannot
- * exceed 32.
- *
- * Nhxn - is the number of bits to right shift after multiplying each input
- * sample times a filter coefficient. It can be as great as Nh and as
- * small as 0. Nhxn = Nh-2 gives 2 guard bits in the multiply-add
- * accumulation. If Nhxn=0, the accumulation will soon overflow 32 bits.
- *
- * Nhg - is the number of guard bits in mpy-add accumulation (equal to Nh-Nhxn)
- *
- * NLpScl - is the number of bits allocated to the unity-gain normalization
- * factor. The output of the lowpass filter is multiplied by LpScl and
- * then right-shifted NLpScl bits. To avoid overflow, we must have
- * Nb+Nhg+NLpScl < 32.
- */
-
-
-fast_float FilterUp(mem_float Imp[], mem_float ImpD[], UHWORD Nwing, BOOL Interp,
- mem_float *Xp, double Ph, HWORD Inc);
-
-fast_float FilterUD(mem_float Imp[], mem_float ImpD[], UHWORD Nwing, BOOL Interp,
- mem_float *Xp, double Ph, HWORD Inc, double dhb);
diff --git a/lib-src/libnyquist/nyqsrc/probe.c b/lib-src/libnyquist/nyqsrc/probe.c
deleted file mode 100644
index 9a04b4a..0000000
--- a/lib-src/libnyquist/nyqsrc/probe.c
+++ /dev/null
@@ -1,38 +0,0 @@
-/* probe.c -- used to test resampling */
-
-#include "stdio.h"
-#include "string.h"
-#include "xlisp.h"
-
-static FILE* probefile = NULL;
-static long line_num = 0;
-
-void probe_init(int readflag)
-{
- line_num = 0;
- probefile = fopen("probe.log", (readflag ? "r" : "w"));
-}
-
-
-double probe(char *s, double x)
-{
- fprintf(probefile, "%s %g\n", s, x);
- return x;
-}
-
-
-double probe2(char *s, double x)
-{
- char buf1[100], buf2[100];
- sprintf(buf1, "%s %g\n", s, x);
- fgets(buf2, 100, probefile);
- line_num++;
- if (strcmp(buf1, buf2)) {
- nyquist_printf("probe2: difference at line %ld: \n", line_num);
- nyquist_printf("correct: %s", buf2);
- nyquist_printf("actual: %s", buf1);
- abort();
- }
- return x;
-}
-
diff --git a/lib-src/libnyquist/nyqsrc/probe.h b/lib-src/libnyquist/nyqsrc/probe.h
deleted file mode 100644
index ca727d6..0000000
--- a/lib-src/libnyquist/nyqsrc/probe.h
+++ /dev/null
@@ -1,6 +0,0 @@
-/* probe.h -- used to test resampling */
-
-void probe_init(int readflag);
-double probe(char *s, double x);
-double probe2(char *s, double x);
-
diff --git a/lib-src/libnyquist/nyqsrc/resamp.c b/lib-src/libnyquist/nyqsrc/resamp.c
deleted file mode 100644
index f3714c7..0000000
--- a/lib-src/libnyquist/nyqsrc/resamp.c
+++ /dev/null
@@ -1,375 +0,0 @@
-/* resamp.c -- resample signal using sinc interpolation */
-
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm min->MIN, max->MAX
- */
-
-
-
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "resamp.h"
-#include "fresample.h"
-#include "ffilterkit.h"
-#include "fsmallfilter.h"
-
-/* Algorithm:
- To resample, we convolve a sinc function with the input stream at
-times corresponding to the output samples. This requires a sliding
-window on the input samples. Since samples are accessed a block at a
-time, the places where the sliding window would span two blocks are
-too tricky for me. Instead of trying to manage the breaks across
-blocks, I copy the blocks into another buffer (called X). When the
-sliding window reaches the end of X, the samples at the end of X
-are copied to the beginning of X, the remainder of X is filled with
-new samples, and the computation continues. The trickiest part of
-all this is keeping all the pointers and phase accumulators correct
-when the sliding window is relocated from the end of X to the
-beginning.
- Although there are different ways to do this, I decided that the
-output would always go directly to a Nyquist sample block, so the
-resampling routines (SrcUp and SrcUD) are always called upon to
-compute max_sample_block_len samples (except that a partial block
-may be computed when the input sound terminates).
- To compute max_sample_block_len samples, the input buffer needs:
-
- - max_sample_block_len/factor samples, where factor is the ratio of
- the new sample rate to the old one. I.e. if upsampling by a factor
- of 2, the input buffer needs half the samples of the output block
- size.
-
- - additional samples the size of the sliding window. Since the
- output is taken from the center of the window, we can't take
- samples from the first or last windowsize/2 samples.
-
- - to simplify rounding, we throw in some extra samples. This costs
- only a bit of space and an extra copy for each spare sample.
-
- The window size is determined by the particular filter used and
-by factor (the sample rate ratio). The filter size is Nmult, the
-number of filter coefficients. When upsampling, this is the window
-size (the filter acts as a reconstruction filter for the additional
-samples). When downsampling, the filter is stretched by 1/factor
-(the filter acts as an anti-aliasing low-pass filter).
-
-*/
-
-void resample_free();
-
-typedef struct resample_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type s;
- long s_cnt;
- sample_block_values_type s_ptr;
- float *X;
- long Xsize;
- double Time; /* location (offset) in X of next output sample */
- double LpScl;
- double factor;
- sample_type *Imp;
- sample_type *ImpD;
- boolean interpFilt;
- int Nmult;
- int Nwing;
- int Xp; /* first free location at end of X */
- int Xoff; /* number of extra samples at beginning and end of X */
-} resample_susp_node, *resample_susp_type;
-
-/* Sampling rate up-conversion only subroutine;
- * Slightly faster than down-conversion;
- */
-static int SrcUp(float X[], float Y[], double factor, double *Time,
- int Nx, int Nwing, double LpScl,
- float Imp[], float ImpD[], boolean Interp)
-{
- mem_float *Xp, *Ystart;
- fast_float v;
-
- double dt; /* Step through input signal */
- mem_float *Yend; /* When Y reaches Yend, return to user */
-
-/* nyquist_printf("SrcUp: interpFilt %d\n", Interp);*/
-
- dt = 1.0/factor; /* Output sampling period */
-
- Ystart = Y;
- Yend = Y + Nx;
- while (Y < Yend) {
- long iTime = (long) *Time;
- Xp = &X[iTime]; /* Ptr to current input sample */
- /* Perform left-wing inner product */
- v = FilterUp(Imp, ImpD, Nwing, Interp, Xp, *Time - iTime, -1);
- /* Perform right-wing inner product */
- v += FilterUp(Imp, ImpD, Nwing, Interp, Xp+1,
- (1 + iTime) - *Time, 1);
- v *= LpScl; /* Normalize for unity filter gain */
-/* nyquist_printf("SrcUp output sample %g\n", v); */
- *Y++ = (float) v;
- *Time += dt; /* Move to next sample by time increment */
- }
- return (Y - Ystart); /* Return the number of output samples */
-}
-
-
-/* Sampling rate conversion subroutine */
-
-static int SrcUD(float X[], float Y[], double factor, double *Time,
- int Nx, int Nwing, double LpScl,
- float Imp[], float ImpD[], boolean Interp)
-{
- mem_float *Xp, *Ystart;
- fast_float v;
-
- double dh; /* Step through filter impulse response */
- double dt; /* Step through input signal */
- mem_float *Yend; /* When Y reaches Yend, return to user */
-
- dt = 1.0/factor; /* Output sampling period */
-
- dh = MIN(Npc, factor*Npc); /* Filter sampling period */
-
- Ystart = Y;
- Yend = Y + Nx;
- while (Y < Yend) {
- long iTime = (long) *Time;
- Xp = &X[iTime]; /* Ptr to current input sample */
- v = FilterUD(Imp, ImpD, Nwing, Interp, Xp, *Time - iTime,
- -1, dh); /* Perform left-wing inner product */
- v += FilterUD(Imp, ImpD, Nwing, Interp, Xp+1, (1 + iTime) - *Time,
- 1, dh); /* Perform right-wing inner product */
- v *= LpScl; /* Normalize for unity filter gain */
- *Y++ = (float) v;
- *Time += dt; /* Move to next sample by time increment */
- }
- return (Y - Ystart); /* Return the number of output samples */
-}
-
-
-void resample__fetch(register resample_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- int Nout;
- sample_block_type out;
- /* note that in this fetch routine, out_ptr is used to remember where
- * to put the "real" output, while X_ptr_reg is used in the inner
- * loop that copies input samples into X, a buffer
- */
- register sample_block_values_type out_ptr;
- register sample_block_values_type X_ptr_reg;
-
- register sample_type *s_ptr_reg;
- falloc_sample_block(out, "resample__fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
-/* Algorithm:
- Fetch samples until X (the buffered input) is full. X stores enough
-contiguous samples that a sliding window convolving with the filter
-coefficients can output a full block without sliding beyond the range
-of X. Every time we reenter resample__fetch, we take the remaining
-samples at the end of X, shift them to the beginning, and refill.
- After X is full, call on SrcUp or SrcUD to compute an output block.
- The first time resample__fetch is called, the fill pointer Xp will
-point near the beginning of X, indicating that no previously read
-samples need to be shifted from the end of X to the beginning.
-*/
-
- /* first, shift samples from end of X to beginning if necessary */
- if (susp->Xp > 2 * susp->Xoff) {
- int i;
- int shiftcount = (long) (susp->Time) - susp->Xoff;
-
-/* nyquist_printf("shift %d from %d to %lx\n", susp->Xsize + susp->Xoff - susp->Xp, susp->Xp - susp->Xoff, susp->X); */
- for (i = 0; i < susp->Xp - shiftcount; i++) {
- susp->X[i] = susp->X[i + shiftcount];
-/* if (susp->X[i] == 0.0) nyquist_printf("shifted zero to X[%d]\n", i);*/
- }
- susp->Time -= shiftcount;
- susp->Xp -= shiftcount;
- }
-
- while (susp->Xp < susp->Xsize) { /* outer loop */
-
- /* read samples from susp->s into X */
-
- togo = susp->Xsize - susp->Xp;
- /* don't run past the s input sample block: */
- susp_check_term_log_samples(s, s_ptr, s_cnt);
- togo = MIN(togo, susp->s_cnt);
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped &&
- susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt -
- (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- s_ptr_reg = susp->s_ptr;
- X_ptr_reg = &(susp->X[susp->Xp]);
-
-/* nyquist_printf("fetch %d samples, offset %d\n", togo, susp->Xp);*/
-
- if (n) do { /* the inner sample computation loop */
-/* if (*s_ptr_reg == 0.0) nyquist_printf("fetched zero to X[%d]\n", X_ptr_reg - susp->X); */
- *X_ptr_reg++ = *s_ptr_reg++;
- } while (--n); /* inner loop */
-
- /* using s_ptr_reg is a bad idea on RS/6000: */
- susp->s_ptr += togo;
- susp_took(s_cnt, togo);
- susp->Xp += togo;
- } /* outer loop */
-
- /* second, compute samples to output, this is done in one pass because
- * we have enough data in X
- */
-
- /* don't run past terminate time */
- togo = max_sample_block_len;
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + max_sample_block_len) {
- togo = susp->terminate_cnt - susp->susp.current;
- }
- if (togo == 0) {
-/* stdputstr("resamp calling snd_list_terminate\n"); */
- snd_list_terminate(snd_list);
- } else {
- if (susp->factor >= 1) { /* SrcUp() is faster if we can use it */
- Nout = SrcUp(susp->X, out_ptr, susp->factor, &susp->Time,
- togo, susp->Nwing, susp->LpScl, susp->Imp,
- susp->ImpD, susp->interpFilt);
- } else {
- Nout = SrcUD(susp->X, out_ptr, susp->factor, &susp->Time,
- togo, susp->Nwing, susp->LpScl, susp->Imp,
- susp->ImpD, susp->interpFilt);
- }
- snd_list->block_len = togo;
- susp->susp.current += togo;
- }
-#ifdef RESAMPTEST
- for (n = 0; n < snd_list->block_len; n++) {
- if (out->samples[n] == 0.0) {
- nyquist_printf("resamp: zero at samples[%d]\n", n);
- }
- }
-#endif
-/*
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
- */
-} /* resample__fetch */
-
-
-void resample_mark(resample_susp_type susp)
-{
- sound_xlmark(susp->s);
-}
-
-
-void resample_free(resample_susp_type susp)
-{
- sound_unref(susp->s);
- free(susp->X);
- ffree_generic(susp, sizeof(resample_susp_node), "resample_free");
-}
-
-
-void resample_print_tree(resample_susp_type susp, int n)
-{
- indent(n);
- stdputstr("s:");
- sound_print_tree_1(susp->s, n);
-}
-
-
-sound_type snd_make_resample(sound_type s, rate_type sr)
-{
- register resample_susp_type susp;
- int i;
-
- falloc_generic(susp, resample_susp_node, "snd_make_resample");
- susp->susp.fetch = resample__fetch;
-
- susp->Nmult = SMALL_FILTER_NMULT;
- susp->Imp = SMALL_FILTER_IMP;
- susp->ImpD = SMALL_FILTER_IMPD;
- /* these scale factors are here because filter coefficients
- are expressed as integers, and so is SMALL_FILTER_SCALE: */
- susp->LpScl = SMALL_FILTER_SCALE / 32768.0;
- susp->LpScl /= 16384.0;
- /* this is just a fudge factor, is SMALL_FILTER_SCALE wrong? */
- susp->LpScl /= 1.0011;
-
- susp->Nwing = SMALL_FILTER_NWING;
- susp->factor = sr / s->sr;
- if (susp->factor < 1) susp->LpScl *= susp->factor;
-
- /* factor in the scale factor of s, since resample is linear */
- susp->LpScl *= s->scale;
-
- susp->terminate_cnt = UNKNOWN;
- /* initialize susp state */
- susp->susp.free = resample_free;
- susp->susp.sr = sr;
- susp->susp.t0 = s->t0;
- susp->susp.mark = resample_mark;
- susp->susp.print_tree = resample_print_tree;
- susp->susp.name = "resample";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(s);
- susp->susp.current = 0;
- susp->s = s;
- susp->s_cnt = 0;
- susp->Xoff = (int) (((susp->Nmult + 1) / 2.0) * MAX(1.0, 1.0 / susp->factor) + 10);
- susp->Xsize = (long) ((max_sample_block_len / susp->factor) + 2 * susp->Xoff);
- susp->X = calloc(susp->Xsize, sizeof(sample_type));
- susp->Xp = susp->Xoff;
- susp->Time = susp->Xoff;
- susp->interpFilt = true;
- for (i = 0; i < susp->Xoff; i++) susp->X[i] = 0.0F;
-
- return sound_create((snd_susp_type)susp, susp->susp.t0,
- susp->susp.sr, 1.0 /* scale factor */);
-}
-
-
-sound_type snd_resample(sound_type s, rate_type sr)
-{
- sound_type s_copy = sound_copy(s);
- return snd_make_resample(s_copy, sr);
-}
diff --git a/lib-src/libnyquist/nyqsrc/resamp.h b/lib-src/libnyquist/nyqsrc/resamp.h
deleted file mode 100644
index 4f390b8..0000000
--- a/lib-src/libnyquist/nyqsrc/resamp.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_resample(sound_type s, rate_type sr);
-sound_type snd_resample(sound_type s, rate_type sr);
- /* LISP: (snd-resample SOUND ANYNUM) */
diff --git a/lib-src/libnyquist/nyqsrc/resampv.c b/lib-src/libnyquist/nyqsrc/resampv.c
deleted file mode 100644
index 0ee42ea..0000000
--- a/lib-src/libnyquist/nyqsrc/resampv.c
+++ /dev/null
@@ -1,357 +0,0 @@
-/* resampv.c -- use sinc interpolation to resample at a time-varying sample rate */
-
-
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm min->MIN, max->MAX
- */
-
-
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "resampv.h"
-#include "fresample.h"
-#include "ffilterkit.h"
-#include "fsmallfilter.h"
-
-
-/* Algorithm:
- First compute a factor = ratio of new sample rate to original sample rate.
- We have Time, the offset into X
- We want Xoff = ((susp->Nmult + 1) / 2.0) * MAX(1.0, 1.0 / factor) + 10
- samples on either side of Time before we interpolate.
- If Xoff * 2 > Xsize, then we're in trouble because X is not big enough.
- Assume this is a pathalogical case, raise the cutoff frequency to
- reduce Xoff to less than Xsize/2.
- If Time is too small, then we're in trouble because we've lost the
- beginning of the buffer. Raise the cutoff frequency until Xoff is
- less than Time. This should only happen if factor suddenly drops.
- If Time is too big, we can handle it: shift X down and load X with new
- samples. When X is shifted by N samples, N is subtracted from Time.
- To minimize the "Time is too small" case, don't shift too far: leave
- a cushion of Xoff * 2 samples rather than the usual Xoff.
-
- Now compute a sample at Time using SrcUD and output it.
-
- What is Time?
- Time is the offset into X, so Time is g_of_now - (sum of all X shifts)
- So, let Time = g_of_now - shift_sum
- Whenever shift_sum or g_of_now is updated, recompute Time
-
- To compute the next g_of_now, do a lookup of g at now + 1/sr,
- using linear interpolation (be sure to do computation with
- doubles to minimize sampling time jitter).
-
- */
-
-/* maximum ratio for downsampling (downsampling will still take place,
- * but the lowest prefilter cutoff frequency will be
- * (original_sample_rate/2) / MAX_FACTOR_INVERSE
- */
-#define MAX_FACTOR_INVERSE 64
-
-typedef struct resamplev_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type f;
- long f_cnt;
- sample_block_values_type f_ptr;
-
- sound_type g;
- long g_cnt;
- sample_block_values_type g_ptr;
- double prev_g; /* data for interpolation: */
- double next_g;
- double phase_in_g;
- double phase_in_g_increment;
- double g_of_now;
-
- float *X;
- long Xsize;
- double Time; /* location (offset) in X of next output sample */
- double shift_sum;
- double LpScl;
- double factor_inverse; /* computed at every sample from g */
- double factor; /* computed from factor_inverse */
- sample_type *Imp;
- sample_type *ImpD;
- boolean interpFilt;
- int Nmult;
- int Nwing;
- int Xp; /* first free location at end of X */
- int Xoff; /* number of extra samples at beginning and end of X */
-} resamplev_susp_node, *resamplev_susp_type;
-
-void resamplev_free();
-void resampv_refill(resamplev_susp_type susp);
-
-/* Sampling rate conversion subroutine
- * Note that this is not the same as SrcUD in resamp.c!
- */
-static float SrcUD(float X[], double dt, double Time,
- int Nwing, double LpScl,
- float Imp[], float ImpD[], boolean Interp)
-{
- mem_float *Xp;
- fast_float v;
-
- double dh; /* Step through filter impulse response */
- long iTime = (long) Time;
-
- dh = MIN(Npc, Npc/dt); /* Filter sampling period */
-
- Xp = &X[iTime]; /* Ptr to current input sample */
- v = FilterUD(Imp, ImpD, Nwing, Interp, Xp, Time - iTime,
- -1, dh); /* Perform left-wing inner product */
- v += FilterUD(Imp, ImpD, Nwing, Interp, Xp+1, (1 + iTime) - Time,
- 1, dh); /* Perform right-wing inner product */
- v *= LpScl; /* Normalize for unity filter gain */
- return (float) v;
-}
-
-
-void resamplev__fetch(register resamplev_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- sample_block_type out;
- /* note that in this fetch routine, out_ptr is used to remember where
- * to put the "real" output, while X_ptr_reg is used in the inner
- * loop that copies input samples into X, a buffer
- */
- register sample_block_values_type out_ptr;
-
- falloc_sample_block(out, "resamplev__fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* fetch g until we have points to interpolate */
- while (susp->phase_in_g >= 1.0) {
- susp->prev_g = susp->next_g;
- if (susp->g_cnt == 0) {
- susp_get_samples(g, g_ptr, g_cnt);
- if (susp->g->logical_stop_cnt == susp->g->current - susp->g_cnt) {
- if (susp->susp.log_stop_cnt == UNKNOWN) {
- susp->susp.log_stop_cnt = susp->susp.current + cnt;
- nyquist_printf("g logically stops at %ld\n", susp->susp.log_stop_cnt);
- }
- }
- if (susp->g_ptr == zero_block->samples &&
- susp->terminate_cnt == UNKNOWN) {
- susp->terminate_cnt = susp->susp.current + cnt;
- nyquist_printf("g terminates at %ld\n", susp->terminate_cnt);
- }
- }
- susp->next_g = susp_fetch_sample(g, g_ptr, g_cnt);
- susp->phase_in_g -= 1.0;
-
- if (susp->next_g < susp->prev_g) {
- susp->next_g = susp->prev_g;
- }
- /* factor_inverse = 1/factor = how many samples of f per
- * output sample = change-in-g / output-samples-per-g-sample
- * = change-in-g * phase_in_g_increment
- */
- susp->factor_inverse = susp->phase_in_g_increment *
- (susp->next_g - susp->prev_g);
- if (susp->factor_inverse > MAX_FACTOR_INVERSE)
- susp->factor_inverse = MAX_FACTOR_INVERSE;
-
- /* update Xoff, which depends upon factor_inverse: */
- susp->Xoff = (int) (((susp->Nmult + 1) / 2.0) *
- MAX(1.0, susp->factor_inverse)) + 10;
- if (susp->Xoff * 2 > susp->Xsize) {
- /* bad because X is not big enough for filter, so we'll
- * raise the cutoff frequency as necessary
- */
- susp->factor_inverse = ((susp->Xsize / 2) - 10 ) /
- ((susp->Nmult + 1) / 2.0);
- susp->Xoff = (susp->Xsize / 2) - 2 /* fudge factor */;
- }
- }
- susp->g_of_now = susp->prev_g +
- susp->phase_in_g * (susp->next_g - susp->prev_g);
- susp->Time = susp->g_of_now - susp->shift_sum;
- susp->phase_in_g += susp->phase_in_g_increment;
-
- /* now we have a position (g_of_now) and a factor */
- /* See if enough of f is in X */
- if (susp->Xoff > susp->Time) {
- /* there are not enough samples before Time in X, so
- * modify factor_inverse to fix it
- */
- susp->factor_inverse = (susp->Time - 10.0) /
- ((susp->Nmult + 1) / 2.0);
-
- } else if ((susp->Xsize - susp->Xoff) < susp->Time) {
- /* if there's room, leave 2*Xoff samples at beginning of
- * buffer. Otherwise leave only Xoff:*/
- int i, dist;
- susp->Xp = susp->Xoff * 2;
- dist = ((int) susp->Time) - susp->Xp;
- if (dist < 1 && (susp->Xp * 2 < susp->Xsize)) {
- susp->Xp = susp->Xoff;
- dist = ((int) susp->Time) - susp->Xoff;
- }
- for (i = 0; i < susp->Xsize - dist; i++) {
- susp->X[i] = susp->X[i + dist];
- }
- resampv_refill(susp);
- susp->shift_sum += dist;
- susp->Time = susp->g_of_now - susp->shift_sum;
- }
-
- /* second, compute a sample to output */
-
- /* don't run past terminate time */
- if (susp->terminate_cnt == susp->susp.current + cnt) {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- snd_list = snd_list->u.next;
- snd_list->u.next = snd_list_create(&susp->susp);
- snd_list->block = internal_zero_block;
- nyquist_printf("resamp calling snd_list_terminate\n");
- snd_list_terminate(snd_list);
- return;
- } else {
- double scale = susp->LpScl;
- float tmp;
- if (susp->factor_inverse > 1) scale /= susp->factor_inverse;
- tmp = SrcUD(susp->X, susp->factor_inverse,
- susp->Time, susp->Nwing, scale, susp->Imp,
- susp->ImpD, susp->interpFilt);
- *out_ptr++ = tmp;
- }
- cnt++;
- }
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
-} /* resamplev__fetch */
-
-
-void resampv_refill(resamplev_susp_type susp) {
- int togo, n;
- register sample_type *f_ptr_reg;
- register sample_type *X_ptr_reg;
-
- while (susp->Xp < susp->Xsize) { /* outer loop */
-
- /* read samples from susp->f into X */
- togo = susp->Xsize - susp->Xp;
-
- /* don't run past the f input sample block: */
- susp_check_samples(f, f_ptr, f_cnt);
- togo = MIN(togo, susp->f_cnt);
-
- n = togo;
- f_ptr_reg = susp->f_ptr;
- X_ptr_reg = &(susp->X[susp->Xp]);
- if (n) do { /* the inner sample computation loop */
- *X_ptr_reg++ = *f_ptr_reg++;
- } while (--n); /* inner loop */
-
- /* using f_ptr_reg is a bad idea on RS/6000: */
- susp->f_ptr += togo;
- susp_took(f_cnt, togo);
- susp->Xp += togo;
- } /* outer loop */
-}
-
-
-
-void resamplev_mark(resamplev_susp_type susp)
-{
- sound_xlmark(susp->f);
- sound_xlmark(susp->g);
-}
-
-
-void resamplev_free(resamplev_susp_type susp)
-{
- nyquist_printf("resamplev_free called\n");
- sound_unref(susp->f);
- sound_unref(susp->g);
- free(susp->X);
- ffree_generic(susp, sizeof(resamplev_susp_node), "resamplev_free");
-}
-
-
-void resamplev_print_tree(resamplev_susp_type susp, int n)
-{
- indent(n);
- nyquist_printf("f:");
- sound_print_tree_1(susp->f, n);
-
- indent(n);
- nyquist_printf("g:");
- sound_print_tree_1(susp->g, n);
-}
-
-
-sound_type snd_make_resamplev(sound_type f, rate_type sr, sound_type g)
-{
- register resamplev_susp_type susp;
- int i;
-
- falloc_generic(susp, resamplev_susp_node, "snd_make_resamplev");
- susp->susp.fetch = resamplev__fetch;
-
- susp->Nmult = SMALL_FILTER_NMULT;
- susp->Imp = SMALL_FILTER_IMP;
- susp->ImpD = SMALL_FILTER_IMPD;
- susp->LpScl = SMALL_FILTER_SCALE / 32768.0;
- susp->LpScl /= 16384.0;
- /* this is just a fudge factor, is SMALL_FILTER_SCALE is wrong? */
- susp->LpScl /= 1.0011;
- susp->Nwing = SMALL_FILTER_NWING;
-
- susp->terminate_cnt = UNKNOWN;
- /* initialize susp state */
- susp->susp.free = resamplev_free;
- susp->susp.sr = sr;
- susp->susp.t0 = f->t0;
- susp->susp.mark = resamplev_mark;
- susp->susp.print_tree = resamplev_print_tree;
- susp->susp.name = "resamplev";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(f);
- susp->susp.current = 0;
- susp->f = f;
- susp->f_cnt = 0;
- susp->g = g;
- susp->g_cnt = 0;
- susp->next_g = 0;
- susp->phase_in_g_increment = g->sr / sr;
- susp->phase_in_g = 2.0;
- susp->Xoff = (int) (((susp->Nmult + 1) / 2.0) * 2.0) /* MAX(1.0, 1.0 / susp->factor) */ + 10;
- /* this size is not critical unless it is too small */
- susp->Xsize = max_sample_block_len + 2 * susp->Xoff;
- susp->X = calloc(susp->Xsize, sizeof(sample_type));
- susp->Xp = susp->Xsize;
- susp->shift_sum = -susp->Xsize;
- susp->interpFilt = true;
- for (i = 0; i < susp->Xoff; i++) susp->X[i] = 0.0F;
- susp->LpScl *= 0.95; /* reduce probability of clipping */
- nyquist_printf("resampv: scaling by 0.95\n");
-
- return sound_create((snd_susp_type)susp, susp->susp.t0, susp->susp.sr,
- 1.0 /* scale factor */);
-}
-
-
-sound_type snd_resamplev(sound_type f, rate_type sr, sound_type g)
-{
- sound_type f_copy = sound_copy(f);
- sound_type g_copy = sound_copy(g);
- g_copy->scale *= (float) sr; /* put g_copy in units of samples */
- return snd_make_resamplev(f_copy, sr, g_copy);
-}
diff --git a/lib-src/libnyquist/nyqsrc/resampv.h b/lib-src/libnyquist/nyqsrc/resampv.h
deleted file mode 100644
index ceec942..0000000
--- a/lib-src/libnyquist/nyqsrc/resampv.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_resamplev(sound_type f, rate_type sr, sound_type g);
-sound_type snd_resamplev(sound_type f, rate_type sr, sound_type g);
- /* LISP: (snd-resamplev SOUND ANYNUM SOUND) */
diff --git a/lib-src/libnyquist/nyqsrc/rfftw.h b/lib-src/libnyquist/nyqsrc/rfftw.h
deleted file mode 100644
index 1d71ec7..0000000
--- a/lib-src/libnyquist/nyqsrc/rfftw.h
+++ /dev/null
@@ -1,98 +0,0 @@
-/*
- * Copyright (c) 1997-1999 Massachusetts Institute of Technology
- *
- * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- *
- */
-
-/* rfftw.h -- system-wide definitions for rfftw */
-#ifndef RFFTW_H
-#define RFFTW_H
-
-#include <fftw.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
-
-/****************************************************************************/
-
-#define RFFTW_V2
-
-typedef fftw_plan rfftw_plan;
-typedef fftwnd_plan rfftwnd_plan;
-
-#define FFTW_REAL_TO_COMPLEX FFTW_FORWARD
-#define FFTW_COMPLEX_TO_REAL FFTW_BACKWARD
-
-extern void rfftw(rfftw_plan plan, int howmany, fftw_real *in, int istride,
- int idist, fftw_real *out, int ostride, int odist);
-extern void rfftw_one(rfftw_plan plan, fftw_real *in, fftw_real *out);
-
-extern rfftw_plan rfftw_create_plan_specific(int n, fftw_direction dir,
- int flags,
- fftw_real *in, int istride,
- fftw_real *out, int ostride);
-
-extern rfftw_plan rfftw_create_plan(int n, fftw_direction dir, int flags);
-extern void rfftw_destroy_plan(rfftw_plan plan);
-
-extern void rfftw_fprint_plan(FILE *f, rfftw_plan p);
-extern void rfftw_print_plan(rfftw_plan p);
-
-extern void rfftw_executor_simple(int n, fftw_real *in,
- fftw_real *out,
- fftw_plan_node *p,
- int istride,
- int ostride);
-
-extern rfftwnd_plan rfftwnd_create_plan_specific(int rank, const int *n,
- fftw_direction dir, int flags,
- fftw_real *in, int istride,
- fftw_real *out, int ostride);
-extern rfftwnd_plan rfftw2d_create_plan_specific(int nx, int ny,
- fftw_direction dir, int flags,
- fftw_real *in, int istride,
- fftw_real *out, int ostride);
-extern rfftwnd_plan rfftw3d_create_plan_specific(int nx, int ny, int nz,
- fftw_direction dir, int flags,
- fftw_real *in, int istride,
- fftw_real *out, int ostride);
-extern rfftwnd_plan rfftwnd_create_plan(int rank, const int *n,
- fftw_direction dir, int flags);
-extern rfftwnd_plan rfftw2d_create_plan(int nx, int ny,
- fftw_direction dir, int flags);
-extern rfftwnd_plan rfftw3d_create_plan(int nx, int ny, int nz,
- fftw_direction dir, int flags);
-extern void rfftwnd_destroy_plan(rfftwnd_plan plan);
-extern void rfftwnd_fprint_plan(FILE *f, rfftwnd_plan plan);
-extern void rfftwnd_print_plan(rfftwnd_plan plan);
-extern void rfftwnd_real_to_complex(rfftwnd_plan p, int howmany,
- fftw_real *in, int istride, int idist,
- fftw_complex *out, int ostride, int odist);
-extern void rfftwnd_complex_to_real(rfftwnd_plan p, int howmany,
- fftw_complex *in, int istride, int idist,
- fftw_real *out, int ostride, int odist);
-extern void rfftwnd_one_real_to_complex(rfftwnd_plan p,
- fftw_real *in, fftw_complex *out);
-extern void rfftwnd_one_complex_to_real(rfftwnd_plan p,
- fftw_complex *in, fftw_real *out);
-
-/****************************************************************************/
-
-#ifdef __cplusplus
-} /* extern "C" */
-#endif /* __cplusplus */
-#endif /* RFFTW_H */
diff --git a/lib-src/libnyquist/nyqsrc/samples.c b/lib-src/libnyquist/nyqsrc/samples.c
deleted file mode 100644
index 4007d5c..0000000
--- a/lib-src/libnyquist/nyqsrc/samples.c
+++ /dev/null
@@ -1,300 +0,0 @@
-/* samples.c -- various functions for the Nyquist sound data type */
-
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm min->MIN, max->MAX
- */
-
-#include <stdio.h>
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-#include "falloc.h"
-#include "samples.h"
-
-
-LVAL s_next = NULL;
-LVAL s_send;
-
-void samples_symbols()
-{
- s_next = xlenter(":NEXT");
- s_send = xlenter("SEND");
-}
-
-/* snd_from_array -- convert lisp array to sound type */
-/**/
-sound_type snd_from_array(double t0, double sr, LVAL array)
-{
- sound_type result;
- snd_list_type snd_list;
- long total = 0;
-
- if (!vectorp(array)) xlerror("array expected", array);
-
- result = sound_create(NULL, t0, sr, 1.0);
- snd_list = result->list;
- while (total < getsize(array)) {
- long togo = MIN(getsize(array) - total, max_sample_block_len);
- sample_block_type block;
- int i;
- falloc_sample_block(block, "snd_from_array");
- snd_list->block = block;
- for (i = 0; i < togo; i++) {
- LVAL elem = getelement(array, total + i);
- sample_type *ptr = block->samples + i;
- if (fixp(elem)) *ptr = (sample_type) getfixnum(elem);
- else if (floatp(elem)) *ptr = (sample_type) getflonum(elem);
- else xlerror("expecting array elem to be number", elem);
- }
- total += togo;
- snd_list->block_len = (short) togo;
- snd_list->u.next = snd_list_create(NULL);
- snd_list = snd_list->u.next;
- }
- snd_list->block_len = max_sample_block_len;
- snd_list->block = zero_block;
- snd_list->logically_stopped = true;
- snd_list->u.next = zero_snd_list;
- return result;
-}
-
-
-/* snd_length -- count how many samples are in a sound */
-/**/
-long snd_length(sound_type s, long len)
-{
- long total = 0;
- long blocklen;
-
- s = sound_copy(s);
- if (len > s->stop) len = s->stop;
- while (total < len) {
- sample_block_type sampblock = sound_get_next(s, &blocklen);
- if (sampblock == zero_block) break;
- total += blocklen;
- }
- if (total > len) total = len;
- sound_unref(s);
- return total;
-}
-
-
-/* snd_maxsamp -- compute the maximum value of samples in s */
-/**/
-double snd_maxsamp(sound_type s)
-{
- sample_type result = 0.0F;
- long blocklen;
- s = sound_copy(s);
-
- while (true) {
- sample_block_type sampblock = sound_get_next(s, &blocklen);
- long i;
- sample_block_values_type sbufp = sampblock->samples;
- if (sampblock == zero_block || blocklen == 0) {
- break;
- }
- for (i = 0; i < blocklen; i++) {
- register sample_type samp = *sbufp++;
- if (result < samp) result = samp;
- else if (result < -samp) result = -samp;
- }
- }
- return (double) (s->scale * result);
-}
-
-
-/* snd_samples -- convert sound (prefix) to lisp array */
-/**/
-LVAL snd_samples(sound_type s, long len)
-{
- LVAL v;
- long vx = 0;
- long blocklen;
- register double scale_factor = s->scale;
- len = snd_length(s, len);
- s = sound_copy(s);
-
- xlsave1(v);
- v = newvector(len);
-
- while (len > 0) {
- sample_block_type sampblock = sound_get_next(s, &blocklen);
- long togo = MIN(blocklen, len);
- long i;
- sample_block_values_type sbufp = sampblock->samples;
- for (i = 0; i < togo; i++) {
- setelement(v, vx++, cvflonum(*sbufp++ * scale_factor));
- }
- len -= togo;
- }
- sound_unref(s);
-
- /* restore the stack */
- xlpop();
- return v;
-}
-
-
-/* NOTE: this code does not properly handle start times that do not
- * correspond to the time of the first actual sample
- */
-
-/* NOTE: we need some addtional state to keep track of where we are.
- * We'll use the extra field of sound_type; first long is length,
- * so second field will be the count of how many samples we've read.
- */
-#define CNT extra[1]
-#define INDEX extra[2]
-#define FIELDS 3
-#define SAMPLES list->block->samples
-
-LVAL snd_fetch(sound_type s)
-{
- if (!s->extra) { /* this is the first call, so fix up s */
- s->extra = (long *) malloc(sizeof(long) * FIELDS);
- s->extra[0] = sizeof(long) * FIELDS;
- s->CNT = s->INDEX = 0;
- } else if (s->extra[0] != sizeof(long) * FIELDS) {
- xlfail("sound in use by another iterator");
- }
- if (s->CNT == s->INDEX) {
- sound_get_next(s, &(s->CNT));
- s->INDEX = 0;
- }
- if (s->SAMPLES == zero_block->samples) {
- return NULL;
- }
-
- /* logical stop time is ignored by this code -- to fix this,
- * you would need a way to return the logical stop time to
- * the caller.
- */
-
- return cvflonum(s->SAMPLES[s->INDEX++] * s->scale);
-} /* snd_fetch */
-
-
-/* snd_fetch_array -- fetch a lisp array of samples */
-/*
- * storage layout: the extra field points to extra state that we'll use
- * extra[0] -> length of extra storage
- * extra[1] -> CNT (number of samples in current block)
- * extra[2] -> INDEX (current sample index in current block)
- * extra[3] -> FILLCNT (how many samples in buffer)
- * extra[4] -> TERMCNT (how many samples until termination)
- * extra[4 .. 4+len-1] -> samples (stored as floats)
- *
- * Termination details:
- * Return NIL when the sound terminates.
- * Termination is defined as the point where all original
- * signal samples have been shifted out of the samples buffer
- * so that all that's left are zeros from beyond the termination
- * point.
- * Implementation: when termination is discovered, set TERMCNT
- * to the number of samples to be shifted out. TERMCNT is initially
- * -1 as a flag that we haven't seen the termination yet.
- * Each time samples are shifted, decrement TERMCNT by the shift amount.
- * When TERMCNT goes to zero, return NULL.
- */
-/* these macros define entries in extra, more macros are defined above */
-#define FILLCNT extra[3]
-#define TERMCNT extra[4]
-#define OFFSET 5
-
-LVAL snd_fetch_array(sound_type s, long len, long step)
-{
- long i, maxlen, skip, fillptr;
- float *samples;
- LVAL result;
-
- if (len < 1) xlfail("len < 1");
-
- if (!s->extra) { /* this is the first call, so fix up s */
- s->extra = (long *) malloc(sizeof(long) * (len + OFFSET));
- s->extra[0] = sizeof(long) * (len + OFFSET);
- s->CNT = s->INDEX = s->FILLCNT = 0;
- s->TERMCNT = -1;
- maxlen = len;
- } else {
- maxlen = (s->extra[0] / sizeof(long)) - OFFSET;
- if (maxlen < 1) xlfail("sound in use by another iterator");
- if (maxlen < len) xlfail("len grew");
- }
- samples = (float *) &(s->extra[OFFSET]);
-
- /* step 1: refill buffer with samples */
- fillptr = s->FILLCNT;
- while (fillptr < maxlen) {
- if (s->INDEX == s->CNT) {
- sound_get_next(s, &(s->CNT));
- if (s->SAMPLES == zero_block->samples) {
- if (s->TERMCNT < 0) s->TERMCNT = fillptr;
- }
- s->INDEX = 0;
- }
- samples[fillptr++] = s->SAMPLES[s->INDEX++] * s->scale;
- }
- s->FILLCNT = fillptr;
-
- /* it is important to test here AFTER filling the buffer, because
- * if fillptr WAS 0 when we hit the zero_block, then filling the
- * buffer will set TERMCNT to 0.
- */
- if (s->TERMCNT == 0) return NULL;
-
- /* logical stop time is ignored by this code -- to fix this,
- * you would need a way to return the logical stop time to
- * the caller.
- */
-
- /* step 2: construct an array and return it */
- xlsave1(result);
- result = newvector(len);
-
- for (i = 0; i < len; i++) {
- setelement(result, i, cvflonum(samples[i]));
- }
-
- /* step 3: shift samples by step */
- if (step < 0) xlfail("step < 0");
- s->FILLCNT -= step;
- if (s->FILLCNT < 0) s->FILLCNT = 0;
- for (i = 0; i < s->FILLCNT; i++) {
- samples[i] = samples[i + step];
- }
-
-
- if (s->TERMCNT >= 0) {
- s->TERMCNT -= step;
- if (s->TERMCNT < 0) s->TERMCNT = 0;
- }
-
-
- /* step 4: advance in sound to next sample we need
- * (only does work if step > size of buffer)
- */
- skip = step - maxlen;
- while (skip > 0) {
- long remaining = s->CNT - s->INDEX;
- if (remaining >= skip) {
- s->INDEX += skip;
- skip = 0;
- } else {
- skip -= remaining;
- sound_get_next(s, &(s->CNT));
- s->INDEX = 0;
- }
- }
-
- /* restore the stack */
- xlpop();
- return result;
-} /* snd_fetch_array */
-
-
-
-
diff --git a/lib-src/libnyquist/nyqsrc/samples.h b/lib-src/libnyquist/nyqsrc/samples.h
deleted file mode 100644
index 8907241..0000000
--- a/lib-src/libnyquist/nyqsrc/samples.h
+++ /dev/null
@@ -1,20 +0,0 @@
-/* samples.h -- convert sound (prefix) to lisp array */
-
-/* these are used by snd_fromobject and snd_fromarraystream: */
-extern LVAL s_next;
-extern LVAL s_send;
-
-void samples_symbols();
-
-sound_type snd_from_array(double t0, double sr, LVAL array);
- /* LISP: (SND-FROM-ARRAY ANYNUM ANYNUM ANY) */
-
-LVAL snd_samples(sound_type s, long len); /* LISP: (SND-SAMPLES SOUND FIXNUM) */
-long snd_length(sound_type s, long len); /* LISP: (SND-LENGTH SOUND FIXNUM) */
-
-double snd_maxsamp(sound_type s); /* LISP: (SND-MAXSAMP SOUND) */
-
-LVAL snd_fetch(sound_type s); /* LISP: (SND-FETCH SOUND) */
-
-LVAL snd_fetch_array(sound_type s, long len, long step);
- /* LISP: (SND-FETCH-ARRAY SOUND FIXNUM FIXNUM) */
diff --git a/lib-src/libnyquist/nyqsrc/seqext.c b/lib-src/libnyquist/nyqsrc/seqext.c
deleted file mode 100644
index 804641a..0000000
--- a/lib-src/libnyquist/nyqsrc/seqext.c
+++ /dev/null
@@ -1,92 +0,0 @@
-/* seqext.c -- seq extensions for xlisp */
-/*
-This file extends xlisp with the data type SEQ, including functions
-to print and free SEQ type objects.
- */
-
-/* (c) Copyright Carnegie Mellon University 1991, 1994
- * For a statement of limited permission to use, see Permission.doc
- */
-
-
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm portability fix: use %p instead of %lx
- */
-
-
-#include "stdio.h"
-#include "xlisp.h"
-#include "cext.h"
-#include "userio.h"
-#include "midifns.h"
-#include "timebase.h"
-#include "seq.h"
-#include "moxc.h"
-#include "seqread.h"
-#include "seqext.h"
-#include "extern.h"
-
-LVAL s_seq;
-
-xtype_desc seq_desc;
-
-static void xlseq_print();
-
-void nop() {}
-
-boolean seqp(s)
- LVAL s;
-{
- return exttypep(s, s_seq);
-}
-
-
-/* xlseq_free gets called by xlisp when the GC frees a seq object.
- * seq_free is a macro, so here we make it into a function pointer.
- */
-static void xlseq_free(sequence)
-seq_type sequence;
-{
- seq_free(sequence);
-}
-
-
-static void xlseq_print(fptr, sequence)
- LVAL fptr;
- seq_type sequence;
-{
- char s[32];
- sprintf(s, "#<SEQ:0x%p>", sequence);
- xlputstr(fptr, s);
-}
-
-static void xlseq_save(fp, sequence)
- FILE *fp;
- seq_type sequence;
-{
- errputstr("xlseq_save called\n");
-}
-
-
-static unsigned char *xlseq_restore(fp)
- FILE *fp;
-{
- errputstr("xlseq_restore called\n");
- return 0;
-}
-
-
-void seqext_init()
-{
-/* printf("localinit called\n"); */
- seq_desc = create_desc("SEQ", xlseq_free, xlseq_print, xlseq_save,
- xlseq_restore, NULL);
- moxcinit(0, (char **) NULL);
-}
-
-
-void seqext_symbols()
-{
- s_seq = xlenter("SEQ");
-}
diff --git a/lib-src/libnyquist/nyqsrc/seqext.h b/lib-src/libnyquist/nyqsrc/seqext.h
deleted file mode 100644
index 0727e77..0000000
--- a/lib-src/libnyquist/nyqsrc/seqext.h
+++ /dev/null
@@ -1,14 +0,0 @@
-/* seqext.h -- header for seq extensions for xlisp */
-
-
-void seqext_init();
-void seqext_symbols();
-boolean seqp();
-
-extern xtype_desc seq_desc;
-extern LVAL s_seq;
-
-#define cvptrbool(v) ((LVAL) ((v) ? s_true : NIL))
-#define cvseq(v) ((LVAL) ((v) ? cvextern(seq_desc, (void *)(v)) : NIL))
-#define xlgaseq() (testarg(typearg(seqp)))
-#define getseq(x) ((seq_type) getinst(x))
diff --git a/lib-src/libnyquist/nyqsrc/seqfn.cl b/lib-src/libnyquist/nyqsrc/seqfn.cl
deleted file mode 100644
index 2a22761..0000000
--- a/lib-src/libnyquist/nyqsrc/seqfn.cl
+++ /dev/null
@@ -1,2 +0,0 @@
-:nyqsrc:seqfnint :cmt:seqdecls.h :nyqsrc:seqext.h :cmt:seq.h :nyqsrc:seqinterf.h
-:cmt:seqread.h :cmt:seqmread.h :cmt:seqwrite.h :cmt:seqmwrite.h
diff --git a/lib-src/libnyquist/nyqsrc/seqfn.wcl b/lib-src/libnyquist/nyqsrc/seqfn.wcl
deleted file mode 100644
index 8f58d02..0000000
--- a/lib-src/libnyquist/nyqsrc/seqfn.wcl
+++ /dev/null
@@ -1,2 +0,0 @@
-nyqsrc\seqfnint cmt\seqdecls.h nyqsrc\seqext.h cmt\seq.h nyqsrc\seqinterf.h
-cmt\seqread.h cmt\seqmread.h cmt\seqwrite.h cmt\seqmwrite.h
diff --git a/lib-src/libnyquist/nyqsrc/seqfnint.lsp b/lib-src/libnyquist/nyqsrc/seqfnint.lsp
deleted file mode 100644
index 1f7b01b..0000000
--- a/lib-src/libnyquist/nyqsrc/seqfnint.lsp
+++ /dev/null
@@ -1,31 +0,0 @@
-
- (setfn seq-tag first)
- (setfn seq-time second)
- (setfn seq-line third)
- (setfn seq-channel fourth)
- (defun seq-value1 (e) (nth 4 e))
- (setfn seq-pitch seq-value1) ; pitch of a note
- (setfn seq-control seq-value1) ; control number of a control change
- (setfn seq-program seq-value1) ; program number of a program change
- (setfn seq-bend seq-value1) ; pitch bend amount
- (setfn seq-touch seq-value1) ; aftertouch amount
- (defun seq-value2 (e) (nth 5 e))
- (setfn seq-velocity seq-value2) ; velocity of a note
- (setfn seq-value seq-value2) ; value of a control change
- (defun seq-duration (e) (nth 6 e))
-
-
- (setf seq-done-tag 0)
-
- (setf seq-other-tag 1)
-
- (setf seq-note-tag 2)
-
- (setf seq-ctrl-tag 3)
-
- (setf seq-prgm-tag 4)
-
- (setf seq-touch-tag 5)
-
- (setf seq-bend-tag 6)
-
diff --git a/lib-src/libnyquist/nyqsrc/seqinterf.c b/lib-src/libnyquist/nyqsrc/seqinterf.c
deleted file mode 100644
index dc886a0..0000000
--- a/lib-src/libnyquist/nyqsrc/seqinterf.c
+++ /dev/null
@@ -1,98 +0,0 @@
-/* seqinterf.c -- interface to sequence data type for XLISP */
-
-#include "switches.h"
-#include "xlisp.h"
-#include "stdio.h"
-#include "cext.h"
-#include "userio.h"
-#include "midifns.h"
-#include "timebase.h"
-#include "moxc.h"
-#include "seq.h"
-#include "seqinterf.h"
-
-/* seq_next -- advance to the next event, return TRUE if found */
-/**/
-boolean seq_next(seq_type seq)
-{
- if (seq->current) {
- seq->current = seq->current->next;
- }
- return seq->current != NULL;
-}
-
-
-/* seq_get -- get event data for the current event */
-/**/
-void seq_get(seq_type seq, long *eventtype, long *ntime, long *line, long *chan,
- long *value1, long *value2, long *dur)
-{
- event_type ev = seq->current;
- if (!ev) *eventtype = SEQ_DONE;
- else if (is_note(ev)) {
- if (ev->value != NO_PITCH) {
- *eventtype = SEQ_NOTE;
- *ntime = ev->ntime;
- *line = ev->nline;
- *chan = vc_voice(ev->nvoice);
- *value1 = ev->value;
- *value2 = ev->u.note.ndur & 0xFF;
- *dur = ev->u.note.ndur >> 8;
- } else {
- *eventtype = SEQ_OTHER;
- }
- } else {
- *eventtype = SEQ_CTRL;
- *ntime = ev->ntime;
- *line = ev->nline;
- *chan = vc_voice(ev->nvoice);
- *value2 = ev->value;
-
- switch (vc_ctrl(ev->nvoice)) {
- case PSWITCH_CTRL:
- *value1 = PORTASWITCH;
- break;
- case MODWHEEL_CTRL:
- *value1 = MODWHEEL;
- break;
- case TOUCH_CTRL:
- *eventtype = SEQ_TOUCH;
- *value1 = ev->value;
- break;
- case VOLUME_CTRL:
- *value1 = VOLUME;
- break;
- case BEND_CTRL:
- *eventtype = SEQ_BEND;
- *value1 = ev->value << 6;
- break;
- case PROGRAM_CTRL:
- *eventtype = SEQ_PRGM;
- *value1 = ev->value + 1;
- break;
- case ESC_CTRL:
- switch (ev->value) {
- case CALL_VALUE:
- case CLOCK_VALUE:
- case MACRO_VALUE:
- case CTRLRAMP_VALUE:
- case DEFRAMP_VALUE:
- case SETI_VALUE:
- *eventtype = SEQ_OTHER;
- break;
- case MACCTRL_VALUE:
- *value1 = ev->u.macctrl.ctrl_number;
- *value2 = ev->u.macctrl.value;
- break;
- default:
- xlabort("unexpected ESC_CTRL value\n");
- break;
- }
- break;
- default:
- xlabort("unexpected seq data\n");
- break;
- }
- }
-}
-
diff --git a/lib-src/libnyquist/nyqsrc/seqinterf.h b/lib-src/libnyquist/nyqsrc/seqinterf.h
deleted file mode 100644
index 590ed84..0000000
--- a/lib-src/libnyquist/nyqsrc/seqinterf.h
+++ /dev/null
@@ -1,37 +0,0 @@
-/* seqinterf.h -- interface to sequence data type for XLISP */
-
-boolean seq_next(seq_type seq); /* LISP: (SEQ-NEXT SEQ) */
-void seq_get(seq_type seq, long *eventtype, long *time, long *line, long *chan,
- long *value1, long *value2, long *dur);
- /* LISP: (SEQ-GET SEQ FIXNUM^ FIXNUM^ FIXNUM^ FIXNUM^ FIXNUM^ FIXNUM^ FIXNUM^) */
-/* LISP-SRC:
- (setfn seq-tag first)
- (setfn seq-time second)
- (setfn seq-line third)
- (setfn seq-channel fourth)
- (defun seq-value1 (e) (nth 4 e))
- (setfn seq-pitch seq-value1) ; pitch of a note
- (setfn seq-control seq-value1) ; control number of a control change
- (setfn seq-program seq-value1) ; program number of a program change
- (setfn seq-bend seq-value1) ; pitch bend amount
- (setfn seq-touch seq-value1) ; aftertouch amount
- (defun seq-value2 (e) (nth 5 e))
- (setfn seq-velocity seq-value2) ; velocity of a note
- (setfn seq-value seq-value2) ; value of a control change
- (defun seq-duration (e) (nth 6 e))
- */
-#define SEQ_DONE 0
-/* LISP-SRC: (setf seq-done-tag 0) */
-#define SEQ_OTHER 1
-/* LISP-SRC: (setf seq-other-tag 1) */
-#define SEQ_NOTE 2
-/* LISP-SRC: (setf seq-note-tag 2) */
-#define SEQ_CTRL 3
-/* LISP-SRC: (setf seq-ctrl-tag 3) */
-#define SEQ_PRGM 4
-/* LISP-SRC: (setf seq-prgm-tag 4) */
-#define SEQ_TOUCH 5
-/* LISP-SRC: (setf seq-touch-tag 5) */
-#define SEQ_BEND 6
-/* LISP-SRC: (setf seq-bend-tag 6) */
-
diff --git a/lib-src/libnyquist/nyqsrc/sndfail.c b/lib-src/libnyquist/nyqsrc/sndfail.c
deleted file mode 100644
index 35b29cb..0000000
--- a/lib-src/libnyquist/nyqsrc/sndfail.c
+++ /dev/null
@@ -1,23 +0,0 @@
-
-#include "stdio.h"
-#include "snd.h"
-#include "stdlib.h"
-#include "xlisp.h"
-#include "string.h"
-
-void snd_fail(char *msg)
-{
- char *bigger = (char *) malloc(strlen(msg) + 16);
- if (!bigger) xlfail("no memory");
- strcpy(bigger, "(snd)");
- strcat(bigger, msg);
- xlfail(bigger);
- // NOTE: there is a memory leak here
-}
-
-
-void snd_warn(char *msg)
-{
- stdputstr(msg);
- stdputstr("\n");
-}
diff --git a/lib-src/libnyquist/nyqsrc/sndfn.cl b/lib-src/libnyquist/nyqsrc/sndfn.cl
deleted file mode 100644
index de2979a..0000000
--- a/lib-src/libnyquist/nyqsrc/sndfn.cl
+++ /dev/null
@@ -1,16 +0,0 @@
-:nyqsrc:sndfnint :nyqsrc:sound.h :nyqsrc:downsample.h :nyqsrc:sndread.h
-:nyqsrc:sndseq.h :nyqsrc:add.h :nyqsrc:multiseq.h
-:nyqsrc:samples.h :nyqsrc:sndwrite.h :nyqsrc:sndmax.h :nyqsrc:compose.h
-:nyqsrc:inverse.h ~:nyqsrc:sndheader.h
-:tran:amosc.h :tran:const.h :tran:clip.h :tran:max.h :tran:maxv.h
-:tran:fmosc.h :tran:integrate.h :tran:osc.h :tran:prod.h :tran:pwl.h
-:tran:recip.h :tran:upsample.h :tran:scale.h
-:tran:sine.h :tran:partial.h :tran:white.h :tran:tone.h :tran:tonev.h
-:tran:atonev.h :tran:atone.h :tran:reson.h
-:tran:areson.h :tran:resonvc.h :tran:resoncv.h :tran:aresonvc.h
-:tran:aresoncv.h :tran:resonvv.h :tran:aresonvv.h
-:tran:offset.h :tran:slope.h :tran:delay.h :tran:delaycv.h
-:tran:shape.h :tran:sampler.h :tran:gate.h :tran:siosc.h
-:tran:exp.h :tran:log.h :nyqsrc:resampv.h :nyqsrc:resamp.h :nyqsrc:avg.h
-:tran:ifft.h :nyqsrc:fft.h :tran:congen.h :tran:biquad.h
-
diff --git a/lib-src/libnyquist/nyqsrc/sndfn.wcl b/lib-src/libnyquist/nyqsrc/sndfn.wcl
deleted file mode 100644
index 30d75a2..0000000
--- a/lib-src/libnyquist/nyqsrc/sndfn.wcl
+++ /dev/null
@@ -1,17 +0,0 @@
-nyqsrc\sndfnint nyqsrc\sound.h nyqsrc\downsample.h snd\snd.h nyqsrc\sndread.h
-nyqsrc\sndseq.h nyqsrc\add.h nyqsrc\multiseq.h
-nyqsrc\samples.h nyqsrc\sndwrite.h nyqsrc\sndmax.h nyqsrc\compose.h
-nyqsrc\inverse.h ~nyqsrc\sndheader.h
-tran\amosc.h tran\const.h tran\clip.h tran\maxv.h
-tran\fmosc.h tran\integrate.h tran\osc.h tran\prod.h tran\pwl.h
-tran\recip.h tran\upsample.h tran\scale.h
-tran\sine.h tran\partial.h tran\white.h tran\tone.h tran\tonev.h
-tran\atonev.h tran\atone.h tran\reson.h
-tran\areson.h tran\resonvc.h tran\resoncv.h tran\aresonvc.h
-tran\aresoncv.h tran\resonvv.h tran\aresonvv.h
-tran\offset.h tran\slope.h tran\delay.h tran\delaycv.h
-tran\shape.h tran\sampler.h tran\gate.h tran\quantize.h tran\siosc.h
-tran\exp.h tran\log.h nyqsrc\resampv.h nyqsrc\resamp.h nyqsrc\avg.h
-tran\ifft.h nyqsrc\fft.h tran\congen.h tran\fromobject.h tran\fromarraystream.h tran\coterm.h tran\convolve.h tran\follow.h tran\oneshot.h
-tran\chase.h tran\alpass.h tran\biquad.h
-
diff --git a/lib-src/libnyquist/nyqsrc/sndfnint.lsp b/lib-src/libnyquist/nyqsrc/sndfnint.lsp
deleted file mode 100644
index 40dc764..0000000
--- a/lib-src/libnyquist/nyqsrc/sndfnint.lsp
+++ /dev/null
@@ -1,44 +0,0 @@
- (setf snd-head-none 0)
-
- (setf snd-head-AIFF 1)
-
- (setf snd-head-IRCAM 2)
-
- (setf snd-head-NeXT 3)
-
- (setf snd-head-Wave 4)
-
- (setf snd-head-channels 1)
-
- (setf snd-head-mode 2)
-
- (setf snd-head-bits 4)
-
- (setf snd-head-srate 8)
-
- (setf snd-head-dur 16)
-
- (setf snd-head-latency 32)
-
- (setf snd-head-type 64)
-
- (setf snd-mode-adpcm 0)
-
- (setf snd-mode-pcm 1)
-
- (setf snd-mode-ulaw 2)
-
- (setf snd-mode-alaw 3)
-
- (setf snd-mode-float 4)
-
- (setf snd-mode-upcm 5)
-
- (setf snd-mode-unknown 6)
-
- (SETF MAX-STOP-TIME 10E20)
-
- (SETF MIN-START-TIME -10E20)
-
- (setf OP-AVERAGE 1) (setf OP-PEAK 2)
-
diff --git a/lib-src/libnyquist/nyqsrc/sndmax.c b/lib-src/libnyquist/nyqsrc/sndmax.c
deleted file mode 100644
index be41808..0000000
--- a/lib-src/libnyquist/nyqsrc/sndmax.c
+++ /dev/null
@@ -1,72 +0,0 @@
-/* sndmax.c -- computes the maximum amplitude in a sound */
-
-
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm min->MIN; fix compiler warning
- */
-
-#ifdef UNIX
-#include "sys/types.h"
-#endif
-#include <stdio.h>
-/* #include "snd.h" */
-#include "xlisp.h"
-#include "sound.h"
-#include "falloc.h"
-#include "sndmax.h"
-#include "extern.h"
-
-double sound_max(LVAL snd_expr, long n)
-{
- LVAL s_as_lval;
- sound_type s = NULL;
- long blocklen;
- sample_block_values_type sbufp;
- register double maximum = 0;
-
- s_as_lval = xleval(snd_expr);
- /* BE CAREFUL - DO NOT ALLOW GC TO RUN WHILE LVAL IS UNPROTECTED */
- if (exttypep(s_as_lval, a_sound)) {
- /* if snd_expr was simply a symbol, then s now points to
- a shared sound_node. If we read samples from it, then
- the sound bound to the symbol will be destroyed, so
- copy it first. If snd_expr was a real expression that
- computed a new value, then the next garbage collection
- will reclaim the sound_node. We need to make the new
- sound reachable by the garbage collector to that any
- lisp data reachable from the sound do not get collected.
- To make the sound reachable, we need to allocate a node,
- and the GC might run, so we need to protect the OLD s
- but then make it unreachable.
- We will let the GC collect the sound in the end.
- */
- xlprot1(s_as_lval);
- s = sound_copy(getsound(s_as_lval));
- s_as_lval = cvsound(s); /* destroys only ref. to original */
- /* printf("sound_max: copy is %x, lval %x\n", s, s_as_lval); */
- while (n > 0) {
- long togo, j;
- sample_block_type sampblock =
- sound_get_next(s, &blocklen);
- if (sampblock == zero_block || blocklen == 0) {
- break;
- }
- togo = MIN(blocklen, n);
- sbufp = sampblock->samples;
- for (j = 0; j < togo; j++) {
- register double samp = *sbufp++;
- if (samp > maximum) maximum = samp;
- else if (-samp > maximum) maximum = -samp;
- }
- n -= togo;
- }
- xlpop();
- } else {
- xlerror("sound_max: expression did not return a sound",
- s_as_lval);
- }
- return maximum * s->scale;
-}
-
-
diff --git a/lib-src/libnyquist/nyqsrc/sndmax.h b/lib-src/libnyquist/nyqsrc/sndmax.h
deleted file mode 100644
index b18f294..0000000
--- a/lib-src/libnyquist/nyqsrc/sndmax.h
+++ /dev/null
@@ -1,4 +0,0 @@
-/* sndmax.h -- header to write sounds to files */
-
-double sound_max(LVAL snd_expr, long n);
-/* LISP: (SND-MAX ANY FIXNUM) */
diff --git a/lib-src/libnyquist/nyqsrc/sndread.c b/lib-src/libnyquist/nyqsrc/sndread.c
deleted file mode 100644
index 73c8978..0000000
--- a/lib-src/libnyquist/nyqsrc/sndread.c
+++ /dev/null
@@ -1,219 +0,0 @@
-/* sndread.c -- read sound files */
-
-/* CHANGELOG
- *
- * 29Jun95 RBD ULAW fixed problems with signed chars
- * 28Apr03 dm explicitly declare sndread_file_open_count as int
- */
-
-#include "switches.h"
-#include "stdio.h"
-#include "string.h"
-#ifdef UNIX
-#include "sys/file.h"
-#else
-/* #include <unistd.h> */
-#ifdef WINDOWS
-#include <sys/stat.h>
-#include "io.h"
-#else
-#include <stat.h>
-#endif
-#define L_SET SEEK_SET
-#define L_INCR SEEK_CUR
-#define PROTECTION
-#endif
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "snd.h"
-#include "xlisp.h"
-#include "sound.h"
-#include "falloc.h"
-#include "sndread.h"
-#include "multiread.h"
-
-/* file.h doesn't define O_RDONLY under RS6K AIX */
-#ifndef O_RDONLY
-#define O_RDONLY 0
-#endif
-
-static int sndread_file_open_count = 0;
-
-void read__fetch(susp, snd_list)
- register read_susp_type susp;
- snd_list_type snd_list;
-{
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
- /* allow up to 4 bytes/sample: */
- char input_buffer[max_sample_block_len * 4];
- int in_count;
- float peak;
-
- falloc_sample_block(out, "read__fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- in_count = snd_read(&susp->snd, input_buffer, max_sample_block_len);
-
- n = in_count;
-
- /* don't read too many */
- if (n > (susp->cnt - susp->susp.current)) {
- n = susp->cnt - susp->susp.current;
- }
-
- /* NOTE: this could be optimized for cvt_from_float_32 by reading
- * raw bytes from the file directly into out_ptr, but 32-bit files
- * do not seem important to optimize for.
- */
- (*susp->cvtfn)((void *) out_ptr, (void *) input_buffer,
- n, 1.0F, &peak);
-
- snd_list->block_len = n;
- susp->susp.current += n;
-
- if (n == 0) {
- /* we didn't read anything, but can't return length zero, so
- convert snd_list to pointer to zero block */
- snd_list_terminate(snd_list);
- } else if (n < max_sample_block_len) {
- /* this should close file and free susp */
- snd_list_unref(snd_list->u.next);
- /* if something is in buffer, terminate by pointing to zero block */
- snd_list->u.next = zero_snd_list;
- }
-} /* read__fetch */
-
-
-void read_free(read_susp_type susp)
-{
- (void) snd_close(&susp->snd);
- sndread_file_open_count--;
- ffree_generic(susp, sizeof(read_susp_node), "read_free");
-}
-
-
-void read_print_tree(read_susp_type susp, int n)
-{
-}
-
-
-LVAL snd_make_read(
- unsigned char *filename, /* file to read */
- time_type offset, /* offset to skip (in seconds) */
- time_type t0, /* start time of resulting sound */
- long *format, /* AIFF, IRCAM, NeXT, etc. */
- long *channels, /* number of channels */
- long *mode, /* sample format: PCM, ALAW, etc. */
- long *bits, /* BPS: bits per sample */
- long *swap, /* swap bytes? */
- double *srate, /* srate: sample rate */
- double *dur, /* duration (in seconds) to read */
- long *flags, /* which parameters have been set */
- long *byte_offset) /* byte offset in file of first sample */
-{
- register read_susp_type susp;
- /* srate specified as input parameter */
- sample_type scale_factor = 1.0F;
- long bytes_per_frame;
- long bytes_of_data;
-
- falloc_generic(susp, read_susp_node, "snd_make_read");
-
- susp->snd.device = SND_DEVICE_FILE;
- susp->snd.write_flag = SND_READ;
- strcpy(susp->snd.u.file.filename, (char *) filename);
- susp->snd.u.file.header = *format;
- susp->snd.u.file.end_offset = 1000000000; /* 1 gig, in case open doesn't set it */
- susp->snd.format.channels = *channels;
- susp->snd.format.mode = *mode;
- susp->snd.format.bits = *bits;
- susp->snd.u.file.swap = *swap;
- susp->snd.format.srate = *srate;
-
- if (SND_SUCCESS != snd_open(&susp->snd, flags)) {
- char error[240];
- sprintf(error, "SND-READ: Cannot open file '%s'", filename);
- xlfail(error);
- }
- if (susp->snd.format.channels < 1) {
- snd_close(&susp->snd);
- xlfail("Must specify 1 or more channels");
- }
-
- if (offset < 0.0) xlfail("Negative offset");
- else if (offset > 0.0) {
- if (snd_seek(&susp->snd, offset) != SND_SUCCESS) {
- snd_close(&susp->snd);
- return NIL;
- }
- }
-
- /* see if file is shorter than requested duration and adjust */
- bytes_of_data = susp->snd.u.file.end_offset - susp->snd.u.file.byte_offset;
- bytes_per_frame = snd_bytes_per_frame(&susp->snd);
- if ((*flags & SND_HEAD_LEN) &&
- (((long) (*dur * susp->snd.format.srate + 0.5)) * bytes_per_frame >
- bytes_of_data)) {
- *dur = (bytes_of_data / bytes_per_frame) / susp->snd.format.srate;
- }
-
- /* initialize susp state */
- susp->susp.sr = susp->snd.format.srate;
- susp->susp.t0 = t0;
- susp->bytes_per_sample = (susp->snd.format.bits + 7) >> 3;
- susp->susp.mark = NULL;
- susp->susp.print_tree = read_print_tree;
- susp->susp.current = 0;
- susp->cnt = (long) ((*dur * susp->snd.format.srate) + 0.5);
-
- /* convert_from functions */
- if (susp->snd.format.bits == 8)
- susp->cvtfn = cvt_from_8[susp->snd.format.mode];
- else if (susp->snd.format.bits == 16)
- susp->cvtfn = cvt_from_16[susp->snd.format.mode];
- else if (susp->snd.format.bits == 32)
- susp->cvtfn = cvt_from_32[susp->snd.format.mode];
- else susp->cvtfn = cvt_from_unknown;
-
- if (susp->cvtfn == cvt_from_unknown) {
- snd_close(&susp->snd);
- return NIL;
- }
-
- *format = susp->snd.u.file.header;
- *channels = susp->snd.format.channels;
- *mode = susp->snd.format.mode;
- *bits = susp->snd.format.bits;
- *swap = susp->snd.u.file.swap;
- *srate = susp->snd.format.srate;
- *byte_offset = susp->snd.u.file.byte_offset;
-
- sndread_file_open_count++;
-#ifdef MACINTOSH
- if (sndread_file_open_count > 24) {
- nyquist_printf("Warning: more than 24 sound files are now open\n");
- }
-#endif
-
- if (susp->snd.format.channels == 1) {
- susp->susp.fetch = read__fetch;
- susp->susp.free = read_free;
- susp->susp.name = "read";
- return cvsound(sound_create((snd_susp_type)susp, t0,
- susp->snd.format.srate,
- scale_factor));
- } else {
- susp->susp.fetch = multiread_fetch;
- susp->susp.free = multiread_free;
- susp->susp.name = "multiread";
- return multiread_create(susp);
- }
-}
-
-
-
-
diff --git a/lib-src/libnyquist/nyqsrc/sndread.h b/lib-src/libnyquist/nyqsrc/sndread.h
deleted file mode 100644
index 51e265b..0000000
--- a/lib-src/libnyquist/nyqsrc/sndread.h
+++ /dev/null
@@ -1,21 +0,0 @@
-/* fileio.h -- Nyquist code to read sound files */
-
-/* for multiple channel files, one susp is shared by all sounds */
-/* the susp in turn must point back to all sound list tails */
-
-typedef struct read_susp_struct {
- snd_susp_node susp;
- snd_node snd;
- snd_list_type *chan; /* array of back pointers */
- long bytes_per_sample; /* handy for calculations */
- long cnt; /* how many sample frames to read */
- cvtfn_type cvtfn;
-} read_susp_node, *read_susp_type;
-
-
-LVAL snd_make_read(unsigned char *filename, time_type offset, time_type t0,
- long *format, long *channels, long *mode, long *bits, long *swap,
- double *srate, double *dur, long *flags, long *byte_offset);
-/* LISP: (SND-READ STRING ANYNUM ANYNUM FIXNUM* FIXNUM* FIXNUM* FIXNUM* FIXNUM* ANYNUM* ANYNUM* FIXNUM^ FIXNUM^) */
-
-void read_free();
diff --git a/lib-src/libnyquist/nyqsrc/sndseq.c b/lib-src/libnyquist/nyqsrc/sndseq.c
deleted file mode 100644
index d65343c..0000000
--- a/lib-src/libnyquist/nyqsrc/sndseq.c
+++ /dev/null
@@ -1,348 +0,0 @@
-/* sndseq.c -- return a signal until its logical stop, then
- evaluate a closure to get a signal and convert to an add
- of two signals */
-
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm changes for portability and fix compiler warnings
- */
-
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-#include "falloc.h"
-#include "scale.h"
-#include "add.h"
-#include "extern.h"
-#include "cext.h"
-#include "assert.h"
-
-#define SNDSEQDBG 0
-#define D if (SNDSEQDBG)
-
-/* Note: this structure is identical to an add_susp structure up
- to the field output_per_s2 so that we can convert this into
- an add after eval'ing the closure. Since this struct is bigger
- than an add, make sure not to clobber the "free" routine
- (sndseq_free) or else we'll leak memory.
- */
-typedef struct sndseq_susp_struct {
- snd_susp_node susp;
- boolean started;
- int terminate_bits;
- long terminate_cnt;
- int logical_stop_bits;
- boolean logically_stopped;
- sound_type s1;
- long s1_cnt;
- sample_block_type s1_bptr; /* block pointer */
- sample_block_values_type s1_ptr;
- sound_type s2;
- long s2_cnt;
- sample_block_type s2_bptr; /* block pointer */
- sample_block_values_type s2_ptr;
-
- /* support for interpolation of s2 */
- sample_type s2_x1_sample;
- double s2_phase;
- double s2_phase_incr;
-
- /* support for ramp between samples of s2 */
- double output_per_s2;
-
- /* sndseq-specific data starts here */
- LVAL closure;
-
-} sndseq_susp_node, *sndseq_susp_type;
-
-
-void sndseq_fetch(sndseq_susp_type, snd_list_type);
-void sndseq_zero_fill_fetch(sndseq_susp_type, snd_list_type);
-void sndseq_free();
-
-extern LVAL s_stdout;
-
-void sndseq_mark(sndseq_susp_type susp)
-{
-/* nyquist_printf("sndseq_mark(%x)\n", susp);*/
-/* nyquist_printf("marking s1@%x in sndseq@%x\n", susp->s1, susp); */
- sound_xlmark(susp->s1);
- if (susp->closure) mark(susp->closure);
-}
-
-
-
-/* sndseq_fetch returns blocks of s1 until the logical stop time of s1 */
-/**/
-void sndseq_fetch(susp, snd_list)
- register sndseq_susp_type susp;
- snd_list_type snd_list;
-{
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
-/* nyquist_printf("sndseq_fetch called: s1_cnt %d\n", susp->s1_cnt); */
- /*
- * first compute how many samples to copy (or transfer)
- */
-
- /* get next samples; in add, the call is:
- * susp_check_term_log_block_samples(s1, s1_bptr, s1_ptr, s1_cnt, 1, 3);
- *
- * the plan here is tricky: if s1 has logically stopped, then evaluate
- * the closure to get signal s2. Then convert sndseq into an add.
- */
- if (susp->s1_cnt == 0) {
- susp_get_block_samples(s1, s1_bptr, s1_ptr, s1_cnt);
- if (susp->s1_ptr == zero_block->samples) {
- susp->terminate_bits = 1; /* mark s1 as terminated */
- }
-/* nyquist_printf("sndseq_fetch: s1-lsc %d, current %d cnt %d\n",
- susp->s1->logical_stop_cnt, susp->s1->current, susp->s1_cnt); */
- }
-
- if (susp->s1->logical_stop_cnt != UNKNOWN &&
- susp->s1->logical_stop_cnt == susp->s1->current - susp->s1_cnt) {
- time_type now = susp->susp.t0 + susp->susp.current / susp->susp.sr;
- /* note: cons args are protected from GC: */
- LVAL result;
- long delay; /* sample delay to s2 */
-/* stats();gc();stats();*/
-
- xlsave1(result);
-
-D nyquist_printf("sndseq_fetch: about to eval closure at %g, "
- "susp->susp.t0 %g, susp.current %d:\n",
- now, susp->susp.t0, (int)susp->susp.current);
- result = xleval(cons(susp->closure, consa(cvflonum(now))));
-
- susp->logical_stop_bits = 1; /* mark s1 as logically stopped */
- if (exttypep(result, a_sound)) {
- susp->s2 = sound_copy(getsound(result));
-D nyquist_printf("sndseq: copied result from closure is %p\n",
- susp->s2);
- } else xlerror("closure did not return a sound", result);
-D nyquist_printf("in sndseq: logically stopped; "
- "%p returned from evform\n",
- susp->s2);
- susp->closure = NULL; /* allow garbage collection now */
- result = NIL;
-
- /**** Now convert to add ****/
- susp->susp.mark = add_mark;
- susp->susp.log_stop_cnt = UNKNOWN; /* will be recomputed by add */
- susp->susp.print_tree = add_print_tree;
-
- /* assume sample rates are the same */
- if (susp->s1->sr != susp->s2->sr)
- xlfail("in sndseq: sample rates must match");
-
- /* take care of scale factor, if any */
- if (susp->s2->scale != 1.0) {
- // stdputstr("normalizing next sound in a seq\n");
- susp->s2 = snd_make_normalize(susp->s2);
- }
-
- /* figure out which add fetch routine to use */
- delay = ROUND((susp->s2->t0 - now) * susp->s1->sr);
- if (susp->terminate_bits) { /* s1 is done, just get s2 now */
- sound_unref(susp->s1);
- susp->s1 = NULL;
- if (delay > 0) { /* need to fill zeros */
- susp->susp.fetch = add_zero_fill_nn_fetch;
- susp->susp.name = "sndseq:add_zero_fill_nn_fetch";
- } else {
- susp->susp.fetch = add_s2_nn_fetch;
- susp->susp.name = "sndseq:add_s2_nn_fetch";
- }
- } else if (delay > 0) { /* fill hole between s1 and s2 */
-D stdputstr("using add_s1_nn_fetch\n");
- susp->susp.fetch = add_s1_nn_fetch;
- susp->susp.name = "sndseq:add_s1_nn_fetch";
- } else {
- susp->susp.fetch = add_s1_s2_nn_fetch;
- susp->susp.name = "sndseq:add_s1_s2_nn_fetch";
- }
-
- susp->s2_phase_incr = susp->s2->sr / susp->susp.sr;
- susp->output_per_s2 = susp->susp.sr / susp->s2->sr;
-
-D stdputstr("in sndseq: calling add's fetch\n");
- (*(susp->susp.fetch))(susp, snd_list);
-D stdputstr("in sndseq: returned from add's fetch\n");
-/* gc();*/
- xlpop();
- return;
- }
-
- /* don't run past the s1 input sample block: */
- togo = susp->s1_cnt;
-/* nyquist_printf("sndseq_fetch: togo initially %d then ", togo); */
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + togo) {
- togo = susp->terminate_cnt - susp->susp.current;
- }
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - susp->susp.current;
- togo = MIN(togo, to_stop);
- }
- assert(togo >= 0);
-
-/* nyquist_printf("%d\n", togo);*/
- /*
- * two cases: copy a partial block or manipulate pointers for copyless
- * transfer of whole block (may not be full block):
- *
- * copy partial block when:
- * o samples begin in middle of block
- * o stopping time is before end of block (when other signal splits
- * the block for this signal). This happens if the logical
- * stop time was externally dictated and falls mid-block.
- * transfer (copyless) block when:
- * o the block is of maximum size
- * o the block is small due to logical stop time or termination time
- */
- if (susp->s1_ptr == susp->s1_bptr->samples && susp->s1_cnt == togo) {
- /*
- * we want to copy this whole block (starting at the beginning
- * and going to the rest of the block) -- just do pointers.
- */
-
- /* just fetch and pass blocks on */
-/* nyquist_printf("sndseq (s1_nn) %x starting uncopy, togo %d\n", susp, togo); */
- snd_list->block = susp->s1_bptr;
- /* the zero_block indicates termination, don't copy it! Use
- * internal_zero_block instead. It is also filled with zeros,
- * but does not indicate termination. We must check for zero_block
- * because the signal may have a logical stop time specified that
- * extends beyond its termination time.
- */
- if (snd_list->block == zero_block)
- snd_list->block = internal_zero_block;
- (snd_list->block->refcnt)++;
-/* nyquist_printf("sndseq (s1_nn) %x shared block %x\n", susp, susp->s1_bptr);*/
-
- susp_took(s1_cnt, togo);
- snd_list->block_len = togo;
- } else {
- /*
- * we want to copy a partial block
- */
-
- /* snd_list is the one with a null block */
- /* put a fresh, clean block in the snd_list (get new snd_list later) */
- falloc_sample_block(out, "sndseq_fetch");
- snd_list->block = out;
- out_ptr = out->samples;
- /* nyquist_printf("sndseq (s1_nn) %x new block %x\n", susp, out); */
-
- n = togo;
- /* nyquist_printf("sndseq (s1_nn) %x starting copy loop, togo %d\n", susp, togo); */
- while (n--) { /* the inner sample computation loop */
- /* scale? */
- *out_ptr++ = *(susp->s1_ptr++);
- } /* inner loop */
-
- susp_took(s1_cnt, togo);
- snd_list->block_len = togo;
- }
-
- /* add a new snd_list for the susp */
- susp->susp.current += togo;
-
-} /* sndseq_fetch */
-
-
-void sndseq_free(sndseq_susp_type susp)
-{
- sound_unref(susp->s1);
- sound_unref(susp->s2);
- ffree_generic(susp, sizeof(sndseq_susp_node), "sndseq_free");
-}
-
-
-void sndseq_print_tree(sndseq_susp_type susp, int n)
-{
- indent(n);
- stdputstr("s1:");
- sound_print_tree_1(susp->s1, n);
-
- indent(n);
- stdputstr("closure:");
- stdprint(susp->closure);
-
- indent(n);
- stdputstr("s2:");
- sound_print_tree_1(susp->s2, n);
-}
-
-
-
-
-sound_type snd_make_sndseq(s1, closure)
- sound_type s1;
- LVAL closure;
-{
- register sndseq_susp_type susp;
- /* t0 specified as input parameter */
- sample_type scale_factor = 1.0F;
- sound_type result;
-
- xlprot1(closure);
- falloc_generic(susp, sndseq_susp_node, "snd_make_sndseq");
-
- if (s1->scale != 1.0) {
- /* stdputstr("normalizing first sound in a seq\n"); */
- s1 = snd_make_normalize(s1);
- }
-
- susp->susp.fetch = sndseq_fetch;
-
- susp->terminate_cnt = UNKNOWN;
- susp->terminate_bits = 0; /* bits for s1 and s2 termination */
- susp->logical_stop_bits = 0; /* bits for s1 and s2 logical stop */
-
- /* initialize susp state */
- susp->susp.free = sndseq_free;
- susp->susp.sr = s1->sr;
- susp->susp.t0 = s1->t0;
- susp->susp.mark = sndseq_mark;
- susp->susp.print_tree = sndseq_print_tree;
- susp->susp.name = "sndseq";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = s1->logical_stop_cnt;
- if (!(susp->susp.log_stop_cnt >= 0 || susp->susp.log_stop_cnt == UNKNOWN)) {
- xlerror("Behaviors in SEQ must appear in chronological order", closure);
- }
- susp->started = false;
- susp->susp.current = 0;
- susp->s1 = s1;
- susp->s1_cnt = 0;
- susp->s2 = NULL;
- susp->s2_cnt = 0;
- susp->s2_phase = 0.0;
-/* susp->s2_phase_incr = ??
- susp->output_per_s2 = ?? */
- susp->closure = closure;
- result = sound_create((snd_susp_type)susp, susp->susp.t0, susp->susp.sr, scale_factor);
- xlpopn(1);
- return result;
-}
-
-
-sound_type snd_sndseq(s1, closure)
- sound_type s1;
- LVAL closure;
-{
- sound_type s1_copy = sound_copy(s1);
- return snd_make_sndseq(s1_copy, closure);
-}
diff --git a/lib-src/libnyquist/nyqsrc/sndseq.h b/lib-src/libnyquist/nyqsrc/sndseq.h
deleted file mode 100644
index 03fdd11..0000000
--- a/lib-src/libnyquist/nyqsrc/sndseq.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_sndseq();
-sound_type snd_sndseq();
- /* LISP: (SND-SEQ SOUND ANY) */
diff --git a/lib-src/libnyquist/nyqsrc/sndwrite.c b/lib-src/libnyquist/nyqsrc/sndwrite.c
deleted file mode 100644
index 44b416c..0000000
--- a/lib-src/libnyquist/nyqsrc/sndwrite.c
+++ /dev/null
@@ -1,639 +0,0 @@
-/* sndwrite.c -- write sounds to files */
-
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm changes for portability and fix compiler warnings
- */
-
-#include "stdlib.h"
-#include "switches.h"
-#include "string.h"
-#ifdef UNIX
-#include "sys/types.h"
-#endif
-#ifdef WINDOWS
-#include <io.h>
-#endif
-#include <stdio.h>
-/* include sound.h first because it includes math.h
- * which declares abs(). cext.h #defines abs()!
- * sound.h depends on xlisp.h
- */
-#include "xlisp.h"
-#include "sound.h"
-#include "cext.h"
-#include "userio.h"
-#include "falloc.h"
-#include "sndwrite.h"
-#include "extern.h"
-#include "snd.h"
-#ifdef UNIX
-#include "sys/file.h"
-/* #include <sys/stat.h>*/
-#include <netinet/in.h>
-#else
-#ifdef MACINTOSH
-#include <unistd.h>
-#include <stat.h>
-#define L_SET SEEK_SET
-#define L_INCR SEEK_CUR
-#endif
-#endif
-
-#define D if (0)
-
-int sndwrite_trace = 0; /* debugging */
-
-sample_type sound_save_sound(LVAL s_as_lval, long n, snd_type snd,
- char *buf, long *ntotal, snd_type player);
-
-sample_type sound_save_array(LVAL sa, long n, snd_type snd,
- char *buf, long *ntotal, snd_type player);
-
-unsigned char st_linear_to_ulaw(int sample);
-
-
-typedef struct {
- sound_type sound;
- long cnt;
- sample_block_values_type ptr;
- double scale;
- int terminated;
-} sound_state_node, *sound_state_type;
-
-
-LVAL prepare_audio(LVAL play, snd_type snd, snd_type player)
-{
- long flags;
- if (play == NIL) return NIL;
- player->format = snd->format;
- player->u.audio.devicename[0] = 0;
- player->u.audio.interfacename[0] = 0;
- if (snd_open(player, &flags) != SND_SUCCESS) {
- xlabort("snd_save -- could not open audio output");
- }
- /* make sure player and snd are compatible -- if not, set player to NULL
- * and print a warning message
- */
- if (player->format.channels == snd->format.channels &&
- player->format.mode == snd->format.mode &&
- player->format.bits == snd->format.bits) {
- /* ok so far, check out the sample rate */
- if (player->format.srate != snd->format.srate) {
- char msg[100];
- sprintf(msg, "%s(%g)%s(%g).\n",
- "Warning: file sample rate ", snd->format.srate,
- " differs from audio playback sample rate ",
- player->format.srate);
- stdputstr(msg);
- }
- } else {
- stdputstr("File format not supported by audio output.\n");
- return NIL;
- }
- return play;
-}
-
-
-/* finish_audio -- flush the remaining samples, then close */
-/**/
-void finish_audio(snd_type player)
-{
- /* note that this is a busy loop! */
- while (snd_flush(player) != SND_SUCCESS) ;
- snd_close(player);
-}
-
-
-/* write_to_audio -- handle audio output from buffer */
-/*
- * We want to write as soon as space is available so that
- * a full sound buffer can be queued up for output. This
- * may require transferring only part of buf, so we keep
- * track of progress and output whenever space is available.
- */
-void write_to_audio(snd_type player, void *buf, long buflen)
-{
- long rslt;
- while (buflen) {
- /* this loop is a busy-wait loop! */
- rslt = snd_poll(player); /* wait for buffer space */
- rslt = min(rslt, buflen);
- if (rslt) {
- snd_write(player, buf, rslt);
- buf = (void *) ((char *) buf +
- (rslt * snd_bytes_per_frame(player)));
- buflen -= rslt;
- }
- }
-}
-
-
-double sound_save(
- LVAL snd_expr,
- long n,
- unsigned char *filename,
- long format,
- long mode,
- long bits,
- long swap,
- double *sr,
- long *nchans,
- double *duration,
- LVAL play)
-{
- LVAL result;
- char *buf;
- long ntotal;
- double max_sample;
- snd_node snd;
- snd_node player;
- long flags;
-
- snd.device = SND_DEVICE_FILE;
- snd.write_flag = SND_WRITE;
- strcpy(snd.u.file.filename, (char *) filename);
- snd.u.file.file = -1; /* this is a marker that snd is unopened */
- snd.u.file.header = format;
- snd.format.mode = mode;
- snd.format.bits = bits;
- snd.u.file.swap = swap;
-
- player.device = SND_DEVICE_AUDIO;
- player.write_flag = SND_WRITE;
- player.u.audio.devicename[0] = '\0';
- player.u.audio.descriptor = NULL;
- player.u.audio.protocol = SND_COMPUTEAHEAD;
- player.u.audio.latency = 1.0;
- player.u.audio.granularity = 0.0;
-
- if ((buf = (char *) malloc(max_sample_block_len * MAX_SND_CHANNELS *
- sizeof(float))) == NULL) {
- xlabort("snd_save -- couldn't allocate memory");
- }
-
- result = xleval(snd_expr);
- /* BE CAREFUL - DO NOT ALLOW GC TO RUN WHILE RESULT IS UNPROTECTED */
- if (vectorp(result)) {
- /* make sure all elements are of type a_sound */
- long i = getsize(result);
- *nchans = snd.format.channels = i;
- while (i > 0) {
- i--;
- if (!exttypep(getelement(result, i), a_sound)) {
- xlerror("sound_save: array has non-sound element",
- result);
- }
- }
- /* assume all are the same: */
- *sr = snd.format.srate = getsound(getelement(result, 0))->sr;
-
- /* note: if filename is "", then don't write file; therefore,
- * write the file if (filename[0])
- */
- if (filename[0] && snd_open(&snd, &flags) != SND_SUCCESS) {
- xlabort("snd_save -- could not open sound file");
- }
-
- play = prepare_audio(play, &snd, &player);
-
- max_sample = sound_save_array(result, n, &snd,
- buf, &ntotal, (play == NIL ? NULL : &player));
- *duration = ntotal / *sr;
- if (filename[0]) snd_close(&snd);
- if (play != NIL) finish_audio(&player);
- } else if (exttypep(result, a_sound)) {
- *nchans = snd.format.channels = 1;
- *sr = snd.format.srate = (getsound(result))->sr;
- if (filename[0] && snd_open(&snd, &flags) != SND_SUCCESS) {
- xlabort("snd_save -- could not open sound file");
- }
-
- play = prepare_audio(play, &snd, &player);
-
- max_sample = sound_save_sound(result, n, &snd,
- buf, &ntotal, (play == NIL ? NULL : &player));
- *duration = ntotal / *sr;
- if (filename[0]) snd_close(&snd);
- if (play != NIL) finish_audio(&player);
- } else {
- xlerror("sound_save: expression did not return a sound",
- result);
- max_sample = 0.0;
- }
- free(buf);
- return max_sample;
-}
-
-
-double sound_overwrite(
- LVAL snd_expr,
- long n,
- unsigned char *filename,
- long byte_offset,
- long header,
- long mode,
- long bits,
- long swap,
- double sr,
- long nchans,
- double *duration)
-{
- LVAL result;
- char *buf;
- char error[140];
- long ntotal;
- double max_sample;
- snd_node snd;
- long flags;
-
- snd.device = SND_DEVICE_FILE;
- snd.write_flag = SND_OVERWRITE;
- strcpy(snd.u.file.filename, (char *) filename);
- snd.u.file.header = header;
- snd.u.file.byte_offset = byte_offset;
- snd.format.channels = nchans;
- snd.format.mode = mode;
- snd.format.bits = bits;
- snd.u.file.swap = swap;
- snd.format.srate = sr;
-
- if ((buf = (char *) malloc(max_sample_block_len * MAX_SND_CHANNELS *
- sizeof(float))) == NULL) {
- xlabort("snd_overwrite: couldn't allocate memory");
- }
-
- if (snd_open(&snd, &flags) != SND_SUCCESS) {
- sprintf(error,
- "snd_overwrite: cannot open file %s and seek to %d",
- filename, (int)byte_offset);
- free(buf);
- xlabort(error);
- }
-
- result = xleval(snd_expr);
- /* BE CAREFUL - DO NOT ALLOW GC TO RUN WHILE RESULT IS UNPROTECTED */
- if (vectorp(result)) {
- /* make sure all elements are of type a_sound */
- long i = getsize(result);
- if (nchans != i) {
- sprintf(error, "%s%d%s%d%s",
- "snd_overwrite: number of channels in sound (",
- (int)i,
- ") does not match\n number of channels in file (",
- (int)nchans,
- ")");
- free(buf);
- snd_close(&snd);
- xlabort(error);
- }
- while (i > 0) {
- i--;
- if (!exttypep(getelement(result, i), a_sound)) {
- free(buf);
- snd_close(&snd);
- xlerror("sound_save: array has non-sound element",
- result);
- }
- }
- /* assume all are the same: */
- if (sr != getsound(getelement(result, 0))->sr) {
- sprintf(error, "%s%g%s%g%s",
- "snd_overwrite: sample rate in sound (",
- getsound(getelement(result, 0))->sr,
- ") does not match\n sample rate in file (",
- sr,
- ")");
- free(buf);
- snd_close(&snd);
- xlabort(error);
- }
-
- max_sample = sound_save_array(result, n, &snd, buf, &ntotal, NULL);
- *duration = ntotal / sr;
- } else if (exttypep(result, a_sound)) {
- if (nchans != 1) {
- sprintf(error, "%s%s%d%s",
- "snd_overwrite: number of channels in sound (1",
- ") does not match\n number of channels in file (",
- (int)nchans,
- ")");
- free(buf);
- snd_close(&snd);
- xlabort(error);
- }
-
- if (sr != getsound(result)->sr) {
- sprintf(error, "%s%g%s%g%s",
- "snd_overwrite: sample rate in sound (",
- getsound(result)->sr,
- ") does not match\n sample rate in file (",
- sr,
- ")");
- free(buf);
- snd_close(&snd);
- xlabort(error);
- }
-
- max_sample = sound_save_sound(result, n, &snd, buf, &ntotal, NULL);
- *duration = ntotal / sr;
- } else {
- free(buf);
- snd_close(&snd);
- xlerror("sound_save: expression did not return a sound",
- result);
- max_sample = 0.0;
- }
- free(buf);
- snd_close(&snd);
- return max_sample;
-}
-
-
-cvtfn_type find_cvt_to_fn(snd_type snd, char *buf)
-{
- cvtfn_type cvtfn;
- /* find the conversion function */
- if (snd->format.bits == 8) cvtfn = cvt_to_8[snd->format.mode];
- else if (snd->format.bits == 16) cvtfn = cvt_to_16[snd->format.mode];
- else if (snd->format.bits == 32) cvtfn = cvt_to_32[snd->format.mode];
- else cvtfn = cvt_to_unknown;
-
- if (cvtfn == cvt_to_unknown) {
- char error[50];
- sprintf(error, "Cannot write %d-bit samples in mode %s",
- (int)snd->format.bits, snd_mode_to_string(snd->format.mode));
- free(buf);
- snd_close(snd);
- xlabort(error);
- }
- return cvtfn;
-}
-
-
-sample_type sound_save_sound(LVAL s_as_lval, long n, snd_type snd,
- char *buf, long *ntotal, snd_type player)
-{
- long blocklen;
- long buflen;
- sound_type s;
- long debug_unit; /* print messages at intervals of this many samples */
- long debug_count; /* next point at which to print a message */
- sample_type max_sample = 0.0F;
- cvtfn_type cvtfn;
- *ntotal = 0;
-
- /* if snd_expr was simply a symbol, then s now points to
- a shared sound_node. If we read samples from it, then
- the sound bound to the symbol will be destroyed, so
- copy it first. If snd_expr was a real expression that
- computed a new value, then the next garbage collection
- will reclaim the sound_node. We need to make the new
- sound reachable by the garbage collector to that any
- lisp data reachable from the sound do not get collected.
- To make the sound reachable, we need to allocate a node,
- and the GC might run, so we need to protect the OLD s
- but then make it unreachable.
- We will let the GC collect the sound in the end.
- */
- xlprot1(s_as_lval);
- s = sound_copy(getsound(s_as_lval));
- s_as_lval = cvsound(s); /* destroys only ref. to original */
-
- /* for debugging */
-/* printing_this_sound = s;*/
-
-
- debug_unit = debug_count = (long) max(snd->format.srate, 10000.0);
-
- cvtfn = find_cvt_to_fn(snd, buf);
-
-#ifdef MACINTOSH
- if (player) {
- gprintf(TRANS, "Playing audio: Click and hold mouse button to stop playback.\n");
- }
-#endif
-
- while (n > 0) {
- long togo;
- float peak;
- sample_block_type sampblock = sound_get_next(s, &blocklen);
- oscheck();
-#ifdef SNAPSHOTS
- stdputstr(".");
- if (sound_created_flag) {
- stdputstr("SNAPSHOT: ");
- sound_print_tree(printing_this_sound);
- sound_created_flag = false;
- }
- fflush(stdout);
-#endif
- if (sampblock == zero_block || blocklen == 0) {
- break;
- }
- togo = min(blocklen, n);
-
- buflen = (*cvtfn)((void *) buf, (void *) sampblock->samples,
- togo, s->scale, &peak);
- if (peak > max_sample) max_sample = peak;
-
-#ifdef MACINTOSH
- if (Button()) {
- if (player) {
- snd_reset(player);
- }
- gprintf(TRANS, "\n\nStopping playback...\n\n\n");
- break;
- }
-#endif
-
- if (snd->u.file.file != -1) snd_write(snd, (void *) buf, buflen);
- if (player) write_to_audio(player, (void *) buf, buflen);
-
- n -= togo;
- *ntotal += togo;
- if (*ntotal > debug_count) {
- gprintf(TRANS, " %d ", *ntotal);
- fflush(stdout);
- debug_count += debug_unit;
- }
- }
- gprintf(TRANS, "\ntotal samples: %d\n", *ntotal);
- xlpop();
- return max_sample;
-}
-
-
-sample_type sound_save_array(LVAL sa, long n, snd_type snd,
- char *buf, long *ntotal, snd_type player)
-{
- long i, chans;
- long buflen;
- sound_state_type state;
- double start_time = HUGE_VAL;
- float *float_bufp;
- LVAL sa_copy;
- long debug_unit; /* print messages at intervals of this many samples */
- long debug_count; /* next point at which to print a message */
- sample_type max_sample = 0.0F;
- cvtfn_type cvtfn;
-
- *ntotal = 0;
-
- /* THE ALGORITHM: first merge floating point samples from N channels
- * into consecutive multi-channel frames in buf. Then, treat buf
- * as just one channel and use one of the cvt_to_* functions to
- * convert the data IN PLACE in the buffer (this is ok because the
- * converted data will never take more space than the original 32-bit
- * floats, so the converted data will not overwrite any floats before
- * the floats are converted
- */
-
- /* if snd_expr was simply a symbol, then sa now points to
- a shared sound_node. If we read samples from it, then
- the sounds bound to the symbol will be destroyed, so
- copy it first. If snd_expr was a real expression that
- computed a new value, then the next garbage collection
- will reclaim the sound array. See also sound_save_sound()
- */
- chans = getsize(sa);
- if (chans > MAX_SND_CHANNELS) {
- xlerror("sound_save: too many channels", sa);
- free(buf);
- snd_close(snd);
- }
- xlprot1(sa);
- sa_copy = newvector(chans);
- xlprot1(sa_copy);
-
- /* Why do we copy the array into an xlisp array instead of just
- * the state[i] array? Because some of these sounds may reference
- * the lisp heap. We must put the sounds in an xlisp array so that
- * the gc will find and mark them. xlprot1(sa_copy) makes the array
- * visible to gc.
- */
- for (i = 0; i < chans; i++) {
- sound_type s = getsound(getelement(sa, i));
- setelement(sa_copy, i, cvsound(sound_copy(s)));
- }
- sa = sa_copy; /* destroy original reference to allow GC */
-
- state = (sound_state_type) malloc(sizeof(sound_state_node) * chans);
- for (i = 0; i < chans; i++) {
- state[i].sound = getsound(getelement(sa, i));
- state[i].scale = state[i].sound->scale;
-D nyquist_printf("save scale factor %d = %g\n", (int)i, state[i].scale);
- state[i].terminated = false;
- state[i].cnt = 0; /* force a fetch */
- start_time = min(start_time, state[i].sound->t0);
- }
-
- for (i = 0; i < chans; i++) {
- if (state[i].sound->t0 > start_time)
- sound_prepend_zeros(state[i].sound, start_time);
- }
-
- /* for debugging */
-/* printing_this_sound = s;*/
-
- cvtfn = find_cvt_to_fn(snd, buf);
-
-#ifdef MACINTOSH
- if (player) {
- gprintf(TRANS, "Playing audio: Click and hold mouse button to stop playback.\n");
- }
-#endif
-
- debug_unit = debug_count = (long) max(snd->format.srate, 10000.0);
-
- while (n > 0) {
- /* keep the following information for each sound:
- has it terminated?
- pointer to samples
- number of samples remaining in block
- scan to find the minimum remaining samples and
- output that many in an inner loop. Stop outer
- loop if all sounds have terminated
- */
- int terminated = true;
- int togo = n;
- int j;
- float peak;
-
- oscheck();
-
- for (i = 0; i < chans; i++) {
- if (state[i].cnt == 0) {
- if (sndwrite_trace) {
- nyquist_printf("CALLING SOUND_GET_NEXT "
- "ON CHANNEL %d (%p)\n",
- (int)i, state[i].sound);
- sound_print_tree(state[i].sound);
- }
- state[i].ptr = sound_get_next(state[i].sound,
- &(state[i].cnt))->samples;
- if (sndwrite_trace) {
- nyquist_printf("RETURNED FROM CALL TO SOUND_GET_NEXT "
- "ON CHANNEL %d\n", (int)i);
- }
- if (state[i].ptr == zero_block->samples) {
- state[i].terminated = true;
- }
- }
- if (!state[i].terminated) terminated = false;
- togo = min(togo, state[i].cnt);
- }
-
- if (terminated) break;
-
- float_bufp = (float *) buf;
- for (j = 0; j < togo; j++) {
- for (i = 0; i < chans; i++) {
- double s = *(state[i].ptr++) * state[i].scale;
- *float_bufp++ = (float) s;
- }
- }
- // we're treating sound as mono for the conversion, so multiply
- // togo by chans to get proper number of samples, and divide by
- // chans to convert back to frame count required by snd_write
- buflen = (*cvtfn)((void *) buf, (void *) buf, togo * chans, 1.0F,
- &peak) / chans;
- if (peak > max_sample) max_sample = peak;
-#ifdef MACINTOSH
- if (Button()) {
- if (player) {
- snd_reset(player);
- }
- gprintf(TRANS, "\n\nStopping playback...\n\n\n");
- break;
- }
-#endif
-
- if (snd->u.file.file != -1) snd_write(snd, (void *) buf, buflen);
- if (player) write_to_audio(player, (void *) buf, buflen);
-
- n -= togo;
- for (i = 0; i < chans; i++) {
- state[i].cnt -= togo;
- }
- *ntotal += togo;
- if (*ntotal > debug_count) {
- gprintf(TRANS, " %d ", *ntotal);
- fflush(stdout);
- debug_count += debug_unit;
- }
- }
- gprintf(TRANS, "total samples: %d x %d channels\n",
- *ntotal, chans);
-
- /* references to sounds are shared by sa_copy and state[].
- * here, we dispose of state[], allowing GC to do the
- * sound_unref call that frees the sounds. (Freeing them now
- * would be a bug.)
- */
- free(state);
- xlpop();
- return max_sample;
-}
-
-
diff --git a/lib-src/libnyquist/nyqsrc/sndwrite.h b/lib-src/libnyquist/nyqsrc/sndwrite.h
deleted file mode 100644
index 776ac2c..0000000
--- a/lib-src/libnyquist/nyqsrc/sndwrite.h
+++ /dev/null
@@ -1,13 +0,0 @@
-/* sndwrite.h -- header to write sounds to files */
-
-double sound_save(LVAL snd_expr, long n,
- unsigned char *filename, long format,
- long mode, long bits, long swap, double *sr, long *nchans,
- double *duration, LVAL play);
-/* LISP: (SND-SAVE ANY FIXNUM STRING FIXNUM FIXNUM FIXNUM FIXNUM ANYNUM^ FIXNUM^ ANYNUM^ ANY) */
-
-double sound_overwrite(LVAL snd_expr, long n,
- unsigned char *filename, long byte_offset,
- long header, long mode, long bits, long swap, double sr, long nchans,
- double *duration);
-/* LISP: (SND-OVERWRITE ANY FIXNUM STRING FIXNUM FIXNUM FIXNUM FIXNUM FIXNUM ANYNUM FIXNUM ANYNUM^) */
diff --git a/lib-src/libnyquist/nyqsrc/sound.c b/lib-src/libnyquist/nyqsrc/sound.c
deleted file mode 100644
index 2c85557..0000000
--- a/lib-src/libnyquist/nyqsrc/sound.c
+++ /dev/null
@@ -1,1653 +0,0 @@
-/* sound.c -- nyquist sound data type */
-
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm changes for portability and fix compiler warnings
- */
-
-/* define size_t: */
-#ifdef UNIX
-#include "sys/types.h"
-#endif
-#include <stdio.h>
-#include "xlisp.h"
-#include "sound.h"
-#include "falloc.h"
-#include "samples.h"
-#include "extern.h"
-#include "debug.h"
-
-/* #define GC_DEBUG */
-#ifdef GC_DEBUG
-sound_type sound_to_watch;
-#endif
-
-/* #define SNAPSHOTS */
-
-long table_memory;
-
-sample_block_type zero_block;
-sample_block_type internal_zero_block;
-
-snd_list_type zero_snd_list;
-
-xtype_desc sound_desc;
-LVAL a_sound;
-
-static void sound_xlfree();
-static void sound_xlprint();
-static void sound_xlsave();
-static unsigned char *sound_xlrestore();
-
-void sound_print_array(LVAL sa, long n);
-void sound_print_sound(sound_type s, long n);
-void sample_block_unref(sample_block_type sam);
-
-#ifdef SNAPSHOTS
-boolean sound_created_flag = false;
-#endif
-
-
-/* xlbadsr - report a "bad combination of sample rates" error */
-LVAL snd_badsr(void)
-{
- xlfail("bad combination of sample rates");
- return NIL; /* never happens */
-}
-
-
-/* compute-phase - given a phase in radians, a wavetable specified as
- * the nominal pitch (in half steps), the table length, and the sample
- * rate, compute the sample number corresponding to the phase. This
- * routine makes it easy to initialize the table pointer at the beginning
- * of various oscillator implementations in Fugue. Note that the table
- * may represent several periods, in which case phase 360 is not the same
- * as 0. Also note that the phase increment is also computed and returned
- * through incr_ptr.
- */
-double compute_phase(phase, key, n, srate, new_srate, freq, incr_ptr)
- double phase; /* phase in degrees (depends on ANGLEBASE) */
- double key; /* the semitone number of the table played at srate */
- long n; /* number of samples */
- double srate; /* the sample rate of the table */
- double new_srate; /* sample rate of the result */
- double freq; /* the desired frequency */
- double *incr_ptr; /* the sample increment */
-{
- double period = 1.0 / step_to_hz(key);
-
- /* convert phase to sample units */
- phase = srate * period * (phase / (double) ANGLEBASE);
- /* phase is now in sample units; if phase is less than zero, then increase
- it by some number of sLength's to make it positive:
- */
- if (phase < 0)
- phase += (((int) ((-phase) / n)) + 1) * n;
-
- /* if phase is longer than the sample length, wrap it by subtracting the
- integer part of the division by sLength:
- */
- if (phase > n)
- phase -= ((int) (phase / n)) * n;
-
- /* Now figure the phase increment: to reproduce original pitch
- required incr = srate / new_srate. To get the new frequency,
- scale by freq / nominal_freq = freq * period:
- */
- *incr_ptr = (srate / new_srate) * freq * period;
- return phase;
-}
-#ifndef GCBUG
-snd_list_type gcbug_snd_list = 0;
-long blocks_to_watch_len = 0;
-sample_block_type blocks_to_watch[blocks_to_watch_max];
-
-void block_watch(long sample_block)
-{
- if (blocks_to_watch_len >= blocks_to_watch_max) {
- stdputstr("block_watch - no more space to save pointers\n");
- return;
- }
- blocks_to_watch[blocks_to_watch_len++] = (sample_block_type) sample_block;
- nyquist_printf("block_watch - added %d = %x\n",
- (int)sample_block, (int)sample_block);
-}
-
-
-/* fetch_zeros -- the fetch function for appended zeros */
-/*
- * zeros are appended when the logical stop time exceeds the
- * (physical) terminate time. This fetch function is installed
- * by snd_list_terminate(). When appending zeros, we just return
- * a pointer to the internal_zero_block and increment current until
- * it reaches log_stop_cnt. Then we call snd_list_terminate() to
- * finish off the sound list.
- */
-
-void fetch_zeros(snd_susp_type susp, snd_list_type snd_list)
-{
- int len = MIN(susp->log_stop_cnt - susp->current,
- max_sample_block_len);
-/* nyquist_printf("fetch_zeros, lsc %d current %d len %d\n",
- susp->log_stop_cnt, susp->current, len); */
- if (len < 0) {
- char error[80];
- sprintf(error, "fetch_zeros susp %p (%s) len %d", susp, susp->name, len);
- xlabort(error);
- }
- if (len == 0) { /* we've reached the logical stop time */
- /* nyquist_printf("fetch_zeros: reached the logical stop in %s cnt %d\n",
- susp->name, susp->log_stop_cnt); */
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = len;
- susp->current += len;
- }
-}
-
-
-/* sound_nth_block - fetch the address of the nth sample block of a sound */
-/*
- * NOTE: intended to be called from lisp. Lisp can then call block_watch
- * to keep an eye on the block.
- */
-long sound_nth_block(sound_type snd, long n)
-{
- long i;
- snd_list_type snd_list = snd->list;
- for (i = 0; i < n; i++) {
- if (i == 1) {
- gcbug_snd_list = snd_list;
- nyquist_printf("gcbug_snd_list = 0x%p\n", gcbug_snd_list);
- }
- if (!snd_list->block) return 0;
- snd_list = snd_list->u.next;
- }
- if (snd_list->block) return (long) snd_list->block;
- else return 0;
-}
-
-#endif
-
-
-/****************************************************************************
-* snd_list_create
-* Inputs:
-* snd_susp_type susp: A reference to the suspension
-* Result: snd_list_type
-* A newly-created sound list type
-* Effect:
-* Allocates and initializes a snd_list node:
-* block refcnt block_len susp logically_stopped
-* +--------+--------+-------+-------+---+
-* |////////| 1 | 0 | susp | F |
-* +--------+--------+-------+-------+---+
-****************************************************************************/
-
-/* snd_list_create -- alloc and initialize a snd_list node */
-/**/
-snd_list_type snd_list_create(snd_susp_type susp)
-{
- snd_list_type snd_list;
-
- falloc_snd_list(snd_list, "snd_list_create");
-
- snd_list->block = NULL; /* no block of samples */
- snd_list->u.susp = susp; /* point to suspension */
- snd_list->refcnt = 1; /* one ref */
- snd_list->block_len = 0; /* no samples */
- snd_list->logically_stopped = false;/* not stopped */
-/* nyquist_printf("snd_list_create => %p\n", snd_list);*/
- return snd_list;
-}
-
-
-/****************************************************************************
-* sound_create
-* Inputs:
-* snd_susp_type susp: The suspension block to be used for this sound
-* time_type t0: The initial time for this sound
-* rate_type sr: The sampling rate for this sound
-* sample_type scale: The scaling factor for this sound
-* sample_block_type (*proc)(...): The get_next_sound method
-* Result: sound_type
-*
-* Effect:
-* Creates and initializes a sound type
-* Notes:
-* The MSDOS conditional is actually a test for ANSI headers; the
-* presence of float parameters means that an ANSI prototype and
-* a non-ANSI header are incompatible. Better solution would be
-* to ANSIfy source.
-****************************************************************************/
-
-sound_type last_sound = NULL;
-
-sound_type sound_create(
- snd_susp_type susp,
- time_type t0,
- rate_type sr,
- promoted_sample_type scale)
-{
- sound_type sound;
- falloc_sound(sound, "sound_create");
- if (((long) sound) & 3) errputstr("sound not word aligned\n");
- last_sound = sound; /* debug */
- /* nyquist_printf("sound_create %p gets %g\n", sound, t0); */
- sound->t0 = t0;
- sound->time = t0;
- sound->stop = MAX_STOP;
- sound->sr = sr;
- sound->current = 0;
- sound->scale = (float) scale;
- sound->list = snd_list_create(susp);
- sound->get_next = SND_get_first;
- sound->logical_stop_cnt = UNKNOWN;
- sound->table = NULL;
- sound->extra = NULL;
- /* nyquist_printf("sound_create susp %p snd_list %p\n", susp, sound->list);
- nyquist_printf("sound_create'd %p\n", sound); */
-#ifdef SNAPSHOTS
- sound_created_flag = true;
-#endif
-#ifdef GC_DEBUG
- if (sound == sound_to_watch) {
- nyquist_printf("Created watched sound\n");
- watch_snd_list(sound->list);
- }
-#endif
- return sound;
-}
-
-
-/* sound_prepend_zeros -- modify sound_type so that it starts at t0 */
-/*
- * assumes t0 is earlier than snd->t0, so the sound should return zeros
- * until snd->t0 is reached, after which we revert to normal computation.
- * When we return, the new snd->t0 will be t0, meaning that the first
- * sample returned will be at time t0.
- * NOTE: t0 may not be an exact multiple of samples earlier than snd->t0,
- * but Nyquist allows any sound to be shifted by +/- 0.5 samples in
- * order to achieve alignment. Since sound_prepend_zeros can be called
- * many times on the same sound_type, there is a chance that rounding
- * errors could accumulate. My first solution was to return with
- * snd->t0 computed exactly and not reflecting any fractional sample
- * shift of the signal, but this caused problems for the caller: a
- * fractional sample shift at a low sample rate could correspond to
- * many client samples,fooling the client into thinking that some
- * initial samples should be discarded (or else requiring the client
- * to be pretty smart). The solution used here is to return to the
- * client with snd->t0 exactly equal to t0, but to save snd->true_t0
- * equal to the time of the first sample with no sound shifting. This
- * time is used for any future sound_prepend_zeros operations so that
- * any accumulated rounding errors are due only to floating point
- * precision and not to accumulated fractional sample shifts of snd.
- */
-void sound_prepend_zeros(sound_type snd, time_type t0)
-{
- long n;
-
- /* first, see if we're already prepending some zeros */
- if (snd->get_next != SND_get_zeros) {
-/* nyquist_printf("sound_prepend_zeros 1: snd->t0 %g t0 %g\n", snd->t0, t0); */
-
- /* if not, then initialize some fields that support prepending */
- snd->prepend_cnt = 0;
- snd->true_t0 = snd->t0;
-
- /* save old get_next and plug in special get_next function */
- snd->after_prepend = snd->get_next;
- snd->get_next = SND_get_zeros;
- }
-
- n = (long) (((snd->true_t0 - t0) * snd->sr) + 0.5); /* how many samples to prepend */
-
- /* add to prepend_cnt so first sample will correspond to new t0 */
- snd->prepend_cnt += n;
- /* compute the true t0 which corresponds to the time of first sample */
- snd->true_t0 -= (n / snd->sr);
- /* make caller happy by claiming the sound now starts at exactly t0;
- * this is always true within 0.5 samples as allowed by Fugue. */
- snd->t0 = t0;
-/* nyquist_printf("sound_prepend_zeros: snd %p true_t0 %g sr %g n %d\n",
- snd, snd->true_t0, snd->sr, n);*/
-}
-
-
-/* sound_array_copy -- copy an array of sounds */
-/*
- * NOTE: be sure to protect the result from gc!
- */
-LVAL sound_array_copy(LVAL sa)
-{
- long i = getsize(sa);
- LVAL new_sa = newvector(i);
- xlprot1(new_sa);
-
- while (i > 0) {
- i--;
- setelement(new_sa, i,
- cvsound(sound_copy(getsound(getelement(sa, i)))));
- }
-
- xlpop();
- return new_sa;
-}
-
-
-/* sound_copy - copy a sound structure, do reference counts */
-/**/
-sound_type sound_copy(sound_type snd)
-{
- sound_type sndcopy;
-
- falloc_sound(sndcopy, "sound_copy");
- *sndcopy = *snd; /* copy the whole structure */
- snd_list_ref(snd->list); /* copied a reference so fix the count */
-/* nyquist_printf("sound_copy'd %p to %p\n", snd, sndcopy); */
- if (snd->table) snd->table->refcount++;
-#ifdef GC_DEBUG
- if (sndcopy == sound_to_watch) abort();
-#endif
- return sndcopy;
-}
-
-
-/* convert a sound to a wavetable, set length */
-/**/
-table_type sound_to_table(sound_type s)
-{
- long len = snd_length(s, max_table_len);
- long tx = 0; /* table index */
- long blocklen;
- register double scale_factor = s->scale;
- sound_type original_s = s;
- table_type table; /* the new table */
- long table_bytes; /* how big is the table */
-
- if (s->table) {
- s->table->refcount++;
- return s->table;
- }
-
- if (len >= max_table_len) {
- char emsg[100];
- sprintf(emsg, "maximum table size (%d) exceeded", max_table_len);
- xlcerror("use truncated sound for table", emsg, NIL);
- } else if (len == 0) {
- xlabort("table size must be greater than 0");
- }
-
-
- len++; /* allocate extra sample at end of table */
- s = sound_copy(s);
-
- /* nyquist_printf("sound_to_table: allocating table of size %d\n", len); */
- table_bytes = table_size_in_bytes(len);
- table = (table_type) malloc(table_bytes);
- if (!table) xlfail("osc_init couldn't allocate memory for table");
- table_memory += table_bytes;
-
- table->length = (double) (len - 1);
-
- while (len > 1) {
- sample_block_type sampblock = sound_get_next(s, &blocklen);
- long togo = MIN(blocklen, len);
- long i;
- sample_block_values_type sbufp = sampblock->samples;
-/* nyquist_printf("in sound_to_table, sampblock = %d\n", sampblock);*/
- for (i = 0; i < togo; i++) {
- table->samples[tx++] = (float) (*sbufp++ * scale_factor);
- }
- len -= togo;
- }
- /* for interpolation, duplicate first sample at end of table */
- table->samples[tx] = table->samples[0];
- table->refcount = 2; /* one for the user, one from original_s */
-
- sound_unref(s);
- s = NULL;
- original_s->table = table;
- return table;
-}
-
-
-void table_free(table_type table)
-{
- long len = (long) (table->length) + 1;
- long bytes = table_size_in_bytes(len);
- free(table);
- table_memory -= bytes;
-}
-
-
-void table_unref(table_type table)
-{
- if (!table) return;
- table->refcount--;
- if (table->refcount <= 0) {
- /* nyquist_printf("table refcount went to zero\n"); */
- table_free(table);
- }
-}
-
-
-void sound_unref(sound_type snd)
-/* note that sounds do not have ref counts, so sound_unref
- * always frees the sound object
- */
-{
- if (!snd) return;
- snd_list_unref(snd->list);
- table_unref(snd->table);
-/* nyquist_printf("\t\t\t\t\tfreeing sound@%p\n", snd);*/
- if (snd->extra) free(snd->extra);
- ffree_sound(snd, "sound_unref");
-}
-
-
-void snd_list_ref(snd_list_type list)
-{
- list->refcnt++;
-}
-
-
-void snd_list_terminate(snd_list)
- snd_list_type snd_list;
-{
- snd_susp_type susp = snd_list->u.next->u.susp;
- long lsc = susp->log_stop_cnt;
- long current = susp->current;
- /* unreference the empty sample block that was allocated: */
- sample_block_unref(snd_list->block);
- /* use zero_block instead */
- snd_list->block = zero_block;
- /* either fetch more zeros or terminate now */
- if (lsc != UNKNOWN && lsc > current) {
- /* nyquist_printf("snd_list_terminate: lsc %d current %d\n",
- lsc, current); */
- susp->fetch = fetch_zeros;
- fetch_zeros(susp, snd_list);
- } else {
- snd_list->block_len = max_sample_block_len;
- snd_list->logically_stopped = true;
- snd_list_unref(snd_list->u.next);
- snd_list->u.next = zero_snd_list; /* be zero forever */
- }
-}
-
-
-void snd_list_unref(snd_list_type list)
-{
- void (*freefunc)();
-
- if (list == NULL || list == zero_snd_list) {
- if (list == NULL)
- nyquist_printf("why did snd_list_unref get %p?\n", list);
- return;
- }
- list->refcnt--;
-/* nyquist_printf("snd_list_unref "); print_snd_list_type(list); stdputstr("\n"); */
- if (list->refcnt == 0) {
- if (list->block && list->block != zero_block) {
- /* there is a next snd_list */
-/* stdputstr("["); */
- sample_block_unref(list->block);
-/* stdputstr("]"); */
- snd_list_unref(list->u.next);
- }
- else if (list->block == NULL) { /* the next thing is the susp */
- /* free suspension structure */
- /* nyquist_printf("freeing susp@%p\n", list->u.susp); */
- freefunc = list->u.susp->free;
- (*freefunc)(list->u.susp);
- }
- /* nyquist_printf("freeing snd_list@%p\n", list); */
- ffree_snd_list(list, "snd_list_unref");
- }
-}
-
-
-void sample_block_ref(sample_block_type sam)
-{
- sam->refcnt++;
-}
-
-
-void sample_block_test(sample_block_type sam, char *s)
-{
- /* see if this block is being watched */
- int i;
- for (i = 0; i < blocks_to_watch_len; i++) {
- if ((sam > (blocks_to_watch[i] - 1)) &&
- (sam < (blocks_to_watch[i] + 1))) {
- nyquist_printf(
- "WOOPS! %s(0x%p) refers to a block 0x%p on the watch list!\n",
- s, sam, blocks_to_watch[i]);
- }
- }
-}
-
-
-void sample_block_unref(sample_block_type sam)
-{
- sam->refcnt--;
- if (sam->refcnt == 0) {
-#ifndef GCBUG
- sample_block_test(sam, "sample_block_unref");
-#endif
-/* nyquist_printf("freeing sample block %p\n", sam); */
- ffree_sample_block(sam, "sample_block_unref");
- }
-}
-
-
-
-/****************************************************************************
-* interp_style
-* Inputs:
-* sound_type s: The sound we are using
-* rate_type sr: The sampling rate
-* Result: int
-* A small integer which is one of the symbolic values:
-* The values are ordered, smallest to largest, as
-* INTERP_n - none
-* INTERP_s - scale
-* INTERP_i - interpolated
-* INTERP_r - ramp
-*
-* Notes:
-* The sampling rate s->sr and scale factor s->scale are compared
-* with other values exactly (no fuzz).
-****************************************************************************/
-
-int interp_style(sound_type s, rate_type sr)
-{
- if (s->sr == sr)
- { /* same sample rate */
- return ((s->scale == 1.0) ? INTERP_n : INTERP_s);
- } /* same sample rate */
- else
- if (s->sr * 10.0 > sr)
- { /* 10x sample rate */
- return INTERP_i;
- } /* 10x sample rate */
- else
- return INTERP_r;
-}
-
-
-/****************************************************************************
-* snd_sort_2
-* Inputs:
-* sound_type * s1_ptr:
-* sound_type * s2_ptr:
-* rate_type sr:
-* Result: void
-*
-* Effect:
-* If the interp_style of s1 dominates the interp_style of s2,
-* the sound_types input are interchanged.
-****************************************************************************/
-
-/* snd_sort_2 -- sort 2 arguments by interpolation method */
-void snd_sort_2(sound_type *s1_ptr, sound_type *s2_ptr, rate_type sr)
-{
- if (interp_style(*s1_ptr, sr) > interp_style(*s2_ptr, sr)) {
- sound_type s = *s1_ptr;
- *s1_ptr = *s2_ptr;
- *s2_ptr = s;
- }
-}
-
-
-/* snd_sref -- access a sound at a given time point */
-/**/
-double snd_sref(sound_type s, time_type t)
-{
- double exact_cnt; /* how many fractional samples to scan */
- int cnt; /* how many samples to flush */
- sample_block_type sampblock = NULL;
- long blocklen;
- sample_type x1, x2; /* interpolate between these samples */
-
- /* changed true_t0 to just t0 based on comment that true_t0 is only
- * for use by snd_prepend_zeros -RBD
- */
- exact_cnt = (t - s->t0) * s->sr;
- if (exact_cnt < 0.0) return 0.0;
-
- s = sound_copy(s); /* don't modify s, create new reader */
- cnt = (long) exact_cnt; /* rounds down */
- exact_cnt -= cnt; /* remember fractional remainder */
-
- /* now flush cnt samples */
- while (cnt >= 0) {
- sampblock = sound_get_next(s, &blocklen);
- cnt -= blocklen;
- if (sampblock == zero_block) {
- sound_unref(s);
- return 0.0;
- }
- }
- /* -blocklen <= cnt <= -1 */
-
- /* get next 2 samples and interpolate */
- x1 = sampblock->samples[blocklen + cnt];
- if (cnt == -1) {
- sampblock = sound_get_next(s, &blocklen);
- cnt -= blocklen;
- }
- x2 = sampblock->samples[blocklen + cnt + 1];
- sound_unref(s); /* free the reader */
-
- return (x1 + exact_cnt * (x2 - x1)) * s->scale;
-}
-
-
-/* snd_sref_inverse -- find time point corresponding to some value */
-/**/
-double snd_sref_inverse(sound_type s, double val)
-{
- double exact_cnt; /* how many fractional samples to scan */
- int i;
- sample_block_type sampblock;
- long blocklen;
- sample_type x1, x2; /* interpolate between these samples */
-
- if (val < 0) {
- xlcerror("return 0", "negative value", cvflonum(val));
- return 0.0;
- }
- s = sound_copy(s); /* don't modify s, create new reader */
-
- x1 = 0.0F;
- /* now flush cnt samples */
- while (true) {
- sampblock = sound_get_next(s, &blocklen);
- x2 = sampblock->samples[blocklen - 1];
- if (x2 >= val) break;
- x1 = x2;
- if (sampblock == zero_block) {
- xlcerror("return 0", "too large, no inverse", cvflonum(val));
- sound_unref(s);
- return 0.0;
- }
- }
- /* x1 = last sample of previous block,
- sampblock contains a value larger than val
- blocklen is the length of sampblock */
-
- /* search for first element exceeding val - could
- * use binary search, but maximum block size places
- * an upper bound on how bad this can get and we
- * search for the right block linearly anyway.
- */
- for (i = 0; i < blocklen && sampblock->samples[i] <= val; i++) ;
-
- /* now i is index of element exceeding val */
- if (i > 1) x1 = sampblock->samples[i - 1];
- x2 = sampblock->samples[i];
-
- /* now interpolate to get fractional part */
- if (x2 == x1) exact_cnt = 0;
- else exact_cnt = (val - x1) / (x2 - x1);
-
- /* and add the sample count of x1 */
- exact_cnt += (s->current - blocklen) + (i - 1);
-
- /* negative counts are possible because the first x1 is at
- * sample -1, so force the location to be at least 0
- */
- if (exact_cnt < 0) exact_cnt = 0;
-
- /* compute time = t0 + count / samplerate; */
- exact_cnt = s->t0 + exact_cnt / s->sr;
-
- sound_unref(s); /* free the reader */
- return exact_cnt;
-}
-
-
-time_type snd_stop_time(sound_type s)
-{
- if (s->stop == MAX_STOP) return MAX_STOP_TIME;
- else return s->t0 + (s->stop + 0.5) / s->sr;
-}
-
-
-/* snd_xform -- return a sound with transformations applied */
-/*
- * The "logical" sound starts at snd->time and runs until some
- * as yet unknown termination time. (There is also a possibly
- * as yet unknown logical stop time that is irrelevant here.)
- * The sound is clipped (zero) until snd->t0 and after snd->stop,
- * the latter being a sample count, not a time_type.
- * So, the "physical" sound starts at snd->t0 and runs for up to
- * snd->stop samples (or less if the sound terminates beforehand).
- *
- * The snd_xform procedure operates at the "logical" level, shifting
- * the sound from its snd->time to time. The sound is stretched as
- * a result of setting the sample rate to sr. It is then (further)
- * clipped between start_time and stop_time. If initial samples
- * are clipped, the sound is shifted again so that it still starts
- * at time. The sound is then scaled by scale.
- *
- * To support clipping of initial samples, the "physical" start time
- * t0 is set to when the first unclipped sample will be returned, but
- * the number of samples to clip is saved as a negative count. The
- * fetch routine SND_flush is installed to flush the clipped samples
- * at the time of the first fetch. SND_get_first is then installed
- * for future fetches.
- *
- * An empty (zero) sound will be returned if all samples are clipped.
- *
- */
-sound_type snd_xform(sound_type snd,
- rate_type sr,
- time_type time,
- time_type start_time,
- time_type stop_time,
- promoted_sample_type scale)
-{
- long start_cnt, stop_cnt; /* clipping samples (sample 0 at new t0) */
-
- /* start_cnt should reflect max of where the sound starts (t0)
- * and the new start_time.
- */
- if (start_time == MIN_START_TIME) {
- start_cnt = 0;
- } else {
- double new_start_cnt = ((start_time - time) * sr) + 0.5;
- start_cnt = ((new_start_cnt > 0) ? (long) new_start_cnt : 0);
- }
- /* if (start_cnt < -(snd->current)) start_cnt = -(snd->current); */
-
- /* stop_cnt should reflect min of the new stop_time and the previous
- * snd->stop.
- */
- if (stop_time == MAX_STOP_TIME) {
- stop_cnt = MAX_STOP;
- } else {
- double new_stop_cnt = ((stop_time - time) * sr) + 0.5;
- if (new_stop_cnt < MAX_STOP) {
- stop_cnt = (long) new_stop_cnt;
- } else {
- errputstr("Warning: stop count overflow in snd_xform\n");
- stop_cnt = MAX_STOP;
- }
- }
-
- if (stop_cnt > snd->stop) {
- stop_cnt = snd->stop;
- }
-
- if (stop_cnt < 0 || start_cnt >= stop_cnt) {
- snd = sound_create(NULL, time, sr, 1.0);
- /* sound_create goes ahead and allocates a snd_list node, so
- * we need to free it.
- * Calling snd_list_unref here seems like the right thing, but
- * it assumes too much structure is in place. ffree_snd_list
- * is simpler and more direct:
- */
- ffree_snd_list(snd->list, "snd_xform");
- snd->list = zero_snd_list;
- nyquist_printf("snd_xform: (stop_time < t0 or start >= stop) "
- "-> zero sound = %p\n", snd);
-
- } else {
- snd = sound_copy(snd);
- snd->t0 = time;
- if (start_cnt) {
- snd->current -= start_cnt; /* indicate flush with negative num. */
- /* the following code assumes that SND_get_first is the
- routine to be called to get the first samples from this
- sound. We're going to replace it with SND_flush. First,
- make sure that the assumption is correct:
- */
- if ((snd->get_next != SND_get_first) &&
- (snd->get_next != SND_flush)) {
- errputstr("snd_xform: SND_get_first expected\n");
- EXIT(1);
- }
- /* this will flush -current samples and revert to SND_get_first */
- snd->get_next = SND_flush;
- stop_cnt -= start_cnt;
- }
- snd->stop = stop_cnt;
- snd->sr = sr;
- snd->scale *= (float) scale;
- }
- return snd;
-}
-
-
-/* SND_flush -- the get_next function for flushing clipped samples */
-/*
- * this only gets called once: it flushes -current samples (a
- * non-real-time operation) and installs SND_get_next to return
- * blocks normally from then on.
- */
-sample_block_type SND_flush(sound_type snd, long * cnt)
-{
- long mycnt;
- sample_block_type block = SND_get_first(snd, &mycnt);
- while (snd->current < 0) {
- block = SND_get_next(snd, &mycnt);
- }
- /* at this point, we've read to and including the block with
- * the first samples we want to return. If the block boundary
- * is in the right place, we can do a minimal fixup and return:
- */
- if (snd->current == snd->list->block_len) {
- *cnt = snd->current; /* == snd->list->block_len */
- /* snd->get_next = SND_get_next; -- done by SND_get_first */
- return block;
- } else /* snd->current < snd->list->block_len */ {
- long i;
- sample_block_values_type from_ptr;
- /* we have to return a partial block */
- /* NOTE: if we had been smart, we would have had SND_get_next
- * return a pointer to samples rather than a pointer to the
- * block, which has a reference count. Since the caller
- * expects a pointer to a reference count, we have to copy
- * snd->current samples to a new block
- */
- snd_list_type snd_list = snd_list_create((snd_susp_type) snd->list->u.next);
- snd_list->u.next->refcnt++;
- falloc_sample_block(snd_list->block, "SND_flush");
- /* now copy samples */
- from_ptr = block->samples + snd->list->block_len - snd->current;
- for (i = 0; i < snd->current; i++) {
- snd_list->block->samples[i] = from_ptr[i];
- }
- snd_list_unref(snd->list);
- snd->list = snd_list;
- *cnt = snd->current;
- return snd_list->block;
- }
-}
-
-
-/* SND_get_zeros -- the get_next function for prepended zeros */
-/*
- * when prepending zeros, we just return a pointer to the internal_zero_block
- * and decrement the prepend_cnt until it goes to zero. Then we revert to
- * the normal (original) get_next function.
- *
- */
-sample_block_type SND_get_zeros(sound_type snd, long * cnt)
-{
- int len = MIN(snd->prepend_cnt, max_sample_block_len);
- /* stdputstr("SND_get_zeros: "); */
- if (len < 0) {
- char error[80];
- sprintf(error, "SND_get_zeros snd %p len %d", snd, len);
- xlabort(error);
- }
- if (len == 0) { /* we've finished prepending zeros */
- snd->get_next = snd->after_prepend;
- /* stdputstr("done, calling sound_get_next\n"); fflush(stdout); */
- return sound_get_next(snd, cnt);
- } else {
- *cnt = len;
- snd->current += len;
- snd->prepend_cnt -= len;
-/* nyquist_printf("returning internal_zero_block@%p\n", internal_zero_block);
- fflush(stdout); */
- return internal_zero_block;
- }
-}
-
-
-/****************************************************************************
-* SND_get_next
-* Inputs:
-* sound_type snd: The iterator whose next block is to be computed
-* int * cnt: Place to put count of samples returned
-* Result: snd_list_type
-* Pointer to the sample block computed ---------------------------+
-* Effect: |
-* force suspension to compute next block of samples |
-* |
-* Here's the protocol for using this and related functions: |
-* Every client (sample reader) has a private sound_type (an iterator), |
-* and the sound_type's 'list' field points to a header (of type |
-* snd_list_type). The header in turn points to a block of samples. |
-* |
-* +---------------------------------------+
-* |
-* |
-* | sample_block_type
-* (snd) V +---+--+--+--+--+--+--+-...-+--+
-* sound_type: snd_list_type +-->|ref| | | | |//|//| |//|
-* +---------+ +----------+ | +---+--+--+--+--+--+--+-...-+--+
-* | list +------->| block +--+ ^
-* +---------+ +----------+ :
-* | t0 | | block_len|....................:
-* +---------+ +----------+
-* | sr | | refcnt |
-* +---------+ +-+--------+
-* | current | | next +---->... Note: the union u
-* +---------+ |u|........| snd_list_type points to only one
-* | rate | | | susp +---->... of the indicated
-* +---------+ +-+--------+ susp_type types
-* | scalse | |log_stop |
-* +---------+ +----------+
-* | lsc |
-* +---------+
-* |get_next +-----> SND_get_next()
-* +---------+
-*
-* The sound_type keeps track of where the next sample block will
-* come from. The field 'current' is the number of the first sample of
-* the next block to be returned, where sample numbers start
-* at zero. The normal fetch procedure is this one, although special
-* cases may generate special block generators, e.g., CONST does not need
-* to allocate and refill a block and can reuse the same block over and
-* over again, so it may have its own fetch procedure. This is the
-* general fetch procedure, which assumes that the generator function
-* actually produces a slightly different value for each sample.
-*
-* The distinguishing characteristic of whether the 'u' field is to be
-* interpreted as 'next', a link to the next list element, or 'susp', a
-* reference to the suspension for generating a new sample block, is
-* whether the 'block' parameter is NULL or not. If it is NULL, then
-* u.susp tells how to generate the block; if it is not NULL, u.next is
-* a pointer to the next sound block in the list.
-*
-* When the 'block' pointer is NULL, we create a block of samples, and
-* create a new sound list element which follows it which has a NULL
-* 'block' pointer; the 'u' field of the current list element is now
-* interpreted as 'u.next'.
-*
-* The client calls SND_get_next to get a pointer to a block of samples.
-* The count of samples generated is returned via a ref parameter, and
-* SND_get_next will not be called again until this set is exhausted.
-*
-* The next time SND_get_next is called, it knows that the sample block
-* has been exhausted. It releases its reference to the block (and if
-* that was the last reference, frees the block to the block allocation
-* pool), allocates a new block from the block pool, and proceeds to
-* fill it with samples.
-*
-* Note that as an optimization, if the refcnt field goes to 0 it
-* could immediately re-use the block without freeing back to the block
-* pool and reallocating it.
-*
-* Because of the way we handle sound sample blocks, the sound sample blocks
-* themselves are ref-counted, so freeing the snd_list_type may not free
-* the sample block it references. At the level of this procedure, that
-* is transparently handled by the snd_list_unref function.
-*
-* Logical stop:
-*
-* Logical stop is handled by several mechanisms. The /intrinsic/ logical
-* stop is an immutable property of the signal, and is determined by the
-* specification in the algorithm description file. When it is encountered,
-* the 'logically_stopped' flag of the snd_list_node is set.
-* The generators guarantee that the first time this is encountered, it
-* will always be constructed so that the first sample of the block it
-* references is the logical stop time.
-*
-* In addition, the client may have set the /explicit logical stop time/ of
-* the iterator (e.g., in nyquist, the (set-logical-stop sound time) call copies
-* the sound, altering its logical stop). The logical stop time, when set
-* in this way, causes the logical_stop_cnt ('lsc' in the above diagram)
-* to be set to the count of the last sample to be generated before the
-* <logical stop time. This will guarantee that the sound will indicate that
-* it has reached its logical stop time when the indicated sample is
-* generated.
-****************************************************************************/
-
-void add_s1_s2_nn_fetch(); /* for debugging */
-
-/* SND_get_first -- the standard fn to get a block, after returning
- * the first block, plug in SND_get_next for successive blocks
- */
-sample_block_type SND_get_first(sound_type snd, long * cnt)
-{
- register snd_list_type snd_list = snd->list;
- /*
- * If there is not a block of samples, we need to generate one.
- */
- if (snd_list->block == NULL) {
- /*
- * Call the 'fetch' method for this sound_type to generate
- * a new block of samples.
- */
- snd_susp_type susp = snd_list->u.susp;
-
- snd_list->u.next = snd_list_create(susp);
- snd_list->block = internal_zero_block;
- /* nyquist_printf("SND_get_first: susp->fetch %p\n",
- susp->fetch); */
- (*(susp->fetch))(susp, snd_list);
-#ifdef GC_DEBUG
- snd_list_debug(snd_list, "SND_get_first");
-#endif
- /* nyquist_printf("SND_get_first: snd_list %p, block %p, length %d\n",
- snd_list, snd_list->block, snd_list->block_len); */
- }
- if ((snd->logical_stop_cnt == UNKNOWN) && snd_list->logically_stopped) {
- /* nyquist_printf("SND_get_first/next: snd %p logically stopped at %d\n",
- snd, snd->current); */
- snd->logical_stop_cnt = snd->current;
- }
-
- /* see if clipping needs to be applied */
- if (snd->current + snd_list->block_len > snd->stop) {
- /* need to clip: is clip on a block boundary? */
- if (snd->current == snd->stop) {
- /* block boundary: replace with zero sound */
- snd->list = zero_snd_list;
- snd_list_unref(snd_list);
- } else {
- /* not a block boundary: build new list */
- snd->list = snd_list_create((snd_susp_type) zero_snd_list);
- snd->list->block_len = (short) (snd->stop - snd->current);
- snd->list->block = snd_list->block;
- snd->list->block->refcnt++;
- snd_list_unref(snd_list);
- }
- snd_list = snd->list; /* used below to return block ptr */
- }
-
- *cnt = snd_list->block_len;
- /* this should never happen */
- if (*cnt == 0) {
- stdputstr("SND_get_first returned 0 samples\n");
- dbg_mem_print("snd_list info:", snd_list);
- dbg_mem_print("block info:", snd_list->block);
- sound_print_tree(snd);
- stdputstr("It is possible that you created a recursive sound\n");
- stdputstr("using something like: (SETF X (SEQ (SOUND X) ...))\n");
- stdputstr("Nyquist aborts from non-recoverable error\n");
- abort();
- }
- snd->current += snd_list->block_len; /* count how many we read */
- snd->get_next = SND_get_next;
- return snd_list->block;
-}
-
-
-sample_block_type SND_get_next(sound_type snd, long * cnt)
-{
- register snd_list_type snd_list = snd->list;
- /*
- * SND_get_next is installed by SND_get_first, so we know
- * when we are called that we are done with the current block
- * of samples, so free it now.
- */
- snd_list_type cur = snd_list;
- snd->list = snd_list = cur->u.next;
- snd_list_ref(snd_list);
- snd_list_unref(cur); /* release the reference to the current block */
-
- /* now that we've deallocated, we can use SND_get_first to finish the job */
- return SND_get_first(snd, cnt);
-}
-
-
-
-/****************************************************************************
-* make_zero_block
-* Inputs:
-*
-* Result:
-*
-* Effect:
-*
-****************************************************************************/
-
-sample_block_type make_zero_block(void)
- {
- sample_block_type zb;
- int i;
-
- falloc_sample_block(zb, "make_zero_block");
- /* leave room for lots more references before overflow,
- but set the count high so that even a large number of
- dereferences will not lead to a deallocation */
- zb->refcnt = 0x6FFFFFFF;
-
- for (i = 0; i < max_sample_block_len; i++)
- { /* fill with zeros */
- zb->samples[i] = 0.0F;
- } /* fill with zeros */
- return zb;
- }
-
-
-/* min_cnt -- help compute the logical stop or terminate as minimum */
-/*
- * take the sound (which has just logically stopped or terminated at
- * current sample) and
- * convert the stop sample into the equivalent sample count as produced by
- * susp (which may have a different sample rate). If the count is less than
- * the current *cnt_ptr, overwrite cnt_ptr with a new minimum. By calling
- * this when each of S1, S2, ... Sn reach their logical stop or termiate
- * points, *cnt_ptr will end up with the minimum stop count, which is what
- * we want. NOTE: the logical stop time and terminate for signal addition
- * should be the MAX of logical stop times of arguments, so this routine
- * would not be used.
- */
-void min_cnt(long *cnt_ptr, sound_type sound, snd_susp_type susp, long cnt)
-{
- long c = (long) ((((sound->current - cnt) / sound->sr + sound->t0) - susp->t0) *
- susp->sr + 0.5);
- /* if *cnt_ptr is uninitialized, just plug in c, otherwise compute min */
- if ((*cnt_ptr == UNKNOWN) || (*cnt_ptr > c)) {
-/* nyquist_printf("min_cnt %p: new count is %d\n", susp, c);*/
-/* if (c == 0) sound_print_tree(printing_this_sound);*/
- *cnt_ptr = c;
- }
-}
-
-
-
-/****************************************************************************
-* sound_init
-* Result: void
-*
-* Effect:
-* Module initialization
-* Allocates the 'zero block', the infinitely linked block of
-* 0-valued sounds. This is referenced by a list element which
-* refers to itself.
-****************************************************************************/
-
-void sound_init(void)
-{
- zero_block = make_zero_block();
- internal_zero_block = make_zero_block();
-
- falloc_snd_list(zero_snd_list, "sound_init");
-
- zero_snd_list->block = zero_block;
- zero_snd_list->u.next = zero_snd_list;
- zero_snd_list->refcnt = 2;
- zero_snd_list->block_len = max_sample_block_len;
- zero_snd_list->logically_stopped = true;
-#ifdef GC_DEBUG
- { long s;
- stdputstr("sound_to_watch: ");
- scanf("%p", &s);
- watch_sound(s);
- }
-#endif
- sound_desc = create_desc("SOUND", sound_xlfree, sound_xlprint,
- sound_xlsave, sound_xlrestore, sound_xlmark);
-}
-
-
-/* sound_scale -- copy and change scale factor of a sound */
-/**/
-sound_type sound_scale(double factor, sound_type snd)
-{
- sound_type sndcopy = sound_copy(snd);
- sndcopy->scale *= (float) factor;
- return sndcopy;
-}
-
-
-
-
-/****************************************************************************
-* set_logical_stop_time
-* Inputs:
-* sound_type sound: The sound for which the logical stop time is
-* being set
-* time_type when: The logical stop time, expressed as an absolute
-* time.
-* Result: void
-*
-* Effect:
-* Converts the time 'when' into a count of samples.
-****************************************************************************/
-
-void set_logical_stop_time(sound_type sound, time_type when)
- {
- long n;
- /*
- 'when' is an absolute time. The number of samples to
- be generated is the number of samples between 't0' and
- 'when'.
-
- -----------+---+---+---+---+---+---+---+---+---+
- | |
- t0 when
- */
- n = (long) ((when - sound->t0) * sound->sr + 0.5);
-
- /*
- * n is kept as a local variable for debugging purposes.
- */
-
- sound->logical_stop_cnt = n;
- }
-
-
-
-
-/* for debugging */
-sound_type printing_this_sound = NULL;
-void ((**watch_me)()) = NULL;
-
-void set_watch(where)
- void ((**where)());
-{
- if (watch_me == NULL) {
- watch_me = where;
- nyquist_printf("set_watch: watch_me = %p\n", watch_me);
- }
-}
-
-
-/*
- * additional routines
- */
-void sound_print(snd_expr, n)
- LVAL snd_expr;
- long n;
-{
- LVAL result;
-
- xlsave1(result);
- result = xleval(snd_expr);
- if (vectorp(result)) {
- /* make sure all elements are of type a_sound */
- long i = getsize(result);
- while (i > 0) {
- i--;
- if (!exttypep(getelement(result, i), a_sound)) {
- xlerror("sound_print: array has non-sound element",
- result);
- }
- }
- sound_print_array(result, n);
- } else if (exttypep(result, a_sound)) {
- sound_print_sound(getsound(result), n);
- } else {
- xlerror("sound_print: expression did not return a sound",
- result);
- }
- xlpop();
-}
-
-
-void sound_print_sound(sound_type s, long n)
-{
- int ntotal = 0;
- long blocklen;
- sample_block_type sampblock;
-
- /* for debugging */
- printing_this_sound = s;
-
- nyquist_printf("sound_print: start at time %g\n", s->t0);
-
- while (ntotal < n) {
- if (s->logical_stop_cnt != UNKNOWN)
- nyquist_printf("LST=%d ", (int)s->logical_stop_cnt);
- sound_print_tree(s);
- sampblock = sound_get_next(s, &blocklen);
- if (sampblock == zero_block || blocklen == 0) {
- break;
- }
- print_sample_block_type("sound_print", sampblock,
- MIN(blocklen, n - ntotal));
- ntotal += blocklen;
- }
- nyquist_printf("total samples: %d\n", ntotal);
-}
-
-
-void sound_print_array(LVAL sa, long n)
-{
- long blocklen;
- long i, len;
- long upper = 0;
- sample_block_type sampblock;
- time_type t0, tmax;
-
- len = getsize(sa);
- if (len == 0) {
- stdputstr("sound_print: 0 channels!\n");
- return;
- }
-
- /* take care of prepending zeros if necessary */
- t0 = tmax = (getsound(getelement(sa, 0)))->t0;
- for (i = 1; i < len; i++) {
- sound_type s = getsound(getelement(sa, i));
- t0 = MIN(s->t0, t0);
- tmax = MAX(s->t0, tmax);
- }
-
- /* if necessary, prepend zeros */
- if (t0 != tmax) {
- stdputstr("prepending zeros to channels: ");
- for (i = 0; i < len; i++) {
- sound_type s = getsound(getelement(sa, i));
- if (t0 < s->t0) {
- nyquist_printf(" %d ", (int)i);
- sound_prepend_zeros(s, t0);
- }
- }
- stdputstr("\n");
- }
-
- nyquist_printf("sound_print: start at time %g\n", t0);
-
- while (upper < n) {
- int i;
- boolean done = true;
- for (i = 0; i < len; i++) {
- sound_type s = getsound(getelement(sa, i));
- long current = -1; /* always get first block */
- while (current < upper) {
- sampblock = sound_get_next(s, &blocklen);
- if (sampblock != zero_block && blocklen != 0) {
- done = false;
- }
- current = s->current - blocklen;
- nyquist_printf("chan %d current %d:\n", i, (int)current);
- print_sample_block_type("sound_print", sampblock,
- MIN(blocklen, n - current));
- current = s->current;
- upper = MAX(upper, current);
- }
- }
- if (done) break;
- }
- nyquist_printf("total: %d samples x %d channels\n",
- (int)upper, (int)len);
-}
-
-
-/* sound_play -- compute sound, do not retain samples */
-/*
- * NOTE: we want the capability of computing a sound without
- * retaining samples. This requires that no references to
- * the sound exist, but if the sound is passed as an argument,
- * the argument stack will have a reference. So, we pass in
- * an expression that evaluates to the sound we want. The
- * expression is eval'd, the result copied (in case the
- * expression was a sound or a global variable and we really
- * want to preserve the sound), and then a GC is run to
- * get rid of the original if there really are no other
- * references. Finally, the copy is used to play the
- * sounds.
- */
-
-void sound_play(snd_expr)
- LVAL snd_expr;
-{
- int ntotal;
- long blocklen;
- sample_block_type sampblock;
- LVAL result;
- sound_type s;
-
- xlsave1(result);
- result = xleval(snd_expr);
- if (!exttypep(result, a_sound)) {
- xlerror("sound_play: expression did not return a sound",
- result);
- }
-
- ntotal = 0;
- s = getsound(result);
- /* if snd_expr was simply a symbol, then s now points to
- a shared sound_node. If we read samples from it, then
- the sound bound to the symbol will be destroyed, so
- copy it first. If snd_expr was a real expression that
- computed a new value, then the next garbage collection
- will reclaim the sound_node. We need to explicitly
- free the copy since the garbage collector cannot find
- it.
- */
- s = sound_copy(s);
- while (1) {
- sampblock = sound_get_next(s, &blocklen);
- if (sampblock == zero_block || blocklen == 0) {
- break;
- }
- /* print_sample_block_type("sound_play", sampblock, blocklen); */
- ntotal += blocklen;
- }
- nyquist_printf("total samples: %d\n", ntotal);
- sound_unref(s);
- xlpop();
-}
-
-
-/* sound_print_tree -- print a tree version of sound structure */
-/**/
-void sound_print_tree(snd)
- sound_type snd;
-{
-/* nyquist_printf("sample_block_free %p\n", sample_block_free);*/
- nyquist_printf("SOUND PRINT TREE of %p\n", snd);
- sound_print_tree_1(snd, 0);
-}
-
-
-void indent(int n)
-{
- while (n-- > 0) stdputstr(" ");
-}
-
-
-void sound_print_tree_1(snd, n)
- sound_type snd;
- int n;
-{
- int i;
- snd_list_type snd_list;
- if (n > 100) {
- stdputstr("... (skipping remainder of sound)\n");
- return;
- }
- nyquist_printf("sound_type@%p(%s@%p)t0 "
- "%g stop %d sr %g lsc %d scale %g pc %d",
- snd,
- (snd->get_next == SND_get_next ? "SND_get_next" :
- (snd->get_next == SND_get_first ? "SND_get_first" : "?")),
- snd->get_next, snd->t0, (int)snd->stop, snd->sr,
- (int)snd->logical_stop_cnt, snd->scale,
- (int)snd->prepend_cnt);
- if (!snd) {
- stdputstr("\n");
- return;
- }
- snd_list = snd->list;
- nyquist_printf("->snd_list@%p", snd_list);
- if (snd_list == zero_snd_list) {
- stdputstr(" = zero_snd_list\n");
- return;
- }
- for (i = 0; ; i++) {
- if (snd_list == zero_snd_list) {
- if (i > 1) nyquist_printf(" (skipping %d) ", i-1);
- stdputstr("->zero_snd_list\n");
- return;
- }
- if (!snd_list->block) {
- if (i > 0) nyquist_printf(" (skipping %d) ", i);
- stdputstr("->\n");
- indent(n + 2);
-
- nyquist_printf("susp@%p(%s)toss_cnt %d "
- "current %d lsc %d sr %g t0 %g %p\n",
- snd_list->u.susp, snd_list->u.susp->name,
- (int)snd_list->u.susp->toss_cnt,
- (int)snd_list->u.susp->current,
- (int)snd_list->u.susp->log_stop_cnt,
- snd_list->u.susp->sr,
- snd_list->u.susp->t0, snd_list);
-/* stdputstr("HI THERE AGAIN\n");*/
- susp_print_tree(snd_list->u.susp, n + 4);
- return;
- }
- snd_list = snd_list->u.next;
- }
-}
-
-
-/* compute constants p1 and p2:
- pitchconvert(0) * 2 = pitchconvert(12) - octaves
- exp(p2) * 2 = exp(12 * p1 + p2)
- 2 = exp(12 * p1)
- log(2) = 12 * p1
-
- p1 = log(2.0)/12;
-
- pitchconvert(69) gives 440Hz
- exp(69 * p1 + p2) = 440
- 69 * p1 + p2 = log(440)
-
- p2 = log(440.0) - (69 * p1);
-*/
-
-#define p1 0.0577622650466621
-#define p2 2.1011784386926213
-
-
-double hz_to_step(double hz)
-{
- return (log(hz) - p2) / p1;
-}
-
-
-double step_to_hz(steps)
- double steps;
-{
- return exp(steps * p1 + p2);
-}
-
-
-/*
- * from old stuff...
- */
-
-static void sound_xlfree(s)
-sound_type s;
-{
-/* nyquist_printf("sound_xlfree(%p)\n", s);*/
- sound_unref(s);
-}
-
-
-static void sound_xlprint(LVAL fptr, sound_type s)
-{
- /* the type cast from s to LVAL is OK because
- * putatm does not dereference the 3rd parameter */
- putatm(fptr, "Sound", (LVAL) s);
-}
-
-
-static void sound_xlsave(fp, s)
-FILE *fp;
-sound_type s;
-{
- stdputstr("sound_save called\n");
-}
-
-
-static unsigned char *sound_xlrestore(FILE *fp)
-{
- stdputstr("sound_restore called\n");
- return NULL;
-}
-
-
-/* sound_xlmark -- mark LVAL nodes reachable from this sound */
-/**/
-void sound_xlmark(s)
-sound_type s;
-{
- snd_list_type snd_list;
- long counter = 0;
-#ifdef TRACESNDGC
- nyquist_printf("sound_xlmark(%p)\n", s);
-#endif
- if (!s) return; /* pointers to sounds are sometimes NULL */
- snd_list = s->list;
- while (snd_list->block != NULL) {
- if (snd_list == zero_snd_list) {
-#ifdef TRACESNDGC
- stdputstr(" terminates at zero_snd_list\n");
-#endif
- return;
- } else if (counter > 1000000) {
- stdputstr("You created a recursive sound! This is a Nyquist bug.\n");
- stdputstr("The only known way to do this is by a SETF on a\n");
- stdputstr("local variable or parameter that is being passed to SEQ\n");
- stdputstr("or SEQREP. The garbage collector assumes that sounds are\n");
- stdputstr("not recursive or circular, and follows sounds to their\n");
- stdputstr("end. After following a million nodes, I'm pretty sure\n");
- stdputstr("that there is a cycle here, but since this is a bug,\n");
- stdputstr("I cannot promise to recover. Prepare to crash. If you\n");
- stdputstr("cannot locate the cause of this, contact the author -RBD.\n");
- }
- snd_list = snd_list->u.next;
- counter++;
- }
- if (snd_list->u.susp->mark) {
-#ifdef TRACESNDGC
- nyquist_printf(" found susp (%s) at %p with mark method\n",
- snd_list->u.susp->name, snd_list->u.susp);
-#endif
- (*(snd_list->u.susp->mark))(snd_list->u.susp);
- } else {
-#ifdef TRACESNDGC
- nyquist_printf(" no mark method on susp %p (%s)\n",
- snd_list->u.susp, snd_list->u.susp->name);
-#endif
- }
-}
-
-
-void sound_symbols()
-{
- a_sound = xlenter("SOUND");
-}
-
-
-/* The SOUND Type: */
-
-
-boolean soundp(s)
-LVAL s;
-{
- return (exttypep(s, a_sound));
-}
-
-
-/* sound_zero - create and return a zero that terminates now */
-/**/
-sound_type sound_zero(time_type t0,rate_type sr)
-{
- sound_type sound;
- falloc_sound(sound, "sound_zero");
-
- sound->get_next = SND_get_first;
- sound->list = zero_snd_list;
- sound->logical_stop_cnt = sound->current = 0;
- sound->true_t0 = sound->t0 = t0;
- sound->sr = sr;
- sound->scale = 1.0F;
-
- return sound;
-}
-
-
-LVAL cvsound(s)
-sound_type s;
-{
-/* nyquist_printf("cvsound(%p)\n", s);*/
- return (cvextern(sound_desc, (unsigned char *) s));
-}
-
diff --git a/lib-src/libnyquist/nyqsrc/sound.h b/lib-src/libnyquist/nyqsrc/sound.h
deleted file mode 100644
index c4ca572..0000000
--- a/lib-src/libnyquist/nyqsrc/sound.h
+++ /dev/null
@@ -1,486 +0,0 @@
-/* sound.h -- new nyquist sound data type */
-
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm changes for portability: moved some defns out of here
- */
-
-#include <math.h>
-#include "stdefs.h"
-
-#if USE_PRINTF
-#define nyquist_printf printf
-#endif
-
-#define PERMS 0644 /* -rw-r--r-- */
-
-/* default stop sample count (for clipping) */
-#define MAX_STOP 0x7FFFFFFF
-
-/* default stop time (for clipping) */
-#define MAX_STOP_TIME 10E20
-/* LISP-SRC: (SETF MAX-STOP-TIME 10E20) */
-#define MIN_START_TIME -10E20
-/* LISP-SRC: (SETF MIN-START-TIME -10E20) */
-
-/* conversion from float to integer */
-#define SCALE_FACTOR_TO_BYTE 127
-#define SCALE_FACTOR_TO_SHORT 32767
-#define SCALE_FACTOR_TO_LONG 2147483647
-
-/* Note that the values assigned here are not arbitrary, but represent
- a dominance relationship among the interpolation types.
-*/
-#define INTERP_n 0
-#define INTERP_s 1
-#define INTERP_i 2
-#define INTERP_r 3
-
-#define INTERP_nn 0
-#define INTERP_ns 1
-#define INTERP_ni 2
-#define INTERP_nr 3
-#define INTERP_sn 4
-#define INTERP_ss 5
-#define INTERP_si 6
-#define INTERP_sr 7
-
-#define INTERP_nnn 0
-#define INTERP_nns 1
-#define INTERP_nni 2
-#define INTERP_nnr 3
-#define INTERP_nsn 4
-#define INTERP_nss 5
-#define INTERP_nsi 6
-#define INTERP_nsr 7
-#define INTERP_nin 8
-#define INTERP_nis 9
-#define INTERP_nii 10
-#define INTERP_nir 11
-#define INTERP_nrn 12
-#define INTERP_nrs 13
-#define INTERP_nri 14
-#define INTERP_nrr 15
-#define INTERP_snn 16
-#define INTERP_sns 17
-#define INTERP_sni 18
-#define INTERP_snr 19
-#define INTERP_ssn 20
-#define INTERP_sss 21
-#define INTERP_ssi 22
-#define INTERP_ssr 23
-#define INTERP_sin 24
-#define INTERP_sis 25
-#define INTERP_sii 26
-#define INTERP_sir 27
-#define INTERP_srn 28
-#define INTERP_srs 29
-#define INTERP_sri 30
-#define INTERP_srr 31
-
-#define INTERP_nnnn 0
-#define INTERP_nnns 1
-#define INTERP_nnsn 4
-#define INTERP_nnss 5
-#define INTERP_nsnn 16
-#define INTERP_nsns 17
-#define INTERP_nssn 20
-#define INTERP_nsss 21
-#define INTERP_snnn 64
-#define INTERP_snns 65
-#define INTERP_snsn 68
-#define INTERP_snss 69
-#define INTERP_ssnn 80
-#define INTERP_ssns 81
-#define INTERP_sssn 84
-#define INTERP_ssss 85
-#define INTERP_niii 42
-#define INTERP_siii 106
-#define INTERP_nrrr 63
-#define INTERP_srrr 127
-
-
-#define INTERP_MASK 3
-#define INTERP_SHIFT 2
-
-LVAL snd_badsr(void);
-
-typedef double time_type;
-typedef double rate_type;
-typedef float sample_type;
-typedef double promoted_sample_type;
-
-/* use radians or degrees for phase? */
-#define ANGLEBASE 360.0
-
-/* used by sndwrite.c for output buffers. This should be
- * eliminated:
- */
-#define MAX_SND_CHANNELS 8
-
-#define max_table_len 100000
-/* Set to 4 for debugging block allocation stuff, 1012? for
- production
-*/
-/* leave a few words short of 1024 in case we allocate powers of 2 */
-#define max_sample_block_len 1020
-/* #define max_sample_block_len 4 */
-
-/* Defines needed for xlisp */
-#define getsound(x) ((sound_type) getinst(x))
-#define xlgasound() (testarg(typearg(soundp)))
-
-typedef short SFDataType, *SFDataPtr;
-
-typedef sample_type sample_block_values[max_sample_block_len],
- *sample_block_values_type;
-
-typedef struct {
- long refcnt; /* reference count */
- sample_block_values samples;
-} sample_block_node, *sample_block_type;
-
-
-typedef struct snd_susp_struct {
- void (*fetch)();
- void (*keep_fetch)();
- void (*free)();
- void (*mark)(); /* marks LVAL nodes for GC */
- void (*print_tree)(); /* debugging */
- char * name; /* string name for debugging */
- long toss_cnt; /* return this many zeros, then compute */
- long current; /* current sample number */
- double sr; /* sample rate */
- time_type t0; /* starting time */
- long log_stop_cnt; /* logical stop count */
- /* other susp dependent stuff will be here... */
-} snd_susp_node, *snd_susp_type;
-
-
-typedef struct snd_list_struct {
- sample_block_type block; /* pointer to block of samples */
- union {
- struct snd_list_struct *next;
- snd_susp_type susp;
- } u;
- short refcnt;
- short block_len;
- boolean logically_stopped;
-} snd_list_node, *snd_list_type;
-
-
-typedef struct table_struct {
- long refcount; /* reference count */
- double length; /* number of samples in table (double allows fractional length)*/
- sample_type samples[1]; /* arbitrary length array of sample */
-} table_node, *table_type;
-
-
-/* some counts are biased by -max_sample_block_len, so UNKNOWN can't be -1
- * Any number less than -max_sample_block should do
- */
-#define UNKNOWN (-10-max_sample_block_len)
-
-typedef struct sound_struct {
- sample_block_type (*get_next)(/* struct sound_struct * snd, long * cnt */);
- time_type time; /* logical starting time */
- time_type t0; /* quantized time of first sample */
- long stop; /* stop (clipping) sample no. */
- time_type true_t0; /* exact time of first sample */
- rate_type sr; /* sample rate */
- long current; /* current sample number,
- if negative, then the first
- -current samples must be dropped
- in order to find the first sample */
- long logical_stop_cnt; /* log stop sample no, -1=unknwn */
- snd_list_type list; /* sample block list, starting at curr. samp */
- sample_type scale; /* scale factor for the result */
- long prepend_cnt; /* how many zeros to prepend */
- /* function to use as get_next after prepended zeros have been generated: */
- sample_block_type (*after_prepend)
- (/* struct sound_struct * snd, long * cnt */);
- table_type table; /* pointer to table-ized version of this sound */
- long *extra; /* used for extra state information, first word of extra state should
- * be the length of the extra state (see sound_unref())
- */
-} sound_node, *sound_type;
-
-/* convert number of samples to memory size: */
-#define table_size_in_bytes(n) (sizeof(table_node) + sizeof(sample_type) * ((n) - 1))
-
-extern sample_block_type zero_block;
-extern sample_block_type internal_zero_block;
-
-extern snd_list_type zero_snd_list;
-
-extern sound_type printing_this_sound; /* debugging global */
-
-double compute_phase(double phase, double key, long n, double srate,
- double new_srate, double freq, double *incr_ptr);
-
-boolean soundp();
-/* LISP: (SOUNDP ANY) */
-
-void snd_list_ref(snd_list_type list);
-void sound_unref(sound_type snd);
-void snd_list_unref(snd_list_type list);
-
-LVAL cvsound();
-extern LVAL a_sound;
-
-sample_block_type SND_get_next(sound_type snd, long * cnt);
-sample_block_type SND_get_first(sound_type snd, long * cnt);
-sample_block_type SND_get_zeros(sound_type snd, long * cnt);
-sample_block_type SND_flush(sound_type snd, long * cnt);
-
-double hz_to_step(); /* LISP: (HZ-TO-STEP ANYNUM) */
-int interp_style(sound_type s, rate_type sr);
-void set_logical_stop_time(); /* LISP: (SND-SET-LOGICAL-STOP SOUND ANYNUM) */
-
-#define xlog(x) log(x)
-/* LISP: double (LOG FLONUM) */
-snd_list_type snd_list_create(snd_susp_type susp);
-void snd_list_terminate(snd_list_type snd_list);
-void snd_sort_2(sound_type * s1_ptr, sound_type * s2_ptr, rate_type sr);
-
-double snd_sref(sound_type s, time_type t);
- /* LISP: (SND-SREF SOUND ANYNUM) */
-
-double snd_sref_inverse(sound_type s, double val);
- /* LISP: (SREF-INVERSE SOUND ANYNUM) */
-
-double snd_stop_time(sound_type s); /* LISP: (SND-STOP-TIME SOUND) */
-#define snd_time(s) (s)->time
- /* LISP: double (SND-TIME SOUND) */
-
-#define snd_srate(s) (s)->sr
- /* LISP: double (SND-SRATE SOUND) */
-#define snd_t0(s) (s)->t0
- /* LISP: double (SND-T0 SOUND) */
-
-sound_type snd_xform(sound_type snd, rate_type sr, time_type time,
- time_type start_time, time_type stop_time, promoted_sample_type scale);
- /* LISP: (SND-XFORM SOUND ANYNUM ANYNUM ANYNUM ANYNUM ANYNUM) */
-sound_type sound_create(snd_susp_type susp, time_type t0, rate_type sr,
- promoted_sample_type scale);
-
-void min_cnt(long *cnt_ptr, sound_type sound, snd_susp_type susp, long cnt);
-void indent(int n);
-void sound_prepend_zeros(sound_type snd, time_type t0);
-
-
-
-#ifndef GCBUG
-#define blocks_to_watch_max 50
-extern long blocks_to_watch_len;
-extern sample_block_type blocks_to_watch[blocks_to_watch_max];
-
-void block_watch(long sample_block);
- /* LISP: (BLOCK-WATCH FIXNUM) */
-long sound_nth_block(sound_type snd, long n);
- /* LISP: (SOUND-NTH-BLOCK SOUND FIXNUM) */
-#endif
-
-sound_type sound_copy(sound_type snd);
- /* LISP: (SND-COPY SOUND) */
-void sound_xlmark(sound_type s);
-void sound_print(LVAL snd_expr, long n);
- /* LISP: (SND-PRINT ANY FIXNUM) */
-void sound_play(LVAL snd_expr);
- /* LISP: (SND-PLAY ANY) */
-void stats();
- /* LISP: (STATS) */
-void sound_print_tree(sound_type snd);
- /* LISP: (SND-PRINT-TREE SOUND) */
-
-void sound_print_tree_1(sound_type snd, int n);
-
-sound_type sound_scale(double factor, sound_type snd);
- /* LISP: (SND-SCALE ANYNUM SOUND) */
-void sound_init(void);
-
-void sound_symbols(void);
-
-table_type sound_to_table(sound_type s);
-
-void table_unref(table_type table);
-
-sound_type sound_zero(time_type t0, rate_type sr);
- /* LISP: (SND-ZERO ANYNUM ANYNUM) */
-
-#define sound_get_next(s, n) ((*(s->get_next))(s, n))
-
-#define susp_print_tree(s, n) (*((s)->print_tree))(s, n)
-
-double step_to_hz();
- /* LISP: (STEP-TO-HZ ANYNUM) */
-
-/* macros for access to samples within a suspension */
-/* NOTE: assume suspension structure is named "susp" */
-
-/* susp_check_samples points sample_ptr to a new sample block if necessary */
-#define susp_check_samples(sound, sample_ptr, sample_cnt) \
- if (susp->sample_cnt == 0) \
- susp_get_samples(sound, sample_ptr, sample_cnt)
-
-/* susp_check_samples_break is similar to susp_check_samples - "_break"
- * normally means that this code will break out of the inner loop, but in
- * this case, there is no reason (neither log nor term) to break.
- * x2_sample is taken from sound
- */
-#define susp_check_samples_break(sound, sample_ptr, sample_cnt, x2_sample) \
- if (susp->sample_cnt == 0) { \
- susp_get_samples(sound, sample_ptr, sample_cnt); \
- x2_sample = susp_current_sample(sound, sample_ptr); }
-
-
-/* susp_get_samples always gets next block (useful only in initialization code) */
-#define susp_get_samples(sound, sample_ptr, sample_cnt) \
- susp->sample_ptr = sound_get_next(susp->sound, &(susp->sample_cnt))->samples
-
-/* susp_get_block_samples always gets next block (useful only in initialization code) */
-#define susp_get_block_samples(sound, sample_block_ptr, sample_ptr, sample_cnt) \
- susp->sample_block_ptr = sound_get_next(susp->sound, &susp->sample_cnt); \
- susp->sample_ptr = susp->sample_block_ptr->samples
-
-/* susp_took is called after you've taken n samples */
-#define susp_took(sample_cnt, n) susp->sample_cnt -= n
-
-/* susp_fetch_sample is used to grab just one sample, doesn't check for samples!,
- * but applies scale factor: */
-#define susp_fetch_sample(sound, sample_ptr, sample_cnt) \
- (susp->sound->scale * (susp->sample_cnt--, *(susp->sample_ptr++)))
-
-/* susp_current_sample grabs sample without advancing to next, applies scale
- * factor: */
-#define susp_current_sample(sound, sample_ptr) \
- (susp->sound->scale * (*(susp->sample_ptr)))
-
-/* susp_check_term_samples checks for samples; if new ones are fetched, then
- * run termination test on signal and record result.
- */
-#define susp_check_term_samples(sound, sample_ptr, sample_cnt) \
- if (susp->sample_cnt == 0) { \
- susp_get_samples(sound, sample_ptr, sample_cnt); \
- terminate_test(sample_ptr, sound, susp->sample_cnt); }
-
-/* susp_check_term_log_samples checks for samples
- * if new ones are fetched, then run termination test and logical stop
- * test on signal and record results.
- */
-#define susp_check_term_log_samples(sound, sample_ptr, sample_cnt) \
- if (susp->sample_cnt == 0) { \
- susp_get_samples(sound, sample_ptr, sample_cnt); \
- logical_stop_test(sound, susp->sample_cnt); \
- terminate_test(sample_ptr, sound, susp->sample_cnt); }
-
-/* susp_check_term_log_block_samples checks for samples
- * if new ones are fetched, then run termination test and logical stop
- * test on signal and record results. In this case, termination and logical
- * stop happen at the MAXIMUM of termination and logical stop times, resp.
- */
-#define susp_check_term_log_block_samples(sound, sample_block_ptr, sample_ptr, sample_cnt, bit, all) \
- if (susp->sample_cnt == 0) { \
- susp_get_block_samples(sound, sample_block_ptr, sample_ptr, sample_cnt); \
- if (susp->sound->logical_stop_cnt ==\
- susp->sound->current - susp->sample_cnt) { \
- susp->logical_stop_bits |= bit; \
- if (susp->logical_stop_bits == all) { \
- susp->susp.log_stop_cnt = (long) \
- ((((susp->sound->current - susp->sample_cnt) / \
- susp->sound->sr + susp->sound->t0) - \
- susp->susp.t0) * susp->susp.sr + 0.5); } } \
- if (susp->sample_ptr == zero_block->samples) { \
- susp->terminate_bits |= bit; \
- if (susp->terminate_bits == all) { \
- susp->terminate_cnt = (long) \
- ((((susp->sound->current - susp->sample_cnt) / \
- susp->sound->sr + susp->sound->t0) - \
- susp->susp.t0) * susp->susp.sr + 0.5); \
- } } }
-
-
-/* logical_stop_cnt_cvt is used to convert from the logical stop count
- * at one sample rate to that of another sample rate -- this macro is
- * used by the snd_make_<op> routine in every <op>.c file, and assumes
- * the target sample rate is susp->susp.sr.
- *
- * NOTE: this macro does not take into account the possibility of different
- * start times - maybe it should.
- */
-#define logical_stop_cnt_cvt(sound) \
- (sound->logical_stop_cnt == UNKNOWN ? UNKNOWN : \
- ROUND((sound->logical_stop_cnt / sound->sr) * susp->susp.sr))
-
-
-/* logical_stop_test tests to see if sound has logically stopped; if so,
- * sets susp->susp.log_stop_cnt. The resulting logical_stop_cnt will reflect
- * the minimum logical_stop time of all sounds to which this test is applied.
- */
-#define logical_stop_test(sound, cnt) \
- if (susp->sound->logical_stop_cnt == susp->sound->current - (cnt)) {\
- min_cnt(&susp->susp.log_stop_cnt, susp->sound, (snd_susp_type) susp, cnt); }
-
-/* terminate_test checks to see if sound has terminated; if so,
- * sets susp->terminate_cnt. The resulting terminate_cnt will reflect
- * the minimum termination time of all sounds to which this test is applied.
- */
-#define terminate_test(sample_ptr, sound, cnt) \
- if (susp->sample_ptr == zero_block->samples) { \
- min_cnt(&susp->terminate_cnt, susp->sound, (snd_susp_type) susp, cnt); }
-
-
-/* susp_check_log_samples checks for new samples then checks for
- * termination and logical stop conditions
- */
-#define susp_check_log_samples(sound, sample_ptr, sample_cnt) \
- if (susp->sample_cnt == 0) { \
- susp_get_samples(sound, sample_ptr, sample_cnt); \
- logical_stop_test(sound, susp->sample_cnt); }
-
-/* susp_check_term_samples_break checks for new samples then checks for
- * termination condition; breaks from inner loop
- */
-#define susp_check_term_samples_break( \
- sound, sample_ptr, sample_cnt, x2_sample) \
- if (susp->sample_cnt == 0) { \
- susp_get_samples(sound, sample_ptr, sample_cnt); \
- x2_sample = susp_current_sample(sound, sample_ptr); \
- terminate_test(sample_ptr, sound, susp->sample_cnt); \
- if (susp->terminate_cnt < susp->susp.current + cnt + togo) { \
- break; }} \
- else x2_sample = susp_current_sample(sound, sample_ptr);
-
-/* susp_check_log_samples_break checks for new samples then checks for
- * logical stop conditions; breaks from inner loop
- */
-#define susp_check_log_samples_break( \
- sound, sample_ptr, sample_cnt, x2_sample) \
- if (susp->sample_cnt == 0) { \
- susp_get_samples(sound, sample_ptr, sample_cnt); \
- x2_sample = susp_current_sample(sound, sample_ptr); \
- logical_stop_test(sound, susp->sample_cnt); \
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN && \
- (susp->susp.log_stop_cnt < susp->susp.current + cnt + togo)) { \
- break; }} \
- else x2_sample = susp_current_sample(sound, sample_ptr);
-
-
-/* susp_check_term_log_samples_break checks for new samples then checks for
- * termination and logical stop conditions; breaks from inner loop
- */
-#define susp_check_term_log_samples_break( \
- sound, sample_ptr, sample_cnt, x2_sample) \
- if (susp->sample_cnt == 0) { \
- susp_get_samples(sound, sample_ptr, sample_cnt); \
- x2_sample = susp_current_sample(sound, sample_ptr); \
- terminate_test(sample_ptr, sound, susp->sample_cnt); \
- logical_stop_test(sound, susp->sample_cnt); \
- if ((susp->terminate_cnt != UNKNOWN && \
- susp->terminate_cnt < susp->susp.current + cnt + togo) || \
- (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN && \
- susp->susp.log_stop_cnt < susp->susp.current + cnt + togo)) { \
- break; }} \
- else x2_sample = susp_current_sample(sound, sample_ptr);
-
-
diff --git a/lib-src/libnyquist/nyqsrc/stats.c b/lib-src/libnyquist/nyqsrc/stats.c
deleted file mode 100644
index 7f21612..0000000
--- a/lib-src/libnyquist/nyqsrc/stats.c
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * stats.c
- *
- * produce statistics.
- */
-#include "switches.h"
-#include <stdio.h>
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-#include "falloc.h"
-
-
-void stats()
-{
- nyquist_printf("\n\nNyquist statistics:\n\n");
- nyquist_printf("Memory usage:\n");
- nyquist_printf("\tconsumed %d pools of size %d\n", npools, MAXPOOLSIZE);
- nyquist_printf("\tdata structure usage:\n");
- nyquist_printf("\t\tsounds\t%d\n", sound_used);
- nyquist_printf("\t\tsnd lists\t%d\n", snd_list_used);
- nyquist_printf("\t\tsample blocks\t%d\n", sample_block_used);
- nyquist_printf("\t\ttable space in bytes\t%ld\n", table_memory);
- nyquist_printf("\n");
-}
diff --git a/lib-src/libnyquist/nyqsrc/stdefs.h b/lib-src/libnyquist/nyqsrc/stdefs.h
deleted file mode 100644
index 9eba22c..0000000
--- a/lib-src/libnyquist/nyqsrc/stdefs.h
+++ /dev/null
@@ -1,49 +0,0 @@
-/* stdefs.h */
-
-#ifndef TRUE
-#define TRUE 1
-#endif
-
-#ifndef FALSE
-#define FALSE 0
-#endif
-
-#ifndef PI
-#define PI (3.14159265358979323846)
-#endif
-
-#ifndef PI2
-#define PI2 (6.28318530717958647693)
-#endif
-
-#define D2R (0.01745329348) /* (2*pi)/360 */
-#define R2D (57.29577951) /* 360/(2*pi) */
-
-#ifndef MAX
-#define MAX(x,y) ((x)>(y) ?(x):(y))
-#endif
-#ifndef MIN
-#define MIN(x,y) ((x)<(y) ?(x):(y))
-#endif
-
-#ifndef ABS
-#define ABS(x) ((x)<0 ?(-(x)):(x))
-#endif
-
-#ifndef SGN
-#define SGN(x) ((x)<0 ?(-1):((x)==0?(0):(1)))
-#endif
-
-typedef float mem_float;
-typedef double fast_float;
-
-/* I took out this typedef because the same thing
- * exists in cext.h which causes a conflict: -RBD
-typedef unsigned char boolean; */
-
-#include "cext.h"
-
-#define true 1
-#define false 0
-
-
diff --git a/lib-src/libnyquist/nyqsrc/yin.c b/lib-src/libnyquist/nyqsrc/yin.c
deleted file mode 100644
index 43387b1..0000000
--- a/lib-src/libnyquist/nyqsrc/yin.c
+++ /dev/null
@@ -1,466 +0,0 @@
-/* yin.c -- partial implementation of the YIN algorithm, with some
- * fixes by DM. This code should be replaced with the fall 2002
- * intro to computer music implementation project.
- */
-
-#include "stdio.h"
-#ifdef UNIX
-#include "sys/file.h"
-#endif
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "snd.h"
-#include "xlisp.h"
-#include "sound.h"
-#include "falloc.h"
-#include "yin.h"
-
-void yin_free();
-
-/* for multiple channel results, one susp is shared by all sounds */
-/* the susp in turn must point back to all sound list tails */
-
-typedef struct yin_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type s;
- long s_cnt;
- sample_block_values_type s_ptr;
- long blocksize;
- long stepsize;
- sample_type *block;
- float *temp;
- sample_type *fillptr;
- sample_type *endptr;
- snd_list_type chan[2]; /* array of back pointers */
- long cnt; /* how many sample frames to read */
- long m;
- long middle;
-} yin_susp_node, *yin_susp_type;
-
-
-// Uses cubic interpolation to return the value of x such
-// that the function defined by f(0), f(1), f(2), and f(3)
-// is maximized.
-//
-float CubicMaximize(float y0, float y1, float y2, float y3)
-{
- // Find coefficients of cubic
-
- float a, b, c, d;
- float da, db, dc;
- float discriminant;
- float x1, x2;
- float dda, ddb;
-
- a = (float) (y0/-6.0 + y1/2.0 - y2/2.0 + y3/6.0);
- b = (float) (y0 - 5.0*y1/2.0 + 2.0*y2 - y3/2.0);
- c = (float) (-11.0*y0/6.0 + 3.0*y1 - 3.0*y2/2.0 + y3/3.0);
- d = y0;
-
- // Take derivative
-
- da = 3*a;
- db = 2*b;
- dc = c;
-
- // Find zeroes of derivative using quadratic equation
-
- discriminant = db*db - 4*da*dc;
- if (discriminant < 0.0)
- return -1.0; // error
-
- x1 = (float) ((-db + sqrt(discriminant)) / (2 * da));
- x2 = (float) ((-db - sqrt(discriminant)) / (2 * da));
-
- // The one which corresponds to a local _maximum_ in the
- // cubic is the one we want - the one with a negative
- // second derivative
-
- dda = 2*da;
- ddb = db;
-
- if (dda*x1 + ddb < 0)
- return x1;
- else
- return x2;
-}
-
-
-void yin_compute(yin_susp_type susp, float *pitch, float *harmonicity)
-{
- float *samples = susp->block;
- int middle = susp->middle;
- /* int n = middle * 2; */
- int m = susp->m;
- float threshold = 0.9F;
- float *results = susp->temp;
-
- /* samples is a buffer of samples */
- /* n is the number of samples, equals twice longest period, must be even */
- /* m is the shortest period in samples */
- /* results is an array of size n/2 - m + 1, the number of different lags */
-
- /* work from the middle of the buffer: */
- int i, j; /* loop counters */
- /* how many different lags do we compute? */
- /* int iterations = middle + 1 - m; */
- float left_energy = 0;
- float right_energy = 0;
- /* for each window, we keep the energy so we can compute the next one */
- /* incrementally. First, we need to compute the energies for lag m-1: */
- *pitch = 0;
- for (i = 0; i < m - 1; i++) {
- float left = samples[middle - 1 - i];
- float right = samples[middle + i];
- left_energy += left * left;
- right_energy += right * right;
- }
- for (i = m; i <= middle; i++) {
- /* i is the lag and the length of the window */
- /* compute the energy for left and right */
- float left, right, energy, a;
- float harmonic;
- left = samples[middle - i];
- left_energy += left * left;
- right = samples[middle - 1 + i];
- right_energy += right * right;
- /* compute the autocorrelation */
- a = 0;
- for (j = 0; j < i; j++) {
- a += samples[middle - i + j] * samples[middle + j];
- }
- energy = left_energy + right_energy;
- harmonic = (2 * a) / energy;
- results[i - m] = harmonic;
- }
- for (i = m; i <= middle; i++) {
- if (results[i - m] > threshold) {
- float f_i = (i - 1) +
- CubicMaximize(results[i - m - 1], results[i - m],
- results[i - m + 1], results[i - m + 2]);
- if (f_i < i - m - 1 || f_i > i - m + 2) f_i = (float) i;
- *pitch = (float) hz_to_step((float) susp->susp.sr / f_i);
- *harmonicity = results[i - m];
- break;
- }
- }
-}
-
-
-/* yin_fetch - compute F0 and harmonicity using YIN approach. */
-/*
- * The pitch (F0) is determined by finding two periods whose
- * inner product accounts for almost all of the energy. Let X and Y
- * be adjacent vectors of length N in the sample stream. Then,
- * if 2X*Y > threshold * (X*X + Y*Y)
- * then the period is given by N
- * In the algorithm, we compute different sizes until we find a
- * peak above threshold. Then, we use cubic interpolation to get
- * a precise value. If no peak above threshold is found, we return
- * the first peak. The second channel returns the value 2X*Y/(X*X+Y*Y)
- * which is refered to as the "harmonicity" -- the amount of energy
- * accounted for by periodicity.
- *
- * Low sample rates are advised because of the high cost of computing
- * inner products (fast autocorrelation is not used).
- *
- * The result is a 2-channel signal running at the requested rate.
- * The first channel is the estimated pitch, and the second channel
- * is the harmonicity.
- *
- * This code is adopted from multiread, currently the only other
- * multichannel suspension in Nyquist. Comments from multiread include:
- * The susp is shared by all channels. The susp has backpointers
- * to the tail-most snd_list node of each channel, and it is by
- * extending the list at these nodes that sounds are read in.
- * To avoid a circularity, the reference counts on snd_list nodes
- * do not include the backpointers from this susp. When a snd_list
- * node refcount goes to zero, the yin susp's free routine
- * is called. This must scan the backpointers to find the node that
- * has a zero refcount (the free routine is called before the node
- * is deallocated, so this is safe). The backpointer is then set
- * to NULL. When all backpointers are NULL, the susp itself is
- * deallocated, because it can only be referenced through the
- * snd_list nodes to which there are backpointers.
- */
-void yin_fetch(yin_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo = 0;
- int n;
- sample_block_type f0;
- sample_block_values_type f0_ptr = NULL;
- sample_block_type harmonicity;
- sample_block_values_type harmonicity_ptr = NULL;
-
- register sample_block_values_type s_ptr_reg;
- register sample_type *fillptr_reg;
- register sample_type *endptr_reg = susp->endptr;
-
- if (susp->chan[0]) {
- falloc_sample_block(f0, "yin_fetch");
- f0_ptr = f0->samples;
- /* Since susp->chan[i] exists, we want to append a block of samples.
- * The block, out, has been allocated. Before we insert the block,
- * we must figure out whether to insert a new snd_list_type node for
- * the block. Recall that before SND_get_next is called, the last
- * snd_list_type in the list will have a null block pointer, and the
- * snd_list_type's susp field points to the suspension (in this case,
- * susp). When SND_get_next (in sound.c) is called, it appends a new
- * snd_list_type and points the previous one to internal_zero_block
- * before calling this fetch routine. On the other hand, since
- * SND_get_next is only going to be called on one of the channels, the
- * other channels will not have had a snd_list_type appended.
- * SND_get_next does not tell us directly which channel it wants (it
- * doesn't know), but we can test by looking for a non-null block in the
- * snd_list_type pointed to by our back-pointers in susp->chan[]. If
- * the block is null, the channel was untouched by SND_get_next, and
- * we should append a snd_list_type. If it is non-null, then it
- * points to internal_zero_block (the block inserted by SND_get_next)
- * and a new snd_list_type has already been appended.
- */
- /* Before proceeding, it may be that garbage collection ran when we
- * allocated out, so check again to see if susp->chan[j] is Null:
- */
- if (!susp->chan[0]) {
- ffree_sample_block(f0, "yin_fetch");
- f0 = NULL; /* make sure we don't free it again */
- f0_ptr = NULL; /* make sure we don't output f0 samples */
- } else if (!susp->chan[0]->block) {
- snd_list_type snd_list = snd_list_create((snd_susp_type) susp);
- /* Now we have a snd_list to append to the channel, but a very
- * interesting thing can happen here. snd_list_create, which
- * we just called, MAY have invoked the garbage collector, and
- * the GC MAY have freed all references to this channel, in which
- * case yin_free(susp) will have been called, and susp->chan[0]
- * will now be NULL!
- */
- if (!susp->chan[0]) {
- ffree_snd_list(snd_list, "yin_fetch");
- } else {
- susp->chan[0]->u.next = snd_list;
- }
- }
- /* see the note above: we don't know if susp->chan still exists */
- /* Note: We DO know that susp still exists because even if we lost
- * some channels in a GC, someone is still calling SND_get_next on
- * some channel. I suppose that there might be some very pathological
- * code that could free a global reference to a sound that is in the
- * midst of being computed, perhaps by doing something bizarre in the
- * closure that snd_seq activates at the logical stop time of its first
- * sound, but I haven't thought that one through.
- */
- if (susp->chan[0]) {
- susp->chan[0]->block = f0;
- /* check some assertions */
- if (susp->chan[0]->u.next->u.susp != (snd_susp_type) susp) {
- nyquist_printf("didn't find susp at end of list for chan 0\n");
- }
- } else if (f0) { /* we allocated f0, but don't need it anymore due to GC */
- ffree_sample_block(f0, "yin_fetch");
- f0_ptr = NULL;
- }
- }
-
- /* Now, repeat for channel 1 (comments omitted) */
- if (susp->chan[1]) {
- falloc_sample_block(harmonicity, "yin_fetch");
- harmonicity_ptr = harmonicity->samples;
- if (!susp->chan[1]) {
- ffree_sample_block(harmonicity, "yin_fetch");
- harmonicity = NULL; /* make sure we don't free it again */
- harmonicity_ptr = NULL;
- } else if (!susp->chan[1]->block) {
- snd_list_type snd_list = snd_list_create((snd_susp_type) susp);
- if (!susp->chan[1]) {
- ffree_snd_list(snd_list, "yin_fetch");
- } else {
- susp->chan[1]->u.next = snd_list;
- }
- }
- if (susp->chan[1]) {
- susp->chan[1]->block = harmonicity;
- if (susp->chan[1]->u.next->u.susp != (snd_susp_type) susp) {
- nyquist_printf("didn't find susp at end of list for chan 1\n");
- }
- } else if (harmonicity) { /* we allocated harmonicity, but don't need it anymore due to GC */
- ffree_sample_block(harmonicity, "yin_fetch");
- harmonicity_ptr = NULL;
- }
- }
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first, compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block */
- togo = (max_sample_block_len - cnt) * susp->stepsize;
-
- /* don't run past the s input sample block */
- susp_check_term_log_samples(s, s_ptr, s_cnt);
- togo = min(togo, susp->s_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo/susp->stepsize) {
- togo = (susp->terminate_cnt - (susp->susp.current + cnt)) * susp->stepsize;
- if (togo == 0) break;
- }
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop = 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the output block)
- */
- if (to_stop < togo/susp->stepsize) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we can set
- * the logical stop flag on this output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new block a the LST */
- togo = to_stop * susp->stepsize;
- }
- }
- n = togo;
- s_ptr_reg = susp->s_ptr;
- fillptr_reg = susp->fillptr;
- if (n) do { /* the inner sample computation loop */
- *fillptr_reg++ = *s_ptr_reg++;
- if (fillptr_reg >= endptr_reg) {
- float f0;
- float harmonicity;
- yin_compute(susp, &f0, &harmonicity);
- if (f0_ptr) *f0_ptr++ = f0;
- if (harmonicity_ptr) *harmonicity_ptr++ = harmonicity;
- cnt++;
- fillptr_reg -= susp->stepsize;
- }
- } while (--n); /* inner loop */
-
- /* using s_ptr_reg is a bad idea on RS/6000: */
- susp->s_ptr += togo;
- susp->fillptr = fillptr_reg;
- susp_took(s_cnt, togo);
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
-
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* yin_fetch */
-
-
-void yin_mark(yin_susp_type susp)
-{
- sound_xlmark(susp->s);
-}
-
-
-void yin_free(yin_susp_type susp)
-{
- int j;
- boolean active = false;
-/* stdputstr("yin_free: "); */
-
- for (j = 0; j < 2; j++) {
- if (susp->chan[j]) {
- if (susp->chan[j]->refcnt) active = true;
- else {
- susp->chan[j] = NULL;
- /* nyquist_printf("deactivating channel %d\n", j); */
- }
- }
- }
- if (!active) {
-/* stdputstr("all channels freed, freeing susp now\n"); */
- ffree_generic(susp, sizeof(yin_susp_node), "yin_free");
- sound_unref(susp->s);
- free(susp->block);
- free(susp->temp);
- }
-}
-
-
-void yin_print_tree(yin_susp_type susp, int n)
-{
- indent(n);
- stdputstr("s:");
- sound_print_tree_1(susp->s, n);
-}
-
-
-LVAL snd_make_yin(sound_type s, double low_step, double high_step, long stepsize)
-{
- LVAL result;
- int j;
- register yin_susp_type susp;
- rate_type sr = s->sr;
- time_type t0 = s->t0;
-
- falloc_generic(susp, yin_susp_node, "snd_make_yin");
- susp->susp.fetch = yin_fetch;
- susp->terminate_cnt = UNKNOWN;
-
- /* initialize susp state */
- susp->susp.free = yin_free;
- susp->susp.sr = sr / stepsize;
- susp->susp.t0 = t0;
- susp->susp.mark = yin_mark;
- susp->susp.print_tree = yin_print_tree;
- susp->susp.name = "yin";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(s);
- susp->susp.current = 0;
- susp->s = s;
- susp->s_cnt = 0;
- susp->m = (long) (sr / step_to_hz(high_step));
- if (susp->m < 2) susp->m = 2;
- /* add 1 to make sure we round up */
- susp->middle = (long) (sr / step_to_hz(low_step)) + 1;
- susp->blocksize = susp->middle * 2;
- susp->stepsize = stepsize;
- /* blocksize must be at least step size to implement stepping */
- if (susp->stepsize > susp->blocksize) susp->blocksize = susp->stepsize;
- susp->block = (sample_type *) malloc(susp->blocksize * sizeof(sample_type));
- susp->temp = (float *) malloc((susp->middle - susp->m + 1) * sizeof(float));
- susp->fillptr = susp->block;
- susp->endptr = susp->block + susp->blocksize;
-
- xlsave1(result);
-
- result = newvector(2); /* create array for F0 and harmonicity */
- /* create sounds to return */
- for (j = 0; j < 2; j++) {
- sound_type snd = sound_create((snd_susp_type)susp,
- susp->susp.t0, susp->susp.sr, 1.0);
- LVAL snd_lval = cvsound(snd);
-/* nyquist_printf("yin_create: sound %d is %x, LVAL %x\n", j, snd, snd_lval); */
- setelement(result, j, snd_lval);
- susp->chan[j] = snd->list;
- }
- xlpop();
- return result;
-}
-
-
-LVAL snd_yin(sound_type s, double low_step, double high_step, long stepsize)
-{
- sound_type s_copy = sound_copy(s);
- return snd_make_yin(s_copy, low_step, high_step, stepsize);
-}
diff --git a/lib-src/libnyquist/nyqsrc/yin.h b/lib-src/libnyquist/nyqsrc/yin.h
deleted file mode 100644
index 656aa81..0000000
--- a/lib-src/libnyquist/nyqsrc/yin.h
+++ /dev/null
@@ -1,6 +0,0 @@
-/* yin.h -- Nyquist code for F0 estimation using YIN approach */
-
-
-LVAL snd_yin(sound_type s, double low_step, double high_step, long stepsize);
-/* LISP: (SND-YIN SOUND ANYNUM ANYNUM FIXNUM) */
-
diff --git a/lib-src/libnyquist/nyx/nyx.c b/lib-src/libnyquist/nyx/nyx.c
deleted file mode 100644
index ad0e8c1..0000000
--- a/lib-src/libnyquist/nyx/nyx.c
+++ /dev/null
@@ -1,755 +0,0 @@
-/**********************************************************************
-
- nyx.c
-
- Nyx: A very simple external interface to Nyquist
-
- Dominic Mazzoni
-
-**********************************************************************/
-
-/* system includes */
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <errno.h>
-#include <math.h>
-
-#ifndef WIN32
-#include <unistd.h>
-#endif
-
-/* nyx includes */
-#include "nyx.h"
-
-/* xlisp includes */
-#include "switches.h"
-#include "xlisp.h"
-#include "term.h"
-#include "cext.h"
-
-/* nyquist includes */
-#include "sound.h"
-#include "falloc.h"
-
-
-/* nyquist externs */
-extern LVAL a_sound;
-extern snd_list_type zero_snd_list;
-
-/* globals */
-int nyx_output_pos;
-int nyx_output_len;
-char *nyx_output_string;
-int nyx_expr_pos;
-int nyx_expr_len;
-const char *nyx_expr_string;
-LVAL nyx_result;
-XLCONTEXT nyx_cntxt;
-int nyx_parse_error_flag;
-int nyx_first_time = 1;
-LVAL nyx_old_obarray;
-
-typedef struct nyx_susp_struct {
- snd_susp_node susp;
- nyx_audio_callback callback;
- void *userdata;
- long len;
- int channel;
-} nyx_susp_node, *nyx_susp_type;
-
-LVAL copylist(LVAL from)
-{
- if (from == NULL)
- return NULL;
-
- return cons(car(from), copylist(cdr(from)));
-}
-
-/* Make a copy of the obarray so that we can erase any
- changes the user makes to global variables */
-void nyx_save_obarray()
-{
- LVAL array, obarrayvec;
- int i;
-
- xlsave1(array);
- array = newvector(HSIZE);
-
- obarrayvec = getvalue(obarray);
- for(i=0; i<HSIZE; i++) {
- LVAL from = getelement(obarrayvec, i);
- if (from)
- setelement(array, i, copylist(from));
- }
-
- nyx_old_obarray = obarray;
- obarray = xlmakesym("*OBARRAY*");
- setvalue(obarray, array);
- xlpop();
-}
-
-void nyx_init()
-{
- if (nyx_first_time) {
- char *argv[1];
- argv[0] = "nyquist";
- xlisp_main_init(1, argv);
-
- nyx_output_len = 0;
- nyx_output_pos = 0;
- nyx_output_string = NULL;
-
- nyx_first_time = 0;
- }
-
- /* keep nyx_result from being garbage-collected */
- xlprot1(nyx_result);
-
- nyx_save_obarray();
-}
-
-void nyx_cleanup()
-{
- if (nyx_output_string) {
- free(nyx_output_string);
- nyx_output_string = NULL;
- nyx_output_pos = 0;
- nyx_output_len = 0;
- }
-
- xlpop(); /* garbage-collect nyx_result */
- gc(); /* run the garbage-collector now */
-}
-
-void nyx_susp_fetch(register nyx_susp_type susp, snd_list_type snd_list)
-{
- sample_block_type out;
- sample_block_values_type out_ptr;
- long n;
- int err;
-
- falloc_sample_block(out, "nyx_susp_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- n = max_sample_block_len;
- if (susp->susp.current + n > susp->len)
- n = susp->len - susp->susp.current;
-
- err = susp->callback(out_ptr, susp->channel,
- susp->susp.current, n, 0, susp->userdata);
- if (err)
- longjmp(nyx_cntxt.c_jmpbuf, 1);
-
- snd_list->block_len = n;
- susp->susp.current += n;
-
- if (n == 0) {
- /* we didn't read anything, but can't return length zero, so
- convert snd_list to pointer to zero block */
- snd_list_terminate(snd_list);
- }
- else if (n < max_sample_block_len) {
- /* should free susp */
- snd_list_unref(snd_list->u.next);
- /* if something is in buffer, terminate by pointing to zero block */
- snd_list->u.next = zero_snd_list;
- }
-}
-
-void nyx_susp_free(nyx_susp_type susp)
-{
- ffree_generic(susp, sizeof(nyx_susp_node), "nyx_susp_free");
-}
-
-void nyx_susp_print_tree(nyx_susp_type susp, int n)
-{
-}
-
-void nyx_capture_output(int max_len)
-{
- if (nyx_output_string)
- free(nyx_output_string);
-
- nyx_output_string = (char *)malloc(max_len);
- nyx_output_len = max_len;
- nyx_output_pos = 0;
-}
-
-void nyx_get_captured_output(int *out_len,
- const char **out_chars)
-{
- *out_len = nyx_output_pos;
- *out_chars = (const char *)nyx_output_string;
- nyx_output_pos = 0;
-}
-
-void nyx_set_audio_params( double rate )
-{
- /* Bind the sample rate to the "*sound-srate*" global */
- setvalue(xlenter("*SOUND-SRATE*"), cvflonum(rate));
-}
-
-void nyx_set_input_audio(nyx_audio_callback callback,
- void *userdata,
- int num_channels,
- long len, double rate)
-{
- sample_type scale_factor = 1.0;
- time_type t0 = 0.0;
- nyx_susp_type *susp;
- sound_type *snd;
- double stretch_len;
- LVAL warp;
- int ch;
-
- susp = (nyx_susp_type *)malloc(num_channels * sizeof(nyx_susp_type));
- snd = (sound_type *)malloc(num_channels * sizeof(sound_type));
-
- for(ch=0; ch < num_channels; ch++) {
- falloc_generic(susp[ch], nyx_susp_node, "nyx_set_input_audio");
-
- susp[ch]->callback = callback;
- susp[ch]->userdata = userdata;
- susp[ch]->len = len;
- susp[ch]->channel = ch;
-
- susp[ch]->susp.sr = rate;
- susp[ch]->susp.t0 = t0;
- susp[ch]->susp.mark = NULL;
- susp[ch]->susp.print_tree = nyx_susp_print_tree;
- susp[ch]->susp.current = 0;
- susp[ch]->susp.fetch = nyx_susp_fetch;
- susp[ch]->susp.free = nyx_susp_free;
- susp[ch]->susp.name = "nyx";
-
- snd[ch] = sound_create((snd_susp_type)susp[ch], t0,
- rate,
- scale_factor);
- }
-
- /* Bind the sample rate to the "*sound-srate*" global */
- setvalue(xlenter("*SOUND-SRATE*"), cvflonum(rate));
-
- /* Bind selection len to "len" global */
- setvalue(xlenter("LEN"), cvflonum(len));
-
- if (len > 0)
- stretch_len = len / rate;
- else
- stretch_len = 1.0;
-
- /* Set the "*warp*" global based on the length of the audio */
- xlprot1(warp);
- warp = cons(cvflonum(0), /* time offset */
- cons(cvflonum(stretch_len), /* time stretch */
- cons(NULL, /* cont. time warp */
- NULL)));
- setvalue(xlenter("*WARP*"), warp);
- xlpop();
-
- if (num_channels > 1) {
- LVAL array = newvector(num_channels);
- for(ch=0; ch<num_channels; ch++)
- setelement(array, ch, cvsound(snd[ch]));
-
- setvalue(xlenter("S"), array);
- }
- else {
- LVAL s = cvsound(snd[0]);
-
- setvalue(xlenter("S"), s);
- }
-}
-
-int is_labels(LVAL expr)
-{
- /* make sure that we have a list whose first element is a
- list of the form (time "label") */
-
- LVAL label;
- LVAL first;
- LVAL second;
- LVAL third;
-
- if (!consp(expr))
- return 0;
-
- label = car(expr);
-
- if (!consp(label))
- return 0;
-
- first = car(label);
- if (!(floatp(first) || fixp(first)))
- return 0;
-
- if (!consp(cdr(label)))
- return 0;
-
- second = car(cdr(label));
-
- if (floatp(second) || fixp(second)) {
- if (!consp(cdr(cdr(label))))
- return 0;
- third = car(cdr(cdr(label)));
- if (!(stringp(third)))
- return 0;
- }
- else
- if (!(stringp(second)))
- return 0;
-
- /* If this is the end of the list, we're done */
-
- if (cdr(expr) == NULL)
- return 1;
-
- /* Otherwise recurse */
-
- return is_labels(cdr(expr));
-}
-
-nyx_rval nyx_get_type(LVAL expr)
-{
- if (expr==NULL)
- return nyx_error;
-
- switch(ntype(expr)) {
- case FIXNUM:
- return nyx_int;
- case FLONUM:
- return nyx_double;
- case STRING:
- return nyx_string;
- case VECTOR: {
- /* make sure it's a vector of sounds */
- int i;
- for(i=0; i<getsize(expr); i++)
- if (!soundp(getelement(expr, i)))
- return nyx_error;
- return nyx_audio;
- }
- case CONS: {
- /* see if it's a list of time/string pairs representing a
- label track */
- if (is_labels(expr))
- return nyx_labels;
- else
- return nyx_error;
- }
- case EXTERN: {
- if (soundp(expr))
- return nyx_audio;
- }
- } /* switch */
-
- return nyx_error;
-}
-
-nyx_rval nyx_eval_expression(const char *expr_string)
-{
- LVAL expr = NULL;
-
- nyx_expr_string = expr_string;
- nyx_expr_len = strlen(nyx_expr_string);
- nyx_expr_pos = 0;
-
- nyx_result = NULL;
- nyx_parse_error_flag = 0;
-
- xlprot1(expr);
-
- /* setup the error return */
- xlbegin(&nyx_cntxt,CF_TOPLEVEL|CF_CLEANUP|CF_BRKLEVEL,(LVAL)1);
- if (setjmp(nyx_cntxt.c_jmpbuf))
- goto finish;
-
- while(nyx_expr_pos < nyx_expr_len) {
- expr = NULL;
-
- /* read an expression */
- if (!xlread(getvalue(s_stdin), &expr, FALSE))
- break;
-
- #if 0
- /* save the input expression (so the user can refer to it
- as +, ++, or +++) */
- xlrdsave(expr);
- #endif
-
- /* evaluate the expression */
- nyx_result = xleval(expr);
- }
-
- xlflush();
-
- finish:
- xlend(&nyx_cntxt);
-
- xlpop(); /* unprotect expr */
-
- /* reset the globals to their initial state */
- obarray = nyx_old_obarray;
- setvalue(xlenter("S"), NULL);
- gc();
-
- return nyx_get_type(nyx_result);
-}
-
-int nyx_get_audio_num_channels()
-{
- if (nyx_get_type(nyx_result) != nyx_audio)
- return 0;
-
- if (vectorp(nyx_result))
- return getsize(nyx_result);
- else
- return 1;
-}
-
-int nyx_get_audio(nyx_audio_callback callback, void *userdata)
-{
- sample_block_type block;
- sound_type snd;
- sound_type *snds;
- float *buffer;
- long bufferlen;
- long *totals;
- long *lens;
- long cnt;
- int result = 0;
- int num_channels;
- int ch, i;
- int success = FALSE;
-
- if (nyx_get_type(nyx_result) != nyx_audio)
- return;
-
- num_channels = nyx_get_audio_num_channels();
- snds = (sound_type *)malloc(num_channels * sizeof(sound_type));
- totals = (long *)malloc(num_channels * sizeof(long));
- lens = (long *)malloc(num_channels * sizeof(long));
-
- /* setup the error return */
- xlbegin(&nyx_cntxt,CF_TOPLEVEL|CF_CLEANUP|CF_BRKLEVEL,(LVAL)1);
- if (setjmp(nyx_cntxt.c_jmpbuf))
- goto finish;
-
- for(ch=0; ch<num_channels; ch++) {
- if (num_channels == 1)
- snd = getsound(nyx_result);
- else
- snd = getsound(getelement(nyx_result, ch));
- snds[ch] = snd;
- totals[ch] = 0;
- lens[ch] = snd_length(snd, snd->stop);
- }
-
- buffer = NULL;
- bufferlen = 0;
-
- while(result==0) {
- for(ch=0; ch<num_channels; ch++) {
- snd = snds[ch];
- cnt = 0;
- block = snd->get_next(snd, &cnt);
- if (block == zero_block || cnt == 0) {
- result = -1;
- break;
- }
-
- /* copy the data to a temporary buffer and scale it
- by the appropriate scale factor */
-
- if (cnt > bufferlen) {
- if (buffer)
- free(buffer);
- buffer = (float *)malloc(cnt * sizeof(float));
- bufferlen = cnt;
- }
-
- memcpy(buffer, block->samples, cnt * sizeof(float));
-
- for(i=0; i<cnt; i++)
- buffer[i] *= snd->scale;
-
- result = callback(buffer, ch,
- totals[ch], cnt, lens[ch], userdata);
-
- if (result != 0) {
- goto finish;
- }
-
- totals[ch] += cnt;
- }
- }
-
- success = TRUE;
-
- finish:
- if (buffer)
- free(buffer);
- free(snds);
- free(totals);
- free(lens);
-
- xlend(&nyx_cntxt);
-
- return success;
-}
-
-int nyx_get_int()
-{
- if (nyx_get_type(nyx_result) != nyx_int)
- return -1;
-
- return getfixnum(nyx_result);
-}
-
-double nyx_get_double()
-{
- if (nyx_get_type(nyx_result) != nyx_double)
- return -1.0;
-
- return getflonum(nyx_result);
-}
-
-const char *nyx_get_string()
-{
- if (nyx_get_type(nyx_result) != nyx_string)
- return NULL;
-
- return (const char *)getstring(nyx_result);
-
-}
-
-int nyx_get_num_labels()
-{
- LVAL s = nyx_result;
- int count = 0;
-
- if (nyx_get_type(nyx_result) != nyx_labels)
- return 0;
-
- while(s) {
- count++;
- s = cdr(s);
- }
-
- return count;
-}
-
-void nyx_get_label(int index,
- double *start_time,
- double *end_time,
- const char **label)
-{
- LVAL s = nyx_result;
- LVAL label_expr;
- LVAL t0_expr;
- LVAL t1_expr;
- LVAL str_expr;
-
- if (nyx_get_type(nyx_result) != nyx_labels)
- return;
-
- if (index < 0 || index >= nyx_get_num_labels())
- return;
-
- while(index) {
- index--;
- s = cdr(s);
- }
-
- /* We either have (t0 "label") or (t0 t1 "label") */
-
- label_expr = car(s);
- t0_expr = car(label_expr);
- t1_expr = car(cdr(label_expr));
- if (stringp(t1_expr)) {
- str_expr = t1_expr;
- t1_expr = t0_expr;
- }
- else
- str_expr = car(cdr(cdr(label_expr)));
-
- if (floatp(t0_expr))
- *start_time = getflonum(t0_expr);
- else if (fixp(t0_expr))
- *start_time = (double)getfixnum(t0_expr);
-
- if (floatp(t1_expr))
- *end_time = getflonum(t1_expr);
- else if (fixp(t1_expr))
- *end_time = (double)getfixnum(t1_expr);
-
- *label = (const char *)getstring(str_expr);
-}
-
-const char *nyx_get_error_str()
-{
- return NULL;
-}
-
-int ostgetc()
-{
- if (nyx_expr_pos < nyx_expr_len) {
- fflush(stdout);
- return (nyx_expr_string[nyx_expr_pos++]);
- }
- else if (nyx_expr_pos == nyx_expr_len) {
- /* Add whitespace at the end so that the parser
- knows that this is the end of the expression */
- nyx_expr_pos++;
- return '\n';
- }
- else
- return EOF;
-}
-
-/* osinit - initialize */
-void osinit(char *banner)
-{
-}
-
-/* osfinish - clean up before returning to the operating system */
-void osfinish(void)
-{
-}
-
-/* oserror - print an error message */
-void oserror(char *msg)
-{
- printf("nyx error: %s\n", msg);
-}
-
-long osrand(long n)
-{
- return (((int) rand()) % n);
-}
-
-/* osaopen - open an ascii file */
-FILE *osaopen(name,mode) char *name,*mode;
-{
- FILE *fp;
- fp = fopen(name,mode);
- return fp;
-}
-
-/* osbopen - open a binary file */
-FILE *osbopen(char *name, char *mode)
-{
- char bmode[10];
- FILE *fp;
-
- strncpy(bmode, mode, 8);
- strcat(bmode,"b");
- fp = fopen(name,bmode);
- return fp;
-}
-
-/* osclose - close a file */
-int osclose(FILE *fp)
-{
- return (fclose(fp));
-}
-
-/* osagetc - get a character from an ascii file */
-int osagetc(FILE *fp)
-{
- return (getc(fp));
-}
-
-/* osaputc - put a character to an ascii file */
-int osaputc(int ch, FILE *fp)
-{
- return (putc(ch,fp));
-}
-
-extern int dbgflg;
-
-/* osbgetc - get a character from a binary file */
-/* int osbgetc(fp) FILE *fp; {return (getc(fp));} */
-#ifndef WIN32 // duplicated in winfun.c, per James Crook, 7/4/2003
- int osbgetc(FILE *fp)
- {
- return (getc(fp));
- }
-#endif
-
-/* osbputc - put a character to a binary file */
-int osbputc(int ch, FILE *fp)
-{
- return (putc(ch,fp));
-}
-
-/* ostputc - put a character to the terminal */
-void ostputc(int ch)
-{
- oscheck(); /* check for control characters */
-
- if (nyx_output_pos < nyx_output_len)
- nyx_output_string[nyx_output_pos++] = (char)ch;
- else
- putchar(((char) ch));
-}
-
-/* osflush - flush the terminal input buffer */
-void osflush(void)
-{
-}
-
-/* oscheck - check for control characters during execution */
-void oscheck(void)
-{
- /* if they hit control-c:
- xflush(); xltoplevel(); return;
- */
-}
-
-/* xsystem - execute a system command */
-#ifndef WIN32 // duplicated in winfun.c, per James Crook, 7/4/2003
-LVAL xsystem()
-{
- if (moreargs()) {
- unsigned char *cmd;
- cmd = (unsigned char *)getstring(xlgastring());
- fprintf(stderr, "Will not execute system command: %s\n", cmd);
- }
- return s_true;
-}
-#endif
-
-/* xsetdir -- set current directory of the process */
-LVAL xsetdir()
-{
- char *dir = (char *)getstring(xlgastring());
- int result;
- xllastarg();
- result = chdir(dir);
- if (result) {
- perror("SETDIR");
- }
- return NULL;
-}
-
-/* xgetkey - get a key from the keyboard */
-#ifndef WIN32 // duplicated in winfun.c, per James Crook, 7/4/2003
- LVAL xgetkey() {xllastarg(); return (cvfixnum((FIXTYPE)getchar()));}
-#endif
-
-/* ossymbols - enter os specific symbols */
-#ifndef WIN32 // duplicated in winfun.c, per James Crook, 7/4/2003
- void ossymbols(void) {}
-#endif
-
-/* xsetupconsole -- used to configure window in Win32 version */
-#ifndef WIN32 // duplicated in winfun.c, per James Crook, 7/4/2003
- LVAL xsetupconsole() { return NULL; }
-#endif
-
-/* control-C handling */
-void ctcinit() {}
-
diff --git a/lib-src/libnyquist/nyx/nyx.h b/lib-src/libnyquist/nyx/nyx.h
deleted file mode 100644
index 8b16ab0..0000000
--- a/lib-src/libnyquist/nyx/nyx.h
+++ /dev/null
@@ -1,79 +0,0 @@
-/**********************************************************************
-
- nyx.h
-
- Nyx: A very simple external interface to Nyquist
-
- Dominic Mazzoni
-
-**********************************************************************/
-
-#ifndef __NYX__
-#define __NYX__
-
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
- #define nyx_returns_start_and_end_time 1
-
- typedef enum {
- nyx_error,
- nyx_audio,
- nyx_int,
- nyx_double,
- nyx_string,
- nyx_labels
- } nyx_rval;
-
- void nyx_init();
- void nyx_cleanup();
-
- /* should return return 0 for success, -1 for error */
- typedef int (*nyx_audio_callback)(float *buffer,
- int channel,
- long start, long len,
- long totlen,
- void *userdata);
-
- /* Set to 0 to stop capturing output */
- void nyx_capture_output(int max_len);
-
- /* Returns all output text captured so far, and resets it */
- void nyx_get_captured_output(int *out_len,
- const char **out_chars);
-
- void nyx_set_audio_params( double rate );
-
- void nyx_set_input_audio(nyx_audio_callback callback,
- void *userdata,
- int num_channels,
- long len, double rate);
-
- nyx_rval nyx_eval_expression(const char *expr);
-
- int nyx_get_audio_num_channels();
- int nyx_get_audio(nyx_audio_callback callback,
- void *userdata);
-
- int nyx_get_int();
- double nyx_get_double();
- const char *nyx_get_string();
-
- int nyx_get_num_labels();
- void nyx_get_label(int index,
- double *start_time,
- double *end_time,
- const char **label);
-
- const char *nyx_get_error_str();
-
-
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif /* __NYX__ */
-
diff --git a/lib-src/libnyquist/snd/audio.c b/lib-src/libnyquist/snd/audio.c
deleted file mode 100644
index b1dcee0..0000000
--- a/lib-src/libnyquist/snd/audio.c
+++ /dev/null
@@ -1,50 +0,0 @@
-#include "memory.h"
-#include "stdio.h"
-#include "snd.h"
-
-int audio_open()
-{
- printf("audio_open not implemented\n");
- return SND_SUCCESS;
-}
-
-
-int audio_close()
-{
- printf("audio_close not implemented\n");
- return SND_SUCCESS;
-}
-
-
-int audio_flush(snd_type snd)
-{
- printf("audio_flush not implemented\n");
- return SND_SUCCESS;
-}
-
-
-long audio_read()
-{
- printf("audio_read not implemented\n");
- return 0;
-}
-
-
-long audio_write()
-{
- printf("audio_write not implemented\n");
- return 0;
-}
-
-int audio_reset()
-{
- printf("audio reset not implemented\n");
- return SND_SUCCESS;
-}
-
-
-long audio_poll(snd_type snd)
-{
- return 1000000;
-}
-
diff --git a/lib-src/libnyquist/snd/audionone.c b/lib-src/libnyquist/snd/audionone.c
deleted file mode 100644
index 19dd6ed..0000000
--- a/lib-src/libnyquist/snd/audionone.c
+++ /dev/null
@@ -1,52 +0,0 @@
-#include "snd.h"
-
-long audio_poll(snd_type snd)
-{
- return 0;
-}
-
-
-long audio_read(snd_type snd, void *buffer, long length)
-{
- return 0;
-}
-
-
-long audio_write(snd_type snd, void *buffer, long length)
-{
- return 0;
-}
-
-
-int audio_open(snd_type snd, long *flags)
-{
- return 0;
-}
-
-
-int audio_close(snd_type snd)
-{
- return 0;
-}
-
-
-/* audio_flush -- finish audio output */
-int audio_flush(snd_type snd)
-{
- return 0;
-}
-
-
-int audio_reset(snd_type snd)
-{
- return 0;
-}
-
-snd_fns_node mmsystem_dictionary = { audio_poll, audio_read, audio_write,
- audio_open, audio_close, audio_reset, audio_flush };
-
-
-void snd_init()
-{
- snd_add_device("None", "default", &mmsystem_dictionary);
-}
diff --git a/lib-src/libnyquist/snd/convert.c b/lib-src/libnyquist/snd/convert.c
deleted file mode 100644
index 85c839c..0000000
--- a/lib-src/libnyquist/snd/convert.c
+++ /dev/null
@@ -1,247 +0,0 @@
-/* Standard includes */
-
-#include "stdlib.h"
-#include "string.h"
-#include "stdio.h"
-
-/* snd includes */
-
-#include "snd.h"
-
-/* set the length of buffers to be even multiple of Audio_...
- * to avoid fractional filling of
- * audio output buffers
- */
-#define MAXLEN MAX_FILE_BUF_LEN
-
-char *header_string[] = { "none", "AIFF", "IRCAM", "NeXT", "Wave" };
-
-char *header_to_string(long header)
-{
- if (header < 0 || header > 4) return "InvalidData";
- else return header_string[header];
-}
-
-void snd_print_info(snd_type snd)
-{
- if (snd->device == SND_DEVICE_AUDIO) {
- if (snd->write_flag == SND_READ) {
- printf("audio input");
- } else {
- printf("audio output");
- }
- } else if (snd->device == SND_DEVICE_MEM) {
- if (snd->write_flag == SND_READ) {
- printf("from memory buffer");
- } else {
- printf("to memory buffer");
- }
- } else {
- printf("header %s", header_to_string(snd->u.file.header));
- }
- printf(", channels %d, mode %s, bits %d, srate %g",
- snd->format.channels,
- snd_mode_to_string(snd->format.mode),
- snd->format.bits, snd->format.srate);
- if (snd->device == SND_DEVICE_MEM) {
- if (snd->write_flag == SND_READ) {
- printf("length %d\n", snd->u.mem.buffer_len);
- } else {
- printf("length %d\n", snd->u.mem.buffer_max);
- }
- } else if (snd->device == SND_DEVICE_FILE &&
- snd->write_flag == SND_READ) {
- printf(", length %d\n", (snd->u.file.end_offset -
- snd->u.file.byte_offset) / snd_bytes_per_frame(snd));
- } else printf("\n");
-}
-
-
-int main(int argc, char *argv[])
-{
- char *fromfile = NULL;
- char *tofile = NULL;
- int i;
- long flags = 0;
- long frames;
- long len;
- long checksum = 0;
- long count = 0;
-
- int format = SND_HEAD_AIFF;
- int mode = SND_MODE_PCM;
- int channels = 1;
- int bits = 16;
- double srate = 44100.0;
- snd_node from_snd, to_snd;
- char from_buf[MAXLEN];
- char to_buf[MAXLEN];
- long frames_from_len;
- long frames_to_len;
- long from_len = 0;
- long to_len = 0;
-
- for (i = 1; i < argc; i++) {
- if (*(argv[i]) != '-') {
- if (!fromfile) fromfile = argv[i];
- else if (!tofile) tofile = argv[i];
- else {
- printf("%s: don't know what to do with 3rd file\n", argv[i]);
- return 1;
- }
- } else {
- char *flag = argv[i] + 1;
- if (*flag == '?') {
- printf("convert -- sound file conversion utility\n\n");
- printf("usage: convert fromfile tofile -flag1 -flag2 ...\n");
- printf(" -fa -- AIFF file format\n");
- printf(" -fi -- IRCAM file format\n");
- printf(" -fn -- NeXT/Sun file format\n");
- printf(" -fw -- Wave file format\n");
- printf(" -ep -- PCM\n");
- printf(" -em -- u-Law\n");
- printf(" -ef -- float\n");
- printf(" -eu -- unsigned PCM\n");
- printf(" -b1 -- 8-bit\n");
- printf(" -b2 -- 16-bit\n");
- printf(" -b4 -- 32-bit\n");
- printf(" -c1 -- 1 channel, etc.\n");
- printf("use 'ada' to get audio input or output\n");
- } else if (*flag == 'f') {
- switch (flag[1]) {
- case 'a': format = SND_HEAD_AIFF; break;
- case 'i': format = SND_HEAD_IRCAM; break;
- case 'n': format = SND_HEAD_NEXT; break;
- case 'w': format = SND_HEAD_WAVE; break;
- default: printf("flag %s ignored\n", argv[i]); break;
- }
- } else if (*flag == 'e') {
- switch (flag[1]) {
- case 'p': mode = SND_MODE_PCM; break;
- case 'm': mode = SND_MODE_ULAW; break;
- case 'f': mode = SND_MODE_FLOAT; break;
- case 'u': mode = SND_MODE_UPCM; break;
- default: printf("flag %s ignored\n", argv[i]); break;
- }
- } else if (*flag == 'b') {
- switch (flag[1]) {
- case '1': bits = 8; break;
- case '2': bits = 16; break;
- case '4': bits = 32; break;
- default: printf("flag %s ignored\n", argv[i]); break;
- }
- } else if (*flag == 'r') {
- switch (flag[1]) {
- case '4': srate = 44100.0; break;
- case '2': srate = 22050.0; break;
- case '1': srate = 11025.0; break;
- case '8': srate = 8000.0; break;
- default: printf("flag %s ignored\n", argv[i]); break;
- }
- } else if (*flag == 'c') {
- channels = atoi(flag+1);
- if (channels < 1 || channels > 16) {
- channels = 1;
- printf("flag %s ignored, using 1 channel\n",
- argv[i]);
- }
- }
- }
- }
- if (!tofile) {
- printf("2 files not found, use -? for help\n");
- return 1;
- }
-
- from_snd.device = SND_DEVICE_FILE;
- from_snd.write_flag = SND_READ;
- from_snd.u.file.byte_offset = 0;
- from_snd.format.channels = channels;
- from_snd.format.mode = mode;
- from_snd.format.bits = bits;
- from_snd.format.srate = srate;
-
- if (strcmp(fromfile, "ada") == 0) {
- from_snd.device = SND_DEVICE_AUDIO;
- from_snd.u.audio.protocol = SND_COMPUTEAHEAD;
- from_snd.u.audio.latency = 1.0;
- from_snd.u.audio.granularity = 0.1;
- strcpy(from_snd.u.file.filename, "");
- } else {
- strcpy(from_snd.u.file.filename, fromfile);
- }
- if (snd_open(&from_snd, &flags) != SND_SUCCESS) {
- printf("error opening %s for input\n", fromfile);
- exit(1);
- }
- printf("Opened %s for input: ", from_snd.u.file.filename);
- snd_print_info(&from_snd);
-
- to_snd.device = SND_DEVICE_FILE;
- to_snd.write_flag = SND_WRITE;
- to_snd.format.channels = channels;
- to_snd.format.mode = mode;
- to_snd.format.bits = bits;
- to_snd.format.srate = from_snd.format.srate;
- to_snd.u.file.header = format; /* header format, e.g. AIFF */
- if (to_snd.u.file.header == SND_HEAD_WAVE && to_snd.format.mode == SND_MODE_PCM &&
- to_snd.format.bits == 8) to_snd.format.mode = SND_MODE_UPCM;
- if (strcmp(tofile, "ada") == 0) {
- to_snd.device = SND_DEVICE_AUDIO;
- to_snd.u.audio.protocol = SND_COMPUTEAHEAD;
- to_snd.u.audio.latency = 0.0;
- to_snd.u.audio.granularity = 0.1;
- strcpy(to_snd.u.audio.interfacename, "");
- strcpy(to_snd.u.audio.devicename, "");
- } else {
- strcpy(to_snd.u.file.filename, tofile);
- }
- if (snd_open(&to_snd, &flags) != SND_SUCCESS) {
- printf("error opening %s for output\n", tofile);
- exit(1);
- }
- printf("Opened %s for output: ", to_snd.u.file.filename);
- snd_print_info(&to_snd);
-
- /* figure out how much to convert on each iteration */
-
- /* first, compute how many frames could fit in each buffer */
- from_len = MAXLEN / snd_bytes_per_frame(&from_snd);
- to_len = MAXLEN / snd_bytes_per_frame(&to_snd);
-
- /* then compute the minimum of the two frame counts */
- frames = min(from_len, to_len);
-
- while (1) {
- /* then convert back from frame counts to byte counts: */
- while ((frames_from_len = snd_poll(&from_snd)) <=0);
- frames_from_len = min(frames_from_len, frames);
- while ((frames_to_len = snd_poll(&to_snd)) <= 0);
- frames_to_len = min(frames_to_len, frames);
- len = min(frames_to_len, frames_from_len);
- len = snd_read(&from_snd, from_buf, len);
- if (((from_snd.device == SND_DEVICE_AUDIO) &&
- (count > from_snd.format.srate * 10)) || (!len)) {
- break;
- }
- for (i = 0; i < len * snd_bytes_per_frame(&from_snd); i++) {
- checksum += from_buf[i];
- count++;
- }
- len = snd_convert(&to_snd, to_buf, &from_snd, from_buf, len);
- len = snd_write(&to_snd, to_buf, len);
- printf("#");
- fflush(stdout);
- }
- snd_close(&from_snd);
- if (to_snd.device == SND_DEVICE_AUDIO) {
- while (snd_flush(&to_snd) != SND_SUCCESS) ;
- }
- snd_close(&to_snd);
-
- printf("Read %ld frames, checksum = %ld\n", count, checksum);
- exit(0);
-}
-
-
-
diff --git a/lib-src/libnyquist/snd/ieeecvt.c b/lib-src/libnyquist/snd/ieeecvt.c
deleted file mode 100644
index 731871a..0000000
--- a/lib-src/libnyquist/snd/ieeecvt.c
+++ /dev/null
@@ -1,183 +0,0 @@
-/*
- * C O N V E R T T O I E E E E X T E N D E D
- */
-
-/* Copyright (C) 1988-1991 Apple Computer, Inc.
- * All rights reserved.
- *
- * Machine-independent I/O routines for IEEE floating-point numbers.
- *
- * NaN's and infinities are converted to HUGE_VAL or HUGE, which
- * happens to be infinity on IEEE machines. Unfortunately, it is
- * impossible to preserve NaN's in a machine-independent way.
- * Infinities are, however, preserved on IEEE machines.
- *
- * These routines have been tested on the following machines:
- * Apple Macintosh, MPW 3.1 C compiler
- * Apple Macintosh, THINK C compiler
- * Silicon Graphics IRIS, MIPS compiler
- * Cray X/MP and Y/MP
- * Digital Equipment VAX
- *
- *
- * Implemented by Malcolm Slaney and Ken Turkowski.
- *
- * Malcolm Slaney contributions during 1988-1990 include big- and little-
- * endian file I/O, conversion to and from Motorola's extended 80-bit
- * floating-point format, and conversions to and from IEEE single-
- * precision floating-point format.
- *
- * In 1991, Ken Turkowski implemented the conversions to and from
- * IEEE double-precision format, added more precision to the extended
- * conversions, and accommodated conversions involving +/- infinity,
- * NaN's, and denormalized numbers.
- */
-
-#include "math.h"
-
-#ifndef HUGE_VAL
-#ifdef HUGE
-#define HUGE_VAL HUGE
-#else
-/* WARNING: this is machine-dependent and should come from math.h */
-#define HUGE_VAL 1.797693134862315e308
-#endif /* HUGE */
-#endif /*HUGE_VAL*/
-
-# define FloatToUnsigned(f) ((unsigned long)(((long)(f - 2147483648.0)) + 2147483647L) + 1)
-
-void ConvertToIeeeExtended(double num, char *bytes)
-{
- int sign;
- int expon;
- double fMant, fsMant;
- unsigned long hiMant, loMant;
-
- if (num < 0) {
- sign = 0x8000;
- num *= -1;
- } else {
- sign = 0;
- }
-
- if (num == 0) {
- expon = 0; hiMant = 0; loMant = 0;
- }
- else {
- fMant = frexp(num, &expon);
- if ((expon > 16384) || !(fMant < 1)) { /* Infinity or NaN */
- expon = sign|0x7FFF; hiMant = 0; loMant = 0; /* infinity */
- }
- else { /* Finite */
- expon += 16382;
- if (expon < 0) { /* denormalized */
- fMant = ldexp(fMant, expon);
- expon = 0;
- }
- expon |= sign;
- fMant = ldexp(fMant, 32);
- fsMant = floor(fMant);
- hiMant = FloatToUnsigned(fsMant);
- fMant = ldexp(fMant - fsMant, 32);
- fsMant = floor(fMant);
- loMant = FloatToUnsigned(fsMant);
- }
- }
-
- bytes[0] = (char) (expon >> 8);
- bytes[1] = (char) expon;
- bytes[2] = (char) (hiMant >> 24);
- bytes[3] = (char) (hiMant >> 16);
- bytes[4] = (char) (hiMant >> 8);
- bytes[5] = (char) hiMant;
- bytes[6] = (char) (loMant >> 24);
- bytes[7] = (char) (loMant >> 16);
- bytes[8] = (char) (loMant >> 8);
- bytes[9] = (char) loMant;
-}
-
-
-/*
- * C O N V E R T F R O M I E E E E X T E N D E D
- */
-
-/*
- * Copyright (C) 1988-1991 Apple Computer, Inc.
- * All rights reserved.
- *
- * Machine-independent I/O routines for IEEE floating-point numbers.
- *
- * NaN's and infinities are converted to HUGE_VAL or HUGE, which
- * happens to be infinity on IEEE machines. Unfortunately, it is
- * impossible to preserve NaN's in a machine-independent way.
- * Infinities are, however, preserved on IEEE machines.
- *
- * These routines have been tested on the following machines:
- * Apple Macintosh, MPW 3.1 C compiler
- * Apple Macintosh, THINK C compiler
- * Silicon Graphics IRIS, MIPS compiler
- * Cray X/MP and Y/MP
- * Digital Equipment VAX
- *
- *
- * Implemented by Malcolm Slaney and Ken Turkowski.
- *
- * Malcolm Slaney contributions during 1988-1990 include big- and little-
- * endian file I/O, conversion to and from Motorola's extended 80-bit
- * floating-point format, and conversions to and from IEEE single-
- * precision floating-point format.
- *
- * In 1991, Ken Turkowski implemented the conversions to and from
- * IEEE double-precision format, added more precision to the extended
- * conversions, and accommodated conversions involving +/- infinity,
- * NaN's, and denormalized numbers.
- */
-
-#ifndef HUGE_VAL
-# define HUGE_VAL HUGE
-#endif /*HUGE_VAL*/
-
-# define UnsignedToFloat(u) (((double)((long)(u - 2147483647L - 1))) + 2147483648.0)
-
-/****************************************************************
- * Extended precision IEEE floating-point conversion routine.
- ****************************************************************/
-
-double ConvertFromIeeeExtended(unsigned char *bytes /* LCN */)
-{
- double f;
- int expon;
- unsigned long hiMant, loMant;
-
- expon = ((bytes[0] & 0x7F) << 8) | (bytes[1] & 0xFF);
- hiMant = ((unsigned long)(bytes[2] & 0xFF) << 24)
- | ((unsigned long)(bytes[3] & 0xFF) << 16)
- | ((unsigned long)(bytes[4] & 0xFF) << 8)
- | ((unsigned long)(bytes[5] & 0xFF));
- loMant = ((unsigned long)(bytes[6] & 0xFF) << 24)
- | ((unsigned long)(bytes[7] & 0xFF) << 16)
- | ((unsigned long)(bytes[8] & 0xFF) << 8)
- | ((unsigned long)(bytes[9] & 0xFF));
-
- if (expon == 0 && hiMant == 0 && loMant == 0) {
- f = 0;
- }
- else {
- if (expon == 0x7FFF) { /* Infinity or NaN */
- f = HUGE_VAL;
- }
- else {
- expon -= 16383;
- f = ldexp(UnsignedToFloat(hiMant), expon-=31);
- f += ldexp(UnsignedToFloat(loMant), expon-=32);
- }
- }
-
- if (bytes[0] & 0x80)
- return -f;
- else
- return f;
-}
-
-
-
diff --git a/lib-src/libnyquist/snd/ieeecvt.h b/lib-src/libnyquist/snd/ieeecvt.h
deleted file mode 100644
index f60c776..0000000
--- a/lib-src/libnyquist/snd/ieeecvt.h
+++ /dev/null
@@ -1,2 +0,0 @@
-void ConvertToIeeeExtended(double num, char *bytes);
-double ConvertFromIeeeExtended(unsigned char *bytes);
diff --git a/lib-src/libnyquist/snd/rs6kplaydemo.c b/lib-src/libnyquist/snd/rs6kplaydemo.c
deleted file mode 100644
index cd52ced..0000000
--- a/lib-src/libnyquist/snd/rs6kplaydemo.c
+++ /dev/null
@@ -1,100 +0,0 @@
-/* This code shows (I think) how to play audio on an RS6K.
- It is not used for anything, but might be a nice reference
- in case anyone wants to support AIX under the snd library.
- -RBD
- */
-#include <stdlib.h>
-#include <stdio.h>
-#include <errno.h>
-#include <fcntl.h>
-#include <string.h>
-#include <UMSBAUDDevice.h>
-void main(argc, argv)
-int argc;
-char *argv[];
-{
- UMSBAUDDevice adev;
- UMSAudioDevice_ReturnCode rc;
- Environment *ev;
-UMSAudioTypes_Buffer buffer;
- long onesecsize ;
- long read_cnt, transferred_cnt;
- int file;
- long sw;
- long osamples;
- char *obyte_order;
- long lgain;
- long rgain;
- long time;
- long pos;
- int bytespersec ;
- int secondtorecord ;
- long channels ;
- long bits ;
-/* set up som enviroment */
-ev = somGetGlobalEnvironment();
-adev = UMSBAUDDeviceNew();
-printf("start record session\n");
-rc = UMSAudioDevice_open(adev,ev,"/dev/acpa0","RECORD", UMSAudioDevice_BlockingIO);
-/* establish audio attributes */
- channels = 2 ;
- bits = 16 ;
-rc = UMSAudioDevice_set_sample_rate(adev,ev,22050,&osamples);
-rc = UMSAudioDevice_set_bits_per_sample(adev,ev,bits);
-rc = UMSAudioDevice_set_number_of_channels(adev,ev,channels);
-rc = UMSAudioDevice_set_audio_format_type(adev,ev,"PCM");
-rc = UMSAudioDevice_set_byte_order(adev,ev,"MSB");
-rc = UMSAudioDevice_set_number_format(adev,ev,"TWOS COMPLEMENT");
-rc = UMSAudioDevice_get_byte_order(adev,ev,&obyte_order);
-/* you have to free the string after the query */
-if (obyte_order) free(obyte_order);
-rc = UMSAudioDevice_set_volume(adev,ev,100);
-rc = UMSAudioDevice_set_balance(adev,ev,0);
-rc = UMSAudioDevice_set_time_format(adev,ev,UMSAudioTypes_Msecs);
-lgain = 100; /*maximum left input gain*/
-rgain = 100; /*maimum right input gain*/
-rc = UMSAudioDevice_enable_input(adev,ev,"LINE_IN",&lgain,&rgain);
-rc = UMSAudioDevice_set_monitor(adev,ev,TRUE);
-rc = UMSAudioDevice_initialize(adev,ev);
-secondtorecord = 10 ;
-bytespersec = (bits / 8) * channels ;
-onesecsize = bytespersec * osamples ;
-time = 1000 * secondtorecord ;
-buffer._length = onesecsize ;
-buffer._buffer = malloc(onesecsize);
-buffer._maximum = onesecsize ;
-file = open("/tmp/testaudio",O_WRONLY | O_CREAT | O_TRUNC,0644);
-rc = UMSAudioDevice_start(adev,ev);
-/* do the recording */
-do
-{
-rc = UMSAudioDevice_read(adev,ev,&buffer,onesecsize,&sw);
-write(file,buffer._buffer, bytespersec * sw);
-rc = UMSAudioDevice_get_position(adev,ev,&pos);
-}
-while(time > pos);
-rc = UMSAudioDevice_stop(adev,ev);
-rc = UMSAudioDevice_close(adev,ev);
-close(file);
-/* playback session */
-printf("start playback session\n");
-rc = UMSAudioDevice_open(adev,ev,"/dev/acpa0","PLAY", UMSAudioDevice_BlockingIO);
-buffer._length = 0 ;
-buffer._maximum = onesecsize ;
-lgain = 100; /*maximum left input gain*/
-rgain = 100; /*maimum right input gain*/
-rc = UMSAudioDevice_enable_output(adev,ev,"LINE_OUT",&lgain,&rgain);
-rc = UMSAudioDevice_initialize(adev,ev);
-file = open("/tmp/testaudio",O_RDONLY,0);
-rc = UMSAudioDevice_start(adev,ev);
-while((transferred_cnt = read(file,buffer._buffer,onesecsize)))
-{
-read_cnt = transferred_cnt / bytespersec;
-buffer._length = transferred_cnt ;
-rc = UMSAudioDevice_write(adev,ev,&buffer,read_cnt,&sw);
-}
-rc = UMSAudioDevice_play_remaining_data(adev,ev,TRUE);
-UMSAudioDevice_stop(adev,ev);
-UMSAudioDevice_close(adev,ev);
-_somFree(adev);
-}
diff --git a/lib-src/libnyquist/snd/snd.c b/lib-src/libnyquist/snd/snd.c
deleted file mode 100644
index 022ff34..0000000
--- a/lib-src/libnyquist/snd/snd.c
+++ /dev/null
@@ -1,362 +0,0 @@
-/* snd.c -- low-level sound I/O
- *
- * Roger Dannenberg
- * 21 Jun 1997
- *
- * based on sndheader.c:
- *
- * Jim Zelenka, CMU/ITC, 9 Jun 1992 (rewritten from my old sources)
- * Roger Dannenberg, CMU, Mar 1993 (extensive changes and additions)
- *
- * and on sndread.c & sndwrite.c:
- *
- * Roger Dannenberg
- */
-
-/* Standard includes */
-#include <string.h>
-#include <stdio.h>
-
-#include "snd.h"
-#include "sndfileio.h"
-#include "sndheader.h"
-
-static int snd_initialized = FALSE;
-
-typedef struct {
- char *interf;
- char *device;
- snd_fns_type dictionary;
-} descriptor_node, *descriptor_type;
-
-
-static int descriptor_index = 0;
-#define snd_descriptor_max 32
-static descriptor_node descriptors[snd_descriptor_max];
-
-
-/* snd_add_device -- describe interface/device pair to library
- *
- * This is called at intialization time, once for each
- * interface (e.g. DirectSound) and device (e.g. SoundBlaster 1)
- * The strings are retained but NOT COPIED, so do not destroy them!
- */
-void snd_add_device(char *interf, char *device, snd_fns_type dictionary)
-{
- if (descriptor_index >= snd_descriptor_max) {
- snd_fail("snd_add_device: snd_descriptor_max exceeded");
- }
- descriptors[descriptor_index].interf = interf;
- descriptors[descriptor_index].device = device;
- descriptors[descriptor_index].dictionary = dictionary;
- descriptor_index++;
-}
-
-
-int snd_device(int n, char *interf, char *device)
-{
- if (!snd_initialized) {
- snd_init();
- snd_initialized = TRUE;
- }
- if (n >= 0 && n < descriptor_index) {
- strcpy(interf, descriptors[n].interf);
- strcpy(device, descriptors[n].device);
- return SND_SUCCESS;
- }
- return !SND_SUCCESS;
-}
-
-
-/* failure_fn -- "noop" function pointer */
-/**/
-static int failure_fn(snd_type snd)
-{
- return !SND_SUCCESS;
-}
-
-
-/* success_fn -- "noop" function pointer */
-/**/
-static int success_fn(snd_type snd)
-{
- return SND_SUCCESS;
-}
-
-
-static long file_poll(snd_type snd)
-{
- return MAX_FILE_BUF_LEN;
-
-}
-
-
-static long mem_poll(snd_type snd)
-{
- if (snd->write_flag == SND_READ) {
- return (snd->u.mem.buffer_len - snd->u.mem.buffer_pos);
- } else {
- return (snd->u.mem.buffer_max - snd->u.mem.buffer_len);
- }
-}
-
-
-static long none_poll(snd_type snd)
-{
- return 0;
-}
-
-#if !defined(WIN32) && !defined(IRIX) && !defined(SGI)
-static void _swab(char *to, char *from, long length)
-{
- short *to16 = (short *) to;
- short *from16 = (short *) from;
- int i = 1;
- while (i < length) {
- short data = *from16++;
- *to16++ = (data << 8) | ((data >> 8) & 0xFF);
- i += 2;
- }
-}
-#endif
-
-
-static void change_byte_order(snd_type snd, void *buffer, long length)
-{
- int bytes = (snd->format.bits + 7) >> 3;
- switch (bytes) {
- case 1:
- break;
- case 2:
- _swab((char *) buffer, (char *) buffer, length);
- break;
- case 4: {
- long *buff = (long *) buffer;
- while (length > 0) {
- long data = *buff;
- *buff++ = ((data >> 24) & 0xFF) | ((data >> 8) & 0xFF00) |
- ((data << 8) & 0xFF0000) | (data << 24);
- length -= 4;
- }
- break;
- }
- default: {
- char msg[100];
- sprintf(msg, "Cannot handle %d-byte samples", bytes);
- snd_fail(msg);
- break;
- }
- }
-}
-
-
-static long file_read(snd_type snd, void *buffer, long length)
-{
- long togo, cnt;
- togo = snd->u.file.end_offset - snd->u.file.current_offset;
- if (length > togo) length = togo;
- cnt = snd_file_read(snd->u.file.file, (char *) buffer, length);
- snd->u.file.current_offset += cnt;
- if (snd->u.file.swap) change_byte_order(snd, buffer, cnt);
- return cnt;
-}
-
-
-static long mem_read(snd_type snd, void *buffer, long length)
-{
- /* if there are fewer than length bytes, reduce length: */
- if ((snd->u.mem.buffer_len - snd->u.mem.buffer_pos) < length) {
- length = snd->u.mem.buffer_len - snd->u.mem.buffer_pos;
- }
- memcpy(buffer, snd->u.mem.buffer + snd->u.mem.buffer_pos,
- length);
- snd->u.mem.buffer_pos += length;
- return length;
-}
-
-
-static long none_read(snd_type snd, void *buffer, long length)
-{
- return 0;
-}
-
-
-static long file_write(snd_type snd, void *buffer, long length)
-{
- long cnt;
- if (snd->u.file.swap) change_byte_order(snd, buffer, length);
- cnt = snd_file_write(snd->u.file.file, (char *) buffer, length);
- snd->u.file.end_offset += cnt; /* keep track of how much data */
- return cnt;
-}
-
-
-static long mem_write(snd_type snd, void *buffer, long length)
-{
- /* if there are fewer than length bytes, reduce length: */
- if ((snd->u.mem.buffer_max - snd->u.mem.buffer_len) < length) {
- length = snd->u.mem.buffer_max - snd->u.mem.buffer_len;
- }
- memcpy(snd->u.mem.buffer + snd->u.mem.buffer_len, buffer, length);
- snd->u.mem.buffer_len += length;
- return length;
-}
-
-
-static long none_write(snd_type snd, void *buffer, long length)
-{
- return 0;
-}
-
-
-static int mem_open(snd_type snd, long *flags)
-{
- return SND_SUCCESS;
-}
-
-
-static int none_open(snd_type snd, long *flags)
-{
- return !SND_SUCCESS;
-}
-
-
-static int file_close(snd_type snd)
-{
- if (snd->write_flag == SND_WRITE) {
- write_sndheader_finish(snd);
- }
- return snd_file_close(snd->u.file.file);
-}
-
-
-#define mem_close success_fn
-
-#define none_close failure_fn
-
-#define file_reset success_fn
-
-
-static int mem_reset(snd_type snd)
-{
- snd->u.mem.buffer_pos = 0;
- if (snd->write_flag != SND_READ) {
- snd->u.mem.buffer_len = 0;
- }
- return SND_SUCCESS;
-}
-
-
-#define none_reset failure_fn
-
-
-#define file_flush success_fn
-
-#define mem_flush success_fn
-
-#define none_flush failure_fn
-
-
-char *snd_mode_string[] = { "ADPCM", "PCM", "ULAW", "ALAW", "Float", "UPCM", "Unknown" };
-
-char *snd_mode_to_string(long mode)
-{
- if (mode < 0 || mode >= SND_NUM_MODES) return "InvalidData";
- else return snd_mode_string[mode];
-}
-
-
-static snd_fns_node mem_dictionary = {
- mem_poll, mem_read, mem_write, mem_open,
- mem_close, mem_reset, mem_flush };
-
-static snd_fns_node file_dictionary = {
- file_poll, file_read, file_write, snd_open_file,
- file_close, file_reset, file_flush };
-
-snd_fns_node snd_none_dictionary = {
- none_poll, none_read, none_write, none_open,
- none_close, none_reset, none_flush };
-
-long snd_poll(snd_type snd)
-{
- return (*snd->dictionary->poll)(snd);
-}
-
-
-/* snd_read -- read up to length bytes from source into buffer */
-/*
- * returns number of bytes actually read
- */
-long snd_read(snd_type snd, void *buffer, long length)
-{
- int bpf = snd_bytes_per_frame(snd);
- return ((*snd->dictionary->read)(snd, buffer, length * bpf)) / bpf;
-}
-
-
-long snd_write(snd_type snd, void *buffer, long length)
-{
- int bpf = snd_bytes_per_frame(snd);
- return (*snd->dictionary->write)(snd, buffer, length * bpf) / bpf;
-}
-
-
-
-int snd_open(snd_type snd, long *flags)
-{
- if (!snd_initialized) {
- snd_init();
- snd_initialized = TRUE;
- }
- *flags = 0;
- if (snd->device == SND_DEVICE_FILE) {
- snd->dictionary = &file_dictionary;
- } else if (snd->device == SND_DEVICE_AUDIO) {
- int i;
- for (i = 0; i < descriptor_index; i++) {
- /* take the first descriptor that matches both interface
- and device, where empty string matches anything: */
- if ((snd->u.audio.interfacename[0] == 0 ||
- strcmp(snd->u.audio.interfacename,
- descriptors[i].interf) == 0) &&
- /*&& commented out by dmazzoni - don't want to compare dev
- && uncommented by rbd - please see previous comment/specification */
- (snd->u.audio.devicename[0] == 0 ||
- strcmp(snd->u.audio.devicename,
- descriptors[i].device) == 0)) {
- snd->dictionary = descriptors[i].dictionary;
- break;
- }
- }
- if (i >= descriptor_index) {
- return !SND_SUCCESS;
- }
- } else if (snd->device == SND_DEVICE_MEM) {
- snd->dictionary = &mem_dictionary;
- }
- return (*snd->dictionary->open)(snd, flags);
-}
-
-
-int snd_close(snd_type snd)
-{
- return (*snd->dictionary->close)(snd);
-}
-
-
-int snd_reset(snd_type snd)
-{
- return (*snd->dictionary->reset)(snd);
-}
-
-
-/* snd_flush -- allows client to finish audio output before closing */
-/**/
-int snd_flush(snd_type snd)
-{
- if (snd->write_flag != SND_READ) {
- return (*snd->dictionary->flush)(snd);
- }
- return SND_SUCCESS;
-}
diff --git a/lib-src/libnyquist/snd/snd.h b/lib-src/libnyquist/snd/snd.h
deleted file mode 100644
index b869246..0000000
--- a/lib-src/libnyquist/snd/snd.h
+++ /dev/null
@@ -1,277 +0,0 @@
-/*
- * snd.h
- */
-/*
- * based on sndheader.h, written by
- * Jim Zelenka, CMU/ITC
- * rewritten 9 Jun 1992 (from my original sources,
- * adding many new constants)
- * converted by Roger Dannenberg to snd.h, 21 Jun 97
- */
-#ifdef SND_H
-error here
-#endif
-#define SND_H
-
-/* Standard includes */
-#include <stdlib.h>
-
-#include "sndconfig.h"
-
-/* header formats */
-#define SND_HEAD_NONE 0
-/* LISP-SRC: (setf snd-head-none 0) */
-#define SND_HEAD_AIFF 1
-/* LISP-SRC: (setf snd-head-AIFF 1) */
-#define SND_HEAD_IRCAM 2
-/* LISP-SRC: (setf snd-head-IRCAM 2) */
-#define SND_HEAD_NEXT 3
-/* LISP-SRC: (setf snd-head-NeXT 3) */
-#define SND_HEAD_WAVE 4
-/* LISP-SRC: (setf snd-head-Wave 4) */
-#define SND_NUM_HEADS 5
-
-/* bitfields for soundheaders */
-#define SND_HEAD_CHANNELS (1<<0)
-/* LISP-SRC: (setf snd-head-channels 1) */
-#define SND_HEAD_MODE (1<<1)
-/* LISP-SRC: (setf snd-head-mode 2) */
-#define SND_HEAD_BITS (1<<2)
-/* LISP-SRC: (setf snd-head-bits 4) */
-#define SND_HEAD_SRATE (1<<3)
-/* LISP-SRC: (setf snd-head-srate 8) */
-
-/* when returned from lisp, len (samples) is converted to time (seconds) */
-#define SND_HEAD_LEN (1<<4)
-/* LISP-SRC: (setf snd-head-dur 16) */
-
-#define SND_HEAD_LATENCY (1<<5)
-/* LISP-SRC: (setf snd-head-latency 32) */
-#define SND_HEAD_TYPE (1<<6)
-/* LISP-SRC: (setf snd-head-type 64) */
-
-/* modes */
-#define SND_MODE_ADPCM 0
-/* LISP-SRC: (setf snd-mode-adpcm 0) */
-#define SND_MODE_PCM 1
-/* LISP-SRC: (setf snd-mode-pcm 1) */
-#define SND_MODE_ULAW 2
-/* LISP-SRC: (setf snd-mode-ulaw 2) */
-#define SND_MODE_ALAW 3
-/* LISP-SRC: (setf snd-mode-alaw 3) */
-#define SND_MODE_FLOAT 4
-/* LISP-SRC: (setf snd-mode-float 4) */
-/* unsigned pcm (e.g. Microsoft 8-bit wav format): */
-#define SND_MODE_UPCM 5
-/* LISP-SRC: (setf snd-mode-upcm 5) */
-#define SND_MODE_UNKNOWN 6
-/* LISP-SRC: (setf snd-mode-unknown 6) */
-#define SND_NUM_MODES 7
-
-/* if snd_open fails, source is set to SND_DEVICE_NONE */
-#define SND_DEVICE_NONE 0
-#define SND_DEVICE_FILE 1
-#define SND_DEVICE_AUDIO 2
-#define SND_DEVICE_MEM 3
-
-/* write_flag values */
-#define SND_READ 0
-#define SND_WRITE 1
-#define SND_OVERWRITE 2
-
-#define SND_REALTIME 0
-#define SND_COMPUTEAHEAD 1
-
-#define SND_LOOP_NONE 0
-#define SND_LOOP_FORWARD 1
-#define SND_LOOP_FORWARD_BACKWARD 2
-
-typedef struct {
- int mode;
- long begin;
- long end;
-} loop_node, *loop_type;
-
-typedef struct {
- long channels; /* number of channels */
- long mode; /* ADPCM, PCM, ULAW, ALAW, FLOAT, UPCM */
- long bits; /* bits per sample */
- double srate; /* sample rate */
-} format_node;
-
-
-/* notes on audio protocol:
-If you are writing audio to a device, there are two things you
-might want to optimize: (1) you want to maintain just enough
-buffered data to handle the system+application latency. You
-might want to output data incrementally in small units to avoid
-a long interval of audio computation. If buffers have a
-practical minimum length, a solution is to fill system buffers
-incrementally. This approach is supported by the SND_REALTIME
-protocol; (2) you can afford to compute large buffers in one
-step, and for simplicity you want to fill buffers as soon as
-they are available. This approach is supported by the
-SND_COMPUTEAHEAD protocol.
-
-In either case, the audio.latency field specifies the estimated
-worst case latency. (For example, the system may be swapping
-pages and the application may be garbage collecting.) Then
-buffer space will be at least large enough to hold
-audio.latency seconds of audio.
-
-The audio.granularity field specifies the maximum duration of
-a block of samples. The application will not compute samples
-until there is room for audio.granularity of samples (for
-example, it will test by calling snd_poll()). The application
-will pass at most audio.granularity of samples to snd_write().
-On input, the application will wait until there are at least
-audio.granularity of samples and then read no more than that amount.
-
-For sound input, SND_REALTIME and SND_COMPUTEAHEAD serve similar
-purposes. Use SND_REALTIME if you want to read data incrementally
-a bit at a time. Use SND_COMPUTEAHEAD if you want to be informed
-(by snd_poll) of all the data as soon as it is available,
-regardless of how big the buffers are.
-
-[if I understand correctly: "Use SND_COMPUTEAHEAD if you want to be
- informed as soon as all the data is available....". -eub]
-
-*/
-
-/* Prevent compiler errors */
-struct snd_struct;
-
-/* these do not use snd_type because it is not defined yet... */
-typedef int (*snd_reset_fn)(struct snd_struct *snd);
-typedef long (*snd_poll_fn)(struct snd_struct *snd);
-typedef long (*snd_read_fn)(struct snd_struct *snd, void *buffer, long length);
-typedef long (*snd_write_fn)(struct snd_struct *snd, void *buffer, long length);
-typedef int (*snd_open_fn)(struct snd_struct *snd, long *flags);
-typedef int (*snd_close_fn)(struct snd_struct *snd);
-//typedef int (*snd_reset_fn)(struct snd_struct *snd);
-typedef int (*snd_flush_fn)(struct snd_struct *snd);
-
-typedef struct {
- snd_poll_fn poll;
- snd_read_fn read;
- snd_write_fn write;
- snd_open_fn open;
- snd_close_fn close;
- snd_reset_fn reset;
- snd_flush_fn flush;
-} snd_fns_node, *snd_fns_type;
-
-
-typedef struct snd_struct {
- short device; /* file, audio, or memory */
- short write_flag; /* SND_READ, SND_WRITE, SND_OVERWRITE */
- format_node format; /* sample format: channels, mode, bits, srate */
- snd_fns_type dictionary; /* for internal use only */
- union {
- struct {
- char filename[snd_string_max]; /* file name */
- char filetype[snd_string_max]; /* file type/format description */
- int file; /* OS file number */
- long header; /* None, AIFF, IRCAM, NEXT, WAVE */
- long byte_offset; /* file offset of first sample */
- long end_offset; /* byte_offset of last byte + 1 */
- long current_offset; /* current (computed) file offset */
- int swap; /* flag to swap bytes on input/output */
- /* fields from AIFF sample files: */
- int loop_info; /* Boolean: is this loop info valid? */
- double native_hz; /* original pitch in hz */
- float gain; /* gain: scale factor */
- double low_hz;
- double high_hz;
- char low_velocity;
- char high_velocity;
- loop_node sustain_loop;
- loop_node release_loop;
- } file;
- struct {
- char interfacename[snd_string_max]; /* (optional) to specify interface */
- char devicename[snd_string_max]; /* (optional) to specify device */
- void *descriptor;
- long protocol; /* SND_REALTIME or SND_COMPUTEAHEAD */
- double latency; /* app + os worst case latency (seconds) */
- double granularity; /* expected period of app computation (s) */
- /* note: pass 0.0 for default latency and granularity */
- } audio;
- struct {
- long buffer_max; /* size of buffer memory */
- char *buffer; /* memory buffer */
- long buffer_len; /* length of data in buffer */
- long buffer_pos; /* current location in buffer */
- } mem;
- } u;
-} snd_node, *snd_type;
-
-typedef long (*cvtfn_type)(void *buf1, void *buf2, long len2,
- float scale, float *peak);
-
-/* when open fails, the dictionary gets this set of functions: */
-extern snd_fns_node snd_none_dictionary;
-
-/* snd_open, snd_close, snd_convert return SND_SUCESS if successful */
-#define SND_SUCCESS 0
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* these two are for internal use only (and should really be declared
- * in another .h file not included by clients):
- */
-void snd_init();
-void snd_add_device(char *interf, char *device, snd_fns_type dictionary);
-
-long snd_bytes_per_frame(snd_type snd);
-
-int snd_open(snd_type snd, long *flags);
-
-int snd_seek(snd_type snd, double skip); /* set current location in file */
-int snd_reset(snd_type snd); /* flush non-file buffers */
-
-int snd_close(snd_type snd);
-
-int snd_flush(snd_type snd);
-
-long snd_read(snd_type snd, void *buffer, long length);
-
-long snd_write(snd_type snd, void *buffer, long length);
-
-long snd_convert(snd_type snd1, void *buffer1,
- snd_type snd2, void *buffer2, long length);
-
-long snd_poll(snd_type snd);
-
-cvtfn_type select_cvtfn(snd_type snd1, snd_type snd2);
-
-
-/* some conversion function lookup tables: */
-
-extern cvtfn_type cvt_from_8[];
-extern cvtfn_type cvt_from_16[];
-extern cvtfn_type cvt_from_32[];
-extern cvtfn_type cvt_to_8[];
-extern cvtfn_type cvt_to_16[];
-extern cvtfn_type cvt_to_32[];
-
-long cvt_from_unknown(void *buf1, void *buf2, long len2,
- float scale, float *peak);
-#define cvt_to_unknown cvt_from_unknown
-
-char *snd_mode_to_string(long mode);
-
-/* this number is returned by snd_poll if you pass it a file device */
-#define MAX_FILE_BUF_LEN 20000
-
-/* this is necessary for SGI */
-#ifndef FALSE
-#define FALSE 0
-#define TRUE 1
-#endif
-
-#ifdef __cplusplus
-}
-#endif
diff --git a/lib-src/libnyquist/snd/snd.htm b/lib-src/libnyquist/snd/snd.htm
deleted file mode 100644
index 0b85f92..0000000
--- a/lib-src/libnyquist/snd/snd.htm
+++ /dev/null
@@ -1 +0,0 @@
-<html>
<head>
<title>Sndlib: Audio File, Format Conversion, and I/O Utilities</title>
</head>
<body>
<h1>Sndlib: Audio File, Format Conversion, and I/O Utilities</h1>
<h3>Roger B. Dannenberg</h3>
<h2>History</h2>
<ul>
<li>18 June 97: Created.</li>
<li>6 July 97: Revised </li>
<li>7 May 00: Revised with multiple interface support and inner architecture documentation</li>
</ul>
<h2>Abstract</h2>
<p>This document describes a set of portable C utilities for digital audio input and
output to and from files and audio interfaces. The purpose is to read and write sound
files in a variety of formats and to play and record audio. This code is intended for use
in interactive and general purpose audio systems, and should be portable to virtually any
computer system that supports C and has a file system. </p>
<h2>Overview</h2>
<p>There is basically one interesting data type: snd_type is a pointer to a descriptor for
an audio stream, which is either being read from or written to a file or audio interface.
The snd_type contains a structure that describes the sample format, sample rate, number of
channels, etc. </p>
<p>Routines exist to initialize sound transfer (<tt>snd_open()</tt>), perform transfers (<tt>snd_read()</tt>,
<tt>snd_write()</tt>) and to finalize a transfer (<tt>snd_close()</tt>). Other routines
allow you to transfer data to/from buffers and to convert formats. Sample rate conversion
is not currently supported, but would be a welcome addition.</p>
<pre>typedef struct {
long channels; /* number of channels */
long mode; /* ADPCM, PCM, ULAW, ALAW, FLOAT, UPCM */
long bits; /* bits per sample */
double srate; /* sample rate */
} format_node;
#define snd_string_max 258
/* the snd_type structure for applications to use: */
typedef struct snd_struct {
short device; /* file, audio, or memory */
short write_flag; /* SND_READ, SND_WRITE, SND_OVERWRITE */
format_node format; /* sample format: channels, mode, bits, srate */
snd_fns_type dictionary; /* for internal use only */
union {
struct {
char filename[snd_string_max]; /* file name */
char filetype[snd_string_max]; /* file type if known */
int file; /* OS file number */
long header; /* None, AIFF, IRCAM, NEXT, WAVE */
long byte_offset; /* file offset of first sample */
long end_offset; /* byte_offset of last byte + 1 */
long current_offset; /* current (computed) file offset */
int swap; /* flag to swap bytes on input/output */
/* fields from AIFF sample files: */
int loop_info; /* Boolean: is this loop info valid? */
double native_hz; /* original pitch in hz */
float gain; /* gain: scale factor */
double low_hz;
double high_hz;
char low_velocity;
char high_velocity;
loop_node sustain_loop;
loop_node release_loop;
} file;
struct {
char interfacename[snd_string_max]; /* (optional) to specify interface */
char devicename[snd_string_max]; /* (optional) to specify device */
void *descriptor;
long protocol; /* SND_REALTIME or SND_COMPUTEAHEAD */
double latency; /* app + os worst case latency (seconds) */
double granularity; /* expected period of app computation (s) */
/* note: pass 0.0 for default latency and granularity */
} audio;
struct {
long buffer_max; /* size of buffer memory */
char *buffer; /* memory buffer */
long buffer_len; /* length of data in buffer */
long buffer_pos; /* current location in buffer */
} mem;
} u;
} snd_node, *snd_type;
</pre>
<p>The meanings of fields are as follows:
<ul>
<li><tt>device</tt>: one of <tt>SND_DEVICE_FILE</tt> (data to/from file), <tt>SND_DEVICE_AUDIO</tt>
(data to/from audio I/O device), <tt>SND_DEVICE_MEM</tt> (data to/from in-memory buffer),
or <tt>SND_DEVICE_NONE</tt> (records that snd_open failed).</li>
<li><tt>write_flag</tt>: one of <tt>SND_WRITE</tt> (create a file and write to it), <tt>SND_READ</tt>
(read from a file), <tt>SND_OVERWRITE</tt> (overwrite some samples within a file, leaving
the header and other samples untouched).</li>
<li><tt>format</tt>: contains </li>
<ul>
<li><tt>channels</tt>: number of audio channels </li>
<li><tt>mode</tt>: one of <tt>SND_MODE_ADPCM</tt> (adaptive delta modulation), <tt>SND_MODE_PCM</tt>
(pulse code modulation, i.e. simple linear encoding), <tt>SND_MODE_ULAW</tt> (Mu-Law), <tt>SND_MODE_ALAW</tt>
(A-Law), <tt>SND_MODE_FLOAT</tt> (float), or <tt>SND_MODE_UPCM</tt> (unsigned PCM).</li>
<li><tt>bits</tt>: number of per sample.</li>
<li><tt>srate</tt>: sample rate in samples per second (Hz). </li>
</ul>
</ul>
<p>These are additional fields for when <tt>device</tt> is <tt>SND_DEVICE_FILE</tt>:
<ul>
<li><tt>filename</tt>: string name for file. </li>
<li><tt>filetype</tt>: string name for file type (see "Unknown File Types" below)</li>
<li><tt>file</tt>: the file number or handle returned by the operating system. (In some
implementations, this may be a pointer to a file descriptor object cast into an integer.) </li>
<li><tt>header</tt>: the type and format of header, one of <tt>SND_HEAD_NONE</tt> (no
header), <tt>SND_HEAD_AIFF</tt>, <tt>SND_HEAD_IRCAM</tt>, <tt>SND_HEAD_NEXT</tt> (Sun and
NeXT format), or <tt>SND_HEAD_WAVE</tt>. </li>
<li><tt>byte_offset</tt>: the byte offset in the file. After opening the file, this is the
offset of the first sample. This value is updated after each read or write. </li>
<li><tt>end_offset</tt>: offset of the byte just beyond the last byte of the file. </li>
</ul>
<p>These are additional fields for when <tt>device</tt> is <tt>SND_DEVICE_AUDIO</tt>:
<ul>
<li><tt>devicename</tt>: string name for device (to select among multiple devices). This may
be set to the empty string (devicename[0] = 0;) to indicate the default audio device, or
it may be set to a name obtained from <tt>snd_devicename()</tt>. </li>
<li><tt>descriptor</tt>: a field to store system-dependent data protocol: <tt>SND_REALTIME</tt>
(use this if you are trying to compute ahead by a constant amount, especially for
low-latency output) or <tt>SND_COMPUTEAHEAD</tt> (use this if you want to keep output
buffers as full as possible, which will cause greater compute-ahead). </li>
<li><tt>latency</tt>: (minimum) amount to be kept in buffer(s). This should be at least as
great as the longest computational delay of the application PLUS the worst case latency
for scheduling the application to run. </li>
<li><tt>granularity</tt>: expected period of the periodic computation that generates
samples. Also, granularity indicates the largest number of samples that will be written
with snd_write or read with snd_read by the application.</li>
</ul>
<p>The following fields are for when <tt>device</tt> is SND_DEVICE_MEM (in-memory data):
<ul>
<li><tt>buffer_max</tt>: the size of the buffer memory (in bytes) </li>
<li><tt>buffer</tt>: the memory buffer address</li>
<li><tt>buffer_len</tt>: the length of data in the buffer </li>
<li><tt>buffer_pos</tt>: the current location of the input/output in memory. </li>
</ul>
<h2>Routine descriptions</h2>
<h3>Terminology</h3>
<p>A <em>sample</em> is one amplitude measurement from one <em>channel. </em>Ordinarily, a
sound file can contain multiple channels. All channels have the same sample rate and
length, and samples are treated as occurring simultaneously across all channels. The
collection of samples occurring simultaneously is called a <em>frame</em>. Samples are
stored in frame order. Within a frame, samples are stored in order of increasing channel
number.</p>
<p>All routines described here measure data in units of frames (not samples, not bytes).
One exception is <code>snd_seek()</code>, which measures file position in seconds of time,
expressed as a double.</p>
<tt>
<p><strong>int snd_open(snd_type snd, long *flags);</tt> </strong></p>
<blockquote>
<p>To open a file, fill in fields of a <tt>snd_type</tt> and call <tt>snd_open()</tt>. If
there is header information in the file or device characteristics for the audio interface,
fields of <tt>snd</tt> are filled in. The flags parameter tells which fields were
specified by the <tt>snd_open()</tt> process. E.g. if you open a raw file, there is no
header info, so the format will be as specified in <tt>snd</tt>. On the other hand, if you
open an AIFF file, the file will specify the sample rate, channels, bits, etc., so all
these values will be written into <tt>snd</tt>, and bits will be set in <tt>flags</tt> to
indicate the information was picked up from the file.</p>
<p>Returns <tt>SND_SUCCESS</tt> iff successful. If not successful, attempts to open a file
will place the (system dependent) return code from <tt>open()</tt> into the <tt>u.file.file</tt>
field.</p>
<p>Before calling <tt>snd_open()</tt>, all general fields and fields corresponding to the
device (e.g. <tt>u.file</tt> for <tt>SND_DEVICE_FILE)</tt> should be set, with the
following exceptions: <tt>u.file.header</tt> (for <tt>SND_WRITE</tt>), <tt>byte_offset</tt>,
<tt>end_offset</tt>, <tt>descriptor</tt>. The field <tt>filetype</tt> is set but not read
by <tt>snd_open().</tt></p>
<p>NOTE: For <tt>SND_DEVICE_MEM</tt>, fill in the <tt>u.mem</tt> fields directly and call <tt>snd_open()</tt>,
which merely sets the dictionary field with function pointers. The application is
responsible for maintaining <tt>u.mem</tt>: <tt>u.mem.buffer_len</tt> is the write pointer
(<tt>snd_write()</tt> data goes here), and <tt>u.mem.buffer_pos</tt> is the read pointer (<tt>snd_read()</tt>
data comes from here).</p>
<p>NOTE 2: for <tt>SND_DEVICE_MEM</tt>, you can set <tt>write_flag</tt> to <tt>SND_WRITE</tt>,
write data into the buffer, then set <tt>write_flag</tt> to <tt>SND_READ</tt> and read the
buffer. Use <tt>snd_reset()</tt> before reading the buffer again to read from the
beginning of the buffer, or simply reset read and write pointers directly to read/write
different parts of the buffer.</p>
</blockquote>
<p><strong><tt>int snd_close(snd_type snd);</tt> </strong></p>
<blockquote>
<p>Closes a file or audio device. There is no need to call <tt>snd_close</tt> for <tt>SND_DEVICE_MEMORY</tt>,
but this is not an error.</p>
<p>Returns <tt>SND_SUCCESS</tt> iff successful.</p>
</blockquote>
<p><strong><tt>int snd_seek(snd_type snd, double when);</tt> </strong></p>
<blockquote>
<p>After opening a file for reading or overwriting, you can seek ahead to a specific time
point by calling <tt>snd_seek()</tt>. The when parameter is in seconds and indicates seconds of time
relative to the beginning of the sound.</p>
<p>Returns <tt>SND_SUCCESS</tt> iff successful.</p>
</blockquote>
<tt>
<p><strong>int snd_reset(snd_type snd);</tt> </strong></p>
<blockquote>
<p>Resets non-file buffers. If <tt>snd</tt> has <tt>SND_DEVICE_AUDIO</tt>, then the sample
buffers are flushed. This might be a good idea before reading samples after a long pause
that would cause buffers to overflow and contain old data, or before writing samples if
you want the samples to play immediately, overriding anything already in the buffers.</p>
<p>If snd has <tt>SND_DEVICE_MEM</tt> and <tt>SND_READ</tt>, then the buffer read pointer
(buffer_pos) is reset to zero. If <tt>SND_WRITE</tt> is set, then the buffer read pointer
(buffer_pos) and write pointer (buffer_len) are reset to zero.</p>
<p>If snd has <tt>SND_DEVICE_FILE</tt>, nothing happens.</p>
<p>Returns <tt>SND_SUCCESS</tt> iff successful.</p>
</blockquote>
<p><strong><tt>long snd_read(snd_type snd, void *buffer, long length);</tt> </strong></p>
<blockquote>
<p>Read up to length frames into <tt>buffer</tt>. </p>
<p>Returns the number of frames actually read.</p>
</blockquote>
<p><strong><tt>int snd_write(snd_type snd, void *buffer, long length);</tt> </strong></p>
<blockquote>
<p>Writes length frames from buffer to file or device. </p>
<p>Returns number of frames actually written.</p>
</blockquote>
<p><strong><tt>long snd_convert(snd_type snd1, void *buffer1,<br>
snd_type
snd2, void *buffer2, long length);</tt></strong></p>
<blockquote>
<p>To read from a source and write to a sink, you may have to convert formats. This
routine provides simple format conversions according to what is specified in <tt>snd1</tt>
and <tt>snd2</tt>. The number of frames to convert is given by length, and the number of
frames is returned.</p>
</blockquote>
<p><strong><tt>long snd_poll(snd_type snd);</tt> </strong></p>
<blockquote>
<p>The standard way to play files is to put something in the event loop that refills an
output buffer managed by the device driver. This routine allows you to ask whether there
is space to output more samples. If <tt>SND_REALTIME</tt> is selected, the number returned
by <tt>snd_poll()</tt> will grow fairly smoothly at the sample rate, i.e. if the sample
rate is 8KHz, then the result of <tt>snd_poll()</tt> will increase by 8 per millisecond.
On the other hand, if <tt>SND_COMPUTEAHEAD</tt> is selected, then <tt>snd_poll()</tt> will
return zero until a sample buffer becomes available, at which time the value returned will
be the entire buffer size.</p>
<p>In some implementations, with <tt>SND_REALTIME</tt>, <tt>snd_poll()</tt> can be used to
furnish a time reference that is synchronized to the sample clock. In other words, the
number of frames written plus the value returned by <tt>snd_poll()</tt> increases steadily
in steps no larger than <tt>granularity</tt>.</p>
<p>Note: some low-level functions are implemented for conversion from buffers of floats to
various representations and from these representations back to floats. See <tt>snd.h</tt>
for their declarations.</p>
</blockquote>
<p><strong><tt>int snd_flush(snd_type snd);</tt> </strong></p>
<blockquote>
<p>When the device is <tt>SND_DEVICE_AUDIO</tt>, writes are buffered. After the last
write, call <tt>snd_flush()</tt> to transfer samples from the buffer to the output device.
<tt>snd_flush()</tt> returns immediately, but it only returns <tt>SND_SUCCESS</tt> after
the data has been output to the audio device. Since calling <tt>snd_close()</tt> will
terminate output, the proper way to finish audio output is to call <tt>snd_flush()</tt>
repeatedly until it returns <tt>SND_SUCCESS</tt>. Then call <tt>snd_close()</tt> to close
the audio device and free buffers.</p>
<p>If snd_flush is called on any open snd_type other than a <tt>SND_DEVICE_AUDIO</tt>
opened for output, it returns <tt>SND_SUCCESS</tt>. Results are undefined if <tt>snd_flush()</tt>
is called on a non-open <tt>snd_type</tt>.</p>
</blockquote>
<p><strong><tt>long snd_bytes_per_frame(snd_type snd);</tt> </strong></p>
<blockquote>
<p>Calculates the number of bytes in a frame (a frame has one sample per channel; sound
files are stored as a sequence of frames).</p>
</blockquote>
<p><strong><tt>char *snd_mode_to_string(long mode);</tt> </strong></p>
<blockquote>
<p>Returns a string describing the mode (<tt>SND_MODE_PCM</tt>, etc.).</p>
</blockquote>
<p><strong><tt>int snd_device(int n, char *interf, char *device);</tt> </strong></p>
<blockquote>
<p>Sets strings describing the n-th audio device. <code>interf</code> is set to the
interface name and <code>device</code> is set to the device name. Both should be allocated
to be at least <code>snd_string_max</code> bytes in length. Returns <tt>NULL</tt> if n is
greater or equal to the number of audio devices. Available devices are numbered, starting
with the default device at n=0. Before opening an audio device, an application can use
this to enumerate all possible devices, select one (e.g. by presenting a list to the
user), and then copy the strings into the <tt>devicename</tt> and <code>interfacename</code>
fields of the <tt>snd_type</tt> structure. If the <tt>devicename</tt> field is the empty
string, device 0 will be opened.</p>
</blockquote>
<h2>Unknown File Types</h2>
<p>Normally, the caller does not need to know anything about a file other than its name in
order to open and read it. The library figures out the file encoding from header
information. Only in the case of headerless files does the caller need to supply format
parameters. If the file format is not recognized, <code>snd_open()</code> opens the file
according to the supplied format parameters. If the file format is recognized but not
supported, <code>snd_open()</code> will return <code>SND_FAILURE</code>, and the <code>flags</code>
parameter will indicate what format information was detected. For example, if the number
of <code>channels</code> is 4, <code>format.channels</code> is set to 4 and the <code>SND_HEAD_CHANNELS</code>
bit is set in <code>flags</code>. If the name of the format is known, e.g.
"MP3," but there is no decoder for the format, then the <code>filetype</code>
field is set to that string name, and the <code>SND_HEAD_FILETYPE</code> bit is set in <code>flags</code>.</p>
<p>To detect and report an unknown file type, test the result of <code>snd_open()</code>
for <code>SND_SUCCESS</code>. If not successful, test <code>flags</code> to see what
information is valid. You may wish to report back to the user, especially if the <code>SND_HEAD_FILETYPE</code>
bit is set.</p>
<h2>Examples</h2>
<p>See <tt>convert.c</tt> for examples of:
<ul>
<li>Printing information about a sound file </li>
<li>Converting sound file formats </li>
<li>Playing audio from a file </li>
<li>Reading audio from audio input</li>
</ul>
<h2>Compiling the source code</h2>
<p>To compile <tt>convert.c</tt> under Visual C++, add all the <tt>.c</tt> files to a
console application project and add these libraries to the Object/library modules list
under the Link tab in the Project Settings dialog box: <tt>winmm.lib wsock32.lib</tt>. If <tt>wsock32.lib</tt>
does not work, try <tt>ws2_32.lib</tt>. The purpose of these libraries is to get functions
that perform byte swapping in a system-independent way.</p>
<h2>Inner architecture description</h2>
<p>To modify or extend the Sndlib code, it is important to understand the architecture and
design. The main issues are the structure used to obtain portability, and the support for
multiple device interfaces within a given system.</p>
<h3>Portability</h3>
<p>The include file <tt>snd.h</tt> declares most of the library structures and routines. <tt>snd.h</tt>
includes <tt>sndconfig.h</tt>, which handles system dependencies.</p>
<p>System-dependent code is selected using conditional compilation. The following
compile-time symbols are defined:
<ul>
<li><tt>WIN32</tt>: Some version of Windows (95, 98, or NT)</li>
<li><tt>UNIX</tt>: Some version of Unix. One of the following should also be defined:<ul>
<li><tt>LINUX</tt>: The Linux Operating System. </li>
<li><tt>IRIX</tt>: The SGI Irix Operating System. </li>
</ul>
</li>
<li><tt>MACINTOSH</tt>: Some version of MacOS.</li>
</ul>
<p><tt>sndconfig.h</tt> is responsible for defining a number of routines and/or macros,
including the macro that selects the system. E.g. under Visual C++, the macro <tt>_WIN32</tt>
is defined, so <tt>sndconfig.h</tt> defines <tt>WIN32</tt>. If <tt>_WIN32</tt> is defined.
The other routines and macros to be defined are described in <tt>sndconfig.h</tt> itself.
To avoid too many conditional compilation statements that make code hard to read, <tt>sndconfig.h</tt>
works by conditionally including another <tt>.h</tt> file. The files are named <tt>sndwin32.h</tt>,
<tt>sndlinux.h</tt>, <tt>sndirix.h</tt>, and <tt>sndmac.h</tt>, and other systems should
implement include files in the same manner. </p>
<p>In addition to the Unix, Windows, Macintosh distinction, this library also supports WX,
a graphical user interface library. WX provides its own routines for file IO, and WX runs
under Windows, Unix, and the Macintosh. This adds some confusion because WX functions cut
across the Windows, Unix, Macintosh spectrum for things like file IO, but WX functions do
not implement audio, so we still need to distinguish systems. To handle WX, a set of IO
functions have been created, e.g. <tt>snd_open()</tt>, <tt>snd_read()</tt>, and <tt>snd_write()</tt>,
and these are defined in <tt>sndwin32.h</tt> etc. <em>only</em> if <tt>WX</tt> is <em>not</em>
defined. If <tt>WX</tt> is defined, then another include file <tt>sndwx.h</tt> is included
into <tt>sndconfig.h</tt> to define the IO routines independently of what system is being
compiled.</p>
<h3>Multiple interface support</h3>
<p>In the original designed, it was assumed that each operating system would provide one
and only one audio interface, and this library would provide an abstract layer above that.
It turned out that many operating systems offer multiple interfaces, e.g. Windows has both
the multimedia interface and DirectSound, and Linux has several competing interfaces.
Windows machines also have ASIO and other interface possibilities.</p>
<p>To support multiple interfaces, the library has the call <tt>snd_devicename()</tt>
which returns the name of the n<em>th</em> audio device. Where do these names come from?
System-specific parts of the library call a non-system specific function as follows: </p>
<pre>
/* these types are for internal use: */
typedef int (*snd_reset_fn)(snd_type snd);
typedef long (*snd_poll_fn)(snd_type snd);
typedef long (*snd_read_fn)(snd_type snd, void *buffer, long length);
typedef long (*snd_write_fn)(snd_type snd, void *buffer, long length);
typedef int (*snd_open_fn)(snd_type snd, long *flags);
typedef int (*snd_close_fn)(snd_type snd);
typedef int (*snd_reset_fn)(snd_type snd);
typedef int (*snd_flush_fn)(snd_type snd);
typedef struct {
snd_reset_fn reset;
snd_poll_fn poll;
snd_read_fn read;
snd_write_fn write;
snd_open_fn open;
snd_close_fn close;
snd_reset_fn reset;
snd_flush_fn flush;
} snd_fns_node, *snd_fns_type;
void snd_add_device(char *devicename, snd_fns_type dictionary);
</pre>
<p>This is called for each different device or interface. In the general case, there might
be several physical devices, each supporting several logical devices (front stereo, rear
stereo, and quad), and there might be several different system APIs that access these (MM
and DirectSound). The system-specific code provides a string name for each of these and a
dictionary of function pointers for each.</p>
<p>When does the system-specific code call <tt>snd_add_device()</tt>? When either <tt>snd_open()</tt>
or <tt>snd_devicename()</tt> is called for the first time, a call is made to <tt>snd_init()</tt>,
which is defined in system-specific code. <tt>snd_init()</tt> is responsible for calling
detection and initialization code for each supported device. </p>
<p>The <tt>snd_fns_node</tt> structure contains function pointers that implement the
library functions. A pointer to this structure is found in the <tt>snd_type</tt> structure
which is passed to nearly every library function. These library functions are implemented
by making indirect calls through these function pointers.</p>
<p><em>Note that most of these functions take byte-counts as length parameters rather than
frames. This is because standard system calls such as read() and write() use bytes.</em></p>
</body>
</html>
diff --git a/lib-src/libnyquist/snd/snd.txt b/lib-src/libnyquist/snd/snd.txt
deleted file mode 100644
index c45c99d..0000000
--- a/lib-src/libnyquist/snd/snd.txt
+++ /dev/null
@@ -1,277 +0,0 @@
-<html>
-Audio File, Format Conversion, and I/O Utilities
-
-Roger Dannenberg
-18 June 97
-Revised 6 July 97
-Revised 7 May 00 with multiple interface support and inner architecture
- documentation
-
-This document describes a set of portable C utilities for digital audio
-input and output to and from files and audio interfaces.
-
-The goals are to be able to read and write sound files in a variety of
-formats and to play and record audio. This code is intended for use
-in Nyquist, Aura, Amulet, and other systems, and should be portable
-to virtually any computer system that supports C and has a file system.
-
-
-Overview:
-
-There is basically one interesting data type: snd_type is a pointer to a
-descriptor for an audio stream, which is either being read from or written
-to a file or audio interface. The snd_type contains a structure that
-describes the sample format, sample rate, number of channels, etc.
-
-Routines exist to initialize sound transfer (snd_open()), perform transfers
-(snd_read(), snd_write()) and to finalize a transfer (snd_close()). Other
-routines allow you to transfer data to/from buffers and to convert formats.
-Sample rate conversion is not currently supported, but would be a welcome
-addition.
-
-typedef struct {
- long channels; /* number of channels */
- long mode; /* ADPCM, PCM, ULAW, ALAW, FLOAT, UPCM */
- long bits; /* bits per sample */
- double srate; /* sample rate */
-} format_node;
-
-
-typedef struct {
- short device; /* file, audio, or memory */
- short write_flag; /* SND_READ, SND_WRITE, SND_OVERWRITE */
- union {
- struct {
- char filename[258]; /* file name */
- int file; /* OS file number */
- long header; /* None, AIFF, IRCAM, NEXT, WAVE */
- long byte_offset; /* file offset of first sample */
- long end_offset; /* byte_offset of last byte + 1 */
- } file;
- struct {
- long buffer_max; /* size of buffer memory */
- char *buffer; /* memory buffer */
- long buffer_len; /* length of data in buffer */
- long buffer_pos; /* current location in buffer */
- } mem;
- struct {
- char devicename[258]; /* (optional) to specify device */
- void *descriptor;
- long protocol; /* SND_REALTIME or SND_COMPUTEAHEAD */
- double latency; /* app + os worst case latency (seconds) */
- double granularity; /* expected period of app computation (s) */
- /* note: pass 0.0 for default latency and granularity */
- } audio;
- } u;
- format_node format; /* sample format: channels, mode, bits, srate */
-} snd_node, *snd_type;
-
-The meanings of fields are as follows:
- device: one of SND_DEVICE_FILE (data to/from file), SND_DEVICE_AUDIO
-(data to/from audio I/O device), SND_DEVICE_MEM (data to/from in-memory
-buffer), or SND_DEVICE_NONE (records that snd_open failed).
- write_flag: one of SND_WRITE (create a file and write to it),
-SND_READ (read from a file), SND_OVERWRITE (overwrite some samples within a
-file, leaving the header and other samples untouched).
- format: contains number of channels, mode, number of bits per
-sample, and sample rate. mode is SND_MODE_ADPCM (adaptive delta
-modulation), SND_MODE_PCM (pulse code modulation, i.e. simple linear
-encoding), SND_MODE_ULAW (Mu-Law), SND_MODE_ALAW (A-Law), SND_MODE_FLOAT
-(float), or SND_MODE_UPCM (unsigned PCM)
-
-These are fields for SND_DEVICE_FILE:
- filename: string name for file.
- file: the file number or handle returned by the operating system.
- header: the type and format of header, one of SND_HEAD_NONE (no
-header), SND_HEAD_AIFF, SND_HEAD_IRCAM, SND_HEAD_NEXT (Sun and NeXT format),
-or SND_HEAD_WAVE.
- byte_offset: the byte offset in the file. After opening the file,
-this is the offset of the first sample. This value is updated after each
-read or write.
- end_offset: offset of the byte just beyond the last byte of the file.
-
-These are fields for SND_DEVICE_AUDIO
- devicename: string name for device (to select among multiple
-devices). This may be set to the empty string (devicename[0] = 0) to
-indicate the default audio device, or it may be set to a name obtained
-from snd_devicename().
- descriptor: a field to store system-dependent data
- protocol: SND_REALTIME (use this if you are trying to compute ahead
-by a constant amount, especially for low-latency output) or SND_COMPUTEAHEAD
-(use this if you want to keep output buffers as full as possible, which will
-cause greater compute-ahead).
- latency: (minimum) amount to be kept in buffer(s). This should be at
-least as great as the longest computational delay of the application PLUS
-the worst case latency for scheduling the application to run.
- granularity: expected period of the periodic computation that
-generates samples. Also, granularity indicates the largest number of
-samples that will be written with snd_write or read with snd_read by the
-application.
-
-The following fields are for SND_DEVICE_MEM (in-memory data):
- buffer_max: the size of the buffer memory (in bytes)
- buffer: the memory buffer address
- buffer_len: the length of data in the buffer
- buffer_pos: the current location of the input/output in memory.
-
-
-Routine descriptions:
-
-int snd_open(snd_type snd, long *flags);
-
-To open a file, fill in fields of a snd_type and call snd_open. If there is
-header information in the file or device characteristics for the audio
-interface, fields of snd are filled in. The flags parameter tells which
-fields were specified by the snd_open process. E.g. if you open a raw file,
-there is no header info, so the format will be as specified in snd. On the
-other hand, if you open an AIFF file, the file will specify the sample rate,
-channels, bits, etc., so all these values will be written into snd, and bits
-will be set in flags to indicate the information was picked up from the
-file.
-
-Returns SND_SUCCESS iff successful. If not successful, attempts to open a
-file will place the return code from open() into the u.file.file field.
-
-Before calling snd_open, all general fields and fields corresponding to the
-device (e.g. u.file for SND_DEVICE_FILE) should be set, with the following
-exceptions: u.file.header (for SND_WRITE), byte_offset, end_offset,
-descriptor.
-
-NOTE: do not call snd_open for SND_DEVICE_MEM, just fill in the fields.
-u.mem.buffer_len is the write pointer (snd_write() data goes here), and
-u.mem.buffer_pos is the read pointer (snd_read() data comes from here).
-
-NOTE 2: for SND_DEVICE_MEM, you can set write_flag to SND_WRITE, write data
-into the buffer, then set write_flag to SND_READ and read the buffer. Use
-snd_reset() before reading the buffer again.
-
-int snd_close(snd_type snd);
-
-Closes a file or audio device. There is no need to call snd_close for
-SND_DEVICE_MEMORY, but this is not an error.
-
-Returns SND_SUCCESS iff successful.
-
-int snd_seek(snd_type snd, double skip);
-
-After opening a file for reading or overwriting, you can seek ahead to a
-specific time point by calling snd_seek. The skip parameter is in seconds.
-
-Returns SND_SUCCESS iff successful.
-
-int snd_reset(snd_type snd);
-
-Resets non-file buffers. If snd has SND_DEVICE_AUDIO, then the sample
-buffers are flushed. This might be a good idea before reading samples after
-a long pause that would cause buffers to overflow and contain old data, or
-before writing samples if you want the samples to play immediately,
-overriding anything already in the buffers.
-
-If snd has SND_DEVICE_MEM and SND_READ, then the buffer read pointer
-(buffer_pos) is reset to zero. If SND_WRITE is set, then the buffer read
-pointer (buffer_pos) and write pointer (buffer_len) are reset to zero.
-
-If snd has SND_DEVICE_FILE, nothing happens.
-
-Returns SND_SUCCESS iff successful.
-
-long snd_read(snd_type snd, void *buffer, long length);
-
-Read up to length bytes into buffer.
-
-Returns the number of bytes actually read.
-
-int snd_write(snd_type snd, void *buffer, long length);
-
-Writes length bytes from buffer to file or device.
-
-Returns number of bytes actually written.
-
-long snd_convert(snd_type snd1, void *buffer1, long length1,
- snd_type snd2, void *buffer2, long length2);
-
-To read from a source and write to a sink, you may have to convert formats.
-This routine provides simple format conversions according to what is
-specified in snd1 and snd2. The maximum length of buffer2 is passed in
-length2 and the actual number of bytes written to buffer2 is returned from
-the call. It is an error if buffer2 is too short for the full conversion of
-buffer1.
-
-long snd_poll(snd_type snd);
-
-The standard way to play files is to put something in the event loop that
-refills an output buffer managed by the device driver. This routine allows
-you to ask whether there is space to output more samples. If SND_REALTIME is
-selected, the number returned by snd_poll will grow fairly smoothly at the
-data rate, i.e. if the data rate is 8KB/s, then the result of snd_poll will
-increase by 8 bytes per millisecond. On the other hand, if SND_COMPUTEAHEAD
-is selected, then snd_poll will return zero until a sample buffer becomes
-available, at which time the value returned will be the entire buffer size.
-
-Note: some low-level functions are implemented for conversion from buffers
-of floats to various representations and from these representations back to
-floats. See snd.h for their declarations.
-
-int snd_flush(snd_type snd);
-
-When the device is SND_DEVICE_AUDIO, writes are buffered. After the last
-write, call snd_flush() to transfer samples from the buffer to the output
-device. snd_flush() returns immediately, but it only returns SND_SUCCESS
-after the data has been output to the audio device. Since calling
-snd_close() will terminate output, the proper way to finish audio output
-is to call snd_flush() repeatedly until it returns SND_SUCCESS. Then call
-snd_close() to close the audio device and free buffers.
-
-If snd_flush is called on any open snd_type other than a SND_DEVICE_AUDIO
-opened for output, it returns SUCCESS. Results are undefined if snd_flush
-is called on a non-open snd_type.
-
-long snd_bytes_per_frame(snd_type snd);
-
-Calculates the number of bytes in a frame (a frame has one sample per
-channel; sound files are stored as a sequence of frames).
-
-char *snd_mode_to_string(long mode);
-
-Returns a string describing the mode (SND_MODE_PCM, etc.).
-
-char *snd_devicename(int n);
-
-Returns a string describing the n-th audio device. Returns NULL if
-n is greater or equal to the number of audio devices. Available devices
-are numbered, starting with the default device at n=0. Before opening an
-audio device, an application can use this to enumerate all possible
-devices, select one (e.g. by presenting a list to the user), and then
-copy the string into the devicename field of the snd_type structure.
-If the devicename field is the empty string, device 0 will be opened.
-
-It is easy to construct a higher-level function to play a file, e.g.
-
-aio_node my_player;
-
-aio_play_init(&player, "mysound.wav");
-playing = TRUE;
-
-Then, in the polling loop:
-
-if (playing) {
- if (!aio_play_poll(&player)) playing = FALSE;
-}
-
-Examples: see convert.c for examples of:
- Printing information about a sound file
- Converting sound file formats
- Playing audio from a file
- Reading audio from audio input
-
-To compile convert.c under NT: add all the .c files to a console application project and add these libraries to the Object/library modules list under the Link tab in the Project Settings dialog box:
- winmm.lib
- ws2_32.lib
-
-Inner architecture description
-
-
-
-Audio buffer and time management
-
-</html>
diff --git a/lib-src/libnyquist/snd/sndconfig.h b/lib-src/libnyquist/snd/sndconfig.h
deleted file mode 100644
index 9e0a513..0000000
--- a/lib-src/libnyquist/snd/sndconfig.h
+++ /dev/null
@@ -1,77 +0,0 @@
-// #include <stdio.h> // for size_t
-
-/* sndconfig.h -- system-specific definitions */
-/*
- NOTES: each implementation must have its own .h and .c files,
- e.g. sndwin32.h and sndwin32.c. These files implement the following:
-
-1) Either LINUX, WIN32, or MACINTOSH should be defined.
-(WX can also be defined to override standard file IO with functions
-from WX, a graphical user interface library.)
-
-2) The following function declaration:
- void snd_fail(char *msg);
-or
- #define snd_fail some_function
-(note that snd_fail must be a function pointer)
-
-3) typedef FASTFLOAT to be either a double or a float, whichever
-computes faster (PowerPCs are faster at double math than float math)
-
-4) typedef MEMFLOAT to be how you would store a sample in memory
-(this should normally be float)
-
-5) min() must be defined (either a macro or a function)
-
-6) max() must be defined (either a macro or a function)
-
-7) the following file IO functions must be defined:
- int snd_file_open(char *fname, int mode);
- int snd_file_creat(char *fname);
- int snd_file_lseek(int file, int offset, int param);
- long snd_file_read(int fp, char *data, long len);
- long snd_file_write(int fp, char *data, long len);
- int snd_file_close(int fp);
- long snd_file_len(int fp);
-(some implementations cast a pointer to an int in snd_open,
-so it is assumed that int can at least hold a pointer)
-
-8) The following function to report failure and exit:
- void snd_fail(char *msg);
-
-9) The following memory allocation routines:
- void *snd_alloc(size_t s);
- void snd_free(void *a);
-
-10) snd_string_max -- string length for filenames, etc.
-
-*/
-
-#define snd_string_max 258
-
-void snd_fail(char *msg);
-void snd_warn(char *msg);
-void *snd_alloc(size_t s);
-void snd_free(void *a);
-
-#if defined(__linux__)
- #include "sndlinux.h"
-
-#elif defined(IRIX)
- #include "sndirix.h"
-
-#elif defined(__FreeBSD__)
- #include "sndfreebsd.h"
-
-#elif defined(_WIN32)
- #ifndef WIN32
- #define WIN32
- #endif
- #include "sndwin32.h"
-
-#elif defined(macintosh) || defined(__WXMAC__) || defined(__APPLE__)
- #ifndef MAC
- #define MAC
- #endif
- #include "sndmac.h"
-#endif
diff --git a/lib-src/libnyquist/snd/sndcvt.c b/lib-src/libnyquist/snd/sndcvt.c
deleted file mode 100644
index 9619347..0000000
--- a/lib-src/libnyquist/snd/sndcvt.c
+++ /dev/null
@@ -1,693 +0,0 @@
-/* sndread.c -- read sound files */
-
-/* CHANGELOG
- *
- * 29Jun95 RBD ULAW fixed problems with signed chars
- */
-#ifndef mips
-#include "stdlib.h"
-#endif /* mips */
-#include "snd.h"
-#include "stdio.h"
-#ifdef LINUX
-#include "sys/file.h"
-#else
-/* #include <unistd.h> */
-#ifdef WIN32
-#include <sys/stat.h>
-#include "io.h"
-#elif defined(__FreeBSD__)
-#include <sys/stat.h>
-#endif /* WIN32 */
-#define L_SET SEEK_SET
-#define L_INCR SEEK_CUR
-#define PROTECTION
-#endif /* LINUX */
-#include "sndhead.h"
-/* on the mac, memory.h gets Memory.h, a mac header so use string.h */
-/* #include "memory.h" -- for memcpy */
-#include "string.h" /* for memcpy */
-
-#define SCALE_FACTOR_TO_SHORT 32767
-#define SCALE_FACTOR_TO_BYTE 127
-#define SCALE_FACTOR_TO_LONG 2147483647
-
-enum
-{
- BIAS = 0x84, /* define the add-in bias for 16 bit samples */
- CLIP = 32635,
- SIGN_BIT = 0x80, /* sign bit on A-law / mu-law encoded samples */
- ZEROTRAP = 0
-};
-
-static int ulaw_table[256] =
-{
- -32124, -31100, -30076, -29052, -28028, -27004, -25980, -24956,
- -23932, -22908, -21884, -20860, -19836, -18812, -17788, -16764,
- -15996, -15484, -14972, -14460, -13948, -13436, -12924, -12412,
- -11900, -11388, -10876, -10364, -9852, -9340, -8828, -8316,
- -7932, -7676, -7420, -7164, -6908, -6652, -6396, -6140,
- -5884, -5628, -5372, -5116, -4860, -4604, -4348, -4092,
- -3900, -3772, -3644, -3516, -3388, -3260, -3132, -3004,
- -2876, -2748, -2620, -2492, -2364, -2236, -2108, -1980,
- -1884, -1820, -1756, -1692, -1628, -1564, -1500, -1436,
- -1372, -1308, -1244, -1180, -1116, -1052, -988, -924,
- -876, -844, -812, -780, -748, -716, -684, -652,
- -620, -588, -556, -524, -492, -460, -428, -396,
- -372, -356, -340, -324, -308, -292, -276, -260,
- -244, -228, -212, -196, -180, -164, -148, -132,
- -120, -112, -104, -96, -88, -80, -72, -64,
- -56, -48, -40, -32, -24, -16, -8, 0,
- 32124, 31100, 30076, 29052, 28028, 27004, 25980, 24956,
- 23932, 22908, 21884, 20860, 19836, 18812, 17788, 16764,
- 15996, 15484, 14972, 14460, 13948, 13436, 12924, 12412,
- 11900, 11388, 10876, 10364, 9852, 9340, 8828, 8316,
- 7932, 7676, 7420, 7164, 6908, 6652, 6396, 6140,
- 5884, 5628, 5372, 5116, 4860, 4604, 4348, 4092,
- 3900, 3772, 3644, 3516, 3388, 3260, 3132, 3004,
- 2876, 2748, 2620, 2492, 2364, 2236, 2108, 1980,
- 1884, 1820, 1756, 1692, 1628, 1564, 1500, 1436,
- 1372, 1308, 1244, 1180, 1116, 1052, 988, 924,
- 876, 844, 812, 780, 748, 716, 684, 652,
- 620, 588, 556, 524, 492, 460, 428, 396,
- 372, 356, 340, 324, 308, 292, 276, 260,
- 244, 228, 212, 196, 180, 164, 148, 132,
- 120, 112, 104, 96, 88, 80, 72, 64,
- 56, 48, 40, 32, 24, 16, 8, 0
-};
-
-
-long snd_convert2(snd_type snd1, void *buffer1,
- snd_type snd2, void *buffer2, long length);
-
-
-unsigned char
-st_linear_to_alaw (int sample)
-{
- int mask = 0xD5, a_val = 0x7F;
- unsigned int segment;
- short seg_aend[8] = {
- 0x1F, 0x3F, 0x7F, 0xFF, 0x1FF, 0x3FF, 0x7FF, 0xFFF
- };
-
- sample >>= 3;
- if (sample < 0) {
- mask = 0x55; /* sign bit = 0 */
- sample = -1 - sample;
- }
-
- /* Convert the scaled magnitude to segment number. */
- for (segment = 0; segment < 8; segment++) {
- if (sample <= seg_aend[segment]) {
- break;
- }
- }
-
- /* Combine the sign, segment, and quantization bits. */
- if (segment < 8)
- {
- a_val = segment << 4;
- if (segment < 2)
- a_val |= (sample >> 1) & 0x0F;
- else
- a_val |= (sample >> segment) & 0x0F;
- }
-
- return (unsigned char) (a_val ^ mask);
-}
-
-
-unsigned char st_linear_to_ulaw(int sample)
-{
- static int exp_lut[256] = {0,0,1,1,2,2,2,2,3,3,3,3,3,3,3,3,
- 4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
- 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,
- 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,
- 6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,
- 6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,
- 6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,
- 6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,
- 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,
- 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,
- 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,
- 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,
- 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,
- 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,
- 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,
- 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7};
- int sign, exponent, mantissa;
- unsigned char ulawbyte;
-
- /* Get the sample into sign-magnitude. */
- sign = (sample >> 8) & SIGN_BIT; /* set aside the sign */
- if (sign != 0) sample = -sample; /* get magnitude */
- if (sample > CLIP) sample = CLIP; /* clip the magnitude */
-
- /* Convert from 16 bit linear to ulaw. */
- sample = sample + BIAS;
- exponent = exp_lut[(sample >> 7) & 0xFF];
- mantissa = ( sample >> ( exponent + 3 ) ) & 0x0F;
- ulawbyte = ~ ( sign | ( exponent << 4 ) | mantissa );
- if (ZEROTRAP && (ulawbyte == 0)) { /* optional CCITT trap */
- ulawbyte = 0x02;
- }
- return (ulawbyte);
-}
-
-
-char TOOSMALL[] = "snd_convert: destination buffer too small";
-
-/* snd_convert -- copy from buffer2 to buffer1, converting samples if necessary */
-/*
- */
-long snd_convert(snd_type snd1, void *buffer1,
- snd_type snd2, void *buffer2, long length)
-{
- /* simplest conversion: none */
- if (snd1->format.channels == snd2->format.channels &&
- snd1->format.mode == snd2->format.mode &&
- snd1->format.bits == snd2->format.bits &&
- snd1->format.srate == snd2->format.srate) {
- memcpy(buffer1, buffer2, length * snd_bytes_per_frame(snd1));
- return length;
- }
-
- /* reject if sample rates do not match */
- if (snd1->format.srate != snd2->format.srate) {
- snd_fail("snd_convert: cannot convert sample rates");
- return 0L;
- }
-
- /* convert from anything to float */
- if (snd1->format.mode == SND_MODE_FLOAT /* implies 32-bit */ &&
- snd1->format.channels == snd2->format.channels) {
- cvtfn_type cvtfn = select_cvtfn(snd1, snd2);
- float peak = 0.0F;
- return (*cvtfn)(buffer1, buffer2, length * snd1->format.channels,
- 1.0F, &peak) / snd1->format.channels;
- }
-
- /* convert from float to anything */
- if (snd2->format.mode == SND_MODE_FLOAT /* implies 32-bit */ &&
- snd1->format.channels == snd2->format.channels) {
- cvtfn_type cvtfn = select_cvtfn(snd1, snd2);
- float peak = 0.0F;
- return (*cvtfn)(buffer1, buffer2, length * snd1->format.channels,
- 1.0F, &peak) / snd1->format.channels;
- }
-
- /* otherwise, we need to do a full conversion to and from float */
- return snd_convert2(snd1, buffer1, snd2, buffer2, length);
-}
-
-
-long snd_bytes_per_frame(snd_type snd)
-{
- return (((snd->format.bits + 7) >> 3) * snd->format.channels);
-}
-
-
-long to_mono(void *buffer, long length, long channels)
-{
- float *ptr = (float *) buffer;
- float *out = ptr;
- float inverse = 1.0F / channels;
- long result = length;
- while (length > 0) {
- float sum = 0.0F;
- int i;
- for (i = 0; i < channels; i++) {
- sum += ptr[i];
- }
- *out++ = sum * inverse;
- ptr += channels;
- length--;
- }
- return result;
-}
-
-
-long from_mono(void *buffer, long length, long channels)
-{
- float *outptr = ((float *) buffer) + (length * channels) - 1;
- float *inptr = ((float *) buffer) + length - 1;
-
- /* copy backwards to avoid overwriting data you need */
- while (inptr >= (float *) buffer) {
- int i;
- float s = *inptr--;
- for (i = 0; i < channels; i++) {
- *outptr-- = s;
- }
- }
- return length;
-}
-
-
-long snd_convert2(snd_type snd1, void *buffer1,
- snd_type snd2, void *buffer2, long length)
-{
- char *buf1 = (char *) buffer1;
- char *buf2 = (char *) buffer2;
-
-/* how many floats in one temporary block? */
-#define blocklen 1024
-/* how many bytes in temporary block? */
-#define blockbytes (blocklen * sizeof(float))
- float temp[blocklen];
-
- /* how many frames converted via temp block every iteration? */
- long frames_per_iteration = blocklen / max(snd1->format.channels,
- snd2->format.channels);
-
- snd_node temp_snd2;
-
- temp_snd2.format = snd2->format;
- temp_snd2.format.mode = SND_MODE_FLOAT;
- temp_snd2.format.bits = 32;
- temp_snd2.format.channels = snd2->format.channels; /* must match */
-
- while (length > 0) {
- long temp_len;
- /* First convert from buffer2 to floats in temp.
- * Channel counts will match even though they may not be what we want
- * in the end.
- */
- temp_snd2.format.channels = snd2->format.channels;
- temp_len = snd_convert(&temp_snd2, temp,
- snd2, buf2, min(length, frames_per_iteration));
- /* now temp contains temp_len frames of floats, same channels as snd2 */
-
- /* figure out if channels match */
- if (snd1->format.channels != snd2->format.channels) {
- /* no match, so first convert to mono */
- temp_len = to_mono(temp, temp_len, snd2->format.channels);
-
- /* then, if dest isn't mono, duplicate mono on all channels */
- if (snd1->format.channels > 1) {
- temp_len = from_mono(temp, temp_len, snd1->format.channels);
- }
- }
- /* now temp contains temp_len frames with same channels as snd1 */
-
- /* convert from temp to buffer1, again ignoring channel count */
- temp_snd2.format.channels = snd1->format.channels;
- temp_len = snd_convert(snd1, buf1,
- &temp_snd2, temp, temp_len);
-
- /* adjust pointers etc. */
- buf1 += temp_len * snd_bytes_per_frame(snd1);
- length -= temp_len;
- buf2 += temp_len * snd_bytes_per_frame(snd2);
- }
- return (buf1 - (char *) buffer1) / snd_bytes_per_frame(snd1);
-}
-
-
-long cvt_from_alaw_8 (void *buf1, void *buf2, long len2,
- float scale, float *peak)
-{
- float *floats = (float *) buf1;
- unsigned char *bytes = (unsigned char *) buf2;
- long i;
- int pcm_val, a_val;
- unsigned segment;
-
- scale /= SCALE_FACTOR_TO_SHORT;
- for (i = 0; i < len2; i++) {
- a_val = bytes[i] ^ 0x55;
-
- pcm_val = ((a_val & 0x0F) << 4) + 8;
- segment = (a_val & 0x70) >> 4;
- if (segment != 0)
- pcm_val = (pcm_val + 0x100) << (segment - 1);
-
- *floats++ = ((a_val & 0x80) ? pcm_val : -pcm_val) * scale;
- }
-
- return len2;;
-}
-
-
-long cvt_from_ulaw_8(void *buf1, void *buf2, long len2,
- float scale, float *peak)
-{
- float *floats = (float *) buf1;
- unsigned char *bytes = (unsigned char *) buf2;
- long i;
-
- scale /= SCALE_FACTOR_TO_SHORT;
- for (i = 0; i < len2; i++) {
- *floats++ = ulaw_table[((int) (*bytes++))] * scale;
- }
- return len2;
-}
-
-
-long cvt_from_upcm_8(void *buf1, void *buf2, long len2,
- float scale, float *peak)
-{
- float *floats = (float *) buf1;
- unsigned char *bytes = (unsigned char *) buf2;
- int i;
- scale /= SCALE_FACTOR_TO_BYTE;
- for (i = 0; i < len2; i++) {
- *floats++ = (((int) (*bytes++)) - 128) * scale;
- }
- return len2;
-}
-
-
-long cvt_from_pcm_8(void *buf1, void *buf2, long len2,
- float scale, float *peak)
-{
- float *floats = (float *) buf1;
- unsigned char *bytes = (unsigned char *) buf2;
- int i;
- scale /= SCALE_FACTOR_TO_BYTE;
- for (i = 0; i < len2; i++) {
- *floats++ = (((int) (*bytes++) ^ 128) - 128) * scale;
- }
- return len2;
-}
-
-
-long cvt_from_pcm_16(void *buf1, void *buf2, long len2,
- float scale, float *peak)
-{
- float *floats = (float *) buf1;
- short *shorts = (short *) buf2;
- int i;
- scale /= SCALE_FACTOR_TO_SHORT;
- for (i = 0; i < len2; i++) {
- *floats++ = *shorts++ * scale;
- }
- return len2;
-}
-
-
-long cvt_from_float_32(void *buf1, void *buf2, long len2, float scale, float *peak)
-{
- float *floats1 = (float *) buf1;
- float *floats2 = (float *) buf2;
- int i;
- for (i = 0; i < len2; i++) {
- *floats1++ = *floats2++ * scale;
- }
- return len2;
-}
-
-
-long cvt_from_pcm_32(void *buf1, void *buf2, long len2,
- float scale, float *peak)
-{
- float *floats = (float *) buf1;
- long *longs = (long *) buf2;
- int i;
- scale /= SCALE_FACTOR_TO_LONG;
- for (i = 0; i < len2; i++) {
- *floats++ = *longs++ * scale;
- }
- return len2;
-}
-
-
-long cvt_from_unknown(void *buf1, void *buf2, long len2,
- float scale, float *peak)
-{
- snd_fail("snd_convert: unknown conversion");
- return 0;
-}
-
-/* snd.h says: #define cvt_to_unknown cvt_from_unknown */
-
-
-long cvt_to_alaw_8 (void *buf1, void *buf2, long len2,
- float scale, float *peak)
-{
- unsigned char *bytes = (unsigned char *) buf1;
- float *floats = (float *) buf2;
- long i;
- FASTFLOAT s, max_sample = 0.0;
- scale *= SCALE_FACTOR_TO_SHORT;
-
- for (i = 0; i < len2; i++) {
- s = scale * floats[i];
- if (s > 0) {
- if (s > max_sample) {
- max_sample = s;
- }
- s += 0.5;
- } else {
- if (-s > max_sample) {
- max_sample = -s;
- }
- s -= 0.5;
- }
- bytes[i] = st_linear_to_ulaw ((int) s);
- }
-
- *peak = (float) (max_sample / SCALE_FACTOR_TO_SHORT);
- return len2;
-}
-
-
-long cvt_to_ulaw_8(void *buf1, void *buf2, long len2,
- float scale, float *peak)
-{
- unsigned char *bytes = (unsigned char *) buf1;
- float *floats = (float *) buf2;
- int i;
- FASTFLOAT max_sample = 0.0;
- scale *= SCALE_FACTOR_TO_SHORT;
-
- for (i = 0; i < len2; i++) {
- FASTFLOAT s = *floats++ * scale;
- /* round down, e.g. -4.5 => -5: */
- if (s > 0) {
- if (s > max_sample) max_sample = s;
- s += 0.5;
- } else {
- if (-s > max_sample) max_sample = -s;
- s -= 0.5;
- }
- *bytes++ = st_linear_to_ulaw((int) s);
- }
- *peak = (float) (max_sample / SCALE_FACTOR_TO_SHORT);
- return len2;
-}
-
-
-long cvt_to_upcm_8(void *buf1, void *buf2, long len2,
- float scale, float *peak)
-{
- unsigned char *bytes = (unsigned char *) buf1;
- float *floats = (float *) buf2;
- int i;
- FASTFLOAT max_sample = 0.0;
- scale *= SCALE_FACTOR_TO_BYTE;
-
- for (i = 0; i < len2; i++) {
- FASTFLOAT s = *floats++ * scale;
- /* round down, e.g. -4.5 => -5: */
- if (s > 0) {
- if (s > max_sample) max_sample = s;
- s += 0.5;
- } else {
- if (-s > max_sample) max_sample = -s;
- s -= 0.5;
- }
- *bytes++ = ((int) s) ^ 128;
- }
- *peak = (float) (max_sample / SCALE_FACTOR_TO_BYTE);
- return len2;
-}
-
-
-long cvt_to_pcm_8(void *buf1, void *buf2, long len2,
- float scale, float *peak)
-{
- unsigned char *bytes = (unsigned char *) buf1;
- float *floats = (float *) buf2;
- int i;
- FASTFLOAT max_sample = 0.0;
- len2 = len2;
- scale *= SCALE_FACTOR_TO_BYTE;
-
- for (i = 0; i < len2; i++) {
- FASTFLOAT s = *floats++ * scale;
- /* round down, e.g. -4.5 => -5: */
- if (s > 0) {
- if (s > max_sample) max_sample = s;
- s += 0.5;
- } else {
- if (-s > max_sample) max_sample = -s;
- s -= 0.5;
- }
- *bytes++ = (int) s;
- }
- *peak = (float) (max_sample / SCALE_FACTOR_TO_BYTE);
- return len2;
-}
-
-
-long cvt_to_upcm_16(void *buf1, void *buf2, long len2,
- float scale, float *peak)
-{
- short *shorts = (short *) buf1;
- float *floats = (float *) buf2;
- int i;
- FASTFLOAT max_sample = 0.0;
- scale *= SCALE_FACTOR_TO_SHORT;
-
- for (i = 0; i < len2; i++) {
- FASTFLOAT s = *floats++ * scale;
- /* round down, e.g. -4.5 => -5: */
- if (s > 0) {
- if (s > max_sample) max_sample = s;
- s += 0.5;
- } else {
- if (-s > max_sample) max_sample = -s;
- s -= 0.5;
- }
- *shorts++ = ((short) s) ^ 32768; // dmazzoni
- }
- *peak = (float) (max_sample / SCALE_FACTOR_TO_SHORT);
- return len2;
-}
-
-
-long cvt_to_pcm_16(void *buf1, void *buf2, long len2,
- float scale, float *peak)
-{
- short *shorts = (short *) buf1;
- float *floats = (float *) buf2;
- int i;
- FASTFLOAT max_sample = 0.0;
- scale *= SCALE_FACTOR_TO_SHORT;
-
- for (i = 0; i < len2; i++) {
- FASTFLOAT s = *floats++ * scale;
- /* round down, e.g. -4.5 => -5: */
- if (s > 0) {
- if (s > max_sample) max_sample = s;
- s += 0.5;
- } else {
- if (-s > max_sample) max_sample = -s;
- s -= 0.5;
- }
- *shorts++ = (short) s;
- }
- *peak = (float) (max_sample / SCALE_FACTOR_TO_SHORT);
- return len2;
-}
-
-
-long cvt_to_float_32(void *buf1, void *buf2, long len2, float scale, float *peak)
-{
- unsigned char *longs = (unsigned char *) buf1;
- float *floats = (float *) buf2;
- int i;
- FASTFLOAT max_sample = 0.0;
-
- for (i = 0; i < len2; i++) {
- FASTFLOAT s = *floats++ * scale;
- if (s > max_sample) max_sample = s;
- if (-s > max_sample) max_sample = -s;
- *floats++ = (float) s;
- }
- *peak = (float) max_sample;
- return len2;
-}
-
-
-long cvt_to_upcm_32(void *buf1, void *buf2, long len2,
- float scale, float *peak)
-{
- long *longs = (long *) buf1;
- float *floats = (float *) buf2;
- int i;
- FASTFLOAT max_sample = 0.0;
- scale *= SCALE_FACTOR_TO_LONG;
-
- for (i = 0; i < len2; i++) {
- FASTFLOAT s = *floats++ * scale;
- /* round down, e.g. -4.5 => -5: */
- if (s > 0) {
- if (s > max_sample) max_sample = s;
- s += 0.5;
- } else {
- if (-s > max_sample) max_sample = -s;
- s -= 0.5;
- }
- *longs++ = ((long) s) ^ (1 << 31); // dmazzoni
- }
- *peak = (float) (max_sample / SCALE_FACTOR_TO_LONG);
- return len2;
-}
-
-
-long cvt_to_pcm_32(void *buf1, void *buf2, long len2,
- float scale, float *peak)
-{
- long *longs = (long *) buf1;
- float *floats = (float *) buf2;
- int i;
- FASTFLOAT max_sample = 0.0;
- scale *= SCALE_FACTOR_TO_LONG;
-
- for (i = 0; i < len2; i++) {
- FASTFLOAT s = *floats++ * scale;
- /* round down, e.g. -4.5 => -5: */
- if (s > 0) {
- if (s > max_sample) max_sample = s;
- s += 0.5;
- } else {
- if (-s > max_sample) max_sample = -s;
- s -= 0.5;
- }
- *longs++ = (long) s;
- }
- *peak = (float) (max_sample / SCALE_FACTOR_TO_LONG);
- return len2;
-}
-
-
-cvtfn_type cvt_from_8[] = { cvt_from_unknown, cvt_from_pcm_8, cvt_from_ulaw_8, cvt_from_alaw_8, cvt_from_unknown, cvt_from_upcm_8, cvt_from_unknown };
-
-cvtfn_type cvt_from_16[] = { cvt_from_unknown, cvt_from_pcm_16, cvt_from_unknown, cvt_from_unknown, cvt_from_unknown, cvt_from_unknown, cvt_from_unknown };
-
-cvtfn_type cvt_from_32[] = { cvt_from_unknown, cvt_from_pcm_32, cvt_from_unknown, cvt_from_unknown, cvt_from_float_32, cvt_from_unknown, cvt_from_unknown };
-
-cvtfn_type cvt_to_8[] = { cvt_to_unknown, cvt_to_pcm_8, cvt_to_ulaw_8, cvt_to_alaw_8, cvt_to_unknown, cvt_to_upcm_8, cvt_to_unknown };
-
-cvtfn_type cvt_to_16[] = { cvt_to_unknown, cvt_to_pcm_16, cvt_to_unknown, cvt_to_unknown, cvt_to_unknown, cvt_to_upcm_16, cvt_to_unknown };
-
-cvtfn_type cvt_to_32[] = { cvt_to_unknown, cvt_to_pcm_32, cvt_to_unknown, cvt_to_unknown, cvt_to_float_32, cvt_to_upcm_32, cvt_to_unknown };
-
-
-/* select_cvtfn -- find conversion from snd2 to snd1 */
-/*
- * conversion is based on bits and mode (channels and srate
- * are ignored). Either snd1 or snd2 must be of SND_MODE_FLOAT.
- */
-cvtfn_type select_cvtfn(snd_type snd1, snd_type snd2)
-{
- long mode1 = snd1->format.mode;
- long mode2 = snd2->format.mode;
- if (mode1 == SND_MODE_FLOAT) {
- long bits2 = snd2->format.bits;
- /* convert_from functions */
- if (bits2 == 8) return cvt_from_8[mode2];
- else if (bits2 == 16) return cvt_from_16[mode2];
- else if (bits2 == 32) return cvt_from_32[mode2];
- else return &cvt_from_unknown;
- } else if (mode2 == SND_MODE_FLOAT) {
- long bits1 = snd1->format.bits;
- /* convert_to functions */
- if (bits1 == 8) return cvt_to_8[mode1];
- else if (bits1 == 16) return cvt_to_16[mode1];
- else if (bits1 == 32) return cvt_to_32[mode1];
- else return &cvt_to_unknown;
- } else return &cvt_from_unknown;
-}
diff --git a/lib-src/libnyquist/snd/sndfaillinux.c b/lib-src/libnyquist/snd/sndfaillinux.c
deleted file mode 100644
index 91ba43f..0000000
--- a/lib-src/libnyquist/snd/sndfaillinux.c
+++ /dev/null
@@ -1,13 +0,0 @@
-/* sndfaillinux.c -- version of sndfail that prints a message */
-
-/* this should not be compiled into an snd library! handling snd_fail
- * is application specific
- */
-
-#include "stdio.h"
-
-void snd_fail(char *msg)
-{
- printf("ERROR: %s\n", msg);
-}
-
diff --git a/lib-src/libnyquist/snd/sndfailwin32.c b/lib-src/libnyquist/snd/sndfailwin32.c
deleted file mode 100644
index 2021644..0000000
--- a/lib-src/libnyquist/snd/sndfailwin32.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* sndfailwin32.c -- version of sndfail that puts up a message box */
-
-/* this should not be compiled into an snd library! handling snd_fail
- * is application specific
- */
-
-#include <windows.h>
-
-
-void snd_fail(char *msg)
-{
- MessageBox(0, msg, 0, 0);
- exit(1);
-}
-
-
-void snd_warn(char *msg)
-{
- MessageBox(0, msg, 0, MB_OK);
-}
diff --git a/lib-src/libnyquist/snd/sndfileio.h b/lib-src/libnyquist/snd/sndfileio.h
deleted file mode 100644
index cd70dc6..0000000
--- a/lib-src/libnyquist/snd/sndfileio.h
+++ /dev/null
@@ -1,16 +0,0 @@
-/* sndfileio.h -- defines system-independent file IO */
-
-#define SND_SEEK_CUR 1
-#define SND_SEEK_END 2
-#define SND_SEEK_SET 0
-
-#define SND_RDONLY 0
-#define SND_RDWR 2
-
-int snd_file_open(char *fname, int mode);
-int snd_file_creat(char *fname);
-int snd_file_lseek(int file, long offset, int param);
-long snd_file_read(int fp, char *data, long len);
-long snd_file_write(int fp, char *data, long len);
-int snd_file_close(int fp);
-long snd_file_len(int fp);
diff --git a/lib-src/libnyquist/snd/sndfreebsd.h b/lib-src/libnyquist/snd/sndfreebsd.h
deleted file mode 100644
index f1dfda3..0000000
--- a/lib-src/libnyquist/snd/sndfreebsd.h
+++ /dev/null
@@ -1,15 +0,0 @@
-/* sndfreebsd.h -- system-specific definitions */
-
-typedef double FASTFLOAT;
-typedef float MEMFLOAT;
-
-/* avoid conflicts if already defined: */
-#ifndef max
-
-/* min(n, sizeof(long)) doesn't work on RS6K without this:
- * (I never tracked down what min() was called and what was wrong.)
- */
-#define min(a, b) ((a) < (b) ? (a) : (b))
-#define max(a, b) ((a) > (b) ? (a) : (b))
-
-#endif
diff --git a/lib-src/libnyquist/snd/sndhead.h b/lib-src/libnyquist/snd/sndhead.h
deleted file mode 100644
index 8e1d9a2..0000000
--- a/lib-src/libnyquist/snd/sndhead.h
+++ /dev/null
@@ -1,60 +0,0 @@
-/* sndhead.h -- header info */
-
-/* NeXT sound headers */
-#define NEXT_SND_MAGIC (*((long *) ".snd")) // was: ((int)0x2e736e64)
-#define NEXT_SND_FORMAT_UNSPECIFIED (0)
-#define NEXT_SND_FORMAT_ULAW_8 (1)
-#define NEXT_SND_FORMAT_LINEAR_8 (2)
-#define NEXT_SND_FORMAT_LINEAR_16 (3)
-#define NEXT_SND_FORMAT_LINEAR_24 (4)
-#define NEXT_SND_FORMAT_LINEAR_32 (5)
-#define NEXT_SND_FORMAT_FLOAT (6)
-#define NEXT_SND_FORMAT_DOUBLE (7)
-#define NEXT_SND_FORMAT_INDIRECT (8)
-#define NEXT_SND_FORMAT_NESTED (9)
-#define NEXT_SND_FORMAT_DSP_CORE (10)
-#define NEXT_SND_FORMAT_DSP_DATA_8 (11)
-#define NEXT_SND_FORMAT_DSP_DATA_16 (12)
-#define NEXT_SND_FORMAT_DSP_DATA_24 (13)
-#define NEXT_SND_FORMAT_DSP_DATA_32 (14)
-#define NEXT_SND_FORMAT_DISPLAY (16)
-#define NEXT_SND_FORMAT_MULAW_SQUELCH (17)
-#define NEXT_SND_FORMAT_EMPHASIZED (18)
-#define NEXT_SND_FORMAT_COMPRESSED (19)
-#define NEXT_SND_FORMAT_COMPRESSED_EMPHASIZED (20)
-#define NEXT_SND_FORMAT_DSP_COMMANDS (21)
-#define NEXT_SND_FORMAT_DSP_COMMANDS_SAMPLES (22)
-
-/* for soundheaders (IRCAM) */
-#define IRCAM_SND_MAGIC 107364L
-#define SIZEOF_IRCAM_HEADER 1024
-#define IRCAM_SND_CHAR 0x101
-#define IRCAM_SND_ALAW 0x102
-#define IRCAM_SND_ULAW 0x103
-#define IRCAM_SND_SHORT 0x104
-#define IRCAM_SND_LONG 0x105
-#define IRCAM_SND_FLOAT 0x106
-#define IRCAM_SND_END 0
-#define IRCAM_SND_MAXAMP 1
-#define IRCAM_SND_AUDIOENCODE 2
-#define IRCAM_SND_PVDATA 3
-#define IRCAM_SND_COMMENT 4
-#define IRCAM_SND_CODMAX 4
-
-/* (Microsoft WAV sound headers */
-/* purloined from public Microsoft RIFF docs */
-
-#define WAVE_FORMAT_UNKNOWN (0x0000)
-#ifndef WIN32
-// already defined (compatibly) by Microsoft header file:
-#define WAVE_FORMAT_PCM (0x0001)
-#endif
-#define WAVE_FORMAT_ADPCM (0x0002)
-#define WAVE_FORMAT_ALAW (0x0006)
-#define WAVE_FORMAT_MULAW (0x0007)
-#define WAVE_FORMAT_OKI_ADPCM (0x0010)
-#define WAVE_FORMAT_DIGISTD (0x0015)
-#define WAVE_FORMAT_DIGIFIX (0x0016)
-#define IBM_FORMAT_MULAW (0x0101)
-#define IBM_FORMAT_ALAW (0x0102)
-#define IBM_FORMAT_ADPCM (0x0103)
diff --git a/lib-src/libnyquist/snd/sndheader.c b/lib-src/libnyquist/snd/sndheader.c
deleted file mode 100644
index 8b54809..0000000
--- a/lib-src/libnyquist/snd/sndheader.c
+++ /dev/null
@@ -1,1099 +0,0 @@
-/* snd.c -- low-level sound I/O
- *
- * Roger Dannenberg
- * 21 Jun 1997
- *
- * based on sndheader.c:
- *
- * Jim Zelenka, CMU/ITC, 9 Jun 1992 (rewritten from my old sources)
- * Roger Dannenberg, CMU, Mar 1993 (extensive changes and additions)
- *
- * and on sndread.c & sndwrite.c:
- *
- * Roger Dannenberg
- */
-
-/* Standard includes */
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-
-#include "snd.h"
-#include "sndfileio.h"
-#include "sndheader.h"
-#include "ieeecvt.h"
-#include "sndhead.h"
-/* for HUGE_VAL: */
-#include "math.h"
-
-/* #define TRACE 1 */
-
-#ifdef LINUX
-# ifdef WIN32
-# error LINUX and WIN32 both?
-# endif
-// # include "sys/file.h"
-// # include <sys/stat.h>
-# include <netinet/in.h>
-#else
-#ifndef WIN32
-# include <unistd.h>
-// # include <stat.h>
-// # include <fcntl.h>
-#else
-// # include <sys/stat.h>
-// # include "io.h"
-// # include "fcntl.h"
-# ifdef WINNT
-# include <winsock.h>
-# else
-# include <winsock2.h>
-# endif
-#endif
-
-#endif
-
-
-#ifndef min
-#define min(a, b) ((a) < (b) ? (a) : (b))
-#endif
-
-
-#define PERMISSION 0644 /* -rw-r--r-- */
-
-/* these macros are for byte ordering --
- * doesn't the mac have std macros for this?
- */
-
-/* u_long PASCAL FAR ntohl(u_long netlong); */
-
-#ifdef MACINTOSH
-#define ntohs(x) (x)
-#define ntohl(x) (x)
-#define htons(x) (x)
-#define htonl(x) (x)
-#endif
-
-/* AIFF file Marker declaration */
-typedef struct {
- short id;
- long position;
-} marker_node, *marker_type;
-
-/* instrument definitions */
-typedef short marker_id;
-typedef struct {
- short play_mode;
- marker_id begin_loop;
- marker_id end_loop;
-} aiff_loop_node, *aiff_loop_type;
-
-
-typedef struct {
- char base_note;
- char detune;
- char low_note;
- char high_note;
- char low_velocity;
- char high_velocity;
- short gain;
- aiff_loop_node sustain_loop;
- aiff_loop_node release_loop;
-} inst_node;
-
-
-long snd_read_header(snd_type snd, long *flags);
-void snd_write_header(snd_type snd, long *flags);
-
-double read_ieee_extended(snd_type snd);
-void write_ieee_extended(int file, double x);
-void ConvertToIeeeExtended(double num, char *bytes);
-
-/*
- * reset the file to read from the beginning
- */
-
-void resetfile(int file)
-{
- snd_file_lseek(file, 0, SND_SEEK_SET);
-}
-
-
-/*
- * reads a an item of type T from F into L, if unsuccessful,
- * resets file to beginning and returns
- */
-#define readitem(F,L,T) { \
- int r; \
- r = snd_file_read(F, (char *) L,sizeof(T)); \
- if (r != sizeof(T)) { resetfile(file); return *(L); } \
- *read_in += sizeof(T); \
-}
-
-
-char readchar(int file, long *read_in)
-{
- char c = 0;
- readitem(file, &c, char);
- return c;
-}
-
-
-long readlong(int file, long *read_in)
-{
- long l = 0;
- readitem(file, &l, long);
- return ntohl(l);
-}
-
-
-short readshort(int file, long *read_in)
-{
- short s = 0;
- readitem(file, &s, short);
- return ntohs(s);
-}
-
-
-long revlong(long l)
-{
- return (((l >> 0) & 0xFF) << 24) |
- (((l >> 8) & 0xFF) << 16) |
- (((l >> 16) & 0xFF) << 8) |
- (((l >> 24) & 0xFF) << 0);
-}
-
-
-long readrevlong(int file, long *read_in)
-{
- return revlong(readlong(file, read_in));
-}
-
-
-short revshort(short s)
-{
- return ((s & 0xFF) << 8) | ((s >> 8) & 0xFF);
-}
-
-
-short readrevshort(int file, long *read_in)
-{
- return revshort(readshort(file, read_in));
-}
-
-
-float readfloat(int file, long *read_in)
-{
- float f = 0.0F;
- readitem(file, &f, float);
- return f;
-}
-
-unsigned char readuchar(int file, long *read_in)
-{
- unsigned char c = 0;
- readitem(file, &c, unsigned char);
- return c;
-}
-
-
-/*
- * write a an item of type T to F from L (no error handling yet)
- */
-#define writeitem(F,L,T) snd_file_write(F, (char *) L, sizeof(T));
-
-
-void writelong(int file, long l)
-{
- l = htonl(l);
- writeitem(file, &l, long);
-}
-
-void writeshort(int file, short s)
-{
- s = htons(s);
- writeitem(file, &s, short);
-}
-
-void writerevlong(int file, long l)
-{
- writelong(file, revlong(l));
-}
-
-
-void writerevshort(int file, short s)
-{
- writeshort(file, revshort(s));
-}
-
-
-void writefloat(int file, float f)
-{
- writeitem(file, &f, float);
-}
-
-
-void writeuchar(int file, unsigned char c)
-{
- writeitem(file, &c, unsigned char);
-}
-
-
-static int fail(snd_type snd, char *str)
-{
- resetfile(snd->u.file.file);
- snd->u.file.header = SND_HEAD_NONE;
- snd_fail(str);
- return !SND_SUCCESS;
-}
-
-
-void snd_open_fail(snd_type snd)
-{
- /* char msg[250]; */
- snd->device = SND_DEVICE_NONE;
- snd->dictionary = &snd_none_dictionary;
- /* It's not fatal if the file does not exist...
- sprintf(msg, "snd_open: could not open file %s\n",
- snd->u.file.filename);
- snd_fail(msg); */
- return;
-}
-
-
-int head_to_byteorder[] = { 0, 1, 1, 1, 0 };
-
-/* set_swap -- set the swap flag in snd */
-/**/
-void set_swap(snd_type snd)
-{
- int n = head_to_byteorder[snd->u.file.header];
- if (snd->u.file.header == SND_HEAD_NONE) {
- /* go with whatever caller specified */
- } else if (htonl(0x12345678) == 0x12345678)
- snd->u.file.swap = !n;
- else snd->u.file.swap = n;
-}
-
-int snd_open_file(snd_type snd, long *flags)
-{
- int file, rslt;
- if (snd->write_flag == SND_READ) {
- snd->u.file.loop_info = FALSE;
- file = snd_file_open(snd->u.file.filename, SND_RDONLY);
- snd->u.file.file = file;
- if (file < 0) {
- snd_open_fail(snd);
- return file;
- }
- rslt = snd_read_header(snd, flags);
- set_swap(snd);
- return rslt;
- } else if (snd->write_flag == SND_WRITE) {
- if (snd->u.file.header < 0 || snd->u.file.header >= SND_NUM_HEADS) {
- snd_fail("snd_open: invalid header value");
- return !SND_SUCCESS;
- }
- file = snd_file_creat(snd->u.file.filename);
- snd->u.file.file = file;
- if (file < 0) {
- snd_open_fail(snd);
- return file;
- }
- /* special case: in WAV files, 8-bit PCM is stored as UPCM */
- if (snd->u.file.header == SND_HEAD_WAVE &&
- snd->format.mode == SND_MODE_PCM &&
- snd->format.bits == 8) {
- snd->format.mode = SND_MODE_UPCM;
- }
- snd_write_header(snd, flags);
- } else if (snd->write_flag == SND_OVERWRITE) {
- file = snd_file_open(snd->u.file.filename, SND_RDWR);
- snd->u.file.file = file;
- if (file < 0) {
- snd_open_fail(snd);
- return file;
- }
- snd_file_lseek(file, snd->u.file.byte_offset, SND_SEEK_SET);
- snd->u.file.current_offset = snd->u.file.byte_offset;
- /* special case: in WAV files, 8-bit PCM is stored as UPCM */
- if (snd->u.file.header == SND_HEAD_WAVE &&
- snd->format.mode == SND_MODE_PCM &&
- snd->format.bits == 8) {
- snd->format.mode = SND_MODE_UPCM;
- }
- }
- set_swap(snd);
- return SND_SUCCESS;
-}
-
-
-int snd_seek(snd_type snd, double when)
-{
- long offset_in_bytes = ((long) (when * snd->format.srate + 0.5)) *
- snd_bytes_per_frame(snd);
- long new_offset = snd->u.file.byte_offset + offset_in_bytes;
-
- if (new_offset > snd->u.file.end_offset) return !SND_SUCCESS;
- if (new_offset < snd->u.file.byte_offset) return !SND_SUCCESS;
- snd->u.file.current_offset = new_offset;
- if (snd_file_lseek(snd->u.file.file, new_offset, SND_SEEK_SET) == -1L)
- return !SND_SUCCESS;
- return SND_SUCCESS;
-}
-
-void readloop(aiff_loop_type loop, int file, long *read_in)
-{
- loop->play_mode = readshort(file, read_in);
- loop->begin_loop = readshort(file, read_in);
- loop->end_loop = readshort(file, read_in);
-}
-
-
-/* convert_loop_data -- from AIFF loop structure to snd loop structure */
-/**/
-void convert_loop_data(loop_type loop, aiff_loop_type aiffloop,
- marker_type markers, int nmarkers)
-{
- int i;
-
- loop->mode = aiffloop->play_mode;
-
- loop->begin = loop->end = -1; /* initialize to illegal value */
- for (i = 0; i < nmarkers; i++) {
- if (aiffloop->begin_loop == markers[i].id) {
- loop->begin = markers[i].position;
- }
- if (aiffloop->end_loop == markers[i].id) {
- loop->end = markers[i].position;
- }
- }
-}
-
-
-static double StepToHz(double step)
-{
- return exp(step * 0.0577622650466621 + 2.1011784386926213);
-}
-
-
-#define AIFF_SND_MAGIC (*((long *) "FORM"))
-#define WAVE_SND_MAGIC (*((long *) "RIFF"))
-
-long snd_read_header(snd_type snd, long *flags)
-{
- long read_in = 0;
- long magic, bytemode, len;
- short type=IRCAM_SND_COMMENT, size=0, encoding;
- unsigned char buf[SIZEOF_IRCAM_HEADER];
-
- snd->u.file.loop_info = FALSE;
- len = snd_file_len(snd->u.file.file); /* get length of file */
- magic = readlong(snd->u.file.file, &read_in);
- magic = htonl(magic); /* undo what readlong did */
- if (magic == IRCAM_SND_MAGIC) {
- snd->u.file.header = SND_HEAD_IRCAM;
- snd->format.srate = (double) readfloat(snd->u.file.file, &read_in);
- snd->format.channels = readlong(snd->u.file.file, &read_in);
- bytemode = readlong(snd->u.file.file, &read_in);
- (*flags) |= SND_HEAD_SRATE | SND_HEAD_CHANNELS;
- /* now SF_ULAW, SF_SHORT, SF_FLOAT,AE_CHAR, AE_ALAW, AE_ULAW, AE_SHORT, AE_LONG, AE_FLOAT or other */
- while (type != IRCAM_SND_END && type != IRCAM_SND_AUDIOENCODE) {
- type = readshort(snd->u.file.file, &read_in);
- size = readshort(snd->u.file.file, &read_in);
- if (size > 2 * sizeof(short)) {
- int rc;
- /* make sure we don't overflow buffer */
- if (size < SIZEOF_IRCAM_HEADER) {
- rc = snd_file_read(snd->u.file.file, (char *) buf, (size - 2 * sizeof(short)));
- } else {
- rc = 0; /* force error */
- }
- if (rc != (size - 2 * (int) sizeof(short))) {
- return fail(snd, "bad IRCAM header");
- }
- read_in += size - 2 * sizeof(short);
- }
- }
- if (type == IRCAM_SND_AUDIOENCODE) {
- /* printf("Got IRCAM sound format\n"); */
- encoding = *((short *)(buf));
- (*flags) |= SND_HEAD_MODE | SND_HEAD_BITS;
- switch (encoding) {
- case IRCAM_SND_CHAR:
- snd->format.mode = SND_MODE_PCM;
- snd->format.bits = 8;
- break;
- case IRCAM_SND_ALAW:
- snd->format.mode = SND_MODE_ALAW;
- snd->format.bits = 8;
- break;
- case IRCAM_SND_ULAW:
- snd->format.mode = SND_MODE_ULAW;
- snd->format.bits = 8;
- break;
- case IRCAM_SND_SHORT:
- snd->format.mode = SND_MODE_PCM;
- snd->format.bits = 16;
- break;
- case IRCAM_SND_LONG:
- snd->format.mode = SND_MODE_PCM;
- snd->format.bits = 32;
- break;
- case IRCAM_SND_FLOAT:
- snd->format.mode = SND_MODE_FLOAT;
- snd->format.bits = 32;
- break;
- default:
- (*flags) &= ~(SND_HEAD_MODE | SND_HEAD_BITS);
- break;
- }
- } else {
- snd->format.bits = bytemode << 3;
- (*flags) |= SND_HEAD_BITS;
- switch (bytemode) {
- case sizeof(char):
- (*flags) |= SND_HEAD_MODE;
- snd->format.mode = SND_MODE_ULAW;
- break;
- case sizeof(short):
- snd->format.mode = SND_MODE_PCM;
- break;
- case sizeof(float):
- snd->format.mode = SND_MODE_FLOAT;
- break;
- default:
- snd->format.mode = SND_MODE_PCM;
- break;
- }
- }
-
- /* seek to end of header */
- snd_file_lseek(snd->u.file.file, SIZEOF_IRCAM_HEADER, SND_SEEK_SET);
- snd->u.file.byte_offset = SIZEOF_IRCAM_HEADER;
- snd->u.file.current_offset = snd->u.file.byte_offset;
-
- } else if (magic == NEXT_SND_MAGIC) {
- long hdr_size, trash, rate;
- snd->u.file.header = SND_HEAD_NEXT;
- hdr_size = readlong(snd->u.file.file, &read_in); /* dataLocation */
- trash = readlong(snd->u.file.file, &read_in); /* dataSize */
- bytemode = readlong(snd->u.file.file, &read_in); /* dataFormat */
- rate = readlong(snd->u.file.file, &read_in); /* samplingRate */
- snd->format.channels = readlong(snd->u.file.file, &read_in); /* channelCount */
-
- snd->format.srate = (double) rate;
- (*flags) = SND_HEAD_SRATE | SND_HEAD_CHANNELS;
- switch (bytemode) {
- case NEXT_SND_FORMAT_ULAW_8:
- snd->format.bits = 8;
- snd->format.mode = SND_MODE_ULAW;
- (*flags) |= SND_HEAD_BITS | SND_HEAD_MODE;
- break;
- case NEXT_SND_FORMAT_LINEAR_8:
- snd->format.bits = 8;
- snd->format.mode = SND_MODE_PCM;
- (*flags) |= SND_HEAD_BITS | SND_HEAD_MODE;
- break;
- case NEXT_SND_FORMAT_LINEAR_16:
- snd->format.bits = 16;
- snd->format.mode = SND_MODE_PCM;
- (*flags) |= SND_HEAD_BITS | SND_HEAD_MODE;
- break;
- case NEXT_SND_FORMAT_LINEAR_24:
- snd->format.bits = 24;
- snd->format.mode = SND_MODE_PCM;
- (*flags) |= SND_HEAD_BITS | SND_HEAD_MODE;
- break;
- case NEXT_SND_FORMAT_LINEAR_32:
- snd->format.bits = 32;
- snd->format.mode = SND_MODE_PCM;
- (*flags) |= SND_HEAD_BITS |SND_HEAD_MODE;
- break;
- case NEXT_SND_FORMAT_FLOAT:
- snd->format.bits = sizeof(float) * 8;
- snd->format.mode = SND_MODE_FLOAT;
- (*flags) |= SND_HEAD_BITS | SND_HEAD_MODE;
- break;
- case NEXT_SND_FORMAT_DOUBLE:
- snd->format.bits = sizeof(double) * 8;
- snd->format.mode = SND_MODE_FLOAT;
- (*flags) |= SND_HEAD_BITS | SND_HEAD_MODE;
- break;
- case NEXT_SND_FORMAT_INDIRECT:
- break;
- case NEXT_SND_FORMAT_DSP_DATA_8:
- snd->format.bits = 8;
- (*flags) |= SND_HEAD_BITS;
- break;
- case NEXT_SND_FORMAT_DSP_DATA_16:
- snd->format.bits = 16;
- (*flags) |= SND_HEAD_BITS;
- break;
- case NEXT_SND_FORMAT_DSP_DATA_24:
- snd->format.bits = 24;
- (*flags) |= SND_HEAD_BITS;
- break;
- case NEXT_SND_FORMAT_DSP_DATA_32:
- snd->format.bits = 32;
- (*flags) |= SND_HEAD_BITS;
- break;
- case NEXT_SND_FORMAT_MULAW_SQUELCH:
- snd->format.mode = SND_MODE_ULAW;
- (*flags) |= SND_HEAD_MODE;
- break;
- default:
- break;
- }
- /* position file past header */
- if (read_in < hdr_size) {
- snd_file_lseek(snd->u.file.file, hdr_size, SND_SEEK_SET);
- read_in = hdr_size;
- }
- snd->u.file.byte_offset = read_in;
- } else if (magic == AIFF_SND_MAGIC) {
- unsigned long totalsize;
- unsigned long ssnd_start = 0;
- char buf[4];
- long blocksize;
- long offset;
- long chunksize;
- long ssnd_chunksize;
- inst_node inst;
- short nmarkers;
- marker_type markers = NULL;
- int inst_read = FALSE;
-
- snd->u.file.header = SND_HEAD_AIFF;
- totalsize = (unsigned long) readlong(snd->u.file.file, &read_in);
- if (snd_file_read(snd->u.file.file, buf, 4) != 4 || strncmp(buf, "AIFF", 4) != 0) {
- snd->u.file.header = SND_HEAD_NONE;
- (*flags) = 0;
- resetfile(snd->u.file.file);
- read_in = 0;
- } else {
-#ifdef TRACE
- printf("snd_read: 'AIFF', totalsize %d, at %d\n",
- totalsize, snd_file_lseek(snd->u.file.file, (off_t) 0, SND_SEEK_CUR) - 8);
-#endif
- /* Skip everything but the COMM, MARK, INST, and SSND chunks, */
-
- while (1) {
- if (snd_file_read(snd->u.file.file, buf, 4) != 4) {
- if (ssnd_start != 0) break; /* found SSND chunk */
- return fail(snd, "Missing SSND chunk in AIFF file\n");
- }
-#ifdef TRACE
- printf("snd_read: '%c%c%c%c' at %d (0%o)\n",
- buf[0], buf[1], buf[2], buf[3],
- snd_file_lseek(snd->u.file.file, (off_t) 0, SND_SEEK_CUR) - 8,
- snd_file_lseek(snd->u.file.file, (off_t) 0, SND_SEEK_CUR) - 8);
-#endif
- if (strncmp(buf, "COMM", 4) == 0) {
- /* COMM chunk */
- long chunksize;
- long frames;
- chunksize = readlong(snd->u.file.file, &read_in);
- if (chunksize != 18) {
- return fail(snd, "AIFF COMM chunk has bad size\n");
- }
- snd->format.channels = (long) readshort(snd->u.file.file, &read_in);
- frames = readlong(snd->u.file.file, &read_in);
- snd->format.bits = readshort(snd->u.file.file, &read_in);
- snd->format.mode = SND_MODE_PCM;
- snd->format.srate = read_ieee_extended(snd);
- snd->u.file.end_offset = frames * snd_bytes_per_frame(snd) +
- read_in;
- (*flags) = SND_HEAD_MODE | SND_HEAD_BITS | SND_HEAD_SRATE |
- SND_HEAD_CHANNELS | SND_HEAD_LEN;
- } else if (strncmp(buf, "SSND", 4) == 0) {
- /* SSND chunk */
- ssnd_chunksize = readlong(snd->u.file.file, &read_in);
- offset = readlong(snd->u.file.file, &read_in);
- blocksize = readlong(snd->u.file.file, &read_in);
- /* remember the file offset, there may be more chunks */
- ssnd_start = snd_file_lseek(snd->u.file.file, 0, SND_SEEK_CUR);
- chunksize = ssnd_chunksize;
- if (chunksize & 1) chunksize++; /* round up to even number */
- /* subtract 8, size of offset and blocksize: */
- snd_file_lseek(snd->u.file.file, chunksize - 8, SND_SEEK_CUR);
- read_in += chunksize - 8;
- } else if (strncmp(buf, "MARK", 4) == 0) {
- long chunksize = readlong(snd->u.file.file, &read_in);
- int i;
-
- nmarkers = readshort(snd->u.file.file, &read_in);
- markers = (marker_type) snd_alloc(nmarkers * sizeof(marker_node));
- for (i = 0; i < nmarkers; i++) {
- unsigned char label[256];
- int len;
- markers[i].id = readshort(snd->u.file.file, &read_in);
- markers[i].position = readlong(snd->u.file.file, &read_in);
- if (snd_file_read(snd->u.file.file, (char *) label, 1L) != 1)
- return fail(snd, "problem reading AIFF file\n");
- len = label[0] | 1;
- if (snd_file_read(snd->u.file.file, (char *) label, (long) len) != len)
- return fail(snd, "problam reading AIFF file\n");
- }
- } else if (strncmp(buf, "INST", 4) == 0) {
- chunksize = readlong(snd->u.file.file, &read_in);
- inst.base_note = readchar(snd->u.file.file, &read_in);
- inst.detune = readchar(snd->u.file.file, &read_in);
- inst.low_note = readchar(snd->u.file.file, &read_in);
- inst.high_note = readchar(snd->u.file.file, &read_in);
- inst.low_velocity = readchar(snd->u.file.file, &read_in);
- inst.high_velocity = readchar(snd->u.file.file, &read_in);
- inst.gain = readshort(snd->u.file.file, &read_in);
- readloop(&inst.sustain_loop, snd->u.file.file, &read_in);
- readloop(&inst.release_loop, snd->u.file.file, &read_in);
-
- /* compute some properties from inst structure:
- * (marker chunk may not be read in yet, so do that later
- */
-
- /* snd should have a StepToHz function, but it doesn't */
- snd->u.file.native_hz = StepToHz(inst.base_note +
- inst.detune/100.0);
- /* the constant is to convert from db */
- snd->u.file.gain = (float) exp(((double) inst.gain) * 0.11512925);
- snd->u.file.low_hz = StepToHz(inst.low_note);
- snd->u.file.high_hz = StepToHz(inst.high_note);
- snd->u.file.low_velocity = inst.low_velocity;
- snd->u.file.high_velocity = inst.high_velocity;
- inst_read = TRUE;
- } else {
- long chunksize = readlong(snd->u.file.file, &read_in);
- if (chunksize & 1) chunksize ++; /* round up to even number */
- read_in += chunksize;
- /* skip the chunk */
- snd_file_lseek(snd->u.file.file, chunksize, SND_SEEK_CUR);
- }
- }
-
- snd_file_lseek(snd->u.file.file, ssnd_start, SND_SEEK_SET);
- /* now we're positioned back at SSND chunk samples */
- if (blocksize != 0) {
- return fail(snd, "AIFF header specifies nonzero blocksize.");
- }
- if (markers && inst_read) {
- convert_loop_data(&snd->u.file.sustain_loop, &inst.sustain_loop,
- markers, nmarkers);
- convert_loop_data(&snd->u.file.release_loop, &inst.release_loop,
- markers, nmarkers);
- if (snd->u.file.native_hz <= 0.0) {
- return fail(snd, "Bad base pitch + detune in AIFF file");
- }
- if (snd->u.file.sustain_loop.mode < 0 ||
- snd->u.file.sustain_loop.mode > 3) {
- return fail(snd, "Bad sustain loop mode in AIFF file");
- }
- if (snd->u.file.sustain_loop.mode &&
- (snd->u.file.sustain_loop.begin < 0 ||
- snd->u.file.sustain_loop.end <=
- snd->u.file.sustain_loop.begin)) {
- return fail(snd, "Bad sustain loop in AIFF file");
- }
- if (snd->u.file.release_loop.mode < 0 ||
- snd->u.file.release_loop.mode > 3) {
- return fail(snd, "Bad release loop mode in AIFF file");
- }
- if (snd->u.file.release_loop.mode &&
- (snd->u.file.release_loop.begin < 0 ||
- snd->u.file.release_loop.end <=
- snd->u.file.release_loop.begin)) {
- return fail(snd, "Bad release loop in AIFF file");
- }
- snd->u.file.loop_info = TRUE;
- }
- if (markers) snd_free(markers);
- /* byte_offset is where the file pointer ends up after SND_SEEK_CUR */
- snd->u.file.byte_offset = snd_file_lseek(snd->u.file.file, offset, SND_SEEK_CUR);
- snd->u.file.current_offset = snd->u.file.byte_offset;
- snd->u.file.end_offset = snd->u.file.byte_offset + ssnd_chunksize - 8;
- }
- } else if (magic == WAVE_SND_MAGIC) {
- long size;
- char buf[4];
- short format;
-
- snd->u.file.header = SND_HEAD_WAVE;
- /* RIFF WAVE uses little-endian format -- be careful! */
- size = readrevlong(snd->u.file.file, &read_in);
- if (snd_file_read(snd->u.file.file, buf, 4) != 4 || strncmp(buf, "WAVE", 4) != 0) {
- return fail(snd,
- "RIFF file does not specify 'WAVE' as type\n");
- }
-
- /* Skip to the next "fmt " or end of file */
- while (1) {
- long siz;
- if (snd_file_read(snd->u.file.file, buf, 4) != 4) {
- return fail(snd, "WAVE file missing fmt spec");
- }
- if (strncmp("fmt ", buf, 4) == 0) break;
- siz = readrevlong(snd->u.file.file, &read_in);
- while (siz > 0) {
- snd_file_read(snd->u.file.file, buf, 1);
- siz--;
- }
- }
- size = readrevlong(snd->u.file.file, &read_in);
- format = readrevshort(snd->u.file.file, &read_in);
- switch (format) {
- case WAVE_FORMAT_UNKNOWN:
- return fail(snd, "file in Microsoft Official Unknown format");
- case WAVE_FORMAT_PCM:
- break;
- case WAVE_FORMAT_ADPCM:
- return fail(snd, "file in ADPCM format");
- case WAVE_FORMAT_ALAW:
- return fail(snd, "file in ALAW format");
- case WAVE_FORMAT_MULAW:
- return fail(snd, "file in ULAW format");
- case WAVE_FORMAT_OKI_ADPCM:
- return fail(snd, "file in OKI ADPCM format");
- case WAVE_FORMAT_DIGISTD:
- return fail(snd, "file in Digistd format");
- case WAVE_FORMAT_DIGIFIX:
- return fail(snd, "file in Digifix format");
- case IBM_FORMAT_MULAW:
- return fail(snd, "file in IBM U-law format");
- case IBM_FORMAT_ALAW:
- return fail(snd, "file in IBM A-law format");
- case IBM_FORMAT_ADPCM:
- return fail(snd, "file in IBM ADPCM format");
- default:
- return fail(snd, "file in unknown format");
- }
- snd->format.channels = readrevshort(snd->u.file.file, &read_in);
- snd->format.srate = (double) readrevlong(snd->u.file.file, &read_in);
- readrevlong(snd->u.file.file, &read_in); /* Average bytes/second */
- readrevshort(snd->u.file.file, &read_in); /* Block align */
- snd->format.bits = readrevshort(snd->u.file.file, &read_in);
- snd->format.mode = SND_MODE_PCM;
- if (snd->format.bits == 8) snd->format.mode = SND_MODE_UPCM; /* unsigned */
- *flags = SND_HEAD_MODE | SND_HEAD_BITS | SND_HEAD_SRATE |
- SND_HEAD_CHANNELS | SND_HEAD_LEN;
- /* size is size of "fmt " section; we've read 16 bytes, so
- * advance file pointer over any remaining bytes
- */
- snd->u.file.byte_offset =
- snd_file_lseek(snd->u.file.file, size - 16, SND_SEEK_CUR);
- /* skip over any other forms until you find "data" */
- while (1) {
- long n = snd_file_read(snd->u.file.file, buf, 4);
- if (n != 4) {
- return fail(snd, "missing data portion");
- }
- if (strncmp("data", buf, 4) == 0) break;
- n = readrevlong(snd->u.file.file, &read_in); /* length of form */
- snd->u.file.byte_offset =
- snd_file_lseek(snd->u.file.file, n, SND_SEEK_CUR);
- }
- snd->u.file.byte_offset += 8; /* "data" and length use 8 bytes */
- snd->u.file.current_offset = snd->u.file.byte_offset;
- snd->u.file.end_offset = snd->u.file.byte_offset +
- readrevlong(snd->u.file.file, &read_in);
- } else {
- snd->u.file.header = SND_HEAD_NONE;
- (*flags) = 0;
- resetfile(snd->u.file.file);
- read_in = 0;
- }
-
- /* If not already determined from file header, assume remainder of file
- is sound data */
- if (!(*flags & SND_HEAD_LEN)) {
- snd->u.file.end_offset = snd->u.file.byte_offset = read_in;
- snd->u.file.current_offset = snd->u.file.byte_offset;
- snd->u.file.end_offset = len;
- *flags |= SND_HEAD_LEN;
- }
- return SND_SUCCESS;
-}
-
-
-/* write_zeros -- add zeros to end of file */
-/**/
-void write_zeros(int fout, long n)
-{
- long zero = 0;
- while (n > 0) {
- /* don't put min() in the arg list of write on an RS6K */
- /* there seems to be a compiler bug */
- long len = min(n, sizeof(long));
- snd_file_write(fout, (char *) &zero, len);
- n -= sizeof(long);
- }
-}
-
-
-/* write_ircam_start -- write an IRCAM header at current file position */
-/*
- * length is the total length of the header to be written; this is normally
- * SIZEOF_IRCAM_HEADER, but in the case of the hybrid CMIX headers, length
- * will be shorter to accommodate the NeXT header prefix
- */
-void write_ircam_start(snd_type snd, long length)
-{
- short encoding;
-
- writelong(snd->u.file.file, IRCAM_SND_MAGIC);
- writefloat(snd->u.file.file, (float) snd->format.srate);
- writelong(snd->u.file.file, snd->format.channels);
- writelong(snd->u.file.file, snd->format.bits >> 3);
- /* now write the "CODE" section */
- writeshort(snd->u.file.file, IRCAM_SND_AUDIOENCODE);
- writeshort(snd->u.file.file, 3 * sizeof(short)); /* size of this record */
- if (snd->format.bits == 8) {
- encoding = IRCAM_SND_CHAR;
- if (snd->format.mode == SND_MODE_ULAW) encoding = IRCAM_SND_ULAW;
- if (snd->format.mode == SND_MODE_ALAW) {
- snd_warn("ALAW not implemented, writing 8-bit PCM\n");
- }
- } else if (snd->format.bits == 16) {
- encoding = IRCAM_SND_SHORT;
- } else if (snd->format.bits == 32) {
- encoding = IRCAM_SND_FLOAT;
- if (snd->format.mode == SND_MODE_PCM) encoding = IRCAM_SND_LONG;
- }
- writeshort(snd->u.file.file, encoding);
-
- /* end the "CODE" section */
- writeshort(snd->u.file.file, IRCAM_SND_END);
- writeshort(snd->u.file.file, 2 * sizeof(short));
-
- /* write filler */
- length -= ( 16 /* head */ + 6 /* AudioEncode */ + 4 /* End */ );
-
- write_zeros(snd->u.file.file, length);
-}
-
-
-/* write_next_start -- write a NeXT header */
-/*
- * Note: uses length for Length field, but does not fill with zeros.
- * Instead, this routine writes only the NeXT 24 byte header.
- */
-void write_next_start(snd_type snd, long length)
-{
- short encoding;
-
- writelong(snd->u.file.file, NEXT_SND_MAGIC);
- /* header size matches cmix's bsd format */
- writelong(snd->u.file.file, length);
- writelong(snd->u.file.file, 0); /* data size, 0 -> unspecified */
- if (snd->format.bits == 8) {
- encoding = NEXT_SND_FORMAT_LINEAR_8;
- if (snd->format.mode == SND_MODE_ULAW)
- encoding = NEXT_SND_FORMAT_ULAW_8;
- if (snd->format.mode == SND_MODE_ALAW) {
- snd_warn("ALAW not implemented, writing 8-bit PCM\n");
- }
- } else if (snd->format.bits == 16) {
- encoding = NEXT_SND_FORMAT_LINEAR_16;
- } else if (snd->format.bits == 32) {
- encoding = NEXT_SND_FORMAT_FLOAT;
- if (snd->format.mode == SND_MODE_PCM)
- encoding = NEXT_SND_FORMAT_LINEAR_32;
- }
- writelong(snd->u.file.file, encoding);
- writelong(snd->u.file.file, (long) (snd->format.srate + 0.5));
- writelong(snd->u.file.file, snd->format.channels);
-}
-
-
-/* snd_write_header -- write header, position file for sample data */
-/**/
-void snd_write_header(snd_type snd, long *flags)
-{
- long nframes = 0x7f000000;
- long bytes_per_frame = snd_bytes_per_frame(snd);
-
- /* end_offset will keep track of how much data written so far */
- snd->u.file.end_offset = 0;
-
- switch (snd->u.file.header) {
- case SND_HEAD_NONE:
- break;
- case SND_HEAD_AIFF: {
- int hsize =
- 12 /* bytes at beginning */ +
- 8 /*COMM hdr*/ + 18 /*COMM chunk*/ +
- 8 /*SSND hdr*/ + 8 /*SSND chunk*/;
- if (snd->format.bits != 8 && snd->format.bits != 16) {
- char msg[64];
- sprintf(msg, "Warning: using 16 bits per sample instead of %d\n",
- snd->format.bits);
- snd_warn(msg);
- snd->format.bits = 16;
- bytes_per_frame = snd_bytes_per_frame(snd);
- }
- snd_file_write(snd->u.file.file, "FORM", 4); /* IFF header */
- /* (bogus) file size: */
- writelong(snd->u.file.file,
- hsize + nframes * bytes_per_frame);
- snd_file_write(snd->u.file.file, "AIFF", 4); /* File type */
-
- /* COMM chunk -- describes encoding (and #frames) */
- snd_file_write(snd->u.file.file, "COMM", 4);
- writelong(snd->u.file.file, 18); /* COMM chunk size */
- writeshort(snd->u.file.file, (short) snd->format.channels); /* nchannels */
- writelong(snd->u.file.file, nframes); /* number of frames */
- writeshort(snd->u.file.file, (short) snd->format.bits); /* sample width, in bits */
- write_ieee_extended(snd->u.file.file, snd->format.srate);
- /* SSND chunk -- describes data */
- snd_file_write(snd->u.file.file, "SSND", 4);
- writelong(snd->u.file.file,
- 8 + nframes * bytes_per_frame); /* chunk size */
- writelong(snd->u.file.file, 0); /* offset */
- writelong(snd->u.file.file, 0); /* block size */
- snd->u.file.byte_offset = hsize;
- /* printf("snd_write_header AIFF, byte_offset = %ld\n",
- snd_lseek(snd->u.file.file, (off_t) 0, SND_SEEK_CUR)); */
- break; }
- case SND_HEAD_IRCAM:
- write_ircam_start(snd, SIZEOF_IRCAM_HEADER);
- snd->u.file.byte_offset = SIZEOF_IRCAM_HEADER;
- break;
- case SND_HEAD_NEXT:
- /* for compatibility with CMIX, we will always write an IRCAM
- * header after the NeXT header, and use 1024 bytes of header.
- */
- write_next_start(snd, SIZEOF_IRCAM_HEADER);
- write_ircam_start(snd, SIZEOF_IRCAM_HEADER - 24);
- snd->u.file.byte_offset = SIZEOF_IRCAM_HEADER;
- break;
- case SND_HEAD_WAVE:
- snd_file_write(snd->u.file.file, "RIFF", 4);
- writerevlong(snd->u.file.file, 12+18+8 + nframes * bytes_per_frame);
- snd_file_write(snd->u.file.file, "WAVE", 4);
- snd_file_write(snd->u.file.file, "fmt ", 4);
- writerevlong(snd->u.file.file, 18L);
- switch (snd->format.mode) /* Format type */
- {
- case SND_MODE_ADPCM:
- writerevshort(snd->u.file.file, 2);
- break;
- case SND_MODE_PCM:
- case SND_MODE_UPCM:
- writerevshort(snd->u.file.file, 1);
- break;
- case SND_MODE_ULAW:
- writerevshort(snd->u.file.file, 7);
- break;
- case SND_MODE_ALAW:
- writerevshort(snd->u.file.file, 6);
- break;
- case SND_MODE_UNKNOWN:
- case SND_MODE_FLOAT:
- default:
- writerevshort(snd->u.file.file, 0);
- break;
- }
- writerevshort(snd->u.file.file, (short) snd->format.channels); /* Number of channels */
- writerevlong(snd->u.file.file, (long) (snd->format.srate + 0.5)); /* Samples per second */
- writerevlong(snd->u.file.file, (((long) snd->format.srate) * bytes_per_frame)); /* Bytes per second*/
- writerevshort(snd->u.file.file, (short) bytes_per_frame); /* Block alignment */
- writerevshort(snd->u.file.file, (short) snd->format.bits); /* Bits per sample */
- writerevshort(snd->u.file.file, (short) 0); /* Size of needed extra data */
- snd_file_write(snd->u.file.file, "data", 4);
- writerevlong(snd->u.file.file, (long) (nframes * bytes_per_frame));
- snd->u.file.byte_offset = 46;
- break;
- default:
- break;
- }
- snd->u.file.end_offset = snd->u.file.byte_offset;
-}
-
-
-void write_sndheader_finish(snd_type snd)
-{
- long n;
- switch (snd->u.file.header) {
- case SND_HEAD_NONE:
- break;
- case SND_HEAD_AIFF: {
- int hsize =
- 8 /*COMM hdr*/ + 18 /*COMM chunk*/ +
- 8 /*SSND hdr*/ + 12 /*SSND chunk*/;
- int datasize = snd->u.file.end_offset - hsize - 8;
-
- /* get the current position = file size */
- n = snd_file_lseek(snd->u.file.file, 0, SND_SEEK_CUR);
- if (n != snd->u.file.end_offset) {
- char str[80];
- sprintf(str,
- "Actual file size %ld does not match predicted size %ld\n",
- n, snd->u.file.end_offset);
- fail(snd, str);
- }
- /* write filesize in the header */
- snd_file_lseek(snd->u.file.file, 4, SND_SEEK_SET);
- writelong(snd->u.file.file, n - 8 /* 'FORM'+size do not count */);
-
- /* write number of frames in COMM chunk */
- snd_file_lseek(snd->u.file.file, (4 /* 'AIFF' */ + 4 /* 'COMM' */ +
- 4 /* size */ + 2 /* channels */),
- SND_SEEK_CUR);
- writelong(snd->u.file.file,
- (n - (hsize + 8)) / snd_bytes_per_frame(snd));
-
- /* write size in SSND chunk */
- snd_file_lseek(snd->u.file.file, (2 /* snd->format.bits */ +
- 10 /* sr */ + 4 /* 'SSND' */),
- SND_SEEK_CUR);
- writelong(snd->u.file.file, 8 + datasize); /* chunk size */
- break; }
- case SND_HEAD_IRCAM:
- break;
- case SND_HEAD_NEXT:
- break;
- case SND_HEAD_WAVE:
- /* get the current position = file size */
- n = snd_file_lseek(snd->u.file.file, 0, SND_SEEK_CUR);
- /* back to the top */
- snd_file_lseek(snd->u.file.file, 4, SND_SEEK_SET);
- writerevlong(snd->u.file.file, n - 8); /* file size - ['RIFF', len] */
- snd_file_lseek(snd->u.file.file, 42, SND_SEEK_SET);
- writerevlong(snd->u.file.file, n - 46); /* data size */
- break;
- default:
- break;
- }
-}
-
-
-double read_ieee_extended(snd_type snd)
-{
- unsigned char buf[10];
- if (snd_file_read(snd->u.file.file, (char *) buf, 10L) != 10)
- fail(snd, "EOF while reading IEEE extended number");
- return ConvertFromIeeeExtended(buf);
-}
-
-void write_ieee_extended(int file, double x)
-{
- char buf[10];
- ConvertToIeeeExtended(x, buf);
- /*
- report("converted %g to %o %o %o %o %o %o %o %o %o %o",
- x,
- buf[0], buf[1], buf[2], buf[3], buf[4],
- buf[5], buf[6], buf[7], buf[8], buf[9]);
- */
- snd_file_write(file, buf, 10);
-}
-
-
-
-
-char *mode_string[] = { "ADPCM", "PCM", "ULAW", "ALAW", "Float", "UPCM", "Unknown" };
-
-char *mode_to_string(long mode)
-{
- if (mode < 0 || mode >= SND_NUM_MODES) return "InvalidData";
- else return mode_string[mode];
-}
-
diff --git a/lib-src/libnyquist/snd/sndheader.h b/lib-src/libnyquist/snd/sndheader.h
deleted file mode 100644
index a08c638..0000000
--- a/lib-src/libnyquist/snd/sndheader.h
+++ /dev/null
@@ -1,5 +0,0 @@
-int snd_open_file(snd_type snd, long *flags);
-
-
-void write_sndheader_finish(snd_type snd);
-
diff --git a/lib-src/libnyquist/snd/sndio.c b/lib-src/libnyquist/snd/sndio.c
deleted file mode 100644
index 9cacd53..0000000
--- a/lib-src/libnyquist/snd/sndio.c
+++ /dev/null
@@ -1,47 +0,0 @@
-/* sndio.c -- read/write sound file data */
-
-/* CHANGELOG
- *
- * 29Jun95 RBD ULAW fixed problems with signed chars
- */
-
-/* Standard includes */
-#include "stdio.h"
-#include "memory.h"
-
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "snd.h"
-#ifdef LINUX
-#include "sys/file.h"
-#else
-/* #include <unistd.h> */
-#ifdef WIN32
-#include <sys/stat.h>
-#include "io.h"
-#elif defined(__FreeBSD__)
-#include <sys/stat.h>
-#else
-#endif
-#endif
-//#include "audio.h"
-
-/* was "#ifndef WIN32" */
-#if !defined(WIN32) && !defined(IRIX) && !defined(SGI)
-void _swab(char *to, char *from, long length)
-{
- short *to16 = (short *) to;
- short *from16 = (short *) from;
- int i = 1;
- while (i < length) {
- short data = *from16++;
- *to16++ = (data << 8) | ((data >> 8) & 0xFF);
- i += 2;
- }
-}
-#endif
-
-
-
-
diff --git a/lib-src/libnyquist/snd/sndlinux.c b/lib-src/libnyquist/snd/sndlinux.c
deleted file mode 100644
index 7cb4731..0000000
--- a/lib-src/libnyquist/snd/sndlinux.c
+++ /dev/null
@@ -1,82 +0,0 @@
-#include <fcntl.h>
-#include <stdio.h>
-#include <sys/stat.h>
-
-#include "snd.h"
-#include "sndfileio.h"
-
-#define PERMISSION 0644
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-// snd_fail moved to sndfaillinux.c -RBD
-
-int snd_file_open(char *fname, int mode)
-{
- int file;
- if (mode == SND_RDONLY)
- mode = O_RDONLY;
- else
- mode = O_RDWR;
-
- file = open(fname, mode);
- return file;
-}
-
-
-int snd_file_creat(char *fname)
-{
- int file = creat(fname, PERMISSION);
- return file;
-}
-
-
-long snd_file_len(int file)
-{
- long len;
- struct stat statbuf;
-
- fstat(file ,&statbuf);
- len = (long) statbuf.st_size; /* get length of file */
- return len;
-}
-
-
-long snd_file_read(int fp, char *data, long len)
-{
- return read(fp, data, len);
-}
-
-
-long snd_file_write(int fp, char *data, long len)
-{
- return write(fp, data, len);
-}
-
-
-int snd_file_close(int fp)
-{
- return close(fp);
-}
-
-
-int snd_file_lseek(int file, long offset, int param)
-{
- if (param == SND_SEEK_CUR) param = SEEK_CUR;
- else if (param == SND_SEEK_SET) param = SEEK_SET;
- else param = SEEK_END;
- return lseek(file, offset, param);
-}
-
-
-void *snd_alloc(size_t s) { return malloc(s); }
-
-
-void snd_free(void *a) { free(a); }
-
-#ifdef __cplusplus
-}
-#endif
-
diff --git a/lib-src/libnyquist/snd/sndlinux.h b/lib-src/libnyquist/snd/sndlinux.h
deleted file mode 100644
index bfe428d..0000000
--- a/lib-src/libnyquist/snd/sndlinux.h
+++ /dev/null
@@ -1,19 +0,0 @@
-/* sndlinux.h -- system-specific definitions */
-
-#ifndef LINUX
-#define LINUX
-#endif
-
-typedef double FASTFLOAT;
-typedef float MEMFLOAT;
-
-/* avoid conflicts if already defined: */
-#ifndef max
-
-/* min(n, sizeof(long)) doesn't work on RS6K without this:
- * (I never tracked down what min() was called and what was wrong.)
- */
-#define min(a, b) ((a) < (b) ? (a) : (b))
-#define max(a, b) ((a) > (b) ? (a) : (b))
-
-#endif
diff --git a/lib-src/libnyquist/snd/sndmac.c b/lib-src/libnyquist/snd/sndmac.c
deleted file mode 100644
index 19e68c6..0000000
--- a/lib-src/libnyquist/snd/sndmac.c
+++ /dev/null
@@ -1,75 +0,0 @@
-#include <stdio.h>
-
-#include "snd.h"
-#include "sndfileio.h"
-
-#ifdef __WXMAC__
-#include "wx/filefn.h"
-#endif
-
-
-int snd_file_open(char *fname, int mode)
-{
-#ifdef __WXMAC__
- return (int)fopen(wxUnix2MacFilename( fname ), mode==SND_RDONLY? "rb" : "r+b");
-#else
- return (int)fopen(fname, mode==SND_RDONLY? "rb" : "r+b");
-#endif
-}
-
-
-int snd_file_creat(char *fname)
-{
-#ifdef __WXMAC__
- return (int)fopen(wxUnix2MacFilename( fname ), "wb");
-#else
- return (int)fopen(fname, "wb");
-#endif
-}
-
-
-long snd_file_len(int file)
-{
- FILE *fp = (FILE *)file;
-
- long save = ftell(fp);
- long len;
- fseek(fp, 0, SEEK_END);
- len = ftell(fp);
- fseek(fp, save, SEEK_SET);
-
- return len;
-}
-
-
-long snd_file_read(int fp, char *data, long len)
-{
- return fread(data, 1, len, (FILE *)fp);
-}
-
-
-long snd_file_write(int fp, char *data, long len)
-{
- return fwrite(data, 1, len, (FILE *)fp);
-}
-
-
-int snd_file_close(int fp)
-{
- return fclose((FILE *)fp);
-}
-
-int snd_file_lseek(int file, long offset, int param)
-{
- if (param == SND_SEEK_CUR) param = SEEK_CUR;
- else if (param == SND_SEEK_SET) param = SEEK_SET;
- else param = SEEK_END;
-
- fseek((FILE *)file, offset, param);
-
- return ftell((FILE *)file);
-}
-
-void *snd_alloc(size_t s) { return malloc(s); }
-
-void snd_free(void *a) { free(a); }
diff --git a/lib-src/libnyquist/snd/sndmac.h b/lib-src/libnyquist/snd/sndmac.h
deleted file mode 100644
index 12ddc7f..0000000
--- a/lib-src/libnyquist/snd/sndmac.h
+++ /dev/null
@@ -1,29 +0,0 @@
-/* sndmac.h -- system-specific definitions */
-
-typedef double FASTFLOAT;
-typedef float MEMFLOAT;
-
-/* avoid conflicts if already defined: */
-
-#ifndef max
-
-#define min(a, b) ((a) < (b) ? (a) : (b))
-#define max(a, b) ((a) > (b) ? (a) : (b))
-
-#endif
-
-#ifndef ntohl
-#define ntohl(x) (x)
-#endif
-
-#ifndef ntohs
-#define ntohs(x) (x)
-#endif
-
-#ifndef htonl
-#define htonl(x) (x)
-#endif
-
-#ifndef htons
-#define htons(x) (x)
-#endif
diff --git a/lib-src/libnyquist/snd/sndnt.h b/lib-src/libnyquist/snd/sndnt.h
deleted file mode 100644
index 510b14a..0000000
--- a/lib-src/libnyquist/snd/sndnt.h
+++ /dev/null
@@ -1,43 +0,0 @@
-/* sndsystem.h -- system-specific definitions */
-/*
- NOTES: you need a different sndswitches.h for each implementation, so
-this is a separate file. Things you need to define here:
-
-1) Either UNIX, WIN32, or MACINTOSH should be defined.
-
-2) Either the following function declaration:
- void snd_fail(char *msg);
-or
- #define snd_fail(msg) ...
-
-3) typedef FASTFLOAT to be either a double or a float, whichever
-computes faster (PowerPCs are faster at double math than float math)
-
-4) typedef MEMFLOAT to be how you would store a sample in memory
-(this should normally be float)
-
-5) min() must be defined (either a macro or a function)
-
-6) max() must be defined (either a macro or a function)
-
-*/
-
-#define WIN32 1
-
-void snd_fail(char *msg);
-typedef double FASTFLOAT;
-typedef float MEMFLOAT;
-
-/* avoid conflict with Windows */
-#ifndef max
-
-/* min(n, sizeof(long)) doesn't work on RS6K without this:
- * (I never tracked down what min() was called and what was wrong.)
- */
-#define min(a, b) ((a) < (b) ? (a) : (b))
-#define max(a, b) ((a) > (b) ? (a) : (b))
-
-#endif
-
-void *snd_alloc(size_t s);
-void snd_free(void *a);
diff --git a/lib-src/libnyquist/snd/sndrs6k.h b/lib-src/libnyquist/snd/sndrs6k.h
deleted file mode 100644
index 660704b..0000000
--- a/lib-src/libnyquist/snd/sndrs6k.h
+++ /dev/null
@@ -1,40 +0,0 @@
-/* sndsystem.h -- system-specific definitions */
-/*
- NOTES: you need a different sndswitches.h for each implementation, so
-this is a separate file. Things you need to define here:
-
-1) Either UNIX, WIN32, or MACINTOSH should be defined.
-
-2) Either the following function declaration:
- void snd_fail(char *msg);
-or
- #define snd_fail(msg) ...
-
-3) typedef FASTFLOAT to be either a double or a float, whichever
-computes faster (PowerPCs are faster at double math than float math)
-
-4) typedef MEMFLOAT to be how you would store a sample in memory
-(this should normally be float)
-
-5) min() must be defined (either a macro or a function)
-
-6) max() must be defined (either a macro or a function)
-
-*/
-
-#define UNIX 1
-
-void snd_fail(char *msg);
-typedef double FASTFLOAT;
-typedef float MEMFLOAT;
-
-/* avoid conflict with Windows */
-#ifndef max
-
-/* min(n, sizeof(long)) doesn't work on RS6K without this:
- * (I never tracked down what min() was called and what was wrong.)
- */
-#define min(a, b) ((a) < (b) ? (a) : (b))
-#define max(a, b) ((a) > (b) ? (a) : (b))
-
-#endif
diff --git a/lib-src/libnyquist/snd/sndsystem.c b/lib-src/libnyquist/snd/sndsystem.c
deleted file mode 100644
index 18113e3..0000000
--- a/lib-src/libnyquist/snd/sndsystem.c
+++ /dev/null
@@ -1,42 +0,0 @@
-/* sndsystem.c
- *
- * Roger Dannenberg
- * 21 Jun 1997
- *
- */
-
-#include "stdlib.h"
-#include "stdio.h"
-
-#include "snd.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#ifndef __WX__
-void snd_fail(char *msg)
-{
- printf("ERROR: %s\n", msg);
-}
-#endif
-
-void *snd_alloc(size_t s)
-{
- void *res;
- /* printf("snd_alloc of %ld ", s); */
- res = malloc(s);
- return res;
-}
-
-
-void snd_free(void *a)
-{
- /* printf("snd_free of %lx\n", a);*/
- free(a);
-}
-
-#ifdef __cplusplus
-} // extern "C"
-#endif
-
diff --git a/lib-src/libnyquist/snd/sndsystem.h b/lib-src/libnyquist/snd/sndsystem.h
deleted file mode 100644
index 835d0d7..0000000
--- a/lib-src/libnyquist/snd/sndsystem.h
+++ /dev/null
@@ -1,67 +0,0 @@
-/* sndsystem.h -- system-specific definitions */
-/*
- NOTES: you need a different sndswitches.h for each implementation, so
-this is a separate file. Things you need to define here:
-
-1) Either UNIX, WIN32, or MACINTOSH should be defined.
-
-2) Either the following function declaration:
- void snd_fail(char *msg);
-or
- #define snd_fail(msg) ...
-
-3) typedef FASTFLOAT to be either a double or a float, whichever
-computes faster (PowerPCs are faster at double math than float math)
-
-4) typedef MEMFLOAT to be how you would store a sample in memory
-(this should normally be float)
-
-5) min() must be defined (either a macro or a function)
-
-6) max() must be defined (either a macro or a function)
-
-*/
-
-
-#ifdef __WXMAC__
- #ifndef __WX__
- #define __WX__
- #endif
-#endif
-#ifdef __WXMSW__
- #ifndef __WX__
- #define __WX__
- #endif
-#endif
-#ifdef __WXGTK__
- #ifndef __WX__
- #define __WX__
- #endif
-#endif
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-void snd_fail(char *msg);
-
-#ifdef __cplusplus
-} // extern "C"
-#endif
-
-#define _snd_fail(X) snd_fail(X)
-#define _snd_free(X) snd_free(X)
-#define _snd_alloc(X) snd_alloc(X)
-
-typedef double FASTFLOAT;
-typedef float MEMFLOAT;
-
-/* avoid conflict with Windows */
-#ifndef max
-/* min(n, sizeof(long)) doesn't work on RS6K without this:
- * (I never tracked down what min() was called and what was wrong.)
- */
-#define min(a, b) ((a) < (b) ? (a) : (b))
-#define max(a, b) ((a) > (b) ? (a) : (b))
-
-#endif
diff --git a/lib-src/libnyquist/snd/sndsystemmac.h b/lib-src/libnyquist/snd/sndsystemmac.h
deleted file mode 100644
index 1e54d89..0000000
--- a/lib-src/libnyquist/snd/sndsystemmac.h
+++ /dev/null
@@ -1 +0,0 @@
-#include "sndmac.h"
diff --git a/lib-src/libnyquist/snd/sndwin32.c b/lib-src/libnyquist/snd/sndwin32.c
deleted file mode 100644
index f629b5f..0000000
--- a/lib-src/libnyquist/snd/sndwin32.c
+++ /dev/null
@@ -1,72 +0,0 @@
-#include <io.h>
-#include <fcntl.h>
-#include <stdio.h>
-#include <sys/stat.h>
-
-#include "snd.h"
-#include "sndfileio.h"
-
-#define PERMISSION 0x0644
-
-
-int snd_file_open(char *fname, int mode)
-{
- int file;
- if (mode == SND_RDONLY) mode = _O_RDONLY;
- else mode = _O_RDWR;
- file = _open(fname, mode | _O_BINARY);
- return file;
-}
-
-
-int snd_file_creat(char *fname)
-{
- int file = _open(fname, _O_TRUNC | _O_WRONLY |
- _O_CREAT | _O_BINARY, _S_IREAD | _S_IWRITE);
- return file;
-}
-
-
-long snd_file_len(int file)
-{
- long len;
- struct stat statbuf;
-
- fstat(file ,&statbuf);
- len = (long) statbuf.st_size; /* get length of file */
- return len;
-}
-
-
-long snd_file_read(int fp, char *data, long len)
-{
- return read(fp, data, len);
-}
-
-
-long snd_file_write(int fp, char *data, long len)
-{
- return write(fp, data, len);
-}
-
-
-int snd_file_close(int fp)
-{
- return close(fp);
-}
-
-
-int snd_file_lseek(int file, long offset, int param)
-{
- if (param == SND_SEEK_CUR) param = SEEK_CUR;
- else if (param == SND_SEEK_SET) param = SEEK_SET;
- else param = SEEK_END;
- return _lseek(file, offset, param);
-}
-
-
-void *snd_alloc(size_t s) { return malloc(s); }
-
-
-void snd_free(void *a) { free(a); }
-
diff --git a/lib-src/libnyquist/snd/sndwin32.h b/lib-src/libnyquist/snd/sndwin32.h
deleted file mode 100644
index f1bb1c3..0000000
--- a/lib-src/libnyquist/snd/sndwin32.h
+++ /dev/null
@@ -1,16 +0,0 @@
-/* sndwin32.h -- system-specific definitions */
-
-typedef double FASTFLOAT;
-typedef float MEMFLOAT;
-
-/* avoid conflicts if already defined: */
-#ifndef max
-
-/* min(n, sizeof(long)) doesn't work on RS6K without this:
- * (I never tracked down what min() was called and what was wrong.)
- */
-#define min(a, b) ((a) < (b) ? (a) : (b))
-#define max(a, b) ((a) > (b) ? (a) : (b))
-
-#endif
-
diff --git a/lib-src/libnyquist/snd/sndwrite.h b/lib-src/libnyquist/snd/sndwrite.h
deleted file mode 100644
index 598aca3..0000000
--- a/lib-src/libnyquist/snd/sndwrite.h
+++ /dev/null
@@ -1,15 +0,0 @@
-/* sndwrite.h -- header to write sounds to files */
-
-double sound_save(LVAL snd_expr, long n,
- unsigned char *filename, long format,
- long mode, long bits, double *sr, long *nchans,
- double *duration);
-/* LISP: (SND-SAVE ANY FIXNUM STRING FIXNUM FIXNUM FIXNUM ANYNUM^ FIXNUM^ ANYNUM^) */
-
-double sound_overwrite(LVAL snd_expr, long n,
- unsigned char *filename, long byte_offset,
- long mode, long bits, double sr, long nchans,
- double *duration);
-/* LISP: (SND-OVERWRITE ANY FIXNUM STRING FIXNUM FIXNUM FIXNUM ANYNUM FIXNUM ANYNUM^) */
-
-
diff --git a/lib-src/libnyquist/sys/switches.h b/lib-src/libnyquist/sys/switches.h
deleted file mode 100644
index 0481413..0000000
--- a/lib-src/libnyquist/sys/switches.h
+++ /dev/null
@@ -1,76 +0,0 @@
-/* see sys/switches.h.template */
-
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm major reorganization of conditional compilation in Nyquist
- */
-
-/*
- *
- * This is the Unix version of switches.h - in libnyquist, see the
- * win and mac subdirectories for the other versions.
- *
- */
-
-#define HAS_STDLIB_H 1
-#define HAS_SYS_TYPES_H 1
-#define HAS_SYS_STAT_H 1
-#undef HAS_STAT_H
-#undef HAS_MALLOC_H
-
-#define HAS_GETTIMEOFDAY 1
-
-#define READLINE 1
-
-#if i386
-#define XL_LITTLE_ENDIAN 1
-#elif __i386__
-#define XL_LITTLE_ENDIAN 1
-#else
-#define XL_BIG_ENDIAN 1
-#endif
-
-#undef USE_RAND
-#define USE_RANDOM 1
-
-/* define this to be printf, or define your own fn of the form
- void nyquist_printf(char *format, ...);
- (for a GUI)
-*/
-#define nyquist_printf printf
-
-#if (__APPLE__ && __GNUC__) || defined(__FreeBSD__)
-#define NEED_ULONG 1
-#else
-#include <sys/types.h>
-#undef NEED_ULONG
-#endif
-
-#undef NEED_USHORT
-#define NEED_BYTE 1
-
-#define NEED_ROUND 1
-
-#undef NEED_DEFINE_MALLOC
-
-/* explicitly choose a platform */
-#define UNIX 1
-#undef WINDOWS
-#undef MICROSOFT
-#undef DOS
-#undef MACINTOSH
-
-#define BUFFERED_SYNCHRONOUS_INPUT 1
-#define SPACE_FOR_PLAY 10000
-#define MAX_CHANNELS 16
-
-/* this will enable code to read midi files, etc. */
-#define CMTSTUFF 1
-
-/* NYQUIST tells some CMT code that we're really in
- * XLISP and NYQUIST
- */
-#define NYQUIST 1
-
-#include "swlogic.h"
-
diff --git a/lib-src/libnyquist/sys/switches.h.template b/lib-src/libnyquist/sys/switches.h.template
deleted file mode 100644
index 9015a9f..0000000
--- a/lib-src/libnyquist/sys/switches.h.template
+++ /dev/null
@@ -1,53 +0,0 @@
-/* switches.h template file
-*/
-
-#undef HAS_STDLIB_H
-#undef HAS_SYS_TYPES_H
-#undef HAS_SYS_STAT_H
-#undef HAS_STAT_H
-#undef HAS_MALLOC_H
-
-#undef HAS_GETTIMEOFDAY
-
-#undef READLINE
-
-#undef XL_BIG_ENDIAN
-#undef XL_LITTLE_ENDIAN
-
-#undef USE_RAND
-#undef USE_RANDOM
-
-/* define this to be printf, or define your own fn of the form
- void nyquist_printf(char *format, ...);
- (for a GUI)
-*/
-#undef nyquist_printf
-
-#undef NEED_ULONG
-#undef NEED_USHORT
-#undef NEED_BYTE
-
-#undef NEED_DEFINE_MALLOC
-
-#undef NEED_ROUND
-
-/* explicitly choose a platform */
-#undef UNIX
-#undef WINDOWS
-#undef MICROSOFT
-#undef DOS
-#undef MACINTOSH
-
-#undef BUFFERED_SYNCHRONOUS_INPUT
-#define SPACE_FOR_PLAY 10000
-#define MAX_CHANNELS 16
-
-/* this will enable code to read midi files, etc. */
-#define CMTSTUFF
-
-/* NYQUIST tells some CMT code that we're really in
- * XLISP and NYQUIST
- */
-#define NYQUIST
-
-#include "swlogic.h"
diff --git a/lib-src/libnyquist/sys/term.c b/lib-src/libnyquist/sys/term.c
deleted file mode 100644
index 80985a5..0000000
--- a/lib-src/libnyquist/sys/term.c
+++ /dev/null
@@ -1,92 +0,0 @@
-/* term.c -- Routines for managing terminal I/O settings by Alan Cox.
- * From LJ 17 */
-
-/* Thanks to Dave Cook for rescuing it */
-
-#ifdef WIN32
-
-void term_restore(void)
-{
-}
-
-void term_exit()
-{
-}
-
-void term_ctrlz()
-{
-}
-
-void term_cont()
-{
-}
-
-void term_init(void)
-{
-}
-
-void term_character(void)
-{
-}
-
-void term_line(void)
-{
-}
-
-int term_testchar()
-{
-}
-
-#else
-
-#include <termios.h>
-#ifdef linux
-#include <asm/ioctls.h>
-#endif
-#include <signal.h>
-#include <stdlib.h>
-#include <unistd.h>
-#include <stdio.h>
-
-/* This will be used for new terminal settings. */
-static struct termios current;
-
-/* This will hold the initial state so that we can restor it later. */
-static struct termios initial;
-
-/* Restor the termianl settings to those saved when term_init was called. */
-void term_restore(void)
-{
-}
-
-void term_exit()
-{
-}
-
-void term_ctrlz()
-{
-}
-
-void term_cont()
-{
-}
-
-void term_init(void)
-{
-}
-
-void term_character(void)
-{
-}
-
-void term_line(void)
-{
-}
-
-int term_testchar()
-{
- return 0;
-}
-
-#endif
-
diff --git a/lib-src/libnyquist/sys/term.h b/lib-src/libnyquist/sys/term.h
deleted file mode 100644
index 2d87403..0000000
--- a/lib-src/libnyquist/sys/term.h
+++ /dev/null
@@ -1,3 +0,0 @@
-void term_init();
-void term_exit();
-void ctcinit(); /* not implemented in term.h */
diff --git a/lib-src/libnyquist/tran/abs.alg b/lib-src/libnyquist/tran/abs.alg
deleted file mode 100644
index 2c139e6..0000000
--- a/lib-src/libnyquist/tran/abs.alg
+++ /dev/null
@@ -1,9 +0,0 @@
-(ABS-ALG
- (NAME "abs")
- (ARGUMENTS ("sound_type" "input"))
- (ALWAYS-SCALE input)
- (START (MIN input))
- (INNER-LOOP "{ sample_type s = input; sample_type o = s; if (o < 0.0) o = -o; output = o; }")
- (TERMINATE (MIN input))
- (LOGICAL-STOP (MIN input))
-)
diff --git a/lib-src/libnyquist/tran/abs.c b/lib-src/libnyquist/tran/abs.c
deleted file mode 100644
index 39e8c15..0000000
--- a/lib-src/libnyquist/tran/abs.c
+++ /dev/null
@@ -1,198 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "abs.h"
-
-void abs_free();
-
-
-typedef struct abs_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type input;
- long input_cnt;
- sample_block_values_type input_ptr;
-} abs_susp_node, *abs_susp_type;
-
-
-void abs_s_fetch(register abs_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register sample_type input_scale_reg = susp->input->scale;
- register sample_block_values_type input_ptr_reg;
- falloc_sample_block(out, "abs_s_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the input input sample block: */
- susp_check_term_log_samples(input, input_ptr, input_cnt);
- togo = MIN(togo, susp->input_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- input_ptr_reg = susp->input_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-{ sample_type s = (input_scale_reg * *input_ptr_reg++); sample_type o = s; if (o < 0.0) o = -o; *out_ptr_reg++ = o; };
- } while (--n); /* inner loop */
-
- /* using input_ptr_reg is a bad idea on RS/6000: */
- susp->input_ptr += togo;
- out_ptr += togo;
- susp_took(input_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* abs_s_fetch */
-
-
-void abs_toss_fetch(susp, snd_list)
- register abs_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from input up to final_time for this block of zeros */
- while ((round((final_time - susp->input->t0) * susp->input->sr)) >=
- susp->input->current)
- susp_get_samples(input, input_ptr, input_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->input->t0) * susp->input->sr -
- (susp->input->current - susp->input_cnt));
- susp->input_ptr += n;
- susp_took(input_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void abs_mark(abs_susp_type susp)
-{
- sound_xlmark(susp->input);
-}
-
-
-void abs_free(abs_susp_type susp)
-{
- sound_unref(susp->input);
- ffree_generic(susp, sizeof(abs_susp_node), "abs_free");
-}
-
-
-void abs_print_tree(abs_susp_type susp, int n)
-{
- indent(n);
- stdputstr("input:");
- sound_print_tree_1(susp->input, n);
-}
-
-
-sound_type snd_make_abs(sound_type input)
-{
- register abs_susp_type susp;
- rate_type sr = input->sr;
- time_type t0 = input->t0;
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- falloc_generic(susp, abs_susp_node, "snd_make_abs");
- susp->susp.fetch = abs_s_fetch;
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < input->t0) sound_prepend_zeros(input, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(input->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = abs_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = abs_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = abs_mark;
- susp->susp.print_tree = abs_print_tree;
- susp->susp.name = "abs";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(input);
- susp->susp.current = 0;
- susp->input = input;
- susp->input_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_abs(sound_type input)
-{
- sound_type input_copy = sound_copy(input);
- return snd_make_abs(input_copy);
-}
diff --git a/lib-src/libnyquist/tran/abs.h b/lib-src/libnyquist/tran/abs.h
deleted file mode 100644
index 04b8d78..0000000
--- a/lib-src/libnyquist/tran/abs.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_abs(sound_type input);
-sound_type snd_abs(sound_type input);
- /* LISP: (snd-abs SOUND) */
diff --git a/lib-src/libnyquist/tran/alpass.alg b/lib-src/libnyquist/tran/alpass.alg
deleted file mode 100644
index 45bffe2..0000000
--- a/lib-src/libnyquist/tran/alpass.alg
+++ /dev/null
@@ -1,22 +0,0 @@
-(ALPASS-ALG
-(NAME "alpass")
-(ARGUMENTS ("sound_type" "input") ("time_type" "delay") ("double" "feedback"))
-(START (MIN input))
-(STATE ("double" "feedback" "feedback")
- ("long" "delaylen" "MAX(1, round(input->sr * delay))")
- ("sample_type *" "delaybuf"
- "(sample_type *) calloc (susp->delaylen, sizeof(sample_type))")
- ("sample_type *" "delayptr" "susp->delaybuf")
- ("sample_type *" "endptr" "susp->delaybuf + susp->delaylen"))
-(CONSTANT "feedback" "delaylen" "endptr")
-(NOT-REGISTER delaybuf)
-(LINEAR input)
-(TERMINATE (MIN input))
-(INNER-LOOP-LOCALS "register sample_type y, z;\n")
-(INNER-LOOP " y = *delayptr;
- *delayptr++ = z = (sample_type) (feedback * y + input);
- output = (sample_type) (y - feedback * z);
- if (delayptr >= endptr) delayptr = susp->delaybuf;")
-(FINALIZATION "free(susp->delaybuf);")
-)
-
diff --git a/lib-src/libnyquist/tran/alpass.c b/lib-src/libnyquist/tran/alpass.c
deleted file mode 100644
index 30f4f42..0000000
--- a/lib-src/libnyquist/tran/alpass.c
+++ /dev/null
@@ -1,193 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "alpass.h"
-
-void alpass_free();
-
-
-typedef struct alpass_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- sound_type input;
- long input_cnt;
- sample_block_values_type input_ptr;
-
- double feedback;
- long delaylen;
- sample_type *delaybuf;
- sample_type *delayptr;
- sample_type *endptr;
-} alpass_susp_node, *alpass_susp_type;
-
-
-void alpass_n_fetch(register alpass_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double feedback_reg;
- register sample_type * delayptr_reg;
- register sample_type * endptr_reg;
- register sample_block_values_type input_ptr_reg;
- falloc_sample_block(out, "alpass_n_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the input input sample block: */
- susp_check_term_samples(input, input_ptr, input_cnt);
- togo = MIN(togo, susp->input_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
- n = togo;
- feedback_reg = susp->feedback;
- delayptr_reg = susp->delayptr;
- endptr_reg = susp->endptr;
- input_ptr_reg = susp->input_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-register sample_type y, z;
- y = *delayptr_reg;
- *delayptr_reg++ = z = (sample_type) (feedback_reg * y + *input_ptr_reg++);
- *out_ptr_reg++ = (sample_type) (y - feedback_reg * z);
- if (delayptr_reg >= endptr_reg) delayptr_reg = susp->delaybuf;;
- } while (--n); /* inner loop */
-
- susp->delayptr = delayptr_reg;
- /* using input_ptr_reg is a bad idea on RS/6000: */
- susp->input_ptr += togo;
- out_ptr += togo;
- susp_took(input_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
-} /* alpass_n_fetch */
-
-
-void alpass_toss_fetch(susp, snd_list)
- register alpass_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from input up to final_time for this block of zeros */
- while ((round((final_time - susp->input->t0) * susp->input->sr)) >=
- susp->input->current)
- susp_get_samples(input, input_ptr, input_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->input->t0) * susp->input->sr -
- (susp->input->current - susp->input_cnt));
- susp->input_ptr += n;
- susp_took(input_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void alpass_mark(alpass_susp_type susp)
-{
- sound_xlmark(susp->input);
-}
-
-
-void alpass_free(alpass_susp_type susp)
-{
-free(susp->delaybuf); sound_unref(susp->input);
- ffree_generic(susp, sizeof(alpass_susp_node), "alpass_free");
-}
-
-
-void alpass_print_tree(alpass_susp_type susp, int n)
-{
- indent(n);
- stdputstr("input:");
- sound_print_tree_1(susp->input, n);
-}
-
-
-sound_type snd_make_alpass(sound_type input, time_type delay, double feedback)
-{
- register alpass_susp_type susp;
- rate_type sr = input->sr;
- time_type t0 = input->t0;
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- /* combine scale factors of linear inputs (INPUT) */
- scale_factor *= input->scale;
- input->scale = 1.0F;
-
- /* try to push scale_factor back to a low sr input */
- if (input->sr < sr) { input->scale = scale_factor; scale_factor = 1.0F; }
-
- falloc_generic(susp, alpass_susp_node, "snd_make_alpass");
- susp->feedback = feedback;
- susp->delaylen = MAX(1, round(input->sr * delay));
- susp->delaybuf = (sample_type *) calloc (susp->delaylen, sizeof(sample_type));
- susp->delayptr = susp->delaybuf;
- susp->endptr = susp->delaybuf + susp->delaylen;
- susp->susp.fetch = alpass_n_fetch;
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < input->t0) sound_prepend_zeros(input, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(input->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = alpass_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = alpass_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = alpass_mark;
- susp->susp.print_tree = alpass_print_tree;
- susp->susp.name = "alpass";
- susp->susp.log_stop_cnt = UNKNOWN;
- susp->susp.current = 0;
- susp->input = input;
- susp->input_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_alpass(sound_type input, time_type delay, double feedback)
-{
- sound_type input_copy = sound_copy(input);
- return snd_make_alpass(input_copy, delay, feedback);
-}
diff --git a/lib-src/libnyquist/tran/alpass.h b/lib-src/libnyquist/tran/alpass.h
deleted file mode 100644
index a526d1f..0000000
--- a/lib-src/libnyquist/tran/alpass.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_alpass(sound_type input, time_type delay, double feedback);
-sound_type snd_alpass(sound_type input, time_type delay, double feedback);
- /* LISP: (snd-alpass SOUND ANYNUM ANYNUM) */
diff --git a/lib-src/libnyquist/tran/alpasscv.alg b/lib-src/libnyquist/tran/alpasscv.alg
deleted file mode 100644
index c38b8fd..0000000
--- a/lib-src/libnyquist/tran/alpasscv.alg
+++ /dev/null
@@ -1,21 +0,0 @@
-(ALPASSCV-ALG
-(NAME "alpasscv")
-(ARGUMENTS ("sound_type" "input") ("time_type" "delay") ("sound_type" "feedback"))
-(START (MAX input feedback))
-(STATE ("long" "delaylen" "MAX(1, round(input->sr * delay))")
- ("sample_type *" "delaybuf"
- "(sample_type *) calloc (susp->delaylen, sizeof(sample_type))")
- ("sample_type *" "delayptr" "susp->delaybuf")
- ("sample_type *" "endptr" "susp->delaybuf + susp->delaylen"))
-(CONSTANT "delaylen" "endptr")
-(NOT-REGISTER delaybuf)
-(LINEAR input)
-(TERMINATE (MIN input))
-(INNER-LOOP-LOCALS "register sample_type y, z, fb;\n")
-(INNER-LOOP " y = *delayptr;
- *delayptr++ = z = (sample_type) ((fb = feedback) * y + input);
- output = (sample_type) (y - fb * z);
- if (delayptr >= endptr) delayptr = susp->delaybuf;")
-(FINALIZATION "free(susp->delaybuf);")
-)
-
diff --git a/lib-src/libnyquist/tran/alpasscv.c b/lib-src/libnyquist/tran/alpasscv.c
deleted file mode 100644
index 8726933..0000000
--- a/lib-src/libnyquist/tran/alpasscv.c
+++ /dev/null
@@ -1,302 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "alpasscv.h"
-
-void alpasscv_free();
-
-
-typedef struct alpasscv_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- sound_type input;
- long input_cnt;
- sample_block_values_type input_ptr;
- sound_type feedback;
- long feedback_cnt;
- sample_block_values_type feedback_ptr;
-
- long delaylen;
- sample_type *delaybuf;
- sample_type *delayptr;
- sample_type *endptr;
-} alpasscv_susp_node, *alpasscv_susp_type;
-
-
-void alpasscv_nn_fetch(register alpasscv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register sample_type * delayptr_reg;
- register sample_type * endptr_reg;
- register sample_block_values_type feedback_ptr_reg;
- register sample_block_values_type input_ptr_reg;
- falloc_sample_block(out, "alpasscv_nn_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the input input sample block: */
- susp_check_term_samples(input, input_ptr, input_cnt);
- togo = MIN(togo, susp->input_cnt);
-
- /* don't run past the feedback input sample block: */
- susp_check_samples(feedback, feedback_ptr, feedback_cnt);
- togo = MIN(togo, susp->feedback_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
- n = togo;
- delayptr_reg = susp->delayptr;
- endptr_reg = susp->endptr;
- feedback_ptr_reg = susp->feedback_ptr;
- input_ptr_reg = susp->input_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-register sample_type y, z, fb;
- y = *delayptr_reg;
- *delayptr_reg++ = z = (sample_type) ((fb = *feedback_ptr_reg++) * y + *input_ptr_reg++);
- *out_ptr_reg++ = (sample_type) (y - fb * z);
- if (delayptr_reg >= endptr_reg) delayptr_reg = susp->delaybuf;;
- } while (--n); /* inner loop */
-
- susp->delayptr = delayptr_reg;
- /* using feedback_ptr_reg is a bad idea on RS/6000: */
- susp->feedback_ptr += togo;
- /* using input_ptr_reg is a bad idea on RS/6000: */
- susp->input_ptr += togo;
- out_ptr += togo;
- susp_took(input_cnt, togo);
- susp_took(feedback_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
-} /* alpasscv_nn_fetch */
-
-
-void alpasscv_ns_fetch(register alpasscv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register sample_type * delayptr_reg;
- register sample_type * endptr_reg;
- register sample_type feedback_scale_reg = susp->feedback->scale;
- register sample_block_values_type feedback_ptr_reg;
- register sample_block_values_type input_ptr_reg;
- falloc_sample_block(out, "alpasscv_ns_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the input input sample block: */
- susp_check_term_samples(input, input_ptr, input_cnt);
- togo = MIN(togo, susp->input_cnt);
-
- /* don't run past the feedback input sample block: */
- susp_check_samples(feedback, feedback_ptr, feedback_cnt);
- togo = MIN(togo, susp->feedback_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
- n = togo;
- delayptr_reg = susp->delayptr;
- endptr_reg = susp->endptr;
- feedback_ptr_reg = susp->feedback_ptr;
- input_ptr_reg = susp->input_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-register sample_type y, z, fb;
- y = *delayptr_reg;
- *delayptr_reg++ = z = (sample_type) ((fb = (feedback_scale_reg * *feedback_ptr_reg++)) * y + *input_ptr_reg++);
- *out_ptr_reg++ = (sample_type) (y - fb * z);
- if (delayptr_reg >= endptr_reg) delayptr_reg = susp->delaybuf;;
- } while (--n); /* inner loop */
-
- susp->delayptr = delayptr_reg;
- /* using feedback_ptr_reg is a bad idea on RS/6000: */
- susp->feedback_ptr += togo;
- /* using input_ptr_reg is a bad idea on RS/6000: */
- susp->input_ptr += togo;
- out_ptr += togo;
- susp_took(input_cnt, togo);
- susp_took(feedback_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
-} /* alpasscv_ns_fetch */
-
-
-void alpasscv_toss_fetch(susp, snd_list)
- register alpasscv_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from input up to final_time for this block of zeros */
- while ((round((final_time - susp->input->t0) * susp->input->sr)) >=
- susp->input->current)
- susp_get_samples(input, input_ptr, input_cnt);
- /* fetch samples from feedback up to final_time for this block of zeros */
- while ((round((final_time - susp->feedback->t0) * susp->feedback->sr)) >=
- susp->feedback->current)
- susp_get_samples(feedback, feedback_ptr, feedback_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->input->t0) * susp->input->sr -
- (susp->input->current - susp->input_cnt));
- susp->input_ptr += n;
- susp_took(input_cnt, n);
- n = round((final_time - susp->feedback->t0) * susp->feedback->sr -
- (susp->feedback->current - susp->feedback_cnt));
- susp->feedback_ptr += n;
- susp_took(feedback_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void alpasscv_mark(alpasscv_susp_type susp)
-{
- sound_xlmark(susp->input);
- sound_xlmark(susp->feedback);
-}
-
-
-void alpasscv_free(alpasscv_susp_type susp)
-{
-free(susp->delaybuf); sound_unref(susp->input);
- sound_unref(susp->feedback);
- ffree_generic(susp, sizeof(alpasscv_susp_node), "alpasscv_free");
-}
-
-
-void alpasscv_print_tree(alpasscv_susp_type susp, int n)
-{
- indent(n);
- stdputstr("input:");
- sound_print_tree_1(susp->input, n);
-
- indent(n);
- stdputstr("feedback:");
- sound_print_tree_1(susp->feedback, n);
-}
-
-
-sound_type snd_make_alpasscv(sound_type input, time_type delay, sound_type feedback)
-{
- register alpasscv_susp_type susp;
- rate_type sr = MAX(input->sr, feedback->sr);
- time_type t0 = MAX(input->t0, feedback->t0);
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- /* combine scale factors of linear inputs (INPUT) */
- scale_factor *= input->scale;
- input->scale = 1.0F;
-
- /* try to push scale_factor back to a low sr input */
- if (input->sr < sr) { input->scale = scale_factor; scale_factor = 1.0F; }
-
- falloc_generic(susp, alpasscv_susp_node, "snd_make_alpasscv");
- susp->delaylen = MAX(1, round(input->sr * delay));
- susp->delaybuf = (sample_type *) calloc (susp->delaylen, sizeof(sample_type));
- susp->delayptr = susp->delaybuf;
- susp->endptr = susp->delaybuf + susp->delaylen;
-
- /* select a susp fn based on sample rates */
- interp_desc = (interp_desc << 2) + interp_style(input, sr);
- interp_desc = (interp_desc << 2) + interp_style(feedback, sr);
- switch (interp_desc) {
- case INTERP_nn: susp->susp.fetch = alpasscv_nn_fetch; break;
- case INTERP_ns: susp->susp.fetch = alpasscv_ns_fetch; break;
- default: snd_badsr(); break;
- }
-
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < input->t0) sound_prepend_zeros(input, t0);
- if (t0 < feedback->t0) sound_prepend_zeros(feedback, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(input->t0, MIN(feedback->t0, t0));
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = alpasscv_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = alpasscv_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = alpasscv_mark;
- susp->susp.print_tree = alpasscv_print_tree;
- susp->susp.name = "alpasscv";
- susp->susp.log_stop_cnt = UNKNOWN;
- susp->susp.current = 0;
- susp->input = input;
- susp->input_cnt = 0;
- susp->feedback = feedback;
- susp->feedback_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_alpasscv(sound_type input, time_type delay, sound_type feedback)
-{
- sound_type input_copy = sound_copy(input);
- sound_type feedback_copy = sound_copy(feedback);
- return snd_make_alpasscv(input_copy, delay, feedback_copy);
-}
diff --git a/lib-src/libnyquist/tran/alpasscv.h b/lib-src/libnyquist/tran/alpasscv.h
deleted file mode 100644
index 5d2ec0a..0000000
--- a/lib-src/libnyquist/tran/alpasscv.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_alpasscv(sound_type input, time_type delay, sound_type feedback);
-sound_type snd_alpasscv(sound_type input, time_type delay, sound_type feedback);
- /* LISP: (snd-alpasscv SOUND ANYNUM SOUND) */
diff --git a/lib-src/libnyquist/tran/alpassvc.alg b/lib-src/libnyquist/tran/alpassvc.alg
deleted file mode 100644
index 28a8e3e..0000000
--- a/lib-src/libnyquist/tran/alpassvc.alg
+++ /dev/null
@@ -1,59 +0,0 @@
-(ALPASSVC-ALG
-;;
-;; delay is variable -- but we don't want to reallocate the delay buffer, so
-;; use an additional parameter for the maximum allowable delay. The sound will
-;; be written into the buffer every sample, but read using linear
-;; interpolation. As in tapv, duplicate the sample at the first and last
-;; locations in the buffer.
-;;
-(NAME "alpassvc")
-(ARGUMENTS ("sound_type" "input") ("sound_type" "delaysnd") ("double" "feedback")
- ("double" "maxdelay"))
-(START (MAX input delaysnd))
-(STATE ("float" "delay_scale_factor" "(float) (input->sr * delaysnd->scale)")
- ("double" "feedback" "feedback")
- ("long" "buflen" "MAX(2, (long) (input->sr * maxdelay + 2.5))")
- ("sample_type *" "delaybuf"
- "(sample_type *) calloc (susp->buflen + 1, sizeof(sample_type))")
- ("sample_type *" "delayptr" "susp->delaybuf")
-;; since we allocate one extra sample, endptr points to the last sample
- ("sample_type *" "endptr" "susp->delaybuf + susp->buflen"))
-(CONSTANT "feedback" "delaylen" "endptr" "delay_scale_factor")
-(NOT-REGISTER delaybuf)
-(LINEAR input)
-(TERMINATE (MIN input))
-(INNER-LOOP-LOCALS " register sample_type y, z, delaysamp;
- register int delayi;
- register sample_type *yptr;\n")
-(INNER-LOOP "
- /* compute where to read y, we want y to be delay_snd samples
- * after delay_ptr, where we write the new sample. First,
- * conver from seconds to samples. Note: don't use actual sound_type
- * names in comments! The translator isn't smart enough.
- */
- delaysamp = delaysnd * delay_scale_factor;
- delayi = (int) delaysamp; /* get integer part */
- delaysamp = delaysamp - delayi; /* get phase */
- yptr = delayptr + buflen - (delayi + 1);
- if (yptr >= endptr) yptr -= buflen;
- /* now get y, the out-put of the delay, using interpolation */
- /* note that as phase increases, we use more of yptr[0] because
- positive phase means longer buffer means read earlier sample */
- y = (float) ((yptr[0] * delaysamp) + (yptr[1] * (1.0 - delaysamp)));
- /* WARNING: no check to keep delaysamp in range, so do this in LISP */
-
- *delayptr++ = z = (sample_type) (feedback * y + input);
- /* Time out to update the buffer:
- * this is a tricky buffer: buffer[0] == buffer[bufflen]
- * the logical length is bufflen, but the actual length
- * is bufflen + 1 to allow for a repeated sample at the
- * end. This allows for efficient interpolation.
- */
- if (delayptr > endptr) {
- delayptr = susp->delaybuf;
- *delayptr++ = *endptr;
- }
- output = (sample_type) (y - feedback * z);")
-(FINALIZATION "free(susp->delaybuf);")
-)
-
diff --git a/lib-src/libnyquist/tran/alpassvc.c b/lib-src/libnyquist/tran/alpassvc.c
deleted file mode 100644
index 0449e81..0000000
--- a/lib-src/libnyquist/tran/alpassvc.c
+++ /dev/null
@@ -1,374 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "alpassvc.h"
-
-void alpassvc_free();
-
-
-typedef struct alpassvc_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- sound_type input;
- long input_cnt;
- sample_block_values_type input_ptr;
- sound_type delaysnd;
- long delaysnd_cnt;
- sample_block_values_type delaysnd_ptr;
-
- float delay_scale_factor;
- double feedback;
- long buflen;
- sample_type *delaybuf;
- sample_type *delayptr;
- sample_type *endptr;
-} alpassvc_susp_node, *alpassvc_susp_type;
-
-
-void alpassvc_nn_fetch(register alpassvc_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register float delay_scale_factor_reg;
- register double feedback_reg;
- register long buflen_reg;
- register sample_type * delayptr_reg;
- register sample_type * endptr_reg;
- register sample_block_values_type delaysnd_ptr_reg;
- register sample_block_values_type input_ptr_reg;
- falloc_sample_block(out, "alpassvc_nn_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the input input sample block: */
- susp_check_term_samples(input, input_ptr, input_cnt);
- togo = MIN(togo, susp->input_cnt);
-
- /* don't run past the delaysnd input sample block: */
- susp_check_samples(delaysnd, delaysnd_ptr, delaysnd_cnt);
- togo = MIN(togo, susp->delaysnd_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
- n = togo;
- delay_scale_factor_reg = susp->delay_scale_factor;
- feedback_reg = susp->feedback;
- buflen_reg = susp->buflen;
- delayptr_reg = susp->delayptr;
- endptr_reg = susp->endptr;
- delaysnd_ptr_reg = susp->delaysnd_ptr;
- input_ptr_reg = susp->input_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- register sample_type y, z, delaysamp;
- register int delayi;
- register sample_type *yptr;
-
- /* compute where to read y, we want y to be delay_snd samples
- * after delay_ptr, where we write the new sample. First,
- * conver from seconds to samples. Note: don't use actual sound_type
- * names in comments! The translator isn't smart enough.
- */
- delaysamp = *delaysnd_ptr_reg++ * delay_scale_factor_reg;
- delayi = (int) delaysamp; /* get integer part */
- delaysamp = delaysamp - delayi; /* get phase */
- yptr = delayptr_reg + buflen_reg - (delayi + 1);
- if (yptr >= endptr_reg) yptr -= buflen_reg;
- /* now get y, the out-put of the delay, using interpolation */
- /* note that as phase increases, we use more of yptr[0] because
- positive phase means longer buffer means read earlier sample */
- y = (float) ((yptr[0] * delaysamp) + (yptr[1] * (1.0 - delaysamp)));
- /* WARNING: no check to keep delaysamp in range, so do this in LISP */
-
- *delayptr_reg++ = z = (sample_type) (feedback_reg * y + *input_ptr_reg++);
- /* Time out to update the buffer:
- * this is a tricky buffer: buffer[0] == buffer[bufflen]
- * the logical length is bufflen, but the actual length
- * is bufflen + 1 to allow for a repeated sample at the
- * end. This allows for efficient interpolation.
- */
- if (delayptr_reg > endptr_reg) {
- delayptr_reg = susp->delaybuf;
- *delayptr_reg++ = *endptr_reg;
- }
- *out_ptr_reg++ = (sample_type) (y - feedback_reg * z);;
- } while (--n); /* inner loop */
-
- susp->buflen = buflen_reg;
- susp->delayptr = delayptr_reg;
- /* using delaysnd_ptr_reg is a bad idea on RS/6000: */
- susp->delaysnd_ptr += togo;
- /* using input_ptr_reg is a bad idea on RS/6000: */
- susp->input_ptr += togo;
- out_ptr += togo;
- susp_took(input_cnt, togo);
- susp_took(delaysnd_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
-} /* alpassvc_nn_fetch */
-
-
-void alpassvc_ns_fetch(register alpassvc_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register float delay_scale_factor_reg;
- register double feedback_reg;
- register long buflen_reg;
- register sample_type * delayptr_reg;
- register sample_type * endptr_reg;
- register sample_type delaysnd_scale_reg = susp->delaysnd->scale;
- register sample_block_values_type delaysnd_ptr_reg;
- register sample_block_values_type input_ptr_reg;
- falloc_sample_block(out, "alpassvc_ns_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the input input sample block: */
- susp_check_term_samples(input, input_ptr, input_cnt);
- togo = MIN(togo, susp->input_cnt);
-
- /* don't run past the delaysnd input sample block: */
- susp_check_samples(delaysnd, delaysnd_ptr, delaysnd_cnt);
- togo = MIN(togo, susp->delaysnd_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
- n = togo;
- delay_scale_factor_reg = susp->delay_scale_factor;
- feedback_reg = susp->feedback;
- buflen_reg = susp->buflen;
- delayptr_reg = susp->delayptr;
- endptr_reg = susp->endptr;
- delaysnd_ptr_reg = susp->delaysnd_ptr;
- input_ptr_reg = susp->input_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- register sample_type y, z, delaysamp;
- register int delayi;
- register sample_type *yptr;
-
- /* compute where to read y, we want y to be delay_snd samples
- * after delay_ptr, where we write the new sample. First,
- * conver from seconds to samples. Note: don't use actual sound_type
- * names in comments! The translator isn't smart enough.
- */
- delaysamp = (delaysnd_scale_reg * *delaysnd_ptr_reg++) * delay_scale_factor_reg;
- delayi = (int) delaysamp; /* get integer part */
- delaysamp = delaysamp - delayi; /* get phase */
- yptr = delayptr_reg + buflen_reg - (delayi + 1);
- if (yptr >= endptr_reg) yptr -= buflen_reg;
- /* now get y, the out-put of the delay, using interpolation */
- /* note that as phase increases, we use more of yptr[0] because
- positive phase means longer buffer means read earlier sample */
- y = (float) ((yptr[0] * delaysamp) + (yptr[1] * (1.0 - delaysamp)));
- /* WARNING: no check to keep delaysamp in range, so do this in LISP */
-
- *delayptr_reg++ = z = (sample_type) (feedback_reg * y + *input_ptr_reg++);
- /* Time out to update the buffer:
- * this is a tricky buffer: buffer[0] == buffer[bufflen]
- * the logical length is bufflen, but the actual length
- * is bufflen + 1 to allow for a repeated sample at the
- * end. This allows for efficient interpolation.
- */
- if (delayptr_reg > endptr_reg) {
- delayptr_reg = susp->delaybuf;
- *delayptr_reg++ = *endptr_reg;
- }
- *out_ptr_reg++ = (sample_type) (y - feedback_reg * z);;
- } while (--n); /* inner loop */
-
- susp->buflen = buflen_reg;
- susp->delayptr = delayptr_reg;
- /* using delaysnd_ptr_reg is a bad idea on RS/6000: */
- susp->delaysnd_ptr += togo;
- /* using input_ptr_reg is a bad idea on RS/6000: */
- susp->input_ptr += togo;
- out_ptr += togo;
- susp_took(input_cnt, togo);
- susp_took(delaysnd_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
-} /* alpassvc_ns_fetch */
-
-
-void alpassvc_toss_fetch(susp, snd_list)
- register alpassvc_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from input up to final_time for this block of zeros */
- while ((round((final_time - susp->input->t0) * susp->input->sr)) >=
- susp->input->current)
- susp_get_samples(input, input_ptr, input_cnt);
- /* fetch samples from delaysnd up to final_time for this block of zeros */
- while ((round((final_time - susp->delaysnd->t0) * susp->delaysnd->sr)) >=
- susp->delaysnd->current)
- susp_get_samples(delaysnd, delaysnd_ptr, delaysnd_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->input->t0) * susp->input->sr -
- (susp->input->current - susp->input_cnt));
- susp->input_ptr += n;
- susp_took(input_cnt, n);
- n = round((final_time - susp->delaysnd->t0) * susp->delaysnd->sr -
- (susp->delaysnd->current - susp->delaysnd_cnt));
- susp->delaysnd_ptr += n;
- susp_took(delaysnd_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void alpassvc_mark(alpassvc_susp_type susp)
-{
- sound_xlmark(susp->input);
- sound_xlmark(susp->delaysnd);
-}
-
-
-void alpassvc_free(alpassvc_susp_type susp)
-{
-free(susp->delaybuf); sound_unref(susp->input);
- sound_unref(susp->delaysnd);
- ffree_generic(susp, sizeof(alpassvc_susp_node), "alpassvc_free");
-}
-
-
-void alpassvc_print_tree(alpassvc_susp_type susp, int n)
-{
- indent(n);
- stdputstr("input:");
- sound_print_tree_1(susp->input, n);
-
- indent(n);
- stdputstr("delaysnd:");
- sound_print_tree_1(susp->delaysnd, n);
-}
-
-
-sound_type snd_make_alpassvc(sound_type input, sound_type delaysnd, double feedback, double maxdelay)
-{
- register alpassvc_susp_type susp;
- rate_type sr = MAX(input->sr, delaysnd->sr);
- time_type t0 = MAX(input->t0, delaysnd->t0);
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- /* combine scale factors of linear inputs (INPUT) */
- scale_factor *= input->scale;
- input->scale = 1.0F;
-
- /* try to push scale_factor back to a low sr input */
- if (input->sr < sr) { input->scale = scale_factor; scale_factor = 1.0F; }
-
- falloc_generic(susp, alpassvc_susp_node, "snd_make_alpassvc");
- susp->delay_scale_factor = (float) (input->sr * delaysnd->scale);
- susp->feedback = feedback;
- susp->buflen = MAX(2, (long) (input->sr * maxdelay + 2.5));
- susp->delaybuf = (sample_type *) calloc (susp->buflen + 1, sizeof(sample_type));
- susp->delayptr = susp->delaybuf;
- susp->endptr = susp->delaybuf + susp->buflen;
-
- /* select a susp fn based on sample rates */
- interp_desc = (interp_desc << 2) + interp_style(input, sr);
- interp_desc = (interp_desc << 2) + interp_style(delaysnd, sr);
- switch (interp_desc) {
- case INTERP_nn: susp->susp.fetch = alpassvc_nn_fetch; break;
- case INTERP_ns: susp->susp.fetch = alpassvc_ns_fetch; break;
- default: snd_badsr(); break;
- }
-
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < input->t0) sound_prepend_zeros(input, t0);
- if (t0 < delaysnd->t0) sound_prepend_zeros(delaysnd, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(input->t0, MIN(delaysnd->t0, t0));
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = alpassvc_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = alpassvc_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = alpassvc_mark;
- susp->susp.print_tree = alpassvc_print_tree;
- susp->susp.name = "alpassvc";
- susp->susp.log_stop_cnt = UNKNOWN;
- susp->susp.current = 0;
- susp->input = input;
- susp->input_cnt = 0;
- susp->delaysnd = delaysnd;
- susp->delaysnd_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_alpassvc(sound_type input, sound_type delaysnd, double feedback, double maxdelay)
-{
- sound_type input_copy = sound_copy(input);
- sound_type delaysnd_copy = sound_copy(delaysnd);
- return snd_make_alpassvc(input_copy, delaysnd_copy, feedback, maxdelay);
-}
diff --git a/lib-src/libnyquist/tran/alpassvc.h b/lib-src/libnyquist/tran/alpassvc.h
deleted file mode 100644
index 127f299..0000000
--- a/lib-src/libnyquist/tran/alpassvc.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_alpassvc(sound_type input, sound_type delaysnd, double feedback, double maxdelay);
-sound_type snd_alpassvc(sound_type input, sound_type delaysnd, double feedback, double maxdelay);
- /* LISP: (snd-alpassvc SOUND SOUND ANYNUM ANYNUM) */
diff --git a/lib-src/libnyquist/tran/alpassvv.alg b/lib-src/libnyquist/tran/alpassvv.alg
deleted file mode 100644
index 1d62d76..0000000
--- a/lib-src/libnyquist/tran/alpassvv.alg
+++ /dev/null
@@ -1,59 +0,0 @@
-(ALPASSVC-ALG
-;;
-;; delay is variable -- but we don't want to reallocate the delay buffer, so
-;; use an additional parameter for the maximum allowable delay. The sound will
-;; be written into the buffer every sample, but read using linear
-;; interpolation. As in tapv, duplicate the sample at the first and last
-;; locations in the buffer.
-;;
-(NAME "alpassvv")
-(ARGUMENTS ("sound_type" "input") ("sound_type" "delaysnd") ("sound_type" "feedback")
- ("double" "maxdelay"))
-(START (MAX input delaysnd))
-(STATE ("float" "delay_scale_factor" "(float) (input->sr * delaysnd->scale)")
- ("long" "buflen" "MAX(2, (long) (input->sr * maxdelay + 2.5))")
- ("sample_type *" "delaybuf"
- "(sample_type *) calloc (susp->buflen + 1, sizeof(sample_type))")
- ("sample_type *" "delayptr" "susp->delaybuf")
-;; since we allocate one extra sample, endptr points to the last sample
- ("sample_type *" "endptr" "susp->delaybuf + susp->buflen"))
-(CONSTANT "delaylen" "endptr" "delay_scale_factor")
-(NOT-REGISTER delaybuf)
-(LINEAR input)
-(TERMINATE (MIN input))
-(INNER-LOOP-LOCALS " register sample_type y, z, delaysamp;
- register int delayi;
- register sample_type *yptr;\n")
-(INNER-LOOP "
- /* compute where to read y, we want y to be delay_snd samples
- * after delay_ptr, where we write the new sample. First,
- * conver from seconds to samples. Note: don't use actual sound_type
- * names in comments! The translator isn't smart enough.
- */
- register sample_type fb = feedback;
- delaysamp = delaysnd * delay_scale_factor;
- delayi = (int) delaysamp; /* get integer part */
- delaysamp = delaysamp - delayi; /* get phase */
- yptr = delayptr + buflen - (delayi + 1);
- if (yptr >= endptr) yptr -= buflen;
- /* now get y, the out-put of the delay, using interpolation */
- /* note that as phase increases, we use more of yptr[0] because
- positive phase means longer buffer means read earlier sample */
- y = (float) ((yptr[0] * delaysamp) + (yptr[1] * (1.0 - delaysamp)));
- /* WARNING: no check to keep delaysamp in range, so do this in LISP */
-
- *delayptr++ = z = (sample_type) (fb * y + input);
- /* Time out to update the buffer:
- * this is a tricky buffer: buffer[0] == buffer[bufflen]
- * the logical length is bufflen, but the actual length
- * is bufflen + 1 to allow for a repeated sample at the
- * end. This allows for efficient interpolation.
- */
- if (delayptr > endptr) {
- delayptr = susp->delaybuf;
- *delayptr++ = *endptr;
- }
- output = (sample_type) (y - fb * z);")
-(FINALIZATION "free(susp->delaybuf);")
-)
-
diff --git a/lib-src/libnyquist/tran/alpassvv.c b/lib-src/libnyquist/tran/alpassvv.c
deleted file mode 100644
index eb55b86..0000000
--- a/lib-src/libnyquist/tran/alpassvv.c
+++ /dev/null
@@ -1,645 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "alpassvv.h"
-
-void alpassvv_free();
-
-
-typedef struct alpassvv_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- sound_type input;
- long input_cnt;
- sample_block_values_type input_ptr;
- sound_type delaysnd;
- long delaysnd_cnt;
- sample_block_values_type delaysnd_ptr;
- sound_type feedback;
- long feedback_cnt;
- sample_block_values_type feedback_ptr;
-
- float delay_scale_factor;
- long buflen;
- sample_type *delaybuf;
- sample_type *delayptr;
- sample_type *endptr;
-} alpassvv_susp_node, *alpassvv_susp_type;
-
-
-void alpassvv_nnn_fetch(register alpassvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register float delay_scale_factor_reg;
- register long buflen_reg;
- register sample_type * delayptr_reg;
- register sample_type * endptr_reg;
- register sample_block_values_type feedback_ptr_reg;
- register sample_block_values_type delaysnd_ptr_reg;
- register sample_block_values_type input_ptr_reg;
- falloc_sample_block(out, "alpassvv_nnn_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the input input sample block: */
- susp_check_term_samples(input, input_ptr, input_cnt);
- togo = MIN(togo, susp->input_cnt);
-
- /* don't run past the delaysnd input sample block: */
- susp_check_samples(delaysnd, delaysnd_ptr, delaysnd_cnt);
- togo = MIN(togo, susp->delaysnd_cnt);
-
- /* don't run past the feedback input sample block: */
- susp_check_samples(feedback, feedback_ptr, feedback_cnt);
- togo = MIN(togo, susp->feedback_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
- n = togo;
- delay_scale_factor_reg = susp->delay_scale_factor;
- buflen_reg = susp->buflen;
- delayptr_reg = susp->delayptr;
- endptr_reg = susp->endptr;
- feedback_ptr_reg = susp->feedback_ptr;
- delaysnd_ptr_reg = susp->delaysnd_ptr;
- input_ptr_reg = susp->input_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- register sample_type y, z, delaysamp;
- register int delayi;
- register sample_type *yptr;
-
- /* compute where to read y, we want y to be delay_snd samples
- * after delay_ptr, where we write the new sample. First,
- * conver from seconds to samples. Note: don't use actual sound_type
- * names in comments! The translator isn't smart enough.
- */
- register sample_type fb = *feedback_ptr_reg++;
- delaysamp = *delaysnd_ptr_reg++ * delay_scale_factor_reg;
- delayi = (int) delaysamp; /* get integer part */
- delaysamp = delaysamp - delayi; /* get phase */
- yptr = delayptr_reg + buflen_reg - (delayi + 1);
- if (yptr >= endptr_reg) yptr -= buflen_reg;
- /* now get y, the out-put of the delay, using interpolation */
- /* note that as phase increases, we use more of yptr[0] because
- positive phase means longer buffer means read earlier sample */
- y = (float) ((yptr[0] * delaysamp) + (yptr[1] * (1.0 - delaysamp)));
- /* WARNING: no check to keep delaysamp in range, so do this in LISP */
-
- *delayptr_reg++ = z = (sample_type) (fb * y + *input_ptr_reg++);
- /* Time out to update the buffer:
- * this is a tricky buffer: buffer[0] == buffer[bufflen]
- * the logical length is bufflen, but the actual length
- * is bufflen + 1 to allow for a repeated sample at the
- * end. This allows for efficient interpolation.
- */
- if (delayptr_reg > endptr_reg) {
- delayptr_reg = susp->delaybuf;
- *delayptr_reg++ = *endptr_reg;
- }
- *out_ptr_reg++ = (sample_type) (y - fb * z);;
- } while (--n); /* inner loop */
-
- susp->buflen = buflen_reg;
- susp->delayptr = delayptr_reg;
- /* using feedback_ptr_reg is a bad idea on RS/6000: */
- susp->feedback_ptr += togo;
- /* using delaysnd_ptr_reg is a bad idea on RS/6000: */
- susp->delaysnd_ptr += togo;
- /* using input_ptr_reg is a bad idea on RS/6000: */
- susp->input_ptr += togo;
- out_ptr += togo;
- susp_took(input_cnt, togo);
- susp_took(delaysnd_cnt, togo);
- susp_took(feedback_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
-} /* alpassvv_nnn_fetch */
-
-
-void alpassvv_nns_fetch(register alpassvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register float delay_scale_factor_reg;
- register long buflen_reg;
- register sample_type * delayptr_reg;
- register sample_type * endptr_reg;
- register sample_type feedback_scale_reg = susp->feedback->scale;
- register sample_block_values_type feedback_ptr_reg;
- register sample_block_values_type delaysnd_ptr_reg;
- register sample_block_values_type input_ptr_reg;
- falloc_sample_block(out, "alpassvv_nns_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the input input sample block: */
- susp_check_term_samples(input, input_ptr, input_cnt);
- togo = MIN(togo, susp->input_cnt);
-
- /* don't run past the delaysnd input sample block: */
- susp_check_samples(delaysnd, delaysnd_ptr, delaysnd_cnt);
- togo = MIN(togo, susp->delaysnd_cnt);
-
- /* don't run past the feedback input sample block: */
- susp_check_samples(feedback, feedback_ptr, feedback_cnt);
- togo = MIN(togo, susp->feedback_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
- n = togo;
- delay_scale_factor_reg = susp->delay_scale_factor;
- buflen_reg = susp->buflen;
- delayptr_reg = susp->delayptr;
- endptr_reg = susp->endptr;
- feedback_ptr_reg = susp->feedback_ptr;
- delaysnd_ptr_reg = susp->delaysnd_ptr;
- input_ptr_reg = susp->input_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- register sample_type y, z, delaysamp;
- register int delayi;
- register sample_type *yptr;
-
- /* compute where to read y, we want y to be delay_snd samples
- * after delay_ptr, where we write the new sample. First,
- * conver from seconds to samples. Note: don't use actual sound_type
- * names in comments! The translator isn't smart enough.
- */
- register sample_type fb = (feedback_scale_reg * *feedback_ptr_reg++);
- delaysamp = *delaysnd_ptr_reg++ * delay_scale_factor_reg;
- delayi = (int) delaysamp; /* get integer part */
- delaysamp = delaysamp - delayi; /* get phase */
- yptr = delayptr_reg + buflen_reg - (delayi + 1);
- if (yptr >= endptr_reg) yptr -= buflen_reg;
- /* now get y, the out-put of the delay, using interpolation */
- /* note that as phase increases, we use more of yptr[0] because
- positive phase means longer buffer means read earlier sample */
- y = (float) ((yptr[0] * delaysamp) + (yptr[1] * (1.0 - delaysamp)));
- /* WARNING: no check to keep delaysamp in range, so do this in LISP */
-
- *delayptr_reg++ = z = (sample_type) (fb * y + *input_ptr_reg++);
- /* Time out to update the buffer:
- * this is a tricky buffer: buffer[0] == buffer[bufflen]
- * the logical length is bufflen, but the actual length
- * is bufflen + 1 to allow for a repeated sample at the
- * end. This allows for efficient interpolation.
- */
- if (delayptr_reg > endptr_reg) {
- delayptr_reg = susp->delaybuf;
- *delayptr_reg++ = *endptr_reg;
- }
- *out_ptr_reg++ = (sample_type) (y - fb * z);;
- } while (--n); /* inner loop */
-
- susp->buflen = buflen_reg;
- susp->delayptr = delayptr_reg;
- /* using feedback_ptr_reg is a bad idea on RS/6000: */
- susp->feedback_ptr += togo;
- /* using delaysnd_ptr_reg is a bad idea on RS/6000: */
- susp->delaysnd_ptr += togo;
- /* using input_ptr_reg is a bad idea on RS/6000: */
- susp->input_ptr += togo;
- out_ptr += togo;
- susp_took(input_cnt, togo);
- susp_took(delaysnd_cnt, togo);
- susp_took(feedback_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
-} /* alpassvv_nns_fetch */
-
-
-void alpassvv_nsn_fetch(register alpassvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register float delay_scale_factor_reg;
- register long buflen_reg;
- register sample_type * delayptr_reg;
- register sample_type * endptr_reg;
- register sample_block_values_type feedback_ptr_reg;
- register sample_type delaysnd_scale_reg = susp->delaysnd->scale;
- register sample_block_values_type delaysnd_ptr_reg;
- register sample_block_values_type input_ptr_reg;
- falloc_sample_block(out, "alpassvv_nsn_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the input input sample block: */
- susp_check_term_samples(input, input_ptr, input_cnt);
- togo = MIN(togo, susp->input_cnt);
-
- /* don't run past the delaysnd input sample block: */
- susp_check_samples(delaysnd, delaysnd_ptr, delaysnd_cnt);
- togo = MIN(togo, susp->delaysnd_cnt);
-
- /* don't run past the feedback input sample block: */
- susp_check_samples(feedback, feedback_ptr, feedback_cnt);
- togo = MIN(togo, susp->feedback_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
- n = togo;
- delay_scale_factor_reg = susp->delay_scale_factor;
- buflen_reg = susp->buflen;
- delayptr_reg = susp->delayptr;
- endptr_reg = susp->endptr;
- feedback_ptr_reg = susp->feedback_ptr;
- delaysnd_ptr_reg = susp->delaysnd_ptr;
- input_ptr_reg = susp->input_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- register sample_type y, z, delaysamp;
- register int delayi;
- register sample_type *yptr;
-
- /* compute where to read y, we want y to be delay_snd samples
- * after delay_ptr, where we write the new sample. First,
- * conver from seconds to samples. Note: don't use actual sound_type
- * names in comments! The translator isn't smart enough.
- */
- register sample_type fb = *feedback_ptr_reg++;
- delaysamp = (delaysnd_scale_reg * *delaysnd_ptr_reg++) * delay_scale_factor_reg;
- delayi = (int) delaysamp; /* get integer part */
- delaysamp = delaysamp - delayi; /* get phase */
- yptr = delayptr_reg + buflen_reg - (delayi + 1);
- if (yptr >= endptr_reg) yptr -= buflen_reg;
- /* now get y, the out-put of the delay, using interpolation */
- /* note that as phase increases, we use more of yptr[0] because
- positive phase means longer buffer means read earlier sample */
- y = (float) ((yptr[0] * delaysamp) + (yptr[1] * (1.0 - delaysamp)));
- /* WARNING: no check to keep delaysamp in range, so do this in LISP */
-
- *delayptr_reg++ = z = (sample_type) (fb * y + *input_ptr_reg++);
- /* Time out to update the buffer:
- * this is a tricky buffer: buffer[0] == buffer[bufflen]
- * the logical length is bufflen, but the actual length
- * is bufflen + 1 to allow for a repeated sample at the
- * end. This allows for efficient interpolation.
- */
- if (delayptr_reg > endptr_reg) {
- delayptr_reg = susp->delaybuf;
- *delayptr_reg++ = *endptr_reg;
- }
- *out_ptr_reg++ = (sample_type) (y - fb * z);;
- } while (--n); /* inner loop */
-
- susp->buflen = buflen_reg;
- susp->delayptr = delayptr_reg;
- /* using feedback_ptr_reg is a bad idea on RS/6000: */
- susp->feedback_ptr += togo;
- /* using delaysnd_ptr_reg is a bad idea on RS/6000: */
- susp->delaysnd_ptr += togo;
- /* using input_ptr_reg is a bad idea on RS/6000: */
- susp->input_ptr += togo;
- out_ptr += togo;
- susp_took(input_cnt, togo);
- susp_took(delaysnd_cnt, togo);
- susp_took(feedback_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
-} /* alpassvv_nsn_fetch */
-
-
-void alpassvv_nss_fetch(register alpassvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register float delay_scale_factor_reg;
- register long buflen_reg;
- register sample_type * delayptr_reg;
- register sample_type * endptr_reg;
- register sample_type feedback_scale_reg = susp->feedback->scale;
- register sample_block_values_type feedback_ptr_reg;
- register sample_type delaysnd_scale_reg = susp->delaysnd->scale;
- register sample_block_values_type delaysnd_ptr_reg;
- register sample_block_values_type input_ptr_reg;
- falloc_sample_block(out, "alpassvv_nss_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the input input sample block: */
- susp_check_term_samples(input, input_ptr, input_cnt);
- togo = MIN(togo, susp->input_cnt);
-
- /* don't run past the delaysnd input sample block: */
- susp_check_samples(delaysnd, delaysnd_ptr, delaysnd_cnt);
- togo = MIN(togo, susp->delaysnd_cnt);
-
- /* don't run past the feedback input sample block: */
- susp_check_samples(feedback, feedback_ptr, feedback_cnt);
- togo = MIN(togo, susp->feedback_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
- n = togo;
- delay_scale_factor_reg = susp->delay_scale_factor;
- buflen_reg = susp->buflen;
- delayptr_reg = susp->delayptr;
- endptr_reg = susp->endptr;
- feedback_ptr_reg = susp->feedback_ptr;
- delaysnd_ptr_reg = susp->delaysnd_ptr;
- input_ptr_reg = susp->input_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- register sample_type y, z, delaysamp;
- register int delayi;
- register sample_type *yptr;
-
- /* compute where to read y, we want y to be delay_snd samples
- * after delay_ptr, where we write the new sample. First,
- * conver from seconds to samples. Note: don't use actual sound_type
- * names in comments! The translator isn't smart enough.
- */
- register sample_type fb = (feedback_scale_reg * *feedback_ptr_reg++);
- delaysamp = (delaysnd_scale_reg * *delaysnd_ptr_reg++) * delay_scale_factor_reg;
- delayi = (int) delaysamp; /* get integer part */
- delaysamp = delaysamp - delayi; /* get phase */
- yptr = delayptr_reg + buflen_reg - (delayi + 1);
- if (yptr >= endptr_reg) yptr -= buflen_reg;
- /* now get y, the out-put of the delay, using interpolation */
- /* note that as phase increases, we use more of yptr[0] because
- positive phase means longer buffer means read earlier sample */
- y = (float) ((yptr[0] * delaysamp) + (yptr[1] * (1.0 - delaysamp)));
- /* WARNING: no check to keep delaysamp in range, so do this in LISP */
-
- *delayptr_reg++ = z = (sample_type) (fb * y + *input_ptr_reg++);
- /* Time out to update the buffer:
- * this is a tricky buffer: buffer[0] == buffer[bufflen]
- * the logical length is bufflen, but the actual length
- * is bufflen + 1 to allow for a repeated sample at the
- * end. This allows for efficient interpolation.
- */
- if (delayptr_reg > endptr_reg) {
- delayptr_reg = susp->delaybuf;
- *delayptr_reg++ = *endptr_reg;
- }
- *out_ptr_reg++ = (sample_type) (y - fb * z);;
- } while (--n); /* inner loop */
-
- susp->buflen = buflen_reg;
- susp->delayptr = delayptr_reg;
- /* using feedback_ptr_reg is a bad idea on RS/6000: */
- susp->feedback_ptr += togo;
- /* using delaysnd_ptr_reg is a bad idea on RS/6000: */
- susp->delaysnd_ptr += togo;
- /* using input_ptr_reg is a bad idea on RS/6000: */
- susp->input_ptr += togo;
- out_ptr += togo;
- susp_took(input_cnt, togo);
- susp_took(delaysnd_cnt, togo);
- susp_took(feedback_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
-} /* alpassvv_nss_fetch */
-
-
-void alpassvv_toss_fetch(susp, snd_list)
- register alpassvv_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from input up to final_time for this block of zeros */
- while ((round((final_time - susp->input->t0) * susp->input->sr)) >=
- susp->input->current)
- susp_get_samples(input, input_ptr, input_cnt);
- /* fetch samples from delaysnd up to final_time for this block of zeros */
- while ((round((final_time - susp->delaysnd->t0) * susp->delaysnd->sr)) >=
- susp->delaysnd->current)
- susp_get_samples(delaysnd, delaysnd_ptr, delaysnd_cnt);
- /* fetch samples from feedback up to final_time for this block of zeros */
- while ((round((final_time - susp->feedback->t0) * susp->feedback->sr)) >=
- susp->feedback->current)
- susp_get_samples(feedback, feedback_ptr, feedback_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->input->t0) * susp->input->sr -
- (susp->input->current - susp->input_cnt));
- susp->input_ptr += n;
- susp_took(input_cnt, n);
- n = round((final_time - susp->delaysnd->t0) * susp->delaysnd->sr -
- (susp->delaysnd->current - susp->delaysnd_cnt));
- susp->delaysnd_ptr += n;
- susp_took(delaysnd_cnt, n);
- n = round((final_time - susp->feedback->t0) * susp->feedback->sr -
- (susp->feedback->current - susp->feedback_cnt));
- susp->feedback_ptr += n;
- susp_took(feedback_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void alpassvv_mark(alpassvv_susp_type susp)
-{
- sound_xlmark(susp->input);
- sound_xlmark(susp->delaysnd);
- sound_xlmark(susp->feedback);
-}
-
-
-void alpassvv_free(alpassvv_susp_type susp)
-{
-free(susp->delaybuf); sound_unref(susp->input);
- sound_unref(susp->delaysnd);
- sound_unref(susp->feedback);
- ffree_generic(susp, sizeof(alpassvv_susp_node), "alpassvv_free");
-}
-
-
-void alpassvv_print_tree(alpassvv_susp_type susp, int n)
-{
- indent(n);
- stdputstr("input:");
- sound_print_tree_1(susp->input, n);
-
- indent(n);
- stdputstr("delaysnd:");
- sound_print_tree_1(susp->delaysnd, n);
-
- indent(n);
- stdputstr("feedback:");
- sound_print_tree_1(susp->feedback, n);
-}
-
-
-sound_type snd_make_alpassvv(sound_type input, sound_type delaysnd, sound_type feedback, double maxdelay)
-{
- register alpassvv_susp_type susp;
- rate_type sr = MAX(MAX(input->sr, delaysnd->sr), feedback->sr);
- time_type t0 = MAX(input->t0, delaysnd->t0);
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- /* combine scale factors of linear inputs (INPUT) */
- scale_factor *= input->scale;
- input->scale = 1.0F;
-
- /* try to push scale_factor back to a low sr input */
- if (input->sr < sr) { input->scale = scale_factor; scale_factor = 1.0F; }
-
- falloc_generic(susp, alpassvv_susp_node, "snd_make_alpassvv");
- susp->delay_scale_factor = (float) (input->sr * delaysnd->scale);
- susp->buflen = MAX(2, (long) (input->sr * maxdelay + 2.5));
- susp->delaybuf = (sample_type *) calloc (susp->buflen + 1, sizeof(sample_type));
- susp->delayptr = susp->delaybuf;
- susp->endptr = susp->delaybuf + susp->buflen;
-
- /* select a susp fn based on sample rates */
- interp_desc = (interp_desc << 2) + interp_style(input, sr);
- interp_desc = (interp_desc << 2) + interp_style(delaysnd, sr);
- interp_desc = (interp_desc << 2) + interp_style(feedback, sr);
- switch (interp_desc) {
- case INTERP_nnn: susp->susp.fetch = alpassvv_nnn_fetch; break;
- case INTERP_nns: susp->susp.fetch = alpassvv_nns_fetch; break;
- case INTERP_nsn: susp->susp.fetch = alpassvv_nsn_fetch; break;
- case INTERP_nss: susp->susp.fetch = alpassvv_nss_fetch; break;
- default: snd_badsr(); break;
- }
-
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < input->t0) sound_prepend_zeros(input, t0);
- if (t0 < delaysnd->t0) sound_prepend_zeros(delaysnd, t0);
- if (t0 < feedback->t0) sound_prepend_zeros(feedback, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(input->t0, MIN(delaysnd->t0, min(feedback->t0, t0)));
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = alpassvv_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = alpassvv_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = alpassvv_mark;
- susp->susp.print_tree = alpassvv_print_tree;
- susp->susp.name = "alpassvv";
- susp->susp.log_stop_cnt = UNKNOWN;
- susp->susp.current = 0;
- susp->input = input;
- susp->input_cnt = 0;
- susp->delaysnd = delaysnd;
- susp->delaysnd_cnt = 0;
- susp->feedback = feedback;
- susp->feedback_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_alpassvv(sound_type input, sound_type delaysnd, sound_type feedback, double maxdelay)
-{
- sound_type input_copy = sound_copy(input);
- sound_type delaysnd_copy = sound_copy(delaysnd);
- sound_type feedback_copy = sound_copy(feedback);
- return snd_make_alpassvv(input_copy, delaysnd_copy, feedback_copy, maxdelay);
-}
diff --git a/lib-src/libnyquist/tran/alpassvv.h b/lib-src/libnyquist/tran/alpassvv.h
deleted file mode 100644
index efbc345..0000000
--- a/lib-src/libnyquist/tran/alpassvv.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_alpassvv(sound_type input, sound_type delaysnd, sound_type feedback, double maxdelay);
-sound_type snd_alpassvv(sound_type input, sound_type delaysnd, sound_type feedback, double maxdelay);
- /* LISP: (snd-alpassvv SOUND SOUND SOUND ANYNUM) */
diff --git a/lib-src/libnyquist/tran/amosc.alg b/lib-src/libnyquist/tran/amosc.alg
deleted file mode 100644
index 0103202..0000000
--- a/lib-src/libnyquist/tran/amosc.alg
+++ /dev/null
@@ -1,33 +0,0 @@
-(AMOSC-ALG
-(NAME "amosc")
-(ARGUMENTS ("sound_type" "input") ("double" "step") ("rate_type" "sr")
- ("double" "hz") ("time_type" "t0") ("sound_type" "amod")
- ("double" "phase"))
-(TABLE "input")
-(NOT-IN-INNER-LOOP "input")
-(START (MIN input))
-(STATE
- ("double" "ph_incr" "0")
- ("table_type" "the_table" "sound_to_table(input)")
- ("sample_type *" "table_ptr" "susp->the_table->samples")
- ("double" "table_len" "susp->the_table->length")
- ("double" "phase" "compute_phase(phase, step, (long) susp->table_len,
- input->sr, sr, hz, &susp->ph_incr)") )
-(ALWAYS-SCALE amod)
-(TERMINATE (MIN amod))
-(LOGICAL-STOP (MIN amod))
-(INNER-LOOP "
- long table_index = (long) phase;
- double x1 = (double) (table_ptr[table_index]);
- output = (sample_type) (x1 + (phase - table_index) *
- (table_ptr[table_index + 1] - x1)) * amod;
- phase += ph_incr;
- while (phase > table_len) phase -= table_len;
-")
-(CONSTANT "ph_incr" "table_len" "table_ptr" "the_table")
-
-(SAMPLE-RATE "sr")
-(FINALIZATION " table_unref(susp->the_table);
-")
-)
-
diff --git a/lib-src/libnyquist/tran/amosc.c b/lib-src/libnyquist/tran/amosc.c
deleted file mode 100644
index c3bb534..0000000
--- a/lib-src/libnyquist/tran/amosc.c
+++ /dev/null
@@ -1,227 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "amosc.h"
-
-void amosc_free();
-
-
-typedef struct amosc_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type amod;
- long amod_cnt;
- sample_block_values_type amod_ptr;
-
- double ph_incr;
- table_type the_table;
- sample_type *table_ptr;
- double table_len;
- double phase;
-} amosc_susp_node, *amosc_susp_type;
-
-
-void amosc_s_fetch(register amosc_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double ph_incr_reg;
- register sample_type * table_ptr_reg;
- register double table_len_reg;
- register double phase_reg;
- register sample_type amod_scale_reg = susp->amod->scale;
- register sample_block_values_type amod_ptr_reg;
- falloc_sample_block(out, "amosc_s_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the amod input sample block: */
- susp_check_term_log_samples(amod, amod_ptr, amod_cnt);
- togo = MIN(togo, susp->amod_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- ph_incr_reg = susp->ph_incr;
- table_ptr_reg = susp->table_ptr;
- table_len_reg = susp->table_len;
- phase_reg = susp->phase;
- amod_ptr_reg = susp->amod_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-
- long table_index = (long) phase_reg;
- double x1 = (double) (table_ptr_reg[table_index]);
- *out_ptr_reg++ = (sample_type) (x1 + (phase_reg - table_index) *
- (table_ptr_reg[table_index + 1] - x1)) * (amod_scale_reg * *amod_ptr_reg++);
- phase_reg += ph_incr_reg;
- while (phase_reg > table_len_reg) phase_reg -= table_len_reg;
-;
- } while (--n); /* inner loop */
-
- susp->phase = phase_reg;
- /* using amod_ptr_reg is a bad idea on RS/6000: */
- susp->amod_ptr += togo;
- out_ptr += togo;
- susp_took(amod_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* amosc_s_fetch */
-
-
-void amosc_toss_fetch(susp, snd_list)
- register amosc_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from amod up to final_time for this block of zeros */
- while ((round((final_time - susp->amod->t0) * susp->amod->sr)) >=
- susp->amod->current)
- susp_get_samples(amod, amod_ptr, amod_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->amod->t0) * susp->amod->sr -
- (susp->amod->current - susp->amod_cnt));
- susp->amod_ptr += n;
- susp_took(amod_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void amosc_mark(amosc_susp_type susp)
-{
- sound_xlmark(susp->amod);
-}
-
-
-void amosc_free(amosc_susp_type susp)
-{
- table_unref(susp->the_table);
- sound_unref(susp->amod);
- ffree_generic(susp, sizeof(amosc_susp_node), "amosc_free");
-}
-
-
-void amosc_print_tree(amosc_susp_type susp, int n)
-{
- indent(n);
- stdputstr("amod:");
- sound_print_tree_1(susp->amod, n);
-}
-
-
-sound_type snd_make_amosc(sound_type input, double step, rate_type sr, double hz, time_type t0, sound_type amod, double phase)
-{
- register amosc_susp_type susp;
- /* sr specified as input parameter */
- /* t0 specified as input parameter */
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- falloc_generic(susp, amosc_susp_node, "snd_make_amosc");
- susp->ph_incr = 0;
- susp->the_table = sound_to_table(input);
- susp->table_ptr = susp->the_table->samples;
- susp->table_len = susp->the_table->length;
- susp->phase = compute_phase(phase, step, (long) susp->table_len,
- input->sr, sr, hz, &susp->ph_incr);
- susp->susp.fetch = amosc_s_fetch;
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < amod->t0) sound_prepend_zeros(amod, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(amod->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = amosc_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = amosc_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = amosc_mark;
- susp->susp.print_tree = amosc_print_tree;
- susp->susp.name = "amosc";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(amod);
- susp->susp.current = 0;
- susp->amod = amod;
- susp->amod_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_amosc(sound_type input, double step, rate_type sr, double hz, time_type t0, sound_type amod, double phase)
-{
- sound_type amod_copy = sound_copy(amod);
- return snd_make_amosc(input, step, sr, hz, t0, amod_copy, phase);
-}
diff --git a/lib-src/libnyquist/tran/amosc.h b/lib-src/libnyquist/tran/amosc.h
deleted file mode 100644
index cc798f9..0000000
--- a/lib-src/libnyquist/tran/amosc.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_amosc(sound_type input, double step, rate_type sr, double hz, time_type t0, sound_type amod, double phase);
-sound_type snd_amosc(sound_type input, double step, rate_type sr, double hz, time_type t0, sound_type amod, double phase);
- /* LISP: (snd-amosc SOUND ANYNUM ANYNUM ANYNUM ANYNUM SOUND ANYNUM) */
diff --git a/lib-src/libnyquist/tran/areson.alg b/lib-src/libnyquist/tran/areson.alg
deleted file mode 100644
index a26287e..0000000
--- a/lib-src/libnyquist/tran/areson.alg
+++ /dev/null
@@ -1,24 +0,0 @@
-(ARESON-ALG
-(NAME "areson")
-(ARGUMENTS ("sound_type" "input") ("double" "hz") ("double" "bw")
- ("int" "normalization"))
-(START (MIN input))
-(TERMINATE (MIN input))
-(LOGICAL-STOP (MIN input))
-(LINEAR input)
-(STATE ("double" "c3" "exp(bw * -PI2 / input->sr)")
- ("double" "c3p1" "susp->c3 + 1.0" TEMP)
- ("double" "c3t4" "susp->c3 * 4.0" TEMP)
- ("double" "omc3" "1.0 - susp->c3" TEMP)
- ("double" "c2" "c3t4 * cos(hz * PI2 / input->sr) / c3p1")
- ("double" "c1" "(normalization == 0 ? 0.0 :
- (normalization == 1 ? 1.0 - omc3 * sqrt(1.0 - susp->c2 * susp->c2 / c3t4) :
- 1.0 - sqrt(c3p1 * c3p1 - susp->c2 * susp->c2) * omc3 / c3p1))")
- ("double" "y1" "0.0")
- ("double" "y2" "0.0"))
-(CONSTANT "c1" "c2" "c3")
-(INNER-LOOP-LOCALS " register double y0, current;")
-(INNER-LOOP "current = input;
- output = (sample_type) (y0 = c1 * current + c2 * y1 - c3 * y2);
- y2 = y1; y1 = y0 - current")
-)
diff --git a/lib-src/libnyquist/tran/areson.c b/lib-src/libnyquist/tran/areson.c
deleted file mode 100644
index 10fd190..0000000
--- a/lib-src/libnyquist/tran/areson.c
+++ /dev/null
@@ -1,237 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "areson.h"
-
-void areson_free();
-
-
-typedef struct areson_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type input;
- long input_cnt;
- sample_block_values_type input_ptr;
-
- double c3;
- double c2;
- double c1;
- double y1;
- double y2;
-} areson_susp_node, *areson_susp_type;
-
-
-void areson_n_fetch(register areson_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double c3_reg;
- register double c2_reg;
- register double c1_reg;
- register double y1_reg;
- register double y2_reg;
- register sample_block_values_type input_ptr_reg;
- falloc_sample_block(out, "areson_n_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the input input sample block: */
- susp_check_term_log_samples(input, input_ptr, input_cnt);
- togo = MIN(togo, susp->input_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- c3_reg = susp->c3;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- input_ptr_reg = susp->input_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- register double y0, current;current = *input_ptr_reg++;
- *out_ptr_reg++ = (sample_type) (y0 = c1_reg * current + c2_reg * y1_reg - c3_reg * y2_reg);
- y2_reg = y1_reg; y1_reg = y0 - current;
- } while (--n); /* inner loop */
-
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- /* using input_ptr_reg is a bad idea on RS/6000: */
- susp->input_ptr += togo;
- out_ptr += togo;
- susp_took(input_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* areson_n_fetch */
-
-
-void areson_toss_fetch(susp, snd_list)
- register areson_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from input up to final_time for this block of zeros */
- while ((round((final_time - susp->input->t0) * susp->input->sr)) >=
- susp->input->current)
- susp_get_samples(input, input_ptr, input_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->input->t0) * susp->input->sr -
- (susp->input->current - susp->input_cnt));
- susp->input_ptr += n;
- susp_took(input_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void areson_mark(areson_susp_type susp)
-{
- sound_xlmark(susp->input);
-}
-
-
-void areson_free(areson_susp_type susp)
-{
- sound_unref(susp->input);
- ffree_generic(susp, sizeof(areson_susp_node), "areson_free");
-}
-
-
-void areson_print_tree(areson_susp_type susp, int n)
-{
- indent(n);
- stdputstr("input:");
- sound_print_tree_1(susp->input, n);
-}
-
-
-sound_type snd_make_areson(sound_type input, double hz, double bw, int normalization)
-{
- register areson_susp_type susp;
- double c3p1;
- double c3t4;
- double omc3;
- rate_type sr = input->sr;
- time_type t0 = input->t0;
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- /* combine scale factors of linear inputs (INPUT) */
- scale_factor *= input->scale;
- input->scale = 1.0F;
-
- /* try to push scale_factor back to a low sr input */
- if (input->sr < sr) { input->scale = scale_factor; scale_factor = 1.0F; }
-
- falloc_generic(susp, areson_susp_node, "snd_make_areson");
- susp->c3 = exp(bw * -PI2 / input->sr);
- c3p1 = susp->c3 + 1.0;
- c3t4 = susp->c3 * 4.0;
- omc3 = 1.0 - susp->c3;
- susp->c2 = c3t4 * cos(hz * PI2 / input->sr) / c3p1;
- susp->c1 = (normalization == 0 ? 0.0 :
- (normalization == 1 ? 1.0 - omc3 * sqrt(1.0 - susp->c2 * susp->c2 / c3t4) :
- 1.0 - sqrt(c3p1 * c3p1 - susp->c2 * susp->c2) * omc3 / c3p1));
- susp->y1 = 0.0;
- susp->y2 = 0.0;
- susp->susp.fetch = areson_n_fetch;
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < input->t0) sound_prepend_zeros(input, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(input->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = areson_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = areson_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = areson_mark;
- susp->susp.print_tree = areson_print_tree;
- susp->susp.name = "areson";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(input);
- susp->susp.current = 0;
- susp->input = input;
- susp->input_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_areson(sound_type input, double hz, double bw, int normalization)
-{
- sound_type input_copy = sound_copy(input);
- return snd_make_areson(input_copy, hz, bw, normalization);
-}
diff --git a/lib-src/libnyquist/tran/areson.h b/lib-src/libnyquist/tran/areson.h
deleted file mode 100644
index fa7c94f..0000000
--- a/lib-src/libnyquist/tran/areson.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_areson(sound_type input, double hz, double bw, int normalization);
-sound_type snd_areson(sound_type input, double hz, double bw, int normalization);
- /* LISP: (snd-areson SOUND ANYNUM ANYNUM FIXNUM) */
diff --git a/lib-src/libnyquist/tran/aresoncv.alg b/lib-src/libnyquist/tran/aresoncv.alg
deleted file mode 100644
index 9a0d4dd..0000000
--- a/lib-src/libnyquist/tran/aresoncv.alg
+++ /dev/null
@@ -1,35 +0,0 @@
-(ARESONCV-ALG
-(NAME "aresoncv")
-(ARGUMENTS ("sound_type" "s1") ("double" "hz") ("sound_type" "bw")
- ("int" "normalization"))
-(INLINE-INTERPOLATION T)
-(LINEAR s1)
-(ALWAYS-SCALE bw)
-(START (MAX s1 bw))
-(TERMINATE (MIN s1 bw))
-(LOGICAL-STOP (MIN s1))
-(SAMPLE-RATE (MAX s1))
-(STEP-FUNCTION bw)
-(STATE ("double" "c3co" "0.0")
- ("double" "coshz" "cos(hz * PI2 / s1->sr)")
- ("double" "c2" "0.0")
- ("double" "c1" "0.0")
- ("int" "normalization" "normalization")
- ("double" "y1" "0.0")
- ("double" "y2" "0.0;
- bw->scale = (float) (bw->scale * (-PI2 / s1->sr))"))
-(DEPENDS ("c3co" "hz" "exp(bw)")
- ("c3p1" "hz" "c3co + 1.0" TEMP "double")
- ("c3t4" "hz" "c3co * 4.0" TEMP "double")
- ("omc3" "hz" "1.0 - c3co" TEMP "double")
- ("c2" "hz" "c3t4 * coshz / c3p1")
- ("c1" "hz" "(normalization == 0 ? 0.0 :
- (normalization == 1 ? 1.0 - omc3 * sqrt(1.0 - c2 * c2 / c3t4) :
- 1.0 - sqrt(c3p1 * c3p1 - c2 * c2) * omc3 / c3p1))"))
-(CONSTANT "c1" "c2" "c3co" "coshz" "normalization")
-(FORCE-INTO-REGISTER normalization coshz scale1)
-(INNER-LOOP-LOCALS " register double y0, current;")
-(INNER-LOOP "current = s1;
- output = (float) (y0 = c1 * current + c2 * y1 - c3co * y2);
- y2 = y1; y1 = y0 - current")
-)
diff --git a/lib-src/libnyquist/tran/aresoncv.c b/lib-src/libnyquist/tran/aresoncv.c
deleted file mode 100644
index 386f16d..0000000
--- a/lib-src/libnyquist/tran/aresoncv.c
+++ /dev/null
@@ -1,551 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "aresoncv.h"
-
-void aresoncv_free();
-
-
-typedef struct aresoncv_susp_struct {
- snd_susp_node susp;
- boolean started;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type s1;
- long s1_cnt;
- sample_block_values_type s1_ptr;
- sound_type bw;
- long bw_cnt;
- sample_block_values_type bw_ptr;
-
- /* support for interpolation of bw */
- sample_type bw_x1_sample;
- double bw_pHaSe;
- double bw_pHaSe_iNcR;
-
- /* support for ramp between samples of bw */
- double output_per_bw;
- long bw_n;
-
- double c3co;
- double coshz;
- double c2;
- double c1;
- int normalization;
- double y1;
- double y2;
-} aresoncv_susp_node, *aresoncv_susp_type;
-
-
-void aresoncv_ns_fetch(register aresoncv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double c3co_reg;
- register double coshz_reg;
- register double c2_reg;
- register double c1_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register sample_type bw_scale_reg = susp->bw->scale;
- register sample_block_values_type bw_ptr_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "aresoncv_ns_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past the bw input sample block: */
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
- togo = MIN(togo, susp->bw_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- c3co_reg = susp->c3co;
- coshz_reg = susp->coshz;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- bw_ptr_reg = susp->bw_ptr;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- register double y0, current;current = *s1_ptr_reg++;
- *out_ptr_reg++ = (float) (y0 = c1_reg * current + c2_reg * y1_reg - c3co_reg * y2_reg);
- y2_reg = y1_reg; y1_reg = y0 - current;
- } while (--n); /* inner loop */
-
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- /* using bw_ptr_reg is a bad idea on RS/6000: */
- susp->bw_ptr += togo;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp_took(bw_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* aresoncv_ns_fetch */
-
-
-void aresoncv_ni_fetch(register aresoncv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double c3co_reg;
- register double coshz_reg;
- register double c2_reg;
- register double c1_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register double bw_pHaSe_iNcR_rEg = susp->bw_pHaSe_iNcR;
- register double bw_pHaSe_ReG;
- register sample_type bw_x1_sample_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "aresoncv_ni_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
- susp->bw_x1_sample = susp_fetch_sample(bw, bw_ptr, bw_cnt);
- }
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- c3co_reg = susp->c3co;
- coshz_reg = susp->coshz;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- bw_pHaSe_ReG = susp->bw_pHaSe;
- bw_x1_sample_reg = susp->bw_x1_sample;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- register double y0, current; if (bw_pHaSe_ReG >= 1.0) {
-/* fixup-depends bw */
- /* pick up next sample as bw_x1_sample: */
- susp->bw_ptr++;
- susp_took(bw_cnt, 1);
- bw_pHaSe_ReG -= 1.0;
- susp_check_term_samples_break(bw, bw_ptr, bw_cnt, bw_x1_sample_reg);
- bw_x1_sample_reg = susp_current_sample(bw, bw_ptr);
- }
-current = *s1_ptr_reg++;
- *out_ptr_reg++ = (float) (y0 = c1_reg * current + c2_reg * y1_reg - c3co_reg * y2_reg);
- y2_reg = y1_reg; y1_reg = y0 - current;
- bw_pHaSe_ReG += bw_pHaSe_iNcR_rEg;
- } while (--n); /* inner loop */
-
- togo -= n;
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- susp->bw_pHaSe = bw_pHaSe_ReG;
- susp->bw_x1_sample = bw_x1_sample_reg;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* aresoncv_ni_fetch */
-
-
-void aresoncv_nr_fetch(register aresoncv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- sample_type bw_val;
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double c3co_reg;
- register double coshz_reg;
- register double c2_reg;
- register double c1_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "aresoncv_nr_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp->bw_pHaSe = 1.0;
- }
-
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* grab next bw_x1_sample when phase goes past 1.0; */
- /* use bw_n (computed below) to avoid roundoff errors: */
- if (susp->bw_n <= 0) {
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
- susp->bw_x1_sample = susp_fetch_sample(bw, bw_ptr, bw_cnt);
- susp->bw_pHaSe -= 1.0;
- /* bw_n gets number of samples before phase exceeds 1.0: */
- susp->bw_n = (long) ((1.0 - susp->bw_pHaSe) *
- susp->output_per_bw);
- }
- togo = MIN(togo, susp->bw_n);
- bw_val = susp->bw_x1_sample;
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- c3co_reg = susp->c3co;
- coshz_reg = susp->coshz;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- register double y0, current;current = *s1_ptr_reg++;
- *out_ptr_reg++ = (float) (y0 = c1_reg * current + c2_reg * y1_reg - c3co_reg * y2_reg);
- y2_reg = y1_reg; y1_reg = y0 - current;
- } while (--n); /* inner loop */
-
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp->bw_pHaSe += togo * susp->bw_pHaSe_iNcR;
- susp->bw_n -= togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* aresoncv_nr_fetch */
-
-
-void aresoncv_toss_fetch(susp, snd_list)
- register aresoncv_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from s1 up to final_time for this block of zeros */
- while ((round((final_time - susp->s1->t0) * susp->s1->sr)) >=
- susp->s1->current)
- susp_get_samples(s1, s1_ptr, s1_cnt);
- /* fetch samples from bw up to final_time for this block of zeros */
- while ((round((final_time - susp->bw->t0) * susp->bw->sr)) >=
- susp->bw->current)
- susp_get_samples(bw, bw_ptr, bw_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->s1->t0) * susp->s1->sr -
- (susp->s1->current - susp->s1_cnt));
- susp->s1_ptr += n;
- susp_took(s1_cnt, n);
- n = round((final_time - susp->bw->t0) * susp->bw->sr -
- (susp->bw->current - susp->bw_cnt));
- susp->bw_ptr += n;
- susp_took(bw_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void aresoncv_mark(aresoncv_susp_type susp)
-{
- sound_xlmark(susp->s1);
- sound_xlmark(susp->bw);
-}
-
-
-void aresoncv_free(aresoncv_susp_type susp)
-{
- sound_unref(susp->s1);
- sound_unref(susp->bw);
- ffree_generic(susp, sizeof(aresoncv_susp_node), "aresoncv_free");
-}
-
-
-void aresoncv_print_tree(aresoncv_susp_type susp, int n)
-{
- indent(n);
- stdputstr("s1:");
- sound_print_tree_1(susp->s1, n);
-
- indent(n);
- stdputstr("bw:");
- sound_print_tree_1(susp->bw, n);
-}
-
-
-sound_type snd_make_aresoncv(sound_type s1, double hz, sound_type bw, int normalization)
-{
- register aresoncv_susp_type susp;
- rate_type sr = s1->sr;
- time_type t0 = MAX(s1->t0, bw->t0);
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- /* combine scale factors of linear inputs (S1) */
- scale_factor *= s1->scale;
- s1->scale = 1.0F;
-
- /* try to push scale_factor back to a low sr input */
- if (s1->sr < sr) { s1->scale = scale_factor; scale_factor = 1.0F; }
-
- falloc_generic(susp, aresoncv_susp_node, "snd_make_aresoncv");
- susp->c3co = 0.0;
- susp->coshz = cos(hz * PI2 / s1->sr);
- susp->c2 = 0.0;
- susp->c1 = 0.0;
- susp->normalization = normalization;
- susp->y1 = 0.0;
- susp->y2 = 0.0;
- bw->scale = (float) (bw->scale * (-PI2 / s1->sr));
-
- /* select a susp fn based on sample rates */
- interp_desc = (interp_desc << 2) + interp_style(s1, sr);
- interp_desc = (interp_desc << 2) + interp_style(bw, sr);
- switch (interp_desc) {
- case INTERP_nn: /* handled below */
- case INTERP_ns: susp->susp.fetch = aresoncv_ns_fetch; break;
- case INTERP_ni: susp->susp.fetch = aresoncv_ni_fetch; break;
- case INTERP_nr: susp->susp.fetch = aresoncv_nr_fetch; break;
- default: snd_badsr(); break;
- }
-
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < s1->t0) sound_prepend_zeros(s1, t0);
- if (t0 < bw->t0) sound_prepend_zeros(bw, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(s1->t0, MIN(bw->t0, t0));
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = aresoncv_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = aresoncv_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = aresoncv_mark;
- susp->susp.print_tree = aresoncv_print_tree;
- susp->susp.name = "aresoncv";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(s1);
- susp->started = false;
- susp->susp.current = 0;
- susp->s1 = s1;
- susp->s1_cnt = 0;
- susp->bw = bw;
- susp->bw_cnt = 0;
- susp->bw_pHaSe = 0.0;
- susp->bw_pHaSe_iNcR = bw->sr / sr;
- susp->bw_n = 0;
- susp->output_per_bw = sr / bw->sr;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_aresoncv(sound_type s1, double hz, sound_type bw, int normalization)
-{
- sound_type s1_copy = sound_copy(s1);
- sound_type bw_copy = sound_copy(bw);
- return snd_make_aresoncv(s1_copy, hz, bw_copy, normalization);
-}
diff --git a/lib-src/libnyquist/tran/aresoncv.h b/lib-src/libnyquist/tran/aresoncv.h
deleted file mode 100644
index 6cf9a0a..0000000
--- a/lib-src/libnyquist/tran/aresoncv.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_aresoncv(sound_type s1, double hz, sound_type bw, int normalization);
-sound_type snd_aresoncv(sound_type s1, double hz, sound_type bw, int normalization);
- /* LISP: (snd-aresoncv SOUND ANYNUM SOUND FIXNUM) */
diff --git a/lib-src/libnyquist/tran/aresonvc.alg b/lib-src/libnyquist/tran/aresonvc.alg
deleted file mode 100644
index 277ef8a..0000000
--- a/lib-src/libnyquist/tran/aresonvc.alg
+++ /dev/null
@@ -1,34 +0,0 @@
-(ARESONVC-ALG
-(NAME "aresonvc")
-(ARGUMENTS ("sound_type" "s1") ("sound_type" "hz") ("double" "bw")
- ("int" "normalization"))
-(LINEAR s1)
-(INLINE-INTERPOLATION T)
-(ALWAYS-SCALE hz)
-(START (MAX s1 hz))
-(TERMINATE (MIN s1 hz))
-(LOGICAL-STOP (MIN s1))
-(SAMPLE-RATE (MAX s1))
-(STEP-FUNCTION hz)
-(STATE ("double" "c3co" "exp(bw * -PI2 / s1->sr)")
- ("double" "c3p1" "susp->c3co + 1.0")
- ("double" "c3t4" "susp->c3co * 4.0")
- ("double" "omc3" "1.0 - susp->c3co")
- ("double" "c2" "0.0")
- ("double" "c1" "0.0")
- ("int" "normalization" "normalization")
- ("double" "y1" "0.0")
- ("double" "y2" "0.0;
- hz->scale = (sample_type) (hz->scale * (PI2 / s1->sr))"))
-(DEPENDS ("c2" "hz" "c3t4 * cos(hz) / c3p1")
- ("c1" "hz" "(normalization == 0 ? 0.0 :
- (normalization == 1 ? 1.0 - omc3 * sqrt(1.0 - c2 * c2 / c3t4) :
- 1.0 - sqrt(c3p1 * c3p1 - c2 * c2) * omc3 / c3p1))"))
-(CONSTANT "c1" "c2" "c3co" "c3p1" "c3t4" "omc3" "normalization")
-(FORCE-INTO-REGISTER c3t4 c3p1 normalization omc3)
-(INNER-LOOP-LOCALS " register double y0, current;")
-(INNER-LOOP "current = s1;
- y0 = c1 * current + c2 * y1 - c3co * y2;
- output = (sample_type) y0;
- y2 = y1; y1 = y0 - current")
-)
diff --git a/lib-src/libnyquist/tran/aresonvc.c b/lib-src/libnyquist/tran/aresonvc.c
deleted file mode 100644
index da14fab..0000000
--- a/lib-src/libnyquist/tran/aresonvc.c
+++ /dev/null
@@ -1,586 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "aresonvc.h"
-
-void aresonvc_free();
-
-
-typedef struct aresonvc_susp_struct {
- snd_susp_node susp;
- boolean started;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type s1;
- long s1_cnt;
- sample_block_values_type s1_ptr;
- sound_type hz;
- long hz_cnt;
- sample_block_values_type hz_ptr;
-
- /* support for interpolation of hz */
- sample_type hz_x1_sample;
- double hz_pHaSe;
- double hz_pHaSe_iNcR;
-
- /* support for ramp between samples of hz */
- double output_per_hz;
- long hz_n;
-
- double c3co;
- double c3p1;
- double c3t4;
- double omc3;
- double c2;
- double c1;
- int normalization;
- double y1;
- double y2;
-} aresonvc_susp_node, *aresonvc_susp_type;
-
-
-void aresonvc_ns_fetch(register aresonvc_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double c3co_reg;
- register double c3p1_reg;
- register double c3t4_reg;
- register double omc3_reg;
- register double c2_reg;
- register double c1_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register sample_type hz_scale_reg = susp->hz->scale;
- register sample_block_values_type hz_ptr_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "aresonvc_ns_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past the hz input sample block: */
- susp_check_term_samples(hz, hz_ptr, hz_cnt);
- togo = MIN(togo, susp->hz_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- c3co_reg = susp->c3co;
- c3p1_reg = susp->c3p1;
- c3t4_reg = susp->c3t4;
- omc3_reg = susp->omc3;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- hz_ptr_reg = susp->hz_ptr;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- register double y0, current; c2_reg = c3t4_reg * cos((hz_scale_reg * *hz_ptr_reg++)) / c3p1_reg;
- c1_reg = (normalization_reg == 0 ? 0.0 :
- (normalization_reg == 1 ? 1.0 - omc3_reg * sqrt(1.0 - c2_reg * c2_reg / c3t4_reg) :
- 1.0 - sqrt(c3p1_reg * c3p1_reg - c2_reg * c2_reg) * omc3_reg / c3p1_reg));
-current = *s1_ptr_reg++;
- y0 = c1_reg * current + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0 - current;
- } while (--n); /* inner loop */
-
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- /* using hz_ptr_reg is a bad idea on RS/6000: */
- susp->hz_ptr += togo;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp_took(hz_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* aresonvc_ns_fetch */
-
-
-void aresonvc_ni_fetch(register aresonvc_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double c3co_reg;
- register double c3p1_reg;
- register double c3t4_reg;
- register double omc3_reg;
- register double c2_reg;
- register double c1_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register double hz_pHaSe_iNcR_rEg = susp->hz_pHaSe_iNcR;
- register double hz_pHaSe_ReG;
- register sample_type hz_x1_sample_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "aresonvc_ni_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp_check_term_samples(hz, hz_ptr, hz_cnt);
- susp->hz_x1_sample = susp_fetch_sample(hz, hz_ptr, hz_cnt);
- susp->c2 = susp->c3t4 * cos(susp->hz_x1_sample) / susp->c3p1;
- susp->c1 = (susp->normalization == 0 ? 0.0 :
- (susp->normalization == 1 ? 1.0 - susp->omc3 * sqrt(1.0 - susp->c2 * susp->c2 / susp->c3t4) :
- 1.0 - sqrt(susp->c3p1 * susp->c3p1 - susp->c2 * susp->c2) * susp->omc3 / susp->c3p1));
- }
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- c3co_reg = susp->c3co;
- c3p1_reg = susp->c3p1;
- c3t4_reg = susp->c3t4;
- omc3_reg = susp->omc3;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- hz_pHaSe_ReG = susp->hz_pHaSe;
- hz_x1_sample_reg = susp->hz_x1_sample;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- register double y0, current; if (hz_pHaSe_ReG >= 1.0) {
-/* fixup-depends hz */
- /* pick up next sample as hz_x1_sample: */
- susp->hz_ptr++;
- susp_took(hz_cnt, 1);
- hz_pHaSe_ReG -= 1.0;
- susp_check_term_samples_break(hz, hz_ptr, hz_cnt, hz_x1_sample_reg);
- hz_x1_sample_reg = susp_current_sample(hz, hz_ptr);
- c2_reg = susp->c2 = c3t4_reg * cos(hz_x1_sample_reg) / c3p1_reg;
- c1_reg = susp->c1 = (normalization_reg == 0 ? 0.0 :
- (normalization_reg == 1 ? 1.0 - omc3_reg * sqrt(1.0 - c2_reg * c2_reg / c3t4_reg) :
- 1.0 - sqrt(c3p1_reg * c3p1_reg - c2_reg * c2_reg) * omc3_reg / c3p1_reg));
- }
-current = *s1_ptr_reg++;
- y0 = c1_reg * current + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0 - current;
- hz_pHaSe_ReG += hz_pHaSe_iNcR_rEg;
- } while (--n); /* inner loop */
-
- togo -= n;
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- susp->hz_pHaSe = hz_pHaSe_ReG;
- susp->hz_x1_sample = hz_x1_sample_reg;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* aresonvc_ni_fetch */
-
-
-void aresonvc_nr_fetch(register aresonvc_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- sample_type hz_val;
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double c3co_reg;
- register double c3p1_reg;
- register double c3t4_reg;
- register double omc3_reg;
- register double c2_reg;
- register double c1_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "aresonvc_nr_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp->hz_pHaSe = 1.0;
- }
-
- susp_check_term_samples(hz, hz_ptr, hz_cnt);
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* grab next hz_x1_sample when phase goes past 1.0; */
- /* use hz_n (computed below) to avoid roundoff errors: */
- if (susp->hz_n <= 0) {
- susp_check_term_samples(hz, hz_ptr, hz_cnt);
- susp->hz_x1_sample = susp_fetch_sample(hz, hz_ptr, hz_cnt);
- susp->hz_pHaSe -= 1.0;
- /* hz_n gets number of samples before phase exceeds 1.0: */
- susp->hz_n = (long) ((1.0 - susp->hz_pHaSe) *
- susp->output_per_hz);
- susp->c2 = susp->c3t4 * cos(susp->hz_x1_sample) / susp->c3p1;
- susp->c1 = (susp->normalization == 0 ? 0.0 :
- (susp->normalization == 1 ? 1.0 - susp->omc3 * sqrt(1.0 - susp->c2 * susp->c2 / susp->c3t4) :
- 1.0 - sqrt(susp->c3p1 * susp->c3p1 - susp->c2 * susp->c2) * susp->omc3 / susp->c3p1));
- }
- togo = MIN(togo, susp->hz_n);
- hz_val = susp->hz_x1_sample;
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- c3co_reg = susp->c3co;
- c3p1_reg = susp->c3p1;
- c3t4_reg = susp->c3t4;
- omc3_reg = susp->omc3;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- register double y0, current;current = *s1_ptr_reg++;
- y0 = c1_reg * current + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0 - current;
- } while (--n); /* inner loop */
-
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp->hz_pHaSe += togo * susp->hz_pHaSe_iNcR;
- susp->hz_n -= togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* aresonvc_nr_fetch */
-
-
-void aresonvc_toss_fetch(susp, snd_list)
- register aresonvc_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from s1 up to final_time for this block of zeros */
- while ((round((final_time - susp->s1->t0) * susp->s1->sr)) >=
- susp->s1->current)
- susp_get_samples(s1, s1_ptr, s1_cnt);
- /* fetch samples from hz up to final_time for this block of zeros */
- while ((round((final_time - susp->hz->t0) * susp->hz->sr)) >=
- susp->hz->current)
- susp_get_samples(hz, hz_ptr, hz_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->s1->t0) * susp->s1->sr -
- (susp->s1->current - susp->s1_cnt));
- susp->s1_ptr += n;
- susp_took(s1_cnt, n);
- n = round((final_time - susp->hz->t0) * susp->hz->sr -
- (susp->hz->current - susp->hz_cnt));
- susp->hz_ptr += n;
- susp_took(hz_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void aresonvc_mark(aresonvc_susp_type susp)
-{
- sound_xlmark(susp->s1);
- sound_xlmark(susp->hz);
-}
-
-
-void aresonvc_free(aresonvc_susp_type susp)
-{
- sound_unref(susp->s1);
- sound_unref(susp->hz);
- ffree_generic(susp, sizeof(aresonvc_susp_node), "aresonvc_free");
-}
-
-
-void aresonvc_print_tree(aresonvc_susp_type susp, int n)
-{
- indent(n);
- stdputstr("s1:");
- sound_print_tree_1(susp->s1, n);
-
- indent(n);
- stdputstr("hz:");
- sound_print_tree_1(susp->hz, n);
-}
-
-
-sound_type snd_make_aresonvc(sound_type s1, sound_type hz, double bw, int normalization)
-{
- register aresonvc_susp_type susp;
- rate_type sr = s1->sr;
- time_type t0 = MAX(s1->t0, hz->t0);
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- /* combine scale factors of linear inputs (S1) */
- scale_factor *= s1->scale;
- s1->scale = 1.0F;
-
- /* try to push scale_factor back to a low sr input */
- if (s1->sr < sr) { s1->scale = scale_factor; scale_factor = 1.0F; }
-
- falloc_generic(susp, aresonvc_susp_node, "snd_make_aresonvc");
- susp->c3co = exp(bw * -PI2 / s1->sr);
- susp->c3p1 = susp->c3co + 1.0;
- susp->c3t4 = susp->c3co * 4.0;
- susp->omc3 = 1.0 - susp->c3co;
- susp->c2 = 0.0;
- susp->c1 = 0.0;
- susp->normalization = normalization;
- susp->y1 = 0.0;
- susp->y2 = 0.0;
- hz->scale = (sample_type) (hz->scale * (PI2 / s1->sr));
-
- /* select a susp fn based on sample rates */
- interp_desc = (interp_desc << 2) + interp_style(s1, sr);
- interp_desc = (interp_desc << 2) + interp_style(hz, sr);
- switch (interp_desc) {
- case INTERP_nn: /* handled below */
- case INTERP_ns: susp->susp.fetch = aresonvc_ns_fetch; break;
- case INTERP_ni: susp->susp.fetch = aresonvc_ni_fetch; break;
- case INTERP_nr: susp->susp.fetch = aresonvc_nr_fetch; break;
- default: snd_badsr(); break;
- }
-
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < s1->t0) sound_prepend_zeros(s1, t0);
- if (t0 < hz->t0) sound_prepend_zeros(hz, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(s1->t0, MIN(hz->t0, t0));
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = aresonvc_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = aresonvc_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = aresonvc_mark;
- susp->susp.print_tree = aresonvc_print_tree;
- susp->susp.name = "aresonvc";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(s1);
- susp->started = false;
- susp->susp.current = 0;
- susp->s1 = s1;
- susp->s1_cnt = 0;
- susp->hz = hz;
- susp->hz_cnt = 0;
- susp->hz_pHaSe = 0.0;
- susp->hz_pHaSe_iNcR = hz->sr / sr;
- susp->hz_n = 0;
- susp->output_per_hz = sr / hz->sr;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_aresonvc(sound_type s1, sound_type hz, double bw, int normalization)
-{
- sound_type s1_copy = sound_copy(s1);
- sound_type hz_copy = sound_copy(hz);
- return snd_make_aresonvc(s1_copy, hz_copy, bw, normalization);
-}
diff --git a/lib-src/libnyquist/tran/aresonvc.h b/lib-src/libnyquist/tran/aresonvc.h
deleted file mode 100644
index 0783f66..0000000
--- a/lib-src/libnyquist/tran/aresonvc.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_aresonvc(sound_type s1, sound_type hz, double bw, int normalization);
-sound_type snd_aresonvc(sound_type s1, sound_type hz, double bw, int normalization);
- /* LISP: (snd-aresonvc SOUND SOUND ANYNUM FIXNUM) */
diff --git a/lib-src/libnyquist/tran/aresonvv.alg b/lib-src/libnyquist/tran/aresonvv.alg
deleted file mode 100644
index a56c2fd..0000000
--- a/lib-src/libnyquist/tran/aresonvv.alg
+++ /dev/null
@@ -1,50 +0,0 @@
-(ARESONVV-ALG
-(NAME "aresonvv")
-(ARGUMENTS ("sound_type" "s1") ("sound_type" "hz1") ("sound_type" "bw")
- ("int" "normalization"))
-(INLINE-INTERPOLATION T)
-(ALWAYS-SCALE hz1 bw)
-(START (MAX s1 hz1 bw))
-(TERMINATE (MIN s1 hz1 bw))
-(LOGICAL-STOP (MIN s1))
-(SAMPLE-RATE (MAX s1))
-(STEP-FUNCTION hz1 bw)
-(LINEAR s1)
-(STATE ("double" "scale1" "s1->scale")
- ("double" "c3co" "0.0")
- ("double" "c3p1" "0.0")
- ("double" "c3t4" "0.0")
- ("double" "omc3" "0.0")
- ("double" "coshz" "0.0")
- ("double" "c2" "0.0")
- ("double" "c1" "0.0")
- ("boolean" "recompute" "false")
- ("int" "normalization" "normalization")
- ("double" "y1" "0.0")
- ("double" "y2" "0.0;
- hz1->scale = (sample_type) (hz1->scale * (PI2 / s1->sr));
- bw->scale = (sample_type) (bw->scale * (-PI2 / s1->sr));"))
-(DEPENDS ("coshz" "hz1" "cos(hz1)")
- ("recompute" "hz1" "true")
- ("c3co" "bw" "exp(bw)")
- ("c3p1" "bw" "c3co + 1.0")
- ("c3t4" "bw" "c3co * 4.0")
- ("omc3" "bw" "1.0 - c3co")
- ("recompute" "bw" "true"))
-(JOINT-DEPENDENCY (("hz1" "bw")
-"if (recompute) {"
-" recompute = false;"
-" c2 = c3t4 * coshz / c3p1;"
-" c1 = (normalization == 0 ? 0.0 :"
-" (normalization == 1 ? 1.0 - omc3 * sqrt(1.0 - c2 * c2 / c3t4) :"
-" 1.0 - sqrt(c3p1 * c3p1 - c2 * c2) * omc3 / c3p1));"
-"}"))
-(CONSTANT "c1" "c2" "c3co" "coshz" "c3p1" "c3t4" "omc3"
- "normalization" "scale1")
-(FORCE-INTO-REGISTER recompute) ;c3t4 c3p1 normalization omc3 scale1
-(INNER-LOOP-LOCALS " register double y0, current;")
-(INNER-LOOP "current = s1;
- y0 = c1 * current + c2 * y1 - c3co * y2;
- output = (sample_type) y0;
- y2 = y1; y1 = y0 - current")
-)
diff --git a/lib-src/libnyquist/tran/aresonvv.c b/lib-src/libnyquist/tran/aresonvv.c
deleted file mode 100644
index de44a8d..0000000
--- a/lib-src/libnyquist/tran/aresonvv.c
+++ /dev/null
@@ -1,1729 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "aresonvv.h"
-
-void aresonvv_free();
-
-
-typedef struct aresonvv_susp_struct {
- snd_susp_node susp;
- boolean started;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type s1;
- long s1_cnt;
- sample_block_values_type s1_ptr;
- sound_type hz1;
- long hz1_cnt;
- sample_block_values_type hz1_ptr;
-
- /* support for interpolation of hz1 */
- sample_type hz1_x1_sample;
- double hz1_pHaSe;
- double hz1_pHaSe_iNcR;
-
- /* support for ramp between samples of hz1 */
- double output_per_hz1;
- long hz1_n;
- sound_type bw;
- long bw_cnt;
- sample_block_values_type bw_ptr;
-
- /* support for interpolation of bw */
- sample_type bw_x1_sample;
- double bw_pHaSe;
- double bw_pHaSe_iNcR;
-
- /* support for ramp between samples of bw */
- double output_per_bw;
- long bw_n;
-
- double scale1;
- double c3co;
- double c3p1;
- double c3t4;
- double omc3;
- double coshz;
- double c2;
- double c1;
- boolean recompute;
- int normalization;
- double y1;
- double y2;
-} aresonvv_susp_node, *aresonvv_susp_type;
-
-
-void aresonvv_nss_fetch(register aresonvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double c3co_reg;
- register double c3p1_reg;
- register double c3t4_reg;
- register double omc3_reg;
- register double coshz_reg;
- register double c2_reg;
- register double c1_reg;
- register boolean recompute_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register sample_type bw_scale_reg = susp->bw->scale;
- register sample_block_values_type bw_ptr_reg;
- register sample_type hz1_scale_reg = susp->hz1->scale;
- register sample_block_values_type hz1_ptr_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "aresonvv_nss_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past the hz1 input sample block: */
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
- togo = MIN(togo, susp->hz1_cnt);
-
- /* don't run past the bw input sample block: */
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
- togo = MIN(togo, susp->bw_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- c3co_reg = susp->c3co;
- c3p1_reg = susp->c3p1;
- c3t4_reg = susp->c3t4;
- omc3_reg = susp->omc3;
- coshz_reg = susp->coshz;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- recompute_reg = susp->recompute;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- bw_ptr_reg = susp->bw_ptr;
- hz1_ptr_reg = susp->hz1_ptr;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- register double y0, current; coshz_reg = cos((hz1_scale_reg * *hz1_ptr_reg++));
- recompute_reg = true;
- c3co_reg = exp((bw_scale_reg * *bw_ptr_reg++));
- c3p1_reg = c3co_reg + 1.0;
- c3t4_reg = c3co_reg * 4.0;
- omc3_reg = 1.0 - c3co_reg;
- recompute_reg = true;
- if (recompute_reg) {
- recompute_reg = false;
- c2_reg = c3t4_reg * coshz_reg / c3p1_reg;
- c1_reg = (normalization_reg == 0 ? 0.0 :
- (normalization_reg == 1 ? 1.0 - omc3_reg * sqrt(1.0 - c2_reg * c2_reg / c3t4_reg) :
- 1.0 - sqrt(c3p1_reg * c3p1_reg - c2_reg * c2_reg) * omc3_reg / c3p1_reg));
- }
-current = *s1_ptr_reg++;
- y0 = c1_reg * current + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0 - current;
- } while (--n); /* inner loop */
-
- susp->recompute = recompute_reg;
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- /* using bw_ptr_reg is a bad idea on RS/6000: */
- susp->bw_ptr += togo;
- /* using hz1_ptr_reg is a bad idea on RS/6000: */
- susp->hz1_ptr += togo;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp_took(hz1_cnt, togo);
- susp_took(bw_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* aresonvv_nss_fetch */
-
-
-void aresonvv_nsi_fetch(register aresonvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double c3co_reg;
- register double c3p1_reg;
- register double c3t4_reg;
- register double omc3_reg;
- register double coshz_reg;
- register double c2_reg;
- register double c1_reg;
- register boolean recompute_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register double bw_pHaSe_iNcR_rEg = susp->bw_pHaSe_iNcR;
- register double bw_pHaSe_ReG;
- register sample_type bw_x1_sample_reg;
- register sample_type hz1_scale_reg = susp->hz1->scale;
- register sample_block_values_type hz1_ptr_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "aresonvv_nsi_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
- susp->bw_x1_sample = susp_fetch_sample(bw, bw_ptr, bw_cnt);
- susp->c3co = exp(susp->bw_x1_sample);
- susp->c3p1 = susp->c3co + 1.0;
- susp->c3t4 = susp->c3co * 4.0;
- susp->omc3 = 1.0 - susp->c3co;
- susp->recompute = true;
- }
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past the hz1 input sample block: */
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
- togo = MIN(togo, susp->hz1_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- c3co_reg = susp->c3co;
- c3p1_reg = susp->c3p1;
- c3t4_reg = susp->c3t4;
- omc3_reg = susp->omc3;
- coshz_reg = susp->coshz;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- recompute_reg = susp->recompute;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- bw_pHaSe_ReG = susp->bw_pHaSe;
- bw_x1_sample_reg = susp->bw_x1_sample;
- hz1_ptr_reg = susp->hz1_ptr;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- register double y0, current; if (bw_pHaSe_ReG >= 1.0) {
-/* fixup-depends bw */
- /* pick up next sample as bw_x1_sample: */
- susp->bw_ptr++;
- susp_took(bw_cnt, 1);
- bw_pHaSe_ReG -= 1.0;
- susp_check_term_samples_break(bw, bw_ptr, bw_cnt, bw_x1_sample_reg);
- bw_x1_sample_reg = susp_current_sample(bw, bw_ptr);
- c3co_reg = susp->c3co = exp(bw_x1_sample_reg);
- c3p1_reg = susp->c3p1 = c3co_reg + 1.0;
- c3t4_reg = susp->c3t4 = c3co_reg * 4.0;
- omc3_reg = susp->omc3 = 1.0 - c3co_reg;
- recompute_reg = susp->recompute = true;
- }
- coshz_reg = cos((hz1_scale_reg * *hz1_ptr_reg++));
- recompute_reg = true;
- if (recompute_reg) {
- recompute_reg = false;
- c2_reg = c3t4_reg * coshz_reg / c3p1_reg;
- c1_reg = (normalization_reg == 0 ? 0.0 :
- (normalization_reg == 1 ? 1.0 - omc3_reg * sqrt(1.0 - c2_reg * c2_reg / c3t4_reg) :
- 1.0 - sqrt(c3p1_reg * c3p1_reg - c2_reg * c2_reg) * omc3_reg / c3p1_reg));
- }
-current = *s1_ptr_reg++;
- y0 = c1_reg * current + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0 - current;
- bw_pHaSe_ReG += bw_pHaSe_iNcR_rEg;
- } while (--n); /* inner loop */
-
- togo -= n;
- susp->recompute = recompute_reg;
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- susp->bw_pHaSe = bw_pHaSe_ReG;
- susp->bw_x1_sample = bw_x1_sample_reg;
- /* using hz1_ptr_reg is a bad idea on RS/6000: */
- susp->hz1_ptr += togo;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp_took(hz1_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* aresonvv_nsi_fetch */
-
-
-void aresonvv_nsr_fetch(register aresonvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- sample_type bw_val;
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double c3co_reg;
- register double c3p1_reg;
- register double c3t4_reg;
- register double omc3_reg;
- register double coshz_reg;
- register double c2_reg;
- register double c1_reg;
- register boolean recompute_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register sample_type hz1_scale_reg = susp->hz1->scale;
- register sample_block_values_type hz1_ptr_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "aresonvv_nsr_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp->bw_pHaSe = 1.0;
- }
-
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past the hz1 input sample block: */
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
- togo = MIN(togo, susp->hz1_cnt);
-
- /* grab next bw_x1_sample when phase goes past 1.0; */
- /* use bw_n (computed below) to avoid roundoff errors: */
- if (susp->bw_n <= 0) {
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
- susp->bw_x1_sample = susp_fetch_sample(bw, bw_ptr, bw_cnt);
- susp->bw_pHaSe -= 1.0;
- /* bw_n gets number of samples before phase exceeds 1.0: */
- susp->bw_n = (long) ((1.0 - susp->bw_pHaSe) *
- susp->output_per_bw);
- susp->c3co = exp(susp->bw_x1_sample);
- susp->c3p1 = susp->c3co + 1.0;
- susp->c3t4 = susp->c3co * 4.0;
- susp->omc3 = 1.0 - susp->c3co;
- susp->recompute = true;
- }
- togo = MIN(togo, susp->bw_n);
- bw_val = susp->bw_x1_sample;
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- c3co_reg = susp->c3co;
- c3p1_reg = susp->c3p1;
- c3t4_reg = susp->c3t4;
- omc3_reg = susp->omc3;
- coshz_reg = susp->coshz;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- recompute_reg = susp->recompute;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- hz1_ptr_reg = susp->hz1_ptr;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- register double y0, current; coshz_reg = cos((hz1_scale_reg * *hz1_ptr_reg++));
- recompute_reg = true;
- if (recompute_reg) {
- recompute_reg = false;
- c2_reg = c3t4_reg * coshz_reg / c3p1_reg;
- c1_reg = (normalization_reg == 0 ? 0.0 :
- (normalization_reg == 1 ? 1.0 - omc3_reg * sqrt(1.0 - c2_reg * c2_reg / c3t4_reg) :
- 1.0 - sqrt(c3p1_reg * c3p1_reg - c2_reg * c2_reg) * omc3_reg / c3p1_reg));
- }
-current = *s1_ptr_reg++;
- y0 = c1_reg * current + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0 - current;
- } while (--n); /* inner loop */
-
- susp->recompute = recompute_reg;
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- /* using hz1_ptr_reg is a bad idea on RS/6000: */
- susp->hz1_ptr += togo;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp_took(hz1_cnt, togo);
- susp->bw_pHaSe += togo * susp->bw_pHaSe_iNcR;
- susp->bw_n -= togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* aresonvv_nsr_fetch */
-
-
-void aresonvv_nis_fetch(register aresonvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double c3co_reg;
- register double c3p1_reg;
- register double c3t4_reg;
- register double omc3_reg;
- register double coshz_reg;
- register double c2_reg;
- register double c1_reg;
- register boolean recompute_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register sample_type bw_scale_reg = susp->bw->scale;
- register sample_block_values_type bw_ptr_reg;
- register double hz1_pHaSe_iNcR_rEg = susp->hz1_pHaSe_iNcR;
- register double hz1_pHaSe_ReG;
- register sample_type hz1_x1_sample_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "aresonvv_nis_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
- susp->hz1_x1_sample = susp_fetch_sample(hz1, hz1_ptr, hz1_cnt);
- susp->coshz = cos(susp->hz1_x1_sample);
- susp->recompute = true;
- }
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past the bw input sample block: */
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
- togo = MIN(togo, susp->bw_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- c3co_reg = susp->c3co;
- c3p1_reg = susp->c3p1;
- c3t4_reg = susp->c3t4;
- omc3_reg = susp->omc3;
- coshz_reg = susp->coshz;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- recompute_reg = susp->recompute;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- bw_ptr_reg = susp->bw_ptr;
- hz1_pHaSe_ReG = susp->hz1_pHaSe;
- hz1_x1_sample_reg = susp->hz1_x1_sample;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- register double y0, current; if (hz1_pHaSe_ReG >= 1.0) {
-/* fixup-depends hz1 */
- /* pick up next sample as hz1_x1_sample: */
- susp->hz1_ptr++;
- susp_took(hz1_cnt, 1);
- hz1_pHaSe_ReG -= 1.0;
- susp_check_term_samples_break(hz1, hz1_ptr, hz1_cnt, hz1_x1_sample_reg);
- hz1_x1_sample_reg = susp_current_sample(hz1, hz1_ptr);
- coshz_reg = susp->coshz = cos(hz1_x1_sample_reg);
- recompute_reg = susp->recompute = true;
- }
- c3co_reg = exp((bw_scale_reg * *bw_ptr_reg++));
- c3p1_reg = c3co_reg + 1.0;
- c3t4_reg = c3co_reg * 4.0;
- omc3_reg = 1.0 - c3co_reg;
- recompute_reg = true;
- if (recompute_reg) {
- recompute_reg = false;
- c2_reg = c3t4_reg * coshz_reg / c3p1_reg;
- c1_reg = (normalization_reg == 0 ? 0.0 :
- (normalization_reg == 1 ? 1.0 - omc3_reg * sqrt(1.0 - c2_reg * c2_reg / c3t4_reg) :
- 1.0 - sqrt(c3p1_reg * c3p1_reg - c2_reg * c2_reg) * omc3_reg / c3p1_reg));
- }
-current = *s1_ptr_reg++;
- y0 = c1_reg * current + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0 - current;
- hz1_pHaSe_ReG += hz1_pHaSe_iNcR_rEg;
- } while (--n); /* inner loop */
-
- togo -= n;
- susp->recompute = recompute_reg;
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- /* using bw_ptr_reg is a bad idea on RS/6000: */
- susp->bw_ptr += togo;
- susp->hz1_pHaSe = hz1_pHaSe_ReG;
- susp->hz1_x1_sample = hz1_x1_sample_reg;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp_took(bw_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* aresonvv_nis_fetch */
-
-
-void aresonvv_nii_fetch(register aresonvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double c3co_reg;
- register double c3p1_reg;
- register double c3t4_reg;
- register double omc3_reg;
- register double coshz_reg;
- register double c2_reg;
- register double c1_reg;
- register boolean recompute_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register double bw_pHaSe_iNcR_rEg = susp->bw_pHaSe_iNcR;
- register double bw_pHaSe_ReG;
- register sample_type bw_x1_sample_reg;
- register double hz1_pHaSe_iNcR_rEg = susp->hz1_pHaSe_iNcR;
- register double hz1_pHaSe_ReG;
- register sample_type hz1_x1_sample_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "aresonvv_nii_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
- susp->hz1_x1_sample = susp_fetch_sample(hz1, hz1_ptr, hz1_cnt);
- susp->coshz = cos(susp->hz1_x1_sample);
- susp->recompute = true;
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
- susp->bw_x1_sample = susp_fetch_sample(bw, bw_ptr, bw_cnt);
- susp->c3co = exp(susp->bw_x1_sample);
- susp->c3p1 = susp->c3co + 1.0;
- susp->c3t4 = susp->c3co * 4.0;
- susp->omc3 = 1.0 - susp->c3co;
- susp->recompute = true;
- }
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- c3co_reg = susp->c3co;
- c3p1_reg = susp->c3p1;
- c3t4_reg = susp->c3t4;
- omc3_reg = susp->omc3;
- coshz_reg = susp->coshz;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- recompute_reg = susp->recompute;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- bw_pHaSe_ReG = susp->bw_pHaSe;
- bw_x1_sample_reg = susp->bw_x1_sample;
- hz1_pHaSe_ReG = susp->hz1_pHaSe;
- hz1_x1_sample_reg = susp->hz1_x1_sample;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- register double y0, current; if (hz1_pHaSe_ReG >= 1.0) {
-/* fixup-depends hz1 */
- /* pick up next sample as hz1_x1_sample: */
- susp->hz1_ptr++;
- susp_took(hz1_cnt, 1);
- hz1_pHaSe_ReG -= 1.0;
- susp_check_term_samples_break(hz1, hz1_ptr, hz1_cnt, hz1_x1_sample_reg);
- hz1_x1_sample_reg = susp_current_sample(hz1, hz1_ptr);
- coshz_reg = susp->coshz = cos(hz1_x1_sample_reg);
- recompute_reg = susp->recompute = true;
- }
- if (bw_pHaSe_ReG >= 1.0) {
-/* fixup-depends bw */
- /* pick up next sample as bw_x1_sample: */
- susp->bw_ptr++;
- susp_took(bw_cnt, 1);
- bw_pHaSe_ReG -= 1.0;
- susp_check_term_samples_break(bw, bw_ptr, bw_cnt, bw_x1_sample_reg);
- bw_x1_sample_reg = susp_current_sample(bw, bw_ptr);
- c3co_reg = susp->c3co = exp(bw_x1_sample_reg);
- c3p1_reg = susp->c3p1 = c3co_reg + 1.0;
- c3t4_reg = susp->c3t4 = c3co_reg * 4.0;
- omc3_reg = susp->omc3 = 1.0 - c3co_reg;
- recompute_reg = susp->recompute = true;
- }
- if (recompute_reg) {
- recompute_reg = false;
- c2_reg = c3t4_reg * coshz_reg / c3p1_reg;
- c1_reg = (normalization_reg == 0 ? 0.0 :
- (normalization_reg == 1 ? 1.0 - omc3_reg * sqrt(1.0 - c2_reg * c2_reg / c3t4_reg) :
- 1.0 - sqrt(c3p1_reg * c3p1_reg - c2_reg * c2_reg) * omc3_reg / c3p1_reg));
- }
-current = *s1_ptr_reg++;
- y0 = c1_reg * current + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0 - current;
- hz1_pHaSe_ReG += hz1_pHaSe_iNcR_rEg;
- bw_pHaSe_ReG += bw_pHaSe_iNcR_rEg;
- } while (--n); /* inner loop */
-
- togo -= n;
- susp->recompute = recompute_reg;
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- susp->bw_pHaSe = bw_pHaSe_ReG;
- susp->bw_x1_sample = bw_x1_sample_reg;
- susp->hz1_pHaSe = hz1_pHaSe_ReG;
- susp->hz1_x1_sample = hz1_x1_sample_reg;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* aresonvv_nii_fetch */
-
-
-void aresonvv_nir_fetch(register aresonvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- sample_type bw_val;
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double c3co_reg;
- register double c3p1_reg;
- register double c3t4_reg;
- register double omc3_reg;
- register double coshz_reg;
- register double c2_reg;
- register double c1_reg;
- register boolean recompute_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register double hz1_pHaSe_iNcR_rEg = susp->hz1_pHaSe_iNcR;
- register double hz1_pHaSe_ReG;
- register sample_type hz1_x1_sample_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "aresonvv_nir_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
- susp->hz1_x1_sample = susp_fetch_sample(hz1, hz1_ptr, hz1_cnt);
- susp->coshz = cos(susp->hz1_x1_sample);
- susp->recompute = true;
- susp->bw_pHaSe = 1.0;
- }
-
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* grab next bw_x1_sample when phase goes past 1.0; */
- /* use bw_n (computed below) to avoid roundoff errors: */
- if (susp->bw_n <= 0) {
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
- susp->bw_x1_sample = susp_fetch_sample(bw, bw_ptr, bw_cnt);
- susp->bw_pHaSe -= 1.0;
- /* bw_n gets number of samples before phase exceeds 1.0: */
- susp->bw_n = (long) ((1.0 - susp->bw_pHaSe) *
- susp->output_per_bw);
- susp->c3co = exp(susp->bw_x1_sample);
- susp->c3p1 = susp->c3co + 1.0;
- susp->c3t4 = susp->c3co * 4.0;
- susp->omc3 = 1.0 - susp->c3co;
- susp->recompute = true;
- }
- togo = MIN(togo, susp->bw_n);
- bw_val = susp->bw_x1_sample;
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- c3co_reg = susp->c3co;
- c3p1_reg = susp->c3p1;
- c3t4_reg = susp->c3t4;
- omc3_reg = susp->omc3;
- coshz_reg = susp->coshz;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- recompute_reg = susp->recompute;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- hz1_pHaSe_ReG = susp->hz1_pHaSe;
- hz1_x1_sample_reg = susp->hz1_x1_sample;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- register double y0, current; if (hz1_pHaSe_ReG >= 1.0) {
-/* fixup-depends hz1 */
- /* pick up next sample as hz1_x1_sample: */
- susp->hz1_ptr++;
- susp_took(hz1_cnt, 1);
- hz1_pHaSe_ReG -= 1.0;
- susp_check_term_samples_break(hz1, hz1_ptr, hz1_cnt, hz1_x1_sample_reg);
- hz1_x1_sample_reg = susp_current_sample(hz1, hz1_ptr);
- coshz_reg = susp->coshz = cos(hz1_x1_sample_reg);
- recompute_reg = susp->recompute = true;
- }
- if (recompute_reg) {
- recompute_reg = false;
- c2_reg = c3t4_reg * coshz_reg / c3p1_reg;
- c1_reg = (normalization_reg == 0 ? 0.0 :
- (normalization_reg == 1 ? 1.0 - omc3_reg * sqrt(1.0 - c2_reg * c2_reg / c3t4_reg) :
- 1.0 - sqrt(c3p1_reg * c3p1_reg - c2_reg * c2_reg) * omc3_reg / c3p1_reg));
- }
-current = *s1_ptr_reg++;
- y0 = c1_reg * current + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0 - current;
- hz1_pHaSe_ReG += hz1_pHaSe_iNcR_rEg;
- } while (--n); /* inner loop */
-
- togo -= n;
- susp->recompute = recompute_reg;
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- susp->hz1_pHaSe = hz1_pHaSe_ReG;
- susp->hz1_x1_sample = hz1_x1_sample_reg;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp->bw_pHaSe += togo * susp->bw_pHaSe_iNcR;
- susp->bw_n -= togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* aresonvv_nir_fetch */
-
-
-void aresonvv_nrs_fetch(register aresonvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- sample_type hz1_val;
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double c3co_reg;
- register double c3p1_reg;
- register double c3t4_reg;
- register double omc3_reg;
- register double coshz_reg;
- register double c2_reg;
- register double c1_reg;
- register boolean recompute_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register sample_type bw_scale_reg = susp->bw->scale;
- register sample_block_values_type bw_ptr_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "aresonvv_nrs_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp->hz1_pHaSe = 1.0;
- }
-
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* grab next hz1_x1_sample when phase goes past 1.0; */
- /* use hz1_n (computed below) to avoid roundoff errors: */
- if (susp->hz1_n <= 0) {
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
- susp->hz1_x1_sample = susp_fetch_sample(hz1, hz1_ptr, hz1_cnt);
- susp->hz1_pHaSe -= 1.0;
- /* hz1_n gets number of samples before phase exceeds 1.0: */
- susp->hz1_n = (long) ((1.0 - susp->hz1_pHaSe) *
- susp->output_per_hz1);
- susp->coshz = cos(susp->hz1_x1_sample);
- susp->recompute = true;
- }
- togo = MIN(togo, susp->hz1_n);
- hz1_val = susp->hz1_x1_sample;
- /* don't run past the bw input sample block: */
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
- togo = MIN(togo, susp->bw_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- c3co_reg = susp->c3co;
- c3p1_reg = susp->c3p1;
- c3t4_reg = susp->c3t4;
- omc3_reg = susp->omc3;
- coshz_reg = susp->coshz;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- recompute_reg = susp->recompute;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- bw_ptr_reg = susp->bw_ptr;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- register double y0, current; c3co_reg = exp((bw_scale_reg * *bw_ptr_reg++));
- c3p1_reg = c3co_reg + 1.0;
- c3t4_reg = c3co_reg * 4.0;
- omc3_reg = 1.0 - c3co_reg;
- recompute_reg = true;
- if (recompute_reg) {
- recompute_reg = false;
- c2_reg = c3t4_reg * coshz_reg / c3p1_reg;
- c1_reg = (normalization_reg == 0 ? 0.0 :
- (normalization_reg == 1 ? 1.0 - omc3_reg * sqrt(1.0 - c2_reg * c2_reg / c3t4_reg) :
- 1.0 - sqrt(c3p1_reg * c3p1_reg - c2_reg * c2_reg) * omc3_reg / c3p1_reg));
- }
-current = *s1_ptr_reg++;
- y0 = c1_reg * current + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0 - current;
- } while (--n); /* inner loop */
-
- susp->recompute = recompute_reg;
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- /* using bw_ptr_reg is a bad idea on RS/6000: */
- susp->bw_ptr += togo;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp->hz1_pHaSe += togo * susp->hz1_pHaSe_iNcR;
- susp->hz1_n -= togo;
- susp_took(bw_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* aresonvv_nrs_fetch */
-
-
-void aresonvv_nri_fetch(register aresonvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- sample_type hz1_val;
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double c3co_reg;
- register double c3p1_reg;
- register double c3t4_reg;
- register double omc3_reg;
- register double coshz_reg;
- register double c2_reg;
- register double c1_reg;
- register boolean recompute_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register double bw_pHaSe_iNcR_rEg = susp->bw_pHaSe_iNcR;
- register double bw_pHaSe_ReG;
- register sample_type bw_x1_sample_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "aresonvv_nri_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp->hz1_pHaSe = 1.0;
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
- susp->bw_x1_sample = susp_fetch_sample(bw, bw_ptr, bw_cnt);
- susp->c3co = exp(susp->bw_x1_sample);
- susp->c3p1 = susp->c3co + 1.0;
- susp->c3t4 = susp->c3co * 4.0;
- susp->omc3 = 1.0 - susp->c3co;
- susp->recompute = true;
- }
-
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* grab next hz1_x1_sample when phase goes past 1.0; */
- /* use hz1_n (computed below) to avoid roundoff errors: */
- if (susp->hz1_n <= 0) {
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
- susp->hz1_x1_sample = susp_fetch_sample(hz1, hz1_ptr, hz1_cnt);
- susp->hz1_pHaSe -= 1.0;
- /* hz1_n gets number of samples before phase exceeds 1.0: */
- susp->hz1_n = (long) ((1.0 - susp->hz1_pHaSe) *
- susp->output_per_hz1);
- susp->coshz = cos(susp->hz1_x1_sample);
- susp->recompute = true;
- }
- togo = MIN(togo, susp->hz1_n);
- hz1_val = susp->hz1_x1_sample;
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- c3co_reg = susp->c3co;
- c3p1_reg = susp->c3p1;
- c3t4_reg = susp->c3t4;
- omc3_reg = susp->omc3;
- coshz_reg = susp->coshz;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- recompute_reg = susp->recompute;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- bw_pHaSe_ReG = susp->bw_pHaSe;
- bw_x1_sample_reg = susp->bw_x1_sample;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- register double y0, current; if (bw_pHaSe_ReG >= 1.0) {
-/* fixup-depends bw */
- /* pick up next sample as bw_x1_sample: */
- susp->bw_ptr++;
- susp_took(bw_cnt, 1);
- bw_pHaSe_ReG -= 1.0;
- susp_check_term_samples_break(bw, bw_ptr, bw_cnt, bw_x1_sample_reg);
- bw_x1_sample_reg = susp_current_sample(bw, bw_ptr);
- c3co_reg = susp->c3co = exp(bw_x1_sample_reg);
- c3p1_reg = susp->c3p1 = c3co_reg + 1.0;
- c3t4_reg = susp->c3t4 = c3co_reg * 4.0;
- omc3_reg = susp->omc3 = 1.0 - c3co_reg;
- recompute_reg = susp->recompute = true;
- }
- if (recompute_reg) {
- recompute_reg = false;
- c2_reg = c3t4_reg * coshz_reg / c3p1_reg;
- c1_reg = (normalization_reg == 0 ? 0.0 :
- (normalization_reg == 1 ? 1.0 - omc3_reg * sqrt(1.0 - c2_reg * c2_reg / c3t4_reg) :
- 1.0 - sqrt(c3p1_reg * c3p1_reg - c2_reg * c2_reg) * omc3_reg / c3p1_reg));
- }
-current = *s1_ptr_reg++;
- y0 = c1_reg * current + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0 - current;
- bw_pHaSe_ReG += bw_pHaSe_iNcR_rEg;
- } while (--n); /* inner loop */
-
- togo -= n;
- susp->recompute = recompute_reg;
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- susp->bw_pHaSe = bw_pHaSe_ReG;
- susp->bw_x1_sample = bw_x1_sample_reg;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp->hz1_pHaSe += togo * susp->hz1_pHaSe_iNcR;
- susp->hz1_n -= togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* aresonvv_nri_fetch */
-
-
-void aresonvv_nrr_fetch(register aresonvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- sample_type hz1_val;
- sample_type bw_val;
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double c3co_reg;
- register double c2_reg;
- register double c1_reg;
- register boolean recompute_reg;
- register double y1_reg;
- register double y2_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "aresonvv_nrr_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp->hz1_pHaSe = 1.0;
- susp->bw_pHaSe = 1.0;
- }
-
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
-
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* grab next hz1_x1_sample when phase goes past 1.0; */
- /* use hz1_n (computed below) to avoid roundoff errors: */
- if (susp->hz1_n <= 0) {
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
- susp->hz1_x1_sample = susp_fetch_sample(hz1, hz1_ptr, hz1_cnt);
- susp->hz1_pHaSe -= 1.0;
- /* hz1_n gets number of samples before phase exceeds 1.0: */
- susp->hz1_n = (long) ((1.0 - susp->hz1_pHaSe) *
- susp->output_per_hz1);
- susp->coshz = cos(susp->hz1_x1_sample);
- susp->recompute = true;
- }
- togo = MIN(togo, susp->hz1_n);
- hz1_val = susp->hz1_x1_sample;
- /* grab next bw_x1_sample when phase goes past 1.0; */
- /* use bw_n (computed below) to avoid roundoff errors: */
- if (susp->bw_n <= 0) {
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
- susp->bw_x1_sample = susp_fetch_sample(bw, bw_ptr, bw_cnt);
- susp->bw_pHaSe -= 1.0;
- /* bw_n gets number of samples before phase exceeds 1.0: */
- susp->bw_n = (long) ((1.0 - susp->bw_pHaSe) *
- susp->output_per_bw);
- susp->c3co = exp(susp->bw_x1_sample);
- susp->c3p1 = susp->c3co + 1.0;
- susp->c3t4 = susp->c3co * 4.0;
- susp->omc3 = 1.0 - susp->c3co;
- susp->recompute = true;
- }
- togo = MIN(togo, susp->bw_n);
- bw_val = susp->bw_x1_sample;
- if (susp->recompute) {
- susp->recompute = false;
- susp->c2 = susp->c3t4 * susp->coshz / susp->c3p1;
- susp->c1 = (susp->normalization == 0 ? 0.0 :
- (susp->normalization == 1 ? 1.0 - susp->omc3 * sqrt(1.0 - susp->c2 * susp->c2 / susp->c3t4) :
- 1.0 - sqrt(susp->c3p1 * susp->c3p1 - susp->c2 * susp->c2) * susp->omc3 / susp->c3p1));
- }
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- c3co_reg = susp->c3co;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- recompute_reg = susp->recompute;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- register double y0, current;current = *s1_ptr_reg++;
- y0 = c1_reg * current + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0 - current;
- } while (--n); /* inner loop */
-
- susp->recompute = recompute_reg;
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp->hz1_pHaSe += togo * susp->hz1_pHaSe_iNcR;
- susp->hz1_n -= togo;
- susp->bw_pHaSe += togo * susp->bw_pHaSe_iNcR;
- susp->bw_n -= togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* aresonvv_nrr_fetch */
-
-
-void aresonvv_toss_fetch(susp, snd_list)
- register aresonvv_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from s1 up to final_time for this block of zeros */
- while ((round((final_time - susp->s1->t0) * susp->s1->sr)) >=
- susp->s1->current)
- susp_get_samples(s1, s1_ptr, s1_cnt);
- /* fetch samples from hz1 up to final_time for this block of zeros */
- while ((round((final_time - susp->hz1->t0) * susp->hz1->sr)) >=
- susp->hz1->current)
- susp_get_samples(hz1, hz1_ptr, hz1_cnt);
- /* fetch samples from bw up to final_time for this block of zeros */
- while ((round((final_time - susp->bw->t0) * susp->bw->sr)) >=
- susp->bw->current)
- susp_get_samples(bw, bw_ptr, bw_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->s1->t0) * susp->s1->sr -
- (susp->s1->current - susp->s1_cnt));
- susp->s1_ptr += n;
- susp_took(s1_cnt, n);
- n = round((final_time - susp->hz1->t0) * susp->hz1->sr -
- (susp->hz1->current - susp->hz1_cnt));
- susp->hz1_ptr += n;
- susp_took(hz1_cnt, n);
- n = round((final_time - susp->bw->t0) * susp->bw->sr -
- (susp->bw->current - susp->bw_cnt));
- susp->bw_ptr += n;
- susp_took(bw_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void aresonvv_mark(aresonvv_susp_type susp)
-{
- sound_xlmark(susp->s1);
- sound_xlmark(susp->hz1);
- sound_xlmark(susp->bw);
-}
-
-
-void aresonvv_free(aresonvv_susp_type susp)
-{
- sound_unref(susp->s1);
- sound_unref(susp->hz1);
- sound_unref(susp->bw);
- ffree_generic(susp, sizeof(aresonvv_susp_node), "aresonvv_free");
-}
-
-
-void aresonvv_print_tree(aresonvv_susp_type susp, int n)
-{
- indent(n);
- stdputstr("s1:");
- sound_print_tree_1(susp->s1, n);
-
- indent(n);
- stdputstr("hz1:");
- sound_print_tree_1(susp->hz1, n);
-
- indent(n);
- stdputstr("bw:");
- sound_print_tree_1(susp->bw, n);
-}
-
-
-sound_type snd_make_aresonvv(sound_type s1, sound_type hz1, sound_type bw, int normalization)
-{
- register aresonvv_susp_type susp;
- rate_type sr = s1->sr;
- time_type t0 = MAX(MAX(s1->t0, hz1->t0), bw->t0);
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- /* combine scale factors of linear inputs (S1) */
- scale_factor *= s1->scale;
- s1->scale = 1.0F;
-
- /* try to push scale_factor back to a low sr input */
- if (s1->sr < sr) { s1->scale = scale_factor; scale_factor = 1.0F; }
-
- falloc_generic(susp, aresonvv_susp_node, "snd_make_aresonvv");
- susp->scale1 = s1->scale;
- susp->c3co = 0.0;
- susp->c3p1 = 0.0;
- susp->c3t4 = 0.0;
- susp->omc3 = 0.0;
- susp->coshz = 0.0;
- susp->c2 = 0.0;
- susp->c1 = 0.0;
- susp->recompute = false;
- susp->normalization = normalization;
- susp->y1 = 0.0;
- susp->y2 = 0.0;
- hz1->scale = (sample_type) (hz1->scale * (PI2 / s1->sr));
- bw->scale = (sample_type) (bw->scale * (-PI2 / s1->sr));;
-
- /* select a susp fn based on sample rates */
- interp_desc = (interp_desc << 2) + interp_style(s1, sr);
- interp_desc = (interp_desc << 2) + interp_style(hz1, sr);
- interp_desc = (interp_desc << 2) + interp_style(bw, sr);
- switch (interp_desc) {
- case INTERP_nnn: /* handled below */
- case INTERP_nns: /* handled below */
- case INTERP_nsn: /* handled below */
- case INTERP_nss: susp->susp.fetch = aresonvv_nss_fetch; break;
- case INTERP_nni: /* handled below */
- case INTERP_nsi: susp->susp.fetch = aresonvv_nsi_fetch; break;
- case INTERP_nnr: /* handled below */
- case INTERP_nsr: susp->susp.fetch = aresonvv_nsr_fetch; break;
- case INTERP_nin: /* handled below */
- case INTERP_nis: susp->susp.fetch = aresonvv_nis_fetch; break;
- case INTERP_nii: susp->susp.fetch = aresonvv_nii_fetch; break;
- case INTERP_nir: susp->susp.fetch = aresonvv_nir_fetch; break;
- case INTERP_nrn: /* handled below */
- case INTERP_nrs: susp->susp.fetch = aresonvv_nrs_fetch; break;
- case INTERP_nri: susp->susp.fetch = aresonvv_nri_fetch; break;
- case INTERP_nrr: susp->susp.fetch = aresonvv_nrr_fetch; break;
- default: snd_badsr(); break;
- }
-
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < s1->t0) sound_prepend_zeros(s1, t0);
- if (t0 < hz1->t0) sound_prepend_zeros(hz1, t0);
- if (t0 < bw->t0) sound_prepend_zeros(bw, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(s1->t0, MIN(hz1->t0, MIN(bw->t0, t0)));
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = aresonvv_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = aresonvv_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = aresonvv_mark;
- susp->susp.print_tree = aresonvv_print_tree;
- susp->susp.name = "aresonvv";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(s1);
- susp->started = false;
- susp->susp.current = 0;
- susp->s1 = s1;
- susp->s1_cnt = 0;
- susp->hz1 = hz1;
- susp->hz1_cnt = 0;
- susp->hz1_pHaSe = 0.0;
- susp->hz1_pHaSe_iNcR = hz1->sr / sr;
- susp->hz1_n = 0;
- susp->output_per_hz1 = sr / hz1->sr;
- susp->bw = bw;
- susp->bw_cnt = 0;
- susp->bw_pHaSe = 0.0;
- susp->bw_pHaSe_iNcR = bw->sr / sr;
- susp->bw_n = 0;
- susp->output_per_bw = sr / bw->sr;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_aresonvv(sound_type s1, sound_type hz1, sound_type bw, int normalization)
-{
- sound_type s1_copy = sound_copy(s1);
- sound_type hz1_copy = sound_copy(hz1);
- sound_type bw_copy = sound_copy(bw);
- return snd_make_aresonvv(s1_copy, hz1_copy, bw_copy, normalization);
-}
diff --git a/lib-src/libnyquist/tran/aresonvv.h b/lib-src/libnyquist/tran/aresonvv.h
deleted file mode 100644
index 1aba1b6..0000000
--- a/lib-src/libnyquist/tran/aresonvv.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_aresonvv(sound_type s1, sound_type hz1, sound_type bw, int normalization);
-sound_type snd_aresonvv(sound_type s1, sound_type hz1, sound_type bw, int normalization);
- /* LISP: (snd-aresonvv SOUND SOUND SOUND FIXNUM) */
diff --git a/lib-src/libnyquist/tran/atone.alg b/lib-src/libnyquist/tran/atone.alg
deleted file mode 100644
index 03b4d9f..0000000
--- a/lib-src/libnyquist/tran/atone.alg
+++ /dev/null
@@ -1,20 +0,0 @@
-(ATONE-ALG
-(NAME "atone")
-(ARGUMENTS ("sound_type" "s") ("double" "hz"))
-(START (MIN s))
-(TERMINATE (MIN s))
-(LOGICAL-STOP (MIN s))
-(STATE ("double" "bb" "2.0 - cos(hz * PI2 / s->sr)" TEMP)
- ("double" "cc" "bb - sqrt((bb * bb) - 1.0)")
- ("double" "prev" "0.0"))
-(CONSTANT "cc")
-(INNER-LOOP-LOCALS " double current;
-")
-(INNER-LOOP "current = s;
- prev = cc * (prev + current); /* use prev as temp variable ... */
- output = (float) prev; /* ... so we can do proper type conversion */
- prev -= current;")
-; old code was:
-; prev = (output = cc * (prev + current)) - current;")
-)
-
diff --git a/lib-src/libnyquist/tran/atone.c b/lib-src/libnyquist/tran/atone.c
deleted file mode 100644
index 11ee7f2..0000000
--- a/lib-src/libnyquist/tran/atone.c
+++ /dev/null
@@ -1,317 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "atone.h"
-
-void atone_free();
-
-
-typedef struct atone_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type s;
- long s_cnt;
- sample_block_values_type s_ptr;
-
- double cc;
- double prev;
-} atone_susp_node, *atone_susp_type;
-
-
-void atone_n_fetch(register atone_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double cc_reg;
- register double prev_reg;
- register sample_block_values_type s_ptr_reg;
- falloc_sample_block(out, "atone_n_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s input sample block: */
- susp_check_term_log_samples(s, s_ptr, s_cnt);
- togo = MIN(togo, susp->s_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- cc_reg = susp->cc;
- prev_reg = susp->prev;
- s_ptr_reg = susp->s_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- double current;
-current = *s_ptr_reg++;
- prev_reg = cc_reg * (prev_reg + current); /* use prev_reg as temp variable ... */
- *out_ptr_reg++ = (float) prev_reg; /* ... so we can do proper type conversion */
- prev_reg -= current;;
- } while (--n); /* inner loop */
-
- susp->prev = prev_reg;
- /* using s_ptr_reg is a bad idea on RS/6000: */
- susp->s_ptr += togo;
- out_ptr += togo;
- susp_took(s_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* atone_n_fetch */
-
-
-void atone_s_fetch(register atone_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double cc_reg;
- register double prev_reg;
- register sample_type s_scale_reg = susp->s->scale;
- register sample_block_values_type s_ptr_reg;
- falloc_sample_block(out, "atone_s_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s input sample block: */
- susp_check_term_log_samples(s, s_ptr, s_cnt);
- togo = MIN(togo, susp->s_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- cc_reg = susp->cc;
- prev_reg = susp->prev;
- s_ptr_reg = susp->s_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- double current;
-current = (s_scale_reg * *s_ptr_reg++);
- prev_reg = cc_reg * (prev_reg + current); /* use prev_reg as temp variable ... */
- *out_ptr_reg++ = (float) prev_reg; /* ... so we can do proper type conversion */
- prev_reg -= current;;
- } while (--n); /* inner loop */
-
- susp->prev = prev_reg;
- /* using s_ptr_reg is a bad idea on RS/6000: */
- susp->s_ptr += togo;
- out_ptr += togo;
- susp_took(s_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* atone_s_fetch */
-
-
-void atone_toss_fetch(susp, snd_list)
- register atone_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from s up to final_time for this block of zeros */
- while ((round((final_time - susp->s->t0) * susp->s->sr)) >=
- susp->s->current)
- susp_get_samples(s, s_ptr, s_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->s->t0) * susp->s->sr -
- (susp->s->current - susp->s_cnt));
- susp->s_ptr += n;
- susp_took(s_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void atone_mark(atone_susp_type susp)
-{
- sound_xlmark(susp->s);
-}
-
-
-void atone_free(atone_susp_type susp)
-{
- sound_unref(susp->s);
- ffree_generic(susp, sizeof(atone_susp_node), "atone_free");
-}
-
-
-void atone_print_tree(atone_susp_type susp, int n)
-{
- indent(n);
- stdputstr("s:");
- sound_print_tree_1(susp->s, n);
-}
-
-
-sound_type snd_make_atone(sound_type s, double hz)
-{
- register atone_susp_type susp;
- double bb;
- rate_type sr = s->sr;
- time_type t0 = s->t0;
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- falloc_generic(susp, atone_susp_node, "snd_make_atone");
- bb = 2.0 - cos(hz * PI2 / s->sr);
- susp->cc = bb - sqrt((bb * bb) - 1.0);
- susp->prev = 0.0;
-
- /* select a susp fn based on sample rates */
- interp_desc = (interp_desc << 2) + interp_style(s, sr);
- switch (interp_desc) {
- case INTERP_n: susp->susp.fetch = atone_n_fetch; break;
- case INTERP_s: susp->susp.fetch = atone_s_fetch; break;
- default: snd_badsr(); break;
- }
-
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < s->t0) sound_prepend_zeros(s, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(s->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = atone_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = atone_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = atone_mark;
- susp->susp.print_tree = atone_print_tree;
- susp->susp.name = "atone";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(s);
- susp->susp.current = 0;
- susp->s = s;
- susp->s_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_atone(sound_type s, double hz)
-{
- sound_type s_copy = sound_copy(s);
- return snd_make_atone(s_copy, hz);
-}
diff --git a/lib-src/libnyquist/tran/atone.h b/lib-src/libnyquist/tran/atone.h
deleted file mode 100644
index 9fa57d5..0000000
--- a/lib-src/libnyquist/tran/atone.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_atone(sound_type s, double hz);
-sound_type snd_atone(sound_type s, double hz);
- /* LISP: (snd-atone SOUND ANYNUM) */
diff --git a/lib-src/libnyquist/tran/atonev.alg b/lib-src/libnyquist/tran/atonev.alg
deleted file mode 100644
index 441206f..0000000
--- a/lib-src/libnyquist/tran/atonev.alg
+++ /dev/null
@@ -1,25 +0,0 @@
-(ATONEV-ALG
-(NAME "atonev")
-(ARGUMENTS ("sound_type" "s1") ("sound_type" "hz"))
-(INLINE-INTERPOLATION T)
-(LINEAR hz)
-(ALWAYS-SCALE hz)
-(START (MAX s1 hz))
-(TERMINATE (MIN s1 hz))
-(LOGICAL-STOP (MIN s1))
-(STATE ("double" "cc" "0.0")
- ("double" "prev" "0.0;
- hz->scale = (sample_type) (hz->scale * (PI2 / s1->sr))"))
-(LINEAR s1)
-(SAMPLE-RATE (MAX s1))
-(STEP-FUNCTION hz)
-(DEPENDS ("bb" "hz" "2.0 - cos(hz)" TEMP "register double")
- ("cc" "hz" "bb - sqrt((bb * bb) - 1.0)"))
-(CONSTANT "cc")
-(INNER-LOOP-LOCALS " double current;
-")
-(INNER-LOOP "current = s1;
- prev = cc * (prev + current);
- output = (sample_type) prev;
- prev -= current;")
-)
diff --git a/lib-src/libnyquist/tran/atonev.c b/lib-src/libnyquist/tran/atonev.c
deleted file mode 100644
index 271dada..0000000
--- a/lib-src/libnyquist/tran/atonev.c
+++ /dev/null
@@ -1,526 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "atonev.h"
-
-void atonev_free();
-
-
-typedef struct atonev_susp_struct {
- snd_susp_node susp;
- boolean started;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type s1;
- long s1_cnt;
- sample_block_values_type s1_ptr;
- sound_type hz;
- long hz_cnt;
- sample_block_values_type hz_ptr;
-
- /* support for interpolation of hz */
- sample_type hz_x1_sample;
- double hz_pHaSe;
- double hz_pHaSe_iNcR;
-
- /* support for ramp between samples of hz */
- double output_per_hz;
- long hz_n;
-
- double cc;
- double prev;
-} atonev_susp_node, *atonev_susp_type;
-
-
-void atonev_ns_fetch(register atonev_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double cc_reg;
- register double prev_reg;
- register sample_type hz_scale_reg = susp->hz->scale;
- register sample_block_values_type hz_ptr_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "atonev_ns_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past the hz input sample block: */
- susp_check_term_samples(hz, hz_ptr, hz_cnt);
- togo = MIN(togo, susp->hz_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- cc_reg = susp->cc;
- prev_reg = susp->prev;
- hz_ptr_reg = susp->hz_ptr;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- double current;
- register double bb;
- bb = 2.0 - cos((hz_scale_reg * *hz_ptr_reg++));
- cc_reg = bb - sqrt((bb * bb) - 1.0);
-current = *s1_ptr_reg++;
- prev_reg = cc_reg * (prev_reg + current);
- *out_ptr_reg++ = (sample_type) prev_reg;
- prev_reg -= current;;
- } while (--n); /* inner loop */
-
- susp->prev = prev_reg;
- /* using hz_ptr_reg is a bad idea on RS/6000: */
- susp->hz_ptr += togo;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp_took(hz_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* atonev_ns_fetch */
-
-
-void atonev_ni_fetch(register atonev_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double cc_reg;
- register double prev_reg;
- register double hz_pHaSe_iNcR_rEg = susp->hz_pHaSe_iNcR;
- register double hz_pHaSe_ReG;
- register sample_type hz_x1_sample_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "atonev_ni_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- register double bb;
- susp->started = true;
- susp_check_term_samples(hz, hz_ptr, hz_cnt);
- susp->hz_x1_sample = susp_fetch_sample(hz, hz_ptr, hz_cnt);
- bb = 2.0 - cos(susp->hz_x1_sample);
- susp->cc = bb - sqrt((bb * bb) - 1.0);
- }
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- cc_reg = susp->cc;
- prev_reg = susp->prev;
- hz_pHaSe_ReG = susp->hz_pHaSe;
- hz_x1_sample_reg = susp->hz_x1_sample;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- double current;
- if (hz_pHaSe_ReG >= 1.0) {
-/* fixup-depends hz */
- register double bb;
- /* pick up next sample as hz_x1_sample: */
- susp->hz_ptr++;
- susp_took(hz_cnt, 1);
- hz_pHaSe_ReG -= 1.0;
- susp_check_term_samples_break(hz, hz_ptr, hz_cnt, hz_x1_sample_reg);
- hz_x1_sample_reg = susp_current_sample(hz, hz_ptr);
- bb = 2.0 - cos(hz_x1_sample_reg);
- cc_reg = susp->cc = bb - sqrt((bb * bb) - 1.0);
- }
-current = *s1_ptr_reg++;
- prev_reg = cc_reg * (prev_reg + current);
- *out_ptr_reg++ = (sample_type) prev_reg;
- prev_reg -= current;;
- hz_pHaSe_ReG += hz_pHaSe_iNcR_rEg;
- } while (--n); /* inner loop */
-
- togo -= n;
- susp->prev = prev_reg;
- susp->hz_pHaSe = hz_pHaSe_ReG;
- susp->hz_x1_sample = hz_x1_sample_reg;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* atonev_ni_fetch */
-
-
-void atonev_nr_fetch(register atonev_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- sample_type hz_val;
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double cc_reg;
- register double prev_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "atonev_nr_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp->hz_pHaSe = 1.0;
- }
-
- susp_check_term_samples(hz, hz_ptr, hz_cnt);
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* grab next hz_x1_sample when phase goes past 1.0; */
- /* use hz_n (computed below) to avoid roundoff errors: */
- if (susp->hz_n <= 0) {
- register double bb;
- susp_check_term_samples(hz, hz_ptr, hz_cnt);
- susp->hz_x1_sample = susp_fetch_sample(hz, hz_ptr, hz_cnt);
- susp->hz_pHaSe -= 1.0;
- /* hz_n gets number of samples before phase exceeds 1.0: */
- susp->hz_n = (long) ((1.0 - susp->hz_pHaSe) *
- susp->output_per_hz);
- bb = 2.0 - cos(susp->hz_x1_sample);
- susp->cc = bb - sqrt((bb * bb) - 1.0);
- }
- togo = MIN(togo, susp->hz_n);
- hz_val = susp->hz_x1_sample;
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- cc_reg = susp->cc;
- prev_reg = susp->prev;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- double current;
-current = *s1_ptr_reg++;
- prev_reg = cc_reg * (prev_reg + current);
- *out_ptr_reg++ = (sample_type) prev_reg;
- prev_reg -= current;;
- } while (--n); /* inner loop */
-
- susp->prev = prev_reg;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp->hz_pHaSe += togo * susp->hz_pHaSe_iNcR;
- susp->hz_n -= togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* atonev_nr_fetch */
-
-
-void atonev_toss_fetch(susp, snd_list)
- register atonev_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from s1 up to final_time for this block of zeros */
- while ((round((final_time - susp->s1->t0) * susp->s1->sr)) >=
- susp->s1->current)
- susp_get_samples(s1, s1_ptr, s1_cnt);
- /* fetch samples from hz up to final_time for this block of zeros */
- while ((round((final_time - susp->hz->t0) * susp->hz->sr)) >=
- susp->hz->current)
- susp_get_samples(hz, hz_ptr, hz_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->s1->t0) * susp->s1->sr -
- (susp->s1->current - susp->s1_cnt));
- susp->s1_ptr += n;
- susp_took(s1_cnt, n);
- n = round((final_time - susp->hz->t0) * susp->hz->sr -
- (susp->hz->current - susp->hz_cnt));
- susp->hz_ptr += n;
- susp_took(hz_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void atonev_mark(atonev_susp_type susp)
-{
- sound_xlmark(susp->s1);
- sound_xlmark(susp->hz);
-}
-
-
-void atonev_free(atonev_susp_type susp)
-{
- sound_unref(susp->s1);
- sound_unref(susp->hz);
- ffree_generic(susp, sizeof(atonev_susp_node), "atonev_free");
-}
-
-
-void atonev_print_tree(atonev_susp_type susp, int n)
-{
- indent(n);
- stdputstr("s1:");
- sound_print_tree_1(susp->s1, n);
-
- indent(n);
- stdputstr("hz:");
- sound_print_tree_1(susp->hz, n);
-}
-
-
-sound_type snd_make_atonev(sound_type s1, sound_type hz)
-{
- register atonev_susp_type susp;
- rate_type sr = s1->sr;
- time_type t0 = MAX(s1->t0, hz->t0);
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- /* combine scale factors of linear inputs (S1) */
- scale_factor *= s1->scale;
- s1->scale = 1.0F;
-
- /* try to push scale_factor back to a low sr input */
- if (s1->sr < sr) { s1->scale = scale_factor; scale_factor = 1.0F; }
-
- falloc_generic(susp, atonev_susp_node, "snd_make_atonev");
- susp->cc = 0.0;
- susp->prev = 0.0;
- hz->scale = (sample_type) (hz->scale * (PI2 / s1->sr));
-
- /* select a susp fn based on sample rates */
- interp_desc = (interp_desc << 2) + interp_style(s1, sr);
- interp_desc = (interp_desc << 2) + interp_style(hz, sr);
- switch (interp_desc) {
- case INTERP_nn: /* handled below */
- case INTERP_ns: susp->susp.fetch = atonev_ns_fetch; break;
- case INTERP_ni: susp->susp.fetch = atonev_ni_fetch; break;
- case INTERP_nr: susp->susp.fetch = atonev_nr_fetch; break;
- default: snd_badsr(); break;
- }
-
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < s1->t0) sound_prepend_zeros(s1, t0);
- if (t0 < hz->t0) sound_prepend_zeros(hz, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(s1->t0, MIN(hz->t0, t0));
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = atonev_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = atonev_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = atonev_mark;
- susp->susp.print_tree = atonev_print_tree;
- susp->susp.name = "atonev";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(s1);
- susp->started = false;
- susp->susp.current = 0;
- susp->s1 = s1;
- susp->s1_cnt = 0;
- susp->hz = hz;
- susp->hz_cnt = 0;
- susp->hz_pHaSe = 0.0;
- susp->hz_pHaSe_iNcR = hz->sr / sr;
- susp->hz_n = 0;
- susp->output_per_hz = sr / hz->sr;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_atonev(sound_type s1, sound_type hz)
-{
- sound_type s1_copy = sound_copy(s1);
- sound_type hz_copy = sound_copy(hz);
- return snd_make_atonev(s1_copy, hz_copy);
-}
diff --git a/lib-src/libnyquist/tran/atonev.h b/lib-src/libnyquist/tran/atonev.h
deleted file mode 100644
index 9abcc2a..0000000
--- a/lib-src/libnyquist/tran/atonev.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_atonev(sound_type s1, sound_type hz);
-sound_type snd_atonev(sound_type s1, sound_type hz);
- /* LISP: (snd-atonev SOUND SOUND) */
diff --git a/lib-src/libnyquist/tran/biquad.alg b/lib-src/libnyquist/tran/biquad.alg
deleted file mode 100644
index 094761f..0000000
--- a/lib-src/libnyquist/tran/biquad.alg
+++ /dev/null
@@ -1,27 +0,0 @@
-; general order-2 IIR filter.
-; a0 is assumed to be unity.
-; for a1 and a2, our sign convention is opposite to Matlab's.
-
-(BIQUAD-ALG
-(NAME "biquad")
-(ARGUMENTS ("sound_type" "s")
- ("double" "b0") ("double" "b1") ("double" "b2")
- ("double" "a1") ("double" "a2")
- ("double" "z1init") ("double" "z2init"))
-(START (MIN s))
-(TERMINATE (MIN s))
-(LOGICAL-STOP (MIN s))
-(STATE ("double" "z1" "z1init")
- ("double" "z2" "z2init")
- ("double" "b0" "b0")
- ("double" "b1" "b1")
- ("double" "b2" "b2")
- ("double" "a1" "a1")
- ("double" "a2" "a2"))
-(CONSTANT "b0" "b1" "b2" "a1" "a2")
-(INNER-LOOP-LOCALS "double z0;")
-(INNER-LOOP " z0 = s + a1*z1 + a2*z2;
- output = (sample_type) (z0*b0 + z1*b1 + z2*b2);
- z2 = z1; z1 = z0;")
-)
-
diff --git a/lib-src/libnyquist/tran/biquad.c b/lib-src/libnyquist/tran/biquad.c
deleted file mode 100644
index 956bf0a..0000000
--- a/lib-src/libnyquist/tran/biquad.c
+++ /dev/null
@@ -1,343 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "biquad.h"
-
-void biquad_free();
-
-
-typedef struct biquad_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type s;
- long s_cnt;
- sample_block_values_type s_ptr;
-
- double z1;
- double z2;
- double b0;
- double b1;
- double b2;
- double a1;
- double a2;
-} biquad_susp_node, *biquad_susp_type;
-
-
-void biquad_n_fetch(register biquad_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double z1_reg;
- register double z2_reg;
- register double b0_reg;
- register double b1_reg;
- register double b2_reg;
- register double a1_reg;
- register double a2_reg;
- register sample_block_values_type s_ptr_reg;
- falloc_sample_block(out, "biquad_n_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s input sample block: */
- susp_check_term_log_samples(s, s_ptr, s_cnt);
- togo = MIN(togo, susp->s_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- z1_reg = susp->z1;
- z2_reg = susp->z2;
- b0_reg = susp->b0;
- b1_reg = susp->b1;
- b2_reg = susp->b2;
- a1_reg = susp->a1;
- a2_reg = susp->a2;
- s_ptr_reg = susp->s_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-double z0; z0 = *s_ptr_reg++ + a1_reg*z1_reg + a2_reg*z2_reg;
- *out_ptr_reg++ = (sample_type) (z0*b0_reg + z1_reg*b1_reg + z2_reg*b2_reg);
- z2_reg = z1_reg; z1_reg = z0;;
- } while (--n); /* inner loop */
-
- susp->z1 = z1_reg;
- susp->z2 = z2_reg;
- /* using s_ptr_reg is a bad idea on RS/6000: */
- susp->s_ptr += togo;
- out_ptr += togo;
- susp_took(s_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* biquad_n_fetch */
-
-
-void biquad_s_fetch(register biquad_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double z1_reg;
- register double z2_reg;
- register double b0_reg;
- register double b1_reg;
- register double b2_reg;
- register double a1_reg;
- register double a2_reg;
- register sample_type s_scale_reg = susp->s->scale;
- register sample_block_values_type s_ptr_reg;
- falloc_sample_block(out, "biquad_s_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s input sample block: */
- susp_check_term_log_samples(s, s_ptr, s_cnt);
- togo = MIN(togo, susp->s_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- z1_reg = susp->z1;
- z2_reg = susp->z2;
- b0_reg = susp->b0;
- b1_reg = susp->b1;
- b2_reg = susp->b2;
- a1_reg = susp->a1;
- a2_reg = susp->a2;
- s_ptr_reg = susp->s_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-double z0; z0 = (s_scale_reg * *s_ptr_reg++) + a1_reg*z1_reg + a2_reg*z2_reg;
- *out_ptr_reg++ = (sample_type) (z0*b0_reg + z1_reg*b1_reg + z2_reg*b2_reg);
- z2_reg = z1_reg; z1_reg = z0;;
- } while (--n); /* inner loop */
-
- susp->z1 = z1_reg;
- susp->z2 = z2_reg;
- /* using s_ptr_reg is a bad idea on RS/6000: */
- susp->s_ptr += togo;
- out_ptr += togo;
- susp_took(s_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* biquad_s_fetch */
-
-
-void biquad_toss_fetch(susp, snd_list)
- register biquad_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from s up to final_time for this block of zeros */
- while ((round((final_time - susp->s->t0) * susp->s->sr)) >=
- susp->s->current)
- susp_get_samples(s, s_ptr, s_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->s->t0) * susp->s->sr -
- (susp->s->current - susp->s_cnt));
- susp->s_ptr += n;
- susp_took(s_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void biquad_mark(biquad_susp_type susp)
-{
- sound_xlmark(susp->s);
-}
-
-
-void biquad_free(biquad_susp_type susp)
-{
- sound_unref(susp->s);
- ffree_generic(susp, sizeof(biquad_susp_node), "biquad_free");
-}
-
-
-void biquad_print_tree(biquad_susp_type susp, int n)
-{
- indent(n);
- stdputstr("s:");
- sound_print_tree_1(susp->s, n);
-}
-
-
-sound_type snd_make_biquad(sound_type s, double b0, double b1, double b2, double a1, double a2, double z1init, double z2init)
-{
- register biquad_susp_type susp;
- rate_type sr = s->sr;
- time_type t0 = s->t0;
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- falloc_generic(susp, biquad_susp_node, "snd_make_biquad");
- susp->z1 = z1init;
- susp->z2 = z2init;
- susp->b0 = b0;
- susp->b1 = b1;
- susp->b2 = b2;
- susp->a1 = a1;
- susp->a2 = a2;
-
- /* select a susp fn based on sample rates */
- interp_desc = (interp_desc << 2) + interp_style(s, sr);
- switch (interp_desc) {
- case INTERP_n: susp->susp.fetch = biquad_n_fetch; break;
- case INTERP_s: susp->susp.fetch = biquad_s_fetch; break;
- default: snd_badsr(); break;
- }
-
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < s->t0) sound_prepend_zeros(s, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(s->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = biquad_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = biquad_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = biquad_mark;
- susp->susp.print_tree = biquad_print_tree;
- susp->susp.name = "biquad";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(s);
- susp->susp.current = 0;
- susp->s = s;
- susp->s_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_biquad(sound_type s, double b0, double b1, double b2, double a1, double a2, double z1init, double z2init)
-{
- sound_type s_copy = sound_copy(s);
- return snd_make_biquad(s_copy, b0, b1, b2, a1, a2, z1init, z2init);
-}
diff --git a/lib-src/libnyquist/tran/biquad.h b/lib-src/libnyquist/tran/biquad.h
deleted file mode 100644
index 29f06bb..0000000
--- a/lib-src/libnyquist/tran/biquad.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_biquad(sound_type s, double b0, double b1, double b2, double a1, double a2, double z1init, double z2init);
-sound_type snd_biquad(sound_type s, double b0, double b1, double b2, double a1, double a2, double z1init, double z2init);
- /* LISP: (snd-biquad SOUND ANYNUM ANYNUM ANYNUM ANYNUM ANYNUM ANYNUM ANYNUM) */
diff --git a/lib-src/libnyquist/tran/buzz.alg b/lib-src/libnyquist/tran/buzz.alg
deleted file mode 100644
index c0fe6f5..0000000
--- a/lib-src/libnyquist/tran/buzz.alg
+++ /dev/null
@@ -1,50 +0,0 @@
-(BUZZ-ALG
-(NAME "buzz")
-(ARGUMENTS ("long" "n") ("rate_type" "sr") ("double" "hz")
- ("time_type" "t0") ("sound_type" "s_fm"))
-(SUPPORT-FUNCTIONS "
-#include \"sine.h\"
-")
-(STATE ("double" "ph_incr" "0")
- ("float" "n_2_r" "1.0F / (n * 2)")
- ("float" "n_2_p1" "(n * 2) + 1")
- ("double" "phase" "compute_phase(PI*0.5, 69.0, SINE_TABLE_LEN,
- SINE_TABLE_LEN * 440.0, sr, hz, &susp->ph_incr);
- s_fm->scale *= hz != 0 ? (sample_type) (susp->ph_incr / hz)
- : (sample_type) (SINE_TABLE_LEN / sr)"));cancel 0/0
-
-(ALWAYS-SCALE s_fm)
-(INLINE-INTERPOLATION T) ; so that modulation can be low frequency
-(STEP-FUNCTION s_fm)
-(TERMINATE (MIN s_fm))
-(LOGICAL-STOP (MIN s_fm))
-(INNER-LOOP-LOCALS " long table_index;
- double x1;
- sample_type num, denom, samp;
-")
-(INNER-LOOP "
- table_index = (long) phase;
- x1 = sine_table[table_index];
- denom = (sample_type) (x1 + (phase - table_index) *
- (sine_table[table_index + 1] - x1));
- if (denom < 0.001 && denom > -0.005) {
- samp = 1.0F;
- } else {
- double phn2p1 = phase * n_2_p1 * (1.0/SINE_TABLE_LEN);
- phn2p1 = (phn2p1 - (long) phn2p1) * SINE_TABLE_LEN;
- table_index = (long) phn2p1;
- x1 = sine_table[table_index];
- num = (sample_type) (x1 + (phn2p1 - table_index) *
- (sine_table[table_index + 1] - x1));
- samp = ((num / denom) - 1.0F) * n_2_r;
- }
- output = samp;
- phase += ph_incr + s_fm;
- while (phase > SINE_TABLE_LEN) phase -= SINE_TABLE_LEN;
- /* watch out for negative frequencies! */
- while (phase < 0) phase += SINE_TABLE_LEN")
-(CONSTANT "ph_incr" "n_2_p1" "n_2_r")
-
-(SAMPLE-RATE "sr")
-)
-
diff --git a/lib-src/libnyquist/tran/buzz.c b/lib-src/libnyquist/tran/buzz.c
deleted file mode 100644
index 718fd3c..0000000
--- a/lib-src/libnyquist/tran/buzz.c
+++ /dev/null
@@ -1,536 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "buzz.h"
-
-void buzz_free();
-
-
-typedef struct buzz_susp_struct {
- snd_susp_node susp;
- boolean started;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type s_fm;
- long s_fm_cnt;
- sample_block_values_type s_fm_ptr;
-
- /* support for interpolation of s_fm */
- sample_type s_fm_x1_sample;
- double s_fm_pHaSe;
- double s_fm_pHaSe_iNcR;
-
- /* support for ramp between samples of s_fm */
- double output_per_s_fm;
- long s_fm_n;
-
- double ph_incr;
- float n_2_r;
- float n_2_p1;
- double phase;
-} buzz_susp_node, *buzz_susp_type;
-
-
-#include "sine.h"
-
-
-void buzz_s_fetch(register buzz_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double ph_incr_reg;
- register float n_2_r_reg;
- register float n_2_p1_reg;
- register double phase_reg;
- register sample_type s_fm_scale_reg = susp->s_fm->scale;
- register sample_block_values_type s_fm_ptr_reg;
- falloc_sample_block(out, "buzz_s_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s_fm input sample block: */
- susp_check_term_log_samples(s_fm, s_fm_ptr, s_fm_cnt);
- togo = MIN(togo, susp->s_fm_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- ph_incr_reg = susp->ph_incr;
- n_2_r_reg = susp->n_2_r;
- n_2_p1_reg = susp->n_2_p1;
- phase_reg = susp->phase;
- s_fm_ptr_reg = susp->s_fm_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- long table_index;
- double x1;
- sample_type num, denom, samp;
-
- table_index = (long) phase_reg;
- x1 = sine_table[table_index];
- denom = (sample_type) (x1 + (phase_reg - table_index) *
- (sine_table[table_index + 1] - x1));
- if (denom < 0.001 && denom > -0.005) {
- samp = 1.0F;
- } else {
- double phn2p1 = phase_reg * n_2_p1_reg * (1.0/SINE_TABLE_LEN);
- phn2p1 = (phn2p1 - (long) phn2p1) * SINE_TABLE_LEN;
- table_index = (long) phn2p1;
- x1 = sine_table[table_index];
- num = (sample_type) (x1 + (phn2p1 - table_index) *
- (sine_table[table_index + 1] - x1));
- samp = ((num / denom) - 1.0F) * n_2_r_reg;
- }
- *out_ptr_reg++ = samp;
- phase_reg += ph_incr_reg + (s_fm_scale_reg * *s_fm_ptr_reg++);
- while (phase_reg > SINE_TABLE_LEN) phase_reg -= SINE_TABLE_LEN;
- /* watch out for negative frequencies! */
- while (phase_reg < 0) phase_reg += SINE_TABLE_LEN;
- } while (--n); /* inner loop */
-
- susp->phase = phase_reg;
- /* using s_fm_ptr_reg is a bad idea on RS/6000: */
- susp->s_fm_ptr += togo;
- out_ptr += togo;
- susp_took(s_fm_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* buzz_s_fetch */
-
-
-void buzz_i_fetch(register buzz_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double ph_incr_reg;
- register float n_2_r_reg;
- register float n_2_p1_reg;
- register double phase_reg;
- register double s_fm_pHaSe_iNcR_rEg = susp->s_fm_pHaSe_iNcR;
- register double s_fm_pHaSe_ReG;
- register sample_type s_fm_x1_sample_reg;
- falloc_sample_block(out, "buzz_i_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp_check_term_log_samples(s_fm, s_fm_ptr, s_fm_cnt);
- susp->s_fm_x1_sample = susp_fetch_sample(s_fm, s_fm_ptr, s_fm_cnt);
- }
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- ph_incr_reg = susp->ph_incr;
- n_2_r_reg = susp->n_2_r;
- n_2_p1_reg = susp->n_2_p1;
- phase_reg = susp->phase;
- s_fm_pHaSe_ReG = susp->s_fm_pHaSe;
- s_fm_x1_sample_reg = susp->s_fm_x1_sample;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- long table_index;
- double x1;
- sample_type num, denom, samp;
- if (s_fm_pHaSe_ReG >= 1.0) {
-/* fixup-depends s_fm */
- /* pick up next sample as s_fm_x1_sample: */
- susp->s_fm_ptr++;
- susp_took(s_fm_cnt, 1);
- s_fm_pHaSe_ReG -= 1.0;
- susp_check_term_log_samples_break(s_fm, s_fm_ptr, s_fm_cnt, s_fm_x1_sample_reg);
- s_fm_x1_sample_reg = susp_current_sample(s_fm, s_fm_ptr);
- }
-
- table_index = (long) phase_reg;
- x1 = sine_table[table_index];
- denom = (sample_type) (x1 + (phase_reg - table_index) *
- (sine_table[table_index + 1] - x1));
- if (denom < 0.001 && denom > -0.005) {
- samp = 1.0F;
- } else {
- double phn2p1 = phase_reg * n_2_p1_reg * (1.0/SINE_TABLE_LEN);
- phn2p1 = (phn2p1 - (long) phn2p1) * SINE_TABLE_LEN;
- table_index = (long) phn2p1;
- x1 = sine_table[table_index];
- num = (sample_type) (x1 + (phn2p1 - table_index) *
- (sine_table[table_index + 1] - x1));
- samp = ((num / denom) - 1.0F) * n_2_r_reg;
- }
- *out_ptr_reg++ = samp;
- phase_reg += ph_incr_reg + s_fm_x1_sample_reg;
- while (phase_reg > SINE_TABLE_LEN) phase_reg -= SINE_TABLE_LEN;
- /* watch out for negative frequencies! */
- while (phase_reg < 0) phase_reg += SINE_TABLE_LEN;
- s_fm_pHaSe_ReG += s_fm_pHaSe_iNcR_rEg;
- } while (--n); /* inner loop */
-
- togo -= n;
- susp->phase = phase_reg;
- susp->s_fm_pHaSe = s_fm_pHaSe_ReG;
- susp->s_fm_x1_sample = s_fm_x1_sample_reg;
- out_ptr += togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* buzz_i_fetch */
-
-
-void buzz_r_fetch(register buzz_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- sample_type s_fm_val;
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double ph_incr_reg;
- register float n_2_r_reg;
- register float n_2_p1_reg;
- register double phase_reg;
- falloc_sample_block(out, "buzz_r_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp->s_fm_pHaSe = 1.0;
- }
-
- susp_check_term_log_samples(s_fm, s_fm_ptr, s_fm_cnt);
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* grab next s_fm_x1_sample when phase goes past 1.0; */
- /* use s_fm_n (computed below) to avoid roundoff errors: */
- if (susp->s_fm_n <= 0) {
- susp_check_term_log_samples(s_fm, s_fm_ptr, s_fm_cnt);
- susp->s_fm_x1_sample = susp_fetch_sample(s_fm, s_fm_ptr, s_fm_cnt);
- susp->s_fm_pHaSe -= 1.0;
- /* s_fm_n gets number of samples before phase exceeds 1.0: */
- susp->s_fm_n = (long) ((1.0 - susp->s_fm_pHaSe) *
- susp->output_per_s_fm);
- }
- togo = MIN(togo, susp->s_fm_n);
- s_fm_val = susp->s_fm_x1_sample;
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- ph_incr_reg = susp->ph_incr;
- n_2_r_reg = susp->n_2_r;
- n_2_p1_reg = susp->n_2_p1;
- phase_reg = susp->phase;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- long table_index;
- double x1;
- sample_type num, denom, samp;
-
- table_index = (long) phase_reg;
- x1 = sine_table[table_index];
- denom = (sample_type) (x1 + (phase_reg - table_index) *
- (sine_table[table_index + 1] - x1));
- if (denom < 0.001 && denom > -0.005) {
- samp = 1.0F;
- } else {
- double phn2p1 = phase_reg * n_2_p1_reg * (1.0/SINE_TABLE_LEN);
- phn2p1 = (phn2p1 - (long) phn2p1) * SINE_TABLE_LEN;
- table_index = (long) phn2p1;
- x1 = sine_table[table_index];
- num = (sample_type) (x1 + (phn2p1 - table_index) *
- (sine_table[table_index + 1] - x1));
- samp = ((num / denom) - 1.0F) * n_2_r_reg;
- }
- *out_ptr_reg++ = samp;
- phase_reg += ph_incr_reg + s_fm_val;
- while (phase_reg > SINE_TABLE_LEN) phase_reg -= SINE_TABLE_LEN;
- /* watch out for negative frequencies! */
- while (phase_reg < 0) phase_reg += SINE_TABLE_LEN;
- } while (--n); /* inner loop */
-
- susp->phase = phase_reg;
- out_ptr += togo;
- susp->s_fm_pHaSe += togo * susp->s_fm_pHaSe_iNcR;
- susp->s_fm_n -= togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* buzz_r_fetch */
-
-
-void buzz_toss_fetch(susp, snd_list)
- register buzz_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from s_fm up to final_time for this block of zeros */
- while ((round((final_time - susp->s_fm->t0) * susp->s_fm->sr)) >=
- susp->s_fm->current)
- susp_get_samples(s_fm, s_fm_ptr, s_fm_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->s_fm->t0) * susp->s_fm->sr -
- (susp->s_fm->current - susp->s_fm_cnt));
- susp->s_fm_ptr += n;
- susp_took(s_fm_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void buzz_mark(buzz_susp_type susp)
-{
- sound_xlmark(susp->s_fm);
-}
-
-
-void buzz_free(buzz_susp_type susp)
-{
- sound_unref(susp->s_fm);
- ffree_generic(susp, sizeof(buzz_susp_node), "buzz_free");
-}
-
-
-void buzz_print_tree(buzz_susp_type susp, int n)
-{
- indent(n);
- stdputstr("s_fm:");
- sound_print_tree_1(susp->s_fm, n);
-}
-
-
-sound_type snd_make_buzz(long n, rate_type sr, double hz, time_type t0, sound_type s_fm)
-{
- register buzz_susp_type susp;
- /* sr specified as input parameter */
- /* t0 specified as input parameter */
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- falloc_generic(susp, buzz_susp_node, "snd_make_buzz");
- susp->ph_incr = 0;
- susp->n_2_r = 1.0F / (n * 2);
- susp->n_2_p1 = (float) ((n * 2) + 1);
- susp->phase = compute_phase(PI*0.5, 69.0, SINE_TABLE_LEN,
- SINE_TABLE_LEN * 440.0, sr, hz, &susp->ph_incr);
- s_fm->scale *= hz != 0 ? (sample_type) (susp->ph_incr / hz)
- : (sample_type) (SINE_TABLE_LEN / sr);
-
- /* select a susp fn based on sample rates */
- interp_desc = (interp_desc << 2) + interp_style(s_fm, sr);
- switch (interp_desc) {
- case INTERP_n: /* handled below */
- case INTERP_s: susp->susp.fetch = buzz_s_fetch; break;
- case INTERP_i: susp->susp.fetch = buzz_i_fetch; break;
- case INTERP_r: susp->susp.fetch = buzz_r_fetch; break;
- default: snd_badsr(); break;
- }
-
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < s_fm->t0) sound_prepend_zeros(s_fm, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(s_fm->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = buzz_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = buzz_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = buzz_mark;
- susp->susp.print_tree = buzz_print_tree;
- susp->susp.name = "buzz";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(s_fm);
- susp->started = false;
- susp->susp.current = 0;
- susp->s_fm = s_fm;
- susp->s_fm_cnt = 0;
- susp->s_fm_pHaSe = 0.0;
- susp->s_fm_pHaSe_iNcR = s_fm->sr / sr;
- susp->s_fm_n = 0;
- susp->output_per_s_fm = sr / s_fm->sr;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_buzz(long n, rate_type sr, double hz, time_type t0, sound_type s_fm)
-{
- sound_type s_fm_copy = sound_copy(s_fm);
- return snd_make_buzz(n, sr, hz, t0, s_fm_copy);
-}
diff --git a/lib-src/libnyquist/tran/buzz.h b/lib-src/libnyquist/tran/buzz.h
deleted file mode 100644
index 466c7f3..0000000
--- a/lib-src/libnyquist/tran/buzz.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_buzz(long n, rate_type sr, double hz, time_type t0, sound_type s_fm);
-sound_type snd_buzz(long n, rate_type sr, double hz, time_type t0, sound_type s_fm);
- /* LISP: (snd-buzz FIXNUM ANYNUM ANYNUM ANYNUM SOUND) */
diff --git a/lib-src/libnyquist/tran/chase.alg b/lib-src/libnyquist/tran/chase.alg
deleted file mode 100644
index dd4b0c1..0000000
--- a/lib-src/libnyquist/tran/chase.alg
+++ /dev/null
@@ -1,19 +0,0 @@
-(CHASE-ALG
- (NAME "chase")
- (ARGUMENTS ("sound_type" "input") ("double" "risetime") ("double" "falltime"))
- (STATE ("double" "level" "0.0")
- ("double" "upslope" "1.0/(input->sr * risetime)")
- ("double" "downslope" "1.0/(input->sr * falltime)"))
- (START (MIN input))
- (INNER-LOOP " double x = input;
- if (x > level) {
- level += upslope;
- if (x < level) level = x;
- } else {
- level -= downslope;
- if (x > level) level = x;
- }
- output = (sample_type) level;")
- (TERMINATE (MIN input))
- (LOGICAL-STOP (MIN input))
-)
diff --git a/lib-src/libnyquist/tran/chase.c b/lib-src/libnyquist/tran/chase.c
deleted file mode 100644
index 002c684..0000000
--- a/lib-src/libnyquist/tran/chase.c
+++ /dev/null
@@ -1,333 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "chase.h"
-
-void chase_free();
-
-
-typedef struct chase_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type input;
- long input_cnt;
- sample_block_values_type input_ptr;
-
- double level;
- double upslope;
- double downslope;
-} chase_susp_node, *chase_susp_type;
-
-
-void chase_n_fetch(register chase_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double level_reg;
- register double upslope_reg;
- register double downslope_reg;
- register sample_block_values_type input_ptr_reg;
- falloc_sample_block(out, "chase_n_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the input input sample block: */
- susp_check_term_log_samples(input, input_ptr, input_cnt);
- togo = MIN(togo, susp->input_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- level_reg = susp->level;
- upslope_reg = susp->upslope;
- downslope_reg = susp->downslope;
- input_ptr_reg = susp->input_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- double x = *input_ptr_reg++;
- if (x > level_reg) {
- level_reg += upslope_reg;
- if (x < level_reg) level_reg = x;
- } else {
- level_reg -= downslope_reg;
- if (x > level_reg) level_reg = x;
- }
- *out_ptr_reg++ = (sample_type) level_reg;;
- } while (--n); /* inner loop */
-
- susp->level = level_reg;
- susp->upslope = upslope_reg;
- susp->downslope = downslope_reg;
- /* using input_ptr_reg is a bad idea on RS/6000: */
- susp->input_ptr += togo;
- out_ptr += togo;
- susp_took(input_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* chase_n_fetch */
-
-
-void chase_s_fetch(register chase_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double level_reg;
- register double upslope_reg;
- register double downslope_reg;
- register sample_type input_scale_reg = susp->input->scale;
- register sample_block_values_type input_ptr_reg;
- falloc_sample_block(out, "chase_s_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the input input sample block: */
- susp_check_term_log_samples(input, input_ptr, input_cnt);
- togo = MIN(togo, susp->input_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- level_reg = susp->level;
- upslope_reg = susp->upslope;
- downslope_reg = susp->downslope;
- input_ptr_reg = susp->input_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- double x = (input_scale_reg * *input_ptr_reg++);
- if (x > level_reg) {
- level_reg += upslope_reg;
- if (x < level_reg) level_reg = x;
- } else {
- level_reg -= downslope_reg;
- if (x > level_reg) level_reg = x;
- }
- *out_ptr_reg++ = (sample_type) level_reg;;
- } while (--n); /* inner loop */
-
- susp->level = level_reg;
- susp->upslope = upslope_reg;
- susp->downslope = downslope_reg;
- /* using input_ptr_reg is a bad idea on RS/6000: */
- susp->input_ptr += togo;
- out_ptr += togo;
- susp_took(input_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* chase_s_fetch */
-
-
-void chase_toss_fetch(susp, snd_list)
- register chase_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from input up to final_time for this block of zeros */
- while ((round((final_time - susp->input->t0) * susp->input->sr)) >=
- susp->input->current)
- susp_get_samples(input, input_ptr, input_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->input->t0) * susp->input->sr -
- (susp->input->current - susp->input_cnt));
- susp->input_ptr += n;
- susp_took(input_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void chase_mark(chase_susp_type susp)
-{
- sound_xlmark(susp->input);
-}
-
-
-void chase_free(chase_susp_type susp)
-{
- sound_unref(susp->input);
- ffree_generic(susp, sizeof(chase_susp_node), "chase_free");
-}
-
-
-void chase_print_tree(chase_susp_type susp, int n)
-{
- indent(n);
- stdputstr("input:");
- sound_print_tree_1(susp->input, n);
-}
-
-
-sound_type snd_make_chase(sound_type input, double risetime, double falltime)
-{
- register chase_susp_type susp;
- rate_type sr = input->sr;
- time_type t0 = input->t0;
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- falloc_generic(susp, chase_susp_node, "snd_make_chase");
- susp->level = 0.0;
- susp->upslope = 1.0/(input->sr * risetime);
- susp->downslope = 1.0/(input->sr * falltime);
-
- /* select a susp fn based on sample rates */
- interp_desc = (interp_desc << 2) + interp_style(input, sr);
- switch (interp_desc) {
- case INTERP_n: susp->susp.fetch = chase_n_fetch; break;
- case INTERP_s: susp->susp.fetch = chase_s_fetch; break;
- default: snd_badsr(); break;
- }
-
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < input->t0) sound_prepend_zeros(input, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(input->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = chase_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = chase_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = chase_mark;
- susp->susp.print_tree = chase_print_tree;
- susp->susp.name = "chase";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(input);
- susp->susp.current = 0;
- susp->input = input;
- susp->input_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_chase(sound_type input, double risetime, double falltime)
-{
- sound_type input_copy = sound_copy(input);
- return snd_make_chase(input_copy, risetime, falltime);
-}
diff --git a/lib-src/libnyquist/tran/chase.h b/lib-src/libnyquist/tran/chase.h
deleted file mode 100644
index a63112e..0000000
--- a/lib-src/libnyquist/tran/chase.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_chase(sound_type input, double risetime, double falltime);
-sound_type snd_chase(sound_type input, double risetime, double falltime);
- /* LISP: (snd-chase SOUND ANYNUM ANYNUM) */
diff --git a/lib-src/libnyquist/tran/clip.alg b/lib-src/libnyquist/tran/clip.alg
deleted file mode 100644
index a541ebb..0000000
--- a/lib-src/libnyquist/tran/clip.alg
+++ /dev/null
@@ -1,10 +0,0 @@
-(CLIP-ALG
- (NAME "clip")
- (ARGUMENTS ("sound_type" "s") ("double" "level"))
- (LINEAR s) ; this will move the scale factor to the result
- (STATE ("double" "lev" "level * s->scale"))
- (START (MIN s))
- (INNER-LOOP "double x = s; output = (sample_type) (x > lev ? lev : (x < -lev ? -lev : x))")
- (TERMINATE (MIN s))
- (LOGICAL-STOP (MIN s))
-)
diff --git a/lib-src/libnyquist/tran/clip.c b/lib-src/libnyquist/tran/clip.c
deleted file mode 100644
index 1609a52..0000000
--- a/lib-src/libnyquist/tran/clip.c
+++ /dev/null
@@ -1,210 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "clip.h"
-
-void clip_free();
-
-
-typedef struct clip_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type s;
- long s_cnt;
- sample_block_values_type s_ptr;
-
- double lev;
-} clip_susp_node, *clip_susp_type;
-
-
-void clip_n_fetch(register clip_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double lev_reg;
- register sample_block_values_type s_ptr_reg;
- falloc_sample_block(out, "clip_n_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s input sample block: */
- susp_check_term_log_samples(s, s_ptr, s_cnt);
- togo = MIN(togo, susp->s_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- lev_reg = susp->lev;
- s_ptr_reg = susp->s_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-double x = *s_ptr_reg++; *out_ptr_reg++ = (sample_type) (x > lev_reg ? lev_reg : (x < -lev_reg ? -lev_reg : x));
- } while (--n); /* inner loop */
-
- susp->lev = lev_reg;
- /* using s_ptr_reg is a bad idea on RS/6000: */
- susp->s_ptr += togo;
- out_ptr += togo;
- susp_took(s_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* clip_n_fetch */
-
-
-void clip_toss_fetch(susp, snd_list)
- register clip_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from s up to final_time for this block of zeros */
- while ((round((final_time - susp->s->t0) * susp->s->sr)) >=
- susp->s->current)
- susp_get_samples(s, s_ptr, s_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->s->t0) * susp->s->sr -
- (susp->s->current - susp->s_cnt));
- susp->s_ptr += n;
- susp_took(s_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void clip_mark(clip_susp_type susp)
-{
- sound_xlmark(susp->s);
-}
-
-
-void clip_free(clip_susp_type susp)
-{
- sound_unref(susp->s);
- ffree_generic(susp, sizeof(clip_susp_node), "clip_free");
-}
-
-
-void clip_print_tree(clip_susp_type susp, int n)
-{
- indent(n);
- stdputstr("s:");
- sound_print_tree_1(susp->s, n);
-}
-
-
-sound_type snd_make_clip(sound_type s, double level)
-{
- register clip_susp_type susp;
- rate_type sr = s->sr;
- time_type t0 = s->t0;
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- /* combine scale factors of linear inputs (S) */
- scale_factor *= s->scale;
- s->scale = 1.0F;
-
- /* try to push scale_factor back to a low sr input */
- if (s->sr < sr) { s->scale = scale_factor; scale_factor = 1.0F; }
-
- falloc_generic(susp, clip_susp_node, "snd_make_clip");
- susp->lev = level * s->scale;
- susp->susp.fetch = clip_n_fetch;
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < s->t0) sound_prepend_zeros(s, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(s->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = clip_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = clip_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = clip_mark;
- susp->susp.print_tree = clip_print_tree;
- susp->susp.name = "clip";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(s);
- susp->susp.current = 0;
- susp->s = s;
- susp->s_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_clip(sound_type s, double level)
-{
- sound_type s_copy = sound_copy(s);
- return snd_make_clip(s_copy, level);
-}
diff --git a/lib-src/libnyquist/tran/clip.h b/lib-src/libnyquist/tran/clip.h
deleted file mode 100644
index 1b28307..0000000
--- a/lib-src/libnyquist/tran/clip.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_clip(sound_type s, double level);
-sound_type snd_clip(sound_type s, double level);
- /* LISP: (snd-clip SOUND ANYNUM) */
diff --git a/lib-src/libnyquist/tran/congen.alg b/lib-src/libnyquist/tran/congen.alg
deleted file mode 100644
index 9ff02d2..0000000
--- a/lib-src/libnyquist/tran/congen.alg
+++ /dev/null
@@ -1,17 +0,0 @@
-(CONGEN
-(NAME "congen")
-(ARGUMENTS ("sound_type" "sndin") ("double" "risetime") ("double" "falltime"))
-(START (MIN sndin))
-(STATE ("double" "value" "0")
- ("double" "rise_factor" "exp(log(0.5) / (sndin->sr * risetime))")
- ("double" "fall_factor" "exp(log(0.5) / (sndin->sr * falltime))"))
-(CONSTANT "fall_factor" "rise_factor")
-(ALWAYS-SCALE sndin)
-(TERMINATE (MIN sndin))
-(INNER-LOOP " sample_type current = sndin;
- if (current > value) {
- value = current - (current - value) * rise_factor;
- } else {
- value = current - (current - value) * fall_factor;
- }
- output = (sample_type) value;"))
diff --git a/lib-src/libnyquist/tran/congen.c b/lib-src/libnyquist/tran/congen.c
deleted file mode 100644
index 735e78f..0000000
--- a/lib-src/libnyquist/tran/congen.c
+++ /dev/null
@@ -1,185 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "congen.h"
-
-void congen_free();
-
-
-typedef struct congen_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- sound_type sndin;
- long sndin_cnt;
- sample_block_values_type sndin_ptr;
-
- double value;
- double rise_factor;
- double fall_factor;
-} congen_susp_node, *congen_susp_type;
-
-
-void congen_s_fetch(register congen_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double value_reg;
- register double rise_factor_reg;
- register double fall_factor_reg;
- register sample_type sndin_scale_reg = susp->sndin->scale;
- register sample_block_values_type sndin_ptr_reg;
- falloc_sample_block(out, "congen_s_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the sndin input sample block: */
- susp_check_term_samples(sndin, sndin_ptr, sndin_cnt);
- togo = MIN(togo, susp->sndin_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
- n = togo;
- value_reg = susp->value;
- rise_factor_reg = susp->rise_factor;
- fall_factor_reg = susp->fall_factor;
- sndin_ptr_reg = susp->sndin_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- sample_type current = (sndin_scale_reg * *sndin_ptr_reg++);
- if (current > value_reg) {
- value_reg = current - (current - value_reg) * rise_factor_reg;
- } else {
- value_reg = current - (current - value_reg) * fall_factor_reg;
- }
- *out_ptr_reg++ = (sample_type) value_reg;;
- } while (--n); /* inner loop */
-
- susp->value = value_reg;
- /* using sndin_ptr_reg is a bad idea on RS/6000: */
- susp->sndin_ptr += togo;
- out_ptr += togo;
- susp_took(sndin_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
-} /* congen_s_fetch */
-
-
-void congen_toss_fetch(susp, snd_list)
- register congen_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from sndin up to final_time for this block of zeros */
- while ((round((final_time - susp->sndin->t0) * susp->sndin->sr)) >=
- susp->sndin->current)
- susp_get_samples(sndin, sndin_ptr, sndin_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->sndin->t0) * susp->sndin->sr -
- (susp->sndin->current - susp->sndin_cnt));
- susp->sndin_ptr += n;
- susp_took(sndin_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void congen_mark(congen_susp_type susp)
-{
- sound_xlmark(susp->sndin);
-}
-
-
-void congen_free(congen_susp_type susp)
-{
- sound_unref(susp->sndin);
- ffree_generic(susp, sizeof(congen_susp_node), "congen_free");
-}
-
-
-void congen_print_tree(congen_susp_type susp, int n)
-{
- indent(n);
- stdputstr("sndin:");
- sound_print_tree_1(susp->sndin, n);
-}
-
-
-sound_type snd_make_congen(sound_type sndin, double risetime, double falltime)
-{
- register congen_susp_type susp;
- rate_type sr = sndin->sr;
- time_type t0 = sndin->t0;
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- falloc_generic(susp, congen_susp_node, "snd_make_congen");
- susp->value = 0;
- susp->rise_factor = exp(log(0.5) / (sndin->sr * risetime));
- susp->fall_factor = exp(log(0.5) / (sndin->sr * falltime));
- susp->susp.fetch = congen_s_fetch;
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < sndin->t0) sound_prepend_zeros(sndin, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(sndin->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = congen_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = congen_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = congen_mark;
- susp->susp.print_tree = congen_print_tree;
- susp->susp.name = "congen";
- susp->susp.log_stop_cnt = UNKNOWN;
- susp->susp.current = 0;
- susp->sndin = sndin;
- susp->sndin_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_congen(sound_type sndin, double risetime, double falltime)
-{
- sound_type sndin_copy = sound_copy(sndin);
- return snd_make_congen(sndin_copy, risetime, falltime);
-}
diff --git a/lib-src/libnyquist/tran/congen.h b/lib-src/libnyquist/tran/congen.h
deleted file mode 100644
index dd336b2..0000000
--- a/lib-src/libnyquist/tran/congen.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_congen(sound_type sndin, double risetime, double falltime);
-sound_type snd_congen(sound_type sndin, double risetime, double falltime);
- /* LISP: (snd-congen SOUND ANYNUM ANYNUM) */
diff --git a/lib-src/libnyquist/tran/const.alg b/lib-src/libnyquist/tran/const.alg
deleted file mode 100644
index 3d89b09..0000000
--- a/lib-src/libnyquist/tran/const.alg
+++ /dev/null
@@ -1,11 +0,0 @@
-(CONST-ALG
-(NAME "const")
-(ARGUMENTS ("double" "c") ("time_type" "t0")
- ("rate_type" "sr") ("time_type" "d"))
-(STATE ("sample_type" "c" "(sample_type) c"))
-(CONSTANT "c")
-(TERMINATE (AFTER "d"))
-(INNER-LOOP "output = c")
-(SAMPLE-RATE "sr")
-)
-
diff --git a/lib-src/libnyquist/tran/const.c b/lib-src/libnyquist/tran/const.c
deleted file mode 100644
index 042cd52..0000000
--- a/lib-src/libnyquist/tran/const.c
+++ /dev/null
@@ -1,109 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "const.h"
-
-void const_free();
-
-
-typedef struct const_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
-
- sample_type c;
-} const_susp_node, *const_susp_type;
-
-
-void const__fetch(register const_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register sample_type c_reg;
- falloc_sample_block(out, "const__fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
- n = togo;
- c_reg = susp->c;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-*out_ptr_reg++ = c_reg;
- } while (--n); /* inner loop */
-
- out_ptr += togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
-} /* const__fetch */
-
-
-void const_free(const_susp_type susp)
-{
- ffree_generic(susp, sizeof(const_susp_node), "const_free");
-}
-
-
-void const_print_tree(const_susp_type susp, int n)
-{
-}
-
-
-sound_type snd_make_const(double c, time_type t0, rate_type sr, time_type d)
-{
- register const_susp_type susp;
- /* sr specified as input parameter */
- /* t0 specified as input parameter */
- sample_type scale_factor = 1.0F;
- falloc_generic(susp, const_susp_node, "snd_make_const");
- susp->c = (sample_type) c;
- susp->susp.fetch = const__fetch;
-
- susp->terminate_cnt = round((d) * sr);
- /* initialize susp state */
- susp->susp.free = const_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = NULL;
- susp->susp.print_tree = const_print_tree;
- susp->susp.name = "const";
- susp->susp.log_stop_cnt = UNKNOWN;
- susp->susp.current = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_const(double c, time_type t0, rate_type sr, time_type d)
-{
- return snd_make_const(c, t0, sr, d);
-}
diff --git a/lib-src/libnyquist/tran/const.h b/lib-src/libnyquist/tran/const.h
deleted file mode 100644
index e29a167..0000000
--- a/lib-src/libnyquist/tran/const.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_const(double c, time_type t0, rate_type sr, time_type d);
-sound_type snd_const(double c, time_type t0, rate_type sr, time_type d);
- /* LISP: (snd-const ANYNUM ANYNUM ANYNUM ANYNUM) */
diff --git a/lib-src/libnyquist/tran/convolve.alg b/lib-src/libnyquist/tran/convolve.alg
deleted file mode 100644
index 94107b4..0000000
--- a/lib-src/libnyquist/tran/convolve.alg
+++ /dev/null
@@ -1,63 +0,0 @@
-(CONVOLVE-ALG
-(NAME "convolve")
-(SUPPORT-FUNCTIONS "
-void h_reverse(sample_type *h, long len)
-{
- sample_type temp;
- int i;
-
- for (i = 0; i < len; i++) {
- temp = h[i];
- h[i] = h[len - 1];
- h[len - 1] = temp;
- len--;
- }
-}
-")
-
-(ARGUMENTS ("sound_type" "x_snd") ("sound_type" "h_snd") )
-(TABLE "h_snd")
-(START (MIN x_snd))
-(NOT-IN-INNER-LOOP "h_snd")
-(STATE
- ("table_type" "table" "sound_to_table(h_snd)")
- ("sample_type *" "h_buf" "susp->table->samples")
- ("double" "length_of_h" "susp->table->length")
- ("long" "h_len" "(long) susp->length_of_h;
- h_reverse(susp->h_buf, susp->h_len)")
- ("long" "x_buf_len" "2 * susp->h_len")
- ("sample_type *" "x_buffer_pointer"
- "calloc((2 * (susp->h_len)), sizeof(float))")
- ("sample_type *" "x_buffer_current" "susp->x_buffer_pointer") )
-(ALWAYS-SCALE x_snd)
-(TERMINATE (MIN x_snd))
-(LOGICAL-STOP (MIN x_snd))
-(INNER-LOOP-LOCALS
- "long i; double sum;")
-(INNER-LOOP "
- /* see if we've reached end of x_buffer */
- if ((x_buffer_pointer + x_buf_len) <= (x_buffer_current + h_len)) {
- /* shift x_buffer from current back to base */
- for (i = 1; i < h_len; i++) {
- x_buffer_pointer[i-1] = x_buffer_current[i];
- }
- /* this will be incremented back to x_buffer_pointer below */
- x_buffer_current = x_buffer_pointer - 1;
- }
-
- x_buffer_current++;
-
- x_buffer_current[h_len - 1] = x_snd;
-
- sum = 0.0;
- for (i = 0; i < h_len; i++) {
- sum += x_buffer_current[i] * h_buf[i];
- }
-
- output = (sample_type) sum;
-")
-(CONSTANT "h_buf" "h_len" "x_buf_len" "table")
-(SAMPLE-RATE "x_snd->sr")
-(FINALIZATION " table_unref(susp->table);
- free(susp->x_buffer_pointer);")
-)
diff --git a/lib-src/libnyquist/tran/convolve.c b/lib-src/libnyquist/tran/convolve.c
deleted file mode 100644
index d099ab0..0000000
--- a/lib-src/libnyquist/tran/convolve.c
+++ /dev/null
@@ -1,262 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "convolve.h"
-
-void convolve_free();
-
-
-typedef struct convolve_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type x_snd;
- long x_snd_cnt;
- sample_block_values_type x_snd_ptr;
-
- table_type table;
- sample_type *h_buf;
- double length_of_h;
- long h_len;
- long x_buf_len;
- sample_type *x_buffer_pointer;
- sample_type *x_buffer_current;
-} convolve_susp_node, *convolve_susp_type;
-
-
-void h_reverse(sample_type *h, long len)
-{
- sample_type temp;
- int i;
-
- for (i = 0; i < len; i++) {
- temp = h[i];
- h[i] = h[len - 1];
- h[len - 1] = temp;
- len--;
- }
-}
-
-
-void convolve_s_fetch(register convolve_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register sample_type * h_buf_reg;
- register long h_len_reg;
- register long x_buf_len_reg;
- register sample_type * x_buffer_pointer_reg;
- register sample_type * x_buffer_current_reg;
- register sample_type x_snd_scale_reg = susp->x_snd->scale;
- register sample_block_values_type x_snd_ptr_reg;
- falloc_sample_block(out, "convolve_s_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the x_snd input sample block: */
- susp_check_term_log_samples(x_snd, x_snd_ptr, x_snd_cnt);
- togo = MIN(togo, susp->x_snd_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- h_buf_reg = susp->h_buf;
- h_len_reg = susp->h_len;
- x_buf_len_reg = susp->x_buf_len;
- x_buffer_pointer_reg = susp->x_buffer_pointer;
- x_buffer_current_reg = susp->x_buffer_current;
- x_snd_ptr_reg = susp->x_snd_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-long i; double sum;
- /* see if we've reached end of x_buffer */
- if ((x_buffer_pointer_reg + x_buf_len_reg) <= (x_buffer_current_reg + h_len_reg)) {
- /* shift x_buffer from current back to base */
- for (i = 1; i < h_len_reg; i++) {
- x_buffer_pointer_reg[i-1] = x_buffer_current_reg[i];
- }
- /* this will be incremented back to x_buffer_pointer_reg below */
- x_buffer_current_reg = x_buffer_pointer_reg - 1;
- }
-
- x_buffer_current_reg++;
-
- x_buffer_current_reg[h_len_reg - 1] = (x_snd_scale_reg * *x_snd_ptr_reg++);
-
- sum = 0.0;
- for (i = 0; i < h_len_reg; i++) {
- sum += x_buffer_current_reg[i] * h_buf_reg[i];
- }
-
- *out_ptr_reg++ = (sample_type) sum;
-;
- } while (--n); /* inner loop */
-
- susp->x_buffer_pointer = x_buffer_pointer_reg;
- susp->x_buffer_current = x_buffer_current_reg;
- /* using x_snd_ptr_reg is a bad idea on RS/6000: */
- susp->x_snd_ptr += togo;
- out_ptr += togo;
- susp_took(x_snd_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* convolve_s_fetch */
-
-
-void convolve_toss_fetch(susp, snd_list)
- register convolve_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from x_snd up to final_time for this block of zeros */
- while ((round((final_time - susp->x_snd->t0) * susp->x_snd->sr)) >=
- susp->x_snd->current)
- susp_get_samples(x_snd, x_snd_ptr, x_snd_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->x_snd->t0) * susp->x_snd->sr -
- (susp->x_snd->current - susp->x_snd_cnt));
- susp->x_snd_ptr += n;
- susp_took(x_snd_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void convolve_mark(convolve_susp_type susp)
-{
- sound_xlmark(susp->x_snd);
-}
-
-
-void convolve_free(convolve_susp_type susp)
-{
- table_unref(susp->table);
- free(susp->x_buffer_pointer); sound_unref(susp->x_snd);
- ffree_generic(susp, sizeof(convolve_susp_node), "convolve_free");
-}
-
-
-void convolve_print_tree(convolve_susp_type susp, int n)
-{
- indent(n);
- stdputstr("x_snd:");
- sound_print_tree_1(susp->x_snd, n);
-}
-
-
-sound_type snd_make_convolve(sound_type x_snd, sound_type h_snd)
-{
- register convolve_susp_type susp;
- rate_type sr = x_snd->sr;
- time_type t0 = x_snd->t0;
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- falloc_generic(susp, convolve_susp_node, "snd_make_convolve");
- susp->table = sound_to_table(h_snd);
- susp->h_buf = susp->table->samples;
- susp->length_of_h = susp->table->length;
- susp->h_len = (long) susp->length_of_h;
- h_reverse(susp->h_buf, susp->h_len);
- susp->x_buf_len = 2 * susp->h_len;
- susp->x_buffer_pointer = calloc((2 * (susp->h_len)), sizeof(float));
- susp->x_buffer_current = susp->x_buffer_pointer;
- susp->susp.fetch = convolve_s_fetch;
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < x_snd->t0) sound_prepend_zeros(x_snd, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(x_snd->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = convolve_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = convolve_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = convolve_mark;
- susp->susp.print_tree = convolve_print_tree;
- susp->susp.name = "convolve";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(x_snd);
- susp->susp.current = 0;
- susp->x_snd = x_snd;
- susp->x_snd_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_convolve(sound_type x_snd, sound_type h_snd)
-{
- sound_type x_snd_copy = sound_copy(x_snd);
- return snd_make_convolve(x_snd_copy, h_snd);
-}
diff --git a/lib-src/libnyquist/tran/convolve.h b/lib-src/libnyquist/tran/convolve.h
deleted file mode 100644
index 27eac33..0000000
--- a/lib-src/libnyquist/tran/convolve.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_convolve(sound_type x_snd, sound_type h_snd);
-sound_type snd_convolve(sound_type x_snd, sound_type h_snd);
- /* LISP: (snd-convolve SOUND SOUND) */
diff --git a/lib-src/libnyquist/tran/coterm.alg b/lib-src/libnyquist/tran/coterm.alg
deleted file mode 100644
index 84bce1d..0000000
--- a/lib-src/libnyquist/tran/coterm.alg
+++ /dev/null
@@ -1,11 +0,0 @@
-(COTERM-ALG
- (NAME "coterm")
- (ARGUMENTS ("sound_type" "s1") ("sound_type" "s2"))
- (START (MAX s1 s2))
- (INNER-LOOP "{sample_type dummy = s2; output = s1;}")
- (LINEAR s1)
- (TERMINATE (MIN s1 s2))
- (LOGICAL-STOP (MIN s1 s2))
- (INTERNAL-SCALING s2)
-)
-
diff --git a/lib-src/libnyquist/tran/coterm.c b/lib-src/libnyquist/tran/coterm.c
deleted file mode 100644
index c1859fc..0000000
--- a/lib-src/libnyquist/tran/coterm.c
+++ /dev/null
@@ -1,238 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "coterm.h"
-
-void coterm_free();
-
-
-typedef struct coterm_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type s1;
- long s1_cnt;
- sample_block_values_type s1_ptr;
- sound_type s2;
- long s2_cnt;
- sample_block_values_type s2_ptr;
-} coterm_susp_node, *coterm_susp_type;
-
-
-void coterm_nn_fetch(register coterm_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register sample_block_values_type s2_ptr_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "coterm_nn_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past the s2 input sample block: */
- susp_check_term_log_samples(s2, s2_ptr, s2_cnt);
- togo = MIN(togo, susp->s2_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- s2_ptr_reg = susp->s2_ptr;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-{sample_type dummy = *s2_ptr_reg++; *out_ptr_reg++ = *s1_ptr_reg++;};
- } while (--n); /* inner loop */
-
- /* using s2_ptr_reg is a bad idea on RS/6000: */
- susp->s2_ptr += togo;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp_took(s2_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* coterm_nn_fetch */
-
-
-void coterm_toss_fetch(susp, snd_list)
- register coterm_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from s1 up to final_time for this block of zeros */
- while ((round((final_time - susp->s1->t0) * susp->s1->sr)) >=
- susp->s1->current)
- susp_get_samples(s1, s1_ptr, s1_cnt);
- /* fetch samples from s2 up to final_time for this block of zeros */
- while ((round((final_time - susp->s2->t0) * susp->s2->sr)) >=
- susp->s2->current)
- susp_get_samples(s2, s2_ptr, s2_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->s1->t0) * susp->s1->sr -
- (susp->s1->current - susp->s1_cnt));
- susp->s1_ptr += n;
- susp_took(s1_cnt, n);
- n = round((final_time - susp->s2->t0) * susp->s2->sr -
- (susp->s2->current - susp->s2_cnt));
- susp->s2_ptr += n;
- susp_took(s2_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void coterm_mark(coterm_susp_type susp)
-{
- sound_xlmark(susp->s1);
- sound_xlmark(susp->s2);
-}
-
-
-void coterm_free(coterm_susp_type susp)
-{
- sound_unref(susp->s1);
- sound_unref(susp->s2);
- ffree_generic(susp, sizeof(coterm_susp_node), "coterm_free");
-}
-
-
-void coterm_print_tree(coterm_susp_type susp, int n)
-{
- indent(n);
- stdputstr("s1:");
- sound_print_tree_1(susp->s1, n);
-
- indent(n);
- stdputstr("s2:");
- sound_print_tree_1(susp->s2, n);
-}
-
-
-sound_type snd_make_coterm(sound_type s1, sound_type s2)
-{
- register coterm_susp_type susp;
- rate_type sr = MAX(s1->sr, s2->sr);
- time_type t0 = MAX(s1->t0, s2->t0);
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- long lsc;
- /* combine scale factors of linear inputs (S1) */
- scale_factor *= s1->scale;
- s1->scale = 1.0F;
-
- /* try to push scale_factor back to a low sr input */
- if (s1->sr < sr) { s1->scale = scale_factor; scale_factor = 1.0F; }
-
- falloc_generic(susp, coterm_susp_node, "snd_make_coterm");
- susp->susp.fetch = coterm_nn_fetch;
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < s1->t0) sound_prepend_zeros(s1, t0);
- if (t0 < s2->t0) sound_prepend_zeros(s2, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(s1->t0, MIN(s2->t0, t0));
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = coterm_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = coterm_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = coterm_mark;
- susp->susp.print_tree = coterm_print_tree;
- susp->susp.name = "coterm";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(s1);
- lsc = logical_stop_cnt_cvt(s2);
- if (susp->susp.log_stop_cnt > lsc)
- susp->susp.log_stop_cnt = lsc;
- susp->susp.current = 0;
- susp->s1 = s1;
- susp->s1_cnt = 0;
- susp->s2 = s2;
- susp->s2_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_coterm(sound_type s1, sound_type s2)
-{
- sound_type s1_copy = sound_copy(s1);
- sound_type s2_copy = sound_copy(s2);
- return snd_make_coterm(s1_copy, s2_copy);
-}
diff --git a/lib-src/libnyquist/tran/coterm.h b/lib-src/libnyquist/tran/coterm.h
deleted file mode 100644
index 629678d..0000000
--- a/lib-src/libnyquist/tran/coterm.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_coterm(sound_type s1, sound_type s2);
-sound_type snd_coterm(sound_type s1, sound_type s2);
- /* LISP: (snd-coterm SOUND SOUND) */
diff --git a/lib-src/libnyquist/tran/delay.alg b/lib-src/libnyquist/tran/delay.alg
deleted file mode 100644
index 32ebdce..0000000
--- a/lib-src/libnyquist/tran/delay.alg
+++ /dev/null
@@ -1,20 +0,0 @@
-(DELAY-ALG
-(NAME "delay")
-(ARGUMENTS ("sound_type" "input") ("time_type" "delay") ("double" "feedback"))
-(START (MIN input))
-(STATE ("double" "feedback" "feedback")
- ("long" "delaylen" "MAX(1, round(input->sr * delay))")
- ("sample_type *" "delaybuf"
- "(sample_type *) calloc (susp->delaylen, sizeof(sample_type))")
- ("sample_type *" "delayptr" "susp->delaybuf")
- ("sample_type *" "endptr" "susp->delaybuf + susp->delaylen"))
-(CONSTANT "feedback" "delaylen" "endptr")
-(NOT-REGISTER delaybuf)
-(LINEAR input)
-(TERMINATE (MIN input))
-(INNER-LOOP "output = *delayptr;
- *delayptr = (sample_type) (*delayptr * feedback) + input;
- if (++delayptr >= endptr) delayptr = susp->delaybuf;")
-(FINALIZATION "free(susp->delaybuf);")
-)
-
diff --git a/lib-src/libnyquist/tran/delay.c b/lib-src/libnyquist/tran/delay.c
deleted file mode 100644
index 2a2f9fd..0000000
--- a/lib-src/libnyquist/tran/delay.c
+++ /dev/null
@@ -1,191 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "delay.h"
-
-void delay_free();
-
-
-typedef struct delay_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- sound_type input;
- long input_cnt;
- sample_block_values_type input_ptr;
-
- double feedback;
- long delaylen;
- sample_type *delaybuf;
- sample_type *delayptr;
- sample_type *endptr;
-} delay_susp_node, *delay_susp_type;
-
-
-void delay_n_fetch(register delay_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double feedback_reg;
- register sample_type * delayptr_reg;
- register sample_type * endptr_reg;
- register sample_block_values_type input_ptr_reg;
- falloc_sample_block(out, "delay_n_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the input input sample block: */
- susp_check_term_samples(input, input_ptr, input_cnt);
- togo = MIN(togo, susp->input_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
- n = togo;
- feedback_reg = susp->feedback;
- delayptr_reg = susp->delayptr;
- endptr_reg = susp->endptr;
- input_ptr_reg = susp->input_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-*out_ptr_reg++ = *delayptr_reg;
- *delayptr_reg = (sample_type) (*delayptr_reg * feedback_reg) + *input_ptr_reg++;
- if (++delayptr_reg >= endptr_reg) delayptr_reg = susp->delaybuf;;
- } while (--n); /* inner loop */
-
- susp->delayptr = delayptr_reg;
- /* using input_ptr_reg is a bad idea on RS/6000: */
- susp->input_ptr += togo;
- out_ptr += togo;
- susp_took(input_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
-} /* delay_n_fetch */
-
-
-void delay_toss_fetch(susp, snd_list)
- register delay_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from input up to final_time for this block of zeros */
- while ((round((final_time - susp->input->t0) * susp->input->sr)) >=
- susp->input->current)
- susp_get_samples(input, input_ptr, input_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->input->t0) * susp->input->sr -
- (susp->input->current - susp->input_cnt));
- susp->input_ptr += n;
- susp_took(input_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void delay_mark(delay_susp_type susp)
-{
- sound_xlmark(susp->input);
-}
-
-
-void delay_free(delay_susp_type susp)
-{
-free(susp->delaybuf); sound_unref(susp->input);
- ffree_generic(susp, sizeof(delay_susp_node), "delay_free");
-}
-
-
-void delay_print_tree(delay_susp_type susp, int n)
-{
- indent(n);
- stdputstr("input:");
- sound_print_tree_1(susp->input, n);
-}
-
-
-sound_type snd_make_delay(sound_type input, time_type delay, double feedback)
-{
- register delay_susp_type susp;
- rate_type sr = input->sr;
- time_type t0 = input->t0;
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- /* combine scale factors of linear inputs (INPUT) */
- scale_factor *= input->scale;
- input->scale = 1.0F;
-
- /* try to push scale_factor back to a low sr input */
- if (input->sr < sr) { input->scale = scale_factor; scale_factor = 1.0F; }
-
- falloc_generic(susp, delay_susp_node, "snd_make_delay");
- susp->feedback = feedback;
- susp->delaylen = MAX(1, round(input->sr * delay));
- susp->delaybuf = (sample_type *) calloc (susp->delaylen, sizeof(sample_type));
- susp->delayptr = susp->delaybuf;
- susp->endptr = susp->delaybuf + susp->delaylen;
- susp->susp.fetch = delay_n_fetch;
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < input->t0) sound_prepend_zeros(input, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(input->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = delay_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = delay_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = delay_mark;
- susp->susp.print_tree = delay_print_tree;
- susp->susp.name = "delay";
- susp->susp.log_stop_cnt = UNKNOWN;
- susp->susp.current = 0;
- susp->input = input;
- susp->input_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_delay(sound_type input, time_type delay, double feedback)
-{
- sound_type input_copy = sound_copy(input);
- return snd_make_delay(input_copy, delay, feedback);
-}
diff --git a/lib-src/libnyquist/tran/delay.h b/lib-src/libnyquist/tran/delay.h
deleted file mode 100644
index c8ced3f..0000000
--- a/lib-src/libnyquist/tran/delay.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_delay(sound_type input, time_type delay, double feedback);
-sound_type snd_delay(sound_type input, time_type delay, double feedback);
- /* LISP: (snd-delay SOUND ANYNUM ANYNUM) */
diff --git a/lib-src/libnyquist/tran/delaycv.alg b/lib-src/libnyquist/tran/delaycv.alg
deleted file mode 100644
index 5823dbd..0000000
--- a/lib-src/libnyquist/tran/delaycv.alg
+++ /dev/null
@@ -1,19 +0,0 @@
-(DELAYCV-ALG
-(NAME "delaycv")
-(ARGUMENTS ("sound_type" "s") ("time_type" "delay") ("sound_type" "feedback"))
-(START (MAX s feedback))
-(STATE ("long" "delaylen" "round(s->sr * delay)")
- ("sample_type *" "delaybuf"
- "(sample_type *) calloc (sizeof(double), susp->delaylen)")
- ("sample_type *" "delayptr" "susp->delaybuf")
- ("sample_type *" "endptr" "susp->delaybuf + susp->delaylen"))
-(CONSTANT "delaylen" "delaybuf")
-(NOT-REGISTER delaybuf)
-(LINEAR s)
-(TERMINATE (MIN s))
-(INNER-LOOP "output = *delayptr;
- *delayptr = *delayptr * feedback + s;
- if (++delayptr >= endptr) delayptr = susp->delaybuf;")
-(FINALIZATION "free(susp->delaybuf);")
-)
-
diff --git a/lib-src/libnyquist/tran/delaycv.c b/lib-src/libnyquist/tran/delaycv.c
deleted file mode 100644
index 1bd036d..0000000
--- a/lib-src/libnyquist/tran/delaycv.c
+++ /dev/null
@@ -1,300 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "delaycv.h"
-
-void delaycv_free();
-
-
-typedef struct delaycv_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- sound_type s;
- long s_cnt;
- sample_block_values_type s_ptr;
- sound_type feedback;
- long feedback_cnt;
- sample_block_values_type feedback_ptr;
-
- long delaylen;
- sample_type *delaybuf;
- sample_type *delayptr;
- sample_type *endptr;
-} delaycv_susp_node, *delaycv_susp_type;
-
-
-void delaycv_nn_fetch(register delaycv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register sample_type * delayptr_reg;
- register sample_type * endptr_reg;
- register sample_block_values_type feedback_ptr_reg;
- register sample_block_values_type s_ptr_reg;
- falloc_sample_block(out, "delaycv_nn_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s input sample block: */
- susp_check_term_samples(s, s_ptr, s_cnt);
- togo = MIN(togo, susp->s_cnt);
-
- /* don't run past the feedback input sample block: */
- susp_check_samples(feedback, feedback_ptr, feedback_cnt);
- togo = MIN(togo, susp->feedback_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
- n = togo;
- delayptr_reg = susp->delayptr;
- endptr_reg = susp->endptr;
- feedback_ptr_reg = susp->feedback_ptr;
- s_ptr_reg = susp->s_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-*out_ptr_reg++ = *delayptr_reg;
- *delayptr_reg = *delayptr_reg * *feedback_ptr_reg++ + *s_ptr_reg++;
- if (++delayptr_reg >= endptr_reg) delayptr_reg = susp->delaybuf;;
- } while (--n); /* inner loop */
-
- susp->delayptr = delayptr_reg;
- susp->endptr = endptr_reg;
- /* using feedback_ptr_reg is a bad idea on RS/6000: */
- susp->feedback_ptr += togo;
- /* using s_ptr_reg is a bad idea on RS/6000: */
- susp->s_ptr += togo;
- out_ptr += togo;
- susp_took(s_cnt, togo);
- susp_took(feedback_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
-} /* delaycv_nn_fetch */
-
-
-void delaycv_ns_fetch(register delaycv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register sample_type * delayptr_reg;
- register sample_type * endptr_reg;
- register sample_type feedback_scale_reg = susp->feedback->scale;
- register sample_block_values_type feedback_ptr_reg;
- register sample_block_values_type s_ptr_reg;
- falloc_sample_block(out, "delaycv_ns_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s input sample block: */
- susp_check_term_samples(s, s_ptr, s_cnt);
- togo = MIN(togo, susp->s_cnt);
-
- /* don't run past the feedback input sample block: */
- susp_check_samples(feedback, feedback_ptr, feedback_cnt);
- togo = MIN(togo, susp->feedback_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
- n = togo;
- delayptr_reg = susp->delayptr;
- endptr_reg = susp->endptr;
- feedback_ptr_reg = susp->feedback_ptr;
- s_ptr_reg = susp->s_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-*out_ptr_reg++ = *delayptr_reg;
- *delayptr_reg = *delayptr_reg * (feedback_scale_reg * *feedback_ptr_reg++) + *s_ptr_reg++;
- if (++delayptr_reg >= endptr_reg) delayptr_reg = susp->delaybuf;;
- } while (--n); /* inner loop */
-
- susp->delayptr = delayptr_reg;
- susp->endptr = endptr_reg;
- /* using feedback_ptr_reg is a bad idea on RS/6000: */
- susp->feedback_ptr += togo;
- /* using s_ptr_reg is a bad idea on RS/6000: */
- susp->s_ptr += togo;
- out_ptr += togo;
- susp_took(s_cnt, togo);
- susp_took(feedback_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
-} /* delaycv_ns_fetch */
-
-
-void delaycv_toss_fetch(susp, snd_list)
- register delaycv_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from s up to final_time for this block of zeros */
- while ((round((final_time - susp->s->t0) * susp->s->sr)) >=
- susp->s->current)
- susp_get_samples(s, s_ptr, s_cnt);
- /* fetch samples from feedback up to final_time for this block of zeros */
- while ((round((final_time - susp->feedback->t0) * susp->feedback->sr)) >=
- susp->feedback->current)
- susp_get_samples(feedback, feedback_ptr, feedback_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->s->t0) * susp->s->sr -
- (susp->s->current - susp->s_cnt));
- susp->s_ptr += n;
- susp_took(s_cnt, n);
- n = round((final_time - susp->feedback->t0) * susp->feedback->sr -
- (susp->feedback->current - susp->feedback_cnt));
- susp->feedback_ptr += n;
- susp_took(feedback_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void delaycv_mark(delaycv_susp_type susp)
-{
- sound_xlmark(susp->s);
- sound_xlmark(susp->feedback);
-}
-
-
-void delaycv_free(delaycv_susp_type susp)
-{
-free(susp->delaybuf); sound_unref(susp->s);
- sound_unref(susp->feedback);
- ffree_generic(susp, sizeof(delaycv_susp_node), "delaycv_free");
-}
-
-
-void delaycv_print_tree(delaycv_susp_type susp, int n)
-{
- indent(n);
- stdputstr("s:");
- sound_print_tree_1(susp->s, n);
-
- indent(n);
- stdputstr("feedback:");
- sound_print_tree_1(susp->feedback, n);
-}
-
-
-sound_type snd_make_delaycv(sound_type s, time_type delay, sound_type feedback)
-{
- register delaycv_susp_type susp;
- rate_type sr = MAX(s->sr, feedback->sr);
- time_type t0 = MAX(s->t0, feedback->t0);
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- /* combine scale factors of linear inputs (S) */
- scale_factor *= s->scale;
- s->scale = 1.0F;
-
- /* try to push scale_factor back to a low sr input */
- if (s->sr < sr) { s->scale = scale_factor; scale_factor = 1.0F; }
-
- falloc_generic(susp, delaycv_susp_node, "snd_make_delaycv");
- susp->delaylen = round(s->sr * delay);
- susp->delaybuf = (sample_type *) calloc (sizeof(double), susp->delaylen);
- susp->delayptr = susp->delaybuf;
- susp->endptr = susp->delaybuf + susp->delaylen;
-
- /* select a susp fn based on sample rates */
- interp_desc = (interp_desc << 2) + interp_style(s, sr);
- interp_desc = (interp_desc << 2) + interp_style(feedback, sr);
- switch (interp_desc) {
- case INTERP_nn: susp->susp.fetch = delaycv_nn_fetch; break;
- case INTERP_ns: susp->susp.fetch = delaycv_ns_fetch; break;
- default: snd_badsr(); break;
- }
-
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < s->t0) sound_prepend_zeros(s, t0);
- if (t0 < feedback->t0) sound_prepend_zeros(feedback, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(s->t0, MIN(feedback->t0, t0));
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = delaycv_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = delaycv_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = delaycv_mark;
- susp->susp.print_tree = delaycv_print_tree;
- susp->susp.name = "delaycv";
- susp->susp.log_stop_cnt = UNKNOWN;
- susp->susp.current = 0;
- susp->s = s;
- susp->s_cnt = 0;
- susp->feedback = feedback;
- susp->feedback_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_delaycv(sound_type s, time_type delay, sound_type feedback)
-{
- sound_type s_copy = sound_copy(s);
- sound_type feedback_copy = sound_copy(feedback);
- return snd_make_delaycv(s_copy, delay, feedback_copy);
-}
diff --git a/lib-src/libnyquist/tran/delaycv.h b/lib-src/libnyquist/tran/delaycv.h
deleted file mode 100644
index 5c6e3d0..0000000
--- a/lib-src/libnyquist/tran/delaycv.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_delaycv(sound_type s, time_type delay, sound_type feedback);
-sound_type snd_delaycv(sound_type s, time_type delay, sound_type feedback);
- /* LISP: (snd-delaycv SOUND ANYNUM SOUND) */
diff --git a/lib-src/libnyquist/tran/downproto.alg b/lib-src/libnyquist/tran/downproto.alg
deleted file mode 100644
index 98680ba..0000000
--- a/lib-src/libnyquist/tran/downproto.alg
+++ /dev/null
@@ -1,18 +0,0 @@
-(DOWNSAMPLE-PROTO-ALG
- (NAME "down")
- (ARGUMENTS ("rate_type" "sr") ("sound_type" "s"))
- (SAMPLE-RATE "sr")
- (START (MIN s))
- (INLINE-INTERPOLATION T)
- (STATE )
- (INNER-LOOP "output = s")
- (TERMINATE (MIN s))
- (LOGICAL-STOP (MIN s))
- (TYPE-CHECK
-" if (s->sr < sr) {
- sound_unref(s);
- xlfail(\"snd-down: output sample rate must be lower than input\");
- }
-")
-)
-
diff --git a/lib-src/libnyquist/tran/eqbandv.alg b/lib-src/libnyquist/tran/eqbandv.alg
deleted file mode 100644
index 1837f43..0000000
--- a/lib-src/libnyquist/tran/eqbandv.alg
+++ /dev/null
@@ -1,56 +0,0 @@
-; general order-2 IIR filter.
-; a0 is assumed to be unity.
-; for a1 and a2, our sign convention is opposite to Matlab's.
-
-(EQBANDVVV-ALG
-(NAME "eqbandvvv")
-(ARGUMENTS ("sound_type" "s1") ("sound_type" "hz"))
-;; ("sound_type" "gain") ("sound_type" "width") )
-(START (MIN s1 hz)) ;; gain width))
-(TERMINATE (MIN s1 hz )) ;; gain width))
-(LOGICAL-STOP (MIN s1 hz)) ;; gain width))
-(SAMPLE-RATE (MAX s1))
-(INTERNAL-SCALING s1)
-(INLINE-INTERPOLATION T)
-(ALWAYS-SCALE hz)
-(STEP-FUNCTION hz gain width)
-(STATE ("double" "scale1" "s1->scale")
- ("double" "w1" "0.0")
- ("double" "sw" "0.0")
- ("double" "cw" "0.0")
- ("double" "J" "0.0")
- ("double" "g" "0.0")
- ("double" "b0" "0.0")
- ("double" "b1" "0.0")
- ("double" "b2" "0.0")
- ("double" "a0" "0.0")
- ("double" "a1" "0.0")
- ("double" "a2" "0.0"))
-(DEPENDS ("w1" "hz" "PI2 * hz / s1->sr")
- ("sw" "hz" "sin(w1)")
- ("cw" "hz" "cos(w1)")
- ("b1" "hz" "-2.0 * cw")
- ("a1" "hz" "-b1")
- ;; ("J" "gain" "sqrt(gain)")
- ;; ("recompute" "width" "true")
- ("recompute" "hz" "true")
- ;; ("recompute" "gain" "true")
-)
-;; (JOINT-DEPENDENCY (("width" "hz")
-;;"if (recompute) {"
-;;" recompute = false;"
-;;" g = sw * sinh(log_of_2_over_2 * width * w1 / sw);"
-;;" b0 = 1.0 + g * J;"
-;;" b2 = 1.0 - g * J;"
-;;" a0 = 1.0 + g / J;"
-;;" a2 = g / J - 1.0;"
-;;"}"))
-(FORCE-INTO-REGISTER recompute)
-(STEP-FUNCTION hz) ;; gain width)
-(CONSTANT "w1" "sw" "cw" "J" "g" "b0" "b1" "b2" "b3" "a0" "a1" "a2")
-(INNER-LOOP-LOCALS "double z0;")
-(INNER-LOOP " z0 = s + a1*z1 + a2*z2;
- output = (sample_type) (z0*b0 + z1*b1 + z2*b2);
- z2 = z1; z1 = z0;")
-)
-
diff --git a/lib-src/libnyquist/tran/eqbandvvv.alg b/lib-src/libnyquist/tran/eqbandvvv.alg
deleted file mode 100644
index c2a14a4..0000000
--- a/lib-src/libnyquist/tran/eqbandvvv.alg
+++ /dev/null
@@ -1,64 +0,0 @@
-; general order-2 IIR filter.
-; a0 is assumed to be unity.
-; for a1 and a2, our sign convention is opposite to Matlab's.
-
-(EQBANDVVV-ALG
-(NAME "eqbandvvv")
-(ARGUMENTS ("sound_type" "input") ("sound_type" "hz")
- ("sound_type" "gain") ("sound_type" "width") )
-(SUPPORT-FUNCTIONS "#define log_of_2_over_2 0.3465735902799726547086\n")
-(START (MIN input hz gain width))
-(TERMINATE (MIN input hz gain width))
-(LOGICAL-STOP (MIN input hz gain width))
-(SAMPLE-RATE (MAX input))
-;;(INTERNAL-SCALING input hz gain width)
-(INLINE-INTERPOLATION T)
-(MATCHED-SAMPLE-RATE hz gain width)
-(ALWAYS-SCALE input hz gain width)
-(STEP-FUNCTION hz gain width)
-(STATE ("double" "inp_scale" "input->scale")
- ("double" "w1" "0.0")
- ("double" "sw" "0.0")
- ("double" "cw" "0.0")
- ("double" "J" "0.0")
- ("double" "gg" "0.0")
- ("double" "b0" "0.0")
- ("double" "b1" "0.0")
- ("double" "b2" "0.0")
- ("double" "a0" "0.0")
- ("double" "a1" "0.0")
- ("double" "a2" "0.0")
- ("double" "z1" "0.0")
- ("double" "z2" "0.0")
- ("boolean" "recompute" "false")
- ("double" "inp_period" "1.0 / input->sr"))
-(DEPENDS ("w1" "hz" "PI2 * hz * inp_period")
- ("sw" "hz" "sin(w1)")
- ("cw" "hz" "cos(w1)")
- ("b1" "hz" "-2.0 * cw")
- ("a1" "hz" "-b1")
- ("J" "gain" "sqrt(gain)")
- ("recompute" "width" "true")
- ("recompute" "hz" "true")
- ("recompute" "gain" "true")
-)
-(JOINT-DEPENDENCY (("width" "hz")
-"if (recompute) {"
-" /* a0 = 1.0 + gg / J; */"
-" double a_0_recip = J / (J + gg);"
-" recompute = false;"
-" gg = sw * sinh(log_of_2_over_2 * width * w1 / sw);"
-" b0 = (1.0 + gg * J) * a_0_recip;"
-" b1 *= a_0_recip;"
-" b2 = (1.0 - gg * J) * a_0_recip;"
-" a1 *= a_0_recip;"
-" a2 = (gg / J - 1.0) * a_0_recip;"
-"}"))
-(FORCE-INTO-REGISTER recompute inp_period cw)
-(CONSTANT "w1" "sw" "cw" "J" "gg" "b0" "b1" "b2" "b3" "a0" "a1" "a2" "inp_period")
-(INNER-LOOP-LOCALS " double z0;\n")
-(INNER-LOOP " z0 = input + a1*z1 + a2*z2;
- output = (sample_type) (z0*b0 + z1*b1 + z2*b2);
- z2 = z1; z1 = z0;")
-)
-
diff --git a/lib-src/libnyquist/tran/eqbandvvv.c b/lib-src/libnyquist/tran/eqbandvvv.c
deleted file mode 100644
index d4a0f8a..0000000
--- a/lib-src/libnyquist/tran/eqbandvvv.c
+++ /dev/null
@@ -1,869 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "eqbandvvv.h"
-
-void eqbandvvv_free();
-
-
-typedef struct eqbandvvv_susp_struct {
- snd_susp_node susp;
- boolean started;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type input;
- long input_cnt;
- sample_block_values_type input_ptr;
- sound_type hz;
- long hz_cnt;
- sample_block_values_type hz_ptr;
-
- /* support for interpolation of hz */
- sample_type hz_x1_sample;
- double hz_pHaSe;
- double hz_pHaSe_iNcR;
-
- /* support for ramp between samples of hz */
- double output_per_hz;
- long hz_n;
- sound_type gain;
- long gain_cnt;
- sample_block_values_type gain_ptr;
-
- /* support for interpolation of gain */
- sample_type gain_x1_sample;
- double gain_pHaSe;
- double gain_pHaSe_iNcR;
-
- /* support for ramp between samples of gain */
- double output_per_gain;
- long gain_n;
- sound_type width;
- long width_cnt;
- sample_block_values_type width_ptr;
-
- /* support for interpolation of width */
- sample_type width_x1_sample;
- double width_pHaSe;
- double width_pHaSe_iNcR;
-
- /* support for ramp between samples of width */
- double output_per_width;
- long width_n;
-
- double inp_scale;
- double w1;
- double sw;
- double cw;
- double J;
- double gg;
- double b0;
- double b1;
- double b2;
- double a0;
- double a1;
- double a2;
- double z1;
- double z2;
- boolean recompute;
- double inp_period;
-} eqbandvvv_susp_node, *eqbandvvv_susp_type;
-
-#define log_of_2_over_2 0.3465735902799726547086
-
-
-void eqbandvvv_ssss_fetch(register eqbandvvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double w1_reg;
- register double sw_reg;
- register double cw_reg;
- register double J_reg;
- register double gg_reg;
- register double b0_reg;
- register double b1_reg;
- register double b2_reg;
- register double a0_reg;
- register double a1_reg;
- register double a2_reg;
- register double z1_reg;
- register double z2_reg;
- register boolean recompute_reg;
- register double inp_period_reg;
- register sample_type width_scale_reg = susp->width->scale;
- register sample_block_values_type width_ptr_reg;
- register sample_type gain_scale_reg = susp->gain->scale;
- register sample_block_values_type gain_ptr_reg;
- register sample_type hz_scale_reg = susp->hz->scale;
- register sample_block_values_type hz_ptr_reg;
- register sample_type input_scale_reg = susp->input->scale;
- register sample_block_values_type input_ptr_reg;
- falloc_sample_block(out, "eqbandvvv_ssss_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the input input sample block: */
- susp_check_term_log_samples(input, input_ptr, input_cnt);
- togo = MIN(togo, susp->input_cnt);
-
- /* don't run past the hz input sample block: */
- susp_check_term_log_samples(hz, hz_ptr, hz_cnt);
- togo = MIN(togo, susp->hz_cnt);
-
- /* don't run past the gain input sample block: */
- susp_check_term_log_samples(gain, gain_ptr, gain_cnt);
- togo = MIN(togo, susp->gain_cnt);
-
- /* don't run past the width input sample block: */
- susp_check_term_log_samples(width, width_ptr, width_cnt);
- togo = MIN(togo, susp->width_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- w1_reg = susp->w1;
- sw_reg = susp->sw;
- cw_reg = susp->cw;
- J_reg = susp->J;
- gg_reg = susp->gg;
- b0_reg = susp->b0;
- b1_reg = susp->b1;
- b2_reg = susp->b2;
- a0_reg = susp->a0;
- a1_reg = susp->a1;
- a2_reg = susp->a2;
- z1_reg = susp->z1;
- z2_reg = susp->z2;
- recompute_reg = susp->recompute;
- inp_period_reg = susp->inp_period;
- width_ptr_reg = susp->width_ptr;
- gain_ptr_reg = susp->gain_ptr;
- hz_ptr_reg = susp->hz_ptr;
- input_ptr_reg = susp->input_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- double z0;
- w1_reg = PI2 * (hz_scale_reg * *hz_ptr_reg++) * inp_period_reg;
- sw_reg = sin(w1_reg);
- cw_reg = cos(w1_reg);
- b1_reg = -2.0 * cw_reg;
- a1_reg = -b1_reg;
- J_reg = sqrt((gain_scale_reg * *gain_ptr_reg++));
- recompute_reg = true;
- recompute_reg = true;
- recompute_reg = true;
- if (recompute_reg) {
- /* a0_reg = 1.0 + gg_reg / J_reg; */
- double a_0_recip = J_reg / (J_reg + gg_reg);
- recompute_reg = false;
- gg_reg = sw_reg * sinh(log_of_2_over_2 * (width_scale_reg * *width_ptr_reg++) * w1_reg / sw_reg);
- b0_reg = (1.0 + gg_reg * J_reg) * a_0_recip;
- b1_reg *= a_0_recip;
- b2_reg = (1.0 - gg_reg * J_reg) * a_0_recip;
- a1_reg *= a_0_recip;
- a2_reg = (gg_reg / J_reg - 1.0) * a_0_recip;
- }
- z0 = (input_scale_reg * *input_ptr_reg++) + a1_reg*z1_reg + a2_reg*z2_reg;
- *out_ptr_reg++ = (sample_type) (z0*b0_reg + z1_reg*b1_reg + z2_reg*b2_reg);
- z2_reg = z1_reg; z1_reg = z0;;
- } while (--n); /* inner loop */
-
- susp->z1 = z1_reg;
- susp->z2 = z2_reg;
- susp->recompute = recompute_reg;
- /* using width_ptr_reg is a bad idea on RS/6000: */
- susp->width_ptr += togo;
- /* using gain_ptr_reg is a bad idea on RS/6000: */
- susp->gain_ptr += togo;
- /* using hz_ptr_reg is a bad idea on RS/6000: */
- susp->hz_ptr += togo;
- /* using input_ptr_reg is a bad idea on RS/6000: */
- susp->input_ptr += togo;
- out_ptr += togo;
- susp_took(input_cnt, togo);
- susp_took(hz_cnt, togo);
- susp_took(gain_cnt, togo);
- susp_took(width_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* eqbandvvv_ssss_fetch */
-
-
-void eqbandvvv_siii_fetch(register eqbandvvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double w1_reg;
- register double sw_reg;
- register double cw_reg;
- register double J_reg;
- register double gg_reg;
- register double b0_reg;
- register double b1_reg;
- register double b2_reg;
- register double a0_reg;
- register double a1_reg;
- register double a2_reg;
- register double z1_reg;
- register double z2_reg;
- register boolean recompute_reg;
- register double inp_period_reg;
- register double width_pHaSe_iNcR_rEg = susp->width_pHaSe_iNcR;
- register double width_pHaSe_ReG;
- register sample_type width_x1_sample_reg;
- register double gain_pHaSe_iNcR_rEg = susp->gain_pHaSe_iNcR;
- register double gain_pHaSe_ReG;
- register sample_type gain_x1_sample_reg;
- register double hz_pHaSe_iNcR_rEg = susp->hz_pHaSe_iNcR;
- register double hz_pHaSe_ReG;
- register sample_type hz_x1_sample_reg;
- register sample_type input_scale_reg = susp->input->scale;
- register sample_block_values_type input_ptr_reg;
- falloc_sample_block(out, "eqbandvvv_siii_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp_check_term_log_samples(hz, hz_ptr, hz_cnt);
- susp->hz_x1_sample = susp_fetch_sample(hz, hz_ptr, hz_cnt);
- susp->w1 = PI2 * susp->hz_x1_sample * susp->inp_period;
- susp->sw = sin(susp->w1);
- susp->cw = cos(susp->w1);
- susp->b1 = -2.0 * susp->cw;
- susp->a1 = -susp->b1;
- susp->recompute = true;
- susp_check_term_log_samples(gain, gain_ptr, gain_cnt);
- susp->gain_x1_sample = susp_fetch_sample(gain, gain_ptr, gain_cnt);
- susp->J = sqrt(susp->gain_x1_sample);
- susp->recompute = true;
- susp_check_term_log_samples(width, width_ptr, width_cnt);
- susp->width_x1_sample = susp_fetch_sample(width, width_ptr, width_cnt);
- susp->recompute = true;
- }
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the input input sample block: */
- susp_check_term_log_samples(input, input_ptr, input_cnt);
- togo = MIN(togo, susp->input_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- w1_reg = susp->w1;
- sw_reg = susp->sw;
- cw_reg = susp->cw;
- J_reg = susp->J;
- gg_reg = susp->gg;
- b0_reg = susp->b0;
- b1_reg = susp->b1;
- b2_reg = susp->b2;
- a0_reg = susp->a0;
- a1_reg = susp->a1;
- a2_reg = susp->a2;
- z1_reg = susp->z1;
- z2_reg = susp->z2;
- recompute_reg = susp->recompute;
- inp_period_reg = susp->inp_period;
- width_pHaSe_ReG = susp->width_pHaSe;
- width_x1_sample_reg = susp->width_x1_sample;
- gain_pHaSe_ReG = susp->gain_pHaSe;
- gain_x1_sample_reg = susp->gain_x1_sample;
- hz_pHaSe_ReG = susp->hz_pHaSe;
- hz_x1_sample_reg = susp->hz_x1_sample;
- input_ptr_reg = susp->input_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- double z0;
- if (hz_pHaSe_ReG >= 1.0) {
-/* fixup-depends hz */
- /* pick up next sample as hz_x1_sample: */
- susp->hz_ptr++;
- susp_took(hz_cnt, 1);
- hz_pHaSe_ReG -= 1.0;
- susp_check_term_log_samples_break(hz, hz_ptr, hz_cnt, hz_x1_sample_reg);
- hz_x1_sample_reg = susp_current_sample(hz, hz_ptr);
- w1_reg = susp->w1 = PI2 * hz_x1_sample_reg * inp_period_reg;
- sw_reg = susp->sw = sin(w1_reg);
- cw_reg = susp->cw = cos(w1_reg);
- b1_reg = susp->b1 = -2.0 * cw_reg;
- a1_reg = susp->a1 = -b1_reg;
- recompute_reg = susp->recompute = true;
- }
- if (gain_pHaSe_ReG >= 1.0) {
-/* fixup-depends gain */
- /* pick up next sample as gain_x1_sample: */
- susp->gain_ptr++;
- susp_took(gain_cnt, 1);
- gain_pHaSe_ReG -= 1.0;
- susp_check_term_log_samples_break(gain, gain_ptr, gain_cnt, gain_x1_sample_reg);
- gain_x1_sample_reg = susp_current_sample(gain, gain_ptr);
- J_reg = susp->J = sqrt(gain_x1_sample_reg);
- recompute_reg = susp->recompute = true;
- }
- if (width_pHaSe_ReG >= 1.0) {
-/* fixup-depends width */
- /* pick up next sample as width_x1_sample: */
- susp->width_ptr++;
- susp_took(width_cnt, 1);
- width_pHaSe_ReG -= 1.0;
- susp_check_term_log_samples_break(width, width_ptr, width_cnt, width_x1_sample_reg);
- width_x1_sample_reg = susp_current_sample(width, width_ptr);
- recompute_reg = susp->recompute = true;
- }
- if (recompute_reg) {
- /* a0_reg = 1.0 + gg_reg / J_reg; */
- double a_0_recip = J_reg / (J_reg + gg_reg);
- recompute_reg = false;
- gg_reg = sw_reg * sinh(log_of_2_over_2 * width_x1_sample_reg * w1_reg / sw_reg);
- b0_reg = (1.0 + gg_reg * J_reg) * a_0_recip;
- b1_reg *= a_0_recip;
- b2_reg = (1.0 - gg_reg * J_reg) * a_0_recip;
- a1_reg *= a_0_recip;
- a2_reg = (gg_reg / J_reg - 1.0) * a_0_recip;
- }
- z0 = (input_scale_reg * *input_ptr_reg++) + a1_reg*z1_reg + a2_reg*z2_reg;
- *out_ptr_reg++ = (sample_type) (z0*b0_reg + z1_reg*b1_reg + z2_reg*b2_reg);
- z2_reg = z1_reg; z1_reg = z0;;
- hz_pHaSe_ReG += hz_pHaSe_iNcR_rEg;
- gain_pHaSe_ReG += gain_pHaSe_iNcR_rEg;
- width_pHaSe_ReG += width_pHaSe_iNcR_rEg;
- } while (--n); /* inner loop */
-
- togo -= n;
- susp->z1 = z1_reg;
- susp->z2 = z2_reg;
- susp->recompute = recompute_reg;
- susp->width_pHaSe = width_pHaSe_ReG;
- susp->width_x1_sample = width_x1_sample_reg;
- susp->gain_pHaSe = gain_pHaSe_ReG;
- susp->gain_x1_sample = gain_x1_sample_reg;
- susp->hz_pHaSe = hz_pHaSe_ReG;
- susp->hz_x1_sample = hz_x1_sample_reg;
- /* using input_ptr_reg is a bad idea on RS/6000: */
- susp->input_ptr += togo;
- out_ptr += togo;
- susp_took(input_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* eqbandvvv_siii_fetch */
-
-
-void eqbandvvv_srrr_fetch(register eqbandvvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- sample_type hz_val;
- sample_type gain_val;
- sample_type width_val;
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double cw_reg;
- register double b0_reg;
- register double b1_reg;
- register double b2_reg;
- register double a1_reg;
- register double a2_reg;
- register double z1_reg;
- register double z2_reg;
- register boolean recompute_reg;
- register double inp_period_reg;
- register sample_type input_scale_reg = susp->input->scale;
- register sample_block_values_type input_ptr_reg;
- falloc_sample_block(out, "eqbandvvv_srrr_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp->hz_pHaSe = 1.0;
- susp->gain_pHaSe = 1.0;
- susp->width_pHaSe = 1.0;
- }
-
- susp_check_term_log_samples(hz, hz_ptr, hz_cnt);
-
- susp_check_term_log_samples(gain, gain_ptr, gain_cnt);
-
- susp_check_term_log_samples(width, width_ptr, width_cnt);
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the input input sample block: */
- susp_check_term_log_samples(input, input_ptr, input_cnt);
- togo = MIN(togo, susp->input_cnt);
-
- /* grab next hz_x1_sample when phase goes past 1.0; */
- /* use hz_n (computed below) to avoid roundoff errors: */
- if (susp->hz_n <= 0) {
- susp_check_term_log_samples(hz, hz_ptr, hz_cnt);
- susp->hz_x1_sample = susp_fetch_sample(hz, hz_ptr, hz_cnt);
- susp->hz_pHaSe -= 1.0;
- /* hz_n gets number of samples before phase exceeds 1.0: */
- susp->hz_n = (long) ((1.0 - susp->hz_pHaSe) *
- susp->output_per_hz);
- susp->w1 = PI2 * susp->hz_x1_sample * susp->inp_period;
- susp->sw = sin(susp->w1);
- susp->cw = cos(susp->w1);
- susp->b1 = -2.0 * susp->cw;
- susp->a1 = -susp->b1;
- susp->recompute = true;
- }
- togo = MIN(togo, susp->hz_n);
- hz_val = susp->hz_x1_sample;
- /* grab next gain_x1_sample when phase goes past 1.0; */
- /* use gain_n (computed below) to avoid roundoff errors: */
- if (susp->gain_n <= 0) {
- susp_check_term_log_samples(gain, gain_ptr, gain_cnt);
- susp->gain_x1_sample = susp_fetch_sample(gain, gain_ptr, gain_cnt);
- susp->gain_pHaSe -= 1.0;
- /* gain_n gets number of samples before phase exceeds 1.0: */
- susp->gain_n = (long) ((1.0 - susp->gain_pHaSe) *
- susp->output_per_gain);
- susp->J = sqrt(susp->gain_x1_sample);
- susp->recompute = true;
- }
- togo = MIN(togo, susp->gain_n);
- gain_val = susp->gain_x1_sample;
- /* grab next width_x1_sample when phase goes past 1.0; */
- /* use width_n (computed below) to avoid roundoff errors: */
- if (susp->width_n <= 0) {
- susp_check_term_log_samples(width, width_ptr, width_cnt);
- susp->width_x1_sample = susp_fetch_sample(width, width_ptr, width_cnt);
- susp->width_pHaSe -= 1.0;
- /* width_n gets number of samples before phase exceeds 1.0: */
- susp->width_n = (long) ((1.0 - susp->width_pHaSe) *
- susp->output_per_width);
- susp->recompute = true;
- }
- togo = MIN(togo, susp->width_n);
- width_val = susp->width_x1_sample;
- if (susp->recompute) {
- /* susp->a0 = 1.0 + susp->gg / susp->J; */
- double a_0_recip = susp->J / (susp->J + susp->gg);
- susp->recompute = false;
- susp->gg = susp->sw * sinh(log_of_2_over_2 * width_val * susp->w1 / susp->sw);
- susp->b0 = (1.0 + susp->gg * susp->J) * a_0_recip;
- susp->b1 *= a_0_recip;
- susp->b2 = (1.0 - susp->gg * susp->J) * a_0_recip;
- susp->a1 *= a_0_recip;
- susp->a2 = (susp->gg / susp->J - 1.0) * a_0_recip;
- }
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- cw_reg = susp->cw;
- b0_reg = susp->b0;
- b1_reg = susp->b1;
- b2_reg = susp->b2;
- a1_reg = susp->a1;
- a2_reg = susp->a2;
- z1_reg = susp->z1;
- z2_reg = susp->z2;
- recompute_reg = susp->recompute;
- inp_period_reg = susp->inp_period;
- input_ptr_reg = susp->input_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- double z0;
- z0 = (input_scale_reg * *input_ptr_reg++) + a1_reg*z1_reg + a2_reg*z2_reg;
- *out_ptr_reg++ = (sample_type) (z0*b0_reg + z1_reg*b1_reg + z2_reg*b2_reg);
- z2_reg = z1_reg; z1_reg = z0;;
- } while (--n); /* inner loop */
-
- susp->z1 = z1_reg;
- susp->z2 = z2_reg;
- susp->recompute = recompute_reg;
- /* using input_ptr_reg is a bad idea on RS/6000: */
- susp->input_ptr += togo;
- out_ptr += togo;
- susp_took(input_cnt, togo);
- susp->hz_pHaSe += togo * susp->hz_pHaSe_iNcR;
- susp->hz_n -= togo;
- susp->gain_pHaSe += togo * susp->gain_pHaSe_iNcR;
- susp->gain_n -= togo;
- susp->width_pHaSe += togo * susp->width_pHaSe_iNcR;
- susp->width_n -= togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* eqbandvvv_srrr_fetch */
-
-
-void eqbandvvv_toss_fetch(susp, snd_list)
- register eqbandvvv_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from input up to final_time for this block of zeros */
- while ((round((final_time - susp->input->t0) * susp->input->sr)) >=
- susp->input->current)
- susp_get_samples(input, input_ptr, input_cnt);
- /* fetch samples from hz up to final_time for this block of zeros */
- while ((round((final_time - susp->hz->t0) * susp->hz->sr)) >=
- susp->hz->current)
- susp_get_samples(hz, hz_ptr, hz_cnt);
- /* fetch samples from gain up to final_time for this block of zeros */
- while ((round((final_time - susp->gain->t0) * susp->gain->sr)) >=
- susp->gain->current)
- susp_get_samples(gain, gain_ptr, gain_cnt);
- /* fetch samples from width up to final_time for this block of zeros */
- while ((round((final_time - susp->width->t0) * susp->width->sr)) >=
- susp->width->current)
- susp_get_samples(width, width_ptr, width_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->input->t0) * susp->input->sr -
- (susp->input->current - susp->input_cnt));
- susp->input_ptr += n;
- susp_took(input_cnt, n);
- n = round((final_time - susp->hz->t0) * susp->hz->sr -
- (susp->hz->current - susp->hz_cnt));
- susp->hz_ptr += n;
- susp_took(hz_cnt, n);
- n = round((final_time - susp->gain->t0) * susp->gain->sr -
- (susp->gain->current - susp->gain_cnt));
- susp->gain_ptr += n;
- susp_took(gain_cnt, n);
- n = round((final_time - susp->width->t0) * susp->width->sr -
- (susp->width->current - susp->width_cnt));
- susp->width_ptr += n;
- susp_took(width_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void eqbandvvv_mark(eqbandvvv_susp_type susp)
-{
- sound_xlmark(susp->input);
- sound_xlmark(susp->hz);
- sound_xlmark(susp->gain);
- sound_xlmark(susp->width);
-}
-
-
-void eqbandvvv_free(eqbandvvv_susp_type susp)
-{
- sound_unref(susp->input);
- sound_unref(susp->hz);
- sound_unref(susp->gain);
- sound_unref(susp->width);
- ffree_generic(susp, sizeof(eqbandvvv_susp_node), "eqbandvvv_free");
-}
-
-
-void eqbandvvv_print_tree(eqbandvvv_susp_type susp, int n)
-{
- indent(n);
- stdputstr("input:");
- sound_print_tree_1(susp->input, n);
-
- indent(n);
- stdputstr("hz:");
- sound_print_tree_1(susp->hz, n);
-
- indent(n);
- stdputstr("gain:");
- sound_print_tree_1(susp->gain, n);
-
- indent(n);
- stdputstr("width:");
- sound_print_tree_1(susp->width, n);
-}
-
-
-sound_type snd_make_eqbandvvv(sound_type input, sound_type hz, sound_type gain, sound_type width)
-{
- register eqbandvvv_susp_type susp;
- rate_type sr = input->sr;
- time_type t0 = MIN(MIN(min(input->t0, hz->t0), gain->t0), width->t0);
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- long lsc;
- falloc_generic(susp, eqbandvvv_susp_node, "snd_make_eqbandvvv");
- susp->inp_scale = input->scale;
- susp->w1 = 0.0;
- susp->sw = 0.0;
- susp->cw = 0.0;
- susp->J = 0.0;
- susp->gg = 0.0;
- susp->b0 = 0.0;
- susp->b1 = 0.0;
- susp->b2 = 0.0;
- susp->a0 = 0.0;
- susp->a1 = 0.0;
- susp->a2 = 0.0;
- susp->z1 = 0.0;
- susp->z2 = 0.0;
- susp->recompute = false;
- susp->inp_period = 1.0 / input->sr;
-
- /* select a susp fn based on sample rates */
- interp_desc = (interp_desc << 2) + interp_style(input, sr);
- interp_desc = (interp_desc << 2) + interp_style(hz, sr);
- interp_desc = (interp_desc << 2) + interp_style(gain, sr);
- interp_desc = (interp_desc << 2) + interp_style(width, sr);
- switch (interp_desc) {
- case INTERP_nnnn: /* handled below */
- case INTERP_nnns: /* handled below */
- case INTERP_nnsn: /* handled below */
- case INTERP_nnss: /* handled below */
- case INTERP_nsnn: /* handled below */
- case INTERP_nsns: /* handled below */
- case INTERP_nssn: /* handled below */
- case INTERP_nsss: /* handled below */
- case INTERP_snnn: /* handled below */
- case INTERP_snns: /* handled below */
- case INTERP_snsn: /* handled below */
- case INTERP_snss: /* handled below */
- case INTERP_ssnn: /* handled below */
- case INTERP_ssns: /* handled below */
- case INTERP_sssn: /* handled below */
- case INTERP_ssss: susp->susp.fetch = eqbandvvv_ssss_fetch; break;
- case INTERP_niii: /* handled below */
- case INTERP_siii: susp->susp.fetch = eqbandvvv_siii_fetch; break;
- case INTERP_nrrr: /* handled below */
- case INTERP_srrr: susp->susp.fetch = eqbandvvv_srrr_fetch; break;
- default: snd_badsr(); break;
- }
-
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < input->t0) sound_prepend_zeros(input, t0);
- if (t0 < hz->t0) sound_prepend_zeros(hz, t0);
- if (t0 < gain->t0) sound_prepend_zeros(gain, t0);
- if (t0 < width->t0) sound_prepend_zeros(width, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(input->t0, MIN(hz->t0, min(gain->t0, min(width->t0, t0))));
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = eqbandvvv_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = eqbandvvv_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = eqbandvvv_mark;
- susp->susp.print_tree = eqbandvvv_print_tree;
- susp->susp.name = "eqbandvvv";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(input);
- lsc = logical_stop_cnt_cvt(hz);
- if (susp->susp.log_stop_cnt > lsc)
- susp->susp.log_stop_cnt = lsc;
- lsc = logical_stop_cnt_cvt(gain);
- if (susp->susp.log_stop_cnt > lsc)
- susp->susp.log_stop_cnt = lsc;
- lsc = logical_stop_cnt_cvt(width);
- if (susp->susp.log_stop_cnt > lsc)
- susp->susp.log_stop_cnt = lsc;
- susp->started = false;
- susp->susp.current = 0;
- susp->input = input;
- susp->input_cnt = 0;
- susp->hz = hz;
- susp->hz_cnt = 0;
- susp->hz_pHaSe = 0.0;
- susp->hz_pHaSe_iNcR = hz->sr / sr;
- susp->hz_n = 0;
- susp->output_per_hz = sr / hz->sr;
- susp->gain = gain;
- susp->gain_cnt = 0;
- susp->gain_pHaSe = 0.0;
- susp->gain_pHaSe_iNcR = gain->sr / sr;
- susp->gain_n = 0;
- susp->output_per_gain = sr / gain->sr;
- susp->width = width;
- susp->width_cnt = 0;
- susp->width_pHaSe = 0.0;
- susp->width_pHaSe_iNcR = width->sr / sr;
- susp->width_n = 0;
- susp->output_per_width = sr / width->sr;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_eqbandvvv(sound_type input, sound_type hz, sound_type gain, sound_type width)
-{
- sound_type input_copy = sound_copy(input);
- sound_type hz_copy = sound_copy(hz);
- sound_type gain_copy = sound_copy(gain);
- sound_type width_copy = sound_copy(width);
- return snd_make_eqbandvvv(input_copy, hz_copy, gain_copy, width_copy);
-}
diff --git a/lib-src/libnyquist/tran/eqbandvvv.h b/lib-src/libnyquist/tran/eqbandvvv.h
deleted file mode 100644
index a42a44f..0000000
--- a/lib-src/libnyquist/tran/eqbandvvv.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_eqbandvvv(sound_type input, sound_type hz, sound_type gain, sound_type width);
-sound_type snd_eqbandvvv(sound_type input, sound_type hz, sound_type gain, sound_type width);
- /* LISP: (snd-eqbandvvv SOUND SOUND SOUND SOUND) */
diff --git a/lib-src/libnyquist/tran/exp.alg b/lib-src/libnyquist/tran/exp.alg
deleted file mode 100644
index e3f706e..0000000
--- a/lib-src/libnyquist/tran/exp.alg
+++ /dev/null
@@ -1,9 +0,0 @@
-(EXP-ALG
- (NAME "exp")
- (ARGUMENTS ("sound_type" "in"))
- (ALWAYS-SCALE in)
- (START (MIN in))
- (INNER-LOOP "output = (sample_type) exp(in)")
- (TERMINATE (MIN in))
- (LOGICAL-STOP (MIN in))
-)
diff --git a/lib-src/libnyquist/tran/exp.c b/lib-src/libnyquist/tran/exp.c
deleted file mode 100644
index 55b3c24..0000000
--- a/lib-src/libnyquist/tran/exp.c
+++ /dev/null
@@ -1,198 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "exp.h"
-
-void exp_free();
-
-
-typedef struct exp_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type in;
- long in_cnt;
- sample_block_values_type in_ptr;
-} exp_susp_node, *exp_susp_type;
-
-
-void exp_s_fetch(register exp_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register sample_type in_scale_reg = susp->in->scale;
- register sample_block_values_type in_ptr_reg;
- falloc_sample_block(out, "exp_s_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the in input sample block: */
- susp_check_term_log_samples(in, in_ptr, in_cnt);
- togo = MIN(togo, susp->in_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- in_ptr_reg = susp->in_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-*out_ptr_reg++ = (sample_type) exp((in_scale_reg * *in_ptr_reg++));
- } while (--n); /* inner loop */
-
- /* using in_ptr_reg is a bad idea on RS/6000: */
- susp->in_ptr += togo;
- out_ptr += togo;
- susp_took(in_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* exp_s_fetch */
-
-
-void exp_toss_fetch(susp, snd_list)
- register exp_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from in up to final_time for this block of zeros */
- while ((round((final_time - susp->in->t0) * susp->in->sr)) >=
- susp->in->current)
- susp_get_samples(in, in_ptr, in_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->in->t0) * susp->in->sr -
- (susp->in->current - susp->in_cnt));
- susp->in_ptr += n;
- susp_took(in_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void exp_mark(exp_susp_type susp)
-{
- sound_xlmark(susp->in);
-}
-
-
-void exp_free(exp_susp_type susp)
-{
- sound_unref(susp->in);
- ffree_generic(susp, sizeof(exp_susp_node), "exp_free");
-}
-
-
-void exp_print_tree(exp_susp_type susp, int n)
-{
- indent(n);
- stdputstr("in:");
- sound_print_tree_1(susp->in, n);
-}
-
-
-sound_type snd_make_exp(sound_type in)
-{
- register exp_susp_type susp;
- rate_type sr = in->sr;
- time_type t0 = in->t0;
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- falloc_generic(susp, exp_susp_node, "snd_make_exp");
- susp->susp.fetch = exp_s_fetch;
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < in->t0) sound_prepend_zeros(in, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(in->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = exp_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = exp_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = exp_mark;
- susp->susp.print_tree = exp_print_tree;
- susp->susp.name = "exp";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(in);
- susp->susp.current = 0;
- susp->in = in;
- susp->in_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_exp(sound_type in)
-{
- sound_type in_copy = sound_copy(in);
- return snd_make_exp(in_copy);
-}
diff --git a/lib-src/libnyquist/tran/exp.h b/lib-src/libnyquist/tran/exp.h
deleted file mode 100644
index 7e16a13..0000000
--- a/lib-src/libnyquist/tran/exp.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_exp(sound_type in);
-sound_type snd_exp(sound_type in);
- /* LISP: (snd-exp SOUND) */
diff --git a/lib-src/libnyquist/tran/exprel.alg b/lib-src/libnyquist/tran/exprel.alg
deleted file mode 100644
index 2e29a4b..0000000
--- a/lib-src/libnyquist/tran/exprel.alg
+++ /dev/null
@@ -1,50 +0,0 @@
-;; this is the beginnings of a new function that just passes input to output until
-;; a given "release time" at which point the output decays exponentially to zero.
-;; this is hard to do in Nyquist without a new primitive because the amplitude of
-;; the exponential decay depends on the value of the input at some given time.
-;; (Yes, you can evaluate that point, but then you have to compute all the samples,
-;; and they will be held in memory, which might not be a good thing.)
-
-(EXPREL-ALG
-(NAME "exprel")
-(ARGUMENTS ("sound_type" "signal") ("time_type" "release_time") ("double" "fall_time"))
-(SUPPORT-FUNCTIONS "#define ST_HOLD 0
-#define ST_FALL 1
-#define ST_FALL_UNTIL 2
-#define ST_OFF 3
-#define ST_OFF_UNTIL 4
-#define ST_RISE 5
-
-/* Overview:
-This operation passes its input to its output until the release time. Then, it takes
-the last sample output as a starting point for an exponential decay, with a duration
-of falltime.
-*/
-
-")
-(STATE
- ("long" "release_time" "signal->sr * release_time + 0.5")
- ("double" "fall_time" "signal->sr * falltime + 0.5")
- ("sample_type" "value" "0")
- ("bool" "falling" "0"))
-(TERMINATE (MIN signal))
-(LOGICAL-STOP "release_time")
-(LINEAR signal)
-(INNER-LOOP "{
- sample_type result;
- if (falling) {
- value = value * decay;
- result = value;
- } else {
- result = signal;
- if (release_time <= susp->susp.current + cnt + togo - n) {
- value = result;
- falling = 1;
- }
- }
- output = (sample_type) value;
- }")
-)
-
-need to do logical stop time and termination time
-
diff --git a/lib-src/libnyquist/tran/fmosc.alg b/lib-src/libnyquist/tran/fmosc.alg
deleted file mode 100644
index 1bbbc98..0000000
--- a/lib-src/libnyquist/tran/fmosc.alg
+++ /dev/null
@@ -1,39 +0,0 @@
-(FMOSC-ALG
-(NAME "fmosc")
-(ARGUMENTS ("sound_type" "s") ("double" "step") ("rate_type" "sr")
- ("double" "hz") ("time_type" "t0") ("sound_type" "s_fm")
- ("double" "phase"))
-(TABLE "s")
-(NOT-IN-INNER-LOOP "s")
-(STATE ("table_type" "the_table" "sound_to_table(s)")
- ("double" "table_len" "susp->the_table->length")
- ("double" "ph_incr" "0")
- ("sample_type *" "table_ptr" "susp->the_table->samples")
- ("double" "phase" "compute_phase(phase, step, (long) susp->table_len,
- s->sr, sr, hz, &susp->ph_incr);
- s_fm->scale *= hz != 0 ? (sample_type) (susp->ph_incr / hz)
- : s->sr / (sr * step_to_hz(step))") ) ; cancel 0/0
-
-(ALWAYS-SCALE s_fm)
-(INLINE-INTERPOLATION T) ; so that modulation can be low frequency
-(STEP-FUNCTION s_fm)
-(TERMINATE (MIN s_fm))
-(LOGICAL-STOP (MIN s_fm))
-(INNER-LOOP-LOCALS " long table_index;
- double x1;
-")
-(INNER-LOOP "table_index = (long) phase;
- x1 = table_ptr[table_index];
- output = (sample_type) (x1 + (phase - table_index) *
- (table_ptr[table_index + 1] - x1));
- phase += ph_incr + s_fm;
- while (phase > table_len) phase -= table_len;
- /* watch out for negative frequencies! */
- while (phase < 0) phase += table_len")
-(CONSTANT "ph_incr" "table_len" "table_ptr" "table")
-
-(SAMPLE-RATE "sr")
-(FINALIZATION " table_unref(susp->the_table);
-")
-)
-
diff --git a/lib-src/libnyquist/tran/fmosc.c b/lib-src/libnyquist/tran/fmosc.c
deleted file mode 100644
index f4d538b..0000000
--- a/lib-src/libnyquist/tran/fmosc.c
+++ /dev/null
@@ -1,494 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "fmosc.h"
-
-void fmosc_free();
-
-
-typedef struct fmosc_susp_struct {
- snd_susp_node susp;
- boolean started;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type s_fm;
- long s_fm_cnt;
- sample_block_values_type s_fm_ptr;
-
- /* support for interpolation of s_fm */
- sample_type s_fm_x1_sample;
- double s_fm_pHaSe;
- double s_fm_pHaSe_iNcR;
-
- /* support for ramp between samples of s_fm */
- double output_per_s_fm;
- long s_fm_n;
-
- table_type the_table;
- double table_len;
- double ph_incr;
- sample_type *table_ptr;
- double phase;
-} fmosc_susp_node, *fmosc_susp_type;
-
-
-void fmosc_s_fetch(register fmosc_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double table_len_reg;
- register double ph_incr_reg;
- register sample_type * table_ptr_reg;
- register double phase_reg;
- register sample_type s_fm_scale_reg = susp->s_fm->scale;
- register sample_block_values_type s_fm_ptr_reg;
- falloc_sample_block(out, "fmosc_s_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s_fm input sample block: */
- susp_check_term_log_samples(s_fm, s_fm_ptr, s_fm_cnt);
- togo = MIN(togo, susp->s_fm_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- table_len_reg = susp->table_len;
- ph_incr_reg = susp->ph_incr;
- table_ptr_reg = susp->table_ptr;
- phase_reg = susp->phase;
- s_fm_ptr_reg = susp->s_fm_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- long table_index;
- double x1;
-table_index = (long) phase_reg;
- x1 = table_ptr_reg[table_index];
- *out_ptr_reg++ = (sample_type) (x1 + (phase_reg - table_index) *
- (table_ptr_reg[table_index + 1] - x1));
- phase_reg += ph_incr_reg + (s_fm_scale_reg * *s_fm_ptr_reg++);
- while (phase_reg > table_len_reg) phase_reg -= table_len_reg;
- /* watch out for negative frequencies! */
- while (phase_reg < 0) phase_reg += table_len_reg;
- } while (--n); /* inner loop */
-
- susp->phase = phase_reg;
- /* using s_fm_ptr_reg is a bad idea on RS/6000: */
- susp->s_fm_ptr += togo;
- out_ptr += togo;
- susp_took(s_fm_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* fmosc_s_fetch */
-
-
-void fmosc_i_fetch(register fmosc_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double table_len_reg;
- register double ph_incr_reg;
- register sample_type * table_ptr_reg;
- register double phase_reg;
- register double s_fm_pHaSe_iNcR_rEg = susp->s_fm_pHaSe_iNcR;
- register double s_fm_pHaSe_ReG;
- register sample_type s_fm_x1_sample_reg;
- falloc_sample_block(out, "fmosc_i_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp_check_term_log_samples(s_fm, s_fm_ptr, s_fm_cnt);
- susp->s_fm_x1_sample = susp_fetch_sample(s_fm, s_fm_ptr, s_fm_cnt);
- }
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- table_len_reg = susp->table_len;
- ph_incr_reg = susp->ph_incr;
- table_ptr_reg = susp->table_ptr;
- phase_reg = susp->phase;
- s_fm_pHaSe_ReG = susp->s_fm_pHaSe;
- s_fm_x1_sample_reg = susp->s_fm_x1_sample;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- long table_index;
- double x1;
- if (s_fm_pHaSe_ReG >= 1.0) {
-/* fixup-depends s_fm */
- /* pick up next sample as s_fm_x1_sample: */
- susp->s_fm_ptr++;
- susp_took(s_fm_cnt, 1);
- s_fm_pHaSe_ReG -= 1.0;
- susp_check_term_log_samples_break(s_fm, s_fm_ptr, s_fm_cnt, s_fm_x1_sample_reg);
- s_fm_x1_sample_reg = susp_current_sample(s_fm, s_fm_ptr);
- }
-table_index = (long) phase_reg;
- x1 = table_ptr_reg[table_index];
- *out_ptr_reg++ = (sample_type) (x1 + (phase_reg - table_index) *
- (table_ptr_reg[table_index + 1] - x1));
- phase_reg += ph_incr_reg + s_fm_x1_sample_reg;
- while (phase_reg > table_len_reg) phase_reg -= table_len_reg;
- /* watch out for negative frequencies! */
- while (phase_reg < 0) phase_reg += table_len_reg;
- s_fm_pHaSe_ReG += s_fm_pHaSe_iNcR_rEg;
- } while (--n); /* inner loop */
-
- togo -= n;
- susp->phase = phase_reg;
- susp->s_fm_pHaSe = s_fm_pHaSe_ReG;
- susp->s_fm_x1_sample = s_fm_x1_sample_reg;
- out_ptr += togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* fmosc_i_fetch */
-
-
-void fmosc_r_fetch(register fmosc_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- sample_type s_fm_val;
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double table_len_reg;
- register double ph_incr_reg;
- register sample_type * table_ptr_reg;
- register double phase_reg;
- falloc_sample_block(out, "fmosc_r_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp->s_fm_pHaSe = 1.0;
- }
-
- susp_check_term_log_samples(s_fm, s_fm_ptr, s_fm_cnt);
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* grab next s_fm_x1_sample when phase goes past 1.0; */
- /* use s_fm_n (computed below) to avoid roundoff errors: */
- if (susp->s_fm_n <= 0) {
- susp_check_term_log_samples(s_fm, s_fm_ptr, s_fm_cnt);
- susp->s_fm_x1_sample = susp_fetch_sample(s_fm, s_fm_ptr, s_fm_cnt);
- susp->s_fm_pHaSe -= 1.0;
- /* s_fm_n gets number of samples before phase exceeds 1.0: */
- susp->s_fm_n = (long) ((1.0 - susp->s_fm_pHaSe) *
- susp->output_per_s_fm);
- }
- togo = MIN(togo, susp->s_fm_n);
- s_fm_val = susp->s_fm_x1_sample;
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- table_len_reg = susp->table_len;
- ph_incr_reg = susp->ph_incr;
- table_ptr_reg = susp->table_ptr;
- phase_reg = susp->phase;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- long table_index;
- double x1;
-table_index = (long) phase_reg;
- x1 = table_ptr_reg[table_index];
- *out_ptr_reg++ = (sample_type) (x1 + (phase_reg - table_index) *
- (table_ptr_reg[table_index + 1] - x1));
- phase_reg += ph_incr_reg + s_fm_val;
- while (phase_reg > table_len_reg) phase_reg -= table_len_reg;
- /* watch out for negative frequencies! */
- while (phase_reg < 0) phase_reg += table_len_reg;
- } while (--n); /* inner loop */
-
- susp->phase = phase_reg;
- out_ptr += togo;
- susp->s_fm_pHaSe += togo * susp->s_fm_pHaSe_iNcR;
- susp->s_fm_n -= togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* fmosc_r_fetch */
-
-
-void fmosc_toss_fetch(susp, snd_list)
- register fmosc_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from s_fm up to final_time for this block of zeros */
- while ((round((final_time - susp->s_fm->t0) * susp->s_fm->sr)) >=
- susp->s_fm->current)
- susp_get_samples(s_fm, s_fm_ptr, s_fm_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->s_fm->t0) * susp->s_fm->sr -
- (susp->s_fm->current - susp->s_fm_cnt));
- susp->s_fm_ptr += n;
- susp_took(s_fm_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void fmosc_mark(fmosc_susp_type susp)
-{
- sound_xlmark(susp->s_fm);
-}
-
-
-void fmosc_free(fmosc_susp_type susp)
-{
- table_unref(susp->the_table);
- sound_unref(susp->s_fm);
- ffree_generic(susp, sizeof(fmosc_susp_node), "fmosc_free");
-}
-
-
-void fmosc_print_tree(fmosc_susp_type susp, int n)
-{
- indent(n);
- stdputstr("s_fm:");
- sound_print_tree_1(susp->s_fm, n);
-}
-
-
-sound_type snd_make_fmosc(sound_type s, double step, rate_type sr, double hz, time_type t0, sound_type s_fm, double phase)
-{
- register fmosc_susp_type susp;
- /* sr specified as input parameter */
- /* t0 specified as input parameter */
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- falloc_generic(susp, fmosc_susp_node, "snd_make_fmosc");
- susp->the_table = sound_to_table(s);
- susp->table_len = susp->the_table->length;
- susp->ph_incr = 0;
- susp->table_ptr = susp->the_table->samples;
- susp->phase = compute_phase(phase, step, (long) susp->table_len,
- s->sr, sr, hz, &susp->ph_incr);
- s_fm->scale *= (float) (hz != 0 ? (sample_type) (susp->ph_incr / hz)
- : s->sr / (sr * step_to_hz(step)));
-
- /* select a susp fn based on sample rates */
- interp_desc = (interp_desc << 2) + interp_style(s_fm, sr);
- switch (interp_desc) {
- case INTERP_n: /* handled below */
- case INTERP_s: susp->susp.fetch = fmosc_s_fetch; break;
- case INTERP_i: susp->susp.fetch = fmosc_i_fetch; break;
- case INTERP_r: susp->susp.fetch = fmosc_r_fetch; break;
- default: snd_badsr(); break;
- }
-
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < s_fm->t0) sound_prepend_zeros(s_fm, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(s_fm->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = fmosc_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = fmosc_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = fmosc_mark;
- susp->susp.print_tree = fmosc_print_tree;
- susp->susp.name = "fmosc";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(s_fm);
- susp->started = false;
- susp->susp.current = 0;
- susp->s_fm = s_fm;
- susp->s_fm_cnt = 0;
- susp->s_fm_pHaSe = 0.0;
- susp->s_fm_pHaSe_iNcR = s_fm->sr / sr;
- susp->s_fm_n = 0;
- susp->output_per_s_fm = sr / s_fm->sr;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_fmosc(sound_type s, double step, rate_type sr, double hz, time_type t0, sound_type s_fm, double phase)
-{
- sound_type s_fm_copy = sound_copy(s_fm);
- return snd_make_fmosc(s, step, sr, hz, t0, s_fm_copy, phase);
-}
diff --git a/lib-src/libnyquist/tran/fmosc.h b/lib-src/libnyquist/tran/fmosc.h
deleted file mode 100644
index c3724de..0000000
--- a/lib-src/libnyquist/tran/fmosc.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_fmosc(sound_type s, double step, rate_type sr, double hz, time_type t0, sound_type s_fm, double phase);
-sound_type snd_fmosc(sound_type s, double step, rate_type sr, double hz, time_type t0, sound_type s_fm, double phase);
- /* LISP: (snd-fmosc SOUND ANYNUM ANYNUM ANYNUM ANYNUM SOUND ANYNUM) */
diff --git a/lib-src/libnyquist/tran/follow.alg b/lib-src/libnyquist/tran/follow.alg
deleted file mode 100644
index 9765897..0000000
--- a/lib-src/libnyquist/tran/follow.alg
+++ /dev/null
@@ -1,106 +0,0 @@
-(FOLLOW-ALG
-(NAME "follow")
-(SUPPORT-FUNCTIONS
-"/* Description: this is a sophisticated envelope follower.
- The input is an envelope, e.g. something produced with
- the AVG function. The purpose of this function is to
- generate a smooth envelope that is generally not less
- than the input signal. In other words, we want to \"ride\"
- the peaks of the signal with a smooth function. The
- algorithm is as follows: keep a current output value
- (called the \"value\"). The value is allowed to increase
- by at most rise_factor and decrease by at most fall_factor.
- Therefore, the next value should be between
- value * rise_factor and value * fall_factor. If the input
- is in this range, then the next value is simply the input.
- If the input is less than value * fall_factor, then the
- next value is just value * fall_factor, which will be greater
- than the input signal. If the input is greater than value *
- rise_factor, then we compute a rising envelope that meets
- the input value by working bacwards in time, changing the
- previous values to input / rise_factor, input / rise_factor^2,
- input / rise_factor^3, etc. until this new envelope intersects
- the previously computed values. There is only a limited buffer
- in which we can work backwards, so if the new envelope does not
- intersect the old one, then make yet another pass, this time
- from the oldest buffered value forward, increasing on each
- sample by rise_factor to produce a maximal envelope. This will
- still be less than the input.
-
- The value has a lower limit of floor to make sure value has a
- reasonable positive value from which to begin an attack.
-
- Because this algorithm can make 2 passes through the buffer on
- sharply rising input signals, it is not particularly fast. The
- assumption is that it operates on fairly short buffers at low
- sample rates appropriate for gain control, so this should not
- matter.
- */
-
-static sample_type *create_buf(double floor, long lookahead)
-{
- sample_type *buf = (sample_type *) malloc(lookahead * sizeof(sample_type));
- int i;
-
- for (i = 0; i < lookahead; i++) buf[i] = (sample_type) floor;
- return buf;
-}
-")
-(ARGUMENTS ("sound_type" "sndin") ("double" "floor") ("double" "risetime")
- ("double" "falltime") ("long" "lookahead"))
-(START (MIN sndin))
-(STATE ("long" "lookahead" "lookahead = lookahead + 1")
- ("sample_type *" "delaybuf" "create_buf(floor, lookahead)")
- ("sample_type *" "delayptr" "susp->delaybuf")
- ("sample_type *" "prevptr" "susp->delaybuf + lookahead - 1;
- *(susp->prevptr) = (sample_type) floor;")
- ("sample_type *" "endptr" "susp->delaybuf + lookahead")
- ("double" "floor" "floor; floor = log(floor);")
- ("double" "rise_factor" "exp(- floor / (sndin->sr * risetime + 0.5))")
- ("double" "fall_factor" "exp(floor / (sndin->sr * falltime + 0.5))")
- ("double" "value" "susp->floor"))
-(CONSTANT "feedback" "rise_factor" "fall_factor" "endptr")
-(NOT-REGISTER delaybuf)
-(ALWAYS-SCALE sndin)
-(TERMINATE (MIN sndin))
-(INNER-LOOP " sample_type current = sndin;
- sample_type high = (sample_type) (*prevptr * rise_factor);
- sample_type low = (sample_type) (*prevptr * fall_factor);
- if (low < floor) low = (sample_type) floor;
- if (current < low) *delayptr = (sample_type) low;
- else if (current < high) *delayptr = current;
- else /* current > high */ {
- /* work back from current */
- double rise_inverse = 1.0 / rise_factor;
- double temp = current * rise_inverse;
- boolean ok = false;
- sample_type *ptr = prevptr;
- int i;
-
- for (i = 0; i < lookahead - 2; i++) {
- if (*ptr < temp) {
- *ptr-- = (sample_type) temp;
- temp *= rise_inverse;
- if (ptr < susp->delaybuf)
- ptr = endptr - 1;
- } else {
- ok = true;
- break;
- }
- }
- if (!ok && (*ptr < temp)) {
- temp = *ptr;
- for (i = 0; i < lookahead - 1; i++) {
- ptr++;
- if (ptr == endptr) ptr = susp->delaybuf;
- temp *= rise_factor;
- *ptr = (sample_type) temp;
- }
- } else *delayptr = current;
- }
- prevptr = delayptr++;
- if (delayptr == endptr) delayptr = susp->delaybuf;
- output = *delayptr;")
-(FINALIZATION "free(susp->delaybuf);")
-)
-
diff --git a/lib-src/libnyquist/tran/follow.c b/lib-src/libnyquist/tran/follow.c
deleted file mode 100644
index 798f4d8..0000000
--- a/lib-src/libnyquist/tran/follow.c
+++ /dev/null
@@ -1,286 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "follow.h"
-
-void follow_free();
-
-
-typedef struct follow_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- sound_type sndin;
- long sndin_cnt;
- sample_block_values_type sndin_ptr;
-
- long lookahead;
- sample_type *delaybuf;
- sample_type *delayptr;
- sample_type *prevptr;
- sample_type *endptr;
- double floor;
- double rise_factor;
- double fall_factor;
- double value;
-} follow_susp_node, *follow_susp_type;
-
-/* Description: this is a sophisticated envelope follower.
- The input is an envelope, e.g. something produced with
- the AVG function. The purpose of this function is to
- generate a smooth envelope that is generally not less
- than the input signal. In other words, we want to "ride"
- the peaks of the signal with a smooth function. The
- algorithm is as follows: keep a current output value
- (called the "value"). The value is allowed to increase
- by at most rise_factor and decrease by at most fall_factor.
- Therefore, the next value should be between
- value * rise_factor and value * fall_factor. If the input
- is in this range, then the next value is simply the input.
- If the input is less than value * fall_factor, then the
- next value is just value * fall_factor, which will be greater
- than the input signal. If the input is greater than value *
- rise_factor, then we compute a rising envelope that meets
- the input value by working bacwards in time, changing the
- previous values to input / rise_factor, input / rise_factor^2,
- input / rise_factor^3, etc. until this new envelope intersects
- the previously computed values. There is only a limited buffer
- in which we can work backwards, so if the new envelope does not
- intersect the old one, then make yet another pass, this time
- from the oldest buffered value forward, increasing on each
- sample by rise_factor to produce a maximal envelope. This will
- still be less than the input.
-
- The value has a lower limit of floor to make sure value has a
- reasonable positive value from which to begin an attack.
-
- Because this algorithm can make 2 passes through the buffer on
- sharply rising input signals, it is not particularly fast. The
- assumption is that it operates on fairly short buffers at low
- sample rates appropriate for gain control, so this should not
- matter.
- */
-
-static sample_type *create_buf(double floor, long lookahead)
-{
- sample_type *buf = (sample_type *) malloc(lookahead * sizeof(sample_type));
- int i;
-
- for (i = 0; i < lookahead; i++) buf[i] = (sample_type) floor;
- return buf;
-}
-
-
-void follow_s_fetch(register follow_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register long lookahead_reg;
- register sample_type * delayptr_reg;
- register sample_type * prevptr_reg;
- register sample_type * endptr_reg;
- register double floor_reg;
- register double rise_factor_reg;
- register double fall_factor_reg;
- register sample_type sndin_scale_reg = susp->sndin->scale;
- register sample_block_values_type sndin_ptr_reg;
- falloc_sample_block(out, "follow_s_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the sndin input sample block: */
- susp_check_term_samples(sndin, sndin_ptr, sndin_cnt);
- togo = MIN(togo, susp->sndin_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
- n = togo;
- lookahead_reg = susp->lookahead;
- delayptr_reg = susp->delayptr;
- prevptr_reg = susp->prevptr;
- endptr_reg = susp->endptr;
- floor_reg = susp->floor;
- rise_factor_reg = susp->rise_factor;
- fall_factor_reg = susp->fall_factor;
- sndin_ptr_reg = susp->sndin_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- sample_type current = (sndin_scale_reg * *sndin_ptr_reg++);
- sample_type high = (sample_type) (*prevptr_reg * rise_factor_reg);
- sample_type low = (sample_type) (*prevptr_reg * fall_factor_reg);
- if (low < floor_reg) low = (sample_type) floor_reg;
- if (current < low) *delayptr_reg = (sample_type) low;
- else if (current < high) *delayptr_reg = current;
- else /* current > high */ {
- /* work back from current */
- double rise_inverse = 1.0 / rise_factor_reg;
- double temp = current * rise_inverse;
- boolean ok = false;
- sample_type *ptr = prevptr_reg;
- int i;
-
- for (i = 0; i < lookahead_reg - 2; i++) {
- if (*ptr < temp) {
- *ptr-- = (sample_type) temp;
- temp *= rise_inverse;
- if (ptr < susp->delaybuf)
- ptr = endptr_reg - 1;
- } else {
- ok = true;
- break;
- }
- }
- if (!ok && (*ptr < temp)) {
- temp = *ptr;
- for (i = 0; i < lookahead_reg - 1; i++) {
- ptr++;
- if (ptr == endptr_reg) ptr = susp->delaybuf;
- temp *= rise_factor_reg;
- *ptr = (sample_type) temp;
- }
- } else *delayptr_reg = current;
- }
- prevptr_reg = delayptr_reg++;
- if (delayptr_reg == endptr_reg) delayptr_reg = susp->delaybuf;
- *out_ptr_reg++ = *delayptr_reg;;
- } while (--n); /* inner loop */
-
- togo -= n;
- susp->lookahead = lookahead_reg;
- susp->delayptr = delayptr_reg;
- susp->prevptr = prevptr_reg;
- susp->floor = floor_reg;
- /* using sndin_ptr_reg is a bad idea on RS/6000: */
- susp->sndin_ptr += togo;
- out_ptr += togo;
- susp_took(sndin_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
-} /* follow_s_fetch */
-
-
-void follow_toss_fetch(susp, snd_list)
- register follow_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from sndin up to final_time for this block of zeros */
- while ((round((final_time - susp->sndin->t0) * susp->sndin->sr)) >=
- susp->sndin->current)
- susp_get_samples(sndin, sndin_ptr, sndin_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->sndin->t0) * susp->sndin->sr -
- (susp->sndin->current - susp->sndin_cnt));
- susp->sndin_ptr += n;
- susp_took(sndin_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void follow_mark(follow_susp_type susp)
-{
- sound_xlmark(susp->sndin);
-}
-
-
-void follow_free(follow_susp_type susp)
-{
-free(susp->delaybuf); sound_unref(susp->sndin);
- ffree_generic(susp, sizeof(follow_susp_node), "follow_free");
-}
-
-
-void follow_print_tree(follow_susp_type susp, int n)
-{
- indent(n);
- stdputstr("sndin:");
- sound_print_tree_1(susp->sndin, n);
-}
-
-
-sound_type snd_make_follow(sound_type sndin, double floor, double risetime, double falltime, long lookahead)
-{
- register follow_susp_type susp;
- rate_type sr = sndin->sr;
- time_type t0 = sndin->t0;
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- falloc_generic(susp, follow_susp_node, "snd_make_follow");
- susp->lookahead = lookahead = lookahead + 1;
- susp->delaybuf = create_buf(floor, lookahead);
- susp->delayptr = susp->delaybuf;
- susp->prevptr = susp->delaybuf + lookahead - 1;
- *(susp->prevptr) = (sample_type) floor;;
- susp->endptr = susp->delaybuf + lookahead;
- susp->floor = floor; floor = log(floor);;
- susp->rise_factor = exp(- floor / (sndin->sr * risetime + 0.5));
- susp->fall_factor = exp(floor / (sndin->sr * falltime + 0.5));
- susp->value = susp->floor;
- susp->susp.fetch = follow_s_fetch;
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < sndin->t0) sound_prepend_zeros(sndin, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(sndin->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = follow_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = follow_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = follow_mark;
- susp->susp.print_tree = follow_print_tree;
- susp->susp.name = "follow";
- susp->susp.log_stop_cnt = UNKNOWN;
- susp->susp.current = 0;
- susp->sndin = sndin;
- susp->sndin_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_follow(sound_type sndin, double floor, double risetime, double falltime, long lookahead)
-{
- sound_type sndin_copy = sound_copy(sndin);
- return snd_make_follow(sndin_copy, floor, risetime, falltime, lookahead);
-}
diff --git a/lib-src/libnyquist/tran/follow.h b/lib-src/libnyquist/tran/follow.h
deleted file mode 100644
index 6dbc3bb..0000000
--- a/lib-src/libnyquist/tran/follow.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_follow(sound_type sndin, double floor, double risetime, double falltime, long lookahead);
-sound_type snd_follow(sound_type sndin, double floor, double risetime, double falltime, long lookahead);
- /* LISP: (snd-follow SOUND ANYNUM ANYNUM ANYNUM FIXNUM) */
diff --git a/lib-src/libnyquist/tran/fromarraystream.alg b/lib-src/libnyquist/tran/fromarraystream.alg
deleted file mode 100644
index f013830..0000000
--- a/lib-src/libnyquist/tran/fromarraystream.alg
+++ /dev/null
@@ -1,82 +0,0 @@
-(FRMASTRM-ALG
- (NAME "fromarraystream")
- (ARGUMENTS ("time_type" "t0") ("rate_type" "sr") ("LVAL" "src"))
- (SUPPORT-FUNCTIONS "
-/* IMPLEMENTATION NOTE:
- * The src argument is an XLisp object that returns either an
- * array of samples or NIL. The output of ifft is simply the
- * concatenation of the samples taken from the array. Later,
- * an ifft will be plugged in and this will return overlapped
- * adds of the ifft's.
- */
-
-#include \"samples.h\"
-")
-
- (SAMPLE-RATE "sr")
- (STATE
- ("long" "index" "0") ; samples index
- ("long" "length" "0"); samples length
- ("LVAL" "array" "NULL")
- ("LVAL" "src" "src")
- ("sample_type *" "samples" "NULL;"))
-
- (OUTER-LOOP "
- if (susp->src == NULL) {
-out: togo = 0; /* indicate termination */
- break; /* we're done */
- }
- if (susp->index >= susp->length) {
- long i;
- susp->index = 0;
- susp->array = xleval(cons(s_send, cons(susp->src, consa(s_next))));
- susp->index = 0;
- if (susp->array == NULL) {
- susp->src = NULL;
- goto out;
- } else if (!vectorp(susp->array)) {
- xlerror(\"array expected\", susp->array);
- } else if (susp->samples == NULL) {
- /* assume arrays are all the same size as first one;
- now that we know the size, we just have to do this
- first allocation.
- */
- susp->length = getsize(susp->array);
- if (susp->length < 1) xlerror(\"array has no elements\", susp->array);
- susp->samples =
- (sample_type *) calloc(susp->length,
- sizeof(sample_type));
- } else if (getsize(susp->array) != susp->length) {
- xlerror(\"arrays must all be the same length\", susp->array);
- }
- /* at this point, we have a new array and a place to put samples */
- for (i = 0; i < susp->length; i++) {
- LVAL elem = getelement(susp->array, i);
- if (ntype(elem) != FLONUM) {
- xlerror(\"flonum expected\", elem);
- }
- susp->samples[i] = (sample_type) getflonum(elem);
- }
- susp->array = NULL; /* free the array */
- }
- togo = MIN(togo, susp->length - susp->index);
-")
- (INNER-LOOP "output = samples[index++];")
- (CONSTANT "length" "samples" "array" "src")
- (TERMINATE COMPUTED)
- (FINALIZATION " free(susp->samples);
-")
-
-)
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/lib-src/libnyquist/tran/fromarraystream.c b/lib-src/libnyquist/tran/fromarraystream.c
deleted file mode 100644
index 732d0a1..0000000
--- a/lib-src/libnyquist/tran/fromarraystream.c
+++ /dev/null
@@ -1,170 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "fromarraystream.h"
-
-void fromarraystream_free();
-
-
-typedef struct fromarraystream_susp_struct {
- snd_susp_node susp;
-
- long index;
- long length;
- LVAL array;
- LVAL src;
- sample_type *samples;
-} fromarraystream_susp_node, *fromarraystream_susp_type;
-
-
-/* IMPLEMENTATION NOTE:
- * The src argument is an XLisp object that returns either an
- * array of samples or NIL. The output of ifft is simply the
- * concatenation of the samples taken from the array. Later,
- * an ifft will be plugged in and this will return overlapped
- * adds of the ifft's.
- */
-
-#include "samples.h"
-
-
-void fromarraystream__fetch(register fromarraystream_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register long index_reg;
- register sample_type * samples_reg;
- falloc_sample_block(out, "fromarraystream__fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
-
- if (susp->src == NULL) {
-out: togo = 0; /* indicate termination */
- break; /* we're done */
- }
- if (susp->index >= susp->length) {
- long i;
- susp->index = 0;
- susp->array = xleval(cons(s_send, cons(susp->src, consa(s_next))));
- susp->index = 0;
- if (susp->array == NULL) {
- susp->src = NULL;
- goto out;
- } else if (!vectorp(susp->array)) {
- xlerror("array expected", susp->array);
- } else if (susp->samples == NULL) {
- /* assume arrays are all the same size as first one;
- now that we know the size, we just have to do this
- first allocation.
- */
- susp->length = getsize(susp->array);
- if (susp->length < 1) xlerror("array has no elements", susp->array);
- susp->samples =
- (sample_type *) calloc(susp->length,
- sizeof(sample_type));
- } else if (getsize(susp->array) != susp->length) {
- xlerror("arrays must all be the same length", susp->array);
- }
- /* at this point, we have a new array and a place to put samples */
- for (i = 0; i < susp->length; i++) {
- LVAL elem = getelement(susp->array, i);
- if (ntype(elem) != FLONUM) {
- xlerror("flonum expected", elem);
- }
- susp->samples[i] = (sample_type) getflonum(elem);
- }
- susp->array = NULL; /* free the array */
- }
- togo = MIN(togo, susp->length - susp->index);
-
- n = togo;
- index_reg = susp->index;
- samples_reg = susp->samples;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-*out_ptr_reg++ = samples_reg[index_reg++];;
- } while (--n); /* inner loop */
-
- susp->index = index_reg;
- out_ptr += togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
-} /* fromarraystream__fetch */
-
-
-void fromarraystream_mark(fromarraystream_susp_type susp)
-{
- if (susp->src) mark(susp->src);
- if (susp->array) mark(susp->array);
-}
-
-
-void fromarraystream_free(fromarraystream_susp_type susp)
-{
- free(susp->samples);
- ffree_generic(susp, sizeof(fromarraystream_susp_node), "fromarraystream_free");
-}
-
-
-void fromarraystream_print_tree(fromarraystream_susp_type susp, int n)
-{
-}
-
-
-sound_type snd_make_fromarraystream(time_type t0, rate_type sr, LVAL src)
-{
- register fromarraystream_susp_type susp;
- /* sr specified as input parameter */
- /* t0 specified as input parameter */
- sample_type scale_factor = 1.0F;
- falloc_generic(susp, fromarraystream_susp_node, "snd_make_fromarraystream");
- susp->index = 0;
- susp->length = 0;
- susp->array = NULL;
- susp->src = src;
- susp->samples = NULL;;
- susp->susp.fetch = fromarraystream__fetch;
-
- /* initialize susp state */
- susp->susp.free = fromarraystream_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = fromarraystream_mark;
- susp->susp.print_tree = fromarraystream_print_tree;
- susp->susp.name = "fromarraystream";
- susp->susp.log_stop_cnt = UNKNOWN;
- susp->susp.current = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_fromarraystream(time_type t0, rate_type sr, LVAL src)
-{
- return snd_make_fromarraystream(t0, sr, src);
-}
diff --git a/lib-src/libnyquist/tran/fromarraystream.h b/lib-src/libnyquist/tran/fromarraystream.h
deleted file mode 100644
index 51a5a60..0000000
--- a/lib-src/libnyquist/tran/fromarraystream.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_fromarraystream(time_type t0, rate_type sr, LVAL src);
-sound_type snd_fromarraystream(time_type t0, rate_type sr, LVAL src);
- /* LISP: (snd-fromarraystream ANYNUM ANYNUM ANY) */
diff --git a/lib-src/libnyquist/tran/fromobject.alg b/lib-src/libnyquist/tran/fromobject.alg
deleted file mode 100644
index f119a7f..0000000
--- a/lib-src/libnyquist/tran/fromobject.alg
+++ /dev/null
@@ -1,37 +0,0 @@
-(FROMOBJ-ALG
- (NAME "fromobject")
- (ARGUMENTS ("time_type" "t0") ("rate_type" "sr") ("LVAL" "src"))
- (SUPPORT-FUNCTIONS "
-/* IMPLEMENTATION NOTE:
- * The src argument is an XLisp object that returns either a
- * FLONUM sample or NIL. The output of fromobj is simply the
- * sequence of the samples.
- */
-
-#include \"samples.h\"
-")
-
- (SAMPLE-RATE "sr")
- (STATE
- ("boolean" "done" "false")
- ("LVAL" "src" "src"))
-
- (OUTER-LOOP " if (susp->done) {
- togo = 0; /* indicate termination */
- break; /* we're done */
- }
-")
- (INNER-LOOP
-" LVAL rslt = xleval(cons(s_send, cons(src,
- consa(s_next))));
- if (floatp(rslt)) {
- output = (sample_type) getflonum(rslt);
- } else {
- done = true;
- /* adjust togo to what it should have been */
- break;
- }")
- (CONSTANT "length" "samples" "array" "src")
- (TERMINATE COMPUTED)
-)
-
diff --git a/lib-src/libnyquist/tran/fromobject.c b/lib-src/libnyquist/tran/fromobject.c
deleted file mode 100644
index f744a9d..0000000
--- a/lib-src/libnyquist/tran/fromobject.c
+++ /dev/null
@@ -1,134 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "fromobject.h"
-
-void fromobject_free();
-
-
-typedef struct fromobject_susp_struct {
- snd_susp_node susp;
-
- boolean done;
- LVAL src;
-} fromobject_susp_node, *fromobject_susp_type;
-
-
-/* IMPLEMENTATION NOTE:
- * The src argument is an XLisp object that returns either a
- * FLONUM sample or NIL. The output of fromobj is simply the
- * sequence of the samples.
- */
-
-#include "samples.h"
-
-
-void fromobject__fetch(register fromobject_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register boolean done_reg;
- register LVAL src_reg;
- falloc_sample_block(out, "fromobject__fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- if (susp->done) {
- togo = 0; /* indicate termination */
- break; /* we're done */
- }
-
- n = togo;
- done_reg = susp->done;
- src_reg = susp->src;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- LVAL rslt = xleval(cons(s_send, cons(src_reg,
- consa(s_next))));
- if (floatp(rslt)) {
- *out_ptr_reg++ = (sample_type) getflonum(rslt);
- } else {
- done_reg = true;
- /* adjust togo to what it should have been */
- break;
- };
- } while (--n); /* inner loop */
-
- togo -= n;
- susp->done = done_reg;
- out_ptr += togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
-} /* fromobject__fetch */
-
-
-void fromobject_mark(fromobject_susp_type susp)
-{
- if (susp->src) mark(susp->src);
-}
-
-
-void fromobject_free(fromobject_susp_type susp)
-{
- ffree_generic(susp, sizeof(fromobject_susp_node), "fromobject_free");
-}
-
-
-void fromobject_print_tree(fromobject_susp_type susp, int n)
-{
-}
-
-
-sound_type snd_make_fromobject(time_type t0, rate_type sr, LVAL src)
-{
- register fromobject_susp_type susp;
- /* sr specified as input parameter */
- /* t0 specified as input parameter */
- sample_type scale_factor = 1.0F;
- falloc_generic(susp, fromobject_susp_node, "snd_make_fromobject");
- susp->done = false;
- susp->src = src;
- susp->susp.fetch = fromobject__fetch;
-
- /* initialize susp state */
- susp->susp.free = fromobject_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = fromobject_mark;
- susp->susp.print_tree = fromobject_print_tree;
- susp->susp.name = "fromobject";
- susp->susp.log_stop_cnt = UNKNOWN;
- susp->susp.current = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_fromobject(time_type t0, rate_type sr, LVAL src)
-{
- return snd_make_fromobject(t0, sr, src);
-}
diff --git a/lib-src/libnyquist/tran/fromobject.h b/lib-src/libnyquist/tran/fromobject.h
deleted file mode 100644
index b8d560d..0000000
--- a/lib-src/libnyquist/tran/fromobject.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_fromobject(time_type t0, rate_type sr, LVAL src);
-sound_type snd_fromobject(time_type t0, rate_type sr, LVAL src);
- /* LISP: (snd-fromobject ANYNUM ANYNUM ANY) */
diff --git a/lib-src/libnyquist/tran/gate.alg b/lib-src/libnyquist/tran/gate.alg
deleted file mode 100644
index 5a7b10f..0000000
--- a/lib-src/libnyquist/tran/gate.alg
+++ /dev/null
@@ -1,166 +0,0 @@
-(GATE-ALG
-(NAME "gate")
-(ARGUMENTS ("sound_type" "signal") ("time_type" "lookahead") ("double" "risetime")
- ("double" "falltime") ("double" "floor") ("double" "threshold"))
-(START (MIN signal))
-(SUPPORT-FUNCTIONS "#define ST_HOLD 0
-#define ST_FALL 1
-#define ST_FALL_UNTIL 2
-#define ST_OFF 3
-#define ST_OFF_UNTIL 4
-#define ST_RISE 5
-
-/* Overview:
-This operation generates an exponential rise and decay suitable for implementing a
-noise gate. The decay starts when the signal drops below threshold and stays there
-for longer than lookahead.
-Decay continues until the value reaches floor, at which point the decay stops
-and the value is held constant. Either during the decay or after the floor is reached,
-if the signal goes above threshold, then the output value will rise to 1.0 (0dB) at
-the point the signal crosses the threshold. Again, lookahead is used, so the rise
-actually starts before the signal crosses the threshold. The rise rate is constant
-and set so that a rise from floor to 0dB occurs in the specified risetime. Similarly,
-the fall rate is constant such that a fall from 0dB to the floor takes falltime.
-
-Rather than looking ahead, the output actually lags the input by lookahead. The caller
-should advance the time of the input signal in order to get a correct output signal,
-and this will be taken care of in Lisp code.
-
-The implementation is a finite-state machine that simultaneously computes the value
-and scans ahead for threshold crossings. Time points, remembered as sample counts are
-saved in variables:
- on_count -- the time at which the rise should complete
- off_count -- the time at which the fall should begin
- rise_factor -- multiply by this to get exponential rise
- fall_factor -- multiply by this to get exponential fall
- rise_time -- number of samples for a full rise
- fall_time -- number of samples for a full fall
- floor -- the lowest value to output
- threshold -- compare the signal s to this value
- start_rise -- the sample count at which a rise begins
- delay_len -- number of samples to look ahead, length of buffer
- state -- the current state of finite state machine
- (see the individual 'case' statements for description of states)
- value -- the current output value
-
-computing fall_factor:
- factor ^ (sample_rate * time) == floor
- log(factor) * sample_rate * time == log(floor)
- log(factor) == log(floor) / (sample_rate * time)
- factor == exp(log(floor) / (sample_rate * time))
-
-*/
-
-void compute_start_rise(gate_susp_type susp)
-{
- /* to compute when to start rise to achieve 0dB at on_count:
- By similar triangles:
- truncated rise time truncated fall time
- ------------------- == -------------------
- full rise time full fall time
- when you enter ST_FALL, set start_fall = now
- then if (on_count - start_fall) < (rise_time + fall_time)
- then start rise at
- on_time - rise_time * (on_count-start_fall)/(rise_time+fall_time)
- */
- long total = (long) (susp->rise_time + susp->fall_time);
- if ((susp->on_count - susp->start_fall) < total) {
- susp->start_rise = (long) (susp->on_count -
- (susp->rise_time * susp->on_count - susp->start_fall) / total);
- } else susp->start_rise = (long) (susp->on_count - susp->rise_time);
-}
-")
-(STATE
- ("double" "rise_time" "signal->sr * risetime + 0.5")
- ("double" "fall_time" "signal->sr * falltime + 0.5")
- ("double" "floor" "floor; floor = log(floor);")
- ("double" "threshold" "threshold")
- ("long" "on_count" "0")
- ("long" "off_count" "0")
- ("double" "rise_factor" "exp(- floor / susp->rise_time)")
- ("double" "fall_factor" "exp(floor / susp->fall_time)")
- ("long" "start_fall" "0")
- ("long" "start_rise" "0")
- ("long" "stop_count" "0")
- ("long" "delay_len" "MAX(1, round(signal->sr * lookahead))")
- ("int" "state" "ST_OFF")
- ("double" "value" "susp->floor"))
-
-(CONSTANT "lookahead" "rise_time" "fall_time" "floor" "threshold" "delay_len" "end_ptr"
- "rise_factor" "fall_factor")
-(NOT-REGISTER delay_buf rise_factor fall_factor rise_time fall_time floor
- on_count start_fall start_rise)
-(LINEAR signal)
-(TERMINATE (MIN signal))
-(INNER-LOOP "{
- sample_type future = signal;
- long now = susp->susp.current + cnt + togo - n;
-
- switch (state) {
- /* hold at 1.0 and look for the moment to begin fall: */
- case ST_HOLD:
- if (future >= threshold) {
- off_count = now + delay_len;
- } else if (now >= off_count) {
- state = ST_FALL;
- stop_count = (long) (now + susp->fall_time);
- susp->start_fall = now;
- }
- break;
- /* fall until stop_count while looking for next rise time */
- case ST_FALL:
- if (future >= threshold) {
- off_count = susp->on_count = now + delay_len;
- compute_start_rise(susp);
- state = ST_FALL_UNTIL;
- } else if (now == stop_count) {
- state = ST_OFF;
- value = susp->floor;
- } else value *= susp->fall_factor;
- break;
- /* fall until start_rise while looking for next fall time */
- case ST_FALL_UNTIL:
- value *= susp->fall_factor;
- if (future >= threshold) {
- off_count = now + delay_len;
- }
- if (now >= susp->start_rise) {
- state = ST_RISE;
- } else if (now >= stop_count) {
- state = ST_OFF_UNTIL;
- value = susp->floor;
- }
- break;
- /* hold at floor (minimum value) and look for next rise time */
- case ST_OFF:
- if (future >= threshold) {
- off_count = susp->on_count = now + delay_len;
- compute_start_rise(susp);
- state = ST_OFF_UNTIL;
- }
- break;
- /* hold at floor until start_rise while looking for next fall time */
- case ST_OFF_UNTIL:
- if (future >= threshold) {
- off_count = now + delay_len;
- }
- if (now >= susp->start_rise) {
- state = ST_RISE;
- }
- break;
- /* rise while looking for fall time */
- case ST_RISE:
- value *= susp->rise_factor;
- if (future >= threshold) {
- off_count = now + delay_len;
- }
- if (now >= susp->on_count) {
- value = 1.0;
- state = ST_HOLD;
- }
- break;
- }
- output = (sample_type) value;
- }")
-)
-
diff --git a/lib-src/libnyquist/tran/gate.c b/lib-src/libnyquist/tran/gate.c
deleted file mode 100644
index 1c04c0d..0000000
--- a/lib-src/libnyquist/tran/gate.c
+++ /dev/null
@@ -1,353 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "gate.h"
-
-void gate_free();
-
-
-typedef struct gate_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- sound_type signal;
- long signal_cnt;
- sample_block_values_type signal_ptr;
-
- double rise_time;
- double fall_time;
- double floor;
- double threshold;
- long on_count;
- long off_count;
- double rise_factor;
- double fall_factor;
- long start_fall;
- long start_rise;
- long stop_count;
- long delay_len;
- int state;
- double value;
-} gate_susp_node, *gate_susp_type;
-
-#define ST_HOLD 0
-#define ST_FALL 1
-#define ST_FALL_UNTIL 2
-#define ST_OFF 3
-#define ST_OFF_UNTIL 4
-#define ST_RISE 5
-
-/* Overview:
-This operation generates an exponential rise and decay suitable for implementing a
-noise gate. The decay starts when the signal drops below threshold and stays there
-for longer than lookahead.
-Decay continues until the value reaches floor, at which point the decay stops
-and the value is held constant. Either during the decay or after the floor is reached,
-if the signal goes above threshold, then the output value will rise to 1.0 (0dB) at
-the point the signal crosses the threshold. Again, lookahead is used, so the rise
-actually starts before the signal crosses the threshold. The rise rate is constant
-and set so that a rise from floor to 0dB occurs in the specified risetime. Similarly,
-the fall rate is constant such that a fall from 0dB to the floor takes falltime.
-
-Rather than looking ahead, the output actually lags the input by lookahead. The caller
-should advance the time of the input signal in order to get a correct output signal,
-and this will be taken care of in Lisp code.
-
-The implementation is a finite-state machine that simultaneously computes the value
-and scans ahead for threshold crossings. Time points, remembered as sample counts are
-saved in variables:
- on_count -- the time at which the rise should complete
- off_count -- the time at which the fall should begin
- rise_factor -- multiply by this to get exponential rise
- fall_factor -- multiply by this to get exponential fall
- rise_time -- number of samples for a full rise
- fall_time -- number of samples for a full fall
- floor -- the lowest value to output
- threshold -- compare the signal s to this value
- start_rise -- the sample count at which a rise begins
- delay_len -- number of samples to look ahead, length of buffer
- state -- the current state of finite state machine
- (see the individual 'case' statements for description of states)
- value -- the current output value
-
-computing fall_factor:
- factor ^ (sample_rate * time) == floor
- log(factor) * sample_rate * time == log(floor)
- log(factor) == log(floor) / (sample_rate * time)
- factor == exp(log(floor) / (sample_rate * time))
-
-*/
-
-void compute_start_rise(gate_susp_type susp)
-{
- /* to compute when to start rise to achieve 0dB at on_count:
- By similar triangles:
- truncated rise time truncated fall time
- ------------------- == -------------------
- full rise time full fall time
- when you enter ST_FALL, set start_fall = now
- then if (on_count - start_fall) < (rise_time + fall_time)
- then start rise at
- on_time - rise_time * (on_count-start_fall)/(rise_time+fall_time)
- */
- long total = (long) (susp->rise_time + susp->fall_time);
- if ((susp->on_count - susp->start_fall) < total) {
- susp->start_rise = (long) (susp->on_count -
- (susp->rise_time * susp->on_count - susp->start_fall) / total);
- } else susp->start_rise = (long) (susp->on_count - susp->rise_time);
-}
-
-
-void gate_n_fetch(register gate_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double threshold_reg;
- register long off_count_reg;
- register long stop_count_reg;
- register long delay_len_reg;
- register int state_reg;
- register double value_reg;
- register sample_block_values_type signal_ptr_reg;
- falloc_sample_block(out, "gate_n_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the signal input sample block: */
- susp_check_term_samples(signal, signal_ptr, signal_cnt);
- togo = MIN(togo, susp->signal_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
- n = togo;
- threshold_reg = susp->threshold;
- off_count_reg = susp->off_count;
- stop_count_reg = susp->stop_count;
- delay_len_reg = susp->delay_len;
- state_reg = susp->state;
- value_reg = susp->value;
- signal_ptr_reg = susp->signal_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-{
- sample_type future = *signal_ptr_reg++;
- long now = susp->susp.current + cnt + togo - n;
-
- switch (state_reg) {
- /* hold at 1.0 and look for the moment to begin fall: */
- case ST_HOLD:
- if (future >= threshold_reg) {
- off_count_reg = now + delay_len_reg;
- } else if (now >= off_count_reg) {
- state_reg = ST_FALL;
- stop_count_reg = (long) (now + susp->fall_time);
- susp->start_fall = now;
- }
- break;
- /* fall until stop_count_reg while looking for next rise time */
- case ST_FALL:
- if (future >= threshold_reg) {
- off_count_reg = susp->on_count = now + delay_len_reg;
- compute_start_rise(susp);
- state_reg = ST_FALL_UNTIL;
- } else if (now == stop_count_reg) {
- state_reg = ST_OFF;
- value_reg = susp->floor;
- } else value_reg *= susp->fall_factor;
- break;
- /* fall until start_rise while looking for next fall time */
- case ST_FALL_UNTIL:
- value_reg *= susp->fall_factor;
- if (future >= threshold_reg) {
- off_count_reg = now + delay_len_reg;
- }
- if (now >= susp->start_rise) {
- state_reg = ST_RISE;
- } else if (now >= stop_count_reg) {
- state_reg = ST_OFF_UNTIL;
- value_reg = susp->floor;
- }
- break;
- /* hold at floor (minimum value_reg) and look for next rise time */
- case ST_OFF:
- if (future >= threshold_reg) {
- off_count_reg = susp->on_count = now + delay_len_reg;
- compute_start_rise(susp);
- state_reg = ST_OFF_UNTIL;
- }
- break;
- /* hold at floor until start_rise while looking for next fall time */
- case ST_OFF_UNTIL:
- if (future >= threshold_reg) {
- off_count_reg = now + delay_len_reg;
- }
- if (now >= susp->start_rise) {
- state_reg = ST_RISE;
- }
- break;
- /* rise while looking for fall time */
- case ST_RISE:
- value_reg *= susp->rise_factor;
- if (future >= threshold_reg) {
- off_count_reg = now + delay_len_reg;
- }
- if (now >= susp->on_count) {
- value_reg = 1.0;
- state_reg = ST_HOLD;
- }
- break;
- }
- *out_ptr_reg++ = (sample_type) value_reg;
- };
- } while (--n); /* inner loop */
-
- togo -= n;
- susp->off_count = off_count_reg;
- susp->stop_count = stop_count_reg;
- susp->state = state_reg;
- susp->value = value_reg;
- /* using signal_ptr_reg is a bad idea on RS/6000: */
- susp->signal_ptr += togo;
- out_ptr += togo;
- susp_took(signal_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
-} /* gate_n_fetch */
-
-
-void gate_toss_fetch(susp, snd_list)
- register gate_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from signal up to final_time for this block of zeros */
- while ((round((final_time - susp->signal->t0) * susp->signal->sr)) >=
- susp->signal->current)
- susp_get_samples(signal, signal_ptr, signal_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->signal->t0) * susp->signal->sr -
- (susp->signal->current - susp->signal_cnt));
- susp->signal_ptr += n;
- susp_took(signal_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void gate_mark(gate_susp_type susp)
-{
- sound_xlmark(susp->signal);
-}
-
-
-void gate_free(gate_susp_type susp)
-{
- sound_unref(susp->signal);
- ffree_generic(susp, sizeof(gate_susp_node), "gate_free");
-}
-
-
-void gate_print_tree(gate_susp_type susp, int n)
-{
- indent(n);
- stdputstr("signal:");
- sound_print_tree_1(susp->signal, n);
-}
-
-
-sound_type snd_make_gate(sound_type signal, time_type lookahead, double risetime, double falltime, double floor, double threshold)
-{
- register gate_susp_type susp;
- rate_type sr = signal->sr;
- time_type t0 = signal->t0;
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- /* combine scale factors of linear inputs (SIGNAL) */
- scale_factor *= signal->scale;
- signal->scale = 1.0F;
-
- /* try to push scale_factor back to a low sr input */
- if (signal->sr < sr) { signal->scale = scale_factor; scale_factor = 1.0F; }
-
- falloc_generic(susp, gate_susp_node, "snd_make_gate");
- susp->rise_time = signal->sr * risetime + 0.5;
- susp->fall_time = signal->sr * falltime + 0.5;
- susp->floor = floor; floor = log(floor);;
- susp->threshold = threshold;
- susp->on_count = 0;
- susp->off_count = 0;
- susp->rise_factor = exp(- floor / susp->rise_time);
- susp->fall_factor = exp(floor / susp->fall_time);
- susp->start_fall = 0;
- susp->start_rise = 0;
- susp->stop_count = 0;
- susp->delay_len = MAX(1, round(signal->sr * lookahead));
- susp->state = ST_OFF;
- susp->value = susp->floor;
- susp->susp.fetch = gate_n_fetch;
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < signal->t0) sound_prepend_zeros(signal, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(signal->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = gate_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = gate_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = gate_mark;
- susp->susp.print_tree = gate_print_tree;
- susp->susp.name = "gate";
- susp->susp.log_stop_cnt = UNKNOWN;
- susp->susp.current = 0;
- susp->signal = signal;
- susp->signal_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_gate(sound_type signal, time_type lookahead, double risetime, double falltime, double floor, double threshold)
-{
- sound_type signal_copy = sound_copy(signal);
- return snd_make_gate(signal_copy, lookahead, risetime, falltime, floor, threshold);
-}
diff --git a/lib-src/libnyquist/tran/gate.h b/lib-src/libnyquist/tran/gate.h
deleted file mode 100644
index 851c783..0000000
--- a/lib-src/libnyquist/tran/gate.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_gate(sound_type signal, time_type lookahead, double risetime, double falltime, double floor, double threshold);
-sound_type snd_gate(sound_type signal, time_type lookahead, double risetime, double falltime, double floor, double threshold);
- /* LISP: (snd-gate SOUND ANYNUM ANYNUM ANYNUM ANYNUM ANYNUM) */
diff --git a/lib-src/libnyquist/tran/ifft-old.alg b/lib-src/libnyquist/tran/ifft-old.alg
deleted file mode 100644
index 19b44b0..0000000
--- a/lib-src/libnyquist/tran/ifft-old.alg
+++ /dev/null
@@ -1,92 +0,0 @@
-(IFFT-ALG
- (NAME "ifft")
- (ARGUMENTS ("time_type" "t0") ("rate_type" "sr") ("LVAL" "src"))
- (SUPPORT-FUNCTIONS "
-/* IMPLEMENTATION NOTE:
- * The src argument is an XLisp object that returns either an
- * array of samples or NIL. The output of ifft is simply the
- * concatenation of the samples taken from the array. Later,
- * an ifft will be plugged in and this will return overlapped
- * adds of the ifft's.
- */
-
-#include \"samples.h\"
-
- /* IFFT code goes here */
-")
-
- (SAMPLE-RATE "sr")
- (STATE
- ("long" "index" "0") ; samples index
- ("long" "length" "0"); samples length
- ("LVAL" "array" "NULL")
- ("LVAL" "src" "src")
- ("sample_type *" "samples" "NULL"))
-
- (OUTER-LOOP "
- if (susp->src == NULL) {
-out: togo = 0; /* indicate termination */
- break; /* we're done */
- }
- if (susp->index >= susp->length) {
- long i;
- susp->index = 0;
- susp->array = xleval(cons(s_send, cons(susp->src, consa(s_next))));
- susp->index = 0;
- if (susp->array == NULL) {
- susp->src = NULL;
- goto out;
- } else if (!vectorp(susp->array)) {
- xlerror(\"array expected\", susp->array);
- } else if (susp->samples == NULL) {
- /* assume arrays are all the same size as first one;
- now that we know the size, we just have to do this
- first allocation.
- */
- susp->length = getsize(susp->array);
- if (susp->length < 1) xlerror(\"array has no elements\", susp->array);
- susp->samples =
- (sample_type *) calloc(susp->length,
- sizeof(sample_type));
- } else if (getsize(susp->array) != susp->length) {
- xlerror(\"arrays must all be the same length\", susp->array);
- }
- /* at this point, we have a new array and a place to put samples */
- for (i = 0; i < susp->length; i++) {
- LVAL elem = getelement(susp->array, i);
- if (ntype(elem) != FLONUM) {
- xlerror(\"flonum expected\", elem);
- }
- susp->samples[i] = (sample_type) getflonum(elem);
- }
- susp->array = NULL; /* free the array */
- /* here is where the IFFT and windowing should take place */
-/*
- temp_fft = (double *) malloc (susp->length * sizeof(double));
- if (temp_fft == 0) return;
- big_samples = (double *) malloc (susp->length * sizeof(double));
- if (big_samples == 0) return;
- for (i = 0; i < susp->length; i++) {
- big_samples[i] = (double) susp->samples[i];
- }
- rp = rfftw_create_plan(susp->length, FFTW_COMPLEX_TO_REAL, FFTW_ESTIMATE);
- rfftw_one(rp, big_samples, temp_fft);
- rfftw_destroy_plan(rp);
- free(big_samples);
- for (i = 0; i < susp->length; i++) {
- setelement(result, i, cvflonum(temp_fft[i]));
- }
- free (temp_fft);
-*/
-
- }
- togo = MIN(togo, susp->length - susp->index);
-")
- (INNER-LOOP "output = samples[index++];")
- (CONSTANT "length" "samples" "array" "src")
- (TERMINATE COMPUTED)
- (FINALIZATION " free(susp->samples);
-")
-
-)
-
diff --git a/lib-src/libnyquist/tran/ifft.alg b/lib-src/libnyquist/tran/ifft.alg
deleted file mode 100644
index 8bb7690..0000000
--- a/lib-src/libnyquist/tran/ifft.alg
+++ /dev/null
@@ -1,203 +0,0 @@
-(IFFT-ALG
- (NAME "ifft")
- (ARGUMENTS ("time_type" "t0") ("rate_type" "sr")
- ("LVAL" "src") ("long" "stepsize")
- ("LVAL" "window"))
- (SUPPORT-FUNCTIONS "
-/* index: index into outbuf whree we get output samples
- * length: size of the frame, window, and outbuf; half size of samples
- * array: spectral frame goes here (why not a local var?)
- * window_len: size of window, should equal length
- * outbuf: real part of samples are multiplied by window and added to
- * outbuf (after shifting)
- * src: send :NEXT to this object to get next frame
- * stepsize: shift by this many and add each frame
- * samples: result of ifft goes here, real and imag
- * window: multiply samples by window if any
- *
- * IMPLEMENTATION NOTE:
- * The src argument is an XLisp object that returns either an
- * array of samples or NIL. The output of ifft is simply the
- * concatenation of the samples taken from the array. Later,
- * an ifft will be plugged in and this will return overlapped
- * adds of the ifft's.
- *
- * OVERLAP: stepsize must be less than or equal to the length
- * of real part of the transformed spectrum. A transform step
- * works like this:
- * (1) shift the output buffer by stepsize samples, filling
- * the end of the buffer with zeros
- * (2) get and transform an array of spectral coefficients
- * (3) multiply the result by a window
- * (4) add the result to the output buffer
- * (5) output the first stepsize samples of the buffer
- *
- * DATA FORMAT: the DC component goes in array elem 0
- * Cosine part is in elements 2*i-1
- * Sine part is in elements 2*i
- * Nyquist frequency is in element length-1
- */
-
-#include \"samples.h\"
-#include \"fftn.h\"
-
-table_type get_window_samples(LVAL window, sample_type **samples, long *len)
-{
- table_type result = NULL;
- if (soundp(window)) {
- sound_type window_sound = getsound(window);
- xlprot1(window); /* maybe not necessary */
- result = sound_to_table(window_sound);
- xlpop();
- *samples = result->samples;
- *len = (long) (result->length + 0.5);
- }
- return result;
-}
-")
-
- (SAMPLE-RATE "sr")
- (STATE
- ("long" "index" "stepsize") ; samples index
- ("long" "length" "0") ; samples length
- ("LVAL" "array" "NULL")
- ("long" "window_len" "0")
- ("sample_type *" "outbuf" "NULL")
- ("LVAL" "src" "src")
- ("long" "stepsize" "stepsize")
- ("sample_type *" "window" "NULL") ; window samples
- ("sample_type *" "samples" "NULL")
- ("table_type" "table"
- "get_window_samples(window, &susp->window, &susp->window_len)"))
-
- (OUTER-LOOP "
- if (susp->src == NULL) {
-out: togo = 0; /* indicate termination */
- break; /* we're done */
- }
- if (susp->index >= susp->stepsize) {
- long i;
- long half_i;
- long n;
- LVAL elem;
- susp->index = 0;
- susp->array =
- xleval(cons(s_send, cons(susp->src, consa(s_next))));
- if (susp->array == NULL) {
- susp->src = NULL;
- goto out;
- } else if (!vectorp(susp->array)) {
- xlerror(\"array expected\", susp->array);
- } else if (susp->samples == NULL) {
- /* assume arrays are all the same size as first one;
- now that we know the size, we just have to do this
- first allocation.
- */
- susp->length = getsize(susp->array);
- if (susp->length < 1)
- xlerror(\"array has no elements\", susp->array);
- if (susp->window && (susp->window_len != susp->length))
- xlerror(\"window size and spectrum size differ\",
- susp->array);
- susp->samples =
- (sample_type *) calloc(susp->length * 2,
- sizeof(sample_type));
- susp->outbuf = (sample_type *) calloc(susp->length,
- sizeof(sample_type));
- } else if (getsize(susp->array) != susp->length) {
- xlerror(\"arrays must all be the same length\", susp->array);
- }
-
- /* at this point, we have a new array to put samples */
- /* real part will be susp->samples[0:n-1], */
- /* im part in samples[n:2*n-1] */
- n = susp->length;
- elem = getelement(susp->array, 0);
- if (ntype(elem) != FLONUM) {
- xlerror(\"flonum expected\", elem);
- }
- susp->samples[0] = (sample_type) getflonum(elem);
- susp->samples[n] = 0;
- half_i = 0;
- for (i = 1; i < n - 1; i += 2) {
- half_i++;
- elem = getelement(susp->array, i);
- if (ntype(elem) != FLONUM) {
- xlerror(\"flonum expected\", elem);
- }
- susp->samples[half_i] = susp->samples[n - half_i] =
- (sample_type) (getflonum(elem) / 2.0);
-
- elem = getelement(susp->array, i + 1);
- if (ntype(elem) != FLONUM) {
- xlerror(\"flonum expected\", elem);
- }
- susp->samples[n + half_i] =
- -(susp->samples[2*n - half_i] =
- (sample_type) (getflonum(elem) / 2.0));
- }
- if (n % 2 == 0) {
- elem = getelement(susp->array, n - 1);
- if (ntype(elem) != FLONUM) {
- xlerror(\"flonum expected\", elem);
- }
- susp->samples[n / 2] = (sample_type) getflonum(elem);
- susp->samples[n + (n / 2)] = 0;
- }
- susp->array = NULL; /* free the array */
-
- /* here is where the IFFT and windowing should take place */
- fftnf(1, &n, susp->samples, susp->samples + n, -1, 1.0);
- if (susp->window) {
- n = susp->length;
- for (i = 0; i < n; i++) {
- susp->samples[i] *= susp->window[i];
- }
- }
-
- /* shift the outbuf */
- n = susp->length - susp->stepsize;
- for (i = 0; i < n; i++) {
- susp->outbuf[i] = susp->outbuf[i + susp->stepsize];
- }
-
- /* clear end of outbuf */
- for (i = n; i < susp->length; i++) {
- susp->outbuf[i] = 0;
- }
-
- /* add in the ifft result */
- n = susp->length;
- for (i = 0; i < n; i++) {
- susp->outbuf[i] += susp->samples[i];
- }
-/*
- temp_fft = (double *) malloc (susp->length * sizeof(double));
- if (temp_fft == 0) return;
- big_samples = (double *) malloc (susp->length * sizeof(double));
- if (big_samples == 0) return;
- for (i = 0; i < susp->length; i++) {
- big_samples[i] = (double) susp->samples[i];
- }
- rp = rfftw_create_plan(susp->length, FFTW_COMPLEX_TO_REAL, FFTW_ESTIMATE);
- rfftw_one(rp, big_samples, temp_fft);
- rfftw_destroy_plan(rp);
- free(big_samples);
- for (i = 0; i < susp->length; i++) {
- setelement(result, i, cvflonum(temp_fft[i]));
- }
- free (temp_fft);
-*/
- }
- togo = MIN(togo, susp->stepsize - susp->index);
-")
- (INNER-LOOP "output = outbuf[index++];")
- (CONSTANT "length" "samples" "array" "src" "window")
- (TERMINATE COMPUTED)
- (FINALIZATION " if (susp->samples) free(susp->samples);
- if (susp->table) table_unref(susp->table);
- if (susp->outbuf) free(susp->outbuf);
-")
-
-)
-
diff --git a/lib-src/libnyquist/tran/ifft.c b/lib-src/libnyquist/tran/ifft.c
deleted file mode 100644
index 62db76b..0000000
--- a/lib-src/libnyquist/tran/ifft.c
+++ /dev/null
@@ -1,305 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "ifft.h"
-
-void ifft_free();
-
-
-typedef struct ifft_susp_struct {
- snd_susp_node susp;
-
- long index;
- long length;
- LVAL array;
- long window_len;
- sample_type *outbuf;
- LVAL src;
- long stepsize;
- sample_type *window;
- sample_type *samples;
- table_type table;
-} ifft_susp_node, *ifft_susp_type;
-
-
-/* index: index into outbuf whree we get output samples
- * length: size of the frame, window, and outbuf; half size of samples
- * array: spectral frame goes here (why not a local var?)
- * window_len: size of window, should equal length
- * outbuf: real part of samples are multiplied by window and added to
- * outbuf (after shifting)
- * src: send :NEXT to this object to get next frame
- * stepsize: shift by this many and add each frame
- * samples: result of ifft goes here, real and imag
- * window: multiply samples by window if any
- *
- * IMPLEMENTATION NOTE:
- * The src argument is an XLisp object that returns either an
- * array of samples or NIL. The output of ifft is simply the
- * concatenation of the samples taken from the array. Later,
- * an ifft will be plugged in and this will return overlapped
- * adds of the ifft's.
- *
- * OVERLAP: stepsize must be less than or equal to the length
- * of real part of the transformed spectrum. A transform step
- * works like this:
- * (1) shift the output buffer by stepsize samples, filling
- * the end of the buffer with zeros
- * (2) get and transform an array of spectral coefficients
- * (3) multiply the result by a window
- * (4) add the result to the output buffer
- * (5) output the first stepsize samples of the buffer
- *
- * DATA FORMAT: the DC component goes in array elem 0
- * Cosine part is in elements 2*i-1
- * Sine part is in elements 2*i
- * Nyquist frequency is in element length-1
- */
-
-#include "samples.h"
-#include "fftn.h"
-
-table_type get_window_samples(LVAL window, sample_type **samples, long *len)
-{
- table_type result = NULL;
- if (soundp(window)) {
- sound_type window_sound = getsound(window);
- xlprot1(window); /* maybe not necessary */
- result = sound_to_table(window_sound);
- xlpop();
- *samples = result->samples;
- *len = (long) (result->length + 0.5);
- }
- return result;
-}
-
-
-void ifft__fetch(register ifft_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register long index_reg;
- register sample_type * outbuf_reg;
- falloc_sample_block(out, "ifft__fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
-
- if (susp->src == NULL) {
-out: togo = 0; /* indicate termination */
- break; /* we're done */
- }
- if (susp->index >= susp->stepsize) {
- long i;
- long half_i;
- int n;
- LVAL elem;
- susp->index = 0;
- susp->array =
- xleval(cons(s_send, cons(susp->src, consa(s_next))));
- if (susp->array == NULL) {
- susp->src = NULL;
- goto out;
- } else if (!vectorp(susp->array)) {
- xlerror("array expected", susp->array);
- } else if (susp->samples == NULL) {
- /* assume arrays are all the same size as first one;
- now that we know the size, we just have to do this
- first allocation.
- */
- susp->length = getsize(susp->array);
- if (susp->length < 1)
- xlerror("array has no elements", susp->array);
- if (susp->window && (susp->window_len != susp->length))
- xlerror("window size and spectrum size differ",
- susp->array);
- susp->samples =
- (sample_type *) calloc(susp->length * 2,
- sizeof(sample_type));
- susp->outbuf = (sample_type *) calloc(susp->length,
- sizeof(sample_type));
- } else if (getsize(susp->array) != susp->length) {
- xlerror("arrays must all be the same length", susp->array);
- }
-
- /* at this point, we have a new array to put samples */
- /* real part will be susp->samples[0:n-1], */
- /* im part in samples[n:2*n-1] */
- n = susp->length;
- elem = getelement(susp->array, 0);
- if (ntype(elem) != FLONUM) {
- xlerror("flonum expected", elem);
- }
- susp->samples[0] = (sample_type) getflonum(elem);
- susp->samples[n] = 0;
- half_i = 0;
- for (i = 1; i < n - 1; i += 2) {
- half_i++;
- elem = getelement(susp->array, i);
- if (ntype(elem) != FLONUM) {
- xlerror("flonum expected", elem);
- }
- susp->samples[half_i] = susp->samples[n - half_i] =
- (sample_type) (getflonum(elem) / 2.0);
-
- elem = getelement(susp->array, i + 1);
- if (ntype(elem) != FLONUM) {
- xlerror("flonum expected", elem);
- }
- susp->samples[n + half_i] =
- -(susp->samples[2*n - half_i] =
- (sample_type) (getflonum(elem) / 2.0));
- }
- if (n % 2 == 0) {
- elem = getelement(susp->array, n - 1);
- if (ntype(elem) != FLONUM) {
- xlerror("flonum expected", elem);
- }
- susp->samples[n / 2] = (sample_type) getflonum(elem);
- susp->samples[n + (n / 2)] = 0;
- }
- susp->array = NULL; /* free the array */
-
- /* here is where the IFFT and windowing should take place */
- fftnf(1, &n, susp->samples, susp->samples + n, -1, 1.0);
- if (susp->window) {
- n = susp->length;
- for (i = 0; i < n; i++) {
- susp->samples[i] *= susp->window[i];
- }
- }
-
- /* shift the outbuf */
- n = susp->length - susp->stepsize;
- for (i = 0; i < n; i++) {
- susp->outbuf[i] = susp->outbuf[i + susp->stepsize];
- }
-
- /* clear end of outbuf */
- for (i = n; i < susp->length; i++) {
- susp->outbuf[i] = 0;
- }
-
- /* add in the ifft result */
- n = susp->length;
- for (i = 0; i < n; i++) {
- susp->outbuf[i] += susp->samples[i];
- }
-/*
- temp_fft = (double *) malloc (susp->length * sizeof(double));
- if (temp_fft == 0) return;
- big_samples = (double *) malloc (susp->length * sizeof(double));
- if (big_samples == 0) return;
- for (i = 0; i < susp->length; i++) {
- big_samples[i] = (double) susp->samples[i];
- }
- rp = rfftw_create_plan(susp->length, FFTW_COMPLEX_TO_REAL, FFTW_ESTIMATE);
- rfftw_one(rp, big_samples, temp_fft);
- rfftw_destroy_plan(rp);
- free(big_samples);
- for (i = 0; i < susp->length; i++) {
- setelement(result, i, cvflonum(temp_fft[i]));
- }
- free (temp_fft);
-*/
- }
- togo = MIN(togo, susp->stepsize - susp->index);
-
- n = togo;
- index_reg = susp->index;
- outbuf_reg = susp->outbuf;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-*out_ptr_reg++ = outbuf_reg[index_reg++];;
- } while (--n); /* inner loop */
-
- susp->index = index_reg;
- susp->outbuf = outbuf_reg;
- out_ptr += togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
-} /* ifft__fetch */
-
-
-void ifft_mark(ifft_susp_type susp)
-{
- if (susp->src) mark(susp->src);
- if (susp->array) mark(susp->array);
-}
-
-
-void ifft_free(ifft_susp_type susp)
-{
- if (susp->samples) free(susp->samples);
- if (susp->table) table_unref(susp->table);
- if (susp->outbuf) free(susp->outbuf);
- ffree_generic(susp, sizeof(ifft_susp_node), "ifft_free");
-}
-
-
-void ifft_print_tree(ifft_susp_type susp, int n)
-{
-}
-
-
-sound_type snd_make_ifft(time_type t0, rate_type sr, LVAL src, long stepsize, LVAL window)
-{
- register ifft_susp_type susp;
- /* sr specified as input parameter */
- /* t0 specified as input parameter */
- sample_type scale_factor = 1.0F;
- falloc_generic(susp, ifft_susp_node, "snd_make_ifft");
- susp->index = stepsize;
- susp->length = 0;
- susp->array = NULL;
- susp->window_len = 0;
- susp->outbuf = NULL;
- susp->src = src;
- susp->stepsize = stepsize;
- susp->window = NULL;
- susp->samples = NULL;
- susp->table = get_window_samples(window, &susp->window, &susp->window_len);
- susp->susp.fetch = ifft__fetch;
-
- /* initialize susp state */
- susp->susp.free = ifft_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = ifft_mark;
- susp->susp.print_tree = ifft_print_tree;
- susp->susp.name = "ifft";
- susp->susp.log_stop_cnt = UNKNOWN;
- susp->susp.current = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_ifft(time_type t0, rate_type sr, LVAL src, long stepsize, LVAL window)
-{
- return snd_make_ifft(t0, sr, src, stepsize, window);
-}
diff --git a/lib-src/libnyquist/tran/ifft.h b/lib-src/libnyquist/tran/ifft.h
deleted file mode 100644
index 186cec6..0000000
--- a/lib-src/libnyquist/tran/ifft.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_ifft(time_type t0, rate_type sr, LVAL src, long stepsize, LVAL window);
-sound_type snd_ifft(time_type t0, rate_type sr, LVAL src, long stepsize, LVAL window);
- /* LISP: (snd-ifft ANYNUM ANYNUM ANY FIXNUM ANY) */
diff --git a/lib-src/libnyquist/tran/init.lsp b/lib-src/libnyquist/tran/init.lsp
deleted file mode 100644
index ac49ca1..0000000
--- a/lib-src/libnyquist/tran/init.lsp
+++ /dev/null
@@ -1,24 +0,0 @@
-(expand 50)
-
-(load "../runtime/xlinit.lsp")
-
-(load "../runtime/misc.lsp")
-
-;; set to T to get interpolation within inner loops
-(setf *INLINE-INTERPOLATION* nil)
-
-;; set to T to get ANSI headers and NIL to get antique headers
-(setf *ANSI* NIL)
-
-;; set to T to generate tracing code, NIL to disable tracing code
-(setf *WATCH* NIL)
-
-(load "translate")
-(load "writesusp")
-(load "writemake")
-(load "writetoss")
-(load "innerloop")
-
-(setf *gc-flag* t)
-
-(setf *watch* nil)
diff --git a/lib-src/libnyquist/tran/innerloop.lsp b/lib-src/libnyquist/tran/innerloop.lsp
deleted file mode 100644
index 0d98d01..0000000
--- a/lib-src/libnyquist/tran/innerloop.lsp
+++ /dev/null
@@ -1,307 +0,0 @@
-;; innerloop.lsp -- code to generate inner loops from specs
-
-;; the inner loop has a setup, a loop, and a cleanup
-;; in the setup, structure fields used in the inner loop are
-;; copied or "cached" into register variables
-;; in the inner loop, access expressions are substituted for
-;; variable names in the spec
-;; in the cleanup, resulting register variable "cache" is copied
-;; back into the structure fields
-
-
-(defun compute-inner-loop (alg inner-loop)
- (let ((interp (get-slot alg 'interpolation))
- (sound-names (get alg 'sound-names))
- (state-list (get-slot alg 'state))
- (step-function (get alg 'step-function))
- (maintain-list (get-slot alg 'maintain))
- (constant-list (get-slot alg 'constant))
- (force-into-register (get-slot alg 'force-into-register))
- (not-register (get-slot alg 'not-register))
- register-decl register-init register-cleanup new-state-list
- )
-
- ;; this loop computes and applies substitutions to the INNER-LOOP spec
-
- (setf inner-loop (substitute inner-loop "output" "*out_ptr_reg++" nil))
- (push "\tout_ptr_reg = out_ptr;\n" register-init)
- (push "\tout_ptr += togo;\n" register-cleanup)
-
- (dotimes (n (length interp))
- (let ((name (nth n sound-names))
- interpolate-samples
- (method (nth n interp))
- expression)
- (setf interpolate-samples
- (not (member (name-to-symbol name) step-function)))
-
- (cond ((eq method 'NONE)
- ;-----------------
- ; NONE:
- ; <expr> ::= *NAME_ptr_reg++
- ;-----------------
- (pushnew (format nil
- " register sample_block_values_type ~A_ptr_reg;~%" name)
- register-decl)
- (pushnew (format nil
- "\t~A_ptr_reg = susp->~A_ptr;~%" name name)
- register-init)
- (pushnew (format nil
- "\t/* using ~A_ptr_reg is a bad idea on RS/6000: */~
- ~%\tsusp->~A_ptr += togo;~%" name name name)
- register-cleanup)
-
- (setf expression (format nil "*~A_ptr_reg++" name)))
-
- ((eq method 'SCALE)
- ;-----------------
- ; SCALE
- ; <expr> ::= (NAME_scale_reg * *NAME_ptr_reg++)
- ;-----------------
- (pushnew (format nil
- " register sample_block_values_type ~A_ptr_reg;~%" name)
- register-decl)
- (pushnew (format nil
- " register sample_type ~A_scale_reg = susp->~A->scale;~%" name name)
- register-decl)
- (pushnew (format nil
- "\t~A_ptr_reg = susp->~A_ptr;~%" name name)
- register-init)
- (pushnew (format nil
- "\t/* using ~A_ptr_reg is a bad idea on RS/6000: */~
- ~%\tsusp->~A_ptr += togo;~%" name name name)
- register-cleanup)
- (setf expression (format nil
- "(~A_scale_reg * *~A_ptr_reg++)" name name)))
-
- ((and interpolate-samples (eq method 'INTERP))
- ;-----------------
- ; INTERP:
- ; <expr> ::= susp->NAME_x1_sample * (1 -
- ; susp->NAME_pHaSe +
- ; susp->NAME_x2_sample * susp->NAME_pHaSe)
- ;-----------------
- (pushnew (format nil
- " register sample_type ~A_x1_sample_reg;~%" name)
- register-decl)
- (pushnew (format nil
- " register double ~A_pHaSe_ReG;~%" name)
- register-decl)
- (pushnew (format nil
- " register double ~A_pHaSe_iNcR_rEg = susp->~A_pHaSe_iNcR;~%" name name)
- register-decl)
-
- (pushnew (format nil
- "\t~A_x1_sample_reg = susp->~A_x1_sample;~%" name name)
- register-init)
- (pushnew (format nil
- "\t~A_pHaSe_ReG = susp->~A_pHaSe;~%" name name)
- register-init)
-
- (pushnew (format nil
- "\tsusp->~A_x1_sample = ~A_x1_sample_reg;~%" name name)
- register-cleanup)
- (pushnew (format nil
- "\tsusp->~A_pHaSe = ~A_pHaSe_ReG;~%" name name)
- register-cleanup)
-
- (setf expression (format nil
- "\n\t\t(~A_x1_sample_reg * (1 - ~A_pHaSe_ReG) + ~A_x2_sample * ~A_pHaSe_ReG)"
- name name name name)))
-
- ((eq method 'INTERP)
- ;-----------------
- ; STEP FUNCTION:
- ; <expr> ::= NAME_x1_sample_reg
- ;-----------------
- (pushnew (format nil
- " register sample_type ~A_x1_sample_reg;~%" name)
- register-decl)
- (pushnew (format nil
- " register double ~A_pHaSe_ReG;~%" name)
- register-decl)
- (pushnew (format nil
- " register double ~A_pHaSe_iNcR_rEg = susp->~A_pHaSe_iNcR;~%" name name)
- register-decl)
-
- (pushnew (format nil
- "\t~A_x1_sample_reg = susp->~A_x1_sample;~%" name name)
- register-init)
- (pushnew (format nil
- "\t~A_pHaSe_ReG = susp->~A_pHaSe;~%" name name)
- register-init)
-
- (pushnew (format nil
- "\tsusp->~A_x1_sample = ~A_x1_sample_reg;~%" name name)
- register-cleanup)
- (pushnew (format nil
- "\tsusp->~A_pHaSe = ~A_pHaSe_ReG;~%" name name)
- register-cleanup)
-
- (setf expression (format nil "~A_x1_sample_reg" name)))
- ((and interpolate-samples (eq method 'RAMP))
- ;-----------------
- ; RAMP:
- ; <expr> ::= NAME_val
- ;-----------------
- (setf expression (format nil "~A_val" name)))
- ((eq method 'RAMP)
- ;-----------------
- ; RAMP:
- ; <expr> ::= NAME_val
- ;-----------------
- ; this doesn't seem to be used -RBD 7/97
- ;(pushnew (format nil
- ;" register sample_type ~A_x1_sample_reg;~%" name)
- ;register-decl)
- (setf expression (format nil "~A_val" name))))
-
- (setf inner-loop (substitute inner-loop name expression nil))))
-
- ;; determine the members of state-list that are actually referenced in
- ;; the inner loop. If not, don't cache the state in registers before
- ;; starting the loop.
- (dolist (state state-list)
- (let ((var-name (cadr state)))
- (cond ((and (or (string-search var-name inner-loop)
- (member (name-to-symbol var-name) force-into-register))
- (not (member (name-to-symbol var-name) not-register)))
- (push state new-state-list)))))
-
- ;; this loop applies substitutions for state variables:
- ;; the specified state variable name is the cadr of state-list element
- ;; the state variable <var> is replaced in inner-loop by <var>_reg
-
- (dolist (state new-state-list)
- (let ((var-name (cadr state))
- maintain)
- (pushnew (format nil " register ~A ~A_reg;~%" (car state) var-name)
- register-decl)
- (pushnew (format nil "\t~A_reg = susp->~A;~%" var-name var-name)
- register-init)
- (setf maintain (find-maintain-stmt var-name maintain-list))
-; (display "find-maintain-stmt returned:" maintain)
- (cond (maintain
- (pushnew (format nil "\t~A;~%" maintain) register-cleanup))
- ((not (is-constant-in-inner-loop var-name constant-list))
- ;(pushnew (format nil "var-name: ~A constant-list: ~A~%" var-name constant-list)
- ; register-cleanup)
- (pushnew (format nil "\tsusp->~A = ~A_reg;~%" var-name var-name)
- register-cleanup)))
- (setf inner-loop (substitute inner-loop var-name
- (format nil "~A_reg" var-name) t))))
-
- ;; if the user-written code has a break statement or if the interpolation
- ;; type is INTERP, we need to write out "togo -= n;" to get an accurate
- ;; count of how many times we went through the loop. Otherwise don't do it
- ;; because it makes n a live variable and affects compiler optimization.
- (cond ((or (member 'INTERP interp)
- (string-search "break" inner-loop))
- (push "\ttogo -= n;\n" register-cleanup)))
-
- (put-slot alg inner-loop 'inner-loop-stmts)
- (put-slot alg register-decl 'register-decl)
- (put-slot alg register-init 'register-init)
- (put-slot alg register-cleanup 'register-cleanup)
-
- ;-----------------
- ; WATCH:
- ;
- ; show_samples(1,s1,s1_ptr - s1->samples)
- ;
- ; Note: this is not right because we need to have the correct
- ; parameter for s1, but that is part of the s1_ptr++ computation
- ; so I don't know where to get it...
- ;-----------------
-; (if *WATCH*
-; (format stream "\t show_samples(1,s1,s1_ptr - s1_samples);~%")
-; )
- ))
-
-
-;; find-maintain-list -- find an assignment for variable in a MAINTAIN spec
-;;
-(defun find-maintain-stmt (var specs)
- (let ((spec (assoc var specs :test #'equal)))
- (if spec (cadr spec))))
-
-
-;; is-constant-in-inner-loop -- see if var is in constant-list
-;;
-(defun is-constant-in-inner-loop (var constant-list)
- (member var constant-list :test #'equal))
-
-
-;; pushnew -- pushes string onto list unless already there
-;;
-(defmacro pushnew (string var)
- `(if (not (member ,string ,var :test #'equal))
- (push ,string ,var)))
-
-
-;;**********
-;; substitute -- string substitution
-;; Inputs:
-;; s - input string
-;; pat - pattern
-;; repl - replacement for pattern
-;; all - T or NIL (T : replace everywhere; NIL : replace once)
-;;
-;;**********
-
-(defun substitute (s pat repl all)
-; (display "substitute" s pat repl)
- (let ((p (position s pat))
- (l (length pat)))
- (cond (p
- (strcat (subseq s 0 p) repl
- ;; the remainder of the string depends on all. If T, then
- ;; use recursion to continue substitutions:
- (cond (all (substitute (subseq s (+ p l)) pat repl all))
- (t (subseq s (+ p l))))))
- (t s))))
-
-
-(defun write-inner-loop (alg stream)
- (let ((interp (get-slot alg 'interpolation))
- (step-function (get alg 'step-function))
- (sound-names (get alg 'sound-names))
- )
-
- (format stream "~A;~%"
- (get-slot alg 'inner-loop-stmts))
-
- (dotimes (n (length interp))
- (let ((name (nth n sound-names))
- interpolate-samples
- (method (nth n interp)))
- (setf interpolate-samples
- (not (member (name-to-symbol name) step-function)))
-
- (cond ((eq method 'INTERP)
- ;-----------------
- ; INTERP:
- ;
- ; NAME_pHaSe_ReG += NAME_pHaSe_iNcR_rEg;
- ;-----------------
- (format stream "\t ~A_pHaSe_ReG += ~A_pHaSe_iNcR_rEg;~%"
- name name))
-
- ((and interpolate-samples (eq method 'RAMP))
- ;-----------------
- ; RAMP:
- ; NAME_val += NAME_DeLtA
- ;-----------------
- (format stream "\t ~A_val += ~A_DeLtA;~%" name name)))))
-
- ;----------------------------
- ; WATCH:
- ; show_samples(0,out,out_ptr - 1 - out->samples);
- ;----------------------------
-
-; (if *WATCH*
-; (format stream "\t show_samples(0,out,out_ptr - 1 - out->samples);~%"))
- ;----------------------------
- ; } while (--n); /* inner loop */
- ;----------------------------
- (format stream "\t} while (--n); /* inner loop */~%~%")))
diff --git a/lib-src/libnyquist/tran/integrate.alg b/lib-src/libnyquist/tran/integrate.alg
deleted file mode 100644
index 34b4ecb..0000000
--- a/lib-src/libnyquist/tran/integrate.alg
+++ /dev/null
@@ -1,12 +0,0 @@
-(INTEGRATE-ALG
-(NAME "integrate")
-(ARGUMENTS ("sound_type" "input"))
-(START (MIN input))
-(TERMINATE (MIN input))
-(LINEAR input)
-(LOGICAL-STOP (MIN input))
-(STATE ("double" "integral" "0.0;
- scale_factor = (sample_type) (scale_factor / input->sr)"))
-(INNER-LOOP "output = (sample_type) integral; integral += input;")
-)
-
diff --git a/lib-src/libnyquist/tran/integrate.c b/lib-src/libnyquist/tran/integrate.c
deleted file mode 100644
index c6ad4e6..0000000
--- a/lib-src/libnyquist/tran/integrate.c
+++ /dev/null
@@ -1,211 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "integrate.h"
-
-void integrate_free();
-
-
-typedef struct integrate_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type input;
- long input_cnt;
- sample_block_values_type input_ptr;
-
- double integral;
-} integrate_susp_node, *integrate_susp_type;
-
-
-void integrate_n_fetch(register integrate_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double integral_reg;
- register sample_block_values_type input_ptr_reg;
- falloc_sample_block(out, "integrate_n_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the input input sample block: */
- susp_check_term_log_samples(input, input_ptr, input_cnt);
- togo = MIN(togo, susp->input_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- integral_reg = susp->integral;
- input_ptr_reg = susp->input_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-*out_ptr_reg++ = (sample_type) integral_reg; integral_reg += *input_ptr_reg++;;
- } while (--n); /* inner loop */
-
- susp->integral = integral_reg;
- /* using input_ptr_reg is a bad idea on RS/6000: */
- susp->input_ptr += togo;
- out_ptr += togo;
- susp_took(input_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* integrate_n_fetch */
-
-
-void integrate_toss_fetch(susp, snd_list)
- register integrate_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from input up to final_time for this block of zeros */
- while ((round((final_time - susp->input->t0) * susp->input->sr)) >=
- susp->input->current)
- susp_get_samples(input, input_ptr, input_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->input->t0) * susp->input->sr -
- (susp->input->current - susp->input_cnt));
- susp->input_ptr += n;
- susp_took(input_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void integrate_mark(integrate_susp_type susp)
-{
- sound_xlmark(susp->input);
-}
-
-
-void integrate_free(integrate_susp_type susp)
-{
- sound_unref(susp->input);
- ffree_generic(susp, sizeof(integrate_susp_node), "integrate_free");
-}
-
-
-void integrate_print_tree(integrate_susp_type susp, int n)
-{
- indent(n);
- stdputstr("input:");
- sound_print_tree_1(susp->input, n);
-}
-
-
-sound_type snd_make_integrate(sound_type input)
-{
- register integrate_susp_type susp;
- rate_type sr = input->sr;
- time_type t0 = input->t0;
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- /* combine scale factors of linear inputs (INPUT) */
- scale_factor *= input->scale;
- input->scale = 1.0F;
-
- /* try to push scale_factor back to a low sr input */
- if (input->sr < sr) { input->scale = scale_factor; scale_factor = 1.0F; }
-
- falloc_generic(susp, integrate_susp_node, "snd_make_integrate");
- susp->integral = 0.0;
- scale_factor = (sample_type) (scale_factor / input->sr);
- susp->susp.fetch = integrate_n_fetch;
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < input->t0) sound_prepend_zeros(input, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(input->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = integrate_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = integrate_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = integrate_mark;
- susp->susp.print_tree = integrate_print_tree;
- susp->susp.name = "integrate";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(input);
- susp->susp.current = 0;
- susp->input = input;
- susp->input_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_integrate(sound_type input)
-{
- sound_type input_copy = sound_copy(input);
- return snd_make_integrate(input_copy);
-}
diff --git a/lib-src/libnyquist/tran/integrate.h b/lib-src/libnyquist/tran/integrate.h
deleted file mode 100644
index 33ecbbc..0000000
--- a/lib-src/libnyquist/tran/integrate.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_integrate(sound_type input);
-sound_type snd_integrate(sound_type input);
- /* LISP: (snd-integrate SOUND) */
diff --git a/lib-src/libnyquist/tran/log.alg b/lib-src/libnyquist/tran/log.alg
deleted file mode 100644
index b45c6bd..0000000
--- a/lib-src/libnyquist/tran/log.alg
+++ /dev/null
@@ -1,9 +0,0 @@
-(LOG-ALG
- (NAME "log")
- (ARGUMENTS ("sound_type" "input"))
- (ALWAYS-SCALE input)
- (START (MIN input))
- (INNER-LOOP "output = (sample_type) log(input)")
- (TERMINATE (MIN input))
- (LOGICAL-STOP (MIN input))
-)
diff --git a/lib-src/libnyquist/tran/log.c b/lib-src/libnyquist/tran/log.c
deleted file mode 100644
index e9b3d1d..0000000
--- a/lib-src/libnyquist/tran/log.c
+++ /dev/null
@@ -1,198 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "log.h"
-
-void log_free();
-
-
-typedef struct log_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type input;
- long input_cnt;
- sample_block_values_type input_ptr;
-} log_susp_node, *log_susp_type;
-
-
-void log_s_fetch(register log_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register sample_type input_scale_reg = susp->input->scale;
- register sample_block_values_type input_ptr_reg;
- falloc_sample_block(out, "log_s_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the input input sample block: */
- susp_check_term_log_samples(input, input_ptr, input_cnt);
- togo = MIN(togo, susp->input_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- input_ptr_reg = susp->input_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-*out_ptr_reg++ = (sample_type) log((input_scale_reg * *input_ptr_reg++));
- } while (--n); /* inner loop */
-
- /* using input_ptr_reg is a bad idea on RS/6000: */
- susp->input_ptr += togo;
- out_ptr += togo;
- susp_took(input_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* log_s_fetch */
-
-
-void log_toss_fetch(susp, snd_list)
- register log_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from input up to final_time for this block of zeros */
- while ((round((final_time - susp->input->t0) * susp->input->sr)) >=
- susp->input->current)
- susp_get_samples(input, input_ptr, input_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->input->t0) * susp->input->sr -
- (susp->input->current - susp->input_cnt));
- susp->input_ptr += n;
- susp_took(input_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void log_mark(log_susp_type susp)
-{
- sound_xlmark(susp->input);
-}
-
-
-void log_free(log_susp_type susp)
-{
- sound_unref(susp->input);
- ffree_generic(susp, sizeof(log_susp_node), "log_free");
-}
-
-
-void log_print_tree(log_susp_type susp, int n)
-{
- indent(n);
- stdputstr("input:");
- sound_print_tree_1(susp->input, n);
-}
-
-
-sound_type snd_make_log(sound_type input)
-{
- register log_susp_type susp;
- rate_type sr = input->sr;
- time_type t0 = input->t0;
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- falloc_generic(susp, log_susp_node, "snd_make_log");
- susp->susp.fetch = log_s_fetch;
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < input->t0) sound_prepend_zeros(input, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(input->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = log_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = log_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = log_mark;
- susp->susp.print_tree = log_print_tree;
- susp->susp.name = "log";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(input);
- susp->susp.current = 0;
- susp->input = input;
- susp->input_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_log(sound_type input)
-{
- sound_type input_copy = sound_copy(input);
- return snd_make_log(input_copy);
-}
diff --git a/lib-src/libnyquist/tran/log.h b/lib-src/libnyquist/tran/log.h
deleted file mode 100644
index 141a0ac..0000000
--- a/lib-src/libnyquist/tran/log.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_log(sound_type input);
-sound_type snd_log(sound_type input);
- /* LISP: (snd-log SOUND) */
diff --git a/lib-src/libnyquist/tran/maxv.alg b/lib-src/libnyquist/tran/maxv.alg
deleted file mode 100644
index d800921..0000000
--- a/lib-src/libnyquist/tran/maxv.alg
+++ /dev/null
@@ -1,11 +0,0 @@
-(MAXV-ALG
- (NAME "maxv")
- (ARGUMENTS ("sound_type" "s1") ("sound_type" "s2"))
- (ALWAYS-SCALE s1 s2)
- (START (MAX s1 s2))
- (INNER-LOOP "double x1 = s1;
- double x2 = s2;
- output = (sample_type) (x1 > x2 ? x1 : x2)")
- (TERMINATE (MIN s1 s2))
- (LOGICAL-STOP (MIN s1 s2))
-)
diff --git a/lib-src/libnyquist/tran/maxv.c b/lib-src/libnyquist/tran/maxv.c
deleted file mode 100644
index a05e2f5..0000000
--- a/lib-src/libnyquist/tran/maxv.c
+++ /dev/null
@@ -1,235 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "maxv.h"
-
-void maxv_free();
-
-
-typedef struct maxv_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type s1;
- long s1_cnt;
- sample_block_values_type s1_ptr;
- sound_type s2;
- long s2_cnt;
- sample_block_values_type s2_ptr;
-} maxv_susp_node, *maxv_susp_type;
-
-
-void maxv_ss_fetch(register maxv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register sample_type s2_scale_reg = susp->s2->scale;
- register sample_block_values_type s2_ptr_reg;
- register sample_type s1_scale_reg = susp->s1->scale;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "maxv_ss_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past the s2 input sample block: */
- susp_check_term_log_samples(s2, s2_ptr, s2_cnt);
- togo = MIN(togo, susp->s2_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- s2_ptr_reg = susp->s2_ptr;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-double x1 = (s1_scale_reg * *s1_ptr_reg++);
- double x2 = (s2_scale_reg * *s2_ptr_reg++);
- *out_ptr_reg++ = (sample_type) (x1 > x2 ? x1 : x2);
- } while (--n); /* inner loop */
-
- /* using s2_ptr_reg is a bad idea on RS/6000: */
- susp->s2_ptr += togo;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp_took(s2_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* maxv_ss_fetch */
-
-
-void maxv_toss_fetch(susp, snd_list)
- register maxv_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from s1 up to final_time for this block of zeros */
- while ((round((final_time - susp->s1->t0) * susp->s1->sr)) >=
- susp->s1->current)
- susp_get_samples(s1, s1_ptr, s1_cnt);
- /* fetch samples from s2 up to final_time for this block of zeros */
- while ((round((final_time - susp->s2->t0) * susp->s2->sr)) >=
- susp->s2->current)
- susp_get_samples(s2, s2_ptr, s2_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->s1->t0) * susp->s1->sr -
- (susp->s1->current - susp->s1_cnt));
- susp->s1_ptr += n;
- susp_took(s1_cnt, n);
- n = round((final_time - susp->s2->t0) * susp->s2->sr -
- (susp->s2->current - susp->s2_cnt));
- susp->s2_ptr += n;
- susp_took(s2_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void maxv_mark(maxv_susp_type susp)
-{
- sound_xlmark(susp->s1);
- sound_xlmark(susp->s2);
-}
-
-
-void maxv_free(maxv_susp_type susp)
-{
- sound_unref(susp->s1);
- sound_unref(susp->s2);
- ffree_generic(susp, sizeof(maxv_susp_node), "maxv_free");
-}
-
-
-void maxv_print_tree(maxv_susp_type susp, int n)
-{
- indent(n);
- stdputstr("s1:");
- sound_print_tree_1(susp->s1, n);
-
- indent(n);
- stdputstr("s2:");
- sound_print_tree_1(susp->s2, n);
-}
-
-
-sound_type snd_make_maxv(sound_type s1, sound_type s2)
-{
- register maxv_susp_type susp;
- rate_type sr = MAX(s1->sr, s2->sr);
- time_type t0 = MAX(s1->t0, s2->t0);
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- long lsc;
- falloc_generic(susp, maxv_susp_node, "snd_make_maxv");
- susp->susp.fetch = maxv_ss_fetch;
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < s1->t0) sound_prepend_zeros(s1, t0);
- if (t0 < s2->t0) sound_prepend_zeros(s2, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(s1->t0, MIN(s2->t0, t0));
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = maxv_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = maxv_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = maxv_mark;
- susp->susp.print_tree = maxv_print_tree;
- susp->susp.name = "maxv";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(s1);
- lsc = logical_stop_cnt_cvt(s2);
- if (susp->susp.log_stop_cnt > lsc)
- susp->susp.log_stop_cnt = lsc;
- susp->susp.current = 0;
- susp->s1 = s1;
- susp->s1_cnt = 0;
- susp->s2 = s2;
- susp->s2_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_maxv(sound_type s1, sound_type s2)
-{
- sound_type s1_copy = sound_copy(s1);
- sound_type s2_copy = sound_copy(s2);
- return snd_make_maxv(s1_copy, s2_copy);
-}
diff --git a/lib-src/libnyquist/tran/maxv.h b/lib-src/libnyquist/tran/maxv.h
deleted file mode 100644
index 327b80a..0000000
--- a/lib-src/libnyquist/tran/maxv.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_maxv(sound_type s1, sound_type s2);
-sound_type snd_maxv(sound_type s1, sound_type s2);
- /* LISP: (snd-maxv SOUND SOUND) */
diff --git a/lib-src/libnyquist/tran/meqb.c b/lib-src/libnyquist/tran/meqb.c
deleted file mode 100644
index e69de29..0000000
diff --git a/lib-src/libnyquist/tran/meqb.h b/lib-src/libnyquist/tran/meqb.h
deleted file mode 100644
index e69de29..0000000
diff --git a/lib-src/libnyquist/tran/offset.alg b/lib-src/libnyquist/tran/offset.alg
deleted file mode 100644
index 316628e..0000000
--- a/lib-src/libnyquist/tran/offset.alg
+++ /dev/null
@@ -1,11 +0,0 @@
-(SCALE-ALG
- (NAME "offset")
- (ARGUMENTS ("sound_type" "s1") ("double" "offset"))
- (STATE ("sample_type" "offset" "(sample_type) offset"))
- (CONSTANT "offset")
- (START (MIN s1))
- (INNER-LOOP "output = s1 + offset")
- (TERMINATE (MIN s1))
- (LOGICAL-STOP (MIN s1))
-)
-
diff --git a/lib-src/libnyquist/tran/offset.c b/lib-src/libnyquist/tran/offset.c
deleted file mode 100644
index d6b24a4..0000000
--- a/lib-src/libnyquist/tran/offset.c
+++ /dev/null
@@ -1,299 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "offset.h"
-
-void offset_free();
-
-
-typedef struct offset_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type s1;
- long s1_cnt;
- sample_block_values_type s1_ptr;
-
- sample_type offset;
-} offset_susp_node, *offset_susp_type;
-
-
-void offset_n_fetch(register offset_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register sample_type offset_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "offset_n_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- offset_reg = susp->offset;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-*out_ptr_reg++ = *s1_ptr_reg++ + offset_reg;
- } while (--n); /* inner loop */
-
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* offset_n_fetch */
-
-
-void offset_s_fetch(register offset_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register sample_type offset_reg;
- register sample_type s1_scale_reg = susp->s1->scale;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "offset_s_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- offset_reg = susp->offset;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-*out_ptr_reg++ = (s1_scale_reg * *s1_ptr_reg++) + offset_reg;
- } while (--n); /* inner loop */
-
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* offset_s_fetch */
-
-
-void offset_toss_fetch(susp, snd_list)
- register offset_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from s1 up to final_time for this block of zeros */
- while ((round((final_time - susp->s1->t0) * susp->s1->sr)) >=
- susp->s1->current)
- susp_get_samples(s1, s1_ptr, s1_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->s1->t0) * susp->s1->sr -
- (susp->s1->current - susp->s1_cnt));
- susp->s1_ptr += n;
- susp_took(s1_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void offset_mark(offset_susp_type susp)
-{
- sound_xlmark(susp->s1);
-}
-
-
-void offset_free(offset_susp_type susp)
-{
- sound_unref(susp->s1);
- ffree_generic(susp, sizeof(offset_susp_node), "offset_free");
-}
-
-
-void offset_print_tree(offset_susp_type susp, int n)
-{
- indent(n);
- stdputstr("s1:");
- sound_print_tree_1(susp->s1, n);
-}
-
-
-sound_type snd_make_offset(sound_type s1, double offset)
-{
- register offset_susp_type susp;
- rate_type sr = s1->sr;
- time_type t0 = s1->t0;
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- falloc_generic(susp, offset_susp_node, "snd_make_offset");
- susp->offset = (sample_type) offset;
-
- /* select a susp fn based on sample rates */
- interp_desc = (interp_desc << 2) + interp_style(s1, sr);
- switch (interp_desc) {
- case INTERP_n: susp->susp.fetch = offset_n_fetch; break;
- case INTERP_s: susp->susp.fetch = offset_s_fetch; break;
- default: snd_badsr(); break;
- }
-
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < s1->t0) sound_prepend_zeros(s1, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(s1->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = offset_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = offset_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = offset_mark;
- susp->susp.print_tree = offset_print_tree;
- susp->susp.name = "offset";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(s1);
- susp->susp.current = 0;
- susp->s1 = s1;
- susp->s1_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_offset(sound_type s1, double offset)
-{
- sound_type s1_copy = sound_copy(s1);
- return snd_make_offset(s1_copy, offset);
-}
diff --git a/lib-src/libnyquist/tran/offset.h b/lib-src/libnyquist/tran/offset.h
deleted file mode 100644
index 5b08433..0000000
--- a/lib-src/libnyquist/tran/offset.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_offset(sound_type s1, double offset);
-sound_type snd_offset(sound_type s1, double offset);
- /* LISP: (snd-offset SOUND ANYNUM) */
diff --git a/lib-src/libnyquist/tran/oneshot.alg b/lib-src/libnyquist/tran/oneshot.alg
deleted file mode 100644
index e01517f..0000000
--- a/lib-src/libnyquist/tran/oneshot.alg
+++ /dev/null
@@ -1,15 +0,0 @@
-(ONESHOT-ALG
- (NAME "oneshot")
- (ARGUMENTS ("sound_type" "input") ("double" "level") ("double" "ontime"))
- (INTERNAL-SCALING input) ; scale factor handled in level
- (STATE ("double" "lev" "level * input->scale")
- ("long" "oncount" "round(ontime * input->sr)")
- ("long" "cnt" "0"))
- (START (MIN input))
- (INNER-LOOP "double x = input;
- if (x > lev) cnt = oncount;
- cnt--;
- output = (cnt >= 0 ? 1.0F : 0.0F);")
- (TERMINATE (MIN input))
- (LOGICAL-STOP (MIN input))
-)
diff --git a/lib-src/libnyquist/tran/oneshot.c b/lib-src/libnyquist/tran/oneshot.c
deleted file mode 100644
index 57cc97e..0000000
--- a/lib-src/libnyquist/tran/oneshot.c
+++ /dev/null
@@ -1,216 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "oneshot.h"
-
-void oneshot_free();
-
-
-typedef struct oneshot_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type input;
- long input_cnt;
- sample_block_values_type input_ptr;
-
- double lev;
- long oncount;
- long cnt;
-} oneshot_susp_node, *oneshot_susp_type;
-
-
-void oneshot_n_fetch(register oneshot_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double lev_reg;
- register long oncount_reg;
- register long cnt_reg;
- register sample_block_values_type input_ptr_reg;
- falloc_sample_block(out, "oneshot_n_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the input input sample block: */
- susp_check_term_log_samples(input, input_ptr, input_cnt);
- togo = MIN(togo, susp->input_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- lev_reg = susp->lev;
- oncount_reg = susp->oncount;
- cnt_reg = susp->cnt;
- input_ptr_reg = susp->input_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-double x = *input_ptr_reg++;
- if (x > lev_reg) cnt_reg = oncount_reg;
- cnt_reg--;
- *out_ptr_reg++ = (cnt_reg >= 0 ? 1.0F : 0.0F);;
- } while (--n); /* inner loop */
-
- susp->lev = lev_reg;
- susp->oncount = oncount_reg;
- susp->cnt = cnt_reg;
- /* using input_ptr_reg is a bad idea on RS/6000: */
- susp->input_ptr += togo;
- out_ptr += togo;
- susp_took(input_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* oneshot_n_fetch */
-
-
-void oneshot_toss_fetch(susp, snd_list)
- register oneshot_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from input up to final_time for this block of zeros */
- while ((round((final_time - susp->input->t0) * susp->input->sr)) >=
- susp->input->current)
- susp_get_samples(input, input_ptr, input_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->input->t0) * susp->input->sr -
- (susp->input->current - susp->input_cnt));
- susp->input_ptr += n;
- susp_took(input_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void oneshot_mark(oneshot_susp_type susp)
-{
- sound_xlmark(susp->input);
-}
-
-
-void oneshot_free(oneshot_susp_type susp)
-{
- sound_unref(susp->input);
- ffree_generic(susp, sizeof(oneshot_susp_node), "oneshot_free");
-}
-
-
-void oneshot_print_tree(oneshot_susp_type susp, int n)
-{
- indent(n);
- stdputstr("input:");
- sound_print_tree_1(susp->input, n);
-}
-
-
-sound_type snd_make_oneshot(sound_type input, double level, double ontime)
-{
- register oneshot_susp_type susp;
- rate_type sr = input->sr;
- time_type t0 = input->t0;
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- falloc_generic(susp, oneshot_susp_node, "snd_make_oneshot");
- susp->lev = level * input->scale;
- susp->oncount = round(ontime * input->sr);
- susp->cnt = 0;
- susp->susp.fetch = oneshot_n_fetch;
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < input->t0) sound_prepend_zeros(input, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(input->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = oneshot_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = oneshot_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = oneshot_mark;
- susp->susp.print_tree = oneshot_print_tree;
- susp->susp.name = "oneshot";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(input);
- susp->susp.current = 0;
- susp->input = input;
- susp->input_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_oneshot(sound_type input, double level, double ontime)
-{
- sound_type input_copy = sound_copy(input);
- return snd_make_oneshot(input_copy, level, ontime);
-}
diff --git a/lib-src/libnyquist/tran/oneshot.h b/lib-src/libnyquist/tran/oneshot.h
deleted file mode 100644
index 9a13225..0000000
--- a/lib-src/libnyquist/tran/oneshot.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_oneshot(sound_type input, double level, double ontime);
-sound_type snd_oneshot(sound_type input, double level, double ontime);
- /* LISP: (snd-oneshot SOUND ANYNUM ANYNUM) */
diff --git a/lib-src/libnyquist/tran/osc.alg b/lib-src/libnyquist/tran/osc.alg
deleted file mode 100644
index 3705098..0000000
--- a/lib-src/libnyquist/tran/osc.alg
+++ /dev/null
@@ -1,31 +0,0 @@
-(OSC-ALG
-(NAME "osc")
-(ARGUMENTS ("sound_type" "input") ("double" "step") ("rate_type" "sr")
- ("double" "hz") ("time_type" "t0") ("time_type" "d")
- ("double" "phase"))
-(TABLE "input")
-(NOT-IN-INNER-LOOP "input")
-(STATE
- ("double" "ph_incr" "0")
- ("table_type" "the_table" "sound_to_table(input)")
- ("sample_type *" "table_ptr" "susp->the_table->samples")
- ("double" "table_len" "susp->the_table->length")
- ("double" "phase" "compute_phase(phase, step, (long) susp->table_len,
- input->sr, sr, hz, &susp->ph_incr)") )
-; "((hz * susp->table_len) / sr)")
-(TERMINATE (AFTER "d"))
-(INNER-LOOP "
- long table_index = (long) phase;
- double x1 = table_ptr[table_index];
- output = (sample_type) (x1 + (phase - table_index) *
- (table_ptr[table_index + 1] - x1));
- phase += ph_incr;
- while (phase >= table_len) phase -= table_len;
-")
-(CONSTANT "ph_incr" "table_len" "table_ptr")
-
-(SAMPLE-RATE "sr")
-(FINALIZATION " table_unref(susp->the_table);
-")
-)
-
diff --git a/lib-src/libnyquist/tran/osc.c b/lib-src/libnyquist/tran/osc.c
deleted file mode 100644
index c2e7ce5..0000000
--- a/lib-src/libnyquist/tran/osc.c
+++ /dev/null
@@ -1,133 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "osc.h"
-
-void osc_free();
-
-
-typedef struct osc_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
-
- double ph_incr;
- table_type the_table;
- sample_type *table_ptr;
- double table_len;
- double phase;
-} osc_susp_node, *osc_susp_type;
-
-
-void osc__fetch(register osc_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double ph_incr_reg;
- register sample_type * table_ptr_reg;
- register double table_len_reg;
- register double phase_reg;
- falloc_sample_block(out, "osc__fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
- n = togo;
- ph_incr_reg = susp->ph_incr;
- table_ptr_reg = susp->table_ptr;
- table_len_reg = susp->table_len;
- phase_reg = susp->phase;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-
- long table_index = (long) phase_reg;
- double x1 = table_ptr_reg[table_index];
- *out_ptr_reg++ = (sample_type) (x1 + (phase_reg - table_index) *
- (table_ptr_reg[table_index + 1] - x1));
- phase_reg += ph_incr_reg;
- while (phase_reg >= table_len_reg) phase_reg -= table_len_reg;
-;
- } while (--n); /* inner loop */
-
- susp->phase = phase_reg;
- out_ptr += togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
-} /* osc__fetch */
-
-
-void osc_free(osc_susp_type susp)
-{
- table_unref(susp->the_table);
- ffree_generic(susp, sizeof(osc_susp_node), "osc_free");
-}
-
-
-void osc_print_tree(osc_susp_type susp, int n)
-{
-}
-
-
-sound_type snd_make_osc(sound_type input, double step, rate_type sr, double hz, time_type t0, time_type d, double phase)
-{
- register osc_susp_type susp;
- /* sr specified as input parameter */
- /* t0 specified as input parameter */
- sample_type scale_factor = 1.0F;
- falloc_generic(susp, osc_susp_node, "snd_make_osc");
- susp->ph_incr = 0;
- susp->the_table = sound_to_table(input);
- susp->table_ptr = susp->the_table->samples;
- susp->table_len = susp->the_table->length;
- susp->phase = compute_phase(phase, step, (long) susp->table_len,
- input->sr, sr, hz, &susp->ph_incr);
- susp->susp.fetch = osc__fetch;
-
- susp->terminate_cnt = round((d) * sr);
- /* initialize susp state */
- susp->susp.free = osc_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = NULL;
- susp->susp.print_tree = osc_print_tree;
- susp->susp.name = "osc";
- susp->susp.log_stop_cnt = UNKNOWN;
- susp->susp.current = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_osc(sound_type input, double step, rate_type sr, double hz, time_type t0, time_type d, double phase)
-{
- return snd_make_osc(input, step, sr, hz, t0, d, phase);
-}
diff --git a/lib-src/libnyquist/tran/osc.h b/lib-src/libnyquist/tran/osc.h
deleted file mode 100644
index acf3a6e..0000000
--- a/lib-src/libnyquist/tran/osc.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_osc(sound_type input, double step, rate_type sr, double hz, time_type t0, time_type d, double phase);
-sound_type snd_osc(sound_type input, double step, rate_type sr, double hz, time_type t0, time_type d, double phase);
- /* LISP: (snd-osc SOUND ANYNUM ANYNUM ANYNUM ANYNUM ANYNUM ANYNUM) */
diff --git a/lib-src/libnyquist/tran/partial.alg b/lib-src/libnyquist/tran/partial.alg
deleted file mode 100644
index 45a1999..0000000
--- a/lib-src/libnyquist/tran/partial.alg
+++ /dev/null
@@ -1,20 +0,0 @@
-(PARTIAL-ALG
-(NAME "partial")
-(ARGUMENTS ("rate_type" "sr") ("double" "hz") ("sound_type" "env"))
-(SUPPORT-FUNCTIONS "
-#include \"sine.h\"
-")
-(START (MIN env))
-(STATE ("long" "phase" "0")
- ("long" "ph_incr" "round((hz * SINE_TABLE_LEN) * (1 << SINE_TABLE_SHIFT) / sr)"))
-(TERMINATE (MIN env))
-(LOGICAL-STOP (MIN env))
-(INNER-LOOP "output = sine_table[phase >> SINE_TABLE_SHIFT] * env;
- phase += ph_incr;
- phase &= SINE_TABLE_MASK;")
-(MAINTAIN ("phase"
- "susp->phase = (susp->phase + susp->ph_incr * togo) & SINE_TABLE_MASK"))
-(CONSTANT "ph_incr")
-(SAMPLE-RATE "sr")
-)
-
diff --git a/lib-src/libnyquist/tran/partial.c b/lib-src/libnyquist/tran/partial.c
deleted file mode 100644
index ae05c6c..0000000
--- a/lib-src/libnyquist/tran/partial.c
+++ /dev/null
@@ -1,314 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "partial.h"
-
-void partial_free();
-
-
-typedef struct partial_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type env;
- long env_cnt;
- sample_block_values_type env_ptr;
-
- long phase;
- long ph_incr;
-} partial_susp_node, *partial_susp_type;
-
-
-#include "sine.h"
-
-
-void partial_n_fetch(register partial_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register long phase_reg;
- register long ph_incr_reg;
- register sample_block_values_type env_ptr_reg;
- falloc_sample_block(out, "partial_n_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the env input sample block: */
- susp_check_term_log_samples(env, env_ptr, env_cnt);
- togo = MIN(togo, susp->env_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- phase_reg = susp->phase;
- ph_incr_reg = susp->ph_incr;
- env_ptr_reg = susp->env_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-*out_ptr_reg++ = sine_table[phase_reg >> SINE_TABLE_SHIFT] * *env_ptr_reg++;
- phase_reg += ph_incr_reg;
- phase_reg &= SINE_TABLE_MASK;;
- } while (--n); /* inner loop */
-
- susp->phase = (susp->phase + susp->ph_incr * togo) & SINE_TABLE_MASK;
- /* using env_ptr_reg is a bad idea on RS/6000: */
- susp->env_ptr += togo;
- out_ptr += togo;
- susp_took(env_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* partial_n_fetch */
-
-
-void partial_s_fetch(register partial_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register long phase_reg;
- register long ph_incr_reg;
- register sample_type env_scale_reg = susp->env->scale;
- register sample_block_values_type env_ptr_reg;
- falloc_sample_block(out, "partial_s_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the env input sample block: */
- susp_check_term_log_samples(env, env_ptr, env_cnt);
- togo = MIN(togo, susp->env_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- phase_reg = susp->phase;
- ph_incr_reg = susp->ph_incr;
- env_ptr_reg = susp->env_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-*out_ptr_reg++ = sine_table[phase_reg >> SINE_TABLE_SHIFT] * (env_scale_reg * *env_ptr_reg++);
- phase_reg += ph_incr_reg;
- phase_reg &= SINE_TABLE_MASK;;
- } while (--n); /* inner loop */
-
- susp->phase = (susp->phase + susp->ph_incr * togo) & SINE_TABLE_MASK;
- /* using env_ptr_reg is a bad idea on RS/6000: */
- susp->env_ptr += togo;
- out_ptr += togo;
- susp_took(env_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* partial_s_fetch */
-
-
-void partial_toss_fetch(susp, snd_list)
- register partial_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from env up to final_time for this block of zeros */
- while ((round((final_time - susp->env->t0) * susp->env->sr)) >=
- susp->env->current)
- susp_get_samples(env, env_ptr, env_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->env->t0) * susp->env->sr -
- (susp->env->current - susp->env_cnt));
- susp->env_ptr += n;
- susp_took(env_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void partial_mark(partial_susp_type susp)
-{
- sound_xlmark(susp->env);
-}
-
-
-void partial_free(partial_susp_type susp)
-{
- sound_unref(susp->env);
- ffree_generic(susp, sizeof(partial_susp_node), "partial_free");
-}
-
-
-void partial_print_tree(partial_susp_type susp, int n)
-{
- indent(n);
- stdputstr("env:");
- sound_print_tree_1(susp->env, n);
-}
-
-
-sound_type snd_make_partial(rate_type sr, double hz, sound_type env)
-{
- register partial_susp_type susp;
- /* sr specified as input parameter */
- time_type t0 = env->t0;
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- falloc_generic(susp, partial_susp_node, "snd_make_partial");
- susp->phase = 0;
- susp->ph_incr = round((hz * SINE_TABLE_LEN) * (1 << SINE_TABLE_SHIFT) / sr);
-
- /* select a susp fn based on sample rates */
- interp_desc = (interp_desc << 2) + interp_style(env, sr);
- switch (interp_desc) {
- case INTERP_n: susp->susp.fetch = partial_n_fetch; break;
- case INTERP_s: susp->susp.fetch = partial_s_fetch; break;
- default: snd_badsr(); break;
- }
-
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < env->t0) sound_prepend_zeros(env, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(env->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = partial_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = partial_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = partial_mark;
- susp->susp.print_tree = partial_print_tree;
- susp->susp.name = "partial";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(env);
- susp->susp.current = 0;
- susp->env = env;
- susp->env_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_partial(rate_type sr, double hz, sound_type env)
-{
- sound_type env_copy = sound_copy(env);
- return snd_make_partial(sr, hz, env_copy);
-}
diff --git a/lib-src/libnyquist/tran/partial.h b/lib-src/libnyquist/tran/partial.h
deleted file mode 100644
index 7b9858e..0000000
--- a/lib-src/libnyquist/tran/partial.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_partial(rate_type sr, double hz, sound_type env);
-sound_type snd_partial(rate_type sr, double hz, sound_type env);
- /* LISP: (snd-partial ANYNUM ANYNUM SOUND) */
diff --git a/lib-src/libnyquist/tran/pluck.alg b/lib-src/libnyquist/tran/pluck.alg
deleted file mode 100644
index 6bd342f..0000000
--- a/lib-src/libnyquist/tran/pluck.alg
+++ /dev/null
@@ -1,144 +0,0 @@
-;; PLUCK.ALG is based on the Pluck.t instrument from M4C
-;;
-; to assist with debugging, here are some calculated parameters
-; dumped from a run of M4C:
-;
-; Setup Pluck at t= 6.000
-; DUR= 1.000, pitch= 8.060, amp= 10000, DB_drop= 60.0, rfrac=0.00
-; freq 369.995
-; freq = 369.995361
-; Final = 1000.000000, t= 0.052715, y = 0.000000, lF = 6.907755
-; tdecay = 13.430565, sT = 369.995361, rho = 0.982869, stretch = 0.500000
-; N = 59, x = 0.095342, cons = 0.825914
-; x2 0.412957 x3 0.912957 stretch 0.5 cons 0.825914 SR 22050
-; complete Pluck setup
-;;
-
-(PLUCK-ALG
-(NAME "pluck")
-(ARGUMENTS ("rate_type" "sr") ("double" "hz") ("time_type" "t0")
- ("time_type" "d") ("double" "final_amp"))
-(SUPPORT-FUNCTIONS "
-#define MAXLENGTH 20000
-
-long pluck_parameters(double hz, double sr, double final, double dur,
- double *stretch, double *cons, double *rho)
-{
- double t = PI * (hz / sr);
- double y = fabs(cos(t));
- /* original m4c code used ratio of initial amp to final amp in dB
- and then converted to a ratio, e.g. you specify 60 and the
- parameter Final is 1000.0. This is counterintuitive to me (RBD)
- because I would expect the value to be -60dB or 0.001. That is
- what I implemented, so to get this back into correspondence
- with the m4c algorithm, I take the NEGATIVE log to get lf,
- whereas m4c takes the positive log:
- */
- double lf = -log(final);
- double tdecay = -lf / (hz * log(y));
- double st;
- long len;
- double x;
-
- if (hz <= sr / MAXLENGTH) {
- xlfail(\"pluck hz is too low\");
- } else if (hz >= sr / 3) {
- xlfail(\"pluck hz is too high\");
- }
- /*
- * if desired decay time is shorter than the natural decay time,
- * then introduce a loss factor. Otherwise, stretch note out.
- */
- st = hz * dur;
- if (dur < tdecay) {
- *rho = exp(-lf / st) / y;
- *stretch = 0.5;
- } else {
- *rho = 1;
- *stretch = 0.5 + sqrt(0.25 -
- (1 - exp(2 * lf * (hz - sr) / (st * sr))) /
- (2 - 2 * cos(2 * t)));
- }
-
- /* delay line length is */
- len = (int) ((sr / hz) - *stretch - 0.001);
-
- /* tuning constant is */
- x = (sr / hz) - len - *stretch;
- *cons = (1.0 - x) / (1.0 + x);
-
- if (len <= 1) {
- xlfail(\"internal error: pluck delay line length too short\");
- }
- return len;
-}
-
-static unsigned int rnext = 1;
-int krand()
-{
- rnext = rnext * 1103515245 + 12345;
- return (rnext >> 16) & 0x7fff;
-}
-
-void pluck_initialize(sample_type *shiftreg, sample_type *array,
- long len, double cons)
-{
- sample_type suma = 0.0F;
- long k;
- sample_type avea;
- array[1] = 0;
- for (k = len; k > 0; k--, array--) {
- /* note: the m4c code has a bug. It claims to filter
- the initial values, but it really just sets the
- values to +1 or -1. The following does the same
- thing with much less code:
- */
- *array = (krand() & 2) - 1;
- suma += *array; /* compute sum for the average */
- }
- avea = suma / len;
- /* zero the average */
- for (k = 0; k <= len + 1; k++) shiftreg[k] -= avea;
- shiftreg[len] = 0;
- shiftreg[len + 1] = 0;
-}")
-(STATE ("double" "stretch" "0")
- ("double" "cons" "0")
- ("double" "loss" "0")
- ("long" "len" "pluck_parameters(hz, sr, final_amp, d,
- &susp->stretch, &susp->cons,
- &susp->loss)")
- ("double" "x2" "-susp->cons * (susp->stretch - 1)")
- ("double" "x3" "susp->cons * susp->stretch - susp->stretch + 1")
- ("sample_type *" "shiftreg"
- ;; I think susp->len + 2 is the correct value, but I use +4 to be safe
- "(sample_type *) calloc (susp->len + 4, sizeof(sample_type))")
- ("sample_type *" "i1" "susp->shiftreg + susp->len + 1")
- ("sample_type *" "i2" "susp->shiftreg + susp->len")
- ("sample_type *" "i3" "susp->shiftreg + susp->len - 1")
- ("sample_type *" "i4" "susp->shiftreg + susp->len - 2")
- ("sample_type *" "endptr" "susp->shiftreg + susp->len + 2;
- pluck_initialize(susp->shiftreg, susp->i3,
- susp->len, susp->cons)"))
-(CONSTANT "stretch" "cons" "loss" "len" "x2" "x3" "endptr")
-(SAMPLE-RATE "sr")
-(NOT-REGISTER shiftreg)
-(TERMINATE (AFTER "d"))
-(INNER-LOOP " sample_type sum = (sample_type)
- ((*i1++ * x2) + (*i2++ * x3) +
- (*i3++ * stretch) - (*i4++ * cons));
- /* wrap pointers around shift register if necessary */
- if (i1 == endptr) i1 = susp->shiftreg;
- if (i2 == endptr) i2 = susp->shiftreg;
- if (i3 == endptr) i3 = susp->shiftreg;
- if (i4 == endptr) i4 = susp->shiftreg;
-
- /* store new value in shift register */
- *i4 = (sample_type) (sum * loss);
-
- /* deliver sample */
- output = sum;
-")
-(FINALIZATION " free(susp->shiftreg);\n")
-)
-
diff --git a/lib-src/libnyquist/tran/pluck.c b/lib-src/libnyquist/tran/pluck.c
deleted file mode 100644
index 059884c..0000000
--- a/lib-src/libnyquist/tran/pluck.c
+++ /dev/null
@@ -1,256 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "pluck.h"
-
-void pluck_free();
-
-
-typedef struct pluck_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
-
- double stretch;
- double cons;
- double loss;
- long len;
- double x2;
- double x3;
- sample_type *shiftreg;
- sample_type *i1;
- sample_type *i2;
- sample_type *i3;
- sample_type *i4;
- sample_type *endptr;
-} pluck_susp_node, *pluck_susp_type;
-
-
-#define MAXLENGTH 20000
-
-long pluck_parameters(double hz, double sr, double final, double dur,
- double *stretch, double *cons, double *rho)
-{
- double t = PI * (hz / sr);
- double y = fabs(cos(t));
- /* original m4c code used ratio of initial amp to final amp in dB
- and then converted to a ratio, e.g. you specify 60 and the
- parameter Final is 1000.0. This is counterintuitive to me (RBD)
- because I would expect the value to be -60dB or 0.001. That is
- what I implemented, so to get this back into correspondence
- with the m4c algorithm, I take the NEGATIVE log to get lf,
- whereas m4c takes the positive log:
- */
- double lf = -log(final);
- double tdecay = -lf / (hz * log(y));
- double st;
- long len;
- double x;
-
- if (hz <= sr / MAXLENGTH) {
- xlfail("pluck hz is too low");
- } else if (hz >= sr / 3) {
- xlfail("pluck hz is too high");
- }
- /*
- * if desired decay time is shorter than the natural decay time,
- * then introduce a loss factor. Otherwise, stretch note out.
- */
- st = hz * dur;
- if (dur < tdecay) {
- *rho = exp(-lf / st) / y;
- *stretch = 0.5;
- } else {
- *rho = 1;
- *stretch = 0.5 + sqrt(0.25 -
- (1 - exp(2 * lf * (hz - sr) / (st * sr))) /
- (2 - 2 * cos(2 * t)));
- }
-
- /* delay line length is */
- len = (int) ((sr / hz) - *stretch - 0.001);
-
- /* tuning constant is */
- x = (sr / hz) - len - *stretch;
- *cons = (1.0 - x) / (1.0 + x);
-
- if (len <= 1) {
- xlfail("internal error: pluck delay line length too short");
- }
- return len;
-}
-
-static unsigned int rnext = 1;
-int krand()
-{
- rnext = rnext * 1103515245 + 12345;
- return (rnext >> 16) & 0x7fff;
-}
-
-void pluck_initialize(sample_type *shiftreg, sample_type *array,
- long len, double cons)
-{
- sample_type suma = 0.0F;
- long k;
- sample_type avea;
- array[1] = 0;
- for (k = len; k > 0; k--, array--) {
- /* note: the m4c code has a bug. It claims to filter
- the initial values, but it really just sets the
- values to +1 or -1. The following does the same
- thing with much less code:
- */
- *array = (float) ((krand() & 2) - 1);
- suma += *array; /* compute sum for the average */
- }
- avea = suma / len;
- /* zero the average */
- for (k = 0; k <= len + 1; k++) shiftreg[k] -= avea;
- shiftreg[len] = 0;
- shiftreg[len + 1] = 0;
-}
-
-void pluck__fetch(register pluck_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double stretch_reg;
- register double cons_reg;
- register double loss_reg;
- register double x2_reg;
- register double x3_reg;
- register sample_type * i1_reg;
- register sample_type * i2_reg;
- register sample_type * i3_reg;
- register sample_type * i4_reg;
- register sample_type * endptr_reg;
- falloc_sample_block(out, "pluck__fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
- n = togo;
- stretch_reg = susp->stretch;
- cons_reg = susp->cons;
- loss_reg = susp->loss;
- x2_reg = susp->x2;
- x3_reg = susp->x3;
- i1_reg = susp->i1;
- i2_reg = susp->i2;
- i3_reg = susp->i3;
- i4_reg = susp->i4;
- endptr_reg = susp->endptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- sample_type sum = (float)
- ((*i1_reg++ * x2_reg) + (*i2_reg++ * x3_reg) +
- (*i3_reg++ * stretch_reg) - (*i4_reg++ * cons_reg));
- /* wrap pointers around shift register if necessary */
- if (i1_reg == endptr_reg) i1_reg = susp->shiftreg;
- if (i2_reg == endptr_reg) i2_reg = susp->shiftreg;
- if (i3_reg == endptr_reg) i3_reg = susp->shiftreg;
- if (i4_reg == endptr_reg) i4_reg = susp->shiftreg;
-
- /* store new value in shift register */
- *i4_reg = (float) (sum * loss_reg);
-
- /* deliver sample */
- *out_ptr_reg++ = sum;
-;
- } while (--n); /* inner loop */
-
- susp->i1 = i1_reg;
- susp->i2 = i2_reg;
- susp->i3 = i3_reg;
- susp->i4 = i4_reg;
- out_ptr += togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
-} /* pluck__fetch */
-
-
-void pluck_free(pluck_susp_type susp)
-{
- free(susp->shiftreg);
- ffree_generic(susp, sizeof(pluck_susp_node), "pluck_free");
-}
-
-
-void pluck_print_tree(pluck_susp_type susp, int n)
-{
-}
-
-
-sound_type snd_make_pluck(rate_type sr, double hz, time_type t0, time_type d, double final_amp)
-{
- register pluck_susp_type susp;
- /* sr specified as input parameter */
- /* t0 specified as input parameter */
- sample_type scale_factor = 1.0F;
- falloc_generic(susp, pluck_susp_node, "snd_make_pluck");
- susp->stretch = 0;
- susp->cons = 0;
- susp->loss = 0;
- susp->len = pluck_parameters(hz, sr, final_amp, d,
- &susp->stretch, &susp->cons,
- &susp->loss);
- susp->x2 = -susp->cons * (susp->stretch - 1);
- susp->x3 = susp->cons * susp->stretch - susp->stretch + 1;
- susp->shiftreg = (sample_type *) calloc (susp->len + 4, sizeof(sample_type));
- susp->i1 = susp->shiftreg + susp->len + 1;
- susp->i2 = susp->shiftreg + susp->len;
- susp->i3 = susp->shiftreg + susp->len - 1;
- susp->i4 = susp->shiftreg + susp->len - 2;
- susp->endptr = susp->shiftreg + susp->len + 2;
- pluck_initialize(susp->shiftreg, susp->i3,
- susp->len, susp->cons);
- susp->susp.fetch = pluck__fetch;
-
- susp->terminate_cnt = round((d) * sr);
- /* initialize susp state */
- susp->susp.free = pluck_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = NULL;
- susp->susp.print_tree = pluck_print_tree;
- susp->susp.name = "pluck";
- susp->susp.log_stop_cnt = UNKNOWN;
- susp->susp.current = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_pluck(rate_type sr, double hz, time_type t0, time_type d, double final_amp)
-{
- return snd_make_pluck(sr, hz, t0, d, final_amp);
-}
diff --git a/lib-src/libnyquist/tran/pluck.h b/lib-src/libnyquist/tran/pluck.h
deleted file mode 100644
index 36be409..0000000
--- a/lib-src/libnyquist/tran/pluck.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_pluck(rate_type sr, double hz, time_type t0, time_type d, double final_amp);
-sound_type snd_pluck(rate_type sr, double hz, time_type t0, time_type d, double final_amp);
- /* LISP: (snd-pluck ANYNUM ANYNUM ANYNUM ANYNUM ANYNUM) */
diff --git a/lib-src/libnyquist/tran/prod.alg b/lib-src/libnyquist/tran/prod.alg
deleted file mode 100644
index 1a36c04..0000000
--- a/lib-src/libnyquist/tran/prod.alg
+++ /dev/null
@@ -1,11 +0,0 @@
-(PROD-ALG
- (NAME "prod")
- (ARGUMENTS ("sound_type" "s1") ("sound_type" "s2"))
- (START (MAX s1 s2))
- (COMMUTATIVE (s1 s2))
- (INNER-LOOP "output = s1 * s2")
- (LINEAR s1 s2)
- (TERMINATE (MIN s1 s2))
- (LOGICAL-STOP (MIN s1 s2))
-)
-
diff --git a/lib-src/libnyquist/tran/prod.c b/lib-src/libnyquist/tran/prod.c
deleted file mode 100644
index fd97971..0000000
--- a/lib-src/libnyquist/tran/prod.c
+++ /dev/null
@@ -1,244 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "prod.h"
-
-void prod_free();
-
-
-typedef struct prod_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type s1;
- long s1_cnt;
- sample_block_values_type s1_ptr;
- sound_type s2;
- long s2_cnt;
- sample_block_values_type s2_ptr;
-} prod_susp_node, *prod_susp_type;
-
-
-void prod_nn_fetch(register prod_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register sample_block_values_type s2_ptr_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "prod_nn_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past the s2 input sample block: */
- susp_check_term_log_samples(s2, s2_ptr, s2_cnt);
- togo = MIN(togo, susp->s2_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- s2_ptr_reg = susp->s2_ptr;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-*out_ptr_reg++ = *s1_ptr_reg++ * *s2_ptr_reg++;
- } while (--n); /* inner loop */
-
- /* using s2_ptr_reg is a bad idea on RS/6000: */
- susp->s2_ptr += togo;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp_took(s2_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* prod_nn_fetch */
-
-
-void prod_toss_fetch(susp, snd_list)
- register prod_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from s1 up to final_time for this block of zeros */
- while ((round((final_time - susp->s1->t0) * susp->s1->sr)) >=
- susp->s1->current)
- susp_get_samples(s1, s1_ptr, s1_cnt);
- /* fetch samples from s2 up to final_time for this block of zeros */
- while ((round((final_time - susp->s2->t0) * susp->s2->sr)) >=
- susp->s2->current)
- susp_get_samples(s2, s2_ptr, s2_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->s1->t0) * susp->s1->sr -
- (susp->s1->current - susp->s1_cnt));
- susp->s1_ptr += n;
- susp_took(s1_cnt, n);
- n = round((final_time - susp->s2->t0) * susp->s2->sr -
- (susp->s2->current - susp->s2_cnt));
- susp->s2_ptr += n;
- susp_took(s2_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void prod_mark(prod_susp_type susp)
-{
- sound_xlmark(susp->s1);
- sound_xlmark(susp->s2);
-}
-
-
-void prod_free(prod_susp_type susp)
-{
- sound_unref(susp->s1);
- sound_unref(susp->s2);
- ffree_generic(susp, sizeof(prod_susp_node), "prod_free");
-}
-
-
-void prod_print_tree(prod_susp_type susp, int n)
-{
- indent(n);
- stdputstr("s1:");
- sound_print_tree_1(susp->s1, n);
-
- indent(n);
- stdputstr("s2:");
- sound_print_tree_1(susp->s2, n);
-}
-
-
-sound_type snd_make_prod(sound_type s1, sound_type s2)
-{
- register prod_susp_type susp;
- rate_type sr = MAX(s1->sr, s2->sr);
- time_type t0 = MAX(s1->t0, s2->t0);
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- long lsc;
- /* sort commutative signals: (S1 S2) */
- snd_sort_2(&s1, &s2, sr);
-
- /* combine scale factors of linear inputs (S1 S2) */
- scale_factor *= s1->scale;
- s1->scale = 1.0F;
- scale_factor *= s2->scale;
- s2->scale = 1.0F;
-
- /* try to push scale_factor back to a low sr input */
- if (s1->sr < sr) { s1->scale = scale_factor; scale_factor = 1.0F; }
- else if (s2->sr < sr) { s2->scale = scale_factor; scale_factor = 1.0F; }
-
- falloc_generic(susp, prod_susp_node, "snd_make_prod");
- susp->susp.fetch = prod_nn_fetch;
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < s1->t0) sound_prepend_zeros(s1, t0);
- if (t0 < s2->t0) sound_prepend_zeros(s2, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(s1->t0, MIN(s2->t0, t0));
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = prod_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = prod_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = prod_mark;
- susp->susp.print_tree = prod_print_tree;
- susp->susp.name = "prod";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(s1);
- lsc = logical_stop_cnt_cvt(s2);
- if (susp->susp.log_stop_cnt > lsc)
- susp->susp.log_stop_cnt = lsc;
- susp->susp.current = 0;
- susp->s1 = s1;
- susp->s1_cnt = 0;
- susp->s2 = s2;
- susp->s2_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_prod(sound_type s1, sound_type s2)
-{
- sound_type s1_copy = sound_copy(s1);
- sound_type s2_copy = sound_copy(s2);
- return snd_make_prod(s1_copy, s2_copy);
-}
diff --git a/lib-src/libnyquist/tran/prod.h b/lib-src/libnyquist/tran/prod.h
deleted file mode 100644
index 127b7f9..0000000
--- a/lib-src/libnyquist/tran/prod.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_prod(sound_type s1, sound_type s2);
-sound_type snd_prod(sound_type s1, sound_type s2);
- /* LISP: (snd-prod SOUND SOUND) */
diff --git a/lib-src/libnyquist/tran/pwl.alg b/lib-src/libnyquist/tran/pwl.alg
deleted file mode 100644
index 49a8127..0000000
--- a/lib-src/libnyquist/tran/pwl.alg
+++ /dev/null
@@ -1,82 +0,0 @@
-(PWL-ALG
- (NAME "pwl")
- (ARGUMENTS ("time_type" "t0") ("rate_type" "sr") ("LVAL" "lis"))
- (SUPPORT-FUNCTIONS "
-/* IMPLEMENTATION NOTE:
- * The lis argument is a list of alternating sample numbers and values
- * which are taken in pairs, with an implicit (0, 0) starting point. The
- * last point is a sample number only, the value being implicitly 0.
- * The bpt_ptr points to the next sample number in the list.
- * The incr is set to the increment per sample, and lvl is the next
- * sample value.
- *
- * The list is assumed to be well-formed, so it should be checked by
- * the caller (users should not call this directly).
- */
-
-
-/* compute_lvl -- setup the susp with level, advance bpt_ptr */
-/*
- * returns true if it is time to terminate
- *
- * Note: compute_lvl gets called in the outer loop to skip over
- * a breakpoint pair before starting the compute_incr loop, which
- * searches for a breakpoint that is some number of samples in the
- * future. This code is not embedded in compute_incr because it is
- * NOT called from the initialization, where it would be wrong to
- * skip over the first breakpoint.
- */
-boolean compute_lvl(pwl_susp_type susp)
-{
- if (!cdr(susp->bpt_ptr)) return true;
- susp->lvl = getflonum(car(cdr(susp->bpt_ptr)));
- susp->bpt_ptr = cdr(cdr(susp->bpt_ptr));
- return !susp->bpt_ptr;
-}
-
-
-/* compute_incr -- setup the susp with level and increment */
-/*
- * returns true if it is time to terminate
- */
-boolean compute_incr(pwl_susp_type susp, long *n, long cur)
-{
- double target;
- while (*n == 0) {
- *n = getfixnum(car(susp->bpt_ptr)) - cur;
- /* if there is a 2nd element of the pair, get the target */
- if (cdr(susp->bpt_ptr))
- target = getflonum(car(cdr(susp->bpt_ptr)));
- else target = 0.0;
- if (*n > 0) susp->incr = (target - susp->lvl) / *n;
- else if (compute_lvl(susp)) return true;
- }
- return false;
-}
-")
- (SAMPLE-RATE "sr")
- (STATE
- ("LVAL" "bpt_ptr" "lis")
- ("double" "incr" "0.0")
- ("double" "lvl" "0.0;
- { long temp = 0; compute_incr(susp, &temp, 0); }"))
-
- (OUTER-LOOP "
- if (susp->bpt_ptr == NULL) {
-out: togo = 0; /* indicate termination */
- break; /* we're done */
- }
- { long cur = susp->susp.current + cnt;
- long nn = getfixnum(car(susp->bpt_ptr)) - cur;
- if (nn == 0) {
- if (compute_lvl(susp) || compute_incr(susp, &nn, cur)) goto out;
- }
- togo = MIN(nn, togo);
- }
-")
- (INNER-LOOP "output = (sample_type) lvl; lvl += incr;")
- (MAINTAIN ("lvl" "susp->lvl += susp->incr * togo"))
- (CONSTANT "incr")
- (TERMINATE COMPUTED)
-)
-
diff --git a/lib-src/libnyquist/tran/pwl.c b/lib-src/libnyquist/tran/pwl.c
deleted file mode 100644
index 70d0038..0000000
--- a/lib-src/libnyquist/tran/pwl.c
+++ /dev/null
@@ -1,180 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "pwl.h"
-
-void pwl_free();
-
-
-typedef struct pwl_susp_struct {
- snd_susp_node susp;
-
- LVAL bpt_ptr;
- double incr;
- double lvl;
-} pwl_susp_node, *pwl_susp_type;
-
-
-/* IMPLEMENTATION NOTE:
- * The lis argument is a list of alternating sample numbers and values
- * which are taken in pairs, with an implicit (0, 0) starting point. The
- * last point is a sample number only, the value being implicitly 0.
- * The bpt_ptr points to the next sample number in the list.
- * The incr is set to the increment per sample, and lvl is the next
- * sample value.
- *
- * The list is assumed to be well-formed, so it should be checked by
- * the caller (users should not call this directly).
- */
-
-
-/* compute_lvl -- setup the susp with level, advance bpt_ptr */
-/*
- * returns true if it is time to terminate
- *
- * Note: compute_lvl gets called in the outer loop to skip over
- * a breakpoint pair before starting the compute_incr loop, which
- * searches for a breakpoint that is some number of samples in the
- * future. This code is not embedded in compute_incr because it is
- * NOT called from the initialization, where it would be wrong to
- * skip over the first breakpoint.
- */
-boolean compute_lvl(pwl_susp_type susp)
-{
- if (!cdr(susp->bpt_ptr)) return true;
- susp->lvl = getflonum(car(cdr(susp->bpt_ptr)));
- susp->bpt_ptr = cdr(cdr(susp->bpt_ptr));
- return !susp->bpt_ptr;
-}
-
-
-/* compute_incr -- setup the susp with level and increment */
-/*
- * returns true if it is time to terminate
- */
-boolean compute_incr(pwl_susp_type susp, long *n, long cur)
-{
- double target;
- while (*n == 0) {
- *n = getfixnum(car(susp->bpt_ptr)) - cur;
- /* if there is a 2nd element of the pair, get the target */
- if (cdr(susp->bpt_ptr))
- target = getflonum(car(cdr(susp->bpt_ptr)));
- else target = 0.0;
- if (*n > 0) susp->incr = (target - susp->lvl) / *n;
- else if (compute_lvl(susp)) return true;
- }
- return false;
-}
-
-
-void pwl__fetch(register pwl_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double incr_reg;
- register double lvl_reg;
- falloc_sample_block(out, "pwl__fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
-
- if (susp->bpt_ptr == NULL) {
-out: togo = 0; /* indicate termination */
- break; /* we're done */
- }
- { long cur = susp->susp.current + cnt;
- long nn = getfixnum(car(susp->bpt_ptr)) - cur;
- if (nn == 0) {
- if (compute_lvl(susp) || compute_incr(susp, &nn, cur)) goto out;
- }
- togo = MIN(nn, togo);
- }
-
- n = togo;
- incr_reg = susp->incr;
- lvl_reg = susp->lvl;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-*out_ptr_reg++ = (sample_type) lvl_reg; lvl_reg += incr_reg;;
- } while (--n); /* inner loop */
-
- susp->lvl += susp->incr * togo;
- out_ptr += togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
-} /* pwl__fetch */
-
-
-void pwl_mark(pwl_susp_type susp)
-{
- if (susp->bpt_ptr) mark(susp->bpt_ptr);
-}
-
-
-void pwl_free(pwl_susp_type susp)
-{
- ffree_generic(susp, sizeof(pwl_susp_node), "pwl_free");
-}
-
-
-void pwl_print_tree(pwl_susp_type susp, int n)
-{
-}
-
-
-sound_type snd_make_pwl(time_type t0, rate_type sr, LVAL lis)
-{
- register pwl_susp_type susp;
- /* sr specified as input parameter */
- /* t0 specified as input parameter */
- sample_type scale_factor = 1.0F;
- falloc_generic(susp, pwl_susp_node, "snd_make_pwl");
- susp->bpt_ptr = lis;
- susp->incr = 0.0;
- susp->lvl = 0.0;
- { long temp = 0; compute_incr(susp, &temp, 0); };
- susp->susp.fetch = pwl__fetch;
-
- /* initialize susp state */
- susp->susp.free = pwl_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = pwl_mark;
- susp->susp.print_tree = pwl_print_tree;
- susp->susp.name = "pwl";
- susp->susp.log_stop_cnt = UNKNOWN;
- susp->susp.current = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_pwl(time_type t0, rate_type sr, LVAL lis)
-{
- return snd_make_pwl(t0, sr, lis);
-}
diff --git a/lib-src/libnyquist/tran/pwl.h b/lib-src/libnyquist/tran/pwl.h
deleted file mode 100644
index 36700f6..0000000
--- a/lib-src/libnyquist/tran/pwl.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_pwl(time_type t0, rate_type sr, LVAL lis);
-sound_type snd_pwl(time_type t0, rate_type sr, LVAL lis);
- /* LISP: (snd-pwl ANYNUM ANYNUM ANY) */
diff --git a/lib-src/libnyquist/tran/quant.c.c b/lib-src/libnyquist/tran/quant.c.c
deleted file mode 100644
index e69de29..0000000
diff --git a/lib-src/libnyquist/tran/quant.c.h b/lib-src/libnyquist/tran/quant.c.h
deleted file mode 100644
index e69de29..0000000
diff --git a/lib-src/libnyquist/tran/quantize.alg b/lib-src/libnyquist/tran/quantize.alg
deleted file mode 100644
index fc268bd..0000000
--- a/lib-src/libnyquist/tran/quantize.alg
+++ /dev/null
@@ -1,11 +0,0 @@
-(QUANTIZE-ALG
- (NAME "quantize")
- (ARGUMENTS ("sound_type" "s1") ("long" "steps"))
- (INTERNAL-SCALING s1)
- (START (MIN s1))
- (STATE ("double" "factor" "s1->scale * steps; scale_factor = (sample_type) (1.0 / steps);"))
- (INNER-LOOP "register long xx = (long) (s1 * factor); output = (float) xx;")
- (TERMINATE (MIN s1))
- (CONSTANT "factor")
- (LOGICAL-STOP (MIN s1))
-)
diff --git a/lib-src/libnyquist/tran/quantize.c b/lib-src/libnyquist/tran/quantize.c
deleted file mode 100644
index 0f97591..0000000
--- a/lib-src/libnyquist/tran/quantize.c
+++ /dev/null
@@ -1,202 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "quantize.h"
-
-void quantize_free();
-
-
-typedef struct quantize_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type s1;
- long s1_cnt;
- sample_block_values_type s1_ptr;
-
- double factor;
-} quantize_susp_node, *quantize_susp_type;
-
-
-void quantize_n_fetch(register quantize_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double factor_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "quantize_n_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- factor_reg = susp->factor;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-register long xx = (long) (*s1_ptr_reg++ * factor_reg); *out_ptr_reg++ = (float) xx;;
- } while (--n); /* inner loop */
-
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* quantize_n_fetch */
-
-
-void quantize_toss_fetch(susp, snd_list)
- register quantize_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from s1 up to final_time for this block of zeros */
- while ((round((final_time - susp->s1->t0) * susp->s1->sr)) >=
- susp->s1->current)
- susp_get_samples(s1, s1_ptr, s1_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->s1->t0) * susp->s1->sr -
- (susp->s1->current - susp->s1_cnt));
- susp->s1_ptr += n;
- susp_took(s1_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void quantize_mark(quantize_susp_type susp)
-{
- sound_xlmark(susp->s1);
-}
-
-
-void quantize_free(quantize_susp_type susp)
-{
- sound_unref(susp->s1);
- ffree_generic(susp, sizeof(quantize_susp_node), "quantize_free");
-}
-
-
-void quantize_print_tree(quantize_susp_type susp, int n)
-{
- indent(n);
- stdputstr("s1:");
- sound_print_tree_1(susp->s1, n);
-}
-
-
-sound_type snd_make_quantize(sound_type s1, long steps)
-{
- register quantize_susp_type susp;
- rate_type sr = s1->sr;
- time_type t0 = s1->t0;
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- falloc_generic(susp, quantize_susp_node, "snd_make_quantize");
- susp->factor = s1->scale * steps; scale_factor = (sample_type) (1.0 / steps);;
- susp->susp.fetch = quantize_n_fetch;
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < s1->t0) sound_prepend_zeros(s1, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(s1->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = quantize_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = quantize_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = quantize_mark;
- susp->susp.print_tree = quantize_print_tree;
- susp->susp.name = "quantize";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(s1);
- susp->susp.current = 0;
- susp->s1 = s1;
- susp->s1_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_quantize(sound_type s1, long steps)
-{
- sound_type s1_copy = sound_copy(s1);
- return snd_make_quantize(s1_copy, steps);
-}
diff --git a/lib-src/libnyquist/tran/quantize.h b/lib-src/libnyquist/tran/quantize.h
deleted file mode 100644
index 49630da..0000000
--- a/lib-src/libnyquist/tran/quantize.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_quantize(sound_type s1, long steps);
-sound_type snd_quantize(sound_type s1, long steps);
- /* LISP: (snd-quantize SOUND FIXNUM) */
diff --git a/lib-src/libnyquist/tran/recip.alg b/lib-src/libnyquist/tran/recip.alg
deleted file mode 100644
index 8a535d6..0000000
--- a/lib-src/libnyquist/tran/recip.alg
+++ /dev/null
@@ -1,11 +0,0 @@
-(RECIP-ALG
- (NAME "recip")
- (ARGUMENTS ("sound_type" "s1"))
- (STATE ("double" "scale" "(1.0 / s1->scale)"))
- (INTERNAL-SCALING s1)
- (CONSTANT "scale")
- (START (MIN s1))
- (INNER-LOOP "output = (sample_type) (scale / s1)")
- (TERMINATE (MIN s1))
- (LOGICAL-STOP (MIN s1))
-)
diff --git a/lib-src/libnyquist/tran/recip.c b/lib-src/libnyquist/tran/recip.c
deleted file mode 100644
index 8a32d38..0000000
--- a/lib-src/libnyquist/tran/recip.c
+++ /dev/null
@@ -1,202 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "recip.h"
-
-void recip_free();
-
-
-typedef struct recip_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type s1;
- long s1_cnt;
- sample_block_values_type s1_ptr;
-
- double scale;
-} recip_susp_node, *recip_susp_type;
-
-
-void recip_n_fetch(register recip_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double scale_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "recip_n_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- scale_reg = susp->scale;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-*out_ptr_reg++ = (sample_type) (scale_reg / *s1_ptr_reg++);
- } while (--n); /* inner loop */
-
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* recip_n_fetch */
-
-
-void recip_toss_fetch(susp, snd_list)
- register recip_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from s1 up to final_time for this block of zeros */
- while ((round((final_time - susp->s1->t0) * susp->s1->sr)) >=
- susp->s1->current)
- susp_get_samples(s1, s1_ptr, s1_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->s1->t0) * susp->s1->sr -
- (susp->s1->current - susp->s1_cnt));
- susp->s1_ptr += n;
- susp_took(s1_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void recip_mark(recip_susp_type susp)
-{
- sound_xlmark(susp->s1);
-}
-
-
-void recip_free(recip_susp_type susp)
-{
- sound_unref(susp->s1);
- ffree_generic(susp, sizeof(recip_susp_node), "recip_free");
-}
-
-
-void recip_print_tree(recip_susp_type susp, int n)
-{
- indent(n);
- stdputstr("s1:");
- sound_print_tree_1(susp->s1, n);
-}
-
-
-sound_type snd_make_recip(sound_type s1)
-{
- register recip_susp_type susp;
- rate_type sr = s1->sr;
- time_type t0 = s1->t0;
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- falloc_generic(susp, recip_susp_node, "snd_make_recip");
- susp->scale = (1.0 / s1->scale);
- susp->susp.fetch = recip_n_fetch;
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < s1->t0) sound_prepend_zeros(s1, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(s1->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = recip_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = recip_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = recip_mark;
- susp->susp.print_tree = recip_print_tree;
- susp->susp.name = "recip";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(s1);
- susp->susp.current = 0;
- susp->s1 = s1;
- susp->s1_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_recip(sound_type s1)
-{
- sound_type s1_copy = sound_copy(s1);
- return snd_make_recip(s1_copy);
-}
diff --git a/lib-src/libnyquist/tran/recip.h b/lib-src/libnyquist/tran/recip.h
deleted file mode 100644
index 059c7c7..0000000
--- a/lib-src/libnyquist/tran/recip.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_recip(sound_type s1);
-sound_type snd_recip(sound_type s1);
- /* LISP: (snd-recip SOUND) */
diff --git a/lib-src/libnyquist/tran/reson.alg b/lib-src/libnyquist/tran/reson.alg
deleted file mode 100644
index bc73cc3..0000000
--- a/lib-src/libnyquist/tran/reson.alg
+++ /dev/null
@@ -1,23 +0,0 @@
-(RESON-ALG
-(NAME "reson")
-(ARGUMENTS ("sound_type" "s") ("double" "hz") ("double" "bw")
- ("int" "normalization"))
-(START (MIN s))
-(TERMINATE (MIN s))
-(LOGICAL-STOP (MIN s))
-(STATE ("double" "c3" "exp(bw * -PI2 / s->sr)")
- ("double" "c3p1" "susp->c3 + 1.0")
- ("double" "c3t4" "susp->c3 * 4.0")
- ("double" "omc3" "1.0 - susp->c3")
- ("double" "c2" "susp->c3t4 * cos(hz * PI2 / s->sr) / susp->c3p1")
- ("double" "c1" "(normalization == 0 ? 1.0 :
- (normalization == 1 ? susp->omc3 * sqrt(1.0 - susp->c2 * susp->c2 / susp->c3t4) :
- sqrt(susp->c3p1 * susp->c3p1 - susp->c2 * susp->c2) * susp->omc3 / susp->c3p1))")
- ("double" "y1" "0.0")
- ("double" "y2" "0.0"))
-(CONSTANT "c1" "c2" "c3")
-(INNER-LOOP "{ double y0 = c1 * s + c2 * y1 - c3 * y2;
- output = (sample_type) y0;
- y2 = y1; y1 = y0; }")
-)
-
diff --git a/lib-src/libnyquist/tran/reson.c b/lib-src/libnyquist/tran/reson.c
deleted file mode 100644
index ea3fbfe..0000000
--- a/lib-src/libnyquist/tran/reson.c
+++ /dev/null
@@ -1,339 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "reson.h"
-
-void reson_free();
-
-
-typedef struct reson_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type s;
- long s_cnt;
- sample_block_values_type s_ptr;
-
- double c3;
- double c3p1;
- double c3t4;
- double omc3;
- double c2;
- double c1;
- double y1;
- double y2;
-} reson_susp_node, *reson_susp_type;
-
-
-void reson_n_fetch(register reson_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double c3_reg;
- register double c2_reg;
- register double c1_reg;
- register double y1_reg;
- register double y2_reg;
- register sample_block_values_type s_ptr_reg;
- falloc_sample_block(out, "reson_n_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s input sample block: */
- susp_check_term_log_samples(s, s_ptr, s_cnt);
- togo = MIN(togo, susp->s_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- c3_reg = susp->c3;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- s_ptr_reg = susp->s_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-{ double y0 = c1_reg * *s_ptr_reg++ + c2_reg * y1_reg - c3_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0; };
- } while (--n); /* inner loop */
-
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- /* using s_ptr_reg is a bad idea on RS/6000: */
- susp->s_ptr += togo;
- out_ptr += togo;
- susp_took(s_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* reson_n_fetch */
-
-
-void reson_s_fetch(register reson_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double c3_reg;
- register double c2_reg;
- register double c1_reg;
- register double y1_reg;
- register double y2_reg;
- register sample_type s_scale_reg = susp->s->scale;
- register sample_block_values_type s_ptr_reg;
- falloc_sample_block(out, "reson_s_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s input sample block: */
- susp_check_term_log_samples(s, s_ptr, s_cnt);
- togo = MIN(togo, susp->s_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- c3_reg = susp->c3;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- s_ptr_reg = susp->s_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-{ double y0 = c1_reg * (s_scale_reg * *s_ptr_reg++) + c2_reg * y1_reg - c3_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0; };
- } while (--n); /* inner loop */
-
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- /* using s_ptr_reg is a bad idea on RS/6000: */
- susp->s_ptr += togo;
- out_ptr += togo;
- susp_took(s_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* reson_s_fetch */
-
-
-void reson_toss_fetch(susp, snd_list)
- register reson_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from s up to final_time for this block of zeros */
- while ((round((final_time - susp->s->t0) * susp->s->sr)) >=
- susp->s->current)
- susp_get_samples(s, s_ptr, s_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->s->t0) * susp->s->sr -
- (susp->s->current - susp->s_cnt));
- susp->s_ptr += n;
- susp_took(s_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void reson_mark(reson_susp_type susp)
-{
- sound_xlmark(susp->s);
-}
-
-
-void reson_free(reson_susp_type susp)
-{
- sound_unref(susp->s);
- ffree_generic(susp, sizeof(reson_susp_node), "reson_free");
-}
-
-
-void reson_print_tree(reson_susp_type susp, int n)
-{
- indent(n);
- stdputstr("s:");
- sound_print_tree_1(susp->s, n);
-}
-
-
-sound_type snd_make_reson(sound_type s, double hz, double bw, int normalization)
-{
- register reson_susp_type susp;
- rate_type sr = s->sr;
- time_type t0 = s->t0;
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- falloc_generic(susp, reson_susp_node, "snd_make_reson");
- susp->c3 = exp(bw * -PI2 / s->sr);
- susp->c3p1 = susp->c3 + 1.0;
- susp->c3t4 = susp->c3 * 4.0;
- susp->omc3 = 1.0 - susp->c3;
- susp->c2 = susp->c3t4 * cos(hz * PI2 / s->sr) / susp->c3p1;
- susp->c1 = (normalization == 0 ? 1.0 :
- (normalization == 1 ? susp->omc3 * sqrt(1.0 - susp->c2 * susp->c2 / susp->c3t4) :
- sqrt(susp->c3p1 * susp->c3p1 - susp->c2 * susp->c2) * susp->omc3 / susp->c3p1));
- susp->y1 = 0.0;
- susp->y2 = 0.0;
-
- /* select a susp fn based on sample rates */
- interp_desc = (interp_desc << 2) + interp_style(s, sr);
- switch (interp_desc) {
- case INTERP_n: susp->susp.fetch = reson_n_fetch; break;
- case INTERP_s: susp->susp.fetch = reson_s_fetch; break;
- default: snd_badsr(); break;
- }
-
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < s->t0) sound_prepend_zeros(s, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(s->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = reson_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = reson_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = reson_mark;
- susp->susp.print_tree = reson_print_tree;
- susp->susp.name = "reson";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(s);
- susp->susp.current = 0;
- susp->s = s;
- susp->s_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_reson(sound_type s, double hz, double bw, int normalization)
-{
- sound_type s_copy = sound_copy(s);
- return snd_make_reson(s_copy, hz, bw, normalization);
-}
diff --git a/lib-src/libnyquist/tran/reson.h b/lib-src/libnyquist/tran/reson.h
deleted file mode 100644
index aec354a..0000000
--- a/lib-src/libnyquist/tran/reson.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_reson(sound_type s, double hz, double bw, int normalization);
-sound_type snd_reson(sound_type s, double hz, double bw, int normalization);
- /* LISP: (snd-reson SOUND ANYNUM ANYNUM FIXNUM) */
diff --git a/lib-src/libnyquist/tran/resoncv.alg b/lib-src/libnyquist/tran/resoncv.alg
deleted file mode 100644
index 8ad5c64..0000000
--- a/lib-src/libnyquist/tran/resoncv.alg
+++ /dev/null
@@ -1,35 +0,0 @@
-(RESONCV-ALG
-(NAME "resoncv")
-(ARGUMENTS ("sound_type" "s1") ("double" "hz") ("sound_type" "bw")
- ("int" "normalization"))
-(INLINE-INTERPOLATION T)
-(INTERNAL-SCALING s1)
-(ALWAYS-SCALE bw)
-(START (MAX s1 bw))
-(TERMINATE (MIN s1 bw))
-(LOGICAL-STOP (MIN s1))
-(SAMPLE-RATE (MAX s1))
-(STEP-FUNCTION bw)
-(STATE ("double" "scale1" "s1->scale")
- ("double" "c3co" "0.0")
- ("double" "coshz" "cos(hz * PI2 / s1->sr)")
- ("double" "c2" "0.0")
- ("double" "c1" "0.0")
- ("int" "normalization" "normalization")
- ("double" "y1" "0.0")
- ("double" "y2" "0.0;
- bw->scale = (sample_type) (bw->scale * (-PI2 / s1->sr))"))
-(DEPENDS ("c3co" "bw" "exp(bw)")
- ("c3p1" "bw" "c3co + 1.0" TEMP "double")
- ("c3t4" "bw" "c3co * 4.0" TEMP "double")
- ("omc3" "bw" "1.0 - c3co" TEMP "double")
- ("c2" "bw" "c3t4 * coshz / c3p1")
- ("c1" "bw" "(normalization == 0 ? 1.0 :
- (normalization == 1 ? omc3 * sqrt(1.0 - c2 * c2 / c3t4) :
- sqrt(c3p1 * c3p1 - c2 * c2) * omc3 / c3p1)) * scale1"))
-(CONSTANT "c1" "c2" "c3co" "coshz" "normalization" "scale1")
-(FORCE-INTO-REGISTER normalization coshz scale1)
-(INNER-LOOP "{ double y0 = c1 * s1 + c2 * y1 - c3co * y2;
- output = (sample_type) y0;
- y2 = y1; y1 = y0; }")
-)
diff --git a/lib-src/libnyquist/tran/resoncv.c b/lib-src/libnyquist/tran/resoncv.c
deleted file mode 100644
index 8f25d47..0000000
--- a/lib-src/libnyquist/tran/resoncv.c
+++ /dev/null
@@ -1,600 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "resoncv.h"
-
-void resoncv_free();
-
-
-typedef struct resoncv_susp_struct {
- snd_susp_node susp;
- boolean started;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type s1;
- long s1_cnt;
- sample_block_values_type s1_ptr;
- sound_type bw;
- long bw_cnt;
- sample_block_values_type bw_ptr;
-
- /* support for interpolation of bw */
- sample_type bw_x1_sample;
- double bw_pHaSe;
- double bw_pHaSe_iNcR;
-
- /* support for ramp between samples of bw */
- double output_per_bw;
- long bw_n;
-
- double scale1;
- double c3co;
- double coshz;
- double c2;
- double c1;
- int normalization;
- double y1;
- double y2;
-} resoncv_susp_node, *resoncv_susp_type;
-
-
-void resoncv_ns_fetch(register resoncv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double scale1_reg;
- register double c3co_reg;
- register double coshz_reg;
- register double c2_reg;
- register double c1_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register sample_type bw_scale_reg = susp->bw->scale;
- register sample_block_values_type bw_ptr_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "resoncv_ns_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past the bw input sample block: */
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
- togo = MIN(togo, susp->bw_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- scale1_reg = susp->scale1;
- c3co_reg = susp->c3co;
- coshz_reg = susp->coshz;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- bw_ptr_reg = susp->bw_ptr;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- double c3p1;
- double c3t4;
- double omc3;
- c3co_reg = exp((bw_scale_reg * *bw_ptr_reg++));
- c3p1 = c3co_reg + 1.0;
- c3t4 = c3co_reg * 4.0;
- omc3 = 1.0 - c3co_reg;
- c2_reg = c3t4 * coshz_reg / c3p1;
- c1_reg = (normalization_reg == 0 ? 1.0 :
- (normalization_reg == 1 ? omc3 * sqrt(1.0 - c2_reg * c2_reg / c3t4) :
- sqrt(c3p1 * c3p1 - c2_reg * c2_reg) * omc3 / c3p1)) * scale1_reg;
-{ double y0 = c1_reg * *s1_ptr_reg++ + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0; };
- } while (--n); /* inner loop */
-
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- /* using bw_ptr_reg is a bad idea on RS/6000: */
- susp->bw_ptr += togo;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp_took(bw_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* resoncv_ns_fetch */
-
-
-void resoncv_ni_fetch(register resoncv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double scale1_reg;
- register double c3co_reg;
- register double coshz_reg;
- register double c2_reg;
- register double c1_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register double bw_pHaSe_iNcR_rEg = susp->bw_pHaSe_iNcR;
- register double bw_pHaSe_ReG;
- register sample_type bw_x1_sample_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "resoncv_ni_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- double c3p1;
- double c3t4;
- double omc3;
- susp->started = true;
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
- susp->bw_x1_sample = susp_fetch_sample(bw, bw_ptr, bw_cnt);
- susp->c3co = exp(susp->bw_x1_sample);
- c3p1 = susp->c3co + 1.0;
- c3t4 = susp->c3co * 4.0;
- omc3 = 1.0 - susp->c3co;
- susp->c2 = c3t4 * susp->coshz / c3p1;
- susp->c1 = (susp->normalization == 0 ? 1.0 :
- (susp->normalization == 1 ? omc3 * sqrt(1.0 - susp->c2 * susp->c2 / c3t4) :
- sqrt(c3p1 * c3p1 - susp->c2 * susp->c2) * omc3 / c3p1)) * susp->scale1;
- }
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- scale1_reg = susp->scale1;
- c3co_reg = susp->c3co;
- coshz_reg = susp->coshz;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- bw_pHaSe_ReG = susp->bw_pHaSe;
- bw_x1_sample_reg = susp->bw_x1_sample;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- if (bw_pHaSe_ReG >= 1.0) {
-/* fixup-depends bw */
- double c3p1;
- double c3t4;
- double omc3;
- /* pick up next sample as bw_x1_sample: */
- susp->bw_ptr++;
- susp_took(bw_cnt, 1);
- bw_pHaSe_ReG -= 1.0;
- susp_check_term_samples_break(bw, bw_ptr, bw_cnt, bw_x1_sample_reg);
- bw_x1_sample_reg = susp_current_sample(bw, bw_ptr);
- c3co_reg = susp->c3co = exp(bw_x1_sample_reg);
- c3p1 = c3co_reg + 1.0;
- c3t4 = c3co_reg * 4.0;
- omc3 = 1.0 - c3co_reg;
- c2_reg = susp->c2 = c3t4 * coshz_reg / c3p1;
- c1_reg = susp->c1 = (normalization_reg == 0 ? 1.0 :
- (normalization_reg == 1 ? omc3 * sqrt(1.0 - c2_reg * c2_reg / c3t4) :
- sqrt(c3p1 * c3p1 - c2_reg * c2_reg) * omc3 / c3p1)) * scale1_reg;
- }
-{ double y0 = c1_reg * *s1_ptr_reg++ + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0; };
- bw_pHaSe_ReG += bw_pHaSe_iNcR_rEg;
- } while (--n); /* inner loop */
-
- togo -= n;
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- susp->bw_pHaSe = bw_pHaSe_ReG;
- susp->bw_x1_sample = bw_x1_sample_reg;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* resoncv_ni_fetch */
-
-
-void resoncv_nr_fetch(register resoncv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- sample_type bw_val;
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double scale1_reg;
- register double c3co_reg;
- register double coshz_reg;
- register double c2_reg;
- register double c1_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "resoncv_nr_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp->bw_pHaSe = 1.0;
- }
-
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* grab next bw_x1_sample when phase goes past 1.0; */
- /* use bw_n (computed below) to avoid roundoff errors: */
- if (susp->bw_n <= 0) {
- double c3p1;
- double c3t4;
- double omc3;
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
- susp->bw_x1_sample = susp_fetch_sample(bw, bw_ptr, bw_cnt);
- susp->bw_pHaSe -= 1.0;
- /* bw_n gets number of samples before phase exceeds 1.0: */
- susp->bw_n = (long) ((1.0 - susp->bw_pHaSe) *
- susp->output_per_bw);
- susp->c3co = exp(susp->bw_x1_sample);
- c3p1 = susp->c3co + 1.0;
- c3t4 = susp->c3co * 4.0;
- omc3 = 1.0 - susp->c3co;
- susp->c2 = c3t4 * susp->coshz / c3p1;
- susp->c1 = (susp->normalization == 0 ? 1.0 :
- (susp->normalization == 1 ? omc3 * sqrt(1.0 - susp->c2 * susp->c2 / c3t4) :
- sqrt(c3p1 * c3p1 - susp->c2 * susp->c2) * omc3 / c3p1)) * susp->scale1;
- }
- togo = MIN(togo, susp->bw_n);
- bw_val = susp->bw_x1_sample;
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- scale1_reg = susp->scale1;
- c3co_reg = susp->c3co;
- coshz_reg = susp->coshz;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-{ double y0 = c1_reg * *s1_ptr_reg++ + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0; };
- } while (--n); /* inner loop */
-
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp->bw_pHaSe += togo * susp->bw_pHaSe_iNcR;
- susp->bw_n -= togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* resoncv_nr_fetch */
-
-
-void resoncv_toss_fetch(susp, snd_list)
- register resoncv_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from s1 up to final_time for this block of zeros */
- while ((round((final_time - susp->s1->t0) * susp->s1->sr)) >=
- susp->s1->current)
- susp_get_samples(s1, s1_ptr, s1_cnt);
- /* fetch samples from bw up to final_time for this block of zeros */
- while ((round((final_time - susp->bw->t0) * susp->bw->sr)) >=
- susp->bw->current)
- susp_get_samples(bw, bw_ptr, bw_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->s1->t0) * susp->s1->sr -
- (susp->s1->current - susp->s1_cnt));
- susp->s1_ptr += n;
- susp_took(s1_cnt, n);
- n = round((final_time - susp->bw->t0) * susp->bw->sr -
- (susp->bw->current - susp->bw_cnt));
- susp->bw_ptr += n;
- susp_took(bw_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void resoncv_mark(resoncv_susp_type susp)
-{
- sound_xlmark(susp->s1);
- sound_xlmark(susp->bw);
-}
-
-
-void resoncv_free(resoncv_susp_type susp)
-{
- sound_unref(susp->s1);
- sound_unref(susp->bw);
- ffree_generic(susp, sizeof(resoncv_susp_node), "resoncv_free");
-}
-
-
-void resoncv_print_tree(resoncv_susp_type susp, int n)
-{
- indent(n);
- stdputstr("s1:");
- sound_print_tree_1(susp->s1, n);
-
- indent(n);
- stdputstr("bw:");
- sound_print_tree_1(susp->bw, n);
-}
-
-
-sound_type snd_make_resoncv(sound_type s1, double hz, sound_type bw, int normalization)
-{
- register resoncv_susp_type susp;
- rate_type sr = s1->sr;
- time_type t0 = MAX(s1->t0, bw->t0);
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- falloc_generic(susp, resoncv_susp_node, "snd_make_resoncv");
- susp->scale1 = s1->scale;
- susp->c3co = 0.0;
- susp->coshz = cos(hz * PI2 / s1->sr);
- susp->c2 = 0.0;
- susp->c1 = 0.0;
- susp->normalization = normalization;
- susp->y1 = 0.0;
- susp->y2 = 0.0;
- bw->scale = (sample_type) (bw->scale * (-PI2 / s1->sr));
-
- /* select a susp fn based on sample rates */
- interp_desc = (interp_desc << 2) + interp_style(s1, sr);
- interp_desc = (interp_desc << 2) + interp_style(bw, sr);
- switch (interp_desc) {
- case INTERP_sn: /* handled below */
- case INTERP_ss: /* handled below */
- case INTERP_nn: /* handled below */
- case INTERP_ns: susp->susp.fetch = resoncv_ns_fetch; break;
- case INTERP_si: /* handled below */
- case INTERP_ni: susp->susp.fetch = resoncv_ni_fetch; break;
- case INTERP_sr: /* handled below */
- case INTERP_nr: susp->susp.fetch = resoncv_nr_fetch; break;
- default: snd_badsr(); break;
- }
-
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < s1->t0) sound_prepend_zeros(s1, t0);
- if (t0 < bw->t0) sound_prepend_zeros(bw, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(s1->t0, MIN(bw->t0, t0));
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = resoncv_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = resoncv_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = resoncv_mark;
- susp->susp.print_tree = resoncv_print_tree;
- susp->susp.name = "resoncv";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(s1);
- susp->started = false;
- susp->susp.current = 0;
- susp->s1 = s1;
- susp->s1_cnt = 0;
- susp->bw = bw;
- susp->bw_cnt = 0;
- susp->bw_pHaSe = 0.0;
- susp->bw_pHaSe_iNcR = bw->sr / sr;
- susp->bw_n = 0;
- susp->output_per_bw = sr / bw->sr;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_resoncv(sound_type s1, double hz, sound_type bw, int normalization)
-{
- sound_type s1_copy = sound_copy(s1);
- sound_type bw_copy = sound_copy(bw);
- return snd_make_resoncv(s1_copy, hz, bw_copy, normalization);
-}
diff --git a/lib-src/libnyquist/tran/resoncv.h b/lib-src/libnyquist/tran/resoncv.h
deleted file mode 100644
index 57bbf60..0000000
--- a/lib-src/libnyquist/tran/resoncv.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_resoncv(sound_type s1, double hz, sound_type bw, int normalization);
-sound_type snd_resoncv(sound_type s1, double hz, sound_type bw, int normalization);
- /* LISP: (snd-resoncv SOUND ANYNUM SOUND FIXNUM) */
diff --git a/lib-src/libnyquist/tran/resonvc.alg b/lib-src/libnyquist/tran/resonvc.alg
deleted file mode 100644
index 74945b8..0000000
--- a/lib-src/libnyquist/tran/resonvc.alg
+++ /dev/null
@@ -1,33 +0,0 @@
-(RESONVC-ALG
-(NAME "resonvc")
-(ARGUMENTS ("sound_type" "s1") ("sound_type" "hz") ("double" "bw")
- ("int" "normalization"))
-(INLINE-INTERPOLATION T)
-(INTERNAL-SCALING s1)
-(ALWAYS-SCALE hz)
-(START (MAX s1 hz))
-(TERMINATE (MIN s1 hz))
-(LOGICAL-STOP (MIN s1))
-(SAMPLE-RATE (MAX s1))
-(STEP-FUNCTION hz)
-(STATE ("double" "scale1" "s1->scale")
- ("double" "c3co" "exp(bw * -PI2 / s1->sr)")
- ("double" "c3p1" "susp->c3co + 1.0")
- ("double" "c3t4" "susp->c3co * 4.0")
- ("double" "omc3" "1.0 - susp->c3co")
- ("double" "c2" "0.0")
- ("double" "c1" "0.0")
- ("int" "normalization" "normalization")
- ("double" "y1" "0.0")
- ("double" "y2" "0.0;
- hz->scale = (sample_type) (hz->scale * (PI2 / s1->sr))"))
-(DEPENDS ("c2" "hz" "c3t4 * cos(hz) / c3p1")
- ("c1" "hz" "(normalization == 0 ? scale1 :
- (normalization == 1 ? omc3 * sqrt(1.0 - c2 * c2 / c3t4) :
- sqrt(c3p1 * c3p1 - c2 * c2) * omc3 / c3p1)) * scale1"))
-(CONSTANT "c1" "c2" "c3co" "c3p1" "c3t4" "omc3" "normalization" "scale1")
-(FORCE-INTO-REGISTER c3t4 c3p1 normalization omc3 scale1)
-(INNER-LOOP "{ double y0 = c1 * s1 + c2 * y1 - c3co * y2;
- output = (sample_type) y0;
- y2 = y1; y1 = y0; }")
-)
diff --git a/lib-src/libnyquist/tran/resonvc.c b/lib-src/libnyquist/tran/resonvc.c
deleted file mode 100644
index d676293..0000000
--- a/lib-src/libnyquist/tran/resonvc.c
+++ /dev/null
@@ -1,588 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "resonvc.h"
-
-void resonvc_free();
-
-
-typedef struct resonvc_susp_struct {
- snd_susp_node susp;
- boolean started;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type s1;
- long s1_cnt;
- sample_block_values_type s1_ptr;
- sound_type hz;
- long hz_cnt;
- sample_block_values_type hz_ptr;
-
- /* support for interpolation of hz */
- sample_type hz_x1_sample;
- double hz_pHaSe;
- double hz_pHaSe_iNcR;
-
- /* support for ramp between samples of hz */
- double output_per_hz;
- long hz_n;
-
- double scale1;
- double c3co;
- double c3p1;
- double c3t4;
- double omc3;
- double c2;
- double c1;
- int normalization;
- double y1;
- double y2;
-} resonvc_susp_node, *resonvc_susp_type;
-
-
-void resonvc_ns_fetch(register resonvc_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double scale1_reg;
- register double c3co_reg;
- register double c3p1_reg;
- register double c3t4_reg;
- register double omc3_reg;
- register double c2_reg;
- register double c1_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register sample_type hz_scale_reg = susp->hz->scale;
- register sample_block_values_type hz_ptr_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "resonvc_ns_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past the hz input sample block: */
- susp_check_term_samples(hz, hz_ptr, hz_cnt);
- togo = MIN(togo, susp->hz_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- scale1_reg = susp->scale1;
- c3co_reg = susp->c3co;
- c3p1_reg = susp->c3p1;
- c3t4_reg = susp->c3t4;
- omc3_reg = susp->omc3;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- hz_ptr_reg = susp->hz_ptr;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- c2_reg = c3t4_reg * cos((hz_scale_reg * *hz_ptr_reg++)) / c3p1_reg;
- c1_reg = (normalization_reg == 0 ? scale1_reg :
- (normalization_reg == 1 ? omc3_reg * sqrt(1.0 - c2_reg * c2_reg / c3t4_reg) :
- sqrt(c3p1_reg * c3p1_reg - c2_reg * c2_reg) * omc3_reg / c3p1_reg)) * scale1_reg;
-{ double y0 = c1_reg * *s1_ptr_reg++ + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0; };
- } while (--n); /* inner loop */
-
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- /* using hz_ptr_reg is a bad idea on RS/6000: */
- susp->hz_ptr += togo;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp_took(hz_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* resonvc_ns_fetch */
-
-
-void resonvc_ni_fetch(register resonvc_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double scale1_reg;
- register double c3co_reg;
- register double c3p1_reg;
- register double c3t4_reg;
- register double omc3_reg;
- register double c2_reg;
- register double c1_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register double hz_pHaSe_iNcR_rEg = susp->hz_pHaSe_iNcR;
- register double hz_pHaSe_ReG;
- register sample_type hz_x1_sample_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "resonvc_ni_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp_check_term_samples(hz, hz_ptr, hz_cnt);
- susp->hz_x1_sample = susp_fetch_sample(hz, hz_ptr, hz_cnt);
- susp->c2 = susp->c3t4 * cos(susp->hz_x1_sample) / susp->c3p1;
- susp->c1 = (susp->normalization == 0 ? susp->scale1 :
- (susp->normalization == 1 ? susp->omc3 * sqrt(1.0 - susp->c2 * susp->c2 / susp->c3t4) :
- sqrt(susp->c3p1 * susp->c3p1 - susp->c2 * susp->c2) * susp->omc3 / susp->c3p1)) * susp->scale1;
- }
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- scale1_reg = susp->scale1;
- c3co_reg = susp->c3co;
- c3p1_reg = susp->c3p1;
- c3t4_reg = susp->c3t4;
- omc3_reg = susp->omc3;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- hz_pHaSe_ReG = susp->hz_pHaSe;
- hz_x1_sample_reg = susp->hz_x1_sample;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- if (hz_pHaSe_ReG >= 1.0) {
-/* fixup-depends hz */
- /* pick up next sample as hz_x1_sample: */
- susp->hz_ptr++;
- susp_took(hz_cnt, 1);
- hz_pHaSe_ReG -= 1.0;
- susp_check_term_samples_break(hz, hz_ptr, hz_cnt, hz_x1_sample_reg);
- hz_x1_sample_reg = susp_current_sample(hz, hz_ptr);
- c2_reg = susp->c2 = c3t4_reg * cos(hz_x1_sample_reg) / c3p1_reg;
- c1_reg = susp->c1 = (normalization_reg == 0 ? scale1_reg :
- (normalization_reg == 1 ? omc3_reg * sqrt(1.0 - c2_reg * c2_reg / c3t4_reg) :
- sqrt(c3p1_reg * c3p1_reg - c2_reg * c2_reg) * omc3_reg / c3p1_reg)) * scale1_reg;
- }
-{ double y0 = c1_reg * *s1_ptr_reg++ + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0; };
- hz_pHaSe_ReG += hz_pHaSe_iNcR_rEg;
- } while (--n); /* inner loop */
-
- togo -= n;
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- susp->hz_pHaSe = hz_pHaSe_ReG;
- susp->hz_x1_sample = hz_x1_sample_reg;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* resonvc_ni_fetch */
-
-
-void resonvc_nr_fetch(register resonvc_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- sample_type hz_val;
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double scale1_reg;
- register double c3co_reg;
- register double c3p1_reg;
- register double c3t4_reg;
- register double omc3_reg;
- register double c2_reg;
- register double c1_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "resonvc_nr_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp->hz_pHaSe = 1.0;
- }
-
- susp_check_term_samples(hz, hz_ptr, hz_cnt);
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* grab next hz_x1_sample when phase goes past 1.0; */
- /* use hz_n (computed below) to avoid roundoff errors: */
- if (susp->hz_n <= 0) {
- susp_check_term_samples(hz, hz_ptr, hz_cnt);
- susp->hz_x1_sample = susp_fetch_sample(hz, hz_ptr, hz_cnt);
- susp->hz_pHaSe -= 1.0;
- /* hz_n gets number of samples before phase exceeds 1.0: */
- susp->hz_n = (long) ((1.0 - susp->hz_pHaSe) *
- susp->output_per_hz);
- susp->c2 = susp->c3t4 * cos(susp->hz_x1_sample) / susp->c3p1;
- susp->c1 = (susp->normalization == 0 ? susp->scale1 :
- (susp->normalization == 1 ? susp->omc3 * sqrt(1.0 - susp->c2 * susp->c2 / susp->c3t4) :
- sqrt(susp->c3p1 * susp->c3p1 - susp->c2 * susp->c2) * susp->omc3 / susp->c3p1)) * susp->scale1;
- }
- togo = MIN(togo, susp->hz_n);
- hz_val = susp->hz_x1_sample;
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- scale1_reg = susp->scale1;
- c3co_reg = susp->c3co;
- c3p1_reg = susp->c3p1;
- c3t4_reg = susp->c3t4;
- omc3_reg = susp->omc3;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-{ double y0 = c1_reg * *s1_ptr_reg++ + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0; };
- } while (--n); /* inner loop */
-
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp->hz_pHaSe += togo * susp->hz_pHaSe_iNcR;
- susp->hz_n -= togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* resonvc_nr_fetch */
-
-
-void resonvc_toss_fetch(susp, snd_list)
- register resonvc_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from s1 up to final_time for this block of zeros */
- while ((round((final_time - susp->s1->t0) * susp->s1->sr)) >=
- susp->s1->current)
- susp_get_samples(s1, s1_ptr, s1_cnt);
- /* fetch samples from hz up to final_time for this block of zeros */
- while ((round((final_time - susp->hz->t0) * susp->hz->sr)) >=
- susp->hz->current)
- susp_get_samples(hz, hz_ptr, hz_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->s1->t0) * susp->s1->sr -
- (susp->s1->current - susp->s1_cnt));
- susp->s1_ptr += n;
- susp_took(s1_cnt, n);
- n = round((final_time - susp->hz->t0) * susp->hz->sr -
- (susp->hz->current - susp->hz_cnt));
- susp->hz_ptr += n;
- susp_took(hz_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void resonvc_mark(resonvc_susp_type susp)
-{
- sound_xlmark(susp->s1);
- sound_xlmark(susp->hz);
-}
-
-
-void resonvc_free(resonvc_susp_type susp)
-{
- sound_unref(susp->s1);
- sound_unref(susp->hz);
- ffree_generic(susp, sizeof(resonvc_susp_node), "resonvc_free");
-}
-
-
-void resonvc_print_tree(resonvc_susp_type susp, int n)
-{
- indent(n);
- stdputstr("s1:");
- sound_print_tree_1(susp->s1, n);
-
- indent(n);
- stdputstr("hz:");
- sound_print_tree_1(susp->hz, n);
-}
-
-
-sound_type snd_make_resonvc(sound_type s1, sound_type hz, double bw, int normalization)
-{
- register resonvc_susp_type susp;
- rate_type sr = s1->sr;
- time_type t0 = MAX(s1->t0, hz->t0);
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- falloc_generic(susp, resonvc_susp_node, "snd_make_resonvc");
- susp->scale1 = s1->scale;
- susp->c3co = exp(bw * -PI2 / s1->sr);
- susp->c3p1 = susp->c3co + 1.0;
- susp->c3t4 = susp->c3co * 4.0;
- susp->omc3 = 1.0 - susp->c3co;
- susp->c2 = 0.0;
- susp->c1 = 0.0;
- susp->normalization = normalization;
- susp->y1 = 0.0;
- susp->y2 = 0.0;
- hz->scale = (sample_type) (hz->scale * (PI2 / s1->sr));
-
- /* select a susp fn based on sample rates */
- interp_desc = (interp_desc << 2) + interp_style(s1, sr);
- interp_desc = (interp_desc << 2) + interp_style(hz, sr);
- switch (interp_desc) {
- case INTERP_sn: /* handled below */
- case INTERP_ss: /* handled below */
- case INTERP_nn: /* handled below */
- case INTERP_ns: susp->susp.fetch = resonvc_ns_fetch; break;
- case INTERP_si: /* handled below */
- case INTERP_ni: susp->susp.fetch = resonvc_ni_fetch; break;
- case INTERP_sr: /* handled below */
- case INTERP_nr: susp->susp.fetch = resonvc_nr_fetch; break;
- default: snd_badsr(); break;
- }
-
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < s1->t0) sound_prepend_zeros(s1, t0);
- if (t0 < hz->t0) sound_prepend_zeros(hz, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(s1->t0, MIN(hz->t0, t0));
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = resonvc_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = resonvc_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = resonvc_mark;
- susp->susp.print_tree = resonvc_print_tree;
- susp->susp.name = "resonvc";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(s1);
- susp->started = false;
- susp->susp.current = 0;
- susp->s1 = s1;
- susp->s1_cnt = 0;
- susp->hz = hz;
- susp->hz_cnt = 0;
- susp->hz_pHaSe = 0.0;
- susp->hz_pHaSe_iNcR = hz->sr / sr;
- susp->hz_n = 0;
- susp->output_per_hz = sr / hz->sr;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_resonvc(sound_type s1, sound_type hz, double bw, int normalization)
-{
- sound_type s1_copy = sound_copy(s1);
- sound_type hz_copy = sound_copy(hz);
- return snd_make_resonvc(s1_copy, hz_copy, bw, normalization);
-}
diff --git a/lib-src/libnyquist/tran/resonvc.h b/lib-src/libnyquist/tran/resonvc.h
deleted file mode 100644
index b7b5d84..0000000
--- a/lib-src/libnyquist/tran/resonvc.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_resonvc(sound_type s1, sound_type hz, double bw, int normalization);
-sound_type snd_resonvc(sound_type s1, sound_type hz, double bw, int normalization);
- /* LISP: (snd-resonvc SOUND SOUND ANYNUM FIXNUM) */
diff --git a/lib-src/libnyquist/tran/resonvv.alg b/lib-src/libnyquist/tran/resonvv.alg
deleted file mode 100644
index 4f6f429..0000000
--- a/lib-src/libnyquist/tran/resonvv.alg
+++ /dev/null
@@ -1,47 +0,0 @@
-(RESONVV-ALG
-(NAME "resonvv")
-(ARGUMENTS ("sound_type" "s1") ("sound_type" "hz1") ("sound_type" "bw")
- ("int" "normalization"))
-(INLINE-INTERPOLATION T)
-(ALWAYS-SCALE hz1 bw)
-(START (MAX s1 hz1 bw))
-(TERMINATE (MIN s1 hz1 bw))
-(LOGICAL-STOP (MIN s1))
-(SAMPLE-RATE (MAX s1))
-(STEP-FUNCTION hz1 bw)
-(STATE ("double" "scale1" "s1->scale")
- ("double" "c3co" "0.0")
- ("double" "c3p1" "0.0")
- ("double" "c3t4" "0.0")
- ("double" "omc3" "0.0")
- ("double" "coshz" "0.0")
- ("double" "c2" "0.0")
- ("double" "c1" "0.0")
- ("boolean" "recompute" "false")
- ("int" "normalization" "normalization")
- ("double" "y1" "0.0")
- ("double" "y2" "0.0;
- hz1->scale = (sample_type) (hz1->scale * (PI2 / s1->sr));
- bw->scale = (sample_type) (bw->scale * (-PI2 / s1->sr));"))
-(DEPENDS ("c3co" "bw" "exp(bw)")
- ("c3p1" "bw" "c3co + 1.0")
- ("c3t4" "bw" "c3co * 4.0")
- ("omc3" "bw" "1.0 - c3co")
- ("recompute" "bw" "true")
- ("coshz" "hz1" "cos(hz1)")
- ("recompute" "hz1" "true"))
-(JOINT-DEPENDENCY (("hz1" "bw")
-"if (recompute) {"
-" recompute = false;"
-" c2 = c3t4 * coshz / c3p1;"
-" c1 = (normalization == 0 ? 1.0 :"
-" (normalization == 1 ? omc3 * sqrt(1.0 - c2 * c2 / c3t4) :"
-" sqrt(c3p1 * c3p1 - c2 * c2) * omc3 / c3p1)) * scale1;"
-"}"))
-(CONSTANT "c1" "c2" "c3co" "coshz" "c3p1" "c3t4" "omc3"
- "normalization" "scale1")
-(FORCE-INTO-REGISTER recompute) ;c3t4 c3p1 normalization omc3 scale1
-(INNER-LOOP "{ double y0 = c1 * s1 + c2 * y1 - c3co * y2;
- output = (sample_type) y0;
- y2 = y1; y1 = y0; }")
-)
diff --git a/lib-src/libnyquist/tran/resonvv.c b/lib-src/libnyquist/tran/resonvv.c
deleted file mode 100644
index 9958117..0000000
--- a/lib-src/libnyquist/tran/resonvv.c
+++ /dev/null
@@ -1,3251 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "resonvv.h"
-
-void resonvv_free();
-
-
-typedef struct resonvv_susp_struct {
- snd_susp_node susp;
- boolean started;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type s1;
- long s1_cnt;
- sample_block_values_type s1_ptr;
- sound_type hz1;
- long hz1_cnt;
- sample_block_values_type hz1_ptr;
-
- /* support for interpolation of hz1 */
- sample_type hz1_x1_sample;
- double hz1_pHaSe;
- double hz1_pHaSe_iNcR;
-
- /* support for ramp between samples of hz1 */
- double output_per_hz1;
- long hz1_n;
- sound_type bw;
- long bw_cnt;
- sample_block_values_type bw_ptr;
-
- /* support for interpolation of bw */
- sample_type bw_x1_sample;
- double bw_pHaSe;
- double bw_pHaSe_iNcR;
-
- /* support for ramp between samples of bw */
- double output_per_bw;
- long bw_n;
-
- double scale1;
- double c3co;
- double c3p1;
- double c3t4;
- double omc3;
- double coshz;
- double c2;
- double c1;
- boolean recompute;
- int normalization;
- double y1;
- double y2;
-} resonvv_susp_node, *resonvv_susp_type;
-
-
-void resonvv_nss_fetch(register resonvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double scale1_reg;
- register double c3co_reg;
- register double c3p1_reg;
- register double c3t4_reg;
- register double omc3_reg;
- register double coshz_reg;
- register double c2_reg;
- register double c1_reg;
- register boolean recompute_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register sample_type bw_scale_reg = susp->bw->scale;
- register sample_block_values_type bw_ptr_reg;
- register sample_type hz1_scale_reg = susp->hz1->scale;
- register sample_block_values_type hz1_ptr_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "resonvv_nss_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past the hz1 input sample block: */
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
- togo = MIN(togo, susp->hz1_cnt);
-
- /* don't run past the bw input sample block: */
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
- togo = MIN(togo, susp->bw_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- scale1_reg = susp->scale1;
- c3co_reg = susp->c3co;
- c3p1_reg = susp->c3p1;
- c3t4_reg = susp->c3t4;
- omc3_reg = susp->omc3;
- coshz_reg = susp->coshz;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- recompute_reg = susp->recompute;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- bw_ptr_reg = susp->bw_ptr;
- hz1_ptr_reg = susp->hz1_ptr;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- c3co_reg = exp((bw_scale_reg * *bw_ptr_reg++));
- c3p1_reg = c3co_reg + 1.0;
- c3t4_reg = c3co_reg * 4.0;
- omc3_reg = 1.0 - c3co_reg;
- recompute_reg = true;
- coshz_reg = cos((hz1_scale_reg * *hz1_ptr_reg++));
- recompute_reg = true;
- if (recompute_reg) {
- recompute_reg = false;
- c2_reg = c3t4_reg * coshz_reg / c3p1_reg;
- c1_reg = (normalization_reg == 0 ? 1.0 :
- (normalization_reg == 1 ? omc3_reg * sqrt(1.0 - c2_reg * c2_reg / c3t4_reg) :
- sqrt(c3p1_reg * c3p1_reg - c2_reg * c2_reg) * omc3_reg / c3p1_reg)) * scale1_reg;
- }
-{ double y0 = c1_reg * *s1_ptr_reg++ + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0; };
- } while (--n); /* inner loop */
-
- susp->recompute = recompute_reg;
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- /* using bw_ptr_reg is a bad idea on RS/6000: */
- susp->bw_ptr += togo;
- /* using hz1_ptr_reg is a bad idea on RS/6000: */
- susp->hz1_ptr += togo;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp_took(hz1_cnt, togo);
- susp_took(bw_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* resonvv_nss_fetch */
-
-
-void resonvv_nsi_fetch(register resonvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double scale1_reg;
- register double c3co_reg;
- register double c3p1_reg;
- register double c3t4_reg;
- register double omc3_reg;
- register double coshz_reg;
- register double c2_reg;
- register double c1_reg;
- register boolean recompute_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register double bw_pHaSe_iNcR_rEg = susp->bw_pHaSe_iNcR;
- register double bw_pHaSe_ReG;
- register sample_type bw_x1_sample_reg;
- register sample_type hz1_scale_reg = susp->hz1->scale;
- register sample_block_values_type hz1_ptr_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "resonvv_nsi_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
- susp->bw_x1_sample = susp_fetch_sample(bw, bw_ptr, bw_cnt);
- susp->c3co = exp(susp->bw_x1_sample);
- susp->c3p1 = susp->c3co + 1.0;
- susp->c3t4 = susp->c3co * 4.0;
- susp->omc3 = 1.0 - susp->c3co;
- susp->recompute = true;
- }
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past the hz1 input sample block: */
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
- togo = MIN(togo, susp->hz1_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- scale1_reg = susp->scale1;
- c3co_reg = susp->c3co;
- c3p1_reg = susp->c3p1;
- c3t4_reg = susp->c3t4;
- omc3_reg = susp->omc3;
- coshz_reg = susp->coshz;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- recompute_reg = susp->recompute;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- bw_pHaSe_ReG = susp->bw_pHaSe;
- bw_x1_sample_reg = susp->bw_x1_sample;
- hz1_ptr_reg = susp->hz1_ptr;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- if (bw_pHaSe_ReG >= 1.0) {
-/* fixup-depends bw */
- /* pick up next sample as bw_x1_sample: */
- susp->bw_ptr++;
- susp_took(bw_cnt, 1);
- bw_pHaSe_ReG -= 1.0;
- susp_check_term_samples_break(bw, bw_ptr, bw_cnt, bw_x1_sample_reg);
- bw_x1_sample_reg = susp_current_sample(bw, bw_ptr);
- c3co_reg = susp->c3co = exp(bw_x1_sample_reg);
- c3p1_reg = susp->c3p1 = c3co_reg + 1.0;
- c3t4_reg = susp->c3t4 = c3co_reg * 4.0;
- omc3_reg = susp->omc3 = 1.0 - c3co_reg;
- recompute_reg = susp->recompute = true;
- }
- coshz_reg = cos((hz1_scale_reg * *hz1_ptr_reg++));
- recompute_reg = true;
- if (recompute_reg) {
- recompute_reg = false;
- c2_reg = c3t4_reg * coshz_reg / c3p1_reg;
- c1_reg = (normalization_reg == 0 ? 1.0 :
- (normalization_reg == 1 ? omc3_reg * sqrt(1.0 - c2_reg * c2_reg / c3t4_reg) :
- sqrt(c3p1_reg * c3p1_reg - c2_reg * c2_reg) * omc3_reg / c3p1_reg)) * scale1_reg;
- }
-{ double y0 = c1_reg * *s1_ptr_reg++ + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0; };
- bw_pHaSe_ReG += bw_pHaSe_iNcR_rEg;
- } while (--n); /* inner loop */
-
- togo -= n;
- susp->recompute = recompute_reg;
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- susp->bw_pHaSe = bw_pHaSe_ReG;
- susp->bw_x1_sample = bw_x1_sample_reg;
- /* using hz1_ptr_reg is a bad idea on RS/6000: */
- susp->hz1_ptr += togo;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp_took(hz1_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* resonvv_nsi_fetch */
-
-
-void resonvv_nsr_fetch(register resonvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- sample_type bw_val;
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double scale1_reg;
- register double c3co_reg;
- register double c3p1_reg;
- register double c3t4_reg;
- register double omc3_reg;
- register double coshz_reg;
- register double c2_reg;
- register double c1_reg;
- register boolean recompute_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register sample_type hz1_scale_reg = susp->hz1->scale;
- register sample_block_values_type hz1_ptr_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "resonvv_nsr_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp->bw_pHaSe = 1.0;
- }
-
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past the hz1 input sample block: */
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
- togo = MIN(togo, susp->hz1_cnt);
-
- /* grab next bw_x1_sample when phase goes past 1.0; */
- /* use bw_n (computed below) to avoid roundoff errors: */
- if (susp->bw_n <= 0) {
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
- susp->bw_x1_sample = susp_fetch_sample(bw, bw_ptr, bw_cnt);
- susp->bw_pHaSe -= 1.0;
- /* bw_n gets number of samples before phase exceeds 1.0: */
- susp->bw_n = (long) ((1.0 - susp->bw_pHaSe) *
- susp->output_per_bw);
- susp->c3co = exp(susp->bw_x1_sample);
- susp->c3p1 = susp->c3co + 1.0;
- susp->c3t4 = susp->c3co * 4.0;
- susp->omc3 = 1.0 - susp->c3co;
- susp->recompute = true;
- }
- togo = MIN(togo, susp->bw_n);
- bw_val = susp->bw_x1_sample;
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- scale1_reg = susp->scale1;
- c3co_reg = susp->c3co;
- c3p1_reg = susp->c3p1;
- c3t4_reg = susp->c3t4;
- omc3_reg = susp->omc3;
- coshz_reg = susp->coshz;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- recompute_reg = susp->recompute;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- hz1_ptr_reg = susp->hz1_ptr;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- coshz_reg = cos((hz1_scale_reg * *hz1_ptr_reg++));
- recompute_reg = true;
- if (recompute_reg) {
- recompute_reg = false;
- c2_reg = c3t4_reg * coshz_reg / c3p1_reg;
- c1_reg = (normalization_reg == 0 ? 1.0 :
- (normalization_reg == 1 ? omc3_reg * sqrt(1.0 - c2_reg * c2_reg / c3t4_reg) :
- sqrt(c3p1_reg * c3p1_reg - c2_reg * c2_reg) * omc3_reg / c3p1_reg)) * scale1_reg;
- }
-{ double y0 = c1_reg * *s1_ptr_reg++ + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0; };
- } while (--n); /* inner loop */
-
- susp->recompute = recompute_reg;
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- /* using hz1_ptr_reg is a bad idea on RS/6000: */
- susp->hz1_ptr += togo;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp_took(hz1_cnt, togo);
- susp->bw_pHaSe += togo * susp->bw_pHaSe_iNcR;
- susp->bw_n -= togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* resonvv_nsr_fetch */
-
-
-void resonvv_nis_fetch(register resonvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double scale1_reg;
- register double c3co_reg;
- register double c3p1_reg;
- register double c3t4_reg;
- register double omc3_reg;
- register double coshz_reg;
- register double c2_reg;
- register double c1_reg;
- register boolean recompute_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register sample_type bw_scale_reg = susp->bw->scale;
- register sample_block_values_type bw_ptr_reg;
- register double hz1_pHaSe_iNcR_rEg = susp->hz1_pHaSe_iNcR;
- register double hz1_pHaSe_ReG;
- register sample_type hz1_x1_sample_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "resonvv_nis_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
- susp->hz1_x1_sample = susp_fetch_sample(hz1, hz1_ptr, hz1_cnt);
- susp->coshz = cos(susp->hz1_x1_sample);
- susp->recompute = true;
- }
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past the bw input sample block: */
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
- togo = MIN(togo, susp->bw_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- scale1_reg = susp->scale1;
- c3co_reg = susp->c3co;
- c3p1_reg = susp->c3p1;
- c3t4_reg = susp->c3t4;
- omc3_reg = susp->omc3;
- coshz_reg = susp->coshz;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- recompute_reg = susp->recompute;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- bw_ptr_reg = susp->bw_ptr;
- hz1_pHaSe_ReG = susp->hz1_pHaSe;
- hz1_x1_sample_reg = susp->hz1_x1_sample;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- if (hz1_pHaSe_ReG >= 1.0) {
-/* fixup-depends hz1 */
- /* pick up next sample as hz1_x1_sample: */
- susp->hz1_ptr++;
- susp_took(hz1_cnt, 1);
- hz1_pHaSe_ReG -= 1.0;
- susp_check_term_samples_break(hz1, hz1_ptr, hz1_cnt, hz1_x1_sample_reg);
- hz1_x1_sample_reg = susp_current_sample(hz1, hz1_ptr);
- coshz_reg = susp->coshz = cos(hz1_x1_sample_reg);
- recompute_reg = susp->recompute = true;
- }
- c3co_reg = exp((bw_scale_reg * *bw_ptr_reg++));
- c3p1_reg = c3co_reg + 1.0;
- c3t4_reg = c3co_reg * 4.0;
- omc3_reg = 1.0 - c3co_reg;
- recompute_reg = true;
- if (recompute_reg) {
- recompute_reg = false;
- c2_reg = c3t4_reg * coshz_reg / c3p1_reg;
- c1_reg = (normalization_reg == 0 ? 1.0 :
- (normalization_reg == 1 ? omc3_reg * sqrt(1.0 - c2_reg * c2_reg / c3t4_reg) :
- sqrt(c3p1_reg * c3p1_reg - c2_reg * c2_reg) * omc3_reg / c3p1_reg)) * scale1_reg;
- }
-{ double y0 = c1_reg * *s1_ptr_reg++ + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0; };
- hz1_pHaSe_ReG += hz1_pHaSe_iNcR_rEg;
- } while (--n); /* inner loop */
-
- togo -= n;
- susp->recompute = recompute_reg;
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- /* using bw_ptr_reg is a bad idea on RS/6000: */
- susp->bw_ptr += togo;
- susp->hz1_pHaSe = hz1_pHaSe_ReG;
- susp->hz1_x1_sample = hz1_x1_sample_reg;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp_took(bw_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* resonvv_nis_fetch */
-
-
-void resonvv_nii_fetch(register resonvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double scale1_reg;
- register double c3co_reg;
- register double c3p1_reg;
- register double c3t4_reg;
- register double omc3_reg;
- register double coshz_reg;
- register double c2_reg;
- register double c1_reg;
- register boolean recompute_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register double bw_pHaSe_iNcR_rEg = susp->bw_pHaSe_iNcR;
- register double bw_pHaSe_ReG;
- register sample_type bw_x1_sample_reg;
- register double hz1_pHaSe_iNcR_rEg = susp->hz1_pHaSe_iNcR;
- register double hz1_pHaSe_ReG;
- register sample_type hz1_x1_sample_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "resonvv_nii_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
- susp->hz1_x1_sample = susp_fetch_sample(hz1, hz1_ptr, hz1_cnt);
- susp->coshz = cos(susp->hz1_x1_sample);
- susp->recompute = true;
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
- susp->bw_x1_sample = susp_fetch_sample(bw, bw_ptr, bw_cnt);
- susp->c3co = exp(susp->bw_x1_sample);
- susp->c3p1 = susp->c3co + 1.0;
- susp->c3t4 = susp->c3co * 4.0;
- susp->omc3 = 1.0 - susp->c3co;
- susp->recompute = true;
- }
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- scale1_reg = susp->scale1;
- c3co_reg = susp->c3co;
- c3p1_reg = susp->c3p1;
- c3t4_reg = susp->c3t4;
- omc3_reg = susp->omc3;
- coshz_reg = susp->coshz;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- recompute_reg = susp->recompute;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- bw_pHaSe_ReG = susp->bw_pHaSe;
- bw_x1_sample_reg = susp->bw_x1_sample;
- hz1_pHaSe_ReG = susp->hz1_pHaSe;
- hz1_x1_sample_reg = susp->hz1_x1_sample;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- if (hz1_pHaSe_ReG >= 1.0) {
-/* fixup-depends hz1 */
- /* pick up next sample as hz1_x1_sample: */
- susp->hz1_ptr++;
- susp_took(hz1_cnt, 1);
- hz1_pHaSe_ReG -= 1.0;
- susp_check_term_samples_break(hz1, hz1_ptr, hz1_cnt, hz1_x1_sample_reg);
- hz1_x1_sample_reg = susp_current_sample(hz1, hz1_ptr);
- coshz_reg = susp->coshz = cos(hz1_x1_sample_reg);
- recompute_reg = susp->recompute = true;
- }
- if (bw_pHaSe_ReG >= 1.0) {
-/* fixup-depends bw */
- /* pick up next sample as bw_x1_sample: */
- susp->bw_ptr++;
- susp_took(bw_cnt, 1);
- bw_pHaSe_ReG -= 1.0;
- susp_check_term_samples_break(bw, bw_ptr, bw_cnt, bw_x1_sample_reg);
- bw_x1_sample_reg = susp_current_sample(bw, bw_ptr);
- c3co_reg = susp->c3co = exp(bw_x1_sample_reg);
- c3p1_reg = susp->c3p1 = c3co_reg + 1.0;
- c3t4_reg = susp->c3t4 = c3co_reg * 4.0;
- omc3_reg = susp->omc3 = 1.0 - c3co_reg;
- recompute_reg = susp->recompute = true;
- }
- if (recompute_reg) {
- recompute_reg = false;
- c2_reg = c3t4_reg * coshz_reg / c3p1_reg;
- c1_reg = (normalization_reg == 0 ? 1.0 :
- (normalization_reg == 1 ? omc3_reg * sqrt(1.0 - c2_reg * c2_reg / c3t4_reg) :
- sqrt(c3p1_reg * c3p1_reg - c2_reg * c2_reg) * omc3_reg / c3p1_reg)) * scale1_reg;
- }
-{ double y0 = c1_reg * *s1_ptr_reg++ + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0; };
- hz1_pHaSe_ReG += hz1_pHaSe_iNcR_rEg;
- bw_pHaSe_ReG += bw_pHaSe_iNcR_rEg;
- } while (--n); /* inner loop */
-
- togo -= n;
- susp->recompute = recompute_reg;
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- susp->bw_pHaSe = bw_pHaSe_ReG;
- susp->bw_x1_sample = bw_x1_sample_reg;
- susp->hz1_pHaSe = hz1_pHaSe_ReG;
- susp->hz1_x1_sample = hz1_x1_sample_reg;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* resonvv_nii_fetch */
-
-
-void resonvv_nir_fetch(register resonvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- sample_type bw_val;
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double scale1_reg;
- register double c3co_reg;
- register double c3p1_reg;
- register double c3t4_reg;
- register double omc3_reg;
- register double coshz_reg;
- register double c2_reg;
- register double c1_reg;
- register boolean recompute_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register double hz1_pHaSe_iNcR_rEg = susp->hz1_pHaSe_iNcR;
- register double hz1_pHaSe_ReG;
- register sample_type hz1_x1_sample_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "resonvv_nir_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
- susp->hz1_x1_sample = susp_fetch_sample(hz1, hz1_ptr, hz1_cnt);
- susp->coshz = cos(susp->hz1_x1_sample);
- susp->recompute = true;
- susp->bw_pHaSe = 1.0;
- }
-
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* grab next bw_x1_sample when phase goes past 1.0; */
- /* use bw_n (computed below) to avoid roundoff errors: */
- if (susp->bw_n <= 0) {
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
- susp->bw_x1_sample = susp_fetch_sample(bw, bw_ptr, bw_cnt);
- susp->bw_pHaSe -= 1.0;
- /* bw_n gets number of samples before phase exceeds 1.0: */
- susp->bw_n = (long) ((1.0 - susp->bw_pHaSe) *
- susp->output_per_bw);
- susp->c3co = exp(susp->bw_x1_sample);
- susp->c3p1 = susp->c3co + 1.0;
- susp->c3t4 = susp->c3co * 4.0;
- susp->omc3 = 1.0 - susp->c3co;
- susp->recompute = true;
- }
- togo = MIN(togo, susp->bw_n);
- bw_val = susp->bw_x1_sample;
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- scale1_reg = susp->scale1;
- c3co_reg = susp->c3co;
- c3p1_reg = susp->c3p1;
- c3t4_reg = susp->c3t4;
- omc3_reg = susp->omc3;
- coshz_reg = susp->coshz;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- recompute_reg = susp->recompute;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- hz1_pHaSe_ReG = susp->hz1_pHaSe;
- hz1_x1_sample_reg = susp->hz1_x1_sample;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- if (hz1_pHaSe_ReG >= 1.0) {
-/* fixup-depends hz1 */
- /* pick up next sample as hz1_x1_sample: */
- susp->hz1_ptr++;
- susp_took(hz1_cnt, 1);
- hz1_pHaSe_ReG -= 1.0;
- susp_check_term_samples_break(hz1, hz1_ptr, hz1_cnt, hz1_x1_sample_reg);
- hz1_x1_sample_reg = susp_current_sample(hz1, hz1_ptr);
- coshz_reg = susp->coshz = cos(hz1_x1_sample_reg);
- recompute_reg = susp->recompute = true;
- }
- if (recompute_reg) {
- recompute_reg = false;
- c2_reg = c3t4_reg * coshz_reg / c3p1_reg;
- c1_reg = (normalization_reg == 0 ? 1.0 :
- (normalization_reg == 1 ? omc3_reg * sqrt(1.0 - c2_reg * c2_reg / c3t4_reg) :
- sqrt(c3p1_reg * c3p1_reg - c2_reg * c2_reg) * omc3_reg / c3p1_reg)) * scale1_reg;
- }
-{ double y0 = c1_reg * *s1_ptr_reg++ + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0; };
- hz1_pHaSe_ReG += hz1_pHaSe_iNcR_rEg;
- } while (--n); /* inner loop */
-
- togo -= n;
- susp->recompute = recompute_reg;
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- susp->hz1_pHaSe = hz1_pHaSe_ReG;
- susp->hz1_x1_sample = hz1_x1_sample_reg;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp->bw_pHaSe += togo * susp->bw_pHaSe_iNcR;
- susp->bw_n -= togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* resonvv_nir_fetch */
-
-
-void resonvv_nrs_fetch(register resonvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- sample_type hz1_val;
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double scale1_reg;
- register double c3co_reg;
- register double c3p1_reg;
- register double c3t4_reg;
- register double omc3_reg;
- register double coshz_reg;
- register double c2_reg;
- register double c1_reg;
- register boolean recompute_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register sample_type bw_scale_reg = susp->bw->scale;
- register sample_block_values_type bw_ptr_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "resonvv_nrs_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp->hz1_pHaSe = 1.0;
- }
-
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* grab next hz1_x1_sample when phase goes past 1.0; */
- /* use hz1_n (computed below) to avoid roundoff errors: */
- if (susp->hz1_n <= 0) {
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
- susp->hz1_x1_sample = susp_fetch_sample(hz1, hz1_ptr, hz1_cnt);
- susp->hz1_pHaSe -= 1.0;
- /* hz1_n gets number of samples before phase exceeds 1.0: */
- susp->hz1_n = (long) ((1.0 - susp->hz1_pHaSe) *
- susp->output_per_hz1);
- susp->coshz = cos(susp->hz1_x1_sample);
- susp->recompute = true;
- }
- togo = MIN(togo, susp->hz1_n);
- hz1_val = susp->hz1_x1_sample;
- /* don't run past the bw input sample block: */
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
- togo = MIN(togo, susp->bw_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- scale1_reg = susp->scale1;
- c3co_reg = susp->c3co;
- c3p1_reg = susp->c3p1;
- c3t4_reg = susp->c3t4;
- omc3_reg = susp->omc3;
- coshz_reg = susp->coshz;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- recompute_reg = susp->recompute;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- bw_ptr_reg = susp->bw_ptr;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- c3co_reg = exp((bw_scale_reg * *bw_ptr_reg++));
- c3p1_reg = c3co_reg + 1.0;
- c3t4_reg = c3co_reg * 4.0;
- omc3_reg = 1.0 - c3co_reg;
- recompute_reg = true;
- if (recompute_reg) {
- recompute_reg = false;
- c2_reg = c3t4_reg * coshz_reg / c3p1_reg;
- c1_reg = (normalization_reg == 0 ? 1.0 :
- (normalization_reg == 1 ? omc3_reg * sqrt(1.0 - c2_reg * c2_reg / c3t4_reg) :
- sqrt(c3p1_reg * c3p1_reg - c2_reg * c2_reg) * omc3_reg / c3p1_reg)) * scale1_reg;
- }
-{ double y0 = c1_reg * *s1_ptr_reg++ + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0; };
- } while (--n); /* inner loop */
-
- susp->recompute = recompute_reg;
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- /* using bw_ptr_reg is a bad idea on RS/6000: */
- susp->bw_ptr += togo;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp->hz1_pHaSe += togo * susp->hz1_pHaSe_iNcR;
- susp->hz1_n -= togo;
- susp_took(bw_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* resonvv_nrs_fetch */
-
-
-void resonvv_nri_fetch(register resonvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- sample_type hz1_val;
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double scale1_reg;
- register double c3co_reg;
- register double c3p1_reg;
- register double c3t4_reg;
- register double omc3_reg;
- register double coshz_reg;
- register double c2_reg;
- register double c1_reg;
- register boolean recompute_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register double bw_pHaSe_iNcR_rEg = susp->bw_pHaSe_iNcR;
- register double bw_pHaSe_ReG;
- register sample_type bw_x1_sample_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "resonvv_nri_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp->hz1_pHaSe = 1.0;
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
- susp->bw_x1_sample = susp_fetch_sample(bw, bw_ptr, bw_cnt);
- susp->c3co = exp(susp->bw_x1_sample);
- susp->c3p1 = susp->c3co + 1.0;
- susp->c3t4 = susp->c3co * 4.0;
- susp->omc3 = 1.0 - susp->c3co;
- susp->recompute = true;
- }
-
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* grab next hz1_x1_sample when phase goes past 1.0; */
- /* use hz1_n (computed below) to avoid roundoff errors: */
- if (susp->hz1_n <= 0) {
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
- susp->hz1_x1_sample = susp_fetch_sample(hz1, hz1_ptr, hz1_cnt);
- susp->hz1_pHaSe -= 1.0;
- /* hz1_n gets number of samples before phase exceeds 1.0: */
- susp->hz1_n = (long) ((1.0 - susp->hz1_pHaSe) *
- susp->output_per_hz1);
- susp->coshz = cos(susp->hz1_x1_sample);
- susp->recompute = true;
- }
- togo = MIN(togo, susp->hz1_n);
- hz1_val = susp->hz1_x1_sample;
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- scale1_reg = susp->scale1;
- c3co_reg = susp->c3co;
- c3p1_reg = susp->c3p1;
- c3t4_reg = susp->c3t4;
- omc3_reg = susp->omc3;
- coshz_reg = susp->coshz;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- recompute_reg = susp->recompute;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- bw_pHaSe_ReG = susp->bw_pHaSe;
- bw_x1_sample_reg = susp->bw_x1_sample;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- if (bw_pHaSe_ReG >= 1.0) {
-/* fixup-depends bw */
- /* pick up next sample as bw_x1_sample: */
- susp->bw_ptr++;
- susp_took(bw_cnt, 1);
- bw_pHaSe_ReG -= 1.0;
- susp_check_term_samples_break(bw, bw_ptr, bw_cnt, bw_x1_sample_reg);
- bw_x1_sample_reg = susp_current_sample(bw, bw_ptr);
- c3co_reg = susp->c3co = exp(bw_x1_sample_reg);
- c3p1_reg = susp->c3p1 = c3co_reg + 1.0;
- c3t4_reg = susp->c3t4 = c3co_reg * 4.0;
- omc3_reg = susp->omc3 = 1.0 - c3co_reg;
- recompute_reg = susp->recompute = true;
- }
- if (recompute_reg) {
- recompute_reg = false;
- c2_reg = c3t4_reg * coshz_reg / c3p1_reg;
- c1_reg = (normalization_reg == 0 ? 1.0 :
- (normalization_reg == 1 ? omc3_reg * sqrt(1.0 - c2_reg * c2_reg / c3t4_reg) :
- sqrt(c3p1_reg * c3p1_reg - c2_reg * c2_reg) * omc3_reg / c3p1_reg)) * scale1_reg;
- }
-{ double y0 = c1_reg * *s1_ptr_reg++ + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0; };
- bw_pHaSe_ReG += bw_pHaSe_iNcR_rEg;
- } while (--n); /* inner loop */
-
- togo -= n;
- susp->recompute = recompute_reg;
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- susp->bw_pHaSe = bw_pHaSe_ReG;
- susp->bw_x1_sample = bw_x1_sample_reg;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp->hz1_pHaSe += togo * susp->hz1_pHaSe_iNcR;
- susp->hz1_n -= togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* resonvv_nri_fetch */
-
-
-void resonvv_nrr_fetch(register resonvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- sample_type hz1_val;
- sample_type bw_val;
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double c3co_reg;
- register double c2_reg;
- register double c1_reg;
- register boolean recompute_reg;
- register double y1_reg;
- register double y2_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "resonvv_nrr_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp->hz1_pHaSe = 1.0;
- susp->bw_pHaSe = 1.0;
- }
-
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
-
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* grab next hz1_x1_sample when phase goes past 1.0; */
- /* use hz1_n (computed below) to avoid roundoff errors: */
- if (susp->hz1_n <= 0) {
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
- susp->hz1_x1_sample = susp_fetch_sample(hz1, hz1_ptr, hz1_cnt);
- susp->hz1_pHaSe -= 1.0;
- /* hz1_n gets number of samples before phase exceeds 1.0: */
- susp->hz1_n = (long) ((1.0 - susp->hz1_pHaSe) *
- susp->output_per_hz1);
- susp->coshz = cos(susp->hz1_x1_sample);
- susp->recompute = true;
- }
- togo = MIN(togo, susp->hz1_n);
- hz1_val = susp->hz1_x1_sample;
- /* grab next bw_x1_sample when phase goes past 1.0; */
- /* use bw_n (computed below) to avoid roundoff errors: */
- if (susp->bw_n <= 0) {
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
- susp->bw_x1_sample = susp_fetch_sample(bw, bw_ptr, bw_cnt);
- susp->bw_pHaSe -= 1.0;
- /* bw_n gets number of samples before phase exceeds 1.0: */
- susp->bw_n = (long) ((1.0 - susp->bw_pHaSe) *
- susp->output_per_bw);
- susp->c3co = exp(susp->bw_x1_sample);
- susp->c3p1 = susp->c3co + 1.0;
- susp->c3t4 = susp->c3co * 4.0;
- susp->omc3 = 1.0 - susp->c3co;
- susp->recompute = true;
- }
- togo = MIN(togo, susp->bw_n);
- bw_val = susp->bw_x1_sample;
- if (susp->recompute) {
- susp->recompute = false;
- susp->c2 = susp->c3t4 * susp->coshz / susp->c3p1;
- susp->c1 = (susp->normalization == 0 ? 1.0 :
- (susp->normalization == 1 ? susp->omc3 * sqrt(1.0 - susp->c2 * susp->c2 / susp->c3t4) :
- sqrt(susp->c3p1 * susp->c3p1 - susp->c2 * susp->c2) * susp->omc3 / susp->c3p1)) * susp->scale1;
- }
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- c3co_reg = susp->c3co;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- recompute_reg = susp->recompute;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-{ double y0 = c1_reg * *s1_ptr_reg++ + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0; };
- } while (--n); /* inner loop */
-
- susp->recompute = recompute_reg;
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp->hz1_pHaSe += togo * susp->hz1_pHaSe_iNcR;
- susp->hz1_n -= togo;
- susp->bw_pHaSe += togo * susp->bw_pHaSe_iNcR;
- susp->bw_n -= togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* resonvv_nrr_fetch */
-
-
-void resonvv_sss_fetch(register resonvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double scale1_reg;
- register double c3co_reg;
- register double c3p1_reg;
- register double c3t4_reg;
- register double omc3_reg;
- register double coshz_reg;
- register double c2_reg;
- register double c1_reg;
- register boolean recompute_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register sample_type bw_scale_reg = susp->bw->scale;
- register sample_block_values_type bw_ptr_reg;
- register sample_type hz1_scale_reg = susp->hz1->scale;
- register sample_block_values_type hz1_ptr_reg;
- register sample_type s1_scale_reg = susp->s1->scale;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "resonvv_sss_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past the hz1 input sample block: */
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
- togo = MIN(togo, susp->hz1_cnt);
-
- /* don't run past the bw input sample block: */
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
- togo = MIN(togo, susp->bw_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- scale1_reg = susp->scale1;
- c3co_reg = susp->c3co;
- c3p1_reg = susp->c3p1;
- c3t4_reg = susp->c3t4;
- omc3_reg = susp->omc3;
- coshz_reg = susp->coshz;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- recompute_reg = susp->recompute;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- bw_ptr_reg = susp->bw_ptr;
- hz1_ptr_reg = susp->hz1_ptr;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- c3co_reg = exp((bw_scale_reg * *bw_ptr_reg++));
- c3p1_reg = c3co_reg + 1.0;
- c3t4_reg = c3co_reg * 4.0;
- omc3_reg = 1.0 - c3co_reg;
- recompute_reg = true;
- coshz_reg = cos((hz1_scale_reg * *hz1_ptr_reg++));
- recompute_reg = true;
- if (recompute_reg) {
- recompute_reg = false;
- c2_reg = c3t4_reg * coshz_reg / c3p1_reg;
- c1_reg = (normalization_reg == 0 ? 1.0 :
- (normalization_reg == 1 ? omc3_reg * sqrt(1.0 - c2_reg * c2_reg / c3t4_reg) :
- sqrt(c3p1_reg * c3p1_reg - c2_reg * c2_reg) * omc3_reg / c3p1_reg)) * scale1_reg;
- }
-{ double y0 = c1_reg * (s1_scale_reg * *s1_ptr_reg++) + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0; };
- } while (--n); /* inner loop */
-
- susp->recompute = recompute_reg;
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- /* using bw_ptr_reg is a bad idea on RS/6000: */
- susp->bw_ptr += togo;
- /* using hz1_ptr_reg is a bad idea on RS/6000: */
- susp->hz1_ptr += togo;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp_took(hz1_cnt, togo);
- susp_took(bw_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* resonvv_sss_fetch */
-
-
-void resonvv_ssi_fetch(register resonvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double scale1_reg;
- register double c3co_reg;
- register double c3p1_reg;
- register double c3t4_reg;
- register double omc3_reg;
- register double coshz_reg;
- register double c2_reg;
- register double c1_reg;
- register boolean recompute_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register double bw_pHaSe_iNcR_rEg = susp->bw_pHaSe_iNcR;
- register double bw_pHaSe_ReG;
- register sample_type bw_x1_sample_reg;
- register sample_type hz1_scale_reg = susp->hz1->scale;
- register sample_block_values_type hz1_ptr_reg;
- register sample_type s1_scale_reg = susp->s1->scale;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "resonvv_ssi_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
- susp->bw_x1_sample = susp_fetch_sample(bw, bw_ptr, bw_cnt);
- susp->c3co = exp(susp->bw_x1_sample);
- susp->c3p1 = susp->c3co + 1.0;
- susp->c3t4 = susp->c3co * 4.0;
- susp->omc3 = 1.0 - susp->c3co;
- susp->recompute = true;
- }
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past the hz1 input sample block: */
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
- togo = MIN(togo, susp->hz1_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- scale1_reg = susp->scale1;
- c3co_reg = susp->c3co;
- c3p1_reg = susp->c3p1;
- c3t4_reg = susp->c3t4;
- omc3_reg = susp->omc3;
- coshz_reg = susp->coshz;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- recompute_reg = susp->recompute;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- bw_pHaSe_ReG = susp->bw_pHaSe;
- bw_x1_sample_reg = susp->bw_x1_sample;
- hz1_ptr_reg = susp->hz1_ptr;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- if (bw_pHaSe_ReG >= 1.0) {
-/* fixup-depends bw */
- /* pick up next sample as bw_x1_sample: */
- susp->bw_ptr++;
- susp_took(bw_cnt, 1);
- bw_pHaSe_ReG -= 1.0;
- susp_check_term_samples_break(bw, bw_ptr, bw_cnt, bw_x1_sample_reg);
- bw_x1_sample_reg = susp_current_sample(bw, bw_ptr);
- c3co_reg = susp->c3co = exp(bw_x1_sample_reg);
- c3p1_reg = susp->c3p1 = c3co_reg + 1.0;
- c3t4_reg = susp->c3t4 = c3co_reg * 4.0;
- omc3_reg = susp->omc3 = 1.0 - c3co_reg;
- recompute_reg = susp->recompute = true;
- }
- coshz_reg = cos((hz1_scale_reg * *hz1_ptr_reg++));
- recompute_reg = true;
- if (recompute_reg) {
- recompute_reg = false;
- c2_reg = c3t4_reg * coshz_reg / c3p1_reg;
- c1_reg = (normalization_reg == 0 ? 1.0 :
- (normalization_reg == 1 ? omc3_reg * sqrt(1.0 - c2_reg * c2_reg / c3t4_reg) :
- sqrt(c3p1_reg * c3p1_reg - c2_reg * c2_reg) * omc3_reg / c3p1_reg)) * scale1_reg;
- }
-{ double y0 = c1_reg * (s1_scale_reg * *s1_ptr_reg++) + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0; };
- bw_pHaSe_ReG += bw_pHaSe_iNcR_rEg;
- } while (--n); /* inner loop */
-
- togo -= n;
- susp->recompute = recompute_reg;
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- susp->bw_pHaSe = bw_pHaSe_ReG;
- susp->bw_x1_sample = bw_x1_sample_reg;
- /* using hz1_ptr_reg is a bad idea on RS/6000: */
- susp->hz1_ptr += togo;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp_took(hz1_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* resonvv_ssi_fetch */
-
-
-void resonvv_ssr_fetch(register resonvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- sample_type bw_val;
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double scale1_reg;
- register double c3co_reg;
- register double c3p1_reg;
- register double c3t4_reg;
- register double omc3_reg;
- register double coshz_reg;
- register double c2_reg;
- register double c1_reg;
- register boolean recompute_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register sample_type hz1_scale_reg = susp->hz1->scale;
- register sample_block_values_type hz1_ptr_reg;
- register sample_type s1_scale_reg = susp->s1->scale;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "resonvv_ssr_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp->bw_pHaSe = 1.0;
- }
-
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past the hz1 input sample block: */
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
- togo = MIN(togo, susp->hz1_cnt);
-
- /* grab next bw_x1_sample when phase goes past 1.0; */
- /* use bw_n (computed below) to avoid roundoff errors: */
- if (susp->bw_n <= 0) {
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
- susp->bw_x1_sample = susp_fetch_sample(bw, bw_ptr, bw_cnt);
- susp->bw_pHaSe -= 1.0;
- /* bw_n gets number of samples before phase exceeds 1.0: */
- susp->bw_n = (long) ((1.0 - susp->bw_pHaSe) *
- susp->output_per_bw);
- susp->c3co = exp(susp->bw_x1_sample);
- susp->c3p1 = susp->c3co + 1.0;
- susp->c3t4 = susp->c3co * 4.0;
- susp->omc3 = 1.0 - susp->c3co;
- susp->recompute = true;
- }
- togo = MIN(togo, susp->bw_n);
- bw_val = susp->bw_x1_sample;
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- scale1_reg = susp->scale1;
- c3co_reg = susp->c3co;
- c3p1_reg = susp->c3p1;
- c3t4_reg = susp->c3t4;
- omc3_reg = susp->omc3;
- coshz_reg = susp->coshz;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- recompute_reg = susp->recompute;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- hz1_ptr_reg = susp->hz1_ptr;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- coshz_reg = cos((hz1_scale_reg * *hz1_ptr_reg++));
- recompute_reg = true;
- if (recompute_reg) {
- recompute_reg = false;
- c2_reg = c3t4_reg * coshz_reg / c3p1_reg;
- c1_reg = (normalization_reg == 0 ? 1.0 :
- (normalization_reg == 1 ? omc3_reg * sqrt(1.0 - c2_reg * c2_reg / c3t4_reg) :
- sqrt(c3p1_reg * c3p1_reg - c2_reg * c2_reg) * omc3_reg / c3p1_reg)) * scale1_reg;
- }
-{ double y0 = c1_reg * (s1_scale_reg * *s1_ptr_reg++) + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0; };
- } while (--n); /* inner loop */
-
- susp->recompute = recompute_reg;
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- /* using hz1_ptr_reg is a bad idea on RS/6000: */
- susp->hz1_ptr += togo;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp_took(hz1_cnt, togo);
- susp->bw_pHaSe += togo * susp->bw_pHaSe_iNcR;
- susp->bw_n -= togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* resonvv_ssr_fetch */
-
-
-void resonvv_sis_fetch(register resonvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double scale1_reg;
- register double c3co_reg;
- register double c3p1_reg;
- register double c3t4_reg;
- register double omc3_reg;
- register double coshz_reg;
- register double c2_reg;
- register double c1_reg;
- register boolean recompute_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register sample_type bw_scale_reg = susp->bw->scale;
- register sample_block_values_type bw_ptr_reg;
- register double hz1_pHaSe_iNcR_rEg = susp->hz1_pHaSe_iNcR;
- register double hz1_pHaSe_ReG;
- register sample_type hz1_x1_sample_reg;
- register sample_type s1_scale_reg = susp->s1->scale;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "resonvv_sis_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
- susp->hz1_x1_sample = susp_fetch_sample(hz1, hz1_ptr, hz1_cnt);
- susp->coshz = cos(susp->hz1_x1_sample);
- susp->recompute = true;
- }
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past the bw input sample block: */
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
- togo = MIN(togo, susp->bw_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- scale1_reg = susp->scale1;
- c3co_reg = susp->c3co;
- c3p1_reg = susp->c3p1;
- c3t4_reg = susp->c3t4;
- omc3_reg = susp->omc3;
- coshz_reg = susp->coshz;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- recompute_reg = susp->recompute;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- bw_ptr_reg = susp->bw_ptr;
- hz1_pHaSe_ReG = susp->hz1_pHaSe;
- hz1_x1_sample_reg = susp->hz1_x1_sample;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- if (hz1_pHaSe_ReG >= 1.0) {
-/* fixup-depends hz1 */
- /* pick up next sample as hz1_x1_sample: */
- susp->hz1_ptr++;
- susp_took(hz1_cnt, 1);
- hz1_pHaSe_ReG -= 1.0;
- susp_check_term_samples_break(hz1, hz1_ptr, hz1_cnt, hz1_x1_sample_reg);
- hz1_x1_sample_reg = susp_current_sample(hz1, hz1_ptr);
- coshz_reg = susp->coshz = cos(hz1_x1_sample_reg);
- recompute_reg = susp->recompute = true;
- }
- c3co_reg = exp((bw_scale_reg * *bw_ptr_reg++));
- c3p1_reg = c3co_reg + 1.0;
- c3t4_reg = c3co_reg * 4.0;
- omc3_reg = 1.0 - c3co_reg;
- recompute_reg = true;
- if (recompute_reg) {
- recompute_reg = false;
- c2_reg = c3t4_reg * coshz_reg / c3p1_reg;
- c1_reg = (normalization_reg == 0 ? 1.0 :
- (normalization_reg == 1 ? omc3_reg * sqrt(1.0 - c2_reg * c2_reg / c3t4_reg) :
- sqrt(c3p1_reg * c3p1_reg - c2_reg * c2_reg) * omc3_reg / c3p1_reg)) * scale1_reg;
- }
-{ double y0 = c1_reg * (s1_scale_reg * *s1_ptr_reg++) + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0; };
- hz1_pHaSe_ReG += hz1_pHaSe_iNcR_rEg;
- } while (--n); /* inner loop */
-
- togo -= n;
- susp->recompute = recompute_reg;
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- /* using bw_ptr_reg is a bad idea on RS/6000: */
- susp->bw_ptr += togo;
- susp->hz1_pHaSe = hz1_pHaSe_ReG;
- susp->hz1_x1_sample = hz1_x1_sample_reg;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp_took(bw_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* resonvv_sis_fetch */
-
-
-void resonvv_sii_fetch(register resonvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double scale1_reg;
- register double c3co_reg;
- register double c3p1_reg;
- register double c3t4_reg;
- register double omc3_reg;
- register double coshz_reg;
- register double c2_reg;
- register double c1_reg;
- register boolean recompute_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register double bw_pHaSe_iNcR_rEg = susp->bw_pHaSe_iNcR;
- register double bw_pHaSe_ReG;
- register sample_type bw_x1_sample_reg;
- register double hz1_pHaSe_iNcR_rEg = susp->hz1_pHaSe_iNcR;
- register double hz1_pHaSe_ReG;
- register sample_type hz1_x1_sample_reg;
- register sample_type s1_scale_reg = susp->s1->scale;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "resonvv_sii_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
- susp->hz1_x1_sample = susp_fetch_sample(hz1, hz1_ptr, hz1_cnt);
- susp->coshz = cos(susp->hz1_x1_sample);
- susp->recompute = true;
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
- susp->bw_x1_sample = susp_fetch_sample(bw, bw_ptr, bw_cnt);
- susp->c3co = exp(susp->bw_x1_sample);
- susp->c3p1 = susp->c3co + 1.0;
- susp->c3t4 = susp->c3co * 4.0;
- susp->omc3 = 1.0 - susp->c3co;
- susp->recompute = true;
- }
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- scale1_reg = susp->scale1;
- c3co_reg = susp->c3co;
- c3p1_reg = susp->c3p1;
- c3t4_reg = susp->c3t4;
- omc3_reg = susp->omc3;
- coshz_reg = susp->coshz;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- recompute_reg = susp->recompute;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- bw_pHaSe_ReG = susp->bw_pHaSe;
- bw_x1_sample_reg = susp->bw_x1_sample;
- hz1_pHaSe_ReG = susp->hz1_pHaSe;
- hz1_x1_sample_reg = susp->hz1_x1_sample;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- if (hz1_pHaSe_ReG >= 1.0) {
-/* fixup-depends hz1 */
- /* pick up next sample as hz1_x1_sample: */
- susp->hz1_ptr++;
- susp_took(hz1_cnt, 1);
- hz1_pHaSe_ReG -= 1.0;
- susp_check_term_samples_break(hz1, hz1_ptr, hz1_cnt, hz1_x1_sample_reg);
- hz1_x1_sample_reg = susp_current_sample(hz1, hz1_ptr);
- coshz_reg = susp->coshz = cos(hz1_x1_sample_reg);
- recompute_reg = susp->recompute = true;
- }
- if (bw_pHaSe_ReG >= 1.0) {
-/* fixup-depends bw */
- /* pick up next sample as bw_x1_sample: */
- susp->bw_ptr++;
- susp_took(bw_cnt, 1);
- bw_pHaSe_ReG -= 1.0;
- susp_check_term_samples_break(bw, bw_ptr, bw_cnt, bw_x1_sample_reg);
- bw_x1_sample_reg = susp_current_sample(bw, bw_ptr);
- c3co_reg = susp->c3co = exp(bw_x1_sample_reg);
- c3p1_reg = susp->c3p1 = c3co_reg + 1.0;
- c3t4_reg = susp->c3t4 = c3co_reg * 4.0;
- omc3_reg = susp->omc3 = 1.0 - c3co_reg;
- recompute_reg = susp->recompute = true;
- }
- if (recompute_reg) {
- recompute_reg = false;
- c2_reg = c3t4_reg * coshz_reg / c3p1_reg;
- c1_reg = (normalization_reg == 0 ? 1.0 :
- (normalization_reg == 1 ? omc3_reg * sqrt(1.0 - c2_reg * c2_reg / c3t4_reg) :
- sqrt(c3p1_reg * c3p1_reg - c2_reg * c2_reg) * omc3_reg / c3p1_reg)) * scale1_reg;
- }
-{ double y0 = c1_reg * (s1_scale_reg * *s1_ptr_reg++) + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0; };
- hz1_pHaSe_ReG += hz1_pHaSe_iNcR_rEg;
- bw_pHaSe_ReG += bw_pHaSe_iNcR_rEg;
- } while (--n); /* inner loop */
-
- togo -= n;
- susp->recompute = recompute_reg;
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- susp->bw_pHaSe = bw_pHaSe_ReG;
- susp->bw_x1_sample = bw_x1_sample_reg;
- susp->hz1_pHaSe = hz1_pHaSe_ReG;
- susp->hz1_x1_sample = hz1_x1_sample_reg;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* resonvv_sii_fetch */
-
-
-void resonvv_sir_fetch(register resonvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- sample_type bw_val;
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double scale1_reg;
- register double c3co_reg;
- register double c3p1_reg;
- register double c3t4_reg;
- register double omc3_reg;
- register double coshz_reg;
- register double c2_reg;
- register double c1_reg;
- register boolean recompute_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register double hz1_pHaSe_iNcR_rEg = susp->hz1_pHaSe_iNcR;
- register double hz1_pHaSe_ReG;
- register sample_type hz1_x1_sample_reg;
- register sample_type s1_scale_reg = susp->s1->scale;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "resonvv_sir_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
- susp->hz1_x1_sample = susp_fetch_sample(hz1, hz1_ptr, hz1_cnt);
- susp->coshz = cos(susp->hz1_x1_sample);
- susp->recompute = true;
- susp->bw_pHaSe = 1.0;
- }
-
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* grab next bw_x1_sample when phase goes past 1.0; */
- /* use bw_n (computed below) to avoid roundoff errors: */
- if (susp->bw_n <= 0) {
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
- susp->bw_x1_sample = susp_fetch_sample(bw, bw_ptr, bw_cnt);
- susp->bw_pHaSe -= 1.0;
- /* bw_n gets number of samples before phase exceeds 1.0: */
- susp->bw_n = (long) ((1.0 - susp->bw_pHaSe) *
- susp->output_per_bw);
- susp->c3co = exp(susp->bw_x1_sample);
- susp->c3p1 = susp->c3co + 1.0;
- susp->c3t4 = susp->c3co * 4.0;
- susp->omc3 = 1.0 - susp->c3co;
- susp->recompute = true;
- }
- togo = MIN(togo, susp->bw_n);
- bw_val = susp->bw_x1_sample;
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- scale1_reg = susp->scale1;
- c3co_reg = susp->c3co;
- c3p1_reg = susp->c3p1;
- c3t4_reg = susp->c3t4;
- omc3_reg = susp->omc3;
- coshz_reg = susp->coshz;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- recompute_reg = susp->recompute;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- hz1_pHaSe_ReG = susp->hz1_pHaSe;
- hz1_x1_sample_reg = susp->hz1_x1_sample;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- if (hz1_pHaSe_ReG >= 1.0) {
-/* fixup-depends hz1 */
- /* pick up next sample as hz1_x1_sample: */
- susp->hz1_ptr++;
- susp_took(hz1_cnt, 1);
- hz1_pHaSe_ReG -= 1.0;
- susp_check_term_samples_break(hz1, hz1_ptr, hz1_cnt, hz1_x1_sample_reg);
- hz1_x1_sample_reg = susp_current_sample(hz1, hz1_ptr);
- coshz_reg = susp->coshz = cos(hz1_x1_sample_reg);
- recompute_reg = susp->recompute = true;
- }
- if (recompute_reg) {
- recompute_reg = false;
- c2_reg = c3t4_reg * coshz_reg / c3p1_reg;
- c1_reg = (normalization_reg == 0 ? 1.0 :
- (normalization_reg == 1 ? omc3_reg * sqrt(1.0 - c2_reg * c2_reg / c3t4_reg) :
- sqrt(c3p1_reg * c3p1_reg - c2_reg * c2_reg) * omc3_reg / c3p1_reg)) * scale1_reg;
- }
-{ double y0 = c1_reg * (s1_scale_reg * *s1_ptr_reg++) + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0; };
- hz1_pHaSe_ReG += hz1_pHaSe_iNcR_rEg;
- } while (--n); /* inner loop */
-
- togo -= n;
- susp->recompute = recompute_reg;
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- susp->hz1_pHaSe = hz1_pHaSe_ReG;
- susp->hz1_x1_sample = hz1_x1_sample_reg;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp->bw_pHaSe += togo * susp->bw_pHaSe_iNcR;
- susp->bw_n -= togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* resonvv_sir_fetch */
-
-
-void resonvv_srs_fetch(register resonvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- sample_type hz1_val;
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double scale1_reg;
- register double c3co_reg;
- register double c3p1_reg;
- register double c3t4_reg;
- register double omc3_reg;
- register double coshz_reg;
- register double c2_reg;
- register double c1_reg;
- register boolean recompute_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register sample_type bw_scale_reg = susp->bw->scale;
- register sample_block_values_type bw_ptr_reg;
- register sample_type s1_scale_reg = susp->s1->scale;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "resonvv_srs_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp->hz1_pHaSe = 1.0;
- }
-
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* grab next hz1_x1_sample when phase goes past 1.0; */
- /* use hz1_n (computed below) to avoid roundoff errors: */
- if (susp->hz1_n <= 0) {
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
- susp->hz1_x1_sample = susp_fetch_sample(hz1, hz1_ptr, hz1_cnt);
- susp->hz1_pHaSe -= 1.0;
- /* hz1_n gets number of samples before phase exceeds 1.0: */
- susp->hz1_n = (long) ((1.0 - susp->hz1_pHaSe) *
- susp->output_per_hz1);
- susp->coshz = cos(susp->hz1_x1_sample);
- susp->recompute = true;
- }
- togo = MIN(togo, susp->hz1_n);
- hz1_val = susp->hz1_x1_sample;
- /* don't run past the bw input sample block: */
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
- togo = MIN(togo, susp->bw_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- scale1_reg = susp->scale1;
- c3co_reg = susp->c3co;
- c3p1_reg = susp->c3p1;
- c3t4_reg = susp->c3t4;
- omc3_reg = susp->omc3;
- coshz_reg = susp->coshz;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- recompute_reg = susp->recompute;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- bw_ptr_reg = susp->bw_ptr;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- c3co_reg = exp((bw_scale_reg * *bw_ptr_reg++));
- c3p1_reg = c3co_reg + 1.0;
- c3t4_reg = c3co_reg * 4.0;
- omc3_reg = 1.0 - c3co_reg;
- recompute_reg = true;
- if (recompute_reg) {
- recompute_reg = false;
- c2_reg = c3t4_reg * coshz_reg / c3p1_reg;
- c1_reg = (normalization_reg == 0 ? 1.0 :
- (normalization_reg == 1 ? omc3_reg * sqrt(1.0 - c2_reg * c2_reg / c3t4_reg) :
- sqrt(c3p1_reg * c3p1_reg - c2_reg * c2_reg) * omc3_reg / c3p1_reg)) * scale1_reg;
- }
-{ double y0 = c1_reg * (s1_scale_reg * *s1_ptr_reg++) + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0; };
- } while (--n); /* inner loop */
-
- susp->recompute = recompute_reg;
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- /* using bw_ptr_reg is a bad idea on RS/6000: */
- susp->bw_ptr += togo;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp->hz1_pHaSe += togo * susp->hz1_pHaSe_iNcR;
- susp->hz1_n -= togo;
- susp_took(bw_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* resonvv_srs_fetch */
-
-
-void resonvv_sri_fetch(register resonvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- sample_type hz1_val;
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double scale1_reg;
- register double c3co_reg;
- register double c3p1_reg;
- register double c3t4_reg;
- register double omc3_reg;
- register double coshz_reg;
- register double c2_reg;
- register double c1_reg;
- register boolean recompute_reg;
- register int normalization_reg;
- register double y1_reg;
- register double y2_reg;
- register double bw_pHaSe_iNcR_rEg = susp->bw_pHaSe_iNcR;
- register double bw_pHaSe_ReG;
- register sample_type bw_x1_sample_reg;
- register sample_type s1_scale_reg = susp->s1->scale;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "resonvv_sri_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp->hz1_pHaSe = 1.0;
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
- susp->bw_x1_sample = susp_fetch_sample(bw, bw_ptr, bw_cnt);
- susp->c3co = exp(susp->bw_x1_sample);
- susp->c3p1 = susp->c3co + 1.0;
- susp->c3t4 = susp->c3co * 4.0;
- susp->omc3 = 1.0 - susp->c3co;
- susp->recompute = true;
- }
-
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* grab next hz1_x1_sample when phase goes past 1.0; */
- /* use hz1_n (computed below) to avoid roundoff errors: */
- if (susp->hz1_n <= 0) {
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
- susp->hz1_x1_sample = susp_fetch_sample(hz1, hz1_ptr, hz1_cnt);
- susp->hz1_pHaSe -= 1.0;
- /* hz1_n gets number of samples before phase exceeds 1.0: */
- susp->hz1_n = (long) ((1.0 - susp->hz1_pHaSe) *
- susp->output_per_hz1);
- susp->coshz = cos(susp->hz1_x1_sample);
- susp->recompute = true;
- }
- togo = MIN(togo, susp->hz1_n);
- hz1_val = susp->hz1_x1_sample;
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- scale1_reg = susp->scale1;
- c3co_reg = susp->c3co;
- c3p1_reg = susp->c3p1;
- c3t4_reg = susp->c3t4;
- omc3_reg = susp->omc3;
- coshz_reg = susp->coshz;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- recompute_reg = susp->recompute;
- normalization_reg = susp->normalization;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- bw_pHaSe_ReG = susp->bw_pHaSe;
- bw_x1_sample_reg = susp->bw_x1_sample;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- if (bw_pHaSe_ReG >= 1.0) {
-/* fixup-depends bw */
- /* pick up next sample as bw_x1_sample: */
- susp->bw_ptr++;
- susp_took(bw_cnt, 1);
- bw_pHaSe_ReG -= 1.0;
- susp_check_term_samples_break(bw, bw_ptr, bw_cnt, bw_x1_sample_reg);
- bw_x1_sample_reg = susp_current_sample(bw, bw_ptr);
- c3co_reg = susp->c3co = exp(bw_x1_sample_reg);
- c3p1_reg = susp->c3p1 = c3co_reg + 1.0;
- c3t4_reg = susp->c3t4 = c3co_reg * 4.0;
- omc3_reg = susp->omc3 = 1.0 - c3co_reg;
- recompute_reg = susp->recompute = true;
- }
- if (recompute_reg) {
- recompute_reg = false;
- c2_reg = c3t4_reg * coshz_reg / c3p1_reg;
- c1_reg = (normalization_reg == 0 ? 1.0 :
- (normalization_reg == 1 ? omc3_reg * sqrt(1.0 - c2_reg * c2_reg / c3t4_reg) :
- sqrt(c3p1_reg * c3p1_reg - c2_reg * c2_reg) * omc3_reg / c3p1_reg)) * scale1_reg;
- }
-{ double y0 = c1_reg * (s1_scale_reg * *s1_ptr_reg++) + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0; };
- bw_pHaSe_ReG += bw_pHaSe_iNcR_rEg;
- } while (--n); /* inner loop */
-
- togo -= n;
- susp->recompute = recompute_reg;
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- susp->bw_pHaSe = bw_pHaSe_ReG;
- susp->bw_x1_sample = bw_x1_sample_reg;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp->hz1_pHaSe += togo * susp->hz1_pHaSe_iNcR;
- susp->hz1_n -= togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* resonvv_sri_fetch */
-
-
-void resonvv_srr_fetch(register resonvv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- sample_type hz1_val;
- sample_type bw_val;
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double c3co_reg;
- register double c2_reg;
- register double c1_reg;
- register boolean recompute_reg;
- register double y1_reg;
- register double y2_reg;
- register sample_type s1_scale_reg = susp->s1->scale;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "resonvv_srr_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp->hz1_pHaSe = 1.0;
- susp->bw_pHaSe = 1.0;
- }
-
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
-
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* grab next hz1_x1_sample when phase goes past 1.0; */
- /* use hz1_n (computed below) to avoid roundoff errors: */
- if (susp->hz1_n <= 0) {
- susp_check_term_samples(hz1, hz1_ptr, hz1_cnt);
- susp->hz1_x1_sample = susp_fetch_sample(hz1, hz1_ptr, hz1_cnt);
- susp->hz1_pHaSe -= 1.0;
- /* hz1_n gets number of samples before phase exceeds 1.0: */
- susp->hz1_n = (long) ((1.0 - susp->hz1_pHaSe) *
- susp->output_per_hz1);
- susp->coshz = cos(susp->hz1_x1_sample);
- susp->recompute = true;
- }
- togo = MIN(togo, susp->hz1_n);
- hz1_val = susp->hz1_x1_sample;
- /* grab next bw_x1_sample when phase goes past 1.0; */
- /* use bw_n (computed below) to avoid roundoff errors: */
- if (susp->bw_n <= 0) {
- susp_check_term_samples(bw, bw_ptr, bw_cnt);
- susp->bw_x1_sample = susp_fetch_sample(bw, bw_ptr, bw_cnt);
- susp->bw_pHaSe -= 1.0;
- /* bw_n gets number of samples before phase exceeds 1.0: */
- susp->bw_n = (long) ((1.0 - susp->bw_pHaSe) *
- susp->output_per_bw);
- susp->c3co = exp(susp->bw_x1_sample);
- susp->c3p1 = susp->c3co + 1.0;
- susp->c3t4 = susp->c3co * 4.0;
- susp->omc3 = 1.0 - susp->c3co;
- susp->recompute = true;
- }
- togo = MIN(togo, susp->bw_n);
- bw_val = susp->bw_x1_sample;
- if (susp->recompute) {
- susp->recompute = false;
- susp->c2 = susp->c3t4 * susp->coshz / susp->c3p1;
- susp->c1 = (susp->normalization == 0 ? 1.0 :
- (susp->normalization == 1 ? susp->omc3 * sqrt(1.0 - susp->c2 * susp->c2 / susp->c3t4) :
- sqrt(susp->c3p1 * susp->c3p1 - susp->c2 * susp->c2) * susp->omc3 / susp->c3p1)) * susp->scale1;
- }
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- c3co_reg = susp->c3co;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- recompute_reg = susp->recompute;
- y1_reg = susp->y1;
- y2_reg = susp->y2;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-{ double y0 = c1_reg * (s1_scale_reg * *s1_ptr_reg++) + c2_reg * y1_reg - c3co_reg * y2_reg;
- *out_ptr_reg++ = (sample_type) y0;
- y2_reg = y1_reg; y1_reg = y0; };
- } while (--n); /* inner loop */
-
- susp->recompute = recompute_reg;
- susp->y1 = y1_reg;
- susp->y2 = y2_reg;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp->hz1_pHaSe += togo * susp->hz1_pHaSe_iNcR;
- susp->hz1_n -= togo;
- susp->bw_pHaSe += togo * susp->bw_pHaSe_iNcR;
- susp->bw_n -= togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* resonvv_srr_fetch */
-
-
-void resonvv_toss_fetch(susp, snd_list)
- register resonvv_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from s1 up to final_time for this block of zeros */
- while ((round((final_time - susp->s1->t0) * susp->s1->sr)) >=
- susp->s1->current)
- susp_get_samples(s1, s1_ptr, s1_cnt);
- /* fetch samples from hz1 up to final_time for this block of zeros */
- while ((round((final_time - susp->hz1->t0) * susp->hz1->sr)) >=
- susp->hz1->current)
- susp_get_samples(hz1, hz1_ptr, hz1_cnt);
- /* fetch samples from bw up to final_time for this block of zeros */
- while ((round((final_time - susp->bw->t0) * susp->bw->sr)) >=
- susp->bw->current)
- susp_get_samples(bw, bw_ptr, bw_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->s1->t0) * susp->s1->sr -
- (susp->s1->current - susp->s1_cnt));
- susp->s1_ptr += n;
- susp_took(s1_cnt, n);
- n = round((final_time - susp->hz1->t0) * susp->hz1->sr -
- (susp->hz1->current - susp->hz1_cnt));
- susp->hz1_ptr += n;
- susp_took(hz1_cnt, n);
- n = round((final_time - susp->bw->t0) * susp->bw->sr -
- (susp->bw->current - susp->bw_cnt));
- susp->bw_ptr += n;
- susp_took(bw_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void resonvv_mark(resonvv_susp_type susp)
-{
- sound_xlmark(susp->s1);
- sound_xlmark(susp->hz1);
- sound_xlmark(susp->bw);
-}
-
-
-void resonvv_free(resonvv_susp_type susp)
-{
- sound_unref(susp->s1);
- sound_unref(susp->hz1);
- sound_unref(susp->bw);
- ffree_generic(susp, sizeof(resonvv_susp_node), "resonvv_free");
-}
-
-
-void resonvv_print_tree(resonvv_susp_type susp, int n)
-{
- indent(n);
- stdputstr("s1:");
- sound_print_tree_1(susp->s1, n);
-
- indent(n);
- stdputstr("hz1:");
- sound_print_tree_1(susp->hz1, n);
-
- indent(n);
- stdputstr("bw:");
- sound_print_tree_1(susp->bw, n);
-}
-
-
-sound_type snd_make_resonvv(sound_type s1, sound_type hz1, sound_type bw, int normalization)
-{
- register resonvv_susp_type susp;
- rate_type sr = s1->sr;
- time_type t0 = MAX(MAX(s1->t0, hz1->t0), bw->t0);
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- falloc_generic(susp, resonvv_susp_node, "snd_make_resonvv");
- susp->scale1 = s1->scale;
- susp->c3co = 0.0;
- susp->c3p1 = 0.0;
- susp->c3t4 = 0.0;
- susp->omc3 = 0.0;
- susp->coshz = 0.0;
- susp->c2 = 0.0;
- susp->c1 = 0.0;
- susp->recompute = false;
- susp->normalization = normalization;
- susp->y1 = 0.0;
- susp->y2 = 0.0;
- hz1->scale = (sample_type) (hz1->scale * (PI2 / s1->sr));
- bw->scale = (sample_type) (bw->scale * (-PI2 / s1->sr));;
-
- /* select a susp fn based on sample rates */
- interp_desc = (interp_desc << 2) + interp_style(s1, sr);
- interp_desc = (interp_desc << 2) + interp_style(hz1, sr);
- interp_desc = (interp_desc << 2) + interp_style(bw, sr);
- switch (interp_desc) {
- case INTERP_nnn: /* handled below */
- case INTERP_nns: /* handled below */
- case INTERP_nsn: /* handled below */
- case INTERP_nss: susp->susp.fetch = resonvv_nss_fetch; break;
- case INTERP_nni: /* handled below */
- case INTERP_nsi: susp->susp.fetch = resonvv_nsi_fetch; break;
- case INTERP_nnr: /* handled below */
- case INTERP_nsr: susp->susp.fetch = resonvv_nsr_fetch; break;
- case INTERP_nin: /* handled below */
- case INTERP_nis: susp->susp.fetch = resonvv_nis_fetch; break;
- case INTERP_nii: susp->susp.fetch = resonvv_nii_fetch; break;
- case INTERP_nir: susp->susp.fetch = resonvv_nir_fetch; break;
- case INTERP_nrn: /* handled below */
- case INTERP_nrs: susp->susp.fetch = resonvv_nrs_fetch; break;
- case INTERP_nri: susp->susp.fetch = resonvv_nri_fetch; break;
- case INTERP_nrr: susp->susp.fetch = resonvv_nrr_fetch; break;
- case INTERP_snn: /* handled below */
- case INTERP_sns: /* handled below */
- case INTERP_ssn: /* handled below */
- case INTERP_sss: susp->susp.fetch = resonvv_sss_fetch; break;
- case INTERP_sni: /* handled below */
- case INTERP_ssi: susp->susp.fetch = resonvv_ssi_fetch; break;
- case INTERP_snr: /* handled below */
- case INTERP_ssr: susp->susp.fetch = resonvv_ssr_fetch; break;
- case INTERP_sin: /* handled below */
- case INTERP_sis: susp->susp.fetch = resonvv_sis_fetch; break;
- case INTERP_sii: susp->susp.fetch = resonvv_sii_fetch; break;
- case INTERP_sir: susp->susp.fetch = resonvv_sir_fetch; break;
- case INTERP_srn: /* handled below */
- case INTERP_srs: susp->susp.fetch = resonvv_srs_fetch; break;
- case INTERP_sri: susp->susp.fetch = resonvv_sri_fetch; break;
- case INTERP_srr: susp->susp.fetch = resonvv_srr_fetch; break;
- default: snd_badsr(); break;
- }
-
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < s1->t0) sound_prepend_zeros(s1, t0);
- if (t0 < hz1->t0) sound_prepend_zeros(hz1, t0);
- if (t0 < bw->t0) sound_prepend_zeros(bw, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(s1->t0, MIN(hz1->t0, MIN(bw->t0, t0)));
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = resonvv_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = resonvv_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = resonvv_mark;
- susp->susp.print_tree = resonvv_print_tree;
- susp->susp.name = "resonvv";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(s1);
- susp->started = false;
- susp->susp.current = 0;
- susp->s1 = s1;
- susp->s1_cnt = 0;
- susp->hz1 = hz1;
- susp->hz1_cnt = 0;
- susp->hz1_pHaSe = 0.0;
- susp->hz1_pHaSe_iNcR = hz1->sr / sr;
- susp->hz1_n = 0;
- susp->output_per_hz1 = sr / hz1->sr;
- susp->bw = bw;
- susp->bw_cnt = 0;
- susp->bw_pHaSe = 0.0;
- susp->bw_pHaSe_iNcR = bw->sr / sr;
- susp->bw_n = 0;
- susp->output_per_bw = sr / bw->sr;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_resonvv(sound_type s1, sound_type hz1, sound_type bw, int normalization)
-{
- sound_type s1_copy = sound_copy(s1);
- sound_type hz1_copy = sound_copy(hz1);
- sound_type bw_copy = sound_copy(bw);
- return snd_make_resonvv(s1_copy, hz1_copy, bw_copy, normalization);
-}
diff --git a/lib-src/libnyquist/tran/resonvv.h b/lib-src/libnyquist/tran/resonvv.h
deleted file mode 100644
index f1fee48..0000000
--- a/lib-src/libnyquist/tran/resonvv.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_resonvv(sound_type s1, sound_type hz1, sound_type bw, int normalization);
-sound_type snd_resonvv(sound_type s1, sound_type hz1, sound_type bw, int normalization);
- /* LISP: (snd-resonvv SOUND SOUND SOUND FIXNUM) */
diff --git a/lib-src/libnyquist/tran/sampler.alg b/lib-src/libnyquist/tran/sampler.alg
deleted file mode 100644
index cc5fad7..0000000
--- a/lib-src/libnyquist/tran/sampler.alg
+++ /dev/null
@@ -1,49 +0,0 @@
-(SAMPLER-ALG
-(NAME "sampler")
-(ARGUMENTS ("sound_type" "s") ("double" "step") ("double" "loop_start")
- ("rate_type" "sr") ("double" "hz") ("time_type" "t0") ("sound_type" "s_fm")
- ("long" "npoints"))
-(TABLE "s")
-(NOT-IN-INNER-LOOP "s")
-(STATE
- ("double" "loop_to" "loop_start * s->sr")
- ("table_type" "the_table" "sound_to_table(s)")
- ("sample_type *" "table_ptr" "susp->the_table->samples")
- ("double" "table_len" "susp->the_table->length;
- { long index = (long) susp->loop_to;
- double frac = susp->loop_to - index;
- if (index > round(susp->table_len) ||
- index < 0) {
- index = 0;
- frac = 0;
- }
- susp->table_ptr[round(susp->table_len)] = /* copy interpolated start to last entry */
- (sample_type) (susp->table_ptr[index] * (1.0 - frac) +
- susp->table_ptr[index + 1] * frac);}")
- ("double" "phase" "0.0")
- ("double" "ph_incr" "(s->sr / sr) * hz / step_to_hz(step);
- s_fm->scale = (sample_type) (s_fm->scale * (susp->ph_incr / hz))") )
-
-(ALWAYS-SCALE s_fm)
-(INLINE-INTERPOLATION T) ; so that modulation can be low frequency
-(STEP-FUNCTION s_fm)
-(TERMINATE (MIN s_fm))
-(LOGICAL-STOP (MIN s_fm))
-(INNER-LOOP-LOCALS " long table_index;
- double x1;
-")
-(INNER-LOOP "table_index = (long) phase;
- x1 = table_ptr[table_index];
- output = (sample_type) (x1 + (phase - table_index) *
- (table_ptr[table_index + 1] - x1));
- phase += ph_incr + s_fm;
- while (phase > table_len) phase -= (table_len - loop_to);
- /* watch out for negative frequencies! */
- if (phase < 0) phase = 0")
-(CONSTANT "ph_incr" "table_len" "table_ptr" "loop_to")
-
-(SAMPLE-RATE "sr")
-(FINALIZATION " table_unref(susp->the_table);
-")
-)
-
diff --git a/lib-src/libnyquist/tran/sampler.c b/lib-src/libnyquist/tran/sampler.c
deleted file mode 100644
index 7ec01d8..0000000
--- a/lib-src/libnyquist/tran/sampler.c
+++ /dev/null
@@ -1,510 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "sampler.h"
-
-void sampler_free();
-
-
-typedef struct sampler_susp_struct {
- snd_susp_node susp;
- boolean started;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type s_fm;
- long s_fm_cnt;
- sample_block_values_type s_fm_ptr;
-
- /* support for interpolation of s_fm */
- sample_type s_fm_x1_sample;
- double s_fm_pHaSe;
- double s_fm_pHaSe_iNcR;
-
- /* support for ramp between samples of s_fm */
- double output_per_s_fm;
- long s_fm_n;
-
- double loop_to;
- table_type the_table;
- sample_type *table_ptr;
- double table_len;
- double phase;
- double ph_incr;
-} sampler_susp_node, *sampler_susp_type;
-
-
-void sampler_s_fetch(register sampler_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double loop_to_reg;
- register sample_type * table_ptr_reg;
- register double table_len_reg;
- register double phase_reg;
- register double ph_incr_reg;
- register sample_type s_fm_scale_reg = susp->s_fm->scale;
- register sample_block_values_type s_fm_ptr_reg;
- falloc_sample_block(out, "sampler_s_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s_fm input sample block: */
- susp_check_term_log_samples(s_fm, s_fm_ptr, s_fm_cnt);
- togo = MIN(togo, susp->s_fm_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- loop_to_reg = susp->loop_to;
- table_ptr_reg = susp->table_ptr;
- table_len_reg = susp->table_len;
- phase_reg = susp->phase;
- ph_incr_reg = susp->ph_incr;
- s_fm_ptr_reg = susp->s_fm_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- long table_index;
- double x1;
-table_index = (long) phase_reg;
- x1 = table_ptr_reg[table_index];
- *out_ptr_reg++ = (sample_type) (x1 + (phase_reg - table_index) *
- (table_ptr_reg[table_index + 1] - x1));
- phase_reg += ph_incr_reg + (s_fm_scale_reg * *s_fm_ptr_reg++);
- while (phase_reg > table_len_reg) phase_reg -= (table_len_reg - loop_to_reg);
- /* watch out for negative frequencies! */
- if (phase_reg < 0) phase_reg = 0;
- } while (--n); /* inner loop */
-
- susp->phase = phase_reg;
- /* using s_fm_ptr_reg is a bad idea on RS/6000: */
- susp->s_fm_ptr += togo;
- out_ptr += togo;
- susp_took(s_fm_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* sampler_s_fetch */
-
-
-void sampler_i_fetch(register sampler_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double loop_to_reg;
- register sample_type * table_ptr_reg;
- register double table_len_reg;
- register double phase_reg;
- register double ph_incr_reg;
- register double s_fm_pHaSe_iNcR_rEg = susp->s_fm_pHaSe_iNcR;
- register double s_fm_pHaSe_ReG;
- register sample_type s_fm_x1_sample_reg;
- falloc_sample_block(out, "sampler_i_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp_check_term_log_samples(s_fm, s_fm_ptr, s_fm_cnt);
- susp->s_fm_x1_sample = susp_fetch_sample(s_fm, s_fm_ptr, s_fm_cnt);
- }
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- loop_to_reg = susp->loop_to;
- table_ptr_reg = susp->table_ptr;
- table_len_reg = susp->table_len;
- phase_reg = susp->phase;
- ph_incr_reg = susp->ph_incr;
- s_fm_pHaSe_ReG = susp->s_fm_pHaSe;
- s_fm_x1_sample_reg = susp->s_fm_x1_sample;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- long table_index;
- double x1;
- if (s_fm_pHaSe_ReG >= 1.0) {
-/* fixup-depends s_fm */
- /* pick up next sample as s_fm_x1_sample: */
- susp->s_fm_ptr++;
- susp_took(s_fm_cnt, 1);
- s_fm_pHaSe_ReG -= 1.0;
- susp_check_term_log_samples_break(s_fm, s_fm_ptr, s_fm_cnt, s_fm_x1_sample_reg);
- s_fm_x1_sample_reg = susp_current_sample(s_fm, s_fm_ptr);
- }
-table_index = (long) phase_reg;
- x1 = table_ptr_reg[table_index];
- *out_ptr_reg++ = (sample_type) (x1 + (phase_reg - table_index) *
- (table_ptr_reg[table_index + 1] - x1));
- phase_reg += ph_incr_reg + s_fm_x1_sample_reg;
- while (phase_reg > table_len_reg) phase_reg -= (table_len_reg - loop_to_reg);
- /* watch out for negative frequencies! */
- if (phase_reg < 0) phase_reg = 0;
- s_fm_pHaSe_ReG += s_fm_pHaSe_iNcR_rEg;
- } while (--n); /* inner loop */
-
- togo -= n;
- susp->phase = phase_reg;
- susp->s_fm_pHaSe = s_fm_pHaSe_ReG;
- susp->s_fm_x1_sample = s_fm_x1_sample_reg;
- out_ptr += togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* sampler_i_fetch */
-
-
-void sampler_r_fetch(register sampler_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- sample_type s_fm_val;
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double loop_to_reg;
- register sample_type * table_ptr_reg;
- register double table_len_reg;
- register double phase_reg;
- register double ph_incr_reg;
- falloc_sample_block(out, "sampler_r_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp->s_fm_pHaSe = 1.0;
- }
-
- susp_check_term_log_samples(s_fm, s_fm_ptr, s_fm_cnt);
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* grab next s_fm_x1_sample when phase goes past 1.0; */
- /* use s_fm_n (computed below) to avoid roundoff errors: */
- if (susp->s_fm_n <= 0) {
- susp_check_term_log_samples(s_fm, s_fm_ptr, s_fm_cnt);
- susp->s_fm_x1_sample = susp_fetch_sample(s_fm, s_fm_ptr, s_fm_cnt);
- susp->s_fm_pHaSe -= 1.0;
- /* s_fm_n gets number of samples before phase exceeds 1.0: */
- susp->s_fm_n = (long) ((1.0 - susp->s_fm_pHaSe) *
- susp->output_per_s_fm);
- }
- togo = MIN(togo, susp->s_fm_n);
- s_fm_val = susp->s_fm_x1_sample;
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- loop_to_reg = susp->loop_to;
- table_ptr_reg = susp->table_ptr;
- table_len_reg = susp->table_len;
- phase_reg = susp->phase;
- ph_incr_reg = susp->ph_incr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- long table_index;
- double x1;
-table_index = (long) phase_reg;
- x1 = table_ptr_reg[table_index];
- *out_ptr_reg++ = (sample_type) (x1 + (phase_reg - table_index) *
- (table_ptr_reg[table_index + 1] - x1));
- phase_reg += ph_incr_reg + s_fm_val;
- while (phase_reg > table_len_reg) phase_reg -= (table_len_reg - loop_to_reg);
- /* watch out for negative frequencies! */
- if (phase_reg < 0) phase_reg = 0;
- } while (--n); /* inner loop */
-
- susp->phase = phase_reg;
- out_ptr += togo;
- susp->s_fm_pHaSe += togo * susp->s_fm_pHaSe_iNcR;
- susp->s_fm_n -= togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* sampler_r_fetch */
-
-
-void sampler_toss_fetch(susp, snd_list)
- register sampler_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from s_fm up to final_time for this block of zeros */
- while ((round((final_time - susp->s_fm->t0) * susp->s_fm->sr)) >=
- susp->s_fm->current)
- susp_get_samples(s_fm, s_fm_ptr, s_fm_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->s_fm->t0) * susp->s_fm->sr -
- (susp->s_fm->current - susp->s_fm_cnt));
- susp->s_fm_ptr += n;
- susp_took(s_fm_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void sampler_mark(sampler_susp_type susp)
-{
- sound_xlmark(susp->s_fm);
-}
-
-
-void sampler_free(sampler_susp_type susp)
-{
- table_unref(susp->the_table);
- sound_unref(susp->s_fm);
- ffree_generic(susp, sizeof(sampler_susp_node), "sampler_free");
-}
-
-
-void sampler_print_tree(sampler_susp_type susp, int n)
-{
- indent(n);
- stdputstr("s_fm:");
- sound_print_tree_1(susp->s_fm, n);
-}
-
-
-sound_type snd_make_sampler(sound_type s, double step, double loop_start, rate_type sr, double hz, time_type t0, sound_type s_fm, long npoints)
-{
- register sampler_susp_type susp;
- /* sr specified as input parameter */
- /* t0 specified as input parameter */
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- falloc_generic(susp, sampler_susp_node, "snd_make_sampler");
- susp->loop_to = loop_start * s->sr;
- susp->the_table = sound_to_table(s);
- susp->table_ptr = susp->the_table->samples;
- susp->table_len = susp->the_table->length;
- { long index = (long) susp->loop_to;
- double frac = susp->loop_to - index;
- if (index > round(susp->table_len) ||
- index < 0) {
- index = 0;
- frac = 0;
- }
- susp->table_ptr[round(susp->table_len)] = /* copy interpolated start to last entry */
- (sample_type) (susp->table_ptr[index] * (1.0 - frac) +
- susp->table_ptr[index + 1] * frac);};
- susp->phase = 0.0;
- susp->ph_incr = (s->sr / sr) * hz / step_to_hz(step);
- s_fm->scale = (sample_type) (s_fm->scale * (susp->ph_incr / hz));
-
- /* select a susp fn based on sample rates */
- interp_desc = (interp_desc << 2) + interp_style(s_fm, sr);
- switch (interp_desc) {
- case INTERP_n: /* handled below */
- case INTERP_s: susp->susp.fetch = sampler_s_fetch; break;
- case INTERP_i: susp->susp.fetch = sampler_i_fetch; break;
- case INTERP_r: susp->susp.fetch = sampler_r_fetch; break;
- default: snd_badsr(); break;
- }
-
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < s_fm->t0) sound_prepend_zeros(s_fm, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(s_fm->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = sampler_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = sampler_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = sampler_mark;
- susp->susp.print_tree = sampler_print_tree;
- susp->susp.name = "sampler";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(s_fm);
- susp->started = false;
- susp->susp.current = 0;
- susp->s_fm = s_fm;
- susp->s_fm_cnt = 0;
- susp->s_fm_pHaSe = 0.0;
- susp->s_fm_pHaSe_iNcR = s_fm->sr / sr;
- susp->s_fm_n = 0;
- susp->output_per_s_fm = sr / s_fm->sr;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_sampler(sound_type s, double step, double loop_start, rate_type sr, double hz, time_type t0, sound_type s_fm, long npoints)
-{
- sound_type s_fm_copy = sound_copy(s_fm);
- return snd_make_sampler(s, step, loop_start, sr, hz, t0, s_fm_copy, npoints);
-}
diff --git a/lib-src/libnyquist/tran/sampler.h b/lib-src/libnyquist/tran/sampler.h
deleted file mode 100644
index 49be41e..0000000
--- a/lib-src/libnyquist/tran/sampler.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_sampler(sound_type s, double step, double loop_start, rate_type sr, double hz, time_type t0, sound_type s_fm, long npoints);
-sound_type snd_sampler(sound_type s, double step, double loop_start, rate_type sr, double hz, time_type t0, sound_type s_fm, long npoints);
- /* LISP: (snd-sampler SOUND ANYNUM ANYNUM ANYNUM ANYNUM ANYNUM SOUND FIXNUM) */
diff --git a/lib-src/libnyquist/tran/scale.alg b/lib-src/libnyquist/tran/scale.alg
deleted file mode 100644
index f993e95..0000000
--- a/lib-src/libnyquist/tran/scale.alg
+++ /dev/null
@@ -1,11 +0,0 @@
-(SCALE-ALG
- (NAME "normalize")
- (ARGUMENTS ("sound_type" "s1"))
- (STATE ("sample_type" "scale" "s1->scale"))
- (CONSTANT "scale")
- (START (MIN s1))
- (INTERNAL-SCALING s1)
- (INNER-LOOP "output = s1 * scale")
- (TERMINATE (MIN s1))
- (LOGICAL-STOP (MIN s1))
-)
diff --git a/lib-src/libnyquist/tran/scale.c b/lib-src/libnyquist/tran/scale.c
deleted file mode 100644
index 5303c0a..0000000
--- a/lib-src/libnyquist/tran/scale.c
+++ /dev/null
@@ -1,202 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "scale.h"
-
-void normalize_free();
-
-
-typedef struct normalize_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type s1;
- long s1_cnt;
- sample_block_values_type s1_ptr;
-
- sample_type scale;
-} normalize_susp_node, *normalize_susp_type;
-
-
-void normalize_n_fetch(register normalize_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register sample_type scale_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "normalize_n_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- scale_reg = susp->scale;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-*out_ptr_reg++ = *s1_ptr_reg++ * scale_reg;
- } while (--n); /* inner loop */
-
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* normalize_n_fetch */
-
-
-void normalize_toss_fetch(susp, snd_list)
- register normalize_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from s1 up to final_time for this block of zeros */
- while ((round((final_time - susp->s1->t0) * susp->s1->sr)) >=
- susp->s1->current)
- susp_get_samples(s1, s1_ptr, s1_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->s1->t0) * susp->s1->sr -
- (susp->s1->current - susp->s1_cnt));
- susp->s1_ptr += n;
- susp_took(s1_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void normalize_mark(normalize_susp_type susp)
-{
- sound_xlmark(susp->s1);
-}
-
-
-void normalize_free(normalize_susp_type susp)
-{
- sound_unref(susp->s1);
- ffree_generic(susp, sizeof(normalize_susp_node), "normalize_free");
-}
-
-
-void normalize_print_tree(normalize_susp_type susp, int n)
-{
- indent(n);
- stdputstr("s1:");
- sound_print_tree_1(susp->s1, n);
-}
-
-
-sound_type snd_make_normalize(sound_type s1)
-{
- register normalize_susp_type susp;
- rate_type sr = s1->sr;
- time_type t0 = s1->t0;
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- falloc_generic(susp, normalize_susp_node, "snd_make_normalize");
- susp->scale = s1->scale;
- susp->susp.fetch = normalize_n_fetch;
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < s1->t0) sound_prepend_zeros(s1, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(s1->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = normalize_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = normalize_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = normalize_mark;
- susp->susp.print_tree = normalize_print_tree;
- susp->susp.name = "normalize";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(s1);
- susp->susp.current = 0;
- susp->s1 = s1;
- susp->s1_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_normalize(sound_type s1)
-{
- sound_type s1_copy = sound_copy(s1);
- return snd_make_normalize(s1_copy);
-}
diff --git a/lib-src/libnyquist/tran/scale.h b/lib-src/libnyquist/tran/scale.h
deleted file mode 100644
index 48f73f9..0000000
--- a/lib-src/libnyquist/tran/scale.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_normalize(sound_type s1);
-sound_type snd_normalize(sound_type s1);
- /* LISP: (snd-normalize SOUND) */
diff --git a/lib-src/libnyquist/tran/shape.alg b/lib-src/libnyquist/tran/shape.alg
deleted file mode 100644
index 3edf230..0000000
--- a/lib-src/libnyquist/tran/shape.alg
+++ /dev/null
@@ -1,33 +0,0 @@
-(SHAPE-ALG
- (NAME "shape")
- (ARGUMENTS ("sound_type" "sin") ("sound_type" "fn")
- ("double" "origin"))
- (START (MIN sin))
- (TABLE "fn")
- (NOT-IN-INNER-LOOP "fn")
- (STATE
- ("double" "time_to_index" "fn->sr")
- ("double" "origin" "origin")
- ("table_type" "the_table" "sound_to_table(fn)")
- ("sample_type *" "fcn_table" "susp->the_table->samples")
- ("double" "table_len" "susp->the_table->length") )
- (TERMINATE (MIN sin))
- (LOGICAL-STOP (MIN sin))
- (INNER-LOOP "
- register double offset, x1;
- register long table_index;
- register double phase = sin;
- if (phase > 1.0) phase = 1.0;
- else if (phase < -1.0) phase = -1.0;
- offset = (phase + origin) * time_to_index;
- table_index = (long) offset;
- if (table_index < 0) table_index = 0;
- if (table_index >= table_len) table_index = ((long) table_len) - 1;
- x1 = fcn_table[table_index];
- output = (sample_type) (x1 + (offset - table_index) *
- (fcn_table[table_index + 1] - x1));
- ")
- (ALWAYS-SCALE sin)
- (CONSTANT "table_len" "time_to_index" "origen" "fcn_table" "the_table")
- (FINALIZATION "table_unref(susp->the_table);")
-)
diff --git a/lib-src/libnyquist/tran/shape.c b/lib-src/libnyquist/tran/shape.c
deleted file mode 100644
index b648c8b..0000000
--- a/lib-src/libnyquist/tran/shape.c
+++ /dev/null
@@ -1,230 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "shape.h"
-
-typedef struct shape_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type sin;
- long sin_cnt;
- sample_block_values_type sin_ptr;
-
- double time_to_index;
- double origin;
- table_type the_table;
- sample_type *fcn_table;
- double table_len;
-} shape_susp_node, *shape_susp_type;
-
-
-void shape_s_fetch(register shape_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double time_to_index_reg;
- register double origin_reg;
- register sample_type * fcn_table_reg;
- register double table_len_reg;
- register sample_type sin_scale_reg = susp->sin->scale;
- register sample_block_values_type sin_ptr_reg;
- falloc_sample_block(out, "shape_s_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the sin input sample block: */
- susp_check_term_log_samples(sin, sin_ptr, sin_cnt);
- togo = MIN(togo, susp->sin_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- time_to_index_reg = susp->time_to_index;
- origin_reg = susp->origin;
- fcn_table_reg = susp->fcn_table;
- table_len_reg = susp->table_len;
- sin_ptr_reg = susp->sin_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-
- register double offset, x1;
- register long table_index;
- register double phase = (sin_scale_reg * *sin_ptr_reg++);
- if (phase > 1.0) phase = 1.0;
- else if (phase < -1.0) phase = -1.0;
- offset = (phase + origin_reg) * time_to_index_reg;
- table_index = (long) offset;
- if (table_index < 0) table_index = 0;
- if (table_index >= table_len_reg) table_index = ((long) table_len_reg) - 1;
- x1 = fcn_table_reg[table_index];
- *out_ptr_reg++ = (sample_type) (x1 + (offset - table_index) *
- (fcn_table_reg[table_index + 1] - x1));
- ;
- } while (--n); /* inner loop */
-
- susp->origin = origin_reg;
- /* using sin_ptr_reg is a bad idea on RS/6000: */
- susp->sin_ptr += togo;
- out_ptr += togo;
- susp_took(sin_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* shape_s_fetch */
-
-
-void shape_toss_fetch(susp, snd_list)
- register shape_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from sin up to final_time for this block of zeros */
- while ((round((final_time - susp->sin->t0) * susp->sin->sr)) >=
- susp->sin->current)
- susp_get_samples(sin, sin_ptr, sin_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->sin->t0) * susp->sin->sr -
- (susp->sin->current - susp->sin_cnt));
- susp->sin_ptr += n;
- susp_took(sin_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void shape_mark(shape_susp_type susp)
-{
- sound_xlmark(susp->sin);
-}
-
-/* Made this static to avoid function name collision on Mac OS X
- -dmazzoni */
-
-static void shape_free(shape_susp_type susp)
-{
-table_unref(susp->the_table); sound_unref(susp->sin);
- ffree_generic(susp, sizeof(shape_susp_node), "shape_free");
-}
-
-
-void shape_print_tree(shape_susp_type susp, int n)
-{
- indent(n);
- stdputstr("sin:");
- sound_print_tree_1(susp->sin, n);
-}
-
-
-sound_type snd_make_shape(sound_type sin, sound_type fn, double origin)
-{
- register shape_susp_type susp;
- rate_type sr = sin->sr;
- time_type t0 = sin->t0;
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- falloc_generic(susp, shape_susp_node, "snd_make_shape");
- susp->time_to_index = fn->sr;
- susp->origin = origin;
- susp->the_table = sound_to_table(fn);
- susp->fcn_table = susp->the_table->samples;
- susp->table_len = susp->the_table->length;
- susp->susp.fetch = shape_s_fetch;
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < sin->t0) sound_prepend_zeros(sin, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(sin->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = shape_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = shape_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = shape_mark;
- susp->susp.print_tree = shape_print_tree;
- susp->susp.name = "shape";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(sin);
- susp->susp.current = 0;
- susp->sin = sin;
- susp->sin_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_shape(sound_type sin, sound_type fn, double origin)
-{
- sound_type sin_copy = sound_copy(sin);
- return snd_make_shape(sin_copy, fn, origin);
-}
diff --git a/lib-src/libnyquist/tran/shape.h b/lib-src/libnyquist/tran/shape.h
deleted file mode 100644
index d0ab65e..0000000
--- a/lib-src/libnyquist/tran/shape.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_shape(sound_type sin, sound_type fn, double origin);
-sound_type snd_shape(sound_type sin, sound_type fn, double origin);
- /* LISP: (snd-shape SOUND SOUND ANYNUM) */
diff --git a/lib-src/libnyquist/tran/sine.alg b/lib-src/libnyquist/tran/sine.alg
deleted file mode 100644
index e00afde..0000000
--- a/lib-src/libnyquist/tran/sine.alg
+++ /dev/null
@@ -1,31 +0,0 @@
-(SINE-ALG
-(NAME "sine")
-(ARGUMENTS ("time_type" "t0") ("double" "hz") ("rate_type" "sr") ("time_type" "d"))
-(STATE ("long" "phase" "0")
- ("long" "ph_incr" "round(((hz * SINE_TABLE_LEN) * (1 << SINE_TABLE_SHIFT) / sr))"))
-(TERMINATE (AFTER "d"))
-(INNER-LOOP "output = sine_table[phase >> SINE_TABLE_SHIFT];
- phase += ph_incr;
- phase &= SINE_TABLE_MASK;")
-(MAINTAIN ("phase"
- "susp->phase = (susp->phase + susp->ph_incr * togo) & SINE_TABLE_MASK"))
-(CONSTANT "ph_incr")
-(SAMPLE-RATE "sr")
-(SUPPORT-HEADER "#define SINE_TABLE_LEN 2048
-#define SINE_TABLE_MASK 0x7FFFFFFF
-#define SINE_TABLE_SHIFT 20
-void sine_init();
-extern sample_type sine_table[];
-")
-(SUPPORT-FUNCTIONS "
-sample_type sine_table[SINE_TABLE_LEN + 1];
-
-void sine_init()
-{
- int i;
- for (i = 0; i <= SINE_TABLE_LEN; i++)
- sine_table[i] = (sample_type) (sin((PI * 2 * i) / SINE_TABLE_LEN));
-}
-")
-)
-
diff --git a/lib-src/libnyquist/tran/sine.c b/lib-src/libnyquist/tran/sine.c
deleted file mode 100644
index c84d85f..0000000
--- a/lib-src/libnyquist/tran/sine.c
+++ /dev/null
@@ -1,126 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "sine.h"
-
-void sine_free();
-
-
-typedef struct sine_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
-
- long phase;
- long ph_incr;
-} sine_susp_node, *sine_susp_type;
-
-
-sample_type sine_table[SINE_TABLE_LEN + 1];
-
-void sine_init()
-{
- int i;
- for (i = 0; i <= SINE_TABLE_LEN; i++)
- sine_table[i] = (sample_type) (sin((PI * 2 * i) / SINE_TABLE_LEN));
-}
-
-
-void sine__fetch(register sine_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register long phase_reg;
- register long ph_incr_reg;
- falloc_sample_block(out, "sine__fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
- n = togo;
- phase_reg = susp->phase;
- ph_incr_reg = susp->ph_incr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-*out_ptr_reg++ = sine_table[phase_reg >> SINE_TABLE_SHIFT];
- phase_reg += ph_incr_reg;
- phase_reg &= SINE_TABLE_MASK;;
- } while (--n); /* inner loop */
-
- susp->phase = (susp->phase + susp->ph_incr * togo) & SINE_TABLE_MASK;
- out_ptr += togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
-} /* sine__fetch */
-
-
-void sine_free(sine_susp_type susp)
-{
- ffree_generic(susp, sizeof(sine_susp_node), "sine_free");
-}
-
-
-void sine_print_tree(sine_susp_type susp, int n)
-{
-}
-
-
-sound_type snd_make_sine(time_type t0, double hz, rate_type sr, time_type d)
-{
- register sine_susp_type susp;
- /* sr specified as input parameter */
- /* t0 specified as input parameter */
- sample_type scale_factor = 1.0F;
- falloc_generic(susp, sine_susp_node, "snd_make_sine");
- susp->phase = 0;
- susp->ph_incr = round(((hz * SINE_TABLE_LEN) * (1 << SINE_TABLE_SHIFT) / sr));
- susp->susp.fetch = sine__fetch;
-
- susp->terminate_cnt = round((d) * sr);
- /* initialize susp state */
- susp->susp.free = sine_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = NULL;
- susp->susp.print_tree = sine_print_tree;
- susp->susp.name = "sine";
- susp->susp.log_stop_cnt = UNKNOWN;
- susp->susp.current = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_sine(time_type t0, double hz, rate_type sr, time_type d)
-{
- return snd_make_sine(t0, hz, sr, d);
-}
diff --git a/lib-src/libnyquist/tran/sine.h b/lib-src/libnyquist/tran/sine.h
deleted file mode 100644
index 9c9897d..0000000
--- a/lib-src/libnyquist/tran/sine.h
+++ /dev/null
@@ -1,8 +0,0 @@
-sound_type snd_make_sine(time_type t0, double hz, rate_type sr, time_type d);
-sound_type snd_sine(time_type t0, double hz, rate_type sr, time_type d);
- /* LISP: (snd-sine ANYNUM ANYNUM ANYNUM ANYNUM) */
-#define SINE_TABLE_LEN 2048
-#define SINE_TABLE_MASK 0x7FFFFFFF
-#define SINE_TABLE_SHIFT 20
-void sine_init();
-extern sample_type sine_table[];
diff --git a/lib-src/libnyquist/tran/siosc.alg b/lib-src/libnyquist/tran/siosc.alg
deleted file mode 100644
index df233a9..0000000
--- a/lib-src/libnyquist/tran/siosc.alg
+++ /dev/null
@@ -1,130 +0,0 @@
-(SIOSC-ALG
-(NAME "siosc")
-
-; wave tables are provided in the argument "lis" as follows:
-; (tab0 t1 tab1 t2 tab2 t3 tab3 ... tN tabN)
-; where tab0 is the initial table, the table is linearly interpolated until
-; sample t1, at which point the table is tab1. From there, tab1 is interpolated
-; to tab2 at t2, etc. The sound stops at the terminate time of s_fm, so
-; if that comes before tN, tabN is used for the remainder of the sound.
-; t1, t2, ... tN are fixnums with sample counts
-
-(ARGUMENTS ("LVAL" "lis") ("rate_type" "sr")
- ("double" "hz") ("time_type" "t0") ("sound_type" "s_fm"))
-(SUPPORT-FUNCTIONS "
-/* sisosc_table_init -- set up first two tables for interpolation */
-/**/
-void siosc_table_init(siosc_susp_type susp)
-{
- sound_type snd;
- if (!susp->lis) xlfail(\"bad table list in SIOSC\");
- snd = getsound(car(susp->lis));
- susp->table_b_ptr_ptr = sound_to_table(snd);
- susp->table_b_samps = susp->table_b_ptr_ptr->samples;
- susp->lis = cdr(susp->lis);
- susp->table_sr = snd->sr;
-}
-
-/* siosc_table_update -- outer loop processing, get next table */
-/**/
-long siosc_table_update(siosc_susp_type susp, long cur)
-{
- long n;
-
- /* swap ampramps: */
- susp->ampramp_a = 1.0;
- susp->ampramp_b = 0.0;
-
- /* swap tables: */
- table_unref(susp->table_a_ptr);
- susp->table_a_ptr = susp->table_b_ptr_ptr;
- susp->table_a_samps = susp->table_b_samps;
- susp->table_b_ptr_ptr = NULL; /* so we do not try to unref it */
-
- if (susp->lis) {
- sound_type snd;
-
- /* compute slope */
- susp->next_breakpoint = getfixnum(car(susp->lis));
- susp->lis = cdr(susp->lis);
- n = susp->next_breakpoint - cur;
- susp->ampslope = 1.0 / n;
-
- /* build new table: */
- if (!susp->lis) xlfail(\"bad table list in SIOSC\");
- snd = getsound(car(susp->lis));
- susp->table_b_ptr_ptr = sound_to_table(snd);
- susp->table_b_samps = susp->table_b_ptr_ptr->samples;
- if (susp->table_b_ptr_ptr->length != susp->table_len || susp->table_sr != snd->sr)
- xlfail(\"mismatched tables passed to SIOSC\") ;
- susp->lis = cdr(susp->lis);
- } else { /* use only table a */
- susp->ampslope = 0.0;
- susp->next_breakpoint = 0x7FFFFFFF;
- n = 0x7FFFFFFF;
- }
- return n;
-}
-")
-
-(STATE ("double" "table_len" "0.0")
- ("double" "ph_incr" "0.0")
- ("table_type" "table_a_ptr" "NULL")
- ("table_type" "table_b_ptr_ptr" "NULL")
- ("sample_type *" "table_a_samps" "NULL")
- ("sample_type *" "table_b_samps" "NULL")
- ("double" "table_sr" "0.0")
- ("double" "phase" "0.0")
- ("LVAL" "lis" "lis")
- ("long" "next_breakpoint" "0")
- ("double" "ampramp_a" "1.0")
- ("double" "ampramp_b" "0.0")
- ("double" "ampslope" "0.0;
- siosc_table_init(susp);
- susp->ph_incr = hz * susp->table_len / sr;
- s_fm->scale = (sample_type) (s_fm->scale * (susp->table_len / sr))")
-)
-
-(ALWAYS-SCALE s_fm)
-(INLINE-INTERPOLATION T) ; so that modulation can be low frequency
-(STEP-FUNCTION s_fm)
-(TERMINATE (MIN s_fm))
-(LOGICAL-STOP (MIN s_fm))
-(INNER-LOOP-LOCALS " long table_index;
- double xa, xb;
-")
-
-; Implementation notes:
-; "lis" points to the next time to be used, or NULL
-
-(OUTER-LOOP "
- { long cur = susp->susp.current + cnt;
- n = susp->next_breakpoint - cur;
- if (n == 0) n = siosc_table_update(susp, cur);
- }
- togo = MIN(n, togo);
-")
-
-(INNER-LOOP " table_index = (long) phase;
- xa = table_a_samps[table_index];
- xb = table_b_samps[table_index];
- output = (sample_type)
- (ampramp_a * (xa + (phase - table_index) *
- (table_a_samps[table_index + 1] - xa)) +
- ampramp_b * (xb + (phase - table_index) *
- (table_b_samps[table_index + 1] - xb)));
- ampramp_a -= ampslope;
- ampramp_b += ampslope;
- phase += ph_incr + s_fm;
- while (phase > table_len) phase -= table_len;
- /* watch out for negative frequencies! */
- while (phase < 0) phase += table_len")
-(CONSTANT "ph_incr" "table_len" "table_ptr" "table_a_samps"
- "table_b_samps" "ampslope" "table_a_ptr" "table_b_ptr_ptr")
-
-(SAMPLE-RATE "sr")
-(FINALIZATION " table_unref(susp->table_a_ptr);
- table_unref(susp->table_b_ptr_ptr);
-")
-)
-
diff --git a/lib-src/libnyquist/tran/siosc.c b/lib-src/libnyquist/tran/siosc.c
deleted file mode 100644
index 12c6de8..0000000
--- a/lib-src/libnyquist/tran/siosc.c
+++ /dev/null
@@ -1,636 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "siosc.h"
-
-void siosc_free();
-
-
-typedef struct siosc_susp_struct {
- snd_susp_node susp;
- boolean started;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type s_fm;
- long s_fm_cnt;
- sample_block_values_type s_fm_ptr;
-
- /* support for interpolation of s_fm */
- sample_type s_fm_x1_sample;
- double s_fm_pHaSe;
- double s_fm_pHaSe_iNcR;
-
- /* support for ramp between samples of s_fm */
- double output_per_s_fm;
- long s_fm_n;
-
- double table_len;
- double ph_incr;
- table_type table_a_ptr;
- table_type table_b_ptr_ptr;
- sample_type *table_a_samps;
- sample_type *table_b_samps;
- double table_sr;
- double phase;
- LVAL lis;
- long next_breakpoint;
- double ampramp_a;
- double ampramp_b;
- double ampslope;
-} siosc_susp_node, *siosc_susp_type;
-
-
-/* sisosc_table_init -- set up first two tables for interpolation */
-/**/
-void siosc_table_init(siosc_susp_type susp)
-{
- sound_type snd;
- if (!susp->lis) xlfail("bad table list in SIOSC");
- snd = getsound(car(susp->lis));
- susp->table_b_ptr_ptr = sound_to_table(snd);
- susp->table_b_samps = susp->table_b_ptr_ptr->samples;
- susp->lis = cdr(susp->lis);
- susp->table_sr = snd->sr;
-}
-
-/* siosc_table_update -- outer loop processing, get next table */
-/**/
-long siosc_table_update(siosc_susp_type susp, long cur)
-{
- long n;
-
- /* swap ampramps: */
- susp->ampramp_a = 1.0;
- susp->ampramp_b = 0.0;
-
- /* swap tables: */
- table_unref(susp->table_a_ptr);
- susp->table_a_ptr = susp->table_b_ptr_ptr;
- susp->table_a_samps = susp->table_b_samps;
- susp->table_b_ptr_ptr = NULL; /* so we do not try to unref it */
-
- if (susp->lis) {
- sound_type snd;
-
- /* compute slope */
- susp->next_breakpoint = getfixnum(car(susp->lis));
- susp->lis = cdr(susp->lis);
- n = susp->next_breakpoint - cur;
- susp->ampslope = 1.0 / n;
-
- /* build new table: */
- if (!susp->lis) xlfail("bad table list in SIOSC");
- snd = getsound(car(susp->lis));
- susp->table_b_ptr_ptr = sound_to_table(snd);
- susp->table_b_samps = susp->table_b_ptr_ptr->samples;
- if (susp->table_b_ptr_ptr->length != susp->table_len || susp->table_sr != snd->sr)
- xlfail("mismatched tables passed to SIOSC") ;
- susp->lis = cdr(susp->lis);
- } else { /* use only table a */
- susp->ampslope = 0.0;
- susp->next_breakpoint = 0x7FFFFFFF;
- n = 0x7FFFFFFF;
- }
- return n;
-}
-
-
-void siosc_s_fetch(register siosc_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double table_len_reg;
- register double ph_incr_reg;
- register sample_type * table_a_samps_reg;
- register sample_type * table_b_samps_reg;
- register double phase_reg;
- register double ampramp_a_reg;
- register double ampramp_b_reg;
- register double ampslope_reg;
- register sample_type s_fm_scale_reg = susp->s_fm->scale;
- register sample_block_values_type s_fm_ptr_reg;
- falloc_sample_block(out, "siosc_s_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s_fm input sample block: */
- susp_check_term_log_samples(s_fm, s_fm_ptr, s_fm_cnt);
- togo = MIN(togo, susp->s_fm_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
-
- { long cur = susp->susp.current + cnt;
- n = susp->next_breakpoint - cur;
- if (n == 0) n = siosc_table_update(susp, cur);
- }
- togo = MIN(n, togo);
-
- n = togo;
- table_len_reg = susp->table_len;
- ph_incr_reg = susp->ph_incr;
- table_a_samps_reg = susp->table_a_samps;
- table_b_samps_reg = susp->table_b_samps;
- phase_reg = susp->phase;
- ampramp_a_reg = susp->ampramp_a;
- ampramp_b_reg = susp->ampramp_b;
- ampslope_reg = susp->ampslope;
- s_fm_ptr_reg = susp->s_fm_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- long table_index;
- double xa, xb;
- table_index = (long) phase_reg;
- xa = table_a_samps_reg[table_index];
- xb = table_b_samps_reg[table_index];
- *out_ptr_reg++ = (sample_type)
- (ampramp_a_reg * (xa + (phase_reg - table_index) *
- (table_a_samps_reg[table_index + 1] - xa)) +
- ampramp_b_reg * (xb + (phase_reg - table_index) *
- (table_b_samps_reg[table_index + 1] - xb)));
- ampramp_a_reg -= ampslope_reg;
- ampramp_b_reg += ampslope_reg;
- phase_reg += ph_incr_reg + (s_fm_scale_reg * *s_fm_ptr_reg++);
- while (phase_reg > table_len_reg) phase_reg -= table_len_reg;
- /* watch out for negative frequencies! */
- while (phase_reg < 0) phase_reg += table_len_reg;
- } while (--n); /* inner loop */
-
- susp->phase = phase_reg;
- susp->ampramp_a = ampramp_a_reg;
- susp->ampramp_b = ampramp_b_reg;
- /* using s_fm_ptr_reg is a bad idea on RS/6000: */
- susp->s_fm_ptr += togo;
- out_ptr += togo;
- susp_took(s_fm_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* siosc_s_fetch */
-
-
-void siosc_i_fetch(register siosc_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double table_len_reg;
- register double ph_incr_reg;
- register sample_type * table_a_samps_reg;
- register sample_type * table_b_samps_reg;
- register double phase_reg;
- register double ampramp_a_reg;
- register double ampramp_b_reg;
- register double ampslope_reg;
- register double s_fm_pHaSe_iNcR_rEg = susp->s_fm_pHaSe_iNcR;
- register double s_fm_pHaSe_ReG;
- register sample_type s_fm_x1_sample_reg;
- falloc_sample_block(out, "siosc_i_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp_check_term_log_samples(s_fm, s_fm_ptr, s_fm_cnt);
- susp->s_fm_x1_sample = susp_fetch_sample(s_fm, s_fm_ptr, s_fm_cnt);
- }
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
-
- { long cur = susp->susp.current + cnt;
- n = susp->next_breakpoint - cur;
- if (n == 0) n = siosc_table_update(susp, cur);
- }
- togo = MIN(n, togo);
-
- n = togo;
- table_len_reg = susp->table_len;
- ph_incr_reg = susp->ph_incr;
- table_a_samps_reg = susp->table_a_samps;
- table_b_samps_reg = susp->table_b_samps;
- phase_reg = susp->phase;
- ampramp_a_reg = susp->ampramp_a;
- ampramp_b_reg = susp->ampramp_b;
- ampslope_reg = susp->ampslope;
- s_fm_pHaSe_ReG = susp->s_fm_pHaSe;
- s_fm_x1_sample_reg = susp->s_fm_x1_sample;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- long table_index;
- double xa, xb;
- if (s_fm_pHaSe_ReG >= 1.0) {
-/* fixup-depends s_fm */
- /* pick up next sample as s_fm_x1_sample: */
- susp->s_fm_ptr++;
- susp_took(s_fm_cnt, 1);
- s_fm_pHaSe_ReG -= 1.0;
- susp_check_term_log_samples_break(s_fm, s_fm_ptr, s_fm_cnt, s_fm_x1_sample_reg);
- s_fm_x1_sample_reg = susp_current_sample(s_fm, s_fm_ptr);
- }
- table_index = (long) phase_reg;
- xa = table_a_samps_reg[table_index];
- xb = table_b_samps_reg[table_index];
- *out_ptr_reg++ = (sample_type)
- (ampramp_a_reg * (xa + (phase_reg - table_index) *
- (table_a_samps_reg[table_index + 1] - xa)) +
- ampramp_b_reg * (xb + (phase_reg - table_index) *
- (table_b_samps_reg[table_index + 1] - xb)));
- ampramp_a_reg -= ampslope_reg;
- ampramp_b_reg += ampslope_reg;
- phase_reg += ph_incr_reg + s_fm_x1_sample_reg;
- while (phase_reg > table_len_reg) phase_reg -= table_len_reg;
- /* watch out for negative frequencies! */
- while (phase_reg < 0) phase_reg += table_len_reg;
- s_fm_pHaSe_ReG += s_fm_pHaSe_iNcR_rEg;
- } while (--n); /* inner loop */
-
- togo -= n;
- susp->phase = phase_reg;
- susp->ampramp_a = ampramp_a_reg;
- susp->ampramp_b = ampramp_b_reg;
- susp->s_fm_pHaSe = s_fm_pHaSe_ReG;
- susp->s_fm_x1_sample = s_fm_x1_sample_reg;
- out_ptr += togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* siosc_i_fetch */
-
-
-void siosc_r_fetch(register siosc_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- sample_type s_fm_val;
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double table_len_reg;
- register double ph_incr_reg;
- register sample_type * table_a_samps_reg;
- register sample_type * table_b_samps_reg;
- register double phase_reg;
- register double ampramp_a_reg;
- register double ampramp_b_reg;
- register double ampslope_reg;
- falloc_sample_block(out, "siosc_r_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp->s_fm_pHaSe = 1.0;
- }
-
- susp_check_term_log_samples(s_fm, s_fm_ptr, s_fm_cnt);
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* grab next s_fm_x1_sample when phase goes past 1.0; */
- /* use s_fm_n (computed below) to avoid roundoff errors: */
- if (susp->s_fm_n <= 0) {
- susp_check_term_log_samples(s_fm, s_fm_ptr, s_fm_cnt);
- susp->s_fm_x1_sample = susp_fetch_sample(s_fm, s_fm_ptr, s_fm_cnt);
- susp->s_fm_pHaSe -= 1.0;
- /* s_fm_n gets number of samples before phase exceeds 1.0: */
- susp->s_fm_n = (long) ((1.0 - susp->s_fm_pHaSe) *
- susp->output_per_s_fm);
- }
- togo = MIN(togo, susp->s_fm_n);
- s_fm_val = susp->s_fm_x1_sample;
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
-
- { long cur = susp->susp.current + cnt;
- n = susp->next_breakpoint - cur;
- if (n == 0) n = siosc_table_update(susp, cur);
- }
- togo = MIN(n, togo);
-
- n = togo;
- table_len_reg = susp->table_len;
- ph_incr_reg = susp->ph_incr;
- table_a_samps_reg = susp->table_a_samps;
- table_b_samps_reg = susp->table_b_samps;
- phase_reg = susp->phase;
- ampramp_a_reg = susp->ampramp_a;
- ampramp_b_reg = susp->ampramp_b;
- ampslope_reg = susp->ampslope;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- long table_index;
- double xa, xb;
- table_index = (long) phase_reg;
- xa = table_a_samps_reg[table_index];
- xb = table_b_samps_reg[table_index];
- *out_ptr_reg++ = (sample_type)
- (ampramp_a_reg * (xa + (phase_reg - table_index) *
- (table_a_samps_reg[table_index + 1] - xa)) +
- ampramp_b_reg * (xb + (phase_reg - table_index) *
- (table_b_samps_reg[table_index + 1] - xb)));
- ampramp_a_reg -= ampslope_reg;
- ampramp_b_reg += ampslope_reg;
- phase_reg += ph_incr_reg + s_fm_val;
- while (phase_reg > table_len_reg) phase_reg -= table_len_reg;
- /* watch out for negative frequencies! */
- while (phase_reg < 0) phase_reg += table_len_reg;
- } while (--n); /* inner loop */
-
- susp->phase = phase_reg;
- susp->ampramp_a = ampramp_a_reg;
- susp->ampramp_b = ampramp_b_reg;
- out_ptr += togo;
- susp->s_fm_pHaSe += togo * susp->s_fm_pHaSe_iNcR;
- susp->s_fm_n -= togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* siosc_r_fetch */
-
-
-void siosc_toss_fetch(susp, snd_list)
- register siosc_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from s_fm up to final_time for this block of zeros */
- while ((round((final_time - susp->s_fm->t0) * susp->s_fm->sr)) >=
- susp->s_fm->current)
- susp_get_samples(s_fm, s_fm_ptr, s_fm_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->s_fm->t0) * susp->s_fm->sr -
- (susp->s_fm->current - susp->s_fm_cnt));
- susp->s_fm_ptr += n;
- susp_took(s_fm_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void siosc_mark(siosc_susp_type susp)
-{
- if (susp->lis) mark(susp->lis);
- sound_xlmark(susp->s_fm);
-}
-
-
-void siosc_free(siosc_susp_type susp)
-{
- table_unref(susp->table_a_ptr);
- table_unref(susp->table_b_ptr_ptr);
- sound_unref(susp->s_fm);
- ffree_generic(susp, sizeof(siosc_susp_node), "siosc_free");
-}
-
-
-void siosc_print_tree(siosc_susp_type susp, int n)
-{
- indent(n);
- stdputstr("s_fm:");
- sound_print_tree_1(susp->s_fm, n);
-}
-
-
-sound_type snd_make_siosc(LVAL lis, rate_type sr, double hz, time_type t0, sound_type s_fm)
-{
- register siosc_susp_type susp;
- /* sr specified as input parameter */
- /* t0 specified as input parameter */
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- falloc_generic(susp, siosc_susp_node, "snd_make_siosc");
- susp->table_len = 0.0;
- susp->ph_incr = 0.0;
- susp->table_a_ptr = NULL;
- susp->table_b_ptr_ptr = NULL;
- susp->table_a_samps = NULL;
- susp->table_b_samps = NULL;
- susp->table_sr = 0.0;
- susp->phase = 0.0;
- susp->lis = lis;
- susp->next_breakpoint = 0;
- susp->ampramp_a = 1.0;
- susp->ampramp_b = 0.0;
- susp->ampslope = 0.0;
- siosc_table_init(susp);
- susp->ph_incr = hz * susp->table_len / sr;
- s_fm->scale = (sample_type) (s_fm->scale * (susp->table_len / sr));
-
- /* select a susp fn based on sample rates */
- interp_desc = (interp_desc << 2) + interp_style(s_fm, sr);
- switch (interp_desc) {
- case INTERP_n: /* handled below */
- case INTERP_s: susp->susp.fetch = siosc_s_fetch; break;
- case INTERP_i: susp->susp.fetch = siosc_i_fetch; break;
- case INTERP_r: susp->susp.fetch = siosc_r_fetch; break;
- default: snd_badsr(); break;
- }
-
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < s_fm->t0) sound_prepend_zeros(s_fm, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(s_fm->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = siosc_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = siosc_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = siosc_mark;
- susp->susp.print_tree = siosc_print_tree;
- susp->susp.name = "siosc";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(s_fm);
- susp->started = false;
- susp->susp.current = 0;
- susp->s_fm = s_fm;
- susp->s_fm_cnt = 0;
- susp->s_fm_pHaSe = 0.0;
- susp->s_fm_pHaSe_iNcR = s_fm->sr / sr;
- susp->s_fm_n = 0;
- susp->output_per_s_fm = sr / s_fm->sr;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_siosc(LVAL lis, rate_type sr, double hz, time_type t0, sound_type s_fm)
-{
- sound_type s_fm_copy = sound_copy(s_fm);
- return snd_make_siosc(lis, sr, hz, t0, s_fm_copy);
-}
diff --git a/lib-src/libnyquist/tran/siosc.h b/lib-src/libnyquist/tran/siosc.h
deleted file mode 100644
index 5507075..0000000
--- a/lib-src/libnyquist/tran/siosc.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_siosc(LVAL lis, rate_type sr, double hz, time_type t0, sound_type s_fm);
-sound_type snd_siosc(LVAL lis, rate_type sr, double hz, time_type t0, sound_type s_fm);
- /* LISP: (snd-siosc ANY ANYNUM ANYNUM ANYNUM SOUND) */
diff --git a/lib-src/libnyquist/tran/slope.alg b/lib-src/libnyquist/tran/slope.alg
deleted file mode 100644
index 7b0cb2b..0000000
--- a/lib-src/libnyquist/tran/slope.alg
+++ /dev/null
@@ -1,15 +0,0 @@
-(SLOPE-ALG
- (NAME "slope")
- (ARGUMENTS ("sound_type" "input"))
- (STATE ("sample_type" "prev" "0.0F")
- ("double" "scale" "input->sr * input->scale"))
- (INTERNAL-SCALING input)
- (CONSTANT "scale")
- (DELAY 1)
- (START (MIN input))
- (INNER-LOOP "{ register sample_type x = input;
-output = (sample_type) ((x - prev) * scale);
-prev = x;}")
- (TERMINATE (MIN input))
- (LOGICAL-STOP (MIN input))
-)
diff --git a/lib-src/libnyquist/tran/slope.c b/lib-src/libnyquist/tran/slope.c
deleted file mode 100644
index c75c9f1..0000000
--- a/lib-src/libnyquist/tran/slope.c
+++ /dev/null
@@ -1,210 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "slope.h"
-
-void slope_free();
-
-
-typedef struct slope_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type input;
- long input_cnt;
- sample_block_values_type input_ptr;
-
- sample_type prev;
- double scale;
-} slope_susp_node, *slope_susp_type;
-
-
-void slope_n_fetch(register slope_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register sample_type prev_reg;
- register double scale_reg;
- register sample_block_values_type input_ptr_reg;
- falloc_sample_block(out, "slope_n_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the input input sample block: */
- susp_check_term_log_samples(input, input_ptr, input_cnt);
- togo = MIN(togo, susp->input_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- prev_reg = susp->prev;
- scale_reg = susp->scale;
- input_ptr_reg = susp->input_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-{ register sample_type x = *input_ptr_reg++;
-*out_ptr_reg++ = (sample_type) ((x - prev_reg) * scale_reg);
-prev_reg = x;};
- } while (--n); /* inner loop */
-
- susp->prev = prev_reg;
- /* using input_ptr_reg is a bad idea on RS/6000: */
- susp->input_ptr += togo;
- out_ptr += togo;
- susp_took(input_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* slope_n_fetch */
-
-
-void slope_toss_fetch(susp, snd_list)
- register slope_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from input up to final_time for this block of zeros */
- while ((round((final_time - susp->input->t0) * susp->input->sr)) >=
- susp->input->current)
- susp_get_samples(input, input_ptr, input_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->input->t0) * susp->input->sr -
- (susp->input->current - susp->input_cnt));
- susp->input_ptr += n;
- susp_took(input_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void slope_mark(slope_susp_type susp)
-{
- sound_xlmark(susp->input);
-}
-
-
-void slope_free(slope_susp_type susp)
-{
- sound_unref(susp->input);
- ffree_generic(susp, sizeof(slope_susp_node), "slope_free");
-}
-
-
-void slope_print_tree(slope_susp_type susp, int n)
-{
- indent(n);
- stdputstr("input:");
- sound_print_tree_1(susp->input, n);
-}
-
-
-sound_type snd_make_slope(sound_type input)
-{
- register slope_susp_type susp;
- rate_type sr = input->sr;
- time_type t0 = input->t0;
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- falloc_generic(susp, slope_susp_node, "snd_make_slope");
- susp->prev = 0.0F;
- susp->scale = input->sr * input->scale;
- susp->susp.fetch = slope_n_fetch;
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < input->t0) sound_prepend_zeros(input, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(input->t0, t0);
- /* how many samples to toss before t0: */
- /* Toss an extra 1 samples to make up for internal buffering: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 1.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = slope_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = slope_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = slope_mark;
- susp->susp.print_tree = slope_print_tree;
- susp->susp.name = "slope";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(input);
- susp->susp.current = 0;
- susp->input = input;
- susp->input_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_slope(sound_type input)
-{
- sound_type input_copy = sound_copy(input);
- return snd_make_slope(input_copy);
-}
diff --git a/lib-src/libnyquist/tran/slope.h b/lib-src/libnyquist/tran/slope.h
deleted file mode 100644
index 39cafaf..0000000
--- a/lib-src/libnyquist/tran/slope.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_slope(sound_type input);
-sound_type snd_slope(sound_type input);
- /* LISP: (snd-slope SOUND) */
diff --git a/lib-src/libnyquist/tran/sqrt.alg b/lib-src/libnyquist/tran/sqrt.alg
deleted file mode 100644
index 5c392a3..0000000
--- a/lib-src/libnyquist/tran/sqrt.alg
+++ /dev/null
@@ -1,9 +0,0 @@
-(SQRT-ALG
- (NAME "sqrt")
- (ARGUMENTS ("sound_type" "input"))
- (ALWAYS-SCALE input)
- (START (MIN input))
- (INNER-LOOP "{ sample_type i = input; if (i < 0) i = 0; output = (sample_type) sqrt(i); }")
- (TERMINATE (MIN input))
- (LOGICAL-STOP (MIN input))
-)
diff --git a/lib-src/libnyquist/tran/sqrt.c b/lib-src/libnyquist/tran/sqrt.c
deleted file mode 100644
index c4574c0..0000000
--- a/lib-src/libnyquist/tran/sqrt.c
+++ /dev/null
@@ -1,198 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "sqrt.h"
-
-void sqrt_free();
-
-
-typedef struct sqrt_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type input;
- long input_cnt;
- sample_block_values_type input_ptr;
-} sqrt_susp_node, *sqrt_susp_type;
-
-
-void sqrt_s_fetch(register sqrt_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register sample_type input_scale_reg = susp->input->scale;
- register sample_block_values_type input_ptr_reg;
- falloc_sample_block(out, "sqrt_s_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the input input sample block: */
- susp_check_term_log_samples(input, input_ptr, input_cnt);
- togo = MIN(togo, susp->input_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- input_ptr_reg = susp->input_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-{ sample_type i = (input_scale_reg * *input_ptr_reg++); if (i < 0) i = 0; *out_ptr_reg++ = (sample_type) sqrt(i); };
- } while (--n); /* inner loop */
-
- /* using input_ptr_reg is a bad idea on RS/6000: */
- susp->input_ptr += togo;
- out_ptr += togo;
- susp_took(input_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* sqrt_s_fetch */
-
-
-void sqrt_toss_fetch(susp, snd_list)
- register sqrt_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from input up to final_time for this block of zeros */
- while ((round((final_time - susp->input->t0) * susp->input->sr)) >=
- susp->input->current)
- susp_get_samples(input, input_ptr, input_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->input->t0) * susp->input->sr -
- (susp->input->current - susp->input_cnt));
- susp->input_ptr += n;
- susp_took(input_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void sqrt_mark(sqrt_susp_type susp)
-{
- sound_xlmark(susp->input);
-}
-
-
-void sqrt_free(sqrt_susp_type susp)
-{
- sound_unref(susp->input);
- ffree_generic(susp, sizeof(sqrt_susp_node), "sqrt_free");
-}
-
-
-void sqrt_print_tree(sqrt_susp_type susp, int n)
-{
- indent(n);
- stdputstr("input:");
- sound_print_tree_1(susp->input, n);
-}
-
-
-sound_type snd_make_sqrt(sound_type input)
-{
- register sqrt_susp_type susp;
- rate_type sr = input->sr;
- time_type t0 = input->t0;
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- falloc_generic(susp, sqrt_susp_node, "snd_make_sqrt");
- susp->susp.fetch = sqrt_s_fetch;
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < input->t0) sound_prepend_zeros(input, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(input->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = sqrt_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = sqrt_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = sqrt_mark;
- susp->susp.print_tree = sqrt_print_tree;
- susp->susp.name = "sqrt";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(input);
- susp->susp.current = 0;
- susp->input = input;
- susp->input_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_sqrt(sound_type input)
-{
- sound_type input_copy = sound_copy(input);
- return snd_make_sqrt(input_copy);
-}
diff --git a/lib-src/libnyquist/tran/sqrt.h b/lib-src/libnyquist/tran/sqrt.h
deleted file mode 100644
index ab47c6f..0000000
--- a/lib-src/libnyquist/tran/sqrt.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_sqrt(sound_type input);
-sound_type snd_sqrt(sound_type input);
- /* LISP: (snd-sqrt SOUND) */
diff --git a/lib-src/libnyquist/tran/tapf.alg b/lib-src/libnyquist/tran/tapf.alg
deleted file mode 100644
index 6b065e1..0000000
--- a/lib-src/libnyquist/tran/tapf.alg
+++ /dev/null
@@ -1,49 +0,0 @@
-(TAPF-ALG
-(NAME "tapf")
-(ARGUMENTS ("sound_type" "s1") ("double" "offset") ("sound_type" "vardelay")
- ("double" "maxdelay"))
-(INLINE-INTERPOLATION T)
-(STEP-FUNCTION "vardelay")
-(INTERNAL-SCALING vardelay)
-(ALWAYS-SCALE s1)
-(START (MAX s1 vardelay))
-(TERMINATE (MIN s1 vardelay))
-(LOGICAL-STOP (MIN s1))
-(STATE ("double" "offset" "offset * s1->sr")
- ("double" "vdscale" "vardelay->scale * s1->sr")
- ("long" "maxdelay" "(long)(maxdelay * s1->sr)")
- ("long" "bufflen" "MAX(2, (long) (susp->maxdelay + 0.5))")
- ("long" "index" "susp->bufflen")
- ("sample_type *" "buffer"
- "(sample_type *) calloc(susp->bufflen + 1, sizeof(sample_type))"))
-(SAMPLE-RATE (MAX s1))
-(CONSTANT "maxdelay" "offset" "vdscale" "buffer")
-(INNER-LOOP-LOCALS " long phase;
-")
-(INNER-LOOP " phase = (long) (vardelay * vdscale + offset);
- /* now phase should give number of samples of delay */
- if (phase < 0) phase = 0;
- else if (phase > maxdelay) phase = maxdelay;
- phase = index - phase;
- /* now phase is a location in the buffer (before modulo) */
-
- /* Time out to update the buffer:
- * this is a tricky buffer: buffer[0] == buffer[bufflen]
- * the logical length is bufflen, but the actual length
- * is bufflen + 1 to allow for a repeated sample at the
- * end. This allows for efficient interpolation.
- */
- buffer[index++] = s1;
- if (index >= bufflen) {
- index = 0;
- }
-
- /* back to the phase calculation:
- * use conditional instead of modulo
- */
- if (phase < 0) phase += bufflen;
- output = (sample_type) (buffer[phase]);")
-(FINALIZATION " free(susp->buffer);
-")
-)
-
diff --git a/lib-src/libnyquist/tran/tapf.c b/lib-src/libnyquist/tran/tapf.c
deleted file mode 100644
index a67e823..0000000
--- a/lib-src/libnyquist/tran/tapf.c
+++ /dev/null
@@ -1,619 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "tapf.h"
-
-void tapf_free();
-
-
-typedef struct tapf_susp_struct {
- snd_susp_node susp;
- boolean started;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type s1;
- long s1_cnt;
- sample_block_values_type s1_ptr;
- sound_type vardelay;
- long vardelay_cnt;
- sample_block_values_type vardelay_ptr;
-
- /* support for interpolation of vardelay */
- sample_type vardelay_x1_sample;
- double vardelay_pHaSe;
- double vardelay_pHaSe_iNcR;
-
- /* support for ramp between samples of vardelay */
- double output_per_vardelay;
- long vardelay_n;
-
- double offset;
- double vdscale;
- long maxdelay;
- long bufflen;
- long index;
- sample_type *buffer;
-} tapf_susp_node, *tapf_susp_type;
-
-
-void tapf_sn_fetch(register tapf_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double offset_reg;
- register double vdscale_reg;
- register long maxdelay_reg;
- register long bufflen_reg;
- register long index_reg;
- register sample_type * buffer_reg;
- register sample_block_values_type vardelay_ptr_reg;
- register sample_type s1_scale_reg = susp->s1->scale;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "tapf_sn_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past the vardelay input sample block: */
- susp_check_term_samples(vardelay, vardelay_ptr, vardelay_cnt);
- togo = MIN(togo, susp->vardelay_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- offset_reg = susp->offset;
- vdscale_reg = susp->vdscale;
- maxdelay_reg = susp->maxdelay;
- bufflen_reg = susp->bufflen;
- index_reg = susp->index;
- buffer_reg = susp->buffer;
- vardelay_ptr_reg = susp->vardelay_ptr;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- long phase;
- phase = (long) (*vardelay_ptr_reg++ * vdscale_reg + offset_reg);
- /* now phase should give number of samples of delay */
- if (phase < 0) phase = 0;
- else if (phase > maxdelay_reg) phase = maxdelay_reg;
- phase = index_reg - phase;
- /* now phase is a location in the buffer_reg (before modulo) */
-
- /* Time out to update the buffer_reg:
- * this is a tricky buffer_reg: buffer_reg[0] == buffer_reg[bufflen_reg]
- * the logical length is bufflen_reg, but the actual length
- * is bufflen_reg + 1 to allow for a repeated sample at the
- * end. This allows for efficient interpolation.
- */
- buffer_reg[index_reg++] = (s1_scale_reg * *s1_ptr_reg++);
- if (index_reg >= bufflen_reg) {
- index_reg = 0;
- }
-
- /* back to the phase calculation:
- * use conditional instead of modulo
- */
- if (phase < 0) phase += bufflen_reg;
- *out_ptr_reg++ = (sample_type) (buffer_reg[phase]);;
- } while (--n); /* inner loop */
-
- susp->bufflen = bufflen_reg;
- susp->index = index_reg;
- /* using vardelay_ptr_reg is a bad idea on RS/6000: */
- susp->vardelay_ptr += togo;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp_took(vardelay_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* tapf_sn_fetch */
-
-
-void tapf_si_fetch(register tapf_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- sample_type vardelay_x2_sample;
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double offset_reg;
- register double vdscale_reg;
- register long maxdelay_reg;
- register long bufflen_reg;
- register long index_reg;
- register sample_type * buffer_reg;
- register double vardelay_pHaSe_iNcR_rEg = susp->vardelay_pHaSe_iNcR;
- register double vardelay_pHaSe_ReG;
- register sample_type vardelay_x1_sample_reg;
- register sample_type s1_scale_reg = susp->s1->scale;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "tapf_si_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp_check_term_samples(vardelay, vardelay_ptr, vardelay_cnt);
- susp->vardelay_x1_sample = susp_fetch_sample(vardelay, vardelay_ptr, vardelay_cnt);
- }
-
- susp_check_term_samples(vardelay, vardelay_ptr, vardelay_cnt);
- vardelay_x2_sample = susp_current_sample(vardelay, vardelay_ptr);
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- offset_reg = susp->offset;
- vdscale_reg = susp->vdscale;
- maxdelay_reg = susp->maxdelay;
- bufflen_reg = susp->bufflen;
- index_reg = susp->index;
- buffer_reg = susp->buffer;
- vardelay_pHaSe_ReG = susp->vardelay_pHaSe;
- vardelay_x1_sample_reg = susp->vardelay_x1_sample;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- long phase;
- if (vardelay_pHaSe_ReG >= 1.0) {
- vardelay_x1_sample_reg = vardelay_x2_sample;
- /* pick up next sample as vardelay_x2_sample: */
- susp->vardelay_ptr++;
- susp_took(vardelay_cnt, 1);
- vardelay_pHaSe_ReG -= 1.0;
- susp_check_term_samples_break(vardelay, vardelay_ptr, vardelay_cnt, vardelay_x2_sample);
- }
- phase = (long) (
- (vardelay_x1_sample_reg * (1 - vardelay_pHaSe_ReG) + vardelay_x2_sample * vardelay_pHaSe_ReG) * vdscale_reg + offset_reg);
- /* now phase should give number of samples of delay */
- if (phase < 0) phase = 0;
- else if (phase > maxdelay_reg) phase = maxdelay_reg;
- phase = index_reg - phase;
- /* now phase is a location in the buffer_reg (before modulo) */
-
- /* Time out to update the buffer_reg:
- * this is a tricky buffer_reg: buffer_reg[0] == buffer_reg[bufflen_reg]
- * the logical length is bufflen_reg, but the actual length
- * is bufflen_reg + 1 to allow for a repeated sample at the
- * end. This allows for efficient interpolation.
- */
- buffer_reg[index_reg++] = (s1_scale_reg * *s1_ptr_reg++);
- if (index_reg >= bufflen_reg) {
- index_reg = 0;
- }
-
- /* back to the phase calculation:
- * use conditional instead of modulo
- */
- if (phase < 0) phase += bufflen_reg;
- *out_ptr_reg++ = (sample_type) (buffer_reg[phase]);;
- vardelay_pHaSe_ReG += vardelay_pHaSe_iNcR_rEg;
- } while (--n); /* inner loop */
-
- togo -= n;
- susp->bufflen = bufflen_reg;
- susp->index = index_reg;
- susp->vardelay_pHaSe = vardelay_pHaSe_ReG;
- susp->vardelay_x1_sample = vardelay_x1_sample_reg;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* tapf_si_fetch */
-
-
-void tapf_sr_fetch(register tapf_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- sample_type vardelay_DeLtA;
- sample_type vardelay_val;
- sample_type vardelay_x2_sample;
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double offset_reg;
- register double vdscale_reg;
- register long maxdelay_reg;
- register long bufflen_reg;
- register long index_reg;
- register sample_type * buffer_reg;
- register sample_type s1_scale_reg = susp->s1->scale;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "tapf_sr_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp->vardelay_pHaSe = 1.0;
- }
-
- susp_check_term_samples(vardelay, vardelay_ptr, vardelay_cnt);
- vardelay_x2_sample = susp_current_sample(vardelay, vardelay_ptr);
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* grab next vardelay_x2_sample when phase goes past 1.0; */
- /* we use vardelay_n (computed below) to avoid roundoff errors: */
- if (susp->vardelay_n <= 0) {
- susp->vardelay_x1_sample = vardelay_x2_sample;
- susp->vardelay_ptr++;
- susp_took(vardelay_cnt, 1);
- susp->vardelay_pHaSe -= 1.0;
- susp_check_term_samples(vardelay, vardelay_ptr, vardelay_cnt);
- vardelay_x2_sample = susp_current_sample(vardelay, vardelay_ptr);
- /* vardelay_n gets number of samples before phase exceeds 1.0: */
- susp->vardelay_n = (long) ((1.0 - susp->vardelay_pHaSe) *
- susp->output_per_vardelay);
- }
- togo = MIN(togo, susp->vardelay_n);
- vardelay_DeLtA = (sample_type) ((vardelay_x2_sample - susp->vardelay_x1_sample) * susp->vardelay_pHaSe_iNcR);
- vardelay_val = (sample_type) (susp->vardelay_x1_sample * (1.0 - susp->vardelay_pHaSe) +
- vardelay_x2_sample * susp->vardelay_pHaSe);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- offset_reg = susp->offset;
- vdscale_reg = susp->vdscale;
- maxdelay_reg = susp->maxdelay;
- bufflen_reg = susp->bufflen;
- index_reg = susp->index;
- buffer_reg = susp->buffer;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- long phase;
- phase = (long) (vardelay_val * vdscale_reg + offset_reg);
- /* now phase should give number of samples of delay */
- if (phase < 0) phase = 0;
- else if (phase > maxdelay_reg) phase = maxdelay_reg;
- phase = index_reg - phase;
- /* now phase is a location in the buffer_reg (before modulo) */
-
- /* Time out to update the buffer_reg:
- * this is a tricky buffer_reg: buffer_reg[0] == buffer_reg[bufflen_reg]
- * the logical length is bufflen_reg, but the actual length
- * is bufflen_reg + 1 to allow for a repeated sample at the
- * end. This allows for efficient interpolation.
- */
- buffer_reg[index_reg++] = (s1_scale_reg * *s1_ptr_reg++);
- if (index_reg >= bufflen_reg) {
- index_reg = 0;
- }
-
- /* back to the phase calculation:
- * use conditional instead of modulo
- */
- if (phase < 0) phase += bufflen_reg;
- *out_ptr_reg++ = (sample_type) (buffer_reg[phase]);;
- vardelay_val += vardelay_DeLtA;
- } while (--n); /* inner loop */
-
- susp->bufflen = bufflen_reg;
- susp->index = index_reg;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp->vardelay_pHaSe += togo * susp->vardelay_pHaSe_iNcR;
- susp->vardelay_n -= togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* tapf_sr_fetch */
-
-
-void tapf_toss_fetch(susp, snd_list)
- register tapf_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from s1 up to final_time for this block of zeros */
- while ((round((final_time - susp->s1->t0) * susp->s1->sr)) >=
- susp->s1->current)
- susp_get_samples(s1, s1_ptr, s1_cnt);
- /* fetch samples from vardelay up to final_time for this block of zeros */
- while ((round((final_time - susp->vardelay->t0) * susp->vardelay->sr)) >=
- susp->vardelay->current)
- susp_get_samples(vardelay, vardelay_ptr, vardelay_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->s1->t0) * susp->s1->sr -
- (susp->s1->current - susp->s1_cnt));
- susp->s1_ptr += n;
- susp_took(s1_cnt, n);
- n = round((final_time - susp->vardelay->t0) * susp->vardelay->sr -
- (susp->vardelay->current - susp->vardelay_cnt));
- susp->vardelay_ptr += n;
- susp_took(vardelay_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void tapf_mark(tapf_susp_type susp)
-{
- sound_xlmark(susp->s1);
- sound_xlmark(susp->vardelay);
-}
-
-
-void tapf_free(tapf_susp_type susp)
-{
- free(susp->buffer);
- sound_unref(susp->s1);
- sound_unref(susp->vardelay);
- ffree_generic(susp, sizeof(tapf_susp_node), "tapf_free");
-}
-
-
-void tapf_print_tree(tapf_susp_type susp, int n)
-{
- indent(n);
- stdputstr("s1:");
- sound_print_tree_1(susp->s1, n);
-
- indent(n);
- stdputstr("vardelay:");
- sound_print_tree_1(susp->vardelay, n);
-}
-
-
-sound_type snd_make_tapf(sound_type s1, double offset, sound_type vardelay, double maxdelay)
-{
- register tapf_susp_type susp;
- rate_type sr = s1->sr;
- time_type t0 = MAX(s1->t0, vardelay->t0);
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- falloc_generic(susp, tapf_susp_node, "snd_make_tapf");
- susp->offset = offset * s1->sr;
- susp->vdscale = vardelay->scale * s1->sr;
- susp->maxdelay = (long)(maxdelay * s1->sr);
- susp->bufflen = MAX(2, (long) (susp->maxdelay + 0.5));
- susp->index = susp->bufflen;
- susp->buffer = (sample_type *) calloc(susp->bufflen + 1, sizeof(sample_type));
-
- /* select a susp fn based on sample rates */
- interp_desc = (interp_desc << 2) + interp_style(s1, sr);
- interp_desc = (interp_desc << 2) + interp_style(vardelay, sr);
- switch (interp_desc) {
- case INTERP_ns: /* handled below */
- case INTERP_nn: /* handled below */
- case INTERP_ss: /* handled below */
- case INTERP_sn: susp->susp.fetch = tapf_sn_fetch; break;
- case INTERP_ni: /* handled below */
- case INTERP_si: susp->susp.fetch = tapf_si_fetch; break;
- case INTERP_nr: /* handled below */
- case INTERP_sr: susp->susp.fetch = tapf_sr_fetch; break;
- default: snd_badsr(); break;
- }
-
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < s1->t0) sound_prepend_zeros(s1, t0);
- if (t0 < vardelay->t0) sound_prepend_zeros(vardelay, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(s1->t0, MIN(vardelay->t0, t0));
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = tapf_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = tapf_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = tapf_mark;
- susp->susp.print_tree = tapf_print_tree;
- susp->susp.name = "tapf";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(s1);
- susp->started = false;
- susp->susp.current = 0;
- susp->s1 = s1;
- susp->s1_cnt = 0;
- susp->vardelay = vardelay;
- susp->vardelay_cnt = 0;
- susp->vardelay_pHaSe = 0.0;
- susp->vardelay_pHaSe_iNcR = vardelay->sr / sr;
- susp->vardelay_n = 0;
- susp->output_per_vardelay = sr / vardelay->sr;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_tapf(sound_type s1, double offset, sound_type vardelay, double maxdelay)
-{
- sound_type s1_copy = sound_copy(s1);
- sound_type vardelay_copy = sound_copy(vardelay);
- return snd_make_tapf(s1_copy, offset, vardelay_copy, maxdelay);
-}
diff --git a/lib-src/libnyquist/tran/tapf.h b/lib-src/libnyquist/tran/tapf.h
deleted file mode 100644
index 879e0f1..0000000
--- a/lib-src/libnyquist/tran/tapf.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_tapf(sound_type s1, double offset, sound_type vardelay, double maxdelay);
-sound_type snd_tapf(sound_type s1, double offset, sound_type vardelay, double maxdelay);
- /* LISP: (snd-tapf SOUND ANYNUM SOUND ANYNUM) */
diff --git a/lib-src/libnyquist/tran/tapv.alg b/lib-src/libnyquist/tran/tapv.alg
deleted file mode 100644
index 4994ef8..0000000
--- a/lib-src/libnyquist/tran/tapv.alg
+++ /dev/null
@@ -1,53 +0,0 @@
-(TAPV-ALG
-(NAME "tapv")
-(ARGUMENTS ("sound_type" "s1") ("double" "offset") ("sound_type" "vardelay")
- ("double" "maxdelay"))
-(INLINE-INTERPOLATION T)
-(INTERNAL-SCALING vardelay)
-(ALWAYS-SCALE s1)
-(START (MAX s1 vardelay))
-(TERMINATE (MIN s1 vardelay))
-(LOGICAL-STOP (MIN s1))
-(STATE ("double" "offset" "offset * s1->sr")
- ("double" "vdscale" "vardelay->scale * s1->sr")
- ("double" "maxdelay" "maxdelay * s1->sr")
- ("long" "bufflen" "MAX(2, (long) (susp->maxdelay + 1.5))")
- ("long" "index" "susp->bufflen")
- ("sample_type *" "buffer"
- "(sample_type *) calloc(susp->bufflen + 1, sizeof(sample_type))"))
-(SAMPLE-RATE (MAX s1))
-(CONSTANT "maxdelay" "offset" "vdscale" "buffer")
-(INNER-LOOP-LOCALS " double phase;
- long i;
-")
-(INNER-LOOP " phase = vardelay * vdscale + offset;
- /* now phase should give number of samples of delay */
- if (phase < 0) phase = 0;
- else if (phase > maxdelay) phase = maxdelay;
- phase = (double) index - phase;
- /* now phase is a location in the buffer (before modulo) */
-
- /* Time out to update the buffer:
- * this is a tricky buffer: buffer[0] == buffer[bufflen]
- * the logical length is bufflen, but the actual length
- * is bufflen + 1 to allow for a repeated sample at the
- * end. This allows for efficient interpolation.
- */
- buffer[index++] = s1;
- if (index > bufflen) {
- buffer[0] = buffer[bufflen];
- index = 1;
- }
-
- /* back to the phase calculation:
- * use conditional instead of modulo
- */
- if (phase < 0) phase += bufflen;
- i = (long) phase; /* put integer part in i */
- phase -= (double) i; /* put fractional part in phase */
- output = (sample_type) (buffer[i] * (1.0 - phase) +
- buffer[i + 1] * phase);")
-(FINALIZATION " free(susp->buffer);
-")
-)
-
diff --git a/lib-src/libnyquist/tran/tapv.c b/lib-src/libnyquist/tran/tapv.c
deleted file mode 100644
index 45cbbca..0000000
--- a/lib-src/libnyquist/tran/tapv.c
+++ /dev/null
@@ -1,634 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "tapv.h"
-
-void tapv_free();
-
-
-typedef struct tapv_susp_struct {
- snd_susp_node susp;
- boolean started;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type s1;
- long s1_cnt;
- sample_block_values_type s1_ptr;
- sound_type vardelay;
- long vardelay_cnt;
- sample_block_values_type vardelay_ptr;
-
- /* support for interpolation of vardelay */
- sample_type vardelay_x1_sample;
- double vardelay_pHaSe;
- double vardelay_pHaSe_iNcR;
-
- /* support for ramp between samples of vardelay */
- double output_per_vardelay;
- long vardelay_n;
-
- double offset;
- double vdscale;
- double maxdelay;
- long bufflen;
- long index;
- sample_type *buffer;
-} tapv_susp_node, *tapv_susp_type;
-
-
-void tapv_sn_fetch(register tapv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double offset_reg;
- register double vdscale_reg;
- register double maxdelay_reg;
- register long bufflen_reg;
- register long index_reg;
- register sample_type * buffer_reg;
- register sample_block_values_type vardelay_ptr_reg;
- register sample_type s1_scale_reg = susp->s1->scale;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "tapv_sn_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past the vardelay input sample block: */
- susp_check_term_samples(vardelay, vardelay_ptr, vardelay_cnt);
- togo = MIN(togo, susp->vardelay_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- offset_reg = susp->offset;
- vdscale_reg = susp->vdscale;
- maxdelay_reg = susp->maxdelay;
- bufflen_reg = susp->bufflen;
- index_reg = susp->index;
- buffer_reg = susp->buffer;
- vardelay_ptr_reg = susp->vardelay_ptr;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- double phase;
- long i;
- phase = *vardelay_ptr_reg++ * vdscale_reg + offset_reg;
- /* now phase should give number of samples of delay */
- if (phase < 0) phase = 0;
- else if (phase > maxdelay_reg) phase = maxdelay_reg;
- phase = (double) index_reg - phase;
- /* now phase is a location in the buffer_reg (before modulo) */
-
- /* Time out to update the buffer_reg:
- * this is a tricky buffer_reg: buffer_reg[0] == buffer_reg[bufflen_reg]
- * the logical length is bufflen_reg, but the actual length
- * is bufflen_reg + 1 to allow for a repeated sample at the
- * end. This allows for efficient interpolation.
- */
- buffer_reg[index_reg++] = (s1_scale_reg * *s1_ptr_reg++);
- if (index_reg > bufflen_reg) {
- buffer_reg[0] = buffer_reg[bufflen_reg];
- index_reg = 1;
- }
-
- /* back to the phase calculation:
- * use conditional instead of modulo
- */
- if (phase < 0) phase += bufflen_reg;
- i = (long) phase; /* put integer part in i */
- phase -= (double) i; /* put fractional part in phase */
- *out_ptr_reg++ = (sample_type) (buffer_reg[i] * (1.0 - phase) +
- buffer_reg[i + 1] * phase);;
- } while (--n); /* inner loop */
-
- susp->bufflen = bufflen_reg;
- susp->index = index_reg;
- /* using vardelay_ptr_reg is a bad idea on RS/6000: */
- susp->vardelay_ptr += togo;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp_took(vardelay_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* tapv_sn_fetch */
-
-
-void tapv_si_fetch(register tapv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- sample_type vardelay_x2_sample;
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double offset_reg;
- register double vdscale_reg;
- register double maxdelay_reg;
- register long bufflen_reg;
- register long index_reg;
- register sample_type * buffer_reg;
- register double vardelay_pHaSe_iNcR_rEg = susp->vardelay_pHaSe_iNcR;
- register double vardelay_pHaSe_ReG;
- register sample_type vardelay_x1_sample_reg;
- register sample_type s1_scale_reg = susp->s1->scale;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "tapv_si_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp_check_term_samples(vardelay, vardelay_ptr, vardelay_cnt);
- susp->vardelay_x1_sample = susp_fetch_sample(vardelay, vardelay_ptr, vardelay_cnt);
- }
-
- susp_check_term_samples(vardelay, vardelay_ptr, vardelay_cnt);
- vardelay_x2_sample = susp_current_sample(vardelay, vardelay_ptr);
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- offset_reg = susp->offset;
- vdscale_reg = susp->vdscale;
- maxdelay_reg = susp->maxdelay;
- bufflen_reg = susp->bufflen;
- index_reg = susp->index;
- buffer_reg = susp->buffer;
- vardelay_pHaSe_ReG = susp->vardelay_pHaSe;
- vardelay_x1_sample_reg = susp->vardelay_x1_sample;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- double phase;
- long i;
- if (vardelay_pHaSe_ReG >= 1.0) {
- vardelay_x1_sample_reg = vardelay_x2_sample;
- /* pick up next sample as vardelay_x2_sample: */
- susp->vardelay_ptr++;
- susp_took(vardelay_cnt, 1);
- vardelay_pHaSe_ReG -= 1.0;
- susp_check_term_samples_break(vardelay, vardelay_ptr, vardelay_cnt, vardelay_x2_sample);
- }
- phase =
- (vardelay_x1_sample_reg * (1 - vardelay_pHaSe_ReG) + vardelay_x2_sample * vardelay_pHaSe_ReG) * vdscale_reg + offset_reg;
- /* now phase should give number of samples of delay */
- if (phase < 0) phase = 0;
- else if (phase > maxdelay_reg) phase = maxdelay_reg;
- phase = (double) index_reg - phase;
- /* now phase is a location in the buffer_reg (before modulo) */
-
- /* Time out to update the buffer_reg:
- * this is a tricky buffer_reg: buffer_reg[0] == buffer_reg[bufflen_reg]
- * the logical length is bufflen_reg, but the actual length
- * is bufflen_reg + 1 to allow for a repeated sample at the
- * end. This allows for efficient interpolation.
- */
- buffer_reg[index_reg++] = (s1_scale_reg * *s1_ptr_reg++);
- if (index_reg > bufflen_reg) {
- buffer_reg[0] = buffer_reg[bufflen_reg];
- index_reg = 1;
- }
-
- /* back to the phase calculation:
- * use conditional instead of modulo
- */
- if (phase < 0) phase += bufflen_reg;
- i = (long) phase; /* put integer part in i */
- phase -= (double) i; /* put fractional part in phase */
- *out_ptr_reg++ = (sample_type) (buffer_reg[i] * (1.0 - phase) +
- buffer_reg[i + 1] * phase);;
- vardelay_pHaSe_ReG += vardelay_pHaSe_iNcR_rEg;
- } while (--n); /* inner loop */
-
- togo -= n;
- susp->bufflen = bufflen_reg;
- susp->index = index_reg;
- susp->vardelay_pHaSe = vardelay_pHaSe_ReG;
- susp->vardelay_x1_sample = vardelay_x1_sample_reg;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* tapv_si_fetch */
-
-
-void tapv_sr_fetch(register tapv_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- sample_type vardelay_DeLtA;
- sample_type vardelay_val;
- sample_type vardelay_x2_sample;
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double offset_reg;
- register double vdscale_reg;
- register double maxdelay_reg;
- register long bufflen_reg;
- register long index_reg;
- register sample_type * buffer_reg;
- register sample_type s1_scale_reg = susp->s1->scale;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "tapv_sr_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp->vardelay_pHaSe = 1.0;
- }
-
- susp_check_term_samples(vardelay, vardelay_ptr, vardelay_cnt);
- vardelay_x2_sample = susp_current_sample(vardelay, vardelay_ptr);
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* grab next vardelay_x2_sample when phase goes past 1.0; */
- /* we use vardelay_n (computed below) to avoid roundoff errors: */
- if (susp->vardelay_n <= 0) {
- susp->vardelay_x1_sample = vardelay_x2_sample;
- susp->vardelay_ptr++;
- susp_took(vardelay_cnt, 1);
- susp->vardelay_pHaSe -= 1.0;
- susp_check_term_samples(vardelay, vardelay_ptr, vardelay_cnt);
- vardelay_x2_sample = susp_current_sample(vardelay, vardelay_ptr);
- /* vardelay_n gets number of samples before phase exceeds 1.0: */
- susp->vardelay_n = (long) ((1.0 - susp->vardelay_pHaSe) *
- susp->output_per_vardelay);
- }
- togo = MIN(togo, susp->vardelay_n);
- vardelay_DeLtA = (sample_type) ((vardelay_x2_sample - susp->vardelay_x1_sample) * susp->vardelay_pHaSe_iNcR);
- vardelay_val = (sample_type) (susp->vardelay_x1_sample * (1.0 - susp->vardelay_pHaSe) +
- vardelay_x2_sample * susp->vardelay_pHaSe);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- offset_reg = susp->offset;
- vdscale_reg = susp->vdscale;
- maxdelay_reg = susp->maxdelay;
- bufflen_reg = susp->bufflen;
- index_reg = susp->index;
- buffer_reg = susp->buffer;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- double phase;
- long i;
- phase = vardelay_val * vdscale_reg + offset_reg;
- /* now phase should give number of samples of delay */
- if (phase < 0) phase = 0;
- else if (phase > maxdelay_reg) phase = maxdelay_reg;
- phase = (double) index_reg - phase;
- /* now phase is a location in the buffer_reg (before modulo) */
-
- /* Time out to update the buffer_reg:
- * this is a tricky buffer_reg: buffer_reg[0] == buffer_reg[bufflen_reg]
- * the logical length is bufflen_reg, but the actual length
- * is bufflen_reg + 1 to allow for a repeated sample at the
- * end. This allows for efficient interpolation.
- */
- buffer_reg[index_reg++] = (s1_scale_reg * *s1_ptr_reg++);
- if (index_reg > bufflen_reg) {
- buffer_reg[0] = buffer_reg[bufflen_reg];
- index_reg = 1;
- }
-
- /* back to the phase calculation:
- * use conditional instead of modulo
- */
- if (phase < 0) phase += bufflen_reg;
- i = (long) phase; /* put integer part in i */
- phase -= (double) i; /* put fractional part in phase */
- *out_ptr_reg++ = (sample_type) (buffer_reg[i] * (1.0 - phase) +
- buffer_reg[i + 1] * phase);;
- vardelay_val += vardelay_DeLtA;
- } while (--n); /* inner loop */
-
- susp->bufflen = bufflen_reg;
- susp->index = index_reg;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp->vardelay_pHaSe += togo * susp->vardelay_pHaSe_iNcR;
- susp->vardelay_n -= togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* tapv_sr_fetch */
-
-
-void tapv_toss_fetch(susp, snd_list)
- register tapv_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from s1 up to final_time for this block of zeros */
- while ((round((final_time - susp->s1->t0) * susp->s1->sr)) >=
- susp->s1->current)
- susp_get_samples(s1, s1_ptr, s1_cnt);
- /* fetch samples from vardelay up to final_time for this block of zeros */
- while ((round((final_time - susp->vardelay->t0) * susp->vardelay->sr)) >=
- susp->vardelay->current)
- susp_get_samples(vardelay, vardelay_ptr, vardelay_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->s1->t0) * susp->s1->sr -
- (susp->s1->current - susp->s1_cnt));
- susp->s1_ptr += n;
- susp_took(s1_cnt, n);
- n = round((final_time - susp->vardelay->t0) * susp->vardelay->sr -
- (susp->vardelay->current - susp->vardelay_cnt));
- susp->vardelay_ptr += n;
- susp_took(vardelay_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void tapv_mark(tapv_susp_type susp)
-{
- sound_xlmark(susp->s1);
- sound_xlmark(susp->vardelay);
-}
-
-
-void tapv_free(tapv_susp_type susp)
-{
- free(susp->buffer);
- sound_unref(susp->s1);
- sound_unref(susp->vardelay);
- ffree_generic(susp, sizeof(tapv_susp_node), "tapv_free");
-}
-
-
-void tapv_print_tree(tapv_susp_type susp, int n)
-{
- indent(n);
- stdputstr("s1:");
- sound_print_tree_1(susp->s1, n);
-
- indent(n);
- stdputstr("vardelay:");
- sound_print_tree_1(susp->vardelay, n);
-}
-
-
-sound_type snd_make_tapv(sound_type s1, double offset, sound_type vardelay, double maxdelay)
-{
- register tapv_susp_type susp;
- rate_type sr = s1->sr;
- time_type t0 = MAX(s1->t0, vardelay->t0);
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- falloc_generic(susp, tapv_susp_node, "snd_make_tapv");
- susp->offset = offset * s1->sr;
- susp->vdscale = vardelay->scale * s1->sr;
- susp->maxdelay = maxdelay * s1->sr;
- susp->bufflen = MAX(2, (long) (susp->maxdelay + 1.5));
- susp->index = susp->bufflen;
- susp->buffer = (sample_type *) calloc(susp->bufflen + 1, sizeof(sample_type));
-
- /* select a susp fn based on sample rates */
- interp_desc = (interp_desc << 2) + interp_style(s1, sr);
- interp_desc = (interp_desc << 2) + interp_style(vardelay, sr);
- switch (interp_desc) {
- case INTERP_ns: /* handled below */
- case INTERP_nn: /* handled below */
- case INTERP_ss: /* handled below */
- case INTERP_sn: susp->susp.fetch = tapv_sn_fetch; break;
- case INTERP_ni: /* handled below */
- case INTERP_si: susp->susp.fetch = tapv_si_fetch; break;
- case INTERP_nr: /* handled below */
- case INTERP_sr: susp->susp.fetch = tapv_sr_fetch; break;
- default: snd_badsr(); break;
- }
-
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < s1->t0) sound_prepend_zeros(s1, t0);
- if (t0 < vardelay->t0) sound_prepend_zeros(vardelay, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(s1->t0, MIN(vardelay->t0, t0));
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = tapv_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = tapv_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = tapv_mark;
- susp->susp.print_tree = tapv_print_tree;
- susp->susp.name = "tapv";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(s1);
- susp->started = false;
- susp->susp.current = 0;
- susp->s1 = s1;
- susp->s1_cnt = 0;
- susp->vardelay = vardelay;
- susp->vardelay_cnt = 0;
- susp->vardelay_pHaSe = 0.0;
- susp->vardelay_pHaSe_iNcR = vardelay->sr / sr;
- susp->vardelay_n = 0;
- susp->output_per_vardelay = sr / vardelay->sr;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_tapv(sound_type s1, double offset, sound_type vardelay, double maxdelay)
-{
- sound_type s1_copy = sound_copy(s1);
- sound_type vardelay_copy = sound_copy(vardelay);
- return snd_make_tapv(s1_copy, offset, vardelay_copy, maxdelay);
-}
diff --git a/lib-src/libnyquist/tran/tapv.h b/lib-src/libnyquist/tran/tapv.h
deleted file mode 100644
index 81f4b83..0000000
--- a/lib-src/libnyquist/tran/tapv.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_tapv(sound_type s1, double offset, sound_type vardelay, double maxdelay);
-sound_type snd_tapv(sound_type s1, double offset, sound_type vardelay, double maxdelay);
- /* LISP: (snd-tapv SOUND ANYNUM SOUND ANYNUM) */
diff --git a/lib-src/libnyquist/tran/tone.alg b/lib-src/libnyquist/tran/tone.alg
deleted file mode 100644
index 9a8e1a5..0000000
--- a/lib-src/libnyquist/tran/tone.alg
+++ /dev/null
@@ -1,15 +0,0 @@
-(TONE-ALG
-(NAME "tone")
-(ARGUMENTS ("sound_type" "input") ("double" "hz"))
-(START (MIN input))
-(TERMINATE (MIN input))
-(LOGICAL-STOP (MIN input))
-(STATE ("double" "b" "2.0 - cos(hz * PI2 / input->sr)" TEMP)
- ("double" "c2" "b - sqrt((b * b) - 1.0)")
- ("double" "c1" "(1.0 - susp->c2) * input->scale")
- ("double" "prev" "0.0"))
-(INTERNAL-SCALING input)
-(CONSTANT "c1" "c2")
-(INNER-LOOP "output = (sample_type) (prev = c1 * input + c2 * prev)")
-)
-
diff --git a/lib-src/libnyquist/tran/tone.c b/lib-src/libnyquist/tran/tone.c
deleted file mode 100644
index 00d1622..0000000
--- a/lib-src/libnyquist/tran/tone.c
+++ /dev/null
@@ -1,213 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "tone.h"
-
-void tone_free();
-
-
-typedef struct tone_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type input;
- long input_cnt;
- sample_block_values_type input_ptr;
-
- double c2;
- double c1;
- double prev;
-} tone_susp_node, *tone_susp_type;
-
-
-void tone_n_fetch(register tone_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double c2_reg;
- register double c1_reg;
- register double prev_reg;
- register sample_block_values_type input_ptr_reg;
- falloc_sample_block(out, "tone_n_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the input input sample block: */
- susp_check_term_log_samples(input, input_ptr, input_cnt);
- togo = MIN(togo, susp->input_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- prev_reg = susp->prev;
- input_ptr_reg = susp->input_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-*out_ptr_reg++ = (sample_type) (prev_reg = c1_reg * *input_ptr_reg++ + c2_reg * prev_reg);
- } while (--n); /* inner loop */
-
- susp->prev = prev_reg;
- /* using input_ptr_reg is a bad idea on RS/6000: */
- susp->input_ptr += togo;
- out_ptr += togo;
- susp_took(input_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* tone_n_fetch */
-
-
-void tone_toss_fetch(susp, snd_list)
- register tone_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from input up to final_time for this block of zeros */
- while ((round((final_time - susp->input->t0) * susp->input->sr)) >=
- susp->input->current)
- susp_get_samples(input, input_ptr, input_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->input->t0) * susp->input->sr -
- (susp->input->current - susp->input_cnt));
- susp->input_ptr += n;
- susp_took(input_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void tone_mark(tone_susp_type susp)
-{
- sound_xlmark(susp->input);
-}
-
-
-void tone_free(tone_susp_type susp)
-{
- sound_unref(susp->input);
- ffree_generic(susp, sizeof(tone_susp_node), "tone_free");
-}
-
-
-void tone_print_tree(tone_susp_type susp, int n)
-{
- indent(n);
- stdputstr("input:");
- sound_print_tree_1(susp->input, n);
-}
-
-
-sound_type snd_make_tone(sound_type input, double hz)
-{
- register tone_susp_type susp;
- double b;
- rate_type sr = input->sr;
- time_type t0 = input->t0;
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- falloc_generic(susp, tone_susp_node, "snd_make_tone");
- b = 2.0 - cos(hz * PI2 / input->sr);
- susp->c2 = b - sqrt((b * b) - 1.0);
- susp->c1 = (1.0 - susp->c2) * input->scale;
- susp->prev = 0.0;
- susp->susp.fetch = tone_n_fetch;
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < input->t0) sound_prepend_zeros(input, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(input->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = tone_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = tone_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = tone_mark;
- susp->susp.print_tree = tone_print_tree;
- susp->susp.name = "tone";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(input);
- susp->susp.current = 0;
- susp->input = input;
- susp->input_cnt = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_tone(sound_type input, double hz)
-{
- sound_type input_copy = sound_copy(input);
- return snd_make_tone(input_copy, hz);
-}
diff --git a/lib-src/libnyquist/tran/tone.h b/lib-src/libnyquist/tran/tone.h
deleted file mode 100644
index 34798a1..0000000
--- a/lib-src/libnyquist/tran/tone.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_tone(sound_type input, double hz);
-sound_type snd_tone(sound_type input, double hz);
- /* LISP: (snd-tone SOUND ANYNUM) */
diff --git a/lib-src/libnyquist/tran/tonev.alg b/lib-src/libnyquist/tran/tonev.alg
deleted file mode 100644
index c7ba37e..0000000
--- a/lib-src/libnyquist/tran/tonev.alg
+++ /dev/null
@@ -1,24 +0,0 @@
-(TONEV-ALG
-(NAME "tonev")
-(ARGUMENTS ("sound_type" "s1") ("sound_type" "hz"))
-(INLINE-INTERPOLATION T)
-(INTERNAL-SCALING s1)
-(ALWAYS-SCALE hz)
-(START (MAX s1 hz))
-(TERMINATE (MIN s1 hz))
-(LOGICAL-STOP (MIN s1))
-(STATE ("double" "scale1" "s1->scale")
- ("double" "c2" "0.0")
- ("double" "c1" "0.0")
- ("double" "prev" "0.0;
- hz->scale = (sample_type) (hz->scale * (PI2 / s1->sr))"))
-(SAMPLE-RATE (MAX s1))
-(STEP-FUNCTION hz)
-(DEPENDS ("b" "hz" "2.0 - cos(hz)" TEMP "register double")
- ("c2" "hz" "b - sqrt((b * b) - 1.0)")
- ("c1" "hz" "(1.0 - c2) * scale1"))
-(CONSTANT "c1" "c2" "b" "scale1")
-(FORCE-INTO-REGISTER scale1)
-(INNER-LOOP " output = (sample_type) (prev = c1 * s1 + c2 * prev)")
-)
-
diff --git a/lib-src/libnyquist/tran/tonev.c b/lib-src/libnyquist/tran/tonev.c
deleted file mode 100644
index b5a2b06..0000000
--- a/lib-src/libnyquist/tran/tonev.c
+++ /dev/null
@@ -1,531 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "tonev.h"
-
-void tonev_free();
-
-
-typedef struct tonev_susp_struct {
- snd_susp_node susp;
- boolean started;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type s1;
- long s1_cnt;
- sample_block_values_type s1_ptr;
- sound_type hz;
- long hz_cnt;
- sample_block_values_type hz_ptr;
-
- /* support for interpolation of hz */
- sample_type hz_x1_sample;
- double hz_pHaSe;
- double hz_pHaSe_iNcR;
-
- /* support for ramp between samples of hz */
- double output_per_hz;
- long hz_n;
-
- double scale1;
- double c2;
- double c1;
- double prev;
-} tonev_susp_node, *tonev_susp_type;
-
-
-void tonev_ns_fetch(register tonev_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double scale1_reg;
- register double c2_reg;
- register double c1_reg;
- register double prev_reg;
- register sample_type hz_scale_reg = susp->hz->scale;
- register sample_block_values_type hz_ptr_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "tonev_ns_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past the hz input sample block: */
- susp_check_term_samples(hz, hz_ptr, hz_cnt);
- togo = MIN(togo, susp->hz_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- scale1_reg = susp->scale1;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- prev_reg = susp->prev;
- hz_ptr_reg = susp->hz_ptr;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- register double b;
- b = 2.0 - cos((hz_scale_reg * *hz_ptr_reg++));
- c2_reg = b - sqrt((b * b) - 1.0);
- c1_reg = (1.0 - c2_reg) * scale1_reg;
- *out_ptr_reg++ = (sample_type) (prev_reg = c1_reg * *s1_ptr_reg++ + c2_reg * prev_reg);
- } while (--n); /* inner loop */
-
- susp->prev = prev_reg;
- /* using hz_ptr_reg is a bad idea on RS/6000: */
- susp->hz_ptr += togo;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp_took(hz_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* tonev_ns_fetch */
-
-
-void tonev_ni_fetch(register tonev_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double scale1_reg;
- register double c2_reg;
- register double c1_reg;
- register double prev_reg;
- register double hz_pHaSe_iNcR_rEg = susp->hz_pHaSe_iNcR;
- register double hz_pHaSe_ReG;
- register sample_type hz_x1_sample_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "tonev_ni_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- register double b;
- susp->started = true;
- susp_check_term_samples(hz, hz_ptr, hz_cnt);
- susp->hz_x1_sample = susp_fetch_sample(hz, hz_ptr, hz_cnt);
- b = 2.0 - cos(susp->hz_x1_sample);
- susp->c2 = b - sqrt((b * b) - 1.0);
- susp->c1 = (1.0 - susp->c2) * susp->scale1;
- }
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- scale1_reg = susp->scale1;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- prev_reg = susp->prev;
- hz_pHaSe_ReG = susp->hz_pHaSe;
- hz_x1_sample_reg = susp->hz_x1_sample;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- if (hz_pHaSe_ReG >= 1.0) {
-/* fixup-depends hz */
- register double b;
- /* pick up next sample as hz_x1_sample: */
- susp->hz_ptr++;
- susp_took(hz_cnt, 1);
- hz_pHaSe_ReG -= 1.0;
- susp_check_term_samples_break(hz, hz_ptr, hz_cnt, hz_x1_sample_reg);
- hz_x1_sample_reg = susp_current_sample(hz, hz_ptr);
- b = 2.0 - cos(hz_x1_sample_reg);
- c2_reg = susp->c2 = b - sqrt((b * b) - 1.0);
- c1_reg = susp->c1 = (1.0 - c2_reg) * scale1_reg;
- }
- *out_ptr_reg++ = (sample_type) (prev_reg = c1_reg * *s1_ptr_reg++ + c2_reg * prev_reg);
- hz_pHaSe_ReG += hz_pHaSe_iNcR_rEg;
- } while (--n); /* inner loop */
-
- togo -= n;
- susp->prev = prev_reg;
- susp->hz_pHaSe = hz_pHaSe_ReG;
- susp->hz_x1_sample = hz_x1_sample_reg;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* tonev_ni_fetch */
-
-
-void tonev_nr_fetch(register tonev_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- sample_type hz_val;
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double scale1_reg;
- register double c2_reg;
- register double c1_reg;
- register double prev_reg;
- register sample_block_values_type s1_ptr_reg;
- falloc_sample_block(out, "tonev_nr_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp->hz_pHaSe = 1.0;
- }
-
- susp_check_term_samples(hz, hz_ptr, hz_cnt);
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the s1 input sample block: */
- susp_check_term_log_samples(s1, s1_ptr, s1_cnt);
- togo = MIN(togo, susp->s1_cnt);
-
- /* grab next hz_x1_sample when phase goes past 1.0; */
- /* use hz_n (computed below) to avoid roundoff errors: */
- if (susp->hz_n <= 0) {
- register double b;
- susp_check_term_samples(hz, hz_ptr, hz_cnt);
- susp->hz_x1_sample = susp_fetch_sample(hz, hz_ptr, hz_cnt);
- susp->hz_pHaSe -= 1.0;
- /* hz_n gets number of samples before phase exceeds 1.0: */
- susp->hz_n = (long) ((1.0 - susp->hz_pHaSe) *
- susp->output_per_hz);
- b = 2.0 - cos(susp->hz_x1_sample);
- susp->c2 = b - sqrt((b * b) - 1.0);
- susp->c1 = (1.0 - susp->c2) * susp->scale1;
- }
- togo = MIN(togo, susp->hz_n);
- hz_val = susp->hz_x1_sample;
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- scale1_reg = susp->scale1;
- c2_reg = susp->c2;
- c1_reg = susp->c1;
- prev_reg = susp->prev;
- s1_ptr_reg = susp->s1_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- *out_ptr_reg++ = (sample_type) (prev_reg = c1_reg * *s1_ptr_reg++ + c2_reg * prev_reg);
- } while (--n); /* inner loop */
-
- susp->prev = prev_reg;
- /* using s1_ptr_reg is a bad idea on RS/6000: */
- susp->s1_ptr += togo;
- out_ptr += togo;
- susp_took(s1_cnt, togo);
- susp->hz_pHaSe += togo * susp->hz_pHaSe_iNcR;
- susp->hz_n -= togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* tonev_nr_fetch */
-
-
-void tonev_toss_fetch(susp, snd_list)
- register tonev_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from s1 up to final_time for this block of zeros */
- while ((round((final_time - susp->s1->t0) * susp->s1->sr)) >=
- susp->s1->current)
- susp_get_samples(s1, s1_ptr, s1_cnt);
- /* fetch samples from hz up to final_time for this block of zeros */
- while ((round((final_time - susp->hz->t0) * susp->hz->sr)) >=
- susp->hz->current)
- susp_get_samples(hz, hz_ptr, hz_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->s1->t0) * susp->s1->sr -
- (susp->s1->current - susp->s1_cnt));
- susp->s1_ptr += n;
- susp_took(s1_cnt, n);
- n = round((final_time - susp->hz->t0) * susp->hz->sr -
- (susp->hz->current - susp->hz_cnt));
- susp->hz_ptr += n;
- susp_took(hz_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void tonev_mark(tonev_susp_type susp)
-{
- sound_xlmark(susp->s1);
- sound_xlmark(susp->hz);
-}
-
-
-void tonev_free(tonev_susp_type susp)
-{
- sound_unref(susp->s1);
- sound_unref(susp->hz);
- ffree_generic(susp, sizeof(tonev_susp_node), "tonev_free");
-}
-
-
-void tonev_print_tree(tonev_susp_type susp, int n)
-{
- indent(n);
- stdputstr("s1:");
- sound_print_tree_1(susp->s1, n);
-
- indent(n);
- stdputstr("hz:");
- sound_print_tree_1(susp->hz, n);
-}
-
-
-sound_type snd_make_tonev(sound_type s1, sound_type hz)
-{
- register tonev_susp_type susp;
- rate_type sr = s1->sr;
- time_type t0 = MAX(s1->t0, hz->t0);
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- falloc_generic(susp, tonev_susp_node, "snd_make_tonev");
- susp->scale1 = s1->scale;
- susp->c2 = 0.0;
- susp->c1 = 0.0;
- susp->prev = 0.0;
- hz->scale = (sample_type) (hz->scale * (PI2 / s1->sr));
-
- /* select a susp fn based on sample rates */
- interp_desc = (interp_desc << 2) + interp_style(s1, sr);
- interp_desc = (interp_desc << 2) + interp_style(hz, sr);
- switch (interp_desc) {
- case INTERP_sn: /* handled below */
- case INTERP_ss: /* handled below */
- case INTERP_nn: /* handled below */
- case INTERP_ns: susp->susp.fetch = tonev_ns_fetch; break;
- case INTERP_si: /* handled below */
- case INTERP_ni: susp->susp.fetch = tonev_ni_fetch; break;
- case INTERP_sr: /* handled below */
- case INTERP_nr: susp->susp.fetch = tonev_nr_fetch; break;
- default: snd_badsr(); break;
- }
-
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < s1->t0) sound_prepend_zeros(s1, t0);
- if (t0 < hz->t0) sound_prepend_zeros(hz, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(s1->t0, MIN(hz->t0, t0));
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = tonev_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = tonev_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = tonev_mark;
- susp->susp.print_tree = tonev_print_tree;
- susp->susp.name = "tonev";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(s1);
- susp->started = false;
- susp->susp.current = 0;
- susp->s1 = s1;
- susp->s1_cnt = 0;
- susp->hz = hz;
- susp->hz_cnt = 0;
- susp->hz_pHaSe = 0.0;
- susp->hz_pHaSe_iNcR = hz->sr / sr;
- susp->hz_n = 0;
- susp->output_per_hz = sr / hz->sr;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_tonev(sound_type s1, sound_type hz)
-{
- sound_type s1_copy = sound_copy(s1);
- sound_type hz_copy = sound_copy(hz);
- return snd_make_tonev(s1_copy, hz_copy);
-}
diff --git a/lib-src/libnyquist/tran/tonev.h b/lib-src/libnyquist/tran/tonev.h
deleted file mode 100644
index 95bc791..0000000
--- a/lib-src/libnyquist/tran/tonev.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_tonev(sound_type s1, sound_type hz);
-sound_type snd_tonev(sound_type s1, sound_type hz);
- /* LISP: (snd-tonev SOUND SOUND) */
diff --git a/lib-src/libnyquist/tran/translate.lsp b/lib-src/libnyquist/tran/translate.lsp
deleted file mode 100644
index ea6ff4e..0000000
--- a/lib-src/libnyquist/tran/translate.lsp
+++ /dev/null
@@ -1,961 +0,0 @@
-;*************
-; Change Log
-; Date | Change
-;-----------+------------------------------------
-; 18-Dec-91 | [1.2] <jmn> Created
-; 18-Dec-91 | [1.2] <jmn> added *ANSI* tests
-; 13-Jan-92 | [1.2] <jmn> ANSI header includes stdlib.h, excludes decl of
-; | malloc
-; 13-Jan-92 | [1.2] <jmn> upgraded to support new sound block structure
-; 15-Jan-92 | [1.2] <jmn> added declarations for UNKNOWN, isunknown()
-; 15-Jan-92 | [1.2] <jmn> commented out boolean, true, false now declared
-; | in sound.h
-;*************
-;; translate.lsp -- build signal processing code from high level descr.
-
-(setf *ANSI* t)
-(setf *debug* t)
-
-;;**********
-;; combinations - generate all combinations
-;; Inputs:
-;; n - number of combinations to generate
-;; Result:
-;; list of the form
-;; ( (a1 b1) (a2 b2) (a3 b3) ... (an bn) )
-;;
-;;**********
-
-(defun combinations (n)
- (let (comb)
- (cond ((eq n 0) '(nil))
- (t
- (setf comb (combinations (1- n)))
- (append (insert 'ramp comb)
- (insert 'interp comb)
- (insert 'scale comb)
- (insert 'none comb))))))
-
-(print 'comb)
-
-(defun lt () (load "translate"))
-(defun ls () (load "writesusp"))
-(defun lm () (load "writemake"))
-(defun lo () (load "writetoss"))
-(defun li () (load "innerloop"))
-
-(defun ma () (translate "partial"))
-(defun mb () (translate "buzz"))
-(defun mal () (translate "alpass"))
-(defun mf () (translate "follow"))
-(defun mfas () (translate "fromarraystream"))
-(defun mfo () (translate "fromobject"))
-(defun mp () (translate "prod"))
-(defun mc () (translate "const"))
-(defun mct () (translate "coterm"))
-(defun mcl () (translate "clip"))
-(defun me () (translate "exp"))
-(defun mg () (translate "gate"))
-;(defun mr () (translate "ramp"))
-(defun ms () (translate "sine"))
-(defun msh () (translate "shape"))
-(defun mpw () (translate "pwl"))
-;(defun msfr () (translate "sfread"))
-(defun mde () (translate "delay"))
-(defun mdcv () (translate "delaycv"))
-; note: downproto is hand retouched to make downsample
-;(defun md () (translate "downproto"))
-(defun mu () (translate "upsample"))
-(defun ml () (translate "scale"))
-(defun mlo () (translate "log"))
-(defun mm () (translate "maxv"))
-(defun mo () (translate "osc"))
-(defun mof () (translate "offset"))
-(defun mam () (translate "amosc"))
-(defun mfm () (translate "fmosc"))
-(defun mi () (translate "integrate"))
-(defun msl () (translate "slope"))
-(defun mw () (translate "white"))
-(defun mt () (translate "tone"))
-(defun mta () (translate "tapv"))
-(defun mat () (translate "atone"))
-(defun mre () (translate "reson"))
-(defun mrec () (translate "recip"))
-(defun mar () (translate "areson"))
-(defun mtv () (translate "tonev"))
-(defun matv () (translate "atonev"))
-(defun mrvc () (translate "resonvc"))
-(defun mrcv () (translate "resoncv"))
-(defun marvc () (translate "aresonvc"))
-(defun marcv () (translate "aresoncv"))
-(defun mrvv () (translate "resonvv"))
-(defun marvv () (translate "aresonvv"))
-(defun msa () (translate "sampler"))
-(defun msio () (translate "siosc"))
-(defun mq () (translate "quantize"))
-(defun mbq () (translate "biquad"))
-
-(defun mifft () (translate "ifft"))
-
-(defun mcg () (translate "congen"))
-(defun mcv () (translate "convolve"))
-(defun mos () (translate "oneshot"))
-(defun mch () (translate "chase"))
-(defun mpl () (translate "pluck"))
-
-(defun m () (mf) (mp) (mc) (mcl) (mg)
-;;;;;; (mr) (msfr) (md)
- (mm) (ms) (msh) (mpw) (ma) (mb) (mde) (mdcv)
- (mi) (mu) (ml) (mlo)
- (mo) (mof) (mam) (mfm) (mw) (msl) (mt) (mat) (mre) (mrec)
- (mar) (mtv) (mta) (matv) (mrvc) (mrcv) (marvc) (marcv)
- (mrvv) (marvv) (me) (msa) (msio) (mq) (mcg) (mifft)
- (mfas) (mfo) (mct) (mcv) (mal) (mos) (mch) (mbq) (mpl))
-
-; call this when you change writesusp.lsp: "N"ew "S"usp
-(defun ns () (ls) (m))
-; call this when you change writemake.lsp:
-(defun nm () (lm) (m))
-; call this when you change innerloop.lsp:
-(defun ni () (li) (m))
-
-
-;;**********
-;; any-ramp-in -- see if interpolation-list has 'ramp
-;;
-;; note: lis is a list of lists of atoms
-;;**********
-(defun any-ramp-in (lis)
- (dolist (spec lis)
- (cond ((member 'RAMP spec)
- (return t)))))
-
-
-;;**********
-;; any-ramp-or-interp-in -- see if interpolation-list has 'ramp or 'interp
-;;
-;;**********
-(defun any-ramp-or-interp-in (lis)
- (or (any-ramp-in lis)
- (dolist (spec lis)
- (cond ((member 'INTERP spec)
- (return t))))))
-
-
-;;**********
-;; encode -- come up with ascii string for interp spec
-;;
-;; e.g. (none ramp) -> "nr"
-;;
-;;**********
-(defun encode (interpolation)
- (let (first-letter
- (result ""))
- (dolist (interp interpolation)
- (setf first-letter (string (char (symbol-name interp) 0)))
- (setf result (strcat result first-letter)))
- (string-downcase result)))
-
-
-;; ****************
-;; header-list
-;;
-;; Result:
-;; '( "s1" "s2" ... "sn" )
-;; where s1, s2, etc. are the strings for the header part of the
-;; resulting .c file
-;; Notes:
-;; Kludgy. Fix this up for easier maintenance
-;; ****************
-
-(if *ANSI*
- ; ANSI
- (setf header-list
- '("#include \"stdio.h\"\n"
- "#ifndef mips\n"
- "#include \"stdlib.h\"\n"
- "#endif\n"
- "#include \"xlisp.h\"\n"
- "#include \"sound.h\"\n\n"
- "#include \"falloc.h\"\n"
- "#include \"cext.h\"\n"
- ))
- ; non-ANSI
- (setf header-list
- '("#include \"stdio.h\"\n"
- "#include \"xlisp.h\"\n"
- "#include \"sound.h\"\n"
- "#include \"falloc.h\"\n")))
-
-
-(setf h-boilerplate nil)
-
-;--------------obsolete boilerplate-------------
-;; Note that we use "-1" and "< 0". We rely upon C's semantics to
-;; make this work correctly if it is being assigned to a long, float, or
-;; double, and if a long, float, or double is being compared
-; '("\n#ifndef UNKNOWN\n"
-; "#define UNKNOWN -1\n"
-; "#define isunknown(x) ( (x) < 0)\n"
-; "#endif /* UNKNOWN */\n"))
-;-------------------------
-
-
-;;**********
-;; code-gen -- do the output
-;;
-;; Inputs:
-;; alg -
-;; stream -
-;; hstream -
-;;**********
-
-(defun code-gen (alg stream hstream)
- (let (interpolation-list
- (support-functions (get-slot alg 'support-functions))
- (support-header (get-slot alg 'support-header))
- (name (get-slot alg 'name)))
- ;(display "code-gen: " alg stream hstream)
- (print-strings header-list stream)
- (format stream "#include \"~A\"~%" (get-slot alg 'hfile))
- (display "code-gen: printed header")
- (format stream "~%void ~A_free();~%" name)
- (setf interpolation-list (make-interpolation-list alg))
- (display "code-gen: " interpolation-list)
- (put-slot alg interpolation-list 'interpolation-list)
- (put-slot alg (make-interpolation-rationale alg)
- 'interpolation-rationale)
-
- (write-typedef alg stream)
- (display "code-gen: wrote typedef")
-
- (cond (support-functions
- (format stream "~%~A" support-functions)))
-
- (dolist (interpolation interpolation-list)
- (put-slot alg interpolation 'interpolation)
- (display "code-gen: going to write susp for " interpolation)
- (write-susp alg stream)
- (display "code-gen: wrote susp for" interpolation))
-
- ;; this is a special case for no sound arguments
- (cond ((null interpolation-list)
- (write-susp alg stream)))
-
- ;; write the function that is called to read and toss
- ;; samples up to the start time (but only if there are sound arguments)
- (cond ((get-slot alg 'sound-names)
- (write-toss alg stream)))
-
- ;; write the GC marking function
- (cond ((needs-mark-routine alg)
- (write-mark alg stream)))
-
- (write-make alg stream)
- (display "code-gen: wrote make")
-
- (write-xlmake alg stream)
- (display "code-gen: wrote xlmake")
-
- (write-header alg hstream)
- (cond ( support-header
- (print-strings support-header hstream)))
- (print-strings h-boilerplate hstream)
- (display "code-gen: wrote header")))
-
-
-;;**********
-;; commute-check --
-;;
-;; Purpose:
-;; see if interpolation spec is redundant due to commutativity
-;; Algorithm:
-;; for each list of "commutable" sounds, make sure spec asks for
-;; cannonical ordering: NONE > SCALE > INTERP > RAMP
-;;**********
-(defun commute-check (alg spec)
- (let ((sounds (get-slot alg 'sound-args))
- (commute-list (get-slot alg 'commutative))
- (result t)
- s1 s2)
- (dolist (commute commute-list)
- (dotimes (n (1- (length commute))) ; look at all pairs
- (setf s1 (nth n commute))
- (setf s2 (nth (1+ n) commute))
- (setf s1 (index s1 sounds))
- (setf s2 (index s2 sounds))
- (setf s1 (nth s1 spec))
- (setf s2 (nth s2 spec))
- (cond ((< (eval s1) (eval s2))
- (setf result nil)
- (return)))))
- result))
-
-(setf NONE 4) (setf SCALE 3) (setf INTERP 2) (setf RAMP 1)
-
-
-(print 'ramp)
-
-
-;;**********
-;; concatenate -- string concatenation
-;;
-;; Inputs:
-;; "s1" - string
-;; "s2" - string
-;; Result:
-;; "s1s2"
-;;**********
-
-(defun concatenate (type s1 s2)
- (cond ((eq type 'string) (strcat s1 s2))
- (t (error "concatenate type"))))
-
-
-;;**********
-;; get-slot -- access the algorithm description, return single value
-;;
-;;**********
-
-(setfn get-slot get)
-
-
-;;**********
-;; index -- find location of list element
-;;
-;; Inputs:
-;; atom - atom to be found in list
-;; lis - list searched for
-;; Result:
-;; integer - index of atom in lis
-;; NIL - atom not member of lis
-;;**********
-
-(defun index (atom lis)
- (let ((i 0))
- (dolist (elt lis)
- (cond ((eq elt atom)
- (return i)))
- (setf i (1+ i)))))
-
-
-;;**********
-;; insert -- insert an atom at the front of each element of a list
-;;
-;; Inputs:
-;; atom -
-;; list-of-lists - lists of the form ( (L1) (L2) ... (Ln))
-;; Result:
-;; ( (atom L1) (atom L2) ... (atom Ln) )
-;;**********
-(defun insert (atom list-of-lists)
- (mapcar '(lambda (lis) (cons atom lis)) list-of-lists))
-
-(print 'insert)
-
-;; interp-check -- check to see that no interpolation is being done
-;; (unless the algorithm is the up-sample algorithm, a special case
-;;
-(defun interp-check (alg spec)
- (or *INLINE-INTERPOLATION*
- (get alg 'inline-interpolation)
- (and (not (member 'INTERP spec))
- (not (member 'RAMP spec)))))
-
-(print 'interp-check)
-
-
-;;**********
-;; make-interpolation-list -- figure out the possible interpolation forms
-;;
-;; Inputs:
-;; alg - algorithm description
-;; Output:
-;; List of interpolation styles, e.g.
-;; ((NONE NONE) (NONE INTERP) (NONE RAMP)), where the styles
-;; are in the same order as the sound arguments (sound-args)
-;;
-;;**********
-(defun make-interpolation-list (alg)
- (let (sound-args specs real-specs sound-names sound-to-name
- (sr (get-slot alg 'sample-rate))
- (not-in-inner-loop (get-slot alg 'not-in-inner-loop)))
- ; derive some lists:
- ; sound-args are atom names of sound-type arguments
- ; sound-names are the corresponding string names
- ; sound-to-name is an assoc list mapping atom to case-sensitive string
-; (display "make-interpolation-list")
-
- (dolist (arg (get-slot alg 'arguments))
- (cond ((and (equal (car arg) "sound_type")
- (not (member (cadr arg) not-in-inner-loop :test #'equal)))
- (setf sound-names (cons (cadr arg) sound-names))
- (setf sound-args (cons (name-to-symbol (cadr arg))
- sound-args))
- (setf sound-to-name (cons (cons (car sound-args)
- (car sound-names))
- sound-to-name))
-; (display "in make-interpolation-list" sound-to-name)
- )))
-; (display "make-interpolation-list: " (reverse sound-args))
- (put-slot alg (reverse sound-args) 'sound-args)
-; (display "make-interpolation-list: " (reverse sound-names))
- (put-slot alg (reverse sound-names) 'sound-names)
- (put-slot alg sound-to-name 'sound-to-name)
- ; make all combinations of interpolations
- (setf specs (combinations (length sound-args)))
- (display "make-interpolation-list: " specs)
- ; reject combinations based on commutativity, linearity, and sample rate:
- ; if sample-rate is not specified, then some interpolation must be 'NONE,
- ; i.e. sample-rate is specified OR an interpolation is 'NONE:
- ; if INLINE-INTERPOLATION is turned off, don't allow RAMP or INTERP
- ; if INTERNAL-SCALING applies, then don't allow SCALE
- (dolist (spec specs)
- (cond ((and spec
- (interp-check alg spec)
- (commute-check alg spec)
- (scale-check alg spec)
- (sr-check alg spec))
- (setf real-specs (cons spec real-specs)))))
- (cond ((and (car specs) (null real-specs))
- (error "no interpolation specs")))
- (print real-specs)))
-
-
-; MAKE-INTERPOLATION-RATIONALE -- record the rationale for
-; interpolation combinations:
-; NIL means no special considerations
-; ALWAYS-SCALE means 'n' eliminated, use 's' instead
-; LINEAR means 's' eliminated and unnecessary
-; INTERNAL-SCALING means 's' eliminated, use 'n' instead
-;
-(defun make-interpolation-rationale (alg)
- (let (interpolation-rationale len snd
- (sounds (get-slot alg 'sound-args))
- (linear (get-slot alg 'linear))
- (internal-scaling (get-slot alg 'internal-scaling))
- (always-scale (get-slot alg 'always-scale)))
- (setf interpolation-rationale (mapcar #'return-nil sounds))
- (setf len (length interpolation-rationale))
- (dotimes (n len)
- (setf snd (nth n sounds))
- (cond ((member snd always-scale)
- (setf (nth n interpolation-rationale) 'ALWAYS-SCALE)))
- (cond ((member snd linear)
- (cond ((nth n interpolation-rationale)
- (error "parameter is both linear and always-scale"
- snd)))
- (setf (nth n interpolation-rationale) 'LINEAR)))
- (cond ((member snd internal-scaling)
- (cond ((nth n interpolation-rationale)
- (error
- "parameter is both linear and always-scale or internal-scaling" snd)))
- (setf (nth n interpolation-rationale) 'INTERNAL-SCALING))))
- (display "make-interpolation-rationale" interpolation-rationale)
- interpolation-rationale))
-
-
-(print 'hi)
-
-;;**********
-;; make-schema-from-slots -- take attr/value pairs and make property list
-;;
-;; Inputs:
-;; slots - a list of the form
-;; (name
-;; (attribute1 value1) (attribute2 value2)
-;; ... (attributen valuen) )
-;; Result:
-;; The atom 'name' with the attached property list
-;; Effect:
-;; Adds properties to the atom 'name' based on the attribute-value
-;; pairs.
-;; Notes:
-;; The property-list representation is chosen for time efficiency of
-;; access
-;;**********
-
-(defun make-schema-from-slots (slots)
- (let ((name (car slots)))
- (setf (symbol-plist name) nil)
- (dolist (slot (cdr slots))
- (putprop name (cdr slot) (car slot)))
- name))
-
-;;****************
-;; name-to-symbol -- convert from case-sensitive C name to internal symbol
-;;****************
-(defun name-to-symbol (name) (intern (string-upcase name)))
-
-
-
-;;**********
-;; position -- find a pattern in a string
-;;
-;; Inputs:
-;; s -
-;; p -
-;;**********
-
-(defun position (s p)
- (let (result (len (length p)))
- (dotimes (n (+ 1 (length s) (- len)))
- (cond ((equal (subseq s n (+ n len)) p)
- (setf result n)
- (return))))
- result))
-
-
-;;**********
-;; print a list of strings to a stream
-;;
-;; Inputs:
-;; strings - a list of strings
-;; stream - stream on which to write the strings
-;; Effect:
-;;
-;;**********
-
-(defun print-strings (strings stream)
- (dolist (s strings) (princ s stream)))
-
-
-
-;;**********
-;; put-slot:
-;;
-;; Inputs:
-;; schema - name of the schema
-;; value - value of the attribute to be added or modified
-;; property - name of the attribute to be modified
-;;
-;;**********
-
-(setfn put-slot putprop)
-
-
-(defun return-nil (ignore) nil)
-
-;;**********
-;; scale-check -- make sure scale method is not used on linear input or
-;; on input where scaling is factored into other computation;
-;; Also, don't use NONE scale method if sound appears on always-scale
-;; list (these sounds have low likelihood of ever using 'NONE method -
-;; see fmosc for an example). Note that if you say always-scale (removing
-;; NONE) and linear or internal-scaling (removing SCALE), then you'll
-;; be in big trouble.
-;;
-;; Inputs:
-;; alg - algorithm description
-;; spec -
-;; Notes:
-;;
-;;**********
-
-(defun scale-check (alg spec)
- (let ((sounds (get-slot alg 'sound-args))
- (linear (get-slot alg 'linear))
- (internal-scaling (get-slot alg 'internal-scaling))
- (always-scale (get-slot alg 'always-scale))
- snd
- (result t)
- )
- ; initially, the rationale list is nil for each sound:
- (cond (always-scale
- (dotimes (n (length spec)) ; look at each method in spec
- (cond ((eq 'NONE (nth n spec))
- (setf snd (nth n sounds))
- (cond ((member snd always-scale)
- (setf result nil)
- (return))))))))
- (cond ((member 'SCALE spec) ; quick test
- (dotimes (n (length spec)) ; look at each method in spec
- (cond ((eq 'SCALE (nth n spec))
- (setf snd (nth n sounds))
- (cond ((or (member snd linear)
- (member snd internal-scaling))
- (if (member snd internal-scaling)
- (format t "WARNING internal scaling not fully debugged, check your results...\n"))
- (setf result nil)
- (return))))))))
- result))
-
-
-;;****************
-;; space-if-no-trailing-star -- returns "" if arg ends with "*", else space
-;;****************
-(defun space-if-no-trailing-star (str)
- (if (equal #\* (char str (1- (length str))))
- ""
- #\Space))
-
-
-;; SPEC-IS-NONE-OR-SCALE -- see if spec is none or scale, called by sr-check
-;;
-;; sig is the search key
-;; sound-args is a list, one element matches sig
-;; spec is list of specs corresponding to elements in sound-args
-;; return t if (eq sig (nth n sound-args)) and (nth n spec) is
-;; either 'none or 'scale
-;;
-(defun spec-is-none-or-scale (sig sound-args spec)
- (dolist (arg sound-args)
- (cond ((eq sig arg)
- (return (member (car spec) '(NONE SCALE)))))
- (setf spec (cdr spec))))
-
-
-;;****************
-;; sr-check -- see if interpolation spec is ok wrt sample rate spec
-;;****************
-(defun sr-check (alg spec)
- (let ((sample-rate (get-slot alg 'sample-rate))
- (sound-args (get-slot alg 'sound-args))
- (result t))
- ;; if expression given, then anything is ok
- (cond ((stringp sample-rate) t)
- ;; if (MAX ...) expression given, then one of signals must be NONE or SCALE
- ((and (listp sample-rate) (eq (car sample-rate) 'MAX))
- (dolist (sig (cdr sample-rate)) ; for all sig in max list ...
- (cond ((not (spec-is-none-or-scale sig sound-args spec))
- (setf result nil))))
- result)
- ;; if no expression given, then one signal must be NONE or SCALE
- ((or (member 'NONE spec) (member 'SCALE spec)) t)
- ;; o.w. return false
- (t nil))))
-
-
-;;****************
-;; symbol-to-name -- convert from internal symbol to case-sensitive C name
-;;****************
-(defun symbol-to-name (symbol) (get symbol 'string-name))
-
-
-
-;;**********
-;; translate -- main procedure
-;;
-;; Inputs:
-;; name - string which is name of file to translate
-;; Effect:
-;; Reads the algorithm specification as "name.alg"
-;; Generates output files "name.c" and "name.h"
-;;**********
-(defun translate (name)
- (prog* ((infile (concatenate 'string name ".alg"))
- (outfile (concatenate 'string name ".c"))
- (hfile (concatenate 'string name ".h"))
- (inf (open infile :direction :input))
- (hf (open hfile :direction :output))
- (outf (open outfile :direction :output)))
-
- (if (null inf) (error "translate: couldn't open inf"))
- (if (null hf) (error "translate: couldn't open hf"))
- (if (null outf) (error "translate: couldn't open outf"))
-
- (display "FILES" inf hf outf)
-
- (if *WATCH*
- (print "**** TRACING HOOKS ENABLED! ****")
- (print "**** NO TRACING ****")
- )
- loop
- ;; read the algorithm description
- (setq alg (read inf))
-
- ;; if the algorithm is NIL, we had some sort of failure
- (cond ((null alg)
- (close inf)
- (close hf)
- (close outf)
- (return)))
-
- ;; we have read in the high-level schema specification
- ;; convert it to a schema
- (display "translate: " infile alg)
- (setf alg (make-schema-from-slots alg))
- (display "translate: schema " alg)
-
- ;; save the .h file name
- (put-slot alg hfile 'hfile)
- ;; perform the type-check on the schema parameters
- (type-check-and-transform alg)
- (display "translate: transformed schema" alg)
- (code-gen alg outf hf)
- (display "translate: finished code-gen")
- (setf save-alg alg)
- (go loop)
- )
-)
-
-
-(print 'translate)
-
-;;**********
-;; type-check-and-transform -- fix up slots in an algorithm schema
-;;
-;; Inputs:
-;; alg - the name of the algorithm; values are its property list
-;; Notes:
-;; Report an error if required slot values are absent
-;; Any slot which should be a single value and is a list is
-;; coerced to be the car of the list
-;; Put argument string names on argument symbols for conversion.
-;;**********
-
-(defun type-check-and-transform (alg)
-
- ;; the quoted list that follows 'slot' is the list of required
- ;; parameters. If any parameter is missing, this will cause an
- ;; error
-
- (dolist (slot '(name inner-loop)) ; other necessarily non-nil slots go here
- (cond ((null (get-slot alg slot))
- (error "missing slot"))))
-
- ; fix single-value slots to not be stored as lists:
- ; If the value is a list, the value is coerced to
- ; be the car of the list
-
- (dolist
- (slot
- '(name inner-loop sample-rate support-functions inline-interpolation delay
- ))
- (put-slot alg (car (get-slot alg slot)) slot))
-
- ; Make sure there are no strings, only symbols, in TERMINATE and
- ; LOGICAL-STOP MIN lists: (TERMINATE (MIN "s1")) is wrong, it should be
- ; (TERMINATE (MIN s1))
-
- (dolist (field '(terminate logical-stop))
- (setf spec (get-slot alg field))
- (display "type-check" spec field)
- (cond ((and spec
- (listp (car spec))
- (member (caar spec) '(MIN MAX)))
- (dolist (entry (cdar spec))
- (display "type-check" spec field entry)
- (cond ((eq (type-of entry) 'STRING)
- (error "MIN and MAX args are symbols, not strings"
- spec)))))))
-
- ; (ARGUMENTS ( "type1" "name1") ("type2" "name2") ... ("typen" "namen") )
- ; if "sr" is the name of an argument, its type must be "rate_type"
- ; i.e. ("rate_type" "sr")
-
- (dolist (arg (get-slot alg 'arguments))
- (cond ((and (equal (cadr arg) "sr")
- (not (equal (car arg) "rate_type")))
- (error "argument sr must be of type rate_type"))
- ((equal (car arg) "sound_type")
- (putprop (name-to-symbol (cadr arg)) (cadr arg) 'string-name)))))
-
-
-
-;;**********
-;; union-of-nth -- get the union of the nth element of each sublist
-;;
-;;**********
-(defun union-of-nth (lis n)
- (let (result a)
- (dolist (sublis lis)
- (setf a (nth n sublis))
- (cond ((not (member a result))
- (setf result (cons a result)))))
- result))
-
-
-(print 'union-of-nth)
-
-;;**********
-;; write-header -- write a header file for the suspension create routine
-;;
-;; Inputs:
-;; alg - algorithm name
-;; stream - output stream for .h file
-;; Effect:
-;; Writes to the stream
-;; sound_type snd_make_NAME();
-;; Notes:
-;; Uses NAME property of algorithm to emit the procedure header to
-;; the .h file
-;;**********
-
-(setf c-to-xlisp-type '(
- ("double" . "ANYNUM")
- ("float" . "ANYNUM")
- ("time_type" . "ANYNUM")
- ("rate_type" . "ANYNUM")
- ("sample_type" . "ANYNUM")
- ("sound_type" . "SOUND")
- ("char *" . "STRING")
- ("LVAL" . "ANY")
- ("int" . "FIXNUM")
- ("long" . "FIXNUM")
- ("boolean" . "BOOLEAN")
-))
-
-
-(defun write-header (alg stream)
-;; (format stream "sound_type snd_make_~A();~%" (get-slot alg 'name))
- (let ((arguments (get-slot alg 'arguments))
- (name (get-slot alg 'name)))
- (format stream "sound_type snd_make_~A" name)
- (write-ansi-prototype-list stream "" arguments)
- (format stream ";~%")
-
- ; write the xlisp interface routine
- (format stream "sound_type snd_~A" name)
- (write-ansi-prototype-list stream "" arguments)
- (format stream ";~%")
-
- ; write the type specification for intgen
- (format stream " /* LISP: (snd-~A" name)
- (dolist (arg arguments)
- (let ((xltype (assoc (car arg) c-to-xlisp-type :test #'equal)))
- (cond ((null xltype)
- (error "couldn't translate c-type" (car arg))))
- (format stream " ~A" (cdr xltype))))
- (format stream ") */~%")))
-
-
-;;**********
-;; write-typedef -- compile the suspension type definition
-;;
-;; Inputs:
-;; alg - the algorithm specification
-;; stream - stream to which to write it
-;; Effect:
-;; typedef struct NAME_susp_struct {
-;; ...
-;; } NAME_susp_node, *NAME_susp_type;
-;;
-;; A side-effect of write-typedef is the initialization
-;; of slot xlisp-pointers in alg. This is used later by
-;; write-mark to generate the garbage collection mark routine.
-;;**********
-
-(defun write-typedef (alg stream)
- (let (arg-type args interpolation-list sound-names arg
- (alg-name (get-slot alg 'name))
- name xlisp-pointers
- (state-list (get-slot alg 'state))
- (logical-stop (car (get-slot alg 'logical-stop)))
- (terminate (car (get-slot alg 'terminate))))
- ;----------------------------
- ; typedef struct NAME_susp_strct {
- ; snd_susp_node susp;
- ;----------------------------
- (format stream "~%~%typedef struct ~A_susp_struct {~%~A~%"
- alg-name " snd_susp_node susp;")
-
- ; go through interpolation list:
- ; NONE means use each sample
- ; INTERP means interpolate between samples
- ; RAMP means do ramp generation between samples
- ; NIL means this is not a signal
-
- (setf interpolation-list (get-slot alg 'interpolation-list))
- (setf sound-names (get-slot alg 'sound-names))
-
- ; declare started flag if there is a ramp or interp signal anywhere
- (cond ((any-ramp-or-interp-in interpolation-list)
- ;---------------------
- ; INTERP/RAMP:
- ; boolean started;
- ;---------------------
- (format stream " boolean started;~%")))
-
- (display "in translate.lsp"
- terminate alg (terminate-check-needed terminate alg))
- (cond ((terminate-check-needed terminate alg)
- ;----------------
- ; long terminate_cnt;
- ;----------------
- (format stream " long terminate_cnt;~%")))
-
- (cond ((logical-stop-check-needed logical-stop)
- ;----------------
- ; boolean logically_stopped;
- ;----------------
- (format stream
- " boolean logically_stopped;~%")))
-
- ; each sound argument has a variety of ways it might be
- ; interpolated. These are stored on interpolation-list, and union-of-nth
- ; is used to gather all the interpolation styles that must be supported
- ; for a given signal - we then declare whatever state is necessary for
- ; each possible interpolation
- (dotimes (n (length (get alg 'sound-args)))
- (let ((interpolation (union-of-nth interpolation-list n)))
- (setf name (nth n sound-names)) ; get name of signal
- ;------------------------
- ; sound_type NAMEi;
- ; long NAME_cnt;
- ; sample_block_values_type NAME_ptr;
- ;------------------------
- (format stream " sound_type ~A;~%" name)
- (format stream " long ~A_cnt;~%" name)
- (format stream " sample_block_values_type ~A_ptr;~%" name)
- (cond ((or (member 'INTERP interpolation)
- (member 'RAMP interpolation))
- ;-----------------
- ; /* support for interpolation of NAMEi */
- ;-----------------
- (format stream
- "~% /* support for interpolation of ~A */~%" name)
-
- ;-----------------
- ; sample_type NAME_x1_sample;
- ;-----------------
- (format stream " sample_type ~A_x1_sample;~%" name)
-
- ;-----------------
- ; double NAME_pHaSe;
- ; double NAME_pHaSe_iNcR;
- ;-----------------
- (format stream " double ~A_pHaSe;~%" name)
- (format stream " double ~A_pHaSe_iNcR;~%" name)))
-
- (cond ((member 'RAMP interpolation)
- ;-----------------
- ; RAMP:
- ; /* support for ramp between samples of NAME */
- ; double output_per_NAME;
- ; long NAME_n;
- ;-----------------
- (format stream
- "~% /* support for ramp between samples of ~A */~%" name)
- (format stream " double output_per_~A;~%" name)
- (format stream " long ~A_n;~%" name) ))))
-
- ;----------------------------
- ; STATE
- ; TYPEi VARNAMEi ;
- ;----------------------------
- ;; now write state variables
- ;; (STATE (s1) (s2)... (sn) )
- ;; each (si) is of the form
- ;; ("type" "varname" "?" [TEMP])
- (cond (state-list (format stream "~%")))
- (dolist (state state-list)
- (cond ((equal "LVAL" (car state))
- (push (cadr state) xlisp-pointers)))
- (cond ((and (cdddr state)
- (cadddr state)
- (eq (cadddr state) 'TEMP))
- ; no field allocated for local/temp variables
- )
- (t
- (let ((sep (space-if-no-trailing-star (car state))))
- (format stream " ~A~A~A;~%"
- (car state) sep (cadr state))))))
- (put-slot alg xlisp-pointers 'xlisp-pointers)
-
- ;----------------------------
- ; } ALG-NAME_susp_node, *ALG-NAME_susp_type;
- ;----------------------------
- (format stream "} ~A_susp_node, *~A_susp_type;~%" alg-name alg-name)))
-
-(print 'end)
diff --git a/lib-src/libnyquist/tran/upsample.alg b/lib-src/libnyquist/tran/upsample.alg
deleted file mode 100644
index 82aaca3..0000000
--- a/lib-src/libnyquist/tran/upsample.alg
+++ /dev/null
@@ -1,18 +0,0 @@
-(UP-ALG
- (NAME "up")
- (ARGUMENTS ("rate_type" "sr") ("sound_type" "input"))
- (INLINE-INTERPOLATION T)
- (SAMPLE-RATE "sr")
- (START (MIN input))
- (INNER-LOOP "output = (sample_type) input")
- (LINEAR input)
- (TERMINATE (MIN input))
- (LOGICAL-STOP (MIN input))
- (TYPE-CHECK
-" if (input->sr > sr) {
- sound_unref(input);
- xlfail(\"snd-up: output sample rate must be higher than input\");
- }
-")
-)
-
diff --git a/lib-src/libnyquist/tran/upsample.c b/lib-src/libnyquist/tran/upsample.c
deleted file mode 100644
index 8adc9c2..0000000
--- a/lib-src/libnyquist/tran/upsample.c
+++ /dev/null
@@ -1,448 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "upsample.h"
-
-void up_free();
-
-
-typedef struct up_susp_struct {
- snd_susp_node susp;
- boolean started;
- long terminate_cnt;
- boolean logically_stopped;
- sound_type input;
- long input_cnt;
- sample_block_values_type input_ptr;
-
- /* support for interpolation of input */
- sample_type input_x1_sample;
- double input_pHaSe;
- double input_pHaSe_iNcR;
-
- /* support for ramp between samples of input */
- double output_per_input;
- long input_n;
-} up_susp_node, *up_susp_type;
-
-
-void up_n_fetch(register up_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register sample_block_values_type input_ptr_reg;
- falloc_sample_block(out, "up_n_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past the input input sample block: */
- susp_check_term_log_samples(input, input_ptr, input_cnt);
- togo = MIN(togo, susp->input_cnt);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- input_ptr_reg = susp->input_ptr;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-*out_ptr_reg++ = (sample_type) *input_ptr_reg++;
- } while (--n); /* inner loop */
-
- /* using input_ptr_reg is a bad idea on RS/6000: */
- susp->input_ptr += togo;
- out_ptr += togo;
- susp_took(input_cnt, togo);
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* up_n_fetch */
-
-
-void up_i_fetch(register up_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- sample_type input_x2_sample;
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- register double input_pHaSe_iNcR_rEg = susp->input_pHaSe_iNcR;
- register double input_pHaSe_ReG;
- register sample_type input_x1_sample_reg;
- falloc_sample_block(out, "up_i_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp_check_term_log_samples(input, input_ptr, input_cnt);
- susp->input_x1_sample = susp_fetch_sample(input, input_ptr, input_cnt);
- }
-
- susp_check_term_log_samples(input, input_ptr, input_cnt);
- input_x2_sample = susp_current_sample(input, input_ptr);
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- input_pHaSe_ReG = susp->input_pHaSe;
- input_x1_sample_reg = susp->input_x1_sample;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
- if (input_pHaSe_ReG >= 1.0) {
- input_x1_sample_reg = input_x2_sample;
- /* pick up next sample as input_x2_sample: */
- susp->input_ptr++;
- susp_took(input_cnt, 1);
- input_pHaSe_ReG -= 1.0;
- susp_check_term_log_samples_break(input, input_ptr, input_cnt, input_x2_sample);
- }
-*out_ptr_reg++ = (sample_type)
- (input_x1_sample_reg * (1 - input_pHaSe_ReG) + input_x2_sample * input_pHaSe_ReG);
- input_pHaSe_ReG += input_pHaSe_iNcR_rEg;
- } while (--n); /* inner loop */
-
- togo -= n;
- susp->input_pHaSe = input_pHaSe_ReG;
- susp->input_x1_sample = input_x1_sample_reg;
- out_ptr += togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* up_i_fetch */
-
-
-void up_r_fetch(register up_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- sample_type input_DeLtA;
- sample_type input_val;
- sample_type input_x2_sample;
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- falloc_sample_block(out, "up_r_fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- /* make sure sounds are primed with first values */
- if (!susp->started) {
- susp->started = true;
- susp->input_pHaSe = 1.0;
- }
-
- susp_check_term_log_samples(input, input_ptr, input_cnt);
- input_x2_sample = susp_current_sample(input, input_ptr);
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* grab next input_x2_sample when phase goes past 1.0; */
- /* we use input_n (computed below) to avoid roundoff errors: */
- if (susp->input_n <= 0) {
- susp->input_x1_sample = input_x2_sample;
- susp->input_ptr++;
- susp_took(input_cnt, 1);
- susp->input_pHaSe -= 1.0;
- susp_check_term_log_samples(input, input_ptr, input_cnt);
- input_x2_sample = susp_current_sample(input, input_ptr);
- /* input_n gets number of samples before phase exceeds 1.0: */
- susp->input_n = (long) ((1.0 - susp->input_pHaSe) *
- susp->output_per_input);
- }
- togo = MIN(togo, susp->input_n);
- input_DeLtA = (sample_type) ((input_x2_sample - susp->input_x1_sample) * susp->input_pHaSe_iNcR);
- input_val = (sample_type) (susp->input_x1_sample * (1.0 - susp->input_pHaSe) +
- input_x2_sample * susp->input_pHaSe);
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
-
- /* don't run past logical stop time */
- if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- /* break if to_stop == 0 (we're at the logical stop)
- * AND cnt > 0 (we're not at the beginning of the
- * output block).
- */
- if (to_stop < togo) {
- if (to_stop == 0) {
- if (cnt) {
- togo = 0;
- break;
- } else /* keep togo as is: since cnt == 0, we
- * can set the logical stop flag on this
- * output block
- */
- susp->logically_stopped = true;
- } else /* limit togo so we can start a new
- * block at the LST
- */
- togo = to_stop;
- }
- }
-
- n = togo;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-*out_ptr_reg++ = (sample_type) input_val;
- input_val += input_DeLtA;
- } while (--n); /* inner loop */
-
- out_ptr += togo;
- susp->input_pHaSe += togo * susp->input_pHaSe_iNcR;
- susp->input_n -= togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
- /* test for logical stop */
- if (susp->logically_stopped) {
- snd_list->logically_stopped = true;
- } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- susp->logically_stopped = true;
- }
-} /* up_r_fetch */
-
-
-void up_toss_fetch(susp, snd_list)
- register up_susp_type susp;
- snd_list_type snd_list;
-{
- long final_count = susp->susp.toss_cnt;
- time_type final_time = susp->susp.t0;
- long n;
-
- /* fetch samples from input up to final_time for this block of zeros */
- while ((round((final_time - susp->input->t0) * susp->input->sr)) >=
- susp->input->current)
- susp_get_samples(input, input_ptr, input_cnt);
- /* convert to normal processing when we hit final_count */
- /* we want each signal positioned at final_time */
- n = round((final_time - susp->input->t0) * susp->input->sr -
- (susp->input->current - susp->input_cnt));
- susp->input_ptr += n;
- susp_took(input_cnt, n);
- susp->susp.fetch = susp->susp.keep_fetch;
- (*(susp->susp.fetch))(susp, snd_list);
-}
-
-
-void up_mark(up_susp_type susp)
-{
- sound_xlmark(susp->input);
-}
-
-
-void up_free(up_susp_type susp)
-{
- sound_unref(susp->input);
- ffree_generic(susp, sizeof(up_susp_node), "up_free");
-}
-
-
-void up_print_tree(up_susp_type susp, int n)
-{
- indent(n);
- stdputstr("input:");
- sound_print_tree_1(susp->input, n);
-}
-
-
-sound_type snd_make_up(rate_type sr, sound_type input)
-{
- register up_susp_type susp;
- /* sr specified as input parameter */
- time_type t0 = input->t0;
- int interp_desc = 0;
- sample_type scale_factor = 1.0F;
- time_type t0_min = t0;
- /* combine scale factors of linear inputs (INPUT) */
- scale_factor *= input->scale;
- input->scale = 1.0F;
-
- /* try to push scale_factor back to a low sr input */
- if (input->sr < sr) { input->scale = scale_factor; scale_factor = 1.0F; }
-
- if (input->sr > sr) {
- sound_unref(input);
- xlfail("snd-up: output sample rate must be higher than input");
- }
- falloc_generic(susp, up_susp_node, "snd_make_up");
-
- /* select a susp fn based on sample rates */
- interp_desc = (interp_desc << 2) + interp_style(input, sr);
- switch (interp_desc) {
- case INTERP_n: susp->susp.fetch = up_n_fetch; break;
- case INTERP_i: susp->susp.fetch = up_i_fetch; break;
- case INTERP_r: susp->susp.fetch = up_r_fetch; break;
- default: snd_badsr(); break;
- }
-
- susp->terminate_cnt = UNKNOWN;
- /* handle unequal start times, if any */
- if (t0 < input->t0) sound_prepend_zeros(input, t0);
- /* minimum start time over all inputs: */
- t0_min = MIN(input->t0, t0);
- /* how many samples to toss before t0: */
- susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + 0.5);
- if (susp->susp.toss_cnt > 0) {
- susp->susp.keep_fetch = susp->susp.fetch;
- susp->susp.fetch = up_toss_fetch;
- }
-
- /* initialize susp state */
- susp->susp.free = up_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = up_mark;
- susp->susp.print_tree = up_print_tree;
- susp->susp.name = "up";
- susp->logically_stopped = false;
- susp->susp.log_stop_cnt = logical_stop_cnt_cvt(input);
- susp->started = false;
- susp->susp.current = 0;
- susp->input = input;
- susp->input_cnt = 0;
- susp->input_pHaSe = 0.0;
- susp->input_pHaSe_iNcR = input->sr / sr;
- susp->input_n = 0;
- susp->output_per_input = sr / input->sr;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_up(rate_type sr, sound_type input)
-{
- sound_type input_copy = sound_copy(input);
- return snd_make_up(sr, input_copy);
-}
diff --git a/lib-src/libnyquist/tran/upsample.h b/lib-src/libnyquist/tran/upsample.h
deleted file mode 100644
index 5629b15..0000000
--- a/lib-src/libnyquist/tran/upsample.h
+++ /dev/null
@@ -1,3 +0,0 @@
-sound_type snd_make_up(rate_type sr, sound_type input);
-sound_type snd_up(rate_type sr, sound_type input);
- /* LISP: (snd-up ANYNUM SOUND) */
diff --git a/lib-src/libnyquist/tran/white.alg b/lib-src/libnyquist/tran/white.alg
deleted file mode 100644
index 8fc3832..0000000
--- a/lib-src/libnyquist/tran/white.alg
+++ /dev/null
@@ -1,24 +0,0 @@
-(WHITE-ALG
-(NAME "white")
-(ARGUMENTS ("time_type" "t0") ("rate_type" "sr") ("time_type" "d"))
-(STATE )
-(TERMINATE (AFTER "d"))
-(INNER-LOOP "output = (sample_type) (rand() * rand_scale - 1.0);")
-(SAMPLE-RATE "sr")
-(SUPPORT-HEADER "
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 rbd all systems now use rand(), based on DM's modifications
- */
-
-#include <stdlib.h>
-#include <math.h>
-
-/* rand returns from 0 to RAND_MAX. Scale and offset
- * to get range from -1 to +1
- */
-#define rand_scale (2.0/RAND_MAX)
-
-")
-)
-
diff --git a/lib-src/libnyquist/tran/white.c b/lib-src/libnyquist/tran/white.c
deleted file mode 100644
index a411562..0000000
--- a/lib-src/libnyquist/tran/white.c
+++ /dev/null
@@ -1,104 +0,0 @@
-#include "stdio.h"
-#ifndef mips
-#include "stdlib.h"
-#endif
-#include "xlisp.h"
-#include "sound.h"
-
-#include "falloc.h"
-#include "cext.h"
-#include "white.h"
-
-void white_free();
-
-
-typedef struct white_susp_struct {
- snd_susp_node susp;
- long terminate_cnt;
-} white_susp_node, *white_susp_type;
-
-
-void white__fetch(register white_susp_type susp, snd_list_type snd_list)
-{
- int cnt = 0; /* how many samples computed */
- int togo;
- int n;
- sample_block_type out;
- register sample_block_values_type out_ptr;
-
- register sample_block_values_type out_ptr_reg;
-
- falloc_sample_block(out, "white__fetch");
- out_ptr = out->samples;
- snd_list->block = out;
-
- while (cnt < max_sample_block_len) { /* outer loop */
- /* first compute how many samples to generate in inner loop: */
- /* don't overflow the output sample block: */
- togo = max_sample_block_len - cnt;
-
- /* don't run past terminate time */
- if (susp->terminate_cnt != UNKNOWN &&
- susp->terminate_cnt <= susp->susp.current + cnt + togo) {
- togo = susp->terminate_cnt - (susp->susp.current + cnt);
- if (togo == 0) break;
- }
-
- n = togo;
- out_ptr_reg = out_ptr;
- if (n) do { /* the inner sample computation loop */
-*out_ptr_reg++ = (sample_type) (rand() * rand_scale - 1.0);;
- } while (--n); /* inner loop */
-
- out_ptr += togo;
- cnt += togo;
- } /* outer loop */
-
- /* test for termination */
- if (togo == 0 && cnt == 0) {
- snd_list_terminate(snd_list);
- } else {
- snd_list->block_len = cnt;
- susp->susp.current += cnt;
- }
-} /* white__fetch */
-
-
-void white_free(white_susp_type susp)
-{
- ffree_generic(susp, sizeof(white_susp_node), "white_free");
-}
-
-
-void white_print_tree(white_susp_type susp, int n)
-{
-}
-
-
-sound_type snd_make_white(time_type t0, rate_type sr, time_type d)
-{
- register white_susp_type susp;
- /* sr specified as input parameter */
- /* t0 specified as input parameter */
- sample_type scale_factor = 1.0F;
- falloc_generic(susp, white_susp_node, "snd_make_white");
- susp->susp.fetch = white__fetch;
-
- susp->terminate_cnt = round((d) * sr);
- /* initialize susp state */
- susp->susp.free = white_free;
- susp->susp.sr = sr;
- susp->susp.t0 = t0;
- susp->susp.mark = NULL;
- susp->susp.print_tree = white_print_tree;
- susp->susp.name = "white";
- susp->susp.log_stop_cnt = UNKNOWN;
- susp->susp.current = 0;
- return sound_create((snd_susp_type)susp, t0, sr, scale_factor);
-}
-
-
-sound_type snd_white(time_type t0, rate_type sr, time_type d)
-{
- return snd_make_white(t0, sr, d);
-}
diff --git a/lib-src/libnyquist/tran/white.h b/lib-src/libnyquist/tran/white.h
deleted file mode 100644
index 953a54d..0000000
--- a/lib-src/libnyquist/tran/white.h
+++ /dev/null
@@ -1,17 +0,0 @@
-sound_type snd_make_white(time_type t0, rate_type sr, time_type d);
-sound_type snd_white(time_type t0, rate_type sr, time_type d);
- /* LISP: (snd-white ANYNUM ANYNUM ANYNUM) */
-
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 rbd all systems now use rand(), based on DM's modifications
- */
-
-#include <stdlib.h>
-#include <math.h>
-
-/* rand returns from 0 to RAND_MAX. Scale and offset
- * to get range from -1 to +1
- */
-#define rand_scale (2.0/RAND_MAX)
-
diff --git a/lib-src/libnyquist/tran/writemake.lsp b/lib-src/libnyquist/tran/writemake.lsp
deleted file mode 100644
index e7e8b9c..0000000
--- a/lib-src/libnyquist/tran/writemake.lsp
+++ /dev/null
@@ -1,931 +0,0 @@
-;;************
-;; writemake.lsp -- generate the sound create routine
-;;************
-;;************
-;; Change Log
-;; Date | Change
-;;-----------+--------------------
-;; 17-Dec-91 | [1.1] <jmn> Created
-;; 17-Dec-91 | [1.1] <jmn> return sound_create(...) cast type to correct
-;; | type
-;; 21-Dec-91 | [1.2] <jmn> added start-time, default 0.0
-;; 21-Dec-91 | [1.2] <jmn> prefix creation local variables with C_
-;; 13-Jan-92 | [1.2] <jmn> reformatted and recommented
-;; 3-May-99 | <rbd> modified toss_fetch code to retain proper t0
-;;************
-
-
-
-;; check-for-no-interpolation - if you see an "s", make sure there
-;; is a corresponding "n", if not use "s" to cover the "n" case. And vice versa.
-;;
-(defun check-for-no-interpolation (encoding interpolation-rationale stream)
- ; *cfni-output* used to keep track of newline output
- (setf *cfni-output* nil)
- (check-for-no-interpolation-1 encoding 0 interpolation-rationale stream))
-
-;; Hint: this algorithm constructs the 2^n variations by substituting
-;; (or not) 'n' for 's' whereever s'es occur. The search is cut off
-;; however, when an altered string is found in the encoding-list, which
-;; tells what cases are handled directly.
-;;
-;; Wow, returning to the description above after several months, I couldn't make
-;; heads or tails of it, and I wrote it! Here's another perhaps better, description:
-;;
-;; We generated various _fetch routines that differ in their assumptions about how to
-;; access signal arguments. There are (now) 4 variations: NONE, SCALE, INTERP, and
-;; RAMP. All 4^N combinations of these are generated initially, but many combinations
-;; are deleted before any code is generated. Reasons for removing a combination include
-;; the use of symetry, linearity, and simply the promise that input arguments will be
-;; interpolated externally. In most of these cases, combinations are removed because
-;; they cannot occur in practice. But in others, combinations are removed because they
-;; should be handled by different code. For example, an input signal matching the output
-;; sample rate and with a scale factor of 1 is normally handled by NONE style
-;; "interpolation". Note: "interpolation" is used throughout this code, but a better term
-;; would be "access method," because no interpolation is involved in the NONE and
-;; SCALE variants. The inner loop access code for NONE style is something like "*s++".
-;; However, an input signal suitable for NONE style interpolation can also be handled
-;; by SCALE style interpolation (which looks something like "(*s++ * s_scale)", i.e.
-;; an extra multiplication is required. If the attribute INTERNAL-SCALING is used,
-;; then the scale factor does not actually appear at the access point because it has been
-;; factored into a filter coefficient or some other factor, saving the multiply.
-;; Alternatively, the ALWAYS-SCALE attribute can specify that there is little to be
-;; gained by saving a multiply. In these cases, we want to handle NONE style signals
-;; with SCALE style interpolation. Let's run through these possibilities again and
-;; describe how they are handled:
-;;
-;; ALWAYS-SCALE: here we delete the NONE variant(s) and only generate fetch
-;; routines that have scaling code in them. When we get an actual parameter with
-;; a scale factor of 1 (implying NONE interpolation), we handle it with the SCALE
-;; fetch routine.
-;; INTERNAL-SCALING: here we generate NONE fetch routines because the
-;; scale factor is taken care of elsewhere in the code, e.g. in a filter coefficient.
-;; LINEAR: here, the scale factor of the actual argument becomes a scale factor
-;; on the output (part of the data structure), deferring multiplies until later. We
-;; then modify the argument scale factor to 1, and NONE style interpolation applies.
-;; There is no need to generate SCALE style routines, because there will never be
-;; any need for them.
-;;
-;; For a given signal parameter, these 3 cases are mutually exclusive.
-;;
-;; Looking at these three cases, we see that sometimes there will be SCALE style
-;; routines handling NONE arguments, sometimes NONE style routines handling
-;; SCALE arguments, and sometimes NONE style routines because there will
-;; never be a need for SCALE.
-;; This code is going to generate labels so that other fetch routines
-;; handle the "missing" ones.
-;; To do this, we generate extra labels in the case
-;; statement that selects the fetch routine (interpolation is in the inner loop in the
-;; fetch routine. For example, we might generate this code:
-;; ...
-;; case INTERP_nn:
-;; case INTERP_sn:
-;; case INTERP_ns:
-;; case INTERP_ss: susp->susp.fetch = tonev_ss_fetch; break;
-;; ...
-;; Here, a single fetch routine (tonev_ss_fetch) handles all variations of NONE and
-;; SCALE (n and s) types of the two signal arguments. The basic rule is: if you did not
-;; generate a fetch routine for the NONE case, then handle it with the SCALE case, and
-;; if you did not generate a fetch routine for the SCALE case, handle it with the NONE
-;; case.
-;;
-;; The algorithm uses the list interpolation-rationale, which lists for each sound
-;; parameter one of {NIL, LINEAR, ALWAYS-SCALE, INTERNAL-SCALING}.
-;; Using this list, the code enumerates all the possible cases that might be handled
-;; by the current fetch routine (represented by the "encoding" parameter).
-;; This is a recursive algorithm because, if there are n SCALE type parameters, then
-;; there are 2^N possible variations to enumerate. (E.g. look at the 4 variations in
-;; the code example above.)
-;;
-;;
-(defun check-for-no-interpolation-1 (encoding index
- interpolation-rationale stream)
- (cond ((= index (length encoding))
- (display "check-for-no-interpolation output" encoding)
- ; see if we need a newline (*cfni-output* is initially nil)
- (if *cfni-output* (format stream "/* handled below */~%"))
- (setf *cfni-output* t)
- (format stream " case INTERP_~A: " encoding))
- (t
- (let ((ch (char encoding index)))
- (display "cfni" index ch)
- (cond ((eql ch #\s)
- (let ((new-encoding (strcat (subseq encoding 0 index)
- "n"
- (subseq encoding (1+ index)))))
- (cond ((eq (nth index interpolation-rationale) 'ALWAYS-SCALE)
- (check-for-no-interpolation-1 new-encoding (1+ index)
- interpolation-rationale stream)))))
- ((eql ch #\n)
- (let ((new-encoding (strcat (subseq encoding 0 index)
- "s"
- (subseq encoding (1+ index)))))
- (cond ((eq (nth index interpolation-rationale) 'INTERNAL-SCALING)
- (check-for-no-interpolation-1 new-encoding (1+ index)
- interpolation-rationale stream))))))
- (check-for-no-interpolation-1 encoding (1+ index)
- interpolation-rationale stream)))))
-
-;;************
-;; is-argument -- see if string is in argument list
-;;
-;;************
-
-(defun is-argument (arg arguments)
- (dolist (a arguments)
- (cond ((equal arg (cadr a)) (return t)))))
-
-
-
-;; needs-mark-routine -- is there anything for GC to mark here?
-;;
-(defun needs-mark-routine (alg)
- (or (get-slot alg 'sound-names)
- (get-slot alg 'xlisp-pointers)))
-
-
-;; lsc-needed-p -- see if we need the lsc variable declared
-(defun lsc-needed-p (alg)
- (let ((spec (get-slot alg 'logical-stop)))
- (and spec (listp (car spec))
- (eq (caar spec) 'MIN)
- (cdar spec)
- (cddar spec))))
-
-
-;; write-initial-logical-stop-cnt -- writes part of snd_make_<name>
-;;
-(defun write-initial-logical-stop-cnt (alg stream)
- (let ((spec (get-slot alg 'logical-stop))
- min-list)
- (cond ((and spec (listp (car spec))
- (eq (caar spec) 'MIN)
- (cdar spec))
- (setf min-list (cdar spec))
- ; take stop_cnt from first argument in MIN list
- (format stream
- " susp->susp.log_stop_cnt = logical_stop_cnt_cvt(~A);\n"
- (symbol-to-name (cadar spec)))
- ; modify stop_cnt to be minimum over all remaining arguments
- (dolist (sym (cddar spec))
- (let ((name (symbol-to-name sym)))
- (format stream
- " lsc = logical_stop_cnt_cvt(~A);\n" name)
- (format stream
- " if (susp->susp.log_stop_cnt > lsc)\n"
- name)
- (format stream
- " susp->susp.log_stop_cnt = lsc;\n"
- name))))
- (t
- (format stream
- " susp->susp.log_stop_cnt = UNKNOWN;\n")))
-))
-
-
-;;************
-;; write-mark
-;;
-;; Inputs:
-;; alg - algorithm description
-;; stream - stream on which to write .c file
-;; Effect:
-;; writes NAME_mark(...)
-;;************
-
-(defun write-mark (alg stream)
- (let ((name (get-slot alg 'name))
- (sound-names (get-slot alg 'sound-names))
- (xlisp-pointers (get-slot alg 'xlisp-pointers)))
- ;----------------
- ; void NAME_mark(NAME_susp_type susp)
- ; {
- ; *WATCH*: printf("NAME_mark(%x)\n", susp);
- ;----------------
- (format stream "~%~%void ~A_mark(~A_susp_type susp)~%{~%" name name)
- (if *WATCH*
- (format stream
- " printf(\"~A_mark(%x)\\n\", susp);~%" name))
-
- ;----------------
- ; for each LVAL argument:
- ;
- ; if (susp->NAME) mark(susp->NAME);
- ;----------------
- (dolist (name xlisp-pointers)
- (format stream " if (susp->~A) mark(susp->~A);~%" name name))
-
- ;----------------
- ; for each sound argument:
- ;
- ; *WATCH*: printf("marking SND@%x in NAME@%x\n", susp->snd, susp);
- ; sound_xlmark(susp->NAME);
- ;----------------
- (dolist (snd sound-names)
- (if *watch*
- (format stream
- " printf(\"marking ~A@%x in ~A@%x\\n\", susp->~A, susp);~%"
- snd name snd))
- (format stream " sound_xlmark(susp->~A);~%" snd))
-
- ;----------------
- ; }
- ;----------------
- (format stream "}~%")))
-
-(print 'write-mark)
-
-;;************
-;; write-make
-;;
-;; Inputs:
-;; alg - algorithm description
-;; stream - stream on which to write .c file
-;; Effect:
-;; writes NAME_free(...), NAME_print_tree, and snd_make_NAME(...)
-;;************
-
-(defun write-make (alg stream)
- (let ((name (get-slot alg 'name))
- (sr (get-slot alg 'sample-rate))
- (else-prefix "")
- first-time
- (sound-names (get-slot alg 'sound-names))
- (logical-stop (car (get-slot alg 'logical-stop)))
- (sound-to-name (get-slot alg 'sound-to-name))
- (state-list (get-slot alg 'state))
- (linear (get-slot alg 'linear))
- (arguments (get-slot alg 'arguments))
- (finalization (get-slot alg 'finalization))
- (interpolation-list (get-slot alg 'interpolation-list))
- (interpolation-rationale (get-slot alg 'interpolation-rationale))
- encoding-list
- (terminate (car (get-slot alg 'terminate)))
- (type-check (car (get-slot alg 'type-check)))
- (delay (get-slot alg 'delay))
- (start (get-slot alg 'start)))
-
- ;--------------------
- ; void NAME_free(NAME_susp_type susp)
- ; {
- ;----------------
- (format stream "~%~%void ~A_free(~A_susp_type susp)~%{~%"
- name name)
-
- ;----------------
- ; if there's a finalization, do it
- ;----------------
- (if finalization (print-strings finalization stream))
-
- ;----------------
- ; for each sound argument:
- ;
- ; sound_unref(susp->NAME);
- ;----------------
- (dolist (name sound-names)
- (format stream " sound_unref(susp->~A);~%" name))
-
- ;----------------
- ; ffree_generic(susp, sizeof(NAME_susp_node), "fn-name");
- ; }
- ;--------------------
- (format stream
- " ffree_generic(susp, sizeof(~A_susp_node), \"~A_free\");~%}~%"
- name name)
-
- ;--------------------
- ; void NAME_print_tree(NAME_susp_type susp, int n)
- ; {
- ;----------------
- (format stream "~%~%void ~A_print_tree(~A_susp_type susp, int n)~%{~%"
- name name)
- ;----------------
- ; for each sound argument:
- ;
- ; indent(n);
- ; printf("NAME:");
- ; sound_print_tree_1(susp->NAME, n);
- ;----------------
- (setf first-time t)
- (dolist (name sound-names)
- (cond (first-time
- (setf first-time nil))
- (t ; space between each iteration
- (format stream "~%")))
- (format stream " indent(n);~% stdputstr(\"~A:\");~%" name)
- (format stream " sound_print_tree_1(susp->~A, n);~%" name))
-
- ;----------------
- ; }
- ;--------------------
- (format stream "}~%")
-
- ;--------------------
- ; sound_type snd_make_NAME
- ;--------------------
-
- (format stream "~%~%sound_type snd_make_~A" name)
-
- ;--------------------
- ; ( type name, ...)
- ;--------------------
-
- (write-ansi-parameter-list stream "" arguments)
- (format stream "~%")
- (if (not *ANSI*)
- (dolist (arg arguments)
- (format stream " ~A ~A;~%" (car arg) (cadr arg))))
-
- ;--------------------
- ; NAME_susp_type susp;
- ;--------------------
- (format stream
- "{~% register ~A_susp_type susp;~%" name);
-
- ;; declare "state" variables with TEMP flag
- ;--------------------
- ; <type[i]> <name[i]>;
- ;--------------------
- (dolist (state state-list)
- (cond ((and (cdddr state)
- (cadddr state)
- (eq (cadddr state) 'TEMP))
- (format stream " ~A ~A;~%"
- (car state) (cadr state)))))
-
- (write-sample-rate stream sr sound-names arguments)
-
- ; compute the t0 for new signal (default: use zero):
- ;
- (write-start-time stream start arguments)
-
- ;--------------------
- ; int interp_desc = 0;
- ;--------------------
- (cond (interpolation-list
- (format stream " int interp_desc = 0;~%")))
-
- ;--------------------
- ; sample_type scale_factor = 1.0F;
- ; time_type t0_min; -- but only if there are sound args, implied by non-null sound-names
- ; long lsc;
- ;--------------------
- (format stream " sample_type scale_factor = 1.0F;~%")
- (if sound-names (format stream " time_type t0_min = t0;~%"))
- (if (lsc-needed-p alg)
- (format stream " long lsc;~%"))
-
- ; now do canonical ordering of commutable sounds
- ;
- (dolist (lis (get-slot alg 'commutative))
- ;--------------------
- ; /* sort commuative signals: s1 s2 ... */
- ; snd_sort_<n>
- ; (...)
- ;--------------------
- (format stream " /* sort commutative signals: ~A */~%" lis)
- (format stream " snd_sort_~A" (length lis))
- (write-parameter-list stream ""
- (append (mapcar
- '(lambda (snd)
- (strcat "&" (cdr (assoc snd sound-to-name))))
- lis)
- '("sr")))
- (format stream ";~%~%"))
-
- ; figure scale factor -- if signal is linear wrt some interpolated or
- ; ramped signal (which do the multiply anyway), then put the scale
- ; factor there.
- ;--------------------
- ; /* combine scale factors of linear inputs <linear> */
- ;--------------------
-
- (cond (linear
- (format stream
- " /* combine scale factors of linear inputs ~A */~%" linear)))
- ;--------------------
- ; scale_factor *= NAME ->scale;
- ; NAME ->scale = 1.0F;
- ;--------------------
-
- (dolist (snd linear)
- (let ((name (cdr (assoc snd sound-to-name))))
- (format stream " scale_factor *= ~A->scale;~%" name)
- (format stream " ~A->scale = 1.0F;~%" name)))
-
- ;--------------------
- ; /* try to push scale_factor back to a low sr input */
- ;--------------------
-
- (cond (linear
- (format stream
- "~% /* try to push scale_factor back to a low sr input */~%")))
-
- ;--------------------
- ; if (NAME ->sr < sr) {
- ; NAME ->scale = scale_factor; scale_factor = 1.0F; }
- ;--------------------
-
- (dolist (snd linear)
- (let ((name (cdr (assoc snd sound-to-name))))
- (format stream
-" ~Aif (~A->sr < sr) { ~A->scale = scale_factor; scale_factor = 1.0F; }~%"
- else-prefix name name)
- (setf else-prefix "else ")))
- (if linear (format stream "~%"))
-
- ;-------------------
- ; insert TYPE-CHECK code here
- ;-------------------
- (display "write-make" type-check)
- (if type-check
- (format stream type-check))
-
- ;--------------------
- ; falloc_generic(susp, NAME_susp_node, "fn-name");
- ;--------------------
- (format stream
- " falloc_generic(susp, ~A_susp_node, \"snd_make_~A\");~%" name name)
-
- ;; initialize state: the state list has (type field initialization [temp])
- ;--------------------
- ; susp-> <state[i]> = <value[i]>
- ;--------------------
- ;; if TEMP is present, generate:
- ;--------------------
- ; <state[i]> = <value[i]>
- ;--------------------
-
- (dolist (state state-list)
- (let ((prefix "susp->"))
- (cond ((and (cdddr state)
- (cadddr state)
- (eq (cadddr state) 'TEMP))
- (setf prefix "")))
- (format stream " ~A~A = ~A;~%"
- prefix (cadr state) (caddr state))))
-
- ; if we have a choice of implementations, select one
- (cond ((< 1 (length interpolation-list))
-
- ;--------------------
- ; /* select a susp fn based on sample rates */
- ;--------------------
- ; build a descriptor
- (format stream
- "~% /* select a susp fn based on sample rates */~%")
-
- ;------------------------
- ; interp_desc = (interp_desc << 2) + interp_style( NAME, sr);
- ;------------------------
- (dolist (snd sound-names)
- (format stream
- " interp_desc = (interp_desc << 2) + interp_style(~A, sr);~%"
- snd))
-
- ;--------------------
- ; switch(interp_desc) {
- ;--------------------
- (cond (interpolation-list
- (format stream " switch (interp_desc) {~%")))
-
- ;--------------------------
- ; case INTERP_<encoding>: susp->susp.fetch =
- ; NAME_<encoding>_fetch; break;
- ;--------------------------
- (setf encoding-list (mapcar #'encode interpolation-list))
- (dolist (encoding encoding-list)
- (check-for-no-interpolation encoding interpolation-rationale stream)
- (format stream "susp->susp.fetch = ~A_~A_fetch; break;~%"
- name encoding))
-
- ;--------------------
- ; } /* initialize susp state */
- ;-------------------------
- (format stream " }~%~%"))
- (interpolation-list
- (format stream " susp->susp.fetch = ~A_~A_fetch;~%"
- name (encode (car interpolation-list))))
- (t
- ;-------------------------
- ; susp->susp.fetch = NAME__fetch;
- ;-------------------------
- (format stream " susp->susp.fetch = ~A__fetch;~%~%" name)))
-
- ;----------------
- ; /* compute terminate count */
- ;----------------
- (cond ((terminate-check-needed terminate alg)
- (cond ((eq (car terminate) 'AT)
- (let ((time-expr (cadr terminate)))
- ;----------------
- ; susp->terminate_cnt = round(((TIME-EXPR) - t0) * sr);
- ;----------------
- (format stream
- " susp->terminate_cnt = round(((~A) - t0) * sr);~%"
- time-expr)))
- ((eq (car terminate) 'AFTER)
- (let ((dur-expr (cadr terminate)))
- ;----------------
- ; susp->terminate_cnt = round((DUR-EXPR) * sr);
- ;----------------
- (format stream
- " susp->terminate_cnt = round((~A) * sr);~%"
- dur-expr)))
- (t
- ;----------------
- ; susp->terminate_cnt = UNKNOWN;
- ;----------------
- (format stream " susp->terminate_cnt = UNKNOWN;~%")))))
-
- ;----------------
- ; /* handle unequal start times, if any */
- ;----------------
- (if sound-names
- (format stream " /* handle unequal start times, if any */~%"))
- ;----------------
- ; for each sound argument:
- ; if (t0 < NAME->t0) sound_prepend_zeros(NAME, t0);
- ;----------------
- (dolist (name sound-names)
- (format stream
- " if (t0 < ~A->t0) sound_prepend_zeros(~A, t0);~%" name name))
- ;----------------
- ; t0_min = min(NAME1->t0, min(NAME2->t0, ... NAMEn->t0, t0)...);
- ;----------------
- (cond (sound-names
- (format stream " /* minimum start time over all inputs: */~%")
- (format stream " t0_min = ")
- (dolist (name sound-names)
- (format stream "min(~A->t0, " name))
- (format stream "t0")
- (dolist (name sound-names)
- (format stream ")"))
- (format stream ";~%")))
-
- ;----------------
- ; /* how many samples to toss before t0: */
- ; susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + <DELAY>.5);
- ; if (susp->susp.toss_cnt > 0) {
- ; susp->susp.keep_fetch = susp->susp.fetch;
- ; susp->susp.fetch = NAME_toss_fetch;
- ; t0 = t0_min; -- DELETED 3MAY99 by RBD
- ; }
- ;----------------
- (cond (sound-names
- (format stream " /* how many samples to toss before t0: */\n")
- (if delay
- (format stream " /* Toss an extra ~A samples to make up for internal buffering: */\n" delay))
- (format stream " susp->susp.toss_cnt = (long) ((t0 - t0_min) * sr + ~A.5);\n"
- (if delay delay 0))
- (format stream " if (susp->susp.toss_cnt > 0) {\n")
- (format stream "\tsusp->susp.keep_fetch = susp->susp.fetch;\n")
- (format stream "\tsusp->susp.fetch = ~A_toss_fetch;~%" name)
-; (format stream "\tt0 = t0_min;~% }\n\n")))
- (format stream " }\n\n")))
-
- ;--------------------
- ; /* initialize susp state */
- ; susp->susp.free = NAME_free;
- ; susp->susp.sr = sr;
- ; susp->susp.t0 = t0;
- ;--------------------
- (format stream " /* initialize susp state */~%")
- (format stream " susp->susp.free = ~A_free;~%" name)
- (format stream " susp->susp.sr = sr;~%")
- (format stream " susp->susp.t0 = t0;~%")
-
- ;----------------
- ; if there are sound arguments:
- ; susp->susp.mark = NAME_mark;
- ; otherwise...
- ; susp->susp.mark = NULL;
- ;----------------
- (let ((value "NULL"))
- (cond ((needs-mark-routine alg)
- (setf value (strcat name "_mark"))))
- (format stream " susp->susp.mark = ~A;~%" value))
-
- ;----------------
- ; for debugging...
- ; susp->susp.print_tree = NAME_print_tree;
- ; susp->susp.name = "NAME";
- ;----------------
- (format stream " susp->susp.print_tree = ~A_print_tree;~%" name)
- (format stream " susp->susp.name = \"~A\";~%" name)
-
- ;----------------
- ; if there is a logical stop attribute:
- ; susp->logically_stopped = false;
- ; susp->susp.log_stop_cnt = UNKNOWN;
- ;----------------
- (cond ((logical-stop-check-needed logical-stop)
- (format stream
- " susp->logically_stopped = false;\n")))
- (write-initial-logical-stop-cnt alg stream)
-
- ;--------------------
- ; ramped or interpolated:
- ;
- ; susp->started = false;
- ;--------------------
- (cond ((any-ramp-or-interp-in interpolation-list)
- (format stream " susp->started = false;~%")))
-
- ;--------------------
- ; susp->susp.current = 0;
- ;--------------------
- (format stream " susp->susp.current = 0;~%")
-
- ;----------------------------
- ; For each sound arg:
- ;
- ; susp-> <arg> = <arg>;
- ; susp-> <arg>_cnt = 0;
- ;----------------------------
-
- (dotimes (n (length (get alg 'sound-args)))
- (let ((interpolation (union-of-nth interpolation-list n)))
- (setf arg (nth n sound-names)) ; get name of signal
- (format stream " susp->~A = ~A;~%" arg arg)
- (format stream " susp->~A_cnt = 0;~%" arg)
- ;-----------------------------------------------
- ; Interpolation:
- ;
- ; susp-> <arg>_pHaSe = 0.0;
- ; susp-> <arg>_pHaSe_iNcR = <arg> ->sr
- ;-----------------------------------------------
- (cond ((member 'INTERP interpolation)
- (format stream " susp->~A_pHaSe = 0.0;~%" arg)
- (format stream " susp->~A_pHaSe_iNcR = ~A->sr / sr;~%"
- arg arg)))
- ;-----------------------------------------------
- ; Ramp:
- ;
- ; susp->output_per_<arg> = <arg> ->sr;
- ;-----------------------------------------------
-
- (cond ((member 'RAMP interpolation)
- (format stream " susp->~A_n = 0;~%" arg)
- (format stream " susp->output_per_~A = sr / ~A->sr;~%"
- arg arg)))))
-
- ;----------------------------
- ; return sound_create (snd_susp_type)susp, t0, sr, scale_factor);
- ;----------------------------
-
- (format stream
- " return sound_create((snd_susp_type)susp, t0, sr, scale_factor);~%}~%")))
-
-
-(print 'write-make)
-
-;;************
-;; write-parameter-list -- with comma separator, open and close parens
-;;
-;;************
-
-(defun write-parameter-list (stream prefix strings)
- (let ((comma ""))
- (format stream "(")
- (dolist (parm strings)
- (format stream "~A~A~A" comma prefix parm)
- (setf comma ", "))
- (format stream ")")))
-
-;;************
-;; write-ansi-prototype-list -- with comma separator, open and close parens
-;;
-;; Inputs:
-;; stream - output stream
-;; prefix - arg prefix, perhaps ""
-;; args - argument type/name pairs of the form
-;; ( (type1 name1) (type2 name2) ... )
-;; Effect:
-;; if *ANSI* is set T, writes ANSI-style parameter list of the form
-;; type name, ...
-;; if *ANSI* is set NIL, writes antique-style parameter list of the form
-;; ()
-;;************
-
-(defun write-ansi-prototype-list (stream prefix args)
- (let ((comma ""))
- (format stream "(")
- (if *ANSI*
- (dolist (parm args)
- ;--------------------
- ; for each parameter
- ; <comma>type <prefix><parm>
- ;--------------------
- (format stream "~A~A ~A~A" comma (car parm) prefix (cadr parm))
- (setf comma ", "))
- )
- (format stream ")")))
-
-;;************
-;; write-ansi-parameter-list
-;;
-;; Inputs:
-;; stream - output stream
-;; prefix - arg prefix, perhaps ""
-;; args - argument type/name pairs of the form
-;; ( (type1 name1) (type2 name2) ... )
-;; Effect:
-;; if *ANSI* is set T, writes ANSI-style parameter list of the form
-;; (type name, ...)
-;; if *ANSI* is set NIL, writes antique-style parameter list of the form
-;; (name, ...)
-;; Note:
-;; to get a space between types and arguments, a space is prepended to prefix if
-;; this is an *ANSI* arg list.
-;;************
-
-(defun write-ansi-parameter-list (stream prefix args)
- (let ((comma ""))
- (format stream "(")
- (cond (*ANSI*
- (setf prefix (strcat " " prefix))))
- (dolist (parm args)
- (format stream "~A~A~A~A" comma
- (if *ANSI* (car parm) "")
- prefix (cadr parm))
- (setf comma ", ")
- )
- (format stream ")")))
-
-;;************
-;; write-sample-rate
-;; Effect:
-;; declare sr and compute the sample rate for the new signal
-;; Notes:
-;; If sr is an input parameter, it is not declared
-;; If (SAMPLE-RATE expr) is specified, declare sr to be initialized
-;; to the expr
-;; If (SAMPLE-RATE (MAX s1 s2 ...)), sr is initialized to the max.
-;; Otherwise, sr is initialized to the max of the sample rates of
-;; all the sound-type arguments
-;;************
-
-(defun write-sample-rate (stream sr sound-names arguments)
- ;; if sr is "sr" and "sr" is a parameter, then do nothing:
-
- (display "write-sample-rate: " sr sound-names arguments)
-
- (cond ( (and (equal sr "sr") (is-argument "sr" arguments))
- ;---------------------
- ; /* sr specified as input parameter */
- ;---------------------
- (format stream " /* sr specified as input parameter */~%")
- )
- ;; else if sample rate is specified, use it to initialize sr:
- ((stringp sr)
- (display "write-sample-rate: using specified sr" sr)
- ;---------------------
- ; rate_type sr = <sr>;
- ;---------------------
- (format stream " rate_type sr = ~A;~%" sr)
- )
- ;; else look for (MAX ...) expression
- ((and (listp sr) (eq (car sr) 'MAX))
- (format stream " rate_type sr = ")
- (write-redux-of-names stream "max"
- (mapcar #'symbol-to-name (cdr sr)) "->sr")
- (format stream ";~%")
- )
- ;; else assume sr is max of sr's of all sound arguments
- (sound-names
- ;---------------------
- ; rate_type sr = max( <arg[0]> ->sr, <arg[i]> ->sr);
- ;---------------------
- (format stream " rate_type sr = ") ; jmn
- (write-redux-of-names stream "max" sound-names "->sr")
- (format stream ";~%")
- )
- (t
- (error "Missing SAMPLE-RATE specification."))
- )
-)
-
-
-(defun write-redux-of-names (stream fn sound-names suffix)
- (dotimes (n (1- (length sound-names)))
- (format stream "~A(" fn))
- (format stream "~A~A" (car sound-names) suffix)
- (dolist (snd (cdr sound-names))
- (format stream ", ~A~A)" snd suffix)))
-
-
-
-;;************
-;; write-start-time
-;; Effect:
-;; declare sr and compute the start time for the new signal
-;; Notes:
-;; If t0 is an input parameter, it is not declared
-;; If (START (AT expr)) is specified, declare t0 to be initialized
-;; to the expr
-;; Otherwise, t0 is initialized to 0
-;;************
-
-(defun write-start-time (stream start arguments)
- ;; if t0 is "t0" and "t0" is a parameter, then do nothing:
- (display "write-start time:" start arguments)
- (cond ((is-argument "t0" arguments)
- ;---------------------
- ; /* t0 specified as input parameter */
- ;---------------------
- (format stream " /* t0 specified as input parameter */~%"))
- ;; else if start time is specified, use it to initialize sr:
- (t (cond (start
- ;---------------
- ; (START (AT <expr>)) specified:
- ;
- ; time_type t0 = <expr>;
- ;---------------
- (setf start (car start))
- (cond ((eq (car start) 'AT)
- (format stream " time_type t0 = ~A;~%" (cadr start)))
- ((eq (car start) 'MIN)
- (format stream " time_type t0 = ")
- (write-redux-of-names stream "min"
- (c-names (cdr start)) "->t0")
- (format stream ";~%"))
- ((eq (car start) 'MAX)
- (format stream " time_type t0 = ")
- (write-redux-of-names stream "max"
- (c-names (cdr start)) "->t0")
- (format stream ";~%"))
- (t (error (format nil
- "Unrecognized START specification ~A" start)))))
- ;---------------
- ; time_type t0 = 0.0;
- ;---------------
- (t (format stream " time_type t0 = 0.0;~%"))))))
-
-
-;; c-names -- get the C names corresponding to list of symbols
-;;
-(defun c-names (syms) (mapcar '(lambda (sym) (string-downcase (symbol-name sym))) syms))
-
-(defun is-table (alg snd)
- (dolist (table (get-slot alg 'table))
- (cond ((equal snd table)
- (display "is-table" snd table)
- (return t)))))
-
-
-;; write-xlmake -- write out a function snd_NAME to be called by xlisp
-;
-; this function copies any sound arguments and passes them on to snd_make_NAME
-;
-(defun write-xlmake (alg stream)
- (let ((name (get-slot alg 'name))
- (sound-names (get-slot alg 'sound-names))
- (arguments (get-slot alg 'arguments))
- comma)
- ;--------------------
- ; sound_type snd_NAME
- ;--------------------
-
- (format stream "~%~%sound_type snd_~A" name)
-
- ;--------------------
- ; ( type name, ...)
- ; {
- ;--------------------
-
- (write-ansi-parameter-list stream "" arguments)
- (format stream "~%")
- (if (not *ANSI*)
- (dolist (arg arguments)
- (format stream " ~A ~A;~%" (car arg) (cadr arg))))
- (format stream "{~%")
-
- ;----------------
- ; for each sound argument that is not a table
- ; sound_type SND_copy = sound_copy(SND);
- ;----------------
-
- (dolist (arg arguments)
- (cond ((equal (car arg) "sound_type")
- (let ((snd (cadr arg)))
- (cond ((not (is-table alg snd))
- (format stream
- " sound_type ~A_copy = sound_copy(~A);~%"
- snd snd)))))))
-
- ;----------------
- ; now call snd_make_ALG. When SND is a sound_type that is not a table,
- ; substitute SND_copy for SND.
- ;----------------
-
- (format stream " return snd_make_~A(" name)
- (setf comma "")
- (dolist (arg arguments)
- (let ((suffix ""))
- (cond ((and (equal (car arg) "sound_type")
- (not (is-table alg (cadr arg))))
- (setf suffix "_copy")))
- (format stream "~A~A~A" comma (cadr arg) suffix)
- (setf comma ", ")))
- (format stream ");~%}~%")))
diff --git a/lib-src/libnyquist/tran/writesusp.lsp b/lib-src/libnyquist/tran/writesusp.lsp
deleted file mode 100644
index fc4f429..0000000
--- a/lib-src/libnyquist/tran/writesusp.lsp
+++ /dev/null
@@ -1,982 +0,0 @@
-;;************
-;; Change Log
-;; Date | Change
-;;----------+---------------------
-;; 17-Dec-91 | [1.1] <jmn> Created
-;; 17-Dec-91 | [1.1] <jmn> cast arg of snd_list_create to correct type
-;; 17-Dec-91 | [1.1] <jmn> cast truncation as (int) explicitly, avoid lint
-;; | errors
-;; 13-Jan-92 | [1.2] <jmn> reformatted and recommented
-;;************
-
-;;****************
-;; depended-on-in-inner-loop - test if variables updated in inner loop
-;;****************
-(defun depended-on-in-inner-loop (vars interp sound-names step-function)
- (dotimes (n (length interp))
- (let ((method (nth n interp))
- (name (nth n sound-names))
- interpolate-samples)
- (setf interpolate-samples
- (not (member (name-to-symbol name) step-function)))
- (cond ((and (or (member method '(NONE SCALE INTERP))
- interpolate-samples)
- (member name vars :test #'equal))
- (return t))))))
-
-;;****************
-;; fixup-depends-prime - write code to update depend variables
-;; this code is only run the first time the suspension
-;; is invoked
-;;****************
-(defun fixup-depends-prime (alg stream name indent var-name)
- (let ((depends (get-slot alg 'depends)))
- (dolist (dep depends)
- (cond ((equal name (cadr dep))
- (cond ((eq (cadddr dep) 'TEMP)
- (format stream "~A~A = ~A;~%" indent (car dep)
- (fixup-substitutions-prime alg
- (caddr dep) name var-name)))
- (t
- (format stream "~Asusp->~A = ~A;~%" indent (car dep)
- (fixup-substitutions-prime alg
- (caddr dep) name var-name)))))))))
-
-(print 'fixup-depends-prime)
-
-
-;;****************
-;; fixup-depends-prime-decls - write declarations for temp depend variables
-;; this code is only run the first time the suspension
-;; is invoked
-;;****************
-(defun fixup-depends-prime-decls (alg stream name)
- (let ((depends (get-slot alg 'depends)))
- (dolist (dep depends)
- (cond ((equal name (cadr dep))
- (cond ((eq (cadddr dep) 'TEMP)
- (format stream "\t ~A ~A;~%" (car (cddddr dep))
- (car dep)))))))))
-
-(print 'fixup-depends-prime-decls)
-
-
-;;****************
-;; fixup-substitutions-prime - substitute susp-><var> for <var> for each
-;; state variable in code, also substitute var-name for name
-;; (this is the depended-on value)
-;;****************
-(defun fixup-substitutions-prime (alg code name var-name)
- (dolist (state (get-slot alg 'state))
- (let ((var (cadr state)))
- (setf code (substitute code var (strcat "susp->" var) t))))
- (if name (setf code (substitute code name var-name nil)))
- code)
-
-(print 'fixup-substitutions-prime)
-
-
-;;****************
-;; fixup-depends - write code to declare and update depend variables
-;; this is called at declaration time (the point where
-;; declarations should be output), but also generates code
-;; to be output after the depended-on variable is updated
-;;****************
-(defun fixup-depends (alg stream name)
- (format stream "/* fixup-depends ~A */~%" name)
- (let ((depends (get-slot alg 'depends))
- (fixup-code "")
- (var-name (strcat name "_x1_sample_reg")))
- (dolist (dep depends)
- (cond ((equal name (cadr dep))
- (cond ((eq (cadddr dep) 'TEMP)
- (format stream "\t\t~A ~A; ~%" (car (cddddr dep))
- (car dep))
- (setf fixup-code
- (format nil "~A\t\t~A = ~A;~%"
- fixup-code (car dep)
- (fixup-substitutions alg
- (caddr dep) name var-name))))
- (t
- (setf fixup-code
- (format nil "~A\t\t~A_reg = susp->~A = ~A;~%"
- fixup-code (car dep) (car dep)
- (fixup-substitutions alg
- (caddr dep) name var-name))))))))
- (put-slot alg fixup-code 'fixup-code)))
-
-(print 'fixup-depends)
-
-
-;;****************
-;; fixup-substitutions - substitute <var>_reg for <var> for each
-;; state variable in code, also substitute var-name for name
-;; (this is the depended-on value)
-;;****************
-(defun fixup-substitutions (alg code name var-name)
- (dolist (state (get-slot alg 'state))
- (let ((var (cadr state)))
- (setf code (substitute code var (strcat var "_reg") t))))
- (substitute code name var-name nil))
-
-(print 'fixup-substitutions)
-
-
-;;****************
-;; in-min-list - see if name is in TERMINATE MIN list or
-;; LOGICAL-STOP MIN list
-;;
-;; returns true if algorithm specified, say (TERMINATE (MIN s1 s2 s3)) and
-;; name is, say, "s2".
-;; NOTE: name is a string, so we have to do a lookup to get the symbol name
-;;****************
-(defun in-min-list (name alg terminate-or-logical-stop)
- (let ((spec (get alg terminate-or-logical-stop)))
-; (display "in-min-list" name alg terminate-or-logical-stop spec)
- (and spec
- (listp (car spec))
- (eq (caar spec) 'MIN)
- (member (name-to-symbol name) (cdar spec)))))
-
-
-;;****************
-;; logical-stop-check-needed -- says if we need to check for logical stop
-;; after the outer loop
-;; the argument is the logical-stop clause from the algorithm prop list
-;;****************
-(defun logical-stop-check-needed (logical-stop)
- (cond ((and logical-stop
- (listp logical-stop)
- (or (eq (car logical-stop) 'MIN)
- (eq (car logical-stop) 'AT))))))
-
-
-;;****************
-;; susp-check-fn -- find fn to check need for new block of samples
-;;
-;; To simply check if susp->S_ptr points to something, you call
-;; susp_check_samples(S, S_ptr, S_cnt), but during this check, it is
-;; also necessary to check for termination condition and logical stop
-;; condition, BUT ONLY if S is in a MIN list for the TERMINATE or
-;; LOGICAL-STOP attributes (i.e. this signal stops when S does).
-;;
-;; The algorithm is: if S is on the LOGICAL-STOP MIN list and on
-;; the TERMINATE MIN list, then call susp_check_term_log_samples.
-;;Otherwise if S is on the LOGICAL-STOP MIN list then call
-;; susp_check_log_samples. Otherwise, if S is on the TERMINATE MIN
-;; list, call susp_check_term_samples. The "normal" case should be
-;; susp_check_term_samples, which happens when the LOGICAL-STOP
-;; MIN list is empty (nothing was specified). Note that a signal logically
-;; stops at termination time anyway, so this achieves the logically stopped
-;; condition with no checking.
-;;****************
-(defun susp-check-fn (name alg)
- (let ((in-log-list (in-min-list name alg 'logical-stop))
- (in-term-list (in-min-list name alg 'terminate)))
- (cond ((and in-log-list in-term-list)
- "susp_check_term_log_samples")
- (in-log-list
- "susp_check_log_samples")
- (in-term-list
- "susp_check_term_samples")
- (t
- "susp_check_samples"))))
-
-
-;;************
-;; write-depend-decls -- declare TEMP depends variables
-;;
-;;************
-;(defun write-depend-decls (alg stream)
-; (dolist (dep (get-slot alg 'depends))
-; (cond ((eq (cadddr dep) 'TEMP)
-; (format stream "\t~A ~A; ~%" (car (cddddr dep)) (car dep))))))
-;--------
-
-(defun write-depend-decls (alg stream interp sound-names step-function)
- (dotimes (n (length interp))
- (let ((name (nth n sound-names))
- (method (nth n interp))
- is-step)
- (cond ((eq method 'INTERP)
- (setf is-step (member (name-to-symbol name) step-function))
- (cond (is-step
- (fixup-depends-prime-decls alg stream name))))))))
-
-
-;;************
-;; write-prime -- write conditional code to prime input sounds and susp
-;;
-;;************
-(defun write-prime (alg stream interp sound-names)
- (let ((step-function (get-slot alg 'step-function)))
- ;------------------------------
- ; /* make sure sounds are primed with first values */
- ;------------------------------
- (format stream "~% /* make sure sounds are primed with first values */~%")
-
- ;------------------------------
- ; if (!susp->started) {
- ; susp->started = true;
- ;------------------------------
-
- (format stream " if (!susp->started) {~%")
- ; this is generating extraneous declarations, is it necessary?
- ; yes, at least sometimes, so we're leaving it in
- ; "atonev.alg" is a good test case to prove you can't comment this out
- (write-depend-decls alg stream interp sound-names step-function)
- (format stream "\tsusp->started = true;~%")
-
- ;------------------------------
- ; for each method
- ;------------------------------
- (dotimes (n (length interp))
- (let ((name (nth n sound-names))
- (method (nth n interp))
- is-step)
- (cond ((eq method 'INTERP)
- ;--------------------
- ; susp_XX_samples(NAME, NAME_ptr, NAME_cnt);
- ; susp->NAME_x1_sample = susp_fetch_sample(NAME, NAME_ptr,
- ; NAME_cnt);
- ; <fixup depends variables> (if a step function)
- ;--------------------
- (format stream "\t~A(~A, ~A_ptr, ~A_cnt);~%"
- (susp-check-fn name alg) name name name)
- (format stream
- "\tsusp->~A_x1_sample = susp_fetch_sample(~A, ~A_ptr, ~A_cnt);~%"
- name name name name)
- (setf is-step (member (name-to-symbol name) step-function))
- (cond (is-step
- (fixup-depends-prime alg stream name "\t"
- (strcat "susp->" name "_x1_sample")))))
- ((eq method 'RAMP)
- ;--------------------
- ; susp->NAME_pHaSe = 1.0;
- ;--------------------
- (format stream "\tsusp->~A_pHaSe = ~A;~%" name "1.0")))))
-
- ;--------------------
- ; *WATCH*
- ; show_samples(2,susp->NAME_x2,0);
- ;--------------------
-; (if *WATCH*
-; (format stream "\tshow_samples(2,~A_x2,0);~%" name))
-
- ;--------------------
- ; }
- ;--------------------
- (format stream " }~%")))
-
-
-(print 'write-prime)
-
-;;************
-;; show-samples-option
-;;
-;; Inputs:
-;; stream: output stream for file
-;; name: token to use for forming name
-;; Effect:
-;; Writes sampling clause
-;;************
-(defun show-samples-option (stream name)
- ;----------------------------
- ; else
- ; { /* just show NAME */
- ; show_samples(1,NAME,NAME_ptr - NAME->samples);
- ; } /* just show NAME */
- ;----------------------------
-; (format stream "\t show_samples(1, ~A, 0);~%\t} else {~%" name)
-; (format stream "\t show_samples(1, ~A, ~A_ptr - ~A->samples);~%~%"
-; name name name)
-)
-
-
-(print "show-samples-option")
-
-;;************
-;; write-susp -- compile the suspension according to interpolation spec
-;;
-;;************
-
-(defun write-susp (alg stream)
- (let* ((interp (get alg 'interpolation))
- (encoding (encode interp))
- (sound-names (get alg 'sound-names))
- (name (get-slot alg 'name))
- (logical-stop (car (get-slot alg 'logical-stop)))
- (terminate (car (get-slot alg 'terminate)))
- (outer-loop (get-slot alg 'outer-loop))
- (step-function (get-slot alg 'step-function))
- (depends (get-slot alg 'depends))
- (inner-loop (get-slot alg 'inner-loop))
- n s m p fn-name loop-prefix joint-depend)
-
- (display "write-susp" interp encoding)
-
- ;---------------------------
- ; non-ANSI:
- ; void NAME_<encoding>_fetch(susp, snd_list)
- ; register pwl_susp_type susp;
- ; snd_list_type snd_list;
- ; {
- ; ANSI:
- ; void NAME_<encoding>_fetch(register susp_type susp, snd_list_type snd_list)
- ; {
- ;---------------------------
-
- (setf fn-name (format nil "~A_~A_fetch" name encoding))
- (cond (*ANSI*
- (format stream
- "~%~%void ~A(register ~A_susp_type susp, snd_list_type snd_list)~%{~%"
- fn-name name))
- (t
- (format stream
- "~%~%void ~A(susp, snd_list)~% register ~A_susp_type susp;~%~A~%"
- fn-name name " snd_list_type snd_list;\n{")))
-
- ;-----------------------------
- ; int cnt = 0; /* how many samples computed */
- ;-----------------------------
- (format stream " int cnt = 0; /* how many samples computed */~%")
-
- (dotimes (n (length interp))
- (let ((name (nth n sound-names))
- interpolate-samples
- (method (nth n interp)))
- (setf interpolate-samples
- (not (member (name-to-symbol name) step-function)))
-
- (cond ((and interpolate-samples (eq method 'INTERP))
- (format stream " sample_type ~A_x2_sample;~%" name))
- ((eq method 'INTERP))
- ((and interpolate-samples (eq method 'RAMP))
- ;-----------------
- ; sample_type NAME_DeLtA;
- ; sample_type NAME_val;
- ;-----------------
- (format stream " sample_type ~A_DeLtA;~%" name)
- (format stream " sample_type ~A_val;~%" name)
- (format stream " sample_type ~A_x2_sample;~%" name))
- ((eq method 'RAMP)
- ;-----------------
- ; sample_type NAME_val;
- ;-----------------
- (format stream " sample_type ~A_val;~%" name)))))
-
- ;-----------------------------
- ; int togo;
- ; int n;
- ; sample_block_type out;
- ; register sample_block_values_type out_ptr;
- ; register sample_block_values_type out_ptr_reg;
- ;-----------------------------
- (format stream " int togo;~%")
- (format stream " int n;~%")
- (format stream " sample_block_type out;~%")
- (format stream " register sample_block_values_type out_ptr;~%~%")
- (format stream " register sample_block_values_type out_ptr_reg;~%~%")
-
- ;; computations for DEPENDS variables added to inner loop
- (setf loop-prefix "")
- (dolist (dep depends)
- (dotimes (n (length interp))
- (let ((method (nth n interp))
- (name (nth n sound-names))
- interpolate-samples)
- (setf interpolate-samples
- (not (member (name-to-symbol name) step-function)))
- (cond ((and (equal name (cadr dep))
- (or (member method '(NONE SCALE))
- interpolate-samples))
- (setf loop-prefix (format nil "~A\t ~A = ~A;~%"
- loop-prefix (car dep) (caddr dep))))))))
-
- ;; computation of JOINT-DEPENDENCY, if applicable
- (setf joint-depend "")
- (dolist (dep (get-slot alg 'joint-dependency))
- ;; if any depended on var is recomputed in inner loop, add the stmts
- (cond ((depended-on-in-inner-loop (car dep) interp sound-names
- step-function)
- (dolist (stmt (cdr dep))
- (setf joint-depend (strcat joint-depend
- "\t " stmt "\n"))))))
-
- ; this computes some additional declarations
- (compute-inner-loop alg (strcat loop-prefix joint-depend inner-loop))
- ; make the declarations
- (print-strings (get-slot alg 'register-decl) stream)
-
- ;-----------------------------
- ; falloc_sample_block(out, "caller");
- ; out_ptr = out->samples;
- ; snd_list->block = out;
- ;-----------------------------
- (format stream " falloc_sample_block(out, \"~A\");~%" fn-name)
- (format stream " out_ptr = out->samples;~%")
- (format stream " snd_list->block = out;~%")
-
- ;-----------------------------
- ; prime the ramp/interp streams
- ;-----------------------------
- ;; run this code the first time the suspension is called
- (cond ((or (member 'RAMP interp) (member 'INTERP interp))
- (write-prime alg stream interp sound-names)))
-
- (dotimes (n (length interp))
- (let ((name (nth n sound-names))
- interpolate-samples
- (method (nth n interp)))
- (setf interpolate-samples
- (not (member (name-to-symbol name) step-function)))
-
- (cond ((or (and interpolate-samples (eq method 'INTERP))
- (eq method 'RAMP))
- ;-------------
- ; susp_check_XX_samples(NAME, NAME_ptr, NAME_cnt);
- ;-------------
- (format stream
- "~% ~A(~A, ~A_ptr, ~A_cnt);~%"
- (susp-check-fn name alg) name name name)))
-
- (cond ((and interpolate-samples (eq method 'INTERP))
- ;-------------
- ; susp->NAME_x2_sample = susp->NAME->scale * susp->NAME_x2_ptr);
- ;-------------
- (format stream
- " ~A_x2_sample = susp_current_sample(~A, ~A_ptr);~%"
- name name name))
- ((eq method 'INTERP)
- ;-------------
- ;
- ;-------------
- )
- ((and interpolate-samples (eq method 'RAMP))
- ;----------------
- ; susp->NAME_x2_sample = susp_current_sample(NAME, NAME_ptr);
- ;----------------
- (format stream
- " ~A_x2_sample = susp_current_sample(~A, ~A_ptr);~%"
- name name name))
- ((eq method 'RAMP)
- ))))
-
- ;----------------------------
- ; *WATCH*: printf("NAME %x new block %x\n", susp, out);
- ;----------------------------
- (if *watch*
- (format stream " printf(\"~A %x new block %x\\n\", susp, out);~%" name))
-
- ;----------------------------
- ; while (cnt < max_sample_block_len) { /* outer loop */
- ; /* first compute how many samples to generate in inner loop: */
- ; /* don't overflow the output sample block: */
- ; togo = max_sample_block_len - cnt;
- ;----------------------------
-
- (format stream
- "~% while (cnt < max_sample_block_len) { /* outer loop */~%")
- (format stream
- "\t/* first compute how many samples to generate in inner loop: */~%")
- (format stream
- "\t/* don't overflow the output sample block: */~%")
- (format stream
- "\ttogo = max_sample_block_len - cnt;~%~%")
-
- ;; this loop gets ready to execute the INNER-LOOP
- (dotimes (n (length interp))
- (let ((name (nth n sound-names))
- interpolate-samples
- (method (nth n interp)))
- (setf interpolate-samples
- (not (member (name-to-symbol name) step-function)))
-
- (cond ((member method '(NONE SCALE))
- ;-----------------
- ; NONE:
- ; /* don't run past the NAME input sample block */
- ; susp_check_XX_for_samples(NAME, NAME_ptr, NAME_cnt);
- ; togo = min(togo, susp->NAME_cnt);
- ;-----------------
- (format stream
- "\t/* don't run past the ~A input sample block: */~%" name)
- (display "don't run past the ..." name (susp-check-fn name alg))
- (format stream
- "\t~A(~A, ~A_ptr, ~A_cnt);~%"
- (susp-check-fn name alg) name name name)
- (format stream "\ttogo = min(togo, susp->~A_cnt);~%~%" name))
- ((eq method 'INTERP))
- ((and interpolate-samples (eq method 'RAMP))
- ;-----------------
- ; RAMP:
- ;
- ; /* grab next NAME_x2_sample when phase goes past 1.0 */
- ; /* we use NAME_n (computed below) to avoid roundoff errors: */
- ; if (susp->NAME_n <= 0) {
- ; susp->NAME_x1_sample = NAME_x2_sample;
- ; susp->NAME_ptr++;
- ; susp_took(NAME_cnt, 1);
- ; susp->NAME_pHaSe -= 1.0;
- ; susp_check_log_samples(NAME, NAME_ptr, NAME_cnt);
- ; NAME_x2_sample = susp_current_sample(NAME, NAME_ptr);
- ; }
- ; /* NAME_n gets number of samples before phase exceeds 1.0: */
- ; susp->NAME_n = 0.5 + (long) ((1.0 - susp->NAME_pHaSe) * susp->output_per_NAME);
- ; togo = min(togo, susp->NAME_n);
- ; NAME_DeLtA = (sample_type) ((NAME_x2_sample - susp->NAME_x1_sample) * susp->NAME_pHaSe_iNcR);
- ; NAME_val = (sample_type) (susp->NAME_x1_sample * (1.0 - susp->NAME_pHaSe) +
- ; NAME_x2_sample * susp->NAME_pHaSe);
- ;-----------------
- (format stream
- "\t/* grab next ~A_x2_sample when phase goes past 1.0; */~%" name)
- (format stream
- "\t/* we use ~A_n (computed below) to avoid roundoff errors: */~%" name)
- (format stream "\tif (susp->~A_n <= 0) {~%" name)
- (format stream "\t susp->~A_x1_sample = ~A_x2_sample;~%"
- name name)
- (format stream "\t susp->~A_ptr++;~%" name);
- (format stream "\t susp_took(~A_cnt, 1);~%" name);
- (format stream "\t susp->~A_pHaSe -= 1.0;~%" name);
- (format stream "\t ~A(~A, ~A_ptr, ~A_cnt);~%"
- (susp-check-fn name alg) name name name)
- (format stream
- "\t ~A_x2_sample = susp_current_sample(~A, ~A_ptr);~%"
- name name name)
- (format stream
- "\t /* ~A_n gets number of samples before phase exceeds 1.0: */~%"
- name)
- (format stream
- "\t susp->~A_n = (long) ((1.0 - susp->~A_pHaSe) *~%"
- name name)
- (format stream "\t\t\t\t\tsusp->output_per_~A);~%\t}~%" name)
- (format stream "\ttogo = min(togo, susp->~A_n);~%" name)
- (format stream "\t~A_DeLtA = (sample_type) ((~A_x2_sample - susp->~A_x1_sample) * susp->~A_pHaSe_iNcR);~%"
- name name name name)
- (format stream
- "\t~A_val = (sample_type) (susp->~A_x1_sample * (1.0 - susp->~A_pHaSe) +~%"
- name name name)
- (format stream "\t\t ~A_x2_sample * susp->~A_pHaSe);~%~%"
- name name))
- ((eq method 'RAMP)
- ;-----------------
- ; SLOW STEP FUNCTION
- ;
- ; /* grab next NAME_x1_sample when phase goes past 1.0 */
- ; /* use NAME_n (computed below) to avoid roundoff errors: */
- ; if (susp->NAME_n <= 0) {
- ; <fixup depends declarations>
- ; susp_check_log_samples(NAME, NAME_ptr, NAME_cnt);
- ; susp->NAME_x1_sample = susp_fetch_sample(NAME, NAME_ptr,
- ; NAME_cnt);
- ; susp->NAME_pHaSe -= 1.0;
- ; /* NAME_n gets number of samples before phase
- ; exceeds 1.0: */
- ; susp->NAME_n = (long) ((1.0 - susp->NAME_pHaSe) *
- ; susp->output_per_NAME);
- ; <fixup depends variables>
- ; }
- ; togo = min(togo, susp->NAME_n);
- ; NAME_val = susp->NAME_x1_sample;
- ;-----------------
- (format stream
- "\t/* grab next ~A_x1_sample when phase goes past 1.0; */~%"
- name)
- (format stream
- "\t/* use ~A_n (computed below) to avoid roundoff errors: */~%"
- name)
- (format stream "\tif (susp->~A_n <= 0) {~%" name)
- (fixup-depends-prime-decls alg stream name)
- (format stream "\t ~A(~A, ~A_ptr, ~A_cnt);~%"
- (susp-check-fn name alg) name name name)
- (format stream
- "\t susp->~A_x1_sample = susp_fetch_sample(~A, ~A_ptr, ~A_cnt);~%"
- name name name name)
- (format stream "\t susp->~A_pHaSe -= 1.0;~%" name);
- (format stream
- "\t /* ~A_n gets number of samples before phase exceeds 1.0: */~%"
- name)
- (format stream
- "\t susp->~A_n = (long) ((1.0 - susp->~A_pHaSe) *~%"
- name name)
- (format stream "\t\t\t\t\tsusp->output_per_~A);~%" name)
- (fixup-depends-prime alg stream name "\t "
- (strcat "susp->" name "_x1_sample"))
- (format stream "\t}~%" name)
- (format stream "\ttogo = min(togo, susp->~A_n);~%" name)
- (format stream
- "\t~A_val = susp->~A_x1_sample;~%" name name) ))))
-
- ;---------------
- ; see if there are joint-dependencies that should be output now
- ; output here if none of depended-on signals are updated in inner loop
- ;---------------
- ;; computation of JOINT-DEPENDENCY, if applicable
- (setf joint-depend "")
- (dolist (dep (get-slot alg 'joint-dependency))
- (cond ((not (depended-on-in-inner-loop (car dep) interp sound-names
- step-function))
- (dolist (stmt (cdr dep))
- (setf joint-depend (strcat joint-depend
- "\t" stmt "\n"))))))
- (setf joint-depend (fixup-substitutions-prime alg joint-depend nil nil))
- (format stream joint-depend)
-
- ;----------------
- ; if the teminate time is a MIN of some signals or AT some expression
- ; (i.e. specified at all) see if we're coming to the terminate cnt:
- ;
- ; /* don't run past terminate time */
- ; if (susp->terminate_cnt != UNKNOWN &&
- ; susp->terminate_cnt <= susp->susp.current) {
- ; int to_stop = (susp->terminate_cnt + max_sample_block_len) -
- ; (susp->susp.current + cnt);
- ; if (to_stop < togo && ((togo = to_stop) == 0)) break;
- ; }
- ;----------------
- (cond ((terminate-check-needed terminate alg)
- (print-strings '(
- "\t/* don't run past terminate time */\n"
- "\tif (susp->terminate_cnt != UNKNOWN &&\n"
- "\t susp->terminate_cnt <= susp->susp.current + cnt + togo) {\n"
- "\t togo = susp->terminate_cnt - (susp->susp.current + cnt);\n"
- "\t if (togo == 0) break;\n"
- "\t}\n\n") stream)))
-
- ;----------------
- ; if the logical-stop attribute is MIN of some signals or AT some expression
- ; see if we're coming to the logical stop:
- ;
- ; /* don't run past logical stop time */
- ; if (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {
- ; int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);
- ; /* break if to_stop == 0 (we're at the logical stop)
- ; * AND cnt > 0 (we're not at the beginning of the
- ; * output block).
- ; */
- ; if (to_stop < togo) {
- ; if (to_stop == 0) {
- ; if (cnt) {
- ; togo = 0;
- ; break;
- ; } else /* keep togo as is: since cnt == 0, we
- ; * can set the logical stop flag on this
- ; * output block
- ; */
- ; susp->logically_stopped = true;
- ; } else /* limit togo so we can start a new
- ; * block at the LST
- ; */
- ; togo = to_stop;
- ; }
- ; }
- ;----------------
- (cond (logical-stop
- (print-strings '(
- "\n\t/* don't run past logical stop time */\n"
- "\tif (!susp->logically_stopped && susp->susp.log_stop_cnt != UNKNOWN) {\n"
- "\t int to_stop = susp->susp.log_stop_cnt - (susp->susp.current + cnt);\n"
- "\t /* break if to_stop == 0 (we're at the logical stop)\n"
- "\t * AND cnt > 0 (we're not at the beginning of the\n"
- "\t * output block).\n"
- "\t */\n"
- "\t if (to_stop < togo) {\n"
- "\t\tif (to_stop == 0) {\n"
- "\t\t if (cnt) {\n"
- "\t\t\ttogo = 0;\n"
- "\t\t\tbreak;\n"
- "\t\t } else /* keep togo as is: since cnt == 0, we\n"
- "\t\t * can set the logical stop flag on this\n"
- "\t\t * output block\n"
- "\t\t */\n"
- "\t\t\tsusp->logically_stopped = true;\n"
- "\t\t} else /* limit togo so we can start a new\n"
- "\t\t * block at the LST\n"
- "\t\t */\n"
- "\t\t togo = to_stop;\n"
- "\t }\n"
- "\t}\n\n")
- stream)))
-
- (cond (outer-loop
- (print-strings outer-loop stream)
- (format stream "~%")))
-
- ;----------------------------
- ; n = togo;
- ; *WATCH*: printf("ALG %x starting inner loop, n %d\n", susp, n);
- ;----------------------------
-
- (format stream "\tn = togo;~%")
- (if *watch*
- (format stream
- "\tprintf(\"~A %x starting inner loop, n %d\\n\", susp, n);~%"
- name))
-
- (dotimes (n (length interp))
- (let ((name (nth n sound-names))
- (method (nth n interp)))
- (cond ((eq method 'NONE))
- ;-----------------
- ; NONE:
- ;-----------------
- ((eq method 'RAMP))
- ;-----------------
- ; RAMP:
- ;-----------------
- ((and (eq method 'INTERP) (eq n 0))
- ;-----------------
- ; INTERP (first arg only)
-; ; susp->NAME_cnt -= togo;
- ;-----------------
-; (format stream "\tsusp->~A_cnt -= togo;~%" name)
- ))))
-
- (print-strings (get-slot alg 'register-init) stream)
- ;----------------------------
- ; if (n) do { /* inner loop */
- ;----------------------------
-
- (format stream
- "\tif (n) do { /* the inner sample computation loop */~%")
-
- ;;----------------------------
- ;; write local declarations supplied by user
- ;;----------------------------
-
- (print-strings (get-slot alg 'inner-loop-locals) stream)
-
- ;;----------------------------
- ;; declare temps that depend on signals
- ;;----------------------------
-
- (dotimes (n (length interp))
- (let ((method (nth n interp))
- interpolate-samples
- (name (nth n sound-names)))
- (setf interpolate-samples
- (not (member (name-to-symbol name) step-function)))
- (cond ((or (member method '(NONE SCALE))
- interpolate-samples)
- (dolist (dep depends)
- (cond ((and (equal (cadr dep) name)
- (eq (cadddr dep) 'TEMP))
- (format stream "\t ~A ~A;~%" (car (cddddr dep))
- (car dep)))))))))
-
- ;; this loop writes code that runs in the INNER-LOOP and checks to see
- ;; if we need to advance to the next pair of interpolated points for
- ;; each interpolated sound
- (dotimes (n (length interp))
- (let ((name (nth n sound-names))
- interpolate-samples
- (method (nth n interp)))
- (setf interpolate-samples
- (not (member (name-to-symbol name) step-function)))
-
- (cond ((and interpolate-samples (eq method 'INTERP))
- ;-----------------
- ; INTERP:
- ;
- ; if (susp->NAME_pHaSe >= 1.0) {
- ; NAME_x1_sample_reg =NAME_x2_sample_reg;
- ; /* pick up next sample as NAME_x2_sample */
- ; susp->NAME_ptr++;
- ; susp_took(NAME_cnt, 1);
- ; susp->NAME_pHaSe -= 1.0;
- ; susp_check_XX_samples_break(NAME, NAME_ptr, NAME_cnt, NAME_x2_sample);
- ; }
- ; <maintenance of depends variables>
- ;-----------------
- (format stream "\t if (~A_pHaSe_ReG >= 1.0) {~%" name)
- (format stream "\t\t~A_x1_sample_reg = ~A_x2_sample;~%"
- name name)
- (format stream "\t\t/* pick up next sample as ~A_x2_sample: */~%" name)
- (format stream "\t\tsusp->~A_ptr++;~%" name)
- (format stream "\t\tsusp_took(~A_cnt, 1);~%" name)
- (format stream "\t\t~A_pHaSe_ReG -= 1.0;~%" name)
- (format stream "\t\t~A_break(~A, ~A_ptr, ~A_cnt, ~A_x2_sample);~%"
- (susp-check-fn name alg) name name name name)
-; (format stream "\t\t~A_x2_sample = susp_current_sample(~A, ~A_ptr);~%"
-; name name name)
-
- ; show_samples(2, susp->NAME_x2, susp->NAME_x2_ptr -
- ; NAME_x2->block->samples);
- ;-----------------
-
-; (if *WATCH*
-; (format stream "\t\tshow_samples(2,susp->~A_x2,susp->~A_x2_ptr - susp->~A_x2->block->samples);~%"
-; name name name)
-; )
- ;-----------------
- ; }
- ;-----------------
- (format stream "\t }~%")
- )
- ((eq method 'INTERP)
- ;-----------------
- ; STEP FUNCTION:
- ;
- ; if (susp->NAME_pHaSe >= 1.0) {
- ; <optional depends/fixup declarations>
- ; /* pick up next sample as NAME_x1_sample */
- ; susp->NAME_ptr++;
- ; susp_took(NAME_cnt, 1);
- ; susp->NAME_pHaSe -= 1.0;
- ; susp_check_XX_samples_break(NAME, NAME_ptr, NAME_cnt, NAME_x1_sample);
- ; NAME_x1_sample_reg = susp_current_sample(NAME, NAME_ptr);
- ; <optional depends/fixup code>
- ; }
- ;-----------------
- (format stream "\t if (~A_pHaSe_ReG >= 1.0) {~%" name)
- (fixup-depends alg stream name)
- (format stream "\t\t/* pick up next sample as ~A_x1_sample: */~%" name)
- (format stream "\t\tsusp->~A_ptr++;~%" name)
- (format stream "\t\tsusp_took(~A_cnt, 1);~%" name)
- (format stream "\t\t~A_pHaSe_ReG -= 1.0;~%" name)
- (format stream "\t\t~A_break(~A, ~A_ptr, ~A_cnt, ~A_x1_sample_reg);~%"
- (susp-check-fn name alg) name name name name)
- (format stream "\t\t~A_x1_sample_reg = susp_current_sample(~A, ~A_ptr);~%"
- name name name)
-
- ; show_samples(2, susp->NAME_x2, susp->NAME_x2_ptr -
- ; NAME_x2->block->samples);
- ;-----------------
-
-; (if *WATCH*
-; (format stream "\t\tshow_samples(2,susp->~A_x2,susp->~A_x2_ptr - susp->~A_x2->block->samples);~%"
-; name name name)
-; )
- (let ((fixup-code (get-slot alg 'fixup-code)))
- (if fixup-code (format stream fixup-code)))
-
- ;-----------------
- ; }
- ;-----------------
- (format stream "\t }~%")))))
-
- (write-inner-loop alg stream)
- (print-strings (get-slot alg 'register-cleanup) stream)
-
- ;; this loop calls loop tail computations on all sounds
- (dotimes (n (length interp))
- (let ((name (nth n sound-names))
- interpolate-samples
- (method (nth n interp)))
- (setf interpolate-samples
- (not (member (name-to-symbol name) step-function)))
-
- (cond ((member method '(NONE SCALE))
- ;-----------------
- ; NONE:
- ; susp_took(NAME_cnt, togo - n);
- ;-----------------
- (format stream "\tsusp_took(~A_cnt, togo);~%" name))
- ((eq method 'INTERP))
- ((eq method 'RAMP)
- ;-----------------
- ; RAMP:
- ; susp->NAME_pHaSe += togo * susp->NAME_pHaSe_iNcR;
- ; susp->NAME_n -= togo;
- ;-----------------
- (format stream
- "\tsusp->~A_pHaSe += togo * susp->~A_pHaSe_iNcR;~%"
- name name)
- (format stream "\tsusp->~A_n -= togo;~%" name)
- ))))
- ;-----------------------------
- ; cnt += togo;
- ; } /* outer loop */
- ;
- ; snd_list->block_len = cnt;
- ;-----------------------------
-
- (format stream "~A~%~A~%~%" "\tcnt += togo;"
- " } /* outer loop */")
- ;-----------------------------
- ; if terminate is not NONE (infinite), check for it as follows:
- ; /* test for termination */
- ; if (togo == 0 && cnt == 0) {
- ; snd_list_terminate(snd_list);
- ; *WATCH*: printf("NAME %x terminated\n", susp);
- ; } else {
- ; snd_list->block_len = cnt;
- ; susp->susp.current += cnt;
- ; }
- ;-----------------------------
- (cond ((terminate-possible terminate alg)
- (print-strings '(
- " /* test for termination */\n"
- " if (togo == 0 && cnt == 0) {\n"
- "\tsnd_list_terminate(snd_list);\n")
- stream)
- (if *watch*
- (format stream "\tprintf(\"~A %x terminated.\\n\", susp);~%" name))
- (print-strings '(
- " } else {\n"
- "\tsnd_list->block_len = cnt;\n"
- "\tsusp->susp.current += cnt;\n"
- " }\n") stream))
- (t
- ;----------------
- ; OTHERWISE (no termination test):
- ; snd_list->block_len = cnt;
- ; susp->susp.current += cnt;
- ;----------------
- (print-strings '(
- " snd_list->block_len = cnt;\n"
- " susp->susp.current += cnt;\n") stream)))
-
- ;----------------
- ; if logical-stop is not the default check for it as follows:
- ; /* test for logical stop */
- ; if (susp->logically_stopped) {
- ; snd_list-> logically_stopped = true;
- ; } else if (susp->susp.log_stop_cnt == susp->susp.current) {
- ; susp->logically_stopped = true;
- ; }
- ;----------------
- (cond ((logical-stop-check-needed logical-stop)
- (print-strings '(
- " /* test for logical stop */\n"
- " if (susp->logically_stopped) {\n"
- "\tsnd_list->logically_stopped = true;\n"
- " } else if (susp->susp.log_stop_cnt == susp->susp.current) {\n"
- "\tsusp->logically_stopped = true;\n"
- " }\n") stream)))
-
- ;----------------
- ; } /* name_encoding_fetch */
- ;----------------
- (format stream "} /* ~A_~A_fetch */~%" name encoding)))
-
-(print 'write-susp)
-
-; terminate-check-needed -- see if this is either a terminate clause
-; that specifies MIN or AT, or is NIL (meaning none-specified so take
-; the default) and there are signal parameters
-;
-(defun terminate-check-needed (terminate alg)
- (cond (terminate
- (cond ((listp terminate)
- (cond ((member (car terminate) '(MIN AT AFTER)) t)
- (t nil)))
- ((member terminate '(COMPUTED NONE)) nil)
- (t
- (error "TERMINATE clause should specify a list"))))
- ((get alg 'sound-args) t)))
-
-
-; same as terminate-check-needed, but also returns true for COMPUTED
-; termination
-;
-(defun terminate-possible (terminate alg)
- (cond (terminate
- (cond ((listp terminate)
- (cond ((member (car terminate) '(MIN AT AFTER COMPUTED)) t)
- (t nil)))
- ((eq terminate 'NONE) nil)
- ((eq terminate 'COMPUTED) t)
- (t
- (error "TERMINATE clause should specify a list"))))
- ((get alg 'sound-args) t)))
diff --git a/lib-src/libnyquist/tran/writetoss.lsp b/lib-src/libnyquist/tran/writetoss.lsp
deleted file mode 100644
index acc8e0a..0000000
--- a/lib-src/libnyquist/tran/writetoss.lsp
+++ /dev/null
@@ -1,85 +0,0 @@
-;; writetoss -- writes the "toss prepended samples" routine
-
-;; modified May 3, 1999 by RBD to not adjust t0 when samples will be tossed
-;; also, final_time is just susp->susp.t0, since t0 is unadjusted.
-
-(defun write-toss (alg stream)
- (let ((alg-name (get alg 'name))
- (sound-names (get alg 'sound-names)))
- ;;----------------
- ;; void ALG_toss_fetch(susp, snd_list)
- ;; register ALG_susp_type susp;
- ;; snd_list_type snd_list;
- ;; {
- ;; long final_count = susp->susp.toss_cnt);
- ;; time_type final_time = susp->susp.t0;
- ;; FORMERLY, THIS WAS:
- ;; time_type final_time = susp->susp.t0 + final_count / susp->susp.sr;
- ;; long n;
- ;;----------------
- (format stream "~%~%void ~A_toss_fetch(susp, snd_list)~%" alg-name)
- (format stream " register ~A_susp_type susp;~%" alg-name)
- (format stream " snd_list_type snd_list;~%{~%")
- (format stream
- " long final_count = susp->susp.toss_cnt;~%")
- (format stream
-" time_type final_time = susp->susp.t0;~%")
- (format stream " long n;~%~%")
-
- (cond (*watch*
- (format stream
- " printf(\"~A_toss_fetch: final count %d final time %d\\n\", "
- alg-name)
- (format stream "final_count, final_time);~%")))
-
- ;;------------------------------
- ;; for each sound argument:
- ;;
- ;; /* fetch samples from NAME up to final_time for this block of zeros */
- ;; while ((round((final_time - susp->NAME->t0) * susp->NAME->sr)) >=
- ;; susp->NAME->current)
- ;; susp_get_samples(NAME, NAME_ptr, NAME_cnt);
- ;;------------------------------
- (dolist (name sound-names)
- (format stream
- " /* fetch samples from ~A up to final_time for this block of zeros */~%"
- name)
- (format stream
- " while ((round((final_time - susp->~A->t0) * susp->~A->sr)) >=~%"
- name name)
- (format stream "\t susp->~A->current)~%" name)
- (format stream "\tsusp_get_samples(~A, ~A_ptr, ~A_cnt);~%"
- name name name))
-
- ;;----------------
- ;; /* convert to normal processing when we hit final_count */
- ;; /* we want each signal positioned at final_time */
- ;;----------------
- (format stream
- " /* convert to normal processing when we hit final_count */~%")
- (format stream " /* we want each signal positioned at final_time */~%")
-
- ;;----------------
- ;; for each sound argument:
- ;;
- ;; n = round((final_time - susp->NAME->t0) * susp->NAME->sr -
- ;; (susp->NAME->current - susp->NAME_cnt));
- ;; susp->NAME_ptr += n;
- ;; susp_took(NAME_cnt, n);
- ;;----------------
- (dolist (name sound-names)
- (format stream " n = round((final_time - susp->~A->t0) * susp->~A->sr -~%"
- name name)
- (format stream " (susp->~A->current - susp->~A_cnt));~%"
- name name)
- (format stream " susp->~A_ptr += n;~%" name)
- (format stream " susp_took(~A_cnt, n);~%" name))
-
- ;;----------------
- ;; susp->susp.fetch = susp->susp.keep_fetch;
- ;; (*(susp->susp.fetch))(susp, snd_list);
- ;; }
- ;;----------------
- (format stream " susp->susp.fetch = susp->susp.keep_fetch;~%")
- (format stream " (*(susp->susp.fetch))(susp, snd_list);~%")
- (format stream "}~%")))
diff --git a/lib-src/libnyquist/win/libnyquist.vcproj b/lib-src/libnyquist/win/libnyquist.vcproj
deleted file mode 100644
index c433094..0000000
--- a/lib-src/libnyquist/win/libnyquist.vcproj
+++ /dev/null
@@ -1,11133 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="libnyquist"
- ProjectGUID="{7AA41BED-41B0-427A-9148-DEA40549D158}"
- RootNamespace="libnyquist"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Release|Win32"
- OutputDirectory=".\$(ConfigurationName)"
- IntermediateDirectory=".\$(ConfigurationName)"
- ConfigurationType="4"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- UseOfMFC="0"
- ATLMinimizesCRunTimeLibraryUsage="false"
- CharacterSet="0"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- AdditionalOptions="/O2"
- Optimization="2"
- InlineFunctionExpansion="1"
- AdditionalIncludeDirectories=".,..\xlisp,..\nyqsrc,..\cmt,..\fft,..\tran,..\snd,..\sys,.."
- PreprocessorDefinitions="NDEBUG;WIN32;_LIB"
- StringPooling="true"
- RuntimeLibrary="0"
- EnableFunctionLevelLinking="true"
- UsePrecompiledHeader="0"
- PrecompiledHeaderFile=".\$(ConfigurationName)/libnyquist.pch"
- AssemblerListingLocation=".\$(ConfigurationName)/"
- ObjectFile=".\$(ConfigurationName)/"
- ProgramDataBaseFileName=".\$(ConfigurationName)/"
- WarningLevel="3"
- SuppressStartupBanner="true"
- CompileAs="0"
- DisableSpecificWarnings="4996"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="NDEBUG"
- Culture="1033"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLibrarianTool"
- OutputFile="..\libnyquist.lib"
- SuppressStartupBanner="true"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory=".\$(ConfigurationName)"
- IntermediateDirectory=".\$(ConfigurationName)"
- ConfigurationType="4"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- UseOfMFC="0"
- ATLMinimizesCRunTimeLibraryUsage="false"
- CharacterSet="0"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=".,..\xlisp,..\nyqsrc,..\cmt,..\fft,..\tran,..\snd,..\sys,.."
- PreprocessorDefinitions="_DEBUG;WIN32;_LIB"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- PrecompiledHeaderFile=".\$(ConfigurationName)/libnyquist.pch"
- AssemblerListingLocation=".\$(ConfigurationName)/"
- ObjectFile=".\$(ConfigurationName)/"
- ProgramDataBaseFileName=".\$(ConfigurationName)/"
- WarningLevel="3"
- SuppressStartupBanner="true"
- DebugInformationFormat="4"
- CompileAs="0"
- DisableSpecificWarnings="4996"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="_DEBUG"
- Culture="1033"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLibrarianTool"
- OutputFile="..\libnyquistd.lib"
- SuppressStartupBanner="true"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Unicode_Debug|Win32"
- OutputDirectory="$(ConfigurationName)"
- IntermediateDirectory="$(ConfigurationName)"
- ConfigurationType="4"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- UseOfMFC="0"
- ATLMinimizesCRunTimeLibraryUsage="false"
- CharacterSet="0"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=".,..\xlisp,..\nyqsrc,..\cmt,..\fft,..\tran,..\snd,..\sys,.."
- PreprocessorDefinitions="_DEBUG;WIN32;_LIB"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- PrecompiledHeaderFile=".\$(ConfigurationName)/libnyquist.pch"
- AssemblerListingLocation=".\$(ConfigurationName)/"
- ObjectFile=".\$(ConfigurationName)/"
- ProgramDataBaseFileName=".\$(ConfigurationName)/"
- WarningLevel="3"
- SuppressStartupBanner="true"
- DebugInformationFormat="4"
- CompileAs="0"
- DisableSpecificWarnings="4996"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="_DEBUG"
- Culture="1033"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLibrarianTool"
- OutputFile="..\libnyquistud.lib"
- SuppressStartupBanner="true"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Unicode_Release|Win32"
- OutputDirectory="$(ConfigurationName)"
- IntermediateDirectory="$(ConfigurationName)"
- ConfigurationType="4"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- UseOfMFC="0"
- ATLMinimizesCRunTimeLibraryUsage="false"
- CharacterSet="0"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- AdditionalOptions="/O2"
- Optimization="2"
- InlineFunctionExpansion="1"
- AdditionalIncludeDirectories=".,..\xlisp,..\nyqsrc,..\cmt,..\fft,..\tran,..\snd,..\sys,.."
- PreprocessorDefinitions="NDEBUG;WIN32;_LIB"
- StringPooling="true"
- RuntimeLibrary="0"
- EnableFunctionLevelLinking="true"
- UsePrecompiledHeader="0"
- PrecompiledHeaderFile=".\$(ConfigurationName)/libnyquist.pch"
- AssemblerListingLocation=".\$(ConfigurationName)/"
- ObjectFile=".\$(ConfigurationName)/"
- ProgramDataBaseFileName=".\$(ConfigurationName)/"
- WarningLevel="3"
- SuppressStartupBanner="true"
- CompileAs="0"
- DisableSpecificWarnings="4996"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="NDEBUG"
- Culture="1033"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLibrarianTool"
- OutputFile="..\libnyquistu.lib"
- SuppressStartupBanner="true"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug DLL|Win32"
- OutputDirectory="$(ConfigurationName)"
- IntermediateDirectory="$(ConfigurationName)"
- ConfigurationType="4"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- UseOfMFC="0"
- ATLMinimizesCRunTimeLibraryUsage="false"
- CharacterSet="0"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=".,..\xlisp,..\nyqsrc,..\cmt,..\fft,..\tran,..\snd,..\sys,.."
- PreprocessorDefinitions="_DEBUG;WIN32;_LIB"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- PrecompiledHeaderFile=".\$(ConfigurationName)/libnyquist.pch"
- AssemblerListingLocation=".\$(ConfigurationName)/"
- ObjectFile=".\$(ConfigurationName)/"
- ProgramDataBaseFileName=".\$(ConfigurationName)/"
- WarningLevel="3"
- SuppressStartupBanner="true"
- DebugInformationFormat="4"
- CompileAs="0"
- DisableSpecificWarnings="4996"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="_DEBUG"
- Culture="1033"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLibrarianTool"
- OutputFile="..\libnyquistd.lib"
- SuppressStartupBanner="true"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug wx284|Win32"
- OutputDirectory="$(ConfigurationName)"
- IntermediateDirectory="$(ConfigurationName)"
- ConfigurationType="4"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- UseOfMFC="0"
- ATLMinimizesCRunTimeLibraryUsage="false"
- CharacterSet="0"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=".,..\xlisp,..\nyqsrc,..\cmt,..\fft,..\tran,..\snd,..\sys,.."
- PreprocessorDefinitions="_DEBUG;WIN32;_LIB"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- PrecompiledHeaderFile=".\$(ConfigurationName)/libnyquist.pch"
- AssemblerListingLocation=".\$(ConfigurationName)/"
- ObjectFile=".\$(ConfigurationName)/"
- ProgramDataBaseFileName=".\$(ConfigurationName)/"
- WarningLevel="3"
- SuppressStartupBanner="true"
- DebugInformationFormat="4"
- CompileAs="0"
- DisableSpecificWarnings="4996"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="_DEBUG"
- Culture="1033"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLibrarianTool"
- OutputFile="..\libnyquistd.lib"
- SuppressStartupBanner="true"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Modular_Release|Win32"
- OutputDirectory="$(ConfigurationName)"
- IntermediateDirectory="$(ConfigurationName)"
- ConfigurationType="4"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- UseOfMFC="0"
- ATLMinimizesCRunTimeLibraryUsage="false"
- CharacterSet="0"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- AdditionalOptions="/O2"
- Optimization="2"
- InlineFunctionExpansion="1"
- AdditionalIncludeDirectories=".,..\xlisp,..\nyqsrc,..\cmt,..\fft,..\tran,..\snd,..\sys,.."
- PreprocessorDefinitions="NDEBUG;WIN32;_LIB"
- StringPooling="true"
- RuntimeLibrary="2"
- EnableFunctionLevelLinking="true"
- UsePrecompiledHeader="0"
- PrecompiledHeaderFile=".\$(ConfigurationName)/libnyquist.pch"
- AssemblerListingLocation=".\$(ConfigurationName)/"
- ObjectFile=".\$(ConfigurationName)/"
- ProgramDataBaseFileName=".\$(ConfigurationName)/"
- WarningLevel="3"
- SuppressStartupBanner="true"
- CompileAs="0"
- DisableSpecificWarnings="4996"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="NDEBUG"
- Culture="1033"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLibrarianTool"
- OutputFile="..\libnyquist.lib"
- SuppressStartupBanner="true"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="nyqsrc"
- >
- <File
- RelativePath="..\nyqsrc\add.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\nyqsrc\avg.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\nyqsrc\compose.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\nyqsrc\debug.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\nyqsrc\downsample.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\nyqsrc\falloc.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\nyqsrc\ffilterkit.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\nyqsrc\fft.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\nyqsrc\handlers.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\nyqsrc\inverse.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\nyqsrc\local.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\nyqsrc\multiread.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\nyqsrc\multiseq.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\nyqsrc\probe.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\nyqsrc\resamp.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\nyqsrc\resampv.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\nyqsrc\samples.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\nyqsrc\seqext.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\nyqsrc\seqfnint.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\nyqsrc\seqinterf.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\nyqsrc\sndfail.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\nyqsrc\sndfnint.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\nyqsrc\sndmax.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\nyqsrc\sndread.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\nyqsrc\sndseq.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\nyqsrc\sndwrite.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\nyqsrc\sound.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\nyqsrc\stats.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- </Filter>
- <Filter
- Name="xlisp"
- >
- <File
- RelativePath="..\xlisp\extern.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\xlisp\path.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\xlisp\xlbfun.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\xlisp\xlcont.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\xlisp\xldbug.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\xlisp\xldmem.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\xlisp\xleval.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\xlisp\xlextstart.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\xlisp\xlfio.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\xlisp\xlftab.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\xlisp\xlglob.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\xlisp\xlimage.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\xlisp\xlinit.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\xlisp\xlio.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\xlisp\xlisp.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\xlisp\xljump.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\xlisp\xllist.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\xlisp\xlmath.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\xlisp\xlobj.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\xlisp\xlpp.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\xlisp\xlprin.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\xlisp\xlread.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\xlisp\xlstr.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\xlisp\xlsubr.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\xlisp\xlsym.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\xlisp\xlsys.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- </Filter>
- <Filter
- Name="cmt"
- >
- <File
- RelativePath="..\cmt\cext.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\cmt\cleanup.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\cmt\cmdline.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\cmt\cmtcmd.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\cmt\mem.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\cmt\midifile.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\cmt\midifns.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\cmt\moxc.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\cmt\record.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\cmt\seq.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\cmt\seqmread.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\cmt\seqmwrite.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\cmt\seqread.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\cmt\seqwrite.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\cmt\tempomap.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\cmt\timebase.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\cmt\userio.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- </Filter>
- <Filter
- Name="fft"
- >
- <File
- RelativePath="..\fft\fftn.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\fft\fftn.h"
- >
- </File>
- </Filter>
- <Filter
- Name="nyx"
- >
- <File
- RelativePath="..\nyx\nyx.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- </Filter>
- <Filter
- Name="tran"
- >
- <File
- RelativePath="..\tran\abs.c"
- >
- </File>
- <File
- RelativePath="..\tran\alpass.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\alpasscv.c"
- >
- </File>
- <File
- RelativePath="..\tran\alpassvc.c"
- >
- </File>
- <File
- RelativePath="..\tran\amosc.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\areson.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\aresoncv.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\aresonvc.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\aresonvv.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\atone.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\atonev.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\biquad.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\buzz.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\chase.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\clip.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\congen.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\const.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\convolve.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\coterm.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\delay.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\delaycv.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\exp.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\fmosc.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\follow.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\fromarraystream.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\fromobject.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\gate.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\ifft.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\integrate.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\log.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\maxv.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\offset.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\oneshot.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\osc.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\partial.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\pluck.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\prod.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\pwl.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\quant.c.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\quantize.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\recip.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\reson.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\resoncv.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\resonvc.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\resonvv.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\sampler.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\scale.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\shape.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\sine.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\siosc.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\slope.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\sqrt.c"
- >
- </File>
- <File
- RelativePath="..\tran\tapv.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\tone.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\tonev.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\upsample.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\tran\white.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- </Filter>
- <Filter
- Name="snd"
- >
- <File
- RelativePath="..\snd\audionone.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\snd\ieeecvt.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions="EXT"
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions="EXT"
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions="EXT"
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions="EXT"
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\snd\snd.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\snd\sndcvt.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\snd\sndheader.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\snd\sndio.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\snd\sndwin32.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- </Filter>
- <Filter
- Name="sys"
- >
- <File
- RelativePath="..\sys\term.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="winfun.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- BasicRuntimeChecks="3"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/lib-src/libnyquist/win/sndsystem.h b/lib-src/libnyquist/win/sndsystem.h
deleted file mode 100644
index 3cd5fa2..0000000
--- a/lib-src/libnyquist/win/sndsystem.h
+++ /dev/null
@@ -1 +0,0 @@
-#include "sndwin32.h"
diff --git a/lib-src/libnyquist/win/switches.h b/lib-src/libnyquist/win/switches.h
deleted file mode 100644
index 9fa65ec..0000000
--- a/lib-src/libnyquist/win/switches.h
+++ /dev/null
@@ -1,83 +0,0 @@
-/* switches.h -- conditional compilation features for WIN32 systems */
-
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm major reorganization of conditional compilation in Nyquist
- */
-
-#ifdef SWITCHES
-Error: switches.h included more than once.
-#endif
-
-#define HAS_STDLIB_H 1
-#define HAS_SYS_TYPES_H 1
-#define HAS_SYS_STAT_H 1
-#undef HAS_STAT_H
-#undef HAS_MALLOC_H
-
-/* define one of HAS_GETTIMEOFDAY, HAS_FTIME, */
-#undef HAS_GETTIMEOFDAY
-#undef HAS_FTIME
-
-#undef READLINE
-
-#undef USE_RAND
-#define USE_RANDOM 1
-
-
-/* since there are 2 versions Nyquist for windows: nyquist and nyqwin,
- we use WINGUI to decide which to compile
- */
-#ifndef WINGUI
-/* use C library printf as nyquist_printf() */
-#define USE_PRINTF 1
-#endif
-
-/* define this to be printf, or define your own fn of the form
- void nyquist_printf(char *format, ...);
- (for a GUI)
-*/
-void nyquist_printf(char *format, ...);
-
-#define NEED_ULONG 1
-#define NEED_USHORT 1
-#define NEED_BYTE 1
-
-#define NEED_ROUND 1
-
-#undef NEED_DEFINE_MALLOC
-
-/* explicitly choose a platform */
-#undef UNIX
-
-#ifndef WINDOWS
-#define WINDOWS 1
-#endif
-
-#ifndef WIN32
-#define WIN32 1
-#endif
-
-#ifndef MICROSOFT
-#define MICROSOFT 1
-#endif
-
-#ifndef DOS
-#define DOS 1
-#endif
-
-#undef MACINTOSH
-
-#define BUFFERED_SYNCHRONOUS_INPUT 1
-#define SPACE_FOR_PLAY 10000
-#define MAX_CHANNELS 16
-
-/* this will enable code to read midi files, etc. */
-#define CMTSTUFF 1
-
-/* NYQUIST tells some CMT code that we're really in
- * XLISP and NYQUIST
- */
-#define NYQUIST 1
-
-#include "swlogic.h"
diff --git a/lib-src/libnyquist/win/winfun.c b/lib-src/libnyquist/win/winfun.c
deleted file mode 100644
index 7338aa5..0000000
--- a/lib-src/libnyquist/win/winfun.c
+++ /dev/null
@@ -1,204 +0,0 @@
-/* winfun.c - windows user interface functions for xlisp */
-/* Written by Brian Kendig. */
-/*Windows Console and DirectSound code added by Morgan Green and Chris Tchou*/
-
-//#include <Quickdraw.h>
-//#include <Windows.h>
-//#include <Memory.h>
-#include <windows.h>
-#include <switches.h>
-#include "xlisp.h"
-#include "sound.h"
-
-
-
-/* osbgetc - get a character from a binary file ====== added for console*/
-/* int osbgetc(fp) FILE *fp; {return (getc(fp));} */
-int osbgetc(FILE *fp)
-{
- int c; c = (getc(fp));
-/* if (dbgflg) printf("osbgetc: got %d from FILE %x\n", c, fp); */
- return c;
-}
-
-
-
-LVAL xsystem (V) { return NIL; }
-LVAL xgetkey (V) { return NIL; }
-
-
-void ossymbols()
-{
- HWND mywin;
- HANDLE myhandle;
- COORD winsize, origin;
- WORD textattrib;
- DWORD n;
- mywin = GetForegroundWindow();
- SetConsoleTitle("Nyquist");
-
-#ifdef WIN32_SNAZZY_CONSOLE // -eub
- myhandle = GetStdHandle(STD_OUTPUT_HANDLE);
- origin.X = 0;
- origin.Y = 0;
- winsize.X = 100;
- winsize.Y = 40;
- textattrib = BACKGROUND_RED | BACKGROUND_BLUE | BACKGROUND_GREEN | BACKGROUND_INTENSITY;
-
- FillConsoleOutputAttribute(myhandle, textattrib, winsize.X * winsize.Y, origin, &n);
- SetConsoleScreenBufferSize(myhandle, winsize);
- FillConsoleOutputAttribute(myhandle, textattrib, winsize.X * winsize.Y, origin, &n);
- SetConsoleTextAttribute(myhandle, textattrib);
-#endif
-
- setvbuf(stdout, NULL, _IONBF, 0); // makes it work under NT emacs 20.3 -eub
-
-}
-
-
-LVAL xsetupconsole()
-{
- HWND mywin;
- HANDLE myhandle;
- COORD winsize, origin;
- WORD textattrib;
- DWORD n;
- mywin = GetForegroundWindow();
- SetConsoleTitle("Nyquist");
-
- myhandle = GetStdHandle(STD_OUTPUT_HANDLE);
- origin.X = 0;
- origin.Y = 0;
- winsize.X = 100;
- winsize.Y = 40;
- textattrib = BACKGROUND_RED | BACKGROUND_BLUE | BACKGROUND_GREEN | BACKGROUND_INTENSITY;
-
- FillConsoleOutputAttribute(myhandle, textattrib, winsize.X * winsize.Y, origin, &n);
- SetConsoleScreenBufferSize(myhandle, winsize);
- FillConsoleOutputAttribute(myhandle, textattrib, winsize.X * winsize.Y, origin, &n);
- SetConsoleTextAttribute(myhandle, textattrib);
- return NIL;
-}
-
-
-void get_xlisp_path(char *p, long p_max)
-{
- HKEY hkey;
- DWORD dwType;
-
- if (RegOpenKeyEx(HKEY_LOCAL_MACHINE, "SOFTWARE", 0, KEY_READ, &hkey) !=
- ERROR_SUCCESS) {
- *p = 0;
- return;
- }
- if (RegOpenKeyEx(hkey, "CMU", 0, KEY_READ, &hkey) !=
- ERROR_SUCCESS) {
- *p = 0;
- return;
- }
- if (RegOpenKeyEx(hkey, "Nyquist", 0, KEY_READ, &hkey) !=
- ERROR_SUCCESS) {
- *p = 0;
- return;
- }
- if (RegQueryValueEx(hkey, "XLISPPATH", NULL, &dwType, p, &p_max) !=
- ERROR_SUCCESS) {
- *p = 0;
- return;
- }
-}
-
-#ifdef WINGUI
-/* NOTE: define WINGUI in the Project Settings for the NyqWin projects.
- * Do not define WINGUI for console versions of Nyquist
- */
-
-/****************************************************************************
-* fileopen
-* Inputs:
-* char *deflt: the default file name (e.g. from command line)
-* char *extension: default extension
-* char *mode: read ("r") or write ("w")
-* char *prompt: prompt for user
-* Returns:
-* opened file pointer
-* Effect:
-* opens file, prompts for user input if necessary and warns about
-* possible confusion. If deflt is a null string or NULL, the user will
-* be prompted for a name. The routine loops until a file is opened.
-* If the mode is "r", a check is made to see if the file exists
-* with and without the extension. If both exist a warning is given.
-* For mode "w", a check is made to see if the file will be overwritten.
-* The extension is automatically added if the default or user-typed
-* file has no "." At the bottom of the loop body, if no file has
-* been opened, the user is prompted for another file name.
-****************************************************************************/
-
-char fileopen_name[100]; /* name of the opened file */
-
-HINSTANCE hInst; /* current instance */
-HWND hMainWindow; /* main window handle */
-
-
-char *getfilename(char *deflt, char *extension, char *mode, char *prompt)
-{
- char filter[64];
- char *filter_ptr = NULL;
- OPENFILENAME open_file_name;
-
- if (extension && extension[0] == 0) extension = NULL;
- if (strcmp(extension, "lsp") == 0) {
- strcpy(filter, "Lisp files");
- } else if (extension) {
- sprintf(filter, "%s files", extension);
- }
- if (extension) {
- sprintf(filter + strlen(filter), "%c*.%s%cAll files%c*.*%c",
- 0, extension, 0, 0, 0);
- filter_ptr = filter;
- }
- if (!deflt) deflt = ""; /* treat NULL as the empty string */
- strcpy(fileopen_name, deflt);
-
- open_file_name.lStructSize = sizeof(OPENFILENAME);
- open_file_name.hwndOwner = hMainWindow;
-
- open_file_name.hInstance = hInst;
- open_file_name.lpstrFilter = filter_ptr;
- open_file_name.lpstrCustomFilter = NULL;
- open_file_name.nMaxCustFilter = 0;
- open_file_name.nFilterIndex = 0;
- open_file_name.lpstrFile = fileopen_name;
- open_file_name.nMaxFile = 100;
- open_file_name.lpstrFileTitle = NULL;
- open_file_name.nMaxFileTitle = 0;
- open_file_name.lpstrInitialDir = NULL;
- open_file_name.lpstrTitle = prompt;
- open_file_name.Flags = OFN_FILEMUSTEXIST | OFN_PATHMUSTEXIST;
- open_file_name.nFileOffset = 0;
- open_file_name.nFileExtension = 0;
- open_file_name.lpstrDefExt = extension;
- open_file_name.lCustData = 0;
- open_file_name.lpfnHook = 0;
- open_file_name.lpTemplateName = 0;
- if (((*mode == 'r') && GetOpenFileName(&open_file_name)) ||
- ((*mode == 'w') && GetSaveFileName(&open_file_name))) {
- return open_file_name.lpstrFile;
- }
- return NULL;
-}
-
-
-
-FILE *fileopen(char *deflt, char *extension, char *mode, char *prompt)
-{
- FILE *fp = NULL; /* file corresponding to filename */
- if (getfilename(deflt, extension, mode, prompt)) {
- fp = fopen(fileopen_name, mode);
- }
- return fp;
-}
-
-#endif
-
-
diff --git a/lib-src/libnyquist/win/winfun.h b/lib-src/libnyquist/win/winfun.h
deleted file mode 100644
index a7cb8ee..0000000
--- a/lib-src/libnyquist/win/winfun.h
+++ /dev/null
@@ -1,10 +0,0 @@
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-char *getfilename(char *deflt, char *extension, char *mode, char *prompt);
-FILE *fileopen(char *deflt, char *extension, char *mode, char *prompt);
-
-#ifdef __cplusplus
-}
-#endif
diff --git a/lib-src/libnyquist/win/winstuff.c b/lib-src/libnyquist/win/winstuff.c
deleted file mode 100644
index d8d64b1..0000000
--- a/lib-src/libnyquist/win/winstuff.c
+++ /dev/null
@@ -1,247 +0,0 @@
-/* winstuff.c - windows interface routines for xlisp */
-/* Written by Chris Tchou. */
-/* This file contains the stuff that the other xlisp files call directly. */
-#include <windows.h> /*Added by Ning Hu Apr.2001 */
-#include <stdio.h>
-//#include <QuickDraw.h> /* for Random */
-#include <memory.h> /* for DisposPtr */
-#include <string.h>
-//#include <SegLoad.h> /* for ExitToShell */
-#include "xlisp.h"
-#include "userio.h"
-
-#define DELETE 0x08
-
-/* externals */
-extern FILE *tfp; /* transcript file pointer */
-extern int cursorPos;
-extern char *macgets (void);
-//Added by Ning Hu Apr.2001
-extern int _isatty(int);
-extern int redirect_flag;
-//Add end
-
-/* local variables */
-int lposition;
-static char *linebuf = NULL, *lineptr;
-static int numChars;
-
-
-//int isascii (char c) { return 1; } /* every char is an ascii char, isn't it? */
-
-void osinit (char *banner) {
-// int i;
-
- char version[] = "\nWindows console interface by Chris Tchou and Morgan Green.\n";
-// InitMac (); /* initialize the mac interface routines */
-// lposition = 0; /* initialize the line editor */
-// for (i = 0; banner[i] != '\0'; i++) macputc (banner[i]);
-// for (i = 0; version[i] != '\0'; i++) macputc (version[i]);
- printf(banner);
- printf(version);
-
- // Added by Ning Hu, to communicate between compiler GUI and Nyquist console Apr.2001
- if( _isatty( _fileno( stdout ) ) ){
- redirect_flag = 0;
-#ifdef DEBUG
- printf( "stdout has not been redirected to a file\n" ); //for debugging use
-#endif
- }
- else {
- redirect_flag = 1;
-#ifdef DEBUG
- printf( "stdout has been redirected to a file\n"); //for debugging use
-#endif
- }
- // Add End
-}
-
-/* osrand - return next random number in sequence */
-long osrand (long rseed) {
-#ifdef OLDBUTINTERESTING
-// note that this takes a seed and returns a big number,
-// whereas I think XLisp's RANDOM is defined differently
- long k1;
-
- /* make sure we don't get stuck at zero */
- if (rseed == 0L) rseed = 1L;
-
- /* algorithm taken from Dr. Dobbs Journal, November 1985, page 91 */
- k1 = rseed / 127773L;
- if ((rseed = 16807L * (rseed - k1 * 127773L) - k1 * 2836L) < 0L)
- rseed += 2147483647L;
-
- /* return a random number between 0 and MAXFIX */
- return rseed;
-#endif
- return rand() % rseed; // rseed is a misnomer
-}
-
-FILE *osaopen (char *name, char *mode) {
- return fopen (name, mode);
-}
-
-FILE *osbopen (char *name, char *mode) {
- char nmode[4];
- strcpy (nmode, mode); strcat (nmode, "b");
- return (fopen (name, nmode));
-}
-
-int osclose (FILE *fp) { return (fclose (fp)); }
-int osaputc (int ch, FILE *fp) { return (putc (ch, fp)); }
-int osbputc (int ch, FILE *fp) { return (putc (ch, fp)); }
-
-/* osagetc - get a character from an ascii file */
-int osagetc(fp)
- FILE *fp;
-{
- return (getc(fp));
-}
-
-extern int abort_flag;
-extern int redirect_flag; //Added by Ning Hu Apr.2001
-
-int ostgetc (void) {
-/* int i;
-
- if (numChars <= 0) { /* get some more */
-/* if (linebuf) DisposPtr (linebuf);
- linebuf = macgets ();
- i = 0;
- while (linebuf[i] != '\0') i++;
- numChars = i;
- if (tfp) for (i = 0; i < numChars; i++) osaputc (linebuf[i], tfp);
- lineptr = linebuf;
- }
- numChars--;
- if (*lineptr == '\r') {
- lineptr++;
- return '\n';
- } else return (*lineptr++);*/
-
-// return getchar(); // console //Old code--removed by Ning Hu
- // Added by Ning Hu Apr.2001
- int ch = getchar();
- oscheck(); /* in case user typed ^C */
- if (ch == BREAK_CHAR && abort_flag == BREAK_LEVEL) {
- abort_flag = 0;
- }
- switch (ch) {
- case ABORT_CHAR: /* control-c */
- xltoplevel();
- break;
- case '\025': /* control-u */
- xlcleanup();
- case '\020': /* control-p */
- xlcontinue();
- break;
- case BREAK_CHAR:
- ostputc('\n'); /* control-b */
- xlbreak("BREAK",s_unbound);
- break;
- default:
- break;
- }
- return ch;
- //Add End
-}
-
-void ostputc (int ch) {
-// macputc (ch);
- putchar(ch); // console
-
- if (tfp) osaputc (ch, tfp);
-}
-
-
-void osflush (void) {
- lineptr = linebuf;
- numChars = 0;
- lposition = 0;
-}
-
-
-void oscheck (void) {
- MSG lpMsg;
-/*DoEvent ();*/
- check_aborted();
-// printf("Current Thread: %d\n", GetCurrentThreadId()); //for debugging use
- if ((redirect_flag) && (PeekMessage(&lpMsg, NULL, 0, 0, PM_REMOVE)!=0)) {
- if (lpMsg.message == WM_CHAR) {
- switch (lpMsg.wParam) {
- case ABORT_CHAR: abort_flag = ABORT_LEVEL;
- break;
- case BREAK_CHAR: abort_flag = BREAK_LEVEL;
- break;
- }
- }
- //printf("Get message: %d %d \n", lpMsg.wParam, BREAK_CHAR); //for debugging use
- }
- if (abort_flag == ABORT_LEVEL) {
- abort_flag = 0;
- osflush();
- xltoplevel();
- } else if (abort_flag == BREAK_LEVEL) {
- abort_flag = 0;
- osflush();
- xlbreak("BREAK",s_unbound);
- }
-}
-//Update end
-
-void oserror (char *msg) {
- char line[100], *p;
- sprintf (line,"error: %s\n",msg);
- for (p = line; *p != '\0'; ++p) ostputc (*p);
-}
-
-void osfinish (void) {
- /* dispose of everything... */
-// if (linebuf) DisposPtr (linebuf);
-// MacWrapUp ();
-// ExitToShell ();
-}
-
-int renamebackup (char *filename) { return 0; }
-
-
-long randomseed = 1L;
-
-long random () {
-// note that this takes a seed and returns a big number,
-// whereas I think XLisp's RANDOM is defined differently
- long k1;
-
- /* algorithm taken from Dr. Dobbs Journal, November 1985, page 91 */
- k1 = randomseed / 127773L;
- if ((randomseed = 16807L * (randomseed - k1 * 127773L) - k1 * 2836L) < 0L)
- randomseed += 2147483647L;
-
- /* return a random number between 0 and MAXFIX */
- return randomseed;
-}
-
-/* Added by Ning Hu May.2001
-xsetdir - set current directory of the process */
-LVAL xsetdir() {
- TCHAR ssCurDir[MAX_PATH], szCurDir[MAX_PATH];
-
- strcpy(ssCurDir, getstring(xlgastring()));
- xllastarg();
- if (SetCurrentDirectory(ssCurDir)) {
- if (GetCurrentDirectory(
- sizeof(szCurDir)/sizeof(TCHAR), szCurDir)) {
- /* create the result string */
- stdputstr("Current Directory:");
- stdputstr(szCurDir);
- stdputstr("\n");
- }
- else stdputstr("Directory Setting Error\n");
- }
- else stdputstr("Directory Setting Error\n");
-
- /* return the new string */
- return (NIL);
-}
-//Updated End
-
diff --git a/lib-src/libnyquist/xlisp/extern.c b/lib-src/libnyquist/xlisp/extern.c
deleted file mode 100644
index 6a4295f..0000000
--- a/lib-src/libnyquist/xlisp/extern.c
+++ /dev/null
@@ -1,129 +0,0 @@
-/* extern.c - external type support for xlisp 2.0 */
-
-/* Description of external types:
-
- A new node type EXTERN has been created to allow extensions to the
-xlisp type system. If a node is of type EXTERN then it contains two fields:
-(1) a pointer to a type descriptor, and (2) a value which is normally a pointer
-to an instance of the data type.
- The type descriptor has 6 fields:
-type_name: a string name for the type
-type_symbol: a pointer to a symbol whose print name is type_name
-free_meth: routine to call when the node is freed
-print_meth: routine to call to print the node
-save_meth: routine to save the value to a file
-restore_meth: routine to restore the value from a file
- The routine create_desc() is used to allocate and initialize a type
-descriptor. There should be only one type descriptor for each unique type.
-Typically, the module that manages a type will create the type descriptor
-at initialization time.
- The routine cvextern() is used to combine a type descriptor and a
-value to create an EXTERN node that can be used by xlisp. This routine is
-called whenever a new value is allocated and returned to xlisp.
- The routine exttype() returns the type symbol for an EXTERN type.
- The routine exttypep() tests for a type match.
- If EXTERN objects are dynamically allocated and freed, then there
-should only be one EXTERN node whose value field (xe_inst) points to the object.
-If there is more than one node (normally created only by cvextern), then one
-of the following should hold:
-1. the object is not dynamically freed.
-2. the object is reference counted and freed when the last EXTERN node is gc'd.
-3. the object will be freed when the first node pointing to it is gc'd, resulting
-in a dangling pointer bug.
- The save and restore capability of xlisp version 2.0 causes some
-difficulties in that symbols get relocated whenever a workspace is loaded.
-However, type descriptors must point to symbols and type descriptors must be
-present in order to load external types from a workspace. My solution to this
-problem is to store a string name for each type and also to cache a pointer
-to the corresponding symbol. The cache is invalidated whenever a workspace is
-loaded (causing symbols to be reallocated). To make it possible to save and
-restore references to type descriptors, all type descriptors are kept in
-static storage. Internally, they are referenced by pointers, but when saved,
-an integer index is used. Because of the integer index, types must always be
-allocated in the same order. This is taken care of in localinit().
-
-*/
-
-#include "xlisp.h"
-#include "extern.h"
-
-int extindex = 0;
-
-struct xtype_desc_struct desc_table[NTYPES];
-
-
-/* create_desc - create a new external type */
-/**/
-xtype_desc create_desc(
- char *type_name, /* the type string name */
- void (*fm)(), /* method to free instances of the type */
- void (*pm)(), /* method to print instances of the type */
- void (*sm)(), /* method to save instances of the type */
- unsigned char * (*rm)(), /* method to restore instances of the type */
- void (*mm)()) /* method to mark instances of the type for GC */
-{
- xtype_desc td; /* the new type descriptor */
- if (extindex >= NTYPES) xlfail("insufficient type desc space");
- td = &desc_table[extindex++];
- td->type_name = type_name;
- td->type_symbol = NULL;
- td->free_meth = fm;
- td->print_meth = pm;
- td->save_meth = sm;
- td->restore_meth = rm;
- td->mark_meth = mm;
- return td;
-}
-
-
-/* cvextern - create an instance of some type */
-/**/
-LVAL cvextern(typeptr, instptr)
- xtype_desc typeptr; /* pointer to type descriptor */
- unsigned char *instptr; /* pointer to the data */
-{
- LVAL xnode; /* the resulting lisp node */
- xnode = newnode(EXTERN);
- setdesc(xnode, typeptr);
- setinst(xnode, instptr);
- return xnode;
-}
-
-
-/* exttype -- get the type of an EXTERN */
-/**/
-LVAL exttype(x)
- LVAL x;
-{
- if (!(getdesc(x)->type_symbol)) {
- getdesc(x)->type_symbol = xlenter(getdesc(x)->type_name);
- }
- return getdesc(x)->type_symbol;
-}
-
-
-/* exttypep -- test for type match */
-/*
- * x is a node, type_sym is a symbol
- */
-int exttypep(LVAL x, LVAL type_sym)
-{
- if ((x) && ntype(x) == EXTERN) {
- if (!(getdesc(x)->type_symbol)) {
- getdesc(x)->type_symbol = xlenter(getdesc(x)->type_name);
- }
- return (getdesc(x)->type_symbol == type_sym);
- }
- return FALSE;
-}
-
-
-/* inval_caches -- set type_symbol fields to NULL */
-/**/
-void inval_caches()
-{
- int i;
- for (i = 0; i < extindex; i++) {
- desc_table[i].type_symbol = NULL;
- }
-}
diff --git a/lib-src/libnyquist/xlisp/extern.h b/lib-src/libnyquist/xlisp/extern.h
deleted file mode 100644
index 7021190..0000000
--- a/lib-src/libnyquist/xlisp/extern.h
+++ /dev/null
@@ -1,6 +0,0 @@
-
-xtype_desc create_desc(char *type_name, void (*fm)(), void (*pm)(),
- void (*sm)(), unsigned char * (*rm)(), void (*mm)());
-int exttypep(LVAL x, LVAL type_sym);
-
-
diff --git a/lib-src/libnyquist/xlisp/osdefs.h b/lib-src/libnyquist/xlisp/osdefs.h
deleted file mode 100644
index 4b5fd42..0000000
--- a/lib-src/libnyquist/xlisp/osdefs.h
+++ /dev/null
@@ -1,4 +0,0 @@
-/* osdefs.h - system specific function declarations */
-
-extern LVAL xsystem(void),xgetkey(void);
-
diff --git a/lib-src/libnyquist/xlisp/osptrs.h b/lib-src/libnyquist/xlisp/osptrs.h
deleted file mode 100644
index 5e5c70d..0000000
--- a/lib-src/libnyquist/xlisp/osptrs.h
+++ /dev/null
@@ -1,6 +0,0 @@
-/* osptrs.h - system specific function pointers */
-
-{ "SYSTEM", S, xsystem },
-{ "GET-KEY", S, xgetkey },
-
-
diff --git a/lib-src/libnyquist/xlisp/path.c b/lib-src/libnyquist/xlisp/path.c
deleted file mode 100644
index 08dd1fb..0000000
--- a/lib-src/libnyquist/xlisp/path.c
+++ /dev/null
@@ -1,195 +0,0 @@
-/*
- * New xlisp_path code by Dominic Mazzoni
- *
- * There is now a function provided to set the xlisp_path.
- * This is particularly useful for external programs
- * (e.g. Audacity, or a Nyquist GUI) that have their own
- * mechanism of setting/finding the path. If xlisp_path
- * is NULL, the old platform-specific methods are still
- * used.
- */
-
-#include <string.h>
-
-#include "switches.h"
-#include "xlisp.h"
-
-static char *g_xlisp_path = NULL;
-
-void set_xlisp_path(const char *p)
-{
- if (g_xlisp_path) {
- free(g_xlisp_path);
- g_xlisp_path = NULL;
- }
-
- if (p) {
- g_xlisp_path = malloc(strlen(p)+1);
- strcpy(g_xlisp_path, p);
- }
-}
-
-#ifdef UNIX
-const char *unix_return_xlisp_path()
-{
- char *paths = getenv("XLISPPATH");
- if (!paths || !*paths) {
- char msg[512];
- sprintf(msg, "\n%s\n%s\n%s\n%s\n%s\n",
- "Warning: XLISP failed to find XLISPPATH in the environment.",
- "If you are using Nyquist, probably you should cd to the",
- "nyquist directory and type:",
- " setenv XLISPPATH `pwd`/runtime:`pwd`/lib",
- "or set XLISPPATH in your .login or .cshrc file.");
- errputstr(msg);
- }
- return paths;
-}
-#endif
-
-#ifdef WINDOWS
-#include "winfun.h"
-
-const char *windows_return_xlisp_path()
-{
- #define paths_max 1024
- static char paths[paths_max];
- get_xlisp_path(paths, paths_max);
- /* make sure we got paths, and the list is not empty */
- if (!paths[0]) {
- sprintf(paths, "\n%s\n%s\n%s\n",
- "Warning: XLISP failed to find XLISPPATH in the Registry.",
- "You should follow the installation instructions. Enter an",
- "empty string if you really want no search path.");
- errputstr(paths);
- }
-
- return paths;
-}
-#endif
-
-#ifdef MACINTOSH
-const char *mac_return_xlisp_path()
-{
- #define paths_max 1024
- static char paths[paths_max];
- int prefs_found = false;
- get_xlisp_path(paths, paths_max, &prefs_found);
- if (!paths[0]) {
- if (prefs_found) {
- sprintf(paths, "\n%s\n%s\n%s\n",
- "Warning: XLISP failed to find XLISPPATH in XLisp Preferences.",
- "You should probably delete XLisp Preferences and let XLisp",
- "create a new one for you.");
- }
- else {
- sprintf(paths, "\n%s\n%s\n%s\n%s\n%s\n",
- "Warning: XLISP failed to find XLisp Preferences.",
- "You should manually locate and load the file runtime:init.lsp",
- "Nyquist will create an XLisp Preferences file to automatically",
- "find the file next time. You may edit XLisp Preferences to add",
- "additional search paths, using a comma as separator.");
- }
- errputstr(paths);
- }
-
- return paths;
-}
-#endif
-
-const char *return_xlisp_path()
-{
- if (g_xlisp_path)
- return g_xlisp_path;
-
-#ifdef WINDOWS
- return windows_return_xlisp_path();
-#endif
-#ifdef MACINTOSH
- return mac_return_xlisp_path();
-#endif
-#ifdef UNIX
- return unix_return_xlisp_path();
-#endif
-}
-
-#ifdef UNIX
-static const char pathchar = '/';
-static const char sepchar = ':';
-#endif
-
-#ifdef WINDOWS
-static const char pathchar = '\\';
-static const char sepchar = ',';
-#endif
-
-#ifdef MACINTOSH
-static const char pathchar = ':';
-static const char sepchar = ',';
-#endif
-
-char *g_xlptemp = NULL;
-
-const char *find_in_xlisp_path(const char *fname)
-{
- const char *paths = return_xlisp_path();
- if (!paths)
- return NULL;
-
- while (paths && *paths) {
- FILE *fp;
- const char *start;
- int len;
-
- /* skip over separator */
- while (*paths == sepchar) paths++;
-
- /* find next directory */
- start = paths;
- while (*paths && (*paths != sepchar))
- paths++;
-
- if (g_xlptemp) {
- free(g_xlptemp);
- g_xlptemp = NULL;
- }
-
- len = paths - start;
- g_xlptemp = malloc(len + strlen(fname) + 10);
- memcpy(g_xlptemp, start, len);
-
- if (len == 0)
- continue;
-
- /* add "/" if needed */
- if (g_xlptemp[len-1] != pathchar)
- g_xlptemp[len++] = pathchar;
-
- /* append the file name */
- memcpy(&g_xlptemp[len], fname, strlen(fname));
- len += strlen(fname);
- g_xlptemp[len] = 0;
-
- /* append the .lsp extension */
- if (needsextension(g_xlptemp))
- strcat(g_xlptemp, ".lsp");
-
- fp = osaopen(g_xlptemp, "r");
- if (fp) {
- fclose(fp);
-
- #ifdef MACINTOSH
- /* We found the file ok, call setup_preferences to create
- * XLisp Preferences file (this only happens if previous
- * attempt to find the file failed
- */
- setup_preferences(g_xlptemp);
- #endif
-
- return g_xlptemp;
- }
- }
-
- /* It wasn't found */
- return NULL;
-}
diff --git a/lib-src/libnyquist/xlisp/xlbfun.c b/lib-src/libnyquist/xlisp/xlbfun.c
deleted file mode 100644
index 1b5a397..0000000
--- a/lib-src/libnyquist/xlisp/xlbfun.c
+++ /dev/null
@@ -1,669 +0,0 @@
-/* xlbfun.c - xlisp basic built-in functions */
-/* Copyright (c) 1985, by David Michael Betz
- All Rights Reserved
- Permission is granted for unrestricted non-commercial use */
-
-#include "xlisp.h"
-#include "string.h"
-
-/* forward declarations */
-FORWARD LOCAL LVAL makesymbol(int iflag);
-
-/* xeval - the built-in function 'eval' */
-LVAL xeval(void)
-{
- LVAL expr;
-
- /* get the expression to evaluate */
- expr = xlgetarg();
- xllastarg();
-
- /* evaluate the expression */
- return (xleval(expr));
-}
-
-/* xapply - the built-in function 'apply' */
-LVAL xapply(void)
-{
- LVAL fun,arglist;
-
- /* get the function and argument list */
- fun = xlgetarg();
- arglist = xlgalist();
- xllastarg();
-
- /* apply the function to the arguments */
- return (xlapply(pushargs(fun,arglist)));
-}
-
-/* xfuncall - the built-in function 'funcall' */
-LVAL xfuncall(void)
-{
- LVAL *newfp;
- int argc;
-
- /* build a new argument stack frame */
- newfp = xlsp;
- pusharg(cvfixnum((FIXTYPE)(newfp - xlfp)));
- pusharg(xlgetarg());
- pusharg(NIL); /* will be argc */
-
- /* push each argument */
- for (argc = 0; moreargs(); ++argc)
- pusharg(nextarg());
-
- /* establish the new stack frame */
- newfp[2] = cvfixnum((FIXTYPE)argc);
- xlfp = newfp;
-
- /* apply the function to the arguments */
- return (xlapply(argc));
-}
-
-/* xmacroexpand - expand a macro call repeatedly */
-LVAL xmacroexpand(void)
-{
- LVAL form;
- form = xlgetarg();
- xllastarg();
- return (xlexpandmacros(form));
-}
-
-/* x1macroexpand - expand a macro call */
-LVAL x1macroexpand(void)
-{
- LVAL form,fun,args;
-
- /* protect some pointers */
- xlstkcheck(2);
- xlsave(fun);
- xlsave(args);
-
- /* get the form */
- form = xlgetarg();
- xllastarg();
-
- /* expand until the form isn't a macro call */
- if (consp(form)) {
- fun = car(form); /* get the macro name */
- args = cdr(form); /* get the arguments */
- if (symbolp(fun) && fboundp(fun)) {
- fun = xlgetfunction(fun); /* get the expansion function */
- macroexpand(fun,args,&form);
- }
- }
-
- /* restore the stack and return the expansion */
- xlpopn(2);
- return (form);
-}
-
-/* xatom - is this an atom? */
-LVAL xatom(void)
-{
- LVAL arg;
- arg = xlgetarg();
- xllastarg();
- return (atomp(arg) ? s_true : NIL);
-}
-
-/* xsymbolp - is this an symbol? */
-LVAL xsymbolp(void)
-{
- LVAL arg;
- arg = xlgetarg();
- xllastarg();
- return (arg == NIL || symbolp(arg) ? s_true : NIL);
-}
-
-/* xnumberp - is this a number? */
-LVAL xnumberp(void)
-{
- LVAL arg;
- arg = xlgetarg();
- xllastarg();
- return (fixp(arg) || floatp(arg) ? s_true : NIL);
-}
-
-/* xintegerp - is this an integer? */
-LVAL xintegerp(void)
-{
- LVAL arg;
- arg = xlgetarg();
- xllastarg();
- return (fixp(arg) ? s_true : NIL);
-}
-
-/* xfloatp - is this a float? */
-LVAL xfloatp(void)
-{
- LVAL arg;
- arg = xlgetarg();
- xllastarg();
- return (floatp(arg) ? s_true : NIL);
-}
-
-/* xcharp - is this a character? */
-LVAL xcharp(void)
-{
- LVAL arg;
- arg = xlgetarg();
- xllastarg();
- return (charp(arg) ? s_true : NIL);
-}
-
-/* xstringp - is this a string? */
-LVAL xstringp(void)
-{
- LVAL arg;
- arg = xlgetarg();
- xllastarg();
- return (stringp(arg) ? s_true : NIL);
-}
-
-/* xarrayp - is this an array? */
-LVAL xarrayp(void)
-{
- LVAL arg;
- arg = xlgetarg();
- xllastarg();
- return (vectorp(arg) ? s_true : NIL);
-}
-
-/* xstreamp - is this a stream? */
-LVAL xstreamp(void)
-{
- LVAL arg;
- arg = xlgetarg();
- xllastarg();
- return (streamp(arg) || ustreamp(arg) ? s_true : NIL);
-}
-
-/* xobjectp - is this an object? */
-LVAL xobjectp(void)
-{
- LVAL arg;
- arg = xlgetarg();
- xllastarg();
- return (objectp(arg) ? s_true : NIL);
-}
-
-/* xboundp - is this a value bound to this symbol? */
-LVAL xboundp(void)
-{
- LVAL sym;
- sym = xlgasymbol();
- xllastarg();
- return (boundp(sym) ? s_true : NIL);
-}
-
-/* xfboundp - is this a functional value bound to this symbol? */
-LVAL xfboundp(void)
-{
- LVAL sym;
- sym = xlgasymbol();
- xllastarg();
- return (fboundp(sym) ? s_true : NIL);
-}
-
-/* xnull - is this null? */
-LVAL xnull(void)
-{
- LVAL arg;
- arg = xlgetarg();
- xllastarg();
- return (null(arg) ? s_true : NIL);
-}
-
-/* xlistp - is this a list? */
-LVAL xlistp(void)
-{
- LVAL arg;
- arg = xlgetarg();
- xllastarg();
- return (listp(arg) ? s_true : NIL);
-}
-
-/* xendp - is this the end of a list? */
-LVAL xendp(void)
-{
- LVAL arg;
- arg = xlgalist();
- xllastarg();
- return (null(arg) ? s_true : NIL);
-}
-
-/* xconsp - is this a cons? */
-LVAL xconsp(void)
-{
- LVAL arg;
- arg = xlgetarg();
- xllastarg();
- return (consp(arg) ? s_true : NIL);
-}
-
-/* xeq - are these equal? */
-LVAL xeq(void)
-{
- LVAL arg1,arg2;
-
- /* get the two arguments */
- arg1 = xlgetarg();
- arg2 = xlgetarg();
- xllastarg();
-
- /* compare the arguments */
- return (arg1 == arg2 ? s_true : NIL);
-}
-
-/* xeql - are these equal? */
-LVAL xeql(void)
-{
- LVAL arg1,arg2;
-
- /* get the two arguments */
- arg1 = xlgetarg();
- arg2 = xlgetarg();
- xllastarg();
-
- /* compare the arguments */
- return (eql(arg1,arg2) ? s_true : NIL);
-}
-
-/* xequal - are these equal? (recursive) */
-LVAL xequal(void)
-{
- LVAL arg1,arg2;
-
- /* get the two arguments */
- arg1 = xlgetarg();
- arg2 = xlgetarg();
- xllastarg();
-
- /* compare the arguments */
- return (lval_equal(arg1,arg2) ? s_true : NIL);
-}
-
-/* xset - built-in function set */
-LVAL xset(void)
-{
- LVAL sym,val;
-
- /* get the symbol and new value */
- sym = xlgasymbol();
- val = xlgetarg();
- xllastarg();
-
- /* assign the symbol the value of argument 2 and the return value */
- setvalue(sym,val);
-
- /* return the result value */
- return (val);
-}
-
-/* xgensym - generate a symbol */
-LVAL xgensym(void)
-{
- char sym[STRMAX+11]; /* enough space for prefix and number */
- LVAL x;
-
- /* get the prefix or number */
- if (moreargs()) {
- x = xlgetarg();
- switch (ntype(x)) {
- case SYMBOL:
- x = getpname(x);
- case STRING:
- strncpy(gsprefix, (char *) getstring(x),STRMAX);
- gsprefix[STRMAX] = '\0';
- break;
- case FIXNUM:
- gsnumber = getfixnum(x);
- break;
- default:
- xlerror("bad argument type",x);
- }
- }
- xllastarg();
-
- /* create the pname of the new symbol */
- sprintf(sym,"%s%d",gsprefix,gsnumber++);
-
- /* make a symbol with this print name */
- return (xlmakesym(sym));
-}
-
-/* xmakesymbol - make a new uninterned symbol */
-LVAL xmakesymbol(void)
-{
- return (makesymbol(FALSE));
-}
-
-/* xintern - make a new interned symbol */
-LVAL xintern(void)
-{
- return (makesymbol(TRUE));
-}
-
-/* makesymbol - make a new symbol */
-LOCAL LVAL makesymbol(int iflag)
-{
- LVAL pname;
-
- /* get the print name of the symbol to intern */
- pname = xlgastring();
- xllastarg();
-
- /* make the symbol */
- return (iflag ? xlenter((char *) getstring(pname))
- : xlmakesym((char *) getstring(pname)));
-}
-
-/* xsymname - get the print name of a symbol */
-LVAL xsymname(void)
-{
- LVAL sym;
-
- /* get the symbol */
- sym = xlgasymbol();
- xllastarg();
-
- /* return the print name */
- return (getpname(sym));
-}
-
-/* xsymvalue - get the value of a symbol */
-LVAL xsymvalue(void)
-{
- LVAL sym,val;
-
- /* get the symbol */
- sym = xlgasymbol();
- xllastarg();
-
- /* get the global value */
- while ((val = getvalue(sym)) == s_unbound)
- xlunbound(sym);
-
- /* return its value */
- return (val);
-}
-
-/* xsymfunction - get the functional value of a symbol */
-LVAL xsymfunction(void)
-{
- LVAL sym,val;
-
- /* get the symbol */
- sym = xlgasymbol();
- xllastarg();
-
- /* get the global value */
- while ((val = getfunction(sym)) == s_unbound)
- xlfunbound(sym);
-
- /* return its value */
- return (val);
-}
-
-/* xsymplist - get the property list of a symbol */
-LVAL xsymplist(void)
-{
- LVAL sym;
-
- /* get the symbol */
- sym = xlgasymbol();
- xllastarg();
-
- /* return the property list */
- return (getplist(sym));
-}
-
-/* xget - get the value of a property */
-LVAL xget(void)
-{
- LVAL sym,prp;
-
- /* get the symbol and property */
- sym = xlgasymbol();
- prp = xlgasymbol();
- xllastarg();
-
- /* retrieve the property value */
- return (xlgetprop(sym,prp));
-}
-
-/* xputprop - set the value of a property */
-LVAL xputprop(void)
-{
- LVAL sym,val,prp;
-
- /* get the symbol and property */
- sym = xlgasymbol();
- val = xlgetarg();
- prp = xlgasymbol();
- xllastarg();
-
- /* set the property value */
- xlputprop(sym,val,prp);
-
- /* return the value */
- return (val);
-}
-
-/* xremprop - remove a property value from a property list */
-LVAL xremprop(void)
-{
- LVAL sym,prp;
-
- /* get the symbol and property */
- sym = xlgasymbol();
- prp = xlgasymbol();
- xllastarg();
-
- /* remove the property */
- xlremprop(sym,prp);
-
- /* return nil */
- return (NIL);
-}
-
-/* xhash - compute the hash value of a string or symbol */
-LVAL xhash(void)
-{
- unsigned char *str;
- LVAL len,val;
- int n;
-
- /* get the string and the table length */
- val = xlgetarg();
- len = xlgafixnum(); n = (int)getfixnum(len);
- xllastarg();
-
- /* get the string */
- if (symbolp(val))
- str = getstring(getpname(val));
- else if (stringp(val))
- str = getstring(val);
- else {
- xlerror("bad argument type",val);
- str = NULL;
- }
-
- /* return the hash index */
- return (cvfixnum((FIXTYPE)hash((char *) str, n)));
-}
-
-/* xaref - array reference function */
-LVAL xaref(void)
-{
- LVAL array,index;
- int i;
-
- /* get the array and the index */
- array = xlgavector();
- index = xlgafixnum(); i = (int)getfixnum(index);
- xllastarg();
-
- /* range check the index */
- if (i < 0 || i >= getsize(array))
- xlerror("array index out of bounds",index);
-
- /* return the array element */
- return (getelement(array,i));
-}
-
-/* xmkarray - make a new array */
-LVAL xmkarray(void)
-{
- LVAL size;
- int n;
-
- /* get the size of the array */
- size = xlgafixnum() ; n = (int)getfixnum(size);
- xllastarg();
-
- /* create the array */
- return (newvector(n));
-}
-
-/* xvector - make a vector */
-LVAL xvector(void)
-{
- LVAL val;
- int i;
-
- /* make the vector */
- val = newvector(xlargc);
-
- /* store each argument */
- for (i = 0; moreargs(); ++i)
- setelement(val,i,nextarg());
- xllastarg();
-
- /* return the vector */
- return (val);
-}
-
-/* allow xerror, xcleanup, xtoplevel, and xcontinue to return nothing */
-/* #pragma warning(disable: 4035)*/
-
-/* xerror - special form 'error' */
-LVAL xerror(void)
-{
- LVAL emsg,arg;
-
- /* get the error message and the argument */
- emsg = xlgastring();
- arg = (moreargs() ? xlgetarg() : s_unbound);
- xllastarg();
-
- /* signal the error */
- xlerror((char *) getstring(emsg),arg);
- return NIL; /* won't ever happen */
-}
-
-/* xcerror - special form 'cerror' */
-LVAL xcerror(void)
-{
- LVAL cmsg,emsg,arg;
-
- /* get the correction message, the error message, and the argument */
- cmsg = xlgastring();
- emsg = xlgastring();
- arg = (moreargs() ? xlgetarg() : s_unbound);
- xllastarg();
-
- /* signal the error */
- xlcerror((char *) getstring(cmsg), (char *) getstring(emsg),arg);
-
- /* return nil */
- return (NIL);
-}
-
-/* xbreak - special form 'break' */
-LVAL xbreak(void)
-{
- LVAL emsg,arg;
-
- /* get the error message */
- emsg = (moreargs() ? xlgastring() : NIL);
- arg = (moreargs() ? xlgetarg() : s_unbound);
- xllastarg();
-
- /* enter the break loop */
- xlbreak((emsg ? (char *) getstring(emsg) : "**BREAK**"),arg);
-
- /* return nil */
- return (NIL);
-}
-
-/* xcleanup - special form 'clean-up' */
-LVAL xcleanup(void)
-{
- xllastarg();
- xlcleanup();
-}
-
-/* xtoplevel - special form 'top-level' */
-LVAL xtoplevel(void)
-{
- xllastarg();
- xltoplevel();
-}
-
-/* xcontinue - special form 'continue' */
-LVAL xcontinue(void)
-{
- xllastarg();
- xlcontinue();
-}
-
-/* xevalhook - eval hook function */
-LVAL xevalhook(void)
-{
- LVAL expr,newehook,newahook,newenv,oldenv,oldfenv,olddenv,val;
-
- /* protect some pointers */
- xlstkcheck(3);
- xlsave(oldenv);
- xlsave(oldfenv);
- xlsave(newenv);
-
- /* get the expression, the new hook functions and the environment */
- expr = xlgetarg();
- newehook = xlgetarg();
- newahook = xlgetarg();
- newenv = (moreargs() ? xlgalist() : NIL);
- xllastarg();
-
- /* bind *evalhook* and *applyhook* to the hook functions */
- olddenv = xldenv;
- xldbind(s_evalhook,newehook);
- xldbind(s_applyhook,newahook);
-
- /* establish the environment for the hook function */
- if (newenv) {
- oldenv = xlenv;
- oldfenv = xlfenv;
- xlenv = car(newenv);
- xlfenv = cdr(newenv);
- }
-
- /* evaluate the expression (bypassing *evalhook*) */
- val = xlxeval(expr);
-
- /* restore the old environment */
- xlunbind(olddenv);
- if (newenv) {
- xlenv = oldenv;
- xlfenv = oldfenv;
- }
-
- /* restore the stack */
- xlpopn(3);
-
- /* return the result */
- return (val);
-}
-
diff --git a/lib-src/libnyquist/xlisp/xlcont.c b/lib-src/libnyquist/xlisp/xlcont.c
deleted file mode 100644
index 6baa733..0000000
--- a/lib-src/libnyquist/xlisp/xlcont.c
+++ /dev/null
@@ -1,1426 +0,0 @@
-/* xlcont - xlisp special forms */
-/* Copyright (c) 1985, by David Michael Betz
- All Rights Reserved
- Permission is granted for unrestricted non-commercial use */
-
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm eliminate some compiler warnings
- */
-
-
-#include "xlisp.h"
-
-/* external variables */
-extern LVAL xlvalue;
-extern LVAL s_setf,s_car,s_cdr,s_nth,s_aref,s_get;
-extern LVAL s_svalue,s_sfunction,s_splist;
-extern LVAL s_lambda,s_macro;
-
-/* forward declarations */
-FORWARD LOCAL LVAL bquote1(LVAL expr);
-FORWARD LOCAL void placeform(LVAL place, LVAL value);
-FORWARD LOCAL LVAL let(int pflag);
-FORWARD LOCAL LVAL flet(LVAL type, int letflag);
-FORWARD LOCAL LVAL prog(int pflag);
-FORWARD LOCAL LVAL progx(int n);
-FORWARD LOCAL LVAL doloop(int pflag);
-FORWARD LOCAL LVAL evarg(LVAL *pargs);
-FORWARD LOCAL LVAL match(int type, LVAL *pargs);
-FORWARD LOCAL LVAL evmatch(int type, LVAL *pargs);
-FORWARD LOCAL void toofew(LVAL args);
-FORWARD LOCAL void toomany(LVAL args);
-FORWARD LOCAL void setffunction(LVAL fun, LVAL place, LVAL value);
-FORWARD LOCAL int keypresent(LVAL key, LVAL list);
-FORWARD LOCAL void dobindings(LVAL list, LVAL env);
-FORWARD LOCAL void tagbody(void);
-FORWARD LOCAL void doupdates(LVAL list, int pflag);
-
-
-/* dummy node type for a list */
-#define LIST -1
-
-/* xquote - special form 'quote' */
-LVAL xquote(void)
-{
- LVAL val;
- val = xlgetarg();
- xllastarg();
- return (val);
-}
-
-/* xfunction - special form 'function' */
-LVAL xfunction(void)
-{
- LVAL val;
-
- /* get the argument */
- val = xlgetarg();
- xllastarg();
-
- /* create a closure for lambda expressions */
- if (consp(val) && car(val) == s_lambda && consp(cdr(val)))
- val = xlclose(NIL,s_lambda,car(cdr(val)),cdr(cdr(val)),xlenv,xlfenv);
-
- /* otherwise, get the value of a symbol */
- else if (symbolp(val))
- val = xlgetfunction(val);
-
- /* otherwise, its an error */
- else
- xlerror("not a function",val);
-
- /* return the function */
- return (val);
-}
-
-/* xbquote - back quote special form */
-LVAL xbquote(void)
-{
- LVAL expr;
-
- /* get the expression */
- expr = xlgetarg();
- xllastarg();
-
- /* fill in the template */
- return (bquote1(expr));
-}
-
-/* bquote1 - back quote helper function */
-LOCAL LVAL bquote1(LVAL expr)
-{
- LVAL val,list,last,new;
-
- /* handle atoms */
- if (atomp(expr))
- val = expr;
-
- /* handle (comma <expr>) */
- else if (car(expr) == s_comma) {
- if (atomp(cdr(expr)))
- xlfail("bad comma expression");
- val = xleval(car(cdr(expr)));
- }
-
- /* handle ((comma-at <expr>) ... ) */
- else if (consp(car(expr)) && car(car(expr)) == s_comat) {
- xlstkcheck(2);
- xlsave(list);
- xlsave(val);
- if (atomp(cdr(car(expr))))
- xlfail("bad comma-at expression");
- list = xleval(car(cdr(car(expr))));
- for (last = NIL; consp(list); list = cdr(list)) {
- new = consa(car(list));
- if (last)
- rplacd(last,new);
- else
- val = new;
- last = new;
- }
- if (last)
- rplacd(last,bquote1(cdr(expr)));
- else
- val = bquote1(cdr(expr));
- xlpopn(2);
- }
-
- /* handle any other list */
- else {
- xlsave1(val);
- val = consa(NIL);
- rplaca(val,bquote1(car(expr)));
- rplacd(val,bquote1(cdr(expr)));
- xlpop();
- }
-
- /* return the result */
- return (val);
-}
-
-/* xlambda - special form 'lambda' */
-LVAL xlambda(void)
-{
- LVAL fargs,arglist,val;
-
- /* get the formal argument list and function body */
- xlsave1(arglist);
- fargs = xlgalist();
- arglist = makearglist(xlargc,xlargv);
-
- /* create a new function definition */
- val = xlclose(NIL,s_lambda,fargs,arglist,xlenv,xlfenv);
-
- /* restore the stack and return the closure */
- xlpop();
- return (val);
-}
-
-/* xgetlambda - get the lambda expression associated with a closure */
-LVAL xgetlambda(void)
-{
- LVAL closure;
- closure = xlgaclosure();
- return (cons(gettype(closure),
- cons(getlambda(closure),getbody(closure))));
-}
-
-/* xsetq - special form 'setq' */
-LVAL xsetq(void)
-{
- LVAL sym,val;
-
- /* handle each pair of arguments */
- for (val = NIL; moreargs(); ) {
- sym = xlgasymbol();
- val = xleval(nextarg());
- xlsetvalue(sym,val);
- }
-
- /* return the result value */
- return (val);
-}
-
-/* xpsetq - special form 'psetq' */
-LVAL xpsetq(void)
-{
- LVAL plist,sym,val;
-
- /* protect some pointers */
- xlsave1(plist);
-
- /* handle each pair of arguments */
- for (val = NIL; moreargs(); ) {
- sym = xlgasymbol();
- val = xleval(nextarg());
- plist = cons(cons(sym,val),plist);
- }
-
- /* do parallel sets */
- for (; plist; plist = cdr(plist))
- xlsetvalue(car(car(plist)),cdr(car(plist)));
-
- /* restore the stack */
- xlpop();
-
- /* return the result value */
- return (val);
-}
-
-/* xsetf - special form 'setf' */
-LVAL xsetf(void)
-{
- LVAL place,value;
-
- /* protect some pointers */
- xlsave1(value);
-
- /* handle each pair of arguments */
- while (moreargs()) {
-
- /* get place and value */
- place = xlgetarg();
- value = xleval(nextarg());
-
- /* expand macros in the place form */
- if (consp(place))
- place = xlexpandmacros(place);
-
- /* check the place form */
- if (symbolp(place))
- xlsetvalue(place,value);
- else if (consp(place))
- placeform(place,value);
- else
- xlfail("bad place form");
- }
-
- /* restore the stack */
- xlpop();
-
- /* return the value */
- return (value);
-}
-
-/* placeform - handle a place form other than a symbol */
-LOCAL void placeform(LVAL place, LVAL value)
-{
- LVAL fun,arg1,arg2;
- int i;
-
- /* check the function name */
- if ((fun = match(SYMBOL,&place)) == s_get) {
- xlstkcheck(2);
- xlsave(arg1);
- xlsave(arg2);
- arg1 = evmatch(SYMBOL,&place);
- arg2 = evmatch(SYMBOL,&place);
- if (place) toomany(place);
- xlputprop(arg1,value,arg2);
- xlpopn(2);
- }
- else if (fun == s_svalue) {
- arg1 = evmatch(SYMBOL,&place);
- if (place) toomany(place);
- setvalue(arg1,value);
- }
- else if (fun == s_sfunction) {
- arg1 = evmatch(SYMBOL,&place);
- if (place) toomany(place);
- setfunction(arg1,value);
- }
- else if (fun == s_splist) {
- arg1 = evmatch(SYMBOL,&place);
- if (place) toomany(place);
- setplist(arg1,value);
- }
- else if (fun == s_car) {
- arg1 = evmatch(CONS,&place);
- if (place) toomany(place);
- rplaca(arg1,value);
- }
- else if (fun == s_cdr) {
- arg1 = evmatch(CONS,&place);
- if (place) toomany(place);
- rplacd(arg1,value);
- }
- else if (fun == s_nth) {
- xlsave1(arg1);
- arg1 = evmatch(FIXNUM,&place);
- arg2 = evmatch(LIST,&place);
- if (place) toomany(place);
- for (i = (int)getfixnum(arg1); i > 0 && consp(arg2); --i)
- arg2 = cdr(arg2);
- if (consp(arg2))
- rplaca(arg2,value);
- xlpop();
- }
- else if (fun == s_aref) {
- xlsave1(arg1);
- arg1 = evmatch(VECTOR,&place);
- arg2 = evmatch(FIXNUM,&place); i = (int)getfixnum(arg2);
- if (place) toomany(place);
- if (i < 0 || i >= getsize(arg1))
- xlerror("index out of range",arg2);
- setelement(arg1,i,value);
- xlpop();
- }
- else if ((fun = xlgetprop(fun,s_setf)))
- setffunction(fun,place,value);
- else
- xlfail("bad place form");
-}
-
-/* setffunction - call a user defined setf function */
-LOCAL void setffunction(LVAL fun, LVAL place, LVAL value)
-{
- LVAL *newfp;
- int argc;
-
- /* create the new call frame */
- newfp = xlsp;
- pusharg(cvfixnum((FIXTYPE)(newfp - xlfp)));
- pusharg(fun);
- pusharg(NIL);
-
- /* push the values of all of the place expressions and the new value */
- for (argc = 1; consp(place); place = cdr(place), ++argc)
- pusharg(xleval(car(place)));
- pusharg(value);
-
- /* insert the argument count and establish the call frame */
- newfp[2] = cvfixnum((FIXTYPE)argc);
- xlfp = newfp;
-
- /* apply the function */
- xlapply(argc);
-}
-
-/* xdefun - special form 'defun' */
-LVAL xdefun(void)
-{
- LVAL sym,fargs,arglist;
-
- /* get the function symbol and formal argument list */
- xlsave1(arglist);
- sym = xlgasymbol();
- fargs = xlgalist();
- arglist = makearglist(xlargc,xlargv);
-
- /* make the symbol point to a new function definition */
- xlsetfunction(sym,xlclose(sym,s_lambda,fargs,arglist,xlenv,xlfenv));
-
- /* restore the stack and return the function symbol */
- xlpop();
- return (sym);
-}
-
-/* xdefmacro - special form 'defmacro' */
-LVAL xdefmacro(void)
-{
- LVAL sym,fargs,arglist;
-
- /* get the function symbol and formal argument list */
- xlsave1(arglist);
- sym = xlgasymbol();
- fargs = xlgalist();
- arglist = makearglist(xlargc,xlargv);
-
- /* make the symbol point to a new function definition */
- xlsetfunction(sym,xlclose(sym,s_macro,fargs,arglist,NIL,NIL));
-
- /* restore the stack and return the function symbol */
- xlpop();
- return (sym);
-}
-
-/* xcond - special form 'cond' */
-LVAL xcond(void)
-{
- LVAL list,val;
-
- /* find a predicate that is true */
- for (val = NIL; moreargs(); ) {
-
- /* get the next conditional */
- list = nextarg();
-
- /* evaluate the predicate part */
- if (consp(list) && (val = xleval(car(list)))) {
-
- /* evaluate each expression */
- for (list = cdr(list); consp(list); list = cdr(list))
- val = xleval(car(list));
-
- /* exit the loop */
- break;
- }
- }
-
- /* return the value */
- return (val);
-}
-
-/* xwhen - special form 'when' */
-LVAL xwhen(void)
-{
- LVAL val;
-
- /* check the test expression */
- if ((val = xleval(xlgetarg())))
- while (moreargs())
- val = xleval(nextarg());
-
- /* return the value */
- return (val);
-}
-
-/* xunless - special form 'unless' */
-LVAL xunless(void)
-{
- LVAL val=NIL;
-
- /* check the test expression */
- if (xleval(xlgetarg()) == NIL)
- while (moreargs())
- val = xleval(nextarg());
-
- /* return the value */
- return (val);
-}
-
-/* xcase - special form 'case' */
-LVAL xcase(void)
-{
- LVAL key,list,cases,val;
-
- /* protect some pointers */
- xlsave1(key);
-
- /* get the key expression */
- key = xleval(nextarg());
-
- /* find a case that matches */
- for (val = NIL; moreargs(); ) {
-
- /* get the next case clause */
- list = nextarg();
-
- /* make sure this is a valid clause */
- if (consp(list)) {
-
- /* compare the key list against the key */
- if ((cases = car(list)) == s_true ||
- (listp(cases) && keypresent(key,cases)) ||
- eql(key,cases)) {
-
- /* evaluate each expression */
- for (list = cdr(list); consp(list); list = cdr(list))
- val = xleval(car(list));
-
- /* exit the loop */
- break;
- }
- }
- else
- xlerror("bad case clause",list);
- }
-
- /* restore the stack */
- xlpop();
-
- /* return the value */
- return (val);
-}
-
-/* keypresent - check for the presence of a key in a list */
-LOCAL int keypresent(LVAL key, LVAL list)
-{
- for (; consp(list); list = cdr(list))
- if (eql(car(list),key))
- return (TRUE);
- return (FALSE);
-}
-
-/* xand - special form 'and' */
-LVAL xand(void)
-{
- LVAL val;
-
- /* evaluate each argument */
- for (val = s_true; moreargs(); )
- if ((val = xleval(nextarg())) == NIL)
- break;
-
- /* return the result value */
- return (val);
-}
-
-/* xor - special form 'or' */
-LVAL xor(void)
-{
- LVAL val;
-
- /* evaluate each argument */
- for (val = NIL; moreargs(); )
- if ((val = xleval(nextarg())))
- break;
-
- /* return the result value */
- return (val);
-}
-
-/* xif - special form 'if' */
-LVAL xif(void)
-{
- LVAL testexpr,thenexpr,elseexpr;
-
- /* get the test expression, then clause and else clause */
- testexpr = xlgetarg();
- thenexpr = xlgetarg();
- elseexpr = (moreargs() ? xlgetarg() : NIL);
- xllastarg();
-
- /* evaluate the appropriate clause */
- return (xleval(xleval(testexpr) ? thenexpr : elseexpr));
-}
-
-/* xlet - special form 'let' */
-LVAL xlet(void)
-{
- return (let(TRUE));
-}
-
-/* xletstar - special form 'let*' */
-LVAL xletstar(void)
-{
- return (let(FALSE));
-}
-
-/* let - common let routine */
-LOCAL LVAL let(int pflag)
-{
- LVAL newenv,val;
-
- /* protect some pointers */
- xlsave1(newenv);
-
- /* create a new environment frame */
- newenv = xlframe(xlenv);
-
- /* get the list of bindings and bind the symbols */
- if (!pflag) {
- xlenv = newenv;
- }
- dobindings(xlgalist(),newenv);
- if (pflag) {
- xlenv = newenv;
- }
-
- /* execute the code */
- for (val = NIL; moreargs(); )
- val = xleval(nextarg());
-
- /* unbind the arguments */
- xlenv = cdr(xlenv);
-
- /* restore the stack */
- xlpop();
-
- /* return the result */
- return (val);
-}
-
-/* xflet - built-in function 'flet' */
-LVAL xflet(void)
-{
- return (flet(s_lambda,TRUE));
-}
-
-/* xlabels - built-in function 'labels' */
-LVAL xlabels(void)
-{
- return (flet(s_lambda,FALSE));
-}
-
-/* xmacrolet - built-in function 'macrolet' */
-LVAL xmacrolet(void)
-{
- return (flet(s_macro,TRUE));
-}
-
-/* flet - common flet/labels/macrolet routine */
-LOCAL LVAL flet(LVAL type, int letflag)
-{
- LVAL list,bnd,sym,fargs,val;
-
- /* create a new environment frame */
- xlfenv = xlframe(xlfenv);
-
- /* bind each symbol in the list of bindings */
- for (list = xlgalist(); consp(list); list = cdr(list)) {
-
- /* get the next binding */
- bnd = car(list);
-
- /* get the symbol and the function definition */
- sym = match(SYMBOL,&bnd);
- fargs = match(LIST,&bnd);
- val = xlclose(sym,type,fargs,bnd,xlenv,(letflag?cdr(xlfenv):xlfenv));
-
- /* bind the value to the symbol */
- xlfbind(sym,val);
- }
-
- /* execute the code */
- for (val = NIL; moreargs(); )
- val = xleval(nextarg());
-
- /* unbind the arguments */
- xlfenv = cdr(xlfenv);
-
- /* return the result */
- return (val);
-}
-
-/* xprog - special form 'prog' */
-LVAL xprog(void)
-{
- return (prog(TRUE));
-}
-
-/* xprogstar - special form 'prog*' */
-LVAL xprogstar(void)
-{
- return (prog(FALSE));
-}
-
-/* prog - common prog routine */
-LOCAL LVAL prog(int pflag)
-{
- LVAL newenv,val;
- XLCONTEXT cntxt;
-
- /* protect some pointers */
- xlsave1(newenv);
-
- /* create a new environment frame */
- newenv = xlframe(xlenv);
-
- /* establish a new execution context */
- xlbegin(&cntxt,CF_RETURN,NIL);
- if (setjmp(cntxt.c_jmpbuf))
- val = xlvalue;
- else {
-
- /* get the list of bindings and bind the symbols */
- if (!pflag) {
- xlenv = newenv;
- }
- dobindings(xlgalist(),newenv);
- if (pflag) {
- xlenv = newenv;
- }
-
- /* execute the code */
- tagbody();
- val = NIL;
-
- /* unbind the arguments */
- xlenv = cdr(xlenv);
- }
- xlend(&cntxt);
-
- /* restore the stack */
- xlpop();
-
- /* return the result */
- return (val);
-}
-
-/* 4035 is the "no return value" warning message */
-/* xgo, xreturn, xrtnfrom, and xthrow don't return anything */
-/* #pragma warning(disable: 4035) */
-/* xgo - special form 'go' */
-LVAL xgo(void)
-{
- LVAL label;
-
- /* get the target label */
- label = xlgetarg();
- xllastarg();
-
- /* transfer to the label */
- xlgo(label);
- return NIL; /* never happens */
-}
-
-/* xreturn - special form 'return' */
-LVAL xreturn(void)
-{
- LVAL val;
-
- /* get the return value */
- val = (moreargs() ? xleval(nextarg()) : NIL);
- xllastarg();
-
- /* return from the inner most block */
- xlreturn(NIL,val);
- return NIL; /* never happens */
-}
-
-/* xrtnfrom - special form 'return-from' */
-LVAL xrtnfrom(void)
-{
- LVAL name,val;
-
- /* get the return value */
- name = xlgasymbol();
- val = (moreargs() ? xleval(nextarg()) : NIL);
- xllastarg();
-
- /* return from the inner most block */
- xlreturn(name,val);
- return NIL; /* never happens */
-}
-
-/* xprog1 - special form 'prog1' */
-LVAL xprog1(void)
-{
- return (progx(1));
-}
-
-/* xprog2 - special form 'prog2' */
-LVAL xprog2(void)
-{
- return (progx(2));
-}
-
-/* progx - common progx code */
-LOCAL LVAL progx(int n)
-{
- LVAL val;
-
- /* protect some pointers */
- xlsave1(val);
-
- /* evaluate the first n expressions */
- while (moreargs() && --n >= 0)
- val = xleval(nextarg());
-
- /* evaluate each remaining argument */
- while (moreargs())
- xleval(nextarg());
-
- /* restore the stack */
- xlpop();
-
- /* return the last test expression value */
- return (val);
-}
-
-/* xprogn - special form 'progn' */
-LVAL xprogn(void)
-{
- LVAL val;
-
- /* evaluate each expression */
- for (val = NIL; moreargs(); )
- val = xleval(nextarg());
-
- /* return the last test expression value */
- return (val);
-}
-
-/* xprogv - special form 'progv' */
-LVAL xprogv(void)
-{
- LVAL olddenv,vars,vals,val;
-
- /* protect some pointers */
- xlstkcheck(2);
- xlsave(vars);
- xlsave(vals);
-
- /* get the list of variables and the list of values */
- vars = xlgetarg(); vars = xleval(vars);
- vals = xlgetarg(); vals = xleval(vals);
-
- /* bind the values to the variables */
- for (olddenv = xldenv; consp(vars); vars = cdr(vars)) {
- if (!symbolp(car(vars)))
- xlerror("expecting a symbol",car(vars));
- if (consp(vals)) {
- xldbind(car(vars),car(vals));
- vals = cdr(vals);
- }
- else
- xldbind(car(vars),s_unbound);
- }
-
- /* evaluate each expression */
- for (val = NIL; moreargs(); )
- val = xleval(nextarg());
-
- /* restore the previous environment and the stack */
- xlunbind(olddenv);
- xlpopn(2);
-
- /* return the last test expression value */
- return (val);
-}
-
-/* xloop - special form 'loop' */
-LVAL xloop(void)
-{
- LVAL *argv,arg,val;
- XLCONTEXT cntxt;
- int argc;
-
- /* protect some pointers */
- xlsave1(arg);
-
- /* establish a new execution context */
- xlbegin(&cntxt,CF_RETURN,NIL);
- if (setjmp(cntxt.c_jmpbuf))
- val = xlvalue;
- else
- for (argv = xlargv, argc = xlargc; ; xlargv = argv, xlargc = argc)
- while (moreargs()) {
- arg = nextarg();
- if (consp(arg))
- xleval(arg);
- }
- xlend(&cntxt);
-
- /* restore the stack */
- xlpop();
-
- /* return the result */
- return (val);
-}
-
-/* xdo - special form 'do' */
-LVAL xdo(void)
-{
- return (doloop(TRUE));
-}
-
-/* xdostar - special form 'do*' */
-LVAL xdostar(void)
-{
- return (doloop(FALSE));
-}
-
-/* doloop - common do routine */
-LOCAL LVAL doloop(int pflag)
-{
- LVAL newenv,*argv,blist,clist,test,val;
- XLCONTEXT cntxt;
- int argc;
-
- /* protect some pointers */
- xlsave1(newenv);
-
- /* get the list of bindings, the exit test and the result forms */
- blist = xlgalist();
- clist = xlgalist();
- test = (consp(clist) ? car(clist) : NIL);
- argv = xlargv;
- argc = xlargc;
-
- /* create a new environment frame */
- newenv = xlframe(xlenv);
-
- /* establish a new execution context */
- xlbegin(&cntxt,CF_RETURN,NIL);
- if (setjmp(cntxt.c_jmpbuf))
- val = xlvalue;
- else {
-
- /* bind the symbols */
- if (!pflag) {
- xlenv = newenv;
- }
- dobindings(blist,newenv);
- if (pflag) {
- xlenv = newenv;
- }
-
- /* execute the loop as long as the test is false */
- for (val = NIL; xleval(test) == NIL; doupdates(blist,pflag)) {
- xlargv = argv;
- xlargc = argc;
- tagbody();
- }
-
- /* evaluate the result expression */
- if (consp(clist))
- for (clist = cdr(clist); consp(clist); clist = cdr(clist))
- val = xleval(car(clist));
-
- /* unbind the arguments */
- xlenv = cdr(xlenv);
- }
- xlend(&cntxt);
-
- /* restore the stack */
- xlpop();
-
- /* return the result */
- return (val);
-}
-
-/* xdolist - special form 'dolist' */
-LVAL xdolist(void)
-{
- LVAL list,*argv,clist,sym,val;
- XLCONTEXT cntxt;
- int argc;
-
- /* protect some pointers */
- xlsave1(list);
-
- /* get the control list (sym list result-expr) */
- clist = xlgalist();
- sym = match(SYMBOL,&clist);
- list = evmatch(LIST,&clist);
- argv = xlargv;
- argc = xlargc;
-
- /* initialize the local environment */
- xlenv = xlframe(xlenv);
- xlbind(sym,NIL);
-
- /* establish a new execution context */
- xlbegin(&cntxt,CF_RETURN,NIL);
- if (setjmp(cntxt.c_jmpbuf))
- val = xlvalue;
- else {
-
- /* loop through the list */
- for (val = NIL; consp(list); list = cdr(list)) {
-
- /* bind the symbol to the next list element */
- xlsetvalue(sym,car(list));
-
- /* execute the loop body */
- xlargv = argv;
- xlargc = argc;
- tagbody();
- }
-
- /* evaluate the result expression */
- xlsetvalue(sym,NIL);
- val = (consp(clist) ? xleval(car(clist)) : NIL);
-
- /* unbind the arguments */
- xlenv = cdr(xlenv);
- }
- xlend(&cntxt);
-
- /* restore the stack */
- xlpop();
-
- /* return the result */
- return (val);
-}
-
-/* xdotimes - special form 'dotimes' */
-LVAL xdotimes(void)
-{
- LVAL *argv,clist,sym,cnt,val;
- XLCONTEXT cntxt;
- int argc,n,i;
-
- /* get the control list (sym list result-expr) */
- clist = xlgalist();
- sym = match(SYMBOL,&clist);
- cnt = evmatch(FIXNUM,&clist); n = getfixnum(cnt);
- argv = xlargv;
- argc = xlargc;
-
- /* initialize the local environment */
- xlenv = xlframe(xlenv);
- xlbind(sym,NIL);
-
- /* establish a new execution context */
- xlbegin(&cntxt,CF_RETURN,NIL);
- if (setjmp(cntxt.c_jmpbuf))
- val = xlvalue;
- else {
-
- /* loop through for each value from zero to n-1 */
- for (val = NIL, i = 0; i < n; ++i) {
-
- /* bind the symbol to the next list element */
- xlsetvalue(sym,cvfixnum((FIXTYPE)i));
-
- /* execute the loop body */
- xlargv = argv;
- xlargc = argc;
- tagbody();
- }
-
- /* evaluate the result expression */
- xlsetvalue(sym,cnt);
- val = (consp(clist) ? xleval(car(clist)) : NIL);
-
- /* unbind the arguments */
- xlenv = cdr(xlenv);
- }
- xlend(&cntxt);
-
- /* return the result */
- return (val);
-}
-
-/* xblock - special form 'block' */
-LVAL xblock(void)
-{
- LVAL name,val;
- XLCONTEXT cntxt;
-
- /* get the block name */
- name = xlgetarg();
- if (name && !symbolp(name))
- xlbadtype(name);
-
- /* execute the block */
- xlbegin(&cntxt,CF_RETURN,name);
- if (setjmp(cntxt.c_jmpbuf))
- val = xlvalue;
- else
- for (val = NIL; moreargs(); )
- val = xleval(nextarg());
- xlend(&cntxt);
-
- /* return the value of the last expression */
- return (val);
-}
-
-/* xtagbody - special form 'tagbody' */
-LVAL xtagbody(void)
-{
- tagbody();
- return (NIL);
-}
-
-/* xcatch - special form 'catch' */
-LVAL xcatch(void)
-{
- XLCONTEXT cntxt;
- LVAL tag,val;
-
- /* protect some pointers */
- xlsave1(tag);
-
- /* get the tag */
- tag = xleval(nextarg());
-
- /* establish an execution context */
- xlbegin(&cntxt,CF_THROW,tag);
-
- /* check for 'throw' */
- if (setjmp(cntxt.c_jmpbuf))
- val = xlvalue;
-
- /* otherwise, evaluate the remainder of the arguments */
- else {
- for (val = NIL; moreargs(); )
- val = xleval(nextarg());
- }
- xlend(&cntxt);
-
- /* restore the stack */
- xlpop();
-
- /* return the result */
- return (val);
-}
-
-/* xthrow - special form 'throw' */
-LVAL xthrow(void)
-{
- LVAL tag,val;
-
- /* get the tag and value */
- tag = xleval(nextarg());
- val = (moreargs() ? xleval(nextarg()) : NIL);
- xllastarg();
-
- /* throw the tag */
- xlthrow(tag,val);
- return NIL; /* never happens */
-}
-
-/* xunwindprotect - special form 'unwind-protect' */
-LVAL xunwindprotect(void)
-{
- extern XLCONTEXT *xltarget;
- extern int xlmask;
- XLCONTEXT cntxt;
- XLCONTEXT *target = NULL;
- int mask = 0;
- int sts;
- LVAL val;
-
- /* protect some pointers */
- xlsave1(val);
-
- /* get the expression to protect */
- val = xlgetarg();
-
- /* evaluate the protected expression */
- xlbegin(&cntxt,CF_UNWIND,NIL);
- if ((sts = setjmp(cntxt.c_jmpbuf))) {
- target = xltarget;
- mask = xlmask;
- val = xlvalue;
- }
- else
- val = xleval(val);
- xlend(&cntxt);
-
- /* evaluate the cleanup expressions */
- while (moreargs())
- xleval(nextarg());
-
- /* if unwinding, continue unwinding */
- if (sts)
- xljump(target,mask,val);
-
- /* restore the stack */
- xlpop();
-
- /* return the value of the protected expression */
- return (val);
-}
-
-/* xerrset - special form 'errset' */
-LVAL xerrset(void)
-{
- LVAL expr,flag,val;
- XLCONTEXT cntxt;
-
- /* get the expression and the print flag */
- expr = xlgetarg();
- flag = (moreargs() ? xlgetarg() : s_true);
- xllastarg();
-
- /* establish an execution context */
- xlbegin(&cntxt,CF_ERROR,flag);
-
- /* check for error */
- if (setjmp(cntxt.c_jmpbuf))
- val = NIL;
-
- /* otherwise, evaluate the expression */
- else {
- expr = xleval(expr);
- val = consa(expr);
- }
- xlend(&cntxt);
-
- /* return the result */
- return (val);
-}
-
-/* xtrace - special form 'trace' */
-LVAL xtrace(void)
-{
- LVAL sym,fun,this;
-
- /* loop through all of the arguments */
- sym = xlenter("*TRACELIST*");
- while (moreargs()) {
- fun = xlgasymbol();
-
- /* check for the function name already being in the list */
- for (this = getvalue(sym); consp(this); this = cdr(this))
- if (car(this) == fun)
- break;
-
- /* add the function name to the list */
- if (null(this))
- setvalue(sym,cons(fun,getvalue(sym)));
- }
- return (getvalue(sym));
-}
-
-/* xuntrace - special form 'untrace' */
-LVAL xuntrace(void)
-{
- LVAL sym,fun,this,last;
-
- /* loop through all of the arguments */
- sym = xlenter("*TRACELIST*");
- while (moreargs()) {
- fun = xlgasymbol();
-
- /* remove the function name from the list */
- last = NIL;
- for (this = getvalue(sym); consp(this); this = cdr(this)) {
- if (car(this) == fun) {
- if (last)
- rplacd(last,cdr(this));
- else
- setvalue(sym,cdr(this));
- break;
- }
- last = this;
- }
- }
- return (getvalue(sym));
-}
-
-/* dobindings - handle bindings for let/let*, prog/prog*, do/do* */
-LOCAL void dobindings(LVAL list, LVAL env)
-{
- LVAL bnd, val;
- LVAL sym = NULL;
-
- /* protect some pointers */
- xlsave1(val);
-
- /* bind each symbol in the list of bindings */
- for (; consp(list); list = cdr(list)) {
-
- /* get the next binding */
- bnd = car(list);
-
- /* handle a symbol */
- if (symbolp(bnd)) {
- sym = bnd;
- val = NIL;
- }
-
- /* handle a list of the form (symbol expr) */
- else if (consp(bnd)) {
- sym = match(SYMBOL,&bnd);
- val = evarg(&bnd);
- }
- else
- xlfail("bad binding");
-
- /* bind the value to the symbol */
- xlpbind(sym,val,env);
- }
-
- /* restore the stack */
- xlpop();
-}
-
-/* doupdates - handle updates for do/do* */
-LOCAL void doupdates(LVAL list, int pflag)
-{
- LVAL plist,bnd,sym,val;
-
- /* protect some pointers */
- xlstkcheck(2);
- xlsave(plist);
- xlsave(val);
-
- /* bind each symbol in the list of bindings */
- for (; consp(list); list = cdr(list)) {
-
- /* get the next binding */
- bnd = car(list);
-
- /* handle a list of the form (symbol expr) */
- if (consp(bnd)) {
- sym = match(SYMBOL,&bnd);
- bnd = cdr(bnd);
- if (bnd) {
- val = evarg(&bnd);
- if (pflag)
- plist = cons(cons(sym,val),plist);
- else
- xlsetvalue(sym,val);
- }
- }
- }
-
- /* set the values for parallel updates */
- for (; plist; plist = cdr(plist))
- xlsetvalue(car(car(plist)),cdr(car(plist)));
-
- /* restore the stack */
- xlpopn(2);
-}
-
-/* tagbody - execute code within a block and tagbody */
-LOCAL void tagbody(void)
-{
- LVAL *argv,arg;
- XLCONTEXT cntxt;
- int argc;
-
- /* establish an execution context */
- xlbegin(&cntxt,CF_GO,NIL);
- argc = xlargc;
- argv = xlargv;
-
- /* check for a 'go' */
- if (setjmp(cntxt.c_jmpbuf)) {
- cntxt.c_xlargc = argc;
- cntxt.c_xlargv = argv;
- }
-
- /* execute the body */
- while (moreargs()) {
- arg = nextarg();
- if (consp(arg))
- xleval(arg);
- }
- xlend(&cntxt);
-}
-
-/* match - get an argument and match its type */
-LOCAL LVAL match(int type, LVAL *pargs)
-{
- LVAL arg;
-
- /* make sure the argument exists */
- if (!consp(*pargs))
- toofew(*pargs);
-
- /* get the argument value */
- arg = car(*pargs);
-
- /* move the argument pointer ahead */
- *pargs = cdr(*pargs);
-
- /* check its type */
- if (type == LIST) {
- if (arg && ntype(arg) != CONS)
- xlerror("bad argument type",arg);
- }
- else {
- if (arg == NIL || ntype(arg) != type)
- xlerror("bad argument type",arg);
- }
-
- /* return the argument */
- return (arg);
-}
-
-/* evarg - get the next argument and evaluate it */
-LOCAL LVAL evarg(LVAL *pargs)
-{
- LVAL arg;
-
- /* protect some pointers */
- xlsave1(arg);
-
- /* make sure the argument exists */
- if (!consp(*pargs))
- toofew(*pargs);
-
- /* get the argument value */
- arg = car(*pargs);
-
- /* move the argument pointer ahead */
- *pargs = cdr(*pargs);
-
- /* evaluate the argument */
- arg = xleval(arg);
-
- /* restore the stack */
- xlpop();
-
- /* return the argument */
- return (arg);
-}
-
-/* evmatch - get an evaluated argument and match its type */
-LOCAL LVAL evmatch(int type, LVAL *pargs)
-{
- LVAL arg;
-
- /* protect some pointers */
- xlsave1(arg);
-
- /* make sure the argument exists */
- if (!consp(*pargs))
- toofew(*pargs);
-
- /* get the argument value */
- arg = car(*pargs);
-
- /* move the argument pointer ahead */
- *pargs = cdr(*pargs);
-
- /* evaluate the argument */
- arg = xleval(arg);
-
- /* check its type */
- if (type == LIST) {
- if (arg && ntype(arg) != CONS)
- xlerror("bad argument type",arg);
- }
- else {
- if (arg == NIL || ntype(arg) != type)
- xlerror("bad argument type",arg);
- }
-
- /* restore the stack */
- xlpop();
-
- /* return the argument */
- return (arg);
-}
-
-/* toofew - too few arguments */
-LOCAL void toofew(LVAL args)
-{
- xlerror("too few arguments",args);
-}
-
-/* toomany - too many arguments */
-LOCAL void toomany(LVAL args)
-{
- xlerror("too many arguments",args);
-}
-
diff --git a/lib-src/libnyquist/xlisp/xldbug.c b/lib-src/libnyquist/xlisp/xldbug.c
deleted file mode 100644
index 3b71efa..0000000
--- a/lib-src/libnyquist/xlisp/xldbug.c
+++ /dev/null
@@ -1,215 +0,0 @@
-/* xldebug - xlisp debugging support */
-/* Copyright (c) 1985, by David Michael Betz
- All Rights Reserved
- Permission is granted for unrestricted non-commercial use */
-
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm eliminate some compiler warnings
- */
-
-
-#include "stdlib.h"
-#include "xlisp.h"
-
-
-/* forward declarations */
-FORWARD LVAL stacktop(void);
-FORWARD LOCAL void breakloop(char *hdr, char *cmsg, char *emsg, LVAL arg, int cflag);
-
-/* xlabort - xlisp serious error handler */
-void xlabort(char *emsg)
-{
- xlsignal(emsg,s_unbound);
- xlerrprint("error",(char *) NULL,emsg,s_unbound);
- xlbrklevel();
-}
-
-/* xlbreak - enter a break loop */
-void xlbreak(char *emsg, LVAL arg)
-{
- breakloop("break","return from BREAK",emsg,arg,TRUE);
-}
-
-/* xlfail - xlisp error handler */
-void xlfail(char *emsg)
-{
- xlerror(emsg,s_unbound);
-}
-
-/* close_loadingfiles - close files we were loading from */
-void close_loadingfiles()
-{
- /* close open files that are being loaded so that user can
- overwrite bug fixes immediately. (Windows locks files
- until they are closed.)
- */
- while (consp(getvalue(s_loadingfiles)) &&
- consp(cdr(getvalue(s_loadingfiles))) &&
- streamp(car(cdr(getvalue(s_loadingfiles))))) {
- osclose(getfile(car(cdr(getvalue(s_loadingfiles)))));
- setvalue(s_loadingfiles, cdr(cdr(getvalue(s_loadingfiles))));
- }
-}
-
-/* xlerror - handle a fatal error */
-void xlerror(char *emsg, LVAL arg)
-{
- close_loadingfiles();
- if (getvalue(s_breakenable) != NIL)
- breakloop("error",NULL,emsg,arg,FALSE);
- else {
- xlsignal(emsg,arg);
- xlerrprint("error",NULL,emsg,arg);
- xlbrklevel();
- }
-}
-
-/* xlcerror - handle a recoverable error */
-void xlcerror(char *cmsg, char *emsg, LVAL arg)
-{
- if (getvalue(s_breakenable) != NIL)
- breakloop("error",cmsg,emsg,arg,TRUE);
- else {
- xlsignal(emsg,arg);
- xlerrprint("error",NULL,emsg,arg);
- xlbrklevel();
- }
-}
-
-/* xlerrprint - print an error message */
-void xlerrprint(char *hdr, char *cmsg, char *emsg, LVAL arg)
-{
- /* print the error message */
- sprintf(buf,"%s: %s",hdr,emsg);
- errputstr(buf);
-
- /* print the argument */
- if (arg != s_unbound) {
- errputstr(" - ");
- errprint(arg);
- }
-
- /* no argument, just end the line */
- else
- errputstr("\n");
-
- /* print the continuation message */
- if (cmsg) {
- sprintf(buf,"if continued: %s\n",cmsg);
- errputstr(buf);
- }
-}
-
-/* breakloop - the debug read-eval-print loop */
-LOCAL void breakloop(char *hdr, char *cmsg, char *emsg, LVAL arg, int cflag)
-{
- LVAL expr,val;
- XLCONTEXT cntxt;
- int type;
-
- /* print the error message */
- xlerrprint(hdr,cmsg,emsg,arg);
-
- /* flush the input buffer */
- xlflush();
-
- /* do the back trace */
- if (getvalue(s_tracenable)) {
- val = getvalue(s_tlimit);
- xlbaktrace(fixp(val) ? (int)getfixnum(val) : -1);
- }
-
- /* protect some pointers */
- xlsave1(expr);
-
- /* increment the debug level */
- ++xldebug;
-
- /* debug command processing loop */
- xlbegin(&cntxt,CF_BRKLEVEL|CF_CLEANUP|CF_CONTINUE,s_true);
- for (type = 0; type == 0; ) {
-
- /* setup the continue trap */
- if ((type = setjmp(cntxt.c_jmpbuf)))
- switch (type) {
- case CF_CLEANUP:
- continue;
- case CF_BRKLEVEL:
- type = 0;
- break;
- case CF_CONTINUE:
- if (cflag) {
- dbgputstr("[ continue from break loop ]\n");
- continue;
- }
- else xlabort("this error can't be continued");
- }
-
- #ifndef READLINE
- /* print a prompt */
- sprintf(buf,"%d> ",xldebug);
- dbgputstr(buf);
- #endif
-
- /* read an expression and check for eof */
- if (!xlread(getvalue(s_debugio),&expr,FALSE)) {
- type = CF_CLEANUP;
-
- #ifdef READLINE
- dbgputstr("\n");
- #endif
-
- break;
- }
-
- /* save the input expression */
- xlrdsave(expr);
-
- /* evaluate the expression */
- expr = xleval(expr);
-
- /* save the result */
- xlevsave(expr);
-
- /* print it */
- dbgprint(expr);
- }
- xlend(&cntxt);
-
- /* decrement the debug level */
- --xldebug;
-
- /* restore the stack */
- xlpop();
-
- /* check for aborting to the previous level */
- if (type == CF_CLEANUP)
- xlbrklevel();
-}
-
-/* baktrace - do a back trace */
-void xlbaktrace(int n)
-{
- LVAL *fp,*p;
- int argc;
- for (fp = xlfp; (n < 0 || n--) && *fp; fp = fp - (int)getfixnum(*fp)) {
- p = fp + 1;
- errputstr("Function: ");
- errprint(*p++);
- if ((argc = (int)getfixnum(*p++)))
- errputstr("Arguments:\n");
- while (--argc >= 0) {
- errputstr(" ");
- errprint(*p++);
- }
- }
-}
-
-/* xldinit - debug initialization routine */
-void xldinit(void)
-{
- xlsample = 0;
- xldebug = 0;
-}
-
diff --git a/lib-src/libnyquist/xlisp/xldmem.c b/lib-src/libnyquist/xlisp/xldmem.c
deleted file mode 100644
index c4db5a9..0000000
--- a/lib-src/libnyquist/xlisp/xldmem.c
+++ /dev/null
@@ -1,737 +0,0 @@
-/* xldmem - xlisp dynamic memory management routines */
-/* Copyright (c) 1985, by David Michael Betz
- All Rights Reserved
- Permission is granted for unrestricted non-commercial use
-
- * HISTORY
- * 28-Apr-03 Mazzoni
- * eliminate some compiler warnings
- * 14-Apr-88 Dannenberg
- * Call free method when an EXTERN node is garbage collected
- */
-
-
-/* #define DEBUG_MEM 1 */
-
-#include "stdlib.h"
-#include "string.h"
-#include "xlisp.h"
-
-/* node flags */
-#define MARK 1
-#define LEFT 2
-
-/* macro to compute the size of a segment */
-#define segsize(n) (sizeof(SEGMENT)+((n)-1)*sizeof(struct node))
-
-
-/* variables local to xldmem.c and xlimage.c */
-SEGMENT *segs,*lastseg,*fixseg,*charseg;
-int anodes,nsegs,gccalls;
-long nnodes,nfree,total;
-LVAL fnodes;
-
-#ifdef DEBUG_MEM
-long xldmem_trace = 0; /* debugging */
-#endif
-
-/* forward declarations */
-FORWARD LOCAL void findmem(void);
-FORWARD LVAL newnode(int type);
-FORWARD LOCAL unsigned char *stralloc(int size);
-FORWARD LOCAL int addseg(void);
-FORWARD void mark(LVAL ptr);
-FORWARD LOCAL void sweep(void);
-
-#ifdef DEBUG_GC
-static long dbg_gc_n = 0; /* counts save operations */
-long dbg_gc_count = 0; /* says when to stop */
-LVAL *dbg_gc_addr = NULL; /* says what we're looking for */
-
-void dbg_gc_xlsave(LVAL *n)
-{
- dbg_gc_n++;
- if (n == dbg_gc_addr) {
- printf("dbg_gc_xlsave: %x at count %d\n",
- dbg_gc_addr, dbg_gc_n);
- }
- if (dbg_gc_count == dbg_gc_n) {
- printf("dbg_gc_xlsave: reached %d\n",
- dbg_gc_count);
- }
-}
-
-
-#endif
-
-
-/* cons - construct a new cons node */
-LVAL cons(LVAL x, LVAL y)
-{
- LVAL nnode;
- /* get a free node */
- if ((nnode = fnodes) == NIL) {
- xlstkcheck(2);
- xlprotect(x);
- xlprotect(y);
- findmem();
- if ((nnode = fnodes) == NIL)
- xlabort("insufficient node space");
- xlpop();
- xlpop();
- }
-
- /* unlink the node from the free list */
- fnodes = cdr(nnode);
- --nfree;
-
- /* initialize the new node */
- nnode->n_type = CONS;
- rplaca(nnode,x);
- rplacd(nnode,y);
-
- /* return the new node */
- return (nnode);
-}
-
-/* cvstring - convert a string to a string node */
-LVAL cvstring(char *str)
-{
- LVAL val;
- xlsave1(val);
- val = newnode(STRING);
- val->n_strlen = strlen(str) + 1;
- val->n_string = stralloc(getslength(val));
- strcpy((char *) getstring(val),str);
- xlpop();
- return (val);
-}
-
-/* new_string - allocate and initialize a new string */
-LVAL new_string(int size)
-{
- LVAL val;
- xlsave1(val);
- val = newnode(STRING);
- val->n_strlen = size;
- val->n_string = stralloc(getslength(val));
- strcpy((char *) getstring(val),"");
- xlpop();
- return (val);
-}
-
-/* cvsymbol - convert a string to a symbol */
-LVAL cvsymbol(char *pname)
-{
- LVAL val;
- xlsave1(val);
- val = newvector(SYMSIZE);
- val->n_type = SYMBOL;
- setvalue(val,s_unbound);
- setfunction(val,s_unbound);
- setpname(val,cvstring(pname));
- xlpop();
- return (val);
-}
-
-/* cvsubr - convert a function to a subr or fsubr */
-LVAL cvsubr(LVAL (*fcn)(void), int type, int offset)
-{
- LVAL val;
- val = newnode(type);
- val->n_subr = fcn;
- val->n_offset = offset;
- return (val);
-}
-
-/* cvfile - convert a file pointer to a stream */
-LVAL cvfile(FILE *fp)
-{
- LVAL val;
- val = newnode(STREAM);
- setfile(val,fp);
- setsavech(val,'\0');
- return (val);
-}
-
-/* cvfixnum - convert an integer to a fixnum node */
-LVAL cvfixnum(FIXTYPE n)
-{
- LVAL val;
- if (n >= SFIXMIN && n <= SFIXMAX)
- return (&fixseg->sg_nodes[(int)n-SFIXMIN]);
- val = newnode(FIXNUM);
- val->n_fixnum = n;
- return (val);
-}
-
-/* cvflonum - convert a floating point number to a flonum node */
-LVAL cvflonum(FLOTYPE n)
-{
- LVAL val;
- val = newnode(FLONUM);
- val->n_flonum = n;
- return (val);
-}
-
-/* cvchar - convert an integer to a character node */
-LVAL cvchar(int n)
-{
- if (n >= CHARMIN && n <= CHARMAX)
- return (&charseg->sg_nodes[n-CHARMIN]);
- xlerror("character code out of range",cvfixnum((FIXTYPE)n));
- return NIL; /* won't reach this line */
-}
-
-/* newustream - create a new unnamed stream */
-LVAL newustream(void)
-{
- LVAL val;
- val = newnode(USTREAM);
- sethead(val,NIL);
- settail(val,NIL);
- return (val);
-}
-
-/* newobject - allocate and initialize a new object */
-LVAL newobject(LVAL cls, int size)
-{
- LVAL val;
- val = newvector(size+1);
- val->n_type = OBJECT;
- setelement(val,0,cls);
- return (val);
-}
-
-/* newclosure - allocate and initialize a new closure */
-LVAL newclosure(LVAL name, LVAL type, LVAL env, LVAL fenv)
-{
- LVAL val;
- val = newvector(CLOSIZE);
- val->n_type = CLOSURE;
- setname(val,name);
- settype(val,type);
- setenv(val,env);
- setfenv(val,fenv);
- return (val);
-}
-
-/* newvector - allocate and initialize a new vector node */
-LVAL newvector(int size)
-{
- LVAL vect;
- int bsize;
- xlsave1(vect);
- vect = newnode(VECTOR);
- vect->n_vsize = 0;
- if ((bsize = size * sizeof(LVAL))) {
- if ((vect->n_vdata = (LVAL *)calloc(1,bsize)) == NULL) {
- findmem();
- if ((vect->n_vdata = (LVAL *)calloc(1,bsize)) == NULL)
- xlfail("insufficient vector space");
- }
- vect->n_vsize = size;
- total += (long) bsize;
- }
- xlpop();
- return (vect);
-}
-
-/* newnode - allocate a new node */
-LVAL newnode(int type)
-{
- LVAL nnode;
-
- /* get a free node */
- if ((nnode = fnodes) == NIL) {
- findmem();
- if ((nnode = fnodes) == NIL)
- xlabort("insufficient node space");
- }
-
- /* unlink the node from the free list */
- fnodes = cdr(nnode);
- nfree -= 1L;
-
- /* initialize the new node */
- nnode->n_type = type;
- rplacd(nnode,NIL);
-
- /* return the new node */
- return (nnode);
-}
-
-/* stralloc - allocate memory for a string adding a byte for the terminator */
-LOCAL unsigned char *stralloc(int size)
-{
- unsigned char *sptr;
-
- /* allocate memory for the string copy */
- if ((sptr = (unsigned char *)malloc(size)) == NULL) {
- gc();
- if ((sptr = (unsigned char *)malloc(size)) == NULL)
- xlfail("insufficient string space");
- }
- total += (long)size;
-
- /* return the new string memory */
- return (sptr);
-}
-
-/* findmem - find more memory by collecting then expanding */
-LOCAL void findmem(void)
-{
- gc();
- if (nfree < (long)anodes)
- addseg();
-}
-
-/* gc - garbage collect (only called here and in xlimage.c) */
-void gc(void)
-{
- register LVAL **p,*ap,tmp;
- char buf[STRMAX+1];
- LVAL *newfp,fun;
- extern LVAL profile_fixnum;
-
- /* print the start of the gc message */
- if (s_gcflag && getvalue(s_gcflag)) {
- sprintf(buf,"[ gc: total %ld, ",nnodes);
- stdputstr(buf);
- }
-
- /* mark the fixnum used by profiler */
- if (!null(profile_fixnum)) mark(profile_fixnum);
-
- /* mark the obarray, the argument list and the current environment */
- if (obarray)
- mark(obarray);
- if (xlenv)
- mark(xlenv);
- if (xlfenv)
- mark(xlfenv);
- if (xldenv)
- mark(xldenv);
-
- /* mark the evaluation stack */
- for (p = xlstack; p < xlstktop; ++p)
- if ((tmp = **p))
- mark(tmp);
-
- /* mark the argument stack */
- for (ap = xlargstkbase; ap < xlsp; ++ap)
- if ((tmp = *ap))
- mark(tmp);
-
- /* sweep memory collecting all unmarked nodes */
- sweep();
-
- /* count the gc call */
- ++gccalls;
-
- /* call the *gc-hook* if necessary */
- if (s_gchook && (fun = getvalue(s_gchook))) {
- newfp = xlsp;
- pusharg(cvfixnum((FIXTYPE)(newfp - xlfp)));
- pusharg(fun);
- pusharg(cvfixnum((FIXTYPE)2));
- pusharg(cvfixnum((FIXTYPE)nnodes));
- pusharg(cvfixnum((FIXTYPE)nfree));
- xlfp = newfp;
- xlapply(2);
- }
-
- /* print the end of the gc message */
- if (s_gcflag && getvalue(s_gcflag)) {
- sprintf(buf,"%ld free", nfree);
- stdputstr(buf);
- /* print additional info (e.g. sound blocks in Nyquist) */
- print_local_gc_info();
- stdputstr(" ]\n");
- }
-}
-
-/* mark - mark all accessible nodes */
-void mark(LVAL ptr)
-{
- register LVAL this,prev,tmp;
- int type,i,n;
-
- /* initialize */
- prev = NIL;
- this = ptr;
-
- /* mark this list */
- for (;;) {
-
- /* descend as far as we can */
- while (!(this->n_flags & MARK))
-
- /* check cons and symbol nodes */
- if (((type = ntype(this))) == CONS || type == USTREAM) {
- if ((tmp = car(this))) {
- this->n_flags |= MARK|LEFT;
- rplaca(this,prev);
- }
- else if ((tmp = cdr(this))) {
- this->n_flags |= MARK;
- rplacd(this,prev);
- }
- else { /* both sides nil */
- this->n_flags |= MARK;
- break;
- }
- prev = this; /* step down the branch */
- this = tmp;
- }
-
- /* mark other node types */
- else {
- this->n_flags |= MARK;
- switch (type) {
- case SYMBOL:
- case OBJECT:
- case VECTOR:
- case CLOSURE:
- for (i = 0, n = getsize(this); --n >= 0; ++i)
- if ((tmp = getelement(this,i)))
- mark(tmp);
- break;
- case EXTERN:
- if (getdesc(this)->mark_meth) { (*(getdesc(this)->mark_meth))(getinst(this));
- }
- }
- break;
- }
-
- /* backup to a point where we can continue descending */
- for (;;)
-
- /* make sure there is a previous node */
- if (prev) {
- if (prev->n_flags & LEFT) { /* came from left side */
- prev->n_flags &= ~LEFT;
- tmp = car(prev);
- rplaca(prev,this);
- if ((this = cdr(prev))) {
- rplacd(prev,tmp);
- break;
- }
- }
- else { /* came from right side */
- tmp = cdr(prev);
- rplacd(prev,this);
- }
- this = prev; /* step back up the branch */
- prev = tmp;
- }
-
- /* no previous node, must be done */
- else
- return;
- }
-}
-
-/* sweep - sweep all unmarked nodes and add them to the free list */
-LOCAL void sweep(void)
-{
- SEGMENT *seg;
- LVAL p;
- int n;
-
- /* empty the free list */
- fnodes = NIL;
- nfree = 0L;
-
- /* add all unmarked nodes */
- for (seg = segs; seg; seg = seg->sg_next) {
- if (seg == fixseg) /* don't sweep the fixnum segment */
- continue;
- else if (seg == charseg) /* don't sweep the character segment */
- continue;
- p = &seg->sg_nodes[0];
- for (n = seg->sg_size; --n >= 0; ++p) {
-#ifdef DEBUG_MEM
- if (xldmem_trace &&
- ntype(p) == EXTERN &&
- xldmem_trace == getinst(p)) {
- printf("sweep: EXTERN node %lx is %smarked, points to %lx\n",
- p, (p->n_flags & MARK ? "" : "un"), getinst(p));
- }
-#endif
- if (!(p->n_flags & MARK)) {
- switch (ntype(p)) {
- case STRING:
- if (getstring(p) != NULL) {
- total -= (long)getslength(p);
- free(getstring(p));
- }
- break;
- case STREAM:
- if (getfile(p))
- osclose(getfile(p));
- break;
- case SYMBOL:
- case OBJECT:
- case VECTOR:
- case CLOSURE:
- if (p->n_vsize) {
- total -= (long) (p->n_vsize * sizeof(LVAL));
- free((void *) p->n_vdata);
- }
- break;
- case EXTERN:
- /* printf("GC about to free %x\n", p);
- * fflush(stdout);
- */
- if (getdesc(p)) { (*(getdesc(p)->free_meth))(getinst(p));
- }
- break;
- }
- p->n_type = FREE_NODE;
- rplaca(p,NIL);
- rplacd(p,fnodes);
- fnodes = p;
- nfree += 1L;
- }
- else
- p->n_flags &= ~MARK;
- }
- }
-}
-
-/* addseg - add a segment to the available memory */
-LOCAL int addseg(void)
-{
- SEGMENT *newseg;
- LVAL p;
- int n;
-
- /* allocate the new segment */
- if (anodes == 0 || (newseg = newsegment(anodes)) == NULL)
- return (FALSE);
-
- /* add each new node to the free list */
- p = &newseg->sg_nodes[0];
- for (n = anodes; --n >= 0; ++p) {
- rplacd(p,fnodes);
- fnodes = p;
- }
-
- /* return successfully */
- return (TRUE);
-}
-
-/* newsegment - create a new segment (only called here and in xlimage.c) */
-SEGMENT *newsegment(int n)
-{
- SEGMENT *newseg;
-
- /* allocate the new segment */
- if ((newseg = (SEGMENT *)calloc(1,segsize(n))) == NULL)
- return (NULL);
-
- /* initialize the new segment */
- newseg->sg_size = n;
- newseg->sg_next = NULL;
- if (segs)
- lastseg->sg_next = newseg;
- else
- segs = newseg;
- lastseg = newseg;
-
- /* update the statistics */
- total += (long)segsize(n);
- nnodes += (long)n;
- nfree += (long)n;
- ++nsegs;
-
- /* return the new segment */
- return (newseg);
-}
-
-/* stats - print memory statistics */
-LOCAL void stats(void)
-{
- sprintf(buf,"Nodes: %ld\n",nnodes); stdputstr(buf);
- sprintf(buf,"Free nodes: %ld\n",nfree); stdputstr(buf);
- sprintf(buf,"Segments: %d\n",nsegs); stdputstr(buf);
- sprintf(buf,"Allocate: %d\n",anodes); stdputstr(buf);
- sprintf(buf,"Total: %ld\n",total); stdputstr(buf);
- sprintf(buf,"Collections: %d\n",gccalls); stdputstr(buf);
-}
-
-/* xgc - xlisp function to force garbage collection */
-LVAL xgc(void)
-{
- /* make sure there aren't any arguments */
- xllastarg();
-
- /* garbage collect */
- gc();
-
- /* return nil */
- return (NIL);
-}
-
-/* xexpand - xlisp function to force memory expansion */
-LVAL xexpand(void)
-{
- LVAL num;
- int n,i;
-
- /* get the new number to allocate */
- if (moreargs()) {
- num = xlgafixnum();
- n = getfixnum(num);
- }
- else
- n = 1;
- xllastarg();
-
- /* allocate more segments */
- for (i = 0; i < n; i++)
- if (!addseg())
- break;
-
- /* return the number of segments added */
- return (cvfixnum((FIXTYPE)i));
-}
-
-/* xalloc - xlisp function to set the number of nodes to allocate */
-LVAL xalloc(void)
-{
- int n,oldn;
- LVAL num;
-
- /* get the new number to allocate */
- num = xlgafixnum();
- n = getfixnum(num);
-
- /* make sure there aren't any more arguments */
- xllastarg();
-
- /* set the new number of nodes to allocate */
- oldn = anodes;
- anodes = n;
-
- /* return the old number */
- return (cvfixnum((FIXTYPE)oldn));
-}
-
-/* xmem - xlisp function to print memory statistics */
-LVAL xmem(void)
-{
- /* allow one argument for compatiblity with common lisp */
- if (moreargs()) xlgetarg();
- xllastarg();
-
- /* print the statistics */
- stats();
-
- /* return nil */
- return (NIL);
-}
-
-/* xinfo - show information on control-t */
-LVAL xinfo()
-{
- char buf[80];
-
- sprintf(buf,"\n[ Free: %d, GC calls: %d, Total: %d",
- (int)nfree, (int)gccalls, (int)total);
- stdputstr(buf);
- print_local_gc_info();
- stdputstr("]\n");
- return NULL;
-}
-
-
-#ifdef SAVERESTORE
-/* xsave - save the memory image */
-LVAL xsave(void)
-{
- unsigned char *name;
-
- /* get the file name, verbose flag and print flag */
- name = getstring(xlgetfname());
- xllastarg();
-
- /* save the memory image */
- return (xlisave((char *) name) ? s_true : NIL);
-}
-
-/* xrestore - restore a saved memory image */
-LVAL xrestore(void)
-{
- extern jmp_buf top_level;
- unsigned char *name;
-
- /* get the file name, verbose flag and print flag */
- name = getstring(xlgetfname());
- xllastarg();
-
- /* restore the saved memory image */
- if (!xlirestore((char *) name))
- return (NIL);
-
- /* return directly to the top level */
- stdputstr("[ returning to the top level ]\n");
- longjmp(top_level,1);
-}
-#endif
-
-/* xlminit - initialize the dynamic memory module */
-void xlminit(void)
-{
- LVAL p;
- int i;
-
- /* initialize our internal variables */
- segs = lastseg = NULL;
- nnodes = nfree = total = 0L;
- nsegs = gccalls = 0;
- anodes = NNODES;
- fnodes = NIL;
-
- /* allocate the fixnum segment */
- if ((fixseg = newsegment(SFIXSIZE)) == NULL)
- xlfatal("insufficient memory");
-
- /* initialize the fixnum segment */
- p = &fixseg->sg_nodes[0];
- for (i = SFIXMIN; i <= SFIXMAX; ++i) {
- p->n_type = FIXNUM;
- p->n_fixnum = i;
- ++p;
- }
-
- /* allocate the character segment */
- if ((charseg = newsegment(CHARSIZE)) == NULL)
- xlfatal("insufficient memory");
-
- /* initialize the character segment */
- p = &charseg->sg_nodes[0];
- for (i = CHARMIN; i <= CHARMAX; ++i) {
- p->n_type = CHAR;
- p->n_chcode = i;
- ++p;
- }
-
- /* initialize structures that are marked by the collector */
- obarray = xlenv = xlfenv = xldenv = NIL;
- s_gcflag = s_gchook = NIL;
-
- /* allocate the evaluation stack */
- if ((xlstkbase = (LVAL **)malloc(EDEPTH * sizeof(LVAL *))) == NULL)
- xlfatal("insufficient memory");
- xlstack = xlstktop = xlstkbase + EDEPTH;
-
- /* allocate the argument stack */
- if ((xlargstkbase = (LVAL *)malloc(ADEPTH * sizeof(LVAL))) == NULL)
- xlfatal("insufficient memory");
- xlargstktop = xlargstkbase + ADEPTH;
- xlfp = xlsp = xlargstkbase;
- *xlsp++ = NIL;
-}
-
diff --git a/lib-src/libnyquist/xlisp/xldmem.h b/lib-src/libnyquist/xlisp/xldmem.h
deleted file mode 100644
index 1710f1f..0000000
--- a/lib-src/libnyquist/xlisp/xldmem.h
+++ /dev/null
@@ -1,215 +0,0 @@
-/* xldmem.h - dynamic memory definitions */
-/* Copyright (c) 1987, by David Michael Betz
- All Rights Reserved
- Permission is granted for unrestricted non-commercial use */
-
-/* small fixnum range */
-#define SFIXMIN (-128)
-#define SFIXMAX 255
-#define SFIXSIZE 384
-
-/* character range */
-#define CHARMIN 0
-#define CHARMAX 255
-#define CHARSIZE 256
-
-/* new node access macros */
-#define ntype(x) ((x)->n_type)
-
-/* cons access macros */
-#define car(x) ((x)->n_car)
-#define cdr(x) ((x)->n_cdr)
-#define rplaca(x,y) ((x)->n_car = (y))
-#define rplacd(x,y) ((x)->n_cdr = (y))
-
-/* symbol access macros */
-#define getvalue(x) ((x)->n_vdata[0])
-#define setvalue(x,v) ((x)->n_vdata[0] = (v))
-#define getfunction(x) ((x)->n_vdata[1])
-#define setfunction(x,v) ((x)->n_vdata[1] = (v))
-#define getplist(x) ((x)->n_vdata[2])
-#define setplist(x,v) ((x)->n_vdata[2] = (v))
-#define getpname(x) ((x)->n_vdata[3])
-#define setpname(x,v) ((x)->n_vdata[3] = (v))
-#define SYMSIZE 4
-
-/* closure access macros */
-#define getname(x) ((x)->n_vdata[0])
-#define setname(x,v) ((x)->n_vdata[0] = (v))
-#define gettype(x) ((x)->n_vdata[1])
-#define settype(x,v) ((x)->n_vdata[1] = (v))
-#define getargs(x) ((x)->n_vdata[2])
-#define setargs(x,v) ((x)->n_vdata[2] = (v))
-#define getoargs(x) ((x)->n_vdata[3])
-#define setoargs(x,v) ((x)->n_vdata[3] = (v))
-#define getrest(x) ((x)->n_vdata[4])
-#define setrest(x,v) ((x)->n_vdata[4] = (v))
-#define getkargs(x) ((x)->n_vdata[5])
-#define setkargs(x,v) ((x)->n_vdata[5] = (v))
-#define getaargs(x) ((x)->n_vdata[6])
-#define setaargs(x,v) ((x)->n_vdata[6] = (v))
-#define getbody(x) ((x)->n_vdata[7])
-#define setbody(x,v) ((x)->n_vdata[7] = (v))
-/* use closure_getenv to avoid Unix getenv conflict */
-#define closure_getenv(x) ((x)->n_vdata[8])
-#define setenv(x,v) ((x)->n_vdata[8] = (v))
-#define getfenv(x) ((x)->n_vdata[9])
-#define setfenv(x,v) ((x)->n_vdata[9] = (v))
-#define getlambda(x) ((x)->n_vdata[10])
-#define setlambda(x,v) ((x)->n_vdata[10] = (v))
-#define CLOSIZE 11
-
-/* vector access macros */
-#define getsize(x) ((x)->n_vsize)
-#define getelement(x,i) ((x)->n_vdata[i])
-#define setelement(x,i,v) ((x)->n_vdata[i] = (v))
-
-/* object access macros */
-#define getclass(x) ((x)->n_vdata[0])
-#define getivar(x,i) ((x)->n_vdata[i+1])
-#define setivar(x,i,v) ((x)->n_vdata[i+1] = (v))
-
-/* subr/fsubr access macros */
-#define getsubr(x) ((x)->n_subr)
-#define getoffset(x) ((x)->n_offset)
-
-/* fixnum/flonum/char access macros */
-#define getfixnum(x) ((x)->n_fixnum)
-#define getflonum(x) ((x)->n_flonum)
-#define getchcode(x) ((x)->n_chcode)
-
-/* string access macros */
-#define getstring(x) ((x)->n_string)
-#define getslength(x) ((x)->n_strlen)
-
-/* file stream access macros */
-#define getfile(x) ((x)->n_fp)
-#define setfile(x,v) ((x)->n_fp = (v))
-#define getsavech(x) ((x)->n_savech)
-#define setsavech(x,v) ((x)->n_savech = (v))
-
-/* unnamed stream access macros */
-#define gethead(x) ((x)->n_car)
-#define sethead(x,v) ((x)->n_car = (v))
-#define gettail(x) ((x)->n_cdr)
-#define settail(x,v) ((x)->n_cdr = (v))
-
-/* extern access macros */
-#define getdesc(x) ((x)->n_desc)
-#define setdesc(x,d) ((x)->n_desc = (d))
-#define getinst(x) ((x)->n_inst)
-#define setinst(x,i) ((x)->n_inst = (i))
-
-/* node types */
-#define FREE_NODE 0
-#define SUBR 1
-#define FSUBR 2
-#define CONS 3
-#define SYMBOL 4
-#define FIXNUM 5
-#define FLONUM 6
-#define STRING 7
-#define OBJECT 8
-#define STREAM 9
-#define VECTOR 10
-#define CLOSURE 11
-#define CHAR 12
-#define USTREAM 13
-#define EXTERN 14
-
-/* node flags */
-#define WATCH 4
-
-/* subr/fsubr node */
-#define n_subr n_info.n_xsubr.xs_subr
-#define n_offset n_info.n_xsubr.xs_offset
-
-/* cons node */
-#define n_car n_info.n_xcons.xc_car
-#define n_cdr n_info.n_xcons.xc_cdr
-
-/* fixnum node */
-#define n_fixnum n_info.n_xfixnum.xf_fixnum
-
-/* flonum node */
-#define n_flonum n_info.n_xflonum.xf_flonum
-/* character node */
-#define n_chcode n_info.n_xchar.xc_chcode
-
-/* string node */
-#define n_string n_info.n_xstring.xs_string
-#define n_strlen n_info.n_xstring.xs_length
-
-/* stream node */
-#define n_fp n_info.n_xstream.xs_fp
-#define n_savech n_info.n_xstream.xs_savech
-
-/* vector/object node */
-#define n_vsize n_info.n_xvector.xv_size
-#define n_vdata n_info.n_xvector.xv_data
-
-/* extern node */
-#define n_desc n_info.n_xextern.xe_desc
-#define n_inst n_info.n_xextern.xe_inst
-
-/* xtype_desc structure */
-typedef struct xtype_desc_struct {
- char *type_name;
- struct node *type_symbol;
- void (*free_meth)();
- void (*print_meth)();
- void (*save_meth)();
- unsigned char * (*restore_meth)();
- void (*mark_meth)();
-} *xtype_desc;
-
-/* node structure */
-typedef struct node {
- char n_type; /* type of node */
- char n_flags; /* flag bits */
- union ninfo { /* value */
- struct xsubr { /* subr/fsubr node */
- struct node *(*xs_subr)(void); /* function pointer */
- int xs_offset; /* offset into funtab */
- } n_xsubr;
- struct xcons { /* cons node */
- struct node *xc_car; /* the car pointer */
- struct node *xc_cdr; /* the cdr pointer */
- } n_xcons;
- struct xfixnum { /* fixnum node */
- FIXTYPE xf_fixnum; /* fixnum value */
- } n_xfixnum;
- struct xflonum { /* flonum node */
- FLOTYPE xf_flonum; /* flonum value */
- } n_xflonum;
- struct xchar { /* character node */
- int xc_chcode; /* character code */
- } n_xchar;
- struct xstring { /* string node */
- int xs_length; /* string length */
- unsigned char *xs_string; /* string pointer */
- } n_xstring;
- struct xstream { /* stream node */
- FILE *xs_fp; /* the file pointer */
- int xs_savech; /* lookahead character */
- } n_xstream;
- struct xvector { /* vector/object/symbol/structure node */
- int xv_size; /* vector size */
- struct node **xv_data; /* vector data */
- } n_xvector;
- struct xextern { /* external data type */
- struct xtype_desc_struct *xe_desc; /* ptr to type descriptor */
- unsigned char *xe_inst; /* pointer to external data */
- } n_xextern;
- } n_info;
-} *LVAL;
-
-/* memory segment structure definition */
-typedef struct segment {
- int sg_size;
- struct segment *sg_next;
- struct node sg_nodes[1];
-} SEGMENT;
-
-extern xtype_desc create_desc(); /* initialize a type descriptor */
-
diff --git a/lib-src/libnyquist/xlisp/xleval.c b/lib-src/libnyquist/xlisp/xleval.c
deleted file mode 100644
index 174bfd9..0000000
--- a/lib-src/libnyquist/xlisp/xleval.c
+++ /dev/null
@@ -1,886 +0,0 @@
-/* xleval - xlisp evaluator */
-/* Copyright (c) 1985, by David Michael Betz
- All Rights Reserved
- Permission is granted for unrestricted non-commercial use */
-
-/* HISTORY
- 28 Apr 03 DM eliminated some compiler warnings
- 12 Oct 90 RBD added profiling support
- */
-
-#include "string.h"
-#include "xlisp.h"
-
-/* macro to check for lambda list keywords */
-#define iskey(s) ((s) == lk_optional \
- || (s) == lk_rest \
- || (s) == lk_key \
- || (s) == lk_aux \
- || (s) == lk_allow_other_keys)
-
-/* macros to handle tracing */
-#define trenter(sym,argc,argv) {if (sym) doenter(sym,argc,argv);}
-#define trexit(sym,val) {if (sym) doexit(sym,val);}
-
-
-
-/* forward declarations */
-FORWARD LOCAL LVAL evalhook(LVAL expr);
-FORWARD LOCAL LVAL evform(LVAL form);
-FORWARD LOCAL LVAL evfun(LVAL fun, int argc, LVAL *argv);
-FORWARD LVAL xlclose(LVAL name, LVAL type, LVAL fargs, LVAL body, LVAL env, LVAL fenv);
-FORWARD LOCAL int member( LVAL x, LVAL list);
-FORWARD LOCAL int evpushargs(LVAL fun, LVAL args);
-FORWARD LOCAL void doenter(LVAL sym, int argc, LVAL *argv);
-FORWARD LOCAL void doexit(LVAL sym, LVAL val);
-FORWARD LOCAL void badarglist(void);
-
-/* profiling extensions by RBD */
-extern LVAL s_profile, profile_fixnum;
-extern FIXTYPE *profile_count_ptr, profile_flag;
-
-/* xleval - evaluate an xlisp expression (checking for *evalhook*) */
-LVAL xleval(LVAL expr)
-{
- /* check for control codes */
- if (--xlsample <= 0) {
- xlsample = SAMPLE;
- oscheck();
- }
-
- /* check for *evalhook* */
- if (getvalue(s_evalhook))
- return (evalhook(expr));
-
- /* check for nil */
- if (null(expr))
- return (NIL);
-
- /* dispatch on the node type */
- switch (ntype(expr)) {
- case CONS:
- return (evform(expr));
- case SYMBOL:
- return (xlgetvalue(expr));
- default:
- return (expr);
- }
-}
-
-/* xlxeval - evaluate an xlisp expression (bypassing *evalhook*) */
-LVAL xlxeval(LVAL expr)
-{
- /* check for nil */
- if (null(expr))
- return (NIL);
-
- /* dispatch on node type */
- switch (ntype(expr)) {
- case CONS:
- return (evform(expr));
- case SYMBOL:
- return (xlgetvalue(expr));
- default:
- return (expr);
- }
-}
-
-/* xlapply - apply a function to arguments (already on the stack) */
-LVAL xlapply(int argc)
-{
- LVAL *oldargv,fun,val=NULL;
- LVAL funname;
- LVAL old_profile_fixnum = profile_fixnum;
- FIXTYPE *old_profile_count_ptr = profile_count_ptr;
- int oldargc;
-
- /* get the function */
- fun = xlfp[1];
-
- /* get the functional value of symbols */
- if (symbolp(fun)) {
- funname = fun; /* save it */
- while ((val = getfunction(fun)) == s_unbound)
- xlfunbound(fun);
- fun = xlfp[1] = val;
-
- if (profile_flag && atomp(funname)) {
- LVAL profile_prop = findprop(funname, s_profile);
- if (null(profile_prop)) {
- /* make a new fixnum, don't use cvfixnum because
- it would return shared pointer to zero, but we
- are going to modify this integer in place --
- dangerous but efficient.
- */
- profile_fixnum = newnode(FIXNUM);
- profile_fixnum->n_fixnum = 0;
- setplist(funname, cons(s_profile,
- cons(profile_fixnum,
- getplist(funname))));
- setvalue(s_profile, cons(funname, getvalue(s_profile)));
- } else profile_fixnum = car(profile_prop);
- profile_count_ptr = &getfixnum(profile_fixnum);
- }
- }
-
- /* check for nil */
- if (null(fun))
- xlerror("bad function",fun);
-
- /* dispatch on node type */
- switch (ntype(fun)) {
- case SUBR:
- oldargc = xlargc;
- oldargv = xlargv;
- xlargc = argc;
- xlargv = xlfp + 3;
- val = (*getsubr(fun))();
- xlargc = oldargc;
- xlargv = oldargv;
- break;
- case CONS:
- if (!consp(cdr(fun)))
- xlerror("bad function",fun);
- if (car(fun) == s_lambda) {
- fun = xlclose(NIL,
- s_lambda,
- car(cdr(fun)),
- cdr(cdr(fun)),
- xlenv,xlfenv);
- } else
- xlerror("bad function",fun);
- /**** fall through into the next case ****/
- case CLOSURE:
- if (gettype(fun) != s_lambda)
- xlerror("bad function",fun);
- val = evfun(fun,argc,xlfp+3);
- break;
- default:
- xlerror("bad function",fun);
- }
-
- /* restore original profile counting state */
- profile_fixnum = old_profile_fixnum;
- profile_count_ptr = old_profile_count_ptr;
-
- /* remove the call frame */
- xlsp = xlfp;
- xlfp = xlfp - (int)getfixnum(*xlfp);
-
- /* return the function value */
- return (val);
-}
-
-/* evform - evaluate a form */
-LOCAL LVAL evform(LVAL form)
-{
- LVAL fun,args,val=NULL,type;
- LVAL tracing=NIL;
- LVAL *argv;
- LVAL old_profile_fixnum = profile_fixnum;
- FIXTYPE *old_profile_count_ptr = profile_count_ptr;
- LVAL funname;
- int argc;
-
- /* protect some pointers */
- xlstkcheck(2);
- xlsave(fun);
- xlsave(args);
-
- (*profile_count_ptr)++; /* increment profile counter */
-
- /* get the function and the argument list */
- fun = car(form);
- args = cdr(form);
-
- funname = fun;
-
- /* get the functional value of symbols */
- if (symbolp(fun)) {
- if (getvalue(s_tracelist) && member(fun,getvalue(s_tracelist)))
- tracing = fun;
- fun = xlgetfunction(fun);
- }
-
- /* check for nil */
- if (null(fun))
- xlerror("bad function",NIL);
-
- /* dispatch on node type */
- switch (ntype(fun)) {
- case SUBR:
- argv = xlargv;
- argc = xlargc;
- xlargc = evpushargs(fun,args);
- xlargv = xlfp + 3;
- trenter(tracing,xlargc,xlargv);
- val = (*getsubr(fun))();
- trexit(tracing,val);
- xlsp = xlfp;
- xlfp = xlfp - (int)getfixnum(*xlfp);
- xlargv = argv;
- xlargc = argc;
- break;
- case FSUBR:
- argv = xlargv;
- argc = xlargc;
- xlargc = pushargs(fun,args);
- xlargv = xlfp + 3;
- val = (*getsubr(fun))();
- xlsp = xlfp;
- xlfp = xlfp - (int)getfixnum(*xlfp);
- xlargv = argv;
- xlargc = argc;
- break;
- case CONS:
- if (!consp(cdr(fun)))
- xlerror("bad function",fun);
- if ((type = car(fun)) == s_lambda)
- fun = xlclose(NIL,
- s_lambda,
- car(cdr(fun)),
- cdr(cdr(fun)),
- xlenv,xlfenv);
- else
- xlerror("bad function",fun);
- /**** fall through into the next case ****/
- case CLOSURE:
- /* do profiling */
- if (profile_flag && atomp(funname)) {
- LVAL profile_prop = findprop(funname, s_profile);
- if (null(profile_prop)) {
- /* make a new fixnum, don't use cvfixnum because
- it would return shared pointer to zero, but we
- are going to modify this integer in place --
- dangerous but efficient.
- */
- profile_fixnum = newnode(FIXNUM);
- profile_fixnum->n_fixnum = 0;
- setplist(funname, cons(s_profile,
- cons(profile_fixnum,
- getplist(funname))));
- setvalue(s_profile, cons(funname, getvalue(s_profile)));
- } else profile_fixnum = car(profile_prop);
- profile_count_ptr = &getfixnum(profile_fixnum);
- }
-
- if (gettype(fun) == s_lambda) {
- argc = evpushargs(fun,args);
- argv = xlfp + 3;
- trenter(tracing,argc,argv);
- val = evfun(fun,argc,argv);
- trexit(tracing,val);
- xlsp = xlfp;
- xlfp = xlfp - (int)getfixnum(*xlfp);
- }
- else {
- macroexpand(fun,args,&fun);
- val = xleval(fun);
- }
- profile_fixnum = old_profile_fixnum;
- profile_count_ptr = old_profile_count_ptr;
- break;
- default:
- xlerror("bad function",fun);
- }
-
- /* restore the stack */
- xlpopn(2);
-
- /* return the result value */
- return (val);
-}
-
-/* xlexpandmacros - expand macros in a form */
-LVAL xlexpandmacros(LVAL form)
-{
- LVAL fun,args;
-
- /* protect some pointers */
- xlstkcheck(3);
- xlprotect(form);
- xlsave(fun);
- xlsave(args);
-
- /* expand until the form isn't a macro call */
- while (consp(form)) {
- fun = car(form); /* get the macro name */
- args = cdr(form); /* get the arguments */
- if (!symbolp(fun) || !fboundp(fun))
- break;
- fun = xlgetfunction(fun); /* get the expansion function */
- if (!macroexpand(fun,args,&form))
- break;
- }
-
- /* restore the stack and return the expansion */
- xlpopn(3);
- return (form);
-}
-
-/* macroexpand - expand a macro call */
-int macroexpand(LVAL fun, LVAL args, LVAL *pval)
-{
- LVAL *argv;
- int argc;
-
- /* make sure it's really a macro call */
- if (!closurep(fun) || gettype(fun) != s_macro)
- return (FALSE);
-
- /* call the expansion function */
- argc = pushargs(fun,args);
- argv = xlfp + 3;
- *pval = evfun(fun,argc,argv);
- xlsp = xlfp;
- xlfp = xlfp - (int)getfixnum(*xlfp);
- return (TRUE);
-}
-
-/* evalhook - call the evalhook function */
-LOCAL LVAL evalhook(LVAL expr)
-{
- LVAL *newfp,olddenv,val;
-
- /* create the new call frame */
- newfp = xlsp;
- pusharg(cvfixnum((FIXTYPE)(newfp - xlfp)));
- pusharg(getvalue(s_evalhook));
- pusharg(cvfixnum((FIXTYPE)2));
- pusharg(expr);
- pusharg(cons(xlenv,xlfenv));
- xlfp = newfp;
-
- /* rebind the hook functions to nil */
- olddenv = xldenv;
- xldbind(s_evalhook,NIL);
- xldbind(s_applyhook,NIL);
-
- /* call the hook function */
- val = xlapply(2);
-
- /* unbind the symbols */
- xlunbind(olddenv);
-
- /* return the value */
- return (val);
-}
-
-/* evpushargs - evaluate and push a list of arguments */
-LOCAL int evpushargs(LVAL fun, LVAL args)
-{
- LVAL *newfp;
- int argc;
-
- /* protect the argument list */
- xlprot1(args);
-
- /* build a new argument stack frame */
- newfp = xlsp;
- pusharg(cvfixnum((FIXTYPE)(newfp - xlfp)));
- pusharg(fun);
- pusharg(NIL); /* will be argc */
-
- /* evaluate and push each argument */
- for (argc = 0; consp(args); args = cdr(args), ++argc)
- pusharg(xleval(car(args)));
-
- /* establish the new stack frame */
- newfp[2] = cvfixnum((FIXTYPE)argc);
- xlfp = newfp;
-
- /* restore the stack */
- xlpop();
-
- /* return the number of arguments */
- return (argc);
-}
-
-/* pushargs - push a list of arguments */
-int pushargs(LVAL fun, LVAL args)
-{
- LVAL *newfp;
- int argc;
-
- /* build a new argument stack frame */
- newfp = xlsp;
- pusharg(cvfixnum((FIXTYPE)(newfp - xlfp)));
- pusharg(fun);
- pusharg(NIL); /* will be argc */
-
- /* push each argument */
- for (argc = 0; consp(args); args = cdr(args), ++argc)
- pusharg(car(args));
-
- /* establish the new stack frame */
- newfp[2] = cvfixnum((FIXTYPE)argc);
- xlfp = newfp;
-
- /* return the number of arguments */
- return (argc);
-}
-
-/* makearglist - make a list of the remaining arguments */
-LVAL makearglist(int argc, LVAL *argv)
-{
- LVAL list,this,last;
- xlsave1(list);
- for (last = NIL; --argc >= 0; last = this) {
- this = cons(*argv++,NIL);
- if (last) rplacd(last,this);
- else list = this;
- last = this;
- }
- xlpop();
- return (list);
-}
-
-/* evfun - evaluate a function */
-LOCAL LVAL evfun(LVAL fun, int argc, LVAL *argv)
-{
- LVAL oldenv,oldfenv,cptr,name,val;
- XLCONTEXT cntxt;
-
- /* protect some pointers */
- xlstkcheck(4);
- xlsave(oldenv);
- xlsave(oldfenv);
- xlsave(cptr);
- xlprotect(fun); /* (RBD) Otherwise, fun is unprotected */
-
- /* create a new environment frame */
- oldenv = xlenv;
- oldfenv = xlfenv;
- xlenv = xlframe(closure_getenv(fun));
- xlfenv = getfenv(fun);
-
- /* bind the formal parameters */
- xlabind(fun,argc,argv);
-
- /* setup the implicit block */
- if ((name = getname(fun)))
- xlbegin(&cntxt,CF_RETURN,name);
-
- /* execute the block */
- if (name && setjmp(cntxt.c_jmpbuf))
- val = xlvalue;
- else
- for (val = NIL, cptr = getbody(fun); consp(cptr); cptr = cdr(cptr))
- val = xleval(car(cptr));
-
- /* finish the block context */
- if (name)
- xlend(&cntxt);
-
- /* restore the environment */
- xlenv = oldenv;
- xlfenv = oldfenv;
-
- /* restore the stack */
- xlpopn(4);
-
- /* return the result value */
- return (val);
-}
-
-/* xlclose - create a function closure */
-LVAL xlclose(LVAL name, LVAL type, LVAL fargs, LVAL body, LVAL env, LVAL fenv)
-{
- LVAL closure,key=NULL,arg,def,svar,new,last;
- char keyname[STRMAX+2];
-
- /* protect some pointers */
- xlsave1(closure);
-
- /* create the closure object */
- closure = newclosure(name,type,env,fenv);
- setlambda(closure,fargs);
- setbody(closure,body);
-
- /* handle each required argument */
- last = NIL;
- while (consp(fargs) && (arg = car(fargs)) && !iskey(arg)) {
-
- /* make sure the argument is a symbol */
- if (!symbolp(arg))
- badarglist();
-
- /* create a new argument list entry */
- new = cons(arg,NIL);
-
- /* link it into the required argument list */
- if (last)
- rplacd(last,new);
- else
- setargs(closure,new);
- last = new;
-
- /* move the formal argument list pointer ahead */
- fargs = cdr(fargs);
- }
-
- /* check for the '&optional' keyword */
- if (consp(fargs) && car(fargs) == lk_optional) {
- fargs = cdr(fargs);
-
- /* handle each optional argument */
- last = NIL;
- while (consp(fargs) && (arg = car(fargs)) && !iskey(arg)) {
-
- /* get the default expression and specified-p variable */
- def = svar = NIL;
- if (consp(arg)) {
- if ((def = cdr(arg))) {
- if (consp(def)) {
- if ((svar = cdr(def))) {
- if (consp(svar)) {
- svar = car(svar);
- if (!symbolp(svar))
- badarglist();
- }
- else
- badarglist();
- }
- def = car(def);
- }
- else
- badarglist();
- }
- arg = car(arg);
- }
-
- /* make sure the argument is a symbol */
- if (!symbolp(arg))
- badarglist();
-
- /* create a fully expanded optional expression */
- new = cons(cons(arg,cons(def,cons(svar,NIL))),NIL);
-
- /* link it into the optional argument list */
- if (last)
- rplacd(last,new);
- else
- setoargs(closure,new);
- last = new;
-
- /* move the formal argument list pointer ahead */
- fargs = cdr(fargs);
- }
- }
-
- /* check for the '&rest' keyword */
- if (consp(fargs) && car(fargs) == lk_rest) {
- fargs = cdr(fargs);
-
- /* get the &rest argument */
- if (consp(fargs) && (arg = car(fargs)) && !iskey(arg) && symbolp(arg))
- setrest(closure,arg);
- else
- badarglist();
-
- /* move the formal argument list pointer ahead */
- fargs = cdr(fargs);
- }
-
- /* check for the '&key' keyword */
- if (consp(fargs) && car(fargs) == lk_key) {
- fargs = cdr(fargs);
-
- /* handle each key argument */
- last = NIL;
- while (consp(fargs) && (arg = car(fargs)) && !iskey(arg)) {
-
- /* get the default expression and specified-p variable */
- def = svar = NIL;
- if (consp(arg)) {
- if ((def = cdr(arg))) {
- if (consp(def)) {
- if ((svar = cdr(def))) {
- if (consp(svar)) {
- svar = car(svar);
- if (!symbolp(svar))
- badarglist();
- }
- else
- badarglist();
- }
- def = car(def);
- }
- else
- badarglist();
- }
- arg = car(arg);
- }
-
- /* get the keyword and the variable */
- if (consp(arg)) {
- key = car(arg);
- if (!symbolp(key))
- badarglist();
- if ((arg = cdr(arg))) {
- if (consp(arg))
- arg = car(arg);
- else
- badarglist();
- }
- }
- else if (symbolp(arg)) {
- strcpy(keyname,":");
- strcat(keyname,(char *) getstring(getpname(arg)));
- key = xlenter(keyname);
- }
-
- /* make sure the argument is a symbol */
- if (!symbolp(arg))
- badarglist();
-
- /* create a fully expanded key expression */
- new = cons(cons(key,cons(arg,cons(def,cons(svar,NIL)))),NIL);
-
- /* link it into the optional argument list */
- if (last)
- rplacd(last,new);
- else
- setkargs(closure,new);
- last = new;
-
- /* move the formal argument list pointer ahead */
- fargs = cdr(fargs);
- }
- }
-
- /* check for the '&allow-other-keys' keyword */
- if (consp(fargs) && car(fargs) == lk_allow_other_keys)
- fargs = cdr(fargs); /* this is the default anyway */
-
- /* check for the '&aux' keyword */
- if (consp(fargs) && car(fargs) == lk_aux) {
- fargs = cdr(fargs);
-
- /* handle each aux argument */
- last = NIL;
- while (consp(fargs) && (arg = car(fargs)) && !iskey(arg)) {
-
- /* get the initial value */
- def = NIL;
- if (consp(arg)) {
- if ((def = cdr(arg))) {
- if (consp(def))
- def = car(def);
- else
- badarglist();
- }
- arg = car(arg);
- }
-
- /* make sure the argument is a symbol */
- if (!symbolp(arg))
- badarglist();
-
- /* create a fully expanded aux expression */
- new = cons(cons(arg,cons(def,NIL)),NIL);
-
- /* link it into the aux argument list */
- if (last)
- rplacd(last,new);
- else
- setaargs(closure,new);
- last = new;
-
- /* move the formal argument list pointer ahead */
- fargs = cdr(fargs);
- }
- }
-
- /* make sure this is the end of the formal argument list */
- if (fargs)
- badarglist();
-
- /* restore the stack */
- xlpop();
-
- /* return the new closure */
- return (closure);
-}
-
-/* xlabind - bind the arguments for a function */
-void xlabind(LVAL fun, int argc, LVAL *argv)
-{
- LVAL *kargv,fargs,key,arg,def,svar,p;
- int rargc,kargc;
- /* protect some pointers */
- xlsave1(def);
-
- /* bind each required argument */
- for (fargs = getargs(fun); fargs; fargs = cdr(fargs)) {
- /* make sure there is an actual argument */
- if (--argc < 0)
- xlfail("too few arguments");
-
- /* bind the formal variable to the argument value */
- xlbind(car(fargs),*argv++);
- }
-
- /* bind each optional argument */
- for (fargs = getoargs(fun); fargs; fargs = cdr(fargs)) {
-
- /* get argument, default and specified-p variable */
- p = car(fargs);
- arg = car(p); p = cdr(p);
- def = car(p); p = cdr(p);
- svar = car(p);
-
- /* bind the formal variable to the argument value */
- if (--argc >= 0) {
- xlbind(arg,*argv++);
- if (svar) xlbind(svar,s_true);
- }
-
- /* bind the formal variable to the default value */
- else {
- if (def) def = xleval(def);
- xlbind(arg,def);
- if (svar) xlbind(svar,NIL);
- }
- }
-
- /* save the count of the &rest of the argument list */
- rargc = argc;
-
- /* handle '&rest' argument */
- if ((arg = getrest(fun))) {
- def = makearglist(argc,argv);
- xlbind(arg,def);
- argc = 0;
- }
-
- /* handle '&key' arguments */
- if ((fargs = getkargs(fun))) {
- for (; fargs; fargs = cdr(fargs)) {
-
- /* get keyword, argument, default and specified-p variable */
- p = car(fargs);
- key = car(p); p = cdr(p);
- arg = car(p); p = cdr(p);
- def = car(p); p = cdr(p);
- svar = car(p);
-
- /* look for the keyword in the actual argument list */
- for (kargv = argv, kargc = rargc; (kargc -= 2) >= 0; kargv += 2)
- if (*kargv == key)
- break;
-
- /* bind the formal variable to the argument value */
- if (kargc >= 0) {
- xlbind(arg,*++kargv);
- if (svar) xlbind(svar,s_true);
- }
-
- /* bind the formal variable to the default value */
- else {
- if (def) def = xleval(def);
- xlbind(arg,def);
- if (svar) xlbind(svar,NIL);
- }
- }
- argc = 0;
- }
-
- /* check for the '&aux' keyword */
- for (fargs = getaargs(fun); fargs; fargs = cdr(fargs)) {
-
- /* get argument and default */
- p = car(fargs);
- arg = car(p); p = cdr(p);
- def = car(p);
-
- /* bind the auxiliary variable to the initial value */
- if (def) def = xleval(def);
- xlbind(arg,def);
- }
-
- /* make sure there aren't too many arguments */
- if (argc > 0)
- xlfail("too many arguments");
-
- /* restore the stack */
- xlpop();
-}
-
-/* doenter - print trace information on function entry */
-LOCAL void doenter(LVAL sym, int argc, LVAL *argv)
-{
- extern int xltrcindent;
- int i;
-
- /* indent to the current trace level */
- for (i = 0; i < xltrcindent; ++i)
- trcputstr(" ");
- ++xltrcindent;
-
- /* display the function call */
- sprintf(buf,"Entering: %s, Argument list: (",getstring(getpname(sym)));
- trcputstr(buf);
- while (--argc >= 0) {
- trcprin1(*argv++);
- if (argc) trcputstr(" ");
- }
- trcputstr(")\n");
-}
-
-/* doexit - print trace information for function/macro exit */
-LOCAL void doexit(LVAL sym, LVAL val)
-{
- extern int xltrcindent;
- int i;
-
- /* indent to the current trace level */
- --xltrcindent;
- for (i = 0; i < xltrcindent; ++i)
- trcputstr(" ");
-
- /* display the function value */
- sprintf(buf,"Exiting: %s, Value: ",getstring(getpname(sym)));
- trcputstr(buf);
- trcprin1(val);
- trcputstr("\n");
-}
-
-/* member - is 'x' a member of 'list'? */
-LOCAL int member( LVAL x, LVAL list)
-{
- for (; consp(list); list = cdr(list))
- if (x == car(list))
- return (TRUE);
- return (FALSE);
-}
-
-/* xlunbound - signal an unbound variable error */
-void xlunbound(LVAL sym)
-{
- xlcerror("try evaluating symbol again","unbound variable",sym);
-}
-
-/* xlfunbound - signal an unbound function error */
-void xlfunbound(LVAL sym)
-{
- xlcerror("try evaluating symbol again","unbound function",sym);
-}
-
-/* xlstkoverflow - signal a stack overflow error */
-void xlstkoverflow(void)
-{
- xlabort("evaluation stack overflow");
-}
-
-/* xlargstkoverflow - signal an argument stack overflow error */
-void xlargstkoverflow(void)
-{
- xlabort("argument stack overflow");
-}
-
-/* badarglist - report a bad argument list error */
-LOCAL void badarglist(void)
-{
- xlfail("bad formal argument list");
-}
diff --git a/lib-src/libnyquist/xlisp/xlextstart.c b/lib-src/libnyquist/xlisp/xlextstart.c
deleted file mode 100644
index e69de29..0000000
diff --git a/lib-src/libnyquist/xlisp/xlfio.c b/lib-src/libnyquist/xlisp/xlfio.c
deleted file mode 100644
index 0a58796..0000000
--- a/lib-src/libnyquist/xlisp/xlfio.c
+++ /dev/null
@@ -1,694 +0,0 @@
-/* xlfio.c - xlisp file i/o */
-/* Copyright (c) 1985, by David Michael Betz
- All Rights Reserved
- Permission is granted for unrestricted non-commercial use */
-
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm eliminate some compiler warnings
- */
-
-
-#include "switches.h"
-
-#include <string.h>
-
-#include "xlisp.h"
-
-/* do some sanity checking: */
-#ifndef XL_BIG_ENDIAN
-#ifndef XL_LITTLE_ENDIAN
-configuration error -- either XL_BIG_ or XL_LITTLE_ENDIAN must be defined
-in xlisp.h
-#endif
-#endif
-#ifdef XL_BIG_ENDIAN
-#ifdef XL_LITTLE_ENDIAN
-configuration error -- both XL_BIG_ and XL_LITTLE_ENDIAN are defined!
-#endif
-#endif
-
-/* forward declarations */
-FORWARD LOCAL LVAL getstroutput(LVAL stream);
-FORWARD LOCAL LVAL printit(int pflag, int tflag);
-FORWARD LOCAL LVAL flatsize(int pflag);
-
-/* xread - read an expression */
-LVAL xread(void)
-{
- LVAL fptr,eof,rflag,val;
-
- /* get file pointer and eof value */
- fptr = (moreargs() ? xlgetfile() : getvalue(s_stdin));
- eof = (moreargs() ? xlgetarg() : NIL);
- rflag = (moreargs() ? xlgetarg() : NIL);
- xllastarg();
-
- /* read an expression */
- if (!xlread(fptr,&val,rflag != NIL))
- val = eof;
-
- /* return the expression */
- return (val);
-}
-
-/* xprint - built-in function 'print' */
-LVAL xprint(void)
-{
- return (printit(TRUE,TRUE));
-}
-
-/* xprin1 - built-in function 'prin1' */
-LVAL xprin1(void)
-{
- return (printit(TRUE,FALSE));
-}
-
-/* xprinc - built-in function princ */
-LVAL xprinc(void)
-{
- return (printit(FALSE,FALSE));
-}
-
-/* xterpri - terminate the current print line */
-LVAL xterpri(void)
-{
- LVAL fptr;
-
- /* get file pointer */
- fptr = (moreargs() ? xlgetfile() : getvalue(s_stdout));
- xllastarg();
-
- /* terminate the print line and return nil */
- xlterpri(fptr);
- return (NIL);
-}
-
-/* printit - common print function */
-LOCAL LVAL printit(int pflag, int tflag)
-{
- LVAL fptr,val;
-
- /* get expression to print and file pointer */
- val = xlgetarg();
- fptr = (moreargs() ? xlgetfile() : getvalue(s_stdout));
- xllastarg();
-
- /* print the value */
- xlprint(fptr,val,pflag);
-
- /* terminate the print line if necessary */
- if (tflag)
- xlterpri(fptr);
-
- /* return the result */
- return (val);
-}
-
-/* xflatsize - compute the size of a printed representation using prin1 */
-LVAL xflatsize(void)
-{
- return (flatsize(TRUE));
-}
-
-/* xflatc - compute the size of a printed representation using princ */
-LVAL xflatc(void)
-{
- return (flatsize(FALSE));
-}
-
-/* flatsize - compute the size of a printed expression */
-LOCAL LVAL flatsize(int pflag)
-{
- LVAL val;
-
- /* get the expression */
- val = xlgetarg();
- xllastarg();
-
- /* print the value to compute its size */
- xlfsize = 0;
- xlprint(NIL,val,pflag);
-
- /* return the length of the expression */
- return (cvfixnum((FIXTYPE)xlfsize));
-}
-
-/* xlopen - open a text or binary file */
-LVAL xlopen(int binaryflag)
-{
- char *name,*mode=NULL;
- FILE *fp;
- LVAL dir;
-
- /* get the file name and direction */
- name = (char *)getstring(xlgetfname());
- if (!xlgetkeyarg(k_direction,&dir))
- dir = k_input;
-
- /* get the mode */
- if (dir == k_input)
- mode = "r";
- else if (dir == k_output)
- mode = "w";
- else
- xlerror("bad direction",dir);
-
- /* try to open the file */
- if (binaryflag) {
- fp = osbopen(name,mode);
- } else {
- fp = osaopen(name,mode);
- }
- return (fp ? cvfile(fp) : NIL);
-}
-
-
-/* xopen - open a file */
-LVAL xopen(void)
-{
- return xlopen(FALSE);
-}
-
-/* xbopen - open a binary file */
-LVAL xbopen(void)
-{
- return xlopen(TRUE);
-}
-
-/* xclose - close a file */
-LVAL xclose(void)
-{
- LVAL fptr;
-
- /* get file pointer */
- fptr = xlgastream();
- xllastarg();
-
- /* make sure the file exists */
- if (getfile(fptr) == NULL)
- xlfail("file not open");
-
- /* close the file */
- osclose(getfile(fptr));
- setfile(fptr,NULL);
-
- /* return nil */
- return (NIL);
-}
-
-/* xrdchar - read a character from a file */
-LVAL xrdchar(void)
-{
- LVAL fptr;
- int ch;
-
- /* get file pointer */
- fptr = (moreargs() ? xlgetfile() : getvalue(s_stdin));
- xllastarg();
-
- /* get character and check for eof */
- return ((ch = xlgetc(fptr)) == EOF ? NIL : cvchar(ch));
-}
-
-/* xrdint - read an integer from a file */
-/* positive byte count means big-endian, negative is little-endian */
-LVAL xrdint(void)
-{
- LVAL fptr;
- unsigned char b[4];
- long i;
- int n = 4;
- int index = 0; /* where to start in array */
- int incr = 1; /* how to step through array */
- int rslt;
-
- /* get file pointer */
- fptr = (moreargs() ? xlgetfile() : getvalue(s_stdin));
- /* get byte count */
- if (moreargs()) {
- LVAL count = typearg(fixp);
- n = getfixnum(count);
- if (n < 0) {
- n = -n;
- index = n - 1;
- incr = -1;
- }
- if (n > 4) {
- xlerror("4-byte limit", count);
- }
- }
- xllastarg();
- for (i = 0; i < n; i++) {
- int ch = xlgetc(fptr);
- if (ch == EOF) return NIL;
- b[index] = ch;
- index += incr;
- }
- /* build result, b is now big-endian */
- /* extend sign bit for short integers */
- rslt = ((b[0] & 0x80) ? -1 : 0);
- for (i = 0; i < n; i++) {
- rslt = (rslt << 8) + b[i];
- }
- /* return integer result */
- return cvfixnum(rslt);
-}
-
-
-/* xrdfloat - read a float from a file */
-LVAL xrdfloat(void)
-{
- LVAL fptr;
- union {
- char b[8];
- float f;
- double d;
- } rslt;
- int n = 4;
- int i;
- int index = 3; /* where to start in array */
- int incr = -1; /* how to step through array */
-
- /* get file pointer */
- fptr = (moreargs() ? xlgetfile() : getvalue(s_stdin));
- /* get byte count */
- if (moreargs()) {
- LVAL count = typearg(fixp);
- n = getfixnum(count);
- if (n < 0) {
- n = -n;
- index = 0;
- incr = 1;
- }
- if (n != 4 && n != 8) {
- xlerror("must be 4 or 8 bytes", count);
- }
- }
- xllastarg();
-
-#ifdef XL_BIG_ENDIAN
- /* flip the bytes */
- index = n - 1 - index;
- incr = -incr;
-#endif
- for (i = 0; i < n; i++) {
- int ch = xlgetc(fptr);
- if (ch == EOF) return NIL;
- rslt.b[index] = ch;
- index += incr;
- }
- /* return result */
- return cvflonum(n == 4 ? rslt.f : rslt.d);
-}
-
-
-/* xrdbyte - read a byte from a file */
-LVAL xrdbyte(void)
-{
- LVAL fptr;
- int ch;
-
- /* get file pointer */
- fptr = (moreargs() ? xlgetfile() : getvalue(s_stdin));
- xllastarg();
-
- /* get character and check for eof */
- return ((ch = xlgetc(fptr)) == EOF ? NIL : cvfixnum((FIXTYPE)ch));
-}
-
-/* xpkchar - peek at a character from a file */
-LVAL xpkchar(void)
-{
- LVAL flag,fptr;
- int ch;
-
- /* peek flag and get file pointer */
- flag = (moreargs() ? xlgetarg() : NIL);
- fptr = (moreargs() ? xlgetfile() : getvalue(s_stdin));
- xllastarg();
-
- /* skip leading white space and get a character */
- if (flag)
- while ((ch = xlpeek(fptr)) != EOF && isspace(ch))
- xlgetc(fptr);
- else
- ch = xlpeek(fptr);
-
- /* return the character */
- return (ch == EOF ? NIL : cvchar(ch));
-}
-
-/* xwrchar - write a character to a file */
-LVAL xwrchar(void)
-{
- LVAL fptr,chr;
-
- /* get the character and file pointer */
- chr = xlgachar();
- fptr = (moreargs() ? xlgetfile() : getvalue(s_stdout));
- xllastarg();
-
- /* put character to the file */
- xlputc(fptr,getchcode(chr));
-
- /* return the character */
- return (chr);
-}
-
-/* xwrbyte - write a byte to a file */
-LVAL xwrbyte(void)
-{
- LVAL fptr,chr;
-
- /* get the byte and file pointer */
- chr = xlgafixnum();
- fptr = (moreargs() ? xlgetfile() : getvalue(s_stdout));
- xllastarg();
-
- /* put byte to the file */
- xlputc(fptr,(int)getfixnum(chr));
-
- /* return the character */
- return (chr);
-}
-
-/* xwrint - write an integer to a file */
-/* positive count means write big-endian */
-LVAL xwrint(void)
-{
- LVAL val, fptr;
- unsigned char b[4];
- long i;
- int n = 4;
- int index = 3; /* where to start in array */
- int incr = -1; /* how to step through array */
- int v;
- /* get the int and file pointer and optional byte count */
- val = xlgafixnum();
- v = getfixnum(val);
- fptr = (moreargs() ? xlgetfile() : getvalue(s_stdout));
- if (moreargs()) {
- LVAL count = typearg(fixp);
- n = getfixnum(count);
- index = n - 1;
- if (n < 0) {
- n = -n;
- index = 0;
- incr = 1;
- }
- if (n > 4) {
- xlerror("4-byte limit", count);
- }
- }
- xllastarg();
- /* build output b as little-endian */
- for (i = 0; i < n; i++) {
- b[i] = (unsigned char) v;
- v = v >> 8;
- }
-
- /* put bytes to the file */
- while (n) {
- n--;
- xlputc(fptr, b[index]);
- index += incr;
- }
-
- /* return the integer */
- return val;
-}
-
-/* xwrfloat - write a float to a file */
-LVAL xwrfloat(void)
-{
- LVAL val, fptr;
- union {
- char b[8];
- float f;
- double d;
- } v;
- int n = 4;
- int i;
- int index = 3; /* where to start in array */
- int incr = -1; /* how to step through array */
-
- /* get the float and file pointer and optional byte count */
- val = xlgaflonum();
- fptr = (moreargs() ? xlgetfile() : getvalue(s_stdout));
- if (moreargs()) {
- LVAL count = typearg(fixp);
- n = getfixnum(count);
- if (n < 0) {
- n = -n;
- index = 0;
- incr = 1;
- }
- if (n != 4 && n != 8) {
- xlerror("must be 4 or 8 bytes", count);
- }
- }
- xllastarg();
-
-#ifdef XL_BIG_ENDIAN
- /* flip the bytes */
- index = n - 1 - index;
- incr = -incr;
-#endif
- /* build output v.b */
- if (n == 4) v.f = (float) getflonum(val);
- else v.d = getflonum(val);
-
- /* put bytes to the file */
- for (i = 0; i < n; i++) {
- xlputc(fptr, v.b[index]);
- index += incr;
- }
-
- /* return the flonum */
- return val;
-}
-
-/* xreadline - read a line from a file */
-LVAL xreadline(void)
-{
- unsigned char buf[STRMAX+1],*p,*sptr;
- LVAL fptr,str,newstr;
- int len,blen,ch;
-
- /* protect some pointers */
- xlsave1(str);
-
- /* get file pointer */
- fptr = (moreargs() ? xlgetfile() : getvalue(s_stdin));
- xllastarg();
-
- /* get character and check for eof */
- len = blen = 0; p = buf;
- while ((ch = xlgetc(fptr)) != EOF && ch != '\n') {
-
- /* check for buffer overflow */
- if (blen >= STRMAX) {
- newstr = new_string(len + STRMAX + 1);
- sptr = getstring(newstr); *sptr = '\0';
- if (str) strcat((char *) sptr, (char *) getstring(str));
- *p = '\0'; strcat((char *) sptr, (char *) buf);
- p = buf; blen = 0;
- len += STRMAX;
- str = newstr;
- }
-
- /* store the character */
- *p++ = ch; ++blen;
- }
-
- /* check for end of file */
- if (len == 0 && p == buf && ch == EOF) {
- xlpop();
- return (NIL);
- }
-
- /* append the last substring */
- if (str == NIL || blen) {
- newstr = new_string(len + blen + 1);
- sptr = getstring(newstr); *sptr = '\0';
- if (str) strcat((char *) sptr, (char *) getstring(str));
- *p = '\0'; strcat((char *) sptr, (char *) buf);
- str = newstr;
- }
-
- /* restore the stack */
- xlpop();
-
- /* return the string */
- return (str);
-}
-
-
-/* xmkstrinput - make a string input stream */
-LVAL xmkstrinput(void)
-{
- int start,end,len,i;
- unsigned char *str;
- LVAL string,val;
-
- /* protect the return value */
- xlsave1(val);
-
- /* get the string and length */
- string = xlgastring();
- str = getstring(string);
- len = getslength(string) - 1;
-
- /* get the starting offset */
- if (moreargs()) {
- val = xlgafixnum();
- start = (int)getfixnum(val);
- }
- else start = 0;
-
- /* get the ending offset */
- if (moreargs()) {
- val = xlgafixnum();
- end = (int)getfixnum(val);
- }
- else end = len;
- xllastarg();
-
- /* check the bounds */
- if (start < 0 || start > len)
- xlerror("string index out of bounds",cvfixnum((FIXTYPE)start));
- if (end < 0 || end > len)
- xlerror("string index out of bounds",cvfixnum((FIXTYPE)end));
-
- /* make the stream */
- val = newustream();
-
- /* copy the substring into the stream */
- for (i = start; i < end; ++i)
- xlputc(val,str[i]);
-
- /* restore the stack */
- xlpop();
-
- /* return the new stream */
- return (val);
-}
-
-/* xmkstroutput - make a string output stream */
-LVAL xmkstroutput(void)
-{
- return (newustream());
-}
-
-/* xgetstroutput - get output stream string */
-LVAL xgetstroutput(void)
-{
- LVAL stream;
- stream = xlgaustream();
- xllastarg();
- return (getstroutput(stream));
-}
-
-/* xgetlstoutput - get output stream list */
-LVAL xgetlstoutput(void)
-{
- LVAL stream,val;
-
- /* get the stream */
- stream = xlgaustream();
- xllastarg();
-
- /* get the output character list */
- val = gethead(stream);
-
- /* empty the character list */
- sethead(stream,NIL);
- settail(stream,NIL);
-
- /* return the list */
- return (val);
-}
-
-/* xformat - formatted output function */
-LVAL xformat(void)
-{
- unsigned char *fmt;
- LVAL stream,val;
- int ch;
-
- /* protect stream in case it is a new ustream */
- xlsave1(stream);
-
- /* get the stream and format string */
- stream = xlgetarg();
- if (stream == NIL)
- val = stream = newustream();
- else {
- if (stream == s_true)
- stream = getvalue(s_stdout);
- else if (!streamp(stream) && !ustreamp(stream))
- xlbadtype(stream);
- val = NIL;
- }
- fmt = getstring(xlgastring());
-
- /* process the format string */
- while ((ch = *fmt++))
- if (ch == '~') {
- switch (*fmt++) {
- case '\0':
- xlerror("expecting a format directive",cvstring((char *) (fmt-1)));
- case 'a': case 'A':
- xlprint(stream,xlgetarg(),FALSE);
- break;
- case 's': case 'S':
- xlprint(stream,xlgetarg(),TRUE);
- break;
- case '%':
- xlterpri(stream);
- break;
- case '~':
- xlputc(stream,'~');
- break;
- case '\n':
- while (*fmt && *fmt != '\n' && isspace(*fmt))
- ++fmt;
- break;
- default:
- xlerror("unknown format directive",cvstring((char *) (fmt-1)));
- }
- }
- else
- xlputc(stream,ch);
-
- /* return the value */
- if (val) val = getstroutput(val);
- xlpop();
- return val;
-}
-
-/* getstroutput - get the output stream string (internal) */
-LOCAL LVAL getstroutput(LVAL stream)
-{
- unsigned char *str;
- LVAL next,val;
- int len,ch;
-
- /* compute the length of the stream */
- for (len = 0, next = gethead(stream); next != NIL; next = cdr(next))
- ++len;
-
- /* create a new string */
- val = new_string(len + 1);
-
- /* copy the characters into the new string */
- str = getstring(val);
- while ((ch = xlgetc(stream)) != EOF)
- *str++ = ch;
- *str = '\0';
-
- /* return the string */
- return (val);
-}
-
diff --git a/lib-src/libnyquist/xlisp/xlftab.c b/lib-src/libnyquist/xlisp/xlftab.c
deleted file mode 100644
index 3857d63..0000000
--- a/lib-src/libnyquist/xlisp/xlftab.c
+++ /dev/null
@@ -1,486 +0,0 @@
-/* xlftab.c - xlisp function table */
-/* Copyright (c) 1985, by David Michael Betz
- All Rights Reserved
- Permission is granted for unrestricted non-commercial use
-
-HISTORY
-23-Apr-03 Mazzoni
- Eliminated some compiler warnings
- 1-Apr-88 Dale Amon at CSD
- Added include file hook for local language extensions:
- localdefs.h and localptrs.h
-
-*/
-
-#include "switches.h"
-#include "xlisp.h"
-#ifndef NO_PROTOTYPES_IN_XLISP_H
-/* external functions */
-extern LVAL
- xbisubr(void),xbifsubr(void),
- rmhash(void),rmquote(void),rmdquote(void),rmbquote(void),rmcomma(void),
- clnew(void),clisnew(void),clanswer(void),
- obisnew(void),obclass(void),obshow(void),
- rmlpar(void),rmrpar(void),rmsemi(void),
- xeval(void),xapply(void),xfuncall(void),xquote(void),xfunction(void),xbquote(void),
- xlambda(void),xset(void),xsetq(void),xsetf(void),xdefun(void),xdefmacro(void),
- xgensym(void),xmakesymbol(void),xintern(void),
- xsymname(void),xsymvalue(void),xsymplist(void),
- xget(void),xputprop(void),xremprop(void),
- xhash(void),xmkarray(void),xaref(void),
- xcar(void),xcdr(void),
- xcaar(void),xcadr(void),xcdar(void),xcddr(void),
- xcaaar(void),xcaadr(void),xcadar(void),xcaddr(void),
- xcdaar(void),xcdadr(void),xcddar(void),xcdddr(void),
- xcaaaar(void),xcaaadr(void),xcaadar(void),xcaaddr(void),
- xcadaar(void),xcadadr(void),xcaddar(void),xcadddr(void),
- xcdaaar(void),xcdaadr(void),xcdadar(void),xcdaddr(void),
- xcddaar(void),xcddadr(void),xcdddar(void),xcddddr(void),
- xcons(void),xlist(void),xappend(void),xreverse(void),xlast(void),xnth(void),xnthcdr(void),
- xmember(void),xassoc(void),xsubst(void),xsublis(void),xlength(void),xsort(void),
- xremove(void),xremif(void),xremifnot(void),
- xmapc(void),xmapcar(void),xmapl(void),xmaplist(void),
- xrplca(void),xrplcd(void),xnconc(void),
- xdelete(void),xdelif(void),xdelifnot(void),
- xatom(void),xsymbolp(void),xnumberp(void),xboundp(void),xnull(void),xlistp(void),xendp(void),xconsp(void),
- xeq(void),xeql(void),xequal(void),
- xcond(void),xcase(void),xand(void),xor(void),xlet(void),xletstar(void),xif(void),
- xprog(void),xprogstar(void),xprog1(void),xprog2(void),xprogn(void),xgo(void),xreturn(void),
- xcatch(void),xthrow(void),
- xerror(void),xcerror(void),xbreak(void),
- xcleanup(void),xtoplevel(void),xcontinue(void),xerrset(void),
- xbaktrace(void),xevalhook(void),
- xdo(void),xdostar(void),xdolist(void),xdotimes(void),
- xminusp(void),xzerop(void),xplusp(void),xevenp(void),xoddp(void),
- xfix(void),xfloat(void),
- xgcd(void),xadd(void),xsub(void),xmul(void),xdiv(void),xrem(void),xmin(void),xmax(void),xabs(void),
- xadd1(void),xsub1(void),xlogand(void),xlogior(void),xlogxor(void),xlognot(void),
- xsin(void),xcos(void),xtan(void),xexpt(void),xexp(void),xsqrt(void),xrand(void),
- xlss(void),xleq(void),xequ(void),xneq(void),xgeq(void),xgtr(void),
- xstrcat(void),xsubseq(void),xstring(void),xchar(void),
- xread(void),xprint(void),xprin1(void),xprinc(void),xterpri(void),
- xflatsize(void),xflatc(void),
- xopen(void),xbopen(void),xclose(void),xrdchar(void),xpkchar(void),xwrchar(void),xreadline(void),
- xrdint(void),xwrint(void),xrdfloat(void),xwrfloat(void),
- xload(void),xtranscript(void),
- xtype(void),xquit(void),xexit(void),xpeek(void),xpoke(void),xaddrs(void),
- xvector(void),xblock(void),xrtnfrom(void),xtagbody(void),
- xpsetq(void),xflet(void),xlabels(void),xmacrolet(void),xunwindprotect(void),xpp(void),
- xstrlss(void),xstrleq(void),xstreql(void),xstrneq(void),xstrgeq(void),xstrgtr(void),
- xstrilss(void),xstrileq(void),xstrieql(void),xstrineq(void),xstrigeq(void),xstrigtr(void),
- xupcase(void),xdowncase(void),xnupcase(void),xndowncase(void),
- xtrim(void),xlefttrim(void),xrighttrim(void),
- xuppercasep(void),xlowercasep(void),xbothcasep(void),xdigitp(void),xalphanumericp(void),
- xcharcode(void),xcodechar(void),xchupcase(void),xchdowncase(void),xdigitchar(void),
- xchrlss(void),xchrleq(void),xchreql(void),xchrneq(void),xchrgeq(void),xchrgtr(void),
- xchrilss(void),xchrileq(void),xchrieql(void),xchrineq(void),xchrigeq(void),xchrigtr(void),
- xintegerp(void),xfloatp(void),xstringp(void),xarrayp(void),xstreamp(void),xobjectp(void),
- xwhen(void),xunless(void),xloop(void),
- xsymfunction(void),xfboundp(void),xsend(void),xsendsuper(void),
- xprogv(void),xrdbyte(void),xwrbyte(void),xformat(void),
- xcharp(void),xcharint(void),xintchar(void),
- xmkstrinput(void),xmkstroutput(void),xgetstroutput(void),xgetlstoutput(void),
- xgetlambda(void),xmacroexpand(void),x1macroexpand(void),
- xinfo(void), //Added by Ning Hu Apr.2001
- xsetdir(void), //Added by Ning Hu May.2001
- xtrace(void),xuntrace(void),xprofile(void),xstrsearch(void), xsetupconsole(void);
-#endif
-
-/* functions specific to xldmem.c */
-LVAL xgc(void),xexpand(void),xalloc(void),xmem(void);
-#ifdef SAVERESTORE
-LVAL xsave(void),xrestore(void);
-#endif
-
-/* include system dependant definitions */
-#include "osdefs.h"
-#include "localdefs.h"
-
-/* SUBR/FSUBR indicator */
-#define S SUBR
-#define F FSUBR
-
-/* forward declarations */
-LOCAL LVAL xnotimp(void);
-
-/* the function table */
-FUNDEF funtab[] = {
-
- /* read macro functions */
-{ NULL, S, rmhash }, /* 0 */
-{ NULL, S, rmquote }, /* 1 */
-{ NULL, S, rmdquote }, /* 2 */
-{ NULL, S, rmbquote }, /* 3 */
-{ NULL, S, rmcomma }, /* 4 */
-{ NULL, S, rmlpar }, /* 5 */
-{ NULL, S, rmrpar }, /* 6 */
-{ NULL, S, rmsemi }, /* 7 */
-{ NULL, S, xnotimp }, /* 8 */
-{ NULL, S, xnotimp }, /* 9 */
-
- /* methods */
-{ NULL, S, clnew }, /* 10 */
-{ NULL, S, clisnew }, /* 11 */
-{ NULL, S, clanswer }, /* 12 */
-{ NULL, S, obisnew }, /* 13 */
-{ NULL, S, obclass }, /* 14 */
-{ NULL, S, obshow }, /* 15 */
-{ NULL, S, xnotimp }, /* 16 */
-{ NULL, S, xnotimp }, /* 17 */
-{ NULL, S, xnotimp }, /* 18 */
-{ NULL, S, xnotimp }, /* 19 */
-
- /* evaluator functions */
-{ "EVAL", S, xeval }, /* 20 */
-{ "APPLY", S, xapply }, /* 21 */
-{ "FUNCALL", S, xfuncall }, /* 22 */
-{ "QUOTE", F, xquote }, /* 23 */
-{ "FUNCTION", F, xfunction }, /* 24 */
-{ "BACKQUOTE", F, xbquote }, /* 25 */
-{ "LAMBDA", F, xlambda }, /* 26 */
-
- /* symbol functions */
-{ "SET", S, xset }, /* 27 */
-{ "SETQ", F, xsetq }, /* 28 */
-{ "SETF", F, xsetf }, /* 29 */
-{ "DEFUN", F, xdefun }, /* 30 */
-{ "DEFMACRO", F, xdefmacro }, /* 31 */
-{ "GENSYM", S, xgensym }, /* 32 */
-{ "MAKE-SYMBOL", S, xmakesymbol }, /* 33 */
-{ "INTERN", S, xintern }, /* 34 */
-{ "SYMBOL-NAME", S, xsymname }, /* 35 */
-{ "SYMBOL-VALUE", S, xsymvalue }, /* 36 */
-{ "SYMBOL-PLIST", S, xsymplist }, /* 37 */
-{ "GET", S, xget }, /* 38 */
-{ "PUTPROP", S, xputprop }, /* 39 */
-{ "REMPROP", S, xremprop }, /* 40 */
-{ "HASH", S, xhash }, /* 41 */
-
- /* array functions */
-{ "MAKE-ARRAY", S, xmkarray }, /* 42 */
-{ "AREF", S, xaref }, /* 43 */
-
- /* list functions */
-{ "CAR", S, xcar }, /* 44 */
-{ "CDR", S, xcdr }, /* 45 */
-
-{ "CAAR", S, xcaar }, /* 46 */
-{ "CADR", S, xcadr }, /* 47 */
-{ "CDAR", S, xcdar }, /* 48 */
-{ "CDDR", S, xcddr }, /* 49 */
-
-{ "CAAAR", S, xcaaar }, /* 50 */
-{ "CAADR", S, xcaadr }, /* 51 */
-{ "CADAR", S, xcadar }, /* 52 */
-{ "CADDR", S, xcaddr }, /* 53 */
-{ "CDAAR", S, xcdaar }, /* 54 */
-{ "CDADR", S, xcdadr }, /* 55 */
-{ "CDDAR", S, xcddar }, /* 56 */
-{ "CDDDR", S, xcdddr }, /* 57 */
-
-{ "CAAAAR", S, xcaaaar }, /* 58 */
-{ "CAAADR", S, xcaaadr }, /* 59 */
-{ "CAADAR", S, xcaadar }, /* 60 */
-{ "CAADDR", S, xcaaddr }, /* 61 */
-{ "CADAAR", S, xcadaar }, /* 62 */
-{ "CADADR", S, xcadadr }, /* 63 */
-{ "CADDAR", S, xcaddar }, /* 64 */
-{ "CADDDR", S, xcadddr }, /* 65 */
-{ "CDAAAR", S, xcdaaar }, /* 66 */
-{ "CDAADR", S, xcdaadr }, /* 67 */
-{ "CDADAR", S, xcdadar }, /* 68 */
-{ "CDADDR", S, xcdaddr }, /* 69 */
-{ "CDDAAR", S, xcddaar }, /* 70 */
-{ "CDDADR", S, xcddadr }, /* 71 */
-{ "CDDDAR", S, xcdddar }, /* 72 */
-{ "CDDDDR", S, xcddddr }, /* 73 */
-
-{ "CONS", S, xcons }, /* 74 */
-{ "LIST", S, xlist }, /* 75 */
-{ "APPEND", S, xappend }, /* 76 */
-{ "REVERSE", S, xreverse }, /* 77 */
-{ "LAST", S, xlast }, /* 78 */
-{ "NTH", S, xnth }, /* 79 */
-{ "NTHCDR", S, xnthcdr }, /* 80 */
-{ "MEMBER", S, xmember }, /* 81 */
-{ "ASSOC", S, xassoc }, /* 82 */
-{ "SUBST", S, xsubst }, /* 83 */
-{ "SUBLIS", S, xsublis }, /* 84 */
-{ "REMOVE", S, xremove }, /* 85 */
-{ "LENGTH", S, xlength }, /* 86 */
-{ "MAPC", S, xmapc }, /* 87 */
-{ "MAPCAR", S, xmapcar }, /* 88 */
-{ "MAPL", S, xmapl }, /* 89 */
-{ "MAPLIST", S, xmaplist }, /* 90 */
-
- /* destructive list functions */
-{ "RPLACA", S, xrplca }, /* 91 */
-{ "RPLACD", S, xrplcd }, /* 92 */
-{ "NCONC", S, xnconc }, /* 93 */
-{ "DELETE", S, xdelete }, /* 94 */
-
- /* predicate functions */
-{ "ATOM", S, xatom }, /* 95 */
-{ "SYMBOLP", S, xsymbolp }, /* 96 */
-{ "NUMBERP", S, xnumberp }, /* 97 */
-{ "BOUNDP", S, xboundp }, /* 98 */
-{ "NULL", S, xnull }, /* 99 */
-{ "LISTP", S, xlistp }, /* 100 */
-{ "CONSP", S, xconsp }, /* 101 */
-{ "MINUSP", S, xminusp }, /* 102 */
-{ "ZEROP", S, xzerop }, /* 103 */
-{ "PLUSP", S, xplusp }, /* 104 */
-{ "EVENP", S, xevenp }, /* 105 */
-{ "ODDP", S, xoddp }, /* 106 */
-{ "EQ", S, xeq }, /* 107 */
-{ "EQL", S, xeql }, /* 108 */
-{ "EQUAL", S, xequal }, /* 109 */
-
- /* special forms */
-{ "COND", F, xcond }, /* 110 */
-{ "CASE", F, xcase }, /* 111 */
-{ "AND", F, xand }, /* 112 */
-{ "OR", F, xor }, /* 113 */
-{ "LET", F, xlet }, /* 114 */
-{ "LET*", F, xletstar }, /* 115 */
-{ "IF", F, xif }, /* 116 */
-{ "PROG", F, xprog }, /* 117 */
-{ "PROG*", F, xprogstar }, /* 118 */
-{ "PROG1", F, xprog1 }, /* 119 */
-{ "PROG2", F, xprog2 }, /* 120 */
-{ "PROGN", F, xprogn }, /* 121 */
-{ "GO", F, xgo }, /* 122 */
-{ "RETURN", F, xreturn }, /* 123 */
-{ "DO", F, xdo }, /* 124 */
-{ "DO*", F, xdostar }, /* 125 */
-{ "DOLIST", F, xdolist }, /* 126 */
-{ "DOTIMES", F, xdotimes }, /* 127 */
-{ "CATCH", F, xcatch }, /* 128 */
-{ "THROW", F, xthrow }, /* 129 */
-
- /* debugging and error handling functions */
-{ "ERROR", S, xerror }, /* 130 */
-{ "CERROR", S, xcerror }, /* 131 */
-{ "BREAK", S, xbreak }, /* 132 */
-{ "CLEAN-UP", S, xcleanup }, /* 133 */
-{ "TOP-LEVEL", S, xtoplevel }, /* 134 */
-{ "CONTINUE", S, xcontinue }, /* 135 */
-{ "ERRSET", F, xerrset }, /* 136 */
-{ "BAKTRACE", S, xbaktrace }, /* 137 */
-{ "EVALHOOK", S, xevalhook }, /* 138 */
-
- /* arithmetic functions */
-{ "TRUNCATE", S, xfix }, /* 139 */
-{ "FLOAT", S, xfloat }, /* 140 */
-{ "+", S, xadd }, /* 141 */
-{ "-", S, xsub }, /* 142 */
-{ "*", S, xmul }, /* 143 */
-{ "/", S, xdiv }, /* 144 */
-{ "1+", S, xadd1 }, /* 145 */
-{ "1-", S, xsub1 }, /* 146 */
-{ "REM", S, xrem }, /* 147 */
-{ "MIN", S, xmin }, /* 148 */
-{ "MAX", S, xmax }, /* 149 */
-{ "ABS", S, xabs }, /* 150 */
-{ "SIN", S, xsin }, /* 151 */
-{ "COS", S, xcos }, /* 152 */
-{ "TAN", S, xtan }, /* 153 */
-{ "EXPT", S, xexpt }, /* 154 */
-{ "EXP", S, xexp }, /* 155 */
-{ "SQRT", S, xsqrt }, /* 156 */
-{ "RANDOM", S, xrand }, /* 157 */
-
- /* bitwise logical functions */
-{ "LOGAND", S, xlogand }, /* 158 */
-{ "LOGIOR", S, xlogior }, /* 159 */
-{ "LOGXOR", S, xlogxor }, /* 160 */
-{ "LOGNOT", S, xlognot }, /* 161 */
-
- /* numeric comparison functions */
-{ "<", S, xlss }, /* 162 */
-{ "<=", S, xleq }, /* 163 */
-{ "=", S, xequ }, /* 164 */
-{ "/=", S, xneq }, /* 165 */
-{ ">=", S, xgeq }, /* 166 */
-{ ">", S, xgtr }, /* 167 */
-
- /* string functions */
-{ "STRCAT", S, xstrcat }, /* 168 */
-{ "SUBSEQ", S, xsubseq }, /* 169 */
-{ "STRING", S, xstring }, /* 170 */
-{ "CHAR", S, xchar }, /* 171 */
-
- /* I/O functions */
-{ "READ", S, xread }, /* 172 */
-{ "PRINT", S, xprint }, /* 173 */
-{ "PRIN1", S, xprin1 }, /* 174 */
-{ "PRINC", S, xprinc }, /* 175 */
-{ "TERPRI", S, xterpri }, /* 176 */
-{ "FLATSIZE", S, xflatsize }, /* 177 */
-{ "FLATC", S, xflatc }, /* 178 */
-
- /* file I/O functions */
-{ "OPEN", S, xopen }, /* 179 */
-{ "FORMAT", S, xformat }, /* 180 */
-{ "CLOSE", S, xclose }, /* 181 */
-{ "READ-CHAR", S, xrdchar }, /* 182 */
-{ "PEEK-CHAR", S, xpkchar }, /* 183 */
-{ "WRITE-CHAR", S, xwrchar }, /* 184 */
-{ "READ-LINE", S, xreadline }, /* 185 */
-
- /* system functions */
-{ "LOAD", S, xload }, /* 186 */
-{ "DRIBBLE", S, xtranscript }, /* 187 */
-
-/* functions specific to xldmem.c */
-{ "GC", S, xgc }, /* 188 */
-{ "EXPAND", S, xexpand }, /* 189 */
-{ "ALLOC", S, xalloc }, /* 190 */
-{ "ROOM", S, xmem }, /* 191 */
-#ifdef SAVERESTORE
-{ "SAVE", S, xsave }, /* 192 */
-{ "RESTORE", S, xrestore }, /* 193 */
-#else
-{ NULL, S, xnotimp }, /* 192 */
-{ NULL, S, xnotimp }, /* 193 */
-#endif
-/* end of functions specific to xldmem.c */
-
-{ "TYPE-OF", S, xtype }, /* 194 */
-{ "EXIT", S, xexit }, /* 195 */
-{ "PEEK", S, xpeek }, /* 196 */
-{ "POKE", S, xpoke }, /* 197 */
-{ "ADDRESS-OF", S, xaddrs }, /* 198 */
-
- /* new functions and special forms */
-{ "VECTOR", S, xvector }, /* 199 */
-{ "BLOCK", F, xblock }, /* 200 */
-{ "RETURN-FROM", F, xrtnfrom }, /* 201 */
-{ "TAGBODY", F, xtagbody }, /* 202 */
-{ "PSETQ", F, xpsetq }, /* 203 */
-{ "FLET", F, xflet }, /* 204 */
-{ "LABELS", F, xlabels }, /* 205 */
-{ "MACROLET", F, xmacrolet }, /* 206 */
-{ "UNWIND-PROTECT", F, xunwindprotect }, /* 207 */
-{ "PPRINT", S, xpp }, /* 208 */
-{ "STRING<", S, xstrlss }, /* 209 */
-{ "STRING<=", S, xstrleq }, /* 210 */
-{ "STRING=", S, xstreql }, /* 211 */
-{ "STRING/=", S, xstrneq }, /* 212 */
-{ "STRING>=", S, xstrgeq }, /* 213 */
-{ "STRING>", S, xstrgtr }, /* 214 */
-{ "STRING-LESSP", S, xstrilss }, /* 215 */
-{ "STRING-NOT-GREATERP", S, xstrileq }, /* 216 */
-{ "STRING-EQUAL", S, xstrieql }, /* 217 */
-{ "STRING-NOT-EQUAL", S, xstrineq }, /* 218 */
-{ "STRING-NOT-LESSP", S, xstrigeq }, /* 219 */
-{ "STRING-GREATERP", S, xstrigtr }, /* 220 */
-{ "INTEGERP", S, xintegerp }, /* 221 */
-{ "FLOATP", S, xfloatp }, /* 222 */
-{ "STRINGP", S, xstringp }, /* 223 */
-{ "ARRAYP", S, xarrayp }, /* 224 */
-{ "STREAMP", S, xstreamp }, /* 225 */
-{ "OBJECTP", S, xobjectp }, /* 226 */
-{ "STRING-UPCASE", S, xupcase }, /* 227 */
-{ "STRING-DOWNCASE", S, xdowncase }, /* 228 */
-{ "NSTRING-UPCASE", S, xnupcase }, /* 229 */
-{ "NSTRING-DOWNCASE", S, xndowncase }, /* 230 */
-{ "STRING-TRIM", S, xtrim }, /* 231 */
-{ "STRING-LEFT-TRIM", S, xlefttrim }, /* 232 */
-{ "STRING-RIGHT-TRIM", S, xrighttrim }, /* 233 */
-{ "WHEN", F, xwhen }, /* 234 */
-{ "UNLESS", F, xunless }, /* 235 */
-{ "LOOP", F, xloop }, /* 236 */
-{ "SYMBOL-FUNCTION", S, xsymfunction }, /* 237 */
-{ "FBOUNDP", S, xfboundp }, /* 238 */
-{ "SEND", S, xsend }, /* 239 */
-{ "SEND-SUPER", S, xsendsuper }, /* 240 */
-{ "PROGV", F, xprogv }, /* 241 */
-{ "CHARACTERP", S, xcharp }, /* 242 */
-{ "CHAR-INT", S, xcharint }, /* 243 */
-{ "INT-CHAR", S, xintchar }, /* 244 */
-{ "READ-BYTE", S, xrdbyte }, /* 245 */
-{ "WRITE-BYTE", S, xwrbyte }, /* 246 */
-{ "MAKE-STRING-INPUT-STREAM", S, xmkstrinput }, /* 247 */
-{ "MAKE-STRING-OUTPUT-STREAM", S, xmkstroutput }, /* 248 */
-{ "GET-OUTPUT-STREAM-STRING", S, xgetstroutput }, /* 249 */
-{ "GET-OUTPUT-STREAM-LIST", S, xgetlstoutput }, /* 250 */
-{ "GCD", S, xgcd }, /* 251 */
-{ "GET-LAMBDA-EXPRESSION", S, xgetlambda }, /* 252 */
-{ "MACROEXPAND", S, xmacroexpand }, /* 253 */
-{ "MACROEXPAND-1", S, x1macroexpand }, /* 254 */
-{ "CHAR<", S, xchrlss }, /* 255 */
-{ "CHAR<=", S, xchrleq }, /* 256 */
-{ "CHAR=", S, xchreql }, /* 257 */
-{ "CHAR/=", S, xchrneq }, /* 258 */
-{ "CHAR>=", S, xchrgeq }, /* 259 */
-{ "CHAR>", S, xchrgtr }, /* 260 */
-{ "CHAR-LESSP", S, xchrilss }, /* 261 */
-{ "CHAR-NOT-GREATERP", S, xchrileq }, /* 262 */
-{ "CHAR-EQUAL", S, xchrieql }, /* 263 */
-{ "CHAR-NOT-EQUAL", S, xchrineq }, /* 264 */
-{ "CHAR-NOT-LESSP", S, xchrigeq }, /* 265 */
-{ "CHAR-GREATERP", S, xchrigtr }, /* 266 */
-{ "UPPER-CASE-P", S, xuppercasep }, /* 267 */
-{ "LOWER-CASE-P", S, xlowercasep }, /* 268 */
-{ "BOTH-CASE-P", S, xbothcasep }, /* 269 */
-{ "DIGIT-CHAR-P", S, xdigitp }, /* 270 */
-{ "ALPHANUMERICP", S, xalphanumericp }, /* 271 */
-{ "CHAR-UPCASE", S, xchupcase }, /* 272 */
-{ "CHAR-DOWNCASE", S, xchdowncase }, /* 273 */
-{ "DIGIT-CHAR", S, xdigitchar }, /* 274 */
-{ "CHAR-CODE", S, xcharcode }, /* 275 */
-{ "CODE-CHAR", S, xcodechar }, /* 276 */
-{ "ENDP", S, xendp }, /* 277 */
-{ "REMOVE-IF", S, xremif }, /* 278 */
-{ "REMOVE-IF-NOT", S, xremifnot }, /* 279 */
-{ "DELETE-IF", S, xdelif }, /* 280 */
-{ "DELETE-IF-NOT", S, xdelifnot }, /* 281 */
-{ "TRACE", F, xtrace }, /* 282 */
-{ "UNTRACE", F, xuntrace }, /* 283 */
-{ "SORT", S, xsort }, /* 284 */
-
-
- /* extra table entries */
-{ "PROFILE", S, xprofile }, /* 285 */
-{ "STRING-SEARCH", S, xstrsearch }, /* 286 */
-{ "QUIT", S, xquit }, /* 287 */
-{ "OPEN-BINARY", S, xbopen }, /* 288 */
-{ "SETUP-CONSOLE", S, xsetupconsole }, /* 289 */
-{ "READ-INT", S, xrdint }, /* 290 */
-{ "READ-FLOAT", S, xrdfloat }, /* 291 */
-{ "WRITE-INT", S, xwrint }, /* 292 */
-{ "WRITE-FLOAT", S, xwrfloat }, /* 293 */
-{ "INFO", S, xinfo }, /* 294 */ /* Ning Hu, Apr 2001 */
-{ NULL, S, xnotimp }, /* 295 */
-{ NULL, S, xnotimp }, /* 296 */
-{ NULL, S, xnotimp }, /* 297 */
-{ NULL, S, xnotimp }, /* 298 */
-{ NULL, S, xnotimp }, /* 299 */
-#ifndef MACINTOSH
-{ "SETDIR", S, xsetdir }, /* 300 */ //Added by Ning Hu May.2001
-#endif
-#ifdef MACINTOSH
-#include "macptrs.h"
-#endif
-
- /* include system dependant function pointers */
-#include "osptrs.h"
-#include "localptrs.h"
-
-{0,0,0} /* end of table marker */
-
-};
-
-/* xnotimp does not return anything on purpose, so disable
- * "no return value" warning
- */
-/* #pragma warning(disable: 4716)*/
-
-/* xnotimp - function table entries that are currently not implemented */
-LOCAL LVAL xnotimp(void)
-{
- xlfail("function not implemented");
- return NIL; /* never happens */
-}
-
diff --git a/lib-src/libnyquist/xlisp/xlglob.c b/lib-src/libnyquist/xlisp/xlglob.c
deleted file mode 100644
index 18a4386..0000000
--- a/lib-src/libnyquist/xlisp/xlglob.c
+++ /dev/null
@@ -1,95 +0,0 @@
-/* xlglobals - xlisp global variables */
-/* Copyright (c) 1985, by David Michael Betz
- All Rights Reserved
- Permission is granted for unrestricted non-commercial use
-
- * 3-Apr-88 Dale Amon at CMU-CSD
- * Added a_extern to xlisp 2.0
- *
- * 18-Oct-87 Dale Amon at CMU-CSD
- * Added global pointer a_extern for node defining new EXTERN
- * node type.
- *
- * 12 Oct 90 RBD Added s_profile, profile_fixnum
- */
-
-
-#include "xlisp.h"
-
-/* symbols */
-LVAL s_true=NIL,obarray=NIL;
-LVAL s_unbound=NIL,s_dot=NIL;
-LVAL s_quote=NIL,s_function=NIL;
-LVAL s_bquote=NIL,s_comma=NIL,s_comat=NIL;
-LVAL s_evalhook=NIL,s_applyhook=NIL,s_tracelist;
-LVAL s_lambda=NIL,s_macro=NIL;
-LVAL s_stdin=NIL,s_stdout=NIL,s_stderr=NIL,s_debugio=NIL,s_traceout=NIL;
-LVAL s_rtable=NIL;
-LVAL s_tracenable=NIL,s_tlimit=NIL,s_breakenable=NIL;
-LVAL s_loadingfiles=NIL;
-LVAL s_profile = NIL, profile_fixnum = NIL;
-LVAL s_setf=NIL,s_car=NIL,s_cdr=NIL,s_nth=NIL,s_aref=NIL,s_get=NIL;
-LVAL s_svalue=NIL,s_sfunction=NIL,s_splist=NIL;
-LVAL s_eql=NIL,s_gcflag=NIL,s_gchook=NIL;
-LVAL s_ifmt=NIL,s_ffmt=NIL;
-LVAL s_1plus=NIL,s_2plus=NIL,s_3plus=NIL;
-LVAL s_1star=NIL,s_2star=NIL,s_3star=NIL;
-LVAL s_minus=NIL,s_printcase=NIL;
-LVAL s_search_path=NIL;
-
-/* keywords */
-LVAL k_test=NIL,k_tnot=NIL;
-LVAL k_wspace=NIL,k_const=NIL,k_nmacro=NIL,k_tmacro=NIL;
-LVAL k_sescape=NIL,k_mescape=NIL;
-LVAL k_direction=NIL,k_input=NIL,k_output=NIL;
-LVAL k_start=NIL,k_end=NIL,k_1start=NIL,k_1end=NIL;
-LVAL k_2start=NIL,k_2end=NIL,k_count=NIL,k_key=NIL;
-LVAL k_verbose=NIL,k_print=NIL;
-LVAL k_upcase=NIL,k_downcase=NIL;
-
-/* lambda list keywords */
-LVAL lk_optional=NIL,lk_rest=NIL,lk_key=NIL,lk_aux=NIL;
-LVAL lk_allow_other_keys=NIL;
-
-/* type names */
-LVAL a_subr=NIL,a_fsubr=NIL;
-LVAL a_cons=NIL,a_symbol=NIL,a_fixnum=NIL,a_flonum=NIL;
-LVAL a_string=NIL,a_object=NIL,a_stream=NIL,a_vector=NIL;
-LVAL a_extern = NIL;
-LVAL a_closure=NIL,a_char=NIL,a_ustream=NIL;
-
-/* evaluation variables */
-LVAL **xlstack = NULL,**xlstkbase = NULL,**xlstktop = NULL;
-LVAL xlenv=NIL,xlfenv=NIL,xldenv=NIL;
-
-/* argument stack */
-LVAL *xlargstkbase = NULL; /* argument stack base */
-LVAL *xlargstktop = NULL; /* argument stack top */
-LVAL *xlfp = NULL; /* argument frame pointer */
-LVAL *xlsp = NULL; /* argument stack pointer */
-LVAL *xlargv = NULL; /* current argument vector */
-int xlargc = 0; /* current argument count */
-
-/* exception handling variables */
-XLCONTEXT *xlcontext = NULL; /* current exception handler */
-XLCONTEXT *xltarget = NULL; /* target context (for xljump) */
-LVAL xlvalue=NIL; /* exception value (for xljump) */
-int xlmask=0; /* exception type (for xljump) */
-
-/* debugging variables */
-int xldebug = 0; /* debug level */
-int xlsample = 0; /* control character sample rate */
-int xltrcindent = 0; /* trace indent level */
-
-/* gensym variables */
-char gsprefix[STRMAX+1] = { 'G',0 }; /* gensym prefix string */
-int gsnumber = 1; /* gensym number */
-
-/* i/o variables */
-int xlfsize = 0; /* flat size of current print call */
-FILE *tfp = NULL; /* transcript file pointer */
-
-/* general purpose string buffer */
-char buf[STRMAX+1] = { 0 };
-
-int xlatomcount = 0; /* how many atoms are there? */
diff --git a/lib-src/libnyquist/xlisp/xlimage.c b/lib-src/libnyquist/xlisp/xlimage.c
deleted file mode 100644
index 23facca..0000000
--- a/lib-src/libnyquist/xlisp/xlimage.c
+++ /dev/null
@@ -1,403 +0,0 @@
-/* xlimage - xlisp memory image save/restore functions */
-/* Copyright (c) 1985, by David Michael Betz
- All Rights Reserved
- Permission is granted for unrestricted non-commercial use */
-
-#include "stdlib.h"
-#include "string.h"
-#include "xlisp.h"
-
-#ifdef SAVERESTORE
-
-/* external variables */
-extern LVAL obarray,s_gchook,s_gcflag;
-extern long nnodes,nfree,total;
-extern int anodes,nsegs,gccalls;
-extern struct segment *segs,*lastseg,*fixseg,*charseg;
-extern XLCONTEXT *xlcontext;
-extern LVAL fnodes;
-extern struct xtype_desc_struct desc_table[NTYPES];
-
-/* local variables */
-static OFFTYPE off,foff,doff;
-static FILE *fp;
-
-/* forward declarations */
-LOCAL OFFTYPE readptr(void);
-LOCAL OFFTYPE cvoptr(LVAL p);
-LOCAL LVAL cviptr(OFFTYPE o);
-LOCAL void writeptr(OFFTYPE off);
-LOCAL void setoffset(void);
-LOCAL void writenode(LVAL node);
-LOCAL void freeimage(void);
-LOCAL void readnode(int type, LVAL node);
-
-
-/* xlisave - save the memory image */
-int xlisave(char *fname)
-{
- char fullname[STRMAX+1];
- unsigned char *cp;
- SEGMENT *seg;
- int n,i,max;
- LVAL p;
-
- /* default the extension */
- if (needsextension(fname)) {
- strcpy(fullname,fname);
- strcat(fullname,".wks");
- fname = fullname;
- }
-
- /* open the output file */
- if ((fp = osbopen(fname,"w")) == NULL)
- return (FALSE);
-
- /* first call the garbage collector to clean up memory */
- gc();
-
- /* invalidate extern type descriptor symbol caches */
- inval_caches();
-
- /* write out the pointer to the *obarray* symbol */
- writeptr(cvoptr(obarray));
-
- /* setup the initial file offsets */
- off = foff = (OFFTYPE)2;
-
- /* write out all nodes that are still in use */
- for (seg = segs; seg != NULL; seg = seg->sg_next) {
- p = &seg->sg_nodes[0];
- for (n = seg->sg_size; --n >= 0; ++p, off += 2)
- switch (ntype(p)) {
- case FREE_NODE:
- break;
- case CONS:
- case USTREAM:
- setoffset();
- osbputc(p->n_type,fp);
- writeptr(cvoptr(car(p)));
- writeptr(cvoptr(cdr(p)));
- foff += 2;
- break;
- case EXTERN:
- setoffset();
- osbputc(EXTERN, fp);
-/* printf("saving EXTERN p = %x, desc %x\n", p, getdesc(p)); fflush(stdout);*/
- writeptr((OFFTYPE) (getdesc(p) - desc_table)); /* write type index */
- writeptr((OFFTYPE) 0); /* pointer gets reconstructed on input */
- foff += 2;
- break;
- default:
- setoffset();
- writenode(p);
- break;
- }
- }
-
- /* write the terminator */
- osbputc(FREE_NODE,fp);
- writeptr((OFFTYPE)0);
-
- /* write out data portion of SYMBOL/VECTOR/OBJECT/STRING/CLOSURE nodes */
- for (seg = segs; seg != NULL; seg = seg->sg_next) {
- p = &seg->sg_nodes[0];
- for (n = seg->sg_size; --n >= 0; ++p)
- switch (ntype(p)) {
- case SYMBOL:
- case OBJECT:
- case VECTOR:
- case CLOSURE:
- max = getsize(p);
- for (i = 0; i < max; ++i)
- writeptr(cvoptr(getelement(p,i)));
- break;
- case STRING:
- max = getslength(p);
- for (cp = getstring(p); --max >= 0; )
- osbputc(*cp++,fp);
- break;
- case EXTERN:
-/* printf("saving extern data for p = %x\n", p);*/
- (*(getdesc(p)->save_meth))(fp, getinst(p));
- break;
- }
- }
-
- /* close the output file */
- osclose(fp);
-
- /* return successfully */
- return (TRUE);
-}
-
-/* xlirestore - restore a saved memory image */
-int xlirestore(char *fname)
-{
- extern FUNDEF funtab[];
- char fullname[STRMAX+1];
- unsigned char *cp;
- int n,i,max,type;
- SEGMENT *seg;
- LVAL p;
-
- /* default the extension */
- if (needsextension(fname)) {
- strcpy(fullname,fname);
- strcat(fullname,".wks");
- fname = fullname;
- }
-
- /* open the file */
- if ((fp = osbopen(fname,"r")) == NULL)
- return (FALSE);
-
- /* free the old memory image */
- freeimage();
-
- /* initialize */
- off = (OFFTYPE)2;
- total = nnodes = nfree = 0L;
- fnodes = NIL;
- segs = lastseg = NULL;
- nsegs = gccalls = 0;
- xlenv = xlfenv = xldenv = s_gchook = s_gcflag = NIL;
- xlstack = xlstkbase + EDEPTH;
- xlcontext = NULL;
-
- /* create the fixnum segment */
- if ((fixseg = newsegment(SFIXSIZE)) == NULL)
- xlfatal("insufficient memory - fixnum segment");
-
- /* create the character segment */
- if ((charseg = newsegment(CHARSIZE)) == NULL)
- xlfatal("insufficient memory - character segment");
-
- /* read the pointer to the *obarray* symbol */
- obarray = cviptr(readptr());
-
- /* read each node */
- while ((type = osbgetc(fp)) >= 0)
- switch (type) {
- case FREE_NODE:
- if ((off = readptr()) == (OFFTYPE)0)
- goto done;
- break;
- case CONS:
- case USTREAM:
- p = cviptr(off);
- p->n_type = type;
- p->n_flags = 0;
- rplaca(p,cviptr(readptr()));
- rplacd(p,cviptr(readptr()));
- off += 2;
- break;
- case EXTERN:
- p = cviptr(off);
-/* printf("reading extern node p = %x\n", p);*/
- p->n_type = EXTERN;
- setdesc(p, desc_table + (int) readptr());
-/* printf("type desc is %x\n", getdesc(p));*/
- setinst(p, (unsigned char *) readptr());
-/* printf("initial inst is %x\n", getinst(p));*/
- off += 2;
- break;
- default:
- readnode(type,cviptr(off));
- off += 2;
- break;
- }
-done:
-
- /* read the data portion of SYMBOL/VECTOR/OBJECT/STRING/CLOSURE nodes */
- for (seg = segs; seg != NULL; seg = seg->sg_next) {
- p = &seg->sg_nodes[0];
- for (n = seg->sg_size; --n >= 0; ++p)
- switch (ntype(p)) {
- case SYMBOL:
- case OBJECT:
- case VECTOR:
- case CLOSURE:
- max = getsize(p);
- if ((p->n_vdata = (LVAL *)malloc(max * sizeof(LVAL))) == NULL)
- xlfatal("insufficient memory - vector");
- total += (long)(max * sizeof(LVAL));
- for (i = 0; i < max; ++i)
- setelement(p,i,cviptr(readptr()));
- break;
- case STRING:
- max = getslength(p);
- if ((p->n_string = (unsigned char *)malloc(max)) == NULL)
- xlfatal("insufficient memory - string");
- total += (long)max;
- for (cp = getstring(p); --max >= 0; )
- *cp++ = osbgetc(fp);
- break;
- case STREAM:
- setfile(p,NULL);
- break;
- case SUBR:
- case FSUBR:
- p->n_subr = funtab[getoffset(p)].fd_subr;
- break;
- case EXTERN:
-/* printf("restoring extern %x\n", p); fflush(stdout); */
- setinst(p, (*(getdesc(p)->restore_meth))(fp));
- break;
- }
- }
-
- /* close the input file */
- osclose(fp);
-
- /* collect to initialize the free space */
- gc();
-
- /* lookup all of the symbols the interpreter uses */
- xlsymbols();
-
- /* return successfully */
- return (TRUE);
-}
-
-/* freeimage - free the current memory image */
-LOCAL void freeimage(void)
-{
- SEGMENT *seg,*next;
- FILE *fp;
- LVAL p;
- int n;
-
- /* free the data portion of SYMBOL/VECTOR/OBJECT/STRING nodes */
- for (seg = segs; seg != NULL; seg = next) {
- p = &seg->sg_nodes[0];
- for (n = seg->sg_size; --n >= 0; ++p)
- switch (ntype(p)) {
- case SYMBOL:
- case OBJECT:
- case VECTOR:
- case CLOSURE:
- if (p->n_vsize)
- free(p->n_vdata);
- break;
- case STRING:
- if (getslength(p))
- free((void *) getstring(p));
- break;
- case STREAM:
- if ((fp = getfile(p)) && (fp != stdin && fp != stdout && fp != stderr))
- osclose(getfile(p));
- break;
- }
- next = seg->sg_next;
- free((void *) seg);
- }
-}
-
-/* setoffset - output a positioning command if nodes have been skipped */
-LOCAL void setoffset(void)
-{
- if (off != foff) {
- osbputc(FREE_NODE,fp);
- writeptr(off);
- foff = off;
- }
-}
-
-/* writenode - write a node to a file */
-LOCAL void writenode(LVAL node)
-{
- char *p = (char *)&node->n_info;
- int n = sizeof(union ninfo);
- osbputc(node->n_type,fp);
- while (--n >= 0)
- osbputc(*p++,fp);
- foff += 2;
-}
-
-/* writeptr - write a pointer to a file */
-LOCAL void writeptr(OFFTYPE off)
-{
- char *p = (char *)&off;
- int n = sizeof(OFFTYPE);
- while (--n >= 0)
- osbputc(*p++,fp);
-}
-
-/* readnode - read a node */
-LOCAL void readnode(int type, LVAL node)
-{
- char *p = (char *)&node->n_info;
- int n = sizeof(union ninfo);
- node->n_type = type;
- node->n_flags = 0;
- while (--n >= 0)
- *p++ = osbgetc(fp);
-}
-
-/* readptr - read a pointer */
-LOCAL OFFTYPE readptr(void)
-{
- OFFTYPE off;
- char *p = (char *)&off;
- int n = sizeof(OFFTYPE);
- while (--n >= 0)
- *p++ = osbgetc(fp);
- return (off);
-}
-
-/* cviptr - convert a pointer on input */
-LOCAL LVAL cviptr(OFFTYPE o)
-{
- OFFTYPE off = (OFFTYPE)2;
- SEGMENT *seg;
-
- /* check for nil */
- if (o == (OFFTYPE)0)
- return ((LVAL)o);
-
- /* compute a pointer for this offset */
- for (seg = segs; seg != NULL; seg = seg->sg_next) {
- if (o >= off && o < off + (OFFTYPE)(seg->sg_size << 1))
- return (seg->sg_nodes + ((int)(o - off) >> 1));
- off += (OFFTYPE)(seg->sg_size << 1);
- }
-
- /* create new segments if necessary */
- for (;;) {
-
- /* create the next segment */
- if ((seg = newsegment(anodes)) == NULL)
- xlfatal("insufficient memory - segment");
-
- /* check to see if the offset is in this segment */
- if (o >= off && o < off + (OFFTYPE)(seg->sg_size << 1))
- return (seg->sg_nodes + ((int)(o - off) >> 1));
- off += (OFFTYPE)(seg->sg_size << 1);
- }
-}
-
-/* cvoptr - convert a pointer on output */
-LOCAL OFFTYPE cvoptr(LVAL p)
-{
- OFFTYPE off = (OFFTYPE)2;
- SEGMENT *seg;
-
- /* check for nil and small fixnums */
- if (p == NIL)
- return ((OFFTYPE)p);
-
- /* compute an offset for this pointer */
- for (seg = segs; seg != NULL; seg = seg->sg_next) {
- if (CVPTR(p) >= CVPTR(&seg->sg_nodes[0]) &&
- CVPTR(p) < CVPTR(&seg->sg_nodes[0] + seg->sg_size))
- return (off + (OFFTYPE)((p - seg->sg_nodes) << 1));
- off += (OFFTYPE)(seg->sg_size << 1);
- }
-
- /* pointer not within any segment */
- xlerror("bad pointer found during image save",p);
-}
-
-#endif
-
diff --git a/lib-src/libnyquist/xlisp/xlinit.c b/lib-src/libnyquist/xlisp/xlinit.c
deleted file mode 100644
index cca079d..0000000
--- a/lib-src/libnyquist/xlisp/xlinit.c
+++ /dev/null
@@ -1,263 +0,0 @@
-/* xlinit.c - xlisp initialization module */
-/* Copyright (c) 1985, by David Michael Betz
- All Rights Reserved
- Permission is granted for unrestricted non-commercial use
-
- * HISTORY
- * 3-Apr-88 Dale Amon at CMU-CSD
- * Added EXTERN to xlisp 2.0
- *
- * 18-Oct-87 Dale Amon at CMU-CSD
- * Added initialization for new EXTERN node type.
- *
- * 12 Oct 90 RBD Added s_profile declaration
- *
- * 5 Jun 95 EAD took out extern init (put back when building nyquest)
- */
-
-
-#include "xlisp.h"
-
-/* external variables */
-extern LVAL s_true,s_dot,s_unbound;
-extern LVAL s_quote,s_function,s_bquote,s_comma,s_comat;
-extern LVAL s_lambda,s_macro;
-extern LVAL s_stdin,s_stdout,s_stderr,s_debugio,s_traceout;
-extern LVAL s_evalhook,s_applyhook,s_tracelist;
-extern LVAL s_tracenable,s_tlimit,s_breakenable, s_profile;
-extern LVAL s_setf,s_car,s_cdr,s_nth,s_aref,s_get,s_eql;
-extern LVAL s_svalue,s_sfunction,s_splist;
-extern LVAL s_rtable,k_wspace,k_const,k_nmacro,k_tmacro;
-extern LVAL k_sescape,k_mescape;
-extern LVAL s_ifmt,s_ffmt,s_printcase;
-extern LVAL s_1plus,s_2plus,s_3plus,s_1star,s_2star,s_3star,s_minus;
-extern LVAL k_test,k_tnot;
-extern LVAL k_direction,k_input,k_output;
-extern LVAL k_start,k_end,k_1start,k_1end,k_2start,k_2end;
-extern LVAL k_verbose,k_print,k_count,k_key,k_upcase,k_downcase;
-extern LVAL lk_optional,lk_rest,lk_key,lk_aux,lk_allow_other_keys;
-extern LVAL a_subr,a_fsubr,a_cons,a_symbol;
-extern LVAL a_fixnum,a_flonum,a_string,a_stream,a_object;
-extern LVAL a_vector,a_closure,a_char,a_ustream,a_extern;
-extern LVAL s_gcflag,s_gchook;
-extern LVAL s_search_path;
-extern FUNDEF funtab[];
-
-/* forward declarations */
-FORWARD LOCAL void initwks();
-
-
-/* xlinit - xlisp initialization routine */
-void xlinit(void)
-{
- /* initialize xlisp (must be in this order) */
- xlminit(); /* initialize xldmem.c */
- xldinit(); /* initialize xldbug.c */
-
- /* finish initializing */
-#ifdef SAVERESTORE
- if (!xlirestore("xlisp.wks"))
-#endif
- initwks();
- /* note: localinit creates type descriptors, but these
- may be necessary for xlirestore to work. On the other
- hand, localinit creates atoms, so it needs obarray to
- be in place, and obarray is created by initwks. We may
- have a circular dependency to break before xlirestore
- will work
- */
-
- localinit(); /* initialize lisp extensions */
-}
-
-/* initwks - build an initial workspace */
-LOCAL void initwks(void)
-{
- FUNDEF *p;
- int i;
-
- xlsinit(); /* initialize xlsym.c */
- xlsymbols();/* enter all symbols used by the interpreter */
- xlrinit(); /* initialize xlread.c */
- xloinit(); /* initialize xlobj.c */
-
- /* setup defaults */
- setvalue(s_evalhook,NIL); /* no evalhook function */
- setvalue(s_applyhook,NIL); /* no applyhook function */
- setvalue(s_tracelist,NIL); /* no functions being traced */
- setvalue(s_tracenable,NIL); /* traceback disabled */
- setvalue(s_tlimit,NIL); /* trace limit infinite */
- setvalue(s_breakenable,NIL); /* don't enter break loop on errors */
- setvalue(s_loadingfiles,NIL); /* not loading any files initially */
- setvalue(s_profile,NIL); /* don't do profiling */
- setvalue(s_gcflag,NIL); /* don't show gc information */
- setvalue(s_gchook,NIL); /* no gc hook active */
- setvalue(s_ifmt,cvstring(IFMT)); /* integer print format */
- setvalue(s_ffmt,cvstring("%g")); /* float print format */
- setvalue(s_printcase,k_upcase); /* upper case output of symbols */
-
- /* install the built-in functions and special forms */
- for (i = 0, p = funtab; p->fd_subr != NULL; ++i, ++p)
- if (p->fd_name)
- xlsubr(p->fd_name,p->fd_type,p->fd_subr,i);
-
- /* add some synonyms */
- setfunction(xlenter("NOT"),getfunction(xlenter("NULL")));
- setfunction(xlenter("FIRST"),getfunction(xlenter("CAR")));
- setfunction(xlenter("SECOND"),getfunction(xlenter("CADR")));
- setfunction(xlenter("THIRD"),getfunction(xlenter("CADDR")));
- setfunction(xlenter("FOURTH"),getfunction(xlenter("CADDDR")));
- setfunction(xlenter("REST"),getfunction(xlenter("CDR")));
-}
-
-/* xlsymbols - enter all of the symbols used by the interpreter */
-void xlsymbols(void)
-{
- LVAL sym;
-
- /* enter the unbound variable indicator (must be first) */
- s_unbound = xlenter("*UNBOUND*");
- setvalue(s_unbound,s_unbound);
-
- /* enter the 't' symbol */
- s_true = xlenter("T");
- setvalue(s_true,s_true);
-
- /* enter some important symbols */
- s_dot = xlenter(".");
- s_quote = xlenter("QUOTE");
- s_function = xlenter("FUNCTION");
- s_bquote = xlenter("BACKQUOTE");
- s_comma = xlenter("COMMA");
- s_comat = xlenter("COMMA-AT");
- s_lambda = xlenter("LAMBDA");
- s_macro = xlenter("MACRO");
- s_eql = xlenter("EQL");
- s_ifmt = xlenter("*INTEGER-FORMAT*");
- s_ffmt = xlenter("*FLOAT-FORMAT*");
-
- /* symbols set by the read-eval-print loop */
- s_1plus = xlenter("+");
- s_2plus = xlenter("++");
- s_3plus = xlenter("+++");
- s_1star = xlenter("*");
- s_2star = xlenter("**");
- s_3star = xlenter("***");
- s_minus = xlenter("-");
-
- /* enter setf place specifiers */
- s_setf = xlenter("*SETF*");
- s_car = xlenter("CAR");
- s_cdr = xlenter("CDR");
- s_nth = xlenter("NTH");
- s_aref = xlenter("AREF");
- s_get = xlenter("GET");
- s_svalue = xlenter("SYMBOL-VALUE");
- s_sfunction = xlenter("SYMBOL-FUNCTION");
- s_splist = xlenter("SYMBOL-PLIST");
-
- /* enter the readtable variable and keywords */
- s_rtable = xlenter("*READTABLE*");
- k_wspace = xlenter(":WHITE-SPACE");
- k_const = xlenter(":CONSTITUENT");
- k_nmacro = xlenter(":NMACRO");
- k_tmacro = xlenter(":TMACRO");
- k_sescape = xlenter(":SESCAPE");
- k_mescape = xlenter(":MESCAPE");
-
- /* enter parameter list keywords */
- k_test = xlenter(":TEST");
- k_tnot = xlenter(":TEST-NOT");
-
- /* "open" keywords */
- k_direction = xlenter(":DIRECTION");
- k_input = xlenter(":INPUT");
- k_output = xlenter(":OUTPUT");
-
- /* enter *print-case* symbol and keywords */
- s_printcase = xlenter("*PRINT-CASE*");
- k_upcase = xlenter(":UPCASE");
- k_downcase = xlenter(":DOWNCASE");
-
- /* other keywords */
- k_start = xlenter(":START");
- k_end = xlenter(":END");
- k_1start = xlenter(":START1");
- k_1end = xlenter(":END1");
- k_2start = xlenter(":START2");
- k_2end = xlenter(":END2");
- k_verbose = xlenter(":VERBOSE");
- k_print = xlenter(":PRINT");
- k_count = xlenter(":COUNT");
- k_key = xlenter(":KEY");
-
- /* enter lambda list keywords */
- lk_optional = xlenter("&OPTIONAL");
- lk_rest = xlenter("&REST");
- lk_key = xlenter("&KEY");
- lk_aux = xlenter("&AUX");
- lk_allow_other_keys = xlenter("&ALLOW-OTHER-KEYS");
-
- /* enter *standard-input*, *standard-output* and *error-output* */
- s_stdin = xlenter("*STANDARD-INPUT*");
- setvalue(s_stdin,cvfile(stdin));
- s_stdout = xlenter("*STANDARD-OUTPUT*");
- setvalue(s_stdout,cvfile(stdout));
- s_stderr = xlenter("*ERROR-OUTPUT*");
- setvalue(s_stderr,cvfile(STDERR));
-
- /* enter *debug-io* and *trace-output* */
- s_debugio = xlenter("*DEBUG-IO*");
- setvalue(s_debugio,getvalue(s_stderr));
- s_traceout = xlenter("*TRACE-OUTPUT*");
- setvalue(s_traceout,getvalue(s_stderr));
-
- /* enter the eval and apply hook variables */
- s_evalhook = xlenter("*EVALHOOK*");
- s_applyhook = xlenter("*APPLYHOOK*");
-
- /* enter the symbol pointing to the list of functions being traced */
- s_tracelist = xlenter("*TRACELIST*");
-
- /* enter the error traceback and the error break enable flags */
- s_tracenable = xlenter("*TRACENABLE*");
- s_tlimit = xlenter("*TRACELIMIT*");
- s_breakenable = xlenter("*BREAKENABLE*");
- s_profile = xlenter("*PROFILE*");
-
- /* enter the symbol pointing to the list of loading files */
- s_loadingfiles = xlenter("*LOADINGFILES*");
-
- /* enter a symbol to control printing of garbage collection messages */
- s_gcflag = xlenter("*GC-FLAG*");
- s_gchook = xlenter("*GC-HOOK*");
-
- /* enter the symbol for the search path */
- s_search_path = xlenter("*SEARCH-PATH*");
-
- /* enter a copyright notice into the oblist */
- sym = xlenter("**Copyright-1988-by-David-Betz**");
- setvalue(sym,s_true);
-
- /* enter type names */
- a_subr = xlenter("SUBR");
- a_fsubr = xlenter("FSUBR");
- a_cons = xlenter("CONS");
- a_symbol = xlenter("SYMBOL");
- a_fixnum = xlenter("FIXNUM");
- a_flonum = xlenter("FLONUM");
- a_string = xlenter("STRING");
- a_object = xlenter("OBJECT");
- a_stream = xlenter("FILE-STREAM");
- a_vector = xlenter("ARRAY");
- a_extern = xlenter("EXTERN");
- a_closure = xlenter("CLOSURE");
- a_char = xlenter("CHARACTER");
- a_ustream = xlenter("UNNAMED-STREAM");
-
- /* add the object-oriented programming symbols and os specific stuff */
- obsymbols(); /* object-oriented programming symbols */
- ossymbols(); /* os specific symbols */
- localsymbols(); /* lisp extension symbols */
-}
-
diff --git a/lib-src/libnyquist/xlisp/xlio.c b/lib-src/libnyquist/xlisp/xlio.c
deleted file mode 100644
index 6ba0b92..0000000
--- a/lib-src/libnyquist/xlisp/xlio.c
+++ /dev/null
@@ -1,206 +0,0 @@
-/* xlio - xlisp i/o routines */
-/* Copyright (c) 1985, by David Michael Betz
- All Rights Reserved
- Permission is granted for unrestricted non-commercial use */
-
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm eliminate some compiler warnings
- */
-
-#include "xlisp.h"
-
-/* external variables */
-extern LVAL s_stdin,s_stdout,s_stderr,s_debugio,s_traceout,s_unbound;
-extern int xlfsize;
-
-/* xlgetc - get a character from a file or stream */
-int xlgetc(LVAL fptr)
-{
- LVAL lptr, cptr=NULL;
- FILE *fp;
- int ch;
-
- /* check for input from nil */
- if (fptr == NIL)
- ch = EOF;
-
- /* otherwise, check for input from a stream */
- else if (ustreamp(fptr)) {
- if ((lptr = gethead(fptr)) == NIL)
- ch = EOF;
- else {
- if (!consp(lptr) || (cptr = car(lptr)) == NIL || !charp(cptr))
- xlfail("bad stream");
- sethead(fptr,lptr = cdr(lptr));
- if (lptr == NIL)
- settail(fptr,NIL);
- ch = getchcode(cptr);
- }
- }
-
- /* otherwise, check for a buffered character */
- else if ((ch = getsavech(fptr)))
- setsavech(fptr,'\0');
-
- /* otherwise, check for terminal input or file input */
- else {
- fp = getfile(fptr);
- if (fp == stdin || fp == STDERR)
- ch = ostgetc();
- else
- ch = osagetc(fp);
- }
-
- /* return the character */
- return (ch);
-}
-
-/* xlungetc - unget a character */
-void xlungetc(LVAL fptr, int ch)
-{
- LVAL lptr;
-
- /* check for ungetc from nil */
- if (fptr == NIL)
- ;
-
- /* otherwise, check for ungetc to a stream */
- if (ustreamp(fptr)) {
- if (ch != EOF) {
- lptr = cons(cvchar(ch),gethead(fptr));
- if (gethead(fptr) == NIL)
- settail(fptr,lptr);
- sethead(fptr,lptr);
- }
- }
-
- /* otherwise, it must be a file */
- else
- setsavech(fptr,ch);
-}
-
-/* xlpeek - peek at a character from a file or stream */
-int xlpeek(LVAL fptr)
-{
- LVAL lptr, cptr=NULL;
- int ch;
-
- /* check for input from nil */
- if (fptr == NIL)
- ch = EOF;
-
- /* otherwise, check for input from a stream */
- else if (ustreamp(fptr)) {
- if ((lptr = gethead(fptr)) == NIL)
- ch = EOF;
- else {
- if (!consp(lptr) || (cptr = car(lptr)) == NIL || !charp(cptr))
- xlfail("bad stream");
- ch = getchcode(cptr);
- }
- }
-
- /* otherwise, get the next file character and save it */
- else {
- ch = xlgetc(fptr);
- setsavech(fptr,ch);
- }
-
- /* return the character */
- return (ch);
-}
-
-/* xlputc - put a character to a file or stream */
-void xlputc(LVAL fptr, int ch)
-{
- LVAL lptr;
- FILE *fp;
-
- /* count the character */
- ++xlfsize;
-
- /* check for output to nil */
- if (fptr == NIL)
- ;
-
- /* otherwise, check for output to an unnamed stream */
- else if (ustreamp(fptr)) {
- lptr = consa(cvchar(ch));
- if (gettail(fptr))
- rplacd(gettail(fptr),lptr);
- else
- sethead(fptr,lptr);
- settail(fptr,lptr);
- }
-
- /* otherwise, check for terminal output or file output */
- else {
- fp = getfile(fptr);
- if (!fp)
- xlfail("file not open");
- else if (fp == stdout || fp == STDERR)
- ostputc(ch);
- else
- osaputc(ch,fp);
- }
-}
-
-/* xlflush - flush the input buffer */
-void xlflush(void)
-{
- osflush();
-}
-
-/* stdprint - print to *standard-output* */
-void stdprint(LVAL expr)
-{
- xlprint(getvalue(s_stdout),expr,TRUE);
- xlterpri(getvalue(s_stdout));
-}
-
-/* stdputstr - print a string to *standard-output* */
-void stdputstr(char *str)
-{
- xlputstr(getvalue(s_stdout),str);
-}
-
-/* errprint - print to *error-output* */
-void errprint(LVAL expr)
-{
- xlprint(getvalue(s_stderr),expr,TRUE);
- xlterpri(getvalue(s_stderr));
-}
-
-/* errputstr - print a string to *error-output* */
-void errputstr(char *str)
-{
- xlputstr(getvalue(s_stderr),str);
-}
-
-/* dbgprint - print to *debug-io* */
-void dbgprint(LVAL expr)
-{
- xlprint(getvalue(s_debugio),expr,TRUE);
- xlterpri(getvalue(s_debugio));
-}
-
-/* dbgputstr - print a string to *debug-io* */
-void dbgputstr(char *str)
-{
- xlputstr(getvalue(s_debugio),str);
-}
-
-/* trcprin1 - print to *trace-output* */
-void trcprin1(LVAL expr)
-{
- xlprint(getvalue(s_traceout),expr,TRUE);
-}
-
-/* trcputstr - print a string to *trace-output* */
-void trcputstr(char *str)
-{
- xlputstr(getvalue(s_traceout),str);
-}
-
-
diff --git a/lib-src/libnyquist/xlisp/xlisp.c b/lib-src/libnyquist/xlisp/xlisp.c
deleted file mode 100644
index 86e1eb5..0000000
--- a/lib-src/libnyquist/xlisp/xlisp.c
+++ /dev/null
@@ -1,263 +0,0 @@
-/* xlisp.c - a small implementation of lisp with object-oriented programming */
-/* Copyright (c) 1987, by David Michael Betz
- All Rights Reserved
- Permission is granted for unrestricted non-commercial use */
-
-/* CHANGELOG:
- 8 Oct 90 (Dannenberg) changed main() to xlisp_main_init and xlisp_main.
- made xlisp run as a module that evaluates expressions and
- retains state
- */
-
-#include "switches.h"
-#include "stdlib.h" /* declares exit() */
-#include "cext.h"
-#include "xlisp.h"
-#ifdef MACINTOSH
-#include "Memory.h"
-#endif
-
-FORWARD void xlisp_wrapup(void);
-
-/* define the banner line string */
-#ifdef EXT
-#ifdef NYQUIST
-#define BANNER "XLISP version 2.0, Copyright (c) 1986, by David Betz"
-#else
-#define BANNER "Music Editor, Copyright (c) 1987, by Roger B. Dannenberg\n\
-XLISP version 2.0, Copyright (c) 1986, by David Betz"
-#endif
-#else
-#ifdef CMTSTUFF
-#define BANNER "XLISP version 2.0, Copyright (c) 1986, by David Betz\n\
-CMU MIDI Toolkit, Copyright (c) 1993,1994, by Roger B. Dannenberg"
-#else
-#define BANNER "XLISP version 2.0, Copyright (c) 1986, by David Betz"
-#endif
-#endif
-
-/* global variables */
-jmp_buf top_level;
-int in_a_context = FALSE;
-int xl_main_loop = FALSE;
-
-/* external variables */
-extern LVAL s_stdin,s_evalhook,s_applyhook;
-extern LVAL s_1plus,s_2plus,s_3plus,s_1star,s_2star,s_3star,s_minus;
-extern int xltrcindent;
-extern int xldebug;
-extern LVAL s_true;
-extern char buf[];
-extern FILE *tfp;
-
-/* external routines */
-extern FILE *osaopen();
-
-/* xlisp_main_init - the main initialization routine */
-void xlisp_main_init(int argc, char *argv[])
-{
- char *transcript;
- XLCONTEXT cntxt;
- int verbose,i;
-
- /* setup default argument values */
- transcript = NULL;
- verbose = FALSE;
-
- /* parse the argument list switches */
-#ifndef LSC
- for (i = 1; i < argc; ++i)
- if (argv[i][0] == '-')
- switch(argv[i][1]) {
- case 't':
- case 'T':
- transcript = &argv[i][2];
- break;
- case 'v':
- case 'V':
- verbose = TRUE;
- break;
- }
-#endif
-
- /* initialize and print the banner line */
- osinit(BANNER);
-
- /* setup initialization error handler */
- xlbegin(&cntxt,CF_TOPLEVEL|CF_CLEANUP|CF_BRKLEVEL,(LVAL)1);
- if (setjmp(cntxt.c_jmpbuf))
- xlfatal("fatal initialization error");
- if (setjmp(top_level))
- xlfatal("RESTORE not allowed during initialization");
-
- /* initialize xlisp */
- xlinit();
- xlend(&cntxt);
-
-#ifdef EXT
- /* special initialization */
-#include "xlextstart.c"
-#endif
-
- /* reset the error handler */
- xlbegin(&cntxt,CF_TOPLEVEL|CF_CLEANUP|CF_BRKLEVEL,s_true);
-
- /* open the transcript file */
- if (transcript && (tfp = osaopen(transcript,"w")) == NULL) {
- sprintf(buf,"error: can't open transcript file: %s",transcript);
- stdputstr(buf);
- }
-
- /* load "init.lsp" */
- if (setjmp(cntxt.c_jmpbuf) == 0)
- xlload("init.lsp",TRUE,FALSE);
-
- /* load any files mentioned on the command line */
- if (setjmp(cntxt.c_jmpbuf) == 0)
- for (i = 1; i < argc; i++)
- if (argv[i][0] != '-' && !xlload(argv[i],TRUE,verbose))
- xlerror("can't load file",cvstring(argv[i]));
- xlend(&cntxt);
- if (setjmp(top_level))
- xlfatal("RESTORE not allowed out of read-eval-print loop");
-}
-
-
-/* xlisp_eval -- evaluate an expression created externally */
-LVAL xlisp_eval(LVAL expr)
-{
- int was_in_a_context = in_a_context;
- XLCONTEXT cntxt;
-
- if (in_a_context == FALSE) {
- /* create an execution context */
- xlbegin(&cntxt,CF_TOPLEVEL|CF_CLEANUP|CF_BRKLEVEL,s_true);
- if (setjmp(cntxt.c_jmpbuf)) {
- setvalue(s_evalhook,NIL);
- setvalue(s_applyhook,NIL);
- xltrcindent = 0;
- xldebug = 0;
- xlflush();
- oserror("xlisp_eval returning NIL to caller");
- in_a_context = FALSE;
- return NIL;
- }
- in_a_context = TRUE;
- }
-
- expr = xleval(expr);
-
- if (!was_in_a_context) {
- xlend(&cntxt);
- in_a_context = FALSE;
- }
- return expr;
-}
-
-
-/* xlisp_main -- run normal lisp read-eval-print loop */
-void xlisp_main()
-{
- LVAL expr;
- XLCONTEXT cntxt;
-
- /* build an outer-most context */
- xlbegin(&cntxt,CF_TOPLEVEL|CF_CLEANUP|CF_BRKLEVEL,s_true);
- in_a_context = TRUE;
-
- /* target for restore */
- if (setjmp(top_level))
- xlbegin(&cntxt,CF_TOPLEVEL|CF_CLEANUP|CF_BRKLEVEL,s_true);
-
- /* protect some pointers */
- xlsave1(expr);
-
- /* main command processing loop */
- for (xl_main_loop = TRUE; xl_main_loop;) {
-
- /* setup the error return */
- if (setjmp(cntxt.c_jmpbuf)) {
- setvalue(s_evalhook,NIL);
- setvalue(s_applyhook,NIL);
- xltrcindent = 0;
- xldebug = 0;
- xlflush();
- }
-
- #ifndef READLINE
- /* print a prompt */
- stdputstr("> ");
- #endif
-
- /* read an expression */
- if (!xlread(getvalue(s_stdin),&expr,FALSE))
- break;
-
- /* save the input expression */
- xlrdsave(expr);
-
- /* evaluate the expression */
- expr = xleval(expr);
-
- /* save the result */
- xlevsave(expr);
-
- /* print it */
- stdprint(expr);
- }
- xlend(&cntxt);
- in_a_context = FALSE;
-}
-
-/* #include "alloca.h" -- what was this for? -RBD */
-
-#ifndef EXT
-int main(int argc, char *argv[])
-{
- xlisp_main_init(argc,argv);
- xlisp_main();
-
- /* clean up */
- xlisp_wrapup();
- return 0;
-}
-#endif
-
-
-/* xlrdsave - save the last expression returned by the reader */
-void xlrdsave(LVAL expr)
-{
- setvalue(s_3plus,getvalue(s_2plus));
- setvalue(s_2plus,getvalue(s_1plus));
- setvalue(s_1plus,getvalue(s_minus));
- setvalue(s_minus,expr);
-}
-
-/* xlevsave - save the last expression returned by the evaluator */
-void xlevsave(LVAL expr)
-{
- setvalue(s_3star,getvalue(s_2star));
- setvalue(s_2star,getvalue(s_1star));
- setvalue(s_1star,expr);
-}
-
-/* xlfatal - print a fatal error message and exit */
-void xlfatal(char *msg)
-{
- oserror(msg);
- xlisp_wrapup();
-}
-
-/* wrapup - clean up and exit to the operating system */
-void xlisp_wrapup(void)
-{
- if (tfp)
- osclose(tfp);
- osfinish();
-#ifdef CMTSTUFF
- EXIT(0);
-#else
- exit(0);
-#endif
-}
-
diff --git a/lib-src/libnyquist/xlisp/xlisp.h b/lib-src/libnyquist/xlisp/xlisp.h
deleted file mode 100644
index e6d08c0..0000000
--- a/lib-src/libnyquist/xlisp/xlisp.h
+++ /dev/null
@@ -1,981 +0,0 @@
-/* xlisp - a small subset of lisp */
-/* Copyright (c) 1985, by David Michael Betz
- All Rights Reserved
- Permission is granted for unrestricted non-commercial use
-
-HISTORY
-02-Apr-04 Matt Brubeck (patch from Stephen Gildea)
- Remove broken PMAX-specific code (fixes
- compilation on Linux/MIPS).
-28-Apr-03 Mazzoni
- Added declarations for path.c (new file)
-30-Mar-88 Dale Amon CMU-CSD
- Set it up for unix. Picked _TURBOC_ because defs
- are reasonable.
-*/
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <ctype.h>
-#include <setjmp.h>
-
-/* NNODES number of nodes to allocate in each request (1000) */
-/* EDEPTH evaluation stack depth (2000) */
-/* ADEPTH argument stack depth (1000) */
-/* FORWARD type of a forward declaration () */
-/* LOCAL type of a local function (static) */
-/* AFMT printf format for addresses ("%x") */
-/* FIXTYPE data type for fixed point numbers (long) */
-/* ITYPE fixed point input conversion routine type (long atol()) */
-/* ICNV fixed point input conversion routine (atol) */
-/* IFMT printf format for fixed point numbers ("%ld") */
-/* FLOTYPE data type for floating point numbers (float) */
-/* OFFTYPE number the size of an address (int) */
-
-/* for the Win32 environment */
-#ifdef WIN32
-#define NNODES 2000
-#define AFMT "%lx"
-#define OFFTYPE long
-#define SAVERESTORE
-#define XL_LITTLE_ENDIAN
-#endif
-
-/* for the Turbo C compiler - MS-DOS, large model */
-#ifdef _TURBOC_
-#define NNODES 2000
-#define AFMT "%lx"
-#define OFFTYPE long
-#define SAVERESTORE
-#define XL_LITTLE_ENDIAN
-#endif
-
-/* for the AZTEC C compiler - MS-DOS, large model */
-#ifdef AZTEC_LM
-#define NNODES 2000
-#define AFMT "%lx"
-#define OFFTYPE long
-#define CVPTR(x) ptrtoabs(x)
-#define NIL (void *)0
-extern long ptrtoabs();
-#define SAVERESTORE
-#define XL_LITTLE_ENDIAN
-#endif
-
-/* for the AZTEC C compiler - Macintosh */
-#ifdef AZTEC_MAC
-#define NNODES 2000
-#define AFMT "%lx"
-#define OFFTYPE long
-#define NIL (void *)0
-#define SAVERESTORE
-#define XL_BIG_ENDIAN
-#endif
-
-/* for the AZTEC C compiler - Amiga */
-#ifdef AZTEC_AMIGA
-#define NNODES 2000
-#define AFMT "%lx"
-#define OFFTYPE long
-#define NIL (void *)0
-#define SAVERESTORE
-#define XL_BIG_ENDIAN
-#endif
-
-/* for the Lightspeed C compiler - Macintosh */
-#ifdef LSC
-#define NNODES 2000
-#define AFMT "%lx"
-#define OFFTYPE long
-#define NIL (void *)0
-#define SAVERESTORE
-#define XL_BIG_ENDIAN
-#endif
-
-/* for the Microsoft C compiler - MS-DOS, large model */
-#ifdef MSC
-#define NNODES 2000
-#define AFMT "%lx"
-#define OFFTYPE long
-#define XL_LITTLE_ENDIAN
-#endif
-
-/* for the Mark Williams C compiler - Atari ST */
-#ifdef MWC
-#define AFMT "%lx"
-#define OFFTYPE long
-#define XL_BIG_ENDIAN
-#endif
-
-/* for the Lattice C compiler - Atari ST */
-#ifdef LATTICE
-#define FIXTYPE int
-#define ITYPE int atoi()
-#define ICNV(n) atoi(n)
-#define IFMT "%d"
-#define XL_BIG_ENDIAN
-#endif
-
-/* for the Digital Research C compiler - Atari ST */
-#ifdef DR
-#define LOCAL
-#define AFMT "%lx"
-#define OFFTYPE long
-#undef NULL
-#define NULL 0L
-#define XL_BIG_ENDIAN
-#endif
-
-#ifdef ANDREW
-#define STDERR stdout
-#endif
-
-/* Mac Metrowerks CW 6 */
-#ifdef __MWERKS__
-#define LSC
-#undef PATHNAMES
-#undef FILETABLE
-#undef SAVERESTORE
-#undef MEDMEM
-#define EDEPTH 4000
-#define ADEPTH 3000
-#define OSAOPEN osaopen
-#define OSBOPEN osbopen
-#define NO_EXTENSIONS /* don't add ".lsp" onto filenames */
-#define XL_BIG_ENDIAN
-#endif
-
-/* Linux on Pentium */
-#ifdef __linux__
-#ifdef __i386__
-#define LINUX_INTEL
-#endif
-#endif
-
-#ifdef LINUX_INTEL
-#define XL_LITTLE_ENDIAN
-#endif
-
-/* default important definitions */
-#ifndef NNODES
-#define NNODES 1000
-#endif
-#ifndef NTYPES
-#define NTYPES 20
-#endif
-#ifndef EDEPTH
-/* originally was 2000 */
-#define EDEPTH 4000
-#endif
-#ifndef ADEPTH
-/* originally was 1000 */
-#define ADEPTH 2000
-#endif
-#ifndef FORWARD
-#define FORWARD
-#endif
-#ifndef LOCAL
-#define LOCAL static
-#endif
-#ifndef AFMT
-#define AFMT "%x"
-#endif
-#ifndef FIXTYPE
-#define FIXTYPE long
-#endif
-#ifndef ITYPE
-#ifndef atol /* if atol is a macro, this will mess things up */
-#define ITYPE long atol()
-#endif
-#endif
-#ifndef ICNV
-#define ICNV(n) atol(n)
-#endif
-#ifndef IFMT
-#define IFMT "%ld"
-#endif
-#ifndef FLOTYPE
-#define FLOTYPE double
-#endif
-#ifndef OFFTYPE
-#define OFFTYPE int
-#endif
-#ifndef CVPTR
-#define CVPTR(x) (x)
-#endif
-#ifndef UCHAR
-#define UCHAR unsigned char
-#endif
-
-#ifndef STDERR
-#define STDERR stderr
-#endif
-
-/* useful definitions */
-#ifndef TRUE
-#define TRUE 1
-#define FALSE 0
-#endif
-#define externp(x) ((x) && ntype(x) == EXTERN)
-#ifndef NIL
-#define NIL (LVAL )0
-#endif
-
-/* include the dynamic memory definitions */
-#include "xldmem.h"
-
-/* program limits */
-#define STRMAX 1024 /* maximum length of a string constant */
-#define HSIZE 1499 /* symbol hash table size */
-#define SAMPLE 1000 /* control character sample rate */
-
-/* function table offsets for the initialization functions */
-#define FT_RMHASH 0
-#define FT_RMQUOTE 1
-#define FT_RMDQUOTE 2
-#define FT_RMBQUOTE 3
-#define FT_RMCOMMA 4
-#define FT_RMLPAR 5
-#define FT_RMRPAR 6
-#define FT_RMSEMI 7
-#define FT_CLNEW 10
-#define FT_CLISNEW 11
-#define FT_CLANSWER 12
-#define FT_OBISNEW 13
-#define FT_OBCLASS 14
-#define FT_OBSHOW 15
-
-/* macro to push a value onto the argument stack */
-#define pusharg(x) {if (xlsp >= xlargstktop) xlargstkoverflow();\
- *xlsp++ = (x);}
-
-/* #define DEBUG_GC */
-
-/* macros to protect pointers */
-#ifdef DEBUG_GC
-void dbg_gc_xlsave(LVAL *n);
-
-#define xlstkcheck(n) {if (xlstack - (n) < xlstkbase) xlstkoverflow();}
-#define xlsave(n) {*--xlstack = &n; n = NIL; dbg_gc_xlsave(&n);}
-#define xlprotect(n) {*--xlstack = &n; dbg_gc_xlsave(&n);}
-
-/* check the stack and protect a single pointer */
-#define xlsave1(n) {if (xlstack <= xlstkbase) xlstkoverflow();\
- *--xlstack = &n; n = NIL; dbg_gc_xlsave(&n);}
-#define xlprot1(n) {if (xlstack <= xlstkbase) xlstkoverflow();\
- *--xlstack = &n; dbg_gc_xlsave(&n);}
-
-/* macros to pop pointers off the stack */
-#define xlpop() {++xlstack;}
-#define xlpopn(n) {xlstack+=(n);}
-
-#else
-
-#define xlstkcheck(n) {if (xlstack - (n) < xlstkbase) xlstkoverflow();}
-#define xlsave(n) {*--xlstack = &n; n = NIL;}
-#define xlprotect(n) {*--xlstack = &n;}
-
-/* check the stack and protect a single pointer */
-#define xlsave1(n) {if (xlstack <= xlstkbase) xlstkoverflow();\
- *--xlstack = &n; n = NIL;}
-#define xlprot1(n) {if (xlstack <= xlstkbase) xlstkoverflow();\
- *--xlstack = &n;}
-
-/* macros to pop pointers off the stack */
-#define xlpop() {++xlstack;}
-#define xlpopn(n) {xlstack+=(n);}
-#endif
-
-/* macros to manipulate the lexical environment */
-#define xlframe(e) cons(NIL,e)
-#define xlbind(s,v) xlpbind(s,v,xlenv)
-#define xlfbind(s,v) xlpbind(s,v,xlfenv);
-#define xlpbind(s,v,e) {rplaca(e,cons(cons(s,v),car(e)));}
-
-/* macros to manipulate the dynamic environment */
-#define xldbind(s,v) {xldenv = cons(cons(s,getvalue(s)),xldenv);\
- setvalue(s,v);}
-#define xlunbind(e) {for (; xldenv != (e); xldenv = cdr(xldenv))\
- setvalue(car(car(xldenv)),cdr(car(xldenv)));}
-
-/* type predicates */
-#define atomp(x) ((x) == NIL || ntype(x) != CONS)
-#define null(x) ((x) == NIL)
-#define listp(x) ((x) == NIL || ntype(x) == CONS)
-#define consp(x) ((x) && ntype(x) == CONS)
-#define subrp(x) ((x) && ntype(x) == SUBR)
-#define fsubrp(x) ((x) && ntype(x) == FSUBR)
-#define stringp(x) ((x) && ntype(x) == STRING)
-#define symbolp(x) ((x) && ntype(x) == SYMBOL)
-#define streamp(x) ((x) && ntype(x) == STREAM)
-#define objectp(x) ((x) && ntype(x) == OBJECT)
-#define fixp(x) ((x) && ntype(x) == FIXNUM)
-#define floatp(x) ((x) && ntype(x) == FLONUM)
-#define vectorp(x) ((x) && ntype(x) == VECTOR)
-#define closurep(x) ((x) && ntype(x) == CLOSURE)
-#define charp(x) ((x) && ntype(x) == CHAR)
-#define ustreamp(x) ((x) && ntype(x) == USTREAM)
-#define boundp(x) (getvalue(x) != s_unbound)
-#define fboundp(x) (getfunction(x) != s_unbound)
-
-/* shorthand functions */
-#define consa(x) cons(x,NIL)
-#define consd(x) cons(NIL,x)
-
-/* argument list parsing macros */
-#define xlgetarg() (testarg(nextarg()))
-#define xllastarg() {if (xlargc != 0) xltoomany();}
-#define testarg(e) (moreargs() ? (e) : xltoofew())
-#define typearg(tp) (tp(*xlargv) ? nextarg() : xlbadtype(*xlargv))
-#define nextarg() (--xlargc, *xlargv++)
-#define moreargs() (xlargc > 0)
-
-/* macros to get arguments of a particular type */
-#define xlgacons() (testarg(typearg(consp)))
-#define xlgalist() (testarg(typearg(listp)))
-#define xlgasymbol() (testarg(typearg(symbolp)))
-#define xlgastring() (testarg(typearg(stringp)))
-#define xlgaobject() (testarg(typearg(objectp)))
-#define xlgafixnum() (testarg(typearg(fixp)))
-#define xlgaflonum() (testarg(typearg(floatp)))
-#define xlgachar() (testarg(typearg(charp)))
-#define xlgavector() (testarg(typearg(vectorp)))
-#define xlgastream() (testarg(typearg(streamp)))
-#define xlgaustream() (testarg(typearg(ustreamp)))
-#define xlgaclosure() (testarg(typearg(closurep)))
-
-/* function definition structure */
-typedef struct {
- char *fd_name; /* function name */
- int fd_type; /* function type */
- LVAL (*fd_subr)(void); /* function entry point */
-} FUNDEF;
-
-/* execution context flags */
-#define CF_GO 0x0001
-#define CF_RETURN 0x0002
-#define CF_THROW 0x0004
-#define CF_ERROR 0x0008
-#define CF_CLEANUP 0x0010
-#define CF_CONTINUE 0x0020
-#define CF_TOPLEVEL 0x0040
-#define CF_BRKLEVEL 0x0080
-#define CF_UNWIND 0x0100
-
-
-/* execution context */
-typedef struct context {
- int c_flags; /* context type flags */
- LVAL c_expr; /* expression (type dependant) */
- jmp_buf c_jmpbuf; /* longjmp context */
- struct context *c_xlcontext; /* old value of xlcontext */
- LVAL **c_xlstack; /* old value of xlstack */
- LVAL *c_xlargv; /* old value of xlargv */
- int c_xlargc; /* old value of xlargc */
- LVAL *c_xlfp; /* old value of xlfp */
- LVAL *c_xlsp; /* old value of xlsp */
- LVAL c_xlenv; /* old value of xlenv */
- LVAL c_xlfenv; /* old value of xlfenv */
- LVAL c_xldenv; /* old value of xldenv */
-} XLCONTEXT;
-
-/* external variables */
-extern LVAL **xlstktop; /* top of the evaluation stack */
-extern LVAL **xlstkbase; /* base of the evaluation stack */
-extern LVAL **xlstack; /* evaluation stack pointer */
-extern LVAL *xlargstkbase; /* base of the argument stack */
-extern LVAL *xlargstktop; /* top of the argument stack */
-extern LVAL *xlfp; /* argument frame pointer */
-extern LVAL *xlsp; /* argument stack pointer */
-extern LVAL *xlargv; /* current argument vector */
-extern int xlargc; /* current argument count */
-
-/* more external variables */
-extern LVAL xlenv,xlfenv,xldenv,xlvalue,s_true;
-extern LVAL lk_optional,lk_rest,lk_key,lk_aux,lk_allow_other_keys;
-extern LVAL s_evalhook,s_applyhook,s_tracelist;
-extern LVAL s_lambda,s_macro;
-extern LVAL s_unbound;
-extern int xlsample;
-extern char buf[];
-extern LVAL obarray,s_gcflag,s_gchook;
-extern int xldebug;
-extern LVAL s_debugio;
-extern LVAL s_tracenable,s_tlimit,s_breakenable;
-extern LVAL s_loadingfiles;
-extern LVAL k_direction,k_input,k_output;
-extern LVAL s_stdin,s_stdout;
-extern int xlfsize;
-/* external variables */
-extern LVAL s_car,s_cdr,s_nth,s_get,s_svalue,s_splist,s_aref;
-extern LVAL s_comma,s_comat;
-extern char gsprefix[];
-extern int gsnumber;
-
-
-/* additional prototypes */
-
-extern FILE *osaopen (char *name, char *mode);
-extern FILE *osbopen (char *name, char *mode);
-
-#ifdef __MWERKS__
-/* macfun.c */
-
-LVAL xptsize(void);
-LVAL xhidepen(void);
-LVAL xshowpen(void);
-LVAL xgetpen(void);
-LVAL xpenmode(void);
-LVAL xpensize(void);
-LVAL xpenpat(void);
-LVAL xpennormal(void);
-LVAL xmoveto(void);
-LVAL xmove(void);
-LVAL xdrawto(void);
-LVAL xdraw(void);
-LVAL xshowgraphics(void);
-LVAL xhidegraphics(void);
-LVAL xcleargraphics(void);
-LVAL xtool(void);
-LVAL xtool16(void);
-LVAL xtool32(void);
-LVAL xnewhandle(void);
-LVAL xnewptr(void);
-LVAL xhiword(void);
-LVAL xloword(void);
-LVAL xrdnohang(void);
-/* #include "macstuff.h" */
-#endif
-
-/* for extern.c */
-
-void inval_caches();
-
-
-/* for xlbfun.c */
-
-LVAL xeval(void);
-LVAL xapply(void);
-LVAL xfuncall(void);
-LVAL xmacroexpand(void);
-LVAL x1macroexpand(void);
-LVAL xatom(void);
-LVAL xsymbolp(void);
-LVAL xnumberp(void);
-LVAL xintegerp(void);
-LVAL xfloatp(void);
-LVAL xcharp(void);
-LVAL xstringp(void);
-LVAL xarrayp(void);
-LVAL xstreamp(void);
-LVAL xobjectp(void);
-LVAL xboundp(void);
-LVAL xfboundp(void);
-LVAL xnull(void);
-LVAL xlistp(void);
-LVAL xendp(void);
-LVAL xconsp(void);
-LVAL xeq(void);
-LVAL xeql(void);
-LVAL xequal(void);
-LVAL xset(void);
-LVAL xgensym(void);
-LVAL xmakesymbol(void);
-LVAL xintern(void);
-LVAL xsymname(void);
-LVAL xsymvalue(void);
-LVAL xsymfunction(void);
-LVAL xsymplist(void);
-LVAL xget(void);
-LVAL xputprop(void);
-LVAL xremprop(void);
-LVAL xhash(void);
-LVAL xaref(void);
-LVAL xmkarray(void);
-LVAL xvector(void);
-LVAL xerror(void);
-LVAL xcerror(void);
-LVAL xbreak(void);
-LVAL xcleanup(void);
-LVAL xtoplevel(void);
-LVAL xcontinue(void);
-LVAL xevalhook(void);
-
-
-/* xlcont.c */
-
-LVAL xquote(void);
-LVAL xfunction(void);
-LVAL xbquote(void);
-LVAL xlambda(void);
-LVAL xgetlambda(void);
-LVAL xsetq(void);
-LVAL xpsetq(void);
-LVAL xsetf(void);
-LVAL xdefun(void);
-LVAL xdefmacro(void);
-LVAL xcond(void);
-LVAL xwhen(void);
-LVAL xunless(void);
-LVAL xcase(void);
-LVAL xand(void);
-LVAL xor(void);
-LVAL xif(void);
-LVAL xlet(void);
-LVAL xletstar(void);
-LVAL xflet(void);
-LVAL xlabels(void);
-LVAL xmacrolet(void);
-LVAL xprog(void);
-LVAL xprogstar(void);
-LVAL xgo(void);
-LVAL xreturn(void);
-LVAL xrtnfrom(void);
-LVAL xprog1(void);
-LVAL xprog2(void);
-LVAL xprogn(void);
-LVAL xprogv(void);
-LVAL xloop(void);
-LVAL xdo(void);
-LVAL xdostar(void);
-LVAL xdolist(void);
-LVAL xdotimes(void);
-LVAL xblock(void);
-LVAL xtagbody(void);
-LVAL xcatch(void);
-LVAL xthrow(void);
-LVAL xunwindprotect(void);
-LVAL xerrset(void);
-LVAL xtrace(void);
-LVAL xuntrace(void);
-
-
-/* xldbug.c */
-
-void xlabort(char *emsg);
-void xlbreak(char *emsg, LVAL arg);
-void xlfail(char *emsg);
-void xlerror(char *emsg, LVAL arg);
-void xlcerror(char *cmsg, char *emsg, LVAL arg);
-void xlerrprint(char *hdr, char *cmsg, char *emsg, LVAL arg);
-void xlbaktrace(int n);
-void xldinit(void);
-void close_loadingfiles(void);
-
-/* xldmem.c */
-
-LVAL cons(LVAL x, LVAL y);
-LVAL cvstring(char *str);
-LVAL new_string(int size);
-LVAL cvsymbol(char *pname);
-LVAL cvsubr(LVAL (*fcn)(void), int type, int offset);
-LVAL cvfile(FILE *fp);
-LVAL cvfixnum(FIXTYPE n);
-LVAL cvflonum(FLOTYPE n);
-LVAL cvchar(int n);
-LVAL newustream(void);
-LVAL newobject(LVAL cls, int size);
-LVAL newclosure(LVAL name, LVAL type, LVAL env, LVAL fenv);
-LVAL newvector(int size);
-void gc(void);
-SEGMENT *newsegment(int n);
-LVAL xgc(void);
-LVAL xexpand(void);
-LVAL xalloc(void);
-LVAL xmem(void);
-LVAL xsave(void);
-LVAL xrestore(void);
-void xlminit(void);
-LVAL cvextern(xtype_desc typeptr, unsigned char *instptr); /* convert an external type */
-LVAL newnode(int type);
-void mark(LVAL ptr);
-
-
-/* xleval.c */
-
-LVAL xleval(LVAL expr);
-LVAL xlxeval(LVAL expr);
-LVAL xlapply(int argc);
-LVAL xlexpandmacros(LVAL form);
-int macroexpand(LVAL fun, LVAL args, LVAL *pval);
-int pushargs(LVAL fun, LVAL args);
-LVAL makearglist(int argc, LVAL *argv);
-LVAL xlclose(LVAL name, LVAL type, LVAL fargs, LVAL body, LVAL env, LVAL fenv);
-void xlabind(LVAL fun, int argc, LVAL *argv);
-void xlunbound(LVAL sym);
-void xlfunbound(LVAL sym);
-void xlstkoverflow(void);
-void xlargstkoverflow(void);
-
-
-/* xlfio.c */
-
-LVAL xread(void);
-LVAL xprint(void);
-LVAL xprin1(void);
-LVAL xprinc(void);
-LVAL xterpri(void);
-LVAL xflatsize(void);
-LVAL xflatc(void);
-LVAL xopen(void);
-LVAL xbopen(void);
-LVAL xclose(void);
-LVAL xrdchar(void);
-LVAL xrdbyte(void);
-LVAL xpkchar(void);
-LVAL xwrchar(void);
-LVAL xwrbyte(void);
-LVAL xrdint(void);
-LVAL xwrint(void);
-LVAL xrdfloat(void);
-LVAL xwrfloat(void);
-LVAL xreadline(void);
-LVAL xmkstrinput(void);
-LVAL xmkstroutput(void);
-LVAL xgetstroutput(void);
-LVAL xgetlstoutput(void);
-LVAL xformat(void);
-
-
-/* xlimage.c */
-
-int xlisave(char *fname);
-int xlirestore(char *fname);
-
-
-/* xlinit.c */
-
-void xlinit(void);
-void xlsymbols(void);
-
-
-/* xlio.c */
-
-int xlgetc(LVAL fptr);
-void xlungetc(LVAL fptr, int ch);
-int xlpeek(LVAL fptr);
-void xlputc(LVAL fptr, int ch);
-void xlflush(void);
-void stdprint(LVAL expr);
-void stdputstr(char *str);
-void errprint(LVAL expr);
-void errputstr(char *str);
-void dbgprint(LVAL expr);
-void dbgputstr(char *str);
-void trcprin1(LVAL expr);
-void trcputstr(char *str);
-
-
-/* xlisp.c */
-void xlrdsave(LVAL expr);
-void xlevsave(LVAL expr);
-void xlfatal(char *msg);
-void xlisp_main_init(int, char **);
-void xlisp_main(void);
-void xlisp_wrapup(void);
-
-
-/* xljump.c */
-
-void xlbegin(XLCONTEXT *cptr, int flags, LVAL expr);
-void xlend(XLCONTEXT *cptr);
-void xlgo(LVAL label);
-void xlreturn(LVAL name, LVAL val);
-void xlthrow(LVAL tag, LVAL val);
-void xlsignal(char *emsg, LVAL arg);
-void xltoplevel(void);
-void xlbrklevel(void);
-void xlcleanup(void);
-void xlcontinue(void);
-void xljump(XLCONTEXT *target, int mask, LVAL val);
-
-
-/* xllist.c */
-
-LVAL xcar(void);
-LVAL xcdr(void);
-LVAL xcaar(void);
-LVAL xcadr(void);
-LVAL xcdar(void);
-LVAL xcddr(void);
-LVAL xcaaar(void);
-LVAL xcaadr(void);
-LVAL xcadar(void);
-LVAL xcaddr(void);
-LVAL xcdaar(void);
-LVAL xcdadr(void);
-LVAL xcddar(void);
-LVAL xcdddr(void);
-
-/* cxxxxr functions */
-LVAL xcaaaar(void);
-LVAL xcaaadr(void);
-LVAL xcaadar(void);
-LVAL xcaaddr(void);
-LVAL xcadaar(void);
-LVAL xcadadr(void);
-LVAL xcaddar(void);
-LVAL xcadddr(void);
-LVAL xcdaaar(void);
-LVAL xcdaadr(void);
-LVAL xcdadar(void);
-LVAL xcdaddr(void);
-LVAL xcddaar(void);
-LVAL xcddadr(void);
-LVAL xcdddar(void);
-LVAL xcddddr(void);
-LVAL xcons(void);
-LVAL xlist(void);
-LVAL xappend(void);
-LVAL xreverse(void);
-LVAL xlast(void);
-LVAL xmember(void);
-LVAL xassoc(void);
-LVAL xsubst(void);
-LVAL xsublis(void);
-LVAL xremove(void);
-LVAL xremif(void);
-LVAL xremifnot(void);
-int dotest1(LVAL arg, LVAL fun);
-int dotest2(LVAL arg1, LVAL arg2, LVAL fun);
-LVAL xnth(void);
-LVAL xnthcdr(void);
-LVAL xlength(void);
-LVAL xmapc(void);
-LVAL xmapcar(void);
-LVAL xmapl(void);
-LVAL xmaplist(void);
-LVAL xrplca(void);
-LVAL xrplcd(void);
-LVAL xnconc(void);
-LVAL xdelete(void);
-LVAL xdelif(void);
-LVAL xdelifnot(void);
-LVAL xsort(void);
-
-
-/* xlmath.c */
-
-LVAL xadd(void);
-LVAL xsub(void);
-LVAL xmul(void);
-LVAL xdiv(void);
-LVAL xrem(void);
-LVAL xmin(void);
-LVAL xmax(void);
-LVAL xexpt(void);
-LVAL xlogand(void);
-LVAL xlogior(void);
-LVAL xlogxor(void);
-LVAL xgcd(void);
-void checkizero(FIXTYPE iarg);
-void checkfzero(FLOTYPE farg);
-void checkfneg(FLOTYPE farg);
-LVAL xlognot(void);
-LVAL xabs(void);
-LVAL xadd1(void);
-LVAL xsub1(void);
-LVAL xsin(void);
-LVAL xcos(void);
-LVAL xtan(void);
-LVAL xexp(void);
-LVAL xsqrt(void);
-LVAL xfix(void);
-LVAL xfloat(void);
-LVAL xrand(void);
-LVAL xminusp(void);
-LVAL xzerop(void);
-LVAL xplusp(void);
-LVAL xevenp(void);
-LVAL xoddp(void);
-LVAL xlss(void);
-LVAL xleq(void);
-LVAL xequ(void);
-LVAL xneq(void);
-LVAL xgeq(void);
-LVAL xgtr(void);
-
-
-/* xlobj.c */
-
-LVAL xsend(void);
-LVAL xsendsuper(void);
-LVAL xlclass(char *name, int vcnt);
-void xladdivar(LVAL cls, char *var);
-void xladdmsg(LVAL cls, char *msg, int offset);
-int xlobgetvalue(LVAL pair, LVAL sym, LVAL *pval);
-int xlobsetvalue(LVAL pair, LVAL sym, LVAL val);
-LVAL obisnew(void);
-LVAL obclass(void);
-LVAL obshow(void);
-LVAL clnew(void);
-LVAL clisnew(void);
-LVAL clanswer(void);
-void obsymbols(void);
-void xloinit(void);
-
-
-/* xlpp.c */
-
-LVAL xpp(void);
-
-
-/* xlprin.c */
-
-void xlprint(LVAL fptr, LVAL vptr, int flag);
-void xlterpri(LVAL fptr);
-void xlputstr(LVAL fptr, char *str);
-void putatm(LVAL fptr, char *tag, LVAL val);
-
-
-/* xlread.c */
-
-int xlload(char *fname, int vflag, int pflag);
-int xlread(LVAL fptr, LVAL *pval, int rflag);
-int readone(LVAL fptr, LVAL *pval);
-LVAL rmhash(void);
-LVAL rmquote(void);
-LVAL rmdquote(void);
-LVAL rmbquote(void);
-LVAL rmcomma(void);
-LVAL rmlpar(void);
-LVAL rmrpar(void);
-LVAL rmsemi(void);
-LVAL tentry(int ch);
-int xlisnumber(char *str, LVAL *pval);
-void defmacro(int ch, LVAL type, int offset);
-LVAL callmacro(LVAL fptr, int ch);
-void xlrinit(void);
-
-
-/* xlstr.c */
-
-LVAL xstrlss(void);
-LVAL xstrleq(void);
-LVAL xstreql(void);
-LVAL xstrneq(void);
-LVAL xstrgeq(void);
-LVAL xstrgtr(void);
-LVAL xstrilss(void);
-LVAL xstrileq(void);
-LVAL xstrieql(void);
-LVAL xstrineq(void);
-LVAL xstrigeq(void);
-LVAL xstrigtr(void);
-LVAL xupcase(void);
-LVAL xdowncase(void);
-LVAL xnupcase(void);
-LVAL xndowncase(void);
-LVAL xstrsearch(void);
-LVAL xtrim(void);
-LVAL xlefttrim(void);
-LVAL xrighttrim(void);
-LVAL xstrcat(void);
-LVAL xsubseq(void);
-LVAL xstring(void);
-LVAL xchar(void);
-LVAL xcharint(void);
-LVAL xintchar(void);
-LVAL xuppercasep(void);
-LVAL xlowercasep(void);
-LVAL xbothcasep(void);
-LVAL xdigitp(void);
-LVAL xcharcode(void);
-LVAL xcodechar(void);
-LVAL xchupcase(void);
-LVAL xchdowncase(void);
-LVAL xdigitchar(void);
-LVAL xalphanumericp(void);
-LVAL xchrlss(void);
-LVAL xchrleq(void);
-LVAL xchreql(void);
-LVAL xchrneq(void);
-LVAL xchrgeq(void);
-LVAL xchrgtr(void);
-LVAL xchrilss(void);
-LVAL xchrileq(void);
-LVAL xchrieql(void);
-LVAL xchrineq(void);
-LVAL xchrigeq(void);
-LVAL xchrigtr(void);
-LVAL xinfo(void);
-
-/* xlsubr.c */
-
-LVAL xlsubr(char *sname, int type, LVAL (*fcn)(void), int offset);
-int xlgetkeyarg(LVAL key, LVAL *pval);
-void xltest(LVAL *pfcn, int *ptresult);
-int xlgkfixnum(LVAL key, LVAL *pval);
-/* argument list parsing functions */
-extern LVAL xlgetfile(void); /* get a file/stream argument */
-extern LVAL xlgetfname(void); /* get a filename argument */
-int needsextension(char *name);
-/* error reporting functions (don't *really* return at all) */
-extern LVAL xlbadtype(LVAL arg); /* report "bad argument type" error */
-extern LVAL xltoofew(void); /* report "too few arguments" error */
-extern LVAL xltoomany(void);
-int eq(LVAL arg1, LVAL arg2);
-int eql(LVAL arg1, LVAL arg2);
-int lval_equal(LVAL arg1, LVAL arg2);
-
-
-/* xlsym.c */
-
-LVAL xlenter(char *name); /* enter a symbol */
-LVAL xlmakesym(char *name); /* make an uninterned symbol */
-LVAL xlgetvalue(LVAL sym); /* get value of a symbol (checked) */
-LVAL xlxgetvalue(LVAL sym); /* get value of a symbol */
-void xlsetvalue(LVAL sym, LVAL val);
-LVAL xlgetfunction(LVAL sym); /* get functional value of a symbol */
-LVAL xlxgetfunction(LVAL sym); /* get functional value of a symbol (checked) */
-void xlsetfunction(LVAL sym, LVAL val);
-LVAL xlgetprop(LVAL sym, LVAL prp);
-void xlputprop(LVAL sym, LVAL val, LVAL prp);
-void xlremprop(LVAL sym, LVAL prp);
-int hash(char *str, int len);
-void xlsinit(void);
-LVAL findprop(LVAL sym, LVAL prp);
-
-/* xlsys.c */
-
-LVAL xload(void);
-LVAL xtranscript(void);
-LVAL xtype(void);
-LVAL xbaktrace(void);
-LVAL xexit(void);
-LVAL xpeek(void);
-LVAL xpoke(void);
-LVAL xaddrs(void);
-
-/* macstuff, unixstuff, winstuff */
-
-void osinit(char *banner);
-void oserror(char *msg);
-void osfinish(void);
-int osclose(FILE *fp);
-void osflush(void);
-void oscheck(void);
-int osaputc(int ch, FILE *fp);
-int osbputc(int ch, FILE *fp);
-void ostputc(int ch);
-int osagetc(FILE *fp);
-int osbgetc(FILE *fp);
-int ostgetc(void);
-void ossymbols(void);
-long osrand(long rseed);
-/* Added by Ning Hu May.2001*/
-LVAL xlinfo(void);
-LVAL xsetdir(void);
-/* Added End */
-
-/* These are now implemented in path.c -dmazzoni */
-const char *return_xlisp_path();
-const char *find_in_xlisp_path(const char *fname);
-void set_xlisp_path(const char *p);
-
-/* local.c - these procedures are specific to each implementation */
-
-void localinit(void);
-void localsymbols(void);
-void print_local_gc_info(void);
-
diff --git a/lib-src/libnyquist/xlisp/xljump.c b/lib-src/libnyquist/xlisp/xljump.c
deleted file mode 100644
index 14a941a..0000000
--- a/lib-src/libnyquist/xlisp/xljump.c
+++ /dev/null
@@ -1,165 +0,0 @@
-/* xljump - execution context routines */
-/* Copyright (c) 1985, by David Michael Betz
- All Rights Reserved
- Permission is granted for unrestricted non-commercial use */
-
-#include "xlisp.h"
-
-/* external variables */
-extern XLCONTEXT *xlcontext,*xltarget;
-extern LVAL xlvalue,xlenv,xlfenv,xldenv;
-extern int xlmask;
-
-LOCAL void findandjump(int mask, char *error);
-
-
-/* xlbegin - beginning of an execution context */
-void xlbegin(XLCONTEXT *cptr, int flags, LVAL expr)
-{
- cptr->c_flags = flags;
- cptr->c_expr = expr;
- cptr->c_xlstack = xlstack;
- cptr->c_xlenv = xlenv;
- cptr->c_xlfenv = xlfenv;
- cptr->c_xldenv = xldenv;
- cptr->c_xlcontext = xlcontext;
- cptr->c_xlargv = xlargv;
- cptr->c_xlargc = xlargc;
- cptr->c_xlfp = xlfp;
- cptr->c_xlsp = xlsp;
- xlcontext = cptr;
-}
-
-/* xlend - end of an execution context */
-void xlend(XLCONTEXT *cptr)
-{
- xlcontext = cptr->c_xlcontext;
-}
-
-/* xlgo - go to a label */
-void xlgo(LVAL label)
-{
- XLCONTEXT *cptr;
- LVAL *argv;
- int argc;
-
- /* find a tagbody context */
- for (cptr = xlcontext; cptr; cptr = cptr->c_xlcontext)
- if (cptr->c_flags & CF_GO) {
- argc = cptr->c_xlargc;
- argv = cptr->c_xlargv;
- while (--argc >= 0)
- if (*argv++ == label) {
- cptr->c_xlargc = argc;
- cptr->c_xlargv = argv;
- xljump(cptr,CF_GO,NIL);
- }
- }
- xlfail("no target for GO");
-}
-
-/* xlreturn - return from a block */
-void xlreturn(LVAL name, LVAL val)
-{
- XLCONTEXT *cptr;
-
- /* find a block context */
- for (cptr = xlcontext; cptr; cptr = cptr->c_xlcontext)
- if (cptr->c_flags & CF_RETURN && cptr->c_expr == name)
- xljump(cptr,CF_RETURN,val);
- xlfail("no target for RETURN");
-}
-
-/* xlthrow - throw to a catch */
-void xlthrow(LVAL tag, LVAL val)
-{
- XLCONTEXT *cptr;
-
- /* find a catch context */
- for (cptr = xlcontext; cptr; cptr = cptr->c_xlcontext)
- if ((cptr->c_flags & CF_THROW) && cptr->c_expr == tag)
- xljump(cptr,CF_THROW,val);
- xlfail("no target for THROW");
-}
-
-/* xlsignal - signal an error */
-void xlsignal(char *emsg, LVAL arg)
-{
- XLCONTEXT *cptr;
-
- /* find an error catcher */
- for (cptr = xlcontext; cptr; cptr = cptr->c_xlcontext)
- if (cptr->c_flags & CF_ERROR) {
- if (cptr->c_expr && emsg)
- xlerrprint("error",NULL,emsg,arg);
- xljump(cptr,CF_ERROR,NIL);
- }
-}
-
-/* xltoplevel - go back to the top level */
-void xltoplevel(void)
-{
- close_loadingfiles();
- stdputstr("[ back to top level ]\n");
- findandjump(CF_TOPLEVEL,"no top level");
-}
-
-/* xlbrklevel - go back to the previous break level */
-void xlbrklevel(void)
-{
- findandjump(CF_BRKLEVEL,"no previous break level");
-}
-
-/* xlcleanup - clean-up after an error */
-void xlcleanup(void)
-{
- stdputstr("[ back to previous break level ]\n");
- findandjump(CF_CLEANUP,"not in a break loop");
-}
-
-/* xlcontinue - continue from an error */
-void xlcontinue(void)
-{
- findandjump(CF_CONTINUE,"not in a break loop");
-}
-
-/* xljump - jump to a saved execution context */
-void xljump(XLCONTEXT *target, int mask, LVAL val)
-{
- /* unwind the execution stack */
- for (; xlcontext != target; xlcontext = xlcontext->c_xlcontext)
-
- /* check for an UNWIND-PROTECT */
- if ((xlcontext->c_flags & CF_UNWIND)) {
- xltarget = target;
- xlmask = mask;
- break;
- }
-
- /* restore the state */
- xlstack = xlcontext->c_xlstack;
- xlenv = xlcontext->c_xlenv;
- xlfenv = xlcontext->c_xlfenv;
- xlunbind(xlcontext->c_xldenv);
- xlargv = xlcontext->c_xlargv;
- xlargc = xlcontext->c_xlargc;
- xlfp = xlcontext->c_xlfp;
- xlsp = xlcontext->c_xlsp;
- xlvalue = val;
-
- /* call the handler */
- longjmp(xlcontext->c_jmpbuf,mask);
-}
-
-/* findandjump - find a target context frame and jump to it */
-LOCAL void findandjump(int mask, char *error)
-{
- XLCONTEXT *cptr;
-
- /* find a block context */
- for (cptr = xlcontext; cptr; cptr = cptr->c_xlcontext)
- if (cptr->c_flags & mask)
- xljump(cptr,mask,NIL);
- xlabort(error);
-}
-
diff --git a/lib-src/libnyquist/xlisp/xllist.c b/lib-src/libnyquist/xlisp/xllist.c
deleted file mode 100644
index 510e59f..0000000
--- a/lib-src/libnyquist/xlisp/xllist.c
+++ /dev/null
@@ -1,927 +0,0 @@
-/* xllist.c - xlisp built-in list functions */
-/* Copyright (c) 1985, by David Michael Betz
- All Rights Reserved
- Permission is granted for unrestricted non-commercial use */
-
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm eliminate some compiler warnings
- * 28Apr03 rbd fix check in sort routine
- */
-
-
-#include "xlisp.h"
-
-/* forward declarations */
-FORWARD LOCAL LVAL cxr(char *adstr);
-FORWARD LOCAL LVAL nth(int carflag);
-FORWARD LOCAL LVAL assoc(LVAL expr, LVAL alist, LVAL fcn, int tresult);
-FORWARD LOCAL LVAL subst(LVAL to, LVAL from, LVAL expr, LVAL fcn, int tresult);
-FORWARD LOCAL LVAL sublis(LVAL alist, LVAL expr, LVAL fcn, int tresult);
-FORWARD LOCAL LVAL map(int carflag, int valflag);
-FORWARD LOCAL LVAL remif(int tresult);
-FORWARD LOCAL LVAL delif(int tresult);
-FORWARD LOCAL LVAL sortlist(LVAL list, LVAL fcn);
-FORWARD LOCAL void splitlist(LVAL pivot, LVAL list, LVAL *psmaller, LVAL *plarger, LVAL fcn);
-FORWARD LOCAL LVAL gluelists(LVAL smaller, LVAL pivot, LVAL larger);
-
-
-/* xcar - take the car of a cons cell */
-LVAL xcar(void)
-{
- LVAL list;
- list = xlgalist();
- xllastarg();
- return (list ? car(list) : NIL);
-}
-
-/* xcdr - take the cdr of a cons cell */
-LVAL xcdr(void)
-{
- LVAL list;
- list = xlgalist();
- xllastarg();
- return (list ? cdr(list) : NIL);
-}
-
-/* cxxr functions */
-LVAL xcaar(void) { return (cxr("aa")); }
-LVAL xcadr(void) { return (cxr("da")); }
-LVAL xcdar(void) { return (cxr("ad")); }
-LVAL xcddr(void) { return (cxr("dd")); }
-
-/* cxxxr functions */
-LVAL xcaaar(void) { return (cxr("aaa")); }
-LVAL xcaadr(void) { return (cxr("daa")); }
-LVAL xcadar(void) { return (cxr("ada")); }
-LVAL xcaddr(void) { return (cxr("dda")); }
-LVAL xcdaar(void) { return (cxr("aad")); }
-LVAL xcdadr(void) { return (cxr("dad")); }
-LVAL xcddar(void) { return (cxr("add")); }
-LVAL xcdddr(void) { return (cxr("ddd")); }
-
-/* cxxxxr functions */
-LVAL xcaaaar(void) { return (cxr("aaaa")); }
-LVAL xcaaadr(void) { return (cxr("daaa")); }
-LVAL xcaadar(void) { return (cxr("adaa")); }
-LVAL xcaaddr(void) { return (cxr("ddaa")); }
-LVAL xcadaar(void) { return (cxr("aada")); }
-LVAL xcadadr(void) { return (cxr("dada")); }
-LVAL xcaddar(void) { return (cxr("adda")); }
-LVAL xcadddr(void) { return (cxr("ddda")); }
-LVAL xcdaaar(void) { return (cxr("aaad")); }
-LVAL xcdaadr(void) { return (cxr("daad")); }
-LVAL xcdadar(void) { return (cxr("adad")); }
-LVAL xcdaddr(void) { return (cxr("ddad")); }
-LVAL xcddaar(void) { return (cxr("aadd")); }
-LVAL xcddadr(void) { return (cxr("dadd")); }
-LVAL xcdddar(void) { return (cxr("addd")); }
-LVAL xcddddr(void) { return (cxr("dddd")); }
-
-/* cxr - common car/cdr routine */
-LOCAL LVAL cxr(char *adstr)
-{
- LVAL list;
-
- /* get the list */
- list = xlgalist();
- xllastarg();
-
- /* perform the car/cdr operations */
- while (*adstr && consp(list))
- list = (*adstr++ == 'a' ? car(list) : cdr(list));
-
- /* make sure the operation succeeded */
- if (*adstr && list)
- xlfail("bad argument");
-
- /* return the result */
- return (list);
-}
-
-/* xcons - construct a new list cell */
-LVAL xcons(void)
-{
- LVAL arg1,arg2;
-
- /* get the two arguments */
- arg1 = xlgetarg();
- arg2 = xlgetarg();
- xllastarg();
-
- /* construct a new list element */
- return (cons(arg1,arg2));
-}
-
-/* xlist - built a list of the arguments */
-LVAL xlist(void)
-{
- LVAL last=NULL,next,val;
-
- /* protect some pointers */
- xlsave1(val);
-
- /* add each argument to the list */
- for (val = NIL; moreargs(); ) {
-
- /* append this argument to the end of the list */
- next = consa(nextarg());
- if (val) rplacd(last,next);
- else val = next;
- last = next;
- }
-
- /* restore the stack */
- xlpop();
-
- /* return the list */
- return (val);
-}
-
-/* xappend - built-in function append */
-LVAL xappend(void)
-{
- LVAL list,last=NULL,next,val;
-
- /* protect some pointers */
- xlsave1(val);
-
- /* initialize */
- val = NIL;
-
- /* append each argument */
- if (moreargs()) {
- while (xlargc > 1) {
-
- /* append each element of this list to the result list */
- for (list = nextarg(); consp(list); list = cdr(list)) {
- next = consa(car(list));
- if (val) rplacd(last,next);
- else val = next;
- last = next;
- }
- }
-
- /* handle the last argument */
- if (val) rplacd(last,nextarg());
- else val = nextarg();
- }
-
- /* restore the stack */
- xlpop();
-
- /* return the list */
- return (val);
-}
-
-/* xreverse - built-in function reverse */
-LVAL xreverse(void)
-{
- LVAL list,val;
-
- /* protect some pointers */
- xlsave1(val);
-
- /* get the list to reverse */
- list = xlgalist();
- xllastarg();
-
- /* append each element to the head of the result list */
- for (val = NIL; consp(list); list = cdr(list))
- val = cons(car(list),val);
-
- /* restore the stack */
- xlpop();
-
- /* return the list */
- return (val);
-}
-
-/* xlast - return the last cons of a list */
-LVAL xlast(void)
-{
- LVAL list;
-
- /* get the list */
- list = xlgalist();
- xllastarg();
-
- /* find the last cons */
- while (consp(list) && cdr(list))
- list = cdr(list);
-
- /* return the last element */
- return (list);
-}
-
-/* xmember - built-in function 'member' */
-LVAL xmember(void)
-{
- LVAL x,list,fcn,val;
- int tresult;
-
- /* protect some pointers */
- xlsave1(fcn);
-
- /* get the expression to look for and the list */
- x = xlgetarg();
- list = xlgalist();
- xltest(&fcn,&tresult);
-
- /* look for the expression */
- for (val = NIL; consp(list); list = cdr(list))
- if (dotest2(x,car(list),fcn) == tresult) {
- val = list;
- break;
- }
-
- /* restore the stack */
- xlpop();
-
- /* return the result */
- return (val);
-}
-
-/* xassoc - built-in function 'assoc' */
-LVAL xassoc(void)
-{
- LVAL x,alist,fcn,pair,val;
- int tresult;
-
- /* protect some pointers */
- xlsave1(fcn);
-
- /* get the expression to look for and the association list */
- x = xlgetarg();
- alist = xlgalist();
- xltest(&fcn,&tresult);
-
- /* look for the expression */
- for (val = NIL; consp(alist); alist = cdr(alist))
- if ((pair = car(alist)) && consp(pair))
- if (dotest2(x,car(pair),fcn) == tresult) {
- val = pair;
- break;
- }
-
- /* restore the stack */
- xlpop();
-
- /* return result */
- return (val);
-}
-
-/* xsubst - substitute one expression for another */
-LVAL xsubst(void)
-{
- LVAL to,from,expr,fcn,val;
- int tresult;
-
- /* protect some pointers */
- xlsave1(fcn);
-
- /* get the to value, the from value and the expression */
- to = xlgetarg();
- from = xlgetarg();
- expr = xlgetarg();
- xltest(&fcn,&tresult);
-
- /* do the substitution */
- val = subst(to,from,expr,fcn,tresult);
-
- /* restore the stack */
- xlpop();
-
- /* return the result */
- return (val);
-}
-
-/* subst - substitute one expression for another */
-LOCAL LVAL subst(LVAL to, LVAL from, LVAL expr, LVAL fcn, int tresult)
-{
- LVAL carval,cdrval;
-
- if (dotest2(expr,from,fcn) == tresult)
- return (to);
- else if (consp(expr)) {
- xlsave1(carval);
- carval = subst(to,from,car(expr),fcn,tresult);
- cdrval = subst(to,from,cdr(expr),fcn,tresult);
- xlpop();
- return (cons(carval,cdrval));
- }
- else
- return (expr);
-}
-
-/* xsublis - substitute using an association list */
-LVAL xsublis(void)
-{
- LVAL alist,expr,fcn,val;
- int tresult;
-
- /* protect some pointers */
- xlsave1(fcn);
-
- /* get the assocation list and the expression */
- alist = xlgalist();
- expr = xlgetarg();
- xltest(&fcn,&tresult);
-
- /* do the substitution */
- val = sublis(alist,expr,fcn,tresult);
-
- /* restore the stack */
- xlpop();
-
- /* return the result */
- return (val);
-}
-
-/* sublis - substitute using an association list */
-LOCAL LVAL sublis(LVAL alist, LVAL expr, LVAL fcn, int tresult)
-{
- LVAL carval,cdrval,pair;
-
- if ((pair = assoc(expr,alist,fcn,tresult)))
- return (cdr(pair));
- else if (consp(expr)) {
- xlsave1(carval);
- carval = sublis(alist,car(expr),fcn,tresult);
- cdrval = sublis(alist,cdr(expr),fcn,tresult);
- xlpop();
- return (cons(carval,cdrval));
- }
- else
- return (expr);
-}
-
-/* assoc - find a pair in an association list */
-LOCAL LVAL assoc(LVAL expr, LVAL alist, LVAL fcn, int tresult)
-{
- LVAL pair;
-
- for (; consp(alist); alist = cdr(alist))
- if ((pair = car(alist)) && consp(pair))
- if (dotest2(expr,car(pair),fcn) == tresult)
- return (pair);
- return (NIL);
-}
-
-/* xremove - built-in function 'remove' */
-LVAL xremove(void)
-{
- LVAL x,list,fcn,val,last=NULL,next;
- int tresult;
-
- /* protect some pointers */
- xlstkcheck(2);
- xlsave(fcn);
- xlsave(val);
-
- /* get the expression to remove and the list */
- x = xlgetarg();
- list = xlgalist();
- xltest(&fcn,&tresult);
-
- /* remove matches */
- for (; consp(list); list = cdr(list))
-
- /* check to see if this element should be deleted */
- if (dotest2(x,car(list),fcn) != tresult) {
- next = consa(car(list));
- if (val) rplacd(last,next);
- else val = next;
- last = next;
- }
-
- /* restore the stack */
- xlpopn(2);
-
- /* return the updated list */
- return (val);
-}
-
-/* xremif - built-in function 'remove-if' */
-LVAL xremif(void)
-{
- LVAL remif();
- return (remif(TRUE));
-}
-
-/* xremifnot - built-in function 'remove-if-not' */
-LVAL xremifnot(void)
-{
- LVAL remif();
- return (remif(FALSE));
-}
-
-/* remif - common code for 'remove-if' and 'remove-if-not' */
-LOCAL LVAL remif(int tresult)
-{
- LVAL list,fcn,val,last=NULL,next;
-
- /* protect some pointers */
- xlstkcheck(2);
- xlsave(fcn);
- xlsave(val);
-
- /* get the expression to remove and the list */
- fcn = xlgetarg();
- list = xlgalist();
- xllastarg();
-
- /* remove matches */
- for (; consp(list); list = cdr(list))
-
- /* check to see if this element should be deleted */
- if (dotest1(car(list),fcn) != tresult) {
- next = consa(car(list));
- if (val) rplacd(last,next);
- else val = next;
- last = next;
- }
-
- /* restore the stack */
- xlpopn(2);
-
- /* return the updated list */
- return (val);
-}
-
-/* dotest1 - call a test function with one argument */
-int dotest1(LVAL arg, LVAL fun)
-{
- LVAL *newfp;
-
- /* create the new call frame */
- newfp = xlsp;
- pusharg(cvfixnum((FIXTYPE)(newfp - xlfp)));
- pusharg(fun);
- pusharg(cvfixnum((FIXTYPE)1));
- pusharg(arg);
- xlfp = newfp;
-
- /* return the result of applying the test function */
- return (xlapply(1) != NIL);
-
-}
-
-/* dotest2 - call a test function with two arguments */
-int dotest2(LVAL arg1, LVAL arg2, LVAL fun)
-{
- LVAL *newfp;
-
- /* create the new call frame */
- newfp = xlsp;
- pusharg(cvfixnum((FIXTYPE)(newfp - xlfp)));
- pusharg(fun);
- pusharg(cvfixnum((FIXTYPE)2));
- pusharg(arg1);
- pusharg(arg2);
- xlfp = newfp;
-
- /* return the result of applying the test function */
- return (xlapply(2) != NIL);
-
-}
-
-/* xnth - return the nth element of a list */
-LVAL xnth(void)
-{
- return (nth(TRUE));
-}
-
-/* xnthcdr - return the nth cdr of a list */
-LVAL xnthcdr(void)
-{
- return (nth(FALSE));
-}
-
-/* nth - internal nth function */
-LOCAL LVAL nth(int carflag)
-{
- LVAL list,num;
- FIXTYPE n;
-
- /* get n and the list */
- num = xlgafixnum();
- list = xlgacons();
- xllastarg();
-
- /* make sure the number isn't negative */
- if ((n = getfixnum(num)) < 0)
- xlfail("bad argument");
-
- /* find the nth element */
- while (consp(list) && --n >= 0)
- list = cdr(list);
-
- /* return the list beginning at the nth element */
- return (carflag && consp(list) ? car(list) : list);
-}
-
-/* xlength - return the length of a list or string */
-LVAL xlength(void)
-{
- FIXTYPE n=0;
- LVAL arg;
-
- /* get the list or string */
- arg = xlgetarg();
- xllastarg();
-
- /* find the length of a list */
- if (listp(arg))
- for (n = 0; consp(arg); n++)
- arg = cdr(arg);
-
- /* find the length of a string */
- else if (stringp(arg))
- n = (FIXTYPE)getslength(arg)-1;
-
- /* find the length of a vector */
- else if (vectorp(arg))
- n = (FIXTYPE)getsize(arg);
-
- /* otherwise, bad argument type */
- else
- xlerror("bad argument type",arg);
-
- /* return the length */
- return (cvfixnum(n));
-}
-
-/* xmapc - built-in function 'mapc' */
-LVAL xmapc(void)
-{
- return (map(TRUE,FALSE));
-}
-
-/* xmapcar - built-in function 'mapcar' */
-LVAL xmapcar(void)
-{
- return (map(TRUE,TRUE));
-}
-
-/* xmapl - built-in function 'mapl' */
-LVAL xmapl(void)
-{
- return (map(FALSE,FALSE));
-}
-
-/* xmaplist - built-in function 'maplist' */
-LVAL xmaplist(void)
-{
- return (map(FALSE,TRUE));
-}
-
-/* map - internal mapping function */
-LOCAL LVAL map(int carflag, int valflag)
-{
- LVAL *newfp,fun,lists,val,last,p,x,y;
- int argc;
-
- /* protect some pointers */
- xlstkcheck(3);
- xlsave(fun);
- xlsave(lists);
- xlsave(val);
-
- /* get the function to apply and the first list */
- fun = xlgetarg();
- lists = xlgalist();
-
- /* initialize the result list */
- val = (valflag ? NIL : lists);
-
- /* build a list of argument lists */
- for (lists = last = consa(lists); moreargs(); last = cdr(last))
- rplacd(last,cons(xlgalist(),NIL));
-
- /* loop through each of the argument lists */
- for (;;) {
- /* build an argument list from the sublists */
- newfp = xlsp;
- pusharg(cvfixnum((FIXTYPE)(newfp - xlfp)));
- pusharg(fun);
- pusharg(NIL);
- argc = 0;
- for (x = lists; x && (y = car(x)) && consp(y); x = cdr(x)) {
- pusharg(carflag ? car(y) : y);
- rplaca(x,cdr(y));
- ++argc;
- }
-
- /* quit if any of the lists were empty */
- if (x) {
- xlsp = newfp;
- break;
- }
-
- /* apply the function to the arguments */
- newfp[2] = cvfixnum((FIXTYPE)argc);
- xlfp = newfp;
- if (valflag) {
- p = consa(xlapply(argc));
- if (val) rplacd(last,p);
- else val = p;
- last = p;
- }
- else
- xlapply(argc);
- }
-
- /* restore the stack */
- xlpopn(3);
-
- /* return the last test expression value */
- return (val);
-}
-
-/* xrplca - replace the car of a list node */
-LVAL xrplca(void)
-{
- LVAL list,newcar;
-
- /* get the list and the new car */
- list = xlgacons();
- newcar = xlgetarg();
- xllastarg();
-
- /* replace the car */
- rplaca(list,newcar);
-
- /* return the list node that was modified */
- return (list);
-}
-
-/* xrplcd - replace the cdr of a list node */
-LVAL xrplcd(void)
-{
- LVAL list,newcdr;
-
- /* get the list and the new cdr */
- list = xlgacons();
- newcdr = xlgetarg();
- xllastarg();
-
- /* replace the cdr */
- rplacd(list,newcdr);
-
- /* return the list node that was modified */
- return (list);
-}
-
-/* xnconc - destructively append lists */
-LVAL xnconc(void)
-{
- LVAL next,last=NULL,val;
-
- /* initialize */
- val = NIL;
-
- /* concatenate each argument */
- if (moreargs()) {
- while (xlargc > 1) {
-
- /* ignore everything except lists */
- if ((next = nextarg()) && consp(next)) {
-
- /* concatenate this list to the result list */
- if (val) rplacd(last,next);
- else val = next;
-
- /* find the end of the list */
- while (consp(cdr(next)))
- next = cdr(next);
- last = next;
- }
- }
-
- /* handle the last argument */
- if (val) rplacd(last,nextarg());
- else val = nextarg();
- }
-
- /* return the list */
- return (val);
-}
-
-/* xdelete - built-in function 'delete' */
-LVAL xdelete(void)
-{
- LVAL x,list,fcn,last,val;
- int tresult;
-
- /* protect some pointers */
- xlsave1(fcn);
-
- /* get the expression to delete and the list */
- x = xlgetarg();
- list = xlgalist();
- xltest(&fcn,&tresult);
-
- /* delete leading matches */
- while (consp(list)) {
- if (dotest2(x,car(list),fcn) != tresult)
- break;
- list = cdr(list);
- }
- val = last = list;
-
- /* delete embedded matches */
- if (consp(list)) {
-
- /* skip the first non-matching element */
- list = cdr(list);
-
- /* look for embedded matches */
- while (consp(list)) {
-
- /* check to see if this element should be deleted */
- if (dotest2(x,car(list),fcn) == tresult)
- rplacd(last,cdr(list));
- else
- last = list;
-
- /* move to the next element */
- list = cdr(list);
- }
- }
-
- /* restore the stack */
- xlpop();
-
- /* return the updated list */
- return (val);
-}
-
-/* xdelif - built-in function 'delete-if' */
-LVAL xdelif(void)
-{
- LVAL delif();
- return (delif(TRUE));
-}
-
-/* xdelifnot - built-in function 'delete-if-not' */
-LVAL xdelifnot(void)
-{
- LVAL delif();
- return (delif(FALSE));
-}
-
-/* delif - common routine for 'delete-if' and 'delete-if-not' */
-LOCAL LVAL delif(int tresult)
-{
- LVAL list,fcn,last,val;
-
- /* protect some pointers */
- xlsave1(fcn);
-
- /* get the expression to delete and the list */
- fcn = xlgetarg();
- list = xlgalist();
- xllastarg();
-
- /* delete leading matches */
- while (consp(list)) {
- if (dotest1(car(list),fcn) != tresult)
- break;
- list = cdr(list);
- }
- val = last = list;
-
- /* delete embedded matches */
- if (consp(list)) {
-
- /* skip the first non-matching element */
- list = cdr(list);
-
- /* look for embedded matches */
- while (consp(list)) {
-
- /* check to see if this element should be deleted */
- if (dotest1(car(list),fcn) == tresult)
- rplacd(last,cdr(list));
- else
- last = list;
-
- /* move to the next element */
- list = cdr(list);
- }
- }
-
- /* restore the stack */
- xlpop();
-
- /* return the updated list */
- return (val);
-}
-
-/* xsort - built-in function 'sort' */
-LVAL xsort(void)
-{
- LVAL sortlist();
- LVAL list,fcn;
-
- /* protect some pointers */
- xlstkcheck(2);
- xlsave(list);
- xlsave(fcn);
-
- /* get the list to sort and the comparison function */
- list = xlgalist();
- fcn = xlgetarg();
- xllastarg();
-
- /* sort the list */
- list = sortlist(list,fcn);
-
- if (list && (ntype(list) == FREE_NODE)) {
- stdputstr("error in sort 2");
- }
-
- /* restore the stack and return the sorted list */
- xlpopn(2);
- return (list);
-}
-
-/*
- This sorting algorithm is based on a Modula-2 sort written by
- Richie Bielak and published in the February 1988 issue of
- "Computer Language" magazine in a letter to the editor.
-*/
-
-/* sortlist - sort a list using quicksort */
-LOCAL LVAL sortlist(LVAL list, LVAL fcn)
-{
- LVAL gluelists();
- LVAL smaller,pivot,larger;
-
- /* protect some pointers */
- xlstkcheck(3);
- xlsave(smaller);
- xlsave(pivot);
- xlsave(larger);
-
- /* lists with zero or one element are already sorted */
- if (consp(list) && consp(cdr(list))) {
- pivot = list; list = cdr(list);
- splitlist(pivot,list,&smaller,&larger,fcn);
- smaller = sortlist(smaller,fcn);
- larger = sortlist(larger,fcn);
- list = gluelists(smaller,pivot,larger);
- }
-
- /* cleanup the stack and return the sorted list */
- xlpopn(3);
- return (list);
-}
-
-/* splitlist - split the list around the pivot */
-LOCAL void splitlist(LVAL pivot, LVAL list, LVAL *psmaller, LVAL *plarger, LVAL fcn)
-{
- LVAL next;
-
- xlprot1(list); // protect list from gc
- // the rplacd disconnects list, and next is the only
- // reference to it, but next is immediately assigned to list
- // before dotest2 which is where gc might run.
-
- /* initialize the result lists */
- *psmaller = *plarger = NIL;
-
- /* split the list */
- for (; consp(list); list = next) {
- next = cdr(list);
- if (dotest2(car(list),car(pivot),fcn)) {
- rplacd(list,*psmaller);
- *psmaller = list;
- }
- else {
- rplacd(list,*plarger);
- *plarger = list;
- }
- }
- xlpop();
-}
-
-/* gluelists - glue the smaller and larger lists with the pivot */
-LOCAL LVAL gluelists(LVAL smaller, LVAL pivot, LVAL larger)
-{
- LVAL last;
-
- /* larger always goes after the pivot */
- rplacd(pivot,larger);
-
- /* if the smaller list is empty, we're done */
- if (null(smaller)) return (pivot);
-
- /* append the smaller to the front of the resulting list */
- for (last = smaller; consp(cdr(last)); last = cdr(last))
- ;
- rplacd(last,pivot);
-
- return (smaller);
-}
diff --git a/lib-src/libnyquist/xlisp/xlmath.c b/lib-src/libnyquist/xlisp/xlmath.c
deleted file mode 100644
index dcff361..0000000
--- a/lib-src/libnyquist/xlisp/xlmath.c
+++ /dev/null
@@ -1,425 +0,0 @@
-/* xlmath - xlisp built-in arithmetic functions */
-/* Copyright (c) 1985, by David Michael Betz
- All Rights Reserved
- Permission is granted for unrestricted non-commercial use */
-
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm eliminate some compiler warnings
- */
-
-#include "xlisp.h"
-#include <math.h>
-
-/* external variables */
-extern LVAL s_true;
-
-/* forward declarations */
-FORWARD LOCAL LVAL unary(int fcn);
-FORWARD LOCAL LVAL binary(int fcn);
-FORWARD LOCAL LVAL predicate(int fcn);
-FORWARD LOCAL LVAL compare(int fcn);
-FORWARD LOCAL void badiop(void);
-FORWARD LOCAL void badfop(void);
-
-
-/* binary functions */
-LVAL xadd(void) { return (binary('+')); } /* + */
-LVAL xsub(void) { return (binary('-')); } /* - */
-LVAL xmul(void) { return (binary('*')); } /* * */
-LVAL xdiv(void) { return (binary('/')); } /* / */
-LVAL xrem(void) { return (binary('%')); } /* rem */
-LVAL xmin(void) { return (binary('m')); } /* min */
-LVAL xmax(void) { return (binary('M')); } /* max */
-LVAL xexpt(void) { return (binary('E')); } /* expt */
-LVAL xlogand(void) { return (binary('&')); } /* logand */
-LVAL xlogior(void) { return (binary('|')); } /* logior */
-LVAL xlogxor(void) { return (binary('^')); } /* logxor */
-
-/* xgcd - greatest common divisor */
-LVAL xgcd(void)
-{
- FIXTYPE m,n,r;
- LVAL arg;
-
- if (!moreargs()) /* check for identity case */
- return (cvfixnum((FIXTYPE)0));
- arg = xlgafixnum();
- n = getfixnum(arg);
- if (n < (FIXTYPE)0) n = -n; /* absolute value */
- while (moreargs()) {
- arg = xlgafixnum();
- m = getfixnum(arg);
- if (m < (FIXTYPE)0) m = -m; /* absolute value */
- for (;;) { /* euclid's algorithm */
- r = m % n;
- if (r == (FIXTYPE)0)
- break;
- m = n;
- n = r;
- }
- }
- return (cvfixnum(n));
-}
-
-/* binary - handle binary operations */
-LOCAL LVAL binary(int fcn)
-{
- FIXTYPE ival=0,iarg=0;
- FLOTYPE fval=0,farg=0;
- LVAL arg;
- int mode=0;
-
- /* get the first argument */
- arg = xlgetarg();
-
- /* set the type of the first argument */
- if (fixp(arg)) {
- ival = getfixnum(arg);
- mode = 'I';
- }
- else if (floatp(arg)) {
- fval = getflonum(arg);
- mode = 'F';
- }
- else
- xlerror("bad argument type",arg);
-
- /* treat a single argument as a special case */
- if (!moreargs()) {
- switch (fcn) {
- case '-':
- switch (mode) {
- case 'I':
- ival = -ival;
- break;
- case 'F':
- fval = -fval;
- break;
- }
- break;
- case '/':
- switch (mode) {
- case 'I':
- checkizero(ival);
- ival = 1 / ival;
- break;
- case 'F':
- checkfzero(fval);
- fval = 1.0 / fval;
- break;
- }
- }
- }
-
- /* handle each remaining argument */
- while (moreargs()) {
-
- /* get the next argument */
- arg = xlgetarg();
-
- /* check its type */
- if (fixp(arg)) {
- switch (mode) {
- case 'I':
- iarg = getfixnum(arg);
- break;
- case 'F':
- farg = (FLOTYPE)getfixnum(arg);
- break;
- }
- }
- else if (floatp(arg)) {
- switch (mode) {
- case 'I':
- fval = (FLOTYPE)ival;
- farg = getflonum(arg);
- mode = 'F';
- break;
- case 'F':
- farg = getflonum(arg);
- break;
- }
- }
- else
- xlerror("bad argument type",arg);
-
- /* accumulate the result value */
- switch (mode) {
- case 'I':
- switch (fcn) {
- case '+': ival += iarg; break;
- case '-': ival -= iarg; break;
- case '*': ival *= iarg; break;
- case '/': checkizero(iarg); ival /= iarg; break;
- case '%': checkizero(iarg); ival %= iarg; break;
- case 'M': if (iarg > ival) ival = iarg; break;
- case 'm': if (iarg < ival) ival = iarg; break;
- case '&': ival &= iarg; break;
- case '|': ival |= iarg; break;
- case '^': ival ^= iarg; break;
- default: badiop();
- }
- break;
- case 'F':
- switch (fcn) {
- case '+': fval += farg; break;
- case '-': fval -= farg; break;
- case '*': fval *= farg; break;
- case '/': checkfzero(farg); fval /= farg; break;
- case 'M': if (farg > fval) fval = farg; break;
- case 'm': if (farg < fval) fval = farg; break;
- case 'E': fval = pow(fval,farg); break;
- default: badfop();
- }
- break;
- }
- }
-
- /* return the result */
- switch (mode) {
- case 'I': return (cvfixnum(ival));
- case 'F': return (cvflonum(fval));
- }
-
- /* This shouldn't fall through, but just in case, this will
- catch it and make the compiler happy... */
- xlerror("bad argument type",arg);
- return NULL;
-}
-
-/* checkizero - check for integer division by zero */
-void checkizero(FIXTYPE iarg)
-{
- if (iarg == 0)
- xlfail("division by zero");
-}
-
-/* checkfzero - check for floating point division by zero */
-void checkfzero(FLOTYPE farg)
-{
- if (farg == 0.0)
- xlfail("division by zero");
-}
-
-/* checkfneg - check for square root of a negative number */
-void checkfneg(FLOTYPE farg)
-{
- if (farg < 0.0)
- xlfail("square root of a negative number");
-}
-
-/* unary functions */
-LVAL xlognot(void) { return (unary('~')); } /* lognot */
-LVAL xabs(void) { return (unary('A')); } /* abs */
-LVAL xadd1(void) { return (unary('+')); } /* 1+ */
-LVAL xsub1(void) { return (unary('-')); } /* 1- */
-LVAL xsin(void) { return (unary('S')); } /* sin */
-LVAL xcos(void) { return (unary('C')); } /* cos */
-LVAL xtan(void) { return (unary('T')); } /* tan */
-LVAL xexp(void) { return (unary('E')); } /* exp */
-LVAL xsqrt(void) { return (unary('R')); } /* sqrt */
-LVAL xfix(void) { return (unary('I')); } /* truncate */
-LVAL xfloat(void) { return (unary('F')); } /* float */
-LVAL xrand(void) { return (unary('?')); } /* random */
-
-/* unary - handle unary operations */
-LOCAL LVAL unary(int fcn)
-{
- FLOTYPE fval;
- FIXTYPE ival;
- LVAL arg;
-
- /* get the argument */
- arg = xlgetarg();
- xllastarg();
-
- /* check its type */
- if (fixp(arg)) {
- ival = getfixnum(arg);
- switch (fcn) {
- case '~': ival = ~ival; break;
- case 'A': ival = (ival < 0 ? -ival : ival); break;
- case '+': ival++; break;
- case '-': ival--; break;
- case 'I': break;
- case 'F': return (cvflonum((FLOTYPE)ival));
- case '?': ival = (FIXTYPE)osrand((int)ival); break;
- default: badiop();
- }
- return (cvfixnum(ival));
- }
- else if (floatp(arg)) {
- fval = getflonum(arg);
- switch (fcn) {
- case 'A': fval = (fval < 0.0 ? -fval : fval); break;
- case '+': fval += 1.0; break;
- case '-': fval -= 1.0; break;
- case 'S': fval = sin(fval); break;
- case 'C': fval = cos(fval); break;
- case 'T': fval = tan(fval); break;
- case 'E': fval = exp(fval); break;
- case 'R': checkfneg(fval); fval = sqrt(fval); break;
- case 'I': return (cvfixnum((FIXTYPE)fval));
- case 'F': break;
- default: badfop();
- }
- return (cvflonum(fval));
- }
- else {
- xlerror("bad argument type",arg);
- return NULL;
- }
-}
-
-/* unary predicates */
-LVAL xminusp(void) { return (predicate('-')); } /* minusp */
-LVAL xzerop(void) { return (predicate('Z')); } /* zerop */
-LVAL xplusp(void) { return (predicate('+')); } /* plusp */
-LVAL xevenp(void) { return (predicate('E')); } /* evenp */
-LVAL xoddp(void) { return (predicate('O')); } /* oddp */
-
-/* predicate - handle a predicate function */
-LOCAL LVAL predicate(int fcn)
-{
- FLOTYPE fval;
- FIXTYPE ival=0;
- LVAL arg;
-
- /* get the argument */
- arg = xlgetarg();
- xllastarg();
-
- /* check the argument type */
- if (fixp(arg)) {
- ival = getfixnum(arg);
- switch (fcn) {
- case '-': ival = (ival < 0); break;
- case 'Z': ival = (ival == 0); break;
- case '+': ival = (ival > 0); break;
- case 'E': ival = ((ival & 1) == 0); break;
- case 'O': ival = ((ival & 1) != 0); break;
- default: badiop();
- }
- }
- else if (floatp(arg)) {
- fval = getflonum(arg);
- switch (fcn) {
- case '-': ival = (fval < 0); break;
- case 'Z': ival = (fval == 0); break;
- case '+': ival = (fval > 0); break;
- default: badfop();
- }
- }
- else
- xlerror("bad argument type",arg);
-
- /* return the result value */
- return (ival ? s_true : NIL);
-}
-
-/* comparison functions */
-LVAL xlss(void) { return (compare('<')); } /* < */
-LVAL xleq(void) { return (compare('L')); } /* <= */
-LVAL xequ(void) { return (compare('=')); } /* = */
-LVAL xneq(void) { return (compare('#')); } /* /= */
-LVAL xgeq(void) { return (compare('G')); } /* >= */
-LVAL xgtr(void) { return (compare('>')); } /* > */
-
-/* compare - common compare function */
-LOCAL LVAL compare(int fcn)
-{
- FIXTYPE icmp,ival=0,iarg=0;
- FLOTYPE fcmp,fval=0,farg=0;
- LVAL arg;
- int mode=0;
-
- /* get the first argument */
- arg = xlgetarg();
-
- /* set the type of the first argument */
- if (fixp(arg)) {
- ival = getfixnum(arg);
- mode = 'I';
- }
- else if (floatp(arg)) {
- fval = getflonum(arg);
- mode = 'F';
- }
- else
- xlerror("bad argument type",arg);
-
- /* handle each remaining argument */
- for (icmp = TRUE; icmp && moreargs(); ival = iarg, fval = farg) {
-
- /* get the next argument */
- arg = xlgetarg();
-
- /* check its type */
- if (fixp(arg)) {
- switch (mode) {
- case 'I':
- iarg = getfixnum(arg);
- break;
- case 'F':
- farg = (FLOTYPE)getfixnum(arg);
- break;
- }
- }
- else if (floatp(arg)) {
- switch (mode) {
- case 'I':
- fval = (FLOTYPE)ival;
- farg = getflonum(arg);
- mode = 'F';
- break;
- case 'F':
- farg = getflonum(arg);
- break;
- }
- }
- else
- xlerror("bad argument type",arg);
-
- /* compute result of the compare */
- switch (mode) {
- case 'I':
- icmp = ival - iarg;
- switch (fcn) {
- case '<': icmp = (icmp < 0); break;
- case 'L': icmp = (icmp <= 0); break;
- case '=': icmp = (icmp == 0); break;
- case '#': icmp = (icmp != 0); break;
- case 'G': icmp = (icmp >= 0); break;
- case '>': icmp = (icmp > 0); break;
- }
- break;
- case 'F':
- fcmp = fval - farg;
- switch (fcn) {
- case '<': icmp = (fcmp < 0.0); break;
- case 'L': icmp = (fcmp <= 0.0); break;
- case '=': icmp = (fcmp == 0.0); break;
- case '#': icmp = (fcmp != 0.0); break;
- case 'G': icmp = (fcmp >= 0.0); break;
- case '>': icmp = (fcmp > 0.0); break;
- }
- break;
- }
- }
-
- /* return the result */
- return (icmp ? s_true : NIL);
-}
-
-/* badiop - bad integer operation */
-LOCAL void badiop(void)
-{
- xlfail("bad integer operation");
-}
-
-/* badfop - bad floating point operation */
-LOCAL void badfop(void)
-{
- xlfail("bad floating point operation");
-}
diff --git a/lib-src/libnyquist/xlisp/xlobj.c b/lib-src/libnyquist/xlisp/xlobj.c
deleted file mode 100644
index f80e4ba..0000000
--- a/lib-src/libnyquist/xlisp/xlobj.c
+++ /dev/null
@@ -1,471 +0,0 @@
-/* xlobj - xlisp object functions */
-/* Copyright (c) 1985, by David Michael Betz
- All Rights Reserved
- Permission is granted for unrestricted non-commercial use */
-
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm eliminate some compiler warnings
- */
-
-#include "xlisp.h"
-
-/* external variables */
-extern LVAL s_stdout,s_lambda;
-
-/* local variables */
-static LVAL s_self,k_new,k_isnew;
-static LVAL class,object;
-
-/* instance variable numbers for the class 'Class' */
-#define MESSAGES 0 /* list of messages */
-#define IVARS 1 /* list of instance variable names */
-#define CVARS 2 /* list of class variable names */
-#define CVALS 3 /* list of class variable values */
-#define SUPERCLASS 4 /* pointer to the superclass */
-#define IVARCNT 5 /* number of class instance variables */
-#define IVARTOTAL 6 /* total number of instance variables */
-
-/* number of instance variables for the class 'Class' */
-#define CLASSSIZE 7
-
-/* forward declarations */
-FORWARD LOCAL LVAL entermsg(LVAL cls, LVAL msg);
-FORWARD LOCAL LVAL xsendmsg(LVAL obj, LVAL cls, LVAL sym);
-FORWARD LOCAL LVAL evmethod(LVAL obj, LVAL msgcls, LVAL method);
-FORWARD LOCAL int getivcnt(LVAL cls, int ivar);
-FORWARD LOCAL int listlength(LVAL list);
-
-
-/* xsend - send a message to an object */
-LVAL xsend(void)
-{
- LVAL obj;
- obj = xlgaobject();
- return (xsendmsg(obj,getclass(obj),xlgasymbol()));
-}
-
-/* xsendsuper - send a message to the superclass of an object */
-LVAL xsendsuper(void)
-{
- LVAL env,p;
- for (env = xlenv; env; env = cdr(env))
- if ((p = car(env)) && objectp(car(p)))
- return (xsendmsg(car(p),
- getivar(cdr(p),SUPERCLASS),
- xlgasymbol()));
- xlfail("not in a method");
- return NULL; /* never called */
-}
-
-/* xlclass - define a class */
-LVAL xlclass(char *name, int vcnt)
-{
- LVAL sym,cls;
-
- /* create the class */
- sym = xlenter(name);
- cls = newobject(class,CLASSSIZE);
- setvalue(sym,cls);
-
- /* set the instance variable counts */
- setivar(cls,IVARCNT,cvfixnum((FIXTYPE)vcnt));
- setivar(cls,IVARTOTAL,cvfixnum((FIXTYPE)vcnt));
-
- /* set the superclass to 'Object' */
- setivar(cls,SUPERCLASS,object);
-
- /* return the new class */
- return (cls);
-}
-
-/* xladdivar - enter an instance variable */
-void xladdivar(LVAL cls, char *var)
-{
- setivar(cls,IVARS,cons(xlenter(var),getivar(cls,IVARS)));
-}
-
-/* xladdmsg - add a message to a class */
-void xladdmsg(LVAL cls, char *msg, int offset)
-{
- extern FUNDEF funtab[];
- LVAL mptr;
-
- /* enter the message selector */
- mptr = entermsg(cls,xlenter(msg));
-
- /* store the method for this message */
- rplacd(mptr,cvsubr(funtab[offset].fd_subr,funtab[offset].fd_type,offset));
-}
-
-/* xlobgetvalue - get the value of an instance variable */
-int xlobgetvalue(LVAL pair, LVAL sym, LVAL *pval)
-{
- LVAL cls,names;
- int ivtotal,n;
-
- /* find the instance or class variable */
- for (cls = cdr(pair); objectp(cls); cls = getivar(cls,SUPERCLASS)) {
-
- /* check the instance variables */
- names = getivar(cls,IVARS);
- ivtotal = getivcnt(cls,IVARTOTAL);
- for (n = ivtotal - getivcnt(cls,IVARCNT); n < ivtotal; ++n) {
- if (car(names) == sym) {
- *pval = getivar(car(pair),n);
- return (TRUE);
- }
- names = cdr(names);
- }
-
- /* check the class variables */
- names = getivar(cls,CVARS);
- for (n = 0; consp(names); ++n) {
- if (car(names) == sym) {
- *pval = getelement(getivar(cls,CVALS),n);
- return (TRUE);
- }
- names = cdr(names);
- }
- }
-
- /* variable not found */
- return (FALSE);
-}
-
-/* xlobsetvalue - set the value of an instance variable */
-int xlobsetvalue(LVAL pair, LVAL sym, LVAL val)
-{
- LVAL cls,names;
- int ivtotal,n;
-
- /* find the instance or class variable */
- for (cls = cdr(pair); objectp(cls); cls = getivar(cls,SUPERCLASS)) {
-
- /* check the instance variables */
- names = getivar(cls,IVARS);
- ivtotal = getivcnt(cls,IVARTOTAL);
- for (n = ivtotal - getivcnt(cls,IVARCNT); n < ivtotal; ++n) {
- if (car(names) == sym) {
- setivar(car(pair),n,val);
- return (TRUE);
- }
- names = cdr(names);
- }
-
- /* check the class variables */
- names = getivar(cls,CVARS);
- for (n = 0; consp(names); ++n) {
- if (car(names) == sym) {
- setelement(getivar(cls,CVALS),n,val);
- return (TRUE);
- }
- names = cdr(names);
- }
- }
-
- /* variable not found */
- return (FALSE);
-}
-
-/* obisnew - default 'isnew' method */
-LVAL obisnew(void)
-{
- LVAL self;
- self = xlgaobject();
- xllastarg();
- return (self);
-}
-
-/* obclass - get the class of an object */
-LVAL obclass(void)
-{
- LVAL self;
- self = xlgaobject();
- xllastarg();
- return (getclass(self));
-}
-
-/* obshow - show the instance variables of an object */
-LVAL obshow(void)
-{
- LVAL self,fptr,cls,names;
- int ivtotal,n;
-
- /* get self and the file pointer */
- self = xlgaobject();
- fptr = (moreargs() ? xlgetfile() : getvalue(s_stdout));
- xllastarg();
-
- /* get the object's class */
- cls = getclass(self);
-
- /* print the object and class */
- xlputstr(fptr,"Object is ");
- xlprint(fptr,self,TRUE);
- xlputstr(fptr,", Class is ");
- xlprint(fptr,cls,TRUE);
- xlterpri(fptr);
-
- /* print the object's instance variables */
- for (; cls; cls = getivar(cls,SUPERCLASS)) {
- names = getivar(cls,IVARS);
- ivtotal = getivcnt(cls,IVARTOTAL);
- for (n = ivtotal - getivcnt(cls,IVARCNT); n < ivtotal; ++n) {
- xlputstr(fptr," ");
- xlprint(fptr,car(names),TRUE);
- xlputstr(fptr," = ");
- xlprint(fptr,getivar(self,n),TRUE);
- xlterpri(fptr);
- names = cdr(names);
- }
- }
-
- /* return the object */
- return (self);
-}
-
-/* clnew - create a new object instance */
-LVAL clnew(void)
-{
- LVAL self;
- self = xlgaobject();
- return (newobject(self,getivcnt(self,IVARTOTAL)));
-}
-
-/* clisnew - initialize a new class */
-LVAL clisnew(void)
-{
- LVAL self,ivars,cvars,super;
- int n;
-
- /* get self, the ivars, cvars and superclass */
- self = xlgaobject();
- ivars = xlgalist();
- cvars = (moreargs() ? xlgalist() : NIL);
- super = (moreargs() ? xlgaobject() : object);
- xllastarg();
-
- /* store the instance and class variable lists and the superclass */
- setivar(self,IVARS,ivars);
- setivar(self,CVARS,cvars);
- setivar(self,CVALS,(cvars ? newvector(listlength(cvars)) : NIL));
- setivar(self,SUPERCLASS,super);
-
- /* compute the instance variable count */
- n = listlength(ivars);
- setivar(self,IVARCNT,cvfixnum((FIXTYPE)n));
- n += getivcnt(super,IVARTOTAL);
- setivar(self,IVARTOTAL,cvfixnum((FIXTYPE)n));
-
- /* return the new class object */
- return (self);
-}
-
-/* clanswer - define a method for answering a message */
-LVAL clanswer(void)
-{
- LVAL self,msg,fargs,code,mptr;
-
- /* message symbol, formal argument list and code */
- self = xlgaobject();
- msg = xlgasymbol();
- fargs = xlgalist();
- code = xlgalist();
- xllastarg();
-
- /* make a new message list entry */
- mptr = entermsg(self,msg);
-
- /* setup the message node */
- xlprot1(fargs);
- fargs = cons(s_self,fargs); /* add 'self' as the first argument */
- rplacd(mptr,xlclose(msg,s_lambda,fargs,code,NIL,NIL));
- xlpop();
-
- /* return the object */
- return (self);
-}
-
-/* entermsg - add a message to a class */
-LOCAL LVAL entermsg(LVAL cls, LVAL msg)
-{
- LVAL lptr,mptr;
-
- /* lookup the message */
- for (lptr = getivar(cls,MESSAGES); lptr; lptr = cdr(lptr))
- if (car(mptr = car(lptr)) == msg)
- return (mptr);
-
- /* allocate a new message entry if one wasn't found */
- xlsave1(mptr);
- mptr = consa(msg);
- setivar(cls,MESSAGES,cons(mptr,getivar(cls,MESSAGES)));
- xlpop();
-
- /* return the symbol node */
- return (mptr);
-}
-
-/* xsendmsg - send a message to an object */
-LOCAL LVAL xsendmsg(LVAL obj, LVAL cls, LVAL sym)
-{
- LVAL msg=NULL,msgcls,method,val,p;
-
- /* look for the message in the class or superclasses */
- for (msgcls = cls; msgcls; ) {
-
- /* lookup the message in this class */
- for (p = getivar(msgcls,MESSAGES); p; p = cdr(p))
- if ((msg = car(p)) && car(msg) == sym)
- goto send_message;
-
- /* look in class's superclass */
- msgcls = getivar(msgcls,SUPERCLASS);
- }
-
- /* message not found */
- xlerror("no method for this message",sym);
-
-send_message:
-
- /* insert the value for 'self' (overwrites message selector) */
- *--xlargv = obj;
- ++xlargc;
-
- /* invoke the method */
- if ((method = cdr(msg)) == NULL)
- xlerror("bad method",method);
- switch (ntype(method)) {
- case SUBR:
- val = (*getsubr(method))();
- break;
- case CLOSURE:
- if (gettype(method) != s_lambda)
- xlerror("bad method",method);
- val = evmethod(obj,msgcls,method);
- break;
- default:
- xlerror("bad method",method);
- }
-
- /* after creating an object, send it the ":isnew" message */
- if (car(msg) == k_new && val) {
- xlprot1(val);
- xsendmsg(val,getclass(val),k_isnew);
- xlpop();
- }
-
- /* return the result value */
- return (val);
-}
-
-/* evmethod - evaluate a method */
-LOCAL LVAL evmethod(LVAL obj, LVAL msgcls, LVAL method)
-{
- LVAL oldenv,oldfenv,cptr,name,val=NULL;
- XLCONTEXT cntxt;
-
- /* protect some pointers */
- xlstkcheck(3);
- xlsave(oldenv);
- xlsave(oldfenv);
- xlsave(cptr);
-
- /* create an 'object' stack entry and a new environment frame */
- oldenv = xlenv;
- oldfenv = xlfenv;
- xlenv = cons(cons(obj,msgcls),closure_getenv(method));
- xlenv = xlframe(xlenv);
- xlfenv = getfenv(method);
-
- /* bind the formal parameters */
- xlabind(method,xlargc,xlargv);
-
- /* setup the implicit block */
- if ((name = getname(method)))
- xlbegin(&cntxt,CF_RETURN,name);
-
- /* execute the block */
- if (name && setjmp(cntxt.c_jmpbuf))
- val = xlvalue;
- else
- for (cptr = getbody(method); consp(cptr); cptr = cdr(cptr))
- val = xleval(car(cptr));
-
- /* finish the block context */
- if (name)
- xlend(&cntxt);
-
- /* restore the environment */
- xlenv = oldenv;
- xlfenv = oldfenv;
-
- /* restore the stack */
- xlpopn(3);
-
- /* return the result value */
- return (val);
-}
-
-/* getivcnt - get the number of instance variables for a class */
-LOCAL int getivcnt(LVAL cls, int ivar)
-{
- LVAL cnt;
- if ((cnt = getivar(cls,ivar)) == NIL || !fixp(cnt))
- xlfail("bad value for instance variable count");
- return ((int)getfixnum(cnt));
-}
-
-/* listlength - find the length of a list */
-LOCAL int listlength(LVAL list)
-{
- int len;
- for (len = 0; consp(list); len++)
- list = cdr(list);
- return (len);
-}
-
-/* obsymbols - initialize symbols */
-void obsymbols(void)
-{
- /* enter the object related symbols */
- s_self = xlenter("SELF");
- k_new = xlenter(":NEW");
- k_isnew = xlenter(":ISNEW");
-
- /* get the Object and Class symbol values */
- object = getvalue(xlenter("OBJECT"));
- class = getvalue(xlenter("CLASS"));
-}
-
-/* xloinit - object function initialization routine */
-void xloinit(void)
-{
- /* create the 'Class' object */
- class = xlclass("CLASS",CLASSSIZE);
- setelement(class,0,class);
-
- /* create the 'Object' object */
- object = xlclass("OBJECT",0);
-
- /* finish initializing 'class' */
- setivar(class,SUPERCLASS,object);
- xladdivar(class,"IVARTOTAL"); /* ivar number 6 */
- xladdivar(class,"IVARCNT"); /* ivar number 5 */
- xladdivar(class,"SUPERCLASS"); /* ivar number 4 */
- xladdivar(class,"CVALS"); /* ivar number 3 */
- xladdivar(class,"CVARS"); /* ivar number 2 */
- xladdivar(class,"IVARS"); /* ivar number 1 */
- xladdivar(class,"MESSAGES"); /* ivar number 0 */
- xladdmsg(class,":NEW",FT_CLNEW);
- xladdmsg(class,":ISNEW",FT_CLISNEW);
- xladdmsg(class,":ANSWER",FT_CLANSWER);
-
- /* finish initializing 'object' */
- setivar(object,SUPERCLASS,NIL);
- xladdmsg(object,":ISNEW",FT_OBISNEW);
- xladdmsg(object,":CLASS",FT_OBCLASS);
- xladdmsg(object,":SHOW",FT_OBSHOW);
-}
-
diff --git a/lib-src/libnyquist/xlisp/xlpp.c b/lib-src/libnyquist/xlisp/xlpp.c
deleted file mode 100644
index 43a7089..0000000
--- a/lib-src/libnyquist/xlisp/xlpp.c
+++ /dev/null
@@ -1,115 +0,0 @@
-/* xlpp.c - xlisp pretty printer */
-/* Copyright (c) 1985, by David Betz
- All Rights Reserved */
-
-#include "xlisp.h"
-
-/* external variables */
-extern LVAL s_stdout;
-extern int xlfsize;
-
-/* local variables */
-static int pplevel,ppmargin,ppmaxlen;
-static LVAL ppfile;
-
-LOCAL void pp(LVAL expr);
-LOCAL void ppterpri(void);
-LOCAL void pplist(LVAL expr);
-LOCAL void ppexpr(LVAL expr);
-LOCAL int flatsize(LVAL expr);
-LOCAL void ppputc(int ch);
-
-
-/* xpp - pretty-print an expression */
-LVAL xpp(void)
-{
- LVAL expr;
-
- /* get expression to print and file pointer */
- expr = xlgetarg();
- ppfile = (moreargs() ? xlgetfile() : getvalue(s_stdout));
- xllastarg();
-
- /* pretty print the expression */
- pplevel = ppmargin = 0; ppmaxlen = 40;
- pp(expr); ppterpri();
-
- /* return nil */
- return (NIL);
-}
-
-/* pp - pretty print an expression */
-LOCAL void pp(LVAL expr)
-{
- if (consp(expr))
- pplist(expr);
- else
- ppexpr(expr);
-}
-
-/* pplist - pretty print a list */
-LOCAL void pplist(LVAL expr)
-{
- int n;
-
- /* if the expression will fit on one line, print it on one */
- if ((n = flatsize(expr)) < ppmaxlen) {
- xlprint(ppfile,expr,TRUE);
- pplevel += n;
- }
-
- /* otherwise print it on several lines */
- else {
- n = ppmargin;
- ppputc('(');
- if (atomp(car(expr))) {
- ppexpr(car(expr));
- ppputc(' ');
- ppmargin = pplevel;
- expr = cdr(expr);
- }
- else
- ppmargin = pplevel;
- for (; consp(expr); expr = cdr(expr)) {
- pp(car(expr));
- if (consp(cdr(expr)))
- ppterpri();
- }
- if (expr != NIL) {
- ppputc(' '); ppputc('.'); ppputc(' ');
- ppexpr(expr);
- }
- ppputc(')');
- ppmargin = n;
- }
-}
-
-/* ppexpr - print an expression and update the indent level */
-LOCAL void ppexpr(LVAL expr)
-{
- xlprint(ppfile,expr,TRUE);
- pplevel += flatsize(expr);
-}
-
-/* ppputc - output a character and update the indent level */
-LOCAL void ppputc(int ch)
-{
- xlputc(ppfile,ch);
- pplevel++;
-}
-
-/* ppterpri - terminate the print line and indent */
-LOCAL void ppterpri(void)
-{
- xlterpri(ppfile);
- for (pplevel = 0; pplevel < ppmargin; pplevel++)
- xlputc(ppfile,' ');
-}
-
-/* flatsize - compute the flat size of an expression */
-LOCAL int flatsize(LVAL expr)
-{
- xlfsize = 0;
- xlprint(NIL,expr,TRUE);
- return (xlfsize);
-}
diff --git a/lib-src/libnyquist/xlisp/xlprin.c b/lib-src/libnyquist/xlisp/xlprin.c
deleted file mode 100644
index bf3a99a..0000000
--- a/lib-src/libnyquist/xlisp/xlprin.c
+++ /dev/null
@@ -1,338 +0,0 @@
-/* xlprint - xlisp print routine */
-/* Copyright (c) 1985, by David Michael Betz
- All Rights Reserved
- Permission is granted for unrestricted non-commercial use
-
- * HISTORY
- * 28-Apr-03 Mazzoni
- * Eliminated some compiler warnings
- *
- * 3-Apr-88 Dale Amon at CMU-CSD
- * Added extern support to xlisp 2.0
- *
- * 18-Oct-87 Dale Amon at CMU-CSD
- * Added print support for EXTERN nodes
- */
-
-
-#include "string.h"
-#include "xlisp.h"
-
-/* external variables */
-extern LVAL s_printcase,k_downcase,k_const,k_nmacro;
-extern LVAL s_ifmt,s_ffmt;
-extern FUNDEF funtab[];
-extern char buf[];
-
-LOCAL void putsymbol(LVAL fptr, char *str, int escflag);
-LOCAL void putsubr(LVAL fptr, char *tag, LVAL val);
-LOCAL void putfixnum(LVAL fptr, FIXTYPE n);
-LOCAL void putflonum(LVAL fptr, FLOTYPE n);
-LOCAL void putchcode(LVAL fptr, int ch, int escflag);
-LOCAL void putstring(LVAL fptr, LVAL str);
-LOCAL void putqstring(LVAL fptr, LVAL str);
-LOCAL void putclosure(LVAL fptr, LVAL val);
-LOCAL void putoct(LVAL fptr, int n);
-
-
-/* xlprint - print an xlisp value */
-void xlprint(LVAL fptr, LVAL vptr, int flag)
-{
- LVAL nptr,next;
- int n,i;
-
- /* print nil */
- if (vptr == NIL) {
- putsymbol(fptr,"NIL",flag);
- return;
- }
-
- /* check value type */
- switch (ntype(vptr)) {
- case SUBR:
- putsubr(fptr,"Subr",vptr);
- break;
- case FSUBR:
- putsubr(fptr,"FSubr",vptr);
- break;
- case CONS:
- xlputc(fptr,'(');
- for (nptr = vptr; nptr != NIL; nptr = next) {
- xlprint(fptr,car(nptr),flag);
- if ((next = cdr(nptr))) {
- if (consp(next))
- xlputc(fptr,' ');
- else {
- xlputstr(fptr," . ");
- xlprint(fptr,next,flag);
- break;
- }
- }
- }
- xlputc(fptr,')');
- break;
- case SYMBOL:
- putsymbol(fptr,(char *) getstring(getpname(vptr)),flag);
- break;
- case FIXNUM:
- putfixnum(fptr,getfixnum(vptr));
- break;
- case FLONUM:
- putflonum(fptr,getflonum(vptr));
- break;
- case CHAR:
- putchcode(fptr,getchcode(vptr),flag);
- break;
- case STRING:
- if (flag)
- putqstring(fptr,vptr);
- else
- putstring(fptr,vptr);
- break;
- case STREAM:
- putatm(fptr,"File-Stream",vptr);
- break;
- case USTREAM:
- putatm(fptr,"Unnamed-Stream",vptr);
- break;
- case OBJECT:
- putatm(fptr,"Object",vptr);
- break;
- case VECTOR:
- xlputc(fptr,'#'); xlputc(fptr,'(');
- for (i = 0, n = getsize(vptr); n-- > 0; ) {
- xlprint(fptr,getelement(vptr,i++),flag);
- if (n) xlputc(fptr,' ');
- }
- xlputc(fptr,')');
- break;
- case CLOSURE:
- putclosure(fptr,vptr);
- break;
- case EXTERN:
- if (getdesc(vptr)) {
- (*(getdesc(vptr)->print_meth))(fptr, getinst(vptr));
- }
- break;
- case FREE_NODE:
- putatm(fptr,"Free",vptr);
- break;
- default:
- putatm(fptr,"Foo",vptr);
- break;
- }
-}
-
-/* xlterpri - terminate the current print line */
-void xlterpri(LVAL fptr)
-{
- xlputc(fptr,'\n');
-}
-
-/* xlputstr - output a string */
-void xlputstr(LVAL fptr, char *str)
-{
- while (*str)
- xlputc(fptr,*str++);
-}
-
-/* putsymbol - output a symbol */
-LOCAL void putsymbol(LVAL fptr, char *str, int escflag)
-{
- int downcase;
- LVAL type;
- char *p;
-
- /* check for printing without escapes */
- if (!escflag) {
- xlputstr(fptr,str);
- return;
- }
-
- /* check to see if symbol needs escape characters */
- if (tentry(*str) == k_const) {
- for (p = str; *p; ++p)
- if (islower(*p)
- || ((type = tentry(*p)) != k_const
- && (!consp(type) || car(type) != k_nmacro))) {
- xlputc(fptr,'|');
- while (*str) {
- if (*str == '\\' || *str == '|')
- xlputc(fptr,'\\');
- xlputc(fptr,*str++);
- }
- xlputc(fptr,'|');
- return;
- }
- }
-
- /* get the case translation flag */
- downcase = (getvalue(s_printcase) == k_downcase);
-
- /* check for the first character being '#' */
- if (*str == '#' || *str == '.' || xlisnumber(str,NULL))
- xlputc(fptr,'\\');
-
- /* output each character */
- while (*str) {
- /* don't escape colon until we add support for packages */
- if (*str == '\\' || *str == '|' /* || *str == ':' */)
- xlputc(fptr,'\\');
- xlputc(fptr,(downcase && isupper(*str) ? tolower(*str++) : *str++));
- }
-}
-
-/* putstring - output a string */
-LOCAL void putstring(LVAL fptr, LVAL str)
-{
- unsigned char *p;
- int ch;
-
- /* output each character */
- for (p = getstring(str); (ch = *p) != '\0'; ++p)
- xlputc(fptr,ch);
-}
-
-/* putqstring - output a quoted string */
-LOCAL void putqstring(LVAL fptr, LVAL str)
-{
- unsigned char *p;
- int ch;
-
- /* get the string pointer */
- p = getstring(str);
-
- /* output the initial quote */
- xlputc(fptr,'"');
-
- /* output each character in the string */
- for (p = getstring(str); (ch = *p) != '\0'; ++p)
-
- /* check for a control character */
- if (ch < 040 || ch == '\\' || ch > 0176) {
- xlputc(fptr,'\\');
- switch (ch) {
- case '\011':
- xlputc(fptr,'t');
- break;
- case '\012':
- xlputc(fptr,'n');
- break;
- case '\014':
- xlputc(fptr,'f');
- break;
- case '\015':
- xlputc(fptr,'r');
- break;
- case '\\':
- xlputc(fptr,'\\');
- break;
- default:
- putoct(fptr,ch);
- break;
- }
- }
-
- /* output a normal character */
- else
- xlputc(fptr,ch);
-
- /* output the terminating quote */
- xlputc(fptr,'"');
-}
-
-/* putatm - output an atom */
-void putatm(LVAL fptr, char *tag, LVAL val)
-{
- sprintf(buf,"#<%s: #",tag); xlputstr(fptr,buf);
- sprintf(buf,AFMT,(int)val); xlputstr(fptr,buf);
- xlputc(fptr,'>');
-}
-
-/* putsubr - output a subr/fsubr */
-LOCAL void putsubr(LVAL fptr, char *tag, LVAL val)
-{
- sprintf(buf,"#<%s-%s: #",tag,funtab[getoffset(val)].fd_name);
- xlputstr(fptr,buf);
- sprintf(buf,AFMT,(int)val); xlputstr(fptr,buf);
- xlputc(fptr,'>');
-}
-
-/* putclosure - output a closure */
-LOCAL void putclosure(LVAL fptr, LVAL val)
-{
- LVAL name;
- if ((name = getname(val)))
- sprintf(buf,"#<Closure-%s: #",getstring(getpname(name)));
- else
- strcpy(buf,"#<Closure: #");
- xlputstr(fptr,buf);
- sprintf(buf,AFMT,(int)val); xlputstr(fptr,buf);
- xlputc(fptr,'>');
-/*
- xlputstr(fptr,"\nName: "); xlprint(fptr,getname(val),TRUE);
- xlputstr(fptr,"\nType: "); xlprint(fptr,gettype(val),TRUE);
- xlputstr(fptr,"\nLambda: "); xlprint(fptr,getlambda(val),TRUE);
- xlputstr(fptr,"\nArgs: "); xlprint(fptr,getargs(val),TRUE);
- xlputstr(fptr,"\nOargs: "); xlprint(fptr,getoargs(val),TRUE);
- xlputstr(fptr,"\nRest: "); xlprint(fptr,getrest(val),TRUE);
- xlputstr(fptr,"\nKargs: "); xlprint(fptr,getkargs(val),TRUE);
- xlputstr(fptr,"\nAargs: "); xlprint(fptr,getaargs(val),TRUE);
- xlputstr(fptr,"\nBody: "); xlprint(fptr,getbody(val),TRUE);
- xlputstr(fptr,"\nEnv: "); xlprint(fptr,closure_getenv(val),TRUE);
- xlputstr(fptr,"\nFenv: "); xlprint(fptr,getfenv(val),TRUE);
-*/
-}
-
-/* putfixnum - output a fixnum */
-LOCAL void putfixnum(LVAL fptr, FIXTYPE n)
-{
- unsigned char *fmt;
- LVAL val;
- fmt = ((val = getvalue(s_ifmt)) && stringp(val) ? getstring(val)
- : (unsigned char *)IFMT);
- sprintf(buf, (char *) fmt,n);
- xlputstr(fptr,buf);
-}
-
-/* putflonum - output a flonum */
-LOCAL void putflonum(LVAL fptr, FLOTYPE n)
-{
- unsigned char *fmt;
- LVAL val;
- fmt = ((val = getvalue(s_ffmt)) && stringp(val) ? getstring(val)
- : (unsigned char *)"%g");
- sprintf(buf,(char *) fmt,n);
- xlputstr(fptr,buf);
-}
-
-/* putchcode - output a character */
-LOCAL void putchcode(LVAL fptr, int ch, int escflag)
-{
- if (escflag) {
- switch (ch) {
- case '\n':
- xlputstr(fptr,"#\\Newline");
- break;
- case ' ':
- xlputstr(fptr,"#\\Space");
- break;
- case '\t':
- xlputstr(fptr, "#\\Tab");
- break;
- default:
- sprintf(buf,"#\\%c",ch);
- xlputstr(fptr,buf);
- break;
- }
- }
- else
- xlputc(fptr,ch);
-}
-
-/* putoct - output an octal byte value */
-LOCAL void putoct(LVAL fptr, int n)
-{
- sprintf(buf,"%03o",n);
- xlputstr(fptr,buf);
-}
diff --git a/lib-src/libnyquist/xlisp/xlread.c b/lib-src/libnyquist/xlisp/xlread.c
deleted file mode 100644
index 7cba99f..0000000
--- a/lib-src/libnyquist/xlisp/xlread.c
+++ /dev/null
@@ -1,891 +0,0 @@
-/* xlread - xlisp expression input routine */
-/* Copyright (c) 1985, by David Michael Betz
- All Rights Reserved
- Permission is granted for unrestricted non-commercial use */
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm eliminate some compiler warnings
- * replaced system-specific code with generic calls (see path.c)
- */
-
-
-#include "stdlib.h"
-#include "string.h"
-#include "switches.h"
-#include "xlisp.h"
-#ifdef WINDOWS
-#include "winfun.h"
-#endif
-#ifdef MACINTOSH
-#include "macstuff.h"
-#endif
-
-/* symbol parser modes */
-#define DONE 0
-#define NORMAL 1
-#define ESCAPE 2
-
-/* external variables */
-extern LVAL s_stdout,s_true,s_dot;
-extern LVAL s_quote,s_function,s_bquote,s_comma,s_comat;
-extern LVAL s_rtable,k_wspace,k_const,k_nmacro,k_tmacro;
-extern LVAL k_sescape,k_mescape;
-extern char buf[];
-
-/* external routines */
-extern FILE *osaopen();
-/* on the NeXT, atof is a macro in stdlib.h */
-#ifndef atof
-extern double atof();
-#endif
-#ifndef __MWERKS__
-#ifdef ITYPE
-extern ITYPE;
-#endif
-#endif
-
-#define WSPACE "\t \f\r\n"
-#define CONST1 "!$%&*+-./0123456789:<=>?@[]^_{}~"
-#define CONST2 "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
-
-/* forward declarations */
-FORWARD LVAL callmacro(LVAL fptr, int ch);
-FORWARD LOCAL LVAL psymbol(LVAL fptr);
-FORWARD LOCAL LVAL punintern(LVAL fptr);
-FORWARD LOCAL LVAL pnumber(LVAL fptr, int radix);
-FORWARD LOCAL LVAL pquote(LVAL fptr, LVAL sym);
-FORWARD LOCAL LVAL plist(LVAL fptr);
-FORWARD LOCAL LVAL pvector(LVAL fptr);
-FORWARD LOCAL void upcase(char *str);
-FORWARD LOCAL int pname(LVAL fptr,int *pescflag);
-FORWARD LOCAL void pcomment(LVAL fptr);
-FORWARD LOCAL int checkeof(LVAL fptr);
-FORWARD LOCAL int nextch(LVAL fptr);
-FORWARD LOCAL void badeof(LVAL fptr);
-FORWARD LOCAL int storech(char *buf, int i, int ch);
-
-#ifdef WINDOWS
-static char save_file_name[STRMAX+1]; /* keeps files opened by prompt */
-static int sfn_valid = FALSE;
-#endif
-
-/* xlload - load a file of xlisp expressions */
-int xlload(char *fname, int vflag, int pflag)
-{
- char fullname[STRMAX+1];
-#ifdef WINDOWS
- char *ptr;
-#endif
- LVAL fptr,expr;
- XLCONTEXT cntxt;
- FILE *fp;
- int sts;
-
- /* protect some pointers */
- xlstkcheck(2);
- xlsave(fptr);
- xlsave(expr);
-
- /* space for copy + extension? */
- if (strlen(fname) > STRMAX - 4) goto toolong;
- strcpy(fullname,fname);
-#ifdef WINDOWS
-#ifdef WINGUI
- if (strcmp(fullname, "*") == 0) {
- if (sfn_valid) {
- strcpy(fullname, save_file_name);
- } else {
- strcpy(fullname, "*.*");
- }
- }
- if (strcmp(fullname, "*.*") == 0) {
- char *name = getfilename(NULL, "lsp", "r", "Load file");
- if (name) {
- strcpy(fullname, name);
- strcpy(save_file_name, name);
- sfn_valid = TRUE;
- } else {
- xlpopn(2);
- return FALSE;
- }
- }
-#endif
- /* replace "/" with "\" so that (current-path) will work */
- for (ptr = fullname; *ptr; ptr++) {
- if (*ptr == '/') *ptr = '\\';
- }
-#endif
-
- /* default the extension if there is room */
- if (needsextension(fullname)) {
- strcat(fullname,".lsp");
- }
-
- /* allocate a file node */
- fptr = cvfile(NULL);
-
- /* open the file */
- if ((fp = osaopen(fullname,"r")) == NULL) {
- /* new cross-platform code by dmazzoni - new xlisp_path
- implementation is in path.c */
- const char *newname = find_in_xlisp_path(fullname);
- if (newname && newname[0]) {
- if (strlen(newname) > STRMAX)
- goto toolong;
- strcpy(fullname, newname);
- fp = osaopen(fullname, "r");
- }
-
- if (!fp) {
- /* the file STILL wasn't found */
- xlpopn(2);
- return (FALSE);
- }
- }
-
- setfile(fptr,fp);
- setvalue(s_loadingfiles, cons(fptr, getvalue(s_loadingfiles)));
- setvalue(s_loadingfiles, cons(cvstring(fullname), getvalue(s_loadingfiles)));
-
- /* print the information line */
- if (vflag)
- { sprintf(buf,"; loading \"%s\"\n",fullname); stdputstr(buf); }
-
- /* read, evaluate and possibly print each expression in the file */
- xlbegin(&cntxt,CF_ERROR,s_true);
- if (setjmp(cntxt.c_jmpbuf))
- sts = FALSE;
- else {
- while (xlread(fptr,&expr,FALSE)) {
- expr = xleval(expr);
- if (pflag)
- stdprint(expr);
- }
- sts = TRUE;
- }
- xlend(&cntxt);
-
- /* close the file */
- osclose(getfile(fptr));
- setfile(fptr,NULL);
- if (consp(getvalue(s_loadingfiles)) &&
- consp(cdr(getvalue(s_loadingfiles))) &&
- car(cdr(getvalue(s_loadingfiles))) == fptr) {
- setvalue(s_loadingfiles, cdr(cdr(getvalue(s_loadingfiles))));
- }
-
- /* restore the stack */
- xlpopn(2);
-
- /* return status */
- return (sts);
-
-toolong:
- xlcerror("ignore file", "file name too long", NIL);
- xlpopn(2);
- return FALSE;
-}
-
-/* xlread - read an xlisp expression */
-int xlread(LVAL fptr, LVAL *pval, int rflag)
-{
- int sts;
-
- /* read an expression */
- while ((sts = readone(fptr,pval)) == FALSE)
- ;
-
- /* return status */
- return (sts == EOF ? FALSE : TRUE);
-}
-
-/* readone - attempt to read a single expression */
-int readone(LVAL fptr, LVAL *pval)
-{
- LVAL val,type;
- int ch;
-
- /* get a character and check for EOF */
- if ((ch = xlgetc(fptr)) == EOF)
- return (EOF);
-
- /* handle white space */
- if ((type = tentry(ch)) == k_wspace)
- return (FALSE);
-
- /* handle symbol constituents */
- else if (type == k_const) {
- xlungetc(fptr,ch);
- *pval = psymbol(fptr);
- return (TRUE);
- }
-
- /* handle single and multiple escapes */
- else if (type == k_sescape || type == k_mescape) {
- xlungetc(fptr,ch);
- *pval = psymbol(fptr);
- return (TRUE);
- }
-
- /* handle read macros */
- else if (consp(type)) {
- if ((val = callmacro(fptr,ch)) && consp(val)) {
- *pval = car(val);
- return (TRUE);
- }
- else
- return (FALSE);
- }
-
- /* handle illegal characters */
- else
- xlerror("illegal character",cvfixnum((FIXTYPE)ch));
-}
-
-/* rmhash - read macro for '#' */
-LVAL rmhash(void)
-{
- LVAL fptr,mch,val;
- int escflag,ch;
-
- /* protect some pointers */
- xlsave1(val);
-
- /* get the file and macro character */
- fptr = xlgetfile();
- mch = xlgachar();
- xllastarg();
-
- /* make the return value */
- val = consa(NIL);
-
- /* check the next character */
- switch (ch = xlgetc(fptr)) {
- case '\'':
- rplaca(val,pquote(fptr,s_function));
- break;
- case '(':
- rplaca(val,pvector(fptr));
- break;
- case 'b':
- case 'B':
- rplaca(val,pnumber(fptr,2));
- break;
- case 'o':
- case 'O':
- rplaca(val,pnumber(fptr,8));
- break;
- case 'x':
- case 'X':
- rplaca(val,pnumber(fptr,16));
- break;
- case '\\':
- xlungetc(fptr,ch);
- pname(fptr,&escflag);
- ch = buf[0];
- if (strlen(buf) > 1) {
- upcase((char *) buf);
- if (strcmp(buf,"NEWLINE") == 0)
- ch = '\n';
- else if (strcmp(buf,"SPACE") == 0)
- ch = ' ';
- else if (strcmp(buf,"TAB") == 0)
- ch = '\t';
- else
- xlerror("unknown character name",cvstring(buf));
- }
- rplaca(val,cvchar(ch));
- break;
- case ':':
- rplaca(val,punintern(fptr));
- break;
- case '|':
- pcomment(fptr);
- val = NIL;
- break;
- default:
- xlerror("illegal character after #",cvfixnum((FIXTYPE)ch));
- }
-
- /* restore the stack */
- xlpop();
-
- /* return the value */
- return (val);
-}
-
-/* rmquote - read macro for '\'' */
-LVAL rmquote(void)
-{
- LVAL fptr,mch;
-
- /* get the file and macro character */
- fptr = xlgetfile();
- mch = xlgachar();
- xllastarg();
-
- /* parse the quoted expression */
- return (consa(pquote(fptr,s_quote)));
-}
-
-/* rmdquote - read macro for '"' */
-LVAL rmdquote(void)
-{
- unsigned char buf[STRMAX+1],*p,*sptr;
- LVAL fptr,str,newstr,mch;
- int len,blen,ch,d2,d3;
-
- /* protect some pointers */
- xlsave1(str);
-
- /* get the file and macro character */
- fptr = xlgetfile();
- mch = xlgachar();
- xllastarg();
-
- /* loop looking for a closing quote */
- len = blen = 0; p = buf;
- while ((ch = checkeof(fptr)) != '"') {
-
- /* handle escaped characters */
- switch (ch) {
- case '\\':
- switch (ch = checkeof(fptr)) {
- case 't':
- ch = '\011';
- break;
- case 'n':
- ch = '\012';
- break;
- case 'f':
- ch = '\014';
- break;
- case 'r':
- ch = '\015';
- break;
- default:
- if (ch >= '0' && ch <= '7') {
- d2 = checkeof(fptr);
- d3 = checkeof(fptr);
- if (d2 < '0' || d2 > '7'
- || d3 < '0' || d3 > '7')
- xlfail("invalid octal digit");
- ch -= '0'; d2 -= '0'; d3 -= '0';
- ch = (ch << 6) | (d2 << 3) | d3;
- }
- break;
- }
- }
-
- /* check for buffer overflow */
- if (blen >= STRMAX) {
- newstr = new_string(len + STRMAX + 1);
- sptr = getstring(newstr); *sptr = '\0';
- if (str) strcat((char *) sptr, (char *) getstring(str));
- *p = '\0'; strcat((char *) sptr, (char *) buf);
- p = buf; blen = 0;
- len += STRMAX;
- str = newstr;
- }
-
- /* store the character */
- *p++ = ch; ++blen;
- }
-
- /* append the last substring */
- if (str == NIL || blen) {
- newstr = new_string(len + blen + 1);
- sptr = getstring(newstr); *sptr = '\0';
- if (str) strcat((char *) sptr, (char *) getstring(str));
- *p = '\0'; strcat((char *) sptr, (char *) buf);
- str = newstr;
- }
-
- /* restore the stack */
- xlpop();
-
- /* return the new string */
- return (consa(str));
-}
-
-/* rmbquote - read macro for '`' */
-LVAL rmbquote(void)
-{
- LVAL fptr,mch;
-
- /* get the file and macro character */
- fptr = xlgetfile();
- mch = xlgachar();
- xllastarg();
-
- /* parse the quoted expression */
- return (consa(pquote(fptr,s_bquote)));
-}
-
-/* rmcomma - read macro for ',' */
-LVAL rmcomma(void)
-{
- LVAL fptr,mch,sym;
- int ch;
-
- /* get the file and macro character */
- fptr = xlgetfile();
- mch = xlgachar();
- xllastarg();
-
- /* check the next character */
- if ((ch = xlgetc(fptr)) == '@')
- sym = s_comat;
- else {
- xlungetc(fptr,ch);
- sym = s_comma;
- }
-
- /* make the return value */
- return (consa(pquote(fptr,sym)));
-}
-
-/* rmlpar - read macro for '(' */
-LVAL rmlpar(void)
-{
- LVAL fptr,mch;
-
- /* get the file and macro character */
- fptr = xlgetfile();
- mch = xlgachar();
- xllastarg();
-
- /* make the return value */
- return (consa(plist(fptr)));
-}
-
-/* 4035 is the "no return value" warning message */
-/* rmrpar, pcomment, badeof, and upcase don't return anything */
-/* #pragma warning(disable: 4035) */
-
-/* rmrpar - read macro for ')' */
-LVAL rmrpar(void)
-{
- xlfail("misplaced right paren");
- return NULL; /* never used */
-}
-
-/* rmsemi - read macro for ';' */
-LVAL rmsemi(void)
-{
- LVAL fptr,mch;
- int ch;
-
- /* get the file and macro character */
- fptr = xlgetfile();
- mch = xlgachar();
- xllastarg();
-
- /* skip to end of line */
- while ((ch = xlgetc(fptr)) != EOF && ch != '\n')
- ;
-
- /* return nil (nothing read) */
- return (NIL);
-}
-
-/* pcomment - parse a comment delimited by #| and |# */
-LOCAL void pcomment(LVAL fptr)
-{
- int lastch,ch,n;
-
- /* look for the matching delimiter (and handle nesting) */
- for (n = 1, lastch = -1; n > 0 && (ch = xlgetc(fptr)) != EOF; ) {
- if (lastch == '|' && ch == '#')
- { --n; ch = -1; }
- else if (lastch == '#' && ch == '|')
- { ++n; ch = -1; }
- lastch = ch;
- }
-}
-
-/* pnumber - parse a number */
-LOCAL LVAL pnumber(LVAL fptr, int radix)
-{
- int digit,ch;
- long num;
-
- for (num = 0L; (ch = xlgetc(fptr)) != EOF; ) {
- if (islower(ch)) ch = toupper(ch);
- if (!('0' <= ch && ch <= '9') && !('A' <= ch && ch <= 'F'))
- break;
- if ((digit = (ch <= '9' ? ch - '0' : ch - 'A' + 10)) >= radix)
- break;
- num = num * (long)radix + (long)digit;
- }
- xlungetc(fptr,ch);
- return (cvfixnum((FIXTYPE)num));
-}
-
-/* plist - parse a list */
-LOCAL LVAL plist(LVAL fptr)
-{
- LVAL val,expr,lastnptr,nptr;
-
- /* protect some pointers */
- xlstkcheck(2);
- xlsave(val);
- xlsave(expr);
-
- /* keep appending nodes until a closing paren is found */
- for (lastnptr = NIL; nextch(fptr) != ')'; )
-
- /* get the next expression */
- switch (readone(fptr,&expr)) {
- case EOF:
- badeof(fptr);
- case TRUE:
-
- /* check for a dotted tail */
- if (expr == s_dot) {
- /* make sure there's a node */
- if (lastnptr == NIL)
- xlfail("invalid dotted pair");
-
- /* parse the expression after the dot */
- if (!xlread(fptr,&expr,TRUE))
- badeof(fptr);
- rplacd(lastnptr,expr);
-
- /* make sure its followed by a close paren */
- if (nextch(fptr) != ')')
- xlfail("invalid dotted pair");
- }
-
- /* otherwise, handle a normal list element */
- else {
- nptr = consa(expr);
- if (lastnptr == NIL)
- val = nptr;
- else
- rplacd(lastnptr,nptr);
- lastnptr = nptr;
- }
- break;
- }
-
- /* skip the closing paren */
- xlgetc(fptr);
-
- /* restore the stack */
- xlpopn(2);
-
- /* return successfully */
- return (val);
-}
-
-/* pvector - parse a vector */
-LOCAL LVAL pvector(LVAL fptr)
-{
- LVAL list,expr,val,lastnptr,nptr;
- int len,ch,i;
-
- /* protect some pointers */
- xlstkcheck(2);
- xlsave(list);
- xlsave(expr);
-
- /* keep appending nodes until a closing paren is found */
- for (lastnptr = NIL, len = 0; (ch = nextch(fptr)) != ')'; ) {
-
- /* check for end of file */
- if (ch == EOF)
- badeof(fptr);
-
- /* get the next expression */
- switch (readone(fptr,&expr)) {
- case EOF:
- badeof(fptr);
- case TRUE:
- nptr = consa(expr);
- if (lastnptr == NIL)
- list = nptr;
- else
- rplacd(lastnptr,nptr);
- lastnptr = nptr;
- len++;
- break;
- }
- }
-
- /* skip the closing paren */
- xlgetc(fptr);
-
- /* make a vector of the appropriate length */
- val = newvector(len);
-
- /* copy the list into the vector */
- for (i = 0; i < len; ++i, list = cdr(list))
- setelement(val,i,car(list));
-
- /* restore the stack */
- xlpopn(2);
-
- /* return successfully */
- return (val);
-}
-
-/* pquote - parse a quoted expression */
-LOCAL LVAL pquote(LVAL fptr, LVAL sym)
-{
- LVAL val,p;
-
- /* protect some pointers */
- xlsave1(val);
-
- /* allocate two nodes */
- val = consa(sym);
- rplacd(val,consa(NIL));
-
- /* initialize the second to point to the quoted expression */
- if (!xlread(fptr,&p,TRUE))
- badeof(fptr);
- rplaca(cdr(val),p);
-
- /* restore the stack */
- xlpop();
-
- /* return the quoted expression */
- return (val);
-}
-
-/* psymbol - parse a symbol name */
-LOCAL LVAL psymbol(LVAL fptr)
-{
- int escflag;
- LVAL val;
- pname(fptr,&escflag);
- return (escflag || !xlisnumber(buf,&val) ? xlenter(buf) : val);
-}
-
-/* punintern - parse an uninterned symbol */
-LOCAL LVAL punintern(LVAL fptr)
-{
- int escflag;
- pname(fptr,&escflag);
- return (xlmakesym(buf));
-}
-
-/* pname - parse a symbol/package name */
-LOCAL int pname(LVAL fptr,int *pescflag)
-{
- int mode,ch=0,i;
- LVAL type;
-
- /* initialize */
- *pescflag = FALSE;
- mode = NORMAL;
- i = 0;
-
- /* accumulate the symbol name */
- while (mode != DONE) {
-
- /* handle normal mode */
- while (mode == NORMAL)
- if ((ch = xlgetc(fptr)) == EOF)
- mode = DONE;
- else if ((type = tentry(ch)) == k_sescape) {
- i = storech(buf,i,checkeof(fptr));
- *pescflag = TRUE;
- }
- else if (type == k_mescape) {
- *pescflag = TRUE;
- mode = ESCAPE;
- }
- else if (type == k_const
- || (consp(type) && car(type) == k_nmacro))
- i = storech(buf,i,islower(ch) ? toupper(ch) : ch);
- else
- mode = DONE;
-
- /* handle multiple escape mode */
- while (mode == ESCAPE)
- if ((ch = xlgetc(fptr)) == EOF)
- badeof(fptr);
- else if ((type = tentry(ch)) == k_sescape)
- i = storech(buf,i,checkeof(fptr));
- else if (type == k_mescape)
- mode = NORMAL;
- else
- i = storech(buf,i,ch);
- }
- buf[i] = 0;
-
- /* check for a zero length name */
- if (i == 0)
- xlerror("zero length name", s_unbound);
-
- /* unget the last character and return it */
- xlungetc(fptr,ch);
- return (ch);
-}
-
-/* storech - store a character in the print name buffer */
-LOCAL int storech(char *buf, int i, int ch)
-{
- if (i < STRMAX)
- buf[i++] = ch;
- return (i);
-}
-
-/* tentry - get a readtable entry */
-LVAL tentry(int ch)
-{
- LVAL rtable;
- rtable = getvalue(s_rtable);
- if (!vectorp(rtable) || ch < 0 || ch >= getsize(rtable))
- return (NIL);
- return (getelement(rtable,ch));
-}
-
-/* nextch - look at the next non-blank character */
-LOCAL int nextch(LVAL fptr)
-{
- int ch;
-
- /* return and save the next non-blank character */
- while ((ch = xlgetc(fptr)) != EOF && isspace(ch))
- ;
- xlungetc(fptr,ch);
- return (ch);
-}
-
-/* checkeof - get a character and check for end of file */
-LOCAL int checkeof(LVAL fptr)
-{
- int ch;
-
- if ((ch = xlgetc(fptr)) == EOF)
- badeof(fptr);
- return (ch);
-}
-
-/* badeof - unexpected eof */
-LOCAL void badeof(LVAL fptr)
-{
- xlgetc(fptr);
- xlfail("unexpected EOF");
-}
-
-/* xlisnumber - check if this string is a number */
-int xlisnumber(char *str, LVAL *pval)
-{
- int dl,dr;
- char *p;
-
- /* initialize */
- p = str; dl = dr = 0;
-
- /* check for a sign */
- if (*p == '+' || *p == '-')
- p++;
-
- /* check for a string of digits */
- while (isdigit(*p))
- p++, dl++;
-
- /* check for a decimal point */
- if (*p == '.') {
- p++;
- while (isdigit(*p))
- p++, dr++;
- }
-
- /* check for an exponent */
- if ((dl || dr) && *p == 'E') {
- p++;
-
- /* check for a sign */
- if (*p == '+' || *p == '-')
- p++;
-
- /* check for a string of digits */
- while (isdigit(*p))
- p++, dr++;
- }
-
- /* make sure there was at least one digit and this is the end */
- if ((dl == 0 && dr == 0) || *p)
- return (FALSE);
-
- /* convert the string to an integer and return successfully */
- if (pval) {
- if (*str == '+') ++str;
- if (str[strlen(str)-1] == '.') str[strlen(str)-1] = 0;
- *pval = (dr ? cvflonum(atof(str)) : cvfixnum(ICNV(str)));
- }
- return (TRUE);
-}
-
-/* defmacro - define a read macro */
-void defmacro(int ch, LVAL type, int offset)
-{
- extern FUNDEF funtab[];
- LVAL subr;
- subr = cvsubr(funtab[offset].fd_subr,funtab[offset].fd_type,offset);
- setelement(getvalue(s_rtable),ch,cons(type,subr));
-}
-
-/* callmacro - call a read macro */
-LVAL callmacro(LVAL fptr, int ch)
-{
- LVAL *newfp;
-
- /* create the new call frame */
- newfp = xlsp;
- pusharg(cvfixnum((FIXTYPE)(newfp - xlfp)));
- pusharg(cdr(getelement(getvalue(s_rtable),ch)));
- pusharg(cvfixnum((FIXTYPE)2));
- pusharg(fptr);
- pusharg(cvchar(ch));
- xlfp = newfp;
- return (xlapply(2));
-}
-
-/* upcase - translate a string to upper case */
-LOCAL void upcase(char *str)
-{
- for (; *str != '\0'; ++str)
- if (islower(*str))
- *str = toupper(*str);
-}
-
-/* xlrinit - initialize the reader */
-void xlrinit(void)
-{
- LVAL rtable;
- char *p;
- int ch;
-
- /* create the read table */
- rtable = newvector(256);
- setvalue(s_rtable,rtable);
-
- /* initialize the readtable */
- for (p = WSPACE; (ch = *p++); )
- setelement(rtable,ch,k_wspace);
- for (p = CONST1; (ch = *p++); )
- setelement(rtable,ch,k_const);
- for (p = CONST2; (ch = *p++); )
- setelement(rtable,ch,k_const);
-
- /* setup the escape characters */
- setelement(rtable,'\\',k_sescape);
- setelement(rtable,'|', k_mescape);
-
- /* install the read macros */
- defmacro('#', k_nmacro,FT_RMHASH);
- defmacro('\'',k_tmacro,FT_RMQUOTE);
- defmacro('"', k_tmacro,FT_RMDQUOTE);
- defmacro('`', k_tmacro,FT_RMBQUOTE);
- defmacro(',', k_tmacro,FT_RMCOMMA);
- defmacro('(', k_tmacro,FT_RMLPAR);
- defmacro(')', k_tmacro,FT_RMRPAR);
- defmacro(';', k_tmacro,FT_RMSEMI);
-}
-
diff --git a/lib-src/libnyquist/xlisp/xlstr.c b/lib-src/libnyquist/xlisp/xlstr.c
deleted file mode 100644
index ab7de82..0000000
--- a/lib-src/libnyquist/xlisp/xlstr.c
+++ /dev/null
@@ -1,557 +0,0 @@
-/* xlstr - xlisp string and character built-in functions */
-/* Copyright (c) 1985, by David Michael Betz
- All Rights Reserved
- Permission is granted for unrestricted non-commercial use */
-
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm eliminate some compiler warnings
- */
-
-#include "string.h"
-#include "xlisp.h"
-
-/* local definitions */
-#define fix(n) cvfixnum((FIXTYPE)(n))
-#define TLEFT 1
-#define TRIGHT 2
-
-/* external variables */
-extern LVAL k_start,k_end,k_1start,k_1end,k_2start,k_2end;
-extern LVAL s_true;
-extern char buf[];
-
-/* forward declarations */
-FORWARD LOCAL LVAL strcompare(int fcn, int icase);
-FORWARD LOCAL LVAL chrcompare(int fcn, int icase);
-FORWARD LOCAL LVAL changecase(int fcn, int destructive);
-FORWARD LOCAL LVAL trim(int fcn);
-FORWARD LOCAL void getbounds(LVAL str, LVAL skey, LVAL ekey, int *pstart, int *pend);
-FORWARD LOCAL int inbag(int ch, LVAL bag);
-
-/* string comparision functions */
-LVAL xstrlss(void) { return (strcompare('<',FALSE)); } /* string< */
-LVAL xstrleq(void) { return (strcompare('L',FALSE)); } /* string<= */
-LVAL xstreql(void) { return (strcompare('=',FALSE)); } /* string= */
-LVAL xstrneq(void) { return (strcompare('#',FALSE)); } /* string/= */
-LVAL xstrgeq(void) { return (strcompare('G',FALSE)); } /* string>= */
-LVAL xstrgtr(void) { return (strcompare('>',FALSE)); } /* string> */
-
-/* string comparison functions (not case sensitive) */
-LVAL xstrilss(void) { return (strcompare('<',TRUE)); } /* string-lessp */
-LVAL xstrileq(void) { return (strcompare('L',TRUE)); } /* string-not-greaterp */
-LVAL xstrieql(void) { return (strcompare('=',TRUE)); } /* string-equal */
-LVAL xstrineq(void) { return (strcompare('#',TRUE)); } /* string-not-equal */
-LVAL xstrigeq(void) { return (strcompare('G',TRUE)); } /* string-not-lessp */
-LVAL xstrigtr(void) { return (strcompare('>',TRUE)); } /* string-greaterp */
-
-/* strcompare - compare strings */
-LOCAL LVAL strcompare(int fcn, int icase)
-{
- int start1,end1,start2,end2,ch1,ch2;
- unsigned char *p1,*p2;
- LVAL str1,str2;
-
- /* get the strings */
- str1 = xlgastring();
- str2 = xlgastring();
-
- /* get the substring specifiers */
- getbounds(str1,k_1start,k_1end,&start1,&end1);
- getbounds(str2,k_2start,k_2end,&start2,&end2);
-
- /* setup the string pointers */
- p1 = &getstring(str1)[start1];
- p2 = &getstring(str2)[start2];
-
- /* compare the strings */
- for (; start1 < end1 && start2 < end2; ++start1,++start2) {
- ch1 = *p1++;
- ch2 = *p2++;
- if (icase) {
- if (isupper(ch1)) ch1 = tolower(ch1);
- if (isupper(ch2)) ch2 = tolower(ch2);
- }
- if (ch1 != ch2)
- switch (fcn) {
- case '<': return (ch1 < ch2 ? fix(start1) : NIL);
- case 'L': return (ch1 <= ch2 ? fix(start1) : NIL);
- case '=': return (NIL);
- case '#': return (fix(start1));
- case 'G': return (ch1 >= ch2 ? fix(start1) : NIL);
- case '>': return (ch1 > ch2 ? fix(start1) : NIL);
- }
- }
-
- /* check the termination condition */
- switch (fcn) {
- case '<': return (start1 >= end1 && start2 < end2 ? fix(start1) : NIL);
- case 'L': return (start1 >= end1 ? fix(start1) : NIL);
- case '=': return (start1 >= end1 && start2 >= end2 ? s_true : NIL);
- case '#': return (start1 >= end1 && start2 >= end2 ? NIL : fix(start1));
- case 'G': return (start2 >= end2 ? fix(start1) : NIL);
- case '>': return (start2 >= end2 && start1 < end1 ? fix(start1) : NIL);
- }
-
- return NIL; /* Normally shouldn't happen */
-}
-
-/* case conversion functions */
-LVAL xupcase(void) { return (changecase('U',FALSE)); }
-LVAL xdowncase(void) { return (changecase('D',FALSE)); }
-
-/* destructive case conversion functions */
-LVAL xnupcase(void) { return (changecase('U',TRUE)); }
-LVAL xndowncase(void) { return (changecase('D',TRUE)); }
-
-/* changecase - change case */
-LOCAL LVAL changecase(int fcn, int destructive)
-{
- unsigned char *srcp,*dstp;
- int start,end,len,ch,i;
- LVAL src,dst;
-
- /* get the string */
- src = xlgastring();
-
- /* get the substring specifiers */
- getbounds(src,k_start,k_end,&start,&end);
- len = getslength(src) - 1;
-
- /* make a destination string */
- dst = (destructive ? src : new_string(len+1));
-
- /* setup the string pointers */
- srcp = getstring(src);
- dstp = getstring(dst);
-
- /* copy the source to the destination */
- for (i = 0; i < len; ++i) {
- ch = *srcp++;
- if (i >= start && i < end)
- switch (fcn) {
- case 'U': if (islower(ch)) ch = toupper(ch); break;
- case 'D': if (isupper(ch)) ch = tolower(ch); break;
- }
- *dstp++ = ch;
- }
- *dstp = '\0';
-
- /* return the new string */
- return (dst);
-}
-
-/* search for string within a string */
-LVAL xstrsearch(void)
-{
- int start,end,pat_len,str_len;
- unsigned char *pat,*str,*patptr,*strptr,*patend;
- LVAL str1,str2;
-
- /* get the strings */
- str1 = xlgastring(); /* the pat */
- str2 = xlgastring(); /* the string */
-
- /* get the substring specifiers */
- getbounds(str2, k_start, k_end, &start, &end);
-
- /* setup the string pointers */
- pat = getstring(str1);
- str = &getstring(str2)[start];
-
- pat_len = getslength(str1) - 1;
- str_len = end - start;
- patend = pat + pat_len;
- for (; pat_len <= str_len; str_len--) {
- patptr = pat;
- strptr = str;
- /* two outcomes: (1) no match, goto step (2) match, return */
- while (patptr < patend) {
- if (*patptr++ != *strptr++) goto step;
- }
- /* compute match index */
- return cvfixnum(str - getstring(str2));
- step:
- str++;
- }
- /* no match */
- return NIL;
-}
-
-
-/* trim functions */
-LVAL xtrim(void) { return (trim(TLEFT|TRIGHT)); }
-LVAL xlefttrim(void) { return (trim(TLEFT)); }
-LVAL xrighttrim(void) { return (trim(TRIGHT)); }
-
-/* trim - trim character from a string */
-LOCAL LVAL trim(int fcn)
-{
- unsigned char *leftp,*rightp,*dstp;
- LVAL bag,src,dst;
-
- /* get the bag and the string */
- bag = xlgastring();
- src = xlgastring();
- xllastarg();
-
- /* setup the string pointers */
- leftp = getstring(src);
- rightp = leftp + getslength(src) - 2;
-
- /* trim leading characters */
- if (fcn & TLEFT)
- while (leftp <= rightp && inbag(*leftp,bag))
- ++leftp;
-
- /* trim character from the right */
- if (fcn & TRIGHT)
- while (rightp >= leftp && inbag(*rightp,bag))
- --rightp;
-
- /* make a destination string and setup the pointer */
- dst = new_string((int)(rightp-leftp+2));
- dstp = getstring(dst);
-
- /* copy the source to the destination */
- while (leftp <= rightp)
- *dstp++ = *leftp++;
- *dstp = '\0';
-
- /* return the new string */
- return (dst);
-}
-
-/* getbounds - get the start and end bounds of a string */
-LOCAL void getbounds(LVAL str, LVAL skey, LVAL ekey, int *pstart, int *pend)
-{
- LVAL arg;
- int len;
-
- /* get the length of the string */
- len = getslength(str) - 1;
-
- /* get the starting index */
- if (xlgkfixnum(skey,&arg)) {
- *pstart = (int)getfixnum(arg);
- if (*pstart < 0 || *pstart > len)
- xlerror("string index out of bounds",arg);
- }
- else
- *pstart = 0;
-
- /* get the ending index */
- if (xlgkfixnum(ekey,&arg)) {
- *pend = (int)getfixnum(arg);
- if (*pend < 0 || *pend > len)
- xlerror("string index out of bounds",arg);
- }
- else
- *pend = len;
-
- /* make sure the start is less than or equal to the end */
- if (*pstart > *pend)
- xlerror("starting index error",cvfixnum((FIXTYPE)*pstart));
-}
-
-/* inbag - test if a character is in a bag */
-LOCAL int inbag(int ch, LVAL bag)
-{
- unsigned char *p;
- for (p = getstring(bag); *p != '\0'; ++p)
- if (*p == ch)
- return (TRUE);
- return (FALSE);
-}
-
-/* xstrcat - concatenate a bunch of strings */
-LVAL xstrcat(void)
-{
- LVAL *saveargv,tmp,val;
- unsigned char *str;
- int saveargc,len;
-
- /* save the argument list */
- saveargv = xlargv;
- saveargc = xlargc;
-
- /* find the length of the new string */
- for (len = 0; moreargs(); ) {
- tmp = xlgastring();
- len += (int)getslength(tmp) - 1;
- }
-
- /* create the result string */
- val = new_string(len+1);
- str = getstring(val);
-
- /* restore the argument list */
- xlargv = saveargv;
- xlargc = saveargc;
-
- /* combine the strings */
- for (*str = '\0'; moreargs(); ) {
- tmp = nextarg();
- strcat((char *) str, (char *) getstring(tmp));
- }
-
- /* return the new string */
- return (val);
-}
-
-/* xsubseq - return a subsequence */
-LVAL xsubseq(void)
-{
- unsigned char *srcp,*dstp;
- int start,end,len;
- LVAL src,dst;
-
- /* get string and starting and ending positions */
- src = xlgastring();
-
- /* get the starting position */
- dst = xlgafixnum(); start = (int)getfixnum(dst);
- if (start < 0 || start > getslength(src) - 1)
- xlerror("string index out of bounds",dst);
-
- /* get the ending position */
- if (moreargs()) {
- dst = xlgafixnum(); end = (int)getfixnum(dst);
- if (end < 0 || end > getslength(src) - 1)
- xlerror("string index out of bounds",dst);
- }
- else
- end = getslength(src) - 1;
- xllastarg();
-
- /* setup the source pointer */
- srcp = getstring(src) + start;
- len = end - start;
-
- /* make a destination string and setup the pointer */
- dst = new_string(len+1);
- dstp = getstring(dst);
-
- /* copy the source to the destination */
- while (--len >= 0)
- *dstp++ = *srcp++;
- *dstp = '\0';
-
- /* return the substring */
- return (dst);
-}
-
-/* xstring - return a string consisting of a single character */
-LVAL xstring(void)
-{
- LVAL arg;
-
- /* get the argument */
- arg = xlgetarg();
- xllastarg();
-
- /* make sure its not NIL */
- if (null(arg))
- xlbadtype(arg);
-
- /* check the argument type */
- switch (ntype(arg)) {
- case STRING:
- return (arg);
- case SYMBOL:
- return (getpname(arg));
- case CHAR:
- buf[0] = (int)getchcode(arg);
- buf[1] = '\0';
- return (cvstring(buf));
- default:
- xlbadtype(arg);
- return NIL; /* never happens */
- }
-}
-
-/* xchar - extract a character from a string */
-LVAL xchar(void)
-{
- LVAL str,num;
- int n;
-
- /* get the string and the index */
- str = xlgastring();
- num = xlgafixnum();
- xllastarg();
-
- /* range check the index */
- if ((n = (int)getfixnum(num)) < 0 || n >= getslength(str) - 1)
- xlerror("index out of range",num);
-
- /* return the character */
- return (cvchar(getstring(str)[n]));
-}
-
-/* xcharint - convert an integer to a character */
-LVAL xcharint(void)
-{
- LVAL arg;
- arg = xlgachar();
- xllastarg();
- return (cvfixnum((FIXTYPE)getchcode(arg)));
-}
-
-/* xintchar - convert a character to an integer */
-LVAL xintchar(void)
-{
- LVAL arg;
- arg = xlgafixnum();
- xllastarg();
- return (cvchar((int)getfixnum(arg)));
-}
-
-/* xuppercasep - built-in function 'upper-case-p' */
-LVAL xuppercasep(void)
-{
- int ch;
- ch = getchcode(xlgachar());
- xllastarg();
- return (isupper(ch) ? s_true : NIL);
-}
-
-/* xlowercasep - built-in function 'lower-case-p' */
-LVAL xlowercasep(void)
-{
- int ch;
- ch = getchcode(xlgachar());
- xllastarg();
- return (islower(ch) ? s_true : NIL);
-}
-
-/* xbothcasep - built-in function 'both-case-p' */
-LVAL xbothcasep(void)
-{
- int ch;
- ch = getchcode(xlgachar());
- xllastarg();
- return (isupper(ch) || islower(ch) ? s_true : NIL);
-}
-
-/* xdigitp - built-in function 'digit-char-p' */
-LVAL xdigitp(void)
-{
- int ch;
- ch = getchcode(xlgachar());
- xllastarg();
- return (isdigit(ch) ? cvfixnum((FIXTYPE)(ch - '0')) : NIL);
-}
-
-/* xcharcode - built-in function 'char-code' */
-LVAL xcharcode(void)
-{
- int ch;
- ch = getchcode(xlgachar());
- xllastarg();
- return (cvfixnum((FIXTYPE)ch));
-}
-
-/* xcodechar - built-in function 'code-char' */
-LVAL xcodechar(void)
-{
- LVAL arg;
- int ch;
- arg = xlgafixnum(); ch = getfixnum(arg);
- xllastarg();
- return (ch >= 0 && ch <= 127 ? cvchar(ch) : NIL);
-}
-
-/* xchupcase - built-in function 'char-upcase' */
-LVAL xchupcase(void)
-{
- LVAL arg;
- int ch;
- arg = xlgachar(); ch = getchcode(arg);
- xllastarg();
- return (islower(ch) ? cvchar(toupper(ch)) : arg);
-}
-
-/* xchdowncase - built-in function 'char-downcase' */
-LVAL xchdowncase(void)
-{
- LVAL arg;
- int ch;
- arg = xlgachar(); ch = getchcode(arg);
- xllastarg();
- return (isupper(ch) ? cvchar(tolower(ch)) : arg);
-}
-
-/* xdigitchar - built-in function 'digit-char' */
-LVAL xdigitchar(void)
-{
- LVAL arg;
- int n;
- arg = xlgafixnum(); n = getfixnum(arg);
- xllastarg();
- return (n >= 0 && n <= 9 ? cvchar(n + '0') : NIL);
-}
-
-/* xalphanumericp - built-in function 'alphanumericp' */
-LVAL xalphanumericp(void)
-{
- int ch;
- ch = getchcode(xlgachar());
- xllastarg();
- return (isupper(ch) || islower(ch) || isdigit(ch) ? s_true : NIL);
-}
-
-/* character comparision functions */
-LVAL xchrlss(void) { return (chrcompare('<',FALSE)); } /* char< */
-LVAL xchrleq(void) { return (chrcompare('L',FALSE)); } /* char<= */
-LVAL xchreql(void) { return (chrcompare('=',FALSE)); } /* char= */
-LVAL xchrneq(void) { return (chrcompare('#',FALSE)); } /* char/= */
-LVAL xchrgeq(void) { return (chrcompare('G',FALSE)); } /* char>= */
-LVAL xchrgtr(void) { return (chrcompare('>',FALSE)); } /* char> */
-
-/* character comparision functions (case insensitive) */
-LVAL xchrilss(void) { return (chrcompare('<',TRUE)); } /* char-lessp */
-LVAL xchrileq(void) { return (chrcompare('L',TRUE)); } /* char-not-greaterp */
-LVAL xchrieql(void) { return (chrcompare('=',TRUE)); } /* char-equalp */
-LVAL xchrineq(void) { return (chrcompare('#',TRUE)); } /* char-not-equalp */
-LVAL xchrigeq(void) { return (chrcompare('G',TRUE)); } /* char-not-lessp */
-LVAL xchrigtr(void) { return (chrcompare('>',TRUE)); } /* char-greaterp */
-
-/* chrcompare - compare characters */
-LOCAL LVAL chrcompare(int fcn, int icase)
-{
- int ch1,ch2,icmp;
- LVAL arg;
-
- /* get the characters */
- arg = xlgachar(); ch1 = getchcode(arg);
-
- /* convert to lowercase if case insensitive */
- if (icase && isupper(ch1))
- ch1 = tolower(ch1);
-
- /* handle each remaining argument */
- for (icmp = TRUE; icmp && moreargs(); ch1 = ch2) {
-
- /* get the next argument */
- arg = xlgachar(); ch2 = getchcode(arg);
-
- /* convert to lowercase if case insensitive */
- if (icase && isupper(ch2))
- ch2 = tolower(ch2);
-
- /* compare the characters */
- switch (fcn) {
- case '<': icmp = (ch1 < ch2); break;
- case 'L': icmp = (ch1 <= ch2); break;
- case '=': icmp = (ch1 == ch2); break;
- case '#': icmp = (ch1 != ch2); break;
- case 'G': icmp = (ch1 >= ch2); break;
- case '>': icmp = (ch1 > ch2); break;
- }
- }
-
- /* return the result */
- return (icmp ? s_true : NIL);
-}
-
diff --git a/lib-src/libnyquist/xlisp/xlsubr.c b/lib-src/libnyquist/xlisp/xlsubr.c
deleted file mode 100644
index cc729ef..0000000
--- a/lib-src/libnyquist/xlisp/xlsubr.c
+++ /dev/null
@@ -1,192 +0,0 @@
-/* xlsubr - xlisp builtin function support routines */
-/* Copyright (c) 1985, by David Michael Betz
- All Rights Reserved
- Permission is granted for unrestricted non-commercial use */
-
-/* CHANGE LOG
- * --------------------------------------------------------------------
- * 28Apr03 dm eliminate some compiler warnings
- */
-
-#include "string.h"
-#include "xlisp.h"
-
-/* external variables */
-extern LVAL k_test,k_tnot,s_eql;
-
-/* xlsubr - define a builtin function */
-LVAL xlsubr(char *sname, int type, LVAL (*fcn)(void), int offset)
-{
- LVAL sym;
- sym = xlenter(sname);
- setfunction(sym,cvsubr(fcn,type,offset));
- return (sym);
-}
-
-/* xlgetkeyarg - get a keyword argument */
-int xlgetkeyarg(LVAL key, LVAL *pval)
-{
- LVAL *argv=xlargv;
- int argc=xlargc;
- for (argv = xlargv, argc = xlargc; (argc -= 2) >= 0; argv += 2) {
- if (*argv == key) {
- *pval = *++argv;
- return (TRUE);
- }
- }
- return (FALSE);
-}
-
-/* xlgkfixnum - get a fixnum keyword argument */
-int xlgkfixnum(LVAL key, LVAL *pval)
-{
- if (xlgetkeyarg(key,pval)) {
- if (!fixp(*pval))
- xlbadtype(*pval);
- return (TRUE);
- }
- return (FALSE);
-}
-
-/* xltest - get the :test or :test-not keyword argument */
-void xltest(LVAL *pfcn, int *ptresult)
-{
- if (xlgetkeyarg(k_test,pfcn)) /* :test */
- *ptresult = TRUE;
- else if (xlgetkeyarg(k_tnot,pfcn)) /* :test-not */
- *ptresult = FALSE;
- else {
- *pfcn = getfunction(s_eql);
- *ptresult = TRUE;
- }
-}
-
-/* xlgetfile - get a file or stream */
-LVAL xlgetfile(void)
-{
- LVAL arg;
-
- /* get a file or stream (cons) or nil */
- if ((arg = xlgetarg())) {
- if (streamp(arg)) {
- if (getfile(arg) == NULL)
- xlfail("file not open");
- }
- else if (!ustreamp(arg))
- xlerror("bad argument type",arg);
- }
- return (arg);
-}
-
-/* xlgetfname - get a filename */
-LVAL xlgetfname(void)
-{
- LVAL name;
-
- /* get the next argument */
- name = xlgetarg();
-
- /* get the filename string */
- if (symbolp(name))
- name = getpname(name);
- else if (!stringp(name))
- xlerror("bad argument type",name);
-
- /* return the name */
- return (name);
-}
-
-/* needsextension - check if a filename needs an extension */
-int needsextension(char *name)
-{
- char *p;
-
- /* check for an extension */
- for (p = &name[strlen(name)]; --p >= &name[0]; )
- if (*p == '.')
- return (FALSE);
- else if (!islower(*p) && !isupper(*p) && !isdigit(*p))
- return (TRUE);
-
- /* no extension found */
- return (TRUE);
-}
-
-/* the next three functions must be declared as LVAL because they
- * are used in LVAL expressions, but they do not return anything
- * warning 4035 is "no return value"
- */
-/* #pragma warning(disable: 4035) */
-
-/* xlbadtype - report a "bad argument type" error */
-LVAL xlbadtype(LVAL arg)
-{
- xlerror("bad argument type",arg);
- return NIL; /* never happens */
-}
-
-/* xltoofew - report a "too few arguments" error */
-LVAL xltoofew(void)
-{
- xlfail("too few arguments");
- return NIL; /* never happens */
-}
-
-/* xltoomany - report a "too many arguments" error */
-LVAL xltoomany(void)
-{
- xlfail("too many arguments");
- return NIL; /* never happens */
-}
-
-/* eq - internal eq function */
-int eq(LVAL arg1, LVAL arg2)
-{
- return (arg1 == arg2);
-}
-
-/* eql - internal eql function */
-int eql(LVAL arg1, LVAL arg2)
-{
- /* compare the arguments */
- if (arg1 == arg2)
- return (TRUE);
- else if (arg1) {
- switch (ntype(arg1)) {
- case FIXNUM:
- return (fixp(arg2) ? getfixnum(arg1)==getfixnum(arg2) : FALSE);
- case FLONUM:
- return (floatp(arg2) ? getflonum(arg1)==getflonum(arg2) : FALSE);
- default:
- return (FALSE);
- }
- }
- else
- return (FALSE);
-}
-
-/* lval_equal - internal equal function */
-int lval_equal(LVAL arg1, LVAL arg2)
-{
- /* compare the arguments */
- if (arg1 == arg2)
- return (TRUE);
- else if (arg1) {
- switch (ntype(arg1)) {
- case FIXNUM:
- return (fixp(arg2) ? getfixnum(arg1)==getfixnum(arg2) : FALSE);
- case FLONUM:
- return (floatp(arg2) ? getflonum(arg1)==getflonum(arg2) : FALSE);
- case STRING:
- return (stringp(arg2) ? strcmp((char *) getstring(arg1),
- (char *) getstring(arg2)) == 0 : FALSE);
- case CONS:
- return (consp(arg2) ? lval_equal(car(arg1),car(arg2))
- && lval_equal(cdr(arg1),cdr(arg2)) : FALSE);
- default:
- return (FALSE);
- }
- }
- else
- return (FALSE);
-}
diff --git a/lib-src/libnyquist/xlisp/xlsym.c b/lib-src/libnyquist/xlisp/xlsym.c
deleted file mode 100644
index 8932377..0000000
--- a/lib-src/libnyquist/xlisp/xlsym.c
+++ /dev/null
@@ -1,370 +0,0 @@
-/* xlsym - symbol handling routines */
-/* Copyright (c) 1985, by David Michael Betz
- All Rights Reserved
- Permission is granted for unrestricted non-commercial use */
-
-/* HISTORY
- * 28-apr-03 DM eliminate some compiler warnings
- * 12-oct-90 RBD added xlatomcount to keep track of how many atoms there are.
- * (something I need for writing out score files).
- */
-
-#include "string.h"
-#include "xlisp.h"
-
-extern int xlatomcount;
-
-/* forward declarations */
-FORWARD LVAL findprop(LVAL sym, LVAL prp);
-
-#ifdef FRAME_DEBUG
-/* these routines were used to debug a missing call to protect().
- * The routines can check for a consistent set of frames. Note
- * that frames must be pushed on the stack declared here because
- * XLisp keeps frame pointers as local variables in C routines.
- * I deleted the calls to push_xlenv etc throughout the XLisp
- * sources, but decided to leave the following code for possible
- * future debugging. - RBD
- */
-int envstack_top = 0;
-LVAL envstack[envstack_max];
-LVAL *fpstack[envstack_max];
-extern long cons_count;
-
-FORWARD LOCAL void test_one_env(LVAL environment, int i, char *s);
-
-void push_xlenv(void)
-{
- char s[10];
- /* sprintf(s, "<%d ", envstack_top);
- stdputstr(s); */
- if (envstack_top >= envstack_max) {
- xlabort("envstack overflow");
- } else {
- fpstack[envstack_top] = xlfp;
- envstack[envstack_top++] = xlenv;
- }
-}
-
-
-void pop_xlenv(void)
-{
- char s[10];
- if (envstack_top <= 0) {
- sprintf(s, ", %d! ", envstack_top);
- stdputstr(s);
- xlabort("envstack underflow!");
- } else envstack_top--;
- /* sprintf(s, "%d> ", envstack_top);
- stdputstr(s); */
-}
-
-
-void pop_multiple_xlenv(void)
-{
- int i;
- for (i = envstack_top - 1; i >= 0; i--) {
- if (envstack[i] == xlenv) {
- char s[10];
- envstack_top = i + 1;
- /* sprintf(s, "%d] ", envstack_top);
- stdputstr(s); */
- return;
- }
- }
-}
-
-
-void testenv(char *s)
-{
- int i;
-
- for (i = envstack_top - 1; i >= 0; i--) {
- test_one_env(envstack[i], i, s);
- }
-}
-
-LOCAL void report_exit(char *msg, int i)
-{
- sprintf(buf, "env stack index: %d, cons_count %ld, Function: ", i, cons_count);
- errputstr(buf);
- stdprint(fpstack[i][1]);
- xlabort(msg);
-}
-
-LOCAL void test_one_env(LVAL environment, int i, char *s)
-{
- register LVAL fp,ep;
- LVAL val;
-
- /* check the environment list */
- for (fp = environment; fp; fp = cdr(fp)) {
- /* check that xlenv is good */
- if (!consp(fp)) {
- sprintf(buf,"%s: xlenv 0x%lx, frame 0x%lx, type(frame) %d\n",
- s, xlenv, fp, ntype(fp));
- errputstr(buf);
- report_exit("xlenv points to a bad list", i);
- }
-
- /* check for an instance variable */
- if ((ep = car(fp)) && objectp(car(ep))) {
- /* do nothing */
- }
-
- /* check an environment stack frame */
- else {
- for (; ep; ep = cdr(ep)) {
- /* check that ep is good */
- if (!consp(ep)) {
- sprintf(buf,"%s: fp 0x%lx, ep 0x%lx, type(ep) %d\n",
- s, fp, ep, ntype(ep));
- errputstr(buf);
- report_exit("car(fp) points to a bad list", i);
- }
-
- /* check that car(ep) is nonnull */
- if (!car(ep)) {
- sprintf(buf,"%s: ep 0x%lx, car(ep) 0x%lx\n",
- s, ep, car(ep));
- errputstr(buf);
- report_exit("car(ep) (an association) is NULL", i);
- }
- /* check that car(ep) is a cons */
- if (!consp(car(ep))) {
- sprintf(buf,"%s: ep 0x%lx, car(ep) 0x%lx, type(car(ep)) %d\n",
- s, ep, car(ep), ntype(car(ep)));
- errputstr(buf);
- report_exit("car(ep) (an association) is not a cons", i);
- }
-
- /* check that car(car(ep)) is a symbol */
- if (!symbolp(car(car(ep)))) {
- sprintf(buf,"%s: ep 0x%lx, car(ep) 0x%lx, car(car(ep)) 0x%lx, type(car(car(ep))) %d\n",
- s, ep, car(ep), car(car(ep)), ntype(car(car(ep))));
- errputstr(buf);
- report_exit("car(car(ep)) is not a symbol", i);
- }
- }
- }
- }
-}
-#endif
-
-
-/* xlenter - enter a symbol into the obarray */
-LVAL xlenter(char *name)
-{
- LVAL sym,array;
- int i;
-
- /* check for nil */
- if (strcmp(name,"NIL") == 0)
- return (NIL);
-
- /* check for symbol already in table */
- array = getvalue(obarray);
- i = hash(name,HSIZE);
- for (sym = getelement(array,i); sym; sym = cdr(sym))
- if (strcmp(name,(char *) getstring(getpname(car(sym)))) == 0)
- return (car(sym));
-
- /* make a new symbol node and link it into the list */
- xlsave1(sym);
- sym = consd(getelement(array,i));
- rplaca(sym,xlmakesym(name));
- setelement(array,i,sym);
- xlpop();
-
- /* return the new symbol */
- return (car(sym));
-}
-
-/* xlmakesym - make a new symbol node */
-LVAL xlmakesym(char *name)
-{
- LVAL sym;
- sym = cvsymbol(name);
- if (*name == ':')
- setvalue(sym,sym);
- return (sym);
-}
-
-/* xlgetvalue - get the value of a symbol (with check) */
-LVAL xlgetvalue(LVAL sym)
-{
- LVAL val;
-
- /* look for the value of the symbol */
- while ((val = xlxgetvalue(sym)) == s_unbound)
- xlunbound(sym);
-
- /* return the value */
- return (val);
-}
-
-/* xlxgetvalue - get the value of a symbol */
-LVAL xlxgetvalue(LVAL sym)
-{
- register LVAL fp,ep;
- LVAL val;
-
- /* check the environment list */
- for (fp = xlenv; fp; fp = cdr(fp))
-
- /* check for an instance variable */
- if ((ep = car(fp)) && objectp(car(ep))) {
- if (xlobgetvalue(ep,sym,&val))
- return (val);
- }
-
- /* check an environment stack frame */
- else {
- for (; ep; ep = cdr(ep))
- if (sym == car(car(ep)))
- return (cdr(car(ep)));
- }
-
- /* return the global value */
- return (getvalue(sym));
-}
-
-/* xlsetvalue - set the value of a symbol */
-void xlsetvalue(LVAL sym, LVAL val)
-{
- register LVAL fp,ep;
-
- /* look for the symbol in the environment list */
- for (fp = xlenv; fp; fp = cdr(fp))
-
- /* check for an instance variable */
- if ((ep = car(fp)) && objectp(car(ep))) {
- if (xlobsetvalue(ep,sym,val))
- return;
- }
-
- /* check an environment stack frame */
- else {
- for (; ep; ep = cdr(ep))
- if (sym == car(car(ep))) {
- rplacd(car(ep),val);
- return;
- }
- }
-
- /* store the global value */
- setvalue(sym,val);
-}
-
-/* xlgetfunction - get the functional value of a symbol (with check) */
-LVAL xlgetfunction(LVAL sym)
-{
- LVAL val;
-
- /* look for the functional value of the symbol */
- while ((val = xlxgetfunction(sym)) == s_unbound)
- xlfunbound(sym);
-
- /* return the value */
- return (val);
-}
-
-/* xlxgetfunction - get the functional value of a symbol */
-LVAL xlxgetfunction(LVAL sym)
-{
- register LVAL fp,ep;
-
- /* check the environment list */
- for (fp = xlfenv; fp; fp = cdr(fp))
- for (ep = car(fp); ep; ep = cdr(ep))
- if (sym == car(car(ep)))
- return (cdr(car(ep)));
-
- /* return the global value */
- return (getfunction(sym));
-}
-
-/* xlsetfunction - set the functional value of a symbol */
-void xlsetfunction(LVAL sym, LVAL val)
-{
- register LVAL fp,ep;
-
- /* look for the symbol in the environment list */
- for (fp = xlfenv; fp; fp = cdr(fp))
- for (ep = car(fp); ep; ep = cdr(ep))
- if (sym == car(car(ep))) {
- rplacd(car(ep),val);
- return;
- }
-
- /* store the global value */
- setfunction(sym,val);
-}
-
-/* xlgetprop - get the value of a property */
-LVAL xlgetprop(LVAL sym, LVAL prp)
-{
- LVAL p;
- return ((p = findprop(sym,prp)) ? car(p) : NIL);
-}
-
-/* xlputprop - put a property value onto the property list */
-void xlputprop(LVAL sym, LVAL val, LVAL prp)
-{
- LVAL pair;
- if ((pair = findprop(sym,prp)))
- rplaca(pair,val);
- else
- setplist(sym,cons(prp,cons(val,getplist(sym))));
-}
-
-/* xlremprop - remove a property from a property list */
-void xlremprop(LVAL sym, LVAL prp)
-{
- LVAL last,p;
- last = NIL;
- for (p = getplist(sym); consp(p) && consp(cdr(p)); p = cdr(last)) {
- if (car(p) == prp) {
- if (last)
- rplacd(last,cdr(cdr(p)));
- else
- setplist(sym,cdr(cdr(p)));
- }
- last = cdr(p);
- }
-}
-
-/* findprop - find a property pair */
-LVAL findprop(LVAL sym, LVAL prp)
-{
- LVAL p;
- for (p = getplist(sym); consp(p) && consp(cdr(p)); p = cdr(cdr(p)))
- if (car(p) == prp)
- return (cdr(p));
- return (NIL);
-}
-
-/* hash - hash a symbol name string */
-int hash(char *str, int len)
-{
- int i;
- for (i = 0; *str; )
- i = (i << 2) ^ *str++;
- i %= len;
- return (i < 0 ? -i : i);
-}
-
-/* xlsinit - symbol initialization routine */
-void xlsinit(void)
-{
- LVAL array,p;
-
- /* initialize the obarray */
- obarray = xlmakesym("*OBARRAY*");
- array = newvector(HSIZE);
- setvalue(obarray,array);
-
- /* add the symbol *OBARRAY* to the obarray */
- p = consa(obarray);
- setelement(array,hash("*OBARRAY*",HSIZE),p);
-}
diff --git a/lib-src/libnyquist/xlisp/xlsys.c b/lib-src/libnyquist/xlisp/xlsys.c
deleted file mode 100644
index 201595d..0000000
--- a/lib-src/libnyquist/xlisp/xlsys.c
+++ /dev/null
@@ -1,221 +0,0 @@
-/* xlsys.c - xlisp builtin system functions */
-/* Copyright (c) 1985, by David Michael Betz
- All Rights Reserved
- Permission is granted for unrestricted non-commercial use */
-
-/* HISTORY
- *
- * 28-Apr-03 Dominic Mazzoni
- * Eliminated some compiler warnings
- *
- * 25-Oct-87 Roger Dannenberg at NeXT
- * profiling code added: enable with (PROFILE t), disable with
- * (PROFILE nil). While enabled, the profile code counts evals
- * within functions and macros. The count is only for evals
- * directly within the form; i.e. only the count of the most
- * top-most function or macro form on the stack is incremented.
- * Also, counts are only maintained for named functions and macros
- * because the count itself is on the property list of the function
- * or macro name under the *PROFILE* property. If a function or
- * macro is entered and the *PROFILE* does not exist, the property
- * is created with initial value 0, and the name is inserted at the
- * head of the list stored as the value of *PROFILE*. Thus, *PROFILE*
- * will list the functions that were touched, and the *PROFILE* property
- * of each function gives some idea of how much time it consumed.
- * See the file profile.lsp for helpful profiling functions.
- */
-
-#include "xlisp.h"
-
-/* profile variables */
-static int invisible_counter;
-int *profile_count_ptr = &invisible_counter;
-int profile_flag = FALSE;
-
-
-/* external variables */
-extern jmp_buf top_level;
-extern FILE *tfp;
-extern int xl_main_loop;
-
-/* external symbols */
-extern LVAL a_subr,a_fsubr,a_cons,a_symbol;
-extern LVAL a_fixnum,a_flonum,a_string,a_object,a_stream;
-extern LVAL a_vector,a_closure,a_char,a_ustream;
-extern LVAL k_verbose,k_print;
-extern LVAL s_true;
-
-/* external routines */
-extern FILE *osaopen();
-extern LVAL exttype();
-
-/* xload - read and evaluate expressions from a file */
-LVAL xload(void)
-{
- unsigned char *name;
- int vflag,pflag;
- LVAL arg;
-
- /* get the file name */
- name = getstring(xlgetfname());
-
- /* get the :verbose flag */
- if (xlgetkeyarg(k_verbose,&arg))
- vflag = (arg != NIL);
- else
- vflag = TRUE;
-
- /* get the :print flag */
- if (xlgetkeyarg(k_print,&arg))
- pflag = (arg != NIL);
- else
- pflag = FALSE;
-
- /* load the file */
- return (xlload((char *) name, vflag, pflag) ? s_true : NIL);
-}
-
-/* xtranscript - open or close a transcript file */
-LVAL xtranscript(void)
-{
- unsigned char *name;
-
- /* get the transcript file name */
- name = (moreargs() ? getstring(xlgetfname()) : NULL);
- xllastarg();
-
- /* close the current transcript */
- if (tfp) osclose(tfp);
-
- /* open the new transcript */
- tfp = (name ? osaopen((char *) name,"w") : NULL);
-
- /* return T if a transcript is open, NIL otherwise */
- return (tfp ? s_true : NIL);
-}
-
-/* xtype - return type of a thing */
-LVAL xtype(void)
-{
- LVAL arg;
-
- if (!(arg = xlgetarg()))
- return (NIL);
-
- switch (ntype(arg)) {
- case SUBR: return (a_subr);
- case FSUBR: return (a_fsubr);
- case CONS: return (a_cons);
- case SYMBOL: return (a_symbol);
- case FIXNUM: return (a_fixnum);
- case FLONUM: return (a_flonum);
- case STRING: return (a_string);
- case OBJECT: return (a_object);
- case STREAM: return (a_stream);
- case VECTOR: return (a_vector);
- case CLOSURE: return (a_closure);
- case CHAR: return (a_char);
- case USTREAM: return (a_ustream);
- case EXTERN: return (exttype(arg));
- default: xlfail("bad node type");
- return NIL; /* never happens */
- }
-}
-
-/* xbaktrace - print the trace back stack */
-LVAL xbaktrace(void)
-{
- LVAL num;
- int n;
-
- if (moreargs()) {
- num = xlgafixnum();
- n = getfixnum(num);
- }
- else
- n = -1;
- xllastarg();
- xlbaktrace(n);
- return (NIL);
-}
-
-/* xquit - get out of read/eval/print loop */
-LVAL xquit()
-{
- xllastarg();
- xl_main_loop = FALSE;
- return NIL;
-}
-
-
-/* xexit does not return anything, so turn off "no return value" warning" */
-/* #pragma warning(disable: 4035) */
-
-/* xexit - get out of xlisp */
-LVAL xexit(void)
-{
- xllastarg();
- xlisp_wrapup();
- return NIL; /* never happens */
-}
-
-/* xpeek - peek at a location in memory */
-LVAL xpeek(void)
-{
- LVAL num;
- int *adr;
-
- /* get the address */
- num = xlgafixnum(); adr = (int *)getfixnum(num);
- xllastarg();
-
- /* return the value at that address */
- return (cvfixnum((FIXTYPE)*adr));
-}
-
-/* xpoke - poke a value into memory */
-LVAL xpoke(void)
-{
- LVAL val;
- int *adr;
-
- /* get the address and the new value */
- val = xlgafixnum(); adr = (int *)getfixnum(val);
- val = xlgafixnum();
- xllastarg();
-
- /* store the new value */
- *adr = (int)getfixnum(val);
-
- /* return the new value */
- return (val);
-}
-
-/* xaddrs - get the address of an XLISP node */
-LVAL xaddrs(void)
-{
- LVAL val;
-
- /* get the node */
- val = xlgetarg();
- xllastarg();
-
- /* return the address of the node */
- return (cvfixnum((FIXTYPE)val));
-}
-
-/* xprofile - turn profiling on and off */
-LVAL xprofile()
-{
- LVAL flag, result;
-
- /* get the argument */
- flag = xlgetarg();
- xllastarg();
-
- result = (profile_flag ? s_true : NIL);
- profile_flag = !null(flag);
- /* turn off profiling right away: */
- if (!profile_flag) profile_count_ptr = &invisible_counter;
- return result;
-}
diff --git a/lib-src/libscorealign/gen_chroma.cpp b/lib-src/libscorealign/gen_chroma.cpp
index b2d50bc..e7701b4 100644
--- a/lib-src/libscorealign/gen_chroma.cpp
+++ b/lib-src/libscorealign/gen_chroma.cpp
@@ -409,8 +409,9 @@ int Scorealign::gen_chroma_midi(Alg_seq &seq, int hcutoff, int lcutoff,
//set up the chrom_energy array;
(*chrom_energy) = ALLOC(float, frame_count * (CHROMA_BIN_COUNT + 1));
Event_list_ptr list = NULL;
- seq.iteration_begin();
- Alg_event_ptr event = seq.iteration_next();
+ Alg_iterator iterator(&seq, false);
+ iterator.begin();
+ Alg_event_ptr event = iterator.next();
int cv_index;
for (cv_index = 0; cv_index < frame_count; cv_index++) {
@@ -428,7 +429,7 @@ int Scorealign::gen_chroma_midi(Alg_seq &seq, int hcutoff, int lcutoff,
if (event->is_note()) {
list = new Event_list(event, list);
}
- event = seq.iteration_next();
+ event = iterator.next();
}
/* remove notes that are no longer sounding */
Event_list_ptr *ptr = &list;
@@ -467,7 +468,7 @@ int Scorealign::gen_chroma_midi(Alg_seq &seq, int hcutoff, int lcutoff,
list = list->next;
delete temp;
}
- seq.iteration_end();
+ iterator.end();
if (verbose)
printf("\nGenerated Chroma. file%d_frames is %i\n", id, file1_frames);
return frame_count;
diff --git a/lib-src/libscorealign/libscorealign.vcproj b/lib-src/libscorealign/libscorealign.vcproj
index e6cc7ea..5b061bf 100644
--- a/lib-src/libscorealign/libscorealign.vcproj
+++ b/lib-src/libscorealign/libscorealign.vcproj
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
- Version="8.00"
+ Version="9.00"
Name="libscorealign"
ProjectGUID="{5F04DE5D-0A34-496E-8A34-BE30BA9C70A1}"
RootNamespace="scorealign"
Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
diff --git a/lib-src/libvamp/Makefile.in b/lib-src/libvamp/Makefile.in
index e52f422..e8af235 100644
--- a/lib-src/libvamp/Makefile.in
+++ b/lib-src/libvamp/Makefile.in
@@ -249,6 +249,7 @@ clean:
distclean: clean
rm -f $(SDK_STATIC) $(SDK_DYNAMIC) $(HOSTSDK_STATIC) $(HOSTSDK_DYNAMIC) $(PLUGIN_TARGET) $(HOST_TARGET) $(RDFGEN_TARGET) *~ */*~
+ rm -f config.log config.status Makefile
install: $(SDK_STATIC) $(SDK_DYNAMIC) $(HOSTSDK_STATIC) $(HOSTSDK_DYNAMIC) $(PLUGIN_TARGET) $(HOST_TARGET) $(RDFGEN_TARGET)
mkdir -p $(DESTDIR)$(INSTALL_API_HEADERS)
diff --git a/lib-src/portaudio-v19/Makefile.in b/lib-src/portaudio-v19/Makefile.in
index dca537d..ce0db00 100644
--- a/lib-src/portaudio-v19/Makefile.in
+++ b/lib-src/portaudio-v19/Makefile.in
@@ -39,7 +39,7 @@ OTHER_OBJS = @OTHER_OBJS@
PALIB = libportaudio.la
PAINC = include/portaudio.h
-PA_LDFLAGS = $(LDFLAGS) $(SHARED_FLAGS) -rpath $(libdir) -no-undefined \
+PA_LDFLAGS = $(LDFLAGS) -rpath $(libdir) -no-undefined \
-export-symbols-regex "(Pa|PaMacCore|PaJack|PaAlsa)_.*" \
-version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE)
diff --git a/lib-src/portaudio-v19/include/pa_asio.h b/lib-src/portaudio-v19/include/pa_asio.h
index 3b8f543..6a2807f 100644
--- a/lib-src/portaudio-v19/include/pa_asio.h
+++ b/lib-src/portaudio-v19/include/pa_asio.h
@@ -1,7 +1,7 @@
#ifndef PA_ASIO_H
#define PA_ASIO_H
/*
- * $Id: pa_asio.h,v 1.8 2008/12/31 15:38:31 richardash1981 Exp $
+ * $Id: pa_asio.h,v 1.9 2009/05/25 21:40:15 richardash1981 Exp $
* PortAudio Portable Real-Time Audio Library
* ASIO specific extensions
*
@@ -100,6 +100,19 @@ PaError PaAsio_GetOutputChannelName( PaDeviceIndex device, int channelIndex,
const char** channelName );
+/** Set the sample rate of an open paASIO stream.
+
+ @param stream The stream to operate on.
+ @param sampleRate The new sample rate.
+
+ Note that this function may fail if the stream is alredy running and the
+ ASIO driver does not support switching the sample rate of a running stream.
+
+ Returns paIncompatibleStreamHostApi if stream is not a paASIO stream.
+*/
+PaError PaAsio_SetStreamSampleRate( PaStream* stream, double sampleRate );
+
+
#define paAsioUseChannelSelectors (0x01)
typedef struct PaAsioStreamInfo{
diff --git a/lib-src/portaudio-v19/include/pa_linux_alsa.h b/lib-src/portaudio-v19/include/pa_linux_alsa.h
index 613ab60..4f0eb60 100644
--- a/lib-src/portaudio-v19/include/pa_linux_alsa.h
+++ b/lib-src/portaudio-v19/include/pa_linux_alsa.h
@@ -2,7 +2,7 @@
#define PA_LINUX_ALSA_H
/*
- * $Id: pa_linux_alsa.h,v 1.9 2008/12/31 15:38:31 richardash1981 Exp $
+ * $Id: pa_linux_alsa.h,v 1.10 2009/05/25 21:40:16 richardash1981 Exp $
* PortAudio Portable Real-Time Audio Library
* ALSA-specific extensions
*
@@ -87,6 +87,11 @@ PaError PaAlsa_GetStreamOutputCard( PaStream *s, int *card );
*/
PaError PaAlsa_SetNumPeriods( int numPeriods );
+/** Set the maximum number of times to retry opening busy device (sleeping for a
+ * short interval inbetween).
+ */
+PaError PaAlsa_SetRetriesBusy( int retries );
+
#ifdef __cplusplus
}
#endif
diff --git a/lib-src/portaudio-v19/include/pa_win_waveformat.h b/lib-src/portaudio-v19/include/pa_win_waveformat.h
index 6f65834..1b76d0d 100644
--- a/lib-src/portaudio-v19/include/pa_win_waveformat.h
+++ b/lib-src/portaudio-v19/include/pa_win_waveformat.h
@@ -158,15 +158,32 @@ typedef struct{
#define PAWIN_INDEXOF_SUBFORMAT (PAWIN_SIZEOF_WAVEFORMATEX+6)
/*
+ Valid values to pass for the waveFormatTag PaWin_InitializeWaveFormatEx and
+ PaWin_InitializeWaveFormatExtensible functions below. These must match
+ the standard Windows WAVE_FORMAT_* values.
+*/
+#define PAWIN_WAVE_FORMAT_PCM (1)
+#define PAWIN_WAVE_FORMAT_IEEE_FLOAT (3)
+#define PAWIN_WAVE_FORMAT_DOLBY_AC3_SPDIF (0x0092)
+#define PAWIN_WAVE_FORMAT_WMA_SPDIF (0x0164)
+
+
+/*
+ returns PAWIN_WAVE_FORMAT_PCM or PAWIN_WAVE_FORMAT_IEEE_FLOAT
+ depending on the sampleFormat parameter.
+*/
+int PaWin_SampleFormatToLinearWaveFormatTag( PaSampleFormat sampleFormat );
+
+/*
Use the following two functions to initialize the waveformat structure.
*/
void PaWin_InitializeWaveFormatEx( PaWinWaveFormat *waveFormat,
- int numChannels, PaSampleFormat sampleFormat, double sampleRate );
+ int numChannels, PaSampleFormat sampleFormat, int waveFormatTag, double sampleRate );
void PaWin_InitializeWaveFormatExtensible( PaWinWaveFormat *waveFormat,
- int numChannels, PaSampleFormat sampleFormat, double sampleRate,
+ int numChannels, PaSampleFormat sampleFormat, int waveFormatTag, double sampleRate,
PaWinWaveFormatChannelMask channelMask );
@@ -178,4 +195,4 @@ PaWinWaveFormatChannelMask PaWin_DefaultChannelMask( int numChannels );
}
#endif /* __cplusplus */
-#endif /* PA_WIN_WAVEFORMAT_H */
\ No newline at end of file
+#endif /* PA_WIN_WAVEFORMAT_H */
diff --git a/lib-src/portaudio-v19/include/pa_win_wmme.h b/lib-src/portaudio-v19/include/pa_win_wmme.h
index 6449c09..1c41330 100644
--- a/lib-src/portaudio-v19/include/pa_win_wmme.h
+++ b/lib-src/portaudio-v19/include/pa_win_wmme.h
@@ -1,7 +1,7 @@
#ifndef PA_WIN_WMME_H
#define PA_WIN_WMME_H
/*
- * $Id: pa_win_wmme.h,v 1.8 2008/12/31 15:38:31 richardash1981 Exp $
+ * $Id: pa_win_wmme.h,v 1.9 2009/05/25 21:40:16 richardash1981 Exp $
* PortAudio Portable Real-Time Audio Library
* MME specific extensions
*
@@ -53,6 +53,10 @@ extern "C"
#endif /* __cplusplus */
+/* The following are flags which can be set in
+ PaWinMmeStreamInfo's flags field.
+*/
+
#define paWinMmeUseLowLevelLatencyParameters (0x01)
#define paWinMmeUseMultipleDevices (0x02) /* use mme specific multiple device feature */
#define paWinMmeUseChannelMask (0x04)
@@ -64,6 +68,11 @@ extern "C"
*/
#define paWinMmeDontThrottleOverloadedProcessingThread (0x08)
+/* Flags for non-PCM spdif passthrough.
+*/
+#define paWinMmeWaveFormatDolbyAc3Spdif (0x10)
+#define paWinMmeWaveFormatWmaSpdif (0x20)
+
typedef struct PaWinMmeDeviceAndChannelCount{
PaDeviceIndex device;
diff --git a/lib-src/portaudio-v19/src/common/pa_process.c b/lib-src/portaudio-v19/src/common/pa_process.c
index 1667947..7b50db9 100644
--- a/lib-src/portaudio-v19/src/common/pa_process.c
+++ b/lib-src/portaudio-v19/src/common/pa_process.c
@@ -1,5 +1,5 @@
/*
- * $Id: pa_process.c,v 1.8 2008/12/31 15:38:32 richardash1981 Exp $
+ * $Id: pa_process.c,v 1.9 2009/05/25 21:40:16 richardash1981 Exp $
* Portable Audio I/O Library
* streamCallback <-> host buffer processing adapter
*
@@ -997,7 +997,7 @@ static unsigned long AdaptingInputOnlyProcess( PaUtilBufferProcessor *bp,
bp->framesPerUserBuffer, bp->timeInfo,
bp->callbackStatusFlags, bp->userData );
- bp->timeInfo->inputBufferAdcTime += frameCount * bp->samplePeriod;
+ bp->timeInfo->inputBufferAdcTime += bp->framesPerUserBuffer * bp->samplePeriod;
}
bp->framesInTempInputBuffer = 0;
diff --git a/lib-src/portaudio-v19/src/hostapi/alsa/pa_linux_alsa.c b/lib-src/portaudio-v19/src/hostapi/alsa/pa_linux_alsa.c
index 8471cf7..a5029fb 100644
--- a/lib-src/portaudio-v19/src/hostapi/alsa/pa_linux_alsa.c
+++ b/lib-src/portaudio-v19/src/hostapi/alsa/pa_linux_alsa.c
@@ -1,11 +1,12 @@
/*
- * $Id: pa_linux_alsa.c,v 1.10 2008/12/31 15:38:35 richardash1981 Exp $
+ * $Id: pa_linux_alsa.c,v 1.13 2009/07/01 19:27:59 richardash1981 Exp $
* PortAudio Portable Real-Time Audio Library
* Latest Version at: http://www.portaudio.com
* ALSA implementation by Joshua Haberman and Arve Knudsen
*
* Copyright (c) 2002 Joshua Haberman <joshua at haberman.com>
- * Copyright (c) 2005-2007 Arve Knudsen <aknuds-1 at broadpark.no>
+ * Copyright (c) 2005-2009 Arve Knudsen <arve.knudsen at gmail.com>
+ * Copyright (c) 2008 Kevin Kofler <kevin.kofler at chello.at>
*
* Based on the Open Source API proposed by Ross Bencina
* Copyright (c) 1999-2002 Ross Bencina, Phil Burk
@@ -99,6 +100,7 @@
static int aErr_; /* Used with ENSURE_ */
static int numPeriods_ = 4;
+static int busyRetries_ = 100;
int PaAlsa_SetNumPeriods( int numPeriods )
{
@@ -118,6 +120,8 @@ typedef struct
unsigned long framesPerBuffer;
int numUserChannels, numHostChannels;
int userInterleaved, hostInterleaved;
+ int canMmap;
+ void *nonMmapBuffer;
PaDeviceIndex device; /* Keep the device index */
snd_pcm_t *pcm;
@@ -130,6 +134,7 @@ typedef struct
StreamDirection streamDir;
snd_pcm_channel_area_t *channelAreas; /* Needed for channel adaption */
+ int card;
} PaAlsaStreamComponent;
/* Implementation specific stream structure */
@@ -321,7 +326,7 @@ static void Terminate( struct PaUtilHostApiRepresentation *hostApi )
* and a suitable result returned. The device is closed before returning.
*/
static PaError GropeDevice( snd_pcm_t* pcm, int isPlug, StreamDirection mode, int openBlocking,
- PaAlsaDeviceInfo* devInfo, int* canMmap )
+ PaAlsaDeviceInfo* devInfo )
{
PaError result = paNoError;
snd_pcm_hw_params_t *hwParams;
@@ -354,9 +359,6 @@ static PaError GropeDevice( snd_pcm_t* pcm, int isPlug, StreamDirection mode, in
snd_pcm_hw_params_alloca( &hwParams );
snd_pcm_hw_params_any( pcm, hwParams );
- *canMmap = snd_pcm_hw_params_test_access( pcm, hwParams, SND_PCM_ACCESS_MMAP_INTERLEAVED ) >= 0 ||
- snd_pcm_hw_params_test_access( pcm, hwParams, SND_PCM_ACCESS_MMAP_NONINTERLEAVED ) >= 0;
-
if( defaultSr >= 0 )
{
/* Could be that the device opened in one mode supports samplerates that the other mode wont have,
@@ -539,7 +541,7 @@ static int IgnorePlugin( const char *pluginId )
**/
static int OpenPcm( snd_pcm_t **pcmp, const char *name, snd_pcm_stream_t stream, int mode, int waitOnBusy )
{
- int tries = 0, maxTries = waitOnBusy ? 100 : 0;
+ int tries = 0, maxTries = waitOnBusy ? busyRetries_ : 0;
int ret = snd_pcm_open( pcmp, name, stream, mode );
for( tries = 0; tries < maxTries && -EBUSY == ret; ++tries )
{
@@ -566,7 +568,6 @@ static PaError FillInDevInfo( PaAlsaHostApiRepresentation *alsaApi, HwDevInfo* d
PaError result = 0;
PaDeviceInfo *baseDeviceInfo = &devInfo->baseDeviceInfo;
snd_pcm_t *pcm;
- int canMmap = -1;
PaUtilHostApiRepresentation *baseApi = &alsaApi->baseHostApiRep;
/* Zero fields */
@@ -580,8 +581,7 @@ static PaError FillInDevInfo( PaAlsaHostApiRepresentation *alsaApi, HwDevInfo* d
OpenPcm( &pcm, deviceName->alsaName, SND_PCM_STREAM_CAPTURE, blocking, 0 )
>= 0 )
{
- if( GropeDevice( pcm, deviceName->isPlug, StreamDirection_In, blocking, devInfo,
- &canMmap ) != paNoError )
+ if( GropeDevice( pcm, deviceName->isPlug, StreamDirection_In, blocking, devInfo ) != paNoError )
{
/* Error */
PA_DEBUG(("%s: Failed groping %s for capture\n", __FUNCTION__, deviceName->alsaName));
@@ -594,8 +594,7 @@ static PaError FillInDevInfo( PaAlsaHostApiRepresentation *alsaApi, HwDevInfo* d
OpenPcm( &pcm, deviceName->alsaName, SND_PCM_STREAM_PLAYBACK, blocking, 0 )
>= 0 )
{
- if( GropeDevice( pcm, deviceName->isPlug, StreamDirection_Out, blocking, devInfo,
- &canMmap ) != paNoError )
+ if( GropeDevice( pcm, deviceName->isPlug, StreamDirection_Out, blocking, devInfo ) != paNoError )
{
/* Error */
PA_DEBUG(("%s: Failed groping %s for playback\n", __FUNCTION__, deviceName->alsaName));
@@ -603,12 +602,6 @@ static PaError FillInDevInfo( PaAlsaHostApiRepresentation *alsaApi, HwDevInfo* d
}
}
- if( 0 == canMmap )
- {
- PA_DEBUG(("%s: Device %s doesn't support mmap\n", __FUNCTION__, deviceName->alsaName));
- goto end;
- }
-
baseDeviceInfo->structVersion = 2;
baseDeviceInfo->hostApi = alsaApi->hostApiIndex;
baseDeviceInfo->name = deviceName->name;
@@ -1169,6 +1162,7 @@ static PaError PaAlsaStreamComponent_Initialize( PaAlsaStreamComponent *self, Pa
{
PaError result = paNoError;
PaSampleFormat userSampleFormat = params->sampleFormat, hostSampleFormat;
+ snd_pcm_info_t* pcmInfo;
assert( params->channelCount > 0 );
/* Make sure things have an initial value */
@@ -1189,6 +1183,9 @@ static PaError PaAlsaStreamComponent_Initialize( PaAlsaStreamComponent *self, Pa
self->device = params->device;
PA_ENSURE( AlsaOpen( &alsaApi->baseHostApiRep, params, streamDir, &self->pcm ) );
+
+ snd_pcm_info_alloca( &pcmInfo );
+ self->card = snd_pcm_info_get_card( pcmInfo );
self->nfds = snd_pcm_poll_descriptors_count( self->pcm );
hostSampleFormat = PaUtil_SelectClosestAvailableFormat( GetAvailableFormats( self->pcm ), userSampleFormat );
@@ -1197,6 +1194,8 @@ static PaError PaAlsaStreamComponent_Initialize( PaAlsaStreamComponent *self, Pa
self->hostInterleaved = self->userInterleaved = !(userSampleFormat & paNonInterleaved);
self->numUserChannels = params->channelCount;
self->streamDir = streamDir;
+ self->canMmap = 0;
+ self->nonMmapBuffer = NULL;
if( !callbackMode && !self->userInterleaved )
{
@@ -1239,6 +1238,7 @@ static PaError PaAlsaStreamComponent_InitialConfigure( PaAlsaStreamComponent *se
PaError result = paNoError;
snd_pcm_access_t accessMode, alternateAccessMode;
+ snd_pcm_access_t rwAccessMode, alternateRwAccessMode;
int dir = 0;
snd_pcm_t *pcm = self->pcm;
double sr = *sampleRate;
@@ -1258,32 +1258,40 @@ static PaError PaAlsaStreamComponent_InitialConfigure( PaAlsaStreamComponent *se
if( self->userInterleaved )
{
accessMode = SND_PCM_ACCESS_MMAP_INTERLEAVED;
+ rwAccessMode = SND_PCM_ACCESS_RW_INTERLEAVED;
alternateAccessMode = SND_PCM_ACCESS_MMAP_NONINTERLEAVED;
+ alternateRwAccessMode = SND_PCM_ACCESS_RW_NONINTERLEAVED;
}
else
{
accessMode = SND_PCM_ACCESS_MMAP_NONINTERLEAVED;
+ rwAccessMode = SND_PCM_ACCESS_RW_NONINTERLEAVED;
alternateAccessMode = SND_PCM_ACCESS_MMAP_INTERLEAVED;
+ alternateRwAccessMode = SND_PCM_ACCESS_RW_INTERLEAVED;
}
/* If requested access mode fails, try alternate mode */
+ self->canMmap = 1;
if( snd_pcm_hw_params_set_access( pcm, hwParams, accessMode ) < 0 )
{
- int err = 0;
- if( (err = snd_pcm_hw_params_set_access( pcm, hwParams, alternateAccessMode )) < 0)
+ if( snd_pcm_hw_params_set_access( pcm, hwParams, rwAccessMode ) >= 0 )
+ self->canMmap = 0;
+ else
{
- result = paUnanticipatedHostError;
- if( -EINVAL == err )
+ if( snd_pcm_hw_params_set_access( pcm, hwParams, alternateAccessMode ) < 0 )
{
- PaUtil_SetLastHostErrorInfo( paALSA, err, "PA ALSA requires that a device supports mmap access" );
- }
- else
- {
- PaUtil_SetLastHostErrorInfo( paALSA, err, snd_strerror( err ) );
+ int err = 0;
+ if( (err = snd_pcm_hw_params_set_access( pcm, hwParams, alternateRwAccessMode )) >= 0)
+ self->canMmap = 0;
+ else
+ {
+ result = paUnanticipatedHostError;
+ PaUtil_SetLastHostErrorInfo( paALSA, err, snd_strerror( err ) );
+ goto error;
+ }
}
- goto error;
+ /* Flip mode */
+ self->hostInterleaved = !self->userInterleaved;
}
- /* Flip mode */
- self->hostInterleaved = !self->userInterleaved;
}
ENSURE_( snd_pcm_hw_params_set_format( pcm, hwParams, self->nativeFormat ), paUnanticipatedHostError );
@@ -1361,7 +1369,7 @@ static PaError PaAlsaStreamComponent_FinishConfigure( PaAlsaStreamComponent *sel
ENSURE_( snd_pcm_sw_params_set_avail_min( self->pcm, swParams, self->framesPerBuffer ), paUnanticipatedHostError );
ENSURE_( snd_pcm_sw_params_set_xfer_align( self->pcm, swParams, 1 ), paUnanticipatedHostError );
- ENSURE_( snd_pcm_sw_params_set_tstamp_mode( self->pcm, swParams, SND_PCM_TSTAMP_MMAP ), paUnanticipatedHostError );
+ ENSURE_( snd_pcm_sw_params_set_tstamp_mode( self->pcm, swParams, SND_PCM_TSTAMP_ENABLE ), paUnanticipatedHostError );
/* Set the parameters! */
ENSURE_( snd_pcm_sw_params( self->pcm, swParams ), paUnanticipatedHostError );
@@ -1589,6 +1597,10 @@ static PaError PaAlsaStreamComponent_DetermineFramesPerBuffer( PaAlsaStreamCompo
}
}
+ /* non-mmap mode needs a reasonably-sized buffer or it'll stutter */
+ if( !self->canMmap && framesPerHostBuffer < 2048 )
+ framesPerHostBuffer = 2048;
+
assert( framesPerHostBuffer > 0 );
{
snd_pcm_uframes_t min = 0, max = 0;
@@ -1831,12 +1843,13 @@ static PaError PaAlsaStream_DetermineFramesPerBuffer( PaAlsaStream* self, double
PA_UNLESS( framesPerHostBuffer != 0, paInternalError );
self->maxFramesPerHostBuffer = framesPerHostBuffer;
- if( !accurate )
+ if( !self->playback.canMmap || !accurate )
{
/* Don't know the exact size per host buffer */
*hostBufferSizeMode = paUtilBoundedHostBufferSize;
/* Raise upper bound */
- ++self->maxFramesPerHostBuffer;
+ if( !accurate )
+ ++self->maxFramesPerHostBuffer;
}
error:
@@ -1995,11 +2008,11 @@ static PaError OpenStream( struct PaUtilHostApiRepresentation *hostApi,
/* Ok, buffer processor is initialized, now we can deduce it's latency */
if( numInputChannels > 0 )
- stream->streamRepresentation.streamInfo.inputLatency = inputLatency + PaUtil_GetBufferProcessorInputLatency(
- &stream->bufferProcessor );
+ stream->streamRepresentation.streamInfo.inputLatency = inputLatency + (PaTime)(
+ PaUtil_GetBufferProcessorInputLatency( &stream->bufferProcessor ) / sampleRate);
if( numOutputChannels > 0 )
- stream->streamRepresentation.streamInfo.outputLatency = outputLatency + PaUtil_GetBufferProcessorOutputLatency(
- &stream->bufferProcessor );
+ stream->streamRepresentation.streamInfo.outputLatency = outputLatency + (PaTime)(
+ PaUtil_GetBufferProcessorOutputLatency( &stream->bufferProcessor ) / sampleRate);
*s = (PaStream*)stream;
@@ -2059,9 +2072,11 @@ static PaError AlsaStart( PaAlsaStream *stream, int priming )
{
/* Buffer isn't primed, so prepare and silence */
ENSURE_( snd_pcm_prepare( stream->playback.pcm ), paUnanticipatedHostError );
- SilenceBuffer( stream );
+ if( stream->playback.canMmap )
+ SilenceBuffer( stream );
}
- ENSURE_( snd_pcm_start( stream->playback.pcm ), paUnanticipatedHostError );
+ if( stream->playback.canMmap )
+ ENSURE_( snd_pcm_start( stream->playback.pcm ), paUnanticipatedHostError );
}
else
ENSURE_( snd_pcm_prepare( stream->playback.pcm ), paUnanticipatedHostError );
@@ -2390,6 +2405,7 @@ static PaError PaAlsaStream_HandleXrun( PaAlsaStream *self )
snd_pcm_status_t *st;
PaTime now = PaUtil_GetTime();
snd_timestamp_t t;
+ int errplayback = 0, errcapture = 0;
snd_pcm_status_alloca( &st );
@@ -2400,6 +2416,7 @@ static PaError PaAlsaStream_HandleXrun( PaAlsaStream *self )
{
snd_pcm_status_get_trigger_tstamp( st, &t );
self->underrun = now * 1000 - ((PaTime) t.tv_sec * 1000 + (PaTime) t.tv_usec / 1000);
+ errplayback = snd_pcm_recover( self->playback.pcm, -EPIPE, 0 );
}
}
if( self->capture.pcm )
@@ -2409,10 +2426,12 @@ static PaError PaAlsaStream_HandleXrun( PaAlsaStream *self )
{
snd_pcm_status_get_trigger_tstamp( st, &t );
self->overrun = now * 1000 - ((PaTime) t.tv_sec * 1000 + (PaTime) t.tv_usec / 1000);
+ errcapture = snd_pcm_recover( self->capture.pcm, -EPIPE, 0 );
}
}
- PA_ENSURE( AlsaRestart( self ) );
+ if( errplayback || errcapture )
+ PA_ENSURE( AlsaRestart( self ) );
end:
return result;
@@ -2563,7 +2582,7 @@ static void CalculateTimeInfo( PaAlsaStream *stream, PaStreamCallbackTimeInfo *t
static PaError PaAlsaStreamComponent_EndProcessing( PaAlsaStreamComponent *self, unsigned long numFrames, int *xrun )
{
PaError result = paNoError;
- int res;
+ int res = 0;
/* @concern FullDuplex It is possible that only one direction is marked ready after polling, and processed
* afterwards
@@ -2571,7 +2590,34 @@ static PaError PaAlsaStreamComponent_EndProcessing( PaAlsaStreamComponent *self,
if( !self->ready )
goto end;
- res = snd_pcm_mmap_commit( self->pcm, self->offset, numFrames );
+ if( !self->canMmap && StreamDirection_Out == self->streamDir )
+ {
+ /* Play sound */
+ if( self->hostInterleaved )
+ res = snd_pcm_writei( self->pcm, self->nonMmapBuffer, numFrames );
+ else
+ {
+ void *bufs[self->numHostChannels];
+ int bufsize = snd_pcm_format_size( self->nativeFormat, self->framesPerBuffer + 1 );
+ unsigned char *buffer = self->nonMmapBuffer;
+ int i;
+ for( i = 0; i < self->numHostChannels; ++i )
+ {
+ bufs[i] = buffer;
+ buffer += bufsize;
+ }
+ res = snd_pcm_writen( self->pcm, bufs, numFrames );
+ }
+ }
+
+ if( self->canMmap )
+ res = snd_pcm_mmap_commit( self->pcm, self->offset, numFrames );
+ else
+ {
+ free( self->nonMmapBuffer );
+ self->nonMmapBuffer = NULL;
+ }
+
if( res == -EPIPE || res == -ESTRPIPE )
{
*xrun = 1;
@@ -2611,7 +2657,7 @@ static PaError PaAlsaStreamComponent_DoChannelAdaption( PaAlsaStreamComponent *s
if( self->hostInterleaved )
{
int swidth = snd_pcm_format_size( self->nativeFormat, 1 );
- unsigned char *buffer = ExtractAddress( self->channelAreas, self->offset );
+ unsigned char *buffer = self->canMmap ? ExtractAddress( self->channelAreas, self->offset ) : self->nonMmapBuffer;
/* Start after the last user channel */
p = buffer + self->numUserChannels * swidth;
@@ -2991,13 +3037,23 @@ static PaError PaAlsaStreamComponent_RegisterChannels( PaAlsaStreamComponent* se
goto end;
}
- ENSURE_( snd_pcm_mmap_begin( self->pcm, &areas, &self->offset, numFrames ), paUnanticipatedHostError );
+ if( self->canMmap )
+ {
+ ENSURE_( snd_pcm_mmap_begin( self->pcm, &areas, &self->offset, numFrames ), paUnanticipatedHostError );
+ /* @concern ChannelAdaption Buffer address is recorded so we can do some channel adaption later */
+ self->channelAreas = (snd_pcm_channel_area_t *)areas;
+ }
+ else
+ {
+ free( self->nonMmapBuffer );
+ self->nonMmapBuffer = calloc( self->numHostChannels, snd_pcm_format_size( self->nativeFormat, self->framesPerBuffer + 1 ) );
+ }
if( self->hostInterleaved )
{
int swidth = snd_pcm_format_size( self->nativeFormat, 1 );
- p = buffer = ExtractAddress( areas, self->offset );
+ p = buffer = self->canMmap ? ExtractAddress( areas, self->offset ) : self->nonMmapBuffer;
for( i = 0; i < self->numUserChannels; ++i )
{
/* We're setting the channels up to userChannels, but the stride will be hostChannels samples */
@@ -3007,16 +3063,52 @@ static PaError PaAlsaStreamComponent_RegisterChannels( PaAlsaStreamComponent* se
}
else
{
- for( i = 0; i < self->numUserChannels; ++i )
+ if( self->canMmap )
+ for( i = 0; i < self->numUserChannels; ++i )
+ {
+ area = areas + i;
+ buffer = ExtractAddress( area, self->offset );
+ setChannel( bp, i, buffer, 1 );
+ }
+ else
{
- area = areas + i;
- buffer = ExtractAddress( area, self->offset );
- setChannel( bp, i, buffer, 1 );
+ int bufsize = snd_pcm_format_size( self->nativeFormat, self->framesPerBuffer + 1 );
+ buffer = self->nonMmapBuffer;
+ for( i = 0; i < self->numUserChannels; ++i )
+ {
+ setChannel( bp, i, buffer, 1 );
+ buffer += bufsize;
+ }
}
}
- /* @concern ChannelAdaption Buffer address is recorded so we can do some channel adaption later */
- self->channelAreas = (snd_pcm_channel_area_t *)areas;
+ if( !self->canMmap && StreamDirection_In == self->streamDir )
+ {
+ /* Read sound */
+ int res;
+ if( self->hostInterleaved )
+ res = snd_pcm_readi( self->pcm, self->nonMmapBuffer, *numFrames );
+ else
+ {
+ void *bufs[self->numHostChannels];
+ int bufsize = snd_pcm_format_size( self->nativeFormat, self->framesPerBuffer + 1 );
+ unsigned char *buffer = self->nonMmapBuffer;
+ int i;
+ for( i = 0; i < self->numHostChannels; ++i )
+ {
+ bufs[i] = buffer;
+ buffer += bufsize;
+ }
+ res = snd_pcm_readn( self->pcm, bufs, *numFrames );
+ }
+ if( res == -EPIPE || res == -ESTRPIPE )
+ {
+ *xrun = 1;
+ *numFrames = 0;
+ free( self->nonMmapBuffer );
+ self->nonMmapBuffer = NULL;
+ }
+ }
end:
error:
@@ -3559,9 +3651,7 @@ PaError PaAlsa_GetStreamInputCard(PaStream* s, int* card) {
/* XXX: More descriptive error? */
PA_UNLESS( stream->capture.pcm, paDeviceUnavailable );
- snd_pcm_info_alloca( &pcmInfo );
- PA_ENSURE( snd_pcm_info( stream->capture.pcm, pcmInfo ) );
- *card = snd_pcm_info_get_card( pcmInfo );
+ *card = stream->capture.card;
error:
return result;
@@ -3577,10 +3667,14 @@ PaError PaAlsa_GetStreamOutputCard(PaStream* s, int* card) {
/* XXX: More descriptive error? */
PA_UNLESS( stream->playback.pcm, paDeviceUnavailable );
- snd_pcm_info_alloca( &pcmInfo );
- PA_ENSURE( snd_pcm_info( stream->playback.pcm, pcmInfo ) );
- *card = snd_pcm_info_get_card( pcmInfo );
+ *card = stream->playback.card;
error:
return result;
}
+
+PaError PaAlsa_SetRetriesBusy( int retries )
+{
+ busyRetries_ = retries;
+ return paNoError;
+}
diff --git a/lib-src/portaudio-v19/src/hostapi/asio/pa_asio.cpp b/lib-src/portaudio-v19/src/hostapi/asio/pa_asio.cpp
index 08fb738..f741fb2 100644
--- a/lib-src/portaudio-v19/src/hostapi/asio/pa_asio.cpp
+++ b/lib-src/portaudio-v19/src/hostapi/asio/pa_asio.cpp
@@ -1,5 +1,5 @@
/*
- * $Id: pa_asio.cpp,v 1.8 2008/12/31 15:38:35 richardash1981 Exp $
+ * $Id: pa_asio.cpp,v 1.10 2009/07/01 19:28:02 richardash1981 Exp $
* Portable Audio I/O Library for ASIO Drivers
*
* Author: Stephane Letz
@@ -1182,7 +1182,6 @@ PaError PaAsio_Initialize( PaUtilHostApiRepresentation **hostApi, PaHostApiIndex
|| strcmp (names[i],"ASIO Multimedia Driver") == 0
|| strncmp(names[i],"Premiere",8) == 0 //"Premiere Elements Windows Sound 1.0"
|| strncmp(names[i],"Adobe",5) == 0 //"Adobe Default Windows Sound 1.5"
- || strncmp(names[i],"ReaRoute ASIO",13) == 0 //Reaper www.reaper.fm <- fix your stuff man.
)
{
PA_DEBUG(("BLACKLISTED!!!\n"));
@@ -1620,6 +1619,7 @@ typedef struct PaAsioStream
HANDLE completedBuffersPlayedEvent;
bool streamFinishedCallbackCalled;
+ int isStopped;
volatile int isActive;
volatile bool zeroOutput; /* all future calls to the callback will output silence */
@@ -1754,6 +1754,98 @@ static PaError ValidateAsioSpecificStreamInfo(
}
+static bool IsUsingExternalClockSource()
+{
+ bool result = false;
+ ASIOError asioError;
+ ASIOClockSource clocks[32];
+ long numSources=32;
+
+ /* davidv: listing ASIO Clock sources. there is an ongoing investigation by
+ me about whether or not to call ASIOSetSampleRate if an external Clock is
+ used. A few drivers expected different things here */
+
+ asioError = ASIOGetClockSources(clocks, &numSources);
+ if( asioError != ASE_OK ){
+ PA_DEBUG(("ERROR: ASIOGetClockSources: %s\n", PaAsio_GetAsioErrorText(asioError) ));
+ }else{
+ PA_DEBUG(("INFO ASIOGetClockSources listing %d clocks\n", numSources ));
+ for (int i=0;i<numSources;++i){
+ PA_DEBUG(("ASIOClockSource%d %s current:%d\n", i, clocks[i].name, clocks[i].isCurrentSource ));
+
+ if (clocks[i].isCurrentSource)
+ result = true;
+ }
+ }
+
+ return result;
+}
+
+
+static PaError ValidateAndSetSampleRate( double sampleRate )
+{
+ PaError result = paNoError;
+ ASIOError asioError;
+
+ // check that the device supports the requested sample rate
+
+ asioError = ASIOCanSampleRate( sampleRate );
+ PA_DEBUG(("ASIOCanSampleRate(%f):%d\n", sampleRate, asioError ));
+
+ if( asioError != ASE_OK )
+ {
+ result = paInvalidSampleRate;
+ PA_DEBUG(("ERROR: ASIOCanSampleRate: %s\n", PaAsio_GetAsioErrorText(asioError) ));
+ goto error;
+ }
+
+ // retrieve the current sample rate, we only change to the requested
+ // sample rate if the device is not already in that rate.
+
+ ASIOSampleRate oldRate;
+ asioError = ASIOGetSampleRate(&oldRate);
+ if( asioError != ASE_OK )
+ {
+ result = paInvalidSampleRate;
+ PA_DEBUG(("ERROR: ASIOGetSampleRate: %s\n", PaAsio_GetAsioErrorText(asioError) ));
+ goto error;
+ }
+ PA_DEBUG(("ASIOGetSampleRate:%f\n",oldRate));
+
+ if (oldRate != sampleRate){
+ /* Set sample rate */
+
+ PA_DEBUG(("before ASIOSetSampleRate(%f)\n",sampleRate));
+
+ /*
+ If you have problems with some drivers when externally clocked,
+ try switching on the following line and commenting out the one after it.
+ See IsUsingExternalClockSource() for more info.
+ */
+ //if( IsUsingExternalClockSource() ){
+ if( false ){
+ asioError = ASIOSetSampleRate( 0 );
+ }else{
+ asioError = ASIOSetSampleRate( sampleRate );
+ }
+ if( asioError != ASE_OK )
+ {
+ result = paInvalidSampleRate;
+ PA_DEBUG(("ERROR: ASIOSetSampleRate: %s\n", PaAsio_GetAsioErrorText(asioError) ));
+ goto error;
+ }
+ PA_DEBUG(("after ASIOSetSampleRate(%f)\n",sampleRate));
+ }
+ else
+ {
+ PA_DEBUG(("No Need to change SR\n"));
+ }
+
+error:
+ return result;
+}
+
+
/* see pa_hostapi.h for a list of validity guarantees made about OpenStream parameters */
static PaError OpenStream( struct PaUtilHostApiRepresentation *hostApi,
@@ -1785,7 +1877,6 @@ static PaError OpenStream( struct PaUtilHostApiRepresentation *hostApi,
PaAsioDriverInfo *driverInfo;
int *inputChannelSelectors = 0;
int *outputChannelSelectors = 0;
- bool isExternal = false;
/* Are we using blocking i/o interface? */
int usingBlockingIo = ( !streamCallback ) ? TRUE : FALSE;
@@ -1807,6 +1898,8 @@ static PaError OpenStream( struct PaUtilHostApiRepresentation *hostApi,
return paDeviceUnavailable;
}
+ assert( theAsioStream == 0 );
+
if( inputParameters && outputParameters )
{
/* full duplex ASIO stream must use the same device for input and output */
@@ -1914,76 +2007,9 @@ static PaError OpenStream( struct PaUtilHostApiRepresentation *hostApi,
}
}
-
- /* davidv: listing ASIO Clock sources, there is an ongoing investigation by
- me about whether or not call ASIOSetSampleRate if an external Clock is
- used. A few drivers expected different things here */
- {
- ASIOClockSource clocks[32];
- long numSources=32;
- asioError = ASIOGetClockSources(clocks, &numSources);
- if( asioError != ASE_OK ){
- PA_DEBUG(("ERROR: ASIOGetClockSources: %s\n", PaAsio_GetAsioErrorText(asioError) ));
- }else{
- PA_DEBUG(("INFO ASIOGetClockSources listing %d clocks\n", numSources ));
- for (int i=0;i<numSources;++i){
- PA_DEBUG(("ASIOClockSource%d %s current:%d\n", i,clocks[i].name, clocks[i].isCurrentSource ));
-
- /*
- If you have problems with some drivers when externally clocked,
- uncomment the next two lines
- */
- //if (clocks[i].isCurrentSource)
- // isExternal = true;
- }
- }
- }
-
- // check that the device supports the requested sample rate
-
- asioError = ASIOCanSampleRate( sampleRate );
- PA_DEBUG(("ASIOCanSampleRate(%f):%d\n",sampleRate, asioError ));
-
- if( asioError != ASE_OK )
- {
- result = paInvalidSampleRate;
- PA_DEBUG(("ERROR: ASIOCanSampleRate: %s\n", PaAsio_GetAsioErrorText(asioError) ));
- goto error;
- }
-
-
- // retrieve the current sample rate, we only change to the requested
- // sample rate if the device is not already in that rate.
-
- ASIOSampleRate oldRate;
- asioError = ASIOGetSampleRate(&oldRate);
- if( asioError != ASE_OK )
- {
- result = paInvalidSampleRate;
- PA_DEBUG(("ERROR: ASIOGetSampleRate: %s\n", PaAsio_GetAsioErrorText(asioError) ));
+ result = ValidateAndSetSampleRate( sampleRate );
+ if( result != paNoError )
goto error;
- }
- PA_DEBUG(("ASIOGetSampleRate:%f\n",oldRate));
-
- if (oldRate != sampleRate){
-
- PA_DEBUG(("before ASIOSetSampleRate(%f)\n",sampleRate));
-
- asioError = ASIOSetSampleRate( isExternal?0:sampleRate );
- /* Set sample rate */
- if( asioError != ASE_OK )
- {
- result = paInvalidSampleRate;
- PA_DEBUG(("ERROR: ASIOSetSampleRate: %s\n", PaAsio_GetAsioErrorText(asioError) ));
- goto error;
- }
- PA_DEBUG(("after ASIOSetSampleRate(%f)\n",sampleRate));
- }
- else
- {
- PA_DEBUG(("No Need to change SR\n"));
- }
-
/*
IMPLEMENT ME:
@@ -2544,10 +2570,12 @@ static PaError OpenStream( struct PaUtilHostApiRepresentation *hostApi,
stream->inputChannelCount = inputChannelCount;
stream->outputChannelCount = outputChannelCount;
stream->postOutput = driverInfo->postOutput;
+ stream->isStopped = 1;
stream->isActive = 0;
-
+
asioHostApi->openAsioDeviceIndex = asioDeviceIndex;
+ theAsioStream = stream;
*s = (PaStream*)stream;
return result;
@@ -2655,6 +2683,8 @@ static PaError CloseStream( PaStream* s )
ASIODisposeBuffers();
UnloadAsioDriver();
+ theAsioStream = 0;
+
return result;
}
@@ -3156,16 +3186,19 @@ static PaError StartStream( PaStream *s )
if( result == paNoError )
{
- theAsioStream = stream;
+ assert( theAsioStream == stream ); /* theAsioStream should be set correctly in OpenStream */
+
+ /* initialize these variables before the callback has a chance to be invoked */
+ stream->isStopped = 0;
+ stream->isActive = 1;
+ stream->streamFinishedCallbackCalled = false;
+
asioError = ASIOStart();
- if( asioError == ASE_OK )
- {
- stream->isActive = 1;
- stream->streamFinishedCallbackCalled = false;
- }
- else
+ if( asioError != ASE_OK )
{
- theAsioStream = 0;
+ stream->isStopped = 1;
+ stream->isActive = 0;
+
result = paUnanticipatedHostError;
PA_ASIO_SET_LAST_ASIO_ERROR( asioError );
}
@@ -3174,6 +3207,18 @@ static PaError StartStream( PaStream *s )
return result;
}
+static void EnsureCallbackHasCompleted( PaAsioStream *stream )
+{
+ // make sure that the callback is not still in-flight after ASIOStop()
+ // returns. This has been observed to happen on the Hoontech DSP24 for
+ // example.
+ int count = 2000; // only wait for 2 seconds, rather than hanging.
+ while( stream->reenterCount != -1 && count > 0 )
+ {
+ Sleep(1);
+ --count;
+ }
+}
static PaError StopStream( PaStream *s )
{
@@ -3224,7 +3269,7 @@ static PaError StopStream( PaStream *s )
length is longer than the asio buffer size then that should
be taken into account.
*/
- if( WaitForSingleObject( theAsioStream->completedBuffersPlayedEvent,
+ if( WaitForSingleObject( stream->completedBuffersPlayedEvent,
(DWORD)(stream->streamRepresentation.streamInfo.outputLatency * 1000. * 4.) )
== WAIT_TIMEOUT )
{
@@ -3233,13 +3278,17 @@ static PaError StopStream( PaStream *s )
}
asioError = ASIOStop();
- if( asioError != ASE_OK )
+ if( asioError == ASE_OK )
+ {
+ EnsureCallbackHasCompleted( stream );
+ }
+ else
{
result = paUnanticipatedHostError;
PA_ASIO_SET_LAST_ASIO_ERROR( asioError );
}
- theAsioStream = 0;
+ stream->isStopped = 1;
stream->isActive = 0;
if( !stream->streamFinishedCallbackCalled )
@@ -3251,7 +3300,6 @@ static PaError StopStream( PaStream *s )
return result;
}
-
static PaError AbortStream( PaStream *s )
{
PaError result = paNoError;
@@ -3261,31 +3309,17 @@ static PaError AbortStream( PaStream *s )
stream->zeroOutput = true;
asioError = ASIOStop();
- if( asioError != ASE_OK )
+ if( asioError == ASE_OK )
{
- result = paUnanticipatedHostError;
- PA_ASIO_SET_LAST_ASIO_ERROR( asioError );
+ EnsureCallbackHasCompleted( stream );
}
else
{
- // make sure that the callback is not still in-flight when ASIOStop()
- // returns. This has been observed to happen on the Hoontech DSP24 for
- // example.
- int count = 2000; // only wait for 2 seconds, rather than hanging.
- while( theAsioStream->reenterCount != -1 && count > 0 )
- {
- Sleep(1);
- --count;
- }
+ result = paUnanticipatedHostError;
+ PA_ASIO_SET_LAST_ASIO_ERROR( asioError );
}
- /* it is questionable whether we should zero theAsioStream if ASIOStop()
- returns an error, because the callback could still be active. We assume
- not - this is based on the fact that ASIOStop is unlikely to fail
- if the callback is running - it's more likely to fail because the
- callback is not running. */
-
- theAsioStream = 0;
+ stream->isStopped = 1;
stream->isActive = 0;
if( !stream->streamFinishedCallbackCalled )
@@ -3300,9 +3334,9 @@ static PaError AbortStream( PaStream *s )
static PaError IsStreamStopped( PaStream *s )
{
- //PaAsioStream *stream = (PaAsioStream*)s;
- (void) s; /* unused parameter */
- return theAsioStream == 0;
+ PaAsioStream *stream = (PaAsioStream*)s;
+
+ return stream->isStopped;
}
@@ -3435,11 +3469,8 @@ static PaError ReadStream( PaStream *s ,
/* If block processing has stopped, abort! */
if( blockingState->stopFlag ) { return result = paStreamIsStopped; }
- /* if a timeout is encountered, continue, perhaps we should give up eventually */
- continue;
- /* To give up eventually, we may increase the time out
- period and return an error if it fails anyway. */
- /* retrun result = paTimedOut; */
+ /* If a timeout is encountered, give up eventually. */
+ return result = paTimedOut;
}
}
/* Now, the ring buffer contains the required amount of data
@@ -3609,11 +3640,9 @@ static PaError WriteStream( PaStream *s ,
/* If block processing has stopped, abort! */
if( blockingState->stopFlag ) { return result = paStreamIsStopped; }
- /* if a timeout is encountered, continue, perhaps we should give up eventually */
- continue;
- /* To give up eventually, we may increase the time out
- period and return an error if it fails anyway. */
- /* retrun result = paTimedOut; */
+
+ /* If a timeout is encountered, give up eventually. */
+ return result = paTimedOut;
}
}
/* Now, the ring buffer contains the required amount of free
@@ -3703,6 +3732,118 @@ static signed long GetStreamWriteAvailable( PaStream* s )
}
+/* This routine will be called by the PortAudio engine when audio is needed.
+** It may called at interrupt level on some machines so don't do anything
+** that could mess up the system like calling malloc() or free().
+*/
+static int BlockingIoPaCallback(const void *inputBuffer ,
+ void *outputBuffer ,
+ unsigned long framesPerBuffer,
+ const PaStreamCallbackTimeInfo *timeInfo ,
+ PaStreamCallbackFlags statusFlags ,
+ void *userData )
+{
+ PaError result = paNoError; /* Initial return value. */
+ PaAsioStream *stream = *(PaAsioStream**)userData; /* The PA ASIO stream. */
+ PaAsioStreamBlockingState *blockingState = stream->blockingState; /* Persume blockingState is valid, otherwise the callback wouldn't be running. */
+
+ /* Get a pointer to the stream's blocking i/o buffer processor. */
+ PaUtilBufferProcessor *pBp = &blockingState->bufferProcessor;
+ PaUtilRingBuffer *pRb = NULL;
+
+ /* If output data has been requested. */
+ if( stream->outputChannelCount )
+ {
+ /* If the callback input argument signalizes a output underflow,
+ make sure the WriteStream() function knows about it, too! */
+ if( statusFlags & paOutputUnderflowed ) {
+ blockingState->outputUnderflowFlag = TRUE;
+ }
+
+ /* Access the corresponding ring buffer. */
+ pRb = &blockingState->writeRingBuffer;
+
+ /* If the blocking i/o buffer contains enough output data, */
+ if( PaUtil_GetRingBufferReadAvailable(pRb) >= (long) framesPerBuffer )
+ {
+ /* Extract the requested data from the ring buffer. */
+ PaUtil_ReadRingBuffer( pRb, outputBuffer, framesPerBuffer );
+ }
+ else /* If no output data is available :-( */
+ {
+ /* Signalize a write-buffer underflow. */
+ blockingState->outputUnderflowFlag = TRUE;
+
+ /* Fill the output buffer with silence. */
+ (*pBp->outputZeroer)( outputBuffer, 1, pBp->outputChannelCount * framesPerBuffer );
+
+ /* If playback is to be stopped */
+ if( blockingState->stopFlag && PaUtil_GetRingBufferReadAvailable(pRb) < (long) framesPerBuffer )
+ {
+ /* Extract all the remaining data from the ring buffer,
+ whether it is a complete data block or not. */
+ PaUtil_ReadRingBuffer( pRb, outputBuffer, PaUtil_GetRingBufferReadAvailable(pRb) );
+ }
+ }
+
+ /* Set blocking i/o event? */
+ if( blockingState->writeBuffersRequestedFlag && PaUtil_GetRingBufferWriteAvailable(pRb) >= (long) blockingState->writeBuffersRequested )
+ {
+ /* Reset buffer request. */
+ blockingState->writeBuffersRequestedFlag = FALSE;
+ blockingState->writeBuffersRequested = 0;
+ /* Signalize that requested buffers are ready. */
+ SetEvent( blockingState->writeBuffersReadyEvent );
+ /* What do we do if SetEvent() returns zero, i.e. the event
+ could not be set? How to return errors from within the
+ callback? - S.Fischer */
+ }
+ }
+
+ /* If input data has been supplied. */
+ if( stream->inputChannelCount )
+ {
+ /* If the callback input argument signalizes a input overflow,
+ make sure the ReadStream() function knows about it, too! */
+ if( statusFlags & paInputOverflowed ) {
+ blockingState->inputOverflowFlag = TRUE;
+ }
+
+ /* Access the corresponding ring buffer. */
+ pRb = &blockingState->readRingBuffer;
+
+ /* If the blocking i/o buffer contains not enough input buffers */
+ if( PaUtil_GetRingBufferWriteAvailable(pRb) < (long) framesPerBuffer )
+ {
+ /* Signalize a read-buffer overflow. */
+ blockingState->inputOverflowFlag = TRUE;
+
+ /* Remove some old data frames from the buffer. */
+ PaUtil_AdvanceRingBufferReadIndex( pRb, framesPerBuffer );
+ }
+
+ /* Insert the current input data into the ring buffer. */
+ PaUtil_WriteRingBuffer( pRb, inputBuffer, framesPerBuffer );
+
+ /* Set blocking i/o event? */
+ if( blockingState->readFramesRequestedFlag && PaUtil_GetRingBufferReadAvailable(pRb) >= (long) blockingState->readFramesRequested )
+ {
+ /* Reset buffer request. */
+ blockingState->readFramesRequestedFlag = FALSE;
+ blockingState->readFramesRequested = 0;
+ /* Signalize that requested buffers are ready. */
+ SetEvent( blockingState->readFramesReadyEvent );
+ /* What do we do if SetEvent() returns zero, i.e. the event
+ could not be set? How to return errors from within the
+ callback? - S.Fischer */
+ /** @todo report an error with PA_DEBUG */
+ }
+ }
+
+ return paContinue;
+}
+
+
PaError PaAsio_ShowControlPanel( PaDeviceIndex device, void* systemSpecific )
{
PaError result = paNoError;
@@ -3874,119 +4015,51 @@ error:
}
-
-
-
-
-
-
-/* This routine will be called by the PortAudio engine when audio is needed.
-** It may called at interrupt level on some machines so don't do anything
-** that could mess up the system like calling malloc() or free().
+/* NOTE: the following functions are ASIO-stream specific, and are called directly
+ by client code. We need to check for many more error conditions here because
+ we don't have the benefit of pa_front.c's parameter checking.
*/
-static int BlockingIoPaCallback(const void *inputBuffer ,
- void *outputBuffer ,
- unsigned long framesPerBuffer,
- const PaStreamCallbackTimeInfo *timeInfo ,
- PaStreamCallbackFlags statusFlags ,
- void *userData )
+
+static PaError GetAsioStreamPointer( PaAsioStream **stream, PaStream *s )
{
- PaError result = paNoError; /* Initial return value. */
- PaAsioStream *stream = *(PaAsioStream**)userData; /* The PA ASIO stream. */ /* This is a pointer to "theAsioStream", see OpenStream(). */
- PaAsioStreamBlockingState *blockingState = stream->blockingState; /* Persume blockingState is valid, otherwise the callback wouldn't be running. */
+ PaError result;
+ PaUtilHostApiRepresentation *hostApi;
+ PaAsioHostApiRepresentation *asioHostApi;
+
+ result = PaUtil_ValidateStreamPointer( s );
+ if( result != paNoError )
+ return result;
- /* Get a pointer to the stream's blocking i/o buffer processor. */
- PaUtilBufferProcessor *pBp = &blockingState->bufferProcessor;
- PaUtilRingBuffer *pRb = NULL;
+ result = PaUtil_GetHostApiRepresentation( &hostApi, paASIO );
+ if( result != paNoError )
+ return result;
- /* If output data has been requested. */
- if( stream->outputChannelCount )
+ asioHostApi = (PaAsioHostApiRepresentation*)hostApi;
+
+ if( PA_STREAM_REP( s )->streamInterface == &asioHostApi->callbackStreamInterface
+ || PA_STREAM_REP( s )->streamInterface == &asioHostApi->blockingStreamInterface )
{
- /* If the callback input argument signalizes a output underflow,
- make sure the WriteStream() function knows about it, too! */
- if( statusFlags & paOutputUnderflowed ) {
- blockingState->outputUnderflowFlag = TRUE;
- }
-
- /* Access the corresponding ring buffer. */
- pRb = &blockingState->writeRingBuffer;
-
- /* If the blocking i/o buffer contains enough output data, */
- if( PaUtil_GetRingBufferReadAvailable(pRb) >= (long) framesPerBuffer )
- {
- /* Extract the requested data from the ring buffer. */
- PaUtil_ReadRingBuffer( pRb, outputBuffer, framesPerBuffer );
- }
- else /* If no output data is available :-( */
- {
- /* Signalize a write-buffer underflow. */
- blockingState->outputUnderflowFlag = TRUE;
-
- /* Fill the output buffer with silence. */
- (*pBp->outputZeroer)( outputBuffer, 1, pBp->outputChannelCount * framesPerBuffer );
-
- /* If playback is to be stopped */
- if( blockingState->stopFlag && PaUtil_GetRingBufferReadAvailable(pRb) < (long) framesPerBuffer )
- {
- /* Extract all the remaining data from the ring buffer,
- whether it is a complete data block or not. */
- PaUtil_ReadRingBuffer( pRb, outputBuffer, PaUtil_GetRingBufferReadAvailable(pRb) );
- }
- }
-
- /* Set blocking i/o event? */
- if( blockingState->writeBuffersRequestedFlag && PaUtil_GetRingBufferWriteAvailable(pRb) >= (long) blockingState->writeBuffersRequested )
- {
- /* Reset buffer request. */
- blockingState->writeBuffersRequestedFlag = FALSE;
- blockingState->writeBuffersRequested = 0;
- /* Signalize that requested buffers are ready. */
- SetEvent( blockingState->writeBuffersReadyEvent );
- /* What do we do if SetEvent() returns zero, i.e. the event
- could not be set? How to return errors from within the
- callback? - S.Fischer */
- }
+ /* s is an ASIO stream */
+ *stream = (PaAsioStream *)s;
+ return paNoError;
}
-
- /* If input data has been supplied. */
- if( stream->inputChannelCount )
+ else
{
- /* If the callback input argument signalizes a input overflow,
- make sure the ReadStream() function knows about it, too! */
- if( statusFlags & paInputOverflowed ) {
- blockingState->inputOverflowFlag = TRUE;
- }
-
- /* Access the corresponding ring buffer. */
- pRb = &blockingState->readRingBuffer;
-
- /* If the blocking i/o buffer contains not enough input buffers */
- if( PaUtil_GetRingBufferWriteAvailable(pRb) < (long) framesPerBuffer )
- {
- /* Signalize a read-buffer overflow. */
- blockingState->inputOverflowFlag = TRUE;
+ return paIncompatibleStreamHostApi;
+ }
+}
- /* Remove some old data frames from the buffer. */
- PaUtil_AdvanceRingBufferReadIndex( pRb, framesPerBuffer );
- }
- /* Insert the current input data into the ring buffer. */
- PaUtil_WriteRingBuffer( pRb, inputBuffer, framesPerBuffer );
+PaError PaAsio_SetStreamSampleRate( PaStream* s, double sampleRate )
+{
+ PaAsioStream *stream;
+ PaError result = GetAsioStreamPointer( &stream, s );
+ if( result != paNoError )
+ return result;
- /* Set blocking i/o event? */
- if( blockingState->readFramesRequestedFlag && PaUtil_GetRingBufferReadAvailable(pRb) >= (long) blockingState->readFramesRequested )
- {
- /* Reset buffer request. */
- blockingState->readFramesRequestedFlag = FALSE;
- blockingState->readFramesRequested = 0;
- /* Signalize that requested buffers are ready. */
- SetEvent( blockingState->readFramesReadyEvent );
- /* What do we do if SetEvent() returns zero, i.e. the event
- could not be set? How to return errors from within the
- callback? - S.Fischer */
- /** @todo report an error with PA_DEBUG */
- }
- }
+ if( stream != theAsioStream )
+ return paBadStreamPtr;
- return paContinue;
+ return ValidateAndSetSampleRate( sampleRate );
}
+
diff --git a/lib-src/portaudio-v19/src/hostapi/dsound/pa_win_ds.c b/lib-src/portaudio-v19/src/hostapi/dsound/pa_win_ds.c
index d4a7c60..6bdf4bd 100644
--- a/lib-src/portaudio-v19/src/hostapi/dsound/pa_win_ds.c
+++ b/lib-src/portaudio-v19/src/hostapi/dsound/pa_win_ds.c
@@ -1,5 +1,5 @@
/*
- * $Id: pa_win_ds.c,v 1.11 2008/12/31 15:38:35 richardash1981 Exp $
+ * $Id: pa_win_ds.c,v 1.12 2009/05/25 21:40:16 richardash1981 Exp $
* Portable Audio I/O Library DirectSound implementation
*
* Authors: Phil Burk, Robert Marsanyi & Ross Bencina
@@ -1403,12 +1403,14 @@ static HRESULT InitInputBuffer( PaWinDsStream *stream, PaSampleFormat sampleForm
// first try WAVEFORMATEXTENSIBLE. if this fails, fall back to WAVEFORMATEX
PaWin_InitializeWaveFormatExtensible( &waveFormat, nChannels,
- sampleFormat, nFrameRate, channelMask );
+ sampleFormat, PaWin_SampleFormatToLinearWaveFormatTag( sampleFormat ),
+ nFrameRate, channelMask );
if( IDirectSoundCapture_CreateCaptureBuffer( stream->pDirectSoundCapture,
&captureDesc, &stream->pDirectSoundInputBuffer, NULL) != DS_OK )
{
- PaWin_InitializeWaveFormatEx( &waveFormat, nChannels, sampleFormat, nFrameRate );
+ PaWin_InitializeWaveFormatEx( &waveFormat, nChannels, sampleFormat,
+ PaWin_SampleFormatToLinearWaveFormatTag( sampleFormat ), nFrameRate );
if ((result = IDirectSoundCapture_CreateCaptureBuffer( stream->pDirectSoundCapture,
&captureDesc, &stream->pDirectSoundInputBuffer, NULL)) != DS_OK) return result;
@@ -1479,11 +1481,13 @@ static HRESULT InitOutputBuffer( PaWinDsStream *stream, PaSampleFormat sampleFor
// first try WAVEFORMATEXTENSIBLE. if this fails, fall back to WAVEFORMATEX
PaWin_InitializeWaveFormatExtensible( &waveFormat, nChannels,
- sampleFormat, nFrameRate, channelMask );
+ sampleFormat, PaWin_SampleFormatToLinearWaveFormatTag( sampleFormat ),
+ nFrameRate, channelMask );
if( IDirectSoundBuffer_SetFormat( pPrimaryBuffer, (WAVEFORMATEX*)&waveFormat) != DS_OK )
{
- PaWin_InitializeWaveFormatEx( &waveFormat, nChannels, sampleFormat, nFrameRate );
+ PaWin_InitializeWaveFormatEx( &waveFormat, nChannels, sampleFormat,
+ PaWin_SampleFormatToLinearWaveFormatTag( sampleFormat ), nFrameRate );
if((result = IDirectSoundBuffer_SetFormat( pPrimaryBuffer, (WAVEFORMATEX*)&waveFormat)) != DS_OK) return result;
}
diff --git a/lib-src/portaudio-v19/src/hostapi/wasapi/pa_win_wasapi.cpp b/lib-src/portaudio-v19/src/hostapi/wasapi/pa_win_wasapi.cpp
index ea91eb2..498fc6c 100644
--- a/lib-src/portaudio-v19/src/hostapi/wasapi/pa_win_wasapi.cpp
+++ b/lib-src/portaudio-v19/src/hostapi/wasapi/pa_win_wasapi.cpp
@@ -518,7 +518,7 @@ PaError PaWinWasapi_Initialize( PaUtilHostApiRepresentation **hostApi, PaHostApi
if (value.pwszVal)
wcstombs(deviceName, value.pwszVal,MAX_STR_LEN-1); //todo proper size
else{
- sprintf(deviceName,"baddev%d",i);
+ _snprintf_s(deviceName,MAX_STR_LEN-1,MAX_STR_LEN-1,"baddev%d",i);
}
deviceInfo->name = deviceName;
@@ -956,9 +956,9 @@ GetClosestFormat(IAudioClient * myClient, double sampleRate,const PaStreamParam
HRESULT hResult=!S_OK;
if (*shareMode == AUDCLNT_SHAREMODE_EXCLUSIVE)
- hResult = myClient->IsFormatSupported(AUDCLNT_SHAREMODE_EXCLUSIVE,(WAVEFORMATEX*)outWavex,NULL);
+ hResult = myClient->IsFormatSupported(AUDCLNT_SHAREMODE_EXCLUSIVE,&outWavex->Format,NULL);
else
- hResult = myClient->IsFormatSupported(AUDCLNT_SHAREMODE_SHARED, (WAVEFORMATEX*)&outWavex,&sharedClosestMatch);
+ hResult = myClient->IsFormatSupported(AUDCLNT_SHAREMODE_SHARED, &outWavex->Format,&sharedClosestMatch);
if (hResult == S_OK)
answer = paFormatIsSupported;
@@ -990,9 +990,9 @@ GetClosestFormat(IAudioClient * myClient, double sampleRate,const PaStreamParam
WAVEFORMATEXTENSIBLE ext;
wasapiFillWFEXT(&ext,BestToWorst[i],sampleRate,params->channelCount);
if (*shareMode == AUDCLNT_SHAREMODE_EXCLUSIVE)
- hResult = myClient->IsFormatSupported(AUDCLNT_SHAREMODE_EXCLUSIVE,(WAVEFORMATEX*)&ext,NULL);
+ hResult = myClient->IsFormatSupported(AUDCLNT_SHAREMODE_EXCLUSIVE,&ext.Format,NULL);
else
- hResult = myClient->IsFormatSupported(AUDCLNT_SHAREMODE_SHARED, (WAVEFORMATEX*)&ext,&sharedClosestMatch);
+ hResult = myClient->IsFormatSupported(AUDCLNT_SHAREMODE_SHARED, &ext.Format,&sharedClosestMatch);
if (hResult == S_OK){
memcpy(outWavex,&ext,sizeof(WAVEFORMATEXTENSIBLE));
@@ -1015,9 +1015,9 @@ GetClosestFormat(IAudioClient * myClient, double sampleRate,const PaStreamParam
pcm16WaveFormat.cbSize = 0;
if (*shareMode == AUDCLNT_SHAREMODE_EXCLUSIVE)
- hResult = myClient->IsFormatSupported(AUDCLNT_SHAREMODE_EXCLUSIVE,(WAVEFORMATEX*)&pcm16WaveFormat,NULL);
+ hResult = myClient->IsFormatSupported(AUDCLNT_SHAREMODE_EXCLUSIVE,&pcm16WaveFormat,NULL);
else
- hResult = myClient->IsFormatSupported(AUDCLNT_SHAREMODE_SHARED, (WAVEFORMATEX*)&pcm16WaveFormat,&sharedClosestMatch);
+ hResult = myClient->IsFormatSupported(AUDCLNT_SHAREMODE_SHARED, &pcm16WaveFormat,&sharedClosestMatch);
if (hResult == S_OK){
memcpy(outWavex,&pcm16WaveFormat,sizeof(WAVEFORMATEX));
diff --git a/lib-src/portaudio-v19/src/hostapi/wdmks/pa_win_wdmks.c b/lib-src/portaudio-v19/src/hostapi/wdmks/pa_win_wdmks.c
index d43d26f..c18c641 100644
--- a/lib-src/portaudio-v19/src/hostapi/wdmks/pa_win_wdmks.c
+++ b/lib-src/portaudio-v19/src/hostapi/wdmks/pa_win_wdmks.c
@@ -1,5 +1,5 @@
/*
- * $Id: pa_win_wdmks.c,v 1.8 2008/12/31 15:38:35 richardash1981 Exp $
+ * $Id: pa_win_wdmks.c,v 1.9 2009/05/25 21:40:16 richardash1981 Exp $
* PortAudio Windows WDM-KS interface
*
* Author: Andrew Baldwin
@@ -77,7 +77,7 @@
#include <windows.h>
#include <winioctl.h>
-
+#include <process.h>
#ifdef __GNUC__
#undef PA_LOGE_
@@ -121,24 +121,16 @@
#endif
#ifdef _MSC_VER
+ #define NOMMIDS
#define DYNAMIC_GUID(data) {data}
- #define _INC_MMREG
#define _NTRTL_ /* Turn off default definition of DEFINE_GUIDEX */
#undef DEFINE_GUID
#define DEFINE_GUID(n,data) EXTERN_C const GUID n = {data}
#define DEFINE_GUID_THUNK(n,data) DEFINE_GUID(n,data)
#define DEFINE_GUIDEX(n) DEFINE_GUID_THUNK(n, STATIC_##n)
- #if !defined( DEFINE_WAVEFORMATEX_GUID )
- #define DEFINE_WAVEFORMATEX_GUID(x) (USHORT)(x), 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71
- #endif
- #define WAVE_FORMAT_ADPCM 0x0002
- #define WAVE_FORMAT_IEEE_FLOAT 0x0003
- #define WAVE_FORMAT_ALAW 0x0006
- #define WAVE_FORMAT_MULAW 0x0007
- #define WAVE_FORMAT_MPEG 0x0050
- #define WAVE_FORMAT_DRM 0x0009
#endif
+#include <mmreg.h>
#include <ks.h>
#include <ksmedia.h>
#include <tchar.h>
@@ -2924,11 +2916,26 @@ static DWORD WINAPI ProcessingThread(LPVOID pParam)
PaUtil_SetInputChannel(&stream->bufferProcessor,i,((unsigned char*)(stream->packets[inbuf].Header.Data))+(i*stream->inputSampleSize),stream->deviceInputChannels);
}
}
- /* Only call the EndBufferProcessing function is the total input frames == total output frames */
- if((stream->bufferProcessor.hostInputFrameCount[0] + stream->bufferProcessor.hostInputFrameCount[1]) ==
- (stream->bufferProcessor.hostOutputFrameCount[0] + stream->bufferProcessor.hostOutputFrameCount[1]) )
+
+ if (stream->recordingPin && stream->playbackPin) /* full duplex */
+ {
+ /* Only call the EndBufferProcessing function when the total input frames == total output frames */
+
+ if((stream->bufferProcessor.hostInputFrameCount[0] + stream->bufferProcessor.hostInputFrameCount[1]) ==
+ (stream->bufferProcessor.hostOutputFrameCount[0] + stream->bufferProcessor.hostOutputFrameCount[1]) )
+ {
+ framesProcessed = PaUtil_EndBufferProcessing(&stream->bufferProcessor,&cbResult);
+ }
+ else
+ {
+ framesProcessed = 0;
+ }
+ }
+ else
+ {
framesProcessed = PaUtil_EndBufferProcessing(&stream->bufferProcessor,&cbResult);
- else framesProcessed = 0;
+ }
+
if( doChannelCopy )
{
/* Copy the first output channel to the other channels */
diff --git a/lib-src/portaudio-v19/src/hostapi/wmme/pa_win_wmme.c b/lib-src/portaudio-v19/src/hostapi/wmme/pa_win_wmme.c
index 4e4824a..04ee75f 100644
--- a/lib-src/portaudio-v19/src/hostapi/wmme/pa_win_wmme.c
+++ b/lib-src/portaudio-v19/src/hostapi/wmme/pa_win_wmme.c
@@ -1,5 +1,5 @@
/*
- * $Id: pa_win_wmme.c,v 1.8 2008/12/31 15:38:36 richardash1981 Exp $
+ * $Id: pa_win_wmme.c,v 1.9 2009/05/25 21:40:16 richardash1981 Exp $
* pa_win_wmme.c
* Implementation of PortAudio for Windows MultiMedia Extensions (WMME)
*
@@ -471,6 +471,21 @@ static UINT LocalDeviceIndexToWinMmeDeviceId( PaWinMmeHostApiRepresentation *hos
}
+static int SampleFormatAndWinWmmeSpecificFlagsToLinearWaveFormatTag( PaSampleFormat sampleFormat, unsigned long winMmeSpecificFlags )
+{
+ int waveFormatTag = 0;
+
+ if( winMmeSpecificFlags & paWinMmeWaveFormatDolbyAc3Spdif )
+ waveFormatTag = PAWIN_WAVE_FORMAT_DOLBY_AC3_SPDIF;
+ else if( winMmeSpecificFlags & paWinMmeWaveFormatWmaSpdif )
+ waveFormatTag = PAWIN_WAVE_FORMAT_WMA_SPDIF;
+ else
+ waveFormatTag = PaWin_SampleFormatToLinearWaveFormatTag( sampleFormat );
+
+ return waveFormatTag;
+}
+
+
static PaError QueryInputWaveFormatEx( int deviceId, WAVEFORMATEX *waveFormatEx )
{
MMRESULT mmresult;
@@ -525,43 +540,55 @@ static PaError QueryOutputWaveFormatEx( int deviceId, WAVEFORMATEX *waveFormatEx
static PaError QueryFormatSupported( PaDeviceInfo *deviceInfo,
PaError (*waveFormatExQueryFunction)(int, WAVEFORMATEX*),
- int winMmeDeviceId, int channels, double sampleRate )
+ int winMmeDeviceId, int channels, double sampleRate, unsigned long winMmeSpecificFlags )
{
PaWinMmeDeviceInfo *winMmeDeviceInfo = (PaWinMmeDeviceInfo*)deviceInfo;
PaWinWaveFormat waveFormat;
+ PaSampleFormat sampleFormat;
+ int waveFormatTag;
- if( sampleRate == 11025.0
- && ( (channels == 1 && (winMmeDeviceInfo->dwFormats & WAVE_FORMAT_1M16))
- || (channels == 2 && (winMmeDeviceInfo->dwFormats & WAVE_FORMAT_1S16)) ) ){
+ /* @todo at the moment we only query with 16 bit sample format and directout speaker config*/
- return paNoError;
- }
+ sampleFormat = paInt16;
+ waveFormatTag = SampleFormatAndWinWmmeSpecificFlagsToLinearWaveFormatTag( sampleFormat, winMmeSpecificFlags );
- if( sampleRate == 22050.0
- && ( (channels == 1 && (winMmeDeviceInfo->dwFormats & WAVE_FORMAT_2M16))
- || (channels == 2 && (winMmeDeviceInfo->dwFormats & WAVE_FORMAT_2S16)) ) ){
+ if( waveFormatTag == PaWin_SampleFormatToLinearWaveFormatTag( paInt16 ) ){
+
+ /* attempt bypass querying the device for linear formats */
- return paNoError;
- }
+ if( sampleRate == 11025.0
+ && ( (channels == 1 && (winMmeDeviceInfo->dwFormats & WAVE_FORMAT_1M16))
+ || (channels == 2 && (winMmeDeviceInfo->dwFormats & WAVE_FORMAT_1S16)) ) ){
- if( sampleRate == 44100.0
- && ( (channels == 1 && (winMmeDeviceInfo->dwFormats & WAVE_FORMAT_4M16))
- || (channels == 2 && (winMmeDeviceInfo->dwFormats & WAVE_FORMAT_4S16)) ) ){
+ return paNoError;
+ }
- return paNoError;
+ if( sampleRate == 22050.0
+ && ( (channels == 1 && (winMmeDeviceInfo->dwFormats & WAVE_FORMAT_2M16))
+ || (channels == 2 && (winMmeDeviceInfo->dwFormats & WAVE_FORMAT_2S16)) ) ){
+
+ return paNoError;
+ }
+
+ if( sampleRate == 44100.0
+ && ( (channels == 1 && (winMmeDeviceInfo->dwFormats & WAVE_FORMAT_4M16))
+ || (channels == 2 && (winMmeDeviceInfo->dwFormats & WAVE_FORMAT_4S16)) ) ){
+
+ return paNoError;
+ }
}
+
/* first, attempt to query the device using WAVEFORMATEXTENSIBLE,
if this fails we fall back to WAVEFORMATEX */
- /* @todo at the moment we only query with 16 bit sample format and directout speaker config*/
- PaWin_InitializeWaveFormatExtensible( &waveFormat, channels,
- paInt16, sampleRate, PAWIN_SPEAKER_DIRECTOUT );
+ PaWin_InitializeWaveFormatExtensible( &waveFormat, channels, sampleFormat, waveFormatTag,
+ sampleRate, PAWIN_SPEAKER_DIRECTOUT );
if( waveFormatExQueryFunction( winMmeDeviceId, (WAVEFORMATEX*)&waveFormat ) == paNoError )
return paNoError;
- PaWin_InitializeWaveFormatEx( &waveFormat, channels, paInt16, sampleRate );
+ PaWin_InitializeWaveFormatEx( &waveFormat, channels, sampleFormat, waveFormatTag, sampleRate );
return waveFormatExQueryFunction( winMmeDeviceId, (WAVEFORMATEX*)&waveFormat );
}
@@ -583,7 +610,7 @@ static void DetectDefaultSampleRate( PaWinMmeDeviceInfo *winMmeDeviceInfo, int w
for( i=0; i < PA_DEFAULTSAMPLERATESEARCHORDER_COUNT_; ++i )
{
double sampleRate = defaultSampleRateSearchOrder_[ i ];
- PaError paerror = QueryFormatSupported( deviceInfo, waveFormatExQueryFunction, winMmeDeviceId, maxChannels, sampleRate );
+ PaError paerror = QueryFormatSupported( deviceInfo, waveFormatExQueryFunction, winMmeDeviceId, maxChannels, sampleRate, 0 );
if( paerror == paNoError )
{
deviceInfo->defaultSampleRate = sampleRate;
@@ -1177,7 +1204,9 @@ static PaError IsFormatSupported( struct PaUtilHostApiRepresentation *hostApi,
/* test for valid sample rate, see comment above */
winMmeInputDeviceId = LocalDeviceIndexToWinMmeDeviceId( winMmeHostApi, inputStreamInfo->devices[i].device );
- paerror = QueryFormatSupported( inputDeviceInfo, QueryInputWaveFormatEx, winMmeInputDeviceId, inputStreamInfo->devices[i].channelCount, sampleRate );
+ paerror = QueryFormatSupported( inputDeviceInfo, QueryInputWaveFormatEx,
+ winMmeInputDeviceId, inputStreamInfo->devices[i].channelCount, sampleRate,
+ ((inputStreamInfo) ? inputStreamInfo->flags : 0) );
if( paerror != paNoError )
return paInvalidSampleRate;
}
@@ -1199,7 +1228,9 @@ static PaError IsFormatSupported( struct PaUtilHostApiRepresentation *hostApi,
/* test for valid sample rate, see comment above */
winMmeInputDeviceId = LocalDeviceIndexToWinMmeDeviceId( winMmeHostApi, inputParameters->device );
- paerror = QueryFormatSupported( inputDeviceInfo, QueryInputWaveFormatEx, winMmeInputDeviceId, inputChannelCount, sampleRate );
+ paerror = QueryFormatSupported( inputDeviceInfo, QueryInputWaveFormatEx,
+ winMmeInputDeviceId, inputChannelCount, sampleRate,
+ ((inputStreamInfo) ? inputStreamInfo->flags : 0) );
if( paerror != paNoError )
return paInvalidSampleRate;
}
@@ -1237,7 +1268,9 @@ static PaError IsFormatSupported( struct PaUtilHostApiRepresentation *hostApi,
/* test for valid sample rate, see comment above */
winMmeOutputDeviceId = LocalDeviceIndexToWinMmeDeviceId( winMmeHostApi, outputStreamInfo->devices[i].device );
- paerror = QueryFormatSupported( outputDeviceInfo, QueryOutputWaveFormatEx, winMmeOutputDeviceId, outputStreamInfo->devices[i].channelCount, sampleRate );
+ paerror = QueryFormatSupported( outputDeviceInfo, QueryOutputWaveFormatEx,
+ winMmeOutputDeviceId, outputStreamInfo->devices[i].channelCount, sampleRate,
+ ((outputStreamInfo) ? outputStreamInfo->flags : 0) );
if( paerror != paNoError )
return paInvalidSampleRate;
}
@@ -1259,7 +1292,9 @@ static PaError IsFormatSupported( struct PaUtilHostApiRepresentation *hostApi,
/* test for valid sample rate, see comment above */
winMmeOutputDeviceId = LocalDeviceIndexToWinMmeDeviceId( winMmeHostApi, outputParameters->device );
- paerror = QueryFormatSupported( outputDeviceInfo, QueryOutputWaveFormatEx, winMmeOutputDeviceId, outputChannelCount, sampleRate );
+ paerror = QueryFormatSupported( outputDeviceInfo, QueryOutputWaveFormatEx,
+ winMmeOutputDeviceId, outputChannelCount, sampleRate,
+ ((outputStreamInfo) ? outputStreamInfo->flags : 0) );
if( paerror != paNoError )
return paInvalidSampleRate;
}
@@ -1683,6 +1718,7 @@ typedef struct
static void InitializeSingleDirectionHandlesAndBuffers( PaWinMmeSingleDirectionHandlesAndBuffers *handlesAndBuffers );
static PaError InitializeWaveHandles( PaWinMmeHostApiRepresentation *winMmeHostApi,
PaWinMmeSingleDirectionHandlesAndBuffers *handlesAndBuffers,
+ unsigned long winMmeSpecificFlags,
unsigned long bytesPerHostSample,
double sampleRate, PaWinMmeDeviceAndChannelCount *devices,
unsigned int deviceCount, PaWinWaveFormatChannelMask channelMask, int isInput );
@@ -1707,6 +1743,7 @@ static void InitializeSingleDirectionHandlesAndBuffers( PaWinMmeSingleDirectionH
static PaError InitializeWaveHandles( PaWinMmeHostApiRepresentation *winMmeHostApi,
PaWinMmeSingleDirectionHandlesAndBuffers *handlesAndBuffers,
+ unsigned long winMmeSpecificFlags,
unsigned long bytesPerHostSample,
double sampleRate, PaWinMmeDeviceAndChannelCount *devices,
unsigned int deviceCount, PaWinWaveFormatChannelMask channelMask, int isInput )
@@ -1714,6 +1751,8 @@ static PaError InitializeWaveHandles( PaWinMmeHostApiRepresentation *winMmeHostA
PaError result;
MMRESULT mmresult;
signed int i, j;
+ PaSampleFormat sampleFormat;
+ int waveFormatTag;
/* for error cleanup we expect that InitializeSingleDirectionHandlesAndBuffers()
has already been called to zero some fields */
@@ -1741,6 +1780,10 @@ static PaError InitializeWaveHandles( PaWinMmeHostApiRepresentation *winMmeHostA
((HWAVEOUT*)handlesAndBuffers->waveHandles)[i] = 0;
}
+ /* @todo at the moment we only use 16 bit sample format */
+ sampleFormat = paInt16;
+ waveFormatTag = SampleFormatAndWinWmmeSpecificFlagsToLinearWaveFormatTag( sampleFormat, winMmeSpecificFlags );
+
for( i = 0; i < (signed int)deviceCount; ++i )
{
PaWinWaveFormat waveFormat;
@@ -1756,16 +1799,16 @@ static PaError InitializeWaveHandles( PaWinMmeHostApiRepresentation *winMmeHostA
/* first, attempt to open the device using WAVEFORMATEXTENSIBLE,
if this fails we fall back to WAVEFORMATEX */
- /* @todo at the moment we only use 16 bit sample format */
PaWin_InitializeWaveFormatExtensible( &waveFormat, devices[i].channelCount,
- paInt16, sampleRate, channelMask );
+ sampleFormat, waveFormatTag, sampleRate, channelMask );
}
else
{
/* retry with WAVEFORMATEX */
- PaWin_InitializeWaveFormatEx( &waveFormat, devices[i].channelCount, paInt16, sampleRate );
+ PaWin_InitializeWaveFormatEx( &waveFormat, devices[i].channelCount,
+ sampleFormat, waveFormatTag, sampleRate );
}
/* REVIEW: consider not firing an event for input when a full duplex
@@ -2070,6 +2113,7 @@ struct PaWinMmeStream
static PaError ValidateWinMmeSpecificStreamInfo(
const PaStreamParameters *streamParameters,
const PaWinMmeStreamInfo *streamInfo,
+ unsigned long *winMmeSpecificFlags,
char *throttleProcessingThreadOnOverload,
unsigned long *deviceCount )
{
@@ -2081,6 +2125,8 @@ static PaError ValidateWinMmeSpecificStreamInfo(
return paIncompatibleHostApiSpecificStreamInfo;
}
+ *winMmeSpecificFlags = streamInfo->flags;
+
if( streamInfo->flags & paWinMmeDontThrottleOverloadedProcessingThread )
*throttleProcessingThreadOnOverload = 0;
@@ -2224,8 +2270,10 @@ static PaError OpenStream( struct PaUtilHostApiRepresentation *hostApi,
unsigned long hostOutputBufferCount;
unsigned long framesPerBufferProcessorCall;
PaWinMmeDeviceAndChannelCount *inputDevices = 0; /* contains all devices and channel counts as local host api ids, even when PaWinMmeUseMultipleDevices is not used */
+ unsigned long winMmeSpecificInputFlags = 0;
unsigned long inputDeviceCount = 0;
PaWinMmeDeviceAndChannelCount *outputDevices = 0;
+ unsigned long winMmeSpecificOutputFlags = 0;
unsigned long outputDeviceCount = 0; /* contains all devices and channel counts as local host api ids, even when PaWinMmeUseMultipleDevices is not used */
char throttleProcessingThreadOnOverload = 1;
@@ -2241,6 +2289,7 @@ static PaError OpenStream( struct PaUtilHostApiRepresentation *hostApi,
/* validate input hostApiSpecificStreamInfo */
inputStreamInfo = (PaWinMmeStreamInfo*)inputParameters->hostApiSpecificStreamInfo;
result = ValidateWinMmeSpecificStreamInfo( inputParameters, inputStreamInfo,
+ &winMmeSpecificInputFlags,
&throttleProcessingThreadOnOverload,
&inputDeviceCount );
if( result != paNoError ) return result;
@@ -2290,6 +2339,7 @@ static PaError OpenStream( struct PaUtilHostApiRepresentation *hostApi,
/* validate output hostApiSpecificStreamInfo */
outputStreamInfo = (PaWinMmeStreamInfo*)outputParameters->hostApiSpecificStreamInfo;
result = ValidateWinMmeSpecificStreamInfo( outputParameters, outputStreamInfo,
+ &winMmeSpecificOutputFlags,
&throttleProcessingThreadOnOverload,
&outputDeviceCount );
if( result != paNoError ) return result;
@@ -2339,6 +2389,14 @@ static PaError OpenStream( struct PaUtilHostApiRepresentation *hostApi,
return paInvalidFlag; /* unexpected platform specific flag */
+ /* always disable clipping and dithering if we are outputting a raw spdif stream */
+ if( (winMmeSpecificOutputFlags & paWinMmeWaveFormatDolbyAc3Spdif)
+ || (winMmeSpecificOutputFlags & paWinMmeWaveFormatWmaSpdif) ){
+
+ streamFlags = streamFlags | paClipOff | paDitherOff;
+ }
+
+
result = CalculateBufferSettings( &framesPerHostInputBuffer, &hostInputBufferCount,
&framesPerHostOutputBuffer, &hostOutputBufferCount,
inputChannelCount, hostInputSampleFormat, suggestedInputLatency, inputStreamInfo,
@@ -2437,6 +2495,7 @@ static PaError OpenStream( struct PaUtilHostApiRepresentation *hostApi,
if( inputParameters )
{
result = InitializeWaveHandles( winMmeHostApi, &stream->input,
+ winMmeSpecificInputFlags,
stream->bufferProcessor.bytesPerHostInputSample, sampleRate,
inputDevices, inputDeviceCount, inputChannelMask, 1 /* isInput */ );
if( result != paNoError ) goto error;
@@ -2445,6 +2504,7 @@ static PaError OpenStream( struct PaUtilHostApiRepresentation *hostApi,
if( outputParameters )
{
result = InitializeWaveHandles( winMmeHostApi, &stream->output,
+ winMmeSpecificOutputFlags,
stream->bufferProcessor.bytesPerHostOutputSample, sampleRate,
outputDevices, outputDeviceCount, outputChannelMask, 0 /* isInput */ );
if( result != paNoError ) goto error;
diff --git a/lib-src/portaudio-v19/src/os/unix/pa_unix_hostapis.c b/lib-src/portaudio-v19/src/os/unix/pa_unix_hostapis.c
index af122e8..8862ff2 100644
--- a/lib-src/portaudio-v19/src/os/unix/pa_unix_hostapis.c
+++ b/lib-src/portaudio-v19/src/os/unix/pa_unix_hostapis.c
@@ -1,5 +1,5 @@
/*
- * $Id: pa_unix_hostapis.c,v 1.8 2008/12/31 15:38:36 richardash1981 Exp $
+ * $Id: pa_unix_hostapis.c,v 1.9 2009/05/25 21:40:17 richardash1981 Exp $
* Portable Audio I/O Library UNIX initialization table
*
* Based on the Open Source API proposed by Ross Bencina
@@ -52,8 +52,7 @@ PaError PaAsiHpi_Initialize( PaUtilHostApiRepresentation **hostApi, PaHostApiInd
PaError PaMacCore_Initialize( PaUtilHostApiRepresentation **hostApi, PaHostApiIndex index );
PaError PaSkeleton_Initialize( PaUtilHostApiRepresentation **hostApi, PaHostApiIndex index );
-/** Note that ALSA is placed before OSS so that the latter is preferred over the
- * latter on Linux.
+/** Note that on Linux, ALSA is placed before OSS so that the former is preferred over the latter.
*/
PaUtilHostApiInitializer *paHostApiInitializers[] =
@@ -68,7 +67,7 @@ PaUtilHostApiInitializer *paHostApiInitializers[] =
PaOSS_Initialize,
#endif
-#else
+#else /* __linux__ */
#ifdef PA_USE_OSS
PaOSS_Initialize,
diff --git a/lib-src/portaudio-v19/src/os/win/pa_win_util.c b/lib-src/portaudio-v19/src/os/win/pa_win_util.c
index dfbf484..fc99da3 100644
--- a/lib-src/portaudio-v19/src/os/win/pa_win_util.c
+++ b/lib-src/portaudio-v19/src/os/win/pa_win_util.c
@@ -1,5 +1,5 @@
/*
- * $Id: pa_win_util.c,v 1.8 2008/12/31 15:38:36 richardash1981 Exp $
+ * $Id: pa_win_util.c,v 1.9 2009/05/25 21:40:17 richardash1981 Exp $
* Portable Audio I/O Library
* Win32 platform-specific support functions
*
@@ -51,6 +51,10 @@
#include "pa_util.h"
+#if (defined(WIN32) && (defined(_MSC_VER) && (_MSC_VER >= 1200))) /* MSC version 6 and above */
+#pragma comment( lib, "winmm.lib" )
+#endif
+
/*
Track memory allocations to avoid leaks.
diff --git a/lib-src/portaudio-v19/src/os/win/pa_win_waveformat.c b/lib-src/portaudio-v19/src/os/win/pa_win_waveformat.c
index 5f71a26..fc18742 100644
--- a/lib-src/portaudio-v19/src/os/win/pa_win_waveformat.c
+++ b/lib-src/portaudio-v19/src/os/win/pa_win_waveformat.c
@@ -47,30 +47,26 @@
#define WAVE_FORMAT_EXTENSIBLE 0xFFFE
#endif
-#if !defined(WAVE_FORMAT_IEEE_FLOAT)
-#define WAVE_FORMAT_IEEE_FLOAT 0x0003
-#endif
-
-static GUID pawin_ksDataFormatSubtypePcm =
+static GUID pawin_ksDataFormatSubtypeGuidBase =
{ (USHORT)(WAVE_FORMAT_PCM), 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71 };
-static GUID pawin_ksDataFormatSubtypeIeeeFloat =
- { (USHORT)(WAVE_FORMAT_IEEE_FLOAT), 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71 };
-
+int PaWin_SampleFormatToLinearWaveFormatTag( PaSampleFormat sampleFormat )
+{
+ if( sampleFormat == paFloat32 )
+ return PAWIN_WAVE_FORMAT_IEEE_FLOAT;
+
+ return PAWIN_WAVE_FORMAT_PCM;
+}
void PaWin_InitializeWaveFormatEx( PaWinWaveFormat *waveFormat,
- int numChannels, PaSampleFormat sampleFormat, double sampleRate )
+ int numChannels, PaSampleFormat sampleFormat, int waveFormatTag, double sampleRate )
{
WAVEFORMATEX *waveFormatEx = (WAVEFORMATEX*)waveFormat;
int bytesPerSample = Pa_GetSampleSize(sampleFormat);
unsigned long bytesPerFrame = numChannels * bytesPerSample;
- if( sampleFormat == paFloat32 )
- waveFormatEx->wFormatTag = WAVE_FORMAT_IEEE_FLOAT;
- else
- waveFormatEx->wFormatTag = WAVE_FORMAT_PCM;
-
+ waveFormatEx->wFormatTag = waveFormatTag;
waveFormatEx->nChannels = (WORD)numChannels;
waveFormatEx->nSamplesPerSec = (DWORD)sampleRate;
waveFormatEx->nAvgBytesPerSec = waveFormatEx->nSamplesPerSec * bytesPerFrame;
@@ -81,12 +77,13 @@ void PaWin_InitializeWaveFormatEx( PaWinWaveFormat *waveFormat,
void PaWin_InitializeWaveFormatExtensible( PaWinWaveFormat *waveFormat,
- int numChannels, PaSampleFormat sampleFormat, double sampleRate,
+ int numChannels, PaSampleFormat sampleFormat, int waveFormatTag, double sampleRate,
PaWinWaveFormatChannelMask channelMask )
{
WAVEFORMATEX *waveFormatEx = (WAVEFORMATEX*)waveFormat;
int bytesPerSample = Pa_GetSampleSize(sampleFormat);
unsigned long bytesPerFrame = numChannels * bytesPerSample;
+ GUID guid;
waveFormatEx->wFormatTag = WAVE_FORMAT_EXTENSIBLE;
waveFormatEx->nChannels = (WORD)numChannels;
@@ -100,13 +97,11 @@ void PaWin_InitializeWaveFormatExtensible( PaWinWaveFormat *waveFormat,
waveFormatEx->wBitsPerSample;
*((DWORD*)&waveFormat->fields[PAWIN_INDEXOF_DWCHANNELMASK]) = channelMask;
+
+ guid = pawin_ksDataFormatSubtypeGuidBase;
+ guid.Data1 = (USHORT)waveFormatTag;
+ *((GUID*)&waveFormat->fields[PAWIN_INDEXOF_SUBFORMAT]) = guid;
- if( sampleFormat == paFloat32 )
- *((GUID*)&waveFormat->fields[PAWIN_INDEXOF_SUBFORMAT]) =
- pawin_ksDataFormatSubtypeIeeeFloat;
- else
- *((GUID*)&waveFormat->fields[PAWIN_INDEXOF_SUBFORMAT]) =
- pawin_ksDataFormatSubtypePcm;
}
diff --git a/lib-src/portmixer/include/portmixer.h b/lib-src/portmixer/include/portmixer.h
index 52f28d8..2d78bdd 100644
--- a/lib-src/portmixer/include/portmixer.h
+++ b/lib-src/portmixer/include/portmixer.h
@@ -66,13 +66,12 @@ PxMixer *Px_OpenMixer( void *pa_stream, int i );
void Px_CloseMixer( PxMixer *mixer );
-/*
- Px_GetNumMixers returns the number of mixers which could be
- used with the given PortAudio device. On most systems, there
- will be only one mixer for each device; however there may be
- multiple mixers for each device, or possibly multiple mixers
- which are independent of any particular PortAudio device.
-*/
+/** @brief Px_GetNumMixers returns the number of mixers which could be used
+ * with the given PortAudio device.
+ *
+ * On most systems, there will be only one mixer for each device; however
+ * there may be multiple mixers for each device, or possibly multiple mixers
+ * which are independent of any particular PortAudio device. */
int Px_GetNumMixers( PxMixer *mixer );
const char *Px_GetMixerName( PxMixer *mixer, int i );
diff --git a/lib-src/portmixer/portaudio.patch b/lib-src/portmixer/portaudio.patch
index 510adce..006f3da 100644
--- a/lib-src/portmixer/portaudio.patch
+++ b/lib-src/portmixer/portaudio.patch
@@ -6,7 +6,7 @@ diff -ur -N --exclude CVS --exclude .svn --exclude Makefile.in --exclude Makefil
+#define PA_UNIX_OSS_H
+
+/*
-+ * $Id: portaudio.patch,v 1.9 2008/12/31 15:44:56 richardash1981 Exp $
++ * $Id: portaudio.patch,v 1.10 2009/06/30 04:52:59 llucius Exp $
+ * PortAudio Portable Real-Time Audio Library
+ * OSS-specific extensions
+ *
@@ -58,7 +58,7 @@ diff -ur -N --exclude CVS --exclude .svn --exclude Makefile.in --exclude Makefil
+#define PA_UNIX_OSS_H
+
+/*
-+ * $Id: portaudio.patch,v 1.9 2008/12/31 15:44:56 richardash1981 Exp $
++ * $Id: portaudio.patch,v 1.10 2009/06/30 04:52:59 llucius Exp $
+ * PortAudio Portable Real-Time Audio Library
+ * OSS-specific extensions
+ *
@@ -341,3 +341,61 @@ diff -ur -N --exclude CVS --exclude .svn --exclude Makefile.in --exclude Makefil
+
+ return NULL;
+}
+diff -ur -N --exclude CVS --exclude .svn --exclude Makefile.in --exclude Makefile --exclude aclocal.m4 --exclude configure --exclude 'config.*' --exclude '*.patch' --exclude ltmain.sh --exclude autom4te.cache ../../../portaudio/src/hostapi/oss/pa_unix_oss.c portaudio-v19/src/hostapi/oss/pa_unix_oss.c
+--- ../../../portaudio/src/hostapi/alsa/pa_linux_alsa.c 2008-03-18 11:27:43.000000000 +0000
++++ portaudio-v19/src/hostapi/alsa/pa_linux_alsa.c 2008-03-18 11:39:39.000000000 +0000
+@@ -1,5 +1,5 @@
+ /*
+- * $Id: portaudio.patch,v 1.10 2009/06/30 04:52:59 llucius Exp $
++ * $Id: portaudio.patch,v 1.10 2009/06/30 04:52:59 llucius Exp $
+ * PortAudio Portable Real-Time Audio Library
+ * Latest Version at: http://www.portaudio.com
+ * ALSA implementation by Joshua Haberman and Arve Knudsen
+@@ -134,6 +134,7 @@
+ StreamDirection streamDir;
+
+ snd_pcm_channel_area_t *channelAreas; /* Needed for channel adaption */
++ int card;
+ } PaAlsaStreamComponent;
+
+ /* Implementation specific stream structure */
+@@ -1161,6 +1162,7 @@
+ {
+ PaError result = paNoError;
+ PaSampleFormat userSampleFormat = params->sampleFormat, hostSampleFormat;
++ snd_pcm_info_t* pcmInfo;
+ assert( params->channelCount > 0 );
+
+ /* Make sure things have an initial value */
+@@ -1181,6 +1183,9 @@
+ self->device = params->device;
+
+ PA_ENSURE( AlsaOpen( &alsaApi->baseHostApiRep, params, streamDir, &self->pcm ) );
++
++ snd_pcm_info_alloca( &pcmInfo );
++ self->card = snd_pcm_info_get_card( pcmInfo );
+ self->nfds = snd_pcm_poll_descriptors_count( self->pcm );
+ hostSampleFormat = PaUtil_SelectClosestAvailableFormat( GetAvailableFormats( self->pcm ), userSampleFormat );
+
+@@ -3646,9 +3651,7 @@
+ /* XXX: More descriptive error? */
+ PA_UNLESS( stream->capture.pcm, paDeviceUnavailable );
+
+- snd_pcm_info_alloca( &pcmInfo );
+- PA_ENSURE( snd_pcm_info( stream->capture.pcm, pcmInfo ) );
+- *card = snd_pcm_info_get_card( pcmInfo );
++ *card = stream->capture.card;
+
+ error:
+ return result;
+@@ -3664,9 +3667,7 @@
+ /* XXX: More descriptive error? */
+ PA_UNLESS( stream->playback.pcm, paDeviceUnavailable );
+
+- snd_pcm_info_alloca( &pcmInfo );
+- PA_ENSURE( snd_pcm_info( stream->playback.pcm, pcmInfo ) );
+- *card = snd_pcm_info_get_card( pcmInfo );
++ *card = stream->playback.card;
+
+ error:
+ return result;
diff --git a/lib-src/portmixer/px_common/portmixer.h b/lib-src/portmixer/px_common/portmixer.h
deleted file mode 100644
index d09dea8..0000000
--- a/lib-src/portmixer/px_common/portmixer.h
+++ /dev/null
@@ -1,138 +0,0 @@
-#ifndef PORT_MIXER_H
-#define PORT_MIXER_H
-
-#ifdef __cplusplus
-extern "C"
-{
-#endif /* __cplusplus */
-
-
-/*
- * PortMixer
- * PortMixer API Header File
- *
- * Copyright (c) 2002
- *
- * Written by Dominic Mazzoni
- *
- * PortMixer is intended to work side-by-side with PortAudio,
- * the Portable Real-Time Audio Library by Ross Bencina and
- * Phil Burk.
- *
- * Permission is hereby granted, free of charge, to any person obtaining
- * a copy of this software and associated documentation files
- * (the "Software"), to deal in the Software without restriction,
- * including without limitation the rights to use, copy, modify, merge,
- * publish, distribute, sublicense, and/or sell copies of the Software,
- * and to permit persons to whom the Software is furnished to do so,
- * subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be
- * included in all copies or substantial portions of the Software.
- *
- * Any person wishing to distribute modifications to the Software is
- * requested to send the modifications to the original developer so that
- * they can be incorporated into the canonical version.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
- * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR
- * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
- * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
- * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- *
- */
-
-#include "portaudio.h"
-
-typedef void PxMixer;
-
-typedef float PxVolume; /* 0.0 (min) --> 1.0 (max) */
-typedef float PxBalance; /* -1.0 (left) --> 1.0 (right) */
-
-/*
- Px_GetNumMixers returns the number of mixers which could be
- used with the given PortAudio device. On most systems, there
- will be only one mixer for each device; however there may be
- multiple mixers for each device, or possibly multiple mixers
- which are independent of any particular PortAudio device.
-*/
-
-int Px_GetNumMixers( void *pa_stream );
-const char *Px_GetMixerName( void *pa_stream, int i );
-
-/*
- Px_OpenMixer() returns a mixer which will work with the given PortAudio
- audio device. Pass 0 as the index for the first (default) mixer.
-*/
-
-PxMixer *Px_OpenMixer( void *pa_stream, int i );
-
-/*
- Px_CloseMixer() closes a mixer opened using Px_OpenMixer and frees any
- memory associated with it.
-*/
-
-void Px_CloseMixer(PxMixer *mixer);
-
-/*
- Master (output) volume
-*/
-
-PxVolume Px_GetMasterVolume( PxMixer *mixer );
-void Px_SetMasterVolume( PxMixer *mixer, PxVolume volume );
-
-/*
- Main output volume
-*/
-
-PxVolume Px_GetPCMOutputVolume( PxMixer *mixer );
-void Px_SetPCMOutputVolume( PxMixer *mixer, PxVolume volume );
-int Px_SupportsPCMOutputVolume( PxMixer* mixer ) ;
-
-/*
- All output volumes
-*/
-
-int Px_GetNumOutputVolumes( PxMixer *mixer );
-const char *Px_GetOutputVolumeName( PxMixer *mixer, int i );
-PxVolume Px_GetOutputVolume( PxMixer *mixer, int i );
-void Px_SetOutputVolume( PxMixer *mixer, int i, PxVolume volume );
-
-/*
- Input source
-*/
-
-int Px_GetNumInputSources( PxMixer *mixer );
-const char *Px_GetInputSourceName( PxMixer *mixer, int i);
-int Px_GetCurrentInputSource( PxMixer *mixer ); /* may return -1 == none */
-void Px_SetCurrentInputSource( PxMixer *mixer, int i );
-
-/*
- Input volume
-*/
-
-PxVolume Px_GetInputVolume( PxMixer *mixer );
-void Px_SetInputVolume( PxMixer *mixer, PxVolume volume );
-
-/*
- Balance
-*/
-
-int Px_SupportsOutputBalance( PxMixer *mixer );
-PxBalance Px_GetOutputBalance( PxMixer *mixer );
-void Px_SetOutputBalance( PxMixer *mixer, PxBalance balance );
-
-/*
- Playthrough
-*/
-
-int Px_SupportsPlaythrough( PxMixer *mixer );
-PxVolume Px_GetPlaythrough( PxMixer *mixer );
-void Px_SetPlaythrough( PxMixer *mixer, PxVolume volume );
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-#endif /* PORT_AUDIO_H */
diff --git a/lib-src/portmixer/px_mac/px_mac.c b/lib-src/portmixer/px_mac/px_mac.c
deleted file mode 100755
index 8d1f474..0000000
--- a/lib-src/portmixer/px_mac/px_mac.c
+++ /dev/null
@@ -1,406 +0,0 @@
-/*
- * PortMixer
- * Mac OS 9 implementation
- *
- * Copyright (c) 2002
- *
- * Written by Dominic Mazzoni
- *
- * PortMixer is intended to work side-by-side with PortAudio,
- * the Portable Real-Time Audio Library by Ross Bencina and
- * Phil Burk.
- *
- * Permission is hereby granted, free of charge, to any person obtaining
- * a copy of this software and associated documentation files
- * (the "Software"), to deal in the Software without restriction,
- * including without limitation the rights to use, copy, modify, merge,
- * publish, distribute, sublicense, and/or sell copies of the Software,
- * and to permit persons to whom the Software is furnished to do so,
- * subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be
- * included in all copies or substantial portions of the Software.
- *
- * Any person wishing to distribute modifications to the Software is
- * requested to send the modifications to the original developer so that
- * they can be incorporated into the canonical version.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
- * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR
- * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
- * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
- * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- *
- */
-
-#include <stdlib.h>
-#include <string.h>
-
-#include "portaudio.h"
-#include "pa_host.h"
-#include "portmixer.h"
-
-#define PA_MAX_NUM_HOST_BUFFERS (16) /* Do not exceed!! */
-
-typedef struct MultiBuffer
-{
- char *buffers[PA_MAX_NUM_HOST_BUFFERS];
- int numBuffers;
- int nextWrite;
- int nextRead;
-}
-MultiBuffer;
-
-/* Define structure to contain all Macintosh specific data. */
-typedef struct PaHostSoundControl
-{
- UInt64 pahsc_EntryCount;
- double pahsc_InverseMicrosPerHostBuffer; /* 1/Microseconds of real-time audio per user buffer. */
-
- /* Use char instead of Boolean for atomic operation. */
- volatile char pahsc_IsRecording; /* Recording in progress. Set by foreground. Cleared by background. */
- volatile char pahsc_StopRecording; /* Signal sent to background. */
- volatile char pahsc_IfInsideCallback;
- /* Input */
- SPB pahsc_InputParams;
- SICompletionUPP pahsc_InputCompletionProc;
- MultiBuffer pahsc_InputMultiBuffer;
- int32 pahsc_BytesPerInputHostBuffer;
- int32 pahsc_InputRefNum;
- /* Output */
- CmpSoundHeader pahsc_SoundHeaders[PA_MAX_NUM_HOST_BUFFERS];
- int32 pahsc_BytesPerOutputHostBuffer;
- SndChannelPtr pahsc_Channel;
- SndCallBackUPP pahsc_OutputCompletionProc;
- int32 pahsc_NumOutsQueued;
- int32 pahsc_NumOutsPlayed;
- PaTimestamp pahsc_NumFramesDone;
- UInt64 pahsc_WhenFramesDoneIncremented;
- /* Init Time -------------- */
- int32 pahsc_NumHostBuffers;
- int32 pahsc_FramesPerHostBuffer;
- int32 pahsc_UserBuffersPerHostBuffer;
- int32 pahsc_MinFramesPerHostBuffer; /* Can vary depending on virtual memory usage. */
-}
-PaHostSoundControl;
-
-typedef struct PxSource
-{
- char name[256];
-} PxSource;
-
-typedef struct PxInfo
-{
- SPB *input;
- int32 inputRefNum;
- SndChannelPtr output;
- int32 numSources;
- PxSource *sources;
-} PxInfo;
-
-int Px_GetNumMixers( void *pa_stream )
-{
- return 0;
-}
-
-const char *Px_GetMixerName( void *pa_stream, int index )
-{
- return "Mac Sound Manager";
-}
-
-PxMixer *Px_OpenMixer( void *pa_stream, int index )
-{
- PxInfo *info;
- internalPortAudioStream *past;
- PaHostSoundControl *macInfo;
- OSErr err;
- int i, j;
- Handle h;
- unsigned char *data;
-
- info = (PxInfo *)malloc(sizeof(PxInfo));
- past = (internalPortAudioStream *) pa_stream;
- macInfo = (PaHostSoundControl *) past->past_DeviceData;
-
- info->input = &macInfo->pahsc_InputParams;
- info->inputRefNum = macInfo->pahsc_InputRefNum;
- info->output = macInfo->pahsc_Channel;
-
- info->numSources = 0;
- info->sources = NULL;
-
- err = SPBGetDeviceInfo (info->inputRefNum, siInputSourceNames, &h);
- if (err)
- return (PxMixer *)info;
-
- HLock(h);
- HNoPurge(h);
-
- data = (unsigned char *)*h;
- info->numSources = ((short *)data)[0];
- if (info->numSources <= 0 || info->numSources > 50) {
- HUnlock(h);
- return (PxMixer *)info;
- }
-
- info->sources = (PxSource *)malloc(info->numSources * sizeof(PxSource));
- data += 2;
- for(i=0; i<info->numSources; i++) {
- int len = *data++;
-
- if (len > 63) {
- info->numSources = 0;
- free(info->sources);
- info->sources = NULL;
- HUnlock(h);
- return (PxMixer *)info;
- }
-
- for(j=0; j<len; j++)
- info->sources[i].name[j] = *data++;
-
- info->sources[i].name[len] = 0;
- }
- HUnlock(h);
-
- return (PxMixer *)info;
-}
-
-/*
- Px_CloseMixer() closes a mixer opened using Px_OpenMixer and frees any
- memory associated with it.
-*/
-
-void Px_CloseMixer(PxMixer *mixer)
-{
- PxInfo *info = (PxInfo *)mixer;
-
- if (info->sources)
- free(info->sources);
- free(info);
-}
-
-/*
- Master (output) volume
-*/
-
-PxVolume Px_GetMasterVolume( PxMixer *mixer )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- return 0.0;
-}
-
-void Px_SetMasterVolume( PxMixer *mixer, PxVolume volume )
-{
- PxInfo *info = (PxInfo *)mixer;
-}
-
-/*
- PCM output volume
-*/
-
-int Px_SupportsPCMOutputVolume( PxMixer* mixer )
-{
- return 1 ;
-}
-
-PxVolume Px_GetPCMOutputVolume( PxMixer *mixer )
-{
- PxInfo *info = (PxInfo *)mixer;
- OSErr err;
- long packedVol;
- SndCommand cmd;
-
- cmd.cmd = getVolumeCmd;
- cmd.param1 = 0;
- cmd.param2 = (long)&packedVol;
-
- err = SndDoImmediate(info->output, &cmd);
- if (err)
- return 0.0;
-
- return ((packedVol & 0xFFFF) + ((packedVol & 0xFFFF0000) >> 16) / 2.0) / 256.0;
-}
-
-void Px_SetPCMOutputVolume( PxMixer *mixer, PxVolume volume )
-{
- PxInfo *info = (PxInfo *)mixer;
- OSErr err;
- long packedVol;
- SndCommand cmd;
-
- packedVol = (unsigned long)volume * 256.0;
- packedVol += (packedVol << 16);
-
- cmd.cmd = volumeCmd;
- cmd.param1 = 0;
- cmd.param2 = packedVol;
- err = SndDoImmediate(info->output, &cmd);
-}
-
-/*
- All output volumes
-*/
-
-int Px_GetNumOutputVolumes( PxMixer *mixer )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- return 0;
-}
-
-const char *Px_GetOutputVolumeName( PxMixer *mixer, int i )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- return NULL;
-}
-
-PxVolume Px_GetOutputVolume( PxMixer *mixer, int i )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- return NULL;
-}
-
-void Px_SetOutputVolume( PxMixer *mixer, int i, PxVolume volume )
-{
- PxInfo *info = (PxInfo *)mixer;
-}
-
-/*
- Input sources
-*/
-
-int Px_GetNumInputSources( PxMixer *mixer )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- return info->numSources;
-}
-
-const char *Px_GetInputSourceName( PxMixer *mixer, int i)
-{
- PxInfo *info = (PxInfo *)mixer;
-
- if (i >= 0 && i < info->numSources)
- return info->sources[i].name;
- else
- return "";
-}
-
-int Px_GetCurrentInputSource( PxMixer *mixer )
-{
- PxInfo *info = (PxInfo *)mixer;
- short selected;
- OSErr err;
-
- err = SPBGetDeviceInfo (info->inputRefNum, siInputSource, &selected);
- if (err)
- return 0;
-
- return selected - 1;
-}
-
-void Px_SetCurrentInputSource( PxMixer *mixer, int i )
-{
- PxInfo *info = (PxInfo *)mixer;
- short selected = i+1;
- OSErr err;
-
- err = SPBSetDeviceInfo (info->inputRefNum, siInputSource, &selected);
-}
-
-/*
- Input volume
-*/
-
-PxVolume Px_GetInputVolume( PxMixer *mixer )
-{
- PxInfo *info = (PxInfo *)mixer;
- Fixed fixedGain;
- PxVolume vol;
- OSErr err;
-
- if (info->input) {
- err = SPBGetDeviceInfo(info->inputRefNum, siInputGain, (Ptr)&fixedGain);
- if (err)
- return 0.0;
-
- vol = (fixedGain / 65536.0) - 0.5;
- return vol;
- }
-
- return 0.0;
-}
-
-void Px_SetInputVolume( PxMixer *mixer, PxVolume volume )
-{
- PxInfo *info = (PxInfo *)mixer;
- Fixed fixedGain;
- OSErr err;
-
- if (info->input) {
- fixedGain = (Fixed)((volume + 0.5) * 65536.0);
- err = SPBSetDeviceInfo(info->inputRefNum, siInputGain, (Ptr)&fixedGain);
- }
-}
-
-/*
- Balance
-*/
-
-int Px_SupportsOutputBalance( PxMixer *mixer )
-{
- return 0;
-}
-
-PxBalance Px_GetOutputBalance( PxMixer *mixer )
-{
- return 0.0;
-}
-
-void Px_SetOutputBalance( PxMixer *mixer, PxBalance balance )
-{
-}
-
-/*
- Playthrough
-*/
-
-int Px_SupportsPlaythrough( PxMixer *mixer )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- return (info->input != NULL);
-}
-
-PxVolume Px_GetPlaythrough( PxMixer *mixer )
-{
- PxInfo *info = (PxInfo *)mixer;
- OSErr err;
- short level;
-
- err = SPBGetDeviceInfo(info->inputRefNum, siPlayThruOnOff, (Ptr)&level);
- if (err)
- return 0.0;
-
- if (level < 0)
- level = 0;
- if (level > 7)
- level = 7;
-
- return (PxVolume)(level / 7.0);
-}
-
-void Px_SetPlaythrough( PxMixer *mixer, PxVolume volume )
-{
- PxInfo *info = (PxInfo *)mixer;
- OSErr err;
- short level = (int)(volume * 7.0 + 0.5);
-
- err = SPBSetDeviceInfo(info->inputRefNum, siPlayThruOnOff, (Ptr)&level);
-}
diff --git a/lib-src/portmixer/px_mac_core/px_mac_core.c b/lib-src/portmixer/px_mac_core/px_mac_core.c
deleted file mode 100755
index b311ced..0000000
--- a/lib-src/portmixer/px_mac_core/px_mac_core.c
+++ /dev/null
@@ -1,528 +0,0 @@
-/*
- * PortMixer
- * Mac OS X / CoreAudio implementation
- *
- * Copyright (c) 2002
- *
- * Written by Dominic Mazzoni
- *
- * PortMixer is intended to work side-by-side with PortAudio,
- * the Portable Real-Time Audio Library by Ross Bencina and
- * Phil Burk.
- *
- * Permission is hereby granted, free of charge, to any person obtaining
- * a copy of this software and associated documentation files
- * (the "Software"), to deal in the Software without restriction,
- * including without limitation the rights to use, copy, modify, merge,
- * publish, distribute, sublicense, and/or sell copies of the Software,
- * and to permit persons to whom the Software is furnished to do so,
- * subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be
- * included in all copies or substantial portions of the Software.
- *
- * Any person wishing to distribute modifications to the Software is
- * requested to send the modifications to the original developer so that
- * they can be incorporated into the canonical version.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
- * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR
- * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
- * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
- * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- *
- */
-
-#include <CoreServices/CoreServices.h>
-#include <CoreAudio/CoreAudio.h>
-#include <AudioToolbox/AudioConverter.h>
-#include <sys/time.h>
-#include <sys/resource.h>
-#include <unistd.h>
-#include <stdlib.h>
-
-#include "portaudio.h"
-#include "portmixer.h"
-
-#if defined(PaStream)
-#define PA_V18
-#include "pa_host.h"
-#else
-#define PA_V19
-#include "pa_mac_core_internal.h"
-#endif
-
-typedef enum PaDeviceMode
-{
- PA_MODE_OUTPUT_ONLY,
- PA_MODE_INPUT_ONLY,
- PA_MODE_IO_ONE_DEVICE,
- PA_MODE_IO_TWO_DEVICES
-} PaDeviceMode;
-
-typedef struct PaHostInOut_s
-{
- AudioDeviceID audioDeviceID; /* CoreAudio specific ID */
- int bytesPerUserNativeBuffer; /* User buffer size in native host format. Depends on numChannels. */
- AudioConverterRef converter;
- void *converterBuffer;
- int numChannels;
-} PaHostInOut;
-
-/**************************************************************
- * Structure for internal host specific stream data.
- * This is allocated on a per stream basis.
- */
-typedef struct PaHostSoundControl
-{
- PaHostInOut input;
- PaHostInOut output;
- AudioDeviceID primaryDeviceID;
-} PaHostSoundControl;
-
-// define value of isInput passed to CoreAudio routines
-#define IS_INPUT (true)
-#define IS_OUTPUT (false)
-
-typedef struct PxInfo
-{
- AudioDeviceID input;
- AudioDeviceID output;
- UInt32 *srcids;
- char **srcnames;
- int numsrcs;
-} PxInfo;
-
-static PxInfo *Px_FreeInfo( PxInfo *info )
-{
- int i;
-
- if (info) {
- if (info->srcids) {
- free(info->srcids);
- }
-
- if (info->srcnames) {
- for (i = 0; i < info->numsrcs; i++) {
- if (info->srcnames[i]) {
- free(info->srcnames[i]);
- }
- }
- free(info->srcnames);
- }
- free(info);
- }
-
- return NULL;
-}
-
-int Px_GetNumMixers( void *pa_stream )
-{
- return 1;
-}
-
-const char *Px_GetMixerName( void *pa_stream, int index )
-{
- return "CoreAudio";
-}
-
-PxMixer *Px_OpenMixer( void *pa_stream, int index )
-{
- PxInfo *info;
- PaHostSoundControl *macInfo;
- OSStatus err;
- UInt32 outSize;
- UInt32 inID;
- int i;
-
- info = (PxInfo *)calloc(1, sizeof(PxInfo));
- if (!info) {
- return (PxMixer *)info;
- }
-
-#if defined(PA_V18)
- internalPortAudioStream *past;
-
- past = (internalPortAudioStream *) pa_stream;
- macInfo = (PaHostSoundControl *) past->past_DeviceData;
-
- info->input = macInfo->input.audioDeviceID;
- info->output = macInfo->output.audioDeviceID;
-#endif
-
-#if defined(PA_V19)
- PaMacCoreStream *pamcs;
-
- pamcs = (PaMacCoreStream *) pa_stream;
-
- info->input = pamcs->inputDevice;
- info->output = pamcs->outputDevice;
-#endif
-
- if (info->input == kAudioDeviceUnknown) {
- outSize = sizeof(AudioDeviceID);
- err = AudioHardwareGetProperty(kAudioHardwarePropertyDefaultInputDevice,
- &outSize,
- &info->input);
- if (err) {
- return Px_FreeInfo(info);
- }
- }
-
- outSize = sizeof(UInt32);
- err = AudioDeviceGetPropertyInfo(info->input,
- 0,
- IS_INPUT,
- kAudioDevicePropertyDataSources,
- &outSize,
- NULL);
- if (err) {
- return Px_FreeInfo(info);
- }
-
- info->numsrcs = outSize / sizeof(UInt32);
- info->srcids = (UInt32 *)malloc(outSize);
- info->srcnames = (char **)calloc(info->numsrcs, sizeof(char *));
-
- if (info->srcids == NULL || info->srcnames == NULL) {
- return Px_FreeInfo(info);
- }
-
- err = AudioDeviceGetProperty(info->input,
- 0,
- IS_INPUT,
- kAudioDevicePropertyDataSources,
- &outSize,
- info->srcids);
- if (err) {
- return Px_FreeInfo(info);
- }
-
- for (i = 0; i < info->numsrcs; i++) {
- AudioValueTranslation trans;
- CFStringRef name;
- Boolean ok;
-
- trans.mInputData = &info->srcids[i];
- trans.mInputDataSize = sizeof(UInt32);
- trans.mOutputData = &name;
- trans.mOutputDataSize = sizeof(CFStringRef);
-
- outSize = sizeof(AudioValueTranslation);
- err = AudioDeviceGetProperty(info->input,
- 0,
- IS_INPUT,
- kAudioDevicePropertyDataSourceNameForIDCFString,
- &outSize,
- &trans);
- if (err) {
- return Px_FreeInfo(info);
- }
-
- info->srcnames[i] = malloc(CFStringGetLength(name)+1);
- if (info->srcnames[i] == NULL) {
- return Px_FreeInfo(info);
- }
-
- ok = CFStringGetCString(name,
- info->srcnames[i],
- CFStringGetLength(name)+1,
- kCFStringEncodingISOLatin1);
- if (!ok) {
- return Px_FreeInfo(info);
- }
- }
-
- return (PxMixer *)info;
-}
-
-/*
- Px_CloseMixer() closes a mixer opened using Px_OpenMixer and frees any
- memory associated with it.
-*/
-
-void Px_CloseMixer(PxMixer *mixer)
-{
- PxInfo *info = (PxInfo *)mixer;
-
- Px_FreeInfo(info);
-}
-
-/*
- Master (output) volume
-*/
-
-PxVolume Px_GetMasterVolume( PxMixer *mixer )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- return 0.0;
-}
-
-void Px_SetMasterVolume( PxMixer *mixer, PxVolume volume )
-{
- PxInfo *info = (PxInfo *)mixer;
-}
-
-/*
- PCM output volume
-*/
-
-static PxVolume Px_GetVolume(AudioDeviceID device, Boolean isInput)
-{
- OSStatus err;
- UInt32 outSize;
- Float32 vol, maxvol=0.0;
- UInt32 mute, anymuted=0;
- int ch;
- PxVolume max;
-
- for(ch=0; ch<=2; ch++) {
- outSize = sizeof(Float32);
- err = AudioDeviceGetProperty(device, ch, isInput,
- kAudioDevicePropertyVolumeScalar,
- &outSize, &vol);
- if (!err) {
- if (vol > maxvol)
- maxvol = vol;
- }
-
- outSize = sizeof(UInt32);
- err = AudioDeviceGetProperty(device, ch, isInput,
- kAudioDevicePropertyMute,
- &outSize, &mute);
-
- if (!err) {
- if (mute)
- anymuted = 1;
- }
- }
-
- if (anymuted)
- maxvol = 0.0;
-
- return maxvol;
-}
-
-static void Px_SetVolume(AudioDeviceID device, Boolean isInput,
- PxVolume volume)
-{
- Float32 vol = volume;
- UInt32 mute = 0;
- int ch;
- OSStatus err;
-
- /* Implement a passive attitude towards muting. If they
- drag the volume above 0.05, unmute it. But if they
- drag the volume down below that, just set the volume,
- don't actually mute.
- */
-
- for(ch=0; ch<=2; ch++) {
- err = AudioDeviceSetProperty(device, 0, ch, isInput,
- kAudioDevicePropertyVolumeScalar,
- sizeof(Float32), &vol);
- if (vol > 0.05) {
- err = AudioDeviceSetProperty(device, 0, ch, isInput,
- kAudioDevicePropertyMute,
- sizeof(UInt32), &mute);
- }
- }
-}
-
-int Px_SupportsPCMOutputVolume( PxMixer* mixer )
-{
- return 1 ;
-}
-
-PxVolume Px_GetPCMOutputVolume( PxMixer *mixer )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- return Px_GetVolume(info->output, IS_OUTPUT);
-}
-
-void Px_SetPCMOutputVolume( PxMixer *mixer, PxVolume volume )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- Px_SetVolume(info->output, IS_OUTPUT, volume);
-}
-
-/*
- All output volumes
-*/
-
-int Px_GetNumOutputVolumes( PxMixer *mixer )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- return 1;
-}
-
-const char *Px_GetOutputVolumeName( PxMixer *mixer, int i )
-{
- if (i == 0)
- return "PCM";
- else
- return "";
-}
-
-PxVolume Px_GetOutputVolume( PxMixer *mixer, int i )
-{
- return Px_GetPCMOutputVolume(mixer);
-}
-
-void Px_SetOutputVolume( PxMixer *mixer, int i, PxVolume volume )
-{
- Px_SetPCMOutputVolume(mixer, volume);
-}
-
-/*
- Input sources
-*/
-
-int Px_GetNumInputSources( PxMixer *mixer )
-{
- PxInfo *info = (PxInfo *)mixer;
- OSStatus err;
- UInt32 outSize;
-
- return info->numsrcs;
-}
-
-const char *Px_GetInputSourceName( PxMixer *mixer, int i)
-{
- PxInfo *info = (PxInfo *)mixer;
-
- if (i >= info->numsrcs)
- return "";
-
- return info->srcnames[i];
-}
-
-int Px_GetCurrentInputSource( PxMixer *mixer )
-{
- PxInfo *info = (PxInfo *)mixer;
- OSStatus err;
- UInt32 outSize;
- UInt32 outID = 0;
- int i;
-
- outSize = sizeof(UInt32);
- err = AudioDeviceGetProperty(info->input,
- 0,
- IS_INPUT,
- kAudioDevicePropertyDataSource,
- &outSize,
- &outID);
-
- if (!err) {
- for (i = 0; i < info->numsrcs; i++) {
- if (info->srcids[i] == outID) {
- return i;
- }
- }
- }
-
- return -1;
-}
-
-void Px_SetCurrentInputSource( PxMixer *mixer, int i )
-{
- PxInfo *info = (PxInfo *)mixer;
- OSStatus err;
-
- if (i >= info->numsrcs) {
- return;
- }
-
- err = AudioDeviceSetProperty(info->input,
- 0,
- 0,
- IS_INPUT,
- kAudioDevicePropertyDataSource,
- sizeof(UInt32),
- &info->srcids[i]);
-
- return;
-}
-
-/*
- Input volume
-*/
-
-PxVolume Px_GetInputVolume( PxMixer *mixer )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- return Px_GetVolume(info->input, IS_INPUT);
-}
-
-void Px_SetInputVolume( PxMixer *mixer, PxVolume volume )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- Px_SetVolume(info->input, IS_INPUT, volume);
-}
-
-/*
- Balance
-*/
-
-int Px_SupportsOutputBalance( PxMixer *mixer )
-{
- return 0;
-}
-
-PxBalance Px_GetOutputBalance( PxMixer *mixer )
-{
- return 0.0;
-}
-
-void Px_SetOutputBalance( PxMixer *mixer, PxBalance balance )
-{
-}
-
-/*
- Playthrough
-*/
-
-int Px_SupportsPlaythrough( PxMixer *mixer )
-{
- return 1;
-}
-
-PxVolume Px_GetPlaythrough( PxMixer *mixer )
-{
- PxInfo *info = (PxInfo *)mixer;
- OSStatus err;
- UInt32 outSize;
- UInt32 flag;
-
- outSize = sizeof(UInt32);
- err = AudioDeviceGetProperty(info->output, 0, IS_OUTPUT,
- kAudioDevicePropertyPlayThru,
- &outSize, &flag);
- if (err)
- return 0.0;
-
- if (flag)
- return 1.0;
- else
- return 0.0;
-}
-
-void Px_SetPlaythrough( PxMixer *mixer, PxVolume volume )
-{
- PxInfo *info = (PxInfo *)mixer;
- UInt32 flag = (volume > 0.01);
- OSStatus err;
-
- err = AudioDeviceSetProperty(info->output, 0, 0, IS_OUTPUT,
- kAudioDevicePropertyPlayThru,
- sizeof(UInt32), &flag);
-}
-
diff --git a/lib-src/portmixer/px_none/px_none.c b/lib-src/portmixer/px_none/px_none.c
deleted file mode 100755
index f2a48b0..0000000
--- a/lib-src/portmixer/px_none/px_none.c
+++ /dev/null
@@ -1,216 +0,0 @@
-/*
- * PortMixer
- * Empty implementation (as a placeholder on platforms where
- * it hasn't been implemented yet)
- *
- * Copyright (c) 2002
- *
- * Written by Dominic Mazzoni
- *
- * PortMixer is intended to work side-by-side with PortAudio,
- * the Portable Real-Time Audio Library by Ross Bencina and
- * Phil Burk.
- *
- * Permission is hereby granted, free of charge, to any person obtaining
- * a copy of this software and associated documentation files
- * (the "Software"), to deal in the Software without restriction,
- * including without limitation the rights to use, copy, modify, merge,
- * publish, distribute, sublicense, and/or sell copies of the Software,
- * and to permit persons to whom the Software is furnished to do so,
- * subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be
- * included in all copies or substantial portions of the Software.
- *
- * Any person wishing to distribute modifications to the Software is
- * requested to send the modifications to the original developer so that
- * they can be incorporated into the canonical version.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
- * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR
- * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
- * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
- * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- *
- */
-
-#include <stdlib.h>
-
-#include "portaudio.h"
-#include "portmixer.h"
-
-typedef struct PxInfo
-{
- int dummy;
-} PxInfo;
-
-int Px_GetNumMixers( void *pa_stream )
-{
- return 0;
-}
-
-const char *Px_GetMixerName( void *pa_stream, int index )
-{
- return NULL;
-}
-
-PxMixer *Px_OpenMixer( void *pa_stream, int index )
-{
- return NULL;
-}
-
-/*
- Px_CloseMixer() closes a mixer opened using Px_OpenMixer and frees any
- memory associated with it.
-*/
-
-void Px_CloseMixer(PxMixer *mixer)
-{
-}
-
-/*
- Master (output) volume
-*/
-
-PxVolume Px_GetMasterVolume( PxMixer *mixer )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- return 0.0;
-}
-
-void Px_SetMasterVolume( PxMixer *mixer, PxVolume volume )
-{
- PxInfo *info = (PxInfo *)mixer;
-}
-
-/*
- PCM output volume
-*/
-
-PxVolume Px_GetPCMOutputVolume( PxMixer *mixer )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- return 0.0;
-}
-
-void Px_SetPCMOutputVolume( PxMixer *mixer, PxVolume volume )
-{
- PxInfo *info = (PxInfo *)mixer;
-}
-
-/*
- All output volumes
-*/
-
-int Px_GetNumOutputVolumes( PxMixer *mixer )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- return 0;
-}
-
-const char *Px_GetOutputVolumeName( PxMixer *mixer, int i )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- return NULL;
-}
-
-PxVolume Px_GetOutputVolume( PxMixer *mixer, int i )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- return NULL;
-}
-
-void Px_SetOutputVolume( PxMixer *mixer, int i, PxVolume volume )
-{
- PxInfo *info = (PxInfo *)mixer;
-}
-
-/*
- Input sources
-*/
-
-int Px_GetNumInputSources( PxMixer *mixer )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- return 0;
-}
-
-const char *Px_GetInputSourceName( PxMixer *mixer, int i)
-{
- PxInfo *info = (PxInfo *)mixer;
-
- return NULL;
-}
-
-int Px_GetCurrentInputSource( PxMixer *mixer )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- return -1; /* none */
-}
-
-void Px_SetCurrentInputSource( PxMixer *mixer, int i )
-{
- PxInfo *info = (PxInfo *)mixer;
-}
-
-/*
- Input volume
-*/
-
-PxVolume Px_GetInputVolume( PxMixer *mixer )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- return 0.0;
-}
-
-void Px_SetInputVolume( PxMixer *mixer, PxVolume volume )
-{
- PxInfo *info = (PxInfo *)mixer;
-}
-
-/*
- Balance
-*/
-
-int Px_SupportsOutputBalance( PxMixer *mixer )
-{
- return 0;
-}
-
-PxBalance Px_GetOutputBalance( PxMixer *mixer )
-{
- return 0.0;
-}
-
-void Px_SetOutputBalance( PxMixer *mixer, PxBalance balance )
-{
-}
-
-/*
- Playthrough
-*/
-
-int Px_SupportsPlaythrough( PxMixer *mixer )
-{
- return 0;
-}
-
-PxBalance Px_GetPlaythrough( PxMixer *mixer )
-{
- return 0.0;
-}
-
-void Px_SetPlaythrough( PxMixer *mixer, PxBalance balance )
-{
-}
-
diff --git a/lib-src/portmixer/px_unix_oss/px_unix_oss.c b/lib-src/portmixer/px_unix_oss/px_unix_oss.c
deleted file mode 100755
index d9d452b..0000000
--- a/lib-src/portmixer/px_unix_oss/px_unix_oss.c
+++ /dev/null
@@ -1,385 +0,0 @@
-/*
- * PortMixer
- * Unix OSS Implementation
- *
- * Copyright (c) 2002
- *
- * Written by Dominic Mazzoni
- *
- * PortMixer is intended to work side-by-side with PortAudio,
- * the Portable Real-Time Audio Library by Ross Bencina and
- * Phil Burk.
- *
- * Permission is hereby granted, free of charge, to any person obtaining
- * a copy of this software and associated documentation files
- * (the "Software"), to deal in the Software without restriction,
- * including without limitation the rights to use, copy, modify, merge,
- * publish, distribute, sublicense, and/or sell copies of the Software,
- * and to permit persons to whom the Software is furnished to do so,
- * subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be
- * included in all copies or substantial portions of the Software.
- *
- * Any person wishing to distribute modifications to the Software is
- * requested to send the modifications to the original developer so that
- * they can be incorporated into the canonical version.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
- * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR
- * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
- * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
- * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- *
- */
-
-#if defined(__linux__)
-#include <linux/soundcard.h>
-#elif defined(__FreeBSD__)
-#include <sys/soundcard.h>
-#else
-#include <machine/soundcard.h> /* JH20010905 */
-#endif
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <fcntl.h>
-#include <unistd.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <sys/ioctl.h>
-
-#include "portaudio.h"
-#include "portmixer.h"
-
-typedef struct PxInfo
-{
- int index;
- int fd;
-
- int num_out;
- int outs[SOUND_MIXER_NRDEVICES];
- int num_rec;
- int recs[SOUND_MIXER_NRDEVICES];
-} PxInfo;
-
-char PxDevice[20] = "/dev/mixerX";
-
-int PxNumDevices = 0;
-int PxDevices[10];
-
-int Px_GetNumMixers( void *pa_stream )
-{
- int i;
- int fd;
-
- PxNumDevices = 0;
-
- for(i=0; i<11; i++) {
- if (i==0)
- PxDevice[10] = 0;
- else
- PxDevice[10] = '0'+(i-1);
- fd = open(PxDevice, O_RDWR);
- if (fd >= 0) {
- PxDevices[PxNumDevices] = i;
- PxNumDevices++;
- close(fd);
- }
- }
-
- return PxNumDevices;
-}
-
-const char *Px_GetMixerName( void *pa_stream, int index )
-{
- if (PxNumDevices <= 0)
- Px_GetNumMixers(pa_stream);
-
- if (index < 0 || index >= PxNumDevices)
- return NULL;
-
- if (PxDevices[index]==0)
- PxDevice[10] = 0;
- else
- PxDevice[10] = '0'+(PxDevices[index]-1);
- return PxDevice;
-}
-
-PxMixer *Px_OpenMixer( void *pa_stream, int index )
-{
- PxInfo *info;
- int devmask, recmask, outmask;
- int i;
-
- if (PxNumDevices <= 0)
- Px_GetNumMixers(pa_stream);
-
- if (index < 0 || index >= PxNumDevices)
- return NULL;
-
- info = (PxInfo *)malloc(sizeof(PxInfo));
- info->index = PxDevice[index];
-
- if (PxDevices[index]==0)
- PxDevice[10] = 0;
- else
- PxDevice[10] = '0'+(PxDevices[index]-1);
- info->fd = open(PxDevice, O_RDWR);
- if (info->fd < 0)
- goto bad;
-
- if (ioctl(info->fd, MIXER_READ(SOUND_MIXER_READ_DEVMASK),
- &devmask) == -1)
- goto bad;
- if (ioctl(info->fd, MIXER_READ(SOUND_MIXER_READ_RECMASK),
- &recmask) == -1)
- goto bad;
- outmask = devmask ^ recmask;
-
- info->num_out = 0;
- info->num_rec = 0;
-
- for(i=0; i<SOUND_MIXER_NRDEVICES; i++)
- if (recmask & (1<<i))
- info->recs[info->num_rec++] = i;
- else if (devmask & (1<<i))
- info->outs[info->num_out++] = i;
-
- return (PxMixer *)info;
-
- bad:
- free(info);
- return NULL;
-}
-
-/*
- Px_CloseMixer() closes a mixer opened using Px_OpenMixer and frees any
- memory associated with it.
-*/
-
-void Px_CloseMixer(PxMixer *mixer)
-{
- PxInfo *info = (PxInfo *)mixer;
-
- close(info->fd);
-
- free(info);
-}
-
-PxVolume GetVolume(int fd, int channel)
-{
- int vol;
- int stereo;
-
- if (ioctl(fd, SOUND_MIXER_READ_STEREODEVS, &stereo) == 0)
- stereo = ((stereo & (1 << channel)) != 0);
- else
- stereo = 0;
-
- if (ioctl(fd, MIXER_READ(channel), &vol) == -1)
- return 0.0;
-
- if (stereo)
- return ((vol & 0xFF)/200.0) + (((vol>>8) & 0xFF)/200.0);
- else
- return (vol & 0xFF)/100.0;
-}
-
-/*
- Master (output) volume
-*/
-
-PxVolume Px_GetMasterVolume( PxMixer *mixer )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- return GetVolume(info->fd, SOUND_MIXER_VOLUME);
-}
-
-void Px_SetMasterVolume( PxMixer *mixer, PxVolume volume )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- int vol = (int)((volume * 100.0) + 0.5);
- vol = (vol | (vol<<8));
- ioctl(info->fd, MIXER_WRITE(SOUND_MIXER_VOLUME), &vol);
-}
-
-/*
- PCM output volume
-*/
-
-int Px_SupportsPCMOutputVolume( PxMixer* mixer )
-{
- return 1 ;
-}
-
-PxVolume Px_GetPCMOutputVolume( PxMixer *mixer )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- return GetVolume(info->fd, SOUND_MIXER_PCM);
-}
-
-void Px_SetPCMOutputVolume( PxMixer *mixer, PxVolume volume )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- int vol = (int)((volume * 100.0) + 0.5);
- vol = (vol | (vol<<8));
- ioctl(info->fd, MIXER_WRITE(SOUND_MIXER_PCM), &vol);
-}
-
-/*
- All output volumes
-*/
-
-int Px_GetNumOutputVolumes( PxMixer *mixer )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- return info->num_out;
-}
-
-const char *Px_GetOutputVolumeName( PxMixer *mixer, int i )
-{
- PxInfo *info = (PxInfo *)mixer;
- const char *labels[] = SOUND_DEVICE_LABELS;
-
- return labels[info->outs[i]];
-}
-
-PxVolume Px_GetOutputVolume( PxMixer *mixer, int i )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- return GetVolume(info->fd, info->outs[i]);
-}
-
-void Px_SetOutputVolume( PxMixer *mixer, int i, PxVolume volume )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- int vol = (int)((volume * 100.0) + 0.5);
- vol = (vol | (vol<<8));
- ioctl(info->fd, MIXER_WRITE(info->outs[i]), &vol);
-}
-
-/*
- Input sources
-*/
-
-int Px_GetNumInputSources( PxMixer *mixer )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- return info->num_rec;
-}
-
-const char *Px_GetInputSourceName( PxMixer *mixer, int i)
-{
- PxInfo *info = (PxInfo *)mixer;
-
- const char *labels[] = SOUND_DEVICE_LABELS;
- return labels[info->recs[i]];
-}
-
-int Px_GetCurrentInputSource( PxMixer *mixer )
-{
- PxInfo *info = (PxInfo *)mixer;
- int recmask;
- int i;
-
- /* Note that there may be more than one in OSS; we pick
- the first one */
-
- if (ioctl(info->fd, MIXER_READ(SOUND_MIXER_READ_RECSRC),
- &recmask) == -1)
- return -1; /* none / error */
-
- for(i=0; i<info->num_rec; i++)
- if (recmask & (1 << (info->recs[i])))
- return i;
-
- return -1; /* none */
-}
-
-void Px_SetCurrentInputSource( PxMixer *mixer, int i )
-{
- PxInfo *info = (PxInfo *)mixer;
- int newrecsrcmask = (1 << (info->recs[i]));
-
- ioctl(info->fd, MIXER_WRITE(SOUND_MIXER_READ_RECSRC),
- &newrecsrcmask);
-}
-
-/*
- Input volume
-*/
-
-PxVolume Px_GetInputVolume( PxMixer *mixer )
-{
- PxInfo *info = (PxInfo *)mixer;
- int i;
-
- i = Px_GetCurrentInputSource(mixer);
- if (i < 0)
- return 0.0;
-
- return GetVolume(info->fd, info->recs[i]);
-}
-
-void Px_SetInputVolume( PxMixer *mixer, PxVolume volume )
-{
- PxInfo *info = (PxInfo *)mixer;
- int vol;
- int i;
-
- i = Px_GetCurrentInputSource(mixer);
- if (i < 0)
- return;
-
- vol = (int)((volume * 100.0) + 0.5);
- vol = (vol | (vol<<8));
- ioctl(info->fd, MIXER_WRITE(info->recs[i]), &vol);
-}
-
-/*
- Balance
-*/
-
-int Px_SupportsOutputBalance( PxMixer *mixer )
-{
- return 0;
-}
-
-PxBalance Px_GetOutputBalance( PxMixer *mixer )
-{
- return 0.0;
-}
-
-void Px_SetOutputBalance( PxMixer *mixer, PxBalance balance )
-{
-}
-
-/*
- Playthrough
-*/
-
-int Px_SupportsPlaythrough( PxMixer *mixer )
-{
- return 0;
-}
-
-PxVolume Px_GetPlaythrough( PxMixer *mixer )
-{
- return 0.0;
-}
-
-void Px_SetPlaythrough( PxMixer *mixer, PxVolume volume )
-{
-}
-
diff --git a/lib-src/portmixer/px_win_wmme/px_win_wmme.c b/lib-src/portmixer/px_win_wmme/px_win_wmme.c
deleted file mode 100755
index 2733fbb..0000000
--- a/lib-src/portmixer/px_win_wmme/px_win_wmme.c
+++ /dev/null
@@ -1,622 +0,0 @@
-/*
- * PortMixer
- * Windows WMME Implementation
- *
- * Copyright (c) 2002
- *
- * Written by Dominic Mazzoni and Augustus Saunders
- *
- * PortMixer is intended to work side-by-side with PortAudio,
- * the Portable Real-Time Audio Library by Ross Bencina and
- * Phil Burk.
- *
- * Permission is hereby granted, free of charge, to any person obtaining
- * a copy of this software and associated documentation files
- * (the "Software"), to deal in the Software without restriction,
- * including without limitation the rights to use, copy, modify, merge,
- * publish, distribute, sublicense, and/or sell copies of the Software,
- * and to permit persons to whom the Software is furnished to do so,
- * subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be
- * included in all copies or substantial portions of the Software.
- *
- * Any person wishing to distribute modifications to the Software is
- * requested to send the modifications to the original developer so that
- * they can be incorporated into the canonical version.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
- * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR
- * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
- * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
- * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- *
- */
-
-#include <Windows.h>
-
-#include "portaudio.h"
-#include "portmixer.h"
-
-#if defined(PaStream)
-#define PA_V18
-#else
-#define PA_V19
-#endif
-
-#if defined(PA_V18)
-#include "pa_host.h"
-
-typedef struct PaWMMEStreamData
-{
- /* Input -------------- */
- HWAVEIN hWaveIn;
- WAVEHDR *inputBuffers;
- int currentInputBuffer;
- int bytesPerHostInputBuffer;
- int bytesPerUserInputBuffer; /* native buffer size in bytes */
- /* Output -------------- */
- HWAVEOUT hWaveOut;
-} PaWMMEStreamData;
-#endif
-
-#if defined(PA_V19)
-#include "pa_cpuload.h"
-#include "pa_process.h"
-#include "pa_stream.h"
-
-typedef struct
-{
- HANDLE bufferEvent;
- void *waveHandles;
- unsigned int deviceCount;
- /* unsigned int channelCount; */
- WAVEHDR **waveHeaders; /* waveHeaders[device][buffer] */
- unsigned int bufferCount;
- unsigned int currentBufferIndex;
- unsigned int framesPerBuffer;
- unsigned int framesUsedInCurrentBuffer;
-}PaWinMmeSingleDirectionHandlesAndBuffers;
-
-/* PaWinMmeStream - a stream data structure specifically for this implementation */
-/* note that struct PaWinMmeStream is typedeffed to PaWinMmeStream above. */
-struct PaWinMmeStream
-{
- PaUtilStreamRepresentation streamRepresentation;
- PaUtilCpuLoadMeasurer cpuLoadMeasurer;
- PaUtilBufferProcessor bufferProcessor;
-
- int primeStreamUsingCallback;
-
- PaWinMmeSingleDirectionHandlesAndBuffers input;
- PaWinMmeSingleDirectionHandlesAndBuffers output;
-
- /* Processing thread management -------------- */
- HANDLE abortEvent;
- HANDLE processingThread;
- DWORD processingThreadId;
-
- char throttleProcessingThreadOnOverload; /* 0 -> don't throtte, non-0 -> throttle */
- int processingThreadPriority;
- int highThreadPriority;
- int throttledThreadPriority;
- unsigned long throttledSleepMsecs;
-
- int isStopped;
- volatile int isActive;
- volatile int stopProcessing; /* stop thread once existing buffers have been returned */
- volatile int abortProcessing; /* stop thread immediately */
-
- DWORD allBuffersDurationMs; /* used to calculate timeouts */
-};
-#endif
-
-typedef struct PxSrcInfo
-{
- char name[256];
- DWORD lineID;
- DWORD controlID;
-} PxSrcInfo;
-
-typedef struct PxInfo
-{
- HMIXEROBJ hInputMixer;
- HMIXEROBJ hOutputMixer;
- int numInputs;
- PxSrcInfo src[32];
- DWORD muxID;
- DWORD speakerID;
- DWORD waveID;
-} PxInfo;
-
-int Px_GetNumMixers( void *pa_stream )
-{
- return 1;
-}
-
-const char *Px_GetMixerName( void *pa_stream, int index )
-{
- return "Mixer";
-}
-
-PxMixer *Px_OpenMixer( void *pa_stream, int index )
-{
-#if defined(PA_V18)
- internalPortAudioStream *past;
- PaWMMEStreamData *wmmeStreamData;
-#endif
-
-#if defined(PA_V19)
- struct PaWinMmeStream *past;
-#endif
-
- HWAVEIN hWaveIn;
- HWAVEOUT hWaveOut;
- PxInfo *mixer;
- MMRESULT result;
- MIXERLINE line;
- MIXERLINECONTROLS controls;
- MIXERCONTROL control;
- MIXERCONTROLDETAILS details;
- MIXERCONTROLDETAILS_LISTTEXT mixList[32];
- int j;
-
- if (!pa_stream)
- return NULL;
-
- mixer = (PxMixer *)malloc(sizeof(PxInfo));
- mixer->hInputMixer = NULL;
- mixer->hOutputMixer = NULL;
-
-#if defined(PA_V18)
- past = (internalPortAudioStream *) pa_stream;
- wmmeStreamData = (PaWMMEStreamData *) past->past_DeviceData;
-
- hWaveIn = wmmeStreamData->hWaveIn;
- hWaveOut = wmmeStreamData->hWaveOut;
-#endif
-
-#if defined(PA_V19)
- past = (struct PaWinMmeStream *) pa_stream;
-
- hWaveIn = 0;
- if (past->input.waveHandles) {
- hWaveIn = ((HWAVEIN *)past->input.waveHandles)[0];
- }
-
- hWaveOut = 0;
- if (past->output.waveHandles) {
- hWaveOut = ((HWAVEOUT *)past->output.waveHandles)[0];
- }
-#endif
-
- if (hWaveIn) {
- result = mixerOpen((HMIXER *)&mixer->hInputMixer, (UINT)hWaveIn, 0, 0, MIXER_OBJECTF_HWAVEIN);
- if (result != MMSYSERR_NOERROR) {
- free(mixer);
- return NULL;
- }
- }
-
- if (hWaveOut) {
- result = mixerOpen((HMIXER *)&mixer->hOutputMixer, (UINT)hWaveOut, 0, 0, MIXER_OBJECTF_HWAVEOUT);
- if (result != MMSYSERR_NOERROR) {
- free(mixer);
- return NULL;
- }
- }
-
- mixer->numInputs = 0;
- mixer->muxID = 0;
-
- /* ??? win32 default for wave control seems to be 0 ??? */
- mixer->waveID = 0 ;
-
- /*
- * Find the input source selector (mux or mixer) and
- * get the names and IDs of all of the input sources
- */
-
- if (mixer->hInputMixer) {
- line.cbStruct = sizeof(MIXERLINE);
- line.dwComponentType = MIXERLINE_COMPONENTTYPE_DST_WAVEIN;
- result = mixerGetLineInfo(mixer->hInputMixer,
- &line,
- MIXER_GETLINEINFOF_COMPONENTTYPE);
- if (result == MMSYSERR_NOERROR) {
-
- controls.cbStruct = sizeof(MIXERLINECONTROLS);
- controls.dwLineID = line.dwLineID;
- controls.dwControlType = MIXERCONTROL_CONTROLTYPE_MUX;
- controls.cbmxctrl = sizeof(MIXERCONTROL);
- controls.pamxctrl = &control;
-
- control.cbStruct = sizeof(MIXERCONTROL);
-
- result = mixerGetLineControls(mixer->hInputMixer,
- &controls,
- MIXER_GETLINECONTROLSF_ONEBYTYPE);
-
- if (result != MMSYSERR_NOERROR) {
- controls.dwControlType = MIXERCONTROL_CONTROLTYPE_MIXER;
- result = mixerGetLineControls(mixer->hInputMixer,
- &controls,
- MIXER_GETLINECONTROLSF_ONEBYTYPE);
- }
-
- if (result == MMSYSERR_NOERROR) {
- mixer->numInputs = control.cMultipleItems;
- mixer->muxID = control.dwControlID;
-
- details.cbStruct = sizeof(MIXERCONTROLDETAILS);
- details.dwControlID = mixer->muxID;
- details.cChannels = 1;
- details.cbDetails = sizeof(MIXERCONTROLDETAILS_LISTTEXT);
- details.paDetails = (LPMIXERCONTROLDETAILS_LISTTEXT)&mixList[0];
- details.cMultipleItems = mixer->numInputs;
-
- result = mixerGetControlDetails(mixer->hInputMixer,
- (LPMIXERCONTROLDETAILS)&details,
- MIXER_GETCONTROLDETAILSF_LISTTEXT);
-
- if (result != MMSYSERR_NOERROR)
- mixer->numInputs = 0;
-
- for(j=0; j<mixer->numInputs; j++) {
- mixer->src[j].lineID = mixList[j].dwParam1;
- strcpy(mixer->src[j].name, mixList[j].szName);
- }
- }
-
- /*
- * We've found the names - now we need to find the volume
- * controls for each one
- */
-
- for(j=0; j<mixer->numInputs; j++) {
- controls.cbStruct = sizeof(MIXERLINECONTROLS);
- controls.dwLineID = mixer->src[j].lineID;
- controls.dwControlType = MIXERCONTROL_CONTROLTYPE_VOLUME;
- controls.cbmxctrl = sizeof(MIXERCONTROL);
- controls.pamxctrl = &control;
-
- control.cbStruct = sizeof(MIXERCONTROL);
-
- result = mixerGetLineControls(mixer->hInputMixer,
- &controls,
- MIXER_GETLINECONTROLSF_ONEBYTYPE);
- if (result == MMSYSERR_NOERROR)
- mixer->src[j].controlID = control.dwControlID;
- else
- mixer->src[j].controlID = 0;
- }
- }
- }
-
- /*
- * Find the ID of the output speaker volume control
- */
-
- mixer->speakerID = 0;
-
- if (mixer->hOutputMixer) {
- line.cbStruct = sizeof(MIXERLINE);
- line.dwComponentType = MIXERLINE_COMPONENTTYPE_DST_SPEAKERS;
- result = mixerGetLineInfo(mixer->hOutputMixer,
- &line,
- MIXER_GETLINEINFOF_COMPONENTTYPE);
- if (result == MMSYSERR_NOERROR) {
- controls.cbStruct = sizeof(MIXERLINECONTROLS);
- controls.dwLineID = line.dwLineID;
- controls.dwControlType = MIXERCONTROL_CONTROLTYPE_VOLUME;
- controls.cbmxctrl = sizeof(MIXERCONTROL);
- controls.pamxctrl = &control;
-
- control.cbStruct = sizeof(MIXERCONTROL);
-
- result = mixerGetLineControls(mixer->hOutputMixer,
- &controls,
- MIXER_GETLINECONTROLSF_ONEBYTYPE);
-
- if (result == MMSYSERR_NOERROR)
- mixer->speakerID = control.dwControlID;
- }
- }
-
- return (PxMixer *)mixer;
-}
-
-void VolumeFunction(HMIXEROBJ hMixer, DWORD controlID, PxVolume *volume)
-{
- MIXERCONTROLDETAILS details;
- MMRESULT result;
- MIXERCONTROLDETAILS_UNSIGNED value;
-
- memset(&value, 0, sizeof(MIXERCONTROLDETAILS_UNSIGNED));
-
- details.cbStruct = sizeof(MIXERCONTROLDETAILS);
- details.dwControlID = controlID;
- details.cChannels = 1; /* all channels */
- details.cMultipleItems = 0;
- details.cbDetails = sizeof(MIXERCONTROLDETAILS_UNSIGNED);
- details.paDetails = &value;
-
- result = mixerGetControlDetails(hMixer, &details,
- MIXER_GETCONTROLDETAILSF_VALUE);
-
- if (*volume < 0.0) {
- *volume = (PxVolume)(value.dwValue / 65535.0);
- }
- else {
- if (result != MMSYSERR_NOERROR)
- return;
- value.dwValue = (unsigned short)(*volume * 65535.0);
- mixerSetControlDetails(hMixer, &details,
- MIXER_GETCONTROLDETAILSF_VALUE);
- }
-}
-
-/*
- Px_CloseMixer() closes a mixer opened using Px_OpenMixer and frees any
- memory associated with it.
-*/
-
-void Px_CloseMixer(PxMixer *mixer)
-{
- PxInfo *info = (PxInfo *)mixer;
-
- if (info->hInputMixer)
- mixerClose((HMIXER)info->hInputMixer);
- if (info->hOutputMixer)
- mixerClose((HMIXER)info->hOutputMixer);
- free( mixer );
-}
-
-/*
- Master (output) volume
-*/
-
-PxVolume Px_GetMasterVolume( PxMixer *mixer )
-{
- PxInfo *info = (PxInfo *)mixer;
- PxVolume vol;
-
- vol = -1.0;
- VolumeFunction(info->hOutputMixer, info->speakerID, &vol);
- return vol;
-}
-
-void Px_SetMasterVolume( PxMixer *mixer, PxVolume volume )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- VolumeFunction(info->hOutputMixer, info->speakerID, &volume);
-}
-
-/*
- PCM output volume
-*/
-
-int Px_SupportsPCMOutputVolume( PxMixer* mixer )
-{
- PxInfo* info = ( PxInfo* )( mixer ) ;
- return ( info->waveID == -1 ) ? 0 : 1 ;
-}
-
-PxVolume Px_GetPCMOutputVolume( PxMixer *mixer )
-{
- MMRESULT result;
- DWORD vol = 0;
- unsigned short mono_vol = 0;
- PxInfo *info = (PxInfo *)mixer;
-
- /* invalid waveID, return zero */
- if ( info->waveID == -1 )
- return 0.0 ;
-
- /* get the wave output volume */
- result = waveOutGetVolume( (HWAVEOUT)( info->waveID ), &vol);
-
- /* on failure, mark waveID as invalid and return zero */
- if ( result != MMSYSERR_NOERROR )
- {
- info->waveID = -1 ;
- return 0.0 ;
- }
-
- mono_vol = (unsigned short)vol;
- return (PxVolume)mono_vol/65535.0;
-}
-
-void Px_SetPCMOutputVolume( PxMixer *mixer, PxVolume volume )
-{
- MMRESULT result;
- PxInfo *info = (PxInfo *)mixer;
-
- /* invalid waveID */
- if ( info->waveID == -1 )
- return ;
-
- /* set the wave output volume */
- result = waveOutSetVolume( (HWAVEOUT)( info->waveID ), MAKELONG(volume*0xFFFF, volume*0xFFFF));
-
- /* on failure, mark waveID as invalid */
- if ( result != MMSYSERR_NOERROR )
- {
- info->waveID = -1 ;
- }
-
- return ;
-}
-
-/*
- All output volumes
-*/
-
-int Px_GetNumOutputVolumes( PxMixer *mixer )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- return 2;
-}
-
-const char *Px_GetOutputVolumeName( PxMixer *mixer, int i )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- if (i==1)
- return "Wave Out";
- else
- return "Master Volume";
-}
-
-PxVolume Px_GetOutputVolume( PxMixer *mixer, int i )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- if (i==1)
- return Px_GetPCMOutputVolume(mixer);
- else
- return Px_GetMasterVolume(mixer);
-}
-
-void Px_SetOutputVolume( PxMixer *mixer, int i, PxVolume volume )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- if (i==1)
- Px_SetPCMOutputVolume(mixer, volume);
- else
- Px_SetMasterVolume(mixer, volume);
-}
-
-/*
- Input sources
-*/
-
-int Px_GetNumInputSources( PxMixer *mixer )
-{
- PxInfo *info = (PxInfo *)mixer;
-
- return info->numInputs;
-}
-
-const char *Px_GetInputSourceName( PxMixer *mixer, int i)
-{
- PxInfo *info = (PxInfo *)mixer;
-
- return info->src[i].name;
-}
-
-int Px_GetCurrentInputSource( PxMixer *mixer )
-{
- PxInfo *info = (PxInfo *)mixer;
- MIXERCONTROLDETAILS details;
- MIXERCONTROLDETAILS_BOOLEAN flags[32];
- MMRESULT result;
- int i;
-
- details.cbStruct = sizeof(MIXERCONTROLDETAILS);
- details.dwControlID = info->muxID;
- details.cMultipleItems = info->numInputs;
- details.cChannels = 1;
- details.cbDetails = sizeof(MIXERCONTROLDETAILS_BOOLEAN);
- details.paDetails = (LPMIXERCONTROLDETAILS_BOOLEAN)&flags[0];
-
- result = mixerGetControlDetails(info->hInputMixer,
- (LPMIXERCONTROLDETAILS)&details,
- MIXER_GETCONTROLDETAILSF_VALUE);
-
- if (result == MMSYSERR_NOERROR) {
- for(i=0; i<info->numInputs; i++)
- if (flags[i].fValue)
- return i;
- }
-
- return 0;
-}
-
-void Px_SetCurrentInputSource( PxMixer *mixer, int i )
-{
- PxInfo *info = (PxInfo *)mixer;
- MIXERCONTROLDETAILS details;
- MIXERCONTROLDETAILS_BOOLEAN flags[32];
- MMRESULT result;
- int j;
-
- details.cbStruct = sizeof(MIXERCONTROLDETAILS);
- details.dwControlID = info->muxID;
- details.cMultipleItems = info->numInputs;
- details.cChannels = 1;
- details.cbDetails = sizeof(MIXERCONTROLDETAILS_BOOLEAN);
- details.paDetails = (LPMIXERCONTROLDETAILS_BOOLEAN)&flags[0];
-
- for(j=0; j<info->numInputs; j++)
- flags[j].fValue = (i == j);
-
- result = mixerSetControlDetails(info->hInputMixer,
- (LPMIXERCONTROLDETAILS)&details,
- MIXER_SETCONTROLDETAILSF_VALUE);
-}
-
-/*
- Input volume
-*/
-
-PxVolume Px_GetInputVolume( PxMixer *mixer )
-{
- PxInfo *info = (PxInfo *)mixer;
- PxVolume vol;
- int src = Px_GetCurrentInputSource(mixer);
-
- vol = -1.0;
- VolumeFunction(info->hInputMixer, info->src[src].controlID, &vol);
- return vol;
-}
-
-void Px_SetInputVolume( PxMixer *mixer, PxVolume volume )
-{
- PxInfo *info = (PxInfo *)mixer;
- int src = Px_GetCurrentInputSource(mixer);
-
- VolumeFunction(info->hInputMixer, info->src[src].controlID, &volume);
-}
-
-/*
- Balance
-*/
-
-int Px_SupportsOutputBalance( PxMixer *mixer )
-{
- return 0;
-}
-
-PxBalance Px_GetOutputBalance( PxMixer *mixer )
-{
- return 0.0;
-}
-
-void Px_SetOutputBalance( PxMixer *mixer, PxBalance balance )
-{
-}
-
-/*
- Playthrough
-*/
-
-int Px_SupportsPlaythrough( PxMixer *mixer )
-{
- return 0;
-}
-
-PxVolume Px_GetPlaythrough( PxMixer *mixer )
-{
- return 0.0;
-}
-
-void Px_SetPlaythrough( PxMixer *mixer, PxVolume volume )
-{
-}
-
diff --git a/lib-src/portmixer/src/px_linux_alsa.c b/lib-src/portmixer/src/px_linux_alsa.c
index 9608a79..be33a92 100644
--- a/lib-src/portmixer/src/px_linux_alsa.c
+++ b/lib-src/portmixer/src/px_linux_alsa.c
@@ -56,8 +56,10 @@
typedef struct PxSelem
{
- snd_mixer_selem_id_t *sid;
snd_mixer_elem_t *elem;
+ snd_mixer_elem_t *vol;
+ unsigned int index;
+ unsigned int item;
char *name;
} PxSelem;
@@ -65,6 +67,8 @@ typedef struct PxDev
{
snd_mixer_t *handle;
int card;
+ int playback;
+ int source;
int numselems;
PxSelem *selems;
@@ -75,23 +79,28 @@ typedef struct PxInfo
int numMixers;
char *mixers;
- PxDev capture;
PxDev playback;
+ PxDev capture;
} PxInfo;
static int open_mixer(PxDev *dev, int card, int playback)
{
- snd_mixer_elem_t *elem;
- char name[256];
- int err;
- int i;
-
- sprintf(name, "hw:%d", card);
-
- dev->card = card;
- dev->handle = NULL;
-
do {
+ snd_mixer_selem_id_t *sid;
+ snd_mixer_elem_t *elem;
+ char name[256];
+ int err;
+ int i;
+
+ snd_mixer_selem_id_alloca(&sid);
+
+ sprintf(name, "hw:%d", card);
+
+ dev->card = card;
+ dev->handle = NULL;
+ dev->playback = playback;
+ dev->source = -1;
+
err = snd_mixer_open(&dev->handle, 0);
if (err < 0) {
break;
@@ -116,21 +125,20 @@ static int open_mixer(PxDev *dev, int card, int playback)
elem != NULL;
elem = snd_mixer_elem_next(elem))
{
- if (!playback) {
- if (!snd_mixer_selem_has_capture_volume(elem) &&
- !snd_mixer_selem_has_capture_switch(elem) &&
- !snd_mixer_selem_has_common_volume(elem)) {
- continue;
+ if (playback) {
+ if (snd_mixer_selem_has_common_volume(elem) ||
+ snd_mixer_selem_has_playback_volume(elem)) {
+ dev->numselems++;
}
}
else {
- if (!snd_mixer_selem_has_playback_volume(elem) &&
- !snd_mixer_selem_has_playback_switch(elem) &&
- !snd_mixer_selem_has_common_volume(elem)) {
- continue;
+ if (snd_mixer_selem_get_capture_group(elem) >= 0) {
+ dev->numselems++;
+ }
+ else if (snd_mixer_selem_is_enum_capture(elem)) {
+ dev->numselems += snd_mixer_selem_get_enum_items(elem);
}
}
- dev->numselems++;
}
dev->selems = calloc(dev->numselems, sizeof(PxSelem));
@@ -138,57 +146,125 @@ static int open_mixer(PxDev *dev, int card, int playback)
break;
}
+
i = 0;
for (elem = snd_mixer_first_elem(dev->handle);
elem != NULL;
elem = snd_mixer_elem_next(elem))
{
- if (!playback) {
- if (!snd_mixer_selem_has_capture_volume(elem) &&
- !snd_mixer_selem_has_capture_switch(elem) &&
- !snd_mixer_selem_has_common_volume(elem)) {
- continue;
+ snd_mixer_elem_t *vol;
+ int ndx;
+
+ if (playback) {
+ if (snd_mixer_selem_has_common_volume(elem) ||
+ snd_mixer_selem_has_playback_volume(elem)) {
+ snprintf(name,
+ sizeof(name),
+ "%s:%d",
+ snd_mixer_selem_get_name(elem),
+ snd_mixer_selem_get_index(elem));
+
+ dev->selems[i].elem = elem;
+ dev->selems[i].index = snd_mixer_selem_get_index(elem);
+ dev->selems[i].name = strdup(name);
+ if (!dev->selems[i].name) {
+ break;
+ }
+ i++;
}
+ continue;
}
- else {
- if (!snd_mixer_selem_has_playback_volume(elem) &&
- !snd_mixer_selem_has_playback_switch(elem) &&
- !snd_mixer_selem_has_common_volume(elem)) {
- continue;
+
+ snd_mixer_selem_id_set_name(sid, "Capture");
+ snd_mixer_selem_id_set_index(sid, snd_mixer_selem_get_index(elem));
+ vol = snd_mixer_find_selem(dev->handle, sid);
+
+ if (snd_mixer_selem_get_capture_group(elem) >= 0) {
+ snprintf(name,
+ sizeof(name),
+ "%s:%d",
+ snd_mixer_selem_get_name(elem),
+ snd_mixer_selem_get_index(elem));
+
+ dev->selems[i].vol = vol;
+ dev->selems[i].elem = elem;
+ dev->selems[i].index = snd_mixer_selem_get_index(elem);
+ dev->selems[i].name = strdup(name);
+ if (!dev->selems[i].name) {
+ break;
}
+ i++;
}
-
- if (snd_mixer_selem_id_malloc(&dev->selems[i].sid) < 0) {
- break;
+ else if (snd_mixer_selem_is_enum_capture(elem)) {
+ unsigned int cnt = snd_mixer_selem_get_enum_items(elem);
+ unsigned int j;
+
+ for (j = 0; j < cnt; j++) {
+ char iname[256];
+ snd_mixer_selem_get_enum_item_name(elem, j, sizeof(iname), iname);
+ snprintf(name,
+ sizeof(name),
+ "%s:%d",
+ iname,
+ snd_mixer_selem_get_index(elem));
+
+ dev->selems[i].vol = vol;
+ dev->selems[i].item = j;
+ dev->selems[i].elem = elem;
+ dev->selems[i].index = snd_mixer_selem_get_index(elem);
+ dev->selems[i].name = strdup(name);
+ if (!dev->selems[i].name) {
+ break;
+ }
+ i++;
+ }
}
+ }
- snd_mixer_selem_get_id(elem, dev->selems[i].sid);
- dev->selems[i].elem = elem;
+ if (i != dev->numselems) {
+ break;
+ }
- snprintf(name,
- sizeof(name),
- "%s:%d",
- snd_mixer_selem_id_get_name(dev->selems[i].sid),
- snd_mixer_selem_id_get_index(dev->selems[i].sid));
+ if (playback) {
+ return TRUE;
+ }
- dev->selems[i].name = strdup(name);
- if (!dev->selems[i].name) {
+ for (i = 0; i < dev->numselems; i++) {
+ elem = dev->selems[i].elem;
+ if (snd_mixer_selem_get_capture_group(elem) >= 0) {
+ int sw = 0;
+ if (snd_mixer_selem_get_capture_switch(elem, SND_MIXER_SCHN_FRONT_LEFT, &sw) < 0) {
+ continue;
+ }
+ if (!sw) {
+ continue;
+ }
+ dev->source = i;
break;
}
- i++;
+ else if (snd_mixer_selem_is_enum_capture(elem)) {
+ unsigned int src;
+ if (snd_mixer_selem_get_enum_item(elem, SND_MIXER_SCHN_FRONT_LEFT, &src) < 0) {
+ continue;
+ }
+ if (src == dev->selems[i].item) {
+ dev->source = i;
+ break;
+ }
+ }
}
- if (i == dev->numselems) {
- return TRUE;
+ if (dev->source == -1) {
+ dev->source = 0;
}
+ return TRUE;
+
} while (FALSE);
if (dev->selems) {
+ int i;
for (i = 0; i < dev->numselems; i++) {
- if (dev->selems[i].sid) {
- snd_mixer_selem_id_free(dev->selems[i].sid);
- }
if (dev->selems[i].name) {
free(dev->selems[i].name);
}
@@ -274,9 +350,6 @@ static int cleanup(px_mixer *Px)
if (info->capture.selems) {
for (i = 0; i < info->capture.numselems; i++) {
- if (info->capture.selems[i].sid) {
- snd_mixer_selem_id_free(info->capture.selems[i].sid);
- }
if (info->capture.selems[i].name) {
free(info->capture.selems[i].name);
}
@@ -290,9 +363,6 @@ static int cleanup(px_mixer *Px)
if (info->playback.selems) {
for (i = 0; i < info->playback.numselems; i++) {
- if (info->playback.selems[i].sid) {
- snd_mixer_selem_id_free(info->playback.selems[i].sid);
- }
if (info->playback.selems[i].name) {
free(info->playback.selems[i].name);
}
@@ -312,7 +382,26 @@ static int cleanup(px_mixer *Px)
return FALSE;
}
-static PxVolume get_volume_indexed(PxDev *dev, int i, int playback)
+static int generic_lookup(PxDev *dev, const char *generic)
+{
+ snd_mixer_selem_id_t *id;
+ snd_mixer_elem_t *elem;
+ int i;
+
+ if (dev == NULL) {
+ return -1;
+ }
+
+ for (i = 0; i < dev->numselems; i++) {
+ if (strncmp(dev->selems[i].name, generic, strlen(generic)) == 0) {
+ return i;
+ }
+ }
+
+ return -1;
+}
+
+static PxVolume get_volume_indexed(PxDev *dev, int i)
{
snd_mixer_elem_t *elem;
long vol, min, max;
@@ -326,7 +415,7 @@ static PxVolume get_volume_indexed(PxDev *dev, int i, int playback)
}
elem = dev->selems[i].elem;
- if (playback) {
+ if (dev->playback) {
snd_mixer_selem_get_playback_volume_range(elem, &min, &max);
if (snd_mixer_selem_has_playback_channel(elem, SND_MIXER_SCHN_FRONT_LEFT)) {
snd_mixer_selem_get_playback_volume(elem, SND_MIXER_SCHN_FRONT_LEFT, &vol);
@@ -344,9 +433,8 @@ static PxVolume get_volume_indexed(PxDev *dev, int i, int playback)
return 0.0;
}
-static PxVolume get_volume(PxDev *dev, const char *name, int playback)
+static PxVolume get_volume(PxDev *dev, const char *name)
{
- const char *sname;
int i;
if (!dev->handle) {
@@ -354,16 +442,15 @@ static PxVolume get_volume(PxDev *dev, const char *name, int playback)
}
for (i = 0; i < dev->numselems; i++) {
- sname = snd_mixer_selem_id_get_name(dev->selems[i].sid);
- if (strcmp(sname, name) == 0) {
- return get_volume_indexed(dev, i, playback);
+ if (strcmp(dev->selems[i].name, name) == 0) {
+ return get_volume_indexed(dev, i);
}
}
return 0.0;
}
-static void set_volume_indexed(PxDev *dev, int i, PxVolume volume, int playback)
+static void set_volume_indexed(PxDev *dev, int i, PxVolume volume)
{
snd_mixer_elem_t *elem;
long vol, min, max;
@@ -378,7 +465,7 @@ static void set_volume_indexed(PxDev *dev, int i, PxVolume volume, int playback)
}
elem = dev->selems[i].elem;
- if (playback) {
+ if (dev->playback) {
snd_mixer_selem_get_playback_volume_range(elem, &min, &max);
for (j = 0; j < SND_MIXER_SCHN_LAST; j++) {
if (snd_mixer_selem_has_playback_channel(elem, j)) {
@@ -400,9 +487,8 @@ static void set_volume_indexed(PxDev *dev, int i, PxVolume volume, int playback)
return;
}
-static void set_volume(PxDev *dev, const char *name, PxVolume volume, int playback)
+static void set_volume(PxDev *dev, const char *name, PxVolume volume)
{
- const char *sname;
int i;
if (!dev->handle) {
@@ -410,9 +496,8 @@ static void set_volume(PxDev *dev, const char *name, PxVolume volume, int playba
}
for (i = 0; i < dev->numselems; i++) {
- sname = snd_mixer_selem_id_get_name(dev->selems[i].sid);
- if (strcmp(sname, name) == 0) {
- set_volume_indexed(dev, i, volume, playback);
+ if (strcmp(dev->selems[i].name, name) == 0) {
+ set_volume_indexed(dev, i, volume);
break;
}
}
@@ -430,42 +515,15 @@ static void close_mixer(px_mixer *Px)
static int get_num_mixers(px_mixer *Px)
{
PxInfo *info = (PxInfo *)Px->info;
- int i;
- int fd;
-
- info->numMixers = 0;
-#if 0
- for (i = 0; i < MIXER_COUNT_MAX; i++) {
- strcpy(info->mixers[i], MIXER_NAME_BASE);
-
- if (i == 0)
- info->mixers[i][strlen(MIXER_NAME_BASE)] = 0;
- else
- info->mixers[i][strlen(MIXER_NAME_BASE)] = '0' + (i - 1);
-
- fd = open(info->mixers[i], O_RDWR);
- if (fd >= 0) {
- info->mixerIndexes[info->numMixers] = i;
- info->numMixers++;
- close(fd);
- }
- }
-#endif
- return info->numMixers;
+
+ return 1;
}
static const char *get_mixer_name(px_mixer *Px, int i)
{
PxInfo *info = (PxInfo *)Px->info;
-#if 0
- if (info->numMixers <= 0)
- get_num_mixers(Px);
- if (i >= 0 && i < info->numMixers) {
- return info->mixers[info->mixerIndexes[i]];
- }
-#endif
- return NULL;
+ return "ALSA";
}
/*
@@ -475,52 +533,53 @@ static const char *get_mixer_name(px_mixer *Px, int i)
static PxVolume get_master_volume(px_mixer *Px)
{
PxInfo *info = (PxInfo *)Px->info;
+ PxDev *dev = &info->playback;
- return get_volume(&info->playback, "Master", TRUE);
+ return get_volume_indexed(dev, generic_lookup(dev, "Master"));
}
static void set_master_volume(px_mixer *Px, PxVolume volume)
{
PxInfo *info = (PxInfo *)Px->info;
+ PxDev *dev = &info->playback;
+
+ set_volume_indexed(dev, generic_lookup(dev, "Master"), volume);
- set_volume(&info->playback, "Master", volume, TRUE);
+ /* Ensure pending events are handled...otherwise, they build up */
+ snd_mixer_handle_events(info->capture.handle);
return;
}
-/*
+/*
|| Main output volume
*/
static int supports_pcm_output_volume(px_mixer *Px)
{
PxInfo *info = (PxInfo *)Px->info;
- snd_mixer_selem_id_t *id;
-
- if (info->playback.handle) {
- snd_mixer_selem_id_alloca(&id);
- snd_mixer_selem_id_set_name(id, "PCM");
-
- if (snd_mixer_find_selem(info->playback.handle, id)) {
- return TRUE;
- }
- }
+ PxDev *dev = &info->playback;
- return FALSE;
+ return generic_lookup(dev, "PCM") != -1;
}
static PxVolume get_pcm_output_volume(px_mixer *Px)
{
PxInfo *info = (PxInfo *)Px->info;
+ PxDev *dev = &info->playback;
- return get_volume(&info->playback, "PCM", TRUE);
+ return get_volume_indexed(dev, generic_lookup(dev, "PCM"));
}
static void set_pcm_output_volume(px_mixer *Px, PxVolume volume)
{
PxInfo *info = (PxInfo *)Px->info;
+ PxDev *dev = &info->playback;
+
+ set_volume_indexed(dev, generic_lookup(dev, "PCM"), volume);
- set_volume(&info->playback, "PCM", volume, TRUE);
+ /* Ensure pending events are handled...otherwise, they build up */
+ snd_mixer_handle_events(info->capture.handle);
return;
}
@@ -543,9 +602,6 @@ static int get_num_output_volumes(px_mixer *Px)
static const char *get_output_volume_name(px_mixer *Px, int i)
{
PxInfo *info = (PxInfo *)Px->info;
- snd_mixer_elem_t *elem;
- char name[64];
- int ndx = 0;
if (info->playback.handle) {
if (i >= 0 && i < info->playback.numselems) {
@@ -560,14 +616,14 @@ static PxVolume get_output_volume(px_mixer *Px, int i)
{
PxInfo *info = (PxInfo *)Px->info;
- return get_volume_indexed(&info->playback, i, TRUE);
+ return get_volume_indexed(&info->playback, i);
}
static void set_output_volume(px_mixer *Px, int i, PxVolume volume)
{
PxInfo *info = (PxInfo *)Px->info;
- set_volume_indexed(&info->playback, i, volume, TRUE);
+ set_volume_indexed(&info->playback, i, volume);
return;
}
@@ -604,33 +660,19 @@ static int get_current_input_source(px_mixer *Px)
{
PxInfo *info = (PxInfo *)Px->info;
snd_mixer_elem_t *elem;
- int sw;
- int i, j;
+ int i;
if (!info->capture.handle) {
return -1;
}
- for (i = 0; i < info->capture.numselems; i++) {
- elem = info->capture.selems[i].elem;
- for (j = 0; j <= SND_MIXER_SCHN_LAST; j++) {
- if (snd_mixer_selem_has_capture_switch(elem)) {
- snd_mixer_selem_get_capture_switch(elem, j, &sw);
- if (sw) {
- return i;
- }
- }
- }
- }
-
- return -1; /* none */
+ return info->capture.source;
}
static void set_current_input_source(px_mixer *Px, int i)
{
PxInfo *info = (PxInfo *)Px->info;
snd_mixer_elem_t *elem;
- int j;
if (!info->capture.handle) {
return;
@@ -641,12 +683,23 @@ static void set_current_input_source(px_mixer *Px, int i)
}
elem = info->capture.selems[i].elem;
- for (j = 0; j <= SND_MIXER_SCHN_LAST; j++) {
- if (snd_mixer_selem_has_capture_switch(elem)) {
- snd_mixer_selem_set_capture_switch(elem, j, TRUE);
+ if (snd_mixer_selem_get_capture_group(elem) >= 0) {
+ snd_mixer_selem_set_capture_switch_all(elem, TRUE);
+ }
+ else if (snd_mixer_selem_is_enum_capture(elem)) {
+ int j;
+ for (j = 0; j < SND_MIXER_SCHN_LAST; j++) {
+ snd_mixer_selem_set_enum_item(elem, j, info->capture.selems[i].item);
}
}
+ info->capture.source = i;
+
+ /* Ensure pending events are handled...otherwise, they build up */
+ snd_mixer_handle_events(info->capture.handle);
+
+ set_input_volume(Px, get_input_volume(Px));
+
return;
}
@@ -657,15 +710,57 @@ static void set_current_input_source(px_mixer *Px, int i)
static PxVolume get_input_volume(px_mixer *Px)
{
PxInfo *info = (PxInfo *)Px->info;
+ snd_mixer_elem_t *elem;
+ long min;
+ long max;
+ long vol;
+ PxVolume volume = 0.0;
+
+ if (info->capture.source < 0) {
+ return volume;
+ }
+
+ elem = info->capture.selems[info->capture.source].vol;
+ if (!elem) {
+ return volume;
+ }
+
+ snd_mixer_selem_get_capture_volume_range(elem, &min, &max);
+ if (snd_mixer_selem_has_capture_channel(elem, SND_MIXER_SCHN_FRONT_LEFT)) {
+ snd_mixer_selem_get_capture_volume(elem, SND_MIXER_SCHN_FRONT_LEFT, &vol);
+ volume = ((PxVolume) vol) / (max - min);
+ }
- return get_volume(&info->capture, "Capture", FALSE);
+ return volume;
}
static void set_input_volume(px_mixer *Px, PxVolume volume)
{
PxInfo *info = (PxInfo *)Px->info;
+ snd_mixer_elem_t *elem;
+ long min;
+ long max;
+ long vol;
+
+ if (info->capture.source < 0) {
+ return;
+ }
+
+ elem = info->capture.selems[info->capture.source].vol;
+ if (!elem) {
+ return;
+ }
+
+ snd_mixer_selem_get_capture_volume_range(elem, &min, &max);
+ vol = (long) (volume * (max - min) + 0.5);
+ snd_mixer_selem_set_capture_volume_all(elem, vol);
+
+ if (snd_mixer_selem_has_capture_switch(elem)) {
+ snd_mixer_selem_set_capture_switch_all(elem, vol > 0 ? TRUE : FALSE);
+ }
- set_volume(&info->capture, "Capture", volume, FALSE);
+ /* Ensure pending events are handled...otherwise, they build up */
+ snd_mixer_handle_events(info->capture.handle);
return;
}
diff --git a/lib-src/portmixer/src/px_win_common.c b/lib-src/portmixer/src/px_win_common.c
index a859d15..ce09bb0 100644
--- a/lib-src/portmixer/src/px_win_common.c
+++ b/lib-src/portmixer/src/px_win_common.c
@@ -86,14 +86,14 @@ int open_mixers(px_mixer *Px, UINT deviceIn, UINT deviceOut)
info->numInputs = 0;
info->muxID = 0;
info->speakerID = 0;
- info->waveID = 0;
+ info->waveID = 0;
if (deviceIn != UINT_MAX) {
res = mixerOpen((LPHMIXER) &info->hInputMixer,
deviceIn,
0,
0,
- MIXER_OBJECTF_WAVEIN);
+ MIXER_OBJECTF_MIXER);
if (res != MMSYSERR_NOERROR) {
return cleanup(Px);
}
@@ -121,7 +121,7 @@ int open_mixers(px_mixer *Px, UINT deviceIn, UINT deviceOut)
deviceOut,
0,
0,
- MIXER_OBJECTF_WAVEOUT);
+ MIXER_OBJECTF_MIXER);
if (res != MMSYSERR_NOERROR) {
return cleanup(Px);
}
@@ -565,7 +565,7 @@ static int get_current_input_source(px_mixer *Px)
MIXERCONTROLDETAILS_LISTTEXT *list;
MIXERCONTROLDETAILS_BOOLEAN *flags;
MMRESULT res;
- int i = -1;
+ int i = 0;
int j;
if (!info->hInputMixer) {
diff --git a/lib-src/portmixer/src/px_win_ds.c b/lib-src/portmixer/src/px_win_ds.c
index 8dbc8a8..c151290 100644
--- a/lib-src/portmixer/src/px_win_ds.c
+++ b/lib-src/portmixer/src/px_win_ds.c
@@ -136,7 +136,12 @@ int OpenMixer_Win_DirectSound(px_mixer *Px, int index)
break;
}
- deviceIn = desc.WaveDeviceId;
+ hr = mixerGetID((HMIXEROBJ) desc.WaveDeviceId,
+ &deviceIn,
+ MIXER_OBJECTF_WAVEIN);
+ if (hr != MMSYSERR_NOERROR) {
+ break;
+ }
}
if (guidOut) {
@@ -153,8 +158,13 @@ int OpenMixer_Win_DirectSound(px_mixer *Px, int index)
if (FAILED(hr)) {
break;
}
-
- deviceOut = desc.WaveDeviceId;
+
+ hr = mixerGetID((HMIXEROBJ) desc.WaveDeviceId,
+ &deviceOut,
+ MIXER_OBJECTF_WAVEOUT);
+ if (hr != MMSYSERR_NOERROR) {
+ break;
+ }
}
if (open_mixers(Px, deviceIn, deviceOut))
diff --git a/lib-src/portmixer/winproj/portmixer.vcproj b/lib-src/portmixer/winproj/portmixer.vcproj
deleted file mode 100644
index 738aaaf..0000000
--- a/lib-src/portmixer/winproj/portmixer.vcproj
+++ /dev/null
@@ -1,670 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="portmixer"
- ProjectGUID="{3A76129B-55AB-4D54-BAA7-08F63ED52569}"
- RootNamespace="portmixer"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Release|Win32"
- OutputDirectory=".\$(ConfigurationName)"
- IntermediateDirectory=".\$(ConfigurationName)"
- ConfigurationType="4"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- UseOfMFC="0"
- ATLMinimizesCRunTimeLibraryUsage="false"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- CommandLine="echo // Automatically generated file >".\$(ConfigurationName)\config.h"
IF NOT "%DXSDK_DIR%" == "" echo #define PX_USE_WIN_DSOUND 1 >>".\$(ConfigurationName)\config.h"
"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- AdditionalOptions="/O2"
- Optimization="2"
- InlineFunctionExpansion="1"
- AdditionalIncludeDirectories="..\include;"..\..\portaudio-v19\include""
- PreprocessorDefinitions="WIN32;NDEBUG;_LIB;PX_USE_WIN_MME"
- StringPooling="true"
- RuntimeLibrary="0"
- EnableFunctionLevelLinking="true"
- UsePrecompiledHeader="0"
- PrecompiledHeaderFile=".\$(ConfigurationName)/portmixer.pch"
- AssemblerListingLocation=".\$(ConfigurationName)/"
- ObjectFile=".\$(ConfigurationName)/"
- ProgramDataBaseFileName=".\$(ConfigurationName)/"
- WarningLevel="3"
- SuppressStartupBanner="true"
- CompileAs="0"
- DisableSpecificWarnings="4996"
- ForcedIncludeFiles="$(ProjectDir)\$(ConfigurationName)\config.h"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="NDEBUG"
- Culture="1033"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLibrarianTool"
- OutputFile=".\portmixer.lib"
- SuppressStartupBanner="true"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- CommandLine="set LIBS=

if "%DXSDK_DIR%"=="" goto NoDX

cl /O2 /Ob1 /I "..\..\portaudio-v19\include" /I "..\include" /I"%DXSDK_DIR%include" /D "WIN32" /D "NDEBUG" /D "_LIB" /D "_MBCS" /GF /FD /EHsc /MT /Gy /Fo".\$(OutDir)/" /Fd".\$(OutDir)/" /W3 /c /wd4996 "..\src\px_win_ds.c"

set LIBS="%DXSDK_DIR%lib\x86\dxguid.lib"

:NoDX

lib /OUT:"$(TargetPath)" ".\$(OutDir)\*.obj" %LIBS%
"
- />
- </Configuration>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory=".\$(ConfigurationName)"
- IntermediateDirectory=".\$(ConfigurationName)"
- ConfigurationType="4"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- UseOfMFC="0"
- ATLMinimizesCRunTimeLibraryUsage="false"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- CommandLine="echo // Automatically generated file >".\$(ConfigurationName)\config.h"
IF NOT "%DXSDK_DIR%" == "" echo #define PX_USE_WIN_DSOUND 1 >>".\$(ConfigurationName)\config.h"
"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\include;"..\..\portaudio-v19\include""
- PreprocessorDefinitions="WIN32;_DEBUG;_LIB;PX_USE_WIN_MME"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- UsePrecompiledHeader="0"
- PrecompiledHeaderFile=".\$(ConfigurationName)/portmixer.pch"
- AssemblerListingLocation=".\$(ConfigurationName)/"
- ObjectFile=".\$(ConfigurationName)/"
- ProgramDataBaseFileName=".\$(ConfigurationName)/"
- WarningLevel="3"
- SuppressStartupBanner="true"
- DebugInformationFormat="4"
- CompileAs="0"
- DisableSpecificWarnings="4996"
- ForcedIncludeFiles="$(ProjectDir)\$(ConfigurationName)\config.h"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="_DEBUG"
- Culture="1033"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLibrarianTool"
- OutputFile=".\portmixerd.lib"
- SuppressStartupBanner="true"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- CommandLine="set LIBS=

if "%DXSDK_DIR%"=="" goto NoDX

cl /Od /I "..\..\portaudio-v19\include" /I "..\include" /I"%DXSDK_DIR%include" /D "WIN32" /D "_DEBUG" /D "_LIB" /D "_MBCS" /FD /EHsc /RTC1 /MTd /Fo".\$(OutDir)/" /Fd".\$(OutDir)/" /W3 /c /ZI /wd4996 "..\src\px_win_ds.c"

set LIBS="%DXSDK_DIR%lib\x86\dxguid.lib"

:NoDX

lib /OUT:"$(TargetPath)" ".\$(OutDir)\*.obj" %LIBS%
"
- />
- </Configuration>
- <Configuration
- Name="Unicode_Debug|Win32"
- OutputDirectory="$(ConfigurationName)"
- IntermediateDirectory="$(ConfigurationName)"
- ConfigurationType="4"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- UseOfMFC="0"
- ATLMinimizesCRunTimeLibraryUsage="false"
- CharacterSet="0"
- >
- <Tool
- Name="VCPreBuildEventTool"
- CommandLine="echo // Automatically generated file >".\$(ConfigurationName)\config.h"
IF NOT "%DXSDK_DIR%" == "" echo #define PX_USE_WIN_DSOUND 1 >>".\$(ConfigurationName)\config.h"
"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\include;"..\..\portaudio-v19\include""
- PreprocessorDefinitions="WIN32;_DEBUG;_LIB;PX_USE_WIN_MME"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- UsePrecompiledHeader="0"
- PrecompiledHeaderFile=".\$(ConfigurationName)/portmixer.pch"
- AssemblerListingLocation=".\$(ConfigurationName)/"
- ObjectFile=".\$(ConfigurationName)/"
- ProgramDataBaseFileName=".\$(ConfigurationName)/"
- WarningLevel="3"
- SuppressStartupBanner="true"
- DebugInformationFormat="4"
- CompileAs="0"
- DisableSpecificWarnings="4996"
- ForcedIncludeFiles="$(ProjectDir)\$(ConfigurationName)\config.h"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="_DEBUG"
- Culture="1033"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLibrarianTool"
- OutputFile=".\portmixerud.lib"
- SuppressStartupBanner="true"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- CommandLine="set LIBS=

if "%DXSDK_DIR%"=="" goto NoDX

cl /Od /I "..\..\portaudio-v19\include" /I "..\include" /I"%DXSDK_DIR%include" /D "WIN32" /D "_DEBUG" /D "_LIB" /D "_MBCS" /FD /EHsc /RTC1 /MTd /Fo".\$(OutDir)/" /Fd".\$(OutDir)/" /W3 /c /ZI /wd4996 "..\src\px_win_ds.c"

set LIBS="%DXSDK_DIR%lib\x86\dxguid.lib"

:NoDX

lib /OUT:"$(TargetPath)" ".\$(OutDir)\*.obj" %LIBS%
"
- />
- </Configuration>
- <Configuration
- Name="Unicode_Release|Win32"
- OutputDirectory="$(ConfigurationName)"
- IntermediateDirectory="$(ConfigurationName)"
- ConfigurationType="4"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- UseOfMFC="0"
- ATLMinimizesCRunTimeLibraryUsage="false"
- CharacterSet="0"
- >
- <Tool
- Name="VCPreBuildEventTool"
- CommandLine="echo // Automatically generated file >".\$(ConfigurationName)\config.h"
IF NOT "%DXSDK_DIR%" == "" echo #define PX_USE_WIN_DSOUND 1 >>".\$(ConfigurationName)\config.h"
"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- AdditionalOptions="/O2"
- Optimization="2"
- InlineFunctionExpansion="1"
- AdditionalIncludeDirectories="..\include;"..\..\portaudio-v19\include""
- PreprocessorDefinitions="WIN32;NDEBUG;_LIB;PX_USE_WIN_MME"
- StringPooling="true"
- RuntimeLibrary="0"
- EnableFunctionLevelLinking="true"
- UsePrecompiledHeader="0"
- PrecompiledHeaderFile=".\$(ConfigurationName)/portmixer.pch"
- AssemblerListingLocation=".\$(ConfigurationName)/"
- ObjectFile=".\$(ConfigurationName)/"
- ProgramDataBaseFileName=".\$(ConfigurationName)/"
- WarningLevel="3"
- SuppressStartupBanner="true"
- CompileAs="0"
- DisableSpecificWarnings="4996"
- ForcedIncludeFiles="$(ProjectDir)\$(ConfigurationName)\config.h"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="NDEBUG"
- Culture="1033"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLibrarianTool"
- OutputFile=".\portmixeru.lib"
- SuppressStartupBanner="true"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- CommandLine="set LIBS=

if "%DXSDK_DIR%"=="" goto NoDX

cl /O2 /Ob1 /I "..\..\portaudio-v19\include" /I "..\include" /I"%DXSDK_DIR%include" /D "WIN32" /D "NDEBUG" /D "_LIB" /D "_MBCS" /GF /FD /EHsc /MT /Gy /Fo".\$(OutDir)/" /Fd".\$(OutDir)/" /W3 /c /wd4996 "..\src\px_win_ds.c"

set LIBS="%DXSDK_DIR%lib\x86\dxguid.lib"

:NoDX

lib /OUT:"$(TargetPath)" ".\$(OutDir)\*.obj" %LIBS%
"
- />
- </Configuration>
- <Configuration
- Name="Debug DLL|Win32"
- OutputDirectory="$(ConfigurationName)"
- IntermediateDirectory="$(ConfigurationName)"
- ConfigurationType="4"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- UseOfMFC="0"
- ATLMinimizesCRunTimeLibraryUsage="false"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- CommandLine="echo // Automatically generated file >".\$(ConfigurationName)\config.h"
IF NOT "%DXSDK_DIR%" == "" echo #define PX_USE_WIN_DSOUND 1 >>".\$(ConfigurationName)\config.h"
"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\include;"..\..\portaudio-v19\include""
- PreprocessorDefinitions="WIN32;_DEBUG;_LIB;PX_USE_WIN_MME"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- UsePrecompiledHeader="0"
- PrecompiledHeaderFile=".\$(ConfigurationName)/portmixer.pch"
- AssemblerListingLocation=".\$(ConfigurationName)/"
- ObjectFile=".\$(ConfigurationName)/"
- ProgramDataBaseFileName=".\$(ConfigurationName)/"
- WarningLevel="3"
- SuppressStartupBanner="true"
- DebugInformationFormat="4"
- CompileAs="0"
- DisableSpecificWarnings="4996"
- ForcedIncludeFiles="$(ProjectDir)\$(ConfigurationName)\config.h"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="_DEBUG"
- Culture="1033"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLibrarianTool"
- OutputFile=".\portmixerd.lib"
- SuppressStartupBanner="true"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- CommandLine="set LIBS=

if "%DXSDK_DIR%"=="" goto NoDX

cl /Od /I "..\..\portaudio-v19\include" /I "..\include" /I"%DXSDK_DIR%include" /D "WIN32" /D "_DEBUG" /D "_LIB" /D "_MBCS" /FD /EHsc /RTC1 /MTd /Fo".\$(OutDir)/" /Fd".\$(OutDir)/" /W3 /c /ZI /wd4996 "..\src\px_win_ds.c"

set LIBS="%DXSDK_DIR%lib\x86\dxguid.lib"

:NoDX

lib /OUT:"$(TargetPath)" ".\$(OutDir)\*.obj" %LIBS%
"
- />
- </Configuration>
- <Configuration
- Name="Debug wx284|Win32"
- OutputDirectory="$(ConfigurationName)"
- IntermediateDirectory="$(ConfigurationName)"
- ConfigurationType="4"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- UseOfMFC="0"
- ATLMinimizesCRunTimeLibraryUsage="false"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- CommandLine="echo // Automatically generated file >".\$(ConfigurationName)\config.h"
IF NOT "%DXSDK_DIR%" == "" echo #define PX_USE_WIN_DSOUND 1 >>".\$(ConfigurationName)\config.h"
"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\include;"..\..\portaudio-v19\include""
- PreprocessorDefinitions="WIN32;_DEBUG;_LIB;PX_USE_WIN_MME"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- UsePrecompiledHeader="0"
- PrecompiledHeaderFile=".\$(ConfigurationName)/portmixer.pch"
- AssemblerListingLocation=".\$(ConfigurationName)/"
- ObjectFile=".\$(ConfigurationName)/"
- ProgramDataBaseFileName=".\$(ConfigurationName)/"
- WarningLevel="3"
- SuppressStartupBanner="true"
- DebugInformationFormat="4"
- CompileAs="0"
- DisableSpecificWarnings="4996"
- ForcedIncludeFiles="$(ProjectDir)\$(ConfigurationName)\config.h"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="_DEBUG"
- Culture="1033"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLibrarianTool"
- OutputFile=".\portmixerd.lib"
- SuppressStartupBanner="true"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- CommandLine="set LIBS=

if "%DXSDK_DIR%"=="" goto NoDX

cl /Od /I "..\..\portaudio-v19\include" /I "..\include" /I"%DXSDK_DIR%include" /D "WIN32" /D "_DEBUG" /D "_LIB" /D "_MBCS" /FD /EHsc /RTC1 /MTd /Fo".\$(OutDir)/" /Fd".\$(OutDir)/" /W3 /c /ZI /wd4996 "..\src\px_win_ds.c"

set LIBS="%DXSDK_DIR%lib\x86\dxguid.lib"

:NoDX

lib /OUT:"$(TargetPath)" ".\$(OutDir)\*.obj" %LIBS%
"
- />
- </Configuration>
- <Configuration
- Name="Modular_Release|Win32"
- OutputDirectory="$(ConfigurationName)"
- IntermediateDirectory="$(ConfigurationName)"
- ConfigurationType="4"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- UseOfMFC="0"
- ATLMinimizesCRunTimeLibraryUsage="false"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- CommandLine="echo // Automatically generated file >".\$(ConfigurationName)\config.h"
IF NOT "%DXSDK_DIR%" == "" echo #define PX_USE_WIN_DSOUND 1 >>".\$(ConfigurationName)\config.h"
"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- AdditionalOptions="/O2"
- Optimization="2"
- InlineFunctionExpansion="1"
- AdditionalIncludeDirectories="..\include;"..\..\portaudio-v19\include""
- PreprocessorDefinitions="WIN32;NDEBUG;_LIB;PX_USE_WIN_MME"
- StringPooling="true"
- RuntimeLibrary="2"
- EnableFunctionLevelLinking="true"
- UsePrecompiledHeader="0"
- PrecompiledHeaderFile=".\$(ConfigurationName)/portmixer.pch"
- AssemblerListingLocation=".\$(ConfigurationName)/"
- ObjectFile=".\$(ConfigurationName)/"
- ProgramDataBaseFileName=".\$(ConfigurationName)/"
- WarningLevel="3"
- SuppressStartupBanner="true"
- CompileAs="0"
- DisableSpecificWarnings="4996"
- ForcedIncludeFiles="$(ProjectDir)\$(ConfigurationName)\config.h"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="NDEBUG"
- Culture="1033"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLibrarianTool"
- OutputFile=".\portmixer.lib"
- SuppressStartupBanner="true"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- CommandLine="set LIBS=

if "%DXSDK_DIR%"=="" goto NoDX

cl /O2 /Ob1 /I "..\..\portaudio-v19\include" /I "..\include" /I"%DXSDK_DIR%include" /D "WIN32" /D "NDEBUG" /D "_LIB" /D "_MBCS" /GF /FD /EHsc /MT /Gy /Fo".\$(OutDir)/" /Fd".\$(OutDir)/" /W3 /c /wd4996 "..\src\px_win_ds.c"

set LIBS="%DXSDK_DIR%lib\x86\dxguid.lib"

:NoDX

lib /OUT:"$(TargetPath)" ".\$(OutDir)\*.obj" %LIBS%
"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
- >
- <File
- RelativePath="..\src\px_mixer.c"
- >
- </File>
- <File
- RelativePath="..\src\px_mixer.h"
- >
- </File>
- <File
- RelativePath="..\src\px_win_common.c"
- >
- </File>
- <File
- RelativePath="..\src\px_win_common.h"
- >
- </File>
- <File
- RelativePath="..\src\px_win_ds.c"
- >
- <FileConfiguration
- Name="Release|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCLCompilerTool"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCLCompilerTool"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Debug|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCLCompilerTool"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Unicode_Release|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCLCompilerTool"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug DLL|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCLCompilerTool"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug wx284|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCLCompilerTool"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Modular_Release|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCLCompilerTool"
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\src\px_win_wmme.c"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl"
- >
- <File
- RelativePath="..\include\portmixer.h"
- >
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/lib-src/portsmf/allegro.cpp b/lib-src/portsmf/allegro.cpp
index e10d447..e22e820 100644
--- a/lib-src/portsmf/allegro.cpp
+++ b/lib-src/portsmf/allegro.cpp
@@ -31,7 +31,8 @@ using namespace std;
// 4267 is size_t to long warning
#pragma warning(disable: 4311 4996 4267)
Alg_atoms symbol_table;
-Serial_buffer Alg_track::ser_buf; // declare the static variable
+Serial_read_buffer Alg_track::ser_read_buf; // declare the static variables
+Serial_write_buffer Alg_track::ser_write_buf;
bool within(double d1, double d2, double epsilon)
{
@@ -224,9 +225,9 @@ int Alg_event::get_type_code()
{
if (!is_note()) {
const char* attr = get_attribute();
- if (STREQL(attr, "gate")) // volume change
+ if (STREQL(attr, "gater")) // volume change
return ALG_GATE;
- if (STREQL(attr, "bend")) // pitch bend
+ if (STREQL(attr, "bendr")) // pitch bend
return ALG_BEND;
if (strncmp(attr, "control", 7) == 0) // control change
// note that midi control changes have attributes of the form
@@ -235,15 +236,15 @@ int Alg_event::get_type_code()
// We don't check for decimal numbers in the range 0-127, so any
// attribute that begins with "control" is an ALG_CONTROL:
return ALG_CONTROL;
- if (STREQL(attr, "program")) // program change
+ if (STREQL(attr, "programi")) // program change
return ALG_PROGRAM;
- if (STREQL(attr, "pressure")) // pressure change
+ if (STREQL(attr, "pressurer")) // pressure change
return ALG_PRESSURE;
- if (STREQL(attr, "keysig")) // key signature
+ if (STREQL(attr, "keysigi")) // key signature
return ALG_KEYSIG;
- if (STREQL(attr, "timesig_num")) // time signature numerator
+ if (STREQL(attr, "timesig_numi")) // time signature numerator
return ALG_TIMESIG_NUM;
- if (STREQL(attr, "timesig_den")) // time signature denominator
+ if (STREQL(attr, "timesig_deni")) // time signature denominator
return ALG_TIMESIG_DEN;
return ALG_OTHER;
}
@@ -1277,22 +1278,22 @@ void Alg_track::serialize(void **buffer, long *bytes)
//
// The format for a track is given within the Seq format above
assert(get_type() == 't');
- ser_buf.init_for_write();
+ ser_write_buf.init_for_write();
serialize_track();
- *buffer = ser_buf.to_heap(bytes);
+ *buffer = ser_write_buf.to_heap(bytes);
}
void Alg_seq::serialize(void **buffer, long *bytes)
{
assert(get_type() == 's');
- ser_buf.init_for_write();
+ ser_write_buf.init_for_write();
serialize_seq();
- *buffer = ser_buf.to_heap(bytes);
+ *buffer = ser_write_buf.to_heap(bytes);
}
-void Serial_buffer::check_buffer(long needed)
+void Serial_write_buffer::check_buffer(long needed)
{
if (len < (ptr - buffer) + needed) { // do we need more space?
long new_len = len * 2; // exponential growth is important
@@ -1301,9 +1302,11 @@ void Serial_buffer::check_buffer(long needed)
// make sure new_len is as big as needed
if (needed > new_len) new_len = needed;
char *new_buffer = new char[new_len]; // allocate space
- memcpy(new_buffer, buffer, len); // copy from old buffer
ptr = new_buffer + (ptr - buffer); // relocate ptr to new buffer
- delete buffer; // free old buffer
+ if (len > 0) { // we had a buffer already
+ memcpy(new_buffer, buffer, len); // copy from old buffer
+ delete buffer; // free old buffer
+ }
buffer = new_buffer; // update buffer information
len = new_len;
}
@@ -1316,38 +1319,38 @@ void Alg_seq::serialize_seq()
// we can easily compute how much buffer space we need until we
// get to tracks, so expand at least that much
long needed = 64 + 16 * time_map->beats.len + 24 * time_sig.length();
- ser_buf.check_buffer(needed);
- ser_buf.set_char('A');
- ser_buf.set_char('L');
- ser_buf.set_char('G');
- ser_buf.set_char('S');
- long length_offset = ser_buf.get_posn();
- ser_buf.set_int32(0); // leave room to come back and write length
- ser_buf.set_int32(channel_offset_per_track);
- ser_buf.set_int32(units_are_seconds);
- ser_buf.set_double(beat_dur);
- ser_buf.set_double(real_dur);
- ser_buf.set_double(time_map->last_tempo);
- ser_buf.set_int32(time_map->last_tempo_flag);
- ser_buf.set_int32(time_map->beats.len);
+ ser_write_buf.check_buffer(needed);
+ ser_write_buf.set_char('A');
+ ser_write_buf.set_char('L');
+ ser_write_buf.set_char('G');
+ ser_write_buf.set_char('S');
+ long length_offset = ser_write_buf.get_posn();
+ ser_write_buf.set_int32(0); // leave room to come back and write length
+ ser_write_buf.set_int32(channel_offset_per_track);
+ ser_write_buf.set_int32(units_are_seconds);
+ ser_write_buf.set_double(beat_dur);
+ ser_write_buf.set_double(real_dur);
+ ser_write_buf.set_double(time_map->last_tempo);
+ ser_write_buf.set_int32(time_map->last_tempo_flag);
+ ser_write_buf.set_int32(time_map->beats.len);
for (i = 0; i < time_map->beats.len; i++) {
- ser_buf.set_double(time_map->beats[i].time);
- ser_buf.set_double(time_map->beats[i].beat);
+ ser_write_buf.set_double(time_map->beats[i].time);
+ ser_write_buf.set_double(time_map->beats[i].beat);
}
- ser_buf.set_int32(time_sig.length());
- ser_buf.pad();
+ ser_write_buf.set_int32(time_sig.length());
+ ser_write_buf.pad();
for (i = 0; i < time_sig.length(); i++) {
- ser_buf.set_double(time_sig[i].beat);
- ser_buf.set_double(time_sig[i].num);
- ser_buf.set_double(time_sig[i].den);
+ ser_write_buf.set_double(time_sig[i].beat);
+ ser_write_buf.set_double(time_sig[i].num);
+ ser_write_buf.set_double(time_sig[i].den);
}
- ser_buf.set_int32(tracks());
- ser_buf.pad();
+ ser_write_buf.set_int32(tracks());
+ ser_write_buf.pad();
for (i = 0; i < tracks(); i++) {
track(i)->serialize_track();
}
// do not include ALGS, include padding at end
- ser_buf.store_long(length_offset, ser_buf.get_posn() - length_offset);
+ ser_write_buf.store_long(length_offset, ser_write_buf.get_posn() - length_offset);
}
@@ -1355,51 +1358,51 @@ void Alg_track::serialize_track()
{
// to simplify the code, copy from parameter addresses to locals
int j;
- ser_buf.check_buffer(32);
- ser_buf.set_char('A');
- ser_buf.set_char('L');
- ser_buf.set_char('G');
- ser_buf.set_char('T');
- long length_offset = ser_buf.get_posn(); // save location for track length
- ser_buf.set_int32(0); // room to write track length
- ser_buf.set_int32(units_are_seconds);
- ser_buf.set_double(beat_dur);
- ser_buf.set_double(real_dur);
- ser_buf.set_int32(len);
+ ser_write_buf.check_buffer(32);
+ ser_write_buf.set_char('A');
+ ser_write_buf.set_char('L');
+ ser_write_buf.set_char('G');
+ ser_write_buf.set_char('T');
+ long length_offset = ser_write_buf.get_posn(); // save location for track length
+ ser_write_buf.set_int32(0); // room to write track length
+ ser_write_buf.set_int32(units_are_seconds);
+ ser_write_buf.set_double(beat_dur);
+ ser_write_buf.set_double(real_dur);
+ ser_write_buf.set_int32(len);
for (j = 0; j < len; j++) {
- ser_buf.check_buffer(24);
+ ser_write_buf.check_buffer(24);
Alg_event *event = (*this)[j];
- ser_buf.set_int32(event->get_selected());
- ser_buf.set_int32(event->get_type());
- ser_buf.set_int32(event->get_identifier());
- ser_buf.set_int32(event->chan);
- ser_buf.set_double(event->time);
+ ser_write_buf.set_int32(event->get_selected());
+ ser_write_buf.set_int32(event->get_type());
+ ser_write_buf.set_int32(event->get_identifier());
+ ser_write_buf.set_int32(event->chan);
+ ser_write_buf.set_double(event->time);
if (event->is_note()) {
- ser_buf.check_buffer(20);
+ ser_write_buf.check_buffer(20);
Alg_note *note = (Alg_note *) event;
- ser_buf.set_float(note->pitch);
- ser_buf.set_float(note->loud);
- ser_buf.set_double(note->dur);
- long parm_num_offset = ser_buf.get_posn();
+ ser_write_buf.set_float(note->pitch);
+ ser_write_buf.set_float(note->loud);
+ ser_write_buf.set_double(note->dur);
+ long parm_num_offset = ser_write_buf.get_posn();
long parm_num = 0;
- ser_buf.set_int32(0); // placeholder for no. parameters
+ ser_write_buf.set_int32(0); // placeholder for no. parameters
Alg_parameters_ptr parms = note->parameters;
while (parms) {
serialize_parameter(&(parms->parm));
parms = parms->next;
parm_num++;
}
- ser_buf.store_long(parm_num_offset, parm_num);
+ ser_write_buf.store_long(parm_num_offset, parm_num);
} else {
assert(event->is_update());
Alg_update *update = (Alg_update *) event;
serialize_parameter(&(update->parameter));
}
- ser_buf.check_buffer(7); // maximum padding possible
- ser_buf.pad();
+ ser_write_buf.check_buffer(7); // maximum padding possible
+ ser_write_buf.pad();
}
// write length, not including ALGT, including padding at end
- ser_buf.store_long(length_offset, ser_buf.get_posn() - length_offset);
+ ser_write_buf.store_long(length_offset, ser_write_buf.get_posn() - length_offset);
}
@@ -1408,29 +1411,29 @@ void Alg_track::serialize_parameter(Alg_parameter *parm)
// add eight to account for name + zero end-of-string and the
// possibility of adding 7 padding bytes
long len = strlen(parm->attr_name()) + 8;
- ser_buf.check_buffer(len);
- ser_buf.set_string(parm->attr_name());
- ser_buf.pad();
+ ser_write_buf.check_buffer(len);
+ ser_write_buf.set_string(parm->attr_name());
+ ser_write_buf.pad();
switch (parm->attr_type()) {
case 'r':
- ser_buf.check_buffer(8);
- ser_buf.set_double(parm->r);
+ ser_write_buf.check_buffer(8);
+ ser_write_buf.set_double(parm->r);
break;
case 's':
- ser_buf.check_buffer(strlen(parm->s) + 1);
- ser_buf.set_string(parm->s);
+ ser_write_buf.check_buffer(strlen(parm->s) + 1);
+ ser_write_buf.set_string(parm->s);
break;
case 'i':
- ser_buf.check_buffer(4);
- ser_buf.set_int32(parm->i);
+ ser_write_buf.check_buffer(4);
+ ser_write_buf.set_int32(parm->i);
break;
case 'l':
- ser_buf.check_buffer(4);
- ser_buf.set_int32(parm->l);
+ ser_write_buf.check_buffer(4);
+ ser_write_buf.set_int32(parm->l);
break;
case 'a':
- ser_buf.check_buffer(strlen(parm->a) + 1);
- ser_buf.set_string(parm->a);
+ ser_write_buf.check_buffer(strlen(parm->a) + 1);
+ ser_write_buf.set_string(parm->a);
break;
}
}
@@ -1440,57 +1443,69 @@ void Alg_track::serialize_parameter(Alg_parameter *parm)
Alg_track *Alg_track::unserialize(void *buffer, long len)
{
assert(len > 8);
- ser_buf.init_for_read(buffer, len);
- bool alg = ser_buf.get_char() == 'A' &&
- ser_buf.get_char() == 'L' &&
- ser_buf.get_char() == 'G';
+ ser_read_buf.init_for_read(buffer, len);
+ bool alg = ser_read_buf.get_char() == 'A' &&
+ ser_read_buf.get_char() == 'L' &&
+ ser_read_buf.get_char() == 'G';
assert(alg);
- char c = ser_buf.get_char();
+ char c = ser_read_buf.get_char();
if (c == 'S') {
Alg_seq *seq = new Alg_seq;
+ ser_read_buf.unget_chars(4); // undo get_char() of A,L,G,S
seq->unserialize_seq();
return seq;
} else {
assert(c == 'T');
Alg_track *track = new Alg_track;
+ ser_read_buf.unget_chars(4); // undo get_char() of A,L,G,T
track->unserialize_track();
return track;
}
}
+#pragma warning(disable: 4800) // long to bool performance warning
+
+/* Note: this Alg_seq must have a default initialized Alg_time_map.
+ * It will be filled in with data from the ser_read_buf buffer.
+ */
void Alg_seq::unserialize_seq()
{
- ser_buf.check_input_buffer(28);
- long len = ser_buf.get_int32();
- assert(ser_buf.get_len() >= len);
- channel_offset_per_track = ser_buf.get_int32();
- units_are_seconds = (bool) ser_buf.get_int32();
- beat_dur = ser_buf.get_double();
- real_dur = ser_buf.get_double();
- time_map = new Alg_time_map();
- time_map->last_tempo = ser_buf.get_double();
- time_map->last_tempo_flag = (bool) ser_buf.get_int32();
- long beats = ser_buf.get_int32();
- ser_buf.check_input_buffer(beats * 16 + 4);
+ ser_read_buf.check_input_buffer(48);
+ bool algs = (ser_read_buf.get_char() == 'A') &&
+ (ser_read_buf.get_char() == 'L') &&
+ (ser_read_buf.get_char() == 'G') &&
+ (ser_read_buf.get_char() == 'S');
+ assert(algs);
+ long len = ser_read_buf.get_int32();
+ assert(ser_read_buf.get_len() >= len);
+ channel_offset_per_track = ser_read_buf.get_int32();
+ units_are_seconds = ser_read_buf.get_int32() != 0;
+ beat_dur = ser_read_buf.get_double();
+ real_dur = ser_read_buf.get_double();
+ // no need to allocate an Alg_time_map since it's done during initialization
+ time_map->last_tempo = ser_read_buf.get_double();
+ time_map->last_tempo_flag = ser_read_buf.get_int32() != 0;
+ long beats = ser_read_buf.get_int32();
+ ser_read_buf.check_input_buffer(beats * 16 + 4);
int i;
for (i = 0; i < beats; i++) {
- double time = ser_buf.get_double();
- double beat = ser_buf.get_double();
+ double time = ser_read_buf.get_double();
+ double beat = ser_read_buf.get_double();
time_map->insert_beat(time, beat);
// printf("time_map: %g, %g\n", time, beat);
}
- long time_sig_len = ser_buf.get_int32();
- ser_buf.get_pad();
- ser_buf.check_input_buffer(time_sig_len * 24 + 8);
+ long time_sig_len = ser_read_buf.get_int32();
+ ser_read_buf.get_pad();
+ ser_read_buf.check_input_buffer(time_sig_len * 24 + 8);
for (i = 0; i < time_sig_len; i++) {
- double beat = ser_buf.get_double();
- double num = ser_buf.get_double();
- double den = ser_buf.get_double();
+ double beat = ser_read_buf.get_double();
+ double num = ser_read_buf.get_double();
+ double den = ser_read_buf.get_double();
time_sig.insert(beat, num, den);
}
- long tracks_num = ser_buf.get_int32();
- ser_buf.get_pad();
+ long tracks_num = ser_read_buf.get_int32();
+ ser_read_buf.get_pad();
add_track(tracks_num - 1); // create tracks_num tracks
for (i = 0; i < tracks_num; i++) {
track(i)->unserialize_track();
@@ -1498,40 +1513,41 @@ void Alg_seq::unserialize_seq()
// assume seq started at beginning of buffer. len measures
// bytes after 'ALGS' header, so add 4 bytes and compare to
// current buffer position -- they should agree
- assert(ser_buf.get_posn() == len + 4);
+ assert(ser_read_buf.get_posn() == len + 4);
}
void Alg_track::unserialize_track()
{
- ser_buf.check_input_buffer(32);
- assert(ser_buf.get_char() == 'A');
- assert(ser_buf.get_char() == 'L');
- assert(ser_buf.get_char() == 'G');
- assert(ser_buf.get_char() == 'T');
- long offset = ser_buf.get_posn(); // stored length does not include 'ALGT'
- long bytes = ser_buf.get_int32();
- assert(bytes <= ser_buf.get_len() - offset);
- units_are_seconds = (bool) ser_buf.get_int32();
- beat_dur = ser_buf.get_double();
- real_dur = ser_buf.get_double();
- int event_count = ser_buf.get_int32();
+ ser_read_buf.check_input_buffer(32);
+ bool algt = (ser_read_buf.get_char() == 'A') &&
+ (ser_read_buf.get_char() == 'L') &&
+ (ser_read_buf.get_char() == 'G') &&
+ (ser_read_buf.get_char() == 'T');
+ assert(algt);
+ long offset = ser_read_buf.get_posn(); // stored length does not include 'ALGT'
+ long bytes = ser_read_buf.get_int32();
+ assert(bytes <= ser_read_buf.get_len() - offset);
+ units_are_seconds = (bool) ser_read_buf.get_int32();
+ beat_dur = ser_read_buf.get_double();
+ real_dur = ser_read_buf.get_double();
+ int event_count = ser_read_buf.get_int32();
for (int i = 0; i < event_count; i++) {
- ser_buf.check_input_buffer(24);
- long selected = ser_buf.get_int32();
- char type = (char) ser_buf.get_int32();
- long key = ser_buf.get_int32();
- long channel = ser_buf.get_int32();
- double time = ser_buf.get_double();
+ ser_read_buf.check_input_buffer(24);
+ long selected = ser_read_buf.get_int32();
+ char type = (char) ser_read_buf.get_int32();
+ long key = ser_read_buf.get_int32();
+ long channel = ser_read_buf.get_int32();
+ double time = ser_read_buf.get_double();
if (type == 'n') {
- ser_buf.check_input_buffer(20);
- float pitch = ser_buf.get_float();
- float loud = ser_buf.get_float();
- double dur = ser_buf.get_double();
+ ser_read_buf.check_input_buffer(20);
+ float pitch = ser_read_buf.get_float();
+ float loud = ser_read_buf.get_float();
+ double dur = ser_read_buf.get_double();
Alg_note *note =
create_note(time, channel, key, pitch, loud, dur);
- note->set_selected(selected);
- long param_num = ser_buf.get_int32();
+ note->set_selected(selected != 0);
+ long param_num = ser_read_buf.get_int32();
int j;
// this builds a list of parameters in the correct order
// (although order shouldn't matter)
@@ -1545,42 +1561,43 @@ void Alg_track::unserialize_track()
} else {
assert(type == 'u');
Alg_update *update = create_update(time, channel, key);
- update->set_selected(selected);
+ update->set_selected(selected != 0);
unserialize_parameter(&(update->parameter));
append(update);
}
- ser_buf.get_pad();
+ ser_read_buf.get_pad();
}
- assert(offset + bytes == ser_buf.get_posn());
+ assert(offset + bytes == ser_read_buf.get_posn());
}
void Alg_track::unserialize_parameter(Alg_parameter_ptr parm_ptr)
{
- char *attr = ser_buf.get_string();
+ char *attr = ser_read_buf.get_string();
parm_ptr->attr = symbol_table.insert_string(attr);
switch (parm_ptr->attr_type()) {
case 'r':
- ser_buf.check_input_buffer(8);
- parm_ptr->r = ser_buf.get_double();
+ ser_read_buf.check_input_buffer(8);
+ parm_ptr->r = ser_read_buf.get_double();
break;
case 's':
- parm_ptr->s = heapify(ser_buf.get_string());
+ parm_ptr->s = heapify(ser_read_buf.get_string());
break;
case 'i':
- ser_buf.check_input_buffer(4);
- parm_ptr->i = ser_buf.get_int32();
+ ser_read_buf.check_input_buffer(4);
+ parm_ptr->i = ser_read_buf.get_int32();
break;
case 'l':
- ser_buf.check_input_buffer(4);
- parm_ptr->l = (bool) ser_buf.get_int32();
+ ser_read_buf.check_input_buffer(4);
+ parm_ptr->l = ser_read_buf.get_int32() != 0;
break;
case 'a':
- parm_ptr->a = symbol_table.insert_attribute(ser_buf.get_string());
+ parm_ptr->a = symbol_table.insert_attribute(ser_read_buf.get_string());
break;
}
}
+#pragma warning(default: 4800)
void Alg_track::set_time_map(Alg_time_map *map)
{
@@ -2131,10 +2148,7 @@ void Alg_time_sigs::insert_beats(double beat, double len)
Alg_tracks::~Alg_tracks()
{
- // Alg_events objects (track data) are not deleted, only the array
- if (tracks) {
- delete[] tracks;
- }
+ reset();
}
@@ -2199,8 +2213,8 @@ void Alg_tracks::reset()
// all track events are incorporated into the seq,
// so all we need to delete are the arrays of pointers
for (int i = 0; i < len; i++) {
- printf("deleting track at %d (%x, this %x) = %x\n", i, &(tracks[i]),
- this, tracks[i]);
+ // printf("deleting track at %d (%x, this %x) = %x\n", i, &(tracks[i]),
+ // this, tracks[i]);
delete tracks[i];
}
if (tracks) delete [] tracks;
@@ -2210,6 +2224,126 @@ void Alg_tracks::reset()
}
+void Alg_iterator::expand_to(int new_max)
+{
+ maxlen = new_max;
+ Alg_pending_event_ptr new_pending_events = new Alg_pending_event[maxlen];
+ // now do copy
+ memcpy(new_pending_events, pending_events,
+ len * sizeof(Alg_pending_event));
+ if (pending_events) {
+ delete[] pending_events;
+ }
+ pending_events = new_pending_events;
+}
+
+
+void Alg_iterator::expand()
+{
+ maxlen = (maxlen + 5); // extra growth for small sizes
+ maxlen += (maxlen >> 2); // add 25%
+ expand_to(maxlen);
+}
+
+
+Alg_iterator::~Alg_iterator()
+{
+ if (pending_events) {
+ delete[] pending_events;
+ }
+}
+
+
+/* in the heap, the children of N are (N+1)*2 and (N+1)*2-1, so
+ * the parent of N is (N+1)/2-1. This would be easier if arrays
+ * were 1-based instead of 0-based
+ */
+#define HEAP_PARENT(loc) ((((loc) + 1) / 2) - 1)
+#define FIRST_CHILD(loc) (((loc) * 2) + 1)
+
+void Alg_iterator::show()
+{
+ for (int i = 0; i < len; i++) {
+ Alg_pending_event_ptr p = &(pending_events[i]);
+ printf(" %d: %p[%d] on %d\n", i, p->events, p->index, p->note_on);
+ }
+}
+
+
+bool Alg_iterator::earlier(int i, int j)
+// see if event i is earlier than event j
+{
+ Alg_pending_event_ptr p_i = &(pending_events[i]);
+ Alg_event_ptr e_i = (*(p_i->events))[p_i->index];
+ double t_i = (p_i->note_on ? e_i->time : e_i->get_end_time());
+
+ Alg_pending_event_ptr p_j = &(pending_events[j]);
+ Alg_event_ptr e_j = (*(p_j->events))[p_j->index];
+ double t_j = (p_j->note_on ? e_j->time : e_j->get_end_time());
+
+ if (t_i < t_j) return true;
+ // not sure if this case really exists or this is the best rule, but
+ // we want to give precedence to note-off events
+ else if (t_i == t_j && pending_events[j].note_on) return true;
+ return false;
+}
+
+
+void Alg_iterator::insert(Alg_events_ptr events, long index, bool note_on)
+{
+ if (len == maxlen) expand();
+ pending_events[len].events = events;
+ pending_events[len].index = index;
+ pending_events[len].note_on = note_on;
+ int loc = len;
+ int loc_parent = HEAP_PARENT(loc);
+ len++;
+ // sift up:
+ while (loc > 0 &&
+ earlier(loc, loc_parent)) {
+ // swap loc with loc_parent
+ Alg_pending_event temp = pending_events[loc];
+ pending_events[loc] = pending_events[loc_parent];
+ pending_events[loc_parent] = temp;
+ loc = loc_parent;
+ loc_parent = HEAP_PARENT(loc);
+ }
+ // printf("After insert:"); show();
+}
+
+bool Alg_iterator::remove_next(Alg_events_ptr &events, long &index,
+ bool ¬e_on)
+{
+ if (len == 0) return false; // empty!
+ events = pending_events[0].events;
+ index = pending_events[0].index;
+ note_on = pending_events[0].note_on;
+ len--;
+ pending_events[0] = pending_events[len];
+ // sift down
+ long loc = 0;
+ long loc_child = FIRST_CHILD(loc);
+ while (loc_child < len) {
+ if (loc_child + 1 < len) {
+ if (earlier(loc_child + 1, loc_child)) {
+ loc_child++;
+ }
+ }
+ if (earlier(loc_child, loc)) {
+ Alg_pending_event temp = pending_events[loc];
+ pending_events[loc] = pending_events[loc_child];
+ pending_events[loc_child] = temp;
+ loc = loc_child;
+ loc_child = FIRST_CHILD(loc);
+ } else {
+ loc_child = len;
+ }
+ }
+ // printf("After remove:"); show();
+ return true;
+}
+
+
Alg_seq::Alg_seq(const char *filename, bool smf)
{
basic_initialization();
@@ -2292,6 +2426,7 @@ Alg_track_ptr Alg_seq::track(int i)
return &(track_list[i]);
}
+#pragma warning(disable: 4715) // ok not to return a value here
Alg_event_ptr &Alg_seq::operator[](int i)
{
@@ -2308,6 +2443,7 @@ Alg_event_ptr &Alg_seq::operator[](int i)
}
assert(false); // out of bounds
}
+#pragma warning(default: 4715)
void Alg_seq::convert_to_beats()
@@ -2806,43 +2942,47 @@ void Alg_seq::set_events(Alg_event_ptr *events, long len, long max)
*/
-void Alg_seq::iteration_begin()
+void Alg_iterator::begin(bool note_off_flag)
{
// keep an array of indexes into tracks
- current = new long[track_list.length()];
+ printf("new pending\n");
int i;
- for (i = 0; i < track_list.length(); i++) {
- current[i] = 0;
+ for (i = 0; i < seq->track_list.length(); i++) {
+ if (seq->track_list[i].length() > 0) {
+ insert(&(seq->track_list[i]), 0, true);
+ }
}
}
-Alg_event_ptr Alg_seq::iteration_next()
+Alg_event_ptr Alg_iterator::next(bool *note_on)
// return the next event in time from any track
{
- long cur; // a track index
- // find lowest next time of any track:
- double next = 1000000.0;
- int i, track;
- for (i = 0; i < track_list.length(); i++) {
- Alg_track &tr = track_list[i];
- cur = current[i];
- if (cur < tr.length() && tr[cur]->time < next) {
- next = tr[cur]->time;
- track = i;
- }
- }
- if (next < 1000000.0) {
- return track_list[track][current[track]++];
- } else {
+ Alg_events_ptr events_ptr;
+ long index;
+ bool on;
+ if (!remove_next(events_ptr, index, on)) {
return NULL;
}
+ if (note_on) *note_on = on;
+ Alg_event_ptr event = (*events_ptr)[index];
+ if (on) {
+ if (note_off_flag && event->is_note()) {
+ // this was a note-on, so insert pending note-off
+ insert(events_ptr, index, false);
+ }
+ // for both notes and updates, insert next event (at index + 1)
+ index++;
+ if (index < events_ptr->length()) {
+ insert(events_ptr, index, true);
+ }
+ }
+ return event;
}
-void Alg_seq::iteration_end()
+void Alg_iterator::end()
{
- delete[] current;
}
@@ -2855,17 +2995,18 @@ void Alg_seq::merge_tracks()
}
// preallocate array for efficiency:
Alg_event_ptr *notes = new Alg_event_ptr[sum];
- iteration_begin();
+ Alg_iterator iterator(this, false);
+ iterator.begin();
long notes_index = 0;
Alg_event_ptr event;
- while (event = iteration_next()) {
+ while (event = iterator.next()) {
notes[notes_index++] = event;
}
track_list.reset(); // don't need them any more
add_track(0);
track(0)->set_events(notes, sum, sum);
- iteration_end();
+ iterator.end();
}
diff --git a/lib-src/portsmf/allegro.h b/lib-src/portsmf/allegro.h
index 27da9d3..a165c3a 100644
--- a/lib-src/portsmf/allegro.h
+++ b/lib-src/portsmf/allegro.h
@@ -79,6 +79,19 @@ public:
maxlen = len = 0;
atoms = NULL;
}
+ // Note: the code is possibly more correct and faster without the
+ // following destructor, which will only run after the program takes
+ // a normal exit. Cleaning up after the program exit slows down the exit,
+ // and will cause problems if any other destructor tries to reference an
+ // Alg_atom (which will now be freed). The advantage of this code is
+ // that Alg_atoms will not be reported as memory leaks by automation
+ // that doesn't know better. -RBD
+ virtual ~Alg_atoms() {
+ for (int i = 0; i < len; i++) {
+ delete atoms[i];
+ }
+ if (atoms) delete [] atoms;
+ }
// insert/lookup an atttribute
Alg_attribute insert_attribute(Alg_attribute attr);
// insert/lookup attribute by name (without prefixed type)
@@ -488,20 +501,72 @@ public:
} *Alg_time_map_ptr;
-typedef class Serial_buffer {
-private:
+// Serial_buffer is an abstract class with common elements of
+// Serial_read_buffer and Serial_write_buffer
+class Serial_buffer {
+ protected:
char *buffer;
char *ptr;
long len;
-public:
+ public:
Serial_buffer() {
buffer = NULL;
ptr = NULL;
len = 0;
}
- void init_for_write() { ptr = buffer; }
+ virtual ~Serial_buffer() { }
+
long get_posn() { return (long) (ptr - buffer); }
long get_len() { return len; }
+};
+
+
+typedef class Serial_read_buffer : public Serial_buffer {
+public:
+ // note that a Serial_read_buffer is initialized for reading by
+ // setting buffer, but it is not the Serial_read_buffer's responsibility
+ // to delete the buffer (owner might want to reuse it), so the destructor
+ // does nothing.
+ virtual ~Serial_read_buffer() { }
+#pragma warning(disable: 546) // cast to int is OK, we only want low 7 bits
+#pragma warning(disable: 4311) // type cast pointer to long warning
+ void get_pad() { while (((long) ptr) & 7) ptr++; }
+#pragma warning(default: 4311 546)
+ // Prepare to read n bytes from buf. The caller must manage buf: it is
+ // valid until reading is finished, and it is caller's responsibility
+ // to free buf when it is no longer needed.
+ void init_for_read(void *buf, long n) {
+ buffer = (char *) buf;
+ ptr = (char *) buf;
+ len = n;
+ }
+ char get_char() { return *ptr++; }
+ void unget_chars(int n) { ptr -= n; } // undo n get_char() calls
+ long get_int32() { long i = *((long *) ptr); ptr += 4; return i; }
+ float get_float() { float f = *((float *) ptr); ptr += 4; return f; }
+ double get_double() { double d = *((double *) ptr); ptr += sizeof(double);
+ return d; }
+ char *get_string() { char *s = ptr; char *fence = buffer + len;
+ assert(ptr < fence);
+ while (*ptr++) assert(ptr < fence);
+ get_pad();
+ return s; }
+ void check_input_buffer(long needed) {
+ assert(get_posn() + needed <= len); }
+} *Serial_read_buffer_ptr;
+
+
+typedef class Serial_write_buffer: public Serial_buffer {
+ public:
+ // Note: allegro.cpp declares one static instance of Serial_buffer to
+ // reduce large memory (re)allocations when serializing tracks for UNDO.
+ // This destructor will only run when the program exits, which will only
+ // add overhead to the exit process, but it will eliminate an incorrect
+ // report of memory leakage from automation that doesn't know better. -RBD
+ virtual ~Serial_write_buffer() {
+ if (buffer) delete [] buffer;
+ }
+ void init_for_write() { ptr = buffer; }
// store_long writes a long at a given offset
void store_long(long offset, long value) {
assert(offset <= get_posn() - 4);
@@ -515,38 +580,27 @@ public:
// two lots of brackets surpress a g++ warning, because this is an
// assignment operator inside a test.
while ((*ptr++ = *s++)) assert(ptr < fence);
+ // 4311 is type cast pointer to long warning
+ // 4312 is type cast long to pointer warning
+#pragma warning(disable: 4311 4312)
assert((char *)(((long) (ptr + 7)) & ~7) <= fence);
+#pragma warning(default: 4311 4312)
pad(); }
void set_int32(long v) { *((long *) ptr) = v; ptr += 4; }
void set_double(double v) { *((double *) ptr) = v; ptr += 8; }
void set_float(float v) { *((float *) ptr) = v; ptr += 4; }
void set_char(char v) { *ptr++ = v; }
+#pragma warning(disable: 546) // cast to int is OK, we only want low 7 bits
+#pragma warning(disable: 4311) // type cast pointer to long warning
void pad() { while (((long) ptr) & 7) set_char(0); }
+#pragma warning(default: 4311 546)
void *to_heap(long *len) {
*len = get_posn();
char *newbuf = new char[*len];
memcpy(newbuf, buffer, *len);
return newbuf;
}
- void init_for_read(void *buf, long n) {
- buffer = (char *) buf;
- ptr = (char *) buf;
- len = n;
- }
- char get_char() { return *ptr++; }
- long get_int32() { long i = *((long *) ptr); ptr += 4; return i; }
- float get_float() { float f = *((float *) ptr); ptr += 4; return f; }
- double get_double() { double d = *((double *) ptr); ptr += sizeof(double);
- return d; }
- char *get_string() { char *s = ptr; char *fence = buffer + len;
- assert(ptr < fence);
- while (*ptr++) assert(ptr < fence);
- get_pad();
- return s; }
- void get_pad() { while (((long) ptr) & 7) ptr++; }
- void check_input_buffer(long needed) {
- assert(get_posn() + needed <= len); }
-} *Serial_buffer_ptr;
+} *Serial_write_buffer_ptr;
typedef class Alg_seq *Alg_seq_ptr;
@@ -558,7 +612,8 @@ protected:
long get_int32(char **p, long *b);
double get_double(char **p, long *b);
float get_float(char **p, long *b);
- static Serial_buffer ser_buf;
+ static Serial_read_buffer ser_read_buf;
+ static Serial_write_buffer ser_write_buf;
void serialize_parameter(Alg_parameter *parm);
// *buffer_ptr points to binary data, bytes_ptr points to how many
// bytes have been used so far, len is length of binary data
@@ -581,7 +636,8 @@ public:
// copy constructor: event_list is copied, map is installed and referenced
Alg_track(Alg_event_list_ref event_list, Alg_time_map_ptr map,
bool units_are_seconds);
- virtual ~Alg_track() { set_time_map(NULL); }
+ virtual ~Alg_track() { // note: do not call set_time_map(NULL)!
+ if (time_map) time_map->dereference(); time_map = NULL; }
// Returns a buffer containing a serialization of the
// file. It will be an ASCII representation unless text is true.
@@ -816,20 +872,65 @@ public:
typedef enum {
alg_no_error = 0, // no error reading Allegro or MIDI file
alg_error_open = -800, // could not open Allegro or MIDI file
- alg_error_syntax // something found in the file that could not be parsed;
- // generally you should ignore syntax errors or look at the printed error messages
- // because there are some things in standard midi files that we do not handle;
- // (maybe we should only set alg_error_syntax when there is a real problem with
- // the file as opposed to when there is some warning message for the user)
+ alg_error_syntax // something found in the file that could not be parsed;
+ // generally you should ignore syntax errors or look at the printed error
+ // messages because there are some things in standard midi files that we do
+ // not handle; (maybe we should only set alg_error_syntax when there is a
+ // real problem with the file as opposed to when there is some warning
+ // message for the user)
} Alg_error;
+typedef struct Alg_pending_event {
+ Alg_events *events; // the array of events
+ long index; // offset of this event
+ bool note_on; // is this a note-on or a note-off (if applicable)?
+} *Alg_pending_event_ptr;
+
+typedef class Alg_iterator {
+private:
+ long maxlen;
+ void expand();
+ void expand_to(int new_max);
+ long len;
+ Alg_seq_ptr seq;
+ Alg_pending_event *pending_events;
+
+ void show();
+ bool earlier(int i, int j);
+ void insert(Alg_events_ptr events, long index, bool note_on);
+ bool remove_next(Alg_events_ptr &events, long &index, bool ¬e_on);
+public:
+ bool note_off_flag; // remembers if we are iterating over note-off
+ // events as well as note-on and update events
+ long length() { return len; }
+ Alg_iterator(Alg_seq_ptr s, bool note_off) {
+ seq = s;
+ note_off_flag = note_off;
+ maxlen = len = 0;
+ pending_events = NULL;
+ }
+ ~Alg_iterator();
+ // Prepare to enumerate events in order. If note_off_flag is true, then
+ // iteration_next will merge note-off events into the sequence.
+ void begin(bool note_off_flag = false);
+ // return next event (or NULL). If iteration_begin was called with
+ // note_off_flag = true, and if note_on is not NULL, then *note_on
+ // is set to true when the result value represents a note-on or update.
+ // (With note_off_flag, each Alg_note event is returned twice, once
+ // at the note-on time, with *note_on == true, and once at the note-off
+ // time, with *note_on == false
+ Alg_event_ptr next(bool *note_on = NULL);
+ void end(); // clean up after enumerating events
+} *Alg_iterator_ptr;
+
+
// An Alg_seq is an array of Alg_events, each a sequence of Alg_event,
// with a tempo map and a sequence of time signatures
//
typedef class Alg_seq : public Alg_track {
protected:
- long *current; // array of indexes used by iteration methods
+ Alg_iterator_ptr pending; // iterator used internally by Alg_seq methods
void serialize_seq();
Alg_error error; // error code set by file readers
// an internal function used for writing Allegro track names
@@ -856,7 +957,7 @@ public:
void seq_from_track(Alg_track_ref tr);
Alg_seq(std::istream &file, bool smf); // create from file
Alg_seq(const char *filename, bool smf); // create from filename
- ~Alg_seq();
+ virtual ~Alg_seq();
int get_read_error() { return error; }
void serialize(void **buffer, long *bytes);
void copy_time_sigs_to(Alg_seq *dest); // a utility function
@@ -871,7 +972,7 @@ public:
void write(std::ostream &file, bool in_secs);
// returns true on success
bool write(const char *filename);
- void smf_write(std::ofstream &file);
+ void smf_write(std::ostream &file);
bool smf_write(const char *filename);
// Returns the number of tracks
@@ -925,9 +1026,6 @@ public:
double *num, double *den);
// void set_events(Alg_event_ptr *events, long len, long max);
void merge_tracks(); // move all track data into one track
- void iteration_begin(); // prepare to enumerate events in order
- Alg_event_ptr iteration_next(); // return next event (or NULL)
- void iteration_end(); // clean up after enumerating events
} *Alg_seq_ptr, &Alg_seq_ref;
diff --git a/lib-src/portsmf/allegrord.cpp b/lib-src/portsmf/allegrord.cpp
index a6c17c0..6a80f21 100644
--- a/lib-src/portsmf/allegrord.cpp
+++ b/lib-src/portsmf/allegrord.cpp
@@ -262,7 +262,7 @@ bool Alg_reader::parse()
parse_error(field, 0, "Dur specified twice");
} else {
// prepend 'U' to field, copy EOS too
- field.insert(0, 1, 'U');
+ field.insert((unsigned int) 0, 1, 'U');
dur = parse_dur(field, time);
dur_flag = true;
}
@@ -271,7 +271,7 @@ bool Alg_reader::parse()
parse_error(field, 0, "Pitch specified twice");
} else {
// prepend 'P' to field
- field.insert(0, 1, 'P');
+ field.insert((unsigned int) 0, 1, 'P');
new_pitch = parse_pitch(field);
new_pitch_flag = true;
}
@@ -346,8 +346,8 @@ bool Alg_reader::parse()
note_ptr->time = time;
note_ptr->dur = dur;
note_ptr->set_identifier(key);
- note_ptr->pitch = pitch;
- note_ptr->loud = loud;
+ note_ptr->pitch = (float) pitch;
+ note_ptr->loud = (float) loud;
note_ptr->parameters = attributes;
seq->add_event(note_ptr, track_num); // sort later
if (seq->get_real_dur() < (time + dur)) seq->set_real_dur(time + dur);
diff --git a/lib-src/portsmf/allegrosmfrd.cpp b/lib-src/portsmf/allegrosmfrd.cpp
index 257cb94..38ea76a 100644
--- a/lib-src/portsmf/allegrosmfrd.cpp
+++ b/lib-src/portsmf/allegrosmfrd.cpp
@@ -13,13 +13,13 @@
using namespace std;
-typedef class Alg_pending {
+typedef class Alg_note_list {
public:
Alg_note_ptr note;
- class Alg_pending *next;
- Alg_pending(Alg_note_ptr n, class Alg_pending *list) {
+ class Alg_note_list *next;
+ Alg_note_list(Alg_note_ptr n, class Alg_note_list *list) {
note = n; next = list; }
-} *Alg_pending_ptr;
+} *Alg_note_list_ptr;
class Alg_midifile_reader: public Midifile_reader {
@@ -27,7 +27,7 @@ public:
istream *file;
Alg_seq_ptr seq;
int divisions;
- Alg_pending_ptr pending;
+ Alg_note_list_ptr note_list;
Alg_track_ptr track;
int track_number; // the number of the (current) track
// chan is actual_channel + channel_offset_per_track * track_num +
@@ -41,7 +41,7 @@ public:
Alg_midifile_reader(istream &f, Alg_seq_ptr new_seq) {
file = &f;
- pending = NULL;
+ note_list = NULL;
seq = new_seq;
channel_offset_per_track = 0;
channel_offset_per_port = 16;
@@ -83,25 +83,25 @@ protected:
void Mf_pitchbend(int,int,int);
void Mf_program(int,int);
void Mf_chanpressure(int,int);
- void binary_msg(int len, char *msg, const char *attr_string);
- void Mf_sysex(int,char*);
- void Mf_arbitrary(int,char*);
- void Mf_metamisc(int,int,char*);
+ void binary_msg(int len, unsigned char *msg, const char *attr_string);
+ void Mf_sysex(int,unsigned char*);
+ void Mf_arbitrary(int,unsigned char*);
+ void Mf_metamisc(int,int,unsigned char*);
void Mf_seqnum(int);
void Mf_smpte(int,int,int,int,int);
void Mf_timesig(int,int,int,int);
void Mf_tempo(int);
void Mf_keysig(int,int);
- void Mf_sqspecific(int,char*);
- void Mf_text(int,int,char*);
+ void Mf_sqspecific(int,unsigned char*);
+ void Mf_text(int,int,unsigned char*);
};
Alg_midifile_reader::~Alg_midifile_reader()
{
- while (pending) {
- Alg_pending_ptr to_be_freed = pending;
- pending = pending->next;
+ while (note_list) {
+ Alg_note_list_ptr to_be_freed = note_list;
+ note_list = note_list->next;
delete to_be_freed;
}
finalize(); // free Mf reader memory
@@ -179,7 +179,9 @@ void Alg_midifile_reader::Mf_header(int format, int ntrks, int division)
{
if (format > 1) {
char msg[80];
+#pragma warning(disable: 4996) // msg is long enough
sprintf(msg, "file format %d not implemented", format);
+#pragma warning(default: 4996)
Mf_error(msg);
}
divisions = division;
@@ -201,7 +203,7 @@ void Alg_midifile_reader::Mf_on(int chan, int key, int vel)
return;
}
Alg_note_ptr note = new Alg_note();
- pending = new Alg_pending(note, pending);
+ note_list = new Alg_note_list(note, note_list);
/* trace("on: %d at %g\n", key, get_time()); */
note->time = get_time();
note->chan = chan + channel_offset + port * channel_offset_per_port;
@@ -217,14 +219,14 @@ void Alg_midifile_reader::Mf_on(int chan, int key, int vel)
void Alg_midifile_reader::Mf_off(int chan, int key, int vel)
{
double time = get_time();
- Alg_pending_ptr *p = &pending;
+ Alg_note_list_ptr *p = ¬e_list;
while (*p) {
if ((*p)->note->get_identifier() == key &&
(*p)->note->chan ==
chan + channel_offset + port * channel_offset_per_port) {
(*p)->note->dur = time - (*p)->note->time;
// trace("updated %d dur %g\n", (*p)->note->key, (*p)->note->dur);
- Alg_pending_ptr to_be_freed = *p;
+ Alg_note_list_ptr to_be_freed = *p;
*p = to_be_freed->next;
delete to_be_freed;
} else {
@@ -266,7 +268,9 @@ void Alg_midifile_reader::Mf_controller(int chan, int control, int val)
{
Alg_parameter parameter;
char name[32];
+#pragma warning(disable: 4996) // name is long enough
sprintf(name, "control%dr", control);
+#pragma warning(default: 4996)
parameter.set_attr(symbol_table.insert_string(name));
parameter.r = val / 127.0;
update(chan, -1, ¶meter);
@@ -304,13 +308,15 @@ void Alg_midifile_reader::Mf_chanpressure(int chan, int val)
}
-void Alg_midifile_reader::binary_msg(int len, char *msg,
+void Alg_midifile_reader::binary_msg(int len, unsigned char *msg,
const char *attr_string)
{
Alg_parameter parameter;
char *hexstr = new char[len * 2 + 1];
for (int i = 0; i < len; i++) {
+#pragma warning(disable: 4996) // hexstr is long enough
sprintf(hexstr + 2 * i, "%02x", (0xFF & msg[i]));
+#pragma warning(default: 4996)
}
parameter.s = hexstr;
parameter.set_attr(symbol_table.insert_string(attr_string));
@@ -318,23 +324,25 @@ void Alg_midifile_reader::binary_msg(int len, char *msg,
}
-void Alg_midifile_reader::Mf_sysex(int len, char *msg)
+void Alg_midifile_reader::Mf_sysex(int len, unsigned char *msg)
{
// sysex messages become updates with attribute sysexs and a hex string
binary_msg(len, msg, "sysexs");
}
-void Alg_midifile_reader::Mf_arbitrary(int len, char *msg)
+void Alg_midifile_reader::Mf_arbitrary(int len, unsigned char *msg)
{
Mf_error("arbitrary data ignored");
}
-void Alg_midifile_reader::Mf_metamisc(int type, int len, char *msg)
+void Alg_midifile_reader::Mf_metamisc(int type, int len, unsigned char *msg)
{
char text[128];
+#pragma warning(disable: 4996) // text is long enough
sprintf(text, "metamsic data, type 0x%x, ignored", type);
+#pragma warning(default: 4996)
Mf_error(text);
}
@@ -355,8 +363,10 @@ void Alg_midifile_reader::Mf_smpte(int hours, int mins, int secs,
char text[32];
int fps = (hours >> 6) & 3;
hours &= 0x1F;
+#pragma warning(disable: 4996) // text is long enough
sprintf(text, "%sfps:%02dh:%02dm:%02ds:%02d.%02df",
fpsstr[fps], hours, mins, secs, frames, subframes);
+#pragma warning(default: 4996)
Alg_parameter smpteoffset;
smpteoffset.s = heapify(text);
smpteoffset.set_attr(symbol_table.insert_string("smpteoffsets"));
@@ -398,7 +408,7 @@ void Alg_midifile_reader::Mf_keysig(int key, int mode)
}
-void Alg_midifile_reader::Mf_sqspecific(int len, char *msg)
+void Alg_midifile_reader::Mf_sqspecific(int len, unsigned char *msg)
{
// sequencer specific messages become updates with attribute sqspecifics
// and a hex string for the value
@@ -406,7 +416,7 @@ void Alg_midifile_reader::Mf_sqspecific(int len, char *msg)
}
-char *heapify2(int len, char *s)
+char *heapify2(int len, unsigned char *s)
{
char *h = new char[len + 1];
memcpy(h, s, len);
@@ -415,7 +425,7 @@ char *heapify2(int len, char *s)
}
-void Alg_midifile_reader::Mf_text(int type, int len, char *msg)
+void Alg_midifile_reader::Mf_text(int type, int len, unsigned char *msg)
{
Alg_parameter text;
text.s = heapify2(len, msg);
diff --git a/lib-src/portsmf/allegrosmfwr.cpp b/lib-src/portsmf/allegrosmfwr.cpp
index 796cdce..9edfe23 100644
--- a/lib-src/portsmf/allegrosmfwr.cpp
+++ b/lib-src/portsmf/allegrosmfwr.cpp
@@ -34,7 +34,7 @@ public:
// chan is actual_channel + channels_per_track * track_number
// default is 100, set this to 0 to merge all tracks to 16 channels
- void write(ofstream &file /* , midiFileFormat = 1 */);
+ void write(ostream &file /* , midiFileFormat = 1 */);
private:
long previous_divs; // time in ticks of most recently written event
@@ -162,7 +162,7 @@ void Alg_smf_write::write_note(Alg_note_ptr note, bool on)
//printf("deltaDivisions: %d, beats elapsed: %g, on? %c\n", deltaDivisions, note->time, on);
- char chan = (note->chan & 15);
+ char chan = char(note->chan & 15);
int pitch = int(note->pitch + 0.5);
if (pitch < 0) {
pitch = pitch % 12;
@@ -184,8 +184,8 @@ void Alg_smf_write::write_midi_channel_prefix(Alg_update_ptr update)
{
if (update->chan >= 0) { // write MIDI Channel Prefix
write_delta(update->time);
- out_file->put(0xFF); // Meta Event
- out_file->put(0x20); // Type code for MIDI Channel Prefix
+ out_file->put('\xFF'); // Meta Event
+ out_file->put('\x20'); // Type code for MIDI Channel Prefix
out_file->put(1); // length
out_file->put(to_midi_channel(update->chan));
// one thing odd about the Std MIDI File spec is that once
@@ -201,7 +201,7 @@ void Alg_smf_write::write_text(Alg_update_ptr update, char type)
{
write_midi_channel_prefix(update);
write_delta(update->time);
- out_file->put(0xFF);
+ out_file->put('\xFF');
out_file->put(type);
out_file->put((char) strlen(update->parameter.s));
*out_file << update->parameter.s;
@@ -212,8 +212,8 @@ void Alg_smf_write::write_smpteoffset(Alg_update_ptr update, char *s)
{
write_midi_channel_prefix(update);
write_delta(update->time);
- out_file->put(0xFF); // meta event
- out_file->put(0x54); // smpte offset type code
+ out_file->put('\xFF'); // meta event
+ out_file->put('\x54'); // smpte offset type code
out_file->put(5); // length
for (int i = 0; i < 5; i++) *out_file << s[i];
}
@@ -322,7 +322,7 @@ void Alg_smf_write::write_update(Alg_update_ptr update)
update->parameter.attr_type() == 's') {
char *s = update->parameter.s;
write_delta(update->time);
- out_file->put(0xFF);
+ out_file->put('\xFF');
write_binary(0x7F, s);
/****Text Events****/
@@ -390,8 +390,8 @@ void Alg_smf_write::write_update(Alg_update_ptr update)
}
if (keysig != -99 && keysig_mode) { // write when both are defined
write_delta(keysig_when);
- out_file->put(0xFF);
- out_file->put(0x59);
+ out_file->put('\xFF');
+ out_file->put('\x59');
out_file->put(2);
// mask off high bits so that this value appears to be positive
// i.e. -1 -> 0xFF (otherwise, write_data will clip -1 to 0)
@@ -482,9 +482,9 @@ void Alg_smf_write::write_tempo(int divs, int tempo)
// printf("Inserting tempo %f after %f clocks.\n", tempo, delta);
write_varinum(divs - previous_divs);
previous_divs = divs;
- out_file->put(0xFF);
- out_file->put(0x51);
- out_file->put(0x03);
+ out_file->put('\xFF');
+ out_file->put('\x51');
+ out_file->put('\x03');
write_24bit((int)tempo);
}
@@ -515,9 +515,9 @@ void Alg_smf_write::write_time_signature(int i)
// write the time signature
long divs = ROUND(ts[i].beat * division);
write_varinum(divs - previous_divs);
- out_file->put(0xFF);
- out_file->put(0x58); // time signature
- out_file->put(4); // length of message
+ out_file->put('\xFF');
+ out_file->put('\x58'); // time signature
+ out_file->put('\x04'); // length of message
out_file->put(ROUND(ts[i].num));
int den = ROUND(ts[i].den);
int den_byte = 0;
@@ -532,7 +532,7 @@ void Alg_smf_write::write_time_signature(int i)
-void Alg_smf_write::write(ofstream &file)
+void Alg_smf_write::write(ostream &file)
{
int track_len_offset;
int track_end_offset;
@@ -564,9 +564,9 @@ void Alg_smf_write::write(ofstream &file)
// End of track event
write_varinum(0); // delta time
- out_file->put(0xFF);
- out_file->put(0x2F);
- out_file->put(0x00);
+ out_file->put('\xFF');
+ out_file->put('\x2F');
+ out_file->put('\x00');
// Go back and write in the length of the track
track_end_offset = out_file->tellp();
@@ -632,7 +632,7 @@ void Alg_smf_write::write_varinum(int value)
}
-void Alg_seq::smf_write(ofstream &file)
+void Alg_seq::smf_write(ostream &file)
{
Alg_smf_write writer(this);
writer.write(file);
diff --git a/lib-src/portsmf/configure b/lib-src/portsmf/configure
old mode 100644
new mode 100755
index c252646..ceb73e8
--- a/lib-src/portsmf/configure
+++ b/lib-src/portsmf/configure
@@ -7547,27 +7547,28 @@ $as_echo "$as_me: executing $ac_file commands" >&6;}
case $ac_file$ac_mode in
- "depfiles":C) test x"$AMDEP_TRUE" != x"" || # Autoconf 2.62 quotes --file arguments for eval, but not when files
-# are listed without --file. Let's play safe and only enable the eval
-# if we detect the quoting.
-case $CONFIG_FILES in
-*\'*) eval set x "$CONFIG_FILES" ;;
-*) set x $CONFIG_FILES ;;
-esac
-shift
-for mf
-do
- # Strip MF so we end up with the name of the file.
- mf=`echo "$mf" | sed -e 's/:.*$//'`
- # Check whether this is an Automake generated Makefile or not.
- # We used to match only the files named `Makefile.in', but
- # some people rename them; so instead we look at the file content.
- # Grep'ing the first line is not enough: some people post-process
- # each Makefile.in and add a new line on top of each file to say so.
- # Grep'ing the whole file is not good either: AIX grep has a line
- # limit of 2048, but all sed's we know have understand at least 4000.
- if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
- dirpart=`$as_dirname -- "$mf" ||
+ "depfiles":C) test x"$AMDEP_TRUE" != x"" || {
+ # Autoconf 2.62 quotes --file arguments for eval, but not when files
+ # are listed without --file. Let's play safe and only enable the eval
+ # if we detect the quoting.
+ case $CONFIG_FILES in
+ *\'*) eval set x "$CONFIG_FILES" ;;
+ *) set x $CONFIG_FILES ;;
+ esac
+ shift
+ for mf
+ do
+ # Strip MF so we end up with the name of the file.
+ mf=`echo "$mf" | sed -e 's/:.*$//'`
+ # Check whether this is an Automake generated Makefile or not.
+ # We used to match only the files named `Makefile.in', but
+ # some people rename them; so instead we look at the file content.
+ # Grep'ing the first line is not enough: some people post-process
+ # each Makefile.in and add a new line on top of each file to say so.
+ # Grep'ing the whole file is not good either: AIX grep has a line
+ # limit of 2048, but all sed's we know have understand at least 4000.
+ if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
+ dirpart=`$as_dirname -- "$mf" ||
$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
X"$mf" : 'X\(//\)[^/]' \| \
X"$mf" : 'X\(//\)$' \| \
@@ -7590,28 +7591,28 @@ $as_echo X"$mf" |
q
}
s/.*/./; q'`
- else
- continue
- fi
- # Extract the definition of DEPDIR, am__include, and am__quote
- # from the Makefile without running `make'.
- DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
- test -z "$DEPDIR" && continue
- am__include=`sed -n 's/^am__include = //p' < "$mf"`
- test -z "am__include" && continue
- am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
- # When using ansi2knr, U may be empty or an underscore; expand it
- U=`sed -n 's/^U = //p' < "$mf"`
- # Find all dependency output files, they are included files with
- # $(DEPDIR) in their names. We invoke sed twice because it is the
- # simplest approach to changing $(DEPDIR) to its actual value in the
- # expansion.
- for file in `sed -n "
- s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
- sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
- # Make sure the directory exists.
- test -f "$dirpart/$file" && continue
- fdir=`$as_dirname -- "$file" ||
+ else
+ continue
+ fi
+ # Extract the definition of DEPDIR, am__include, and am__quote
+ # from the Makefile without running `make'.
+ DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
+ test -z "$DEPDIR" && continue
+ am__include=`sed -n 's/^am__include = //p' < "$mf"`
+ test -z "am__include" && continue
+ am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
+ # When using ansi2knr, U may be empty or an underscore; expand it
+ U=`sed -n 's/^U = //p' < "$mf"`
+ # Find all dependency output files, they are included files with
+ # $(DEPDIR) in their names. We invoke sed twice because it is the
+ # simplest approach to changing $(DEPDIR) to its actual value in the
+ # expansion.
+ for file in `sed -n "
+ s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
+ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
+ # Make sure the directory exists.
+ test -f "$dirpart/$file" && continue
+ fdir=`$as_dirname -- "$file" ||
$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
X"$file" : 'X\(//\)[^/]' \| \
X"$file" : 'X\(//\)$' \| \
@@ -7634,7 +7635,7 @@ $as_echo X"$file" |
q
}
s/.*/./; q'`
- { as_dir=$dirpart/$fdir
+ { as_dir=$dirpart/$fdir
case $as_dir in #(
-*) as_dir=./$as_dir;;
esac
@@ -7675,10 +7676,11 @@ $as_echo X"$as_dir" |
} || test -d "$as_dir" || { { $as_echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5
$as_echo "$as_me: error: cannot create directory $as_dir" >&2;}
{ (exit 1); exit 1; }; }; }
- # echo "creating $dirpart/$file"
- echo '# dummy' > "$dirpart/$file"
+ # echo "creating $dirpart/$file"
+ echo '# dummy' > "$dirpart/$file"
+ done
done
-done
+}
;;
esac
diff --git a/lib-src/portsmf/mfmidi.cpp b/lib-src/portsmf/mfmidi.cpp
index 5647ac3..6aa2529 100644
--- a/lib-src/portsmf/mfmidi.cpp
+++ b/lib-src/portsmf/mfmidi.cpp
@@ -13,6 +13,7 @@
#include "stdio.h"
#include "mfmidi.h"
#include "string.h"
+#include "assert.h"
#define MIDIFILE_ERROR -1
@@ -38,6 +39,7 @@ int Midifile_reader::readmt(char *s, int skip)
/* read through the "MThd" or "MTrk" header string */
/* if skip == 1, we attempt to skip initial garbage. */
{
+ assert(strlen(s) == 4); // must be "MThd" or "MTrk"
int nread = 0;
char b[4];
char buff[32];
@@ -66,8 +68,10 @@ int Midifile_reader::readmt(char *s, int skip)
goto retry;
}
err:
+#pragma warning(disable: 4996) // strcpy is safe since strings have known lengths
(void) strcpy(buff,errmsg);
(void) strcat(buff,s);
+#pragma warning(default: 4996) // turn it back on
mferror(buff);
return(0);
}
@@ -189,7 +193,7 @@ void Midifile_reader::readtrack()
msginit();
while ( Mf_toberead > lookfor ) {
- char c = egetc();
+ unsigned char c = egetc();
if (midifile_error) return;
msgadd(c);
}
@@ -253,15 +257,17 @@ void Midifile_reader::readtrack()
void Midifile_reader::badbyte(int c)
{
char buff[32];
-
+#pragma warning(disable: 4996) // safe in this case
(void) sprintf(buff,"unexpected byte: 0x%02x",c);
+#pragma warning(default: 4996)
mferror(buff);
}
void Midifile_reader::metaevent(int type)
{
int leng = msgleng();
- char *m = msg();
+ // made this unsigned to avoid sign extend
+ unsigned char *m = msg();
switch ( type ) {
case 0x00:
@@ -444,7 +450,7 @@ void Midifile_reader::msginit()
Msgindex = 0;
}
-char *Midifile_reader::msg()
+unsigned char *Midifile_reader::msg()
{
return(Msgbuff);
}
@@ -464,21 +470,16 @@ void Midifile_reader::msgadd(int c)
void Midifile_reader::msgenlarge()
{
- char *newmess;
- char *oldmess = Msgbuff;
+ unsigned char *newmess;
+ unsigned char *oldmess = Msgbuff;
int oldleng = Msgsize;
Msgsize += MSGINCREMENT;
- newmess = (char *) Mf_malloc((sizeof(char) * Msgsize) );
+ newmess = (unsigned char *) Mf_malloc((sizeof(unsigned char) * Msgsize) );
/* copy old message into larger new one */
if ( oldmess != 0 ) {
- register char *p = newmess;
- register char *q = oldmess;
- register char *endq = &oldmess[oldleng];
-
- for ( ; q!=endq ; p++,q++ )
- *p = *q;
+ memcpy(newmess, oldmess, oldleng);
Mf_free(oldmess, oldleng);
}
Msgbuff = newmess;
diff --git a/lib-src/portsmf/mfmidi.h b/lib-src/portsmf/mfmidi.h
index b9c8ec2..a7f5c50 100644
--- a/lib-src/portsmf/mfmidi.h
+++ b/lib-src/portsmf/mfmidi.h
@@ -55,16 +55,16 @@ protected:
virtual void Mf_pitchbend(int,int,int) = 0;
virtual void Mf_program(int,int) = 0;
virtual void Mf_chanpressure(int,int) = 0;
- virtual void Mf_sysex(int,char*) = 0;
- virtual void Mf_arbitrary(int,char*) = 0;
- virtual void Mf_metamisc(int,int,char*) = 0;
+ virtual void Mf_sysex(int,unsigned char*) = 0;
+ virtual void Mf_arbitrary(int,unsigned char*) = 0;
+ virtual void Mf_metamisc(int,int,unsigned char*) = 0;
virtual void Mf_seqnum(int) = 0;
virtual void Mf_smpte(int,int,int,int,int) = 0;
virtual void Mf_timesig(int,int,int,int) = 0;
virtual void Mf_tempo(int) = 0;
virtual void Mf_keysig(int,int) = 0;
- virtual void Mf_sqspecific(int,char*) = 0;
- virtual void Mf_text(int,int,char*) = 0;
+ virtual void Mf_sqspecific(int,unsigned char*) = 0;
+ virtual void Mf_text(int,int,unsigned char*) = 0;
private:
long Mf_toberead;
@@ -73,7 +73,7 @@ private:
long read32bit();
int read16bit();
void msgenlarge();
- char *msg();
+ unsigned char *msg();
int readheader();
void readtrack();
void sysex();
@@ -90,7 +90,7 @@ private:
void msgadd(int);
void chanmessage(int,int,int);
- char *Msgbuff;
+ unsigned char *Msgbuff;
long Msgsize;
long Msgindex;
};
diff --git a/lib-src/portsmf/portsmf.vcproj b/lib-src/portsmf/portsmf.vcproj
index 9e9bde2..8f6d864 100644
--- a/lib-src/portsmf/portsmf.vcproj
+++ b/lib-src/portsmf/portsmf.vcproj
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
- Version="8.00"
+ Version="9.00"
Name="portsmf"
ProjectGUID="{D035BCF8-CF15-4456-A4E1-C7E6ACD79346}"
RootNamespace="allegro"
Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
@@ -46,7 +47,7 @@
RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="0"
- Detect64BitPortabilityProblems="true"
+ Detect64BitPortabilityProblems="false"
DebugInformationFormat="4"
/>
<Tool
@@ -103,10 +104,10 @@
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
- RuntimeLibrary="2"
+ RuntimeLibrary="0"
UsePrecompiledHeader="0"
WarningLevel="3"
- Detect64BitPortabilityProblems="true"
+ Detect64BitPortabilityProblems="false"
DebugInformationFormat="3"
/>
<Tool
diff --git a/lib-src/portsmf/trace.cpp b/lib-src/portsmf/trace.cpp
index f6f75e2..5070753 100644
--- a/lib-src/portsmf/trace.cpp
+++ b/lib-src/portsmf/trace.cpp
@@ -15,7 +15,7 @@ void trace(char *format, ...)
char msg[256];
va_list args;
va_start(args, format);
- _vsnprintf(msg, 256, format, args);
+ _vsnprintf_s(msg, 256, _TRUNCATE, format, args);
va_end(args);
#ifdef _DEBUG
_CrtDbgReport(_CRT_WARN, NULL, NULL, NULL, msg);
diff --git a/lib-src/sbsms/config/README.TXT b/lib-src/sbsms/config/README.TXT
deleted file mode 100644
index 7c4f6e4..0000000
--- a/lib-src/sbsms/config/README.TXT
+++ /dev/null
@@ -1,3 +0,0 @@
-Files in this directory are used by GNU autoconf/automake system.
-These files aren't used/needed in the Windows environment.
-
diff --git a/lib-src/sbsms/config/am_include.mk b/lib-src/sbsms/config/am_include.mk
deleted file mode 100644
index 738d5c2..0000000
--- a/lib-src/sbsms/config/am_include.mk
+++ /dev/null
@@ -1,51 +0,0 @@
-## vim:tw=78
-## Process this file with automake to create Makefile.in
-##
-## $Id: am_include.mk,v 1.1 2008/11/25 06:45:46 otey Exp $
-##
-## Copyright (C) 2003 - David W. Durham
-##
-## This file is part of SoundTouch, an audio processing library for pitch/time adjustments
-##
-## SoundTouch 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.
-##
-## SoundTouch 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., 59 Temple
-## Place - Suite 330, Boston, MA 02111-1307, USA
-
-## These are common definitions used in all Makefiles
-## It is actually included when a makefile.am is coverted to Makefile.in
-## by automake, so it's ok to have @MACROS@ that will be set by configure
-
-
-## INCLUDES is automatically added to CXXFLAGS at compile time. The
-## $(top_srcdir) macro is set by configure. It's important to use $(top_srcdir)
-## in case a user decides to build in a separate directory from the base package
-## directory. Using absolute, or relative paths is a bad idea.
-INCLUDES=-I$(top_srcdir)/include
-
-
-## CXXFLAGS is also automatically added to the $(CXX) macro at compile time, and
-## is passed down to the children as well
-## I list these here in case there needs to always be some flags passed to the compiler
-CXXFLAGS=@CXXFLAGS@
-
-
-## LDFLAGS will be added at link time
-## note that the -l flags are set by the LIBS macro that is set by configure
-## This line doesn't need to be here, configure will add LDFLAGS on it's own,
-## but I'm leaving here as a place to add LDFLAGS if so desired
-LDFLAGS=@LDFLAGS@
-
-
-# doc directory
-pkgdocdir=$(prefix)/doc/@PACKAGE@
-
-
diff --git a/lib-src/sbsms/config/config.guess b/lib-src/sbsms/config/config.guess
deleted file mode 100755
index d56c46d..0000000
--- a/lib-src/sbsms/config/config.guess
+++ /dev/null
@@ -1,1410 +0,0 @@
-#! /bin/sh
-# Attempt to guess a canonical system name.
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-# 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
-
-timestamp='2003-08-18'
-
-# This file 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-# Originally written by Per Bothner <per at bothner.com>.
-# Please send patches to <config-patches at gnu.org>. Submit a context
-# diff and a properly formatted ChangeLog entry.
-#
-# This script attempts to guess a canonical system name similar to
-# config.sub. If it succeeds, it prints the system name on stdout, and
-# exits with 0. Otherwise, it exits with 1.
-#
-# The plan is that this can be called by configure scripts if you
-# don't specify an explicit build system type.
-
-me=`echo "$0" | sed -e 's,.*/,,'`
-
-usage="\
-Usage: $0 [OPTION]
-
-Output the configuration name of the system \`$me' is run on.
-
-Operation modes:
- -h, --help print this help, then exit
- -t, --time-stamp print date of last modification, then exit
- -v, --version print version number, then exit
-
-Report bugs and patches to <config-patches at gnu.org>."
-
-version="\
-GNU config.guess ($timestamp)
-
-Originally written by Per Bothner.
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
-Free Software Foundation, Inc.
-
-This is free software; see the source for copying conditions. There is NO
-warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
-
-help="
-Try \`$me --help' for more information."
-
-# Parse command line
-while test $# -gt 0 ; do
- case $1 in
- --time-stamp | --time* | -t )
- echo "$timestamp" ; exit 0 ;;
- --version | -v )
- echo "$version" ; exit 0 ;;
- --help | --h* | -h )
- echo "$usage"; exit 0 ;;
- -- ) # Stop option processing
- shift; break ;;
- - ) # Use stdin as input.
- break ;;
- -* )
- echo "$me: invalid option $1$help" >&2
- exit 1 ;;
- * )
- break ;;
- esac
-done
-
-if test $# != 0; then
- echo "$me: too many arguments$help" >&2
- exit 1
-fi
-
-trap 'exit 1' 1 2 15
-
-# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
-# compiler to aid in system detection is discouraged as it requires
-# temporary files to be created and, as you can see below, it is a
-# headache to deal with in a portable fashion.
-
-# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
-# use `HOST_CC' if defined, but it is deprecated.
-
-# Portable tmp directory creation inspired by the Autoconf team.
-
-set_cc_for_build='
-trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
-trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
-: ${TMPDIR=/tmp} ;
- { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
- { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
- { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
- { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
-dummy=$tmp/dummy ;
-tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
-case $CC_FOR_BUILD,$HOST_CC,$CC in
- ,,) echo "int x;" > $dummy.c ;
- for c in cc gcc c89 c99 ; do
- if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
- CC_FOR_BUILD="$c"; break ;
- fi ;
- done ;
- if test x"$CC_FOR_BUILD" = x ; then
- CC_FOR_BUILD=no_compiler_found ;
- fi
- ;;
- ,,*) CC_FOR_BUILD=$CC ;;
- ,*,*) CC_FOR_BUILD=$HOST_CC ;;
-esac ;'
-
-# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
-# (ghazi at noc.rutgers.edu 1994-08-24)
-if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
- PATH=$PATH:/.attbin ; export PATH
-fi
-
-UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
-UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
-UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
-UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
-
-# Note: order is significant - the case branches are not exclusive.
-
-case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
- *:NetBSD:*:*)
- # NetBSD (nbsd) targets should (where applicable) match one or
- # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
- # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
- # switched to ELF, *-*-netbsd* would select the old
- # object file format. This provides both forward
- # compatibility and a consistent mechanism for selecting the
- # object file format.
- #
- # Note: NetBSD doesn't particularly care about the vendor
- # portion of the name. We always set it to "unknown".
- sysctl="sysctl -n hw.machine_arch"
- UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
- /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
- case "${UNAME_MACHINE_ARCH}" in
- armeb) machine=armeb-unknown ;;
- arm*) machine=arm-unknown ;;
- sh3el) machine=shl-unknown ;;
- sh3eb) machine=sh-unknown ;;
- *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
- esac
- # The Operating System including object format, if it has switched
- # to ELF recently, or will in the future.
- case "${UNAME_MACHINE_ARCH}" in
- arm*|i386|m68k|ns32k|sh3*|sparc|vax)
- eval $set_cc_for_build
- if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
- | grep __ELF__ >/dev/null
- then
- # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
- # Return netbsd for either. FIX?
- os=netbsd
- else
- os=netbsdelf
- fi
- ;;
- *)
- os=netbsd
- ;;
- esac
- # The OS release
- # Debian GNU/NetBSD machines have a different userland, and
- # thus, need a distinct triplet. However, they do not need
- # kernel version information, so it can be replaced with a
- # suitable tag, in the style of linux-gnu.
- case "${UNAME_VERSION}" in
- Debian*)
- release='-gnu'
- ;;
- *)
- release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
- ;;
- esac
- # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
- # contains redundant information, the shorter form:
- # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
- echo "${machine}-${os}${release}"
- exit 0 ;;
- amiga:OpenBSD:*:*)
- echo m68k-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- arc:OpenBSD:*:*)
- echo mipsel-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- hp300:OpenBSD:*:*)
- echo m68k-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- mac68k:OpenBSD:*:*)
- echo m68k-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- macppc:OpenBSD:*:*)
- echo powerpc-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- mvme68k:OpenBSD:*:*)
- echo m68k-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- mvme88k:OpenBSD:*:*)
- echo m88k-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- mvmeppc:OpenBSD:*:*)
- echo powerpc-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- pmax:OpenBSD:*:*)
- echo mipsel-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- sgi:OpenBSD:*:*)
- echo mipseb-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- sun3:OpenBSD:*:*)
- echo m68k-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- wgrisc:OpenBSD:*:*)
- echo mipsel-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- *:OpenBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- alpha:OSF1:*:*)
- if test $UNAME_RELEASE = "V4.0"; then
- UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
- fi
- # According to Compaq, /usr/sbin/psrinfo has been available on
- # OSF/1 and Tru64 systems produced since 1995. I hope that
- # covers most systems running today. This code pipes the CPU
- # types through head -n 1, so we only detect the type of CPU 0.
- ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1`
- case "$ALPHA_CPU_TYPE" in
- "EV4 (21064)")
- UNAME_MACHINE="alpha" ;;
- "EV4.5 (21064)")
- UNAME_MACHINE="alpha" ;;
- "LCA4 (21066/21068)")
- UNAME_MACHINE="alpha" ;;
- "EV5 (21164)")
- UNAME_MACHINE="alphaev5" ;;
- "EV5.6 (21164A)")
- UNAME_MACHINE="alphaev56" ;;
- "EV5.6 (21164PC)")
- UNAME_MACHINE="alphapca56" ;;
- "EV5.7 (21164PC)")
- UNAME_MACHINE="alphapca57" ;;
- "EV6 (21264)")
- UNAME_MACHINE="alphaev6" ;;
- "EV6.7 (21264A)")
- UNAME_MACHINE="alphaev67" ;;
- "EV6.8CB (21264C)")
- UNAME_MACHINE="alphaev68" ;;
- "EV6.8AL (21264B)")
- UNAME_MACHINE="alphaev68" ;;
- "EV6.8CX (21264D)")
- UNAME_MACHINE="alphaev68" ;;
- "EV6.9A (21264/EV69A)")
- UNAME_MACHINE="alphaev69" ;;
- "EV7 (21364)")
- UNAME_MACHINE="alphaev7" ;;
- "EV7.9 (21364A)")
- UNAME_MACHINE="alphaev79" ;;
- esac
- # A Vn.n version is a released version.
- # A Tn.n version is a released field test version.
- # A Xn.n version is an unreleased experimental baselevel.
- # 1.2 uses "1.2" for uname -r.
- echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
- exit 0 ;;
- Alpha*:OpenVMS:*:*)
- echo alpha-hp-vms
- exit 0 ;;
- Alpha\ *:Windows_NT*:*)
- # How do we know it's Interix rather than the generic POSIX subsystem?
- # Should we change UNAME_MACHINE based on the output of uname instead
- # of the specific Alpha model?
- echo alpha-pc-interix
- exit 0 ;;
- 21064:Windows_NT:50:3)
- echo alpha-dec-winnt3.5
- exit 0 ;;
- Amiga*:UNIX_System_V:4.0:*)
- echo m68k-unknown-sysv4
- exit 0;;
- *:[Aa]miga[Oo][Ss]:*:*)
- echo ${UNAME_MACHINE}-unknown-amigaos
- exit 0 ;;
- *:[Mm]orph[Oo][Ss]:*:*)
- echo ${UNAME_MACHINE}-unknown-morphos
- exit 0 ;;
- *:OS/390:*:*)
- echo i370-ibm-openedition
- exit 0 ;;
- arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
- echo arm-acorn-riscix${UNAME_RELEASE}
- exit 0;;
- SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
- echo hppa1.1-hitachi-hiuxmpp
- exit 0;;
- Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
- # akee at wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
- if test "`(/bin/universe) 2>/dev/null`" = att ; then
- echo pyramid-pyramid-sysv3
- else
- echo pyramid-pyramid-bsd
- fi
- exit 0 ;;
- NILE*:*:*:dcosx)
- echo pyramid-pyramid-svr4
- exit 0 ;;
- DRS?6000:unix:4.0:6*)
- echo sparc-icl-nx6
- exit 0 ;;
- DRS?6000:UNIX_SV:4.2*:7*)
- case `/usr/bin/uname -p` in
- sparc) echo sparc-icl-nx7 && exit 0 ;;
- esac ;;
- sun4H:SunOS:5.*:*)
- echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit 0 ;;
- sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
- echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit 0 ;;
- i86pc:SunOS:5.*:*)
- echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit 0 ;;
- sun4*:SunOS:6*:*)
- # According to config.sub, this is the proper way to canonicalize
- # SunOS6. Hard to guess exactly what SunOS6 will be like, but
- # it's likely to be more like Solaris than SunOS4.
- echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit 0 ;;
- sun4*:SunOS:*:*)
- case "`/usr/bin/arch -k`" in
- Series*|S4*)
- UNAME_RELEASE=`uname -v`
- ;;
- esac
- # Japanese Language versions have a version number like `4.1.3-JL'.
- echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
- exit 0 ;;
- sun3*:SunOS:*:*)
- echo m68k-sun-sunos${UNAME_RELEASE}
- exit 0 ;;
- sun*:*:4.2BSD:*)
- UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
- test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
- case "`/bin/arch`" in
- sun3)
- echo m68k-sun-sunos${UNAME_RELEASE}
- ;;
- sun4)
- echo sparc-sun-sunos${UNAME_RELEASE}
- ;;
- esac
- exit 0 ;;
- aushp:SunOS:*:*)
- echo sparc-auspex-sunos${UNAME_RELEASE}
- exit 0 ;;
- # The situation for MiNT is a little confusing. The machine name
- # can be virtually everything (everything which is not
- # "atarist" or "atariste" at least should have a processor
- # > m68000). The system name ranges from "MiNT" over "FreeMiNT"
- # to the lowercase version "mint" (or "freemint"). Finally
- # the system name "TOS" denotes a system which is actually not
- # MiNT. But MiNT is downward compatible to TOS, so this should
- # be no problem.
- atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
- echo m68k-atari-mint${UNAME_RELEASE}
- exit 0 ;;
- atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
- echo m68k-atari-mint${UNAME_RELEASE}
- exit 0 ;;
- *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
- echo m68k-atari-mint${UNAME_RELEASE}
- exit 0 ;;
- milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
- echo m68k-milan-mint${UNAME_RELEASE}
- exit 0 ;;
- hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
- echo m68k-hades-mint${UNAME_RELEASE}
- exit 0 ;;
- *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
- echo m68k-unknown-mint${UNAME_RELEASE}
- exit 0 ;;
- powerpc:machten:*:*)
- echo powerpc-apple-machten${UNAME_RELEASE}
- exit 0 ;;
- RISC*:Mach:*:*)
- echo mips-dec-mach_bsd4.3
- exit 0 ;;
- RISC*:ULTRIX:*:*)
- echo mips-dec-ultrix${UNAME_RELEASE}
- exit 0 ;;
- VAX*:ULTRIX*:*:*)
- echo vax-dec-ultrix${UNAME_RELEASE}
- exit 0 ;;
- 2020:CLIX:*:* | 2430:CLIX:*:*)
- echo clipper-intergraph-clix${UNAME_RELEASE}
- exit 0 ;;
- mips:*:*:UMIPS | mips:*:*:RISCos)
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
-#ifdef __cplusplus
-#include <stdio.h> /* for printf() prototype */
- int main (int argc, char *argv[]) {
-#else
- int main (argc, argv) int argc; char *argv[]; {
-#endif
- #if defined (host_mips) && defined (MIPSEB)
- #if defined (SYSTYPE_SYSV)
- printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
- #endif
- #if defined (SYSTYPE_SVR4)
- printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
- #endif
- #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
- printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
- #endif
- #endif
- exit (-1);
- }
-EOF
- $CC_FOR_BUILD -o $dummy $dummy.c \
- && $dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
- && exit 0
- echo mips-mips-riscos${UNAME_RELEASE}
- exit 0 ;;
- Motorola:PowerMAX_OS:*:*)
- echo powerpc-motorola-powermax
- exit 0 ;;
- Motorola:*:4.3:PL8-*)
- echo powerpc-harris-powermax
- exit 0 ;;
- Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
- echo powerpc-harris-powermax
- exit 0 ;;
- Night_Hawk:Power_UNIX:*:*)
- echo powerpc-harris-powerunix
- exit 0 ;;
- m88k:CX/UX:7*:*)
- echo m88k-harris-cxux7
- exit 0 ;;
- m88k:*:4*:R4*)
- echo m88k-motorola-sysv4
- exit 0 ;;
- m88k:*:3*:R3*)
- echo m88k-motorola-sysv3
- exit 0 ;;
- AViiON:dgux:*:*)
- # DG/UX returns AViiON for all architectures
- UNAME_PROCESSOR=`/usr/bin/uname -p`
- if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
- then
- if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
- [ ${TARGET_BINARY_INTERFACE}x = x ]
- then
- echo m88k-dg-dgux${UNAME_RELEASE}
- else
- echo m88k-dg-dguxbcs${UNAME_RELEASE}
- fi
- else
- echo i586-dg-dgux${UNAME_RELEASE}
- fi
- exit 0 ;;
- M88*:DolphinOS:*:*) # DolphinOS (SVR3)
- echo m88k-dolphin-sysv3
- exit 0 ;;
- M88*:*:R3*:*)
- # Delta 88k system running SVR3
- echo m88k-motorola-sysv3
- exit 0 ;;
- XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
- echo m88k-tektronix-sysv3
- exit 0 ;;
- Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
- echo m68k-tektronix-bsd
- exit 0 ;;
- *:IRIX*:*:*)
- echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
- exit 0 ;;
- ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
- echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
- exit 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX '
- i*86:AIX:*:*)
- echo i386-ibm-aix
- exit 0 ;;
- ia64:AIX:*:*)
- if [ -x /usr/bin/oslevel ] ; then
- IBM_REV=`/usr/bin/oslevel`
- else
- IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
- fi
- echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
- exit 0 ;;
- *:AIX:2:3)
- if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #include <sys/systemcfg.h>
-
- main()
- {
- if (!__power_pc())
- exit(1);
- puts("powerpc-ibm-aix3.2.5");
- exit(0);
- }
-EOF
- $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
- echo rs6000-ibm-aix3.2.5
- elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
- echo rs6000-ibm-aix3.2.4
- else
- echo rs6000-ibm-aix3.2
- fi
- exit 0 ;;
- *:AIX:*:[45])
- IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
- if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
- IBM_ARCH=rs6000
- else
- IBM_ARCH=powerpc
- fi
- if [ -x /usr/bin/oslevel ] ; then
- IBM_REV=`/usr/bin/oslevel`
- else
- IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
- fi
- echo ${IBM_ARCH}-ibm-aix${IBM_REV}
- exit 0 ;;
- *:AIX:*:*)
- echo rs6000-ibm-aix
- exit 0 ;;
- ibmrt:4.4BSD:*|romp-ibm:BSD:*)
- echo romp-ibm-bsd4.4
- exit 0 ;;
- ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and
- echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
- exit 0 ;; # report: romp-ibm BSD 4.3
- *:BOSX:*:*)
- echo rs6000-bull-bosx
- exit 0 ;;
- DPX/2?00:B.O.S.:*:*)
- echo m68k-bull-sysv3
- exit 0 ;;
- 9000/[34]??:4.3bsd:1.*:*)
- echo m68k-hp-bsd
- exit 0 ;;
- hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
- echo m68k-hp-bsd4.4
- exit 0 ;;
- 9000/[34678]??:HP-UX:*:*)
- HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
- case "${UNAME_MACHINE}" in
- 9000/31? ) HP_ARCH=m68000 ;;
- 9000/[34]?? ) HP_ARCH=m68k ;;
- 9000/[678][0-9][0-9])
- if [ -x /usr/bin/getconf ]; then
- sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
- sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
- case "${sc_cpu_version}" in
- 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
- 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
- 532) # CPU_PA_RISC2_0
- case "${sc_kernel_bits}" in
- 32) HP_ARCH="hppa2.0n" ;;
- 64) HP_ARCH="hppa2.0w" ;;
- '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20
- esac ;;
- esac
- fi
- if [ "${HP_ARCH}" = "" ]; then
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
-
- #define _HPUX_SOURCE
- #include <stdlib.h>
- #include <unistd.h>
-
- int main ()
- {
- #if defined(_SC_KERNEL_BITS)
- long bits = sysconf(_SC_KERNEL_BITS);
- #endif
- long cpu = sysconf (_SC_CPU_VERSION);
-
- switch (cpu)
- {
- case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
- case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
- case CPU_PA_RISC2_0:
- #if defined(_SC_KERNEL_BITS)
- switch (bits)
- {
- case 64: puts ("hppa2.0w"); break;
- case 32: puts ("hppa2.0n"); break;
- default: puts ("hppa2.0"); break;
- } break;
- #else /* !defined(_SC_KERNEL_BITS) */
- puts ("hppa2.0"); break;
- #endif
- default: puts ("hppa1.0"); break;
- }
- exit (0);
- }
-EOF
- (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
- test -z "$HP_ARCH" && HP_ARCH=hppa
- fi ;;
- esac
- if [ ${HP_ARCH} = "hppa2.0w" ]
- then
- # avoid double evaluation of $set_cc_for_build
- test -n "$CC_FOR_BUILD" || eval $set_cc_for_build
- if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E -) | grep __LP64__ >/dev/null
- then
- HP_ARCH="hppa2.0w"
- else
- HP_ARCH="hppa64"
- fi
- fi
- echo ${HP_ARCH}-hp-hpux${HPUX_REV}
- exit 0 ;;
- ia64:HP-UX:*:*)
- HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
- echo ia64-hp-hpux${HPUX_REV}
- exit 0 ;;
- 3050*:HI-UX:*:*)
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #include <unistd.h>
- int
- main ()
- {
- long cpu = sysconf (_SC_CPU_VERSION);
- /* The order matters, because CPU_IS_HP_MC68K erroneously returns
- true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct
- results, however. */
- if (CPU_IS_PA_RISC (cpu))
- {
- switch (cpu)
- {
- case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
- case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
- case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
- default: puts ("hppa-hitachi-hiuxwe2"); break;
- }
- }
- else if (CPU_IS_HP_MC68K (cpu))
- puts ("m68k-hitachi-hiuxwe2");
- else puts ("unknown-hitachi-hiuxwe2");
- exit (0);
- }
-EOF
- $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
- echo unknown-hitachi-hiuxwe2
- exit 0 ;;
- 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
- echo hppa1.1-hp-bsd
- exit 0 ;;
- 9000/8??:4.3bsd:*:*)
- echo hppa1.0-hp-bsd
- exit 0 ;;
- *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
- echo hppa1.0-hp-mpeix
- exit 0 ;;
- hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
- echo hppa1.1-hp-osf
- exit 0 ;;
- hp8??:OSF1:*:*)
- echo hppa1.0-hp-osf
- exit 0 ;;
- i*86:OSF1:*:*)
- if [ -x /usr/sbin/sysversion ] ; then
- echo ${UNAME_MACHINE}-unknown-osf1mk
- else
- echo ${UNAME_MACHINE}-unknown-osf1
- fi
- exit 0 ;;
- parisc*:Lites*:*:*)
- echo hppa1.1-hp-lites
- exit 0 ;;
- C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
- echo c1-convex-bsd
- exit 0 ;;
- C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
- if getsysinfo -f scalar_acc
- then echo c32-convex-bsd
- else echo c2-convex-bsd
- fi
- exit 0 ;;
- C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
- echo c34-convex-bsd
- exit 0 ;;
- C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
- echo c38-convex-bsd
- exit 0 ;;
- C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
- echo c4-convex-bsd
- exit 0 ;;
- CRAY*Y-MP:*:*:*)
- echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit 0 ;;
- CRAY*[A-Z]90:*:*:*)
- echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
- | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
- -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
- -e 's/\.[^.]*$/.X/'
- exit 0 ;;
- CRAY*TS:*:*:*)
- echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit 0 ;;
- CRAY*T3E:*:*:*)
- echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit 0 ;;
- CRAY*SV1:*:*:*)
- echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit 0 ;;
- *:UNICOS/mp:*:*)
- echo nv1-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit 0 ;;
- F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
- FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
- FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
- FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
- echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
- exit 0 ;;
- i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
- echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
- exit 0 ;;
- sparc*:BSD/OS:*:*)
- echo sparc-unknown-bsdi${UNAME_RELEASE}
- exit 0 ;;
- *:BSD/OS:*:*)
- echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
- exit 0 ;;
- *:FreeBSD:*:*|*:GNU/FreeBSD:*:*)
- # Determine whether the default compiler uses glibc.
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #include <features.h>
- #if __GLIBC__ >= 2
- LIBC=gnu
- #else
- LIBC=
- #endif
-EOF
- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
- # GNU/FreeBSD systems have a "k" prefix to indicate we are using
- # FreeBSD's kernel, but not the complete OS.
- case ${LIBC} in gnu) kernel_only='k' ;; esac
- echo ${UNAME_MACHINE}-unknown-${kernel_only}freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`${LIBC:+-$LIBC}
- exit 0 ;;
- i*:CYGWIN*:*)
- echo ${UNAME_MACHINE}-pc-cygwin
- exit 0 ;;
- i*:MINGW*:*)
- echo ${UNAME_MACHINE}-pc-mingw32
- exit 0 ;;
- i*:PW*:*)
- echo ${UNAME_MACHINE}-pc-pw32
- exit 0 ;;
- x86:Interix*:[34]*)
- echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//'
- exit 0 ;;
- [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
- echo i${UNAME_MACHINE}-pc-mks
- exit 0 ;;
- i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
- # How do we know it's Interix rather than the generic POSIX subsystem?
- # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
- # UNAME_MACHINE based on the output of uname instead of i386?
- echo i586-pc-interix
- exit 0 ;;
- i*:UWIN*:*)
- echo ${UNAME_MACHINE}-pc-uwin
- exit 0 ;;
- p*:CYGWIN*:*)
- echo powerpcle-unknown-cygwin
- exit 0 ;;
- prep*:SunOS:5.*:*)
- echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit 0 ;;
- *:GNU:*:*)
- echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
- exit 0 ;;
- i*86:Minix:*:*)
- echo ${UNAME_MACHINE}-pc-minix
- exit 0 ;;
- arm*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit 0 ;;
- cris:Linux:*:*)
- echo cris-axis-linux-gnu
- exit 0 ;;
- ia64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit 0 ;;
- m68*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit 0 ;;
- mips:Linux:*:*)
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #undef CPU
- #undef mips
- #undef mipsel
- #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
- CPU=mipsel
- #else
- #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
- CPU=mips
- #else
- CPU=
- #endif
- #endif
-EOF
- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
- test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0
- ;;
- mips64:Linux:*:*)
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #undef CPU
- #undef mips64
- #undef mips64el
- #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
- CPU=mips64el
- #else
- #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
- CPU=mips64
- #else
- CPU=
- #endif
- #endif
-EOF
- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
- test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0
- ;;
- ppc:Linux:*:*)
- echo powerpc-unknown-linux-gnu
- exit 0 ;;
- ppc64:Linux:*:*)
- echo powerpc64-unknown-linux-gnu
- exit 0 ;;
- alpha:Linux:*:*)
- case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
- EV5) UNAME_MACHINE=alphaev5 ;;
- EV56) UNAME_MACHINE=alphaev56 ;;
- PCA56) UNAME_MACHINE=alphapca56 ;;
- PCA57) UNAME_MACHINE=alphapca56 ;;
- EV6) UNAME_MACHINE=alphaev6 ;;
- EV67) UNAME_MACHINE=alphaev67 ;;
- EV68*) UNAME_MACHINE=alphaev68 ;;
- esac
- objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
- if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
- echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
- exit 0 ;;
- parisc:Linux:*:* | hppa:Linux:*:*)
- # Look for CPU level
- case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
- PA7*) echo hppa1.1-unknown-linux-gnu ;;
- PA8*) echo hppa2.0-unknown-linux-gnu ;;
- *) echo hppa-unknown-linux-gnu ;;
- esac
- exit 0 ;;
- parisc64:Linux:*:* | hppa64:Linux:*:*)
- echo hppa64-unknown-linux-gnu
- exit 0 ;;
- s390:Linux:*:* | s390x:Linux:*:*)
- echo ${UNAME_MACHINE}-ibm-linux
- exit 0 ;;
- sh64*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit 0 ;;
- sh*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit 0 ;;
- sparc:Linux:*:* | sparc64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit 0 ;;
- x86_64:Linux:*:*)
- echo x86_64-unknown-linux-gnu
- exit 0 ;;
- i*86:Linux:*:*)
- # The BFD linker knows what the default object file format is, so
- # first see if it will tell us. cd to the root directory to prevent
- # problems with other programs or directories called `ld' in the path.
- # Set LC_ALL=C to ensure ld outputs messages in English.
- ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
- | sed -ne '/supported targets:/!d
- s/[ ][ ]*/ /g
- s/.*supported targets: *//
- s/ .*//
- p'`
- case "$ld_supported_targets" in
- elf32-i386)
- TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
- ;;
- a.out-i386-linux)
- echo "${UNAME_MACHINE}-pc-linux-gnuaout"
- exit 0 ;;
- coff-i386)
- echo "${UNAME_MACHINE}-pc-linux-gnucoff"
- exit 0 ;;
- "")
- # Either a pre-BFD a.out linker (linux-gnuoldld) or
- # one that does not give us useful --help.
- echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
- exit 0 ;;
- esac
- # Determine whether the default compiler is a.out or elf
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #include <features.h>
- #ifdef __ELF__
- # ifdef __GLIBC__
- # if __GLIBC__ >= 2
- LIBC=gnu
- # else
- LIBC=gnulibc1
- # endif
- # else
- LIBC=gnulibc1
- # endif
- #else
- #ifdef __INTEL_COMPILER
- LIBC=gnu
- #else
- LIBC=gnuaout
- #endif
- #endif
- #ifdef __dietlibc__
- LIBC=dietlibc
- #endif
-EOF
- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
- test x"${LIBC}" != x && echo "${UNAME_MACHINE}-pc-linux-${LIBC}" && exit 0
- test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0
- ;;
- i*86:DYNIX/ptx:4*:*)
- # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
- # earlier versions are messed up and put the nodename in both
- # sysname and nodename.
- echo i386-sequent-sysv4
- exit 0 ;;
- i*86:UNIX_SV:4.2MP:2.*)
- # Unixware is an offshoot of SVR4, but it has its own version
- # number series starting with 2...
- # I am not positive that other SVR4 systems won't match this,
- # I just have to hope. -- rms.
- # Use sysv4.2uw... so that sysv4* matches it.
- echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
- exit 0 ;;
- i*86:OS/2:*:*)
- # If we were able to find `uname', then EMX Unix compatibility
- # is probably installed.
- echo ${UNAME_MACHINE}-pc-os2-emx
- exit 0 ;;
- i*86:XTS-300:*:STOP)
- echo ${UNAME_MACHINE}-unknown-stop
- exit 0 ;;
- i*86:atheos:*:*)
- echo ${UNAME_MACHINE}-unknown-atheos
- exit 0 ;;
- i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
- echo i386-unknown-lynxos${UNAME_RELEASE}
- exit 0 ;;
- i*86:*DOS:*:*)
- echo ${UNAME_MACHINE}-pc-msdosdjgpp
- exit 0 ;;
- i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
- UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
- if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
- echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
- else
- echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
- fi
- exit 0 ;;
- i*86:*:5:[78]*)
- case `/bin/uname -X | grep "^Machine"` in
- *486*) UNAME_MACHINE=i486 ;;
- *Pentium) UNAME_MACHINE=i586 ;;
- *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
- esac
- echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
- exit 0 ;;
- i*86:*:3.2:*)
- if test -f /usr/options/cb.name; then
- UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
- echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
- elif /bin/uname -X 2>/dev/null >/dev/null ; then
- UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
- (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
- (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
- && UNAME_MACHINE=i586
- (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
- && UNAME_MACHINE=i686
- (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
- && UNAME_MACHINE=i686
- echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
- else
- echo ${UNAME_MACHINE}-pc-sysv32
- fi
- exit 0 ;;
- pc:*:*:*)
- # Left here for compatibility:
- # uname -m prints for DJGPP always 'pc', but it prints nothing about
- # the processor, so we play safe by assuming i386.
- echo i386-pc-msdosdjgpp
- exit 0 ;;
- Intel:Mach:3*:*)
- echo i386-pc-mach3
- exit 0 ;;
- paragon:*:*:*)
- echo i860-intel-osf1
- exit 0 ;;
- i860:*:4.*:*) # i860-SVR4
- if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
- echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
- else # Add other i860-SVR4 vendors below as they are discovered.
- echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4
- fi
- exit 0 ;;
- mini*:CTIX:SYS*5:*)
- # "miniframe"
- echo m68010-convergent-sysv
- exit 0 ;;
- mc68k:UNIX:SYSTEM5:3.51m)
- echo m68k-convergent-sysv
- exit 0 ;;
- M680?0:D-NIX:5.3:*)
- echo m68k-diab-dnix
- exit 0 ;;
- M68*:*:R3V[567]*:*)
- test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
- 3[34]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0)
- OS_REL=''
- test -r /etc/.relid \
- && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
- /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
- && echo i486-ncr-sysv4.3${OS_REL} && exit 0
- /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
- && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;;
- 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
- /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
- && echo i486-ncr-sysv4 && exit 0 ;;
- m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
- echo m68k-unknown-lynxos${UNAME_RELEASE}
- exit 0 ;;
- mc68030:UNIX_System_V:4.*:*)
- echo m68k-atari-sysv4
- exit 0 ;;
- TSUNAMI:LynxOS:2.*:*)
- echo sparc-unknown-lynxos${UNAME_RELEASE}
- exit 0 ;;
- rs6000:LynxOS:2.*:*)
- echo rs6000-unknown-lynxos${UNAME_RELEASE}
- exit 0 ;;
- PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
- echo powerpc-unknown-lynxos${UNAME_RELEASE}
- exit 0 ;;
- SM[BE]S:UNIX_SV:*:*)
- echo mips-dde-sysv${UNAME_RELEASE}
- exit 0 ;;
- RM*:ReliantUNIX-*:*:*)
- echo mips-sni-sysv4
- exit 0 ;;
- RM*:SINIX-*:*:*)
- echo mips-sni-sysv4
- exit 0 ;;
- *:SINIX-*:*:*)
- if uname -p 2>/dev/null >/dev/null ; then
- UNAME_MACHINE=`(uname -p) 2>/dev/null`
- echo ${UNAME_MACHINE}-sni-sysv4
- else
- echo ns32k-sni-sysv
- fi
- exit 0 ;;
- PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
- # says <Richard.M.Bartel at ccMail.Census.GOV>
- echo i586-unisys-sysv4
- exit 0 ;;
- *:UNIX_System_V:4*:FTX*)
- # From Gerald Hewes <hewes at openmarket.com>.
- # How about differentiating between stratus architectures? -djm
- echo hppa1.1-stratus-sysv4
- exit 0 ;;
- *:*:*:FTX*)
- # From seanf at swdc.stratus.com.
- echo i860-stratus-sysv4
- exit 0 ;;
- *:VOS:*:*)
- # From Paul.Green at stratus.com.
- echo hppa1.1-stratus-vos
- exit 0 ;;
- mc68*:A/UX:*:*)
- echo m68k-apple-aux${UNAME_RELEASE}
- exit 0 ;;
- news*:NEWS-OS:6*:*)
- echo mips-sony-newsos6
- exit 0 ;;
- R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
- if [ -d /usr/nec ]; then
- echo mips-nec-sysv${UNAME_RELEASE}
- else
- echo mips-unknown-sysv${UNAME_RELEASE}
- fi
- exit 0 ;;
- BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
- echo powerpc-be-beos
- exit 0 ;;
- BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only.
- echo powerpc-apple-beos
- exit 0 ;;
- BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
- echo i586-pc-beos
- exit 0 ;;
- SX-4:SUPER-UX:*:*)
- echo sx4-nec-superux${UNAME_RELEASE}
- exit 0 ;;
- SX-5:SUPER-UX:*:*)
- echo sx5-nec-superux${UNAME_RELEASE}
- exit 0 ;;
- SX-6:SUPER-UX:*:*)
- echo sx6-nec-superux${UNAME_RELEASE}
- exit 0 ;;
- Power*:Rhapsody:*:*)
- echo powerpc-apple-rhapsody${UNAME_RELEASE}
- exit 0 ;;
- *:Rhapsody:*:*)
- echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
- exit 0 ;;
- *:Darwin:*:*)
- case `uname -p` in
- *86) UNAME_PROCESSOR=i686 ;;
- powerpc) UNAME_PROCESSOR=powerpc ;;
- esac
- echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
- exit 0 ;;
- *:procnto*:*:* | *:QNX:[0123456789]*:*)
- UNAME_PROCESSOR=`uname -p`
- if test "$UNAME_PROCESSOR" = "x86"; then
- UNAME_PROCESSOR=i386
- UNAME_MACHINE=pc
- fi
- echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
- exit 0 ;;
- *:QNX:*:4*)
- echo i386-pc-qnx
- exit 0 ;;
- NSR-[DGKLNPTVW]:NONSTOP_KERNEL:*:*)
- echo nsr-tandem-nsk${UNAME_RELEASE}
- exit 0 ;;
- *:NonStop-UX:*:*)
- echo mips-compaq-nonstopux
- exit 0 ;;
- BS2000:POSIX*:*:*)
- echo bs2000-siemens-sysv
- exit 0 ;;
- DS/*:UNIX_System_V:*:*)
- echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
- exit 0 ;;
- *:Plan9:*:*)
- # "uname -m" is not consistent, so use $cputype instead. 386
- # is converted to i386 for consistency with other x86
- # operating systems.
- if test "$cputype" = "386"; then
- UNAME_MACHINE=i386
- else
- UNAME_MACHINE="$cputype"
- fi
- echo ${UNAME_MACHINE}-unknown-plan9
- exit 0 ;;
- *:TOPS-10:*:*)
- echo pdp10-unknown-tops10
- exit 0 ;;
- *:TENEX:*:*)
- echo pdp10-unknown-tenex
- exit 0 ;;
- KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
- echo pdp10-dec-tops20
- exit 0 ;;
- XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
- echo pdp10-xkl-tops20
- exit 0 ;;
- *:TOPS-20:*:*)
- echo pdp10-unknown-tops20
- exit 0 ;;
- *:ITS:*:*)
- echo pdp10-unknown-its
- exit 0 ;;
- SEI:*:*:SEIUX)
- echo mips-sei-seiux${UNAME_RELEASE}
- exit 0 ;;
-esac
-
-#echo '(No uname command or uname output not recognized.)' 1>&2
-#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
-
-eval $set_cc_for_build
-cat >$dummy.c <<EOF
-#ifdef _SEQUENT_
-# include <sys/types.h>
-# include <sys/utsname.h>
-#endif
-main ()
-{
-#if defined (sony)
-#if defined (MIPSEB)
- /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed,
- I don't know.... */
- printf ("mips-sony-bsd\n"); exit (0);
-#else
-#include <sys/param.h>
- printf ("m68k-sony-newsos%s\n",
-#ifdef NEWSOS4
- "4"
-#else
- ""
-#endif
- ); exit (0);
-#endif
-#endif
-
-#if defined (__arm) && defined (__acorn) && defined (__unix)
- printf ("arm-acorn-riscix"); exit (0);
-#endif
-
-#if defined (hp300) && !defined (hpux)
- printf ("m68k-hp-bsd\n"); exit (0);
-#endif
-
-#if defined (NeXT)
-#if !defined (__ARCHITECTURE__)
-#define __ARCHITECTURE__ "m68k"
-#endif
- int version;
- version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
- if (version < 4)
- printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
- else
- printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
- exit (0);
-#endif
-
-#if defined (MULTIMAX) || defined (n16)
-#if defined (UMAXV)
- printf ("ns32k-encore-sysv\n"); exit (0);
-#else
-#if defined (CMU)
- printf ("ns32k-encore-mach\n"); exit (0);
-#else
- printf ("ns32k-encore-bsd\n"); exit (0);
-#endif
-#endif
-#endif
-
-#if defined (__386BSD__)
- printf ("i386-pc-bsd\n"); exit (0);
-#endif
-
-#if defined (sequent)
-#if defined (i386)
- printf ("i386-sequent-dynix\n"); exit (0);
-#endif
-#if defined (ns32000)
- printf ("ns32k-sequent-dynix\n"); exit (0);
-#endif
-#endif
-
-#if defined (_SEQUENT_)
- struct utsname un;
-
- uname(&un);
-
- if (strncmp(un.version, "V2", 2) == 0) {
- printf ("i386-sequent-ptx2\n"); exit (0);
- }
- if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
- printf ("i386-sequent-ptx1\n"); exit (0);
- }
- printf ("i386-sequent-ptx\n"); exit (0);
-
-#endif
-
-#if defined (vax)
-# if !defined (ultrix)
-# include <sys/param.h>
-# if defined (BSD)
-# if BSD == 43
- printf ("vax-dec-bsd4.3\n"); exit (0);
-# else
-# if BSD == 199006
- printf ("vax-dec-bsd4.3reno\n"); exit (0);
-# else
- printf ("vax-dec-bsd\n"); exit (0);
-# endif
-# endif
-# else
- printf ("vax-dec-bsd\n"); exit (0);
-# endif
-# else
- printf ("vax-dec-ultrix\n"); exit (0);
-# endif
-#endif
-
-#if defined (alliant) && defined (i860)
- printf ("i860-alliant-bsd\n"); exit (0);
-#endif
-
- exit (1);
-}
-EOF
-
-$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && $dummy && exit 0
-
-# Apollos put the system type in the environment.
-
-test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; }
-
-# Convex versions that predate uname can use getsysinfo(1)
-
-if [ -x /usr/convex/getsysinfo ]
-then
- case `getsysinfo -f cpu_type` in
- c1*)
- echo c1-convex-bsd
- exit 0 ;;
- c2*)
- if getsysinfo -f scalar_acc
- then echo c32-convex-bsd
- else echo c2-convex-bsd
- fi
- exit 0 ;;
- c34*)
- echo c34-convex-bsd
- exit 0 ;;
- c38*)
- echo c38-convex-bsd
- exit 0 ;;
- c4*)
- echo c4-convex-bsd
- exit 0 ;;
- esac
-fi
-
-cat >&2 <<EOF
-$0: unable to guess system type
-
-This script, last modified $timestamp, has failed to recognize
-the operating system you are using. It is advised that you
-download the most up to date version of the config scripts from
-
- ftp://ftp.gnu.org/pub/gnu/config/
-
-If the version you run ($0) is already up to date, please
-send the following data and any information you think might be
-pertinent to <config-patches at gnu.org> in order to provide the needed
-information to handle your system.
-
-config.guess timestamp = $timestamp
-
-uname -m = `(uname -m) 2>/dev/null || echo unknown`
-uname -r = `(uname -r) 2>/dev/null || echo unknown`
-uname -s = `(uname -s) 2>/dev/null || echo unknown`
-uname -v = `(uname -v) 2>/dev/null || echo unknown`
-
-/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
-/bin/uname -X = `(/bin/uname -X) 2>/dev/null`
-
-hostinfo = `(hostinfo) 2>/dev/null`
-/bin/universe = `(/bin/universe) 2>/dev/null`
-/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null`
-/bin/arch = `(/bin/arch) 2>/dev/null`
-/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null`
-/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
-
-UNAME_MACHINE = ${UNAME_MACHINE}
-UNAME_RELEASE = ${UNAME_RELEASE}
-UNAME_SYSTEM = ${UNAME_SYSTEM}
-UNAME_VERSION = ${UNAME_VERSION}
-EOF
-
-exit 1
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "timestamp='"
-# time-stamp-format: "%:y-%02m-%02d"
-# time-stamp-end: "'"
-# End:
diff --git a/lib-src/sbsms/config/config.h b/lib-src/sbsms/config/config.h
deleted file mode 100644
index 64fc937..0000000
--- a/lib-src/sbsms/config/config.h
+++ /dev/null
@@ -1,79 +0,0 @@
-/* config/config.h. Generated by configure. */
-/* config/config.h.in. Generated from configure.ac by autoheader. */
-
-/* Define to 1 if you have the <dlfcn.h> header file. */
-#define HAVE_DLFCN_H 1
-
-/* Define to 1 if you have the <inttypes.h> header file. */
-#define HAVE_INTTYPES_H 1
-
-/* Define to 1 if you have the `m' library (-lm). */
-#define HAVE_LIBM 1
-
-/* Define to 1 if your system has a GNU libc compatible `malloc' function, and
- to 0 otherwise. */
-#define HAVE_MALLOC 1
-
-/* Define to 1 if you have the <memory.h> header file. */
-#define HAVE_MEMORY_H 1
-
-/* Define to 1 if you have the <stdint.h> header file. */
-#define HAVE_STDINT_H 1
-
-/* Define to 1 if you have the <stdlib.h> header file. */
-#define HAVE_STDLIB_H 1
-
-/* Define to 1 if you have the <strings.h> header file. */
-#define HAVE_STRINGS_H 1
-
-/* Define to 1 if you have the <string.h> header file. */
-#define HAVE_STRING_H 1
-
-/* Define to 1 if you have the <sys/stat.h> header file. */
-#define HAVE_SYS_STAT_H 1
-
-/* Define to 1 if you have the <sys/types.h> header file. */
-#define HAVE_SYS_TYPES_H 1
-
-/* Define to 1 if you have the <unistd.h> header file. */
-#define HAVE_UNISTD_H 1
-
-/* Name of package */
-#define PACKAGE "soundtouch"
-
-/* Define to the address where bug reports for this package should be sent. */
-#define PACKAGE_BUGREPORT "http://www.iki.fi/oparviai/soundtouch"
-
-/* Define to the full name of this package. */
-#define PACKAGE_NAME "SoundTouch"
-
-/* Define to the full name and version of this package. */
-#define PACKAGE_STRING "SoundTouch 1.2.1"
-
-/* Define to the one symbol short name of this package. */
-#define PACKAGE_TARNAME "soundtouch"
-
-/* Define to the version of this package. */
-#define PACKAGE_VERSION "1.2.1"
-
-/* Define as the return type of signal handlers (`int' or `void'). */
-#define RETSIGTYPE void
-
-/* Define to 1 if you have the ANSI C header files. */
-#define STDC_HEADERS 1
-
-/* Version number of package */
-#define VERSION "1.2.1"
-
-/* */
-#define WORDS_BIGENDIAN 1
-
-/* Define to empty if `const' does not conform to ANSI C. */
-/* #undef const */
-
-/* Define as `__inline' if that's what the C compiler calls it, or to nothing
- if it is not supported. */
-/* #undef inline */
-
-/* Define to rpl_malloc if the replacement function should be used. */
-/* #undef malloc */
diff --git a/lib-src/sbsms/config/config.h.in b/lib-src/sbsms/config/config.h.in
deleted file mode 100644
index 136d27a..0000000
--- a/lib-src/sbsms/config/config.h.in
+++ /dev/null
@@ -1,78 +0,0 @@
-/* config/config.h.in. Generated from configure.ac by autoheader. */
-
-/* Define to 1 if you have the <dlfcn.h> header file. */
-#undef HAVE_DLFCN_H
-
-/* Define to 1 if you have the <inttypes.h> header file. */
-#undef HAVE_INTTYPES_H
-
-/* Define to 1 if you have the `m' library (-lm). */
-#undef HAVE_LIBM
-
-/* Define to 1 if your system has a GNU libc compatible `malloc' function, and
- to 0 otherwise. */
-#undef HAVE_MALLOC
-
-/* Define to 1 if you have the <memory.h> header file. */
-#undef HAVE_MEMORY_H
-
-/* Define to 1 if you have the <stdint.h> header file. */
-#undef HAVE_STDINT_H
-
-/* Define to 1 if you have the <stdlib.h> header file. */
-#undef HAVE_STDLIB_H
-
-/* Define to 1 if you have the <strings.h> header file. */
-#undef HAVE_STRINGS_H
-
-/* Define to 1 if you have the <string.h> header file. */
-#undef HAVE_STRING_H
-
-/* Define to 1 if you have the <sys/stat.h> header file. */
-#undef HAVE_SYS_STAT_H
-
-/* Define to 1 if you have the <sys/types.h> header file. */
-#undef HAVE_SYS_TYPES_H
-
-/* Define to 1 if you have the <unistd.h> header file. */
-#undef HAVE_UNISTD_H
-
-/* Name of package */
-#undef PACKAGE
-
-/* Define to the address where bug reports for this package should be sent. */
-#undef PACKAGE_BUGREPORT
-
-/* Define to the full name of this package. */
-#undef PACKAGE_NAME
-
-/* Define to the full name and version of this package. */
-#undef PACKAGE_STRING
-
-/* Define to the one symbol short name of this package. */
-#undef PACKAGE_TARNAME
-
-/* Define to the version of this package. */
-#undef PACKAGE_VERSION
-
-/* Define as the return type of signal handlers (`int' or `void'). */
-#undef RETSIGTYPE
-
-/* Define to 1 if you have the ANSI C header files. */
-#undef STDC_HEADERS
-
-/* Version number of package */
-#undef VERSION
-
-/* */
-#undef WORDS_BIGENDIAN
-
-/* Define to empty if `const' does not conform to ANSI C. */
-#undef const
-
-/* Define as `__inline' if that's what the C compiler calls it, or to nothing
- if it is not supported. */
-#undef inline
-
-/* Define to rpl_malloc if the replacement function should be used. */
-#undef malloc
diff --git a/lib-src/sbsms/config/config.sub b/lib-src/sbsms/config/config.sub
deleted file mode 100755
index 6890099..0000000
--- a/lib-src/sbsms/config/config.sub
+++ /dev/null
@@ -1,1508 +0,0 @@
-#! /bin/sh
-# Configuration validation subroutine script.
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-# 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
-
-timestamp='2003-08-18'
-
-# This file is (in principle) common to ALL GNU software.
-# The presence of a machine in this file suggests that SOME GNU software
-# can handle that machine. It does not imply ALL GNU software can.
-#
-# This file 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., 59 Temple Place - Suite 330,
-# Boston, MA 02111-1307, USA.
-
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-# Please send patches to <config-patches at gnu.org>. Submit a context
-# diff and a properly formatted ChangeLog entry.
-#
-# Configuration subroutine to validate and canonicalize a configuration type.
-# Supply the specified configuration type as an argument.
-# If it is invalid, we print an error message on stderr and exit with code 1.
-# Otherwise, we print the canonical config type on stdout and succeed.
-
-# This file is supposed to be the same for all GNU packages
-# and recognize all the CPU types, system types and aliases
-# that are meaningful with *any* GNU software.
-# Each package is responsible for reporting which valid configurations
-# it does not support. The user should be able to distinguish
-# a failure to support a valid configuration from a meaningless
-# configuration.
-
-# The goal of this file is to map all the various variations of a given
-# machine specification into a single specification in the form:
-# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
-# or in some cases, the newer four-part form:
-# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
-# It is wrong to echo any other type of specification.
-
-me=`echo "$0" | sed -e 's,.*/,,'`
-
-usage="\
-Usage: $0 [OPTION] CPU-MFR-OPSYS
- $0 [OPTION] ALIAS
-
-Canonicalize a configuration name.
-
-Operation modes:
- -h, --help print this help, then exit
- -t, --time-stamp print date of last modification, then exit
- -v, --version print version number, then exit
-
-Report bugs and patches to <config-patches at gnu.org>."
-
-version="\
-GNU config.sub ($timestamp)
-
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
-Free Software Foundation, Inc.
-
-This is free software; see the source for copying conditions. There is NO
-warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
-
-help="
-Try \`$me --help' for more information."
-
-# Parse command line
-while test $# -gt 0 ; do
- case $1 in
- --time-stamp | --time* | -t )
- echo "$timestamp" ; exit 0 ;;
- --version | -v )
- echo "$version" ; exit 0 ;;
- --help | --h* | -h )
- echo "$usage"; exit 0 ;;
- -- ) # Stop option processing
- shift; break ;;
- - ) # Use stdin as input.
- break ;;
- -* )
- echo "$me: invalid option $1$help"
- exit 1 ;;
-
- *local*)
- # First pass through any local machine types.
- echo $1
- exit 0;;
-
- * )
- break ;;
- esac
-done
-
-case $# in
- 0) echo "$me: missing argument$help" >&2
- exit 1;;
- 1) ;;
- *) echo "$me: too many arguments$help" >&2
- exit 1;;
-esac
-
-# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
-# Here we must recognize all the valid KERNEL-OS combinations.
-maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
-case $maybe_os in
- nto-qnx* | linux-gnu* | linux-dietlibc | kfreebsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*)
- os=-$maybe_os
- basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
- ;;
- *)
- basic_machine=`echo $1 | sed 's/-[^-]*$//'`
- if [ $basic_machine != $1 ]
- then os=`echo $1 | sed 's/.*-/-/'`
- else os=; fi
- ;;
-esac
-
-### Let's recognize common machines as not being operating systems so
-### that things like config.sub decstation-3100 work. We also
-### recognize some manufacturers as not being operating systems, so we
-### can provide default operating systems below.
-case $os in
- -sun*os*)
- # Prevent following clause from handling this invalid input.
- ;;
- -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
- -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
- -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
- -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
- -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
- -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
- -apple | -axis)
- os=
- basic_machine=$1
- ;;
- -sim | -cisco | -oki | -wec | -winbond)
- os=
- basic_machine=$1
- ;;
- -scout)
- ;;
- -wrs)
- os=-vxworks
- basic_machine=$1
- ;;
- -chorusos*)
- os=-chorusos
- basic_machine=$1
- ;;
- -chorusrdb)
- os=-chorusrdb
- basic_machine=$1
- ;;
- -hiux*)
- os=-hiuxwe2
- ;;
- -sco5)
- os=-sco3.2v5
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco4)
- os=-sco3.2v4
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco3.2.[4-9]*)
- os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco3.2v[4-9]*)
- # Don't forget version if it is 3.2v4 or newer.
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco*)
- os=-sco3.2v2
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -udk*)
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -isc)
- os=-isc2.2
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -clix*)
- basic_machine=clipper-intergraph
- ;;
- -isc*)
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -lynx*)
- os=-lynxos
- ;;
- -ptx*)
- basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
- ;;
- -windowsnt*)
- os=`echo $os | sed -e 's/windowsnt/winnt/'`
- ;;
- -psos*)
- os=-psos
- ;;
- -mint | -mint[0-9]*)
- basic_machine=m68k-atari
- os=-mint
- ;;
-esac
-
-# Decode aliases for certain CPU-COMPANY combinations.
-case $basic_machine in
- # Recognize the basic CPU types without company name.
- # Some are omitted here because they have special meanings below.
- 1750a | 580 \
- | a29k \
- | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
- | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
- | am33_2.0 \
- | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
- | c4x | clipper \
- | d10v | d30v | dlx | dsp16xx \
- | fr30 | frv \
- | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
- | i370 | i860 | i960 | ia64 \
- | ip2k | iq2000 \
- | m32r | m68000 | m68k | m88k | mcore \
- | mips | mipsbe | mipseb | mipsel | mipsle \
- | mips16 \
- | mips64 | mips64el \
- | mips64vr | mips64vrel \
- | mips64orion | mips64orionel \
- | mips64vr4100 | mips64vr4100el \
- | mips64vr4300 | mips64vr4300el \
- | mips64vr5000 | mips64vr5000el \
- | mipsisa32 | mipsisa32el \
- | mipsisa32r2 | mipsisa32r2el \
- | mipsisa64 | mipsisa64el \
- | mipsisa64sb1 | mipsisa64sb1el \
- | mipsisa64sr71k | mipsisa64sr71kel \
- | mipstx39 | mipstx39el \
- | mn10200 | mn10300 \
- | msp430 \
- | ns16k | ns32k \
- | openrisc | or32 \
- | pdp10 | pdp11 | pj | pjl \
- | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
- | pyramid \
- | sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
- | sh64 | sh64le \
- | sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv9 | sparcv9b \
- | strongarm \
- | tahoe | thumb | tic4x | tic80 | tron \
- | v850 | v850e \
- | we32k \
- | x86 | xscale | xstormy16 | xtensa \
- | z8k)
- basic_machine=$basic_machine-unknown
- ;;
- m6811 | m68hc11 | m6812 | m68hc12)
- # Motorola 68HC11/12.
- basic_machine=$basic_machine-unknown
- os=-none
- ;;
- m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
- ;;
-
- # We use `pc' rather than `unknown'
- # because (1) that's what they normally are, and
- # (2) the word "unknown" tends to confuse beginning users.
- i*86 | x86_64)
- basic_machine=$basic_machine-pc
- ;;
- # Object if more than one company name word.
- *-*-*)
- echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
- exit 1
- ;;
- # Recognize the basic CPU types with company name.
- 580-* \
- | a29k-* \
- | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
- | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
- | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
- | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
- | avr-* \
- | bs2000-* \
- | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
- | clipper-* | cydra-* \
- | d10v-* | d30v-* | dlx-* \
- | elxsi-* \
- | f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
- | h8300-* | h8500-* \
- | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
- | i*86-* | i860-* | i960-* | ia64-* \
- | ip2k-* | iq2000-* \
- | m32r-* \
- | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
- | m88110-* | m88k-* | mcore-* \
- | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
- | mips16-* \
- | mips64-* | mips64el-* \
- | mips64vr-* | mips64vrel-* \
- | mips64orion-* | mips64orionel-* \
- | mips64vr4100-* | mips64vr4100el-* \
- | mips64vr4300-* | mips64vr4300el-* \
- | mips64vr5000-* | mips64vr5000el-* \
- | mipsisa32-* | mipsisa32el-* \
- | mipsisa32r2-* | mipsisa32r2el-* \
- | mipsisa64-* | mipsisa64el-* \
- | mipsisa64sb1-* | mipsisa64sb1el-* \
- | mipsisa64sr71k-* | mipsisa64sr71kel-* \
- | mipstx39-* | mipstx39el-* \
- | msp430-* \
- | none-* | np1-* | nv1-* | ns16k-* | ns32k-* \
- | orion-* \
- | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
- | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
- | pyramid-* \
- | romp-* | rs6000-* \
- | sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \
- | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
- | sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \
- | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
- | tahoe-* | thumb-* \
- | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
- | tron-* \
- | v850-* | v850e-* | vax-* \
- | we32k-* \
- | x86-* | x86_64-* | xps100-* | xscale-* | xstormy16-* \
- | xtensa-* \
- | ymp-* \
- | z8k-*)
- ;;
- # Recognize the various machine names and aliases which stand
- # for a CPU type and a company and sometimes even an OS.
- 386bsd)
- basic_machine=i386-unknown
- os=-bsd
- ;;
- 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
- basic_machine=m68000-att
- ;;
- 3b*)
- basic_machine=we32k-att
- ;;
- a29khif)
- basic_machine=a29k-amd
- os=-udi
- ;;
- adobe68k)
- basic_machine=m68010-adobe
- os=-scout
- ;;
- alliant | fx80)
- basic_machine=fx80-alliant
- ;;
- altos | altos3068)
- basic_machine=m68k-altos
- ;;
- am29k)
- basic_machine=a29k-none
- os=-bsd
- ;;
- amd64)
- basic_machine=x86_64-pc
- ;;
- amdahl)
- basic_machine=580-amdahl
- os=-sysv
- ;;
- amiga | amiga-*)
- basic_machine=m68k-unknown
- ;;
- amigaos | amigados)
- basic_machine=m68k-unknown
- os=-amigaos
- ;;
- amigaunix | amix)
- basic_machine=m68k-unknown
- os=-sysv4
- ;;
- apollo68)
- basic_machine=m68k-apollo
- os=-sysv
- ;;
- apollo68bsd)
- basic_machine=m68k-apollo
- os=-bsd
- ;;
- aux)
- basic_machine=m68k-apple
- os=-aux
- ;;
- balance)
- basic_machine=ns32k-sequent
- os=-dynix
- ;;
- c90)
- basic_machine=c90-cray
- os=-unicos
- ;;
- convex-c1)
- basic_machine=c1-convex
- os=-bsd
- ;;
- convex-c2)
- basic_machine=c2-convex
- os=-bsd
- ;;
- convex-c32)
- basic_machine=c32-convex
- os=-bsd
- ;;
- convex-c34)
- basic_machine=c34-convex
- os=-bsd
- ;;
- convex-c38)
- basic_machine=c38-convex
- os=-bsd
- ;;
- cray | j90)
- basic_machine=j90-cray
- os=-unicos
- ;;
- crds | unos)
- basic_machine=m68k-crds
- ;;
- cris | cris-* | etrax*)
- basic_machine=cris-axis
- ;;
- da30 | da30-*)
- basic_machine=m68k-da30
- ;;
- decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
- basic_machine=mips-dec
- ;;
- decsystem10* | dec10*)
- basic_machine=pdp10-dec
- os=-tops10
- ;;
- decsystem20* | dec20*)
- basic_machine=pdp10-dec
- os=-tops20
- ;;
- delta | 3300 | motorola-3300 | motorola-delta \
- | 3300-motorola | delta-motorola)
- basic_machine=m68k-motorola
- ;;
- delta88)
- basic_machine=m88k-motorola
- os=-sysv3
- ;;
- dpx20 | dpx20-*)
- basic_machine=rs6000-bull
- os=-bosx
- ;;
- dpx2* | dpx2*-bull)
- basic_machine=m68k-bull
- os=-sysv3
- ;;
- ebmon29k)
- basic_machine=a29k-amd
- os=-ebmon
- ;;
- elxsi)
- basic_machine=elxsi-elxsi
- os=-bsd
- ;;
- encore | umax | mmax)
- basic_machine=ns32k-encore
- ;;
- es1800 | OSE68k | ose68k | ose | OSE)
- basic_machine=m68k-ericsson
- os=-ose
- ;;
- fx2800)
- basic_machine=i860-alliant
- ;;
- genix)
- basic_machine=ns32k-ns
- ;;
- gmicro)
- basic_machine=tron-gmicro
- os=-sysv
- ;;
- go32)
- basic_machine=i386-pc
- os=-go32
- ;;
- h3050r* | hiux*)
- basic_machine=hppa1.1-hitachi
- os=-hiuxwe2
- ;;
- h8300hms)
- basic_machine=h8300-hitachi
- os=-hms
- ;;
- h8300xray)
- basic_machine=h8300-hitachi
- os=-xray
- ;;
- h8500hms)
- basic_machine=h8500-hitachi
- os=-hms
- ;;
- harris)
- basic_machine=m88k-harris
- os=-sysv3
- ;;
- hp300-*)
- basic_machine=m68k-hp
- ;;
- hp300bsd)
- basic_machine=m68k-hp
- os=-bsd
- ;;
- hp300hpux)
- basic_machine=m68k-hp
- os=-hpux
- ;;
- hp3k9[0-9][0-9] | hp9[0-9][0-9])
- basic_machine=hppa1.0-hp
- ;;
- hp9k2[0-9][0-9] | hp9k31[0-9])
- basic_machine=m68000-hp
- ;;
- hp9k3[2-9][0-9])
- basic_machine=m68k-hp
- ;;
- hp9k6[0-9][0-9] | hp6[0-9][0-9])
- basic_machine=hppa1.0-hp
- ;;
- hp9k7[0-79][0-9] | hp7[0-79][0-9])
- basic_machine=hppa1.1-hp
- ;;
- hp9k78[0-9] | hp78[0-9])
- # FIXME: really hppa2.0-hp
- basic_machine=hppa1.1-hp
- ;;
- hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
- # FIXME: really hppa2.0-hp
- basic_machine=hppa1.1-hp
- ;;
- hp9k8[0-9][13679] | hp8[0-9][13679])
- basic_machine=hppa1.1-hp
- ;;
- hp9k8[0-9][0-9] | hp8[0-9][0-9])
- basic_machine=hppa1.0-hp
- ;;
- hppa-next)
- os=-nextstep3
- ;;
- hppaosf)
- basic_machine=hppa1.1-hp
- os=-osf
- ;;
- hppro)
- basic_machine=hppa1.1-hp
- os=-proelf
- ;;
- i370-ibm* | ibm*)
- basic_machine=i370-ibm
- ;;
-# I'm not sure what "Sysv32" means. Should this be sysv3.2?
- i*86v32)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv32
- ;;
- i*86v4*)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv4
- ;;
- i*86v)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv
- ;;
- i*86sol2)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-solaris2
- ;;
- i386mach)
- basic_machine=i386-mach
- os=-mach
- ;;
- i386-vsta | vsta)
- basic_machine=i386-unknown
- os=-vsta
- ;;
- iris | iris4d)
- basic_machine=mips-sgi
- case $os in
- -irix*)
- ;;
- *)
- os=-irix4
- ;;
- esac
- ;;
- isi68 | isi)
- basic_machine=m68k-isi
- os=-sysv
- ;;
- m88k-omron*)
- basic_machine=m88k-omron
- ;;
- magnum | m3230)
- basic_machine=mips-mips
- os=-sysv
- ;;
- merlin)
- basic_machine=ns32k-utek
- os=-sysv
- ;;
- mingw32)
- basic_machine=i386-pc
- os=-mingw32
- ;;
- miniframe)
- basic_machine=m68000-convergent
- ;;
- *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
- basic_machine=m68k-atari
- os=-mint
- ;;
- mips3*-*)
- basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
- ;;
- mips3*)
- basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
- ;;
- mmix*)
- basic_machine=mmix-knuth
- os=-mmixware
- ;;
- monitor)
- basic_machine=m68k-rom68k
- os=-coff
- ;;
- morphos)
- basic_machine=powerpc-unknown
- os=-morphos
- ;;
- msdos)
- basic_machine=i386-pc
- os=-msdos
- ;;
- mvs)
- basic_machine=i370-ibm
- os=-mvs
- ;;
- ncr3000)
- basic_machine=i486-ncr
- os=-sysv4
- ;;
- netbsd386)
- basic_machine=i386-unknown
- os=-netbsd
- ;;
- netwinder)
- basic_machine=armv4l-rebel
- os=-linux
- ;;
- news | news700 | news800 | news900)
- basic_machine=m68k-sony
- os=-newsos
- ;;
- news1000)
- basic_machine=m68030-sony
- os=-newsos
- ;;
- news-3600 | risc-news)
- basic_machine=mips-sony
- os=-newsos
- ;;
- necv70)
- basic_machine=v70-nec
- os=-sysv
- ;;
- next | m*-next )
- basic_machine=m68k-next
- case $os in
- -nextstep* )
- ;;
- -ns2*)
- os=-nextstep2
- ;;
- *)
- os=-nextstep3
- ;;
- esac
- ;;
- nh3000)
- basic_machine=m68k-harris
- os=-cxux
- ;;
- nh[45]000)
- basic_machine=m88k-harris
- os=-cxux
- ;;
- nindy960)
- basic_machine=i960-intel
- os=-nindy
- ;;
- mon960)
- basic_machine=i960-intel
- os=-mon960
- ;;
- nonstopux)
- basic_machine=mips-compaq
- os=-nonstopux
- ;;
- np1)
- basic_machine=np1-gould
- ;;
- nv1)
- basic_machine=nv1-cray
- os=-unicosmp
- ;;
- nsr-tandem)
- basic_machine=nsr-tandem
- ;;
- op50n-* | op60c-*)
- basic_machine=hppa1.1-oki
- os=-proelf
- ;;
- or32 | or32-*)
- basic_machine=or32-unknown
- os=-coff
- ;;
- OSE68000 | ose68000)
- basic_machine=m68000-ericsson
- os=-ose
- ;;
- os68k)
- basic_machine=m68k-none
- os=-os68k
- ;;
- pa-hitachi)
- basic_machine=hppa1.1-hitachi
- os=-hiuxwe2
- ;;
- paragon)
- basic_machine=i860-intel
- os=-osf
- ;;
- pbd)
- basic_machine=sparc-tti
- ;;
- pbb)
- basic_machine=m68k-tti
- ;;
- pc532 | pc532-*)
- basic_machine=ns32k-pc532
- ;;
- pentium | p5 | k5 | k6 | nexgen | viac3)
- basic_machine=i586-pc
- ;;
- pentiumpro | p6 | 6x86 | athlon | athlon_*)
- basic_machine=i686-pc
- ;;
- pentiumii | pentium2 | pentiumiii | pentium3)
- basic_machine=i686-pc
- ;;
- pentium4)
- basic_machine=i786-pc
- ;;
- pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
- basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pentiumpro-* | p6-* | 6x86-* | athlon-*)
- basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
- basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pentium4-*)
- basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pn)
- basic_machine=pn-gould
- ;;
- power) basic_machine=power-ibm
- ;;
- ppc) basic_machine=powerpc-unknown
- ;;
- ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- ppcle | powerpclittle | ppc-le | powerpc-little)
- basic_machine=powerpcle-unknown
- ;;
- ppcle-* | powerpclittle-*)
- basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- ppc64) basic_machine=powerpc64-unknown
- ;;
- ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- ppc64le | powerpc64little | ppc64-le | powerpc64-little)
- basic_machine=powerpc64le-unknown
- ;;
- ppc64le-* | powerpc64little-*)
- basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- ps2)
- basic_machine=i386-ibm
- ;;
- pw32)
- basic_machine=i586-unknown
- os=-pw32
- ;;
- rom68k)
- basic_machine=m68k-rom68k
- os=-coff
- ;;
- rm[46]00)
- basic_machine=mips-siemens
- ;;
- rtpc | rtpc-*)
- basic_machine=romp-ibm
- ;;
- s390 | s390-*)
- basic_machine=s390-ibm
- ;;
- s390x | s390x-*)
- basic_machine=s390x-ibm
- ;;
- sa29200)
- basic_machine=a29k-amd
- os=-udi
- ;;
- sb1)
- basic_machine=mipsisa64sb1-unknown
- ;;
- sb1el)
- basic_machine=mipsisa64sb1el-unknown
- ;;
- sei)
- basic_machine=mips-sei
- os=-seiux
- ;;
- sequent)
- basic_machine=i386-sequent
- ;;
- sh)
- basic_machine=sh-hitachi
- os=-hms
- ;;
- sh64)
- basic_machine=sh64-unknown
- ;;
- sparclite-wrs | simso-wrs)
- basic_machine=sparclite-wrs
- os=-vxworks
- ;;
- sps7)
- basic_machine=m68k-bull
- os=-sysv2
- ;;
- spur)
- basic_machine=spur-unknown
- ;;
- st2000)
- basic_machine=m68k-tandem
- ;;
- stratus)
- basic_machine=i860-stratus
- os=-sysv4
- ;;
- sun2)
- basic_machine=m68000-sun
- ;;
- sun2os3)
- basic_machine=m68000-sun
- os=-sunos3
- ;;
- sun2os4)
- basic_machine=m68000-sun
- os=-sunos4
- ;;
- sun3os3)
- basic_machine=m68k-sun
- os=-sunos3
- ;;
- sun3os4)
- basic_machine=m68k-sun
- os=-sunos4
- ;;
- sun4os3)
- basic_machine=sparc-sun
- os=-sunos3
- ;;
- sun4os4)
- basic_machine=sparc-sun
- os=-sunos4
- ;;
- sun4sol2)
- basic_machine=sparc-sun
- os=-solaris2
- ;;
- sun3 | sun3-*)
- basic_machine=m68k-sun
- ;;
- sun4)
- basic_machine=sparc-sun
- ;;
- sun386 | sun386i | roadrunner)
- basic_machine=i386-sun
- ;;
- sv1)
- basic_machine=sv1-cray
- os=-unicos
- ;;
- symmetry)
- basic_machine=i386-sequent
- os=-dynix
- ;;
- t3e)
- basic_machine=alphaev5-cray
- os=-unicos
- ;;
- t90)
- basic_machine=t90-cray
- os=-unicos
- ;;
- tic54x | c54x*)
- basic_machine=tic54x-unknown
- os=-coff
- ;;
- tic55x | c55x*)
- basic_machine=tic55x-unknown
- os=-coff
- ;;
- tic6x | c6x*)
- basic_machine=tic6x-unknown
- os=-coff
- ;;
- tx39)
- basic_machine=mipstx39-unknown
- ;;
- tx39el)
- basic_machine=mipstx39el-unknown
- ;;
- toad1)
- basic_machine=pdp10-xkl
- os=-tops20
- ;;
- tower | tower-32)
- basic_machine=m68k-ncr
- ;;
- udi29k)
- basic_machine=a29k-amd
- os=-udi
- ;;
- ultra3)
- basic_machine=a29k-nyu
- os=-sym1
- ;;
- v810 | necv810)
- basic_machine=v810-nec
- os=-none
- ;;
- vaxv)
- basic_machine=vax-dec
- os=-sysv
- ;;
- vms)
- basic_machine=vax-dec
- os=-vms
- ;;
- vpp*|vx|vx-*)
- basic_machine=f301-fujitsu
- ;;
- vxworks960)
- basic_machine=i960-wrs
- os=-vxworks
- ;;
- vxworks68)
- basic_machine=m68k-wrs
- os=-vxworks
- ;;
- vxworks29k)
- basic_machine=a29k-wrs
- os=-vxworks
- ;;
- w65*)
- basic_machine=w65-wdc
- os=-none
- ;;
- w89k-*)
- basic_machine=hppa1.1-winbond
- os=-proelf
- ;;
- xps | xps100)
- basic_machine=xps100-honeywell
- ;;
- ymp)
- basic_machine=ymp-cray
- os=-unicos
- ;;
- z8k-*-coff)
- basic_machine=z8k-unknown
- os=-sim
- ;;
- none)
- basic_machine=none-none
- os=-none
- ;;
-
-# Here we handle the default manufacturer of certain CPU types. It is in
-# some cases the only manufacturer, in others, it is the most popular.
- w89k)
- basic_machine=hppa1.1-winbond
- ;;
- op50n)
- basic_machine=hppa1.1-oki
- ;;
- op60c)
- basic_machine=hppa1.1-oki
- ;;
- romp)
- basic_machine=romp-ibm
- ;;
- rs6000)
- basic_machine=rs6000-ibm
- ;;
- vax)
- basic_machine=vax-dec
- ;;
- pdp10)
- # there are many clones, so DEC is not a safe bet
- basic_machine=pdp10-unknown
- ;;
- pdp11)
- basic_machine=pdp11-dec
- ;;
- we32k)
- basic_machine=we32k-att
- ;;
- sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele)
- basic_machine=sh-unknown
- ;;
- sh64)
- basic_machine=sh64-unknown
- ;;
- sparc | sparcv9 | sparcv9b)
- basic_machine=sparc-sun
- ;;
- cydra)
- basic_machine=cydra-cydrome
- ;;
- orion)
- basic_machine=orion-highlevel
- ;;
- orion105)
- basic_machine=clipper-highlevel
- ;;
- mac | mpw | mac-mpw)
- basic_machine=m68k-apple
- ;;
- pmac | pmac-mpw)
- basic_machine=powerpc-apple
- ;;
- *-unknown)
- # Make sure to match an already-canonicalized machine name.
- ;;
- *)
- echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
- exit 1
- ;;
-esac
-
-# Here we canonicalize certain aliases for manufacturers.
-case $basic_machine in
- *-digital*)
- basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
- ;;
- *-commodore*)
- basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
- ;;
- *)
- ;;
-esac
-
-# Decode manufacturer-specific aliases for certain operating systems.
-
-if [ x"$os" != x"" ]
-then
-case $os in
- # First match some system type aliases
- # that might get confused with valid system types.
- # -solaris* is a basic system type, with this one exception.
- -solaris1 | -solaris1.*)
- os=`echo $os | sed -e 's|solaris1|sunos4|'`
- ;;
- -solaris)
- os=-solaris2
- ;;
- -svr4*)
- os=-sysv4
- ;;
- -unixware*)
- os=-sysv4.2uw
- ;;
- -gnu/linux*)
- os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
- ;;
- # First accept the basic system types.
- # The portable systems comes first.
- # Each alternative MUST END IN A *, to match a version number.
- # -sysv* is not here because it comes later, after sysvr4.
- -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
- | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
- | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
- | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
- | -aos* \
- | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
- | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
- | -hiux* | -386bsd* | -netbsd* | -openbsd* | -kfreebsd* | -freebsd* | -riscix* \
- | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
- | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
- | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
- | -chorusos* | -chorusrdb* \
- | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
- | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
- | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
- | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
- | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
- | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
- | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
- | -powermax* | -dnix* | -nx6 | -nx7 | -sei*)
- # Remember, each alternative MUST END IN *, to match a version number.
- ;;
- -qnx*)
- case $basic_machine in
- x86-* | i*86-*)
- ;;
- *)
- os=-nto$os
- ;;
- esac
- ;;
- -nto-qnx*)
- ;;
- -nto*)
- os=`echo $os | sed -e 's|nto|nto-qnx|'`
- ;;
- -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
- | -windows* | -osx | -abug | -netware* | -os9* | -beos* \
- | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
- ;;
- -mac*)
- os=`echo $os | sed -e 's|mac|macos|'`
- ;;
- -linux-dietlibc)
- os=-linux-dietlibc
- ;;
- -linux*)
- os=`echo $os | sed -e 's|linux|linux-gnu|'`
- ;;
- -sunos5*)
- os=`echo $os | sed -e 's|sunos5|solaris2|'`
- ;;
- -sunos6*)
- os=`echo $os | sed -e 's|sunos6|solaris3|'`
- ;;
- -opened*)
- os=-openedition
- ;;
- -wince*)
- os=-wince
- ;;
- -osfrose*)
- os=-osfrose
- ;;
- -osf*)
- os=-osf
- ;;
- -utek*)
- os=-bsd
- ;;
- -dynix*)
- os=-bsd
- ;;
- -acis*)
- os=-aos
- ;;
- -atheos*)
- os=-atheos
- ;;
- -386bsd)
- os=-bsd
- ;;
- -ctix* | -uts*)
- os=-sysv
- ;;
- -nova*)
- os=-rtmk-nova
- ;;
- -ns2 )
- os=-nextstep2
- ;;
- -nsk*)
- os=-nsk
- ;;
- # Preserve the version number of sinix5.
- -sinix5.*)
- os=`echo $os | sed -e 's|sinix|sysv|'`
- ;;
- -sinix*)
- os=-sysv4
- ;;
- -triton*)
- os=-sysv3
- ;;
- -oss*)
- os=-sysv3
- ;;
- -svr4)
- os=-sysv4
- ;;
- -svr3)
- os=-sysv3
- ;;
- -sysvr4)
- os=-sysv4
- ;;
- # This must come after -sysvr4.
- -sysv*)
- ;;
- -ose*)
- os=-ose
- ;;
- -es1800*)
- os=-ose
- ;;
- -xenix)
- os=-xenix
- ;;
- -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
- os=-mint
- ;;
- -aros*)
- os=-aros
- ;;
- -kaos*)
- os=-kaos
- ;;
- -none)
- ;;
- *)
- # Get rid of the `-' at the beginning of $os.
- os=`echo $os | sed 's/[^-]*-//'`
- echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
- exit 1
- ;;
-esac
-else
-
-# Here we handle the default operating systems that come with various machines.
-# The value should be what the vendor currently ships out the door with their
-# machine or put another way, the most popular os provided with the machine.
-
-# Note that if you're going to try to match "-MANUFACTURER" here (say,
-# "-sun"), then you have to tell the case statement up towards the top
-# that MANUFACTURER isn't an operating system. Otherwise, code above
-# will signal an error saying that MANUFACTURER isn't an operating
-# system, and we'll never get to this point.
-
-case $basic_machine in
- *-acorn)
- os=-riscix1.2
- ;;
- arm*-rebel)
- os=-linux
- ;;
- arm*-semi)
- os=-aout
- ;;
- c4x-* | tic4x-*)
- os=-coff
- ;;
- # This must come before the *-dec entry.
- pdp10-*)
- os=-tops20
- ;;
- pdp11-*)
- os=-none
- ;;
- *-dec | vax-*)
- os=-ultrix4.2
- ;;
- m68*-apollo)
- os=-domain
- ;;
- i386-sun)
- os=-sunos4.0.2
- ;;
- m68000-sun)
- os=-sunos3
- # This also exists in the configure program, but was not the
- # default.
- # os=-sunos4
- ;;
- m68*-cisco)
- os=-aout
- ;;
- mips*-cisco)
- os=-elf
- ;;
- mips*-*)
- os=-elf
- ;;
- or32-*)
- os=-coff
- ;;
- *-tti) # must be before sparc entry or we get the wrong os.
- os=-sysv3
- ;;
- sparc-* | *-sun)
- os=-sunos4.1.1
- ;;
- *-be)
- os=-beos
- ;;
- *-ibm)
- os=-aix
- ;;
- *-wec)
- os=-proelf
- ;;
- *-winbond)
- os=-proelf
- ;;
- *-oki)
- os=-proelf
- ;;
- *-hp)
- os=-hpux
- ;;
- *-hitachi)
- os=-hiux
- ;;
- i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
- os=-sysv
- ;;
- *-cbm)
- os=-amigaos
- ;;
- *-dg)
- os=-dgux
- ;;
- *-dolphin)
- os=-sysv3
- ;;
- m68k-ccur)
- os=-rtu
- ;;
- m88k-omron*)
- os=-luna
- ;;
- *-next )
- os=-nextstep
- ;;
- *-sequent)
- os=-ptx
- ;;
- *-crds)
- os=-unos
- ;;
- *-ns)
- os=-genix
- ;;
- i370-*)
- os=-mvs
- ;;
- *-next)
- os=-nextstep3
- ;;
- *-gould)
- os=-sysv
- ;;
- *-highlevel)
- os=-bsd
- ;;
- *-encore)
- os=-bsd
- ;;
- *-sgi)
- os=-irix
- ;;
- *-siemens)
- os=-sysv4
- ;;
- *-masscomp)
- os=-rtu
- ;;
- f30[01]-fujitsu | f700-fujitsu)
- os=-uxpv
- ;;
- *-rom68k)
- os=-coff
- ;;
- *-*bug)
- os=-coff
- ;;
- *-apple)
- os=-macos
- ;;
- *-atari*)
- os=-mint
- ;;
- *)
- os=-none
- ;;
-esac
-fi
-
-# Here we handle the case where we know the os, and the CPU type, but not the
-# manufacturer. We pick the logical manufacturer.
-vendor=unknown
-case $basic_machine in
- *-unknown)
- case $os in
- -riscix*)
- vendor=acorn
- ;;
- -sunos*)
- vendor=sun
- ;;
- -aix*)
- vendor=ibm
- ;;
- -beos*)
- vendor=be
- ;;
- -hpux*)
- vendor=hp
- ;;
- -mpeix*)
- vendor=hp
- ;;
- -hiux*)
- vendor=hitachi
- ;;
- -unos*)
- vendor=crds
- ;;
- -dgux*)
- vendor=dg
- ;;
- -luna*)
- vendor=omron
- ;;
- -genix*)
- vendor=ns
- ;;
- -mvs* | -opened*)
- vendor=ibm
- ;;
- -ptx*)
- vendor=sequent
- ;;
- -vxsim* | -vxworks* | -windiss*)
- vendor=wrs
- ;;
- -aux*)
- vendor=apple
- ;;
- -hms*)
- vendor=hitachi
- ;;
- -mpw* | -macos*)
- vendor=apple
- ;;
- -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
- vendor=atari
- ;;
- -vos*)
- vendor=stratus
- ;;
- esac
- basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
- ;;
-esac
-
-echo $basic_machine$os
-exit 0
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "timestamp='"
-# time-stamp-format: "%:y-%02m-%02d"
-# time-stamp-end: "'"
-# End:
diff --git a/lib-src/sbsms/config/depcomp b/lib-src/sbsms/config/depcomp
deleted file mode 100755
index edb5d38..0000000
--- a/lib-src/sbsms/config/depcomp
+++ /dev/null
@@ -1,479 +0,0 @@
-#! /bin/sh
-
-# depcomp - compile a program generating dependencies as side-effects
-# Copyright 1999, 2000, 2003 Free Software Foundation, Inc.
-
-# 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, 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., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
-
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-# Originally written by Alexandre Oliva <oliva at dcc.unicamp.br>.
-
-if test -z "$depmode" || test -z "$source" || test -z "$object"; then
- echo "depcomp: Variables source, object and depmode must be set" 1>&2
- exit 1
-fi
-# `libtool' can also be set to `yes' or `no'.
-
-if test -z "$depfile"; then
- base=`echo "$object" | sed -e 's,^.*/,,' -e 's,\.\([^.]*\)$,.P\1,'`
- dir=`echo "$object" | sed 's,/.*$,/,'`
- if test "$dir" = "$object"; then
- dir=
- fi
- # FIXME: should be _deps on DOS.
- depfile="$dir.deps/$base"
-fi
-
-tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
-
-rm -f "$tmpdepfile"
-
-# Some modes work just like other modes, but use different flags. We
-# parameterize here, but still list the modes in the big case below,
-# to make depend.m4 easier to write. Note that we *cannot* use a case
-# here, because this file can only contain one case statement.
-if test "$depmode" = hp; then
- # HP compiler uses -M and no extra arg.
- gccflag=-M
- depmode=gcc
-fi
-
-if test "$depmode" = dashXmstdout; then
- # This is just like dashmstdout with a different argument.
- dashmflag=-xM
- depmode=dashmstdout
-fi
-
-case "$depmode" in
-gcc3)
-## gcc 3 implements dependency tracking that does exactly what
-## we want. Yay! Note: for some reason libtool 1.4 doesn't like
-## it if -MD -MP comes after the -MF stuff. Hmm.
- "$@" -MT "$object" -MD -MP -MF "$tmpdepfile"
- stat=$?
- if test $stat -eq 0; then :
- else
- rm -f "$tmpdepfile"
- exit $stat
- fi
- mv "$tmpdepfile" "$depfile"
- ;;
-
-gcc)
-## There are various ways to get dependency output from gcc. Here's
-## why we pick this rather obscure method:
-## - Don't want to use -MD because we'd like the dependencies to end
-## up in a subdir. Having to rename by hand is ugly.
-## (We might end up doing this anyway to support other compilers.)
-## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
-## -MM, not -M (despite what the docs say).
-## - Using -M directly means running the compiler twice (even worse
-## than renaming).
- if test -z "$gccflag"; then
- gccflag=-MD,
- fi
- "$@" -Wp,"$gccflag$tmpdepfile"
- stat=$?
- if test $stat -eq 0; then :
- else
- rm -f "$tmpdepfile"
- exit $stat
- fi
- rm -f "$depfile"
- echo "$object : \\" > "$depfile"
- alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
-## The second -e expression handles DOS-style file names with drive letters.
- sed -e 's/^[^:]*: / /' \
- -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
-## This next piece of magic avoids the `deleted header file' problem.
-## The problem is that when a header file which appears in a .P file
-## is deleted, the dependency causes make to die (because there is
-## typically no way to rebuild the header). We avoid this by adding
-## dummy dependencies for each header file. Too bad gcc doesn't do
-## this for us directly.
- tr ' ' '
-' < "$tmpdepfile" |
-## Some versions of gcc put a space before the `:'. On the theory
-## that the space means something, we add a space to the output as
-## well.
-## Some versions of the HPUX 10.20 sed can't process this invocation
-## correctly. Breaking it into two sed invocations is a workaround.
- sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
- rm -f "$tmpdepfile"
- ;;
-
-hp)
- # This case exists only to let depend.m4 do its work. It works by
- # looking at the text of this script. This case will never be run,
- # since it is checked for above.
- exit 1
- ;;
-
-sgi)
- if test "$libtool" = yes; then
- "$@" "-Wp,-MDupdate,$tmpdepfile"
- else
- "$@" -MDupdate "$tmpdepfile"
- fi
- stat=$?
- if test $stat -eq 0; then :
- else
- rm -f "$tmpdepfile"
- exit $stat
- fi
- rm -f "$depfile"
-
- if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files
- echo "$object : \\" > "$depfile"
-
- # Clip off the initial element (the dependent). Don't try to be
- # clever and replace this with sed code, as IRIX sed won't handle
- # lines with more than a fixed number of characters (4096 in
- # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines;
- # the IRIX cc adds comments like `#:fec' to the end of the
- # dependency line.
- tr ' ' '
-' < "$tmpdepfile" \
- | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
- tr '
-' ' ' >> $depfile
- echo >> $depfile
-
- # The second pass generates a dummy entry for each header file.
- tr ' ' '
-' < "$tmpdepfile" \
- | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
- >> $depfile
- else
- # The sourcefile does not contain any dependencies, so just
- # store a dummy comment line, to avoid errors with the Makefile
- # "include basename.Plo" scheme.
- echo "#dummy" > "$depfile"
- fi
- rm -f "$tmpdepfile"
- ;;
-
-aix)
- # The C for AIX Compiler uses -M and outputs the dependencies
- # in a .u file. In older versions, this file always lives in the
- # current directory. Also, the AIX compiler puts `$object:' at the
- # start of each line; $object doesn't have directory information.
- # Version 6 uses the directory in both cases.
- stripped=`echo "$object" | sed 's/\(.*\)\..*$/\1/'`
- tmpdepfile="$stripped.u"
- if test "$libtool" = yes; then
- "$@" -Wc,-M
- else
- "$@" -M
- fi
- stat=$?
-
- if test -f "$tmpdepfile"; then :
- else
- stripped=`echo "$stripped" | sed 's,^.*/,,'`
- tmpdepfile="$stripped.u"
- fi
-
- if test $stat -eq 0; then :
- else
- rm -f "$tmpdepfile"
- exit $stat
- fi
-
- if test -f "$tmpdepfile"; then
- outname="$stripped.o"
- # Each line is of the form `foo.o: dependent.h'.
- # Do two passes, one to just change these to
- # `$object: dependent.h' and one to simply `dependent.h:'.
- sed -e "s,^$outname:,$object :," < "$tmpdepfile" > "$depfile"
- sed -e "s,^$outname: \(.*\)$,\1:," < "$tmpdepfile" >> "$depfile"
- else
- # The sourcefile does not contain any dependencies, so just
- # store a dummy comment line, to avoid errors with the Makefile
- # "include basename.Plo" scheme.
- echo "#dummy" > "$depfile"
- fi
- rm -f "$tmpdepfile"
- ;;
-
-icc)
- # Intel's C compiler understands `-MD -MF file'. However on
- # icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c
- # ICC 7.0 will fill foo.d with something like
- # foo.o: sub/foo.c
- # foo.o: sub/foo.h
- # which is wrong. We want:
- # sub/foo.o: sub/foo.c
- # sub/foo.o: sub/foo.h
- # sub/foo.c:
- # sub/foo.h:
- # ICC 7.1 will output
- # foo.o: sub/foo.c sub/foo.h
- # and will wrap long lines using \ :
- # foo.o: sub/foo.c ... \
- # sub/foo.h ... \
- # ...
-
- "$@" -MD -MF "$tmpdepfile"
- stat=$?
- if test $stat -eq 0; then :
- else
- rm -f "$tmpdepfile"
- exit $stat
- fi
- rm -f "$depfile"
- # Each line is of the form `foo.o: dependent.h',
- # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
- # Do two passes, one to just change these to
- # `$object: dependent.h' and one to simply `dependent.h:'.
- sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
- # Some versions of the HPUX 10.20 sed can't process this invocation
- # correctly. Breaking it into two sed invocations is a workaround.
- sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" |
- sed -e 's/$/ :/' >> "$depfile"
- rm -f "$tmpdepfile"
- ;;
-
-tru64)
- # The Tru64 compiler uses -MD to generate dependencies as a side
- # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'.
- # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
- # dependencies in `foo.d' instead, so we check for that too.
- # Subdirectories are respected.
- dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
- test "x$dir" = "x$object" && dir=
- base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
-
- if test "$libtool" = yes; then
- tmpdepfile1="$dir.libs/$base.lo.d"
- tmpdepfile2="$dir.libs/$base.d"
- "$@" -Wc,-MD
- else
- tmpdepfile1="$dir$base.o.d"
- tmpdepfile2="$dir$base.d"
- "$@" -MD
- fi
-
- stat=$?
- if test $stat -eq 0; then :
- else
- rm -f "$tmpdepfile1" "$tmpdepfile2"
- exit $stat
- fi
-
- if test -f "$tmpdepfile1"; then
- tmpdepfile="$tmpdepfile1"
- else
- tmpdepfile="$tmpdepfile2"
- fi
- if test -f "$tmpdepfile"; then
- sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
- # That's a tab and a space in the [].
- sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
- else
- echo "#dummy" > "$depfile"
- fi
- rm -f "$tmpdepfile"
- ;;
-
-#nosideeffect)
- # This comment above is used by automake to tell side-effect
- # dependency tracking mechanisms from slower ones.
-
-dashmstdout)
- # Important note: in order to support this mode, a compiler *must*
- # always write the preprocessed file to stdout, regardless of -o.
- "$@" || exit $?
-
- # Remove the call to Libtool.
- if test "$libtool" = yes; then
- while test $1 != '--mode=compile'; do
- shift
- done
- shift
- fi
-
- # Remove `-o $object'.
- IFS=" "
- for arg
- do
- case $arg in
- -o)
- shift
- ;;
- $object)
- shift
- ;;
- *)
- set fnord "$@" "$arg"
- shift # fnord
- shift # $arg
- ;;
- esac
- done
-
- test -z "$dashmflag" && dashmflag=-M
- # Require at least two characters before searching for `:'
- # in the target name. This is to cope with DOS-style filenames:
- # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise.
- "$@" $dashmflag |
- sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile"
- rm -f "$depfile"
- cat < "$tmpdepfile" > "$depfile"
- tr ' ' '
-' < "$tmpdepfile" | \
-## Some versions of the HPUX 10.20 sed can't process this invocation
-## correctly. Breaking it into two sed invocations is a workaround.
- sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
- rm -f "$tmpdepfile"
- ;;
-
-dashXmstdout)
- # This case only exists to satisfy depend.m4. It is never actually
- # run, as this mode is specially recognized in the preamble.
- exit 1
- ;;
-
-makedepend)
- "$@" || exit $?
- # Remove any Libtool call
- if test "$libtool" = yes; then
- while test $1 != '--mode=compile'; do
- shift
- done
- shift
- fi
- # X makedepend
- shift
- cleared=no
- for arg in "$@"; do
- case $cleared in
- no)
- set ""; shift
- cleared=yes ;;
- esac
- case "$arg" in
- -D*|-I*)
- set fnord "$@" "$arg"; shift ;;
- # Strip any option that makedepend may not understand. Remove
- # the object too, otherwise makedepend will parse it as a source file.
- -*|$object)
- ;;
- *)
- set fnord "$@" "$arg"; shift ;;
- esac
- done
- obj_suffix="`echo $object | sed 's/^.*\././'`"
- touch "$tmpdepfile"
- ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
- rm -f "$depfile"
- cat < "$tmpdepfile" > "$depfile"
- sed '1,2d' "$tmpdepfile" | tr ' ' '
-' | \
-## Some versions of the HPUX 10.20 sed can't process this invocation
-## correctly. Breaking it into two sed invocations is a workaround.
- sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
- rm -f "$tmpdepfile" "$tmpdepfile".bak
- ;;
-
-cpp)
- # Important note: in order to support this mode, a compiler *must*
- # always write the preprocessed file to stdout.
- "$@" || exit $?
-
- # Remove the call to Libtool.
- if test "$libtool" = yes; then
- while test $1 != '--mode=compile'; do
- shift
- done
- shift
- fi
-
- # Remove `-o $object'.
- IFS=" "
- for arg
- do
- case $arg in
- -o)
- shift
- ;;
- $object)
- shift
- ;;
- *)
- set fnord "$@" "$arg"
- shift # fnord
- shift # $arg
- ;;
- esac
- done
-
- "$@" -E |
- sed -n '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
- sed '$ s: \\$::' > "$tmpdepfile"
- rm -f "$depfile"
- echo "$object : \\" > "$depfile"
- cat < "$tmpdepfile" >> "$depfile"
- sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"
- rm -f "$tmpdepfile"
- ;;
-
-msvisualcpp)
- # Important note: in order to support this mode, a compiler *must*
- # always write the preprocessed file to stdout, regardless of -o,
- # because we must use -o when running libtool.
- "$@" || exit $?
- IFS=" "
- for arg
- do
- case "$arg" in
- "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
- set fnord "$@"
- shift
- shift
- ;;
- *)
- set fnord "$@" "$arg"
- shift
- shift
- ;;
- esac
- done
- "$@" -E |
- sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile"
- rm -f "$depfile"
- echo "$object : \\" > "$depfile"
- . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile"
- echo " " >> "$depfile"
- . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile"
- rm -f "$tmpdepfile"
- ;;
-
-none)
- exec "$@"
- ;;
-
-*)
- echo "Unknown depmode $depmode" 1>&2
- exit 1
- ;;
-esac
-
-exit 0
diff --git a/lib-src/sbsms/config/install-sh b/lib-src/sbsms/config/install-sh
deleted file mode 100755
index 6ce63b9..0000000
--- a/lib-src/sbsms/config/install-sh
+++ /dev/null
@@ -1,294 +0,0 @@
-#!/bin/sh
-#
-# install - install a program, script, or datafile
-#
-# This originates from X11R5 (mit/util/scripts/install.sh), which was
-# later released in X11R6 (xc/config/util/install.sh) with the
-# following copyright and license.
-#
-# Copyright (C) 1994 X Consortium
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to
-# deal in the Software without restriction, including without limitation the
-# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
-# sell copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
-# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
-# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-#
-# Except as contained in this notice, the name of the X Consortium shall not
-# be used in advertising or otherwise to promote the sale, use or other deal-
-# ings in this Software without prior written authorization from the X Consor-
-# tium.
-#
-#
-# FSF changes to this file are in the public domain.
-#
-# Calling this script install-sh is preferred over install.sh, to prevent
-# `make' implicit rules from creating a file called install from it
-# when there is no Makefile.
-#
-# This script is compatible with the BSD install script, but was written
-# from scratch. It can only install one file at a time, a restriction
-# shared with many OS's install programs.
-
-
-# set DOITPROG to echo to test this script
-
-# Don't use :- since 4.3BSD and earlier shells don't like it.
-doit="${DOITPROG-}"
-
-
-# put in absolute paths if you don't have them in your path; or use env. vars.
-
-mvprog="${MVPROG-mv}"
-cpprog="${CPPROG-cp}"
-chmodprog="${CHMODPROG-chmod}"
-chownprog="${CHOWNPROG-chown}"
-chgrpprog="${CHGRPPROG-chgrp}"
-stripprog="${STRIPPROG-strip}"
-rmprog="${RMPROG-rm}"
-mkdirprog="${MKDIRPROG-mkdir}"
-
-transformbasename=""
-transform_arg=""
-instcmd="$mvprog"
-chmodcmd="$chmodprog 0755"
-chowncmd=""
-chgrpcmd=""
-stripcmd=""
-rmcmd="$rmprog -f"
-mvcmd="$mvprog"
-src=""
-dst=""
-dir_arg=""
-
-while [ x"$1" != x ]; do
- case $1 in
- -c) instcmd=$cpprog
- shift
- continue;;
-
- -d) dir_arg=true
- shift
- continue;;
-
- -m) chmodcmd="$chmodprog $2"
- shift
- shift
- continue;;
-
- -o) chowncmd="$chownprog $2"
- shift
- shift
- continue;;
-
- -g) chgrpcmd="$chgrpprog $2"
- shift
- shift
- continue;;
-
- -s) stripcmd=$stripprog
- shift
- continue;;
-
- -t=*) transformarg=`echo $1 | sed 's/-t=//'`
- shift
- continue;;
-
- -b=*) transformbasename=`echo $1 | sed 's/-b=//'`
- shift
- continue;;
-
- *) if [ x"$src" = x ]
- then
- src=$1
- else
- # this colon is to work around a 386BSD /bin/sh bug
- :
- dst=$1
- fi
- shift
- continue;;
- esac
-done
-
-if [ x"$src" = x ]
-then
- echo "$0: no input file specified" >&2
- exit 1
-else
- :
-fi
-
-if [ x"$dir_arg" != x ]; then
- dst=$src
- src=""
-
- if [ -d "$dst" ]; then
- instcmd=:
- chmodcmd=""
- else
- instcmd=$mkdirprog
- fi
-else
-
-# Waiting for this to be detected by the "$instcmd $src $dsttmp" command
-# might cause directories to be created, which would be especially bad
-# if $src (and thus $dsttmp) contains '*'.
-
- if [ -f "$src" ] || [ -d "$src" ]
- then
- :
- else
- echo "$0: $src does not exist" >&2
- exit 1
- fi
-
- if [ x"$dst" = x ]
- then
- echo "$0: no destination specified" >&2
- exit 1
- else
- :
- fi
-
-# If destination is a directory, append the input filename; if your system
-# does not like double slashes in filenames, you may need to add some logic
-
- if [ -d "$dst" ]
- then
- dst=$dst/`basename "$src"`
- else
- :
- fi
-fi
-
-## this sed command emulates the dirname command
-dstdir=`echo "$dst" | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'`
-
-# Make sure that the destination directory exists.
-# this part is taken from Noah Friedman's mkinstalldirs script
-
-# Skip lots of stat calls in the usual case.
-if [ ! -d "$dstdir" ]; then
-defaultIFS='
- '
-IFS="${IFS-$defaultIFS}"
-
-oIFS=$IFS
-# Some sh's can't handle IFS=/ for some reason.
-IFS='%'
-set - `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'`
-IFS=$oIFS
-
-pathcomp=''
-
-while [ $# -ne 0 ] ; do
- pathcomp=$pathcomp$1
- shift
-
- if [ ! -d "$pathcomp" ] ;
- then
- $mkdirprog "$pathcomp"
- else
- :
- fi
-
- pathcomp=$pathcomp/
-done
-fi
-
-if [ x"$dir_arg" != x ]
-then
- $doit $instcmd "$dst" &&
-
- if [ x"$chowncmd" != x ]; then $doit $chowncmd "$dst"; else : ; fi &&
- if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd "$dst"; else : ; fi &&
- if [ x"$stripcmd" != x ]; then $doit $stripcmd "$dst"; else : ; fi &&
- if [ x"$chmodcmd" != x ]; then $doit $chmodcmd "$dst"; else : ; fi
-else
-
-# If we're going to rename the final executable, determine the name now.
-
- if [ x"$transformarg" = x ]
- then
- dstfile=`basename "$dst"`
- else
- dstfile=`basename "$dst" $transformbasename |
- sed $transformarg`$transformbasename
- fi
-
-# don't allow the sed command to completely eliminate the filename
-
- if [ x"$dstfile" = x ]
- then
- dstfile=`basename "$dst"`
- else
- :
- fi
-
-# Make a couple of temp file names in the proper directory.
-
- dsttmp=$dstdir/_inst.$$_
- rmtmp=$dstdir/_rm.$$_
-
-# Trap to clean up temp files at exit.
-
- trap 'status=$?; rm -f "$dsttmp" "$rmtmp" && exit $status' 0
- trap '(exit $?); exit' 1 2 13 15
-
-# Move or copy the file name to the temp name
-
- $doit $instcmd "$src" "$dsttmp" &&
-
-# and set any options; do chmod last to preserve setuid bits
-
-# If any of these fail, we abort the whole thing. If we want to
-# ignore errors from any of these, just make sure not to ignore
-# errors from the above "$doit $instcmd $src $dsttmp" command.
-
- if [ x"$chowncmd" != x ]; then $doit $chowncmd "$dsttmp"; else :;fi &&
- if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd "$dsttmp"; else :;fi &&
- if [ x"$stripcmd" != x ]; then $doit $stripcmd "$dsttmp"; else :;fi &&
- if [ x"$chmodcmd" != x ]; then $doit $chmodcmd "$dsttmp"; else :;fi &&
-
-# Now remove or move aside any old file at destination location. We try this
-# two ways since rm can't unlink itself on some systems and the destination
-# file might be busy for other reasons. In this case, the final cleanup
-# might fail but the new file should still install successfully.
-
-{
- if [ -f "$dstdir/$dstfile" ]
- then
- $doit $rmcmd -f "$dstdir/$dstfile" 2>/dev/null ||
- $doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null ||
- {
- echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2
- (exit 1); exit
- }
- else
- :
- fi
-} &&
-
-# Now rename the file to the real destination.
-
- $doit $mvcmd "$dsttmp" "$dstdir/$dstfile"
-
-fi &&
-
-# The final little trick to "correctly" pass the exit status to the exit trap.
-
-{
- (exit 0); exit
-}
diff --git a/lib-src/sbsms/config/ltmain.sh b/lib-src/sbsms/config/ltmain.sh
deleted file mode 100644
index 7e0c9f4..0000000
--- a/lib-src/sbsms/config/ltmain.sh
+++ /dev/null
@@ -1,5062 +0,0 @@
-# ltmain.sh - Provide generalized library-building support services.
-# NOTE: Changing this file will not affect anything until you rerun configure.
-#
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001
-# Free Software Foundation, Inc.
-# Originally by Gordon Matzigkeit <gord at gnu.ai.mit.edu>, 1996
-#
-# 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-# Check that we have a working $echo.
-if test "X$1" = X--no-reexec; then
- # Discard the --no-reexec flag, and continue.
- shift
-elif test "X$1" = X--fallback-echo; then
- # Avoid inline document here, it may be left over
- :
-elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then
- # Yippee, $echo works!
- :
-else
- # Restart under the correct shell, and then maybe $echo will work.
- exec $SHELL "$0" --no-reexec ${1+"$@"}
-fi
-
-if test "X$1" = X--fallback-echo; then
- # used as fallback echo
- shift
- cat <<EOF
-$*
-EOF
- exit 0
-fi
-
-# The name of this program.
-progname=`$echo "$0" | ${SED} 's%^.*/%%'`
-modename="$progname"
-
-# Constants.
-PROGRAM=ltmain.sh
-PACKAGE=libtool
-VERSION=1.4.3
-TIMESTAMP=" (1.922.2.110 2002/10/23 01:39:54)"
-
-default_mode=
-help="Try \`$progname --help' for more information."
-magic="%%%MAGIC variable%%%"
-mkdir="mkdir"
-mv="mv -f"
-rm="rm -f"
-
-# Sed substitution that helps us do robust quoting. It backslashifies
-# metacharacters that are still active within double-quoted strings.
-Xsed="${SED}"' -e 1s/^X//'
-sed_quote_subst='s/\([\\`\\"$\\\\]\)/\\\1/g'
-# test EBCDIC or ASCII
-case `echo A|od -x` in
- *[Cc]1*) # EBCDIC based system
- SP2NL="tr '\100' '\n'"
- NL2SP="tr '\r\n' '\100\100'"
- ;;
- *) # Assume ASCII based system
- SP2NL="tr '\040' '\012'"
- NL2SP="tr '\015\012' '\040\040'"
- ;;
-esac
-
-# NLS nuisances.
-# Only set LANG and LC_ALL to C if already set.
-# These must not be set unconditionally because not all systems understand
-# e.g. LANG=C (notably SCO).
-# We save the old values to restore during execute mode.
-if test "${LC_ALL+set}" = set; then
- save_LC_ALL="$LC_ALL"; LC_ALL=C; export LC_ALL
-fi
-if test "${LANG+set}" = set; then
- save_LANG="$LANG"; LANG=C; export LANG
-fi
-
-# Make sure IFS has a sensible default
-: ${IFS=" "}
-
-if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then
- echo "$modename: not configured to build any kind of library" 1>&2
- echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
- exit 1
-fi
-
-# Global variables.
-mode=$default_mode
-nonopt=
-prev=
-prevopt=
-run=
-show="$echo"
-show_help=
-execute_dlfiles=
-lo2o="s/\\.lo\$/.${objext}/"
-o2lo="s/\\.${objext}\$/.lo/"
-
-# Parse our command line options once, thoroughly.
-while test $# -gt 0
-do
- arg="$1"
- shift
-
- case $arg in
- -*=*) optarg=`$echo "X$arg" | $Xsed -e 's/[-_a-zA-Z0-9]*=//'` ;;
- *) optarg= ;;
- esac
-
- # If the previous option needs an argument, assign it.
- if test -n "$prev"; then
- case $prev in
- execute_dlfiles)
- execute_dlfiles="$execute_dlfiles $arg"
- ;;
- *)
- eval "$prev=\$arg"
- ;;
- esac
-
- prev=
- prevopt=
- continue
- fi
-
- # Have we seen a non-optional argument yet?
- case $arg in
- --help)
- show_help=yes
- ;;
-
- --version)
- echo "$PROGRAM (GNU $PACKAGE) $VERSION$TIMESTAMP"
- exit 0
- ;;
-
- --config)
- ${SED} -e '1,/^# ### BEGIN LIBTOOL CONFIG/d' -e '/^# ### END LIBTOOL CONFIG/,$d' $0
- exit 0
- ;;
-
- --debug)
- echo "$progname: enabling shell trace mode"
- set -x
- ;;
-
- --dry-run | -n)
- run=:
- ;;
-
- --features)
- echo "host: $host"
- if test "$build_libtool_libs" = yes; then
- echo "enable shared libraries"
- else
- echo "disable shared libraries"
- fi
- if test "$build_old_libs" = yes; then
- echo "enable static libraries"
- else
- echo "disable static libraries"
- fi
- exit 0
- ;;
-
- --finish) mode="finish" ;;
-
- --mode) prevopt="--mode" prev=mode ;;
- --mode=*) mode="$optarg" ;;
-
- --preserve-dup-deps) duplicate_deps="yes" ;;
-
- --quiet | --silent)
- show=:
- ;;
-
- -dlopen)
- prevopt="-dlopen"
- prev=execute_dlfiles
- ;;
-
- -*)
- $echo "$modename: unrecognized option \`$arg'" 1>&2
- $echo "$help" 1>&2
- exit 1
- ;;
-
- *)
- nonopt="$arg"
- break
- ;;
- esac
-done
-
-if test -n "$prevopt"; then
- $echo "$modename: option \`$prevopt' requires an argument" 1>&2
- $echo "$help" 1>&2
- exit 1
-fi
-
-# If this variable is set in any of the actions, the command in it
-# will be execed at the end. This prevents here-documents from being
-# left over by shells.
-exec_cmd=
-
-if test -z "$show_help"; then
-
- # Infer the operation mode.
- if test -z "$mode"; then
- case $nonopt in
- *cc | *++ | gcc* | *-gcc* | xlc*)
- mode=link
- for arg
- do
- case $arg in
- -c)
- mode=compile
- break
- ;;
- esac
- done
- ;;
- *db | *dbx | *strace | *truss)
- mode=execute
- ;;
- *install*|cp|mv)
- mode=install
- ;;
- *rm)
- mode=uninstall
- ;;
- *)
- # If we have no mode, but dlfiles were specified, then do execute mode.
- test -n "$execute_dlfiles" && mode=execute
-
- # Just use the default operation mode.
- if test -z "$mode"; then
- if test -n "$nonopt"; then
- $echo "$modename: warning: cannot infer operation mode from \`$nonopt'" 1>&2
- else
- $echo "$modename: warning: cannot infer operation mode without MODE-ARGS" 1>&2
- fi
- fi
- ;;
- esac
- fi
-
- # Only execute mode is allowed to have -dlopen flags.
- if test -n "$execute_dlfiles" && test "$mode" != execute; then
- $echo "$modename: unrecognized option \`-dlopen'" 1>&2
- $echo "$help" 1>&2
- exit 1
- fi
-
- # Change the help message to a mode-specific one.
- generic_help="$help"
- help="Try \`$modename --help --mode=$mode' for more information."
-
- # These modes are in order of execution frequency so that they run quickly.
- case $mode in
- # libtool compile mode
- compile)
- modename="$modename: compile"
- # Get the compilation command and the source file.
- base_compile=
- prev=
- lastarg=
- srcfile="$nonopt"
- suppress_output=
-
- user_target=no
- for arg
- do
- case $prev in
- "") ;;
- xcompiler)
- # Aesthetically quote the previous argument.
- prev=
- lastarg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
-
- case $arg in
- # Double-quote args containing other shell metacharacters.
- # Many Bourne shells cannot handle close brackets correctly
- # in scan sets, so we specify it separately.
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
- arg="\"$arg\""
- ;;
- esac
-
- # Add the previous argument to base_compile.
- if test -z "$base_compile"; then
- base_compile="$lastarg"
- else
- base_compile="$base_compile $lastarg"
- fi
- continue
- ;;
- esac
-
- # Accept any command-line options.
- case $arg in
- -o)
- if test "$user_target" != "no"; then
- $echo "$modename: you cannot specify \`-o' more than once" 1>&2
- exit 1
- fi
- user_target=next
- ;;
-
- -static)
- build_old_libs=yes
- continue
- ;;
-
- -prefer-pic)
- pic_mode=yes
- continue
- ;;
-
- -prefer-non-pic)
- pic_mode=no
- continue
- ;;
-
- -Xcompiler)
- prev=xcompiler
- continue
- ;;
-
- -Wc,*)
- args=`$echo "X$arg" | $Xsed -e "s/^-Wc,//"`
- lastarg=
- save_ifs="$IFS"; IFS=','
- for arg in $args; do
- IFS="$save_ifs"
-
- # Double-quote args containing other shell metacharacters.
- # Many Bourne shells cannot handle close brackets correctly
- # in scan sets, so we specify it separately.
- case $arg in
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
- arg="\"$arg\""
- ;;
- esac
- lastarg="$lastarg $arg"
- done
- IFS="$save_ifs"
- lastarg=`$echo "X$lastarg" | $Xsed -e "s/^ //"`
-
- # Add the arguments to base_compile.
- if test -z "$base_compile"; then
- base_compile="$lastarg"
- else
- base_compile="$base_compile $lastarg"
- fi
- continue
- ;;
- esac
-
- case $user_target in
- next)
- # The next one is the -o target name
- user_target=yes
- continue
- ;;
- yes)
- # We got the output file
- user_target=set
- libobj="$arg"
- continue
- ;;
- esac
-
- # Accept the current argument as the source file.
- lastarg="$srcfile"
- srcfile="$arg"
-
- # Aesthetically quote the previous argument.
-
- # Backslashify any backslashes, double quotes, and dollar signs.
- # These are the only characters that are still specially
- # interpreted inside of double-quoted scrings.
- lastarg=`$echo "X$lastarg" | $Xsed -e "$sed_quote_subst"`
-
- # Double-quote args containing other shell metacharacters.
- # Many Bourne shells cannot handle close brackets correctly
- # in scan sets, so we specify it separately.
- case $lastarg in
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
- lastarg="\"$lastarg\""
- ;;
- esac
-
- # Add the previous argument to base_compile.
- if test -z "$base_compile"; then
- base_compile="$lastarg"
- else
- base_compile="$base_compile $lastarg"
- fi
- done
-
- case $user_target in
- set)
- ;;
- no)
- # Get the name of the library object.
- libobj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%'`
- ;;
- *)
- $echo "$modename: you must specify a target with \`-o'" 1>&2
- exit 1
- ;;
- esac
-
- # Recognize several different file suffixes.
- # If the user specifies -o file.o, it is replaced with file.lo
- xform='[cCFSfmso]'
- case $libobj in
- *.ada) xform=ada ;;
- *.adb) xform=adb ;;
- *.ads) xform=ads ;;
- *.asm) xform=asm ;;
- *.c++) xform=c++ ;;
- *.cc) xform=cc ;;
- *.cpp) xform=cpp ;;
- *.cxx) xform=cxx ;;
- *.f90) xform=f90 ;;
- *.for) xform=for ;;
- esac
-
- libobj=`$echo "X$libobj" | $Xsed -e "s/\.$xform$/.lo/"`
-
- case $libobj in
- *.lo) obj=`$echo "X$libobj" | $Xsed -e "$lo2o"` ;;
- *)
- $echo "$modename: cannot determine name of library object from \`$libobj'" 1>&2
- exit 1
- ;;
- esac
-
- if test -z "$base_compile"; then
- $echo "$modename: you must specify a compilation command" 1>&2
- $echo "$help" 1>&2
- exit 1
- fi
-
- # Delete any leftover library objects.
- if test "$build_old_libs" = yes; then
- removelist="$obj $libobj"
- else
- removelist="$libobj"
- fi
-
- $run $rm $removelist
- trap "$run $rm $removelist; exit 1" 1 2 15
-
- # On Cygwin there's no "real" PIC flag so we must build both object types
- case $host_os in
- cygwin* | mingw* | pw32* | os2*)
- pic_mode=default
- ;;
- esac
- if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; then
- # non-PIC code in shared libraries is not supported
- pic_mode=default
- fi
-
- # Calculate the filename of the output object if compiler does
- # not support -o with -c
- if test "$compiler_c_o" = no; then
- output_obj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\.[^.]*$%%'`.${objext}
- lockfile="$output_obj.lock"
- removelist="$removelist $output_obj $lockfile"
- trap "$run $rm $removelist; exit 1" 1 2 15
- else
- need_locks=no
- lockfile=
- fi
-
- # Lock this critical section if it is needed
- # We use this script file to make the link, it avoids creating a new file
- if test "$need_locks" = yes; then
- until $run ln "$0" "$lockfile" 2>/dev/null; do
- $show "Waiting for $lockfile to be removed"
- sleep 2
- done
- elif test "$need_locks" = warn; then
- if test -f "$lockfile"; then
- echo "\
-*** ERROR, $lockfile exists and contains:
-`cat $lockfile 2>/dev/null`
-
-This indicates that another process is trying to use the same
-temporary object file, and libtool could not work around it because
-your compiler does not support \`-c' and \`-o' together. If you
-repeat this compilation, it may succeed, by chance, but you had better
-avoid parallel builds (make -j) in this platform, or get a better
-compiler."
-
- $run $rm $removelist
- exit 1
- fi
- echo $srcfile > "$lockfile"
- fi
-
- if test -n "$fix_srcfile_path"; then
- eval srcfile=\"$fix_srcfile_path\"
- fi
-
- # Only build a PIC object if we are building libtool libraries.
- if test "$build_libtool_libs" = yes; then
- # Without this assignment, base_compile gets emptied.
- fbsd_hideous_sh_bug=$base_compile
-
- if test "$pic_mode" != no; then
- # All platforms use -DPIC, to notify preprocessed assembler code.
- command="$base_compile $srcfile $pic_flag -DPIC"
- else
- # Don't build PIC code
- command="$base_compile $srcfile"
- fi
- if test "$build_old_libs" = yes; then
- lo_libobj="$libobj"
- dir=`$echo "X$libobj" | $Xsed -e 's%/[^/]*$%%'`
- if test "X$dir" = "X$libobj"; then
- dir="$objdir"
- else
- dir="$dir/$objdir"
- fi
- libobj="$dir/"`$echo "X$libobj" | $Xsed -e 's%^.*/%%'`
-
- if test -d "$dir"; then
- $show "$rm $libobj"
- $run $rm $libobj
- else
- $show "$mkdir $dir"
- $run $mkdir $dir
- status=$?
- if test $status -ne 0 && test ! -d $dir; then
- exit $status
- fi
- fi
- fi
- if test "$compiler_o_lo" = yes; then
- output_obj="$libobj"
- command="$command -o $output_obj"
- elif test "$compiler_c_o" = yes; then
- output_obj="$obj"
- command="$command -o $output_obj"
- fi
-
- $run $rm "$output_obj"
- $show "$command"
- if $run eval "$command"; then :
- else
- test -n "$output_obj" && $run $rm $removelist
- exit 1
- fi
-
- if test "$need_locks" = warn &&
- test x"`cat $lockfile 2>/dev/null`" != x"$srcfile"; then
- echo "\
-*** ERROR, $lockfile contains:
-`cat $lockfile 2>/dev/null`
-
-but it should contain:
-$srcfile
-
-This indicates that another process is trying to use the same
-temporary object file, and libtool could not work around it because
-your compiler does not support \`-c' and \`-o' together. If you
-repeat this compilation, it may succeed, by chance, but you had better
-avoid parallel builds (make -j) in this platform, or get a better
-compiler."
-
- $run $rm $removelist
- exit 1
- fi
-
- # Just move the object if needed, then go on to compile the next one
- if test x"$output_obj" != x"$libobj"; then
- $show "$mv $output_obj $libobj"
- if $run $mv $output_obj $libobj; then :
- else
- error=$?
- $run $rm $removelist
- exit $error
- fi
- fi
-
- # If we have no pic_flag, then copy the object into place and finish.
- if (test -z "$pic_flag" || test "$pic_mode" != default) &&
- test "$build_old_libs" = yes; then
- # Rename the .lo from within objdir to obj
- if test -f $obj; then
- $show $rm $obj
- $run $rm $obj
- fi
-
- $show "$mv $libobj $obj"
- if $run $mv $libobj $obj; then :
- else
- error=$?
- $run $rm $removelist
- exit $error
- fi
-
- xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'`
- if test "X$xdir" = "X$obj"; then
- xdir="."
- else
- xdir="$xdir"
- fi
- baseobj=`$echo "X$obj" | $Xsed -e "s%.*/%%"`
- libobj=`$echo "X$baseobj" | $Xsed -e "$o2lo"`
- # Now arrange that obj and lo_libobj become the same file
- $show "(cd $xdir && $LN_S $baseobj $libobj)"
- if $run eval '(cd $xdir && $LN_S $baseobj $libobj)'; then
- # Unlock the critical section if it was locked
- if test "$need_locks" != no; then
- $run $rm "$lockfile"
- fi
- exit 0
- else
- error=$?
- $run $rm $removelist
- exit $error
- fi
- fi
-
- # Allow error messages only from the first compilation.
- suppress_output=' >/dev/null 2>&1'
- fi
-
- # Only build a position-dependent object if we build old libraries.
- if test "$build_old_libs" = yes; then
- if test "$pic_mode" != yes; then
- # Don't build PIC code
- command="$base_compile $srcfile"
- else
- # All platforms use -DPIC, to notify preprocessed assembler code.
- command="$base_compile $srcfile $pic_flag -DPIC"
- fi
- if test "$compiler_c_o" = yes; then
- command="$command -o $obj"
- output_obj="$obj"
- fi
-
- # Suppress compiler output if we already did a PIC compilation.
- command="$command$suppress_output"
- $run $rm "$output_obj"
- $show "$command"
- if $run eval "$command"; then :
- else
- $run $rm $removelist
- exit 1
- fi
-
- if test "$need_locks" = warn &&
- test x"`cat $lockfile 2>/dev/null`" != x"$srcfile"; then
- echo "\
-*** ERROR, $lockfile contains:
-`cat $lockfile 2>/dev/null`
-
-but it should contain:
-$srcfile
-
-This indicates that another process is trying to use the same
-temporary object file, and libtool could not work around it because
-your compiler does not support \`-c' and \`-o' together. If you
-repeat this compilation, it may succeed, by chance, but you had better
-avoid parallel builds (make -j) in this platform, or get a better
-compiler."
-
- $run $rm $removelist
- exit 1
- fi
-
- # Just move the object if needed
- if test x"$output_obj" != x"$obj"; then
- $show "$mv $output_obj $obj"
- if $run $mv $output_obj $obj; then :
- else
- error=$?
- $run $rm $removelist
- exit $error
- fi
- fi
-
- # Create an invalid libtool object if no PIC, so that we do not
- # accidentally link it into a program.
- if test "$build_libtool_libs" != yes; then
- $show "echo timestamp > $libobj"
- $run eval "echo timestamp > \$libobj" || exit $?
- else
- # Move the .lo from within objdir
- $show "$mv $libobj $lo_libobj"
- if $run $mv $libobj $lo_libobj; then :
- else
- error=$?
- $run $rm $removelist
- exit $error
- fi
- fi
- fi
-
- # Unlock the critical section if it was locked
- if test "$need_locks" != no; then
- $run $rm "$lockfile"
- fi
-
- exit 0
- ;;
-
- # libtool link mode
- link | relink)
- modename="$modename: link"
- case $host in
- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
- # It is impossible to link a dll without this setting, and
- # we shouldn't force the makefile maintainer to figure out
- # which system we are compiling for in order to pass an extra
- # flag for every libtool invokation.
- # allow_undefined=no
-
- # FIXME: Unfortunately, there are problems with the above when trying
- # to make a dll which has undefined symbols, in which case not
- # even a static library is built. For now, we need to specify
- # -no-undefined on the libtool link line when we can be certain
- # that all symbols are satisfied, otherwise we get a static library.
- allow_undefined=yes
- ;;
- *)
- allow_undefined=yes
- ;;
- esac
- libtool_args="$nonopt"
- compile_command="$nonopt"
- finalize_command="$nonopt"
-
- compile_rpath=
- finalize_rpath=
- compile_shlibpath=
- finalize_shlibpath=
- convenience=
- old_convenience=
- deplibs=
- old_deplibs=
- compiler_flags=
- linker_flags=
- dllsearchpath=
- lib_search_path=`pwd`
-
- avoid_version=no
- dlfiles=
- dlprefiles=
- dlself=no
- export_dynamic=no
- export_symbols=
- export_symbols_regex=
- generated=
- libobjs=
- ltlibs=
- module=no
- no_install=no
- objs=
- prefer_static_libs=no
- preload=no
- prev=
- prevarg=
- release=
- rpath=
- xrpath=
- perm_rpath=
- temp_rpath=
- thread_safe=no
- vinfo=
-
- # We need to know -static, to get the right output filenames.
- for arg
- do
- case $arg in
- -all-static | -static)
- if test "X$arg" = "X-all-static"; then
- if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then
- $echo "$modename: warning: complete static linking is impossible in this configuration" 1>&2
- fi
- if test -n "$link_static_flag"; then
- dlopen_self=$dlopen_self_static
- fi
- else
- if test -z "$pic_flag" && test -n "$link_static_flag"; then
- dlopen_self=$dlopen_self_static
- fi
- fi
- build_libtool_libs=no
- build_old_libs=yes
- prefer_static_libs=yes
- break
- ;;
- esac
- done
-
- # See if our shared archives depend on static archives.
- test -n "$old_archive_from_new_cmds" && build_old_libs=yes
-
- # Go through the arguments, transforming them on the way.
- while test $# -gt 0; do
- arg="$1"
- shift
- case $arg in
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
- qarg=\"`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`\" ### testsuite: skip nested quoting test
- ;;
- *) qarg=$arg ;;
- esac
- libtool_args="$libtool_args $qarg"
-
- # If the previous option needs an argument, assign it.
- if test -n "$prev"; then
- case $prev in
- output)
- compile_command="$compile_command @OUTPUT@"
- finalize_command="$finalize_command @OUTPUT@"
- ;;
- esac
-
- case $prev in
- dlfiles|dlprefiles)
- if test "$preload" = no; then
- # Add the symbol object into the linking commands.
- compile_command="$compile_command @SYMFILE@"
- finalize_command="$finalize_command @SYMFILE@"
- preload=yes
- fi
- case $arg in
- *.la | *.lo) ;; # We handle these cases below.
- force)
- if test "$dlself" = no; then
- dlself=needless
- export_dynamic=yes
- fi
- prev=
- continue
- ;;
- self)
- if test "$prev" = dlprefiles; then
- dlself=yes
- elif test "$prev" = dlfiles && test "$dlopen_self" != yes; then
- dlself=yes
- else
- dlself=needless
- export_dynamic=yes
- fi
- prev=
- continue
- ;;
- *)
- if test "$prev" = dlfiles; then
- dlfiles="$dlfiles $arg"
- else
- dlprefiles="$dlprefiles $arg"
- fi
- prev=
- continue
- ;;
- esac
- ;;
- expsyms)
- export_symbols="$arg"
- if test ! -f "$arg"; then
- $echo "$modename: symbol file \`$arg' does not exist"
- exit 1
- fi
- prev=
- continue
- ;;
- expsyms_regex)
- export_symbols_regex="$arg"
- prev=
- continue
- ;;
- release)
- release="-$arg"
- prev=
- continue
- ;;
- rpath | xrpath)
- # We need an absolute path.
- case $arg in
- [\\/]* | [A-Za-z]:[\\/]*) ;;
- *)
- $echo "$modename: only absolute run-paths are allowed" 1>&2
- exit 1
- ;;
- esac
- if test "$prev" = rpath; then
- case "$rpath " in
- *" $arg "*) ;;
- *) rpath="$rpath $arg" ;;
- esac
- else
- case "$xrpath " in
- *" $arg "*) ;;
- *) xrpath="$xrpath $arg" ;;
- esac
- fi
- prev=
- continue
- ;;
- xcompiler)
- compiler_flags="$compiler_flags $qarg"
- prev=
- compile_command="$compile_command $qarg"
- finalize_command="$finalize_command $qarg"
- continue
- ;;
- xlinker)
- linker_flags="$linker_flags $qarg"
- compiler_flags="$compiler_flags $wl$qarg"
- prev=
- compile_command="$compile_command $wl$qarg"
- finalize_command="$finalize_command $wl$qarg"
- continue
- ;;
- *)
- eval "$prev=\"\$arg\""
- prev=
- continue
- ;;
- esac
- fi # test -n $prev
-
- prevarg="$arg"
-
- case $arg in
- -all-static)
- if test -n "$link_static_flag"; then
- compile_command="$compile_command $link_static_flag"
- finalize_command="$finalize_command $link_static_flag"
- fi
- continue
- ;;
-
- -allow-undefined)
- # FIXME: remove this flag sometime in the future.
- $echo "$modename: \`-allow-undefined' is deprecated because it is the default" 1>&2
- continue
- ;;
-
- -avoid-version)
- avoid_version=yes
- continue
- ;;
-
- -dlopen)
- prev=dlfiles
- continue
- ;;
-
- -dlpreopen)
- prev=dlprefiles
- continue
- ;;
-
- -export-dynamic)
- export_dynamic=yes
- continue
- ;;
-
- -export-symbols | -export-symbols-regex)
- if test -n "$export_symbols" || test -n "$export_symbols_regex"; then
- $echo "$modename: more than one -exported-symbols argument is not allowed"
- exit 1
- fi
- if test "X$arg" = "X-export-symbols"; then
- prev=expsyms
- else
- prev=expsyms_regex
- fi
- continue
- ;;
-
- # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:*
- # so, if we see these flags be careful not to treat them like -L
- -L[A-Z][A-Z]*:*)
- case $with_gcc/$host in
- no/*-*-irix* | no/*-*-nonstopux*)
- compile_command="$compile_command $arg"
- finalize_command="$finalize_command $arg"
- ;;
- esac
- continue
- ;;
-
- -L*)
- dir=`$echo "X$arg" | $Xsed -e 's/^-L//'`
- # We need an absolute path.
- case $dir in
- [\\/]* | [A-Za-z]:[\\/]*) ;;
- *)
- absdir=`cd "$dir" && pwd`
- if test -z "$absdir"; then
- $echo "$modename: cannot determine absolute directory name of \`$dir'" 1>&2
- exit 1
- fi
- dir="$absdir"
- ;;
- esac
- case "$deplibs " in
- *" -L$dir "*) ;;
- *)
- deplibs="$deplibs -L$dir"
- lib_search_path="$lib_search_path $dir"
- ;;
- esac
- case $host in
- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
- case :$dllsearchpath: in
- *":$dir:"*) ;;
- *) dllsearchpath="$dllsearchpath:$dir";;
- esac
- ;;
- esac
- continue
- ;;
-
- -l*)
- if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then
- case $host in
- *-*-cygwin* | *-*-pw32* | *-*-beos*)
- # These systems don't actually have a C or math library (as such)
- continue
- ;;
- *-*-mingw* | *-*-os2*)
- # These systems don't actually have a C library (as such)
- test "X$arg" = "X-lc" && continue
- ;;
- *-*-openbsd* | *-*-freebsd*)
- # Do not include libc due to us having libc/libc_r.
- test "X$arg" = "X-lc" && continue
- ;;
- esac
- elif test "X$arg" = "X-lc_r"; then
- case $host in
- *-*-openbsd* | *-*-freebsd*)
- # Do not include libc_r directly, use -pthread flag.
- continue
- ;;
- esac
- fi
- deplibs="$deplibs $arg"
- continue
- ;;
-
- -module)
- module=yes
- continue
- ;;
-
- -no-fast-install)
- fast_install=no
- continue
- ;;
-
- -no-install)
- case $host in
- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
- # The PATH hackery in wrapper scripts is required on Windows
- # in order for the loader to find any dlls it needs.
- $echo "$modename: warning: \`-no-install' is ignored for $host" 1>&2
- $echo "$modename: warning: assuming \`-no-fast-install' instead" 1>&2
- fast_install=no
- ;;
- *) no_install=yes ;;
- esac
- continue
- ;;
-
- -no-undefined)
- allow_undefined=no
- continue
- ;;
-
- -o) prev=output ;;
-
- -release)
- prev=release
- continue
- ;;
-
- -rpath)
- prev=rpath
- continue
- ;;
-
- -R)
- prev=xrpath
- continue
- ;;
-
- -R*)
- dir=`$echo "X$arg" | $Xsed -e 's/^-R//'`
- # We need an absolute path.
- case $dir in
- [\\/]* | [A-Za-z]:[\\/]*) ;;
- *)
- $echo "$modename: only absolute run-paths are allowed" 1>&2
- exit 1
- ;;
- esac
- case "$xrpath " in
- *" $dir "*) ;;
- *) xrpath="$xrpath $dir" ;;
- esac
- continue
- ;;
-
- -static)
- # The effects of -static are defined in a previous loop.
- # We used to do the same as -all-static on platforms that
- # didn't have a PIC flag, but the assumption that the effects
- # would be equivalent was wrong. It would break on at least
- # Digital Unix and AIX.
- continue
- ;;
-
- -thread-safe)
- thread_safe=yes
- continue
- ;;
-
- -version-info)
- prev=vinfo
- continue
- ;;
-
- -Wc,*)
- args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wc,//'`
- arg=
- save_ifs="$IFS"; IFS=','
- for flag in $args; do
- IFS="$save_ifs"
- case $flag in
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
- flag="\"$flag\""
- ;;
- esac
- arg="$arg $wl$flag"
- compiler_flags="$compiler_flags $flag"
- done
- IFS="$save_ifs"
- arg=`$echo "X$arg" | $Xsed -e "s/^ //"`
- ;;
-
- -Wl,*)
- args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wl,//'`
- arg=
- save_ifs="$IFS"; IFS=','
- for flag in $args; do
- IFS="$save_ifs"
- case $flag in
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
- flag="\"$flag\""
- ;;
- esac
- arg="$arg $wl$flag"
- compiler_flags="$compiler_flags $wl$flag"
- linker_flags="$linker_flags $flag"
- done
- IFS="$save_ifs"
- arg=`$echo "X$arg" | $Xsed -e "s/^ //"`
- ;;
-
- -Xcompiler)
- prev=xcompiler
- continue
- ;;
-
- -Xlinker)
- prev=xlinker
- continue
- ;;
-
- # Some other compiler flag.
- -* | +*)
- # Unknown arguments in both finalize_command and compile_command need
- # to be aesthetically quoted because they are evaled later.
- arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
- case $arg in
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
- arg="\"$arg\""
- ;;
- esac
- ;;
-
- *.lo | *.$objext)
- # A library or standard object.
- if test "$prev" = dlfiles; then
- # This file was specified with -dlopen.
- if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then
- dlfiles="$dlfiles $arg"
- prev=
- continue
- else
- # If libtool objects are unsupported, then we need to preload.
- prev=dlprefiles
- fi
- fi
-
- if test "$prev" = dlprefiles; then
- # Preload the old-style object.
- dlprefiles="$dlprefiles "`$echo "X$arg" | $Xsed -e "$lo2o"`
- prev=
- else
- case $arg in
- *.lo) libobjs="$libobjs $arg" ;;
- *) objs="$objs $arg" ;;
- esac
- fi
- ;;
-
- *.$libext)
- # An archive.
- deplibs="$deplibs $arg"
- old_deplibs="$old_deplibs $arg"
- continue
- ;;
-
- *.la)
- # A libtool-controlled library.
-
- if test "$prev" = dlfiles; then
- # This library was specified with -dlopen.
- dlfiles="$dlfiles $arg"
- prev=
- elif test "$prev" = dlprefiles; then
- # The library was specified with -dlpreopen.
- dlprefiles="$dlprefiles $arg"
- prev=
- else
- deplibs="$deplibs $arg"
- fi
- continue
- ;;
-
- # Some other compiler argument.
- *)
- # Unknown arguments in both finalize_command and compile_command need
- # to be aesthetically quoted because they are evaled later.
- arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
- case $arg in
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
- arg="\"$arg\""
- ;;
- esac
- ;;
- esac # arg
-
- # Now actually substitute the argument into the commands.
- if test -n "$arg"; then
- compile_command="$compile_command $arg"
- finalize_command="$finalize_command $arg"
- fi
- done # argument parsing loop
-
- if test -n "$prev"; then
- $echo "$modename: the \`$prevarg' option requires an argument" 1>&2
- $echo "$help" 1>&2
- exit 1
- fi
-
- if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then
- eval arg=\"$export_dynamic_flag_spec\"
- compile_command="$compile_command $arg"
- finalize_command="$finalize_command $arg"
- fi
-
- # calculate the name of the file, without its directory
- outputname=`$echo "X$output" | $Xsed -e 's%^.*/%%'`
- libobjs_save="$libobjs"
-
- if test -n "$shlibpath_var"; then
- # get the directories listed in $shlibpath_var
- eval shlib_search_path=\`\$echo \"X\${$shlibpath_var}\" \| \$Xsed -e \'s/:/ /g\'\`
- else
- shlib_search_path=
- fi
- eval sys_lib_search_path=\"$sys_lib_search_path_spec\"
- eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\"
-
- output_objdir=`$echo "X$output" | $Xsed -e 's%/[^/]*$%%'`
- if test "X$output_objdir" = "X$output"; then
- output_objdir="$objdir"
- else
- output_objdir="$output_objdir/$objdir"
- fi
- # Create the object directory.
- if test ! -d $output_objdir; then
- $show "$mkdir $output_objdir"
- $run $mkdir $output_objdir
- status=$?
- if test $status -ne 0 && test ! -d $output_objdir; then
- exit $status
- fi
- fi
-
- # Determine the type of output
- case $output in
- "")
- $echo "$modename: you must specify an output file" 1>&2
- $echo "$help" 1>&2
- exit 1
- ;;
- *.$libext) linkmode=oldlib ;;
- *.lo | *.$objext) linkmode=obj ;;
- *.la) linkmode=lib ;;
- *) linkmode=prog ;; # Anything else should be a program.
- esac
-
- specialdeplibs=
- libs=
- # Find all interdependent deplibs by searching for libraries
- # that are linked more than once (e.g. -la -lb -la)
- for deplib in $deplibs; do
- if test "X$duplicate_deps" = "Xyes" ; then
- case "$libs " in
- *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
- esac
- fi
- libs="$libs $deplib"
- done
- deplibs=
- newdependency_libs=
- newlib_search_path=
- need_relink=no # whether we're linking any uninstalled libtool libraries
- notinst_deplibs= # not-installed libtool libraries
- notinst_path= # paths that contain not-installed libtool libraries
- case $linkmode in
- lib)
- passes="conv link"
- for file in $dlfiles $dlprefiles; do
- case $file in
- *.la) ;;
- *)
- $echo "$modename: libraries can \`-dlopen' only libtool libraries: $file" 1>&2
- exit 1
- ;;
- esac
- done
- ;;
- prog)
- compile_deplibs=
- finalize_deplibs=
- alldeplibs=no
- newdlfiles=
- newdlprefiles=
- passes="conv scan dlopen dlpreopen link"
- ;;
- *) passes="conv"
- ;;
- esac
- for pass in $passes; do
- if test $linkmode = prog; then
- # Determine which files to process
- case $pass in
- dlopen)
- libs="$dlfiles"
- save_deplibs="$deplibs" # Collect dlpreopened libraries
- deplibs=
- ;;
- dlpreopen) libs="$dlprefiles" ;;
- link) libs="$deplibs %DEPLIBS% $dependency_libs" ;;
- esac
- fi
- for deplib in $libs; do
- lib=
- found=no
- case $deplib in
- -l*)
- if test $linkmode = oldlib && test $linkmode = obj; then
- $echo "$modename: warning: \`-l' is ignored for archives/objects: $deplib" 1>&2
- continue
- fi
- if test $pass = conv; then
- deplibs="$deplib $deplibs"
- continue
- fi
- name=`$echo "X$deplib" | $Xsed -e 's/^-l//'`
- for searchdir in $newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path; do
- # Search the libtool library
- lib="$searchdir/lib${name}.la"
- if test -f "$lib"; then
- found=yes
- break
- fi
- done
- if test "$found" != yes; then
- # deplib doesn't seem to be a libtool library
- if test "$linkmode,$pass" = "prog,link"; then
- compile_deplibs="$deplib $compile_deplibs"
- finalize_deplibs="$deplib $finalize_deplibs"
- else
- deplibs="$deplib $deplibs"
- test $linkmode = lib && newdependency_libs="$deplib $newdependency_libs"
- fi
- continue
- fi
- ;; # -l
- -L*)
- case $linkmode in
- lib)
- deplibs="$deplib $deplibs"
- test $pass = conv && continue
- newdependency_libs="$deplib $newdependency_libs"
- newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`
- ;;
- prog)
- if test $pass = conv; then
- deplibs="$deplib $deplibs"
- continue
- fi
- if test $pass = scan; then
- deplibs="$deplib $deplibs"
- newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`
- else
- compile_deplibs="$deplib $compile_deplibs"
- finalize_deplibs="$deplib $finalize_deplibs"
- fi
- ;;
- *)
- $echo "$modename: warning: \`-L' is ignored for archives/objects: $deplib" 1>&2
- ;;
- esac # linkmode
- continue
- ;; # -L
- -R*)
- if test $pass = link; then
- dir=`$echo "X$deplib" | $Xsed -e 's/^-R//'`
- # Make sure the xrpath contains only unique directories.
- case "$xrpath " in
- *" $dir "*) ;;
- *) xrpath="$xrpath $dir" ;;
- esac
- fi
- deplibs="$deplib $deplibs"
- continue
- ;;
- *.la) lib="$deplib" ;;
- *.$libext)
- if test $pass = conv; then
- deplibs="$deplib $deplibs"
- continue
- fi
- case $linkmode in
- lib)
- if test "$deplibs_check_method" != pass_all; then
- echo
- echo "*** Warning: Trying to link with static lib archive $deplib."
- echo "*** I have the capability to make that library automatically link in when"
- echo "*** you link to this library. But I can only do this if you have a"
- echo "*** shared version of the library, which you do not appear to have"
- echo "*** because the file extensions .$libext of this argument makes me believe"
- echo "*** that it is just a static archive that I should not used here."
- else
- echo
- echo "*** Warning: Linking the shared library $output against the"
- echo "*** static library $deplib is not portable!"
- deplibs="$deplib $deplibs"
- fi
- continue
- ;;
- prog)
- if test $pass != link; then
- deplibs="$deplib $deplibs"
- else
- compile_deplibs="$deplib $compile_deplibs"
- finalize_deplibs="$deplib $finalize_deplibs"
- fi
- continue
- ;;
- esac # linkmode
- ;; # *.$libext
- *.lo | *.$objext)
- if test $pass = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then
- # If there is no dlopen support or we're linking statically,
- # we need to preload.
- newdlprefiles="$newdlprefiles $deplib"
- compile_deplibs="$deplib $compile_deplibs"
- finalize_deplibs="$deplib $finalize_deplibs"
- else
- newdlfiles="$newdlfiles $deplib"
- fi
- continue
- ;;
- %DEPLIBS%)
- alldeplibs=yes
- continue
- ;;
- esac # case $deplib
- if test $found = yes || test -f "$lib"; then :
- else
- $echo "$modename: cannot find the library \`$lib'" 1>&2
- exit 1
- fi
-
- # Check to see that this really is a libtool archive.
- if (${SED} -e '2q' $lib | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
- else
- $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
- exit 1
- fi
-
- ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'`
- test "X$ladir" = "X$lib" && ladir="."
-
- dlname=
- dlopen=
- dlpreopen=
- libdir=
- library_names=
- old_library=
- # If the library was installed with an old release of libtool,
- # it will not redefine variable installed.
- installed=yes
-
- # Read the .la file
- case $lib in
- */* | *\\*) . $lib ;;
- *) . ./$lib ;;
- esac
-
- if test "$linkmode,$pass" = "lib,link" ||
- test "$linkmode,$pass" = "prog,scan" ||
- { test $linkmode = oldlib && test $linkmode = obj; }; then
- # Add dl[pre]opened files of deplib
- test -n "$dlopen" && dlfiles="$dlfiles $dlopen"
- test -n "$dlpreopen" && dlprefiles="$dlprefiles $dlpreopen"
- fi
-
- if test $pass = conv; then
- # Only check for convenience libraries
- deplibs="$lib $deplibs"
- if test -z "$libdir"; then
- if test -z "$old_library"; then
- $echo "$modename: cannot find name of link library for \`$lib'" 1>&2
- exit 1
- fi
- # It is a libtool convenience library, so add in its objects.
- convenience="$convenience $ladir/$objdir/$old_library"
- old_convenience="$old_convenience $ladir/$objdir/$old_library"
- tmp_libs=
- for deplib in $dependency_libs; do
- deplibs="$deplib $deplibs"
- if test "X$duplicate_deps" = "Xyes" ; then
- case "$tmp_libs " in
- *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
- esac
- fi
- tmp_libs="$tmp_libs $deplib"
- done
- elif test $linkmode != prog && test $linkmode != lib; then
- $echo "$modename: \`$lib' is not a convenience library" 1>&2
- exit 1
- fi
- continue
- fi # $pass = conv
-
- # Get the name of the library we link against.
- linklib=
- for l in $old_library $library_names; do
- linklib="$l"
- done
- if test -z "$linklib"; then
- $echo "$modename: cannot find name of link library for \`$lib'" 1>&2
- exit 1
- fi
-
- # This library was specified with -dlopen.
- if test $pass = dlopen; then
- if test -z "$libdir"; then
- $echo "$modename: cannot -dlopen a convenience library: \`$lib'" 1>&2
- exit 1
- fi
- if test -z "$dlname" || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then
- # If there is no dlname, no dlopen support or we're linking
- # statically, we need to preload.
- dlprefiles="$dlprefiles $lib"
- else
- newdlfiles="$newdlfiles $lib"
- fi
- continue
- fi # $pass = dlopen
-
- # We need an absolute path.
- case $ladir in
- [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;;
- *)
- abs_ladir=`cd "$ladir" && pwd`
- if test -z "$abs_ladir"; then
- $echo "$modename: warning: cannot determine absolute directory name of \`$ladir'" 1>&2
- $echo "$modename: passing it literally to the linker, although it might fail" 1>&2
- abs_ladir="$ladir"
- fi
- ;;
- esac
- laname=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
-
- # Find the relevant object directory and library name.
- if test "X$installed" = Xyes; then
- if test ! -f "$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then
- $echo "$modename: warning: library \`$lib' was moved." 1>&2
- dir="$ladir"
- absdir="$abs_ladir"
- libdir="$abs_ladir"
- else
- dir="$libdir"
- absdir="$libdir"
- fi
- else
- dir="$ladir/$objdir"
- absdir="$abs_ladir/$objdir"
- # Remove this search path later
- notinst_path="$notinst_path $abs_ladir"
- fi # $installed = yes
- name=`$echo "X$laname" | $Xsed -e 's/\.la$//' -e 's/^lib//'`
-
- # This library was specified with -dlpreopen.
- if test $pass = dlpreopen; then
- if test -z "$libdir"; then
- $echo "$modename: cannot -dlpreopen a convenience library: \`$lib'" 1>&2
- exit 1
- fi
- # Prefer using a static library (so that no silly _DYNAMIC symbols
- # are required to link).
- if test -n "$old_library"; then
- newdlprefiles="$newdlprefiles $dir/$old_library"
- # Otherwise, use the dlname, so that lt_dlopen finds it.
- elif test -n "$dlname"; then
- newdlprefiles="$newdlprefiles $dir/$dlname"
- else
- newdlprefiles="$newdlprefiles $dir/$linklib"
- fi
- fi # $pass = dlpreopen
-
- if test -z "$libdir"; then
- # Link the convenience library
- if test $linkmode = lib; then
- deplibs="$dir/$old_library $deplibs"
- elif test "$linkmode,$pass" = "prog,link"; then
- compile_deplibs="$dir/$old_library $compile_deplibs"
- finalize_deplibs="$dir/$old_library $finalize_deplibs"
- else
- deplibs="$lib $deplibs"
- fi
- continue
- fi
-
- if test $linkmode = prog && test $pass != link; then
- newlib_search_path="$newlib_search_path $ladir"
- deplibs="$lib $deplibs"
-
- linkalldeplibs=no
- if test "$link_all_deplibs" != no || test -z "$library_names" ||
- test "$build_libtool_libs" = no; then
- linkalldeplibs=yes
- fi
-
- tmp_libs=
- for deplib in $dependency_libs; do
- case $deplib in
- -L*) newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`;; ### testsuite: skip nested quoting test
- esac
- # Need to link against all dependency_libs?
- if test $linkalldeplibs = yes; then
- deplibs="$deplib $deplibs"
- else
- # Need to hardcode shared library paths
- # or/and link against static libraries
- newdependency_libs="$deplib $newdependency_libs"
- fi
- if test "X$duplicate_deps" = "Xyes" ; then
- case "$tmp_libs " in
- *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
- esac
- fi
- tmp_libs="$tmp_libs $deplib"
- done # for deplib
- continue
- fi # $linkmode = prog...
-
- link_static=no # Whether the deplib will be linked statically
- if test -n "$library_names" &&
- { test "$prefer_static_libs" = no || test -z "$old_library"; }; then
- # Link against this shared library
-
- if test "$linkmode,$pass" = "prog,link" ||
- { test $linkmode = lib && test $hardcode_into_libs = yes; }; then
- # Hardcode the library path.
- # Skip directories that are in the system default run-time
- # search path.
- case " $sys_lib_dlsearch_path " in
- *" $absdir "*) ;;
- *)
- case "$compile_rpath " in
- *" $absdir "*) ;;
- *) compile_rpath="$compile_rpath $absdir"
- esac
- ;;
- esac
- case " $sys_lib_dlsearch_path " in
- *" $libdir "*) ;;
- *)
- case "$finalize_rpath " in
- *" $libdir "*) ;;
- *) finalize_rpath="$finalize_rpath $libdir"
- esac
- ;;
- esac
- if test $linkmode = prog; then
- # We need to hardcode the library path
- if test -n "$shlibpath_var"; then
- # Make sure the rpath contains only unique directories.
- case "$temp_rpath " in
- *" $dir "*) ;;
- *" $absdir "*) ;;
- *) temp_rpath="$temp_rpath $dir" ;;
- esac
- fi
- fi
- fi # $linkmode,$pass = prog,link...
-
- if test "$alldeplibs" = yes &&
- { test "$deplibs_check_method" = pass_all ||
- { test "$build_libtool_libs" = yes &&
- test -n "$library_names"; }; }; then
- # We only need to search for static libraries
- continue
- fi
-
- if test "$installed" = no; then
- notinst_deplibs="$notinst_deplibs $lib"
- need_relink=yes
- fi
-
- if test -n "$old_archive_from_expsyms_cmds"; then
- # figure out the soname
- set dummy $library_names
- realname="$2"
- shift; shift
- libname=`eval \\$echo \"$libname_spec\"`
- # use dlname if we got it. it's perfectly good, no?
- if test -n "$dlname"; then
- soname="$dlname"
- elif test -n "$soname_spec"; then
- # bleh windows
- case $host in
- *cygwin*)
- major=`expr $current - $age`
- versuffix="-$major"
- ;;
- esac
- eval soname=\"$soname_spec\"
- else
- soname="$realname"
- fi
-
- # Make a new name for the extract_expsyms_cmds to use
- soroot="$soname"
- soname=`echo $soroot | ${SED} -e 's/^.*\///'`
- newlib="libimp-`echo $soname | ${SED} 's/^lib//;s/\.dll$//'`.a"
-
- # If the library has no export list, then create one now
- if test -f "$output_objdir/$soname-def"; then :
- else
- $show "extracting exported symbol list from \`$soname'"
- save_ifs="$IFS"; IFS='~'
- eval cmds=\"$extract_expsyms_cmds\"
- for cmd in $cmds; do
- IFS="$save_ifs"
- $show "$cmd"
- $run eval "$cmd" || exit $?
- done
- IFS="$save_ifs"
- fi
-
- # Create $newlib
- if test -f "$output_objdir/$newlib"; then :; else
- $show "generating import library for \`$soname'"
- save_ifs="$IFS"; IFS='~'
- eval cmds=\"$old_archive_from_expsyms_cmds\"
- for cmd in $cmds; do
- IFS="$save_ifs"
- $show "$cmd"
- $run eval "$cmd" || exit $?
- done
- IFS="$save_ifs"
- fi
- # make sure the library variables are pointing to the new library
- dir=$output_objdir
- linklib=$newlib
- fi # test -n $old_archive_from_expsyms_cmds
-
- if test $linkmode = prog || test "$mode" != relink; then
- add_shlibpath=
- add_dir=
- add=
- lib_linked=yes
- case $hardcode_action in
- immediate | unsupported)
- if test "$hardcode_direct" = no; then
- add="$dir/$linklib"
- elif test "$hardcode_minus_L" = no; then
- case $host in
- *-*-sunos*) add_shlibpath="$dir" ;;
- esac
- add_dir="-L$dir"
- add="-l$name"
- elif test "$hardcode_shlibpath_var" = no; then
- add_shlibpath="$dir"
- add="-l$name"
- else
- lib_linked=no
- fi
- ;;
- relink)
- if test "$hardcode_direct" = yes; then
- add="$dir/$linklib"
- elif test "$hardcode_minus_L" = yes; then
- add_dir="-L$dir"
- add="-l$name"
- elif test "$hardcode_shlibpath_var" = yes; then
- add_shlibpath="$dir"
- add="-l$name"
- else
- lib_linked=no
- fi
- ;;
- *) lib_linked=no ;;
- esac
-
- if test "$lib_linked" != yes; then
- $echo "$modename: configuration error: unsupported hardcode properties"
- exit 1
- fi
-
- if test -n "$add_shlibpath"; then
- case :$compile_shlibpath: in
- *":$add_shlibpath:"*) ;;
- *) compile_shlibpath="$compile_shlibpath$add_shlibpath:" ;;
- esac
- fi
- if test $linkmode = prog; then
- test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs"
- test -n "$add" && compile_deplibs="$add $compile_deplibs"
- else
- test -n "$add_dir" && deplibs="$add_dir $deplibs"
- test -n "$add" && deplibs="$add $deplibs"
- if test "$hardcode_direct" != yes && \
- test "$hardcode_minus_L" != yes && \
- test "$hardcode_shlibpath_var" = yes; then
- case :$finalize_shlibpath: in
- *":$libdir:"*) ;;
- *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;;
- esac
- fi
- fi
- fi
-
- if test $linkmode = prog || test "$mode" = relink; then
- add_shlibpath=
- add_dir=
- add=
- # Finalize command for both is simple: just hardcode it.
- if test "$hardcode_direct" = yes; then
- add="$libdir/$linklib"
- elif test "$hardcode_minus_L" = yes; then
- add_dir="-L$libdir"
- add="-l$name"
- elif test "$hardcode_shlibpath_var" = yes; then
- case :$finalize_shlibpath: in
- *":$libdir:"*) ;;
- *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;;
- esac
- add="-l$name"
- else
- # We cannot seem to hardcode it, guess we'll fake it.
- add_dir="-L$libdir"
- add="-l$name"
- fi
-
- if test $linkmode = prog; then
- test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs"
- test -n "$add" && finalize_deplibs="$add $finalize_deplibs"
- else
- test -n "$add_dir" && deplibs="$add_dir $deplibs"
- test -n "$add" && deplibs="$add $deplibs"
- fi
- fi
- elif test $linkmode = prog; then
- if test "$alldeplibs" = yes &&
- { test "$deplibs_check_method" = pass_all ||
- { test "$build_libtool_libs" = yes &&
- test -n "$library_names"; }; }; then
- # We only need to search for static libraries
- continue
- fi
-
- # Try to link the static library
- # Here we assume that one of hardcode_direct or hardcode_minus_L
- # is not unsupported. This is valid on all known static and
- # shared platforms.
- if test "$hardcode_direct" != unsupported; then
- test -n "$old_library" && linklib="$old_library"
- compile_deplibs="$dir/$linklib $compile_deplibs"
- finalize_deplibs="$dir/$linklib $finalize_deplibs"
- else
- compile_deplibs="-l$name -L$dir $compile_deplibs"
- finalize_deplibs="-l$name -L$dir $finalize_deplibs"
- fi
- elif test "$build_libtool_libs" = yes; then
- # Not a shared library
- if test "$deplibs_check_method" != pass_all; then
- # We're trying link a shared library against a static one
- # but the system doesn't support it.
-
- # Just print a warning and add the library to dependency_libs so
- # that the program can be linked against the static library.
- echo
- echo "*** Warning: This system can not link to static lib archive $lib."
- echo "*** I have the capability to make that library automatically link in when"
- echo "*** you link to this library. But I can only do this if you have a"
- echo "*** shared version of the library, which you do not appear to have."
- if test "$module" = yes; then
- echo "*** But as you try to build a module library, libtool will still create "
- echo "*** a static module, that should work as long as the dlopening application"
- echo "*** is linked with the -dlopen flag to resolve symbols at runtime."
- if test -z "$global_symbol_pipe"; then
- echo
- echo "*** However, this would only work if libtool was able to extract symbol"
- echo "*** lists from a program, using \`nm' or equivalent, but libtool could"
- echo "*** not find such a program. So, this module is probably useless."
- echo "*** \`nm' from GNU binutils and a full rebuild may help."
- fi
- if test "$build_old_libs" = no; then
- build_libtool_libs=module
- build_old_libs=yes
- else
- build_libtool_libs=no
- fi
- fi
- else
- convenience="$convenience $dir/$old_library"
- old_convenience="$old_convenience $dir/$old_library"
- deplibs="$dir/$old_library $deplibs"
- link_static=yes
- fi
- fi # link shared/static library?
-
- if test $linkmode = lib; then
- if test -n "$dependency_libs" &&
- { test $hardcode_into_libs != yes || test $build_old_libs = yes ||
- test $link_static = yes; }; then
- # Extract -R from dependency_libs
- temp_deplibs=
- for libdir in $dependency_libs; do
- case $libdir in
- -R*) temp_xrpath=`$echo "X$libdir" | $Xsed -e 's/^-R//'`
- case " $xrpath " in
- *" $temp_xrpath "*) ;;
- *) xrpath="$xrpath $temp_xrpath";;
- esac;;
- *) temp_deplibs="$temp_deplibs $libdir";;
- esac
- done
- dependency_libs="$temp_deplibs"
- fi
-
- newlib_search_path="$newlib_search_path $absdir"
- # Link against this library
- test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs"
- # ... and its dependency_libs
- tmp_libs=
- for deplib in $dependency_libs; do
- newdependency_libs="$deplib $newdependency_libs"
- if test "X$duplicate_deps" = "Xyes" ; then
- case "$tmp_libs " in
- *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
- esac
- fi
- tmp_libs="$tmp_libs $deplib"
- done
-
- if test $link_all_deplibs != no; then
- # Add the search paths of all dependency libraries
- for deplib in $dependency_libs; do
- case $deplib in
- -L*) path="$deplib" ;;
- *.la)
- dir=`$echo "X$deplib" | $Xsed -e 's%/[^/]*$%%'`
- test "X$dir" = "X$deplib" && dir="."
- # We need an absolute path.
- case $dir in
- [\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;;
- *)
- absdir=`cd "$dir" && pwd`
- if test -z "$absdir"; then
- $echo "$modename: warning: cannot determine absolute directory name of \`$dir'" 1>&2
- absdir="$dir"
- fi
- ;;
- esac
- if grep "^installed=no" $deplib > /dev/null; then
- path="-L$absdir/$objdir"
- else
- eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
- if test -z "$libdir"; then
- $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
- exit 1
- fi
- if test "$absdir" != "$libdir"; then
- $echo "$modename: warning: \`$deplib' seems to be moved" 1>&2
- fi
- path="-L$absdir"
- fi
- ;;
- *) continue ;;
- esac
- case " $deplibs " in
- *" $path "*) ;;
- *) deplibs="$deplibs $path" ;;
- esac
- done
- fi # link_all_deplibs != no
- fi # linkmode = lib
- done # for deplib in $libs
- if test $pass = dlpreopen; then
- # Link the dlpreopened libraries before other libraries
- for deplib in $save_deplibs; do
- deplibs="$deplib $deplibs"
- done
- fi
- if test $pass != dlopen; then
- test $pass != scan && dependency_libs="$newdependency_libs"
- if test $pass != conv; then
- # Make sure lib_search_path contains only unique directories.
- lib_search_path=
- for dir in $newlib_search_path; do
- case "$lib_search_path " in
- *" $dir "*) ;;
- *) lib_search_path="$lib_search_path $dir" ;;
- esac
- done
- newlib_search_path=
- fi
-
- if test "$linkmode,$pass" != "prog,link"; then
- vars="deplibs"
- else
- vars="compile_deplibs finalize_deplibs"
- fi
- for var in $vars dependency_libs; do
- # Add libraries to $var in reverse order
- eval tmp_libs=\"\$$var\"
- new_libs=
- for deplib in $tmp_libs; do
- case $deplib in
- -L*) new_libs="$deplib $new_libs" ;;
- *)
- case " $specialdeplibs " in
- *" $deplib "*) new_libs="$deplib $new_libs" ;;
- *)
- case " $new_libs " in
- *" $deplib "*) ;;
- *) new_libs="$deplib $new_libs" ;;
- esac
- ;;
- esac
- ;;
- esac
- done
- tmp_libs=
- for deplib in $new_libs; do
- case $deplib in
- -L*)
- case " $tmp_libs " in
- *" $deplib "*) ;;
- *) tmp_libs="$tmp_libs $deplib" ;;
- esac
- ;;
- *) tmp_libs="$tmp_libs $deplib" ;;
- esac
- done
- eval $var=\"$tmp_libs\"
- done # for var
- fi
- if test "$pass" = "conv" &&
- { test "$linkmode" = "lib" || test "$linkmode" = "prog"; }; then
- libs="$deplibs" # reset libs
- deplibs=
- fi
- done # for pass
- if test $linkmode = prog; then
- dlfiles="$newdlfiles"
- dlprefiles="$newdlprefiles"
- fi
-
- case $linkmode in
- oldlib)
- if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
- $echo "$modename: warning: \`-dlopen' is ignored for archives" 1>&2
- fi
-
- if test -n "$rpath"; then
- $echo "$modename: warning: \`-rpath' is ignored for archives" 1>&2
- fi
-
- if test -n "$xrpath"; then
- $echo "$modename: warning: \`-R' is ignored for archives" 1>&2
- fi
-
- if test -n "$vinfo"; then
- $echo "$modename: warning: \`-version-info' is ignored for archives" 1>&2
- fi
-
- if test -n "$release"; then
- $echo "$modename: warning: \`-release' is ignored for archives" 1>&2
- fi
-
- if test -n "$export_symbols" || test -n "$export_symbols_regex"; then
- $echo "$modename: warning: \`-export-symbols' is ignored for archives" 1>&2
- fi
-
- # Now set the variables for building old libraries.
- build_libtool_libs=no
- oldlibs="$output"
- objs="$objs$old_deplibs"
- ;;
-
- lib)
- # Make sure we only generate libraries of the form `libNAME.la'.
- case $outputname in
- lib*)
- name=`$echo "X$outputname" | $Xsed -e 's/\.la$//' -e 's/^lib//'`
- eval libname=\"$libname_spec\"
- ;;
- *)
- if test "$module" = no; then
- $echo "$modename: libtool library \`$output' must begin with \`lib'" 1>&2
- $echo "$help" 1>&2
- exit 1
- fi
- if test "$need_lib_prefix" != no; then
- # Add the "lib" prefix for modules if required
- name=`$echo "X$outputname" | $Xsed -e 's/\.la$//'`
- eval libname=\"$libname_spec\"
- else
- libname=`$echo "X$outputname" | $Xsed -e 's/\.la$//'`
- fi
- ;;
- esac
-
- if test -n "$objs"; then
- if test "$deplibs_check_method" != pass_all; then
- $echo "$modename: cannot build libtool library \`$output' from non-libtool objects on this host:$objs" 2>&1
- exit 1
- else
- echo
- echo "*** Warning: Linking the shared library $output against the non-libtool"
- echo "*** objects $objs is not portable!"
- libobjs="$libobjs $objs"
- fi
- fi
-
- if test "$dlself" != no; then
- $echo "$modename: warning: \`-dlopen self' is ignored for libtool libraries" 1>&2
- fi
-
- set dummy $rpath
- if test $# -gt 2; then
- $echo "$modename: warning: ignoring multiple \`-rpath's for a libtool library" 1>&2
- fi
- install_libdir="$2"
-
- oldlibs=
- if test -z "$rpath"; then
- if test "$build_libtool_libs" = yes; then
- # Building a libtool convenience library.
- libext=al
- oldlibs="$output_objdir/$libname.$libext $oldlibs"
- build_libtool_libs=convenience
- build_old_libs=yes
- fi
-
- if test -n "$vinfo"; then
- $echo "$modename: warning: \`-version-info' is ignored for convenience libraries" 1>&2
- fi
-
- if test -n "$release"; then
- $echo "$modename: warning: \`-release' is ignored for convenience libraries" 1>&2
- fi
- else
-
- # Parse the version information argument.
- save_ifs="$IFS"; IFS=':'
- set dummy $vinfo 0 0 0
- IFS="$save_ifs"
-
- if test -n "$8"; then
- $echo "$modename: too many parameters to \`-version-info'" 1>&2
- $echo "$help" 1>&2
- exit 1
- fi
-
- current="$2"
- revision="$3"
- age="$4"
-
- # Check that each of the things are valid numbers.
- case $current in
- 0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;;
- *)
- $echo "$modename: CURRENT \`$current' is not a nonnegative integer" 1>&2
- $echo "$modename: \`$vinfo' is not valid version information" 1>&2
- exit 1
- ;;
- esac
-
- case $revision in
- 0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;;
- *)
- $echo "$modename: REVISION \`$revision' is not a nonnegative integer" 1>&2
- $echo "$modename: \`$vinfo' is not valid version information" 1>&2
- exit 1
- ;;
- esac
-
- case $age in
- 0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;;
- *)
- $echo "$modename: AGE \`$age' is not a nonnegative integer" 1>&2
- $echo "$modename: \`$vinfo' is not valid version information" 1>&2
- exit 1
- ;;
- esac
-
- if test $age -gt $current; then
- $echo "$modename: AGE \`$age' is greater than the current interface number \`$current'" 1>&2
- $echo "$modename: \`$vinfo' is not valid version information" 1>&2
- exit 1
- fi
-
- # Calculate the version variables.
- major=
- versuffix=
- verstring=
- case $version_type in
- none) ;;
-
- darwin)
- # Like Linux, but with the current version available in
- # verstring for coding it into the library header
- major=.`expr $current - $age`
- versuffix="$major.$age.$revision"
- # Darwin ld doesn't like 0 for these options...
- minor_current=`expr $current + 1`
- verstring="-compatibility_version $minor_current -current_version $minor_current.$revision"
- ;;
-
- freebsd-aout)
- major=".$current"
- versuffix=".$current.$revision";
- ;;
-
- freebsd-elf)
- major=".$current"
- versuffix=".$current";
- ;;
-
- irix | nonstopux)
- major=`expr $current - $age + 1`
-
- case $version_type in
- nonstopux) verstring_prefix=nonstopux ;;
- *) verstring_prefix=sgi ;;
- esac
- verstring="$verstring_prefix$major.$revision"
-
- # Add in all the interfaces that we are compatible with.
- loop=$revision
- while test $loop != 0; do
- iface=`expr $revision - $loop`
- loop=`expr $loop - 1`
- verstring="$verstring_prefix$major.$iface:$verstring"
- done
-
- # Before this point, $major must not contain `.'.
- major=.$major
- versuffix="$major.$revision"
- ;;
-
- linux)
- major=.`expr $current - $age`
- versuffix="$major.$age.$revision"
- ;;
-
- osf)
- major=.`expr $current - $age`
- versuffix=".$current.$age.$revision"
- verstring="$current.$age.$revision"
-
- # Add in all the interfaces that we are compatible with.
- loop=$age
- while test $loop != 0; do
- iface=`expr $current - $loop`
- loop=`expr $loop - 1`
- verstring="$verstring:${iface}.0"
- done
-
- # Make executables depend on our current version.
- verstring="$verstring:${current}.0"
- ;;
-
- sunos)
- major=".$current"
- versuffix=".$current.$revision"
- ;;
-
- windows)
- # Use '-' rather than '.', since we only want one
- # extension on DOS 8.3 filesystems.
- major=`expr $current - $age`
- versuffix="-$major"
- ;;
-
- *)
- $echo "$modename: unknown library version type \`$version_type'" 1>&2
- echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
- exit 1
- ;;
- esac
-
- # Clear the version info if we defaulted, and they specified a release.
- if test -z "$vinfo" && test -n "$release"; then
- major=
- verstring="0.0"
- case $version_type in
- darwin)
- # we can't check for "0.0" in archive_cmds due to quoting
- # problems, so we reset it completely
- verstring=""
- ;;
- *)
- verstring="0.0"
- ;;
- esac
- if test "$need_version" = no; then
- versuffix=
- else
- versuffix=".0.0"
- fi
- fi
-
- # Remove version info from name if versioning should be avoided
- if test "$avoid_version" = yes && test "$need_version" = no; then
- major=
- versuffix=
- verstring=""
- fi
-
- # Check to see if the archive will have undefined symbols.
- if test "$allow_undefined" = yes; then
- if test "$allow_undefined_flag" = unsupported; then
- $echo "$modename: warning: undefined symbols not allowed in $host shared libraries" 1>&2
- build_libtool_libs=no
- build_old_libs=yes
- fi
- else
- # Don't allow undefined symbols.
- allow_undefined_flag="$no_undefined_flag"
- fi
- fi
-
- if test "$mode" != relink; then
- # Remove our outputs.
- $show "${rm}r $output_objdir/$outputname $output_objdir/$libname.* $output_objdir/${libname}${release}.*"
- $run ${rm}r $output_objdir/$outputname $output_objdir/$libname.* $output_objdir/${libname}${release}.*
- fi
-
- # Now set the variables for building old libraries.
- if test "$build_old_libs" = yes && test "$build_libtool_libs" != convenience ; then
- oldlibs="$oldlibs $output_objdir/$libname.$libext"
-
- # Transform .lo files to .o files.
- oldobjs="$objs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e "$lo2o" | $NL2SP`
- fi
-
- # Eliminate all temporary directories.
- for path in $notinst_path; do
- lib_search_path=`echo "$lib_search_path " | ${SED} -e 's% $path % %g'`
- deplibs=`echo "$deplibs " | ${SED} -e 's% -L$path % %g'`
- dependency_libs=`echo "$dependency_libs " | ${SED} -e 's% -L$path % %g'`
- done
-
- if test -n "$xrpath"; then
- # If the user specified any rpath flags, then add them.
- temp_xrpath=
- for libdir in $xrpath; do
- temp_xrpath="$temp_xrpath -R$libdir"
- case "$finalize_rpath " in
- *" $libdir "*) ;;
- *) finalize_rpath="$finalize_rpath $libdir" ;;
- esac
- done
- if test $hardcode_into_libs != yes || test $build_old_libs = yes; then
- dependency_libs="$temp_xrpath $dependency_libs"
- fi
- fi
-
- # Make sure dlfiles contains only unique files that won't be dlpreopened
- old_dlfiles="$dlfiles"
- dlfiles=
- for lib in $old_dlfiles; do
- case " $dlprefiles $dlfiles " in
- *" $lib "*) ;;
- *) dlfiles="$dlfiles $lib" ;;
- esac
- done
-
- # Make sure dlprefiles contains only unique files
- old_dlprefiles="$dlprefiles"
- dlprefiles=
- for lib in $old_dlprefiles; do
- case "$dlprefiles " in
- *" $lib "*) ;;
- *) dlprefiles="$dlprefiles $lib" ;;
- esac
- done
-
- if test "$build_libtool_libs" = yes; then
- if test -n "$rpath"; then
- case $host in
- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos*)
- # these systems don't actually have a c library (as such)!
- ;;
- *-*-rhapsody* | *-*-darwin1.[012])
- # Rhapsody C library is in the System framework
- deplibs="$deplibs -framework System"
- ;;
- *-*-netbsd*)
- # Don't link with libc until the a.out ld.so is fixed.
- ;;
- *-*-openbsd* | *-*-freebsd*)
- # Do not include libc due to us having libc/libc_r.
- ;;
- *)
- # Add libc to deplibs on all other systems if necessary.
- if test $build_libtool_need_lc = "yes"; then
- deplibs="$deplibs -lc"
- fi
- ;;
- esac
- fi
-
- # Transform deplibs into only deplibs that can be linked in shared.
- name_save=$name
- libname_save=$libname
- release_save=$release
- versuffix_save=$versuffix
- major_save=$major
- # I'm not sure if I'm treating the release correctly. I think
- # release should show up in the -l (ie -lgmp5) so we don't want to
- # add it in twice. Is that correct?
- release=""
- versuffix=""
- major=""
- newdeplibs=
- droppeddeps=no
- case $deplibs_check_method in
- pass_all)
- # Don't check for shared/static. Everything works.
- # This might be a little naive. We might want to check
- # whether the library exists or not. But this is on
- # osf3 & osf4 and I'm not really sure... Just
- # implementing what was already the behaviour.
- newdeplibs=$deplibs
- ;;
- test_compile)
- # This code stresses the "libraries are programs" paradigm to its
- # limits. Maybe even breaks it. We compile a program, linking it
- # against the deplibs as a proxy for the library. Then we can check
- # whether they linked in statically or dynamically with ldd.
- $rm conftest.c
- cat > conftest.c <<EOF
- int main() { return 0; }
-EOF
- $rm conftest
- $CC -o conftest conftest.c $deplibs
- if test $? -eq 0 ; then
- ldd_output=`ldd conftest`
- for i in $deplibs; do
- name="`expr $i : '-l\(.*\)'`"
- # If $name is empty we are operating on a -L argument.
- if test -n "$name" && test "$name" != "0"; then
- libname=`eval \\$echo \"$libname_spec\"`
- deplib_matches=`eval \\$echo \"$library_names_spec\"`
- set dummy $deplib_matches
- deplib_match=$2
- if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then
- newdeplibs="$newdeplibs $i"
- else
- droppeddeps=yes
- echo
- echo "*** Warning: dynamic linker does not accept needed library $i."
- echo "*** I have the capability to make that library automatically link in when"
- echo "*** you link to this library. But I can only do this if you have a"
- echo "*** shared version of the library, which I believe you do not have"
- echo "*** because a test_compile did reveal that the linker did not use it for"
- echo "*** its dynamic dependency list that programs get resolved with at runtime."
- fi
- else
- newdeplibs="$newdeplibs $i"
- fi
- done
- else
- # Error occured in the first compile. Let's try to salvage
- # the situation: Compile a separate program for each library.
- for i in $deplibs; do
- name="`expr $i : '-l\(.*\)'`"
- # If $name is empty we are operating on a -L argument.
- if test -n "$name" && test "$name" != "0"; then
- $rm conftest
- $CC -o conftest conftest.c $i
- # Did it work?
- if test $? -eq 0 ; then
- ldd_output=`ldd conftest`
- libname=`eval \\$echo \"$libname_spec\"`
- deplib_matches=`eval \\$echo \"$library_names_spec\"`
- set dummy $deplib_matches
- deplib_match=$2
- if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then
- newdeplibs="$newdeplibs $i"
- else
- droppeddeps=yes
- echo
- echo "*** Warning: dynamic linker does not accept needed library $i."
- echo "*** I have the capability to make that library automatically link in when"
- echo "*** you link to this library. But I can only do this if you have a"
- echo "*** shared version of the library, which you do not appear to have"
- echo "*** because a test_compile did reveal that the linker did not use this one"
- echo "*** as a dynamic dependency that programs can get resolved with at runtime."
- fi
- else
- droppeddeps=yes
- echo
- echo "*** Warning! Library $i is needed by this library but I was not able to"
- echo "*** make it link in! You will probably need to install it or some"
- echo "*** library that it depends on before this library will be fully"
- echo "*** functional. Installing it before continuing would be even better."
- fi
- else
- newdeplibs="$newdeplibs $i"
- fi
- done
- fi
- ;;
- file_magic*)
- set dummy $deplibs_check_method
- file_magic_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"`
- for a_deplib in $deplibs; do
- name="`expr $a_deplib : '-l\(.*\)'`"
- # If $name is empty we are operating on a -L argument.
- if test -n "$name" && test "$name" != "0"; then
- libname=`eval \\$echo \"$libname_spec\"`
- for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
- potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
- for potent_lib in $potential_libs; do
- # Follow soft links.
- if ls -lLd "$potent_lib" 2>/dev/null \
- | grep " -> " >/dev/null; then
- continue
- fi
- # The statement above tries to avoid entering an
- # endless loop below, in case of cyclic links.
- # We might still enter an endless loop, since a link
- # loop can be closed while we follow links,
- # but so what?
- potlib="$potent_lib"
- while test -h "$potlib" 2>/dev/null; do
- potliblink=`ls -ld $potlib | ${SED} 's/.* -> //'`
- case $potliblink in
- [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";;
- *) potlib=`$echo "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";;
- esac
- done
- if eval $file_magic_cmd \"\$potlib\" 2>/dev/null \
- | ${SED} 10q \
- | egrep "$file_magic_regex" > /dev/null; then
- newdeplibs="$newdeplibs $a_deplib"
- a_deplib=""
- break 2
- fi
- done
- done
- if test -n "$a_deplib" ; then
- droppeddeps=yes
- echo
- echo "*** Warning: linker path does not have real file for library $a_deplib."
- echo "*** I have the capability to make that library automatically link in when"
- echo "*** you link to this library. But I can only do this if you have a"
- echo "*** shared version of the library, which you do not appear to have"
- echo "*** because I did check the linker path looking for a file starting"
- if test -z "$potlib" ; then
- echo "*** with $libname but no candidates were found. (...for file magic test)"
- else
- echo "*** with $libname and none of the candidates passed a file format test"
- echo "*** using a file magic. Last file checked: $potlib"
- fi
- fi
- else
- # Add a -L argument.
- newdeplibs="$newdeplibs $a_deplib"
- fi
- done # Gone through all deplibs.
- ;;
- match_pattern*)
- set dummy $deplibs_check_method
- match_pattern_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"`
- for a_deplib in $deplibs; do
- name="`expr $a_deplib : '-l\(.*\)'`"
- # If $name is empty we are operating on a -L argument.
- if test -n "$name" && test "$name" != "0"; then
- libname=`eval \\$echo \"$libname_spec\"`
- for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
- potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
- for potent_lib in $potential_libs; do
- potlib="$potent_lib" # see symlink-check below in file_magic test
- if eval echo \"$potent_lib\" 2>/dev/null \
- | ${SED} 10q \
- | egrep "$match_pattern_regex" > /dev/null; then
- newdeplibs="$newdeplibs $a_deplib"
- a_deplib=""
- break 2
- fi
- done
- done
- if test -n "$a_deplib" ; then
- droppeddeps=yes
- echo
- echo "*** Warning: linker path does not have real file for library $a_deplib."
- echo "*** I have the capability to make that library automatically link in when"
- echo "*** you link to this library. But I can only do this if you have a"
- echo "*** shared version of the library, which you do not appear to have"
- echo "*** because I did check the linker path looking for a file starting"
- if test -z "$potlib" ; then
- echo "*** with $libname but no candidates were found. (...for regex pattern test)"
- else
- echo "*** with $libname and none of the candidates passed a file format test"
- echo "*** using a regex pattern. Last file checked: $potlib"
- fi
- fi
- else
- # Add a -L argument.
- newdeplibs="$newdeplibs $a_deplib"
- fi
- done # Gone through all deplibs.
- ;;
- none | unknown | *)
- newdeplibs=""
- if $echo "X $deplibs" | $Xsed -e 's/ -lc$//' \
- -e 's/ -[LR][^ ]*//g' -e 's/[ ]//g' |
- grep . >/dev/null; then
- echo
- if test "X$deplibs_check_method" = "Xnone"; then
- echo "*** Warning: inter-library dependencies are not supported in this platform."
- else
- echo "*** Warning: inter-library dependencies are not known to be supported."
- fi
- echo "*** All declared inter-library dependencies are being dropped."
- droppeddeps=yes
- fi
- ;;
- esac
- versuffix=$versuffix_save
- major=$major_save
- release=$release_save
- libname=$libname_save
- name=$name_save
-
- case $host in
- *-*-rhapsody* | *-*-darwin1.[012])
- # On Rhapsody replace the C library is the System framework
- newdeplibs=`$echo "X $newdeplibs" | $Xsed -e 's/ -lc / -framework System /'`
- ;;
- esac
-
- if test "$droppeddeps" = yes; then
- if test "$module" = yes; then
- echo
- echo "*** Warning: libtool could not satisfy all declared inter-library"
- echo "*** dependencies of module $libname. Therefore, libtool will create"
- echo "*** a static module, that should work as long as the dlopening"
- echo "*** application is linked with the -dlopen flag."
- if test -z "$global_symbol_pipe"; then
- echo
- echo "*** However, this would only work if libtool was able to extract symbol"
- echo "*** lists from a program, using \`nm' or equivalent, but libtool could"
- echo "*** not find such a program. So, this module is probably useless."
- echo "*** \`nm' from GNU binutils and a full rebuild may help."
- fi
- if test "$build_old_libs" = no; then
- oldlibs="$output_objdir/$libname.$libext"
- build_libtool_libs=module
- build_old_libs=yes
- else
- build_libtool_libs=no
- fi
- else
- echo "*** The inter-library dependencies that have been dropped here will be"
- echo "*** automatically added whenever a program is linked with this library"
- echo "*** or is declared to -dlopen it."
-
- if test $allow_undefined = no; then
- echo
- echo "*** Since this library must not contain undefined symbols,"
- echo "*** because either the platform does not support them or"
- echo "*** it was explicitly requested with -no-undefined,"
- echo "*** libtool will only create a static version of it."
- if test "$build_old_libs" = no; then
- oldlibs="$output_objdir/$libname.$libext"
- build_libtool_libs=module
- build_old_libs=yes
- else
- build_libtool_libs=no
- fi
- fi
- fi
- fi
- # Done checking deplibs!
- deplibs=$newdeplibs
- fi
-
- # All the library-specific variables (install_libdir is set above).
- library_names=
- old_library=
- dlname=
-
- # Test again, we may have decided not to build it any more
- if test "$build_libtool_libs" = yes; then
- if test $hardcode_into_libs = yes; then
- # Hardcode the library paths
- hardcode_libdirs=
- dep_rpath=
- rpath="$finalize_rpath"
- test "$mode" != relink && rpath="$compile_rpath$rpath"
- for libdir in $rpath; do
- if test -n "$hardcode_libdir_flag_spec"; then
- if test -n "$hardcode_libdir_separator"; then
- if test -z "$hardcode_libdirs"; then
- hardcode_libdirs="$libdir"
- else
- # Just accumulate the unique libdirs.
- case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
- *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
- ;;
- *)
- hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir"
- ;;
- esac
- fi
- else
- eval flag=\"$hardcode_libdir_flag_spec\"
- dep_rpath="$dep_rpath $flag"
- fi
- elif test -n "$runpath_var"; then
- case "$perm_rpath " in
- *" $libdir "*) ;;
- *) perm_rpath="$perm_rpath $libdir" ;;
- esac
- fi
- done
- # Substitute the hardcoded libdirs into the rpath.
- if test -n "$hardcode_libdir_separator" &&
- test -n "$hardcode_libdirs"; then
- libdir="$hardcode_libdirs"
- eval dep_rpath=\"$hardcode_libdir_flag_spec\"
- fi
- if test -n "$runpath_var" && test -n "$perm_rpath"; then
- # We should set the runpath_var.
- rpath=
- for dir in $perm_rpath; do
- rpath="$rpath$dir:"
- done
- eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var"
- fi
- test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs"
- fi
-
- shlibpath="$finalize_shlibpath"
- test "$mode" != relink && shlibpath="$compile_shlibpath$shlibpath"
- if test -n "$shlibpath"; then
- eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var"
- fi
-
- # Get the real and link names of the library.
- eval library_names=\"$library_names_spec\"
- set dummy $library_names
- realname="$2"
- shift; shift
-
- if test -n "$soname_spec"; then
- eval soname=\"$soname_spec\"
- else
- soname="$realname"
- fi
- test -z "$dlname" && dlname=$soname
-
- lib="$output_objdir/$realname"
- for link
- do
- linknames="$linknames $link"
- done
-
- # Ensure that we have .o objects for linkers which dislike .lo
- # (e.g. aix) in case we are running --disable-static
- for obj in $libobjs; do
- xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'`
- if test "X$xdir" = "X$obj"; then
- xdir="."
- else
- xdir="$xdir"
- fi
- baseobj=`$echo "X$obj" | $Xsed -e 's%^.*/%%'`
- oldobj=`$echo "X$baseobj" | $Xsed -e "$lo2o"`
- if test ! -f $xdir/$oldobj; then
- $show "(cd $xdir && ${LN_S} $baseobj $oldobj)"
- $run eval '(cd $xdir && ${LN_S} $baseobj $oldobj)' || exit $?
- fi
- done
-
- # Use standard objects if they are pic
- test -z "$pic_flag" && libobjs=`$echo "X$libobjs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
-
- # Prepare the list of exported symbols
- if test -z "$export_symbols"; then
- if test "$always_export_symbols" = yes || test -n "$export_symbols_regex"; then
- $show "generating symbol list for \`$libname.la'"
- export_symbols="$output_objdir/$libname.exp"
- $run $rm $export_symbols
- eval cmds=\"$export_symbols_cmds\"
- save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- $show "$cmd"
- $run eval "$cmd" || exit $?
- done
- IFS="$save_ifs"
- if test -n "$export_symbols_regex"; then
- $show "egrep -e \"$export_symbols_regex\" \"$export_symbols\" > \"${export_symbols}T\""
- $run eval 'egrep -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"'
- $show "$mv \"${export_symbols}T\" \"$export_symbols\""
- $run eval '$mv "${export_symbols}T" "$export_symbols"'
- fi
- fi
- fi
-
- if test -n "$export_symbols" && test -n "$include_expsyms"; then
- $run eval '$echo "X$include_expsyms" | $SP2NL >> "$export_symbols"'
- fi
-
- if test -n "$convenience"; then
- if test -n "$whole_archive_flag_spec"; then
- eval libobjs=\"\$libobjs $whole_archive_flag_spec\"
- else
- gentop="$output_objdir/${outputname}x"
- $show "${rm}r $gentop"
- $run ${rm}r "$gentop"
- $show "mkdir $gentop"
- $run mkdir "$gentop"
- status=$?
- if test $status -ne 0 && test ! -d "$gentop"; then
- exit $status
- fi
- generated="$generated $gentop"
-
- for xlib in $convenience; do
- # Extract the objects.
- case $xlib in
- [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;;
- *) xabs=`pwd`"/$xlib" ;;
- esac
- xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'`
- xdir="$gentop/$xlib"
-
- $show "${rm}r $xdir"
- $run ${rm}r "$xdir"
- $show "mkdir $xdir"
- $run mkdir "$xdir"
- status=$?
- if test $status -ne 0 && test ! -d "$xdir"; then
- exit $status
- fi
- $show "(cd $xdir && $AR x $xabs)"
- $run eval "(cd \$xdir && $AR x \$xabs)" || exit $?
-
- libobjs="$libobjs "`find $xdir -name \*.o -print -o -name \*.lo -print | $NL2SP`
- done
- fi
- fi
-
- if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then
- eval flag=\"$thread_safe_flag_spec\"
- linker_flags="$linker_flags $flag"
- fi
-
- # Make a backup of the uninstalled library when relinking
- if test "$mode" = relink; then
- $run eval '(cd $output_objdir && $rm ${realname}U && $mv $realname ${realname}U)' || exit $?
- fi
-
- # Do each of the archive commands.
- if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then
- eval cmds=\"$archive_expsym_cmds\"
- else
- save_deplibs="$deplibs"
- for conv in $convenience; do
- tmp_deplibs=
- for test_deplib in $deplibs; do
- if test "$test_deplib" != "$conv"; then
- tmp_deplibs="$tmp_deplibs $test_deplib"
- fi
- done
- deplibs="$tmp_deplibs"
- done
- eval cmds=\"$archive_cmds\"
- deplibs="$save_deplibs"
- fi
- save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- $show "$cmd"
- $run eval "$cmd" || exit $?
- done
- IFS="$save_ifs"
-
- # Restore the uninstalled library and exit
- if test "$mode" = relink; then
- $run eval '(cd $output_objdir && $rm ${realname}T && $mv $realname ${realname}T && $mv "$realname"U $realname)' || exit $?
- exit 0
- fi
-
- # Create links to the real library.
- for linkname in $linknames; do
- if test "$realname" != "$linkname"; then
- $show "(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)"
- $run eval '(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)' || exit $?
- fi
- done
-
- # If -module or -export-dynamic was specified, set the dlname.
- if test "$module" = yes || test "$export_dynamic" = yes; then
- # On all known operating systems, these are identical.
- dlname="$soname"
- fi
- fi
- ;;
-
- obj)
- if test -n "$deplibs"; then
- $echo "$modename: warning: \`-l' and \`-L' are ignored for objects" 1>&2
- fi
-
- if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
- $echo "$modename: warning: \`-dlopen' is ignored for objects" 1>&2
- fi
-
- if test -n "$rpath"; then
- $echo "$modename: warning: \`-rpath' is ignored for objects" 1>&2
- fi
-
- if test -n "$xrpath"; then
- $echo "$modename: warning: \`-R' is ignored for objects" 1>&2
- fi
-
- if test -n "$vinfo"; then
- $echo "$modename: warning: \`-version-info' is ignored for objects" 1>&2
- fi
-
- if test -n "$release"; then
- $echo "$modename: warning: \`-release' is ignored for objects" 1>&2
- fi
-
- case $output in
- *.lo)
- if test -n "$objs$old_deplibs"; then
- $echo "$modename: cannot build library object \`$output' from non-libtool objects" 1>&2
- exit 1
- fi
- libobj="$output"
- obj=`$echo "X$output" | $Xsed -e "$lo2o"`
- ;;
- *)
- libobj=
- obj="$output"
- ;;
- esac
-
- # Delete the old objects.
- $run $rm $obj $libobj
-
- # Objects from convenience libraries. This assumes
- # single-version convenience libraries. Whenever we create
- # different ones for PIC/non-PIC, this we'll have to duplicate
- # the extraction.
- reload_conv_objs=
- gentop=
- # reload_cmds runs $LD directly, so let us get rid of
- # -Wl from whole_archive_flag_spec
- wl=
-
- if test -n "$convenience"; then
- if test -n "$whole_archive_flag_spec"; then
- eval reload_conv_objs=\"\$reload_objs $whole_archive_flag_spec\"
- else
- gentop="$output_objdir/${obj}x"
- $show "${rm}r $gentop"
- $run ${rm}r "$gentop"
- $show "mkdir $gentop"
- $run mkdir "$gentop"
- status=$?
- if test $status -ne 0 && test ! -d "$gentop"; then
- exit $status
- fi
- generated="$generated $gentop"
-
- for xlib in $convenience; do
- # Extract the objects.
- case $xlib in
- [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;;
- *) xabs=`pwd`"/$xlib" ;;
- esac
- xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'`
- xdir="$gentop/$xlib"
-
- $show "${rm}r $xdir"
- $run ${rm}r "$xdir"
- $show "mkdir $xdir"
- $run mkdir "$xdir"
- status=$?
- if test $status -ne 0 && test ! -d "$xdir"; then
- exit $status
- fi
- $show "(cd $xdir && $AR x $xabs)"
- $run eval "(cd \$xdir && $AR x \$xabs)" || exit $?
-
- reload_conv_objs="$reload_objs "`find $xdir -name \*.o -print -o -name \*.lo -print | $NL2SP`
- done
- fi
- fi
-
- # Create the old-style object.
- reload_objs="$objs$old_deplibs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test
-
- output="$obj"
- eval cmds=\"$reload_cmds\"
- save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- $show "$cmd"
- $run eval "$cmd" || exit $?
- done
- IFS="$save_ifs"
-
- # Exit if we aren't doing a library object file.
- if test -z "$libobj"; then
- if test -n "$gentop"; then
- $show "${rm}r $gentop"
- $run ${rm}r $gentop
- fi
-
- exit 0
- fi
-
- if test "$build_libtool_libs" != yes; then
- if test -n "$gentop"; then
- $show "${rm}r $gentop"
- $run ${rm}r $gentop
- fi
-
- # Create an invalid libtool object if no PIC, so that we don't
- # accidentally link it into a program.
- $show "echo timestamp > $libobj"
- $run eval "echo timestamp > $libobj" || exit $?
- exit 0
- fi
-
- if test -n "$pic_flag" || test "$pic_mode" != default; then
- # Only do commands if we really have different PIC objects.
- reload_objs="$libobjs $reload_conv_objs"
- output="$libobj"
- eval cmds=\"$reload_cmds\"
- save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- $show "$cmd"
- $run eval "$cmd" || exit $?
- done
- IFS="$save_ifs"
- else
- # Just create a symlink.
- $show $rm $libobj
- $run $rm $libobj
- xdir=`$echo "X$libobj" | $Xsed -e 's%/[^/]*$%%'`
- if test "X$xdir" = "X$libobj"; then
- xdir="."
- else
- xdir="$xdir"
- fi
- baseobj=`$echo "X$libobj" | $Xsed -e 's%^.*/%%'`
- oldobj=`$echo "X$baseobj" | $Xsed -e "$lo2o"`
- $show "(cd $xdir && $LN_S $oldobj $baseobj)"
- $run eval '(cd $xdir && $LN_S $oldobj $baseobj)' || exit $?
- fi
-
- if test -n "$gentop"; then
- $show "${rm}r $gentop"
- $run ${rm}r $gentop
- fi
-
- exit 0
- ;;
-
- prog)
- case $host in
- *cygwin*) output=`echo $output | ${SED} -e 's,.exe$,,;s,$,.exe,'` ;;
- esac
- if test -n "$vinfo"; then
- $echo "$modename: warning: \`-version-info' is ignored for programs" 1>&2
- fi
-
- if test -n "$release"; then
- $echo "$modename: warning: \`-release' is ignored for programs" 1>&2
- fi
-
- if test "$preload" = yes; then
- if test "$dlopen_support" = unknown && test "$dlopen_self" = unknown &&
- test "$dlopen_self_static" = unknown; then
- $echo "$modename: warning: \`AC_LIBTOOL_DLOPEN' not used. Assuming no dlopen support."
- fi
- fi
-
- case $host in
- *-*-rhapsody* | *-*-darwin1.[012])
- # On Rhapsody replace the C library is the System framework
- compile_deplibs=`$echo "X $compile_deplibs" | $Xsed -e 's/ -lc / -framework System /'`
- finalize_deplibs=`$echo "X $finalize_deplibs" | $Xsed -e 's/ -lc / -framework System /'`
- case $host in
- *darwin*)
- # Don't allow lazy linking, it breaks C++ global constructors
- compile_command="$compile_command ${wl}-bind_at_load"
- finalize_command="$finalize_command ${wl}-bind_at_load"
- ;;
- esac
- ;;
- esac
-
- compile_command="$compile_command $compile_deplibs"
- finalize_command="$finalize_command $finalize_deplibs"
-
- if test -n "$rpath$xrpath"; then
- # If the user specified any rpath flags, then add them.
- for libdir in $rpath $xrpath; do
- # This is the magic to use -rpath.
- case "$finalize_rpath " in
- *" $libdir "*) ;;
- *) finalize_rpath="$finalize_rpath $libdir" ;;
- esac
- done
- fi
-
- # Now hardcode the library paths
- rpath=
- hardcode_libdirs=
- for libdir in $compile_rpath $finalize_rpath; do
- if test -n "$hardcode_libdir_flag_spec"; then
- if test -n "$hardcode_libdir_separator"; then
- if test -z "$hardcode_libdirs"; then
- hardcode_libdirs="$libdir"
- else
- # Just accumulate the unique libdirs.
- case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
- *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
- ;;
- *)
- hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir"
- ;;
- esac
- fi
- else
- eval flag=\"$hardcode_libdir_flag_spec\"
- rpath="$rpath $flag"
- fi
- elif test -n "$runpath_var"; then
- case "$perm_rpath " in
- *" $libdir "*) ;;
- *) perm_rpath="$perm_rpath $libdir" ;;
- esac
- fi
- case $host in
- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
- case :$dllsearchpath: in
- *":$libdir:"*) ;;
- *) dllsearchpath="$dllsearchpath:$libdir";;
- esac
- ;;
- esac
- done
- # Substitute the hardcoded libdirs into the rpath.
- if test -n "$hardcode_libdir_separator" &&
- test -n "$hardcode_libdirs"; then
- libdir="$hardcode_libdirs"
- eval rpath=\" $hardcode_libdir_flag_spec\"
- fi
- compile_rpath="$rpath"
-
- rpath=
- hardcode_libdirs=
- for libdir in $finalize_rpath; do
- if test -n "$hardcode_libdir_flag_spec"; then
- if test -n "$hardcode_libdir_separator"; then
- if test -z "$hardcode_libdirs"; then
- hardcode_libdirs="$libdir"
- else
- # Just accumulate the unique libdirs.
- case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
- *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
- ;;
- *)
- hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir"
- ;;
- esac
- fi
- else
- eval flag=\"$hardcode_libdir_flag_spec\"
- rpath="$rpath $flag"
- fi
- elif test -n "$runpath_var"; then
- case "$finalize_perm_rpath " in
- *" $libdir "*) ;;
- *) finalize_perm_rpath="$finalize_perm_rpath $libdir" ;;
- esac
- fi
- done
- # Substitute the hardcoded libdirs into the rpath.
- if test -n "$hardcode_libdir_separator" &&
- test -n "$hardcode_libdirs"; then
- libdir="$hardcode_libdirs"
- eval rpath=\" $hardcode_libdir_flag_spec\"
- fi
- finalize_rpath="$rpath"
-
- if test -n "$libobjs" && test "$build_old_libs" = yes; then
- # Transform all the library objects into standard objects.
- compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
- finalize_command=`$echo "X$finalize_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
- fi
-
- dlsyms=
- if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
- if test -n "$NM" && test -n "$global_symbol_pipe"; then
- dlsyms="${outputname}S.c"
- else
- $echo "$modename: not configured to extract global symbols from dlpreopened files" 1>&2
- fi
- fi
-
- if test -n "$dlsyms"; then
- case $dlsyms in
- "") ;;
- *.c)
- # Discover the nlist of each of the dlfiles.
- nlist="$output_objdir/${outputname}.nm"
-
- $show "$rm $nlist ${nlist}S ${nlist}T"
- $run $rm "$nlist" "${nlist}S" "${nlist}T"
-
- # Parse the name list into a source file.
- $show "creating $output_objdir/$dlsyms"
-
- test -z "$run" && $echo > "$output_objdir/$dlsyms" "\
-/* $dlsyms - symbol resolution table for \`$outputname' dlsym emulation. */
-/* Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP */
-
-#ifdef __cplusplus
-extern \"C\" {
-#endif
-
-/* Prevent the only kind of declaration conflicts we can make. */
-#define lt_preloaded_symbols some_other_symbol
-
-/* External symbol declarations for the compiler. */\
-"
-
- if test "$dlself" = yes; then
- $show "generating symbol list for \`$output'"
-
- test -z "$run" && $echo ': @PROGRAM@ ' > "$nlist"
-
- # Add our own program objects to the symbol list.
- progfiles=`$echo "X$objs$old_deplibs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
- for arg in $progfiles; do
- $show "extracting global C symbols from \`$arg'"
- $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'"
- done
-
- if test -n "$exclude_expsyms"; then
- $run eval 'egrep -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T'
- $run eval '$mv "$nlist"T "$nlist"'
- fi
-
- if test -n "$export_symbols_regex"; then
- $run eval 'egrep -e "$export_symbols_regex" "$nlist" > "$nlist"T'
- $run eval '$mv "$nlist"T "$nlist"'
- fi
-
- # Prepare the list of exported symbols
- if test -z "$export_symbols"; then
- export_symbols="$output_objdir/$output.exp"
- $run $rm $export_symbols
- $run eval "${SED} -n -e '/^: @PROGRAM@$/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"'
- else
- $run eval "${SED} -e 's/\([][.*^$]\)/\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$output.exp"'
- $run eval 'grep -f "$output_objdir/$output.exp" < "$nlist" > "$nlist"T'
- $run eval 'mv "$nlist"T "$nlist"'
- fi
- fi
-
- for arg in $dlprefiles; do
- $show "extracting global C symbols from \`$arg'"
- name=`echo "$arg" | ${SED} -e 's%^.*/%%'`
- $run eval 'echo ": $name " >> "$nlist"'
- $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'"
- done
-
- if test -z "$run"; then
- # Make sure we have at least an empty file.
- test -f "$nlist" || : > "$nlist"
-
- if test -n "$exclude_expsyms"; then
- egrep -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T
- $mv "$nlist"T "$nlist"
- fi
-
- # Try sorting and uniquifying the output.
- if grep -v "^: " < "$nlist" |
- if sort -k 3 </dev/null >/dev/null 2>&1; then
- sort -k 3
- else
- sort +2
- fi |
- uniq > "$nlist"S; then
- :
- else
- grep -v "^: " < "$nlist" > "$nlist"S
- fi
-
- if test -f "$nlist"S; then
- eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$dlsyms"'
- else
- echo '/* NONE */' >> "$output_objdir/$dlsyms"
- fi
-
- $echo >> "$output_objdir/$dlsyms" "\
-
-#undef lt_preloaded_symbols
-
-#if defined (__STDC__) && __STDC__
-# define lt_ptr void *
-#else
-# define lt_ptr char *
-# define const
-#endif
-
-/* The mapping between symbol names and symbols. */
-const struct {
- const char *name;
- lt_ptr address;
-}
-lt_preloaded_symbols[] =
-{\
-"
-
- eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$dlsyms"
-
- $echo >> "$output_objdir/$dlsyms" "\
- {0, (lt_ptr) 0}
-};
-
-/* This works around a problem in FreeBSD linker */
-#ifdef FREEBSD_WORKAROUND
-static const void *lt_preloaded_setup() {
- return lt_preloaded_symbols;
-}
-#endif
-
-#ifdef __cplusplus
-}
-#endif\
-"
- fi
-
- pic_flag_for_symtable=
- case $host in
- # compiling the symbol table file with pic_flag works around
- # a FreeBSD bug that causes programs to crash when -lm is
- # linked before any other PIC object. But we must not use
- # pic_flag when linking with -static. The problem exists in
- # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1.
- *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*)
- case "$compile_command " in
- *" -static "*) ;;
- *) pic_flag_for_symtable=" $pic_flag -DPIC -DFREEBSD_WORKAROUND";;
- esac;;
- *-*-hpux*)
- case "$compile_command " in
- *" -static "*) ;;
- *) pic_flag_for_symtable=" $pic_flag -DPIC";;
- esac
- esac
-
- # Now compile the dynamic symbol file.
- $show "(cd $output_objdir && $CC -c$no_builtin_flag$pic_flag_for_symtable \"$dlsyms\")"
- $run eval '(cd $output_objdir && $CC -c$no_builtin_flag$pic_flag_for_symtable "$dlsyms")' || exit $?
-
- # Clean up the generated files.
- $show "$rm $output_objdir/$dlsyms $nlist ${nlist}S ${nlist}T"
- $run $rm "$output_objdir/$dlsyms" "$nlist" "${nlist}S" "${nlist}T"
-
- # Transform the symbol file into the correct name.
- compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"`
- finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"`
- ;;
- *)
- $echo "$modename: unknown suffix for \`$dlsyms'" 1>&2
- exit 1
- ;;
- esac
- else
- # We keep going just in case the user didn't refer to
- # lt_preloaded_symbols. The linker will fail if global_symbol_pipe
- # really was required.
-
- # Nullify the symbol file.
- compile_command=`$echo "X$compile_command" | $Xsed -e "s% @SYMFILE@%%"`
- finalize_command=`$echo "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"`
- fi
-
- if test $need_relink = no || test "$build_libtool_libs" != yes; then
- # Replace the output file specification.
- compile_command=`$echo "X$compile_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'`
- link_command="$compile_command$compile_rpath"
-
- # We have no uninstalled library dependencies, so finalize right now.
- $show "$link_command"
- $run eval "$link_command"
- status=$?
-
- # Delete the generated files.
- if test -n "$dlsyms"; then
- $show "$rm $output_objdir/${outputname}S.${objext}"
- $run $rm "$output_objdir/${outputname}S.${objext}"
- fi
-
- exit $status
- fi
-
- if test -n "$shlibpath_var"; then
- # We should set the shlibpath_var
- rpath=
- for dir in $temp_rpath; do
- case $dir in
- [\\/]* | [A-Za-z]:[\\/]*)
- # Absolute path.
- rpath="$rpath$dir:"
- ;;
- *)
- # Relative path: add a thisdir entry.
- rpath="$rpath\$thisdir/$dir:"
- ;;
- esac
- done
- temp_rpath="$rpath"
- fi
-
- if test -n "$compile_shlibpath$finalize_shlibpath"; then
- compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command"
- fi
- if test -n "$finalize_shlibpath"; then
- finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_var\" $finalize_command"
- fi
-
- compile_var=
- finalize_var=
- if test -n "$runpath_var"; then
- if test -n "$perm_rpath"; then
- # We should set the runpath_var.
- rpath=
- for dir in $perm_rpath; do
- rpath="$rpath$dir:"
- done
- compile_var="$runpath_var=\"$rpath\$$runpath_var\" "
- fi
- if test -n "$finalize_perm_rpath"; then
- # We should set the runpath_var.
- rpath=
- for dir in $finalize_perm_rpath; do
- rpath="$rpath$dir:"
- done
- finalize_var="$runpath_var=\"$rpath\$$runpath_var\" "
- fi
- fi
-
- if test "$no_install" = yes; then
- # We don't need to create a wrapper script.
- link_command="$compile_var$compile_command$compile_rpath"
- # Replace the output file specification.
- link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'`
- # Delete the old output file.
- $run $rm $output
- # Link the executable and exit
- $show "$link_command"
- $run eval "$link_command" || exit $?
- exit 0
- fi
-
- if test "$hardcode_action" = relink; then
- # Fast installation is not supported
- link_command="$compile_var$compile_command$compile_rpath"
- relink_command="$finalize_var$finalize_command$finalize_rpath"
-
- $echo "$modename: warning: this platform does not like uninstalled shared libraries" 1>&2
- $echo "$modename: \`$output' will be relinked during installation" 1>&2
- else
- if test "$fast_install" != no; then
- link_command="$finalize_var$compile_command$finalize_rpath"
- if test "$fast_install" = yes; then
- relink_command=`$echo "X$compile_var$compile_command$compile_rpath" | $Xsed -e 's%@OUTPUT@%\$progdir/\$file%g'`
- else
- # fast_install is set to needless
- relink_command=
- fi
- else
- link_command="$compile_var$compile_command$compile_rpath"
- relink_command="$finalize_var$finalize_command$finalize_rpath"
- fi
- fi
-
- # Replace the output file specification.
- link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'`
-
- # Delete the old output files.
- $run $rm $output $output_objdir/$outputname $output_objdir/lt-$outputname
-
- $show "$link_command"
- $run eval "$link_command" || exit $?
-
- # Now create the wrapper script.
- $show "creating $output"
-
- # Quote the relink command for shipping.
- if test -n "$relink_command"; then
- # Preserve any variables that may affect compiler behavior
- for var in $variables_saved_for_relink; do
- if eval test -z \"\${$var+set}\"; then
- relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command"
- elif eval var_value=\$$var; test -z "$var_value"; then
- relink_command="$var=; export $var; $relink_command"
- else
- var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"`
- relink_command="$var=\"$var_value\"; export $var; $relink_command"
- fi
- done
- relink_command="(cd `pwd`; $relink_command)"
- relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
- fi
-
- # Quote $echo for shipping.
- if test "X$echo" = "X$SHELL $0 --fallback-echo"; then
- case $0 in
- [\\/]* | [A-Za-z]:[\\/]*) qecho="$SHELL $0 --fallback-echo";;
- *) qecho="$SHELL `pwd`/$0 --fallback-echo";;
- esac
- qecho=`$echo "X$qecho" | $Xsed -e "$sed_quote_subst"`
- else
- qecho=`$echo "X$echo" | $Xsed -e "$sed_quote_subst"`
- fi
-
- # Only actually do things if our run command is non-null.
- if test -z "$run"; then
- # win32 will think the script is a binary if it has
- # a .exe suffix, so we strip it off here.
- case $output in
- *.exe) output=`echo $output|${SED} 's,.exe$,,'` ;;
- esac
- # test for cygwin because mv fails w/o .exe extensions
- case $host in
- *cygwin*) exeext=.exe ;;
- *) exeext= ;;
- esac
- $rm $output
- trap "$rm $output; exit 1" 1 2 15
-
- $echo > $output "\
-#! $SHELL
-
-# $output - temporary wrapper script for $objdir/$outputname
-# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP
-#
-# The $output program cannot be directly executed until all the libtool
-# libraries that it depends on are installed.
-#
-# This wrapper script should never be moved out of the build directory.
-# If it is, it will not operate correctly.
-
-# Sed substitution that helps us do robust quoting. It backslashifies
-# metacharacters that are still active within double-quoted strings.
-Xsed="${SED}"' -e 1s/^X//'
-sed_quote_subst='$sed_quote_subst'
-
-# The HP-UX ksh and POSIX shell print the target directory to stdout
-# if CDPATH is set.
-if test \"\${CDPATH+set}\" = set; then CDPATH=:; export CDPATH; fi
-
-relink_command=\"$relink_command\"
-
-# This environment variable determines our operation mode.
-if test \"\$libtool_install_magic\" = \"$magic\"; then
- # install mode needs the following variable:
- notinst_deplibs='$notinst_deplibs'
-else
- # When we are sourced in execute mode, \$file and \$echo are already set.
- if test \"\$libtool_execute_magic\" != \"$magic\"; then
- echo=\"$qecho\"
- file=\"\$0\"
- # Make sure echo works.
- if test \"X\$1\" = X--no-reexec; then
- # Discard the --no-reexec flag, and continue.
- shift
- elif test \"X\`(\$echo '\t') 2>/dev/null\`\" = 'X\t'; then
- # Yippee, \$echo works!
- :
- else
- # Restart under the correct shell, and then maybe \$echo will work.
- exec $SHELL \"\$0\" --no-reexec \${1+\"\$@\"}
- fi
- fi\
-"
- $echo >> $output "\
-
- # Find the directory that this script lives in.
- thisdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*$%%'\`
- test \"x\$thisdir\" = \"x\$file\" && thisdir=.
-
- # Follow symbolic links until we get to the real thisdir.
- file=\`ls -ld \"\$file\" | ${SED} -n 's/.*-> //p'\`
- while test -n \"\$file\"; do
- destdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*\$%%'\`
-
- # If there was a directory component, then change thisdir.
- if test \"x\$destdir\" != \"x\$file\"; then
- case \"\$destdir\" in
- [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;;
- *) thisdir=\"\$thisdir/\$destdir\" ;;
- esac
- fi
-
- file=\`\$echo \"X\$file\" | \$Xsed -e 's%^.*/%%'\`
- file=\`ls -ld \"\$thisdir/\$file\" | ${SED} -n 's/.*-> //p'\`
- done
-
- # Try to get the absolute directory name.
- absdir=\`cd \"\$thisdir\" && pwd\`
- test -n \"\$absdir\" && thisdir=\"\$absdir\"
-"
-
- if test "$fast_install" = yes; then
- echo >> $output "\
- program=lt-'$outputname'$exeext
- progdir=\"\$thisdir/$objdir\"
-
- if test ! -f \"\$progdir/\$program\" || \\
- { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | ${SED} 1q\`; \\
- test \"X\$file\" != \"X\$progdir/\$program\"; }; then
-
- file=\"\$\$-\$program\"
-
- if test ! -d \"\$progdir\"; then
- $mkdir \"\$progdir\"
- else
- $rm \"\$progdir/\$file\"
- fi"
-
- echo >> $output "\
-
- # relink executable if necessary
- if test -n \"\$relink_command\"; then
- if relink_command_output=\`eval \$relink_command 2>&1\`; then :
- else
- $echo \"\$relink_command_output\" >&2
- $rm \"\$progdir/\$file\"
- exit 1
- fi
- fi
-
- $mv \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null ||
- { $rm \"\$progdir/\$program\";
- $mv \"\$progdir/\$file\" \"\$progdir/\$program\"; }
- $rm \"\$progdir/\$file\"
- fi"
- else
- echo >> $output "\
- program='$outputname'
- progdir=\"\$thisdir/$objdir\"
-"
- fi
-
- echo >> $output "\
-
- if test -f \"\$progdir/\$program\"; then"
-
- # Export our shlibpath_var if we have one.
- if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
- $echo >> $output "\
- # Add our own library path to $shlibpath_var
- $shlibpath_var=\"$temp_rpath\$$shlibpath_var\"
-
- # Some systems cannot cope with colon-terminated $shlibpath_var
- # The second colon is a workaround for a bug in BeOS R4 ${SED}
- $shlibpath_var=\`\$echo \"X\$$shlibpath_var\" | \$Xsed -e 's/::*\$//'\`
-
- export $shlibpath_var
-"
- fi
-
- # fixup the dll searchpath if we need to.
- if test -n "$dllsearchpath"; then
- $echo >> $output "\
- # Add the dll search path components to the executable PATH
- PATH=$dllsearchpath:\$PATH
-"
- fi
-
- $echo >> $output "\
- if test \"\$libtool_execute_magic\" != \"$magic\"; then
- # Run the actual program with our arguments.
-"
- case $host in
- # win32 systems need to use the prog path for dll
- # lookup to work
- *-*-cygwin* | *-*-pw32*)
- $echo >> $output "\
- exec \$progdir/\$program \${1+\"\$@\"}
-"
- ;;
-
- # Backslashes separate directories on plain windows
- *-*-mingw | *-*-os2*)
- $echo >> $output "\
- exec \$progdir\\\\\$program \${1+\"\$@\"}
-"
- ;;
-
- *)
- $echo >> $output "\
- # Export the path to the program.
- PATH=\"\$progdir:\$PATH\"
- export PATH
-
- exec \$program \${1+\"\$@\"}
-"
- ;;
- esac
- $echo >> $output "\
- \$echo \"\$0: cannot exec \$program \${1+\"\$@\"}\"
- exit 1
- fi
- else
- # The program doesn't exist.
- \$echo \"\$0: error: \$progdir/\$program does not exist\" 1>&2
- \$echo \"This script is just a wrapper for \$program.\" 1>&2
- echo \"See the $PACKAGE documentation for more information.\" 1>&2
- exit 1
- fi
-fi\
-"
- chmod +x $output
- fi
- exit 0
- ;;
- esac
-
- # See if we need to build an old-fashioned archive.
- for oldlib in $oldlibs; do
-
- if test "$build_libtool_libs" = convenience; then
- oldobjs="$libobjs_save"
- addlibs="$convenience"
- build_libtool_libs=no
- else
- if test "$build_libtool_libs" = module; then
- oldobjs="$libobjs_save"
- build_libtool_libs=no
- else
- oldobjs="$objs$old_deplibs "`$echo "X$libobjs_save" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`
- fi
- addlibs="$old_convenience"
- fi
-
- if test -n "$addlibs"; then
- gentop="$output_objdir/${outputname}x"
- $show "${rm}r $gentop"
- $run ${rm}r "$gentop"
- $show "mkdir $gentop"
- $run mkdir "$gentop"
- status=$?
- if test $status -ne 0 && test ! -d "$gentop"; then
- exit $status
- fi
- generated="$generated $gentop"
-
- # Add in members from convenience archives.
- for xlib in $addlibs; do
- # Extract the objects.
- case $xlib in
- [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;;
- *) xabs=`pwd`"/$xlib" ;;
- esac
- xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'`
- xdir="$gentop/$xlib"
-
- $show "${rm}r $xdir"
- $run ${rm}r "$xdir"
- $show "mkdir $xdir"
- $run mkdir "$xdir"
- status=$?
- if test $status -ne 0 && test ! -d "$xdir"; then
- exit $status
- fi
- $show "(cd $xdir && $AR x $xabs)"
- $run eval "(cd \$xdir && $AR x \$xabs)" || exit $?
-
- oldobjs="$oldobjs "`find $xdir -name \*.${objext} -print -o -name \*.lo -print | $NL2SP`
- done
- fi
-
- # Do each command in the archive commands.
- if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then
- eval cmds=\"$old_archive_from_new_cmds\"
- else
- # Ensure that we have .o objects in place in case we decided
- # not to build a shared library, and have fallen back to building
- # static libs even though --disable-static was passed!
- for oldobj in $oldobjs; do
- if test ! -f $oldobj; then
- xdir=`$echo "X$oldobj" | $Xsed -e 's%/[^/]*$%%'`
- if test "X$xdir" = "X$oldobj"; then
- xdir="."
- else
- xdir="$xdir"
- fi
- baseobj=`$echo "X$oldobj" | $Xsed -e 's%^.*/%%'`
- obj=`$echo "X$baseobj" | $Xsed -e "$o2lo"`
- $show "(cd $xdir && ${LN_S} $obj $baseobj)"
- $run eval '(cd $xdir && ${LN_S} $obj $baseobj)' || exit $?
- fi
- done
-
- eval cmds=\"$old_archive_cmds\"
- fi
- save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- $show "$cmd"
- $run eval "$cmd" || exit $?
- done
- IFS="$save_ifs"
- done
-
- if test -n "$generated"; then
- $show "${rm}r$generated"
- $run ${rm}r$generated
- fi
-
- # Now create the libtool archive.
- case $output in
- *.la)
- old_library=
- test "$build_old_libs" = yes && old_library="$libname.$libext"
- $show "creating $output"
-
- # Preserve any variables that may affect compiler behavior
- for var in $variables_saved_for_relink; do
- if eval test -z \"\${$var+set}\"; then
- relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command"
- elif eval var_value=\$$var; test -z "$var_value"; then
- relink_command="$var=; export $var; $relink_command"
- else
- var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"`
- relink_command="$var=\"$var_value\"; export $var; $relink_command"
- fi
- done
- # Quote the link command for shipping.
- relink_command="(cd `pwd`; $SHELL $0 --mode=relink $libtool_args)"
- relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
-
- # Only create the output if not a dry run.
- if test -z "$run"; then
- for installed in no yes; do
- if test "$installed" = yes; then
- if test -z "$install_libdir"; then
- break
- fi
- output="$output_objdir/$outputname"i
- # Replace all uninstalled libtool libraries with the installed ones
- newdependency_libs=
- for deplib in $dependency_libs; do
- case $deplib in
- *.la)
- name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'`
- eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
- if test -z "$libdir"; then
- $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
- exit 1
- fi
- newdependency_libs="$newdependency_libs $libdir/$name"
- ;;
- *) newdependency_libs="$newdependency_libs $deplib" ;;
- esac
- done
- dependency_libs="$newdependency_libs"
- newdlfiles=
- for lib in $dlfiles; do
- name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
- eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
- if test -z "$libdir"; then
- $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
- exit 1
- fi
- newdlfiles="$newdlfiles $libdir/$name"
- done
- dlfiles="$newdlfiles"
- newdlprefiles=
- for lib in $dlprefiles; do
- name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
- eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
- if test -z "$libdir"; then
- $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
- exit 1
- fi
- newdlprefiles="$newdlprefiles $libdir/$name"
- done
- dlprefiles="$newdlprefiles"
- fi
- $rm $output
- # place dlname in correct position for cygwin
- tdlname=$dlname
- case $host,$output,$installed,$module,$dlname in
- *cygwin*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;;
- esac
- $echo > $output "\
-# $outputname - a libtool library file
-# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP
-#
-# Please DO NOT delete this file!
-# It is necessary for linking the library.
-
-# The name that we can dlopen(3).
-dlname='$tdlname'
-
-# Names of this library.
-library_names='$library_names'
-
-# The name of the static archive.
-old_library='$old_library'
-
-# Libraries that this one depends upon.
-dependency_libs='$dependency_libs'
-
-# Version information for $libname.
-current=$current
-age=$age
-revision=$revision
-
-# Is this an already installed library?
-installed=$installed
-
-# Files to dlopen/dlpreopen
-dlopen='$dlfiles'
-dlpreopen='$dlprefiles'
-
-# Directory that this library needs to be installed in:
-libdir='$install_libdir'"
- if test "$installed" = no && test $need_relink = yes; then
- $echo >> $output "\
-relink_command=\"$relink_command\""
- fi
- done
- fi
-
- # Do a symbolic link so that the libtool archive can be found in
- # LD_LIBRARY_PATH before the program is installed.
- $show "(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)"
- $run eval '(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)' || exit $?
- ;;
- esac
- exit 0
- ;;
-
- # libtool install mode
- install)
- modename="$modename: install"
-
- # There may be an optional sh(1) argument at the beginning of
- # install_prog (especially on Windows NT).
- if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh ||
- # Allow the use of GNU shtool's install command.
- $echo "X$nonopt" | $Xsed | grep shtool > /dev/null; then
- # Aesthetically quote it.
- arg=`$echo "X$nonopt" | $Xsed -e "$sed_quote_subst"`
- case $arg in
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
- arg="\"$arg\""
- ;;
- esac
- install_prog="$arg "
- arg="$1"
- shift
- else
- install_prog=
- arg="$nonopt"
- fi
-
- # The real first argument should be the name of the installation program.
- # Aesthetically quote it.
- arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
- case $arg in
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
- arg="\"$arg\""
- ;;
- esac
- install_prog="$install_prog$arg"
-
- # We need to accept at least all the BSD install flags.
- dest=
- files=
- opts=
- prev=
- install_type=
- isdir=no
- stripme=
- for arg
- do
- if test -n "$dest"; then
- files="$files $dest"
- dest="$arg"
- continue
- fi
-
- case $arg in
- -d) isdir=yes ;;
- -f) prev="-f" ;;
- -g) prev="-g" ;;
- -m) prev="-m" ;;
- -o) prev="-o" ;;
- -s)
- stripme=" -s"
- continue
- ;;
- -*) ;;
-
- *)
- # If the previous option needed an argument, then skip it.
- if test -n "$prev"; then
- prev=
- else
- dest="$arg"
- continue
- fi
- ;;
- esac
-
- # Aesthetically quote the argument.
- arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
- case $arg in
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
- arg="\"$arg\""
- ;;
- esac
- install_prog="$install_prog $arg"
- done
-
- if test -z "$install_prog"; then
- $echo "$modename: you must specify an install program" 1>&2
- $echo "$help" 1>&2
- exit 1
- fi
-
- if test -n "$prev"; then
- $echo "$modename: the \`$prev' option requires an argument" 1>&2
- $echo "$help" 1>&2
- exit 1
- fi
-
- if test -z "$files"; then
- if test -z "$dest"; then
- $echo "$modename: no file or destination specified" 1>&2
- else
- $echo "$modename: you must specify a destination" 1>&2
- fi
- $echo "$help" 1>&2
- exit 1
- fi
-
- # Strip any trailing slash from the destination.
- dest=`$echo "X$dest" | $Xsed -e 's%/$%%'`
-
- # Check to see that the destination is a directory.
- test -d "$dest" && isdir=yes
- if test "$isdir" = yes; then
- destdir="$dest"
- destname=
- else
- destdir=`$echo "X$dest" | $Xsed -e 's%/[^/]*$%%'`
- test "X$destdir" = "X$dest" && destdir=.
- destname=`$echo "X$dest" | $Xsed -e 's%^.*/%%'`
-
- # Not a directory, so check to see that there is only one file specified.
- set dummy $files
- if test $# -gt 2; then
- $echo "$modename: \`$dest' is not a directory" 1>&2
- $echo "$help" 1>&2
- exit 1
- fi
- fi
- case $destdir in
- [\\/]* | [A-Za-z]:[\\/]*) ;;
- *)
- for file in $files; do
- case $file in
- *.lo) ;;
- *)
- $echo "$modename: \`$destdir' must be an absolute directory name" 1>&2
- $echo "$help" 1>&2
- exit 1
- ;;
- esac
- done
- ;;
- esac
-
- # This variable tells wrapper scripts just to set variables rather
- # than running their programs.
- libtool_install_magic="$magic"
-
- staticlibs=
- future_libdirs=
- current_libdirs=
- for file in $files; do
-
- # Do each installation.
- case $file in
- *.$libext)
- # Do the static libraries later.
- staticlibs="$staticlibs $file"
- ;;
-
- *.la)
- # Check to see that this really is a libtool archive.
- if (${SED} -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
- else
- $echo "$modename: \`$file' is not a valid libtool archive" 1>&2
- $echo "$help" 1>&2
- exit 1
- fi
-
- library_names=
- old_library=
- relink_command=
- # If there is no directory component, then add one.
- case $file in
- */* | *\\*) . $file ;;
- *) . ./$file ;;
- esac
-
- # Add the libdir to current_libdirs if it is the destination.
- if test "X$destdir" = "X$libdir"; then
- case "$current_libdirs " in
- *" $libdir "*) ;;
- *) current_libdirs="$current_libdirs $libdir" ;;
- esac
- else
- # Note the libdir as a future libdir.
- case "$future_libdirs " in
- *" $libdir "*) ;;
- *) future_libdirs="$future_libdirs $libdir" ;;
- esac
- fi
-
- dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`/
- test "X$dir" = "X$file/" && dir=
- dir="$dir$objdir"
-
- if test -n "$relink_command"; then
- $echo "$modename: warning: relinking \`$file'" 1>&2
- $show "$relink_command"
- if $run eval "$relink_command"; then :
- else
- $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2
- continue
- fi
- fi
-
- # See the names of the shared library.
- set dummy $library_names
- if test -n "$2"; then
- realname="$2"
- shift
- shift
-
- srcname="$realname"
- test -n "$relink_command" && srcname="$realname"T
-
- # Install the shared library and build the symlinks.
- $show "$install_prog $dir/$srcname $destdir/$realname"
- $run eval "$install_prog $dir/$srcname $destdir/$realname" || exit $?
- if test -n "$stripme" && test -n "$striplib"; then
- $show "$striplib $destdir/$realname"
- $run eval "$striplib $destdir/$realname" || exit $?
- fi
-
- if test $# -gt 0; then
- # Delete the old symlinks, and create new ones.
- for linkname
- do
- if test "$linkname" != "$realname"; then
- $show "(cd $destdir && $rm $linkname && $LN_S $realname $linkname)"
- $run eval "(cd $destdir && $rm $linkname && $LN_S $realname $linkname)"
- fi
- done
- fi
-
- # Do each command in the postinstall commands.
- lib="$destdir/$realname"
- eval cmds=\"$postinstall_cmds\"
- save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- $show "$cmd"
- $run eval "$cmd" || exit $?
- done
- IFS="$save_ifs"
- fi
-
- # Install the pseudo-library for information purposes.
- name=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
- instname="$dir/$name"i
- $show "$install_prog $instname $destdir/$name"
- $run eval "$install_prog $instname $destdir/$name" || exit $?
-
- # Maybe install the static library, too.
- test -n "$old_library" && staticlibs="$staticlibs $dir/$old_library"
- ;;
-
- *.lo)
- # Install (i.e. copy) a libtool object.
-
- # Figure out destination file name, if it wasn't already specified.
- if test -n "$destname"; then
- destfile="$destdir/$destname"
- else
- destfile=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
- destfile="$destdir/$destfile"
- fi
-
- # Deduce the name of the destination old-style object file.
- case $destfile in
- *.lo)
- staticdest=`$echo "X$destfile" | $Xsed -e "$lo2o"`
- ;;
- *.$objext)
- staticdest="$destfile"
- destfile=
- ;;
- *)
- $echo "$modename: cannot copy a libtool object to \`$destfile'" 1>&2
- $echo "$help" 1>&2
- exit 1
- ;;
- esac
-
- # Install the libtool object if requested.
- if test -n "$destfile"; then
- $show "$install_prog $file $destfile"
- $run eval "$install_prog $file $destfile" || exit $?
- fi
-
- # Install the old object if enabled.
- if test "$build_old_libs" = yes; then
- # Deduce the name of the old-style object file.
- staticobj=`$echo "X$file" | $Xsed -e "$lo2o"`
-
- $show "$install_prog $staticobj $staticdest"
- $run eval "$install_prog \$staticobj \$staticdest" || exit $?
- fi
- exit 0
- ;;
-
- *)
- # Figure out destination file name, if it wasn't already specified.
- if test -n "$destname"; then
- destfile="$destdir/$destname"
- else
- destfile=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
- destfile="$destdir/$destfile"
- fi
-
- # Do a test to see if this is really a libtool program.
- case $host in
- *cygwin*|*mingw*)
- wrapper=`echo $file | ${SED} -e 's,.exe$,,'`
- ;;
- *)
- wrapper=$file
- ;;
- esac
- if (${SED} -e '4q' $wrapper | egrep "^# Generated by .*$PACKAGE")>/dev/null 2>&1; then
- notinst_deplibs=
- relink_command=
-
- # If there is no directory component, then add one.
- case $file in
- */* | *\\*) . $wrapper ;;
- *) . ./$wrapper ;;
- esac
-
- # Check the variables that should have been set.
- if test -z "$notinst_deplibs"; then
- $echo "$modename: invalid libtool wrapper script \`$wrapper'" 1>&2
- exit 1
- fi
-
- finalize=yes
- for lib in $notinst_deplibs; do
- # Check to see that each library is installed.
- libdir=
- if test -f "$lib"; then
- # If there is no directory component, then add one.
- case $lib in
- */* | *\\*) . $lib ;;
- *) . ./$lib ;;
- esac
- fi
- libfile="$libdir/"`$echo "X$lib" | $Xsed -e 's%^.*/%%g'` ### testsuite: skip nested quoting test
- if test -n "$libdir" && test ! -f "$libfile"; then
- $echo "$modename: warning: \`$lib' has not been installed in \`$libdir'" 1>&2
- finalize=no
- fi
- done
-
- relink_command=
- # If there is no directory component, then add one.
- case $file in
- */* | *\\*) . $wrapper ;;
- *) . ./$wrapper ;;
- esac
-
- outputname=
- if test "$fast_install" = no && test -n "$relink_command"; then
- if test "$finalize" = yes && test -z "$run"; then
- tmpdir="/tmp"
- test -n "$TMPDIR" && tmpdir="$TMPDIR"
- tmpdir="$tmpdir/libtool-$$"
- if $mkdir -p "$tmpdir" && chmod 700 "$tmpdir"; then :
- else
- $echo "$modename: error: cannot create temporary directory \`$tmpdir'" 1>&2
- continue
- fi
- file=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
- outputname="$tmpdir/$file"
- # Replace the output file specification.
- relink_command=`$echo "X$relink_command" | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g'`
-
- $show "$relink_command"
- if $run eval "$relink_command"; then :
- else
- $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2
- ${rm}r "$tmpdir"
- continue
- fi
- file="$outputname"
- else
- $echo "$modename: warning: cannot relink \`$file'" 1>&2
- fi
- else
- # Install the binary that we compiled earlier.
- file=`$echo "X$file" | $Xsed -e "s%\([^/]*\)$%$objdir/\1%"`
- fi
- fi
-
- # remove .exe since cygwin /usr/bin/install will append another
- # one anyways
- case $install_prog,$host in
- /usr/bin/install*,*cygwin*)
- case $file:$destfile in
- *.exe:*.exe)
- # this is ok
- ;;
- *.exe:*)
- destfile=$destfile.exe
- ;;
- *:*.exe)
- destfile=`echo $destfile | ${SED} -e 's,.exe$,,'`
- ;;
- esac
- ;;
- esac
- $show "$install_prog$stripme $file $destfile"
- $run eval "$install_prog\$stripme \$file \$destfile" || exit $?
- test -n "$outputname" && ${rm}r "$tmpdir"
- ;;
- esac
- done
-
- for file in $staticlibs; do
- name=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
-
- # Set up the ranlib parameters.
- oldlib="$destdir/$name"
-
- $show "$install_prog $file $oldlib"
- $run eval "$install_prog \$file \$oldlib" || exit $?
-
- if test -n "$stripme" && test -n "$striplib"; then
- $show "$old_striplib $oldlib"
- $run eval "$old_striplib $oldlib" || exit $?
- fi
-
- # Do each command in the postinstall commands.
- eval cmds=\"$old_postinstall_cmds\"
- save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- $show "$cmd"
- $run eval "$cmd" || exit $?
- done
- IFS="$save_ifs"
- done
-
- if test -n "$future_libdirs"; then
- $echo "$modename: warning: remember to run \`$progname --finish$future_libdirs'" 1>&2
- fi
-
- if test -n "$current_libdirs"; then
- # Maybe just do a dry run.
- test -n "$run" && current_libdirs=" -n$current_libdirs"
- exec_cmd='$SHELL $0 --finish$current_libdirs'
- else
- exit 0
- fi
- ;;
-
- # libtool finish mode
- finish)
- modename="$modename: finish"
- libdirs="$nonopt"
- admincmds=
-
- if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then
- for dir
- do
- libdirs="$libdirs $dir"
- done
-
- for libdir in $libdirs; do
- if test -n "$finish_cmds"; then
- # Do each command in the finish commands.
- eval cmds=\"$finish_cmds\"
- save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- $show "$cmd"
- $run eval "$cmd" || admincmds="$admincmds
- $cmd"
- done
- IFS="$save_ifs"
- fi
- if test -n "$finish_eval"; then
- # Do the single finish_eval.
- eval cmds=\"$finish_eval\"
- $run eval "$cmds" || admincmds="$admincmds
- $cmds"
- fi
- done
- fi
-
- # Exit here if they wanted silent mode.
- test "$show" = ":" && exit 0
-
- echo "----------------------------------------------------------------------"
- echo "Libraries have been installed in:"
- for libdir in $libdirs; do
- echo " $libdir"
- done
- echo
- echo "If you ever happen to want to link against installed libraries"
- echo "in a given directory, LIBDIR, you must either use libtool, and"
- echo "specify the full pathname of the library, or use the \`-LLIBDIR'"
- echo "flag during linking and do at least one of the following:"
- if test -n "$shlibpath_var"; then
- echo " - add LIBDIR to the \`$shlibpath_var' environment variable"
- echo " during execution"
- fi
- if test -n "$runpath_var"; then
- echo " - add LIBDIR to the \`$runpath_var' environment variable"
- echo " during linking"
- fi
- if test -n "$hardcode_libdir_flag_spec"; then
- libdir=LIBDIR
- eval flag=\"$hardcode_libdir_flag_spec\"
-
- echo " - use the \`$flag' linker flag"
- fi
- if test -n "$admincmds"; then
- echo " - have your system administrator run these commands:$admincmds"
- fi
- if test -f /etc/ld.so.conf; then
- echo " - have your system administrator add LIBDIR to \`/etc/ld.so.conf'"
- fi
- echo
- echo "See any operating system documentation about shared libraries for"
- echo "more information, such as the ld(1) and ld.so(8) manual pages."
- echo "----------------------------------------------------------------------"
- exit 0
- ;;
-
- # libtool execute mode
- execute)
- modename="$modename: execute"
-
- # The first argument is the command name.
- cmd="$nonopt"
- if test -z "$cmd"; then
- $echo "$modename: you must specify a COMMAND" 1>&2
- $echo "$help"
- exit 1
- fi
-
- # Handle -dlopen flags immediately.
- for file in $execute_dlfiles; do
- if test ! -f "$file"; then
- $echo "$modename: \`$file' is not a file" 1>&2
- $echo "$help" 1>&2
- exit 1
- fi
-
- dir=
- case $file in
- *.la)
- # Check to see that this really is a libtool archive.
- if (${SED} -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
- else
- $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
- $echo "$help" 1>&2
- exit 1
- fi
-
- # Read the libtool library.
- dlname=
- library_names=
-
- # If there is no directory component, then add one.
- case $file in
- */* | *\\*) . $file ;;
- *) . ./$file ;;
- esac
-
- # Skip this library if it cannot be dlopened.
- if test -z "$dlname"; then
- # Warn if it was a shared library.
- test -n "$library_names" && $echo "$modename: warning: \`$file' was not linked with \`-export-dynamic'"
- continue
- fi
-
- dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`
- test "X$dir" = "X$file" && dir=.
-
- if test -f "$dir/$objdir/$dlname"; then
- dir="$dir/$objdir"
- else
- $echo "$modename: cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" 1>&2
- exit 1
- fi
- ;;
-
- *.lo)
- # Just add the directory containing the .lo file.
- dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`
- test "X$dir" = "X$file" && dir=.
- ;;
-
- *)
- $echo "$modename: warning \`-dlopen' is ignored for non-libtool libraries and objects" 1>&2
- continue
- ;;
- esac
-
- # Get the absolute pathname.
- absdir=`cd "$dir" && pwd`
- test -n "$absdir" && dir="$absdir"
-
- # Now add the directory to shlibpath_var.
- if eval "test -z \"\$$shlibpath_var\""; then
- eval "$shlibpath_var=\"\$dir\""
- else
- eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\""
- fi
- done
-
- # This variable tells wrapper scripts just to set shlibpath_var
- # rather than running their programs.
- libtool_execute_magic="$magic"
-
- # Check if any of the arguments is a wrapper script.
- args=
- for file
- do
- case $file in
- -*) ;;
- *)
- # Do a test to see if this is really a libtool program.
- if (${SED} -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
- # If there is no directory component, then add one.
- case $file in
- */* | *\\*) . $file ;;
- *) . ./$file ;;
- esac
-
- # Transform arg to wrapped name.
- file="$progdir/$program"
- fi
- ;;
- esac
- # Quote arguments (to preserve shell metacharacters).
- file=`$echo "X$file" | $Xsed -e "$sed_quote_subst"`
- args="$args \"$file\""
- done
-
- if test -z "$run"; then
- if test -n "$shlibpath_var"; then
- # Export the shlibpath_var.
- eval "export $shlibpath_var"
- fi
-
- # Restore saved enviroment variables
- if test "${save_LC_ALL+set}" = set; then
- LC_ALL="$save_LC_ALL"; export LC_ALL
- fi
- if test "${save_LANG+set}" = set; then
- LANG="$save_LANG"; export LANG
- fi
-
- # Now prepare to actually exec the command.
- exec_cmd="\$cmd$args"
- else
- # Display what would be done.
- if test -n "$shlibpath_var"; then
- eval "\$echo \"\$shlibpath_var=\$$shlibpath_var\""
- $echo "export $shlibpath_var"
- fi
- $echo "$cmd$args"
- exit 0
- fi
- ;;
-
- # libtool clean and uninstall mode
- clean | uninstall)
- modename="$modename: $mode"
- rm="$nonopt"
- files=
- rmforce=
- exit_status=0
-
- # This variable tells wrapper scripts just to set variables rather
- # than running their programs.
- libtool_install_magic="$magic"
-
- for arg
- do
- case $arg in
- -f) rm="$rm $arg"; rmforce=yes ;;
- -*) rm="$rm $arg" ;;
- *) files="$files $arg" ;;
- esac
- done
-
- if test -z "$rm"; then
- $echo "$modename: you must specify an RM program" 1>&2
- $echo "$help" 1>&2
- exit 1
- fi
-
- rmdirs=
-
- for file in $files; do
- dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`
- if test "X$dir" = "X$file"; then
- dir=.
- objdir="$objdir"
- else
- objdir="$dir/$objdir"
- fi
- name=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
- test $mode = uninstall && objdir="$dir"
-
- # Remember objdir for removal later, being careful to avoid duplicates
- if test $mode = clean; then
- case " $rmdirs " in
- *" $objdir "*) ;;
- *) rmdirs="$rmdirs $objdir" ;;
- esac
- fi
-
- # Don't error if the file doesn't exist and rm -f was used.
- if (test -L "$file") >/dev/null 2>&1 \
- || (test -h "$file") >/dev/null 2>&1 \
- || test -f "$file"; then
- :
- elif test -d "$file"; then
- exit_status=1
- continue
- elif test "$rmforce" = yes; then
- continue
- fi
-
- rmfiles="$file"
-
- case $name in
- *.la)
- # Possibly a libtool archive, so verify it.
- if (${SED} -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
- . $dir/$name
-
- # Delete the libtool libraries and symlinks.
- for n in $library_names; do
- rmfiles="$rmfiles $objdir/$n"
- done
- test -n "$old_library" && rmfiles="$rmfiles $objdir/$old_library"
- test $mode = clean && rmfiles="$rmfiles $objdir/$name $objdir/${name}i"
-
- if test $mode = uninstall; then
- if test -n "$library_names"; then
- # Do each command in the postuninstall commands.
- eval cmds=\"$postuninstall_cmds\"
- save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- $show "$cmd"
- $run eval "$cmd"
- if test $? != 0 && test "$rmforce" != yes; then
- exit_status=1
- fi
- done
- IFS="$save_ifs"
- fi
-
- if test -n "$old_library"; then
- # Do each command in the old_postuninstall commands.
- eval cmds=\"$old_postuninstall_cmds\"
- save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- $show "$cmd"
- $run eval "$cmd"
- if test $? != 0 && test "$rmforce" != yes; then
- exit_status=1
- fi
- done
- IFS="$save_ifs"
- fi
- # FIXME: should reinstall the best remaining shared library.
- fi
- fi
- ;;
-
- *.lo)
- if test "$build_old_libs" = yes; then
- oldobj=`$echo "X$name" | $Xsed -e "$lo2o"`
- rmfiles="$rmfiles $dir/$oldobj"
- fi
- ;;
-
- *)
- # Do a test to see if this is a libtool program.
- if test $mode = clean &&
- (${SED} -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
- relink_command=
- . $dir/$file
-
- rmfiles="$rmfiles $objdir/$name $objdir/${name}S.${objext}"
- if test "$fast_install" = yes && test -n "$relink_command"; then
- rmfiles="$rmfiles $objdir/lt-$name"
- fi
- fi
- ;;
- esac
- $show "$rm $rmfiles"
- $run $rm $rmfiles || exit_status=1
- done
-
- # Try to remove the ${objdir}s in the directories where we deleted files
- for dir in $rmdirs; do
- if test -d "$dir"; then
- $show "rmdir $dir"
- $run rmdir $dir >/dev/null 2>&1
- fi
- done
-
- exit $exit_status
- ;;
-
- "")
- $echo "$modename: you must specify a MODE" 1>&2
- $echo "$generic_help" 1>&2
- exit 1
- ;;
- esac
-
- if test -z "$exec_cmd"; then
- $echo "$modename: invalid operation mode \`$mode'" 1>&2
- $echo "$generic_help" 1>&2
- exit 1
- fi
-fi # test -z "$show_help"
-
-if test -n "$exec_cmd"; then
- eval exec $exec_cmd
- exit 1
-fi
-
-# We need to display help for each of the modes.
-case $mode in
-"") $echo \
-"Usage: $modename [OPTION]... [MODE-ARG]...
-
-Provide generalized library-building support services.
-
- --config show all configuration variables
- --debug enable verbose shell tracing
--n, --dry-run display commands without modifying any files
- --features display basic configuration information and exit
- --finish same as \`--mode=finish'
- --help display this help message and exit
- --mode=MODE use operation mode MODE [default=inferred from MODE-ARGS]
- --quiet same as \`--silent'
- --silent don't print informational messages
- --version print version information
-
-MODE must be one of the following:
-
- clean remove files from the build directory
- compile compile a source file into a libtool object
- execute automatically set library path, then run a program
- finish complete the installation of libtool libraries
- install install libraries or executables
- link create a library or an executable
- uninstall remove libraries from an installed directory
-
-MODE-ARGS vary depending on the MODE. Try \`$modename --help --mode=MODE' for
-a more detailed description of MODE."
- exit 0
- ;;
-
-clean)
- $echo \
-"Usage: $modename [OPTION]... --mode=clean RM [RM-OPTION]... FILE...
-
-Remove files from the build directory.
-
-RM is the name of the program to use to delete files associated with each FILE
-(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed
-to RM.
-
-If FILE is a libtool library, object or program, all the files associated
-with it are deleted. Otherwise, only FILE itself is deleted using RM."
- ;;
-
-compile)
- $echo \
-"Usage: $modename [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE
-
-Compile a source file into a libtool library object.
-
-This mode accepts the following additional options:
-
- -o OUTPUT-FILE set the output file name to OUTPUT-FILE
- -prefer-pic try to building PIC objects only
- -prefer-non-pic try to building non-PIC objects only
- -static always build a \`.o' file suitable for static linking
-
-COMPILE-COMMAND is a command to be used in creating a \`standard' object file
-from the given SOURCEFILE.
-
-The output file name is determined by removing the directory component from
-SOURCEFILE, then substituting the C source code suffix \`.c' with the
-library object suffix, \`.lo'."
- ;;
-
-execute)
- $echo \
-"Usage: $modename [OPTION]... --mode=execute COMMAND [ARGS]...
-
-Automatically set library path, then run a program.
-
-This mode accepts the following additional options:
-
- -dlopen FILE add the directory containing FILE to the library path
-
-This mode sets the library path environment variable according to \`-dlopen'
-flags.
-
-If any of the ARGS are libtool executable wrappers, then they are translated
-into their corresponding uninstalled binary, and any of their required library
-directories are added to the library path.
-
-Then, COMMAND is executed, with ARGS as arguments."
- ;;
-
-finish)
- $echo \
-"Usage: $modename [OPTION]... --mode=finish [LIBDIR]...
-
-Complete the installation of libtool libraries.
-
-Each LIBDIR is a directory that contains libtool libraries.
-
-The commands that this mode executes may require superuser privileges. Use
-the \`--dry-run' option if you just want to see what would be executed."
- ;;
-
-install)
- $echo \
-"Usage: $modename [OPTION]... --mode=install INSTALL-COMMAND...
-
-Install executables or libraries.
-
-INSTALL-COMMAND is the installation command. The first component should be
-either the \`install' or \`cp' program.
-
-The rest of the components are interpreted as arguments to that command (only
-BSD-compatible install options are recognized)."
- ;;
-
-link)
- $echo \
-"Usage: $modename [OPTION]... --mode=link LINK-COMMAND...
-
-Link object files or libraries together to form another library, or to
-create an executable program.
-
-LINK-COMMAND is a command using the C compiler that you would use to create
-a program from several object files.
-
-The following components of LINK-COMMAND are treated specially:
-
- -all-static do not do any dynamic linking at all
- -avoid-version do not add a version suffix if possible
- -dlopen FILE \`-dlpreopen' FILE if it cannot be dlopened at runtime
- -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols
- -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3)
- -export-symbols SYMFILE
- try to export only the symbols listed in SYMFILE
- -export-symbols-regex REGEX
- try to export only the symbols matching REGEX
- -LLIBDIR search LIBDIR for required installed libraries
- -lNAME OUTPUT-FILE requires the installed library libNAME
- -module build a library that can dlopened
- -no-fast-install disable the fast-install mode
- -no-install link a not-installable executable
- -no-undefined declare that a library does not refer to external symbols
- -o OUTPUT-FILE create OUTPUT-FILE from the specified objects
- -release RELEASE specify package release information
- -rpath LIBDIR the created library will eventually be installed in LIBDIR
- -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries
- -static do not do any dynamic linking of libtool libraries
- -version-info CURRENT[:REVISION[:AGE]]
- specify library version info [each variable defaults to 0]
-
-All other options (arguments beginning with \`-') are ignored.
-
-Every other argument is treated as a filename. Files ending in \`.la' are
-treated as uninstalled libtool libraries, other files are standard or library
-object files.
-
-If the OUTPUT-FILE ends in \`.la', then a libtool library is created,
-only library objects (\`.lo' files) may be specified, and \`-rpath' is
-required, except when creating a convenience library.
-
-If OUTPUT-FILE ends in \`.a' or \`.lib', then a standard library is created
-using \`ar' and \`ranlib', or on Windows using \`lib'.
-
-If OUTPUT-FILE ends in \`.lo' or \`.${objext}', then a reloadable object file
-is created, otherwise an executable program is created."
- ;;
-
-uninstall)
- $echo \
-"Usage: $modename [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE...
-
-Remove libraries from an installation directory.
-
-RM is the name of the program to use to delete files associated with each FILE
-(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed
-to RM.
-
-If FILE is a libtool library, all the files associated with it are deleted.
-Otherwise, only FILE itself is deleted using RM."
- ;;
-
-*)
- $echo "$modename: invalid operation mode \`$mode'" 1>&2
- $echo "$help" 1>&2
- exit 1
- ;;
-esac
-
-echo
-$echo "Try \`$modename --help' for more information about other modes."
-
-exit 0
-
-# Local Variables:
-# mode:shell-script
-# sh-indentation:2
-# End:
diff --git a/lib-src/sbsms/config/missing b/lib-src/sbsms/config/missing
deleted file mode 100755
index fc54c64..0000000
--- a/lib-src/sbsms/config/missing
+++ /dev/null
@@ -1,336 +0,0 @@
-#! /bin/sh
-# Common stub for a few missing GNU programs while installing.
-# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003 Free Software Foundation, Inc.
-# Originally by Fran,cois Pinard <pinard at iro.umontreal.ca>, 1996.
-
-# 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, 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., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
-
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-if test $# -eq 0; then
- echo 1>&2 "Try \`$0 --help' for more information"
- exit 1
-fi
-
-run=:
-
-# In the cases where this matters, `missing' is being run in the
-# srcdir already.
-if test -f configure.ac; then
- configure_ac=configure.ac
-else
- configure_ac=configure.in
-fi
-
-case "$1" in
---run)
- # Try to run requested program, and just exit if it succeeds.
- run=
- shift
- "$@" && exit 0
- ;;
-esac
-
-# If it does not exist, or fails to run (possibly an outdated version),
-# try to emulate it.
-case "$1" in
-
- -h|--h|--he|--hel|--help)
- echo "\
-$0 [OPTION]... PROGRAM [ARGUMENT]...
-
-Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
-error status if there is no known handling for PROGRAM.
-
-Options:
- -h, --help display this help and exit
- -v, --version output version information and exit
- --run try to run the given command, and emulate it if it fails
-
-Supported PROGRAM values:
- aclocal touch file \`aclocal.m4'
- autoconf touch file \`configure'
- autoheader touch file \`config.h.in'
- automake touch all \`Makefile.in' files
- bison create \`y.tab.[ch]', if possible, from existing .[ch]
- flex create \`lex.yy.c', if possible, from existing .c
- help2man touch the output file
- lex create \`lex.yy.c', if possible, from existing .c
- makeinfo touch the output file
- tar try tar, gnutar, gtar, then tar without non-portable flags
- yacc create \`y.tab.[ch]', if possible, from existing .[ch]"
- ;;
-
- -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
- echo "missing 0.4 - GNU automake"
- ;;
-
- -*)
- echo 1>&2 "$0: Unknown \`$1' option"
- echo 1>&2 "Try \`$0 --help' for more information"
- exit 1
- ;;
-
- aclocal*)
- if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
- # We have it, but it failed.
- exit 1
- fi
-
- echo 1>&2 "\
-WARNING: \`$1' is missing on your system. You should only need it if
- you modified \`acinclude.m4' or \`${configure_ac}'. You might want
- to install the \`Automake' and \`Perl' packages. Grab them from
- any GNU archive site."
- touch aclocal.m4
- ;;
-
- autoconf)
- if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
- # We have it, but it failed.
- exit 1
- fi
-
- echo 1>&2 "\
-WARNING: \`$1' is missing on your system. You should only need it if
- you modified \`${configure_ac}'. You might want to install the
- \`Autoconf' and \`GNU m4' packages. Grab them from any GNU
- archive site."
- touch configure
- ;;
-
- autoheader)
- if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
- # We have it, but it failed.
- exit 1
- fi
-
- echo 1>&2 "\
-WARNING: \`$1' is missing on your system. You should only need it if
- you modified \`acconfig.h' or \`${configure_ac}'. You might want
- to install the \`Autoconf' and \`GNU m4' packages. Grab them
- from any GNU archive site."
- files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
- test -z "$files" && files="config.h"
- touch_files=
- for f in $files; do
- case "$f" in
- *:*) touch_files="$touch_files "`echo "$f" |
- sed -e 's/^[^:]*://' -e 's/:.*//'`;;
- *) touch_files="$touch_files $f.in";;
- esac
- done
- touch $touch_files
- ;;
-
- automake*)
- if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
- # We have it, but it failed.
- exit 1
- fi
-
- echo 1>&2 "\
-WARNING: \`$1' is missing on your system. You should only need it if
- you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
- You might want to install the \`Automake' and \`Perl' packages.
- Grab them from any GNU archive site."
- find . -type f -name Makefile.am -print |
- sed 's/\.am$/.in/' |
- while read f; do touch "$f"; done
- ;;
-
- autom4te)
- if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
- # We have it, but it failed.
- exit 1
- fi
-
- echo 1>&2 "\
-WARNING: \`$1' is needed, and you do not seem to have it handy on your
- system. You might have modified some files without having the
- proper tools for further handling them.
- You can get \`$1' as part of \`Autoconf' from any GNU
- archive site."
-
- file=`echo "$*" | sed -n 's/.*--output[ =]*\([^ ]*\).*/\1/p'`
- test -z "$file" && file=`echo "$*" | sed -n 's/.*-o[ ]*\([^ ]*\).*/\1/p'`
- if test -f "$file"; then
- touch $file
- else
- test -z "$file" || exec >$file
- echo "#! /bin/sh"
- echo "# Created by GNU Automake missing as a replacement of"
- echo "# $ $@"
- echo "exit 0"
- chmod +x $file
- exit 1
- fi
- ;;
-
- bison|yacc)
- echo 1>&2 "\
-WARNING: \`$1' is missing on your system. You should only need it if
- you modified a \`.y' file. You may need the \`Bison' package
- in order for those modifications to take effect. You can get
- \`Bison' from any GNU archive site."
- rm -f y.tab.c y.tab.h
- if [ $# -ne 1 ]; then
- eval LASTARG="\${$#}"
- case "$LASTARG" in
- *.y)
- SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
- if [ -f "$SRCFILE" ]; then
- cp "$SRCFILE" y.tab.c
- fi
- SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
- if [ -f "$SRCFILE" ]; then
- cp "$SRCFILE" y.tab.h
- fi
- ;;
- esac
- fi
- if [ ! -f y.tab.h ]; then
- echo >y.tab.h
- fi
- if [ ! -f y.tab.c ]; then
- echo 'main() { return 0; }' >y.tab.c
- fi
- ;;
-
- lex|flex)
- echo 1>&2 "\
-WARNING: \`$1' is missing on your system. You should only need it if
- you modified a \`.l' file. You may need the \`Flex' package
- in order for those modifications to take effect. You can get
- \`Flex' from any GNU archive site."
- rm -f lex.yy.c
- if [ $# -ne 1 ]; then
- eval LASTARG="\${$#}"
- case "$LASTARG" in
- *.l)
- SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
- if [ -f "$SRCFILE" ]; then
- cp "$SRCFILE" lex.yy.c
- fi
- ;;
- esac
- fi
- if [ ! -f lex.yy.c ]; then
- echo 'main() { return 0; }' >lex.yy.c
- fi
- ;;
-
- help2man)
- if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
- # We have it, but it failed.
- exit 1
- fi
-
- echo 1>&2 "\
-WARNING: \`$1' is missing on your system. You should only need it if
- you modified a dependency of a manual page. You may need the
- \`Help2man' package in order for those modifications to take
- effect. You can get \`Help2man' from any GNU archive site."
-
- file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
- if test -z "$file"; then
- file=`echo "$*" | sed -n 's/.*--output=\([^ ]*\).*/\1/p'`
- fi
- if [ -f "$file" ]; then
- touch $file
- else
- test -z "$file" || exec >$file
- echo ".ab help2man is required to generate this page"
- exit 1
- fi
- ;;
-
- makeinfo)
- if test -z "$run" && (makeinfo --version) > /dev/null 2>&1; then
- # We have makeinfo, but it failed.
- exit 1
- fi
-
- echo 1>&2 "\
-WARNING: \`$1' is missing on your system. You should only need it if
- you modified a \`.texi' or \`.texinfo' file, or any other file
- indirectly affecting the aspect of the manual. The spurious
- call might also be the consequence of using a buggy \`make' (AIX,
- DU, IRIX). You might want to install the \`Texinfo' package or
- the \`GNU make' package. Grab either from any GNU archive site."
- file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
- if test -z "$file"; then
- file=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
- file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $file`
- fi
- touch $file
- ;;
-
- tar)
- shift
- if test -n "$run"; then
- echo 1>&2 "ERROR: \`tar' requires --run"
- exit 1
- fi
-
- # We have already tried tar in the generic part.
- # Look for gnutar/gtar before invocation to avoid ugly error
- # messages.
- if (gnutar --version > /dev/null 2>&1); then
- gnutar "$@" && exit 0
- fi
- if (gtar --version > /dev/null 2>&1); then
- gtar "$@" && exit 0
- fi
- firstarg="$1"
- if shift; then
- case "$firstarg" in
- *o*)
- firstarg=`echo "$firstarg" | sed s/o//`
- tar "$firstarg" "$@" && exit 0
- ;;
- esac
- case "$firstarg" in
- *h*)
- firstarg=`echo "$firstarg" | sed s/h//`
- tar "$firstarg" "$@" && exit 0
- ;;
- esac
- fi
-
- echo 1>&2 "\
-WARNING: I can't seem to be able to run \`tar' with the given arguments.
- You may want to install GNU tar or Free paxutils, or check the
- command line arguments."
- exit 1
- ;;
-
- *)
- echo 1>&2 "\
-WARNING: \`$1' is needed, and you do not seem to have it handy on your
- system. You might have modified some files without having the
- proper tools for further handling them. Check the \`README' file,
- it often tells you about the needed prerequisites for installing
- this package. You may also peek at any GNU archive site, in case
- some other package would contain this missing \`$1' program."
- exit 1
- ;;
-esac
-
-exit 0
diff --git a/lib-src/sbsms/config/mkinstalldirs b/lib-src/sbsms/config/mkinstalldirs
deleted file mode 100755
index d2d5f21..0000000
--- a/lib-src/sbsms/config/mkinstalldirs
+++ /dev/null
@@ -1,111 +0,0 @@
-#! /bin/sh
-# mkinstalldirs --- make directory hierarchy
-# Author: Noah Friedman <friedman at prep.ai.mit.edu>
-# Created: 1993-05-16
-# Public domain
-
-errstatus=0
-dirmode=""
-
-usage="\
-Usage: mkinstalldirs [-h] [--help] [-m mode] dir ..."
-
-# process command line arguments
-while test $# -gt 0 ; do
- case $1 in
- -h | --help | --h*) # -h for help
- echo "$usage" 1>&2
- exit 0
- ;;
- -m) # -m PERM arg
- shift
- test $# -eq 0 && { echo "$usage" 1>&2; exit 1; }
- dirmode=$1
- shift
- ;;
- --) # stop option processing
- shift
- break
- ;;
- -*) # unknown option
- echo "$usage" 1>&2
- exit 1
- ;;
- *) # first non-opt arg
- break
- ;;
- esac
-done
-
-for file
-do
- if test -d "$file"; then
- shift
- else
- break
- fi
-done
-
-case $# in
- 0) exit 0 ;;
-esac
-
-case $dirmode in
- '')
- if mkdir -p -- . 2>/dev/null; then
- echo "mkdir -p -- $*"
- exec mkdir -p -- "$@"
- fi
- ;;
- *)
- if mkdir -m "$dirmode" -p -- . 2>/dev/null; then
- echo "mkdir -m $dirmode -p -- $*"
- exec mkdir -m "$dirmode" -p -- "$@"
- fi
- ;;
-esac
-
-for file
-do
- set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'`
- shift
-
- pathcomp=
- for d
- do
- pathcomp="$pathcomp$d"
- case $pathcomp in
- -*) pathcomp=./$pathcomp ;;
- esac
-
- if test ! -d "$pathcomp"; then
- echo "mkdir $pathcomp"
-
- mkdir "$pathcomp" || lasterr=$?
-
- if test ! -d "$pathcomp"; then
- errstatus=$lasterr
- else
- if test ! -z "$dirmode"; then
- echo "chmod $dirmode $pathcomp"
- lasterr=""
- chmod "$dirmode" "$pathcomp" || lasterr=$?
-
- if test ! -z "$lasterr"; then
- errstatus=$lasterr
- fi
- fi
- fi
- fi
-
- pathcomp="$pathcomp/"
- done
-done
-
-exit $errstatus
-
-# Local Variables:
-# mode: shell-script
-# sh-indentation: 2
-# End:
-# mkinstalldirs ends here
diff --git a/lib-src/sbsms/config/stamp-h1 b/lib-src/sbsms/config/stamp-h1
deleted file mode 100644
index 22326a7..0000000
--- a/lib-src/sbsms/config/stamp-h1
+++ /dev/null
@@ -1 +0,0 @@
-timestamp for config/config.h
diff --git a/lib-src/sbsms/configure b/lib-src/sbsms/configure
index b8ffc69..37c22c6 100755
--- a/lib-src/sbsms/configure
+++ b/lib-src/sbsms/configure
@@ -10539,6 +10539,11 @@ CC="$lt_save_CC"
+# save $CXXFLAGS etc. since AC_PROG_CXX likes to insert "-g -O2"
+# if $CXXFLAGS is blank and it finds GCC
+cflags_save="$CFLAGS"
+cppflags_save="$CPPFLAGS"
+cxxflags_save="$CXXFLAGS"
ac_ext=cpp
ac_cpp='$CXXCPP $CPPFLAGS'
ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -13340,11 +13345,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:13343: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:13348: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:13347: \$? = $ac_status" >&5
+ echo "$as_me:13352: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -13439,11 +13444,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:13442: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:13447: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:13446: \$? = $ac_status" >&5
+ echo "$as_me:13451: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -13491,11 +13496,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:13494: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:13499: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:13498: \$? = $ac_status" >&5
+ echo "$as_me:13503: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -14469,6 +14474,242 @@ ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ex
ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+ac_ext=cpp
+ac_cpp='$CXXCPP $CPPFLAGS'
+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+{ $as_echo "$as_me:$LINENO: checking how to run the C++ preprocessor" >&5
+$as_echo_n "checking how to run the C++ preprocessor... " >&6; }
+if test -z "$CXXCPP"; then
+ if test "${ac_cv_prog_CXXCPP+set}" = set; then
+ $as_echo_n "(cached) " >&6
+else
+ # Double quotes because CXXCPP needs to be expanded
+ for CXXCPP in "$CXX -E" "/lib/cpp"
+ do
+ ac_preproc_ok=false
+for ac_cxx_preproc_warn_flag in '' yes
+do
+ # Use a header file that comes with gcc, so configuring glibc
+ # with a fresh cross-compiler works.
+ # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ # <limits.h> exists even on freestanding compilers.
+ # On the NeXT, cc -E runs the code through the compiler's parser,
+ # not just through cpp. "Syntax error" is here to catch this case.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+ Syntax error
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null && {
+ test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" ||
+ test ! -s conftest.err
+ }; then
+ :
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ # Broken: fails on valid input.
+continue
+fi
+
+rm -f conftest.err conftest.$ac_ext
+
+ # OK, works on sane cases. Now check whether nonexistent headers
+ # can be detected and how.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <ac_nonexistent.h>
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null && {
+ test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" ||
+ test ! -s conftest.err
+ }; then
+ # Broken: success on invalid input.
+continue
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ # Passes both tests.
+ac_preproc_ok=:
+break
+fi
+
+rm -f conftest.err conftest.$ac_ext
+
+done
+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
+rm -f conftest.err conftest.$ac_ext
+if $ac_preproc_ok; then
+ break
+fi
+
+ done
+ ac_cv_prog_CXXCPP=$CXXCPP
+
+fi
+ CXXCPP=$ac_cv_prog_CXXCPP
+else
+ ac_cv_prog_CXXCPP=$CXXCPP
+fi
+{ $as_echo "$as_me:$LINENO: result: $CXXCPP" >&5
+$as_echo "$CXXCPP" >&6; }
+ac_preproc_ok=false
+for ac_cxx_preproc_warn_flag in '' yes
+do
+ # Use a header file that comes with gcc, so configuring glibc
+ # with a fresh cross-compiler works.
+ # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ # <limits.h> exists even on freestanding compilers.
+ # On the NeXT, cc -E runs the code through the compiler's parser,
+ # not just through cpp. "Syntax error" is here to catch this case.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+ Syntax error
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null && {
+ test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" ||
+ test ! -s conftest.err
+ }; then
+ :
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ # Broken: fails on valid input.
+continue
+fi
+
+rm -f conftest.err conftest.$ac_ext
+
+ # OK, works on sane cases. Now check whether nonexistent headers
+ # can be detected and how.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <ac_nonexistent.h>
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+$as_echo "$ac_try_echo") >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null && {
+ test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" ||
+ test ! -s conftest.err
+ }; then
+ # Broken: success on invalid input.
+continue
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ # Passes both tests.
+ac_preproc_ok=:
+break
+fi
+
+rm -f conftest.err conftest.$ac_ext
+
+done
+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
+rm -f conftest.err conftest.$ac_ext
+if $ac_preproc_ok; then
+ :
+else
+ { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+{ { $as_echo "$as_me:$LINENO: error: C++ preprocessor \"$CXXCPP\" fails sanity check
+See \`config.log' for more details." >&5
+$as_echo "$as_me: error: C++ preprocessor \"$CXXCPP\" fails sanity check
+See \`config.log' for more details." >&2;}
+ { (exit 1); exit 1; }; }; }
+fi
+
+ac_ext=cpp
+ac_cpp='$CXXCPP $CPPFLAGS'
+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+
+# restore those variables back
+CFLAGS="$cflags_save"
+CPPFLAGS="$cppflags_save"
+CXXFLAGS="$cxxflags_save"
@@ -15176,10 +15417,11 @@ pkg_failed=no
{ $as_echo "$as_me:$LINENO: checking for SNDFILE" >&5
$as_echo_n "checking for SNDFILE... " >&6; }
-if test -n "$SNDFILE_CFLAGS"; then
- pkg_cv_SNDFILE_CFLAGS="$SNDFILE_CFLAGS"
- elif test -n "$PKG_CONFIG"; then
- if test -n "$PKG_CONFIG" && \
+if test -n "$PKG_CONFIG"; then
+ if test -n "$SNDFILE_CFLAGS"; then
+ pkg_cv_SNDFILE_CFLAGS="$SNDFILE_CFLAGS"
+ else
+ if test -n "$PKG_CONFIG" && \
{ ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"sndfile >= 1.0.2\"") >&5
($PKG_CONFIG --exists --print-errors "sndfile >= 1.0.2") 2>&5
ac_status=$?
@@ -15189,13 +15431,15 @@ if test -n "$SNDFILE_CFLAGS"; then
else
pkg_failed=yes
fi
- else
- pkg_failed=untried
+ fi
+else
+ pkg_failed=untried
fi
-if test -n "$SNDFILE_LIBS"; then
- pkg_cv_SNDFILE_LIBS="$SNDFILE_LIBS"
- elif test -n "$PKG_CONFIG"; then
- if test -n "$PKG_CONFIG" && \
+if test -n "$PKG_CONFIG"; then
+ if test -n "$SNDFILE_LIBS"; then
+ pkg_cv_SNDFILE_LIBS="$SNDFILE_LIBS"
+ else
+ if test -n "$PKG_CONFIG" && \
{ ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"sndfile >= 1.0.2\"") >&5
($PKG_CONFIG --exists --print-errors "sndfile >= 1.0.2") 2>&5
ac_status=$?
@@ -15205,8 +15449,9 @@ if test -n "$SNDFILE_LIBS"; then
else
pkg_failed=yes
fi
- else
- pkg_failed=untried
+ fi
+else
+ pkg_failed=untried
fi
@@ -15219,9 +15464,9 @@ else
_pkg_short_errors_supported=no
fi
if test $_pkg_short_errors_supported = yes; then
- SNDFILE_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "sndfile >= 1.0.2" 2>&1`
+ SNDFILE_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "sndfile >= 1.0.2"`
else
- SNDFILE_PKG_ERRORS=`$PKG_CONFIG --print-errors "sndfile >= 1.0.2" 2>&1`
+ SNDFILE_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "sndfile >= 1.0.2"`
fi
# Put the nasty error message in config.log where it belongs
echo "$SNDFILE_PKG_ERRORS" >&5
@@ -15270,10 +15515,11 @@ pkg_failed=no
{ $as_echo "$as_me:$LINENO: checking for PORTAUDIO" >&5
$as_echo_n "checking for PORTAUDIO... " >&6; }
-if test -n "$PORTAUDIO_CFLAGS"; then
- pkg_cv_PORTAUDIO_CFLAGS="$PORTAUDIO_CFLAGS"
- elif test -n "$PKG_CONFIG"; then
- if test -n "$PKG_CONFIG" && \
+if test -n "$PKG_CONFIG"; then
+ if test -n "$PORTAUDIO_CFLAGS"; then
+ pkg_cv_PORTAUDIO_CFLAGS="$PORTAUDIO_CFLAGS"
+ else
+ if test -n "$PKG_CONFIG" && \
{ ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"portaudio-2.0 >= 0.0.19\"") >&5
($PKG_CONFIG --exists --print-errors "portaudio-2.0 >= 0.0.19") 2>&5
ac_status=$?
@@ -15283,13 +15529,15 @@ if test -n "$PORTAUDIO_CFLAGS"; then
else
pkg_failed=yes
fi
- else
- pkg_failed=untried
+ fi
+else
+ pkg_failed=untried
fi
-if test -n "$PORTAUDIO_LIBS"; then
- pkg_cv_PORTAUDIO_LIBS="$PORTAUDIO_LIBS"
- elif test -n "$PKG_CONFIG"; then
- if test -n "$PKG_CONFIG" && \
+if test -n "$PKG_CONFIG"; then
+ if test -n "$PORTAUDIO_LIBS"; then
+ pkg_cv_PORTAUDIO_LIBS="$PORTAUDIO_LIBS"
+ else
+ if test -n "$PKG_CONFIG" && \
{ ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"portaudio-2.0 >= 0.0.19\"") >&5
($PKG_CONFIG --exists --print-errors "portaudio-2.0 >= 0.0.19") 2>&5
ac_status=$?
@@ -15299,8 +15547,9 @@ if test -n "$PORTAUDIO_LIBS"; then
else
pkg_failed=yes
fi
- else
- pkg_failed=untried
+ fi
+else
+ pkg_failed=untried
fi
@@ -15313,9 +15562,9 @@ else
_pkg_short_errors_supported=no
fi
if test $_pkg_short_errors_supported = yes; then
- PORTAUDIO_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "portaudio-2.0 >= 0.0.19" 2>&1`
+ PORTAUDIO_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "portaudio-2.0 >= 0.0.19"`
else
- PORTAUDIO_PKG_ERRORS=`$PKG_CONFIG --print-errors "portaudio-2.0 >= 0.0.19" 2>&1`
+ PORTAUDIO_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "portaudio-2.0 >= 0.0.19"`
fi
# Put the nasty error message in config.log where it belongs
echo "$PORTAUDIO_PKG_ERRORS" >&5
@@ -15359,12 +15608,10 @@ else
fi
-CXXFLAGS=`echo $CXXFLAGS | sed -e "s/-g//" -e "s/-O2//"`
-
+# legitimately we can add -g to flags for debug builds, because they won't
+# be much use otherwise
if test x$enable_debug = xyes; then
- CXXFLAGS="$CXXFLAGS -g -O0"
-else
- CXXFLAGS="$CXXFLAGS -O3 -fomit-frame-pointer"
+ CXXFLAGS="$CXXFLAGS -g"
fi
if test x$enable_static = xyes; then
@@ -18779,27 +19026,28 @@ compiler_lib_search_path=$lt_compiler_lib_search_path_CXX
_LT_EOF
;;
- "depfiles":C) test x"$AMDEP_TRUE" != x"" || # Autoconf 2.62 quotes --file arguments for eval, but not when files
-# are listed without --file. Let's play safe and only enable the eval
-# if we detect the quoting.
-case $CONFIG_FILES in
-*\'*) eval set x "$CONFIG_FILES" ;;
-*) set x $CONFIG_FILES ;;
-esac
-shift
-for mf
-do
- # Strip MF so we end up with the name of the file.
- mf=`echo "$mf" | sed -e 's/:.*$//'`
- # Check whether this is an Automake generated Makefile or not.
- # We used to match only the files named `Makefile.in', but
- # some people rename them; so instead we look at the file content.
- # Grep'ing the first line is not enough: some people post-process
- # each Makefile.in and add a new line on top of each file to say so.
- # Grep'ing the whole file is not good either: AIX grep has a line
- # limit of 2048, but all sed's we know have understand at least 4000.
- if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
- dirpart=`$as_dirname -- "$mf" ||
+ "depfiles":C) test x"$AMDEP_TRUE" != x"" || {
+ # Autoconf 2.62 quotes --file arguments for eval, but not when files
+ # are listed without --file. Let's play safe and only enable the eval
+ # if we detect the quoting.
+ case $CONFIG_FILES in
+ *\'*) eval set x "$CONFIG_FILES" ;;
+ *) set x $CONFIG_FILES ;;
+ esac
+ shift
+ for mf
+ do
+ # Strip MF so we end up with the name of the file.
+ mf=`echo "$mf" | sed -e 's/:.*$//'`
+ # Check whether this is an Automake generated Makefile or not.
+ # We used to match only the files named `Makefile.in', but
+ # some people rename them; so instead we look at the file content.
+ # Grep'ing the first line is not enough: some people post-process
+ # each Makefile.in and add a new line on top of each file to say so.
+ # Grep'ing the whole file is not good either: AIX grep has a line
+ # limit of 2048, but all sed's we know have understand at least 4000.
+ if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
+ dirpart=`$as_dirname -- "$mf" ||
$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
X"$mf" : 'X\(//\)[^/]' \| \
X"$mf" : 'X\(//\)$' \| \
@@ -18822,28 +19070,28 @@ $as_echo X"$mf" |
q
}
s/.*/./; q'`
- else
- continue
- fi
- # Extract the definition of DEPDIR, am__include, and am__quote
- # from the Makefile without running `make'.
- DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
- test -z "$DEPDIR" && continue
- am__include=`sed -n 's/^am__include = //p' < "$mf"`
- test -z "am__include" && continue
- am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
- # When using ansi2knr, U may be empty or an underscore; expand it
- U=`sed -n 's/^U = //p' < "$mf"`
- # Find all dependency output files, they are included files with
- # $(DEPDIR) in their names. We invoke sed twice because it is the
- # simplest approach to changing $(DEPDIR) to its actual value in the
- # expansion.
- for file in `sed -n "
- s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
- sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
- # Make sure the directory exists.
- test -f "$dirpart/$file" && continue
- fdir=`$as_dirname -- "$file" ||
+ else
+ continue
+ fi
+ # Extract the definition of DEPDIR, am__include, and am__quote
+ # from the Makefile without running `make'.
+ DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
+ test -z "$DEPDIR" && continue
+ am__include=`sed -n 's/^am__include = //p' < "$mf"`
+ test -z "am__include" && continue
+ am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
+ # When using ansi2knr, U may be empty or an underscore; expand it
+ U=`sed -n 's/^U = //p' < "$mf"`
+ # Find all dependency output files, they are included files with
+ # $(DEPDIR) in their names. We invoke sed twice because it is the
+ # simplest approach to changing $(DEPDIR) to its actual value in the
+ # expansion.
+ for file in `sed -n "
+ s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
+ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
+ # Make sure the directory exists.
+ test -f "$dirpart/$file" && continue
+ fdir=`$as_dirname -- "$file" ||
$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
X"$file" : 'X\(//\)[^/]' \| \
X"$file" : 'X\(//\)$' \| \
@@ -18866,7 +19114,7 @@ $as_echo X"$file" |
q
}
s/.*/./; q'`
- { as_dir=$dirpart/$fdir
+ { as_dir=$dirpart/$fdir
case $as_dir in #(
-*) as_dir=./$as_dir;;
esac
@@ -18907,10 +19155,11 @@ $as_echo X"$as_dir" |
} || test -d "$as_dir" || { { $as_echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5
$as_echo "$as_me: error: cannot create directory $as_dir" >&2;}
{ (exit 1); exit 1; }; }; }
- # echo "creating $dirpart/$file"
- echo '# dummy' > "$dirpart/$file"
+ # echo "creating $dirpart/$file"
+ echo '# dummy' > "$dirpart/$file"
+ done
done
-done
+}
;;
esac
diff --git a/lib-src/sbsms/configure.in b/lib-src/sbsms/configure.in
index b24cdc6..14835c9 100644
--- a/lib-src/sbsms/configure.in
+++ b/lib-src/sbsms/configure.in
@@ -39,8 +39,18 @@ SHARED_VERSION_INFO="8:0:7"
AC_PROG_LIBTOOL
AM_PROG_LIBTOOL
+# save $CXXFLAGS etc. since AC_PROG_CXX likes to insert "-g -O2"
+# if $CXXFLAGS is blank and it finds GCC
+cflags_save="$CFLAGS"
+cppflags_save="$CPPFLAGS"
+cxxflags_save="$CXXFLAGS"
AC_LANG([C++])
AC_PROG_CXX
+AC_PROG_CXXCPP
+# restore those variables back
+CFLAGS="$cflags_save"
+CPPFLAGS="$cppflags_save"
+CXXFLAGS="$cxxflags_save"
AC_CHECK_FUNCS(malloc calloc free memcpy)
@@ -123,12 +133,10 @@ else
fi
AM_CONDITIONAL(ENABLE_PORTAUDIO, test x$enable_portaudio = xyes)
-CXXFLAGS=`echo $CXXFLAGS | sed -e "s/-g//" -e "s/-O2//"`
-
+# legitimately we can add -g to flags for debug builds, because they won't
+# be much use otherwise
if test x$enable_debug = xyes; then
- CXXFLAGS="$CXXFLAGS -g -O0"
-else
- CXXFLAGS="$CXXFLAGS -O3 -fomit-frame-pointer"
+ CXXFLAGS="$CXXFLAGS -g"
fi
if test x$enable_static = xyes; then
diff --git a/lib-src/sbsms/win/libmad/libmad.vcproj b/lib-src/sbsms/win/libmad/libmad.vcproj
old mode 100644
new mode 100755
diff --git a/lib-src/sbsms/win/libsndfile/libsndfile.vcproj b/lib-src/sbsms/win/libsndfile/libsndfile.vcproj
old mode 100644
new mode 100755
diff --git a/lib-src/sbsms/win/portaudio-v19/portaudio-v19.vcproj b/lib-src/sbsms/win/portaudio-v19/portaudio-v19.vcproj
old mode 100644
new mode 100755
diff --git a/lib-src/sbsms/win/pthread/pthread.vcproj b/lib-src/sbsms/win/pthread/pthread.vcproj
old mode 100644
new mode 100755
diff --git a/lib-src/sbsms/win/sbsms/sbsms.sln b/lib-src/sbsms/win/sbsms/sbsms.sln
old mode 100644
new mode 100755
diff --git a/lib-src/sbsms/win/sbsms/sbsms.vcproj b/lib-src/sbsms/win/sbsms/sbsms.vcproj
old mode 100644
new mode 100755
diff --git a/locale/Makefile.in b/locale/Makefile.in
index 3a70852..d633183 100644
--- a/locale/Makefile.in
+++ b/locale/Makefile.in
@@ -57,7 +57,7 @@ XGETTEXT_ARGS=-F -C -k_ -k_NoAcc -kwxTRANSLATE \
# implicit rules
-%/$(PROGNAME).mo: %.po
+%/$(PROGNAME).mo: %.po $(POTFILE)
@test -d $* || mkdir $*
$(MSGFMT) -o $@ $<
diff --git a/locale/af.po b/locale/af.po
index 2504786..d82420b 100644
--- a/locale/af.po
+++ b/locale/af.po
@@ -29,11 +29,11 @@ msgid "Audacity is a free program written by a team of volunteer <a href=\"http:
msgstr ""
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#. i18n-hint: The translation of "translator_credits" will appear
@@ -85,7 +85,7 @@ msgid "Special thanks:"
msgstr "Spesiale dank aan:"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
msgstr ""
#: AboutDialog.cpp:320
@@ -226,11 +226,21 @@ msgstr "Toevoermeter"
msgid "Output Meter"
msgstr "Afvoermeter"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
+#: Menus.cpp:164
+msgid "&New"
+msgstr "&Nuwe"
+
+#: Menus.cpp:166
+msgid "&Open..."
+msgstr "&Open..."
+
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
+
#: AudacityApp.cpp:734 Menus.cpp:470
-msgid "&Preferences...\tCtrl+,"
-msgstr "&Voorkeure...\tCtrl+,"
+msgid "&Preferences..."
+msgstr "&Voorkeure..."
#: AudacityApp.cpp:816 AudacityApp.cpp:893
#, c-format
@@ -354,14 +364,14 @@ msgstr "Fout: "
msgid "Error Initializing Audio"
msgstr "Fout met inisialisering van oudio"
-#: AudioIO.cpp:1236
-msgid "Latency problem"
+#: AudioIO.cpp:1225
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
+"Audacity has brought it back to start at zero.\n"
+"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
msgstr ""
#: AudioIO.cpp:1236
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
-"Audacity has brought it back to start at zero.\n"
-"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
+msgid "Latency problem"
msgstr ""
#: AutoRecovery.cpp:54
@@ -589,8 +599,8 @@ msgstr "K&etting (dubbelklik of druk SPASIE om te wysig)"
#. i18n-hint: This is the number of the command in the list
#: BatchProcessDialog.cpp:453
-msgid "No"
-msgstr "Nr"
+msgid "Num"
+msgstr ""
#: BatchProcessDialog.cpp:459
msgid "&Insert"
@@ -913,11 +923,11 @@ msgstr "Reghoekig"
msgid "FFmpeg support not compiled in"
msgstr ""
-#: FFmpeg.cpp:101
+#: FFmpeg.cpp:103
msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
#: FFmpeg.cpp:104
@@ -975,11 +985,12 @@ msgstr ""
msgid "FFmpeg not found"
msgstr ""
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
#: FFmpeg.h:109
@@ -1064,10 +1075,23 @@ msgstr "&Voer uit..."
msgid "Export"
msgstr "Uitvoer"
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
#: AboutDialog.cpp:688 FreqWindow.cpp:209 widgets/ErrorDialog.cpp:135
msgid "Close"
msgstr "Sluit"
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr ""
+
#: FreqWindow.cpp:272 FreqWindow.cpp:402 effects/AutoDuck.cpp:489
#: effects/AutoDuck.cpp:523 effects/AutoDuck.cpp:791
#: effects/Compressor.cpp:352 effects/Compressor.cpp:360
@@ -1085,6 +1109,15 @@ msgstr "dB"
msgid "Hz"
msgstr "Hz"
+#: Menus.cpp:3394
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "Om die spektrum te teken moet alle bane die selfde monstertempo hê."
+
+#: Menus.cpp:3420
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "Te veel oudio is gekies. Slegs die eersste %.1f sekondes sal geanaliseer word."
+
#: FreqWindow.cpp:386
msgid "Not enough data selected."
msgstr "Nie genoeg data gekies nie."
@@ -1124,6 +1157,21 @@ msgstr "Frekwensie (Hz)\tVolume (dB)"
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "Vertraging (sekondes)\tFrekwensie (Hz)\tVolume"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr ""
+
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr ""
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr ""
@@ -1202,7 +1250,7 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr ""
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
msgstr ""
#: HelpText.cpp:244
@@ -1226,7 +1274,7 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr ""
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
msgstr ""
#: HelpText.cpp:383
@@ -1287,6 +1335,14 @@ msgstr "MG"
msgid "GB"
msgstr "GG"
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
#: LabelDialog.cpp:52
msgid "Track"
msgstr "Baan"
@@ -1401,21 +1457,13 @@ msgstr "Audacity-projek word oopgemaak"
msgid "&File"
msgstr "&Lêer"
-#: Menus.cpp:164
-msgid "&New\tCtrl+N"
-msgstr "&Nuwe\tCtrl+N"
-
-#: Menus.cpp:166
-msgid "&Open...\tCtrl+O"
-msgstr "&Open...\tCtrl+O"
-
#: Menus.cpp:171
-msgid "&Close\tCtrl+W"
-msgstr "&Sluit\tCtrl+W"
+msgid "&Close"
+msgstr "&Sluit"
#: Menus.cpp:174
-msgid "&Save Project\tCtrl+S"
-msgstr "&Stoor projek\tCtrl+S"
+msgid "&Save Project"
+msgstr "&Stoor projek"
#: Menus.cpp:178 Project.cpp:2628
msgid "Save Project &As..."
@@ -1439,8 +1487,8 @@ msgid "&Import"
msgstr "Voer &in"
#: Menus.cpp:194
-msgid "&Audio...\tCtrl+Shift+I"
-msgstr "&Oudio...\tCtrl+Shift+I"
+msgid "&Audio..."
+msgstr "&Oudio..."
#: Menus.cpp:195
msgid "&Labels..."
@@ -1470,9 +1518,9 @@ msgstr "&Veelvuldige uitvoer..."
msgid "Export MIDI..."
msgstr ""
-#: Menus.cpp:290
-msgid "CleanSpeech C&hain..."
-msgstr ""
+#: Menus.cpp:258
+msgid "Appl&y Chain..."
+msgstr "Pas ketting &toe..."
#: Menus.cpp:246 Menus.cpp:260
msgid "Edit C&hains..."
@@ -1486,10 +1534,6 @@ msgstr ""
msgid "I&mport CleanSpeech Presets..."
msgstr ""
-#: Menus.cpp:258
-msgid "Appl&y Chain..."
-msgstr "Pas ketting &toe..."
-
#: Menus.cpp:265
msgid "&Upload File..."
msgstr "&Laai lêer op..."
@@ -1503,72 +1547,72 @@ msgid "&Print..."
msgstr "&Druk..."
#: Menus.cpp:285
-msgid "E&xit\tCtrl+Q"
-msgstr "Afsluit\tCtrl+Q"
+msgid "E&xit"
+msgstr "Afsluit"
#: Menus.cpp:293 toolbars/EditToolBar.cpp:76
msgid "&Edit"
msgstr "&Redigeer"
#: Menus.cpp:297
-msgid "&Undo\tCtrl+Z"
-msgstr "&Ontdoen\tCtrl+Z"
+msgid "&Undo"
+msgstr "&Ontdoen"
#: Menus.cpp:305 prefs/KeyConfigPrefs.cpp:369 toolbars/EditToolBar.cpp:146
msgid "&Redo"
msgstr "&Herdoen"
#: Menus.cpp:318
-msgid "Cu&t\tCtrl+X"
-msgstr "K&nip\tCtrl+X"
+msgid "Cu&t"
+msgstr "K&nip"
#: Menus.cpp:322
-msgid "Spl&it Cut\tCtrl+Alt+X"
+msgid "Spl&it Cut"
msgstr ""
#: Menus.cpp:323
-msgid "&Copy\tCtrl+C"
-msgstr "&Kopieer\tCtrl+C"
+msgid "&Copy"
+msgstr "&Kopieer"
#: Menus.cpp:327
-msgid "&Paste\tCtrl+V"
-msgstr "&Plak\tCtrl+V"
+msgid "&Paste"
+msgstr "&Plak"
#: Menus.cpp:331
-msgid "Tri&m\tCtrl+T"
-msgstr "&Uitknip\tCtrl+T"
+msgid "Tri&m"
+msgstr "&Uitknip"
#: Menus.cpp:333
-msgid "&Delete\tCtrl+K"
-msgstr "&Skrap\tCtrl+K"
+msgid "&Delete"
+msgstr "&Skrap"
#: Menus.cpp:334
-msgid "Split D&elete\tCtrl+Alt+K"
+msgid "Split D&elete"
msgstr ""
#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
+msgid "Silence Audi&o"
msgstr ""
#: Menus.cpp:337
-msgid "Sp&lit\tCtrl+I"
-msgstr "Sp&lit\tCtrl+I"
+msgid "Sp&lit"
+msgstr "Sp&lit"
#: Menus.cpp:342
-msgid "Split Ne&w\tCtrl+Alt+I"
+msgid "Split Ne&w"
msgstr ""
#: Menus.cpp:347
-msgid "&Join\tCtrl+J"
-msgstr "&Voeg saam\tCtrl+J"
+msgid "&Join"
+msgstr "&Voeg saam"
#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
+msgid "Detac&h at Silences"
msgstr ""
#: Menus.cpp:350
-msgid "Duplic&ate\tCtrl+D"
-msgstr "&Dupliseer\tCtrl+D"
+msgid "Duplic&ate"
+msgstr "&Dupliseer"
#: Menus.cpp:400 Menus.cpp:639
msgid "Stereo Trac&k to Mono"
@@ -1580,80 +1624,65 @@ msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:365
-msgid "&Cut\tAlt+X"
-msgstr "&Knip\tAlt+X"
+msgid "&Cut"
+msgstr "&Knip"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:370
-msgid "&Split Cut\tShift+Alt+X"
+msgid "&Split Cut"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:375
-msgid "Co&py\tShift+Alt+C"
-msgstr "Ko&pieer\tShift+Alt+C"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:381
-msgid "&Delete\tAlt+K"
-msgstr "&Skrap\tAlt+K"
+msgid "Co&py"
+msgstr "Ko&pieer"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:386
-msgid "Sp&lit Delete\tShift+Alt+K"
+msgid "Sp&lit Delete"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:391
-msgid "Sile&nce\tAlt+L"
-msgstr "&Stilte\tAlt+L"
+msgid "Sile&nce"
+msgstr "&Stilte"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:397
-msgid "Spli&t\tAlt+I"
-msgstr "Spli&t\tAlt+I"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:402
-msgid "&Join\tAlt+J"
-msgstr "&Voeg saam\tAlt+J"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
-msgstr ""
+msgid "Spli&t"
+msgstr "Spli&t"
#: Menus.cpp:456
msgid "&Select"
msgstr ""
#: Menus.cpp:414
-msgid "&All\tCtrl+A"
-msgstr "&Alles\tCtrl+A"
+msgid "&All"
+msgstr "&Alles"
#: Menus.cpp:415
-msgid "&None\tCtrl+Shift+A"
-msgstr "&Niks\tCtrl+Shift+A"
+msgid "&None"
+msgstr "&Niks"
#: Menus.cpp:462
-msgid "&Left at Playback Position\t["
+msgid "&Left at Playback Position"
msgstr ""
#: Menus.cpp:463
-msgid "&Right at Playback Position\t]"
+msgid "&Right at Playback Position"
msgstr ""
#: Menus.cpp:467
-msgid "Track &Start to Cursor\tShift+J"
+msgid "Track &Start to Cursor"
msgstr ""
#: Menus.cpp:468
-msgid "Cursor to Track &End\tShift+K"
+msgid "Cursor to Track &End"
msgstr ""
#: Menus.cpp:431
-msgid "Find &Zero Crossings\tZ"
-msgstr "Soek n&ulpunte\tZ"
+msgid "Find &Zero Crossings"
+msgstr "Soek n&ulpunte"
#: Menus.cpp:476
msgid "Mo&ve Cursor"
@@ -1670,11 +1699,11 @@ msgid "to Selection En&d"
msgstr "na einde van seleksie"
#: Menus.cpp:483
-msgid "to Track &Start\tJ"
+msgid "to Track &Start"
msgstr ""
#: Menus.cpp:484
-msgid "to Track &End\tK"
+msgid "to Track &End"
msgstr ""
#: Menus.cpp:491
@@ -1697,29 +1726,8 @@ msgstr ""
msgid "&Unlock"
msgstr ""
-#: Menus.cpp:462
-msgid "Turn Snap-To On"
-msgstr "Deaktiveer inglip"
-
-#: Menus.cpp:463
-msgid "Turn Snap-To Off"
-msgstr "Deaktiveer inlip"
-
-#: Menus.cpp:464
-msgid "Turn Grid Snap On"
-msgstr "Aktiveer rooster-inglip"
-
-#: Menus.cpp:465
-msgid "Turn Grid Snap Off"
-msgstr "Deaktiveer rooster-inglip"
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr ""
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
+msgid "Pre&ferences..."
msgstr ""
#: Menus.cpp:484
@@ -1727,35 +1735,35 @@ msgid "&View"
msgstr "&Aansig"
#: Menus.cpp:486
-msgid "Zoom &In\tCtrl+1"
-msgstr "Zoem &in\tCtrl+1"
+msgid "Zoom &In"
+msgstr "Zoem &in"
#: Menus.cpp:489
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "&Normale zoemvlak\tCtrl+2"
+msgid "Zoom &Normal"
+msgstr "&Normale zoemvlak"
#: Menus.cpp:490
-msgid "Zoom &Out\tCtrl+3"
-msgstr "Zoem &uit\tCtrl+3"
+msgid "Zoom &Out"
+msgstr "Zoem &uit"
#: Menus.cpp:493
-msgid "&Fit in Window\tCtrl+F"
-msgstr "Pas &horisontaal\tCtrl+F"
+msgid "&Fit in Window"
+msgstr "Pas &horisontaal"
#: Menus.cpp:494
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "Pas &vertikaal\tCtrl+Shift+F"
+msgid "Fit &Vertically"
+msgstr "Pas &vertikaal"
#: Menus.cpp:495
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "&Zoem in op seleksie\tCtrl+E"
+msgid "&Zoom to Selection"
+msgstr "&Zoem in op seleksie"
#: Menus.cpp:498
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
+msgid "&Collapse All Tracks"
msgstr ""
#: Menus.cpp:499
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
+msgid "E&xpand All Tracks"
msgstr ""
#: Menus.cpp:551
@@ -1826,40 +1834,40 @@ msgstr ""
msgid "T&ransport"
msgstr ""
-#: Menus.cpp:591
-msgid "Play\tSpace"
-msgstr ""
+#: toolbars/ControlToolBar.cpp:177
+msgid "Play"
+msgstr "Speel"
#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
+msgid "&Loop Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Pause\tP"
+msgid "&Pause"
msgstr ""
#: Menus.cpp:596
-msgid "&Stop\tSpace"
+msgid "&Stop"
msgstr ""
#: Menus.cpp:786
-msgid "Skip to Start\tHome"
-msgstr "Spring na begin\tHome"
+msgid "Skip to Start"
+msgstr "Spring na begin"
#: Menus.cpp:787
-msgid "Skip to End\tEnd"
-msgstr "Spring na einde\tEnd"
+msgid "Skip to End"
+msgstr "Spring na einde"
#: Menus.cpp:600
-msgid "&Record\tR"
+msgid "&Record"
msgstr ""
#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
+msgid "&Timer Record..."
msgstr ""
#: Menus.cpp:604
-msgid "Append Record\tShift+R"
+msgid "Append Record"
msgstr ""
#: Menus.cpp:607
@@ -1887,8 +1895,8 @@ msgid "Add &New"
msgstr ""
#: Menus.cpp:545
-msgid "&Audio Track\tCtrl+Shift+N"
-msgstr "&Oudiobaan\tCtrl+Shift+N"
+msgid "&Audio Track"
+msgstr "&Oudiobaan"
#: Menus.cpp:546
msgid "&Stereo Track"
@@ -1903,7 +1911,7 @@ msgid "Mi&x and Render"
msgstr ""
#: Menus.cpp:564
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
+msgid "Mix and Render to New Track"
msgstr ""
#: Menus.cpp:568
@@ -1915,11 +1923,11 @@ msgid "Remo&ve Tracks"
msgstr "&Verwyder bane"
#: Menus.cpp:667
-msgid "&Mute All Tracks\tCtrl+U"
+msgid "&Mute All Tracks"
msgstr ""
#: Menus.cpp:668
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
+msgid "&UnMute All Tracks"
msgstr ""
#: Menus.cpp:585
@@ -1970,19 +1978,18 @@ msgstr ""
msgid "Synchronize MIDI with Audio"
msgstr ""
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
+#: Menus.cpp:686
+msgid "&Link Audio and Label Tracks"
msgstr ""
-#: Menus.cpp:611
-#, fuzzy
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "Voeg etiket by by seleksie\tCtrl+B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr ""
#: Menus.cpp:612
#, fuzzy
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "Voeg etiket by by speelpunt\tCtrl+M"
+msgid "Add Label At &Playback Position"
+msgstr "Voeg etiket by by speelpunt"
#: Menus.cpp:716
msgid "S&ort tracks"
@@ -2008,14 +2015,14 @@ msgstr ""
msgid "Effe&ct"
msgstr "&Effek"
-#: Menus.cpp:658
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "Herhaal laaste effek\tCtrl+R"
-
#: Menus.cpp:690
msgid "&Analyze"
msgstr "A&naliseer"
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
+
#: Menus.cpp:692
msgid "Plot Spectrum..."
msgstr "Teken spektrum"
@@ -2032,9 +2039,9 @@ msgstr "&Aangaande Audacity CleanSpeech..."
msgid "&Show Welcome Message..."
msgstr "&Wys welkomboodskap..."
-#: Menus.cpp:736
-msgid "&Index..."
-msgstr "&Indeks..."
+#: Menus.cpp:958
+msgid "&Help..."
+msgstr ""
#: Menus.cpp:959
msgid "Show &Log..."
@@ -2052,183 +2059,151 @@ msgstr "Laat loop &normtoets..."
msgid "&Audio Device Info..."
msgstr "&Oudiotoestel-inligting"
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
msgstr ""
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
msgstr ""
#: Menus.cpp:762
-msgid "Selection Tool\tF1"
-msgstr "Merker\tF1"
+msgid "Selection Tool"
+msgstr "Merker"
#: Menus.cpp:763
-msgid "Envelope Tool\tF2"
-msgstr "Omhullingtang\tF2"
+msgid "Envelope Tool"
+msgstr "Omhullingtang"
#: Menus.cpp:764
-msgid "Draw Tool\tF3"
-msgstr "Tekenpen\tF3"
+msgid "Draw Tool"
+msgstr "Tekenpen"
#: Menus.cpp:765
-msgid "Zoom Tool\tF4"
-msgstr "Vergrootglas\tF4"
+msgid "Zoom Tool"
+msgstr "Vergrootglas"
#: Menus.cpp:766
-msgid "Time Shift Tool\tF5"
-msgstr "Verskuif tyd\tF5"
+msgid "Time Shift Tool"
+msgstr "Verskuif tyd"
#: Menus.cpp:767
-msgid "Multi Tool\tF6"
-msgstr "Kombinasiewerktuig\tF6"
+msgid "Multi Tool"
+msgstr "Kombinasiewerktuig"
#: Menus.cpp:769
-msgid "Next Tool\tD"
-msgstr "Volgende gereedskapstuk\tD"
+msgid "Next Tool"
+msgstr "Volgende gereedskapstuk"
#: Menus.cpp:770
-msgid "Previous Tool\tA"
-msgstr "Vorige gereedskap\tA"
+msgid "Previous Tool"
+msgstr "Vorige gereedskap"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
-msgstr ""
-
-#: Menus.cpp:773
-msgid "Stop\tS"
-msgstr "Stop\tS"
-
-#: Menus.cpp:774
-msgid "Pause\tP"
-msgstr "Pouseer\tP"
-
-#: Menus.cpp:775
-msgid "Record\tR"
-msgstr "Neem op\tR"
-
-#: Menus.cpp:999
-msgid "Record Append\tShift+R"
+msgid "Play/Stop"
msgstr ""
#: Menus.cpp:1001
-msgid "Play/Stop and Set Cursor\tShift+A"
+msgid "Play/Stop and Set Cursor"
msgstr ""
#: Menus.cpp:780
-msgid "Play One Second\t1"
-msgstr "Speel een sekonde\t1"
+msgid "Play One Second"
+msgstr "Speel een sekonde"
#: Menus.cpp:781
-msgid "Play To Selection\tB"
-msgstr "Speel tot by seleksie\tB"
-
-#: Menus.cpp:782
-msgid "Play Looped\tL"
-msgstr "Speel in 'n lus\tL"
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
+msgid "Play To Selection"
+msgstr "Speel tot by seleksie"
#: Menus.cpp:784
-msgid "Play Cut Preview\tC"
+msgid "Play Cut Preview"
msgstr ""
#: Menus.cpp:789
-msgid "Selection to Start\tShift+Home"
-msgstr "Seleksie na begin\tShift+Home"
+msgid "Selection to Start"
+msgstr "Seleksie na begin"
#: Menus.cpp:790
-msgid "Selection to End\tShift+End"
-msgstr "Seleksie tot einde\tCtrl+End"
+msgid "Selection to End"
+msgstr "Seleksie tot einde"
#: Menus.cpp:792
#, fuzzy
-msgid "DeleteKey\tBackspace"
-msgstr "DeleteKey\tBackspace"
+msgid "DeleteKey"
+msgstr "DeleteKey"
#: Menus.cpp:797
#, fuzzy
-msgid "DeleteKey2\tDelete"
-msgstr "DeleteKey2\tDelete"
+msgid "DeleteKey2"
+msgstr "DeleteKey2"
-#: Menus.cpp:803
-msgid "Seek left short period during playback\tLeft"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
msgstr ""
-#: Menus.cpp:804
-msgid "Seek right short period during playback\tRight"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
msgstr ""
-#: Menus.cpp:805
-msgid "Seek left long period during playback\tShift+Left"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
msgstr ""
-#: Menus.cpp:806
-msgid "Seek right long period during playback\tShift+Right"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
msgstr ""
#: Menus.cpp:810
-msgid "Move Focus to Previous Track\tUp"
+msgid "Move Focus to Previous Track"
msgstr ""
-#: Menus.cpp:811
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
msgstr ""
#: Menus.cpp:812
-msgid "Move Focus to Next Track\tDown"
+msgid "Move Focus to Next Track"
msgstr ""
-#: Menus.cpp:813
-msgid "Move Focus to Next and Change Selection\tShift+Down"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
msgstr ""
#: Menus.cpp:814
-msgid "Toggle Focused Track\tReturn"
-msgstr ""
-
-#: Menus.cpp:815
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr ""
-
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
+msgid "Toggle Focused Track"
msgstr ""
#: Menus.cpp:818
-msgid "Cursor Left\tLeft"
-msgstr "Merker links\tLinks"
+msgid "Cursor Left"
+msgstr "Merker links"
#: Menus.cpp:819
-msgid "Cursor Right\tRight"
-msgstr "Merker regs\tRegs"
+msgid "Cursor Right"
+msgstr "Merker regs"
#: Menus.cpp:820
-msgid "Cursor Short Jump Left\t,"
+msgid "Cursor Short Jump Left"
msgstr ""
#: Menus.cpp:821
-msgid "Cursor Short Jump Right\t."
+msgid "Cursor Short Jump Right"
msgstr ""
#: Menus.cpp:822
-msgid "Cursor Long Jump Left\tShift+,"
+msgid "Cursor Long Jump Left"
msgstr ""
#: Menus.cpp:823
-msgid "Cursor Long Jump Right\tShift+."
+msgid "Cursor Long Jump Right"
msgstr ""
#: Menus.cpp:825
-msgid "Selection Extend Left\tShift+Left"
-msgstr "Vergroot seleksie links\tShift+Links"
+msgid "Selection Extend Left"
+msgstr "Vergroot seleksie links"
#: Menus.cpp:826
-msgid "Selection Extend Right\tShift+Right"
-msgstr "Vergroot seleksie regs\tShift+Regs"
+msgid "Selection Extend Right"
+msgstr "Vergroot seleksie regs"
#: Menus.cpp:828
msgid "Set (or Extend) Left Selection"
@@ -2239,51 +2214,51 @@ msgid "Set (or Extend) Right Selection"
msgstr ""
#: Menus.cpp:831
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "Verklein seleksie links\tCtrl+Shift+Links"
+msgid "Selection Contract Left"
+msgstr "Verklein seleksie links"
#: Menus.cpp:832
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "Verklein seleksie regs\tCtrl+Shift+Regs"
+msgid "Selection Contract Right"
+msgstr "Verklein seleksie regs"
#: Menus.cpp:834
-msgid "Change pan on focused track\tShift+P"
+msgid "Change pan on focused track"
msgstr ""
#: Menus.cpp:835
-msgid "Pan left on focused track\tAlt+Shift+Left"
+msgid "Pan left on focused track"
msgstr ""
#: Menus.cpp:836
-msgid "Pan right on focused track\tAlt+Shift+Right"
+msgid "Pan right on focused track"
msgstr ""
#: Menus.cpp:837
-msgid "Change gain on focused track\tShift+G"
+msgid "Change gain on focused track"
msgstr ""
#: Menus.cpp:838
-msgid "Increase gain on focused track\tAlt+Shift+Up"
+msgid "Increase gain on focused track"
msgstr ""
#: Menus.cpp:839
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
+msgid "Decrease gain on focused track"
msgstr ""
#: Menus.cpp:840
-msgid "Open menu on focused track\tShift+M"
+msgid "Open menu on focused track"
msgstr ""
#: Menus.cpp:841
-msgid "Mute/Unmute focused track\tShift+U"
+msgid "Mute/Unmute focused track"
msgstr ""
#: Menus.cpp:842
-msgid "Solo/Unsolo focused track\tShift+S"
+msgid "Solo/Unsolo focused track"
msgstr ""
#: Menus.cpp:843
-msgid "Close focused track\tShift+C"
+msgid "Close focused track"
msgstr ""
#: Menus.cpp:845
@@ -2297,7 +2272,35 @@ msgid "Snap To Off"
msgstr "[Inskiet af]"
#: Menus.cpp:1071
-msgid "Full screen on/off\tF11"
+msgid "Full screen on/off"
+msgstr ""
+
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr ""
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr ""
+
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr ""
+
+#: Menus.cpp:1074
+msgid "Adjust input source"
msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
@@ -2358,8 +2361,8 @@ msgstr "U moet eers een baan kies."
#: Menus.cpp:2005
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "Herhaal %s\tCtrl+R"
+msgid "Repeat %s"
+msgstr "Herhaal %s"
#: Menus.cpp:2136
msgid "There are no label tracks to export."
@@ -2438,7 +2441,6 @@ msgid "Trim file to selection"
msgstr "Knip seleksie uit"
#: Menus.cpp:2669
-#, c-format
#, fuzzy
msgid "Split-deleted %.2f seconds at t=%.2f"
msgstr "%.2f sekondes geskrap by t=%.2f"
@@ -2448,7 +2450,6 @@ msgid "Split Delete"
msgstr ""
#: Menus.cpp:2693
-#, c-format
#, fuzzy
msgid "Disjoined %.2f seconds at t=%.2f"
msgstr "%.2f sekondes geskrap by t=%.2f"
@@ -2458,7 +2459,6 @@ msgid "Disjoin"
msgstr ""
#: Menus.cpp:2717
-#, c-format
#, fuzzy
msgid "Joined %.2f seconds at t=%.2f"
msgstr "%.2f sekondes geskrap by t=%.2f"
@@ -2573,15 +2573,6 @@ msgstr ""
msgid "Split at labels"
msgstr "Verdeel by etikette"
-#: Menus.cpp:3394
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "Om die spektrum te teken moet alle bane die selfde monstertempo hê."
-
-#: Menus.cpp:3420
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "Te veel oudio is gekies. Slegs die eersste %.1f sekondes sal geanaliseer word."
-
#: Menus.cpp:3546
#, c-format
msgid "Imported labels from '%s'"
@@ -2803,6 +2794,10 @@ msgstr "Daar was 'n probleem om te druk."
msgid "Print"
msgstr "Druk"
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr ""
+
#: Project.cpp:635
msgid "Main Mix"
msgstr ""
@@ -2816,7 +2811,7 @@ msgstr "Welkom by Audacity weergawe %s"
msgid "(Recovered)"
msgstr ""
-#: Project.cpp:1472 TrackPanel.cpp:772 toolbars/ControlToolBar.cpp:191
+#: Menus.cpp:775
msgid "Record"
msgstr "Neem op"
@@ -2841,8 +2836,8 @@ msgstr ""
msgid "Save changes?"
msgstr "Stoor wysigings?"
-#: Project.cpp:1684
-msgid "All files|*.*|All supported files|"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
msgstr ""
#: Project.cpp:1709
@@ -2872,6 +2867,17 @@ msgstr ""
msgid "Opening old project file"
msgstr "Ou projeklêer word geopen"
+#: Project.cpp:2073
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr ""
+
#: Project.cpp:1801 Project.cpp:1809
msgid "Error opening file"
msgstr "Fout met oopmaak van lêer"
@@ -2928,10 +2934,12 @@ msgstr "Hierdie lêer is gestoor met Audacity %s.\n"
msgid "Can't open project file"
msgstr "Kan nie projeklêer open nie"
-#: Project.cpp:2314
+#: Project.cpp:2484
#, c-format
msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
msgstr ""
@@ -2951,16 +2959,22 @@ msgstr ""
msgid "Warning empty project"
msgstr ""
-#: Project.cpp:2591
+#: Project.cpp:2792
#, c-format
msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+"is not writable or the disk is full."
msgstr ""
#: Project.cpp:2366 Project.cpp:2380
msgid "Error saving project"
msgstr "Fout met stoor van projek"
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
#: Project.cpp:2442
#, c-format
msgid "Saved %s"
@@ -3120,6 +3134,165 @@ msgstr "24-bis-PCM"
msgid "32-bit float"
msgstr "32-bis-dryfpunt"
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
+
+#: export/ExportMultiple.cpp:204 prefs/DirectoriesPrefs.cpp:92
+msgid "Choose..."
+msgstr "Kies..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
+
+#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
+msgid "false"
+msgstr ""
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: toolbars/ToolsToolBar.cpp:90
+#, fuzzy
+msgid "Tools"
+msgstr "Funksieknop"
+
+#: toolbars/ControlToolBar.cpp:82
+msgid "Control"
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:58
+msgid "Mixer"
+msgstr "Mengbank"
+
+#: toolbars/MeterToolBar.cpp:50
+msgid "Meter"
+msgstr "Meter"
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
+#: toolbars/DeviceToolBar.cpp:54
+#, fuzzy
+msgid "Device"
+msgstr "Toestel:"
+
+#: toolbars/TranscriptionToolBar.cpp:82
+msgid "Transcription"
+msgstr ""
+
+#: TrackPanel.cpp:448 TrackPanel.cpp:449
+msgid "Track Panel"
+msgstr "Baanpaneel"
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: export/ExportMultiple.cpp:246
+msgid "Tracks"
+msgstr "Bane"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
#: Screenshot.cpp:384
#, fuzzy
msgid "Saved "
@@ -3129,6 +3302,10 @@ msgstr "%s gestoor"
msgid "Error trying to save file: "
msgstr ""
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
#: Sequence.cpp:732 Sequence.cpp:742 Sequence.cpp:749
msgid "Gap detected in project file\n"
msgstr ""
@@ -3269,6 +3446,10 @@ msgstr "Kon nie metadata laai nie"
msgid "Save Metadata As:"
msgstr "Stoor metadata as:"
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
#: Theme.cpp:638
#, c-format
msgid "Audacity could not write file:\n"
@@ -3341,6 +3522,14 @@ msgstr "Duur"
msgid "Audacity Timer Record"
msgstr ""
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
#: TimerRecordDialog.cpp:224
msgid "Recording start"
msgstr ""
@@ -3380,10 +3569,6 @@ msgstr ""
msgid "Audacity Timer Record - Waiting for Start"
msgstr ""
-#: TrackPanel.cpp:448 TrackPanel.cpp:449
-msgid "Track Panel"
-msgstr "Baanpaneel"
-
#: TrackPanel.cpp:492 export/ExportPCM.cpp:133 prefs/QualityPrefs.cpp:97
msgid "Other..."
msgstr "Ander..."
@@ -3436,6 +3621,10 @@ msgstr "Maak stereo baan"
msgid "Split Stereo Track"
msgstr "Verdeel stereo baan"
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr ""
+
#: TrackPanel.cpp:516
msgid "Set Sample Format"
msgstr "Stel monsterformaat"
@@ -3539,7 +3728,6 @@ msgstr "regs"
#. i18n-hint: %s is a direction like left or right
#: TrackPanel.cpp:2040
-#, c-format
#, fuzzy
msgid "Time shifted tracks/clips %s %.02f seconds"
msgstr "Baan '%s' %s met %.02f sekondes verskuif"
@@ -3638,14 +3826,6 @@ msgstr ""
msgid "Adjusted gain"
msgstr ""
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr ""
-
#: TrackPanel.cpp:5658
msgid "Can't delete track with active audio"
msgstr ""
@@ -3681,6 +3861,11 @@ msgstr "Kanaal"
msgid "Split stereo track '%s'"
msgstr "Stereo baan '%s' verdeel"
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
#: TrackPanel.cpp:5879
#, c-format
msgid "Made '%s' a stereo track"
@@ -3757,6 +3942,10 @@ msgstr ""
msgid "Face size"
msgstr ""
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr ""
+
#: TrackPanel.cpp:6756
msgid "Mute"
msgstr "Stil"
@@ -3835,8 +4024,9 @@ msgstr "Inprop 1 tot %i"
msgid "Plugins %i to %i"
msgstr "Inprop %i tot %i"
-#: commands/CommandManager.cpp:857
-msgid "Disallowed for some reason. Try selecting some audio first?"
+#: commands/CommandManager.cpp:923
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
msgstr ""
#: commands/CommandManager.cpp:724
@@ -4283,12 +4473,11 @@ msgstr ""
msgid "Decay Time"
msgstr ""
-#: effects/Compressor.cpp:516
-msgid "Normalize to 0dB after compressing"
-msgstr "Normaliseer op 0dB ná komprimering"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
+msgstr ""
#: effects/Compressor.cpp:563
-#, c-format
#, fuzzy
msgid "Threshold %d dB"
msgstr "Drempel: %d dB"
@@ -4319,7 +4508,6 @@ msgid "%.1f:1"
msgstr ""
#: effects/Compressor.cpp:575
-#, c-format
#, fuzzy
msgid "Attack Time %.1f secs"
msgstr "Saamdruktyd: %.1f sek"
@@ -4330,7 +4518,6 @@ msgid "%.1f secs"
msgstr ""
#: effects/Compressor.cpp:578
-#, c-format
#, fuzzy
msgid "Decay Time %.1f secs"
msgstr "Saamdruktyd: %.1f sek"
@@ -4343,6 +4530,10 @@ msgstr "Kompressor..."
msgid "Applying Dynamic Range Compression..."
msgstr "Dinamiese omvangkompressie word toegepas..."
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
msgstr ""
@@ -4362,19 +4553,6 @@ msgid "Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr ""
-
#: effects/Contrast.cpp:231
msgid "Contrast Analyzer"
msgstr ""
@@ -4408,6 +4586,11 @@ msgstr ""
msgid "Foreground end time"
msgstr ""
+#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
+#: effects/Contrast.cpp:289
+msgid "Measured"
+msgstr ""
+
#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
msgid "Use selection"
msgstr ""
@@ -4452,16 +4635,8 @@ msgstr ""
msgid "Help for WCAG2 Audio Contrast Analyzer"
msgstr ""
-#: toolbars/ControlToolBar.cpp:82
-msgid "Control"
-msgstr ""
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
msgstr ""
#: effects/Contrast.cpp:328 effects/Contrast.cpp:336 effects/Contrast.cpp:344
@@ -4572,18 +4747,6 @@ msgstr ""
msgid "Data gathered"
msgstr ""
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr ""
-
#: effects/DtmfGen.cpp:48
msgid "DTMF Tone Generator"
msgstr ""
@@ -4631,7 +4794,6 @@ msgid "DTMF Tones..."
msgstr ""
#: effects/DtmfGen.h:49
-#, c-format
#, fuzzy
msgid "Applied effect: Generate DTMF tones, %.6lf seconds"
msgstr "Stilte genereer (%.6lf sekondes)"
@@ -4712,6 +4874,10 @@ msgstr ""
msgid "custom"
msgstr ""
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr ""
+
#. i18n-hint: && in here is an escape character to get a single &
#. * on screen, so keep it as is
#: effects/Equalization.cpp:1081
@@ -4915,10 +5081,6 @@ msgstr ""
msgid "Analyser"
msgstr ""
-#: toolbars/MixerToolBar.cpp:58
-msgid "Mixer"
-msgstr "Mengbank"
-
#: effects/LoadEffects.cpp:116
msgid "Simulator"
msgstr ""
@@ -5069,7 +5231,6 @@ msgid "Noise..."
msgstr ""
#: effects/Noise.h:49
-#, c-format
#, fuzzy
msgid "Applied effect: Generate Noise, %.6lf seconds"
msgstr "Stilte genereer (%.6lf sekondes)"
@@ -5080,7 +5241,6 @@ msgid "Generating Noise"
msgstr "Toon word gegenereer"
#: effects/NoiseRemoval.cpp:192
-#, c-format
#, fuzzy
msgid "Could not open file:\n"
" %s"
@@ -5164,10 +5324,6 @@ msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr ""
#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
-msgid "false"
-msgstr ""
-
-#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
msgid "true"
msgstr ""
@@ -5430,7 +5586,6 @@ msgstr ""
# Ons wil einlik die %s vas hê aan golf. TODO
#: effects/ToneGen.cpp:59
-#, c-format
#, fuzzy
msgid "Applied effect: Generate %s wave %s, frequency = %.2f Hz, amplitude = %.2f, %.6lf seconds"
msgstr "\"%s\"-effek toegepas (genereer %s-golf, frekwensie = %.2f Hz, amplitude = %.2f, %.6lf secondes"
@@ -5519,8 +5674,12 @@ msgstr "Alle bane moet dieselfde monstertempo hê"
msgid "Truncate Silence"
msgstr ""
-#: effects/TruncSilence.cpp:346
-msgid "Max silence duration:"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr ""
+
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
msgstr ""
#: effects/TruncSilence.cpp:349 prefs/AudioIOPrefs.cpp:190
@@ -5528,12 +5687,25 @@ msgstr ""
msgid "milliseconds"
msgstr "millisekondes"
+#: effects/TruncSilence.cpp:346
+msgid "Max silence duration:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ""
+
#: effects/TruncSilence.cpp:351
msgid "Threshold for silence:"
msgstr ""
-#: effects/TruncSilence.cpp:375
-msgid " Duration must be at least 1 millisecond"
+#: effects/TruncSilence.cpp:506
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
msgstr ""
#: effects/TruncSilence.h:28
@@ -5544,17 +5716,55 @@ msgstr ""
msgid "Truncating Silence..."
msgstr ""
-#: effects/VST/VSTEffect.cpp:165
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "Jammer, VST-effekte werk nie op stereo bane waar die individuele kanale van die baan nie ooreenstem nie."
+#: effects/ladspa/LadspaEffect.cpp:608
+msgid "Effect Settings"
+msgstr "Effek-opstelling"
-#: effects/VST/VSTEffect.cpp:180
-msgid "Can't process replacing"
-msgstr "Kan nie vervanging verwerk nie"
+#: effects/ladspa/LadspaEffect.cpp:573 effects/ladspa/LadspaEffect.cpp:581
+#: prefs/QualityPrefs.cpp:72
+msgid "None"
+msgstr "Geen"
+
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
-#: effects/VST/VSTEffect.cpp:403
-msgid "VST Plug-in parameters:"
-msgstr "Parameters vir VST-inprop:"
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr ""
#: effects/Wahwah.cpp:61
#, c-format
@@ -5603,19 +5813,10 @@ msgstr "\"%s\"-effek word toegepas"
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr "Jammer, inprop-effekte werk nie op stereo bane waar die individuele kanale van die baan nie ooreenstem nie."
-#: effects/ladspa/LadspaEffect.cpp:573 effects/ladspa/LadspaEffect.cpp:581
-#: prefs/QualityPrefs.cpp:72
-msgid "None"
-msgstr "Geen"
-
#: effects/ladspa/LadspaEffect.cpp:575 effects/vamp/VampEffect.cpp:384
msgid "Author: "
msgstr "Outeur: "
-#: effects/ladspa/LadspaEffect.cpp:608
-msgid "Effect Settings"
-msgstr "Effek-opstelling"
-
#: effects/ladspa/LadspaEffect.cpp:699
msgid "Length (seconds)"
msgstr "Lengte (sekondes)"
@@ -5812,9 +6013,21 @@ msgstr "Die hele projek word d.m.v. die opdraglyn-enkodeerder uitgevoer"
msgid "Command Output"
msgstr "Opdrag se afvoer"
-#: export/ExportFFmpeg.cpp:59
+#: export/ExportFFmpeg.cpp:61
msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
#: export/ExportFFmpeg.cpp:394
@@ -5883,6 +6096,10 @@ msgstr ""
msgid "AAC Export Setup"
msgstr ""
+#: export/ExportOGG.cpp:86
+msgid "Quality:"
+msgstr "Kwaliteit:"
+
#: export/ExportFFmpegDialogs.cpp:217
msgid "Specify AMR-NB Options"
msgstr ""
@@ -6016,12 +6233,8 @@ msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n
"Recommended - 192000"
msgstr ""
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr "Kwaliteit:"
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid "Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
@@ -6040,10 +6253,10 @@ msgstr ""
msgid "Cutoff Bandwidth:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:947
+#: export/ExportFFmpegDialogs.cpp:936
msgid "Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:949
@@ -6232,12 +6445,12 @@ msgstr ""
msgid "AC3 Files (FFmpeg)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:56
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:57
@@ -6348,6 +6561,17 @@ msgstr "Bisdiepte:"
msgid "FLAC Files"
msgstr "FLAC-lêers"
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
#: export/ExportFLAC.cpp:310
msgid "Exporting the selected audio as FLAC"
msgstr "Die seleksie word as FLAC uitgevoer"
@@ -6604,10 +6828,6 @@ msgstr "Keuses..."
msgid "Export location:"
msgstr "Ligging vir uitvoer:"
-#: export/ExportMultiple.cpp:204 prefs/DirectoriesPrefs.cpp:92
-msgid "Choose..."
-msgstr "Kies..."
-
#: export/ExportMultiple.cpp:205
msgid "Create"
msgstr "Skep"
@@ -6632,10 +6852,6 @@ msgstr "Eerste lêernaam:"
msgid "First file name"
msgstr ""
-#: export/ExportMultiple.cpp:246
-msgid "Tracks"
-msgstr "Bane"
-
#: export/ExportMultiple.cpp:253
msgid "Name files:"
msgstr "Benoem lêers:"
@@ -6669,6 +6885,35 @@ msgstr "\"%s\" suksesvol geskep."
msgid "Choose a location to save the exported files"
msgstr "Kies 'n ligging vir die uitvoer van lêers"
+#: export/ExportMultiple.cpp:524
+#, c-format
+msgid "Successfully exported the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:527
+#, c-format
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr ""
+
#: export/ExportMultiple.cpp:480
#, c-format
msgid "\"%s\" doesn't exist.\n"
@@ -6682,16 +6927,6 @@ msgstr "\"%s\" bestaan nie.\n"
msgid "Edit metadata"
msgstr ""
-#: export/ExportMultiple.cpp:606 export/ExportMultiple.cpp:714
-#, c-format
-msgid "Successfully exported %d file(s)."
-msgstr "%d lêer(s) suksesvol uitgevoer."
-
-#: export/ExportMultiple.cpp:607 export/ExportMultiple.cpp:715
-#, c-format
-msgid "Something went wrong after exporting %d file(s)."
-msgstr "Iets het verkeerd geloop na %d lêer(s) uitgevoer is."
-
#: export/ExportMultiple.cpp:881
#, c-format
msgid "Label %s is not a legal file name. You cannot use any of: %s\n"
@@ -6760,20 +6995,17 @@ msgid "Cannot export audio in this format."
msgstr "Kan audio nie in dié formaat uitvoer nie."
#: export/ExportPCM.cpp:400
-#, c-format
#, fuzzy
msgid "Exporting the selected audio as %s"
msgstr "Die seleksie word as Ogg Vorbis uitgevoer"
#: export/ExportPCM.cpp:402
-#, c-format
#, fuzzy
msgid "Exporting the entire project as %s"
msgstr "Die hele projek word as Ogg Vorbis uitgevoer"
#. i18n-hint: %s will be the error message from libsndfile
#: export/ExportPCM.cpp:531
-#, c-format
#, fuzzy
msgid "Error (file may not have been written): %s"
msgstr "Fout (lêer is dalk nie geskryf nie): %s"
@@ -6833,7 +7065,6 @@ msgid "\"%s\" is an audio CD track. \n"
msgstr ""
#: import/Import.cpp:256
-#, c-format
#, fuzzy
msgid "\"%s\" is a playlist file. \n"
"Audacity cannot open this file because it only contains links to other files. \n"
@@ -6942,6 +7173,10 @@ msgstr ""
msgid "FLAC files"
msgstr "FLAC-lêers"
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr ""
+
#: import/ImportLOF.cpp:92
msgid "List of Files in basic text format"
msgstr "Lêerlys in gewone teksformaat"
@@ -7100,35 +7335,41 @@ msgstr ""
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr ""
-#: prefs/AudioIOPrefs.cpp:41 prefs/AudioIOPrefs.cpp:42
-msgid "Audio I/O"
-msgstr "Oudio-T/A (\"I/O\")"
+#: prefs/BatchPrefs.cpp:55 prefs/BatchPrefs.cpp:56
+msgid "Batch"
+msgstr ""
-#: prefs/AudioIOPrefs.cpp:100
-msgid "1 (Mono)"
-msgstr "1 (mono)"
+#: prefs/BatchPrefs.cpp:77 prefs/GUIPrefs.cpp:70
+msgid "Behaviors"
+msgstr ""
-#: prefs/AudioIOPrefs.cpp:101
-msgid "2 (Stereo)"
-msgstr "2 (stereo)"
+#: prefs/BatchPrefs.cpp:80
+msgid "&Don't apply effects in batch mode"
+msgstr ""
-#: prefs/AudioIOPrefs.cpp:115
-msgid "Playback"
-msgstr "Terugspeel"
+#: prefs/BatchPrefs.cpp:85
+msgid "Cl&eanSpeech Mode (Customized GUI)"
+msgstr ""
-#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
-#: toolbars/DeviceToolBar.cpp:54
-#, fuzzy
-msgid "Device"
-msgstr "Toestel:"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:33 prefs/GUIPrefs.cpp:34
+msgid "Interface"
+msgstr "Koppelvlak"
+
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
+msgstr ""
#: prefs/AudioIOPrefs.cpp:122
msgid "Using:"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:123
-msgid "Portaudio v"
-msgstr ""
+#: prefs/AudioIOPrefs.cpp:115
+msgid "Playback"
+msgstr "Terugspeel"
#: prefs/AudioIOPrefs.cpp:133
msgid "Recording"
@@ -7139,93 +7380,13 @@ msgstr "Opneem"
msgid "Channels"
msgstr "Kanaal"
-#: prefs/AudioIOPrefs.cpp:145
-msgid "Playthrough"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:150
-#, fuzzy
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr "Speel opname regstreeks tydens opname d.m.v. hardeware"
-
-#: prefs/AudioIOPrefs.cpp:152
-#, fuzzy
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr "Speel opname regstreeks tydens opname d.m.v.sagteware"
-
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:162
-msgid "Effects Preview"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:165
-msgid "Length of preview:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:170
-msgid "Cut Preview"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:173
-msgid "Preview before cut region:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:175
-msgid "Preview after cut region:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:183
-msgid "Latency"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:195
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:198
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:197
-msgid "Seek Time when playing"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:200
-msgid "Short period:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:202
-msgid "Long period:"
-msgstr ""
-
-#: prefs/BatchPrefs.cpp:55 prefs/BatchPrefs.cpp:56
-msgid "Batch"
-msgstr ""
-
-#: prefs/BatchPrefs.cpp:77 prefs/GUIPrefs.cpp:70
-msgid "Behaviors"
-msgstr ""
-
-#: prefs/BatchPrefs.cpp:80
-msgid "&Don't apply effects in batch mode"
-msgstr ""
+#: prefs/AudioIOPrefs.cpp:100
+msgid "1 (Mono)"
+msgstr "1 (mono)"
-#: prefs/BatchPrefs.cpp:85
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr ""
+#: prefs/AudioIOPrefs.cpp:101
+msgid "2 (Stereo)"
+msgstr "2 (stereo)"
#: prefs/DirectoriesPrefs.cpp:55 prefs/DirectoriesPrefs.cpp:56
#: prefs/PrefsDialog.cpp:279
@@ -7244,34 +7405,31 @@ msgstr "Ligging:"
msgid "Free Space:"
msgstr "Oop spasie:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr ""
+#: prefs/DirectoriesPrefs.cpp:110
+msgid "Audio cache"
+msgstr "Oudiokasgeheue"
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "Play and/or record using RAM (useful for slow drives)"
msgstr ""
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
msgstr ""
-#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
-msgstr "minute"
-
-#: prefs/DirectoriesPrefs.cpp:110
-msgid "Audio cache"
-msgstr "Oudiokasgeheue"
-
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
#: prefs/DirectoriesPrefs.cpp:121
msgid "Choose a location to place the temporary directory"
msgstr "Kies 'n ligging vir die tydelike gids"
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: prefs/DirectoriesPrefs.cpp:166
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -7291,220 +7449,141 @@ msgstr "Gids %s is nie skryfbaar nie"
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "Verandering aan die tydelike gids word eers effektief wanneer Audacity oor begin"
-#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
-msgid "Import / Export"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:84
-msgid "MP3 Export Library"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:104
-msgid "MP3 Library Version:"
-msgstr "MP3-biblioteekweergawe:"
-
-#: prefs/FileFormatPrefs.cpp:93
-msgid "MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:98
-msgid "LAME MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
-msgid "&Download"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:136
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:137
-msgid "When importing audio files"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:140
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:141
-msgid "&Read uncompressed audio files directly from the original (faster)"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:143
-msgid "&Normalize all tracks in project"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:84
-msgid "When saving a project that depends on other audio files"
+#: prefs/GUIPrefs.cpp:42
+msgid "In Browser"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:151
-msgid "Always © all audio into project (safest)"
+#: prefs/GUIPrefs.cpp:43
+msgid "From Internet"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:152
-msgid "&Do not copy any audio"
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:87
-msgid "&Ask user"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:157
-msgid "When exporting tracks to an audio file"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:96
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:97
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:163
-msgid "S&how Metadata Editor prior to export step"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
msgstr ""
-#: prefs/GUIPrefs.cpp:33 prefs/GUIPrefs.cpp:34
-msgid "Interface"
-msgstr "Koppelvlak"
+#: prefs/GUIPrefs.cpp:115
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 dB (oppervlakkige omvang vir hoë-amplitude-redigeerwerk)"
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
-msgstr ""
+#: prefs/GUIPrefs.cpp:116
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 dB (PCM-omvang van 8-bis-monsters)"
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
+#: prefs/GUIPrefs.cpp:143
+msgid "-60 dB (PCM range of 10 bit samples)"
msgstr ""
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
-msgstr ""
+#: prefs/GUIPrefs.cpp:117
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 dB (PCM-omvang van 16-bis-monsters)"
-#: prefs/GUIPrefs.cpp:72
-msgid "&Update display while playing"
-msgstr ""
+#: prefs/GUIPrefs.cpp:118
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 dB (omtrent tot waar 'n mens hoor)"
-#: prefs/GUIPrefs.cpp:96
-msgid "Cl&osing last window quits Audacity"
-msgstr ""
+#: prefs/GUIPrefs.cpp:119
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB (PCM-omvang van 24-bis-monsters)"
-#: prefs/GUIPrefs.cpp:98
-msgid "Enable &dragging of left and right selection edges"
+#: prefs/SpectrumPrefs.cpp:96
+msgid "Display"
msgstr ""
#: prefs/GUIPrefs.cpp:100
msgid "Er&gonomic order of audio I/O buttons"
msgstr ""
-#: prefs/GUIPrefs.cpp:80
-msgid "Automatically &fit tracks vertically zoomed"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
msgstr ""
-#: prefs/GUIPrefs.cpp:104
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
msgstr ""
-#: prefs/GUIPrefs.cpp:86
-msgid "Editing a &clip can move other clips"
+#: prefs/GUIPrefs.cpp:167
+msgid "Help:"
msgstr ""
-#: prefs/GUIPrefs.cpp:88
-msgid "&Select all audio in project, if none selected"
+#: prefs/GUIPrefs.cpp:96
+msgid "Cl&osing last window quits Audacity"
msgstr ""
#: prefs/GUIPrefs.cpp:90
msgid "&Beep on completion of longer activities"
msgstr ""
-#: prefs/BatchPrefs.cpp:89 prefs/GUIPrefs.cpp:94
-msgid "Show / Hide"
+#: prefs/GUIPrefs.cpp:126
+msgid "Modes"
msgstr ""
-#: prefs/GUIPrefs.cpp:96
-msgid "Enable cut &lines"
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:98
-msgid "Show warnings about &temp files"
+#: prefs/GUIPrefs.cpp:129
+msgid "Don't a&pply effects in batch mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
+#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
+msgid "Import / Export"
msgstr ""
-#: prefs/GUIPrefs.cpp:122
-msgid "Show &Welcome Message at program start up"
+#: prefs/FileFormatPrefs.cpp:137
+msgid "When importing audio files"
msgstr ""
-#: prefs/GUIPrefs.cpp:126
-msgid "Modes"
+#: prefs/FileFormatPrefs.cpp:140
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
msgstr ""
-#: prefs/GUIPrefs.cpp:129
-msgid "Don't a&pply effects in batch mode"
+#: prefs/FileFormatPrefs.cpp:141
+msgid "&Read uncompressed audio files directly from the original (faster)"
msgstr ""
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
+#: prefs/FileFormatPrefs.cpp:143
+msgid "&Normalize all tracks in project"
msgstr ""
-#: prefs/GUIPrefs.cpp:115
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 dB (oppervlakkige omvang vir hoë-amplitude-redigeerwerk)"
-
-#: prefs/GUIPrefs.cpp:116
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 dB (PCM-omvang van 8-bis-monsters)"
-
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
+#: prefs/FileFormatPrefs.cpp:157
+msgid "When exporting tracks to an audio file"
msgstr ""
-#: prefs/GUIPrefs.cpp:117
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 dB (PCM-omvang van 16-bis-monsters)"
-
-#: prefs/GUIPrefs.cpp:118
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 dB (omtrent tot waar 'n mens hoor)"
-
-#: prefs/GUIPrefs.cpp:119
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB (PCM-omvang van 24-bis-monsters)"
-
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
+#: prefs/FileFormatPrefs.cpp:96
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
msgstr ""
-#: prefs/GUIPrefs.cpp:164
-msgid "Other interface choices"
+#: prefs/FileFormatPrefs.cpp:97
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
msgstr ""
-#: prefs/GUIPrefs.cpp:167
-msgid "Help:"
+#: prefs/FileFormatPrefs.cpp:163
+msgid "S&how Metadata Editor prior to export step"
msgstr ""
-#: prefs/GUIPrefs.cpp:168
-msgid "Solo Button:"
+#: prefs/ImportExportPrefs.cpp:84
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
msgstr ""
#: prefs/KeyConfigPrefs.cpp:64 prefs/KeyConfigPrefs.cpp:65
@@ -7535,17 +7614,22 @@ msgstr "Let wel: Cmd+Q sluit af. Alle ander sleutels is geldig."
msgid "&Defaults"
msgstr "&Verstekwaardes"
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr ""
+
#: prefs/KeyConfigPrefs.cpp:143
msgid "Key Combination"
msgstr "Sleutelkombinasie"
-#: prefs/KeyConfigPrefs.cpp:163
-msgid "Export Keyboard Shortcuts As:"
-msgstr "Voer sleutelbord-kortpaaie uit as:"
+#: prefs/KeyConfigPrefs.cpp:367 toolbars/EditToolBar.cpp:144
+msgid "Undo"
+msgstr "Ontdoen"
-#: prefs/KeyConfigPrefs.cpp:181
-msgid "Error saving keyboard shortcuts"
-msgstr "Fout met stoor van sleutelbord-kortpaaie"
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr ""
#: prefs/KeyConfigPrefs.cpp:196
msgid "Select an XML file containing Audacity keyboard shortcuts..."
@@ -7555,6 +7639,14 @@ msgstr "Kies 'n XML-lêer wat Audacity-snelsleutels bevat..."
msgid "Error loading keyboard shortcuts"
msgstr "Fout met sleutelbord-kortpaaie"
+#: prefs/KeyConfigPrefs.cpp:163
+msgid "Export Keyboard Shortcuts As:"
+msgstr "Voer sleutelbord-kortpaaie uit as:"
+
+#: prefs/KeyConfigPrefs.cpp:181
+msgid "Error saving keyboard shortcuts"
+msgstr "Fout met stoor van sleutelbord-kortpaaie"
+
#: prefs/KeyConfigPrefs.cpp:241
#, c-format
msgid "The keyboard shortcut '%s' is already assigned to:\n"
@@ -7562,9 +7654,61 @@ msgid "The keyboard shortcut '%s' is already assigned to:\n"
"'%s'"
msgstr ""
-#: prefs/KeyConfigPrefs.cpp:367 toolbars/EditToolBar.cpp:144
-msgid "Undo"
-msgstr "Ontdoen"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:84
+msgid "MP3 Export Library"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:104
+msgid "MP3 Library Version:"
+msgstr "MP3-biblioteekweergawe:"
+
+#: prefs/FileFormatPrefs.cpp:93
+msgid "MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:98
+msgid "LAME MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
+msgid "&Download"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:109
+msgid "FFmpeg Library Version:"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
+msgid "FFmpeg Library:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:41 prefs/AudioIOPrefs.cpp:42
+msgid "Audio I/O"
+msgstr "Oudio-T/A (\"I/O\")"
+
+#: prefs/AudioIOPrefs.cpp:123
+msgid "Portaudio v"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:145
+msgid "Playthrough"
+msgstr ""
#: prefs/AudioIOPrefs.cpp:147
#, fuzzy
@@ -7579,6 +7723,10 @@ msgstr ""
msgid "&Software Playthrough (Play new track while recording it)"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:170
+msgid "Cut Preview"
+msgstr ""
+
#: prefs/MidiIOPrefs.cpp:160
msgid "Play before cut region:"
msgstr ""
@@ -7587,6 +7735,10 @@ msgstr ""
msgid "Play after cut region:"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:183
+msgid "Latency"
+msgstr ""
+
#: prefs/AudioIOPrefs.cpp:189
msgid "Audio to buffer:"
msgstr ""
@@ -7599,6 +7751,18 @@ msgstr ""
msgid "Seek Time"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:200
+msgid "Short period:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:202
+msgid "Long period:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:162
+msgid "Effects Preview"
+msgstr ""
+
#: prefs/MidiIOPrefs.cpp:196
msgid "Play when previewing:"
msgstr ""
@@ -7813,10 +7977,62 @@ msgstr "Ctrl-muiswieletjie"
msgid "Zoom in or out"
msgstr "Zoem in of uit"
+#: prefs/AudioIOPrefs.cpp:165
+msgid "Length of preview:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:173
+msgid "Preview before cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:175
+msgid "Preview after cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:197
+msgid "Seek Time when playing"
+msgstr ""
+
#: prefs/PrefsDialog.cpp:89
msgid "Audacity Preferences"
msgstr "Audacity-voorkeure"
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:84
+msgid "When saving a project that depends on other audio files"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:151
+msgid "Always © all audio into project (safest)"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:152
+msgid "&Do not copy any audio"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:87
+msgid "&Ask user"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr "minute"
+
#: prefs/QualityPrefs.cpp:73
msgid "Rectangle"
msgstr "Reghoek"
@@ -7841,44 +8057,45 @@ msgstr "Verstek monsterfrekwensie:"
msgid "Default Sample Format:"
msgstr "Verstek monsterformaat:"
-#: prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "Intydse monstertempo-omsetting:"
-
-#: prefs/QualityPrefs.cpp:139
-msgid "High-quality sample rate converter:"
-msgstr "Hoëkwaliteit-monstertempo-omskakeling:"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:142
-msgid "Real-time dither:"
-msgstr "Intydse afronding:"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+msgid "Sample Rate Converter:"
+msgstr ""
-#: prefs/QualityPrefs.cpp:145
-msgid "High-quality dither:"
-msgstr "Hoëkwaliteit-afronding:"
+#: prefs/QualityPrefs.cpp:164
+msgid "Dither"
+msgstr ""
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
msgstr ""
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
+#: prefs/AudioIOPrefs.cpp:149
+msgid "Overdub: &Play other tracks while recording new one"
msgstr ""
-#: prefs/QualityPrefs.cpp:164
-msgid "Dither"
+#: prefs/AudioIOPrefs.cpp:150
+#, fuzzy
+msgid "&Hardware Playthrough: Play new track while recording it"
+msgstr "Speel opname regstreeks tydens opname d.m.v. hardeware"
+
+#: prefs/AudioIOPrefs.cpp:157
+msgid "&Software Playthrough: Play new track while recording or monitoring"
msgstr ""
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
+#: prefs/AudioIOPrefs.cpp:160
+msgid "(uncheck when recording \"stereo mix\")"
msgstr ""
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
msgstr ""
-#: prefs/SmartRecordPrefs.cpp:54 prefs/SmartRecordPrefs.cpp:55
-msgid "Smart Recording"
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
msgstr ""
#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
@@ -7893,19 +8110,55 @@ msgstr ""
msgid "Spectrograms"
msgstr "Spektrogramme"
-#: prefs/SpectrumPrefs.cpp:72
-msgid "FFT Size"
-msgstr "FFT-grootte"
-
#: prefs/SpectrumPrefs.cpp:75
#, fuzzy
msgid "8 - most wideband"
msgstr "64 - wyeband"
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:80
msgid "256 - default"
msgstr "256 - standaard"
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:107
msgid "32768 - most narrowband"
msgstr ""
@@ -7914,22 +8167,26 @@ msgstr ""
msgid "4096 - most narrowband"
msgstr "4096 - smalband"
-#: prefs/SpectrumPrefs.cpp:90
-msgid "Window type:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:93
+msgid "Window type"
msgstr ""
#: prefs/SpectrumPrefs.cpp:125
msgid "FFT Skip Points"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:96
-msgid "Display"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:100
-msgid "&Grayscale"
-msgstr "&Grysskaal"
-
#: prefs/SpectrumPrefs.cpp:103
msgid "Minimum Frequency (Hz):"
msgstr "Minimum frekwensie (Hz):"
@@ -7938,16 +8195,16 @@ msgstr "Minimum frekwensie (Hz):"
msgid "Maximum Frequency (Hz):"
msgstr "Maksimum frekwensie (Hz):"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
msgstr ""
#: prefs/SpectrumPrefs.cpp:165
@@ -7958,6 +8215,14 @@ msgstr ""
msgid "Max. Number of Notes (1..128):"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:161
+msgid "&Find Notes"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Quantize Notes"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:134
msgid "The maximum frequency must be an integer"
msgstr "Die maksimum frekwensie moet 'n heelgetal wees"
@@ -7974,18 +8239,57 @@ msgstr "Die minimum frekwensie moet 'n heelgetal wees"
msgid "Minimum frequency must be at least 0 Hz"
msgstr "Minimum frekwensie moet ten minste 0 Hz wees"
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:226 prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
+#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:230
+msgid "The maximum number of notes must be in the range 1..128"
msgstr ""
#: prefs/ThemePrefs.cpp:62 prefs/ThemePrefs.cpp:63
msgid "Theme"
msgstr "Tema"
+#: prefs/ThemePrefs.cpp:126
+msgid "Info"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:91
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#. i18n-hint: && in here is an escape character to get a single & on screen,
#. * so keep it as is
#: prefs/ThemePrefs.cpp:93
@@ -8016,78 +8320,94 @@ msgstr ""
msgid "Load Files"
msgstr ""
-#: prefs/ThemePrefs.cpp:126
-msgid "Info"
+#: prefs/GUIPrefs.cpp:50
+msgid "Simple"
msgstr ""
-#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
+#: prefs/GUIPrefs.cpp:72
+msgid "&Update display while playing"
msgstr ""
-#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
+#: prefs/GUIPrefs.cpp:80
+msgid "Automatically &fit tracks vertically zoomed"
msgstr ""
-#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
+#: prefs/TracksPrefs.cpp:88
+msgid "Default View Mode:"
msgstr ""
-#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:88
+msgid "&Select all audio in project, if none selected"
msgstr ""
-#: toolbars/ControlToolBar.cpp:174
-msgid "Pause"
-msgstr "Pouseer"
+#: prefs/GUIPrefs.cpp:96
+msgid "Enable cut &lines"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:177
-msgid "Play"
-msgstr "Speel"
+#: prefs/GUIPrefs.cpp:98
+msgid "Enable &dragging of left and right selection edges"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
+#: prefs/GUIPrefs.cpp:104
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
msgstr ""
-#: toolbars/ControlToolBar.cpp:182
-msgid "Stop"
-msgstr "Stop"
+#: prefs/GUIPrefs.cpp:86
+msgid "Editing a &clip can move other clips"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:185
-msgid "Skip to Start"
-msgstr "Spring na begin"
+#: prefs/GUIPrefs.cpp:168
+msgid "Solo Button:"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:188
-msgid "Skip to End"
-msgstr "Spring na einde"
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:192
-msgid "Record (Shift for Append Record)"
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
msgstr ""
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr ""
+
+#: Menus.cpp:774
+msgid "Pause"
+msgstr "Pouseer"
+
+#: Menus.cpp:773
+msgid "Stop"
+msgstr "Stop"
+
#: toolbars/ControlToolBar.cpp:194
msgid "Clean Speech"
msgstr ""
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play (Shift for Loop Play)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:192
+msgid "Record (Shift for Append Record)"
+msgstr ""
+
#: toolbars/ControlToolBar.cpp:530 toolbars/ControlToolBar.cpp:839
msgid "Error while opening sound device. "
msgstr ""
@@ -8128,29 +8448,21 @@ msgstr "Zoem in"
msgid "Zoom Out"
msgstr "Zoem uit"
-#: toolbars/EditToolBar.cpp:156
-msgid "Zoom Toggle"
-msgstr "Zoomskakelaar"
-
-#: toolbars/EditToolBar.cpp:160
-msgid "Fit Selection"
-msgstr ""
-
#: toolbars/EditToolBar.cpp:160
msgid "Fit selection in window"
msgstr "Pas seleksie in venster"
#: toolbars/EditToolBar.cpp:162
-msgid "Fit Project"
-msgstr "Pas projek"
-
-#: toolbars/EditToolBar.cpp:162
msgid "Fit project in window"
msgstr "Pas projek in venster"
-#: toolbars/MeterToolBar.cpp:50
-msgid "Meter"
-msgstr "Meter"
+#: toolbars/EditToolBar.cpp:160
+msgid "Fit Selection"
+msgstr ""
+
+#: toolbars/EditToolBar.cpp:162
+msgid "Fit Project"
+msgstr "Pas projek"
#: toolbars/MeterToolBar.cpp:80
msgid "Play Meter"
@@ -8196,6 +8508,14 @@ msgstr ""
msgid "Input Source"
msgstr ""
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:80
msgid "Selection"
msgstr ""
@@ -8240,7 +8560,6 @@ msgid "Selection End"
msgstr "na einde van seleksie"
#: toolbars/ToolBar.cpp:97
-#, c-format
#, fuzzy
msgid "Audacity %s ToolBar"
msgstr "Audacity-redigeerbalk"
@@ -8277,31 +8596,6 @@ msgstr "Links=Inzoem, Regs=Uitzoem, Middel=Normaal"
msgid "Click and drag to move a track in time"
msgstr "Klik en sleep om 'n baan in tyd te skuif."
-#: toolbars/ToolsToolBar.cpp:90
-#, fuzzy
-msgid "Tools"
-msgstr "Funksieknop"
-
-#: toolbars/ToolsToolBar.cpp:147 toolbars/ToolsToolBar.cpp:182
-msgid "Selection Tool"
-msgstr "Merker"
-
-#: toolbars/ToolsToolBar.cpp:148
-msgid "Envelope Tool"
-msgstr "Omhullingtang"
-
-#: toolbars/ToolsToolBar.cpp:149 toolbars/ToolsToolBar.cpp:183
-msgid "Time Shift Tool"
-msgstr "Verskuif tyd"
-
-#: toolbars/ToolsToolBar.cpp:150 toolbars/ToolsToolBar.cpp:185
-msgid "Zoom Tool"
-msgstr "Vergrootglas"
-
-#: toolbars/ToolsToolBar.cpp:151 toolbars/ToolsToolBar.cpp:184
-msgid "Draw Tool"
-msgstr "Tekenpen"
-
#: toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
msgstr "Kombinasiemodus"
@@ -8310,23 +8604,10 @@ msgstr "Kombinasiemodus"
msgid "Slide Tool"
msgstr ""
-#: toolbars/ToolsToolBar.cpp:187
-#, fuzzy
-msgid "Multi Tool"
-msgstr "Kombinasiewerktuig\tF6"
-
-#: toolbars/TranscriptionToolBar.cpp:82
-msgid "Transcription"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:163
msgid "Play at selected speed"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:164
-msgid "Play-at-speed"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:170 toolbars/TranscriptionToolBar.cpp:175
msgid "Playback Speed"
msgstr ""
@@ -8335,74 +8616,38 @@ msgstr ""
msgid "Adjust left selection to next onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:181
-msgid "Left-to-On"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:183
msgid "Adjust right selection to previous offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:184
-msgid "Right-to-Off"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:186
msgid "Adjust left selection to next offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:187
-msgid "Left-to-Off"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:189
msgid "Adjust right selection to previous onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:190
-msgid "Right-to-On"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:192
msgid "Select region of sound around cursor"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:193
-msgid "Select-Sound"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:195
msgid "Select region of silence around cursor"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:196
-msgid "Select-Silence"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:198
msgid "Automatically make labels from words"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:199
-msgid "Make Labels"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:201
msgid "Add label at selection"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:202
-msgid "Add Label"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:204
msgid "Calibrate voicekey"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:205
-msgid "Calibrate"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:209
msgid "Adjust Sensitivity"
msgstr ""
@@ -8435,6 +8680,46 @@ msgstr ""
msgid "Key type"
msgstr ""
+#: toolbars/TranscriptionToolBar.cpp:164
+msgid "Play-at-speed"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:181
+msgid "Left-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:184
+msgid "Right-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:187
+msgid "Left-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:190
+msgid "Right-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:193
+msgid "Select-Sound"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:196
+msgid "Select-Silence"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:199
+msgid "Make Labels"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:202
+msgid "Add Label"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:205
+msgid "Calibrate"
+msgstr ""
+
#: widgets/AButton.cpp:302
msgid " (disabled)"
msgstr " (gedeaktiveer)"
@@ -8740,8 +9025,19 @@ msgid "Error: %hs at line %lu"
msgstr ""
#: xml/XMLFileReader.cpp:79
-#, c-format
#, fuzzy
msgid "Could not load file: \"%s\""
msgstr "Kon nie lêer \"%s\" open nie."
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
+
diff --git a/locale/ar.po b/locale/ar.po
index 0007466..5084a4b 100644
--- a/locale/ar.po
+++ b/locale/ar.po
@@ -30,11 +30,11 @@ msgid "Audacity is a free program written by a team of volunteer <a href=\"http:
msgstr ""
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#. i18n-hint: The translation of "translator_credits" will appear
@@ -86,7 +86,7 @@ msgid "Special thanks:"
msgstr "Ø´ÙØ± خاص:"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
msgstr ""
#: AboutDialog.cpp:254
@@ -227,11 +227,21 @@ msgstr "عداد اÙÙ
دخÙ"
msgid "Output Meter"
msgstr "عداد اÙÙ
خرج"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
+#: Menus.cpp:164
+msgid "&New"
+msgstr "&Ø¬Ø¯ÙØ¯"
+
+#: Menus.cpp:166
+msgid "&Open..."
+msgstr "&ÙØªØ..."
+
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
+
#: AudacityApp.cpp:751 Menus.cpp:478
-msgid "&Preferences...\tCtrl+,"
-msgstr "&ØªÙØ¶ÙÙØ§Øª...\tCtrl+Ø"
+msgid "&Preferences..."
+msgstr "&ØªÙØ¶ÙÙØ§Øª..."
#: AudacityApp.cpp:833 AudacityApp.cpp:910
#, c-format
@@ -355,18 +365,16 @@ msgstr "خطأ: "
msgid "Error Initializing Audio"
msgstr "خطأ Ù٠تÙÙØ¦Ø© ÙØ¸Ø§Ù
Ø§ÙØµÙت"
+#: AudioIO.cpp:1225
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
+"Audacity has brought it back to start at zero.\n"
+"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
+msgstr ""
+
#: AudioIO.cpp:1208
msgid "Latency problem"
msgstr "Ù
Ø´ÙÙ Ù٠اÙÙÙ
ÙÙ"
-#: AudioIO.cpp:1208
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
-"Audacity has brought it back to start at zero.\n"
-"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
-msgstr "إعداد اÙÙÙ
Ù٠تسبب ÙÙ Ø¥Ø®ÙØ§Ø¡ Ø§ÙØµÙت اÙÙ
Ø³Ø¬Ù ÙØ¨Ù Ø§ÙØµÙر.\n"
-"ÙØ§Ù
Ø¨Ø±ÙØ§Ù
ج Ø¬ÙØ±Ø£Ø© بإرجاع٠ÙÙØ¨Ø¯Ø£ Ù
Ù Ø§ÙØµÙر.\n"
-"ربÙ
ا ØªØØªØ§Ø¬ ÙØ§Ø³ØªØ®Ø¯Ø§Ù
أداة ØªØØ±Ù٠اÙÙÙØª (<---> Ø£Ù F5) ÙØ³ØØ¨ اÙÙ
سار ÙÙÙ
ÙØ§Ù Ø§ÙØµØÙØ."
-
#: AutoRecovery.cpp:54
msgid "Automatic Crash Recovery"
msgstr "استعادة تÙÙØ§Ø¦ÙØ© بعد Ø§ÙØªØØ·Ù
"
@@ -591,8 +599,8 @@ msgstr "&Ø³ÙØ³ÙØ© (ÙÙØ±Ø© Ù
Ø²Ø¯ÙØ¬Ø© أ٠ضغط عÙ٠زر اÙÙ
ساÙ
#. i18n-hint: This is the number of the command in the list
#: BatchProcessDialog.cpp:453
-msgid "No"
-msgstr "رÙÙ
"
+msgid "Num"
+msgstr ""
#: BatchProcessDialog.cpp:459
msgid "&Insert"
@@ -932,11 +940,11 @@ msgstr "Ù
ستطÙÙ"
msgid "FFmpeg support not compiled in"
msgstr ""
-#: FFmpeg.cpp:101
+#: FFmpeg.cpp:103
msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
#: FFmpeg.cpp:104
@@ -994,11 +1002,12 @@ msgstr ""
msgid "FFmpeg not found"
msgstr ""
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
#: FFmpeg.h:109
@@ -1083,10 +1092,23 @@ msgstr "ت&ØµØ¯ÙØ±..."
msgid "Export"
msgstr "ØªØµØ¯ÙØ±"
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
#: FreqWindow.cpp:209 widgets/ErrorDialog.cpp:159
msgid "Close"
msgstr "Ø¥ØºÙØ§Ù"
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr ""
+
#: FreqWindow.cpp:272 FreqWindow.cpp:402 effects/AutoDuck.cpp:489
#: effects/AutoDuck.cpp:523 effects/AutoDuck.cpp:791
#: effects/Compressor.cpp:352 effects/Compressor.cpp:360
@@ -1104,6 +1126,15 @@ msgstr "Ø¯ÙØ³ÙبÙ"
msgid "Hz"
msgstr "ÙØ±ØªØ²"
+#: Menus.cpp:3425
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "ÙØ±Ø³Ù
Ù
ÙØÙÙ Ø§ÙØ·ÙÙØ ÙØ¬Ø¨ Ø£Ù ÙÙÙÙ ÙÙ٠اÙÙ
سارات اÙÙ
ختارة ÙÙØ³ Ù
Ø¹Ø¯Ù Ø§ÙØ¹ÙÙÙØ©."
+
+#: Menus.cpp:3451
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "Ø§ÙØ¬Ø²Ø¡ اÙÙ
ختار Ù
Ù Ø§ÙØµÙت ÙØ¨Ùر جدا. سÙÙ ØªÙØÙÙÙ Ù
ÙÙ Ø§ÙØ«ÙاÙÙ %.1f اﻷÙÙÙ ÙÙØ·."
+
#: FreqWindow.cpp:386
msgid "Not enough data selected."
msgstr "Ø§ÙØ¨ÙØ§ÙØ§Øª اÙÙ
ختارة ØºÙØ± ÙØ§ÙÙØ©."
@@ -1118,7 +1149,6 @@ msgid "Cursor: %d Hz (%s) = %d dB Peak: %d Hz (%s) = %.1f dB"
msgstr "اÙÙ
ؤشر: %d ÙØ±ØªØ² (%s) = %d Ø¯ÙØ³ÙØ¨Ù Ø§ÙØ°Ø±ÙØ©: %d ÙØ±ØªØ² (%s) = %.1f Ø¯ÙØ³ÙبÙ"
#: FreqWindow.cpp:788
-#, c-format
#, fuzzy
msgid "Cursor: %.4f sec (%d Hz) (%s) = %f, Peak: %.4f sec (%d Hz) (%s) = %.3f"
msgstr "اÙÙ
ؤشر: %.4f ثا (%d ÙØ±ØªØ²) (%s) = %fØ Ø§ÙØ°Ø±ÙØ©: %.4f ثا (%d ÙØ±ØªØ²) (%s) = %.3f"
@@ -1144,6 +1174,21 @@ msgstr "Ø§ÙØªØ±Ø¯Ø¯ (ÙØ±ØªØ²)\t اÙÙ
ستÙÙ (Ø¯ÙØ³ÙبÙ)"
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "تخÙÙ (ثاÙÙØ©)\tتردد (ÙØ±ØªØ²)\tÙ
ستÙÙ"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr ""
+
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr ""
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr "ÙÙ [[welcome|شاشة Ø§ÙØªØ±ØÙب]]"
@@ -1221,7 +1266,8 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr "<p><b>ÙÙØªØ³Ø¬ÙÙ: </b> Ø¹Ø±Ù Ø¬ÙØ§Ø² Ø§ÙØªØ³Ø¬ÙÙ Ù Ù
صدر اﻹدخا٠٠عد٠Ù
ستÙ٠اﻹدخا٠ثÙ
اضغط عÙ٠زر Ø§ÙØªØ³Ø¬ÙÙ . </b></p><p> 1) [[inputdevice|إعداد Ø¬ÙØ§Ø² Ø§ÙØªØ³Ø¬ÙÙ]] Ù
Ù Ø®ÙØ§Ù <i>ÙØ³Ø§Ù Ù
ÙØ§Ùذ Ø§ÙØµÙت ÙÙ Ø§ÙØªÙضÙÙØ§Øª</i> Ø£Ù Ù
Ù Ø®ÙØ§Ù <i>Ø´Ø±ÙØ· Ø§ï»·Ø¬ÙØ²Ø©</i>. ØªÙØ¶ÙÙØ§Øª Ù
ÙØ§Ùذ Ø§ÙØµÙت تسÙ
Ø ÙÙ Ø¨Ø§Ø®ØªÙØ§Ø± Ø§ÙØªØ³Ø¬ÙÙ Ø§ÙØ«Ùائ٠إذا ÙÙØª ØªØ±ÙØ¯ ذÙÙ. <br> 2) [[inputsource|إعداد Ù
صدر اﻹدخاÙ]] ÙØ°ÙÙ Ø§ÙØ¬Ùاز (Ù
Ø«ÙØ§ اÙÙ
ÙÙØ±ÙÙÙÙ Ø£Ù Ø§ÙØ®Ø·-Ø§ÙØ¯Ø§Ø®Ù) Ù
Ù Ø®ÙØ§Ù اÙÙØ§Ø¦Ù
Ø© اÙÙ
ÙØ³Ø¯ÙØ© ÙÙ <i>Ø´Ø±ÙØ· اÙÙ
ازج</i>Ø Ø£Ù (عÙ٠بعض Ø§ï»·ÙØ¸Ù
Ø©) Ù
Ù Ø®ÙØ§Ù Ø¬ÙØ§Ø² Ø§ÙØªØ³Ø¬ÙÙ Ø¹ÙØ¯ <i>ÙØ³Ø§Ù Ù
ÙØ§Ùذ Ø§ÙØµÙت ÙÙ Ø§ÙØªÙضÙÙØ§Øª</i> Ø£Ù Ù
Ù Ø®ÙØ§Ù <i>Ø´Ø±ÙØ· Ø§ï»·Ø¬ÙØ²Ø©</i>.<br> 3) [[inputlevel|تعدÙÙ Ù
ستÙ٠اﻹدخاÙ]] باستعÙ
ا٠اÙÙ
تزØÙ٠اﻷÙÙ
Ù ÙÙ <i>Ø´Ø±ÙØ· اÙÙ
ازج</i>. تصØÙØ Ø§ÙÙ
ستÙÙ ÙØ¨Ù بدأ Ø§ÙØªØ³Ø¬ÙÙ Ø¶Ø±ÙØ±Ù ÙØªØ¬Ùب Ø§ÙØ¶Ø¬Ùج Ù Ø§ÙØªØ´ÙÙØ§Øª. </p><p> ÙÙÙ
Ø²ÙØ¯ Ù
٠اÙÙ
ساعدة Ø§ÙØ¸Ø± <a href=\"http://audacity.sourceforge.net/help/faq\">Ø§ÙØ£Ø³Ø¦ÙØ© اÙÙ
ØªÙØ±Ø±Ø©</a> ØÙÙ \"Ø§ÙØªØ³Ø¬ÙÙ\"Ø Ù ÙØ°ÙÙ Ø§ÙØ¯Ø±Ø³ Ø§ÙØªØ¹ÙÙÙ
Ù <a href=\"http://www.audacityteam.org/manual/index.php?title=Tutorial_-_Your_First_Recording\">تسجÙÙ٠اﻷÙÙ</a> ÙÙ <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\"> Ø§ÙØ¯ÙÙÙ </a>Ø Ù Ø£ÙØ¶Ø§ ØµÙØØ§Øª اÙÙÙÙÙ [[wiki:Recording_Tips|ÙØµØ§Ø¦Ø ØÙÙ Ø§ÙØªØ³Ø¬ÙÙ]] Ù [[wiki:Troubleshooting_Recordings|ØÙ Ù
شاÙÙ Ø§ÙØªØ³Ø¬ÙÙ]]. </p><br><br>"
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+#, fuzzy
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
msgstr "<p>Ø¬ÙØ§Ø² اﻹدخا٠ÙÙ Ø§ÙØ¬Ùاز Ø§ÙØµÙت Ø§ÙØØ§Ù٠عÙÙ ØØ§Ø³ÙØ¨Ù Ø§ÙØ°Ù تسج٠عÙÙÙ.ÙØªÙ
Ø§Ø®ØªÙØ§Ø± \"Ø¬ÙØ§Ø² Ø§ÙØªØ³Ø¬ÙÙ\" Ù
Ù Ø®ÙØ§Ù <i> ÙØ³Ø§Ù Ù
ÙØ§Ùذ Ø§ÙØµÙت ÙÙ Ø§ÙØªÙضÙÙØ§Øª </i>Ø Ø¹ÙÙ ÙÙÙÙÙØ³ Ù ÙÙÙØ¯Ùز تÙÙÙ Ø§ÙØªÙضÙÙØ§Øª Ù٠آخر ÙØ§Ø¦Ù
Ø©<i> Ø§ÙØªØØ±Ùر</i>. عÙ٠اÙÙ
Ø§ÙØ ستجد Ø§ÙØªÙضÙÙØ§Øª Ù٠اÙÙØ§Ø¦Ù
Ø© <i>Ø¬ÙØ±Ø£Ø©</i>. ÙÙ
ÙÙÙ Ø£ÙØ¶Ø§ Ø§Ø®ØªÙØ§Ø± Ø¬ÙØ§Ø² Ø§ÙØªØ³Ø¬Ù٠بشÙÙ Ù
ÙØ§Ø¦Ù
Ù
Ù Ø®ÙØ§Ù <i>Ø´Ø±ÙØ· Ø§ï»·Ø¬ÙØ²Ø©</i> Ø§ÙØ°Ù ÙÙ
ÙÙ ØªÙØ¹ÙÙÙ Ù
٠اÙÙØ§Ø¦Ù
Ø© <i>عرض < أشرطة Ø§ÙØ£Ø¯Ùات...</i>. </p><p> ÙÙ Ø§ÙØØ§ÙØ© Ø§ÙØ§ÙØªØ±Ø§Ø¶ÙØ©Ø Ø³ÙØ®ØªØ§Ø± Ø¬ÙØ±Ø£Ø© Ø¬ÙØ§Ø² Ø§ÙØµÙت Ø§ÙØ°Ù ÙØ³ØªØ¹Ù
Ù٠اÙÙØ¸Ø§Ù
(Ù Ù٠عادة Ø¬ÙØ§Ø² Ø§ÙØµÙت اÙÙ
ÙØ¯Ù
ÙØ¬ ÙÙ Ø§ÙØØ§Ø³ÙØ¨)Ø ÙØ°Ø§ ÙÙ Ø§ÙØºØ§Ùب ÙØ§ ØªØØªØ§Ø¬ Ø¥Ù٠تغÙÙØ± Ø¬ÙØ§Ø² اﻹدخاÙ.عÙÙ ÙÙÙØ¯Ùز ÙÙ
ÙÙ Ø§Ø®ØªÙØ§Ø± Ø§ÙØ¬Ùاز Ø§ÙØØ§ÙÙ ÙÙÙØ¸Ø§Ù
ÙÙ\"ÙÙ
ÙØ¸Ù
ØµÙØª Ù
ÙÙØ±ÙسÙÙØª\". إذا ÙÙØª تسج٠Ù
Ù Ø¬ÙØ§Ø² ÙÙ.أس.ب٠خارج٠Ù
Ø«Ù ÙØ±Øµ Ø¯ÙØ§Ø± ÙÙ.أس.ب٠أ٠Ù
Ù Ø¬ÙØ§Ø² ÙØ§ÙØ±ÙØ§ÙØ±Ø ÙÙ
Ø¨Ø§Ø®ØªÙØ§Ø±Ù باسÙ
Ù ÙØ¬Ùاز تسجÙ٠بعد Ø±Ø¨Ø·Ù Ø¨Ø§ÙØØ§Ø³ÙØ¨. </p><p> Ø¹ÙØ¯Ø© Ø¥ÙÙ [[record|تسجÙÙ Ø§ÙØµÙت]] <br></p>"
#: HelpText.cpp:244
@@ -1245,7 +1291,8 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr "ÙÙØ§Ø³ØªÙ
اع ÙØ¹Ù
Ù٠عÙ٠براÙ
ج ÙØ³Ø§Ø¦Ø· Ù
تعددة Ø£Ø®Ø±ÙØ ÙÙ
Ø¨ØªØµØ¯ÙØ±Ù Ø¥ÙÙ Ù
ÙÙ ØµÙØªÙ Ù
Ù ÙÙØ¹ ÙØ§Ù٠أ٠أÙ
.بÙ.3 (بعض Ø§ÙØµÙغ [[wma-proprietary|ØºÙØ± Ù
دعÙÙ
Ø©]]).[[save|ØÙظ Ù
Ø´Ø±ÙØ¹ Ø¬ÙØ±Ø£Ø©]] ÙÙÙØªØ¬ Ù
ÙÙ Ù
Ø´Ø±ÙØ¹ (Ù
ع Ù
Ø¬ÙØ¯ _data تابع ÙÙ) ÙØØªÙ٠عÙÙ Ù٠اÙÙ
سارات Ø§ÙØªÙ ØØ±Ø±ØªÙا بØÙØ« ÙÙ
ÙÙÙ Ø§ÙØ±Ø¬Ùع ÙÙØ¹Ù
٠عÙÙÙØ§ ÙØ§ØÙا. ÙÙÙ Ø§ÙØ¨Ø±Ø§Ù
ج Ø§ï»·Ø®Ø±Ù ÙØ§ ØªØ³ØªØ·ÙØ¹ ÙØ±Ø§Ø¡Ø© Ù
ÙÙØ§Øª Ù
Ø´Ø§Ø±ÙØ¹ Ø¬ÙØ±Ø£Ø©. </p><p> ÙØªØµØ¯Ùر اÙÙ
Ø´Ø±ÙØ¹Ø اÙÙØ± عÙÙ <i> Ù
ÙÙ < ØªØµØ¯ÙØ±</i> Ø«Ù
اختر ØµÙØºØ© Ù
ÙÙ Ø§ÙØªØµØ¯Ùر Ø§ÙØªÙ ØªØ±ÙØ¯Ùا Ù
٠اÙÙØ§Ø¦Ù
Ø© اÙÙ
ÙØ³Ø¯ÙØ© \"ØÙظ ÙÙ\". ÙÙ [[burncd|ÙØ³Ø® Ø§ÙØµÙت Ø¥ÙÙ ÙØ±Øµ Ù
Ø¶ØºÙØ·]] ÙÙ
Ù٠سÙ
اع٠عÙÙ ÙØ§Ø±Ø¦ Ø£ÙØ±Ø§Øµ Ù
ستÙ٠اختر ØµÙØºØ© ÙØ§Ù٠أ٠آÙÙ. ÙÙØªØµØ¯Ùر Ø¨ØµÙØºØ© Ø£Ù
.بÙ.3 ÙØ¬Ø¨ ØªØ«Ø¨ÙØª [[wiki:Lame_Installation|Ù
Ø´ÙØ± ÙØ§ÙÙ
]]. </p><p> اﻷÙ
ر <i>Ù
ÙÙ < ØªØµØ¯ÙØ± Ø§ÙØ§Ø®ØªÙار</i> ÙÙØªØµØ± عÙÙ ØªØµØ¯ÙØ± اÙÙ
ÙØ·ÙØ© اÙÙ
ختارة Ù
Ù Ø§ÙØµÙت ÙÙØ·. استعÙ
Ù <i>Ù
ÙÙ < ØªØµØ¯ÙØ± Ù
تعدد</i> ÙØªØµØ¯Ùر عدة Ù
ÙÙØ§Øª ÙÙ ÙÙØ³ اÙÙÙØªØ Ø³ÙØ§Ø¡Ø§ ÙÙØ¶Ø¹ ÙÙ Ù
سار ØµÙØªÙ ÙÙ Ù
ÙÙ ÙÙØØ¯Ù Ø£Ù ÙÙØ¶Ø¹ ÙÙ Ù
ÙØ·ÙØ© Ù
ÙØ¹ÙÙÙ
Ø© Ù
Ù Ù
ÙØ§Ø·Ù Ù
سار ÙØ§ØØ¯ ÙÙ Ù
ÙÙ ÙÙØØ¯ÙØ§. اﻷÙ
ر <i>Ù
سارات < Ø¥Ø¶Ø§ÙØ© Ø¹ÙØ§Ù
Ø© عÙÙ Ø§ÙØ§Ø®ØªÙار</i> ÙØ³Ù
Ø ÙÙ [[wiki:Splitting_recordings_into_separate_tracks|Ø¨ØªÙØ³ÙÙ
Ù
سارات]] Ø£ÙØ¨ÙÙ
Ù
عÙÙÙØªØµØ¯ÙØ±ÙØ§ ÙÙ Ù
ÙÙØ§Øª Ù
ÙÙØµÙØ©. </p><br><br>"
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+#, fuzzy
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
msgstr "<p>ÙØ§ ÙØ³ØªØ·Ùع Ø¬ÙØ±Ø£Ø© [[play|ÙØ±Ø§Ø¡Ø©]] Ø£Ù [[export|ØªØµØ¯ÙØ±]] ØµÙØº اÙÙ
ÙÙØ§Øª <b>دابÙÙÙ.Ø£Ù
.Ø¢ÙØ رÙÙ Ø£ÙØ¯ÙÙØ Ø´ÙØ±ØªÙ (SHN)Ø</b> Ø£Ù Ø£ØºÙØ¨ Ø§ÙØµÙغ Ø§ÙØ®Ø§ØµØ© Ø§ï»·Ø®Ø±ÙØ بسبب اÙÙÙÙØ¯ Ø§ÙØªÙ ØªØ¶Ø¹ÙØ§ Ø§ÙØ±Ùخص ٠براءات Ø§ÙØ§Ø®ØªØ±Ø§Ø¹. عÙ٠اÙÙ
Ø§ÙØ ÙÙ
ÙÙÙ Ø§Ø³ØªÙØ±Ø§Ø¯ Ù
ÙÙØ§Øª <b>Ø¢Ù.Ø¢Ù.سÙ</b> Ù
ث٠<b>Ø£Ù
.4.Ø¢Ù</b> إذا ÙÙ
تÙÙ Ù
ØÙ
ÙØ©. بعض Ø§ÙØµÙغ اÙÙ
ÙØªÙØØ© ÙÙØ³Øª Ù
دعÙÙ
Ø© ÙÙ Ø¬ÙØ±Ø£Ø© ÙØØ¯ Ø§ÙØ¢ÙØ Ù
ÙÙØ§ <b>Ø£Ù٠سبÙÙØ³</b> Ù <b> Ù
ÙÙØ²Ø¨Ø§Ù</b>. <b>ÙØ§ ÙÙ
ÙÙ</b> Ø£ÙØ¶Ø§ Ø§Ø³ØªÙØ±Ø§Ø¯ اÙÙ
ÙÙØ§Øª اÙÙ
ØÙ
ÙØ© بأ٠ÙÙØ¹ Ù
٠إدارة Ø§ÙØÙÙÙ Ø§ÙØ±ÙÙ
ÙØ© (دÙ.أر.Ø£Ù
)Ø Ø¨Ù
ا ÙÙÙØ§ اÙÙØ«Ùر Ù
٠اÙÙ
ÙÙØ§Øª اÙÙ
باعة عÙÙ Ø§ÙØ§Ùترت Ù
Ø«Ù Ø¢ÙØªÙÙÙØ² Ø£Ù ÙØ§Ø¨Ø³ØªØ±. </p><p> إذا ÙÙ
تستطع Ø§Ø³ØªÙØ±Ø§Ø¯ Ù
ÙÙÙ ÙÙ Ø¬ÙØ±Ø£Ø©Ø ØØ§Ù٠تØÙÙÙ٠إÙÙ ØµÙØºØ© ÙØ§Ù٠أ٠آÙ٠إذا ÙÙ
ÙÙÙ Ù
ØÙ
ÙØ§ Ø¨Ø§ÙØÙÙÙ Ø§ÙØ±ÙÙ
ÙØ©Ø ٠ذÙ٠باستخداÙ
Ø¢ÙØªÙÙÙØ² Ø£Ù <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">Ø³ÙØ¨Ø±</a>. إذا ÙØ§Ù اÙÙ
ÙÙ Ù
ØÙ
ÙØ§ Ø¨Ø§ÙØÙÙÙ Ø§ÙØ±ÙÙ
ÙØ©Ø ÙÙ
Ø¨ÙØ³Ø®Ù Ø¥ÙÙ ÙØ±Øµ Ù
Ø¶ØºÙØ· ØµÙØªÙ باستخداÙ
Ø§ÙØ¨Ø±ÙاÙ
ج اÙÙ
ÙØ±Ø®Øµ ÙÙØ±Ø§Ø¡ØªÙØ Ø«Ù
استخرج Ù
سار اÙÙØ±Øµ اÙÙ
Ø¶ØºÙØ· Ø¥ÙÙ ÙØ§Ù٠أ٠آÙ٠باستعÙ
Ø§Ù Ø¢ÙØªÙÙÙØ² Ø£Ù <a href=\"http://cdexos.sourceforge.net/?q=download\">Ø³ÙØ¯ÙØ§ÙØ³</a>(عÙ٠اÙÙÙÙØ¯Ùز) Ø£Ù ÙÙÙØ¯Ùز Ù
ÙØ¯Ùا Ø¨ÙØ§Ùر 11. ÙÙ
ÙÙÙ Ø£ÙØ¶Ø§ <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">تسجÙÙ</a> اÙÙØ±Øµ اÙÙ
Ø¶ØºÙØ· عÙÙ ØØ§Ø³ÙبÙ.<i> ÙØªØµØ¯Ùر Ø§ÙØµÙت Ø¥ÙÙ ØµÙØºØ© ØºÙØ± Ù
دعÙÙ
Ø©Ø ÙÙ
Ø£ÙÙØ§ Ø¨ØªØµØ¯ÙØ±Ù Ø¥ÙÙ ÙØ§Ù٠أ٠آÙÙ Ø«Ù
ØÙÙ٠إÙÙ Ø§ÙØµÙغة Ø§ÙØªÙ ØªØ±ÙØ¯Ùا باستعÙ
Ø§Ù Ø¢ÙØªÙÙÙØ² Ø£Ù <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">Ø³ÙØ¨Ø±</a>. </i></p><p>"
#: HelpText.cpp:383
@@ -1306,6 +1353,14 @@ msgstr "Ù
ÙÙØ§Ø¨Ø§Ùت"
msgid "GB"
msgstr "ÙÙÙØ§Ø¨Ø§Ùت"
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
#: LabelDialog.cpp:52
msgid "Track"
msgstr "Ù
سار"
@@ -1420,21 +1475,13 @@ msgstr "ÙØªØ Ù
Ø´Ø±ÙØ¹ Ø¬ÙØ±Ø£Ø©"
msgid "&File"
msgstr "&Ù
ÙÙ"
-#: Menus.cpp:164
-msgid "&New\tCtrl+N"
-msgstr "&Ø¬Ø¯ÙØ¯\tCtrl+N"
-
-#: Menus.cpp:166
-msgid "&Open...\tCtrl+O"
-msgstr "&ÙØªØ...\tCtrl+O"
-
#: Menus.cpp:171
-msgid "&Close\tCtrl+W"
-msgstr "&Ø¥ØºÙØ§Ù\tCtrl+W"
+msgid "&Close"
+msgstr "&Ø¥ØºÙØ§Ù"
#: Menus.cpp:174
-msgid "&Save Project\tCtrl+S"
-msgstr "ØÙ&ظ اÙÙ
Ø´Ø±ÙØ¹\tCtrl+S"
+msgid "&Save Project"
+msgstr "ØÙ&ظ اÙÙ
Ø´Ø±ÙØ¹"
#: Menus.cpp:178 Project.cpp:2690
msgid "Save Project &As..."
@@ -1457,8 +1504,8 @@ msgid "&Import"
msgstr "&Ø§Ø³ØªÙØ±Ø§Ø¯"
#: Menus.cpp:196
-msgid "&Audio...\tCtrl+Shift+I"
-msgstr "اÙ&ØµÙØª...\tCtrl+Shift+I"
+msgid "&Audio..."
+msgstr "اÙ&ØµÙØª..."
#: Menus.cpp:197
msgid "&Labels..."
@@ -1488,9 +1535,9 @@ msgstr "ØªØµØ¯ÙØ± Ù
تعÙ&دد..."
msgid "Export MIDI..."
msgstr ""
-#: Menus.cpp:247
-msgid "CleanSpeech C&hain..."
-msgstr "&Ø³ÙØ³ÙØ© Ø§ÙØ®Ø·Ø§Ø¨ اÙÙØ¸ÙÙ..."
+#: Menus.cpp:260
+msgid "Appl&y Chain..."
+msgstr "&تطبÙÙ Ø§ÙØ³ÙØ³ÙØ©..."
#: Menus.cpp:248 Menus.cpp:262
msgid "Edit C&hains..."
@@ -1504,10 +1551,6 @@ msgstr "اÙÙ
جÙ
ÙØ¹Ø§Øª اÙÙØ¨ÙÙØ© ÙÙØ®Ø·Ø§Ø¨ اÙÙØ¸ÙÙ (*.csp)|*.cs
msgid "I&mport CleanSpeech Presets..."
msgstr "اÙÙ
جÙ
ÙØ¹Ø§Øª اÙÙØ¨ÙÙØ© ÙÙØ®Ø·Ø§Ø¨ اÙÙØ¸ÙÙ (*.csp)|*.csp"
-#: Menus.cpp:260
-msgid "Appl&y Chain..."
-msgstr "&تطبÙÙ Ø§ÙØ³ÙØ³ÙØ©..."
-
#: Menus.cpp:267
msgid "&Upload File..."
msgstr "ت&ØÙ
ÙÙ Ù
ÙÙ..."
@@ -1521,72 +1564,72 @@ msgid "&Print..."
msgstr "&طباعة..."
#: Menus.cpp:287
-msgid "E&xit\tCtrl+Q"
-msgstr "&Ø®Ø±ÙØ¬\tCtrl+Q"
+msgid "E&xit"
+msgstr "&Ø®Ø±ÙØ¬"
#: Menus.cpp:295 toolbars/EditToolBar.cpp:76
msgid "&Edit"
msgstr "&ØªØØ±Ùر"
#: Menus.cpp:299
-msgid "&Undo\tCtrl+Z"
-msgstr "ت&راجع\tCtrl+Z"
+msgid "&Undo"
+msgstr "ت&راجع"
#: Menus.cpp:307 prefs/KeyConfigPrefs.cpp:369 toolbars/EditToolBar.cpp:146
msgid "&Redo"
msgstr "ت&ÙØ±Ø§Ø±"
#: Menus.cpp:320
-msgid "Cu&t\tCtrl+X"
-msgstr "Ù&ص\tCtrl+X"
+msgid "Cu&t"
+msgstr "Ù&ص"
#: Menus.cpp:324
-msgid "Spl&it Cut\tCtrl+Alt+X"
-msgstr "ت&ÙØ³ÙÙ
Ù ÙØµ\tCtrl+Alt+X"
+msgid "Spl&it Cut"
+msgstr "ت&ÙØ³ÙÙ
Ù ÙØµ"
#: Menus.cpp:325
-msgid "&Copy\tCtrl+C"
-msgstr "&ÙØ³Ø®\tCtrl+C"
+msgid "&Copy"
+msgstr "&ÙØ³Ø®"
#: Menus.cpp:329
-msgid "&Paste\tCtrl+V"
-msgstr "Ù&صÙ\tCtrl+V"
+msgid "&Paste"
+msgstr "Ù&صÙ"
#: Menus.cpp:333
-msgid "Tri&m\tCtrl+T"
-msgstr "تÙ&ÙÙÙ
\tCtrl+T"
+msgid "Tri&m"
+msgstr "تÙ&ÙÙÙ
"
#: Menus.cpp:335
-msgid "&Delete\tCtrl+K"
-msgstr "&ØØ°Ù\tCtrl+K"
+msgid "&Delete"
+msgstr "&ØØ°Ù"
#: Menus.cpp:336
-msgid "Split D&elete\tCtrl+Alt+K"
-msgstr "ØªÙØ³ÙÙ
Ù &ØØ°Ù\tCtrl+Alt+K"
+msgid "Split D&elete"
+msgstr "ØªÙØ³ÙÙ
Ù &ØØ°Ù"
#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
+msgid "Silence Audi&o"
msgstr ""
#: Menus.cpp:339
-msgid "Sp&lit\tCtrl+I"
-msgstr "ت&ÙØ³ÙÙ
\tCtrl+I"
+msgid "Sp&lit"
+msgstr "ت&ÙØ³ÙÙ
"
#: Menus.cpp:344
-msgid "Split Ne&w\tCtrl+Alt+I"
-msgstr "ØªÙØ³ÙÙ
&Ø¬Ø¯ÙØ¯\tCtrl+Alt+I"
+msgid "Split Ne&w"
+msgstr "ØªÙØ³ÙÙ
&Ø¬Ø¯ÙØ¯"
#: Menus.cpp:349
-msgid "&Join\tCtrl+J"
-msgstr "&ضÙ
Ù\tCtrl+J"
+msgid "&Join"
+msgstr "&ضÙ
Ù"
#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
+msgid "Detac&h at Silences"
msgstr ""
#: Menus.cpp:352
-msgid "Duplic&ate\tCtrl+D"
-msgstr "Ù
&Ø¶Ø§Ø¹ÙØ©\tCtrl+D"
+msgid "Duplic&ate"
+msgstr "Ù
&Ø¶Ø§Ø¹ÙØ©"
#: Menus.cpp:400 Menus.cpp:639
msgid "Stereo Trac&k to Mono"
@@ -1598,80 +1641,65 @@ msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:367
-msgid "&Cut\tAlt+X"
-msgstr "Ù&ص\tAlt+X"
+msgid "&Cut"
+msgstr "Ù&ص"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:372
-msgid "&Split Cut\tShift+Alt+X"
-msgstr "ت&ÙØ³ÙÙ
Ù ÙØµ\tShift+Alt+X"
+msgid "&Split Cut"
+msgstr "ت&ÙØ³ÙÙ
Ù ÙØµ"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:377
-msgid "Co&py\tShift+Alt+C"
-msgstr "&ÙØ³Ø®\tShift+Alt+C"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:383
-msgid "&Delete\tAlt+K"
-msgstr "&ØØ°Ù\tAlt+K"
+msgid "Co&py"
+msgstr "&ÙØ³Ø®"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:388
-msgid "Sp&lit Delete\tShift+Alt+K"
-msgstr "ت&ÙØ³ÙÙ
Ù ØØ°Ù\tShift+Alt+K"
+msgid "Sp&lit Delete"
+msgstr "ت&ÙØ³ÙÙ
Ù ØØ°Ù"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:393
-msgid "Sile&nce\tAlt+L"
-msgstr "&صÙ
ت\tAlt+L"
+msgid "Sile&nce"
+msgstr "&صÙ
ت"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:399
-msgid "Spli&t\tAlt+I"
-msgstr "تÙ&سÙÙ
\tAlt+I"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:404
-msgid "&Join\tAlt+J"
-msgstr "&ضÙ
Ù\tAlt+J"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
-msgstr ""
+msgid "Spli&t"
+msgstr "تÙ&سÙÙ
"
#: Menus.cpp:456
msgid "&Select"
msgstr ""
#: Menus.cpp:416
-msgid "&All\tCtrl+A"
-msgstr "اÙ&ÙÙ\tCtrl+A"
+msgid "&All"
+msgstr "اÙ&ÙÙ"
#: Menus.cpp:417
-msgid "&None\tCtrl+Shift+A"
-msgstr "ÙØ§ &Ø´ÙØ¦\tCtrl+Shift+A"
+msgid "&None"
+msgstr "ÙØ§ &Ø´ÙØ¦"
#: Menus.cpp:421
-msgid "&Left at Playback Position\t["
-msgstr "&ÙØ³Ø§Ø± Ù
ÙØ¶Ø¹ اÙÙØ±Ø§Ø¡Ø©\t["
+msgid "&Left at Playback Position"
+msgstr "&ÙØ³Ø§Ø± Ù
ÙØ¶Ø¹ اÙÙØ±Ø§Ø¡Ø©"
#: Menus.cpp:422
-msgid "&Right at Playback Position\t]"
-msgstr "&ÙÙ
ÙÙ Ù
ÙØ¶Ø¹ اÙÙØ±Ø§Ø¡Ø©\t]"
+msgid "&Right at Playback Position"
+msgstr "&ÙÙ
ÙÙ Ù
ÙØ¶Ø¹ اÙÙØ±Ø§Ø¡Ø©"
#: Menus.cpp:426
-msgid "Track &Start to Cursor\tShift+J"
-msgstr "Ù
Ù &Ø¨Ø¯Ø§ÙØ© اÙÙ
سار Ø¥Ù٠اÙÙ
ؤشر\tShift+J"
+msgid "Track &Start to Cursor"
+msgstr "Ù
Ù &Ø¨Ø¯Ø§ÙØ© اÙÙ
سار Ø¥Ù٠اÙÙ
ؤشر"
#: Menus.cpp:427
-msgid "Cursor to Track &End\tShift+K"
-msgstr "اÙÙ
ؤشر Ø¥Ù٠آ&خر اÙÙ
سار\tShift+K"
+msgid "Cursor to Track &End"
+msgstr "اÙÙ
ؤشر Ø¥Ù٠آ&خر اÙÙ
سار"
#: Menus.cpp:433
-msgid "Find &Zero Crossings\tZ"
-msgstr "Ø§ÙØ¨ØØ« Ø¹Ù Ø§ÙØªÙاطعات Ù
ع اÙ&ØµÙØ±\tZ"
+msgid "Find &Zero Crossings"
+msgstr "Ø§ÙØ¨ØØ« Ø¹Ù Ø§ÙØªÙاطعات Ù
ع اÙ&ØµÙØ±"
#: Menus.cpp:476
msgid "Mo&ve Cursor"
@@ -1686,12 +1714,12 @@ msgid "to Selection En&d"
msgstr "Ø¥ÙÙ ÙÙØ§ÙØ© Ø§ÙØ§&Ø®ØªÙØ§Ø±"
#: Menus.cpp:442
-msgid "to Track &Start\tJ"
-msgstr "Ø¥ÙÙ &Ø£Ù٠اÙÙ
سار\tJ"
+msgid "to Track &Start"
+msgstr "Ø¥ÙÙ &Ø£Ù٠اÙÙ
سار"
#: Menus.cpp:443
-msgid "to Track &End\tK"
-msgstr "Ø¥Ù٠آ&خر اÙÙ
سار\tK"
+msgid "to Track &End"
+msgstr "Ø¥Ù٠آ&خر اÙÙ
سار"
#: Menus.cpp:450
msgid "Re&gion Save"
@@ -1713,29 +1741,8 @@ msgstr "Ù&ÙÙ"
msgid "&Unlock"
msgstr "Ù&ØªØ Ø§ÙÙÙÙ"
-#: Menus.cpp:470
-msgid "Turn Snap-To On"
-msgstr "تشغÙÙ Ø§ÙØØµØ±"
-
-#: Menus.cpp:471
-msgid "Turn Snap-To Off"
-msgstr "Ø¥ÙÙØ§Ù Ø§ÙØØµØ±"
-
-#: Menus.cpp:472
-msgid "Turn Grid Snap On"
-msgstr "تشغÙÙ Ø´Ø¨ÙØ© Ø§ÙØØµØ±"
-
-#: Menus.cpp:473
-msgid "Turn Grid Snap Off"
-msgstr "Ø¥ÙÙØ§Ù Ø´Ø¨ÙØ© Ø§ÙØØµØ±"
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr ""
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
+msgid "Pre&ferences..."
msgstr ""
#: Menus.cpp:492
@@ -1743,36 +1750,36 @@ msgid "&View"
msgstr "&عرض"
#: Menus.cpp:494
-msgid "Zoom &In\tCtrl+1"
-msgstr "ت&ÙØ¨Ùر\tCtrl+1"
+msgid "Zoom &In"
+msgstr "ت&ÙØ¨Ùر"
#: Menus.cpp:497
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "اÙ&ØØ¬Ù
Ø§ÙØ¹Ø§Ø¯Ù \tCtrl+2"
+msgid "Zoom &Normal"
+msgstr "اÙ&ØØ¬Ù
Ø§ÙØ¹Ø§Ø¯Ù "
#: Menus.cpp:498
-msgid "Zoom &Out\tCtrl+3"
-msgstr "ت&ØµØºÙØ± \tCtrl+3"
+msgid "Zoom &Out"
+msgstr "ت&ØµØºÙØ± "
#: Menus.cpp:501
-msgid "&Fit in Window\tCtrl+F"
-msgstr "&Ù
ÙØ§Ø³Ø¨ ÙÙÙØ§Ùذة\tCtrl+F"
+msgid "&Fit in Window"
+msgstr "&Ù
ÙØ§Ø³Ø¨ ÙÙÙØ§Ùذة"
#: Menus.cpp:502
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "Ù
ÙØ§Ø³Ø¨ &عÙ
ÙØ¯Ùا\tCtrl+Shift+F"
+msgid "Fit &Vertically"
+msgstr "Ù
ÙØ§Ø³Ø¨ &عÙ
ÙØ¯Ùا"
#: Menus.cpp:503
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "&ØªÙØ¨Ùر Ø§ÙØ§Ø®ØªÙار \t Ctrl+E"
+msgid "&Zoom to Selection"
+msgstr "&ØªÙØ¨Ùر Ø§ÙØ§Ø®ØªÙار "
#: Menus.cpp:506
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
-msgstr "Ø¥Ù&زا٠Ù٠اÙÙ
سارات\tCtrl+Shift+C"
+msgid "&Collapse All Tracks"
+msgstr "Ø¥Ù&زا٠Ù٠اÙÙ
سارات"
#: Menus.cpp:507
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
-msgstr "تÙ&Ø³ÙØ¹ Ù٠اÙÙ
سارات\tCtrl+Shift+X"
+msgid "E&xpand All Tracks"
+msgstr "تÙ&Ø³ÙØ¹ Ù٠اÙÙ
سارات"
#: Menus.cpp:510
msgid "&Show Clipping"
@@ -1832,40 +1839,40 @@ msgstr "!عرض Ù
ÙØ¨Ø³ÙÙØ·"
msgid "T&ransport"
msgstr ""
-#: Menus.cpp:591
-msgid "Play\tSpace"
-msgstr ""
+#: toolbars/ControlToolBar.cpp:177
+msgid "Play"
+msgstr "ÙØ±Ø§Ø¡Ø©"
#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
+msgid "&Loop Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Pause\tP"
+msgid "&Pause"
msgstr ""
#: Menus.cpp:596
-msgid "&Stop\tSpace"
+msgid "&Stop"
msgstr ""
#: Menus.cpp:799
-msgid "Skip to Start\tHome"
-msgstr "تخط٠إÙÙ Ø§ÙØ¨Ø¯Ø§ÙØ©\tHome"
+msgid "Skip to Start"
+msgstr "تخط٠إÙÙ Ø§ÙØ¨Ø¯Ø§ÙØ©"
#: Menus.cpp:800
-msgid "Skip to End\tEnd"
-msgstr "تخط٠إÙ٠اÙÙÙØ§ÙØ©\tEnd"
+msgid "Skip to End"
+msgstr "تخط٠إÙ٠اÙÙÙØ§ÙØ©"
#: Menus.cpp:600
-msgid "&Record\tR"
+msgid "&Record"
msgstr ""
#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
+msgid "&Timer Record..."
msgstr ""
#: Menus.cpp:604
-msgid "Append Record\tShift+R"
+msgid "Append Record"
msgstr ""
#: Menus.cpp:607
@@ -1893,8 +1900,8 @@ msgid "Add &New"
msgstr ""
#: Menus.cpp:553
-msgid "&Audio Track\tCtrl+Shift+N"
-msgstr "&Ù
سار ØµÙØªÙ\tCtrl+Shift+N"
+msgid "&Audio Track"
+msgstr "&Ù
سار ØµÙØªÙ"
#: Menus.cpp:554
msgid "&Stereo Track"
@@ -1909,8 +1916,8 @@ msgid "Mi&x and Render"
msgstr "Ù
ز&ج Ù ØªÙØ¯ÙÙ
"
#: Menus.cpp:572
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
-msgstr "Ù
زج Ù ØªÙØ¯ÙÙ
Ø¥ÙÙ Ù
سار Ø¬Ø¯ÙØ¯\tCtrl+Shift+M"
+msgid "Mix and Render to New Track"
+msgstr "Ù
زج Ù ØªÙØ¯ÙÙ
Ø¥ÙÙ Ù
سار Ø¬Ø¯ÙØ¯"
#: Menus.cpp:576
msgid "&Resample..."
@@ -1921,12 +1928,12 @@ msgid "Remo&ve Tracks"
msgstr "Ø&ذ٠اÙÙ
سارات"
#: Menus.cpp:592
-msgid "&Mute All Tracks\tCtrl+U"
-msgstr "&ÙØªÙ
Ù٠اÙÙ
سارات\tCtrl+U"
+msgid "&Mute All Tracks"
+msgstr "&ÙØªÙ
Ù٠اÙÙ
سارات"
#: Menus.cpp:593
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
-msgstr "&Ø¥ÙØºØ§Ø¡ ÙØªÙ
Ù٠اÙÙ
سارات\tCtrl+Shift+U"
+msgid "&UnMute All Tracks"
+msgstr "&Ø¥ÙØºØ§Ø¡ ÙØªÙ
Ù٠اÙÙ
سارات"
#: Menus.cpp:597
msgid "Align with &Zero"
@@ -1972,17 +1979,17 @@ msgstr ""
msgid "Synchronize MIDI with Audio"
msgstr ""
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
+#: Menus.cpp:686
+msgid "&Link Audio and Label Tracks"
msgstr ""
-#: Menus.cpp:623
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "Ø¥Ø¶Ø§ÙØ© &Ø¹ÙØ§Ù
Ø© Ø¹ÙØ¯ Ø§ÙØ§Ø®ØªÙار\tCtrl+B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr ""
#: Menus.cpp:624
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "Ø¥Ø¶Ø§ÙØ© &Ø¹ÙØ§Ù
Ø© Ø¹ÙØ¯ Ù
ÙØ¶Ø¹ اÙÙØ±Ø§Ø¡Ø©\tCtrl+M"
+msgid "Add Label At &Playback Position"
+msgstr "Ø¥Ø¶Ø§ÙØ© &Ø¹ÙØ§Ù
Ø© Ø¹ÙØ¯ Ù
ÙØ¶Ø¹ اÙÙØ±Ø§Ø¡Ø©"
#: Menus.cpp:716
msgid "S&ort tracks"
@@ -2008,14 +2015,14 @@ msgstr ""
msgid "Effe&ct"
msgstr "تأ&Ø«ÙØ±"
-#: Menus.cpp:670
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "إعادة Ø§ÙØªØ£Ø«Ùر Ø§ÙØ£Ø®Ùر\tCtrl+R"
-
#: Menus.cpp:702
msgid "&Analyze"
msgstr "ت&ØÙÙÙ"
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
+
#: Menus.cpp:704
msgid "Plot Spectrum..."
msgstr "رسÙ
Ù
ÙØÙÙ Ø§ÙØ·ÙÙ..."
@@ -2032,9 +2039,9 @@ msgstr "&ØÙÙ Ø§ÙØ®Ø·Ø§Ø¨ اÙÙØ¸ÙÙ ÙØ¬Ùرأة..."
msgid "&Show Welcome Message..."
msgstr "&عرض اÙÙÙÙ
Ø© Ø§ÙØªØ±ØÙØ¨ÙØ©..."
-#: Menus.cpp:748
-msgid "&Index..."
-msgstr "&دÙÙÙ..."
+#: Menus.cpp:958
+msgid "&Help..."
+msgstr ""
#: Menus.cpp:959
msgid "Show &Log..."
@@ -2052,181 +2059,149 @@ msgstr "تشغÙ٠اÙÙ
&ÙØ§Ø±Ù..."
msgid "&Audio Device Info..."
msgstr "Ù
عÙÙÙ
ات Ø¬ÙØ§Ø² اÙ&ØµÙØª"
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
msgstr ""
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
msgstr ""
#: Menus.cpp:774
-msgid "Selection Tool\tF1"
-msgstr "أداة Ø§ÙØ§Ø®ØªÙار\tF1"
+msgid "Selection Tool"
+msgstr "أداة Ø§ÙØ§Ø®ØªÙار"
#: Menus.cpp:775
-msgid "Envelope Tool\tF2"
-msgstr "أداة Ø§ÙØºÙاÙ\tF2"
+msgid "Envelope Tool"
+msgstr "أداة Ø§ÙØºÙاÙ"
#: Menus.cpp:776
-msgid "Draw Tool\tF3"
-msgstr "أداة Ø§ÙØ±Ø³Ù
\tF3"
+msgid "Draw Tool"
+msgstr "أداة Ø§ÙØ±Ø³Ù
"
#: Menus.cpp:777
-msgid "Zoom Tool\tF4"
-msgstr "أداة Ø§ÙØªÙØ¨ÙØ± Ù Ø§ÙØªØµØºÙر\tF4"
+msgid "Zoom Tool"
+msgstr "أداة Ø§ÙØªÙØ¨ÙØ± Ù Ø§ÙØªØµØºÙر"
#: Menus.cpp:778
-msgid "Time Shift Tool\tF5"
-msgstr "أداة ØªØØ±Ù٠اÙÙÙØª\tF5"
+msgid "Time Shift Tool"
+msgstr "أداة ØªØØ±Ù٠اÙÙÙØª"
#: Menus.cpp:779
-msgid "Multi Tool\tF6"
-msgstr "Ø£Ø¯ÙØ§Øª Ù
تعددة\tF6"
+msgid "Multi Tool"
+msgstr "Ø£Ø¯ÙØ§Øª Ù
تعددة"
#: Menus.cpp:781
-msgid "Next Tool\tD"
-msgstr "Ø§ÙØ£Ø¯Ø§Ø© Ø§ÙØªØ§ÙÙØ©\tD"
+msgid "Next Tool"
+msgstr "Ø§ÙØ£Ø¯Ø§Ø© Ø§ÙØªØ§ÙÙØ©"
#: Menus.cpp:782
-msgid "Previous Tool\tA"
-msgstr "Ø§ÙØ£Ø¯Ø§Ø© Ø§ÙØ³Ø§Ø¨ÙØ©\tA"
+msgid "Previous Tool"
+msgstr "Ø§ÙØ£Ø¯Ø§Ø© Ø§ÙØ³Ø§Ø¨ÙØ©"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
+msgid "Play/Stop"
msgstr ""
-#: Menus.cpp:785
-msgid "Stop\tS"
-msgstr "تÙÙÙ\tS"
-
-#: Menus.cpp:786
-msgid "Pause\tP"
-msgstr "تÙÙÙ Ù
Ø¤ÙØª\tP"
-
-#: Menus.cpp:787
-msgid "Record\tR"
-msgstr "تسجÙÙ\tR"
-
-#: Menus.cpp:788
-msgid "Record Append\tShift+R"
-msgstr "Ø¥Ø±ÙØ§Ù Ø§ÙØªØ³Ø¬ÙÙ\tShift+R"
-
#: Menus.cpp:790
-msgid "Play/Stop and Set Cursor\tShift+A"
-msgstr "ÙØ±Ø§Ø¡Ø©/تÙÙÙ Ù ØªØØ¯Ùد اÙÙ
ؤشر\tShift+A"
+msgid "Play/Stop and Set Cursor"
+msgstr "ÙØ±Ø§Ø¡Ø©/تÙÙÙ Ù ØªØØ¯Ùد اÙÙ
ؤشر"
#: Menus.cpp:793
-msgid "Play One Second\t1"
-msgstr "ÙØ±Ø§Ø¡Ø© ثاÙÙØ© ÙØ§ØØ¯Ø©\t1"
+msgid "Play One Second"
+msgstr "ÙØ±Ø§Ø¡Ø© ثاÙÙØ© ÙØ§ØØ¯Ø©"
#: Menus.cpp:794
-msgid "Play To Selection\tB"
-msgstr "ÙØ±Ø§Ø¡Ø© ØØªÙ Ø§ÙØ§Ø®ØªÙار\tB"
-
-#: Menus.cpp:795
-msgid "Play Looped\tL"
-msgstr "اÙÙØ±Ø§Ø¡Ø© Ù
ØªÙØ±Ø±Ø©\tL"
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
+msgid "Play To Selection"
+msgstr "ÙØ±Ø§Ø¡Ø© ØØªÙ Ø§ÙØ§Ø®ØªÙار"
#: Menus.cpp:797
-msgid "Play Cut Preview\tC"
-msgstr "ÙØ±Ø§Ø¡Ø© Ø§ÙØ¹Ø±Ø¶ اÙÙ
سب٠ÙÙÙØµ\tC"
+msgid "Play Cut Preview"
+msgstr "ÙØ±Ø§Ø¡Ø© Ø§ÙØ¹Ø±Ø¶ اÙÙ
سب٠ÙÙÙØµ"
#: Menus.cpp:802
-msgid "Selection to Start\tShift+Home"
-msgstr "Ø§Ø®ØªÙØ§Ø± Ø¥ÙÙ Ø§ÙØ¨Ø¯Ø§ÙØ©\tShift+Home"
+msgid "Selection to Start"
+msgstr "Ø§Ø®ØªÙØ§Ø± Ø¥ÙÙ Ø§ÙØ¨Ø¯Ø§ÙØ©"
#: Menus.cpp:803
-msgid "Selection to End\tShift+End"
-msgstr "Ø§Ø®ØªÙØ§Ø± Ø¥Ù٠اÙÙÙØ§ÙØ©\tShift+End"
+msgid "Selection to End"
+msgstr "Ø§Ø®ØªÙØ§Ø± Ø¥Ù٠اÙÙÙØ§ÙØ©"
#: Menus.cpp:805
-msgid "DeleteKey\tBackspace"
-msgstr "زر Ø§ÙØØ°Ù\tBackspace"
+msgid "DeleteKey"
+msgstr "زر Ø§ÙØØ°Ù"
#: Menus.cpp:810
-msgid "DeleteKey2\tDelete"
-msgstr "زر Ø§ÙØØ°Ù 2\tDelete"
+msgid "DeleteKey2"
+msgstr "زر Ø§ÙØØ°Ù 2"
-#: Menus.cpp:816
-msgid "Seek left short period during playback\tLeft"
-msgstr "Ø¨ØØ« ع٠Ù
دة ÙØµÙرة Ù
٠اÙÙØ³Ø§Ø± Ø®ÙØ§Ù اÙÙØ±Ø§Ø¡Ø©\tLeft"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
+msgstr ""
-#: Menus.cpp:817
-msgid "Seek right short period during playback\tRight"
-msgstr "Ø¨ØØ« ع٠Ù
دة ÙØµÙرة Ù
٠اÙÙÙ
ÙÙ Ø®ÙØ§Ù اÙÙØ±Ø§Ø¡Ø©\tRight"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
+msgstr ""
-#: Menus.cpp:818
-msgid "Seek left long period during playback\tShift+Left"
-msgstr "Ø¨ØØ« ع٠Ù
دة Ø·ÙÙÙØ© Ù
٠اÙÙØ³Ø§Ø± Ø®ÙØ§Ù اÙÙØ±Ø§Ø¡Ø©\tShift+Left"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
+msgstr ""
-#: Menus.cpp:819
-msgid "Seek right long period during playback\tShift+Right"
-msgstr "Ø¨ØØ« ع٠Ù
دة Ø·ÙÙÙØ© Ù
٠اÙÙÙ
ÙÙ Ø®ÙØ§Ù اÙÙØ±Ø§Ø¡Ø©\tShift+Right"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
+msgstr ""
#: Menus.cpp:823
-msgid "Move Focus to Previous Track\tUp"
-msgstr "ÙÙÙ Ø§ÙØªØ±ÙÙØ² Ø¥Ù٠اÙÙ
سار Ø§ÙØ³Ø§Ø¨Ù\tUp"
+msgid "Move Focus to Previous Track"
+msgstr "ÙÙÙ Ø§ÙØªØ±ÙÙØ² Ø¥Ù٠اÙÙ
سار Ø§ÙØ³Ø§Ø¨Ù"
-#: Menus.cpp:824
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
-msgstr "ÙÙÙ Ø§ÙØªØ±ÙÙØ² Ø¥Ù٠اÙÙ
سار Ø§ÙØ³Ø§Ø¨Ù ٠تغÙÙØ± Ø§ÙØ§Ø®ØªÙار\tShift+Up"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
+msgstr ""
#: Menus.cpp:825
-msgid "Move Focus to Next Track\tDown"
-msgstr "ÙÙÙ Ø§ÙØªØ±ÙÙØ² Ø¥Ù٠اÙÙ
سار Ø§ÙØªØ§ÙÙ\tDown"
+msgid "Move Focus to Next Track"
+msgstr "ÙÙÙ Ø§ÙØªØ±ÙÙØ² Ø¥Ù٠اÙÙ
سار Ø§ÙØªØ§ÙÙ"
-#: Menus.cpp:826
-msgid "Move Focus to Next and Change Selection\tShift+Down"
-msgstr "ÙÙÙ Ø§ÙØªØ±ÙÙØ² Ø¥Ù٠اÙÙ
سار Ø§ÙØªØ§Ù٠٠تغÙÙØ± Ø§ÙØ§Ø®ØªÙار\tShift+Down"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
+msgstr ""
#: Menus.cpp:827
-msgid "Toggle Focused Track\tReturn"
-msgstr "ÙÙØ¨ اÙÙ
سار Ø§ÙØ°Ù عÙÙÙ Ø§ÙØªØ±ÙÙØ²\tReturn"
-
-#: Menus.cpp:828
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr "ÙÙØ¨ اÙÙ
سار Ø§ÙØ°Ù عÙÙÙ Ø§ÙØªØ±ÙÙØ²\tNUMPAD_ENTER"
-
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
-msgstr ""
+msgid "Toggle Focused Track"
+msgstr "ÙÙØ¨ اÙÙ
سار Ø§ÙØ°Ù عÙÙÙ Ø§ÙØªØ±ÙÙØ²"
#: Menus.cpp:831
-msgid "Cursor Left\tLeft"
-msgstr "ÙØ³Ø§Ø± اÙÙ
ؤشر\tLeft"
+msgid "Cursor Left"
+msgstr "ÙØ³Ø§Ø± اÙÙ
ؤشر"
#: Menus.cpp:832
-msgid "Cursor Right\tRight"
-msgstr "ÙÙ
Ù٠اÙÙ
ؤشر\tRight"
+msgid "Cursor Right"
+msgstr "ÙÙ
Ù٠اÙÙ
ؤشر"
#: Menus.cpp:833
-msgid "Cursor Short Jump Left\t,"
-msgstr "ÙÙØ² ÙØµÙر ÙÙÙ
ؤشر ÙØÙ Ø§ÙÙØ³Ø§Ø±\tØ"
+msgid "Cursor Short Jump Left"
+msgstr "ÙÙØ² ÙØµÙر ÙÙÙ
ؤشر ÙØÙ Ø§ÙÙØ³Ø§Ø±"
#: Menus.cpp:834
-msgid "Cursor Short Jump Right\t."
-msgstr "ÙÙØ² ÙØµÙر ÙÙÙ
ؤشر ÙØÙ Ø§ÙÙÙ
ÙÙ\t."
+msgid "Cursor Short Jump Right"
+msgstr "ÙÙØ² ÙØµÙر ÙÙÙ
ؤشر ÙØÙ Ø§ÙÙÙ
ÙÙ"
#: Menus.cpp:835
-msgid "Cursor Long Jump Left\tShift+,"
-msgstr "ÙÙØ² Ø·ÙÙÙ ÙÙÙ
ؤشر ÙØÙ Ø§ÙÙØ³Ø§Ø±\tØ"
+msgid "Cursor Long Jump Left"
+msgstr "ÙÙØ² Ø·ÙÙÙ ÙÙÙ
ؤشر ÙØÙ Ø§ÙÙØ³Ø§Ø±"
#: Menus.cpp:836
-msgid "Cursor Long Jump Right\tShift+."
-msgstr "ÙÙØ² Ø·ÙÙÙ ÙÙÙ
ؤشر ÙØÙ Ø§ÙÙÙ
ÙÙ\t."
+msgid "Cursor Long Jump Right"
+msgstr "ÙÙØ² Ø·ÙÙÙ ÙÙÙ
ؤشر ÙØÙ Ø§ÙÙÙ
ÙÙ"
#: Menus.cpp:838
-msgid "Selection Extend Left\tShift+Left"
-msgstr "تÙ
Ø¯ÙØ¯ Ø§ÙØ§Ø®ØªÙار ÙØÙ Ø§ÙÙØ³Ø§Ø±\tShift+Left"
+msgid "Selection Extend Left"
+msgstr "تÙ
Ø¯ÙØ¯ Ø§ÙØ§Ø®ØªÙار ÙØÙ Ø§ÙÙØ³Ø§Ø±"
#: Menus.cpp:839
-msgid "Selection Extend Right\tShift+Right"
-msgstr "تÙ
Ø¯ÙØ¯ Ø§ÙØ§Ø®ØªÙار ÙØÙ Ø§ÙÙÙ
ÙÙ\tShift+Right"
+msgid "Selection Extend Right"
+msgstr "تÙ
Ø¯ÙØ¯ Ø§ÙØ§Ø®ØªÙار ÙØÙ Ø§ÙÙÙ
ÙÙ"
#: Menus.cpp:841
msgid "Set (or Extend) Left Selection"
@@ -2237,52 +2212,52 @@ msgid "Set (or Extend) Right Selection"
msgstr "ØØ¯Ø¯ (Ø£Ù Ù
دد) Ø§ÙØ§Ø®ØªÙار Ø§ÙØ£ÙÙ
Ù"
#: Menus.cpp:844
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "تÙÙÙØµ Ø§ÙØ§Ø®ØªÙار ÙØÙ Ø§ÙÙØ³Ø§Ø±\tCtrl+Shift+Right"
+msgid "Selection Contract Left"
+msgstr "تÙÙÙØµ Ø§ÙØ§Ø®ØªÙار ÙØÙ Ø§ÙÙØ³Ø§Ø±"
#: Menus.cpp:845
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "تÙÙÙØµ Ø§ÙØ§Ø®ØªÙار ÙØÙ Ø§ÙÙÙ
ÙÙ\tCtrl+Shift+Left"
+msgid "Selection Contract Right"
+msgstr "تÙÙÙØµ Ø§ÙØ§Ø®ØªÙار ÙØÙ Ø§ÙÙÙ
ÙÙ"
#: Menus.cpp:847
-msgid "Change pan on focused track\tShift+P"
-msgstr "تغÙÙØ± Ø§ÙØ¨Ø§ÙÙØ±Ø§Ù
ا عÙ٠اÙÙ
سار Ø§ÙØ°Ù عÙÙÙ Ø§ÙØªØ±ÙÙØ²\tShift+P"
+msgid "Change pan on focused track"
+msgstr "تغÙÙØ± Ø§ÙØ¨Ø§ÙÙØ±Ø§Ù
ا عÙ٠اÙÙ
سار Ø§ÙØ°Ù عÙÙÙ Ø§ÙØªØ±ÙÙØ²"
#: Menus.cpp:848
-msgid "Pan left on focused track\tAlt+Shift+Left"
-msgstr "باÙÙØ±Ø§Ù
ا Ø£ÙØ³Ø± عÙ٠اÙÙ
سار Ø§ÙØ°Ù عÙÙÙ Ø§ÙØªØ±ÙÙØ²\tAlt+Shift+Left"
+msgid "Pan left on focused track"
+msgstr "باÙÙØ±Ø§Ù
ا Ø£ÙØ³Ø± عÙ٠اÙÙ
سار Ø§ÙØ°Ù عÙÙÙ Ø§ÙØªØ±ÙÙØ²"
#: Menus.cpp:849
-msgid "Pan right on focused track\tAlt+Shift+Right"
-msgstr "باÙÙØ±Ø§Ù
ا Ø£ÙÙ
٠عÙ٠اÙÙ
سار Ø§ÙØ°Ù عÙÙÙ Ø§ÙØªØ±ÙÙØ²\tAlt+Shift+Right"
+msgid "Pan right on focused track"
+msgstr "باÙÙØ±Ø§Ù
ا Ø£ÙÙ
٠عÙ٠اÙÙ
سار Ø§ÙØ°Ù عÙÙÙ Ø§ÙØªØ±ÙÙØ²"
#: Menus.cpp:850
-msgid "Change gain on focused track\tShift+G"
-msgstr "تغÙÙØ± اÙÙ
ستÙ٠عÙ٠اÙÙ
سار Ø§ÙØ°Ù عÙÙÙ Ø§ÙØªØ±ÙÙØ²\tShift+G"
+msgid "Change gain on focused track"
+msgstr "تغÙÙØ± اÙÙ
ستÙ٠عÙ٠اÙÙ
سار Ø§ÙØ°Ù عÙÙÙ Ø§ÙØªØ±ÙÙØ²"
#: Menus.cpp:851
-msgid "Increase gain on focused track\tAlt+Shift+Up"
-msgstr "Ø±ÙØ¹ اÙÙ
ستÙ٠عÙ٠اÙÙ
سار Ø§ÙØ°Ù عÙÙÙ Ø§ÙØªØ±ÙÙØ²\tAlt+Shift+Up"
+msgid "Increase gain on focused track"
+msgstr "Ø±ÙØ¹ اÙÙ
ستÙ٠عÙ٠اÙÙ
سار Ø§ÙØ°Ù عÙÙÙ Ø§ÙØªØ±ÙÙØ²"
#: Menus.cpp:852
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
-msgstr "تخÙÙØ¶ اÙÙ
ستÙ٠عÙ٠اÙÙ
سار Ø§ÙØ°Ù عÙÙÙ Ø§ÙØªØ±ÙÙØ²\tAlt+Shift+Down"
+msgid "Decrease gain on focused track"
+msgstr "تخÙÙØ¶ اÙÙ
ستÙ٠عÙ٠اÙÙ
سار Ø§ÙØ°Ù عÙÙÙ Ø§ÙØªØ±ÙÙØ²"
#: Menus.cpp:853
-msgid "Open menu on focused track\tShift+M"
-msgstr "ÙØªØ ÙØ§Ø¦Ù
Ø© Ø§ÙØ®Ùارات عÙ٠اÙÙ
سار Ø§ÙØ°Ù عÙÙÙ Ø§ÙØªØ±ÙÙØ²\tShift+M"
+msgid "Open menu on focused track"
+msgstr "ÙØªØ ÙØ§Ø¦Ù
Ø© Ø§ÙØ®Ùارات عÙ٠اÙÙ
سار Ø§ÙØ°Ù عÙÙÙ Ø§ÙØªØ±ÙÙØ²"
#: Menus.cpp:854
-msgid "Mute/Unmute focused track\tShift+U"
-msgstr "ÙØªÙ
/Ø¥ÙØºØ§Ø¡ ÙØªÙ
اÙÙ
سار Ø§ÙØ°Ù عÙÙÙ Ø§ÙØªØ±ÙÙØ²\tShift+U"
+msgid "Mute/Unmute focused track"
+msgstr "ÙØªÙ
/Ø¥ÙØºØ§Ø¡ ÙØªÙ
اÙÙ
سار Ø§ÙØ°Ù عÙÙÙ Ø§ÙØªØ±ÙÙØ²"
#: Menus.cpp:855
-msgid "Solo/Unsolo focused track\tShift+S"
-msgstr "Ø¥ÙØ±Ø§Ø¯/Ø¥ÙØºØ§Ø¡ Ø¥ÙØ±Ø§Ø¯ اÙÙ
سار Ø§ÙØ°Ù عÙÙÙ Ø§ÙØªØ±ÙÙØ²\tShift+S"
+msgid "Solo/Unsolo focused track"
+msgstr "Ø¥ÙØ±Ø§Ø¯/Ø¥ÙØºØ§Ø¡ Ø¥ÙØ±Ø§Ø¯ اÙÙ
سار Ø§ÙØ°Ù عÙÙÙ Ø§ÙØªØ±ÙÙØ²"
#: Menus.cpp:856
-msgid "Close focused track\tShift+C"
-msgstr "Ø¥ØºÙØ§Ù اÙÙ
سار Ø§ÙØ°Ù عÙÙÙ Ø§ÙØªØ±ÙÙØ²\tShift+C"
+msgid "Close focused track"
+msgstr "Ø¥ØºÙØ§Ù اÙÙ
سار Ø§ÙØ°Ù عÙÙÙ Ø§ÙØªØ±ÙÙØ²"
#: Menus.cpp:858
msgid "Snap To On"
@@ -2293,7 +2268,35 @@ msgid "Snap To Off"
msgstr "تÙÙÙÙ Ø§ÙØØµØ±"
#: Menus.cpp:1071
-msgid "Full screen on/off\tF11"
+msgid "Full screen on/off"
+msgstr ""
+
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr ""
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr ""
+
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr ""
+
+#: Menus.cpp:1074
+msgid "Adjust input source"
msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
@@ -2354,8 +2357,8 @@ msgstr "Ø£ÙÙØ§Ø ÙØ¬Ø¨ أ٠تختار Ù
سار."
#: Menus.cpp:2035
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "إعادة %s\tCtrl+R"
+msgid "Repeat %s"
+msgstr "إعادة %s"
#: Menus.cpp:2166
msgid "There are no label tracks to export."
@@ -2563,15 +2566,6 @@ msgstr "ØªÙØ³ÙÙ
Ø¥ÙÙ Ù
سار Ø¬Ø¯ÙØ¯"
msgid "Split at labels"
msgstr "ØªÙØ³ÙÙ
Ø¹ÙØ¯ Ø§ÙØ¹ÙاÙ
ات"
-#: Menus.cpp:3425
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "ÙØ±Ø³Ù
Ù
ÙØÙÙ Ø§ÙØ·ÙÙØ ÙØ¬Ø¨ Ø£Ù ÙÙÙÙ ÙÙ٠اÙÙ
سارات اÙÙ
ختارة ÙÙØ³ Ù
Ø¹Ø¯Ù Ø§ÙØ¹ÙÙÙØ©."
-
-#: Menus.cpp:3451
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "Ø§ÙØ¬Ø²Ø¡ اÙÙ
ختار Ù
Ù Ø§ÙØµÙت ÙØ¨Ùر جدا. سÙÙ ØªÙØÙÙÙ Ù
ÙÙ Ø§ÙØ«ÙاÙÙ %.1f اﻷÙÙÙ ÙÙØ·."
-
#: Menus.cpp:3584
#, c-format
msgid "Imported labels from '%s'"
@@ -2790,6 +2784,10 @@ msgstr "ØØµÙ Ù
Ø´ÙÙ ÙÙ Ø§ÙØ·Ø¨Ø§Ø¹Ø©."
msgid "Print"
msgstr "طباعة"
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr ""
+
#: Project.cpp:636
msgid "Main Mix"
msgstr "Ù
زج Ø±Ø¦ÙØ³Ù"
@@ -2803,7 +2801,7 @@ msgstr "Ù
Ø±ØØ¨Ø§ ب٠Ù٠إصدار Ø¬ÙØ±Ø£Ø© %s"
msgid "(Recovered)"
msgstr "(Ù
ÙØ³ØªØ±Ø¬Ø¹)"
-#: Project.cpp:1482 TrackPanel.cpp:804 toolbars/ControlToolBar.cpp:191
+#: Menus.cpp:787
msgid "Record"
msgstr "تسجÙÙ"
@@ -2833,9 +2831,9 @@ msgstr "\n"
msgid "Save changes?"
msgstr "ØÙظ Ø§ÙØªØºÙÙØ±Ø§ØªØ"
-#: Project.cpp:1694
-msgid "All files|*.*|All supported files|"
-msgstr "Ù٠اÙÙ
ÙÙØ§Øª|*.*|Ù٠اÙÙ
ÙÙØ§Øª اÙÙ
دعÙÙ
Ø©|"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
+msgstr ""
#: Project.cpp:1719
msgid "Select one or more audio files..."
@@ -2869,6 +2867,17 @@ msgstr "1.0 Ø£Ù Ù
ا ÙØ¨ÙÙ"
msgid "Opening old project file"
msgstr "ÙØªØ Ù
ÙÙ Ù
Ø´Ø±ÙØ¹ ÙØ¯ÙÙ
"
+#: Project.cpp:2073
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr ""
+
#: Project.cpp:1832 Project.cpp:1840
msgid "Error opening file"
msgstr "خطأ ÙÙ ÙØªØ اÙÙ
ÙÙ"
@@ -2926,15 +2935,15 @@ msgstr "تÙ
ØÙظ ÙØ°Ø§ اÙÙ
ÙÙ Ø¨Ø¨Ø±ÙØ§Ù
ج Ø¬ÙØ±Ø£Ø© %s.\n"
msgid "Can't open project file"
msgstr "ÙØ§ Ø£Ø³ØªØ·ÙØ¹ ÙØªØ Ù
Ù٠اÙÙ
Ø´Ø±ÙØ¹"
-#: Project.cpp:2193
+#: Project.cpp:2484
#, c-format
msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
-msgstr "ÙØ°Ø§ Ù
Ù٠تÙ
ØÙØ¸Ù Ø¨Ø¨Ø±ÙØ§Ù
ج Ø¬ÙØ±Ø£Ø© %s.\n"
-"ÙÙ
ÙÙÙ ÙØªØÙ Ø¨ÙØ°Ø§ اﻹصدار Ø§ÙØØ§ÙÙ ÙØ¬Ùرأة Ù ÙÙ٠إذا ØÙØ¸ØªÙ Ø¨ÙØ°Ø§ اﻹصدار ÙÙØ§ ÙÙ
ÙÙÙ ÙØªØÙ باﻹصدارات Ø§ï»·ÙØ¯Ù
\n"
-"Ø§ÙØªØ ÙØ°Ø§ اÙÙ
Ù٠اﻵ٠Ø"
+msgstr ""
#: Project.cpp:2537
msgid "Your project is now empty.\n"
@@ -2951,16 +2960,22 @@ msgstr ""
msgid "Warning empty project"
msgstr ""
-#: Project.cpp:2591
+#: Project.cpp:2792
#, c-format
msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+"is not writable or the disk is full."
msgstr ""
#: Project.cpp:2428 Project.cpp:2442
msgid "Error saving project"
msgstr "خطأ ÙÙ ØÙظ اÙÙ
Ø´Ø±ÙØ¹"
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
#: Project.cpp:2504
#, c-format
msgid "Saved %s"
@@ -3119,6 +3134,163 @@ msgstr "24-Ø¨ÙØª بÙ.سÙ.Ø£Ù
"
msgid "32-bit float"
msgstr "32-Ø¨ÙØª ÙÙÙØª"
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
+
+#: export/ExportMultiple.cpp:216 prefs/DirectoriesPrefs.cpp:92
+msgid "Choose..."
+msgstr "Ø§Ø®ØªÙØ§Ø±..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
+
+#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
+msgid "false"
+msgstr "خطأ"
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr "Ø§ÙØ£Ø¯Ùات"
+
+#: toolbars/ControlToolBar.cpp:82
+msgid "Control"
+msgstr "Ø§ÙØªØÙÙ
"
+
+#: toolbars/MixerToolBar.cpp:60
+msgid "Mixer"
+msgstr "اÙÙ
ازج"
+
+#: toolbars/MeterToolBar.cpp:50
+msgid "Meter"
+msgstr "Ø§ÙØ¹Ø¯Ø§Ø¯"
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
+#: toolbars/DeviceToolBar.cpp:57
+msgid "Device"
+msgstr "Ø¬ÙØ§Ø²"
+
+#: toolbars/TranscriptionToolBar.cpp:84
+msgid "Transcription"
+msgstr "اÙÙØ³Ø®"
+
+#: TrackPanel.cpp:464 TrackPanel.cpp:465
+msgid "Track Panel"
+msgstr "ÙÙØ اÙÙ
سار"
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: export/ExportMultiple.cpp:258
+msgid "Tracks"
+msgstr "Ù
سارات"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
#: Screenshot.cpp:384
msgid "Saved "
msgstr "تÙ
ØÙظ٠"
@@ -3127,6 +3299,10 @@ msgstr "تÙ
ØÙظ٠"
msgid "Error trying to save file: "
msgstr "خطأ ÙÙ Ù
ØØ§ÙÙØ© ØÙظ اÙÙ
ÙÙ: "
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
#: Sequence.cpp:732 Sequence.cpp:742 Sequence.cpp:749
msgid "Gap detected in project file\n"
msgstr "تÙ
Ø§ÙØªØ´Ø§Ù ÙØ±Ø§Øº ÙÙ Ù
Ù٠اÙÙ
Ø´Ø±ÙØ¹\n"
@@ -3264,6 +3440,10 @@ msgstr "خطأ Ù٠تØÙ
Ù٠اÙÙ
ÙØªØ§Ø¨ÙØ§ÙØ§Øª"
msgid "Save Metadata As:"
msgstr "ØÙظ اÙÙ
ÙØªØ§Ø¨ÙØ§ÙØ§Øª ÙÙ:"
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
#: Theme.cpp:638
#, c-format
msgid "Audacity could not write file:\n"
@@ -3352,6 +3532,14 @@ msgstr "اÙÙ
دة"
msgid "Audacity Timer Record"
msgstr "Ù
ÙØ³Ø¬ÙÙ Ù
ÙØ¤Ùت Ø¬ÙØ±Ø£Ø©"
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
#: SmartRecordDialog.cpp:223
msgid "Recording start"
msgstr "Ø¨Ø¯Ø§ÙØ© Ø§ÙØªØ³Ø¬ÙÙ"
@@ -3391,10 +3579,6 @@ msgstr "Ø§ÙØªØ¸Ø§Ø± ÙØ¨Ø¯Ø£ Ø§ÙØªØ³Ø¬ÙÙ Ø¹ÙØ¯ %s.\n"
msgid "Audacity Timer Record - Waiting for Start"
msgstr ""
-#: TrackPanel.cpp:464 TrackPanel.cpp:465
-msgid "Track Panel"
-msgstr "ÙÙØ اÙÙ
سار"
-
#: TrackPanel.cpp:548 export/ExportPCM.cpp:133 prefs/QualityPrefs.cpp:97
msgid "Other..."
msgstr "آخر..."
@@ -3447,6 +3631,10 @@ msgstr "Ø¥ÙØªØ§Ø¬ Ù
سار Ø«ÙØ§Ø¦Ù"
msgid "Split Stereo Track"
msgstr "ØªÙØ³ÙÙ
اÙÙ
سار Ø§ÙØ«ÙائÙ"
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr ""
+
#: TrackPanel.cpp:575
msgid "Set Sample Format"
msgstr "ØªØØ¯Ùد ØµÙØºØ© Ø§ÙØ¹ÙÙÙØ©"
@@ -3646,14 +3834,6 @@ msgstr "تÙ
تعدÙÙ Ø§ÙØ¨Ø§ÙÙØ±Ø§Ù
ا"
msgid "Adjusted gain"
msgstr "تÙ
تعدÙÙ Ù
ستÙÙ Ø§ÙØµÙت"
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr ""
-
#: TrackPanel.cpp:5918
msgid "Can't delete track with active audio"
msgstr "ÙØ§ ÙÙ
ÙÙ ØØ°Ù Ù
سار Ø§ÙØµÙت اÙÙØ¹ÙاÙ"
@@ -3688,6 +3868,11 @@ msgstr "اÙÙÙØ§Ø©"
msgid "Split stereo track '%s'"
msgstr "ØªÙØ³ÙÙ
اÙÙ
سار Ø§ÙØ«Ùائ٠'%s'"
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
#: TrackPanel.cpp:6139
#, c-format
msgid "Made '%s' a stereo track"
@@ -3764,6 +3949,10 @@ msgstr "اسÙ
Ø§ÙØ®Ø·"
msgid "Face size"
msgstr "ØØ¬Ù
Ø§ÙØ®Ø·"
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr ""
+
#: TrackPanel.cpp:7076
msgid "Mute"
msgstr "Ù
ÙØªÙÙ
"
@@ -3842,10 +4031,10 @@ msgstr "Ø§ÙØ¨Ø±Ø§Ù
ج اÙÙ
ساعدة Ù
Ù 1 Ø¥ÙÙ %i"
msgid "Plugins %i to %i"
msgstr "Ø§ÙØ¨Ø±Ø§Ù
ج اÙÙ
ساعدة Ù
Ù %i Ø¥ÙÙ %i"
-#: commands/CommandManager.cpp:857
-#, fuzzy
-msgid "Disallowed for some reason. Try selecting some audio first?"
-msgstr "Ù
Ù
ÙÙØ¹ ÙØ³Ø¨Ø¨ Ù
ا. ØØ§ÙÙ Ø§Ø®ØªÙØ§Ø± بعض Ø§ÙØµÙت Ø£ÙÙØ§Ø"
+#: commands/CommandManager.cpp:923
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
+msgstr ""
#: commands/CommandManager.cpp:781
msgid "You can only do this when playing and recording are\n"
@@ -4295,12 +4484,11 @@ msgstr "ÙÙØª Ø§ÙØ¥ÙØØ·Ø§Ø·: "
msgid "Decay Time"
msgstr ""
-#: effects/Compressor.cpp:516
-msgid "Normalize to 0dB after compressing"
-msgstr "ØªØ·Ø¨ÙØ¹ ÙÙ 0 Ø¯ÙØ³Ùب٠بعد Ø§ÙØ¶ØºØ·"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
+msgstr ""
#: effects/Compressor.cpp:563
-#, c-format
#, fuzzy
msgid "Threshold %d dB"
msgstr "Ø§ÙØ¹ØªØ¨Ø©: %d Ø¯ÙØ³ÙبÙ"
@@ -4331,7 +4519,6 @@ msgid "%.1f:1"
msgstr ""
#: effects/Compressor.cpp:575
-#, c-format
#, fuzzy
msgid "Attack Time %.1f secs"
msgstr "ÙÙØª اÙÙØ¬Ù
Ø©: %.1f ثاÙÙØ©"
@@ -4342,7 +4529,6 @@ msgid "%.1f secs"
msgstr ""
#: effects/Compressor.cpp:578
-#, c-format
#, fuzzy
msgid "Decay Time %.1f secs"
msgstr "ÙÙØª Ø§ÙØ¥ÙØØ·Ø§Ø·: %.1f ثاÙÙØ©"
@@ -4355,6 +4541,10 @@ msgstr "Ø§ÙØ¶Ø§ØºØ·..."
msgid "Applying Dynamic Range Compression..."
msgstr "تطبÙ٠ضغط اÙÙ
Ø¬Ø§Ù Ø§ÙØ¯ÙÙØ§Ù
ÙÙÙ..."
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
msgstr ""
@@ -4374,19 +4564,6 @@ msgid "Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr ""
-
#: effects/Contrast.cpp:231
msgid "Contrast Analyzer"
msgstr ""
@@ -4420,6 +4597,11 @@ msgstr ""
msgid "Foreground end time"
msgstr ""
+#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
+#: effects/Contrast.cpp:289
+msgid "Measured"
+msgstr ""
+
#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
msgid "Use selection"
msgstr ""
@@ -4464,16 +4646,8 @@ msgstr ""
msgid "Help for WCAG2 Audio Contrast Analyzer"
msgstr ""
-#: toolbars/ControlToolBar.cpp:82
-msgid "Control"
-msgstr "Ø§ÙØªØÙÙ
"
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
msgstr ""
#: effects/Contrast.cpp:328 effects/Contrast.cpp:336 effects/Contrast.cpp:344
@@ -4584,18 +4758,6 @@ msgstr ""
msgid "Data gathered"
msgstr ""
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr ""
-
#: effects/DtmfGen.cpp:48
msgid "DTMF Tone Generator"
msgstr "Ù
ÙÙÙÙÙØ¯ ÙØ¨Ø±Ø© دÙ.تÙ.Ø£Ù
.Ø£Ù"
@@ -4723,6 +4885,10 @@ msgstr "خطأ Ù٠تØÙ
ÙÙ Ù
ÙØÙÙ Ø§ÙØªØ³ÙÙØ©"
msgid "custom"
msgstr "Ù
صÙÙØ¹ ØØ³Ø¨ Ø§ÙØ·Ùب"
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr ""
+
#. i18n-hint: && in here is an escape character to get a single &
#. * on screen, so keep it as is
#: effects/Equalization.cpp:1087
@@ -4927,10 +5093,6 @@ msgstr ""
msgid "Analyser"
msgstr ""
-#: toolbars/MixerToolBar.cpp:60
-msgid "Mixer"
-msgstr "اÙÙ
ازج"
-
#: effects/LoadEffects.cpp:116
msgid "Simulator"
msgstr ""
@@ -5170,10 +5332,6 @@ msgstr "ØØ°Ù Ø§ÙØ¶Ø¬Ùج"
msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr "Ø§ÙØªØ£Ø«Ùر اÙÙ
ÙØ·Ø¨ÙÙÙ: %s ØØ°Ù ÙØ±Ø¹ دÙ.س٠= %sØ ØªØ·Ø¨ÙØ¹ Ø§ÙØ³Ø¹Ø© = %s"
-#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
-msgid "false"
-msgstr "خطأ"
-
#. i18n-hint: true here means that the option was
#. * selected. Opposite false if not selected
#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
@@ -5530,22 +5688,39 @@ msgstr "ÙØ¬Ø¨ Ø£Ù ÙÙÙÙ ÙÙ٠اÙÙ
سارات ÙÙØ³ Ù
Ø¹Ø¯Ù Ø§ÙØ¹ÙÙ
msgid "Truncate Silence"
msgstr "ÙØ·Ø¹ Ø§ÙØµÙ
ت"
-#: effects/TruncSilence.cpp:346
-msgid "Max silence duration:"
-msgstr "اÙÙ
دة اÙÙØµÙÙ ÙÙØµÙ
ت:"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr ""
+
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
+msgstr ""
#: effects/TruncSilence.cpp:349 prefs/AudioIOPrefs.cpp:190
#: prefs/AudioIOPrefs.cpp:193
msgid "milliseconds"
msgstr "Ù
Ù٠ثاÙÙØ©"
+#: effects/TruncSilence.cpp:346
+msgid "Max silence duration:"
+msgstr "اÙÙ
دة اÙÙØµÙÙ ÙÙØµÙ
ت:"
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ""
+
#: effects/TruncSilence.cpp:351
msgid "Threshold for silence:"
msgstr "عتبة Ø§ÙØµÙ
ت:"
-#: effects/TruncSilence.cpp:376
-msgid " Duration must be at least 1 millisecond"
-msgstr " ÙØ¬Ø¨ أ٠تÙÙ٠اÙÙ
دة Ø§ÙØ¯ÙÙØ§ عÙ٠اﻷÙÙ 1 Ù
Ù٠ثاÙÙØ©"
+#: effects/TruncSilence.cpp:506
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
+msgstr ""
#: effects/TruncSilence.h:28
msgid "Truncate Silence..."
@@ -5555,17 +5730,55 @@ msgstr "ÙØ·Ø¹ Ø§ÙØµÙ
ت..."
msgid "Truncating Silence..."
msgstr "ÙØ·Ø¹ Ø§ÙØµÙ
ت..."
-#: effects/VST/VSTEffect.cpp:165
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "عÙÙØ§Ø ÙØ§ÙÙ
Ù٠إجراء ØªØ£Ø«ÙØ±Ø§Øª ÙÙ.أس.ت٠عÙ٠اÙÙ
سارات Ø§ÙØ«ÙØ§Ø¦ÙØ© Ø§ÙØªÙ تÙÙÙ ÙÙÙØ§ اÙÙÙÙØ§Øª اÙÙØ±Ø¯ÙØ© ÙÙÙ
سار ØºÙØ± Ù
ØªÙØ§ÙÙØ©."
+#: effects/ladspa/LadspaEffect.cpp:608
+msgid "Effect Settings"
+msgstr "إعدادات Ø§ÙØªØ£Ø«Ùر"
+
+#: effects/ladspa/LadspaEffect.cpp:573 effects/ladspa/LadspaEffect.cpp:581
+#: prefs/GUIPrefs.cpp:51 prefs/QualityPrefs.cpp:72
+msgid "None"
+msgstr "ÙØ§ Ø´ÙØ¦"
+
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
-#: effects/VST/VSTEffect.cpp:180
-msgid "Can't process replacing"
-msgstr "ÙØ§ Ø£Ø³ØªØ·ÙØ¹ اÙÙÙØ§Ù
Ø¨Ø§ÙØªØ¨Ø¯ÙÙ"
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
-#: effects/VST/VSTEffect.cpp:403
-msgid "VST Plug-in parameters:"
-msgstr "Ù
ØªØºÙØ±Ø§Øª Ø§ÙØ¨Ø±ÙاÙ
ج اÙÙ
ساعد ÙÙ.أس.تÙ:"
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr ""
#: effects/Wahwah.cpp:61
#, c-format
@@ -5614,19 +5827,10 @@ msgstr "إجراء ØªØ£Ø«ÙØ±: %s"
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr "عÙÙØ§Ø ÙØ§ÙÙ
Ù٠إجراء ØªØ£Ø«ÙØ±Ø§Øª Ø§ÙØ¨Ø±Ø§Ù
ج اÙÙ
ساعدة عÙ٠اÙÙ
سارات Ø§ÙØ«ÙØ§Ø¦ÙØ© Ø§ÙØªÙ تÙÙÙ ÙÙÙØ§ اÙÙÙÙØ§Øª اÙÙØ±Ø¯ÙØ© ÙÙÙ
سار ØºÙØ± Ù
ØªÙØ§ÙÙØ©."
-#: effects/ladspa/LadspaEffect.cpp:573 effects/ladspa/LadspaEffect.cpp:581
-#: prefs/GUIPrefs.cpp:51 prefs/QualityPrefs.cpp:72
-msgid "None"
-msgstr "ÙØ§ Ø´ÙØ¦"
-
#: effects/ladspa/LadspaEffect.cpp:575 effects/vamp/VampEffect.cpp:384
msgid "Author: "
msgstr "اÙÙ
ؤÙÙ: "
-#: effects/ladspa/LadspaEffect.cpp:608
-msgid "Effect Settings"
-msgstr "إعدادات Ø§ÙØªØ£Ø«Ùر"
-
#: effects/ladspa/LadspaEffect.cpp:699
msgid "Length (seconds)"
msgstr "Ø§ÙØ·ÙÙ (Ø¨Ø§ÙØ«Ø§ÙÙØ©)"
@@ -5822,9 +6026,21 @@ msgstr "ØªØµØ¯ÙØ± Ù٠اÙÙ
Ø´Ø±ÙØ¹ باستخداÙ
Ù
ÙØ´ÙÙØ± سطر ا
msgid "Command Output"
msgstr "Ø£Ù
ر اÙÙ
خرج"
-#: export/ExportFFmpeg.cpp:59
+#: export/ExportFFmpeg.cpp:61
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
#: export/ExportFFmpeg.cpp:394
@@ -5892,6 +6108,10 @@ msgstr ""
msgid "AAC Export Setup"
msgstr ""
+#: export/ExportOGG.cpp:86
+msgid "Quality:"
+msgstr "Ø§ÙØ¬Ùدة:"
+
#: export/ExportFFmpegDialogs.cpp:217
msgid "Specify AMR-NB Options"
msgstr ""
@@ -6025,12 +6245,8 @@ msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n
"Recommended - 192000"
msgstr ""
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr "Ø§ÙØ¬Ùدة:"
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid "Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
@@ -6049,10 +6265,10 @@ msgstr ""
msgid "Cutoff Bandwidth:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:947
+#: export/ExportFFmpegDialogs.cpp:936
msgid "Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:949
@@ -6241,12 +6457,12 @@ msgstr ""
msgid "AC3 Files (FFmpeg)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:56
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:57
@@ -6357,6 +6573,17 @@ msgstr "عÙ
Ù Ø§ÙØ¨Øª:"
msgid "FLAC Files"
msgstr "Ù
ÙÙØ§Øª ÙÙØ§Ù"
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
#: export/ExportFLAC.cpp:310
msgid "Exporting the selected audio as FLAC"
msgstr "ØªØµØ¯ÙØ± Ø§ÙØµÙت اÙÙ
ختار Ø¨ØµÙØºØ© ÙÙØ§Ù"
@@ -6608,10 +6835,6 @@ msgstr "Ø®ÙØ§Ø±Ø§Øª..."
msgid "Export location:"
msgstr "Ù
ÙØ§Ù Ø§ÙØªØµØ¯Ùر:"
-#: export/ExportMultiple.cpp:216 prefs/DirectoriesPrefs.cpp:92
-msgid "Choose..."
-msgstr "Ø§Ø®ØªÙØ§Ø±..."
-
#: export/ExportMultiple.cpp:217
msgid "Create"
msgstr "Ø¥ÙØ´Ø§Ø¡"
@@ -6636,10 +6859,6 @@ msgstr "اسÙ
اÙÙ
Ù٠اﻷÙÙ:"
msgid "First file name"
msgstr ""
-#: export/ExportMultiple.cpp:258
-msgid "Tracks"
-msgstr "Ù
سارات"
-
#: export/ExportMultiple.cpp:265
msgid "Name files:"
msgstr "تسÙ
ÙØ© اÙÙ
ÙÙØ§Øª:"
@@ -6673,6 +6892,35 @@ msgstr "تÙ
Ø¥ÙØ´Ø§Ø¡ \"%s\" Ø¨ÙØ¬Ø§Ø."
msgid "Choose a location to save the exported files"
msgstr "Ø§Ø®ØªÙØ§Ø± Ù
ÙØ§Ù ÙØÙØ¸ اÙÙ
ÙÙØ§Øª اÙÙ
ÙØµØ¯Ùرة"
+#: export/ExportMultiple.cpp:524
+#, c-format
+msgid "Successfully exported the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:527
+#, c-format
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr ""
+
#: export/ExportMultiple.cpp:470
#, c-format
msgid "\"%s\" doesn't exist.\n"
@@ -6686,16 +6934,6 @@ msgstr "\"%s\" ØºÙØ± Ù
ÙØ¬Ùد.\n"
msgid "Edit metadata"
msgstr "ØªØØ±Ùر اÙÙ
ÙØªØ§Ø¨ÙÙØ§Øª"
-#: export/ExportMultiple.cpp:595 export/ExportMultiple.cpp:762
-#, c-format
-msgid "Successfully exported %d file(s)."
-msgstr "تÙ
ØªØµØ¯ÙØ± %d Ù
ÙÙ Ø¨ÙØ¬Ø§Ø."
-
-#: export/ExportMultiple.cpp:596 export/ExportMultiple.cpp:763
-#, c-format
-msgid "Something went wrong after exporting %d file(s)."
-msgstr "ØØ¯Ø« خطأ بعد ØªØµØ¯ÙØ± %d Ù
ÙÙ."
-
#: export/ExportMultiple.cpp:825
#, c-format
msgid "Label %s is not a legal file name. You cannot use any of: %s\n"
@@ -6864,7 +7102,6 @@ msgstr "\"%s\" ÙÙ Ù
Ù٠تشÙÙØ± ØµÙØªÙ Ù
ØªØ·ÙØ±. \n"
"Ø£ÙØª Ø¨ØØ§Ø¬Ø© ÙØªØÙÙÙ٠إÙÙ ØµÙØºØ© Ù
دعÙÙ
Ø© ÙÙ Ø¬ÙØ±Ø£Ø©Ø Ù
Ø«Ù ÙØ§Ù٠أ٠آÙÙ."
#: import/Import.cpp:271
-#, c-format
#, fuzzy
msgid "\"%s\" is an encrypted audio file. \n"
"These typically are from an online music store. \n"
@@ -6968,6 +7205,10 @@ msgstr ""
msgid "FLAC files"
msgstr "Ù
ÙÙØ§Øª ÙÙØ§Ù"
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr ""
+
#: import/ImportLOF.cpp:92
msgid "List of Files in basic text format"
msgstr "ÙØ§Ø¦Ù
Ø© اÙÙ
ÙÙØ§Øª ذات Ø§ÙØµÙغة اÙÙØµÙØ© Ø§ÙØ£Ø³Ø§Ø³ÙØ©"
@@ -7125,34 +7366,41 @@ msgstr ""
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr ""
-#: prefs/AudioIOPrefs.cpp:41 prefs/AudioIOPrefs.cpp:42
-msgid "Audio I/O"
-msgstr "Ù
ÙÙØ° ØµÙØªÙ"
+#: prefs/BatchPrefs.cpp:55 prefs/BatchPrefs.cpp:56
+msgid "Batch"
+msgstr "Ø§ÙØ¯Ùعة"
-#: prefs/AudioIOPrefs.cpp:100
-msgid "1 (Mono)"
-msgstr "1 (Ø£ØØ§Ø¯Ù)"
+#: prefs/BatchPrefs.cpp:77 prefs/GUIPrefs.cpp:92
+msgid "Behaviors"
+msgstr "Ø§ÙØ³ÙÙÙØ§Øª"
-#: prefs/AudioIOPrefs.cpp:101
-msgid "2 (Stereo)"
-msgstr "2 (Ø«ÙØ§Ø¦Ù)"
+#: prefs/BatchPrefs.cpp:80 prefs/GUIPrefs.cpp:129
+msgid "&Don't apply effects in batch mode"
+msgstr "ÙØ§ &ØªØ·Ø¨Ù Ø§ÙØªØ£Ø«Ùرات ÙÙ ÙÙ
Ø· Ø§ÙØ¯Ùعة"
-#: prefs/AudioIOPrefs.cpp:115
-msgid "Playback"
-msgstr "ÙØ±Ø§Ø¡Ø©"
+#: prefs/BatchPrefs.cpp:83 prefs/GUIPrefs.cpp:132
+msgid "Cl&eanSpeech Mode (Customized GUI)"
+msgstr "ÙÙ
Ø· Ø§ÙØ®Ø·Ø§Ø¨ اÙÙ&ظÙÙ (اÙÙØ§Ø¬ÙØ© Ø§ÙØ±Ø³ÙÙ
ÙØ© ØØ³Ø¨ Ø·ÙØ¨ اÙÙ
ستخدÙ
)"
-#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
-#: toolbars/DeviceToolBar.cpp:57
-msgid "Device"
-msgstr "Ø¬ÙØ§Ø²"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:34 prefs/GUIPrefs.cpp:35
+msgid "Interface"
+msgstr "اÙÙØ§Ø¬ÙØ©"
+
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
+msgstr ""
#: prefs/AudioIOPrefs.cpp:122
msgid "Using:"
msgstr "استخداÙ
:"
-#: prefs/AudioIOPrefs.cpp:123
-msgid "Portaudio v"
-msgstr "باب ØµÙØªÙ v"
+#: prefs/AudioIOPrefs.cpp:115
+msgid "Playback"
+msgstr "ÙØ±Ø§Ø¡Ø©"
#: prefs/AudioIOPrefs.cpp:133
msgid "Recording"
@@ -7162,93 +7410,13 @@ msgstr "تسجÙÙ"
msgid "Channels"
msgstr "ÙÙÙØ§Øª"
-#: prefs/AudioIOPrefs.cpp:145
-msgid "Playthrough"
-msgstr "ÙØ±Ø§Ø¡Ø© Ø¨ÙØ§Ø³Ø·Ø©"
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr "ÙØ±Ø§Ø¡Ø© Ø¨ÙØ§Ø³Ø·Ø© Ø§ÙØ¢&ÙØ©: ÙØ±Ø§Ø¡Ø© اÙÙ
سار Ø§ÙØ¬Ø¯Ùد Ø£Ø«ÙØ§Ø¡ تسجÙÙÙ"
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr "ÙØ±Ø§Ø¡Ø© &Ø¨ÙØ§Ø³Ø·Ø© Ø§ÙØ¨Ø±ÙاÙ
ج: ÙØ±Ø§Ø¡Ø© اÙÙ
سار Ø§ÙØ¬Ø¯Ùد Ø£Ø«ÙØ§Ø¡ تسجÙÙÙ"
-
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:162
-msgid "Effects Preview"
-msgstr "عرض Ù
سب٠ÙÙØªØ£Ø«Ùرات"
-
-#: prefs/AudioIOPrefs.cpp:165
-msgid "Length of preview:"
-msgstr "Ø·ÙÙ Ø§ÙØ¹Ø±Ø¶ اÙÙ
سبÙ"
-
-#: prefs/AudioIOPrefs.cpp:170
-msgid "Cut Preview"
-msgstr "ÙØµ Ø§ÙØ¹Ø±Ø¶ اÙÙ
سبÙ"
-
-#: prefs/AudioIOPrefs.cpp:173
-msgid "Preview before cut region:"
-msgstr "عرض Ù
Ø³Ø¨Ù ÙØ¨Ù Ù
ÙØ·ÙØ© اÙÙØµ:"
-
-#: prefs/AudioIOPrefs.cpp:175
-msgid "Preview after cut region:"
-msgstr "عرض Ù
سب٠بعد Ù
ÙØ·ÙØ© اÙÙØµ:"
-
-#: prefs/AudioIOPrefs.cpp:183
-msgid "Latency"
-msgstr "اÙÙÙ
ÙÙ"
-
-#: prefs/AudioIOPrefs.cpp:189
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
-msgstr "Ø§ÙØµÙت Ø¥Ù٠اÙÙØ§ÙÙ:\n"
-"(أعÙÙ = ÙÙ
ÙÙ Ø£ÙØ«Ø±)"
-
-#: prefs/AudioIOPrefs.cpp:192
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr "تصØÙØ Ø§ÙÙÙ
ÙÙ:\n"
-"(Ø³Ø§ÙØ¨ = Ø¥ÙÙ Ø§ÙØ®ÙÙ)"
-
-#: prefs/AudioIOPrefs.cpp:197
-msgid "Seek Time when playing"
-msgstr "Ø¨ØØ« اÙÙÙØª Ø£Ø«ÙØ§Ø¡ اÙÙØ±Ø§Ø¡Ø©"
-
-#: prefs/AudioIOPrefs.cpp:200
-msgid "Short period:"
-msgstr "Ù
دة ÙØµÙرة:"
-
-#: prefs/AudioIOPrefs.cpp:202
-msgid "Long period:"
-msgstr "Ù
دة Ø·ÙÙÙØ©:"
-
-#: prefs/BatchPrefs.cpp:55 prefs/BatchPrefs.cpp:56
-msgid "Batch"
-msgstr "Ø§ÙØ¯Ùعة"
-
-#: prefs/BatchPrefs.cpp:77 prefs/GUIPrefs.cpp:92
-msgid "Behaviors"
-msgstr "Ø§ÙØ³ÙÙÙØ§Øª"
-
-#: prefs/BatchPrefs.cpp:80 prefs/GUIPrefs.cpp:129
-msgid "&Don't apply effects in batch mode"
-msgstr "ÙØ§ &ØªØ·Ø¨Ù Ø§ÙØªØ£Ø«Ùرات ÙÙ ÙÙ
Ø· Ø§ÙØ¯Ùعة"
+#: prefs/AudioIOPrefs.cpp:100
+msgid "1 (Mono)"
+msgstr "1 (Ø£ØØ§Ø¯Ù)"
-#: prefs/BatchPrefs.cpp:83 prefs/GUIPrefs.cpp:132
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr "ÙÙ
Ø· Ø§ÙØ®Ø·Ø§Ø¨ اÙÙ&ظÙÙ (اÙÙØ§Ø¬ÙØ© Ø§ÙØ±Ø³ÙÙ
ÙØ© ØØ³Ø¨ Ø·ÙØ¨ اÙÙ
ستخدÙ
)"
+#: prefs/AudioIOPrefs.cpp:101
+msgid "2 (Stereo)"
+msgstr "2 (Ø«ÙØ§Ø¦Ù)"
#: prefs/DirectoriesPrefs.cpp:55 prefs/DirectoriesPrefs.cpp:56
#: prefs/PrefsDialog.cpp:279
@@ -7267,34 +7435,31 @@ msgstr "اÙÙ
ÙØ§Ù:"
msgid "Free Space:"
msgstr "اÙÙ
Ø³Ø§ØØ© اÙÙØ§Ø±ØºØ©:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr "ØÙظ تÙÙØ§Ø¦Ù"
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr "ØÙظ ÙØ³Ø®Ø© Ù
٠اÙÙ
Ø´Ø±ÙØ¹ تÙÙØ§Ø¦Ùا ÙÙ Ù
Ø¬ÙØ¯ Ù
ÙÙØµÙ"
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
-msgstr "Ù
Ø¬Ø§Ù Ø§ÙØÙØ¸ Ø§ÙØªÙÙØ§Ø¦Ù:"
-
-#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
-msgstr "Ø¯ÙØ§Ø¦Ù"
-
#: prefs/DirectoriesPrefs.cpp:110
msgid "Audio cache"
msgstr "Ù
خبأ تÙÙØ§Ø¦Ù"
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "Play and/or record using RAM (useful for slow drives)"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
#: prefs/DirectoriesPrefs.cpp:121
msgid "Choose a location to place the temporary directory"
msgstr "Ø§Ø®ØªÙØ§Ø± Ù
ÙØ§Ù ÙÙØ¶Ø¹ Ø§ÙØ¯ÙÙ٠اÙÙ
Ø¤ÙØª"
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: prefs/DirectoriesPrefs.cpp:166
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -7313,225 +7478,143 @@ msgstr "ÙØ§ ÙÙ
٠اÙÙØªØ§Ø¨Ø© ÙÙ Ø§ÙØ¯ÙÙÙ %s"
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "تغÙÙØ± Ø§ÙØ¯ÙÙ٠اÙÙ
Ø¤ÙØª سÙÙÙÙ ÙØ¹ÙØ§ÙØ§ Ø¹ÙØ¯ إعادة تشغÙÙ Ø¬ÙØ±Ø£Ø© Ù
Ù Ø¬Ø¯ÙØ¯"
-#: prefs/FileFormatPrefs.cpp:48 prefs/FileFormatPrefs.cpp:49
-msgid "Import / Export"
-msgstr "Ø§Ø³ØªÙØ±Ø§Ø¯ / ØªØµØ¯ÙØ±"
-
-#: prefs/FileFormatPrefs.cpp:77
-msgid "MP3 Export Library"
-msgstr "Ù
ÙØªØ¨Ø© Ø§Ø³ØªÙØ±Ø§Ø¯ Ø£Ù
.بÙ.3"
-
-#: prefs/FileFormatPrefs.cpp:80
-msgid "MP3 Library Version:"
-msgstr "إصدار Ù
ÙØªØ¨Ø© Ø£Ù
.بÙ.3:"
+#: prefs/GUIPrefs.cpp:42
+msgid "In Browser"
+msgstr "Ù٠اÙÙ
ÙØªØµÙØ"
-#: prefs/FileFormatPrefs.cpp:86
-msgid "MP3 Library:"
-msgstr "Ù
ÙØªØ¨Ø© Ø£Ù
.بÙ.3:"
+#: prefs/GUIPrefs.cpp:43
+msgid "From Internet"
+msgstr "Ù
Ù Ø§ï»·ÙØªØ±Ùت"
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:91
-msgid "LAME MP3 Library:"
-msgstr "Ù
ÙØªØ¨Ø© ÙØ§ÙÙ
Ø£Ù
.بÙ.3"
-
-#: prefs/FileFormatPrefs.cpp:94
-msgid "&Download"
-msgstr "&ØªÙØ²ÙÙ"
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:136
-#, fuzzy
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr "Ù
ÙØ§ØØ¸Ø©: ÙÙ
Ù٠تغÙÙØ± Ø®ÙØ§Ø±Ø§Øª Ø¬ÙØ¯Ø© Ø§ÙØªØµØ¯Ùر باÙÙÙØ± عÙ٠زر Ø§ÙØ®Ùارات ÙÙ Ø¹ÙØ¨Ø© ØÙار Ø§ÙØªØµØ¯Ùر.\n"
-
-#: prefs/FileFormatPrefs.cpp:100
-msgid "When importing audio files"
-msgstr "Ø¹ÙØ¯ Ø§Ø³ØªÙØ±Ø§Ø¯ اÙÙ
ÙÙØ§Øª Ø§ÙØµÙØªÙØ©"
-
-#: prefs/FileFormatPrefs.cpp:103
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
-msgstr "&ÙØ³Ø® اÙÙ
ÙÙØ§Øª Ø§ÙØµÙØªÙØ© ØºÙØ± اÙÙ
Ø¶ØºÙØ·Ø© ÙØ¨Ù ØªØØ±ÙØ±ÙØ§ (Ø¢Ù
Ù)"
-
-#: prefs/FileFormatPrefs.cpp:104
-msgid "&Read uncompressed audio files directly from the original (faster)"
-msgstr "&ÙØ±Ø§Ø¡Ø© اÙÙ
ÙÙØ§Øª Ø§ÙØµÙØªÙØ© ØºÙØ± اÙÙ
Ø¶ØºÙØ·Ø© اﻷصÙÙØ© Ù
باشرة (أسرع)"
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "&Normalize all tracks in project"
-msgstr "&ØªØ·Ø¨ÙØ¹ ÙÙ Ù
سارات اÙÙ
Ø´Ø±ÙØ¹ "
-
-#: prefs/FileFormatPrefs.cpp:111
-msgid "When saving a project that depends on other audio files"
-msgstr "Ø¹ÙØ¯ ØÙظ Ù
Ø´Ø±ÙØ¹ ÙØ¹ØªÙ
د عÙÙ Ù
ÙÙØ§Øª ØµÙØªÙØ© أخرÙ"
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
+msgstr ""
-#: prefs/FileFormatPrefs.cpp:114
-msgid "Always © all audio into project (safest)"
-msgstr "دائÙ
ا &Ø§ÙØ³Ø® ÙÙ Ø§ÙØµÙت Ø¥Ù٠اÙÙ
Ø´Ø±ÙØ¹ (Ø§ÙØ£Ø³ÙÙ
)"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
+msgstr ""
-#: prefs/FileFormatPrefs.cpp:115
-msgid "&Do not copy any audio"
-msgstr "&ÙØ§ ØªÙØ³Ø® Ø£Ù ØµÙØª"
+#: prefs/GUIPrefs.cpp:141
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 Ø¯ÙØ³Ùب٠(Ù
جا٠ضØÙ ÙØªØØ±Ùر Ø§ÙØ³Ø¹Ø§Øª Ø§ÙØ¹Ø§ÙÙØ©)"
-#: prefs/FileFormatPrefs.cpp:116
-msgid "&Ask user"
-msgstr "&استشر اÙÙ
ستخدÙ
"
+#: prefs/GUIPrefs.cpp:142
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 Ø¯ÙØ³Ùب٠(Ù
جا٠بÙ.سÙ.Ø£Ù
ÙØ¹ÙÙÙØ§Øª 8 بت)"
-#: prefs/FileFormatPrefs.cpp:120
-msgid "When exporting tracks to an audio file"
-msgstr "Ø¹ÙØ¯ ØªØµØ¯ÙØ± اÙÙ
سارات Ø¥ÙÙ Ù
ÙÙ ØµÙØªÙ"
+#: prefs/GUIPrefs.cpp:143
+msgid "-60 dB (PCM range of 10 bit samples)"
+msgstr "-60 Ø¯ÙØ³Ùب٠(Ù
جا٠بÙ.سÙ.Ø£Ù
ÙØ¹ÙÙÙØ§Øª 8 بت)"
-#: prefs/FileFormatPrefs.cpp:123
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
-msgstr "&Ù
زج Ù٠اÙÙ
سارات Ø¥ÙÙ ÙÙØ§Ø© Ø«ÙØ§Ø¦ÙØ© Ø£Ù Ø£ØØ§Ø¯ÙØ© دائÙ
ا"
+#: prefs/GUIPrefs.cpp:144
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 Ø¯ÙØ³Ùب٠(Ù
جا٠بÙ.سÙ.Ø£Ù
ÙØ¹ÙÙÙØ§Øª 16 بت)"
-#: prefs/FileFormatPrefs.cpp:124
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
-msgstr "&استخدÙ
اÙÙ
زج اÙÙ
خصص (Ù
Ø«ÙØ§ ÙØªØµØ¯Ùر Ù
ÙÙ Ù
تعدد اÙÙÙÙØ§Øª 5.1)"
+#: prefs/GUIPrefs.cpp:145
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 Ø¯ÙØ³Ùب٠(Ø§ÙØØ¯ Ø§ÙØªÙØ±ÙØ¨Ù ÙÙØ³Ù
ع Ø¹ÙØ¯ Ø§ÙØ¥ÙساÙ)"
-#: prefs/FileFormatPrefs.cpp:126
-msgid "S&how Metadata Editor prior to export step"
-msgstr "&عرض Ù
ØØ±Ø± اÙÙ
ÙØªØ§Ø¨ÙØ§ÙØ§Øª ÙØ¨Ù Ø§ÙØªØµØ¯Ùر"
+#: prefs/GUIPrefs.cpp:146
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "- 145 Ø¯ÙØ³Ùب٠(Ù
جا٠بÙ.سÙ.Ø£Ù
ÙØ¹ÙÙÙØ§Øª 24 بت)"
-#: prefs/GUIPrefs.cpp:34 prefs/GUIPrefs.cpp:35
-msgid "Interface"
-msgstr "اÙÙØ§Ø¬ÙØ©"
+#: prefs/SpectrumPrefs.cpp:140
+msgid "Display"
+msgstr "عرض"
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
-msgstr "Ù٠اÙÙ
ÙØªØµÙØ"
+#: prefs/GUIPrefs.cpp:100
+msgid "Er&gonomic order of audio I/O buttons"
+msgstr ""
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
-msgstr "Ù
Ù Ø§ï»·ÙØªØ±Ùت"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
+msgstr ""
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
-msgstr "Ø¨Ø³ÙØ·"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
+msgstr ""
-#: prefs/GUIPrefs.cpp:94
-msgid "&Update display while playing"
-msgstr "&ØªØØ¯ÙØ« Ø§ÙØ¹Ø±Ø¶ Ø£Ø«ÙØ§Ø¡ اÙÙØ±Ø§Ø¡Ø©"
+#: prefs/GUIPrefs.cpp:169
+msgid "Help:"
+msgstr "Ù
ساعدة:"
#: prefs/GUIPrefs.cpp:96
#, fuzzy
msgid "Cl&osing last window quits Audacity"
msgstr "Ø§ÙØ®Ø±Ùج Ù
Ù Ø¬ÙØ±Ø£Ø© Ø¹ÙØ¯ غÙ٠آخر ÙØ§Ùذة "
-#: prefs/GUIPrefs.cpp:98
-msgid "Enable &dragging of left and right selection edges"
-msgstr "ØªÙØ¹ÙÙ &Ø³ØØ¨ ØØ§ÙØªÙ Ø§ÙØ§Ø®ØªÙار اÙÙØ³Ø±Ù ٠اÙÙÙ
ÙÙ"
-
-#: prefs/GUIPrefs.cpp:100
-msgid "Er&gonomic order of audio I/O buttons"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:102
-msgid "Automatically &fit tracks vertically zoomed"
-msgstr "&ص٠تÙÙØ§Ø¦Ù ÙÙÙ
سارات Ù
ع Ø§ÙØªÙØ¨ÙØ± عÙ
ÙØ¯Ùا"
-
-#: prefs/GUIPrefs.cpp:104
-#, fuzzy
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
-msgstr "\"ØªØØ±ÙÙ ÙÙØ·Ø© Ø§ÙØªØ±ÙÙØ² عÙ٠اÙÙ
سارات\" &بشÙÙ Ø¯ÙØ±Ø§Ù Ù
ØªÙØ±Ø± عÙ٠اÙÙ
سارات"
-
-#: prefs/GUIPrefs.cpp:106
-msgid "Editing a &clip can move other clips"
-msgstr "ØªØØ±Ùر &Ù
ÙØ·Ø¹ ÙÙ
ÙÙ Ø£Ù ÙØØ±Ù Ù
ÙØ§Ø·Ø¹ أخرÙ"
-
-#: prefs/GUIPrefs.cpp:108
-msgid "&Select all audio in project, if none selected"
-msgstr "ا&Ø®ØªÙØ§Ø± ÙÙ Ø§ÙØµÙت Ù٠اÙÙ
Ø´Ø±ÙØ¹Ø إذا ÙÙ
ÙÙÙ Ù
ختارا Ù
Ù ÙØ¨Ù"
-
#: prefs/GUIPrefs.cpp:110
msgid "&Beep on completion of longer activities"
msgstr "&أصدر صÙÙØ± Ø¹ÙØ¯ Ø¥ÙÙØ§Ø¡ Ø§ÙØ¹Ù
ÙÙØ§Øª Ø§ÙØ·ÙÙÙØ©"
-#: prefs/GUIPrefs.cpp:114
-msgid "Show / Hide"
-msgstr "عرض / Ø¥Ø®ÙØ§Ø¡"
-
-#: prefs/GUIPrefs.cpp:116
-msgid "Enable cut &lines"
-msgstr "ØªÙØ¹ÙÙ &Ø®Ø·ÙØ· اÙÙØ·Ø¹"
-
-#: prefs/GUIPrefs.cpp:118
-msgid "Show warnings about &temp files"
-msgstr "Ø£Ø¸ÙØ± Ø§ÙØ¥Ùذارات ØÙ٠اÙÙ
ÙÙØ§Øª اÙ&Ù
Ø¤ÙØªØ©"
-
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:122
-#, fuzzy
-msgid "Show &Welcome Message at program start up"
-msgstr "عرض اÙÙÙÙ
Ø© Ø§ÙØªØ±ØÙØ¨ÙØ© Ø¹ÙØ¯ بدأ Ø§ÙØ¨Ø±ÙاÙ
ج"
-
#: prefs/GUIPrefs.cpp:126
msgid "Modes"
msgstr "Ø£ÙÙ
اط"
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
+msgstr ""
+
#: prefs/GUIPrefs.cpp:129
msgid "Don't a&pply effects in batch mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
-msgstr "عرض Ø§ÙØØ¯ اﻷدÙÙ ÙÙÙ
جاÙ: Ø£Ù
تار Ù 'Ø´Ù٠اÙÙ
ÙØ¬Ø© (Ø¯ÙØ³ÙبÙ)'"
-
-#: prefs/GUIPrefs.cpp:141
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 Ø¯ÙØ³Ùب٠(Ù
جا٠ضØÙ ÙØªØØ±Ùر Ø§ÙØ³Ø¹Ø§Øª Ø§ÙØ¹Ø§ÙÙØ©)"
+#: prefs/FileFormatPrefs.cpp:48 prefs/FileFormatPrefs.cpp:49
+msgid "Import / Export"
+msgstr "Ø§Ø³ØªÙØ±Ø§Ø¯ / ØªØµØ¯ÙØ±"
-#: prefs/GUIPrefs.cpp:142
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 Ø¯ÙØ³Ùب٠(Ù
جا٠بÙ.سÙ.Ø£Ù
ÙØ¹ÙÙÙØ§Øª 8 بت)"
+#: prefs/FileFormatPrefs.cpp:100
+msgid "When importing audio files"
+msgstr "Ø¹ÙØ¯ Ø§Ø³ØªÙØ±Ø§Ø¯ اÙÙ
ÙÙØ§Øª Ø§ÙØµÙØªÙØ©"
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
-msgstr "-60 Ø¯ÙØ³Ùب٠(Ù
جا٠بÙ.سÙ.Ø£Ù
ÙØ¹ÙÙÙØ§Øª 8 بت)"
+#: prefs/FileFormatPrefs.cpp:103
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
+msgstr "&ÙØ³Ø® اÙÙ
ÙÙØ§Øª Ø§ÙØµÙØªÙØ© ØºÙØ± اÙÙ
Ø¶ØºÙØ·Ø© ÙØ¨Ù ØªØØ±ÙØ±ÙØ§ (Ø¢Ù
Ù)"
-#: prefs/GUIPrefs.cpp:144
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 Ø¯ÙØ³Ùب٠(Ù
جا٠بÙ.سÙ.Ø£Ù
ÙØ¹ÙÙÙØ§Øª 16 بت)"
+#: prefs/FileFormatPrefs.cpp:104
+msgid "&Read uncompressed audio files directly from the original (faster)"
+msgstr "&ÙØ±Ø§Ø¡Ø© اÙÙ
ÙÙØ§Øª Ø§ÙØµÙØªÙØ© ØºÙØ± اÙÙ
Ø¶ØºÙØ·Ø© اﻷصÙÙØ© Ù
باشرة (أسرع)"
-#: prefs/GUIPrefs.cpp:145
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 Ø¯ÙØ³Ùب٠(Ø§ÙØØ¯ Ø§ÙØªÙØ±ÙØ¨Ù ÙÙØ³Ù
ع Ø¹ÙØ¯ Ø§ÙØ¥ÙساÙ)"
+#: prefs/FileFormatPrefs.cpp:106
+msgid "&Normalize all tracks in project"
+msgstr "&ØªØ·Ø¨ÙØ¹ ÙÙ Ù
سارات اÙÙ
Ø´Ø±ÙØ¹ "
-#: prefs/GUIPrefs.cpp:146
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "- 145 Ø¯ÙØ³Ùب٠(Ù
جا٠بÙ.سÙ.Ø£Ù
ÙØ¹ÙÙÙØ§Øª 24 بت)"
+#: prefs/FileFormatPrefs.cpp:120
+msgid "When exporting tracks to an audio file"
+msgstr "Ø¹ÙØ¯ ØªØµØ¯ÙØ± اÙÙ
سارات Ø¥ÙÙ Ù
ÙÙ ØµÙØªÙ"
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
-msgstr "ÙÙ
Ø· Ø§ÙØ¹Ø±Ø¶ Ø§ÙØ§ÙتراضÙ"
+#: prefs/FileFormatPrefs.cpp:123
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+msgstr "&Ù
زج Ù٠اÙÙ
سارات Ø¥ÙÙ ÙÙØ§Ø© Ø«ÙØ§Ø¦ÙØ© Ø£Ù Ø£ØØ§Ø¯ÙØ© دائÙ
ا"
-#: prefs/GUIPrefs.cpp:166
-msgid "Other interface choices"
-msgstr "Ø®ÙØ§Ø±Ø§Øª أخر٠ÙÙÙØ§Ø¬ÙØ©"
+#: prefs/FileFormatPrefs.cpp:124
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+msgstr "&استخدÙ
اÙÙ
زج اÙÙ
خصص (Ù
Ø«ÙØ§ ÙØªØµØ¯Ùر Ù
ÙÙ Ù
تعدد اÙÙÙÙØ§Øª 5.1)"
-#: prefs/GUIPrefs.cpp:169
-msgid "Help:"
-msgstr "Ù
ساعدة:"
+#: prefs/FileFormatPrefs.cpp:126
+msgid "S&how Metadata Editor prior to export step"
+msgstr "&عرض Ù
ØØ±Ø± اÙÙ
ÙØªØ§Ø¨ÙØ§ÙØ§Øª ÙØ¨Ù Ø§ÙØªØµØ¯Ùر"
-#: prefs/GUIPrefs.cpp:170
-msgid "Solo Button:"
-msgstr "زر ÙØÙØ¯:"
+#: prefs/ImportExportPrefs.cpp:84
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
+msgstr ""
#: prefs/KeyConfigPrefs.cpp:64 prefs/KeyConfigPrefs.cpp:65
msgid "Keyboard"
@@ -7561,17 +7644,22 @@ msgstr "Ù
ÙØ§ØØ¸Ø©: Ø§ÙØ¶ØºØ· عÙÙ Cmd+Q ÙØ¤Ø¯Ù Ø¥ÙÙ Ø§ÙØ®Ø±Ùج. ÙÙ
msgid "&Defaults"
msgstr "اÙÙÙÙ
اÙ&Ø§ÙØªØ±Ø§Ø¶ÙØ©"
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr ""
+
#: prefs/KeyConfigPrefs.cpp:143
msgid "Key Combination"
msgstr "Ù
جÙ
ÙØ¹Ø© Ù
ÙØ§ØªÙØ"
-#: prefs/KeyConfigPrefs.cpp:163
-msgid "Export Keyboard Shortcuts As:"
-msgstr "ØªØµØ¯ÙØ± اختصارات ÙÙØØ© اÙÙ
ÙØ§ØªÙØ ÙÙ:"
+#: prefs/KeyConfigPrefs.cpp:367 toolbars/EditToolBar.cpp:144
+msgid "Undo"
+msgstr "تراجع"
-#: prefs/KeyConfigPrefs.cpp:181
-msgid "Error saving keyboard shortcuts"
-msgstr "خطأ ÙÙ ØÙظ اختصارات ÙÙØØ© اÙÙ
ÙØ§ØªÙØ"
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr ""
#: prefs/KeyConfigPrefs.cpp:196
msgid "Select an XML file containing Audacity keyboard shortcuts..."
@@ -7581,6 +7669,14 @@ msgstr "اختر Ù
ÙÙ Ø£ÙØ³.Ø£Ù
.Ø£Ù ÙØØªÙ٠عÙ٠اختصارات ÙÙ
msgid "Error loading keyboard shortcuts"
msgstr "خطأ Ù٠تØÙ
Ù٠اختصارات ÙÙØØ© اÙÙ
ÙØ§ØªÙØ"
+#: prefs/KeyConfigPrefs.cpp:163
+msgid "Export Keyboard Shortcuts As:"
+msgstr "ØªØµØ¯ÙØ± اختصارات ÙÙØØ© اÙÙ
ÙØ§ØªÙØ ÙÙ:"
+
+#: prefs/KeyConfigPrefs.cpp:181
+msgid "Error saving keyboard shortcuts"
+msgstr "خطأ ÙÙ ØÙظ اختصارات ÙÙØØ© اÙÙ
ÙØ§ØªÙØ"
+
#: prefs/KeyConfigPrefs.cpp:241
#, c-format
msgid "The keyboard shortcut '%s' is already assigned to:\n"
@@ -7590,9 +7686,61 @@ msgstr "اختصار ÙÙØØ© اÙÙ
ÙØ§ØªÙØ '%s' Ù
خصص Ù
Ù ÙØ¨Ù ÙÙ:\n
"\n"
"'%s'"
-#: prefs/KeyConfigPrefs.cpp:367 toolbars/EditToolBar.cpp:144
-msgid "Undo"
-msgstr "تراجع"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:77
+msgid "MP3 Export Library"
+msgstr "Ù
ÙØªØ¨Ø© Ø§Ø³ØªÙØ±Ø§Ø¯ Ø£Ù
.بÙ.3"
+
+#: prefs/FileFormatPrefs.cpp:80
+msgid "MP3 Library Version:"
+msgstr "إصدار Ù
ÙØªØ¨Ø© Ø£Ù
.بÙ.3:"
+
+#: prefs/FileFormatPrefs.cpp:86
+msgid "MP3 Library:"
+msgstr "Ù
ÙØªØ¨Ø© Ø£Ù
.بÙ.3:"
+
+#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:91
+msgid "LAME MP3 Library:"
+msgstr "Ù
ÙØªØ¨Ø© ÙØ§ÙÙ
Ø£Ù
.بÙ.3"
+
+#: prefs/FileFormatPrefs.cpp:94
+msgid "&Download"
+msgstr "&ØªÙØ²ÙÙ"
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:109
+msgid "FFmpeg Library Version:"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
+msgid "FFmpeg Library:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:41 prefs/AudioIOPrefs.cpp:42
+msgid "Audio I/O"
+msgstr "Ù
ÙÙØ° ØµÙØªÙ"
+
+#: prefs/AudioIOPrefs.cpp:123
+msgid "Portaudio v"
+msgstr "باب ØµÙØªÙ v"
+
+#: prefs/AudioIOPrefs.cpp:145
+msgid "Playthrough"
+msgstr "ÙØ±Ø§Ø¡Ø© Ø¨ÙØ§Ø³Ø·Ø©"
#: prefs/AudioIOPrefs.cpp:147
msgid "&Play other tracks while recording new one"
@@ -7606,6 +7754,10 @@ msgstr ""
msgid "&Software Playthrough (Play new track while recording it)"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:170
+msgid "Cut Preview"
+msgstr "ÙØµ Ø§ÙØ¹Ø±Ø¶ اÙÙ
سبÙ"
+
#: prefs/MidiIOPrefs.cpp:160
msgid "Play before cut region:"
msgstr ""
@@ -7614,6 +7766,10 @@ msgstr ""
msgid "Play after cut region:"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:183
+msgid "Latency"
+msgstr "اÙÙÙ
ÙÙ"
+
#: prefs/MidiIOPrefs.cpp:173
msgid "Audio to buffer:"
msgstr ""
@@ -7626,6 +7782,18 @@ msgstr ""
msgid "Seek Time"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:200
+msgid "Short period:"
+msgstr "Ù
دة ÙØµÙرة:"
+
+#: prefs/AudioIOPrefs.cpp:202
+msgid "Long period:"
+msgstr "Ù
دة Ø·ÙÙÙØ©:"
+
+#: prefs/AudioIOPrefs.cpp:162
+msgid "Effects Preview"
+msgstr "عرض Ù
سب٠ÙÙØªØ£Ø«Ùرات"
+
#: prefs/MidiIOPrefs.cpp:196
msgid "Play when previewing:"
msgstr ""
@@ -7836,10 +8004,62 @@ msgstr "تدÙÙØ±-Ø§ÙØ¹Ø¬ÙØ©-Ctrl"
msgid "Zoom in or out"
msgstr "ØªÙØ¨Ùر Ø£Ù ØªØµØºÙØ±"
+#: prefs/AudioIOPrefs.cpp:165
+msgid "Length of preview:"
+msgstr "Ø·ÙÙ Ø§ÙØ¹Ø±Ø¶ اÙÙ
سبÙ"
+
+#: prefs/AudioIOPrefs.cpp:173
+msgid "Preview before cut region:"
+msgstr "عرض Ù
Ø³Ø¨Ù ÙØ¨Ù Ù
ÙØ·ÙØ© اÙÙØµ:"
+
+#: prefs/AudioIOPrefs.cpp:175
+msgid "Preview after cut region:"
+msgstr "عرض Ù
سب٠بعد Ù
ÙØ·ÙØ© اÙÙØµ:"
+
+#: prefs/AudioIOPrefs.cpp:197
+msgid "Seek Time when playing"
+msgstr "Ø¨ØØ« اÙÙÙØª Ø£Ø«ÙØ§Ø¡ اÙÙØ±Ø§Ø¡Ø©"
+
#: prefs/PrefsDialog.cpp:89
msgid "Audacity Preferences"
msgstr "Ø®ÙØ§Ø±Ø§Øª Ø¬ÙØ±Ø£Ø©"
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:111
+msgid "When saving a project that depends on other audio files"
+msgstr "Ø¹ÙØ¯ ØÙظ Ù
Ø´Ø±ÙØ¹ ÙØ¹ØªÙ
د عÙÙ Ù
ÙÙØ§Øª ØµÙØªÙØ© أخرÙ"
+
+#: prefs/FileFormatPrefs.cpp:114
+msgid "Always © all audio into project (safest)"
+msgstr "دائÙ
ا &Ø§ÙØ³Ø® ÙÙ Ø§ÙØµÙت Ø¥Ù٠اÙÙ
Ø´Ø±ÙØ¹ (Ø§ÙØ£Ø³ÙÙ
)"
+
+#: prefs/FileFormatPrefs.cpp:115
+msgid "&Do not copy any audio"
+msgstr "&ÙØ§ ØªÙØ³Ø® Ø£Ù ØµÙØª"
+
+#: prefs/FileFormatPrefs.cpp:116
+msgid "&Ask user"
+msgstr "&استشر اÙÙ
ستخدÙ
"
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr "ØÙظ تÙÙØ§Ø¦Ù"
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr "ØÙظ ÙØ³Ø®Ø© Ù
٠اÙÙ
Ø´Ø±ÙØ¹ تÙÙØ§Ø¦Ùا ÙÙ Ù
Ø¬ÙØ¯ Ù
ÙÙØµÙ"
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr "Ù
Ø¬Ø§Ù Ø§ÙØÙØ¸ Ø§ÙØªÙÙØ§Ø¦Ù:"
+
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr "Ø¯ÙØ§Ø¦Ù"
+
#: prefs/QualityPrefs.cpp:73
msgid "Rectangle"
msgstr "Ù
ستطÙÙ"
@@ -7864,45 +8084,46 @@ msgstr "اÙÙ
Ø¹Ø¯Ù Ø§ÙØ§Ùتراض٠ÙÙØ¹ÙÙÙØ©:"
msgid "Default Sample Format:"
msgstr "Ø§ÙØµÙغة Ø§ÙØ§ÙØªØ±Ø§Ø¶ÙØ© ÙÙØ¹ÙÙÙØ©:"
-#: prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "Ù
ÙØÙÙÙ Ù
Ø¹Ø¯Ù Ø§ÙØ¹ÙÙÙØ© باÙÙÙØª Ø§ÙØÙÙÙÙ:"
-
-#: prefs/QualityPrefs.cpp:139
-msgid "High-quality sample rate converter:"
-msgstr "Ù
ÙØÙÙÙ Ù
Ø¹Ø¯Ù Ø§ÙØ¹ÙÙÙØ© Ø¨Ø¬ÙØ¯Ø© عاÙÙØ©:"
-
-#: prefs/QualityPrefs.cpp:142
-msgid "Real-time dither:"
-msgstr "ارتجا٠باÙÙÙØª Ø§ÙØÙÙÙÙ:"
-
-#: prefs/QualityPrefs.cpp:145
-msgid "High-quality dither:"
-msgstr "Ø§Ø±ØªØ¬Ø§Ù Ø¬ÙØ¯Ø© عاÙÙØ©:"
-
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
-msgstr "تØÙÙÙ"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+#, fuzzy
+msgid "Sample Rate Converter:"
msgstr "Ù
ÙØÙÙÙ Ù
Ø¹Ø¯Ù Ø§ÙØ¹ÙÙÙØ©"
#: prefs/QualityPrefs.cpp:164
msgid "Dither"
msgstr "ارتجاÙ"
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
-msgstr "اÙÙÙØª Ø§ÙØÙÙÙÙ:"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
-msgstr "Ø¬ÙØ¯Ø© عاÙÙØ©:"
+#: prefs/AudioIOPrefs.cpp:149
+msgid "Overdub: &Play other tracks while recording new one"
+msgstr ""
-#: prefs/SmartRecordPrefs.cpp:54 prefs/SmartRecordPrefs.cpp:55
-msgid "Smart Recording"
-msgstr "Ø§ÙØªØ³Ø¬ÙÙ Ø§ÙØ°ÙÙ"
+#: prefs/AudioIOPrefs.cpp:150
+msgid "&Hardware Playthrough: Play new track while recording it"
+msgstr "ÙØ±Ø§Ø¡Ø© Ø¨ÙØ§Ø³Ø·Ø© Ø§ÙØ¢&ÙØ©: ÙØ±Ø§Ø¡Ø© اÙÙ
سار Ø§ÙØ¬Ø¯Ùد Ø£Ø«ÙØ§Ø¡ تسجÙÙÙ"
+
+#: prefs/AudioIOPrefs.cpp:157
+msgid "&Software Playthrough: Play new track while recording or monitoring"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:160
+msgid "(uncheck when recording \"stereo mix\")"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
+msgstr ""
#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
msgid "Sound Activated Recording"
@@ -7916,18 +8137,54 @@ msgstr ""
msgid "Spectrograms"
msgstr "Ø§ÙØµÙر Ø§ÙØ·ÙÙÙØ©"
-#: prefs/SpectrumPrefs.cpp:91
-msgid "FFT Size"
-msgstr "Ù
ÙØ§Ø³ تØÙÙÙ ÙÙØ±ÙÙÙ Ø§ÙØ³Ø±Ùع"
-
#: prefs/SpectrumPrefs.cpp:94
msgid "8 - most wideband"
msgstr "8 - أعرض Ù
ÙØ¬Ø©"
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:99
msgid "256 - default"
msgstr "256 - Ø§ÙØªØ±Ø§Ø¶Ù"
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:107
msgid "32768 - most narrowband"
msgstr "32768 - Ø£ØºÙØ¨ اÙÙØ·Ø§Ùات Ø§ÙØ¶ÙÙØ©"
@@ -7936,21 +8193,26 @@ msgstr "32768 - Ø£ØºÙØ¨ اÙÙØ·Ø§Ùات Ø§ÙØ¶ÙÙØ©"
msgid "4096 - most narrowband"
msgstr "4096 - Ø£ÙØµØ± Ù
ÙØ¬Ø©"
-#: prefs/SpectrumPrefs.cpp:116
-msgid "Window type:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:93
+#, fuzzy
+msgid "Window type"
msgstr "ÙÙØ¹ اÙÙØ§Ùذة:"
#: prefs/SpectrumPrefs.cpp:125
msgid "FFT Skip Points"
msgstr "ÙÙØ§Ø· اÙÙÙØ² Ù٠تØÙÙÙ ÙÙØ±ÙÙÙ Ø§ÙØ³Ø±Ùع"
-#: prefs/SpectrumPrefs.cpp:140
-msgid "Display"
-msgstr "عرض"
-
-#: prefs/SpectrumPrefs.cpp:144
-msgid "&Grayscale"
-msgstr "&درجات Ø§ÙØ±Ù
ادÙ"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
+msgstr ""
#: prefs/SpectrumPrefs.cpp:147
msgid "Minimum Frequency (Hz):"
@@ -7960,17 +8222,17 @@ msgstr "Ø§ÙØØ¯ اﻷدÙÙ ÙÙØªØ±Ø¯Ø¯ (ÙØ±ØªØ²):"
msgid "Maximum Frequency (Hz):"
msgstr "Ø§ÙØØ¯ Ø§ÙØ£Ùص٠ÙÙØªØ±Ø¯Ø¯ (ÙØ±ØªØ²):"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
-msgstr "Ø§ÙØ´Ø¨ÙØ©-&ع"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
+msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
-msgstr "&Ø¨ØØ« ع٠اÙÙØºÙ
ات"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
+msgstr ""
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
-msgstr "&ثبت ÙÙÙ
اÙÙØºÙ
ات"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
+msgstr ""
#: prefs/SpectrumPrefs.cpp:165
msgid "Minimum Amplitude (dB):"
@@ -7980,6 +8242,14 @@ msgstr "Ø§ÙØ³Ùعة Ø§ÙØ¯ÙÙØ§ (Ø¯ÙØ³ÙبÙ):"
msgid "Max. Number of Notes (1..128):"
msgstr "Ø§ÙØ¹Ø¯Ø¯ Ø§ÙØ£Ùص٠ÙÙÙØºÙ
ات (1..128):"
+#: prefs/SpectrumPrefs.cpp:161
+msgid "&Find Notes"
+msgstr "&Ø¨ØØ« ع٠اÙÙØºÙ
ات"
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Quantize Notes"
+msgstr "&ثبت ÙÙÙ
اÙÙØºÙ
ات"
+
#: prefs/SpectrumPrefs.cpp:197
msgid "The maximum frequency must be an integer"
msgstr "ÙØ¬Ø¨ Ø£Ù ÙÙÙÙ Ø§ÙØØ¯ Ø§ÙØ£Ùص٠ÙÙØªØ±Ø¯Ø¯ عددا صØÙØØ§"
@@ -7996,18 +8266,70 @@ msgstr "ÙØ¬Ø¨ Ø£Ù ÙÙÙÙ Ø§ÙØØ¯ Ø§ÙØ£Ø¯ÙÙ ÙÙØªØ±Ø¯Ø¯ عددا صØÙ
msgid "Minimum frequency must be at least 0 Hz"
msgstr "ÙØ¬Ø¨ Ø£Ù ÙÙÙÙ Ø§ÙØØ¯ Ø§ÙØ£Ø¯ÙÙ ÙÙØªØ±Ø¯Ø¯ عÙ٠اﻷÙÙ 0 ÙØ±ØªØ²"
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr "ÙØ¬Ø¨ أ٠تÙÙÙ Ø§ÙØ³Ùعة Ø§ÙØ¯ÙÙØ§ (Ø¯ÙØ³ÙبÙ) عددا صØÙØØ§"
-#: prefs/SpectrumPrefs.cpp:226 prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
-msgstr "ÙØ¬Ø¨ Ø£Ù ÙÙÙÙ Ø§ÙØ¹Ø¯Ø¯ Ø§ÙØ£Ùص٠ÙÙÙØºÙ
ات عددا صØÙØØ§ داخ٠اÙÙ
جا٠1..128"
+#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:230
+msgid "The maximum number of notes must be in the range 1..128"
+msgstr ""
#: prefs/ThemePrefs.cpp:62 prefs/ThemePrefs.cpp:63
msgid "Theme"
msgstr "اÙÙ
ÙØ¶Ùع"
+#: prefs/ThemePrefs.cpp:126
+msgid "Info"
+msgstr "Ù
عÙÙÙ
Ø©"
+
+#: prefs/ThemePrefs.cpp:91
+#, fuzzy
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr "اÙÙ
ÙØ¶ÙØ¹ÙØ© Ù٠خدÙ
Ø© ØªØ¬Ø±ÙØ¨ÙØ©.\n"
+"\n"
+"ÙØªØ¬Ø±ÙØ¨ÙØ§Ø اÙÙØ± \"ØÙظ Ù
خبأ اÙÙ
ÙØ¶Ùع\" Ø«Ù
\n"
+"Ø§Ø¨ØØ« Ø¹Ù Ø§ÙØµÙر ٠اﻷÙÙØ§Ù ÙÙ \n"
+"ImageCacheVxx.png Ù ØºÙØ±Ùا باستخداÙ
Ø¨Ø±ÙØ§Ù
ج ÙØªØØ±Ùر Ø§ÙØµÙر \n"
+"Ù
ث٠جÙÙ
ب (Gimp).\n"
+"\n"
+"اÙÙØ± \"تØÙ
ÙÙ Ù
خبأ اÙÙ
ÙØ¶Ùع\" ÙØªØÙ
ÙÙ Ø§ÙØµÙر اÙÙ
ÙØ¨Ø¯ÙØ©\n"
+"٠اﻷÙÙØ§Ù ÙÙ Ø¨Ø±ÙØ§Ù
ج Ø¬ÙØ±Ø£Ø© Ù
Ù Ø¬Ø¯ÙØ¯.\n"
+"\n"
+"[ØØ§ÙÙØ§ ÙÙ
ÙÙ ÙÙØ· تبدÙÙ Ø´Ø±ÙØ· Ø§ÙØªØÙÙ
٠اﻷÙÙØ§Ù عÙÙ \n"
+"Ù
سار اÙÙ
ÙØ¬Ø©Ø ØØªÙ Ù ÙÙ ÙØ§Ù Ù
ÙÙ Ø§ÙØµÙر\n"
+"ÙØØªÙ٠عÙ٠أÙÙÙÙØ§Øª أخرÙ.]"
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#. i18n-hint: && in here is an escape character to get a single & on screen,
#. * so keep it as is
#: prefs/ThemePrefs.cpp:93
@@ -8038,96 +8360,96 @@ msgstr "ØÙظ اÙÙ
ÙÙØ§Øª"
msgid "Load Files"
msgstr "تØÙ
Ù٠اÙÙ
ÙÙØ§Øª"
-#: prefs/ThemePrefs.cpp:126
-msgid "Info"
-msgstr "Ù
عÙÙÙ
Ø©"
+#: prefs/GUIPrefs.cpp:50
+msgid "Simple"
+msgstr "Ø¨Ø³ÙØ·"
-#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
-msgstr "اÙÙ
ÙØ¶ÙØ¹ÙØ© Ù٠خدÙ
Ø© ØªØ¬Ø±ÙØ¨ÙØ©.\n"
-"\n"
-"ÙØªØ¬Ø±ÙØ¨ÙØ§Ø اÙÙØ± \"ØÙظ Ù
خبأ اÙÙ
ÙØ¶Ùع\" Ø«Ù
\n"
-"Ø§Ø¨ØØ« Ø¹Ù Ø§ÙØµÙر ٠اﻷÙÙØ§Ù ÙÙ \n"
-"ImageCacheVxx.png Ù ØºÙØ±Ùا باستخداÙ
Ø¨Ø±ÙØ§Ù
ج ÙØªØØ±Ùر Ø§ÙØµÙر \n"
-"Ù
ث٠جÙÙ
ب (Gimp).\n"
-"\n"
-"اÙÙØ± \"تØÙ
ÙÙ Ù
خبأ اÙÙ
ÙØ¶Ùع\" ÙØªØÙ
ÙÙ Ø§ÙØµÙر اÙÙ
ÙØ¨Ø¯ÙØ©\n"
-"٠اﻷÙÙØ§Ù ÙÙ Ø¨Ø±ÙØ§Ù
ج Ø¬ÙØ±Ø£Ø© Ù
Ù Ø¬Ø¯ÙØ¯.\n"
-"\n"
-"[ØØ§ÙÙØ§ ÙÙ
ÙÙ ÙÙØ· تبدÙÙ Ø´Ø±ÙØ· Ø§ÙØªØÙÙ
٠اﻷÙÙØ§Ù عÙÙ \n"
-"Ù
سار اÙÙ
ÙØ¬Ø©Ø ØØªÙ Ù ÙÙ ÙØ§Ù Ù
ÙÙ Ø§ÙØµÙر\n"
-"ÙØØªÙ٠عÙ٠أÙÙÙÙØ§Øª أخرÙ.]\n"
-
-#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
-msgstr "ÙÙØ¯ ÙÙ
ت Ø¨Ø¨ÙØ§Ø¡ Ø¬ÙØ±Ø£Ø© Ù
ع زر إضاÙÙØ \n"
-"'ÙØ§ØªØ¬ Ø³ÙØ±ÙÙØ±Ù'. سÙÙÙÙ
ÙØ°Ø§ بØÙظ ÙØ³Ø®Ø© س٠C Ù
Ù \n"
-"Ù
خبأ Ø§ÙØµÙرة ÙÙ
Ù٠دÙ
Ø¬ÙØ§ ÙÙ Ø§ÙØ¨Ùاء ÙØµÙرة Ø§ÙØªØ±Ø§Ø¶ÙØ©.\n"
-
-#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
-msgstr "إذا ÙØ§Ù 'تØÙ
ÙÙ Ù
خبأ اÙÙ
ÙØ¶Ùع Ù
ع Ø¥ÙØ·ÙØ§Ù Ø§ÙØ¨Ø±ÙاÙ
ج' Ù
ÙÙØ¹ÙÙØ\n"
-"ÙØ¥Ù Ù
خبأ اÙÙ
ÙØ¶Ùع سÙÙØÙ
ÙÙÙ Ø¹ÙØ¯ بدأ Ø§ÙØ¨Ø±ÙاÙ
ج.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:94
+msgid "&Update display while playing"
+msgstr "&ØªØØ¯ÙØ« Ø§ÙØ¹Ø±Ø¶ Ø£Ø«ÙØ§Ø¡ اÙÙØ±Ø§Ø¡Ø©"
-#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
-msgstr "ØÙظ ٠تØÙ
ÙÙ Ù
ÙÙØ§Øª Ù
ÙØ§Ø¶Ùع ÙØ±Ø¯ÙØ© ÙØ³ØªØ®Ø¯Ù
\n"
-"Ù
ÙÙ Ù
ÙÙØµÙ ÙÙÙ ØµÙØ±Ø©Ø عدا ÙØ°Ø§ ÙØ§ÙÙÙØ±Ø© ÙÙ ÙÙØ³Ùا.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:102
+msgid "Automatically &fit tracks vertically zoomed"
+msgstr "&ص٠تÙÙØ§Ø¦Ù ÙÙÙ
سارات Ù
ع Ø§ÙØªÙØ¨ÙØ± عÙ
ÙØ¯Ùا"
-#: toolbars/ControlToolBar.cpp:174
-msgid "Pause"
-msgstr "تÙÙÙ Ù
Ø¤ÙØª"
+#: prefs/TracksPrefs.cpp:88
+#, fuzzy
+msgid "Default View Mode:"
+msgstr "ÙÙ
Ø· Ø§ÙØ¹Ø±Ø¶ Ø§ÙØ§ÙتراضÙ"
-#: toolbars/ControlToolBar.cpp:177
-msgid "Play"
-msgstr "ÙØ±Ø§Ø¡Ø©"
+#: prefs/GUIPrefs.cpp:108
+msgid "&Select all audio in project, if none selected"
+msgstr "ا&Ø®ØªÙØ§Ø± ÙÙ Ø§ÙØµÙت Ù٠اÙÙ
Ø´Ø±ÙØ¹Ø إذا ÙÙ
ÙÙÙ Ù
ختارا Ù
Ù ÙØ¨Ù"
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
+#: prefs/GUIPrefs.cpp:116
+msgid "Enable cut &lines"
+msgstr "ØªÙØ¹ÙÙ &Ø®Ø·ÙØ· اÙÙØ·Ø¹"
+
+#: prefs/GUIPrefs.cpp:98
+msgid "Enable &dragging of left and right selection edges"
+msgstr "ØªÙØ¹ÙÙ &Ø³ØØ¨ ØØ§ÙØªÙ Ø§ÙØ§Ø®ØªÙار اÙÙØ³Ø±Ù ٠اÙÙÙ
ÙÙ"
+
+#: prefs/GUIPrefs.cpp:104
+#, fuzzy
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+msgstr "\"ØªØØ±ÙÙ ÙÙØ·Ø© Ø§ÙØªØ±ÙÙØ² عÙ٠اÙÙ
سارات\" &بشÙÙ Ø¯ÙØ±Ø§Ù Ù
ØªÙØ±Ø± عÙ٠اÙÙ
سارات"
+
+#: prefs/GUIPrefs.cpp:106
+msgid "Editing a &clip can move other clips"
+msgstr "ØªØØ±Ùر &Ù
ÙØ·Ø¹ ÙÙ
ÙÙ Ø£Ù ÙØØ±Ù Ù
ÙØ§Ø·Ø¹ أخرÙ"
+
+#: prefs/GUIPrefs.cpp:170
+msgid "Solo Button:"
+msgstr "زر ÙØÙØ¯:"
+
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
msgstr ""
-#: toolbars/ControlToolBar.cpp:182
-msgid "Stop"
-msgstr "تÙÙÙ"
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:185
-msgid "Skip to Start"
-msgstr "تخط٠إÙÙ Ø§ÙØ¨Ø¯Ø§ÙØ©"
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:188
-msgid "Skip to End"
-msgstr "تخط٠إÙ٠اÙÙÙØ§ÙØ©"
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:192
-msgid "Record (Shift for Append Record)"
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
msgstr ""
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr ""
+
+#: Menus.cpp:786
+msgid "Pause"
+msgstr "تÙÙÙ Ù
Ø¤ÙØª"
+
+#: Menus.cpp:785
+msgid "Stop"
+msgstr "تÙÙÙ"
+
#: toolbars/ControlToolBar.cpp:194
msgid "Clean Speech"
msgstr "Ø§ÙØ®Ø·Ø§Ø¨ اÙÙØ¸ÙÙ"
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play (Shift for Loop Play)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:192
+msgid "Record (Shift for Append Record)"
+msgstr ""
+
#: toolbars/ControlToolBar.cpp:530 toolbars/ControlToolBar.cpp:844
msgid "Error while opening sound device. "
msgstr "ØØ¯Ø« خطأ Ø£Ø«ÙØ§Ø¡ ÙØªØ Ø¬ÙØ§Ø² Ø§ÙØµÙت. "
@@ -8168,29 +8490,21 @@ msgstr "ØªÙØ¨Ùر"
msgid "Zoom Out"
msgstr "ØªØµØºÙØ±"
-#: toolbars/EditToolBar.cpp:156
-msgid "Zoom Toggle"
-msgstr "ÙÙØ¨ Ø§ÙØªÙØ¨ÙØ± Ù Ø§ÙØªØµØºÙر"
-
-#: toolbars/EditToolBar.cpp:160
-msgid "Fit Selection"
-msgstr "Ø¬Ø¹Ù Ø§ÙØ§Ø®ØªÙار Ù
ÙØ§Ø¦Ù
"
-
#: toolbars/EditToolBar.cpp:160
msgid "Fit selection in window"
msgstr "Ø¬Ø¹Ù Ø§ÙØ§Ø®ØªÙار Ù
ÙØ§Ø¦Ù
ÙÙÙØ§Ùذة"
#: toolbars/EditToolBar.cpp:162
-msgid "Fit Project"
-msgstr "جع٠اÙÙ
Ø´Ø±ÙØ¹ Ù
ÙØ§Ø¦Ù
"
-
-#: toolbars/EditToolBar.cpp:162
msgid "Fit project in window"
msgstr "جع٠اÙÙ
Ø´Ø±ÙØ¹ Ù
ÙØ§Ø¦Ù
ÙÙÙØ§Ùذة"
-#: toolbars/MeterToolBar.cpp:50
-msgid "Meter"
-msgstr "Ø§ÙØ¹Ø¯Ø§Ø¯"
+#: toolbars/EditToolBar.cpp:160
+msgid "Fit Selection"
+msgstr "Ø¬Ø¹Ù Ø§ÙØ§Ø®ØªÙار Ù
ÙØ§Ø¦Ù
"
+
+#: toolbars/EditToolBar.cpp:162
+msgid "Fit Project"
+msgstr "جع٠اÙÙ
Ø´Ø±ÙØ¹ Ù
ÙØ§Ø¦Ù
"
#: toolbars/MeterToolBar.cpp:80
msgid "Play Meter"
@@ -8238,6 +8552,14 @@ msgstr "Ù
ØªØ²ÙØ¬-اÙÙ
دخÙ"
msgid "Input Source"
msgstr "Ù
صدر اÙÙ
دخÙ"
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:80
msgid "Selection"
msgstr "Ø§Ø®ØªÙØ§Ø±"
@@ -8315,30 +8637,6 @@ msgstr "Ø£ÙØ³Ø±=ØªÙØ¨ÙØ±Ø Ø£ÙÙ
Ù=ØªØµØºÙØ±Ø Ø£ÙØ³Ø·=عادÙ"
msgid "Click and drag to move a track in time"
msgstr "اÙÙØ± Ù Ø§Ø³ØØ¨ ÙØªØØ±Ù٠اÙÙ
سار Ù٠اÙÙÙØª"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr "Ø§ÙØ£Ø¯Ùات"
-
-#: toolbars/ToolsToolBar.cpp:147 toolbars/ToolsToolBar.cpp:182
-msgid "Selection Tool"
-msgstr "أداة Ø§ÙØ§Ø®ØªÙار"
-
-#: toolbars/ToolsToolBar.cpp:148
-msgid "Envelope Tool"
-msgstr " أداة Ø§ÙØºÙاÙ"
-
-#: toolbars/ToolsToolBar.cpp:149 toolbars/ToolsToolBar.cpp:183
-msgid "Time Shift Tool"
-msgstr "أداة ØªØØ±Ù٠اÙÙÙØª"
-
-#: toolbars/ToolsToolBar.cpp:150 toolbars/ToolsToolBar.cpp:185
-msgid "Zoom Tool"
-msgstr "أداة Ø§ÙØªÙØ¨ÙØ± Ù Ø§ÙØªØµØºÙر"
-
-#: toolbars/ToolsToolBar.cpp:151 toolbars/ToolsToolBar.cpp:184
-msgid "Draw Tool"
-msgstr "أداة Ø§ÙØ±Ø³Ù
"
-
#: toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
msgstr "ÙÙ
Ø· Ø§ÙØ£Ø¯Ùات اÙÙ
تعددة"
@@ -8347,22 +8645,10 @@ msgstr "ÙÙ
Ø· Ø§ÙØ£Ø¯Ùات اÙÙ
تعددة"
msgid "Slide Tool"
msgstr "أداة Ø§ÙØªØ²Ùج"
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr "Ø£Ø¯ÙØ§Øª Ù
تعددة"
-
-#: toolbars/TranscriptionToolBar.cpp:84
-msgid "Transcription"
-msgstr "اÙÙØ³Ø®"
-
#: toolbars/TranscriptionToolBar.cpp:171
msgid "Play at selected speed"
msgstr "ÙØ±Ø§Ø¡Ø© Ø¨Ø§ÙØ³Ø±Ø¹Ø© اÙÙ
ختارة"
-#: toolbars/TranscriptionToolBar.cpp:172
-msgid "Play-at-speed"
-msgstr "ÙØ±Ø§Ø¡Ø© بسرعة"
-
#: toolbars/TranscriptionToolBar.cpp:178 toolbars/TranscriptionToolBar.cpp:183
msgid "Playback Speed"
msgstr "سرعة اÙÙØ±Ø§Ø¡Ø©"
@@ -8371,74 +8657,38 @@ msgstr "سرعة اÙÙØ±Ø§Ø¡Ø©"
msgid "Adjust left selection to next onset"
msgstr "تعدÙÙ Ø§ÙØ§Ø®ØªÙار Ø§ÙØ£Ùسر Ø¥ÙÙ Ø§ÙØ¨Ø¯Ø§ÙØ© Ø§ÙØªØ§ÙÙØ©"
-#: toolbars/TranscriptionToolBar.cpp:197
-msgid "Left-to-On"
-msgstr "Ø§ÙØ£Ùسر ÙÙØªØ´ØºÙÙ"
-
#: toolbars/TranscriptionToolBar.cpp:199
msgid "Adjust right selection to previous offset"
msgstr "تعدÙÙ Ø§ÙØ§Ø®ØªÙار Ø§ÙØ£ÙÙ
٠إÙ٠اÙÙØ±Ø¹ Ø§ÙØ³Ø§Ø¨Ù"
-#: toolbars/TranscriptionToolBar.cpp:200
-msgid "Right-to-Off"
-msgstr "Ø§ÙØ£ÙÙ
Ù ÙÙØªÙÙÙÙ"
-
#: toolbars/TranscriptionToolBar.cpp:202
msgid "Adjust left selection to next offset"
msgstr "تعدÙÙ Ø§ÙØ§Ø®ØªÙار Ø§ÙØ£Ùسر Ø¥Ù٠اÙÙØ±Ø¹ Ø§ÙØªØ§ÙÙ"
-#: toolbars/TranscriptionToolBar.cpp:203
-msgid "Left-to-Off"
-msgstr "Ø§ÙØ£Ùسر ÙÙØªÙÙÙÙ"
-
#: toolbars/TranscriptionToolBar.cpp:205
msgid "Adjust right selection to previous onset"
msgstr "تعدÙÙ Ø§ÙØ§Ø®ØªÙار Ø§ÙØ£ÙÙ
٠إÙÙ Ø§ÙØ¨Ø¯Ø§ÙØ© Ø§ÙØ³Ø§Ø¨ÙØ©"
-#: toolbars/TranscriptionToolBar.cpp:206
-msgid "Right-to-On"
-msgstr "Ø§ÙØ£ÙÙ
Ù ÙÙØªØ´ØºÙÙ"
-
#: toolbars/TranscriptionToolBar.cpp:208
msgid "Select region of sound around cursor"
msgstr "Ø§Ø®ØªÙØ§Ø± Ù
ÙØ·ÙØ© Ø§ÙØµÙت ØÙ٠اÙÙ
ؤشر"
-#: toolbars/TranscriptionToolBar.cpp:209
-msgid "Select-Sound"
-msgstr "Ø§Ø®ØªÙØ§Ø±-Ø§ÙØµÙت"
-
#: toolbars/TranscriptionToolBar.cpp:211
msgid "Select region of silence around cursor"
msgstr "Ø§Ø®ØªÙØ§Ø± Ù
ÙØ·ÙØ© Ø§ÙØµÙ
ت ØÙ٠اÙÙ
ؤشر"
-#: toolbars/TranscriptionToolBar.cpp:212
-msgid "Select-Silence"
-msgstr "Ø§Ø®ØªÙØ§Ø±-Ø§ÙØµÙ
ت"
-
#: toolbars/TranscriptionToolBar.cpp:214
msgid "Automatically make labels from words"
msgstr "Ø¥ÙØªØ§Ø¬ Ø§ÙØ¹ÙاÙ
ات Ù
٠اÙÙÙÙ
ات تÙÙØ§Ø¦Ùا"
-#: toolbars/TranscriptionToolBar.cpp:215
-msgid "Make Labels"
-msgstr "Ø¥ÙØªØ§Ø¬ Ø§ÙØ¹ÙاÙ
ات"
-
#: toolbars/TranscriptionToolBar.cpp:217
msgid "Add label at selection"
msgstr "Ø¥Ø¶Ø§ÙØ© Ø¹ÙØ§Ù
Ø© Ø¹ÙØ¯ Ø§ÙØ§Ø®ØªÙار"
-#: toolbars/TranscriptionToolBar.cpp:218
-msgid "Add Label"
-msgstr "Ø¥Ø¶Ø§ÙØ© Ø¹ÙØ§Ù
Ø©"
-
#: toolbars/TranscriptionToolBar.cpp:220
msgid "Calibrate voicekey"
msgstr "Ù
Ø¹Ø§ÙØ±Ø© Ù
ÙØªØ§Ø Ø§ÙØµÙت"
-#: toolbars/TranscriptionToolBar.cpp:221
-msgid "Calibrate"
-msgstr "Ù
Ø¹Ø§ÙØ±Ø©"
-
#: toolbars/TranscriptionToolBar.cpp:225
msgid "Adjust Sensitivity"
msgstr "تعدÙÙ Ø§ÙØØ³Ø§Ø³ÙØ©"
@@ -8471,6 +8721,46 @@ msgstr "ØªØºÙØ±Ø§Øª Ø§ÙØ¥ØªØ¬Ø§Ù (Ø§ÙØ¹ØªØ¨Ø© اÙÙØµÙÙ)"
msgid "Key type"
msgstr "ÙÙØ¹ اÙÙ
ÙØªØ§Ø"
+#: toolbars/TranscriptionToolBar.cpp:172
+msgid "Play-at-speed"
+msgstr "ÙØ±Ø§Ø¡Ø© بسرعة"
+
+#: toolbars/TranscriptionToolBar.cpp:197
+msgid "Left-to-On"
+msgstr "Ø§ÙØ£Ùسر ÙÙØªØ´ØºÙÙ"
+
+#: toolbars/TranscriptionToolBar.cpp:200
+msgid "Right-to-Off"
+msgstr "Ø§ÙØ£ÙÙ
Ù ÙÙØªÙÙÙÙ"
+
+#: toolbars/TranscriptionToolBar.cpp:203
+msgid "Left-to-Off"
+msgstr "Ø§ÙØ£Ùسر ÙÙØªÙÙÙÙ"
+
+#: toolbars/TranscriptionToolBar.cpp:206
+msgid "Right-to-On"
+msgstr "Ø§ÙØ£ÙÙ
Ù ÙÙØªØ´ØºÙÙ"
+
+#: toolbars/TranscriptionToolBar.cpp:209
+msgid "Select-Sound"
+msgstr "Ø§Ø®ØªÙØ§Ø±-Ø§ÙØµÙت"
+
+#: toolbars/TranscriptionToolBar.cpp:212
+msgid "Select-Silence"
+msgstr "Ø§Ø®ØªÙØ§Ø±-Ø§ÙØµÙ
ت"
+
+#: toolbars/TranscriptionToolBar.cpp:215
+msgid "Make Labels"
+msgstr "Ø¥ÙØªØ§Ø¬ Ø§ÙØ¹ÙاÙ
ات"
+
+#: toolbars/TranscriptionToolBar.cpp:218
+msgid "Add Label"
+msgstr "Ø¥Ø¶Ø§ÙØ© Ø¹ÙØ§Ù
Ø©"
+
+#: toolbars/TranscriptionToolBar.cpp:221
+msgid "Calibrate"
+msgstr "Ù
Ø¹Ø§ÙØ±Ø©"
+
#: widgets/AButton.cpp:302
msgid " (disabled)"
msgstr " (ØºÙØ± Ù
ÙÙØ¹Ù)"
@@ -8863,3 +9153,15 @@ msgstr ""
msgid "Could not load file: \"%s\""
msgstr "ÙÙ
أتÙ
ÙÙ Ù
٠تØÙ
Ù٠اÙÙ
ÙÙ: \"%s\""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
+
diff --git a/locale/bg.po b/locale/bg.po
index f7b8602..d04400b 100644
--- a/locale/bg.po
+++ b/locale/bg.po
@@ -27,16 +27,15 @@ msgid "Audacity is a free program written by a team of volunteer <a href=\"http:
msgstr ""
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#. i18n-hint: The translation of "translator_credits" will appear
-#: ../src/AboutDialog.cpp:127
-#: ../src/AboutDialog.cpp:129
+#: ../src/AboutDialog.cpp:127 ../src/AboutDialog.cpp:129
msgid "translator_credits"
msgstr "ÐÑевод на бÑлгаÑÑки: ÐиÑ
аил Ðалабанов"
@@ -79,7 +78,7 @@ msgid "Special thanks:"
msgstr "СпеÑиални благодаÑноÑÑи:"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
msgstr ""
#: AboutDialog.cpp:320
@@ -190,18 +189,13 @@ msgstr ""
msgid "GPL License"
msgstr ""
-#: ../src/AudacityApp.cpp:304
-#: ../src/Project.cpp:1770
+#: ../src/AudacityApp.cpp:304 ../src/Project.cpp:1770
#, c-format
msgid "%s is already open in another window."
msgstr "%s веÑе е оÑвоÑен в дÑÑг пÑозоÑеÑ."
-#: ../src/AudacityApp.cpp:306
-#: ../src/Project.cpp:1772
-#: ../src/Project.cpp:1843
-#: ../src/Project.cpp:1894
-#: ../src/Project.cpp:1905
-#: ../src/Project.cpp:1943
+#: ../src/AudacityApp.cpp:306 ../src/Project.cpp:1772 ../src/Project.cpp:1843
+#: ../src/Project.cpp:1894 ../src/Project.cpp:1905 ../src/Project.cpp:1943
msgid "Error opening project"
msgstr "ÐÑеÑка пÑи оÑваÑÑне на пÑоекÑ"
@@ -226,20 +220,28 @@ msgstr "ÐÑ
одна амплиÑÑда"
msgid "Output Meter"
msgstr "ÐзÑ
одна амплиÑÑда"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
+#: ../src/Menus.cpp:141
+msgid "&New"
+msgstr "&Ðов"
+
+#: ../src/Menus.cpp:143
+msgid "&Open..."
+msgstr "&ÐÑваÑÑне..."
+
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
+
#: AudacityApp.cpp:534 Menus.cpp:575
-msgid "&Preferences...\tCtrl+,"
+msgid "&Preferences..."
msgstr ""
-#: ../src/AudacityApp.cpp:626
-#: ../src/AudacityApp.cpp:696
+#: ../src/AudacityApp.cpp:626 ../src/AudacityApp.cpp:696
#, c-format
msgid "Using block size of %ld\n"
msgstr "Ðзползва Ñе ÑÐ°Ð·Ð¼ÐµÑ Ð½Ð° блок %ld\n"
-#: ../src/AudacityApp.cpp:641
-#: ../src/AudacityApp.cpp:711
+#: ../src/AudacityApp.cpp:641 ../src/AudacityApp.cpp:711
#, c-format
msgid "Unknown command line option: %s\n"
msgstr "ÐÐµÐ¿Ð¾Ð·Ð½Ð°Ñ Ð¿Ð°ÑамеÑÑÑ Ð² ÐºÐ¾Ð¼Ð°Ð½Ð´Ð½Ð¸Ñ Ñед: %s\n"
@@ -354,14 +356,14 @@ msgstr "ÐÑеÑка:"
msgid "Error Initializing Audio"
msgstr "ÐÑеÑка пÑи инÑиализиÑане на звÑка"
-#: AudioIO.cpp:1236
-msgid "Latency problem"
+#: AudioIO.cpp:1225
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
+"Audacity has brought it back to start at zero.\n"
+"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
msgstr ""
#: AudioIO.cpp:1236
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
-"Audacity has brought it back to start at zero.\n"
-"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
+msgid "Latency problem"
msgstr ""
#: AutoRecovery.cpp:40
@@ -410,10 +412,8 @@ msgstr ""
msgid "Could not enumerate files in auto save directory"
msgstr ""
-#: ../src/ControlToolBar.cpp:723
-#: ../src/ControlToolBar.cpp:884
-#: ../src/effects/Effect.cpp:331
-#: ../src/prefs/DirectoriesPrefs.cpp:204
+#: ../src/ControlToolBar.cpp:723 ../src/ControlToolBar.cpp:884
+#: ../src/effects/Effect.cpp:331 ../src/prefs/DirectoriesPrefs.cpp:204
msgid "Error"
msgstr "ÐÑеÑка"
@@ -589,8 +589,9 @@ msgstr ""
msgid "C&hain (Double-Click or press SPACE to edit)"
msgstr ""
-#: BatchProcessDialog.cpp:450
-msgid "No"
+#. i18n-hint: This is the number of the command in the list
+#: BatchProcessDialog.cpp:453
+msgid "Num"
msgstr ""
#: BatchProcessDialog.cpp:456
@@ -908,11 +909,11 @@ msgstr "ÐÑавоÑгÑлен"
msgid "FFmpeg support not compiled in"
msgstr ""
-#: FFmpeg.cpp:101
+#: FFmpeg.cpp:103
msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
#: FFmpeg.cpp:104
@@ -968,11 +969,12 @@ msgstr ""
msgid "FFmpeg not found"
msgstr ""
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
#: FFmpeg.h:109
@@ -995,8 +997,7 @@ msgstr ""
msgid "Frequency Analysis"
msgstr "ЧеÑÑоÑен анализ"
-#: ../src/FreqWindow.cpp:129
-#: ../src/TrackPanel.cpp:837
+#: ../src/FreqWindow.cpp:129 ../src/TrackPanel.cpp:837
msgid "Spectrum"
msgstr "СпекÑÑÑ"
@@ -1054,15 +1055,25 @@ msgstr ""
msgid "Export"
msgstr ""
-#: ../src/Benchmark.cpp:223
-#: ../src/FreqWindow.cpp:123
-#: ../src/effects/ClickRemoval.cpp:371
-#: ../src/effects/NoiseRemoval.cpp:463
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
+#: ../src/Benchmark.cpp:223 ../src/FreqWindow.cpp:123
+#: ../src/effects/ClickRemoval.cpp:371 ../src/effects/NoiseRemoval.cpp:463
msgid "Close"
msgstr "ÐаÑваÑÑне"
-#: ../src/effects/Compressor.cpp:385
-#: ../src/effects/Compressor.cpp:393
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr ""
+
+#: ../src/effects/Compressor.cpp:385 ../src/effects/Compressor.cpp:393
#: ../src/widgets/Meter.cpp:293
msgid "dB"
msgstr "дÐ"
@@ -1072,6 +1083,15 @@ msgstr "дÐ"
msgid "Hz"
msgstr "Ð¥Ñ"
+#: ../src/Menus.cpp:2369
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "Ðа ÑеÑÑане на ÑпекÑÑÑ Ð²ÑиÑки маÑкиÑани пиÑÑи ÑÑÑбва да Ñа Ñ ÐµÐ´Ð½Ð°ÐºÐ²Ð° ÑеÑÑоÑа на диÑкÑеÑизаÑиÑ."
+
+#: ../src/Menus.cpp:2395
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "ÐаÑкиÑан е пÑекалено дÑлÑг звÑк. Ще бÑÐ´Ð°Ñ Ð°Ð½Ð°Ð»Ð¸Ð·Ð¸Ñани Ñамо пÑÑвиÑе %.1f ÑекÑнди."
+
#: ../src/FreqWindow.cpp:463
msgid "Not enough data selected."
msgstr "Ðе Ñа маÑкиÑани доÑÑаÑÑÑно данни."
@@ -1098,9 +1118,7 @@ msgstr "spectrum.txt"
msgid "Export Spectral Data As:"
msgstr "ÐкÑпоÑÑ Ð½Ð° ÑпекÑÑални данни каÑо:"
-#: ../src/FreqWindow.cpp:1014
-#: ../src/Menus.cpp:1393
-#: ../src/Project.cpp:2159
+#: ../src/FreqWindow.cpp:1014 ../src/Menus.cpp:1393 ../src/Project.cpp:2159
#: ../src/prefs/KeyConfigPrefs.cpp:173
msgid "Couldn't write to file: "
msgstr "Ðе бе вÑзможен Ð·Ð°Ð¿Ð¸Ñ Ð²Ñв Ñайл: "
@@ -1113,6 +1131,21 @@ msgstr "ЧеÑÑоÑа (Ð¥Ñ)\tÐиво (дÐ)"
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "ÐакÑÑнение (ÑекÑнди)\tЧеÑÑоÑа (Ð¥Ñ)\tСила"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr ""
+
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr ""
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr ""
@@ -1190,7 +1223,7 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr ""
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
msgstr ""
#: HelpText.cpp:244
@@ -1214,7 +1247,7 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr ""
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
msgstr ""
#: HelpText.cpp:383
@@ -1283,6 +1316,14 @@ msgstr ""
msgid "GB"
msgstr ""
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
#: LabelDialog.cpp:50
msgid "Track"
msgstr ""
@@ -1342,9 +1383,7 @@ msgstr "ÐÐ·Ð±Ð¾Ñ Ð½Ð° ÑекÑÑов Ñайл Ñ Ð½Ð°Ð´Ð¿Ð¸Ñи..."
msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
msgstr "ТекÑÑови Ñайлове (*.txt)|*.txt|ÐÑиÑки Ñайлове (*.*)|*.*"
-#: ../src/Menus.cpp:2647
-#: ../src/Project.cpp:1820
-#: ../src/Project.cpp:1828
+#: ../src/Menus.cpp:2647 ../src/Project.cpp:1820 ../src/Project.cpp:1828
#: ../src/import/ImportMIDI.cpp:31
msgid "Could not open file: "
msgstr "Ðе бе вÑзможно оÑваÑÑнеÑо на Ñайл:"
@@ -1398,21 +1437,13 @@ msgstr "ÐÑваÑÑ Ñе пÑÐ¾ÐµÐºÑ Ð½Ð° Audacity"
msgid "&File"
msgstr "&Файл"
-#: ../src/Menus.cpp:141
-msgid "&New\tCtrl+N"
-msgstr "&Ðов\tCtrl+N"
-
-#: ../src/Menus.cpp:143
-msgid "&Open...\tCtrl+O"
-msgstr "&ÐÑваÑÑне...\tCtrl+O"
-
#: ../src/Menus.cpp:145
-msgid "&Close\tCtrl+W"
-msgstr "&ÐаÑваÑÑне\tCtrl+W"
+msgid "&Close"
+msgstr "&ÐаÑваÑÑне"
#: ../src/Menus.cpp:146
-msgid "&Save Project\tCtrl+S"
-msgstr "&СÑÑ
ÑанÑване на пÑоекÑ\tCtrl+S"
+msgid "&Save Project"
+msgstr "&СÑÑ
ÑанÑване на пÑоекÑ"
#: ../src/Menus.cpp:150
msgid "Save Project &As..."
@@ -1435,7 +1466,7 @@ msgid "&Import"
msgstr ""
#: Menus.cpp:236
-msgid "&Audio...\tCtrl+Shift+I"
+msgid "&Audio..."
msgstr ""
#: Menus.cpp:237
@@ -1466,8 +1497,8 @@ msgstr "ÐкÑпоÑÑ Ð½Ð° н&Ñколко Ñайла..."
msgid "Export MIDI..."
msgstr ""
-#: Menus.cpp:290
-msgid "CleanSpeech C&hain..."
+#: Menus.cpp:352
+msgid "Appl&y Chain..."
msgstr ""
#: Menus.cpp:340 Menus.cpp:354
@@ -1482,10 +1513,6 @@ msgstr ""
msgid "I&mport CleanSpeech Presets..."
msgstr ""
-#: Menus.cpp:352
-msgid "Appl&y Chain..."
-msgstr ""
-
#: Menus.cpp:358
msgid "&Upload File..."
msgstr ""
@@ -1500,7 +1527,7 @@ msgid "&Print..."
msgstr ""
#: Menus.cpp:382 Menus.cpp:385
-msgid "E&xit\tCtrl+Q"
+msgid "E&xit"
msgstr ""
#: ../src/Menus.cpp:227
@@ -1508,63 +1535,63 @@ msgid "&Edit"
msgstr "&РедакÑиÑ"
#: ../src/Menus.cpp:231
-msgid "&Undo\tCtrl+Z"
-msgstr "&ÐÑмÑна\tCtrl+Z"
+msgid "&Undo"
+msgstr "&ÐÑмÑна"
#: ../src/Menus.cpp:239
msgid "&Redo"
msgstr "&ÐÑзÑÑановÑване"
#: ../src/Menus.cpp:252
-msgid "Cu&t\tCtrl+X"
-msgstr "&ÐзÑÑзване\tCtrl+X"
+msgid "Cu&t"
+msgstr "&ÐзÑÑзване"
#: Menus.cpp:420
-msgid "Spl&it Cut\tCtrl+Alt+X"
+msgid "Spl&it Cut"
msgstr ""
#: ../src/Menus.cpp:253
-msgid "&Copy\tCtrl+C"
-msgstr "&ÐопиÑане\tCtrl+C"
+msgid "&Copy"
+msgstr "&ÐопиÑане"
#: ../src/Menus.cpp:254
-msgid "&Paste\tCtrl+V"
-msgstr "ÐоÑÑа&вÑне\tCtrl+V"
+msgid "&Paste"
+msgstr "ÐоÑÑа&вÑне"
#: Menus.cpp:426
-msgid "Tri&m\tCtrl+T"
+msgid "Tri&m"
msgstr ""
#: ../src/Menus.cpp:260
-msgid "&Delete\tCtrl+K"
-msgstr "Ðз&ÑÑиване\tCtrl+K"
+msgid "&Delete"
+msgstr "Ðз&ÑÑиване"
#: Menus.cpp:429
-msgid "Split D&elete\tCtrl+Alt+K"
+msgid "Split D&elete"
msgstr ""
#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
+msgid "Silence Audi&o"
msgstr ""
#: Menus.cpp:432
-msgid "Sp&lit\tCtrl+I"
+msgid "Sp&lit"
msgstr ""
#: Menus.cpp:342
-msgid "Split Ne&w\tCtrl+Alt+I"
+msgid "Split Ne&w"
msgstr ""
#: Menus.cpp:442
-msgid "&Join\tCtrl+J"
+msgid "&Join"
msgstr ""
#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
+msgid "Detac&h at Silences"
msgstr ""
#: Menus.cpp:445
-msgid "Duplic&ate\tCtrl+D"
+msgid "Duplic&ate"
msgstr ""
#: Menus.cpp:400 Menus.cpp:639
@@ -1577,47 +1604,32 @@ msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:460
-msgid "&Cut\tAlt+X"
+msgid "&Cut"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:465
-msgid "&Split Cut\tShift+Alt+X"
+msgid "&Split Cut"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:470
-msgid "Co&py\tShift+Alt+C"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:476
-msgid "&Delete\tAlt+K"
+msgid "Co&py"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:481
-msgid "Sp&lit Delete\tShift+Alt+K"
+msgid "Sp&lit Delete"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:486
-msgid "Sile&nce\tAlt+L"
+msgid "Sile&nce"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:492
-msgid "Spli&t\tAlt+I"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:497
-msgid "&Join\tAlt+J"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
+msgid "Spli&t"
msgstr ""
#: Menus.cpp:456
@@ -1625,33 +1637,33 @@ msgid "&Select"
msgstr ""
#: ../src/Menus.cpp:269
-msgid "&All\tCtrl+A"
-msgstr "&ÐÑиÑко\tCtrl+A"
+msgid "&All"
+msgstr "&ÐÑиÑко"
#: Menus.cpp:415
-msgid "&None\tCtrl+Shift+A"
+msgid "&None"
msgstr ""
#: Menus.cpp:462
-msgid "&Left at Playback Position\t["
+msgid "&Left at Playback Position"
msgstr ""
#: Menus.cpp:463
-msgid "&Right at Playback Position\t]"
+msgid "&Right at Playback Position"
msgstr ""
#: Menus.cpp:467
-msgid "Track &Start to Cursor\tShift+J"
+msgid "Track &Start to Cursor"
msgstr ""
#: Menus.cpp:468
-msgid "Cursor to Track &End\tShift+K"
+msgid "Cursor to Track &End"
msgstr ""
#: Menus.cpp:525
#, fuzzy
-msgid "Find &Zero Crossings\tZ"
-msgstr "ÐÑеÑеÑни ÑоÑки Ñ Ð½ÑлаÑа\tZ"
+msgid "Find &Zero Crossings"
+msgstr "ÐÑеÑеÑни ÑоÑки Ñ Ð½ÑлаÑа"
#: Menus.cpp:476
msgid "Mo&ve Cursor"
@@ -1668,11 +1680,11 @@ msgid "to Selection En&d"
msgstr "кÑм кÑÐ°Ñ Ð½Ð° ÑелекÑиÑÑа"
#: Menus.cpp:483
-msgid "to Track &Start\tJ"
+msgid "to Track &Start"
msgstr ""
#: Menus.cpp:484
-msgid "to Track &End\tK"
+msgid "to Track &End"
msgstr ""
#: Menus.cpp:491
@@ -1695,29 +1707,8 @@ msgstr ""
msgid "&Unlock"
msgstr ""
-#: ../src/Menus.cpp:311
-msgid "Turn Snap-To On"
-msgstr "ÐклÑÑване на пÑилепванеÑо"
-
-#: ../src/Menus.cpp:312
-msgid "Turn Snap-To Off"
-msgstr "ÐзклÑÑване на пÑилепванеÑо"
-
-#: ../src/Menus.cpp:313
-msgid "Turn Grid Snap On"
-msgstr "ÐклÑÑване на пÑилепванеÑо кÑм мÑежаÑа"
-
-#: ../src/Menus.cpp:314
-msgid "Turn Grid Snap Off"
-msgstr "ÐзклÑÑване на пÑилепванеÑо кÑм мÑежаÑа"
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr ""
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
+msgid "Pre&ferences..."
msgstr ""
#: ../src/Menus.cpp:345
@@ -1725,35 +1716,35 @@ msgid "&View"
msgstr "&Ðзглед"
#: ../src/Menus.cpp:347
-msgid "Zoom &In\tCtrl+1"
-msgstr "&УвелиÑаване\tCtrl+1"
+msgid "Zoom &In"
+msgstr "&УвелиÑаване"
#: ../src/Menus.cpp:350
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "&ÐоÑмален маÑаб\tCtrl+2"
+msgid "Zoom &Normal"
+msgstr "&ÐоÑмален маÑаб"
#: ../src/Menus.cpp:351
-msgid "Zoom &Out\tCtrl+3"
-msgstr "У&малÑване\tCtrl+3"
+msgid "Zoom &Out"
+msgstr "У&малÑване"
#: ../src/Menus.cpp:354
-msgid "&Fit in Window\tCtrl+F"
-msgstr "&ÐобиÑане в пÑозоÑеÑа\tCtrl+F"
+msgid "&Fit in Window"
+msgstr "&ÐобиÑане в пÑозоÑеÑа"
#: ../src/Menus.cpp:355
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "&ÐеÑÑикално побиÑане в пÑозоÑеÑа\tCtrl+Shift+F"
+msgid "Fit &Vertically"
+msgstr "&ÐеÑÑикално побиÑане в пÑозоÑеÑа"
#: ../src/Menus.cpp:356
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "&ÐаÑабиÑане до ÑелекÑиÑÑа\tCtrl+E"
+msgid "&Zoom to Selection"
+msgstr "&ÐаÑабиÑане до ÑелекÑиÑÑа"
#: Menus.cpp:603
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
+msgid "&Collapse All Tracks"
msgstr ""
#: Menus.cpp:604
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
+msgid "E&xpand All Tracks"
msgstr ""
#: Menus.cpp:551
@@ -1815,39 +1806,39 @@ msgid "T&ransport"
msgstr ""
#: Menus.cpp:591
-msgid "Play\tSpace"
+msgid "Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
+msgid "&Loop Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Pause\tP"
+msgid "&Pause"
msgstr ""
#: Menus.cpp:596
-msgid "&Stop\tSpace"
+msgid "&Stop"
msgstr ""
#: ../src/Menus.cpp:569
-msgid "Skip to Start\tHome"
-msgstr "ÐÑевÑÑÑане до наÑалоÑо\tHome"
+msgid "Skip to Start"
+msgstr "ÐÑевÑÑÑане до наÑалоÑо"
#: ../src/Menus.cpp:570
-msgid "Skip to End\tEnd"
-msgstr "ÐÑевÑÑÑане до кÑаÑ\tEnd"
+msgid "Skip to End"
+msgstr "ÐÑевÑÑÑане до кÑаÑ"
#: Menus.cpp:600
-msgid "&Record\tR"
+msgid "&Record"
msgstr ""
#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
+msgid "&Timer Record..."
msgstr ""
#: Menus.cpp:604
-msgid "Append Record\tShift+R"
+msgid "Append Record"
msgstr ""
#: Menus.cpp:607
@@ -1875,7 +1866,7 @@ msgid "Add &New"
msgstr ""
#: Menus.cpp:643
-msgid "&Audio Track\tCtrl+Shift+N"
+msgid "&Audio Track"
msgstr ""
#: Menus.cpp:644
@@ -1892,7 +1883,7 @@ msgid "Mi&x and Render"
msgstr ""
#: Menus.cpp:564
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
+msgid "Mix and Render to New Track"
msgstr ""
#: Menus.cpp:662
@@ -1904,11 +1895,11 @@ msgid "Remo&ve Tracks"
msgstr "ÐÑе&маÑ
ване на пиÑÑи"
#: Menus.cpp:667
-msgid "&Mute All Tracks\tCtrl+U"
+msgid "&Mute All Tracks"
msgstr ""
#: Menus.cpp:668
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
+msgid "&UnMute All Tracks"
msgstr ""
#: ../src/Menus.cpp:405
@@ -1959,19 +1950,18 @@ msgstr ""
msgid "Synchronize MIDI with Audio"
msgstr ""
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
+#: Menus.cpp:686
+msgid "&Link Audio and Label Tracks"
msgstr ""
-#: Menus.cpp:705
-#, fuzzy
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "Ðов Ð½Ð°Ð´Ð¿Ð¸Ñ Ð²ÑÑÑ
Ñ ÑелекÑиÑÑа\tCtrl+B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr ""
#: Menus.cpp:706
#, fuzzy
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "Ðов Ð½Ð°Ð´Ð¿Ð¸Ñ Ð² ÑекÑÑаÑа позиÑиÑ\tCtrl+M"
+msgid "Add Label At &Playback Position"
+msgstr "Ðов Ð½Ð°Ð´Ð¿Ð¸Ñ Ð² ÑекÑÑаÑа позиÑиÑ"
#: Menus.cpp:716
msgid "S&ort tracks"
@@ -1997,21 +1987,20 @@ msgstr ""
msgid "Effe&ct"
msgstr "&ÐÑекÑ"
-#: ../src/Menus.cpp:468
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "ÐовÑаÑÑне на поÑÐ»ÐµÐ´Ð½Ð¸Ñ ÐµÑекÑ\tCtrl+R"
-
#: ../src/Menus.cpp:494
msgid "&Analyze"
msgstr "&Ðнализ"
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
+
#: Menus.cpp:692
msgid "Plot Spectrum..."
msgstr ""
#. i18n-hint: The name of the Help menu
-#: ../src/Menus.cpp:524
-#: ../src/Menus.cpp:540
+#: ../src/Menus.cpp:524 ../src/Menus.cpp:540
msgid "&Help"
msgstr "&ÐомоÑ"
@@ -2023,8 +2012,8 @@ msgstr ""
msgid "&Show Welcome Message..."
msgstr ""
-#: Menus.cpp:736
-msgid "&Index..."
+#: Menus.cpp:958
+msgid "&Help..."
msgstr ""
#: Menus.cpp:959
@@ -2043,181 +2032,149 @@ msgstr "&ÐзмеÑване на ÑкоÑоÑÑÑа..."
msgid "&Audio Device Info..."
msgstr ""
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
msgstr ""
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
msgstr ""
#: ../src/Menus.cpp:549
-msgid "Selection Tool\tF1"
-msgstr "ÐнÑÑÑÑÐ¼ÐµÐ½Ñ Ð·Ð° маÑкиÑане\tF1"
+msgid "Selection Tool"
+msgstr "ÐнÑÑÑÑÐ¼ÐµÐ½Ñ Ð·Ð° маÑкиÑане"
#: ../src/Menus.cpp:550
-msgid "Envelope Tool\tF2"
-msgstr "ÐнÑÑÑÑÐ¼ÐµÐ½Ñ Ð·Ð° обвиваÑи кÑиви\tF2"
+msgid "Envelope Tool"
+msgstr "ÐнÑÑÑÑÐ¼ÐµÐ½Ñ Ð·Ð° обвиваÑи кÑиви"
#: ../src/Menus.cpp:551
-msgid "Draw Tool\tF3"
-msgstr "ÐнÑÑÑÑÐ¼ÐµÐ½Ñ Ð·Ð° ÑеÑÑане\tF3"
+msgid "Draw Tool"
+msgstr "ÐнÑÑÑÑÐ¼ÐµÐ½Ñ Ð·Ð° ÑеÑÑане"
#: ../src/Menus.cpp:552
-msgid "Zoom Tool\tF4"
-msgstr "ÐнÑÑÑÑÐ¼ÐµÐ½Ñ Ð·Ð° ÑвелиÑение\tF4"
+msgid "Zoom Tool"
+msgstr "ÐнÑÑÑÑÐ¼ÐµÐ½Ñ Ð·Ð° ÑвелиÑение"
#: ../src/Menus.cpp:553
-msgid "Time Shift Tool\tF5"
-msgstr "ÐнÑÑÑÑÐ¼ÐµÐ½Ñ Ð·Ð° измеÑÑване вÑв вÑемеÑо\tF5"
+msgid "Time Shift Tool"
+msgstr "ÐнÑÑÑÑÐ¼ÐµÐ½Ñ Ð·Ð° измеÑÑване вÑв вÑемеÑо"
#: ../src/Menus.cpp:554
-msgid "Multi Tool\tF6"
-msgstr "ÐногоинÑÑÑÑменÑен Ñежим\tF6"
+msgid "Multi Tool"
+msgstr "ÐногоинÑÑÑÑменÑен Ñежим"
#: ../src/Menus.cpp:556
-msgid "Next Tool\tD"
-msgstr "Ð¡Ð»ÐµÐ´Ð²Ð°Ñ Ð¸Ð½ÑÑÑÑменÑ\tD"
+msgid "Next Tool"
+msgstr "Ð¡Ð»ÐµÐ´Ð²Ð°Ñ Ð¸Ð½ÑÑÑÑменÑ"
#: ../src/Menus.cpp:557
-msgid "Previous Tool\tA"
-msgstr "ÐÑедиÑен инÑÑÑÑменÑ\tA"
+msgid "Previous Tool"
+msgstr "ÐÑедиÑен инÑÑÑÑменÑ"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
-msgstr ""
-
-#: ../src/Menus.cpp:560
-msgid "Stop\tS"
-msgstr "СÑоп\tS"
-
-#: ../src/Menus.cpp:561
-msgid "Pause\tP"
-msgstr "ÐаÑза\tP"
-
-#: ../src/Menus.cpp:562
-msgid "Record\tR"
-msgstr "ÐапиÑ\tR"
-
-#: Menus.cpp:999
-msgid "Record Append\tShift+R"
+msgid "Play/Stop"
msgstr ""
#: Menus.cpp:1001
-msgid "Play/Stop and Set Cursor\tShift+A"
+msgid "Play/Stop and Set Cursor"
msgstr ""
#: ../src/Menus.cpp:564
-msgid "Play One Second\t1"
-msgstr "ÐÑзпÑоизвеждане - 1 ÑекÑнда\t1"
+msgid "Play One Second"
+msgstr "ÐÑзпÑоизвеждане - 1 ÑекÑнда"
#: ../src/Menus.cpp:565
-msgid "Play To Selection\tB"
-msgstr "ÐÑзпÑоизвеждане до ÑелекÑиÑÑа\tB"
-
-#: ../src/Menus.cpp:566
-msgid "Play Looped\tL"
-msgstr "ÐаÑиклено вÑзпÑоизвеждане\tL"
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
+msgid "Play To Selection"
+msgstr "ÐÑзпÑоизвеждане до ÑелекÑиÑÑа"
#: Menus.cpp:873
-msgid "Play Cut Preview\tC"
+msgid "Play Cut Preview"
msgstr ""
#: ../src/Menus.cpp:572
-msgid "Selection to Start\tShift+Home"
-msgstr "ÐаÑкиÑане до наÑалоÑо\tShift+Home"
+msgid "Selection to Start"
+msgstr "ÐаÑкиÑане до наÑалоÑо"
#: ../src/Menus.cpp:573
-msgid "Selection to End\tShift+End"
-msgstr "ÐаÑкиÑане Ð¾Ñ ÐºÑÑÑоÑа до кÑаÑ\tShift+End"
+msgid "Selection to End"
+msgstr "ÐаÑкиÑане Ð¾Ñ ÐºÑÑÑоÑа до кÑаÑ"
#: ../src/Menus.cpp:575
-msgid "DeleteKey\tBackspace"
-msgstr "ÐÐ»Ð°Ð²Ð¸Ñ Ð·Ð° изÑÑиване\tBackspace"
+msgid "DeleteKey"
+msgstr "ÐÐ»Ð°Ð²Ð¸Ñ Ð·Ð° изÑÑиване"
#: ../src/Menus.cpp:580
-msgid "DeleteKey2\tDelete"
-msgstr "ÐÐ»Ð°Ð²Ð¸Ñ Ð·Ð° изÑÑиване 2\tDelete"
+msgid "DeleteKey2"
+msgstr "ÐÐ»Ð°Ð²Ð¸Ñ Ð·Ð° изÑÑиване 2"
-#: Menus.cpp:892
-msgid "Seek left short period during playback\tLeft"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
msgstr ""
-#: Menus.cpp:893
-msgid "Seek right short period during playback\tRight"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
msgstr ""
-#: Menus.cpp:894
-msgid "Seek left long period during playback\tShift+Left"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
msgstr ""
-#: Menus.cpp:895
-msgid "Seek right long period during playback\tShift+Right"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
msgstr ""
#: Menus.cpp:899
-msgid "Move Focus to Previous Track\tUp"
+msgid "Move Focus to Previous Track"
msgstr ""
-#: Menus.cpp:900
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
msgstr ""
#: Menus.cpp:901
-msgid "Move Focus to Next Track\tDown"
+msgid "Move Focus to Next Track"
msgstr ""
-#: Menus.cpp:902
-msgid "Move Focus to Next and Change Selection\tShift+Down"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
msgstr ""
#: Menus.cpp:903
-msgid "Toggle Focused Track\tReturn"
-msgstr ""
-
-#: Menus.cpp:904
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr ""
-
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
+msgid "Toggle Focused Track"
msgstr ""
#: ../src/Menus.cpp:585
-msgid "Cursor Left\tLeft"
-msgstr "ÐÑÑÑÐ¾Ñ Ð½Ð°Ð»Ñво\tналÑво"
+msgid "Cursor Left"
+msgstr "ÐÑÑÑÐ¾Ñ Ð½Ð°Ð»Ñво"
#: ../src/Menus.cpp:586
-msgid "Cursor Right\tRight"
-msgstr "ÐÑÑÑÐ¾Ñ Ð½Ð°Ð´ÑÑно\tнадÑÑно"
+msgid "Cursor Right"
+msgstr "ÐÑÑÑÐ¾Ñ Ð½Ð°Ð´ÑÑно"
#: Menus.cpp:820
-msgid "Cursor Short Jump Left\t,"
+msgid "Cursor Short Jump Left"
msgstr ""
#: Menus.cpp:821
-msgid "Cursor Short Jump Right\t."
+msgid "Cursor Short Jump Right"
msgstr ""
#: Menus.cpp:822
-msgid "Cursor Long Jump Left\tShift+,"
+msgid "Cursor Long Jump Left"
msgstr ""
#: Menus.cpp:823
-msgid "Cursor Long Jump Right\tShift+."
+msgid "Cursor Long Jump Right"
msgstr ""
#: ../src/Menus.cpp:587
-msgid "Selection Extend Left\tShift+Left"
-msgstr "РазÑиÑÑване на ÑелекÑиÑÑа налÑво\tCtrl+Shift+налÑво"
+msgid "Selection Extend Left"
+msgstr "РазÑиÑÑване на ÑелекÑиÑÑа налÑво"
#: ../src/Menus.cpp:588
-msgid "Selection Extend Right\tShift+Right"
-msgstr "РазÑиÑÑване на ÑелекÑиÑÑа надÑÑно\tCtrl+Shift+надÑÑно"
+msgid "Selection Extend Right"
+msgstr "РазÑиÑÑване на ÑелекÑиÑÑа надÑÑно"
#: Menus.cpp:828
msgid "Set (or Extend) Left Selection"
@@ -2228,51 +2185,51 @@ msgid "Set (or Extend) Right Selection"
msgstr ""
#: ../src/Menus.cpp:589
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "Свиване на ÑелекÑиÑÑа оÑлÑво\tCtrl+Shift+надÑÑно"
+msgid "Selection Contract Left"
+msgstr "Свиване на ÑелекÑиÑÑа оÑлÑво"
#: ../src/Menus.cpp:590
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "Свиване на ÑелекÑиÑÑа оÑдÑÑно\tCtrl+Shift+налÑво"
+msgid "Selection Contract Right"
+msgstr "Свиване на ÑелекÑиÑÑа оÑдÑÑно"
#: Menus.cpp:916
-msgid "Change pan on focused track\tShift+P"
+msgid "Change pan on focused track"
msgstr ""
#: Menus.cpp:917
-msgid "Pan left on focused track\tAlt+Shift+Left"
+msgid "Pan left on focused track"
msgstr ""
#: Menus.cpp:918
-msgid "Pan right on focused track\tAlt+Shift+Right"
+msgid "Pan right on focused track"
msgstr ""
#: Menus.cpp:919
-msgid "Change gain on focused track\tShift+G"
+msgid "Change gain on focused track"
msgstr ""
#: Menus.cpp:920
-msgid "Increase gain on focused track\tAlt+Shift+Up"
+msgid "Increase gain on focused track"
msgstr ""
#: Menus.cpp:921
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
+msgid "Decrease gain on focused track"
msgstr ""
#: Menus.cpp:922
-msgid "Open menu on focused track\tShift+M"
+msgid "Open menu on focused track"
msgstr ""
#: Menus.cpp:923
-msgid "Mute/Unmute focused track\tShift+U"
+msgid "Mute/Unmute focused track"
msgstr ""
#: Menus.cpp:924
-msgid "Solo/Unsolo focused track\tShift+S"
+msgid "Solo/Unsolo focused track"
msgstr ""
#: Menus.cpp:925
-msgid "Close focused track\tShift+C"
+msgid "Close focused track"
msgstr ""
#: Menus.cpp:845
@@ -2284,7 +2241,35 @@ msgid "Snap To Off"
msgstr ""
#: Menus.cpp:1071
-msgid "Full screen on/off\tF11"
+msgid "Full screen on/off"
+msgstr ""
+
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr ""
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr ""
+
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr ""
+
+#: Menus.cpp:1074
+msgid "Adjust input source"
msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
@@ -2345,8 +2330,8 @@ msgstr "ÐолÑ, пÑÑво избеÑеÑе пиÑÑа."
#: ../src/Menus.cpp:1248
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "ÐовÑаÑÑне на %s\tCtrl+R"
+msgid "Repeat %s"
+msgstr "ÐовÑаÑÑне на %s"
#: ../src/Menus.cpp:1352
msgid "There are no label tracks to export."
@@ -2377,8 +2362,7 @@ msgstr "ÐÑма дейÑÑÐ²Ð¸Ñ Ð·Ð° анÑлиÑане"
msgid "Nothing to redo"
msgstr "ÐÑма дейÑÑÐ²Ð¸Ñ Ð·Ð° вÑзÑÑановÑване"
-#: ../src/EditToolBar.cpp:148
-#: ../src/Menus.cpp:1713
+#: ../src/EditToolBar.cpp:148 ../src/Menus.cpp:1713
msgid "Cut"
msgstr "ÐзÑÑзване"
@@ -2394,9 +2378,7 @@ msgstr ""
msgid "Split-cut to the clipboard"
msgstr ""
-#: ../src/EditToolBar.cpp:152
-#: ../src/Menus.cpp:1818
-#: ../src/Menus.cpp:1862
+#: ../src/EditToolBar.cpp:152 ../src/Menus.cpp:1818 ../src/Menus.cpp:1862
msgid "Paste"
msgstr "ÐоÑÑавÑне"
@@ -2404,8 +2386,7 @@ msgstr "ÐоÑÑавÑне"
msgid "Pasted text from the clipboard"
msgstr ""
-#: ../src/Menus.cpp:1818
-#: ../src/Menus.cpp:1862
+#: ../src/Menus.cpp:1818 ../src/Menus.cpp:1862
msgid "Pasted from the clipboard"
msgstr "ÐзвÑÑÑено бе поÑÑавÑне Ð¾Ñ ÐºÐ»Ð¸Ð¿Ð±Ð¾Ñда"
@@ -2457,8 +2438,7 @@ msgstr ""
msgid "Silenced selected tracks for %.2f seconds at %.2f"
msgstr "ÐаÑкиÑаниÑе пиÑÑи бÑÑ
а нÑлиÑани в оÑÑÑзÑк Ð¾Ñ %.2f ÑекÑнди Ð¾Ñ %.2f"
-#: ../src/Menus.cpp:1928
-#: ../src/effects/Silence.h:33
+#: ../src/Menus.cpp:1928 ../src/effects/Silence.h:33
msgid "Silence"
msgstr "ТиÑина"
@@ -2542,8 +2522,7 @@ msgstr ""
msgid "Disjoined labeled regions"
msgstr ""
-#: ../src/Menus.cpp:2009
-#: ../src/TrackPanel.cpp:4134
+#: ../src/Menus.cpp:2009 ../src/TrackPanel.cpp:4134
msgid "Split"
msgstr "РазделÑне"
@@ -2559,15 +2538,6 @@ msgstr ""
msgid "Split at labels"
msgstr "РазделÑне в поз. на надпиÑиÑе"
-#: ../src/Menus.cpp:2369
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "Ðа ÑеÑÑане на ÑпекÑÑÑ Ð²ÑиÑки маÑкиÑани пиÑÑи ÑÑÑбва да Ñа Ñ ÐµÐ´Ð½Ð°ÐºÐ²Ð° ÑеÑÑоÑа на диÑкÑеÑизаÑиÑ."
-
-#: ../src/Menus.cpp:2395
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "ÐаÑкиÑан е пÑекалено дÑлÑг звÑк. Ще бÑÐ´Ð°Ñ Ð°Ð½Ð°Ð»Ð¸Ð·Ð¸Ñани Ñамо пÑÑвиÑе %.1f ÑекÑнди."
-
#: ../src/Menus.cpp:2660
#, c-format
msgid "Imported labels from '%s'"
@@ -2685,9 +2655,7 @@ msgstr ""
msgid "Created new audio track"
msgstr "СÑздадена бе нова аÑдиопиÑÑа"
-#: ../src/Menus.cpp:2977
-#: ../src/Menus.cpp:3001
-#: ../src/Menus.cpp:3016
+#: ../src/Menus.cpp:2977 ../src/Menus.cpp:3001 ../src/Menus.cpp:3016
#: ../src/Menus.cpp:3052
msgid "New Track"
msgstr "Ðова пиÑÑа"
@@ -2769,8 +2737,7 @@ msgstr ""
msgid "Resampled audio track(s)"
msgstr ""
-#: ../src/Mix.cpp:74
-#: ../src/Mix.cpp:82
+#: ../src/Mix.cpp:74 ../src/Mix.cpp:82
msgid "Mix"
msgstr "СмеÑване"
@@ -2790,6 +2757,10 @@ msgstr "ÐÑзникнала е гÑеÑка пÑи пеÑаÑане."
msgid "Print"
msgstr "ÐеÑаÑ"
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr ""
+
#: Project.cpp:573
msgid "Main Mix"
msgstr ""
@@ -2803,14 +2774,11 @@ msgstr ""
msgid "(Recovered)"
msgstr ""
-#: ../src/ControlToolBar.cpp:469
-#: ../src/Project.cpp:1707
-#: ../src/TrackPanel.cpp:1208
+#: ../src/Menus.cpp:562
msgid "Record"
msgstr "ÐапиÑ"
-#: ../src/Project.cpp:1707
-#: ../src/TrackPanel.cpp:1208
+#: ../src/Project.cpp:1707 ../src/TrackPanel.cpp:1208
msgid "Recorded Audio"
msgstr "ÐапиÑан бе звÑк"
@@ -2831,12 +2799,11 @@ msgstr ""
msgid "Save changes?"
msgstr "СÑÑ
ÑанÑване на пÑомениÑе?"
-#: Project.cpp:1684
-msgid "All files|*.*|All supported files|"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
msgstr ""
-#: ../src/Menus.cpp:2595
-#: ../src/Project.cpp:1738
+#: ../src/Menus.cpp:2595 ../src/Project.cpp:1738
msgid "Select one or more audio files..."
msgstr "ÐÐ·Ð±Ð¾Ñ Ð½Ð° звÑков(и) Ñайл(ове)..."
@@ -2863,8 +2830,18 @@ msgstr ""
msgid "Opening old project file"
msgstr ""
-#: ../src/Project.cpp:1821
-#: ../src/Project.cpp:1829
+#: Project.cpp:2073
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr ""
+
+#: ../src/Project.cpp:1821 ../src/Project.cpp:1829
msgid "Error opening file"
msgstr "ÐÑеÑка пÑи оÑваÑÑне на Ñайл"
@@ -2920,10 +2897,12 @@ msgstr "Този Ñайл е бил запиÑан Ñ Audacity %s.\n"
msgid "Can't open project file"
msgstr "Ðе е вÑзможно оÑваÑÑнеÑо на Ñайл Ñ Ð¿ÑоекÑ"
-#: Project.cpp:2314
+#: Project.cpp:2484
#, c-format
msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
msgstr ""
@@ -2943,17 +2922,22 @@ msgstr ""
msgid "Warning empty project"
msgstr ""
-#: Project.cpp:2591
+#: Project.cpp:2792
#, c-format
msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+"is not writable or the disk is full."
msgstr ""
-#: ../src/Project.cpp:2148
-#: ../src/Project.cpp:2160
+#: ../src/Project.cpp:2148 ../src/Project.cpp:2160
msgid "Error saving project"
msgstr "ÐÑеÑка пÑи ÑÑÑ
ÑанÑване на пÑоекÑ"
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
#: ../src/Project.cpp:2200
#, c-format
msgid "Saved %s"
@@ -2964,10 +2948,8 @@ msgstr "%s бе ÑÑÑ
Ñанен"
msgid "Imported '%s'"
msgstr "ÐмпоÑÑиÑан бе \"%s\""
-#: ../src/Project.cpp:2236
-#: ../src/Project.cpp:2283
-#: ../src/import/ImportPCM.cpp:403
-#: ../src/import/ImportPCM.cpp:488
+#: ../src/Project.cpp:2236 ../src/Project.cpp:2283
+#: ../src/import/ImportPCM.cpp:403 ../src/import/ImportPCM.cpp:488
#: ../src/import/ImportRaw.cpp:408
msgid "Import"
msgstr "ÐмпоÑÑ"
@@ -3095,8 +3077,7 @@ msgstr "Libsamplerate Ð¾Ñ Erik de Castro Lopo"
msgid "Libsamplerate error: %d\n"
msgstr "ÐÑеÑка в Libsamplerate: %d\n"
-#: ../src/Resample.cpp:233
-#: ../src/Resample.cpp:243
+#: ../src/Resample.cpp:233 ../src/Resample.cpp:243
msgid "Resampling disabled."
msgstr "ÐÑедиÑкÑеÑизиÑанеÑо е забÑанено."
@@ -3115,6 +3096,163 @@ msgstr ""
msgid "32-bit float"
msgstr ""
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
+
+#: ../src/export/ExportMultiple.cpp:600 ../src/prefs/DirectoriesPrefs.cpp:82
+msgid "Choose..."
+msgstr "ÐзбоÑ..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
+
+#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
+msgid "false"
+msgstr ""
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:82
+msgid "Control"
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:58
+msgid "Mixer"
+msgstr ""
+
+#: toolbars/MeterToolBar.cpp:49
+msgid "Meter"
+msgstr ""
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
+#: toolbars/DeviceToolBar.cpp:54
+msgid "Device"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:81
+msgid "Transcription"
+msgstr ""
+
+#: TrackPanel.cpp:452 TrackPanel.cpp:453
+msgid "Track Panel"
+msgstr ""
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: ../src/export/ExportMultiple.cpp:636
+msgid "Tracks"
+msgstr "ÐиÑÑи"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
#: Screenshot.cpp:384
msgid "Saved "
msgstr ""
@@ -3123,6 +3261,10 @@ msgstr ""
msgid "Error trying to save file: "
msgstr ""
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
#: Sequence.cpp:732 Sequence.cpp:742 Sequence.cpp:749
msgid "Gap detected in project file\n"
msgstr ""
@@ -3261,6 +3403,10 @@ msgstr ""
msgid "Save Metadata As:"
msgstr ""
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
#: Theme.cpp:629
#, c-format
msgid "Audacity could not write file:\n"
@@ -3333,6 +3479,14 @@ msgstr ""
msgid "Audacity Timer Record"
msgstr ""
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
#: SmartRecordDialog.cpp:223
msgid "Recording start"
msgstr ""
@@ -3372,35 +3526,23 @@ msgstr ""
msgid "Audacity Timer Record - Waiting for Start"
msgstr ""
-#: TrackPanel.cpp:452 TrackPanel.cpp:453
-msgid "Track Panel"
-msgstr ""
-
-#: ../src/AStatus.cpp:81
-#: ../src/TrackPanel.cpp:822
-#: ../src/prefs/FileFormatPrefs.cpp:105
-#: ../src/prefs/QualityPrefs.cpp:91
+#: ../src/AStatus.cpp:81 ../src/TrackPanel.cpp:822
+#: ../src/prefs/FileFormatPrefs.cpp:105 ../src/prefs/QualityPrefs.cpp:91
msgid "Other..."
msgstr "ÐÑÑго..."
-#: ../src/TrackPanel.cpp:830
-#: ../src/TrackPanel.cpp:851
-#: ../src/TrackPanel.cpp:860
-#: ../src/TrackPanel.cpp:868
+#: ../src/TrackPanel.cpp:830 ../src/TrackPanel.cpp:851
+#: ../src/TrackPanel.cpp:860 ../src/TrackPanel.cpp:868
msgid "Name..."
msgstr "Ðме..."
-#: ../src/TrackPanel.cpp:832
-#: ../src/TrackPanel.cpp:853
-#: ../src/TrackPanel.cpp:864
-#: ../src/TrackPanel.cpp:870
+#: ../src/TrackPanel.cpp:832 ../src/TrackPanel.cpp:853
+#: ../src/TrackPanel.cpp:864 ../src/TrackPanel.cpp:870
msgid "Move Track Up"
msgstr "ÐеÑÑене на пиÑÑаÑа нагоÑе"
-#: ../src/TrackPanel.cpp:833
-#: ../src/TrackPanel.cpp:854
-#: ../src/TrackPanel.cpp:865
-#: ../src/TrackPanel.cpp:871
+#: ../src/TrackPanel.cpp:833 ../src/TrackPanel.cpp:854
+#: ../src/TrackPanel.cpp:865 ../src/TrackPanel.cpp:871
msgid "Move Track Down"
msgstr "ÐеÑÑене на пиÑÑаÑа надолÑ"
@@ -3440,13 +3582,15 @@ msgstr "ÐÑевÑÑÑане в ÑÑеÑео пиÑÑа"
msgid "Split Stereo Track"
msgstr "РазделÑне на ÑÑеÑеопиÑÑа"
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr ""
+
#: ../src/TrackPanel.cpp:846
msgid "Set Sample Format"
msgstr "Ðадаване на ÑоÑÐ¼Ð°Ñ Ð½Ð° данниÑе"
-#: ../src/AStatus.cpp:352
-#: ../src/TrackPanel.cpp:848
-#: ../src/TrackPanel.cpp:4322
+#: ../src/AStatus.cpp:352 ../src/TrackPanel.cpp:848 ../src/TrackPanel.cpp:4322
msgid "Set Rate"
msgstr "Ðадаване на ÑеÑÑоÑа на диÑкÑеÑизаÑиÑ"
@@ -3522,8 +3666,7 @@ msgstr "РедакÑиÑане на надпиÑ"
msgid "Adjusted envelope."
msgstr "ÐбвиваÑаÑа кÑива бе пÑоменена."
-#: ../src/TrackPanel.cpp:1905
-#: ../src/prefs/MousePrefs.cpp:98
+#: ../src/TrackPanel.cpp:1905 ../src/prefs/MousePrefs.cpp:98
msgid "Envelope"
msgstr "ÐбвиваÑа кÑива"
@@ -3583,24 +3726,20 @@ msgid "Moved pan slider"
msgstr "ÐзвÑÑÑено бе паноÑамно измеÑÑване"
#. i18n-hint: Title of the Gain slider, used to adjust the volume
-#: ../src/TrackPanel.cpp:2807
-#: ../src/TrackPanel.cpp:4726
+#: ../src/TrackPanel.cpp:2807 ../src/TrackPanel.cpp:4726
msgid "Gain"
msgstr "УÑилване"
#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: ../src/TrackPanel.cpp:2807
-#: ../src/TrackPanel.cpp:4733
+#: ../src/TrackPanel.cpp:2807 ../src/TrackPanel.cpp:4733
msgid "Pan"
msgstr "ÐаноÑамно измеÑÑване"
-#: ../src/TrackPanel.cpp:4387
-#: ../src/effects/ChangePitch.cpp:277
+#: ../src/TrackPanel.cpp:4387 ../src/effects/ChangePitch.cpp:277
msgid "up"
msgstr "нагоÑе"
-#: ../src/TrackPanel.cpp:4388
-#: ../src/effects/ChangePitch.cpp:277
+#: ../src/TrackPanel.cpp:4388 ../src/effects/ChangePitch.cpp:277
msgid "down"
msgstr "надолÑ"
@@ -3641,14 +3780,6 @@ msgstr ""
msgid "Adjusted gain"
msgstr ""
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr ""
-
#: TrackPanel.cpp:5428
msgid "Can't delete track with active audio"
msgstr ""
@@ -3669,8 +3800,7 @@ msgstr "ÐÑво, "
msgid "Right, "
msgstr "ÐÑÑно, "
-#: ../src/TrackPanel.cpp:4116
-#: ../src/TrackPanel.cpp:4225
+#: ../src/TrackPanel.cpp:4116 ../src/TrackPanel.cpp:4225
#, c-format
msgid "Changed '%s' to %s"
msgstr "ÐиÑÑаÑа \"%s\" бе пÑеобÑазÑвана в %s"
@@ -3684,6 +3814,11 @@ msgstr "Ðанал"
msgid "Split stereo track '%s'"
msgstr "РазделÑне на ÑÑеÑеопиÑÑаÑа \"%s\""
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
#: ../src/TrackPanel.cpp:4153
#, c-format
msgid "Made '%s' a stereo track"
@@ -3710,8 +3845,7 @@ msgstr "ÐÑомÑна на ÑоÑмаÑа"
msgid "Change lower speed limit (%) to:"
msgstr "Ðова долна гÑаниÑа на ÑкоÑоÑÑÑа (%):"
-#: ../src/TrackPanel.cpp:4352
-#: ../src/TrackPanel.cpp:4353
+#: ../src/TrackPanel.cpp:4352 ../src/TrackPanel.cpp:4353
msgid "Lower speed limit"
msgstr "Ðолна гÑаниÑа на ÑкоÑоÑÑÑа"
@@ -3719,8 +3853,7 @@ msgstr "Ðолна гÑаниÑа на ÑкоÑоÑÑÑа"
msgid "Change upper speed limit (%) to:"
msgstr "Ðова гоÑна гÑаниÑа на ÑкоÑоÑÑÑа (%):"
-#: ../src/TrackPanel.cpp:4359
-#: ../src/TrackPanel.cpp:4360
+#: ../src/TrackPanel.cpp:4359 ../src/TrackPanel.cpp:4360
msgid "Upper speed limit"
msgstr "ÐоÑна гÑаниÑа на ÑкоÑоÑÑÑа"
@@ -3762,6 +3895,10 @@ msgstr ""
msgid "Face size"
msgstr ""
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr ""
+
#: ../src/TrackPanel.cpp:4701
msgid "Mute"
msgstr "Ðзкл."
@@ -3840,8 +3977,9 @@ msgstr "ÐÑиÑÑавки 1 - %i"
msgid "Plugins %i to %i"
msgstr "ÐÑиÑÑавки %i - %i"
-#: commands/CommandManager.cpp:857
-msgid "Disallowed for some reason. Try selecting some audio first?"
+#: commands/CommandManager.cpp:923
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
msgstr ""
#: commands/CommandManager.cpp:724
@@ -3988,31 +4126,19 @@ msgstr ""
msgid "Processing Auto Duck..."
msgstr ""
-#: ../src/LangChoice.cpp:94
-#: ../src/Tags.cpp:721
-#: ../src/effects/Amplify.cpp:187
-#: ../src/effects/AvcCompressor.cpp:716
-#: ../src/effects/BassBoost.cpp:332
-#: ../src/effects/ChangePitch.cpp:393
-#: ../src/effects/ChangeSpeed.cpp:379
-#: ../src/effects/ChangeTempo.cpp:284
-#: ../src/effects/Compressor.cpp:484
-#: ../src/effects/Echo.cpp:242
-#: ../src/effects/Equalization.cpp:731
-#: ../src/effects/Filter.cpp:482
-#: ../src/effects/Normalize.cpp:258
-#: ../src/effects/Phaser.cpp:576
-#: ../src/effects/Repeat.cpp:251
-#: ../src/effects/VST/VSTEffect.cpp:98
-#: ../src/effects/VST/VSTEffect.cpp:455
-#: ../src/effects/Wahwah.cpp:563
-#: ../src/effects/ladspa/LadspaEffect.cpp:498
+#: ../src/LangChoice.cpp:94 ../src/Tags.cpp:721 ../src/effects/Amplify.cpp:187
+#: ../src/effects/AvcCompressor.cpp:716 ../src/effects/BassBoost.cpp:332
+#: ../src/effects/ChangePitch.cpp:393 ../src/effects/ChangeSpeed.cpp:379
+#: ../src/effects/ChangeTempo.cpp:284 ../src/effects/Compressor.cpp:484
+#: ../src/effects/Echo.cpp:242 ../src/effects/Equalization.cpp:731
+#: ../src/effects/Filter.cpp:482 ../src/effects/Normalize.cpp:258
+#: ../src/effects/Phaser.cpp:576 ../src/effects/Repeat.cpp:251
+#: ../src/effects/VST/VSTEffect.cpp:98 ../src/effects/VST/VSTEffect.cpp:455
+#: ../src/effects/Wahwah.cpp:563 ../src/effects/ladspa/LadspaEffect.cpp:498
#: ../src/effects/nyquist/Nyquist.cpp:736
#: ../src/effects/nyquist/Nyquist.cpp:883
-#: ../src/effects/nyquist/Nyquist.cpp:949
-#: ../src/prefs/FileFormatPrefs.cpp:471
-#: ../src/prefs/PrefsDialog.cpp:100
-#: ../src/widgets/Warning.cpp:56
+#: ../src/effects/nyquist/Nyquist.cpp:949 ../src/prefs/FileFormatPrefs.cpp:471
+#: ../src/prefs/PrefsDialog.cpp:100 ../src/widgets/Warning.cpp:56
msgid "OK"
msgstr "OK"
@@ -4075,14 +4201,12 @@ msgstr "ÐÑомÑна на виÑоÑинаÑа"
msgid "Change Pitch without Changing Tempo"
msgstr "ÐÑомÑна на виÑоÑинаÑа без пÑомÑна на ÑемпоÑо"
-#: ../src/effects/ChangePitch.cpp:247
-#: ../src/effects/ChangeSpeed.cpp:287
+#: ../src/effects/ChangePitch.cpp:247 ../src/effects/ChangeSpeed.cpp:287
#: ../src/effects/ChangeTempo.cpp:164
msgid "by Vaughan Johnson && Dominic Mazzoni"
msgstr "Ð¾Ñ Vaughan Johnson и Dominic Mazzoni"
-#: ../src/effects/ChangePitch.cpp:252
-#: ../src/effects/ChangeTempo.cpp:169
+#: ../src/effects/ChangePitch.cpp:252 ../src/effects/ChangeTempo.cpp:169
msgid "using SoundTouch, by Olli Parviainen"
msgstr "ползва SoundTouch Ð¾Ñ Olli Parviainen"
@@ -4131,10 +4255,8 @@ msgstr ""
msgid "From frequency in hertz"
msgstr ""
-#: ../src/effects/ChangePitch.cpp:284
-#: ../src/effects/ChangePitch.cpp:330
-#: ../src/effects/ChangeSpeed.cpp:351
-#: ../src/effects/ChangeTempo.cpp:223
+#: ../src/effects/ChangePitch.cpp:284 ../src/effects/ChangePitch.cpp:330
+#: ../src/effects/ChangeSpeed.cpp:351 ../src/effects/ChangeTempo.cpp:223
#: ../src/effects/ChangeTempo.cpp:254
msgid "to"
msgstr "до"
@@ -4143,8 +4265,7 @@ msgstr "до"
msgid "To frequency in seconds"
msgstr ""
-#: ../src/effects/ChangePitch.cpp:353
-#: ../src/effects/ChangeSpeed.cpp:305
+#: ../src/effects/ChangePitch.cpp:353 ../src/effects/ChangeSpeed.cpp:305
#: ../src/effects/ChangeTempo.cpp:182
msgid "Percent Change:"
msgstr "ÐÑомÑна в пÑоÑенÑи:"
@@ -4162,8 +4283,7 @@ msgstr "ÐÑомÑна на виÑоÑинаÑа..."
msgid "Changing Pitch"
msgstr "ÐÑÐ¾Ð¼ÐµÐ½Ñ Ñе виÑоÑинаÑа"
-#: ../src/effects/ChangeSpeed.cpp:40
-#: ../src/effects/ChangeTempo.cpp:43
+#: ../src/effects/ChangeSpeed.cpp:40 ../src/effects/ChangeTempo.cpp:43
#, c-format
msgid "Applied effect: %s %.1f%%"
msgstr "ÐÑиложен бе еÑекÑ: %s %.1f%%"
@@ -4310,12 +4430,11 @@ msgstr ""
msgid "Decay Time"
msgstr ""
-#: ../src/effects/Compressor.cpp:469
-msgid "Normalize to 0dB after compressing"
-msgstr "ÐоÑмализиÑане до 0 дРÑлед компÑеÑиÑанеÑо"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
+msgstr ""
#: effects/Compressor.cpp:563
-#, c-format
#, fuzzy
msgid "Threshold %d dB"
msgstr "ÐÑаг: %d дÐ"
@@ -4346,7 +4465,6 @@ msgid "%.1f:1"
msgstr ""
#: effects/Compressor.cpp:575
-#, c-format
#, fuzzy
msgid "Attack Time %.1f secs"
msgstr "ÐÑеме за аÑака: %.1f Ñ"
@@ -4369,6 +4487,10 @@ msgstr "ÐомпÑеÑоÑ..."
msgid "Applying Dynamic Range Compression..."
msgstr "ÐзвÑÑÑва Ñе компÑеÑиÑане на динамиÑÐ½Ð¸Ñ Ð¾Ð±Ñ
ваÑ..."
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
msgstr ""
@@ -4388,19 +4510,6 @@ msgid "Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr ""
-
#: effects/Contrast.cpp:231
msgid "Contrast Analyzer"
msgstr ""
@@ -4434,6 +4543,11 @@ msgstr ""
msgid "Foreground end time"
msgstr ""
+#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
+#: effects/Contrast.cpp:289
+msgid "Measured"
+msgstr ""
+
#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
msgid "Use selection"
msgstr ""
@@ -4478,16 +4592,8 @@ msgstr ""
msgid "Help for WCAG2 Audio Contrast Analyzer"
msgstr ""
-#: toolbars/ControlToolBar.cpp:82
-msgid "Control"
-msgstr ""
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
msgstr ""
#: effects/Contrast.cpp:328 effects/Contrast.cpp:336 effects/Contrast.cpp:344
@@ -4598,18 +4704,6 @@ msgstr ""
msgid "Data gathered"
msgstr ""
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr ""
-
#: effects/DtmfGen.cpp:47
msgid "DTMF Tone Generator"
msgstr ""
@@ -4669,8 +4763,7 @@ msgstr ""
msgid "Applied effect: %s delay = %f seconds, decay factor = %f"
msgstr "ÐÑиложен бе еÑекÑ: %s закÑÑнение = %f ÑекÑнди, заÑиÑ
ване = %f"
-#: ../src/effects/Echo.cpp:39
-#: ../src/effects/Echo.cpp:177
+#: ../src/effects/Echo.cpp:39 ../src/effects/Echo.cpp:177
msgid "Echo"
msgstr "ÐÑ
о"
@@ -4702,8 +4795,7 @@ msgstr ""
msgid "Previewing"
msgstr ""
-#: ../src/ControlToolBar.cpp:721
-#: ../src/effects/Effect.cpp:329
+#: ../src/ControlToolBar.cpp:721 ../src/effects/Effect.cpp:329
msgid "Error while opening sound device. Please check the output device settings and the project sample rate."
msgstr "ÐÑеÑка пÑи оÑваÑÑне на звÑковоÑо ÑÑÑÑойÑÑво. ÐолÑ, пÑовеÑеÑе наÑÑÑойкиÑе на изÑ
одноÑо ÑÑÑÑойÑÑво и ÑеÑÑоÑаÑа на диÑкÑеÑизаÑÐ¸Ñ Ð·Ð° пÑоекÑа."
@@ -4736,6 +4828,10 @@ msgstr ""
msgid "custom"
msgstr ""
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr ""
+
#: effects/Equalization.cpp:971
msgid "Equalization, by Martyn Shaw && Mitch Golden"
msgstr ""
@@ -4936,10 +5032,6 @@ msgstr ""
msgid "Analyser"
msgstr ""
-#: toolbars/MixerToolBar.cpp:58
-msgid "Mixer"
-msgstr ""
-
#: effects/LoadEffects.cpp:116
msgid "Simulator"
msgstr ""
@@ -5175,10 +5267,6 @@ msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr ""
#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
-msgid "false"
-msgstr ""
-
-#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
msgid "true"
msgstr ""
@@ -5236,8 +5324,7 @@ msgstr ""
msgid "Dry Wet"
msgstr ""
-#: ../src/effects/Phaser.cpp:497
-#: ../src/effects/Wahwah.cpp:468
+#: ../src/effects/Phaser.cpp:497 ../src/effects/Wahwah.cpp:468
msgid "LFO Frequency (Hz):"
msgstr "ЧеÑÑоÑа на ÐЧР(Ð¥Ñ):"
@@ -5245,8 +5332,7 @@ msgstr "ЧеÑÑоÑа на ÐЧР(Ð¥Ñ):"
msgid "LFO frequency in hertz"
msgstr ""
-#: ../src/effects/Phaser.cpp:513
-#: ../src/effects/Wahwah.cpp:484
+#: ../src/effects/Phaser.cpp:513 ../src/effects/Wahwah.cpp:484
msgid "LFO Start Phase (deg.):"
msgstr "ÐаÑ. Ñаза на ÐЧР(гÑадÑÑи):"
@@ -5305,8 +5391,7 @@ msgstr "ÐвÑкÑÑ Ð±Ðµ повÑоÑен %d пÑÑи"
msgid "Tracks are too long to repeat the selection."
msgstr "ÐиÑÑиÑе Ñа ÑвÑÑде дÑлги за повÑаÑÑне на ÑелекÑиÑÑа."
-#: ../src/effects/Repeat.cpp:58
-#: ../src/effects/Repeat.cpp:62
+#: ../src/effects/Repeat.cpp:58 ../src/effects/Repeat.cpp:62
msgid "Repeat"
msgstr "ÐовÑаÑÑне"
@@ -5319,8 +5404,7 @@ msgstr "ÐÑой повÑоÑениÑ:"
msgid "New selection length: hh:mm:ss"
msgstr ""
-#: ../src/effects/Repeat.cpp:241
-#: ../src/effects/Repeat.cpp:280
+#: ../src/effects/Repeat.cpp:241 ../src/effects/Repeat.cpp:280
msgid "New selection length: "
msgstr "Ðова дÑлжина на ÑелекÑиÑÑа:"
@@ -5531,20 +5615,37 @@ msgstr ""
msgid "Truncate Silence"
msgstr ""
-#: effects/TruncSilence.cpp:346
-msgid "Max silence duration:"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr ""
+
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
msgstr ""
#: prefs/AudioIOPrefs.cpp:175 prefs/AudioIOPrefs.cpp:178
msgid "milliseconds"
msgstr ""
+#: effects/TruncSilence.cpp:346
+msgid "Max silence duration:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ""
+
#: effects/TruncSilence.cpp:351
msgid "Threshold for silence:"
msgstr ""
-#: effects/TruncSilence.cpp:375
-msgid " Duration must be at least 1 millisecond"
+#: effects/TruncSilence.cpp:506
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
msgstr ""
#: BatchCommands.cpp:236 effects/TruncSilence.cpp:84 effects/TruncSilence.h:29
@@ -5555,17 +5656,56 @@ msgstr ""
msgid "Truncating Silence..."
msgstr ""
-#: ../src/effects/VST/VSTEffect.cpp:180
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "СÑжалÑваме, еÑекÑиÑе VST не Ð¼Ð¾Ð³Ð°Ñ Ð´Ð° Ñе пÑÐ¸Ð»Ð°Ð³Ð°Ñ Ð²ÑÑÑ
Ñ ÑÑеÑеопиÑÑи, в коиÑо каналиÑе на пиÑÑаÑа не Ñи паÑваÑ."
+#: ../src/effects/ladspa/LadspaEffect.cpp:452
+msgid "Effect Settings"
+msgstr "ÐаÑÑÑойки на еÑекÑа"
+
+#: ../src/effects/ladspa/LadspaEffect.cpp:435
+#: ../src/effects/ladspa/LadspaEffect.cpp:443
+#: ../src/prefs/QualityPrefs.cpp:160
+msgid "None"
+msgstr "ÐÑма"
+
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
-#: ../src/effects/VST/VSTEffect.cpp:196
-msgid "Can't process replacing"
-msgstr "ÐамÑнаÑа не може да Ñе обÑабоÑи"
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
-#: ../src/effects/VST/VSTEffect.cpp:410
-msgid "VST Plug-in parameters:"
-msgstr "ÐаÑамеÑÑи за пÑиÑÑавка VST:"
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr ""
#: ../src/effects/Wahwah.cpp:41
#, c-format
@@ -5613,22 +5753,11 @@ msgstr "ÐÑилага Ñе еÑекÑ: %s"
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr ""
-#: ../src/effects/ladspa/LadspaEffect.cpp:435
-#: ../src/effects/ladspa/LadspaEffect.cpp:443
-#: ../src/prefs/QualityPrefs.cpp:160
-msgid "None"
-msgstr "ÐÑма"
-
#: ../src/effects/ladspa/LadspaEffect.cpp:437
msgid "Author: "
msgstr "ÐвÑоÑ:"
-#: ../src/effects/ladspa/LadspaEffect.cpp:452
-msgid "Effect Settings"
-msgstr "ÐаÑÑÑойки на еÑекÑа"
-
-#: ../src/effects/Silence.cpp:127
-#: ../src/effects/ToneGen.cpp:306
+#: ../src/effects/Silence.cpp:127 ../src/effects/ToneGen.cpp:306
msgid "Length (seconds)"
msgstr "ÐÑлжина (ÑекÑнди)"
@@ -5819,9 +5948,21 @@ msgstr "ЦелиÑÑ Ð¿ÑÐ¾ÐµÐºÑ Ñе екÑпоÑÑиÑа ÑÑез кодеÑ
msgid "Command Output"
msgstr ""
-#: export/ExportFFmpeg.cpp:59
+#: export/ExportFFmpeg.cpp:61
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
#: export/ExportFFmpeg.cpp:394
@@ -5889,6 +6030,10 @@ msgstr ""
msgid "AAC Export Setup"
msgstr ""
+#: export/ExportOGG.cpp:86
+msgid "Quality:"
+msgstr ""
+
#: export/ExportFFmpegDialogs.cpp:217
msgid "Specify AMR-NB Options"
msgstr ""
@@ -6022,12 +6167,8 @@ msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n
"Recommended - 192000"
msgstr ""
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr ""
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid "Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
@@ -6046,10 +6187,10 @@ msgstr ""
msgid "Cutoff Bandwidth:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:947
+#: export/ExportFFmpegDialogs.cpp:936
msgid "Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:949
@@ -6238,12 +6379,12 @@ msgstr ""
msgid "AC3 Files (FFmpeg)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:56
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:57
@@ -6354,6 +6495,17 @@ msgstr ""
msgid "FLAC Files"
msgstr ""
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
#: export/ExportFLAC.cpp:93
msgid "Exporting the selected audio as FLAC"
msgstr ""
@@ -6378,8 +6530,7 @@ msgstr ""
msgid "Cannot export MP2 with this sample rate and bit rate"
msgstr ""
-#: ../src/export/ExportMP3.cpp:1345
-#: ../src/export/ExportOGG.cpp:53
+#: ../src/export/ExportMP3.cpp:1345 ../src/export/ExportOGG.cpp:53
msgid "Unable to open target file for writing"
msgstr "Ðе е вÑзможно оÑваÑÑнеÑо за Ð·Ð°Ð¿Ð¸Ñ Ð½Ð° Ñайла - меÑÑоназнаÑение"
@@ -6578,8 +6729,7 @@ msgstr ""
msgid "MP3 export library not found"
msgstr ""
-#: ../src/export/ExportMultiple.cpp:367
-#: ../src/export/ExportMultiple.cpp:474
+#: ../src/export/ExportMultiple.cpp:367 ../src/export/ExportMultiple.cpp:474
#: ../src/export/ExportMultiple.cpp:562
msgid "Export Multiple"
msgstr "ÐкÑпоÑÑ Ð½Ð° нÑколко Ñайла"
@@ -6611,11 +6761,6 @@ msgstr ""
msgid "Export location:"
msgstr "ÐеÑÑоположение за екÑпоÑÑ:"
-#: ../src/export/ExportMultiple.cpp:600
-#: ../src/prefs/DirectoriesPrefs.cpp:82
-msgid "Choose..."
-msgstr "ÐзбоÑ..."
-
#: export/ExportMultiple.cpp:205
msgid "Create"
msgstr ""
@@ -6640,10 +6785,6 @@ msgstr "Ðме на пÑÑÐ²Ð¸Ñ Ñайл:"
msgid "First file name"
msgstr ""
-#: ../src/export/ExportMultiple.cpp:636
-msgid "Tracks"
-msgstr "ÐиÑÑи"
-
#: ../src/export/ExportMultiple.cpp:646
msgid "Name files:"
msgstr "Ðмена на ÑайловеÑе:"
@@ -6677,25 +6818,44 @@ msgstr ""
msgid "Choose a location to save the exported files"
msgstr "ÐзбеÑеÑе меÑÑоположение за екÑпоÑÑиÑаниÑе Ñайлове"
-#: export/ExportMultiple.cpp:480
+#: export/ExportMultiple.cpp:524
#, c-format
-msgid "\"%s\" doesn't exist.\n"
-"\n"
-"Would you like to create it?"
+msgid "Successfully exported the following %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:637 export/ExportMultiple.cpp:772
-msgid "Edit metadata"
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:590
+#: export/ExportMultiple.cpp:527
#, c-format
-msgid "Successfully exported %d file(s)."
+msgid "Export stopped after exporting the following %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:597
+#: export/ExportMultiple.cpp:528
#, c-format
-msgid "Something went wrong after exporting %d file(s)."
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr ""
+
+#: export/ExportMultiple.cpp:480
+#, c-format
+msgid "\"%s\" doesn't exist.\n"
+"\n"
+"Would you like to create it?"
+msgstr ""
+
+#: export/ExportMultiple.cpp:637 export/ExportMultiple.cpp:772
+msgid "Edit metadata"
msgstr ""
#: export/ExportMultiple.cpp:881
@@ -6779,7 +6939,6 @@ msgstr ""
#. i18n-hint: %s will be the error message from libsndfile
#: export/ExportPCM.cpp:436
-#, c-format
#, fuzzy
msgid "Error (file may not have been written): %s"
msgstr "ÐÑеÑка (ÑайлÑÑ Ð¼Ð¾Ð¶Ðµ да не е запиÑан): %s"
@@ -6945,8 +7104,11 @@ msgstr ""
msgid "FLAC files"
msgstr ""
-#: ../src/import/ImportLOF.cpp:151
-#: ../src/import/ImportLOF.cpp:177
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr ""
+
+#: ../src/import/ImportLOF.cpp:151 ../src/import/ImportLOF.cpp:177
msgid "List of Files in basic text format"
msgstr "СпиÑÑк Ð¾Ñ Ñайлове в ÑекÑÑов ÑоÑмаÑ"
@@ -6956,10 +7118,8 @@ msgid "Invalid window offset in LOF file."
msgstr "Ðевалидно оÑмеÑÑване на пÑозоÑÐµÑ Ð² LOF Ñайл."
#. i18n-hint: You do not need to translate "LOF"
-#: ../src/import/ImportLOF.cpp:270
-#: ../src/import/ImportLOF.cpp:291
-#: ../src/import/ImportLOF.cpp:364
-#: ../src/import/ImportLOF.cpp:384
+#: ../src/import/ImportLOF.cpp:270 ../src/import/ImportLOF.cpp:291
+#: ../src/import/ImportLOF.cpp:364 ../src/import/ImportLOF.cpp:384
msgid "LOF Error"
msgstr "ÐÑеÑка в LOF Ñайл"
@@ -7102,131 +7262,59 @@ msgstr ""
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr ""
-#: ../src/prefs/PrefsDialog.cpp:84
-msgid "Audio I/O"
-msgstr "ÐÑдио вÑ
од/изÑ
од"
-
-#: ../src/prefs/AudioIOPrefs.cpp:212
-msgid "1 (Mono)"
-msgstr "1 (моно)"
-
-#: ../src/prefs/AudioIOPrefs.cpp:213
-msgid "2 (Stereo)"
-msgstr "2 (ÑÑеÑео)"
-
-#: ../src/prefs/AudioIOPrefs.cpp:80
-msgid "Playback"
-msgstr "ÐÑзпÑоизвеждане"
-
-#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
-#: toolbars/DeviceToolBar.cpp:54
-msgid "Device"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:122
-msgid "Using:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:123
-msgid "Portaudio v"
-msgstr ""
-
-#: ../src/prefs/AudioIOPrefs.cpp:148
-msgid "Recording"
-msgstr "ÐапиÑ"
-
-#: prefs/AudioIOPrefs.cpp:139
-msgid "Channels"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:145
-msgid "Playthrough"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:194
-msgid "Effects Preview"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:165
-msgid "Length of preview:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:158
-msgid "Cut Preview"
+#: prefs/BatchPrefs.cpp:53 prefs/BatchPrefs.cpp:54
+msgid "Batch"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:173
-msgid "Preview before cut region:"
+#: prefs/BatchPrefs.cpp:75 prefs/GUIPrefs.cpp:70
+msgid "Behaviors"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:175
-msgid "Preview after cut region:"
+#: prefs/BatchPrefs.cpp:80
+msgid "&Don't apply effects in batch mode"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:168
-msgid "Latency"
+#: prefs/BatchPrefs.cpp:83
+msgid "Cl&eanSpeech Mode (Customized GUI)"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:195
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:198
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr ""
+#: ../src/prefs/PrefsDialog.cpp:89
+msgid "Interface"
+msgstr "ÐнÑеÑÑейÑ"
-#: prefs/AudioIOPrefs.cpp:197
-msgid "Seek Time when playing"
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:187
-msgid "Short period:"
+#: prefs/AudioIOPrefs.cpp:122
+msgid "Using:"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:189
-msgid "Long period:"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:80
+msgid "Playback"
+msgstr "ÐÑзпÑоизвеждане"
-#: prefs/BatchPrefs.cpp:53 prefs/BatchPrefs.cpp:54
-msgid "Batch"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:148
+msgid "Recording"
+msgstr "ÐапиÑ"
-#: prefs/BatchPrefs.cpp:75 prefs/GUIPrefs.cpp:70
-msgid "Behaviors"
+#: prefs/AudioIOPrefs.cpp:139
+msgid "Channels"
msgstr ""
-#: prefs/BatchPrefs.cpp:80
-msgid "&Don't apply effects in batch mode"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:212
+msgid "1 (Mono)"
+msgstr "1 (моно)"
-#: prefs/BatchPrefs.cpp:83
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:213
+msgid "2 (Stereo)"
+msgstr "2 (ÑÑеÑео)"
-#: ../src/prefs/PrefsDialog.cpp:88
-#: ../src/prefs/PrefsDialog.cpp:216
+#: ../src/prefs/PrefsDialog.cpp:88 ../src/prefs/PrefsDialog.cpp:216
msgid "Directories"
msgstr "ÐиÑекÑоÑии"
@@ -7242,34 +7330,31 @@ msgstr "ÐÑÑ:"
msgid "Free Space:"
msgstr "Свободно мÑÑÑо:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr ""
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr ""
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
+#: prefs/DirectoriesPrefs.cpp:110
+msgid "Audio cache"
msgstr ""
#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
+msgid "Play and/or record using RAM (useful for slow drives)"
msgstr ""
-#: prefs/DirectoriesPrefs.cpp:110
-msgid "Audio cache"
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
msgstr ""
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
#: ../src/prefs/DirectoriesPrefs.cpp:135
msgid "Choose a location to place the temporary directory"
msgstr "ÐзбеÑеÑе меÑÑоположение за вÑеменнаÑа диÑекÑоÑиÑ"
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: ../src/prefs/DirectoriesPrefs.cpp:181
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -7288,220 +7373,141 @@ msgstr "РдиÑекÑоÑиÑÑа %s не може да Ñе запиÑва"
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "СмÑнаÑа на вÑеменнаÑа диÑекÑоÑÐ¸Ñ Ð²Ð»Ð¸Ð·Ð° в Ñила Ñлед ÑеÑÑаÑÑиÑане на Audacity"
-#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
-msgid "Import / Export"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:84
-msgid "MP3 Export Library"
-msgstr ""
-
-#: ../src/prefs/FileFormatPrefs.cpp:180
-msgid "MP3 Library Version:"
-msgstr "ÐеÑÑÐ¸Ñ Ð½Ð° библиоÑекаÑа за MP3"
-
-#: prefs/FileFormatPrefs.cpp:93
-msgid "MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:98
-msgid "LAME MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
-msgid "&Download"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:136
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:137
-msgid "When importing audio files"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:140
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:141
-msgid "&Read uncompressed audio files directly from the original (faster)"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:143
-msgid "&Normalize all tracks in project"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:132
-msgid "When saving a project that depends on other audio files"
+#: prefs/GUIPrefs.cpp:42
+msgid "In Browser"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:87
-msgid "Always © all audio into project (safest)"
+#: prefs/GUIPrefs.cpp:43
+msgid "From Internet"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:88
-msgid "&Do not copy any audio"
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:135
-msgid "&Ask user"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:93
-msgid "When exporting tracks to an audio file"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:144
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:97
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
msgstr ""
-#: prefs/BatchPrefs.cpp:91
-msgid "S&how Metadata Editor prior to export step"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
msgstr ""
-#: ../src/prefs/PrefsDialog.cpp:89
-msgid "Interface"
-msgstr "ÐнÑеÑÑейÑ"
+#: ../src/prefs/GUIPrefs.cpp:150
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 дР(плиÑÑк обÑ
Ð²Ð°Ñ Ð·Ð° ÑедакÑиÑане на големи амплиÑÑди)"
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:157
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 дР(обÑ
Ð²Ð°Ñ Ð·Ð° PCM Ñ 8-биÑови оÑÑеÑи)"
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
+#: prefs/GUIPrefs.cpp:143
+msgid "-60 dB (PCM range of 10 bit samples)"
msgstr ""
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:164
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 дР(обÑ
Ð²Ð°Ñ Ð·Ð° PCM Ñ 16-биÑови оÑÑеÑи)"
-#: prefs/GUIPrefs.cpp:72
-msgid "&Update display while playing"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:171
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 дР(пÑиблизиÑелна гÑаниÑа на ÑовеÑÐºÐ¸Ñ ÑлÑÑ
)"
-#: prefs/GUIPrefs.cpp:96
-msgid "Cl&osing last window quits Audacity"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:178
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 дР(обÑ
Ð²Ð°Ñ Ð·Ð° PCM Ñ 24-биÑови оÑÑеÑи)"
-#: prefs/GUIPrefs.cpp:76
-msgid "Enable &dragging of left and right selection edges"
+#: prefs/SpectrumPrefs.cpp:96
+msgid "Display"
msgstr ""
#: prefs/GUIPrefs.cpp:100
msgid "Er&gonomic order of audio I/O buttons"
msgstr ""
-#: prefs/GUIPrefs.cpp:80
-msgid "Automatically &fit tracks vertically zoomed"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
msgstr ""
-#: prefs/GUIPrefs.cpp:104
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
msgstr ""
-#: prefs/GUIPrefs.cpp:90
-msgid "Editing a &clip can move other clips"
+#: prefs/GUIPrefs.cpp:167
+msgid "Help:"
msgstr ""
-#: prefs/GUIPrefs.cpp:88
-msgid "&Select all audio in project, if none selected"
+#: prefs/GUIPrefs.cpp:96
+msgid "Cl&osing last window quits Audacity"
msgstr ""
#: prefs/GUIPrefs.cpp:90
msgid "&Beep on completion of longer activities"
msgstr ""
-#: prefs/BatchPrefs.cpp:87 prefs/GUIPrefs.cpp:94
-msgid "Show / Hide"
+#: prefs/GUIPrefs.cpp:126
+msgid "Modes"
msgstr ""
-#: prefs/GUIPrefs.cpp:96
-msgid "Enable cut &lines"
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:98
-msgid "Show warnings about &temp files"
+#: prefs/GUIPrefs.cpp:129
+msgid "Don't a&pply effects in batch mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
+#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
+msgid "Import / Export"
msgstr ""
-#: prefs/GUIPrefs.cpp:122
-msgid "Show &Welcome Message at program start up"
+#: prefs/FileFormatPrefs.cpp:137
+msgid "When importing audio files"
msgstr ""
-#: prefs/GUIPrefs.cpp:126
-msgid "Modes"
+#: prefs/FileFormatPrefs.cpp:140
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
msgstr ""
-#: prefs/GUIPrefs.cpp:129
-msgid "Don't a&pply effects in batch mode"
+#: prefs/FileFormatPrefs.cpp:141
+msgid "&Read uncompressed audio files directly from the original (faster)"
msgstr ""
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
+#: prefs/FileFormatPrefs.cpp:143
+msgid "&Normalize all tracks in project"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:150
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 дР(плиÑÑк обÑ
Ð²Ð°Ñ Ð·Ð° ÑедакÑиÑане на големи амплиÑÑди)"
-
-#: ../src/prefs/GUIPrefs.cpp:157
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 дР(обÑ
Ð²Ð°Ñ Ð·Ð° PCM Ñ 8-биÑови оÑÑеÑи)"
-
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
+#: prefs/FileFormatPrefs.cpp:93
+msgid "When exporting tracks to an audio file"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:164
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 дР(обÑ
Ð²Ð°Ñ Ð·Ð° PCM Ñ 16-биÑови оÑÑеÑи)"
-
-#: ../src/prefs/GUIPrefs.cpp:171
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 дР(пÑиблизиÑелна гÑаниÑа на ÑовеÑÐºÐ¸Ñ ÑлÑÑ
)"
-
-#: ../src/prefs/GUIPrefs.cpp:178
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 дР(обÑ
Ð²Ð°Ñ Ð·Ð° PCM Ñ 24-биÑови оÑÑеÑи)"
-
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
+#: prefs/FileFormatPrefs.cpp:144
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
msgstr ""
-#: prefs/GUIPrefs.cpp:164
-msgid "Other interface choices"
+#: prefs/FileFormatPrefs.cpp:97
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
msgstr ""
-#: prefs/GUIPrefs.cpp:167
-msgid "Help:"
+#: prefs/BatchPrefs.cpp:91
+msgid "S&how Metadata Editor prior to export step"
msgstr ""
-#: prefs/GUIPrefs.cpp:168
-msgid "Solo Button:"
+#: prefs/ImportExportPrefs.cpp:84
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
msgstr ""
#: ../src/prefs/PrefsDialog.cpp:90
@@ -7532,17 +7538,22 @@ msgstr "Ðабележка: Cmd+Q ознаÑава изÑ
од. ÐÑиÑки дÑ
msgid "&Defaults"
msgstr ""
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr ""
+
#: ../src/prefs/KeyConfigPrefs.cpp:79
msgid "Key Combination"
msgstr "ÐлавиÑна комбинаÑиÑ"
-#: ../src/prefs/KeyConfigPrefs.cpp:159
-msgid "Export Keyboard Shortcuts As:"
-msgstr "ÐкÑпоÑÑ Ð½Ð° клавиÑни комбинаÑии каÑо:"
+#: ../src/EditToolBar.cpp:159
+msgid "Undo"
+msgstr "ÐÑмÑна"
-#: ../src/prefs/KeyConfigPrefs.cpp:174
-msgid "Error saving keyboard shortcuts"
-msgstr "ÐÑеÑка пÑи ÑÑÑ
ÑанÑване на клавиÑниÑе комбинаÑии"
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr ""
#: ../src/prefs/KeyConfigPrefs.cpp:188
msgid "Select an XML file containing Audacity keyboard shortcuts..."
@@ -7552,6 +7563,14 @@ msgstr "ÐÐ·Ð±Ð¾Ñ Ð½Ð° XML Ñайл Ñ ÐºÐ»Ð°Ð²Ð¸Ñни комбинаÑии н
msgid "Error loading keyboard shortcuts"
msgstr "ÐÑеÑка пÑи заÑеждане на клавиÑниÑе комбинаÑии"
+#: ../src/prefs/KeyConfigPrefs.cpp:159
+msgid "Export Keyboard Shortcuts As:"
+msgstr "ÐкÑпоÑÑ Ð½Ð° клавиÑни комбинаÑии каÑо:"
+
+#: ../src/prefs/KeyConfigPrefs.cpp:174
+msgid "Error saving keyboard shortcuts"
+msgstr "ÐÑеÑка пÑи ÑÑÑ
ÑанÑване на клавиÑниÑе комбинаÑии"
+
#: prefs/KeyConfigPrefs.cpp:239
#, c-format
msgid "The keyboard shortcut '%s' is already assigned to:\n"
@@ -7559,9 +7578,61 @@ msgid "The keyboard shortcut '%s' is already assigned to:\n"
"'%s'"
msgstr ""
-#: ../src/EditToolBar.cpp:159
-msgid "Undo"
-msgstr "ÐÑмÑна"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:84
+msgid "MP3 Export Library"
+msgstr ""
+
+#: ../src/prefs/FileFormatPrefs.cpp:180
+msgid "MP3 Library Version:"
+msgstr "ÐеÑÑÐ¸Ñ Ð½Ð° библиоÑекаÑа за MP3"
+
+#: prefs/FileFormatPrefs.cpp:93
+msgid "MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:98
+msgid "LAME MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
+msgid "&Download"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:109
+msgid "FFmpeg Library Version:"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
+msgid "FFmpeg Library:"
+msgstr ""
+
+#: ../src/prefs/PrefsDialog.cpp:84
+msgid "Audio I/O"
+msgstr "ÐÑдио вÑ
од/изÑ
од"
+
+#: prefs/AudioIOPrefs.cpp:123
+msgid "Portaudio v"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:145
+msgid "Playthrough"
+msgstr ""
#: prefs/AudioIOPrefs.cpp:147
#, fuzzy
@@ -7576,6 +7647,10 @@ msgstr ""
msgid "&Software Playthrough (Play new track while recording it)"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:158
+msgid "Cut Preview"
+msgstr ""
+
#: prefs/MidiIOPrefs.cpp:160
msgid "Play before cut region:"
msgstr ""
@@ -7584,6 +7659,10 @@ msgstr ""
msgid "Play after cut region:"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:168
+msgid "Latency"
+msgstr ""
+
#: prefs/AudioIOPrefs.cpp:174
msgid "Audio to buffer:"
msgstr ""
@@ -7596,6 +7675,18 @@ msgstr ""
msgid "Seek Time"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:187
+msgid "Short period:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:189
+msgid "Long period:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:194
+msgid "Effects Preview"
+msgstr ""
+
#: prefs/MidiIOPrefs.cpp:196
msgid "Play when previewing:"
msgstr ""
@@ -7620,14 +7711,12 @@ msgstr "ÐейÑÑвие на командаÑа"
msgid "Buttons"
msgstr "ÐÑÑони"
-#: ../src/prefs/MousePrefs.cpp:88
-#: ../src/prefs/MousePrefs.cpp:92
+#: ../src/prefs/MousePrefs.cpp:88 ../src/prefs/MousePrefs.cpp:92
#: ../src/prefs/MousePrefs.cpp:100
msgid "Left-Click"
msgstr "ЩÑакване Ñ Ð»ÐµÐ²Ð¸Ñ Ð±ÑÑон"
-#: ../src/prefs/MousePrefs.cpp:88
-#: ../src/prefs/MousePrefs.cpp:89
+#: ../src/prefs/MousePrefs.cpp:88 ../src/prefs/MousePrefs.cpp:89
#: ../src/prefs/MousePrefs.cpp:90
msgid "Select"
msgstr "ÐаÑкиÑане"
@@ -7636,10 +7725,8 @@ msgstr "ÐаÑкиÑане"
msgid "Set Selection Point"
msgstr "Ðадаване на маÑкиÑана ÑоÑка"
-#: ../src/prefs/MousePrefs.cpp:89
-#: ../src/prefs/MousePrefs.cpp:93
-#: ../src/prefs/MousePrefs.cpp:97
-#: ../src/prefs/MousePrefs.cpp:98
+#: ../src/prefs/MousePrefs.cpp:89 ../src/prefs/MousePrefs.cpp:93
+#: ../src/prefs/MousePrefs.cpp:97 ../src/prefs/MousePrefs.cpp:98
#: ../src/prefs/MousePrefs.cpp:102
msgid "Left-Drag"
msgstr "ÐлаÑене Ñ Ð»ÐµÐ²Ð¸Ñ Ð±ÑÑон"
@@ -7672,10 +7759,8 @@ msgstr ""
msgid "Set Selection Point and Play"
msgstr ""
-#: ../src/prefs/MousePrefs.cpp:92
-#: ../src/prefs/MousePrefs.cpp:93
-#: ../src/prefs/MousePrefs.cpp:94
-#: ../src/prefs/MousePrefs.cpp:95
+#: ../src/prefs/MousePrefs.cpp:92 ../src/prefs/MousePrefs.cpp:93
+#: ../src/prefs/MousePrefs.cpp:94 ../src/prefs/MousePrefs.cpp:95
msgid "Zoom"
msgstr "УвелиÑение"
@@ -7751,10 +7836,8 @@ msgstr "ÐÑомÑна на обвиваÑаÑа кÑива"
msgid "Change Sample"
msgstr "ÐÑомÑна на оÑÑеÑ"
-#: ../src/prefs/MousePrefs.cpp:100
-#: ../src/prefs/MousePrefs.cpp:101
-#: ../src/prefs/MousePrefs.cpp:102
-#: ../src/prefs/MousePrefs.cpp:103
+#: ../src/prefs/MousePrefs.cpp:100 ../src/prefs/MousePrefs.cpp:101
+#: ../src/prefs/MousePrefs.cpp:102 ../src/prefs/MousePrefs.cpp:103
msgid "Pencil"
msgstr "Ðолив"
@@ -7774,10 +7857,8 @@ msgstr "ÐÑомÑна на нÑколко оÑÑеÑа"
msgid "Change ONE Sample only"
msgstr "ÐÑомÑна на ÐÐÐРоÑÑеÑ"
-#: ../src/prefs/MousePrefs.cpp:105
-#: ../src/prefs/MousePrefs.cpp:106
-#: ../src/prefs/MousePrefs.cpp:107
-#: ../src/prefs/MousePrefs.cpp:108
+#: ../src/prefs/MousePrefs.cpp:105 ../src/prefs/MousePrefs.cpp:106
+#: ../src/prefs/MousePrefs.cpp:107 ../src/prefs/MousePrefs.cpp:108
msgid "Multi"
msgstr "ÐÑлÑи"
@@ -7791,8 +7872,7 @@ msgstr "ÐаÑо инÑÑÑÑменÑа за маÑкиÑане"
msgid "same as zoom tool"
msgstr "ÐаÑо инÑÑÑÑменÑа за ÑвелиÑение"
-#: ../src/prefs/MousePrefs.cpp:110
-#: ../src/prefs/MousePrefs.cpp:111
+#: ../src/prefs/MousePrefs.cpp:110 ../src/prefs/MousePrefs.cpp:111
msgid "Any"
msgstr "ÐÑоизволен"
@@ -7820,10 +7900,62 @@ msgstr "ÐолелÑе - вÑÑÑене Ñ Ctrl"
msgid "Zoom in or out"
msgstr "УвелиÑение на изгледа"
+#: prefs/AudioIOPrefs.cpp:165
+msgid "Length of preview:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:173
+msgid "Preview before cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:175
+msgid "Preview after cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:197
+msgid "Seek Time when playing"
+msgstr ""
+
#: ../src/prefs/PrefsDialog.cpp:52
msgid "Audacity Preferences"
msgstr "ÐаÑÑÑойка на Audacity"
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:132
+msgid "When saving a project that depends on other audio files"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:87
+msgid "Always © all audio into project (safest)"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:88
+msgid "&Do not copy any audio"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:135
+msgid "&Ask user"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr ""
+
#: ../src/prefs/QualityPrefs.cpp:161
msgid "Rectangle"
msgstr "ÐÑавоÑгÑлник"
@@ -7848,44 +7980,44 @@ msgstr "ÐодÑазбиÑана ÑеÑÑоÑа на диÑкÑеÑизаÑиÑ:
msgid "Default Sample Format:"
msgstr "ÐодÑазбиÑан ÑоÑÐ¼Ð°Ñ Ð½Ð° данниÑе:"
-#: ../src/prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "ÐÑедиÑкÑеÑизиÑане в Ñеално вÑеме:"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:147
-msgid "High-quality sample rate converter:"
-msgstr "ÐиÑококаÑеÑÑвено пÑедиÑкÑеÑизиÑане:"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+msgid "Sample Rate Converter:"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:171
-msgid "Real-time dither:"
-msgstr "РазÑÑмÑване в Ñеално вÑеме:"
+#: prefs/QualityPrefs.cpp:164
+msgid "Dither"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:186
-msgid "High-quality dither:"
-msgstr "ÐиÑококаÑеÑÑвено ÑазÑÑмÑване:"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
+#: prefs/AudioIOPrefs.cpp:149
+msgid "Overdub: &Play other tracks while recording new one"
msgstr ""
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
+#: prefs/AudioIOPrefs.cpp:150
+msgid "&Hardware Playthrough: Play new track while recording it"
msgstr ""
-#: prefs/QualityPrefs.cpp:164
-msgid "Dither"
+#: prefs/AudioIOPrefs.cpp:157
+msgid "&Software Playthrough: Play new track while recording or monitoring"
msgstr ""
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
+#: prefs/AudioIOPrefs.cpp:160
+msgid "(uncheck when recording \"stereo mix\")"
msgstr ""
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
msgstr ""
-#: prefs/SmartRecordPrefs.cpp:54 prefs/SmartRecordPrefs.cpp:55
-msgid "Smart Recording"
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
msgstr ""
#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
@@ -7900,18 +8032,54 @@ msgstr ""
msgid "Spectrograms"
msgstr "СпекÑÑогÑами"
-#: ../src/prefs/SpectrumPrefs.cpp:70
-msgid "FFT Size"
-msgstr "Ð Ð°Ð·Ð¼ÐµÑ Ð·Ð° бÑÑзоÑо пÑеобÑазÑвание на ФÑÑие"
-
#: prefs/SpectrumPrefs.cpp:75
msgid "8 - most wideband"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
#: ../src/prefs/SpectrumPrefs.cpp:40
msgid "256 - default"
msgstr "256 - по подÑазбиÑане"
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:107
msgid "32768 - most narrowband"
msgstr ""
@@ -7920,20 +8088,24 @@ msgstr ""
msgid "4096 - most narrowband"
msgstr "4096 - най-ÑÑÑна ÑеÑÑоÑна ленÑа"
-#: prefs/SpectrumPrefs.cpp:90
-msgid "Window type:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:125
-msgid "FFT Skip Points"
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:96
-msgid "Display"
+#: prefs/SpectrumPrefs.cpp:93
+msgid "Window type"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:100
-msgid "&Grayscale"
+#: prefs/SpectrumPrefs.cpp:125
+msgid "FFT Skip Points"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
msgstr ""
#: prefs/SpectrumPrefs.cpp:103
@@ -7944,16 +8116,16 @@ msgstr ""
msgid "Maximum Frequency (Hz):"
msgstr "ÐакÑимална ÑеÑÑоÑа (Ð¥Ñ):"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
msgstr ""
#: prefs/SpectrumPrefs.cpp:165
@@ -7964,6 +8136,14 @@ msgstr ""
msgid "Max. Number of Notes (1..128):"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:161
+msgid "&Find Notes"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Quantize Notes"
+msgstr ""
+
#: ../src/prefs/SpectrumPrefs.cpp:148
msgid "The maximum frequency must be an integer"
msgstr "ÐакÑималнаÑа ÑеÑÑоÑа ÑÑÑбва да е ÑÑло ÑиÑло"
@@ -7980,18 +8160,57 @@ msgstr ""
msgid "Minimum frequency must be at least 0 Hz"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:226 prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
+#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:230
+msgid "The maximum number of notes must be in the range 1..128"
msgstr ""
#: prefs/ThemePrefs.cpp:61 prefs/ThemePrefs.cpp:62
msgid "Theme"
msgstr ""
+#: prefs/ThemePrefs.cpp:123
+msgid "Info"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:91
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#: prefs/ThemePrefs.cpp:90
msgid "Theme Cache - Images && Color"
msgstr ""
@@ -8020,78 +8239,94 @@ msgstr ""
msgid "Load Files"
msgstr ""
-#: prefs/ThemePrefs.cpp:123
-msgid "Info"
+#: prefs/GUIPrefs.cpp:50
+msgid "Simple"
msgstr ""
-#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
+#: prefs/GUIPrefs.cpp:72
+msgid "&Update display while playing"
msgstr ""
-#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
+#: prefs/GUIPrefs.cpp:80
+msgid "Automatically &fit tracks vertically zoomed"
msgstr ""
-#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
+#: prefs/TracksPrefs.cpp:88
+msgid "Default View Mode:"
msgstr ""
-#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:88
+msgid "&Select all audio in project, if none selected"
msgstr ""
-#: ../src/ControlToolBar.cpp:470
-msgid "Pause"
-msgstr "ÐаÑза"
+#: prefs/GUIPrefs.cpp:96
+msgid "Enable cut &lines"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play"
+#: prefs/GUIPrefs.cpp:76
+msgid "Enable &dragging of left and right selection edges"
msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
+#: prefs/GUIPrefs.cpp:104
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
msgstr ""
-#: ../src/ControlToolBar.cpp:471
-msgid "Stop"
-msgstr "СÑоп"
+#: prefs/GUIPrefs.cpp:90
+msgid "Editing a &clip can move other clips"
+msgstr ""
-#: ../src/ControlToolBar.cpp:467
-msgid "Skip to Start"
-msgstr "ÐÑевÑÑÑане до наÑалоÑо"
+#: prefs/GUIPrefs.cpp:168
+msgid "Solo Button:"
+msgstr ""
-#: ../src/ControlToolBar.cpp:472
-msgid "Skip to End"
-msgstr "ÐÑевÑÑÑане до кÑаÑ"
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:192
-msgid "Record (Shift for Append Record)"
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
msgstr ""
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr ""
+
+#: ../src/Menus.cpp:561
+msgid "Pause"
+msgstr "ÐаÑза"
+
+#: ../src/Menus.cpp:560
+msgid "Stop"
+msgstr "СÑоп"
+
#: toolbars/ControlToolBar.cpp:195
msgid "Clean Speech"
msgstr ""
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play (Shift for Loop Play)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:192
+msgid "Record (Shift for Append Record)"
+msgstr ""
+
#: toolbars/ControlToolBar.cpp:524 toolbars/ControlToolBar.cpp:776
msgid "Error while opening sound device. "
msgstr ""
@@ -8132,28 +8367,20 @@ msgstr "УвелиÑаване"
msgid "Zoom Out"
msgstr "УмалÑване"
-#: ../src/EditToolBar.cpp:170
-msgid "Zoom Toggle"
-msgstr "УвелиÑение - вкл./изкл."
-
-#: toolbars/EditToolBar.cpp:160
-msgid "Fit Selection"
-msgstr ""
-
#: ../src/EditToolBar.cpp:174
msgid "Fit selection in window"
msgstr "ÐобиÑане на ÑелекÑиÑÑа в пÑозоÑеÑа"
-#: toolbars/EditToolBar.cpp:162
-msgid "Fit Project"
-msgstr ""
-
#: ../src/EditToolBar.cpp:176
msgid "Fit project in window"
msgstr "ÐобиÑане на ÑÐµÐ»Ð¸Ñ Ð¿ÑÐ¾ÐµÐºÑ Ð² пÑозоÑеÑа"
-#: toolbars/MeterToolBar.cpp:49
-msgid "Meter"
+#: toolbars/EditToolBar.cpp:160
+msgid "Fit Selection"
+msgstr ""
+
+#: toolbars/EditToolBar.cpp:162
+msgid "Fit Project"
msgstr ""
#: toolbars/MeterToolBar.cpp:79
@@ -8200,6 +8427,14 @@ msgstr ""
msgid "Input Source"
msgstr ""
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:75
msgid "Selection"
msgstr ""
@@ -8278,30 +8513,6 @@ msgstr "ÐÑв=ÑвелиÑаване, деÑен=ÑмалÑване, ÑÑеде
msgid "Click and drag to move a track in time"
msgstr "ЩÑакнеÑе и влаÑеÑе, за да меÑÑиÑе пиÑÑаÑа вÑв вÑемеÑо"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr ""
-
-#: ../src/ControlToolBar.cpp:355
-msgid "Selection Tool"
-msgstr "ÐнÑÑÑÑÐ¼ÐµÐ½Ñ Ð·Ð° маÑкиÑане"
-
-#: ../src/ControlToolBar.cpp:356
-msgid "Envelope Tool"
-msgstr "ÐнÑÑÑÑÐ¼ÐµÐ½Ñ Ð·Ð° обвиваÑи кÑиви"
-
-#: ../src/ControlToolBar.cpp:357
-msgid "Time Shift Tool"
-msgstr "ÐнÑÑÑÑÐ¼ÐµÐ½Ñ Ð·Ð° измеÑÑване вÑв вÑемеÑо"
-
-#: ../src/ControlToolBar.cpp:358
-msgid "Zoom Tool"
-msgstr "ÐнÑÑÑÑÐ¼ÐµÐ½Ñ Ð·Ð° ÑвелиÑение"
-
-#: ../src/ControlToolBar.cpp:359
-msgid "Draw Tool"
-msgstr "ÐнÑÑÑÑÐ¼ÐµÐ½Ñ Ð·Ð° ÑеÑÑане"
-
#: ../src/ControlToolBar.cpp:360
msgid "Multi-Tool Mode"
msgstr "ÐногоинÑÑÑÑменÑен Ñежим"
@@ -8310,22 +8521,10 @@ msgstr "ÐногоинÑÑÑÑменÑен Ñежим"
msgid "Slide Tool"
msgstr ""
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr ""
-
-#: toolbars/TranscriptionToolBar.cpp:81
-msgid "Transcription"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:183
msgid "Play at selected speed"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:184
-msgid "Play-at-speed"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:190 toolbars/TranscriptionToolBar.cpp:195
msgid "Playback Speed"
msgstr ""
@@ -8334,74 +8533,38 @@ msgstr ""
msgid "Adjust left selection to next onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:201
-msgid "Left-to-On"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:203
msgid "Adjust right selection to previous offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:204
-msgid "Right-to-Off"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:206
msgid "Adjust left selection to next offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:207
-msgid "Left-to-Off"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:209
msgid "Adjust right selection to previous onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:210
-msgid "Right-to-On"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:212
msgid "Select region of sound around cursor"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:213
-msgid "Select-Sound"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:215
msgid "Select region of silence around cursor"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:216
-msgid "Select-Silence"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:218
msgid "Automatically make labels from words"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:219
-msgid "Make Labels"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:221
msgid "Add label at selection"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:222
-msgid "Add Label"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:224
msgid "Calibrate voicekey"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:225
-msgid "Calibrate"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:229
msgid "Adjust Sensitivity"
msgstr ""
@@ -8434,6 +8597,46 @@ msgstr ""
msgid "Key type"
msgstr ""
+#: toolbars/TranscriptionToolBar.cpp:184
+msgid "Play-at-speed"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:201
+msgid "Left-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:204
+msgid "Right-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:207
+msgid "Left-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:210
+msgid "Right-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:213
+msgid "Select-Sound"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:216
+msgid "Select-Silence"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:219
+msgid "Make Labels"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:222
+msgid "Add Label"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:225
+msgid "Calibrate"
+msgstr ""
+
#: ../src/widgets/AButton.cpp:181
msgid " (disabled)"
msgstr " (недоÑÑÑпно)"
@@ -8447,14 +8650,12 @@ msgid "Button"
msgstr ""
#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
-#: ../src/widgets/ASlider.cpp:329
-#: ../src/widgets/Meter.cpp:165
+#: ../src/widgets/ASlider.cpp:329 ../src/widgets/Meter.cpp:165
msgid "L"
msgstr "Ð"
#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
-#: ../src/widgets/ASlider.cpp:332
-#: ../src/widgets/Meter.cpp:167
+#: ../src/widgets/ASlider.cpp:332 ../src/widgets/Meter.cpp:167
msgid "R"
msgstr "Ð"
@@ -8737,3 +8938,15 @@ msgstr ""
msgid "Could not load file: \"%s\""
msgstr ""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
+
diff --git a/locale/bn.po b/locale/bn.po
index e95617d..b22bb64 100644
--- a/locale/bn.po
+++ b/locale/bn.po
@@ -30,11 +30,11 @@ msgid "Audacity is a free program written by a team of volunteer <a href=\"http:
msgstr ""
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#. i18n-hint: The translation of "translator_credits" will appear
@@ -43,8 +43,7 @@ msgstr ""
#.
#. For example: "English translation by Dominic Mazzoni."
#.
-#: ../src/AboutDialog.cpp:127
-#: ../src/AboutDialog.cpp:129
+#: ../src/AboutDialog.cpp:127 ../src/AboutDialog.cpp:129
msgid "translator_credits"
msgstr "à¦
à¦à§à¦à§à¦° পà§à¦°à¦à¦²à§à¦ªà§à¦° পà¦à§à¦·à§ মাহৠà¦à¦²à¦® à¦à¦¾à¦¨ (makl10n at yahoo.com)"
@@ -87,7 +86,7 @@ msgid "Special thanks:"
msgstr ""
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
msgstr ""
#: AboutDialog.cpp:320
@@ -202,11 +201,8 @@ msgstr ""
msgid "%s is already open in another window."
msgstr "%s à¦à¦° à¦à¦à¦à¦¿ à¦à¦à¦¨à§à¦¡à§à¦¤à§ à¦à§à¦²à¦¾ রà§à§à¦à§."
-#: ../src/Project.cpp:1768
-#: ../src/Project.cpp:1837
-#: ../src/Project.cpp:1888
-#: ../src/Project.cpp:1899
-#: ../src/Project.cpp:1928
+#: ../src/Project.cpp:1768 ../src/Project.cpp:1837 ../src/Project.cpp:1888
+#: ../src/Project.cpp:1899 ../src/Project.cpp:1928
msgid "Error opening project"
msgstr ""
@@ -229,20 +225,28 @@ msgstr ""
msgid "Output Meter"
msgstr ""
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
+#: ../src/Menus.cpp:140
+msgid "&New"
+msgstr ""
+
+#: ../src/Menus.cpp:142
+msgid "&Open..."
+msgstr ""
+
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
+
#: AudacityApp.cpp:534 Menus.cpp:575
-msgid "&Preferences...\tCtrl+,"
+msgid "&Preferences..."
msgstr ""
-#: ../src/AudacityApp.cpp:547
-#: ../src/AudacityApp.cpp:617
+#: ../src/AudacityApp.cpp:547 ../src/AudacityApp.cpp:617
#, c-format
msgid "Using block size of %ld\n"
msgstr ""
-#: ../src/AudacityApp.cpp:562
-#: ../src/AudacityApp.cpp:632
+#: ../src/AudacityApp.cpp:562 ../src/AudacityApp.cpp:632
#, c-format
msgid "Unknown command line option: %s\n"
msgstr ""
@@ -350,14 +354,14 @@ msgstr "সমসà§à¦¯à¦¾:"
msgid "Error Initializing Audio"
msgstr ""
-#: AudioIO.cpp:1236
-msgid "Latency problem"
+#: AudioIO.cpp:1225
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
+"Audacity has brought it back to start at zero.\n"
+"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
msgstr ""
#: AudioIO.cpp:1236
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
-"Audacity has brought it back to start at zero.\n"
-"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
+msgid "Latency problem"
msgstr ""
#: AutoRecovery.cpp:40
@@ -406,10 +410,8 @@ msgstr ""
msgid "Could not enumerate files in auto save directory"
msgstr ""
-#: ../src/ControlToolBar.cpp:723
-#: ../src/ControlToolBar.cpp:884
-#: ../src/effects/Effect.cpp:332
-#: ../src/prefs/DirectoriesPrefs.cpp:204
+#: ../src/ControlToolBar.cpp:723 ../src/ControlToolBar.cpp:884
+#: ../src/effects/Effect.cpp:332 ../src/prefs/DirectoriesPrefs.cpp:204
msgid "Error"
msgstr "সমসà§à¦¯à¦¾"
@@ -585,8 +587,9 @@ msgstr ""
msgid "C&hain (Double-Click or press SPACE to edit)"
msgstr ""
-#: BatchProcessDialog.cpp:450
-msgid "No"
+#. i18n-hint: This is the number of the command in the list
+#: BatchProcessDialog.cpp:453
+msgid "Num"
msgstr ""
#: BatchProcessDialog.cpp:456
@@ -906,11 +909,11 @@ msgstr "à¦à§à¦¤à¦à¦¾à¦°"
msgid "FFmpeg support not compiled in"
msgstr ""
-#: FFmpeg.cpp:101
+#: FFmpeg.cpp:103
msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
#: FFmpeg.cpp:104
@@ -968,11 +971,12 @@ msgstr ""
msgid "FFmpeg not found"
msgstr ""
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
#: FFmpeg.h:109
@@ -995,8 +999,7 @@ msgstr ""
msgid "Frequency Analysis"
msgstr ""
-#: ../src/FreqWindow.cpp:129
-#: ../src/TrackPanel.cpp:837
+#: ../src/FreqWindow.cpp:129 ../src/TrackPanel.cpp:837
msgid "Spectrum"
msgstr ""
@@ -1057,12 +1060,24 @@ msgstr ""
msgid "Export"
msgstr ""
-#: ../src/Benchmark.cpp:223
-#: ../src/FreqWindow.cpp:123
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
+#: ../src/Benchmark.cpp:223 ../src/FreqWindow.cpp:123
#: ../src/effects/NoiseRemoval.cpp:463
msgid "Close"
msgstr "বনà§à¦§"
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr ""
+
#: ../src/widgets/Meter.cpp:293
msgid "dB"
msgstr ""
@@ -1073,6 +1088,15 @@ msgstr ""
msgid "Hz"
msgstr "হারà§à¦à¦à§"
+#: ../src/Menus.cpp:2333
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr ""
+
+#: ../src/Menus.cpp:2359
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr ""
+
#: ../src/FreqWindow.cpp:463
msgid "Not enough data selected."
msgstr ""
@@ -1099,9 +1123,7 @@ msgstr "সà§à¦ªà§à¦à¦à§à¦°à¦¾à¦®.লà§à¦à¦¾"
msgid "Export Spectral Data As:"
msgstr ""
-#: ../src/FreqWindow.cpp:1014
-#: ../src/Menus.cpp:1357
-#: ../src/Project.cpp:2120
+#: ../src/FreqWindow.cpp:1014 ../src/Menus.cpp:1357 ../src/Project.cpp:2120
#: ../src/prefs/KeyConfigPrefs.cpp:173
msgid "Couldn't write to file: "
msgstr ""
@@ -1114,6 +1136,21 @@ msgstr ""
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr ""
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr ""
+
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr ""
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr ""
@@ -1191,7 +1228,7 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr ""
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
msgstr ""
#: HelpText.cpp:244
@@ -1215,7 +1252,7 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr ""
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
msgstr ""
#: HelpText.cpp:383
@@ -1284,6 +1321,14 @@ msgstr ""
msgid "GB"
msgstr ""
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
#: LabelDialog.cpp:50
msgid "Track"
msgstr ""
@@ -1343,9 +1388,7 @@ msgstr ""
msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
msgstr ""
-#: ../src/Menus.cpp:2611
-#: ../src/Project.cpp:1814
-#: ../src/Project.cpp:1822
+#: ../src/Menus.cpp:2611 ../src/Project.cpp:1814 ../src/Project.cpp:1822
#: ../src/import/ImportMIDI.cpp:31
msgid "Could not open file: "
msgstr ""
@@ -1396,20 +1439,12 @@ msgstr ""
msgid "&File"
msgstr "&ফাà¦à¦²"
-#: ../src/Menus.cpp:140
-msgid "&New\tCtrl+N"
-msgstr ""
-
-#: ../src/Menus.cpp:142
-msgid "&Open...\tCtrl+O"
-msgstr ""
-
#: ../src/Menus.cpp:144
-msgid "&Close\tCtrl+W"
+msgid "&Close"
msgstr ""
#: ../src/Menus.cpp:145
-msgid "&Save Project\tCtrl+S"
+msgid "&Save Project"
msgstr ""
#: ../src/Menus.cpp:149
@@ -1433,7 +1468,7 @@ msgid "&Import"
msgstr ""
#: Menus.cpp:236
-msgid "&Audio...\tCtrl+Shift+I"
+msgid "&Audio..."
msgstr ""
#: Menus.cpp:237
@@ -1464,8 +1499,8 @@ msgstr ""
msgid "Export MIDI..."
msgstr ""
-#: Menus.cpp:290
-msgid "CleanSpeech C&hain..."
+#: Menus.cpp:352
+msgid "Appl&y Chain..."
msgstr ""
#: Menus.cpp:340 Menus.cpp:354
@@ -1480,10 +1515,6 @@ msgstr ""
msgid "I&mport CleanSpeech Presets..."
msgstr ""
-#: Menus.cpp:352
-msgid "Appl&y Chain..."
-msgstr ""
-
#: Menus.cpp:358
msgid "&Upload File..."
msgstr ""
@@ -1497,7 +1528,7 @@ msgid "&Print..."
msgstr ""
#: Menus.cpp:382 Menus.cpp:385
-msgid "E&xit\tCtrl+Q"
+msgid "E&xit"
msgstr ""
#: ../src/Menus.cpp:218
@@ -1505,7 +1536,7 @@ msgid "&Edit"
msgstr "&à¦à¦¡à¦¿à¦"
#: ../src/Menus.cpp:222
-msgid "&Undo\tCtrl+Z"
+msgid "&Undo"
msgstr ""
#: ../src/Menus.cpp:230
@@ -1513,55 +1544,55 @@ msgid "&Redo"
msgstr ""
#: ../src/Menus.cpp:243
-msgid "Cu&t\tCtrl+X"
+msgid "Cu&t"
msgstr ""
#: Menus.cpp:420
-msgid "Spl&it Cut\tCtrl+Alt+X"
+msgid "Spl&it Cut"
msgstr ""
#: ../src/Menus.cpp:244
-msgid "&Copy\tCtrl+C"
+msgid "&Copy"
msgstr ""
#: ../src/Menus.cpp:245
-msgid "&Paste\tCtrl+V"
+msgid "&Paste"
msgstr ""
#: Menus.cpp:426
-msgid "Tri&m\tCtrl+T"
+msgid "Tri&m"
msgstr ""
#: ../src/Menus.cpp:251
-msgid "&Delete\tCtrl+K"
+msgid "&Delete"
msgstr ""
#: Menus.cpp:429
-msgid "Split D&elete\tCtrl+Alt+K"
+msgid "Split D&elete"
msgstr ""
#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
+msgid "Silence Audi&o"
msgstr ""
#: Menus.cpp:432
-msgid "Sp&lit\tCtrl+I"
+msgid "Sp&lit"
msgstr ""
#: Menus.cpp:342
-msgid "Split Ne&w\tCtrl+Alt+I"
+msgid "Split Ne&w"
msgstr ""
#: Menus.cpp:442
-msgid "&Join\tCtrl+J"
+msgid "&Join"
msgstr ""
#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
+msgid "Detac&h at Silences"
msgstr ""
#: Menus.cpp:445
-msgid "Duplic&ate\tCtrl+D"
+msgid "Duplic&ate"
msgstr ""
#: Menus.cpp:400 Menus.cpp:639
@@ -1574,47 +1605,32 @@ msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:460
-msgid "&Cut\tAlt+X"
+msgid "&Cut"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:465
-msgid "&Split Cut\tShift+Alt+X"
+msgid "&Split Cut"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:470
-msgid "Co&py\tShift+Alt+C"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:476
-msgid "&Delete\tAlt+K"
+msgid "Co&py"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:481
-msgid "Sp&lit Delete\tShift+Alt+K"
+msgid "Sp&lit Delete"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:486
-msgid "Sile&nce\tAlt+L"
+msgid "Sile&nce"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:492
-msgid "Spli&t\tAlt+I"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:497
-msgid "&Join\tAlt+J"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
+msgid "Spli&t"
msgstr ""
#: Menus.cpp:456
@@ -1622,31 +1638,31 @@ msgid "&Select"
msgstr ""
#: ../src/Menus.cpp:260
-msgid "&All\tCtrl+A"
+msgid "&All"
msgstr ""
#: Menus.cpp:415
-msgid "&None\tCtrl+Shift+A"
+msgid "&None"
msgstr ""
#: Menus.cpp:462
-msgid "&Left at Playback Position\t["
+msgid "&Left at Playback Position"
msgstr ""
#: Menus.cpp:463
-msgid "&Right at Playback Position\t]"
+msgid "&Right at Playback Position"
msgstr ""
#: Menus.cpp:467
-msgid "Track &Start to Cursor\tShift+J"
+msgid "Track &Start to Cursor"
msgstr ""
#: Menus.cpp:468
-msgid "Cursor to Track &End\tShift+K"
+msgid "Cursor to Track &End"
msgstr ""
#: Menus.cpp:525
-msgid "Find &Zero Crossings\tZ"
+msgid "Find &Zero Crossings"
msgstr ""
#: Menus.cpp:476
@@ -1664,11 +1680,11 @@ msgid "to Selection En&d"
msgstr "নিরà§à¦¬à¦¾à¦à¦¨à§à¦° শà§à¦·à§"
#: Menus.cpp:483
-msgid "to Track &Start\tJ"
+msgid "to Track &Start"
msgstr ""
#: Menus.cpp:484
-msgid "to Track &End\tK"
+msgid "to Track &End"
msgstr ""
#: Menus.cpp:491
@@ -1691,29 +1707,8 @@ msgstr ""
msgid "&Unlock"
msgstr ""
-#: ../src/Menus.cpp:302
-msgid "Turn Snap-To On"
-msgstr ""
-
-#: ../src/Menus.cpp:303
-msgid "Turn Snap-To Off"
-msgstr ""
-
-#: ../src/Menus.cpp:304
-msgid "Turn Grid Snap On"
-msgstr ""
-
-#: ../src/Menus.cpp:305
-msgid "Turn Grid Snap Off"
-msgstr ""
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr ""
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
+msgid "Pre&ferences..."
msgstr ""
#: ../src/Menus.cpp:313
@@ -1721,35 +1716,35 @@ msgid "&View"
msgstr ""
#: ../src/Menus.cpp:315
-msgid "Zoom &In\tCtrl+1"
+msgid "Zoom &In"
msgstr ""
#: ../src/Menus.cpp:318
-msgid "Zoom &Normal\tCtrl+2"
+msgid "Zoom &Normal"
msgstr ""
#: ../src/Menus.cpp:319
-msgid "Zoom &Out\tCtrl+3"
+msgid "Zoom &Out"
msgstr ""
#: ../src/Menus.cpp:322
-msgid "&Fit in Window\tCtrl+F"
+msgid "&Fit in Window"
msgstr ""
#: ../src/Menus.cpp:323
-msgid "Fit &Vertically\tCtrl+Shift+F"
+msgid "Fit &Vertically"
msgstr ""
#: ../src/Menus.cpp:324
-msgid "&Zoom to Selection\tCtrl+E"
+msgid "&Zoom to Selection"
msgstr ""
#: Menus.cpp:603
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
+msgid "&Collapse All Tracks"
msgstr ""
#: Menus.cpp:604
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
+msgid "E&xpand All Tracks"
msgstr ""
#: Menus.cpp:551
@@ -1811,39 +1806,39 @@ msgid "T&ransport"
msgstr ""
#: Menus.cpp:591
-msgid "Play\tSpace"
+msgid "Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
+msgid "&Loop Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Pause\tP"
+msgid "&Pause"
msgstr ""
#: Menus.cpp:596
-msgid "&Stop\tSpace"
+msgid "&Stop"
msgstr ""
#: ../src/Menus.cpp:533
-msgid "Skip to Start\tHome"
+msgid "Skip to Start"
msgstr ""
#: ../src/Menus.cpp:534
-msgid "Skip to End\tEnd"
+msgid "Skip to End"
msgstr ""
#: Menus.cpp:600
-msgid "&Record\tR"
+msgid "&Record"
msgstr ""
#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
+msgid "&Timer Record..."
msgstr ""
#: Menus.cpp:604
-msgid "Append Record\tShift+R"
+msgid "Append Record"
msgstr ""
#: Menus.cpp:607
@@ -1871,7 +1866,7 @@ msgid "Add &New"
msgstr ""
#: Menus.cpp:643
-msgid "&Audio Track\tCtrl+Shift+N"
+msgid "&Audio Track"
msgstr ""
#: Menus.cpp:644
@@ -1887,7 +1882,7 @@ msgid "Mi&x and Render"
msgstr ""
#: Menus.cpp:564
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
+msgid "Mix and Render to New Track"
msgstr ""
#: Menus.cpp:662
@@ -1899,11 +1894,11 @@ msgid "Remo&ve Tracks"
msgstr ""
#: Menus.cpp:667
-msgid "&Mute All Tracks\tCtrl+U"
+msgid "&Mute All Tracks"
msgstr ""
#: Menus.cpp:668
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
+msgid "&UnMute All Tracks"
msgstr ""
#: ../src/Menus.cpp:377
@@ -1950,16 +1945,16 @@ msgstr ""
msgid "Synchronize MIDI with Audio"
msgstr ""
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
+#: Menus.cpp:686
+msgid "&Link Audio and Label Tracks"
msgstr ""
-#: Menus.cpp:705
-msgid "Add &Label At Selection\tCtrl+B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
msgstr ""
#: Menus.cpp:706
-msgid "Add Label At &Playback Position\tCtrl+M"
+msgid "Add Label At &Playback Position"
msgstr ""
#: Menus.cpp:716
@@ -1986,21 +1981,20 @@ msgstr ""
msgid "Effe&ct"
msgstr ""
-#: ../src/Menus.cpp:440
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr ""
-
#: ../src/Menus.cpp:466
msgid "&Analyze"
msgstr "&à¦à¦¨à¦¾à¦²à¦¾à¦à¦"
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
+
#: Menus.cpp:692
msgid "Plot Spectrum..."
msgstr ""
#. i18n-hint: The name of the Help menu
-#: ../src/Menus.cpp:489
-#: ../src/Menus.cpp:504
+#: ../src/Menus.cpp:489 ../src/Menus.cpp:504
msgid "&Help"
msgstr ""
@@ -2012,8 +2006,8 @@ msgstr ""
msgid "&Show Welcome Message..."
msgstr ""
-#: Menus.cpp:736
-msgid "&Index..."
+#: Menus.cpp:958
+msgid "&Help..."
msgstr ""
#: Menus.cpp:959
@@ -2032,180 +2026,148 @@ msgstr ""
msgid "&Audio Device Info..."
msgstr ""
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
msgstr ""
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
msgstr ""
#: ../src/Menus.cpp:513
-msgid "Selection Tool\tF1"
+msgid "Selection Tool"
msgstr ""
#: ../src/Menus.cpp:514
-msgid "Envelope Tool\tF2"
-msgstr "à¦à¦¾à¦® à¦à¦¨à§à¦·à¦à§à¦à¦¿à¦ সরà¦à§à¦à¦¾à¦®\tF2"
+msgid "Envelope Tool"
+msgstr "à¦à¦¾à¦® à¦à¦¨à§à¦·à¦à§à¦à¦¿à¦ সরà¦à§à¦à¦¾à¦®"
#: ../src/Menus.cpp:515
-msgid "Draw Tool\tF3"
+msgid "Draw Tool"
msgstr ""
#: ../src/Menus.cpp:516
-msgid "Zoom Tool\tF4"
+msgid "Zoom Tool"
msgstr ""
#: ../src/Menus.cpp:517
-msgid "Time Shift Tool\tF5"
+msgid "Time Shift Tool"
msgstr ""
#: ../src/Menus.cpp:518
-msgid "Multi Tool\tF6"
+msgid "Multi Tool"
msgstr ""
#: ../src/Menus.cpp:520
-msgid "Next Tool\tD"
+msgid "Next Tool"
msgstr ""
#: ../src/Menus.cpp:521
-msgid "Previous Tool\tA"
+msgid "Previous Tool"
msgstr ""
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
-msgstr ""
-
-#: ../src/Menus.cpp:524
-msgid "Stop\tS"
-msgstr ""
-
-#: ../src/Menus.cpp:525
-msgid "Pause\tP"
-msgstr ""
-
-#: ../src/Menus.cpp:526
-msgid "Record\tR"
-msgstr ""
-
-#: Menus.cpp:999
-msgid "Record Append\tShift+R"
+msgid "Play/Stop"
msgstr ""
#: Menus.cpp:1001
-msgid "Play/Stop and Set Cursor\tShift+A"
+msgid "Play/Stop and Set Cursor"
msgstr ""
#: ../src/Menus.cpp:528
-msgid "Play One Second\t1"
+msgid "Play One Second"
msgstr ""
#: ../src/Menus.cpp:529
-msgid "Play To Selection\tB"
-msgstr ""
-
-#: ../src/Menus.cpp:530
-msgid "Play Looped\tL"
-msgstr ""
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
+msgid "Play To Selection"
msgstr ""
#: Menus.cpp:873
-msgid "Play Cut Preview\tC"
+msgid "Play Cut Preview"
msgstr ""
#: ../src/Menus.cpp:536
-msgid "Selection to Start\tShift+Home"
+msgid "Selection to Start"
msgstr ""
#: ../src/Menus.cpp:537
-msgid "Selection to End\tShift+End"
+msgid "Selection to End"
msgstr ""
#: ../src/Menus.cpp:539
-msgid "DeleteKey\tBackspace"
+msgid "DeleteKey"
msgstr ""
#: ../src/Menus.cpp:544
-msgid "DeleteKey2\tDelete"
+msgid "DeleteKey2"
msgstr ""
-#: Menus.cpp:892
-msgid "Seek left short period during playback\tLeft"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
msgstr ""
-#: Menus.cpp:893
-msgid "Seek right short period during playback\tRight"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
msgstr ""
-#: Menus.cpp:894
-msgid "Seek left long period during playback\tShift+Left"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
msgstr ""
-#: Menus.cpp:895
-msgid "Seek right long period during playback\tShift+Right"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
msgstr ""
#: Menus.cpp:899
-msgid "Move Focus to Previous Track\tUp"
+msgid "Move Focus to Previous Track"
msgstr ""
-#: Menus.cpp:900
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
msgstr ""
#: Menus.cpp:901
-msgid "Move Focus to Next Track\tDown"
+msgid "Move Focus to Next Track"
msgstr ""
-#: Menus.cpp:902
-msgid "Move Focus to Next and Change Selection\tShift+Down"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
msgstr ""
#: Menus.cpp:903
-msgid "Toggle Focused Track\tReturn"
-msgstr ""
-
-#: Menus.cpp:904
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr ""
-
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
+msgid "Toggle Focused Track"
msgstr ""
#: ../src/Menus.cpp:549
-msgid "Cursor Left\tLeft"
+msgid "Cursor Left"
msgstr ""
#: ../src/Menus.cpp:550
-msgid "Cursor Right\tRight"
+msgid "Cursor Right"
msgstr ""
#: Menus.cpp:820
-msgid "Cursor Short Jump Left\t,"
+msgid "Cursor Short Jump Left"
msgstr ""
#: Menus.cpp:821
-msgid "Cursor Short Jump Right\t."
+msgid "Cursor Short Jump Right"
msgstr ""
#: Menus.cpp:822
-msgid "Cursor Long Jump Left\tShift+,"
+msgid "Cursor Long Jump Left"
msgstr ""
#: Menus.cpp:823
-msgid "Cursor Long Jump Right\tShift+."
+msgid "Cursor Long Jump Right"
msgstr ""
#: ../src/Menus.cpp:551
-msgid "Selection Extend Left\tShift+Left"
+msgid "Selection Extend Left"
msgstr ""
#: ../src/Menus.cpp:552
-msgid "Selection Extend Right\tShift+Right"
+msgid "Selection Extend Right"
msgstr ""
#: Menus.cpp:828
@@ -2217,51 +2179,51 @@ msgid "Set (or Extend) Right Selection"
msgstr ""
#: ../src/Menus.cpp:553
-msgid "Selection Contract Left\tCtrl+Shift+Right"
+msgid "Selection Contract Left"
msgstr ""
#: ../src/Menus.cpp:554
-msgid "Selection Contract Right\tCtrl+Shift+Left"
+msgid "Selection Contract Right"
msgstr ""
#: Menus.cpp:916
-msgid "Change pan on focused track\tShift+P"
+msgid "Change pan on focused track"
msgstr ""
#: Menus.cpp:917
-msgid "Pan left on focused track\tAlt+Shift+Left"
+msgid "Pan left on focused track"
msgstr ""
#: Menus.cpp:918
-msgid "Pan right on focused track\tAlt+Shift+Right"
+msgid "Pan right on focused track"
msgstr ""
#: Menus.cpp:919
-msgid "Change gain on focused track\tShift+G"
+msgid "Change gain on focused track"
msgstr ""
#: Menus.cpp:920
-msgid "Increase gain on focused track\tAlt+Shift+Up"
+msgid "Increase gain on focused track"
msgstr ""
#: Menus.cpp:921
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
+msgid "Decrease gain on focused track"
msgstr ""
#: Menus.cpp:922
-msgid "Open menu on focused track\tShift+M"
+msgid "Open menu on focused track"
msgstr ""
#: Menus.cpp:923
-msgid "Mute/Unmute focused track\tShift+U"
+msgid "Mute/Unmute focused track"
msgstr ""
#: Menus.cpp:924
-msgid "Solo/Unsolo focused track\tShift+S"
+msgid "Solo/Unsolo focused track"
msgstr ""
#: Menus.cpp:925
-msgid "Close focused track\tShift+C"
+msgid "Close focused track"
msgstr ""
#: Menus.cpp:845
@@ -2273,7 +2235,35 @@ msgid "Snap To Off"
msgstr ""
#: Menus.cpp:1071
-msgid "Full screen on/off\tF11"
+msgid "Full screen on/off"
+msgstr ""
+
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr ""
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr ""
+
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr ""
+
+#: Menus.cpp:1074
+msgid "Adjust input source"
msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
@@ -2334,7 +2324,7 @@ msgstr ""
#: ../src/Menus.cpp:1212
#, c-format
-msgid "Repeat %s\tCtrl+R"
+msgid "Repeat %s"
msgstr ""
#: ../src/Menus.cpp:1316
@@ -2366,8 +2356,7 @@ msgstr ""
msgid "Nothing to redo"
msgstr ""
-#: ../src/EditToolBar.cpp:148
-#: ../src/Menus.cpp:1677
+#: ../src/EditToolBar.cpp:148 ../src/Menus.cpp:1677
msgid "Cut"
msgstr "à¦à¦¾à¦à§"
@@ -2383,9 +2372,7 @@ msgstr ""
msgid "Split-cut to the clipboard"
msgstr ""
-#: ../src/EditToolBar.cpp:152
-#: ../src/Menus.cpp:1782
-#: ../src/Menus.cpp:1826
+#: ../src/EditToolBar.cpp:152 ../src/Menus.cpp:1782 ../src/Menus.cpp:1826
msgid "Paste"
msgstr "সাà¦à¦à§"
@@ -2393,8 +2380,7 @@ msgstr "সাà¦à¦à§"
msgid "Pasted text from the clipboard"
msgstr ""
-#: ../src/Menus.cpp:1782
-#: ../src/Menus.cpp:1826
+#: ../src/Menus.cpp:1782 ../src/Menus.cpp:1826
msgid "Pasted from the clipboard"
msgstr ""
@@ -2446,8 +2432,7 @@ msgstr ""
msgid "Silenced selected tracks for %.2f seconds at %.2f"
msgstr ""
-#: ../src/Menus.cpp:1892
-#: ../src/effects/Silence.h:27
+#: ../src/Menus.cpp:1892 ../src/effects/Silence.h:27
msgid "Silence"
msgstr ""
@@ -2531,8 +2516,7 @@ msgstr ""
msgid "Disjoined labeled regions"
msgstr ""
-#: ../src/Menus.cpp:1973
-#: ../src/TrackPanel.cpp:4134
+#: ../src/Menus.cpp:1973 ../src/TrackPanel.cpp:4134
msgid "Split"
msgstr ""
@@ -2548,15 +2532,6 @@ msgstr ""
msgid "Split at labels"
msgstr ""
-#: ../src/Menus.cpp:2333
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr ""
-
-#: ../src/Menus.cpp:2359
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr ""
-
#: ../src/Menus.cpp:2624
#, c-format
msgid "Imported labels from '%s'"
@@ -2674,9 +2649,7 @@ msgstr ""
msgid "Created new audio track"
msgstr ""
-#: ../src/Menus.cpp:2941
-#: ../src/Menus.cpp:2965
-#: ../src/Menus.cpp:2980
+#: ../src/Menus.cpp:2941 ../src/Menus.cpp:2965 ../src/Menus.cpp:2980
#: ../src/Menus.cpp:3016
msgid "New Track"
msgstr ""
@@ -2758,8 +2731,7 @@ msgstr ""
msgid "Resampled audio track(s)"
msgstr ""
-#: ../src/Mix.cpp:74
-#: ../src/Mix.cpp:82
+#: ../src/Mix.cpp:74 ../src/Mix.cpp:82
msgid "Mix"
msgstr "মিà¦à§à¦¸"
@@ -2779,6 +2751,10 @@ msgstr ""
msgid "Print"
msgstr "মà§à¦¦à§à¦°à¦£"
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr ""
+
#: Project.cpp:573
msgid "Main Mix"
msgstr ""
@@ -2792,14 +2768,12 @@ msgstr ""
msgid "(Recovered)"
msgstr ""
-#: ../src/ControlToolBar.cpp:469
-#: ../src/Project.cpp:1703
+#: ../src/ControlToolBar.cpp:469 ../src/Project.cpp:1703
#: ../src/TrackPanel.cpp:1208
msgid "Record"
msgstr "রà§à¦à¦°à§à¦¡"
-#: ../src/Project.cpp:1703
-#: ../src/TrackPanel.cpp:1208
+#: ../src/Project.cpp:1703 ../src/TrackPanel.cpp:1208
msgid "Recorded Audio"
msgstr ""
@@ -2820,12 +2794,11 @@ msgstr ""
msgid "Save changes?"
msgstr ""
-#: Project.cpp:1684
-msgid "All files|*.*|All supported files|"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
msgstr ""
-#: ../src/Menus.cpp:2559
-#: ../src/Project.cpp:1734
+#: ../src/Menus.cpp:2559 ../src/Project.cpp:1734
msgid "Select one or more audio files..."
msgstr ""
@@ -2852,8 +2825,18 @@ msgstr ""
msgid "Opening old project file"
msgstr ""
-#: ../src/Project.cpp:1815
-#: ../src/Project.cpp:1823
+#: Project.cpp:2073
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr ""
+
+#: ../src/Project.cpp:1815 ../src/Project.cpp:1823
msgid "Error opening file"
msgstr ""
@@ -2907,10 +2890,12 @@ msgstr ""
msgid "Can't open project file"
msgstr ""
-#: Project.cpp:2314
+#: Project.cpp:2484
#, c-format
msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
msgstr ""
@@ -2930,17 +2915,22 @@ msgstr ""
msgid "Warning empty project"
msgstr ""
-#: Project.cpp:2591
+#: Project.cpp:2792
#, c-format
msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+"is not writable or the disk is full."
msgstr ""
-#: ../src/Project.cpp:2109
-#: ../src/Project.cpp:2121
+#: ../src/Project.cpp:2109 ../src/Project.cpp:2121
msgid "Error saving project"
msgstr ""
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
#: ../src/Project.cpp:2161
#, c-format
msgid "Saved %s"
@@ -2951,10 +2941,8 @@ msgstr "সà¦à¦°à¦à§à¦·à¦¿à¦¤ %s"
msgid "Imported '%s'"
msgstr ""
-#: ../src/Project.cpp:2197
-#: ../src/Project.cpp:2244
-#: ../src/import/ImportRaw.cpp:408
-#: ../src/import/ImportPCM.cpp:403
+#: ../src/Project.cpp:2197 ../src/Project.cpp:2244
+#: ../src/import/ImportRaw.cpp:408 ../src/import/ImportPCM.cpp:403
#: ../src/import/ImportPCM.cpp:488
msgid "Import"
msgstr "à¦à¦®à¦¦à¦¾à¦¨à§"
@@ -3082,8 +3070,7 @@ msgstr ""
msgid "Libsamplerate error: %d\n"
msgstr ""
-#: ../src/Resample.cpp:233
-#: ../src/Resample.cpp:243
+#: ../src/Resample.cpp:233 ../src/Resample.cpp:243
msgid "Resampling disabled."
msgstr ""
@@ -3102,6 +3089,163 @@ msgstr ""
msgid "32-bit float"
msgstr ""
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
+
+#: ../src/export/ExportMultiple.cpp:595 ../src/prefs/DirectoriesPrefs.cpp:82
+msgid "Choose..."
+msgstr "বà§à¦à§ নিন"
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
+
+#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
+msgid "false"
+msgstr ""
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:82
+msgid "Control"
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:58
+msgid "Mixer"
+msgstr ""
+
+#: toolbars/MeterToolBar.cpp:49
+msgid "Meter"
+msgstr ""
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
+#: toolbars/DeviceToolBar.cpp:54
+msgid "Device"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:81
+msgid "Transcription"
+msgstr ""
+
+#: TrackPanel.cpp:452 TrackPanel.cpp:453
+msgid "Track Panel"
+msgstr ""
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: ../src/export/ExportMultiple.cpp:631
+msgid "Tracks"
+msgstr ""
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
#: Screenshot.cpp:384
msgid "Saved "
msgstr ""
@@ -3110,6 +3254,10 @@ msgstr ""
msgid "Error trying to save file: "
msgstr ""
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
#: Sequence.cpp:732 Sequence.cpp:742 Sequence.cpp:749
msgid "Gap detected in project file\n"
msgstr ""
@@ -3247,6 +3395,10 @@ msgstr ""
msgid "Save Metadata As:"
msgstr ""
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
#: Theme.cpp:629
#, c-format
msgid "Audacity could not write file:\n"
@@ -3319,6 +3471,14 @@ msgstr ""
msgid "Audacity Timer Record"
msgstr ""
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
#: SmartRecordDialog.cpp:223
msgid "Recording start"
msgstr ""
@@ -3358,35 +3518,23 @@ msgstr ""
msgid "Audacity Timer Record - Waiting for Start"
msgstr ""
-#: TrackPanel.cpp:452 TrackPanel.cpp:453
-msgid "Track Panel"
-msgstr ""
-
-#: ../src/AStatus.cpp:81
-#: ../src/prefs/FileFormatPrefs.cpp:105
-#: ../src/prefs/QualityPrefs.cpp:91
-#: ../src/TrackPanel.cpp:822
+#: ../src/AStatus.cpp:81 ../src/prefs/FileFormatPrefs.cpp:105
+#: ../src/prefs/QualityPrefs.cpp:91 ../src/TrackPanel.cpp:822
msgid "Other..."
msgstr "à¦
নà§à¦¯à¦¾à¦¨à§à¦¯..."
-#: ../src/TrackPanel.cpp:830
-#: ../src/TrackPanel.cpp:851
-#: ../src/TrackPanel.cpp:860
-#: ../src/TrackPanel.cpp:868
+#: ../src/TrackPanel.cpp:830 ../src/TrackPanel.cpp:851
+#: ../src/TrackPanel.cpp:860 ../src/TrackPanel.cpp:868
msgid "Name..."
msgstr "নাম..."
-#: ../src/TrackPanel.cpp:832
-#: ../src/TrackPanel.cpp:853
-#: ../src/TrackPanel.cpp:864
-#: ../src/TrackPanel.cpp:870
+#: ../src/TrackPanel.cpp:832 ../src/TrackPanel.cpp:853
+#: ../src/TrackPanel.cpp:864 ../src/TrackPanel.cpp:870
msgid "Move Track Up"
msgstr ""
-#: ../src/TrackPanel.cpp:833
-#: ../src/TrackPanel.cpp:854
-#: ../src/TrackPanel.cpp:865
-#: ../src/TrackPanel.cpp:871
+#: ../src/TrackPanel.cpp:833 ../src/TrackPanel.cpp:854
+#: ../src/TrackPanel.cpp:865 ../src/TrackPanel.cpp:871
msgid "Move Track Down"
msgstr ""
@@ -3426,13 +3574,15 @@ msgstr ""
msgid "Split Stereo Track"
msgstr ""
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr ""
+
#: ../src/TrackPanel.cpp:846
msgid "Set Sample Format"
msgstr ""
-#: ../src/AStatus.cpp:352
-#: ../src/TrackPanel.cpp:848
-#: ../src/TrackPanel.cpp:4322
+#: ../src/AStatus.cpp:352 ../src/TrackPanel.cpp:848 ../src/TrackPanel.cpp:4322
msgid "Set Rate"
msgstr ""
@@ -3508,8 +3658,7 @@ msgstr ""
msgid "Adjusted envelope."
msgstr ""
-#: ../src/prefs/MousePrefs.cpp:98
-#: ../src/TrackPanel.cpp:1905
+#: ../src/prefs/MousePrefs.cpp:98 ../src/TrackPanel.cpp:1905
msgid "Envelope"
msgstr "à¦à¦¾à¦®"
@@ -3570,24 +3719,20 @@ msgstr ""
# I guess in should be à¦à§à¦à¦¨ - mak
#. i18n-hint: Title of the Gain slider, used to adjust the volume
-#: ../src/TrackPanel.cpp:2807
-#: ../src/TrackPanel.cpp:4726
+#: ../src/TrackPanel.cpp:2807 ../src/TrackPanel.cpp:4726
msgid "Gain"
msgstr "লাà¦"
#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: ../src/TrackPanel.cpp:2807
-#: ../src/TrackPanel.cpp:4733
+#: ../src/TrackPanel.cpp:2807 ../src/TrackPanel.cpp:4733
msgid "Pan"
msgstr "পà§à¦¯à¦¾à¦¨"
-#: ../src/effects/ChangePitch.cpp:279
-#: ../src/TrackPanel.cpp:4387
+#: ../src/effects/ChangePitch.cpp:279 ../src/TrackPanel.cpp:4387
msgid "up"
msgstr "à¦à¦ªà¦°à§"
-#: ../src/effects/ChangePitch.cpp:279
-#: ../src/TrackPanel.cpp:4388
+#: ../src/effects/ChangePitch.cpp:279 ../src/TrackPanel.cpp:4388
msgid "down"
msgstr ""
@@ -3628,14 +3773,6 @@ msgstr ""
msgid "Adjusted gain"
msgstr ""
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr ""
-
#: TrackPanel.cpp:5428
msgid "Can't delete track with active audio"
msgstr ""
@@ -3656,8 +3793,7 @@ msgstr "বাম,"
msgid "Right, "
msgstr "ডান,"
-#: ../src/TrackPanel.cpp:4116
-#: ../src/TrackPanel.cpp:4225
+#: ../src/TrackPanel.cpp:4116 ../src/TrackPanel.cpp:4225
#, c-format
msgid "Changed '%s' to %s"
msgstr ""
@@ -3671,6 +3807,11 @@ msgstr "à¦à§à¦¯à¦¾à¦¨à§à¦²"
msgid "Split stereo track '%s'"
msgstr ""
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
#: ../src/TrackPanel.cpp:4153
#, c-format
msgid "Made '%s' a stereo track"
@@ -3697,8 +3838,7 @@ msgstr ""
msgid "Change lower speed limit (%) to:"
msgstr ""
-#: ../src/TrackPanel.cpp:4352
-#: ../src/TrackPanel.cpp:4353
+#: ../src/TrackPanel.cpp:4352 ../src/TrackPanel.cpp:4353
msgid "Lower speed limit"
msgstr ""
@@ -3706,8 +3846,7 @@ msgstr ""
msgid "Change upper speed limit (%) to:"
msgstr ""
-#: ../src/TrackPanel.cpp:4359
-#: ../src/TrackPanel.cpp:4360
+#: ../src/TrackPanel.cpp:4359 ../src/TrackPanel.cpp:4360
msgid "Upper speed limit"
msgstr ""
@@ -3749,6 +3888,10 @@ msgstr ""
msgid "Face size"
msgstr ""
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr ""
+
#: ../src/TrackPanel.cpp:4701
msgid "Mute"
msgstr "নিরব"
@@ -3827,8 +3970,9 @@ msgstr ""
msgid "Plugins %i to %i"
msgstr ""
-#: commands/CommandManager.cpp:857
-msgid "Disallowed for some reason. Try selecting some audio first?"
+#: commands/CommandManager.cpp:923
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
msgstr ""
#: commands/CommandManager.cpp:724
@@ -3974,31 +4118,20 @@ msgstr ""
msgid "Processing Auto Duck..."
msgstr ""
-#: ../src/LangChoice.cpp:94
-#: ../src/Tags.cpp:721
-#: ../src/effects/VST/VSTEffect.cpp:98
-#: ../src/effects/VST/VSTEffect.cpp:455
-#: ../src/effects/Amplify.cpp:187
-#: ../src/effects/AvcCompressor.cpp:716
-#: ../src/effects/BassBoost.cpp:332
-#: ../src/effects/ChangePitch.cpp:395
-#: ../src/effects/ChangeSpeed.cpp:380
-#: ../src/effects/ChangeTempo.cpp:285
-#: ../src/effects/Compressor.cpp:468
-#: ../src/effects/Echo.cpp:242
-#: ../src/effects/Equalization.cpp:734
-#: ../src/effects/Filter.cpp:482
-#: ../src/effects/Normalize.cpp:258
-#: ../src/effects/Phaser.cpp:576
-#: ../src/effects/Repeat.cpp:251
-#: ../src/effects/Wahwah.cpp:563
+#: ../src/LangChoice.cpp:94 ../src/Tags.cpp:721
+#: ../src/effects/VST/VSTEffect.cpp:98 ../src/effects/VST/VSTEffect.cpp:455
+#: ../src/effects/Amplify.cpp:187 ../src/effects/AvcCompressor.cpp:716
+#: ../src/effects/BassBoost.cpp:332 ../src/effects/ChangePitch.cpp:395
+#: ../src/effects/ChangeSpeed.cpp:380 ../src/effects/ChangeTempo.cpp:285
+#: ../src/effects/Compressor.cpp:468 ../src/effects/Echo.cpp:242
+#: ../src/effects/Equalization.cpp:734 ../src/effects/Filter.cpp:482
+#: ../src/effects/Normalize.cpp:258 ../src/effects/Phaser.cpp:576
+#: ../src/effects/Repeat.cpp:251 ../src/effects/Wahwah.cpp:563
#: ../src/effects/ladspa/LadspaEffect.cpp:498
#: ../src/effects/nyquist/Nyquist.cpp:736
#: ../src/effects/nyquist/Nyquist.cpp:883
-#: ../src/effects/nyquist/Nyquist.cpp:949
-#: ../src/prefs/FileFormatPrefs.cpp:471
-#: ../src/prefs/PrefsDialog.cpp:100
-#: ../src/widgets/Warning.cpp:56
+#: ../src/effects/nyquist/Nyquist.cpp:949 ../src/prefs/FileFormatPrefs.cpp:471
+#: ../src/prefs/PrefsDialog.cpp:100 ../src/widgets/Warning.cpp:56
msgid "OK"
msgstr "ঠিঠà¦à¦à§"
@@ -4060,14 +4193,12 @@ msgstr "শবà§à¦¦à§à¦° à¦à§à¦°à¦¾à¦® পরিবরà§à¦¤à¦¨"
msgid "Change Pitch without Changing Tempo"
msgstr ""
-#: ../src/effects/ChangePitch.cpp:249
-#: ../src/effects/ChangeSpeed.cpp:288
+#: ../src/effects/ChangePitch.cpp:249 ../src/effects/ChangeSpeed.cpp:288
#: ../src/effects/ChangeTempo.cpp:165
msgid "by Vaughan Johnson && Dominic Mazzoni"
msgstr ""
-#: ../src/effects/ChangePitch.cpp:254
-#: ../src/effects/ChangeTempo.cpp:170
+#: ../src/effects/ChangePitch.cpp:254 ../src/effects/ChangeTempo.cpp:170
msgid "using SoundTouch, by Olli Parviainen"
msgstr ""
@@ -4116,10 +4247,8 @@ msgstr ""
msgid "From frequency in hertz"
msgstr ""
-#: ../src/effects/ChangePitch.cpp:286
-#: ../src/effects/ChangePitch.cpp:332
-#: ../src/effects/ChangeSpeed.cpp:352
-#: ../src/effects/ChangeTempo.cpp:224
+#: ../src/effects/ChangePitch.cpp:286 ../src/effects/ChangePitch.cpp:332
+#: ../src/effects/ChangeSpeed.cpp:352 ../src/effects/ChangeTempo.cpp:224
#: ../src/effects/ChangeTempo.cpp:255
msgid "to"
msgstr "à¦
à¦à¦¿à¦®à§à¦à§"
@@ -4128,8 +4257,7 @@ msgstr "à¦
à¦à¦¿à¦®à§à¦à§"
msgid "To frequency in seconds"
msgstr ""
-#: ../src/effects/ChangePitch.cpp:355
-#: ../src/effects/ChangeSpeed.cpp:306
+#: ../src/effects/ChangePitch.cpp:355 ../src/effects/ChangeSpeed.cpp:306
#: ../src/effects/ChangeTempo.cpp:183
msgid "Percent Change:"
msgstr ""
@@ -4147,8 +4275,7 @@ msgstr ""
msgid "Changing Pitch"
msgstr "পরিবরà§à¦¤à¦¨à¦¶à§à¦² শবà§à¦¦à§à¦° à¦à§à¦°à¦¾à¦®"
-#: ../src/effects/ChangeSpeed.cpp:40
-#: ../src/effects/ChangeTempo.cpp:43
+#: ../src/effects/ChangeSpeed.cpp:40 ../src/effects/ChangeTempo.cpp:43
#, c-format
msgid "Applied effect: %s %.1f%%"
msgstr ""
@@ -4297,8 +4424,8 @@ msgstr ""
msgid "Decay Time"
msgstr ""
-#: effects/Compressor.cpp:504
-msgid "Normalize to 0dB after compressing"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
msgstr ""
#: effects/Compressor.cpp:563
@@ -4354,6 +4481,10 @@ msgstr "সà¦à¦à§à¦à¦..."
msgid "Applying Dynamic Range Compression..."
msgstr ""
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
msgstr ""
@@ -4373,19 +4504,6 @@ msgid "Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr ""
-
#: effects/Contrast.cpp:231
msgid "Contrast Analyzer"
msgstr ""
@@ -4419,6 +4537,11 @@ msgstr ""
msgid "Foreground end time"
msgstr ""
+#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
+#: effects/Contrast.cpp:289
+msgid "Measured"
+msgstr ""
+
#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
msgid "Use selection"
msgstr ""
@@ -4463,16 +4586,8 @@ msgstr ""
msgid "Help for WCAG2 Audio Contrast Analyzer"
msgstr ""
-#: toolbars/ControlToolBar.cpp:82
-msgid "Control"
-msgstr ""
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
msgstr ""
#: effects/Contrast.cpp:328 effects/Contrast.cpp:336 effects/Contrast.cpp:344
@@ -4583,18 +4698,6 @@ msgstr ""
msgid "Data gathered"
msgstr ""
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr ""
-
#: effects/DtmfGen.cpp:47
msgid "DTMF Tone Generator"
msgstr ""
@@ -4654,8 +4757,7 @@ msgstr ""
msgid "Applied effect: %s delay = %f seconds, decay factor = %f"
msgstr ""
-#: ../src/effects/Echo.cpp:39
-#: ../src/effects/Echo.cpp:177
+#: ../src/effects/Echo.cpp:39 ../src/effects/Echo.cpp:177
msgid "Echo"
msgstr "পà§à¦°à¦¤à¦¿à¦§à§à¦¬à¦¨à¦¿"
@@ -4687,8 +4789,7 @@ msgstr ""
msgid "Previewing"
msgstr ""
-#: ../src/ControlToolBar.cpp:721
-#: ../src/effects/Effect.cpp:330
+#: ../src/ControlToolBar.cpp:721 ../src/effects/Effect.cpp:330
msgid "Error while opening sound device. Please check the output device settings and the project sample rate."
msgstr ""
@@ -4721,6 +4822,10 @@ msgstr ""
msgid "custom"
msgstr ""
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr ""
+
#: effects/Equalization.cpp:971
msgid "Equalization, by Martyn Shaw && Mitch Golden"
msgstr ""
@@ -4922,10 +5027,6 @@ msgstr ""
msgid "Analyser"
msgstr ""
-#: toolbars/MixerToolBar.cpp:58
-msgid "Mixer"
-msgstr ""
-
#: effects/LoadEffects.cpp:116
msgid "Simulator"
msgstr ""
@@ -5161,10 +5262,6 @@ msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr ""
#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
-msgid "false"
-msgstr ""
-
-#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
msgid "true"
msgstr ""
@@ -5222,8 +5319,7 @@ msgstr ""
msgid "Dry Wet"
msgstr ""
-#: ../src/effects/Phaser.cpp:497
-#: ../src/effects/Wahwah.cpp:468
+#: ../src/effects/Phaser.cpp:497 ../src/effects/Wahwah.cpp:468
msgid "LFO Frequency (Hz):"
msgstr ""
@@ -5231,8 +5327,7 @@ msgstr ""
msgid "LFO frequency in hertz"
msgstr ""
-#: ../src/effects/Phaser.cpp:513
-#: ../src/effects/Wahwah.cpp:484
+#: ../src/effects/Phaser.cpp:513 ../src/effects/Wahwah.cpp:484
msgid "LFO Start Phase (deg.):"
msgstr ""
@@ -5291,8 +5386,7 @@ msgstr ""
msgid "Tracks are too long to repeat the selection."
msgstr ""
-#: ../src/effects/Repeat.cpp:58
-#: ../src/effects/Repeat.cpp:62
+#: ../src/effects/Repeat.cpp:58 ../src/effects/Repeat.cpp:62
msgid "Repeat"
msgstr "পà§à¦¨à¦°à¦¾à¦¬à§à¦¤à§à¦¤à¦¿"
@@ -5304,8 +5398,7 @@ msgstr ""
msgid "New selection length: hh:mm:ss"
msgstr ""
-#: ../src/effects/Repeat.cpp:241
-#: ../src/effects/Repeat.cpp:280
+#: ../src/effects/Repeat.cpp:241 ../src/effects/Repeat.cpp:280
msgid "New selection length: "
msgstr ""
@@ -5516,20 +5609,37 @@ msgstr ""
msgid "Truncate Silence"
msgstr ""
-#: effects/TruncSilence.cpp:346
-msgid "Max silence duration:"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr ""
+
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
msgstr ""
#: prefs/AudioIOPrefs.cpp:175 prefs/AudioIOPrefs.cpp:178
msgid "milliseconds"
msgstr ""
+#: effects/TruncSilence.cpp:346
+msgid "Max silence duration:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ""
+
#: effects/TruncSilence.cpp:351
msgid "Threshold for silence:"
msgstr ""
-#: effects/TruncSilence.cpp:375
-msgid " Duration must be at least 1 millisecond"
+#: effects/TruncSilence.cpp:506
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
msgstr ""
#: BatchCommands.cpp:236 effects/TruncSilence.cpp:84 effects/TruncSilence.h:29
@@ -5540,16 +5650,55 @@ msgstr ""
msgid "Truncating Silence..."
msgstr ""
-#: ../src/effects/VST/VSTEffect.cpp:180
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
+#: ../src/effects/ladspa/LadspaEffect.cpp:452
+msgid "Effect Settings"
msgstr ""
-#: ../src/effects/VST/VSTEffect.cpp:196
-msgid "Can't process replacing"
+#: ../src/effects/ladspa/LadspaEffect.cpp:435
+#: ../src/effects/ladspa/LadspaEffect.cpp:443
+#: ../src/prefs/QualityPrefs.cpp:160
+msgid "None"
+msgstr "à¦à§à¦¨à¦à¦¿à¦ নà§"
+
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
msgstr ""
-#: ../src/effects/VST/VSTEffect.cpp:410
-msgid "VST Plug-in parameters:"
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
msgstr ""
#: ../src/effects/Wahwah.cpp:41
@@ -5598,20 +5747,10 @@ msgstr ""
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr ""
-#: ../src/effects/ladspa/LadspaEffect.cpp:435
-#: ../src/effects/ladspa/LadspaEffect.cpp:443
-#: ../src/prefs/QualityPrefs.cpp:160
-msgid "None"
-msgstr "à¦à§à¦¨à¦à¦¿à¦ নà§"
-
#: ../src/effects/ladspa/LadspaEffect.cpp:437
msgid "Author: "
msgstr "লà§à¦à¦:"
-#: ../src/effects/ladspa/LadspaEffect.cpp:452
-msgid "Effect Settings"
-msgstr ""
-
#: effects/ladspa/LadspaEffect.cpp:692
msgid "Length (seconds)"
msgstr ""
@@ -5803,9 +5942,21 @@ msgstr ""
msgid "Command Output"
msgstr ""
-#: export/ExportFFmpeg.cpp:59
+#: export/ExportFFmpeg.cpp:61
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
#: export/ExportFFmpeg.cpp:394
@@ -5873,6 +6024,10 @@ msgstr ""
msgid "AAC Export Setup"
msgstr ""
+#: export/ExportOGG.cpp:86
+msgid "Quality:"
+msgstr ""
+
#: export/ExportFFmpegDialogs.cpp:217
msgid "Specify AMR-NB Options"
msgstr ""
@@ -6006,12 +6161,8 @@ msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n
"Recommended - 192000"
msgstr ""
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr ""
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid "Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
@@ -6030,10 +6181,10 @@ msgstr ""
msgid "Cutoff Bandwidth:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:947
+#: export/ExportFFmpegDialogs.cpp:936
msgid "Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:949
@@ -6222,12 +6373,12 @@ msgstr ""
msgid "AC3 Files (FFmpeg)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:56
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:57
@@ -6338,6 +6489,17 @@ msgstr ""
msgid "FLAC Files"
msgstr ""
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
#: export/ExportFLAC.cpp:93
msgid "Exporting the selected audio as FLAC"
msgstr ""
@@ -6362,8 +6524,7 @@ msgstr ""
msgid "Cannot export MP2 with this sample rate and bit rate"
msgstr ""
-#: ../src/export/ExportMP3.cpp:1345
-#: ../src/export/ExportOGG.cpp:53
+#: ../src/export/ExportMP3.cpp:1345 ../src/export/ExportOGG.cpp:53
msgid "Unable to open target file for writing"
msgstr ""
@@ -6561,8 +6722,7 @@ msgstr ""
msgid "MP3 export library not found"
msgstr ""
-#: ../src/export/ExportMultiple.cpp:367
-#: ../src/export/ExportMultiple.cpp:469
+#: ../src/export/ExportMultiple.cpp:367 ../src/export/ExportMultiple.cpp:469
#: ../src/export/ExportMultiple.cpp:557
msgid "Export Multiple"
msgstr ""
@@ -6590,11 +6750,6 @@ msgstr ""
msgid "Export location:"
msgstr ""
-#: ../src/export/ExportMultiple.cpp:595
-#: ../src/prefs/DirectoriesPrefs.cpp:82
-msgid "Choose..."
-msgstr "বà§à¦à§ নিন"
-
#: export/ExportMultiple.cpp:205
msgid "Create"
msgstr ""
@@ -6619,10 +6774,6 @@ msgstr ""
msgid "First file name"
msgstr ""
-#: ../src/export/ExportMultiple.cpp:631
-msgid "Tracks"
-msgstr ""
-
#: ../src/export/ExportMultiple.cpp:641
msgid "Name files:"
msgstr ""
@@ -6656,25 +6807,44 @@ msgstr ""
msgid "Choose a location to save the exported files"
msgstr ""
-#: export/ExportMultiple.cpp:480
+#: export/ExportMultiple.cpp:524
#, c-format
-msgid "\"%s\" doesn't exist.\n"
-"\n"
-"Would you like to create it?"
+msgid "Successfully exported the following %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:637 export/ExportMultiple.cpp:772
-msgid "Edit metadata"
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:590
+#: export/ExportMultiple.cpp:526
#, c-format
-msgid "Successfully exported %d file(s)."
+msgid "Export canceled after exporting the following %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:597
+#: export/ExportMultiple.cpp:527
#, c-format
-msgid "Something went wrong after exporting %d file(s)."
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr ""
+
+#: export/ExportMultiple.cpp:480
+#, c-format
+msgid "\"%s\" doesn't exist.\n"
+"\n"
+"Would you like to create it?"
+msgstr ""
+
+#: export/ExportMultiple.cpp:637 export/ExportMultiple.cpp:772
+msgid "Edit metadata"
msgstr ""
#: export/ExportMultiple.cpp:881
@@ -6921,8 +7091,11 @@ msgstr ""
msgid "FLAC files"
msgstr ""
-#: ../src/import/ImportLOF.cpp:151
-#: ../src/import/ImportLOF.cpp:177
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr ""
+
+#: ../src/import/ImportLOF.cpp:151 ../src/import/ImportLOF.cpp:177
msgid "List of Files in basic text format"
msgstr ""
@@ -6932,10 +7105,8 @@ msgid "Invalid window offset in LOF file."
msgstr ""
#. i18n-hint: You do not need to translate "LOF"
-#: ../src/import/ImportLOF.cpp:270
-#: ../src/import/ImportLOF.cpp:291
-#: ../src/import/ImportLOF.cpp:364
-#: ../src/import/ImportLOF.cpp:384
+#: ../src/import/ImportLOF.cpp:270 ../src/import/ImportLOF.cpp:291
+#: ../src/import/ImportLOF.cpp:364 ../src/import/ImportLOF.cpp:384
msgid "LOF Error"
msgstr ""
@@ -7081,34 +7252,41 @@ msgstr ""
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr ""
-#: ../src/prefs/PrefsDialog.cpp:84
-msgid "Audio I/O"
+#: prefs/BatchPrefs.cpp:53 prefs/BatchPrefs.cpp:54
+msgid "Batch"
msgstr ""
-#: ../src/prefs/AudioIOPrefs.cpp:212
-msgid "1 (Mono)"
+#: prefs/BatchPrefs.cpp:75 prefs/GUIPrefs.cpp:70
+msgid "Behaviors"
msgstr ""
-#: ../src/prefs/AudioIOPrefs.cpp:213
-msgid "2 (Stereo)"
+#: prefs/BatchPrefs.cpp:80
+msgid "&Don't apply effects in batch mode"
msgstr ""
-#: ../src/prefs/AudioIOPrefs.cpp:80
-msgid "Playback"
-msgstr "পà§à¦²à§à¦¬à§à¦¯à¦¾à¦"
+#: prefs/BatchPrefs.cpp:83
+msgid "Cl&eanSpeech Mode (Customized GUI)"
+msgstr ""
-#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
-#: toolbars/DeviceToolBar.cpp:54
-msgid "Device"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
+msgstr ""
+
+#: ../src/prefs/PrefsDialog.cpp:89
+msgid "Interface"
+msgstr "à¦à¦¨à§à¦à¦¾à¦°à¦«à§à¦¸"
+
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
msgstr ""
#: prefs/AudioIOPrefs.cpp:122
msgid "Using:"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:123
-msgid "Portaudio v"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:80
+msgid "Playback"
+msgstr "পà§à¦²à§à¦¬à§à¦¯à¦¾à¦"
#: ../src/prefs/AudioIOPrefs.cpp:148
msgid "Recording"
@@ -7118,94 +7296,15 @@ msgstr "রà§à¦à¦°à§à¦¡à¦¿à¦ হà¦à§à¦à§"
msgid "Channels"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:145
-msgid "Playthrough"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:194
-msgid "Effects Preview"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:165
-msgid "Length of preview:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:158
-msgid "Cut Preview"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:173
-msgid "Preview before cut region:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:175
-msgid "Preview after cut region:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:168
-msgid "Latency"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:195
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:198
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:197
-msgid "Seek Time when playing"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:187
-msgid "Short period:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:189
-msgid "Long period:"
-msgstr ""
-
-#: prefs/BatchPrefs.cpp:53 prefs/BatchPrefs.cpp:54
-msgid "Batch"
-msgstr ""
-
-#: prefs/BatchPrefs.cpp:75 prefs/GUIPrefs.cpp:70
-msgid "Behaviors"
-msgstr ""
-
-#: prefs/BatchPrefs.cpp:80
-msgid "&Don't apply effects in batch mode"
+#: ../src/prefs/AudioIOPrefs.cpp:212
+msgid "1 (Mono)"
msgstr ""
-#: prefs/BatchPrefs.cpp:83
-msgid "Cl&eanSpeech Mode (Customized GUI)"
+#: ../src/prefs/AudioIOPrefs.cpp:213
+msgid "2 (Stereo)"
msgstr ""
-#: ../src/prefs/PrefsDialog.cpp:88
-#: ../src/prefs/PrefsDialog.cpp:216
+#: ../src/prefs/PrefsDialog.cpp:88 ../src/prefs/PrefsDialog.cpp:216
msgid "Directories"
msgstr "ডিরà§à¦à§à¦à¦°à¦¿"
@@ -7221,34 +7320,31 @@ msgstr "à¦
বসà§à¦¥à¦¾à¦¨:"
msgid "Free Space:"
msgstr "ফাà¦à¦à¦¾ à¦à¦¾à§à¦à¦¾:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr ""
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr ""
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
+#: prefs/DirectoriesPrefs.cpp:110
+msgid "Audio cache"
msgstr ""
#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
+msgid "Play and/or record using RAM (useful for slow drives)"
msgstr ""
-#: prefs/DirectoriesPrefs.cpp:110
-msgid "Audio cache"
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
msgstr ""
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
#: ../src/prefs/DirectoriesPrefs.cpp:135
msgid "Choose a location to place the temporary directory"
msgstr ""
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: ../src/prefs/DirectoriesPrefs.cpp:181
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -7267,220 +7363,141 @@ msgstr ""
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
-msgid "Import / Export"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:84
-msgid "MP3 Export Library"
-msgstr ""
-
-#: ../src/prefs/FileFormatPrefs.cpp:180
-msgid "MP3 Library Version:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:93
-msgid "MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:98
-msgid "LAME MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
-msgid "&Download"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:136
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:137
-msgid "When importing audio files"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:140
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:141
-msgid "&Read uncompressed audio files directly from the original (faster)"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:143
-msgid "&Normalize all tracks in project"
+#: prefs/GUIPrefs.cpp:42
+msgid "In Browser"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:132
-msgid "When saving a project that depends on other audio files"
+#: prefs/GUIPrefs.cpp:43
+msgid "From Internet"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:87
-msgid "Always © all audio into project (safest)"
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:88
-msgid "&Do not copy any audio"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:135
-msgid "&Ask user"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:93
-msgid "When exporting tracks to an audio file"
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:144
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:97
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
msgstr ""
-#: prefs/BatchPrefs.cpp:91
-msgid "S&how Metadata Editor prior to export step"
+#: ../src/prefs/GUIPrefs.cpp:150
+msgid "-36 dB (shallow range for high-amplitude editing)"
msgstr ""
-#: ../src/prefs/PrefsDialog.cpp:89
-msgid "Interface"
-msgstr "à¦à¦¨à§à¦à¦¾à¦°à¦«à§à¦¸"
-
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
+#: ../src/prefs/GUIPrefs.cpp:157
+msgid "-48 dB (PCM range of 8 bit samples)"
msgstr ""
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
+#: prefs/GUIPrefs.cpp:143
+msgid "-60 dB (PCM range of 10 bit samples)"
msgstr ""
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
+#: ../src/prefs/GUIPrefs.cpp:164
+msgid "-96 dB (PCM range of 16 bit samples)"
msgstr ""
-#: prefs/GUIPrefs.cpp:72
-msgid "&Update display while playing"
+#: ../src/prefs/GUIPrefs.cpp:171
+msgid "-120 dB (approximate limit of human hearing)"
msgstr ""
-#: prefs/GUIPrefs.cpp:96
-msgid "Cl&osing last window quits Audacity"
+#: ../src/prefs/GUIPrefs.cpp:178
+msgid "-145 dB (PCM range of 24 bit samples)"
msgstr ""
-#: prefs/GUIPrefs.cpp:76
-msgid "Enable &dragging of left and right selection edges"
+#: prefs/SpectrumPrefs.cpp:96
+msgid "Display"
msgstr ""
#: prefs/GUIPrefs.cpp:100
msgid "Er&gonomic order of audio I/O buttons"
msgstr ""
-#: prefs/GUIPrefs.cpp:80
-msgid "Automatically &fit tracks vertically zoomed"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
msgstr ""
-#: prefs/GUIPrefs.cpp:104
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
msgstr ""
-#: prefs/GUIPrefs.cpp:90
-msgid "Editing a &clip can move other clips"
+#: prefs/GUIPrefs.cpp:167
+msgid "Help:"
msgstr ""
-#: prefs/GUIPrefs.cpp:88
-msgid "&Select all audio in project, if none selected"
+#: prefs/GUIPrefs.cpp:96
+msgid "Cl&osing last window quits Audacity"
msgstr ""
#: prefs/GUIPrefs.cpp:90
msgid "&Beep on completion of longer activities"
msgstr ""
-#: prefs/BatchPrefs.cpp:87 prefs/GUIPrefs.cpp:94
-msgid "Show / Hide"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:96
-msgid "Enable cut &lines"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:98
-msgid "Show warnings about &temp files"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:122
-msgid "Show &Welcome Message at program start up"
-msgstr ""
-
#: prefs/GUIPrefs.cpp:126
msgid "Modes"
msgstr ""
-#: prefs/GUIPrefs.cpp:129
-msgid "Don't a&pply effects in batch mode"
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
+#: prefs/GUIPrefs.cpp:129
+msgid "Don't a&pply effects in batch mode"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:150
-msgid "-36 dB (shallow range for high-amplitude editing)"
+#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
+msgid "Import / Export"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:157
-msgid "-48 dB (PCM range of 8 bit samples)"
+#: prefs/FileFormatPrefs.cpp:137
+msgid "When importing audio files"
msgstr ""
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
+#: prefs/FileFormatPrefs.cpp:140
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:164
-msgid "-96 dB (PCM range of 16 bit samples)"
+#: prefs/FileFormatPrefs.cpp:141
+msgid "&Read uncompressed audio files directly from the original (faster)"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:171
-msgid "-120 dB (approximate limit of human hearing)"
+#: prefs/FileFormatPrefs.cpp:143
+msgid "&Normalize all tracks in project"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:178
-msgid "-145 dB (PCM range of 24 bit samples)"
+#: prefs/FileFormatPrefs.cpp:93
+msgid "When exporting tracks to an audio file"
msgstr ""
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
+#: prefs/FileFormatPrefs.cpp:144
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
msgstr ""
-#: prefs/GUIPrefs.cpp:164
-msgid "Other interface choices"
+#: prefs/FileFormatPrefs.cpp:97
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
msgstr ""
-#: prefs/GUIPrefs.cpp:167
-msgid "Help:"
+#: prefs/BatchPrefs.cpp:91
+msgid "S&how Metadata Editor prior to export step"
msgstr ""
-#: prefs/GUIPrefs.cpp:168
-msgid "Solo Button:"
+#: prefs/ImportExportPrefs.cpp:84
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
msgstr ""
#: ../src/prefs/PrefsDialog.cpp:90
@@ -7511,16 +7528,21 @@ msgstr ""
msgid "&Defaults"
msgstr ""
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr ""
+
#: ../src/prefs/KeyConfigPrefs.cpp:79
msgid "Key Combination"
msgstr ""
-#: ../src/prefs/KeyConfigPrefs.cpp:159
-msgid "Export Keyboard Shortcuts As:"
+#: ../src/EditToolBar.cpp:159
+msgid "Undo"
msgstr ""
-#: ../src/prefs/KeyConfigPrefs.cpp:174
-msgid "Error saving keyboard shortcuts"
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
msgstr ""
#: ../src/prefs/KeyConfigPrefs.cpp:188
@@ -7531,6 +7553,14 @@ msgstr ""
msgid "Error loading keyboard shortcuts"
msgstr ""
+#: ../src/prefs/KeyConfigPrefs.cpp:159
+msgid "Export Keyboard Shortcuts As:"
+msgstr ""
+
+#: ../src/prefs/KeyConfigPrefs.cpp:174
+msgid "Error saving keyboard shortcuts"
+msgstr ""
+
#: prefs/KeyConfigPrefs.cpp:239
#, c-format
msgid "The keyboard shortcut '%s' is already assigned to:\n"
@@ -7538,8 +7568,60 @@ msgid "The keyboard shortcut '%s' is already assigned to:\n"
"'%s'"
msgstr ""
-#: ../src/EditToolBar.cpp:159
-msgid "Undo"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:84
+msgid "MP3 Export Library"
+msgstr ""
+
+#: ../src/prefs/FileFormatPrefs.cpp:180
+msgid "MP3 Library Version:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:93
+msgid "MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:98
+msgid "LAME MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
+msgid "&Download"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:109
+msgid "FFmpeg Library Version:"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
+msgid "FFmpeg Library:"
+msgstr ""
+
+#: ../src/prefs/PrefsDialog.cpp:84
+msgid "Audio I/O"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:123
+msgid "Portaudio v"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:145
+msgid "Playthrough"
msgstr ""
#: prefs/AudioIOPrefs.cpp:147
@@ -7554,6 +7636,10 @@ msgstr ""
msgid "&Software Playthrough (Play new track while recording it)"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:158
+msgid "Cut Preview"
+msgstr ""
+
#: prefs/MidiIOPrefs.cpp:160
msgid "Play before cut region:"
msgstr ""
@@ -7562,6 +7648,10 @@ msgstr ""
msgid "Play after cut region:"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:168
+msgid "Latency"
+msgstr ""
+
#: prefs/AudioIOPrefs.cpp:174
msgid "Audio to buffer:"
msgstr ""
@@ -7574,6 +7664,18 @@ msgstr ""
msgid "Seek Time"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:187
+msgid "Short period:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:189
+msgid "Long period:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:194
+msgid "Effects Preview"
+msgstr ""
+
#: prefs/MidiIOPrefs.cpp:196
msgid "Play when previewing:"
msgstr ""
@@ -7598,14 +7700,12 @@ msgstr "à¦à¦®à¦¾à¦¨à§à¦¡ à¦à¦à¦¶à¦¨"
msgid "Buttons"
msgstr "বাà¦à¦¨"
-#: ../src/prefs/MousePrefs.cpp:88
-#: ../src/prefs/MousePrefs.cpp:92
+#: ../src/prefs/MousePrefs.cpp:88 ../src/prefs/MousePrefs.cpp:92
#: ../src/prefs/MousePrefs.cpp:100
msgid "Left-Click"
msgstr ""
-#: ../src/prefs/MousePrefs.cpp:88
-#: ../src/prefs/MousePrefs.cpp:89
+#: ../src/prefs/MousePrefs.cpp:88 ../src/prefs/MousePrefs.cpp:89
#: ../src/prefs/MousePrefs.cpp:90
msgid "Select"
msgstr "নিরà§à¦¬à¦¾à¦à¦¨"
@@ -7614,10 +7714,8 @@ msgstr "নিরà§à¦¬à¦¾à¦à¦¨"
msgid "Set Selection Point"
msgstr ""
-#: ../src/prefs/MousePrefs.cpp:89
-#: ../src/prefs/MousePrefs.cpp:93
-#: ../src/prefs/MousePrefs.cpp:97
-#: ../src/prefs/MousePrefs.cpp:98
+#: ../src/prefs/MousePrefs.cpp:89 ../src/prefs/MousePrefs.cpp:93
+#: ../src/prefs/MousePrefs.cpp:97 ../src/prefs/MousePrefs.cpp:98
#: ../src/prefs/MousePrefs.cpp:102
msgid "Left-Drag"
msgstr ""
@@ -7650,10 +7748,8 @@ msgstr ""
msgid "Set Selection Point and Play"
msgstr ""
-#: ../src/prefs/MousePrefs.cpp:92
-#: ../src/prefs/MousePrefs.cpp:93
-#: ../src/prefs/MousePrefs.cpp:94
-#: ../src/prefs/MousePrefs.cpp:95
+#: ../src/prefs/MousePrefs.cpp:92 ../src/prefs/MousePrefs.cpp:93
+#: ../src/prefs/MousePrefs.cpp:94 ../src/prefs/MousePrefs.cpp:95
msgid "Zoom"
msgstr ""
@@ -7729,10 +7825,8 @@ msgstr ""
msgid "Change Sample"
msgstr "নমà§à¦¨à¦¾ পরিবরà§à¦¤à¦¨"
-#: ../src/prefs/MousePrefs.cpp:100
-#: ../src/prefs/MousePrefs.cpp:101
-#: ../src/prefs/MousePrefs.cpp:102
-#: ../src/prefs/MousePrefs.cpp:103
+#: ../src/prefs/MousePrefs.cpp:100 ../src/prefs/MousePrefs.cpp:101
+#: ../src/prefs/MousePrefs.cpp:102 ../src/prefs/MousePrefs.cpp:103
msgid "Pencil"
msgstr "পà§à¦¨à§à¦¸à¦¿à¦²"
@@ -7752,10 +7846,8 @@ msgstr "à¦à¦¨à§à¦à¦à§à¦²à¦¿ নমà§à¦¨à¦¾ পরিবরà§à¦¤à¦¨"
msgid "Change ONE Sample only"
msgstr ""
-#: ../src/prefs/MousePrefs.cpp:105
-#: ../src/prefs/MousePrefs.cpp:106
-#: ../src/prefs/MousePrefs.cpp:107
-#: ../src/prefs/MousePrefs.cpp:108
+#: ../src/prefs/MousePrefs.cpp:105 ../src/prefs/MousePrefs.cpp:106
+#: ../src/prefs/MousePrefs.cpp:107 ../src/prefs/MousePrefs.cpp:108
#, fuzzy
msgid "Multi"
msgstr "বহà§"
@@ -7768,8 +7860,7 @@ msgstr ""
msgid "same as zoom tool"
msgstr ""
-#: ../src/prefs/MousePrefs.cpp:110
-#: ../src/prefs/MousePrefs.cpp:111
+#: ../src/prefs/MousePrefs.cpp:110 ../src/prefs/MousePrefs.cpp:111
msgid "Any"
msgstr "যà§à¦à§à¦¨"
@@ -7797,10 +7888,62 @@ msgstr ""
msgid "Zoom in or out"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:165
+msgid "Length of preview:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:173
+msgid "Preview before cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:175
+msgid "Preview after cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:197
+msgid "Seek Time when playing"
+msgstr ""
+
#: ../src/prefs/PrefsDialog.cpp:52
msgid "Audacity Preferences"
msgstr ""
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:132
+msgid "When saving a project that depends on other audio files"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:87
+msgid "Always © all audio into project (safest)"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:88
+msgid "&Do not copy any audio"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:135
+msgid "&Ask user"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr ""
+
#: ../src/prefs/QualityPrefs.cpp:161
#, fuzzy
msgid "Rectangle"
@@ -7826,44 +7969,44 @@ msgstr ""
msgid "Default Sample Format:"
msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:147
-msgid "High-quality sample rate converter:"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+msgid "Sample Rate Converter:"
msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:171
-msgid "Real-time dither:"
+#: prefs/QualityPrefs.cpp:164
+msgid "Dither"
msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:186
-msgid "High-quality dither:"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
msgstr ""
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
+#: prefs/AudioIOPrefs.cpp:149
+msgid "Overdub: &Play other tracks while recording new one"
msgstr ""
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
+#: prefs/AudioIOPrefs.cpp:150
+msgid "&Hardware Playthrough: Play new track while recording it"
msgstr ""
-#: prefs/QualityPrefs.cpp:164
-msgid "Dither"
+#: prefs/AudioIOPrefs.cpp:157
+msgid "&Software Playthrough: Play new track while recording or monitoring"
msgstr ""
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
+#: prefs/AudioIOPrefs.cpp:160
+msgid "(uncheck when recording \"stereo mix\")"
msgstr ""
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
msgstr ""
-#: prefs/SmartRecordPrefs.cpp:54 prefs/SmartRecordPrefs.cpp:55
-msgid "Smart Recording"
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
msgstr ""
#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
@@ -7878,18 +8021,54 @@ msgstr ""
msgid "Spectrograms"
msgstr ""
-#: ../src/prefs/SpectrumPrefs.cpp:70
-msgid "FFT Size"
-msgstr "à¦à¦«-à¦à¦«-à¦à¦¿ à¦à¦à¦¾à¦°"
-
#: prefs/SpectrumPrefs.cpp:75
msgid "8 - most wideband"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
#: ../src/prefs/SpectrumPrefs.cpp:40
msgid "256 - default"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:107
msgid "32768 - most narrowband"
msgstr ""
@@ -7898,20 +8077,24 @@ msgstr ""
msgid "4096 - most narrowband"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:90
-msgid "Window type:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:125
-msgid "FFT Skip Points"
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:96
-msgid "Display"
+#: prefs/SpectrumPrefs.cpp:93
+msgid "Window type"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:100
-msgid "&Grayscale"
+#: prefs/SpectrumPrefs.cpp:125
+msgid "FFT Skip Points"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
msgstr ""
#: prefs/SpectrumPrefs.cpp:103
@@ -7922,16 +8105,16 @@ msgstr ""
msgid "Maximum Frequency (Hz):"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
msgstr ""
#: prefs/SpectrumPrefs.cpp:165
@@ -7942,6 +8125,14 @@ msgstr ""
msgid "Max. Number of Notes (1..128):"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:161
+msgid "&Find Notes"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Quantize Notes"
+msgstr ""
+
#: ../src/prefs/SpectrumPrefs.cpp:148
msgid "The maximum frequency must be an integer"
msgstr ""
@@ -7958,18 +8149,57 @@ msgstr ""
msgid "Minimum frequency must be at least 0 Hz"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:226 prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
+#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:230
+msgid "The maximum number of notes must be in the range 1..128"
msgstr ""
#: prefs/ThemePrefs.cpp:61 prefs/ThemePrefs.cpp:62
msgid "Theme"
msgstr ""
+#: prefs/ThemePrefs.cpp:123
+msgid "Info"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:91
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#: prefs/ThemePrefs.cpp:90
msgid "Theme Cache - Images && Color"
msgstr ""
@@ -7998,78 +8228,94 @@ msgstr ""
msgid "Load Files"
msgstr ""
-#: prefs/ThemePrefs.cpp:123
-msgid "Info"
+#: prefs/GUIPrefs.cpp:50
+msgid "Simple"
msgstr ""
-#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
+#: prefs/GUIPrefs.cpp:72
+msgid "&Update display while playing"
msgstr ""
-#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
+#: prefs/GUIPrefs.cpp:80
+msgid "Automatically &fit tracks vertically zoomed"
msgstr ""
-#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
+#: prefs/TracksPrefs.cpp:88
+msgid "Default View Mode:"
msgstr ""
-#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:88
+msgid "&Select all audio in project, if none selected"
msgstr ""
-#: ../src/ControlToolBar.cpp:470
-msgid "Pause"
-msgstr "বিরতি"
+#: prefs/GUIPrefs.cpp:96
+msgid "Enable cut &lines"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play"
+#: prefs/GUIPrefs.cpp:76
+msgid "Enable &dragging of left and right selection edges"
msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
+#: prefs/GUIPrefs.cpp:104
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
msgstr ""
-#: ../src/ControlToolBar.cpp:471
-msgid "Stop"
+#: prefs/GUIPrefs.cpp:90
+msgid "Editing a &clip can move other clips"
msgstr ""
-#: ../src/ControlToolBar.cpp:467
-msgid "Skip to Start"
+#: prefs/GUIPrefs.cpp:168
+msgid "Solo Button:"
msgstr ""
-#: ../src/ControlToolBar.cpp:472
-msgid "Skip to End"
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
msgstr ""
-#: toolbars/ControlToolBar.cpp:192
-msgid "Record (Shift for Append Record)"
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr ""
+
+#: ../src/ControlToolBar.cpp:470
+msgid "Pause"
+msgstr "বিরতি"
+
+#: ../src/Menus.cpp:524
+msgid "Stop"
msgstr ""
#: toolbars/ControlToolBar.cpp:195
msgid "Clean Speech"
msgstr ""
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play (Shift for Loop Play)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:192
+msgid "Record (Shift for Append Record)"
+msgstr ""
+
#: toolbars/ControlToolBar.cpp:524 toolbars/ControlToolBar.cpp:776
msgid "Error while opening sound device. "
msgstr ""
@@ -8110,28 +8356,20 @@ msgstr ""
msgid "Zoom Out"
msgstr ""
-#: ../src/EditToolBar.cpp:170
-msgid "Zoom Toggle"
-msgstr ""
-
-#: toolbars/EditToolBar.cpp:160
-msgid "Fit Selection"
-msgstr ""
-
#: ../src/EditToolBar.cpp:174
msgid "Fit selection in window"
msgstr ""
-#: toolbars/EditToolBar.cpp:162
-msgid "Fit Project"
-msgstr ""
-
#: ../src/EditToolBar.cpp:176
msgid "Fit project in window"
msgstr ""
-#: toolbars/MeterToolBar.cpp:49
-msgid "Meter"
+#: toolbars/EditToolBar.cpp:160
+msgid "Fit Selection"
+msgstr ""
+
+#: toolbars/EditToolBar.cpp:162
+msgid "Fit Project"
msgstr ""
#: toolbars/MeterToolBar.cpp:79
@@ -8178,6 +8416,14 @@ msgstr ""
msgid "Input Source"
msgstr ""
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:75
msgid "Selection"
msgstr ""
@@ -8256,30 +8502,6 @@ msgstr ""
msgid "Click and drag to move a track in time"
msgstr ""
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr ""
-
-#: ../src/ControlToolBar.cpp:355
-msgid "Selection Tool"
-msgstr ""
-
-#: ../src/ControlToolBar.cpp:356
-msgid "Envelope Tool"
-msgstr "à¦à¦¾à¦® à¦à¦¨à§à¦·à¦à§à¦à¦¿à¦ সরà¦à§à¦à¦¾à¦®"
-
-#: ../src/ControlToolBar.cpp:357
-msgid "Time Shift Tool"
-msgstr ""
-
-#: ../src/ControlToolBar.cpp:358
-msgid "Zoom Tool"
-msgstr ""
-
-#: ../src/ControlToolBar.cpp:359
-msgid "Draw Tool"
-msgstr ""
-
#: ../src/ControlToolBar.cpp:360
msgid "Multi-Tool Mode"
msgstr ""
@@ -8288,22 +8510,10 @@ msgstr ""
msgid "Slide Tool"
msgstr ""
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr ""
-
-#: toolbars/TranscriptionToolBar.cpp:81
-msgid "Transcription"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:183
msgid "Play at selected speed"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:184
-msgid "Play-at-speed"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:190 toolbars/TranscriptionToolBar.cpp:195
msgid "Playback Speed"
msgstr ""
@@ -8312,74 +8522,38 @@ msgstr ""
msgid "Adjust left selection to next onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:201
-msgid "Left-to-On"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:203
msgid "Adjust right selection to previous offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:204
-msgid "Right-to-Off"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:206
msgid "Adjust left selection to next offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:207
-msgid "Left-to-Off"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:209
msgid "Adjust right selection to previous onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:210
-msgid "Right-to-On"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:212
msgid "Select region of sound around cursor"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:213
-msgid "Select-Sound"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:215
msgid "Select region of silence around cursor"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:216
-msgid "Select-Silence"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:218
msgid "Automatically make labels from words"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:219
-msgid "Make Labels"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:221
msgid "Add label at selection"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:222
-msgid "Add Label"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:224
msgid "Calibrate voicekey"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:225
-msgid "Calibrate"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:229
msgid "Adjust Sensitivity"
msgstr ""
@@ -8412,6 +8586,46 @@ msgstr ""
msgid "Key type"
msgstr ""
+#: toolbars/TranscriptionToolBar.cpp:184
+msgid "Play-at-speed"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:201
+msgid "Left-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:204
+msgid "Right-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:207
+msgid "Left-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:210
+msgid "Right-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:213
+msgid "Select-Sound"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:216
+msgid "Select-Silence"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:219
+msgid "Make Labels"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:222
+msgid "Add Label"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:225
+msgid "Calibrate"
+msgstr ""
+
#: ../src/widgets/AButton.cpp:181
msgid " (disabled)"
msgstr "(নিষà§à¦à§à¦°à¦¿à§)"
@@ -8427,16 +8641,14 @@ msgstr ""
# Professional music editors are more familiar with L for left channel of Audio; so leaving it as L - mak
#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
#. i18n-hint: One-letter abbreviation for Left, in VU Meter
-#: ../src/widgets/ASlider.cpp:329
-#: ../src/widgets/Meter.cpp:165
+#: ../src/widgets/ASlider.cpp:329 ../src/widgets/Meter.cpp:165
msgid "L"
msgstr "L"
# à¦à¦ à¦
à¦à§à¦·à¦°à¦à¦¿ বাà¦à¦²à¦¾ à¦à¦°à¦²à§ সà¦à§à¦à§à¦¤ সমà§à¦ªà¦¾à¦¦à¦à¦¦à§à¦° সমসà§à¦¯à¦¾ হতৠপারà§à¥¤ - mak
#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
#. i18n-hint: One-letter abbreviation for Right, in VU Meter
-#: ../src/widgets/ASlider.cpp:332
-#: ../src/widgets/Meter.cpp:167
+#: ../src/widgets/ASlider.cpp:332 ../src/widgets/Meter.cpp:167
msgid "R"
msgstr "R"
@@ -8719,3 +8931,15 @@ msgstr ""
msgid "Could not load file: \"%s\""
msgstr ""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
+
diff --git a/locale/bs.po b/locale/bs.po
index ff41ca5..79d610a 100644
--- a/locale/bs.po
+++ b/locale/bs.po
@@ -17,18 +17,14 @@ msgstr "Project-Id-Version: audacity\n"
"X-Poedit-SourceCharset: iso-8859-1\n"
"X-Generator: KBabel 1.11.4\n"
-#: AboutDialog.cpp:141
-#: AudacityApp.cpp:732
-#: Menus.cpp:733
+#: AboutDialog.cpp:141 AudacityApp.cpp:732 Menus.cpp:733
msgid "&About Audacity..."
msgstr "&O programu Audacity ..."
#. i18n-hint: Rather than a literal translation, consider adding the
#. appropriate suffix or prefix to create a word meaning 'something which
#. has Audacity'
-#: AboutDialog.cpp:340
-#: AboutDialog.cpp:371
-#: SplashDialog.cpp:111
+#: AboutDialog.cpp:340 AboutDialog.cpp:371 SplashDialog.cpp:111
msgid "OK... Audacious!"
msgstr "Audaciozno!"
@@ -37,11 +33,11 @@ msgid "Audacity is a free program written by a team of volunteer <a href=\"http:
msgstr ""
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#. i18n-hint: The translation of "translator_credits" will appear
@@ -50,8 +46,7 @@ msgstr ""
#.
#. For example: "English translation by Dominic Mazzoni."
#.
-#: AboutDialog.cpp:256
-#: AboutDialog.cpp:258
+#: AboutDialog.cpp:256 AboutDialog.cpp:258
msgid "translator_credits"
msgstr "Bosanski prijevod: \n"
" dr. Samir RibiÄ "
@@ -95,7 +90,7 @@ msgid "Special thanks:"
msgstr "Posebna zahvala:"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
msgstr ""
#: AboutDialog.cpp:320
@@ -107,8 +102,7 @@ msgstr "Audacity"
msgid "Build Information"
msgstr ""
-#: AboutDialog.cpp:165
-#: effects/AvcCompressor.cpp:674
+#: AboutDialog.cpp:165 effects/AvcCompressor.cpp:674
msgid "Enabled"
msgstr "OmoguÄeno"
@@ -206,16 +200,12 @@ msgstr "Direktorijum s postavkama:"
msgid "GPL License"
msgstr "Licenca GPL"
-#: AudacityApp.cpp:458
-#: Project.cpp:1751
+#: AudacityApp.cpp:458 Project.cpp:1751
#, c-format
msgid "%s is already open in another window."
msgstr "Projekt %s je veÄ otvoren u drugom prozoru."
-#: AudacityApp.cpp:460
-#: Project.cpp:1753
-#: Project.cpp:1834
-#: Project.cpp:1978
+#: AudacityApp.cpp:460 Project.cpp:1753 Project.cpp:1834 Project.cpp:1978
#: Project.cpp:2080
msgid "Error opening project"
msgstr "Greška pri otvaranju projekta"
@@ -241,21 +231,28 @@ msgstr "Ulazni mjeraÄ"
msgid "Output Meter"
msgstr "Izlazni mjeraÄ"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
-#: AudacityApp.cpp:734
-#: Menus.cpp:470
-msgid "&Preferences...\tCtrl+,"
-msgstr "&Postavke ...\tCtrl+,"
+#: Menus.cpp:164
+msgid "&New"
+msgstr "&Nova"
+
+#: Menus.cpp:166
+msgid "&Open..."
+msgstr "&Otvori ..."
+
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
-#: AudacityApp.cpp:816
-#: AudacityApp.cpp:893
+#: AudacityApp.cpp:734 Menus.cpp:470
+msgid "&Preferences..."
+msgstr "&Postavke ..."
+
+#: AudacityApp.cpp:816 AudacityApp.cpp:893
#, c-format
msgid "Using block size of %ld\n"
msgstr "KoristeÄi veliÄinu bloka %ld\n"
-#: AudacityApp.cpp:838
-#: AudacityApp.cpp:908
+#: AudacityApp.cpp:838 AudacityApp.cpp:908
#, c-format
msgid "Unknown command line option: %s\n"
msgstr "Nepoznata opcija komandne linije: %s\n"
@@ -372,18 +369,16 @@ msgstr "Greška:"
msgid "Error Initializing Audio"
msgstr "Greška pri inicializaciji zvuka"
+#: AudioIO.cpp:1225
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
+"Audacity has brought it back to start at zero.\n"
+"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
+msgstr ""
+
#: AudioIO.cpp:1236
msgid "Latency problem"
msgstr "Problem s latencijom"
-#: AudioIO.cpp:1236
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
-"Audacity has brought it back to start at zero.\n"
-"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
-msgstr "Postavka latencije je prouzrokovala, da je snimljeni zvuk sakriven pred vrijednoÅ¡Äu nula.\n"
-"Audacity je snimak vratio nazad na vrijednost nula.\n"
-"Možda Äete morati koristiti alat vremenski pomak (<---> ili F5), da povuÄete traku na pravo mjesto."
-
#: AutoRecovery.cpp:54
msgid "Automatic Crash Recovery"
msgstr "Automatska obnova nakon kraha"
@@ -398,8 +393,7 @@ msgstr "Zadnji put, kada je upotrebljavan Audacity, neki projekti nisu bili prav
msgid "Recoverable projects"
msgstr "Obnovljivi projekti"
-#: AutoRecovery.cpp:78
-#: Tags.cpp:1999
+#: AutoRecovery.cpp:78 Tags.cpp:1999
msgid "Name"
msgstr "Ime"
@@ -428,38 +422,25 @@ msgstr ""
msgid "Confirm?"
msgstr ""
-#: AutoRecovery.cpp:146
-#: AutoRecovery.cpp:183
+#: AutoRecovery.cpp:146 AutoRecovery.cpp:183
msgid "Could not enumerate files in auto save directory"
msgstr "Datoteke u direktoriju automatskog snimanja nije moguÄe numerisati"
-#: AutoRecovery.cpp:147
-#: AutoRecovery.cpp:184
-#: Menus.cpp:2545
-#: Menus.cpp:4443
-#: Project.cpp:1937
-#: Project.cpp:3281
-#: Project.cpp:3360
-#: WaveTrack.cpp:548
-#: WaveTrack.cpp:567
-#: WaveTrack.cpp:1656
-#: effects/Effect.cpp:421
-#: export/ExportMP2.cpp:230
-#: prefs/DirectoriesPrefs.cpp:189
-#: prefs/KeyConfigPrefs.cpp:245
-#: toolbars/ControlToolBar.cpp:532
+#: AutoRecovery.cpp:147 AutoRecovery.cpp:184 Menus.cpp:2545 Menus.cpp:4443
+#: Project.cpp:1937 Project.cpp:3281 Project.cpp:3360 WaveTrack.cpp:548
+#: WaveTrack.cpp:567 WaveTrack.cpp:1656 effects/Effect.cpp:421
+#: export/ExportMP2.cpp:230 prefs/DirectoriesPrefs.cpp:189
+#: prefs/KeyConfigPrefs.cpp:245 toolbars/ControlToolBar.cpp:532
#: toolbars/ControlToolBar.cpp:841
msgid "Error"
msgstr "Greška"
-#: BatchCommandDialog.cpp:56
-#: BatchCommandDialog.cpp:60
+#: BatchCommandDialog.cpp:56 BatchCommandDialog.cpp:60
#: BatchCommandDialog.cpp:61
msgid "Select Command"
msgstr "Izaberite naredbu"
-#: BatchCommandDialog.cpp:80
-#: BatchProcessDialog.cpp:454
+#: BatchCommandDialog.cpp:80 BatchProcessDialog.cpp:454
#: prefs/KeyConfigPrefs.cpp:142
msgid "&Command"
msgstr "&Naredba"
@@ -468,8 +449,7 @@ msgstr "&Naredba"
msgid "&Edit Parameters"
msgstr "&Uredi parametre"
-#: BatchCommandDialog.cpp:89
-#: BatchProcessDialog.cpp:455
+#: BatchCommandDialog.cpp:89 BatchProcessDialog.cpp:455
msgid "&Parameters"
msgstr "&Parametri"
@@ -516,8 +496,7 @@ msgstr "Upotrijebi %s s parametr(ima)\n"
"\n"
"%s"
-#: BatchCommands.cpp:675
-#: BatchCommands.cpp:680
+#: BatchCommands.cpp:675 BatchCommands.cpp:680
msgid "Test Mode"
msgstr "Testni režim"
@@ -526,8 +505,7 @@ msgstr "Testni režim"
msgid "Apply %s"
msgstr "Primjeni %s"
-#: BatchProcessDialog.cpp:60
-#: BatchProcessDialog.cpp:70
+#: BatchProcessDialog.cpp:60 BatchProcessDialog.cpp:70
#: BatchProcessDialog.cpp:71
msgid "Apply Chain"
msgstr "LanÄano primjeni"
@@ -552,24 +530,15 @@ msgstr "Primjeni na trenutnem &projektu"
msgid "Apply to &Files..."
msgstr "Primjeni na &datotekama ..."
-#: BatchProcessDialog.cpp:108
-#: BatchProcessDialog.cpp:247
-#: Tags.cpp:2038
-#: Tags.cpp:2042
-#: Tags.cpp:2342
-#: Tags.cpp:2346
-#: UploadDialog.cpp:180
-#: effects/AvcCompressor.cpp:732
-#: effects/ChangeLength.cpp:183
-#: effects/SpikeCleaner.cpp:188
-#: effects/VST/VSTEffect.cpp:446
-#: effects/audiounits/AudioUnitEffect.cpp:882
-#: effects/vamp/VampEffect.cpp:411
+#: BatchProcessDialog.cpp:108 BatchProcessDialog.cpp:247 Tags.cpp:2038
+#: Tags.cpp:2042 Tags.cpp:2342 Tags.cpp:2346 UploadDialog.cpp:180
+#: effects/AvcCompressor.cpp:732 effects/ChangeLength.cpp:183
+#: effects/SpikeCleaner.cpp:188 effects/VST/VSTEffect.cpp:446
+#: effects/audiounits/AudioUnitEffect.cpp:882 effects/vamp/VampEffect.cpp:411
msgid "&Cancel"
msgstr "Pre&kini"
-#: BatchProcessDialog.cpp:146
-#: BatchProcessDialog.cpp:191
+#: BatchProcessDialog.cpp:146 BatchProcessDialog.cpp:191
msgid "No chain selected"
msgstr "Nijedan lanac nije izabran"
@@ -606,8 +575,7 @@ msgstr "Primjena ..."
msgid "File"
msgstr "Datoteka"
-#: BatchProcessDialog.cpp:356
-#: BatchProcessDialog.cpp:360
+#: BatchProcessDialog.cpp:356 BatchProcessDialog.cpp:360
#: BatchProcessDialog.cpp:361
msgid "Edit Chains"
msgstr "Uredi lance"
@@ -616,19 +584,12 @@ msgstr "Uredi lance"
msgid "&Chains"
msgstr "&Lanci"
-#: BatchProcessDialog.cpp:435
-#: Tags.cpp:782
-#: Tags.cpp:1422
-#: Tags.cpp:2022
+#: BatchProcessDialog.cpp:435 Tags.cpp:782 Tags.cpp:1422 Tags.cpp:2022
msgid "&Add"
msgstr "&Dodaj"
-#: BatchProcessDialog.cpp:436
-#: LabelDialog.cpp:126
-#: Tags.cpp:783
-#: Tags.cpp:1423
-#: Tags.cpp:2023
-#: TrackPanel.cpp:3985
+#: BatchProcessDialog.cpp:436 LabelDialog.cpp:126 Tags.cpp:783 Tags.cpp:1423
+#: Tags.cpp:2023 TrackPanel.cpp:3985
msgid "&Remove"
msgstr "&Odstrani"
@@ -642,8 +603,8 @@ msgstr "L&anac (dvokliknite ili pritisnite razmaknicu za ureÄivanje)"
#. i18n-hint: This is the number of the command in the list
#: BatchProcessDialog.cpp:453
-msgid "No"
-msgstr "Ne"
+msgid "Num"
+msgstr ""
#: BatchProcessDialog.cpp:459
msgid "&Insert"
@@ -732,8 +693,7 @@ msgstr "Prostor na disku"
msgid "Copy Selected Audio Into Project"
msgstr "Kopiraj izabrane zvuke u projekt"
-#: Dependencies.cpp:304
-#: Dependencies.cpp:410
+#: Dependencies.cpp:304 Dependencies.cpp:410
msgid "Cancel Save"
msgstr "Obustavi snimanje"
@@ -745,8 +705,7 @@ msgstr "Ne kopiraj nikakve zvuÄne podatke"
msgid "Copy All Audio into Project (Safer)"
msgstr "Kopiraj sve zvuÄne podatke u projekt (Sigurnije)"
-#: Dependencies.cpp:317
-#: Dependencies.cpp:322
+#: Dependencies.cpp:317 Dependencies.cpp:322
msgid "Ask me"
msgstr "Pitaj me"
@@ -780,9 +739,7 @@ msgid "Warning: there is very little free disk space left on this volume.\n"
msgstr "Upozorenje: ponestaje prostora na ovom disku.\n"
"Moliimo, da izaberete drugi privremeni direktorij u prozoru Postavke."
-#: DirManager.cpp:221
-#: DirManager.cpp:251
-#: DirManager.cpp:332
+#: DirManager.cpp:221 DirManager.cpp:251 DirManager.cpp:332
msgid "Progress"
msgstr "Napredak"
@@ -837,8 +794,7 @@ msgstr "'%s' nije moguÄe preimenovati u '%s'"
msgid "Changed block %s to new alias name\n"
msgstr ""
-#: DirManager.cpp:1115
-#: DirManager.cpp:1403
+#: DirManager.cpp:1115 DirManager.cpp:1403
msgid "Inspecting project file data..."
msgstr "Pregled podatak projektne datoteke ..."
@@ -889,14 +845,9 @@ msgstr "Nastavi bez brisanja; tiho radi s dodatnim datotekama"
msgid "Close project immediately with no changes"
msgstr "Odmah zatvori projekt bez izmjena"
-#: DirManager.cpp:1228
-#: DirManager.cpp:1263
-#: DirManager.cpp:1309
-#: DirManager.cpp:1351
-#: export/Export.cpp:484
-#: export/Export.cpp:501
-#: export/Export.cpp:520
-#: widgets/Warning.cpp:55
+#: DirManager.cpp:1228 DirManager.cpp:1263 DirManager.cpp:1309
+#: DirManager.cpp:1351 export/Export.cpp:484 export/Export.cpp:501
+#: export/Export.cpp:520 widgets/Warning.cpp:55
msgid "Warning"
msgstr "Upozorenje"
@@ -918,14 +869,11 @@ msgstr "Provjera projekta je detektovala, da %d zamjenskih ulaznih datoteka\n"
msgid "Replace missing data with silence [permanent upon save]"
msgstr "Zamijeni nedostajuÄe podatke tiÅ¡inom [stalno nakon snimanja]"
-#: DirManager.cpp:1260
-#: DirManager.cpp:1348
+#: DirManager.cpp:1260 DirManager.cpp:1348
msgid "Temporarily replace missing data with silence [this session only]"
msgstr "Privremeno zamijeni nedostajuÄe podatke tiÅ¡inom [samo za tu sesiju]"
-#: DirManager.cpp:1261
-#: DirManager.cpp:1307
-#: DirManager.cpp:1349
+#: DirManager.cpp:1261 DirManager.cpp:1307 DirManager.cpp:1349
msgid "Close project immediately with no further changes"
msgstr "Odmah zatvori projekt bez daljnjih promjena"
@@ -994,11 +942,11 @@ msgstr "Pravougaono"
msgid "FFmpeg support not compiled in"
msgstr ""
-#: FFmpeg.cpp:101
+#: FFmpeg.cpp:103
msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
#: FFmpeg.cpp:104
@@ -1056,11 +1004,12 @@ msgstr ""
msgid "FFmpeg not found"
msgstr ""
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
#: FFmpeg.h:109
@@ -1083,8 +1032,7 @@ msgstr ""
msgid "Frequency Analysis"
msgstr "Analiza frekvencije"
-#: FreqWindow.cpp:140
-#: TrackPanel.cpp:507
+#: FreqWindow.cpp:140 TrackPanel.cpp:507
msgid "Spectrum"
msgstr "Spektar"
@@ -1112,8 +1060,7 @@ msgstr "Cepstrum"
msgid "Algorithm"
msgstr "Algoritam:"
-#: FreqWindow.cpp:168
-#: HistoryWindow.cpp:79
+#: FreqWindow.cpp:168 HistoryWindow.cpp:79
msgid "Size"
msgstr "VeliÄina"
@@ -1131,7 +1078,8 @@ msgstr ""
msgid "Linear frequency"
msgstr "Linearna frekvencija"
-#: FreqWindow.cpp:193 Da li je oo uÄestalost zapisa ili logaritamska frekvencija
+#: FreqWindow.cpp:193 Da li je oo uÄestalost zapisa ili logaritamska
+#: frekvencija
msgid "Log frequency"
msgstr "Logaritamska frekvencija"
@@ -1139,58 +1087,62 @@ msgstr "Logaritamska frekvencija"
msgid "Axis"
msgstr ""
-#: FreqWindow.cpp:206
-#: LabelDialog.cpp:128
-#: Menus.cpp:202
-#: Menus.cpp:231
+#: FreqWindow.cpp:206 LabelDialog.cpp:128 Menus.cpp:202 Menus.cpp:231
msgid "&Export..."
msgstr "&Izvezi ..."
-#: HelpText.cpp:77
-#: export/ExportCL.cpp:320
+#: HelpText.cpp:77 export/ExportCL.cpp:320
msgid "Export"
msgstr "Izvezi"
-#: AboutDialog.cpp:688
-#: FreqWindow.cpp:209
-#: widgets/ErrorDialog.cpp:135
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
+#: AboutDialog.cpp:688 FreqWindow.cpp:209 widgets/ErrorDialog.cpp:135
msgid "Close"
msgstr "Zatvori"
-#: FreqWindow.cpp:272
-#: FreqWindow.cpp:402
-#: effects/AutoDuck.cpp:489
-#: effects/AutoDuck.cpp:523
-#: effects/AutoDuck.cpp:791
-#: effects/Compressor.cpp:352
-#: effects/Compressor.cpp:360
-#: effects/Equalization.cpp:1103
-#: effects/Equalization.cpp:1105
-#: effects/Equalization.cpp:1113
-#: effects/Equalization.cpp:1179
-#: effects/Equalization.cpp:1388
-#: effects/Equalization.cpp:1399
-#: effects/Normalize.cpp:361
-#: widgets/Meter.cpp:363
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr ""
+
+#: FreqWindow.cpp:272 FreqWindow.cpp:402 effects/AutoDuck.cpp:489
+#: effects/AutoDuck.cpp:523 effects/AutoDuck.cpp:791
+#: effects/Compressor.cpp:352 effects/Compressor.cpp:360
+#: effects/Equalization.cpp:1103 effects/Equalization.cpp:1105
+#: effects/Equalization.cpp:1113 effects/Equalization.cpp:1179
+#: effects/Equalization.cpp:1388 effects/Equalization.cpp:1399
+#: effects/Normalize.cpp:361 widgets/Meter.cpp:363
msgid "dB"
msgstr "dB"
#. i18n-hint: This is the abbreviation for "Hertz", or
#. cycles per second.
-#: FreqWindow.cpp:287
-#: FreqWindow.cpp:442
-#: effects/Equalization.cpp:1144
-#: effects/Equalization.cpp:1175
-#: import/ImportRaw.cpp:416
+#: FreqWindow.cpp:287 FreqWindow.cpp:442 effects/Equalization.cpp:1144
+#: effects/Equalization.cpp:1175 import/ImportRaw.cpp:416
msgid "Hz"
msgstr "Hz"
+#: Menus.cpp:3394
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "Za crtanje spektra sve izabrane trake moraju imati jednak stepen uzorkovanja."
+
+#: Menus.cpp:3420
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "Izbrano je previÅ¡e zvuka. Samo prvih %.1f sekundi zvuka Äe biti analizirano."
+
#: FreqWindow.cpp:386
msgid "Not enough data selected."
msgstr "Nedovoljno izabranih podataka."
-#: FreqWindow.cpp:450
-#: effects/AutoDuck.cpp:793
+#: FreqWindow.cpp:450 effects/AutoDuck.cpp:793
msgid "s"
msgstr "s"
@@ -1212,12 +1164,8 @@ msgstr "spectrum.txt"
msgid "Export Spectral Data As:"
msgstr "Izvozi spektralne podatke kao:"
-#: FreqWindow.cpp:1077
-#: LabelDialog.cpp:599
-#: Menus.cpp:2177
-#: Project.cpp:2379
-#: Project.cpp:3333
-#: prefs/KeyConfigPrefs.cpp:180
+#: FreqWindow.cpp:1077 LabelDialog.cpp:599 Menus.cpp:2177 Project.cpp:2379
+#: Project.cpp:3333 prefs/KeyConfigPrefs.cpp:180
msgid "Couldn't write to file: "
msgstr "Ne može se upisati u datoteku: "
@@ -1229,6 +1177,21 @@ msgstr "Frekvencija (Hz)\tNivo (dB)"
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "Zaostajanje (sekunde)\tFrekvencija (Hz)\tNivo"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr ""
+
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr ""
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr ""
@@ -1307,7 +1270,7 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr ""
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
msgstr ""
#: HelpText.cpp:244
@@ -1331,7 +1294,7 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr ""
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
msgstr ""
#: HelpText.cpp:383
@@ -1366,15 +1329,9 @@ msgstr "Nivoi za odustajanje"
msgid "&Discard"
msgstr "&Odustani"
-#: HistoryWindow.cpp:111
-#: Tags.cpp:2039
-#: Tags.cpp:2041
-#: Tags.cpp:2343
-#: Tags.cpp:2345
-#: effects/ChangeLength.cpp:186
-#: effects/SpikeCleaner.cpp:191
-#: effects/vamp/VampEffect.cpp:414
-#: export/ExportCL.cpp:396
+#: HistoryWindow.cpp:111 Tags.cpp:2039 Tags.cpp:2041 Tags.cpp:2343
+#: Tags.cpp:2345 effects/ChangeLength.cpp:186 effects/SpikeCleaner.cpp:191
+#: effects/vamp/VampEffect.cpp:414 export/ExportCL.cpp:396
msgid "&OK"
msgstr "U &redu"
@@ -1382,8 +1339,7 @@ msgstr "U &redu"
msgid "Unable to determine"
msgstr "NemoguÄe odrediti"
-#: Internat.cpp:180
-#: import/ImportRaw.cpp:392
+#: Internat.cpp:180 import/ImportRaw.cpp:392
msgid "bytes"
msgstr "bajta"
@@ -1399,13 +1355,19 @@ msgstr "MB"
msgid "GB"
msgstr "GB"
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
#: LabelDialog.cpp:52
msgid "Track"
msgstr "Traka"
-#: LabelDialog.cpp:53
-#: Menus.cpp:4019
-#: Menus.cpp:4047
+#: LabelDialog.cpp:53 Menus.cpp:4019 Menus.cpp:4047
msgid "Label"
msgstr "Oznaka"
@@ -1417,8 +1379,7 @@ msgstr "PoÄetno vrijeme"
msgid "End Time"
msgstr "Krajnje vrijeme"
-#: LabelDialog.cpp:98
-#: Menus.cpp:615
+#: LabelDialog.cpp:98 Menus.cpp:615
msgid "&Edit Labels"
msgstr "&Uredi oznake"
@@ -1434,8 +1395,7 @@ msgstr "Ubaci Nak&on"
msgid "Insert &Before"
msgstr "Ubaci p&rije"
-#: LabelDialog.cpp:127
-#: Menus.cpp:192
+#: LabelDialog.cpp:127 Menus.cpp:192
msgid "&Import..."
msgstr "&Uvezi ..."
@@ -1457,20 +1417,15 @@ msgstr "Imate prazna imena oznaka. One Äe biti\n"
msgid "Confirm"
msgstr "Potvrdi"
-#: LabelDialog.cpp:514
-#: Menus.cpp:3517
+#: LabelDialog.cpp:514 Menus.cpp:3517
msgid "Select a text file containing labels..."
msgstr "Izaberite datoteku s oznakama ..."
-#: LabelDialog.cpp:518
-#: Menus.cpp:3521
+#: LabelDialog.cpp:518 Menus.cpp:3521
msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
msgstr "Datoteke s tekstom (*.txt)|*.txt|Sve datoteke (*.*)|*.*"
-#: LabelDialog.cpp:532
-#: Menus.cpp:3533
-#: Project.cpp:1800
-#: Project.cpp:1808
+#: LabelDialog.cpp:532 Menus.cpp:3533 Project.cpp:1800 Project.cpp:1808
#: import/ImportMIDI.cpp:31
msgid "Could not open file: "
msgstr "Greška pri otvaranju datoteke: "
@@ -1479,13 +1434,11 @@ msgstr "Greška pri otvaranju datoteke: "
msgid "No labels to export."
msgstr "Nema oznaka za izvoz."
-#: LabelDialog.cpp:564
-#: Menus.cpp:2142
+#: LabelDialog.cpp:564 Menus.cpp:2142
msgid "Export Labels As:"
msgstr "Izvezi oznake kao:"
-#: LabelDialog.cpp:566
-#: Menus.cpp:2140
+#: LabelDialog.cpp:566 Menus.cpp:2140
msgid "labels.txt"
msgstr "labels.txt"
@@ -1497,10 +1450,7 @@ msgstr "Nova traka s oznakama"
msgid "Enter track name"
msgstr "Unesite ime trake"
-#: LabelDialog.cpp:701
-#: LabelDialog.h:52
-#: LabelTrack.cpp:88
-#: Menus.cpp:547
+#: LabelDialog.cpp:701 LabelDialog.h:52 LabelTrack.cpp:88 Menus.cpp:547
msgid "&Label Track"
msgstr "&Traka s oznakama"
@@ -1527,24 +1477,15 @@ msgstr "Otvaranje projekta Audacity"
msgid "&File"
msgstr "&Datoteka"
-#: Menus.cpp:164
-msgid "&New\tCtrl+N"
-msgstr "&Nova\tCtrl+N"
-
-#: Menus.cpp:166
-msgid "&Open...\tCtrl+O"
-msgstr "&Otvori ...\tCtrl+O"
-
#: Menus.cpp:171
-msgid "&Close\tCtrl+W"
-msgstr "&Zatvori\tCtrl+W"
+msgid "&Close"
+msgstr "&Zatvori"
#: Menus.cpp:174
-msgid "&Save Project\tCtrl+S"
-msgstr "&SaÄuvaj projekt\tCtrl+S"
+msgid "&Save Project"
+msgstr "&SaÄuvaj projekt"
-#: Menus.cpp:178
-#: Project.cpp:2628
+#: Menus.cpp:178 Project.cpp:2628
msgid "Save Project &As..."
msgstr "SaÄuvaj projekt &kao ..."
@@ -1565,8 +1506,8 @@ msgid "&Import"
msgstr "&Uvezi"
#: Menus.cpp:194
-msgid "&Audio...\tCtrl+Shift+I"
-msgstr "&Zvuk ...\tCtrl+Shift+I"
+msgid "&Audio..."
+msgstr "&Zvuk ..."
#: Menus.cpp:195
msgid "&Labels..."
@@ -1580,8 +1521,7 @@ msgstr "&MIDI ..."
msgid "&Raw Data..."
msgstr "&Sirovi podaci ..."
-#: Menus.cpp:208
-#: Menus.cpp:237
+#: Menus.cpp:208 Menus.cpp:237
msgid "Expo&rt Selection..."
msgstr "Izvezi iz&bor ..."
@@ -1597,12 +1537,11 @@ msgstr "Izvezi &više datoteka ..."
msgid "Export MIDI..."
msgstr ""
-#: Menus.cpp:291
-msgid "CleanSpeech C&hain..."
-msgstr ""
+#: Menus.cpp:258
+msgid "Appl&y Chain..."
+msgstr "&LanÄano primjeni ..."
-#: Menus.cpp:246
-#: Menus.cpp:260
+#: Menus.cpp:246 Menus.cpp:260
msgid "Edit C&hains..."
msgstr "Uredi &lance ..."
@@ -1614,10 +1553,6 @@ msgstr ""
msgid "I&mport CleanSpeech Presets..."
msgstr ""
-#: Menus.cpp:258
-msgid "Appl&y Chain..."
-msgstr "&LanÄano primjeni ..."
-
#: Menus.cpp:265
msgid "&Upload File..."
msgstr "Prenesi datoteku &na server ..."
@@ -1631,75 +1566,72 @@ msgid "&Print..."
msgstr "&Å tampaj ..."
#: Menus.cpp:285
-msgid "E&xit\tCtrl+Q"
-msgstr "&Zatvori\tCtrl+Q"
+msgid "E&xit"
+msgstr "&Zatvori"
-#: Menus.cpp:293
-#: toolbars/EditToolBar.cpp:76
+#: Menus.cpp:293 toolbars/EditToolBar.cpp:76
msgid "&Edit"
msgstr "&Uredi"
#: Menus.cpp:297
-msgid "&Undo\tCtrl+Z"
-msgstr "&Opozovi\tCtrl+Z"
+msgid "&Undo"
+msgstr "&Opozovi"
-#: Menus.cpp:305
-#: prefs/KeyConfigPrefs.cpp:369
-#: toolbars/EditToolBar.cpp:146
+#: Menus.cpp:305 prefs/KeyConfigPrefs.cpp:369 toolbars/EditToolBar.cpp:146
msgid "&Redo"
msgstr "&Ponovi"
#: Menus.cpp:318
-msgid "Cu&t\tCtrl+X"
-msgstr "I&zreži\tCtrl+X"
+msgid "Cu&t"
+msgstr "I&zreži"
#: Menus.cpp:322
-msgid "Spl&it Cut\tCtrl+Alt+X"
-msgstr "&Razdvoji s rezom\tCtrl+Alt+X"
+msgid "Spl&it Cut"
+msgstr "&Razdvoji s rezom"
#: Menus.cpp:323
-msgid "&Copy\tCtrl+C"
-msgstr "&Kopiraj\tCtrl+C"
+msgid "&Copy"
+msgstr "&Kopiraj"
#: Menus.cpp:327
-msgid "&Paste\tCtrl+V"
-msgstr "&Umetni\tCtrl+V"
+msgid "&Paste"
+msgstr "&Umetni"
#: Menus.cpp:331
-msgid "Tri&m\tCtrl+T"
-msgstr "Skrati\tCtrl+T"
+msgid "Tri&m"
+msgstr "Skrati"
#: Menus.cpp:333
-msgid "&Delete\tCtrl+K"
-msgstr "&Obriši\tCtrl+K"
+msgid "&Delete"
+msgstr "&Obriši"
#: Menus.cpp:334
-msgid "Split D&elete\tCtrl+Alt+K"
-msgstr "Razdvoji s &brisanjem\tCtrl+Alt+K"
+msgid "Split D&elete"
+msgstr "Razdvoji s &brisanjem"
#: Menus.cpp:381
-msgid "Silence Audi&o\tCtrl+L"
+msgid "Silence Audi&o"
msgstr ""
#: Menus.cpp:337
-msgid "Sp&lit\tCtrl+I"
-msgstr "Raz&dvoji\tCtrl+I"
+msgid "Sp&lit"
+msgstr "Raz&dvoji"
#: Menus.cpp:342
-msgid "Split Ne&w\tCtrl+Alt+I"
-msgstr "Razdvoji u n&ovu\tCtrl+Alt+I"
+msgid "Split Ne&w"
+msgstr "Razdvoji u n&ovu"
#: Menus.cpp:347
-msgid "&Join\tCtrl+J"
-msgstr "&Spoji\tCtrl+J"
+msgid "&Join"
+msgstr "&Spoji"
#: Menus.cpp:394
-msgid "Detac&h at Silences\tCtrl+Alt+J"
+msgid "Detac&h at Silences"
msgstr ""
#: Menus.cpp:350
-msgid "Duplic&ate\tCtrl+D"
-msgstr "U&dvostruÄi\tCtrl+D"
+msgid "Duplic&ate"
+msgstr "U&dvostruÄi"
#: Menus.cpp:401 Menus.cpp:641
msgid "Stereo Trac&k to Mono"
@@ -1711,82 +1643,67 @@ msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:365
-msgid "&Cut\tAlt+X"
-msgstr "I&zreži\tAlt+X"
+msgid "&Cut"
+msgstr "I&zreži"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:370
-msgid "&Split Cut\tShift+Alt+X"
-msgstr "&Razdvoji i izreži\tShift+Alt+X"
+msgid "&Split Cut"
+msgstr "&Razdvoji i izreži"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:375
-msgid "Co&py\tShift+Alt+C"
-msgstr "Ko&piraj\tShift+Alt+C"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:381
-msgid "&Delete\tAlt+K"
-msgstr "&Izbriši\tAlt+D"
+msgid "Co&py"
+msgstr "Ko&piraj"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:386
-msgid "Sp&lit Delete\tShift+Alt+K"
-msgstr "Razdvo&ji s brisanjem\tShift+Alt+K"
+msgid "Sp&lit Delete"
+msgstr "Razdvo&ji s brisanjem"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:391
-msgid "Sile&nce\tAlt+L"
-msgstr "Ti&šina\tALT+L"
+msgid "Sile&nce"
+msgstr "Ti&šina"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:397
-msgid "Spli&t\tAlt+I"
-msgstr "&Razdijeli\tAlt+T"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:402
-msgid "&Join\tAlt+J"
-msgstr "S&poji\tAlt+J"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:452
-msgid "Detac&h at Silences\tShift+Alt+J"
-msgstr ""
+msgid "Spli&t"
+msgstr "&Razdijeli"
#: Menus.cpp:457
msgid "&Select"
msgstr ""
#: Menus.cpp:414
-msgid "&All\tCtrl+A"
-msgstr "S&ve\tCtrl+A"
+msgid "&All"
+msgstr "S&ve"
#: Menus.cpp:415
-msgid "&None\tCtrl+Shift+A"
-msgstr "&Ništa\tCtrl+Shift+A"
+msgid "&None"
+msgstr "&Ništa"
#: Menus.cpp:463
#, fuzzy
-msgid "&Left at Playback Position\t["
-msgstr "Lijevo od mjesta izvoÄenja\t["
+msgid "&Left at Playback Position"
+msgstr "Lijevo od mjesta izvoÄenja"
#: Menus.cpp:464
#, fuzzy
-msgid "&Right at Playback Position\t]"
-msgstr "Desno od mjesta izvoÄenja\t]"
+msgid "&Right at Playback Position"
+msgstr "Desno od mjesta izvoÄenja"
#: Menus.cpp:468
-msgid "Track &Start to Cursor\tShift+J"
+msgid "Track &Start to Cursor"
msgstr ""
#: Menus.cpp:469
-msgid "Cursor to Track &End\tShift+K"
+msgid "Cursor to Track &End"
msgstr ""
#: Menus.cpp:431
-msgid "Find &Zero Crossings\tZ"
-msgstr "NaÄi &nulte presjeke\tZ"
+msgid "Find &Zero Crossings"
+msgstr "NaÄi &nulte presjeke"
#: Menus.cpp:478
msgid "Mo&ve Cursor"
@@ -1803,11 +1720,11 @@ msgid "to Selection En&d"
msgstr "na kraj izbora"
#: Menus.cpp:485
-msgid "to Track &Start\tJ"
+msgid "to Track &Start"
msgstr ""
#: Menus.cpp:486
-msgid "to Track &End\tK"
+msgid "to Track &End"
msgstr ""
#: Menus.cpp:493
@@ -1830,29 +1747,8 @@ msgstr ""
msgid "&Unlock"
msgstr ""
-#: Menus.cpp:462
-msgid "Turn Snap-To On"
-msgstr "UkljuÄi skoÄi-na"
-
-#: Menus.cpp:463
-msgid "Turn Snap-To Off"
-msgstr "IskljuÄi skoÄi-na"
-
-#: Menus.cpp:464
-msgid "Turn Grid Snap On"
-msgstr "UkljuÄi pozicioniranje preko mrežice"
-
-#: Menus.cpp:465
-msgid "Turn Grid Snap Off"
-msgstr "IskljuÄi pozicioniranje preko mrežice"
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
#: Menus.cpp:521
-msgid "Pre&ferences...\tCtrl+,"
-msgstr ""
-
-#: Menus.cpp:525
-msgid "Pre&ferences...\tCtrl+P"
+msgid "Pre&ferences..."
msgstr ""
#: Menus.cpp:484
@@ -1860,36 +1756,36 @@ msgid "&View"
msgstr "&Pogled"
#: Menus.cpp:486
-msgid "Zoom &In\tCtrl+1"
-msgstr "Pove&Äaj\tCtrl+1"
+msgid "Zoom &In"
+msgstr "Pove&Äaj"
#: Menus.cpp:489
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "&Normalna veliÄina\tCtrl+2"
+msgid "Zoom &Normal"
+msgstr "&Normalna veliÄina"
#: Menus.cpp:490
-msgid "Zoom &Out\tCtrl+3"
-msgstr "U&manji\tCtrl+3"
+msgid "Zoom &Out"
+msgstr "U&manji"
#: Menus.cpp:493
-msgid "&Fit in Window\tCtrl+F"
-msgstr "Na veliÄinu pr&ozora\tCtrl+G"
+msgid "&Fit in Window"
+msgstr "Na veliÄinu pr&ozora"
#: Menus.cpp:494
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "Prilagodi vertikal&no\tCtrl+Shift+F"
+msgid "Fit &Vertically"
+msgstr "Prilagodi vertikal&no"
#: Menus.cpp:495
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "&PoveÄaj do izbora\tCtrl+E"
+msgid "&Zoom to Selection"
+msgstr "&PoveÄaj do izbora"
#: Menus.cpp:498
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
-msgstr "&Sažmi sve trake\tCtrl+Shift+C"
+msgid "&Collapse All Tracks"
+msgstr "&Sažmi sve trake"
#: Menus.cpp:499
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
-msgstr "&Raširi sve trake\tCtrl+Shift+X"
+msgid "E&xpand All Tracks"
+msgstr "&Raširi sve trake"
#: Menus.cpp:553
#, fuzzy
@@ -1959,40 +1855,40 @@ msgstr ""
msgid "T&ransport"
msgstr ""
-#: Menus.cpp:591
-msgid "Play\tSpace"
-msgstr ""
+#: toolbars/ControlToolBar.cpp:177
+msgid "Play"
+msgstr "IzvoÄenje"
#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
+msgid "&Loop Play"
msgstr ""
#: Menus.cpp:595
-msgid "&Pause\tP"
+msgid "&Pause"
msgstr ""
#: Menus.cpp:596
-msgid "&Stop\tSpace"
+msgid "&Stop"
msgstr ""
#: Menus.cpp:786
-msgid "Skip to Start\tHome"
-msgstr "SkoÄi na poÄetak\tHome"
+msgid "Skip to Start"
+msgstr "SkoÄi na poÄetak"
#: Menus.cpp:787
-msgid "Skip to End\tEnd"
-msgstr "SkoÄi na kraj\tEnd"
+msgid "Skip to End"
+msgstr "SkoÄi na kraj"
#: Menus.cpp:602
-msgid "&Record\tR"
+msgid "&Record"
msgstr ""
#: Menus.cpp:604
-msgid "&Timer Record...\tShift+T"
+msgid "&Timer Record..."
msgstr ""
#: Menus.cpp:606
-msgid "Append Record\tShift+R"
+msgid "Append Record"
msgstr ""
#: Menus.cpp:609
@@ -2020,15 +1916,14 @@ msgid "Add &New"
msgstr ""
#: Menus.cpp:545
-msgid "&Audio Track\tCtrl+Shift+N"
-msgstr "&ZvuÄna traka\tCtrl+Shift+N"
+msgid "&Audio Track"
+msgstr "&ZvuÄna traka"
#: Menus.cpp:546
msgid "&Stereo Track"
msgstr "&Stereo traka"
-#: Menus.cpp:548
-#: TimeTrack.cpp:44
+#: Menus.cpp:548 TimeTrack.cpp:44
msgid "&Time Track"
msgstr "&vremenska traka"
@@ -2037,8 +1932,8 @@ msgid "Mi&x and Render"
msgstr ""
#: Menus.cpp:564
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
-msgstr "Miješanje i obrada u novu traku\tCtrl+Shift+M"
+msgid "Mix and Render to New Track"
+msgstr "Miješanje i obrada u novu traku"
#: Menus.cpp:568
msgid "&Resample..."
@@ -2049,11 +1944,11 @@ msgid "Remo&ve Tracks"
msgstr "O&dstrani trake:"
#: Menus.cpp:669
-msgid "&Mute All Tracks\tCtrl+U"
+msgid "&Mute All Tracks"
msgstr ""
#: Menus.cpp:670
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
+msgid "&UnMute All Tracks"
msgstr ""
#: Menus.cpp:585
@@ -2104,17 +1999,17 @@ msgstr ""
msgid "Synchronize MIDI with Audio"
msgstr ""
-#: Menus.cpp:708
-msgid "Link Audio and Label Tracks"
+#: Menus.cpp:686
+msgid "&Link Audio and Label Tracks"
msgstr ""
-#: Menus.cpp:611
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "Dodaj oz&naku izboru\tCtrl+B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr ""
#: Menus.cpp:612
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "Dodaj oznaku na mjestu &emitovanja\tCtrl+M"
+msgid "Add Label At &Playback Position"
+msgstr "Dodaj oznaku na mjestu &emitovanja"
#: Menus.cpp:718
msgid "S&ort tracks"
@@ -2140,20 +2035,19 @@ msgstr ""
msgid "Effe&ct"
msgstr "Efe&kt"
-#: Menus.cpp:658
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "Ponovi zadnji efekt\tCtrl+R"
-
#: Menus.cpp:690
msgid "&Analyze"
msgstr "&Analiziraj"
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
+
#: Menus.cpp:692
msgid "Plot Spectrum..."
msgstr "Crtaj spektar ..."
-#: Menus.cpp:725
-#: Menus.cpp:728
+#: Menus.cpp:725 Menus.cpp:728
msgid "&Help"
msgstr "&PomoÄ"
@@ -2165,9 +2059,9 @@ msgstr "&O Audacity CleanSpeech ..."
msgid "&Show Welcome Message..."
msgstr "&Prikaži poruku dobrodošlice ..."
-#: Menus.cpp:736
-msgid "&Index..."
-msgstr "&Indeks ..."
+#: Menus.cpp:958
+msgid "&Help..."
+msgstr ""
#: Menus.cpp:961
msgid "Show &Log..."
@@ -2185,181 +2079,149 @@ msgstr "&Pokreni test brzine ..."
msgid "&Audio Device Info..."
msgstr "Podaci o zvu&Änom ureÄaju ..."
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
msgstr ""
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
msgstr ""
#: Menus.cpp:762
-msgid "Selection Tool\tF1"
-msgstr "Alat za izbor\tF1"
+msgid "Selection Tool"
+msgstr "Alat za izbor"
#: Menus.cpp:763
-msgid "Envelope Tool\tF2"
-msgstr "Alat za ovojnicu\tF2"
+msgid "Envelope Tool"
+msgstr "Alat za ovojnicu"
#: Menus.cpp:764
-msgid "Draw Tool\tF3"
-msgstr "Alat za crtanje\tF3"
+msgid "Draw Tool"
+msgstr "Alat za crtanje"
#: Menus.cpp:765
-msgid "Zoom Tool\tF4"
-msgstr "Alat za poveÄanje\tF4"
+msgid "Zoom Tool"
+msgstr "Alat za poveÄanje"
#: Menus.cpp:766
-msgid "Time Shift Tool\tF5"
-msgstr "Alat za vremenski pomak\tF5"
+msgid "Time Shift Tool"
+msgstr "Alat za vremenski pomak"
#: Menus.cpp:767
-msgid "Multi Tool\tF6"
-msgstr "Višenamjenski alat\tF6"
+msgid "Multi Tool"
+msgstr "Višenamjenski alat"
#: Menus.cpp:769
-msgid "Next Tool\tD"
-msgstr "Naredni alat\tD"
+msgid "Next Tool"
+msgstr "Naredni alat"
#: Menus.cpp:770
-msgid "Previous Tool\tA"
-msgstr "Predhodni alat\tA"
+msgid "Previous Tool"
+msgstr "Predhodni alat"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
-msgstr ""
-
-#: Menus.cpp:773
-msgid "Stop\tS"
-msgstr "Zaustavi\tS"
-
-#: Menus.cpp:774
-msgid "Pause\tP"
-msgstr "Pauza\tP"
-
-#: Menus.cpp:775
-msgid "Record\tR"
-msgstr "Snimi\tR"
-
-#: Menus.cpp:1001
-msgid "Record Append\tShift+R"
+msgid "Play/Stop"
msgstr ""
#: Menus.cpp:1003
-msgid "Play/Stop and Set Cursor\tShift+A"
+msgid "Play/Stop and Set Cursor"
msgstr ""
#: Menus.cpp:780
-msgid "Play One Second\t1"
-msgstr "Izvedi jednu sekundu\t1"
+msgid "Play One Second"
+msgstr "Izvedi jednu sekundu"
#: Menus.cpp:781
-msgid "Play To Selection\tB"
-msgstr "Izvedi do izbora\tB"
-
-#: Menus.cpp:782
-msgid "Play Looped\tL"
-msgstr "Izvodi kružno\tZ"
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
+msgid "Play To Selection"
+msgstr "Izvedi do izbora"
#: Menus.cpp:784
-msgid "Play Cut Preview\tC"
-msgstr "Izvodi predslušanje reza\tC"
+msgid "Play Cut Preview"
+msgstr "Izvodi predslušanje reza"
#: Menus.cpp:789
-msgid "Selection to Start\tShift+Home"
-msgstr "Izbor do poÄetka\tShift+Home"
+msgid "Selection to Start"
+msgstr "Izbor do poÄetka"
#: Menus.cpp:790
-msgid "Selection to End\tShift+End"
-msgstr "Izbor do kraja\tShift+End"
+msgid "Selection to End"
+msgstr "Izbor do kraja"
#: Menus.cpp:792
-msgid "DeleteKey\tBackspace"
-msgstr "DeleteKey\tBackspace"
+msgid "DeleteKey"
+msgstr "DeleteKey"
#: Menus.cpp:797
-msgid "DeleteKey2\tDelete"
-msgstr "DeleteKey2\tDelete"
+msgid "DeleteKey2"
+msgstr "DeleteKey2"
-#: Menus.cpp:803
-msgid "Seek left short period during playback\tLeft"
-msgstr "Potraži lijevo kratak period pri izvoÄenju\tLeft"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
+msgstr ""
-#: Menus.cpp:804
-msgid "Seek right short period during playback\tRight"
-msgstr "Potraži desno kratak period pri izvoÄenju\tRight"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
+msgstr ""
-#: Menus.cpp:805
-msgid "Seek left long period during playback\tShift+Left"
-msgstr "Potraži lijevo dugi period pri izvoÄenju\tShift+Left"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
+msgstr ""
-#: Menus.cpp:806
-msgid "Seek right long period during playback\tShift+Right"
-msgstr "Potraži desno dugi period pri izvoÄenju\tShift+Right"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
+msgstr ""
#: Menus.cpp:810
-msgid "Move Focus to Previous Track\tUp"
-msgstr "Pomjeri fokus na prehodnu traku\tUp"
+msgid "Move Focus to Previous Track"
+msgstr "Pomjeri fokus na prehodnu traku"
-#: Menus.cpp:811
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
-msgstr "Pomjeri fokus na prehodnu traku i promjeni izbor\tShift+Up"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
+msgstr ""
#: Menus.cpp:812
-msgid "Move Focus to Next Track\tDown"
-msgstr "Pomjeri fokus na narednu traku\tDown"
+msgid "Move Focus to Next Track"
+msgstr "Pomjeri fokus na narednu traku"
-#: Menus.cpp:813
-msgid "Move Focus to Next and Change Selection\tShift+Down"
-msgstr "Pomjeri fokus na prehodnu traku i promjeni izbor\tShift+Down"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
+msgstr ""
#: Menus.cpp:814
-msgid "Toggle Focused Track\tReturn"
-msgstr "UkljuÄi/iskljuÄi fokusiranu traku\tReturn"
-
-#: Menus.cpp:815
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr "UkljuÄi/iskljuÄi fokusiranu traku\tNUMPAD_ENTER"
-
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
-msgstr ""
+msgid "Toggle Focused Track"
+msgstr "UkljuÄi/iskljuÄi fokusiranu traku"
#: Menus.cpp:818
-msgid "Cursor Left\tLeft"
-msgstr "Kazaljka lijevo\tLeft"
+msgid "Cursor Left"
+msgstr "Kazaljka lijevo"
#: Menus.cpp:819
-msgid "Cursor Right\tRight"
-msgstr "Kazaljka desno\tRight"
+msgid "Cursor Right"
+msgstr "Kazaljka desno"
#: Menus.cpp:820
-msgid "Cursor Short Jump Left\t,"
-msgstr "Kratak skok kazaljke lijevo\t,"
+msgid "Cursor Short Jump Left"
+msgstr "Kratak skok kazaljke lijevo"
#: Menus.cpp:821
-msgid "Cursor Short Jump Right\t."
-msgstr "Kratak skok kazaljke desno\t."
+msgid "Cursor Short Jump Right"
+msgstr "Kratak skok kazaljke desno"
#: Menus.cpp:822
-msgid "Cursor Long Jump Left\tShift+,"
-msgstr "Dugi skok kazaljke lijevo\tShift+,"
+msgid "Cursor Long Jump Left"
+msgstr "Dugi skok kazaljke lijevo"
#: Menus.cpp:823
-msgid "Cursor Long Jump Right\tShift+."
-msgstr "Dugi skok kazaljke desno\tShift+."
+msgid "Cursor Long Jump Right"
+msgstr "Dugi skok kazaljke desno"
#: Menus.cpp:825
-msgid "Selection Extend Left\tShift+Left"
-msgstr "Proširi izbor na lijevo\tShift+Left"
+msgid "Selection Extend Left"
+msgstr "Proširi izbor na lijevo"
#: Menus.cpp:826
-msgid "Selection Extend Right\tShift+Right"
-msgstr "Proširi izbor na desno\tShift+Right"
+msgid "Selection Extend Right"
+msgstr "Proširi izbor na desno"
#: Menus.cpp:828
msgid "Set (or Extend) Left Selection"
@@ -2370,52 +2232,52 @@ msgid "Set (or Extend) Right Selection"
msgstr "Postavi (ili proširi) desnu granicu izbora"
#: Menus.cpp:831
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "Skupi izbor s lijeva\tCtrl+Shift+Right"
+msgid "Selection Contract Left"
+msgstr "Skupi izbor s lijeva"
#: Menus.cpp:832
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "Skupi izbor s desna\tCtrl+Shift+Left"
+msgid "Selection Contract Right"
+msgstr "Skupi izbor s desna"
#: Menus.cpp:834
-msgid "Change pan on focused track\tShift+P"
-msgstr "Promijeni pomak na fokusiranoj traci\tShift+P"
+msgid "Change pan on focused track"
+msgstr "Promijeni pomak na fokusiranoj traci"
#: Menus.cpp:835
-msgid "Pan left on focused track\tAlt+Shift+Left"
-msgstr "Pomakni lijevo na fokusiranoj traci\tAlt+Shift+Left"
+msgid "Pan left on focused track"
+msgstr "Pomakni lijevo na fokusiranoj traci"
#: Menus.cpp:836
-msgid "Pan right on focused track\tAlt+Shift+Right"
-msgstr "Pomakni desno na fokusiranoj traci\tAlt+Shift+Right"
+msgid "Pan right on focused track"
+msgstr "Pomakni desno na fokusiranoj traci"
#: Menus.cpp:837
-msgid "Change gain on focused track\tShift+G"
-msgstr "Promijeni pojaÄanje na fokusiranoj traci\tShift+G"
+msgid "Change gain on focused track"
+msgstr "Promijeni pojaÄanje na fokusiranoj traci"
#: Menus.cpp:838
-msgid "Increase gain on focused track\tAlt+Shift+Up"
-msgstr "PoveÄaj pojaÄanje na fokusiranoj traci\tAlt+Shift+Up"
+msgid "Increase gain on focused track"
+msgstr "PoveÄaj pojaÄanje na fokusiranoj traci"
#: Menus.cpp:839
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
-msgstr "Smanji pojaÄanje na fokusiranoj traci\tAlt+Shift+Down"
+msgid "Decrease gain on focused track"
+msgstr "Smanji pojaÄanje na fokusiranoj traci"
#: Menus.cpp:840
-msgid "Open menu on focused track\tShift+M"
-msgstr "Otvori meni na fokusiranoj traci\tShift+M"
+msgid "Open menu on focused track"
+msgstr "Otvori meni na fokusiranoj traci"
#: Menus.cpp:841
-msgid "Mute/Unmute focused track\tShift+U"
-msgstr "Utišaj/odvrni fokusiranu traku\tShift+U"
+msgid "Mute/Unmute focused track"
+msgstr "Utišaj/odvrni fokusiranu traku"
#: Menus.cpp:842
-msgid "Solo/Unsolo focused track\tShift+S"
-msgstr "Solo/poništi solo na fokusiranoj traci\tShift+S"
+msgid "Solo/Unsolo focused track"
+msgstr "Solo/poništi solo na fokusiranoj traci"
#: Menus.cpp:843
-msgid "Close focused track\tShift+C"
-msgstr "Zatvori fokusiranu traku\tShift+C"
+msgid "Close focused track"
+msgstr "Zatvori fokusiranu traku"
#: Menus.cpp:845
msgid "Snap To On"
@@ -2426,7 +2288,35 @@ msgid "Snap To Off"
msgstr "IskljuÄi SkoÄi-na"
#: Menus.cpp:1073
-msgid "Full screen on/off\tF11"
+msgid "Full screen on/off"
+msgstr ""
+
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr ""
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr ""
+
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr ""
+
+#: Menus.cpp:1074
+msgid "Adjust input source"
msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
@@ -2487,8 +2377,8 @@ msgstr "Molimo, da prvo izaberete traku."
#: Menus.cpp:2005
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "Ponovi %s\tCtrl+R"
+msgid "Repeat %s"
+msgstr "Ponovi %s"
#: Menus.cpp:2136
msgid "There are no label tracks to export."
@@ -2519,9 +2409,7 @@ msgstr "Nema ništa da se poništi"
msgid "Nothing to redo"
msgstr "Nema ništa da se ponovi"
-#: Menus.cpp:2336
-#: TrackPanel.cpp:546
-#: toolbars/EditToolBar.cpp:133
+#: Menus.cpp:2336 TrackPanel.cpp:546 toolbars/EditToolBar.cpp:133
msgid "Cut"
msgstr "Izreži"
@@ -2537,10 +2425,7 @@ msgstr "Razdvoji i izreži"
msgid "Split-cut to the clipboard"
msgstr "Razdvoji i izreži u klipord"
-#: Menus.cpp:2439
-#: Menus.cpp:2510
-#: Menus.cpp:2604
-#: TrackPanel.cpp:548
+#: Menus.cpp:2439 Menus.cpp:2510 Menus.cpp:2604 TrackPanel.cpp:548
#: toolbars/EditToolBar.cpp:137
msgid "Paste"
msgstr "Umetni"
@@ -2549,8 +2434,7 @@ msgstr "Umetni"
msgid "Pasted text from the clipboard"
msgstr "Umetnuti tekst iz odlagališta"
-#: Menus.cpp:2510
-#: Menus.cpp:2604
+#: Menus.cpp:2510 Menus.cpp:2604
msgid "Pasted from the clipboard"
msgstr "Umetnuto iz odlagališta"
@@ -2562,8 +2446,7 @@ msgstr ""
msgid "Copying stereo audio into a mono track is not allowed."
msgstr "Kopiranje stereo zvuka u mono traku nije dozvoljeno."
-#: Menus.cpp:2640
-#: toolbars/EditToolBar.cpp:139
+#: Menus.cpp:2640 toolbars/EditToolBar.cpp:139
msgid "Trim"
msgstr "Odsjeci"
@@ -2603,8 +2486,7 @@ msgstr "Spoji"
msgid "Silenced selected tracks for %.2f seconds at %.2f"
msgstr "Utišane izbrane trake za %.2f sekundu pri %.2f"
-#: Menus.cpp:2741
-#: toolbars/EditToolBar.cpp:141
+#: Menus.cpp:2741 toolbars/EditToolBar.cpp:141
msgid "Silence"
msgstr "Tišina"
@@ -2688,8 +2570,7 @@ msgstr "Oznake odvajanja"
msgid "Disjoined labeled regions"
msgstr "Odvojena oznaÄena podruÄja"
-#: Menus.cpp:2917
-#: TrackPanel.cpp:5861
+#: Menus.cpp:2917 TrackPanel.cpp:5861
msgid "Split"
msgstr "Razdvoji"
@@ -2705,15 +2586,6 @@ msgstr "Razdvoji u novu traku"
msgid "Split at labels"
msgstr "Razdvoji po oznakama"
-#: Menus.cpp:3394
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "Za crtanje spektra sve izabrane trake moraju imati jednak stepen uzorkovanja."
-
-#: Menus.cpp:3420
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "Izbrano je previÅ¡e zvuka. Samo prvih %.1f sekundi zvuka Äe biti analizirano."
-
#: Menus.cpp:3546
#, c-format
msgid "Imported labels from '%s'"
@@ -2761,7 +2633,6 @@ msgid "Edit Metadata tags"
msgstr "Uredi oznake metapodataka"
#: Menus.cpp:4312
-#, c-format
#, fuzzy
msgid "Rendered all audio in track '%s'"
msgstr "Sav zvuk je obraÄen u traci '%s'"
@@ -2780,9 +2651,7 @@ msgstr "Miksovano i obraÄeno %d traka u novu stereo traku"
msgid "Mixed and rendered %d tracks into one new mono track"
msgstr "Miksovano i obraÄeno %d traka u novu mono traku"
-#: Menus.cpp:560
-#: Menus.cpp:3698
-#: Mix.cpp:120
+#: Menus.cpp:560 Menus.cpp:3698 Mix.cpp:120
msgid "&Mix and Render"
msgstr "&Miješanje i obrada"
@@ -2834,10 +2703,7 @@ msgstr ""
msgid "Created new audio track"
msgstr "Stvorena nova zvuÄna traka"
-#: Menus.cpp:3912
-#: Menus.cpp:3935
-#: Menus.cpp:3950
-#: Menus.cpp:3970
+#: Menus.cpp:3912 Menus.cpp:3935 Menus.cpp:3950 Menus.cpp:3970
msgid "New Track"
msgstr "Nova traka"
@@ -2873,8 +2739,7 @@ msgstr "Spremi datoteku postavki CleanSpeech kao:"
msgid "CleanSpeech Presets (*.csp)|*.csp"
msgstr "Postavke CleanSpeech (*.csp)|*.csp"
-#: Menus.cpp:4085
-#: export/Export.cpp:509
+#: Menus.cpp:4085 export/Export.cpp:509
msgid "Sorry, pathnames longer than 256 characters not supported."
msgstr "Oprostite, imena staza do datoteka ne smiju preÄi 256 znakova."
@@ -2882,8 +2747,7 @@ msgstr "Oprostite, imena staza do datoteka ne smiju preÄi 256 znakova."
msgid "Problem encountered exporting presets."
msgstr "Nastopio je problem pri izvozu postavki."
-#: Menus.cpp:4132
-#: export/Export.cpp:402
+#: Menus.cpp:4132 export/Export.cpp:402
msgid "Unable to export"
msgstr "Nije moguÄe izvoziti"
@@ -2895,9 +2759,7 @@ msgstr "Odstrani traku"
msgid "Removed audio track(s)"
msgstr "Odstrani zvuÄne trake"
-#: Menus.cpp:4437
-#: Menus.cpp:4456
-#: export/ExportMP3.cpp:1871
+#: Menus.cpp:4437 Menus.cpp:4456 export/ExportMP3.cpp:1871
msgid "Resample"
msgstr "Ponovo uzmi uzorke"
@@ -2922,8 +2784,7 @@ msgstr "Ponovno uzmi uzorke trake"
msgid "Resampled audio track(s)"
msgstr "Trake s ponovljenim uzorcima"
-#: Mix.cpp:94
-#: Mix.cpp:101
+#: Mix.cpp:94 Mix.cpp:101
msgid "Mix"
msgstr "Miješanje"
@@ -2943,6 +2804,10 @@ msgstr "Pri štampanju je došlo do problema."
msgid "Print"
msgstr "Å tampaj"
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr ""
+
#: Project.cpp:635
msgid "Main Mix"
msgstr "Glavni miješani zvuk"
@@ -2956,14 +2821,11 @@ msgstr "Dobrodošli u Audacity verzije %s"
msgid "(Recovered)"
msgstr "(obnovljeno)"
-#: Project.cpp:1472
-#: TrackPanel.cpp:772
-#: toolbars/ControlToolBar.cpp:191
+#: Menus.cpp:775
msgid "Record"
msgstr "Snimi"
-#: Project.cpp:1472
-#: TrackPanel.cpp:772
+#: Project.cpp:1472 TrackPanel.cpp:772
msgid "Recorded Audio"
msgstr "Snimljeni zvuk"
@@ -2984,9 +2846,9 @@ msgstr ""
msgid "Save changes?"
msgstr "Želite li spremiti promjene?"
-#: Project.cpp:1684
-msgid "All files|*.*|All supported files|"
-msgstr "Sve datoteke|*.*|Sve podržane datoteke|"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
+msgstr ""
#: Project.cpp:1709
msgid "Select one or more audio files..."
@@ -3015,8 +2877,18 @@ msgstr ""
msgid "Opening old project file"
msgstr "Otvaranje stare projektne datoteke"
-#: Project.cpp:1801
-#: Project.cpp:1809
+#: Project.cpp:2073
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr ""
+
+#: Project.cpp:1801 Project.cpp:1809
msgid "Error opening file"
msgstr "Greška pri otvaranju datoteke."
@@ -3051,8 +2923,7 @@ msgstr "Obnovi"
msgid "Project checker repaired file"
msgstr "Kontrolor projekta je popravio datoteku"
-#: Project.cpp:1967
-#: effects/Repair.h:29
+#: Project.cpp:1967 effects/Repair.h:29
msgid "Repair"
msgstr "Popravi"
@@ -3074,10 +2945,12 @@ msgstr "Tu datoteku ste sremili koristeÄi Audacity %s.\n"
msgid "Can't open project file"
msgstr "Nije moguÄe otvoriti datoteke projekta"
-#: Project.cpp:2357
+#: Project.cpp:2484
#, c-format
msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
msgstr ""
@@ -3097,17 +2970,22 @@ msgstr ""
msgid "Warning empty project"
msgstr ""
-#: Project.cpp:2647
+#: Project.cpp:2792
#, c-format
msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+"is not writable or the disk is full."
msgstr ""
-#: Project.cpp:2366
-#: Project.cpp:2380
+#: Project.cpp:2366 Project.cpp:2380
msgid "Error saving project"
msgstr "Greška pri spremanju projekta"
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
#: Project.cpp:2442
#, c-format
msgid "Saved %s"
@@ -3118,16 +2996,12 @@ msgstr "Snimljeno %s"
msgid "Imported '%s'"
msgstr "Uvezeno '%s'"
-#: Menus.cpp:3611
-#: Project.cpp:2525
-#: Project.cpp:2550
-#: import/ImportPCM.cpp:440
+#: Menus.cpp:3611 Project.cpp:2525 Project.cpp:2550 import/ImportPCM.cpp:440
#: import/ImportPCM.cpp:484
msgid "Import"
msgstr "Uvezi"
-#: Project.cpp:2577
-#: Project.cpp:2585
+#: Project.cpp:2577 Project.cpp:2585
msgid "Error importing"
msgstr "Greška pri uvozu"
@@ -3170,8 +3044,7 @@ msgstr "Kreiran nov projekt"
msgid "Deleted %.2f seconds at t=%.2f"
msgstr "Izbrisanih %.2f sekundi u t=%.2f"
-#: Project.cpp:2797
-#: effects/Equalization.cpp:1256
+#: Project.cpp:2797 effects/Equalization.cpp:1256
#: effects/Equalization.cpp:2511
msgid "Delete"
msgstr "Izbriši"
@@ -3252,8 +3125,7 @@ msgstr "Libsamplerate, Erik de Castro Lopo"
msgid "Libsamplerate error: %d\n"
msgstr "Greška Libsamplerate: %d\n"
-#: Resample.cpp:240
-#: Resample.cpp:250
+#: Resample.cpp:240 Resample.cpp:250
msgid "Resampling disabled."
msgstr "Ponovno uzimanje uzoraka onemoguÄeno."
@@ -3272,6 +3144,163 @@ msgstr "24-bitni PCM"
msgid "32-bit float"
msgstr "32-bitni realni"
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
+
+#: export/ExportMultiple.cpp:204 prefs/DirectoriesPrefs.cpp:92
+msgid "Choose..."
+msgstr "Izaberi ..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
+
+#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
+msgid "false"
+msgstr "netaÄno"
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr "Alati"
+
+#: toolbars/ControlToolBar.cpp:82
+msgid "Control"
+msgstr "Upravljanje"
+
+#: toolbars/MixerToolBar.cpp:58
+msgid "Mixer"
+msgstr "Mikser"
+
+#: toolbars/MeterToolBar.cpp:50
+msgid "Meter"
+msgstr "MjeraÄ"
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
+#: toolbars/DeviceToolBar.cpp:54
+msgid "Device"
+msgstr "UreÄaj"
+
+#: toolbars/TranscriptionToolBar.cpp:82
+msgid "Transcription"
+msgstr "Prepis"
+
+#: TrackPanel.cpp:448 TrackPanel.cpp:449
+msgid "Track Panel"
+msgstr "Podprozor s trakom"
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: export/ExportMultiple.cpp:246
+msgid "Tracks"
+msgstr "Trake"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
#: Screenshot.cpp:384
msgid "Saved "
msgstr "Spremljeno "
@@ -3280,14 +3309,15 @@ msgstr "Spremljeno "
msgid "Error trying to save file: "
msgstr "Greška pri spremanju datoteke: "
-#: Sequence.cpp:732
-#: Sequence.cpp:742
-#: Sequence.cpp:749
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
+#: Sequence.cpp:732 Sequence.cpp:742 Sequence.cpp:749
msgid "Gap detected in project file\n"
msgstr "U projektnoj datoteci je opažena rupa/razmak\n"
-#: ShuttleGui.cpp:1852
-#: effects/Effect.cpp:330
+#: ShuttleGui.cpp:1852 effects/Effect.cpp:330
#: effects/audiounits/AudioUnitEffect.cpp:872
msgid "Pre&view"
msgstr "Pre&gled"
@@ -3328,8 +3358,7 @@ msgstr "Naslov albuma"
msgid "Track Number"
msgstr "Broj trake"
-#: Tags.cpp:625
-#: Tags.cpp:2105
+#: Tags.cpp:625 Tags.cpp:2105
msgid "Year"
msgstr "Godina"
@@ -3337,9 +3366,7 @@ msgstr "Godina"
msgid "Genre"
msgstr "Žanr"
-#: Tags.cpp:627
-#: Tags.cpp:2115
-#: prefs/MousePrefs.cpp:96
+#: Tags.cpp:627 Tags.cpp:2115 prefs/MousePrefs.cpp:96
msgid "Comments"
msgstr "Komentari"
@@ -3355,9 +3382,7 @@ msgstr "Ime oznake"
msgid "Tag Value"
msgstr "Vrijednost oznake"
-#: Tags.cpp:785
-#: Tags.cpp:1443
-#: prefs/KeyConfigPrefs.cpp:116
+#: Tags.cpp:785 Tags.cpp:1443 prefs/KeyConfigPrefs.cpp:116
msgid "&Clear"
msgstr "O&Äisti"
@@ -3373,23 +3398,15 @@ msgstr ""
msgid "Rese&t..."
msgstr ""
-#: Tags.cpp:801
-#: Tags.cpp:1427
-#: Tags.cpp:1955
+#: Tags.cpp:801 Tags.cpp:1427 Tags.cpp:1955
msgid "Template"
msgstr "Å ablon"
-#: Tags.cpp:805
-#: Tags.cpp:1431
-#: Tags.cpp:1959
-#: prefs/KeyConfigPrefs.cpp:126
+#: Tags.cpp:805 Tags.cpp:1431 Tags.cpp:1959 prefs/KeyConfigPrefs.cpp:126
msgid "&Load..."
msgstr "&UÄitaj ..."
-#: Tags.cpp:806
-#: Tags.cpp:1432
-#: Tags.cpp:1960
-#: prefs/KeyConfigPrefs.cpp:125
+#: Tags.cpp:806 Tags.cpp:1432 Tags.cpp:1960 prefs/KeyConfigPrefs.cpp:125
msgid "&Save..."
msgstr "&Spremi ..."
@@ -3397,45 +3414,26 @@ msgstr "&Spremi ..."
msgid "S&et Default"
msgstr "&Postavi podrazumijevano"
-#: Tags.cpp:958
-#: Tags.cpp:1597
-#: Tags.cpp:2326
+#: Tags.cpp:958 Tags.cpp:1597 Tags.cpp:2326
msgid "Edit Genres"
msgstr "Uredi žanrove"
-#: Tags.cpp:991
-#: Tags.cpp:1003
-#: Tags.cpp:1019
-#: Tags.cpp:1032
-#: Tags.cpp:1635
-#: Tags.cpp:1647
-#: Tags.cpp:1663
-#: Tags.cpp:1676
-#: Tags.cpp:2369
-#: Tags.cpp:2381
-#: Tags.cpp:2397
-#: Tags.cpp:2410
+#: Tags.cpp:991 Tags.cpp:1003 Tags.cpp:1019 Tags.cpp:1032 Tags.cpp:1635
+#: Tags.cpp:1647 Tags.cpp:1663 Tags.cpp:1676 Tags.cpp:2369 Tags.cpp:2381
+#: Tags.cpp:2397 Tags.cpp:2410
msgid "Reset Genres"
msgstr "Ponovo postavi žanrove "
-#: Tags.cpp:991
-#: Tags.cpp:1032
-#: Tags.cpp:1635
-#: Tags.cpp:1676
-#: Tags.cpp:2369
+#: Tags.cpp:991 Tags.cpp:1032 Tags.cpp:1635 Tags.cpp:1676 Tags.cpp:2369
#: Tags.cpp:2410
msgid "Unable to save genre file."
msgstr "Datoteku žanrova nije moguÄe spremiti."
-#: Tags.cpp:1002
-#: Tags.cpp:1646
-#: Tags.cpp:2380
+#: Tags.cpp:1002 Tags.cpp:1646 Tags.cpp:2380
msgid "Are you sure you want to reset the genre list to defaults?"
msgstr "Da li ste sigurni da želite datoteku žanrova ponovo postaviti na podrazumijevano?"
-#: Tags.cpp:1019
-#: Tags.cpp:1663
-#: Tags.cpp:2397
+#: Tags.cpp:1019 Tags.cpp:1663 Tags.cpp:2397
msgid "Unable to open genre file."
msgstr "Datoteku žanrova nije moguÄe otvoriti."
@@ -3443,21 +3441,19 @@ msgstr "Datoteku žanrova nije moguÄe otvoriti."
msgid "Load Metadata As:"
msgstr ""
-#: Tags.cpp:1079
-#: Tags.cpp:1730
-#: Tags.cpp:2453
+#: Tags.cpp:1079 Tags.cpp:1730 Tags.cpp:2453
msgid "Error loading metadata"
msgstr "GreÅ¡ka pri uÄitavanju metapodataka"
-#: Tags.cpp:1054
-#: Tags.cpp:1108
-#: Tags.cpp:1709
-#: Tags.cpp:1745
-#: Tags.cpp:2432
+#: Tags.cpp:1054 Tags.cpp:1108 Tags.cpp:1709 Tags.cpp:1745 Tags.cpp:2432
#: Tags.cpp:2468
msgid "Save Metadata As:"
msgstr "Spremi metapodatke kao:"
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
#: Theme.cpp:638
#, c-format
msgid "Audacity could not write file:\n"
@@ -3490,8 +3486,7 @@ msgstr "Audacity nije mogao naÄi datoteku:\n"
" %s.\n"
"Tema nije bila uÄitana."
-#: Theme.cpp:807
-#: Theme.cpp:896
+#: Theme.cpp:807 Theme.cpp:896
#, c-format
msgid "Audacity could not load file:\n"
" %s.\n"
@@ -3515,8 +3510,7 @@ msgstr "Nijednu od oÄekivanih datoteka komponenti teme\n"
" nije bilo moguÄe naÄi v:\n"
" %s."
-#: Theme.cpp:942
-#: effects/NoiseRemoval.cpp:173
+#: Theme.cpp:942 effects/NoiseRemoval.cpp:173
#, c-format
msgid "Could not create directory:\n"
" %s"
@@ -3547,6 +3541,14 @@ msgstr "Trajanje"
msgid "Audacity Timer Record"
msgstr "Vremensko snimanje Audacity"
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
#: SmartRecordDialog.cpp:223
msgid "Recording start"
msgstr "PoÄetak snimanja"
@@ -3586,40 +3588,23 @@ msgstr "Äeka se na poÄetak snimanja u %s. \n"
msgid "Audacity Timer Record - Waiting for Start"
msgstr ""
-#: TrackPanel.cpp:448
-#: TrackPanel.cpp:449
-msgid "Track Panel"
-msgstr "Podprozor s trakom"
-
-#: TrackPanel.cpp:492
-#: export/ExportPCM.cpp:133
-#: prefs/QualityPrefs.cpp:97
+#: TrackPanel.cpp:492 export/ExportPCM.cpp:133 prefs/QualityPrefs.cpp:97
msgid "Other..."
msgstr "Drugo ..."
-#: TrackPanel.cpp:500
-#: TrackPanel.cpp:521
-#: TrackPanel.cpp:530
-#: TrackPanel.cpp:538
+#: TrackPanel.cpp:500 TrackPanel.cpp:521 TrackPanel.cpp:530 TrackPanel.cpp:538
msgid "Name..."
msgstr "Ime ..."
-#: TrackPanel.cpp:502
-#: TrackPanel.cpp:523
-#: TrackPanel.cpp:534
-#: TrackPanel.cpp:540
+#: TrackPanel.cpp:502 TrackPanel.cpp:523 TrackPanel.cpp:534 TrackPanel.cpp:540
msgid "Move Track Up"
msgstr "Pomakni traku gore"
-#: TrackPanel.cpp:503
-#: TrackPanel.cpp:524
-#: TrackPanel.cpp:535
-#: TrackPanel.cpp:541
+#: TrackPanel.cpp:503 TrackPanel.cpp:524 TrackPanel.cpp:535 TrackPanel.cpp:541
msgid "Move Track Down"
msgstr "Pomakni traku dolje"
-#: TrackPanel.cpp:505
-#: effects/ToneGen.cpp:303
+#: TrackPanel.cpp:505 effects/ToneGen.cpp:303
msgid "Waveform"
msgstr "Talasni oblik"
@@ -3635,18 +3620,15 @@ msgstr ""
msgid "Pitch (EAC)"
msgstr "Visina tona (EAC)"
-#: TrackPanel.cpp:510
-#: TrackPanel.cpp:5831
+#: TrackPanel.cpp:510 TrackPanel.cpp:5831
msgid "Mono"
msgstr "Mono"
-#: TrackPanel.cpp:511
-#: TrackPanel.cpp:5830
+#: TrackPanel.cpp:511 TrackPanel.cpp:5830
msgid "Left Channel"
msgstr "Lijevi kanal"
-#: TrackPanel.cpp:512
-#: TrackPanel.cpp:5830
+#: TrackPanel.cpp:512 TrackPanel.cpp:5830
msgid "Right Channel"
msgstr "Desni kanal"
@@ -3658,12 +3640,15 @@ msgstr "Napravi stereo traku"
msgid "Split Stereo Track"
msgstr "Razdvoji stereo traku"
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr ""
+
#: TrackPanel.cpp:516
msgid "Set Sample Format"
msgstr "Postavi oblik uzorka"
-#: TrackPanel.cpp:518
-#: TrackPanel.cpp:6048
+#: TrackPanel.cpp:518 TrackPanel.cpp:6048
msgid "Set Rate"
msgstr "Postavi frekvenciju"
@@ -3683,8 +3668,7 @@ msgstr "Vrsta slova ..."
msgid "Set Range..."
msgstr "Postavi opseg ..."
-#: TrackPanel.cpp:547
-#: toolbars/EditToolBar.cpp:135
+#: TrackPanel.cpp:547 toolbars/EditToolBar.cpp:135
msgid "Copy"
msgstr "Kopiraj"
@@ -3730,21 +3714,13 @@ msgstr "Kliknite i povucite, da bi pomjerili lijevi okvir izbora."
msgid "Click and drag to move right selection boundary."
msgstr "Kliknite i povucite, da bi pomjerili desni okvir izbora."
-#: TrackPanel.cpp:1669
-#: TrackPanel.cpp:3777
-#: TrackPanel.cpp:3809
-#: TrackPanel.cpp:4064
-#: TrackPanel.cpp:6160
-#: TrackPanel.cpp:6180
+#: TrackPanel.cpp:1669 TrackPanel.cpp:3777 TrackPanel.cpp:3809
+#: TrackPanel.cpp:4064 TrackPanel.cpp:6160 TrackPanel.cpp:6180
msgid "Modified Label"
msgstr "Promijenjena oznaka"
-#: TrackPanel.cpp:1670
-#: TrackPanel.cpp:3778
-#: TrackPanel.cpp:3810
-#: TrackPanel.cpp:4065
-#: TrackPanel.cpp:6161
-#: TrackPanel.cpp:6181
+#: TrackPanel.cpp:1670 TrackPanel.cpp:3778 TrackPanel.cpp:3810
+#: TrackPanel.cpp:4065 TrackPanel.cpp:6161 TrackPanel.cpp:6181
msgid "Label Edit"
msgstr "Uredi oznaku"
@@ -3752,8 +3728,7 @@ msgstr "Uredi oznaku"
msgid "Adjusted envelope."
msgstr "PrilagoÄena ovojnica."
-#: TrackPanel.cpp:1898
-#: prefs/MousePrefs.cpp:115
+#: TrackPanel.cpp:1898 prefs/MousePrefs.cpp:115
msgid "Envelope"
msgstr "Ovojnica"
@@ -3775,9 +3750,7 @@ msgstr "desno"
msgid "Time shifted tracks/clips %s %.02f seconds"
msgstr "Vremenski pomjerene trake/snimci %s %.02f sekundi"
-#: TrackPanel.cpp:2044
-#: prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:112
+#: TrackPanel.cpp:2044 prefs/MousePrefs.cpp:111 prefs/MousePrefs.cpp:112
#: prefs/MousePrefs.cpp:113
msgid "Time-Shift"
msgstr "Vremenski pomak"
@@ -3816,39 +3789,29 @@ msgid "Moved pan slider"
msgstr "Pomjeren potenciometar poravnanja"
#. i18n-hint: Title of the Gain slider, used to adjust the volume
-#: TrackPanel.cpp:3269
-#: TrackPanel.cpp:5478
-#: TrackPanel.cpp:6829
+#: TrackPanel.cpp:3269 TrackPanel.cpp:5478 TrackPanel.cpp:6829
msgid "Gain"
msgstr "PojaÄanje"
#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: TrackPanel.cpp:3269
-#: TrackPanel.cpp:5416
-#: TrackPanel.cpp:6836
+#: TrackPanel.cpp:3269 TrackPanel.cpp:5416 TrackPanel.cpp:6836
msgid "Pan"
msgstr "Pomjeranje"
-#: TrackPanel.cpp:3394
-#: TrackPanel.cpp:6113
-#: effects/ChangePitch.cpp:284
+#: TrackPanel.cpp:3394 TrackPanel.cpp:6113 effects/ChangePitch.cpp:284
msgid "up"
msgstr "gore"
-#: TrackPanel.cpp:3398
-#: TrackPanel.cpp:6114
-#: effects/ChangePitch.cpp:284
+#: TrackPanel.cpp:3398 TrackPanel.cpp:6114 effects/ChangePitch.cpp:284
msgid "down"
msgstr "dolje"
-#: TrackPanel.cpp:3405
-#: TrackPanel.cpp:6109
+#: TrackPanel.cpp:3405 TrackPanel.cpp:6109
#, c-format
msgid "Moved '%s' %s"
msgstr "Pomjereno '%s' %s"
-#: TrackPanel.cpp:3408
-#: TrackPanel.cpp:6115
+#: TrackPanel.cpp:3408 TrackPanel.cpp:6115
msgid "Move Track"
msgstr "Pomjeri traku"
@@ -3880,14 +3843,6 @@ msgstr "PrilagoÄeni pomak"
msgid "Adjusted gain"
msgstr "PrilagoÄeno pojaÄanje"
-#: TrackPanel.cpp:5796
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5797
-msgid "Clear any grouping"
-msgstr ""
-
#: TrackPanel.cpp:5658
msgid "Can't delete track with active audio"
msgstr "Traku s aktivnim zvukom nije moguÄe izbrisati"
@@ -3908,8 +3863,7 @@ msgstr "Lijevo, "
msgid "Right, "
msgstr "Desno, "
-#: TrackPanel.cpp:5840
-#: TrackPanel.cpp:5953
+#: TrackPanel.cpp:5840 TrackPanel.cpp:5953
#, c-format
msgid "Changed '%s' to %s"
msgstr "Promijenjeno: '%s' v %s"
@@ -3923,6 +3877,11 @@ msgstr "Kanal"
msgid "Split stereo track '%s'"
msgstr "Razdvoji stereo traku '%s'"
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
#: TrackPanel.cpp:5879
#, c-format
msgid "Made '%s' a stereo track"
@@ -3949,8 +3908,7 @@ msgstr "Promjena formata:"
msgid "Change lower speed limit (%) to:"
msgstr "Promijeni donju granicu brzine (%) na:"
-#: TrackPanel.cpp:6078
-#: TrackPanel.cpp:6079
+#: TrackPanel.cpp:6078 TrackPanel.cpp:6079
msgid "Lower speed limit"
msgstr "Donja granica brzine"
@@ -3958,8 +3916,7 @@ msgstr "Donja granica brzine"
msgid "Change upper speed limit (%) to:"
msgstr "Promijeni gornju granicu brzine (%) na:"
-#: TrackPanel.cpp:6085
-#: TrackPanel.cpp:6086
+#: TrackPanel.cpp:6085 TrackPanel.cpp:6086
msgid "Upper speed limit"
msgstr "Gornja granica brzine"
@@ -4001,6 +3958,10 @@ msgstr "Ime vrste slova"
msgid "Face size"
msgstr "VeliÄina vrste slova"
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr ""
+
#: TrackPanel.cpp:6756
msgid "Mute"
msgstr "Utišaj"
@@ -4034,10 +3995,7 @@ msgstr " Solo ukljuÄeno"
msgid " Select On"
msgstr " Izabrano"
-#: VoiceKey.cpp:88
-#: VoiceKey.cpp:238
-#: VoiceKey.cpp:376
-#: VoiceKey.cpp:517
+#: VoiceKey.cpp:88 VoiceKey.cpp:238 VoiceKey.cpp:376 VoiceKey.cpp:517
msgid "Selection is too small to use voice key."
msgstr "Izbor je premli za upotrebo glasovnog kljuÄa."
@@ -4064,8 +4022,7 @@ msgstr "Promjene pravca -- sr.vred.: %1.4f st.dev.: (%1.4f)\n"
msgid "Audio Track"
msgstr "ZvuÄna traka"
-#: WaveTrack.cpp:547
-#: WaveTrack.cpp:566
+#: WaveTrack.cpp:547 WaveTrack.cpp:566
msgid "There is not enough room available to paste the selection"
msgstr "Nema dovoljno prostora, da bi priljepili izbor"
@@ -4083,10 +4040,10 @@ msgstr "PrikljuÄci 1 do %i"
msgid "Plugins %i to %i"
msgstr "PrikljuÄci %i do %i"
-#: commands/CommandManager.cpp:857
-#, fuzzy
-msgid "Disallowed for some reason. Try selecting some audio first?"
-msgstr "Iz nekog razloga to nije dozvoljeno. Probajte prvoj izabrati neki zvuk?"
+#: commands/CommandManager.cpp:923
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
+msgstr ""
#: commands/CommandManager.cpp:724
msgid "You can only do this when playing and recording are\n"
@@ -4169,9 +4126,7 @@ msgstr "PojaÄavanje"
msgid "You selected a track which does not contain audio. AutoDuck can only process audio tracks."
msgstr "Izbrali ste traku, koja ne sadrži zvuk. Automatsko spuÅ¡tanje može procesirati samo zvuÄne trake."
-#: effects/AutoDuck.cpp:126
-#: effects/AutoDuck.cpp:138
-#: effects/AutoDuck.cpp:453
+#: effects/AutoDuck.cpp:126 effects/AutoDuck.cpp:138 effects/AutoDuck.cpp:453
#: effects/AutoDuck.cpp:570
msgid "Auto Duck"
msgstr "Automatski spusti"
@@ -4192,17 +4147,11 @@ msgstr "KoliÄina spusta:"
msgid "Maximum pause:"
msgstr "Maksimalna pauza:"
-#: effects/AutoDuck.cpp:494
-#: effects/AutoDuck.cpp:499
-#: effects/AutoDuck.cpp:504
-#: effects/AutoDuck.cpp:509
-#: effects/AutoDuck.cpp:514
-#: prefs/AudioIOPrefs.cpp:166
-#: prefs/AudioIOPrefs.cpp:174
-#: prefs/AudioIOPrefs.cpp:176
-#: prefs/AudioIOPrefs.cpp:201
-#: prefs/AudioIOPrefs.cpp:203
-#: widgets/TimeTextCtrl.cpp:197
+#: effects/AutoDuck.cpp:494 effects/AutoDuck.cpp:499 effects/AutoDuck.cpp:504
+#: effects/AutoDuck.cpp:509 effects/AutoDuck.cpp:514
+#: prefs/AudioIOPrefs.cpp:166 prefs/AudioIOPrefs.cpp:174
+#: prefs/AudioIOPrefs.cpp:176 prefs/AudioIOPrefs.cpp:201
+#: prefs/AudioIOPrefs.cpp:203 widgets/TimeTextCtrl.cpp:197
msgid "seconds"
msgstr "sekundi"
@@ -4222,8 +4171,7 @@ msgstr "Dužina unutrašnjeg poslabljenja:"
msgid "Inner fade up length:"
msgstr "Dužina unutraÅ¡njeg jaÄanja:"
-#: effects/AutoDuck.cpp:521
-#: effects/Compressor.cpp:484
+#: effects/AutoDuck.cpp:521 effects/Compressor.cpp:484
msgid "Threshold:"
msgstr "Prag:"
@@ -4243,12 +4191,9 @@ msgstr "Automatski spusti ..."
msgid "Processing Auto Duck..."
msgstr "Procesiranje automatskog spuštanja ..."
-#: effects/AvcCompressor.cpp:738
-#: effects/VST/VSTEffect.cpp:448
-#: effects/audiounits/AudioUnitEffect.cpp:877
-#: effects/nyquist/Nyquist.cpp:1040
-#: widgets/ErrorDialog.cpp:74
-#: widgets/ErrorDialog.cpp:100
+#: effects/AvcCompressor.cpp:738 effects/VST/VSTEffect.cpp:448
+#: effects/audiounits/AudioUnitEffect.cpp:877 effects/nyquist/Nyquist.cpp:1040
+#: widgets/ErrorDialog.cpp:74 widgets/ErrorDialog.cpp:100
#: widgets/Warning.cpp:67
msgid "OK"
msgstr "U redu"
@@ -4313,14 +4258,12 @@ msgstr "Promijeni visinu tona brez spremembe tempa"
#. i18n-hint: && in here is an escape character to get a single & on
#. * screen, so keep it as is
-#: effects/ChangePitch.cpp:254
-#: effects/ChangeSpeed.cpp:313
+#: effects/ChangePitch.cpp:254 effects/ChangeSpeed.cpp:313
#: effects/ChangeTempo.cpp:180
msgid "by Vaughan Johnson && Dominic Mazzoni"
msgstr "avtorja Vauhgan Johnson i Dominic Mazzoni"
-#: effects/ChangePitch.cpp:259
-#: effects/ChangeTempo.cpp:185
+#: effects/ChangePitch.cpp:259 effects/ChangeTempo.cpp:185
msgid "using SoundTouch, by Olli Parviainen"
msgstr "uporabljen SoundTouch Ollija Parvianena"
@@ -4369,10 +4312,8 @@ msgstr ""
msgid "From frequency in hertz"
msgstr ""
-#: effects/ChangePitch.cpp:291
-#: effects/ChangePitch.cpp:337
-#: effects/ChangeSpeed.cpp:377
-#: effects/ChangeTempo.cpp:239
+#: effects/ChangePitch.cpp:291 effects/ChangePitch.cpp:337
+#: effects/ChangeSpeed.cpp:377 effects/ChangeTempo.cpp:239
#: effects/ChangeTempo.cpp:270
msgid "to"
msgstr "do"
@@ -4381,8 +4322,7 @@ msgstr "do"
msgid "To frequency in seconds"
msgstr ""
-#: effects/ChangePitch.cpp:360
-#: effects/ChangeSpeed.cpp:331
+#: effects/ChangePitch.cpp:360 effects/ChangeSpeed.cpp:331
#: effects/ChangeTempo.cpp:198
msgid "Percent Change:"
msgstr "Sprememba v odstotkih"
@@ -4400,8 +4340,7 @@ msgstr "Promijeni visinu tona ..."
msgid "Changing Pitch"
msgstr "Promjena visine tona"
-#: effects/ChangeSpeed.cpp:53
-#: effects/ChangeTempo.cpp:55
+#: effects/ChangeSpeed.cpp:53 effects/ChangeTempo.cpp:55
#, c-format
msgid "Applied effect: %s %.1f%%"
msgstr "Primjenjen efekt: %s %1f%%"
@@ -4553,12 +4492,11 @@ msgstr "Vrijeme opadanja: "
msgid "Decay Time"
msgstr ""
-#: effects/Compressor.cpp:516
-msgid "Normalize to 0dB after compressing"
-msgstr "Po kompresiji normaliziraj na 0dB"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
+msgstr ""
#: effects/Compressor.cpp:563
-#, c-format
#, fuzzy
msgid "Threshold %d dB"
msgstr "Prag: %d dB"
@@ -4589,7 +4527,6 @@ msgid "%.1f:1"
msgstr ""
#: effects/Compressor.cpp:575
-#, c-format
#, fuzzy
msgid "Attack Time %.1f secs"
msgstr "Trajanje napada: %.1f s"
@@ -4600,7 +4537,6 @@ msgid "%.1f secs"
msgstr ""
#: effects/Compressor.cpp:578
-#, c-format
#, fuzzy
msgid "Decay Time %.1f secs"
msgstr "Vrijeme opadanja: %.1f s"
@@ -4613,6 +4549,10 @@ msgstr "Kompresor ..."
msgid "Applying Dynamic Range Compression..."
msgstr "Primjena kompresije dinamiÄnog opsega ..."
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
msgstr ""
@@ -4632,19 +4572,6 @@ msgid "Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
-#: effects/Contrast.cpp:190
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:277 effects/Contrast.cpp:288 effects/Contrast.cpp:371
-#: effects/Contrast.cpp:415
-msgid "Measured"
-msgstr ""
-
#: effects/Contrast.cpp:318
msgid "Contrast Analyzer"
msgstr ""
@@ -4653,15 +4580,12 @@ msgstr ""
msgid "Parameters"
msgstr ""
-#: effects/ToneGen.cpp:338
-#: toolbars/ControlToolBar.cpp:185
+#: effects/ToneGen.cpp:338 toolbars/ControlToolBar.cpp:185
msgid "Start"
msgstr "PoÄetak"
-#: effects/ToneGen.cpp:339
-#: toolbars/ControlToolBar.cpp:188
-#: toolbars/SelectionBar.cpp:141
-#: toolbars/SelectionBar.cpp:242
+#: effects/ToneGen.cpp:339 toolbars/ControlToolBar.cpp:188
+#: toolbars/SelectionBar.cpp:141 toolbars/SelectionBar.cpp:242
msgid "End"
msgstr "Kraj"
@@ -4681,6 +4605,11 @@ msgstr ""
msgid "Foreground end time"
msgstr ""
+#: effects/Contrast.cpp:277 effects/Contrast.cpp:288 effects/Contrast.cpp:371
+#: effects/Contrast.cpp:415
+msgid "Measured"
+msgstr ""
+
#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
msgid "Use selection"
msgstr ""
@@ -4705,8 +4634,7 @@ msgstr ""
msgid "Contrast Result:"
msgstr ""
-#: Tags.cpp:796
-#: Tags.cpp:1948
+#: Tags.cpp:796 Tags.cpp:1948
msgid "Reset"
msgstr "Ponovo postavi"
@@ -4726,16 +4654,8 @@ msgstr ""
msgid "Help for WCAG2 Audio Contrast Analyzer"
msgstr ""
-#: toolbars/ControlToolBar.cpp:82
-msgid "Control"
-msgstr "Upravljanje"
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
msgstr ""
#: effects/Contrast.cpp:466 effects/Contrast.cpp:472 effects/Contrast.cpp:478
@@ -4846,18 +4766,6 @@ msgstr ""
msgid "Data gathered"
msgstr ""
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:52
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:54
-msgid "Measuring foreground"
-msgstr ""
-
#: effects/DtmfGen.cpp:48
msgid "DTMF Tone Generator"
msgstr "DTMF ton generator"
@@ -4870,9 +4778,7 @@ msgstr "autor Salvo Ventura (2006)"
msgid "DTMF sequence:"
msgstr "DTMF sekvenca:"
-#: effects/DtmfGen.cpp:444
-#: effects/Noise.cpp:255
-#: effects/ToneGen.cpp:306
+#: effects/DtmfGen.cpp:444 effects/Noise.cpp:255 effects/ToneGen.cpp:306
#: effects/ToneGen.cpp:342
msgid "Amplitude (0-1)"
msgstr "Amplituda (0-1)"
@@ -4893,9 +4799,7 @@ msgstr "Ciklus djelovanja:"
msgid "Tone duration:"
msgstr "Trajanje tona:"
-#: effects/DtmfGen.cpp:478
-#: effects/DtmfGen.cpp:480
-#: effects/DtmfGen.cpp:556
+#: effects/DtmfGen.cpp:478 effects/DtmfGen.cpp:480 effects/DtmfGen.cpp:556
#: effects/DtmfGen.cpp:557
msgid "ms"
msgstr "ms"
@@ -4977,8 +4881,7 @@ msgstr "kosinusni"
msgid "Cubic"
msgstr "kubni"
-#: effects/Equalization.cpp:353
-#: effects/Equalization.cpp:404
+#: effects/Equalization.cpp:353 effects/Equalization.cpp:404
msgid "Equalization"
msgstr "IzjednaÄavanje"
@@ -4990,6 +4893,10 @@ msgstr "GreÅ¡ka pri uÄitavanju krivulje izjednaÄivaÄa (EQ)"
msgid "custom"
msgstr "PrilagoÄeno"
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr ""
+
#. i18n-hint: && in here is an escape character to get a single &
#. * on screen, so keep it as is
#: effects/Equalization.cpp:1081
@@ -5028,8 +4935,7 @@ msgstr "Dužina filtera:"
msgid "Select curve:"
msgstr "Izaberite krivulju:"
-#: effects/Equalization.cpp:1253
-#: effects/Equalization.cpp:2416
+#: effects/Equalization.cpp:1253 effects/Equalization.cpp:2416
msgid "Save As..."
msgstr "Spremi kao ..."
@@ -5145,8 +5051,7 @@ msgstr "NajjaÄe"
msgid "by Lynn Allan"
msgstr "autora Lynna Allana"
-#: effects/Leveller.cpp:219
-#: effects/Leveller.cpp:224
+#: effects/Leveller.cpp:219 effects/Leveller.cpp:224
msgid "Degree of Leveling"
msgstr "Stepen izravnavanja"
@@ -5195,10 +5100,6 @@ msgstr ""
msgid "Analyser"
msgstr ""
-#: toolbars/MixerToolBar.cpp:58
-msgid "Mixer"
-msgstr "Mikser"
-
#: effects/LoadEffects.cpp:117
msgid "Simulator"
msgstr ""
@@ -5437,13 +5338,7 @@ msgstr "Odstranjivanje šuma"
msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr "Primjenjen efekt: %s odstranjivanje dc pomaka = %s, normalizacija amplitude = %s"
-#: effects/Normalize.cpp:70
-#: effects/Normalize.cpp:71
-msgid "false"
-msgstr "netaÄno"
-
-#: effects/Normalize.cpp:70
-#: effects/Normalize.cpp:71
+#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
msgid "true"
msgstr "taÄno"
@@ -5502,8 +5397,7 @@ msgstr ""
msgid "Dry Wet"
msgstr ""
-#: effects/Phaser.cpp:264
-#: effects/Wahwah.cpp:221
+#: effects/Phaser.cpp:264 effects/Wahwah.cpp:221
msgid "LFO Frequency (Hz):"
msgstr "Frekvencija LFO (Hz):"
@@ -5511,8 +5405,7 @@ msgstr "Frekvencija LFO (Hz):"
msgid "LFO frequency in hertz"
msgstr ""
-#: effects/Phaser.cpp:280
-#: effects/Wahwah.cpp:237
+#: effects/Phaser.cpp:280 effects/Wahwah.cpp:237
msgid "LFO Start Phase (deg.):"
msgstr "PoÄetna faza LFO (step.):"
@@ -5573,8 +5466,7 @@ msgstr "Ponovljeno %d-puta"
msgid "Tracks are too long to repeat the selection."
msgstr "Trake su preduge za ponavljanje izbora."
-#: effects/Repeat.cpp:76
-#: effects/Repeat.cpp:80
+#: effects/Repeat.cpp:76 effects/Repeat.cpp:80
msgid "Repeat"
msgstr "Ponovi"
@@ -5587,8 +5479,7 @@ msgstr "Broj ponavljanja"
msgid "New selection length: hh:mm:ss"
msgstr ""
-#: effects/Repeat.cpp:207
-#: effects/Repeat.cpp:237
+#: effects/Repeat.cpp:207 effects/Repeat.cpp:237
msgid "New selection length: "
msgstr "Nova dužina izbora:"
@@ -5750,8 +5641,7 @@ msgstr "ZupÄasti"
msgid "Square, no alias"
msgstr "Kvadratni, bez aliasa"
-#: effects/ToneGen.cpp:305
-#: effects/ToneGen.cpp:340
+#: effects/ToneGen.cpp:305 effects/ToneGen.cpp:340
msgid "Frequency (Hz)"
msgstr "Frekvencija (Hz)"
@@ -5799,28 +5689,43 @@ msgstr "Generisanje tona"
msgid "All tracks must have the same sample rate"
msgstr "Sve trake moraju imati jednaku frekvenciju uzimanja uzoraka."
-#: effects/TruncSilence.cpp:113
-#: effects/TruncSilence.cpp:322
+#: effects/TruncSilence.cpp:113 effects/TruncSilence.cpp:322
msgid "Truncate Silence"
msgstr "Presjeci tišinu"
-#: effects/TruncSilence.cpp:346
-msgid "Max silence duration:"
-msgstr "NajveÄe trajanje tiÅ¡ine:"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr ""
+
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
+msgstr ""
-#: effects/TruncSilence.cpp:349
-#: prefs/AudioIOPrefs.cpp:190
+#: effects/TruncSilence.cpp:349 prefs/AudioIOPrefs.cpp:190
#: prefs/AudioIOPrefs.cpp:193
msgid "milliseconds"
msgstr "milisekundi"
+#: effects/TruncSilence.cpp:346
+msgid "Max silence duration:"
+msgstr "NajveÄe trajanje tiÅ¡ine:"
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ""
+
#: effects/TruncSilence.cpp:351
msgid "Threshold for silence:"
msgstr "Prag tišine:"
-#: effects/TruncSilence.cpp:375
-msgid " Duration must be at least 1 millisecond"
-msgstr " Trajanje mora biti najmanje 1 milisekundu."
+#: effects/TruncSilence.cpp:506
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
+msgstr ""
#: effects/TruncSilence.h:28
msgid "Truncate Silence..."
@@ -5830,17 +5735,55 @@ msgstr "Presjeci tišinu ..."
msgid "Truncating Silence..."
msgstr "Presjecanje tišine..."
-#: effects/VST/VSTEffect.cpp:165
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "Nažalost, VST efekti se ne mogu izvesti na stereo snimcima, jer se pojedinaÄni kanali ne slažu."
+#: effects/ladspa/LadspaEffect.cpp:608
+msgid "Effect Settings"
+msgstr "Postavke efekta"
+
+#: effects/ladspa/LadspaEffect.cpp:573 effects/ladspa/LadspaEffect.cpp:581
+#: prefs/QualityPrefs.cpp:72
+msgid "None"
+msgstr "Prazno"
+
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
-#: effects/VST/VSTEffect.cpp:180
-msgid "Can't process replacing"
-msgstr "Izmjenu nije moguÄe izvesti"
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
-#: effects/VST/VSTEffect.cpp:403
-msgid "VST Plug-in parameters:"
-msgstr "Parametri prikljuÄka VST:"
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr ""
#: effects/Wahwah.cpp:61
#, c-format
@@ -5889,21 +5832,10 @@ msgstr "IzvoÄenje efekta: %s"
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr "Nažalost, prikljuÄeni efekti se ne mogu izvesti na stereo snimcima, jer se pojedinaÄni kanali ne slažu."
-#: effects/ladspa/LadspaEffect.cpp:573
-#: effects/ladspa/LadspaEffect.cpp:581
-#: prefs/QualityPrefs.cpp:72
-msgid "None"
-msgstr "Prazno"
-
-#: effects/ladspa/LadspaEffect.cpp:575
-#: effects/vamp/VampEffect.cpp:384
+#: effects/ladspa/LadspaEffect.cpp:575 effects/vamp/VampEffect.cpp:384
msgid "Author: "
msgstr "Autor: "
-#: effects/ladspa/LadspaEffect.cpp:608
-msgid "Effect Settings"
-msgstr "Postavke efekta"
-
#: effects/ladspa/LadspaEffect.cpp:699
msgid "Length (seconds)"
msgstr "Dužina (u sekundama)"
@@ -5924,8 +5856,7 @@ msgstr ""
msgid "Applying Nyquist Effect..."
msgstr "Dodavanje efekta Nyquist ..."
-#: effects/nyquist/Nyquist.cpp:259
-#: effects/nyquist/Nyquist.cpp:321
+#: effects/nyquist/Nyquist.cpp:259 effects/nyquist/Nyquist.cpp:321
msgid "Nyquist Prompt..."
msgstr "Nyquist komanda..."
@@ -5945,8 +5876,7 @@ msgstr "Nyquist"
msgid "Nyquist Output: "
msgstr "Izlaz Nyquista:"
-#: effects/nyquist/Nyquist.cpp:596
-#: effects/nyquist/Nyquist.cpp:607
+#: effects/nyquist/Nyquist.cpp:596 effects/nyquist/Nyquist.cpp:607
msgid "Nyquist returned the value:"
msgstr "Nyquist je vratio vrijednost:"
@@ -6054,8 +5984,7 @@ msgstr " - desni"
msgid "Mixer Panel"
msgstr ""
-#: export/Export.cpp:961
-#: export/Export.cpp:1006
+#: export/Export.cpp:961 export/Export.cpp:1006
#, c-format
msgid "Output Channels: %2d"
msgstr "Izlazni kanali: %2d"
@@ -6085,8 +6014,7 @@ msgstr "Podaci Äe biti datoteÄnim cijevima proslijeÄeni na standardni ulaz. \
msgid "(external program)"
msgstr "(eksterni program)"
-#: export/ExportCL.cpp:248
-#: export/ExportPCM.cpp:367
+#: export/ExportCL.cpp:248 export/ExportPCM.cpp:367
#, c-format
msgid "Cannot export audio to %s"
msgstr "Ne mogu izvesti zvuk u %s"
@@ -6103,9 +6031,21 @@ msgstr "Izvoz cijeloga projekta upotrebom kodera komandne linije"
msgid "Command Output"
msgstr "Izlaz komande"
-#: export/ExportFFmpeg.cpp:59
+#: export/ExportFFmpeg.cpp:61
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
#: export/ExportFFmpeg.cpp:394
@@ -6173,6 +6113,10 @@ msgstr ""
msgid "AAC Export Setup"
msgstr ""
+#: export/ExportOGG.cpp:86
+msgid "Quality:"
+msgstr "Kvalitet:"
+
#: export/ExportFFmpegDialogs.cpp:211
msgid "Specify AMR-NB Options"
msgstr ""
@@ -6306,12 +6250,8 @@ msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n
"Recommended - 192000"
msgstr ""
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr "Kvalitet:"
-
-#: export/ExportFFmpegDialogs.cpp:928
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid "Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
@@ -6330,10 +6270,10 @@ msgstr ""
msgid "Cutoff Bandwidth:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:934
+#: export/ExportFFmpegDialogs.cpp:936
msgid "Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:936
@@ -6522,12 +6462,12 @@ msgstr ""
msgid "AC3 Files (FFmpeg)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:56
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:57
@@ -6638,6 +6578,17 @@ msgstr "Bitovska dubina:"
msgid "FLAC Files"
msgstr "Datoteke FLAC"
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
#: export/ExportFLAC.cpp:310
msgid "Exporting the selected audio as FLAC"
msgstr "Izvoženje izbranoga zvuka kao FLAC"
@@ -6662,9 +6613,7 @@ msgstr "Datoteke MP2"
msgid "Cannot export MP2 with this sample rate and bit rate"
msgstr "Izvoz u MP2 nije moguÄ pri toj frekvenciji uzimanja uzoraka i bitovske brzine"
-#: export/ExportMP2.cpp:243
-#: export/ExportMP3.cpp:1713
-#: export/ExportOGG.cpp:183
+#: export/ExportMP2.cpp:243 export/ExportMP3.cpp:1713 export/ExportOGG.cpp:183
msgid "Unable to open target file for writing"
msgstr "Nije moguÄe otvoriti odrediÅ¡nu datoteku za upis"
@@ -6679,24 +6628,12 @@ msgid "Exporting entire file at %d kbps"
msgstr "Izvoz cijele datoteke pri %d kb/s"
#. i18n-hint: kbps is the bitrate of the MP3 file, kilobits per second
-#: export/ExportMP3.cpp:142
-#: export/ExportMP3.cpp:143
-#: export/ExportMP3.cpp:144
-#: export/ExportMP3.cpp:145
-#: export/ExportMP3.cpp:146
-#: export/ExportMP3.cpp:147
-#: export/ExportMP3.cpp:148
-#: export/ExportMP3.cpp:149
-#: export/ExportMP3.cpp:150
-#: export/ExportMP3.cpp:151
-#: export/ExportMP3.cpp:152
-#: export/ExportMP3.cpp:153
-#: export/ExportMP3.cpp:154
-#: export/ExportMP3.cpp:155
-#: export/ExportMP3.cpp:156
-#: export/ExportMP3.cpp:157
-#: export/ExportMP3.cpp:158
-#: export/ExportMP3.cpp:159
+#: export/ExportMP3.cpp:142 export/ExportMP3.cpp:143 export/ExportMP3.cpp:144
+#: export/ExportMP3.cpp:145 export/ExportMP3.cpp:146 export/ExportMP3.cpp:147
+#: export/ExportMP3.cpp:148 export/ExportMP3.cpp:149 export/ExportMP3.cpp:150
+#: export/ExportMP3.cpp:151 export/ExportMP3.cpp:152 export/ExportMP3.cpp:153
+#: export/ExportMP3.cpp:154 export/ExportMP3.cpp:155 export/ExportMP3.cpp:156
+#: export/ExportMP3.cpp:157 export/ExportMP3.cpp:158 export/ExportMP3.cpp:159
msgid "kbps"
msgstr "kb/s"
@@ -6732,8 +6669,7 @@ msgstr ""
msgid "Specify MP3 Options"
msgstr "Odredi MP3 opcije"
-#: export/ExportMP3.cpp:264
-#: prefs/FileFormatPrefs.cpp:101
+#: export/ExportMP3.cpp:264 prefs/FileFormatPrefs.cpp:101
msgid "MP3 Export Setup"
msgstr "MP3 postavke za Izvoz"
@@ -6757,8 +6693,7 @@ msgstr "ProsjeÄno"
msgid "Constant"
msgstr "Konstanta"
-#: prefs/QualityPrefs.cpp:42
-#: prefs/QualityPrefs.cpp:43
+#: prefs/QualityPrefs.cpp:42 prefs/QualityPrefs.cpp:43
msgid "Quality"
msgstr "Kvalitet"
@@ -6878,10 +6813,8 @@ msgstr "Kombinacije frekvencije uzimanja uzoraka projekta (%d) i bitovskog uzima
msgid "MP3 export library not found"
msgstr ""
-#: export/ExportMultiple.cpp:88
-#: export/ExportMultiple.cpp:362
-#: export/ExportMultiple.cpp:609
-#: export/ExportMultiple.cpp:717
+#: export/ExportMultiple.cpp:88 export/ExportMultiple.cpp:362
+#: export/ExportMultiple.cpp:609 export/ExportMultiple.cpp:717
msgid "Export Multiple"
msgstr "Izvoz više"
@@ -6911,11 +6844,6 @@ msgstr "Opcije ..."
msgid "Export location:"
msgstr "Lokacija za izvoz:"
-#: export/ExportMultiple.cpp:204
-#: prefs/DirectoriesPrefs.cpp:92
-msgid "Choose..."
-msgstr "Izaberi ..."
-
#: export/ExportMultiple.cpp:205
msgid "Create"
msgstr "Kreiraj"
@@ -6940,10 +6868,6 @@ msgstr "Ime prve datoteke:"
msgid "First file name"
msgstr ""
-#: export/ExportMultiple.cpp:246
-msgid "Tracks"
-msgstr "Trake"
-
#: export/ExportMultiple.cpp:253
msgid "Name files:"
msgstr "Imenujte datoteke:"
@@ -6977,6 +6901,35 @@ msgstr "\"%s\" je bila uspješno kreirana."
msgid "Choose a location to save the exported files"
msgstr "Izaberite lokaciju, gdje Äe biti spremljene izvezene datoteke."
+#: export/ExportMultiple.cpp:524
+#, c-format
+msgid "Successfully exported the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:527
+#, c-format
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr ""
+
#: export/ExportMultiple.cpp:480
#, c-format
msgid "\"%s\" doesn't exist.\n"
@@ -6990,18 +6943,6 @@ msgstr "\"%s\" ne postoji.\n"
msgid "Edit metadata"
msgstr ""
-#: export/ExportMultiple.cpp:606
-#: export/ExportMultiple.cpp:714
-#, c-format
-msgid "Successfully exported %d file(s)."
-msgstr "Uspješno izvezenih %d datoteka."
-
-#: export/ExportMultiple.cpp:607
-#: export/ExportMultiple.cpp:715
-#, c-format
-msgid "Something went wrong after exporting %d file(s)."
-msgstr "Po izvozu %d datotek(e) je nešto bilo neuspješno."
-
#: export/ExportMultiple.cpp:898
#, c-format
msgid "Label %s is not a legal file name. You cannot use any of: %s\n"
@@ -7169,7 +7110,6 @@ msgstr "\"%s\" je datoteka Advanced Audio Coding. \n"
"Morate je pretvoriti u podržanu vrstu zvuÄnih datoteka, kao Å¡to su WAV i AIFF."
#: import/Import.cpp:273
-#, c-format
#, fuzzy
msgid "\"%s\" is an encrypted audio file. \n"
"These typically are from an online music store. \n"
@@ -7260,6 +7200,10 @@ msgstr ""
msgid "FLAC files"
msgstr "Datoteke FLAC"
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr ""
+
#: import/ImportLOF.cpp:92
msgid "List of Files in basic text format"
msgstr "Spisak datoteka u osnovnom tekstualnom zapisu"
@@ -7270,9 +7214,7 @@ msgid "Invalid window offset in LOF file."
msgstr "Pogrešan pomak prozora u LOF datoteci."
#. i18n-hint: You do not need to translate "LOF"
-#: import/ImportLOF.cpp:320
-#: import/ImportLOF.cpp:341
-#: import/ImportLOF.cpp:415
+#: import/ImportLOF.cpp:320 import/ImportLOF.cpp:341 import/ImportLOF.cpp:415
#: import/ImportLOF.cpp:435
msgid "LOF Error"
msgstr "Greška LOF"
@@ -7328,8 +7270,7 @@ msgstr "Nepravilno zaglavlje Vorbis bitstream"
msgid "Internal logic fault"
msgstr "Interna logiÄka greÅ¡ka"
-#: export/ExportPCM.cpp:320
-#: import/ImportPCM.cpp:47
+#: export/ExportPCM.cpp:320 import/ImportPCM.cpp:47
msgid "WAV, AIFF, and other uncompressed types"
msgstr "WAV, AIFF i druge nekompresovane vrste"
@@ -7420,36 +7361,41 @@ msgstr ""
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr ""
-#: prefs/AudioIOPrefs.cpp:41
-#: prefs/AudioIOPrefs.cpp:42
-msgid "Audio I/O"
-msgstr "ZvuÄni U/I"
+#: prefs/BatchPrefs.cpp:55 prefs/BatchPrefs.cpp:56
+msgid "Batch"
+msgstr "Paketni naÄin"
-#: prefs/AudioIOPrefs.cpp:100
-msgid "1 (Mono)"
-msgstr "1 (mono)"
+#: prefs/BatchPrefs.cpp:77 prefs/GUIPrefs.cpp:70
+msgid "Behaviors"
+msgstr "Ponašanja"
-#: prefs/AudioIOPrefs.cpp:101
-msgid "2 (Stereo)"
-msgstr "2 (stereo)"
+#: prefs/BatchPrefs.cpp:80
+msgid "&Don't apply effects in batch mode"
+msgstr "&Ne primjenjuj efekte u paketnom režimu"
-#: prefs/AudioIOPrefs.cpp:115
-msgid "Playback"
-msgstr "Reprodukcija"
+#: prefs/BatchPrefs.cpp:85
+msgid "Cl&eanSpeech Mode (Customized GUI)"
+msgstr "Režim Äisti&Govor (prilagoÄen grafiÄki interfejs)"
-#: prefs/AudioIOPrefs.cpp:119
-#: prefs/AudioIOPrefs.cpp:137
-#: toolbars/DeviceToolBar.cpp:54
-msgid "Device"
-msgstr "UreÄaj"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:33 prefs/GUIPrefs.cpp:34
+msgid "Interface"
+msgstr "Interfejs"
+
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
+msgstr ""
#: prefs/AudioIOPrefs.cpp:122
msgid "Using:"
msgstr "KoristeÄi:"
-#: prefs/AudioIOPrefs.cpp:123
-msgid "Portaudio v"
-msgstr "Portaudio v"
+#: prefs/AudioIOPrefs.cpp:115
+msgid "Playback"
+msgstr "Reprodukcija"
#: prefs/AudioIOPrefs.cpp:133
msgid "Recording"
@@ -7459,96 +7405,15 @@ msgstr "Snimanje"
msgid "Channels"
msgstr "Kanali"
-#: prefs/AudioIOPrefs.cpp:145
-msgid "Playthrough"
-msgstr "Emituj kroz"
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr "&Hardversko emitovanje kroz: Emituj novu traku tokom njenog snimanja"
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr "&Programsko emitovanje kroz: Emituj novu traku u toku njenog snimanja"
-
-#: prefs/AudioIOPrefs.cpp:158
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:161
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:162
-msgid "Effects Preview"
-msgstr "Predslušavanje efekata"
-
-#: prefs/AudioIOPrefs.cpp:165
-msgid "Length of preview:"
-msgstr "Dužina predslušanja:"
-
-#: prefs/AudioIOPrefs.cpp:170
-msgid "Cut Preview"
-msgstr "Predslušanje izrezanog"
-
-#: prefs/AudioIOPrefs.cpp:173
-msgid "Preview before cut region:"
-msgstr "PredsluÅ¡anje prije izrezanog podruÄja:"
-
-#: prefs/AudioIOPrefs.cpp:175
-msgid "Preview after cut region:"
-msgstr "PredsluÅ¡anje nakon izrezanog podruÄja:"
-
-#: prefs/AudioIOPrefs.cpp:183
-msgid "Latency"
-msgstr "Latencija"
-
-#: prefs/AudioIOPrefs.cpp:196
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:199
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:197
-msgid "Seek Time when playing"
-msgstr "Vrijeme pretrage pri reprodukciji"
-
-#: prefs/AudioIOPrefs.cpp:200
-msgid "Short period:"
-msgstr "KraÄi period:"
-
-#: prefs/AudioIOPrefs.cpp:202
-msgid "Long period:"
-msgstr "Duži period:"
-
-#: prefs/BatchPrefs.cpp:55
-#: prefs/BatchPrefs.cpp:56
-msgid "Batch"
-msgstr "Paketni naÄin"
-
-#: prefs/BatchPrefs.cpp:77
-#: prefs/GUIPrefs.cpp:70
-msgid "Behaviors"
-msgstr "Ponašanja"
-
-#: prefs/BatchPrefs.cpp:80
-msgid "&Don't apply effects in batch mode"
-msgstr "&Ne primjenjuj efekte u paketnom režimu"
+#: prefs/AudioIOPrefs.cpp:100
+msgid "1 (Mono)"
+msgstr "1 (mono)"
-#: prefs/BatchPrefs.cpp:85
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr "Režim Äisti&Govor (prilagoÄen grafiÄki interfejs)"
+#: prefs/AudioIOPrefs.cpp:101
+msgid "2 (Stereo)"
+msgstr "2 (stereo)"
-#: prefs/DirectoriesPrefs.cpp:55
-#: prefs/DirectoriesPrefs.cpp:56
+#: prefs/DirectoriesPrefs.cpp:55 prefs/DirectoriesPrefs.cpp:56
#: prefs/PrefsDialog.cpp:279
msgid "Directories"
msgstr "Direktoriji"
@@ -7565,34 +7430,31 @@ msgstr "Lokacija:"
msgid "Free Space:"
msgstr "Slobodni prostor:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr "Automatski spremi"
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr "Automatski sprema kopiju projekta u odvojeni direktorij"
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
-msgstr "Interval za automatsko spremanje"
-
-#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
-msgstr "minuta"
-
#: prefs/DirectoriesPrefs.cpp:110
msgid "Audio cache"
msgstr "ZvuÄna meÄumemorija"
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "Play and/or record using RAM (useful for slow drives)"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
#: prefs/DirectoriesPrefs.cpp:121
msgid "Choose a location to place the temporary directory"
msgstr "Izberite lokacijo, gdje Äe biti privremeni direktorij"
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: prefs/DirectoriesPrefs.cpp:166
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -7611,228 +7473,144 @@ msgstr "Direktorij %s nije upisiv"
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "Promjene u privremenom direktoriju neÄe biti efektivne do narednog starta Audacityja."
-#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
-msgid "Import / Export"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:84
-msgid "MP3 Export Library"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:104
-msgid "MP3 Library Version:"
-msgstr "MP3 verzija biblioteke:"
-
-#: prefs/FileFormatPrefs.cpp:93
-msgid "MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
+#: prefs/GUIPrefs.cpp:42
+msgid "In Browser"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:98
-msgid "LAME MP3 Library:"
+#: prefs/GUIPrefs.cpp:43
+msgid "From Internet"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
-msgid "&Download"
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:136
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:137
-msgid "When importing audio files"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:140
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
-msgstr ""
+#: prefs/GUIPrefs.cpp:115
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 dB (plitak obseg za visoko-amplitudno ureÄivanje)"
-#: prefs/FileFormatPrefs.cpp:141
-msgid "&Read uncompressed audio files directly from the original (faster)"
-msgstr ""
+#: prefs/GUIPrefs.cpp:116
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 dB (opseg PCM za 8-bitne uzorke)"
-#: prefs/FileFormatPrefs.cpp:143
-msgid "&Normalize all tracks in project"
+#: prefs/GUIPrefs.cpp:143
+msgid "-60 dB (PCM range of 10 bit samples)"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:84
-msgid "When saving a project that depends on other audio files"
-msgstr "Pri spremanju projekta, koji je ovisan od drugih zvuÄnih datoteka"
-
-#: prefs/FileFormatPrefs.cpp:87
-msgid "Always © all audio into project (safest)"
-msgstr "Uvijek &kopiraj sav zvuk u projekt (najsigurnije)"
-
-#: prefs/FileFormatPrefs.cpp:88
-msgid "&Do not copy any audio"
-msgstr "&Ne kopiraj zvuk"
-
-#: prefs/FileFormatPrefs.cpp:87
-msgid "&Ask user"
-msgstr "Pitaj &korisnika"
-
-#: prefs/FileFormatPrefs.cpp:93
-msgid "When exporting tracks to an audio file"
-msgstr "Prilikom izvoza traka u zvuÄnu datoteku"
-
-#: prefs/FileFormatPrefs.cpp:96
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
-msgstr "Uvijek &miješaj sve trake na stereo ili mono kanal(ima)."
+#: prefs/GUIPrefs.cpp:117
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 dB (opseg PCM za 16-bitn uzorke)"
-#: prefs/FileFormatPrefs.cpp:97
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
-msgstr "&Upotrijebi miješanje po mjeri (npr. za izvoz višekanalne datoteke 5.1)"
+#: prefs/GUIPrefs.cpp:118
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 dB (približna granica Äovjekovog sluha)"
-#: prefs/BatchPrefs.cpp:91
-msgid "S&how Metadata Editor prior to export step"
-msgstr "Prikaži &ureÄivaÄ metapodataka prije izvoza"
+#: prefs/GUIPrefs.cpp:119
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB (opseg PCM za 24-bitne uzorke)"
-#: prefs/GUIPrefs.cpp:33
-#: prefs/GUIPrefs.cpp:34
-msgid "Interface"
-msgstr "Interfejs"
+#: prefs/SpectrumPrefs.cpp:96
+msgid "Display"
+msgstr "Prikaz"
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
+#: prefs/GUIPrefs.cpp:100
+msgid "Er&gonomic order of audio I/O buttons"
msgstr ""
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
msgstr ""
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
msgstr ""
-#: prefs/GUIPrefs.cpp:72
-msgid "&Update display while playing"
-msgstr "&Ažuriraj ekran tokom izvoÄenja"
+#: prefs/GUIPrefs.cpp:167
+msgid "Help:"
+msgstr ""
#: prefs/GUIPrefs.cpp:96
msgid "Cl&osing last window quits Audacity"
msgstr ""
-#: prefs/GUIPrefs.cpp:76
-msgid "Enable &dragging of left and right selection edges"
-msgstr "OmoguÄi &prevlaÄenje lijeve i desne ivice izbora"
-
-#: prefs/GUIPrefs.cpp:100
-msgid "Er&gonomic order of audio I/O buttons"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:80
-msgid "Automatically &fit tracks vertically zoomed"
-msgstr "Automatski &utisni vrtikalno uveÄane trake"
-
-#: prefs/GUIPrefs.cpp:104
-#, fuzzy
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
-msgstr "\"Pomjeri fokus na trakama\" &cikliÄno kruži po trakama"
-
-#: prefs/GUIPrefs.cpp:86
-msgid "Editing a &clip can move other clips"
-msgstr "UreÄivanje &snimka može pomaÄi druge snimke"
-
-#: prefs/GUIPrefs.cpp:88
-msgid "&Select all audio in project, if none selected"
-msgstr "&Ako nije ništa izabrano, izaberi sve zvukove projekta."
-
#: prefs/GUIPrefs.cpp:90
msgid "&Beep on completion of longer activities"
msgstr "&Zapiskaj na kraju daljnjih operacija"
-#: prefs/BatchPrefs.cpp:89
-#: prefs/GUIPrefs.cpp:94
-msgid "Show / Hide"
-msgstr "Pokaži / Skrij"
-
-#: prefs/GUIPrefs.cpp:96
-msgid "Enable cut &lines"
-msgstr "OmoguÄi &linije rezova"
-
-#: prefs/GUIPrefs.cpp:98
-msgid "Show warnings about &temp files"
-msgstr "Pokaži upozorenja o &privremenim datotekama"
-
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:122
-#, fuzzy
-msgid "Show &Welcome Message at program start up"
-msgstr "Pokaži pozdravnu poruku pri startu programa"
-
#: prefs/GUIPrefs.cpp:126
msgid "Modes"
msgstr ""
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
+msgstr ""
+
#: prefs/GUIPrefs.cpp:129
msgid "Don't a&pply effects in batch mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
+#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
+msgid "Import / Export"
msgstr ""
-#: prefs/GUIPrefs.cpp:115
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 dB (plitak obseg za visoko-amplitudno ureÄivanje)"
-
-#: prefs/GUIPrefs.cpp:116
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 dB (opseg PCM za 8-bitne uzorke)"
+#: prefs/FileFormatPrefs.cpp:137
+msgid "When importing audio files"
+msgstr ""
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
+#: prefs/FileFormatPrefs.cpp:140
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
msgstr ""
-#: prefs/GUIPrefs.cpp:117
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 dB (opseg PCM za 16-bitn uzorke)"
+#: prefs/FileFormatPrefs.cpp:141
+msgid "&Read uncompressed audio files directly from the original (faster)"
+msgstr ""
-#: prefs/GUIPrefs.cpp:118
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 dB (približna granica Äovjekovog sluha)"
+#: prefs/FileFormatPrefs.cpp:143
+msgid "&Normalize all tracks in project"
+msgstr ""
-#: prefs/GUIPrefs.cpp:119
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB (opseg PCM za 24-bitne uzorke)"
+#: prefs/FileFormatPrefs.cpp:93
+msgid "When exporting tracks to an audio file"
+msgstr "Prilikom izvoza traka u zvuÄnu datoteku"
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
-msgstr ""
+#: prefs/FileFormatPrefs.cpp:96
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+msgstr "Uvijek &miješaj sve trake na stereo ili mono kanal(ima)."
-#: prefs/GUIPrefs.cpp:164
-msgid "Other interface choices"
-msgstr ""
+#: prefs/FileFormatPrefs.cpp:97
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+msgstr "&Upotrijebi miješanje po mjeri (npr. za izvoz višekanalne datoteke 5.1)"
-#: prefs/GUIPrefs.cpp:167
-msgid "Help:"
-msgstr ""
+#: prefs/BatchPrefs.cpp:91
+msgid "S&how Metadata Editor prior to export step"
+msgstr "Prikaži &ureÄivaÄ metapodataka prije izvoza"
-#: prefs/GUIPrefs.cpp:168
-msgid "Solo Button:"
+#: prefs/ImportExportPrefs.cpp:84
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
msgstr ""
-#: prefs/KeyConfigPrefs.cpp:64
-#: prefs/KeyConfigPrefs.cpp:65
+#: prefs/KeyConfigPrefs.cpp:64 prefs/KeyConfigPrefs.cpp:65
msgid "Keyboard"
msgstr "Tastatura"
@@ -7856,22 +7634,26 @@ msgstr "P&ostavi"
msgid "Note: Pressing Cmd+Q will quit. All other keys are valid."
msgstr "Napomena: s pritiskom na Cmd+Q prekidate program. Sve druge tipke so važeÄe."
-#: prefs/KeyConfigPrefs.cpp:124
-#: prefs/ThemePrefs.cpp:105
+#: prefs/KeyConfigPrefs.cpp:124 prefs/ThemePrefs.cpp:105
msgid "&Defaults"
msgstr "&Podrazumijevano"
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr ""
+
#: prefs/KeyConfigPrefs.cpp:143
msgid "Key Combination"
msgstr "Kombinacija tastera"
-#: prefs/KeyConfigPrefs.cpp:163
-msgid "Export Keyboard Shortcuts As:"
-msgstr "Izvezi kratice kao:"
+#: prefs/KeyConfigPrefs.cpp:367 toolbars/EditToolBar.cpp:144
+msgid "Undo"
+msgstr "Poništi"
-#: prefs/KeyConfigPrefs.cpp:181
-msgid "Error saving keyboard shortcuts"
-msgstr "Greška pri spremanju kratica"
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr ""
#: prefs/KeyConfigPrefs.cpp:196
msgid "Select an XML file containing Audacity keyboard shortcuts..."
@@ -7881,6 +7663,14 @@ msgstr "Izaberite datoteku XML s kraticama Audacity ..."
msgid "Error loading keyboard shortcuts"
msgstr "GreÅ¡ka pri uÄitavanju kratica"
+#: prefs/KeyConfigPrefs.cpp:163
+msgid "Export Keyboard Shortcuts As:"
+msgstr "Izvezi kratice kao:"
+
+#: prefs/KeyConfigPrefs.cpp:181
+msgid "Error saving keyboard shortcuts"
+msgstr "Greška pri spremanju kratica"
+
#: prefs/KeyConfigPrefs.cpp:241
#, c-format
msgid "The keyboard shortcut '%s' is already assigned to:\n"
@@ -7890,10 +7680,61 @@ msgstr "Kratica tastature '%s' je veÄ dodijeljena za:\n"
"\n"
"'%s'"
-#: prefs/KeyConfigPrefs.cpp:367
-#: toolbars/EditToolBar.cpp:144
-msgid "Undo"
-msgstr "Poništi"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:84
+msgid "MP3 Export Library"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:104
+msgid "MP3 Library Version:"
+msgstr "MP3 verzija biblioteke:"
+
+#: prefs/FileFormatPrefs.cpp:93
+msgid "MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:98
+msgid "LAME MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
+msgid "&Download"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:109
+msgid "FFmpeg Library Version:"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
+msgid "FFmpeg Library:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:41 prefs/AudioIOPrefs.cpp:42
+msgid "Audio I/O"
+msgstr "ZvuÄni U/I"
+
+#: prefs/AudioIOPrefs.cpp:123
+msgid "Portaudio v"
+msgstr "Portaudio v"
+
+#: prefs/AudioIOPrefs.cpp:145
+msgid "Playthrough"
+msgstr "Emituj kroz"
#: prefs/AudioIOPrefs.cpp:147
msgid "&Play other tracks while recording new one"
@@ -7907,6 +7748,10 @@ msgstr ""
msgid "&Software Playthrough (Play new track while recording it)"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:170
+msgid "Cut Preview"
+msgstr "Predslušanje izrezanog"
+
#: prefs/MidiIOPrefs.cpp:160
msgid "Play before cut region:"
msgstr ""
@@ -7915,6 +7760,10 @@ msgstr ""
msgid "Play after cut region:"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:183
+msgid "Latency"
+msgstr "Latencija"
+
#: prefs/AudioIOPrefs.cpp:189
msgid "Audio to buffer:"
msgstr "Zvuk u meÄumemoriju:"
@@ -7927,12 +7776,23 @@ msgstr "Popravak latencije:"
msgid "Seek Time"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:200
+msgid "Short period:"
+msgstr "KraÄi period:"
+
+#: prefs/AudioIOPrefs.cpp:202
+msgid "Long period:"
+msgstr "Duži period:"
+
+#: prefs/AudioIOPrefs.cpp:162
+msgid "Effects Preview"
+msgstr "Predslušavanje efekata"
+
#: prefs/MidiIOPrefs.cpp:196
msgid "Play when previewing:"
msgstr ""
-#: prefs/MousePrefs.cpp:55
-#: prefs/MousePrefs.cpp:56
+#: prefs/MousePrefs.cpp:55 prefs/MousePrefs.cpp:56
msgid "Mouse"
msgstr "Miš"
@@ -7952,37 +7812,26 @@ msgstr "Akcije komandi"
msgid "Buttons"
msgstr "Tasteri"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:117
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:117
#: prefs/MousePrefs.cpp:122
msgid "Left-Click"
msgstr "Lijevi klik"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:100
-#: prefs/MousePrefs.cpp:101
-#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:101 prefs/MousePrefs.cpp:102
msgid "Select"
msgstr "Izaberi"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:122
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:122
msgid "Set Selection Point"
msgstr "Postavi taÄku izbora"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:115
-#: prefs/MousePrefs.cpp:119
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:115 prefs/MousePrefs.cpp:119 prefs/MousePrefs.cpp:123
msgid "Left-Drag"
msgstr "Lijevi-povuci"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:123
msgid "Set Selection Range"
msgstr "Postavi opseg izbora"
@@ -8010,12 +7859,8 @@ msgstr "Ctrl-lijevi-klik"
msgid "Set Selection Point and Play"
msgstr "Postavi taÄku izbora i emituj"
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:108
-#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:106
+#: prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:108 prefs/MousePrefs.cpp:109
msgid "Zoom"
msgstr "PoveÄanje"
@@ -8023,9 +7868,7 @@ msgstr "PoveÄanje"
msgid "Zoom in on Point"
msgstr "PoveÄaj na taÄki"
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:125
msgid "Zoom in on a Range"
msgstr "PoveÄaj na podruÄju"
@@ -8033,18 +7876,15 @@ msgstr "PoveÄaj na podruÄju"
msgid "same as right-drag"
msgstr "jednako kao desno-povlaÄenje"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:106 prefs/MousePrefs.cpp:124
msgid "Right-Click"
msgstr "Desni klik"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:106 prefs/MousePrefs.cpp:124
msgid "Zoom out one step"
msgstr "Umanji za jedan korak"
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:125
msgid "Right-Drag"
msgstr "Desni-povuci"
@@ -8080,8 +7920,7 @@ msgstr "Shift-lijevo-povlaÄenje"
msgid "Time shift all clips in track"
msgstr "Vremenski pomakni sve snimke na traci"
-#: prefs/MousePrefs.cpp:113
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:113 prefs/MousePrefs.cpp:120
msgid "Ctrl-Left-Drag"
msgstr "Ctrl-lijevi-povuci"
@@ -8097,9 +7936,7 @@ msgstr "Promijeni ovojnicu pojaÄanja"
msgid "Change Sample"
msgstr "Promijeni uzorak"
-#: prefs/MousePrefs.cpp:117
-#: prefs/MousePrefs.cpp:118
-#: prefs/MousePrefs.cpp:119
+#: prefs/MousePrefs.cpp:117 prefs/MousePrefs.cpp:118 prefs/MousePrefs.cpp:119
#: prefs/MousePrefs.cpp:120
msgid "Pencil"
msgstr "Olovka"
@@ -8120,26 +7957,20 @@ msgstr "Promijeni više uzoraka"
msgid "Change ONE Sample only"
msgstr "Promijeni samo jedan uzorak"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123 prefs/MousePrefs.cpp:124
#: prefs/MousePrefs.cpp:125
msgid "Multi"
msgstr "Višestruko"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123
msgid "same as select tool"
msgstr "isto kao alat za izbor"
-#: prefs/MousePrefs.cpp:124
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:124 prefs/MousePrefs.cpp:125
msgid "same as zoom tool"
msgstr "isto kao alat za poveÄanje"
-#: prefs/MousePrefs.cpp:127
-#: prefs/MousePrefs.cpp:128
-#: prefs/MousePrefs.cpp:129
+#: prefs/MousePrefs.cpp:127 prefs/MousePrefs.cpp:128 prefs/MousePrefs.cpp:129
msgid "Any"
msgstr "Bilo koji"
@@ -8167,10 +7998,62 @@ msgstr "Ctrl-rotacija toÄkiÄa"
msgid "Zoom in or out"
msgstr "PoveÄaj ili umanji"
+#: prefs/AudioIOPrefs.cpp:165
+msgid "Length of preview:"
+msgstr "Dužina predslušanja:"
+
+#: prefs/AudioIOPrefs.cpp:173
+msgid "Preview before cut region:"
+msgstr "PredsluÅ¡anje prije izrezanog podruÄja:"
+
+#: prefs/AudioIOPrefs.cpp:175
+msgid "Preview after cut region:"
+msgstr "PredsluÅ¡anje nakon izrezanog podruÄja:"
+
+#: prefs/AudioIOPrefs.cpp:197
+msgid "Seek Time when playing"
+msgstr "Vrijeme pretrage pri reprodukciji"
+
#: prefs/PrefsDialog.cpp:89
msgid "Audacity Preferences"
msgstr "Postavke Audacity"
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:84
+msgid "When saving a project that depends on other audio files"
+msgstr "Pri spremanju projekta, koji je ovisan od drugih zvuÄnih datoteka"
+
+#: prefs/FileFormatPrefs.cpp:87
+msgid "Always © all audio into project (safest)"
+msgstr "Uvijek &kopiraj sav zvuk u projekt (najsigurnije)"
+
+#: prefs/FileFormatPrefs.cpp:88
+msgid "&Do not copy any audio"
+msgstr "&Ne kopiraj zvuk"
+
+#: prefs/FileFormatPrefs.cpp:87
+msgid "&Ask user"
+msgstr "Pitaj &korisnika"
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr "Automatski spremi"
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr "Automatski sprema kopiju projekta u odvojeni direktorij"
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr "Interval za automatsko spremanje"
+
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr "minuta"
+
#: prefs/QualityPrefs.cpp:73
msgid "Rectangle"
msgstr "Äetvorougao"
@@ -8195,46 +8078,46 @@ msgstr "Podrazumijevana frekvencija uzimanja uzoraka:"
msgid "Default Sample Format:"
msgstr "Podrazumijevani oblik uzorca:"
-#: prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "PretvaraÄ frekvencije uzimanja uzoraka u realnom vremenu:"
-
-#: prefs/QualityPrefs.cpp:139
-msgid "High-quality sample rate converter:"
-msgstr "Visokokvalitetni pretvaraÄ frekvencije uzimanja uzoraka:"
-
-#: prefs/QualityPrefs.cpp:142
-msgid "Real-time dither:"
-msgstr "Trepet u realnom vremenu:"
-
-#: prefs/QualityPrefs.cpp:145
-msgid "High-quality dither:"
-msgstr "Visokokvalitetni trepet:"
-
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
-msgstr "Konverzija"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+#, fuzzy
+msgid "Sample Rate Converter:"
msgstr "PretvaraÄ frekvence uzimanja uzoraka"
#: prefs/QualityPrefs.cpp:164
msgid "Dither"
msgstr "Trepet"
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
-msgstr "U realnom vremenu:"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:150
+msgid "Overdub: &Play other tracks while recording new one"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:150
+msgid "&Hardware Playthrough: Play new track while recording it"
+msgstr "&Hardversko emitovanje kroz: Emituj novu traku tokom njenog snimanja"
+
+#: prefs/AudioIOPrefs.cpp:158
+msgid "&Software Playthrough: Play new track while recording or monitoring"
+msgstr ""
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
-msgstr "Visokokvalitetno:"
+#: prefs/AudioIOPrefs.cpp:161
+msgid "(uncheck when recording \"stereo mix\")"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
+msgstr ""
-#: prefs/SmartRecordPrefs.cpp:54
-#: prefs/SmartRecordPrefs.cpp:55
-msgid "Smart Recording"
-msgstr "Pametno snimanje"
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
+msgstr ""
#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
msgid "Sound Activated Recording"
@@ -8244,23 +8127,58 @@ msgstr ""
msgid "Sound Activation Level (dB):"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:36
-#: prefs/SpectrumPrefs.cpp:37
+#: prefs/SpectrumPrefs.cpp:36 prefs/SpectrumPrefs.cpp:37
msgid "Spectrograms"
msgstr "Spektogrami"
-#: prefs/SpectrumPrefs.cpp:72
-msgid "FFT Size"
-msgstr "VeliÄina FFT"
-
#: prefs/SpectrumPrefs.cpp:75
msgid "8 - most wideband"
msgstr "8 - najšire"
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:80
msgid "256 - default"
msgstr "256 - podrazumijevano"
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:107
msgid "32768 - most narrowband"
msgstr ""
@@ -8269,21 +8187,26 @@ msgstr ""
msgid "4096 - most narrowband"
msgstr "4096 - najuže"
-#: prefs/SpectrumPrefs.cpp:90
-msgid "Window type:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:93
+#, fuzzy
+msgid "Window type"
msgstr "Vrsta prozora:"
#: prefs/SpectrumPrefs.cpp:125
msgid "FFT Skip Points"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:96
-msgid "Display"
-msgstr "Prikaz"
-
-#: prefs/SpectrumPrefs.cpp:100
-msgid "&Grayscale"
-msgstr "&crnobijelo"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
+msgstr ""
#: prefs/SpectrumPrefs.cpp:103
msgid "Minimum Frequency (Hz):"
@@ -8293,16 +8216,16 @@ msgstr "Najmanja frekvencija (Hz):"
msgid "Maximum Frequency (Hz):"
msgstr "Najviša frekvencija (Hz):"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
msgstr ""
#: prefs/SpectrumPrefs.cpp:165
@@ -8313,6 +8236,14 @@ msgstr ""
msgid "Max. Number of Notes (1..128):"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:161
+msgid "&Find Notes"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Quantize Notes"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:134
msgid "The maximum frequency must be an integer"
msgstr "Maksimalna frekvencija mora biti cijeli broj"
@@ -8329,19 +8260,70 @@ msgstr "Najmanja frekvencija mora biti pozitivni cijeli broj"
msgid "Minimum frequency must be at least 0 Hz"
msgstr "Najmanja frekvencija mora biti bar 0 Hz"
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:226 prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
+#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:230
+msgid "The maximum number of notes must be in the range 1..128"
msgstr ""
-#: prefs/ThemePrefs.cpp:62
-#: prefs/ThemePrefs.cpp:63
+#: prefs/ThemePrefs.cpp:62 prefs/ThemePrefs.cpp:63
msgid "Theme"
msgstr "Tema"
+#: prefs/ThemePrefs.cpp:126
+msgid "Info"
+msgstr "Informacije"
+
+#: prefs/ThemePrefs.cpp:91
+#, fuzzy
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr "Teme su u eksperimentalnoj fazi.\n"
+"\n"
+"Da jih isprobate, kliknite \"Sprem meÄumemoriju tema\",\n"
+"onda potražite i promijenite slike i boje u \n"
+"ImageCacheVxx.png koristeÄi ureÄivaÄ slika, kao Å¡to je \n"
+"je Gimp.\n"
+"\n"
+"Kliknite \"UÄitaj meÄumemoriju tema\", da uÄitate promijenjene\n"
+"slike i boje nazad v Audacity.\n"
+"\n"
+"[Samo kontrolna alatna traka i boje na \n"
+"traci s talasnim oblikom su trenutno promijenjene, Äak i ako slika\n"
+"prikazuje druge ikone.]"
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#. i18n-hint: && in here is an escape character to get a single & on screen,
#. * so keep it as is
#: prefs/ThemePrefs.cpp:93
@@ -8372,99 +8354,96 @@ msgstr "Spremi datoteke"
msgid "Load Files"
msgstr "UÄitaj datoteke"
-#: prefs/ThemePrefs.cpp:126
-msgid "Info"
-msgstr "Informacije"
+#: prefs/GUIPrefs.cpp:50
+msgid "Simple"
+msgstr ""
-#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
-msgstr "Teme su u eksperimentalnoj fazi.\n"
-"\n"
-"Da jih isprobate, kliknite \"Sprem meÄumemoriju tema\",\n"
-"onda potražite i promijenite slike i boje u \n"
-"ImageCacheVxx.png koristeÄi ureÄivaÄ slika, kao Å¡to je \n"
-"je Gimp.\n"
-"\n"
-"Kliknite \"UÄitaj meÄumemoriju tema\", da uÄitate promijenjene\n"
-"slike i boje nazad v Audacity.\n"
-"\n"
-"[Samo kontrolna alatna traka i boje na \n"
-"traci s talasnim oblikom su trenutno promijenjene, Äak i ako slika\n"
-"prikazuje druge ikone.]\n"
-
-#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
-msgstr "Audacity je preveden s dodatnim tasterom, \n"
-"'Output Sourcery'. To Äe spremiti C-verziju \n"
-"meÄumemorije slika, koja se može prevesti da bude podrazumijevana.\n"
-
-#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
-msgstr "Ako je ukljuÄen 'UÄitaj meÄumemoriju tema pri startu', onda \n"
-"Äe meÄumemorija za teme biti uÄitana kada poÄnete program.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:72
+msgid "&Update display while playing"
+msgstr "&Ažuriraj ekran tokom izvoÄenja"
-#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
-msgstr "Shranjevanje i nalaganje posamezne datoteke teme \n"
-"uporablja lo�eno datoteku za vsako sliko, a je sicer \n"
-"zami�ljeno na enak na�in.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:80
+msgid "Automatically &fit tracks vertically zoomed"
+msgstr "Automatski &utisni vrtikalno uveÄane trake"
-#: toolbars/ControlToolBar.cpp:174
-msgid "Pause"
-msgstr "Pauza"
+#: prefs/TracksPrefs.cpp:88
+msgid "Default View Mode:"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:177
-msgid "Play"
-msgstr "IzvoÄenje"
+#: prefs/GUIPrefs.cpp:88
+msgid "&Select all audio in project, if none selected"
+msgstr "&Ako nije ništa izabrano, izaberi sve zvukove projekta."
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
+#: prefs/GUIPrefs.cpp:96
+msgid "Enable cut &lines"
+msgstr "OmoguÄi &linije rezova"
+
+#: prefs/GUIPrefs.cpp:76
+msgid "Enable &dragging of left and right selection edges"
+msgstr "OmoguÄi &prevlaÄenje lijeve i desne ivice izbora"
+
+#: prefs/GUIPrefs.cpp:104
+#, fuzzy
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+msgstr "\"Pomjeri fokus na trakama\" &cikliÄno kruži po trakama"
+
+#: prefs/GUIPrefs.cpp:86
+msgid "Editing a &clip can move other clips"
+msgstr "UreÄivanje &snimka može pomaÄi druge snimke"
+
+#: prefs/GUIPrefs.cpp:168
+msgid "Solo Button:"
msgstr ""
-#: toolbars/ControlToolBar.cpp:182
-msgid "Stop"
-msgstr "Zaustavi"
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:185
-msgid "Skip to Start"
-msgstr "SkoÄi na poÄetak"
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:188
-msgid "Skip to End"
-msgstr "SkoÄi na kraj"
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:192
-msgid "Record (Shift for Append Record)"
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
msgstr ""
+#: Menus.cpp:774
+msgid "Pause"
+msgstr "Pauza"
+
+#: Menus.cpp:773
+msgid "Stop"
+msgstr "Zaustavi"
+
#: toolbars/ControlToolBar.cpp:194
msgid "Clean Speech"
msgstr "Äisti govor"
-#: toolbars/ControlToolBar.cpp:530
-#: toolbars/ControlToolBar.cpp:839
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play (Shift for Loop Play)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:192
+msgid "Record (Shift for Append Record)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:530 toolbars/ControlToolBar.cpp:839
msgid "Error while opening sound device. "
msgstr "GreÅ¡ka pri otvaranju zvuÄnog ureÄaja."
@@ -8476,13 +8455,11 @@ msgstr "Snimanje u režimu ÄistiGovor nije moguÄe, ako je traka (ili viÅ¡e od
msgid "Recording not permitted"
msgstr "Snimanje nije dozvoljeno"
-#: toolbars/DeviceToolBar.cpp:113
-#: toolbars/DeviceToolBar.cpp:115
+#: toolbars/DeviceToolBar.cpp:113 toolbars/DeviceToolBar.cpp:115
msgid "Output Device"
msgstr "Izlazni ureÄaj"
-#: toolbars/DeviceToolBar.cpp:134
-#: toolbars/DeviceToolBar.cpp:136
+#: toolbars/DeviceToolBar.cpp:134 toolbars/DeviceToolBar.cpp:136
msgid "Input Device"
msgstr "Ulazni ureÄaj"
@@ -8506,29 +8483,21 @@ msgstr "PoveÄaj"
msgid "Zoom Out"
msgstr "Umanji"
-#: toolbars/EditToolBar.cpp:156
-msgid "Zoom Toggle"
-msgstr "Preklop poÄanja"
-
-#: toolbars/EditToolBar.cpp:160
-msgid "Fit Selection"
-msgstr "U izbor"
-
#: toolbars/EditToolBar.cpp:160
msgid "Fit selection in window"
msgstr "Prilagodi oznaÄeno prozoru"
#: toolbars/EditToolBar.cpp:162
-msgid "Fit Project"
-msgstr "Prilagodi projekt"
-
-#: toolbars/EditToolBar.cpp:162
msgid "Fit project in window"
msgstr "Prilagodi cijeli projekt u prozot"
-#: toolbars/MeterToolBar.cpp:50
-msgid "Meter"
-msgstr "MjeraÄ"
+#: toolbars/EditToolBar.cpp:160
+msgid "Fit Selection"
+msgstr "U izbor"
+
+#: toolbars/EditToolBar.cpp:162
+msgid "Fit Project"
+msgstr "Prilagodi projekt"
#: toolbars/MeterToolBar.cpp:80
msgid "Play Meter"
@@ -8576,24 +8545,28 @@ msgstr "KlizaÄ-ulaz"
msgid "Input Source"
msgstr "Ulazni izvor"
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:80
msgid "Selection"
msgstr "Izbor"
-#: toolbars/SelectionBar.cpp:120
-#: toolbars/SelectionBar.cpp:177
+#: toolbars/SelectionBar.cpp:120 toolbars/SelectionBar.cpp:177
msgid "Project Rate (Hz):"
msgstr "Frekvencija projekta (Hz):"
-#: toolbars/SelectionBar.cpp:134
-#: toolbars/SelectionBar.cpp:235
+#: toolbars/SelectionBar.cpp:134 toolbars/SelectionBar.cpp:235
msgid "Selection Start:"
msgstr "PoÄetak izbora:"
-#: effects/ToneGen.cpp:307
-#: effects/ToneGen.cpp:348
-#: toolbars/SelectionBar.cpp:147
-#: toolbars/SelectionBar.cpp:241
+#: effects/ToneGen.cpp:307 effects/ToneGen.cpp:348
+#: toolbars/SelectionBar.cpp:147 toolbars/SelectionBar.cpp:241
msgid "Length"
msgstr "Dužina"
@@ -8601,13 +8574,11 @@ msgstr "Dužina"
msgid "hidden"
msgstr "sakriveno"
-#: toolbars/SelectionBar.cpp:167
-#: toolbars/SelectionBar.cpp:252
+#: toolbars/SelectionBar.cpp:167 toolbars/SelectionBar.cpp:252
msgid "Audio Position:"
msgstr "Položaj zvuka:"
-#: toolbars/SelectionBar.cpp:217
-#: toolbars/SelectionBar.cpp:222
+#: toolbars/SelectionBar.cpp:217 toolbars/SelectionBar.cpp:222
msgid "Snap To"
msgstr "SkoÄi na ..."
@@ -8628,8 +8599,7 @@ msgstr "Kraj izbora"
msgid "Audacity %s ToolBar"
msgstr "Alatna traka Audacity - %s"
-#: toolbars/ToolDock.cpp:74
-#: toolbars/ToolDock.cpp:75
+#: toolbars/ToolDock.cpp:74 toolbars/ToolDock.cpp:75
msgid "ToolDock"
msgstr "Sidrište alata"
@@ -8661,34 +8631,6 @@ msgstr "Lijevo=PoveÄavanje, Desno=Umanjenje, Sredina=Normalno"
msgid "Click and drag to move a track in time"
msgstr "Kliknite i povucite, da bi pomjerili traku u vremenu"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr "Alati"
-
-#: toolbars/ToolsToolBar.cpp:147
-#: toolbars/ToolsToolBar.cpp:182
-msgid "Selection Tool"
-msgstr "Alat za izbor"
-
-#: toolbars/ToolsToolBar.cpp:148
-msgid "Envelope Tool"
-msgstr "Alat za ovojnicu"
-
-#: toolbars/ToolsToolBar.cpp:149
-#: toolbars/ToolsToolBar.cpp:183
-msgid "Time Shift Tool"
-msgstr "Alat za pomijeranje vremena"
-
-#: toolbars/ToolsToolBar.cpp:150
-#: toolbars/ToolsToolBar.cpp:185
-msgid "Zoom Tool"
-msgstr "Alat za poveÄanje"
-
-#: toolbars/ToolsToolBar.cpp:151
-#: toolbars/ToolsToolBar.cpp:184
-msgid "Draw Tool"
-msgstr "Crtanje"
-
#: toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
msgstr "Višealatni režim"
@@ -8697,24 +8639,11 @@ msgstr "Višealatni režim"
msgid "Slide Tool"
msgstr "Alat Pomikaj"
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr "Višestruki alat"
-
-#: toolbars/TranscriptionToolBar.cpp:82
-msgid "Transcription"
-msgstr "Prepis"
-
#: toolbars/TranscriptionToolBar.cpp:163
msgid "Play at selected speed"
msgstr "Izvodi pri izbranoj brzini"
-#: toolbars/TranscriptionToolBar.cpp:164
-msgid "Play-at-speed"
-msgstr "Izvodi-pri-brzini"
-
-#: toolbars/TranscriptionToolBar.cpp:170
-#: toolbars/TranscriptionToolBar.cpp:175
+#: toolbars/TranscriptionToolBar.cpp:170 toolbars/TranscriptionToolBar.cpp:175
msgid "Playback Speed"
msgstr "Brzina izvoÄenja"
@@ -8722,74 +8651,38 @@ msgstr "Brzina izvoÄenja"
msgid "Adjust left selection to next onset"
msgstr "Prilagodi lijevi izbor narednom poÄetku"
-#: toolbars/TranscriptionToolBar.cpp:181
-msgid "Left-to-On"
-msgstr "Lijevo-na-ukljuÄeno"
-
#: toolbars/TranscriptionToolBar.cpp:183
msgid "Adjust right selection to previous offset"
msgstr "Prilagodi desni izbor prethodnom pomaku"
-#: toolbars/TranscriptionToolBar.cpp:184
-msgid "Right-to-Off"
-msgstr "Desno-na-iskljuÄeno"
-
#: toolbars/TranscriptionToolBar.cpp:186
msgid "Adjust left selection to next offset"
msgstr "Prilagodi lijevi izbor narednom pomaku"
-#: toolbars/TranscriptionToolBar.cpp:187
-msgid "Left-to-Off"
-msgstr "Lijevo-na-iskljuÄeno"
-
#: toolbars/TranscriptionToolBar.cpp:189
msgid "Adjust right selection to previous onset"
msgstr "Prilagodi desni izbor prehodnom poÄetku"
-#: toolbars/TranscriptionToolBar.cpp:190
-msgid "Right-to-On"
-msgstr "Desno-na-ukljuÄeno"
-
#: toolbars/TranscriptionToolBar.cpp:192
msgid "Select region of sound around cursor"
msgstr "Izberi podruÄje zvuka oko kazaljke"
-#: toolbars/TranscriptionToolBar.cpp:193
-msgid "Select-Sound"
-msgstr "Izaberi-Zvuk"
-
#: toolbars/TranscriptionToolBar.cpp:195
msgid "Select region of silence around cursor"
msgstr "Izaberi podruÄje tiÅ¡ine oko kazaljke"
-#: toolbars/TranscriptionToolBar.cpp:196
-msgid "Select-Silence"
-msgstr "Izaberi-Tišina"
-
#: toolbars/TranscriptionToolBar.cpp:198
msgid "Automatically make labels from words"
msgstr "Automatski napravi oznake iz rijeÄi"
-#: toolbars/TranscriptionToolBar.cpp:199
-msgid "Make Labels"
-msgstr "Napravi oznake"
-
#: toolbars/TranscriptionToolBar.cpp:201
msgid "Add label at selection"
msgstr "Dodaj oznaku na izbor"
-#: toolbars/TranscriptionToolBar.cpp:202
-msgid "Add Label"
-msgstr "Dodaj oznaku"
-
#: toolbars/TranscriptionToolBar.cpp:204
msgid "Calibrate voicekey"
msgstr "Kalibracija glasa kljuÄa"
-#: toolbars/TranscriptionToolBar.cpp:205
-msgid "Calibrate"
-msgstr "Kalibriraj"
-
#: toolbars/TranscriptionToolBar.cpp:209
msgid "Adjust Sensitivity"
msgstr "Prilagodi ojetljivost"
@@ -8822,6 +8715,46 @@ msgstr "Promjene smijera (visoki prag)"
msgid "Key type"
msgstr "Vrsta tastera"
+#: toolbars/TranscriptionToolBar.cpp:164
+msgid "Play-at-speed"
+msgstr "Izvodi-pri-brzini"
+
+#: toolbars/TranscriptionToolBar.cpp:181
+msgid "Left-to-On"
+msgstr "Lijevo-na-ukljuÄeno"
+
+#: toolbars/TranscriptionToolBar.cpp:184
+msgid "Right-to-Off"
+msgstr "Desno-na-iskljuÄeno"
+
+#: toolbars/TranscriptionToolBar.cpp:187
+msgid "Left-to-Off"
+msgstr "Lijevo-na-iskljuÄeno"
+
+#: toolbars/TranscriptionToolBar.cpp:190
+msgid "Right-to-On"
+msgstr "Desno-na-ukljuÄeno"
+
+#: toolbars/TranscriptionToolBar.cpp:193
+msgid "Select-Sound"
+msgstr "Izaberi-Zvuk"
+
+#: toolbars/TranscriptionToolBar.cpp:196
+msgid "Select-Silence"
+msgstr "Izaberi-Tišina"
+
+#: toolbars/TranscriptionToolBar.cpp:199
+msgid "Make Labels"
+msgstr "Napravi oznake"
+
+#: toolbars/TranscriptionToolBar.cpp:202
+msgid "Add Label"
+msgstr "Dodaj oznaku"
+
+#: toolbars/TranscriptionToolBar.cpp:205
+msgid "Calibrate"
+msgstr "Kalibriraj"
+
#: widgets/AButton.cpp:302
msgid " (disabled)"
msgstr " (onemoguÄeno)"
@@ -8836,15 +8769,13 @@ msgstr "Dugme"
#. i18n-hint: One-letter abbreviation for Left, in VU Meter
#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
-#: widgets/ASlider.cpp:604
-#: widgets/Meter.cpp:211
+#: widgets/ASlider.cpp:604 widgets/Meter.cpp:211
msgid "L"
msgstr "L"
#. i18n-hint: One-letter abbreviation for Right, in VU Meter
#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
-#: widgets/ASlider.cpp:607
-#: widgets/Meter.cpp:213
+#: widgets/ASlider.cpp:607 widgets/Meter.cpp:213
msgid "R"
msgstr "D"
@@ -8860,8 +8791,7 @@ msgstr "Lijevo"
msgid "Right"
msgstr "Desno"
-#: widgets/ErrorDialog.cpp:73
-#: widgets/ErrorDialog.cpp:97
+#: widgets/ErrorDialog.cpp:73 widgets/ErrorDialog.cpp:97
msgid "Help"
msgstr "PomoÄ"
@@ -8894,8 +8824,7 @@ msgstr "Grabilac"
msgid "%d rows, %d columns"
msgstr "%d redova, %d kolona"
-#: widgets/Grid.cpp:641
-#: widgets/Grid.cpp:768
+#: widgets/Grid.cpp:641 widgets/Grid.cpp:768
#, c-format
msgid "Row %d"
msgstr "Red %d"
@@ -8974,8 +8903,7 @@ msgstr ""
msgid "Cancel"
msgstr ""
-#: widgets/Ruler.cpp:1138
-#: widgets/Ruler.cpp:1139
+#: widgets/Ruler.cpp:1138 widgets/Ruler.cpp:1139
msgid "Vertical Ruler"
msgstr "Vertikalno ravnalo"
@@ -9136,3 +9064,15 @@ msgstr ""
msgid "Could not load file: \"%s\""
msgstr "Greška pri otvaranju datoteke: \"%s\""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
+
diff --git a/locale/ca.po b/locale/ca.po
index 9d2e101..e3e67ab 100644
--- a/locale/ca.po
+++ b/locale/ca.po
@@ -15,9 +15,7 @@ msgstr "Project-Id-Version: ca\n"
"X-Poedit-Language: Catalan\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
-#: AboutDialog.cpp:142
-#: AudacityApp.cpp:749
-#: Menus.cpp:745
+#: AboutDialog.cpp:142 AudacityApp.cpp:749 Menus.cpp:745
msgid "&About Audacity..."
msgstr "Quant a l'&Audacity..."
@@ -30,11 +28,11 @@ msgid "Audacity is a free program written by a team of volunteer <a href=\"http:
msgstr ""
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#. i18n-hint: The translation of "translator_credits" will appear
@@ -43,8 +41,7 @@ msgstr ""
#.
#. For example: "English translation by Dominic Mazzoni."
#.
-#: AboutDialog.cpp:192
-#: AboutDialog.cpp:194
+#: AboutDialog.cpp:192 AboutDialog.cpp:194
msgid "translator_credits"
msgstr "Traducció al català : Pau Bosch i Francesc Busquets"
@@ -87,7 +84,7 @@ msgid "Special thanks:"
msgstr "Agraïments especials:"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
msgstr ""
#: AboutDialog.cpp:254
@@ -95,14 +92,11 @@ msgid "Audacity"
msgstr "Audacity"
#. i18n-hint: Information about when audacity was compiled
-#: AboutDialog.cpp:299
-#: AboutDialog.cpp:312
-#: AboutDialog.cpp:468
+#: AboutDialog.cpp:299 AboutDialog.cpp:312 AboutDialog.cpp:468
msgid "Build Information"
msgstr "Informació de compilació"
-#: AboutDialog.cpp:305
-#: effects/AvcCompressor.cpp:674
+#: AboutDialog.cpp:305 effects/AvcCompressor.cpp:674
msgid "Enabled"
msgstr "Habilitat"
@@ -115,33 +109,27 @@ msgid "File Format Support"
msgstr "Informació sobre els tipus de fitxers"
#. i18n-hint: This is what the library (libmad) does - imports MP3 files
-#: AboutDialog.cpp:326
-#: AboutDialog.cpp:328
+#: AboutDialog.cpp:326 AboutDialog.cpp:328
msgid "MP3 Importing"
msgstr "Importació d'MP3"
-#: AboutDialog.cpp:335
-#: AboutDialog.cpp:338
+#: AboutDialog.cpp:335 AboutDialog.cpp:338
msgid "Ogg Vorbis Import and Export"
msgstr "Importació i exportació a Ogg Vorbis"
-#: AboutDialog.cpp:342
-#: AboutDialog.cpp:345
+#: AboutDialog.cpp:342 AboutDialog.cpp:345
msgid "ID3 tag support"
msgstr "Informació sobre les etiquetes ID3"
-#: AboutDialog.cpp:352
-#: AboutDialog.cpp:355
+#: AboutDialog.cpp:352 AboutDialog.cpp:355
msgid "FLAC import and export"
msgstr "Importació i exportació a FLAC"
-#: AboutDialog.cpp:360
-#: AboutDialog.cpp:363
+#: AboutDialog.cpp:360 AboutDialog.cpp:363
msgid "MP2 export"
msgstr "Exportació a MP2"
-#: AboutDialog.cpp:368
-#: AboutDialog.cpp:371
+#: AboutDialog.cpp:368 AboutDialog.cpp:371
msgid "Import via QuickTime"
msgstr "Importa mitjançant el QuickTime"
@@ -150,15 +138,12 @@ msgstr "Importa mitjançant el QuickTime"
msgid "Core Libraries"
msgstr "Biblioteques del nucli"
-#: AboutDialog.cpp:384
-#: AboutDialog.cpp:387
-#: AboutDialog.cpp:390
+#: AboutDialog.cpp:384 AboutDialog.cpp:387 AboutDialog.cpp:390
#: AboutDialog.cpp:392
msgid "Sample rate conversion"
msgstr "Conversió de la freqüència de mostreig"
-#: AboutDialog.cpp:397
-#: AboutDialog.cpp:400
+#: AboutDialog.cpp:397 AboutDialog.cpp:400
msgid "Audio playback and recording"
msgstr "Reproducció i enregistrament de so"
@@ -166,24 +151,17 @@ msgstr "Reproducció i enregistrament de so"
msgid "Features"
msgstr "Funcionalitats"
-#: AboutDialog.cpp:417
-#: AboutDialog.cpp:420
-#: AboutDialog.cpp:425
-#: AboutDialog.cpp:428
-#: AboutDialog.cpp:433
-#: AboutDialog.cpp:436
-#: AboutDialog.cpp:441
-#: AboutDialog.cpp:444
+#: AboutDialog.cpp:417 AboutDialog.cpp:420 AboutDialog.cpp:425
+#: AboutDialog.cpp:428 AboutDialog.cpp:433 AboutDialog.cpp:436
+#: AboutDialog.cpp:441 AboutDialog.cpp:444
msgid "Plug-in support"
msgstr "Informació sobre els connectors"
-#: AboutDialog.cpp:449
-#: AboutDialog.cpp:452
+#: AboutDialog.cpp:449 AboutDialog.cpp:452
msgid "Sound card mixer support"
msgstr "Informació sobre el mesclador de la targeta de so"
-#: AboutDialog.cpp:457
-#: AboutDialog.cpp:460
+#: AboutDialog.cpp:457 AboutDialog.cpp:460
msgid "Pitch and Tempo Change support"
msgstr "Informació sobre els canvis de to i de temps"
@@ -191,8 +169,7 @@ msgstr "Informació sobre els canvis de to i de temps"
msgid "Program build date: "
msgstr "Data de compilació del programa:"
-#: AboutDialog.cpp:475
-#: AboutDialog.cpp:477
+#: AboutDialog.cpp:475 AboutDialog.cpp:477
msgid "Build type:"
msgstr "Tipus de compilació:"
@@ -217,16 +194,12 @@ msgstr "Carpeta on es guarda la configuració:"
msgid "GPL License"
msgstr "Llicència GPL"
-#: AudacityApp.cpp:468
-#: Project.cpp:1761
+#: AudacityApp.cpp:468 Project.cpp:1761
#, c-format
msgid "%s is already open in another window."
msgstr "%s es troba obert en una altra finestra."
-#: AudacityApp.cpp:470
-#: Project.cpp:1763
-#: Project.cpp:1868
-#: Project.cpp:2012
+#: AudacityApp.cpp:470 Project.cpp:1763 Project.cpp:1868 Project.cpp:2012
#: Project.cpp:2114
msgid "Error opening project"
msgstr "S'ha produït un error en obrir el projecte"
@@ -252,21 +225,28 @@ msgstr "Picòmetre d'entrada"
msgid "Output Meter"
msgstr "Picòmetre de sortida"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
-#: AudacityApp.cpp:751
-#: Menus.cpp:478
-msgid "&Preferences...\tCtrl+,"
-msgstr "&Preferències...\tCtrl+,"
+#: Menus.cpp:164
+msgid "&New"
+msgstr "&Nou"
-#: AudacityApp.cpp:833
-#: AudacityApp.cpp:910
+#: Menus.cpp:166
+msgid "&Open..."
+msgstr "&Obre..."
+
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
+
+#: AudacityApp.cpp:751 Menus.cpp:478
+msgid "&Preferences..."
+msgstr "&Preferències..."
+
+#: AudacityApp.cpp:833 AudacityApp.cpp:910
#, c-format
msgid "Using block size of %ld\n"
msgstr "Emprant blocs de %ld\n"
-#: AudacityApp.cpp:855
-#: AudacityApp.cpp:925
+#: AudacityApp.cpp:855 AudacityApp.cpp:925
#, c-format
msgid "Unknown command line option: %s\n"
msgstr "Ordre desconeguda: %s\n"
@@ -384,18 +364,16 @@ msgstr "Error:"
msgid "Error Initializing Audio"
msgstr "S'ha produït un error en inicialitzar el so"
+#: AudioIO.cpp:1225
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
+"Audacity has brought it back to start at zero.\n"
+"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
+msgstr ""
+
#: AudioIO.cpp:1208
msgid "Latency problem"
msgstr "Hi ha un problema de latència"
-#: AudioIO.cpp:1208
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
-"Audacity has brought it back to start at zero.\n"
-"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
-msgstr "El valor de la latència ha fet que el so que s'ha enregistrat hagi quedat amagat abans del zero.\n"
-"L'Audacity ha mogut el fragment per tal que comenci al zero.\n"
-"Podeu fer servir l'eina de desplaçament en el temps (<---> o F5) per a arrossegar la pista al lloc que li correspongui."
-
#: AutoRecovery.cpp:54
msgid "Automatic Crash Recovery"
msgstr "Recuperació automà tica de fallades"
@@ -411,8 +389,7 @@ msgstr "Alguns projectes no es van desar correctament la darrera vegada que es\n
msgid "Recoverable projects"
msgstr "Projectes recuperables"
-#: AutoRecovery.cpp:78
-#: Tags.cpp:2032
+#: AutoRecovery.cpp:78 Tags.cpp:2032
msgid "Name"
msgstr "Nom"
@@ -442,38 +419,25 @@ msgstr "Segur que no voleu recuperar cap projecte?\n"
msgid "Confirm?"
msgstr "Ho confirmeu?"
-#: AutoRecovery.cpp:146
-#: AutoRecovery.cpp:183
+#: AutoRecovery.cpp:146 AutoRecovery.cpp:183
msgid "Could not enumerate files in auto save directory"
msgstr "No s'ha pogut realitzar l'enumeració dels fitxers de la carpeta de desat automà tic"
-#: AutoRecovery.cpp:147
-#: AutoRecovery.cpp:184
-#: Menus.cpp:2575
-#: Menus.cpp:4514
-#: Project.cpp:1971
-#: Project.cpp:3343
-#: Project.cpp:3422
-#: WaveTrack.cpp:556
-#: WaveTrack.cpp:575
-#: WaveTrack.cpp:1689
-#: effects/Effect.cpp:436
-#: export/ExportMP2.cpp:230
-#: prefs/DirectoriesPrefs.cpp:189
-#: prefs/KeyConfigPrefs.cpp:245
-#: toolbars/ControlToolBar.cpp:532
+#: AutoRecovery.cpp:147 AutoRecovery.cpp:184 Menus.cpp:2575 Menus.cpp:4514
+#: Project.cpp:1971 Project.cpp:3343 Project.cpp:3422 WaveTrack.cpp:556
+#: WaveTrack.cpp:575 WaveTrack.cpp:1689 effects/Effect.cpp:436
+#: export/ExportMP2.cpp:230 prefs/DirectoriesPrefs.cpp:189
+#: prefs/KeyConfigPrefs.cpp:245 toolbars/ControlToolBar.cpp:532
#: toolbars/ControlToolBar.cpp:846
msgid "Error"
msgstr "Error"
-#: BatchCommandDialog.cpp:56
-#: BatchCommandDialog.cpp:60
+#: BatchCommandDialog.cpp:56 BatchCommandDialog.cpp:60
#: BatchCommandDialog.cpp:61
msgid "Select Command"
msgstr "Seleccioneu l'ordre"
-#: BatchCommandDialog.cpp:80
-#: BatchProcessDialog.cpp:454
+#: BatchCommandDialog.cpp:80 BatchProcessDialog.cpp:454
#: prefs/KeyConfigPrefs.cpp:142
msgid "&Command"
msgstr "&Ordre"
@@ -482,8 +446,7 @@ msgstr "&Ordre"
msgid "&Edit Parameters"
msgstr "Parà metres d'&edició"
-#: BatchCommandDialog.cpp:89
-#: BatchProcessDialog.cpp:455
+#: BatchCommandDialog.cpp:89 BatchProcessDialog.cpp:455
msgid "&Parameters"
msgstr "&Parà metres"
@@ -529,8 +492,7 @@ msgstr "Aplica %s amb els parà metres\n"
"\n"
"%s"
-#: BatchCommands.cpp:675
-#: BatchCommands.cpp:680
+#: BatchCommands.cpp:675 BatchCommands.cpp:680
msgid "Test Mode"
msgstr "Mode de proves"
@@ -539,8 +501,7 @@ msgstr "Mode de proves"
msgid "Apply %s"
msgstr "Aplica %s"
-#: BatchProcessDialog.cpp:60
-#: BatchProcessDialog.cpp:70
+#: BatchProcessDialog.cpp:60 BatchProcessDialog.cpp:70
#: BatchProcessDialog.cpp:71
msgid "Apply Chain"
msgstr "Aplica la cadena d'ordres"
@@ -565,24 +526,15 @@ msgstr "Aplica-la al &projecte actual"
msgid "Apply to &Files..."
msgstr "Aplica-la als &fitxers..."
-#: BatchProcessDialog.cpp:108
-#: BatchProcessDialog.cpp:247
-#: Tags.cpp:2071
-#: Tags.cpp:2075
-#: Tags.cpp:2375
-#: Tags.cpp:2379
-#: UploadDialog.cpp:180
-#: effects/AvcCompressor.cpp:732
-#: effects/ChangeLength.cpp:183
-#: effects/SpikeCleaner.cpp:188
-#: effects/VST/VSTEffect.cpp:446
-#: effects/audiounits/AudioUnitEffect.cpp:882
-#: effects/vamp/VampEffect.cpp:411
+#: BatchProcessDialog.cpp:108 BatchProcessDialog.cpp:247 Tags.cpp:2071
+#: Tags.cpp:2075 Tags.cpp:2375 Tags.cpp:2379 UploadDialog.cpp:180
+#: effects/AvcCompressor.cpp:732 effects/ChangeLength.cpp:183
+#: effects/SpikeCleaner.cpp:188 effects/VST/VSTEffect.cpp:446
+#: effects/audiounits/AudioUnitEffect.cpp:882 effects/vamp/VampEffect.cpp:411
msgid "&Cancel"
msgstr "&Cancel·la"
-#: BatchProcessDialog.cpp:146
-#: BatchProcessDialog.cpp:191
+#: BatchProcessDialog.cpp:146 BatchProcessDialog.cpp:191
msgid "No chain selected"
msgstr "No s'ha seleccionat cap cadena d'ordres"
@@ -619,8 +571,7 @@ msgstr "S'està aplicant..."
msgid "File"
msgstr "Fitxer"
-#: BatchProcessDialog.cpp:356
-#: BatchProcessDialog.cpp:360
+#: BatchProcessDialog.cpp:356 BatchProcessDialog.cpp:360
#: BatchProcessDialog.cpp:361
msgid "Edit Chains"
msgstr "Edita les cadenes d'ordres"
@@ -629,19 +580,12 @@ msgstr "Edita les cadenes d'ordres"
msgid "&Chains"
msgstr "&Cadenes d'ordres"
-#: BatchProcessDialog.cpp:435
-#: Tags.cpp:815
-#: Tags.cpp:1455
-#: Tags.cpp:2055
+#: BatchProcessDialog.cpp:435 Tags.cpp:815 Tags.cpp:1455 Tags.cpp:2055
msgid "&Add"
msgstr "&Afegeix"
-#: BatchProcessDialog.cpp:436
-#: LabelDialog.cpp:126
-#: Tags.cpp:816
-#: Tags.cpp:1456
-#: Tags.cpp:2056
-#: TrackPanel.cpp:4201
+#: BatchProcessDialog.cpp:436 LabelDialog.cpp:126 Tags.cpp:816 Tags.cpp:1456
+#: Tags.cpp:2056 TrackPanel.cpp:4201
msgid "&Remove"
msgstr "&Elimina"
@@ -655,8 +599,8 @@ msgstr "Ca&dena d'ordres (feu doble clic o premeu ESPAI per a editar-la)"
#. i18n-hint: This is the number of the command in the list
#: BatchProcessDialog.cpp:453
-msgid "No"
-msgstr "Núm."
+msgid "Num"
+msgstr ""
#: BatchProcessDialog.cpp:459
msgid "&Insert"
@@ -745,8 +689,7 @@ msgstr "Espai de disc"
msgid "Copy Selected Audio Into Project"
msgstr "Copia al projecte el fragment de so seleccionat"
-#: Dependencies.cpp:304
-#: Dependencies.cpp:410
+#: Dependencies.cpp:304 Dependencies.cpp:410
msgid "Cancel Save"
msgstr "Cancel·la l'acció de desar"
@@ -758,8 +701,7 @@ msgstr "No copiïs cap so"
msgid "Copy All Audio into Project (Safer)"
msgstr "Copia tot el so dins del projecte (el més segur)"
-#: Dependencies.cpp:317
-#: Dependencies.cpp:322
+#: Dependencies.cpp:317 Dependencies.cpp:322
msgid "Ask me"
msgstr "Pregunta-m'ho"
@@ -793,9 +735,7 @@ msgid "Warning: there is very little free disk space left on this volume.\n"
msgstr "Atenció: hi ha molt poc espai de disc lliure en aquest volum.\n"
"Seleccioneu un altre directori temporal a les preferències."
-#: DirManager.cpp:221
-#: DirManager.cpp:251
-#: DirManager.cpp:332
+#: DirManager.cpp:221 DirManager.cpp:251 DirManager.cpp:332
msgid "Progress"
msgstr "Progrés"
@@ -851,8 +791,7 @@ msgstr "No s'ha pogut canviar el nom de '%s' a '%s'"
msgid "Changed block %s to new alias name\n"
msgstr ""
-#: DirManager.cpp:1115
-#: DirManager.cpp:1403
+#: DirManager.cpp:1115 DirManager.cpp:1403
msgid "Inspecting project file data..."
msgstr "S'estan inspeccionant les dades del fitxer de projecte..."
@@ -903,14 +842,9 @@ msgstr "Continua sense eliminar-los; ignora els fitxers extra"
msgid "Close project immediately with no changes"
msgstr "Tanca el projecte ara mateix sense fer cap canvi"
-#: DirManager.cpp:1228
-#: DirManager.cpp:1263
-#: DirManager.cpp:1309
-#: DirManager.cpp:1351
-#: export/Export.cpp:490
-#: export/Export.cpp:507
-#: export/Export.cpp:526
-#: widgets/Warning.cpp:55
+#: DirManager.cpp:1228 DirManager.cpp:1263 DirManager.cpp:1309
+#: DirManager.cpp:1351 export/Export.cpp:490 export/Export.cpp:507
+#: export/Export.cpp:526 widgets/Warning.cpp:55
msgid "Warning"
msgstr "Atenció"
@@ -932,14 +866,11 @@ msgstr "La comprovació del projecte ha detectat que %d fitxers d'entrada que s'
msgid "Replace missing data with silence [permanent upon save]"
msgstr "Substitueix les dades perdudes per silencis [de manera permanent si es desa el projecte]"
-#: DirManager.cpp:1260
-#: DirManager.cpp:1348
+#: DirManager.cpp:1260 DirManager.cpp:1348
msgid "Temporarily replace missing data with silence [this session only]"
msgstr "Substitueix les dades perdudes per silencis [només durant aquesta sessió] "
-#: DirManager.cpp:1261
-#: DirManager.cpp:1307
-#: DirManager.cpp:1349
+#: DirManager.cpp:1261 DirManager.cpp:1307 DirManager.cpp:1349
msgid "Close project immediately with no further changes"
msgstr "Tanca el projecte immediatament sense fer-li més canvis"
@@ -1007,11 +938,11 @@ msgstr "Rectangular"
msgid "FFmpeg support not compiled in"
msgstr ""
-#: FFmpeg.cpp:101
+#: FFmpeg.cpp:103
msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
#: FFmpeg.cpp:104
@@ -1069,11 +1000,12 @@ msgstr ""
msgid "FFmpeg not found"
msgstr ""
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
#: FFmpeg.h:109
@@ -1096,8 +1028,7 @@ msgstr ""
msgid "Frequency Analysis"
msgstr "Anà lisi de freqüències"
-#: FreqWindow.cpp:140
-#: TrackPanel.cpp:563
+#: FreqWindow.cpp:140 TrackPanel.cpp:563
msgid "Spectrum"
msgstr "Espectre"
@@ -1125,8 +1056,7 @@ msgstr "Cepstrum"
msgid "Algorithm"
msgstr "Algorisme: "
-#: FreqWindow.cpp:168
-#: HistoryWindow.cpp:79
+#: FreqWindow.cpp:168 HistoryWindow.cpp:79
msgid "Size"
msgstr "Mida"
@@ -1152,10 +1082,7 @@ msgstr "Freqüència de registre"
msgid "Axis"
msgstr ""
-#: FreqWindow.cpp:206
-#: LabelDialog.cpp:128
-#: Menus.cpp:204
-#: Menus.cpp:233
+#: FreqWindow.cpp:206 LabelDialog.cpp:128 Menus.cpp:204 Menus.cpp:233
msgid "&Export..."
msgstr "&Exporta..."
@@ -1163,45 +1090,54 @@ msgstr "&Exporta..."
msgid "Export"
msgstr "Exporta"
-#: FreqWindow.cpp:209
-#: widgets/ErrorDialog.cpp:159
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
+#: FreqWindow.cpp:209 widgets/ErrorDialog.cpp:159
msgid "Close"
msgstr "Tanca"
-#: FreqWindow.cpp:272
-#: FreqWindow.cpp:402
-#: effects/AutoDuck.cpp:489
-#: effects/AutoDuck.cpp:523
-#: effects/AutoDuck.cpp:791
-#: effects/Compressor.cpp:352
-#: effects/Compressor.cpp:360
-#: effects/Equalization.cpp:1109
-#: effects/Equalization.cpp:1111
-#: effects/Equalization.cpp:1119
-#: effects/Equalization.cpp:1185
-#: effects/Equalization.cpp:1394
-#: effects/Equalization.cpp:1405
-#: effects/Normalize.cpp:365
-#: widgets/Meter.cpp:380
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr ""
+
+#: FreqWindow.cpp:272 FreqWindow.cpp:402 effects/AutoDuck.cpp:489
+#: effects/AutoDuck.cpp:523 effects/AutoDuck.cpp:791
+#: effects/Compressor.cpp:352 effects/Compressor.cpp:360
+#: effects/Equalization.cpp:1109 effects/Equalization.cpp:1111
+#: effects/Equalization.cpp:1119 effects/Equalization.cpp:1185
+#: effects/Equalization.cpp:1394 effects/Equalization.cpp:1405
+#: effects/Normalize.cpp:365 widgets/Meter.cpp:380
msgid "dB"
msgstr "dB"
#. i18n-hint: This is the abbreviation for "Hertz", or
#. cycles per second.
-#: FreqWindow.cpp:287
-#: FreqWindow.cpp:442
-#: effects/Equalization.cpp:1150
-#: effects/Equalization.cpp:1181
-#: import/ImportRaw.cpp:416
+#: FreqWindow.cpp:287 FreqWindow.cpp:442 effects/Equalization.cpp:1150
+#: effects/Equalization.cpp:1181 import/ImportRaw.cpp:416
msgid "Hz"
msgstr "Hz"
+#: Menus.cpp:3425
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "Per a dibuixar l'espectre cal que totes les pistes seleccionades tinguin la mateixa freqüència de mostreig."
+
+#: Menus.cpp:3451
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "S'ha seleccionat un fragment de so massa llarg. Només s'analitzaran els primers %.1f segons."
+
#: FreqWindow.cpp:386
msgid "Not enough data selected."
msgstr "No s'han seleccionat prou dades"
-#: FreqWindow.cpp:450
-#: effects/AutoDuck.cpp:793
+#: FreqWindow.cpp:450 effects/AutoDuck.cpp:793
msgid "s"
msgstr "s"
@@ -1223,12 +1159,8 @@ msgstr "espectre.txt"
msgid "Export Spectral Data As:"
msgstr "Anomena i exporta les dades d'espectre:"
-#: FreqWindow.cpp:1079
-#: LabelDialog.cpp:599
-#: Menus.cpp:2207
-#: Project.cpp:2441
-#: Project.cpp:3395
-#: prefs/KeyConfigPrefs.cpp:180
+#: FreqWindow.cpp:1079 LabelDialog.cpp:599 Menus.cpp:2207 Project.cpp:2441
+#: Project.cpp:3395 prefs/KeyConfigPrefs.cpp:180
msgid "Couldn't write to file: "
msgstr "No s'ha pogut escriure al fitxer:"
@@ -1240,6 +1172,21 @@ msgstr "Freqüència (Hz)\tNivell (dB)"
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "Retard (segons)\tFreqüència (Hz)\tNivell"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr ""
+
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr ""
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr "A la [[welcome|pà gina de benvinguda]]."
@@ -1317,7 +1264,8 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr "<p><b>Per gravar:</b> Establiu el dispositiu d'enregistrament i la font d'entrada, ajusteu el nivell d'entrada i feu clic al botó vermell Enregistra.</b></p><p> 1) [[inputdevice|Establiment del dispositiu d'enregistrament]] Podeu escollir el dispositiu des de la pestanya <I>E/S d'Ãudio de les Preferències</I> o a la <i>Barra d'eines de dispositius</i>. Les preferències d'E/S d'à udio us permeten escollir un tipus d'enregistrament estereofònic o monofònic.<br> 2) [[inputsource|Establiment de la font d'entrada]] per a aquest dispositiu (per exemple, micròfon o entrada de lÃnia) a la llista desplegable de la <i>Barra d'Eines del Mesclador</i>, o (en alguns sistemes) al camp Dispositiu d'Enregistrament de la <i>Pestanya d'E/S d'Ãudio de les Preferències</i> o a la <i>Barra d'Eines de Dispositius</i>.<br> 3) [[inputlevel|Ajustar el nivell d'entrada]] mitjançant el picòmetre que hi ha a la dreta a la <i>Barra d'Eines del Mesclador</i>. Un ajustament correcte del nivell és essencial abans de començar a enregistrar, per tal d'evitar sorolls o distorsions. </p><p> Trobareu més ajuda a l'apartat \"Recording\" de les <a href=\"http://audacity.sourceforge.net/help/faq\">Preguntes Més Freqüents</a>, al tutorial <a href=\"http://www.audacityteam.org/manual/index.php?title=Tutorial_-_Your_First_Recording\"> Your First Recording</a> del <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">Manual</a> i a les seccions [[wiki:Recording_Tips|Recording Tips]] i [[wiki:Troubleshooting_Recordings|Troubleshooting Recordings]] del Wiki. </p><br><br>"
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+#, fuzzy
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
msgstr "<p>El dispositiu d'entrada és el dispositiu fÃsic pel qual esteu enregistrant el so. L'heu d'escollir a la llista \"Dispositiu d'Enregistrament\" de la pestanya <i>E/S d'à udio de les Preferències</i>. Al Windows i al Linux les Preferències són a la part inferior del menú <i>Edita</i>. Als Mac, són al menú <i>Audacity</i>. També podeu seleccionar el dispositiu d'enregistrament a la <i>Barra d'eines de dispositius</i>, que es pot activar des del menú <i>Mostra > Barres d'eines...</i>. </p><p> Per defecte, l'Audacity farà servir el dispositiu actualment seleccionat pel sistema (normalment el dispositiu de so integrat), de manera que no us caldrà canviar-lo. En sistemes Windows, aquest dispositiu es pot seleccionar al \"Mapejador de so Microsoft\". Si esteu enregistrant des d'un dispositiu extern de tipus USB o Firewire, com ara un tocadiscs USB, l'haureu de seleccionar pel seu nom un cop l'hà giu connectat. </p><p> Torna a [[record|Enregistrant so]] <br></p>"
#: HelpText.cpp:244
@@ -1341,7 +1289,8 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr "Per a escoltar el vostre treball en altres programes multimèdia, exporteu-lo a un format d'à udio com ara WAV o MP3 (alguns formats són [[wma-proprietary|no suportats]]). Quan [[save|deseu el projecte Audacity]] es crearà un fitxer de projecte (amb una carpeta anomenada _data) que contindrà totes les pistes que esteu editant, de manera que més endavant podreu tornar a reprendre el vostre treball. Amb tot, els altres programes no podran obrir directament els projectes Audacity. </p><p> Per a exportar-los, feu clic a <i>Fitxer > Exporta</i> i escolliu el format a la llista desplegable \"Desa com a\". Per a [[burncd|enregistrar un CD]] que es pugui escoltar en un equip de música, escolliu WAV o AIFF. Per a exportar a MP3, haureu d'instal·lar-vos un [[wiki:Lame_Installation|Codificador Lame]]. </p><p> L'opció <i>Fitxer > Exporta la selecció</i> exporta només l'à rea que es trobi seleccionada. <i>Feu sevir Fitxer > Exporta múltiples fitxers</i> per a exportar diversos fitxers en una única operació, un per a cada pista de so, o un per a cada à rea etiquetada en una pista única. La funció <i>Pistes > Afegeix una etiqueta a la selecció</i> us permet [[wiki:Splitting_recordings_into_separate_tracks|separar les pistes]] d'un à lbum per a desar-les en fitxers independents. </p><br><br>"
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+#, fuzzy
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
msgstr "<p>L'Audacity <b>no pot</b> [[play|interpretar]] o [[export|exportar]] fitxers en <b>WMA, RealAudio, Shorten (SHN)</b> o altres formats propietaris degut a restriccions de llicències i patents. En els ordinadors Mac es poden importar fitxers en format <b>AAC</b> i <b>M4A</b>. Alguns formats oberts, com l'<b>Ogg Speex</b> o el <b>Musepack</b> tampoc estan suportats. Els fitxers protegits per qualsevol tipus de Gestió de Drets Digitals (DRM), incloent la majoria dels que es compren a les botigues en lÃnia, com ara iTunes o Napster, <b>no es poden</b> importar.</p><p> Si no podeu importa un fixer a l'Audacity i no està protegit per DRM, feu servir l'iTunes o el <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> per convertir-lo a WAV o AIFF. Si està protegit, enregistreu-lo a CD amb el programa llicenciat per a interpretar-lo i extraieu després la pista del CD a WAV o AIFF mitjançant l'ITunes o (en Windows) el <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> o el Windows Media Player 11. També podeu <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">enregistrar</a> el so mentre el feu sonar al vostre ordinador. <i>Per a exportar a un format no suportat, exporteu primer a WAV o AIFF i convertiu-lo al format desitjat amb l'iTunes o el <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
#: HelpText.cpp:383
@@ -1376,15 +1325,9 @@ msgstr "Nivells a descartar"
msgid "&Discard"
msgstr "&Descarta"
-#: HistoryWindow.cpp:111
-#: Tags.cpp:2072
-#: Tags.cpp:2074
-#: Tags.cpp:2376
-#: Tags.cpp:2378
-#: effects/ChangeLength.cpp:186
-#: effects/SpikeCleaner.cpp:191
-#: effects/vamp/VampEffect.cpp:414
-#: export/ExportCL.cpp:398
+#: HistoryWindow.cpp:111 Tags.cpp:2072 Tags.cpp:2074 Tags.cpp:2376
+#: Tags.cpp:2378 effects/ChangeLength.cpp:186 effects/SpikeCleaner.cpp:191
+#: effects/vamp/VampEffect.cpp:414 export/ExportCL.cpp:398
msgid "&OK"
msgstr "&D'acord"
@@ -1392,8 +1335,7 @@ msgstr "&D'acord"
msgid "Unable to determine"
msgstr "No s'ha pogut determinar"
-#: Internat.cpp:195
-#: import/ImportRaw.cpp:392
+#: Internat.cpp:195 import/ImportRaw.cpp:392
msgid "bytes"
msgstr "octets"
@@ -1409,13 +1351,19 @@ msgstr "MB"
msgid "GB"
msgstr "GB"
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
#: LabelDialog.cpp:52
msgid "Track"
msgstr "Pista"
-#: LabelDialog.cpp:53
-#: Menus.cpp:4057
-#: Menus.cpp:4085
+#: LabelDialog.cpp:53 Menus.cpp:4057 Menus.cpp:4085
msgid "Label"
msgstr "Etiqueta"
@@ -1427,8 +1375,7 @@ msgstr "Temps inicial"
msgid "End Time"
msgstr "Temps final"
-#: LabelDialog.cpp:98
-#: Menus.cpp:627
+#: LabelDialog.cpp:98 Menus.cpp:627
msgid "&Edit Labels"
msgstr "&Edita les etiquetes"
@@ -1444,8 +1391,7 @@ msgstr "Insereix &després"
msgid "Insert &Before"
msgstr "Insereix &abans"
-#: LabelDialog.cpp:127
-#: Menus.cpp:194
+#: LabelDialog.cpp:127 Menus.cpp:194
msgid "&Import..."
msgstr "&Importa..."
@@ -1467,20 +1413,15 @@ msgstr "Heu deixat alguns noms d'etiquetes en blanc. Aquests elements\n"
msgid "Confirm"
msgstr "Confirma"
-#: LabelDialog.cpp:514
-#: Menus.cpp:3555
+#: LabelDialog.cpp:514 Menus.cpp:3555
msgid "Select a text file containing labels..."
msgstr "Seleccioneu un text que contingui les etiquetes..."
-#: LabelDialog.cpp:518
-#: Menus.cpp:3559
+#: LabelDialog.cpp:518 Menus.cpp:3559
msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
msgstr "Fitxers de text (*.txt)|*.txt|Tots els fitxers (*.*)|*.*"
-#: LabelDialog.cpp:532
-#: Menus.cpp:3571
-#: Project.cpp:1831
-#: Project.cpp:1839
+#: LabelDialog.cpp:532 Menus.cpp:3571 Project.cpp:1831 Project.cpp:1839
#: import/ImportMIDI.cpp:31
msgid "Could not open file: "
msgstr "No s'ha pogut obrir el fitxer:"
@@ -1489,13 +1430,11 @@ msgstr "No s'ha pogut obrir el fitxer:"
msgid "No labels to export."
msgstr "No hi ha cap etiqueta per a exportar."
-#: LabelDialog.cpp:564
-#: Menus.cpp:2172
+#: LabelDialog.cpp:564 Menus.cpp:2172
msgid "Export Labels As:"
msgstr "Anomena i exporta les etiquetes:"
-#: LabelDialog.cpp:566
-#: Menus.cpp:2170
+#: LabelDialog.cpp:566 Menus.cpp:2170
msgid "labels.txt"
msgstr "etiquetes.txt"
@@ -1507,10 +1446,7 @@ msgstr "Pista d'etiquetes nova"
msgid "Enter track name"
msgstr "Escriviu el nom de la pista"
-#: LabelDialog.cpp:701
-#: LabelDialog.h:52
-#: LabelTrack.cpp:89
-#: Menus.cpp:555
+#: LabelDialog.cpp:701 LabelDialog.h:52 LabelTrack.cpp:89 Menus.cpp:555
msgid "&Label Track"
msgstr "Pista d'e&tiquetes"
@@ -1537,24 +1473,15 @@ msgstr "S'està obrint el projecte Audacity"
msgid "&File"
msgstr "&Fitxer"
-#: Menus.cpp:164
-msgid "&New\tCtrl+N"
-msgstr "&Nou\tCtrl+N"
-
-#: Menus.cpp:166
-msgid "&Open...\tCtrl+O"
-msgstr "&Obre...\tCtrl+O"
-
#: Menus.cpp:171
-msgid "&Close\tCtrl+W"
-msgstr "&Tanca\tCtrl+W"
+msgid "&Close"
+msgstr "&Tanca"
#: Menus.cpp:174
-msgid "&Save Project\tCtrl+S"
-msgstr "&Desa el projecte\tCtrl+S"
+msgid "&Save Project"
+msgstr "&Desa el projecte"
-#: Menus.cpp:178
-#: Project.cpp:2690
+#: Menus.cpp:178 Project.cpp:2690
msgid "Save Project &As..."
msgstr "&Anomena i desa el projecte..."
@@ -1575,8 +1502,8 @@ msgid "&Import"
msgstr "&Importa"
#: Menus.cpp:196
-msgid "&Audio...\tCtrl+Shift+I"
-msgstr "&So...\tCtrl+Shift+I"
+msgid "&Audio..."
+msgstr "&So..."
#: Menus.cpp:197
msgid "&Labels..."
@@ -1590,8 +1517,7 @@ msgstr "&MIDI..."
msgid "&Raw Data..."
msgstr "Dades c&rues..."
-#: Menus.cpp:210
-#: Menus.cpp:239
+#: Menus.cpp:210 Menus.cpp:239
msgid "Expo&rt Selection..."
msgstr "Anomena i expo&rta la selecció..."
@@ -1607,12 +1533,11 @@ msgstr "Exporta &múltiples fitxers..."
msgid "Export MIDI..."
msgstr ""
-#: Menus.cpp:247
-msgid "CleanSpeech C&hain..."
-msgstr "En&cadenament de CleanSpeech..."
+#: Menus.cpp:260
+msgid "Appl&y Chain..."
+msgstr "Execu&ta la cadena d'ordres..."
-#: Menus.cpp:248
-#: Menus.cpp:262
+#: Menus.cpp:248 Menus.cpp:262
msgid "Edit C&hains..."
msgstr "Edita les &cadenes d'ordres..."
@@ -1624,10 +1549,6 @@ msgstr "Exporta &configuracions del CleanSpeech..."
msgid "I&mport CleanSpeech Presets..."
msgstr "Importa &configuracions del CleanSpeech..."
-#: Menus.cpp:260
-msgid "Appl&y Chain..."
-msgstr "Execu&ta la cadena d'ordres..."
-
#: Menus.cpp:267
msgid "&Upload File..."
msgstr "P&uja el fitxer..."
@@ -1641,75 +1562,72 @@ msgid "&Print..."
msgstr "Im&primeix..."
#: Menus.cpp:287
-msgid "E&xit\tCtrl+Q"
-msgstr "&Surt\tCtrl+Q"
+msgid "E&xit"
+msgstr "&Surt"
-#: Menus.cpp:295
-#: toolbars/EditToolBar.cpp:76
+#: Menus.cpp:295 toolbars/EditToolBar.cpp:76
msgid "&Edit"
msgstr "&Edita"
#: Menus.cpp:299
-msgid "&Undo\tCtrl+Z"
-msgstr "&Desfés\tCtrl+Z"
+msgid "&Undo"
+msgstr "&Desfés"
-#: Menus.cpp:307
-#: prefs/KeyConfigPrefs.cpp:369
-#: toolbars/EditToolBar.cpp:146
+#: Menus.cpp:307 prefs/KeyConfigPrefs.cpp:369 toolbars/EditToolBar.cpp:146
msgid "&Redo"
msgstr "&Refés"
#: Menus.cpp:320
-msgid "Cu&t\tCtrl+X"
-msgstr "&Retalla\tCtrl+X"
+msgid "Cu&t"
+msgstr "&Retalla"
#: Menus.cpp:324
-msgid "Spl&it Cut\tCtrl+Alt+X"
-msgstr "Divideix i re&talla\tCtrl+Alt+X"
+msgid "Spl&it Cut"
+msgstr "Divideix i re&talla"
#: Menus.cpp:325
-msgid "&Copy\tCtrl+C"
-msgstr "&Copia\tCtrl+C"
+msgid "&Copy"
+msgstr "&Copia"
#: Menus.cpp:329
-msgid "&Paste\tCtrl+V"
-msgstr "&Enganxa\tCtrl+V"
+msgid "&Paste"
+msgstr "&Enganxa"
#: Menus.cpp:333
-msgid "Tri&m\tCtrl+T"
-msgstr "Deixa no&més la selecció\tCtrl+T"
+msgid "Tri&m"
+msgstr "Deixa no&més la selecció"
#: Menus.cpp:335
-msgid "&Delete\tCtrl+K"
-msgstr "&Elimina\tCtrl+K"
+msgid "&Delete"
+msgstr "&Elimina"
#: Menus.cpp:336
-msgid "Split D&elete\tCtrl+Alt+K"
-msgstr "Divideix i &elimina\tCtrl+Alt+K"
+msgid "Split D&elete"
+msgstr "Divideix i &elimina"
#: Menus.cpp:381
-msgid "Silence Audi&o\tCtrl+L"
+msgid "Silence Audi&o"
msgstr ""
#: Menus.cpp:339
-msgid "Sp&lit\tCtrl+I"
-msgstr "Divi&deix\tCtrl+I"
+msgid "Sp&lit"
+msgstr "Divi&deix"
#: Menus.cpp:344
-msgid "Split Ne&w\tCtrl+Alt+I"
-msgstr "Divideix en un de no&u\tCtrl+Alt+I"
+msgid "Split Ne&w"
+msgstr "Divideix en un de no&u"
#: Menus.cpp:349
-msgid "&Join\tCtrl+J"
-msgstr "A&junta\tCtrl+J"
+msgid "&Join"
+msgstr "A&junta"
#: Menus.cpp:394
-msgid "Detac&h at Silences\tCtrl+Alt+J"
+msgid "Detac&h at Silences"
msgstr ""
#: Menus.cpp:352
-msgid "Duplic&ate\tCtrl+D"
-msgstr "Duplic&a\tCtrl+D"
+msgid "Duplic&ate"
+msgstr "Duplic&a"
#: Menus.cpp:401 Menus.cpp:641
msgid "Stereo Trac&k to Mono"
@@ -1721,80 +1639,65 @@ msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:367
-msgid "&Cut\tAlt+X"
-msgstr "&Retalla\tAlt+X"
+msgid "&Cut"
+msgstr "&Retalla"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:372
-msgid "&Split Cut\tShift+Alt+X"
-msgstr "Divideix i re&talla\tShift+Alt+X"
+msgid "&Split Cut"
+msgstr "Divideix i re&talla"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:377
-msgid "Co&py\tShift+Alt+C"
-msgstr "Co&pia\tShift+Alt+C"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:383
-msgid "&Delete\tAlt+K"
-msgstr "E&limina\tAlt+K"
+msgid "Co&py"
+msgstr "Co&pia"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:388
-msgid "Sp&lit Delete\tShift+Alt+K"
-msgstr "Di&videix i elimina\tShift+Alt+K"
+msgid "Sp&lit Delete"
+msgstr "Di&videix i elimina"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:393
-msgid "Sile&nce\tAlt+L"
-msgstr "Sile&nci\tAlt+L"
+msgid "Sile&nce"
+msgstr "Sile&nci"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:399
-msgid "Spli&t\tAlt+I"
-msgstr "Di&videix\tAlt+I"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:404
-msgid "&Join\tAlt+J"
-msgstr "A&junta\tAlt+J"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:452
-msgid "Detac&h at Silences\tShift+Alt+J"
-msgstr ""
+msgid "Spli&t"
+msgstr "Di&videix"
#: Menus.cpp:457
msgid "&Select"
msgstr ""
#: Menus.cpp:416
-msgid "&All\tCtrl+A"
-msgstr "&Tot\tCtrl+A"
+msgid "&All"
+msgstr "&Tot"
#: Menus.cpp:417
-msgid "&None\tCtrl+Shift+A"
-msgstr "&Cap...\tCtrl+Shift+A"
+msgid "&None"
+msgstr "&Cap..."
#: Menus.cpp:421
-msgid "&Left at Playback Position\t["
-msgstr "A l'&esquerra de la posició d'interpretació\t["
+msgid "&Left at Playback Position"
+msgstr "A l'&esquerra de la posició d'interpretació"
#: Menus.cpp:422
-msgid "&Right at Playback Position\t]"
-msgstr "A la &dreta de la posició d'interpretació\t]"
+msgid "&Right at Playback Position"
+msgstr "A la &dreta de la posició d'interpretació"
#: Menus.cpp:426
-msgid "Track &Start to Cursor\tShift+J"
-msgstr "De l'&inici de pista fins al cursor\tShift+J"
+msgid "Track &Start to Cursor"
+msgstr "De l'&inici de pista fins al cursor"
#: Menus.cpp:427
-msgid "Cursor to Track &End\tShift+K"
-msgstr "Del cursor fins al final de la pista\tShift+K"
+msgid "Cursor to Track &End"
+msgstr "Del cursor fins al final de la pista"
#: Menus.cpp:433
-msgid "Find &Zero Crossings\tZ"
-msgstr "Cerca encreuaments amb el &zero\tZ"
+msgid "Find &Zero Crossings"
+msgstr "Cerca encreuaments amb el &zero"
#: Menus.cpp:478
msgid "Mo&ve Cursor"
@@ -1809,12 +1712,12 @@ msgid "to Selection En&d"
msgstr "al &final de la selecció"
#: Menus.cpp:442
-msgid "to Track &Start\tJ"
-msgstr "a l'inici de la &pista\tJ"
+msgid "to Track &Start"
+msgstr "a l'inici de la &pista"
#: Menus.cpp:443
-msgid "to Track &End\tK"
-msgstr "al &final de la pista\tK"
+msgid "to Track &End"
+msgstr "al &final de la pista"
#: Menus.cpp:450
msgid "Re&gion Save"
@@ -1836,29 +1739,8 @@ msgstr "&Bloca"
msgid "&Unlock"
msgstr "&Desbloca"
-#: Menus.cpp:470
-msgid "Turn Snap-To On"
-msgstr "Habilita l'arrodoniment de mesures"
-
-#: Menus.cpp:471
-msgid "Turn Snap-To Off"
-msgstr "Inhabilita l'arrodoniment de mesures"
-
-#: Menus.cpp:472
-msgid "Turn Grid Snap On"
-msgstr "Habilita l'aproximació a la quadrÃcula"
-
-#: Menus.cpp:473
-msgid "Turn Grid Snap Off"
-msgstr "Inhabilita l'aproximació a la quadrÃcula"
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
#: Menus.cpp:521
-msgid "Pre&ferences...\tCtrl+,"
-msgstr ""
-
-#: Menus.cpp:525
-msgid "Pre&ferences...\tCtrl+P"
+msgid "Pre&ferences..."
msgstr ""
#: Menus.cpp:492
@@ -1866,36 +1748,36 @@ msgid "&View"
msgstr "&Mostra"
#: Menus.cpp:494
-msgid "Zoom &In\tCtrl+1"
-msgstr "A&propa\tCtrl+1"
+msgid "Zoom &In"
+msgstr "A&propa"
#: Menus.cpp:497
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "Zoom &normal\tCtrl+2"
+msgid "Zoom &Normal"
+msgstr "Zoom &normal"
#: Menus.cpp:498
-msgid "Zoom &Out\tCtrl+3"
-msgstr "A&llunya\tCtrl+3"
+msgid "Zoom &Out"
+msgstr "A&llunya"
#: Menus.cpp:501
-msgid "&Fit in Window\tCtrl+F"
-msgstr "&Encabeix a la finestra\tCrtl+F"
+msgid "&Fit in Window"
+msgstr "&Encabeix a la finestra"
#: Menus.cpp:502
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "Encabeix &Verticalment\tCtrl+Shift+F"
+msgid "Fit &Vertically"
+msgstr "Encabeix &Verticalment"
#: Menus.cpp:503
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "Fes &zoom a la selecció\tCrtl+E"
+msgid "&Zoom to Selection"
+msgstr "Fes &zoom a la selecció"
#: Menus.cpp:506
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
-msgstr "Ai&xafa totes les pistes\tCtrl+Shift+C"
+msgid "&Collapse All Tracks"
+msgstr "Ai&xafa totes les pistes"
#: Menus.cpp:507
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
-msgstr "E&xpandeix totes les pistes\tCtrl+Shift+X"
+msgid "E&xpand All Tracks"
+msgstr "E&xpandeix totes les pistes"
#: Menus.cpp:510
msgid "&Show Clipping"
@@ -1955,40 +1837,40 @@ msgstr "!Vista simplificada"
msgid "T&ransport"
msgstr ""
-#: Menus.cpp:591
-msgid "Play\tSpace"
-msgstr ""
+#: toolbars/ControlToolBar.cpp:177
+msgid "Play"
+msgstr "Interpreta"
#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
+msgid "&Loop Play"
msgstr ""
#: Menus.cpp:595
-msgid "&Pause\tP"
+msgid "&Pause"
msgstr ""
#: Menus.cpp:596
-msgid "&Stop\tSpace"
+msgid "&Stop"
msgstr ""
#: Menus.cpp:799
-msgid "Skip to Start\tHome"
-msgstr "Vés a l'inici\tHome"
+msgid "Skip to Start"
+msgstr "Vés a l'inici"
#: Menus.cpp:800
-msgid "Skip to End\tEnd"
-msgstr "Vés a la pista següent i canvia la selecció\tEnd"
+msgid "Skip to End"
+msgstr "Vés a la pista següent i canvia la selecció"
#: Menus.cpp:602
-msgid "&Record\tR"
+msgid "&Record"
msgstr ""
#: Menus.cpp:604
-msgid "&Timer Record...\tShift+T"
+msgid "&Timer Record..."
msgstr ""
#: Menus.cpp:606
-msgid "Append Record\tShift+R"
+msgid "Append Record"
msgstr ""
#: Menus.cpp:609
@@ -2016,15 +1898,14 @@ msgid "Add &New"
msgstr ""
#: Menus.cpp:553
-msgid "&Audio Track\tCtrl+Shift+N"
-msgstr "Pista de &so\tCtrl+Shift+N"
+msgid "&Audio Track"
+msgstr "Pista de &so"
#: Menus.cpp:554
msgid "&Stereo Track"
msgstr "Pista e&stereofònica"
-#: Menus.cpp:556
-#: TimeTrack.cpp:44
+#: Menus.cpp:556 TimeTrack.cpp:44
msgid "&Time Track"
msgstr "Pista de &temps"
@@ -2033,8 +1914,8 @@ msgid "Mi&x and Render"
msgstr "&Mescla i renderitza"
#: Menus.cpp:572
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
-msgstr "Mescla-ho i renderitza-ho en una nova pista\tCtrl+Shift+M"
+msgid "Mix and Render to New Track"
+msgstr "Mescla-ho i renderitza-ho en una nova pista"
#: Menus.cpp:576
msgid "&Resample..."
@@ -2045,12 +1926,12 @@ msgid "Remo&ve Tracks"
msgstr "&Elimina pistes"
#: Menus.cpp:592
-msgid "&Mute All Tracks\tCtrl+U"
-msgstr "Si&lencia totes les pistes\tCtrl+U"
+msgid "&Mute All Tracks"
+msgstr "Si&lencia totes les pistes"
#: Menus.cpp:593
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
-msgstr "&Activa el so a totes les pistes\tCtrl+Shift+U"
+msgid "&UnMute All Tracks"
+msgstr "&Activa el so a totes les pistes"
#: Menus.cpp:597
msgid "Align with &Zero"
@@ -2096,17 +1977,17 @@ msgstr ""
msgid "Synchronize MIDI with Audio"
msgstr ""
-#: Menus.cpp:708
-msgid "Link Audio and Label Tracks"
+#: Menus.cpp:686
+msgid "&Link Audio and Label Tracks"
msgstr ""
-#: Menus.cpp:623
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "Afegeix una e&tiqueta a la selecció\tCtrl+B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr ""
#: Menus.cpp:624
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "Afegeix una etiqueta al &punt d'interpretació\tCtrl+M"
+msgid "Add Label At &Playback Position"
+msgstr "Afegeix una etiqueta al &punt d'interpretació"
#: Menus.cpp:718
msgid "S&ort tracks"
@@ -2132,20 +2013,19 @@ msgstr ""
msgid "Effe&ct"
msgstr "Efe&cte"
-#: Menus.cpp:670
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "Repeteix el darrer efecte\tCtrl+R"
-
#: Menus.cpp:702
msgid "&Analyze"
msgstr "&Analitza"
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
+
#: Menus.cpp:704
msgid "Plot Spectrum..."
msgstr "Traça l'espectre..."
-#: Menus.cpp:737
-#: Menus.cpp:740
+#: Menus.cpp:737 Menus.cpp:740
msgid "&Help"
msgstr "&Ajuda"
@@ -2157,9 +2037,9 @@ msgstr "&Quant a l'Audacity CleanSpeech..."
msgid "&Show Welcome Message..."
msgstr "Mo&stra el missatge de benvinguda..."
-#: Menus.cpp:748
-msgid "&Index..."
-msgstr "&Ãndex..."
+#: Menus.cpp:958
+msgid "&Help..."
+msgstr ""
#: Menus.cpp:961
msgid "Show &Log..."
@@ -2177,181 +2057,149 @@ msgstr "&Executa el test d'eficiència..."
msgid "&Audio Device Info..."
msgstr "Informació del dispositiu de &so..."
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
msgstr ""
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
msgstr ""
#: Menus.cpp:774
-msgid "Selection Tool\tF1"
-msgstr "Eina de selecció\tF1"
+msgid "Selection Tool"
+msgstr "Eina de selecció"
#: Menus.cpp:775
-msgid "Envelope Tool\tF2"
-msgstr "Eina d'envolupant\tF2"
+msgid "Envelope Tool"
+msgstr "Eina d'envolupant"
#: Menus.cpp:776
-msgid "Draw Tool\tF3"
-msgstr "Eina de dibuix\tF3"
+msgid "Draw Tool"
+msgstr "Eina de dibuix"
#: Menus.cpp:777
-msgid "Zoom Tool\tF4"
-msgstr "Eina de zoom\tF4"
+msgid "Zoom Tool"
+msgstr "Eina de zoom"
#: Menus.cpp:778
-msgid "Time Shift Tool\tF5"
-msgstr "Eina de desplaçament en el temps\tF5"
+msgid "Time Shift Tool"
+msgstr "Eina de desplaçament en el temps"
#: Menus.cpp:779
-msgid "Multi Tool\tF6"
-msgstr "Multi-eina\tF6"
+msgid "Multi Tool"
+msgstr "Multi-eina"
#: Menus.cpp:781
-msgid "Next Tool\tD"
-msgstr "Eina següent\tD"
+msgid "Next Tool"
+msgstr "Eina següent"
#: Menus.cpp:782
-msgid "Previous Tool\tA"
-msgstr "Eina anterior\tA"
+msgid "Previous Tool"
+msgstr "Eina anterior"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
+msgid "Play/Stop"
msgstr ""
-#: Menus.cpp:785
-msgid "Stop\tS"
-msgstr "Atura't\tS"
-
-#: Menus.cpp:786
-msgid "Pause\tP"
-msgstr "Pausa\tP"
-
-#: Menus.cpp:787
-msgid "Record\tR"
-msgstr "Enregistra\tR"
-
-#: Menus.cpp:788
-msgid "Record Append\tShift+R"
-msgstr "Enregistra afegint\tShift+R"
-
#: Menus.cpp:790
-msgid "Play/Stop and Set Cursor\tShift+A"
-msgstr "Engega/Atura i Estableix la posició del cursor\tShift+A"
+msgid "Play/Stop and Set Cursor"
+msgstr "Engega/Atura i Estableix la posició del cursor"
#: Menus.cpp:793
-msgid "Play One Second\t1"
-msgstr "Reprodueix un segon\t1"
+msgid "Play One Second"
+msgstr "Reprodueix un segon"
#: Menus.cpp:794
-msgid "Play To Selection\tB"
-msgstr "Reprodueix fins la selecció\tB"
-
-#: Menus.cpp:795
-msgid "Play Looped\tL"
-msgstr "Reprodueix en bucle\tL"
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
+msgid "Play To Selection"
+msgstr "Reprodueix fins la selecció"
#: Menus.cpp:797
-msgid "Play Cut Preview\tC"
-msgstr "Interpreta l'exemple d'audició del fragment retallat\tC"
+msgid "Play Cut Preview"
+msgstr "Interpreta l'exemple d'audició del fragment retallat"
#: Menus.cpp:802
-msgid "Selection to Start\tShift+Home"
-msgstr "Selecciona fins a l'inici\tShift+Home"
+msgid "Selection to Start"
+msgstr "Selecciona fins a l'inici"
#: Menus.cpp:803
-msgid "Selection to End\tShift+End"
-msgstr "Selecciona fins al final\tShift+End"
+msgid "Selection to End"
+msgstr "Selecciona fins al final"
#: Menus.cpp:805
-msgid "DeleteKey\tBackspace"
-msgstr "Tecla d'eliminació\tBackspace"
+msgid "DeleteKey"
+msgstr "Tecla d'eliminació"
#: Menus.cpp:810
-msgid "DeleteKey2\tDelete"
-msgstr "Tecla d'eliminació 2\tDelete"
+msgid "DeleteKey2"
+msgstr "Tecla d'eliminació 2"
-#: Menus.cpp:816
-msgid "Seek left short period during playback\tLeft"
-msgstr "Retrocedeix una mica durant la interpretació\tLeft"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
+msgstr ""
-#: Menus.cpp:817
-msgid "Seek right short period during playback\tRight"
-msgstr "Avança una mica durant la interpretació\tRight"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
+msgstr ""
-#: Menus.cpp:818
-msgid "Seek left long period during playback\tShift+Left"
-msgstr "Retrocedeix un tros llarg durant la interpretació\tShift+Left"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
+msgstr ""
-#: Menus.cpp:819
-msgid "Seek right long period during playback\tShift+Right"
-msgstr "Avança un tros llarg durant la interpretació\tShift+Right"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
+msgstr ""
#: Menus.cpp:823
-msgid "Move Focus to Previous Track\tUp"
-msgstr "Vés a la pista anterior\tUp"
+msgid "Move Focus to Previous Track"
+msgstr "Vés a la pista anterior"
-#: Menus.cpp:824
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
-msgstr "Vés a la pista anterior i canvia la selecció\tShift+Up"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
+msgstr ""
#: Menus.cpp:825
-msgid "Move Focus to Next Track\tDown"
-msgstr "Vés a la pista següent\tADown"
+msgid "Move Focus to Next Track"
+msgstr "Vés a la pista següent"
-#: Menus.cpp:826
-msgid "Move Focus to Next and Change Selection\tShift+Down"
-msgstr "Vés a la pista següent i canvia la selecció\tShift+Down"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
+msgstr ""
#: Menus.cpp:827
-msgid "Toggle Focused Track\tReturn"
-msgstr "Commuta la pista actual\tReturn"
-
-#: Menus.cpp:828
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr "Commuta la pista actual\tNUMPAD_ENTER"
-
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
-msgstr ""
+msgid "Toggle Focused Track"
+msgstr "Commuta la pista actual"
#: Menus.cpp:831
-msgid "Cursor Left\tLeft"
-msgstr "Cursor a l'esquerra\tLeft"
+msgid "Cursor Left"
+msgstr "Cursor a l'esquerra"
#: Menus.cpp:832
-msgid "Cursor Right\tRight"
-msgstr "Cursor a la dreta\tRight"
+msgid "Cursor Right"
+msgstr "Cursor a la dreta"
#: Menus.cpp:833
-msgid "Cursor Short Jump Left\t,"
-msgstr "Salt curt del cursor a l'esquerra\t,"
+msgid "Cursor Short Jump Left"
+msgstr "Salt curt del cursor a l'esquerra"
#: Menus.cpp:834
-msgid "Cursor Short Jump Right\t."
-msgstr "Salt curt del cursor a la dreta\t."
+msgid "Cursor Short Jump Right"
+msgstr "Salt curt del cursor a la dreta"
#: Menus.cpp:835
-msgid "Cursor Long Jump Left\tShift+,"
-msgstr "Salt llarg del cursor a l'esquerra\tShift.+,"
+msgid "Cursor Long Jump Left"
+msgstr "Salt llarg del cursor a l'esquerra"
#: Menus.cpp:836
-msgid "Cursor Long Jump Right\tShift+."
-msgstr "Salt llarg del cursor a la dreta\tShift+."
+msgid "Cursor Long Jump Right"
+msgstr "Salt llarg del cursor a la dreta"
#: Menus.cpp:838
-msgid "Selection Extend Left\tShift+Left"
-msgstr "Expandeix la selecció a l'esquerra\tShift+Left"
+msgid "Selection Extend Left"
+msgstr "Expandeix la selecció a l'esquerra"
#: Menus.cpp:839
-msgid "Selection Extend Right\tShift+Right"
-msgstr "Expandeix la selecció a la dreta\tShift+Right"
+msgid "Selection Extend Right"
+msgstr "Expandeix la selecció a la dreta"
#: Menus.cpp:841
msgid "Set (or Extend) Left Selection"
@@ -2362,52 +2210,52 @@ msgid "Set (or Extend) Right Selection"
msgstr "Estableix (o estén) el lÃmit dret de la selecció"
#: Menus.cpp:844
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "Contreu la selecció a l'esquerra\tCtrl+Shift+Right"
+msgid "Selection Contract Left"
+msgstr "Contreu la selecció a l'esquerra"
#: Menus.cpp:845
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "Contreu la selecció a la dreta\tCtrl+Shift+Left"
+msgid "Selection Contract Right"
+msgstr "Contreu la selecció a la dreta"
#: Menus.cpp:847
-msgid "Change pan on focused track\tShift+P"
-msgstr "Canvia la posició panorà mica de la pista actual\tShift+P"
+msgid "Change pan on focused track"
+msgstr "Canvia la posició panorà mica de la pista actual"
#: Menus.cpp:848
-msgid "Pan left on focused track\tAlt+Shift+Left"
-msgstr "Mou a l'esquerra la posició panorà mica de la pista actual\tAlt+Shift+Left"
+msgid "Pan left on focused track"
+msgstr "Mou a l'esquerra la posició panorà mica de la pista actual"
#: Menus.cpp:849
-msgid "Pan right on focused track\tAlt+Shift+Right"
-msgstr "Mou a la dreta la posició panorà mica de la pista actual\tAlt+Shift+Right"
+msgid "Pan right on focused track"
+msgstr "Mou a la dreta la posició panorà mica de la pista actual"
#: Menus.cpp:850
-msgid "Change gain on focused track\tShift+G"
-msgstr "Canvia el guany a la pista actual\tShift+G"
+msgid "Change gain on focused track"
+msgstr "Canvia el guany a la pista actual"
#: Menus.cpp:851
-msgid "Increase gain on focused track\tAlt+Shift+Up"
-msgstr "Incrementa el guany a la pista actual\tAlt+Shift+Up"
+msgid "Increase gain on focused track"
+msgstr "Incrementa el guany a la pista actual"
#: Menus.cpp:852
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
-msgstr "Redueix el guany a la pista actual\tAlt+Shift+Down"
+msgid "Decrease gain on focused track"
+msgstr "Redueix el guany a la pista actual"
#: Menus.cpp:853
-msgid "Open menu on focused track\tShift+M"
-msgstr "Obre el menú de la pista actual\tShift+M"
+msgid "Open menu on focused track"
+msgstr "Obre el menú de la pista actual"
#: Menus.cpp:854
-msgid "Mute/Unmute focused track\tShift+U"
-msgstr "Emmudeix o deixa d'emmudir la pista actual\tShift+U"
+msgid "Mute/Unmute focused track"
+msgstr "Emmudeix o deixa d'emmudir la pista actual"
#: Menus.cpp:855
-msgid "Solo/Unsolo focused track\tShift+S"
-msgstr "Activa o desactiva el Solo a la pista actual\tShift+S"
+msgid "Solo/Unsolo focused track"
+msgstr "Activa o desactiva el Solo a la pista actual"
#: Menus.cpp:856
-msgid "Close focused track\tShift+C"
-msgstr "Tanca la pista actual\tShift+C"
+msgid "Close focused track"
+msgstr "Tanca la pista actual"
#: Menus.cpp:858
msgid "Snap To On"
@@ -2418,7 +2266,35 @@ msgid "Snap To Off"
msgstr "Inhabilita l'arrodoniment de mesures"
#: Menus.cpp:1073
-msgid "Full screen on/off\tF11"
+msgid "Full screen on/off"
+msgstr ""
+
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr ""
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr ""
+
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr ""
+
+#: Menus.cpp:1074
+msgid "Adjust input source"
msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
@@ -2479,8 +2355,8 @@ msgstr "Abans heu de seleccionar una pista."
#: Menus.cpp:2035
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "Repeteix %s\tCtrl+R"
+msgid "Repeat %s"
+msgstr "Repeteix %s"
#: Menus.cpp:2166
msgid "There are no label tracks to export."
@@ -2511,9 +2387,7 @@ msgstr "No hi ha res a desfer"
msgid "Nothing to redo"
msgstr "No hi ha res a repetir"
-#: Menus.cpp:2366
-#: TrackPanel.cpp:605
-#: toolbars/EditToolBar.cpp:133
+#: Menus.cpp:2366 TrackPanel.cpp:605 toolbars/EditToolBar.cpp:133
msgid "Cut"
msgstr "Retalla"
@@ -2529,10 +2403,7 @@ msgstr "Divideix i retalla"
msgid "Split-cut to the clipboard"
msgstr "Divideix i retalla al porta-retalls"
-#: Menus.cpp:2469
-#: Menus.cpp:2540
-#: Menus.cpp:2634
-#: TrackPanel.cpp:607
+#: Menus.cpp:2469 Menus.cpp:2540 Menus.cpp:2634 TrackPanel.cpp:607
#: toolbars/EditToolBar.cpp:137
msgid "Paste"
msgstr "Enganxa"
@@ -2541,8 +2412,7 @@ msgstr "Enganxa"
msgid "Pasted text from the clipboard"
msgstr "Text enganxat des del porta-retalls"
-#: Menus.cpp:2540
-#: Menus.cpp:2634
+#: Menus.cpp:2540 Menus.cpp:2634
msgid "Pasted from the clipboard"
msgstr "Enganxat des del porta-retalls"
@@ -2554,8 +2424,7 @@ msgstr ""
msgid "Copying stereo audio into a mono track is not allowed."
msgstr "No es pot copiar so estereofònic en una pista monofònica."
-#: Menus.cpp:2670
-#: toolbars/EditToolBar.cpp:139
+#: Menus.cpp:2670 toolbars/EditToolBar.cpp:139
msgid "Trim"
msgstr "Deixa només la selecció"
@@ -2595,8 +2464,7 @@ msgstr "Ajunta"
msgid "Silenced selected tracks for %.2f seconds at %.2f"
msgstr "S'han silenciat les pistes seleccionades durant %.2f segons a partir de la posició %.2f"
-#: Menus.cpp:2771
-#: toolbars/EditToolBar.cpp:141
+#: Menus.cpp:2771 toolbars/EditToolBar.cpp:141
msgid "Silence"
msgstr "Silencia"
@@ -2680,8 +2548,7 @@ msgstr "Separa etiquetes"
msgid "Disjoined labeled regions"
msgstr "S'han separat les regions etiquetades"
-#: Menus.cpp:2947
-#: TrackPanel.cpp:6121
+#: Menus.cpp:2947 TrackPanel.cpp:6121
msgid "Split"
msgstr "Divideix"
@@ -2697,15 +2564,6 @@ msgstr "Divideix en una nova pista"
msgid "Split at labels"
msgstr "Divideix a les etiquetes"
-#: Menus.cpp:3425
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "Per a dibuixar l'espectre cal que totes les pistes seleccionades tinguin la mateixa freqüència de mostreig."
-
-#: Menus.cpp:3451
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "S'ha seleccionat un fragment de so massa llarg. Només s'analitzaran els primers %.1f segons."
-
#: Menus.cpp:3584
#, c-format
msgid "Imported labels from '%s'"
@@ -2744,8 +2602,7 @@ msgstr "Tots els fitxers (*)|*"
msgid "Edit the metadata tags"
msgstr "Edita les etiquetes de metadades"
-#: Menus.cpp:3669
-#: export/Export.cpp:298
+#: Menus.cpp:3669 export/Export.cpp:298
msgid "Edit Metadata"
msgstr "Edita les metadades"
@@ -2772,8 +2629,7 @@ msgstr "S'han mesclat i renderitzat %d pistes en una nova pista estereofònica"
msgid "Mixed and rendered %d tracks into one new mono track"
msgstr "S'han mesclat i renderitzat %d pistes en una nova pista monofònica"
-#: Menus.cpp:3736
-#: Mix.cpp:120
+#: Menus.cpp:3736 Mix.cpp:120
msgid "&Mix and Render"
msgstr "&Mescla i renderitza"
@@ -2825,10 +2681,7 @@ msgstr ""
msgid "Created new audio track"
msgstr "S'ha creat una nova pista de so"
-#: Menus.cpp:3950
-#: Menus.cpp:3973
-#: Menus.cpp:3988
-#: Menus.cpp:4008
+#: Menus.cpp:3950 Menus.cpp:3973 Menus.cpp:3988 Menus.cpp:4008
msgid "New Track"
msgstr "Pista nova"
@@ -2864,8 +2717,7 @@ msgstr "Enregistra aquesta configuració del CleanSpeech com a:"
msgid "CleanSpeech Presets (*.csp)|*.csp"
msgstr "Configuracions del CleanSpeech (*.csp)|*.csp"
-#: Menus.cpp:4123
-#: export/Export.cpp:515
+#: Menus.cpp:4123 export/Export.cpp:515
msgid "Sorry, pathnames longer than 256 characters not supported."
msgstr "No es permet l'ús de noms de camà de més de 256 carà cters"
@@ -2873,8 +2725,7 @@ msgstr "No es permet l'ús de noms de camà de més de 256 carà cters"
msgid "Problem encountered exporting presets."
msgstr "Hi ha hagut un problema en exportar les configuracions."
-#: Menus.cpp:4170
-#: export/Export.cpp:408
+#: Menus.cpp:4170 export/Export.cpp:408
msgid "Unable to export"
msgstr "No s'ha pogut exportar"
@@ -2886,9 +2737,7 @@ msgstr "Elimina la pista"
msgid "Removed audio track(s)"
msgstr "Una o més pistes de so han estat eliminades"
-#: Menus.cpp:4508
-#: Menus.cpp:4527
-#: export/ExportMP3.cpp:1926
+#: Menus.cpp:4508 Menus.cpp:4527 export/ExportMP3.cpp:1926
msgid "Resample"
msgstr "Canvia la freqüència de mostreig"
@@ -2913,8 +2762,7 @@ msgstr "Canvia la freqüència de mostreig de la pista"
msgid "Resampled audio track(s)"
msgstr "S'ha canviat freqüència de mostreig de la pista/es"
-#: Mix.cpp:94
-#: Mix.cpp:101
+#: Mix.cpp:94 Mix.cpp:101
msgid "Mix"
msgstr "Mescla"
@@ -2934,6 +2782,10 @@ msgstr "Hi ha hagut un problema en imprimir."
msgid "Print"
msgstr "Imprimeix"
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr ""
+
#: Project.cpp:636
msgid "Main Mix"
msgstr "Mescla principal"
@@ -2947,14 +2799,11 @@ msgstr "Benvingut/uda a l'Audacity versió %s"
msgid "(Recovered)"
msgstr "(Recuperat)"
-#: Project.cpp:1482
-#: TrackPanel.cpp:804
-#: toolbars/ControlToolBar.cpp:191
+#: Menus.cpp:787
msgid "Record"
msgstr "Enregistra"
-#: Project.cpp:1482
-#: TrackPanel.cpp:804
+#: Project.cpp:1482 TrackPanel.cpp:804
msgid "Recorded Audio"
msgstr "So enregistrat"
@@ -2981,9 +2830,9 @@ msgstr "\n"
msgid "Save changes?"
msgstr "Voleu desar els canvis?"
-#: Project.cpp:1694
-msgid "All files|*.*|All supported files|"
-msgstr "Tots els fitxers|*.*|Tots els fitxers suportats|"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
+msgstr ""
#: Project.cpp:1719
msgid "Select one or more audio files..."
@@ -2993,8 +2842,7 @@ msgstr "Seleccioneu un o més fitxers de so..."
msgid "Audacity projects|*.aup|"
msgstr "Projectes de l'Audacity|*.aup|"
-#: Project.cpp:1799
-#: Project.cpp:2186
+#: Project.cpp:1799 Project.cpp:2186
#, c-format
msgid "This file was saved by Audacity %s, a much\n"
"older version. The format has changed.\n"
@@ -3015,13 +2863,22 @@ msgstr "Aquest fitxer va ser desat amb l'Audacity %s, una versió\n"
msgid "1.0 or earlier"
msgstr "1.0 o anterior"
-#: Project.cpp:1806
-#: Project.cpp:2198
+#: Project.cpp:1806 Project.cpp:2198
msgid "Opening old project file"
msgstr "S'està obrint un fitxer de projecte antic"
-#: Project.cpp:1832
-#: Project.cpp:1840
+#: Project.cpp:2073
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr ""
+
+#: Project.cpp:1832 Project.cpp:1840
msgid "Error opening file"
msgstr "S'ha produït un error en obrir el fitxer"
@@ -3056,8 +2913,7 @@ msgstr "Recupera"
msgid "Project checker repaired file"
msgstr "Fitxer reparat durant el procés de comprovació de projectes"
-#: Project.cpp:2001
-#: effects/Repair.h:29
+#: Project.cpp:2001 effects/Repair.h:29
msgid "Repair"
msgstr "Repara"
@@ -3079,16 +2935,15 @@ msgstr "Aquest fitxer es va desar amb l'Audacity %s.\n"
msgid "Can't open project file"
msgstr "No es pot obrir el fitxer de projecte"
-#: Project.cpp:2193
+#: Project.cpp:2484
#, c-format
msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
"\n"
-"Open this file now?"
-msgstr "Aquest fitxer va ser desat amb l'Audacity %s.\n"
-"Podeu obrir-lo amb aquesta versió de l'Audacity, però quan el deseu ja no el podreu tornar a obrir amb versions anteriors del programa.\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
-"Voleu obrir ara aquest fitxer?"
+"Open this file now?"
+msgstr ""
#: Project.cpp:2537
msgid "Your project is now empty.\n"
@@ -3105,17 +2960,22 @@ msgstr ""
msgid "Warning empty project"
msgstr ""
-#: Project.cpp:2647
+#: Project.cpp:2792
#, c-format
msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+"is not writable or the disk is full."
msgstr ""
-#: Project.cpp:2428
-#: Project.cpp:2442
+#: Project.cpp:2428 Project.cpp:2442
msgid "Error saving project"
msgstr "S'ha produït un error en desar el projecte"
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
#: Project.cpp:2504
#, c-format
msgid "Saved %s"
@@ -3126,16 +2986,12 @@ msgstr "S'ha desat %s"
msgid "Imported '%s'"
msgstr "S'ha importat '%s'"
-#: Menus.cpp:3649
-#: Project.cpp:2587
-#: Project.cpp:2612
-#: import/ImportPCM.cpp:440
+#: Menus.cpp:3649 Project.cpp:2587 Project.cpp:2612 import/ImportPCM.cpp:440
#: import/ImportPCM.cpp:484
msgid "Import"
msgstr "Importa"
-#: Project.cpp:2639
-#: Project.cpp:2647
+#: Project.cpp:2639 Project.cpp:2647
msgid "Error importing"
msgstr "S'ha produït un error en importar"
@@ -3178,8 +3034,7 @@ msgstr "S'ha creat un projecte nou"
msgid "Deleted %.2f seconds at t=%.2f"
msgstr "S'han eliminat %.2f segons a t=%.2f"
-#: Project.cpp:2859
-#: effects/Equalization.cpp:1262
+#: Project.cpp:2859 effects/Equalization.cpp:1262
#: effects/Equalization.cpp:2593
msgid "Delete"
msgstr "Elimina"
@@ -3260,8 +3115,7 @@ msgstr "Libsamplerate, per Erik de Castro Lopo"
msgid "Libsamplerate error: %d\n"
msgstr "Error del Libsamplerate: %d\n"
-#: Resample.cpp:240
-#: Resample.cpp:250
+#: Resample.cpp:240 Resample.cpp:250
msgid "Resampling disabled."
msgstr "Delmatge inhabilitat"
@@ -3280,6 +3134,163 @@ msgstr "24 bits PCM"
msgid "32-bit float"
msgstr "32 bits coma flotant"
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
+
+#: export/ExportMultiple.cpp:216 prefs/DirectoriesPrefs.cpp:92
+msgid "Choose..."
+msgstr "Navega..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
+
+#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
+msgid "false"
+msgstr "fals"
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr "Eines"
+
+#: toolbars/ControlToolBar.cpp:82
+msgid "Control"
+msgstr "Control"
+
+#: toolbars/MixerToolBar.cpp:60
+msgid "Mixer"
+msgstr "Mesclador"
+
+#: toolbars/MeterToolBar.cpp:50
+msgid "Meter"
+msgstr "Picòmetre"
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
+#: toolbars/DeviceToolBar.cpp:57
+msgid "Device"
+msgstr "Dispositiu"
+
+#: toolbars/TranscriptionToolBar.cpp:84
+msgid "Transcription"
+msgstr "Transcripció"
+
+#: TrackPanel.cpp:464 TrackPanel.cpp:465
+msgid "Track Panel"
+msgstr "Quadre de pistes"
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: export/ExportMultiple.cpp:258
+msgid "Tracks"
+msgstr "Pistes"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
#: Screenshot.cpp:384
msgid "Saved "
msgstr "S'ha desat"
@@ -3288,14 +3299,15 @@ msgstr "S'ha desat"
msgid "Error trying to save file: "
msgstr "S'ha produït un error mentre es desava el fitxer: "
-#: Sequence.cpp:732
-#: Sequence.cpp:742
-#: Sequence.cpp:749
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
+#: Sequence.cpp:732 Sequence.cpp:742 Sequence.cpp:749
msgid "Gap detected in project file\n"
msgstr "S'ha detectat un forat al fitxer de projecte\n"
-#: ShuttleGui.cpp:1852
-#: effects/Effect.cpp:342
+#: ShuttleGui.cpp:1852 effects/Effect.cpp:342
#: effects/audiounits/AudioUnitEffect.cpp:872
msgid "Pre&view"
msgstr "Pre&visualització"
@@ -3336,8 +3348,7 @@ msgstr "TÃtol de l'Ã lbum"
msgid "Track Number"
msgstr "Número de pista"
-#: Tags.cpp:633
-#: Tags.cpp:2138
+#: Tags.cpp:633 Tags.cpp:2138
msgid "Year"
msgstr "Any"
@@ -3345,9 +3356,7 @@ msgstr "Any"
msgid "Genre"
msgstr "Gènere"
-#: Tags.cpp:635
-#: Tags.cpp:2148
-#: prefs/MousePrefs.cpp:96
+#: Tags.cpp:635 Tags.cpp:2148 prefs/MousePrefs.cpp:96
msgid "Comments"
msgstr "Comentaris"
@@ -3363,9 +3372,7 @@ msgstr "Nom de l'etiqueta"
msgid "Tag Value"
msgstr "Valor de l'etiqueta"
-#: Tags.cpp:818
-#: Tags.cpp:1476
-#: prefs/KeyConfigPrefs.cpp:116
+#: Tags.cpp:818 Tags.cpp:1476 prefs/KeyConfigPrefs.cpp:116
msgid "&Clear"
msgstr "&Neteja"
@@ -3381,71 +3388,42 @@ msgstr ""
msgid "Rese&t..."
msgstr ""
-#: Tags.cpp:834
-#: Tags.cpp:1460
-#: Tags.cpp:1988
+#: Tags.cpp:834 Tags.cpp:1460 Tags.cpp:1988
msgid "Template"
msgstr "Plantilla"
-#: Tags.cpp:838
-#: Tags.cpp:1464
-#: Tags.cpp:1992
-#: prefs/KeyConfigPrefs.cpp:126
+#: Tags.cpp:838 Tags.cpp:1464 Tags.cpp:1992 prefs/KeyConfigPrefs.cpp:126
msgid "&Load..."
msgstr "&Obre..."
-#: Tags.cpp:839
-#: Tags.cpp:1465
-#: Tags.cpp:1993
-#: prefs/KeyConfigPrefs.cpp:125
+#: Tags.cpp:839 Tags.cpp:1465 Tags.cpp:1993 prefs/KeyConfigPrefs.cpp:125
msgid "&Save..."
msgstr "&Desa..."
-#: Tags.cpp:841
-#: Tags.cpp:1467
-#: Tags.cpp:1995
+#: Tags.cpp:841 Tags.cpp:1467 Tags.cpp:1995
msgid "S&et Default"
msgstr "&Estableix com a opció per defecte"
-#: Tags.cpp:991
-#: Tags.cpp:1630
-#: Tags.cpp:2359
+#: Tags.cpp:991 Tags.cpp:1630 Tags.cpp:2359
msgid "Edit Genres"
msgstr "Edita els gèneres"
-#: Tags.cpp:1024
-#: Tags.cpp:1036
-#: Tags.cpp:1052
-#: Tags.cpp:1065
-#: Tags.cpp:1668
-#: Tags.cpp:1680
-#: Tags.cpp:1696
-#: Tags.cpp:1709
-#: Tags.cpp:2402
-#: Tags.cpp:2414
-#: Tags.cpp:2430
-#: Tags.cpp:2443
+#: Tags.cpp:1024 Tags.cpp:1036 Tags.cpp:1052 Tags.cpp:1065 Tags.cpp:1668
+#: Tags.cpp:1680 Tags.cpp:1696 Tags.cpp:1709 Tags.cpp:2402 Tags.cpp:2414
+#: Tags.cpp:2430 Tags.cpp:2443
msgid "Reset Genres"
msgstr "Restableix els gèneres"
-#: Tags.cpp:1024
-#: Tags.cpp:1065
-#: Tags.cpp:1668
-#: Tags.cpp:1709
-#: Tags.cpp:2402
+#: Tags.cpp:1024 Tags.cpp:1065 Tags.cpp:1668 Tags.cpp:1709 Tags.cpp:2402
#: Tags.cpp:2443
msgid "Unable to save genre file."
msgstr "No s'ha pogut desar el fitxer de gèneres."
-#: Tags.cpp:1035
-#: Tags.cpp:1679
-#: Tags.cpp:2413
+#: Tags.cpp:1035 Tags.cpp:1679 Tags.cpp:2413
msgid "Are you sure you want to reset the genre list to defaults?"
msgstr "Segur que voleu restablir la llista de gèneres als valors per defecte?"
-#: Tags.cpp:1052
-#: Tags.cpp:1696
-#: Tags.cpp:2430
+#: Tags.cpp:1052 Tags.cpp:1696 Tags.cpp:2430
msgid "Unable to open genre file."
msgstr "No s'ha pogut obrir el fitxer de gèneres."
@@ -3453,21 +3431,19 @@ msgstr "No s'ha pogut obrir el fitxer de gèneres."
msgid "Load Metadata As:"
msgstr ""
-#: Tags.cpp:1112
-#: Tags.cpp:1763
-#: Tags.cpp:2486
+#: Tags.cpp:1112 Tags.cpp:1763 Tags.cpp:2486
msgid "Error loading metadata"
msgstr "S'ha produït un error en llegir les metadades"
-#: Tags.cpp:1087
-#: Tags.cpp:1141
-#: Tags.cpp:1742
-#: Tags.cpp:1778
-#: Tags.cpp:2465
+#: Tags.cpp:1087 Tags.cpp:1141 Tags.cpp:1742 Tags.cpp:1778 Tags.cpp:2465
#: Tags.cpp:2501
msgid "Save Metadata As:"
msgstr "Enregistra les metadades com a:"
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
#: Theme.cpp:638
#, c-format
msgid "Audacity could not write file:\n"
@@ -3500,8 +3476,7 @@ msgstr "L'Audacity no ha pogut trobar el fitxer:\n"
" %s.\n"
"El tema no s'ha carregat."
-#: Theme.cpp:807
-#: Theme.cpp:896
+#: Theme.cpp:807 Theme.cpp:896
#, c-format
msgid "Audacity could not load file:\n"
" %s.\n"
@@ -3525,8 +3500,7 @@ msgstr "No s'ha trobat cap dels fitxers que composen\n"
"el tema a:\n"
" %s."
-#: Theme.cpp:942
-#: effects/NoiseRemoval.cpp:173
+#: Theme.cpp:942 effects/NoiseRemoval.cpp:173
#, c-format
msgid "Could not create directory:\n"
" %s"
@@ -3549,12 +3523,8 @@ msgstr "Tots els fitxers necessaris a:\n"
" %s\n"
"són presents."
-#: SmartRecordDialog.cpp:226
-#: SmartRecordDialog.cpp:307
-#: TimeDialog.cpp:53
-#: effects/Noise.cpp:235
-#: effects/ToneGen.cpp:329
-#: effects/ToneGen.cpp:374
+#: SmartRecordDialog.cpp:226 SmartRecordDialog.cpp:307 TimeDialog.cpp:53
+#: effects/Noise.cpp:235 effects/ToneGen.cpp:329 effects/ToneGen.cpp:374
msgid "Duration"
msgstr "Durada"
@@ -3562,6 +3532,14 @@ msgstr "Durada"
msgid "Audacity Timer Record"
msgstr "Enregistrament programat de l'Audacity"
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
#: SmartRecordDialog.cpp:223
msgid "Recording start"
msgstr "Inici de l'enregistrament"
@@ -3601,40 +3579,23 @@ msgstr "S'està esperant per a començar l'enregistrament el %s.\n"
msgid "Audacity Timer Record - Waiting for Start"
msgstr ""
-#: TrackPanel.cpp:464
-#: TrackPanel.cpp:465
-msgid "Track Panel"
-msgstr "Quadre de pistes"
-
-#: TrackPanel.cpp:548
-#: export/ExportPCM.cpp:133
-#: prefs/QualityPrefs.cpp:97
+#: TrackPanel.cpp:548 export/ExportPCM.cpp:133 prefs/QualityPrefs.cpp:97
msgid "Other..."
msgstr "Altres..."
-#: TrackPanel.cpp:556
-#: TrackPanel.cpp:580
-#: TrackPanel.cpp:589
-#: TrackPanel.cpp:597
+#: TrackPanel.cpp:556 TrackPanel.cpp:580 TrackPanel.cpp:589 TrackPanel.cpp:597
msgid "Name..."
msgstr "Nom..."
-#: TrackPanel.cpp:558
-#: TrackPanel.cpp:582
-#: TrackPanel.cpp:593
-#: TrackPanel.cpp:599
+#: TrackPanel.cpp:558 TrackPanel.cpp:582 TrackPanel.cpp:593 TrackPanel.cpp:599
msgid "Move Track Up"
msgstr "Mou la pista amunt"
-#: TrackPanel.cpp:559
-#: TrackPanel.cpp:583
-#: TrackPanel.cpp:594
-#: TrackPanel.cpp:600
+#: TrackPanel.cpp:559 TrackPanel.cpp:583 TrackPanel.cpp:594 TrackPanel.cpp:600
msgid "Move Track Down"
msgstr "Mou la pista avall"
-#: TrackPanel.cpp:561
-#: effects/ToneGen.cpp:325
+#: TrackPanel.cpp:561 effects/ToneGen.cpp:325
msgid "Waveform"
msgstr "So en forma d'ona"
@@ -3650,18 +3611,15 @@ msgstr "Espectre logarÃtmic"
msgid "Pitch (EAC)"
msgstr "To (EAC)"
-#: TrackPanel.cpp:569
-#: TrackPanel.cpp:6091
+#: TrackPanel.cpp:569 TrackPanel.cpp:6091
msgid "Mono"
msgstr "Mono"
-#: TrackPanel.cpp:570
-#: TrackPanel.cpp:6090
+#: TrackPanel.cpp:570 TrackPanel.cpp:6090
msgid "Left Channel"
msgstr "Canal esquerre"
-#: TrackPanel.cpp:571
-#: TrackPanel.cpp:6090
+#: TrackPanel.cpp:571 TrackPanel.cpp:6090
msgid "Right Channel"
msgstr "Canal dret"
@@ -3673,12 +3631,15 @@ msgstr "Crea una pista estereofònica"
msgid "Split Stereo Track"
msgstr "Divideix la pista estereofònica"
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr ""
+
#: TrackPanel.cpp:575
msgid "Set Sample Format"
msgstr "Especifica el format de les mostres"
-#: TrackPanel.cpp:577
-#: TrackPanel.cpp:6320
+#: TrackPanel.cpp:577 TrackPanel.cpp:6320
msgid "Set Rate"
msgstr "Especifica la freqüència"
@@ -3698,8 +3659,7 @@ msgstr "Tipus de lletra..."
msgid "Set Range..."
msgstr "Especifica el rang..."
-#: TrackPanel.cpp:606
-#: toolbars/EditToolBar.cpp:135
+#: TrackPanel.cpp:606 toolbars/EditToolBar.cpp:135
msgid "Copy"
msgstr "Copia"
@@ -3745,21 +3705,13 @@ msgstr "Feu clic i arrossegueu per a moure el lÃmit esquerre de la selecció."
msgid "Click and drag to move right selection boundary."
msgstr "Feu clic i arrossegueu per a moure el lÃmit dret de la selecció."
-#: TrackPanel.cpp:1702
-#: TrackPanel.cpp:3993
-#: TrackPanel.cpp:4025
-#: TrackPanel.cpp:4280
-#: TrackPanel.cpp:6432
-#: TrackPanel.cpp:6452
+#: TrackPanel.cpp:1702 TrackPanel.cpp:3993 TrackPanel.cpp:4025
+#: TrackPanel.cpp:4280 TrackPanel.cpp:6432 TrackPanel.cpp:6452
msgid "Modified Label"
msgstr "S'ha modificat l'etiqueta"
-#: TrackPanel.cpp:1703
-#: TrackPanel.cpp:3994
-#: TrackPanel.cpp:4026
-#: TrackPanel.cpp:4281
-#: TrackPanel.cpp:6433
-#: TrackPanel.cpp:6453
+#: TrackPanel.cpp:1703 TrackPanel.cpp:3994 TrackPanel.cpp:4026
+#: TrackPanel.cpp:4281 TrackPanel.cpp:6433 TrackPanel.cpp:6453
msgid "Label Edit"
msgstr "Edita l'etiqueta"
@@ -3767,8 +3719,7 @@ msgstr "Edita l'etiqueta"
msgid "Adjusted envelope."
msgstr "S'ha ajustat l'envolupant."
-#: TrackPanel.cpp:1931
-#: prefs/MousePrefs.cpp:115
+#: TrackPanel.cpp:1931 prefs/MousePrefs.cpp:115
msgid "Envelope"
msgstr "Envolupant"
@@ -3790,9 +3741,7 @@ msgstr "dreta"
msgid "Time shifted tracks/clips %s %.02f seconds"
msgstr "S'han desplaçat les pistes o clips en direcció %s un total de %.02f segons"
-#: TrackPanel.cpp:2092
-#: prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:112
+#: TrackPanel.cpp:2092 prefs/MousePrefs.cpp:111 prefs/MousePrefs.cpp:112
#: prefs/MousePrefs.cpp:113
msgid "Time-Shift"
msgstr "Desplaçament en el temps"
@@ -3831,39 +3780,29 @@ msgid "Moved pan slider"
msgstr "S'ha mogut el regulador de posició estereofònica"
#. i18n-hint: Title of the Gain slider, used to adjust the volume
-#: TrackPanel.cpp:3485
-#: TrackPanel.cpp:5726
-#: TrackPanel.cpp:7149
+#: TrackPanel.cpp:3485 TrackPanel.cpp:5726 TrackPanel.cpp:7149
msgid "Gain"
msgstr "Guany"
#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: TrackPanel.cpp:3485
-#: TrackPanel.cpp:5664
-#: TrackPanel.cpp:7156
+#: TrackPanel.cpp:3485 TrackPanel.cpp:5664 TrackPanel.cpp:7156
msgid "Pan"
msgstr "Balanç"
-#: TrackPanel.cpp:3610
-#: TrackPanel.cpp:6385
-#: effects/ChangePitch.cpp:284
+#: TrackPanel.cpp:3610 TrackPanel.cpp:6385 effects/ChangePitch.cpp:284
msgid "up"
msgstr "amunt"
-#: TrackPanel.cpp:3614
-#: TrackPanel.cpp:6386
-#: effects/ChangePitch.cpp:284
+#: TrackPanel.cpp:3614 TrackPanel.cpp:6386 effects/ChangePitch.cpp:284
msgid "down"
msgstr "avall"
-#: TrackPanel.cpp:3621
-#: TrackPanel.cpp:6381
+#: TrackPanel.cpp:3621 TrackPanel.cpp:6381
#, c-format
msgid "Moved '%s' %s"
msgstr "S'ha mogut '%s' cap %s"
-#: TrackPanel.cpp:3624
-#: TrackPanel.cpp:6387
+#: TrackPanel.cpp:3624 TrackPanel.cpp:6387
msgid "Move Track"
msgstr "Mou la pista"
@@ -3895,14 +3834,6 @@ msgstr "S'ha ajustat la posició panorà mica"
msgid "Adjusted gain"
msgstr "S'ha ajustat el guany"
-#: TrackPanel.cpp:5796
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5797
-msgid "Clear any grouping"
-msgstr ""
-
#: TrackPanel.cpp:5918
msgid "Can't delete track with active audio"
msgstr "No es pot eliminar una pista quan és activa"
@@ -3923,8 +3854,7 @@ msgstr "Esquerra,"
msgid "Right, "
msgstr "Dreta,"
-#: TrackPanel.cpp:6100
-#: TrackPanel.cpp:6225
+#: TrackPanel.cpp:6100 TrackPanel.cpp:6225
#, c-format
msgid "Changed '%s' to %s"
msgstr "S'ha canviat '%s' a %s"
@@ -3938,6 +3868,11 @@ msgstr "Canal"
msgid "Split stereo track '%s'"
msgstr "Divideix la pista estereofònica '%s'"
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
#: TrackPanel.cpp:6139
#, c-format
msgid "Made '%s' a stereo track"
@@ -3964,8 +3899,7 @@ msgstr "Canvia el format"
msgid "Change lower speed limit (%) to:"
msgstr "Canvia el lÃmit inferior de velocitat (%) a:"
-#: TrackPanel.cpp:6350
-#: TrackPanel.cpp:6351
+#: TrackPanel.cpp:6350 TrackPanel.cpp:6351
msgid "Lower speed limit"
msgstr "LÃmit inferior de velocitat"
@@ -3973,8 +3907,7 @@ msgstr "LÃmit inferior de velocitat"
msgid "Change upper speed limit (%) to:"
msgstr "Canvia el lÃmit superior de velocitat (%) a:"
-#: TrackPanel.cpp:6357
-#: TrackPanel.cpp:6358
+#: TrackPanel.cpp:6357 TrackPanel.cpp:6358
msgid "Upper speed limit"
msgstr "LÃmit superior de velocitat"
@@ -4016,6 +3949,10 @@ msgstr "Nom de portada"
msgid "Face size"
msgstr "Mida de portada"
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr ""
+
#: TrackPanel.cpp:7076
msgid "Mute"
msgstr "Silenci"
@@ -4049,10 +3986,7 @@ msgstr " Solo"
msgid " Select On"
msgstr " Selecció activada"
-#: VoiceKey.cpp:88
-#: VoiceKey.cpp:238
-#: VoiceKey.cpp:376
-#: VoiceKey.cpp:517
+#: VoiceKey.cpp:88 VoiceKey.cpp:238 VoiceKey.cpp:376 VoiceKey.cpp:517
msgid "Selection is too small to use voice key."
msgstr "La selecció és massa petita per a fer servir la clau de veu."
@@ -4079,8 +4013,7 @@ msgstr "Canvis de direcció -- significa: %1.4f sd: (%1.4f)\n"
msgid "Audio Track"
msgstr "Pista de so"
-#: WaveTrack.cpp:555
-#: WaveTrack.cpp:574
+#: WaveTrack.cpp:555 WaveTrack.cpp:574
msgid "There is not enough room available to paste the selection"
msgstr "No hi ha prou espai per a enganxar la selecció"
@@ -4098,10 +4031,10 @@ msgstr "Connectors 1 a %i"
msgid "Plugins %i to %i"
msgstr "Connectors %i a %i"
-#: commands/CommandManager.cpp:857
-#, fuzzy
-msgid "Disallowed for some reason. Try selecting some audio first?"
-msgstr "Ha estat rebutjat per alguna raó. Proveu-ho seleccionant abans un fragment de so."
+#: commands/CommandManager.cpp:923
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
+msgstr ""
#: commands/CommandManager.cpp:781
msgid "You can only do this when playing and recording are\n"
@@ -4168,9 +4101,7 @@ msgstr "Nou pic d'amplitud (dB):"
msgid "Allow clipping"
msgstr "Permet l'escapçament de pics"
-#: effects/Amplify.cpp:237
-#: effects/Amplify.cpp:287
-#: effects/Amplify.cpp:353
+#: effects/Amplify.cpp:237 effects/Amplify.cpp:287 effects/Amplify.cpp:353
msgid "-Infinity"
msgstr "-Infinit"
@@ -4186,9 +4117,7 @@ msgstr "S'està amplificant"
msgid "You selected a track which does not contain audio. AutoDuck can only process audio tracks."
msgstr "Heu seleccionat una pista que no conté so. L'AutoDuck només pot processar pistes de so."
-#: effects/AutoDuck.cpp:126
-#: effects/AutoDuck.cpp:138
-#: effects/AutoDuck.cpp:453
+#: effects/AutoDuck.cpp:126 effects/AutoDuck.cpp:138 effects/AutoDuck.cpp:453
#: effects/AutoDuck.cpp:570
msgid "Auto Duck"
msgstr "Auto Duck"
@@ -4210,17 +4139,11 @@ msgid "Maximum pause:"
msgstr "Pausa mà xima:"
#. i18n-hint: Name of time display format that shows time in seconds
-#: effects/AutoDuck.cpp:494
-#: effects/AutoDuck.cpp:499
-#: effects/AutoDuck.cpp:504
-#: effects/AutoDuck.cpp:509
-#: effects/AutoDuck.cpp:514
-#: prefs/AudioIOPrefs.cpp:166
-#: prefs/AudioIOPrefs.cpp:174
-#: prefs/AudioIOPrefs.cpp:176
-#: prefs/AudioIOPrefs.cpp:201
-#: prefs/AudioIOPrefs.cpp:203
-#: widgets/TimeTextCtrl.cpp:263
+#: effects/AutoDuck.cpp:494 effects/AutoDuck.cpp:499 effects/AutoDuck.cpp:504
+#: effects/AutoDuck.cpp:509 effects/AutoDuck.cpp:514
+#: prefs/AudioIOPrefs.cpp:166 prefs/AudioIOPrefs.cpp:174
+#: prefs/AudioIOPrefs.cpp:176 prefs/AudioIOPrefs.cpp:201
+#: prefs/AudioIOPrefs.cpp:203 widgets/TimeTextCtrl.cpp:263
msgid "seconds"
msgstr "segons"
@@ -4240,8 +4163,7 @@ msgstr "Longitud del fà ding final interior:"
msgid "Inner fade up length:"
msgstr "Longitud del fà ding inicial interior:"
-#: effects/AutoDuck.cpp:521
-#: effects/Compressor.cpp:484
+#: effects/AutoDuck.cpp:521 effects/Compressor.cpp:484
msgid "Threshold:"
msgstr "Llindar:"
@@ -4261,12 +4183,9 @@ msgstr "Auto Duck..."
msgid "Processing Auto Duck..."
msgstr "S'està processant l'Auto Duck..."
-#: effects/AvcCompressor.cpp:738
-#: effects/VST/VSTEffect.cpp:448
-#: effects/audiounits/AudioUnitEffect.cpp:877
-#: effects/nyquist/Nyquist.cpp:1042
-#: widgets/ErrorDialog.cpp:79
-#: widgets/ErrorDialog.cpp:105
+#: effects/AvcCompressor.cpp:738 effects/VST/VSTEffect.cpp:448
+#: effects/audiounits/AudioUnitEffect.cpp:877 effects/nyquist/Nyquist.cpp:1042
+#: widgets/ErrorDialog.cpp:79 widgets/ErrorDialog.cpp:105
#: widgets/Warning.cpp:67
msgid "OK"
msgstr "D'acord"
@@ -4331,14 +4250,12 @@ msgstr "Canvia el to sense canviar el temps"
#. i18n-hint: && in here is an escape character to get a single & on
#. * screen, so keep it as is
-#: effects/ChangePitch.cpp:254
-#: effects/ChangeSpeed.cpp:313
+#: effects/ChangePitch.cpp:254 effects/ChangeSpeed.cpp:313
#: effects/ChangeTempo.cpp:180
msgid "by Vaughan Johnson && Dominic Mazzoni"
msgstr "per Vaughan Johnson && Dominic Mazzoni"
-#: effects/ChangePitch.cpp:259
-#: effects/ChangeTempo.cpp:185
+#: effects/ChangePitch.cpp:259 effects/ChangeTempo.cpp:185
msgid "using SoundTouch, by Olli Parviainen"
msgstr "S'està emprant el SoundTouch, d'Olli Parviainen"
@@ -4387,10 +4304,8 @@ msgstr ""
msgid "From frequency in hertz"
msgstr ""
-#: effects/ChangePitch.cpp:291
-#: effects/ChangePitch.cpp:337
-#: effects/ChangeSpeed.cpp:377
-#: effects/ChangeTempo.cpp:239
+#: effects/ChangePitch.cpp:291 effects/ChangePitch.cpp:337
+#: effects/ChangeSpeed.cpp:377 effects/ChangeTempo.cpp:239
#: effects/ChangeTempo.cpp:270
msgid "to"
msgstr "fins a"
@@ -4399,8 +4314,7 @@ msgstr "fins a"
msgid "To frequency in seconds"
msgstr ""
-#: effects/ChangePitch.cpp:360
-#: effects/ChangeSpeed.cpp:331
+#: effects/ChangePitch.cpp:360 effects/ChangeSpeed.cpp:331
#: effects/ChangeTempo.cpp:198
msgid "Percent Change:"
msgstr "Canvi percentual:"
@@ -4418,8 +4332,7 @@ msgstr "Canvia el to..."
msgid "Changing Pitch"
msgstr "S'està canviant el to"
-#: effects/ChangeSpeed.cpp:53
-#: effects/ChangeTempo.cpp:55
+#: effects/ChangeSpeed.cpp:53 effects/ChangeTempo.cpp:55
#, c-format
msgid "Applied effect: %s %.1f%%"
msgstr "S'ha aplicat l'efecte: %s %.1f%%"
@@ -4571,12 +4484,11 @@ msgstr "Temps de caiguda:"
msgid "Decay Time"
msgstr ""
-#: effects/Compressor.cpp:516
-msgid "Normalize to 0dB after compressing"
-msgstr "Normalitza a 0 dB després de la compressió"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
+msgstr ""
#: effects/Compressor.cpp:563
-#, c-format
#, fuzzy
msgid "Threshold %d dB"
msgstr "Llindar: %d dB"
@@ -4607,7 +4519,6 @@ msgid "%.1f:1"
msgstr ""
#: effects/Compressor.cpp:575
-#, c-format
#, fuzzy
msgid "Attack Time %.1f secs"
msgstr "Temps d'atac: %.1f segons"
@@ -4618,7 +4529,6 @@ msgid "%.1f secs"
msgstr ""
#: effects/Compressor.cpp:578
-#, c-format
#, fuzzy
msgid "Decay Time %.1f secs"
msgstr "Temps de caiguda: %.1f segons"
@@ -4631,6 +4541,10 @@ msgstr "Compressor..."
msgid "Applying Dynamic Range Compression..."
msgstr "S'està aplicant la compressió de rang dinà mic..."
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
msgstr ""
@@ -4650,19 +4564,6 @@ msgid "Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
-#: effects/Contrast.cpp:190
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:277 effects/Contrast.cpp:288 effects/Contrast.cpp:371
-#: effects/Contrast.cpp:415
-msgid "Measured"
-msgstr ""
-
#: effects/Contrast.cpp:318
msgid "Contrast Analyzer"
msgstr ""
@@ -4671,15 +4572,12 @@ msgstr ""
msgid "Parameters"
msgstr ""
-#: effects/ToneGen.cpp:361
-#: toolbars/ControlToolBar.cpp:185
+#: effects/ToneGen.cpp:361 toolbars/ControlToolBar.cpp:185
msgid "Start"
msgstr "Inici"
-#: effects/ToneGen.cpp:362
-#: toolbars/ControlToolBar.cpp:188
-#: toolbars/SelectionBar.cpp:149
-#: toolbars/SelectionBar.cpp:254
+#: effects/ToneGen.cpp:362 toolbars/ControlToolBar.cpp:188
+#: toolbars/SelectionBar.cpp:149 toolbars/SelectionBar.cpp:254
msgid "End"
msgstr "Final"
@@ -4699,6 +4597,11 @@ msgstr ""
msgid "Foreground end time"
msgstr ""
+#: effects/Contrast.cpp:277 effects/Contrast.cpp:288 effects/Contrast.cpp:371
+#: effects/Contrast.cpp:415
+msgid "Measured"
+msgstr ""
+
#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
msgid "Use selection"
msgstr ""
@@ -4723,8 +4626,7 @@ msgstr ""
msgid "Contrast Result:"
msgstr ""
-#: Tags.cpp:829
-#: Tags.cpp:1981
+#: Tags.cpp:829 Tags.cpp:1981
msgid "Reset"
msgstr "Restableix"
@@ -4744,16 +4646,8 @@ msgstr ""
msgid "Help for WCAG2 Audio Contrast Analyzer"
msgstr ""
-#: toolbars/ControlToolBar.cpp:82
-msgid "Control"
-msgstr "Control"
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
msgstr ""
#: effects/Contrast.cpp:466 effects/Contrast.cpp:472 effects/Contrast.cpp:478
@@ -4864,18 +4758,6 @@ msgstr ""
msgid "Data gathered"
msgstr ""
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:52
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:54
-msgid "Measuring foreground"
-msgstr ""
-
#: effects/DtmfGen.cpp:48
msgid "DTMF Tone Generator"
msgstr "Generador de tons DTMF"
@@ -4888,9 +4770,7 @@ msgstr "per Salvo Ventura (2006)"
msgid "DTMF sequence:"
msgstr "Seqüència DTMF:"
-#: effects/DtmfGen.cpp:446
-#: effects/Noise.cpp:255
-#: effects/ToneGen.cpp:328
+#: effects/DtmfGen.cpp:446 effects/Noise.cpp:255 effects/ToneGen.cpp:328
#: effects/ToneGen.cpp:365
msgid "Amplitude (0-1)"
msgstr "Amplitud (0-1)"
@@ -4911,9 +4791,7 @@ msgstr "Cicle de treball:"
msgid "Tone duration:"
msgstr "Durada dels tons:"
-#: effects/DtmfGen.cpp:482
-#: effects/DtmfGen.cpp:484
-#: effects/DtmfGen.cpp:560
+#: effects/DtmfGen.cpp:482 effects/DtmfGen.cpp:484 effects/DtmfGen.cpp:560
#: effects/DtmfGen.cpp:561
msgid "ms"
msgstr "ms"
@@ -4995,8 +4873,7 @@ msgstr "Cosinus"
msgid "Cubic"
msgstr "Cúbica"
-#: effects/Equalization.cpp:362
-#: effects/Equalization.cpp:412
+#: effects/Equalization.cpp:362 effects/Equalization.cpp:412
msgid "Equalization"
msgstr "Equalització"
@@ -5008,6 +4885,10 @@ msgstr "S'ha produït un error en llegir la corba d'equalització"
msgid "custom"
msgstr "personalitzat"
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr ""
+
#. i18n-hint: && in here is an escape character to get a single &
#. * on screen, so keep it as is
#: effects/Equalization.cpp:1087
@@ -5046,8 +4927,7 @@ msgstr "Longitud del filtre:"
msgid "Select curve:"
msgstr "Tipus de corba:"
-#: effects/Equalization.cpp:1259
-#: effects/Equalization.cpp:2498
+#: effects/Equalization.cpp:1259 effects/Equalization.cpp:2498
#: export/ExportMultiple.cpp:826
msgid "Save As..."
msgstr "Anomena i desa..."
@@ -5164,8 +5044,7 @@ msgstr "El més fort"
msgid "by Lynn Allan"
msgstr "per Lynn Allan"
-#: effects/Leveller.cpp:226
-#: effects/Leveller.cpp:231
+#: effects/Leveller.cpp:226 effects/Leveller.cpp:231
msgid "Degree of Leveling"
msgstr "Grau d'anivellament"
@@ -5214,10 +5093,6 @@ msgstr ""
msgid "Analyser"
msgstr ""
-#: toolbars/MixerToolBar.cpp:60
-msgid "Mixer"
-msgstr "Mesclador"
-
#: effects/LoadEffects.cpp:117
msgid "Simulator"
msgstr ""
@@ -5457,15 +5332,9 @@ msgstr "S'està traient el soroll"
msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr "S'ha aplicat l'efecte: %s desplaçament dc eliminat = %s, amplitud normalitzada = %s"
-#: effects/Normalize.cpp:74
-#: effects/Normalize.cpp:75
-msgid "false"
-msgstr "fals"
-
#. i18n-hint: true here means that the option was
#. * selected. Opposite false if not selected
-#: effects/Normalize.cpp:74
-#: effects/Normalize.cpp:75
+#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
msgid "true"
msgstr "cert"
@@ -5524,8 +5393,7 @@ msgstr ""
msgid "Dry Wet"
msgstr ""
-#: effects/Phaser.cpp:264
-#: effects/Wahwah.cpp:221
+#: effects/Phaser.cpp:264 effects/Wahwah.cpp:221
msgid "LFO Frequency (Hz):"
msgstr "Freqüència LFO (Hz):"
@@ -5533,8 +5401,7 @@ msgstr "Freqüència LFO (Hz):"
msgid "LFO frequency in hertz"
msgstr ""
-#: effects/Phaser.cpp:280
-#: effects/Wahwah.cpp:237
+#: effects/Phaser.cpp:280 effects/Wahwah.cpp:237
msgid "LFO Start Phase (deg.):"
msgstr "Fase d'inici LFO (graus):"
@@ -5595,8 +5462,7 @@ msgstr "Repetit %d vegades"
msgid "Tracks are too long to repeat the selection."
msgstr "Les pistes són massa llargues per a repetir la selecció."
-#: effects/Repeat.cpp:76
-#: effects/Repeat.cpp:80
+#: effects/Repeat.cpp:76 effects/Repeat.cpp:80
msgid "Repeat"
msgstr "Repeteix"
@@ -5609,8 +5475,7 @@ msgstr "Nombre de repeticions:"
msgid "New selection length: hh:mm:ss"
msgstr ""
-#: effects/Repeat.cpp:207
-#: effects/Repeat.cpp:237
+#: effects/Repeat.cpp:207 effects/Repeat.cpp:237
msgid "New selection length: "
msgstr "Longitud de selecció nova:"
@@ -5683,9 +5548,7 @@ msgstr "Netejador de pics..."
msgid "Applying Spike Cleaner..."
msgstr "S'està aplicant el netejador de pics..."
-#: Menus.cpp:358
-#: Menus.cpp:564
-#: effects/StereoToMono.h:23
+#: Menus.cpp:358 Menus.cpp:564 effects/StereoToMono.h:23
msgid "&Stereo to Mono"
msgstr "E&stèreo a mono"
@@ -5742,8 +5605,7 @@ msgstr ""
msgid "Applied effect: Generate %s wave %s, frequency = %.2f Hz, amplitude = %.2f, %.6lf seconds"
msgstr "S'ha aplicat l'efecte: Genera %s ona o ones %s, de freqüència = %.2f Hz, amplitud = %.2f, %.6lf segons"
-#: effects/ToneGen.cpp:75
-#: widgets/Meter.cpp:379
+#: effects/ToneGen.cpp:75 widgets/Meter.cpp:379
msgid "Linear"
msgstr "Lineal"
@@ -5775,8 +5637,7 @@ msgstr "Dent de serra"
msgid "Square, no alias"
msgstr "Quadrada, sense à lies"
-#: effects/ToneGen.cpp:327
-#: effects/ToneGen.cpp:363
+#: effects/ToneGen.cpp:327 effects/ToneGen.cpp:363
msgid "Frequency (Hz)"
msgstr "Freqüència (Hz)"
@@ -5824,28 +5685,43 @@ msgstr "S'està generant un to"
msgid "All tracks must have the same sample rate"
msgstr "Totes les pistes han de tenir la mateixa freqüència de mostreig"
-#: effects/TruncSilence.cpp:113
-#: effects/TruncSilence.cpp:322
+#: effects/TruncSilence.cpp:113 effects/TruncSilence.cpp:322
msgid "Truncate Silence"
msgstr "Trunca un silenci"
-#: effects/TruncSilence.cpp:346
-msgid "Max silence duration:"
-msgstr "Durada mà xima del silenci:"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr ""
+
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
+msgstr ""
-#: effects/TruncSilence.cpp:349
-#: prefs/AudioIOPrefs.cpp:190
+#: effects/TruncSilence.cpp:349 prefs/AudioIOPrefs.cpp:190
#: prefs/AudioIOPrefs.cpp:193
msgid "milliseconds"
msgstr "mil·lisegons"
+#: effects/TruncSilence.cpp:346
+msgid "Max silence duration:"
+msgstr "Durada mà xima del silenci:"
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ""
+
#: effects/TruncSilence.cpp:351
msgid "Threshold for silence:"
msgstr "Llindar de silenci:"
-#: effects/TruncSilence.cpp:376
-msgid " Duration must be at least 1 millisecond"
-msgstr " La durada ha de ser d'almenys 1 mil·lisegon"
+#: effects/TruncSilence.cpp:506
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
+msgstr ""
#: effects/TruncSilence.h:28
msgid "Truncate Silence..."
@@ -5855,17 +5731,55 @@ msgstr "Trunca un silenci..."
msgid "Truncating Silence..."
msgstr "S'està truncant el silenci..."
-#: effects/VST/VSTEffect.cpp:165
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "Els efectes VST no es poden aplicar a les pistes estereofòniques quan els dos canals no coincideixen."
+#: effects/ladspa/LadspaEffect.cpp:608
+msgid "Effect Settings"
+msgstr "Parà metres de l'efecte"
+
+#: effects/ladspa/LadspaEffect.cpp:573 effects/ladspa/LadspaEffect.cpp:581
+#: prefs/GUIPrefs.cpp:51 prefs/QualityPrefs.cpp:72
+msgid "None"
+msgstr "Cap"
+
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
-#: effects/VST/VSTEffect.cpp:180
-msgid "Can't process replacing"
-msgstr "No es pot processar la substitució"
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
-#: effects/VST/VSTEffect.cpp:403
-msgid "VST Plug-in parameters:"
-msgstr "Parà metres del complement VST:"
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr ""
#: effects/Wahwah.cpp:61
#, c-format
@@ -5914,22 +5828,10 @@ msgstr "S'està aplicant l'efecte: %s"
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr "Els efectes complementaris no es poden aplicar a pistes estereofòniques quan els dos canals no coincideixen."
-#: effects/ladspa/LadspaEffect.cpp:573
-#: effects/ladspa/LadspaEffect.cpp:581
-#: prefs/GUIPrefs.cpp:51
-#: prefs/QualityPrefs.cpp:72
-msgid "None"
-msgstr "Cap"
-
-#: effects/ladspa/LadspaEffect.cpp:575
-#: effects/vamp/VampEffect.cpp:384
+#: effects/ladspa/LadspaEffect.cpp:575 effects/vamp/VampEffect.cpp:384
msgid "Author: "
msgstr "Autor:"
-#: effects/ladspa/LadspaEffect.cpp:608
-msgid "Effect Settings"
-msgstr "Parà metres de l'efecte"
-
#: effects/ladspa/LadspaEffect.cpp:699
msgid "Length (seconds)"
msgstr "Longitud (segons)"
@@ -5950,8 +5852,7 @@ msgstr ""
msgid "Applying Nyquist Effect..."
msgstr "S'està aplicant l'efecte Nyquist..."
-#: effects/nyquist/Nyquist.cpp:259
-#: effects/nyquist/Nyquist.cpp:321
+#: effects/nyquist/Nyquist.cpp:259 effects/nyquist/Nyquist.cpp:321
msgid "Nyquist Prompt..."
msgstr "LÃnia d'ordres del Nyquist..."
@@ -5971,8 +5872,7 @@ msgstr "Nyquist"
msgid "Nyquist Output: "
msgstr "Sortida del Nyquist:"
-#: effects/nyquist/Nyquist.cpp:598
-#: effects/nyquist/Nyquist.cpp:609
+#: effects/nyquist/Nyquist.cpp:598 effects/nyquist/Nyquist.cpp:609
msgid "Nyquist returned the value:"
msgstr "Valor retornat pel Nyquist:"
@@ -6080,8 +5980,7 @@ msgstr " - Dret"
msgid "Mixer Panel"
msgstr ""
-#: export/Export.cpp:976
-#: export/Export.cpp:1021
+#: export/Export.cpp:976 export/Export.cpp:1021
#, c-format
msgid "Output Channels: %2d"
msgstr "Canals de sortida: %2d"
@@ -6111,8 +6010,7 @@ msgstr "Les dades seran canalitzades cap al canal d'entrada està ndard. \"%f\" s
msgid "(external program)"
msgstr "(programa extern)"
-#: export/ExportCL.cpp:250
-#: export/ExportPCM.cpp:367
+#: export/ExportCL.cpp:250 export/ExportPCM.cpp:367
#, c-format
msgid "Cannot export audio to %s"
msgstr "No es port exportar el so a %s"
@@ -6129,9 +6027,21 @@ msgstr "S'està exportant tot el projecte utilitzant el codificador de lÃnia d'
msgid "Command Output"
msgstr "Sortida de l'ordre"
-#: export/ExportFFmpeg.cpp:59
+#: export/ExportFFmpeg.cpp:61
msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
#: export/ExportFFmpeg.cpp:394
@@ -6199,6 +6109,10 @@ msgstr ""
msgid "AAC Export Setup"
msgstr ""
+#: export/ExportOGG.cpp:86
+msgid "Quality:"
+msgstr "Qualitat:"
+
#: export/ExportFFmpegDialogs.cpp:211
msgid "Specify AMR-NB Options"
msgstr ""
@@ -6332,12 +6246,8 @@ msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n
"Recommended - 192000"
msgstr ""
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr "Qualitat:"
-
-#: export/ExportFFmpegDialogs.cpp:928
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid "Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
@@ -6356,10 +6266,10 @@ msgstr ""
msgid "Cutoff Bandwidth:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:934
+#: export/ExportFFmpegDialogs.cpp:936
msgid "Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:936
@@ -6548,12 +6458,12 @@ msgstr ""
msgid "AC3 Files (FFmpeg)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:56
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:57
@@ -6664,6 +6574,17 @@ msgstr "Resolució:"
msgid "FLAC Files"
msgstr "Fitxers FLAC"
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
#: export/ExportFLAC.cpp:310
msgid "Exporting the selected audio as FLAC"
msgstr "S'està exportant el so seleccionat com a FLAC"
@@ -6688,9 +6609,7 @@ msgstr "Fitxers MP2"
msgid "Cannot export MP2 with this sample rate and bit rate"
msgstr "No es pot exportar a MP2 amb aquests valors de freqüència de mostreig i cabal de bits"
-#: export/ExportMP2.cpp:240
-#: export/ExportMP3.cpp:1768
-#: export/ExportOGG.cpp:183
+#: export/ExportMP2.cpp:240 export/ExportMP3.cpp:1768 export/ExportOGG.cpp:183
msgid "Unable to open target file for writing"
msgstr "No s'ha pogut obrir el fitxer de destinació per a escriure-hi"
@@ -6704,9 +6623,7 @@ msgstr "S'està exportant el so seleccionat a %d kbps"
msgid "Exporting entire file at %d kbps"
msgstr "S'està exportant tot el fitxer a %d kbps"
-#: export/ExportMP3.cpp:221
-#: export/ExportMP3.cpp:239
-#: export/ExportMP3.cpp:253
+#: export/ExportMP3.cpp:221 export/ExportMP3.cpp:239 export/ExportMP3.cpp:253
msgid "kbps"
msgstr "kbps"
@@ -6722,9 +6639,7 @@ msgstr "(Fitxers més petits)"
msgid "Fast"
msgstr "RÃ pid"
-#: export/ExportMP3.cpp:244
-#: export/ExportMP3.cpp:250
-#: prefs/GUIPrefs.cpp:41
+#: export/ExportMP3.cpp:244 export/ExportMP3.cpp:250 prefs/GUIPrefs.cpp:41
#: prefs/GUIPrefs.cpp:49
msgid "Standard"
msgstr "Està ndard"
@@ -6769,8 +6684,7 @@ msgstr "Mitjana"
msgid "Constant"
msgstr "Constant"
-#: export/ExportMP3.cpp:373
-#: prefs/QualityPrefs.cpp:42
+#: export/ExportMP3.cpp:373 prefs/QualityPrefs.cpp:42
#: prefs/QualityPrefs.cpp:43
msgid "Quality"
msgstr "Qualitat"
@@ -6891,10 +6805,8 @@ msgstr "La combinació de freqüència de mostreig (%d) i cabal de bits (%d kbps
msgid "MP3 export library not found"
msgstr ""
-#: export/ExportMultiple.cpp:95
-#: export/ExportMultiple.cpp:374
-#: export/ExportMultiple.cpp:598
-#: export/ExportMultiple.cpp:765
+#: export/ExportMultiple.cpp:95 export/ExportMultiple.cpp:374
+#: export/ExportMultiple.cpp:598 export/ExportMultiple.cpp:765
msgid "Export Multiple"
msgstr "Exporta múltiples fitxers"
@@ -6924,11 +6836,6 @@ msgstr "Opcions..."
msgid "Export location:"
msgstr "Ubicació de l'exportació:"
-#: export/ExportMultiple.cpp:216
-#: prefs/DirectoriesPrefs.cpp:92
-msgid "Choose..."
-msgstr "Navega..."
-
#: export/ExportMultiple.cpp:217
msgid "Create"
msgstr "Crea"
@@ -6953,10 +6860,6 @@ msgstr "Nom del primer fitxer:"
msgid "First file name"
msgstr ""
-#: export/ExportMultiple.cpp:258
-msgid "Tracks"
-msgstr "Pistes"
-
#: export/ExportMultiple.cpp:265
msgid "Name files:"
msgstr "Anomena els fitxers:"
@@ -6990,6 +6893,35 @@ msgstr "S'ha creat \"%s\" amb èxit."
msgid "Choose a location to save the exported files"
msgstr "Escull una ubicació per a desar-hi els fitxers exportats"
+#: export/ExportMultiple.cpp:524
+#, c-format
+msgid "Successfully exported the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:527
+#, c-format
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr ""
+
#: export/ExportMultiple.cpp:470
#, c-format
msgid "\"%s\" doesn't exist.\n"
@@ -6999,23 +6931,10 @@ msgstr "\"%s\" no existeix.\n"
"\n"
"Voleu crear-lo?"
-#: export/ExportMultiple.cpp:568
-#: export/ExportMultiple.cpp:703
+#: export/ExportMultiple.cpp:568 export/ExportMultiple.cpp:703
msgid "Edit metadata"
msgstr "Edita les metadades"
-#: export/ExportMultiple.cpp:595
-#: export/ExportMultiple.cpp:762
-#, c-format
-msgid "Successfully exported %d file(s)."
-msgstr "S'ha realitzat correctament l'exportació de %d fitxer(s)."
-
-#: export/ExportMultiple.cpp:596
-#: export/ExportMultiple.cpp:763
-#, c-format
-msgid "Something went wrong after exporting %d file(s)."
-msgstr "Alguna cosa ha anat malament després d'exportar %d fitxer(s)."
-
#: export/ExportMultiple.cpp:825
#, c-format
msgid "Label %s is not a legal file name. You cannot use any of: %s\n"
@@ -7184,7 +7103,6 @@ msgstr "\"%s\" és un fitxer de tipus Advanced Audio Coding. \n"
"HaurÃeu de convertir-lo a algun format de so que estigui suportat, com ara WAV o AIFF."
#: import/Import.cpp:273
-#, c-format
#, fuzzy
msgid "\"%s\" is an encrypted audio file. \n"
"These typically are from an online music store. \n"
@@ -7288,6 +7206,10 @@ msgstr ""
msgid "FLAC files"
msgstr "Fitxers FLAC"
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr ""
+
#: import/ImportLOF.cpp:92
msgid "List of Files in basic text format"
msgstr "Llistat de fitxers en un format bà sic de text"
@@ -7298,9 +7220,7 @@ msgid "Invalid window offset in LOF file."
msgstr "Indicació incorrecta de posició de finestra en el fitxer LOF"
#. i18n-hint: You do not need to translate "LOF"
-#: import/ImportLOF.cpp:320
-#: import/ImportLOF.cpp:341
-#: import/ImportLOF.cpp:415
+#: import/ImportLOF.cpp:320 import/ImportLOF.cpp:341 import/ImportLOF.cpp:415
#: import/ImportLOF.cpp:435
msgid "LOF Error"
msgstr "Error de LOF"
@@ -7356,8 +7276,7 @@ msgstr "Encapçalament invà lid de Vorbis bistream"
msgid "Internal logic fault"
msgstr "Avaria de lògica interna."
-#: export/ExportPCM.cpp:320
-#: import/ImportPCM.cpp:47
+#: export/ExportPCM.cpp:320 import/ImportPCM.cpp:47
msgid "WAV, AIFF, and other uncompressed types"
msgstr "WAV, AIFF i altres tipus de fitxers no comprimits"
@@ -7450,36 +7369,41 @@ msgstr ""
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr ""
-#: prefs/AudioIOPrefs.cpp:41
-#: prefs/AudioIOPrefs.cpp:42
-msgid "Audio I/O"
-msgstr "E/S de so"
+#: prefs/BatchPrefs.cpp:55 prefs/BatchPrefs.cpp:56
+msgid "Batch"
+msgstr "Processos en cadena"
-#: prefs/AudioIOPrefs.cpp:100
-msgid "1 (Mono)"
-msgstr "1 (Mono)"
+#: prefs/BatchPrefs.cpp:77 prefs/GUIPrefs.cpp:92
+msgid "Behaviors"
+msgstr "Comportaments"
-#: prefs/AudioIOPrefs.cpp:101
-msgid "2 (Stereo)"
-msgstr "2 (Estèreo)"
+#: prefs/BatchPrefs.cpp:80 prefs/GUIPrefs.cpp:129
+msgid "&Don't apply effects in batch mode"
+msgstr "&No apliquis els efectes quan estiguis en mode de procés per lots"
-#: prefs/AudioIOPrefs.cpp:115
-msgid "Playback"
-msgstr "Reproducció"
+#: prefs/BatchPrefs.cpp:83 prefs/GUIPrefs.cpp:132
+msgid "Cl&eanSpeech Mode (Customized GUI)"
+msgstr "Mode Cl&eanSpeech (Entorn personalitzat)"
-#: prefs/AudioIOPrefs.cpp:119
-#: prefs/AudioIOPrefs.cpp:137
-#: toolbars/DeviceToolBar.cpp:57
-msgid "Device"
-msgstr "Dispositiu"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:34 prefs/GUIPrefs.cpp:35
+msgid "Interface"
+msgstr "InterfÃcie"
+
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
+msgstr ""
#: prefs/AudioIOPrefs.cpp:122
msgid "Using:"
msgstr "Emprant:"
-#: prefs/AudioIOPrefs.cpp:123
-msgid "Portaudio v"
-msgstr "Portaudio v"
+#: prefs/AudioIOPrefs.cpp:115
+msgid "Playback"
+msgstr "Reproducció"
#: prefs/AudioIOPrefs.cpp:133
msgid "Recording"
@@ -7489,100 +7413,15 @@ msgstr "Enregistrament"
msgid "Channels"
msgstr "Canals"
-#: prefs/AudioIOPrefs.cpp:145
-msgid "Playthrough"
-msgstr "Interpreta a través"
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr "Reproducció a través del &Maquinari: Interpreta una pista nova mentre s'està enregistrant."
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr "Reproducció a través del &programari: Interpreta una nova pista mentre s'enregistra"
-
-#: prefs/AudioIOPrefs.cpp:158
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:161
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:162
-msgid "Effects Preview"
-msgstr "Previsualització d'efectes"
-
-#: prefs/AudioIOPrefs.cpp:165
-msgid "Length of preview:"
-msgstr "Longitud de la vista preliminar:"
-
-#: prefs/AudioIOPrefs.cpp:170
-msgid "Cut Preview"
-msgstr "Previsualitza el tall"
-
-#: prefs/AudioIOPrefs.cpp:173
-msgid "Preview before cut region:"
-msgstr "Vista preliminar abans de la regió retallada:"
-
-#: prefs/AudioIOPrefs.cpp:175
-msgid "Preview after cut region:"
-msgstr "Vista preliminar després de la regió retallada:"
-
-#: prefs/AudioIOPrefs.cpp:183
-msgid "Latency"
-msgstr "Latència"
-
-#: prefs/AudioIOPrefs.cpp:189
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
-msgstr "Ãudio a la memòria intermèdia:\n"
-"(valor més alt = més latència)"
-
-#: prefs/AudioIOPrefs.cpp:192
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr "Correcció de latència:\n"
-"(valor negatiu = enrere)"
-
-#: prefs/AudioIOPrefs.cpp:197
-msgid "Seek Time when playing"
-msgstr "Desplaçament en el temps mentre s'interpreta"
-
-#: prefs/AudioIOPrefs.cpp:200
-msgid "Short period:"
-msgstr "PerÃode curt:"
-
-#: prefs/AudioIOPrefs.cpp:202
-msgid "Long period:"
-msgstr "PerÃode llarg:"
-
-#: prefs/BatchPrefs.cpp:55
-#: prefs/BatchPrefs.cpp:56
-msgid "Batch"
-msgstr "Processos en cadena"
-
-#: prefs/BatchPrefs.cpp:77
-#: prefs/GUIPrefs.cpp:92
-msgid "Behaviors"
-msgstr "Comportaments"
-
-#: prefs/BatchPrefs.cpp:80
-#: prefs/GUIPrefs.cpp:129
-msgid "&Don't apply effects in batch mode"
-msgstr "&No apliquis els efectes quan estiguis en mode de procés per lots"
+#: prefs/AudioIOPrefs.cpp:100
+msgid "1 (Mono)"
+msgstr "1 (Mono)"
-#: prefs/BatchPrefs.cpp:83
-#: prefs/GUIPrefs.cpp:132
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr "Mode Cl&eanSpeech (Entorn personalitzat)"
+#: prefs/AudioIOPrefs.cpp:101
+msgid "2 (Stereo)"
+msgstr "2 (Estèreo)"
-#: prefs/DirectoriesPrefs.cpp:55
-#: prefs/DirectoriesPrefs.cpp:56
+#: prefs/DirectoriesPrefs.cpp:55 prefs/DirectoriesPrefs.cpp:56
#: prefs/PrefsDialog.cpp:279
msgid "Directories"
msgstr "Directoris"
@@ -7599,34 +7438,31 @@ msgstr "Posició:"
msgid "Free Space:"
msgstr "Espai lliure:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr "Desa automà ticament"
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr "Desa automà ticament una còpia del projecte en una altra carpeta"
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
-msgstr "Desa automà ticament cada:"
-
-#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
-msgstr "minuts"
-
#: prefs/DirectoriesPrefs.cpp:110
msgid "Audio cache"
msgstr "Memòria intermèdia de so"
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "Play and/or record using RAM (useful for slow drives)"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
#: prefs/DirectoriesPrefs.cpp:121
msgid "Choose a location to place the temporary directory"
msgstr "Trieu la ubicació del directori temporal"
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: prefs/DirectoriesPrefs.cpp:166
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -7645,230 +7481,145 @@ msgstr "No es pot escriure al directori %s"
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "Els canvis en el directori temporal tindran efecte en reiniciar l'Audacity"
-#: prefs/FileFormatPrefs.cpp:48
-#: prefs/FileFormatPrefs.cpp:49
-msgid "Import / Export"
-msgstr "Importa / Exporta"
-
-#: prefs/FileFormatPrefs.cpp:77
-msgid "MP3 Export Library"
-msgstr "Biblioteca d'exportació a MP3"
-
-#: prefs/FileFormatPrefs.cpp:80
-msgid "MP3 Library Version:"
-msgstr "Versió de la biblioteca MP3:"
+#: prefs/GUIPrefs.cpp:42
+msgid "In Browser"
+msgstr "Al navegador"
-#: prefs/FileFormatPrefs.cpp:86
-msgid "MP3 Library:"
-msgstr "Biblioteca MP3:"
+#: prefs/GUIPrefs.cpp:43
+msgid "From Internet"
+msgstr "D'Internet"
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:91
-msgid "LAME MP3 Library:"
-msgstr "Biblioteca MP3 LAME:"
-
-#: prefs/FileFormatPrefs.cpp:94
-msgid "&Download"
-msgstr "&Descarrega"
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:136
-#, fuzzy
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr "Nota: Les opcions referents a la qualitat de l'exportació es poden escollir fent clic al botó Opcions del dià leg Exporta.\n"
-
-#: prefs/FileFormatPrefs.cpp:100
-msgid "When importing audio files"
-msgstr "Quan importis fitxers de so"
-
-#: prefs/FileFormatPrefs.cpp:103
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
-msgstr "&Fes una còpia del fitxer sense comprimir abans d'editar-lo (més segur)"
-
-#: prefs/FileFormatPrefs.cpp:104
-msgid "&Read uncompressed audio files directly from the original (faster)"
-msgstr "&Llegeix directament el so sense comprimir del fitxer original (més rà pid)"
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "&Normalize all tracks in project"
-msgstr "&Normalitza totes les pistes del projecte"
-
-#: prefs/FileFormatPrefs.cpp:111
-msgid "When saving a project that depends on other audio files"
-msgstr "En desar un projecte que depèn d'altres fitxers de so"
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
+msgstr ""
-#: prefs/FileFormatPrefs.cpp:114
-msgid "Always © all audio into project (safest)"
-msgstr "&Copia sempre tot el so dins del projecte (el més segur)"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
+msgstr ""
-#: prefs/FileFormatPrefs.cpp:115
-msgid "&Do not copy any audio"
-msgstr "&No copiïs cap so"
+#: prefs/GUIPrefs.cpp:141
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 dB (rang estret de valors, per a editar sons amb molta amplitud)"
-#: prefs/FileFormatPrefs.cpp:116
-msgid "&Ask user"
-msgstr "Pregunt&a a l'usuari/Ã ria"
+#: prefs/GUIPrefs.cpp:142
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 dB (rang PCM de les mostres de 8 bits)"
-#: prefs/FileFormatPrefs.cpp:120
-msgid "When exporting tracks to an audio file"
-msgstr "Quan s'exportin pistes a un fitxer de so"
+#: prefs/GUIPrefs.cpp:143
+msgid "-60 dB (PCM range of 10 bit samples)"
+msgstr "-60 dB (rang PCM de les mostres de 10 bits)"
-#: prefs/FileFormatPrefs.cpp:123
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
-msgstr "Mescla sempre totes les pistes en un canal estereofònic o monofònic"
+#: prefs/GUIPrefs.cpp:144
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 dB (rang PCM de les mostres de 16 bits)"
-#: prefs/FileFormatPrefs.cpp:124
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
-msgstr "&Fes servir una mescla personalitzada (per exemple, per a exportar a un fitxer multicanal 5.1)"
+#: prefs/GUIPrefs.cpp:145
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 dB (lÃmit aproximat de percepció de l'oïda humana)"
-#: prefs/FileFormatPrefs.cpp:126
-msgid "S&how Metadata Editor prior to export step"
-msgstr "Mo&stra l'editor de metadades abans d'iniciar l'exportació"
+#: prefs/GUIPrefs.cpp:146
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB (rang PCM de les mostres de 24 bits)"
-#: prefs/GUIPrefs.cpp:34
-#: prefs/GUIPrefs.cpp:35
-msgid "Interface"
-msgstr "InterfÃcie"
+#: prefs/SpectrumPrefs.cpp:140
+msgid "Display"
+msgstr "Pantalla"
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
-msgstr "Al navegador"
+#: prefs/GUIPrefs.cpp:100
+msgid "Er&gonomic order of audio I/O buttons"
+msgstr ""
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
-msgstr "D'Internet"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
+msgstr ""
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
-msgstr "Simple"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
+msgstr ""
-#: prefs/GUIPrefs.cpp:94
-msgid "&Update display while playing"
-msgstr "&Refresca la representació grà fica mentre es reprodueix el so"
+#: prefs/GUIPrefs.cpp:169
+msgid "Help:"
+msgstr "Ajuda:"
#: prefs/GUIPrefs.cpp:96
#, fuzzy
msgid "Cl&osing last window quits Audacity"
msgstr "Quan tanqueu la darrera finestra es tancarà l'Audacity"
-#: prefs/GUIPrefs.cpp:98
-msgid "Enable &dragging of left and right selection edges"
-msgstr "Habilita l'&arrossegament de les vores dreta i esquerra de la selecció"
-
-#: prefs/GUIPrefs.cpp:100
-msgid "Er&gonomic order of audio I/O buttons"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:102
-msgid "Automatically &fit tracks vertically zoomed"
-msgstr "Zoom vertical automà tic que permeti &encabir-hi totes les pistes"
-
-#: prefs/GUIPrefs.cpp:104
-#, fuzzy
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
-msgstr "\"Canvia la pista activa\" va passant &cÃclicament per totes les pistes del projecte"
-
-#: prefs/GUIPrefs.cpp:106
-msgid "Editing a &clip can move other clips"
-msgstr "L'edició d'un &clip pot moure altres clips"
-
-#: prefs/GUIPrefs.cpp:108
-msgid "&Select all audio in project, if none selected"
-msgstr "&Selecciona tot el so del projecte si no hi ha res seleccionat"
-
#: prefs/GUIPrefs.cpp:110
msgid "&Beep on completion of longer activities"
msgstr "&Fes 'bip' quan es completi una acció de llarga durada"
-#: prefs/GUIPrefs.cpp:114
-msgid "Show / Hide"
-msgstr "Mostra / Amaga"
-
-#: prefs/GUIPrefs.cpp:116
-msgid "Enable cut &lines"
-msgstr "Habilita les &lÃnies de tall"
-
-#: prefs/GUIPrefs.cpp:118
-msgid "Show warnings about &temp files"
-msgstr "Mostra advertiments sobre els fitxers &temporals"
-
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:122
-#, fuzzy
-msgid "Show &Welcome Message at program start up"
-msgstr "Mostra el missatge de benvinguda en iniciar el programa"
-
#: prefs/GUIPrefs.cpp:126
msgid "Modes"
msgstr "Modes"
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
+msgstr ""
+
#: prefs/GUIPrefs.cpp:129
msgid "Don't a&pply effects in batch mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
-msgstr "Rang mÃnim de representació: mesuradors i so en forma d'ona (dB)'"
-
-#: prefs/GUIPrefs.cpp:141
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 dB (rang estret de valors, per a editar sons amb molta amplitud)"
+#: prefs/FileFormatPrefs.cpp:48 prefs/FileFormatPrefs.cpp:49
+msgid "Import / Export"
+msgstr "Importa / Exporta"
-#: prefs/GUIPrefs.cpp:142
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 dB (rang PCM de les mostres de 8 bits)"
+#: prefs/FileFormatPrefs.cpp:100
+msgid "When importing audio files"
+msgstr "Quan importis fitxers de so"
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
-msgstr "-60 dB (rang PCM de les mostres de 10 bits)"
+#: prefs/FileFormatPrefs.cpp:103
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
+msgstr "&Fes una còpia del fitxer sense comprimir abans d'editar-lo (més segur)"
-#: prefs/GUIPrefs.cpp:144
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 dB (rang PCM de les mostres de 16 bits)"
+#: prefs/FileFormatPrefs.cpp:104
+msgid "&Read uncompressed audio files directly from the original (faster)"
+msgstr "&Llegeix directament el so sense comprimir del fitxer original (més rà pid)"
-#: prefs/GUIPrefs.cpp:145
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 dB (lÃmit aproximat de percepció de l'oïda humana)"
+#: prefs/FileFormatPrefs.cpp:106
+msgid "&Normalize all tracks in project"
+msgstr "&Normalitza totes les pistes del projecte"
-#: prefs/GUIPrefs.cpp:146
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB (rang PCM de les mostres de 24 bits)"
+#: prefs/FileFormatPrefs.cpp:120
+msgid "When exporting tracks to an audio file"
+msgstr "Quan s'exportin pistes a un fitxer de so"
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
-msgstr "Mode de visualització per defecte"
+#: prefs/FileFormatPrefs.cpp:123
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+msgstr "Mescla sempre totes les pistes en un canal estereofònic o monofònic"
-#: prefs/GUIPrefs.cpp:166
-msgid "Other interface choices"
-msgstr "Altres opcions de l'interfÃcie"
+#: prefs/FileFormatPrefs.cpp:124
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+msgstr "&Fes servir una mescla personalitzada (per exemple, per a exportar a un fitxer multicanal 5.1)"
-#: prefs/GUIPrefs.cpp:169
-msgid "Help:"
-msgstr "Ajuda:"
+#: prefs/FileFormatPrefs.cpp:126
+msgid "S&how Metadata Editor prior to export step"
+msgstr "Mo&stra l'editor de metadades abans d'iniciar l'exportació"
-#: prefs/GUIPrefs.cpp:170
-msgid "Solo Button:"
-msgstr "Botó Solo:"
+#: prefs/ImportExportPrefs.cpp:84
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
+msgstr ""
-#: prefs/KeyConfigPrefs.cpp:64
-#: prefs/KeyConfigPrefs.cpp:65
+#: prefs/KeyConfigPrefs.cpp:64 prefs/KeyConfigPrefs.cpp:65
msgid "Keyboard"
msgstr "Teclat"
@@ -7892,22 +7643,26 @@ msgstr "&Estableix"
msgid "Note: Pressing Cmd+Q will quit. All other keys are valid."
msgstr "Nota: Prement Cmd+Q es tancarà el programa. Totes les altres tecles són và lides."
-#: prefs/KeyConfigPrefs.cpp:124
-#: prefs/ThemePrefs.cpp:105
+#: prefs/KeyConfigPrefs.cpp:124 prefs/ThemePrefs.cpp:105
msgid "&Defaults"
msgstr "Valors per &defecte"
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr ""
+
#: prefs/KeyConfigPrefs.cpp:143
msgid "Key Combination"
msgstr "Combinació de tecles"
-#: prefs/KeyConfigPrefs.cpp:163
-msgid "Export Keyboard Shortcuts As:"
-msgstr "Anomena i exporta les dreceres de teclat:"
+#: prefs/KeyConfigPrefs.cpp:367 toolbars/EditToolBar.cpp:144
+msgid "Undo"
+msgstr "Desfés"
-#: prefs/KeyConfigPrefs.cpp:181
-msgid "Error saving keyboard shortcuts"
-msgstr "S'ha produït un error en desar les dreceres de teclat"
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr ""
#: prefs/KeyConfigPrefs.cpp:196
msgid "Select an XML file containing Audacity keyboard shortcuts..."
@@ -7917,6 +7672,14 @@ msgstr "Seleccioneu un fitxer XML amb les dreceres de teclat de l'Audacity..."
msgid "Error loading keyboard shortcuts"
msgstr "S'ha produït un error en carregar les dreceres de teclat"
+#: prefs/KeyConfigPrefs.cpp:163
+msgid "Export Keyboard Shortcuts As:"
+msgstr "Anomena i exporta les dreceres de teclat:"
+
+#: prefs/KeyConfigPrefs.cpp:181
+msgid "Error saving keyboard shortcuts"
+msgstr "S'ha produït un error en desar les dreceres de teclat"
+
#: prefs/KeyConfigPrefs.cpp:241
#, c-format
msgid "The keyboard shortcut '%s' is already assigned to:\n"
@@ -7926,10 +7689,61 @@ msgstr "La drecera de teclat '%s' es troba ja assignada a:\n"
"\n"
"'%s'"
-#: prefs/KeyConfigPrefs.cpp:367
-#: toolbars/EditToolBar.cpp:144
-msgid "Undo"
-msgstr "Desfés"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:77
+msgid "MP3 Export Library"
+msgstr "Biblioteca d'exportació a MP3"
+
+#: prefs/FileFormatPrefs.cpp:80
+msgid "MP3 Library Version:"
+msgstr "Versió de la biblioteca MP3:"
+
+#: prefs/FileFormatPrefs.cpp:86
+msgid "MP3 Library:"
+msgstr "Biblioteca MP3:"
+
+#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:91
+msgid "LAME MP3 Library:"
+msgstr "Biblioteca MP3 LAME:"
+
+#: prefs/FileFormatPrefs.cpp:94
+msgid "&Download"
+msgstr "&Descarrega"
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:109
+msgid "FFmpeg Library Version:"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
+msgid "FFmpeg Library:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:41 prefs/AudioIOPrefs.cpp:42
+msgid "Audio I/O"
+msgstr "E/S de so"
+
+#: prefs/AudioIOPrefs.cpp:123
+msgid "Portaudio v"
+msgstr "Portaudio v"
+
+#: prefs/AudioIOPrefs.cpp:145
+msgid "Playthrough"
+msgstr "Interpreta a través"
#: prefs/AudioIOPrefs.cpp:147
msgid "&Play other tracks while recording new one"
@@ -7943,6 +7757,10 @@ msgstr ""
msgid "&Software Playthrough (Play new track while recording it)"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:170
+msgid "Cut Preview"
+msgstr "Previsualitza el tall"
+
#: prefs/MidiIOPrefs.cpp:160
msgid "Play before cut region:"
msgstr ""
@@ -7951,6 +7769,10 @@ msgstr ""
msgid "Play after cut region:"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:183
+msgid "Latency"
+msgstr "Latència"
+
#: prefs/MidiIOPrefs.cpp:173
msgid "Audio to buffer:"
msgstr ""
@@ -7963,12 +7785,23 @@ msgstr ""
msgid "Seek Time"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:200
+msgid "Short period:"
+msgstr "PerÃode curt:"
+
+#: prefs/AudioIOPrefs.cpp:202
+msgid "Long period:"
+msgstr "PerÃode llarg:"
+
+#: prefs/AudioIOPrefs.cpp:162
+msgid "Effects Preview"
+msgstr "Previsualització d'efectes"
+
#: prefs/MidiIOPrefs.cpp:196
msgid "Play when previewing:"
msgstr ""
-#: prefs/MousePrefs.cpp:55
-#: prefs/MousePrefs.cpp:56
+#: prefs/MousePrefs.cpp:55 prefs/MousePrefs.cpp:56
msgid "Mouse"
msgstr "RatolÃ"
@@ -7988,37 +7821,26 @@ msgstr "Acció d'ordre"
msgid "Buttons"
msgstr "Botons"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:117
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:117
#: prefs/MousePrefs.cpp:122
msgid "Left-Click"
msgstr "Clic esquerre"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:100
-#: prefs/MousePrefs.cpp:101
-#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:101 prefs/MousePrefs.cpp:102
msgid "Select"
msgstr "Selecciona"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:122
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:122
msgid "Set Selection Point"
msgstr "Especifica el punt de selecció"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:115
-#: prefs/MousePrefs.cpp:119
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:115 prefs/MousePrefs.cpp:119 prefs/MousePrefs.cpp:123
msgid "Left-Drag"
msgstr "Arrossegament amb el botó principal"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:123
msgid "Set Selection Range"
msgstr "Especifica el rang de selecció"
@@ -8046,12 +7868,8 @@ msgstr "Ctrl+clic esquerre"
msgid "Set Selection Point and Play"
msgstr "Estableix el punt de selecció i interpreta"
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:108
-#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:106
+#: prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:108 prefs/MousePrefs.cpp:109
msgid "Zoom"
msgstr "Zoom"
@@ -8059,9 +7877,7 @@ msgstr "Zoom"
msgid "Zoom in on Point"
msgstr "Zoom en un punt"
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:125
msgid "Zoom in on a Range"
msgstr "Zoom en un rang"
@@ -8069,18 +7885,15 @@ msgstr "Zoom en un rang"
msgid "same as right-drag"
msgstr "el mateix que arrossegar a la dreta"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:106 prefs/MousePrefs.cpp:124
msgid "Right-Click"
msgstr "Clic amb el botó secundari"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:106 prefs/MousePrefs.cpp:124
msgid "Zoom out one step"
msgstr "Allunya un pas"
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:125
msgid "Right-Drag"
msgstr "Arrossegament amb el botó secundari"
@@ -8116,8 +7929,7 @@ msgstr "Shift+Arrossega a l'esquerra"
msgid "Time shift all clips in track"
msgstr "Desplaça en el temps tots els clips d'una pista"
-#: prefs/MousePrefs.cpp:113
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:113 prefs/MousePrefs.cpp:120
msgid "Ctrl-Left-Drag"
msgstr "Ctrl+Arrossega a l'esquerra"
@@ -8133,9 +7945,7 @@ msgstr "Canvia l'envolupant d'amplificació"
msgid "Change Sample"
msgstr "Canvia la mostra"
-#: prefs/MousePrefs.cpp:117
-#: prefs/MousePrefs.cpp:118
-#: prefs/MousePrefs.cpp:119
+#: prefs/MousePrefs.cpp:117 prefs/MousePrefs.cpp:118 prefs/MousePrefs.cpp:119
#: prefs/MousePrefs.cpp:120
msgid "Pencil"
msgstr "Llapis"
@@ -8156,26 +7966,20 @@ msgstr "Canvia diverses mostres"
msgid "Change ONE Sample only"
msgstr "Canvia només UNA mostra"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123 prefs/MousePrefs.cpp:124
#: prefs/MousePrefs.cpp:125
msgid "Multi"
msgstr "Diverses"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123
msgid "same as select tool"
msgstr "el mateix que l'eina de seleccionar"
-#: prefs/MousePrefs.cpp:124
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:124 prefs/MousePrefs.cpp:125
msgid "same as zoom tool"
msgstr "el mateix que l'eina de zoom"
-#: prefs/MousePrefs.cpp:127
-#: prefs/MousePrefs.cpp:128
-#: prefs/MousePrefs.cpp:129
+#: prefs/MousePrefs.cpp:127 prefs/MousePrefs.cpp:128 prefs/MousePrefs.cpp:129
msgid "Any"
msgstr "Qualsevol"
@@ -8203,10 +8007,62 @@ msgstr "Ctrl+Roda del ratolÃ"
msgid "Zoom in or out"
msgstr "Apropa o allunya"
+#: prefs/AudioIOPrefs.cpp:165
+msgid "Length of preview:"
+msgstr "Longitud de la vista preliminar:"
+
+#: prefs/AudioIOPrefs.cpp:173
+msgid "Preview before cut region:"
+msgstr "Vista preliminar abans de la regió retallada:"
+
+#: prefs/AudioIOPrefs.cpp:175
+msgid "Preview after cut region:"
+msgstr "Vista preliminar després de la regió retallada:"
+
+#: prefs/AudioIOPrefs.cpp:197
+msgid "Seek Time when playing"
+msgstr "Desplaçament en el temps mentre s'interpreta"
+
#: prefs/PrefsDialog.cpp:89
msgid "Audacity Preferences"
msgstr "Preferències de l'Audacity"
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:111
+msgid "When saving a project that depends on other audio files"
+msgstr "En desar un projecte que depèn d'altres fitxers de so"
+
+#: prefs/FileFormatPrefs.cpp:114
+msgid "Always © all audio into project (safest)"
+msgstr "&Copia sempre tot el so dins del projecte (el més segur)"
+
+#: prefs/FileFormatPrefs.cpp:115
+msgid "&Do not copy any audio"
+msgstr "&No copiïs cap so"
+
+#: prefs/FileFormatPrefs.cpp:116
+msgid "&Ask user"
+msgstr "Pregunt&a a l'usuari/Ã ria"
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr "Desa automà ticament"
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr "Desa automà ticament una còpia del projecte en una altra carpeta"
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr "Desa automà ticament cada:"
+
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr "minuts"
+
#: prefs/QualityPrefs.cpp:73
msgid "Rectangle"
msgstr "Rectangle"
@@ -8231,46 +8087,46 @@ msgstr "Freqüència de mostreig per defecte:"
msgid "Default Sample Format:"
msgstr "Format per defecte de les mostres:"
-#: prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "Convertidor de freqüència en temps real:"
-
-#: prefs/QualityPrefs.cpp:139
-msgid "High-quality sample rate converter:"
-msgstr "Convertidor de freqüència de mostreig d'alta qualitat:"
-
-#: prefs/QualityPrefs.cpp:142
-msgid "Real-time dither:"
-msgstr "Arrodoniment en temps real:"
-
-#: prefs/QualityPrefs.cpp:145
-msgid "High-quality dither:"
-msgstr "Arrodoniment d'alta qualitat:"
-
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
-msgstr "Conversió"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+#, fuzzy
+msgid "Sample Rate Converter:"
msgstr "Convertidor de la freqüència de mostreig"
#: prefs/QualityPrefs.cpp:164
msgid "Dither"
msgstr "Arrodoniment"
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
-msgstr "Temps real:"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
-msgstr "Alta qualitat:"
+#: prefs/AudioIOPrefs.cpp:150
+msgid "Overdub: &Play other tracks while recording new one"
+msgstr ""
-#: prefs/SmartRecordPrefs.cpp:54
-#: prefs/SmartRecordPrefs.cpp:55
-msgid "Smart Recording"
-msgstr "Enregistrament intel·ligent"
+#: prefs/AudioIOPrefs.cpp:150
+msgid "&Hardware Playthrough: Play new track while recording it"
+msgstr "Reproducció a través del &Maquinari: Interpreta una pista nova mentre s'està enregistrant."
+
+#: prefs/AudioIOPrefs.cpp:158
+msgid "&Software Playthrough: Play new track while recording or monitoring"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:161
+msgid "(uncheck when recording \"stereo mix\")"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
+msgstr ""
#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
msgid "Sound Activated Recording"
@@ -8280,23 +8136,58 @@ msgstr ""
msgid "Sound Activation Level (dB):"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:41
-#: prefs/SpectrumPrefs.cpp:42
+#: prefs/SpectrumPrefs.cpp:41 prefs/SpectrumPrefs.cpp:42
msgid "Spectrograms"
msgstr "Espectrogrames"
-#: prefs/SpectrumPrefs.cpp:91
-msgid "FFT Size"
-msgstr "Mida FFT"
-
#: prefs/SpectrumPrefs.cpp:94
msgid "8 - most wideband"
msgstr "8 - banda més ampla"
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:99
msgid "256 - default"
msgstr "256 - per defecte"
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:107
msgid "32768 - most narrowband"
msgstr "32768 - banda més estreta"
@@ -8305,21 +8196,26 @@ msgstr "32768 - banda més estreta"
msgid "4096 - most narrowband"
msgstr "4096 - banda més estreta"
-#: prefs/SpectrumPrefs.cpp:116
-msgid "Window type:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:93
+#, fuzzy
+msgid "Window type"
msgstr "Tipus de finestra:"
#: prefs/SpectrumPrefs.cpp:125
msgid "FFT Skip Points"
msgstr "Punts d'omissió FFT"
-#: prefs/SpectrumPrefs.cpp:140
-msgid "Display"
-msgstr "Pantalla"
-
-#: prefs/SpectrumPrefs.cpp:144
-msgid "&Grayscale"
-msgstr "Escala de &grisos"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
+msgstr ""
#: prefs/SpectrumPrefs.cpp:147
msgid "Minimum Frequency (Hz):"
@@ -8329,17 +8225,17 @@ msgstr "Freqüència mÃnima (Hz):"
msgid "Maximum Frequency (Hz):"
msgstr "Freqüència mà xima (Hz):"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
-msgstr "Graella-&Y"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
+msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
-msgstr "&Localitza notes"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
+msgstr ""
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
-msgstr "&Arrodoneix notes"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
+msgstr ""
#: prefs/SpectrumPrefs.cpp:165
msgid "Minimum Amplitude (dB):"
@@ -8349,6 +8245,14 @@ msgstr "Amplitud mÃnima (dB):"
msgid "Max. Number of Notes (1..128):"
msgstr "Nombre mà x. de notes (1..128):"
+#: prefs/SpectrumPrefs.cpp:161
+msgid "&Find Notes"
+msgstr "&Localitza notes"
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Quantize Notes"
+msgstr "&Arrodoneix notes"
+
#: prefs/SpectrumPrefs.cpp:197
msgid "The maximum frequency must be an integer"
msgstr "La freqüència mà xima ha de ser un nombre enter"
@@ -8365,20 +8269,70 @@ msgstr "La freqüència mÃnima ha de ser un nombre enter"
msgid "Minimum frequency must be at least 0 Hz"
msgstr "La freqüència mÃnima ha de ser d'almenys 0 Hz"
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr "L'amplitud mÃnima (dB) ha de ser un nombre enter"
#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
-msgstr "El nombre mà xim de notes ha de ser un nombre enter entre 1 i 128"
+msgid "The maximum number of notes must be in the range 1..128"
+msgstr ""
-#: prefs/ThemePrefs.cpp:62
-#: prefs/ThemePrefs.cpp:63
+#: prefs/ThemePrefs.cpp:62 prefs/ThemePrefs.cpp:63
msgid "Theme"
msgstr "Tema"
+#: prefs/ThemePrefs.cpp:126
+msgid "Info"
+msgstr "Informació"
+
+#: prefs/ThemePrefs.cpp:91
+#, fuzzy
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr "L'ús dels temes és una funcionalitat experimental.\n"
+"\n"
+"Per a provar-la feu clic a \"Desa la mostra del tema\" i després\n"
+"busqueu i modifiqueu les imatges i els colors a\n"
+"ImageCacheVxx.png mitjançant un editor d'imatges com \n"
+"ara el Gimp.\n"
+"\n"
+"Feu clic a \"Carrega la mostra del tema\" per a veure els canvis fets en les imatges \n"
+"i als colors.\n"
+"\n"
+"[Només la barra d'eines de control i els colors de les \n"
+"pistes de so es veuran afectats pels canvis, encara que al fitxer \n"
+"que conté la imatge s'hi vegin altres icones.]"
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#. i18n-hint: && in here is an escape character to get a single & on screen,
#. * so keep it as is
#: prefs/ThemePrefs.cpp:93
@@ -8409,100 +8363,97 @@ msgstr "Desa els fitxers"
msgid "Load Files"
msgstr "Carrega els fitxers"
-#: prefs/ThemePrefs.cpp:126
-msgid "Info"
-msgstr "Informació"
+#: prefs/GUIPrefs.cpp:50
+msgid "Simple"
+msgstr "Simple"
-#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
-msgstr "L'ús dels temes és una funcionalitat experimental.\n"
-"\n"
-"Per a provar-la feu clic a \"Desa la mostra del tema\" i després\n"
-"busqueu i modifiqueu les imatges i els colors a\n"
-"ImageCacheVxx.png mitjançant un editor d'imatges com \n"
-"ara el Gimp.\n"
-"\n"
-"Feu clic a \"Carrega la mostra del tema\" per a veure els canvis fets en les imatges \n"
-"i als colors.\n"
-"\n"
-"[Només la barra d'eines de control i els colors de les \n"
-"pistes de so es veuran afectats pels canvis, encara que al fitxer \n"
-"que conté la imatge s'hi vegin altres icones.]\n"
-
-#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
-msgstr "Heu compilat l'Audacity amb un botó extra, \n"
-"'Sortida de codi font', que serveix per a desar un fitxer en llenguatge C de \n"
-"la imatge de mostra, que podreu fer servir per a una nova compilació.\n"
-
-#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
-msgstr "Si l'opció 'Carrega la mostra del tema a l'inici' es troba habilitada,\n"
-"la mostra del tema es carregarà quan el programa \n"
-"engegui.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:94
+msgid "&Update display while playing"
+msgstr "&Refresca la representació grà fica mentre es reprodueix el so"
-#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
-msgstr "Desar i carregar els fitxers individuals del tema us obliga a fer servir \n"
-"un fitxer individual per a cada imatge, però és \n"
-"la mateixa idea.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:102
+msgid "Automatically &fit tracks vertically zoomed"
+msgstr "Zoom vertical automà tic que permeti &encabir-hi totes les pistes"
-#: toolbars/ControlToolBar.cpp:174
-msgid "Pause"
-msgstr "Pausa"
+#: prefs/TracksPrefs.cpp:88
+#, fuzzy
+msgid "Default View Mode:"
+msgstr "Mode de visualització per defecte"
-#: toolbars/ControlToolBar.cpp:177
-msgid "Play"
-msgstr "Interpreta"
+#: prefs/GUIPrefs.cpp:108
+msgid "&Select all audio in project, if none selected"
+msgstr "&Selecciona tot el so del projecte si no hi ha res seleccionat"
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
+#: prefs/GUIPrefs.cpp:116
+msgid "Enable cut &lines"
+msgstr "Habilita les &lÃnies de tall"
+
+#: prefs/GUIPrefs.cpp:98
+msgid "Enable &dragging of left and right selection edges"
+msgstr "Habilita l'&arrossegament de les vores dreta i esquerra de la selecció"
+
+#: prefs/GUIPrefs.cpp:104
+#, fuzzy
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+msgstr "\"Canvia la pista activa\" va passant &cÃclicament per totes les pistes del projecte"
+
+#: prefs/GUIPrefs.cpp:106
+msgid "Editing a &clip can move other clips"
+msgstr "L'edició d'un &clip pot moure altres clips"
+
+#: prefs/GUIPrefs.cpp:170
+msgid "Solo Button:"
+msgstr "Botó Solo:"
+
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
msgstr ""
-#: toolbars/ControlToolBar.cpp:182
-msgid "Stop"
-msgstr "Atura't"
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:185
-msgid "Skip to Start"
-msgstr "Vés a l'inici"
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:188
-msgid "Skip to End"
-msgstr "Vés al final"
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:192
-msgid "Record (Shift for Append Record)"
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
msgstr ""
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr ""
+
+#: Menus.cpp:786
+msgid "Pause"
+msgstr "Pausa"
+
+#: Menus.cpp:785
+msgid "Stop"
+msgstr "Atura't"
+
#: toolbars/ControlToolBar.cpp:194
msgid "Clean Speech"
msgstr "CleanSpeech"
-#: toolbars/ControlToolBar.cpp:530
-#: toolbars/ControlToolBar.cpp:844
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play (Shift for Loop Play)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:192
+msgid "Record (Shift for Append Record)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:530 toolbars/ControlToolBar.cpp:844
msgid "Error while opening sound device. "
msgstr "S'ha produït un error en obrir el dispositiu."
@@ -8514,13 +8465,11 @@ msgstr "L'enregistrament en la modalitat CleanSpeech no és possible quan una pi
msgid "Recording not permitted"
msgstr "L'enregistrament no és permès"
-#: toolbars/DeviceToolBar.cpp:113
-#: toolbars/DeviceToolBar.cpp:115
+#: toolbars/DeviceToolBar.cpp:113 toolbars/DeviceToolBar.cpp:115
msgid "Output Device"
msgstr "Dispositiu de sortida"
-#: toolbars/DeviceToolBar.cpp:134
-#: toolbars/DeviceToolBar.cpp:136
+#: toolbars/DeviceToolBar.cpp:134 toolbars/DeviceToolBar.cpp:136
msgid "Input Device"
msgstr "Dispositiu d'entrada"
@@ -8544,29 +8493,21 @@ msgstr "Apropa"
msgid "Zoom Out"
msgstr "Allunya"
-#: toolbars/EditToolBar.cpp:156
-msgid "Zoom Toggle"
-msgstr "Commuta el zoom"
-
-#: toolbars/EditToolBar.cpp:160
-msgid "Fit Selection"
-msgstr "Encabeix la selecció"
-
#: toolbars/EditToolBar.cpp:160
msgid "Fit selection in window"
msgstr "Encabeix la selecció a la finestra"
#: toolbars/EditToolBar.cpp:162
-msgid "Fit Project"
-msgstr "Encabeix el projecte"
-
-#: toolbars/EditToolBar.cpp:162
msgid "Fit project in window"
msgstr "Encabeix el projecte a la finestra"
-#: toolbars/MeterToolBar.cpp:50
-msgid "Meter"
-msgstr "Picòmetre"
+#: toolbars/EditToolBar.cpp:160
+msgid "Fit Selection"
+msgstr "Encabeix la selecció"
+
+#: toolbars/EditToolBar.cpp:162
+msgid "Fit Project"
+msgstr "Encabeix el projecte"
#: toolbars/MeterToolBar.cpp:80
msgid "Play Meter"
@@ -8614,22 +8555,27 @@ msgstr "Lliscador d'entrada"
msgid "Input Source"
msgstr "Font d'entrada"
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:80
msgid "Selection"
msgstr "Selecció"
-#: toolbars/SelectionBar.cpp:128
-#: toolbars/SelectionBar.cpp:185
+#: toolbars/SelectionBar.cpp:128 toolbars/SelectionBar.cpp:185
msgid "Project Rate (Hz):"
msgstr "Freqüència del projecte (Hz):"
-#: toolbars/SelectionBar.cpp:142
-#: toolbars/SelectionBar.cpp:247
+#: toolbars/SelectionBar.cpp:142 toolbars/SelectionBar.cpp:247
msgid "Selection Start:"
msgstr "Inici de la selecció:"
-#: toolbars/SelectionBar.cpp:155
-#: toolbars/SelectionBar.cpp:253
+#: toolbars/SelectionBar.cpp:155 toolbars/SelectionBar.cpp:253
msgid "Length"
msgstr "Longitud"
@@ -8637,13 +8583,11 @@ msgstr "Longitud"
msgid "hidden"
msgstr "amagat"
-#: toolbars/SelectionBar.cpp:175
-#: toolbars/SelectionBar.cpp:264
+#: toolbars/SelectionBar.cpp:175 toolbars/SelectionBar.cpp:264
msgid "Audio Position:"
msgstr "Posició de so:"
-#: toolbars/SelectionBar.cpp:225
-#: toolbars/SelectionBar.cpp:230
+#: toolbars/SelectionBar.cpp:225 toolbars/SelectionBar.cpp:230
msgid "Snap To"
msgstr "Arrodoneix"
@@ -8664,8 +8608,7 @@ msgstr "Fi de la selecció"
msgid "Audacity %s ToolBar"
msgstr "Barra d'eines de %s de l'Audacity"
-#: toolbars/ToolDock.cpp:74
-#: toolbars/ToolDock.cpp:75
+#: toolbars/ToolDock.cpp:74 toolbars/ToolDock.cpp:75
msgid "ToolDock"
msgstr "Plafó d'eines"
@@ -8697,34 +8640,6 @@ msgstr "Esquerra=Apropa, Dreta=Allunya, Mig=Normal"
msgid "Click and drag to move a track in time"
msgstr "Feu clic i arrossegueu per a moure una pista en el temps"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr "Eines"
-
-#: toolbars/ToolsToolBar.cpp:147
-#: toolbars/ToolsToolBar.cpp:182
-msgid "Selection Tool"
-msgstr "Eina de selecció"
-
-#: toolbars/ToolsToolBar.cpp:148
-msgid "Envelope Tool"
-msgstr "Eina d'envolupant"
-
-#: toolbars/ToolsToolBar.cpp:149
-#: toolbars/ToolsToolBar.cpp:183
-msgid "Time Shift Tool"
-msgstr "Eina de desplaçament en el temps"
-
-#: toolbars/ToolsToolBar.cpp:150
-#: toolbars/ToolsToolBar.cpp:185
-msgid "Zoom Tool"
-msgstr "Eina de zoom"
-
-#: toolbars/ToolsToolBar.cpp:151
-#: toolbars/ToolsToolBar.cpp:184
-msgid "Draw Tool"
-msgstr "Eina de dibuix"
-
#: toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
msgstr "Mode multi-eina"
@@ -8733,24 +8648,11 @@ msgstr "Mode multi-eina"
msgid "Slide Tool"
msgstr "Eina de desplaçament"
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr "Eina múltiple"
-
-#: toolbars/TranscriptionToolBar.cpp:84
-msgid "Transcription"
-msgstr "Transcripció"
-
#: toolbars/TranscriptionToolBar.cpp:171
msgid "Play at selected speed"
msgstr "Reprodueix a la velocitat seleccionada"
-#: toolbars/TranscriptionToolBar.cpp:172
-msgid "Play-at-speed"
-msgstr "Reprodueix-a-velocitat"
-
-#: toolbars/TranscriptionToolBar.cpp:178
-#: toolbars/TranscriptionToolBar.cpp:183
+#: toolbars/TranscriptionToolBar.cpp:178 toolbars/TranscriptionToolBar.cpp:183
msgid "Playback Speed"
msgstr "Velocitat de reproducció"
@@ -8758,74 +8660,38 @@ msgstr "Velocitat de reproducció"
msgid "Adjust left selection to next onset"
msgstr "Ajusta la selecció esquerra al següent punt d'inici"
-#: toolbars/TranscriptionToolBar.cpp:197
-msgid "Left-to-On"
-msgstr "Esquerra-a-PuntInici"
-
#: toolbars/TranscriptionToolBar.cpp:199
msgid "Adjust right selection to previous offset"
msgstr "Ajusta la selecció dreta a l'anterior punt final"
-#: toolbars/TranscriptionToolBar.cpp:200
-msgid "Right-to-Off"
-msgstr "Dreta-a-PuntFinal"
-
#: toolbars/TranscriptionToolBar.cpp:202
msgid "Adjust left selection to next offset"
msgstr "Ajusta la selecció esquerra al següent punt final"
-#: toolbars/TranscriptionToolBar.cpp:203
-msgid "Left-to-Off"
-msgstr "Esquerra-a-PuntFinal"
-
#: toolbars/TranscriptionToolBar.cpp:205
msgid "Adjust right selection to previous onset"
msgstr "Ajusta la selecció dreta a l'anterior punt inicial"
-#: toolbars/TranscriptionToolBar.cpp:206
-msgid "Right-to-On"
-msgstr "Dreta-a-PuntInicial"
-
#: toolbars/TranscriptionToolBar.cpp:208
msgid "Select region of sound around cursor"
msgstr "Selecciona la regió de so al voltant del cursor"
-#: toolbars/TranscriptionToolBar.cpp:209
-msgid "Select-Sound"
-msgstr "Selecciona-So"
-
#: toolbars/TranscriptionToolBar.cpp:211
msgid "Select region of silence around cursor"
msgstr "Selecciona una regió de silenci al voltant del cursor"
-#: toolbars/TranscriptionToolBar.cpp:212
-msgid "Select-Silence"
-msgstr "Selecciona-Silenci"
-
#: toolbars/TranscriptionToolBar.cpp:214
msgid "Automatically make labels from words"
msgstr "Crea etiquetes de manera automà tica des de les paraules"
-#: toolbars/TranscriptionToolBar.cpp:215
-msgid "Make Labels"
-msgstr "Crea etiquetes"
-
#: toolbars/TranscriptionToolBar.cpp:217
msgid "Add label at selection"
msgstr "Afegeix una etiqueta a la selecció"
-#: toolbars/TranscriptionToolBar.cpp:218
-msgid "Add Label"
-msgstr "Afegeix una etiqueta"
-
#: toolbars/TranscriptionToolBar.cpp:220
msgid "Calibrate voicekey"
msgstr "Calibra la clau de veu"
-#: toolbars/TranscriptionToolBar.cpp:221
-msgid "Calibrate"
-msgstr "Calibra"
-
#: toolbars/TranscriptionToolBar.cpp:225
msgid "Adjust Sensitivity"
msgstr "Ajusta la sensibilitat"
@@ -8858,6 +8724,46 @@ msgstr "Canvis de direcció (llindar alt)"
msgid "Key type"
msgstr "Tipus de clau"
+#: toolbars/TranscriptionToolBar.cpp:172
+msgid "Play-at-speed"
+msgstr "Reprodueix-a-velocitat"
+
+#: toolbars/TranscriptionToolBar.cpp:197
+msgid "Left-to-On"
+msgstr "Esquerra-a-PuntInici"
+
+#: toolbars/TranscriptionToolBar.cpp:200
+msgid "Right-to-Off"
+msgstr "Dreta-a-PuntFinal"
+
+#: toolbars/TranscriptionToolBar.cpp:203
+msgid "Left-to-Off"
+msgstr "Esquerra-a-PuntFinal"
+
+#: toolbars/TranscriptionToolBar.cpp:206
+msgid "Right-to-On"
+msgstr "Dreta-a-PuntInicial"
+
+#: toolbars/TranscriptionToolBar.cpp:209
+msgid "Select-Sound"
+msgstr "Selecciona-So"
+
+#: toolbars/TranscriptionToolBar.cpp:212
+msgid "Select-Silence"
+msgstr "Selecciona-Silenci"
+
+#: toolbars/TranscriptionToolBar.cpp:215
+msgid "Make Labels"
+msgstr "Crea etiquetes"
+
+#: toolbars/TranscriptionToolBar.cpp:218
+msgid "Add Label"
+msgstr "Afegeix una etiqueta"
+
+#: toolbars/TranscriptionToolBar.cpp:221
+msgid "Calibrate"
+msgstr "Calibra"
+
#: widgets/AButton.cpp:302
msgid " (disabled)"
msgstr " (inhabilitat)"
@@ -8872,15 +8778,13 @@ msgstr "Botó"
#. i18n-hint: One-letter abbreviation for Left, in VU Meter
#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
-#: widgets/ASlider.cpp:604
-#: widgets/Meter.cpp:212
+#: widgets/ASlider.cpp:604 widgets/Meter.cpp:212
msgid "L"
msgstr "E"
#. i18n-hint: One-letter abbreviation for Right, in VU Meter
#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
-#: widgets/ASlider.cpp:607
-#: widgets/Meter.cpp:214
+#: widgets/ASlider.cpp:607 widgets/Meter.cpp:214
msgid "R"
msgstr "D"
@@ -8896,8 +8800,7 @@ msgstr "Esq."
msgid "Right"
msgstr "Dreta"
-#: widgets/ErrorDialog.cpp:78
-#: widgets/ErrorDialog.cpp:102
+#: widgets/ErrorDialog.cpp:78 widgets/ErrorDialog.cpp:102
msgid "Help"
msgstr "Ajuda"
@@ -8930,8 +8833,7 @@ msgstr "Agafador"
msgid "%d rows, %d columns"
msgstr "%d files, %d columnes"
-#: widgets/Grid.cpp:649
-#: widgets/Grid.cpp:776
+#: widgets/Grid.cpp:649 widgets/Grid.cpp:776
#, c-format
msgid "Row %d"
msgstr "Fila %d"
@@ -9010,8 +8912,7 @@ msgstr ""
msgid "Cancel"
msgstr ""
-#: widgets/Ruler.cpp:1478
-#: widgets/Ruler.cpp:1479
+#: widgets/Ruler.cpp:1478 widgets/Ruler.cpp:1479
msgid "Vertical Ruler"
msgstr "Regle vertical"
@@ -9255,3 +9156,15 @@ msgstr ""
msgid "Could not load file: \"%s\""
msgstr "No s'ha pogut carregar el fitxer: \"%s\""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
+
diff --git a/locale/ca at valencia.po b/locale/ca at valencia.po
index b0798f9..cbf6608 100644
--- a/locale/ca at valencia.po
+++ b/locale/ca at valencia.po
@@ -15,9 +15,7 @@ msgstr "Project-Id-Version: ca\n"
"X-Poedit-Language: Catalan\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
-#: AboutDialog.cpp:142
-#: AudacityApp.cpp:749
-#: Menus.cpp:745
+#: AboutDialog.cpp:142 AudacityApp.cpp:749 Menus.cpp:745
msgid "&About Audacity..."
msgstr "Quant a l'&Audacity..."
@@ -30,11 +28,11 @@ msgid "Audacity is a free program written by a team of volunteer <a href=\"http:
msgstr ""
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#. i18n-hint: The translation of "translator_credits" will appear
@@ -43,8 +41,7 @@ msgstr ""
#.
#. For example: "English translation by Dominic Mazzoni."
#.
-#: AboutDialog.cpp:192
-#: AboutDialog.cpp:194
+#: AboutDialog.cpp:192 AboutDialog.cpp:194
msgid "translator_credits"
msgstr "Traducció al català : Pau Bosch i Francesc Busquets"
@@ -87,7 +84,7 @@ msgid "Special thanks:"
msgstr "Agraïments especials:"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
msgstr ""
#: AboutDialog.cpp:254
@@ -95,14 +92,11 @@ msgid "Audacity"
msgstr "Audacity"
#. i18n-hint: Information about when audacity was compiled
-#: AboutDialog.cpp:299
-#: AboutDialog.cpp:312
-#: AboutDialog.cpp:468
+#: AboutDialog.cpp:299 AboutDialog.cpp:312 AboutDialog.cpp:468
msgid "Build Information"
msgstr "Informació de compilació"
-#: AboutDialog.cpp:305
-#: effects/AvcCompressor.cpp:674
+#: AboutDialog.cpp:305 effects/AvcCompressor.cpp:674
msgid "Enabled"
msgstr "Habilitat"
@@ -115,33 +109,27 @@ msgid "File Format Support"
msgstr "Informació sobre els tipus de fitxers"
#. i18n-hint: This is what the library (libmad) does - imports MP3 files
-#: AboutDialog.cpp:326
-#: AboutDialog.cpp:328
+#: AboutDialog.cpp:326 AboutDialog.cpp:328
msgid "MP3 Importing"
msgstr "Importació d'MP3"
-#: AboutDialog.cpp:335
-#: AboutDialog.cpp:338
+#: AboutDialog.cpp:335 AboutDialog.cpp:338
msgid "Ogg Vorbis Import and Export"
msgstr "Importació i exportació a Ogg Vorbis"
-#: AboutDialog.cpp:342
-#: AboutDialog.cpp:345
+#: AboutDialog.cpp:342 AboutDialog.cpp:345
msgid "ID3 tag support"
msgstr "Informació sobre les etiquetes ID3"
-#: AboutDialog.cpp:352
-#: AboutDialog.cpp:355
+#: AboutDialog.cpp:352 AboutDialog.cpp:355
msgid "FLAC import and export"
msgstr "Importació i exportació a FLAC"
-#: AboutDialog.cpp:360
-#: AboutDialog.cpp:363
+#: AboutDialog.cpp:360 AboutDialog.cpp:363
msgid "MP2 export"
msgstr "Exportació a MP2"
-#: AboutDialog.cpp:368
-#: AboutDialog.cpp:371
+#: AboutDialog.cpp:368 AboutDialog.cpp:371
msgid "Import via QuickTime"
msgstr "Importa mitjançant el QuickTime"
@@ -150,15 +138,12 @@ msgstr "Importa mitjançant el QuickTime"
msgid "Core Libraries"
msgstr "Biblioteques del nucli"
-#: AboutDialog.cpp:384
-#: AboutDialog.cpp:387
-#: AboutDialog.cpp:390
+#: AboutDialog.cpp:384 AboutDialog.cpp:387 AboutDialog.cpp:390
#: AboutDialog.cpp:392
msgid "Sample rate conversion"
msgstr "Conversió de la freqüència de mostreig"
-#: AboutDialog.cpp:397
-#: AboutDialog.cpp:400
+#: AboutDialog.cpp:397 AboutDialog.cpp:400
msgid "Audio playback and recording"
msgstr "Reproducció i enregistrament de so"
@@ -166,24 +151,17 @@ msgstr "Reproducció i enregistrament de so"
msgid "Features"
msgstr "Funcionalitats"
-#: AboutDialog.cpp:417
-#: AboutDialog.cpp:420
-#: AboutDialog.cpp:425
-#: AboutDialog.cpp:428
-#: AboutDialog.cpp:433
-#: AboutDialog.cpp:436
-#: AboutDialog.cpp:441
-#: AboutDialog.cpp:444
+#: AboutDialog.cpp:417 AboutDialog.cpp:420 AboutDialog.cpp:425
+#: AboutDialog.cpp:428 AboutDialog.cpp:433 AboutDialog.cpp:436
+#: AboutDialog.cpp:441 AboutDialog.cpp:444
msgid "Plug-in support"
msgstr "Informació sobre els connectors"
-#: AboutDialog.cpp:449
-#: AboutDialog.cpp:452
+#: AboutDialog.cpp:449 AboutDialog.cpp:452
msgid "Sound card mixer support"
msgstr "Informació sobre el mesclador de la targeta de so"
-#: AboutDialog.cpp:457
-#: AboutDialog.cpp:460
+#: AboutDialog.cpp:457 AboutDialog.cpp:460
msgid "Pitch and Tempo Change support"
msgstr "Informació sobre els canvis de to i de temps"
@@ -191,8 +169,7 @@ msgstr "Informació sobre els canvis de to i de temps"
msgid "Program build date: "
msgstr "Data de compilació del programa:"
-#: AboutDialog.cpp:475
-#: AboutDialog.cpp:477
+#: AboutDialog.cpp:475 AboutDialog.cpp:477
msgid "Build type:"
msgstr "Tipus de compilació:"
@@ -217,16 +194,12 @@ msgstr "Carpeta on es guarda la configuració:"
msgid "GPL License"
msgstr "Llicència GPL"
-#: AudacityApp.cpp:468
-#: Project.cpp:1761
+#: AudacityApp.cpp:468 Project.cpp:1761
#, c-format
msgid "%s is already open in another window."
msgstr "%s es troba obert en una altra finestra."
-#: AudacityApp.cpp:470
-#: Project.cpp:1763
-#: Project.cpp:1868
-#: Project.cpp:2012
+#: AudacityApp.cpp:470 Project.cpp:1763 Project.cpp:1868 Project.cpp:2012
#: Project.cpp:2114
msgid "Error opening project"
msgstr "S'ha produït un error en obrir el projecte"
@@ -252,21 +225,28 @@ msgstr "Picòmetre d'entrada"
msgid "Output Meter"
msgstr "Picòmetre d'eixida"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
-#: AudacityApp.cpp:751
-#: Menus.cpp:478
-msgid "&Preferences...\tCtrl+,"
-msgstr "&Preferències...\tCtrl+,"
+#: Menus.cpp:164
+msgid "&New"
+msgstr "&Nou"
+
+#: Menus.cpp:166
+msgid "&Open..."
+msgstr "&Obri..."
-#: AudacityApp.cpp:833
-#: AudacityApp.cpp:910
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
+
+#: AudacityApp.cpp:751 Menus.cpp:478
+msgid "&Preferences..."
+msgstr "&Preferències..."
+
+#: AudacityApp.cpp:833 AudacityApp.cpp:910
#, c-format
msgid "Using block size of %ld\n"
msgstr "Emprant blocs de %ld\n"
-#: AudacityApp.cpp:855
-#: AudacityApp.cpp:925
+#: AudacityApp.cpp:855 AudacityApp.cpp:925
#, c-format
msgid "Unknown command line option: %s\n"
msgstr "Orde desconeguda: %s\n"
@@ -384,18 +364,16 @@ msgstr "Error:"
msgid "Error Initializing Audio"
msgstr "S'ha produït un error en inicialitzar el so"
+#: AudioIO.cpp:1225
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
+"Audacity has brought it back to start at zero.\n"
+"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
+msgstr ""
+
#: AudioIO.cpp:1208
msgid "Latency problem"
msgstr "Hi ha un problema de latència"
-#: AudioIO.cpp:1208
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
-"Audacity has brought it back to start at zero.\n"
-"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
-msgstr "El valor de la latència ha fet que el so que s'ha enregistrat hagi quedat amagat abans del zero.\n"
-"L'Audacity ha mogut el fragment per tal que comenci al zero.\n"
-"Podeu fer servir l'eina de desplaçament en el temps (<---> o F5) per a arrossegar la pista al lloc que li correspongui."
-
#: AutoRecovery.cpp:54
msgid "Automatic Crash Recovery"
msgstr "Recuperació automà tica de fallades"
@@ -411,8 +389,7 @@ msgstr "Alguns projectes no es van alçar correctament la darrera vegada que es\
msgid "Recoverable projects"
msgstr "Projectes recuperables"
-#: AutoRecovery.cpp:78
-#: Tags.cpp:2032
+#: AutoRecovery.cpp:78 Tags.cpp:2032
msgid "Name"
msgstr "Nom"
@@ -442,38 +419,25 @@ msgstr "Segur que no voleu recuperar cap projecte?\n"
msgid "Confirm?"
msgstr "Ho confirmeu?"
-#: AutoRecovery.cpp:146
-#: AutoRecovery.cpp:183
+#: AutoRecovery.cpp:146 AutoRecovery.cpp:183
msgid "Could not enumerate files in auto save directory"
msgstr "No s'ha pogut realitzar l'enumeració dels fitxers de la carpeta d'alçat automà tic"
-#: AutoRecovery.cpp:147
-#: AutoRecovery.cpp:184
-#: Menus.cpp:2575
-#: Menus.cpp:4514
-#: Project.cpp:1971
-#: Project.cpp:3343
-#: Project.cpp:3422
-#: WaveTrack.cpp:556
-#: WaveTrack.cpp:575
-#: WaveTrack.cpp:1689
-#: effects/Effect.cpp:436
-#: export/ExportMP2.cpp:230
-#: prefs/DirectoriesPrefs.cpp:189
-#: prefs/KeyConfigPrefs.cpp:245
-#: toolbars/ControlToolBar.cpp:532
+#: AutoRecovery.cpp:147 AutoRecovery.cpp:184 Menus.cpp:2575 Menus.cpp:4514
+#: Project.cpp:1971 Project.cpp:3343 Project.cpp:3422 WaveTrack.cpp:556
+#: WaveTrack.cpp:575 WaveTrack.cpp:1689 effects/Effect.cpp:436
+#: export/ExportMP2.cpp:230 prefs/DirectoriesPrefs.cpp:189
+#: prefs/KeyConfigPrefs.cpp:245 toolbars/ControlToolBar.cpp:532
#: toolbars/ControlToolBar.cpp:846
msgid "Error"
msgstr "Error"
-#: BatchCommandDialog.cpp:56
-#: BatchCommandDialog.cpp:60
+#: BatchCommandDialog.cpp:56 BatchCommandDialog.cpp:60
#: BatchCommandDialog.cpp:61
msgid "Select Command"
msgstr "Seleccioneu l'orde"
-#: BatchCommandDialog.cpp:80
-#: BatchProcessDialog.cpp:454
+#: BatchCommandDialog.cpp:80 BatchProcessDialog.cpp:454
#: prefs/KeyConfigPrefs.cpp:142
msgid "&Command"
msgstr "&Orde"
@@ -482,8 +446,7 @@ msgstr "&Orde"
msgid "&Edit Parameters"
msgstr "Parà metres d'&edició"
-#: BatchCommandDialog.cpp:89
-#: BatchProcessDialog.cpp:455
+#: BatchCommandDialog.cpp:89 BatchProcessDialog.cpp:455
msgid "&Parameters"
msgstr "&Parà metres"
@@ -529,8 +492,7 @@ msgstr "Aplica %s amb els parà metres\n"
"\n"
"%s"
-#: BatchCommands.cpp:675
-#: BatchCommands.cpp:680
+#: BatchCommands.cpp:675 BatchCommands.cpp:680
msgid "Test Mode"
msgstr "Mode de proves"
@@ -539,8 +501,7 @@ msgstr "Mode de proves"
msgid "Apply %s"
msgstr "Aplica %s"
-#: BatchProcessDialog.cpp:60
-#: BatchProcessDialog.cpp:70
+#: BatchProcessDialog.cpp:60 BatchProcessDialog.cpp:70
#: BatchProcessDialog.cpp:71
msgid "Apply Chain"
msgstr "Aplica la cadena d'ordes"
@@ -565,24 +526,15 @@ msgstr "Aplica-la al &projecte actual"
msgid "Apply to &Files..."
msgstr "Aplica-la als &fitxers..."
-#: BatchProcessDialog.cpp:108
-#: BatchProcessDialog.cpp:247
-#: Tags.cpp:2071
-#: Tags.cpp:2075
-#: Tags.cpp:2375
-#: Tags.cpp:2379
-#: UploadDialog.cpp:180
-#: effects/AvcCompressor.cpp:732
-#: effects/ChangeLength.cpp:183
-#: effects/SpikeCleaner.cpp:188
-#: effects/VST/VSTEffect.cpp:446
-#: effects/audiounits/AudioUnitEffect.cpp:882
-#: effects/vamp/VampEffect.cpp:411
+#: BatchProcessDialog.cpp:108 BatchProcessDialog.cpp:247 Tags.cpp:2071
+#: Tags.cpp:2075 Tags.cpp:2375 Tags.cpp:2379 UploadDialog.cpp:180
+#: effects/AvcCompressor.cpp:732 effects/ChangeLength.cpp:183
+#: effects/SpikeCleaner.cpp:188 effects/VST/VSTEffect.cpp:446
+#: effects/audiounits/AudioUnitEffect.cpp:882 effects/vamp/VampEffect.cpp:411
msgid "&Cancel"
msgstr "&Cancel·la"
-#: BatchProcessDialog.cpp:146
-#: BatchProcessDialog.cpp:191
+#: BatchProcessDialog.cpp:146 BatchProcessDialog.cpp:191
msgid "No chain selected"
msgstr "No s'ha seleccionat cap cadena d'ordes"
@@ -619,8 +571,7 @@ msgstr "S'està aplicant..."
msgid "File"
msgstr "Fitxer"
-#: BatchProcessDialog.cpp:356
-#: BatchProcessDialog.cpp:360
+#: BatchProcessDialog.cpp:356 BatchProcessDialog.cpp:360
#: BatchProcessDialog.cpp:361
msgid "Edit Chains"
msgstr "Edita les cadenes d'ordes"
@@ -629,19 +580,12 @@ msgstr "Edita les cadenes d'ordes"
msgid "&Chains"
msgstr "&Cadenes d'ordes"
-#: BatchProcessDialog.cpp:435
-#: Tags.cpp:815
-#: Tags.cpp:1455
-#: Tags.cpp:2055
+#: BatchProcessDialog.cpp:435 Tags.cpp:815 Tags.cpp:1455 Tags.cpp:2055
msgid "&Add"
msgstr "&Afig"
-#: BatchProcessDialog.cpp:436
-#: LabelDialog.cpp:126
-#: Tags.cpp:816
-#: Tags.cpp:1456
-#: Tags.cpp:2056
-#: TrackPanel.cpp:4201
+#: BatchProcessDialog.cpp:436 LabelDialog.cpp:126 Tags.cpp:816 Tags.cpp:1456
+#: Tags.cpp:2056 TrackPanel.cpp:4201
msgid "&Remove"
msgstr "&Elimina"
@@ -655,8 +599,8 @@ msgstr "Ca&dena d'ordes (feu doble clic o premeu ESPAI per a editar-la)"
#. i18n-hint: This is the number of the command in the list
#: BatchProcessDialog.cpp:453
-msgid "No"
-msgstr "Núm."
+msgid "Num"
+msgstr ""
#: BatchProcessDialog.cpp:459
msgid "&Insert"
@@ -745,8 +689,7 @@ msgstr "Espai de disc"
msgid "Copy Selected Audio Into Project"
msgstr "Copia al projecte el fragment de so seleccionat"
-#: Dependencies.cpp:304
-#: Dependencies.cpp:410
+#: Dependencies.cpp:304 Dependencies.cpp:410
msgid "Cancel Save"
msgstr "Cancel·la l'acció d'alçar"
@@ -758,8 +701,7 @@ msgstr "No copiïs cap so"
msgid "Copy All Audio into Project (Safer)"
msgstr "Copia tot el so dins del projecte (el més segur)"
-#: Dependencies.cpp:317
-#: Dependencies.cpp:322
+#: Dependencies.cpp:317 Dependencies.cpp:322
msgid "Ask me"
msgstr "Pregunta-m'ho"
@@ -793,9 +735,7 @@ msgid "Warning: there is very little free disk space left on this volume.\n"
msgstr "Atenció: hi ha molt poc espai de disc lliure en este volum.\n"
"Seleccioneu un altre directori temporal a les preferències."
-#: DirManager.cpp:221
-#: DirManager.cpp:251
-#: DirManager.cpp:332
+#: DirManager.cpp:221 DirManager.cpp:251 DirManager.cpp:332
msgid "Progress"
msgstr "Progrés"
@@ -851,8 +791,7 @@ msgstr "No s'ha pogut canviar el nom de '%s' a '%s'"
msgid "Changed block %s to new alias name\n"
msgstr ""
-#: DirManager.cpp:1115
-#: DirManager.cpp:1403
+#: DirManager.cpp:1115 DirManager.cpp:1403
msgid "Inspecting project file data..."
msgstr "S'estan inspeccionant les dades del fitxer de projecte..."
@@ -903,14 +842,9 @@ msgstr "Continua sense eliminar-los; ignora els fitxers extra"
msgid "Close project immediately with no changes"
msgstr "Tanca el projecte ara mateix sense fer cap canvi"
-#: DirManager.cpp:1228
-#: DirManager.cpp:1263
-#: DirManager.cpp:1309
-#: DirManager.cpp:1351
-#: export/Export.cpp:490
-#: export/Export.cpp:507
-#: export/Export.cpp:526
-#: widgets/Warning.cpp:55
+#: DirManager.cpp:1228 DirManager.cpp:1263 DirManager.cpp:1309
+#: DirManager.cpp:1351 export/Export.cpp:490 export/Export.cpp:507
+#: export/Export.cpp:526 widgets/Warning.cpp:55
msgid "Warning"
msgstr "Atenció"
@@ -932,14 +866,11 @@ msgstr "La comprovació del projecte ha detectat que %d fitxers d'entrada que s'
msgid "Replace missing data with silence [permanent upon save]"
msgstr "Substituix les dades perdudes per silencis [de manera permanent si s'alça el projecte]"
-#: DirManager.cpp:1260
-#: DirManager.cpp:1348
+#: DirManager.cpp:1260 DirManager.cpp:1348
msgid "Temporarily replace missing data with silence [this session only]"
msgstr "Substituix les dades perdudes per silencis [només durant esta sessió] "
-#: DirManager.cpp:1261
-#: DirManager.cpp:1307
-#: DirManager.cpp:1349
+#: DirManager.cpp:1261 DirManager.cpp:1307 DirManager.cpp:1349
msgid "Close project immediately with no further changes"
msgstr "Tanca el projecte immediatament sense fer-li més canvis"
@@ -1007,11 +938,11 @@ msgstr "Rectangular"
msgid "FFmpeg support not compiled in"
msgstr ""
-#: FFmpeg.cpp:101
+#: FFmpeg.cpp:103
msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
#: FFmpeg.cpp:104
@@ -1069,11 +1000,12 @@ msgstr ""
msgid "FFmpeg not found"
msgstr ""
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
#: FFmpeg.h:109
@@ -1096,8 +1028,7 @@ msgstr ""
msgid "Frequency Analysis"
msgstr "Anà lisi de freqüències"
-#: FreqWindow.cpp:140
-#: TrackPanel.cpp:563
+#: FreqWindow.cpp:140 TrackPanel.cpp:563
msgid "Spectrum"
msgstr "Espectre"
@@ -1125,8 +1056,7 @@ msgstr "Cepstrum"
msgid "Algorithm"
msgstr "Algorisme: "
-#: FreqWindow.cpp:168
-#: HistoryWindow.cpp:79
+#: FreqWindow.cpp:168 HistoryWindow.cpp:79
msgid "Size"
msgstr "Grandà ria"
@@ -1152,10 +1082,7 @@ msgstr "Freqüència de registre"
msgid "Axis"
msgstr ""
-#: FreqWindow.cpp:206
-#: LabelDialog.cpp:128
-#: Menus.cpp:204
-#: Menus.cpp:233
+#: FreqWindow.cpp:206 LabelDialog.cpp:128 Menus.cpp:204 Menus.cpp:233
msgid "&Export..."
msgstr "&Exporta..."
@@ -1163,45 +1090,54 @@ msgstr "&Exporta..."
msgid "Export"
msgstr "Exporta"
-#: FreqWindow.cpp:209
-#: widgets/ErrorDialog.cpp:159
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
+#: FreqWindow.cpp:209 widgets/ErrorDialog.cpp:159
msgid "Close"
msgstr "Tanca"
-#: FreqWindow.cpp:272
-#: FreqWindow.cpp:402
-#: effects/AutoDuck.cpp:489
-#: effects/AutoDuck.cpp:523
-#: effects/AutoDuck.cpp:791
-#: effects/Compressor.cpp:352
-#: effects/Compressor.cpp:360
-#: effects/Equalization.cpp:1109
-#: effects/Equalization.cpp:1111
-#: effects/Equalization.cpp:1119
-#: effects/Equalization.cpp:1185
-#: effects/Equalization.cpp:1394
-#: effects/Equalization.cpp:1405
-#: effects/Normalize.cpp:365
-#: widgets/Meter.cpp:380
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr ""
+
+#: FreqWindow.cpp:272 FreqWindow.cpp:402 effects/AutoDuck.cpp:489
+#: effects/AutoDuck.cpp:523 effects/AutoDuck.cpp:791
+#: effects/Compressor.cpp:352 effects/Compressor.cpp:360
+#: effects/Equalization.cpp:1109 effects/Equalization.cpp:1111
+#: effects/Equalization.cpp:1119 effects/Equalization.cpp:1185
+#: effects/Equalization.cpp:1394 effects/Equalization.cpp:1405
+#: effects/Normalize.cpp:365 widgets/Meter.cpp:380
msgid "dB"
msgstr "dB"
#. i18n-hint: This is the abbreviation for "Hertz", or
#. cycles per second.
-#: FreqWindow.cpp:287
-#: FreqWindow.cpp:442
-#: effects/Equalization.cpp:1150
-#: effects/Equalization.cpp:1181
-#: import/ImportRaw.cpp:416
+#: FreqWindow.cpp:287 FreqWindow.cpp:442 effects/Equalization.cpp:1150
+#: effects/Equalization.cpp:1181 import/ImportRaw.cpp:416
msgid "Hz"
msgstr "Hz"
+#: Menus.cpp:3425
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "Per a dibuixar l'espectre cal que totes les pistes seleccionades tinguen la mateixa freqüència de mostreig."
+
+#: Menus.cpp:3451
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "S'ha seleccionat un fragment de so massa llarg. Només s'analitzaran els primers %.1f segons."
+
#: FreqWindow.cpp:386
msgid "Not enough data selected."
msgstr "No s'han seleccionat prou dades"
-#: FreqWindow.cpp:450
-#: effects/AutoDuck.cpp:793
+#: FreqWindow.cpp:450 effects/AutoDuck.cpp:793
msgid "s"
msgstr "s"
@@ -1223,12 +1159,8 @@ msgstr "espectre.txt"
msgid "Export Spectral Data As:"
msgstr "Anomena i exporta les dades d'espectre:"
-#: FreqWindow.cpp:1079
-#: LabelDialog.cpp:599
-#: Menus.cpp:2207
-#: Project.cpp:2441
-#: Project.cpp:3395
-#: prefs/KeyConfigPrefs.cpp:180
+#: FreqWindow.cpp:1079 LabelDialog.cpp:599 Menus.cpp:2207 Project.cpp:2441
+#: Project.cpp:3395 prefs/KeyConfigPrefs.cpp:180
msgid "Couldn't write to file: "
msgstr "No s'ha pogut escriure al fitxer:"
@@ -1240,6 +1172,21 @@ msgstr "Freqüència (Hz)\tNivell (dB)"
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "Retard (segons)\tFreqüència (Hz)\tNivell"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr ""
+
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr ""
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr "A la [[welcome|pà gina de benvinguda]]."
@@ -1317,7 +1264,8 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr "<p><b>Per gravar:</b> Establiu el dispositiu d'enregistrament i la font d'entrada, ajusteu el nivell d'entrada i feu clic al botó vermell Enregistra.</b></p><p> 1) [[inputdevice|Establiment del dispositiu d'enregistrament]] Podeu escollir el dispositiu des de la pestanya <I>E/S d'Ãudio de les Preferències</I> o a la <i>Barra d'eines de dispositius</i>. Les preferències d'E/S d'à udio us permeten escollir un tipus d'enregistrament estereofònic o monofònic.<br> 2) [[inputsource|Establiment de la font d'entrada]] per a este dispositiu (per exemple, micròfon o entrada de lÃnia) a la llista desplegable de la <i>Barra d'Eines del Mesclador</i>, o (en alguns sistemes) al camp Dispositiu d'Enregistrament de la <i>Pestanya d'E/S d'Ãudio de les Preferències</i> o a la <i>Barra d'Eines de Dispositius</i>.<br> 3) [[inputlevel|Ajustar el nivell d'entrada]] mitjançant el picòmetre que hi ha a la dreta a la <i>Barra d'Eines del Mesclador</i>. Un ajustament correcte del nivell és essencial abans de començar a enregistrar, per tal d'evitar sorolls o distorsions. </p><p> Trobareu més ajuda a l'apartat \"Recording\" de les <a href=\"http://audacity.sourceforge.net/help/faq\">Preguntes Més Freqüents</a>, al tutorial <a href=\"http://www.audacityteam.org/manual/index.php?title=Tutorial_-_Your_First_Recording\"> Your First Recording</a> del <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">Manual</a> i a les seccions [[wiki:Recording_Tips|Recording Tips]] i [[wiki:Troubleshooting_Recordings|Troubleshooting Recordings]] del Wiki. </p><br><br>"
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+#, fuzzy
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
msgstr "<p>El dispositiu d'entrada és el dispositiu fÃsic pel qual esteu enregistrant el so. L'heu d'escollir a la llista \"Dispositiu d'Enregistrament\" de la pestanya <i>E/S d'à udio de les Preferències</i>. Al Windows i al Linux les Preferències són a la part inferior del menú <i>Edita</i>. Als Mac, són al menú <i>Audacity</i>. També podeu seleccionar el dispositiu d'enregistrament a la <i>Barra d'eines de dispositius</i>, que es pot activar des del menú <i>Mostra > Barres d'eines...</i>. </p><p> Per defecte, l'Audacity farà servir el dispositiu actualment seleccionat pel sistema (normalment el dispositiu de so integrat), de manera que no us caldrà canviar-lo. En sistemes Windows, este dispositiu es pot seleccionar al \"Mapejador de so Microsoft\". Si esteu enregistrant des d'un dispositiu extern de tipus USB o Firewire, com ara un tocadiscs USB, l'haureu de seleccionar pel seu nom un cop l'hà giu connectat. </p><p> Torna a [[record|Enregistrant so]] <br></p>"
#: HelpText.cpp:244
@@ -1341,7 +1289,8 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr "Per a escoltar el vostre treball en altres programes multimèdia, exporteu-lo a un format d'à udio com ara WAV o MP3 (alguns formats són [[wma-proprietary|no suportats]]). Quan [[save|alceu el projecte Audacity]] es crearà un fitxer de projecte (amb una carpeta anomenada _data) que contindrà totes les pistes que esteu editant, de manera que més avant podreu tornar a reprendre el vostre treball. Amb tot, els altres programes no podran obrir directament els projectes Audacity. </p><p> Per a exportar-los, feu clic a <i>Fitxer > Exporta</i> i escolliu el format a la llista desplegable \"Alça com a\". Per a [[burncd|enregistrar un CD]] que es puga escoltar en un equip de música, escolliu WAV o AIFF. Per a exportar a MP3, haureu d'instal·lar-vos un [[wiki:Lame_Installation|Codificador Lame]]. </p><p> L'opció <i>Fitxer > Exporta la selecció</i> exporta només l'à rea que es trobi seleccionada. <i>Feu sevir Fitxer > Exporta múltiples fitxers</i> per a exportar diversos fitxers en una única operació, un per a cada pista de so, o un per a cada à rea etiquetada en una pista única. La funció <i>Pistes > Afig una etiqueta a la selecció</i> us permet [[wiki:Splitting_recordings_into_separate_tracks|separar les pistes]] d'un à lbum per a alçar-les en fitxers independents. </p><br><br>"
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+#, fuzzy
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
msgstr "<p>L'Audacity <b>no pot</b> [[play|interpretar]] o [[export|exportar]] fitxers en <b>WMA, RealAudio, Shorten (SHN)</b> o altres formats propietaris degut a restriccions de llicències i patents. En els ordinadors Mac es poden importar fitxers en format <b>AAC</b> i <b>M4A</b>. Alguns formats oberts, com l'<b>Ogg Speex</b> o el <b>Musepack</b> tampoc estan suportats. Els fitxers protegits per qualsevol tipus de Gestió de Drets Digitals (DRM), incloent la majoria dels que es compren a les botigues en lÃnia, com ara iTunes o Napster, <b>no es poden</b> importar.</p><p> Si no podeu importa un fixer a l'Audacity i no està protegit per DRM, feu servir l'iTunes o el <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> per convertir-lo a WAV o AIFF. Si està protegit, enregistreu-lo a CD amb el programa llicenciat per a interpretar-lo i extraieu després la pista del CD a WAV o AIFF mitjançant l'ITunes o (en Windows) el <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> o el Windows Media Player 11. També podeu <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">enregistrar</a> el so mentre el feu sonar al vostre ordinador. <i>Per a exportar a un format no suportat, exporteu primer a WAV o AIFF i convertiu-lo al format desitjat amb l'iTunes o el <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
#: HelpText.cpp:383
@@ -1376,15 +1325,9 @@ msgstr "Nivells a descartar"
msgid "&Discard"
msgstr "&Descarta"
-#: HistoryWindow.cpp:111
-#: Tags.cpp:2072
-#: Tags.cpp:2074
-#: Tags.cpp:2376
-#: Tags.cpp:2378
-#: effects/ChangeLength.cpp:186
-#: effects/SpikeCleaner.cpp:191
-#: effects/vamp/VampEffect.cpp:414
-#: export/ExportCL.cpp:398
+#: HistoryWindow.cpp:111 Tags.cpp:2072 Tags.cpp:2074 Tags.cpp:2376
+#: Tags.cpp:2378 effects/ChangeLength.cpp:186 effects/SpikeCleaner.cpp:191
+#: effects/vamp/VampEffect.cpp:414 export/ExportCL.cpp:398
msgid "&OK"
msgstr "&D'acord"
@@ -1392,8 +1335,7 @@ msgstr "&D'acord"
msgid "Unable to determine"
msgstr "No s'ha pogut determinar"
-#: Internat.cpp:195
-#: import/ImportRaw.cpp:392
+#: Internat.cpp:195 import/ImportRaw.cpp:392
msgid "bytes"
msgstr "octets"
@@ -1409,13 +1351,19 @@ msgstr "MB"
msgid "GB"
msgstr "GB"
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
#: LabelDialog.cpp:52
msgid "Track"
msgstr "Pista"
-#: LabelDialog.cpp:53
-#: Menus.cpp:4057
-#: Menus.cpp:4085
+#: LabelDialog.cpp:53 Menus.cpp:4057 Menus.cpp:4085
msgid "Label"
msgstr "Etiqueta"
@@ -1427,8 +1375,7 @@ msgstr "Temps inicial"
msgid "End Time"
msgstr "Temps final"
-#: LabelDialog.cpp:98
-#: Menus.cpp:627
+#: LabelDialog.cpp:98 Menus.cpp:627
msgid "&Edit Labels"
msgstr "&Edita les etiquetes"
@@ -1444,8 +1391,7 @@ msgstr "Inserix &després"
msgid "Insert &Before"
msgstr "Inserix &abans"
-#: LabelDialog.cpp:127
-#: Menus.cpp:194
+#: LabelDialog.cpp:127 Menus.cpp:194
msgid "&Import..."
msgstr "&Importa..."
@@ -1467,20 +1413,15 @@ msgstr "Heu deixat alguns noms d'etiquetes en blanc. Estos elements\n"
msgid "Confirm"
msgstr "Confirma"
-#: LabelDialog.cpp:514
-#: Menus.cpp:3555
+#: LabelDialog.cpp:514 Menus.cpp:3555
msgid "Select a text file containing labels..."
msgstr "Seleccioneu un text que contingui les etiquetes..."
-#: LabelDialog.cpp:518
-#: Menus.cpp:3559
+#: LabelDialog.cpp:518 Menus.cpp:3559
msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
msgstr "Fitxers de text (*.txt)|*.txt|Tots els fitxers (*.*)|*.*"
-#: LabelDialog.cpp:532
-#: Menus.cpp:3571
-#: Project.cpp:1831
-#: Project.cpp:1839
+#: LabelDialog.cpp:532 Menus.cpp:3571 Project.cpp:1831 Project.cpp:1839
#: import/ImportMIDI.cpp:31
msgid "Could not open file: "
msgstr "No s'ha pogut obrir el fitxer:"
@@ -1489,13 +1430,11 @@ msgstr "No s'ha pogut obrir el fitxer:"
msgid "No labels to export."
msgstr "No hi ha cap etiqueta per a exportar."
-#: LabelDialog.cpp:564
-#: Menus.cpp:2172
+#: LabelDialog.cpp:564 Menus.cpp:2172
msgid "Export Labels As:"
msgstr "Anomena i exporta les etiquetes:"
-#: LabelDialog.cpp:566
-#: Menus.cpp:2170
+#: LabelDialog.cpp:566 Menus.cpp:2170
msgid "labels.txt"
msgstr "etiquetes.txt"
@@ -1507,10 +1446,7 @@ msgstr "Pista d'etiquetes nova"
msgid "Enter track name"
msgstr "Escriviu el nom de la pista"
-#: LabelDialog.cpp:701
-#: LabelDialog.h:52
-#: LabelTrack.cpp:89
-#: Menus.cpp:555
+#: LabelDialog.cpp:701 LabelDialog.h:52 LabelTrack.cpp:89 Menus.cpp:555
msgid "&Label Track"
msgstr "Pista d'e&tiquetes"
@@ -1537,24 +1473,15 @@ msgstr "S'està obrint el projecte Audacity"
msgid "&File"
msgstr "&Fitxer"
-#: Menus.cpp:164
-msgid "&New\tCtrl+N"
-msgstr "&Nou\tCtrl+N"
-
-#: Menus.cpp:166
-msgid "&Open...\tCtrl+O"
-msgstr "&Obri...\tCtrl+O"
-
#: Menus.cpp:171
-msgid "&Close\tCtrl+W"
-msgstr "&Tanca\tCtrl+W"
+msgid "&Close"
+msgstr "&Tanca"
#: Menus.cpp:174
-msgid "&Save Project\tCtrl+S"
-msgstr "&Desa el projecte\tCrtl+S"
+msgid "&Save Project"
+msgstr "&Desa el projecte"
-#: Menus.cpp:178
-#: Project.cpp:2690
+#: Menus.cpp:178 Project.cpp:2690
msgid "Save Project &As..."
msgstr "&Anomena i alça el projecte..."
@@ -1575,8 +1502,8 @@ msgid "&Import"
msgstr "&Importa"
#: Menus.cpp:196
-msgid "&Audio...\tCtrl+Shift+I"
-msgstr "&So...\tCtrl+Maj+I"
+msgid "&Audio..."
+msgstr "&So..."
#: Menus.cpp:197
msgid "&Labels..."
@@ -1590,8 +1517,7 @@ msgstr "&MIDI..."
msgid "&Raw Data..."
msgstr "Dades c&rues..."
-#: Menus.cpp:210
-#: Menus.cpp:239
+#: Menus.cpp:210 Menus.cpp:239
msgid "Expo&rt Selection..."
msgstr "Anomena i expo&rta la selecció..."
@@ -1607,12 +1533,11 @@ msgstr "Exporta &múltiples fitxers..."
msgid "Export MIDI..."
msgstr ""
-#: Menus.cpp:247
-msgid "CleanSpeech C&hain..."
-msgstr "En&cadenament de CleanSpeech..."
+#: Menus.cpp:260
+msgid "Appl&y Chain..."
+msgstr "Execu&ta la cadena d'ordes..."
-#: Menus.cpp:248
-#: Menus.cpp:262
+#: Menus.cpp:248 Menus.cpp:262
msgid "Edit C&hains..."
msgstr "Edita les &cadenes d'ordes..."
@@ -1624,10 +1549,6 @@ msgstr "Exporta &configuracions del CleanSpeech..."
msgid "I&mport CleanSpeech Presets..."
msgstr "Importa &configuracions del CleanSpeech..."
-#: Menus.cpp:260
-msgid "Appl&y Chain..."
-msgstr "Execu&ta la cadena d'ordes..."
-
#: Menus.cpp:267
msgid "&Upload File..."
msgstr "P&uja el fitxer..."
@@ -1641,75 +1562,72 @@ msgid "&Print..."
msgstr "Im&primix..."
#: Menus.cpp:287
-msgid "E&xit\tCtrl+Q"
-msgstr "&Surt\tCtrl+Q"
+msgid "E&xit"
+msgstr "&Surt"
-#: Menus.cpp:295
-#: toolbars/EditToolBar.cpp:76
+#: Menus.cpp:295 toolbars/EditToolBar.cpp:76
msgid "&Edit"
msgstr "&Edita"
#: Menus.cpp:299
-msgid "&Undo\tCtrl+Z"
-msgstr "&Desfés\tCtrl+Z"
+msgid "&Undo"
+msgstr "&Desfés"
-#: Menus.cpp:307
-#: prefs/KeyConfigPrefs.cpp:369
-#: toolbars/EditToolBar.cpp:146
+#: Menus.cpp:307 prefs/KeyConfigPrefs.cpp:369 toolbars/EditToolBar.cpp:146
msgid "&Redo"
msgstr "&Refés"
#: Menus.cpp:320
-msgid "Cu&t\tCtrl+X"
-msgstr "&Retalla\tCtrl+X"
+msgid "Cu&t"
+msgstr "&Retalla"
#: Menus.cpp:324
-msgid "Spl&it Cut\tCtrl+Alt+X"
-msgstr "Dividix i re&talla\tCtrl+Alt+X"
+msgid "Spl&it Cut"
+msgstr "Dividix i re&talla"
#: Menus.cpp:325
-msgid "&Copy\tCtrl+C"
-msgstr "&Copia\tCtrl+C"
+msgid "&Copy"
+msgstr "&Copia"
#: Menus.cpp:329
-msgid "&Paste\tCtrl+V"
-msgstr "&Enganxa\tCtrl+V"
+msgid "&Paste"
+msgstr "&Enganxa"
#: Menus.cpp:333
-msgid "Tri&m\tCtrl+T"
-msgstr "Deixa no&més la selecció\tCtrl+T"
+msgid "Tri&m"
+msgstr "Deixa no&més la selecció"
#: Menus.cpp:335
-msgid "&Delete\tCtrl+K"
-msgstr "&Elimina\tCtrl+K"
+msgid "&Delete"
+msgstr "&Elimina"
#: Menus.cpp:336
-msgid "Split D&elete\tCtrl+Alt+K"
-msgstr "Dividix i &elimina\tCtrl+Alt+K"
+msgid "Split D&elete"
+msgstr "Dividix i &elimina"
#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
+msgid "Silence Audi&o"
msgstr ""
#: Menus.cpp:339
-msgid "Sp&lit\tCtrl+I"
-msgstr "Divi&dix\tCtrl+I"
+msgid "Sp&lit"
+msgstr "Divi&dix"
#: Menus.cpp:344
-msgid "Split Ne&w\tCtrl+Alt+I"
-msgstr "Dividix en un de no&u\tCtrl+Alt+I"
+msgid "Split Ne&w"
+msgstr "Dividix en un de no&u"
#: Menus.cpp:349
-msgid "&Join\tCtrl+J"
-msgstr "A&junta\tCtrl+J"
+msgid "&Join"
+msgstr "A&junta"
#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
+msgid "Detac&h at Silences"
msgstr ""
#: Menus.cpp:352
-msgid "Duplic&ate\tCtrl+D"
-msgstr "Duplic&a\tCtrl+D"
+msgid "Duplic&ate"
+msgstr "Duplic&a"
#: Menus.cpp:400 Menus.cpp:639
msgid "Stereo Trac&k to Mono"
@@ -1721,80 +1639,65 @@ msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:367
-msgid "&Cut\tAlt+X"
-msgstr "&Retalla\tAlt+X"
+msgid "&Cut"
+msgstr "&Retalla"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:372
-msgid "&Split Cut\tShift+Alt+X"
-msgstr "Dividix i re&talla\tMaj+Alt+X"
+msgid "&Split Cut"
+msgstr "Dividix i re&talla"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:377
-msgid "Co&py\tShift+Alt+C"
-msgstr "Co&pia\tMaj+Alt+C"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:383
-msgid "&Delete\tAlt+K"
-msgstr "E&limina\tAlt+K"
+msgid "Co&py"
+msgstr "Co&pia"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:388
-msgid "Sp&lit Delete\tShift+Alt+K"
-msgstr "Di&vidix i elimina\tMaj+Alt+K"
+msgid "Sp&lit Delete"
+msgstr "Di&vidix i elimina"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:393
-msgid "Sile&nce\tAlt+L"
-msgstr "Sile&nci\tAlt+L"
+msgid "Sile&nce"
+msgstr "Sile&nci"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:399
-msgid "Spli&t\tAlt+I"
-msgstr "Di&vidix\tAlt+I"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:404
-msgid "&Join\tAlt+J"
-msgstr "A&junta\tAlt+J"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
-msgstr ""
+msgid "Spli&t"
+msgstr "Di&vidix"
#: Menus.cpp:456
msgid "&Select"
msgstr ""
#: Menus.cpp:416
-msgid "&All\tCtrl+A"
-msgstr "&Tot\tCtrl+A"
+msgid "&All"
+msgstr "&Tot"
#: Menus.cpp:417
-msgid "&None\tCtrl+Shift+A"
-msgstr "&Cap...\tCtrl+Maj+A"
+msgid "&None"
+msgstr "&Cap..."
#: Menus.cpp:421
-msgid "&Left at Playback Position\t["
-msgstr "A l'&esquerra de la posició d'interpretació\t["
+msgid "&Left at Playback Position"
+msgstr "A l'&esquerra de la posició d'interpretació"
#: Menus.cpp:422
-msgid "&Right at Playback Position\t]"
-msgstr "A la &dreta de la posició d'interpretació\t]"
+msgid "&Right at Playback Position"
+msgstr "A la &dreta de la posició d'interpretació"
#: Menus.cpp:426
-msgid "Track &Start to Cursor\tShift+J"
-msgstr "De l'&inici de pista fins al cursor\tMaj.+J"
+msgid "Track &Start to Cursor"
+msgstr "De l'&inici de pista fins al cursor"
#: Menus.cpp:427
-msgid "Cursor to Track &End\tShift+K"
-msgstr "Del cursor fins al final de la pista\tMaj.+K"
+msgid "Cursor to Track &End"
+msgstr "Del cursor fins al final de la pista"
#: Menus.cpp:433
-msgid "Find &Zero Crossings\tZ"
-msgstr "Cerca encreuaments amb el &zero\tZ"
+msgid "Find &Zero Crossings"
+msgstr "Cerca encreuaments amb el &zero"
#: Menus.cpp:476
msgid "Mo&ve Cursor"
@@ -1809,12 +1712,12 @@ msgid "to Selection En&d"
msgstr "al &final de la selecció"
#: Menus.cpp:442
-msgid "to Track &Start\tJ"
-msgstr "a l'inici de la &pista\tJ"
+msgid "to Track &Start"
+msgstr "a l'inici de la &pista"
#: Menus.cpp:443
-msgid "to Track &End\tK"
-msgstr "al &final de la pista\tK"
+msgid "to Track &End"
+msgstr "al &final de la pista"
#: Menus.cpp:450
msgid "Re&gion Save"
@@ -1836,29 +1739,8 @@ msgstr "&Bloca"
msgid "&Unlock"
msgstr "&Desbloca"
-#: Menus.cpp:470
-msgid "Turn Snap-To On"
-msgstr "Habilita l'arrodoniment de mesures"
-
-#: Menus.cpp:471
-msgid "Turn Snap-To Off"
-msgstr "Inhabilita l'arrodoniment de mesures"
-
-#: Menus.cpp:472
-msgid "Turn Grid Snap On"
-msgstr "Habilita l'aproximació a la quadrÃcula"
-
-#: Menus.cpp:473
-msgid "Turn Grid Snap Off"
-msgstr "Inhabilita l'aproximació a la quadrÃcula"
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr ""
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
+msgid "Pre&ferences..."
msgstr ""
#: Menus.cpp:492
@@ -1866,36 +1748,36 @@ msgid "&View"
msgstr "&Mostra"
#: Menus.cpp:494
-msgid "Zoom &In\tCtrl+1"
-msgstr "A&propa\tCtrl+1"
+msgid "Zoom &In"
+msgstr "A&propa"
#: Menus.cpp:497
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "Zoom &normal\tCtrl+2"
+msgid "Zoom &Normal"
+msgstr "Zoom &normal"
#: Menus.cpp:498
-msgid "Zoom &Out\tCtrl+3"
-msgstr "A&llunya\tCtrl+3"
+msgid "Zoom &Out"
+msgstr "A&llunya"
#: Menus.cpp:501
-msgid "&Fit in Window\tCtrl+F"
-msgstr "&Encabix a la finestra\tCrtl+F"
+msgid "&Fit in Window"
+msgstr "&Encabix a la finestra"
#: Menus.cpp:502
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "Encabix &Verticalment\tCtrl+Shift+F"
+msgid "Fit &Vertically"
+msgstr "Encabix &Verticalment"
#: Menus.cpp:503
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "Fes &zoom a la selecció\tCrtl+E"
+msgid "&Zoom to Selection"
+msgstr "Fes &zoom a la selecció"
#: Menus.cpp:506
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
-msgstr "Ai&xafa totes les pistes\tCtrl+Maj+C"
+msgid "&Collapse All Tracks"
+msgstr "Ai&xafa totes les pistes"
#: Menus.cpp:507
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
-msgstr "E&xpandix totes les pistes\tCtrl+Maj+X"
+msgid "E&xpand All Tracks"
+msgstr "E&xpandix totes les pistes"
#: Menus.cpp:510
msgid "&Show Clipping"
@@ -1955,40 +1837,40 @@ msgstr "!Vista simplificada"
msgid "T&ransport"
msgstr ""
-#: Menus.cpp:591
-msgid "Play\tSpace"
-msgstr ""
+#: toolbars/ControlToolBar.cpp:177
+msgid "Play"
+msgstr "Interpreta"
#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
+msgid "&Loop Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Pause\tP"
+msgid "&Pause"
msgstr ""
#: Menus.cpp:596
-msgid "&Stop\tSpace"
+msgid "&Stop"
msgstr ""
#: Menus.cpp:799
-msgid "Skip to Start\tHome"
-msgstr "Vés a l'inici\tInici"
+msgid "Skip to Start"
+msgstr "Vés a l'inici"
#: Menus.cpp:800
-msgid "Skip to End\tEnd"
-msgstr "Vés a la pista següent i canvia la selecció\tMaj+Avall"
+msgid "Skip to End"
+msgstr "Vés a la pista següent i canvia la selecció"
#: Menus.cpp:600
-msgid "&Record\tR"
+msgid "&Record"
msgstr ""
#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
+msgid "&Timer Record..."
msgstr ""
#: Menus.cpp:604
-msgid "Append Record\tShift+R"
+msgid "Append Record"
msgstr ""
#: Menus.cpp:607
@@ -2016,15 +1898,14 @@ msgid "Add &New"
msgstr ""
#: Menus.cpp:553
-msgid "&Audio Track\tCtrl+Shift+N"
-msgstr "Pista de &so\tCtrl+Maj+N"
+msgid "&Audio Track"
+msgstr "Pista de &so"
#: Menus.cpp:554
msgid "&Stereo Track"
msgstr "Pista e&stereofònica"
-#: Menus.cpp:556
-#: TimeTrack.cpp:44
+#: Menus.cpp:556 TimeTrack.cpp:44
msgid "&Time Track"
msgstr "Pista de &temps"
@@ -2033,8 +1914,8 @@ msgid "Mi&x and Render"
msgstr "&Mescla i renderitza"
#: Menus.cpp:572
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
-msgstr "Mescla-ho i renderitza-ho en una nova pista\tCtrl+Maj+M"
+msgid "Mix and Render to New Track"
+msgstr "Mescla-ho i renderitza-ho en una nova pista"
#: Menus.cpp:576
msgid "&Resample..."
@@ -2045,12 +1926,12 @@ msgid "Remo&ve Tracks"
msgstr "&Elimina pistes"
#: Menus.cpp:592
-msgid "&Mute All Tracks\tCtrl+U"
-msgstr "Si&lencia totes les pistes\tCtrl+U"
+msgid "&Mute All Tracks"
+msgstr "Si&lencia totes les pistes"
#: Menus.cpp:593
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
-msgstr "&Activa el so a totes les pistes\tCtrl+Maj+U"
+msgid "&UnMute All Tracks"
+msgstr "&Activa el so a totes les pistes"
#: Menus.cpp:597
msgid "Align with &Zero"
@@ -2096,17 +1977,17 @@ msgstr ""
msgid "Synchronize MIDI with Audio"
msgstr ""
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
+#: Menus.cpp:686
+msgid "&Link Audio and Label Tracks"
msgstr ""
-#: Menus.cpp:623
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "Afig una e&tiqueta a la selecció\tCtrl+B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr ""
#: Menus.cpp:624
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "Afig una etiqueta al &punt d'interpretació\tCtrl+M"
+msgid "Add Label At &Playback Position"
+msgstr "Afig una etiqueta al &punt d'interpretació"
#: Menus.cpp:716
msgid "S&ort tracks"
@@ -2132,20 +2013,19 @@ msgstr ""
msgid "Effe&ct"
msgstr "Efe&cte"
-#: Menus.cpp:670
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "Repetix el darrer efecte\tCtrl+R"
-
#: Menus.cpp:702
msgid "&Analyze"
msgstr "&Analitza"
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
+
#: Menus.cpp:704
msgid "Plot Spectrum..."
msgstr "Traça l'espectre..."
-#: Menus.cpp:737
-#: Menus.cpp:740
+#: Menus.cpp:737 Menus.cpp:740
msgid "&Help"
msgstr "&Ajuda"
@@ -2157,9 +2037,9 @@ msgstr "&Quant a l'Audacity CleanSpeech..."
msgid "&Show Welcome Message..."
msgstr "Mo&stra el missatge de benvinguda..."
-#: Menus.cpp:748
-msgid "&Index..."
-msgstr "&Ãndex..."
+#: Menus.cpp:958
+msgid "&Help..."
+msgstr ""
#: Menus.cpp:959
msgid "Show &Log..."
@@ -2177,181 +2057,149 @@ msgstr "&Executa el test d'eficiència..."
msgid "&Audio Device Info..."
msgstr "Informació del dispositiu de &so..."
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
msgstr ""
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
msgstr ""
#: Menus.cpp:774
-msgid "Selection Tool\tF1"
-msgstr "Eina de selecció\tF1"
+msgid "Selection Tool"
+msgstr "Eina de selecció"
#: Menus.cpp:775
-msgid "Envelope Tool\tF2"
-msgstr "Eina d'envolupant\tF2"
+msgid "Envelope Tool"
+msgstr "Eina d'envolupant"
#: Menus.cpp:776
-msgid "Draw Tool\tF3"
-msgstr "Eina de dibuix\tF3"
+msgid "Draw Tool"
+msgstr "Eina de dibuix"
#: Menus.cpp:777
-msgid "Zoom Tool\tF4"
-msgstr "Eina de zoom\tF4"
+msgid "Zoom Tool"
+msgstr "Eina de zoom"
#: Menus.cpp:778
-msgid "Time Shift Tool\tF5"
-msgstr "Eina de desplaçament en el temps\tF5"
+msgid "Time Shift Tool"
+msgstr "Eina de desplaçament en el temps"
#: Menus.cpp:779
-msgid "Multi Tool\tF6"
+msgid "Multi Tool"
msgstr "Multi-eina"
#: Menus.cpp:781
-msgid "Next Tool\tD"
-msgstr "Eina següent\tD"
+msgid "Next Tool"
+msgstr "Eina següent"
#: Menus.cpp:782
-msgid "Previous Tool\tA"
-msgstr "Eina anterior\tA"
+msgid "Previous Tool"
+msgstr "Eina anterior"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
+msgid "Play/Stop"
msgstr ""
-#: Menus.cpp:785
-msgid "Stop\tS"
-msgstr "Atura't\tS"
-
-#: Menus.cpp:786
-msgid "Pause\tP"
-msgstr "Pausa\tP"
-
-#: Menus.cpp:787
-msgid "Record\tR"
-msgstr "Enregistra\tR"
-
-#: Menus.cpp:788
-msgid "Record Append\tShift+R"
-msgstr "Enregistra afegint\tShift+R"
-
#: Menus.cpp:790
-msgid "Play/Stop and Set Cursor\tShift+A"
-msgstr "Engega/Atura i Establix la posició del cursor\tMaj+A"
+msgid "Play/Stop and Set Cursor"
+msgstr "Engega/Atura i Establix la posició del cursor"
#: Menus.cpp:793
-msgid "Play One Second\t1"
-msgstr "Reproduix un segon\t1"
+msgid "Play One Second"
+msgstr "Reproduix un segon"
#: Menus.cpp:794
-msgid "Play To Selection\tB"
-msgstr "Reproduix fins la selecció\tB"
-
-#: Menus.cpp:795
-msgid "Play Looped\tL"
-msgstr "Reproduix en bucle\tL"
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
+msgid "Play To Selection"
+msgstr "Reproduix fins la selecció"
#: Menus.cpp:797
-msgid "Play Cut Preview\tC"
-msgstr "Interpreta l'exemple d'audició del fragment retallat\tC"
+msgid "Play Cut Preview"
+msgstr "Interpreta l'exemple d'audició del fragment retallat"
#: Menus.cpp:802
-msgid "Selection to Start\tShift+Home"
-msgstr "Selecciona fins a l'inici\tMaj+Inici"
+msgid "Selection to Start"
+msgstr "Selecciona fins a l'inici"
#: Menus.cpp:803
-msgid "Selection to End\tShift+End"
-msgstr "Selecciona fins al final\tMaj+Fi"
+msgid "Selection to End"
+msgstr "Selecciona fins al final"
#: Menus.cpp:805
-msgid "DeleteKey\tBackspace"
-msgstr "Tecla d'eliminació\tRetrocés"
+msgid "DeleteKey"
+msgstr "Tecla d'eliminació"
#: Menus.cpp:810
-msgid "DeleteKey2\tDelete"
-msgstr "Tecla d'eliminació 2\tSupr"
+msgid "DeleteKey2"
+msgstr "Tecla d'eliminació 2"
-#: Menus.cpp:816
-msgid "Seek left short period during playback\tLeft"
-msgstr "Retrocedix una mica durant la interpretació"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
+msgstr ""
-#: Menus.cpp:817
-msgid "Seek right short period during playback\tRight"
-msgstr "Avança una mica durant la interpretació\tDreta"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
+msgstr ""
-#: Menus.cpp:818
-msgid "Seek left long period during playback\tShift+Left"
-msgstr "Retrocedix un tros llarg durant la interpretació\tMaj.+Esquera"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
+msgstr ""
-#: Menus.cpp:819
-msgid "Seek right long period during playback\tShift+Right"
-msgstr "Avança un tros llarg durant la interpretació\tMaj.+Dreta"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
+msgstr ""
#: Menus.cpp:823
-msgid "Move Focus to Previous Track\tUp"
-msgstr "Vés a la pista anterior\tAmunt"
+msgid "Move Focus to Previous Track"
+msgstr "Vés a la pista anterior"
-#: Menus.cpp:824
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
-msgstr "Vés a la pista anterior i canvia la selecció\tMaj+Amunt"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
+msgstr ""
#: Menus.cpp:825
-msgid "Move Focus to Next Track\tDown"
-msgstr "Vés a la pista següent\tAvall"
+msgid "Move Focus to Next Track"
+msgstr "Vés a la pista següent"
-#: Menus.cpp:826
-msgid "Move Focus to Next and Change Selection\tShift+Down"
-msgstr "Vés a la pista següent i canvia la selecció\tMaj+Avall"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
+msgstr ""
#: Menus.cpp:827
-msgid "Toggle Focused Track\tReturn"
-msgstr "Commuta la pista actual\tRetorn"
-
-#: Menus.cpp:828
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr "Commuta la pista actual\tNUMPAD_ENTER"
-
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
-msgstr ""
+msgid "Toggle Focused Track"
+msgstr "Commuta la pista actual"
#: Menus.cpp:831
-msgid "Cursor Left\tLeft"
-msgstr "Cursor a l'esquerra\tEsquerra"
+msgid "Cursor Left"
+msgstr "Cursor a l'esquerra"
#: Menus.cpp:832
-msgid "Cursor Right\tRight"
-msgstr "Cursor a la dreta\tDreta"
+msgid "Cursor Right"
+msgstr "Cursor a la dreta"
#: Menus.cpp:833
-msgid "Cursor Short Jump Left\t,"
-msgstr "Salt curt del cursor a l'esquerra\t,"
+msgid "Cursor Short Jump Left"
+msgstr "Salt curt del cursor a l'esquerra"
#: Menus.cpp:834
-msgid "Cursor Short Jump Right\t."
-msgstr "Salt curt del cursor a la dreta\t."
+msgid "Cursor Short Jump Right"
+msgstr "Salt curt del cursor a la dreta"
#: Menus.cpp:835
-msgid "Cursor Long Jump Left\tShift+,"
-msgstr "Salt llarg del cursor a l'esquerra\tMaj.+,"
+msgid "Cursor Long Jump Left"
+msgstr "Salt llarg del cursor a l'esquerra"
#: Menus.cpp:836
-msgid "Cursor Long Jump Right\tShift+."
-msgstr "Salt llarg del cursor a la dreta\tMaj.+."
+msgid "Cursor Long Jump Right"
+msgstr "Salt llarg del cursor a la dreta"
#: Menus.cpp:838
-msgid "Selection Extend Left\tShift+Left"
-msgstr "Expandix la selecció a l'esquerra\tMaj+Esquerra"
+msgid "Selection Extend Left"
+msgstr "Expandix la selecció a l'esquerra"
#: Menus.cpp:839
-msgid "Selection Extend Right\tShift+Right"
-msgstr "Expandix la selecció a la dreta\tMaj+Dreta"
+msgid "Selection Extend Right"
+msgstr "Expandix la selecció a la dreta"
#: Menus.cpp:841
msgid "Set (or Extend) Left Selection"
@@ -2362,52 +2210,52 @@ msgid "Set (or Extend) Right Selection"
msgstr "Establix (o estén) el lÃmit dret de la selecció"
#: Menus.cpp:844
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "Contreu la selecció a l'esquerra\tCtrl+Maj+Dreta"
+msgid "Selection Contract Left"
+msgstr "Contreu la selecció a l'esquerra"
#: Menus.cpp:845
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "Contreu la selecció a la dreta\tCtrl+Maj+Esquerra"
+msgid "Selection Contract Right"
+msgstr "Contreu la selecció a la dreta"
#: Menus.cpp:847
-msgid "Change pan on focused track\tShift+P"
-msgstr "Canvia la posició panorà mica de la pista actual\tMaj+P"
+msgid "Change pan on focused track"
+msgstr "Canvia la posició panorà mica de la pista actual"
#: Menus.cpp:848
-msgid "Pan left on focused track\tAlt+Shift+Left"
-msgstr "Mou a l'esquerra la posició panorà mica de la pista actual\tAlt+Maj+Esquerra"
+msgid "Pan left on focused track"
+msgstr "Mou a l'esquerra la posició panorà mica de la pista actual"
#: Menus.cpp:849
-msgid "Pan right on focused track\tAlt+Shift+Right"
-msgstr "Mou a la dreta la posició panorà mica de la pista actual\tAlt+Maj+Dreta"
+msgid "Pan right on focused track"
+msgstr "Mou a la dreta la posició panorà mica de la pista actual"
#: Menus.cpp:850
-msgid "Change gain on focused track\tShift+G"
-msgstr "Canvia el guany a la pista actual\tMaj+G"
+msgid "Change gain on focused track"
+msgstr "Canvia el guany a la pista actual"
#: Menus.cpp:851
-msgid "Increase gain on focused track\tAlt+Shift+Up"
-msgstr "Incrementa el guany a la pista actual\tAlt+Maj+Amunt"
+msgid "Increase gain on focused track"
+msgstr "Incrementa el guany a la pista actual"
#: Menus.cpp:852
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
-msgstr "Reduïx el guany a la pista actual\tAlt+Maj+Avall"
+msgid "Decrease gain on focused track"
+msgstr "Reduïx el guany a la pista actual"
#: Menus.cpp:853
-msgid "Open menu on focused track\tShift+M"
-msgstr "Obri el menú de la pista actual\tMaj+M"
+msgid "Open menu on focused track"
+msgstr "Obri el menú de la pista actual"
#: Menus.cpp:854
-msgid "Mute/Unmute focused track\tShift+U"
-msgstr "Emmudix o deixa d'emmudir la pista actual\tMaj+U"
+msgid "Mute/Unmute focused track"
+msgstr "Emmudix o deixa d'emmudir la pista actual"
#: Menus.cpp:855
-msgid "Solo/Unsolo focused track\tShift+S"
-msgstr "Activa o desactiva el Solo a la pista actual\tMaj+S"
+msgid "Solo/Unsolo focused track"
+msgstr "Activa o desactiva el Solo a la pista actual"
#: Menus.cpp:856
-msgid "Close focused track\tShift+C"
-msgstr "Tanca la pista actual\tMaj+C"
+msgid "Close focused track"
+msgstr "Tanca la pista actual"
#: Menus.cpp:858
msgid "Snap To On"
@@ -2418,7 +2266,35 @@ msgid "Snap To Off"
msgstr "Inhabilita l'arrodoniment de mesures"
#: Menus.cpp:1071
-msgid "Full screen on/off\tF11"
+msgid "Full screen on/off"
+msgstr ""
+
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr ""
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr ""
+
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr ""
+
+#: Menus.cpp:1074
+msgid "Adjust input source"
msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
@@ -2479,8 +2355,8 @@ msgstr "Abans heu de seleccionar una pista."
#: Menus.cpp:2035
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "Repetix %s\tCtrl+R"
+msgid "Repeat %s"
+msgstr "Repetix %s"
#: Menus.cpp:2166
msgid "There are no label tracks to export."
@@ -2511,9 +2387,7 @@ msgstr "No hi ha res a desfer"
msgid "Nothing to redo"
msgstr "No hi ha res a repetir"
-#: Menus.cpp:2366
-#: TrackPanel.cpp:605
-#: toolbars/EditToolBar.cpp:133
+#: Menus.cpp:2366 TrackPanel.cpp:605 toolbars/EditToolBar.cpp:133
msgid "Cut"
msgstr "Retalla"
@@ -2529,10 +2403,7 @@ msgstr "Dividix i retalla"
msgid "Split-cut to the clipboard"
msgstr "Dividix i retalla al porta-retalls"
-#: Menus.cpp:2469
-#: Menus.cpp:2540
-#: Menus.cpp:2634
-#: TrackPanel.cpp:607
+#: Menus.cpp:2469 Menus.cpp:2540 Menus.cpp:2634 TrackPanel.cpp:607
#: toolbars/EditToolBar.cpp:137
msgid "Paste"
msgstr "Enganxa"
@@ -2541,8 +2412,7 @@ msgstr "Enganxa"
msgid "Pasted text from the clipboard"
msgstr "Text enganxat des del porta-retalls"
-#: Menus.cpp:2540
-#: Menus.cpp:2634
+#: Menus.cpp:2540 Menus.cpp:2634
msgid "Pasted from the clipboard"
msgstr "Enganxat des del porta-retalls"
@@ -2554,8 +2424,7 @@ msgstr ""
msgid "Copying stereo audio into a mono track is not allowed."
msgstr "No es pot copiar so estereofònic en una pista monofònica."
-#: Menus.cpp:2670
-#: toolbars/EditToolBar.cpp:139
+#: Menus.cpp:2670 toolbars/EditToolBar.cpp:139
msgid "Trim"
msgstr "Deixa només la selecció"
@@ -2595,8 +2464,7 @@ msgstr "Ajunta"
msgid "Silenced selected tracks for %.2f seconds at %.2f"
msgstr "S'han silenciat les pistes seleccionades durant %.2f segons a partir de la posició %.2f"
-#: Menus.cpp:2771
-#: toolbars/EditToolBar.cpp:141
+#: Menus.cpp:2771 toolbars/EditToolBar.cpp:141
msgid "Silence"
msgstr "Silencia"
@@ -2680,8 +2548,7 @@ msgstr "Separa etiquetes"
msgid "Disjoined labeled regions"
msgstr "S'han separat les regions etiquetades"
-#: Menus.cpp:2947
-#: TrackPanel.cpp:6121
+#: Menus.cpp:2947 TrackPanel.cpp:6121
msgid "Split"
msgstr "Dividix"
@@ -2697,15 +2564,6 @@ msgstr "Dividix en una nova pista"
msgid "Split at labels"
msgstr "Dividix a les etiquetes"
-#: Menus.cpp:3425
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "Per a dibuixar l'espectre cal que totes les pistes seleccionades tinguen la mateixa freqüència de mostreig."
-
-#: Menus.cpp:3451
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "S'ha seleccionat un fragment de so massa llarg. Només s'analitzaran els primers %.1f segons."
-
#: Menus.cpp:3584
#, c-format
msgid "Imported labels from '%s'"
@@ -2744,8 +2602,7 @@ msgstr "Tots els fitxers (*)|*"
msgid "Edit the metadata tags"
msgstr "Edita les etiquetes de metadades"
-#: Menus.cpp:3669
-#: export/Export.cpp:298
+#: Menus.cpp:3669 export/Export.cpp:298
msgid "Edit Metadata"
msgstr "Edita les metadades"
@@ -2772,8 +2629,7 @@ msgstr "S'han mesclat i renderitzat %d pistes en una nova pista estereofònica"
msgid "Mixed and rendered %d tracks into one new mono track"
msgstr "S'han mesclat i renderitzat %d pistes en una nova pista monofònica"
-#: Menus.cpp:3736
-#: Mix.cpp:120
+#: Menus.cpp:3736 Mix.cpp:120
msgid "&Mix and Render"
msgstr "&Mescla i renderitza"
@@ -2825,10 +2681,7 @@ msgstr ""
msgid "Created new audio track"
msgstr "S'ha creat una nova pista de so"
-#: Menus.cpp:3950
-#: Menus.cpp:3973
-#: Menus.cpp:3988
-#: Menus.cpp:4008
+#: Menus.cpp:3950 Menus.cpp:3973 Menus.cpp:3988 Menus.cpp:4008
msgid "New Track"
msgstr "Pista nova"
@@ -2864,8 +2717,7 @@ msgstr "Enregistra esta configuració del CleanSpeech com a:"
msgid "CleanSpeech Presets (*.csp)|*.csp"
msgstr "Configuracions del CleanSpeech (*.csp)|*.csp"
-#: Menus.cpp:4123
-#: export/Export.cpp:515
+#: Menus.cpp:4123 export/Export.cpp:515
msgid "Sorry, pathnames longer than 256 characters not supported."
msgstr "No es permet l'ús de noms de camà de més de 256 carà cters"
@@ -2873,8 +2725,7 @@ msgstr "No es permet l'ús de noms de camà de més de 256 carà cters"
msgid "Problem encountered exporting presets."
msgstr "Hi ha hagut un problema en exportar les configuracions."
-#: Menus.cpp:4170
-#: export/Export.cpp:408
+#: Menus.cpp:4170 export/Export.cpp:408
msgid "Unable to export"
msgstr "No s'ha pogut exportar"
@@ -2886,9 +2737,7 @@ msgstr "Elimina la pista"
msgid "Removed audio track(s)"
msgstr "Una o més pistes de so han estat eliminades"
-#: Menus.cpp:4508
-#: Menus.cpp:4527
-#: export/ExportMP3.cpp:1926
+#: Menus.cpp:4508 Menus.cpp:4527 export/ExportMP3.cpp:1926
msgid "Resample"
msgstr "Canvia la freqüència de mostreig"
@@ -2913,8 +2762,7 @@ msgstr "Canvia la freqüència de mostreig de la pista"
msgid "Resampled audio track(s)"
msgstr "S'ha canviat freqüència de mostreig de la pista/es"
-#: Mix.cpp:94
-#: Mix.cpp:101
+#: Mix.cpp:94 Mix.cpp:101
msgid "Mix"
msgstr "Mescla"
@@ -2934,6 +2782,10 @@ msgstr "Hi ha hagut un problema en imprimir."
msgid "Print"
msgstr "Imprimix"
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr ""
+
#: Project.cpp:636
msgid "Main Mix"
msgstr "Mescla principal"
@@ -2947,14 +2799,11 @@ msgstr "Benvingut/uda a l'Audacity versió %s"
msgid "(Recovered)"
msgstr "(Recuperat)"
-#: Project.cpp:1482
-#: TrackPanel.cpp:804
-#: toolbars/ControlToolBar.cpp:191
+#: Menus.cpp:787
msgid "Record"
msgstr "Enregistra"
-#: Project.cpp:1482
-#: TrackPanel.cpp:804
+#: Project.cpp:1482 TrackPanel.cpp:804
msgid "Recorded Audio"
msgstr "So enregistrat"
@@ -2981,9 +2830,9 @@ msgstr "\n"
msgid "Save changes?"
msgstr "Voleu alçar els canvis?"
-#: Project.cpp:1694
-msgid "All files|*.*|All supported files|"
-msgstr "Tots els fitxers|*.*|Tots els fitxers suportats|"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
+msgstr ""
#: Project.cpp:1719
msgid "Select one or more audio files..."
@@ -2993,8 +2842,7 @@ msgstr "Seleccioneu un o més fitxers de so..."
msgid "Audacity projects|*.aup|"
msgstr "Projectes de l'Audacity|*.aup|"
-#: Project.cpp:1799
-#: Project.cpp:2186
+#: Project.cpp:1799 Project.cpp:2186
#, c-format
msgid "This file was saved by Audacity %s, a much\n"
"older version. The format has changed.\n"
@@ -3015,13 +2863,22 @@ msgstr "Este fitxer va ser alçat amb l'Audacity %s, una versió\n"
msgid "1.0 or earlier"
msgstr "1.0 o anterior"
-#: Project.cpp:1806
-#: Project.cpp:2198
+#: Project.cpp:1806 Project.cpp:2198
msgid "Opening old project file"
msgstr "S'està obrint un fitxer de projecte antic"
-#: Project.cpp:1832
-#: Project.cpp:1840
+#: Project.cpp:2073
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr ""
+
+#: Project.cpp:1832 Project.cpp:1840
msgid "Error opening file"
msgstr "S'ha produït un error en obrir el fitxer"
@@ -3056,8 +2913,7 @@ msgstr "Recupera"
msgid "Project checker repaired file"
msgstr "Fitxer reparat durant el procés de comprovació de projectes"
-#: Project.cpp:2001
-#: effects/Repair.h:29
+#: Project.cpp:2001 effects/Repair.h:29
msgid "Repair"
msgstr "Repara"
@@ -3079,16 +2935,15 @@ msgstr "Este fitxer es va alçar amb l'Audacity %s.\n"
msgid "Can't open project file"
msgstr "No es pot obrir el fitxer de projecte"
-#: Project.cpp:2193
+#: Project.cpp:2484
#, c-format
msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
"\n"
-"Open this file now?"
-msgstr "Este fitxer va ser alçat amb l'Audacity %s.\n"
-"Podeu obrir-lo amb esta versió de l'Audacity, però quan l'alceu ja no el podreu tornar a obrir amb versions anteriors del programa.\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
-"Voleu obrir ara este fitxer?"
+"Open this file now?"
+msgstr ""
#: Project.cpp:2537
msgid "Your project is now empty.\n"
@@ -3105,17 +2960,22 @@ msgstr ""
msgid "Warning empty project"
msgstr ""
-#: Project.cpp:2591
+#: Project.cpp:2792
#, c-format
msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+"is not writable or the disk is full."
msgstr ""
-#: Project.cpp:2428
-#: Project.cpp:2442
+#: Project.cpp:2428 Project.cpp:2442
msgid "Error saving project"
msgstr "S'ha produït un error en alçar el projecte"
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
#: Project.cpp:2504
#, c-format
msgid "Saved %s"
@@ -3126,16 +2986,12 @@ msgstr "S'ha alçat %s"
msgid "Imported '%s'"
msgstr "S'ha importat '%s'"
-#: Menus.cpp:3649
-#: Project.cpp:2587
-#: Project.cpp:2612
-#: import/ImportPCM.cpp:440
+#: Menus.cpp:3649 Project.cpp:2587 Project.cpp:2612 import/ImportPCM.cpp:440
#: import/ImportPCM.cpp:484
msgid "Import"
msgstr "Importa"
-#: Project.cpp:2639
-#: Project.cpp:2647
+#: Project.cpp:2639 Project.cpp:2647
msgid "Error importing"
msgstr "S'ha produït un error en importar"
@@ -3178,8 +3034,7 @@ msgstr "S'ha creat un projecte nou"
msgid "Deleted %.2f seconds at t=%.2f"
msgstr "S'han eliminat %.2f segons a t=%.2f"
-#: Project.cpp:2859
-#: effects/Equalization.cpp:1262
+#: Project.cpp:2859 effects/Equalization.cpp:1262
#: effects/Equalization.cpp:2593
msgid "Delete"
msgstr "Elimina"
@@ -3260,8 +3115,7 @@ msgstr "Libsamplerate, per Erik de Castro Lopo"
msgid "Libsamplerate error: %d\n"
msgstr "Error del Libsamplerate: %d\n"
-#: Resample.cpp:240
-#: Resample.cpp:250
+#: Resample.cpp:240 Resample.cpp:250
msgid "Resampling disabled."
msgstr "Delmatge inhabilitat"
@@ -3280,6 +3134,163 @@ msgstr "24 bits PCM"
msgid "32-bit float"
msgstr "32 bits coma flotant"
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
+
+#: export/ExportMultiple.cpp:216 prefs/DirectoriesPrefs.cpp:92
+msgid "Choose..."
+msgstr "Navega..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
+
+#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
+msgid "false"
+msgstr "fals"
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr "Eines"
+
+#: toolbars/ControlToolBar.cpp:82
+msgid "Control"
+msgstr "Control"
+
+#: toolbars/MixerToolBar.cpp:60
+msgid "Mixer"
+msgstr "Mesclador"
+
+#: toolbars/MeterToolBar.cpp:50
+msgid "Meter"
+msgstr "Picòmetre"
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
+#: toolbars/DeviceToolBar.cpp:57
+msgid "Device"
+msgstr "Dispositiu"
+
+#: toolbars/TranscriptionToolBar.cpp:84
+msgid "Transcription"
+msgstr "Transcripció"
+
+#: TrackPanel.cpp:464 TrackPanel.cpp:465
+msgid "Track Panel"
+msgstr "Quadre de pistes"
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: export/ExportMultiple.cpp:258
+msgid "Tracks"
+msgstr "Pistes"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
#: Screenshot.cpp:384
msgid "Saved "
msgstr "S'ha alçat"
@@ -3288,14 +3299,15 @@ msgstr "S'ha alçat"
msgid "Error trying to save file: "
msgstr "S'ha produït un error mentre es desava el fitxer: "
-#: Sequence.cpp:732
-#: Sequence.cpp:742
-#: Sequence.cpp:749
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
+#: Sequence.cpp:732 Sequence.cpp:742 Sequence.cpp:749
msgid "Gap detected in project file\n"
msgstr "S'ha detectat un forat al fitxer de projecte\n"
-#: ShuttleGui.cpp:1852
-#: effects/Effect.cpp:342
+#: ShuttleGui.cpp:1852 effects/Effect.cpp:342
#: effects/audiounits/AudioUnitEffect.cpp:872
msgid "Pre&view"
msgstr "Pre&visualització"
@@ -3336,8 +3348,7 @@ msgstr "TÃtol de l'Ã lbum"
msgid "Track Number"
msgstr "Número de pista"
-#: Tags.cpp:633
-#: Tags.cpp:2138
+#: Tags.cpp:633 Tags.cpp:2138
msgid "Year"
msgstr "Any"
@@ -3345,9 +3356,7 @@ msgstr "Any"
msgid "Genre"
msgstr "Gènere"
-#: Tags.cpp:635
-#: Tags.cpp:2148
-#: prefs/MousePrefs.cpp:96
+#: Tags.cpp:635 Tags.cpp:2148 prefs/MousePrefs.cpp:96
msgid "Comments"
msgstr "Comentaris"
@@ -3363,9 +3372,7 @@ msgstr "Nom de l'etiqueta"
msgid "Tag Value"
msgstr "Valor de l'etiqueta"
-#: Tags.cpp:818
-#: Tags.cpp:1476
-#: prefs/KeyConfigPrefs.cpp:116
+#: Tags.cpp:818 Tags.cpp:1476 prefs/KeyConfigPrefs.cpp:116
msgid "&Clear"
msgstr "&Neteja"
@@ -3381,71 +3388,42 @@ msgstr ""
msgid "Rese&t..."
msgstr ""
-#: Tags.cpp:834
-#: Tags.cpp:1460
-#: Tags.cpp:1988
+#: Tags.cpp:834 Tags.cpp:1460 Tags.cpp:1988
msgid "Template"
msgstr "Plantilla"
-#: Tags.cpp:838
-#: Tags.cpp:1464
-#: Tags.cpp:1992
-#: prefs/KeyConfigPrefs.cpp:126
+#: Tags.cpp:838 Tags.cpp:1464 Tags.cpp:1992 prefs/KeyConfigPrefs.cpp:126
msgid "&Load..."
msgstr "&Obri..."
-#: Tags.cpp:839
-#: Tags.cpp:1465
-#: Tags.cpp:1993
-#: prefs/KeyConfigPrefs.cpp:125
+#: Tags.cpp:839 Tags.cpp:1465 Tags.cpp:1993 prefs/KeyConfigPrefs.cpp:125
msgid "&Save..."
msgstr "&Desa..."
-#: Tags.cpp:841
-#: Tags.cpp:1467
-#: Tags.cpp:1995
+#: Tags.cpp:841 Tags.cpp:1467 Tags.cpp:1995
msgid "S&et Default"
msgstr "&Establix com a opció per defecte"
-#: Tags.cpp:991
-#: Tags.cpp:1630
-#: Tags.cpp:2359
+#: Tags.cpp:991 Tags.cpp:1630 Tags.cpp:2359
msgid "Edit Genres"
msgstr "Edita els gèneres"
-#: Tags.cpp:1024
-#: Tags.cpp:1036
-#: Tags.cpp:1052
-#: Tags.cpp:1065
-#: Tags.cpp:1668
-#: Tags.cpp:1680
-#: Tags.cpp:1696
-#: Tags.cpp:1709
-#: Tags.cpp:2402
-#: Tags.cpp:2414
-#: Tags.cpp:2430
-#: Tags.cpp:2443
+#: Tags.cpp:1024 Tags.cpp:1036 Tags.cpp:1052 Tags.cpp:1065 Tags.cpp:1668
+#: Tags.cpp:1680 Tags.cpp:1696 Tags.cpp:1709 Tags.cpp:2402 Tags.cpp:2414
+#: Tags.cpp:2430 Tags.cpp:2443
msgid "Reset Genres"
msgstr "Restablix els gèneres"
-#: Tags.cpp:1024
-#: Tags.cpp:1065
-#: Tags.cpp:1668
-#: Tags.cpp:1709
-#: Tags.cpp:2402
+#: Tags.cpp:1024 Tags.cpp:1065 Tags.cpp:1668 Tags.cpp:1709 Tags.cpp:2402
#: Tags.cpp:2443
msgid "Unable to save genre file."
msgstr "No s'ha pogut alçar el fitxer de gèneres."
-#: Tags.cpp:1035
-#: Tags.cpp:1679
-#: Tags.cpp:2413
+#: Tags.cpp:1035 Tags.cpp:1679 Tags.cpp:2413
msgid "Are you sure you want to reset the genre list to defaults?"
msgstr "Segur que voleu restablir la llista de gèneres als valors per defecte?"
-#: Tags.cpp:1052
-#: Tags.cpp:1696
-#: Tags.cpp:2430
+#: Tags.cpp:1052 Tags.cpp:1696 Tags.cpp:2430
msgid "Unable to open genre file."
msgstr "No s'ha pogut obrir el fitxer de gèneres."
@@ -3453,21 +3431,19 @@ msgstr "No s'ha pogut obrir el fitxer de gèneres."
msgid "Load Metadata As:"
msgstr ""
-#: Tags.cpp:1112
-#: Tags.cpp:1763
-#: Tags.cpp:2486
+#: Tags.cpp:1112 Tags.cpp:1763 Tags.cpp:2486
msgid "Error loading metadata"
msgstr "S'ha produït un error en llegir les metadades"
-#: Tags.cpp:1087
-#: Tags.cpp:1141
-#: Tags.cpp:1742
-#: Tags.cpp:1778
-#: Tags.cpp:2465
+#: Tags.cpp:1087 Tags.cpp:1141 Tags.cpp:1742 Tags.cpp:1778 Tags.cpp:2465
#: Tags.cpp:2501
msgid "Save Metadata As:"
msgstr "Enregistra les metadades com a:"
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
#: Theme.cpp:638
#, c-format
msgid "Audacity could not write file:\n"
@@ -3500,8 +3476,7 @@ msgstr "L'Audacity no ha pogut trobar el fitxer:\n"
" %s.\n"
"El tema no s'ha carregat."
-#: Theme.cpp:807
-#: Theme.cpp:896
+#: Theme.cpp:807 Theme.cpp:896
#, c-format
msgid "Audacity could not load file:\n"
" %s.\n"
@@ -3525,8 +3500,7 @@ msgstr "No s'ha trobat cap dels fitxers que composen\n"
"el tema a:\n"
" %s."
-#: Theme.cpp:942
-#: effects/NoiseRemoval.cpp:173
+#: Theme.cpp:942 effects/NoiseRemoval.cpp:173
#, c-format
msgid "Could not create directory:\n"
" %s"
@@ -3549,12 +3523,8 @@ msgstr "Tots els fitxers necessaris a:\n"
" %s\n"
"són presents."
-#: SmartRecordDialog.cpp:226
-#: SmartRecordDialog.cpp:307
-#: TimeDialog.cpp:53
-#: effects/Noise.cpp:235
-#: effects/ToneGen.cpp:329
-#: effects/ToneGen.cpp:374
+#: SmartRecordDialog.cpp:226 SmartRecordDialog.cpp:307 TimeDialog.cpp:53
+#: effects/Noise.cpp:235 effects/ToneGen.cpp:329 effects/ToneGen.cpp:374
msgid "Duration"
msgstr "Durada"
@@ -3562,6 +3532,14 @@ msgstr "Durada"
msgid "Audacity Timer Record"
msgstr "Enregistrament programat de l'Audacity"
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
#: SmartRecordDialog.cpp:223
msgid "Recording start"
msgstr "Inici de l'enregistrament"
@@ -3601,40 +3579,23 @@ msgstr "S'està esperant per a començar l'enregistrament el %s.\n"
msgid "Audacity Timer Record - Waiting for Start"
msgstr ""
-#: TrackPanel.cpp:464
-#: TrackPanel.cpp:465
-msgid "Track Panel"
-msgstr "Quadre de pistes"
-
-#: TrackPanel.cpp:548
-#: export/ExportPCM.cpp:133
-#: prefs/QualityPrefs.cpp:97
+#: TrackPanel.cpp:548 export/ExportPCM.cpp:133 prefs/QualityPrefs.cpp:97
msgid "Other..."
msgstr "Altres..."
-#: TrackPanel.cpp:556
-#: TrackPanel.cpp:580
-#: TrackPanel.cpp:589
-#: TrackPanel.cpp:597
+#: TrackPanel.cpp:556 TrackPanel.cpp:580 TrackPanel.cpp:589 TrackPanel.cpp:597
msgid "Name..."
msgstr "Nom..."
-#: TrackPanel.cpp:558
-#: TrackPanel.cpp:582
-#: TrackPanel.cpp:593
-#: TrackPanel.cpp:599
+#: TrackPanel.cpp:558 TrackPanel.cpp:582 TrackPanel.cpp:593 TrackPanel.cpp:599
msgid "Move Track Up"
msgstr "Mou la pista amunt"
-#: TrackPanel.cpp:559
-#: TrackPanel.cpp:583
-#: TrackPanel.cpp:594
-#: TrackPanel.cpp:600
+#: TrackPanel.cpp:559 TrackPanel.cpp:583 TrackPanel.cpp:594 TrackPanel.cpp:600
msgid "Move Track Down"
msgstr "Mou la pista avall"
-#: TrackPanel.cpp:561
-#: effects/ToneGen.cpp:325
+#: TrackPanel.cpp:561 effects/ToneGen.cpp:325
msgid "Waveform"
msgstr "So en forma d'ona"
@@ -3650,18 +3611,15 @@ msgstr "Espectre logarÃtmic"
msgid "Pitch (EAC)"
msgstr "To (EAC)"
-#: TrackPanel.cpp:569
-#: TrackPanel.cpp:6091
+#: TrackPanel.cpp:569 TrackPanel.cpp:6091
msgid "Mono"
msgstr "Mono"
-#: TrackPanel.cpp:570
-#: TrackPanel.cpp:6090
+#: TrackPanel.cpp:570 TrackPanel.cpp:6090
msgid "Left Channel"
msgstr "Canal esquerre"
-#: TrackPanel.cpp:571
-#: TrackPanel.cpp:6090
+#: TrackPanel.cpp:571 TrackPanel.cpp:6090
msgid "Right Channel"
msgstr "Canal dret"
@@ -3673,12 +3631,15 @@ msgstr "Crea una pista estereofònica"
msgid "Split Stereo Track"
msgstr "Dividix la pista estereofònica"
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr ""
+
#: TrackPanel.cpp:575
msgid "Set Sample Format"
msgstr "Especifica el format de les mostres"
-#: TrackPanel.cpp:577
-#: TrackPanel.cpp:6320
+#: TrackPanel.cpp:577 TrackPanel.cpp:6320
msgid "Set Rate"
msgstr "Especifica la freqüència"
@@ -3698,8 +3659,7 @@ msgstr "Tipus de lletra..."
msgid "Set Range..."
msgstr "Especifica el rang..."
-#: TrackPanel.cpp:606
-#: toolbars/EditToolBar.cpp:135
+#: TrackPanel.cpp:606 toolbars/EditToolBar.cpp:135
msgid "Copy"
msgstr "Copia"
@@ -3745,21 +3705,13 @@ msgstr "Feu clic i arrossegueu per a moure el lÃmit esquerre de la selecció."
msgid "Click and drag to move right selection boundary."
msgstr "Feu clic i arrossegueu per a moure el lÃmit dret de la selecció."
-#: TrackPanel.cpp:1702
-#: TrackPanel.cpp:3993
-#: TrackPanel.cpp:4025
-#: TrackPanel.cpp:4280
-#: TrackPanel.cpp:6432
-#: TrackPanel.cpp:6452
+#: TrackPanel.cpp:1702 TrackPanel.cpp:3993 TrackPanel.cpp:4025
+#: TrackPanel.cpp:4280 TrackPanel.cpp:6432 TrackPanel.cpp:6452
msgid "Modified Label"
msgstr "S'ha modificat l'etiqueta"
-#: TrackPanel.cpp:1703
-#: TrackPanel.cpp:3994
-#: TrackPanel.cpp:4026
-#: TrackPanel.cpp:4281
-#: TrackPanel.cpp:6433
-#: TrackPanel.cpp:6453
+#: TrackPanel.cpp:1703 TrackPanel.cpp:3994 TrackPanel.cpp:4026
+#: TrackPanel.cpp:4281 TrackPanel.cpp:6433 TrackPanel.cpp:6453
msgid "Label Edit"
msgstr "Edita l'etiqueta"
@@ -3767,8 +3719,7 @@ msgstr "Edita l'etiqueta"
msgid "Adjusted envelope."
msgstr "S'ha ajustat l'envolupant."
-#: TrackPanel.cpp:1931
-#: prefs/MousePrefs.cpp:115
+#: TrackPanel.cpp:1931 prefs/MousePrefs.cpp:115
msgid "Envelope"
msgstr "Envolupant"
@@ -3790,9 +3741,7 @@ msgstr "dreta"
msgid "Time shifted tracks/clips %s %.02f seconds"
msgstr "S'han desplaçat les pistes o clips en direcció %s un total de %.02f segons"
-#: TrackPanel.cpp:2092
-#: prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:112
+#: TrackPanel.cpp:2092 prefs/MousePrefs.cpp:111 prefs/MousePrefs.cpp:112
#: prefs/MousePrefs.cpp:113
msgid "Time-Shift"
msgstr "Desplaçament en el temps"
@@ -3831,39 +3780,29 @@ msgid "Moved pan slider"
msgstr "S'ha mogut el regulador de posició estereofònica"
#. i18n-hint: Title of the Gain slider, used to adjust the volume
-#: TrackPanel.cpp:3485
-#: TrackPanel.cpp:5726
-#: TrackPanel.cpp:7149
+#: TrackPanel.cpp:3485 TrackPanel.cpp:5726 TrackPanel.cpp:7149
msgid "Gain"
msgstr "Guany"
#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: TrackPanel.cpp:3485
-#: TrackPanel.cpp:5664
-#: TrackPanel.cpp:7156
+#: TrackPanel.cpp:3485 TrackPanel.cpp:5664 TrackPanel.cpp:7156
msgid "Pan"
msgstr "Balanç"
-#: TrackPanel.cpp:3610
-#: TrackPanel.cpp:6385
-#: effects/ChangePitch.cpp:284
+#: TrackPanel.cpp:3610 TrackPanel.cpp:6385 effects/ChangePitch.cpp:284
msgid "up"
msgstr "amunt"
-#: TrackPanel.cpp:3614
-#: TrackPanel.cpp:6386
-#: effects/ChangePitch.cpp:284
+#: TrackPanel.cpp:3614 TrackPanel.cpp:6386 effects/ChangePitch.cpp:284
msgid "down"
msgstr "avall"
-#: TrackPanel.cpp:3621
-#: TrackPanel.cpp:6381
+#: TrackPanel.cpp:3621 TrackPanel.cpp:6381
#, c-format
msgid "Moved '%s' %s"
msgstr "S'ha mogut '%s' cap %s"
-#: TrackPanel.cpp:3624
-#: TrackPanel.cpp:6387
+#: TrackPanel.cpp:3624 TrackPanel.cpp:6387
msgid "Move Track"
msgstr "Mou la pista"
@@ -3895,14 +3834,6 @@ msgstr "S'ha ajustat la posició panorà mica"
msgid "Adjusted gain"
msgstr "S'ha ajustat el guany"
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr ""
-
#: TrackPanel.cpp:5918
msgid "Can't delete track with active audio"
msgstr "No es pot eliminar una pista quan és activa"
@@ -3923,8 +3854,7 @@ msgstr "Esquerra,"
msgid "Right, "
msgstr "Dreta,"
-#: TrackPanel.cpp:6100
-#: TrackPanel.cpp:6225
+#: TrackPanel.cpp:6100 TrackPanel.cpp:6225
#, c-format
msgid "Changed '%s' to %s"
msgstr "S'ha canviat '%s' a %s"
@@ -3938,6 +3868,11 @@ msgstr "Canal"
msgid "Split stereo track '%s'"
msgstr "Dividix la pista estereofònica '%s'"
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
#: TrackPanel.cpp:6139
#, c-format
msgid "Made '%s' a stereo track"
@@ -3964,8 +3899,7 @@ msgstr "Canvia el format"
msgid "Change lower speed limit (%) to:"
msgstr "Canvia el lÃmit inferior de velocitat (%) a:"
-#: TrackPanel.cpp:6350
-#: TrackPanel.cpp:6351
+#: TrackPanel.cpp:6350 TrackPanel.cpp:6351
msgid "Lower speed limit"
msgstr "LÃmit inferior de velocitat"
@@ -3973,8 +3907,7 @@ msgstr "LÃmit inferior de velocitat"
msgid "Change upper speed limit (%) to:"
msgstr "Canvia el lÃmit superior de velocitat (%) a:"
-#: TrackPanel.cpp:6357
-#: TrackPanel.cpp:6358
+#: TrackPanel.cpp:6357 TrackPanel.cpp:6358
msgid "Upper speed limit"
msgstr "LÃmit superior de velocitat"
@@ -4016,6 +3949,10 @@ msgstr "Nom de portada"
msgid "Face size"
msgstr "Grandà ria de portada"
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr ""
+
#: TrackPanel.cpp:7076
msgid "Mute"
msgstr "Silenci"
@@ -4049,10 +3986,7 @@ msgstr " Solo"
msgid " Select On"
msgstr " Selecció activada"
-#: VoiceKey.cpp:88
-#: VoiceKey.cpp:238
-#: VoiceKey.cpp:376
-#: VoiceKey.cpp:517
+#: VoiceKey.cpp:88 VoiceKey.cpp:238 VoiceKey.cpp:376 VoiceKey.cpp:517
msgid "Selection is too small to use voice key."
msgstr "La selecció és massa petita per a fer servir la clau de veu."
@@ -4079,8 +4013,7 @@ msgstr "Canvis de direcció -- significa: %1.4f sd: (%1.4f)\n"
msgid "Audio Track"
msgstr "Pista de so"
-#: WaveTrack.cpp:555
-#: WaveTrack.cpp:574
+#: WaveTrack.cpp:555 WaveTrack.cpp:574
msgid "There is not enough room available to paste the selection"
msgstr "No hi ha prou espai per a enganxar la selecció"
@@ -4098,10 +4031,10 @@ msgstr "Connectors 1 a %i"
msgid "Plugins %i to %i"
msgstr "Connectors %i a %i"
-#: commands/CommandManager.cpp:857
-#, fuzzy
-msgid "Disallowed for some reason. Try selecting some audio first?"
-msgstr "Ha estat rebutjat per alguna raó. Proveu-ho seleccionant abans un fragment de so."
+#: commands/CommandManager.cpp:923
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
+msgstr ""
#: commands/CommandManager.cpp:781
msgid "You can only do this when playing and recording are\n"
@@ -4168,9 +4101,7 @@ msgstr "Nou pic d'amplitud (dB):"
msgid "Allow clipping"
msgstr "Permet l'escapçament de pics"
-#: effects/Amplify.cpp:237
-#: effects/Amplify.cpp:287
-#: effects/Amplify.cpp:353
+#: effects/Amplify.cpp:237 effects/Amplify.cpp:287 effects/Amplify.cpp:353
msgid "-Infinity"
msgstr "-Infinit"
@@ -4186,9 +4117,7 @@ msgstr "S'està amplificant"
msgid "You selected a track which does not contain audio. AutoDuck can only process audio tracks."
msgstr "Heu seleccionat una pista que no conté so. L'AutoDuck només pot processar pistes de so."
-#: effects/AutoDuck.cpp:126
-#: effects/AutoDuck.cpp:138
-#: effects/AutoDuck.cpp:453
+#: effects/AutoDuck.cpp:126 effects/AutoDuck.cpp:138 effects/AutoDuck.cpp:453
#: effects/AutoDuck.cpp:570
msgid "Auto Duck"
msgstr "Auto Duck"
@@ -4210,17 +4139,11 @@ msgid "Maximum pause:"
msgstr "Pausa mà xima:"
#. i18n-hint: Name of time display format that shows time in seconds
-#: effects/AutoDuck.cpp:494
-#: effects/AutoDuck.cpp:499
-#: effects/AutoDuck.cpp:504
-#: effects/AutoDuck.cpp:509
-#: effects/AutoDuck.cpp:514
-#: prefs/AudioIOPrefs.cpp:166
-#: prefs/AudioIOPrefs.cpp:174
-#: prefs/AudioIOPrefs.cpp:176
-#: prefs/AudioIOPrefs.cpp:201
-#: prefs/AudioIOPrefs.cpp:203
-#: widgets/TimeTextCtrl.cpp:263
+#: effects/AutoDuck.cpp:494 effects/AutoDuck.cpp:499 effects/AutoDuck.cpp:504
+#: effects/AutoDuck.cpp:509 effects/AutoDuck.cpp:514
+#: prefs/AudioIOPrefs.cpp:166 prefs/AudioIOPrefs.cpp:174
+#: prefs/AudioIOPrefs.cpp:176 prefs/AudioIOPrefs.cpp:201
+#: prefs/AudioIOPrefs.cpp:203 widgets/TimeTextCtrl.cpp:263
msgid "seconds"
msgstr "segons"
@@ -4240,8 +4163,7 @@ msgstr "Longitud del fà ding final interior:"
msgid "Inner fade up length:"
msgstr "Longitud del fà ding inicial interior:"
-#: effects/AutoDuck.cpp:521
-#: effects/Compressor.cpp:484
+#: effects/AutoDuck.cpp:521 effects/Compressor.cpp:484
msgid "Threshold:"
msgstr "Llindar:"
@@ -4261,12 +4183,9 @@ msgstr "Auto Duck..."
msgid "Processing Auto Duck..."
msgstr "S'està processant l'Auto Duck..."
-#: effects/AvcCompressor.cpp:738
-#: effects/VST/VSTEffect.cpp:448
-#: effects/audiounits/AudioUnitEffect.cpp:877
-#: effects/nyquist/Nyquist.cpp:1042
-#: widgets/ErrorDialog.cpp:79
-#: widgets/ErrorDialog.cpp:105
+#: effects/AvcCompressor.cpp:738 effects/VST/VSTEffect.cpp:448
+#: effects/audiounits/AudioUnitEffect.cpp:877 effects/nyquist/Nyquist.cpp:1042
+#: widgets/ErrorDialog.cpp:79 widgets/ErrorDialog.cpp:105
#: widgets/Warning.cpp:67
msgid "OK"
msgstr "D'acord"
@@ -4331,14 +4250,12 @@ msgstr "Canvia el to sense canviar el temps"
#. i18n-hint: && in here is an escape character to get a single & on
#. * screen, so keep it as is
-#: effects/ChangePitch.cpp:254
-#: effects/ChangeSpeed.cpp:313
+#: effects/ChangePitch.cpp:254 effects/ChangeSpeed.cpp:313
#: effects/ChangeTempo.cpp:180
msgid "by Vaughan Johnson && Dominic Mazzoni"
msgstr "per Vaughan Johnson && Dominic Mazzoni"
-#: effects/ChangePitch.cpp:259
-#: effects/ChangeTempo.cpp:185
+#: effects/ChangePitch.cpp:259 effects/ChangeTempo.cpp:185
msgid "using SoundTouch, by Olli Parviainen"
msgstr "S'està emprant el SoundTouch, d'Olli Parviainen"
@@ -4387,10 +4304,8 @@ msgstr ""
msgid "From frequency in hertz"
msgstr ""
-#: effects/ChangePitch.cpp:291
-#: effects/ChangePitch.cpp:337
-#: effects/ChangeSpeed.cpp:377
-#: effects/ChangeTempo.cpp:239
+#: effects/ChangePitch.cpp:291 effects/ChangePitch.cpp:337
+#: effects/ChangeSpeed.cpp:377 effects/ChangeTempo.cpp:239
#: effects/ChangeTempo.cpp:270
msgid "to"
msgstr "fins a"
@@ -4399,8 +4314,7 @@ msgstr "fins a"
msgid "To frequency in seconds"
msgstr ""
-#: effects/ChangePitch.cpp:360
-#: effects/ChangeSpeed.cpp:331
+#: effects/ChangePitch.cpp:360 effects/ChangeSpeed.cpp:331
#: effects/ChangeTempo.cpp:198
msgid "Percent Change:"
msgstr "Canvi percentual:"
@@ -4418,8 +4332,7 @@ msgstr "Canvia el to..."
msgid "Changing Pitch"
msgstr "S'està canviant el to"
-#: effects/ChangeSpeed.cpp:53
-#: effects/ChangeTempo.cpp:55
+#: effects/ChangeSpeed.cpp:53 effects/ChangeTempo.cpp:55
#, c-format
msgid "Applied effect: %s %.1f%%"
msgstr "S'ha aplicat l'efecte: %s %.1f%%"
@@ -4571,12 +4484,11 @@ msgstr "Temps de caiguda:"
msgid "Decay Time"
msgstr ""
-#: effects/Compressor.cpp:516
-msgid "Normalize to 0dB after compressing"
-msgstr "Normalitza a 0 dB després de la compressió"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
+msgstr ""
#: effects/Compressor.cpp:563
-#, c-format
#, fuzzy
msgid "Threshold %d dB"
msgstr "Llindar: %d dB"
@@ -4607,7 +4519,6 @@ msgid "%.1f:1"
msgstr ""
#: effects/Compressor.cpp:575
-#, c-format
#, fuzzy
msgid "Attack Time %.1f secs"
msgstr "Temps d'atac: %.1f segons"
@@ -4618,7 +4529,6 @@ msgid "%.1f secs"
msgstr ""
#: effects/Compressor.cpp:578
-#, c-format
#, fuzzy
msgid "Decay Time %.1f secs"
msgstr "Temps de caiguda: %.1f segons"
@@ -4631,6 +4541,10 @@ msgstr "Compressor..."
msgid "Applying Dynamic Range Compression..."
msgstr "S'està aplicant la compressió de rang dinà mic..."
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
msgstr ""
@@ -4650,19 +4564,6 @@ msgid "Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr ""
-
#: effects/Contrast.cpp:231
msgid "Contrast Analyzer"
msgstr ""
@@ -4671,15 +4572,12 @@ msgstr ""
msgid "Parameters"
msgstr ""
-#: effects/ToneGen.cpp:361
-#: toolbars/ControlToolBar.cpp:185
+#: effects/ToneGen.cpp:361 toolbars/ControlToolBar.cpp:185
msgid "Start"
msgstr "Inici"
-#: effects/ToneGen.cpp:362
-#: toolbars/ControlToolBar.cpp:188
-#: toolbars/SelectionBar.cpp:149
-#: toolbars/SelectionBar.cpp:254
+#: effects/ToneGen.cpp:362 toolbars/ControlToolBar.cpp:188
+#: toolbars/SelectionBar.cpp:149 toolbars/SelectionBar.cpp:254
msgid "End"
msgstr "Final"
@@ -4699,6 +4597,11 @@ msgstr ""
msgid "Foreground end time"
msgstr ""
+#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
+#: effects/Contrast.cpp:289
+msgid "Measured"
+msgstr ""
+
#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
msgid "Use selection"
msgstr ""
@@ -4723,8 +4626,7 @@ msgstr ""
msgid "Contrast Result:"
msgstr ""
-#: Tags.cpp:829
-#: Tags.cpp:1981
+#: Tags.cpp:829 Tags.cpp:1981
msgid "Reset"
msgstr "Restablix"
@@ -4744,16 +4646,8 @@ msgstr ""
msgid "Help for WCAG2 Audio Contrast Analyzer"
msgstr ""
-#: toolbars/ControlToolBar.cpp:82
-msgid "Control"
-msgstr "Control"
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
msgstr ""
#: effects/Contrast.cpp:328 effects/Contrast.cpp:336 effects/Contrast.cpp:344
@@ -4864,18 +4758,6 @@ msgstr ""
msgid "Data gathered"
msgstr ""
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr ""
-
#: effects/DtmfGen.cpp:48
msgid "DTMF Tone Generator"
msgstr "Generador de tons DTMF"
@@ -4888,9 +4770,7 @@ msgstr "per Salvo Ventura (2006)"
msgid "DTMF sequence:"
msgstr "Seqüència DTMF:"
-#: effects/DtmfGen.cpp:446
-#: effects/Noise.cpp:255
-#: effects/ToneGen.cpp:328
+#: effects/DtmfGen.cpp:446 effects/Noise.cpp:255 effects/ToneGen.cpp:328
#: effects/ToneGen.cpp:365
msgid "Amplitude (0-1)"
msgstr "Amplitud (0-1)"
@@ -4911,9 +4791,7 @@ msgstr "Cicle de treball:"
msgid "Tone duration:"
msgstr "Durada dels tons:"
-#: effects/DtmfGen.cpp:482
-#: effects/DtmfGen.cpp:484
-#: effects/DtmfGen.cpp:560
+#: effects/DtmfGen.cpp:482 effects/DtmfGen.cpp:484 effects/DtmfGen.cpp:560
#: effects/DtmfGen.cpp:561
msgid "ms"
msgstr "ms"
@@ -4995,8 +4873,7 @@ msgstr "Cosinus"
msgid "Cubic"
msgstr "Cúbica"
-#: effects/Equalization.cpp:362
-#: effects/Equalization.cpp:412
+#: effects/Equalization.cpp:362 effects/Equalization.cpp:412
msgid "Equalization"
msgstr "Equalització"
@@ -5008,6 +4885,10 @@ msgstr "S'ha produït un error en llegir la corba d'equalització"
msgid "custom"
msgstr "personalitzat"
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr ""
+
#. i18n-hint: && in here is an escape character to get a single &
#. * on screen, so keep it as is
#: effects/Equalization.cpp:1087
@@ -5046,8 +4927,7 @@ msgstr "Longitud del filtre:"
msgid "Select curve:"
msgstr "Tipus de corba:"
-#: effects/Equalization.cpp:1259
-#: effects/Equalization.cpp:2498
+#: effects/Equalization.cpp:1259 effects/Equalization.cpp:2498
#: export/ExportMultiple.cpp:826
msgid "Save As..."
msgstr "Anomena i alça..."
@@ -5164,8 +5044,7 @@ msgstr "El més fort"
msgid "by Lynn Allan"
msgstr "per Lynn Allan"
-#: effects/Leveller.cpp:226
-#: effects/Leveller.cpp:231
+#: effects/Leveller.cpp:226 effects/Leveller.cpp:231
msgid "Degree of Leveling"
msgstr "Grau d'anivellament"
@@ -5214,10 +5093,6 @@ msgstr ""
msgid "Analyser"
msgstr ""
-#: toolbars/MixerToolBar.cpp:60
-msgid "Mixer"
-msgstr "Mesclador"
-
#: effects/LoadEffects.cpp:116
msgid "Simulator"
msgstr ""
@@ -5457,15 +5332,9 @@ msgstr "S'està traient el soroll"
msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr "S'ha aplicat l'efecte: %s desplaçament dc eliminat = %s, amplitud normalitzada = %s"
-#: effects/Normalize.cpp:74
-#: effects/Normalize.cpp:75
-msgid "false"
-msgstr "fals"
-
#. i18n-hint: true here means that the option was
#. * selected. Opposite false if not selected
-#: effects/Normalize.cpp:74
-#: effects/Normalize.cpp:75
+#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
msgid "true"
msgstr "cert"
@@ -5523,8 +5392,7 @@ msgstr ""
msgid "Dry Wet"
msgstr ""
-#: effects/Phaser.cpp:264
-#: effects/Wahwah.cpp:221
+#: effects/Phaser.cpp:264 effects/Wahwah.cpp:221
msgid "LFO Frequency (Hz):"
msgstr "Freqüència LFO (Hz):"
@@ -5532,8 +5400,7 @@ msgstr "Freqüència LFO (Hz):"
msgid "LFO frequency in hertz"
msgstr ""
-#: effects/Phaser.cpp:280
-#: effects/Wahwah.cpp:237
+#: effects/Phaser.cpp:280 effects/Wahwah.cpp:237
msgid "LFO Start Phase (deg.):"
msgstr "Fase d'inici LFO (graus):"
@@ -5594,8 +5461,7 @@ msgstr "Repetit %d vegades"
msgid "Tracks are too long to repeat the selection."
msgstr "Les pistes són massa llargues per a repetir la selecció."
-#: effects/Repeat.cpp:76
-#: effects/Repeat.cpp:80
+#: effects/Repeat.cpp:76 effects/Repeat.cpp:80
msgid "Repeat"
msgstr "Repetix"
@@ -5608,8 +5474,7 @@ msgstr "Nombre de repeticions:"
msgid "New selection length: hh:mm:ss"
msgstr ""
-#: effects/Repeat.cpp:207
-#: effects/Repeat.cpp:237
+#: effects/Repeat.cpp:207 effects/Repeat.cpp:237
msgid "New selection length: "
msgstr "Longitud de selecció nova:"
@@ -5682,9 +5547,7 @@ msgstr "Netejador de pics..."
msgid "Applying Spike Cleaner..."
msgstr "S'està aplicant el netejador de pics..."
-#: Menus.cpp:358
-#: Menus.cpp:564
-#: effects/StereoToMono.h:23
+#: Menus.cpp:358 Menus.cpp:564 effects/StereoToMono.h:23
msgid "&Stereo to Mono"
msgstr "E&stèreo a mono"
@@ -5741,8 +5604,7 @@ msgstr ""
msgid "Applied effect: Generate %s wave %s, frequency = %.2f Hz, amplitude = %.2f, %.6lf seconds"
msgstr "S'ha aplicat l'efecte: Genera %s ona o ones %s, de freqüència = %.2f Hz, amplitud = %.2f, %.6lf segons"
-#: effects/ToneGen.cpp:75
-#: widgets/Meter.cpp:379
+#: effects/ToneGen.cpp:75 widgets/Meter.cpp:379
msgid "Linear"
msgstr "Lineal"
@@ -5774,8 +5636,7 @@ msgstr "Dent de serra"
msgid "Square, no alias"
msgstr "Quadrada, sense à lies"
-#: effects/ToneGen.cpp:327
-#: effects/ToneGen.cpp:363
+#: effects/ToneGen.cpp:327 effects/ToneGen.cpp:363
msgid "Frequency (Hz)"
msgstr "Freqüència (Hz)"
@@ -5823,28 +5684,43 @@ msgstr "S'està generant un to"
msgid "All tracks must have the same sample rate"
msgstr "Totes les pistes han de tenir la mateixa freqüència de mostreig"
-#: effects/TruncSilence.cpp:113
-#: effects/TruncSilence.cpp:322
+#: effects/TruncSilence.cpp:113 effects/TruncSilence.cpp:322
msgid "Truncate Silence"
msgstr "Trunca un silenci"
-#: effects/TruncSilence.cpp:346
-msgid "Max silence duration:"
-msgstr "Durada mà xima del silenci:"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr ""
-#: effects/TruncSilence.cpp:349
-#: prefs/AudioIOPrefs.cpp:190
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:349 prefs/AudioIOPrefs.cpp:190
#: prefs/AudioIOPrefs.cpp:193
msgid "milliseconds"
msgstr "mil·lisegons"
+#: effects/TruncSilence.cpp:346
+msgid "Max silence duration:"
+msgstr "Durada mà xima del silenci:"
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ""
+
#: effects/TruncSilence.cpp:351
msgid "Threshold for silence:"
msgstr "Llindar de silenci:"
-#: effects/TruncSilence.cpp:376
-msgid " Duration must be at least 1 millisecond"
-msgstr " La durada ha de ser d'almenys 1 mil·lisegon"
+#: effects/TruncSilence.cpp:506
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
+msgstr ""
#: effects/TruncSilence.h:28
msgid "Truncate Silence..."
@@ -5854,17 +5730,55 @@ msgstr "Trunca un silenci..."
msgid "Truncating Silence..."
msgstr "S'està truncant el silenci..."
-#: effects/VST/VSTEffect.cpp:165
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "Els efectes VST no es poden aplicar a les pistes estereofòniques quan els dos canals no coincideixen."
+#: effects/ladspa/LadspaEffect.cpp:608
+msgid "Effect Settings"
+msgstr "Parà metres de l'efecte"
+
+#: effects/ladspa/LadspaEffect.cpp:573 effects/ladspa/LadspaEffect.cpp:581
+#: prefs/GUIPrefs.cpp:51 prefs/QualityPrefs.cpp:72
+msgid "None"
+msgstr "Cap"
+
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
-#: effects/VST/VSTEffect.cpp:180
-msgid "Can't process replacing"
-msgstr "No es pot processar la substitució"
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
-#: effects/VST/VSTEffect.cpp:403
-msgid "VST Plug-in parameters:"
-msgstr "Parà metres del complement VST:"
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr ""
#: effects/Wahwah.cpp:61
#, c-format
@@ -5913,22 +5827,10 @@ msgstr "S'està aplicant l'efecte: %s"
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr "Els efectes complementaris no es poden aplicar a pistes estereofòniques quan els dos canals no coincideixen."
-#: effects/ladspa/LadspaEffect.cpp:573
-#: effects/ladspa/LadspaEffect.cpp:581
-#: prefs/GUIPrefs.cpp:51
-#: prefs/QualityPrefs.cpp:72
-msgid "None"
-msgstr "Cap"
-
-#: effects/ladspa/LadspaEffect.cpp:575
-#: effects/vamp/VampEffect.cpp:384
+#: effects/ladspa/LadspaEffect.cpp:575 effects/vamp/VampEffect.cpp:384
msgid "Author: "
msgstr "Autor:"
-#: effects/ladspa/LadspaEffect.cpp:608
-msgid "Effect Settings"
-msgstr "Parà metres de l'efecte"
-
#: effects/ladspa/LadspaEffect.cpp:699
msgid "Length (seconds)"
msgstr "Longitud (segons)"
@@ -5949,8 +5851,7 @@ msgstr ""
msgid "Applying Nyquist Effect..."
msgstr "S'està aplicant l'efecte Nyquist..."
-#: effects/nyquist/Nyquist.cpp:259
-#: effects/nyquist/Nyquist.cpp:321
+#: effects/nyquist/Nyquist.cpp:259 effects/nyquist/Nyquist.cpp:321
msgid "Nyquist Prompt..."
msgstr "LÃnia d'ordes del Nyquist..."
@@ -5970,8 +5871,7 @@ msgstr "Nyquist"
msgid "Nyquist Output: "
msgstr "Eixida del Nyquist:"
-#: effects/nyquist/Nyquist.cpp:598
-#: effects/nyquist/Nyquist.cpp:609
+#: effects/nyquist/Nyquist.cpp:598 effects/nyquist/Nyquist.cpp:609
msgid "Nyquist returned the value:"
msgstr "Valor retornat pel Nyquist:"
@@ -6079,8 +5979,7 @@ msgstr " - Dret"
msgid "Mixer Panel"
msgstr ""
-#: export/Export.cpp:976
-#: export/Export.cpp:1021
+#: export/Export.cpp:976 export/Export.cpp:1021
#, c-format
msgid "Output Channels: %2d"
msgstr "Canals d'eixida: %2d"
@@ -6110,8 +6009,7 @@ msgstr "Les dades seran canalitzades cap al canal d'entrada està ndard. \"%f\" s
msgid "(external program)"
msgstr "(programa extern)"
-#: export/ExportCL.cpp:250
-#: export/ExportPCM.cpp:367
+#: export/ExportCL.cpp:250 export/ExportPCM.cpp:367
#, c-format
msgid "Cannot export audio to %s"
msgstr "No es port exportar el so a %s"
@@ -6128,9 +6026,21 @@ msgstr "S'està exportant tot el projecte utilitzant el codificador de lÃnia d'
msgid "Command Output"
msgstr "Eixida de l'orde"
-#: export/ExportFFmpeg.cpp:59
+#: export/ExportFFmpeg.cpp:61
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
#: export/ExportFFmpeg.cpp:394
@@ -6198,6 +6108,10 @@ msgstr ""
msgid "AAC Export Setup"
msgstr ""
+#: export/ExportOGG.cpp:86
+msgid "Quality:"
+msgstr "Qualitat:"
+
#: export/ExportFFmpegDialogs.cpp:217
msgid "Specify AMR-NB Options"
msgstr ""
@@ -6331,12 +6245,8 @@ msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n
"Recommended - 192000"
msgstr ""
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr "Qualitat:"
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid "Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
@@ -6355,10 +6265,10 @@ msgstr ""
msgid "Cutoff Bandwidth:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:947
+#: export/ExportFFmpegDialogs.cpp:936
msgid "Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:949
@@ -6547,12 +6457,12 @@ msgstr ""
msgid "AC3 Files (FFmpeg)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:56
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:57
@@ -6663,6 +6573,17 @@ msgstr "Resolució:"
msgid "FLAC Files"
msgstr "Fitxers FLAC"
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
#: export/ExportFLAC.cpp:310
msgid "Exporting the selected audio as FLAC"
msgstr "S'està exportant el so seleccionat com a FLAC"
@@ -6687,9 +6608,7 @@ msgstr "Fitxers MP2"
msgid "Cannot export MP2 with this sample rate and bit rate"
msgstr "No es pot exportar a MP2 amb estos valors de freqüència de mostreig i cabal de bits"
-#: export/ExportMP2.cpp:240
-#: export/ExportMP3.cpp:1768
-#: export/ExportOGG.cpp:183
+#: export/ExportMP2.cpp:240 export/ExportMP3.cpp:1768 export/ExportOGG.cpp:183
msgid "Unable to open target file for writing"
msgstr "No s'ha pogut obrir el fitxer de destinació per a escriure-hi"
@@ -6703,9 +6622,7 @@ msgstr "S'està exportant el so seleccionat a %d kbps"
msgid "Exporting entire file at %d kbps"
msgstr "S'està exportant tot el fitxer a %d kbps"
-#: export/ExportMP3.cpp:221
-#: export/ExportMP3.cpp:239
-#: export/ExportMP3.cpp:253
+#: export/ExportMP3.cpp:221 export/ExportMP3.cpp:239 export/ExportMP3.cpp:253
msgid "kbps"
msgstr "kbps"
@@ -6721,9 +6638,7 @@ msgstr "(Fitxers més petits)"
msgid "Fast"
msgstr "RÃ pid"
-#: export/ExportMP3.cpp:244
-#: export/ExportMP3.cpp:250
-#: prefs/GUIPrefs.cpp:41
+#: export/ExportMP3.cpp:244 export/ExportMP3.cpp:250 prefs/GUIPrefs.cpp:41
#: prefs/GUIPrefs.cpp:49
msgid "Standard"
msgstr "Està ndard"
@@ -6768,8 +6683,7 @@ msgstr "Mitjana"
msgid "Constant"
msgstr "Constant"
-#: export/ExportMP3.cpp:373
-#: prefs/QualityPrefs.cpp:42
+#: export/ExportMP3.cpp:373 prefs/QualityPrefs.cpp:42
#: prefs/QualityPrefs.cpp:43
msgid "Quality"
msgstr "Qualitat"
@@ -6890,10 +6804,8 @@ msgstr "La combinació de freqüència de mostreig (%d) i cabal de bits (%d kbps
msgid "MP3 export library not found"
msgstr ""
-#: export/ExportMultiple.cpp:95
-#: export/ExportMultiple.cpp:374
-#: export/ExportMultiple.cpp:598
-#: export/ExportMultiple.cpp:765
+#: export/ExportMultiple.cpp:95 export/ExportMultiple.cpp:374
+#: export/ExportMultiple.cpp:598 export/ExportMultiple.cpp:765
msgid "Export Multiple"
msgstr "Exporta múltiples fitxers"
@@ -6923,11 +6835,6 @@ msgstr "Opcions..."
msgid "Export location:"
msgstr "Ubicació de l'exportació:"
-#: export/ExportMultiple.cpp:216
-#: prefs/DirectoriesPrefs.cpp:92
-msgid "Choose..."
-msgstr "Navega..."
-
#: export/ExportMultiple.cpp:217
msgid "Create"
msgstr "Crea"
@@ -6952,10 +6859,6 @@ msgstr "Nom del primer fitxer:"
msgid "First file name"
msgstr ""
-#: export/ExportMultiple.cpp:258
-msgid "Tracks"
-msgstr "Pistes"
-
#: export/ExportMultiple.cpp:265
msgid "Name files:"
msgstr "Anomena els fitxers:"
@@ -6989,6 +6892,35 @@ msgstr "S'ha creat \"%s\" amb èxit."
msgid "Choose a location to save the exported files"
msgstr "Trieu una ubicació per a alçar-hi els fitxers exportats"
+#: export/ExportMultiple.cpp:524
+#, c-format
+msgid "Successfully exported the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:527
+#, c-format
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr ""
+
#: export/ExportMultiple.cpp:470
#, c-format
msgid "\"%s\" doesn't exist.\n"
@@ -6998,23 +6930,10 @@ msgstr "\"%s\" no existix.\n"
"\n"
"Voleu crear-lo?"
-#: export/ExportMultiple.cpp:568
-#: export/ExportMultiple.cpp:703
+#: export/ExportMultiple.cpp:568 export/ExportMultiple.cpp:703
msgid "Edit metadata"
msgstr "Edita les metadades"
-#: export/ExportMultiple.cpp:595
-#: export/ExportMultiple.cpp:762
-#, c-format
-msgid "Successfully exported %d file(s)."
-msgstr "S'ha realitzat correctament l'exportació de %d fitxer(s)."
-
-#: export/ExportMultiple.cpp:596
-#: export/ExportMultiple.cpp:763
-#, c-format
-msgid "Something went wrong after exporting %d file(s)."
-msgstr "Alguna cosa ha anat malament després d'exportar %d fitxer(s)."
-
#: export/ExportMultiple.cpp:825
#, c-format
msgid "Label %s is not a legal file name. You cannot use any of: %s\n"
@@ -7183,7 +7102,6 @@ msgstr "\"%s\" és un fitxer de tipus Advanced Audio Coding. \n"
"HaurÃeu de convertir-lo a algun format de so que estiga suportat, com ara WAV o AIFF."
#: import/Import.cpp:271
-#, c-format
#, fuzzy
msgid "\"%s\" is an encrypted audio file. \n"
"These typically are from an online music store. \n"
@@ -7287,6 +7205,10 @@ msgstr ""
msgid "FLAC files"
msgstr "Fitxers FLAC"
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr ""
+
#: import/ImportLOF.cpp:92
msgid "List of Files in basic text format"
msgstr "Llistat de fitxers en un format bà sic de text"
@@ -7297,9 +7219,7 @@ msgid "Invalid window offset in LOF file."
msgstr "Indicació incorrecta de posició de finestra en el fitxer LOF"
#. i18n-hint: You do not need to translate "LOF"
-#: import/ImportLOF.cpp:320
-#: import/ImportLOF.cpp:341
-#: import/ImportLOF.cpp:415
+#: import/ImportLOF.cpp:320 import/ImportLOF.cpp:341 import/ImportLOF.cpp:415
#: import/ImportLOF.cpp:435
msgid "LOF Error"
msgstr "Error de LOF"
@@ -7355,8 +7275,7 @@ msgstr "Encapçalament invà lid de Vorbis bistream"
msgid "Internal logic fault"
msgstr "Avaria de lògica interna."
-#: export/ExportPCM.cpp:320
-#: import/ImportPCM.cpp:47
+#: export/ExportPCM.cpp:320 import/ImportPCM.cpp:47
msgid "WAV, AIFF, and other uncompressed types"
msgstr "WAV, AIFF i altres tipus de fitxers no comprimits"
@@ -7449,36 +7368,41 @@ msgstr ""
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr ""
-#: prefs/AudioIOPrefs.cpp:41
-#: prefs/AudioIOPrefs.cpp:42
-msgid "Audio I/O"
-msgstr "E/S de so"
+#: prefs/BatchPrefs.cpp:55 prefs/BatchPrefs.cpp:56
+msgid "Batch"
+msgstr "Processos en cadena"
-#: prefs/AudioIOPrefs.cpp:100
-msgid "1 (Mono)"
-msgstr "1 (Mono)"
+#: prefs/BatchPrefs.cpp:77 prefs/GUIPrefs.cpp:92
+msgid "Behaviors"
+msgstr "Comportaments"
-#: prefs/AudioIOPrefs.cpp:101
-msgid "2 (Stereo)"
-msgstr "2 (Estèreo)"
+#: prefs/BatchPrefs.cpp:80 prefs/GUIPrefs.cpp:129
+msgid "&Don't apply effects in batch mode"
+msgstr "&No apliquis els efectes quan estiguis en mode de procés per lots"
-#: prefs/AudioIOPrefs.cpp:115
-msgid "Playback"
-msgstr "Reproducció"
+#: prefs/BatchPrefs.cpp:83 prefs/GUIPrefs.cpp:132
+msgid "Cl&eanSpeech Mode (Customized GUI)"
+msgstr "Mode Cl&eanSpeech (Entorn personalitzat)"
-#: prefs/AudioIOPrefs.cpp:119
-#: prefs/AudioIOPrefs.cpp:137
-#: toolbars/DeviceToolBar.cpp:57
-msgid "Device"
-msgstr "Dispositiu"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:34 prefs/GUIPrefs.cpp:35
+msgid "Interface"
+msgstr "InterfÃcie"
+
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
+msgstr ""
#: prefs/AudioIOPrefs.cpp:122
msgid "Using:"
msgstr "Emprant:"
-#: prefs/AudioIOPrefs.cpp:123
-msgid "Portaudio v"
-msgstr "Portaudio v"
+#: prefs/AudioIOPrefs.cpp:115
+msgid "Playback"
+msgstr "Reproducció"
#: prefs/AudioIOPrefs.cpp:133
msgid "Recording"
@@ -7488,100 +7412,15 @@ msgstr "Enregistrament"
msgid "Channels"
msgstr "Canals"
-#: prefs/AudioIOPrefs.cpp:145
-msgid "Playthrough"
-msgstr "Interpreta a través"
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr "Reproducció a través del &Maquinari: Interpreta una pista nova mentre s'està enregistrant."
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr "Reproducció a través del &programari: Interpreta una nova pista mentre s'enregistra"
-
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:162
-msgid "Effects Preview"
-msgstr "Previsualització d'efectes"
-
-#: prefs/AudioIOPrefs.cpp:165
-msgid "Length of preview:"
-msgstr "Longitud de la vista preliminar:"
-
-#: prefs/AudioIOPrefs.cpp:170
-msgid "Cut Preview"
-msgstr "Previsualitza el tall"
-
-#: prefs/AudioIOPrefs.cpp:173
-msgid "Preview before cut region:"
-msgstr "Vista preliminar abans de la regió retallada:"
-
-#: prefs/AudioIOPrefs.cpp:175
-msgid "Preview after cut region:"
-msgstr "Vista preliminar després de la regió retallada:"
-
-#: prefs/AudioIOPrefs.cpp:183
-msgid "Latency"
-msgstr "Latència"
-
-#: prefs/AudioIOPrefs.cpp:189
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
-msgstr "Ãudio a la memòria intermèdia:\n"
-"(valor més alt = més latència)"
-
-#: prefs/AudioIOPrefs.cpp:192
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr "Correcció de latència:\n"
-"(valor negatiu = arrere)"
-
-#: prefs/AudioIOPrefs.cpp:197
-msgid "Seek Time when playing"
-msgstr "Desplaçament en el temps mentre s'interpreta"
-
-#: prefs/AudioIOPrefs.cpp:200
-msgid "Short period:"
-msgstr "PerÃode curt:"
-
-#: prefs/AudioIOPrefs.cpp:202
-msgid "Long period:"
-msgstr "PerÃode llarg:"
-
-#: prefs/BatchPrefs.cpp:55
-#: prefs/BatchPrefs.cpp:56
-msgid "Batch"
-msgstr "Processos en cadena"
-
-#: prefs/BatchPrefs.cpp:77
-#: prefs/GUIPrefs.cpp:92
-msgid "Behaviors"
-msgstr "Comportaments"
-
-#: prefs/BatchPrefs.cpp:80
-#: prefs/GUIPrefs.cpp:129
-msgid "&Don't apply effects in batch mode"
-msgstr "&No apliquis els efectes quan estiguis en mode de procés per lots"
+#: prefs/AudioIOPrefs.cpp:100
+msgid "1 (Mono)"
+msgstr "1 (Mono)"
-#: prefs/BatchPrefs.cpp:83
-#: prefs/GUIPrefs.cpp:132
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr "Mode Cl&eanSpeech (Entorn personalitzat)"
+#: prefs/AudioIOPrefs.cpp:101
+msgid "2 (Stereo)"
+msgstr "2 (Estèreo)"
-#: prefs/DirectoriesPrefs.cpp:55
-#: prefs/DirectoriesPrefs.cpp:56
+#: prefs/DirectoriesPrefs.cpp:55 prefs/DirectoriesPrefs.cpp:56
#: prefs/PrefsDialog.cpp:279
msgid "Directories"
msgstr "Directoris"
@@ -7598,34 +7437,31 @@ msgstr "Posició:"
msgid "Free Space:"
msgstr "Espai lliure:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr "Alça automà ticament"
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr "Alça automà ticament una còpia del projecte en una altra carpeta"
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
-msgstr "Alça automà ticament cada:"
-
-#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
-msgstr "minuts"
-
#: prefs/DirectoriesPrefs.cpp:110
msgid "Audio cache"
msgstr "Memòria intermèdia de so"
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "Play and/or record using RAM (useful for slow drives)"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
#: prefs/DirectoriesPrefs.cpp:121
msgid "Choose a location to place the temporary directory"
msgstr "Trieu la ubicació del directori temporal"
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: prefs/DirectoriesPrefs.cpp:166
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -7644,230 +7480,145 @@ msgstr "No es pot escriure al directori %s"
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "Els canvis en el directori temporal tindran efecte en reiniciar l'Audacity"
-#: prefs/FileFormatPrefs.cpp:48
-#: prefs/FileFormatPrefs.cpp:49
-msgid "Import / Export"
-msgstr "Importa / Exporta"
-
-#: prefs/FileFormatPrefs.cpp:77
-msgid "MP3 Export Library"
-msgstr "Biblioteca d'exportació a MP3"
-
-#: prefs/FileFormatPrefs.cpp:80
-msgid "MP3 Library Version:"
-msgstr "Versió de la biblioteca MP3:"
+#: prefs/GUIPrefs.cpp:42
+msgid "In Browser"
+msgstr "Al navegador"
-#: prefs/FileFormatPrefs.cpp:86
-msgid "MP3 Library:"
-msgstr "Biblioteca MP3:"
+#: prefs/GUIPrefs.cpp:43
+msgid "From Internet"
+msgstr "D'Internet"
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:91
-msgid "LAME MP3 Library:"
-msgstr "Biblioteca MP3 LAME:"
-
-#: prefs/FileFormatPrefs.cpp:94
-msgid "&Download"
-msgstr "&Descarrega"
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:136
-#, fuzzy
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr "Nota: Les opcions referents a la qualitat de l'exportació es poden escollir fent clic al botó Opcions del dià leg Exporta.\n"
-
-#: prefs/FileFormatPrefs.cpp:100
-msgid "When importing audio files"
-msgstr "Quan importis fitxers de so"
-
-#: prefs/FileFormatPrefs.cpp:103
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
-msgstr "&Fes una còpia del fitxer sense comprimir abans d'editar-lo (més segur)"
-
-#: prefs/FileFormatPrefs.cpp:104
-msgid "&Read uncompressed audio files directly from the original (faster)"
-msgstr "&Llig directament el so sense comprimir del fitxer original (més rà pid)"
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "&Normalize all tracks in project"
-msgstr "&Normalitza totes les pistes del projecte"
-
-#: prefs/FileFormatPrefs.cpp:111
-msgid "When saving a project that depends on other audio files"
-msgstr "En alçar un projecte que depèn d'altres fitxers de so"
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
+msgstr ""
-#: prefs/FileFormatPrefs.cpp:114
-msgid "Always © all audio into project (safest)"
-msgstr "&Copia sempre tot el so dins del projecte (el més segur)"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
+msgstr ""
-#: prefs/FileFormatPrefs.cpp:115
-msgid "&Do not copy any audio"
-msgstr "&No copiïs cap so"
+#: prefs/GUIPrefs.cpp:141
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 dB (rang estret de valors, per a editar sons amb molta amplitud)"
-#: prefs/FileFormatPrefs.cpp:116
-msgid "&Ask user"
-msgstr "Pregunt&a a l'usuari/Ã ria"
+#: prefs/GUIPrefs.cpp:142
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 dB (rang PCM de les mostres de 8 bits)"
-#: prefs/FileFormatPrefs.cpp:120
-msgid "When exporting tracks to an audio file"
-msgstr "Quan s'exportin pistes a un fitxer de so"
+#: prefs/GUIPrefs.cpp:143
+msgid "-60 dB (PCM range of 10 bit samples)"
+msgstr "-60 dB (rang PCM de les mostres de 10 bits)"
-#: prefs/FileFormatPrefs.cpp:123
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
-msgstr "Mescla sempre totes les pistes en un canal estereofònic o monofònic"
+#: prefs/GUIPrefs.cpp:144
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 dB (rang PCM de les mostres de 16 bits)"
-#: prefs/FileFormatPrefs.cpp:124
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
-msgstr "&Fes servir una mescla personalitzada (per exemple, per a exportar a un fitxer multicanal 5.1)"
+#: prefs/GUIPrefs.cpp:145
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 dB (lÃmit aproximat de percepció de l'oïda humana)"
-#: prefs/FileFormatPrefs.cpp:126
-msgid "S&how Metadata Editor prior to export step"
-msgstr "Mo&stra l'editor de metadades abans d'iniciar l'exportació"
+#: prefs/GUIPrefs.cpp:146
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB (rang PCM de les mostres de 24 bits)"
-#: prefs/GUIPrefs.cpp:34
-#: prefs/GUIPrefs.cpp:35
-msgid "Interface"
-msgstr "InterfÃcie"
+#: prefs/SpectrumPrefs.cpp:140
+msgid "Display"
+msgstr "Pantalla"
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
-msgstr "Al navegador"
+#: prefs/GUIPrefs.cpp:100
+msgid "Er&gonomic order of audio I/O buttons"
+msgstr ""
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
-msgstr "D'Internet"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
+msgstr ""
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
-msgstr "Simple"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
+msgstr ""
-#: prefs/GUIPrefs.cpp:94
-msgid "&Update display while playing"
-msgstr "&Refresca la representació grà fica mentre es reproduix el so"
+#: prefs/GUIPrefs.cpp:169
+msgid "Help:"
+msgstr "Ajuda:"
#: prefs/GUIPrefs.cpp:96
#, fuzzy
msgid "Cl&osing last window quits Audacity"
msgstr "Quan tanqueu la darrera finestra es tancarà l'Audacity"
-#: prefs/GUIPrefs.cpp:98
-msgid "Enable &dragging of left and right selection edges"
-msgstr "Habilita l'&arrossegament de les vores dreta i esquerra de la selecció"
-
-#: prefs/GUIPrefs.cpp:100
-msgid "Er&gonomic order of audio I/O buttons"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:102
-msgid "Automatically &fit tracks vertically zoomed"
-msgstr "Zoom vertical automà tic que permeta &encabir-hi totes les pistes"
-
-#: prefs/GUIPrefs.cpp:104
-#, fuzzy
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
-msgstr "\"Canvia la pista activa\" va passant &cÃclicament per totes les pistes del projecte"
-
-#: prefs/GUIPrefs.cpp:106
-msgid "Editing a &clip can move other clips"
-msgstr "L'edició d'un &clip pot moure altres clips"
-
-#: prefs/GUIPrefs.cpp:108
-msgid "&Select all audio in project, if none selected"
-msgstr "&Selecciona tot el so del projecte si no hi ha res seleccionat"
-
#: prefs/GUIPrefs.cpp:110
msgid "&Beep on completion of longer activities"
msgstr "&Fes 'bip' quan es completi una acció de llarga durada"
-#: prefs/GUIPrefs.cpp:114
-msgid "Show / Hide"
-msgstr "Mostra / Amaga"
-
-#: prefs/GUIPrefs.cpp:116
-msgid "Enable cut &lines"
-msgstr "Habilita les &lÃnies de tall"
-
-#: prefs/GUIPrefs.cpp:118
-msgid "Show warnings about &temp files"
-msgstr "Mostra advertiments sobre els fitxers &temporals"
-
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:122
-#, fuzzy
-msgid "Show &Welcome Message at program start up"
-msgstr "Mostra el missatge de benvinguda en iniciar el programa"
-
#: prefs/GUIPrefs.cpp:126
msgid "Modes"
msgstr "Modes"
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
+msgstr ""
+
#: prefs/GUIPrefs.cpp:129
msgid "Don't a&pply effects in batch mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
-msgstr "Rang mÃnim de representació: mesuradors i so en forma d'ona (dB)'"
-
-#: prefs/GUIPrefs.cpp:141
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 dB (rang estret de valors, per a editar sons amb molta amplitud)"
+#: prefs/FileFormatPrefs.cpp:48 prefs/FileFormatPrefs.cpp:49
+msgid "Import / Export"
+msgstr "Importa / Exporta"
-#: prefs/GUIPrefs.cpp:142
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 dB (rang PCM de les mostres de 8 bits)"
+#: prefs/FileFormatPrefs.cpp:100
+msgid "When importing audio files"
+msgstr "Quan importis fitxers de so"
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
-msgstr "-60 dB (rang PCM de les mostres de 10 bits)"
+#: prefs/FileFormatPrefs.cpp:103
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
+msgstr "&Fes una còpia del fitxer sense comprimir abans d'editar-lo (més segur)"
-#: prefs/GUIPrefs.cpp:144
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 dB (rang PCM de les mostres de 16 bits)"
+#: prefs/FileFormatPrefs.cpp:104
+msgid "&Read uncompressed audio files directly from the original (faster)"
+msgstr "&Llig directament el so sense comprimir del fitxer original (més rà pid)"
-#: prefs/GUIPrefs.cpp:145
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 dB (lÃmit aproximat de percepció de l'oïda humana)"
+#: prefs/FileFormatPrefs.cpp:106
+msgid "&Normalize all tracks in project"
+msgstr "&Normalitza totes les pistes del projecte"
-#: prefs/GUIPrefs.cpp:146
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB (rang PCM de les mostres de 24 bits)"
+#: prefs/FileFormatPrefs.cpp:120
+msgid "When exporting tracks to an audio file"
+msgstr "Quan s'exportin pistes a un fitxer de so"
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
-msgstr "Mode de visualització per defecte"
+#: prefs/FileFormatPrefs.cpp:123
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+msgstr "Mescla sempre totes les pistes en un canal estereofònic o monofònic"
-#: prefs/GUIPrefs.cpp:166
-msgid "Other interface choices"
-msgstr "Altres opcions de l'interfÃcie"
+#: prefs/FileFormatPrefs.cpp:124
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+msgstr "&Fes servir una mescla personalitzada (per exemple, per a exportar a un fitxer multicanal 5.1)"
-#: prefs/GUIPrefs.cpp:169
-msgid "Help:"
-msgstr "Ajuda:"
+#: prefs/FileFormatPrefs.cpp:126
+msgid "S&how Metadata Editor prior to export step"
+msgstr "Mo&stra l'editor de metadades abans d'iniciar l'exportació"
-#: prefs/GUIPrefs.cpp:170
-msgid "Solo Button:"
-msgstr "Botó Solo:"
+#: prefs/ImportExportPrefs.cpp:84
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
+msgstr ""
-#: prefs/KeyConfigPrefs.cpp:64
-#: prefs/KeyConfigPrefs.cpp:65
+#: prefs/KeyConfigPrefs.cpp:64 prefs/KeyConfigPrefs.cpp:65
msgid "Keyboard"
msgstr "Teclat"
@@ -7891,22 +7642,26 @@ msgstr "&Establix"
msgid "Note: Pressing Cmd+Q will quit. All other keys are valid."
msgstr "Nota: Prement Cmd+Q es tancarà el programa. Totes les altres tecles són và lides."
-#: prefs/KeyConfigPrefs.cpp:124
-#: prefs/ThemePrefs.cpp:105
+#: prefs/KeyConfigPrefs.cpp:124 prefs/ThemePrefs.cpp:105
msgid "&Defaults"
msgstr "Valors per &defecte"
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr ""
+
#: prefs/KeyConfigPrefs.cpp:143
msgid "Key Combination"
msgstr "Combinació de tecles"
-#: prefs/KeyConfigPrefs.cpp:163
-msgid "Export Keyboard Shortcuts As:"
-msgstr "Anomena i exporta les dreceres de teclat:"
+#: prefs/KeyConfigPrefs.cpp:367 toolbars/EditToolBar.cpp:144
+msgid "Undo"
+msgstr "Desfés"
-#: prefs/KeyConfigPrefs.cpp:181
-msgid "Error saving keyboard shortcuts"
-msgstr "S'ha produït un error en alçar les dreceres de teclat"
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr ""
#: prefs/KeyConfigPrefs.cpp:196
msgid "Select an XML file containing Audacity keyboard shortcuts..."
@@ -7916,6 +7671,14 @@ msgstr "Seleccioneu un fitxer XML amb les dreceres de teclat de l'Audacity..."
msgid "Error loading keyboard shortcuts"
msgstr "S'ha produït un error en carregar les dreceres de teclat"
+#: prefs/KeyConfigPrefs.cpp:163
+msgid "Export Keyboard Shortcuts As:"
+msgstr "Anomena i exporta les dreceres de teclat:"
+
+#: prefs/KeyConfigPrefs.cpp:181
+msgid "Error saving keyboard shortcuts"
+msgstr "S'ha produït un error en alçar les dreceres de teclat"
+
#: prefs/KeyConfigPrefs.cpp:241
#, c-format
msgid "The keyboard shortcut '%s' is already assigned to:\n"
@@ -7925,10 +7688,61 @@ msgstr "La drecera de teclat '%s' es troba ja assignada a:\n"
"\n"
"'%s'"
-#: prefs/KeyConfigPrefs.cpp:367
-#: toolbars/EditToolBar.cpp:144
-msgid "Undo"
-msgstr "Desfés"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:77
+msgid "MP3 Export Library"
+msgstr "Biblioteca d'exportació a MP3"
+
+#: prefs/FileFormatPrefs.cpp:80
+msgid "MP3 Library Version:"
+msgstr "Versió de la biblioteca MP3:"
+
+#: prefs/FileFormatPrefs.cpp:86
+msgid "MP3 Library:"
+msgstr "Biblioteca MP3:"
+
+#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:91
+msgid "LAME MP3 Library:"
+msgstr "Biblioteca MP3 LAME:"
+
+#: prefs/FileFormatPrefs.cpp:94
+msgid "&Download"
+msgstr "&Descarrega"
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:109
+msgid "FFmpeg Library Version:"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
+msgid "FFmpeg Library:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:41 prefs/AudioIOPrefs.cpp:42
+msgid "Audio I/O"
+msgstr "E/S de so"
+
+#: prefs/AudioIOPrefs.cpp:123
+msgid "Portaudio v"
+msgstr "Portaudio v"
+
+#: prefs/AudioIOPrefs.cpp:145
+msgid "Playthrough"
+msgstr "Interpreta a través"
#: prefs/AudioIOPrefs.cpp:147
msgid "&Play other tracks while recording new one"
@@ -7942,6 +7756,10 @@ msgstr ""
msgid "&Software Playthrough (Play new track while recording it)"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:170
+msgid "Cut Preview"
+msgstr "Previsualitza el tall"
+
#: prefs/MidiIOPrefs.cpp:160
msgid "Play before cut region:"
msgstr ""
@@ -7950,6 +7768,10 @@ msgstr ""
msgid "Play after cut region:"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:183
+msgid "Latency"
+msgstr "Latència"
+
#: prefs/MidiIOPrefs.cpp:173
msgid "Audio to buffer:"
msgstr ""
@@ -7962,12 +7784,23 @@ msgstr ""
msgid "Seek Time"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:200
+msgid "Short period:"
+msgstr "PerÃode curt:"
+
+#: prefs/AudioIOPrefs.cpp:202
+msgid "Long period:"
+msgstr "PerÃode llarg:"
+
+#: prefs/AudioIOPrefs.cpp:162
+msgid "Effects Preview"
+msgstr "Previsualització d'efectes"
+
#: prefs/MidiIOPrefs.cpp:196
msgid "Play when previewing:"
msgstr ""
-#: prefs/MousePrefs.cpp:55
-#: prefs/MousePrefs.cpp:56
+#: prefs/MousePrefs.cpp:55 prefs/MousePrefs.cpp:56
msgid "Mouse"
msgstr "RatolÃ"
@@ -7987,37 +7820,26 @@ msgstr "Acció d'orde"
msgid "Buttons"
msgstr "Botons"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:117
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:117
#: prefs/MousePrefs.cpp:122
msgid "Left-Click"
msgstr "Clic esquerre"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:100
-#: prefs/MousePrefs.cpp:101
-#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:101 prefs/MousePrefs.cpp:102
msgid "Select"
msgstr "Selecciona"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:122
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:122
msgid "Set Selection Point"
msgstr "Especifica el punt de selecció"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:115
-#: prefs/MousePrefs.cpp:119
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:115 prefs/MousePrefs.cpp:119 prefs/MousePrefs.cpp:123
msgid "Left-Drag"
msgstr "Arrossegament amb el botó principal"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:123
msgid "Set Selection Range"
msgstr "Especifica el rang de selecció"
@@ -8045,12 +7867,8 @@ msgstr "Ctrl+clic esquerre"
msgid "Set Selection Point and Play"
msgstr "Establix el punt de selecció i interpreta"
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:108
-#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:106
+#: prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:108 prefs/MousePrefs.cpp:109
msgid "Zoom"
msgstr "Zoom"
@@ -8058,9 +7876,7 @@ msgstr "Zoom"
msgid "Zoom in on Point"
msgstr "Zoom en un punt"
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:125
msgid "Zoom in on a Range"
msgstr "Zoom en un rang"
@@ -8068,18 +7884,15 @@ msgstr "Zoom en un rang"
msgid "same as right-drag"
msgstr "el mateix que arrossegar a la dreta"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:106 prefs/MousePrefs.cpp:124
msgid "Right-Click"
msgstr "Clic amb el botó secundari"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:106 prefs/MousePrefs.cpp:124
msgid "Zoom out one step"
msgstr "Allunya un pas"
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:125
msgid "Right-Drag"
msgstr "Arrossegament amb el botó secundari"
@@ -8115,8 +7928,7 @@ msgstr "Maj+Arrossega a l'esquerra"
msgid "Time shift all clips in track"
msgstr "Desplaça en el temps tots els clips d'una pista"
-#: prefs/MousePrefs.cpp:113
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:113 prefs/MousePrefs.cpp:120
msgid "Ctrl-Left-Drag"
msgstr "Ctrl+Arrossega a l'esquerra"
@@ -8132,9 +7944,7 @@ msgstr "Canvia l'envolupant d'amplificació"
msgid "Change Sample"
msgstr "Canvia la mostra"
-#: prefs/MousePrefs.cpp:117
-#: prefs/MousePrefs.cpp:118
-#: prefs/MousePrefs.cpp:119
+#: prefs/MousePrefs.cpp:117 prefs/MousePrefs.cpp:118 prefs/MousePrefs.cpp:119
#: prefs/MousePrefs.cpp:120
msgid "Pencil"
msgstr "Llapis"
@@ -8155,26 +7965,20 @@ msgstr "Canvia diverses mostres"
msgid "Change ONE Sample only"
msgstr "Canvia només UNA mostra"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123 prefs/MousePrefs.cpp:124
#: prefs/MousePrefs.cpp:125
msgid "Multi"
msgstr "Diverses"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123
msgid "same as select tool"
msgstr "el mateix que l'eina de seleccionar"
-#: prefs/MousePrefs.cpp:124
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:124 prefs/MousePrefs.cpp:125
msgid "same as zoom tool"
msgstr "el mateix que l'eina de zoom"
-#: prefs/MousePrefs.cpp:127
-#: prefs/MousePrefs.cpp:128
-#: prefs/MousePrefs.cpp:129
+#: prefs/MousePrefs.cpp:127 prefs/MousePrefs.cpp:128 prefs/MousePrefs.cpp:129
msgid "Any"
msgstr "Qualsevol"
@@ -8202,10 +8006,62 @@ msgstr "Ctrl+Roda del ratolÃ"
msgid "Zoom in or out"
msgstr "Apropa o allunya"
+#: prefs/AudioIOPrefs.cpp:165
+msgid "Length of preview:"
+msgstr "Longitud de la vista preliminar:"
+
+#: prefs/AudioIOPrefs.cpp:173
+msgid "Preview before cut region:"
+msgstr "Vista preliminar abans de la regió retallada:"
+
+#: prefs/AudioIOPrefs.cpp:175
+msgid "Preview after cut region:"
+msgstr "Vista preliminar després de la regió retallada:"
+
+#: prefs/AudioIOPrefs.cpp:197
+msgid "Seek Time when playing"
+msgstr "Desplaçament en el temps mentre s'interpreta"
+
#: prefs/PrefsDialog.cpp:89
msgid "Audacity Preferences"
msgstr "Preferències de l'Audacity"
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:111
+msgid "When saving a project that depends on other audio files"
+msgstr "En alçar un projecte que depèn d'altres fitxers de so"
+
+#: prefs/FileFormatPrefs.cpp:114
+msgid "Always © all audio into project (safest)"
+msgstr "&Copia sempre tot el so dins del projecte (el més segur)"
+
+#: prefs/FileFormatPrefs.cpp:115
+msgid "&Do not copy any audio"
+msgstr "&No copiïs cap so"
+
+#: prefs/FileFormatPrefs.cpp:116
+msgid "&Ask user"
+msgstr "Pregunt&a a l'usuari/Ã ria"
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr "Alça automà ticament"
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr "Alça automà ticament una còpia del projecte en una altra carpeta"
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr "Alça automà ticament cada:"
+
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr "minuts"
+
#: prefs/QualityPrefs.cpp:73
msgid "Rectangle"
msgstr "Rectangle"
@@ -8230,46 +8086,46 @@ msgstr "Freqüència de mostreig per defecte:"
msgid "Default Sample Format:"
msgstr "Format per defecte de les mostres:"
-#: prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "Convertidor de freqüència en temps real:"
-
-#: prefs/QualityPrefs.cpp:139
-msgid "High-quality sample rate converter:"
-msgstr "Convertidor de freqüència de mostreig d'alta qualitat:"
-
-#: prefs/QualityPrefs.cpp:142
-msgid "Real-time dither:"
-msgstr "Arrodoniment en temps real:"
-
-#: prefs/QualityPrefs.cpp:145
-msgid "High-quality dither:"
-msgstr "Arrodoniment d'alta qualitat:"
-
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
-msgstr "Conversió"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+#, fuzzy
+msgid "Sample Rate Converter:"
msgstr "Convertidor de la freqüència de mostreig"
#: prefs/QualityPrefs.cpp:164
msgid "Dither"
msgstr "Arrodoniment"
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
-msgstr "Temps real:"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
-msgstr "Alta qualitat:"
+#: prefs/AudioIOPrefs.cpp:149
+msgid "Overdub: &Play other tracks while recording new one"
+msgstr ""
-#: prefs/SmartRecordPrefs.cpp:54
-#: prefs/SmartRecordPrefs.cpp:55
-msgid "Smart Recording"
-msgstr "Enregistrament intel·ligent"
+#: prefs/AudioIOPrefs.cpp:150
+msgid "&Hardware Playthrough: Play new track while recording it"
+msgstr "Reproducció a través del &Maquinari: Interpreta una pista nova mentre s'està enregistrant."
+
+#: prefs/AudioIOPrefs.cpp:157
+msgid "&Software Playthrough: Play new track while recording or monitoring"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:160
+msgid "(uncheck when recording \"stereo mix\")"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
+msgstr ""
#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
msgid "Sound Activated Recording"
@@ -8279,23 +8135,58 @@ msgstr ""
msgid "Sound Activation Level (dB):"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:41
-#: prefs/SpectrumPrefs.cpp:42
+#: prefs/SpectrumPrefs.cpp:41 prefs/SpectrumPrefs.cpp:42
msgid "Spectrograms"
msgstr "Espectrogrames"
-#: prefs/SpectrumPrefs.cpp:91
-msgid "FFT Size"
-msgstr "Grandà ria FFT"
-
#: prefs/SpectrumPrefs.cpp:94
msgid "8 - most wideband"
msgstr "8 - banda més ampla"
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:99
msgid "256 - default"
msgstr "256 - per defecte"
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:107
msgid "32768 - most narrowband"
msgstr "32768 - banda més estreta"
@@ -8304,21 +8195,26 @@ msgstr "32768 - banda més estreta"
msgid "4096 - most narrowband"
msgstr "4096 - banda més estreta"
-#: prefs/SpectrumPrefs.cpp:116
-msgid "Window type:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:93
+#, fuzzy
+msgid "Window type"
msgstr "Tipus de finestra:"
#: prefs/SpectrumPrefs.cpp:125
msgid "FFT Skip Points"
msgstr "Punts d'omissió FFT"
-#: prefs/SpectrumPrefs.cpp:140
-msgid "Display"
-msgstr "Pantalla"
-
-#: prefs/SpectrumPrefs.cpp:144
-msgid "&Grayscale"
-msgstr "Escala de &grisos"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
+msgstr ""
#: prefs/SpectrumPrefs.cpp:147
msgid "Minimum Frequency (Hz):"
@@ -8328,17 +8224,17 @@ msgstr "Freqüència mÃnima (Hz):"
msgid "Maximum Frequency (Hz):"
msgstr "Freqüència mà xima (Hz):"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
-msgstr "Graella-&Y"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
+msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
-msgstr "&Localitza notes"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
+msgstr ""
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
-msgstr "&Arrodonix notes"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
+msgstr ""
#: prefs/SpectrumPrefs.cpp:165
msgid "Minimum Amplitude (dB):"
@@ -8348,6 +8244,14 @@ msgstr "Amplitud mÃnima (dB):"
msgid "Max. Number of Notes (1..128):"
msgstr "Nombre mà x. de notes (1..128):"
+#: prefs/SpectrumPrefs.cpp:161
+msgid "&Find Notes"
+msgstr "&Localitza notes"
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Quantize Notes"
+msgstr "&Arrodonix notes"
+
#: prefs/SpectrumPrefs.cpp:197
msgid "The maximum frequency must be an integer"
msgstr "La freqüència mà xima ha de ser un nombre enter"
@@ -8364,20 +8268,70 @@ msgstr "La freqüència mÃnima ha de ser un nombre enter"
msgid "Minimum frequency must be at least 0 Hz"
msgstr "La freqüència mÃnima ha de ser d'almenys 0 Hz"
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr "L'amplitud mÃnima (dB) ha de ser un nombre enter"
#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
-msgstr "El nombre mà xim de notes ha de ser un nombre enter entre 1 i 128"
+msgid "The maximum number of notes must be in the range 1..128"
+msgstr ""
-#: prefs/ThemePrefs.cpp:62
-#: prefs/ThemePrefs.cpp:63
+#: prefs/ThemePrefs.cpp:62 prefs/ThemePrefs.cpp:63
msgid "Theme"
msgstr "Tema"
+#: prefs/ThemePrefs.cpp:126
+msgid "Info"
+msgstr "Informació"
+
+#: prefs/ThemePrefs.cpp:91
+#, fuzzy
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr "L'ús dels temes és una funcionalitat experimental.\n"
+"\n"
+"Per a provar-la feu clic a \"Alça la mostra del tema\" i després\n"
+"busqueu i modifiqueu les imatges i els colors a\n"
+"ImageCacheVxx.png mitjançant un editor d'imatges com \n"
+"ara el Gimp.\n"
+"\n"
+"Feu clic a \"Carrega la mostra del tema\" per a veure els canvis fets en les imatges \n"
+"i als colors.\n"
+"\n"
+"[Només la barra d'eines de control i els colors de les \n"
+"pistes de so es veuran afectats pels canvis, encara que al fitxer \n"
+"que conté la imatge s'hi vegin altres icones.]"
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#. i18n-hint: && in here is an escape character to get a single & on screen,
#. * so keep it as is
#: prefs/ThemePrefs.cpp:93
@@ -8408,100 +8362,97 @@ msgstr "Alça els fitxers"
msgid "Load Files"
msgstr "Carrega els fitxers"
-#: prefs/ThemePrefs.cpp:126
-msgid "Info"
-msgstr "Informació"
+#: prefs/GUIPrefs.cpp:50
+msgid "Simple"
+msgstr "Simple"
-#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
-msgstr "L'ús dels temes és una funcionalitat experimental.\n"
-"\n"
-"Per a provar-la feu clic a \"Alça la mostra del tema\" i després\n"
-"busqueu i modifiqueu les imatges i els colors a\n"
-"ImageCacheVxx.png mitjançant un editor d'imatges com \n"
-"ara el Gimp.\n"
-"\n"
-"Feu clic a \"Carrega la mostra del tema\" per a veure els canvis fets en les imatges \n"
-"i als colors.\n"
-"\n"
-"[Només la barra d'eines de control i els colors de les \n"
-"pistes de so es veuran afectats pels canvis, encara que al fitxer \n"
-"que conté la imatge s'hi vegin altres icones.]\n"
-
-#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
-msgstr "Heu compilat l'Audacity amb un botó extra, \n"
-"'Eixida de codi font', que servix per a alçar un fitxer en llenguatge C de \n"
-"la imatge de mostra, que podreu fer servir per a una nova compilació.\n"
-
-#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
-msgstr "Si l'opció 'Carrega la mostra del tema a l'inici' es troba habilitada,\n"
-"la mostra del tema es carregarà quan el programa \n"
-"engegui.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:94
+msgid "&Update display while playing"
+msgstr "&Refresca la representació grà fica mentre es reproduix el so"
-#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
-msgstr "Alçar i carregar els fitxers individuals del tema us obliga a fer servir \n"
-"un fitxer individual per a cada imatge, però és \n"
-"la mateixa idea.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:102
+msgid "Automatically &fit tracks vertically zoomed"
+msgstr "Zoom vertical automà tic que permeta &encabir-hi totes les pistes"
-#: toolbars/ControlToolBar.cpp:174
-msgid "Pause"
-msgstr "Pausa"
+#: prefs/TracksPrefs.cpp:88
+#, fuzzy
+msgid "Default View Mode:"
+msgstr "Mode de visualització per defecte"
-#: toolbars/ControlToolBar.cpp:177
-msgid "Play"
-msgstr "Interpreta"
+#: prefs/GUIPrefs.cpp:108
+msgid "&Select all audio in project, if none selected"
+msgstr "&Selecciona tot el so del projecte si no hi ha res seleccionat"
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
+#: prefs/GUIPrefs.cpp:116
+msgid "Enable cut &lines"
+msgstr "Habilita les &lÃnies de tall"
+
+#: prefs/GUIPrefs.cpp:98
+msgid "Enable &dragging of left and right selection edges"
+msgstr "Habilita l'&arrossegament de les vores dreta i esquerra de la selecció"
+
+#: prefs/GUIPrefs.cpp:104
+#, fuzzy
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+msgstr "\"Canvia la pista activa\" va passant &cÃclicament per totes les pistes del projecte"
+
+#: prefs/GUIPrefs.cpp:106
+msgid "Editing a &clip can move other clips"
+msgstr "L'edició d'un &clip pot moure altres clips"
+
+#: prefs/GUIPrefs.cpp:170
+msgid "Solo Button:"
+msgstr "Botó Solo:"
+
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
msgstr ""
-#: toolbars/ControlToolBar.cpp:182
-msgid "Stop"
-msgstr "Atura't"
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:185
-msgid "Skip to Start"
-msgstr "Vés a l'inici"
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:188
-msgid "Skip to End"
-msgstr "Vés al final"
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:192
-msgid "Record (Shift for Append Record)"
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
msgstr ""
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr ""
+
+#: Menus.cpp:786
+msgid "Pause"
+msgstr "Pausa"
+
+#: Menus.cpp:785
+msgid "Stop"
+msgstr "Atura't"
+
#: toolbars/ControlToolBar.cpp:194
msgid "Clean Speech"
msgstr "CleanSpeech"
-#: toolbars/ControlToolBar.cpp:530
-#: toolbars/ControlToolBar.cpp:844
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play (Shift for Loop Play)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:192
+msgid "Record (Shift for Append Record)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:530 toolbars/ControlToolBar.cpp:844
msgid "Error while opening sound device. "
msgstr "S'ha produït un error en obrir el dispositiu."
@@ -8513,13 +8464,11 @@ msgstr "L'enregistrament en la modalitat CleanSpeech no és possible quan una pi
msgid "Recording not permitted"
msgstr "L'enregistrament no és permès"
-#: toolbars/DeviceToolBar.cpp:113
-#: toolbars/DeviceToolBar.cpp:115
+#: toolbars/DeviceToolBar.cpp:113 toolbars/DeviceToolBar.cpp:115
msgid "Output Device"
msgstr "Dispositiu d'eixida"
-#: toolbars/DeviceToolBar.cpp:134
-#: toolbars/DeviceToolBar.cpp:136
+#: toolbars/DeviceToolBar.cpp:134 toolbars/DeviceToolBar.cpp:136
msgid "Input Device"
msgstr "Dispositiu d'entrada"
@@ -8543,29 +8492,21 @@ msgstr "Apropa"
msgid "Zoom Out"
msgstr "Allunya"
-#: toolbars/EditToolBar.cpp:156
-msgid "Zoom Toggle"
-msgstr "Commuta el zoom"
-
-#: toolbars/EditToolBar.cpp:160
-msgid "Fit Selection"
-msgstr "Encabix la selecció"
-
#: toolbars/EditToolBar.cpp:160
msgid "Fit selection in window"
msgstr "Encabix la selecció a la finestra"
#: toolbars/EditToolBar.cpp:162
-msgid "Fit Project"
-msgstr "Encabix el projecte"
-
-#: toolbars/EditToolBar.cpp:162
msgid "Fit project in window"
msgstr "Encabix el projecte a la finestra"
-#: toolbars/MeterToolBar.cpp:50
-msgid "Meter"
-msgstr "Picòmetre"
+#: toolbars/EditToolBar.cpp:160
+msgid "Fit Selection"
+msgstr "Encabix la selecció"
+
+#: toolbars/EditToolBar.cpp:162
+msgid "Fit Project"
+msgstr "Encabix el projecte"
#: toolbars/MeterToolBar.cpp:80
msgid "Play Meter"
@@ -8613,22 +8554,27 @@ msgstr "Lliscador d'entrada"
msgid "Input Source"
msgstr "Font d'entrada"
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:80
msgid "Selection"
msgstr "Selecció"
-#: toolbars/SelectionBar.cpp:128
-#: toolbars/SelectionBar.cpp:185
+#: toolbars/SelectionBar.cpp:128 toolbars/SelectionBar.cpp:185
msgid "Project Rate (Hz):"
msgstr "Freqüència del projecte (Hz):"
-#: toolbars/SelectionBar.cpp:142
-#: toolbars/SelectionBar.cpp:247
+#: toolbars/SelectionBar.cpp:142 toolbars/SelectionBar.cpp:247
msgid "Selection Start:"
msgstr "Inici de la selecció:"
-#: toolbars/SelectionBar.cpp:155
-#: toolbars/SelectionBar.cpp:253
+#: toolbars/SelectionBar.cpp:155 toolbars/SelectionBar.cpp:253
msgid "Length"
msgstr "Longitud"
@@ -8636,13 +8582,11 @@ msgstr "Longitud"
msgid "hidden"
msgstr "amagat"
-#: toolbars/SelectionBar.cpp:175
-#: toolbars/SelectionBar.cpp:264
+#: toolbars/SelectionBar.cpp:175 toolbars/SelectionBar.cpp:264
msgid "Audio Position:"
msgstr "Posició de so:"
-#: toolbars/SelectionBar.cpp:225
-#: toolbars/SelectionBar.cpp:230
+#: toolbars/SelectionBar.cpp:225 toolbars/SelectionBar.cpp:230
msgid "Snap To"
msgstr "Arrodonix"
@@ -8663,8 +8607,7 @@ msgstr "Fi de la selecció"
msgid "Audacity %s ToolBar"
msgstr "Barra d'eines de %s de l'Audacity"
-#: toolbars/ToolDock.cpp:74
-#: toolbars/ToolDock.cpp:75
+#: toolbars/ToolDock.cpp:74 toolbars/ToolDock.cpp:75
msgid "ToolDock"
msgstr "Plafó d'eines"
@@ -8696,34 +8639,6 @@ msgstr "Esquerra=Apropa, Dreta=Allunya, Mig=Normal"
msgid "Click and drag to move a track in time"
msgstr "Feu clic i arrossegueu per a moure una pista en el temps"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr "Eines"
-
-#: toolbars/ToolsToolBar.cpp:147
-#: toolbars/ToolsToolBar.cpp:182
-msgid "Selection Tool"
-msgstr "Eina de selecció"
-
-#: toolbars/ToolsToolBar.cpp:148
-msgid "Envelope Tool"
-msgstr "Eina d'envolupant"
-
-#: toolbars/ToolsToolBar.cpp:149
-#: toolbars/ToolsToolBar.cpp:183
-msgid "Time Shift Tool"
-msgstr "Eina de desplaçament en el temps"
-
-#: toolbars/ToolsToolBar.cpp:150
-#: toolbars/ToolsToolBar.cpp:185
-msgid "Zoom Tool"
-msgstr "Eina de zoom"
-
-#: toolbars/ToolsToolBar.cpp:151
-#: toolbars/ToolsToolBar.cpp:184
-msgid "Draw Tool"
-msgstr "Eina de dibuix"
-
#: toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
msgstr "Mode multi-eina"
@@ -8732,24 +8647,11 @@ msgstr "Mode multi-eina"
msgid "Slide Tool"
msgstr "Eina de desplaçament"
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr "Eina múltiple"
-
-#: toolbars/TranscriptionToolBar.cpp:84
-msgid "Transcription"
-msgstr "Transcripció"
-
#: toolbars/TranscriptionToolBar.cpp:171
msgid "Play at selected speed"
msgstr "Reproduix a la velocitat seleccionada"
-#: toolbars/TranscriptionToolBar.cpp:172
-msgid "Play-at-speed"
-msgstr "Reproduix-a-velocitat"
-
-#: toolbars/TranscriptionToolBar.cpp:178
-#: toolbars/TranscriptionToolBar.cpp:183
+#: toolbars/TranscriptionToolBar.cpp:178 toolbars/TranscriptionToolBar.cpp:183
msgid "Playback Speed"
msgstr "Velocitat de reproducció"
@@ -8757,74 +8659,38 @@ msgstr "Velocitat de reproducció"
msgid "Adjust left selection to next onset"
msgstr "Ajusta la selecció esquerra al següent punt d'inici"
-#: toolbars/TranscriptionToolBar.cpp:197
-msgid "Left-to-On"
-msgstr "Esquerra-a-PuntInici"
-
#: toolbars/TranscriptionToolBar.cpp:199
msgid "Adjust right selection to previous offset"
msgstr "Ajusta la selecció dreta a l'anterior punt final"
-#: toolbars/TranscriptionToolBar.cpp:200
-msgid "Right-to-Off"
-msgstr "Dreta-a-PuntFinal"
-
#: toolbars/TranscriptionToolBar.cpp:202
msgid "Adjust left selection to next offset"
msgstr "Ajusta la selecció esquerra al següent punt final"
-#: toolbars/TranscriptionToolBar.cpp:203
-msgid "Left-to-Off"
-msgstr "Esquerra-a-PuntFinal"
-
#: toolbars/TranscriptionToolBar.cpp:205
msgid "Adjust right selection to previous onset"
msgstr "Ajusta la selecció dreta a l'anterior punt inicial"
-#: toolbars/TranscriptionToolBar.cpp:206
-msgid "Right-to-On"
-msgstr "Dreta-a-PuntInicial"
-
#: toolbars/TranscriptionToolBar.cpp:208
msgid "Select region of sound around cursor"
msgstr "Selecciona la regió de so al voltant del cursor"
-#: toolbars/TranscriptionToolBar.cpp:209
-msgid "Select-Sound"
-msgstr "Selecciona-So"
-
#: toolbars/TranscriptionToolBar.cpp:211
msgid "Select region of silence around cursor"
msgstr "Selecciona una regió de silenci al voltant del cursor"
-#: toolbars/TranscriptionToolBar.cpp:212
-msgid "Select-Silence"
-msgstr "Selecciona-Silenci"
-
#: toolbars/TranscriptionToolBar.cpp:214
msgid "Automatically make labels from words"
msgstr "Crea etiquetes de manera automà tica des de les paraules"
-#: toolbars/TranscriptionToolBar.cpp:215
-msgid "Make Labels"
-msgstr "Crea etiquetes"
-
#: toolbars/TranscriptionToolBar.cpp:217
msgid "Add label at selection"
msgstr "Afig una etiqueta a la selecció"
-#: toolbars/TranscriptionToolBar.cpp:218
-msgid "Add Label"
-msgstr "Afig una etiqueta"
-
#: toolbars/TranscriptionToolBar.cpp:220
msgid "Calibrate voicekey"
msgstr "Calibra la clau de veu"
-#: toolbars/TranscriptionToolBar.cpp:221
-msgid "Calibrate"
-msgstr "Calibra"
-
#: toolbars/TranscriptionToolBar.cpp:225
msgid "Adjust Sensitivity"
msgstr "Ajusta la sensibilitat"
@@ -8857,6 +8723,46 @@ msgstr "Canvis de direcció (llindar alt)"
msgid "Key type"
msgstr "Tipus de clau"
+#: toolbars/TranscriptionToolBar.cpp:172
+msgid "Play-at-speed"
+msgstr "Reproduix-a-velocitat"
+
+#: toolbars/TranscriptionToolBar.cpp:197
+msgid "Left-to-On"
+msgstr "Esquerra-a-PuntInici"
+
+#: toolbars/TranscriptionToolBar.cpp:200
+msgid "Right-to-Off"
+msgstr "Dreta-a-PuntFinal"
+
+#: toolbars/TranscriptionToolBar.cpp:203
+msgid "Left-to-Off"
+msgstr "Esquerra-a-PuntFinal"
+
+#: toolbars/TranscriptionToolBar.cpp:206
+msgid "Right-to-On"
+msgstr "Dreta-a-PuntInicial"
+
+#: toolbars/TranscriptionToolBar.cpp:209
+msgid "Select-Sound"
+msgstr "Selecciona-So"
+
+#: toolbars/TranscriptionToolBar.cpp:212
+msgid "Select-Silence"
+msgstr "Selecciona-Silenci"
+
+#: toolbars/TranscriptionToolBar.cpp:215
+msgid "Make Labels"
+msgstr "Crea etiquetes"
+
+#: toolbars/TranscriptionToolBar.cpp:218
+msgid "Add Label"
+msgstr "Afig una etiqueta"
+
+#: toolbars/TranscriptionToolBar.cpp:221
+msgid "Calibrate"
+msgstr "Calibra"
+
#: widgets/AButton.cpp:302
msgid " (disabled)"
msgstr " (inhabilitat)"
@@ -8871,15 +8777,13 @@ msgstr "Botó"
#. i18n-hint: One-letter abbreviation for Left, in VU Meter
#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
-#: widgets/ASlider.cpp:604
-#: widgets/Meter.cpp:212
+#: widgets/ASlider.cpp:604 widgets/Meter.cpp:212
msgid "L"
msgstr "E"
#. i18n-hint: One-letter abbreviation for Right, in VU Meter
#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
-#: widgets/ASlider.cpp:607
-#: widgets/Meter.cpp:214
+#: widgets/ASlider.cpp:607 widgets/Meter.cpp:214
msgid "R"
msgstr "D"
@@ -8895,8 +8799,7 @@ msgstr "Esq."
msgid "Right"
msgstr "Dreta"
-#: widgets/ErrorDialog.cpp:78
-#: widgets/ErrorDialog.cpp:102
+#: widgets/ErrorDialog.cpp:78 widgets/ErrorDialog.cpp:102
msgid "Help"
msgstr "Ajuda"
@@ -8929,8 +8832,7 @@ msgstr "Agafador"
msgid "%d rows, %d columns"
msgstr "%d files, %d columnes"
-#: widgets/Grid.cpp:649
-#: widgets/Grid.cpp:776
+#: widgets/Grid.cpp:649 widgets/Grid.cpp:776
#, c-format
msgid "Row %d"
msgstr "Fila %d"
@@ -9009,8 +8911,7 @@ msgstr ""
msgid "Cancel"
msgstr ""
-#: widgets/Ruler.cpp:1478
-#: widgets/Ruler.cpp:1479
+#: widgets/Ruler.cpp:1478 widgets/Ruler.cpp:1479
msgid "Vertical Ruler"
msgstr "Regle vertical"
@@ -9254,3 +9155,15 @@ msgstr ""
msgid "Could not load file: \"%s\""
msgstr "No s'ha pogut carregar el fitxer: \"%s\""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
+
diff --git a/locale/cs.po b/locale/cs.po
index 9a14ab2..7720c0a 100644
--- a/locale/cs.po
+++ b/locale/cs.po
@@ -15,9 +15,7 @@ msgstr "Project-Id-Version: Audacity\n"
"X-Poedit-Language: Czech\n"
"X-Poedit-Country: CZECH REPUBLIC\n"
-#: AboutDialog.cpp:142
-#: AudacityApp.cpp:749
-#: Menus.cpp:745
+#: AboutDialog.cpp:142 AudacityApp.cpp:749 Menus.cpp:745
msgid "&About Audacity..."
msgstr "O programu &Audacity..."
@@ -30,11 +28,11 @@ msgid "Audacity is a free program written by a team of volunteer <a href=\"http:
msgstr ""
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
# i18n-hint: The translation of "translator_credits" will appear
@@ -47,8 +45,7 @@ msgstr ""
#.
#. For example: "English translation by Dominic Mazzoni."
#.
-#: AboutDialog.cpp:192
-#: AboutDialog.cpp:194
+#: AboutDialog.cpp:192 AboutDialog.cpp:194
msgid "translator_credits"
msgstr "Äeský pÅeklad: AleÅ¡ ToÅ¡ovský, Dominik Joe PantůÄek, VladimÃr Krupka"
@@ -91,7 +88,7 @@ msgid "Special thanks:"
msgstr "Zvláštnà podÄkovánÃ:"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
msgstr ""
#: AboutDialog.cpp:254
@@ -99,14 +96,11 @@ msgid "Audacity"
msgstr "Audacity"
#. i18n-hint: Information about when audacity was compiled
-#: AboutDialog.cpp:299
-#: AboutDialog.cpp:312
-#: AboutDialog.cpp:468
+#: AboutDialog.cpp:299 AboutDialog.cpp:312 AboutDialog.cpp:468
msgid "Build Information"
msgstr "Informace o sestavenÃ"
-#: AboutDialog.cpp:305
-#: effects/AvcCompressor.cpp:674
+#: AboutDialog.cpp:305 effects/AvcCompressor.cpp:674
msgid "Enabled"
msgstr "Povoleno"
@@ -119,33 +113,27 @@ msgid "File Format Support"
msgstr "Formáty souborů"
#. i18n-hint: This is what the library (libmad) does - imports MP3 files
-#: AboutDialog.cpp:326
-#: AboutDialog.cpp:328
+#: AboutDialog.cpp:326 AboutDialog.cpp:328
msgid "MP3 Importing"
msgstr "Import MP3"
-#: AboutDialog.cpp:335
-#: AboutDialog.cpp:338
+#: AboutDialog.cpp:335 AboutDialog.cpp:338
msgid "Ogg Vorbis Import and Export"
msgstr "Import a export Ogg Vorbis"
-#: AboutDialog.cpp:342
-#: AboutDialog.cpp:345
+#: AboutDialog.cpp:342 AboutDialog.cpp:345
msgid "ID3 tag support"
msgstr "Podpora pro ID3 tagy"
-#: AboutDialog.cpp:352
-#: AboutDialog.cpp:355
+#: AboutDialog.cpp:352 AboutDialog.cpp:355
msgid "FLAC import and export"
msgstr "Import a export FLAC"
-#: AboutDialog.cpp:360
-#: AboutDialog.cpp:363
+#: AboutDialog.cpp:360 AboutDialog.cpp:363
msgid "MP2 export"
msgstr "Export do MP2"
-#: AboutDialog.cpp:368
-#: AboutDialog.cpp:371
+#: AboutDialog.cpp:368 AboutDialog.cpp:371
msgid "Import via QuickTime"
msgstr "Import pomocà QuickTime"
@@ -154,15 +142,12 @@ msgstr "Import pomocà QuickTime"
msgid "Core Libraries"
msgstr "Základnà knihovny"
-#: AboutDialog.cpp:384
-#: AboutDialog.cpp:387
-#: AboutDialog.cpp:390
+#: AboutDialog.cpp:384 AboutDialog.cpp:387 AboutDialog.cpp:390
#: AboutDialog.cpp:392
msgid "Sample rate conversion"
msgstr "PÅevodnÃk vzorkovacà frekvence"
-#: AboutDialog.cpp:397
-#: AboutDialog.cpp:400
+#: AboutDialog.cpp:397 AboutDialog.cpp:400
msgid "Audio playback and recording"
msgstr "PÅehrávánà a záznam zvuku"
@@ -170,24 +155,17 @@ msgstr "PÅehrávánà a záznam zvuku"
msgid "Features"
msgstr "Funkce"
-#: AboutDialog.cpp:417
-#: AboutDialog.cpp:420
-#: AboutDialog.cpp:425
-#: AboutDialog.cpp:428
-#: AboutDialog.cpp:433
-#: AboutDialog.cpp:436
-#: AboutDialog.cpp:441
-#: AboutDialog.cpp:444
+#: AboutDialog.cpp:417 AboutDialog.cpp:420 AboutDialog.cpp:425
+#: AboutDialog.cpp:428 AboutDialog.cpp:433 AboutDialog.cpp:436
+#: AboutDialog.cpp:441 AboutDialog.cpp:444
msgid "Plug-in support"
msgstr "Podpora zásuvných modulů"
-#: AboutDialog.cpp:449
-#: AboutDialog.cpp:452
+#: AboutDialog.cpp:449 AboutDialog.cpp:452
msgid "Sound card mixer support"
msgstr "Podpora mixéru zvukové karty"
-#: AboutDialog.cpp:457
-#: AboutDialog.cpp:460
+#: AboutDialog.cpp:457 AboutDialog.cpp:460
msgid "Pitch and Tempo Change support"
msgstr "Podpora pro zmÄnu ladÄnà a tempa"
@@ -195,8 +173,7 @@ msgstr "Podpora pro zmÄnu ladÄnà a tempa"
msgid "Program build date: "
msgstr "Datum sestavenà programu:"
-#: AboutDialog.cpp:475
-#: AboutDialog.cpp:477
+#: AboutDialog.cpp:475 AboutDialog.cpp:477
msgid "Build type:"
msgstr "Druh sestavenÃ:"
@@ -221,16 +198,12 @@ msgstr "AdresáŠs nastavenÃm:"
msgid "GPL License"
msgstr "Licence GPL"
-#: AudacityApp.cpp:468
-#: Project.cpp:1761
+#: AudacityApp.cpp:468 Project.cpp:1761
#, c-format
msgid "%s is already open in another window."
msgstr "%s je už otevÅen v jiném oknÄ."
-#: AudacityApp.cpp:470
-#: Project.cpp:1763
-#: Project.cpp:1868
-#: Project.cpp:2012
+#: AudacityApp.cpp:470 Project.cpp:1763 Project.cpp:1868 Project.cpp:2012
#: Project.cpp:2114
msgid "Error opening project"
msgstr "Chyba pÅi otevÃránà projektu"
@@ -256,21 +229,28 @@ msgstr "MÄÅiÄ vstupu"
msgid "Output Meter"
msgstr "MÄÅiÄ výstupu"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
-#: AudacityApp.cpp:751
-#: Menus.cpp:478
-msgid "&Preferences...\tCtrl+,"
-msgstr "&PÅedvolby...\tCtrl+,"
+#: Menus.cpp:164
+msgid "&New"
+msgstr "&Nový"
+
+#: Menus.cpp:166
+msgid "&Open..."
+msgstr "&OtevÅÃt..."
+
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
+
+#: AudacityApp.cpp:751 Menus.cpp:478
+msgid "&Preferences..."
+msgstr "&PÅedvolby..."
-#: AudacityApp.cpp:833
-#: AudacityApp.cpp:910
+#: AudacityApp.cpp:833 AudacityApp.cpp:910
#, c-format
msgid "Using block size of %ld\n"
msgstr "PoužÃvám velikost bloku %ld\n"
-#: AudacityApp.cpp:855
-#: AudacityApp.cpp:925
+#: AudacityApp.cpp:855 AudacityApp.cpp:925
#, c-format
msgid "Unknown command line option: %s\n"
msgstr "Neznámá volba Åádkového pÅÃkazu: %s\n"
@@ -387,16 +367,16 @@ msgstr "Chyba:"
msgid "Error Initializing Audio"
msgstr "Chyba pÅi inicializaci zvuku"
-#: AudioIO.cpp:1208
-msgid "Latency problem"
-msgstr "Problém latence"
-
-#: AudioIO.cpp:1208
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
+#: AudioIO.cpp:1225
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
"Audacity has brought it back to start at zero.\n"
"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
msgstr ""
+#: AudioIO.cpp:1208
+msgid "Latency problem"
+msgstr "Problém latence"
+
#: AutoRecovery.cpp:54
msgid "Automatic Crash Recovery"
msgstr "Automatická oprava pádu"
@@ -411,8 +391,7 @@ msgstr "PÅi poslednÃm spuÅ¡tÄnà Audacity nÄkteré projekty nebyly správnÄ
msgid "Recoverable projects"
msgstr "Projekty k obnovenÃ"
-#: AutoRecovery.cpp:78
-#: Tags.cpp:2032
+#: AutoRecovery.cpp:78 Tags.cpp:2032
msgid "Name"
msgstr "Název"
@@ -442,38 +421,25 @@ msgstr "SkuteÄnÄ nechcete opravit žádné projekty?\n"
msgid "Confirm?"
msgstr "Potvrdit?"
-#: AutoRecovery.cpp:146
-#: AutoRecovery.cpp:183
+#: AutoRecovery.cpp:146 AutoRecovery.cpp:183
msgid "Could not enumerate files in auto save directory"
msgstr "Nebylo možné zjistit poÄet souborů v záložnÃm adresáÅi"
-#: AutoRecovery.cpp:147
-#: AutoRecovery.cpp:184
-#: Menus.cpp:2575
-#: Menus.cpp:4514
-#: Project.cpp:1971
-#: Project.cpp:3343
-#: Project.cpp:3422
-#: WaveTrack.cpp:556
-#: WaveTrack.cpp:575
-#: WaveTrack.cpp:1689
-#: effects/Effect.cpp:436
-#: export/ExportMP2.cpp:230
-#: prefs/DirectoriesPrefs.cpp:189
-#: prefs/KeyConfigPrefs.cpp:245
-#: toolbars/ControlToolBar.cpp:532
+#: AutoRecovery.cpp:147 AutoRecovery.cpp:184 Menus.cpp:2575 Menus.cpp:4514
+#: Project.cpp:1971 Project.cpp:3343 Project.cpp:3422 WaveTrack.cpp:556
+#: WaveTrack.cpp:575 WaveTrack.cpp:1689 effects/Effect.cpp:436
+#: export/ExportMP2.cpp:230 prefs/DirectoriesPrefs.cpp:189
+#: prefs/KeyConfigPrefs.cpp:245 toolbars/ControlToolBar.cpp:532
#: toolbars/ControlToolBar.cpp:846
msgid "Error"
msgstr "Chyba"
-#: BatchCommandDialog.cpp:56
-#: BatchCommandDialog.cpp:60
+#: BatchCommandDialog.cpp:56 BatchCommandDialog.cpp:60
#: BatchCommandDialog.cpp:61
msgid "Select Command"
msgstr "Zvolte pÅÃkaz"
-#: BatchCommandDialog.cpp:80
-#: BatchProcessDialog.cpp:454
+#: BatchCommandDialog.cpp:80 BatchProcessDialog.cpp:454
#: prefs/KeyConfigPrefs.cpp:142
msgid "&Command"
msgstr "&PÅÃkaz"
@@ -482,8 +448,7 @@ msgstr "&PÅÃkaz"
msgid "&Edit Parameters"
msgstr "&Upravit parametry"
-#: BatchCommandDialog.cpp:89
-#: BatchProcessDialog.cpp:455
+#: BatchCommandDialog.cpp:89 BatchProcessDialog.cpp:455
msgid "&Parameters"
msgstr "&Parametry"
@@ -529,8 +494,7 @@ msgstr "PoužÃt %s s parametry\n"
"\n"
"%s"
-#: BatchCommands.cpp:675
-#: BatchCommands.cpp:680
+#: BatchCommands.cpp:675 BatchCommands.cpp:680
msgid "Test Mode"
msgstr "Testovacà režim"
@@ -539,8 +503,7 @@ msgstr "Testovacà režim"
msgid "Apply %s"
msgstr "PoužÃt %s"
-#: BatchProcessDialog.cpp:60
-#: BatchProcessDialog.cpp:70
+#: BatchProcessDialog.cpp:60 BatchProcessDialog.cpp:70
#: BatchProcessDialog.cpp:71
msgid "Apply Chain"
msgstr "PoužÃt sadu pÅÃkazů"
@@ -565,24 +528,15 @@ msgstr "PoužÃt na souÄasný &projekt"
msgid "Apply to &Files..."
msgstr "PoužÃt na &soubory..."
-#: BatchProcessDialog.cpp:108
-#: BatchProcessDialog.cpp:247
-#: Tags.cpp:2071
-#: Tags.cpp:2075
-#: Tags.cpp:2375
-#: Tags.cpp:2379
-#: UploadDialog.cpp:180
-#: effects/AvcCompressor.cpp:732
-#: effects/ChangeLength.cpp:183
-#: effects/SpikeCleaner.cpp:188
-#: effects/VST/VSTEffect.cpp:446
-#: effects/audiounits/AudioUnitEffect.cpp:882
-#: effects/vamp/VampEffect.cpp:411
+#: BatchProcessDialog.cpp:108 BatchProcessDialog.cpp:247 Tags.cpp:2071
+#: Tags.cpp:2075 Tags.cpp:2375 Tags.cpp:2379 UploadDialog.cpp:180
+#: effects/AvcCompressor.cpp:732 effects/ChangeLength.cpp:183
+#: effects/SpikeCleaner.cpp:188 effects/VST/VSTEffect.cpp:446
+#: effects/audiounits/AudioUnitEffect.cpp:882 effects/vamp/VampEffect.cpp:411
msgid "&Cancel"
msgstr "&Zrušit"
-#: BatchProcessDialog.cpp:146
-#: BatchProcessDialog.cpp:191
+#: BatchProcessDialog.cpp:146 BatchProcessDialog.cpp:191
msgid "No chain selected"
msgstr "Nenà vybrána sada"
@@ -619,8 +573,7 @@ msgstr "Aplikuje se..."
msgid "File"
msgstr "Soubor"
-#: BatchProcessDialog.cpp:356
-#: BatchProcessDialog.cpp:360
+#: BatchProcessDialog.cpp:356 BatchProcessDialog.cpp:360
#: BatchProcessDialog.cpp:361
msgid "Edit Chains"
msgstr "Editovat sady pÅÃkazů"
@@ -629,19 +582,12 @@ msgstr "Editovat sady pÅÃkazů"
msgid "&Chains"
msgstr "&Sady"
-#: BatchProcessDialog.cpp:435
-#: Tags.cpp:815
-#: Tags.cpp:1455
-#: Tags.cpp:2055
+#: BatchProcessDialog.cpp:435 Tags.cpp:815 Tags.cpp:1455 Tags.cpp:2055
msgid "&Add"
msgstr "PÅid&at"
-#: BatchProcessDialog.cpp:436
-#: LabelDialog.cpp:126
-#: Tags.cpp:816
-#: Tags.cpp:1456
-#: Tags.cpp:2056
-#: TrackPanel.cpp:4201
+#: BatchProcessDialog.cpp:436 LabelDialog.cpp:126 Tags.cpp:816 Tags.cpp:1456
+#: Tags.cpp:2056 TrackPanel.cpp:4201
msgid "&Remove"
msgstr "Odst&ranit"
@@ -655,8 +601,8 @@ msgstr "Å&etÄzec (Editujte dvojklikem nebo stisknÄte mezernÃk)"
#. i18n-hint: This is the number of the command in the list
#: BatchProcessDialog.cpp:453
-msgid "No"
-msgstr "Ne"
+msgid "Num"
+msgstr ""
#: BatchProcessDialog.cpp:459
msgid "&Insert"
@@ -745,8 +691,7 @@ msgstr "MÃsto na disku"
msgid "Copy Selected Audio Into Project"
msgstr "PÅekopÃrovat vybraná zvuková data do projektu"
-#: Dependencies.cpp:304
-#: Dependencies.cpp:410
+#: Dependencies.cpp:304 Dependencies.cpp:410
msgid "Cancel Save"
msgstr "ZruÅ¡it ukládánÃ"
@@ -758,8 +703,7 @@ msgstr "NekopÃrovat žádná zvuková data"
msgid "Copy All Audio into Project (Safer)"
msgstr "KopÃrovat vÅ¡echna zvuková data do projektu (bezpeÄnÄjÅ¡Ã)"
-#: Dependencies.cpp:317
-#: Dependencies.cpp:322
+#: Dependencies.cpp:317 Dependencies.cpp:322
msgid "Ask me"
msgstr "Zeptat se"
@@ -792,9 +736,7 @@ msgid "Warning: there is very little free disk space left on this volume.\n"
"Please select another temporary directory in your preferences."
msgstr "VarovánÃ: na tomto disku je velmi málo volného mÃsta. ProsÃm zvolte v nastavenà jiný doÄasný adresáÅ."
-#: DirManager.cpp:221
-#: DirManager.cpp:251
-#: DirManager.cpp:332
+#: DirManager.cpp:221 DirManager.cpp:251 DirManager.cpp:332
msgid "Progress"
msgstr "Postup"
@@ -852,8 +794,7 @@ msgstr "'%s' nelze pÅejmenovat na '%s'"
msgid "Changed block %s to new alias name\n"
msgstr ""
-#: DirManager.cpp:1115
-#: DirManager.cpp:1403
+#: DirManager.cpp:1115 DirManager.cpp:1403
msgid "Inspecting project file data..."
msgstr "Kontrolujà se data projektu..."
@@ -902,14 +843,9 @@ msgstr "PokraÄovat bez smazánà a tiÅ¡e obejÃt zvláštnà soubory"
msgid "Close project immediately with no changes"
msgstr "ZavÅÃt projekt hned a beze zmÄn"
-#: DirManager.cpp:1228
-#: DirManager.cpp:1263
-#: DirManager.cpp:1309
-#: DirManager.cpp:1351
-#: export/Export.cpp:490
-#: export/Export.cpp:507
-#: export/Export.cpp:526
-#: widgets/Warning.cpp:55
+#: DirManager.cpp:1228 DirManager.cpp:1263 DirManager.cpp:1309
+#: DirManager.cpp:1351 export/Export.cpp:490 export/Export.cpp:507
+#: export/Export.cpp:526 widgets/Warning.cpp:55
msgid "Warning"
msgstr "VarovánÃ"
@@ -931,14 +867,11 @@ msgstr "Kontrola projektu zjistila že chybà %d vstupnÃch souborů,\n"
msgid "Replace missing data with silence [permanent upon save]"
msgstr "Nahradit chybÄjÃcà data tichem [po uloženà trvale]"
-#: DirManager.cpp:1260
-#: DirManager.cpp:1348
+#: DirManager.cpp:1260 DirManager.cpp:1348
msgid "Temporarily replace missing data with silence [this session only]"
msgstr "DoÄasnÄ nahradit chybÄjÃcà data tichem [je pro toto otevÅenÃ]"
-#: DirManager.cpp:1261
-#: DirManager.cpp:1307
-#: DirManager.cpp:1349
+#: DirManager.cpp:1261 DirManager.cpp:1307 DirManager.cpp:1349
msgid "Close project immediately with no further changes"
msgstr "Nynà bez dalÅ¡Ãch zmÄn zavÅÃt projekt"
@@ -1007,11 +940,11 @@ msgstr "ObdélnÃkový"
msgid "FFmpeg support not compiled in"
msgstr ""
-#: FFmpeg.cpp:101
+#: FFmpeg.cpp:103
msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
#: FFmpeg.cpp:104
@@ -1069,11 +1002,12 @@ msgstr ""
msgid "FFmpeg not found"
msgstr ""
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
#: FFmpeg.h:109
@@ -1096,8 +1030,7 @@ msgstr ""
msgid "Frequency Analysis"
msgstr "FrekvenÄnà analýza"
-#: FreqWindow.cpp:140
-#: TrackPanel.cpp:563
+#: FreqWindow.cpp:140 TrackPanel.cpp:563
msgid "Spectrum"
msgstr "Spektrum"
@@ -1125,8 +1058,7 @@ msgstr "Cepstrum"
msgid "Algorithm"
msgstr "Algoritmus:"
-#: FreqWindow.cpp:168
-#: HistoryWindow.cpp:79
+#: FreqWindow.cpp:168 HistoryWindow.cpp:79
msgid "Size"
msgstr "Velikost"
@@ -1154,10 +1086,7 @@ msgstr "Log frekvence"
msgid "Axis"
msgstr ""
-#: FreqWindow.cpp:206
-#: LabelDialog.cpp:128
-#: Menus.cpp:204
-#: Menus.cpp:233
+#: FreqWindow.cpp:206 LabelDialog.cpp:128 Menus.cpp:204 Menus.cpp:233
msgid "&Export..."
msgstr "&Exportovat..."
@@ -1165,26 +1094,30 @@ msgstr "&Exportovat..."
msgid "Export"
msgstr ""
-#: FreqWindow.cpp:209
-#: widgets/ErrorDialog.cpp:159
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
+#: FreqWindow.cpp:209 widgets/ErrorDialog.cpp:159
msgid "Close"
msgstr "ZavÅÃt"
-#: FreqWindow.cpp:272
-#: FreqWindow.cpp:402
-#: effects/AutoDuck.cpp:489
-#: effects/AutoDuck.cpp:523
-#: effects/AutoDuck.cpp:791
-#: effects/Compressor.cpp:352
-#: effects/Compressor.cpp:360
-#: effects/Equalization.cpp:1109
-#: effects/Equalization.cpp:1111
-#: effects/Equalization.cpp:1119
-#: effects/Equalization.cpp:1185
-#: effects/Equalization.cpp:1394
-#: effects/Equalization.cpp:1405
-#: effects/Normalize.cpp:365
-#: widgets/Meter.cpp:380
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr ""
+
+#: FreqWindow.cpp:272 FreqWindow.cpp:402 effects/AutoDuck.cpp:489
+#: effects/AutoDuck.cpp:523 effects/AutoDuck.cpp:791
+#: effects/Compressor.cpp:352 effects/Compressor.cpp:360
+#: effects/Equalization.cpp:1109 effects/Equalization.cpp:1111
+#: effects/Equalization.cpp:1119 effects/Equalization.cpp:1185
+#: effects/Equalization.cpp:1394 effects/Equalization.cpp:1405
+#: effects/Normalize.cpp:365 widgets/Meter.cpp:380
msgid "dB"
msgstr "dB"
@@ -1192,20 +1125,25 @@ msgstr "dB"
# cycles per second.
#. i18n-hint: This is the abbreviation for "Hertz", or
#. cycles per second.
-#: FreqWindow.cpp:287
-#: FreqWindow.cpp:442
-#: effects/Equalization.cpp:1150
-#: effects/Equalization.cpp:1181
-#: import/ImportRaw.cpp:416
+#: FreqWindow.cpp:287 FreqWindow.cpp:442 effects/Equalization.cpp:1150
+#: effects/Equalization.cpp:1181 import/ImportRaw.cpp:416
msgid "Hz"
msgstr "Hz"
+#: Menus.cpp:3425
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "Aby mohlo být vykresleno spektrum, musà mÃt vÅ¡echny stopy stejnou vzorkovacà frekvenci."
+
+#: Menus.cpp:3451
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "Je vybráno pÅÃliÅ¡ mnoho audia. Může být analyzováno jen poÄáteÄnÃch %.1f vteÅin."
+
#: FreqWindow.cpp:386
msgid "Not enough data selected."
msgstr "Nenà vybráno dostateÄné množstvà dat."
-#: FreqWindow.cpp:450
-#: effects/AutoDuck.cpp:793
+#: FreqWindow.cpp:450 effects/AutoDuck.cpp:793
msgid "s"
msgstr ""
@@ -1227,12 +1165,8 @@ msgstr "spectrum.txt"
msgid "Export Spectral Data As:"
msgstr "Exportovat spektrálnà data jako:"
-#: FreqWindow.cpp:1079
-#: LabelDialog.cpp:599
-#: Menus.cpp:2207
-#: Project.cpp:2441
-#: Project.cpp:3395
-#: prefs/KeyConfigPrefs.cpp:180
+#: FreqWindow.cpp:1079 LabelDialog.cpp:599 Menus.cpp:2207 Project.cpp:2441
+#: Project.cpp:3395 prefs/KeyConfigPrefs.cpp:180
msgid "Couldn't write to file: "
msgstr "Nelze zapisovat do souboru:"
@@ -1244,6 +1178,21 @@ msgstr "Frekvence (Hz)\tÃroveÅ (dB)"
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "ZpoždÄnà (vteÅiny)\tFrekvence (Hz)\tÃroveÅ"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr ""
+
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr ""
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr "PÅejÃt na [[welcome|UvÃtacà obrazovka]]"
@@ -1321,7 +1270,7 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr "<p><b>NahrávánÃ:</b> Nastavte nahrávacà zaÅÃzenà a zdroj vstupu, upravte vstupnà úroveÅ a kliknÄte na tlaÄÃtko Nahrávat. </b></p><p> 1) [[inputdevice|Nastavte nahrávacà zaÅÃzenÃ]] buÄ z <i>NastavenÃ, Audio vstup/výstup</i> nebo na <i>Panelu zaÅÃzenÃ</i>. Nastavenà audio vstupu a výstupu umožÅuje v pÅÃpadÄ potÅeby nastavit stereo nahrávánÃ. <br> 2) [[inputsource|Nastavte vstupnà zdroj]] pro zvolené zaÅÃzenà na roletovém menu <i>MixážnÃho panelu</i> (napÅ. mikrofon, nebo lineárnà vstup), nebo (na nÄkterých systémech) v oddÃlu Nahrávacà zaÅÃzenà na kartÄ <i>Audio vstup/výstup</i> v <i>NastavenÃ</i> programu nebo na <i>Panelu zaÅÃzenÃ</i><br> 3) [[inputlevel|Upravte vstupnà úroveÅ]] pomocà pravého posuvnÃku na <i>MixážnÃm panelu</i>. Správné seÅÃzenà úrovnÄ pÅed zaÄátkem nahrávánà je rozhodujÃcà pro pÅedcházenà šumu nebo zkreslenÃ. </p><p> Dalšà nápovÄda je v Äásti \"NahrávánÃ\" <a href=\"http://audacity.sourceforge.net/help/faq\">FAQ</a>, v návodu <a href=\"http://www.audacityteam.org/manual/index.php?title=Tutorial_-_Your_First_Recording\"> VaÅ¡e prvnà nahrávka</a> v <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">pÅÃruÄce</a>, na Wiki v Äásti [[wiki:Recording_Tips|Tipy pro nahrávánÃ]] a stránkách [[wiki:Troubleshooting_Recordings|PotÞe s nahrávánÃm]]. </p><br><br>"
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
msgstr ""
#: HelpText.cpp:244
@@ -1345,7 +1294,7 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr "Abyste mohli poslouchat výsledky své práce v jiných mediálnÃch programech, vyexportujte ji do zvukového souboru napÅ. WAV nebo MP3 (nÄkteré formáty [[wma-proprietary|nejsou podporovány]]). [[save|UloženÃm projektu Audacity]] se vytvoÅà projektový soubor (a pÅidružený datový adresáŠ_data), který obsahuje vÅ¡echny vaÅ¡e upravené stopy, takže se k práci můžete vrátit pozdÄji. Jiné programy ale tyto projektové soubory nedokážà pÅeÄÃst. </p><p> Export se provánà v nabÃdce <i>Soubor > Exportovat</i> a potom v roletce \"Uložit jako typ\" zvolte formát, do kterého chcete ukládat. Pokud chcete [[burncd|vypalovat CD]] pro samostatné CD pÅehrávaÄe, zvolte si WAV nebo AIFF. Export do MP3 obstarává [[wiki:Lame_Installation|Lame Encoder]], který musà být nainstalován. </p><p> <i>Soubor > Exportovat výbÄr</i> vyexportuje jen vybranou Äást zvukových dat. VÃce souborů najednou, buÄ každou stopu zvlášť nebo zvláštnà soubor pro každou oblast s popiskou, vyexportujete pomocà nabÃdky <i>Soubor > VÃcenásobný export</i>. NabÃdka <i>Stopy > Vložit popisku k výbÄru</i> vám umožnà [[wiki:Splitting_recordings_into_separate_tracks|rozdÄlit stopy]] z alba do samostatných vyexportovaných souborů. </p><br><br>"
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
msgstr ""
#: HelpText.cpp:383
@@ -1380,15 +1329,9 @@ msgstr "ÃrovnÄ k odstranÄnÃ"
msgid "&Discard"
msgstr "O&dstranit"
-#: HistoryWindow.cpp:111
-#: Tags.cpp:2072
-#: Tags.cpp:2074
-#: Tags.cpp:2376
-#: Tags.cpp:2378
-#: effects/ChangeLength.cpp:186
-#: effects/SpikeCleaner.cpp:191
-#: effects/vamp/VampEffect.cpp:414
-#: export/ExportCL.cpp:398
+#: HistoryWindow.cpp:111 Tags.cpp:2072 Tags.cpp:2074 Tags.cpp:2376
+#: Tags.cpp:2378 effects/ChangeLength.cpp:186 effects/SpikeCleaner.cpp:191
+#: effects/vamp/VampEffect.cpp:414 export/ExportCL.cpp:398
msgid "&OK"
msgstr "&OK"
@@ -1396,8 +1339,7 @@ msgstr "&OK"
msgid "Unable to determine"
msgstr "Nenà možno urÄit"
-#: Internat.cpp:195
-#: import/ImportRaw.cpp:392
+#: Internat.cpp:195 import/ImportRaw.cpp:392
msgid "bytes"
msgstr "bytů"
@@ -1413,13 +1355,19 @@ msgstr "MB"
msgid "GB"
msgstr "GB"
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
#: LabelDialog.cpp:52
msgid "Track"
msgstr "Stopa"
-#: LabelDialog.cpp:53
-#: Menus.cpp:4057
-#: Menus.cpp:4085
+#: LabelDialog.cpp:53 Menus.cpp:4057 Menus.cpp:4085
msgid "Label"
msgstr "Popiska"
@@ -1431,8 +1379,7 @@ msgstr "PoÄáteÄnà Äas"
msgid "End Time"
msgstr "Koncový Äas"
-#: LabelDialog.cpp:98
-#: Menus.cpp:627
+#: LabelDialog.cpp:98 Menus.cpp:627
msgid "&Edit Labels"
msgstr "&Upravit popisky"
@@ -1448,8 +1395,7 @@ msgstr "Vložit z&a"
msgid "Insert &Before"
msgstr "Vložit &pÅed"
-#: LabelDialog.cpp:127
-#: Menus.cpp:194
+#: LabelDialog.cpp:127 Menus.cpp:194
msgid "&Import..."
msgstr "&Importovat..."
@@ -1468,20 +1414,15 @@ msgstr ""
msgid "Confirm"
msgstr "Potvrdit"
-#: LabelDialog.cpp:514
-#: Menus.cpp:3555
+#: LabelDialog.cpp:514 Menus.cpp:3555
msgid "Select a text file containing labels..."
msgstr "Zvolte textový soubor s popiskami..."
-#: LabelDialog.cpp:518
-#: Menus.cpp:3559
+#: LabelDialog.cpp:518 Menus.cpp:3559
msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
msgstr "Textové soubory (*.txt)|*.txt|Všechny soubory (*.*)|*.*"
-#: LabelDialog.cpp:532
-#: Menus.cpp:3571
-#: Project.cpp:1831
-#: Project.cpp:1839
+#: LabelDialog.cpp:532 Menus.cpp:3571 Project.cpp:1831 Project.cpp:1839
#: import/ImportMIDI.cpp:31
msgid "Could not open file: "
msgstr "Nelze otevÅÃt soubor:"
@@ -1490,13 +1431,11 @@ msgstr "Nelze otevÅÃt soubor:"
msgid "No labels to export."
msgstr "Žádné popisky k exportu."
-#: LabelDialog.cpp:564
-#: Menus.cpp:2172
+#: LabelDialog.cpp:564 Menus.cpp:2172
msgid "Export Labels As:"
msgstr "Exportovat popisky jako:"
-#: LabelDialog.cpp:566
-#: Menus.cpp:2170
+#: LabelDialog.cpp:566 Menus.cpp:2170
msgid "labels.txt"
msgstr "labels.txt"
@@ -1508,10 +1447,7 @@ msgstr "Nová popisová stopa"
msgid "Enter track name"
msgstr "Vložte název stopy"
-#: LabelDialog.cpp:701
-#: LabelDialog.h:52
-#: LabelTrack.cpp:89
-#: Menus.cpp:555
+#: LabelDialog.cpp:701 LabelDialog.h:52 LabelTrack.cpp:89 Menus.cpp:555
msgid "&Label Track"
msgstr "&Popisová stopa"
@@ -1538,24 +1474,15 @@ msgstr "OtevÃrám Audacity projekt"
msgid "&File"
msgstr "&Soubor"
-#: Menus.cpp:164
-msgid "&New\tCtrl+N"
-msgstr "&Nový\tCtrl+N"
-
-#: Menus.cpp:166
-msgid "&Open...\tCtrl+O"
-msgstr "&OtevÅÃt...\tCtrl+O"
-
#: Menus.cpp:171
-msgid "&Close\tCtrl+W"
-msgstr "&ZavÅÃt\tCtrl+W"
+msgid "&Close"
+msgstr "&ZavÅÃt"
#: Menus.cpp:174
-msgid "&Save Project\tCtrl+S"
-msgstr "&Uložit projekt\tCtrl+S"
+msgid "&Save Project"
+msgstr "&Uložit projekt"
-#: Menus.cpp:178
-#: Project.cpp:2690
+#: Menus.cpp:178 Project.cpp:2690
msgid "Save Project &As..."
msgstr "Uložit projekt &jako..."
@@ -1576,8 +1503,8 @@ msgid "&Import"
msgstr "&Import"
#: Menus.cpp:196
-msgid "&Audio...\tCtrl+Shift+I"
-msgstr "&Zvuková data...\tCtrl+Shift+I"
+msgid "&Audio..."
+msgstr "&Zvuková data..."
#: Menus.cpp:197
msgid "&Labels..."
@@ -1591,8 +1518,7 @@ msgstr "&MIDI..."
msgid "&Raw Data..."
msgstr "&Raw Data..."
-#: Menus.cpp:210
-#: Menus.cpp:239
+#: Menus.cpp:210 Menus.cpp:239
msgid "Expo&rt Selection..."
msgstr "Expo&rtovat výbÄr jako..."
@@ -1608,12 +1534,11 @@ msgstr "&VÃcenásobný export..."
msgid "Export MIDI..."
msgstr ""
-#: Menus.cpp:247
-msgid "CleanSpeech C&hain..."
-msgstr "Sada pÅÃkazů ÄiÅ¡tÄnà mluveného slova - Clean Speech..."
+#: Menus.cpp:260
+msgid "Appl&y Chain..."
+msgstr "&PoužÃt sadu pÅÃkazů..."
-#: Menus.cpp:248
-#: Menus.cpp:262
+#: Menus.cpp:248 Menus.cpp:262
msgid "Edit C&hains..."
msgstr "Upra&vit sady pÅÃkazů..."
@@ -1625,10 +1550,6 @@ msgstr "Exportovat &pÅedvolby CleanSpeech..."
msgid "I&mport CleanSpeech Presets..."
msgstr "I&mportovat pÅedvolby CleanSpeech..."
-#: Menus.cpp:260
-msgid "Appl&y Chain..."
-msgstr "&PoužÃt sadu pÅÃkazů..."
-
#: Menus.cpp:267
msgid "&Upload File..."
msgstr "Nahrát so&ubor na server..."
@@ -1642,75 +1563,72 @@ msgid "&Print..."
msgstr "&Tisk..."
#: Menus.cpp:287
-msgid "E&xit\tCtrl+Q"
-msgstr "&UkonÄit program\tCtrl+Q"
+msgid "E&xit"
+msgstr "&UkonÄit program"
-#: Menus.cpp:295
-#: toolbars/EditToolBar.cpp:76
+#: Menus.cpp:295 toolbars/EditToolBar.cpp:76
msgid "&Edit"
msgstr "Ãpr&avy"
#: Menus.cpp:299
-msgid "&Undo\tCtrl+Z"
-msgstr "&ZpÄt\tCtrl+Z"
+msgid "&Undo"
+msgstr "&ZpÄt"
-#: Menus.cpp:307
-#: prefs/KeyConfigPrefs.cpp:369
-#: toolbars/EditToolBar.cpp:146
+#: Menus.cpp:307 prefs/KeyConfigPrefs.cpp:369 toolbars/EditToolBar.cpp:146
msgid "&Redo"
msgstr "&Znovu"
#: Menus.cpp:320
-msgid "Cu&t\tCtrl+X"
-msgstr "Vyjmou&t\tCtrl+X"
+msgid "Cu&t"
+msgstr "Vyjmou&t"
#: Menus.cpp:324
-msgid "Spl&it Cut\tCtrl+Alt+X"
-msgstr "RozdÄl&it a vyjmout\tCtrl+Alt+X"
+msgid "Spl&it Cut"
+msgstr "RozdÄl&it a vyjmout"
#: Menus.cpp:325
-msgid "&Copy\tCtrl+C"
-msgstr "&KopÃrovat\tCtrl+C"
+msgid "&Copy"
+msgstr "&KopÃrovat"
#: Menus.cpp:329
-msgid "&Paste\tCtrl+V"
-msgstr "&Vložit\tCtrl+V"
+msgid "&Paste"
+msgstr "&Vložit"
#: Menus.cpp:333
-msgid "Tri&m\tCtrl+T"
-msgstr "OÅÃznou&t\tCtrl+T"
+msgid "Tri&m"
+msgstr "OÅÃznou&t"
#: Menus.cpp:335
-msgid "&Delete\tCtrl+K"
-msgstr "&Smazat\tCtrl+K"
+msgid "&Delete"
+msgstr "&Smazat"
#: Menus.cpp:336
-msgid "Split D&elete\tCtrl+Alt+K"
-msgstr "R&ozdÄlit a vymazat\tCtrl+Alt+K"
+msgid "Split D&elete"
+msgstr "R&ozdÄlit a vymazat"
#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
+msgid "Silence Audi&o"
msgstr ""
#: Menus.cpp:339
-msgid "Sp&lit\tCtrl+I"
-msgstr "RozdÄ&lit\tCtrl+I"
+msgid "Sp&lit"
+msgstr "RozdÄ&lit"
#: Menus.cpp:344
-msgid "Split Ne&w\tCtrl+Alt+I"
-msgstr "RozdÄlit a &nový\tCtrl+Alt+I"
+msgid "Split Ne&w"
+msgstr "RozdÄlit a &nový"
#: Menus.cpp:349
-msgid "&Join\tCtrl+J"
-msgstr "Spo&jit\tCtrl+J"
+msgid "&Join"
+msgstr "Spo&jit"
#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
+msgid "Detac&h at Silences"
msgstr ""
#: Menus.cpp:352
-msgid "Duplic&ate\tCtrl+D"
-msgstr "Duplikov&at\tCtrl+D"
+msgid "Duplic&ate"
+msgstr "Duplikov&at"
#: Menus.cpp:400 Menus.cpp:639
msgid "Stereo Trac&k to Mono"
@@ -1722,80 +1640,65 @@ msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:367
-msgid "&Cut\tAlt+X"
-msgstr "&Vyjmout\tAlt+X"
+msgid "&Cut"
+msgstr "&Vyjmout"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:372
-msgid "&Split Cut\tShift+Alt+X"
-msgstr "&RozdÄlit a vyjmout\tShift+Alt+X"
+msgid "&Split Cut"
+msgstr "&RozdÄlit a vyjmout"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:377
-msgid "Co&py\tShift+Alt+C"
-msgstr "Ko&pÃrovat\tShift+Alt+C"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:383
-msgid "&Delete\tAlt+K"
-msgstr "&Smazat\tAlt+K"
+msgid "Co&py"
+msgstr "Ko&pÃrovat"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:388
-msgid "Sp&lit Delete\tShift+Alt+K"
-msgstr "RozdÄlit a vymazat\tShift+Alt+K"
+msgid "Sp&lit Delete"
+msgstr "RozdÄlit a vymazat"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:393
-msgid "Sile&nce\tAlt+L"
-msgstr "Tich&o\tAlt+L"
+msgid "Sile&nce"
+msgstr "Tich&o"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:399
-msgid "Spli&t\tAlt+I"
-msgstr "RozdÄli&t\tAlt+I"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:404
-msgid "&Join\tAlt+J"
-msgstr "Spo&jit\tAlt+J"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
-msgstr ""
+msgid "Spli&t"
+msgstr "RozdÄli&t"
#: Menus.cpp:456
msgid "&Select"
msgstr ""
#: Menus.cpp:416
-msgid "&All\tCtrl+A"
-msgstr "VÅ¡&e\tCtrl+A"
+msgid "&All"
+msgstr "VÅ¡&e"
#: Menus.cpp:417
-msgid "&None\tCtrl+Shift+A"
-msgstr "&Nic\tCtrl+Shift+A"
+msgid "&None"
+msgstr "&Nic"
#: Menus.cpp:421
-msgid "&Left at Playback Position\t["
-msgstr "&Levá znaÄka na pozici pÅehrávánÃ\t["
+msgid "&Left at Playback Position"
+msgstr "&Levá znaÄka na pozici pÅehrávánÃ"
#: Menus.cpp:422
-msgid "&Right at Playback Position\t]"
-msgstr "&Pravá znaÄka na pozici pÅehrávánÃ\t]"
+msgid "&Right at Playback Position"
+msgstr "&Pravá znaÄka na pozici pÅehrávánÃ"
#: Menus.cpp:426
-msgid "Track &Start to Cursor\tShift+J"
-msgstr "ZaÄátek &stopy na kurzor \tShift+J"
+msgid "Track &Start to Cursor"
+msgstr "ZaÄátek &stopy na kurzor "
#: Menus.cpp:427
-msgid "Cursor to Track &End\tShift+K"
-msgstr "Kurzor na &konec stopy\tShift+K"
+msgid "Cursor to Track &End"
+msgstr "Kurzor na &konec stopy"
#: Menus.cpp:433
-msgid "Find &Zero Crossings\tZ"
-msgstr "NajÃt průseÄÃky s &nulou\tZ"
+msgid "Find &Zero Crossings"
+msgstr "NajÃt průseÄÃky s &nulou"
#: Menus.cpp:476
msgid "Mo&ve Cursor"
@@ -1810,12 +1713,12 @@ msgid "to Selection En&d"
msgstr "na konec vý&bÄru"
#: Menus.cpp:442
-msgid "to Track &Start\tJ"
-msgstr "na zaÄátek stopy\tJ"
+msgid "to Track &Start"
+msgstr "na zaÄátek stopy"
#: Menus.cpp:443
-msgid "to Track &End\tK"
-msgstr "na konec stopy\tK"
+msgid "to Track &End"
+msgstr "na konec stopy"
#: Menus.cpp:450
msgid "Re&gion Save"
@@ -1837,29 +1740,8 @@ msgstr "&Zamknout"
msgid "&Unlock"
msgstr "&Uvolnit"
-#: Menus.cpp:470
-msgid "Turn Snap-To On"
-msgstr "Zapnout pÅilÃnánÃ"
-
-#: Menus.cpp:471
-msgid "Turn Snap-To Off"
-msgstr "Vypnout pÅilÃnánÃ"
-
-#: Menus.cpp:472
-msgid "Turn Grid Snap On"
-msgstr "PÅilÃnat k mÅÞce"
-
-#: Menus.cpp:473
-msgid "Turn Grid Snap Off"
-msgstr "NepÅilÃnat k mÅÞce"
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr ""
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
+msgid "Pre&ferences..."
msgstr ""
#: Menus.cpp:492
@@ -1867,36 +1749,36 @@ msgid "&View"
msgstr "&Zobrazit"
#: Menus.cpp:494
-msgid "Zoom &In\tCtrl+1"
-msgstr "Z&vÄtÅ¡it\tCtrl+1"
+msgid "Zoom &In"
+msgstr "Z&vÄtÅ¡it"
#: Menus.cpp:497
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "&Normálnà velikost\tCtrl+2"
+msgid "Zoom &Normal"
+msgstr "&Normálnà velikost"
#: Menus.cpp:498
-msgid "Zoom &Out\tCtrl+3"
-msgstr "Z&menšit\tCtrl+3"
+msgid "Zoom &Out"
+msgstr "Z&menšit"
#: Menus.cpp:501
-msgid "&Fit in Window\tCtrl+F"
-msgstr "&PÅizpůsobit oknu\tCtrl+F"
+msgid "&Fit in Window"
+msgstr "&PÅizpůsobit oknu"
#: Menus.cpp:502
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "PÅizpůsobit výš&ce okna\tCtrl+Shift+F"
+msgid "Fit &Vertically"
+msgstr "PÅizpůsobit výš&ce okna"
#: Menus.cpp:503
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "&ZvÄtÅ¡it podle výbÄru\tCtrl+E"
+msgid "&Zoom to Selection"
+msgstr "&ZvÄtÅ¡it podle výbÄru"
#: Menus.cpp:506
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
-msgstr "Sbalit vše&chny stopy\tCtrl+Shift+C"
+msgid "&Collapse All Tracks"
+msgstr "Sbalit vše&chny stopy"
#: Menus.cpp:507
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
-msgstr "Rozbalit všechny &stopy\tCtrl+Shift+X"
+msgid "E&xpand All Tracks"
+msgstr "Rozbalit všechny &stopy"
#: Menus.cpp:510
msgid "&Show Clipping"
@@ -1956,40 +1838,40 @@ msgstr "!Zjednodušený pohled"
msgid "T&ransport"
msgstr ""
-#: Menus.cpp:591
-msgid "Play\tSpace"
-msgstr ""
+#: toolbars/ControlToolBar.cpp:177
+msgid "Play"
+msgstr "PÅehrát"
#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
+msgid "&Loop Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Pause\tP"
+msgid "&Pause"
msgstr ""
#: Menus.cpp:596
-msgid "&Stop\tSpace"
+msgid "&Stop"
msgstr ""
#: Menus.cpp:799
-msgid "Skip to Start\tHome"
-msgstr "PÅeskoÄit na zaÄátek\tHome"
+msgid "Skip to Start"
+msgstr "PÅeskoÄit na zaÄátek"
#: Menus.cpp:800
-msgid "Skip to End\tEnd"
-msgstr "PÅeskoÄit na konec\tEnd"
+msgid "Skip to End"
+msgstr "PÅeskoÄit na konec"
#: Menus.cpp:600
-msgid "&Record\tR"
+msgid "&Record"
msgstr ""
#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
+msgid "&Timer Record..."
msgstr ""
#: Menus.cpp:604
-msgid "Append Record\tShift+R"
+msgid "Append Record"
msgstr ""
#: Menus.cpp:607
@@ -2017,15 +1899,14 @@ msgid "Add &New"
msgstr ""
#: Menus.cpp:553
-msgid "&Audio Track\tCtrl+Shift+N"
-msgstr "&Zvuková stopa\tCtrl+Shift+N"
+msgid "&Audio Track"
+msgstr "&Zvuková stopa"
#: Menus.cpp:554
msgid "&Stereo Track"
msgstr "&Stereo stopa"
-#: Menus.cpp:556
-#: TimeTrack.cpp:44
+#: Menus.cpp:556 TimeTrack.cpp:44
msgid "&Time Track"
msgstr "Äasová s&topa"
@@ -2034,8 +1915,8 @@ msgid "Mi&x and Render"
msgstr "S&mÃchat a vykreslit"
#: Menus.cpp:572
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
-msgstr "SmÃchat a vykreslit do nové stopy\tCtrl+Shift+M"
+msgid "Mix and Render to New Track"
+msgstr "SmÃchat a vykreslit do nové stopy"
#: Menus.cpp:576
msgid "&Resample..."
@@ -2046,12 +1927,12 @@ msgid "Remo&ve Tracks"
msgstr "&Odstranit stopu(y)"
#: Menus.cpp:592
-msgid "&Mute All Tracks\tCtrl+U"
-msgstr "&Vypnout všechny stopy\tCtrl+U"
+msgid "&Mute All Tracks"
+msgstr "&Vypnout všechny stopy"
#: Menus.cpp:593
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
-msgstr "&Zapnout všechny stopy\tCtrl+Shift+U"
+msgid "&UnMute All Tracks"
+msgstr "&Zapnout všechny stopy"
#: Menus.cpp:597
msgid "Align with &Zero"
@@ -2097,17 +1978,17 @@ msgstr ""
msgid "Synchronize MIDI with Audio"
msgstr ""
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
+#: Menus.cpp:686
+msgid "&Link Audio and Label Tracks"
msgstr ""
-#: Menus.cpp:623
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "V&ložit popisku k výbÄru\tCtrl+B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr ""
#: Menus.cpp:624
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "Vložit popisku na pozici &pÅehrávánÃ\tCtrl+M"
+msgid "Add Label At &Playback Position"
+msgstr "Vložit popisku na pozici &pÅehrávánÃ"
#: Menus.cpp:716
msgid "S&ort tracks"
@@ -2133,20 +2014,19 @@ msgstr ""
msgid "Effe&ct"
msgstr "Efe&kty"
-#: Menus.cpp:670
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "Opakovat pÅedchozà efekt\tCtrl+R"
-
#: Menus.cpp:702
msgid "&Analyze"
msgstr "&Analyzovat"
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
+
#: Menus.cpp:704
msgid "Plot Spectrum..."
msgstr "Vykreslit spektrum..."
-#: Menus.cpp:737
-#: Menus.cpp:740
+#: Menus.cpp:737 Menus.cpp:740
msgid "&Help"
msgstr "&NápovÄda"
@@ -2158,9 +2038,9 @@ msgstr "&O ÄiÅ¡tÄnà mluveného slova Audacity CleanSpeech..."
msgid "&Show Welcome Message..."
msgstr "&Zobrazit uvÃtacà zprávu..."
-#: Menus.cpp:748
-msgid "&Index..."
-msgstr "&Obsah..."
+#: Menus.cpp:958
+msgid "&Help..."
+msgstr ""
#: Menus.cpp:959
msgid "Show &Log..."
@@ -2178,181 +2058,149 @@ msgstr "Spustit &rychlostnà test (benchmark)..."
msgid "&Audio Device Info..."
msgstr "&Informace o zvukovém zaÅÃzenÃ..."
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
msgstr ""
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
msgstr ""
#: Menus.cpp:774
-msgid "Selection Tool\tF1"
-msgstr "VýbÄr\tF1"
+msgid "Selection Tool"
+msgstr "VýbÄr"
#: Menus.cpp:775
-msgid "Envelope Tool\tF2"
-msgstr "Obálka\tF2"
+msgid "Envelope Tool"
+msgstr "Obálka"
#: Menus.cpp:776
-msgid "Draw Tool\tF3"
-msgstr "KreslenÃ\tF3"
+msgid "Draw Tool"
+msgstr "KreslenÃ"
#: Menus.cpp:777
-msgid "Zoom Tool\tF4"
-msgstr "Lupa\tF4"
+msgid "Zoom Tool"
+msgstr "Lupa"
#: Menus.cpp:778
-msgid "Time Shift Tool\tF5"
-msgstr "Äasový posuv\tF5"
+msgid "Time Shift Tool"
+msgstr "Äasový posuv"
#: Menus.cpp:779
-msgid "Multi Tool\tF6"
-msgstr "VÃcenástrojový režim\tF6"
+msgid "Multi Tool"
+msgstr "VÃcenástrojový režim"
#: Menus.cpp:781
-msgid "Next Tool\tD"
-msgstr "Dalšà nástroj\tD"
+msgid "Next Tool"
+msgstr "Dalšà nástroj"
#: Menus.cpp:782
-msgid "Previous Tool\tA"
-msgstr "PÅedchozà nástroj\tA"
+msgid "Previous Tool"
+msgstr "PÅedchozà nástroj"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
-msgstr ""
-
-#: Menus.cpp:785
-msgid "Stop\tS"
-msgstr "Stop\tS"
-
-#: Menus.cpp:786
-msgid "Pause\tP"
-msgstr "Zastavit (Pause)\tP"
-
-#: Menus.cpp:787
-msgid "Record\tR"
-msgstr "Nahrávat\tR"
-
-#: Menus.cpp:788
-msgid "Record Append\tShift+R"
+msgid "Play/Stop"
msgstr ""
#: Menus.cpp:790
-msgid "Play/Stop and Set Cursor\tShift+A"
-msgstr "PÅehrát/zastavit a nastavit kurzor\tShift+A"
+msgid "Play/Stop and Set Cursor"
+msgstr "PÅehrát/zastavit a nastavit kurzor"
#: Menus.cpp:793
-msgid "Play One Second\t1"
-msgstr "PÅehrát jednu sekundu\t1"
+msgid "Play One Second"
+msgstr "PÅehrát jednu sekundu"
#: Menus.cpp:794
-msgid "Play To Selection\tB"
-msgstr "PÅehrát do výbÄru\tB"
-
-#: Menus.cpp:795
-msgid "Play Looped\tL"
-msgstr "PÅehrát ve smyÄce\tL"
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
+msgid "Play To Selection"
+msgstr "PÅehrát do výbÄru"
#: Menus.cpp:797
-msgid "Play Cut Preview\tC"
+msgid "Play Cut Preview"
msgstr ""
#: Menus.cpp:802
-msgid "Selection to Start\tShift+Home"
-msgstr "RozÅ¡ÃÅenà výbÄru na zaÄátek\tShift+Home"
+msgid "Selection to Start"
+msgstr "RozÅ¡ÃÅenà výbÄru na zaÄátek"
#: Menus.cpp:803
-msgid "Selection to End\tShift+End"
-msgstr "OznaÄit do konce\tShift+End"
+msgid "Selection to End"
+msgstr "OznaÄit do konce"
#: Menus.cpp:805
-msgid "DeleteKey\tBackspace"
-msgstr "Vymazat\tBackspace"
+msgid "DeleteKey"
+msgstr "Vymazat"
#: Menus.cpp:810
-msgid "DeleteKey2\tDelete"
-msgstr "Vymazat2\tDelete"
+msgid "DeleteKey2"
+msgstr "Vymazat2"
-#: Menus.cpp:816
-msgid "Seek left short period during playback\tLeft"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
msgstr ""
-#: Menus.cpp:817
-msgid "Seek right short period during playback\tRight"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
msgstr ""
-#: Menus.cpp:818
-msgid "Seek left long period during playback\tShift+Left"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
msgstr ""
-#: Menus.cpp:819
-msgid "Seek right long period during playback\tShift+Right"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
msgstr ""
#: Menus.cpp:823
-msgid "Move Focus to Previous Track\tUp"
-msgstr "PÅedchozà stopa jako aktivnÃ\tUp"
+msgid "Move Focus to Previous Track"
+msgstr "PÅedchozà stopa jako aktivnÃ"
-#: Menus.cpp:824
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
-msgstr "PÅedchozà stopa jako aktivnà a zmÄnit výbÄr\tShift+Up"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
+msgstr ""
#: Menus.cpp:825
-msgid "Move Focus to Next Track\tDown"
-msgstr "NásledujÃcà stopa jako aktivnÃ\tDown"
+msgid "Move Focus to Next Track"
+msgstr "NásledujÃcà stopa jako aktivnÃ"
-#: Menus.cpp:826
-msgid "Move Focus to Next and Change Selection\tShift+Down"
-msgstr "NásledujÃcà stopa jako aktivnà a zmÄnit výbÄr\tShift+Down"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
+msgstr ""
#: Menus.cpp:827
-msgid "Toggle Focused Track\tReturn"
-msgstr "PÅepnout vybranou stopu\tReturn"
-
-#: Menus.cpp:828
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr "PÅepnout vybranou stopu\tNUMPAD_ENTER"
-
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
-msgstr ""
+msgid "Toggle Focused Track"
+msgstr "PÅepnout vybranou stopu"
#: Menus.cpp:831
-msgid "Cursor Left\tLeft"
-msgstr "Kurzor doleva\tLeft"
+msgid "Cursor Left"
+msgstr "Kurzor doleva"
#: Menus.cpp:832
-msgid "Cursor Right\tRight"
-msgstr "Kurzor doleva\tšipka vlevo"
+msgid "Cursor Right"
+msgstr "Kurzor doleva"
#: Menus.cpp:833
-msgid "Cursor Short Jump Left\t,"
-msgstr "Kurzor krátce doleva Left\t,"
+msgid "Cursor Short Jump Left"
+msgstr "Kurzor krátce doleva Left"
#: Menus.cpp:834
-msgid "Cursor Short Jump Right\t."
-msgstr "Kurzor krátce doprava\t."
+msgid "Cursor Short Jump Right"
+msgstr "Kurzor krátce doprava"
#: Menus.cpp:835
-msgid "Cursor Long Jump Left\tShift+,"
-msgstr "Kurzor dlouze doleva\tShift+,"
+msgid "Cursor Long Jump Left"
+msgstr "Kurzor dlouze doleva"
#: Menus.cpp:836
-msgid "Cursor Long Jump Right\tShift+."
-msgstr "Kurzor dlouze doprava\tShift+."
+msgid "Cursor Long Jump Right"
+msgstr "Kurzor dlouze doprava"
#: Menus.cpp:838
-msgid "Selection Extend Left\tShift+Left"
-msgstr "RozÅ¡ÃÅenà výbÄru doleva\tShitf+Å ipka doleva"
+msgid "Selection Extend Left"
+msgstr "RozÅ¡ÃÅenà výbÄru doleva"
#: Menus.cpp:839
-msgid "Selection Extend Right\tShift+Right"
-msgstr "RozÅ¡ÃÅenà výbÄru doprava\tShift+Å ipka doprava"
+msgid "Selection Extend Right"
+msgstr "RozÅ¡ÃÅenà výbÄru doprava"
#: Menus.cpp:841
msgid "Set (or Extend) Left Selection"
@@ -2363,52 +2211,52 @@ msgid "Set (or Extend) Right Selection"
msgstr "Nastavit (nebo posunout) pravou hranici výbÄru"
#: Menus.cpp:844
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "ZmenÅ¡enà výbÄru zleva\tCtrl+Shift+Å ipka doprava"
+msgid "Selection Contract Left"
+msgstr "ZmenÅ¡enà výbÄru zleva"
#: Menus.cpp:845
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "ZmenÅ¡enà výbÄru zprava\tCtrl+Shift+Å ipka doleva"
+msgid "Selection Contract Right"
+msgstr "ZmenÅ¡enà výbÄru zprava"
#: Menus.cpp:847
-msgid "Change pan on focused track\tShift+P"
-msgstr "ZmÄnit panorama v aktivnà stopÄ\tShift+P"
+msgid "Change pan on focused track"
+msgstr "ZmÄnit panorama v aktivnà stopÄ"
#: Menus.cpp:848
-msgid "Pan left on focused track\tAlt+Shift+Left"
-msgstr "Posunout panorama v aktivnà stopÄ doleva\tAlt+Shift+Left"
+msgid "Pan left on focused track"
+msgstr "Posunout panorama v aktivnà stopÄ doleva"
#: Menus.cpp:849
-msgid "Pan right on focused track\tAlt+Shift+Right"
-msgstr "Posunout panorama v aktivnà stopÄ doleva\tAlt+Shift+Right"
+msgid "Pan right on focused track"
+msgstr "Posunout panorama v aktivnà stopÄ doleva"
#: Menus.cpp:850
-msgid "Change gain on focused track\tShift+G"
-msgstr "ZmÄnit citlivost v aktivnà stopÄ\tShift+G"
+msgid "Change gain on focused track"
+msgstr "ZmÄnit citlivost v aktivnà stopÄ"
#: Menus.cpp:851
-msgid "Increase gain on focused track\tAlt+Shift+Up"
-msgstr "ZvÄtÅ¡it citlivost v aktivnà stopÄ\tAlt+Shift+Up"
+msgid "Increase gain on focused track"
+msgstr "ZvÄtÅ¡it citlivost v aktivnà stopÄ"
#: Menus.cpp:852
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
-msgstr "ZmenÅ¡it citlivost v aktivnà stopÄ\tAlt+Shift+Down"
+msgid "Decrease gain on focused track"
+msgstr "ZmenÅ¡it citlivost v aktivnà stopÄ"
#: Menus.cpp:853
-msgid "Open menu on focused track\tShift+M"
-msgstr "OtevÅÃt menu aktivnà stopy\tShift+M"
+msgid "Open menu on focused track"
+msgstr "OtevÅÃt menu aktivnà stopy"
#: Menus.cpp:854
-msgid "Mute/Unmute focused track\tShift+U"
-msgstr "UmlÄet/Zapnout aktivnà stopu\tShift+U"
+msgid "Mute/Unmute focused track"
+msgstr "UmlÄet/Zapnout aktivnà stopu"
#: Menus.cpp:855
-msgid "Solo/Unsolo focused track\tShift+S"
-msgstr "Zapnout nebo vypnout solo pro vybranou stopu\tShift+S"
+msgid "Solo/Unsolo focused track"
+msgstr "Zapnout nebo vypnout solo pro vybranou stopu"
#: Menus.cpp:856
-msgid "Close focused track\tShift+C"
-msgstr "ZavÅÃt vybranou stopu\tShift+C"
+msgid "Close focused track"
+msgstr "ZavÅÃt vybranou stopu"
#: Menus.cpp:858
msgid "Snap To On"
@@ -2419,7 +2267,35 @@ msgid "Snap To Off"
msgstr "Vypnout pÅilÃnánÃ"
#: Menus.cpp:1071
-msgid "Full screen on/off\tF11"
+msgid "Full screen on/off"
+msgstr ""
+
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr ""
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr ""
+
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr ""
+
+#: Menus.cpp:1074
+msgid "Adjust input source"
msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
@@ -2480,8 +2356,8 @@ msgstr "NejdÅÃve musÃte zvolit stopu."
#: Menus.cpp:2035
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "Opakovat %s\tCtrl+R"
+msgid "Repeat %s"
+msgstr "Opakovat %s"
#: Menus.cpp:2166
msgid "There are no label tracks to export."
@@ -2512,9 +2388,7 @@ msgstr "Žádná akce k obnovenÃ"
msgid "Nothing to redo"
msgstr "Žádná akce k zopakovánÃ"
-#: Menus.cpp:2366
-#: TrackPanel.cpp:605
-#: toolbars/EditToolBar.cpp:133
+#: Menus.cpp:2366 TrackPanel.cpp:605 toolbars/EditToolBar.cpp:133
msgid "Cut"
msgstr "Vyjmout"
@@ -2530,10 +2404,7 @@ msgstr "RozdÄlit a vyjmout"
msgid "Split-cut to the clipboard"
msgstr "RozdÄlit a vyjmout do schránky"
-#: Menus.cpp:2469
-#: Menus.cpp:2540
-#: Menus.cpp:2634
-#: TrackPanel.cpp:607
+#: Menus.cpp:2469 Menus.cpp:2540 Menus.cpp:2634 TrackPanel.cpp:607
#: toolbars/EditToolBar.cpp:137
msgid "Paste"
msgstr "Vložit"
@@ -2542,8 +2413,7 @@ msgstr "Vložit"
msgid "Pasted text from the clipboard"
msgstr "Text vložený ze schránky"
-#: Menus.cpp:2540
-#: Menus.cpp:2634
+#: Menus.cpp:2540 Menus.cpp:2634
msgid "Pasted from the clipboard"
msgstr "Vloženo ze schránky"
@@ -2555,8 +2425,7 @@ msgstr ""
msgid "Copying stereo audio into a mono track is not allowed."
msgstr "Nenà možné kopÃrovat stereo zvuk do monofonnà stopy."
-#: Menus.cpp:2670
-#: toolbars/EditToolBar.cpp:139
+#: Menus.cpp:2670 toolbars/EditToolBar.cpp:139
msgid "Trim"
msgstr "&OÅÃznou"
@@ -2596,8 +2465,7 @@ msgstr "Spojit"
msgid "Silenced selected tracks for %.2f seconds at %.2f"
msgstr "Ztlumeny zvolené stopy na %.2f sekund od %.2f"
-#: Menus.cpp:2771
-#: toolbars/EditToolBar.cpp:141
+#: Menus.cpp:2771 toolbars/EditToolBar.cpp:141
msgid "Silence"
msgstr "Ticho"
@@ -2681,8 +2549,7 @@ msgstr "Rozpojit popisky"
msgid "Disjoined labeled regions"
msgstr "Rozpojené oblasti s popiskami"
-#: Menus.cpp:2947
-#: TrackPanel.cpp:6121
+#: Menus.cpp:2947 TrackPanel.cpp:6121
msgid "Split"
msgstr "RozdÄlit"
@@ -2698,15 +2565,6 @@ msgstr "RozdÄlit do nové stopy"
msgid "Split at labels"
msgstr "RozdÄlit na popisech (labels)"
-#: Menus.cpp:3425
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "Aby mohlo být vykresleno spektrum, musà mÃt vÅ¡echny stopy stejnou vzorkovacà frekvenci."
-
-#: Menus.cpp:3451
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "Je vybráno pÅÃliÅ¡ mnoho audia. Může být analyzováno jen poÄáteÄnÃch %.1f vteÅin."
-
#: Menus.cpp:3584
#, c-format
msgid "Imported labels from '%s'"
@@ -2745,8 +2603,7 @@ msgstr "Všechny soubory (*)|*"
msgid "Edit the metadata tags"
msgstr "Upravit tagy metadat"
-#: Menus.cpp:3669
-#: export/Export.cpp:298
+#: Menus.cpp:3669 export/Export.cpp:298
msgid "Edit Metadata"
msgstr "Upravit metadata"
@@ -2773,8 +2630,7 @@ msgstr "Do jedné nové stereo stopy bylo smÃcháno a vykresleno %d stop"
msgid "Mixed and rendered %d tracks into one new mono track"
msgstr "Do jedné nové mono stopy bylo smÃcháno a vykresleno %d stop"
-#: Menus.cpp:3736
-#: Mix.cpp:120
+#: Menus.cpp:3736 Mix.cpp:120
msgid "&Mix and Render"
msgstr "S&mÃchat a vykreslit"
@@ -2826,10 +2682,7 @@ msgstr ""
msgid "Created new audio track"
msgstr "Nová zvuková stopa vytvoÅena"
-#: Menus.cpp:3950
-#: Menus.cpp:3973
-#: Menus.cpp:3988
-#: Menus.cpp:4008
+#: Menus.cpp:3950 Menus.cpp:3973 Menus.cpp:3988 Menus.cpp:4008
msgid "New Track"
msgstr "Nová stopa"
@@ -2865,8 +2718,7 @@ msgstr "Uložit soubor s pÅedvolbami CleanSpeech jako:"
msgid "CleanSpeech Presets (*.csp)|*.csp"
msgstr "PÅedvolby CleanSpeech (*.csp)|*.csp"
-#: Menus.cpp:4123
-#: export/Export.cpp:515
+#: Menus.cpp:4123 export/Export.cpp:515
msgid "Sorry, pathnames longer than 256 characters not supported."
msgstr "Omlouvám se, ale názvy cest delšà než 256 znaků nejsou podporovány."
@@ -2874,8 +2726,7 @@ msgstr "Omlouvám se, ale názvy cest delšà než 256 znaků nejsou podporován
msgid "Problem encountered exporting presets."
msgstr "Problém pÅi exportu pÅedvoleb."
-#: Menus.cpp:4170
-#: export/Export.cpp:408
+#: Menus.cpp:4170 export/Export.cpp:408
msgid "Unable to export"
msgstr "Export nenà možný"
@@ -2887,9 +2738,7 @@ msgstr "&Odstranit stopu(y)"
msgid "Removed audio track(s)"
msgstr "OdstranÄné audio stopy"
-#: Menus.cpp:4508
-#: Menus.cpp:4527
-#: export/ExportMP3.cpp:1926
+#: Menus.cpp:4508 Menus.cpp:4527 export/ExportMP3.cpp:1926
msgid "Resample"
msgstr "PÅevzorkovat"
@@ -2914,8 +2763,7 @@ msgstr "PÅevzorkovat stopu"
msgid "Resampled audio track(s)"
msgstr "PÅevzorkované zvukové stopy"
-#: Mix.cpp:94
-#: Mix.cpp:101
+#: Mix.cpp:94 Mix.cpp:101
msgid "Mix"
msgstr "Mixér"
@@ -2935,6 +2783,10 @@ msgstr "Vyskytly se problémy s tiskem."
msgid "Print"
msgstr "Tisk"
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr ""
+
#: Project.cpp:636
msgid "Main Mix"
msgstr "Hlavnà mix"
@@ -2948,14 +2800,11 @@ msgstr "VÃtejte v Audacity verze %s"
msgid "(Recovered)"
msgstr "(Obnoveno)"
-#: Project.cpp:1482
-#: TrackPanel.cpp:804
-#: toolbars/ControlToolBar.cpp:191
+#: Menus.cpp:787
msgid "Record"
msgstr "Nahrávat"
-#: Project.cpp:1482
-#: TrackPanel.cpp:804
+#: Project.cpp:1482 TrackPanel.cpp:804
msgid "Recorded Audio"
msgstr "Nahraný zvuk"
@@ -2976,9 +2825,9 @@ msgstr ""
msgid "Save changes?"
msgstr "Uložit zmÄny?"
-#: Project.cpp:1694
-msgid "All files|*.*|All supported files|"
-msgstr "Všechny soubory|*.*|Všechny podporované soubory|"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
+msgstr ""
#: Project.cpp:1719
msgid "Select one or more audio files..."
@@ -2988,8 +2837,7 @@ msgstr "Zvolte jeden nebo vÃce zvukových souborů..."
msgid "Audacity projects|*.aup|"
msgstr "Projekty Audacity|*.aup|"
-#: Project.cpp:1799
-#: Project.cpp:2186
+#: Project.cpp:1799 Project.cpp:2186
#, c-format
msgid "This file was saved by Audacity %s, a much\n"
"older version. The format has changed.\n"
@@ -3004,13 +2852,22 @@ msgstr ""
msgid "1.0 or earlier"
msgstr "1.0 nebo pÅedeÅ¡lé"
-#: Project.cpp:1806
-#: Project.cpp:2198
+#: Project.cpp:1806 Project.cpp:2198
msgid "Opening old project file"
msgstr "OtevÃrá se starý projektový soubor"
-#: Project.cpp:1832
-#: Project.cpp:1840
+#: Project.cpp:2073
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr ""
+
+#: Project.cpp:1832 Project.cpp:1840
msgid "Error opening file"
msgstr "Chyba pÅi naÄÃtánà souboru."
@@ -3045,8 +2902,7 @@ msgstr "Obnovit"
msgid "Project checker repaired file"
msgstr "Projektová kontrola soubor opravila"
-#: Project.cpp:2001
-#: effects/Repair.h:29
+#: Project.cpp:2001 effects/Repair.h:29
msgid "Repair"
msgstr "Opravit"
@@ -3068,10 +2924,12 @@ msgstr "Soubor byl uložen Audacity %s.\n"
msgid "Can't open project file"
msgstr "Nenà možné otevÅÃt soubor projektu"
-#: Project.cpp:2193
+#: Project.cpp:2484
#, c-format
msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
msgstr ""
@@ -3091,17 +2949,22 @@ msgstr ""
msgid "Warning empty project"
msgstr ""
-#: Project.cpp:2591
+#: Project.cpp:2792
#, c-format
msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+"is not writable or the disk is full."
msgstr ""
-#: Project.cpp:2428
-#: Project.cpp:2442
+#: Project.cpp:2428 Project.cpp:2442
msgid "Error saving project"
msgstr "Chyba pÅi ukládánà projektu"
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
#: Project.cpp:2504
#, c-format
msgid "Saved %s"
@@ -3112,16 +2975,12 @@ msgstr "Uloženo %s"
msgid "Imported '%s'"
msgstr "Importováno '%s'"
-#: Menus.cpp:3649
-#: Project.cpp:2587
-#: Project.cpp:2612
-#: import/ImportPCM.cpp:440
+#: Menus.cpp:3649 Project.cpp:2587 Project.cpp:2612 import/ImportPCM.cpp:440
#: import/ImportPCM.cpp:484
msgid "Import"
msgstr "Import"
-#: Project.cpp:2639
-#: Project.cpp:2647
+#: Project.cpp:2639 Project.cpp:2647
msgid "Error importing"
msgstr "Chyba pÅi importu"
@@ -3164,8 +3023,7 @@ msgstr "Nový projekt vytvoÅen"
msgid "Deleted %.2f seconds at t=%.2f"
msgstr "Vymazáno %.2f sekund at t=%.2f"
-#: Project.cpp:2859
-#: effects/Equalization.cpp:1262
+#: Project.cpp:2859 effects/Equalization.cpp:1262
#: effects/Equalization.cpp:2593
msgid "Delete"
msgstr "Smazat"
@@ -3246,8 +3104,7 @@ msgstr "Libsamplerate od Erika de Castra Lopa"
msgid "Libsamplerate error: %d\n"
msgstr "Chyba Libsamplerate: %d\n"
-#: Resample.cpp:240
-#: Resample.cpp:250
+#: Resample.cpp:240 Resample.cpp:250
msgid "Resampling disabled."
msgstr "PÅevzorkovánà zakázáno."
@@ -3266,6 +3123,163 @@ msgstr "24 bit PCM"
msgid "32-bit float"
msgstr ""
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
+
+#: export/ExportMultiple.cpp:216 prefs/DirectoriesPrefs.cpp:92
+msgid "Choose..."
+msgstr "Zvolit..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
+
+#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
+msgid "false"
+msgstr "nepravda (false)"
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr "Nástroje"
+
+#: toolbars/ControlToolBar.cpp:82
+msgid "Control"
+msgstr "OvládánÃ"
+
+#: toolbars/MixerToolBar.cpp:60
+msgid "Mixer"
+msgstr "Mixér"
+
+#: toolbars/MeterToolBar.cpp:50
+msgid "Meter"
+msgstr "Metronom"
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
+#: toolbars/DeviceToolBar.cpp:57
+msgid "Device"
+msgstr "ZaÅÃzenÃ"
+
+#: toolbars/TranscriptionToolBar.cpp:84
+msgid "Transcription"
+msgstr "Transkripce"
+
+#: TrackPanel.cpp:464 TrackPanel.cpp:465
+msgid "Track Panel"
+msgstr "Panel stopy"
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: export/ExportMultiple.cpp:258
+msgid "Tracks"
+msgstr "Stopy"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
#: Screenshot.cpp:384
msgid "Saved "
msgstr "Uloženo"
@@ -3274,14 +3288,15 @@ msgstr "Uloženo"
msgid "Error trying to save file: "
msgstr "Chyba pÅi ukládánà souboru:"
-#: Sequence.cpp:732
-#: Sequence.cpp:742
-#: Sequence.cpp:749
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
+#: Sequence.cpp:732 Sequence.cpp:742 Sequence.cpp:749
msgid "Gap detected in project file\n"
msgstr ""
-#: ShuttleGui.cpp:1852
-#: effects/Effect.cpp:342
+#: ShuttleGui.cpp:1852 effects/Effect.cpp:342
#: effects/audiounits/AudioUnitEffect.cpp:872
msgid "Pre&view"
msgstr "Vy&zkoušet"
@@ -3322,8 +3337,7 @@ msgstr "Název alba"
msgid "Track Number"
msgstr "ÄÃslo stopy"
-#: Tags.cpp:633
-#: Tags.cpp:2138
+#: Tags.cpp:633 Tags.cpp:2138
msgid "Year"
msgstr "Rok:"
@@ -3331,9 +3345,7 @@ msgstr "Rok:"
msgid "Genre"
msgstr "Žánr"
-#: Tags.cpp:635
-#: Tags.cpp:2148
-#: prefs/MousePrefs.cpp:96
+#: Tags.cpp:635 Tags.cpp:2148 prefs/MousePrefs.cpp:96
msgid "Comments"
msgstr "KomentáÅe"
@@ -3349,9 +3361,7 @@ msgstr "Jméno tagu"
msgid "Tag Value"
msgstr "Hodnota tagu"
-#: Tags.cpp:818
-#: Tags.cpp:1476
-#: prefs/KeyConfigPrefs.cpp:116
+#: Tags.cpp:818 Tags.cpp:1476 prefs/KeyConfigPrefs.cpp:116
msgid "&Clear"
msgstr "&Vymazat"
@@ -3367,71 +3377,42 @@ msgstr ""
msgid "Rese&t..."
msgstr ""
-#: Tags.cpp:834
-#: Tags.cpp:1460
-#: Tags.cpp:1988
+#: Tags.cpp:834 Tags.cpp:1460 Tags.cpp:1988
msgid "Template"
msgstr "Å ablona"
-#: Tags.cpp:838
-#: Tags.cpp:1464
-#: Tags.cpp:1992
-#: prefs/KeyConfigPrefs.cpp:126
+#: Tags.cpp:838 Tags.cpp:1464 Tags.cpp:1992 prefs/KeyConfigPrefs.cpp:126
msgid "&Load..."
msgstr "&NaÄÃst..."
-#: Tags.cpp:839
-#: Tags.cpp:1465
-#: Tags.cpp:1993
-#: prefs/KeyConfigPrefs.cpp:125
+#: Tags.cpp:839 Tags.cpp:1465 Tags.cpp:1993 prefs/KeyConfigPrefs.cpp:125
msgid "&Save..."
msgstr "&Uložit..."
-#: Tags.cpp:841
-#: Tags.cpp:1467
-#: Tags.cpp:1995
+#: Tags.cpp:841 Tags.cpp:1467 Tags.cpp:1995
msgid "S&et Default"
msgstr "Nastavit jako výchozÃ"
-#: Tags.cpp:991
-#: Tags.cpp:1630
-#: Tags.cpp:2359
+#: Tags.cpp:991 Tags.cpp:1630 Tags.cpp:2359
msgid "Edit Genres"
msgstr "Editovat žánry"
-#: Tags.cpp:1024
-#: Tags.cpp:1036
-#: Tags.cpp:1052
-#: Tags.cpp:1065
-#: Tags.cpp:1668
-#: Tags.cpp:1680
-#: Tags.cpp:1696
-#: Tags.cpp:1709
-#: Tags.cpp:2402
-#: Tags.cpp:2414
-#: Tags.cpp:2430
-#: Tags.cpp:2443
+#: Tags.cpp:1024 Tags.cpp:1036 Tags.cpp:1052 Tags.cpp:1065 Tags.cpp:1668
+#: Tags.cpp:1680 Tags.cpp:1696 Tags.cpp:1709 Tags.cpp:2402 Tags.cpp:2414
+#: Tags.cpp:2430 Tags.cpp:2443
msgid "Reset Genres"
msgstr "Resetovat žánry"
-#: Tags.cpp:1024
-#: Tags.cpp:1065
-#: Tags.cpp:1668
-#: Tags.cpp:1709
-#: Tags.cpp:2402
+#: Tags.cpp:1024 Tags.cpp:1065 Tags.cpp:1668 Tags.cpp:1709 Tags.cpp:2402
#: Tags.cpp:2443
msgid "Unable to save genre file."
msgstr "Nenà možné uložit žánrový soubor."
-#: Tags.cpp:1035
-#: Tags.cpp:1679
-#: Tags.cpp:2413
+#: Tags.cpp:1035 Tags.cpp:1679 Tags.cpp:2413
msgid "Are you sure you want to reset the genre list to defaults?"
msgstr "Opravdu chcete vrátit seznam žánrů do výchozÃho stavu?"
-#: Tags.cpp:1052
-#: Tags.cpp:1696
-#: Tags.cpp:2430
+#: Tags.cpp:1052 Tags.cpp:1696 Tags.cpp:2430
msgid "Unable to open genre file."
msgstr "Nenà možné otevÅÃt žánrový soubor."
@@ -3439,21 +3420,19 @@ msgstr "Nenà možné otevÅÃt žánrový soubor."
msgid "Load Metadata As:"
msgstr ""
-#: Tags.cpp:1112
-#: Tags.cpp:1763
-#: Tags.cpp:2486
+#: Tags.cpp:1112 Tags.cpp:1763 Tags.cpp:2486
msgid "Error loading metadata"
msgstr "Chyba pÅi naÄÃtánà metadat"
-#: Tags.cpp:1087
-#: Tags.cpp:1141
-#: Tags.cpp:1742
-#: Tags.cpp:1778
-#: Tags.cpp:2465
+#: Tags.cpp:1087 Tags.cpp:1141 Tags.cpp:1742 Tags.cpp:1778 Tags.cpp:2465
#: Tags.cpp:2501
msgid "Save Metadata As:"
msgstr "Uložit metadata jako:"
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
#: Theme.cpp:638
#, c-format
msgid "Audacity could not write file:\n"
@@ -3486,8 +3465,7 @@ msgstr "Audacity nemůže najÃt soubor:\n"
" %s.\n"
"Téma se nenaÄetlo."
-#: Theme.cpp:807
-#: Theme.cpp:896
+#: Theme.cpp:807 Theme.cpp:896
#, c-format
msgid "Audacity could not load file:\n"
" %s.\n"
@@ -3511,8 +3489,7 @@ msgstr "Žádná z oÄekávaných komponent vzhledu\n"
"nebyla nalezena:\n"
" %s."
-#: Theme.cpp:942
-#: effects/NoiseRemoval.cpp:173
+#: Theme.cpp:942 effects/NoiseRemoval.cpp:173
#, c-format
msgid "Could not create directory:\n"
" %s"
@@ -3535,12 +3512,8 @@ msgstr "VÅ¡echny potÅebné soubory v:\n"
" %s\n"
"už existujÃ."
-#: SmartRecordDialog.cpp:226
-#: SmartRecordDialog.cpp:307
-#: TimeDialog.cpp:53
-#: effects/Noise.cpp:235
-#: effects/ToneGen.cpp:329
-#: effects/ToneGen.cpp:374
+#: SmartRecordDialog.cpp:226 SmartRecordDialog.cpp:307 TimeDialog.cpp:53
+#: effects/Noise.cpp:235 effects/ToneGen.cpp:329 effects/ToneGen.cpp:374
msgid "Duration"
msgstr "Délka"
@@ -3548,6 +3521,14 @@ msgstr "Délka"
msgid "Audacity Timer Record"
msgstr "Äasované nahrávánà Audacity"
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
#: SmartRecordDialog.cpp:223
msgid "Recording start"
msgstr "ZaÄátek nahrávánÃ"
@@ -3587,40 +3568,23 @@ msgstr "Äeká se na zaÄátek nahrávánà %s.\n"
msgid "Audacity Timer Record - Waiting for Start"
msgstr ""
-#: TrackPanel.cpp:464
-#: TrackPanel.cpp:465
-msgid "Track Panel"
-msgstr "Panel stopy"
-
-#: TrackPanel.cpp:548
-#: export/ExportPCM.cpp:133
-#: prefs/QualityPrefs.cpp:97
+#: TrackPanel.cpp:548 export/ExportPCM.cpp:133 prefs/QualityPrefs.cpp:97
msgid "Other..."
msgstr "DalÅ¡Ã..."
-#: TrackPanel.cpp:556
-#: TrackPanel.cpp:580
-#: TrackPanel.cpp:589
-#: TrackPanel.cpp:597
+#: TrackPanel.cpp:556 TrackPanel.cpp:580 TrackPanel.cpp:589 TrackPanel.cpp:597
msgid "Name..."
msgstr "Název..."
-#: TrackPanel.cpp:558
-#: TrackPanel.cpp:582
-#: TrackPanel.cpp:593
-#: TrackPanel.cpp:599
+#: TrackPanel.cpp:558 TrackPanel.cpp:582 TrackPanel.cpp:593 TrackPanel.cpp:599
msgid "Move Track Up"
msgstr "PÅesunout stopu nahoru"
-#: TrackPanel.cpp:559
-#: TrackPanel.cpp:583
-#: TrackPanel.cpp:594
-#: TrackPanel.cpp:600
+#: TrackPanel.cpp:559 TrackPanel.cpp:583 TrackPanel.cpp:594 TrackPanel.cpp:600
msgid "Move Track Down"
msgstr "PÅesunout stopu dolů"
-#: TrackPanel.cpp:561
-#: effects/ToneGen.cpp:325
+#: TrackPanel.cpp:561 effects/ToneGen.cpp:325
msgid "Waveform"
msgstr "KÅivka"
@@ -3636,18 +3600,15 @@ msgstr "Záznam spektra (f)"
msgid "Pitch (EAC)"
msgstr "Výška tónu (EAC)"
-#: TrackPanel.cpp:569
-#: TrackPanel.cpp:6091
+#: TrackPanel.cpp:569 TrackPanel.cpp:6091
msgid "Mono"
msgstr "Mono"
-#: TrackPanel.cpp:570
-#: TrackPanel.cpp:6090
+#: TrackPanel.cpp:570 TrackPanel.cpp:6090
msgid "Left Channel"
msgstr "Levý kanál"
-#: TrackPanel.cpp:571
-#: TrackPanel.cpp:6090
+#: TrackPanel.cpp:571 TrackPanel.cpp:6090
msgid "Right Channel"
msgstr "Pravý kanál"
@@ -3659,12 +3620,15 @@ msgstr "VytvoÅit stereo stopu"
msgid "Split Stereo Track"
msgstr "RozdÄlit stereo stopu"
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr ""
+
#: TrackPanel.cpp:575
msgid "Set Sample Format"
msgstr "Nastavit formát vzorkovánÃ"
-#: TrackPanel.cpp:577
-#: TrackPanel.cpp:6320
+#: TrackPanel.cpp:577 TrackPanel.cpp:6320
msgid "Set Rate"
msgstr "Nastavit frekvenci"
@@ -3684,8 +3648,7 @@ msgstr "PÃsmo..."
msgid "Set Range..."
msgstr "Nastavit rozsah..."
-#: TrackPanel.cpp:606
-#: toolbars/EditToolBar.cpp:135
+#: TrackPanel.cpp:606 toolbars/EditToolBar.cpp:135
msgid "Copy"
msgstr "KopÃrovat"
@@ -3731,21 +3694,13 @@ msgstr "KliknutÃm a tahem myšà nastavte hranici výbÄru"
msgid "Click and drag to move right selection boundary."
msgstr "KliknutÃm a tahem myšà zmÄÅte pravou hranici výbÄru."
-#: TrackPanel.cpp:1702
-#: TrackPanel.cpp:3993
-#: TrackPanel.cpp:4025
-#: TrackPanel.cpp:4280
-#: TrackPanel.cpp:6432
-#: TrackPanel.cpp:6452
+#: TrackPanel.cpp:1702 TrackPanel.cpp:3993 TrackPanel.cpp:4025
+#: TrackPanel.cpp:4280 TrackPanel.cpp:6432 TrackPanel.cpp:6452
msgid "Modified Label"
msgstr "Upravená popiska"
-#: TrackPanel.cpp:1703
-#: TrackPanel.cpp:3994
-#: TrackPanel.cpp:4026
-#: TrackPanel.cpp:4281
-#: TrackPanel.cpp:6433
-#: TrackPanel.cpp:6453
+#: TrackPanel.cpp:1703 TrackPanel.cpp:3994 TrackPanel.cpp:4026
+#: TrackPanel.cpp:4281 TrackPanel.cpp:6433 TrackPanel.cpp:6453
msgid "Label Edit"
msgstr "Ãprava popisky"
@@ -3753,8 +3708,7 @@ msgstr "Ãprava popisky"
msgid "Adjusted envelope."
msgstr "Upravená obálka."
-#: TrackPanel.cpp:1931
-#: prefs/MousePrefs.cpp:115
+#: TrackPanel.cpp:1931 prefs/MousePrefs.cpp:115
msgid "Envelope"
msgstr "Obálka"
@@ -3776,9 +3730,7 @@ msgstr "doprava"
msgid "Time shifted tracks/clips %s %.02f seconds"
msgstr ""
-#: TrackPanel.cpp:2092
-#: prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:112
+#: TrackPanel.cpp:2092 prefs/MousePrefs.cpp:111 prefs/MousePrefs.cpp:112
#: prefs/MousePrefs.cpp:113
msgid "Time-Shift"
msgstr "Äasový posuv"
@@ -3817,40 +3769,30 @@ msgid "Moved pan slider"
msgstr "ZmÄna nastavenà panorama (pan)"
#. i18n-hint: Title of the Gain slider, used to adjust the volume
-#: TrackPanel.cpp:3485
-#: TrackPanel.cpp:5726
-#: TrackPanel.cpp:7149
+#: TrackPanel.cpp:3485 TrackPanel.cpp:5726 TrackPanel.cpp:7149
msgid "Gain"
msgstr "Hlasitost"
# i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: TrackPanel.cpp:3485
-#: TrackPanel.cpp:5664
-#: TrackPanel.cpp:7156
+#: TrackPanel.cpp:3485 TrackPanel.cpp:5664 TrackPanel.cpp:7156
msgid "Pan"
msgstr "VyváženÃ"
-#: TrackPanel.cpp:3610
-#: TrackPanel.cpp:6385
-#: effects/ChangePitch.cpp:284
+#: TrackPanel.cpp:3610 TrackPanel.cpp:6385 effects/ChangePitch.cpp:284
msgid "up"
msgstr "nahoru"
-#: TrackPanel.cpp:3614
-#: TrackPanel.cpp:6386
-#: effects/ChangePitch.cpp:284
+#: TrackPanel.cpp:3614 TrackPanel.cpp:6386 effects/ChangePitch.cpp:284
msgid "down"
msgstr "dolů"
-#: TrackPanel.cpp:3621
-#: TrackPanel.cpp:6381
+#: TrackPanel.cpp:3621 TrackPanel.cpp:6381
#, c-format
msgid "Moved '%s' %s"
msgstr "PÅesunuto '%s' %s"
-#: TrackPanel.cpp:3624
-#: TrackPanel.cpp:6387
+#: TrackPanel.cpp:3624 TrackPanel.cpp:6387
msgid "Move Track"
msgstr "PÅesunout stopu"
@@ -3882,14 +3824,6 @@ msgstr "Upravené panorama"
msgid "Adjusted gain"
msgstr "Upravená citlivost"
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr ""
-
#: TrackPanel.cpp:5918
msgid "Can't delete track with active audio"
msgstr "Stopu s aktivnÃm zvukem nelze smazat"
@@ -3910,8 +3844,7 @@ msgstr "Levý,"
msgid "Right, "
msgstr "Pravý,"
-#: TrackPanel.cpp:6100
-#: TrackPanel.cpp:6225
+#: TrackPanel.cpp:6100 TrackPanel.cpp:6225
#, c-format
msgid "Changed '%s' to %s"
msgstr "ZmÄnÄno '%s' na %s"
@@ -3925,6 +3858,11 @@ msgstr "Kanál"
msgid "Split stereo track '%s'"
msgstr "RozdÄlit stereo stopu '%s'"
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
#: TrackPanel.cpp:6139
#, c-format
msgid "Made '%s' a stereo track"
@@ -3951,8 +3889,7 @@ msgstr "ZmÄna formátu"
msgid "Change lower speed limit (%) to:"
msgstr "ZmÄnit dolnà limit rychlosti (%) na:"
-#: TrackPanel.cpp:6350
-#: TrackPanel.cpp:6351
+#: TrackPanel.cpp:6350 TrackPanel.cpp:6351
msgid "Lower speed limit"
msgstr "Dolnà limit rychlosti"
@@ -3960,8 +3897,7 @@ msgstr "Dolnà limit rychlosti"
msgid "Change upper speed limit (%) to:"
msgstr "ZmÄnit hornà limit rychlosti (%) na:"
-#: TrackPanel.cpp:6357
-#: TrackPanel.cpp:6358
+#: TrackPanel.cpp:6357 TrackPanel.cpp:6358
msgid "Upper speed limit"
msgstr "Hornà limit rychlosti"
@@ -4003,6 +3939,10 @@ msgstr ""
msgid "Face size"
msgstr ""
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr ""
+
#: TrackPanel.cpp:7076
msgid "Mute"
msgstr "UmlÄet"
@@ -4036,10 +3976,7 @@ msgstr "Solo zapnuto"
msgid " Select On"
msgstr "VýbÄr zapnut"
-#: VoiceKey.cpp:88
-#: VoiceKey.cpp:238
-#: VoiceKey.cpp:376
-#: VoiceKey.cpp:517
+#: VoiceKey.cpp:88 VoiceKey.cpp:238 VoiceKey.cpp:376 VoiceKey.cpp:517
msgid "Selection is too small to use voice key."
msgstr "Po použità hlasového klÃÄe je výbÄr pÅÃliÅ¡ malý."
@@ -4066,8 +4003,7 @@ msgstr ""
msgid "Audio Track"
msgstr "Zvuková stopa"
-#: WaveTrack.cpp:555
-#: WaveTrack.cpp:574
+#: WaveTrack.cpp:555 WaveTrack.cpp:574
msgid "There is not enough room available to paste the selection"
msgstr "K vloženà výbÄru nenà dost mÃsta"
@@ -4085,10 +4021,10 @@ msgstr "Moduly 1 - %i"
msgid "Plugins %i to %i"
msgstr "Moduly %i - %i"
-#: commands/CommandManager.cpp:857
-#, fuzzy
-msgid "Disallowed for some reason. Try selecting some audio first?"
-msgstr "Z nÄjakého důvodu nepÅÃstupné. Pokuste se nedÅÃve vybrat nÄjaká zvuková data?"
+#: commands/CommandManager.cpp:923
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
+msgstr ""
#: commands/CommandManager.cpp:781
msgid "You can only do this when playing and recording are\n"
@@ -4154,9 +4090,7 @@ msgstr "Nová Å¡piÄková amplituda (dB):"
msgid "Allow clipping"
msgstr "Povolit clipping"
-#: effects/Amplify.cpp:237
-#: effects/Amplify.cpp:287
-#: effects/Amplify.cpp:353
+#: effects/Amplify.cpp:237 effects/Amplify.cpp:287 effects/Amplify.cpp:353
msgid "-Infinity"
msgstr "-NekoneÄno"
@@ -4172,9 +4106,7 @@ msgstr "Zesiluji"
msgid "You selected a track which does not contain audio. AutoDuck can only process audio tracks."
msgstr "Je vybrána stopa, která neobsahuje audio data.Automatické zeslabenà může zpracovávat jen audio stopy."
-#: effects/AutoDuck.cpp:126
-#: effects/AutoDuck.cpp:138
-#: effects/AutoDuck.cpp:453
+#: effects/AutoDuck.cpp:126 effects/AutoDuck.cpp:138 effects/AutoDuck.cpp:453
#: effects/AutoDuck.cpp:570
msgid "Auto Duck"
msgstr "Automatické zeslabenà (Auto Duck)"
@@ -4196,17 +4128,11 @@ msgid "Maximum pause:"
msgstr "Maximálnà pauza:"
#. i18n-hint: Name of time display format that shows time in seconds
-#: effects/AutoDuck.cpp:494
-#: effects/AutoDuck.cpp:499
-#: effects/AutoDuck.cpp:504
-#: effects/AutoDuck.cpp:509
-#: effects/AutoDuck.cpp:514
-#: prefs/AudioIOPrefs.cpp:166
-#: prefs/AudioIOPrefs.cpp:174
-#: prefs/AudioIOPrefs.cpp:176
-#: prefs/AudioIOPrefs.cpp:201
-#: prefs/AudioIOPrefs.cpp:203
-#: widgets/TimeTextCtrl.cpp:263
+#: effects/AutoDuck.cpp:494 effects/AutoDuck.cpp:499 effects/AutoDuck.cpp:504
+#: effects/AutoDuck.cpp:509 effects/AutoDuck.cpp:514
+#: prefs/AudioIOPrefs.cpp:166 prefs/AudioIOPrefs.cpp:174
+#: prefs/AudioIOPrefs.cpp:176 prefs/AudioIOPrefs.cpp:201
+#: prefs/AudioIOPrefs.cpp:203 widgets/TimeTextCtrl.cpp:263
msgid "seconds"
msgstr "sekund"
@@ -4226,8 +4152,7 @@ msgstr "VnitÅnà sestupná hrana:"
msgid "Inner fade up length:"
msgstr "VnitÅnà nábÄžná hrana:"
-#: effects/AutoDuck.cpp:521
-#: effects/Compressor.cpp:484
+#: effects/AutoDuck.cpp:521 effects/Compressor.cpp:484
msgid "Threshold:"
msgstr "Práh:"
@@ -4247,12 +4172,9 @@ msgstr "Automatické zeslabenÃ..."
msgid "Processing Auto Duck..."
msgstr "Aplikuje se Automatické zeslabenÃ..."
-#: effects/AvcCompressor.cpp:738
-#: effects/VST/VSTEffect.cpp:448
-#: effects/audiounits/AudioUnitEffect.cpp:877
-#: effects/nyquist/Nyquist.cpp:1042
-#: widgets/ErrorDialog.cpp:79
-#: widgets/ErrorDialog.cpp:105
+#: effects/AvcCompressor.cpp:738 effects/VST/VSTEffect.cpp:448
+#: effects/audiounits/AudioUnitEffect.cpp:877 effects/nyquist/Nyquist.cpp:1042
+#: widgets/ErrorDialog.cpp:79 widgets/ErrorDialog.cpp:105
#: widgets/Warning.cpp:67
msgid "OK"
msgstr "OK"
@@ -4317,14 +4239,12 @@ msgstr "ZmÄnit výšku ladÄnà bez zmÄny tempa"
#. i18n-hint: && in here is an escape character to get a single & on
#. * screen, so keep it as is
-#: effects/ChangePitch.cpp:254
-#: effects/ChangeSpeed.cpp:313
+#: effects/ChangePitch.cpp:254 effects/ChangeSpeed.cpp:313
#: effects/ChangeTempo.cpp:180
msgid "by Vaughan Johnson && Dominic Mazzoni"
msgstr "napsali Vaughan Johnson && Dominic Mazzoni"
-#: effects/ChangePitch.cpp:259
-#: effects/ChangeTempo.cpp:185
+#: effects/ChangePitch.cpp:259 effects/ChangeTempo.cpp:185
msgid "using SoundTouch, by Olli Parviainen"
msgstr "pomocà SoundTouch od Olli Parviainen"
@@ -4373,10 +4293,8 @@ msgstr ""
msgid "From frequency in hertz"
msgstr ""
-#: effects/ChangePitch.cpp:291
-#: effects/ChangePitch.cpp:337
-#: effects/ChangeSpeed.cpp:377
-#: effects/ChangeTempo.cpp:239
+#: effects/ChangePitch.cpp:291 effects/ChangePitch.cpp:337
+#: effects/ChangeSpeed.cpp:377 effects/ChangeTempo.cpp:239
#: effects/ChangeTempo.cpp:270
msgid "to"
msgstr "na"
@@ -4385,8 +4303,7 @@ msgstr "na"
msgid "To frequency in seconds"
msgstr ""
-#: effects/ChangePitch.cpp:360
-#: effects/ChangeSpeed.cpp:331
+#: effects/ChangePitch.cpp:360 effects/ChangeSpeed.cpp:331
#: effects/ChangeTempo.cpp:198
msgid "Percent Change:"
msgstr "Procento zmÄny:"
@@ -4404,8 +4321,7 @@ msgstr "ZmÄnit výšku..."
msgid "Changing Pitch"
msgstr "MÄnÃm výšku"
-#: effects/ChangeSpeed.cpp:53
-#: effects/ChangeTempo.cpp:55
+#: effects/ChangeSpeed.cpp:53 effects/ChangeTempo.cpp:55
#, c-format
msgid "Applied effect: %s %.1f%%"
msgstr "Použitý efekt: %s %.1f%%"
@@ -4557,12 +4473,11 @@ msgstr "Äas dobÄhu:"
msgid "Decay Time"
msgstr ""
-#: effects/Compressor.cpp:516
-msgid "Normalize to 0dB after compressing"
-msgstr "Po kompresi normalizovat na 0 dB"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
+msgstr ""
#: effects/Compressor.cpp:563
-#, c-format
#, fuzzy
msgid "Threshold %d dB"
msgstr "Práh: %d dB"
@@ -4593,7 +4508,6 @@ msgid "%.1f:1"
msgstr ""
#: effects/Compressor.cpp:575
-#, c-format
#, fuzzy
msgid "Attack Time %.1f secs"
msgstr "Äas nábÄhu: %.1f sek."
@@ -4604,7 +4518,6 @@ msgid "%.1f secs"
msgstr ""
#: effects/Compressor.cpp:578
-#, c-format
#, fuzzy
msgid "Decay Time %.1f secs"
msgstr "Äas dobÄhu: %.1f sek."
@@ -4617,6 +4530,10 @@ msgstr "Kompresor..."
msgid "Applying Dynamic Range Compression..."
msgstr "Aplikuji kompresi dynamického rozsahu..."
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
msgstr ""
@@ -4636,19 +4553,6 @@ msgid "Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr ""
-
#: effects/Contrast.cpp:231
msgid "Contrast Analyzer"
msgstr ""
@@ -4657,15 +4561,12 @@ msgstr ""
msgid "Parameters"
msgstr ""
-#: effects/ToneGen.cpp:361
-#: toolbars/ControlToolBar.cpp:185
+#: effects/ToneGen.cpp:361 toolbars/ControlToolBar.cpp:185
msgid "Start"
msgstr "ZaÄátek"
-#: effects/ToneGen.cpp:362
-#: toolbars/ControlToolBar.cpp:188
-#: toolbars/SelectionBar.cpp:149
-#: toolbars/SelectionBar.cpp:254
+#: effects/ToneGen.cpp:362 toolbars/ControlToolBar.cpp:188
+#: toolbars/SelectionBar.cpp:149 toolbars/SelectionBar.cpp:254
msgid "End"
msgstr "Konec"
@@ -4685,6 +4586,11 @@ msgstr ""
msgid "Foreground end time"
msgstr ""
+#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
+#: effects/Contrast.cpp:289
+msgid "Measured"
+msgstr ""
+
#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
msgid "Use selection"
msgstr ""
@@ -4709,8 +4615,7 @@ msgstr ""
msgid "Contrast Result:"
msgstr ""
-#: Tags.cpp:829
-#: Tags.cpp:1981
+#: Tags.cpp:829 Tags.cpp:1981
msgid "Reset"
msgstr ""
@@ -4730,16 +4635,8 @@ msgstr ""
msgid "Help for WCAG2 Audio Contrast Analyzer"
msgstr ""
-#: toolbars/ControlToolBar.cpp:82
-msgid "Control"
-msgstr "OvládánÃ"
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
msgstr ""
#: effects/Contrast.cpp:328 effects/Contrast.cpp:336 effects/Contrast.cpp:344
@@ -4850,18 +4747,6 @@ msgstr ""
msgid "Data gathered"
msgstr ""
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr ""
-
#: effects/DtmfGen.cpp:48
msgid "DTMF Tone Generator"
msgstr "DTMF Tónový generátor"
@@ -4874,9 +4759,7 @@ msgstr "od Salva Ventury (2006)"
msgid "DTMF sequence:"
msgstr "DTMF sekvence:"
-#: effects/DtmfGen.cpp:446
-#: effects/Noise.cpp:255
-#: effects/ToneGen.cpp:328
+#: effects/DtmfGen.cpp:446 effects/Noise.cpp:255 effects/ToneGen.cpp:328
#: effects/ToneGen.cpp:365
msgid "Amplitude (0-1)"
msgstr "Amplituda (0-1)"
@@ -4897,9 +4780,7 @@ msgstr "Pracovnà cyklus:"
msgid "Tone duration:"
msgstr "Délka tónu:"
-#: effects/DtmfGen.cpp:482
-#: effects/DtmfGen.cpp:484
-#: effects/DtmfGen.cpp:560
+#: effects/DtmfGen.cpp:482 effects/DtmfGen.cpp:484 effects/DtmfGen.cpp:560
#: effects/DtmfGen.cpp:561
msgid "ms"
msgstr ""
@@ -4981,8 +4862,7 @@ msgstr "Kosinová"
msgid "Cubic"
msgstr "Kubická"
-#: effects/Equalization.cpp:362
-#: effects/Equalization.cpp:412
+#: effects/Equalization.cpp:362 effects/Equalization.cpp:412
msgid "Equalization"
msgstr "Ekvalizace"
@@ -4994,6 +4874,10 @@ msgstr "Chyba pÅi naÄÃtánà EQ kÅivky"
msgid "custom"
msgstr "uživatelský"
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr ""
+
#. i18n-hint: && in here is an escape character to get a single &
#. * on screen, so keep it as is
#: effects/Equalization.cpp:1087
@@ -5032,8 +4916,7 @@ msgstr "Délka filtru:"
msgid "Select curve:"
msgstr "Vyberte kÅivku:"
-#: effects/Equalization.cpp:1259
-#: effects/Equalization.cpp:2498
+#: effects/Equalization.cpp:1259 effects/Equalization.cpp:2498
#: export/ExportMultiple.cpp:826
msgid "Save As..."
msgstr "Uložit jako..."
@@ -5150,8 +5033,7 @@ msgstr "NejtÄžšÃ"
msgid "by Lynn Allan"
msgstr "od Lynna Allana"
-#: effects/Leveller.cpp:226
-#: effects/Leveller.cpp:231
+#: effects/Leveller.cpp:226 effects/Leveller.cpp:231
msgid "Degree of Leveling"
msgstr "StupeÅ vyrovnánÃ"
@@ -5200,10 +5082,6 @@ msgstr ""
msgid "Analyser"
msgstr ""
-#: toolbars/MixerToolBar.cpp:60
-msgid "Mixer"
-msgstr "Mixér"
-
#: effects/LoadEffects.cpp:116
msgid "Simulator"
msgstr ""
@@ -5443,15 +5321,9 @@ msgstr "OdstraÅuji Å¡um"
msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr ""
-#: effects/Normalize.cpp:74
-#: effects/Normalize.cpp:75
-msgid "false"
-msgstr "nepravda (false)"
-
#. i18n-hint: true here means that the option was
#. * selected. Opposite false if not selected
-#: effects/Normalize.cpp:74
-#: effects/Normalize.cpp:75
+#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
msgid "true"
msgstr "pravda (true)"
@@ -5509,8 +5381,7 @@ msgstr ""
msgid "Dry Wet"
msgstr ""
-#: effects/Phaser.cpp:264
-#: effects/Wahwah.cpp:221
+#: effects/Phaser.cpp:264 effects/Wahwah.cpp:221
msgid "LFO Frequency (Hz):"
msgstr "LFO frekvence (Hz):"
@@ -5518,8 +5389,7 @@ msgstr "LFO frekvence (Hz):"
msgid "LFO frequency in hertz"
msgstr ""
-#: effects/Phaser.cpp:280
-#: effects/Wahwah.cpp:237
+#: effects/Phaser.cpp:280 effects/Wahwah.cpp:237
msgid "LFO Start Phase (deg.):"
msgstr "LFO Startovnà fáze (deg.):"
@@ -5580,8 +5450,7 @@ msgstr "Opakovat %d-krát"
msgid "Tracks are too long to repeat the selection."
msgstr "Stopy jsou pÅÃliÅ¡ dlouhé pro opakovánà výbÄru."
-#: effects/Repeat.cpp:76
-#: effects/Repeat.cpp:80
+#: effects/Repeat.cpp:76 effects/Repeat.cpp:80
msgid "Repeat"
msgstr "Opakovat"
@@ -5594,8 +5463,7 @@ msgstr "PoÄet opakovánÃ:"
msgid "New selection length: hh:mm:ss"
msgstr ""
-#: effects/Repeat.cpp:207
-#: effects/Repeat.cpp:237
+#: effects/Repeat.cpp:207 effects/Repeat.cpp:237
msgid "New selection length: "
msgstr "Nová délka výbÄru:"
@@ -5667,9 +5535,7 @@ msgstr "OdstranÄnà špiÄek..."
msgid "Applying Spike Cleaner..."
msgstr "Aplikuje se odstranÄnà špiÄek..."
-#: Menus.cpp:358
-#: Menus.cpp:564
-#: effects/StereoToMono.h:23
+#: Menus.cpp:358 Menus.cpp:564 effects/StereoToMono.h:23
msgid "&Stereo to Mono"
msgstr "&Stereo na mono"
@@ -5726,8 +5592,7 @@ msgstr ""
msgid "Applied effect: Generate %s wave %s, frequency = %.2f Hz, amplitude = %.2f, %.6lf seconds"
msgstr ""
-#: effects/ToneGen.cpp:75
-#: widgets/Meter.cpp:379
+#: effects/ToneGen.cpp:75 widgets/Meter.cpp:379
msgid "Linear"
msgstr "LineárnÃ"
@@ -5759,8 +5624,7 @@ msgstr "Sawtooth (pilový zub)"
msgid "Square, no alias"
msgstr ""
-#: effects/ToneGen.cpp:327
-#: effects/ToneGen.cpp:363
+#: effects/ToneGen.cpp:327 effects/ToneGen.cpp:363
msgid "Frequency (Hz)"
msgstr "Frekvence (Hz)"
@@ -5808,28 +5672,43 @@ msgstr "Generuji tón"
msgid "All tracks must have the same sample rate"
msgstr "VÅ¡echny stopy musà mÃt stejnou vzorkovacà frekvenci"
-#: effects/TruncSilence.cpp:113
-#: effects/TruncSilence.cpp:322
+#: effects/TruncSilence.cpp:113 effects/TruncSilence.cpp:322
msgid "Truncate Silence"
msgstr "OÅezat ticho"
-#: effects/TruncSilence.cpp:346
-msgid "Max silence duration:"
-msgstr "Maximálnà délka ticha:"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr ""
-#: effects/TruncSilence.cpp:349
-#: prefs/AudioIOPrefs.cpp:190
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:349 prefs/AudioIOPrefs.cpp:190
#: prefs/AudioIOPrefs.cpp:193
msgid "milliseconds"
msgstr "milisekund"
+#: effects/TruncSilence.cpp:346
+msgid "Max silence duration:"
+msgstr "Maximálnà délka ticha:"
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ""
+
#: effects/TruncSilence.cpp:351
msgid "Threshold for silence:"
msgstr "Práh ticha: "
-#: effects/TruncSilence.cpp:376
-msgid " Duration must be at least 1 millisecond"
-msgstr " Délka musà být alespoŠ1 millisekunda"
+#: effects/TruncSilence.cpp:506
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
+msgstr ""
#: effects/TruncSilence.h:28
msgid "Truncate Silence..."
@@ -5839,17 +5718,55 @@ msgstr "OÅezat ticho..."
msgid "Truncating Silence..."
msgstr "OÅezává se ticho..."
-#: effects/VST/VSTEffect.cpp:165
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "Omlouvám se, ale VST efekt nemůže být aplikován na stereo stopy, u kterých nesouhlasà individuálnà kanály."
+#: effects/ladspa/LadspaEffect.cpp:608
+msgid "Effect Settings"
+msgstr "Nastavenà efektu"
+
+#: effects/ladspa/LadspaEffect.cpp:573 effects/ladspa/LadspaEffect.cpp:581
+#: prefs/GUIPrefs.cpp:51 prefs/QualityPrefs.cpp:72
+msgid "None"
+msgstr "Nic"
+
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
-#: effects/VST/VSTEffect.cpp:180
-msgid "Can't process replacing"
-msgstr "Nemohu provést zámÄnu"
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
-#: effects/VST/VSTEffect.cpp:403
-msgid "VST Plug-in parameters:"
-msgstr "Parametry pro VST plug-in"
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr ""
#: effects/Wahwah.cpp:61
#, c-format
@@ -5898,22 +5815,10 @@ msgstr "Aplikuji efekt: %s"
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr "Omlouvám se, ale efekt zásuvného modulu nemůže být aplikován na stereo stopy, u kterých nesouhlasà individuálnà kanály."
-#: effects/ladspa/LadspaEffect.cpp:573
-#: effects/ladspa/LadspaEffect.cpp:581
-#: prefs/GUIPrefs.cpp:51
-#: prefs/QualityPrefs.cpp:72
-msgid "None"
-msgstr "Nic"
-
-#: effects/ladspa/LadspaEffect.cpp:575
-#: effects/vamp/VampEffect.cpp:384
+#: effects/ladspa/LadspaEffect.cpp:575 effects/vamp/VampEffect.cpp:384
msgid "Author: "
msgstr "Autor:"
-#: effects/ladspa/LadspaEffect.cpp:608
-msgid "Effect Settings"
-msgstr "Nastavenà efektu"
-
#: effects/ladspa/LadspaEffect.cpp:699
msgid "Length (seconds)"
msgstr "Délka (sekundy)"
@@ -5934,8 +5839,7 @@ msgstr ""
msgid "Applying Nyquist Effect..."
msgstr "Aplikuji Nyquist efekt..."
-#: effects/nyquist/Nyquist.cpp:259
-#: effects/nyquist/Nyquist.cpp:321
+#: effects/nyquist/Nyquist.cpp:259 effects/nyquist/Nyquist.cpp:321
msgid "Nyquist Prompt..."
msgstr "PÅÃkazový Åádek Nyquistu..."
@@ -5955,8 +5859,7 @@ msgstr " Nyquist"
msgid "Nyquist Output: "
msgstr "Výstup Nyquistu:"
-#: effects/nyquist/Nyquist.cpp:598
-#: effects/nyquist/Nyquist.cpp:609
+#: effects/nyquist/Nyquist.cpp:598 effects/nyquist/Nyquist.cpp:609
msgid "Nyquist returned the value:"
msgstr "Nyquist vrátil hodnotu:"
@@ -6064,8 +5967,7 @@ msgstr " - Pravý"
msgid "Mixer Panel"
msgstr ""
-#: export/Export.cpp:976
-#: export/Export.cpp:1021
+#: export/Export.cpp:976 export/Export.cpp:1021
#, c-format
msgid "Output Channels: %2d"
msgstr "Výstupnà kanály: %2d"
@@ -6095,8 +5997,7 @@ msgstr ""
msgid "(external program)"
msgstr "(externà program)"
-#: export/ExportCL.cpp:250
-#: export/ExportPCM.cpp:367
+#: export/ExportCL.cpp:250 export/ExportPCM.cpp:367
#, c-format
msgid "Cannot export audio to %s"
msgstr "Audio nelze exportovat do %s"
@@ -6113,9 +6014,21 @@ msgstr "Exportuji celý projekt pomocà command-line enkóderu"
msgid "Command Output"
msgstr "Výstup pÅÃkazu"
-#: export/ExportFFmpeg.cpp:59
+#: export/ExportFFmpeg.cpp:61
msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
#: export/ExportFFmpeg.cpp:394
@@ -6183,6 +6096,10 @@ msgstr ""
msgid "AAC Export Setup"
msgstr ""
+#: export/ExportOGG.cpp:86
+msgid "Quality:"
+msgstr "Kvalita:"
+
#: export/ExportFFmpegDialogs.cpp:217
msgid "Specify AMR-NB Options"
msgstr ""
@@ -6316,12 +6233,8 @@ msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n
"Recommended - 192000"
msgstr ""
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr "Kvalita:"
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid "Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
@@ -6340,10 +6253,10 @@ msgstr ""
msgid "Cutoff Bandwidth:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:947
+#: export/ExportFFmpegDialogs.cpp:936
msgid "Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:949
@@ -6532,12 +6445,12 @@ msgstr ""
msgid "AC3 Files (FFmpeg)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:56
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:57
@@ -6648,6 +6561,17 @@ msgstr "Bitová hloubka:"
msgid "FLAC Files"
msgstr "Soubory FLAC"
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
#: export/ExportFLAC.cpp:310
msgid "Exporting the selected audio as FLAC"
msgstr "Vybraná zvuková data se exportujà jako FLAC"
@@ -6672,9 +6596,7 @@ msgstr "Soubory MP2"
msgid "Cannot export MP2 with this sample rate and bit rate"
msgstr "S touto vzorkovacà a bitovou frekvencà nelze exportovat do MP2"
-#: export/ExportMP2.cpp:240
-#: export/ExportMP3.cpp:1768
-#: export/ExportOGG.cpp:183
+#: export/ExportMP2.cpp:240 export/ExportMP3.cpp:1768 export/ExportOGG.cpp:183
msgid "Unable to open target file for writing"
msgstr "CÃlový soubor nenà možné otevÅÃt pro ÄtenÃ"
@@ -6688,9 +6610,7 @@ msgstr "Exportujà se vybraná zvuková data %d kbps"
msgid "Exporting entire file at %d kbps"
msgstr "Exportuje se celý soubor se vzorkovánÃm %d kbps"
-#: export/ExportMP3.cpp:221
-#: export/ExportMP3.cpp:239
-#: export/ExportMP3.cpp:253
+#: export/ExportMP3.cpp:221 export/ExportMP3.cpp:239 export/ExportMP3.cpp:253
msgid "kbps"
msgstr ""
@@ -6706,9 +6626,7 @@ msgstr "(Menšà soubory)"
msgid "Fast"
msgstr "Rychlý"
-#: export/ExportMP3.cpp:244
-#: export/ExportMP3.cpp:250
-#: prefs/GUIPrefs.cpp:41
+#: export/ExportMP3.cpp:244 export/ExportMP3.cpp:250 prefs/GUIPrefs.cpp:41
#: prefs/GUIPrefs.cpp:49
msgid "Standard"
msgstr "StandardnÃ"
@@ -6753,8 +6671,7 @@ msgstr "PrůmÄr"
msgid "Constant"
msgstr "KonstantnÃ"
-#: export/ExportMP3.cpp:373
-#: prefs/QualityPrefs.cpp:42
+#: export/ExportMP3.cpp:373 prefs/QualityPrefs.cpp:42
#: prefs/QualityPrefs.cpp:43
msgid "Quality"
msgstr "Kvalita"
@@ -6873,10 +6790,8 @@ msgstr ""
msgid "MP3 export library not found"
msgstr ""
-#: export/ExportMultiple.cpp:95
-#: export/ExportMultiple.cpp:374
-#: export/ExportMultiple.cpp:598
-#: export/ExportMultiple.cpp:765
+#: export/ExportMultiple.cpp:95 export/ExportMultiple.cpp:374
+#: export/ExportMultiple.cpp:598 export/ExportMultiple.cpp:765
msgid "Export Multiple"
msgstr "VÃcenásobný export"
@@ -6906,11 +6821,6 @@ msgstr "Možnosti..."
msgid "Export location:"
msgstr "UmÃstÄnà exportu:"
-#: export/ExportMultiple.cpp:216
-#: prefs/DirectoriesPrefs.cpp:92
-msgid "Choose..."
-msgstr "Zvolit..."
-
#: export/ExportMultiple.cpp:217
msgid "Create"
msgstr "VytvoÅit"
@@ -6935,10 +6845,6 @@ msgstr "Prvnà jméno souboru:"
msgid "First file name"
msgstr ""
-#: export/ExportMultiple.cpp:258
-msgid "Tracks"
-msgstr "Stopy"
-
#: export/ExportMultiple.cpp:265
msgid "Name files:"
msgstr "Pojmenovánà souborů:"
@@ -6972,6 +6878,35 @@ msgstr "\"%s\" úspÄÅ¡nÄ vytvoÅeno."
msgid "Choose a location to save the exported files"
msgstr "Zvolte umÃstÄnà pro exportované soubory"
+#: export/ExportMultiple.cpp:524
+#, c-format
+msgid "Successfully exported the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:527
+#, c-format
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr ""
+
#: export/ExportMultiple.cpp:470
#, c-format
msgid "\"%s\" doesn't exist.\n"
@@ -6981,23 +6916,10 @@ msgstr "\"%s\" neexistuje.\n"
"\n"
"Chcete ho vytvoÅit?"
-#: export/ExportMultiple.cpp:568
-#: export/ExportMultiple.cpp:703
+#: export/ExportMultiple.cpp:568 export/ExportMultiple.cpp:703
msgid "Edit metadata"
msgstr "Upravit metadata"
-#: export/ExportMultiple.cpp:595
-#: export/ExportMultiple.cpp:762
-#, c-format
-msgid "Successfully exported %d file(s)."
-msgstr "%d bylo úspÄÅ¡nÄ vyexportováno."
-
-#: export/ExportMultiple.cpp:596
-#: export/ExportMultiple.cpp:763
-#, c-format
-msgid "Something went wrong after exporting %d file(s)."
-msgstr "Po exportu %d souborů došlo k chybám."
-
#: export/ExportMultiple.cpp:825
#, c-format
msgid "Label %s is not a legal file name. You cannot use any of: %s\n"
@@ -7165,7 +7087,6 @@ msgstr "\"%s\" je soubor Advanced Audio Coding. \n"
"Bude tÅeba provést pÅevod na nÄkterý podporovaný formát, napÅ. WAV nebo AIFF."
#: import/Import.cpp:271
-#, c-format
#, fuzzy
msgid "\"%s\" is an encrypted audio file. \n"
"These typically are from an online music store. \n"
@@ -7269,6 +7190,10 @@ msgstr ""
msgid "FLAC files"
msgstr "Soubory FLAC"
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr ""
+
#: import/ImportLOF.cpp:92
msgid "List of Files in basic text format"
msgstr "Seznam souborů prostého textu"
@@ -7280,9 +7205,7 @@ msgid "Invalid window offset in LOF file."
msgstr "Chybná pozice okna v LOF souboru."
#. i18n-hint: You do not need to translate "LOF"
-#: import/ImportLOF.cpp:320
-#: import/ImportLOF.cpp:341
-#: import/ImportLOF.cpp:415
+#: import/ImportLOF.cpp:320 import/ImportLOF.cpp:341 import/ImportLOF.cpp:415
#: import/ImportLOF.cpp:435
msgid "LOF Error"
msgstr "LOF chyba"
@@ -7339,8 +7262,7 @@ msgstr "Chybná Vorbis bitstream hlaviÄka"
msgid "Internal logic fault"
msgstr "VnitÅnà logická chyba"
-#: export/ExportPCM.cpp:320
-#: import/ImportPCM.cpp:47
+#: export/ExportPCM.cpp:320 import/ImportPCM.cpp:47
msgid "WAV, AIFF, and other uncompressed types"
msgstr "WAV, AIFF, a dalšà nekomprimované typy"
@@ -7437,36 +7359,41 @@ msgstr ""
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr ""
-#: prefs/AudioIOPrefs.cpp:41
-#: prefs/AudioIOPrefs.cpp:42
-msgid "Audio I/O"
-msgstr "Audio vstup/výstup (I/O)"
+#: prefs/BatchPrefs.cpp:55 prefs/BatchPrefs.cpp:56
+msgid "Batch"
+msgstr "Dávka"
-#: prefs/AudioIOPrefs.cpp:100
-msgid "1 (Mono)"
-msgstr "1 (Mono)"
+#: prefs/BatchPrefs.cpp:77 prefs/GUIPrefs.cpp:92
+msgid "Behaviors"
+msgstr "ChovánÃ"
-#: prefs/AudioIOPrefs.cpp:101
-msgid "2 (Stereo)"
-msgstr "2 (Stereo)"
+#: prefs/BatchPrefs.cpp:80 prefs/GUIPrefs.cpp:129
+msgid "&Don't apply effects in batch mode"
+msgstr ""
-#: prefs/AudioIOPrefs.cpp:115
-msgid "Playback"
-msgstr "PÅehrávánÃ"
+#: prefs/BatchPrefs.cpp:83 prefs/GUIPrefs.cpp:132
+msgid "Cl&eanSpeech Mode (Customized GUI)"
+msgstr "Režim Cl&eanSpeech (Uživatelské rozhranÃ)"
-#: prefs/AudioIOPrefs.cpp:119
-#: prefs/AudioIOPrefs.cpp:137
-#: toolbars/DeviceToolBar.cpp:57
-msgid "Device"
-msgstr "ZaÅÃzenÃ"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:34 prefs/GUIPrefs.cpp:35
+msgid "Interface"
+msgstr "RozhranÃ"
+
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
+msgstr ""
#: prefs/AudioIOPrefs.cpp:122
msgid "Using:"
msgstr "PoužÃvá:"
-#: prefs/AudioIOPrefs.cpp:123
-msgid "Portaudio v"
-msgstr ""
+#: prefs/AudioIOPrefs.cpp:115
+msgid "Playback"
+msgstr "PÅehrávánÃ"
#: prefs/AudioIOPrefs.cpp:133
msgid "Recording"
@@ -7476,99 +7403,15 @@ msgstr "NahrávánÃ"
msgid "Channels"
msgstr "Kanály"
-#: prefs/AudioIOPrefs.cpp:145
-msgid "Playthrough"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr "&Hardware Playthrough: BÄhem nahrávánà novou stopu zároveÅ pÅehrávat"
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr "&Software Playthrough: BÄhem nahrávánà novou stopu zároveÅ pÅehrávat"
-
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:162
-msgid "Effects Preview"
-msgstr "Zkoušky efektů"
-
-#: prefs/AudioIOPrefs.cpp:165
-msgid "Length of preview:"
-msgstr "Délka zkuÅ¡ebnÃho poslechu:"
-
-#: prefs/AudioIOPrefs.cpp:170
-msgid "Cut Preview"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:173
-msgid "Preview before cut region:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:175
-msgid "Preview after cut region:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:183
-msgid "Latency"
-msgstr "Latence"
-
-#: prefs/AudioIOPrefs.cpp:189
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
-msgstr "Vyrovnávacà pamÄÅ¥:\n"
-"(vyššà = vÄtšà latence)"
-
-#: prefs/AudioIOPrefs.cpp:192
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr "Ãprava latence:(záporná = nazpÄt)"
-
-#: prefs/AudioIOPrefs.cpp:197
-msgid "Seek Time when playing"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:200
-msgid "Short period:"
-msgstr "Krátký posun:"
-
-#: prefs/AudioIOPrefs.cpp:202
-msgid "Long period:"
-msgstr "Dlouhý posun:"
-
-#: prefs/BatchPrefs.cpp:55
-#: prefs/BatchPrefs.cpp:56
-msgid "Batch"
-msgstr "Dávka"
-
-#: prefs/BatchPrefs.cpp:77
-#: prefs/GUIPrefs.cpp:92
-msgid "Behaviors"
-msgstr "ChovánÃ"
-
-#: prefs/BatchPrefs.cpp:80
-#: prefs/GUIPrefs.cpp:129
-msgid "&Don't apply effects in batch mode"
-msgstr ""
+#: prefs/AudioIOPrefs.cpp:100
+msgid "1 (Mono)"
+msgstr "1 (Mono)"
-#: prefs/BatchPrefs.cpp:83
-#: prefs/GUIPrefs.cpp:132
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr "Režim Cl&eanSpeech (Uživatelské rozhranÃ)"
+#: prefs/AudioIOPrefs.cpp:101
+msgid "2 (Stereo)"
+msgstr "2 (Stereo)"
-#: prefs/DirectoriesPrefs.cpp:55
-#: prefs/DirectoriesPrefs.cpp:56
+#: prefs/DirectoriesPrefs.cpp:55 prefs/DirectoriesPrefs.cpp:56
#: prefs/PrefsDialog.cpp:279
msgid "Directories"
msgstr "AdresáÅe"
@@ -7585,34 +7428,31 @@ msgstr "UmÃstÄnÃ:"
msgid "Free Space:"
msgstr "Volné mÃsto:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr "Automatické ukládánÃ"
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr "Automaticky uložit kopii projektu do zvláštnÃho adresáÅe"
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
-msgstr "Automaticky uložit každých:"
-
-#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
-msgstr "minut"
-
#: prefs/DirectoriesPrefs.cpp:110
msgid "Audio cache"
msgstr "Zvuková vyrovnávacà pamÄÅ¥"
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "Play and/or record using RAM (useful for slow drives)"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
#: prefs/DirectoriesPrefs.cpp:121
msgid "Choose a location to place the temporary directory"
msgstr "Zvolte umÃstÄnà pro doÄasný adresáÅ"
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: prefs/DirectoriesPrefs.cpp:166
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -7631,228 +7471,145 @@ msgstr "Do adresáÅe %s nelze zapisovat"
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "ZmÄna doÄasného adresáÅe se projevà až po restartu Audacity."
-#: prefs/FileFormatPrefs.cpp:48
-#: prefs/FileFormatPrefs.cpp:49
-msgid "Import / Export"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:77
-msgid "MP3 Export Library"
-msgstr "Knihovna pro exportu do MP3"
-
-#: prefs/FileFormatPrefs.cpp:80
-msgid "MP3 Library Version:"
-msgstr "Verze MP3 knihovny:"
+#: prefs/GUIPrefs.cpp:42
+msgid "In Browser"
+msgstr "V prohlÞeÄi"
-#: prefs/FileFormatPrefs.cpp:86
-msgid "MP3 Library:"
-msgstr "MP3 knihovna:"
+#: prefs/GUIPrefs.cpp:43
+msgid "From Internet"
+msgstr "Z internetu"
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:91
-msgid "LAME MP3 Library:"
-msgstr "Knihovna LAME MP3:"
-
-#: prefs/FileFormatPrefs.cpp:94
-msgid "&Download"
-msgstr "&Stáhnout"
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:136
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:100
-msgid "When importing audio files"
-msgstr "PÅi importu audio souborů"
-
-#: prefs/FileFormatPrefs.cpp:103
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
-msgstr "PÅed editacà v&ytvoÅit kopii souboru (bezpeÄnÄjÅ¡Ã)"
-
-#: prefs/FileFormatPrefs.cpp:104
-msgid "&Read uncompressed audio files directly from the original (faster)"
-msgstr "ÄÃst pÅÃmo z původnÃho soubo&ru (rychlejÅ¡Ã)"
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "&Normalize all tracks in project"
-msgstr "&Normalizovat všechny stopy v projektu"
-
-#: prefs/FileFormatPrefs.cpp:111
-msgid "When saving a project that depends on other audio files"
-msgstr "PÅi ukládánà projektů, které závisejà na dalÅ¡Ãch zvukových souborech"
-
-#: prefs/FileFormatPrefs.cpp:114
-msgid "Always © all audio into project (safest)"
-msgstr "Vždy &kopÃrovat vÅ¡echna zvuková data do projektu (nejbezpeÄnÄjÅ¡Ã)"
-
-#: prefs/FileFormatPrefs.cpp:115
-msgid "&Do not copy any audio"
-msgstr "&NekopÃrovat žádná zvuková data"
-
-#: prefs/FileFormatPrefs.cpp:116
-msgid "&Ask user"
-msgstr "Zept&at se uživatele"
-
-#: prefs/FileFormatPrefs.cpp:120
-msgid "When exporting tracks to an audio file"
-msgstr "PÅi exportu stop do audio souboru"
-
-#: prefs/FileFormatPrefs.cpp:123
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
-msgstr "Vždy smÃchat stopy do stereo nebo mono kaná&lů."
-
-#: prefs/FileFormatPrefs.cpp:124
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
-msgstr "Po&užÃt uživatelský mix (napÅÃklad export do multikanálového souboru 5.1)"
-
-#: prefs/FileFormatPrefs.cpp:126
-msgid "S&how Metadata Editor prior to export step"
-msgstr "PÅed provedenÃm exportu zobrazit editor &metadat "
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
+msgstr ""
-#: prefs/GUIPrefs.cpp:34
-#: prefs/GUIPrefs.cpp:35
-msgid "Interface"
-msgstr "RozhranÃ"
+#: prefs/GUIPrefs.cpp:141
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 dB (mÄlký rozsah pro vysokofrekvenÄnà editaci)"
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
-msgstr "V prohlÞeÄi"
+#: prefs/GUIPrefs.cpp:142
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 dB (PCM rozsah 8 bitových vzorků)"
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
-msgstr "Z internetu"
+#: prefs/GUIPrefs.cpp:143
+msgid "-60 dB (PCM range of 10 bit samples)"
+msgstr "-60 dB (PCM rozsah 10 bitových vzorků)"
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
-msgstr "Jednoduchý"
+#: prefs/GUIPrefs.cpp:144
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 dB (PCM rozsah 16 bitových vzorků)"
-#: prefs/GUIPrefs.cpp:94
-msgid "&Update display while playing"
-msgstr "&BÄhem pÅehrávánà obnovovat zobrazenÃ"
+#: prefs/GUIPrefs.cpp:145
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 dB (pÅibližná mez lidského sluchu)"
-#: prefs/GUIPrefs.cpp:96
-#, fuzzy
-msgid "Cl&osing last window quits Audacity"
-msgstr "ZavÅenà poslednÃho okna ukonÄà Audacity"
+#: prefs/GUIPrefs.cpp:146
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB (PCM rozsah 24 bitových vzorků)"
-#: prefs/GUIPrefs.cpp:98
-msgid "Enable &dragging of left and right selection edges"
-msgstr "&Povolit pÅetahovánà levé a pravé hranice výbÄru"
+#: prefs/SpectrumPrefs.cpp:140
+msgid "Display"
+msgstr "ZobrazenÃ"
#: prefs/GUIPrefs.cpp:100
msgid "Er&gonomic order of audio I/O buttons"
msgstr ""
-#: prefs/GUIPrefs.cpp:102
-msgid "Automatically &fit tracks vertically zoomed"
-msgstr "Automaticky pÅi&způsobovat stopy svislému zvÄtÅ¡enÃ"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
+msgstr ""
-#: prefs/GUIPrefs.cpp:104
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
msgstr ""
-#: prefs/GUIPrefs.cpp:106
-msgid "Editing a &clip can move other clips"
-msgstr "Ãprava &klipu může způsobit posunutà jiných klipů"
+#: prefs/GUIPrefs.cpp:169
+msgid "Help:"
+msgstr "NápovÄda:"
-#: prefs/GUIPrefs.cpp:108
-msgid "&Select all audio in project, if none selected"
-msgstr "Pokud nenà vybrán žádný projekt, &vybrat všechny"
+#: prefs/GUIPrefs.cpp:96
+#, fuzzy
+msgid "Cl&osing last window quits Audacity"
+msgstr "ZavÅenà poslednÃho okna ukonÄà Audacity"
#: prefs/GUIPrefs.cpp:110
msgid "&Beep on completion of longer activities"
msgstr "UkonÄenà déle trvajÃcÃch operacà oznámit &pÃpnutÃm"
-#: prefs/GUIPrefs.cpp:114
-msgid "Show / Hide"
-msgstr "Zobrazit / Skrýt"
-
-#: prefs/GUIPrefs.cpp:116
-msgid "Enable cut &lines"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:118
-msgid "Show warnings about &temp files"
-msgstr "Zobrazova&t varovánà týkajÃcà se doÄasných souborů"
-
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:122
-#, fuzzy
-msgid "Show &Welcome Message at program start up"
-msgstr "PÅi startu programu zobrazit uvÃtacà zprávu"
-
#: prefs/GUIPrefs.cpp:126
msgid "Modes"
msgstr "Režimy"
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
+msgstr ""
+
#: prefs/GUIPrefs.cpp:129
msgid "Don't a&pply effects in batch mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
+#: prefs/FileFormatPrefs.cpp:48 prefs/FileFormatPrefs.cpp:49
+msgid "Import / Export"
msgstr ""
-#: prefs/GUIPrefs.cpp:141
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 dB (mÄlký rozsah pro vysokofrekvenÄnà editaci)"
-
-#: prefs/GUIPrefs.cpp:142
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 dB (PCM rozsah 8 bitových vzorků)"
+#: prefs/FileFormatPrefs.cpp:100
+msgid "When importing audio files"
+msgstr "PÅi importu audio souborů"
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
-msgstr "-60 dB (PCM rozsah 10 bitových vzorků)"
+#: prefs/FileFormatPrefs.cpp:103
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
+msgstr "PÅed editacà v&ytvoÅit kopii souboru (bezpeÄnÄjÅ¡Ã)"
-#: prefs/GUIPrefs.cpp:144
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 dB (PCM rozsah 16 bitových vzorků)"
+#: prefs/FileFormatPrefs.cpp:104
+msgid "&Read uncompressed audio files directly from the original (faster)"
+msgstr "ÄÃst pÅÃmo z původnÃho soubo&ru (rychlejÅ¡Ã)"
-#: prefs/GUIPrefs.cpp:145
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 dB (pÅibližná mez lidského sluchu)"
+#: prefs/FileFormatPrefs.cpp:106
+msgid "&Normalize all tracks in project"
+msgstr "&Normalizovat všechny stopy v projektu"
-#: prefs/GUIPrefs.cpp:146
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB (PCM rozsah 24 bitových vzorků)"
+#: prefs/FileFormatPrefs.cpp:120
+msgid "When exporting tracks to an audio file"
+msgstr "PÅi exportu stop do audio souboru"
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
-msgstr "Výchozà režim zobrazenÃ"
+#: prefs/FileFormatPrefs.cpp:123
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+msgstr "Vždy smÃchat stopy do stereo nebo mono kaná&lů."
-#: prefs/GUIPrefs.cpp:166
-msgid "Other interface choices"
-msgstr "Dalšà volby rozhranÃ"
+#: prefs/FileFormatPrefs.cpp:124
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+msgstr "Po&užÃt uživatelský mix (napÅÃklad export do multikanálového souboru 5.1)"
-#: prefs/GUIPrefs.cpp:169
-msgid "Help:"
-msgstr "NápovÄda:"
+#: prefs/FileFormatPrefs.cpp:126
+msgid "S&how Metadata Editor prior to export step"
+msgstr "PÅed provedenÃm exportu zobrazit editor &metadat "
-#: prefs/GUIPrefs.cpp:170
-msgid "Solo Button:"
-msgstr "TlaÄÃtko Solo:"
+#: prefs/ImportExportPrefs.cpp:84
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
+msgstr ""
-#: prefs/KeyConfigPrefs.cpp:64
-#: prefs/KeyConfigPrefs.cpp:65
+#: prefs/KeyConfigPrefs.cpp:64 prefs/KeyConfigPrefs.cpp:65
msgid "Keyboard"
msgstr "Klávesnice"
@@ -7876,22 +7633,26 @@ msgstr "Na&stavit"
msgid "Note: Pressing Cmd+Q will quit. All other keys are valid."
msgstr "Poznámka: Stisknutà Cmd+Q ukonÄÃ. VÅ¡echny ostatnà klávesy jsou platné."
-#: prefs/KeyConfigPrefs.cpp:124
-#: prefs/ThemePrefs.cpp:105
+#: prefs/KeyConfigPrefs.cpp:124 prefs/ThemePrefs.cpp:105
msgid "&Defaults"
msgstr "&Výchozà hodnoty"
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr ""
+
#: prefs/KeyConfigPrefs.cpp:143
msgid "Key Combination"
msgstr "Kombinace kláves"
-#: prefs/KeyConfigPrefs.cpp:163
-msgid "Export Keyboard Shortcuts As:"
-msgstr "Exportovat klávesové zkratky jako:"
+#: prefs/KeyConfigPrefs.cpp:367 toolbars/EditToolBar.cpp:144
+msgid "Undo"
+msgstr "ZpÄt"
-#: prefs/KeyConfigPrefs.cpp:181
-msgid "Error saving keyboard shortcuts"
-msgstr "Chyba pÅi ukládánà klávesových zkratek"
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr ""
#: prefs/KeyConfigPrefs.cpp:196
msgid "Select an XML file containing Audacity keyboard shortcuts..."
@@ -7901,6 +7662,14 @@ msgstr "Zvolte XML soubor obsahujÃcà klávesové zkratky pro Audacity..."
msgid "Error loading keyboard shortcuts"
msgstr "Chyba pÅi naÄÃtánà klávesových zkratek"
+#: prefs/KeyConfigPrefs.cpp:163
+msgid "Export Keyboard Shortcuts As:"
+msgstr "Exportovat klávesové zkratky jako:"
+
+#: prefs/KeyConfigPrefs.cpp:181
+msgid "Error saving keyboard shortcuts"
+msgstr "Chyba pÅi ukládánà klávesových zkratek"
+
#: prefs/KeyConfigPrefs.cpp:241
#, c-format
msgid "The keyboard shortcut '%s' is already assigned to:\n"
@@ -7910,10 +7679,61 @@ msgstr "Klávesová zkratka '%s' už je použita pro:\n"
"\n"
"'%s'"
-#: prefs/KeyConfigPrefs.cpp:367
-#: toolbars/EditToolBar.cpp:144
-msgid "Undo"
-msgstr "ZpÄt"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:77
+msgid "MP3 Export Library"
+msgstr "Knihovna pro exportu do MP3"
+
+#: prefs/FileFormatPrefs.cpp:80
+msgid "MP3 Library Version:"
+msgstr "Verze MP3 knihovny:"
+
+#: prefs/FileFormatPrefs.cpp:86
+msgid "MP3 Library:"
+msgstr "MP3 knihovna:"
+
+#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:91
+msgid "LAME MP3 Library:"
+msgstr "Knihovna LAME MP3:"
+
+#: prefs/FileFormatPrefs.cpp:94
+msgid "&Download"
+msgstr "&Stáhnout"
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:109
+msgid "FFmpeg Library Version:"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
+msgid "FFmpeg Library:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:41 prefs/AudioIOPrefs.cpp:42
+msgid "Audio I/O"
+msgstr "Audio vstup/výstup (I/O)"
+
+#: prefs/AudioIOPrefs.cpp:123
+msgid "Portaudio v"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:145
+msgid "Playthrough"
+msgstr ""
#: prefs/AudioIOPrefs.cpp:147
msgid "&Play other tracks while recording new one"
@@ -7927,6 +7747,10 @@ msgstr ""
msgid "&Software Playthrough (Play new track while recording it)"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:170
+msgid "Cut Preview"
+msgstr ""
+
#: prefs/MidiIOPrefs.cpp:160
msgid "Play before cut region:"
msgstr ""
@@ -7935,6 +7759,10 @@ msgstr ""
msgid "Play after cut region:"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:183
+msgid "Latency"
+msgstr "Latence"
+
#: prefs/MidiIOPrefs.cpp:173
msgid "Audio to buffer:"
msgstr ""
@@ -7947,12 +7775,23 @@ msgstr ""
msgid "Seek Time"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:200
+msgid "Short period:"
+msgstr "Krátký posun:"
+
+#: prefs/AudioIOPrefs.cpp:202
+msgid "Long period:"
+msgstr "Dlouhý posun:"
+
+#: prefs/AudioIOPrefs.cpp:162
+msgid "Effects Preview"
+msgstr "Zkoušky efektů"
+
#: prefs/MidiIOPrefs.cpp:196
msgid "Play when previewing:"
msgstr ""
-#: prefs/MousePrefs.cpp:55
-#: prefs/MousePrefs.cpp:56
+#: prefs/MousePrefs.cpp:55 prefs/MousePrefs.cpp:56
msgid "Mouse"
msgstr "Myš"
@@ -7972,37 +7811,26 @@ msgstr "Äinnost pÅÃkazu"
msgid "Buttons"
msgstr "TlaÄÃtka"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:117
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:117
#: prefs/MousePrefs.cpp:122
msgid "Left-Click"
msgstr "Levé myÅ¡Ãtko"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:100
-#: prefs/MousePrefs.cpp:101
-#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:101 prefs/MousePrefs.cpp:102
msgid "Select"
msgstr "OznaÄit"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:122
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:122
msgid "Set Selection Point"
msgstr "Nastavit bod výbÄru"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:115
-#: prefs/MousePrefs.cpp:119
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:115 prefs/MousePrefs.cpp:119 prefs/MousePrefs.cpp:123
msgid "Left-Drag"
msgstr "Taženà za levé myÅ¡Ãtko"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:123
msgid "Set Selection Range"
msgstr "Nastavit rozsah výbÄru"
@@ -8030,12 +7858,8 @@ msgstr "Ctrl-Levé myÅ¡Ãtko"
msgid "Set Selection Point and Play"
msgstr "Nastavit bod výbÄru a pÅehrát"
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:108
-#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:106
+#: prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:108 prefs/MousePrefs.cpp:109
msgid "Zoom"
msgstr "ZvÄtÅ¡it"
@@ -8043,9 +7867,7 @@ msgstr "ZvÄtÅ¡it"
msgid "Zoom in on Point"
msgstr "ZvÄtÅ¡it na bod"
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:125
msgid "Zoom in on a Range"
msgstr "ZvÄtÅ¡it na rozsah"
@@ -8053,18 +7875,15 @@ msgstr "ZvÄtÅ¡it na rozsah"
msgid "same as right-drag"
msgstr "stejné jako taženà vpravo"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:106 prefs/MousePrefs.cpp:124
msgid "Right-Click"
msgstr "Pravé myÅ¡Ãtko"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:106 prefs/MousePrefs.cpp:124
msgid "Zoom out one step"
msgstr "Zmenšit o krok"
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:125
msgid "Right-Drag"
msgstr "Taženà pravým myÅ¡Ãtkem"
@@ -8100,8 +7919,7 @@ msgstr ""
msgid "Time shift all clips in track"
msgstr "Äasový posun vÅ¡ech klipů ve stopÄ"
-#: prefs/MousePrefs.cpp:113
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:113 prefs/MousePrefs.cpp:120
msgid "Ctrl-Left-Drag"
msgstr "Ctrl-Taženà levým myÅ¡Ãtkem"
@@ -8117,9 +7935,7 @@ msgstr "ZmÄnit kÅivku hlasitosti"
msgid "Change Sample"
msgstr "ZmÄnit vzorek"
-#: prefs/MousePrefs.cpp:117
-#: prefs/MousePrefs.cpp:118
-#: prefs/MousePrefs.cpp:119
+#: prefs/MousePrefs.cpp:117 prefs/MousePrefs.cpp:118 prefs/MousePrefs.cpp:119
#: prefs/MousePrefs.cpp:120
msgid "Pencil"
msgstr "Tužka"
@@ -8140,26 +7956,20 @@ msgstr "ZmÄnit nÄkolikrát"
msgid "Change ONE Sample only"
msgstr "ZmÄnit jen JEDEN vzorek"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123 prefs/MousePrefs.cpp:124
#: prefs/MousePrefs.cpp:125
msgid "Multi"
msgstr "Multi"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123
msgid "same as select tool"
msgstr "stejnÄ jako nástroj výbÄru"
-#: prefs/MousePrefs.cpp:124
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:124 prefs/MousePrefs.cpp:125
msgid "same as zoom tool"
msgstr "stejnÄ jako nástroj zvÄtÅ¡enÃ"
-#: prefs/MousePrefs.cpp:127
-#: prefs/MousePrefs.cpp:128
-#: prefs/MousePrefs.cpp:129
+#: prefs/MousePrefs.cpp:127 prefs/MousePrefs.cpp:128 prefs/MousePrefs.cpp:129
msgid "Any"
msgstr "Jakýkoliv"
@@ -8187,10 +7997,62 @@ msgstr "Ctrl-Rotace-KoleÄka"
msgid "Zoom in or out"
msgstr "ZvÄtÅ¡it nebo zmenÅ¡it"
+#: prefs/AudioIOPrefs.cpp:165
+msgid "Length of preview:"
+msgstr "Délka zkuÅ¡ebnÃho poslechu:"
+
+#: prefs/AudioIOPrefs.cpp:173
+msgid "Preview before cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:175
+msgid "Preview after cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:197
+msgid "Seek Time when playing"
+msgstr ""
+
#: prefs/PrefsDialog.cpp:89
msgid "Audacity Preferences"
msgstr "Nastavenà Audacity"
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:111
+msgid "When saving a project that depends on other audio files"
+msgstr "PÅi ukládánà projektů, které závisejà na dalÅ¡Ãch zvukových souborech"
+
+#: prefs/FileFormatPrefs.cpp:114
+msgid "Always © all audio into project (safest)"
+msgstr "Vždy &kopÃrovat vÅ¡echna zvuková data do projektu (nejbezpeÄnÄjÅ¡Ã)"
+
+#: prefs/FileFormatPrefs.cpp:115
+msgid "&Do not copy any audio"
+msgstr "&NekopÃrovat žádná zvuková data"
+
+#: prefs/FileFormatPrefs.cpp:116
+msgid "&Ask user"
+msgstr "Zept&at se uživatele"
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr "Automatické ukládánÃ"
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr "Automaticky uložit kopii projektu do zvláštnÃho adresáÅe"
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr "Automaticky uložit každých:"
+
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr "minut"
+
#: prefs/QualityPrefs.cpp:73
msgid "Rectangle"
msgstr "ObdélnÃkový"
@@ -8215,46 +8077,46 @@ msgstr "Výchozà rychlost vzorkovánÃ:"
msgid "Default Sample Format:"
msgstr "Výchozà formát vzorkovánÃ:"
-#: prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "Konvertor vzorkovacà rychlosti v reálném Äase:"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:139
-msgid "High-quality sample rate converter:"
-msgstr "Vysoce kvalitnà konvertor vzorkovacà rychlosti:"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+#, fuzzy
+msgid "Sample Rate Converter:"
+msgstr "PÅevodnÃk vzorkovacà frekvence"
-#: prefs/QualityPrefs.cpp:142
-msgid "Real-time dither:"
-msgstr "MÃchánà v reálném Äase"
+#: prefs/QualityPrefs.cpp:164
+msgid "Dither"
+msgstr ""
-#: prefs/QualityPrefs.cpp:145
-msgid "High-quality dither:"
-msgstr "Vysoce kvalitnà konvertor vzorkovacà rychlosti:"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
-msgstr "PÅevod"
+#: prefs/AudioIOPrefs.cpp:149
+msgid "Overdub: &Play other tracks while recording new one"
+msgstr ""
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
-msgstr "PÅevodnÃk vzorkovacà frekvence"
+#: prefs/AudioIOPrefs.cpp:150
+msgid "&Hardware Playthrough: Play new track while recording it"
+msgstr "&Hardware Playthrough: BÄhem nahrávánà novou stopu zároveÅ pÅehrávat"
-#: prefs/QualityPrefs.cpp:164
-msgid "Dither"
+#: prefs/AudioIOPrefs.cpp:157
+msgid "&Software Playthrough: Play new track while recording or monitoring"
msgstr ""
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
-msgstr "V reálném Äase:"
+#: prefs/AudioIOPrefs.cpp:160
+msgid "(uncheck when recording \"stereo mix\")"
+msgstr ""
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
-msgstr "Vysoká kvalita:"
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
+msgstr ""
-#: prefs/SmartRecordPrefs.cpp:54
-#: prefs/SmartRecordPrefs.cpp:55
-msgid "Smart Recording"
-msgstr "Inteligentnà nahrávánÃ"
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
+msgstr ""
#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
msgid "Sound Activated Recording"
@@ -8264,23 +8126,58 @@ msgstr ""
msgid "Sound Activation Level (dB):"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:41
-#: prefs/SpectrumPrefs.cpp:42
+#: prefs/SpectrumPrefs.cpp:41 prefs/SpectrumPrefs.cpp:42
msgid "Spectrograms"
msgstr "Spektrogramy"
-#: prefs/SpectrumPrefs.cpp:91
-msgid "FFT Size"
-msgstr "FFT velikost"
-
#: prefs/SpectrumPrefs.cpp:94
msgid "8 - most wideband"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:99
msgid "256 - default"
msgstr "256 - výchozÃ"
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:107
msgid "32768 - most narrowband"
msgstr "32768 - nejužšà pásmo"
@@ -8289,21 +8186,26 @@ msgstr "32768 - nejužšà pásmo"
msgid "4096 - most narrowband"
msgstr "4096 - nejužšà pásmo"
-#: prefs/SpectrumPrefs.cpp:116
-msgid "Window type:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:93
+#, fuzzy
+msgid "Window type"
msgstr "Druh okna:"
#: prefs/SpectrumPrefs.cpp:125
msgid "FFT Skip Points"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:140
-msgid "Display"
-msgstr "ZobrazenÃ"
-
-#: prefs/SpectrumPrefs.cpp:144
-msgid "&Grayscale"
-msgstr "&OdstÃny Å¡edi"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
+msgstr ""
#: prefs/SpectrumPrefs.cpp:147
msgid "Minimum Frequency (Hz):"
@@ -8313,16 +8215,16 @@ msgstr "Minimálnà frekvence (Hz):"
msgid "Maximum Frequency (Hz):"
msgstr "Maximálnà frekvence (Hz):"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
msgstr ""
#: prefs/SpectrumPrefs.cpp:165
@@ -8333,6 +8235,14 @@ msgstr "Minimálnà amplituda (dB):"
msgid "Max. Number of Notes (1..128):"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:161
+msgid "&Find Notes"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Quantize Notes"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:197
msgid "The maximum frequency must be an integer"
msgstr "Maximálnà frekvence musà být integer"
@@ -8349,20 +8259,57 @@ msgstr "Minimálnà frekvence musà být celé ÄÃslo"
msgid "Minimum frequency must be at least 0 Hz"
msgstr "Minimálnà frekvence musà být nejménÄ 0 Hz"
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr "Minimálnà amplituda (dB) musà být celé ÄÃslo"
#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
-msgstr "Maximálnà poÄet not musà být celé ÄÃslo v rozmezà 1..128"
+msgid "The maximum number of notes must be in the range 1..128"
+msgstr ""
-#: prefs/ThemePrefs.cpp:62
-#: prefs/ThemePrefs.cpp:63
+#: prefs/ThemePrefs.cpp:62 prefs/ThemePrefs.cpp:63
msgid "Theme"
msgstr "Vzhled programu"
+#: prefs/ThemePrefs.cpp:126
+msgid "Info"
+msgstr "Info"
+
+#: prefs/ThemePrefs.cpp:91
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#. i18n-hint: && in here is an escape character to get a single & on screen,
#. * so keep it as is
#: prefs/ThemePrefs.cpp:93
@@ -8393,80 +8340,96 @@ msgstr "Uložit soubory"
msgid "Load Files"
msgstr "OtevÅÃt soubory"
-#: prefs/ThemePrefs.cpp:126
-msgid "Info"
-msgstr "Info"
+#: prefs/GUIPrefs.cpp:50
+msgid "Simple"
+msgstr "Jednoduchý"
-#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
+#: prefs/GUIPrefs.cpp:94
+msgid "&Update display while playing"
+msgstr "&BÄhem pÅehrávánà obnovovat zobrazenÃ"
+
+#: prefs/GUIPrefs.cpp:102
+msgid "Automatically &fit tracks vertically zoomed"
+msgstr "Automaticky pÅi&způsobovat stopy svislému zvÄtÅ¡enÃ"
+
+#: prefs/TracksPrefs.cpp:88
+#, fuzzy
+msgid "Default View Mode:"
+msgstr "Výchozà režim zobrazenÃ"
+
+#: prefs/GUIPrefs.cpp:108
+msgid "&Select all audio in project, if none selected"
+msgstr "Pokud nenà vybrán žádný projekt, &vybrat všechny"
+
+#: prefs/GUIPrefs.cpp:116
+msgid "Enable cut &lines"
msgstr ""
-#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
+#: prefs/GUIPrefs.cpp:98
+msgid "Enable &dragging of left and right selection edges"
+msgstr "&Povolit pÅetahovánà levé a pravé hranice výbÄru"
+
+#: prefs/GUIPrefs.cpp:104
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
msgstr ""
-#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:106
+msgid "Editing a &clip can move other clips"
+msgstr "Ãprava &klipu může způsobit posunutà jiných klipů"
+
+#: prefs/GUIPrefs.cpp:170
+msgid "Solo Button:"
+msgstr "TlaÄÃtko Solo:"
+
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
msgstr ""
-#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
msgstr ""
-#: toolbars/ControlToolBar.cpp:174
-msgid "Pause"
-msgstr "Pozastavit (Pause)"
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:177
-msgid "Play"
-msgstr "PÅehrát"
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
msgstr ""
-#: toolbars/ControlToolBar.cpp:182
+#: Menus.cpp:786
+msgid "Pause"
+msgstr "Zastavit (Pause)"
+
+#: Menus.cpp:785
msgid "Stop"
msgstr "Stop"
-#: toolbars/ControlToolBar.cpp:185
-msgid "Skip to Start"
-msgstr "PÅeskoÄit na zaÄátek"
+#: toolbars/ControlToolBar.cpp:194
+msgid "Clean Speech"
+msgstr "ÄiÅ¡tÄnà mluveného slova - Clean Speech"
-#: toolbars/ControlToolBar.cpp:188
-msgid "Skip to End"
-msgstr "PÅeskoÄit na konec"
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play (Shift for Loop Play)"
+msgstr ""
#: toolbars/ControlToolBar.cpp:192
msgid "Record (Shift for Append Record)"
msgstr ""
-#: toolbars/ControlToolBar.cpp:194
-msgid "Clean Speech"
-msgstr "ÄiÅ¡tÄnà mluveného slova - Clean Speech"
-
-#: toolbars/ControlToolBar.cpp:530
-#: toolbars/ControlToolBar.cpp:844
+#: toolbars/ControlToolBar.cpp:530 toolbars/ControlToolBar.cpp:844
msgid "Error while opening sound device. "
msgstr "Chyba pÅi otevÃránà zvukového zaÅÃzenÃ."
@@ -8478,13 +8441,11 @@ msgstr ""
msgid "Recording not permitted"
msgstr "Nahrávánà nenà povoleno"
-#: toolbars/DeviceToolBar.cpp:113
-#: toolbars/DeviceToolBar.cpp:115
+#: toolbars/DeviceToolBar.cpp:113 toolbars/DeviceToolBar.cpp:115
msgid "Output Device"
msgstr "Výstupnà zaÅÃzenÃ"
-#: toolbars/DeviceToolBar.cpp:134
-#: toolbars/DeviceToolBar.cpp:136
+#: toolbars/DeviceToolBar.cpp:134 toolbars/DeviceToolBar.cpp:136
msgid "Input Device"
msgstr "Vstupnà zaÅÃzenÃ"
@@ -8508,29 +8469,21 @@ msgstr "ZvÄtÅ¡it"
msgid "Zoom Out"
msgstr "Zmenšit"
-#: toolbars/EditToolBar.cpp:156
-msgid "Zoom Toggle"
-msgstr "Prohozenà zvÄtÅ¡enÃ"
-
-#: toolbars/EditToolBar.cpp:160
-msgid "Fit Selection"
-msgstr "PÅizpůsobit výbÄru"
-
#: toolbars/EditToolBar.cpp:160
msgid "Fit selection in window"
msgstr "PÅizpůsobit výbÄr velikosti okna"
#: toolbars/EditToolBar.cpp:162
-msgid "Fit Project"
-msgstr "Celý projekt"
-
-#: toolbars/EditToolBar.cpp:162
msgid "Fit project in window"
msgstr "PÅizpůsobit projekt velikosti okna"
-#: toolbars/MeterToolBar.cpp:50
-msgid "Meter"
-msgstr "Metronom"
+#: toolbars/EditToolBar.cpp:160
+msgid "Fit Selection"
+msgstr "PÅizpůsobit výbÄru"
+
+#: toolbars/EditToolBar.cpp:162
+msgid "Fit Project"
+msgstr "Celý projekt"
#: toolbars/MeterToolBar.cpp:80
msgid "Play Meter"
@@ -8576,22 +8529,27 @@ msgstr ""
msgid "Input Source"
msgstr "Vstupnà zdroj"
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:80
msgid "Selection"
msgstr "VýbÄr"
-#: toolbars/SelectionBar.cpp:128
-#: toolbars/SelectionBar.cpp:185
+#: toolbars/SelectionBar.cpp:128 toolbars/SelectionBar.cpp:185
msgid "Project Rate (Hz):"
msgstr "Vzorkovánà (Hz):"
-#: toolbars/SelectionBar.cpp:142
-#: toolbars/SelectionBar.cpp:247
+#: toolbars/SelectionBar.cpp:142 toolbars/SelectionBar.cpp:247
msgid "Selection Start:"
msgstr "ZaÄátek výbÄru:"
-#: toolbars/SelectionBar.cpp:155
-#: toolbars/SelectionBar.cpp:253
+#: toolbars/SelectionBar.cpp:155 toolbars/SelectionBar.cpp:253
msgid "Length"
msgstr "Délka"
@@ -8599,13 +8557,11 @@ msgstr "Délka"
msgid "hidden"
msgstr "skryto"
-#: toolbars/SelectionBar.cpp:175
-#: toolbars/SelectionBar.cpp:264
+#: toolbars/SelectionBar.cpp:175 toolbars/SelectionBar.cpp:264
msgid "Audio Position:"
msgstr "Pozice:"
-#: toolbars/SelectionBar.cpp:225
-#: toolbars/SelectionBar.cpp:230
+#: toolbars/SelectionBar.cpp:225 toolbars/SelectionBar.cpp:230
msgid "Snap To"
msgstr "PÅilÃnanÃ"
@@ -8626,8 +8582,7 @@ msgstr "Konec výbÄru"
msgid "Audacity %s ToolBar"
msgstr "Audacity %s panel"
-#: toolbars/ToolDock.cpp:74
-#: toolbars/ToolDock.cpp:75
+#: toolbars/ToolDock.cpp:74 toolbars/ToolDock.cpp:75
msgid "ToolDock"
msgstr ""
@@ -8659,34 +8614,6 @@ msgstr "Levé=zvÄtÅ¡it, Pravé=zmenÅ¡it,StÅednÃ=normálnà velikost"
msgid "Click and drag to move a track in time"
msgstr "KliknutÃm a tahem myšà umÃstÄte stopy na Äas"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr "Nástroje"
-
-#: toolbars/ToolsToolBar.cpp:147
-#: toolbars/ToolsToolBar.cpp:182
-msgid "Selection Tool"
-msgstr "VýbÄr"
-
-#: toolbars/ToolsToolBar.cpp:148
-msgid "Envelope Tool"
-msgstr "Obálka"
-
-#: toolbars/ToolsToolBar.cpp:149
-#: toolbars/ToolsToolBar.cpp:183
-msgid "Time Shift Tool"
-msgstr "Äasový posuv"
-
-#: toolbars/ToolsToolBar.cpp:150
-#: toolbars/ToolsToolBar.cpp:185
-msgid "Zoom Tool"
-msgstr "Lupa"
-
-#: toolbars/ToolsToolBar.cpp:151
-#: toolbars/ToolsToolBar.cpp:184
-msgid "Draw Tool"
-msgstr "KreslenÃ"
-
#: toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
msgstr "VÃcenástrojový režim"
@@ -8695,24 +8622,11 @@ msgstr "VÃcenástrojový režim"
msgid "Slide Tool"
msgstr ""
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr "VÃcenásobný nástroj"
-
-#: toolbars/TranscriptionToolBar.cpp:84
-msgid "Transcription"
-msgstr "Transkripce"
-
#: toolbars/TranscriptionToolBar.cpp:171
msgid "Play at selected speed"
msgstr "PÅehrát nastavenou rychlostÃ"
-#: toolbars/TranscriptionToolBar.cpp:172
-msgid "Play-at-speed"
-msgstr "PÅehrát nastavenou rychlostÃ"
-
-#: toolbars/TranscriptionToolBar.cpp:178
-#: toolbars/TranscriptionToolBar.cpp:183
+#: toolbars/TranscriptionToolBar.cpp:178 toolbars/TranscriptionToolBar.cpp:183
msgid "Playback Speed"
msgstr "Rychlost pÅehrávánÃ"
@@ -8720,74 +8634,38 @@ msgstr "Rychlost pÅehrávánÃ"
msgid "Adjust left selection to next onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:197
-msgid "Left-to-On"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:199
msgid "Adjust right selection to previous offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:200
-msgid "Right-to-Off"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:202
msgid "Adjust left selection to next offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:203
-msgid "Left-to-Off"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:205
msgid "Adjust right selection to previous onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:206
-msgid "Right-to-On"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:208
msgid "Select region of sound around cursor"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:209
-msgid "Select-Sound"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:211
msgid "Select region of silence around cursor"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:212
-msgid "Select-Silence"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:214
msgid "Automatically make labels from words"
msgstr "Automaticky vytváÅet popisky ze slov"
-#: toolbars/TranscriptionToolBar.cpp:215
-msgid "Make Labels"
-msgstr "VytvoÅit popisky"
-
#: toolbars/TranscriptionToolBar.cpp:217
msgid "Add label at selection"
msgstr "PÅidat popisku k výbÄru"
-#: toolbars/TranscriptionToolBar.cpp:218
-msgid "Add Label"
-msgstr "PÅidat popisku"
-
#: toolbars/TranscriptionToolBar.cpp:220
msgid "Calibrate voicekey"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:221
-msgid "Calibrate"
-msgstr "Kalibrovat"
-
#: toolbars/TranscriptionToolBar.cpp:225
msgid "Adjust Sensitivity"
msgstr "Nastavit citlivost"
@@ -8820,6 +8698,46 @@ msgstr ""
msgid "Key type"
msgstr ""
+#: toolbars/TranscriptionToolBar.cpp:172
+msgid "Play-at-speed"
+msgstr "PÅehrát nastavenou rychlostÃ"
+
+#: toolbars/TranscriptionToolBar.cpp:197
+msgid "Left-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:200
+msgid "Right-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:203
+msgid "Left-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:206
+msgid "Right-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:209
+msgid "Select-Sound"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:212
+msgid "Select-Silence"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:215
+msgid "Make Labels"
+msgstr "VytvoÅit popisky"
+
+#: toolbars/TranscriptionToolBar.cpp:218
+msgid "Add Label"
+msgstr "PÅidat popisku"
+
+#: toolbars/TranscriptionToolBar.cpp:221
+msgid "Calibrate"
+msgstr "Kalibrovat"
+
#: widgets/AButton.cpp:302
msgid " (disabled)"
msgstr " (zakázáno)"
@@ -8835,15 +8753,13 @@ msgstr "TlaÄÃtko"
# i18n-hint: One-letter abbreviation for Left, in the Pan slider
#. i18n-hint: One-letter abbreviation for Left, in VU Meter
#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
-#: widgets/ASlider.cpp:604
-#: widgets/Meter.cpp:212
+#: widgets/ASlider.cpp:604 widgets/Meter.cpp:212
msgid "L"
msgstr "L"
#. i18n-hint: One-letter abbreviation for Right, in VU Meter
#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
-#: widgets/ASlider.cpp:607
-#: widgets/Meter.cpp:214
+#: widgets/ASlider.cpp:607 widgets/Meter.cpp:214
msgid "R"
msgstr "P"
@@ -8859,8 +8775,7 @@ msgstr "Levý"
msgid "Right"
msgstr "Pravý"
-#: widgets/ErrorDialog.cpp:78
-#: widgets/ErrorDialog.cpp:102
+#: widgets/ErrorDialog.cpp:78 widgets/ErrorDialog.cpp:102
msgid "Help"
msgstr "NápovÄda"
@@ -8893,8 +8808,7 @@ msgstr ""
msgid "%d rows, %d columns"
msgstr "%d Åádků, %d sloupců"
-#: widgets/Grid.cpp:649
-#: widgets/Grid.cpp:776
+#: widgets/Grid.cpp:649 widgets/Grid.cpp:776
#, c-format
msgid "Row %d"
msgstr "Åádek %d"
@@ -8973,8 +8887,7 @@ msgstr ""
msgid "Cancel"
msgstr ""
-#: widgets/Ruler.cpp:1478
-#: widgets/Ruler.cpp:1479
+#: widgets/Ruler.cpp:1478 widgets/Ruler.cpp:1479
msgid "Vertical Ruler"
msgstr "Svislé mÄÅÃtko"
@@ -9218,3 +9131,15 @@ msgstr ""
msgid "Could not load file: \"%s\""
msgstr "Nelze naÄÃst soubor: \"%s\""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
+
diff --git a/locale/cy.po b/locale/cy.po
index 0ef3f27..b1f3791 100644
--- a/locale/cy.po
+++ b/locale/cy.po
@@ -31,16 +31,15 @@ msgid "Audacity is a free program written by a team of volunteer <a href=\"http:
msgstr ""
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#. i18n-hint: The translation of "translator_credits" will appear
-#: ../src/AboutDialog.cpp:127
-#: ../src/AboutDialog.cpp:129
+#: ../src/AboutDialog.cpp:127 ../src/AboutDialog.cpp:129
msgid "translator_credits"
msgstr "Cyfieithwyd y fersiwn Gymraeg gan f00."
@@ -83,7 +82,7 @@ msgid "Special thanks:"
msgstr "Diolchiadau arbennig:"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
msgstr ""
#: AboutDialog.cpp:320
@@ -194,18 +193,13 @@ msgstr ""
msgid "GPL License"
msgstr ""
-#: ../src/AudacityApp.cpp:304
-#: ../src/Project.cpp:1770
+#: ../src/AudacityApp.cpp:304 ../src/Project.cpp:1770
#, c-format
msgid "%s is already open in another window."
msgstr "Mae %s yn barod yn agored mewn ffenest arall."
-#: ../src/AudacityApp.cpp:306
-#: ../src/Project.cpp:1772
-#: ../src/Project.cpp:1843
-#: ../src/Project.cpp:1894
-#: ../src/Project.cpp:1905
-#: ../src/Project.cpp:1943
+#: ../src/AudacityApp.cpp:306 ../src/Project.cpp:1772 ../src/Project.cpp:1843
+#: ../src/Project.cpp:1894 ../src/Project.cpp:1905 ../src/Project.cpp:1943
msgid "Error opening project"
msgstr "Gwall wrth agor cywaith"
@@ -230,20 +224,28 @@ msgstr "Mesurydd Mewnbwn"
msgid "Output Meter"
msgstr "Mesurydd Allbwn"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
+#: ../src/Menus.cpp:141
+msgid "&New"
+msgstr "&Newydd"
+
+#: ../src/Menus.cpp:143
+msgid "&Open..."
+msgstr "&Agor..."
+
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
+
#: AudacityApp.cpp:534 Menus.cpp:575
-msgid "&Preferences...\tCtrl+,"
+msgid "&Preferences..."
msgstr ""
-#: ../src/AudacityApp.cpp:626
-#: ../src/AudacityApp.cpp:696
+#: ../src/AudacityApp.cpp:626 ../src/AudacityApp.cpp:696
#, c-format
msgid "Using block size of %ld\n"
msgstr "Defnyddio maint bloc o %ld\n"
-#: ../src/AudacityApp.cpp:641
-#: ../src/AudacityApp.cpp:711
+#: ../src/AudacityApp.cpp:641 ../src/AudacityApp.cpp:711
#, c-format
msgid "Unknown command line option: %s\n"
msgstr "Opsiwn llinell orchymun anhybus: %s\n"
@@ -358,14 +360,14 @@ msgstr "Gwall:"
msgid "Error Initializing Audio"
msgstr "Gwall Wrth Baratoi'r Sain"
-#: AudioIO.cpp:1236
-msgid "Latency problem"
+#: AudioIO.cpp:1225
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
+"Audacity has brought it back to start at zero.\n"
+"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
msgstr ""
#: AudioIO.cpp:1236
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
-"Audacity has brought it back to start at zero.\n"
-"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
+msgid "Latency problem"
msgstr ""
#: AutoRecovery.cpp:40
@@ -414,10 +416,8 @@ msgstr ""
msgid "Could not enumerate files in auto save directory"
msgstr ""
-#: ../src/ControlToolBar.cpp:723
-#: ../src/ControlToolBar.cpp:884
-#: ../src/effects/Effect.cpp:331
-#: ../src/prefs/DirectoriesPrefs.cpp:204
+#: ../src/ControlToolBar.cpp:723 ../src/ControlToolBar.cpp:884
+#: ../src/effects/Effect.cpp:331 ../src/prefs/DirectoriesPrefs.cpp:204
msgid "Error"
msgstr "Gwall"
@@ -593,8 +593,9 @@ msgstr ""
msgid "C&hain (Double-Click or press SPACE to edit)"
msgstr ""
-#: BatchProcessDialog.cpp:450
-msgid "No"
+#. i18n-hint: This is the number of the command in the list
+#: BatchProcessDialog.cpp:453
+msgid "Num"
msgstr ""
#: BatchProcessDialog.cpp:456
@@ -912,11 +913,11 @@ msgstr "Petryalog"
msgid "FFmpeg support not compiled in"
msgstr ""
-#: FFmpeg.cpp:101
+#: FFmpeg.cpp:103
msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
#: FFmpeg.cpp:104
@@ -972,11 +973,12 @@ msgstr ""
msgid "FFmpeg not found"
msgstr ""
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
#: FFmpeg.h:109
@@ -999,8 +1001,7 @@ msgstr ""
msgid "Frequency Analysis"
msgstr "Dadansoddiad Amledd"
-#: ../src/FreqWindow.cpp:129
-#: ../src/TrackPanel.cpp:837
+#: ../src/FreqWindow.cpp:129 ../src/TrackPanel.cpp:837
msgid "Spectrum"
msgstr "Sbectrwm"
@@ -1058,15 +1059,25 @@ msgstr ""
msgid "Export"
msgstr ""
-#: ../src/Benchmark.cpp:223
-#: ../src/FreqWindow.cpp:123
-#: ../src/effects/ClickRemoval.cpp:371
-#: ../src/effects/NoiseRemoval.cpp:463
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
+#: ../src/Benchmark.cpp:223 ../src/FreqWindow.cpp:123
+#: ../src/effects/ClickRemoval.cpp:371 ../src/effects/NoiseRemoval.cpp:463
msgid "Close"
msgstr "Cau"
-#: ../src/effects/Compressor.cpp:385
-#: ../src/effects/Compressor.cpp:393
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr ""
+
+#: ../src/effects/Compressor.cpp:385 ../src/effects/Compressor.cpp:393
#: ../src/widgets/Meter.cpp:293
msgid "dB"
msgstr "dB"
@@ -1076,6 +1087,15 @@ msgstr "dB"
msgid "Hz"
msgstr "Hz"
+#: ../src/Menus.cpp:2369
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "I blotio'r sbectrwm, rhaid i bob trac dewisiedig fod o'r un graddfa samplo."
+
+#: ../src/Menus.cpp:2395
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "Dewiswyd gormod o sain. Dim ond y %.1f eiliad o sain gaith ei ddadansoddi."
+
#: ../src/FreqWindow.cpp:463
msgid "Not enough data selected."
msgstr "Ni ddewiswyd digon o ddata."
@@ -1102,9 +1122,7 @@ msgstr "sbectrwm.txt"
msgid "Export Spectral Data As:"
msgstr "Allforio Data Sbectral Fel:"
-#: ../src/FreqWindow.cpp:1014
-#: ../src/Menus.cpp:1393
-#: ../src/Project.cpp:2159
+#: ../src/FreqWindow.cpp:1014 ../src/Menus.cpp:1393 ../src/Project.cpp:2159
#: ../src/prefs/KeyConfigPrefs.cpp:173
msgid "Couldn't write to file: "
msgstr "Methwyd ysgrifennu i'r ffeil: "
@@ -1117,6 +1135,21 @@ msgstr "Amledd (Hz)\tLefel (dB)"
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "Oedi (eiliadau)\tAmledd (Hz)\tLefel"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr ""
+
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr ""
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr ""
@@ -1194,7 +1227,7 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr ""
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
msgstr ""
#: HelpText.cpp:244
@@ -1218,7 +1251,7 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr ""
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
msgstr ""
#: HelpText.cpp:383
@@ -1287,6 +1320,14 @@ msgstr ""
msgid "GB"
msgstr ""
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
#: LabelDialog.cpp:50
msgid "Track"
msgstr ""
@@ -1346,9 +1387,7 @@ msgstr "Dewisiwch ffeil testun yn cynnwys labeli..."
msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
msgstr "Ffeiliau Testun (*.txt)|*.txt|Pob Ffeil (*.*)|*.*"
-#: ../src/Menus.cpp:2647
-#: ../src/Project.cpp:1820
-#: ../src/Project.cpp:1828
+#: ../src/Menus.cpp:2647 ../src/Project.cpp:1820 ../src/Project.cpp:1828
#: ../src/import/ImportMIDI.cpp:31
msgid "Could not open file: "
msgstr "Methwyd agor y ffeil: "
@@ -1402,21 +1441,13 @@ msgstr "Yn Agor Cywaith Audacity"
msgid "&File"
msgstr "&Ffeil"
-#: ../src/Menus.cpp:141
-msgid "&New\tCtrl+N"
-msgstr "&Newydd\tCtrl+N"
-
-#: ../src/Menus.cpp:143
-msgid "&Open...\tCtrl+O"
-msgstr "&Agor...\tCtrl+O"
-
#: ../src/Menus.cpp:145
-msgid "&Close\tCtrl+W"
-msgstr "&Cau\tCtrl+W"
+msgid "&Close"
+msgstr "&Cau"
#: ../src/Menus.cpp:146
-msgid "&Save Project\tCtrl+S"
-msgstr "Ca&dw Cywaith\tCtrl+S"
+msgid "&Save Project"
+msgstr "Ca&dw Cywaith"
#: ../src/Menus.cpp:150
msgid "Save Project &As..."
@@ -1439,7 +1470,7 @@ msgid "&Import"
msgstr ""
#: Menus.cpp:236
-msgid "&Audio...\tCtrl+Shift+I"
+msgid "&Audio..."
msgstr ""
#: Menus.cpp:237
@@ -1470,8 +1501,8 @@ msgstr "Allforio Nife&r..."
msgid "Export MIDI..."
msgstr ""
-#: Menus.cpp:290
-msgid "CleanSpeech C&hain..."
+#: Menus.cpp:352
+msgid "Appl&y Chain..."
msgstr ""
#: Menus.cpp:340 Menus.cpp:354
@@ -1486,10 +1517,6 @@ msgstr ""
msgid "I&mport CleanSpeech Presets..."
msgstr ""
-#: Menus.cpp:352
-msgid "Appl&y Chain..."
-msgstr ""
-
#: Menus.cpp:358
msgid "&Upload File..."
msgstr ""
@@ -1504,7 +1531,7 @@ msgid "&Print..."
msgstr ""
#: Menus.cpp:382 Menus.cpp:385
-msgid "E&xit\tCtrl+Q"
+msgid "E&xit"
msgstr ""
#: ../src/Menus.cpp:227
@@ -1512,63 +1539,63 @@ msgid "&Edit"
msgstr "&Golygu"
#: ../src/Menus.cpp:231
-msgid "&Undo\tCtrl+Z"
-msgstr "&Dadwneud\tCtrl+Z"
+msgid "&Undo"
+msgstr "&Dadwneud"
#: ../src/Menus.cpp:239
msgid "&Redo"
msgstr "&Ailwneud"
#: ../src/Menus.cpp:252
-msgid "Cu&t\tCtrl+X"
-msgstr "&Torri\tCtrl+X"
+msgid "Cu&t"
+msgstr "&Torri"
#: Menus.cpp:420
-msgid "Spl&it Cut\tCtrl+Alt+X"
+msgid "Spl&it Cut"
msgstr ""
#: ../src/Menus.cpp:253
-msgid "&Copy\tCtrl+C"
-msgstr "&Copio\tCtrl+C"
+msgid "&Copy"
+msgstr "&Copio"
#: ../src/Menus.cpp:254
-msgid "&Paste\tCtrl+V"
-msgstr "&Gludo\tCtrl+V"
+msgid "&Paste"
+msgstr "&Gludo"
#: Menus.cpp:426
-msgid "Tri&m\tCtrl+T"
+msgid "Tri&m"
msgstr ""
#: ../src/Menus.cpp:260
-msgid "&Delete\tCtrl+K"
-msgstr "Di&leu\tCtrl+K"
+msgid "&Delete"
+msgstr "Di&leu"
#: Menus.cpp:429
-msgid "Split D&elete\tCtrl+Alt+K"
+msgid "Split D&elete"
msgstr ""
#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
+msgid "Silence Audi&o"
msgstr ""
#: Menus.cpp:432
-msgid "Sp&lit\tCtrl+I"
+msgid "Sp&lit"
msgstr ""
#: Menus.cpp:342
-msgid "Split Ne&w\tCtrl+Alt+I"
+msgid "Split Ne&w"
msgstr ""
#: Menus.cpp:442
-msgid "&Join\tCtrl+J"
+msgid "&Join"
msgstr ""
#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
+msgid "Detac&h at Silences"
msgstr ""
#: Menus.cpp:445
-msgid "Duplic&ate\tCtrl+D"
+msgid "Duplic&ate"
msgstr ""
#: Menus.cpp:400 Menus.cpp:639
@@ -1581,47 +1608,32 @@ msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:460
-msgid "&Cut\tAlt+X"
+msgid "&Cut"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:465
-msgid "&Split Cut\tShift+Alt+X"
+msgid "&Split Cut"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:470
-msgid "Co&py\tShift+Alt+C"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:476
-msgid "&Delete\tAlt+K"
+msgid "Co&py"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:481
-msgid "Sp&lit Delete\tShift+Alt+K"
+msgid "Sp&lit Delete"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:486
-msgid "Sile&nce\tAlt+L"
+msgid "Sile&nce"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:492
-msgid "Spli&t\tAlt+I"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:497
-msgid "&Join\tAlt+J"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
+msgid "Spli&t"
msgstr ""
#: Menus.cpp:456
@@ -1629,33 +1641,33 @@ msgid "&Select"
msgstr ""
#: ../src/Menus.cpp:269
-msgid "&All\tCtrl+A"
-msgstr "&Popeth\tCtrl+A"
+msgid "&All"
+msgstr "&Popeth"
#: Menus.cpp:415
-msgid "&None\tCtrl+Shift+A"
+msgid "&None"
msgstr ""
#: Menus.cpp:462
-msgid "&Left at Playback Position\t["
+msgid "&Left at Playback Position"
msgstr ""
#: Menus.cpp:463
-msgid "&Right at Playback Position\t]"
+msgid "&Right at Playback Position"
msgstr ""
#: Menus.cpp:467
-msgid "Track &Start to Cursor\tShift+J"
+msgid "Track &Start to Cursor"
msgstr ""
#: Menus.cpp:468
-msgid "Cursor to Track &End\tShift+K"
+msgid "Cursor to Track &End"
msgstr ""
#: Menus.cpp:525
#, fuzzy
-msgid "Find &Zero Crossings\tZ"
-msgstr "Canfod Croesiadau Sero\tZ"
+msgid "Find &Zero Crossings"
+msgstr "Canfod Croesiadau Sero"
#: Menus.cpp:476
msgid "Mo&ve Cursor"
@@ -1672,11 +1684,11 @@ msgid "to Selection En&d"
msgstr "i Ddiwedd y Dewisiad"
#: Menus.cpp:483
-msgid "to Track &Start\tJ"
+msgid "to Track &Start"
msgstr ""
#: Menus.cpp:484
-msgid "to Track &End\tK"
+msgid "to Track &End"
msgstr ""
#: Menus.cpp:491
@@ -1699,29 +1711,8 @@ msgstr ""
msgid "&Unlock"
msgstr ""
-#: ../src/Menus.cpp:311
-msgid "Turn Snap-To On"
-msgstr "Troi Snap-I Ymlaen"
-
-#: ../src/Menus.cpp:312
-msgid "Turn Snap-To Off"
-msgstr "Troi Snap-I i Ffwrdd"
-
-#: ../src/Menus.cpp:313
-msgid "Turn Grid Snap On"
-msgstr "Troi Snap Grid Ymlaen"
-
-#: ../src/Menus.cpp:314
-msgid "Turn Grid Snap Off"
-msgstr "Troi Snap Grid I Ffwrdd"
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr ""
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
+msgid "Pre&ferences..."
msgstr ""
#: ../src/Menus.cpp:345
@@ -1729,35 +1720,35 @@ msgid "&View"
msgstr "G&weld"
#: ../src/Menus.cpp:347
-msgid "Zoom &In\tCtrl+1"
-msgstr "&Nesáu\tCtrl+1"
+msgid "Zoom &In"
+msgstr "&Nesáu"
#: ../src/Menus.cpp:350
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "Golygfa &Arferol\tCtrl+2"
+msgid "Zoom &Normal"
+msgstr "Golygfa &Arferol"
#: ../src/Menus.cpp:351
-msgid "Zoom &Out\tCtrl+3"
-msgstr "&Pellhau\tCtrl+3"
+msgid "Zoom &Out"
+msgstr "&Pellhau"
#: ../src/Menus.cpp:354
-msgid "&Fit in Window\tCtrl+F"
-msgstr "&Ffitio yn y Ffenest\tCtrl+F"
+msgid "&Fit in Window"
+msgstr "&Ffitio yn y Ffenest"
#: ../src/Menus.cpp:355
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "Ffitio'n &Fertigol\tCtrl+Shift+F"
+msgid "Fit &Vertically"
+msgstr "Ffitio'n &Fertigol"
#: ../src/Menus.cpp:356
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "&Chwyddo i'r Dewisiad\tCtrl+E"
+msgid "&Zoom to Selection"
+msgstr "&Chwyddo i'r Dewisiad"
#: Menus.cpp:603
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
+msgid "&Collapse All Tracks"
msgstr ""
#: Menus.cpp:604
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
+msgid "E&xpand All Tracks"
msgstr ""
#: Menus.cpp:551
@@ -1819,39 +1810,39 @@ msgid "T&ransport"
msgstr ""
#: Menus.cpp:591
-msgid "Play\tSpace"
+msgid "Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
+msgid "&Loop Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Pause\tP"
+msgid "&Pause"
msgstr ""
#: Menus.cpp:596
-msgid "&Stop\tSpace"
+msgid "&Stop"
msgstr ""
#: ../src/Menus.cpp:569
-msgid "Skip to Start\tHome"
-msgstr "Neidio i'r Dechrau\tHome"
+msgid "Skip to Start"
+msgstr "Neidio i'r Dechrau"
#: ../src/Menus.cpp:570
-msgid "Skip to End\tEnd"
-msgstr "Neidio i'r Diwedd\tEnd"
+msgid "Skip to End"
+msgstr "Neidio i'r Diwedd"
#: Menus.cpp:600
-msgid "&Record\tR"
+msgid "&Record"
msgstr ""
#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
+msgid "&Timer Record..."
msgstr ""
#: Menus.cpp:604
-msgid "Append Record\tShift+R"
+msgid "Append Record"
msgstr ""
#: Menus.cpp:607
@@ -1879,7 +1870,7 @@ msgid "Add &New"
msgstr ""
#: Menus.cpp:643
-msgid "&Audio Track\tCtrl+Shift+N"
+msgid "&Audio Track"
msgstr ""
#: Menus.cpp:644
@@ -1896,7 +1887,7 @@ msgid "Mi&x and Render"
msgstr ""
#: Menus.cpp:564
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
+msgid "Mix and Render to New Track"
msgstr ""
#: Menus.cpp:662
@@ -1908,11 +1899,11 @@ msgid "Remo&ve Tracks"
msgstr "&Dileu Traciau"
#: Menus.cpp:667
-msgid "&Mute All Tracks\tCtrl+U"
+msgid "&Mute All Tracks"
msgstr ""
#: Menus.cpp:668
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
+msgid "&UnMute All Tracks"
msgstr ""
#: ../src/Menus.cpp:405
@@ -1963,19 +1954,18 @@ msgstr ""
msgid "Synchronize MIDI with Audio"
msgstr ""
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
+#: Menus.cpp:686
+msgid "&Link Audio and Label Tracks"
msgstr ""
-#: Menus.cpp:705
-#, fuzzy
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "Ychwanegu Label ger y Dewisiad\tCtrl+B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr ""
#: Menus.cpp:706
#, fuzzy
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "Ychwanegu Label ger y Safle Chwarae\tCtrl+M"
+msgid "Add Label At &Playback Position"
+msgstr "Ychwanegu Label ger y Safle Chwarae"
#: Menus.cpp:716
msgid "S&ort tracks"
@@ -2001,21 +1991,20 @@ msgstr ""
msgid "Effe&ct"
msgstr "&Effeithio"
-#: ../src/Menus.cpp:468
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "Ailadrodd yr effaith ddiwethaf\tCtrl+R"
-
#: ../src/Menus.cpp:494
msgid "&Analyze"
msgstr "&Dadansoddi"
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
+
#: Menus.cpp:692
msgid "Plot Spectrum..."
msgstr ""
#. i18n-hint: The name of the Help menu
-#: ../src/Menus.cpp:524
-#: ../src/Menus.cpp:540
+#: ../src/Menus.cpp:524 ../src/Menus.cpp:540
msgid "&Help"
msgstr "&Help"
@@ -2027,8 +2016,8 @@ msgstr ""
msgid "&Show Welcome Message..."
msgstr ""
-#: Menus.cpp:736
-msgid "&Index..."
+#: Menus.cpp:958
+msgid "&Help..."
msgstr ""
#: Menus.cpp:959
@@ -2047,181 +2036,149 @@ msgstr "&Rhedeg Meincnod..."
msgid "&Audio Device Info..."
msgstr ""
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
msgstr ""
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
msgstr ""
#: ../src/Menus.cpp:549
-msgid "Selection Tool\tF1"
-msgstr "Erfyn Dewis\tF1"
+msgid "Selection Tool"
+msgstr "Erfyn Dewis"
#: ../src/Menus.cpp:550
-msgid "Envelope Tool\tF2"
-msgstr "Erfyn Chwyddamlen\tF2"
+msgid "Envelope Tool"
+msgstr "Erfyn Chwyddamlen"
#: ../src/Menus.cpp:551
-msgid "Draw Tool\tF3"
-msgstr "Erfyn Darlunio\tF3"
+msgid "Draw Tool"
+msgstr "Erfyn Darlunio"
#: ../src/Menus.cpp:552
-msgid "Zoom Tool\tF4"
-msgstr "Erfyn Chwyddo\tF4"
+msgid "Zoom Tool"
+msgstr "Erfyn Chwyddo"
#: ../src/Menus.cpp:553
-msgid "Time Shift Tool\tF5"
-msgstr "Erfyn Symud Trac Sain\tF5"
+msgid "Time Shift Tool"
+msgstr "Erfyn Symud Trac Sain"
#: ../src/Menus.cpp:554
-msgid "Multi Tool\tF6"
-msgstr "Aml-Erfynl\tF6"
+msgid "Multi Tool"
+msgstr "Aml-Erfynl"
#: ../src/Menus.cpp:556
-msgid "Next Tool\tD"
-msgstr "Erfyn Nesaf\tD"
+msgid "Next Tool"
+msgstr "Erfyn Nesaf"
#: ../src/Menus.cpp:557
-msgid "Previous Tool\tA"
-msgstr "Erfyn Blaenorol\tA"
+msgid "Previous Tool"
+msgstr "Erfyn Blaenorol"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
-msgstr ""
-
-#: ../src/Menus.cpp:560
-msgid "Stop\tS"
-msgstr "Aros\tS"
-
-#: ../src/Menus.cpp:561
-msgid "Pause\tP"
-msgstr "Seibio\tP"
-
-#: ../src/Menus.cpp:562
-msgid "Record\tR"
-msgstr "Recordio\tR"
-
-#: Menus.cpp:999
-msgid "Record Append\tShift+R"
+msgid "Play/Stop"
msgstr ""
#: Menus.cpp:1001
-msgid "Play/Stop and Set Cursor\tShift+A"
+msgid "Play/Stop and Set Cursor"
msgstr ""
#: ../src/Menus.cpp:564
-msgid "Play One Second\t1"
-msgstr "Chwarae Un Eiliad\t1"
+msgid "Play One Second"
+msgstr "Chwarae Un Eiliad"
#: ../src/Menus.cpp:565
-msgid "Play To Selection\tB"
-msgstr "Chwarae I'r Dewisiad\tB"
-
-#: ../src/Menus.cpp:566
-msgid "Play Looped\tL"
-msgstr "Chwarae'n Gylch\tL"
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
+msgid "Play To Selection"
+msgstr "Chwarae I'r Dewisiad"
#: Menus.cpp:873
-msgid "Play Cut Preview\tC"
+msgid "Play Cut Preview"
msgstr ""
#: ../src/Menus.cpp:572
-msgid "Selection to Start\tShift+Home"
-msgstr "Dewisiad i'r Dechrau\tShift+Home"
+msgid "Selection to Start"
+msgstr "Dewisiad i'r Dechrau"
#: ../src/Menus.cpp:573
-msgid "Selection to End\tShift+End"
-msgstr "Dewisiad i'r Diwedd\tShift+End"
+msgid "Selection to End"
+msgstr "Dewisiad i'r Diwedd"
#: ../src/Menus.cpp:575
-msgid "DeleteKey\tBackspace"
-msgstr "BysellDdileu\tBackspace"
+msgid "DeleteKey"
+msgstr "BysellDdileu"
#: ../src/Menus.cpp:580
-msgid "DeleteKey2\tDelete"
-msgstr "BysellDdileu2\tDelete"
+msgid "DeleteKey2"
+msgstr "BysellDdileu2"
-#: Menus.cpp:892
-msgid "Seek left short period during playback\tLeft"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
msgstr ""
-#: Menus.cpp:893
-msgid "Seek right short period during playback\tRight"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
msgstr ""
-#: Menus.cpp:894
-msgid "Seek left long period during playback\tShift+Left"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
msgstr ""
-#: Menus.cpp:895
-msgid "Seek right long period during playback\tShift+Right"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
msgstr ""
#: Menus.cpp:899
-msgid "Move Focus to Previous Track\tUp"
+msgid "Move Focus to Previous Track"
msgstr ""
-#: Menus.cpp:900
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
msgstr ""
#: Menus.cpp:901
-msgid "Move Focus to Next Track\tDown"
+msgid "Move Focus to Next Track"
msgstr ""
-#: Menus.cpp:902
-msgid "Move Focus to Next and Change Selection\tShift+Down"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
msgstr ""
#: Menus.cpp:903
-msgid "Toggle Focused Track\tReturn"
-msgstr ""
-
-#: Menus.cpp:904
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr ""
-
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
+msgid "Toggle Focused Track"
msgstr ""
#: ../src/Menus.cpp:585
-msgid "Cursor Left\tLeft"
-msgstr "Cyrchydd i'r Chwith\tLeft"
+msgid "Cursor Left"
+msgstr "Cyrchydd i'r Chwith"
#: ../src/Menus.cpp:586
-msgid "Cursor Right\tRight"
-msgstr "Cyrchydd i'r Dde\tRight"
+msgid "Cursor Right"
+msgstr "Cyrchydd i'r Dde"
#: Menus.cpp:820
-msgid "Cursor Short Jump Left\t,"
+msgid "Cursor Short Jump Left"
msgstr ""
#: Menus.cpp:821
-msgid "Cursor Short Jump Right\t."
+msgid "Cursor Short Jump Right"
msgstr ""
#: Menus.cpp:822
-msgid "Cursor Long Jump Left\tShift+,"
+msgid "Cursor Long Jump Left"
msgstr ""
#: Menus.cpp:823
-msgid "Cursor Long Jump Right\tShift+."
+msgid "Cursor Long Jump Right"
msgstr ""
#: ../src/Menus.cpp:587
-msgid "Selection Extend Left\tShift+Left"
-msgstr "Estyn Dewisiad i'r Chwith\tShift+Chwith"
+msgid "Selection Extend Left"
+msgstr "Estyn Dewisiad i'r Chwith"
#: ../src/Menus.cpp:588
-msgid "Selection Extend Right\tShift+Right"
-msgstr "Estyn Dewisiad i'r Dde\tShift+Dde"
+msgid "Selection Extend Right"
+msgstr "Estyn Dewisiad i'r Dde"
#: Menus.cpp:828
msgid "Set (or Extend) Left Selection"
@@ -2232,51 +2189,51 @@ msgid "Set (or Extend) Right Selection"
msgstr ""
#: ../src/Menus.cpp:589
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "Lleihau'r Dewisiad i'r Chwith\tCtrl+Shift+Dde"
+msgid "Selection Contract Left"
+msgstr "Lleihau'r Dewisiad i'r Chwith"
#: ../src/Menus.cpp:590
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "Lleihau'r Dewisiad i'r Dde\tCtrl+Shift+Chwith"
+msgid "Selection Contract Right"
+msgstr "Lleihau'r Dewisiad i'r Dde"
#: Menus.cpp:916
-msgid "Change pan on focused track\tShift+P"
+msgid "Change pan on focused track"
msgstr ""
#: Menus.cpp:917
-msgid "Pan left on focused track\tAlt+Shift+Left"
+msgid "Pan left on focused track"
msgstr ""
#: Menus.cpp:918
-msgid "Pan right on focused track\tAlt+Shift+Right"
+msgid "Pan right on focused track"
msgstr ""
#: Menus.cpp:919
-msgid "Change gain on focused track\tShift+G"
+msgid "Change gain on focused track"
msgstr ""
#: Menus.cpp:920
-msgid "Increase gain on focused track\tAlt+Shift+Up"
+msgid "Increase gain on focused track"
msgstr ""
#: Menus.cpp:921
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
+msgid "Decrease gain on focused track"
msgstr ""
#: Menus.cpp:922
-msgid "Open menu on focused track\tShift+M"
+msgid "Open menu on focused track"
msgstr ""
#: Menus.cpp:923
-msgid "Mute/Unmute focused track\tShift+U"
+msgid "Mute/Unmute focused track"
msgstr ""
#: Menus.cpp:924
-msgid "Solo/Unsolo focused track\tShift+S"
+msgid "Solo/Unsolo focused track"
msgstr ""
#: Menus.cpp:925
-msgid "Close focused track\tShift+C"
+msgid "Close focused track"
msgstr ""
#: Menus.cpp:845
@@ -2288,7 +2245,35 @@ msgid "Snap To Off"
msgstr ""
#: Menus.cpp:1071
-msgid "Full screen on/off\tF11"
+msgid "Full screen on/off"
+msgstr ""
+
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr ""
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr ""
+
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr ""
+
+#: Menus.cpp:1074
+msgid "Adjust input source"
msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
@@ -2349,8 +2334,8 @@ msgstr "Rhaid dewis trac yn gyntaf."
#: ../src/Menus.cpp:1248
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "Ailadrodd %s\tCtrl+R"
+msgid "Repeat %s"
+msgstr "Ailadrodd %s"
#: ../src/Menus.cpp:1352
msgid "There are no label tracks to export."
@@ -2381,8 +2366,7 @@ msgstr "Dim i'w ddadwneud"
msgid "Nothing to redo"
msgstr "Dim i'w ailwneud"
-#: ../src/EditToolBar.cpp:148
-#: ../src/Menus.cpp:1713
+#: ../src/EditToolBar.cpp:148 ../src/Menus.cpp:1713
msgid "Cut"
msgstr "Torri"
@@ -2398,9 +2382,7 @@ msgstr ""
msgid "Split-cut to the clipboard"
msgstr ""
-#: ../src/EditToolBar.cpp:152
-#: ../src/Menus.cpp:1818
-#: ../src/Menus.cpp:1862
+#: ../src/EditToolBar.cpp:152 ../src/Menus.cpp:1818 ../src/Menus.cpp:1862
msgid "Paste"
msgstr "Gludo"
@@ -2408,8 +2390,7 @@ msgstr "Gludo"
msgid "Pasted text from the clipboard"
msgstr ""
-#: ../src/Menus.cpp:1818
-#: ../src/Menus.cpp:1862
+#: ../src/Menus.cpp:1818 ../src/Menus.cpp:1862
msgid "Pasted from the clipboard"
msgstr "Gludo o'r clipfwrdd"
@@ -2461,8 +2442,7 @@ msgstr ""
msgid "Silenced selected tracks for %.2f seconds at %.2f"
msgstr "Wedi distewi'r traciau a ddewiswyd am %.2f eiliad ger %.2f"
-#: ../src/Menus.cpp:1928
-#: ../src/effects/Silence.h:33
+#: ../src/Menus.cpp:1928 ../src/effects/Silence.h:33
msgid "Silence"
msgstr "Distewi"
@@ -2546,8 +2526,7 @@ msgstr ""
msgid "Disjoined labeled regions"
msgstr ""
-#: ../src/Menus.cpp:2009
-#: ../src/TrackPanel.cpp:4134
+#: ../src/Menus.cpp:2009 ../src/TrackPanel.cpp:4134
msgid "Split"
msgstr "Hollti"
@@ -2563,15 +2542,6 @@ msgstr ""
msgid "Split at labels"
msgstr "Hollti wrth labeli"
-#: ../src/Menus.cpp:2369
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "I blotio'r sbectrwm, rhaid i bob trac dewisiedig fod o'r un graddfa samplo."
-
-#: ../src/Menus.cpp:2395
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "Dewiswyd gormod o sain. Dim ond y %.1f eiliad o sain gaith ei ddadansoddi."
-
#: ../src/Menus.cpp:2660
#, c-format
msgid "Imported labels from '%s'"
@@ -2689,9 +2659,7 @@ msgstr ""
msgid "Created new audio track"
msgstr "Crëwyd trac sain newydd"
-#: ../src/Menus.cpp:2977
-#: ../src/Menus.cpp:3001
-#: ../src/Menus.cpp:3016
+#: ../src/Menus.cpp:2977 ../src/Menus.cpp:3001 ../src/Menus.cpp:3016
#: ../src/Menus.cpp:3052
msgid "New Track"
msgstr "Trac Newydd"
@@ -2773,8 +2741,7 @@ msgstr ""
msgid "Resampled audio track(s)"
msgstr ""
-#: ../src/Mix.cpp:74
-#: ../src/Mix.cpp:82
+#: ../src/Mix.cpp:74 ../src/Mix.cpp:82
msgid "Mix"
msgstr "Cymysgu"
@@ -2794,6 +2761,10 @@ msgstr "Roedd anhawster wrth argraffu."
msgid "Print"
msgstr "Argraffu"
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr ""
+
#: Project.cpp:573
msgid "Main Mix"
msgstr ""
@@ -2807,14 +2778,11 @@ msgstr ""
msgid "(Recovered)"
msgstr ""
-#: ../src/ControlToolBar.cpp:469
-#: ../src/Project.cpp:1707
-#: ../src/TrackPanel.cpp:1208
+#: ../src/Menus.cpp:562
msgid "Record"
msgstr "Recordio"
-#: ../src/Project.cpp:1707
-#: ../src/TrackPanel.cpp:1208
+#: ../src/Project.cpp:1707 ../src/TrackPanel.cpp:1208
msgid "Recorded Audio"
msgstr "Sain a Recordwyd"
@@ -2835,12 +2803,11 @@ msgstr ""
msgid "Save changes?"
msgstr "Cadw'r newidiadau?"
-#: Project.cpp:1684
-msgid "All files|*.*|All supported files|"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
msgstr ""
-#: ../src/Menus.cpp:2595
-#: ../src/Project.cpp:1738
+#: ../src/Menus.cpp:2595 ../src/Project.cpp:1738
msgid "Select one or more audio files..."
msgstr "Dewis un neu fwy o ffeiliau sain..."
@@ -2867,8 +2834,18 @@ msgstr ""
msgid "Opening old project file"
msgstr ""
-#: ../src/Project.cpp:1821
-#: ../src/Project.cpp:1829
+#: Project.cpp:2073
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr ""
+
+#: ../src/Project.cpp:1821 ../src/Project.cpp:1829
msgid "Error opening file"
msgstr "Gwall wrth agor ffeil"
@@ -2924,10 +2901,12 @@ msgstr "Cadwyd y ffeil gan defnyddio Audacity %s.\n"
msgid "Can't open project file"
msgstr "Methu agor ffeil cywaith"
-#: Project.cpp:2314
+#: Project.cpp:2484
#, c-format
msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
msgstr ""
@@ -2947,17 +2926,22 @@ msgstr ""
msgid "Warning empty project"
msgstr ""
-#: Project.cpp:2591
+#: Project.cpp:2792
#, c-format
msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+"is not writable or the disk is full."
msgstr ""
-#: ../src/Project.cpp:2148
-#: ../src/Project.cpp:2160
+#: ../src/Project.cpp:2148 ../src/Project.cpp:2160
msgid "Error saving project"
msgstr "Gwall wrth gadw'r cywaith"
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
#: ../src/Project.cpp:2200
#, c-format
msgid "Saved %s"
@@ -2968,10 +2952,8 @@ msgstr "Cadwyd %s"
msgid "Imported '%s'"
msgstr "Mewnforwyd '%s'"
-#: ../src/Project.cpp:2236
-#: ../src/Project.cpp:2283
-#: ../src/import/ImportPCM.cpp:403
-#: ../src/import/ImportPCM.cpp:488
+#: ../src/Project.cpp:2236 ../src/Project.cpp:2283
+#: ../src/import/ImportPCM.cpp:403 ../src/import/ImportPCM.cpp:488
#: ../src/import/ImportRaw.cpp:408
msgid "Import"
msgstr "Mewnforio"
@@ -3099,8 +3081,7 @@ msgstr "Libsamplerate gan Erik de Castro Lopo"
msgid "Libsamplerate error: %d\n"
msgstr "Gwall Libsamplerate: %d\n"
-#: ../src/Resample.cpp:233
-#: ../src/Resample.cpp:243
+#: ../src/Resample.cpp:233 ../src/Resample.cpp:243
msgid "Resampling disabled."
msgstr "Analluogwyd ailsamplo."
@@ -3119,6 +3100,163 @@ msgstr ""
msgid "32-bit float"
msgstr ""
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
+
+#: ../src/export/ExportMultiple.cpp:600 ../src/prefs/DirectoriesPrefs.cpp:82
+msgid "Choose..."
+msgstr "Dewis..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
+
+#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
+msgid "false"
+msgstr ""
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:82
+msgid "Control"
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:58
+msgid "Mixer"
+msgstr ""
+
+#: toolbars/MeterToolBar.cpp:49
+msgid "Meter"
+msgstr ""
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
+#: toolbars/DeviceToolBar.cpp:54
+msgid "Device"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:81
+msgid "Transcription"
+msgstr ""
+
+#: TrackPanel.cpp:452 TrackPanel.cpp:453
+msgid "Track Panel"
+msgstr ""
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: ../src/export/ExportMultiple.cpp:636
+msgid "Tracks"
+msgstr "Traciau"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
#: Screenshot.cpp:384
msgid "Saved "
msgstr ""
@@ -3127,6 +3265,10 @@ msgstr ""
msgid "Error trying to save file: "
msgstr ""
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
#: Sequence.cpp:732 Sequence.cpp:742 Sequence.cpp:749
msgid "Gap detected in project file\n"
msgstr ""
@@ -3265,6 +3407,10 @@ msgstr ""
msgid "Save Metadata As:"
msgstr ""
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
#: Theme.cpp:629
#, c-format
msgid "Audacity could not write file:\n"
@@ -3337,6 +3483,14 @@ msgstr ""
msgid "Audacity Timer Record"
msgstr ""
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
#: SmartRecordDialog.cpp:223
msgid "Recording start"
msgstr ""
@@ -3376,35 +3530,23 @@ msgstr ""
msgid "Audacity Timer Record - Waiting for Start"
msgstr ""
-#: TrackPanel.cpp:452 TrackPanel.cpp:453
-msgid "Track Panel"
-msgstr ""
-
-#: ../src/AStatus.cpp:81
-#: ../src/TrackPanel.cpp:822
-#: ../src/prefs/FileFormatPrefs.cpp:105
-#: ../src/prefs/QualityPrefs.cpp:91
+#: ../src/AStatus.cpp:81 ../src/TrackPanel.cpp:822
+#: ../src/prefs/FileFormatPrefs.cpp:105 ../src/prefs/QualityPrefs.cpp:91
msgid "Other..."
msgstr "Arall..."
-#: ../src/TrackPanel.cpp:830
-#: ../src/TrackPanel.cpp:851
-#: ../src/TrackPanel.cpp:860
-#: ../src/TrackPanel.cpp:868
+#: ../src/TrackPanel.cpp:830 ../src/TrackPanel.cpp:851
+#: ../src/TrackPanel.cpp:860 ../src/TrackPanel.cpp:868
msgid "Name..."
msgstr "Enwi..."
-#: ../src/TrackPanel.cpp:832
-#: ../src/TrackPanel.cpp:853
-#: ../src/TrackPanel.cpp:864
-#: ../src/TrackPanel.cpp:870
+#: ../src/TrackPanel.cpp:832 ../src/TrackPanel.cpp:853
+#: ../src/TrackPanel.cpp:864 ../src/TrackPanel.cpp:870
msgid "Move Track Up"
msgstr "Symud Trac i Fynu"
-#: ../src/TrackPanel.cpp:833
-#: ../src/TrackPanel.cpp:854
-#: ../src/TrackPanel.cpp:865
-#: ../src/TrackPanel.cpp:871
+#: ../src/TrackPanel.cpp:833 ../src/TrackPanel.cpp:854
+#: ../src/TrackPanel.cpp:865 ../src/TrackPanel.cpp:871
msgid "Move Track Down"
msgstr "Symud Trac i Lawr"
@@ -3444,13 +3586,15 @@ msgstr "Gwneud Trac Stereo"
msgid "Split Stereo Track"
msgstr "Hollti Trac Stereo"
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr ""
+
#: ../src/TrackPanel.cpp:846
msgid "Set Sample Format"
msgstr "Gosod Fformat Sampl"
-#: ../src/AStatus.cpp:352
-#: ../src/TrackPanel.cpp:848
-#: ../src/TrackPanel.cpp:4322
+#: ../src/AStatus.cpp:352 ../src/TrackPanel.cpp:848 ../src/TrackPanel.cpp:4322
msgid "Set Rate"
msgstr "Gosod Graddfa Samplo"
@@ -3526,8 +3670,7 @@ msgstr "Golygu Label"
msgid "Adjusted envelope."
msgstr "Addaswyd y chwyddamlen."
-#: ../src/TrackPanel.cpp:1905
-#: ../src/prefs/MousePrefs.cpp:98
+#: ../src/TrackPanel.cpp:1905 ../src/prefs/MousePrefs.cpp:98
msgid "Envelope"
msgstr "Chwyddamlen"
@@ -3587,24 +3730,20 @@ msgid "Moved pan slider"
msgstr "Symudwyd y llithrydd trem"
#. i18n-hint: Title of the Gain slider, used to adjust the volume
-#: ../src/TrackPanel.cpp:2807
-#: ../src/TrackPanel.cpp:4726
+#: ../src/TrackPanel.cpp:2807 ../src/TrackPanel.cpp:4726
msgid "Gain"
msgstr "Cynnydd"
#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: ../src/TrackPanel.cpp:2807
-#: ../src/TrackPanel.cpp:4733
+#: ../src/TrackPanel.cpp:2807 ../src/TrackPanel.cpp:4733
msgid "Pan"
msgstr "Trem"
-#: ../src/TrackPanel.cpp:4387
-#: ../src/effects/ChangePitch.cpp:277
+#: ../src/TrackPanel.cpp:4387 ../src/effects/ChangePitch.cpp:277
msgid "up"
msgstr "i fynu"
-#: ../src/TrackPanel.cpp:4388
-#: ../src/effects/ChangePitch.cpp:277
+#: ../src/TrackPanel.cpp:4388 ../src/effects/ChangePitch.cpp:277
msgid "down"
msgstr "i lawr"
@@ -3645,14 +3784,6 @@ msgstr ""
msgid "Adjusted gain"
msgstr ""
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr ""
-
#: TrackPanel.cpp:5428
msgid "Can't delete track with active audio"
msgstr ""
@@ -3673,8 +3804,7 @@ msgstr "Chwith,"
msgid "Right, "
msgstr "Dde,"
-#: ../src/TrackPanel.cpp:4116
-#: ../src/TrackPanel.cpp:4225
+#: ../src/TrackPanel.cpp:4116 ../src/TrackPanel.cpp:4225
#, c-format
msgid "Changed '%s' to %s"
msgstr "Newidwyd '%s' i %s"
@@ -3688,6 +3818,11 @@ msgstr "Sianel"
msgid "Split stereo track '%s'"
msgstr "Trac stereo holltedig '%s'"
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
#: ../src/TrackPanel.cpp:4153
#, c-format
msgid "Made '%s' a stereo track"
@@ -3714,8 +3849,7 @@ msgstr "Newid Fformat"
msgid "Change lower speed limit (%) to:"
msgstr "Newid y cyfyngiad cyflymder isaf (%) i:"
-#: ../src/TrackPanel.cpp:4352
-#: ../src/TrackPanel.cpp:4353
+#: ../src/TrackPanel.cpp:4352 ../src/TrackPanel.cpp:4353
msgid "Lower speed limit"
msgstr "Cyfyngiad cyflymder isaf"
@@ -3723,8 +3857,7 @@ msgstr "Cyfyngiad cyflymder isaf"
msgid "Change upper speed limit (%) to:"
msgstr "Newid y cyfyngiad cyflymder uchaf (%) i:"
-#: ../src/TrackPanel.cpp:4359
-#: ../src/TrackPanel.cpp:4360
+#: ../src/TrackPanel.cpp:4359 ../src/TrackPanel.cpp:4360
msgid "Upper speed limit"
msgstr "Cyfyngiad cylfymder uchaf"
@@ -3766,6 +3899,10 @@ msgstr ""
msgid "Face size"
msgstr ""
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr ""
+
#: ../src/TrackPanel.cpp:4701
msgid "Mute"
msgstr "Mudo"
@@ -3844,8 +3981,9 @@ msgstr "Ategion 1 i %i"
msgid "Plugins %i to %i"
msgstr "Ategion %i i %i"
-#: commands/CommandManager.cpp:857
-msgid "Disallowed for some reason. Try selecting some audio first?"
+#: commands/CommandManager.cpp:923
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
msgstr ""
#: commands/CommandManager.cpp:724
@@ -3992,31 +4130,19 @@ msgstr ""
msgid "Processing Auto Duck..."
msgstr ""
-#: ../src/LangChoice.cpp:94
-#: ../src/Tags.cpp:721
-#: ../src/effects/Amplify.cpp:187
-#: ../src/effects/AvcCompressor.cpp:716
-#: ../src/effects/BassBoost.cpp:332
-#: ../src/effects/ChangePitch.cpp:393
-#: ../src/effects/ChangeSpeed.cpp:379
-#: ../src/effects/ChangeTempo.cpp:284
-#: ../src/effects/Compressor.cpp:484
-#: ../src/effects/Echo.cpp:242
-#: ../src/effects/Equalization.cpp:731
-#: ../src/effects/Filter.cpp:482
-#: ../src/effects/Normalize.cpp:258
-#: ../src/effects/Phaser.cpp:576
-#: ../src/effects/Repeat.cpp:251
-#: ../src/effects/VST/VSTEffect.cpp:98
-#: ../src/effects/VST/VSTEffect.cpp:455
-#: ../src/effects/Wahwah.cpp:563
-#: ../src/effects/ladspa/LadspaEffect.cpp:498
+#: ../src/LangChoice.cpp:94 ../src/Tags.cpp:721 ../src/effects/Amplify.cpp:187
+#: ../src/effects/AvcCompressor.cpp:716 ../src/effects/BassBoost.cpp:332
+#: ../src/effects/ChangePitch.cpp:393 ../src/effects/ChangeSpeed.cpp:379
+#: ../src/effects/ChangeTempo.cpp:284 ../src/effects/Compressor.cpp:484
+#: ../src/effects/Echo.cpp:242 ../src/effects/Equalization.cpp:731
+#: ../src/effects/Filter.cpp:482 ../src/effects/Normalize.cpp:258
+#: ../src/effects/Phaser.cpp:576 ../src/effects/Repeat.cpp:251
+#: ../src/effects/VST/VSTEffect.cpp:98 ../src/effects/VST/VSTEffect.cpp:455
+#: ../src/effects/Wahwah.cpp:563 ../src/effects/ladspa/LadspaEffect.cpp:498
#: ../src/effects/nyquist/Nyquist.cpp:736
#: ../src/effects/nyquist/Nyquist.cpp:883
-#: ../src/effects/nyquist/Nyquist.cpp:949
-#: ../src/prefs/FileFormatPrefs.cpp:471
-#: ../src/prefs/PrefsDialog.cpp:100
-#: ../src/widgets/Warning.cpp:56
+#: ../src/effects/nyquist/Nyquist.cpp:949 ../src/prefs/FileFormatPrefs.cpp:471
+#: ../src/prefs/PrefsDialog.cpp:100 ../src/widgets/Warning.cpp:56
msgid "OK"
msgstr "OK"
@@ -4079,14 +4205,12 @@ msgstr "Newid Traw"
msgid "Change Pitch without Changing Tempo"
msgstr "Newid Traw heb Newid Tempo"
-#: ../src/effects/ChangePitch.cpp:247
-#: ../src/effects/ChangeSpeed.cpp:287
+#: ../src/effects/ChangePitch.cpp:247 ../src/effects/ChangeSpeed.cpp:287
#: ../src/effects/ChangeTempo.cpp:164
msgid "by Vaughan Johnson && Dominic Mazzoni"
msgstr "gan Vaughan Johnson && Dominic Mazzoni"
-#: ../src/effects/ChangePitch.cpp:252
-#: ../src/effects/ChangeTempo.cpp:169
+#: ../src/effects/ChangePitch.cpp:252 ../src/effects/ChangeTempo.cpp:169
msgid "using SoundTouch, by Olli Parviainen"
msgstr "yn defnyddio SoundTouch, gan Olli Parviainen"
@@ -4135,10 +4259,8 @@ msgstr ""
msgid "From frequency in hertz"
msgstr ""
-#: ../src/effects/ChangePitch.cpp:284
-#: ../src/effects/ChangePitch.cpp:330
-#: ../src/effects/ChangeSpeed.cpp:351
-#: ../src/effects/ChangeTempo.cpp:223
+#: ../src/effects/ChangePitch.cpp:284 ../src/effects/ChangePitch.cpp:330
+#: ../src/effects/ChangeSpeed.cpp:351 ../src/effects/ChangeTempo.cpp:223
#: ../src/effects/ChangeTempo.cpp:254
msgid "to"
msgstr "i"
@@ -4147,8 +4269,7 @@ msgstr "i"
msgid "To frequency in seconds"
msgstr ""
-#: ../src/effects/ChangePitch.cpp:353
-#: ../src/effects/ChangeSpeed.cpp:305
+#: ../src/effects/ChangePitch.cpp:353 ../src/effects/ChangeSpeed.cpp:305
#: ../src/effects/ChangeTempo.cpp:182
msgid "Percent Change:"
msgstr "Canran Newid:"
@@ -4166,8 +4287,7 @@ msgstr "Newid Traw..."
msgid "Changing Pitch"
msgstr "Yn Newid Traw"
-#: ../src/effects/ChangeSpeed.cpp:40
-#: ../src/effects/ChangeTempo.cpp:43
+#: ../src/effects/ChangeSpeed.cpp:40 ../src/effects/ChangeTempo.cpp:43
#, c-format
msgid "Applied effect: %s %.1f%%"
msgstr "Gweithredwyd effaith: %s %.1f%%"
@@ -4314,12 +4434,11 @@ msgstr ""
msgid "Decay Time"
msgstr ""
-#: ../src/effects/Compressor.cpp:469
-msgid "Normalize to 0dB after compressing"
-msgstr "Normaleiddio i 0dB ar ôl cywasgu"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
+msgstr ""
#: effects/Compressor.cpp:563
-#, c-format
#, fuzzy
msgid "Threshold %d dB"
msgstr "Trothwy: %d dB"
@@ -4350,7 +4469,6 @@ msgid "%.1f:1"
msgstr ""
#: effects/Compressor.cpp:575
-#, c-format
#, fuzzy
msgid "Attack Time %.1f secs"
msgstr "Amser Ymosod: %.1f eiliad"
@@ -4373,6 +4491,10 @@ msgstr "Cywasgydd..."
msgid "Applying Dynamic Range Compression..."
msgstr "Gweithredu Cywasgiad yr Amrediad Ddeinamig..."
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
msgstr ""
@@ -4392,19 +4514,6 @@ msgid "Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr ""
-
#: effects/Contrast.cpp:231
msgid "Contrast Analyzer"
msgstr ""
@@ -4438,6 +4547,11 @@ msgstr ""
msgid "Foreground end time"
msgstr ""
+#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
+#: effects/Contrast.cpp:289
+msgid "Measured"
+msgstr ""
+
#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
msgid "Use selection"
msgstr ""
@@ -4482,16 +4596,8 @@ msgstr ""
msgid "Help for WCAG2 Audio Contrast Analyzer"
msgstr ""
-#: toolbars/ControlToolBar.cpp:82
-msgid "Control"
-msgstr ""
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
msgstr ""
#: effects/Contrast.cpp:328 effects/Contrast.cpp:336 effects/Contrast.cpp:344
@@ -4602,18 +4708,6 @@ msgstr ""
msgid "Data gathered"
msgstr ""
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr ""
-
#: effects/DtmfGen.cpp:47
msgid "DTMF Tone Generator"
msgstr ""
@@ -4673,8 +4767,7 @@ msgstr ""
msgid "Applied effect: %s delay = %f seconds, decay factor = %f"
msgstr "Gweithredwyd effaith: %s oedi = %f eiliad, ffactor gwanhau = %f"
-#: ../src/effects/Echo.cpp:39
-#: ../src/effects/Echo.cpp:177
+#: ../src/effects/Echo.cpp:39 ../src/effects/Echo.cpp:177
msgid "Echo"
msgstr "Atsain"
@@ -4706,8 +4799,7 @@ msgstr ""
msgid "Previewing"
msgstr ""
-#: ../src/ControlToolBar.cpp:721
-#: ../src/effects/Effect.cpp:329
+#: ../src/ControlToolBar.cpp:721 ../src/effects/Effect.cpp:329
msgid "Error while opening sound device. Please check the output device settings and the project sample rate."
msgstr "Gwall wrth agor y ddyfais sain. Gwiriwch osodiadau'r ddyfais allbwn a graddfa samplo y cywaith."
@@ -4740,6 +4832,10 @@ msgstr ""
msgid "custom"
msgstr ""
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr ""
+
#: effects/Equalization.cpp:971
msgid "Equalization, by Martyn Shaw && Mitch Golden"
msgstr ""
@@ -4940,10 +5036,6 @@ msgstr ""
msgid "Analyser"
msgstr ""
-#: toolbars/MixerToolBar.cpp:58
-msgid "Mixer"
-msgstr ""
-
#: effects/LoadEffects.cpp:116
msgid "Simulator"
msgstr ""
@@ -5179,10 +5271,6 @@ msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr ""
#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
-msgid "false"
-msgstr ""
-
-#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
msgid "true"
msgstr ""
@@ -5240,8 +5328,7 @@ msgstr ""
msgid "Dry Wet"
msgstr ""
-#: ../src/effects/Phaser.cpp:497
-#: ../src/effects/Wahwah.cpp:468
+#: ../src/effects/Phaser.cpp:497 ../src/effects/Wahwah.cpp:468
msgid "LFO Frequency (Hz):"
msgstr "Amledd LFO (Hz):"
@@ -5249,8 +5336,7 @@ msgstr "Amledd LFO (Hz):"
msgid "LFO frequency in hertz"
msgstr ""
-#: ../src/effects/Phaser.cpp:513
-#: ../src/effects/Wahwah.cpp:484
+#: ../src/effects/Phaser.cpp:513 ../src/effects/Wahwah.cpp:484
msgid "LFO Start Phase (deg.):"
msgstr "Gwedd Gychwyn LFO (gradd):"
@@ -5309,8 +5395,7 @@ msgstr "Ailadroddwyd %d o weithiau"
msgid "Tracks are too long to repeat the selection."
msgstr "Traciau yn rhy hir i aildraethu'r dewisiad."
-#: ../src/effects/Repeat.cpp:58
-#: ../src/effects/Repeat.cpp:62
+#: ../src/effects/Repeat.cpp:58 ../src/effects/Repeat.cpp:62
msgid "Repeat"
msgstr "Ailadrodd"
@@ -5323,8 +5408,7 @@ msgstr "Nifer o weithiau i ailadrodd: "
msgid "New selection length: hh:mm:ss"
msgstr ""
-#: ../src/effects/Repeat.cpp:241
-#: ../src/effects/Repeat.cpp:280
+#: ../src/effects/Repeat.cpp:241 ../src/effects/Repeat.cpp:280
msgid "New selection length: "
msgstr "Hyd dewisiad newydd: "
@@ -5535,20 +5619,37 @@ msgstr ""
msgid "Truncate Silence"
msgstr ""
-#: effects/TruncSilence.cpp:346
-msgid "Max silence duration:"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr ""
+
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
msgstr ""
#: prefs/AudioIOPrefs.cpp:175 prefs/AudioIOPrefs.cpp:178
msgid "milliseconds"
msgstr ""
+#: effects/TruncSilence.cpp:346
+msgid "Max silence duration:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ""
+
#: effects/TruncSilence.cpp:351
msgid "Threshold for silence:"
msgstr ""
-#: effects/TruncSilence.cpp:375
-msgid " Duration must be at least 1 millisecond"
+#: effects/TruncSilence.cpp:506
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
msgstr ""
#: BatchCommands.cpp:236 effects/TruncSilence.cpp:84 effects/TruncSilence.h:29
@@ -5559,17 +5660,56 @@ msgstr ""
msgid "Truncating Silence..."
msgstr ""
-#: ../src/effects/VST/VSTEffect.cpp:180
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "Mae'n ddrwg gen i, nid yw'n bosib cyflawni Effeithiau VST pan fo traciau unigol y sianeli ddim yn cydweddu."
+#: ../src/effects/ladspa/LadspaEffect.cpp:452
+msgid "Effect Settings"
+msgstr "Gosodiadau'r Effaith"
+
+#: ../src/effects/ladspa/LadspaEffect.cpp:435
+#: ../src/effects/ladspa/LadspaEffect.cpp:443
+#: ../src/prefs/QualityPrefs.cpp:160
+msgid "None"
+msgstr "Dim"
+
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
-#: ../src/effects/VST/VSTEffect.cpp:196
-msgid "Can't process replacing"
-msgstr "Methu prosesu'r amnewid"
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
-#: ../src/effects/VST/VSTEffect.cpp:410
-msgid "VST Plug-in parameters:"
-msgstr "Paramedrau Ategyn VST:"
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr ""
#: ../src/effects/Wahwah.cpp:41
#, c-format
@@ -5617,22 +5757,11 @@ msgstr "Gweithredu effaith: %s"
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr ""
-#: ../src/effects/ladspa/LadspaEffect.cpp:435
-#: ../src/effects/ladspa/LadspaEffect.cpp:443
-#: ../src/prefs/QualityPrefs.cpp:160
-msgid "None"
-msgstr "Dim"
-
#: ../src/effects/ladspa/LadspaEffect.cpp:437
msgid "Author: "
msgstr "Awdur:"
-#: ../src/effects/ladspa/LadspaEffect.cpp:452
-msgid "Effect Settings"
-msgstr "Gosodiadau'r Effaith"
-
-#: ../src/effects/Silence.cpp:127
-#: ../src/effects/ToneGen.cpp:306
+#: ../src/effects/Silence.cpp:127 ../src/effects/ToneGen.cpp:306
msgid "Length (seconds)"
msgstr "Hyd (eiliadau)"
@@ -5823,9 +5952,21 @@ msgstr "Allforio'r cywaith cyfan gan ddefnyddio'r amgodydd llinell orchymun"
msgid "Command Output"
msgstr ""
-#: export/ExportFFmpeg.cpp:59
+#: export/ExportFFmpeg.cpp:61
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
#: export/ExportFFmpeg.cpp:394
@@ -5893,6 +6034,10 @@ msgstr ""
msgid "AAC Export Setup"
msgstr ""
+#: export/ExportOGG.cpp:86
+msgid "Quality:"
+msgstr ""
+
#: export/ExportFFmpegDialogs.cpp:217
msgid "Specify AMR-NB Options"
msgstr ""
@@ -6026,12 +6171,8 @@ msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n
"Recommended - 192000"
msgstr ""
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr ""
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid "Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
@@ -6050,10 +6191,10 @@ msgstr ""
msgid "Cutoff Bandwidth:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:947
+#: export/ExportFFmpegDialogs.cpp:936
msgid "Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:949
@@ -6242,12 +6383,12 @@ msgstr ""
msgid "AC3 Files (FFmpeg)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:56
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:57
@@ -6358,6 +6499,17 @@ msgstr ""
msgid "FLAC Files"
msgstr ""
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
#: export/ExportFLAC.cpp:93
msgid "Exporting the selected audio as FLAC"
msgstr ""
@@ -6382,8 +6534,7 @@ msgstr ""
msgid "Cannot export MP2 with this sample rate and bit rate"
msgstr ""
-#: ../src/export/ExportMP3.cpp:1345
-#: ../src/export/ExportOGG.cpp:53
+#: ../src/export/ExportMP3.cpp:1345 ../src/export/ExportOGG.cpp:53
msgid "Unable to open target file for writing"
msgstr "Methu agor y ffeil ar gyfer ysgrifennu"
@@ -6582,8 +6733,7 @@ msgstr ""
msgid "MP3 export library not found"
msgstr ""
-#: ../src/export/ExportMultiple.cpp:367
-#: ../src/export/ExportMultiple.cpp:474
+#: ../src/export/ExportMultiple.cpp:367 ../src/export/ExportMultiple.cpp:474
#: ../src/export/ExportMultiple.cpp:562
msgid "Export Multiple"
msgstr "Allforio Niferus"
@@ -6614,11 +6764,6 @@ msgstr ""
msgid "Export location:"
msgstr "Lleoliad allforio:"
-#: ../src/export/ExportMultiple.cpp:600
-#: ../src/prefs/DirectoriesPrefs.cpp:82
-msgid "Choose..."
-msgstr "Dewis..."
-
#: export/ExportMultiple.cpp:205
msgid "Create"
msgstr ""
@@ -6643,10 +6788,6 @@ msgstr "Enw'r ffeil gyntaf:"
msgid "First file name"
msgstr ""
-#: ../src/export/ExportMultiple.cpp:636
-msgid "Tracks"
-msgstr "Traciau"
-
#: ../src/export/ExportMultiple.cpp:646
msgid "Name files:"
msgstr "Enwi ffeiliau:"
@@ -6680,25 +6821,44 @@ msgstr ""
msgid "Choose a location to save the exported files"
msgstr "Dewis lleoliad i gadw'r ffeiliau allforio"
-#: export/ExportMultiple.cpp:480
+#: export/ExportMultiple.cpp:524
#, c-format
-msgid "\"%s\" doesn't exist.\n"
-"\n"
-"Would you like to create it?"
+msgid "Successfully exported the following %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:637 export/ExportMultiple.cpp:772
-msgid "Edit metadata"
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:590
+#: export/ExportMultiple.cpp:527
#, c-format
-msgid "Successfully exported %d file(s)."
+msgid "Export stopped after exporting the following %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:597
+#: export/ExportMultiple.cpp:528
#, c-format
-msgid "Something went wrong after exporting %d file(s)."
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr ""
+
+#: export/ExportMultiple.cpp:480
+#, c-format
+msgid "\"%s\" doesn't exist.\n"
+"\n"
+"Would you like to create it?"
+msgstr ""
+
+#: export/ExportMultiple.cpp:637 export/ExportMultiple.cpp:772
+msgid "Edit metadata"
msgstr ""
#: export/ExportMultiple.cpp:881
@@ -6782,7 +6942,6 @@ msgstr ""
#. i18n-hint: %s will be the error message from libsndfile
#: export/ExportPCM.cpp:436
-#, c-format
#, fuzzy
msgid "Error (file may not have been written): %s"
msgstr "Gwall (efallai na gadwyd y ffeil): %s"
@@ -6948,8 +7107,11 @@ msgstr ""
msgid "FLAC files"
msgstr ""
-#: ../src/import/ImportLOF.cpp:151
-#: ../src/import/ImportLOF.cpp:177
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr ""
+
+#: ../src/import/ImportLOF.cpp:151 ../src/import/ImportLOF.cpp:177
msgid "List of Files in basic text format"
msgstr "Rhestr o Ffeiliau mewn fformat testun sylfaenol"
@@ -6959,10 +7121,8 @@ msgid "Invalid window offset in LOF file."
msgstr "Atred ffenest annilys yn y ffeil LOF."
#. i18n-hint: You do not need to translate "LOF"
-#: ../src/import/ImportLOF.cpp:270
-#: ../src/import/ImportLOF.cpp:291
-#: ../src/import/ImportLOF.cpp:364
-#: ../src/import/ImportLOF.cpp:384
+#: ../src/import/ImportLOF.cpp:270 ../src/import/ImportLOF.cpp:291
+#: ../src/import/ImportLOF.cpp:364 ../src/import/ImportLOF.cpp:384
msgid "LOF Error"
msgstr "Gwall LOF"
@@ -7105,131 +7265,59 @@ msgstr ""
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr ""
-#: ../src/prefs/PrefsDialog.cpp:84
-msgid "Audio I/O"
-msgstr "Sain M/A"
-
-#: ../src/prefs/AudioIOPrefs.cpp:212
-msgid "1 (Mono)"
-msgstr "1 (Mono)"
-
-#: ../src/prefs/AudioIOPrefs.cpp:213
-msgid "2 (Stereo)"
-msgstr "2 (Stereo)"
-
-#: ../src/prefs/AudioIOPrefs.cpp:80
-msgid "Playback"
-msgstr "Chwarae Nôl"
-
-#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
-#: toolbars/DeviceToolBar.cpp:54
-msgid "Device"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:122
-msgid "Using:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:123
-msgid "Portaudio v"
-msgstr ""
-
-#: ../src/prefs/AudioIOPrefs.cpp:148
-msgid "Recording"
-msgstr "Recordio"
-
-#: prefs/AudioIOPrefs.cpp:139
-msgid "Channels"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:145
-msgid "Playthrough"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:194
-msgid "Effects Preview"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:165
-msgid "Length of preview:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:158
-msgid "Cut Preview"
+#: prefs/BatchPrefs.cpp:53 prefs/BatchPrefs.cpp:54
+msgid "Batch"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:173
-msgid "Preview before cut region:"
+#: prefs/BatchPrefs.cpp:75 prefs/GUIPrefs.cpp:70
+msgid "Behaviors"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:175
-msgid "Preview after cut region:"
+#: prefs/BatchPrefs.cpp:80
+msgid "&Don't apply effects in batch mode"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:168
-msgid "Latency"
+#: prefs/BatchPrefs.cpp:83
+msgid "Cl&eanSpeech Mode (Customized GUI)"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:195
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:198
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr ""
+#: ../src/prefs/PrefsDialog.cpp:89
+msgid "Interface"
+msgstr "Rhyngwyneb"
-#: prefs/AudioIOPrefs.cpp:197
-msgid "Seek Time when playing"
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:187
-msgid "Short period:"
+#: prefs/AudioIOPrefs.cpp:122
+msgid "Using:"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:189
-msgid "Long period:"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:80
+msgid "Playback"
+msgstr "Chwarae Nôl"
-#: prefs/BatchPrefs.cpp:53 prefs/BatchPrefs.cpp:54
-msgid "Batch"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:148
+msgid "Recording"
+msgstr "Recordio"
-#: prefs/BatchPrefs.cpp:75 prefs/GUIPrefs.cpp:70
-msgid "Behaviors"
+#: prefs/AudioIOPrefs.cpp:139
+msgid "Channels"
msgstr ""
-#: prefs/BatchPrefs.cpp:80
-msgid "&Don't apply effects in batch mode"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:212
+msgid "1 (Mono)"
+msgstr "1 (Mono)"
-#: prefs/BatchPrefs.cpp:83
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:213
+msgid "2 (Stereo)"
+msgstr "2 (Stereo)"
-#: ../src/prefs/PrefsDialog.cpp:88
-#: ../src/prefs/PrefsDialog.cpp:216
+#: ../src/prefs/PrefsDialog.cpp:88 ../src/prefs/PrefsDialog.cpp:216
msgid "Directories"
msgstr "Ffolderau"
@@ -7245,34 +7333,31 @@ msgstr "Lleoliad:"
msgid "Free Space:"
msgstr "Lle Rhydd:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr ""
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr ""
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
+#: prefs/DirectoriesPrefs.cpp:110
+msgid "Audio cache"
msgstr ""
#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
+msgid "Play and/or record using RAM (useful for slow drives)"
msgstr ""
-#: prefs/DirectoriesPrefs.cpp:110
-msgid "Audio cache"
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
msgstr ""
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
#: ../src/prefs/DirectoriesPrefs.cpp:135
msgid "Choose a location to place the temporary directory"
msgstr "Dewisiwch leoliad ar gyfer y ffolder dros dro"
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: ../src/prefs/DirectoriesPrefs.cpp:181
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -7291,220 +7376,141 @@ msgstr "Nid oes posib ysgrifennu i'r ffolder %s"
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "Ni fydd newidiadau i'r ffolder dros dro yn cael effaith tan ailgychwyn Audacity"
-#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
-msgid "Import / Export"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:84
-msgid "MP3 Export Library"
-msgstr ""
-
-#: ../src/prefs/FileFormatPrefs.cpp:180
-msgid "MP3 Library Version:"
-msgstr "Fersiwn Rhaglengell MP3:"
-
-#: prefs/FileFormatPrefs.cpp:93
-msgid "MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:98
-msgid "LAME MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
-msgid "&Download"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:136
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:137
-msgid "When importing audio files"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:140
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:141
-msgid "&Read uncompressed audio files directly from the original (faster)"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:143
-msgid "&Normalize all tracks in project"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:132
-msgid "When saving a project that depends on other audio files"
+#: prefs/GUIPrefs.cpp:42
+msgid "In Browser"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:87
-msgid "Always © all audio into project (safest)"
+#: prefs/GUIPrefs.cpp:43
+msgid "From Internet"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:88
-msgid "&Do not copy any audio"
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:135
-msgid "&Ask user"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:93
-msgid "When exporting tracks to an audio file"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:144
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:97
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
msgstr ""
-#: prefs/BatchPrefs.cpp:91
-msgid "S&how Metadata Editor prior to export step"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
msgstr ""
-#: ../src/prefs/PrefsDialog.cpp:89
-msgid "Interface"
-msgstr "Rhyngwyneb"
+#: ../src/prefs/GUIPrefs.cpp:150
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 dB (amrediad bas ar gyfer golygu osgled-uchel)"
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:157
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 dB (amrediad PCM samplau 8 did)"
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
+#: prefs/GUIPrefs.cpp:143
+msgid "-60 dB (PCM range of 10 bit samples)"
msgstr ""
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:164
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 dB (amrediad PCM samplau 16 did)"
-#: prefs/GUIPrefs.cpp:72
-msgid "&Update display while playing"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:171
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 dB (bras derfyn clyw dynol)"
-#: prefs/GUIPrefs.cpp:96
-msgid "Cl&osing last window quits Audacity"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:178
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB (amrediad PCM samplau 24 did)"
-#: prefs/GUIPrefs.cpp:76
-msgid "Enable &dragging of left and right selection edges"
+#: prefs/SpectrumPrefs.cpp:96
+msgid "Display"
msgstr ""
#: prefs/GUIPrefs.cpp:100
msgid "Er&gonomic order of audio I/O buttons"
msgstr ""
-#: prefs/GUIPrefs.cpp:80
-msgid "Automatically &fit tracks vertically zoomed"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
msgstr ""
-#: prefs/GUIPrefs.cpp:104
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
msgstr ""
-#: prefs/GUIPrefs.cpp:90
-msgid "Editing a &clip can move other clips"
+#: prefs/GUIPrefs.cpp:167
+msgid "Help:"
msgstr ""
-#: prefs/GUIPrefs.cpp:88
-msgid "&Select all audio in project, if none selected"
+#: prefs/GUIPrefs.cpp:96
+msgid "Cl&osing last window quits Audacity"
msgstr ""
#: prefs/GUIPrefs.cpp:90
msgid "&Beep on completion of longer activities"
msgstr ""
-#: prefs/BatchPrefs.cpp:87 prefs/GUIPrefs.cpp:94
-msgid "Show / Hide"
+#: prefs/GUIPrefs.cpp:126
+msgid "Modes"
msgstr ""
-#: prefs/GUIPrefs.cpp:96
-msgid "Enable cut &lines"
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:98
-msgid "Show warnings about &temp files"
+#: prefs/GUIPrefs.cpp:129
+msgid "Don't a&pply effects in batch mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
+#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
+msgid "Import / Export"
msgstr ""
-#: prefs/GUIPrefs.cpp:122
-msgid "Show &Welcome Message at program start up"
+#: prefs/FileFormatPrefs.cpp:137
+msgid "When importing audio files"
msgstr ""
-#: prefs/GUIPrefs.cpp:126
-msgid "Modes"
+#: prefs/FileFormatPrefs.cpp:140
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
msgstr ""
-#: prefs/GUIPrefs.cpp:129
-msgid "Don't a&pply effects in batch mode"
+#: prefs/FileFormatPrefs.cpp:141
+msgid "&Read uncompressed audio files directly from the original (faster)"
msgstr ""
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
+#: prefs/FileFormatPrefs.cpp:143
+msgid "&Normalize all tracks in project"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:150
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 dB (amrediad bas ar gyfer golygu osgled-uchel)"
-
-#: ../src/prefs/GUIPrefs.cpp:157
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 dB (amrediad PCM samplau 8 did)"
-
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
+#: prefs/FileFormatPrefs.cpp:93
+msgid "When exporting tracks to an audio file"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:164
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 dB (amrediad PCM samplau 16 did)"
-
-#: ../src/prefs/GUIPrefs.cpp:171
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 dB (bras derfyn clyw dynol)"
-
-#: ../src/prefs/GUIPrefs.cpp:178
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB (amrediad PCM samplau 24 did)"
-
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
+#: prefs/FileFormatPrefs.cpp:144
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
msgstr ""
-#: prefs/GUIPrefs.cpp:164
-msgid "Other interface choices"
+#: prefs/FileFormatPrefs.cpp:97
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
msgstr ""
-#: prefs/GUIPrefs.cpp:167
-msgid "Help:"
+#: prefs/BatchPrefs.cpp:91
+msgid "S&how Metadata Editor prior to export step"
msgstr ""
-#: prefs/GUIPrefs.cpp:168
-msgid "Solo Button:"
+#: prefs/ImportExportPrefs.cpp:84
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
msgstr ""
#: ../src/prefs/PrefsDialog.cpp:90
@@ -7535,17 +7541,22 @@ msgstr "Nodyn: Bydd pwyso Cmd+Q yn cau. Mae pob bysell arall yn ddilys."
msgid "&Defaults"
msgstr ""
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr ""
+
#: ../src/prefs/KeyConfigPrefs.cpp:79
msgid "Key Combination"
msgstr "Cyfuniad Bysyll"
-#: ../src/prefs/KeyConfigPrefs.cpp:159
-msgid "Export Keyboard Shortcuts As:"
-msgstr "Allforio Byrlwybrau Allweddell Fel:"
+#: ../src/EditToolBar.cpp:159
+msgid "Undo"
+msgstr "Dadwneud"
-#: ../src/prefs/KeyConfigPrefs.cpp:174
-msgid "Error saving keyboard shortcuts"
-msgstr "Gwall tra'n cadw byrlwybrau'r allweddell"
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr ""
#: ../src/prefs/KeyConfigPrefs.cpp:188
msgid "Select an XML file containing Audacity keyboard shortcuts..."
@@ -7555,6 +7566,14 @@ msgstr "Dewisiwch ffeil XML yn cynnwys byrlwybrau bysellfwrdd Audacity..."
msgid "Error loading keyboard shortcuts"
msgstr "Gwall tra'n llwytho byrlwybrau'r allweddell."
+#: ../src/prefs/KeyConfigPrefs.cpp:159
+msgid "Export Keyboard Shortcuts As:"
+msgstr "Allforio Byrlwybrau Allweddell Fel:"
+
+#: ../src/prefs/KeyConfigPrefs.cpp:174
+msgid "Error saving keyboard shortcuts"
+msgstr "Gwall tra'n cadw byrlwybrau'r allweddell"
+
#: prefs/KeyConfigPrefs.cpp:239
#, c-format
msgid "The keyboard shortcut '%s' is already assigned to:\n"
@@ -7562,9 +7581,61 @@ msgid "The keyboard shortcut '%s' is already assigned to:\n"
"'%s'"
msgstr ""
-#: ../src/EditToolBar.cpp:159
-msgid "Undo"
-msgstr "Dadwneud"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:84
+msgid "MP3 Export Library"
+msgstr ""
+
+#: ../src/prefs/FileFormatPrefs.cpp:180
+msgid "MP3 Library Version:"
+msgstr "Fersiwn Rhaglengell MP3:"
+
+#: prefs/FileFormatPrefs.cpp:93
+msgid "MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:98
+msgid "LAME MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
+msgid "&Download"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:109
+msgid "FFmpeg Library Version:"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
+msgid "FFmpeg Library:"
+msgstr ""
+
+#: ../src/prefs/PrefsDialog.cpp:84
+msgid "Audio I/O"
+msgstr "Sain M/A"
+
+#: prefs/AudioIOPrefs.cpp:123
+msgid "Portaudio v"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:145
+msgid "Playthrough"
+msgstr ""
#: prefs/AudioIOPrefs.cpp:147
#, fuzzy
@@ -7579,6 +7650,10 @@ msgstr ""
msgid "&Software Playthrough (Play new track while recording it)"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:158
+msgid "Cut Preview"
+msgstr ""
+
#: prefs/MidiIOPrefs.cpp:160
msgid "Play before cut region:"
msgstr ""
@@ -7587,6 +7662,10 @@ msgstr ""
msgid "Play after cut region:"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:168
+msgid "Latency"
+msgstr ""
+
#: prefs/AudioIOPrefs.cpp:174
msgid "Audio to buffer:"
msgstr ""
@@ -7599,6 +7678,18 @@ msgstr ""
msgid "Seek Time"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:187
+msgid "Short period:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:189
+msgid "Long period:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:194
+msgid "Effects Preview"
+msgstr ""
+
#: prefs/MidiIOPrefs.cpp:196
msgid "Play when previewing:"
msgstr ""
@@ -7623,14 +7714,12 @@ msgstr "Gweithred Orchymun"
msgid "Buttons"
msgstr "Botymau"
-#: ../src/prefs/MousePrefs.cpp:88
-#: ../src/prefs/MousePrefs.cpp:92
+#: ../src/prefs/MousePrefs.cpp:88 ../src/prefs/MousePrefs.cpp:92
#: ../src/prefs/MousePrefs.cpp:100
msgid "Left-Click"
msgstr "Clic-Chwith"
-#: ../src/prefs/MousePrefs.cpp:88
-#: ../src/prefs/MousePrefs.cpp:89
+#: ../src/prefs/MousePrefs.cpp:88 ../src/prefs/MousePrefs.cpp:89
#: ../src/prefs/MousePrefs.cpp:90
msgid "Select"
msgstr "Dewis"
@@ -7639,10 +7728,8 @@ msgstr "Dewis"
msgid "Set Selection Point"
msgstr "Gosod Pwynt Dewisiad"
-#: ../src/prefs/MousePrefs.cpp:89
-#: ../src/prefs/MousePrefs.cpp:93
-#: ../src/prefs/MousePrefs.cpp:97
-#: ../src/prefs/MousePrefs.cpp:98
+#: ../src/prefs/MousePrefs.cpp:89 ../src/prefs/MousePrefs.cpp:93
+#: ../src/prefs/MousePrefs.cpp:97 ../src/prefs/MousePrefs.cpp:98
#: ../src/prefs/MousePrefs.cpp:102
msgid "Left-Drag"
msgstr "Chiwth-Lusgo"
@@ -7675,10 +7762,8 @@ msgstr ""
msgid "Set Selection Point and Play"
msgstr ""
-#: ../src/prefs/MousePrefs.cpp:92
-#: ../src/prefs/MousePrefs.cpp:93
-#: ../src/prefs/MousePrefs.cpp:94
-#: ../src/prefs/MousePrefs.cpp:95
+#: ../src/prefs/MousePrefs.cpp:92 ../src/prefs/MousePrefs.cpp:93
+#: ../src/prefs/MousePrefs.cpp:94 ../src/prefs/MousePrefs.cpp:95
msgid "Zoom"
msgstr "Chwyddo"
@@ -7754,10 +7839,8 @@ msgstr "Newid Chwyddamlen"
msgid "Change Sample"
msgstr "Newid Sampl"
-#: ../src/prefs/MousePrefs.cpp:100
-#: ../src/prefs/MousePrefs.cpp:101
-#: ../src/prefs/MousePrefs.cpp:102
-#: ../src/prefs/MousePrefs.cpp:103
+#: ../src/prefs/MousePrefs.cpp:100 ../src/prefs/MousePrefs.cpp:101
+#: ../src/prefs/MousePrefs.cpp:102 ../src/prefs/MousePrefs.cpp:103
msgid "Pencil"
msgstr "Pensil"
@@ -7777,10 +7860,8 @@ msgstr "Newid Sawl Sampl"
msgid "Change ONE Sample only"
msgstr "Newid UN sampl yn unig"
-#: ../src/prefs/MousePrefs.cpp:105
-#: ../src/prefs/MousePrefs.cpp:106
-#: ../src/prefs/MousePrefs.cpp:107
-#: ../src/prefs/MousePrefs.cpp:108
+#: ../src/prefs/MousePrefs.cpp:105 ../src/prefs/MousePrefs.cpp:106
+#: ../src/prefs/MousePrefs.cpp:107 ../src/prefs/MousePrefs.cpp:108
msgid "Multi"
msgstr "Aml"
@@ -7794,8 +7875,7 @@ msgstr "Fel yr erfyn dewis"
msgid "same as zoom tool"
msgstr "Fel yr erfyn chwyddo"
-#: ../src/prefs/MousePrefs.cpp:110
-#: ../src/prefs/MousePrefs.cpp:111
+#: ../src/prefs/MousePrefs.cpp:110 ../src/prefs/MousePrefs.cpp:111
msgid "Any"
msgstr "Unrhyw"
@@ -7823,10 +7903,62 @@ msgstr "Ctrl-Cylchdroi-Olwyn"
msgid "Zoom in or out"
msgstr "Nesáu neu Pellhau"
+#: prefs/AudioIOPrefs.cpp:165
+msgid "Length of preview:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:173
+msgid "Preview before cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:175
+msgid "Preview after cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:197
+msgid "Seek Time when playing"
+msgstr ""
+
#: ../src/prefs/PrefsDialog.cpp:52
msgid "Audacity Preferences"
msgstr "Hoffterau Audacity"
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:132
+msgid "When saving a project that depends on other audio files"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:87
+msgid "Always © all audio into project (safest)"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:88
+msgid "&Do not copy any audio"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:135
+msgid "&Ask user"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr ""
+
#: ../src/prefs/QualityPrefs.cpp:161
msgid "Rectangle"
msgstr "Petryal"
@@ -7851,44 +7983,44 @@ msgstr "Graddfa Samplo Rhagosodedig:"
msgid "Default Sample Format:"
msgstr "Fformat Sampl Rhagosodedig:"
-#: ../src/prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "Trosydd graddfa samplo amser real"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:147
-msgid "High-quality sample rate converter:"
-msgstr "Troswr Graddfa Samplo Ansawdd Uchel:"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+msgid "Sample Rate Converter:"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:171
-msgid "Real-time dither:"
-msgstr "'Dither' amser real:"
+#: prefs/QualityPrefs.cpp:164
+msgid "Dither"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:186
-msgid "High-quality dither:"
-msgstr "'Dither' Ansawdd Uchel:"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
+#: prefs/AudioIOPrefs.cpp:149
+msgid "Overdub: &Play other tracks while recording new one"
msgstr ""
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
+#: prefs/AudioIOPrefs.cpp:150
+msgid "&Hardware Playthrough: Play new track while recording it"
msgstr ""
-#: prefs/QualityPrefs.cpp:164
-msgid "Dither"
+#: prefs/AudioIOPrefs.cpp:157
+msgid "&Software Playthrough: Play new track while recording or monitoring"
msgstr ""
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
+#: prefs/AudioIOPrefs.cpp:160
+msgid "(uncheck when recording \"stereo mix\")"
msgstr ""
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
msgstr ""
-#: prefs/SmartRecordPrefs.cpp:54 prefs/SmartRecordPrefs.cpp:55
-msgid "Smart Recording"
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
msgstr ""
#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
@@ -7903,18 +8035,54 @@ msgstr ""
msgid "Spectrograms"
msgstr "Sbectrogramau"
-#: ../src/prefs/SpectrumPrefs.cpp:70
-msgid "FFT Size"
-msgstr "Maint FFT"
-
#: prefs/SpectrumPrefs.cpp:75
msgid "8 - most wideband"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
#: ../src/prefs/SpectrumPrefs.cpp:40
msgid "256 - default"
msgstr "256 - rhagosodedig"
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:107
msgid "32768 - most narrowband"
msgstr ""
@@ -7923,20 +8091,24 @@ msgstr ""
msgid "4096 - most narrowband"
msgstr "4096 - amrediad mwyaf cul"
-#: prefs/SpectrumPrefs.cpp:90
-msgid "Window type:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:125
-msgid "FFT Skip Points"
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:96
-msgid "Display"
+#: prefs/SpectrumPrefs.cpp:93
+msgid "Window type"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:100
-msgid "&Grayscale"
+#: prefs/SpectrumPrefs.cpp:125
+msgid "FFT Skip Points"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
msgstr ""
#: prefs/SpectrumPrefs.cpp:103
@@ -7947,16 +8119,16 @@ msgstr ""
msgid "Maximum Frequency (Hz):"
msgstr "Amledd Uchaf (Hz):"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
msgstr ""
#: prefs/SpectrumPrefs.cpp:165
@@ -7967,6 +8139,14 @@ msgstr ""
msgid "Max. Number of Notes (1..128):"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:161
+msgid "&Find Notes"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Quantize Notes"
+msgstr ""
+
#: ../src/prefs/SpectrumPrefs.cpp:148
msgid "The maximum frequency must be an integer"
msgstr "Rhaid i'r amledd uchaf for yn gyfanrif"
@@ -7983,18 +8163,57 @@ msgstr ""
msgid "Minimum frequency must be at least 0 Hz"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:226 prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
+#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:230
+msgid "The maximum number of notes must be in the range 1..128"
msgstr ""
#: prefs/ThemePrefs.cpp:61 prefs/ThemePrefs.cpp:62
msgid "Theme"
msgstr ""
+#: prefs/ThemePrefs.cpp:123
+msgid "Info"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:91
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#: prefs/ThemePrefs.cpp:90
msgid "Theme Cache - Images && Color"
msgstr ""
@@ -8023,78 +8242,94 @@ msgstr ""
msgid "Load Files"
msgstr ""
-#: prefs/ThemePrefs.cpp:123
-msgid "Info"
+#: prefs/GUIPrefs.cpp:50
+msgid "Simple"
msgstr ""
-#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
+#: prefs/GUIPrefs.cpp:72
+msgid "&Update display while playing"
msgstr ""
-#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
+#: prefs/GUIPrefs.cpp:80
+msgid "Automatically &fit tracks vertically zoomed"
msgstr ""
-#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
+#: prefs/TracksPrefs.cpp:88
+msgid "Default View Mode:"
msgstr ""
-#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:88
+msgid "&Select all audio in project, if none selected"
msgstr ""
-#: ../src/ControlToolBar.cpp:470
-msgid "Pause"
-msgstr "Seibio"
+#: prefs/GUIPrefs.cpp:96
+msgid "Enable cut &lines"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play"
+#: prefs/GUIPrefs.cpp:76
+msgid "Enable &dragging of left and right selection edges"
msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
+#: prefs/GUIPrefs.cpp:104
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
msgstr ""
-#: ../src/ControlToolBar.cpp:471
-msgid "Stop"
-msgstr "Aros"
+#: prefs/GUIPrefs.cpp:90
+msgid "Editing a &clip can move other clips"
+msgstr ""
-#: ../src/ControlToolBar.cpp:467
-msgid "Skip to Start"
-msgstr "Neidio i'r Dechrau"
+#: prefs/GUIPrefs.cpp:168
+msgid "Solo Button:"
+msgstr ""
-#: ../src/ControlToolBar.cpp:472
-msgid "Skip to End"
-msgstr "Neidio i'r Diwedd"
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:192
-msgid "Record (Shift for Append Record)"
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
msgstr ""
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr ""
+
+#: ../src/Menus.cpp:561
+msgid "Pause"
+msgstr "Seibio"
+
+#: ../src/Menus.cpp:560
+msgid "Stop"
+msgstr "Aros"
+
#: toolbars/ControlToolBar.cpp:195
msgid "Clean Speech"
msgstr ""
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play (Shift for Loop Play)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:192
+msgid "Record (Shift for Append Record)"
+msgstr ""
+
#: toolbars/ControlToolBar.cpp:524 toolbars/ControlToolBar.cpp:776
msgid "Error while opening sound device. "
msgstr ""
@@ -8135,28 +8370,20 @@ msgstr "Nesáu"
msgid "Zoom Out"
msgstr "Pellhau"
-#: ../src/EditToolBar.cpp:170
-msgid "Zoom Toggle"
-msgstr "Newid Chwyddo"
-
-#: toolbars/EditToolBar.cpp:160
-msgid "Fit Selection"
-msgstr ""
-
#: ../src/EditToolBar.cpp:174
msgid "Fit selection in window"
msgstr "Ffitio'r dewisiad i'r ffenest"
-#: toolbars/EditToolBar.cpp:162
-msgid "Fit Project"
-msgstr ""
-
#: ../src/EditToolBar.cpp:176
msgid "Fit project in window"
msgstr "Ffitio'r cywaith i'r ffenest"
-#: toolbars/MeterToolBar.cpp:49
-msgid "Meter"
+#: toolbars/EditToolBar.cpp:160
+msgid "Fit Selection"
+msgstr ""
+
+#: toolbars/EditToolBar.cpp:162
+msgid "Fit Project"
msgstr ""
#: toolbars/MeterToolBar.cpp:79
@@ -8203,6 +8430,14 @@ msgstr ""
msgid "Input Source"
msgstr ""
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:75
msgid "Selection"
msgstr ""
@@ -8281,30 +8516,6 @@ msgstr "Chwith=Nesáu, Dde=Pellhau, Canol=Arferol"
msgid "Click and drag to move a track in time"
msgstr "Cliciwch a llusgwch i symud y trac yn ôl neu ymlaen"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr ""
-
-#: ../src/ControlToolBar.cpp:355
-msgid "Selection Tool"
-msgstr "Erfyn Dewis"
-
-#: ../src/ControlToolBar.cpp:356
-msgid "Envelope Tool"
-msgstr "Erfyn Chwyddamlen"
-
-#: ../src/ControlToolBar.cpp:357
-msgid "Time Shift Tool"
-msgstr "Erfyn Symud Trac Sain"
-
-#: ../src/ControlToolBar.cpp:358
-msgid "Zoom Tool"
-msgstr "Erfyn Chwyddo"
-
-#: ../src/ControlToolBar.cpp:359
-msgid "Draw Tool"
-msgstr "Erfyn Darlunio"
-
#: ../src/ControlToolBar.cpp:360
msgid "Multi-Tool Mode"
msgstr "Modd Aml-Erfyn"
@@ -8313,22 +8524,10 @@ msgstr "Modd Aml-Erfyn"
msgid "Slide Tool"
msgstr ""
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr ""
-
-#: toolbars/TranscriptionToolBar.cpp:81
-msgid "Transcription"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:183
msgid "Play at selected speed"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:184
-msgid "Play-at-speed"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:190 toolbars/TranscriptionToolBar.cpp:195
msgid "Playback Speed"
msgstr ""
@@ -8337,74 +8536,38 @@ msgstr ""
msgid "Adjust left selection to next onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:201
-msgid "Left-to-On"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:203
msgid "Adjust right selection to previous offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:204
-msgid "Right-to-Off"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:206
msgid "Adjust left selection to next offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:207
-msgid "Left-to-Off"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:209
msgid "Adjust right selection to previous onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:210
-msgid "Right-to-On"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:212
msgid "Select region of sound around cursor"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:213
-msgid "Select-Sound"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:215
msgid "Select region of silence around cursor"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:216
-msgid "Select-Silence"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:218
msgid "Automatically make labels from words"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:219
-msgid "Make Labels"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:221
msgid "Add label at selection"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:222
-msgid "Add Label"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:224
msgid "Calibrate voicekey"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:225
-msgid "Calibrate"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:229
msgid "Adjust Sensitivity"
msgstr ""
@@ -8437,6 +8600,46 @@ msgstr ""
msgid "Key type"
msgstr ""
+#: toolbars/TranscriptionToolBar.cpp:184
+msgid "Play-at-speed"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:201
+msgid "Left-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:204
+msgid "Right-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:207
+msgid "Left-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:210
+msgid "Right-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:213
+msgid "Select-Sound"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:216
+msgid "Select-Silence"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:219
+msgid "Make Labels"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:222
+msgid "Add Label"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:225
+msgid "Calibrate"
+msgstr ""
+
#: ../src/widgets/AButton.cpp:181
msgid " (disabled)"
msgstr " (analluogwyd)"
@@ -8450,14 +8653,12 @@ msgid "Button"
msgstr ""
#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
-#: ../src/widgets/ASlider.cpp:329
-#: ../src/widgets/Meter.cpp:165
+#: ../src/widgets/ASlider.cpp:329 ../src/widgets/Meter.cpp:165
msgid "L"
msgstr "Ch"
#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
-#: ../src/widgets/ASlider.cpp:332
-#: ../src/widgets/Meter.cpp:167
+#: ../src/widgets/ASlider.cpp:332 ../src/widgets/Meter.cpp:167
msgid "R"
msgstr "Dd"
@@ -8740,3 +8941,15 @@ msgstr ""
msgid "Could not load file: \"%s\""
msgstr ""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
+
diff --git a/locale/da.po b/locale/da.po
index 8e8fd1d..04a496a 100644
--- a/locale/da.po
+++ b/locale/da.po
@@ -29,11 +29,11 @@ msgid "Audacity is a free program written by a team of volunteer <a href=\"http:
msgstr ""
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#. i18n-hint: The translation of "translator_credits" will appear
@@ -85,7 +85,7 @@ msgid "Special thanks:"
msgstr "Særlig tak til:"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
msgstr ""
#: AboutDialog.cpp:320
@@ -226,10 +226,20 @@ msgstr "Input viser"
msgid "Output Meter"
msgstr "Udgangsmeter"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
+#: ../src/Menus.cpp:141
+msgid "&New"
+msgstr "&Ny"
+
+#: ../src/Menus.cpp:143
+msgid "&Open..."
+msgstr "&Åbn..."
+
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
+
#: AudacityApp.cpp:534 Menus.cpp:575
-msgid "&Preferences...\tCtrl+,"
+msgid "&Preferences..."
msgstr ""
#: ../src/AudacityApp.cpp:626 ../src/AudacityApp.cpp:696
@@ -352,14 +362,14 @@ msgstr "Fejl:"
msgid "Error Initializing Audio"
msgstr "Fejl ved lydkort initialisering"
-#: AudioIO.cpp:1236
-msgid "Latency problem"
+#: AudioIO.cpp:1225
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
+"Audacity has brought it back to start at zero.\n"
+"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
msgstr ""
#: AudioIO.cpp:1236
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
-"Audacity has brought it back to start at zero.\n"
-"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
+msgid "Latency problem"
msgstr ""
#: AutoRecovery.cpp:40
@@ -585,8 +595,9 @@ msgstr ""
msgid "C&hain (Double-Click or press SPACE to edit)"
msgstr ""
-#: BatchProcessDialog.cpp:450
-msgid "No"
+#. i18n-hint: This is the number of the command in the list
+#: BatchProcessDialog.cpp:453
+msgid "Num"
msgstr ""
#: BatchProcessDialog.cpp:456
@@ -906,11 +917,11 @@ msgstr "Rektangul
msgid "FFmpeg support not compiled in"
msgstr ""
-#: FFmpeg.cpp:101
+#: FFmpeg.cpp:103
msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
#: FFmpeg.cpp:104
@@ -968,11 +979,12 @@ msgstr ""
msgid "FFmpeg not found"
msgstr ""
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
#: FFmpeg.h:109
@@ -1058,11 +1070,24 @@ msgstr ""
msgid "Export"
msgstr ""
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
#: ../src/Benchmark.cpp:223 ../src/FreqWindow.cpp:123
#: ../src/effects/NoiseRemoval.cpp:463 ../src/effects/ClickRemoval.cpp:371
msgid "Close"
msgstr "Luk"
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr ""
+
#: ../src/widgets/Meter.cpp:293
msgid "dB"
msgstr ""
@@ -1073,6 +1098,15 @@ msgstr ""
msgid "Hz"
msgstr "Hz"
+#: ../src/Menus.cpp:2369
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "For at lave et spektrumplot skal alle markerede spor have samme samplerate."
+
+#: ../src/Menus.cpp:2395
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "Der er markeret for meget lyd. Kun de første %.1f sekunders lyd vil blive analyseret."
+
#: ../src/FreqWindow.cpp:463
msgid "Not enough data selected."
msgstr "For lidt data markeret."
@@ -1113,6 +1147,21 @@ msgstr "Frekvens (Hz)\tNiveau (dB)"
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "Forsinkelse (sekunder)\tFrekvens (Hz)\tNiveau"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr ""
+
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr ""
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr ""
@@ -1190,7 +1239,7 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr ""
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
msgstr ""
#: HelpText.cpp:244
@@ -1214,7 +1263,7 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr ""
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
msgstr ""
#: HelpText.cpp:383
@@ -1283,6 +1332,14 @@ msgstr ""
msgid "GB"
msgstr ""
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
#: LabelDialog.cpp:50
msgid "Track"
msgstr ""
@@ -1396,21 +1453,13 @@ msgstr "
msgid "&File"
msgstr "&Fil"
-#: ../src/Menus.cpp:141
-msgid "&New\tCtrl+N"
-msgstr "&Ny\tCtrl+N"
-
-#: ../src/Menus.cpp:143
-msgid "&Open...\tCtrl+O"
-msgstr "&Åbn...\tCtrl+O"
-
#: ../src/Menus.cpp:145
-msgid "&Close\tCtrl+W"
-msgstr "&Luk\tCtrl+W"
+msgid "&Close"
+msgstr "&Luk"
#: ../src/Menus.cpp:146
-msgid "&Save Project\tCtrl+S"
-msgstr "&Gem projekt\tCtrl+S"
+msgid "&Save Project"
+msgstr "&Gem projekt"
#: ../src/Menus.cpp:150
msgid "Save Project &As..."
@@ -1433,7 +1482,7 @@ msgid "&Import"
msgstr ""
#: Menus.cpp:236
-msgid "&Audio...\tCtrl+Shift+I"
+msgid "&Audio..."
msgstr ""
#: Menus.cpp:237
@@ -1465,8 +1514,8 @@ msgstr "Eksport
msgid "Export MIDI..."
msgstr ""
-#: Menus.cpp:290
-msgid "CleanSpeech C&hain..."
+#: Menus.cpp:352
+msgid "Appl&y Chain..."
msgstr ""
#: Menus.cpp:340 Menus.cpp:354
@@ -1481,10 +1530,6 @@ msgstr ""
msgid "I&mport CleanSpeech Presets..."
msgstr ""
-#: Menus.cpp:352
-msgid "Appl&y Chain..."
-msgstr ""
-
#: Menus.cpp:358
msgid "&Upload File..."
msgstr ""
@@ -1499,7 +1544,7 @@ msgid "&Print..."
msgstr ""
#: Menus.cpp:382 Menus.cpp:385
-msgid "E&xit\tCtrl+Q"
+msgid "E&xit"
msgstr ""
#: ../src/Menus.cpp:227
@@ -1507,63 +1552,63 @@ msgid "&Edit"
msgstr "&Rediger"
#: ../src/Menus.cpp:231
-msgid "&Undo\tCtrl+Z"
-msgstr "&Fortryd\tCtrl+Z"
+msgid "&Undo"
+msgstr "&Fortryd"
#: ../src/Menus.cpp:239
msgid "&Redo"
msgstr "&Gentag"
#: ../src/Menus.cpp:252
-msgid "Cu&t\tCtrl+X"
-msgstr "Klip\tCtrl+X"
+msgid "Cu&t"
+msgstr "Klip"
#: Menus.cpp:420
-msgid "Spl&it Cut\tCtrl+Alt+X"
+msgid "Spl&it Cut"
msgstr ""
#: ../src/Menus.cpp:253
-msgid "&Copy\tCtrl+C"
-msgstr "&Kopier\tCtrl+C"
+msgid "&Copy"
+msgstr "&Kopier"
#: ../src/Menus.cpp:254
-msgid "&Paste\tCtrl+V"
-msgstr "&Sæt ind\tCtrl+V"
+msgid "&Paste"
+msgstr "&Sæt ind"
#: Menus.cpp:426
-msgid "Tri&m\tCtrl+T"
+msgid "Tri&m"
msgstr ""
#: ../src/Menus.cpp:260
-msgid "&Delete\tCtrl+K"
-msgstr "&Slet\tCrl+K"
+msgid "&Delete"
+msgstr "&Slet"
#: Menus.cpp:429
-msgid "Split D&elete\tCtrl+Alt+K"
+msgid "Split D&elete"
msgstr ""
#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
+msgid "Silence Audi&o"
msgstr ""
#: Menus.cpp:432
-msgid "Sp&lit\tCtrl+I"
+msgid "Sp&lit"
msgstr ""
#: Menus.cpp:342
-msgid "Split Ne&w\tCtrl+Alt+I"
+msgid "Split Ne&w"
msgstr ""
#: Menus.cpp:442
-msgid "&Join\tCtrl+J"
+msgid "&Join"
msgstr ""
#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
+msgid "Detac&h at Silences"
msgstr ""
#: Menus.cpp:445
-msgid "Duplic&ate\tCtrl+D"
+msgid "Duplic&ate"
msgstr ""
#: Menus.cpp:400 Menus.cpp:639
@@ -1576,47 +1621,32 @@ msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:460
-msgid "&Cut\tAlt+X"
+msgid "&Cut"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:465
-msgid "&Split Cut\tShift+Alt+X"
+msgid "&Split Cut"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:470
-msgid "Co&py\tShift+Alt+C"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:476
-msgid "&Delete\tAlt+K"
+msgid "Co&py"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:481
-msgid "Sp&lit Delete\tShift+Alt+K"
+msgid "Sp&lit Delete"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:486
-msgid "Sile&nce\tAlt+L"
+msgid "Sile&nce"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:492
-msgid "Spli&t\tAlt+I"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:497
-msgid "&Join\tAlt+J"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
+msgid "Spli&t"
msgstr ""
#: Menus.cpp:456
@@ -1624,33 +1654,33 @@ msgid "&Select"
msgstr ""
#: ../src/Menus.cpp:269
-msgid "&All\tCtrl+A"
-msgstr "&Alle\tCtrl+A"
+msgid "&All"
+msgstr "&Alle"
#: Menus.cpp:415
-msgid "&None\tCtrl+Shift+A"
+msgid "&None"
msgstr ""
#: Menus.cpp:462
-msgid "&Left at Playback Position\t["
+msgid "&Left at Playback Position"
msgstr ""
#: Menus.cpp:463
-msgid "&Right at Playback Position\t]"
+msgid "&Right at Playback Position"
msgstr ""
#: Menus.cpp:467
-msgid "Track &Start to Cursor\tShift+J"
+msgid "Track &Start to Cursor"
msgstr ""
#: Menus.cpp:468
-msgid "Cursor to Track &End\tShift+K"
+msgid "Cursor to Track &End"
msgstr ""
#: Menus.cpp:525
#, fuzzy
-msgid "Find &Zero Crossings\tZ"
-msgstr "Find 0-krysninger\tZ"
+msgid "Find &Zero Crossings"
+msgstr "Find 0-krysninger"
#: Menus.cpp:476
msgid "Mo&ve Cursor"
@@ -1667,11 +1697,11 @@ msgid "to Selection En&d"
msgstr "til enden af det markerede"
#: Menus.cpp:483
-msgid "to Track &Start\tJ"
+msgid "to Track &Start"
msgstr ""
#: Menus.cpp:484
-msgid "to Track &End\tK"
+msgid "to Track &End"
msgstr ""
#: Menus.cpp:491
@@ -1694,29 +1724,8 @@ msgstr ""
msgid "&Unlock"
msgstr ""
-#: ../src/Menus.cpp:311
-msgid "Turn Snap-To On"
-msgstr "Slå Hop-til til"
-
-#: ../src/Menus.cpp:312
-msgid "Turn Snap-To Off"
-msgstr "Slå hop-til fra"
-
-#: ../src/Menus.cpp:313
-msgid "Turn Grid Snap On"
-msgstr "Slå gitter-hop til"
-
-#: ../src/Menus.cpp:314
-msgid "Turn Grid Snap Off"
-msgstr "Slå gitter-hop fra"
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr ""
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
+msgid "Pre&ferences..."
msgstr ""
#: ../src/Menus.cpp:345
@@ -1724,35 +1733,35 @@ msgid "&View"
msgstr "&Visning"
#: ../src/Menus.cpp:347
-msgid "Zoom &In\tCtrl+1"
-msgstr "Zoom &ind\tCtrl+1"
+msgid "Zoom &In"
+msgstr "Zoom &ind"
#: ../src/Menus.cpp:350
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "Zoom &normal\tCtrl+2"
+msgid "Zoom &Normal"
+msgstr "Zoom &normal"
#: ../src/Menus.cpp:351
-msgid "Zoom &Out\tCtrl+3"
-msgstr "Zoom &ud\tCtrl+3"
+msgid "Zoom &Out"
+msgstr "Zoom &ud"
#: ../src/Menus.cpp:354
-msgid "&Fit in Window\tCtrl+F"
-msgstr "&Tilpas til vinduet\tCtrl+F"
+msgid "&Fit in Window"
+msgstr "&Tilpas til vinduet"
#: ../src/Menus.cpp:355
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "Tilpas Lodret\tCtrl+Shift+F"
+msgid "Fit &Vertically"
+msgstr "Tilpas Lodret"
#: ../src/Menus.cpp:356
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "&Zoom til markering\tCtrl+E"
+msgid "&Zoom to Selection"
+msgstr "&Zoom til markering"
#: Menus.cpp:603
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
+msgid "&Collapse All Tracks"
msgstr ""
#: Menus.cpp:604
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
+msgid "E&xpand All Tracks"
msgstr ""
#: Menus.cpp:551
@@ -1814,39 +1823,39 @@ msgid "T&ransport"
msgstr ""
#: Menus.cpp:591
-msgid "Play\tSpace"
+msgid "Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
+msgid "&Loop Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Pause\tP"
+msgid "&Pause"
msgstr ""
#: Menus.cpp:596
-msgid "&Stop\tSpace"
+msgid "&Stop"
msgstr ""
#: ../src/Menus.cpp:569
-msgid "Skip to Start\tHome"
-msgstr "Hop til begyndelsen\tHome"
+msgid "Skip to Start"
+msgstr "Hop til begyndelsen"
#: ../src/Menus.cpp:570
-msgid "Skip to End\tEnd"
-msgstr "Hop til slutningen\tEnd"
+msgid "Skip to End"
+msgstr "Hop til slutningen"
#: Menus.cpp:600
-msgid "&Record\tR"
+msgid "&Record"
msgstr ""
#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
+msgid "&Timer Record..."
msgstr ""
#: Menus.cpp:604
-msgid "Append Record\tShift+R"
+msgid "Append Record"
msgstr ""
#: Menus.cpp:607
@@ -1874,7 +1883,7 @@ msgid "Add &New"
msgstr ""
#: Menus.cpp:643
-msgid "&Audio Track\tCtrl+Shift+N"
+msgid "&Audio Track"
msgstr ""
#: Menus.cpp:644
@@ -1891,7 +1900,7 @@ msgid "Mi&x and Render"
msgstr ""
#: Menus.cpp:564
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
+msgid "Mix and Render to New Track"
msgstr ""
#: Menus.cpp:662
@@ -1903,11 +1912,11 @@ msgid "Remo&ve Tracks"
msgstr "Fjern spor"
#: Menus.cpp:667
-msgid "&Mute All Tracks\tCtrl+U"
+msgid "&Mute All Tracks"
msgstr ""
#: Menus.cpp:668
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
+msgid "&UnMute All Tracks"
msgstr ""
#: ../src/Menus.cpp:405
@@ -1958,18 +1967,17 @@ msgstr ""
msgid "Synchronize MIDI with Audio"
msgstr ""
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
+#: Menus.cpp:686
+msgid "&Link Audio and Label Tracks"
msgstr ""
-#: Menus.cpp:705
-#, fuzzy
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "Tilføj etiket ved markering"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr ""
#: Menus.cpp:706
#, fuzzy
-msgid "Add Label At &Playback Position\tCtrl+M"
+msgid "Add Label At &Playback Position"
msgstr "Tilføj etiket ved markering"
#: Menus.cpp:716
@@ -1996,14 +2004,14 @@ msgstr ""
msgid "Effe&ct"
msgstr "Effe&kt"
-#: ../src/Menus.cpp:468
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "Gentag sidste effekt\tCtrl+R"
-
#: ../src/Menus.cpp:494
msgid "&Analyze"
msgstr "&Analyser"
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
+
#: Menus.cpp:692
msgid "Plot Spectrum..."
msgstr ""
@@ -2021,8 +2029,8 @@ msgstr ""
msgid "&Show Welcome Message..."
msgstr ""
-#: Menus.cpp:736
-msgid "&Index..."
+#: Menus.cpp:958
+msgid "&Help..."
msgstr ""
#: Menus.cpp:959
@@ -2041,181 +2049,149 @@ msgstr "&K
msgid "&Audio Device Info..."
msgstr ""
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
msgstr ""
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
msgstr ""
#: ../src/Menus.cpp:549
-msgid "Selection Tool\tF1"
-msgstr "Markeringsværktøj\tF1"
+msgid "Selection Tool"
+msgstr "Markeringsværktøj"
#: ../src/Menus.cpp:550
-msgid "Envelope Tool\tF2"
-msgstr "Konvoluteringsværktøj\tF2"
+msgid "Envelope Tool"
+msgstr "Konvoluteringsværktøj"
#: ../src/Menus.cpp:551
-msgid "Draw Tool\tF3"
-msgstr "Tegneværktøj\tF3"
+msgid "Draw Tool"
+msgstr "Tegneværktøj"
#: ../src/Menus.cpp:552
-msgid "Zoom Tool\tF4"
-msgstr "Zoom værktøj\tF4"
+msgid "Zoom Tool"
+msgstr "Zoom værktøj"
#: ../src/Menus.cpp:553
-msgid "Time Shift Tool\tF5"
-msgstr "Tidsforskydningsværktøj\tF5"
+msgid "Time Shift Tool"
+msgstr "Tidsforskydningsværktøj"
#: ../src/Menus.cpp:554
-msgid "Multi Tool\tF6"
-msgstr "Multi-værktøj mode\tF6"
+msgid "Multi Tool"
+msgstr "Multi-værktøj mode"
#: ../src/Menus.cpp:556
-msgid "Next Tool\tD"
-msgstr "Næste værktøj\tD"
+msgid "Next Tool"
+msgstr "Næste værktøj"
#: ../src/Menus.cpp:557
-msgid "Previous Tool\tA"
-msgstr "Foregående værktøj\tA"
+msgid "Previous Tool"
+msgstr "Foregående værktøj"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
-msgstr ""
-
-#: ../src/Menus.cpp:560
-msgid "Stop\tS"
-msgstr "Stop\tS"
-
-#: ../src/Menus.cpp:561
-msgid "Pause\tP"
-msgstr "Pause\tP"
-
-#: ../src/Menus.cpp:562
-msgid "Record\tR"
-msgstr "Indspil\tR"
-
-#: Menus.cpp:999
-msgid "Record Append\tShift+R"
+msgid "Play/Stop"
msgstr ""
#: Menus.cpp:1001
-msgid "Play/Stop and Set Cursor\tShift+A"
+msgid "Play/Stop and Set Cursor"
msgstr ""
#: ../src/Menus.cpp:564
-msgid "Play One Second\t1"
-msgstr "Spil et sekund\t1"
+msgid "Play One Second"
+msgstr "Spil et sekund"
#: ../src/Menus.cpp:565
-msgid "Play To Selection\tB"
-msgstr "Spil til markering\tB"
-
-#: ../src/Menus.cpp:566
-msgid "Play Looped\tL"
-msgstr "Afspil i loop\tL"
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
+msgid "Play To Selection"
+msgstr "Spil til markering"
#: Menus.cpp:873
-msgid "Play Cut Preview\tC"
+msgid "Play Cut Preview"
msgstr ""
#: ../src/Menus.cpp:572
-msgid "Selection to Start\tShift+Home"
-msgstr "Start markeringen ved begyndelsen\tShift+Home"
+msgid "Selection to Start"
+msgstr "Start markeringen ved begyndelsen"
#: ../src/Menus.cpp:573
-msgid "Selection to End\tShift+End"
-msgstr "Markér til slutningen\tShift+End"
+msgid "Selection to End"
+msgstr "Markér til slutningen"
#: ../src/Menus.cpp:575
-msgid "DeleteKey\tBackspace"
-msgstr "Deletetast\tTilbagepil"
+msgid "DeleteKey"
+msgstr "Deletetast"
#: ../src/Menus.cpp:580
-msgid "DeleteKey2\tDelete"
-msgstr "Slettetast2\tSlet"
+msgid "DeleteKey2"
+msgstr "Slettetast2"
-#: Menus.cpp:892
-msgid "Seek left short period during playback\tLeft"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
msgstr ""
-#: Menus.cpp:893
-msgid "Seek right short period during playback\tRight"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
msgstr ""
-#: Menus.cpp:894
-msgid "Seek left long period during playback\tShift+Left"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
msgstr ""
-#: Menus.cpp:895
-msgid "Seek right long period during playback\tShift+Right"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
msgstr ""
#: Menus.cpp:899
-msgid "Move Focus to Previous Track\tUp"
+msgid "Move Focus to Previous Track"
msgstr ""
-#: Menus.cpp:900
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
msgstr ""
#: Menus.cpp:901
-msgid "Move Focus to Next Track\tDown"
+msgid "Move Focus to Next Track"
msgstr ""
-#: Menus.cpp:902
-msgid "Move Focus to Next and Change Selection\tShift+Down"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
msgstr ""
#: Menus.cpp:903
-msgid "Toggle Focused Track\tReturn"
-msgstr ""
-
-#: Menus.cpp:904
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr ""
-
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
+msgid "Toggle Focused Track"
msgstr ""
#: ../src/Menus.cpp:585
-msgid "Cursor Left\tLeft"
-msgstr "Markør til venstre\tVenstre"
+msgid "Cursor Left"
+msgstr "Markør til venstre"
#: ../src/Menus.cpp:586
-msgid "Cursor Right\tRight"
-msgstr "Markør til højre\tHøjre"
+msgid "Cursor Right"
+msgstr "Markør til højre"
#: Menus.cpp:820
-msgid "Cursor Short Jump Left\t,"
+msgid "Cursor Short Jump Left"
msgstr ""
#: Menus.cpp:821
-msgid "Cursor Short Jump Right\t."
+msgid "Cursor Short Jump Right"
msgstr ""
#: Menus.cpp:822
-msgid "Cursor Long Jump Left\tShift+,"
+msgid "Cursor Long Jump Left"
msgstr ""
#: Menus.cpp:823
-msgid "Cursor Long Jump Right\tShift+."
+msgid "Cursor Long Jump Right"
msgstr ""
#: ../src/Menus.cpp:587
-msgid "Selection Extend Left\tShift+Left"
-msgstr "Udvid markering mod venstre\tShift+venstrepil"
+msgid "Selection Extend Left"
+msgstr "Udvid markering mod venstre"
#: ../src/Menus.cpp:588
-msgid "Selection Extend Right\tShift+Right"
-msgstr "Udvid markering mod højre\tShift+højrepil"
+msgid "Selection Extend Right"
+msgstr "Udvid markering mod højre"
#: Menus.cpp:828
msgid "Set (or Extend) Left Selection"
@@ -2226,51 +2202,51 @@ msgid "Set (or Extend) Right Selection"
msgstr ""
#: ../src/Menus.cpp:589
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "Formindsk markering fra venstre\tCtrl+Shift+højrepil"
+msgid "Selection Contract Left"
+msgstr "Formindsk markering fra venstre"
#: ../src/Menus.cpp:590
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "Formindsk markering fra højre\tCtrl+Shift+venstrepil"
+msgid "Selection Contract Right"
+msgstr "Formindsk markering fra højre"
#: Menus.cpp:916
-msgid "Change pan on focused track\tShift+P"
+msgid "Change pan on focused track"
msgstr ""
#: Menus.cpp:917
-msgid "Pan left on focused track\tAlt+Shift+Left"
+msgid "Pan left on focused track"
msgstr ""
#: Menus.cpp:918
-msgid "Pan right on focused track\tAlt+Shift+Right"
+msgid "Pan right on focused track"
msgstr ""
#: Menus.cpp:919
-msgid "Change gain on focused track\tShift+G"
+msgid "Change gain on focused track"
msgstr ""
#: Menus.cpp:920
-msgid "Increase gain on focused track\tAlt+Shift+Up"
+msgid "Increase gain on focused track"
msgstr ""
#: Menus.cpp:921
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
+msgid "Decrease gain on focused track"
msgstr ""
#: Menus.cpp:922
-msgid "Open menu on focused track\tShift+M"
+msgid "Open menu on focused track"
msgstr ""
#: Menus.cpp:923
-msgid "Mute/Unmute focused track\tShift+U"
+msgid "Mute/Unmute focused track"
msgstr ""
#: Menus.cpp:924
-msgid "Solo/Unsolo focused track\tShift+S"
+msgid "Solo/Unsolo focused track"
msgstr ""
#: Menus.cpp:925
-msgid "Close focused track\tShift+C"
+msgid "Close focused track"
msgstr ""
#: Menus.cpp:845
@@ -2282,7 +2258,35 @@ msgid "Snap To Off"
msgstr ""
#: Menus.cpp:1071
-msgid "Full screen on/off\tF11"
+msgid "Full screen on/off"
+msgstr ""
+
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr ""
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr ""
+
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr ""
+
+#: Menus.cpp:1074
+msgid "Adjust input source"
msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
@@ -2343,8 +2347,8 @@ msgstr "Du skal v
#: ../src/Menus.cpp:1248
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "Gentag %s\tCtrl+R"
+msgid "Repeat %s"
+msgstr "Gentag %s"
#: ../src/Menus.cpp:1352
msgid "There are no label tracks to export."
@@ -2552,15 +2556,6 @@ msgstr ""
msgid "Split at labels"
msgstr "Opdel ved etiketter"
-#: ../src/Menus.cpp:2369
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "For at lave et spektrumplot skal alle markerede spor have samme samplerate."
-
-#: ../src/Menus.cpp:2395
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "Der er markeret for meget lyd. Kun de første %.1f sekunders lyd vil blive analyseret."
-
#: ../src/Menus.cpp:2660
#, c-format
msgid "Imported labels from '%s'"
@@ -2784,6 +2779,10 @@ msgstr ""
msgid "Print"
msgstr "højre"
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr ""
+
#: Project.cpp:573
msgid "Main Mix"
msgstr ""
@@ -2797,10 +2796,9 @@ msgstr ""
msgid "(Recovered)"
msgstr ""
-#: ../src/ControlToolBar.cpp:469 ../src/Project.cpp:1707
-#: ../src/TrackPanel.cpp:1208
+#: ../src/Menus.cpp:562
msgid "Record"
-msgstr "Optag"
+msgstr "Indspil"
#: ../src/Project.cpp:1707 ../src/TrackPanel.cpp:1208
msgid "Recorded Audio"
@@ -2823,8 +2821,8 @@ msgstr ""
msgid "Save changes?"
msgstr "Gem ændringer?"
-#: Project.cpp:1684
-msgid "All files|*.*|All supported files|"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
msgstr ""
#: ../src/Menus.cpp:2595 ../src/Project.cpp:1738
@@ -2854,6 +2852,17 @@ msgstr ""
msgid "Opening old project file"
msgstr ""
+#: Project.cpp:2073
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr ""
+
#: ../src/Project.cpp:1821 ../src/Project.cpp:1829
msgid "Error opening file"
msgstr "Fejl ved åbning af fil"
@@ -2909,10 +2918,12 @@ msgstr ""
msgid "Can't open project file"
msgstr "Kan ikke åbne projektfilen"
-#: Project.cpp:2314
+#: Project.cpp:2484
#, c-format
msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
msgstr ""
@@ -2932,16 +2943,22 @@ msgstr ""
msgid "Warning empty project"
msgstr ""
-#: Project.cpp:2591
+#: Project.cpp:2792
#, c-format
msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+"is not writable or the disk is full."
msgstr ""
#: ../src/Project.cpp:2148 ../src/Project.cpp:2160
msgid "Error saving project"
msgstr "Fejl under projekt-gemning"
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
#: ../src/Project.cpp:2200
#, c-format
msgid "Saved %s"
@@ -3100,6 +3117,174 @@ msgstr ""
msgid "32-bit float"
msgstr ""
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
+
+# The Black Angel's Death Song:
+# Gone to choose, choose again
+# Sacrificials remains make it hard to forget
+# Where you come from
+# ...
+# Come again, choose to go
+# And if Epiphany's terror reduced you to shame
+# Have your head bobbed and weaved
+# Choose a side to be on
+#: ../src/export/ExportMultiple.cpp:600 ../src/prefs/DirectoriesPrefs.cpp:82
+msgid "Choose..."
+msgstr "Vælg..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
+
+#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
+msgid "false"
+msgstr ""
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:82
+msgid "Control"
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:58
+msgid "Mixer"
+msgstr ""
+
+#: toolbars/MeterToolBar.cpp:49
+msgid "Meter"
+msgstr ""
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
+#: toolbars/DeviceToolBar.cpp:54
+msgid "Device"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:81
+msgid "Transcription"
+msgstr ""
+
+#: TrackPanel.cpp:452 TrackPanel.cpp:453
+msgid "Track Panel"
+msgstr ""
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+# Notes? Cool.
+#: ../src/export/ExportMultiple.cpp:636
+#, fuzzy
+msgid "Tracks"
+msgstr "Nyt spor"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
#: Screenshot.cpp:384
msgid "Saved "
msgstr ""
@@ -3108,6 +3293,10 @@ msgstr ""
msgid "Error trying to save file: "
msgstr ""
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
#: Sequence.cpp:732 Sequence.cpp:742 Sequence.cpp:749
msgid "Gap detected in project file\n"
msgstr ""
@@ -3246,6 +3435,10 @@ msgstr ""
msgid "Save Metadata As:"
msgstr ""
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
#: Theme.cpp:629
#, c-format
msgid "Audacity could not write file:\n"
@@ -3318,6 +3511,14 @@ msgstr ""
msgid "Audacity Timer Record"
msgstr ""
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
#: SmartRecordDialog.cpp:223
msgid "Recording start"
msgstr ""
@@ -3357,10 +3558,6 @@ msgstr ""
msgid "Audacity Timer Record - Waiting for Start"
msgstr ""
-#: TrackPanel.cpp:452 TrackPanel.cpp:453
-msgid "Track Panel"
-msgstr ""
-
#: ../src/AStatus.cpp:81 ../src/TrackPanel.cpp:822
#: ../src/prefs/FileFormatPrefs.cpp:105 ../src/prefs/QualityPrefs.cpp:91
msgid "Other..."
@@ -3417,6 +3614,10 @@ msgstr "Lav stereospor"
msgid "Split Stereo Track"
msgstr "Opdel stereospor"
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr ""
+
#: ../src/TrackPanel.cpp:846
msgid "Set Sample Format"
msgstr "Vælg optageformat"
@@ -3624,14 +3825,6 @@ msgstr ""
msgid "Adjusted gain"
msgstr ""
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr ""
-
#: TrackPanel.cpp:5428
msgid "Can't delete track with active audio"
msgstr ""
@@ -3666,6 +3859,11 @@ msgstr "Kanal"
msgid "Split stereo track '%s'"
msgstr "Opdel stereospor '%s'"
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
#: ../src/TrackPanel.cpp:4153
#, c-format
msgid "Made '%s' a stereo track"
@@ -3744,6 +3942,10 @@ msgstr ""
msgid "Face size"
msgstr ""
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr ""
+
# Skal vel ikke oversættes.
#: ../src/TrackPanel.cpp:4701
msgid "Mute"
@@ -3823,8 +4025,9 @@ msgstr "Udvidelser 1 til %i"
msgid "Plugins %i to %i"
msgstr "Udvidelser %i til %i"
-#: commands/CommandManager.cpp:857
-msgid "Disallowed for some reason. Try selecting some audio first?"
+#: commands/CommandManager.cpp:923
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
msgstr ""
#: commands/CommandManager.cpp:724
@@ -4282,12 +4485,11 @@ msgstr ""
msgid "Decay Time"
msgstr ""
-#: effects/Compressor.cpp:504
-msgid "Normalize to 0dB after compressing"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
msgstr ""
#: effects/Compressor.cpp:563
-#, c-format
#, fuzzy
msgid "Threshold %d dB"
msgstr "Tærskel: %d dB"
@@ -4318,7 +4520,6 @@ msgid "%.1f:1"
msgstr ""
#: effects/Compressor.cpp:575
-#, c-format
#, fuzzy
msgid "Attack Time %.1f secs"
msgstr "Attack tid: %f sek"
@@ -4341,6 +4542,10 @@ msgstr "Komprimering..."
msgid "Applying Dynamic Range Compression..."
msgstr "Brug Dynamikkomprimering"
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
msgstr ""
@@ -4360,19 +4565,6 @@ msgid "Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr ""
-
#: effects/Contrast.cpp:231
msgid "Contrast Analyzer"
msgstr ""
@@ -4406,6 +4598,11 @@ msgstr ""
msgid "Foreground end time"
msgstr ""
+#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
+#: effects/Contrast.cpp:289
+msgid "Measured"
+msgstr ""
+
#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
msgid "Use selection"
msgstr ""
@@ -4450,16 +4647,8 @@ msgstr ""
msgid "Help for WCAG2 Audio Contrast Analyzer"
msgstr ""
-#: toolbars/ControlToolBar.cpp:82
-msgid "Control"
-msgstr ""
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
msgstr ""
#: effects/Contrast.cpp:328 effects/Contrast.cpp:336 effects/Contrast.cpp:344
@@ -4570,18 +4759,6 @@ msgstr ""
msgid "Data gathered"
msgstr ""
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr ""
-
#: effects/DtmfGen.cpp:47
msgid "DTMF Tone Generator"
msgstr ""
@@ -4706,6 +4883,10 @@ msgstr ""
msgid "custom"
msgstr ""
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr ""
+
#: effects/Equalization.cpp:971
msgid "Equalization, by Martyn Shaw && Mitch Golden"
msgstr ""
@@ -4906,10 +5087,6 @@ msgstr ""
msgid "Analyser"
msgstr ""
-#: toolbars/MixerToolBar.cpp:58
-msgid "Mixer"
-msgstr ""
-
#: effects/LoadEffects.cpp:116
msgid "Simulator"
msgstr ""
@@ -5146,10 +5323,6 @@ msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr ""
#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
-msgid "false"
-msgstr ""
-
-#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
msgid "true"
msgstr ""
@@ -5500,20 +5673,37 @@ msgstr ""
msgid "Truncate Silence"
msgstr ""
-#: effects/TruncSilence.cpp:346
-msgid "Max silence duration:"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr ""
+
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
msgstr ""
#: prefs/AudioIOPrefs.cpp:175 prefs/AudioIOPrefs.cpp:178
msgid "milliseconds"
msgstr ""
+#: effects/TruncSilence.cpp:346
+msgid "Max silence duration:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ""
+
#: effects/TruncSilence.cpp:351
msgid "Threshold for silence:"
msgstr ""
-#: effects/TruncSilence.cpp:375
-msgid " Duration must be at least 1 millisecond"
+#: effects/TruncSilence.cpp:506
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
msgstr ""
#: BatchCommands.cpp:236 effects/TruncSilence.cpp:84 effects/TruncSilence.h:29
@@ -5524,17 +5714,57 @@ msgstr ""
msgid "Truncating Silence..."
msgstr ""
-#: ../src/effects/VST/VSTEffect.cpp:180
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "Beklager, VST effekter kan ikke bruges på stereospor, hvor de enkelte kanaler fra sporet ikke passer sammen."
+#: ../src/effects/ladspa/LadspaEffect.cpp:452
+msgid "Effect Settings"
+msgstr "Effektindstillinger"
-#: ../src/effects/VST/VSTEffect.cpp:196
-msgid "Can't process replacing"
-msgstr "Kan ikke udføre erstatning"
+# Could also be 'Intet', depending on context. Danish has four genders.
+#: ../src/effects/ladspa/LadspaEffect.cpp:435
+#: ../src/effects/ladspa/LadspaEffect.cpp:443
+#: ../src/prefs/QualityPrefs.cpp:160
+msgid "None"
+msgstr "Ingen"
+
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
-#: ../src/effects/VST/VSTEffect.cpp:410
-msgid "VST Plug-in parameters:"
-msgstr "VST plug-in parametre"
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr ""
#: ../src/effects/Wahwah.cpp:41
#, c-format
@@ -5582,21 +5812,10 @@ msgstr "Anvender effekt: %s"
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr ""
-# Could also be 'Intet', depending on context. Danish has four genders.
-#: ../src/effects/ladspa/LadspaEffect.cpp:435
-#: ../src/effects/ladspa/LadspaEffect.cpp:443
-#: ../src/prefs/QualityPrefs.cpp:160
-msgid "None"
-msgstr "Ingen"
-
#: ../src/effects/ladspa/LadspaEffect.cpp:437
msgid "Author: "
msgstr "Forfatter:"
-#: ../src/effects/ladspa/LadspaEffect.cpp:452
-msgid "Effect Settings"
-msgstr "Effektindstillinger"
-
#: ../src/effects/Silence.cpp:127 ../src/effects/ToneGen.cpp:306
#, fuzzy
msgid "Length (seconds)"
@@ -5791,9 +6010,21 @@ msgstr "Eksporterer hele projektet med kommando-linje koder"
msgid "Command Output"
msgstr ""
-#: export/ExportFFmpeg.cpp:59
+#: export/ExportFFmpeg.cpp:61
msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
#: export/ExportFFmpeg.cpp:394
@@ -5861,6 +6092,10 @@ msgstr ""
msgid "AAC Export Setup"
msgstr ""
+#: export/ExportOGG.cpp:86
+msgid "Quality:"
+msgstr ""
+
#: export/ExportFFmpegDialogs.cpp:217
msgid "Specify AMR-NB Options"
msgstr ""
@@ -5994,12 +6229,8 @@ msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n
"Recommended - 192000"
msgstr ""
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr ""
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid "Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
@@ -6018,10 +6249,10 @@ msgstr ""
msgid "Cutoff Bandwidth:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:947
+#: export/ExportFFmpegDialogs.cpp:936
msgid "Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:949
@@ -6210,12 +6441,12 @@ msgstr ""
msgid "AC3 Files (FFmpeg)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:56
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:57
@@ -6326,6 +6557,17 @@ msgstr ""
msgid "FLAC Files"
msgstr ""
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
#: export/ExportFLAC.cpp:93
msgid "Exporting the selected audio as FLAC"
msgstr ""
@@ -6581,19 +6823,6 @@ msgstr ""
msgid "Export location:"
msgstr "Placering:"
-# The Black Angel's Death Song:
-# Gone to choose, choose again
-# Sacrificials remains make it hard to forget
-# Where you come from
-# ...
-# Come again, choose to go
-# And if Epiphany's terror reduced you to shame
-# Have your head bobbed and weaved
-# Choose a side to be on
-#: ../src/export/ExportMultiple.cpp:600 ../src/prefs/DirectoriesPrefs.cpp:82
-msgid "Choose..."
-msgstr "Vælg..."
-
#: export/ExportMultiple.cpp:205
msgid "Create"
msgstr ""
@@ -6619,12 +6848,6 @@ msgstr ""
msgid "First file name"
msgstr ""
-# Notes? Cool.
-#: ../src/export/ExportMultiple.cpp:636
-#, fuzzy
-msgid "Tracks"
-msgstr "Nyt spor"
-
#: ../src/export/ExportMultiple.cpp:646
#, fuzzy
msgid "Name files:"
@@ -6661,25 +6884,44 @@ msgstr ""
msgid "Choose a location to save the exported files"
msgstr "Vælg en placering for den midlertidige mappe"
-#: export/ExportMultiple.cpp:480
+#: export/ExportMultiple.cpp:524
#, c-format
-msgid "\"%s\" doesn't exist.\n"
-"\n"
-"Would you like to create it?"
+msgid "Successfully exported the following %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:637 export/ExportMultiple.cpp:772
-msgid "Edit metadata"
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:590
+#: export/ExportMultiple.cpp:526
#, c-format
-msgid "Successfully exported %d file(s)."
+msgid "Export canceled after exporting the following %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:597
+#: export/ExportMultiple.cpp:527
#, c-format
-msgid "Something went wrong after exporting %d file(s)."
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr ""
+
+#: export/ExportMultiple.cpp:480
+#, c-format
+msgid "\"%s\" doesn't exist.\n"
+"\n"
+"Would you like to create it?"
+msgstr ""
+
+#: export/ExportMultiple.cpp:637 export/ExportMultiple.cpp:772
+msgid "Edit metadata"
msgstr ""
#: export/ExportMultiple.cpp:881
@@ -6763,7 +7005,6 @@ msgstr ""
#. i18n-hint: %s will be the error message from libsndfile
#: export/ExportPCM.cpp:436
-#, c-format
#, fuzzy
msgid "Error (file may not have been written): %s"
msgstr "Fejl (filen er muligvis ikke skrevet): %s"
@@ -6929,6 +7170,10 @@ msgstr ""
msgid "FLAC files"
msgstr ""
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr ""
+
#: ../src/import/ImportLOF.cpp:151 ../src/import/ImportLOF.cpp:177
msgid "List of Files in basic text format"
msgstr "Liste over filer i rent tekstformat"
@@ -7089,128 +7334,58 @@ msgstr ""
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr ""
-#: ../src/prefs/PrefsDialog.cpp:84
-msgid "Audio I/O"
-msgstr "Lyd I/O"
-
-#: ../src/prefs/AudioIOPrefs.cpp:212
-msgid "1 (Mono)"
-msgstr "1 (Mono)"
-
-#: ../src/prefs/AudioIOPrefs.cpp:213
-msgid "2 (Stereo)"
-msgstr "2 (Stereo)"
-
-#: ../src/prefs/AudioIOPrefs.cpp:80
-msgid "Playback"
-msgstr "Afspilning"
-
-#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
-#: toolbars/DeviceToolBar.cpp:54
-msgid "Device"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:122
-msgid "Using:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:123
-msgid "Portaudio v"
-msgstr ""
-
-#: ../src/prefs/AudioIOPrefs.cpp:148
-msgid "Recording"
-msgstr "Indspilning"
-
-#: prefs/AudioIOPrefs.cpp:139
-msgid "Channels"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:145
-msgid "Playthrough"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:194
-msgid "Effects Preview"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:165
-msgid "Length of preview:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:158
-msgid "Cut Preview"
+#: prefs/BatchPrefs.cpp:53 prefs/BatchPrefs.cpp:54
+msgid "Batch"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:173
-msgid "Preview before cut region:"
+#: prefs/BatchPrefs.cpp:75 prefs/GUIPrefs.cpp:70
+msgid "Behaviors"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:175
-msgid "Preview after cut region:"
+#: prefs/BatchPrefs.cpp:80
+msgid "&Don't apply effects in batch mode"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:168
-msgid "Latency"
+#: prefs/BatchPrefs.cpp:83
+msgid "Cl&eanSpeech Mode (Customized GUI)"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:195
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:198
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr ""
+# This really depends on context.
+#: ../src/prefs/PrefsDialog.cpp:89
+msgid "Interface"
+msgstr "Grænseflade"
-#: prefs/AudioIOPrefs.cpp:197
-msgid "Seek Time when playing"
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:187
-msgid "Short period:"
+#: prefs/AudioIOPrefs.cpp:122
+msgid "Using:"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:189
-msgid "Long period:"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:80
+msgid "Playback"
+msgstr "Afspilning"
-#: prefs/BatchPrefs.cpp:53 prefs/BatchPrefs.cpp:54
-msgid "Batch"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:148
+msgid "Recording"
+msgstr "Indspilning"
-#: prefs/BatchPrefs.cpp:75 prefs/GUIPrefs.cpp:70
-msgid "Behaviors"
+#: prefs/AudioIOPrefs.cpp:139
+msgid "Channels"
msgstr ""
-#: prefs/BatchPrefs.cpp:80
-msgid "&Don't apply effects in batch mode"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:212
+msgid "1 (Mono)"
+msgstr "1 (Mono)"
-#: prefs/BatchPrefs.cpp:83
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:213
+msgid "2 (Stereo)"
+msgstr "2 (Stereo)"
#: ../src/prefs/PrefsDialog.cpp:88 ../src/prefs/PrefsDialog.cpp:216
msgid "Directories"
@@ -7228,34 +7403,31 @@ msgstr "Placering:"
msgid "Free Space:"
msgstr "Ledig plads:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr ""
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr ""
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
+#: prefs/DirectoriesPrefs.cpp:110
+msgid "Audio cache"
msgstr ""
#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
+msgid "Play and/or record using RAM (useful for slow drives)"
msgstr ""
-#: prefs/DirectoriesPrefs.cpp:110
-msgid "Audio cache"
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
msgstr ""
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
#: ../src/prefs/DirectoriesPrefs.cpp:135
msgid "Choose a location to place the temporary directory"
msgstr "Vælg en placering for den midlertidige mappe"
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: ../src/prefs/DirectoriesPrefs.cpp:181
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -7274,221 +7446,141 @@ msgstr "Kan ikke skrive til mappen %s"
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "Ændringen af den midlertidige mappe træder først i kraft, når Audacity starter næste gang."
-#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
-msgid "Import / Export"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:84
-msgid "MP3 Export Library"
-msgstr ""
-
-#: ../src/prefs/FileFormatPrefs.cpp:180
-msgid "MP3 Library Version:"
-msgstr "Udgave af mp3-bibliotek:"
-
-#: prefs/FileFormatPrefs.cpp:93
-msgid "MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:98
-msgid "LAME MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
-msgid "&Download"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:136
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:137
-msgid "When importing audio files"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:140
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:141
-msgid "&Read uncompressed audio files directly from the original (faster)"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:143
-msgid "&Normalize all tracks in project"
+#: prefs/GUIPrefs.cpp:42
+msgid "In Browser"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:132
-msgid "When saving a project that depends on other audio files"
+#: prefs/GUIPrefs.cpp:43
+msgid "From Internet"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:87
-msgid "Always © all audio into project (safest)"
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:88
-msgid "&Do not copy any audio"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:135
-msgid "&Ask user"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:93
-msgid "When exporting tracks to an audio file"
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:144
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:97
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
msgstr ""
-#: prefs/BatchPrefs.cpp:91
-msgid "S&how Metadata Editor prior to export step"
-msgstr ""
-
-# This really depends on context.
-#: ../src/prefs/PrefsDialog.cpp:89
-msgid "Interface"
-msgstr "Grænseflade"
+#: ../src/prefs/GUIPrefs.cpp:150
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 dB (smalt område for redigering af høj styrke)"
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:157
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 dB (PCM område for 8 bit datapunkter)"
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
+#: prefs/GUIPrefs.cpp:143
+msgid "-60 dB (PCM range of 10 bit samples)"
msgstr ""
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:164
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 dB (PCM område for 16 bit datapunkter)"
-#: prefs/GUIPrefs.cpp:72
-msgid "&Update display while playing"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:171
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 dB (ørets maksimale dynamik)"
-#: prefs/GUIPrefs.cpp:96
-msgid "Cl&osing last window quits Audacity"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:178
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB (PCM område for 24 bit datapunkter)"
-#: prefs/GUIPrefs.cpp:76
-msgid "Enable &dragging of left and right selection edges"
+#: prefs/SpectrumPrefs.cpp:96
+msgid "Display"
msgstr ""
#: prefs/GUIPrefs.cpp:100
msgid "Er&gonomic order of audio I/O buttons"
msgstr ""
-#: prefs/GUIPrefs.cpp:80
-msgid "Automatically &fit tracks vertically zoomed"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
msgstr ""
-#: prefs/GUIPrefs.cpp:104
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
msgstr ""
-#: prefs/GUIPrefs.cpp:90
-msgid "Editing a &clip can move other clips"
+#: prefs/GUIPrefs.cpp:167
+msgid "Help:"
msgstr ""
-#: prefs/GUIPrefs.cpp:88
-msgid "&Select all audio in project, if none selected"
+#: prefs/GUIPrefs.cpp:96
+msgid "Cl&osing last window quits Audacity"
msgstr ""
#: prefs/GUIPrefs.cpp:90
msgid "&Beep on completion of longer activities"
msgstr ""
-#: prefs/BatchPrefs.cpp:87 prefs/GUIPrefs.cpp:94
-msgid "Show / Hide"
+#: prefs/GUIPrefs.cpp:126
+msgid "Modes"
msgstr ""
-#: prefs/GUIPrefs.cpp:96
-msgid "Enable cut &lines"
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:98
-msgid "Show warnings about &temp files"
+#: prefs/GUIPrefs.cpp:129
+msgid "Don't a&pply effects in batch mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
+#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
+msgid "Import / Export"
msgstr ""
-#: prefs/GUIPrefs.cpp:122
-msgid "Show &Welcome Message at program start up"
+#: prefs/FileFormatPrefs.cpp:137
+msgid "When importing audio files"
msgstr ""
-#: prefs/GUIPrefs.cpp:126
-msgid "Modes"
+#: prefs/FileFormatPrefs.cpp:140
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
msgstr ""
-#: prefs/GUIPrefs.cpp:129
-msgid "Don't a&pply effects in batch mode"
+#: prefs/FileFormatPrefs.cpp:141
+msgid "&Read uncompressed audio files directly from the original (faster)"
msgstr ""
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
+#: prefs/FileFormatPrefs.cpp:143
+msgid "&Normalize all tracks in project"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:150
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 dB (smalt område for redigering af høj styrke)"
-
-#: ../src/prefs/GUIPrefs.cpp:157
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 dB (PCM område for 8 bit datapunkter)"
-
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
+#: prefs/FileFormatPrefs.cpp:93
+msgid "When exporting tracks to an audio file"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:164
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 dB (PCM område for 16 bit datapunkter)"
-
-#: ../src/prefs/GUIPrefs.cpp:171
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 dB (ørets maksimale dynamik)"
-
-#: ../src/prefs/GUIPrefs.cpp:178
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB (PCM område for 24 bit datapunkter)"
-
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
+#: prefs/FileFormatPrefs.cpp:144
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
msgstr ""
-#: prefs/GUIPrefs.cpp:164
-msgid "Other interface choices"
+#: prefs/FileFormatPrefs.cpp:97
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
msgstr ""
-#: prefs/GUIPrefs.cpp:167
-msgid "Help:"
+#: prefs/BatchPrefs.cpp:91
+msgid "S&how Metadata Editor prior to export step"
msgstr ""
-#: prefs/GUIPrefs.cpp:168
-msgid "Solo Button:"
+#: prefs/ImportExportPrefs.cpp:84
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
msgstr ""
# If MIDI keyboard, substitute 'Keyboard' in the translation.
@@ -7520,17 +7612,22 @@ msgstr "Bem
msgid "&Defaults"
msgstr ""
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr ""
+
#: ../src/prefs/KeyConfigPrefs.cpp:79
msgid "Key Combination"
msgstr "Tastkombination"
-#: ../src/prefs/KeyConfigPrefs.cpp:159
-msgid "Export Keyboard Shortcuts As:"
-msgstr "Gem tastaturgenveje som:"
+#: ../src/EditToolBar.cpp:159
+msgid "Undo"
+msgstr "Fortryd"
-#: ../src/prefs/KeyConfigPrefs.cpp:174
-msgid "Error saving keyboard shortcuts"
-msgstr "Fejl ved skrivning af tastaturgenveje"
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr ""
#: ../src/prefs/KeyConfigPrefs.cpp:188
msgid "Select an XML file containing Audacity keyboard shortcuts..."
@@ -7540,6 +7637,14 @@ msgstr "V
msgid "Error loading keyboard shortcuts"
msgstr "Fejl ved indlæsning af tastaturgenveje"
+#: ../src/prefs/KeyConfigPrefs.cpp:159
+msgid "Export Keyboard Shortcuts As:"
+msgstr "Gem tastaturgenveje som:"
+
+#: ../src/prefs/KeyConfigPrefs.cpp:174
+msgid "Error saving keyboard shortcuts"
+msgstr "Fejl ved skrivning af tastaturgenveje"
+
#: prefs/KeyConfigPrefs.cpp:239
#, c-format
msgid "The keyboard shortcut '%s' is already assigned to:\n"
@@ -7547,9 +7652,61 @@ msgid "The keyboard shortcut '%s' is already assigned to:\n"
"'%s'"
msgstr ""
-#: ../src/EditToolBar.cpp:159
-msgid "Undo"
-msgstr "Fortryd"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:84
+msgid "MP3 Export Library"
+msgstr ""
+
+#: ../src/prefs/FileFormatPrefs.cpp:180
+msgid "MP3 Library Version:"
+msgstr "Udgave af mp3-bibliotek:"
+
+#: prefs/FileFormatPrefs.cpp:93
+msgid "MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:98
+msgid "LAME MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
+msgid "&Download"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:109
+msgid "FFmpeg Library Version:"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
+msgid "FFmpeg Library:"
+msgstr ""
+
+#: ../src/prefs/PrefsDialog.cpp:84
+msgid "Audio I/O"
+msgstr "Lyd I/O"
+
+#: prefs/AudioIOPrefs.cpp:123
+msgid "Portaudio v"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:145
+msgid "Playthrough"
+msgstr ""
#: prefs/AudioIOPrefs.cpp:147
#, fuzzy
@@ -7564,6 +7721,10 @@ msgstr ""
msgid "&Software Playthrough (Play new track while recording it)"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:158
+msgid "Cut Preview"
+msgstr ""
+
#: prefs/MidiIOPrefs.cpp:160
msgid "Play before cut region:"
msgstr ""
@@ -7572,6 +7733,10 @@ msgstr ""
msgid "Play after cut region:"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:168
+msgid "Latency"
+msgstr ""
+
#: prefs/AudioIOPrefs.cpp:174
msgid "Audio to buffer:"
msgstr ""
@@ -7584,6 +7749,18 @@ msgstr ""
msgid "Seek Time"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:187
+msgid "Short period:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:189
+msgid "Long period:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:194
+msgid "Effects Preview"
+msgstr ""
+
#: prefs/MidiIOPrefs.cpp:196
msgid "Play when previewing:"
msgstr ""
@@ -7799,10 +7976,62 @@ msgstr "Ctrl-musehjul"
msgid "Zoom in or out"
msgstr "Zoom ind eller ud"
+#: prefs/AudioIOPrefs.cpp:165
+msgid "Length of preview:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:173
+msgid "Preview before cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:175
+msgid "Preview after cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:197
+msgid "Seek Time when playing"
+msgstr ""
+
#: ../src/prefs/PrefsDialog.cpp:52
msgid "Audacity Preferences"
msgstr "Audacity indstillinger"
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:132
+msgid "When saving a project that depends on other audio files"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:87
+msgid "Always © all audio into project (safest)"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:88
+msgid "&Do not copy any audio"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:135
+msgid "&Ask user"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr ""
+
#: ../src/prefs/QualityPrefs.cpp:161
msgid "Rectangle"
msgstr "Rektangel"
@@ -7827,44 +8056,44 @@ msgstr "Standard optagerate:"
msgid "Default Sample Format:"
msgstr "Standard optageformat:"
-#: ../src/prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "Real-time konvertering af samplingfrekvens:"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:147
-msgid "High-quality sample rate converter:"
-msgstr "Højkvalitet samplefrekvens konvertering"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+msgid "Sample Rate Converter:"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:171
-msgid "Real-time dither:"
-msgstr "Real-time dither:"
+#: prefs/QualityPrefs.cpp:164
+msgid "Dither"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:186
-msgid "High-quality dither:"
-msgstr "Højkvalitet dither"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
+#: prefs/AudioIOPrefs.cpp:149
+msgid "Overdub: &Play other tracks while recording new one"
msgstr ""
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
+#: prefs/AudioIOPrefs.cpp:150
+msgid "&Hardware Playthrough: Play new track while recording it"
msgstr ""
-#: prefs/QualityPrefs.cpp:164
-msgid "Dither"
+#: prefs/AudioIOPrefs.cpp:157
+msgid "&Software Playthrough: Play new track while recording or monitoring"
msgstr ""
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
+#: prefs/AudioIOPrefs.cpp:160
+msgid "(uncheck when recording \"stereo mix\")"
msgstr ""
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
msgstr ""
-#: prefs/SmartRecordPrefs.cpp:54 prefs/SmartRecordPrefs.cpp:55
-msgid "Smart Recording"
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
msgstr ""
#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
@@ -7879,18 +8108,54 @@ msgstr ""
msgid "Spectrograms"
msgstr "Spektogrammer"
-#: ../src/prefs/SpectrumPrefs.cpp:70
-msgid "FFT Size"
-msgstr "FFT størrelse"
-
#: prefs/SpectrumPrefs.cpp:75
msgid "8 - most wideband"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
#: ../src/prefs/SpectrumPrefs.cpp:40
msgid "256 - default"
msgstr "256 - standard"
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:107
msgid "32768 - most narrowband"
msgstr ""
@@ -7899,20 +8164,24 @@ msgstr ""
msgid "4096 - most narrowband"
msgstr "4096 - mindst båndbredde"
-#: prefs/SpectrumPrefs.cpp:90
-msgid "Window type:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:125
-msgid "FFT Skip Points"
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:96
-msgid "Display"
+#: prefs/SpectrumPrefs.cpp:93
+msgid "Window type"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:125
+msgid "FFT Skip Points"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:100
-msgid "&Grayscale"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
msgstr ""
#: prefs/SpectrumPrefs.cpp:103
@@ -7923,16 +8192,16 @@ msgstr ""
msgid "Maximum Frequency (Hz):"
msgstr "Maksimal frekvens (Hz):"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
msgstr ""
#: prefs/SpectrumPrefs.cpp:165
@@ -7943,6 +8212,14 @@ msgstr ""
msgid "Max. Number of Notes (1..128):"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:161
+msgid "&Find Notes"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Quantize Notes"
+msgstr ""
+
#: ../src/prefs/SpectrumPrefs.cpp:148
msgid "The maximum frequency must be an integer"
msgstr "Maksimumfrekvensen skal være et heltal"
@@ -7959,18 +8236,57 @@ msgstr ""
msgid "Minimum frequency must be at least 0 Hz"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:226 prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
+#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:230
+msgid "The maximum number of notes must be in the range 1..128"
msgstr ""
#: prefs/ThemePrefs.cpp:61 prefs/ThemePrefs.cpp:62
msgid "Theme"
msgstr ""
+#: prefs/ThemePrefs.cpp:123
+msgid "Info"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:91
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#: prefs/ThemePrefs.cpp:90
msgid "Theme Cache - Images && Color"
msgstr ""
@@ -7999,78 +8315,94 @@ msgstr ""
msgid "Load Files"
msgstr ""
-#: prefs/ThemePrefs.cpp:123
-msgid "Info"
+#: prefs/GUIPrefs.cpp:50
+msgid "Simple"
msgstr ""
-#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
+#: prefs/GUIPrefs.cpp:72
+msgid "&Update display while playing"
msgstr ""
-#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
+#: prefs/GUIPrefs.cpp:80
+msgid "Automatically &fit tracks vertically zoomed"
msgstr ""
-#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
+#: prefs/TracksPrefs.cpp:88
+msgid "Default View Mode:"
msgstr ""
-#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:88
+msgid "&Select all audio in project, if none selected"
msgstr ""
-#: ../src/ControlToolBar.cpp:470
-msgid "Pause"
-msgstr "Pause"
+#: prefs/GUIPrefs.cpp:96
+msgid "Enable cut &lines"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play"
+#: prefs/GUIPrefs.cpp:76
+msgid "Enable &dragging of left and right selection edges"
msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
+#: prefs/GUIPrefs.cpp:104
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
msgstr ""
-#: ../src/ControlToolBar.cpp:471
-msgid "Stop"
-msgstr "Stop"
+#: prefs/GUIPrefs.cpp:90
+msgid "Editing a &clip can move other clips"
+msgstr ""
-#: ../src/ControlToolBar.cpp:467
-msgid "Skip to Start"
-msgstr "Hop til begyndelsen"
+#: prefs/GUIPrefs.cpp:168
+msgid "Solo Button:"
+msgstr ""
-#: ../src/ControlToolBar.cpp:472
-msgid "Skip to End"
-msgstr "Hop til slutningen"
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:192
-msgid "Record (Shift for Append Record)"
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
msgstr ""
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr ""
+
+#: ../src/Menus.cpp:561
+msgid "Pause"
+msgstr "Pause"
+
+#: ../src/Menus.cpp:560
+msgid "Stop"
+msgstr "Stop"
+
#: toolbars/ControlToolBar.cpp:195
msgid "Clean Speech"
msgstr ""
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play (Shift for Loop Play)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:192
+msgid "Record (Shift for Append Record)"
+msgstr ""
+
#: toolbars/ControlToolBar.cpp:524 toolbars/ControlToolBar.cpp:776
msgid "Error while opening sound device. "
msgstr ""
@@ -8111,28 +8443,20 @@ msgstr "Zoom ind"
msgid "Zoom Out"
msgstr "Zoom ud"
-#: ../src/EditToolBar.cpp:170
-msgid "Zoom Toggle"
-msgstr "Zoom til/fra"
-
-#: toolbars/EditToolBar.cpp:160
-msgid "Fit Selection"
-msgstr ""
-
#: ../src/EditToolBar.cpp:174
msgid "Fit selection in window"
msgstr "Tilpas det markerede til vinduet"
-#: toolbars/EditToolBar.cpp:162
-msgid "Fit Project"
-msgstr ""
-
#: ../src/EditToolBar.cpp:176
msgid "Fit project in window"
msgstr "Tilpas projektet til vindue"
-#: toolbars/MeterToolBar.cpp:49
-msgid "Meter"
+#: toolbars/EditToolBar.cpp:160
+msgid "Fit Selection"
+msgstr ""
+
+#: toolbars/EditToolBar.cpp:162
+msgid "Fit Project"
msgstr ""
#: toolbars/MeterToolBar.cpp:79
@@ -8180,6 +8504,14 @@ msgstr ""
msgid "Input Source"
msgstr ""
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:75
msgid "Selection"
msgstr ""
@@ -8260,30 +8592,6 @@ msgstr "Venstre = zoom ind, h
msgid "Click and drag to move a track in time"
msgstr "Klik og træk for at flytte et spor langs tidsaksen"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr ""
-
-#: ../src/ControlToolBar.cpp:355
-msgid "Selection Tool"
-msgstr "Markeringsværktøj"
-
-#: ../src/ControlToolBar.cpp:356
-msgid "Envelope Tool"
-msgstr "Konvoluteringsværktøj"
-
-#: ../src/ControlToolBar.cpp:357
-msgid "Time Shift Tool"
-msgstr "Tidsforskydningsværktøj"
-
-#: ../src/ControlToolBar.cpp:358
-msgid "Zoom Tool"
-msgstr "Zoom værktøj"
-
-#: ../src/ControlToolBar.cpp:359
-msgid "Draw Tool"
-msgstr "Tegneværktøj"
-
#: ../src/ControlToolBar.cpp:360
msgid "Multi-Tool Mode"
msgstr "Multi-værktøj mode"
@@ -8292,22 +8600,10 @@ msgstr "Multi-v
msgid "Slide Tool"
msgstr ""
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr ""
-
-#: toolbars/TranscriptionToolBar.cpp:81
-msgid "Transcription"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:183
msgid "Play at selected speed"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:184
-msgid "Play-at-speed"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:190 toolbars/TranscriptionToolBar.cpp:195
msgid "Playback Speed"
msgstr ""
@@ -8316,74 +8612,38 @@ msgstr ""
msgid "Adjust left selection to next onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:201
-msgid "Left-to-On"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:203
msgid "Adjust right selection to previous offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:204
-msgid "Right-to-Off"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:206
msgid "Adjust left selection to next offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:207
-msgid "Left-to-Off"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:209
msgid "Adjust right selection to previous onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:210
-msgid "Right-to-On"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:212
msgid "Select region of sound around cursor"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:213
-msgid "Select-Sound"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:215
msgid "Select region of silence around cursor"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:216
-msgid "Select-Silence"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:218
msgid "Automatically make labels from words"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:219
-msgid "Make Labels"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:221
msgid "Add label at selection"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:222
-msgid "Add Label"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:224
msgid "Calibrate voicekey"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:225
-msgid "Calibrate"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:229
msgid "Adjust Sensitivity"
msgstr ""
@@ -8416,6 +8676,46 @@ msgstr ""
msgid "Key type"
msgstr ""
+#: toolbars/TranscriptionToolBar.cpp:184
+msgid "Play-at-speed"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:201
+msgid "Left-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:204
+msgid "Right-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:207
+msgid "Left-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:210
+msgid "Right-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:213
+msgid "Select-Sound"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:216
+msgid "Select-Silence"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:219
+msgid "Make Labels"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:222
+msgid "Add Label"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:225
+msgid "Calibrate"
+msgstr ""
+
#: ../src/widgets/AButton.cpp:181
msgid " (disabled)"
msgstr " (frakoblet)"
@@ -8720,3 +9020,15 @@ msgstr ""
msgid "Could not load file: \"%s\""
msgstr ""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
+
diff --git a/locale/de.po b/locale/de.po
index 2a7367c..31d3bd7 100644
--- a/locale/de.po
+++ b/locale/de.po
@@ -7,38 +7,35 @@ msgid ""
msgstr "Project-Id-Version: Audacity 1.3.3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2007-03-11 19:51+0100\n"
-"PO-Revision-Date: 2007-10-28 01:34+0100\n"
-"Last-Translator: Andreas Klug <andreas.klug <at> mediensyndikat.de>\n"
+"PO-Revision-Date: 2009-05-23 19:52+0100\n"
+"Last-Translator: Andreas Klug <sammel at mediensyndikat.de>\n"
"Language-Team: Andreas Klug, Edgar M. Franke, Pennywize, Heiko Abler <andreas.klug at mediensyndikat.de>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=ISO-8859-1\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Poedit-Language: German\n"
-#: ../src/AudacityApp.cpp:532
-#: ../src/Menus.cpp:810
+#: ../src/AudacityApp.cpp:532 ../src/Menus.cpp:810
msgid "&About Audacity..."
msgstr "&Über Audacity..."
#. i18n-hint: Rather than a literal translation, consider adding the
#. appropriate suffix or prefix to create a word meaning 'something which
#. has Audacity'
-#: AboutDialog.cpp:340
-#: AboutDialog.cpp:371
-#: SplashDialog.cpp:111
+#: AboutDialog.cpp:340 AboutDialog.cpp:371 SplashDialog.cpp:111
msgid "OK... Audacious!"
msgstr "OK... Audacious!"
#: AboutDialog.cpp:175
msgid "Audacity is a free program written by a team of volunteer <a href=\"http://audacity.sourceforge.net/community/developers\">developers</a> around the world. We are grateful to <a href=\"http://sourceforge.net\">SourceForge.net</a> for our project hosting. Audacity is available for Windows 98 and later, Mac OS X, Linux and other Unix-like operating systems. Older versions of Audacity are available for Mac OS 9."
-msgstr ""
+msgstr "Audacity ist freie Software, die von vielen freien <a href=\"http://audacity.sourceforge.net/community/developers\">Mitarbeiter/-innen</a> weltweit entwickelt wird. Wir freuen uns, dass <a href=\"http://sourceforge.net\">SourceForge.net</a> Serverplatz für unser Projekt bereitstellt. Audacity ist verfügbar für Windows (ab 98), Mac OS X, Linux und andere Unix-artige Betriebssysteme. Ältere Audacity-Versionen gibt es auch für Mac OS 9."
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#. i18n-hint: The translation of "translator_credits" will appear
@@ -47,14 +44,13 @@ msgstr ""
#.
#. For example: "English translation by Dominic Mazzoni."
#.
-#: ../src/AboutDialog.cpp:216
-#: ../src/AboutDialog.cpp:218
+#: ../src/AboutDialog.cpp:216 ../src/AboutDialog.cpp:218
msgid "translator_credits"
msgstr "Deutsche Übersetzung von Andreas Klug, Heiko Abler, Pennywize, Edgar M. Franke"
#: AboutDialog.cpp:207
msgid "A Free Digital Audio Editor<br>"
-msgstr ""
+msgstr "Ein freies Audiobearbeitungs-Programm<br>"
#: ../src/AboutDialog.cpp:237
msgid "Credits"
@@ -91,8 +87,8 @@ msgid "Special thanks:"
msgstr "Besonderer Dank geht an"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
-msgstr ""
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgstr "<b>Audacity®</b> Software is copyright © 1999-2009 Audacity Team. <br>Der Name <b>Audacity®</b> ist ein eingetragenes Warenzeichen von Dominic Mazzoni."
#: AboutDialog.cpp:320
msgid "Audacity"
@@ -101,7 +97,7 @@ msgstr "Audacity"
#. i18n-hint: Information about when audacity was compiled
#: AboutDialog.cpp:304 AboutDialog.cpp:317 AboutDialog.cpp:473
msgid "Build Information"
-msgstr ""
+msgstr "Informationen zur Software-Version"
#: ../src/effects/AvcCompressor.cpp:674
msgid "Enabled"
@@ -113,64 +109,64 @@ msgstr "Deaktiviert"
#: AboutDialog.cpp:321
msgid "File Format Support"
-msgstr ""
+msgstr "Dateiformat-Unterstützung"
#. i18n-hint: This is what the library (libmad) does - imports MP3 files
#: AboutDialog.cpp:331 AboutDialog.cpp:333
msgid "MP3 Importing"
-msgstr ""
+msgstr "MP3 Import"
#: AboutDialog.cpp:340 AboutDialog.cpp:343
msgid "Ogg Vorbis Import and Export"
-msgstr ""
+msgstr "Ogg Vorbis Import und Export"
#: AboutDialog.cpp:347 AboutDialog.cpp:350
msgid "ID3 tag support"
-msgstr ""
+msgstr "ID3-Tag-Support"
#: AboutDialog.cpp:357 AboutDialog.cpp:360
msgid "FLAC import and export"
-msgstr ""
+msgstr "FLAC Import und Export"
#: AboutDialog.cpp:365 AboutDialog.cpp:368
msgid "MP2 export"
-msgstr ""
+msgstr "MP2 Export"
#: AboutDialog.cpp:373 AboutDialog.cpp:376
msgid "Import via QuickTime"
-msgstr ""
+msgstr "Import über QuickTime"
#. i18n-hint: Libraries that are essential to audacity
#: AboutDialog.cpp:383
msgid "Core Libraries"
-msgstr ""
+msgstr "Zentrale Bibliotheken"
#: AboutDialog.cpp:389 AboutDialog.cpp:392 AboutDialog.cpp:395
#: AboutDialog.cpp:397
msgid "Sample rate conversion"
-msgstr ""
+msgstr "Umwandlung der Sample-Rate"
#: AboutDialog.cpp:402 AboutDialog.cpp:405
msgid "Audio playback and recording"
-msgstr ""
+msgstr "Audio-Playback und Aufnahme"
#: AboutDialog.cpp:418
msgid "Features"
-msgstr ""
+msgstr "Features"
#: AboutDialog.cpp:422 AboutDialog.cpp:425 AboutDialog.cpp:430
#: AboutDialog.cpp:433 AboutDialog.cpp:438 AboutDialog.cpp:441
#: AboutDialog.cpp:446 AboutDialog.cpp:449
msgid "Plug-in support"
-msgstr ""
+msgstr "Plug-In-Unterstützung"
#: AboutDialog.cpp:454 AboutDialog.cpp:457
msgid "Sound card mixer support"
-msgstr ""
+msgstr "Unterstützung des Soundkarten-Mixers"
#: AboutDialog.cpp:462 AboutDialog.cpp:465
msgid "Pitch and Tempo Change support"
-msgstr ""
+msgstr "Unterstützung der Änderung von Tonhöhe und Geschwindigkeit"
#: ../src/AboutDialog.cpp:189
msgid "Program build date: "
@@ -178,22 +174,21 @@ msgstr "Programmversion vom: "
#: AboutDialog.cpp:480 AboutDialog.cpp:482
msgid "Build type:"
-msgstr ""
+msgstr "Software-Typ:"
#: AboutDialog.cpp:480
msgid "Debug build"
-msgstr ""
+msgstr "Debug-Version"
#: AboutDialog.cpp:482
msgid "Release build"
-msgstr ""
+msgstr "Software-Version"
#. i18n-hint: The directory audacity is installed into (on *nix systems)
#: AboutDialog.cpp:487
msgid "Installation Prefix: "
-msgstr ""
+msgstr "Installations-Verzeichnis:"
-# ??? zu langer text? --> Schau Dir den About-Dialog an (Hilfe/Über Audacity), dann siehst Du, wie's aussieht. Würde eher "Einstellungs-Ordner:" schreiben oder so.
#: ../src/AboutDialog.cpp:194
msgid "Settings folder: "
msgstr "Einstellungs-Ordner:"
@@ -202,17 +197,13 @@ msgstr "Einstellungs-Ordner:"
msgid "GPL License"
msgstr "GPL-Lizenz"
-#: ../src/AudacityApp.cpp:276
-#: ../src/Project.cpp:1521
+#: ../src/AudacityApp.cpp:276 ../src/Project.cpp:1521
#, c-format
msgid "%s is already open in another window."
msgstr "%s ist bereits in einem Fenster geöffnet."
-#: ../src/AudacityApp.cpp:278
-#: ../src/Project.cpp:1523
-#: ../src/Project.cpp:1604
-#: ../src/Project.cpp:1748
-#: ../src/Project.cpp:1850
+#: ../src/AudacityApp.cpp:278 ../src/Project.cpp:1523 ../src/Project.cpp:1604
+#: ../src/Project.cpp:1748 ../src/Project.cpp:1850
msgid "Error opening project"
msgstr "Fehler beim Öffnen des Projekts"
@@ -237,21 +228,28 @@ msgstr "Aussteuerung (Eingang)"
msgid "Output Meter"
msgstr "Aussteuerungsanzeige Ausgang"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
-#: ../src/AudacityApp.cpp:534
-#: ../src/Menus.cpp:554
-msgid "&Preferences...\tCtrl+,"
-msgstr "Einstellungen...\tCtrl+,"
+#: ../src/Menus.cpp:188
+msgid "&New"
+msgstr "&Neu"
+
+#: ../src/Menus.cpp:190
+msgid "&Open..."
+msgstr "&Öffnen..."
-#: ../src/AudacityApp.cpp:617
-#: ../src/AudacityApp.cpp:702
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
+
+#: ../src/AudacityApp.cpp:534 ../src/Menus.cpp:554
+msgid "&Preferences..."
+msgstr "Einstellungen..."
+
+#: ../src/AudacityApp.cpp:617 ../src/AudacityApp.cpp:702
#, c-format
msgid "Using block size of %ld\n"
msgstr "Benutze Blockgröße: %ld\n"
-#: ../src/AudacityApp.cpp:639
-#: ../src/AudacityApp.cpp:717
+#: ../src/AudacityApp.cpp:639 ../src/AudacityApp.cpp:717
#, c-format
msgid "Unknown command line option: %s\n"
msgstr "Unbekannte Kommandozeilenoption: %s\n"
@@ -330,7 +328,7 @@ msgstr "\t-test (Selbsttest durchf
#. * disk
#: AudacityApp.cpp:1148
msgid "\t-blocksize nnn (set max disk block size in bytes)"
-msgstr ""
+msgstr "\t-blocksize nnn (max. Disk-Block-Größe in Bytes)"
#: AudacityApp.cpp:1149
msgid "In addition, specify the name of an audio file or Audacity project to open it."
@@ -369,16 +367,18 @@ msgstr "Fehler: "
msgid "Error Initializing Audio"
msgstr "Fehler beim Initialisieren des Audiogeräts."
+#: AudioIO.cpp:1389
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
+"Audacity has brought it back to start at zero.\n"
+"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
+msgstr "Die Latenz-Korrektur-Einstellungen führen dazu, dass Audio nun vor der Null-Linie (auf der Zeitachse) starten müsste.\n"
+"Audacity hat das Audio nun auf die Null-Linie zurückverschoben.\n"
+"Sie müssen nun das Verschiebewerkzeug verwenden, um das Audio an die von Ihnen gewünschte Stelle zu schieben."
+
#: AudioIO.cpp:1236
msgid "Latency problem"
msgstr "Latenz-Problem"
-#: AudioIO.cpp:1236
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
-"Audacity has brought it back to start at zero.\n"
-"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
-msgstr ""
-
#: ../src/AutoRecovery.cpp:40
msgid "Automatic Crash Recovery"
msgstr "Automatische Wiederherstellung nach Programmabsturz"
@@ -407,51 +407,39 @@ msgstr "Audacity beenden"
#: AutoRecovery.cpp:89
msgid "Do Not Recover"
-msgstr ""
+msgstr "Nicht wiederherstellen"
#: AutoRecovery.cpp:90
-#, fuzzy
msgid "Recover Projects"
msgstr "Wiederherstellen"
#: AutoRecovery.cpp:127
msgid "Are you sure you don't want to recover any projects?\n"
"They can't be recovered later."
-msgstr ""
+msgstr "Sind Sie sicher, dass Sie wirkliche keine Projekte wiederherstellen wollen?\n"
+"(Später ist das unmöglich.)"
#: AutoRecovery.cpp:128
msgid "Confirm?"
-msgstr ""
+msgstr "Bestätigen?"
-#: ../src/AutoRecovery.cpp:132
-#: ../src/AutoRecovery.cpp:167
+#: ../src/AutoRecovery.cpp:132 ../src/AutoRecovery.cpp:167
msgid "Could not enumerate files in auto save directory"
msgstr "Die Dateien im Autosave-Verzeichnis konnten nicht aufgelistet werden."
-#: ../src/UploadDialog.cpp:251
-#: ../src/UploadDialog.cpp:1159
-#: ../src/WaveTrack.cpp:516
-#: ../src/WaveTrack.cpp:535
-#: ../src/WaveTrack.cpp:1584
-#: ../src/prefs/DirectoriesPrefs.cpp:188
-#: ../src/prefs/KeyConfigPrefs.cpp:236
-#: ../src/effects/Effect.cpp:334
-#: ../src/export/ExportMP2.cpp:95
-#: ../src/AutoRecovery.cpp:133
-#: ../src/AutoRecovery.cpp:154
-#: ../src/AutoRecovery.cpp:168
-#: ../src/toolbars/ControlToolBar.cpp:526
-#: ../src/toolbars/ControlToolBar.cpp:778
-#: ../src/Menus.cpp:2584
-#: ../src/Menus.cpp:4441
-#: ../src/Project.cpp:1707
-#: ../src/Project.cpp:3028
+#: ../src/UploadDialog.cpp:251 ../src/UploadDialog.cpp:1159
+#: ../src/WaveTrack.cpp:516 ../src/WaveTrack.cpp:535 ../src/WaveTrack.cpp:1584
+#: ../src/prefs/DirectoriesPrefs.cpp:188 ../src/prefs/KeyConfigPrefs.cpp:236
+#: ../src/effects/Effect.cpp:334 ../src/export/ExportMP2.cpp:95
+#: ../src/AutoRecovery.cpp:133 ../src/AutoRecovery.cpp:154
+#: ../src/AutoRecovery.cpp:168 ../src/toolbars/ControlToolBar.cpp:526
+#: ../src/toolbars/ControlToolBar.cpp:778 ../src/Menus.cpp:2584
+#: ../src/Menus.cpp:4441 ../src/Project.cpp:1707 ../src/Project.cpp:3028
#: ../src/Project.cpp:3103
msgid "Error"
msgstr "Fehler"
-#: ../src/BatchCommandDialog.cpp:56
-#: ../src/BatchCommandDialog.cpp:60
+#: ../src/BatchCommandDialog.cpp:56 ../src/BatchCommandDialog.cpp:60
#: ../src/BatchCommandDialog.cpp:61
msgid "Select Command"
msgstr "Befehl auswählen"
@@ -477,10 +465,9 @@ msgstr "Befehl ausw
msgid "Stereo to Mono Effect not found"
msgstr "Stereo-in-Mono-Effekt nicht gefunden"
-#: ../src/export/Export.cpp:410
-#: ../src/BatchCommands.cpp:489
+#: ../src/export/Export.cpp:410 ../src/BatchCommands.cpp:489
msgid "Ogg Vorbis support is not included in this build of Audacity"
-msgstr "Ogg-Vorbis wird in dieser Version von Audacity nicht unterstützt"
+msgstr "Ogg Vorbis wird in dieser Version von Audacity nicht unterstützt"
#: BatchCommands.cpp:509
msgid "FLAC support is not included in this build of Audacity"
@@ -512,8 +499,7 @@ msgstr "%s anwenden mit den Parameter(n)\n"
"\n"
"%s"
-#: BatchCommands.cpp:675
-#: BatchCommands.cpp:680
+#: BatchCommands.cpp:675 BatchCommands.cpp:680
msgid "Test Mode"
msgstr "Test-Modus"
@@ -522,15 +508,14 @@ msgstr "Test-Modus"
msgid "Apply %s"
msgstr "%s anwenden"
-#: ../src/BatchProcessDialog.cpp:57
-#: ../src/BatchProcessDialog.cpp:67
+#: ../src/BatchProcessDialog.cpp:57 ../src/BatchProcessDialog.cpp:67
#: ../src/BatchProcessDialog.cpp:68
msgid "Apply Chain"
msgstr "Stapelverarbeitung anwenden"
#: BatchProcessDialog.cpp:67
msgid "CleanSpeech Batch Processing"
-msgstr ""
+msgstr "Clean-Speech Stapelverarbeitung"
#: ../src/BatchProcessDialog.cpp:91
msgid "&Select chain"
@@ -548,41 +533,26 @@ msgstr "Auf aktuelles Projekt anwenden"
msgid "Apply to &Files..."
msgstr "Auf Dateien anwenden..."
-#: ../src/UploadDialog.cpp:178
-#: ../src/prefs/FileFormatPrefs.cpp:407
-#: ../src/prefs/PrefsDialog.cpp:169
-#: ../src/effects/VST/VSTEffect.cpp:95
-#: ../src/effects/AutoDuck.cpp:528
-#: ../src/effects/AutoDuck.cpp:532
-#: ../src/effects/Amplify.cpp:209
-#: ../src/effects/Compressor.cpp:516
-#: ../src/effects/Wahwah.cpp:587
-#: ../src/effects/Leveller.cpp:256
-#: ../src/effects/ChangeSpeed.cpp:393
-#: ../src/effects/Repeat.cpp:271
+#: ../src/UploadDialog.cpp:178 ../src/prefs/FileFormatPrefs.cpp:407
+#: ../src/prefs/PrefsDialog.cpp:169 ../src/effects/VST/VSTEffect.cpp:95
+#: ../src/effects/AutoDuck.cpp:528 ../src/effects/AutoDuck.cpp:532
+#: ../src/effects/Amplify.cpp:209 ../src/effects/Compressor.cpp:516
+#: ../src/effects/Wahwah.cpp:587 ../src/effects/Leveller.cpp:256
+#: ../src/effects/ChangeSpeed.cpp:393 ../src/effects/Repeat.cpp:271
#: ../src/effects/ladspa/LadspaEffect.cpp:589
-#: ../src/effects/ChangePitch.cpp:395
-#: ../src/effects/ChangeTempo.cpp:297
-#: ../src/effects/Effect.cpp:387
-#: ../src/effects/Effect.cpp:393
-#: ../src/effects/SpikeCleaner.cpp:188
-#: ../src/effects/Phaser.cpp:600
-#: ../src/effects/ClickRemoval.cpp:429
-#: ../src/effects/nyquist/Nyquist.cpp:821
-#: ../src/effects/Normalize.cpp:353
-#: ../src/effects/Equalization.cpp:1166
-#: ../src/effects/ChangeLength.cpp:184
-#: ../src/BatchProcessDialog.cpp:105
-#: ../src/export/ExportMultiple.cpp:844
-#: ../src/export/Export.cpp:788
-#: ../src/import/ImportRaw.cpp:443
-#: ../src/LabelDialog.cpp:134
+#: ../src/effects/ChangePitch.cpp:395 ../src/effects/ChangeTempo.cpp:297
+#: ../src/effects/Effect.cpp:387 ../src/effects/Effect.cpp:393
+#: ../src/effects/SpikeCleaner.cpp:188 ../src/effects/Phaser.cpp:600
+#: ../src/effects/ClickRemoval.cpp:429 ../src/effects/nyquist/Nyquist.cpp:821
+#: ../src/effects/Normalize.cpp:353 ../src/effects/Equalization.cpp:1166
+#: ../src/effects/ChangeLength.cpp:184 ../src/BatchProcessDialog.cpp:105
+#: ../src/export/ExportMultiple.cpp:844 ../src/export/Export.cpp:788
+#: ../src/import/ImportRaw.cpp:443 ../src/LabelDialog.cpp:134
#: ../src/LabelDialog.cpp:138
msgid "&Cancel"
msgstr "&Abbrechen"
-#: ../src/BatchProcessDialog.cpp:143
-#: ../src/BatchProcessDialog.cpp:188
+#: ../src/BatchProcessDialog.cpp:143 ../src/BatchProcessDialog.cpp:188
msgid "No chain selected"
msgstr "Keine Stapelverarbeitung ausgewählt"
@@ -597,7 +567,7 @@ msgstr "Bitte speichern und schlie
#: BatchProcessDialog.cpp:206
msgid "Select vocal file(s) for batch CleanSpeech Chain..."
-msgstr ""
+msgstr "Wählen Sie Audio aus für die CleanSpeech-Verarbeitung..."
#: ../src/BatchProcessDialog.cpp:204
msgid "Select file(s) for batch processing..."
@@ -605,7 +575,7 @@ msgstr "W
#: BatchProcessDialog.cpp:209
msgid "Vocal files (*.wav;*.mp3)|*.wav;*.mp3|WAV files (*.wav)|*.wav|MP3 files (*.mp3)|*.mp3"
-msgstr ""
+msgstr "Vocal files (*.wav;*.mp3)|*.wav;*.mp3|WAV files (*.wav)|*.wav|MP3 files (*.mp3)|*.mp3"
#: ../src/BatchProcessDialog.cpp:207
msgid "All files (*.*)|*.*|WAV files (*.wav)|*.wav|AIFF files (*.aif)|*.aif|AU files (*.au)|*.au|MP3 files (*.mp3)|*.mp3|Ogg Vorbis files (*.ogg)|*.ogg|FLAC files (*.flac)|*.flac"
@@ -619,8 +589,7 @@ msgstr "Anwenden..."
msgid "File"
msgstr "Datei"
-#: ../src/BatchProcessDialog.cpp:353
-#: ../src/BatchProcessDialog.cpp:357
+#: ../src/BatchProcessDialog.cpp:353 ../src/BatchProcessDialog.cpp:357
#: ../src/BatchProcessDialog.cpp:358
msgid "Edit Chains"
msgstr "Stapelverarbeitung bearbeiten"
@@ -633,8 +602,7 @@ msgstr "&Stapelverarbeitung:"
msgid "&Add"
msgstr "&Hinzufügen"
-#: ../src/BatchProcessDialog.cpp:433
-#: ../src/LabelDialog.cpp:126
+#: ../src/BatchProcessDialog.cpp:433 ../src/LabelDialog.cpp:126
msgid "&Remove"
msgstr "Ent&fernen"
@@ -646,13 +614,14 @@ msgstr "Umbenennen"
msgid "C&hain (Double-Click or press SPACE to edit)"
msgstr "Stapelverarbeitung (Doppelklick oder Leertaste zum bearbeiten)"
-#: ../src/BatchProcessDialog.cpp:449
-msgid "No"
-msgstr "Nein"
+#. i18n-hint: This is the number of the command in the list
+#: BatchProcessDialog.cpp:453
+msgid "Num"
+msgstr ""
#: ../src/BatchProcessDialog.cpp:455
msgid "&Insert"
-msgstr "&Einfügen"
+msgstr "&Einfügen..."
#: ../src/BatchProcessDialog.cpp:456
msgid "De&lete"
@@ -737,21 +706,19 @@ msgstr "Festplatten-Platz"
msgid "Copy Selected Audio Into Project"
msgstr "Nur ausgewählte Audios ins Projektverzeichnis kopieren"
-#: ../src/Dependencies.cpp:304
-#: ../src/Dependencies.cpp:413
+#: ../src/Dependencies.cpp:304 ../src/Dependencies.cpp:413
msgid "Cancel Save"
msgstr "Speichern abbrechen"
#: Dependencies.cpp:310
msgid "Do Not Copy Any Audio"
-msgstr ""
+msgstr "Kein Audio kopieren"
#: Dependencies.cpp:312
msgid "Copy All Audio into Project (Safer)"
-msgstr ""
+msgstr "Alle Audios ins Projekt kopieren (sicherer)"
-#: ../src/Dependencies.cpp:320
-#: ../src/Dependencies.cpp:325
+#: ../src/Dependencies.cpp:320 ../src/Dependencies.cpp:325
msgid "Ask me"
msgstr "Anwender/-in fragen"
@@ -784,8 +751,7 @@ msgid "Warning: there is very little free disk space left on this volume.\n"
"Please select another temporary directory in your preferences."
msgstr "Achtung: Es ist nur noch sehr wenig freier Speicherplatz auf dem Laufwerk verfügbar. Bitte wählen Sie unter dem Menüpunkt Bearbeiten > Einstellungen einen anderen Ort aus für das temporäre Verzeichnis."
-#: ../src/DirManager.cpp:221
-#: ../src/DirManager.cpp:251
+#: ../src/DirManager.cpp:221 ../src/DirManager.cpp:251
#: ../src/DirManager.cpp:332
msgid "Progress"
msgstr "Verlauf"
@@ -841,10 +807,9 @@ msgstr "'%s' kann nicht in '%s' umbenannt werden"
#: DirManager.cpp:1183
#, c-format
msgid "Changed block %s to new alias name\n"
-msgstr ""
+msgstr "Block %s geändert auf neuen Alias-Name\n"
-#: ../src/DirManager.cpp:1115
-#: ../src/DirManager.cpp:1403
+#: ../src/DirManager.cpp:1115 ../src/DirManager.cpp:1403
msgid "Inspecting project file data..."
msgstr "Projektdaten überprüfen..."
@@ -895,10 +860,8 @@ msgstr "Fortfahren ohne zu l
msgid "Close project immediately with no changes"
msgstr "Projekt sofort schließen ohne Veränderungen"
-#: ../src/DirManager.cpp:1228
-#: ../src/DirManager.cpp:1263
-#: ../src/DirManager.cpp:1309
-#: ../src/DirManager.cpp:1351
+#: ../src/DirManager.cpp:1228 ../src/DirManager.cpp:1263
+#: ../src/DirManager.cpp:1309 ../src/DirManager.cpp:1351
#: ../src/widgets/Warning.cpp:55
msgid "Warning"
msgstr "Warnung"
@@ -927,8 +890,7 @@ msgstr "Fehlende Daten beim Speichern dauerhaft durch Stille ersetzen"
msgid "Temporarily replace missing data with silence [this session only]"
msgstr "Fehlende Daten vorübergehend durch Stille ersetzen (nur für die Dauer dieser Sitzung)"
-#: ../src/DirManager.cpp:1261
-#: ../src/DirManager.cpp:1307
+#: ../src/DirManager.cpp:1261 ../src/DirManager.cpp:1307
#: ../src/DirManager.cpp:1349
msgid "Close project immediately with no further changes"
msgstr "Projekt sofort schließen ohne weitere Änderungen"
@@ -1000,31 +962,31 @@ msgstr "Rechteck"
#: FFmpeg.cpp:36
msgid "FFmpeg support not compiled in"
-msgstr ""
+msgstr "FFmpeg-Support wurde nicht einkompiliert"
-#: FFmpeg.cpp:101
+#: FFmpeg.cpp:103
msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
#: FFmpeg.cpp:104
msgid "FFmpeg startup failed"
-msgstr ""
+msgstr "Start von FFmpeg fehlgeschlagen"
#: FFmpeg.cpp:115
msgid "FFmpeg library not found"
-msgstr ""
+msgstr "FFmpeg-Bibliothek nicht gefunden"
#: FFmpeg.cpp:170
msgid "Locate FFmpeg"
-msgstr ""
+msgstr "FFmpeg suchen"
#: FFmpeg.cpp:190
#, c-format
msgid "Audacity needs the file %s to import and export audio via FFmpeg."
-msgstr ""
+msgstr "Audacity braucht die Datei %s, um Audio mit FFmpeg zu im- und exportieren."
#: export/ExportMP3.cpp:639
#, c-format
@@ -1042,11 +1004,11 @@ msgstr "Durchsuchen..."
#: FFmpeg.cpp:212
msgid "To get a free copy of FFmpeg, click here -->"
-msgstr ""
+msgstr "Um eine freie Kopie von FFmpeg zu erhalten hier klicken -->"
#: FFmpeg.cpp:215 export/ExportMP3.cpp:579
msgid "Download"
-msgstr ""
+msgstr "Download"
#. i18n-hint: It's asking for the location of a file, for
#. example, "Where is lame_enc.dll?" - you could translate
@@ -1058,41 +1020,41 @@ msgstr "Wo befindet sich die Datei: \"%s\"?"
#: FFmpeg.cpp:407
msgid "Failed to find compatible FFmpeg libraries"
-msgstr ""
+msgstr "Es konnten keine passenden FFmpeg-Bibliotheken gefunden werden"
#: FFmpeg.h:95
msgid "FFmpeg not found"
-msgstr ""
+msgstr "FFmpeg nicht gefunden"
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
#: FFmpeg.h:109
msgid "Do not show this warning again"
-msgstr ""
+msgstr "Diese Warnung nicht mehr anzeigen"
#: FFmpeg.h:251
msgid "Only avformat.dll|*avformat*.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
-msgstr ""
+msgstr "Nur avformat.dll|*avformat*.dll|Dynamically Linked Libraries (*.dll)|*.dll|Alle Dateien (*.*)|*"
#: FFmpeg.h:268
msgid "Dynamic Libraries (*.dylib)|*.dylib|All Files (*)|*"
-msgstr ""
+msgstr "Dynamic Libraries (*.dylib)|*.dylib|Alle Dateien (*)|*"
#: FFmpeg.h:266
msgid "Only libavformat.so|libavformat.so*|Dynamically Linked Libraries (*.so*)|*.so*|All Files (*)|*"
-msgstr ""
+msgstr "Nur libavformat.so|libavformat.so*|Dynamically Linked Libraries (*.so*)|*.so*|Alle Dateien (*)|*"
#: ../src/FreqWindow.cpp:102
msgid "Frequency Analysis"
msgstr "Frequenzanalyse"
-#: ../src/FreqWindow.cpp:138
-#: ../src/TrackPanel.cpp:510
+#: ../src/FreqWindow.cpp:138 ../src/TrackPanel.cpp:510
msgid "Spectrum"
msgstr "Spektrum"
@@ -1117,9 +1079,8 @@ msgid "Cepstrum"
msgstr "Cepstrum"
#: FreqWindow.cpp:150 FreqWindow.cpp:154
-#, fuzzy
msgid "Algorithm"
-msgstr "Algorithmus:"
+msgstr "Algorithmus"
#: ../src/HistoryWindow.cpp:79
msgid "Size"
@@ -1133,7 +1094,7 @@ msgstr "-Fenster"
#: FreqWindow.cpp:187 FreqWindow.cpp:191
msgid "Function"
-msgstr ""
+msgstr "Funktion"
#: ../src/FreqWindow.cpp:189
msgid "Linear frequency"
@@ -1145,48 +1106,62 @@ msgstr "Log. Darstellung"
#: FreqWindow.cpp:201 FreqWindow.cpp:205
msgid "Axis"
-msgstr ""
+msgstr "Axis"
#: ../src/LabelDialog.cpp:128
msgid "&Export..."
msgstr "&Exportieren..."
-#: HelpText.cpp:77
-#: export/ExportCL.cpp:320
+#: HelpText.cpp:77 export/ExportCL.cpp:320
msgid "Export"
msgstr "Export"
-#: ../src/FreqWindow.cpp:206
-#: ../src/Benchmark.cpp:232
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
+#: ../src/FreqWindow.cpp:206 ../src/Benchmark.cpp:232
#: ../src/Dependencies.cpp:308
msgid "Close"
msgstr "Schließen"
-#: ../src/FreqWindow.cpp:269
-#: ../src/FreqWindow.cpp:392
-#: ../src/effects/Compressor.cpp:348
-#: ../src/effects/Compressor.cpp:356
-#: ../src/effects/Normalize.cpp:340
-#: ../src/effects/Equalization.cpp:1003
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr ""
+
+#: ../src/FreqWindow.cpp:269 ../src/FreqWindow.cpp:392
+#: ../src/effects/Compressor.cpp:348 ../src/effects/Compressor.cpp:356
+#: ../src/effects/Normalize.cpp:340 ../src/effects/Equalization.cpp:1003
#: ../src/widgets/Meter.cpp:357
msgid "dB"
msgstr "dB"
#. i18n-hint: This is the abbreviation for "Hertz", or
#. cycles per second.
-#: ../src/FreqWindow.cpp:284
-#: ../src/FreqWindow.cpp:432
-#: ../src/effects/Equalization.cpp:1034
-#: ../src/import/ImportRaw.cpp:416
+#: ../src/FreqWindow.cpp:284 ../src/FreqWindow.cpp:432
+#: ../src/effects/Equalization.cpp:1034 ../src/import/ImportRaw.cpp:416
msgid "Hz"
msgstr "Hz"
+#: ../src/Menus.cpp:3407
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "Um das Spektrum zeichnen zu können, müssen alle Spuren die gleiche Samplerate haben."
+
+#: ../src/Menus.cpp:3433
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "Es wurden zuviele Audiodaten ausgewählt. Nur die ersten %.1f Sekunden werden analysiert."
+
#: ../src/FreqWindow.cpp:376
msgid "Not enough data selected."
msgstr "Ausgewählte Daten reichen nicht aus."
-#: ../src/FreqWindow.cpp:440
-#: ../src/effects/AutoDuck.cpp:801
+#: ../src/FreqWindow.cpp:440 ../src/effects/AutoDuck.cpp:801
msgid "s"
msgstr "s"
@@ -1208,11 +1183,8 @@ msgstr "spectrum.txt"
msgid "Export Spectral Data As:"
msgstr "Frequenzanalyse (Textdatei) exportieren als:"
-#: ../src/FreqWindow.cpp:1059
-#: ../src/prefs/KeyConfigPrefs.cpp:177
-#: ../src/Menus.cpp:2167
-#: ../src/Project.cpp:2139
-#: ../src/Project.cpp:3080
+#: ../src/FreqWindow.cpp:1059 ../src/prefs/KeyConfigPrefs.cpp:177
+#: ../src/Menus.cpp:2167 ../src/Project.cpp:2139 ../src/Project.cpp:3080
#: ../src/LabelDialog.cpp:590
msgid "Couldn't write to file: "
msgstr "Konnte nicht in Datei schreiben: "
@@ -1225,9 +1197,24 @@ msgstr "Frequenz (Hz)\tPegel (dB)"
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "Verzögerungszeit (s)\tFrequenz (Hz)\tPegel"
+#: GStreamerLoader.cpp:220
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr "GStreamer %s: %s"
+
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:240
+msgid "GStreamer startup failed"
+msgstr "Start von GStreamer fehlgeschlagen"
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
-msgstr ""
+msgstr "Zum [[welcome|Willkommen-Text]]"
#: HelpText.cpp:60
msgid "Welcome!"
@@ -1243,15 +1230,15 @@ msgstr "Aufnahme"
#: HelpText.cpp:105
msgid "Recording - Choosing the Input Device"
-msgstr ""
+msgstr "Aufnahme - Aufnahme-Gerät auswählen"
#: HelpText.cpp:109
msgid "Recording - Choosing the Input Source"
-msgstr ""
+msgstr "Aufnahme - Quelle auswählen"
#: HelpText.cpp:113
msgid "Recording - Setting the Input Level"
-msgstr ""
+msgstr "Aufnahme - Eingangspegel einstellen"
#: HelpText.cpp:117
#, fuzzy
@@ -1260,15 +1247,15 @@ msgstr "Bearbeitung und ausgegraute Men
#: HelpText.cpp:121
msgid "Exporting an Audio File"
-msgstr ""
+msgstr "Audio-Datei exportieren"
#: HelpText.cpp:125
msgid "Saving an Audacity Project"
-msgstr ""
+msgstr "Audacity-Projekt speichern"
#: HelpText.cpp:129
msgid "Unsupported Formats"
-msgstr ""
+msgstr "Nicht unterstützte Formate"
#: HelpText.cpp:85
msgid "Burn to CD"
@@ -1280,63 +1267,63 @@ msgstr "Keine lokale Hilfe"
#: HelpText.cpp:148
msgid "</p><center><h3>Getting Started</h3></center><br>"
-msgstr ""
+msgstr "</p><center><h3>Herzlich Willkommen!</h3></center><br>"
#: HelpText.cpp:150
msgid "Welcome to Audacity "
-msgstr ""
+msgstr "Hallo bei Audacity "
#: HelpText.cpp:151
msgid "Learn how to: <ul><li>[[play|play]] an existing audio file <li>[[record|record]] your voice, LP or tape <li>[[edit|edit]] sounds <li>[[save|save or open an Audacity project]] <li>[[export|export]] to an MP3 or other audio file, or [[burncd|burn to a CD]] </ul></p><p>"
-msgstr ""
+msgstr "Mit Audacity können Sie: <ul><li>Audiodateien [[play|abspielen]] <li>[[record|Aufnahmen erstellen]] von Mikrofon, Plattenspieler oder Kassetten <li>Töne [[edit|bearbeiten]] <li>Projekte [[save|speichern und wieder öffnen]] <li>Töne [[export|exportieren]] in MP3- oder andere Audiodateien oder auch [[burncd|eine CD brennen]] </ul></p><p>"
#: HelpText.cpp:159
msgid "This screen can be viewed at any time by clicking the <i>Help</i> menu, then <i>Show Welcome Message</i>. For a detailed guide to all the Audacity menus and controls, click <i>Help</i> menu then <i>Index</i>, or download our <a href=\"http://audacity.sourceforge.net/help/documentation/manual_1.4.pdf\">full Manual</a> in PDF format.</p>"
-msgstr ""
+msgstr "(Dieser Text kann jederzeit angezeigt werden über das Menü <i>Hilfe: Begrüßungsbildschirm anzeigen</i>. Ausführliche Hinweise zu allen Menüs und Buttons über <i>Hilfe</i>: <i>Index</i> oder als <a href=\"http://audacity.sourceforge.net/help/documentation/manual_1.4.pdf\">PDF-Download</a>.</p>)"
#: HelpText.cpp:172
msgid "<p><b>Opening audio files:</b> Either drag the files into the current project window, or click <i>File > Import > Audio</i>. Files can be opened into a new project window with <i>File > Open</i>. The main formats Audacity plays are <b>AIFF, AU, FLAC, M4A</b> (only on a Mac), <b>MP2/MP3, OGG Vorbis</b> and <b>WAV</b>. Click [[wma-proprietary|here]] if your file is in some other format. <b>To import a CD:</b> extract it to WAV or AIFF using iTunes, Windows Media Player 11 or similar. See our online guide: [[wiki:How_to_import_CDs|importing CDs]].</p><p> <p><b>Playing audio:</b> Press the green Play button to start playback. Press the blue Pause button once to pause playback, and again to resume. To stop, press the yellow Stop button. Spacebar can be used to either play or stop. After stopping, playback resumes from its last starting point. To change the starting point, click in the track at your desired starting point. The <b>|<<</b> and <b>>>|</b> buttons can be used to skip to the start or end of the track respectively. </p><br><br>"
-msgstr ""
+msgstr "<p><b>Audio-Dateien öffnen:</ b> Entweder ziehen Sie die Dateien in das aktuelle Projekt-Fenster, oder klicken Sie auf <i>Datei > Importieren > Audio</ i>. Dateien können in einem weiteren Projekt-Fenster geöffnet werden mit <i> Datei > Öffnen</ i>. Die wichtigsten Formate, die Audacity spielt, sind <b>AIFF, AU, FLAC, M4A </ b> (letzteres zunächst nur auf dem Mac), <b> MP2/MP3, Ogg-Vorbis</ b> und <b> WAV</ b>. Klicken Sie [[wma-proprietary|hier]], wenn Sie eine Datei in einem anderen Format haben. <b> Um eine CD zu importieren </ b> lesen Sie sie zunächst mit einem CD-Grabber in ein unterstütztes Format aus. Schauen Sie auch in unseren Online-Ratgeber: [[wiki:How_to_import_CDs|CDs importieren]].</ p> <p> Audio wiedergeben:</ b> Drücken Sie die grüne Play-Taste um die Wiedergabe zu starten. Drücken Sie die blaue Pause-Taste, um die Wiedergabe anzuhalten bzw. fortzusetzen. Stopp mit der gelben Taste Stopp. Leertaste für Wiedergabe und Stopp. Bei Stopp springt der Cursor zum letzten Ausgangspunkt. Um den Ausgangspunkt zu ändern klicken Sie in der Spur an Ihren gewünschten Ausgangspunkt. Die Knöpfe <b>|<<</b> and <b>>>|</b> können verwendet werden, um zum Anfang bzw. Ende der Spur zu springen.</p><br><br>"
#: HelpText.cpp:194
msgid "<p><b>To record:</b> Set the recording device and input source, adjust the input level, then press the red Record button.</b></p><p> 1) [[inputdevice|Set Recording Device]] either in the <i>Audio I/O tab of Preferences</i> or in <i>Device Toolbar</i>. Audio I/O Preferences lets you choose stereo recording if required.<br> 2) [[inputsource|Set input source]] for that device (for example, microphone or line-in) in the dropdown selector of the <i>Mixer Toolbar</i>, or (on some systems) at Recording Device in the <i>Audio I/O tab of Preferences</i> or in <i>Device Toolbar</i>.<br> 3) [[inputlevel|Adjust input level]] using the right-hand slider on the <i>Mixer Toolbar</i>. Correct adjustment of level before recording is essential to avoid noise or distortion. </p><p> More help at: \"Recording\" <a href=\"http://audacity.sourceforge.net/help/faq\">FAQs</a>, our Tutorial <a href=\"http://www.audacityteam.org/manual/index.php?title=Tutorial_-_Your_First_Recording\"> Your First Recording</a> in the <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">Manual</a>, and our Wiki [[wiki:Recording_Tips|Recording Tips]] and [[wiki:Troubleshooting_Recordings|Troubleshooting Recordings]] pages. </p><br><br>"
-msgstr ""
+msgstr "<p><b>Aufnahme:</ b> Stellen Sie Soundkarte, Input-Quelle und den Eingangspegel ein und drücken Sie dann auf den roten Aufnahme-Knopf.</ b> </ p><p> 1) [[inputdevice|Soundkarte]] entweder in den Einstellungen <i> Audio E/A-Registerkarte </ i> oder in der <i>Werkzeugleiste Aufnahmegeräte</ i>. Dort können Sie ggf. wählen zwischen Mono- und Stereo-Aufnahmen.<br> 2) [[inputsource| Input-Quelle]] für diese Soundkarte (zum Beispiel Mikrofon oder Line-in) in der Dropdown-Liste der <i>Werkzeugleiste Pegelregler</ i> oder (auf manchen Systemen) auf der Registerkarte <i> Audio E/A</ i> bzw. in der<i> Werkzeugleiste Aufnahmegeräte</ i>. <br> 3) Der [[inputlevel|Eingangspegel]] muss mit dem Schieberegler der<i> Werkzeugleiste Pegelregler</ i> eingestellt werden, die korrekte Einstellung vor der Aufnahme ist wesentlich zur Vermeidung von Rauschen oder Verzerrungen. </ p> Mehr Hilfe in der \"Aufnahme\" <a href=\"http://audacity.sourceforge.net/help/faq\">-FAQ </a> sowie unserem Tutorial <a href = \"http://www.audacityteam.org/manual/index.php?title=Tutorial_-_Your_First_Recording \"> Ihre erste Aufnahme </a> in dem <a href = \"http://www.audacityteam.org / manual / index.php? main_page title = \"> Handbuch </a>. Siehe auch unser Wiki [[wiki: Recording_Tips| Aufnahme-Tipps]] und [[wiki: Troubleshooting_Recordings | Fehlerbehebung]]. </p> <br><br>"
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
-msgstr ""
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgstr "<p>Sie nehmen mit einer Soundkarte auf, die Sie unter \"Aufnahmegerät\" auf der Registerkarte <i>Audio E/A in den Einstellungen </i>. Unter WIndows und Linux liegen die Einstellungen ganz unten im Menü <i>Bearbeiten</i>. Auf dem Mac liegen sie im Menü <i>Audacity</i>.Sie können das Aufnahmegerät ebenfalls wählen in der entsprechenden Werkzeugleiste, die aktiviert werden kann über <i>Ansicht > Werkzeugleistern...</i>. </p><p>Standardmäßig verwendet Audacity die System-Soundkarte (oft die im Rechner eingebaute), deshalb muss der Soundeingang meist nicht umgestellt werden. Unter Windows kann die System-Soundkarte ausgewählt werden als \"Microsoft-Sound-Mapper\". Wenn Sie mit einer externen USB- oder Firewire-Soundkarte (z. B. von einem USB-Plattenspieler) aufnehmen wählen Sie sie - nachdem Sie sie angeschlossen haben - bitte explizit aus über ihren Geräte-Name. </p><p> Zurück auf [[record|Recording Audio]] <br></p>"
#: HelpText.cpp:244
msgid "<p>Select the input source (such as microphone or line-in) for your [[inputdevice|recording device]]:<br> - <b>On Windows (except Vista)</b> and <b>Linux</b>, in the dropdown selector on the right of the <i>Mixer Toolbar</i>.<br> - <b>On Windows Vista</b> and <b>Mac</b>, at Recording Device on the <i>Audio I/O tab of Preferences</i>, or in <i>Device Toolbar</i>. The source will be shown as part of the parent device (for example, <i>High Def Audio Card: Microphone</i>). If necessary, Mac users can choose the input source at Apple Audio MIDI Setup. <br><i><b>Note:</b> many USB or Firewire recording devices don't have a choice of inputs, so this step is not necessary. If in doubt, see the documentation for your device. </i></p><p> <b>Tip:</b> To <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record audio playing on the computer</a>, Windows and Linux users can choose the \"Stereo Mix\", \"Wave Out\", \"Sum\" or comparable input source. </p><p> Back to [[record|Recording Audio]] <br></p>"
-msgstr ""
+msgstr "<p>Wählen Sie die Eingangs-Quelle (etwa Mikrofon oder Line-in) ihrer [[inputdevice|recording device]]:<br> - <b>Unter Windows (außer Vista)</b> und <b>Linux</b> rechts des <i>Mixer-Werkzeugs</i> in der Dropdown-Liste. <br> - <b>Unter Windows Vista</b> und <b>auf dem Mac</b> unter Recording Device auf der <i>Registerkarte Audio E/A in den Einstellungen</i>, oder in der <i>Soundkarten-Registerkarte</i>. Die Quelle wird angezeigt als Teil des Aufnahmegeräts (zum Beispiel <i>Soundkarte xy: Mikrofon</i>). Falls nötig können Mac-NutzerInnen die Eingangs-Quelle auswählen unter dem Apple Audio-MIDI-Setup. <br><i><b>Hinweis:</b> Viele USB- oder Firewire-Soundkarten bieten nicht die Möglichkeit der Auswahl, dann ist dieser Schritt natürlich nicht nötig. Schauen Sie im Zweifelsfall in die Dokumentation ihrer Soundkarte. </i></p><p> <b>Tipp:</b> Um <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">Audio aufzunehmen, das der Computer gerade wiedergibt</a>, können Windows- und Linux-Nutzer \"Stereo Mix\", \"Wave Out\", \"Summe\" oder ähnliche Eingangs-Quellen auswählen.</p><p> Zurück zu [[record|Recording Audio]] <br></p>"
#: HelpText.cpp:267
msgid "<p>The input level must be set correctly. If the level is too low, there will be background noise. If the level is too high, there will be distortion in the loud parts. </p><p>To set the level, either see this [[wiki:Recording_levels|illustrated online guide]] or follow these steps: <ol><li>Turn on <b>monitoring</b>. Double-click the right-hand of the two <i>VU Meters</i> (or right-click over it) and click \"Start Monitoring\". If the meters are not visible, click <i>View > Toolbars</i> and check \"Meter Toolbar\". </li><li>Adjust the input slider on the <i>Mixer Toolbar</i> (by the microphone symbol), so that the red bars in the meter come close to <b>but do not touch</b> the right edge of the scale. If you can't hear the monitored audio, go to the <i>Audio I/O tab of Preferences</i> and check \"Software Playthrough\". </li></ol></p><p> Back to [[record|Recording Audio]] <br></p>"
-msgstr ""
+msgstr "<p>Der Eingangs-Pegel muss korrekt eingestellt werden. Ist er zu niedrig gewählt werden Störgeräusche der Soundkarte hörbar. Ist er zu hoch gewählt, steigt der Klirrfaktor (\"Verzerrungen\") bei den lauten Passagen. </p><p>Um den Pegel einzustellen, schauen Sie entweder auf [[wiki:Recording_levels|illustrated online guide]] oder folgen Sie diesen Schritten: <ol><li>Aktivieren Sie die <b>Pegelanzeige</b> durch Doppelklick auf die rechte der beiden <i>Anzeigen</i> (oder Rechtsklick darauf und \"Start Monitoring\"). Falls die Anzeigen nicht sichtbar sind, klicken Sie auf <i>Ansicht > Werkzeuge</i> und aktivieren Sie \"Aussteuerungs-Anzeige\". </li><li>Stellen Sie die Eingangs-Regler der <i>Mixer-Toolbar</i> ein (bei dem Mikrofon-Symbol), so dass die roten Balken der Anzeige nur sporadisch aufleuchten, den rechten Rand der Anzeige jedoch <b>nie berühren</b>. Wenn Sie Ihr aufgenommenes Audio nicht hören aktivieren Sie \"Software Playthrough\" in der Registerkarte <i>Einstellungen > Audio E/A</i>. </li></ol></p><p> Zurück zu [[record|Recording Audio]] <br></p>"
#: HelpText.cpp:292
msgid "<p>The main commands for editing audio are under the <i>Edit</i> menu (such as cut, copy and paste) and the <i>Effect</i> menu (you can do things like boost the bass, change pitch or tempo, or remove noise). </p><p> Audacity applies edits to selected areas of the audio track. To select a particular area, click in the track and drag the shaded area with the mouse. If no audio is selected, Audacity selects all the audio in the project window.</p><p> When playing or recording, the Edit and Effect menus will appear greyed out, because a moving track can't be edited. Commands can sometimes be unavailable for other reasons too. For example, you can't run effects until you have audio on the screen, and you can't paste audio until you've cut or copied it to Audacity's clipboard. </p><br><br>"
-msgstr ""
+msgstr "<p>Die meisten Befehle für die Audiobearbeitung finden Sie im Menü <i>Bearbeiten</i> (etwa Ausschneiden, Kopieren, Einfügen) sowie <i>Effekte</i> (hier etwa Bass-Anhebung, Tonhöhe- oder Tempo-Änderung oder Rauschentfernung). </p><p>Audacity nimmt Änderungen an ausgewählten Bereichen der Audio-Spuren vor. Um einen bestimmten Bereich auszuwählen gehen Sie in die Spur und ziehen einen schattierten Bereich mit der Maus auf.</p><p>Während Wiedergabe und Aufnahme sind viele Menüs nicht gleichzeitig bedienbar und deshalb ausgegraut, das gilt auch für den Fall, dass die Pause-Taste gedrückt ist. </p><br><br>"
#: HelpText.cpp:311
msgid "<p>To return later to your unfinished work in Audacity with all tracks and edits as you left them, save an Audacity project. To play your current work in other media programs or send it to others, [[export|export]] an audio file such as WAV or MP3. </p><p> <i>File > Save Project</i> saves an <b>.aup</b> project file and a <b>_data</b> folder containing the actual audio. To re-open a saved project, click <i>File > Open</i> and open the .aup file. If you save and exit more than once, an .aup.bak backup file is created, but the .aup file should always be opened if present. When your final exported file is exactly as you want, delete the project files and _data folder to save disc space. </p><p><i>File > Save Project As...</i> is for saving an empty project. It also lets you save an existing Project to a <b> new</b> name. This is the only safe way to rename a project. The .aup file and _data folder should not be moved or renamed manually. </p><p>"
-msgstr ""
+msgstr "<p>Um zu einem späteren Zeitpunkt an einem unfertigen Audacity-Projekt weiterzuarbeiten speichern Sie es als Audacity-Projekt. Um Ihr Projekt hingegen in anderen Programmen abzuspielen müssen Sie es zunächst [[export|exportieren]] als Audio-Datei, z.B. als WAV oder MP3. </p><p> <i>Datei > Projekt speichern</i> erzeugt eine <b>.aup</b>-Projekt-Datei und einen <b>_data</b>-Ordner, der das aktuelle Audio enthält. Um ein gespeichertes Projekt erneut zu öffnen klicken Sie auf <i>Datei > Öffnen</i> und verwenden Sie die .aup-Datei. Wenn Sie mehrfach öffnen und schließen erzeugt Audacity zusätzlich eine Backup-Datei .aup.bak, dennoch sollte immer die .aup-Datei geöffnet werden - sofern sie vorhanden ist. Wenn Ihre Arbeit endgültig fertig ist können Sie .aup-Datei und _data-Verzeichnis löschen um Festplattenplatz zu sparen. </p><p><i>Datei > Projekt speichern als...</i> erlaubt es, ein leeres Projekt zu speichern; außerdem kann hiermit ein vorhandenes Projekt umbenannt werden. Weder .aup-Datei noch _data-Verzeichnis sollten jedoch manuell umbenannt werden. </p><p>"
#: HelpText.cpp:335
msgid "To hear your work in other media programs, export it to an audio file such as WAV or MP3 (some formats are [[wma-proprietary|unsupported]]). [[save|Saving an Audacity project]] creates a project file (and linked _data folder) containing all your edited tracks, so you can return to your work later. However, other programs can't read Audacity projects. </p><p> To export, click <i>File > Export</i> then choose the file format you want to export to in the \"Save as type\" dropdown. To [[burncd|burn a CD]] for standalone CD players, choose WAV or AIFF. To export as MP3, the [[wiki:Lame_Installation|Lame Encoder]] must be installed. </p><p> <i>File > Export Selection</i> exports only a selected area of audio. <i>Use File > Export Multiple</i> to export multiple files at the same time, either one for each audio track, or one for each labeled area in a single track. <i>Tracks > Add Label At Selection</i> lets you [[wiki:Splitting_recordings_into_separate_tracks|split the tracks]] from an album for multiple export as separate files. </p><br><br>"
-msgstr ""
+msgstr "Um Ihre Arbeit in anderen Programmen anzuhören exportieren Sie sie in Audio-Dateien wie WAV oder MP3 (einige Formatewerden zunächst [[wma-proprietary|nicht unterstützt]]). [[save|Saving an Audacity project]] creates a project file (and linked _data folder) containing all your edited tracks, so you can return to your work later. However, other programs can't read Audacity projects. </p><p> To export, click <i>File > Export</i> then choose the file format you want to export to in the \"Save as type\" dropdown. To [[burncd|burn a CD]] for standalone CD players, choose WAV or AIFF. To export as MP3, the [[wiki:Lame_Installation|Lame Encoder]] must be installed. </p><p> <i>File > Export Selection</i> exports only a selected area of audio. <i>Use File > Export Multiple</i> to export multiple files at the same time, either one for each audio track, or one for each labeled area in a single track. <i>Tracks > Add Label At Selection</i> lets you [[wiki:Splitting_recordings_into_separate_tracks|split the tracks]] from an album for multiple export as separate files. </p><br><br>"
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
-msgstr ""
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgstr "<p>Audacity kann <b>leider</b> einige proprietäre Formate nicht [[play|play]] oder [[export|export]] etwa <b>WMA, RealAudio, Shorten (SHN)</b>; Grund sind Lizenz- und Patent-Restriktionen. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
#: HelpText.cpp:383
msgid "<p>To burn your work to an audio CD for standalone CD players, first [[export|export]] it as WAV or AIFF. The exported file should be stereo, 44100 Hz (set in the \"Project Rate\" button bottom left) and 16 bit (set in the \"Options\" button in the file export dialog). These are Audacity's default settings, so normally you will not need to change these before exporting. <p>Burn the exported file to an \"audio CD\" - not a \"data CD\" or \"MP3 CD\" - with a CD burning program like iTunes or Windows Media Player. For more help, see [[wiki:How_to_burn_CDs|How to burn CDs]] online. </p><p>"
-msgstr ""
+msgstr "<p> So brennen Sie Ihre Arbeit auf eine Audio-CD für Standalone-CD-Player: Zunächst [[export|exportieren]] Sie sie als WAV- oder AIFF-Datei. Die exportierte Datei sollte vorliegen in Stereo, Samplefrequenz 44100 Hz (einstellbar in der Liste \"Projekt-Frequenz\" ganz unten links im Audacity-Fenster) und Sampletiefe 16 Bit (im \"Optionen\"-Button im Dialog Datei exportieren). Das sind übrigens die Audacity-Standardeinstellungen.<p> Brennen Sie die exportierte Datei mit einer CD-Brennsoftware zu einer \"Audio-CD\" - nicht etwa \"Daten-CD\" oder \"MP3-CD \". Weitere Hilfe in [[wiki:How_to_burn_CDs|How to burn CDs]] online. </p><p>"
#: HelpText.cpp:403
msgid "<p>Help for Audacity Beta is currently unfinished. For now, a draft manual is available <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">online</a>. Alternatively, click <a href=\"http://www.audacityteam.org/manual/index.php?title=Temporary_HTML_Manual_Export\">here</a> to download a single-page version of the manual which can be viewed in this window."
-msgstr ""
+msgstr "<p> Die Hilfe für Audacity Beta ist leider noch unvollständig. Dennoch steht ein Handbuch-Entwurf unter <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">im Netz</ a>. Alternativ, klicken Sie <a href=\"http://www.audacityteam.org/manual/index.php?title=Temporary_HTML_Manual_Export\">hier</ a>, um eine Ein-Seiten-Version des Handbuchs herunterzuladen, die dann in diesem Fenster angezeigt werden kann. Schließlich gibt es <a href=\"http://www.mediensyndikat.de/20_20.html\">hier</ a> kurze, praxisorientierte Anleitungen in deutscher Sprache. "
#: ../src/HistoryWindow.cpp:53
msgid "Undo History"
@@ -1362,32 +1349,19 @@ msgstr "Schritte, die verworfen werden sollen: "
msgid "&Discard"
msgstr "Verwerfen"
-#: ../src/prefs/FileFormatPrefs.cpp:408
-#: ../src/prefs/PrefsDialog.cpp:164
-#: ../src/effects/VST/VSTEffect.cpp:98
-#: ../src/effects/AutoDuck.cpp:529
-#: ../src/effects/AutoDuck.cpp:531
-#: ../src/effects/Amplify.cpp:214
-#: ../src/effects/Compressor.cpp:519
-#: ../src/effects/Wahwah.cpp:592
-#: ../src/effects/Leveller.cpp:259
-#: ../src/effects/ChangeSpeed.cpp:397
-#: ../src/effects/Repeat.cpp:274
-#: ../src/effects/ladspa/LadspaEffect.cpp:592
-#: ../src/effects/ChangePitch.cpp:399
-#: ../src/effects/ChangeTempo.cpp:301
-#: ../src/effects/Effect.cpp:389
-#: ../src/effects/Effect.cpp:391
-#: ../src/effects/SpikeCleaner.cpp:191
-#: ../src/effects/Phaser.cpp:605
-#: ../src/effects/nyquist/Nyquist.cpp:827
-#: ../src/effects/Normalize.cpp:356
-#: ../src/effects/Equalization.cpp:1169
-#: ../src/effects/ChangeLength.cpp:187
-#: ../src/export/Export.cpp:791
-#: ../src/LabelDialog.cpp:135
-#: ../src/LabelDialog.cpp:137
-#: ../src/HistoryWindow.cpp:111
+#: ../src/prefs/FileFormatPrefs.cpp:408 ../src/prefs/PrefsDialog.cpp:164
+#: ../src/effects/VST/VSTEffect.cpp:98 ../src/effects/AutoDuck.cpp:529
+#: ../src/effects/AutoDuck.cpp:531 ../src/effects/Amplify.cpp:214
+#: ../src/effects/Compressor.cpp:519 ../src/effects/Wahwah.cpp:592
+#: ../src/effects/Leveller.cpp:259 ../src/effects/ChangeSpeed.cpp:397
+#: ../src/effects/Repeat.cpp:274 ../src/effects/ladspa/LadspaEffect.cpp:592
+#: ../src/effects/ChangePitch.cpp:399 ../src/effects/ChangeTempo.cpp:301
+#: ../src/effects/Effect.cpp:389 ../src/effects/Effect.cpp:391
+#: ../src/effects/SpikeCleaner.cpp:191 ../src/effects/Phaser.cpp:605
+#: ../src/effects/nyquist/Nyquist.cpp:827 ../src/effects/Normalize.cpp:356
+#: ../src/effects/Equalization.cpp:1169 ../src/effects/ChangeLength.cpp:187
+#: ../src/export/Export.cpp:791 ../src/LabelDialog.cpp:135
+#: ../src/LabelDialog.cpp:137 ../src/HistoryWindow.cpp:111
msgid "&OK"
msgstr "&OK"
@@ -1411,13 +1385,19 @@ msgstr "MB"
msgid "GB"
msgstr "GB"
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
#: ../src/LabelDialog.cpp:50
msgid "Track"
msgstr "Spur"
-#: ../src/Menus.cpp:4046
-#: ../src/Menus.cpp:4074
-#: ../src/LabelDialog.cpp:51
+#: ../src/Menus.cpp:4046 ../src/Menus.cpp:4074 ../src/LabelDialog.cpp:51
msgid "Label"
msgstr "Textmarke"
@@ -1436,7 +1416,7 @@ msgstr "Te&xtmarken bearbeiten..."
#: ../src/LabelDialog.cpp:113
msgid "Press F2 or double click to edit cell contents."
-msgstr "F2 drücken oder Doppelklick um Zelleninhalt zu bearbeiten"
+msgstr "Um Zelleninhalt zu bearbeiten Doppelklick oder F2 drücken"
#: ../src/LabelDialog.cpp:124
msgid "Insert &After"
@@ -1446,8 +1426,7 @@ msgstr "Danach einf
msgid "Insert &Before"
msgstr "Da&vor einfügen"
-#: ../src/Menus.cpp:222
-#: ../src/LabelDialog.cpp:127
+#: ../src/Menus.cpp:222 ../src/LabelDialog.cpp:127
msgid "&Import..."
msgstr "&Importieren..."
@@ -1465,27 +1444,21 @@ msgstr "Es gibt noch leere Textfelder. Diese werden\n"
"\n"
"Wollen Sie doch noch Namen vergeben?"
-#: ../src/UploadDialog.cpp:449
-#: ../src/UploadDialog.cpp:515
+#: ../src/UploadDialog.cpp:449 ../src/UploadDialog.cpp:515
#: ../src/LabelDialog.cpp:350
msgid "Confirm"
msgstr "Bestätigen"
-#: ../src/Menus.cpp:3539
-#: ../src/LabelDialog.cpp:505
+#: ../src/Menus.cpp:3539 ../src/LabelDialog.cpp:505
msgid "Select a text file containing labels..."
msgstr "Textdatei mit Textmarken auswählen..."
-#: ../src/Menus.cpp:3543
-#: ../src/LabelDialog.cpp:509
+#: ../src/Menus.cpp:3543 ../src/LabelDialog.cpp:509
msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
msgstr "Textdateien (*.txt)|*.txt|Alle Dateien (*.*)|*.*"
-#: ../src/import/ImportMIDI.cpp:31
-#: ../src/Menus.cpp:3555
-#: ../src/Project.cpp:1570
-#: ../src/Project.cpp:1578
-#: ../src/LabelDialog.cpp:523
+#: ../src/import/ImportMIDI.cpp:31 ../src/Menus.cpp:3555
+#: ../src/Project.cpp:1570 ../src/Project.cpp:1578 ../src/LabelDialog.cpp:523
msgid "Could not open file: "
msgstr "Konnte Datei nicht öffnen:"
@@ -1493,13 +1466,11 @@ msgstr "Konnte Datei nicht
msgid "No labels to export."
msgstr "Keine Textmarkierungen zu exportieren."
-#: ../src/Menus.cpp:2132
-#: ../src/LabelDialog.cpp:555
+#: ../src/Menus.cpp:2132 ../src/LabelDialog.cpp:555
msgid "Export Labels As:"
msgstr "Textspur(en) exportieren als:"
-#: ../src/Menus.cpp:2130
-#: ../src/LabelDialog.cpp:557
+#: ../src/Menus.cpp:2130 ../src/LabelDialog.cpp:557
msgid "labels.txt"
msgstr "labels.txt"
@@ -1538,29 +1509,21 @@ msgstr "
msgid "&File"
msgstr "&Datei"
-#: ../src/Menus.cpp:188
-msgid "&New\tCtrl+N"
-msgstr "&Neu\tCtrl+N"
-
-#: ../src/Menus.cpp:190
-msgid "&Open...\tCtrl+O"
-msgstr "&Öffnen...\tCtrl+O"
-
#: ../src/Menus.cpp:201
-msgid "&Close\tCtrl+W"
-msgstr "Schlie&ßen\tCtrl+W"
+msgid "&Close"
+msgstr "Schlie&ßen"
#: ../src/Menus.cpp:204
-msgid "&Save Project\tCtrl+S"
-msgstr "Projekt &speichern\tCtrl+S"
+msgid "&Save Project"
+msgstr "Projekt &speichern"
#: ../src/Menus.cpp:208
msgid "Save Project &As..."
-msgstr "Projekt speichern &unter...\tCtrl+Shift+S"
+msgstr "Projekt speichern &unter..."
#: Menus.cpp:212
msgid "Save Compressed Copy of Project..."
-msgstr ""
+msgstr "Projekt komprimiert speichern..."
#: ../src/Menus.cpp:211
msgid "Chec&k Dependencies..."
@@ -1570,13 +1533,14 @@ msgstr "Abh
msgid "Open Me&tadata Editor..."
msgstr "Metadaten-Editor..."
+# &
#: import/ImportRaw.cpp:447
msgid "&Import"
-msgstr ""
+msgstr "&Import"
#: ../src/Menus.cpp:224
-msgid "&Audio...\tCtrl+Shift+I"
-msgstr "&Audio...\tCtrl+Shift+I"
+msgid "&Audio..."
+msgstr "&Audio..."
#: ../src/Menus.cpp:225
msgid "&Labels..."
@@ -1590,8 +1554,7 @@ msgstr "&MIDI..."
msgid "&Raw Data..."
msgstr "&Rohdaten..."
-#: Menus.cpp:208
-#: Menus.cpp:237
+#: Menus.cpp:208 Menus.cpp:237
msgid "Expo&rt Selection..."
msgstr "Auswahl exportieren..."
@@ -1605,28 +1568,23 @@ msgstr "Mehrere Dateien ex&portieren..."
#: Menus.cpp:257
msgid "Export MIDI..."
-msgstr ""
+msgstr "MIDI exportieren..."
-#: Menus.cpp:290
-msgid "CleanSpeech C&hain..."
-msgstr ""
+#: ../src/Menus.cpp:340
+msgid "Appl&y Chain..."
+msgstr "Stapel&verarbeitung anwenden..."
-#: ../src/Menus.cpp:328
-#: ../src/Menus.cpp:342
+#: ../src/Menus.cpp:328 ../src/Menus.cpp:342
msgid "Edit C&hains..."
msgstr "Stapel&verarbeitung bearbeiten..."
#: Menus.cpp:292
msgid "Export CleanSpeech &Presets..."
-msgstr ""
+msgstr "CleanSpeech &Presets exportieren..."
#: Menus.cpp:293
msgid "I&mport CleanSpeech Presets..."
-msgstr ""
-
-#: ../src/Menus.cpp:340
-msgid "Appl&y Chain..."
-msgstr "Stapel&verarbeitung anwenden..."
+msgstr "CleanSpeech-Voreinstellungen i&mportieren..."
#: ../src/Menus.cpp:346
msgid "&Upload File..."
@@ -1640,157 +1598,143 @@ msgstr "Seite ein&richten..."
msgid "&Print..."
msgstr "&Drucken..."
-#: ../src/Menus.cpp:370
-#: ../src/Menus.cpp:373
-msgid "E&xit\tCtrl+Q"
-msgstr "&Beenden\tCtrl+Q"
+#: ../src/Menus.cpp:370 ../src/Menus.cpp:373
+msgid "E&xit"
+msgstr "&Beenden"
#: ../src/Menus.cpp:382
msgid "&Edit"
msgstr "&Bearbeiten"
#: ../src/Menus.cpp:386
-msgid "&Undo\tCtrl+Z"
-msgstr "&Rückgängig\tCtrl+Z"
+msgid "&Undo"
+msgstr "&Rückgängig"
#: ../src/Menus.cpp:394
msgid "&Redo"
msgstr "Wieder&holen"
#: ../src/Menus.cpp:407
-msgid "Cu&t\tCtrl+X"
-msgstr "&Ausschneiden\tCtrl+X"
+msgid "Cu&t"
+msgstr "&Ausschneiden"
#: ../src/Menus.cpp:408
-msgid "Spl&it Cut\tCtrl+Alt+X"
-msgstr "A&usschneiden und trennen\tCtrl+Alt+X"
+msgid "Spl&it Cut"
+msgstr "A&usschneiden und trennen"
#: ../src/Menus.cpp:409
-msgid "&Copy\tCtrl+C"
-msgstr "&Kopieren\tCtrl+C"
+msgid "&Copy"
+msgstr "&Kopieren"
#: ../src/Menus.cpp:410
-msgid "&Paste\tCtrl+V"
-msgstr "&Einfügen\tCtrl+V"
+msgid "&Paste"
+msgstr "&Einfügen"
#: ../src/Menus.cpp:414
-msgid "Tri&m\tCtrl+T"
-msgstr "Trimmen (&umgekehrt löschen)\tCtrl+T"
+msgid "Tri&m"
+msgstr "Trimmen (&umgekehrt löschen)"
#: ../src/Menus.cpp:416
-msgid "&Delete\tCtrl+K"
-msgstr "&Löschen\tCtrl+K"
+msgid "&Delete"
+msgstr "&Löschen"
#: ../src/Menus.cpp:417
-msgid "Split D&elete\tCtrl+Alt+K"
-msgstr "L&öschen und trennen\tCtrl+Alt+K"
+msgid "Split D&elete"
+msgstr "L&öschen und trennen"
#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
-msgstr ""
+msgid "Silence Audi&o"
+msgstr "Auswa&hl in Stille umwandeln"
#: ../src/Menus.cpp:420
-msgid "Sp&lit\tCtrl+I"
-msgstr "&Clip trennen\tCtrl+I"
+msgid "Sp&lit"
+msgstr "&Clip trennen"
#: Menus.cpp:443
-msgid "Split Ne&w\tCtrl+Alt+I"
-msgstr "In neue T&onspur verschieben\tCtrl+Alt+I"
+msgid "Split Ne&w"
+msgstr "In neue T&onspur verschieben"
#: ../src/Menus.cpp:430
-msgid "&Join\tCtrl+J"
-msgstr "Cl&ips verbinden\tCtrl+J"
+msgid "&Join"
+msgstr "Cl&ips verbinden"
#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
-msgstr ""
+msgid "Detac&h at Silences"
+msgstr "&Bei Stille trennen"
#: ../src/Menus.cpp:433
-msgid "Duplic&ate\tCtrl+D"
-msgstr "In neue T&onspur kopieren\tCtrl+D"
+msgid "Duplic&ate"
+msgstr "In neue T&onspur kopieren"
#: Menus.cpp:400 Menus.cpp:639
msgid "Stereo Trac&k to Mono"
-msgstr ""
+msgstr "Stereospur in &Mono umwandeln"
#: Menus.cpp:407
msgid "La&beled Regions"
-msgstr ""
+msgstr "Ausw&ahl in Textspur"
#: ../src/Menus.cpp:447
-msgid "&Cut\tAlt+X"
-msgstr "&Ausschneiden\tAlt+X"
+msgid "&Cut"
+msgstr "&Ausschneiden"
#: ../src/Menus.cpp:451
-msgid "&Split Cut\tShift+Alt+X"
-msgstr "A&usschneiden und Clip trennen\tShift+Alt+X"
+msgid "&Split Cut"
+msgstr "A&usschneiden und Clip trennen"
#: ../src/Menus.cpp:455
-msgid "Co&py\tShift+Alt+C"
-msgstr "Kopieren\tShift+Alt+C"
-
-#: ../src/Menus.cpp:460
-msgid "&Delete\tAlt+K"
-msgstr "Löschen\tAlt+K"
+msgid "Co&py"
+msgstr "Kopieren"
#: ../src/Menus.cpp:464
-msgid "Sp&lit Delete\tShift+Alt+K"
-msgstr "Trennen und löschen\tShift+Alt+K"
+msgid "Sp&lit Delete"
+msgstr "Trennen und löschen"
#: ../src/Menus.cpp:468
-msgid "Sile&nce\tAlt+L"
-msgstr "In Stille umwandeln\tAlt+L"
+msgid "Sile&nce"
+msgstr "In Stille umwandeln"
#: ../src/Menus.cpp:473
-msgid "Spli&t\tAlt+I"
-msgstr "Au&sschneiden und Clip trennen\tAlt+I"
-
-#: ../src/Menus.cpp:477
-msgid "&Join\tAlt+J"
-msgstr "Clips &verbinden\tAlt+J"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
-msgstr ""
+msgid "Spli&t"
+msgstr "Au&sschneiden und Clip trennen"
#: Menus.cpp:456
msgid "&Select"
-msgstr ""
+msgstr "Ausw&ählen"
#: ../src/Menus.cpp:488
-msgid "&All\tCtrl+A"
-msgstr "&Alles\tCtrl+A"
+msgid "&All"
+msgstr "&Alles"
#: Menus.cpp:415
-msgid "&None\tCtrl+Shift+A"
-msgstr "&Nichts\tCtrl+Shift+A"
+msgid "&None"
+msgstr "&Nichts"
#: Menus.cpp:462
#, fuzzy
-msgid "&Left at Playback Position\t["
-msgstr "&Links vom Cursor bis...\t["
+msgid "&Left at Playback Position"
+msgstr "&Links vom Cursor bis..."
#: Menus.cpp:463
#, fuzzy
-msgid "&Right at Playback Position\t]"
-msgstr "&Rechts vom Cursor bis...\t]"
+msgid "&Right at Playback Position"
+msgstr "&Rechts vom Cursor bis..."
#: Menus.cpp:467
-msgid "Track &Start to Cursor\tShift+J"
-msgstr ""
+msgid "Track &Start to Cursor"
+msgstr "Spuranfang bis Cursor"
#: Menus.cpp:468
-msgid "Cursor to Track &End\tShift+K"
-msgstr ""
+msgid "Cursor to Track &End"
+msgstr "Cursor bis Spur&ende"
#: ../src/Menus.cpp:504
-msgid "Find &Zero Crossings\tZ"
-msgstr "Null&durchgang finden\tZ"
+msgid "Find &Zero Crossings"
+msgstr "Null&durchgang finden"
#: Menus.cpp:476
msgid "Mo&ve Cursor"
-msgstr ""
+msgstr "Cursor &verschieben"
#: Menus.cpp:478
#, fuzzy
@@ -1803,98 +1747,76 @@ msgid "to Selection En&d"
msgstr "Ans &Ende der Auswahl"
#: Menus.cpp:483
-msgid "to Track &Start\tJ"
-msgstr ""
+msgid "to Track &Start"
+msgstr "Zum Spur-&Anfang"
#: Menus.cpp:484
-msgid "to Track &End\tK"
-msgstr ""
+msgid "to Track &End"
+msgstr "Zum Spur-&Ende"
#: Menus.cpp:491
msgid "Re&gion Save"
-msgstr ""
+msgstr "Auswahl/Markierung s&peichern"
#: Menus.cpp:492
msgid "Regio&n Restore"
-msgstr ""
+msgstr "Auswahl/Markierung &wiederherstellen"
#: Menus.cpp:503
msgid "Pla&y Region"
-msgstr ""
+msgstr "Einraste&n"
#: Menus.cpp:504
msgid "&Lock"
-msgstr ""
+msgstr "An"
#: Menus.cpp:505
msgid "&Unlock"
-msgstr ""
-
-#: ../src/Menus.cpp:546
-msgid "Turn Snap-To On"
-msgstr "Einrasten aktivieren"
-
-#: ../src/Menus.cpp:547
-msgid "Turn Snap-To Off"
-msgstr "Einrasten deaktivieren"
-
-#: ../src/Menus.cpp:548
-msgid "Turn Grid Snap On"
-msgstr "Einrasten am Gitter aktivieren"
+msgstr "Aus"
-#: ../src/Menus.cpp:549
-msgid "Turn Grid Snap Off"
-msgstr "Einrasten am Gitter deaktivieren"
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr ""
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
-msgstr ""
+msgid "Pre&ferences..."
+msgstr "Ein&stellungen..."
#: ../src/Menus.cpp:568
msgid "&View"
msgstr "&Ansicht"
#: ../src/Menus.cpp:570
-msgid "Zoom &In\tCtrl+1"
-msgstr "&Einzoomen - Vergrößern\tCtrl+1"
+msgid "Zoom &In"
+msgstr "&Einzoomen - Vergrößern"
#: ../src/Menus.cpp:573
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "&Kein Zoom - Normal\tCtrl+2"
+msgid "Zoom &Normal"
+msgstr "&Kein Zoom - Normal"
#: ../src/Menus.cpp:574
-msgid "Zoom &Out\tCtrl+3"
-msgstr "&Auszoomen - Verkleinern\tCtrl+3"
+msgid "Zoom &Out"
+msgstr "&Auszoomen - Verkleinern"
#: ../src/Menus.cpp:577
-msgid "&Fit in Window\tCtrl+F"
-msgstr "&Projekt ins Fenster einpassen\tCtrl+F"
+msgid "&Fit in Window"
+msgstr "&Projekt ins Fenster einpassen"
#: ../src/Menus.cpp:578
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "&Spuren vertikal einpassen\tCtrl+Shift+F"
+msgid "Fit &Vertically"
+msgstr "&Spuren vertikal einpassen"
#: ../src/Menus.cpp:579
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "A&uswahl ins Fenster einpassen\tCtrl+E"
+msgid "&Zoom to Selection"
+msgstr "A&uswahl ins Fenster einpassen"
#: ../src/Menus.cpp:582
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
-msgstr "Spuren &zusammenfalten\tCtrl+Shift+C"
+msgid "&Collapse All Tracks"
+msgstr "Spuren &zusammenfalten"
#: ../src/Menus.cpp:583
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
-msgstr "Spuren au&seinanderfalten\tCtrl+Shift+X"
+msgid "E&xpand All Tracks"
+msgstr "Spuren au&seinanderfalten"
#: Menus.cpp:551
-#, fuzzy
msgid "&Show Clipping"
-msgstr "Übersteuerungen anzeigen"
+msgstr "&Übersteuerungen anzeigen"
#: ../src/Menus.cpp:591
msgid "&History..."
@@ -1902,114 +1824,105 @@ msgstr "&Verlauf..."
#: Menus.cpp:566
msgid "&Toolbars"
-msgstr ""
+msgstr "&Werkzeugleisten"
#: Menus.cpp:567
-#, fuzzy
msgid "&Control Toolbar"
-msgstr "Wiedergabewerkzeuge"
+msgstr "&Wiedergabewerkzeuge"
#: Menus.cpp:568
-#, fuzzy
msgid "&Device Toolbar"
-msgstr "Aufnahmegeräte"
+msgstr "Au&fnahmegeräte"
#: Menus.cpp:569
-#, fuzzy
msgid "&Edit Toolbar"
-msgstr "Bearbeitungswerkzeuge"
+msgstr "&Bearbeitungswerkzeuge"
#: Menus.cpp:570
-#, fuzzy
msgid "&Meter Toolbar"
-msgstr "Aussteuerungsanzeige"
+msgstr "&Aussteuerungsanzeige"
#: Menus.cpp:571
-#, fuzzy
msgid "Mi&xer Toolbar"
-msgstr "Pegelregler"
+msgstr "&Pegelregler"
#: Menus.cpp:572
-#, fuzzy
msgid "&Selection Toolbar"
-msgstr "Zeit-/Projektfrequenzleiste"
+msgstr "&Leiste mit Projektfrequenz-/Zeitanzeige"
#: Menus.cpp:573
-#, fuzzy
msgid "T&ools Toolbar"
-msgstr "Kontrollwerkzeuge"
+msgstr "&Kontrollwerkzeuge"
#: Menus.cpp:574
-#, fuzzy
msgid "Transcri&ption Toolbar"
-msgstr "Transkriptionswerkzeug"
+msgstr "&Transkribierwerkzeug"
#: Menus.cpp:576
-#, fuzzy
msgid "&Reset Toolbars"
-msgstr "Werkzeugleisten zurücksetzen"
+msgstr "&Werkzeugleisten zurücksetzen"
#: Menus.cpp:578
msgid "!Simplified View"
-msgstr ""
+msgstr "!Vereinfachte Ansicht"
#. i18n-hint: 'Transport' is the name given to the set of controls that
#. play, record, pause etc.
#: Menus.cpp:587
msgid "T&ransport"
-msgstr ""
+msgstr "&Transport"
#: Menus.cpp:591
-msgid "Play\tSpace"
-msgstr ""
+msgid "Play"
+msgstr "&Wiedergabe"
#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
-msgstr ""
+msgid "&Loop Play"
+msgstr "&Loop-Wiedergabe"
#: Menus.cpp:593
-msgid "&Pause\tP"
-msgstr ""
+msgid "&Pause"
+msgstr "&Pause"
#: Menus.cpp:596
-msgid "&Stop\tSpace"
-msgstr ""
+msgid "&Stop"
+msgstr "&Stopp"
#: ../src/Menus.cpp:854
-msgid "Skip to Start\tHome"
-msgstr "An den Anfang springen\tHome"
+msgid "Skip to Start"
+msgstr "An den Anfang springen"
#: ../src/Menus.cpp:855
-msgid "Skip to End\tEnd"
-msgstr "Ans Ende springen\tEnd"
+msgid "Skip to End"
+msgstr "Ans Ende springen"
#: Menus.cpp:600
-msgid "&Record\tR"
-msgstr ""
+msgid "&Record"
+msgstr "&Aufnahme"
#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
-msgstr ""
+msgid "&Timer Record..."
+msgstr "&Zeitgesteuerte Aufnahme..."
#: Menus.cpp:604
-msgid "Append Record\tShift+R"
-msgstr ""
+msgid "Append Record"
+msgstr "Aufnahme fortsetzen"
#: Menus.cpp:607
msgid "Overdub (on/off)"
-msgstr ""
+msgstr "Playback bei Aufnahme (an/aus)"
#: Menus.cpp:609
msgid "Software Playthrough (on/off)"
-msgstr ""
+msgstr "Software-Playback bei Aufnahme (an/aus)"
#: Menus.cpp:612
msgid "Sound Activated Recording (on/off)"
-msgstr ""
+msgstr "Pegelgesteuerte Aufnahme (on/off)"
#: Menus.cpp:614
msgid "Sound Activation Level..."
-msgstr ""
+msgstr "Einstellung Startpegel..."
#: ../src/Menus.cpp:614
msgid "&Tracks"
@@ -2017,11 +1930,11 @@ msgstr "&Spuren"
#: Menus.cpp:629
msgid "Add &New"
-msgstr ""
+msgstr "&Neue Spur erzeugen"
#: ../src/Menus.cpp:622
-msgid "&Audio Track\tCtrl+Shift+N"
-msgstr "&Monospur\tCtrl+Shift+N"
+msgid "&Audio Track"
+msgstr "&Monospur"
#: ../src/Menus.cpp:623
msgid "&Stereo Track"
@@ -2033,11 +1946,11 @@ msgstr "&Zeitspur"
#: Menus.cpp:643
msgid "Mi&x and Render"
-msgstr ""
+msgstr "Spuren zusammenf&ühren"
#: Menus.cpp:564
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
-msgstr ""
+msgid "Mix and Render to New Track"
+msgstr "In neue Spur zusammenführen"
#: ../src/Menus.cpp:641
msgid "&Resample..."
@@ -2048,84 +1961,80 @@ msgid "Remo&ve Tracks"
msgstr "Spur(en) ent&fernen"
#: Menus.cpp:667
-msgid "&Mute All Tracks\tCtrl+U"
-msgstr ""
+msgid "&Mute All Tracks"
+msgstr "Alle Spuren &stummstellen"
#: Menus.cpp:668
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
-msgstr ""
+msgid "&UnMute All Tracks"
+msgstr "Stummstellen &aufheben"
#: ../src/Menus.cpp:658
msgid "Align with &Zero"
-msgstr "Anfang an &Null ausrichten"
+msgstr "An &Null ausrichten"
#: ../src/Menus.cpp:659
msgid "Align with &Cursor"
-msgstr "Anfang an &Cursor ausrichten"
+msgstr "Am &Cursor ausrichten"
#: ../src/Menus.cpp:660
msgid "Align with Selection &Start"
-msgstr "Anfang an &Anfang der Auswahl ausrichten"
+msgstr "Am &Anfang der Auswahl ausrichten"
#: ../src/Menus.cpp:661
msgid "Align with Selection &End"
-msgstr "Anfang an &Ende der Auswahl ausrichten"
+msgstr "Am &Ende der Auswahl ausrichten"
#: Menus.cpp:676
-#, fuzzy
msgid "Align End with Cu&rsor"
-msgstr "Ende an C&ursor ausrichten"
+msgstr "Ende am C&ursor ausrichten"
#: Menus.cpp:677
-#, fuzzy
msgid "Align End with Selection Star&t"
-msgstr "Ende an An&fang der Auswahl ausrichten"
+msgstr "Ende am An&fang der Auswahl ausrichten"
#: Menus.cpp:678
-#, fuzzy
msgid "Align End with Selection En&d"
-msgstr "Ende an Ende der Aus&wahl ausrichten"
+msgstr "Ende am Ende der Aus&wahl ausrichten"
#: Menus.cpp:679
-#, fuzzy
msgid "Align Tracks To&gether"
msgstr "T&onspuren aneinander ausrichten"
#: Menus.cpp:681
msgid "&Align Tracks"
-msgstr ""
+msgstr "Spuren aus&richten"
#: Menus.cpp:690
msgid "Ali&gn and Move Cursor"
-msgstr ""
+msgstr "Cursor ausr&ichten/bewegen"
#: Menus.cpp:697
msgid "Synchronize MIDI with Audio"
-msgstr ""
+msgstr "MIDI mit Audio synchronisieren"
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
+#: Menus.cpp:686
+msgid "&Link Audio and Label Tracks"
msgstr ""
-#: ../src/Menus.cpp:684
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "Textmarke an Cursor/Auswahl &hinzufügen\tCtrl+B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr ""
#: ../src/Menus.cpp:685
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "Textmarke während &Wiedergabe hinzufügen\tCtrl+M"
+msgid "Add Label At &Playback Position"
+msgstr "Textmarke während &Wiedergabe"
#: Menus.cpp:716
msgid "S&ort tracks"
-msgstr ""
+msgstr "Spuren s&ortieren"
#: Menus.cpp:717
msgid "by &Start time"
-msgstr ""
+msgstr "nach &Startzeit"
#: Menus.cpp:719
msgid "by &Name"
-msgstr ""
+msgstr "nach &Name"
#: ../src/Menus.cpp:704
msgid "&Generate"
@@ -2133,26 +2042,25 @@ msgstr "Er&zeugen"
#: Menus.cpp:776 Menus.cpp:860 Menus.cpp:922
msgid "Unsorted"
-msgstr ""
+msgstr "Unsortiert"
#: ../src/Menus.cpp:727
msgid "Effe&ct"
msgstr "&Effekt"
-#: ../src/Menus.cpp:731
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "Letzten Effekt wiederholen\tCtrl+R"
-
#: ../src/Menus.cpp:763
msgid "&Analyze"
msgstr "Anal&yse"
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
+
#: Menus.cpp:692
msgid "Plot Spectrum..."
msgstr "&Frequenzanalyse"
-#: ../src/Menus.cpp:798
-#: ../src/Menus.cpp:801
+#: ../src/Menus.cpp:798 ../src/Menus.cpp:801
msgid "&Help"
msgstr "&Hilfe"
@@ -2164,13 +2072,13 @@ msgstr "&
msgid "&Show Welcome Message..."
msgstr "Willkommen-Text anzeigen..."
-#: Menus.cpp:736
-msgid "&Index..."
-msgstr "Inhalt..."
+#: Menus.cpp:958
+msgid "&Help..."
+msgstr ""
#: Menus.cpp:959
msgid "Show &Log..."
-msgstr ""
+msgstr "&Protokoll anzeigen..."
#: Menus.cpp:744
msgid "&Screenshot Tools..."
@@ -2184,237 +2092,205 @@ msgstr "Benchma&rk ausf
msgid "&Audio Device Info..."
msgstr "Sound&karten-Info..."
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
msgstr ""
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
msgstr ""
#: ../src/Menus.cpp:831
-msgid "Selection Tool\tF1"
-msgstr "Auswahlwerkzeug\tF1"
+msgid "Selection Tool"
+msgstr "Auswahlwerkzeug"
#: ../src/Menus.cpp:832
-msgid "Envelope Tool\tF2"
-msgstr "Hüllkurvenwerkzeug\tF2"
+msgid "Envelope Tool"
+msgstr "Hüllkurvenwerkzeug"
#: ../src/Menus.cpp:833
-msgid "Draw Tool\tF3"
-msgstr "Zeichenwerkzeug\tF3"
+msgid "Draw Tool"
+msgstr "Zeichenwerkzeug"
#: ../src/Menus.cpp:834
-msgid "Zoom Tool\tF4"
-msgstr "Zoomwerkzeug\tF4"
+msgid "Zoom Tool"
+msgstr "Zoomwerkzeug"
#: ../src/Menus.cpp:835
-msgid "Time Shift Tool\tF5"
-msgstr "Verschiebewerkzeug\tF5"
+msgid "Time Shift Tool"
+msgstr "Verschiebewerkzeug"
#: ../src/Menus.cpp:836
-msgid "Multi Tool\tF6"
-msgstr "Multifunktionswerkzeug\tF6"
+msgid "Multi Tool"
+msgstr "Multifunktionswerkzeug"
#: ../src/Menus.cpp:838
-msgid "Next Tool\tD"
-msgstr "Nächstes Werkzeug\tD"
+msgid "Next Tool"
+msgstr "Nächstes Werkzeug"
#: ../src/Menus.cpp:839
-msgid "Previous Tool\tA"
-msgstr "Vorheriges Werkzeug\tA"
+msgid "Previous Tool"
+msgstr "Vorheriges Werkzeug"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
-msgstr ""
-
-#: ../src/Menus.cpp:842
-msgid "Stop\tS"
-msgstr "Stopp\tS"
-
-#: ../src/Menus.cpp:843
-msgid "Pause\tP"
-msgstr "Pause\tP"
-
-#: ../src/Menus.cpp:844
-msgid "Record\tR"
-msgstr "Aufnahme\tR"
-
-#: Menus.cpp:999
-msgid "Record Append\tShift+R"
-msgstr ""
+msgid "Play/Stop"
+msgstr "Play/Stopp"
#: Menus.cpp:1001
-msgid "Play/Stop and Set Cursor\tShift+A"
-msgstr ""
+msgid "Play/Stop and Set Cursor"
+msgstr "Play/Stopp und Cursorsetzen"
#: ../src/Menus.cpp:848
-msgid "Play One Second\t1"
-msgstr "Wiedergabe (1 Sekunde)\t1"
+msgid "Play One Second"
+msgstr "Wiedergabe (1 Sekunde)"
#: ../src/Menus.cpp:849
-msgid "Play To Selection\tB"
-msgstr "Wiedergabe bis zur Markierung\tB"
-
-#: ../src/Menus.cpp:850
-msgid "Play Looped\tL"
-msgstr "Wiedergabe (endlos)\tL"
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
+msgid "Play To Selection"
+msgstr "Wiedergabe bis zur Markierung"
#: ../src/Menus.cpp:852
-msgid "Play Cut Preview\tC"
-msgstr "Schnitt vorhören\tC"
+msgid "Play Cut Preview"
+msgstr "Schnitt vorhören"
#: ../src/Menus.cpp:857
-msgid "Selection to Start\tShift+Home"
-msgstr "Auswahl auf Anfang\tShift+Home"
+msgid "Selection to Start"
+msgstr "Auswahl auf Anfang"
#: ../src/Menus.cpp:858
-msgid "Selection to End\tShift+End"
-msgstr "Auswahl: Von Markierung bis Ende\tShift+End"
+msgid "Selection to End"
+msgstr "Auswahl: Von Markierung bis Ende"
#: ../src/Menus.cpp:860
-msgid "DeleteKey\tBackspace"
-msgstr "Löschtaste\tBackspace"
+msgid "DeleteKey"
+msgstr "Löschtaste"
#: ../src/Menus.cpp:865
-msgid "DeleteKey2\tDelete"
-msgstr "Löschtaste\tDelete"
+msgid "DeleteKey2"
+msgstr "Löschtaste"
-#: ../src/Menus.cpp:871
-msgid "Seek left short period during playback\tLeft"
-msgstr "Durchsuche in kleinen Sprüngen (links) während Wiedergabe\tLeft"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
+msgstr ""
-#: ../src/Menus.cpp:872
-msgid "Seek right short period during playback\tRight"
-msgstr "Durchsuche in kleinen Sprüngen (rechts) während Wiedergabe\tRight"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
+msgstr ""
-#: ../src/Menus.cpp:873
-msgid "Seek left long period during playback\tShift+Left"
-msgstr "Durchsuche in großen Sprüngen (links) während Wiedergabe\tShift+Left"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
+msgstr ""
-#: ../src/Menus.cpp:874
-msgid "Seek right long period during playback\tShift+Right"
-msgstr "Durchsuche in großen Sprngen (rechts) während Wiedergabe\tShift+Right"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
+msgstr ""
#: ../src/Menus.cpp:878
-msgid "Move Focus to Previous Track\tUp"
-msgstr "Fokus zur vorigen Spur bewegen\tUp"
+msgid "Move Focus to Previous Track"
+msgstr "Fokus zur vorigen Spur bewegen"
-#: ../src/Menus.cpp:879
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
-msgstr "Fokus zur vorigen Spur bewegen und Auswahl ändern\tShift+Up"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
+msgstr ""
#: ../src/Menus.cpp:880
-msgid "Move Focus to Next Track\tDown"
-msgstr "Fokus zur nächsten Spur bewegen\tDown"
+msgid "Move Focus to Next Track"
+msgstr "Fokus zur nächsten Spur bewegen"
-#: ../src/Menus.cpp:881
-msgid "Move Focus to Next and Change Selection\tShift+Down"
-msgstr "Fokus zur nächsten Spur bewegen und Auswahl ändern\tShift+Down"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
+msgstr ""
#: ../src/Menus.cpp:882
-msgid "Toggle Focused Track\tReturn"
-msgstr "Zwischen ausgewählten Spuren umschalten\tReturn"
-
-#: ../src/Menus.cpp:883
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr "Zwischen ausgewählten Spuren umschalten\tNUMPAD_ENTER"
-
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
-msgstr ""
+msgid "Toggle Focused Track"
+msgstr "Zwischen ausgewählten Spuren umschalten"
#: ../src/Menus.cpp:887
-msgid "Cursor Left\tLeft"
-msgstr "Cursor links\tLeft"
+msgid "Cursor Left"
+msgstr "Cursor links"
#: ../src/Menus.cpp:888
-msgid "Cursor Right\tRight"
-msgstr "Cursor rechts\tRight"
+msgid "Cursor Right"
+msgstr "Cursor rechts"
#: Menus.cpp:820
-msgid "Cursor Short Jump Left\t,"
-msgstr ""
+msgid "Cursor Short Jump Left"
+msgstr "Cursor wenig nach links"
#: Menus.cpp:821
-msgid "Cursor Short Jump Right\t."
-msgstr ""
+msgid "Cursor Short Jump Right"
+msgstr "Cursor wenig nach rechts"
#: Menus.cpp:822
-msgid "Cursor Long Jump Left\tShift+,"
-msgstr ""
+msgid "Cursor Long Jump Left"
+msgstr "Cursor viel nach links versetzen"
#: Menus.cpp:823
-msgid "Cursor Long Jump Right\tShift+."
-msgstr ""
+msgid "Cursor Long Jump Right"
+msgstr "Cursor viel nach rechts versetzen"
#: ../src/Menus.cpp:889
-msgid "Selection Extend Left\tShift+Left"
-msgstr "Auswahl nach links erweitern\tShift+Left"
+msgid "Selection Extend Left"
+msgstr "Auswahl nach links erweitern"
#: ../src/Menus.cpp:890
-msgid "Selection Extend Right\tShift+Right"
-msgstr "Auswahl nach rechts erweitern\tShift+Right"
+msgid "Selection Extend Right"
+msgstr "Auswahl nach rechts erweitern"
#: Menus.cpp:828
msgid "Set (or Extend) Left Selection"
-msgstr ""
+msgstr "Linke Grenze der Auswahl setzen oder erweitern"
#: Menus.cpp:829
msgid "Set (or Extend) Right Selection"
-msgstr ""
+msgstr "Rechte Grenze der Auswahl setzen oder erweitern"
#: ../src/Menus.cpp:892
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "Auswahl links verringern\tCtrl+Shift+Right"
+msgid "Selection Contract Left"
+msgstr "Auswahl links verringern"
#: ../src/Menus.cpp:893
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "Auswahl rechts verringern\tCtrl+Shift+Left"
+msgid "Selection Contract Right"
+msgstr "Auswahl rechts verringern"
#: ../src/Menus.cpp:895
-msgid "Change pan on focused track\tShift+P"
-msgstr "Panorama der ausgewählten Spur einstellen.\tShift+P"
+msgid "Change pan on focused track"
+msgstr "Panorama der ausgewählten Spur einstellen."
#: ../src/Menus.cpp:896
-msgid "Pan left on focused track\tAlt+Shift+Left"
-msgstr "Panorama der ausgewählten Spur nach links verschieben\tQAlt+Shift+Left"
+msgid "Pan left on focused track"
+msgstr "Panorama der ausgewählten Spur nach links verschieben"
#: ../src/Menus.cpp:897
-msgid "Pan right on focused track\tAlt+Shift+Right"
-msgstr "Panorama der ausgewählten Spur nach rechts verschieben\tAlt+Shift+Right"
+msgid "Pan right on focused track"
+msgstr "Panorama der ausgewählten Spur nach rechts verschieben"
#: ../src/Menus.cpp:898
-msgid "Change gain on focused track\tShift+G"
-msgstr "Lautstärke der ausgewählten Spur einstellen.\tShift+G"
+msgid "Change gain on focused track"
+msgstr "Lautstärke der ausgewählten Spur einstellen."
#: ../src/Menus.cpp:899
-msgid "Increase gain on focused track\tAlt+Shift+Up"
-msgstr "Lautstärke erhöhen bei der ausgewählten Spur\tAlt+Shift+Up"
+msgid "Increase gain on focused track"
+msgstr "Lautstärke erhöhen bei der ausgewählten Spur"
#: ../src/Menus.cpp:900
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
-msgstr "Lautstärke verringern bei der ausgewählten Spur\tAlt+Shift+Down"
+msgid "Decrease gain on focused track"
+msgstr "Lautstärke verringern bei der ausgewählten Spur"
#: ../src/Menus.cpp:901
-msgid "Open menu on focused track\tShift+M"
-msgstr "Menü der ausgewählten Spur öffnen\tShift+M"
+msgid "Open menu on focused track"
+msgstr "Menü der ausgewählten Spur öffnen"
#: ../src/Menus.cpp:902
-msgid "Mute/Unmute focused track\tShift+U"
-msgstr "Ausgewählte Spur stumm (ein/aus)\tShift+U"
+msgid "Mute/Unmute focused track"
+msgstr "Ausgewählte Spur stumm (ein/aus)"
#: ../src/Menus.cpp:903
-msgid "Solo/Unsolo focused track\tShift+S"
-msgstr "Ausgewählte Spur auf Solo (ein/aus)\tShift+S"
+msgid "Solo/Unsolo focused track"
+msgstr "Ausgewählte Spur auf Solo (ein/aus)"
#: ../src/Menus.cpp:904
-msgid "Close focused track\tShift+C"
-msgstr "Ausgewählte Spur schließen\tShift+C"
+msgid "Close focused track"
+msgstr "Ausgewählte Spur schließen"
#: Menus.cpp:845
msgid "Snap To On"
@@ -2425,7 +2301,35 @@ msgid "Snap To Off"
msgstr "Einrasten aus"
#: Menus.cpp:1071
-msgid "Full screen on/off\tF11"
+msgid "Full screen on/off"
+msgstr "Vollbild an/aus"
+
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr ""
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr ""
+
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr ""
+
+#: Menus.cpp:1074
+msgid "Adjust input source"
msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
@@ -2436,7 +2340,7 @@ msgstr "Zuletzt ge
#. i18n-hint: This is the name of the menu item on Windows and Linux
#: Menus.cpp:1161
msgid "Recent &Files"
-msgstr ""
+msgstr "Zuletzt geö&ffnete Dateien"
#: ../src/Menus.cpp:981
#, c-format
@@ -2486,8 +2390,8 @@ msgstr "Sie m
#: ../src/Menus.cpp:1995
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "Wiederholen: %s\tCtrl+R"
+msgid "Repeat %s"
+msgstr "Wiederholen: %s"
#: ../src/Menus.cpp:2126
msgid "There are no label tracks to export."
@@ -2495,20 +2399,21 @@ msgstr "Es gibt keine Textspuren zu exportieren."
#: Menus.cpp:2608
msgid "Export MIDI As:"
-msgstr ""
+msgstr "MIDI exportieren als:"
#: Menus.cpp:2612
msgid "MIDI file (*.mid)|*.mid|Allegro file (*.gro)|*.gro"
-msgstr ""
+msgstr "MIDI-Datei (*.mid)|*.mid|Allegro-Datei (*.gro)|*.gro"
#: Menus.cpp:2644
msgid "You have selected a filename with an unrecognized file extension.\n"
"Do you want to continue?"
-msgstr ""
+msgstr "Sie haben einen Dateinamen mit unbekannter Dateiendung ausgewählt.\n"
+" Wollen Sie fortfahren?"
#: Menus.cpp:2645
msgid "Export MIDI"
-msgstr ""
+msgstr "MIDI exportieren"
#: ../src/Menus.cpp:2265
msgid "Nothing to undo"
@@ -2518,8 +2423,7 @@ msgstr "Nichts zum R
msgid "Nothing to redo"
msgstr "Nichts zum Wiederhholen"
-#: ../src/toolbars/EditToolBar.cpp:132
-#: ../src/Menus.cpp:2385
+#: ../src/toolbars/EditToolBar.cpp:132 ../src/Menus.cpp:2385
#: ../src/TrackPanel.cpp:549
msgid "Cut"
msgstr "Ausschneiden"
@@ -2536,11 +2440,8 @@ msgstr "A&usschneiden und Clip trennen"
msgid "Split-cut to the clipboard"
msgstr "Ausschneiden/Trennen und in Zwischenablage kopieren"
-#: ../src/toolbars/EditToolBar.cpp:136
-#: ../src/Menus.cpp:2485
-#: ../src/Menus.cpp:2553
-#: ../src/Menus.cpp:2640
-#: ../src/TrackPanel.cpp:551
+#: ../src/toolbars/EditToolBar.cpp:136 ../src/Menus.cpp:2485
+#: ../src/Menus.cpp:2553 ../src/Menus.cpp:2640 ../src/TrackPanel.cpp:551
msgid "Paste"
msgstr "Einfügen"
@@ -2548,21 +2449,19 @@ msgstr "Einf
msgid "Pasted text from the clipboard"
msgstr "Aus der Zwischenablage eingefügt"
-#: ../src/Menus.cpp:2553
-#: ../src/Menus.cpp:2640
+#: ../src/Menus.cpp:2553 ../src/Menus.cpp:2640
msgid "Pasted from the clipboard"
msgstr "Aus der Zwischenablage eingefügt"
#: Menus.cpp:3053
msgid "Pasting one type of track into another is not allowed."
-msgstr ""
+msgstr "Es ist nicht möglich, einen Spurtyp in einen anderen zu kopieren. "
#: ../src/Menus.cpp:2583
msgid "Copying stereo audio into a mono track is not allowed."
msgstr "Stereoclips können nicht in eine Monospur kopiert werden."
-#: ../src/toolbars/EditToolBar.cpp:138
-#: ../src/Menus.cpp:2673
+#: ../src/toolbars/EditToolBar.cpp:138 ../src/Menus.cpp:2673
msgid "Trim"
msgstr "Zuschneiden"
@@ -2602,8 +2501,7 @@ msgstr "Cl&ips verbinden"
msgid "Silenced selected tracks for %.2f seconds at %.2f"
msgstr "Ausgewählte Tonspuren in Stille verwandelt (%.2f Sekunden an %.2f)"
-#: ../src/toolbars/EditToolBar.cpp:140
-#: ../src/Menus.cpp:2774
+#: ../src/toolbars/EditToolBar.cpp:140 ../src/Menus.cpp:2774
msgid "Silence"
msgstr "Stille"
@@ -2687,8 +2585,7 @@ msgstr "Mittels Textspur markierte Clips trennen"
msgid "Disjoined labeled regions"
msgstr "Mittels Textspur markierte Clips getrennt"
-#: ../src/Menus.cpp:2950
-#: ../src/TrackPanel.cpp:5628
+#: ../src/Menus.cpp:2950 ../src/TrackPanel.cpp:5628
msgid "Split"
msgstr "Trennen"
@@ -2704,15 +2601,6 @@ msgstr "In neue Tonspur kopieren"
msgid "Split at labels"
msgstr "Trennen an Textmarken"
-#: ../src/Menus.cpp:3407
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "Um das Spektrum zeichnen zu können, müssen alle Spuren die gleiche Samplerate haben."
-
-#: ../src/Menus.cpp:3433
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "Es wurden zuviele Audiodaten ausgewählt. Nur die ersten %.1f Sekunden werden analysiert."
-
#: ../src/Menus.cpp:3568
#, c-format
msgid "Imported labels from '%s'"
@@ -2728,7 +2616,7 @@ msgstr "MIDI-Datei ausw
#: Menus.cpp:4147
msgid "MIDI and Allegro files (*.mid;*.midi;*.gro)|*.mid;*.midi;*.gro|MIDI files (*.mid;*.midi)|*.mid;*.midi|Allegro files (*.gro)|*.gro|All files (*.*)|*.*"
-msgstr ""
+msgstr "MIDI- und Allegro- Dateien (*.mid;*.midi;*.gro)|*.mid;*.midi;*.gro|MIDI-Dateien (*.mid;*.midi)|*.mid;*.midi|Allegro-Dateien (*.gro)|*.gro|Alle Dateien (*.*)|*.*"
#: ../src/Menus.cpp:3599
#, c-format
@@ -2757,7 +2645,7 @@ msgstr "Metadaten bearbeiten"
#: Menus.cpp:3631
msgid "Edit Metadata tags"
-msgstr ""
+msgstr "Metadaten-Tags exportieren"
#: ../src/Menus.cpp:3704
#, c-format
@@ -2820,19 +2708,17 @@ msgstr "Ausrichten"
#: Menus.cpp:4550
msgid "Sync MIDI with Audio"
-msgstr ""
+msgstr "MIDI mit Audio synchronisieren"
#: Menus.cpp:4554
msgid "Alignment completed."
-msgstr ""
+msgstr "Ausrichten beendet."
#: ../src/Menus.cpp:3916
msgid "Created new audio track"
msgstr "Neue Tonspur erstellt"
-#: ../src/Menus.cpp:3916
-#: ../src/Menus.cpp:3939
-#: ../src/Menus.cpp:3954
+#: ../src/Menus.cpp:3916 ../src/Menus.cpp:3939 ../src/Menus.cpp:3954
#: ../src/Menus.cpp:3990
msgid "New Track"
msgstr "Neue Spur"
@@ -2865,13 +2751,11 @@ msgstr "Bearbeitete Textmarken"
msgid "Save CleanSpeech Preset File As:"
msgstr "Clean-Speech-Voreinstellungen speichern unter:"
-#: ../src/Menus.cpp:4105
-#: ../src/Menus.cpp:4188
+#: ../src/Menus.cpp:4105 ../src/Menus.cpp:4188
msgid "CleanSpeech Presets (*.csp)|*.csp"
msgstr "Clean-Speech Voreinstellungen (*.csp)|*.csp"
-#: ../src/export/Export.cpp:221
-#: ../src/Menus.cpp:4112
+#: ../src/export/Export.cpp:221 ../src/Menus.cpp:4112
msgid "Sorry, pathnames longer than 256 characters not supported."
msgstr "Leider werden Verzeichnisnamen mit mehr als 256 Zeichen nicht untersttzt."
@@ -2879,8 +2763,7 @@ msgstr "Leider werden Verzeichnisnamen mit mehr als 256 Zeichen nicht untersttzt
msgid "Problem encountered exporting presets."
msgstr "Es ist ein Problem aufgetreten beim Exportieren der Voreinstellungen."
-#: ../src/export/Export.cpp:136
-#: ../src/Menus.cpp:4159
+#: ../src/export/Export.cpp:136 ../src/Menus.cpp:4159
msgid "Unable to export"
msgstr "Kann nicht exportiert werden"
@@ -2892,14 +2775,13 @@ msgstr "Tonspur entfernen"
msgid "Removed audio track(s)"
msgstr "Tonspur(en) entfernt"
-#: ../src/Menus.cpp:4435
-#: ../src/Menus.cpp:4454
+#: ../src/Menus.cpp:4435 ../src/Menus.cpp:4454
msgid "Resample"
msgstr "Samplefrequenz ändern"
#: Menus.cpp:5159 TrackPanel.cpp:6361
msgid "New sample rate (Hz):"
-msgstr ""
+msgstr "Neue Sample-Frequenz (Hz):"
#: ../src/Menus.cpp:4441
msgid "The entered value is invalid"
@@ -2918,8 +2800,7 @@ msgstr "Samplefrequenz einer Spur
msgid "Resampled audio track(s)"
msgstr "Samplefrequenz einer Spur geändert"
-#: ../src/Mix.cpp:92
-#: ../src/Mix.cpp:99
+#: ../src/Mix.cpp:92 ../src/Mix.cpp:99
msgid "Mix"
msgstr "Mischen"
@@ -2939,6 +2820,10 @@ msgstr "Es gab ein Problem mit dem Drucker."
msgid "Print"
msgstr "Drucken"
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr ""
+
#: ../src/Project.cpp:573
msgid "Main Mix"
msgstr "Haupt-Mix"
@@ -2952,14 +2837,11 @@ msgstr "Herzlich Willkommen zu Audacity Version %s"
msgid "(Recovered)"
msgstr "(wiederhergestellt)"
-#: ../src/toolbars/ControlToolBar.cpp:192
-#: ../src/TrackPanel.cpp:775
-#: ../src/Project.cpp:1318
+#: ../src/Menus.cpp:844
msgid "Record"
-msgstr "Aufnahme (R)"
+msgstr "Aufnahme"
-#: ../src/TrackPanel.cpp:775
-#: ../src/Project.cpp:1318
+#: ../src/TrackPanel.cpp:775 ../src/Project.cpp:1318
msgid "Recorded Audio"
msgstr "Audio aufgezeichnet"
@@ -2974,24 +2856,28 @@ msgid "\n"
"To save any previously open tracks:\n"
"Cancel, Edit > Undo until all tracks\n"
"are open, then File > Save Project."
-msgstr ""
+msgstr "\n"
+"Das gespeicherte Projekt wird keine Spuren haben.\n"
+"\n"
+"Um vorherige Spuren zu speichern:\n"
+"Abbrechen, Bearbeiten > Rückgängig, bis alle Spuren\n"
+"zu sehen sind, dann Datei > Projekt speichern."
#: ../src/Project.cpp:1336
msgid "Save changes?"
msgstr "Änderungen speichern?"
-#: Project.cpp:1684
-msgid "All files|*.*|All supported files|"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
msgstr ""
-#: ../src/Menus.cpp:3506
-#: ../src/Project.cpp:1493
+#: ../src/Menus.cpp:3506 ../src/Project.cpp:1493
msgid "Select one or more audio files..."
msgstr "Datei(en) auswählen..."
#: Project.cpp:1736
msgid "Audacity projects|*.aup|"
-msgstr ""
+msgstr "Audacity-Projekte|*.aup|"
#: Project.cpp:1885 Project.cpp:2307
#, c-format
@@ -3002,18 +2888,34 @@ msgid "This file was saved by Audacity %s, a much\n"
"it, so you must back it up first.\n"
"\n"
"Open this file now?"
-msgstr ""
+msgstr "This file was saved by Audacity %s, a much\n"
+"older version. The format has changed.\n"
+"\n"
+"Audacity could corrupt the file in opening\n"
+"it, so you must back it up first.\n"
+"\n"
+"Open this file now?"
#: Project.cpp:1886
msgid "1.0 or earlier"
-msgstr ""
+msgstr "1.0 oder früher"
#: ../src/Project.cpp:1902
msgid "Opening old project file"
msgstr "Alte Projektdatei öffnen"
-#: ../src/Project.cpp:1571
-#: ../src/Project.cpp:1579
+#: Project.cpp:2073
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr ""
+
+#: ../src/Project.cpp:1571 ../src/Project.cpp:1579
msgid "Error opening file"
msgstr "Fehler beim Öffnen der Datei"
@@ -3049,8 +2951,7 @@ msgstr "Wiederherstellen"
msgid "Project checker repaired file"
msgstr "Die Projekt-Überprüfung hat die Daten wiederhergestellt."
-#: ../src/effects/Repair.h:29
-#: ../src/Project.cpp:1737
+#: ../src/effects/Repair.h:29 ../src/Project.cpp:1737
msgid "Repair"
msgstr "Repariere&n"
@@ -3072,10 +2973,12 @@ msgstr "Diese Datei wurde mit Audacity %s gespeichert.\n"
msgid "Can't open project file"
msgstr "Kann Projektdatei nicht öffnen."
-#: Project.cpp:2314
+#: Project.cpp:2484
#, c-format
msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
msgstr ""
@@ -3089,23 +2992,36 @@ msgid "Your project is now empty.\n"
"are open, then File > Save Project.\n"
"\n"
"Save anyway?"
-msgstr ""
+msgstr "Ihr Projekt ist leer.\n"
+"Das gespeicherte Projekt wird keine Spuren haben.\n"
+"\n"
+"Um vorherige Spuren zu speichern:\n"
+"'Nein' klicken, Bearbeiten > Rückgängig, bis alle Spuren\n"
+"zu sehen sind, dann Datei > Projekt speichern.\n"
+"Dennoch speichern?"
#: Project.cpp:2538
msgid "Warning empty project"
-msgstr ""
+msgstr "Leeres Projekt!"
-#: Project.cpp:2591
+#: Project.cpp:2792
#, c-format
+#, fuzzy
msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
-msgstr ""
+"is not writable or the disk is full."
+msgstr "Projekt konnte nicht gespeichert werden. Vielleicht ist %s \n"
+"nicht schreibbar oder das Laufwerk ist voll."
-#: ../src/Project.cpp:2126
-#: ../src/Project.cpp:2140
+#: ../src/Project.cpp:2126 ../src/Project.cpp:2140
msgid "Error saving project"
msgstr "Fehler beim Speichern des Projekts."
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
#: ../src/Project.cpp:2202
#, c-format
msgid "Saved %s"
@@ -3116,11 +3032,8 @@ msgstr "%s wurde gespeichert"
msgid "Imported '%s'"
msgstr "'%s' importiert"
-#: ../src/import/ImportPCM.cpp:405
-#: ../src/import/ImportPCM.cpp:449
-#: ../src/Menus.cpp:3633
-#: ../src/Project.cpp:2285
-#: ../src/Project.cpp:2310
+#: ../src/import/ImportPCM.cpp:405 ../src/import/ImportPCM.cpp:449
+#: ../src/Menus.cpp:3633 ../src/Project.cpp:2285 ../src/Project.cpp:2310
msgid "Import"
msgstr "Importieren"
@@ -3144,7 +3057,12 @@ msgid "Audacity compressed project files (.aup) save your work in a smaller, com
"Most other programs can't open Audacity project files.\n"
"When you want to save a file that can be opened by other programs, select one of the\n"
"Export commands."
-msgstr ""
+msgstr "\"Komprimierte\" Projekte (.aup plus Verzeichnisinhalt) enthalten Ihre Arbeit als datenreduziertes Ogg-Vorbis-Audio. \n"
+"Datenreduzierte Projekt-Dateien sind ein guter weil platzsparender Weg um Projekte über Netzwerke auszutauschen. \n"
+"Das Öffnen solcher Projekte dauert dann allerdings etwas länger. \n"
+"\n"
+"Die meisten anderen Audioprogramme können Audacity-Projekte allerdings nicht öffnen: \n"
+"Sollte das gewünscht sein verwenden Sie die Export-Funktion."
#: Project.cpp:2897
msgid "You are saving an Audacity project file (.aup).\n"
@@ -3152,7 +3070,11 @@ msgid "You are saving an Audacity project file (.aup).\n"
"Saving a project creates a file that only Audacity can open.\n"
"\n"
"To save an audio file for other programs, use one of the \"File > Export\" commands.\n"
-msgstr ""
+msgstr "Sie speichern eine Audacity-Project-Datei (.aup),\n"
+"\n"
+"dieser Dateityp kann nur von Audacity geöffnet werden.\n"
+"\n"
+"Um eine Audiodatei zur Nutzung durch andere Programme zu erzeugen nutzen Sie den Dialog \"Datei > Export\".\n"
#: ../src/Project.cpp:2376
msgid "Audacity projects (*.aup)|*.aup"
@@ -3167,10 +3089,8 @@ msgstr "Neues Projekt erstellt"
msgid "Deleted %.2f seconds at t=%.2f"
msgstr "Gelöscht: %.2f Sekunden bei t=%.2f"
-#: ../src/UploadDialog.cpp:392
-#: ../src/UploadDialog.cpp:525
-#: ../src/effects/Equalization.cpp:1061
-#: ../src/Project.cpp:2545
+#: ../src/UploadDialog.cpp:392 ../src/UploadDialog.cpp:525
+#: ../src/effects/Equalization.cpp:1061 ../src/Project.cpp:2545
msgid "Delete"
msgstr "Löschen"
@@ -3201,12 +3121,12 @@ msgstr "Kein Platz mehr auf der Festplatte verf
#: Project.cpp:3336
#, c-format
msgid "Import(s) complete. Running %d on-demand waveform calculations. Overall %2.0f%% complete."
-msgstr ""
+msgstr "Importvorgang beendet. Erzeugen von %d Wellenform-Darstellungen. Insgesamt %2.0f%% erledigt."
#: Project.cpp:3339
#, c-format
msgid "Import complete. Running an on-demand waveform calculation. %2.0f%% complete."
-msgstr ""
+msgstr "Importvorgang beendet. Erzeugen der Wellenform-Darstellung. %2.0f%% erledigt."
#: ../src/Project.cpp:3027
msgid "Could not remove old autosave file: "
@@ -3250,8 +3170,7 @@ msgstr "Libsamplerate (Erik de Castro Lopo)"
msgid "Libsamplerate error: %d\n"
msgstr "Libsamplerate-Fehler: %d\n"
-#: ../src/Resample.cpp:240
-#: ../src/Resample.cpp:250
+#: ../src/Resample.cpp:240 ../src/Resample.cpp:250
msgid "Resampling disabled."
msgstr "Resampling deaktiviert"
@@ -3270,6 +3189,162 @@ msgstr "24-bit PCM"
msgid "32-bit float"
msgstr "32-bit float"
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
+
+#: ../src/prefs/DirectoriesPrefs.cpp:92 ../src/export/ExportMultiple.cpp:729
+msgid "Choose..."
+msgstr "Ausw&ählen..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
+
+#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
+msgid "false"
+msgstr "falsch"
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: ../src/toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr "Werkzeuge"
+
+#: ../src/toolbars/ControlToolBar.cpp:82
+msgid "Control"
+msgstr "Wiedergabewerkzeuge"
+
+#: ../src/toolbars/MixerToolBar.cpp:58
+msgid "Mixer"
+msgstr "Pegelregler"
+
+#: ../src/toolbars/MeterToolBar.cpp:49
+msgid "Meter"
+msgstr "Aussteuerungsanzeige"
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: ../src/toolbars/DeviceToolBar.cpp:54
+msgid "Device"
+msgstr "Gerät"
+
+#: ../src/toolbars/TranscriptionToolBar.cpp:81
+msgid "Transcription"
+msgstr "Transkribierwerkzeug"
+
+#: ../src/TrackPanel.cpp:451 ../src/TrackPanel.cpp:452
+msgid "Track Panel"
+msgstr "Spurbereich"
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: ../src/export/ExportMultiple.cpp:784
+msgid "Tracks"
+msgstr "Spuren"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
#: Screenshot.cpp:384
msgid "Saved "
msgstr "Gespeichert"
@@ -3278,16 +3353,16 @@ msgstr "Gespeichert"
msgid "Error trying to save file: "
msgstr "Fehler beim Versuch, die Datei zu speichern:"
-#: Sequence.cpp:732
-#: Sequence.cpp:742
-#: Sequence.cpp:749
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
+#: Sequence.cpp:732 Sequence.cpp:742 Sequence.cpp:749
msgid "Gap detected in project file\n"
msgstr "Ungültiger Zwischenraum in Projektdatei erkannt\n"
-#: ../src/effects/Wahwah.cpp:582
-#: ../src/effects/Effect.cpp:254
-#: ../src/effects/Effect.cpp:370
-#: ../src/effects/Phaser.cpp:595
+#: ../src/effects/Wahwah.cpp:582 ../src/effects/Effect.cpp:254
+#: ../src/effects/Effect.cpp:370 ../src/effects/Phaser.cpp:595
#: ../src/effects/audiounits/AudioUnitEffect.cpp:852
msgid "Pre&view"
msgstr "Vorhören"
@@ -3298,11 +3373,11 @@ msgstr "&Diagnose"
#: SoundActivatedRecord.cpp:36
msgid "Sound Activated Record"
-msgstr ""
+msgstr "Pegelgesteuerte Aufnahme"
#: SoundActivatedRecord.cpp:58
msgid "Activation level (dB):"
-msgstr ""
+msgstr "Start-Pegel (dB):"
#: SplashDialog.cpp:58
msgid "&Welcome to Audacity!"
@@ -3336,14 +3411,13 @@ msgstr "Jahr"
msgid "Genre"
msgstr "Genre"
-#: ../src/prefs/MousePrefs.cpp:96
-#: ../src/Tags.cpp:748
+#: ../src/prefs/MousePrefs.cpp:96 ../src/Tags.cpp:748
msgid "Comments"
msgstr "Bemerkungen"
#: Tags.cpp:777
msgid "Use arrow keys (or RETURN key after editing) to navigate fields."
-msgstr ""
+msgstr "Verwenden Sie die Pfeiltasten (oder EINGABE nach der Bearbeitung) um zu navigieren."
#: Tags.cpp:769
msgid "Tag Name"
@@ -3363,23 +3437,21 @@ msgstr "Liste der Genres"
#: Tags.cpp:826
msgid "E&dit..."
-msgstr ""
+msgstr "Be&arbeiten..."
#: Tags.cpp:827
msgid "Rese&t..."
-msgstr ""
+msgstr "Zurückse&tzen..."
#: ../src/Tags.cpp:1071
msgid "Template"
msgstr "Vorlage"
-#: ../src/prefs/KeyConfigPrefs.cpp:123
-#: ../src/Tags.cpp:1074
+#: ../src/prefs/KeyConfigPrefs.cpp:123 ../src/Tags.cpp:1074
msgid "&Load..."
msgstr "Laden..."
-#: ../src/prefs/KeyConfigPrefs.cpp:122
-#: ../src/Tags.cpp:1079
+#: ../src/prefs/KeyConfigPrefs.cpp:122 ../src/Tags.cpp:1079
msgid "&Save..."
msgstr "Speichern..."
@@ -3388,67 +3460,46 @@ msgstr "Speichern..."
msgid "S&et Default"
msgstr "Zurücksetzen"
-#: Tags.cpp:958
-#: Tags.cpp:1597
-#: Tags.cpp:2326
+#: Tags.cpp:958 Tags.cpp:1597 Tags.cpp:2326
msgid "Edit Genres"
msgstr "Liste der Genres bearbeiten"
-#: Tags.cpp:991
-#: Tags.cpp:1003
-#: Tags.cpp:1019
-#: Tags.cpp:1032
-#: Tags.cpp:1635
-#: Tags.cpp:1647
-#: Tags.cpp:1663
-#: Tags.cpp:1676
-#: Tags.cpp:2369
-#: Tags.cpp:2381
-#: Tags.cpp:2397
-#: Tags.cpp:2410
+#: Tags.cpp:991 Tags.cpp:1003 Tags.cpp:1019 Tags.cpp:1032 Tags.cpp:1635
+#: Tags.cpp:1647 Tags.cpp:1663 Tags.cpp:1676 Tags.cpp:2369 Tags.cpp:2381
+#: Tags.cpp:2397 Tags.cpp:2410
msgid "Reset Genres"
msgstr "Zurücksetzen"
-#: Tags.cpp:991
-#: Tags.cpp:1032
-#: Tags.cpp:1635
-#: Tags.cpp:1676
-#: Tags.cpp:2369
+#: Tags.cpp:991 Tags.cpp:1032 Tags.cpp:1635 Tags.cpp:1676 Tags.cpp:2369
#: Tags.cpp:2410
msgid "Unable to save genre file."
msgstr "Genre-Datei kann nicht gespeichert werden."
-#: Tags.cpp:1002
-#: Tags.cpp:1646
-#: Tags.cpp:2380
+#: Tags.cpp:1002 Tags.cpp:1646 Tags.cpp:2380
msgid "Are you sure you want to reset the genre list to defaults?"
msgstr "Wollen Sie die Liste der Genres wirklich zurücksetzen?"
-#: Tags.cpp:1019
-#: Tags.cpp:1663
-#: Tags.cpp:2397
+#: Tags.cpp:1019 Tags.cpp:1663 Tags.cpp:2397
msgid "Unable to open genre file."
msgstr "Genre-Datei kann nicht geöffnet werden."
#: Tags.cpp:1084
msgid "Load Metadata As:"
-msgstr ""
+msgstr "Metadata laden als:"
-#: Tags.cpp:1079
-#: Tags.cpp:1730
-#: Tags.cpp:2453
+#: Tags.cpp:1079 Tags.cpp:1730 Tags.cpp:2453
msgid "Error loading metadata"
msgstr "Fehler beim Laden der Metadaten"
-#: Tags.cpp:1054
-#: Tags.cpp:1108
-#: Tags.cpp:1709
-#: Tags.cpp:1745
-#: Tags.cpp:2432
+#: Tags.cpp:1054 Tags.cpp:1108 Tags.cpp:1709 Tags.cpp:1745 Tags.cpp:2432
#: Tags.cpp:2468
msgid "Save Metadata As:"
msgstr "Metadaten speichern unter:"
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
#: Theme.cpp:628
#, c-format
msgid "Audacity could not write file:\n"
@@ -3481,8 +3532,7 @@ msgstr "Audacity konnte die Datei nicht finden:\n"
" %s.\n"
"Theme nicht geladen."
-#: Theme.cpp:797
-#: Theme.cpp:885
+#: Theme.cpp:797 Theme.cpp:885
#, c-format
msgid "Audacity could not load file:\n"
" %s.\n"
@@ -3537,17 +3587,25 @@ msgstr "Dauer der Aufnahme"
msgid "Audacity Timer Record"
msgstr "Zeitgesteuerte Aufnahme"
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
#: TimerRecordDialog.cpp:224
msgid "Recording start"
-msgstr ""
+msgstr "Aufnahmebeginn"
#: TimerRecordDialog.cpp:225
msgid "Recording end"
-msgstr ""
+msgstr "Aufnahmeende"
#: TimerRecordDialog.cpp:230
msgid "Audacity Timer Record Progress"
-msgstr ""
+msgstr "Fortschritt der zeitgesteuerten Aufnahme"
#: ../src/SmartRecordDialog.cpp:251
msgid "Start Date and Time"
@@ -3555,7 +3613,7 @@ msgstr "Beginn der Aufnahme"
#: TimerRecordDialog.cpp:274
msgid "Start Date"
-msgstr ""
+msgstr "Start-Datum"
#: ../src/SmartRecordDialog.cpp:268
msgid "End Date and Time"
@@ -3563,48 +3621,36 @@ msgstr "Ende der Aufnahme"
#: TimerRecordDialog.cpp:294
msgid "End Date"
-msgstr ""
+msgstr "Ende-Datum"
#. i18n-hint: A time specification like "Sunday 28th October 2007 15:16:17 GMT"
#. * but hopefully translated by wxwidgets will be inserted into this
#: TimerRecordDialog.cpp:381
#, c-format
msgid "Waiting to start recording at %s.\n"
-msgstr ""
+msgstr "Warten auf Aufnahmestart %s.\n"
#: TimerRecordDialog.cpp:382
msgid "Audacity Timer Record - Waiting for Start"
-msgstr ""
-
-#: ../src/TrackPanel.cpp:451
-#: ../src/TrackPanel.cpp:452
-msgid "Track Panel"
-msgstr "Spurbereich"
+msgstr "Zeitgesteuerte Aufnahme - Warten auf Aufnahmebeginn"
-#: ../src/prefs/FileFormatPrefs.cpp:111
-#: ../src/prefs/QualityPrefs.cpp:97
+#: ../src/prefs/FileFormatPrefs.cpp:111 ../src/prefs/QualityPrefs.cpp:97
#: ../src/TrackPanel.cpp:495
msgid "Other..."
msgstr "Andere..."
-#: ../src/TrackPanel.cpp:503
-#: ../src/TrackPanel.cpp:524
-#: ../src/TrackPanel.cpp:533
-#: ../src/TrackPanel.cpp:541
+#: ../src/TrackPanel.cpp:503 ../src/TrackPanel.cpp:524
+#: ../src/TrackPanel.cpp:533 ../src/TrackPanel.cpp:541
msgid "Name..."
msgstr "Name der Spur..."
-#: ../src/TrackPanel.cpp:505
-#: ../src/TrackPanel.cpp:526
-#: ../src/TrackPanel.cpp:537
-#: ../src/TrackPanel.cpp:543
+#: ../src/TrackPanel.cpp:505 ../src/TrackPanel.cpp:526
+#: ../src/TrackPanel.cpp:537 ../src/TrackPanel.cpp:543
msgid "Move Track Up"
msgstr "Spur nach oben verschieben"
-#: ../src/TrackPanel.cpp:506
-#: ../src/TrackPanel.cpp:527
-#: ../src/TrackPanel.cpp:538
-#: ../src/TrackPanel.cpp:544
+#: ../src/TrackPanel.cpp:506 ../src/TrackPanel.cpp:527
+#: ../src/TrackPanel.cpp:538 ../src/TrackPanel.cpp:544
msgid "Move Track Down"
msgstr "Spur nach unten verschieben"
@@ -3618,7 +3664,7 @@ msgstr "Wellenform (dB)"
#: TrackPanel.cpp:557 prefs/GUIPrefs.cpp:157
msgid "Spectrum log(f)"
-msgstr ""
+msgstr "Spektrum log(f)"
#: ../src/TrackPanel.cpp:511
msgid "Pitch (EAC)"
@@ -3644,12 +3690,15 @@ msgstr "Stereotonspur erstellen"
msgid "Split Stereo Track"
msgstr "Stereotonspur trennen"
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr ""
+
#: ../src/TrackPanel.cpp:519
msgid "Set Sample Format"
msgstr "Sampleformat einstellen"
-#: ../src/TrackPanel.cpp:521
-#: ../src/TrackPanel.cpp:5815
+#: ../src/TrackPanel.cpp:521 ../src/TrackPanel.cpp:5815
msgid "Set Rate"
msgstr "Samplerate einstellen"
@@ -3669,8 +3718,7 @@ msgstr "Zeichensatz..."
msgid "Set Range..."
msgstr "Bereich der Geschwindigkeitsmanipulation einstellen..."
-#: ../src/toolbars/EditToolBar.cpp:134
-#: ../src/TrackPanel.cpp:550
+#: ../src/toolbars/EditToolBar.cpp:134 ../src/TrackPanel.cpp:550
msgid "Copy"
msgstr "Kopieren"
@@ -3716,21 +3764,15 @@ msgstr "Klicken und ziehen um die linke Auswahlgrenze zu verschieben."
msgid "Click and drag to move right selection boundary."
msgstr "Klicken und ziehen um die rechte Auswahlgrenze zu verschieben."
-#: ../src/TrackPanel.cpp:1669
-#: ../src/TrackPanel.cpp:3728
-#: ../src/TrackPanel.cpp:3754
-#: ../src/TrackPanel.cpp:3999
-#: ../src/TrackPanel.cpp:5927
-#: ../src/TrackPanel.cpp:5947
+#: ../src/TrackPanel.cpp:1669 ../src/TrackPanel.cpp:3728
+#: ../src/TrackPanel.cpp:3754 ../src/TrackPanel.cpp:3999
+#: ../src/TrackPanel.cpp:5927 ../src/TrackPanel.cpp:5947
msgid "Modified Label"
msgstr "Textmarke geändert"
-#: ../src/TrackPanel.cpp:1670
-#: ../src/TrackPanel.cpp:3729
-#: ../src/TrackPanel.cpp:3755
-#: ../src/TrackPanel.cpp:4000
-#: ../src/TrackPanel.cpp:5928
-#: ../src/TrackPanel.cpp:5948
+#: ../src/TrackPanel.cpp:1670 ../src/TrackPanel.cpp:3729
+#: ../src/TrackPanel.cpp:3755 ../src/TrackPanel.cpp:4000
+#: ../src/TrackPanel.cpp:5928 ../src/TrackPanel.cpp:5948
msgid "Label Edit"
msgstr "Textmarke bearbeiten"
@@ -3738,8 +3780,7 @@ msgstr "Textmarke bearbeiten"
msgid "Adjusted envelope."
msgstr "Eingestellte Hüllkurve."
-#: ../src/prefs/MousePrefs.cpp:111
-#: ../src/TrackPanel.cpp:1896
+#: ../src/prefs/MousePrefs.cpp:111 ../src/TrackPanel.cpp:1896
msgid "Envelope"
msgstr "Hüllkurve"
@@ -3760,19 +3801,18 @@ msgstr "rechts"
msgid "Time shifted tracks/clips %s %.02f seconds"
msgstr "Spur(en)/Clips wurden um %s %.02f Sekunden verschoben"
-#: ../src/prefs/MousePrefs.cpp:107
-#: ../src/prefs/MousePrefs.cpp:108
+#: ../src/prefs/MousePrefs.cpp:107 ../src/prefs/MousePrefs.cpp:108
#: ../src/prefs/MousePrefs.cpp:109
msgid "Time-Shift"
msgstr "Zeitverschiebung"
#: TrackPanel.cpp:2916
msgid "To use Draw, choose 'Waveform' in the Track Drop-down Menu."
-msgstr ""
+msgstr "Um zeichnen zu können wählen Sei bitte \"Wellenform\" im Menü des Spurkopfs."
#: TrackPanel.cpp:2933
msgid "To use Draw, zoom in further until you can see the individual samples."
-msgstr ""
+msgstr "Um zu zeichnen bitte weiter vergrößern, bis Sie die einzelnen Samples sehen können."
#: ../src/TrackPanel.cpp:2982
msgid "Moved Sample"
@@ -3800,39 +3840,33 @@ msgid "Moved pan slider"
msgstr "Panoramaregler verschoben"
#. i18n-hint: Title of the Gain slider, used to adjust the volume
-#: ../src/TrackPanel.cpp:3226
-#: ../src/TrackPanel.cpp:5270
+#: ../src/TrackPanel.cpp:3226 ../src/TrackPanel.cpp:5270
#: ../src/TrackPanel.cpp:6484
msgid "Gain"
msgstr "Lautstärke"
#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: ../src/TrackPanel.cpp:3226
-#: ../src/TrackPanel.cpp:5208
+#: ../src/TrackPanel.cpp:3226 ../src/TrackPanel.cpp:5208
#: ../src/TrackPanel.cpp:6491
msgid "Pan"
msgstr "Panorama"
-#: ../src/effects/ChangePitch.cpp:283
-#: ../src/TrackPanel.cpp:3351
+#: ../src/effects/ChangePitch.cpp:283 ../src/TrackPanel.cpp:3351
#: ../src/TrackPanel.cpp:5880
msgid "up"
msgstr "höher"
-#: ../src/effects/ChangePitch.cpp:283
-#: ../src/TrackPanel.cpp:3355
+#: ../src/effects/ChangePitch.cpp:283 ../src/TrackPanel.cpp:3355
#: ../src/TrackPanel.cpp:5881
msgid "down"
msgstr "tiefer"
-#: ../src/TrackPanel.cpp:3360
-#: ../src/TrackPanel.cpp:5876
+#: ../src/TrackPanel.cpp:3360 ../src/TrackPanel.cpp:5876
#, c-format
msgid "Moved '%s' %s"
msgstr "'%s' wurde um %s verschoben"
-#: ../src/TrackPanel.cpp:3363
-#: ../src/TrackPanel.cpp:5882
+#: ../src/TrackPanel.cpp:3363 ../src/TrackPanel.cpp:5882
msgid "Move Track"
msgstr "Tonspur verschieben"
@@ -3846,11 +3880,11 @@ msgstr "Schnitt wiederhergestellt"
#: TrackPanel.cpp:3973
msgid "Merge"
-msgstr ""
+msgstr "Zusammenführen"
#: TrackPanel.cpp:3973
msgid "Merged Clips"
-msgstr ""
+msgstr "Zusammengeführte Clips"
#: ../src/TrackPanel.cpp:3923
msgid "Removed Cut Line"
@@ -3864,14 +3898,6 @@ msgstr "Panorama eingestellt"
msgid "Adjusted gain"
msgstr "Lautstärke eingestellt"
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr ""
-
#: ../src/TrackPanel.cpp:5426
msgid "Can't delete track with active audio"
msgstr "Spur mit aktivem Audio kann nicht gelöscht werden"
@@ -3892,8 +3918,7 @@ msgstr "Links, "
msgid "Right, "
msgstr "Rechts, "
-#: ../src/TrackPanel.cpp:5607
-#: ../src/TrackPanel.cpp:5720
+#: ../src/TrackPanel.cpp:5607 ../src/TrackPanel.cpp:5720
#, c-format
msgid "Changed '%s' to %s"
msgstr "'%s' in %s konvertiert"
@@ -3907,6 +3932,11 @@ msgstr "Kanal"
msgid "Split stereo track '%s'"
msgstr "Stereotonspur trennen '%s'"
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
#: ../src/TrackPanel.cpp:5646
#, c-format
msgid "Made '%s' a stereo track"
@@ -3933,8 +3963,7 @@ msgstr "Format
msgid "Change lower speed limit (%) to:"
msgstr "Untere Geschwindigkeitsgrenze in % der Originalgeschwindigkeit:"
-#: ../src/TrackPanel.cpp:5845
-#: ../src/TrackPanel.cpp:5846
+#: ../src/TrackPanel.cpp:5845 ../src/TrackPanel.cpp:5846
msgid "Lower speed limit"
msgstr "Minimalwert einstellen"
@@ -3942,8 +3971,7 @@ msgstr "Minimalwert einstellen"
msgid "Change upper speed limit (%) to:"
msgstr "Obere Geschwindigkeitsgrenze in % der Originalgeschwindigkeit:"
-#: ../src/TrackPanel.cpp:5852
-#: ../src/TrackPanel.cpp:5853
+#: ../src/TrackPanel.cpp:5852 ../src/TrackPanel.cpp:5853
msgid "Upper speed limit"
msgstr "Maximalwert einstellen"
@@ -3979,10 +4007,14 @@ msgstr "Schriftart f
#: TrackPanel.cpp:6227
msgid "Face name"
-msgstr ""
+msgstr "Oberflächen-Name"
#: TrackPanel.cpp:6236
msgid "Face size"
+msgstr "Oberflächen-Größe"
+
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
msgstr ""
#: ../src/TrackPanel.cpp:6419
@@ -4018,9 +4050,7 @@ msgstr "Solo"
msgid " Select On"
msgstr "Auswählen"
-#: ../src/VoiceKey.cpp:88
-#: ../src/VoiceKey.cpp:238
-#: ../src/VoiceKey.cpp:376
+#: ../src/VoiceKey.cpp:88 ../src/VoiceKey.cpp:238 ../src/VoiceKey.cpp:376
#: ../src/VoiceKey.cpp:517
msgid "Selection is too small to use voice key."
msgstr "Die Auswahl ist zu klein für den \"Voice-Key\"."
@@ -4048,8 +4078,7 @@ msgstr "Richtungswechsel -- mean: %1.4f sd: (%1.4f)\n"
msgid "Audio Track"
msgstr "Tonspur"
-#: ../src/WaveTrack.cpp:515
-#: ../src/WaveTrack.cpp:534
+#: ../src/WaveTrack.cpp:515 ../src/WaveTrack.cpp:534
msgid "There is not enough room available to paste the selection"
msgstr "Der Platz reicht nicht um die Auswahl einzufügen."
@@ -4067,32 +4096,36 @@ msgstr "Plugins 1 bis %i"
msgid "Plugins %i to %i"
msgstr "Plugins %i bis %i"
-#: commands/CommandManager.cpp:857
-msgid "Disallowed for some reason. Try selecting some audio first?"
+#: commands/CommandManager.cpp:923
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
msgstr ""
#: commands/CommandManager.cpp:724
msgid "You can only do this when playing and recording are\n"
" stopped. [Pausing is not sufficient.]"
-msgstr ""
+msgstr "Das ist nur möglich, wenn weder Wiedergabe noch\n"
+" Aufnahme läuft. [Pausetaste nicht drücken!]"
#: commands/CommandManager.cpp:726
msgid "You must first select some stereo audio for this\n"
" to use. [You can't use this with mono.]"
-msgstr ""
+msgstr "Um dies zu tun müssen Sie zunächst Stereoaudio\n"
+" auswählen. [Mit Mono-Audio gehts nicht.]"
#: commands/CommandManager.cpp:728
msgid "You must first select some audio for this to use."
-msgstr ""
+msgstr "Bitte zunächst Audio auswählen."
#: commands/CommandManager.cpp:730
msgid "You must first select some audio for this\n"
" to use. [Selecting other kinds of track won't work.]"
-msgstr ""
+msgstr "Bitte zunächst Audio auswählen.\n"
+"[Mit anderen Spurtypen gehts nicht.]"
#: commands/CommandManager.cpp:903
msgid "Disallowed"
-msgstr ""
+msgstr "Nicht erlaubt"
#: ../src/commands/CommandManager.cpp:854
#, c-format
@@ -4115,7 +4148,7 @@ msgstr "Verst
#: effects/Amplify.cpp:155 effects/Compressor.cpp:476
#: effects/Normalize.cpp:337
msgid "by Dominic Mazzoni"
-msgstr ""
+msgstr "von Dominic Mazzoni"
#: ../src/effects/Amplify.cpp:160
msgid "Amplification (dB):"
@@ -4123,7 +4156,7 @@ msgstr "Verst
#: effects/Amplify.cpp:183
msgid "Amplification dB"
-msgstr ""
+msgstr "Verstärkung"
#: ../src/effects/Amplify.cpp:180
msgid "New Peak Amplitude (dB):"
@@ -4135,7 +4168,7 @@ msgstr "
#: effects/Amplify.cpp:222 effects/Amplify.cpp:279 effects/Amplify.cpp:323
msgid "-Infinity"
-msgstr ""
+msgstr "-unendlich"
#: ../src/effects/Amplify.h:46
msgid "Amplify..."
@@ -4149,8 +4182,7 @@ msgstr "Verst
msgid "You selected a track which does not contain audio. AutoDuck can only process audio tracks."
msgstr "Sie haben eine Spur ausgewählt, die kein Audio enthält. Auto-Duck kann aber nur mit Audiospuren arbeiten."
-#: ../src/effects/AutoDuck.cpp:451
-#: ../src/effects/AutoDuck.cpp:578
+#: ../src/effects/AutoDuck.cpp:451 ../src/effects/AutoDuck.cpp:578
msgid "Auto Duck"
msgstr "Auto-Duck"
@@ -4170,16 +4202,11 @@ msgstr "Lautst
msgid "Maximum pause:"
msgstr "Zulässige Pause:"
-#: ../src/prefs/AudioIOPrefs.cpp:162
-#: ../src/prefs/AudioIOPrefs.cpp:164
-#: ../src/prefs/AudioIOPrefs.cpp:188
-#: ../src/prefs/AudioIOPrefs.cpp:190
-#: ../src/prefs/AudioIOPrefs.cpp:198
-#: ../src/effects/AutoDuck.cpp:492
-#: ../src/effects/AutoDuck.cpp:497
-#: ../src/effects/AutoDuck.cpp:502
-#: ../src/effects/AutoDuck.cpp:507
-#: ../src/effects/AutoDuck.cpp:512
+#: ../src/prefs/AudioIOPrefs.cpp:162 ../src/prefs/AudioIOPrefs.cpp:164
+#: ../src/prefs/AudioIOPrefs.cpp:188 ../src/prefs/AudioIOPrefs.cpp:190
+#: ../src/prefs/AudioIOPrefs.cpp:198 ../src/effects/AutoDuck.cpp:492
+#: ../src/effects/AutoDuck.cpp:497 ../src/effects/AutoDuck.cpp:502
+#: ../src/effects/AutoDuck.cpp:507 ../src/effects/AutoDuck.cpp:512
#: ../src/widgets/TimeTextCtrl.cpp:197
msgid "seconds"
msgstr "Sekunden"
@@ -4220,13 +4247,10 @@ msgstr "Auto-D&uck..."
msgid "Processing Auto Duck..."
msgstr "Auto-Duck berechnen..."
-#: ../src/effects/VST/VSTEffect.cpp:454
-#: ../src/effects/AvcCompressor.cpp:738
-#: ../src/effects/TruncSilence.cpp:281
-#: ../src/effects/nyquist/Nyquist.cpp:991
+#: ../src/effects/VST/VSTEffect.cpp:454 ../src/effects/AvcCompressor.cpp:738
+#: ../src/effects/TruncSilence.cpp:281 ../src/effects/nyquist/Nyquist.cpp:991
#: ../src/effects/nyquist/Nyquist.cpp:1057
-#: ../src/effects/audiounits/AudioUnitEffect.cpp:857
-#: ../src/LangChoice.cpp:103
+#: ../src/effects/audiounits/AudioUnitEffect.cpp:857 ../src/LangChoice.cpp:103
#: ../src/widgets/Warning.cpp:67
msgid "OK"
msgstr "OK"
@@ -4250,7 +4274,7 @@ msgstr "Frequenz (Hz):"
#: effects/BassBoost.cpp:205
msgid "Frequency Hertz"
-msgstr ""
+msgstr "Frequenz Hertz"
#: ../src/effects/BassBoost.cpp:208
msgid "Boost (dB):"
@@ -4258,7 +4282,7 @@ msgstr "Anhebung (dB):"
#: effects/BassBoost.cpp:218
msgid "Boost dB"
-msgstr ""
+msgstr "Boost dB"
#: ../src/effects/BassBoost.h:35
msgid "BassBoost..."
@@ -4289,44 +4313,42 @@ msgstr "Tonh
msgid "Change Pitch without Changing Tempo"
msgstr "Änderung der Tonhöhe ohne Auswirkung auf die Laufzeit"
-#: ../src/effects/ChangeSpeed.cpp:305
-#: ../src/effects/ChangePitch.cpp:253
+#: ../src/effects/ChangeSpeed.cpp:305 ../src/effects/ChangePitch.cpp:253
#: ../src/effects/ChangeTempo.cpp:181
msgid "by Vaughan Johnson && Dominic Mazzoni"
msgstr "(Vaughan Johnson && Dominic Mazzoni)"
-#: ../src/effects/ChangePitch.cpp:258
-#: ../src/effects/ChangeTempo.cpp:186
+#: ../src/effects/ChangePitch.cpp:258 ../src/effects/ChangeTempo.cpp:186
msgid "using SoundTouch, by Olli Parviainen"
msgstr "SoundTouch (Olli Parviainen)"
#: effects/ChangePitch.cpp:269
msgid "Pitch:"
-msgstr ""
+msgstr "Pitch:"
#: effects/ChangePitch.cpp:274
msgid "From:"
-msgstr ""
+msgstr "Von:"
#: effects/ChangePitch.cpp:275
msgid "From Pitch"
-msgstr ""
+msgstr "Pitch von"
#: effects/ChangePitch.cpp:286
msgid "Up"
-msgstr ""
+msgstr "Auf"
#: effects/ChangePitch.cpp:289
msgid "Down"
-msgstr ""
+msgstr "Ab"
#: effects/ChangePitch.cpp:299
msgid "To:"
-msgstr ""
+msgstr "bis"
#: effects/ChangePitch.cpp:300
msgid "To Pitch"
-msgstr ""
+msgstr "Pitch bis"
#: ../src/effects/ChangePitch.cpp:305
msgid "Semitones (half-steps):"
@@ -4334,40 +4356,36 @@ msgstr "Halbtonschritte:"
#: effects/ChangePitch.cpp:316
msgid "Semitones in half-steps"
-msgstr ""
+msgstr "Halbtöne in Halb-Schritten"
#: effects/ChangePitch.cpp:326 effects/ChangeSpeed.cpp:369
#: effects/ChangeTempo.cpp:209 effects/ChangeTempo.cpp:222
msgid "from"
-msgstr ""
+msgstr "von"
#: effects/ChangePitch.cpp:327
msgid "From frequency in hertz"
-msgstr ""
+msgstr "Von Frequenz in Hertz"
-#: ../src/effects/ChangeSpeed.cpp:369
-#: ../src/effects/ChangePitch.cpp:290
-#: ../src/effects/ChangePitch.cpp:336
-#: ../src/effects/ChangeTempo.cpp:240
+#: ../src/effects/ChangeSpeed.cpp:369 ../src/effects/ChangePitch.cpp:290
+#: ../src/effects/ChangePitch.cpp:336 ../src/effects/ChangeTempo.cpp:240
#: ../src/effects/ChangeTempo.cpp:271
msgid "to"
msgstr "to"
#: effects/ChangePitch.cpp:332
msgid "To frequency in seconds"
-msgstr ""
+msgstr "Bis Frequenz in Sekunden"
-#: ../src/effects/ChangeSpeed.cpp:323
-#: ../src/effects/ChangePitch.cpp:359
-#: ../src/effects/ChangeTempo.cpp:199
-#: ../src/effects/ChangeLength.cpp:168
+#: ../src/effects/ChangeSpeed.cpp:323 ../src/effects/ChangePitch.cpp:359
+#: ../src/effects/ChangeTempo.cpp:199 ../src/effects/ChangeLength.cpp:168
msgid "Percent Change:"
msgstr "Änderung in %:"
#: effects/ChangePitch.cpp:343 effects/ChangePitch.cpp:356
#: effects/ChangeSpeed.cpp:358 effects/ChangeTempo.cpp:198
msgid "Percent Change"
-msgstr ""
+msgstr "Veränderung in Prozent"
#: ../src/effects/ChangePitch.h:31
msgid "Change Pitch..."
@@ -4377,8 +4395,7 @@ msgstr "Tonh
msgid "Changing Pitch"
msgstr "Tonhöhe ändern"
-#: ../src/effects/ChangeSpeed.cpp:52
-#: ../src/effects/ChangeTempo.cpp:55
+#: ../src/effects/ChangeSpeed.cpp:52 ../src/effects/ChangeTempo.cpp:55
#, c-format
msgid "Applied effect: %s %.1f%%"
msgstr "Effekt angewandt: %s %.1f %%"
@@ -4405,15 +4422,15 @@ msgstr "(SampleRate von Erik de Castro Lopo)"
#: effects/ChangeSpeed.cpp:366
msgid "Standard Vinyl RPM:"
-msgstr ""
+msgstr "Umdrehungen Schallplatte:"
#: effects/ChangeSpeed.cpp:370
msgid "From RPM"
-msgstr ""
+msgstr "Von Umdrehungen"
#: effects/ChangeSpeed.cpp:375
msgid "To RPM"
-msgstr ""
+msgstr "Bis Umdrehungen"
#: ../src/effects/ChangeSpeed.h:32
msgid "Change Speed..."
@@ -4433,27 +4450,27 @@ msgstr "Tempo
#: effects/ChangeTempo.cpp:206
msgid "Beats per minute:"
-msgstr ""
+msgstr "Beats pro Minute:"
#: effects/ChangeTempo.cpp:210
msgid "From beats per minute"
-msgstr ""
+msgstr "Von Beats pro Minute"
#: effects/ChangeTempo.cpp:215
msgid "To beats per minute"
-msgstr ""
+msgstr "Bis Beats pro Minute"
#: effects/ChangeTempo.cpp:219
msgid "Length (seconds):"
-msgstr ""
+msgstr "Länge (Sekunden):"
#: effects/ChangeTempo.cpp:223
msgid "From length in seconds"
-msgstr ""
+msgstr "Von Länge in Sekunden"
#: effects/ChangeTempo.cpp:228
msgid "To length in seconds"
-msgstr ""
+msgstr "Bis Länge in Sekunden"
#: ../src/effects/ChangeTempo.h:35
msgid "Change Tempo..."
@@ -4478,7 +4495,7 @@ msgstr "Schwellwert einstellen (niedriger ist empfindlicher):"
#: effects/ClickRemoval.cpp:350
msgid "Select threshold"
-msgstr ""
+msgstr "Schwellwert auswählen"
#: effects/ClickRemoval.cpp:362
msgid "Max spike width (higher is more sensitive):"
@@ -4486,7 +4503,7 @@ msgstr "Maximale Klick-L
#: effects/ClickRemoval.cpp:363
msgid "Max spike width"
-msgstr ""
+msgstr "Maximale Klick-Breite"
#: ../src/effects/ClickRemoval.h:42
msgid "Click Removal..."
@@ -4502,15 +4519,15 @@ msgstr "Dynamikkompressor"
#: effects/Compressor.cpp:498
msgid "Threshold"
-msgstr ""
+msgstr "Schwellwert"
#: effects/Compressor.cpp:502
msgid "Ratio:"
-msgstr ""
+msgstr "Verhältnis:"
#: effects/Compressor.cpp:506
msgid "Ratio"
-msgstr ""
+msgstr "Verhältnis"
#: effects/Compressor.cpp:510
#, fuzzy
@@ -4519,7 +4536,7 @@ msgstr "Ansprechzeit:"
#: effects/Compressor.cpp:514
msgid "Attack Time"
-msgstr ""
+msgstr "Ansprechzeit"
#: effects/Compressor.cpp:518
#, fuzzy
@@ -4528,57 +4545,54 @@ msgstr "Abkling-Zeit:"
#: effects/Compressor.cpp:522
msgid "Decay Time"
-msgstr ""
+msgstr "Abklingzeit"
-#: ../src/effects/Compressor.cpp:504
-msgid "Normalize to 0dB after compressing"
-msgstr "Normalisieren auf 0dB nach Kompression"
+#: effects/Compressor.cpp:530
+msgid "Make-up gain for 0dB after compressing"
+msgstr "Anhebung auf 0dB nach komprimieren"
#: effects/Compressor.cpp:563
#, c-format
-#, fuzzy
msgid "Threshold %d dB"
msgstr "Grenzwert: %d dB"
#: effects/Compressor.cpp:564
#, c-format
msgid "%3d dB"
-msgstr ""
+msgstr "%3d dB"
#: effects/Compressor.cpp:567
#, c-format
msgid "Ratio %.0f to 1"
-msgstr ""
+msgstr "Verhältnis %.0f zu 1"
#: effects/Compressor.cpp:568
#, c-format
msgid "%.0f:1"
-msgstr ""
+msgstr "%.0f:1"
#: effects/Compressor.cpp:571
#, c-format
msgid "Ratio %.1f to 1"
-msgstr ""
+msgstr "Verhältnis %.1f zu 1"
#: effects/Compressor.cpp:572
#, c-format
msgid "%.1f:1"
-msgstr ""
+msgstr "%.1f:1"
#: effects/Compressor.cpp:575
#, c-format
-#, fuzzy
msgid "Attack Time %.1f secs"
msgstr "Ansprechzeit: %.1f Sek."
#: effects/Compressor.cpp:576 effects/Compressor.cpp:579
#, c-format
msgid "%.1f secs"
-msgstr ""
+msgstr "%.1f Sek."
#: effects/Compressor.cpp:578
#, c-format
-#, fuzzy
msgid "Decay Time %.1f secs"
msgstr "Abkling-Zeit: %.1f Sekunden"
@@ -4590,251 +4604,225 @@ msgstr "K&ompressor..."
msgid "Applying Dynamic Range Compression..."
msgstr "Dynamikkompression anwenden..."
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
-msgstr ""
+msgstr "Kontrast-Werkzeug für den Vordergrund"
#: effects/Contrast.cpp:79
msgid "Foreground times selected.\n"
"Now select background and use Ctrl+Shift+T or menu again."
-msgstr ""
+msgstr "Vordergrund-Ausschnitt ausgewählt.\n"
+"Wählen Sie nun den Hintergrund über das gleiche Menü (oder Strg+Großbuchstabentaste+T)"
#: effects/Contrast.cpp:127
msgid "Start time after after end time!\n"
"Please enter reasonable times."
-msgstr ""
+msgstr "Die Startzeit liegt nach der Endzeit!\n"
+"BItte wählen Sie vernünftige Werte."
#: effects/Contrast.cpp:137
msgid "Times are not reasonable!\n"
"Please enter reasonable times."
-msgstr ""
-
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr ""
+msgstr "Merkwürdige Zeiteingaben!\n"
+"Bitte wählen Sie vernünftige Werte."
#: effects/Contrast.cpp:231
msgid "Contrast Analyzer"
-msgstr ""
+msgstr "Audiokontrast-Analyse"
#: effects/Contrast.cpp:235
msgid "Parameters"
-msgstr ""
+msgstr "Parameter"
-#: ../src/effects/ToneGen.cpp:328
-#: ../src/toolbars/ControlToolBar.cpp:186
+#: ../src/effects/ToneGen.cpp:328 ../src/toolbars/ControlToolBar.cpp:186
msgid "Start"
msgstr "Start"
-#: ../src/effects/ToneGen.cpp:329
-#: ../src/toolbars/SelectionBar.cpp:129
-#: ../src/toolbars/SelectionBar.cpp:226
-#: ../src/toolbars/ControlToolBar.cpp:189
+#: ../src/effects/ToneGen.cpp:329 ../src/toolbars/SelectionBar.cpp:129
+#: ../src/toolbars/SelectionBar.cpp:226 ../src/toolbars/ControlToolBar.cpp:189
msgid "End"
msgstr "Ende"
#: effects/Contrast.cpp:332
msgid "Volume "
-msgstr ""
+msgstr "Lautstärke"
#: effects/Contrast.cpp:248
msgid "Foreground:"
-msgstr ""
+msgstr "Vordergrund:"
#: effects/Contrast.cpp:347
msgid "Foreground start time"
-msgstr ""
+msgstr "Startzeit Vordergrund"
#: effects/Contrast.cpp:365
msgid "Foreground end time"
-msgstr ""
+msgstr "Endzeit Vordergrund"
+
+#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
+#: effects/Contrast.cpp:289
+msgid "Measured"
+msgstr "Gemessen"
#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
msgid "Use selection"
-msgstr ""
+msgstr "Bitte auswählen"
#: effects/Contrast.cpp:271
msgid "Background:"
-msgstr ""
+msgstr "Hintergrund:"
#: effects/Contrast.cpp:391
msgid "Background start time"
-msgstr ""
+msgstr "Startzeit Hintergrund"
#: effects/Contrast.cpp:409
msgid "Background end time"
-msgstr ""
+msgstr "Endzeit Hintergrund"
#: effects/Contrast.cpp:298
msgid "Result"
-msgstr ""
+msgstr "Ergebnis"
#: effects/Contrast.cpp:302
msgid "Contrast Result:"
-msgstr ""
+msgstr "Ergebnis:"
-#: Tags.cpp:796
-#: Tags.cpp:1948
+#: Tags.cpp:796 Tags.cpp:1948
msgid "Reset"
msgstr "Zurücksetzen"
#: effects/Contrast.cpp:304
msgid "Difference:"
-msgstr ""
+msgstr "Unterschied:"
-#: ../src/AboutDialog.cpp:235
-#: ../src/effects/ChangeLength.cpp:131
+#: ../src/AboutDialog.cpp:235 ../src/effects/ChangeLength.cpp:131
msgid "Information"
-msgstr "Programm-Informationen"
+msgstr "Info"
#: effects/Contrast.cpp:447
msgid "For measuring rms volume differences between two selections of audio."
-msgstr ""
+msgstr "WCAG2 misst Lautstärkeunterschiede, um Audios, die für Hörbehinderte geeignet sind, zu ermitteln."
#: effects/Contrast.cpp:448
msgid "Help for WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: ../src/toolbars/ControlToolBar.cpp:82
-msgid "Control"
-msgstr "Wiedergabewerkzeuge"
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
+msgstr "Hilfe für die WCAG2 Audiokontrast-Analyse"
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
msgstr ""
#: effects/Contrast.cpp:328 effects/Contrast.cpp:336 effects/Contrast.cpp:344
#: effects/Contrast.cpp:352
msgid "Measure"
-msgstr ""
+msgstr "Messen"
#: effects/Contrast.cpp:511
msgid "No foreground to measure"
-msgstr ""
+msgstr "Kein Vordergrund zu messen"
#: effects/Contrast.cpp:516
msgid "Measured foreground level"
-msgstr ""
+msgstr "Gemessener Vordergrund-Pegel"
#: effects/Contrast.cpp:191 effects/Contrast.cpp:202
#, c-format
msgid "%.1f dB"
-msgstr ""
+msgstr "%.1f dB"
#: effects/Contrast.cpp:521
msgid "No background to measure"
-msgstr ""
+msgstr "Kein Hintergrund zu messen"
#: effects/Contrast.cpp:526
msgid "Measured background level"
-msgstr ""
+msgstr "Gemessener Hintergrund-Pegel"
#: effects/Contrast.cpp:358
msgid "WCAG2 Pass"
-msgstr ""
+msgstr "WCAG2: \"OK\""
#: effects/Contrast.cpp:360
msgid "WCAG2 Fail"
-msgstr ""
+msgstr "Zu niedriger Kontrast"
#: effects/Contrast.cpp:535
msgid "Current difference"
-msgstr ""
+msgstr "Unterschied"
#: effects/Contrast.cpp:536
#, c-format
msgid "%.1f dB Average rms"
-msgstr ""
+msgstr "%.1f dB MIttelwert"
#: effects/Contrast.cpp:541
msgid "Please enter valid times."
-msgstr ""
+msgstr "Bitte geben Sie gültige Zeiten ein."
#: effects/Contrast.cpp:551
msgid "Export Contrast Result As:"
-msgstr ""
+msgstr "Kontrast-Ergebnis exportieren als:"
#: effects/Contrast.cpp:572
msgid "WCAG 2.0 Success Criteria 1.4.7 Contrast Results"
-msgstr ""
+msgstr "WCAG 2.0 Success Criteria 1.4.7 Kontrast-Ergebnisse"
#: effects/Contrast.cpp:574
#, c-format
msgid "Filename = %s."
-msgstr ""
+msgstr "Dateiname = %s."
#: effects/Contrast.cpp:576
msgid "Foreground"
-msgstr ""
+msgstr "Vordergrund"
#: effects/Contrast.cpp:581 effects/Contrast.cpp:598
#, c-format
msgid "Time started = %2d hour(s), %2d minute(s), %.2f seconds."
-msgstr ""
+msgstr "Startzeit = %2d Stunde(n), %2d Minute(n), %.2f Sekunden."
#: effects/Contrast.cpp:586 effects/Contrast.cpp:603
#, c-format
msgid "Time ended = %2d hour(s), %2d minute(s), %.2f seconds."
-msgstr ""
+msgstr "Endzeit = %2d Stunde(n), %2d Minute(n, %.2f Sekunden"
#: effects/Contrast.cpp:588 effects/Contrast.cpp:605
#, c-format
msgid "Average rms = %.1f dB."
-msgstr ""
+msgstr "Durchschnittlicher Effektivwert = %.1f dB."
#: effects/Contrast.cpp:590 effects/Contrast.cpp:607
msgid "Average rms = dB."
-msgstr ""
+msgstr "Durchschnittlicher Effektivwert = dB."
#: effects/Contrast.cpp:593
msgid "Background"
-msgstr ""
+msgstr "Hintergrund"
#: effects/Contrast.cpp:609
msgid "Results"
-msgstr ""
+msgstr "Ergebnisse"
#: effects/Contrast.cpp:611
#, c-format
msgid "Difference = %.1f Average rms dB."
-msgstr ""
+msgstr "Differenz = %.1f durchschnittlicher Effektivwert in dB."
#: effects/Contrast.cpp:613
msgid "Success Criteria 1.4.7 of WCAG 2.0: Pass"
-msgstr ""
+msgstr "Success-Kriterien 1.4.7 von WCAG 2.0: Erfolgreich"
#: effects/Contrast.cpp:615
msgid "Success Criteria 1.4.7 of WCAG 2.0: Fail"
-msgstr ""
+msgstr "Success-Kriterien 1.4.7 von WCAG 2.0: Nicht erfolgreich"
#: effects/Contrast.cpp:618
msgid "Data gathered"
-msgstr ""
-
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr ""
+msgstr "Daten gelesen"
#: ../src/effects/DtmfGen.cpp:47
msgid "DTMF Tone Generator"
@@ -4848,14 +4836,13 @@ msgstr "von Salvo Ventura (2006)"
msgid "DTMF sequence:"
msgstr "Ziffernfolge:"
-#: ../src/effects/ToneGen.cpp:299
-#: ../src/effects/ToneGen.cpp:332
+#: ../src/effects/ToneGen.cpp:299 ../src/effects/ToneGen.cpp:332
msgid "Amplitude (0-1)"
msgstr "Amplitude (0-1)"
#: effects/DtmfGen.cpp:465
msgid "Duration:"
-msgstr ""
+msgstr "Dauer:"
#: ../src/effects/DtmfGen.cpp:408
msgid "Tone/silence ratio:"
@@ -4869,9 +4856,7 @@ msgstr "Tastverh
msgid "Tone duration:"
msgstr "Dauer des Tons:"
-#: effects/DtmfGen.cpp:425
-#: effects/DtmfGen.cpp:427
-#: effects/DtmfGen.cpp:498
+#: effects/DtmfGen.cpp:425 effects/DtmfGen.cpp:427 effects/DtmfGen.cpp:498
#: effects/DtmfGen.cpp:499
msgid "ms"
msgstr "ms"
@@ -4964,6 +4949,10 @@ msgstr "Fehler beim Laden der Equalizer-Kurve"
msgid "custom"
msgstr "Benutzerdefiniert"
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr ""
+
#: ../src/effects/Equalization.cpp:971
msgid "Equalization, by Martyn Shaw && Mitch Golden"
msgstr "Equalizer von Mitch Golden u. Vaughan Johnson"
@@ -5000,8 +4989,7 @@ msgstr "L
msgid "Select curve:"
msgstr "Kurve auswählen:"
-#: ../src/effects/Equalization.cpp:1058
-#: ../src/effects/Equalization.cpp:2244
+#: ../src/effects/Equalization.cpp:1058 ../src/effects/Equalization.cpp:2244
msgid "Save As..."
msgstr "Speichern unter..."
@@ -5051,7 +5039,7 @@ msgstr "
#: effects/FindClipping.cpp:211
msgid "Find Clipping"
-msgstr "Übersteuerungen suchen"
+msgstr "Übersteuerungen finden"
#: effects/FindClipping.cpp:222
msgid "by Leland Lucius"
@@ -5085,8 +5073,7 @@ msgstr "&Invertieren"
msgid "Inverting"
msgstr "Invertieren (\"Phasendrehen\")"
-#: ../src/effects/Leveller.cpp:129
-#: ../src/BatchCommands.cpp:237
+#: ../src/effects/Leveller.cpp:129 ../src/BatchCommands.cpp:237
msgid "Leveller"
msgstr "Leveller"
@@ -5124,7 +5111,7 @@ msgstr "Grad des Leveling"
#: effects/Leveller.cpp:226
msgid "Degree of Leveling:"
-msgstr ""
+msgstr "Leveling-Grad:"
#: ../src/effects/Leveller.cpp:238
msgid "Noise Threshold (Hiss/Hum/Ambient Noise)"
@@ -5145,47 +5132,43 @@ msgstr "Leveller anwenden..."
#: effects/LoadEffects.cpp:102
msgid "Generator"
-msgstr ""
+msgstr "Generator"
#: effects/LoadEffects.cpp:104
msgid "Instrument"
-msgstr ""
+msgstr "Instrument"
#: effects/LoadEffects.cpp:106
msgid "Oscillator"
-msgstr ""
+msgstr "Oszillator"
#: effects/LoadEffects.cpp:108
msgid "Utility"
-msgstr ""
+msgstr "Nutzen"
#: effects/LoadEffects.cpp:110
msgid "Converter"
-msgstr ""
+msgstr "Konverter"
#: effects/LoadEffects.cpp:112
msgid "Analyser"
-msgstr ""
-
-#: ../src/toolbars/MixerToolBar.cpp:58
-msgid "Mixer"
-msgstr "Pegelregler"
+msgstr "Analysewerkzeug"
#: effects/LoadEffects.cpp:116
msgid "Simulator"
-msgstr ""
+msgstr "Simulator"
#: effects/LoadEffects.cpp:118
msgid "Delay"
-msgstr ""
+msgstr "Hall"
#: effects/LoadEffects.cpp:120
msgid "Modulator"
-msgstr ""
+msgstr "Modulator"
#: effects/LoadEffects.cpp:122
msgid "Reverb"
-msgstr ""
+msgstr "Echo"
#: ../src/effects/Phaser.cpp:78
msgid "Phaser"
@@ -5193,108 +5176,107 @@ msgstr "Phaser"
#: effects/LoadEffects.cpp:126
msgid "Flanger"
-msgstr ""
+msgstr "Flanger"
#: effects/LoadEffects.cpp:128
msgid "Chorus"
-msgstr ""
+msgstr "Chorus"
#: effects/LoadEffects.cpp:130
msgid "Filter"
-msgstr ""
+msgstr "Filter"
#: effects/LoadEffects.cpp:132
msgid "Lowpass"
-msgstr ""
+msgstr "Tiefpass"
#: effects/LoadEffects.cpp:134
msgid "Bandpass"
-msgstr ""
+msgstr "Bandpass"
#: effects/LoadEffects.cpp:136
msgid "Highpass"
-msgstr ""
+msgstr "Hochpass"
#: effects/LoadEffects.cpp:138
msgid "Comb"
-msgstr ""
+msgstr "Kamm"
#: effects/LoadEffects.cpp:140
msgid "Allpass"
-msgstr ""
+msgstr "All-Pass"
#: effects/LoadEffects.cpp:142
msgid "Equaliser"
-msgstr ""
+msgstr "Equalizer"
#: effects/LoadEffects.cpp:144
msgid "Parametric"
-msgstr ""
+msgstr "Parametrisch"
#: effects/LoadEffects.cpp:146
msgid "Multiband"
-msgstr ""
+msgstr "Mehrband"
#: effects/LoadEffects.cpp:148
msgid "Spectral Processor"
-msgstr ""
+msgstr "Spektral-Prozessor"
#: effects/LoadEffects.cpp:150
msgid "Pitch Shifter"
-msgstr ""
+msgstr "Pitch"
#: effects/LoadEffects.cpp:152
msgid "Amplifier"
-msgstr ""
+msgstr "Verstärker"
#: effects/LoadEffects.cpp:154
msgid "Distortion"
-msgstr ""
+msgstr "Verzerrung"
#: effects/LoadEffects.cpp:156
msgid "Waveshaper"
-msgstr ""
+msgstr "Wellen-Werkzeug"
#: effects/LoadEffects.cpp:158
msgid "Dynamics Processor"
-msgstr ""
+msgstr "Dynamic Prozessor"
#: effects/LoadEffects.cpp:160
msgid "Compressor"
-msgstr ""
+msgstr "Kompressor"
#: effects/LoadEffects.cpp:162
msgid "Expander"
-msgstr ""
+msgstr "Expander"
#: effects/LoadEffects.cpp:164
msgid "Limiter"
-msgstr ""
+msgstr "Limiter"
#: effects/LoadEffects.cpp:166
msgid "Gate"
-msgstr ""
+msgstr "Gate"
-#: ../src/effects/NoiseRemoval.cpp:675
-#: ../src/BatchCommands.cpp:235
+#: ../src/effects/NoiseRemoval.cpp:675 ../src/BatchCommands.cpp:235
msgid "Noise Removal"
msgstr "Rauschentfernung"
#: effects/LoadEffects.cpp:201
msgid "Pitch and Tempo"
-msgstr ""
+msgstr "Pitch und Tempo"
#: effects/LoadEffects.cpp:203
msgid "Timeline Changer"
-msgstr ""
+msgstr "Zeitleiste-Änderung"
#: effects/LoadEffects.cpp:205
msgid "Time"
-msgstr ""
+msgstr "Zeit"
#: effects/LoadEffects.cpp:207
msgid "Onsets"
-msgstr ""
+msgstr "Anfänge"
#: ../src/effects/Noise.cpp:37
msgid "White"
@@ -5381,7 +5363,7 @@ msgstr "Absenkung (dB):"
#: effects/NoiseRemoval.cpp:850
msgid "Noise reduction"
-msgstr ""
+msgstr "Rauschentfernung"
#: ../src/effects/NoiseRemoval.cpp:800
msgid "Frequency smoothing (Hz):"
@@ -5389,7 +5371,7 @@ msgstr "Frequenz-Gl
#: effects/NoiseRemoval.cpp:859
msgid "Frequency smoothing"
-msgstr ""
+msgstr "Frequenz-Glättung"
#: ../src/effects/NoiseRemoval.cpp:808
msgid "Attack/decay time (secs):"
@@ -5397,7 +5379,7 @@ msgstr "Ansprech-/Abklingzeit (s): "
#: effects/NoiseRemoval.cpp:868
msgid "Attach/decay time"
-msgstr ""
+msgstr "Ankling-/Abkling-Zeit"
#: ../src/effects/NoiseRemoval.h:35
msgid "Noise Removal..."
@@ -5414,37 +5396,29 @@ msgstr "Entferne Rauschen"
#: effects/Normalize.cpp:68
#, c-format
msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
-msgstr ""
+msgstr "Angewendeter Effekt: %s Gleichspannung entfernt = %s, Lautstärke normalisiert = %s"
-#: effects/Normalize.cpp:70
-#: effects/Normalize.cpp:71
-msgid "false"
-msgstr ""
-
-#: effects/Normalize.cpp:70
-#: effects/Normalize.cpp:71
+#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
msgid "true"
-msgstr ""
+msgstr "richtig"
#: effects/Normalize.cpp:73
#, c-format
msgid ", maximum amplitude = %.1f dB"
-msgstr ""
+msgstr ", maximale Amplitude = %.1f dB"
-#: ../src/effects/Normalize.cpp:94
-#: ../src/BatchCommands.cpp:233
-#: ../src/BatchCommands.cpp:238
-#: ../src/BatchCommands.cpp:246
+#: ../src/effects/Normalize.cpp:94 ../src/BatchCommands.cpp:233
+#: ../src/BatchCommands.cpp:238 ../src/BatchCommands.cpp:246
msgid "Normalize"
msgstr "Normalisieren"
#: effects/Normalize.cpp:351 effects/Normalize.cpp:352
msgid "Remove any DC offset (center on 0.0 vertically)"
-msgstr ""
+msgstr "Gleichspannung entfernen (auf die Null-Linie zentrieren)"
#: effects/Normalize.cpp:357
msgid "Normalize maximum amplitude to:"
-msgstr ""
+msgstr "Maximale Amplitude normalisieren auf:"
#: ../src/effects/Normalize.cpp:336
msgid "-"
@@ -5452,7 +5426,7 @@ msgstr "-"
#: effects/Normalize.cpp:367
msgid "Maximum amplitude dB"
-msgstr ""
+msgstr "Maximale Amplitude dB"
#: ../src/effects/Normalize.h:32
msgid "Normalize..."
@@ -5473,33 +5447,31 @@ msgstr "Stufen:"
#: effects/Phaser.cpp:229
msgid "Stages"
-msgstr ""
+msgstr "Ebenen"
#: effects/Phaser.cpp:231
msgid "Dry/Wet:"
-msgstr ""
+msgstr "Trocken/Effekt:"
#: effects/Phaser.cpp:234
msgid "Dry Wet"
-msgstr ""
+msgstr "Trocken Effekt"
-#: ../src/effects/Wahwah.cpp:497
-#: ../src/effects/Phaser.cpp:526
+#: ../src/effects/Wahwah.cpp:497 ../src/effects/Phaser.cpp:526
msgid "LFO Frequency (Hz):"
msgstr "LFO Frequenz (Hz):"
#: effects/Phaser.cpp:239 effects/Wahwah.cpp:224
msgid "LFO frequency in hertz"
-msgstr ""
+msgstr "LFO-Frequenz in Hertz"
-#: ../src/effects/Wahwah.cpp:513
-#: ../src/effects/Phaser.cpp:542
+#: ../src/effects/Wahwah.cpp:513 ../src/effects/Phaser.cpp:542
msgid "LFO Start Phase (deg.):"
msgstr "LFO Anfangsphase (Grad):"
#: effects/Phaser.cpp:244 effects/Wahwah.cpp:229
msgid "LFO start phase in degrees"
-msgstr ""
+msgstr "LFO-Start-Phase in Grad"
#: ../src/effects/Phaser.cpp:558
msgid "Depth:"
@@ -5507,7 +5479,7 @@ msgstr "Modulationstiefe:"
#: effects/Phaser.cpp:249 effects/Wahwah.cpp:234
msgid "Depth in percent"
-msgstr ""
+msgstr "Tiefe in Prozent"
#: ../src/effects/Phaser.cpp:574
msgid "Feedback (%):"
@@ -5515,7 +5487,7 @@ msgstr "R
#: effects/Phaser.cpp:254
msgid "Feedback in percent"
-msgstr ""
+msgstr "Rückkopplung in Prozent"
#: ../src/effects/Phaser.h:38
msgid "Phaser..."
@@ -5539,7 +5511,11 @@ msgid "Repair works by using audio data outside the selection region.\n"
"Please select a region that has audio touching at least one side of it.\n"
"\n"
"The more surrounding audio, the better it performs."
-msgstr ""
+msgstr "Die Reparatur erfolgt, indem Audiodaten außerhalb der Auswahl verwendet werden.\n"
+"\n"
+"Bitte verwenden Sie eine Auswahl, deren Audio mindestens eine Seite berührt.\n"
+"\n"
+"Je mehr Surround-Audio, umso besser die Wirkung."
#: ../src/effects/Repair.h:33
msgid "Repairing damaged audio"
@@ -5554,8 +5530,7 @@ msgstr "%d mal wiederholt"
msgid "Tracks are too long to repeat the selection."
msgstr "Die Spuren sind zu lang für eine Wiederholung."
-#: ../src/effects/Repeat.cpp:75
-#: ../src/effects/Repeat.cpp:79
+#: ../src/effects/Repeat.cpp:75 ../src/effects/Repeat.cpp:79
msgid "Repeat"
msgstr "Wiederholen "
@@ -5566,10 +5541,9 @@ msgstr "Anzahl der Wiederholungen:"
#: effects/Repeat.cpp:221
msgid "New selection length: hh:mm:ss"
-msgstr ""
+msgstr "Neue Auswahl-Länge: hh:mm:ss"
-#: ../src/effects/Repeat.cpp:264
-#: ../src/effects/Repeat.cpp:302
+#: ../src/effects/Repeat.cpp:264 ../src/effects/Repeat.cpp:302
msgid "New selection length: "
msgstr "Neue Auswahllänge: "
@@ -5612,7 +5586,7 @@ msgstr "Stille erzeugt, %.6lf Sekunden"
#: effects/SimplePairedTwoTrack.h:120
msgid "Sorry, this effect cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr ""
+msgstr "Sorry: Dieser Effekt kann nicht verwendet werden bei Stereo-Spuren, bei denen die einzelnen Kanäle nicht zueinander passen."
#: ../src/effects/SpikeCleaner.cpp:69
msgid "Spike Cleaner"
@@ -5628,8 +5602,7 @@ msgid "Max Spike Duration (milliseconds): \n"
msgstr "Maximale Dauer (in Millisekunden): \n"
"(99999 oder mehr bedeutet \"aus\")"
-#: ../src/effects/TruncSilence.cpp:269
-#: ../src/effects/SpikeCleaner.cpp:178
+#: ../src/effects/TruncSilence.cpp:269 ../src/effects/SpikeCleaner.cpp:178
msgid "Theshold for silence: "
msgstr "Grenzwert für Stille:"
@@ -5653,47 +5626,47 @@ msgstr "Stereo in Mono umwandeln"
#: effects/TimeScale.cpp:140
msgid "Time Scale"
-msgstr ""
+msgstr "Zeit-Achse"
#: effects/TimeScale.cpp:176
msgid "Sliding Time Scale/Pitch Shift"
-msgstr ""
+msgstr "Gleitende Zeit-Skala/Pitch"
#: effects/TimeScale.cpp:178
msgid "using SBSMS, by Clayton Otey"
-msgstr ""
+msgstr "nutzt SBSMS von Clayton Ote"
#: effects/TimeScale.cpp:187
msgid "Initial Tempo Change (%):"
-msgstr ""
+msgstr "Anfängliche Tempo-Änderung (%):"
#: effects/TimeScale.cpp:191
msgid "Final Tempo Change (%):"
-msgstr ""
+msgstr "Final Tempo Change (%):"
#: effects/TimeScale.cpp:202
msgid "Initial Tempo Change (%)"
-msgstr ""
+msgstr "Anfängliche Tempo-Änderung (%)"
#: effects/TimeScale.cpp:211
msgid "Final Tempo Change (%)"
-msgstr ""
+msgstr "Tempo-Änderung (%)"
#: effects/TimeScale.cpp:219
msgid "Initial Pitch Shift (semitones) [-12 to 12]:"
-msgstr ""
+msgstr "Anfangs-Pitch (in Halbtönen) [-12 bis 12]:"
#: effects/TimeScale.cpp:223
msgid "Final Pitch Shift (semitones) [-12 to 12]:"
-msgstr ""
+msgstr "End-Pitch (in Halbtönen) [-12 bis 12]:"
#: effects/TimeScale.h:33
msgid "Sliding Time Scale/Pitch Shift..."
-msgstr ""
+msgstr "Gleitende Zeit-Skala/Pitch..."
#: effects/TimeScale.h:47
msgid "Changing Tempo/Pitch"
-msgstr ""
+msgstr "Änderung von Tempo/Pitch"
#: ../src/effects/ToneGen.cpp:59
#, c-format
@@ -5706,7 +5679,7 @@ msgstr "Linear"
#: effects/ToneGen.cpp:70
msgid "Logarithmic"
-msgstr ""
+msgstr "Logarithmisch"
#: ../src/effects/ToneGen.cpp:66
msgid "Chirp Generator"
@@ -5736,30 +5709,29 @@ msgstr "Rechteck, kein Aliasing"
msgid "Frequency (Hz)"
msgstr "Frequenz (Hz)"
-#: ../src/effects/ToneGen.cpp:296
-#: ../src/effects/ToneGen.cpp:321
+#: ../src/effects/ToneGen.cpp:296 ../src/effects/ToneGen.cpp:321
msgid "Waveform:"
msgstr "Wellenform:"
#: effects/ToneGen.cpp:358
msgid "Frequency Hertz Start"
-msgstr ""
+msgstr "Startfrequenz in Hertz"
#: effects/ToneGen.cpp:359
msgid "Frequency Hertz End"
-msgstr ""
+msgstr "Endfrequenz in Hertz"
#: effects/ToneGen.cpp:360
msgid "Amplitude Start"
-msgstr ""
+msgstr "Start-Amplitude"
#: effects/ToneGen.cpp:361
msgid "Amplitude End"
-msgstr ""
+msgstr "End-Amplitude"
#: effects/ToneGen.cpp:365
msgid "Interpolation:"
-msgstr ""
+msgstr "Interpolation:"
#: effects/ToneGen.h:39
msgid "Chirp..."
@@ -5779,33 +5751,46 @@ msgstr "Erzeuge Ton"
#: effects/TruncSilence.cpp:113
msgid "All tracks must have the same sample rate"
-msgstr ""
+msgstr "Alle Spuren müssen die gleiche Sample-Frequenz haben"
-#: effects/TruncSilence.cpp:113
-#: effects/TruncSilence.cpp:322
+#: effects/TruncSilence.cpp:113 effects/TruncSilence.cpp:322
msgid "Truncate Silence"
msgstr "Stille entfernen"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr ""
+
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
+msgstr ""
+
+#: ../src/prefs/AudioIOPrefs.cpp:175 ../src/prefs/AudioIOPrefs.cpp:178
+msgid "milliseconds"
+msgstr "Millisekunden"
+
#: effects/TruncSilence.cpp:346
msgid "Max silence duration:"
msgstr "Maximale Dauer der Stille:"
-#: ../src/prefs/AudioIOPrefs.cpp:175
-#: ../src/prefs/AudioIOPrefs.cpp:178
-msgid "milliseconds"
-msgstr "Millisekunden"
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ""
#: effects/TruncSilence.cpp:351
msgid "Threshold for silence:"
msgstr "Schwellwert für Stille:"
-#: effects/TruncSilence.cpp:375
-msgid " Duration must be at least 1 millisecond"
-msgstr " Dauer muss mindestens 1 Millisekunde sein"
+#: effects/TruncSilence.cpp:506
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
+msgstr ""
-#: BatchCommands.cpp:236
-#: effects/TruncSilence.cpp:84
-#: effects/TruncSilence.h:29
+#: BatchCommands.cpp:236 effects/TruncSilence.cpp:84 effects/TruncSilence.h:29
msgid "Truncate Silence..."
msgstr "Stille entfernen..."
@@ -5813,17 +5798,55 @@ msgstr "Stille entfernen..."
msgid "Truncating Silence..."
msgstr "&Stille abschneiden..."
-#: ../src/effects/VST/VSTEffect.cpp:179
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "Leider können VST-Effekte nicht auf Stereotonspuren angewandt werden, deren Kanäle nicht zusammenpassen."
+#: ../src/effects/ladspa/LadspaEffect.cpp:601
+msgid "Effect Settings"
+msgstr "Effekteinstellungen"
-#: ../src/effects/VST/VSTEffect.cpp:195
-msgid "Can't process replacing"
-msgstr "Ersetzen nicht möglich."
+#: ../src/prefs/QualityPrefs.cpp:72 ../src/effects/ladspa/LadspaEffect.cpp:559
+#: ../src/effects/ladspa/LadspaEffect.cpp:567
+msgid "None"
+msgstr "Keiner"
-#: ../src/effects/VST/VSTEffect.cpp:409
-msgid "VST Plug-in parameters:"
-msgstr "VST Plugin-Parameter:"
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr ""
#: ../src/effects/Wahwah.cpp:60
#, c-format
@@ -5844,15 +5867,16 @@ msgstr "Resonanzgte (Q):"
#: effects/Wahwah.cpp:239
msgid "Resonance"
-msgstr ""
+msgstr "Resonanz"
#: ../src/effects/Wahwah.cpp:561
msgid "Wah Frequency Offset (%):"
msgstr "Frequenzverschiebung (%):"
+# WA
#: effects/Wahwah.cpp:244
msgid "Wah frequency offset in percent"
-msgstr ""
+msgstr "Wahwah-Frequenz-Offset in Prozent"
#: ../src/effects/Wahwah.h:34
msgid "Wahwah..."
@@ -5870,37 +5894,27 @@ msgstr "Effekt anwenden: %s"
#: effects/ladspa/LadspaEffect.cpp:189
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr ""
-
-#: ../src/prefs/QualityPrefs.cpp:72
-#: ../src/effects/ladspa/LadspaEffect.cpp:559
-#: ../src/effects/ladspa/LadspaEffect.cpp:567
-msgid "None"
-msgstr "Kein"
+msgstr "Sorry: Plug-In-Effekte können nicht verwendet werden bei Stereo-Spuren, bei denen die einzelnen Kanäle nicht zueinander passen."
#: ../src/effects/ladspa/LadspaEffect.cpp:561
msgid "Author: "
msgstr "Autor: "
-#: ../src/effects/ladspa/LadspaEffect.cpp:601
-msgid "Effect Settings"
-msgstr "Effekteinstellungen"
-
#: ../src/effects/ladspa/LadspaEffect.cpp:692
msgid "Length (seconds)"
msgstr "Länge (Sek): "
#: effects/lv2/LV2Effect.cpp:849 effects/lv2/LV2Effect.cpp:852
msgid "Note length (seconds)"
-msgstr ""
+msgstr "Noten-Länge (Sekunden)"
#: effects/lv2/LV2Effect.cpp:860 effects/lv2/LV2Effect.cpp:863
msgid "Note velocity"
-msgstr ""
+msgstr "Noten-Geschwindigkeit"
#: effects/lv2/LV2Effect.cpp:871 effects/lv2/LV2Effect.cpp:874
msgid "Note key"
-msgstr ""
+msgstr "Note"
#: ../src/effects/nyquist/Nyquist.cpp:253
msgid "Applying Nyquist Effect..."
@@ -5926,8 +5940,7 @@ msgstr "Nyquist"
msgid "Nyquist Output: "
msgstr "Nyquist Diagnose Protokoll:"
-#: effects/nyquist/Nyquist.cpp:594
-#: effects/nyquist/Nyquist.cpp:605
+#: effects/nyquist/Nyquist.cpp:594 effects/nyquist/Nyquist.cpp:605
msgid "Nyquist returned the value:"
msgstr "Nyquist gab diesen Wert zurück:"
@@ -5942,27 +5955,27 @@ msgstr "Nyquist gab zu viele Audiokan
#: effects/vamp/VampEffect.cpp:75
#, c-format
msgid "Extracting features: %s"
-msgstr ""
+msgstr "Extrakt-Features: %s"
#: effects/vamp/VampEffect.cpp:106
msgid "Sorry, Vamp Plug-ins cannot be run on stereo tracks where the individual channels of the track do not match."
-msgstr ""
+msgstr "Sorry: Vamp-Plug-Ins können nicht verwendet werden bei Stereo-Spuren, bei denen die einzelnen Kanäle nicht zueinander passen."
#: effects/vamp/VampEffect.cpp:120
msgid "Sorry, failed to load Vamp Plug-in."
-msgstr ""
+msgstr "Sorry: Vamp Plug-In konnte nicht geladen werden."
#: effects/vamp/VampEffect.cpp:228
msgid "Sorry, Vamp Plug-in failed to initialize."
-msgstr ""
+msgstr "Sorry: Vamp-Plug-In konnte nicht initialisiert werden."
#: effects/vamp/VampEffect.cpp:376
msgid " - Vamp audio analysis plugin"
-msgstr ""
+msgstr " - Vamp-Audio-Analyse-Plugin"
#: effects/vamp/VampEffect.cpp:423
msgid "Plugin Settings"
-msgstr ""
+msgstr "Plug-In-Einstellungen"
#: effects/vamp/VampEffect.cpp:446
msgid "Program"
@@ -5970,11 +5983,11 @@ msgstr "Programm"
#: export/Export.cpp:469
msgid "All the selected audio is muted."
-msgstr ""
+msgstr "Alle ausgewählten Audios sind stummgestellt."
#: export/Export.cpp:471
msgid "All the audio is muted."
-msgstr ""
+msgstr "Alle Audios sind stummgestellt."
#: export/Export.cpp:445
msgid "Export File"
@@ -5995,12 +6008,16 @@ msgid "You are about to save a %s file with the name \"%s\".\n"
"Normally these files end in \".%s\", and some programs will not open files with nonstandard extensions.\n"
"\n"
"Are you sure you want to save the file under this name?"
-msgstr ""
+msgstr "Sie wollen eine %s -Datei speichern mit dem Name \"%s\".\n"
+"\n"
+"Üblicherweise enden solche Dateien mit \".%s\" und einige Programme werden Dateien ohne diese Standard-Endung nicht öffnen können.\n"
+"\n"
+"Wollen Sie die Datei tatsächlich unter diesem Name speichern?"
#: export/Export.cpp:516
#, c-format
msgid "A file named \"%s\" already exists. Replace?"
-msgstr ""
+msgstr "Den Dateiname \"%s\" gibt es bereits. Ersetzen?"
#: ../src/export/Export.cpp:161
msgid "Your tracks will be mixed down to two stereo channels in the exported file."
@@ -6029,21 +6046,20 @@ msgstr "- Rechts"
#: export/Export.cpp:1072
msgid "Mixer Panel"
-msgstr ""
+msgstr "Mixer-Panel"
-#: ../src/export/Export.cpp:775
-#: ../src/export/Export.cpp:829
+#: ../src/export/Export.cpp:775 ../src/export/Export.cpp:829
#, c-format
msgid "Output Channels: %2d"
msgstr "Wiedergabe-Kanäle: %2d"
#: export/ExportCL.cpp:55
msgid "Specify Command Line Encoder"
-msgstr ""
+msgstr "Befehlszeile-Encoder benennen"
#: export/ExportCL.cpp:70
msgid "Command Line Export Setup"
-msgstr ""
+msgstr "Befehlszeile-Einstellungen"
#: export/ExportCL.cpp:75
msgid "Command:"
@@ -6051,16 +6067,16 @@ msgstr "Befehl:"
#: export/ExportCL.cpp:80
msgid "Show output"
-msgstr ""
+msgstr "Ergebnis zeigen"
#: export/ExportCL.cpp:87
#, c-format
msgid "Data will be piped to standard in. \"%f\" will be replaced with output filename selected."
-msgstr ""
+msgstr "Die Daten werden weitergeleitet zum Standard-Eingang. \"%f\" wird ersetzt durch den ausgewählten Ausgang-Dateiname."
#: export/ExportCL.cpp:219
msgid "(external program)"
-msgstr ""
+msgstr "(externes Programm)"
#: ../src/export/ExportPCM.cpp:79
#, c-format
@@ -6077,184 +6093,202 @@ msgstr "Gesamtes Projekt per Kommandozeilen Encoder exportieren"
#: export/ExportCL.cpp:387
msgid "Command Output"
+msgstr "Befehls-Ausgabe"
+
+#: export/ExportFFmpeg.cpp:61
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
msgstr ""
-#: export/ExportFFmpeg.cpp:59
+#: export/ExportFFmpeg.cpp:232
msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
#: export/ExportFFmpeg.cpp:394
#, c-format
msgid "FFmpeg cannot find audio codec 0x%x.\n"
"Support for this codec is probably not compiled in."
-msgstr ""
+msgstr "FFmpeg kann den Audio-Codec 0x%x nicht finden.\n"
+"Unterstützung für diesen Codec ist vielleicht nicht einkompiliert."
#: export/ExportFFmpeg.cpp:614
#, c-format
msgid "Attempted to export %d channels, but max. channels for selected output format is %d"
-msgstr ""
+msgstr "%d Kanäle sollen ausgegeben werden, doch das Ausgabeformat unterstützt höchstens %d Kanäle"
#: export/ExportFFmpeg.cpp:638
#, c-format
msgid "Exporting selected audio as %s"
-msgstr ""
+msgstr "Ausgewähltes Audio wird als %s exportiert"
#: export/ExportFFmpeg.cpp:639
#, c-format
msgid "Exporting entire file as %s"
-msgstr ""
+msgstr "Ganze Datei exportiert als %s"
#: export/ExportMP3.cpp:1863
msgid "Invalid sample rate"
-msgstr ""
+msgstr "Ungültige Sample-Frequenz"
#: export/ExportFFmpeg.cpp:715
#, c-format
msgid "The project sample rate (%d) is not supported by the current output\n"
"file format. "
-msgstr ""
+msgstr "Die Projekt-Sample-Frequenz (%d) wird von dem aktuellen Datei-\n"
+"Format nicht unterstützt."
#: export/ExportFFmpeg.cpp:718
#, c-format
msgid "The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
"supported by the current output file format. "
-msgstr ""
+msgstr "Die Kombination aus Projekt-Sample-Frequenz (%d) und Bit-Rate\n"
+"(%d kbit/s) wird von dem Export-Datei-Format nicht unterstützt."
#: export/ExportMP3.cpp:1882
msgid "You may resample to one of the rates below."
-msgstr ""
+msgstr "Sie können in eine dieser Frequenzen umwandeln."
#: export/ExportMP3.cpp:1905
msgid "Sample Rates"
-msgstr ""
+msgstr "Sample-Frequenzen"
#: export/ExportFFmpegDialogs.cpp:93
msgid "Specify AC3 Options"
-msgstr ""
+msgstr "AC3-Optionen einstellen"
#: export/ExportFFmpegDialogs.cpp:117
msgid "AC3 Export Setup"
-msgstr ""
+msgstr "AC3-Export-Einstellungen"
-#: ../src/prefs/FileFormatPrefs.cpp:182
-#: ../src/prefs/FileFormatPrefs.cpp:207
+#: ../src/prefs/FileFormatPrefs.cpp:182 ../src/prefs/FileFormatPrefs.cpp:207
msgid "Bit Rate:"
msgstr "Bitrate:"
#: export/ExportFFmpegDialogs.cpp:162
msgid "Specify AAC Options"
-msgstr ""
+msgstr "AAC-Optionen einstellen"
#: export/ExportFFmpegDialogs.cpp:178
msgid "AAC Export Setup"
-msgstr ""
+msgstr "AAC-Export-Einstellungen"
+
+#: prefs/FileFormatPrefs.cpp:219
+msgid "Quality:"
+msgstr "Qualität"
#: export/ExportFFmpegDialogs.cpp:217
msgid "Specify AMR-NB Options"
-msgstr ""
+msgstr "AMR-NB-Optionen einstellen"
#: export/ExportFFmpegDialogs.cpp:241
msgid "AMR-NB Export Setup"
-msgstr ""
+msgstr "AMR-NB-Export-Einstellungen"
#: export/ExportFFmpegDialogs.cpp:286
msgid "Specify AMR-WB Options"
-msgstr ""
+msgstr "AMR-WB-Optionen einstellen"
#: export/ExportFFmpegDialogs.cpp:310
msgid "AMR-WB Export Setup"
-msgstr ""
+msgstr "AMR-WB-Export-Einstellungen"
#: export/ExportFFmpegDialogs.cpp:357
msgid "Specify WMA Options"
-msgstr ""
+msgstr "WMA-Optionen einstellen"
#: export/ExportFFmpegDialogs.cpp:381
msgid "WMA Export Setup"
-msgstr ""
+msgstr "WMA-Export-Einstellungen"
#: export/ExportFFmpegDialogs.cpp:509
#, c-format
msgid "Overwrite preset '%s'?"
-msgstr ""
+msgstr "Voreinstellung '%s' überschreiben?"
#: export/ExportFFmpegDialogs.cpp:510
msgid "Confirm Overwrite"
-msgstr ""
+msgstr "Überschreiben bestätigen"
#: export/ExportFFmpegDialogs.cpp:501
msgid "Please select format before saving a profile"
-msgstr ""
+msgstr "Bitte wählen Sie ein Format bevor Sie ein Profil speichern"
#: export/ExportFFmpegDialogs.cpp:509
msgid "Please select codec before saving a profile"
-msgstr ""
+msgstr "Bitte wählen Sie einen Codec bevor Sie ein Profil speichern"
#: export/ExportFFmpegDialogs.cpp:580
#, c-format
msgid "Preset '%s' does not exist."
-msgstr ""
+msgstr "Die Voreinstellung '%s' gibt es nicht."
#: export/ExportFFmpegDialogs.cpp:803
msgid "Specify Other Options"
-msgstr ""
+msgstr "Bitte geben Sie andere Optionen ein"
#: export/ExportFFmpegDialogs.cpp:897
msgid "Preset:"
-msgstr ""
+msgstr "Voreinstellung:"
#: export/ExportFFmpegDialogs.cpp:898
msgid "Load Preset"
-msgstr ""
+msgstr "Voreinstellung laden"
#: export/ExportFFmpegDialogs.cpp:899
msgid "Save Preset"
-msgstr ""
+msgstr "Voreinstellung speichern"
#: export/ExportFFmpegDialogs.cpp:900
msgid "Delete Preset"
-msgstr ""
+msgstr "Voreinstellung löschen"
#: export/ExportFFmpegDialogs.cpp:901
msgid "Import Presets"
-msgstr ""
+msgstr "Voreinstellung importieren"
#: export/ExportFFmpegDialogs.cpp:902
msgid "Export Presets"
-msgstr ""
+msgstr "Voreinstellung exportieren"
#: export/ExportPCM.cpp:177
msgid "Format:"
-msgstr ""
+msgstr "Format:"
#: export/ExportFFmpegDialogs.cpp:909
msgid "Codec:"
-msgstr ""
+msgstr "Codec:"
#: export/ExportFFmpegDialogs.cpp:913
msgid "Not all formats and codecs are compatible. Some parameters (such as bitrate and samplerate) combinations are not compatible with some codecs too."
-msgstr ""
+msgstr "Nicht alle Formate und Codecs lassen sich kombinieren. Auch sind nicht alle Parameter (wie Bit-Rate und Sample-Frequenz) mit allen Codecs kompatibel."
#: export/ExportFFmpegDialogs.cpp:916
msgid "Format selector:"
-msgstr ""
+msgstr "Formatauswahl:"
#: export/ExportFFmpegDialogs.cpp:917
msgid "Codec selector:"
-msgstr ""
+msgstr "Codecauswahl:"
#: export/ExportFFmpegDialogs.cpp:919
msgid "Show All Formats"
-msgstr ""
+msgstr "Alle Formate anzeigen"
#: export/ExportFFmpegDialogs.cpp:920
msgid "Show All Codecs"
-msgstr ""
+msgstr "Alle Codecs anzeigen"
#: export/ExportFFmpegDialogs.cpp:914
msgid "Options"
-msgstr ""
+msgstr "Optionen"
#: ../src/prefs/GUIPrefs.cpp:105
msgid "Language:"
@@ -6264,80 +6298,92 @@ msgstr "Sprache:"
msgid "ISO 639 3-letter language code\n"
"Optional\n"
"empty - automatic"
-msgstr ""
+msgstr "ISO 639 3-letter Sprachcode\n"
+"Optional\n"
+"leer - automatisch"
#: export/ExportFFmpegDialogs.cpp:934
msgid "Tag:"
-msgstr ""
+msgstr "Tag:"
#: export/ExportFFmpegDialogs.cpp:935
msgid "Codec tag (FOURCC)\n"
"Optional\n"
"empty - automatic"
-msgstr ""
+msgstr "Codec-Tag (FOURCC)\n"
+"Optional\n"
+"leer - automatisch"
#: export/ExportFFmpegDialogs.cpp:938
msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n"
"Some codecs may only accept specific values (128k, 192k, 256k etc)\n"
"0 - automatic\n"
"Recommended - 192000"
-msgstr ""
+msgstr "Bit-Rate (Bits/Sekunde) - beeinflusst Dateigröße und Qualität\n"
+"Manche Codecs akzeptieren nur bestimmte Werte (128k, 192k, 256k etc)\n"
+"0 - automatisch\n"
+"Empfohlen - 192000"
-#: prefs/FileFormatPrefs.cpp:219
-msgid "Quality:"
-msgstr "Qualität"
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:928
+msgid "Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
-msgstr ""
+msgstr "Generelle Qualität, spezifisch verwendet von jeweiligen Codecs\n"
+"Required for Ogg-Vorbis\n"
+"0 - automatisch\n"
+"-1 - aus (Verwende stattdessen Bit-Rate)"
#: export/ExportFFmpegDialogs.cpp:943
msgid "Sample Rate:"
-msgstr ""
+msgstr "Sample-Frequenz:"
#: export/ExportFFmpegDialogs.cpp:944
msgid "Sample rate (Hz)\n"
"0 - don't change sample rate"
-msgstr ""
+msgstr "Sample-Frequenz (Hz)\n"
+"0 - Sample-Frequenz nicht ändern"
#: export/ExportFFmpegDialogs.cpp:946
msgid "Cutoff Bandwidth:"
-msgstr ""
+msgstr "Zu begrenzende Bandbreite:"
-#: export/ExportFFmpegDialogs.cpp:947
+#: export/ExportFFmpegDialogs.cpp:936
+#, fuzzy
msgid "Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
-msgstr ""
+"0 - automatic"
+msgstr "Zu begrenzende Bandbreite (Hz)\n"
+"Optional\n"
+"0 - automatisch"
#: export/ExportFFmpegDialogs.cpp:949
msgid "Profile:"
-msgstr ""
+msgstr "Profil:"
#: export/ExportFFmpegDialogs.cpp:951
msgid "AAC Profile\n"
"Low Complexity -default\n"
"Most players won't play anything other than LC"
-msgstr ""
+msgstr "AAC-Profil\n"
+"Low Complexity (LC) -default\n"
+"Die meisten Player spielen nur LC"
#: export/ExportFFmpegDialogs.cpp:940
msgid "Use Bit Reservoir"
-msgstr ""
+msgstr "Bit-Reservoir nutzen"
#: export/ExportFFmpegDialogs.cpp:943
msgid "Use Variable Block Length"
-msgstr ""
+msgstr "Variable Block-Länge nutzen"
#: export/ExportFFmpegDialogs.cpp:948
msgid "FLAC options"
-msgstr ""
+msgstr "FLAC-Optionen"
#: export/ExportFFmpegDialogs.cpp:965
msgid "Compression Level:"
-msgstr ""
+msgstr "Kompressions-Level:"
#: export/ExportFFmpegDialogs.cpp:966
msgid "Compression level\n"
@@ -6345,11 +6391,15 @@ msgid "Compression level\n"
"-1 - automatic\n"
"min - 0 (fast encoding, large output file)\n"
"max - 10 (slow encoding, small output file)"
-msgstr ""
+msgstr "Kompressions-Level\n"
+"Benötigt für FLAC\n"
+"-1 - automatisch\n"
+"min - 0 (schnelles kodieren, größere Dateien)\n"
+"max - 10 (langsameres kodieren, kleinere Dateien)"
#: export/ExportFFmpegDialogs.cpp:968
msgid "Frame Size:"
-msgstr ""
+msgstr "Frame-Größe:"
#: export/ExportFFmpegDialogs.cpp:969
msgid "Frame size\n"
@@ -6357,11 +6407,15 @@ msgid "Frame size\n"
"0 - default\n"
"min - 16\n"
"max - 65535"
-msgstr ""
+msgstr "Frame-Größe\n"
+"Optional\n"
+"0 - default\n"
+"min - 16\n"
+"max - 65535"
#: export/ExportFFmpegDialogs.cpp:971
msgid "LPC coefficients precision"
-msgstr ""
+msgstr "Genauigkeit des LPC-Koeffizienten"
#: export/ExportFFmpegDialogs.cpp:972
msgid "LPC coefficients precision\n"
@@ -6369,11 +6423,15 @@ msgid "LPC coefficients precision\n"
"0 - default\n"
"min - 1\n"
"max - 15"
-msgstr ""
+msgstr "Genauigkeit des LPC-Koeffizienten\n"
+"Optional\n"
+"0 - default\n"
+"min - 1\n"
+"max - 15"
#: export/ExportFFmpegDialogs.cpp:974
msgid "Minimal prediction order"
-msgstr ""
+msgstr "Geringe Vorhersage"
#: export/ExportFFmpegDialogs.cpp:975
msgid "Minimal prediction order\n"
@@ -6381,11 +6439,15 @@ msgid "Minimal prediction order\n"
"-1 - default\n"
"min - 0\n"
"max - 32 (with LPC) or 4 (without LPC)"
-msgstr ""
+msgstr "Geringe Vorhersage\n"
+"Optional\n"
+"-1 - default\n"
+"min - 0\n"
+"max - 32 (mit LPC) oder 4 (ohne LPC)"
#: export/ExportFFmpegDialogs.cpp:977
msgid "Maximal prediction order"
-msgstr ""
+msgstr "Maximale Vorhersage"
#: export/ExportFFmpegDialogs.cpp:978
msgid "Maximal prediction order\n"
@@ -6393,22 +6455,29 @@ msgid "Maximal prediction order\n"
"-1 - default\n"
"min - 0\n"
"max - 32 (with LPC) or 4 (without LPC)"
-msgstr ""
+msgstr "Hohe Vorhersage\n"
+"Optional\n"
+"-1 - default\n"
+"min - 0\n"
+"max - 32 (mit LPC) or 4 (ohne LPC)"
#: export/ExportFFmpegDialogs.cpp:980
msgid "Prediction Order Method:"
-msgstr ""
+msgstr "Vorhersage-Methode:"
#: export/ExportFFmpegDialogs.cpp:982
msgid "Prediction Order Method\n"
"Estimate - fastest, lower compression\n"
"Log search - slowest, best compression\n"
"Full search - default"
-msgstr ""
+msgstr "Vorhersage-Methode\n"
+"Estimate - schnell, geringe Kompression\n"
+"Log search - langsam, beste Kompression\n"
+"Full search - default"
#: export/ExportFFmpegDialogs.cpp:984
msgid "Minimal partition order"
-msgstr ""
+msgstr "MInimale Aufteilung"
#: export/ExportFFmpegDialogs.cpp:985
msgid "Minimal partition order\n"
@@ -6416,11 +6485,15 @@ msgid "Minimal partition order\n"
"-1 - default\n"
"min - 0\n"
"max - 8"
-msgstr ""
+msgstr "Minimale Aufteilung\n"
+"Optional\n"
+"-1 - default\n"
+"min - 0\n"
+"max - 8"
#: export/ExportFFmpegDialogs.cpp:987
msgid "Maximal partition order"
-msgstr ""
+msgstr "Maximale Aufteilung"
#: export/ExportFFmpegDialogs.cpp:988
msgid "Maximal partition order\n"
@@ -6428,52 +6501,60 @@ msgid "Maximal partition order\n"
"-1 - default\n"
"min - 0\n"
"max - 8"
-msgstr ""
+msgstr "Maximale Aufteilung\n"
+"Optional\n"
+"-1 - default\n"
+"min - 0\n"
+"max - 8"
#: export/ExportFFmpegDialogs.cpp:977
msgid "Use LPC"
-msgstr ""
+msgstr "LPC (lineare Vorhersage) nutzen"
#: export/ExportFFmpegDialogs.cpp:984
msgid "MPEG container options"
-msgstr ""
+msgstr "Optionen für MPEG-Container"
#: export/ExportFFmpegDialogs.cpp:1001
msgid "Mux Rate:"
-msgstr ""
+msgstr "Multiplex-Rate:"
#: export/ExportFFmpegDialogs.cpp:1002
msgid "Maximum bit rate of the multiplexed stream\n"
"Optional\n"
"0 - default"
-msgstr ""
+msgstr "Maximale Bit-Rate des Multiplex-Streams\n"
+"Optional\n"
+"0 - default"
#: export/ExportFFmpegDialogs.cpp:1004
msgid "Packet Size:"
-msgstr ""
+msgstr "Paket-Größe:"
#: export/ExportFFmpegDialogs.cpp:1005
msgid "Packet size\n"
"Optional\n"
"0 - default"
-msgstr ""
+msgstr "Paket-Größe\n"
+"Optional\n"
+"0 - default"
#: export/ExportFFmpegDialogs.cpp:1207
msgid "You can't delete a preset without name"
-msgstr ""
+msgstr "Sie können keine Voreinstellungen löschen ohne einen Namen einzugeben"
#: export/ExportFFmpegDialogs.cpp:1219
#, c-format
msgid "Delete preset '%s'?"
-msgstr ""
+msgstr "Voreinstellung '%s' löschen?"
#: export/ExportFFmpegDialogs.cpp:1238
msgid "You can't save a preset without name"
-msgstr ""
+msgstr "Sie können keine Voreinstellungen speichern ohne einen Namen einzugeben"
#: export/ExportFFmpegDialogs.cpp:1277
msgid "Select xml file with presets to import"
-msgstr ""
+msgstr "Wählen Sie eine xml-Datei mit Voreinstellungen für den Import aus"
#: ../src/prefs/KeyConfigPrefs.cpp:197
msgid "XML files (*.xml)|*.xml|All files (*.*)|*.*"
@@ -6481,75 +6562,75 @@ msgstr "XML-Dateien (*.xml)|*.xml|Alle Dateien (*.*)|*.*"
#: export/ExportFFmpegDialogs.cpp:1292
msgid "Select xml file to export presets into"
-msgstr ""
+msgstr "Wählen Sie eine xml-Datei aus für den Export der Voreinstellungen in"
#: export/ExportFFmpegDialogs.cpp:1361
msgid "Failed to guess format"
-msgstr ""
+msgstr "Format konnte nicht erraten werden"
#: export/ExportFFmpegDialogs.cpp:1403
msgid "Failed to find the codec"
-msgstr ""
+msgstr "Codec konnte nicht gefunden werden"
#: export/ExportFFmpegDialogs.h:53
msgid "M4A (AAC) Files (FFmpeg)"
-msgstr ""
+msgstr "M4A (AAC)-Dateien (FFmpeg)"
#: export/ExportFFmpegDialogs.h:54
msgid "AC3 Files (FFmpeg)"
-msgstr ""
+msgstr "AC3-Dateien (FFmpeg)"
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:56
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:57
msgid "WMA (version 2) Files (FFmpeg)"
-msgstr ""
+msgstr "WMA (Version 2)-Dateien (FFmpeg)"
#: export/ExportFFmpegDialogs.h:58
msgid "Custom FFmpeg Export"
-msgstr ""
+msgstr "FFmpeg-Export"
#: export/ExportFFmpegDialogs.h:373
msgid "LTP"
-msgstr ""
+msgstr "LTP (Audiokompression)"
#: export/ExportFFmpegDialogs.h:373
msgid "Low Complexity"
-msgstr ""
+msgstr "Niedrige Komplexität"
#: export/ExportFFmpegDialogs.h:373
msgid "Main profile"
-msgstr ""
+msgstr "Hauptprofil"
#: export/ExportFFmpegDialogs.h:676
msgid "2-level"
-msgstr ""
+msgstr "2 Level"
#: export/ExportFFmpegDialogs.h:676
msgid "4-level"
-msgstr ""
+msgstr "4 Level"
#: export/ExportFFmpegDialogs.h:676
msgid "8-level"
-msgstr ""
+msgstr "8 Level"
#: export/ExportFFmpegDialogs.h:676
msgid "Estimate"
-msgstr ""
+msgstr "Abschätzen"
#: export/ExportFFmpegDialogs.h:676
msgid "Full search"
-msgstr ""
+msgstr "Vollständige Suche"
#: export/ExportFFmpegDialogs.h:676
msgid "Log search"
-msgstr ""
+msgstr "Log-Suche"
#: export/ExportFLAC.cpp:68
msgid "Specify FLAC Options"
@@ -6615,6 +6696,17 @@ msgstr "Sampletiefe:"
msgid "FLAC Files"
msgstr "FLAC-Dateien"
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
#: ../src/export/ExportFLAC.cpp:93
msgid "Exporting the selected audio as FLAC"
msgstr "Ausgewähltes Audio als FLAC exportieren"
@@ -6639,53 +6731,38 @@ msgstr "MP2-Dateien"
msgid "Cannot export MP2 with this sample rate and bit rate"
msgstr "MP2 kann mit dieser Sample- bzw. Bitrate nicht exportiert werden."
-#: ../src/export/ExportOGG.cpp:55
-#: ../src/export/ExportMP2.cpp:114
+#: ../src/export/ExportOGG.cpp:55 ../src/export/ExportMP2.cpp:114
#: ../src/export/ExportMP3.cpp:1632
msgid "Unable to open target file for writing"
msgstr "Kann Zieldatei nicht zum Schreiben öffnen"
-#: ../src/export/ExportMP2.cpp:144
-#: ../src/export/ExportMP3.cpp:1680
+#: ../src/export/ExportMP2.cpp:144 ../src/export/ExportMP3.cpp:1680
#, c-format
msgid "Exporting selected audio at %d kbps"
msgstr "Ausgewähltes Audio exportieren bei einer Bitrate von %d kbit/s"
-#: ../src/export/ExportMP2.cpp:145
-#: ../src/export/ExportMP3.cpp:1681
+#: ../src/export/ExportMP2.cpp:145 ../src/export/ExportMP3.cpp:1681
#, c-format
msgid "Exporting entire file at %d kbps"
msgstr "Gesamte Datei mit einer Bitrate von %d kbit/s exportieren"
#. i18n-hint: kbps is the bitrate of the MP3 file, kilobits per second
-#: export/ExportMP3.cpp:142
-#: export/ExportMP3.cpp:143
-#: export/ExportMP3.cpp:144
-#: export/ExportMP3.cpp:145
-#: export/ExportMP3.cpp:146
-#: export/ExportMP3.cpp:147
-#: export/ExportMP3.cpp:148
-#: export/ExportMP3.cpp:149
-#: export/ExportMP3.cpp:150
-#: export/ExportMP3.cpp:151
-#: export/ExportMP3.cpp:152
-#: export/ExportMP3.cpp:153
-#: export/ExportMP3.cpp:154
-#: export/ExportMP3.cpp:155
-#: export/ExportMP3.cpp:156
-#: export/ExportMP3.cpp:157
-#: export/ExportMP3.cpp:158
-#: export/ExportMP3.cpp:159
+#: export/ExportMP3.cpp:142 export/ExportMP3.cpp:143 export/ExportMP3.cpp:144
+#: export/ExportMP3.cpp:145 export/ExportMP3.cpp:146 export/ExportMP3.cpp:147
+#: export/ExportMP3.cpp:148 export/ExportMP3.cpp:149 export/ExportMP3.cpp:150
+#: export/ExportMP3.cpp:151 export/ExportMP3.cpp:152 export/ExportMP3.cpp:153
+#: export/ExportMP3.cpp:154 export/ExportMP3.cpp:155 export/ExportMP3.cpp:156
+#: export/ExportMP3.cpp:157 export/ExportMP3.cpp:158 export/ExportMP3.cpp:159
msgid "kbps"
msgstr "kbit/s"
#: export/ExportMP3.cpp:240
msgid "(Best Quality)"
-msgstr ""
+msgstr "(Höchste Qualität)"
#: export/ExportMP3.cpp:241
msgid "(Smaller files)"
-msgstr ""
+msgstr "Kleinere Dateien"
#: export/ExportMP3.cpp:178
msgid "Fast"
@@ -6697,15 +6774,15 @@ msgstr "Standard"
#: export/ExportMP3.cpp:248
msgid "Insane"
-msgstr ""
+msgstr "Abgefahren"
#: export/ExportMP3.cpp:249
msgid "Extreme"
-msgstr ""
+msgstr "Extrem"
#: export/ExportMP3.cpp:251
msgid "Medium"
-msgstr ""
+msgstr "Mittel"
#: export/ExportMP3.cpp:249
msgid "Specify MP3 Options"
@@ -6721,7 +6798,7 @@ msgstr "Bit-Rate-Modus:"
#: export/ExportMP3.cpp:276
msgid "Preset"
-msgstr ""
+msgstr "Voreinstellung"
#: prefs/FileFormatPrefs.cpp:195
msgid "Variable"
@@ -6729,14 +6806,13 @@ msgstr "Bereich"
#: export/ExportMP3.cpp:278
msgid "Average"
-msgstr ""
+msgstr "Durchschnittlich"
#: prefs/FileFormatPrefs.cpp:196
msgid "Constant"
msgstr "Festwert"
-#: ../src/prefs/QualityPrefs.cpp:42
-#: ../src/prefs/QualityPrefs.cpp:43
+#: ../src/prefs/QualityPrefs.cpp:42 ../src/prefs/QualityPrefs.cpp:43
msgid "Quality"
msgstr "Qualität"
@@ -6746,7 +6822,7 @@ msgstr "Variable Geschwindigkeit:"
#: export/ExportMP3.cpp:331
msgid "Channel Mode:"
-msgstr ""
+msgstr "Kanal-Modus:"
#: prefs/FileFormatPrefs.cpp:224
msgid "Joint Stereo"
@@ -6773,7 +6849,8 @@ msgstr "Um eine freie Version von Lame zu erhalten bitte hier klicken -->"
#, c-format
msgid "You are linking to lame_enc.dll v%d.%d. This version is not compatible with Audacity %d.%d.%d.\n"
"Please download the latest version of the LAME MP3 library."
-msgstr ""
+msgstr "Sie wollen lame_enc.dll v%d.%d einsetzen. Diese Version ist aber nicht kompatibel mit Audacity %d.%d.%d.\n"
+"Bitte laden Sie die letzte Version der LAME-MP3-Bibliothek herunter."
#: ../src/export/ExportMP3.cpp:1407
msgid "Only lame_enc.dll|lame_enc.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
@@ -6781,7 +6858,7 @@ msgstr "Nur lame_enc.dll|lame_enc.dll|Dynamisch gelinkte Bibliotheken (*.dll)|*.
#: export/ExportMP3.cpp:1493
msgid "Only libmp3lame.dylib|libmp3lame.dylib|Dynamic Libraries (*.dylib)|*.dylib|All Files (*)|*"
-msgstr ""
+msgstr "Nur libmp3lame.dylib|libmp3lame.dylib|Dynamic Libraries (*.dylib)|*.dylib|Alle Dateien (*)|*"
#: export/ExportMP3.cpp:1567
#, fuzzy
@@ -6802,63 +6879,63 @@ msgstr "Ungltige Bibliothek od. nicht untersttzter MP3-Encoder!"
#: export/ExportMP3.cpp:1699
msgid "Unable to initialize MP3 stream"
-msgstr ""
+msgstr "MP3-Stream kann nicht initialisiert werden"
#: export/ExportMP3.cpp:1744
#, c-format
msgid "Exporting selected audio with %s preset"
-msgstr ""
+msgstr "Ausgewähltes Audio mit %s Voreinstellung exportieren"
#: export/ExportMP3.cpp:1745
#, c-format
msgid "Exporting entire file with %s preset"
-msgstr ""
+msgstr "Ganze Datei mit %s Voreinstellung exportieren"
#: export/ExportMP3.cpp:1750
#, c-format
msgid "Exporting selected audio with VBR quality %s"
-msgstr ""
+msgstr "Ausgewähltes Audio exportieren mit variabler Bit-Rate (Qualität %s)"
#: export/ExportMP3.cpp:1751
#, c-format
msgid "Exporting entire file with VBR quality %s"
-msgstr ""
+msgstr "Vollständige Datei exportieren mit variabler Bit-Rate in Qualität %s"
#: export/ExportMP3.cpp:1756
#, c-format
msgid "Exporting selected audio at %d Kbps"
-msgstr ""
+msgstr "Ausgewähltes Audio exportieren mit %d kbit/s"
#: export/ExportMP3.cpp:1757
#, c-format
msgid "Exporting entire file at %d Kbps"
-msgstr ""
+msgstr "Ganze Datei exportieren mit %d kbit/s"
#: export/ExportMP3.cpp:1790
#, c-format
msgid "Error %d returned from MP3 encoder"
-msgstr ""
+msgstr "Der MP3-Encoder meldet Fehler %d"
#: export/ExportMP3.cpp:1876
#, c-format
msgid "The project sample rate (%d) is not supported by the MP3\n"
"file format. "
-msgstr ""
+msgstr "Diese Projekt-Sample-Frequenz (%d) wird vom MP3-\n"
+"Format nicht unterstützt. "
#: export/ExportMP3.cpp:1879
#, c-format
msgid "The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
"supported by the MP3 file format. "
-msgstr ""
+msgstr "Diese Projekt-Sample-Frequenz (%d) und -Bit-Rate (%d kbit/s) wird vom MP3-\n"
+"Format nicht unterstützt. "
#: export/ExportMP3.cpp:1965
msgid "MP3 export library not found"
-msgstr ""
+msgstr "MP3-Export-Bibliothek nicht gefunden"
-#: ../src/export/ExportMultiple.cpp:480
-#: ../src/export/ExportMultiple.cpp:592
-#: ../src/export/ExportMultiple.cpp:599
-#: ../src/export/ExportMultiple.cpp:684
+#: ../src/export/ExportMultiple.cpp:480 ../src/export/ExportMultiple.cpp:592
+#: ../src/export/ExportMultiple.cpp:599 ../src/export/ExportMultiple.cpp:684
msgid "Export Multiple"
msgstr "Mehrere Dateien exportieren"
@@ -6869,7 +6946,7 @@ msgid "If you have more than one Audio Track, you can export each track as a sep
"This project does not have multiple tracks or a Label Track, so you cannot export multiple files."
msgstr "Mit diesem Menüpunkt kann - sofern es mehrere Spuren gibt - jede Spur in eine einzelne Datei exportiert werden. Alternativ kann eine einzelne Tonspur in mehrere Audio-Dateien exportiert werden: Hierbei werden die \"Trennstellen\" durch Einträge in einer Textspur definiert.\n"
"\n"
-"Da dieses Projekt jedoch nicht über mehrere Audio-Spuren verfügt und auch keine Textspur (mit Einträgen) enthält, kann es nicht in mehrere Dateien exportiert werden. :-("
+"Da dieses Projekt jedoch weder über mehrere Audio-Spuren verfügt noch eine Textspur (mit Einträgen) enthält, kann es nicht in mehrere Dateien exportiert werden. :-("
#: ../src/export/ExportMultiple.cpp:614
msgid "Can't export multiple files"
@@ -6881,20 +6958,15 @@ msgstr "Exportformat:"
#: export/ExportMultiple.cpp:195
msgid "Options..."
-msgstr ""
+msgstr "Optionen..."
#: ../src/export/ExportMultiple.cpp:723
msgid "Export location:"
msgstr "Export-Verzeichnis:"
-#: ../src/prefs/DirectoriesPrefs.cpp:92
-#: ../src/export/ExportMultiple.cpp:729
-msgid "Choose..."
-msgstr "Ausw&ählen..."
-
#: export/ExportMultiple.cpp:205
msgid "Create"
-msgstr ""
+msgstr "Erzeugen"
#: ../src/export/ExportMultiple.cpp:760
msgid "Split files based on:"
@@ -6914,11 +6986,7 @@ msgstr "Erster Dateiname:"
#: export/ExportMultiple.cpp:280
msgid "First file name"
-msgstr ""
-
-#: ../src/export/ExportMultiple.cpp:784
-msgid "Tracks"
-msgstr "Spuren"
+msgstr "Erster Datei-Name"
#: ../src/export/ExportMultiple.cpp:794
msgid "Name files:"
@@ -6938,7 +7006,7 @@ msgstr "Erster Teil des Dateinamens:"
#: export/ExportMultiple.cpp:327
msgid "File name prefix"
-msgstr ""
+msgstr "Dateiname-Präfix"
#: ../src/export/ExportMultiple.cpp:825
msgid "Overwrite existing files"
@@ -6947,38 +7015,60 @@ msgstr "Existierende Dateien
#: export/ExportMultiple.cpp:360
#, c-format
msgid "\"%s\" successfully created."
-msgstr ""
+msgstr "\"%s\" erfolgreich erstellt."
#: ../src/export/ExportMultiple.cpp:930
msgid "Choose a location to save the exported files"
msgstr "Wählen Sie einen Ort für das Export-Verzeichnis aus"
-#: export/ExportMultiple.cpp:480
+#: export/ExportMultiple.cpp:524
#, c-format
-msgid "\"%s\" doesn't exist.\n"
-"\n"
-"Would you like to create it?"
+msgid "Successfully exported the following %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:637 export/ExportMultiple.cpp:772
-msgid "Edit metadata"
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
msgstr ""
-#: ../src/export/ExportMultiple.cpp:590
+#: export/ExportMultiple.cpp:526
#, c-format
-msgid "Successfully exported %d file(s)."
-msgstr "%d Datei(en) erfolgreich exportiert."
+msgid "Export canceled after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:527
+#, c-format
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr ""
-#: ../src/export/ExportMultiple.cpp:597
+#: export/ExportMultiple.cpp:528
#, c-format
-msgid "Something went wrong after exporting %d file(s)."
-msgstr "Es ist ein Fehler aufgetreten beim Export von %d Datei/en."
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr ""
+
+#: export/ExportMultiple.cpp:480
+#, c-format
+msgid "\"%s\" doesn't exist.\n"
+"\n"
+"Would you like to create it?"
+msgstr "\"%s\" existiert nicht.\n"
+"\n"
+"Erstellen?"
+
+#: export/ExportMultiple.cpp:637 export/ExportMultiple.cpp:772
+msgid "Edit metadata"
+msgstr "Metadaten bearbeiten"
#: export/ExportMultiple.cpp:881
#, c-format
msgid "Label %s is not a legal file name. You cannot use any of: %s\n"
"Use..."
-msgstr ""
+msgstr "%s ist kein gültiger Datei-Name. Sie können nicht verwenden: %s\n"
+"Benutzen Sie..."
#: export/ExportOGG.cpp:64
msgid "Specify Ogg Vorbis Options"
@@ -6994,49 +7084,48 @@ msgstr "Ogg-Vorbis-Dateien"
#: ../src/export/ExportOGG.cpp:125
msgid "Exporting the selected audio as Ogg Vorbis"
-msgstr "Auswahl als Ogg-Datei exportieren"
+msgstr "Auswahl als Ogg-Vorbis-Datei exportieren"
#: ../src/export/ExportOGG.cpp:126
msgid "Exporting the entire project as Ogg Vorbis"
-msgstr "Gesamtes Projekt als Ogg-Datei exportieren"
+msgstr "Gesamtes Projekt als Ogg-Vorbis-Datei exportieren"
#: export/ExportPCM.cpp:116
msgid "Specify Uncompressed Options"
-msgstr ""
+msgstr "Export unkomprimierter Dateien"
#: export/ExportPCM.cpp:171
msgid "Uncompressed Export Setup"
-msgstr ""
+msgstr "Einstellungen"
#: export/ExportPCM.cpp:181
msgid "Header:"
-msgstr ""
+msgstr "Header:"
#: export/ExportPCM.cpp:185
msgid "Encoding:"
-msgstr ""
+msgstr "Codec:"
#: export/ExportPCM.cpp:190
-#, fuzzy
msgid "(Not all combinations of headers and encodings are possible.)"
msgstr "(Nicht alle Kombinationen aus\n"
"Headern und Codecs sind möglich.)"
#: export/ExportPCM.cpp:369
msgid "Other uncompressed files"
-msgstr ""
+msgstr "Andere unkomprimierte Dateien"
#: export/ExportPCM.cpp:361
msgid "AIFF (Apple) signed 16 bit PCM"
-msgstr ""
+msgstr "AIFF (Apple) 16-bit PCM"
#: export/ExportPCM.cpp:351
msgid "WAV (Microsoft) signed 16 bit PCM"
-msgstr ""
+msgstr "WAV (Microsoft) 16-bit PCM"
#: export/ExportPCM.cpp:387
msgid "GSM 6.10 WAV (mobile)"
-msgstr ""
+msgstr "GSM 6.10 WAV (Mobilfunk)"
#: ../src/export/ExportPCM.cpp:73
msgid "Cannot export audio in this format."
@@ -7045,23 +7134,22 @@ msgstr "Kann Audiodaten nicht in dieses Format exportieren."
#: export/ExportPCM.cpp:400
#, c-format
msgid "Exporting the selected audio as %s"
-msgstr ""
+msgstr "Ausgewähltes Audio exportieren als %s"
#: export/ExportPCM.cpp:402
#, c-format
msgid "Exporting the entire project as %s"
-msgstr ""
+msgstr "Ganzes Projekt exportieren als %s"
#. i18n-hint: %s will be the error message from libsndfile
#: export/ExportPCM.cpp:531
#, c-format
-#, fuzzy
msgid "Error (file may not have been written): %s"
msgstr "Fehler (Datei wurde vermutlich nicht geschrieben): %s"
#: export/ExportPCM.cpp:723
msgid "There are no options for this format.\n"
-msgstr ""
+msgstr "Für dieses Format gibt es keine Optionen.\n"
#. i18n-hint: This is pointing users at another possible export format in
#. * the list. So you should translate the quoted string
@@ -7069,19 +7157,19 @@ msgstr ""
#. * when it comes up on it's own.
#: export/ExportPCM.cpp:728
msgid "If you need more control over the export format please use the 'Other uncompressed files' format."
-msgstr ""
+msgstr "Wenn Sie umfangreichere Einstellmöglichkeiten benötigen benutzen Sie das Format 'Andere unkomprimierte Dateien'."
#: export/ExportPCM.cpp:733
msgid "Your file will be exported as a 16-bit AIFF (Apple/SGI) file.\n"
-msgstr ""
+msgstr "Ihre Datei wird exportiert als 16-bit AIFF (Apple/SGI).\n"
#: export/ExportPCM.cpp:738
msgid "Your file will be exported as a 16-bit WAV (Microsoft) file.\n"
-msgstr ""
+msgstr "Ihre Datei wird exportiert als 16-bit WAV (Microsort).\n"
#: export/ExportPCM.cpp:743
msgid "Your file will be exported as a GSM 6.10 WAV file.\n"
-msgstr ""
+msgstr "Ihre Datei wird exportiert als GSM 6.10-Datei.\n"
#: import/ImportMP3.cpp:78
msgid "MP3 files"
@@ -7089,7 +7177,7 @@ msgstr "MP3-Dateien"
#: import/Import.cpp:175
msgid "Select stream(s) to import"
-msgstr ""
+msgstr "Stream(s) für den Import auswählen"
#: ../src/import/Import.cpp:177
#, c-format
@@ -7102,7 +7190,10 @@ msgid "\"%s\" \n"
"is a MIDI file, not an audio file. \n"
"Audacity cannot open this type of file for playing, but you can\n"
"edit it by clicking File > Import > MIDI."
-msgstr ""
+msgstr "\"%s\" \n"
+"ist eine MIDI-, keine Audio-Datei. \n"
+"Audacity kann MIDI-Dateien nicht wiedergeben, allerdings können\n"
+"Sie sie bearbeiten über Datei > Import > MIDI."
#. i18n-hint: %s will be the filename
#: import/Import.cpp:250
@@ -7111,15 +7202,17 @@ msgid "\"%s\" is an audio CD track. \n"
"Audacity cannot open audio CDs directly. \n"
"Extract (rip) the CD tracks to an audio format that \n"
"Audacity can import, such as WAV or AIFF."
-msgstr ""
+msgstr "\"%s\" ist Teil einer Audio-CD. \n"
+"Audacity kann Audio-CDs nicht direkt öffnen. \n"
+"Bitte extrahieren (\"rippen\") Sie CDs in ein Audio-Format, das \n"
+"Audacity importieren kann, etwa WAV oder AIFF."
#: import/Import.cpp:256
#, c-format
-#, fuzzy
msgid "\"%s\" is a playlist file. \n"
"Audacity cannot open this file because it only contains links to other files. \n"
"You may be able to open it in a text editor and download the actual audio files."
-msgstr " ist eine Playlist-Datei.\n"
+msgstr "\"%s\" ist eine Playlist-Datei.\n"
"Audacity kann diese Datei nicht öffnen, weil sie selbst kein Audio,\n"
"sondern nur Links zu den eigentlichen Audiodateien enthält.\n"
"\n"
@@ -7131,14 +7224,18 @@ msgstr " ist eine Playlist-Datei.\n"
msgid "\"%s\" is a Windows Media Audio file. \n"
"Audacity cannot open this type of file due to patent restrictions. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr ""
+msgstr "\"%s\" ist eine Windows-Media-Audiodatei. \n"
+"Auf Grund von Patent-Regeln darf Audacity solche Dateien nicht öffnen. \n"
+"Sie müssen die Datei zunächst in ein unterstütztes Format wie WAV oder AIFF umwandeln."
#: import/Import.cpp:266
#, c-format
msgid "\"%s\" is an Advanced Audio Coding file. \n"
"Audacity cannot open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr ""
+msgstr "\"%s\" ist eine Advanced-Audio-Coding-Datei. \n"
+"Audacity kann solche Dateien nicht öffnen. \n"
+"Sie müssen die Datei zunächst in ein unterstützes Format wie WAV oder AIFF umwandeln."
#: import/Import.cpp:271
#, c-format
@@ -7147,14 +7244,20 @@ msgid "\"%s\" is an encrypted audio file. \n"
"Audacity cannot open this type of file due to the encryption. \n"
"Try recording the file into Audacity, or burn it to audio CD then \n"
"extract the CD track to a supported audio format such as WAV or AIFF."
-msgstr ""
+msgstr "\"%s\" ist eine verschlüsselte Audio-Datei. \n"
+"Vermutlich stammt sie von einem Online-Musikladen. \n"
+"Wegen der Verschlüsselung kann Audacity die Datei nicht öffnen. \n"
+"Versuchen Sie, die Datei mit Audacity aufzunehmen oder brennen Sie sie als Audio-CD, \n"
+"dann können Sie die CD extrahieren und in ein unterstütztes Format wandeln wie WAV or AIFF."
#: import/Import.cpp:276
#, c-format
msgid "\"%s\" is a RealPlayer media file. \n"
"Audacity cannot open this proprietary format. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr ""
+msgstr "\"%s\" ist eine Real-Player-Datei. \n"
+"Audacity kann dieses proprietäre Format nicht öffnen. \n"
+"Sie müssen die Datei zunächst in ein unterstützes Format wie WAV oder AIFF umwandeln."
#: import/Import.cpp:282
#, c-format
@@ -7162,7 +7265,10 @@ msgid "\"%s\" is a notes-based file, not an audio file. \n"
"Audacity cannot open this type of file. \n"
"Try converting it to an audio file such as WAV or AIFF and \n"
"then import it, or record it into Audacity."
-msgstr ""
+msgstr "\"%s\" is a notes-based file, not an audio file. \n"
+"Audacity cannot open this type of file. \n"
+"Try converting it to an audio file such as WAV or AIFF and \n"
+"then import it, or record it into Audacity."
#: import/Import.cpp:288
#, c-format
@@ -7171,63 +7277,80 @@ msgid "\"%s\" is a Musepack audio file. \n"
"If you think it might be an mp3 file, rename it to end with \".mp3\" \n"
"and try importing it again. Otherwise you need to convert it to a supported audio \n"
"format, such as WAV or AIFF."
-msgstr ""
+msgstr "\"%s\" ist eine Musepack-Audiodatei. \n"
+"Audacity kann diesen Dateityp nicht öffnen. \n"
+"Falls Sie denken, dass es sich um eine MP3-Datei handelt, geben sie ihr versuchsweise die Endung \".mp3\" \n"
+"und versuchen Sie erneut, zu importieren. Andernfalls müssen Sie sie in ein unterstütztes Format wandeln \n"
+"wie WAV or AIFF."
#: import/Import.cpp:294
#, c-format
msgid "\"%s\" is a Wavpack audio file. \n"
"Audacity cannot open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr ""
+msgstr "\"%s\" ist eine Wavpack Audio-Datei. \n"
+"Audacity kann diesen Dateityp nicht öffnen. \n"
+"Sie müssen die Datei in ein unterstütztes Format wandeln wie WAV or AIFF."
#: import/Import.cpp:300
#, c-format
msgid "\"%s\" is a Dolby Digital audio file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr ""
+msgstr "\"%s\" ist eine Dolby-Digital-Audiodatei. \n"
+"Audacity kann diesen Dateityp gegenwärtig nicht öffnen. \n"
+"Bitte wandeln Sie sie in ein unterstütztes Audio-Format um wie WAV or AIFF."
#: import/Import.cpp:306
#, c-format
msgid "\"%s\" is an Ogg Speex audio file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr ""
+msgstr "\"%s\" ist eine Ogg-Speex-Audiodatei. \n"
+"Audacity kann diesen Dateityp gegenwärtig nicht öffnen. \n"
+"Bitte wandeln Sie sie in ein unterstütztes Audio-Format um wie WAV or AIFF."
#: import/Import.cpp:312
#, c-format
msgid "\"%s\" is a video file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to extract the audio to a supported format, such as WAV or AIFF."
-msgstr ""
+msgstr "\"%s\" ist eine Videodatei. \n"
+"Audacity kann diesen Dateityp gegenwärtig nicht öffnen. \n"
+"BItte extrahieren Sie das Audio in ein unterstütztes Audio-Format wie WAV or AIFF."
#: import/Import.cpp:317
#, c-format
msgid "Audacity did not recognize the type of the file '%s'.\n"
"If it is uncompressed, try importing it using \"Import Raw\"."
-msgstr ""
+msgstr "Audacity konnte '%s'.\n"
+"If it is uncompressed, try importing it using \"Import Raw\"."
#: import/Import.cpp:322
#, c-format
msgid "Audacity recognized the type of the file '%s',\n"
"but was unable to import it."
-msgstr ""
+msgstr "Audacity hat den Typ der Datei '%s' erkannt,\n"
+"konnte die Datei aber nicht importieren."
#: import/ImportFFmpeg.cpp:34
msgid "FFmpeg-compatible files"
-msgstr ""
+msgstr "FFmpeg-kompatible Dateien"
#: import/ImportFFmpeg.cpp:431
#, c-format
msgid "Index[%02x] Codec[%S], Language[%S], Bitrate[%S], Channels[%d], Duration[%d]"
-msgstr ""
+msgstr "Index[%02x] Codec[%S], Sprache[%S], Bitrate[%S], Kanäle[%d], Dauer[%d]"
#: import/ImportFLAC.cpp:35
msgid "FLAC files"
msgstr "FLAC-Dateien"
-#: ../src/import/ImportLOF.cpp:172
-#: ../src/import/ImportLOF.cpp:222
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr "GStreamer-kompatible Dateien"
+
+#: ../src/import/ImportLOF.cpp:172 ../src/import/ImportLOF.cpp:222
msgid "List of Files in basic text format"
msgstr "Liste der Dateien im Textformat"
@@ -7237,10 +7360,8 @@ msgid "Invalid window offset in LOF file."
msgstr "Ungltiger Window Offset in LOF-Datei."
#. i18n-hint: You do not need to translate "LOF"
-#: ../src/import/ImportLOF.cpp:315
-#: ../src/import/ImportLOF.cpp:336
-#: ../src/import/ImportLOF.cpp:408
-#: ../src/import/ImportLOF.cpp:428
+#: ../src/import/ImportLOF.cpp:315 ../src/import/ImportLOF.cpp:336
+#: ../src/import/ImportLOF.cpp:408 ../src/import/ImportLOF.cpp:428
msgid "LOF Error"
msgstr "LOF-Fehler"
@@ -7261,16 +7382,16 @@ msgstr "Ungltiger Track-Offset in LOF-Datei."
#: import/ImportMIDI.cpp:31
msgid ": Filename too short."
-msgstr ""
+msgstr ": Dateiname zu kurz."
#: import/ImportMIDI.cpp:31 import/ImportMIDI.cpp:39 import/ImportMIDI.cpp:45
#: import/ImportMIDI.cpp:53
msgid "Could not open file "
-msgstr ""
+msgstr "Datei konnte nicht geöffnet werden"
#: import/ImportMIDI.cpp:39
msgid ": Incorrect filetype."
-msgstr ""
+msgstr ": Unkorrekter Dateityp."
#: import/ImportOGG.cpp:35
msgid "Ogg Vorbis files"
@@ -7296,23 +7417,22 @@ msgstr "Ungltiger Vorbis Bitstream Header."
msgid "Internal logic fault"
msgstr "Interner Logikfehler"
-#: export/ExportPCM.cpp:320
-#: import/ImportPCM.cpp:47
+#: export/ExportPCM.cpp:320 import/ImportPCM.cpp:47
msgid "WAV, AIFF, and other uncompressed types"
-msgstr ""
+msgstr "WAV, AIFF und andere unkomprimierte Typen"
#: import/ImportPlugin.h:142 import/ImportRaw.cpp:203
#, c-format
msgid "Importing %s"
-msgstr ""
+msgstr "%s importieren"
#: import/ImportQT.cpp:21
msgid "QuickTime files"
-msgstr ""
+msgstr "Quicktime-Dateien"
#: import/ImportRaw.cpp:205
msgid "Import Raw"
-msgstr ""
+msgstr "Rohdaten importieren"
#: ../src/import/ImportRaw.cpp:277
msgid "Import Raw Data"
@@ -7357,11 +7477,11 @@ msgstr "%d Kan
#: import/ImportRaw.cpp:369
msgid "Byte order:"
-msgstr ""
+msgstr "Byte-Reihenfolge:"
#: import/ImportRaw.cpp:372
msgid "Channels:"
-msgstr ""
+msgstr "Kanäle:"
#: ../src/import/ImportRaw.cpp:386
msgid "Start offset:"
@@ -7377,45 +7497,52 @@ msgstr "Samplefrequenz:"
#: ondemand/ODComputeSummaryTask.h:47
msgid "Import complete. Calculating waveform"
-msgstr ""
+msgstr "Import beendet, Wellenformdarstellung erzeugen"
#: ondemand/ODDecodeTask.h:61
msgid "Decoding Waveform"
-msgstr ""
+msgstr "Wellenform dekodieren"
#: ondemand/ODWaveTrackTaskQueue.cpp:327
#, c-format
msgid "%s %2.0f%% complete. Click to change task focal point."
-msgstr ""
+msgstr "%s %2.0f%% erledigt. Klicken, um Fokus zu ändern. "
-#: ../src/prefs/AudioIOPrefs.cpp:41
-#: ../src/prefs/AudioIOPrefs.cpp:42
-msgid "Audio I/O"
-msgstr "Audio E/A"
+#: ../src/prefs/BatchPrefs.cpp:53 ../src/prefs/BatchPrefs.cpp:54
+msgid "Batch"
+msgstr "Stapelverarbeitung"
-#: ../src/prefs/AudioIOPrefs.cpp:100
-msgid "1 (Mono)"
-msgstr "1 (Mono)"
+#: ../src/prefs/GUIPrefs.cpp:70 ../src/prefs/BatchPrefs.cpp:75
+msgid "Behaviors"
+msgstr "Einstellungen"
-#: ../src/prefs/AudioIOPrefs.cpp:101
-msgid "2 (Stereo)"
-msgstr "2 (Stereo)"
+#: prefs/BatchPrefs.cpp:80
+msgid "&Don't apply effects in batch mode"
+msgstr "&Effekte nicht anwenden im Batch-Modus"
-#: ../src/prefs/AudioIOPrefs.cpp:115
-msgid "Playback"
-msgstr "Wiedergabe"
+#: ../src/prefs/BatchPrefs.cpp:83
+msgid "Cl&eanSpeech Mode (Customized GUI)"
+msgstr "Clean-Speech-Modus (Angepasste Oberfläche)"
-#: ../src/toolbars/DeviceToolBar.cpp:54
-msgid "Device"
-msgstr "Gerät"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
+msgstr ""
+
+#: ../src/prefs/GUIPrefs.cpp:33 ../src/prefs/GUIPrefs.cpp:34
+msgid "Interface"
+msgstr "Programmoberfläche"
+
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
+msgstr ""
#: ../src/prefs/AudioIOPrefs.cpp:122
msgid "Using:"
msgstr "Verwendet"
-#: ../src/prefs/AudioIOPrefs.cpp:123
-msgid "Portaudio v"
-msgstr "Portaudio v"
+#: ../src/prefs/AudioIOPrefs.cpp:115
+msgid "Playback"
+msgstr "Wiedergabe"
#: ../src/prefs/AudioIOPrefs.cpp:133
msgid "Recording"
@@ -7425,96 +7552,15 @@ msgstr "Aufnahme"
msgid "Channels"
msgstr "Kanäle"
-#: ../src/prefs/AudioIOPrefs.cpp:145
-msgid "Playthrough"
-msgstr "Wiedergabe während Aufnahme"
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-#: ../src/prefs/AudioIOPrefs.cpp:194
-msgid "Effects Preview"
-msgstr "Effekt vorhören"
-
-#: prefs/AudioIOPrefs.cpp:165
-msgid "Length of preview:"
-msgstr ""
-
-#: ../src/prefs/AudioIOPrefs.cpp:158
-msgid "Cut Preview"
-msgstr "Schnitt vorhören"
-
-#: prefs/AudioIOPrefs.cpp:173
-msgid "Preview before cut region:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:175
-msgid "Preview after cut region:"
-msgstr ""
-
-#: ../src/prefs/AudioIOPrefs.cpp:168
-msgid "Latency"
-msgstr "Latenz"
-
-#: prefs/AudioIOPrefs.cpp:195
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:198
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:197
-msgid "Seek Time when playing"
-msgstr ""
-
-#: ../src/prefs/AudioIOPrefs.cpp:187
-msgid "Short period:"
-msgstr "Kurzes Intervall:"
-
-#: ../src/prefs/AudioIOPrefs.cpp:189
-msgid "Long period:"
-msgstr "Langes Intervall:"
-
-#: ../src/prefs/BatchPrefs.cpp:53
-#: ../src/prefs/BatchPrefs.cpp:54
-msgid "Batch"
-msgstr "Stapelverarbeitung"
-
-#: ../src/prefs/GUIPrefs.cpp:70
-#: ../src/prefs/BatchPrefs.cpp:75
-msgid "Behaviors"
-msgstr "Einstellungen"
-
-#: prefs/BatchPrefs.cpp:80
-msgid "&Don't apply effects in batch mode"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:100
+msgid "1 (Mono)"
+msgstr "1 (Mono)"
-#: ../src/prefs/BatchPrefs.cpp:83
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr "Clean-Speech-Modus (Angepasste Oberfläche)"
+#: ../src/prefs/AudioIOPrefs.cpp:101
+msgid "2 (Stereo)"
+msgstr "2 (Stereo)"
-#: ../src/prefs/DirectoriesPrefs.cpp:55
-#: ../src/prefs/DirectoriesPrefs.cpp:56
+#: ../src/prefs/DirectoriesPrefs.cpp:55 ../src/prefs/DirectoriesPrefs.cpp:56
#: ../src/prefs/PrefsDialog.cpp:276
msgid "Directories"
msgstr "Verzeichnisse"
@@ -7531,34 +7577,31 @@ msgstr "Ort:"
msgid "Free Space:"
msgstr "Freier Platz:"
-#: ../src/prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr "Automatisch Sicherheitskopien anlegen"
-
-#: ../src/prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr "Sicherheitskopie des Projekts in einem separaten Verzeichnis anlegen"
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
-msgstr ""
-
-#: ../src/prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
-msgstr "Minuten"
-
#: ../src/prefs/DirectoriesPrefs.cpp:110
msgid "Audio cache"
msgstr "Arbeitsspeicher-Verwaltung"
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "Play and/or record using RAM (useful for slow drives)"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
#: ../src/prefs/DirectoriesPrefs.cpp:121
msgid "Choose a location to place the temporary directory"
msgstr "Ort für das temporäre Verzeichnis"
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: ../src/prefs/DirectoriesPrefs.cpp:165
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -7577,236 +7620,154 @@ msgstr "Verzeichnis %s ist nicht beschreibbar"
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "Änderungen am temporären Verzeichnis werden erst nach dem Neustart von Audacity wirksam."
-#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
-msgid "Import / Export"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:84
-msgid "MP3 Export Library"
-msgstr ""
-
-#: ../src/prefs/FileFormatPrefs.cpp:180
-msgid "MP3 Library Version:"
-msgstr "MP3-Bibliothek:"
-
-#: prefs/FileFormatPrefs.cpp:93
-msgid "MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:98
-msgid "LAME MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
-msgid "&Download"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:136
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:137
-msgid "When importing audio files"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:140
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
-msgstr ""
+#: prefs/GUIPrefs.cpp:42
+msgid "In Browser"
+msgstr "Im Browser"
-#: prefs/FileFormatPrefs.cpp:141
-msgid "&Read uncompressed audio files directly from the original (faster)"
-msgstr ""
+#: prefs/GUIPrefs.cpp:43
+msgid "From Internet"
+msgstr "Aus dem Internet"
-#: prefs/FileFormatPrefs.cpp:143
-msgid "&Normalize all tracks in project"
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
msgstr ""
-#: ../src/prefs/FileFormatPrefs.cpp:132
-msgid "When saving a project that depends on other audio files"
-msgstr "Beim Speichern eines Projekts, das auf andere Audios verweist"
-
-#: prefs/FileFormatPrefs.cpp:151
-msgid "Always © all audio into project (safest)"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:152
-msgid "&Do not copy any audio"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
msgstr ""
-#: ../src/prefs/FileFormatPrefs.cpp:135
-msgid "&Ask user"
-msgstr "&Anwender/-in fragen"
-
-#: prefs/FileFormatPrefs.cpp:157
-msgid "When exporting tracks to an audio file"
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
msgstr ""
-#: ../src/prefs/FileFormatPrefs.cpp:144
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
-msgstr "&Spuren immer als Stereo- bzw. Mono-Datei speichern"
-
-#: prefs/FileFormatPrefs.cpp:97
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:163
-msgid "S&how Metadata Editor prior to export step"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:33
-#: ../src/prefs/GUIPrefs.cpp:34
-msgid "Interface"
-msgstr "Programmoberfläche"
+#: ../src/prefs/GUIPrefs.cpp:111
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 dB (Dynamik der Audiokassette)"
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:112
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 dB (Dynamik von 8-Bit Samples)"
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
-msgstr ""
+#: prefs/GUIPrefs.cpp:143
+msgid "-60 dB (PCM range of 10 bit samples)"
+msgstr "-60 dB (Dynamik von 10-bit-Samples)"
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:113
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 dB (Dynamik von 16-Bit Samples, \"CD-Qualität\")"
-#: prefs/GUIPrefs.cpp:72
-msgid "&Update display while playing"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:114
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 dB (Dynamik des menschlichen Gehörs)"
-#: prefs/GUIPrefs.cpp:96
-msgid "Cl&osing last window quits Audacity"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:115
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB (Dynamik von 24-Bit Samples)"
-#: prefs/GUIPrefs.cpp:98
-msgid "Enable &dragging of left and right selection edges"
-msgstr ""
+#: ../src/prefs/SpectrumPrefs.cpp:96
+msgid "Display"
+msgstr "Anzeigen"
#: prefs/GUIPrefs.cpp:100
msgid "Er&gonomic order of audio I/O buttons"
-msgstr ""
+msgstr "Ergonomische Anordnung der I/O-Buttons"
-#: prefs/GUIPrefs.cpp:80
-msgid "Automatically &fit tracks vertically zoomed"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
msgstr ""
-#: prefs/GUIPrefs.cpp:104
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:90
-msgid "Editing a &clip can move other clips"
-msgstr "Nachfolgende Clips beim Schneiden verschieben"
+#: prefs/GUIPrefs.cpp:167
+msgid "Help:"
+msgstr "Hilfe:"
-#: prefs/GUIPrefs.cpp:88
-msgid "&Select all audio in project, if none selected"
-msgstr ""
+#: prefs/GUIPrefs.cpp:96
+msgid "Cl&osing last window quits Audacity"
+msgstr "Audacity beenden beim Schließen des letzten Fensters"
#: prefs/GUIPrefs.cpp:90
msgid "&Beep on completion of longer activities"
-msgstr ""
-
-#: ../src/prefs/GUIPrefs.cpp:94
-#: ../src/prefs/BatchPrefs.cpp:87
-msgid "Show / Hide"
-msgstr "Anzeigen / Verbergen"
-
-#: ../src/prefs/GUIPrefs.cpp:96
-msgid "Enable cut &lines"
-msgstr "Schnittlinien anzeigen"
-
-#: ../src/prefs/GUIPrefs.cpp:98
-msgid "Show warnings about &temp files"
-msgstr "Bei Programmstart ggf. auf temporäre Dateien hinweisen"
-
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:122
-msgid "Show &Welcome Message at program start up"
-msgstr ""
+msgstr "Systemklang bei Beenden längerer Aktivitäten"
#: prefs/GUIPrefs.cpp:126
msgid "Modes"
+msgstr "Anzeige-Modi"
+
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
msgstr ""
#: prefs/GUIPrefs.cpp:129
msgid "Don't a&pply effects in batch mode"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
-msgstr ""
+msgstr "Effekte n&icht anwenden im Batch-Modus"
-#: ../src/prefs/GUIPrefs.cpp:111
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 dB (Hochaussteuerung, \"Cassettenqualität\")"
+#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
+msgid "Import / Export"
+msgstr "Import / Export"
-#: ../src/prefs/GUIPrefs.cpp:112
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 dB (8-Bit Samples)"
+#: prefs/FileFormatPrefs.cpp:137
+msgid "When importing audio files"
+msgstr "Wenn Audiodateien importiert werden"
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
-msgstr ""
+#: prefs/FileFormatPrefs.cpp:140
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
+msgstr "&Bei unkomprimierten Audiodateien eine Kopie erstellen (sicherer)"
-#: ../src/prefs/GUIPrefs.cpp:113
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 dB (16-Bit Samples, \"CD-Qualität\")"
+#: prefs/FileFormatPrefs.cpp:141
+msgid "&Read uncompressed audio files directly from the original (faster)"
+msgstr "&Unkomprimierte Audiodaten direkt aus der Originaldatei einlesen (schneller)"
-#: ../src/prefs/GUIPrefs.cpp:114
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 dB (Grenze menschlichen Gehörs)"
+#: prefs/FileFormatPrefs.cpp:143
+msgid "&Normalize all tracks in project"
+msgstr "&Alle Spuren im Projekt normalisieren"
-#: ../src/prefs/GUIPrefs.cpp:115
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB (24-Bit Samples)"
+#: prefs/FileFormatPrefs.cpp:157
+msgid "When exporting tracks to an audio file"
+msgstr "Beim Exportieren in eine Audiodatei"
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
-msgstr ""
+#: ../src/prefs/FileFormatPrefs.cpp:144
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+msgstr "&Spuren immer als Stereo- bzw. Mono-Datei speichern"
-#: prefs/GUIPrefs.cpp:164
-msgid "Other interface choices"
-msgstr ""
+#: prefs/FileFormatPrefs.cpp:97
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+msgstr "Dialog für Mehrkanal-Mix anzeigen (bei Dateitypen, die z.B. 5.1-Audio unterstützen)"
-#: prefs/GUIPrefs.cpp:167
-msgid "Help:"
-msgstr ""
+#: prefs/FileFormatPrefs.cpp:163
+msgid "S&how Metadata Editor prior to export step"
+msgstr "Vor dem Exportieren Metadaten-Editor öffnen"
-#: prefs/GUIPrefs.cpp:168
-msgid "Solo Button:"
+#: prefs/ImportExportPrefs.cpp:84
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
msgstr ""
-#: ../src/prefs/KeyConfigPrefs.cpp:61
-#: ../src/prefs/KeyConfigPrefs.cpp:62
+#: ../src/prefs/KeyConfigPrefs.cpp:61 ../src/prefs/KeyConfigPrefs.cpp:62
msgid "Keyboard"
msgstr "Tastatur"
#: prefs/KeyConfigPrefs.cpp:86
msgid "Keyboard preferences currently unavailable."
-msgstr ""
+msgstr "Tastatur-Einstellungen sind derzeit nicht erreichbar."
#: prefs/KeyConfigPrefs.cpp:87
msgid "Open a new project to modify keyboard shortcuts."
-msgstr ""
+msgstr "Öffnen Sie ein neues Projekt um die Tastatur-Einstellungen zu ändern."
#: ../src/prefs/KeyConfigPrefs.cpp:92
msgid "Key Bindings"
@@ -7824,17 +7785,22 @@ msgstr "Anmerkung: Dr
msgid "&Defaults"
msgstr "Alle zurücksetzen"
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr ""
+
#: ../src/prefs/KeyConfigPrefs.cpp:140
msgid "Key Combination"
msgstr "Taste"
-#: ../src/prefs/KeyConfigPrefs.cpp:160
-msgid "Export Keyboard Shortcuts As:"
-msgstr "Tastatur-Shortcuts exportieren als:"
+#: ../src/prefs/KeyConfigPrefs.cpp:301 ../src/toolbars/EditToolBar.cpp:143
+msgid "Undo"
+msgstr "Rückgängig"
-#: ../src/prefs/KeyConfigPrefs.cpp:178
-msgid "Error saving keyboard shortcuts"
-msgstr "Fehler beim Speichern der Tastatur-Shortcuts."
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr ""
#: ../src/prefs/KeyConfigPrefs.cpp:193
msgid "Select an XML file containing Audacity keyboard shortcuts..."
@@ -7844,6 +7810,14 @@ msgstr "W
msgid "Error loading keyboard shortcuts"
msgstr "Fehler beim Laden der Tastatur-Shortcuts."
+#: ../src/prefs/KeyConfigPrefs.cpp:160
+msgid "Export Keyboard Shortcuts As:"
+msgstr "Tastatur-Shortcuts exportieren als:"
+
+#: ../src/prefs/KeyConfigPrefs.cpp:178
+msgid "Error saving keyboard shortcuts"
+msgstr "Fehler beim Speichern der Tastatur-Shortcuts."
+
#: prefs/KeyConfigPrefs.cpp:239
#, c-format
msgid "The keyboard shortcut '%s' is already assigned to:\n"
@@ -7853,10 +7827,61 @@ msgstr "Die Tastaturbelegung '%s' ist bereits vergeben f
"\n"
"'%s'"
-#: ../src/prefs/KeyConfigPrefs.cpp:301
-#: ../src/toolbars/EditToolBar.cpp:143
-msgid "Undo"
-msgstr "Rückgängig"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:84
+msgid "MP3 Export Library"
+msgstr "MP3-Export-Bibliothek"
+
+#: ../src/prefs/FileFormatPrefs.cpp:180
+msgid "MP3 Library Version:"
+msgstr "Version:"
+
+#: prefs/FileFormatPrefs.cpp:93
+msgid "MP3 Library:"
+msgstr "Bibliothek"
+
+#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr "&Suchen..."
+
+#: prefs/FileFormatPrefs.cpp:98
+msgid "LAME MP3 Library:"
+msgstr "Bibliothek"
+
+#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
+msgid "&Download"
+msgstr "&Herunterladen..."
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr "FFmpeg-Import/Export-Bibliothek"
+
+#: prefs/FileFormatPrefs.cpp:109
+msgid "FFmpeg Library Version:"
+msgstr "Version:"
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
+msgid "FFmpeg Library:"
+msgstr "Bibliothek"
+
+#: ../src/prefs/AudioIOPrefs.cpp:41 ../src/prefs/AudioIOPrefs.cpp:42
+msgid "Audio I/O"
+msgstr "Audio E/A"
+
+#: ../src/prefs/AudioIOPrefs.cpp:123
+msgid "Portaudio v"
+msgstr "Portaudio v"
+
+#: ../src/prefs/AudioIOPrefs.cpp:145
+msgid "Playthrough"
+msgstr "Wiedergabe während Aufnahme"
#: ../src/prefs/AudioIOPrefs.cpp:147
msgid "&Play other tracks while recording new one"
@@ -7864,19 +7889,27 @@ msgstr "Multiplay: Bestehende Spuren w
#: prefs/MidiIOPrefs.cpp:149
msgid "&Hardware Playthrough (Play new track while recording it)"
-msgstr ""
+msgstr "&Hardware-Playthrough (Neue Spur wiedergeben während Aufnahme)"
#: prefs/MidiIOPrefs.cpp:152
msgid "&Software Playthrough (Play new track while recording it)"
-msgstr ""
+msgstr "&Software-Playthrough (Neue Spur wiedergeben während Aufnahme)"
+
+#: ../src/prefs/AudioIOPrefs.cpp:158
+msgid "Cut Preview"
+msgstr "Schnitt vorhören"
#: prefs/MidiIOPrefs.cpp:160
msgid "Play before cut region:"
-msgstr ""
+msgstr "Vor der Auswahl spielen:"
#: prefs/MidiIOPrefs.cpp:162
msgid "Play after cut region:"
-msgstr ""
+msgstr "Nach der Auswahl spielen:"
+
+#: ../src/prefs/AudioIOPrefs.cpp:168
+msgid "Latency"
+msgstr "Latenz-Einstellungen"
#: ../src/prefs/AudioIOPrefs.cpp:174
msgid "Audio to buffer:"
@@ -7888,14 +7921,25 @@ msgstr "Zus
#: prefs/MidiIOPrefs.cpp:183
msgid "Seek Time"
-msgstr ""
+msgstr "Such-Zeit"
+
+#: ../src/prefs/AudioIOPrefs.cpp:187
+msgid "Short period:"
+msgstr "Kurzes Intervall:"
+
+#: ../src/prefs/AudioIOPrefs.cpp:189
+msgid "Long period:"
+msgstr "Langes Intervall:"
+
+#: ../src/prefs/AudioIOPrefs.cpp:194
+msgid "Effects Preview"
+msgstr "Effekt vorhören"
#: prefs/MidiIOPrefs.cpp:196
msgid "Play when previewing:"
-msgstr ""
+msgstr "Wiedergabe beim Vorhören:"
-#: ../src/prefs/MousePrefs.cpp:55
-#: ../src/prefs/MousePrefs.cpp:56
+#: ../src/prefs/MousePrefs.cpp:55 ../src/prefs/MousePrefs.cpp:56
msgid "Mouse"
msgstr "Maus"
@@ -7915,33 +7959,27 @@ msgstr "Ausf
msgid "Buttons"
msgstr "Maustasten"
-#: ../src/prefs/MousePrefs.cpp:98
-#: ../src/prefs/MousePrefs.cpp:102
+#: ../src/prefs/MousePrefs.cpp:98 ../src/prefs/MousePrefs.cpp:102
#: ../src/prefs/MousePrefs.cpp:113
msgid "Left-Click"
msgstr "Linksklick"
-#: ../src/prefs/MousePrefs.cpp:98
-#: ../src/prefs/MousePrefs.cpp:99
+#: ../src/prefs/MousePrefs.cpp:98 ../src/prefs/MousePrefs.cpp:99
#: ../src/prefs/MousePrefs.cpp:100
msgid "Select"
msgstr "Auswählen"
-#: ../src/prefs/MousePrefs.cpp:98
-#: ../src/prefs/MousePrefs.cpp:118
+#: ../src/prefs/MousePrefs.cpp:98 ../src/prefs/MousePrefs.cpp:118
msgid "Set Selection Point"
msgstr "Auswahlposition einstellen"
-#: ../src/prefs/MousePrefs.cpp:99
-#: ../src/prefs/MousePrefs.cpp:103
-#: ../src/prefs/MousePrefs.cpp:107
-#: ../src/prefs/MousePrefs.cpp:111
+#: ../src/prefs/MousePrefs.cpp:99 ../src/prefs/MousePrefs.cpp:103
+#: ../src/prefs/MousePrefs.cpp:107 ../src/prefs/MousePrefs.cpp:111
#: ../src/prefs/MousePrefs.cpp:115
msgid "Left-Drag"
msgstr "Linksklick+Ziehen"
-#: ../src/prefs/MousePrefs.cpp:99
-#: ../src/prefs/MousePrefs.cpp:119
+#: ../src/prefs/MousePrefs.cpp:99 ../src/prefs/MousePrefs.cpp:119
msgid "Set Selection Range"
msgstr "Auswahlbereich einstellen"
@@ -7955,24 +7993,22 @@ msgstr "Shift+Linksklick"
#: prefs/MousePrefs.cpp:101
msgid "Left-Double-Click"
-msgstr ""
+msgstr "Doppelklick links"
#: prefs/MousePrefs.cpp:101
msgid "Select Clip or Entire Track"
-msgstr ""
+msgstr "Clip oder ganze Spur auswählen"
#: prefs/MousePrefs.cpp:102
msgid "Ctrl-Left-Click"
-msgstr ""
+msgstr "Strg+linke Maustaste"
#: prefs/MousePrefs.cpp:102
msgid "Set Selection Point and Play"
-msgstr ""
+msgstr "Auswahl-Punkt setzen und wiedergeben"
-#: ../src/prefs/MousePrefs.cpp:102
-#: ../src/prefs/MousePrefs.cpp:103
-#: ../src/prefs/MousePrefs.cpp:104
-#: ../src/prefs/MousePrefs.cpp:105
+#: ../src/prefs/MousePrefs.cpp:102 ../src/prefs/MousePrefs.cpp:103
+#: ../src/prefs/MousePrefs.cpp:104 ../src/prefs/MousePrefs.cpp:105
msgid "Zoom"
msgstr "Zoom"
@@ -7980,8 +8016,7 @@ msgstr "Zoom"
msgid "Zoom in on Point"
msgstr "Einzoomen bis"
-#: ../src/prefs/MousePrefs.cpp:103
-#: ../src/prefs/MousePrefs.cpp:105
+#: ../src/prefs/MousePrefs.cpp:103 ../src/prefs/MousePrefs.cpp:105
#: ../src/prefs/MousePrefs.cpp:121
msgid "Zoom in on a Range"
msgstr "Bereich einzoomen"
@@ -7994,8 +8029,7 @@ msgstr "Dasselbe wie rechts ziehen"
msgid "Right-Click"
msgstr "Rechtsklick"
-#: ../src/prefs/MousePrefs.cpp:104
-#: ../src/prefs/MousePrefs.cpp:120
+#: ../src/prefs/MousePrefs.cpp:104 ../src/prefs/MousePrefs.cpp:120
msgid "Zoom out one step"
msgstr "Auszoomen (1 Stufe)"
@@ -8009,19 +8043,19 @@ msgstr "Dasselbe wie links ziehen"
#: prefs/MousePrefs.cpp:108
msgid "Shift-Drag"
-msgstr ""
+msgstr "Großbuchstabentaste-Ziehen"
#: prefs/MousePrefs.cpp:108
msgid "Zoom out on a Range"
-msgstr ""
+msgstr "Zu weit gezoomt"
#: prefs/MousePrefs.cpp:109
msgid "Middle-Click"
-msgstr ""
+msgstr "mittlere Maustaste"
#: prefs/MousePrefs.cpp:109
msgid "Zoom default"
-msgstr ""
+msgstr "Zoom-Grundeinstellung"
#: ../src/prefs/MousePrefs.cpp:107
msgid "Time shift clip or move up/down between tracks"
@@ -8037,8 +8071,7 @@ msgid "Time shift all clips in track"
msgstr "Alle Clips in der Spur auf der\n"
"Zeitachse verschieben"
-#: ../src/prefs/MousePrefs.cpp:109
-#: ../src/prefs/MousePrefs.cpp:116
+#: ../src/prefs/MousePrefs.cpp:109 ../src/prefs/MousePrefs.cpp:116
msgid "Ctrl-Left-Drag"
msgstr "Ctrl+Linksziehen"
@@ -8054,10 +8087,8 @@ msgstr "Verst
msgid "Change Sample"
msgstr "Sample verschoben"
-#: ../src/prefs/MousePrefs.cpp:113
-#: ../src/prefs/MousePrefs.cpp:114
-#: ../src/prefs/MousePrefs.cpp:115
-#: ../src/prefs/MousePrefs.cpp:116
+#: ../src/prefs/MousePrefs.cpp:113 ../src/prefs/MousePrefs.cpp:114
+#: ../src/prefs/MousePrefs.cpp:115 ../src/prefs/MousePrefs.cpp:116
msgid "Pencil"
msgstr "Stift"
@@ -8077,25 +8108,20 @@ msgstr "Verschieben mehrerer Samples"
msgid "Change ONE Sample only"
msgstr "Nur EIN Sample verschieben"
-#: ../src/prefs/MousePrefs.cpp:118
-#: ../src/prefs/MousePrefs.cpp:119
-#: ../src/prefs/MousePrefs.cpp:120
-#: ../src/prefs/MousePrefs.cpp:121
+#: ../src/prefs/MousePrefs.cpp:118 ../src/prefs/MousePrefs.cpp:119
+#: ../src/prefs/MousePrefs.cpp:120 ../src/prefs/MousePrefs.cpp:121
msgid "Multi"
msgstr "Multi"
-#: ../src/prefs/MousePrefs.cpp:118
-#: ../src/prefs/MousePrefs.cpp:119
+#: ../src/prefs/MousePrefs.cpp:118 ../src/prefs/MousePrefs.cpp:119
msgid "same as select tool"
msgstr "Dasselbe wie Auswahlwerkzeug"
-#: ../src/prefs/MousePrefs.cpp:120
-#: ../src/prefs/MousePrefs.cpp:121
+#: ../src/prefs/MousePrefs.cpp:120 ../src/prefs/MousePrefs.cpp:121
msgid "same as zoom tool"
msgstr "Dasselbe wie Zoomwerkzeug"
-#: ../src/prefs/MousePrefs.cpp:123
-#: ../src/prefs/MousePrefs.cpp:124
+#: ../src/prefs/MousePrefs.cpp:123 ../src/prefs/MousePrefs.cpp:124
msgid "Any"
msgstr "Beliebig"
@@ -8109,11 +8135,11 @@ msgstr "Mausrad"
#: prefs/MousePrefs.cpp:128
msgid "Scroll left or right"
-msgstr ""
+msgstr "Rechts oder links scrollen"
#: prefs/MousePrefs.cpp:128
msgid "Shift-Wheel-Rotate"
-msgstr ""
+msgstr "Großbuchstabentaste-Mausrad-Rotation"
#: ../src/prefs/MousePrefs.cpp:124
msgid "Ctrl-Wheel-Rotate"
@@ -8123,10 +8149,62 @@ msgstr "Ctrl+Mausrad"
msgid "Zoom in or out"
msgstr "Ein-/Auszoomen"
+#: prefs/AudioIOPrefs.cpp:165
+msgid "Length of preview:"
+msgstr "Länge beim Vorhören:"
+
+#: prefs/AudioIOPrefs.cpp:173
+msgid "Preview before cut region:"
+msgstr "Vorhören vor der Schnittauswahl:"
+
+#: prefs/AudioIOPrefs.cpp:175
+msgid "Preview after cut region:"
+msgstr "Vorhören nach der Schnittauswahl:"
+
+#: prefs/AudioIOPrefs.cpp:197
+msgid "Seek Time when playing"
+msgstr "Intervall beim Springen während Wiedergabe"
+
#: ../src/prefs/PrefsDialog.cpp:97
msgid "Audacity Preferences"
msgstr "Audacity Einstellungen"
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr ""
+
+#: ../src/prefs/FileFormatPrefs.cpp:132
+msgid "When saving a project that depends on other audio files"
+msgstr "Beim Speichern eines Projekts, das unkomprimierte Audiodaten direkt einliest"
+
+#: prefs/FileFormatPrefs.cpp:151
+msgid "Always © all audio into project (safest)"
+msgstr "Immer alle Daten in die Projektdatei kopieren (sicherer)"
+
+#: prefs/FileFormatPrefs.cpp:152
+msgid "&Do not copy any audio"
+msgstr "Daten nicht kopieren (schneller)"
+
+#: ../src/prefs/FileFormatPrefs.cpp:135
+msgid "&Ask user"
+msgstr "&Anwender/-in fragen"
+
+#: ../src/prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr "Automatisch Sicherheitskopien anlegen"
+
+#: ../src/prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr "Sicherheitskopie des Projekts in einem separaten Verzeichnis anlegen"
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr "Intervall für automatisches Speichern:"
+
+#: ../src/prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr "Minuten"
+
#: ../src/prefs/QualityPrefs.cpp:73
msgid "Rectangle"
msgstr "Rechteck"
@@ -8151,96 +8229,135 @@ msgstr "Standard-Samplefrequenz:"
msgid "Default Sample Format:"
msgstr "Standard-Sampleformat:"
-#: ../src/prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "Echtzeit-Sample-Konverter:"
-
-#: ../src/prefs/QualityPrefs.cpp:139
-msgid "High-quality sample rate converter:"
-msgstr "Hochwertiger Samplekonverter:"
-
-#: ../src/prefs/QualityPrefs.cpp:142
-msgid "Real-time dither:"
-msgstr "Echtzeit-Dithering:"
-
-#: ../src/prefs/QualityPrefs.cpp:145
-msgid "High-quality dither:"
-msgstr "Hochwertiges Dithering:"
-
-#: ../src/prefs/QualityPrefs.cpp:157
-msgid "Conversion"
-msgstr "Umwandlung"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+#, fuzzy
+msgid "Sample Rate Converter:"
msgstr "Sample-Rate-Umwandler:"
#: ../src/prefs/QualityPrefs.cpp:164
msgid "Dither"
msgstr "Art des Ditherings:"
-#: ../src/prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
-msgstr "Echtzeit:"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:149
+msgid "Overdub: &Play other tracks while recording new one"
+msgstr "Overdub: &Andere Spuren wiedergeben während Aufnahme"
+
+#: prefs/AudioIOPrefs.cpp:150
+msgid "&Hardware Playthrough: Play new track while recording it"
+msgstr "&Hardware-Playthrough: Neue Spur während Aufnahme wiedergeben"
-#: ../src/prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
-msgstr "Hochwertig:"
+#: prefs/AudioIOPrefs.cpp:157
+msgid "&Software Playthrough: Play new track while recording or monitoring"
+msgstr "&Software-Playthrough: Neue Spur während Aufnahme oder Abhören wiedergeben"
+
+#: prefs/AudioIOPrefs.cpp:160
+msgid "(uncheck when recording \"stereo mix\")"
+msgstr "(Nicht bei Aufnahme der \"Soundkarten-Summe\"!)"
+
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
+msgstr ""
-#: prefs/SmartRecordPrefs.cpp:54
-#: prefs/SmartRecordPrefs.cpp:55
-msgid "Smart Recording"
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
msgstr ""
#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
msgid "Sound Activated Recording"
-msgstr ""
+msgstr "Pegelgesteuerte Aufnahme"
#: prefs/SmartRecordPrefs.cpp:71
msgid "Sound Activation Level (dB):"
-msgstr ""
+msgstr "Schwellwert für pegelgesteuerte Aufnahme (dB):"
-#: ../src/prefs/SpectrumPrefs.cpp:36
-#: ../src/prefs/SpectrumPrefs.cpp:37
+#: ../src/prefs/SpectrumPrefs.cpp:36 ../src/prefs/SpectrumPrefs.cpp:37
msgid "Spectrograms"
msgstr "Spektrogramme"
-#: ../src/prefs/SpectrumPrefs.cpp:72
-msgid "FFT Size"
-msgstr "FFT-Größe bei der Spektral-Darstellung"
-
#: ../src/prefs/SpectrumPrefs.cpp:75
msgid "8 - most wideband"
msgstr "8 - Darstellung in sehr grober Auflösung"
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
#: ../src/prefs/SpectrumPrefs.cpp:80
msgid "256 - default"
msgstr "256 - Standardeinstellung"
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:107
msgid "32768 - most narrowband"
-msgstr ""
+msgstr "32768 - Schmalband"
#: ../src/prefs/SpectrumPrefs.cpp:84
msgid "4096 - most narrowband"
msgstr "4096 - Sehr feine Auflösung"
-# dieshier ist i.d. einstellungen für "fft-größe ...", oder? wie ist das denn zu übersetzen?? -> "Fensterfunktion", siehe http://klimt.iwr.uni-heidelberg.de/PublicFG/ProjectB/CFT/dipluschimpf/node16.html (Markus)
-#: ../src/prefs/SpectrumPrefs.cpp:90
-msgid "Window type:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:93
+#, fuzzy
+msgid "Window type"
msgstr "Fensterfunktion:"
#: prefs/SpectrumPrefs.cpp:125
msgid "FFT Skip Points"
-msgstr ""
+msgstr "FFT-Sprung-Punkte"
-#: ../src/prefs/SpectrumPrefs.cpp:96
-msgid "Display"
-msgstr "Anzeigen"
-
-#: ../src/prefs/SpectrumPrefs.cpp:100
-msgid "&Grayscale"
-msgstr "Graustufen"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
+msgstr ""
#: ../src/prefs/SpectrumPrefs.cpp:103
msgid "Minimum Frequency (Hz):"
@@ -8250,25 +8367,33 @@ msgstr "Minimalfrequenz (Hz):"
msgid "Maximum Frequency (Hz):"
msgstr "Maximalfrequenz (Hz):"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
msgstr ""
#: prefs/SpectrumPrefs.cpp:165
msgid "Minimum Amplitude (dB):"
-msgstr ""
+msgstr "Minimale Amplitude (dB):"
#: prefs/SpectrumPrefs.cpp:170
msgid "Max. Number of Notes (1..128):"
-msgstr ""
+msgstr "Maximale Anzahl Notes (1...128):"
+
+#: prefs/SpectrumPrefs.cpp:161
+msgid "&Find Notes"
+msgstr "&Notes finden"
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Quantize Notes"
+msgstr "&Notes zählen"
#: ../src/prefs/SpectrumPrefs.cpp:134
msgid "The maximum frequency must be an integer"
@@ -8286,19 +8411,58 @@ msgstr "Die Minimalfrequenz muss eine Ganzzahl sein"
msgid "Minimum frequency must be at least 0 Hz"
msgstr "Die Frequenz muss mindestens 0 Hz betragen"
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
+msgstr "Die Angabe der minimalen Amplitude (dB) muss eine Integer-Zahl sein"
+
+#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:226 prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
+#: prefs/SpectrumPrefs.cpp:230
+msgid "The maximum number of notes must be in the range 1..128"
msgstr ""
-#: ../src/prefs/ThemePrefs.cpp:61
-#: ../src/prefs/ThemePrefs.cpp:62
+#: ../src/prefs/ThemePrefs.cpp:61 ../src/prefs/ThemePrefs.cpp:62
msgid "Theme"
msgstr "Theme"
+#: ../src/prefs/ThemePrefs.cpp:123
+msgid "Info"
+msgstr "Hinweise"
+
+#: prefs/ThemePrefs.cpp:91
+#, fuzzy
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr "Themes sind eine noch experimentelle Funktion. Mit Themes (manche sagen \"Skins\") kann Programmen individualisierte Aussehen verpasst werden."
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#: ../src/prefs/ThemePrefs.cpp:90
msgid "Theme Cache - Images && Color"
msgstr "Gesamtes Theme (Bilder und Farben)"
@@ -8327,86 +8491,95 @@ msgstr "Dateien speichern"
msgid "Load Files"
msgstr "Dateien laden"
-#: ../src/prefs/ThemePrefs.cpp:123
-msgid "Info"
-msgstr "Hinweise"
+#: prefs/GUIPrefs.cpp:50
+msgid "Simple"
+msgstr "Nur bei einer Spur möglich"
-#: prefs/ThemePrefs.cpp:126
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
-msgstr "Themes sind eine noch experimentelle Funktion.\r\n"
-"\r\n"
-
-#: prefs/ThemePrefs.cpp:131
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
-msgstr "Sie haben Audacity mit dem Spezialknopf 'Output \n"
-"Sourcery' kompiliert. Deshalb wird eine C-Version der \n"
-"Grafiken gespeichert, die dann einkompiliert werden können.\n"
-
-#: prefs/ThemePrefs.cpp:136
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
-msgstr "Wenn 'Theme-Speicher beim Start laden' ausgewählt ist \n"
-"wird der Theme-Speicher beim Start geladen. \n"
-"\n"
+#: prefs/GUIPrefs.cpp:72
+msgid "&Update display while playing"
+msgstr "Automatisch Scrollen bei Wiedergabe"
-#: prefs/ThemePrefs.cpp:139
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
-msgstr "Wenn Theme-Dateien einzeln gespeichert/geladen \n"
-"werden, werden individuelle Dateien pro Grafik angelegt, \n"
-"das Grundkonzept der Themes bleibt jedoch unverändert.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:80
+msgid "Automatically &fit tracks vertically zoomed"
+msgstr "Spuren automatisch vertikal einpassen"
-#: ../src/toolbars/ControlToolBar.cpp:175
-msgid "Pause"
-msgstr "Pause (P)"
+#: prefs/TracksPrefs.cpp:88
+#, fuzzy
+msgid "Default View Mode:"
+msgstr "Standardanzeige der Spuren"
-#: ../src/toolbars/ControlToolBar.cpp:178
-msgid "Play"
-msgstr "Wiedergabe"
+#: prefs/GUIPrefs.cpp:88
+msgid "&Select all audio in project, if none selected"
+msgstr "Ohne manuelle Auswahl gelten alle Audios als ausgewählt"
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
+#: ../src/prefs/GUIPrefs.cpp:96
+msgid "Enable cut &lines"
+msgstr "Schnittlinien anzeigen"
+
+#: prefs/GUIPrefs.cpp:98
+msgid "Enable &dragging of left and right selection edges"
+msgstr "Ziehen der linken und rechten Auswahlgrenzen ermöglichen"
+
+#: prefs/GUIPrefs.cpp:104
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+msgstr "Durch ausgewählte Spuren kreisförmig navigieren"
+
+#: ../src/prefs/GUIPrefs.cpp:90
+msgid "Editing a &clip can move other clips"
+msgstr "Nachfolgende Clips beim Schneiden verschieben"
+
+#: prefs/GUIPrefs.cpp:168
+msgid "Solo Button:"
+msgstr "Solo-Button:"
+
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
msgstr ""
-#: ../src/toolbars/ControlToolBar.cpp:183
-msgid "Stop"
-msgstr "Stopp (S)"
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr ""
-#: ../src/toolbars/ControlToolBar.cpp:186
-msgid "Skip to Start"
-msgstr "An den Anfang springen (Pos 1)"
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr ""
-#: ../src/toolbars/ControlToolBar.cpp:189
-msgid "Skip to End"
-msgstr "Ans Ende springen (Ende)"
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:192
-msgid "Record (Shift for Append Record)"
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
msgstr ""
+#: ../src/Menus.cpp:843
+msgid "Pause"
+msgstr "Pause"
+
+#: ../src/Menus.cpp:842
+msgid "Stop"
+msgstr "Stopp"
+
#: ../src/toolbars/ControlToolBar.cpp:195
msgid "Clean Speech"
msgstr "Clean-Speech"
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play (Shift for Loop Play)"
+msgstr "Wiedergabe (Großbuchstabentaste für Loop-Wiedergabe)"
+
+#: toolbars/ControlToolBar.cpp:192
+msgid "Record (Shift for Append Record)"
+msgstr "Aufnahme (Großbuchstabentaste für Fortsetzen der Aufnahme)"
+
#: ../src/toolbars/ControlToolBar.cpp:524
#: ../src/toolbars/ControlToolBar.cpp:776
msgid "Error while opening sound device. "
@@ -8414,19 +8587,17 @@ msgstr "Fehler beim
#: toolbars/ControlToolBar.cpp:696
msgid "Recording in CleanSpeech mode is not possible when a track, or more than one project, is already open."
-msgstr ""
+msgstr "Aufnahme im CleanSpeech-Modus ist nicht möglich wenn eine Spur oder mehr als ein Projekt geöffnet ist."
#: ../src/toolbars/ControlToolBar.cpp:685
msgid "Recording not permitted"
msgstr "Aufnahme nicht zulässig"
-#: ../src/toolbars/DeviceToolBar.cpp:113
-#: ../src/toolbars/DeviceToolBar.cpp:115
+#: ../src/toolbars/DeviceToolBar.cpp:113 ../src/toolbars/DeviceToolBar.cpp:115
msgid "Output Device"
msgstr "Gerät für Wiedergabe"
-#: ../src/toolbars/DeviceToolBar.cpp:134
-#: ../src/toolbars/DeviceToolBar.cpp:136
+#: ../src/toolbars/DeviceToolBar.cpp:134 ../src/toolbars/DeviceToolBar.cpp:136
msgid "Input Device"
msgstr "Gerät für Aufnahme"
@@ -8440,7 +8611,7 @@ msgstr "Auswahl in Stille umwandeln"
#: toolbars/EditToolBar.cpp:150
msgid "Link Tracks"
-msgstr ""
+msgstr "Spuren verbinden"
#: ../src/toolbars/EditToolBar.cpp:149
msgid "Zoom In"
@@ -8450,29 +8621,21 @@ msgstr "Einzoomen"
msgid "Zoom Out"
msgstr "Auszoomen"
-#: ../src/toolbars/EditToolBar.cpp:155
-msgid "Zoom Toggle"
-msgstr "Zoom umschalten"
-
-#: ../src/toolbars/EditToolBar.cpp:159
-msgid "Fit Selection"
-msgstr "Auswahl einpassen"
-
#: ../src/toolbars/EditToolBar.cpp:159
msgid "Fit selection in window"
msgstr "Auswahl ins Fenster einpassen"
#: ../src/toolbars/EditToolBar.cpp:161
-msgid "Fit Project"
-msgstr "Projekt einpassen"
-
-#: ../src/toolbars/EditToolBar.cpp:161
msgid "Fit project in window"
msgstr "Gesamtes Projekt ins Fenster einpassen"
-#: ../src/toolbars/MeterToolBar.cpp:49
-msgid "Meter"
-msgstr "Aussteuerungsanzeige"
+#: ../src/toolbars/EditToolBar.cpp:159
+msgid "Fit Selection"
+msgstr "Auswahl einpassen"
+
+#: ../src/toolbars/EditToolBar.cpp:161
+msgid "Fit Project"
+msgstr "Projekt einpassen"
#: ../src/toolbars/MeterToolBar.cpp:79
msgid "Play Meter"
@@ -8520,24 +8683,28 @@ msgstr "Mixer-Aufnahmelautst
msgid "Input Source"
msgstr "Aufnahmequelle"
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr ""
+
#: ../src/toolbars/SelectionBar.cpp:75
msgid "Selection"
msgstr "Zeit-/Projektfrequenzleiste"
-#: ../src/toolbars/SelectionBar.cpp:115
-#: ../src/toolbars/SelectionBar.cpp:168
+#: ../src/toolbars/SelectionBar.cpp:115 ../src/toolbars/SelectionBar.cpp:168
msgid "Project Rate (Hz):"
msgstr "Projekt-Frequenz (Hz):"
-#: ../src/toolbars/SelectionBar.cpp:120
-#: ../src/toolbars/SelectionBar.cpp:211
+#: ../src/toolbars/SelectionBar.cpp:120 ../src/toolbars/SelectionBar.cpp:211
msgid "Selection Start:"
msgstr "Anfang der Auswahl:"
-#: ../src/effects/ToneGen.cpp:300
-#: ../src/effects/ToneGen.cpp:338
-#: ../src/toolbars/SelectionBar.cpp:135
-#: ../src/toolbars/SelectionBar.cpp:225
+#: ../src/effects/ToneGen.cpp:300 ../src/effects/ToneGen.cpp:338
+#: ../src/toolbars/SelectionBar.cpp:135 ../src/toolbars/SelectionBar.cpp:225
msgid "Length"
msgstr "Länge"
@@ -8545,13 +8712,11 @@ msgstr "L
msgid "hidden"
msgstr "versteckt"
-#: ../src/toolbars/SelectionBar.cpp:155
-#: ../src/toolbars/SelectionBar.cpp:239
+#: ../src/toolbars/SelectionBar.cpp:155 ../src/toolbars/SelectionBar.cpp:239
msgid "Audio Position:"
msgstr "Audioposition:"
-#: toolbars/SelectionBar.cpp:217
-#: toolbars/SelectionBar.cpp:222
+#: toolbars/SelectionBar.cpp:217 toolbars/SelectionBar.cpp:222
msgid "Snap To"
msgstr "Einrasten"
@@ -8572,8 +8737,7 @@ msgstr "Ans &Ende der Auswahl"
msgid "Audacity %s ToolBar"
msgstr "Audacity-%s"
-#: ../src/toolbars/ToolDock.cpp:74
-#: ../src/toolbars/ToolDock.cpp:75
+#: ../src/toolbars/ToolDock.cpp:74 ../src/toolbars/ToolDock.cpp:75
msgid "ToolDock"
msgstr "Werkzeug-Dock"
@@ -8605,30 +8769,6 @@ msgstr "Links=Einzoomen, Rechts=Auszoomen, Mitte=Normal"
msgid "Click and drag to move a track in time"
msgstr "Klicken und ziehen um eine Tonspur auf der Zeitachse zu verschieben"
-#: ../src/toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr "Werkzeuge"
-
-#: ../src/toolbars/ToolsToolBar.cpp:147
-msgid "Selection Tool"
-msgstr "Auswahlwerkzeug"
-
-#: ../src/toolbars/ToolsToolBar.cpp:148
-msgid "Envelope Tool"
-msgstr "Hüllkurvenwerkzeug"
-
-#: ../src/toolbars/ToolsToolBar.cpp:149
-msgid "Time Shift Tool"
-msgstr "Zeitverschiebungswerkzeug"
-
-#: ../src/toolbars/ToolsToolBar.cpp:150
-msgid "Zoom Tool"
-msgstr "Zoomwerkzeug"
-
-#: ../src/toolbars/ToolsToolBar.cpp:151
-msgid "Draw Tool"
-msgstr "Zeichenwerkzeug"
-
#: ../src/toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
msgstr "Multifunktionswerkzeug"
@@ -8638,22 +8778,10 @@ msgstr "Multifunktionswerkzeug"
msgid "Slide Tool"
msgstr "Zeitverschiebungswerkzeug"
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr "Multifunktionswerkzeug"
-
-#: ../src/toolbars/TranscriptionToolBar.cpp:81
-msgid "Transcription"
-msgstr "Transkriptionswerkzeug"
-
#: ../src/toolbars/TranscriptionToolBar.cpp:183
msgid "Play at selected speed"
msgstr "Mit der ausgewählten Geschwindigkeit wiedergeben"
-#: ../src/toolbars/TranscriptionToolBar.cpp:184
-msgid "Play-at-speed"
-msgstr "Schnellere/langsamere Wiedergabe"
-
#: ../src/toolbars/TranscriptionToolBar.cpp:190
#: ../src/toolbars/TranscriptionToolBar.cpp:195
msgid "Playback Speed"
@@ -8663,74 +8791,38 @@ msgstr "Wiedergabe-Geschwindigkeit"
msgid "Adjust left selection to next onset"
msgstr "Linke Auswahlgrenze an Beginn der Sprache verschieben"
-#: ../src/toolbars/TranscriptionToolBar.cpp:201
-msgid "Left-to-On"
-msgstr "Links-bis-Beginn"
-
#: ../src/toolbars/TranscriptionToolBar.cpp:203
msgid "Adjust right selection to previous offset"
msgstr "Rechte Auswahlgrenze an das Ende der Sprache verschieben"
-#: ../src/toolbars/TranscriptionToolBar.cpp:204
-msgid "Right-to-Off"
-msgstr "Rechts-bis-Ende"
-
#: ../src/toolbars/TranscriptionToolBar.cpp:206
msgid "Adjust left selection to next offset"
msgstr "Linke Auswahlgrenze an Ende der Sprache verschieben"
-#: ../src/toolbars/TranscriptionToolBar.cpp:207
-msgid "Left-to-Off"
-msgstr "Links-bis-Ende"
-
#: ../src/toolbars/TranscriptionToolBar.cpp:209
msgid "Adjust right selection to previous onset"
msgstr "Rechte Auswahlgrenze an den Beginn der Sprache verschieben"
-#: ../src/toolbars/TranscriptionToolBar.cpp:210
-msgid "Right-to-On"
-msgstr "Rechts-bis-Beginn"
-
#: ../src/toolbars/TranscriptionToolBar.cpp:212
msgid "Select region of sound around cursor"
msgstr "Auswahl erzeugen: Sprache im Bereich des Cursors"
-#: ../src/toolbars/TranscriptionToolBar.cpp:213
-msgid "Select-Sound"
-msgstr "Sound auswählen"
-
#: ../src/toolbars/TranscriptionToolBar.cpp:215
msgid "Select region of silence around cursor"
msgstr "Auswahl erzeugen: Stille im Bereich des Cursors"
-#: ../src/toolbars/TranscriptionToolBar.cpp:216
-msgid "Select-Silence"
-msgstr "Stille auswählen"
-
#: ../src/toolbars/TranscriptionToolBar.cpp:218
msgid "Automatically make labels from words"
msgstr "Automatisch Textmarkierungen erzeugen in Bereichen mit Sprache"
-#: ../src/toolbars/TranscriptionToolBar.cpp:219
-msgid "Make Labels"
-msgstr "Textmarken erzeugen"
-
#: ../src/toolbars/TranscriptionToolBar.cpp:221
msgid "Add label at selection"
msgstr "Textmarken im Bereich der Auswahl erzeugen"
-#: ../src/toolbars/TranscriptionToolBar.cpp:222
-msgid "Add Label"
-msgstr "Textmarke hinzufügen"
-
#: ../src/toolbars/TranscriptionToolBar.cpp:224
msgid "Calibrate voicekey"
msgstr "Voice-Key: Stillepegel festlegen"
-#: ../src/toolbars/TranscriptionToolBar.cpp:225
-msgid "Calibrate"
-msgstr "Einstellen"
-
#: ../src/toolbars/TranscriptionToolBar.cpp:229
msgid "Adjust Sensitivity"
msgstr "Empfindlichkeit einstellen"
@@ -8763,6 +8855,46 @@ msgstr "Richtungswechsel (Hoher Grenzwert)"
msgid "Key type"
msgstr "Voice-Keytyp"
+#: ../src/toolbars/TranscriptionToolBar.cpp:184
+msgid "Play-at-speed"
+msgstr "Schnellere/langsamere Wiedergabe"
+
+#: ../src/toolbars/TranscriptionToolBar.cpp:201
+msgid "Left-to-On"
+msgstr "Links-bis-Beginn"
+
+#: ../src/toolbars/TranscriptionToolBar.cpp:204
+msgid "Right-to-Off"
+msgstr "Rechts-bis-Ende"
+
+#: ../src/toolbars/TranscriptionToolBar.cpp:207
+msgid "Left-to-Off"
+msgstr "Links-bis-Ende"
+
+#: ../src/toolbars/TranscriptionToolBar.cpp:210
+msgid "Right-to-On"
+msgstr "Rechts-bis-Beginn"
+
+#: ../src/toolbars/TranscriptionToolBar.cpp:213
+msgid "Select-Sound"
+msgstr "Sound auswählen"
+
+#: ../src/toolbars/TranscriptionToolBar.cpp:216
+msgid "Select-Silence"
+msgstr "Stille auswählen"
+
+#: ../src/toolbars/TranscriptionToolBar.cpp:219
+msgid "Make Labels"
+msgstr "Textmarken erzeugen"
+
+#: ../src/toolbars/TranscriptionToolBar.cpp:222
+msgid "Add Label"
+msgstr "Textmarke hinzufügen"
+
+#: ../src/toolbars/TranscriptionToolBar.cpp:225
+msgid "Calibrate"
+msgstr "Einstellen"
+
#: ../src/widgets/AButton.cpp:298
msgid " (disabled)"
msgstr "(deaktiviert)"
@@ -8777,15 +8909,13 @@ msgstr "Button"
#. i18n-hint: One-letter abbreviation for Left, in VU Meter
#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
-#: ../src/widgets/Meter.cpp:205
-#: ../src/widgets/ASlider.cpp:538
+#: ../src/widgets/Meter.cpp:205 ../src/widgets/ASlider.cpp:538
msgid "L"
msgstr "L"
#. i18n-hint: One-letter abbreviation for Right, in VU Meter
#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
-#: ../src/widgets/Meter.cpp:207
-#: ../src/widgets/ASlider.cpp:541
+#: ../src/widgets/Meter.cpp:207 ../src/widgets/ASlider.cpp:541
msgid "R"
msgstr "R"
@@ -8801,26 +8931,25 @@ msgstr "Links"
msgid "Right"
msgstr "Rechts"
-#: widgets/ErrorDialog.cpp:73
-#: widgets/ErrorDialog.cpp:97
+#: widgets/ErrorDialog.cpp:73 widgets/ErrorDialog.cpp:97
msgid "Help"
msgstr "Hilfe"
#: widgets/ErrorDialog.cpp:137
msgid "<"
-msgstr ""
+msgstr "<"
#: widgets/ErrorDialog.cpp:138
msgid ">"
-msgstr ""
+msgstr ">"
#: widgets/ErrorDialog.cpp:142
msgid "Forwards"
-msgstr ""
+msgstr "Vorwärts"
#: widgets/ErrorDialog.cpp:143
msgid "Backwards"
-msgstr ""
+msgstr "Rückwärts"
#: widgets/ErrorDialog.cpp:190
msgid "Help on the Internet"
@@ -8835,8 +8964,7 @@ msgstr "Anfasser"
msgid "%d rows, %d columns"
msgstr "%d Reihen, %d Spalten"
-#: ../src/widgets/Grid.cpp:622
-#: ../src/widgets/Grid.cpp:749
+#: ../src/widgets/Grid.cpp:622 ../src/widgets/Grid.cpp:749
#, c-format
msgid "Row %d"
msgstr "Reihe %d"
@@ -8875,7 +9003,7 @@ msgstr "Ein&stellungen..."
#: widgets/Meter.cpp:876
msgid "Mix Volume"
-msgstr ""
+msgstr "Mix-Lautstärke "
# irgendwas an diesem fenster (re-klick auf aussteuerungs-anzeige > eigenschaften) ist strange: egal wie kurz man die zeilen umbricht fehlt immer irgendwo das letzte wort ... -> wxWidgets 2.6 Bug, behoben in wxWidgets 2.8. Machs ruhig breiter (mit wxWidgets 2.8 siehst Du besser, was dabei rauskommt) (Markus)
#: ../src/widgets/Meter.cpp:1037
@@ -8903,22 +9031,21 @@ msgstr "Bitte eine Aktion ausw
#: widgets/MultiDialog.cpp:86
msgid "Please select an action"
-msgstr ""
+msgstr "Bitte eine Aktion auswählen"
#: widgets/ProgressDialog.cpp:97
msgid "Elapsed Time:"
-msgstr ""
+msgstr "Verstrichene Zeit:"
#: widgets/ProgressDialog.cpp:117
msgid "Remaining Time:"
-msgstr ""
+msgstr "Verbleibende Zeit:"
#: widgets/ProgressDialog.cpp:134
msgid "Cancel"
-msgstr ""
+msgstr "Abbrechen"
-#: ../src/widgets/Ruler.cpp:1110
-#: ../src/widgets/Ruler.cpp:1111
+#: ../src/widgets/Ruler.cpp:1110 ../src/widgets/Ruler.cpp:1111
msgid "Vertical Ruler"
msgstr "Vertikales Lineal"
@@ -8943,7 +9070,7 @@ msgstr "0100 Tage 024 Stunden 060 Minuten 060 Sekunden"
#. * minutes, seconds and hundreths of a second (1/100 second)
#: widgets/TimeTextCtrl.cpp:288
msgid "hh:mm:ss + hundredths"
-msgstr ""
+msgstr "hh:mm:ss + hundertstel"
#. i18n-hint: Format string for displaying time in hours, minutes, seconds
#. * and hundredths of a second. Change the 'h' to the abbreviation for hours,
@@ -8952,7 +9079,7 @@ msgstr ""
#. * unless there aren't 60 minutes in an hour in your locale
#: widgets/TimeTextCtrl.cpp:294
msgid "0100 h 060 m 060.0100 s"
-msgstr ""
+msgstr "0100 Std 060 Min 060.0100 Sek"
#: ../src/widgets/TimeTextCtrl.cpp:203
msgid "hh:mm:ss + milliseconds"
@@ -9070,10 +9197,22 @@ msgstr "Konnte Datei nicht
#: xml/XMLFileReader.cpp:63
#, c-format
msgid "Error: %hs at line %lu"
-msgstr ""
+msgstr "Fehler: %hs in Zeile %lu"
#: xml/XMLFileReader.cpp:79
#, c-format
msgid "Could not load file: \"%s\""
msgstr "Konnte die Datei nicht laden: \"%s\""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
+
diff --git a/locale/el.po b/locale/el.po
index 12c6536..bd13ebb 100644
--- a/locale/el.po
+++ b/locale/el.po
@@ -18,9 +18,7 @@ msgstr "Project-Id-Version: Audacity 1.3.3 b\n"
"X-Generator: KBabel 1.11.4\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: AboutDialog.cpp:142
-#: AudacityApp.cpp:724
-#: Menus.cpp:727
+#: AboutDialog.cpp:142 AudacityApp.cpp:724 Menus.cpp:727
msgid "&About Audacity..."
msgstr "&ΣÏεÏικά με Ïο Audacity..."
@@ -36,11 +34,11 @@ msgid "Audacity is a free program written by a team of volunteer <a href=\"http:
msgstr ""
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
# i18n-hint: The translation of "translator_credits" will appear
@@ -53,8 +51,7 @@ msgstr ""
#.
#. For example: "English translation by Dominic Mazzoni."
#.
-#: AboutDialog.cpp:250
-#: AboutDialog.cpp:252
+#: AboutDialog.cpp:250 AboutDialog.cpp:252
msgid "translator_credits"
msgstr "Îλληνική μεÏάÏÏαÏη αÏÏ Ïον Îίκο ΠαÏαδÏÏοÏ
λο \n"
"ÏαÏαÏηÏήÏÎµÎ¹Ï ÎºÎ±Î¹ ÏÏοÏάÏÎµÎ¹Ï ÏÏo e-mail: \n"
@@ -99,7 +96,7 @@ msgid "Special thanks:"
msgstr "ÎÏ
ÏαÏιÏÏοÏμε ÎδιαίÏεÏα:"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
msgstr ""
#: AboutDialog.cpp:314
@@ -111,8 +108,7 @@ msgstr "Audacity"
msgid "Build Information"
msgstr ""
-#: AboutDialog.cpp:166
-#: effects/AvcCompressor.cpp:674
+#: AboutDialog.cpp:166 effects/AvcCompressor.cpp:674
msgid "Enabled"
msgstr "ÎνεÏγοÏοιημÎνο"
@@ -210,16 +206,12 @@ msgstr "Î¦Î¬ÎºÎµÎ»Î¿Ï ÏÏ
θμίÏεÏν: "
msgid "GPL License"
msgstr "Îδεια GPL"
-#: AudacityApp.cpp:456
-#: Project.cpp:1714
+#: AudacityApp.cpp:456 Project.cpp:1714
#, c-format
msgid "%s is already open in another window."
msgstr "%s ÎÏει ήδη ανοιÏÏεί Ïε άλλο ÏαÏάθÏ
Ïο."
-#: AudacityApp.cpp:458
-#: Project.cpp:1716
-#: Project.cpp:1797
-#: Project.cpp:1941
+#: AudacityApp.cpp:458 Project.cpp:1716 Project.cpp:1797 Project.cpp:1941
#: Project.cpp:2043
msgid "Error opening project"
msgstr "ΣÏάλμα καÏά Ïο άνοιγμα ÏÎ·Ï ÎµÏγαÏίαÏ"
@@ -245,21 +237,28 @@ msgstr "ÎεÏÏηÏÎ®Ï Î£Î®Î¼Î±ÏÎ¿Ï ÎιÏÏδοÏ
"
msgid "Output Meter"
msgstr "ÎεÏÏηÏÎ®Ï Î£Î®Î¼Î±ÏÎ¿Ï ÎξÏδοÏ
"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
-#: AudacityApp.cpp:726
-#: Menus.cpp:468
-msgid "&Preferences...\tCtrl+,"
-msgstr "&Î ÏοÏιμήÏειÏ...\tCtrl+,"
+#: Menus.cpp:162
+msgid "&New"
+msgstr "&ÎÎο"
+
+#: Menus.cpp:164
+msgid "&Open..."
+msgstr "&Îνοιγμα..."
-#: AudacityApp.cpp:815
-#: AudacityApp.cpp:900
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
+
+#: AudacityApp.cpp:726 Menus.cpp:468
+msgid "&Preferences..."
+msgstr "&Î ÏοÏιμήÏειÏ..."
+
+#: AudacityApp.cpp:815 AudacityApp.cpp:900
#, c-format
msgid "Using block size of %ld\n"
msgstr "ΧÏήÏη ÏμήμαÏÎ¿Ï Î¼ÎµÎ³ÎθοÏ
Ï %ld\n"
-#: AudacityApp.cpp:837
-#: AudacityApp.cpp:915
+#: AudacityApp.cpp:837 AudacityApp.cpp:915
#, c-format
msgid "Unknown command line option: %s\n"
msgstr "ÎγνÏÏÏη command line εÏιλογή: %s\n"
@@ -376,14 +375,14 @@ msgstr "ΣÏάλμα: "
msgid "Error Initializing Audio"
msgstr "ΣÏάλμα ÏÏην ÎÏÏικοÏοίηÏη Audio"
-#: AudioIO.cpp:1236
-msgid "Latency problem"
+#: AudioIO.cpp:1225
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
+"Audacity has brought it back to start at zero.\n"
+"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
msgstr ""
#: AudioIO.cpp:1236
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
-"Audacity has brought it back to start at zero.\n"
-"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
+msgid "Latency problem"
msgstr ""
#: AutoRecovery.cpp:54
@@ -400,8 +399,7 @@ msgstr "ÎάÏÎ¿Î¹ÎµÏ ÎµÏγαÏÎ¯ÎµÏ Î´ÎµÎ½ αÏοθηκεÏθηκαν ÏÏÏ
msgid "Recoverable projects"
msgstr "ÎÏγαÏÎ¯ÎµÏ ÏÏÎ¿Ï ÎνάκÏηÏη"
-#: AutoRecovery.cpp:78
-#: Tags.cpp:1999
+#: AutoRecovery.cpp:78 Tags.cpp:1999
msgid "Name"
msgstr "Îνομα"
@@ -431,38 +429,25 @@ msgstr ""
msgid "Confirm?"
msgstr ""
-#: AutoRecovery.cpp:146
-#: AutoRecovery.cpp:183
+#: AutoRecovery.cpp:146 AutoRecovery.cpp:183
msgid "Could not enumerate files in auto save directory"
msgstr "ÎÏαν αδÏναÏο να καÏαÏÏ
θμιθοÏν Ïα αÏÏεία ÏÏο Ïάκελο αÏ
ÏÏμαÏÎ·Ï Î±ÏοθήκεÏ
ÏηÏ"
-#: AutoRecovery.cpp:147
-#: AutoRecovery.cpp:184
-#: Menus.cpp:2462
-#: Menus.cpp:4332
-#: Project.cpp:1900
-#: Project.cpp:3230
-#: Project.cpp:3309
-#: WaveTrack.cpp:542
-#: WaveTrack.cpp:561
-#: WaveTrack.cpp:1640
-#: effects/Effect.cpp:346
-#: export/ExportMP2.cpp:230
-#: prefs/DirectoriesPrefs.cpp:189
-#: prefs/KeyConfigPrefs.cpp:245
-#: toolbars/ControlToolBar.cpp:532
+#: AutoRecovery.cpp:147 AutoRecovery.cpp:184 Menus.cpp:2462 Menus.cpp:4332
+#: Project.cpp:1900 Project.cpp:3230 Project.cpp:3309 WaveTrack.cpp:542
+#: WaveTrack.cpp:561 WaveTrack.cpp:1640 effects/Effect.cpp:346
+#: export/ExportMP2.cpp:230 prefs/DirectoriesPrefs.cpp:189
+#: prefs/KeyConfigPrefs.cpp:245 toolbars/ControlToolBar.cpp:532
#: toolbars/ControlToolBar.cpp:833
msgid "Error"
msgstr "ΣÏάλμα"
-#: BatchCommandDialog.cpp:56
-#: BatchCommandDialog.cpp:60
+#: BatchCommandDialog.cpp:56 BatchCommandDialog.cpp:60
#: BatchCommandDialog.cpp:61
msgid "Select Command"
msgstr "ÎÏιλογή ενÏολήÏ"
-#: BatchCommandDialog.cpp:80
-#: BatchProcessDialog.cpp:454
+#: BatchCommandDialog.cpp:80 BatchProcessDialog.cpp:454
#: prefs/KeyConfigPrefs.cpp:142
msgid "&Command"
msgstr "&ÎνÏολή"
@@ -471,8 +456,7 @@ msgstr "&ÎνÏολή"
msgid "&Edit Parameters"
msgstr "ÎÏε&ξεÏγαÏία ΠαÏαμÎÏÏÏν"
-#: BatchCommandDialog.cpp:89
-#: BatchProcessDialog.cpp:455
+#: BatchCommandDialog.cpp:89 BatchProcessDialog.cpp:455
msgid "&Parameters"
msgstr "Î &αÏάμεÏÏοι"
@@ -516,8 +500,7 @@ msgid "Apply %s with parameter(s)\n"
"%s"
msgstr ""
-#: BatchCommands.cpp:675
-#: BatchCommands.cpp:680
+#: BatchCommands.cpp:675 BatchCommands.cpp:680
msgid "Test Mode"
msgstr "ÎαÏάÏÏαÏη ÎοκιμήÏ"
@@ -526,8 +509,7 @@ msgstr "ÎαÏάÏÏαÏη ÎοκιμήÏ"
msgid "Apply %s"
msgstr "ÎÏαÏμογή %s"
-#: BatchProcessDialog.cpp:60
-#: BatchProcessDialog.cpp:70
+#: BatchProcessDialog.cpp:60 BatchProcessDialog.cpp:70
#: BatchProcessDialog.cpp:71
#, fuzzy
msgid "Apply Chain"
@@ -555,23 +537,15 @@ msgstr "ÎÏαÏμογή ÏÏο &ΤÏÎÏον ÎÏγο"
msgid "Apply to &Files..."
msgstr "Î&ÏαÏμογή ÏÏα ÎÏÏεία..."
-#: BatchProcessDialog.cpp:108
-#: BatchProcessDialog.cpp:247
-#: Tags.cpp:2038
-#: Tags.cpp:2042
-#: Tags.cpp:2342
-#: Tags.cpp:2346
-#: UploadDialog.cpp:180
-#: effects/AvcCompressor.cpp:732
-#: effects/ChangeLength.cpp:183
-#: effects/SpikeCleaner.cpp:188
-#: effects/VST/VSTEffect.cpp:437
+#: BatchProcessDialog.cpp:108 BatchProcessDialog.cpp:247 Tags.cpp:2038
+#: Tags.cpp:2042 Tags.cpp:2342 Tags.cpp:2346 UploadDialog.cpp:180
+#: effects/AvcCompressor.cpp:732 effects/ChangeLength.cpp:183
+#: effects/SpikeCleaner.cpp:188 effects/VST/VSTEffect.cpp:437
#: effects/audiounits/AudioUnitEffect.cpp:882
msgid "&Cancel"
msgstr "&ÎκÏÏÏÏη"
-#: BatchProcessDialog.cpp:146
-#: BatchProcessDialog.cpp:191
+#: BatchProcessDialog.cpp:146 BatchProcessDialog.cpp:191
#, fuzzy
msgid "No chain selected"
msgstr "-Îεν εÏιλÎÏθηκε ÏÏÏοÏ-"
@@ -609,8 +583,7 @@ msgstr "ÎÏαÏμογή..."
msgid "File"
msgstr "ÎÏÏείο"
-#: BatchProcessDialog.cpp:356
-#: BatchProcessDialog.cpp:360
+#: BatchProcessDialog.cpp:356 BatchProcessDialog.cpp:360
#: BatchProcessDialog.cpp:361
#, fuzzy
msgid "Edit Chains"
@@ -621,19 +594,12 @@ msgstr "ÎÏεξεÏγαÏία εÏγαÏίαÏ"
msgid "&Chains"
msgstr "ÎαθαÏιÏμÏÏ ÏλÏν ÏÏν αλÏ
ÏίδÏν(chains): "
-#: BatchProcessDialog.cpp:435
-#: Tags.cpp:782
-#: Tags.cpp:1422
-#: Tags.cpp:2022
+#: BatchProcessDialog.cpp:435 Tags.cpp:782 Tags.cpp:1422 Tags.cpp:2022
msgid "&Add"
msgstr "&Î ÏοÏθήκη"
-#: BatchProcessDialog.cpp:436
-#: LabelDialog.cpp:126
-#: Tags.cpp:783
-#: Tags.cpp:1423
-#: Tags.cpp:2023
-#: TrackPanel.cpp:3985
+#: BatchProcessDialog.cpp:436 LabelDialog.cpp:126 Tags.cpp:783 Tags.cpp:1423
+#: Tags.cpp:2023 TrackPanel.cpp:3985
msgid "&Remove"
msgstr "Î&ÏαίÏεÏη"
@@ -647,8 +613,8 @@ msgstr ""
#. i18n-hint: This is the number of the command in the list
#: BatchProcessDialog.cpp:453
-msgid "No"
-msgstr "ÎÏι"
+msgid "Num"
+msgstr ""
#: BatchProcessDialog.cpp:459
msgid "&Insert"
@@ -738,8 +704,7 @@ msgstr "ÎλεÏθεÏÎ¿Ï ÏÏÏÎ¿Ï Î´Î¯ÏκοÏ
"
msgid "Copy Selected Audio Into Project"
msgstr "ÎνÏιγÏαÏή ΤοÏ
ÎÏιλεγμÎνοÏ
Audio ΣÏην ÎÏγαÏία"
-#: Dependencies.cpp:304
-#: Dependencies.cpp:413
+#: Dependencies.cpp:304 Dependencies.cpp:413
msgid "Cancel Save"
msgstr "ÎκÏÏÏÏη ÎÏοθήκεÏ
ÏηÏ"
@@ -751,8 +716,7 @@ msgstr ""
msgid "Copy All Audio into Project (Safer)"
msgstr ""
-#: Dependencies.cpp:320
-#: Dependencies.cpp:325
+#: Dependencies.cpp:320 Dependencies.cpp:325
msgid "Ask me"
msgstr "ΡÏÏηÏΠμε"
@@ -786,9 +750,7 @@ msgid "Warning: there is very little free disk space left on this volume.\n"
msgstr "Î ÏοÏοÏή: ÎÏει μείνει Î»Î¯Î³Î¿Ï Î´Î¹Î±Î¸ÎÏÎ¹Î¼Î¿Ï ÏÏÏÎ¿Ï Ïε αÏ
Ïή Ïη μονάδα δίÏκοÏ
.\n"
"ΠαÏÎ±ÎºÎ±Î»Ï ÎµÏÎλεξε Îνα άλλο Ïάκελο ÏÏοÏÏÏινÏν αÏÏείÏν ÏÏÎ¹Ï ÏÏοÏιμήÏειÏ."
-#: DirManager.cpp:221
-#: DirManager.cpp:251
-#: DirManager.cpp:332
+#: DirManager.cpp:221 DirManager.cpp:251 DirManager.cpp:332
msgid "Progress"
msgstr "Î ÏÏοδοÏ"
@@ -846,8 +808,7 @@ msgstr "ÎδÏναÏη η μεÏονομαÏία ÏοÏ
'%s' Ïε '%s'"
msgid "Changed block %s to new alias name\n"
msgstr ""
-#: DirManager.cpp:1115
-#: DirManager.cpp:1403
+#: DirManager.cpp:1115 DirManager.cpp:1403
msgid "Inspecting project file data..."
msgstr "ÎλεγÏÎ¿Ï ÏÏν δεδομÎνÏν ÏÏν αÏÏείÏν ÏÎ·Ï ÎµÏγαÏίαÏ..."
@@ -895,14 +856,9 @@ msgstr ""
msgid "Close project immediately with no changes"
msgstr "ÎμεÏο κλείÏιμο ÏÎ·Ï ÎµÏγαÏίαÏ, ÏÏÏÎ¯Ï Î±Î»Î»Î±Î³ÎÏ"
-#: DirManager.cpp:1228
-#: DirManager.cpp:1263
-#: DirManager.cpp:1309
-#: DirManager.cpp:1351
-#: export/Export.cpp:484
-#: export/Export.cpp:501
-#: export/Export.cpp:520
-#: widgets/Warning.cpp:55
+#: DirManager.cpp:1228 DirManager.cpp:1263 DirManager.cpp:1309
+#: DirManager.cpp:1351 export/Export.cpp:484 export/Export.cpp:501
+#: export/Export.cpp:520 widgets/Warning.cpp:55
msgid "Warning"
msgstr "Î ÏοÏοÏή"
@@ -920,14 +876,11 @@ msgstr ""
msgid "Replace missing data with silence [permanent upon save]"
msgstr "ÎνÏικαÏάÏÏαÏη ÏÏν δεδομÎνÏν ÏοÏ
λείÏοÏ
ν με Ïιγή [μÏνιμο μεÏά Ïην αÏοθήκεÏ
Ïη]"
-#: DirManager.cpp:1260
-#: DirManager.cpp:1348
+#: DirManager.cpp:1260 DirManager.cpp:1348
msgid "Temporarily replace missing data with silence [this session only]"
msgstr "Î ÏοÏοÏινά ανÏικαÏάÏÏαÏη ÏÏν δεδομÎνÏν ÏοÏ
λείÏοÏ
ν με Ïιγή [για αÏ
Ïή μÏνο Ïη ÏοÏά]"
-#: DirManager.cpp:1261
-#: DirManager.cpp:1307
-#: DirManager.cpp:1349
+#: DirManager.cpp:1261 DirManager.cpp:1307 DirManager.cpp:1349
msgid "Close project immediately with no further changes"
msgstr "ÎμεÏο κλείÏιμο ÏÎ·Ï ÎµÏγαÏίαÏ, ÏÏÏÎ¯Ï ÏεÏαιÏÎÏÏ Î±Î»Î»Î±Î³ÎÏ"
@@ -989,11 +942,11 @@ msgstr "ÎÏθογÏνιο"
msgid "FFmpeg support not compiled in"
msgstr ""
-#: FFmpeg.cpp:101
+#: FFmpeg.cpp:103
msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
#: FFmpeg.cpp:104
@@ -1054,11 +1007,12 @@ msgstr ""
msgid "FFmpeg not found"
msgstr ""
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
#: FFmpeg.h:109
@@ -1081,8 +1035,7 @@ msgstr ""
msgid "Frequency Analysis"
msgstr "ÎνάλÏ
Ïη ΣÏ
ÏνÏÏηÏαÏ"
-#: FreqWindow.cpp:140
-#: TrackPanel.cpp:507
+#: FreqWindow.cpp:140 TrackPanel.cpp:507
msgid "Spectrum"
msgstr "ΦάÏμα ÏÏ
ÏνοÏήÏÏν"
@@ -1114,8 +1067,7 @@ msgstr "Cepstrum"
msgid "Algorithm"
msgstr "ÎλγÏÏιθμοÏ:"
-#: FreqWindow.cpp:168
-#: HistoryWindow.cpp:79
+#: FreqWindow.cpp:168 HistoryWindow.cpp:79
msgid "Size"
msgstr "ÎÎγεθοÏ"
@@ -1143,40 +1095,38 @@ msgstr "ÎογαÏιθμική ΣÏ
ÏνÏÏηÏα"
msgid "Axis"
msgstr ""
-#: FreqWindow.cpp:206
-#: LabelDialog.cpp:128
-#: Menus.cpp:200
-#: Menus.cpp:229
+#: FreqWindow.cpp:206 LabelDialog.cpp:128 Menus.cpp:200 Menus.cpp:229
msgid "&Export..."
msgstr "&ÎξαγÏγή..."
-#: export/ExportCL.cpp:320
-#: export/ExportOGG.cpp:252
-#: export/ExportPCM.cpp:398
+#: export/ExportCL.cpp:320 export/ExportOGG.cpp:252 export/ExportPCM.cpp:398
msgid "Export"
msgstr "ÎξαγÏγή"
-#: AboutDialog.cpp:676
-#: Dependencies.cpp:308
-#: FreqWindow.cpp:209
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
+#: AboutDialog.cpp:676 Dependencies.cpp:308 FreqWindow.cpp:209
msgid "Close"
msgstr "ÎλείÏιμο"
-#: FreqWindow.cpp:272
-#: FreqWindow.cpp:402
-#: effects/AutoDuck.cpp:487
-#: effects/AutoDuck.cpp:521
-#: effects/AutoDuck.cpp:789
-#: effects/Compressor.cpp:349
-#: effects/Compressor.cpp:357
-#: effects/Equalization.cpp:1086
-#: effects/Equalization.cpp:1088
-#: effects/Equalization.cpp:1096
-#: effects/Equalization.cpp:1162
-#: effects/Equalization.cpp:1371
-#: effects/Equalization.cpp:1382
-#: effects/Normalize.cpp:340
-#: widgets/Meter.cpp:363
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr ""
+
+#: FreqWindow.cpp:272 FreqWindow.cpp:402 effects/AutoDuck.cpp:487
+#: effects/AutoDuck.cpp:521 effects/AutoDuck.cpp:789
+#: effects/Compressor.cpp:349 effects/Compressor.cpp:357
+#: effects/Equalization.cpp:1086 effects/Equalization.cpp:1088
+#: effects/Equalization.cpp:1096 effects/Equalization.cpp:1162
+#: effects/Equalization.cpp:1371 effects/Equalization.cpp:1382
+#: effects/Normalize.cpp:340 widgets/Meter.cpp:363
msgid "dB"
msgstr "dB"
@@ -1184,20 +1134,25 @@ msgstr "dB"
# cycles per second.
#. i18n-hint: This is the abbreviation for "Hertz", or
#. cycles per second.
-#: FreqWindow.cpp:287
-#: FreqWindow.cpp:442
-#: effects/Equalization.cpp:1127
-#: effects/Equalization.cpp:1158
-#: import/ImportRaw.cpp:416
+#: FreqWindow.cpp:287 FreqWindow.cpp:442 effects/Equalization.cpp:1127
+#: effects/Equalization.cpp:1158 import/ImportRaw.cpp:416
msgid "Hz"
msgstr "Hz"
+#: Menus.cpp:3311
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "Îια να γίνει ανάλÏ
Ïη ÏÏ
ÏνÏÏηÏαÏ, Ïλα Ïα εÏιλεγμÎνα κανάλια ÏÏÎÏει να ÎÏοÏ
ν Ïον ίδιο ÏÏ
Î¸Î¼Ï Î´ÎµÎ¹Î³Î¼Î±ÏοληÏίαÏ."
+
+#: Menus.cpp:3337
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "Î¥ÏεÏβάλλον audio ÎÏει εÏιλεγεί. ÎÏνο Ïα ÏÏÏÏα %.1f δεÏ
Ï. ÏοÏ
audio θα αναλÏ
θοÏν."
+
#: FreqWindow.cpp:386
msgid "Not enough data selected."
msgstr "Îεν ÎÏοÏ
ν εÏιλεγεί αÏκεÏά δεδομÎνα."
-#: FreqWindow.cpp:450
-#: effects/AutoDuck.cpp:791
+#: FreqWindow.cpp:450 effects/AutoDuck.cpp:791
msgid "s"
msgstr "s"
@@ -1219,12 +1174,8 @@ msgstr "ÏάÏμαÏÏ
ÏνοÏήÏÏν.txt"
msgid "Export Spectral Data As:"
msgstr "ÎξαγÏγή ÎεδομÎνÏν ΦάÏμαÏÎ¿Ï ÏÏ:"
-#: FreqWindow.cpp:1077
-#: LabelDialog.cpp:599
-#: Menus.cpp:2094
-#: Project.cpp:2331
-#: Project.cpp:3282
-#: prefs/KeyConfigPrefs.cpp:180
+#: FreqWindow.cpp:1077 LabelDialog.cpp:599 Menus.cpp:2094 Project.cpp:2331
+#: Project.cpp:3282 prefs/KeyConfigPrefs.cpp:180
msgid "Couldn't write to file: "
msgstr "ÎδÏναÏη η εγγÏαÏή ÏÏο αÏÏείο: "
@@ -1236,6 +1187,21 @@ msgstr "ΣÏ
ÏνÏÏηÏα (Hz)\tÎÏίÏεδο (dB)"
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "ÎαθÏ
ÏÏÎÏηÏη (δεÏ
Ï.)\tΣÏ
ÏνÏÏηÏα (Hz)\tÎÏίÏεδο"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr ""
+
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr ""
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr ""
@@ -1313,7 +1279,7 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr ""
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
msgstr ""
#: HelpText.cpp:244
@@ -1337,7 +1303,7 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr ""
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
msgstr ""
#: HelpText.cpp:383
@@ -1372,13 +1338,8 @@ msgstr "ÎÏίÏεδα Î ÏÎ¿Ï ÎÏÏÏÏιÏη"
msgid "&Discard"
msgstr "ÎÏÏ&ÏÏιÏη"
-#: HistoryWindow.cpp:111
-#: Tags.cpp:2039
-#: Tags.cpp:2041
-#: Tags.cpp:2343
-#: Tags.cpp:2345
-#: effects/ChangeLength.cpp:186
-#: effects/SpikeCleaner.cpp:191
+#: HistoryWindow.cpp:111 Tags.cpp:2039 Tags.cpp:2041 Tags.cpp:2343
+#: Tags.cpp:2345 effects/ChangeLength.cpp:186 effects/SpikeCleaner.cpp:191
#: export/ExportCL.cpp:396
msgid "&OK"
msgstr "&ÎνÏάξει"
@@ -1387,8 +1348,7 @@ msgstr "&ÎνÏάξει"
msgid "Unable to determine"
msgstr "ÎδÏναÏη η διεÏ
κÏίνηÏη"
-#: Internat.cpp:180
-#: import/ImportRaw.cpp:392
+#: Internat.cpp:180 import/ImportRaw.cpp:392
msgid "bytes"
msgstr "bytes"
@@ -1404,13 +1364,19 @@ msgstr "MB"
msgid "GB"
msgstr "GB"
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
#: LabelDialog.cpp:52
msgid "Track"
msgstr "Îανάλι"
-#: LabelDialog.cpp:53
-#: Menus.cpp:3922
-#: Menus.cpp:3950
+#: LabelDialog.cpp:53 Menus.cpp:3922 Menus.cpp:3950
msgid "Label"
msgstr "ÎÏικÎÏα"
@@ -1422,8 +1388,7 @@ msgstr "ΧÏÏÎ½Î¿Ï ÎναÏξηÏ"
msgid "End Time"
msgstr "ΧÏÏÎ½Î¿Ï ÎήξηÏ"
-#: LabelDialog.cpp:98
-#: Menus.cpp:609
+#: LabelDialog.cpp:98 Menus.cpp:609
msgid "&Edit Labels"
msgstr "ÎÏεξεÏγαÏία ÎÏι&κεÏÏν"
@@ -1439,8 +1404,7 @@ msgstr "ÎιÏαγÏγή &ÎεÏά ÎÏÏ"
msgid "Insert &Before"
msgstr "ÎιÏαγÏγή &Î Ïιν ÎÏÏ"
-#: LabelDialog.cpp:127
-#: Menus.cpp:190
+#: LabelDialog.cpp:127 Menus.cpp:190
msgid "&Import..."
msgstr "ÎιÏαγ&Ïγή..."
@@ -1459,20 +1423,15 @@ msgstr ""
msgid "Confirm"
msgstr "ÎÏιβεβαίÏÏη"
-#: LabelDialog.cpp:514
-#: Menus.cpp:3434
+#: LabelDialog.cpp:514 Menus.cpp:3434
msgid "Select a text file containing labels..."
msgstr "ÎÏÎλεξε Îνα αÏÏείο κειμÎνοÏ
ÏοÏ
να ÏεÏιÎÏει εÏικÎÏεÏ..."
-#: LabelDialog.cpp:518
-#: Menus.cpp:3438
+#: LabelDialog.cpp:518 Menus.cpp:3438
msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
msgstr "Text αÏÏεία (*.txt)|*.txt|Îλα Ïα αÏÏεία (*.*)|*.*"
-#: LabelDialog.cpp:532
-#: Menus.cpp:3450
-#: Project.cpp:1763
-#: Project.cpp:1771
+#: LabelDialog.cpp:532 Menus.cpp:3450 Project.cpp:1763 Project.cpp:1771
#: import/ImportMIDI.cpp:31
msgid "Could not open file: "
msgstr "ÎδÏναÏο Ïο άνοιγμα αÏÏείοÏ
: "
@@ -1481,13 +1440,11 @@ msgstr "ÎδÏναÏο Ïο άνοιγμα αÏÏείοÏ
: "
msgid "No labels to export."
msgstr "Îεν Ï
ÏάÏÏοÏ
ν εÏικÎÏÎµÏ Î³Î¹Î± εξαγÏγή."
-#: LabelDialog.cpp:564
-#: Menus.cpp:2059
+#: LabelDialog.cpp:564 Menus.cpp:2059
msgid "Export Labels As:"
msgstr "ÎξαγÏγή ÎÏικεÏÏν ÏÏ:"
-#: LabelDialog.cpp:566
-#: Menus.cpp:2057
+#: LabelDialog.cpp:566 Menus.cpp:2057
msgid "labels.txt"
msgstr "εÏικÎÏεÏ.txt"
@@ -1499,10 +1456,7 @@ msgstr "ÎÎο Îανάλι ÎÏικÎÏαÏ"
msgid "Enter track name"
msgstr "ÎιÏαγÏγή ÏοÏ
ονÏμαÏÎ¿Ï ÏοÏ
καναλιοÏ"
-#: LabelDialog.cpp:701
-#: LabelDialog.h:52
-#: LabelTrack.cpp:88
-#: Menus.cpp:545
+#: LabelDialog.cpp:701 LabelDialog.h:52 LabelTrack.cpp:88 Menus.cpp:545
msgid "&Label Track"
msgstr "Îανάλι Î&ÏικÎÏαÏ"
@@ -1529,24 +1483,15 @@ msgstr "Îνοιγμα Audacity Project"
msgid "&File"
msgstr "&ÎÏÏείο"
-#: Menus.cpp:162
-msgid "&New\tCtrl+N"
-msgstr "&ÎÎο\tCtrl+N"
-
-#: Menus.cpp:164
-msgid "&Open...\tCtrl+O"
-msgstr "&Îνοιγμα...\tCtrl+O"
-
#: Menus.cpp:169
-msgid "&Close\tCtrl+W"
+msgid "&Close"
msgstr "&ÎλείÏιμο"
#: Menus.cpp:172
-msgid "&Save Project\tCtrl+S"
-msgstr "&ÎÏοθήκεÏ
Ïη ÎÏγαÏίαÏ\tCtrl+S"
+msgid "&Save Project"
+msgstr "&ÎÏοθήκεÏ
Ïη ÎÏγαÏίαÏ"
-#: Menus.cpp:176
-#: Project.cpp:2575
+#: Menus.cpp:176 Project.cpp:2575
msgid "Save Project &As..."
msgstr "&ÎÏοθήκεÏ
Ïη ÎÏγαÏÎ¯Î±Ï ÏÏ..."
@@ -1569,8 +1514,8 @@ msgid "&Import"
msgstr "ÎιÏαγÏγή"
#: Menus.cpp:192
-msgid "&Audio...\tCtrl+Shift+I"
-msgstr "&Audio...\tCtrl+Shift+I"
+msgid "&Audio..."
+msgstr "&Audio..."
#: Menus.cpp:193
msgid "&Labels..."
@@ -1584,8 +1529,7 @@ msgstr "&MIDI..."
msgid "&Raw Data..."
msgstr "ÎνεÏεξÎÏγαÏÏα &ÎεδομÎνα..."
-#: Menus.cpp:206
-#: Menus.cpp:235
+#: Menus.cpp:206 Menus.cpp:235
msgid "Expo&rt Selection..."
msgstr "ÎξαγÏγή &ÎÏιλογήÏ..."
@@ -1601,12 +1545,12 @@ msgstr "ÎξαγÏγή &ΠολλαÏλÏν..."
msgid "Export MIDI..."
msgstr ""
-#: Menus.cpp:290
-msgid "CleanSpeech C&hain..."
-msgstr ""
+#: Menus.cpp:256
+#, fuzzy
+msgid "Appl&y Chain..."
+msgstr "ÎλÏ
Ïίδα κλήÏεÏν"
-#: Menus.cpp:244
-#: Menus.cpp:258
+#: Menus.cpp:244 Menus.cpp:258
msgid "Edit C&hains..."
msgstr "ÎÏεξεÏγαÏία ÎλÏ
&ÏίδÏν..."
@@ -1618,11 +1562,6 @@ msgstr ""
msgid "I&mport CleanSpeech Presets..."
msgstr ""
-#: Menus.cpp:256
-#, fuzzy
-msgid "Appl&y Chain..."
-msgstr "ÎλÏ
Ïίδα κλήÏεÏν"
-
#: Menus.cpp:263
msgid "&Upload File..."
msgstr "&ÎνÎβαÏμα αÏÏείοÏ
..."
@@ -1636,78 +1575,75 @@ msgid "&Print..."
msgstr "&ÎκÏÏÏÏÏη..."
#: Menus.cpp:283
-msgid "E&xit\tCtrl+Q"
-msgstr "Î&ξοδοÏ\tCtrl+Q"
+msgid "E&xit"
+msgstr "Î&ξοδοÏ"
-#: Menus.cpp:291
-#: toolbars/EditToolBar.cpp:76
+#: Menus.cpp:291 toolbars/EditToolBar.cpp:76
msgid "&Edit"
msgstr "&ÎÏεξεÏγαÏία"
#: Menus.cpp:295
-msgid "&Undo\tCtrl+Z"
-msgstr "&ÎναίÏεÏη\tCtrl+Z"
+msgid "&Undo"
+msgstr "&ÎναίÏεÏη"
-#: Menus.cpp:303
-#: prefs/KeyConfigPrefs.cpp:369
-#: toolbars/EditToolBar.cpp:146
+#: Menus.cpp:303 prefs/KeyConfigPrefs.cpp:369 toolbars/EditToolBar.cpp:146
msgid "&Redo"
msgstr "&ÎÏαναÏοÏά"
#: Menus.cpp:316
-msgid "Cu&t\tCtrl+X"
-msgstr "Î&ÏοκοÏή\tCtrl+X"
+msgid "Cu&t"
+msgstr "Î&ÏοκοÏή"
#: Menus.cpp:320
-msgid "Spl&it Cut\tCtrl+Alt+X"
-msgstr "ÎιαÏÏÏιÏμÏÏ Î&ÏοκοÏή\tCtrl+Alt+X"
+msgid "Spl&it Cut"
+msgstr "ÎιαÏÏÏιÏμÏÏ Î&ÏοκοÏή"
#: Menus.cpp:321
-msgid "&Copy\tCtrl+C"
+msgid "&Copy"
msgstr "&ÎνÏιγÏαÏή"
#: Menus.cpp:325
-msgid "&Paste\tCtrl+V"
-msgstr "&ÎÏικÏλληÏη\tCtrl+V"
+msgid "&Paste"
+msgstr "&ÎÏικÏλληÏη"
#: Menus.cpp:329
-msgid "Tri&m\tCtrl+T"
-msgstr "Πε&ÏικοÏή\tCtrl+T"
+msgid "Tri&m"
+msgstr "Πε&ÏικοÏή"
#: Menus.cpp:331
-msgid "&Delete\tCtrl+K"
-msgstr "&ÎιαγÏαÏή\tCtrl+K"
+msgid "&Delete"
+msgstr "&ÎιαγÏαÏή"
#: Menus.cpp:332
-msgid "Split D&elete\tCtrl+Alt+K"
-msgstr "ÎιαÏÏÏιÏμÏÏ &ÎιαγÏαÏή\tCtrl+Alt+K"
+msgid "Split D&elete"
+msgstr "ÎιαÏÏÏιÏμÏÏ &ÎιαγÏαÏή"
#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
+msgid "Silence Audi&o"
msgstr ""
#: Menus.cpp:335
-msgid "Sp&lit\tCtrl+I"
-msgstr "&ÎιαÏÏÏιÏμÏÏ\tCtrl+I"
+msgid "Sp&lit"
+msgstr "&ÎιαÏÏÏιÏμÏÏ"
#: Menus.cpp:340
#, fuzzy
-msgid "Split Ne&w\tCtrl+Alt+I"
-msgstr "ÎιαÏÏÏιÏμÏÏ &ÎÎο\tCtrl+Alt+I"
+msgid "Split Ne&w"
+msgstr "ÎιαÏÏÏιÏμÏÏ &ÎÎο"
#: Menus.cpp:345
#, fuzzy
-msgid "&Join\tCtrl+J"
+msgid "&Join"
msgstr "&Îλα"
#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
+msgid "Detac&h at Silences"
msgstr ""
#: Menus.cpp:348
#, fuzzy
-msgid "Duplic&ate\tCtrl+D"
-msgstr "&ÎιÏαγÏγή Audio...\tCtrl+IÎ"
+msgid "Duplic&ate"
+msgstr "&ÎιÏαγÏγή Audio..."
#: Menus.cpp:400 Menus.cpp:639
msgid "Stereo Trac&k to Mono"
@@ -1719,83 +1655,67 @@ msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:363
-msgid "&Cut\tAlt+X"
-msgstr "&ÎÏοκοÏή\tAlt+X"
+msgid "&Cut"
+msgstr "&ÎÏοκοÏή"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:368
-msgid "&Split Cut\tShift+Alt+X"
-msgstr "&ÎιαÏÏÏιÏμÏÏ ÎÏοκοÏή\tShift+Alt+X"
+msgid "&Split Cut"
+msgstr "&ÎιαÏÏÏιÏμÏÏ ÎÏοκοÏή"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:373
-msgid "Co&py\tShift+Alt+C"
-msgstr "&ÎνÏιγÏαÏή\tShift+Alt+C"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:379
-msgid "&Delete\tAlt+K"
-msgstr "&ÎιαγÏαÏή\tAlt+K"
+msgid "Co&py"
+msgstr "&ÎνÏιγÏαÏή"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:384
-msgid "Sp&lit Delete\tShift+Alt+K"
-msgstr "Îια&ÏÏÏιÏμÏÏ ÎÏοκοÏή\tShift+Alt+K"
+msgid "Sp&lit Delete"
+msgstr "Îια&ÏÏÏιÏμÏÏ ÎÏοκοÏή"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:389
-msgid "Sile&nce\tAlt+L"
-msgstr "&Σιγή\tAlt+L"
+msgid "Sile&nce"
+msgstr "&Σιγή"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:395
-msgid "Spli&t\tAlt+I"
-msgstr "ÎιαÏÏ&ÏιÏμÏÏ\tAlt-F4"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:400
-#, fuzzy
-msgid "&Join\tAlt+J"
-msgstr "&ΣÏνδεÏη Ïε ÏομÎα"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
-msgstr ""
+msgid "Spli&t"
+msgstr "ÎιαÏÏ&ÏιÏμÏÏ"
#: Menus.cpp:456
msgid "&Select"
msgstr ""
#: Menus.cpp:412
-msgid "&All\tCtrl+A"
+msgid "&All"
msgstr "&Îλα"
#: Menus.cpp:413
-msgid "&None\tCtrl+Shift+A"
-msgstr "&NÎανÎνα\tCtrl+Shift+A"
+msgid "&None"
+msgstr "&NÎανÎνα"
#: Menus.cpp:462
#, fuzzy
-msgid "&Left at Playback Position\t["
-msgstr "ÎÏιÏÏεÏά ÏÎ·Ï ÎÎÏÎ·Ï ÎναÏαÏαγÏγήÏ\t["
+msgid "&Left at Playback Position"
+msgstr "ÎÏιÏÏεÏά ÏÎ·Ï ÎÎÏÎ·Ï ÎναÏαÏαγÏγήÏ"
#: Menus.cpp:463
#, fuzzy
-msgid "&Right at Playback Position\t]"
-msgstr "Îεξιά ÏÎ·Ï ÎÎÏÎ·Ï ÎναÏαÏαγÏγήÏ\t]"
+msgid "&Right at Playback Position"
+msgstr "Îεξιά ÏÎ·Ï ÎÎÏÎ·Ï ÎναÏαÏαγÏγήÏ"
#: Menus.cpp:467
-msgid "Track &Start to Cursor\tShift+J"
+msgid "Track &Start to Cursor"
msgstr ""
#: Menus.cpp:468
-msgid "Cursor to Track &End\tShift+K"
+msgid "Cursor to Track &End"
msgstr ""
#: Menus.cpp:429
-msgid "Find &Zero Crossings\tZ"
-msgstr "ÎνεÏÏεÏη &ÎηδενικÏν ÎιαÏÏαÏ
ÏÏÏεÏν\tZ"
+msgid "Find &Zero Crossings"
+msgstr "ÎνεÏÏεÏη &ÎηδενικÏν ÎιαÏÏαÏ
ÏÏÏεÏν"
#: Menus.cpp:476
msgid "Mo&ve Cursor"
@@ -1812,11 +1732,11 @@ msgid "to Selection En&d"
msgstr "ÏÏο ΤÎÎ»Î¿Ï ÏÎ·Ï ÎÏιλογήÏ"
#: Menus.cpp:483
-msgid "to Track &Start\tJ"
+msgid "to Track &Start"
msgstr ""
#: Menus.cpp:484
-msgid "to Track &End\tK"
+msgid "to Track &End"
msgstr ""
#: Menus.cpp:491
@@ -1839,29 +1759,8 @@ msgstr ""
msgid "&Unlock"
msgstr ""
-#: Menus.cpp:460
-msgid "Turn Snap-To On"
-msgstr "ÎνεÏγοÏοίηÏη ÏοÏ
Îλξη ΣÏο"
-
-#: Menus.cpp:461
-msgid "Turn Snap-To Off"
-msgstr "ÎÏενεÏγοÏοίηÏη ÏοÏ
Îλξη ΣÏο"
-
-#: Menus.cpp:462
-msgid "Turn Grid Snap On"
-msgstr "ÎνεÏγοÏοίηÏη ÎÎ»Î¾Î·Ï Î Î»ÎγμαÏοÏ"
-
-#: Menus.cpp:463
-msgid "Turn Grid Snap Off"
-msgstr "ÎÏενεÏγοÏοίηÏη ÎÎ»Î¾Î·Ï Î Î»ÎγμαÏοÏ"
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr ""
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
+msgid "Pre&ferences..."
msgstr ""
#: Menus.cpp:482
@@ -1869,36 +1768,36 @@ msgid "&View"
msgstr "&Î Ïοβολή"
#: Menus.cpp:484
-msgid "Zoom &In\tCtrl+1"
-msgstr "&ÎεγÎθÏ
νÏη\tCtrl+1"
+msgid "Zoom &In"
+msgstr "&ÎεγÎθÏ
νÏη"
#: Menus.cpp:487
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "Î Ïοβολή ÏÏο &ÎανονικÏ\tCtrl+2"
+msgid "Zoom &Normal"
+msgstr "Î Ïοβολή ÏÏο &ÎανονικÏ"
#: Menus.cpp:488
-msgid "Zoom &Out\tCtrl+3"
-msgstr "&ΣμίκÏÏ
νÏη\tCtrl+3"
+msgid "Zoom &Out"
+msgstr "&ΣμίκÏÏ
νÏη"
#: Menus.cpp:491
-msgid "&Fit in Window\tCtrl+F"
-msgstr "&Î ÏοÏαÏμογή ÏÏο ΠαÏάθÏ
Ïο\tCtrl+F"
+msgid "&Fit in Window"
+msgstr "&Î ÏοÏαÏμογή ÏÏο ΠαÏάθÏ
Ïο"
#: Menus.cpp:492
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "&ÎάθεÏη Î ÏοÏαÏμογή\tCtrl+Shift+F"
+msgid "Fit &Vertically"
+msgstr "&ÎάθεÏη Î ÏοÏαÏμογή"
#: Menus.cpp:493
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "&ÎεγÎθÏ
νÏη ÏÏην ÎÏιλογή\tCtrl+E"
+msgid "&Zoom to Selection"
+msgstr "&ÎεγÎθÏ
νÏη ÏÏην ÎÏιλογή"
#: Menus.cpp:496
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
-msgstr "&ΣÏμÏÏÏ
ξη ÎλÏν ΤÏν ÎαναλιÏν\tCtrl+Shift+C"
+msgid "&Collapse All Tracks"
+msgstr "&ΣÏμÏÏÏ
ξη ÎλÏν ΤÏν ÎαναλιÏν"
#: Menus.cpp:497
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
-msgstr "Î&ÏÎκÏαÏη ÎλÏν ΤÏν ÎαναλιÏν\tCtrl+Shift+X"
+msgid "E&xpand All Tracks"
+msgstr "Î&ÏÎκÏαÏη ÎλÏν ΤÏν ÎαναλιÏν"
#: Menus.cpp:551
#, fuzzy
@@ -1968,40 +1867,40 @@ msgstr ""
msgid "T&ransport"
msgstr ""
-#: Menus.cpp:591
-msgid "Play\tSpace"
-msgstr ""
+#: toolbars/ControlToolBar.cpp:177
+msgid "Play"
+msgstr "ÎναÏαÏαγÏγή"
#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
+msgid "&Loop Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Pause\tP"
+msgid "&Pause"
msgstr ""
#: Menus.cpp:596
-msgid "&Stop\tSpace"
+msgid "&Stop"
msgstr ""
#: Menus.cpp:773
-msgid "Skip to Start\tHome"
-msgstr "ÎεÏάβαÏη ÏÏην ÎÏÏή\tHome"
+msgid "Skip to Start"
+msgstr "ÎεÏάβαÏη ÏÏην ÎÏÏή"
#: Menus.cpp:774
-msgid "Skip to End\tEnd"
-msgstr "ÎεÏάβαÏη ÏÏο ΤÎλοÏ\tEnd"
+msgid "Skip to End"
+msgstr "ÎεÏάβαÏη ÏÏο ΤÎλοÏ"
#: Menus.cpp:600
-msgid "&Record\tR"
+msgid "&Record"
msgstr ""
#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
+msgid "&Timer Record..."
msgstr ""
#: Menus.cpp:604
-msgid "Append Record\tShift+R"
+msgid "Append Record"
msgstr ""
#: Menus.cpp:607
@@ -2029,15 +1928,14 @@ msgid "Add &New"
msgstr ""
#: Menus.cpp:543
-msgid "&Audio Track\tCtrl+Shift+N"
-msgstr "Îανάλι &Audio\tCtrl+Shift+N"
+msgid "&Audio Track"
+msgstr "Îανάλι &Audio"
#: Menus.cpp:544
msgid "&Stereo Track"
msgstr "Îανάλι &ΣÏÎÏεο"
-#: Menus.cpp:546
-#: TimeTrack.cpp:44
+#: Menus.cpp:546 TimeTrack.cpp:44
msgid "&Time Track"
msgstr "Îανάλι &ΧÏÏνοÏ
"
@@ -2046,7 +1944,7 @@ msgid "Mi&x and Render"
msgstr ""
#: Menus.cpp:564
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
+msgid "Mix and Render to New Track"
msgstr ""
#: Menus.cpp:562
@@ -2058,11 +1956,11 @@ msgid "Remo&ve Tracks"
msgstr "ÎÏο&μάκÏÏ
νÏη ÎαναλιÏν"
#: Menus.cpp:667
-msgid "&Mute All Tracks\tCtrl+U"
+msgid "&Mute All Tracks"
msgstr ""
#: Menus.cpp:668
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
+msgid "&UnMute All Tracks"
msgstr ""
#: Menus.cpp:579
@@ -2113,17 +2011,17 @@ msgstr ""
msgid "Synchronize MIDI with Audio"
msgstr ""
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
+#: Menus.cpp:686
+msgid "&Link Audio and Label Tracks"
msgstr ""
-#: Menus.cpp:605
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "Î ÏοÏθήκη ÎÏικÎÏÎ±Ï ÏÏην &ÎÏιλογή\tCtrl+B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr ""
#: Menus.cpp:606
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "Î ÏοÏθήκη ÎÏικÎÏÎ±Ï ÏÏην &ÎÎÏη ÎναÏαÏαγÏγήÏ\tCtrl+Î"
+msgid "Add Label At &Playback Position"
+msgstr "Î ÏοÏθήκη ÎÏικÎÏÎ±Ï ÏÏην &ÎÎÏη ÎναÏαÏαγÏγήÏ"
#: Menus.cpp:716
msgid "S&ort tracks"
@@ -2149,21 +2047,20 @@ msgstr ""
msgid "Effe&ct"
msgstr "Î&ÏÎ"
-#: Menus.cpp:652
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "ÎÏανάληÏη ΤελεÏ
ÏαίοÏ
ÎÏÎ\tCtrl+R"
-
#: Menus.cpp:684
msgid "&Analyze"
msgstr "Îνά&λÏ
Ïη"
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
+
#: Menus.cpp:686
#, fuzzy
msgid "Plot Spectrum..."
msgstr "ÎνάλÏ
Ïη &ΣÏ
ÏνÏÏηÏαÏ..."
-#: Menus.cpp:719
-#: Menus.cpp:722
+#: Menus.cpp:719 Menus.cpp:722
msgid "&Help"
msgstr "&Îοήθεια"
@@ -2176,8 +2073,8 @@ msgstr "ÎÏαμμή ÎÏγαλείÏν ÎλÎγÏοÏ
ÏοÏ
Audacity"
msgid "&Show Welcome Message..."
msgstr ""
-#: Menus.cpp:736
-msgid "&Index..."
+#: Menus.cpp:958
+msgid "&Help..."
msgstr ""
#: Menus.cpp:959
@@ -2196,183 +2093,151 @@ msgstr "&ÎκÏÎλεÏη ÏοÏ
ΤεÏÏ ÎÏÏδοÏηÏ..."
msgid "&Audio Device Info..."
msgstr ""
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
msgstr ""
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
msgstr ""
#: Menus.cpp:750
-msgid "Selection Tool\tF1"
-msgstr "ÎÏγαλείο ÎÏιλογήÏ\tF1"
+msgid "Selection Tool"
+msgstr "ÎÏγαλείο ÎÏιλογήÏ"
#: Menus.cpp:751
-msgid "Envelope Tool\tF2"
-msgstr "ÎÏγαλείο ΠοÏÎµÎ¯Î±Ï ÎνÏαÏηÏ\tF2"
+msgid "Envelope Tool"
+msgstr "ÎÏγαλείο ΠοÏÎµÎ¯Î±Ï ÎνÏαÏηÏ"
#: Menus.cpp:752
-msgid "Draw Tool\tF3"
-msgstr "ÎÏγαλείο ΣÏεδίαÏηÏ\tF3"
+msgid "Draw Tool"
+msgstr "ÎÏγαλείο ΣÏεδίαÏηÏ"
#: Menus.cpp:753
-msgid "Zoom Tool\tF4"
-msgstr "ÎÏγαλείο Î ÏοβολήÏ\tF4"
+msgid "Zoom Tool"
+msgstr "ÎÏγαλείο Î ÏοβολήÏ"
#: Menus.cpp:754
-msgid "Time Shift Tool\tF5"
-msgstr "ÎÏγαλείο ΧÏÎ¿Î½Î¹ÎºÎ®Ï ÎεÏαÏÏÏιÏηÏ\tF5"
+msgid "Time Shift Tool"
+msgstr "ÎÏγαλείο ΧÏÎ¿Î½Î¹ÎºÎ®Ï ÎεÏαÏÏÏιÏηÏ"
#: Menus.cpp:755
-msgid "Multi Tool\tF6"
-msgstr "ΠολÏ
εÏγαλείο\tF6"
+msgid "Multi Tool"
+msgstr "ΠολÏ
εÏγαλείο"
#: Menus.cpp:757
-msgid "Next Tool\tD"
-msgstr "ÎÏÏμενο ÎÏγαλείο\tD"
+msgid "Next Tool"
+msgstr "ÎÏÏμενο ÎÏγαλείο"
#: Menus.cpp:758
-msgid "Previous Tool\tA"
-msgstr "Î ÏοηγοÏμενο ÎÏγαλείο\tA"
+msgid "Previous Tool"
+msgstr "Î ÏοηγοÏμενο ÎÏγαλείο"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
-msgstr ""
-
-#: Menus.cpp:761
-msgid "Stop\tS"
-msgstr "ÎιακοÏή\tS"
-
-#: Menus.cpp:762
-msgid "Pause\tP"
-msgstr "ΠαÏÏη\tP"
-
-#: Menus.cpp:763
-msgid "Record\tR"
-msgstr "ÎÏογÏάÏηÏη\tR"
-
-#: Menus.cpp:999
-msgid "Record Append\tShift+R"
+msgid "Play/Stop"
msgstr ""
#: Menus.cpp:1001
-msgid "Play/Stop and Set Cursor\tShift+A"
+msgid "Play/Stop and Set Cursor"
msgstr ""
#: Menus.cpp:767
-msgid "Play One Second\t1"
-msgstr "ÎναÏαÏαγÏγή Îνα ÎεÏ
ÏεÏÏλεÏÏο\t1"
+msgid "Play One Second"
+msgstr "ÎναÏαÏαγÏγή Îνα ÎεÏ
ÏεÏÏλεÏÏο"
#: Menus.cpp:768
-msgid "Play To Selection\tB"
-msgstr "ÎναÏαÏαγÏγή ÏÏην ÎÏιλογή\tB"
-
-#: Menus.cpp:769
-msgid "Play Looped\tL"
-msgstr "ÎÏαναλαμβανÏμενη ÎναÏαÏαγÏγή\tL"
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
+msgid "Play To Selection"
+msgstr "ÎναÏαÏαγÏγή ÏÏην ÎÏιλογή"
#: Menus.cpp:771
-msgid "Play Cut Preview\tC"
+msgid "Play Cut Preview"
msgstr ""
#: Menus.cpp:776
-msgid "Selection to Start\tShift+Home"
-msgstr "ÎÏιλογή ÏÏην ÎÏÏή\tShift+Home"
+msgid "Selection to Start"
+msgstr "ÎÏιλογή ÏÏην ÎÏÏή"
#: Menus.cpp:777
-msgid "Selection to End\tShift+End"
-msgstr "ÎÏιλογή ÏÏο ΤÎλοÏ\tShift+End"
+msgid "Selection to End"
+msgstr "ÎÏιλογή ÏÏο ΤÎλοÏ"
#: Menus.cpp:779
-msgid "DeleteKey\tBackspace"
-msgstr "ΠλήκÏÏοÎιαγÏαÏήÏ\tBackSpace"
+msgid "DeleteKey"
+msgstr "ΠλήκÏÏοÎιαγÏαÏήÏ"
#: Menus.cpp:784
-msgid "DeleteKey2\tDelete"
-msgstr "ΠλήκÏÏοÎιαγÏαÏήÏ2\tDelete"
+msgid "DeleteKey2"
+msgstr "ΠλήκÏÏοÎιαγÏαÏήÏ2"
-#: Menus.cpp:790
-msgid "Seek left short period during playback\tLeft"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
msgstr ""
-#: Menus.cpp:791
-msgid "Seek right short period during playback\tRight"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
msgstr ""
-#: Menus.cpp:792
-msgid "Seek left long period during playback\tShift+Left"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
msgstr ""
-#: Menus.cpp:793
-msgid "Seek right long period during playback\tShift+Right"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
msgstr ""
#: Menus.cpp:797
-msgid "Move Focus to Previous Track\tUp"
+msgid "Move Focus to Previous Track"
msgstr ""
-#: Menus.cpp:798
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
msgstr ""
#: Menus.cpp:799
-msgid "Move Focus to Next Track\tDown"
+msgid "Move Focus to Next Track"
msgstr ""
-#: Menus.cpp:800
-msgid "Move Focus to Next and Change Selection\tShift+Down"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
msgstr ""
#: Menus.cpp:801
#, fuzzy
-msgid "Toggle Focused Track\tReturn"
+msgid "Toggle Focused Track"
msgstr "Îναλλαγή &καÏάÏÏαÏÎ·Ï Î±Î½Î±Î¼Î¿Î½Î®Ï (1 κομμάÏι)\n"
"Îναλλαγή &καÏάÏÏαÏÎ·Ï Î±Î½Î±Î¼Î¿Î½Î®Ï (%n κομμάÏια)"
-#: Menus.cpp:802
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr ""
-
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
-msgstr ""
-
#: Menus.cpp:805
-msgid "Cursor Left\tLeft"
-msgstr "ÎÏομÎÎ±Ï ÎÏιÏÏεÏά\tÎÏιÏÏεÏά"
+msgid "Cursor Left"
+msgstr "ÎÏομÎÎ±Ï ÎÏιÏÏεÏά"
#: Menus.cpp:806
-msgid "Cursor Right\tRight"
-msgstr "ÎÏομÎÎ±Ï Îεξιά\tÎεξιά"
+msgid "Cursor Right"
+msgstr "ÎÏομÎÎ±Ï Îεξιά"
#: Menus.cpp:820
-msgid "Cursor Short Jump Left\t,"
+msgid "Cursor Short Jump Left"
msgstr ""
#: Menus.cpp:821
-msgid "Cursor Short Jump Right\t."
+msgid "Cursor Short Jump Right"
msgstr ""
#: Menus.cpp:822
-msgid "Cursor Long Jump Left\tShift+,"
+msgid "Cursor Long Jump Left"
msgstr ""
#: Menus.cpp:823
-msgid "Cursor Long Jump Right\tShift+."
+msgid "Cursor Long Jump Right"
msgstr ""
#: Menus.cpp:807
-msgid "Selection Extend Left\tShift+Left"
-msgstr "ÎÏιλογή ÎÏÎκÏαÏÎ·Ï ÎÏιÏÏεÏά\tShift+ÎÏιÏÏεÏÏ"
+msgid "Selection Extend Left"
+msgstr "ÎÏιλογή ÎÏÎκÏαÏÎ·Ï ÎÏιÏÏεÏά"
#: Menus.cpp:808
-msgid "Selection Extend Right\tShift+Right"
-msgstr "ÎÏιλογή ÎÏÎκÏαÏÎ·Ï Îεξιά\tShift+Îεξί"
+msgid "Selection Extend Right"
+msgstr "ÎÏιλογή ÎÏÎκÏαÏÎ·Ï Îεξιά"
#: Menus.cpp:828
msgid "Set (or Extend) Left Selection"
@@ -2383,51 +2248,51 @@ msgid "Set (or Extend) Right Selection"
msgstr ""
#: Menus.cpp:810
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "ÎÏιλογή ΣÏμβαÏÎ·Ï ÎÏιÏÏεÏά\tCtrl+Shift+Îεξί"
+msgid "Selection Contract Left"
+msgstr "ÎÏιλογή ΣÏμβαÏÎ·Ï ÎÏιÏÏεÏά"
#: Menus.cpp:811
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "ÎÏιλογή ΣÏμβαÏÎ·Ï Îεξιά\tCtrl+Shift+ÎÏιÏÏεÏÏ"
+msgid "Selection Contract Right"
+msgstr "ÎÏιλογή ΣÏμβαÏÎ·Ï Îεξιά"
#: Menus.cpp:813
-msgid "Change pan on focused track\tShift+P"
+msgid "Change pan on focused track"
msgstr ""
#: Menus.cpp:814
-msgid "Pan left on focused track\tAlt+Shift+Left"
+msgid "Pan left on focused track"
msgstr ""
#: Menus.cpp:815
-msgid "Pan right on focused track\tAlt+Shift+Right"
+msgid "Pan right on focused track"
msgstr ""
#: Menus.cpp:816
-msgid "Change gain on focused track\tShift+G"
+msgid "Change gain on focused track"
msgstr ""
#: Menus.cpp:817
-msgid "Increase gain on focused track\tAlt+Shift+Up"
+msgid "Increase gain on focused track"
msgstr ""
#: Menus.cpp:818
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
+msgid "Decrease gain on focused track"
msgstr ""
#: Menus.cpp:819
-msgid "Open menu on focused track\tShift+M"
+msgid "Open menu on focused track"
msgstr ""
#: Menus.cpp:820
-msgid "Mute/Unmute focused track\tShift+U"
+msgid "Mute/Unmute focused track"
msgstr ""
#: Menus.cpp:821
-msgid "Solo/Unsolo focused track\tShift+S"
+msgid "Solo/Unsolo focused track"
msgstr ""
#: Menus.cpp:822
-msgid "Close focused track\tShift+C"
+msgid "Close focused track"
msgstr ""
#: Menus.cpp:824
@@ -2439,7 +2304,35 @@ msgid "Snap To Off"
msgstr "ÎÏενεÏγοÏοιημÎνη Îλξη ΣÏο"
#: Menus.cpp:1071
-msgid "Full screen on/off\tF11"
+msgid "Full screen on/off"
+msgstr ""
+
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr ""
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr ""
+
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr ""
+
+#: Menus.cpp:1074
+msgid "Adjust input source"
msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
@@ -2500,8 +2393,8 @@ msgstr "Î ÏÎÏει να εÏιλÎÎ¾ÎµÎ¹Ï Îνα κανάλι ÏÏÏÏα."
#: Menus.cpp:1922
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "ÎÏανάληÏη %s\t Ctrl+R"
+msgid "Repeat %s"
+msgstr "ÎÏανάληÏη %s"
#: Menus.cpp:2053
msgid "There are no label tracks to export."
@@ -2532,9 +2425,7 @@ msgstr "ΤίÏοÏα για ÎναίÏεÏη"
msgid "Nothing to redo"
msgstr "ΤίÏοÏα για ÎÏαναÏοÏά"
-#: Menus.cpp:2253
-#: TrackPanel.cpp:546
-#: toolbars/EditToolBar.cpp:133
+#: Menus.cpp:2253 TrackPanel.cpp:546 toolbars/EditToolBar.cpp:133
msgid "Cut"
msgstr "ÎÏοκοÏή"
@@ -2550,10 +2441,7 @@ msgstr "ÎιαÏÏÏιÏμÏÏ ÎÏοκοÏή"
msgid "Split-cut to the clipboard"
msgstr "ÎιαÏÏÏιÏμÏÏ ÎÏοκοÏή και ÎνÏιγÏαÏή ÏÏο ÏÏÏÏειÏο"
-#: Menus.cpp:2356
-#: Menus.cpp:2427
-#: Menus.cpp:2521
-#: TrackPanel.cpp:548
+#: Menus.cpp:2356 Menus.cpp:2427 Menus.cpp:2521 TrackPanel.cpp:548
#: toolbars/EditToolBar.cpp:137
msgid "Paste"
msgstr "ÎÏικÏλληÏη"
@@ -2562,8 +2450,7 @@ msgstr "ÎÏικÏλληÏη"
msgid "Pasted text from the clipboard"
msgstr "ÎÏικολλημÎνο κείμενο αÏÏ Ïο ÏÏÏÏειÏο"
-#: Menus.cpp:2427
-#: Menus.cpp:2521
+#: Menus.cpp:2427 Menus.cpp:2521
msgid "Pasted from the clipboard"
msgstr "ÎÏικÏλληÏη αÏÏ Ïο Î ÏÏÏειÏο"
@@ -2575,8 +2462,7 @@ msgstr ""
msgid "Copying stereo audio into a mono track is not allowed."
msgstr "Îεν είναι δÏ
ναÏή η ανÏιγÏαÏή αÏÏ ÏÏÎÏεο Ïε Î¼Î¿Î½Ï ÎºÎ±Î½Î¬Î»Î¹."
-#: Menus.cpp:2557
-#: toolbars/EditToolBar.cpp:139
+#: Menus.cpp:2557 toolbars/EditToolBar.cpp:139
msgid "Trim"
msgstr "ΠεÏικοÏή"
@@ -2616,8 +2502,7 @@ msgstr "ΣÏνδεÏη"
msgid "Silenced selected tracks for %.2f seconds at %.2f"
msgstr "Îανάλια ÏοÏ
ÎÏει εÏαÏμοÏÏεί Ïιγή για %.2f δεÏ
Ï. Ïε %.2f"
-#: Menus.cpp:2658
-#: toolbars/EditToolBar.cpp:141
+#: Menus.cpp:2658 toolbars/EditToolBar.cpp:141
msgid "Silence"
msgstr "Σιγή"
@@ -2708,8 +2593,7 @@ msgstr "ΤονιÏμÎÎ½ÎµÏ ÎµÏι&κÎÏεÏ"
msgid "Disjoined labeled regions"
msgstr "Îεμίζει ÏεÏιοÏÎÏ ÏÏην εικÏνα"
-#: Menus.cpp:2834
-#: TrackPanel.cpp:5670
+#: Menus.cpp:2834 TrackPanel.cpp:5670
msgid "Split"
msgstr "ÎιαίÏεÏη"
@@ -2725,15 +2609,6 @@ msgstr "ÎιαÏÏÏιÏμÏÏ Ïε νÎο κανάλι"
msgid "Split at labels"
msgstr "ÎιαίÏεÏη ÏÏÎ¹Ï ÎµÏικÎÏεÏ"
-#: Menus.cpp:3311
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "Îια να γίνει ανάλÏ
Ïη ÏÏ
ÏνÏÏηÏαÏ, Ïλα Ïα εÏιλεγμÎνα κανάλια ÏÏÎÏει να ÎÏοÏ
ν Ïον ίδιο ÏÏ
Î¸Î¼Ï Î´ÎµÎ¹Î³Î¼Î±ÏοληÏίαÏ."
-
-#: Menus.cpp:3337
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "Î¥ÏεÏβάλλον audio ÎÏει εÏιλεγεί. ÎÏνο Ïα ÏÏÏÏα %.1f δεÏ
Ï. ÏοÏ
audio θα αναλÏ
θοÏν."
-
#: Menus.cpp:3463
#, c-format
msgid "Imported labels from '%s'"
@@ -2800,9 +2675,7 @@ msgstr ""
msgid "Mixed and rendered %d tracks into one new mono track"
msgstr ""
-#: Menus.cpp:558
-#: Menus.cpp:3611
-#: Mix.cpp:120
+#: Menus.cpp:558 Menus.cpp:3611 Mix.cpp:120
#, fuzzy
msgid "&Mix and Render"
msgstr "&Îίξη και"
@@ -2855,10 +2728,7 @@ msgstr ""
msgid "Created new audio track"
msgstr "ÎημιοÏ
Ïγία νÎοÏ
audio καναλιοÏ"
-#: Menus.cpp:3815
-#: Menus.cpp:3838
-#: Menus.cpp:3853
-#: Menus.cpp:3873
+#: Menus.cpp:3815 Menus.cpp:3838 Menus.cpp:3853 Menus.cpp:3873
msgid "New Track"
msgstr "ÎÎο Îανάλι"
@@ -2895,8 +2765,7 @@ msgstr "ÎÏοθήκεÏ
Ïη ÏελεÏ
ÏαίοÏ
αÏÏείοÏ
wave ÏÏ"
msgid "CleanSpeech Presets (*.csp)|*.csp"
msgstr ""
-#: Menus.cpp:3988
-#: export/Export.cpp:509
+#: Menus.cpp:3988 export/Export.cpp:509
msgid "Sorry, pathnames longer than 256 characters not supported."
msgstr "ÎÏ
Ïάμαι, δεν Ï
ÏοÏÏηÏίζονÏαι ονÏμαÏα διαδÏÎ¿Î¼Î®Ï Î¼Îµ ÏεÏιÏÏÏÏεÏοÏ
Ï Î±ÏÏ 256 ÏαÏακÏήÏεÏ."
@@ -2904,8 +2773,7 @@ msgstr "ÎÏ
Ïάμαι, δεν Ï
ÏοÏÏηÏίζονÏαι ονÏμαÏα δι
msgid "Problem encountered exporting presets."
msgstr ""
-#: Menus.cpp:4035
-#: export/Export.cpp:402
+#: Menus.cpp:4035 export/Export.cpp:402
msgid "Unable to export"
msgstr "ÎδÏναÏη η εξαγÏγή"
@@ -2917,9 +2785,7 @@ msgstr "ÎÏομάκÏÏ
νÏη ÎαναλιÏν"
msgid "Removed audio track(s)"
msgstr "ÎÏομακÏÏ
ÏμÎνα audio κανάλια"
-#: Menus.cpp:4326
-#: Menus.cpp:4345
-#: export/ExportMP3.cpp:1871
+#: Menus.cpp:4326 Menus.cpp:4345 export/ExportMP3.cpp:1871
msgid "Resample"
msgstr ""
@@ -2945,8 +2811,7 @@ msgstr ""
msgid "Resampled audio track(s)"
msgstr "ÎδιÏÏηÏÎµÏ ÎºÎ¿Î¼Î¼Î±ÏÎ¹Î¿Ï Î®ÏοÏ
"
-#: Mix.cpp:94
-#: Mix.cpp:101
+#: Mix.cpp:94 Mix.cpp:101
msgid "Mix"
msgstr "Îίξη"
@@ -2968,6 +2833,10 @@ msgstr "ΠαÏοÏ
ÏιάÏÏηκε κάÏοιο ÏÏÏβλημα καÏά Ïην
msgid "Print"
msgstr "ÎκÏÏÏÏÏη"
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr ""
+
#: Project.cpp:635
msgid "Main Mix"
msgstr "ÎÏÏια Îείξη"
@@ -2981,14 +2850,11 @@ msgstr "ÎαλÏÏ Î®Î»Î¸Î±Ïε ÏÏην ÎκδοÏη %s ÏοÏ
Audacity"
msgid "(Recovered)"
msgstr "(ÎνακÏημÎνο)"
-#: Project.cpp:1435
-#: TrackPanel.cpp:772
-#: toolbars/ControlToolBar.cpp:191
+#: Menus.cpp:763
msgid "Record"
msgstr "ÎÏογÏάÏηÏη"
-#: Project.cpp:1435
-#: TrackPanel.cpp:772
+#: Project.cpp:1435 TrackPanel.cpp:772
msgid "Recorded Audio"
msgstr "ÎÏογÏαÏημÎνο Audio"
@@ -3009,9 +2875,9 @@ msgstr ""
msgid "Save changes?"
msgstr "ÎÏοθήκεÏ
Ïη ÏÏν αλλαγÏν;"
-#: Project.cpp:1647
-msgid "All files|*.*|All supported files|"
-msgstr "Îλα Ïα αÏÏεία|*.*|Îλα Ïα Ï
ÏοÏÏηÏιζÏμενα αÏÏεία|"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
+msgstr ""
#: Project.cpp:1672
msgid "Select one or more audio files..."
@@ -3040,8 +2906,18 @@ msgstr ""
msgid "Opening old project file"
msgstr "Îνοιγμα ÏÎ±Î»Î¹Î¿Ï Î±ÏÏείοÏ
εÏγαÏίαÏ"
-#: Project.cpp:1764
-#: Project.cpp:1772
+#: Project.cpp:2073
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr ""
+
+#: Project.cpp:1764 Project.cpp:1772
msgid "Error opening file"
msgstr "ΣÏάλμα καÏά Ïο άνοιγμα ÏοÏ
αÏÏείοÏ
"
@@ -3076,8 +2952,7 @@ msgstr "ÎνάκÏηÏη"
msgid "Project checker repaired file"
msgstr "ΠελεγκÏÎ®Ï ÎµÏγαÏÎ¯Î±Ï ÎµÏιδιÏÏθÏÏε Ïο αÏÏείο"
-#: Project.cpp:1930
-#: effects/Repair.h:29
+#: Project.cpp:1930 effects/Repair.h:29
msgid "Repair"
msgstr "ÎÏιÏκεÏ
ή"
@@ -3099,10 +2974,12 @@ msgstr "ÎÏ
ÏÏ Ïο αÏÏείο αÏοθηκεÏÏηκε ÏÏηÏιμοÏοι
msgid "Can't open project file"
msgstr "ÎδÏναÏο Ïο άνοιγμα ÏοÏ
αÏÏείοÏ
εÏγαÏίαÏ."
-#: Project.cpp:2314
+#: Project.cpp:2484
#, c-format
msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
msgstr ""
@@ -3122,17 +2999,22 @@ msgstr ""
msgid "Warning empty project"
msgstr ""
-#: Project.cpp:2591
+#: Project.cpp:2792
#, c-format
msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+"is not writable or the disk is full."
msgstr ""
-#: Project.cpp:2318
-#: Project.cpp:2332
+#: Project.cpp:2318 Project.cpp:2332
msgid "Error saving project"
msgstr "ΣÏάλμα ÏÏην αÏοθήκεÏ
Ïη ÏÎ·Ï ÎµÏγαÏίαÏ"
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
#: Project.cpp:2394
#, c-format
msgid "Saved %s"
@@ -3143,16 +3025,12 @@ msgstr "ÎÏοθηκεÏ
μÎνο %s"
msgid "Imported '%s'"
msgstr "ÎιÏαγÏμενα '%s'"
-#: Menus.cpp:3528
-#: Project.cpp:2477
-#: Project.cpp:2502
-#: import/ImportPCM.cpp:440
+#: Menus.cpp:3528 Project.cpp:2477 Project.cpp:2502 import/ImportPCM.cpp:440
#: import/ImportPCM.cpp:484
msgid "Import"
msgstr "ÎιÏαγÏγή"
-#: Project.cpp:2529
-#: Project.cpp:2532
+#: Project.cpp:2529 Project.cpp:2532
msgid "Error importing"
msgstr "ΣÏάλμα ÏÏην ειÏαγÏγή"
@@ -3196,8 +3074,7 @@ msgstr "ÎημιοÏ
Ïγία νÎÎ±Ï ÎµÏγαÏίαÏ"
msgid "Deleted %.2f seconds at t=%.2f"
msgstr "ÎιαγÏαμμÎνο %.2f δεÏ
Ï. Ïε t=%.2f"
-#: Project.cpp:2746
-#: effects/Equalization.cpp:1239
+#: Project.cpp:2746 effects/Equalization.cpp:1239
#: effects/Equalization.cpp:2494
msgid "Delete"
msgstr "ÎιαγÏαÏή"
@@ -3278,8 +3155,7 @@ msgstr "Libsamplerate αÏÏ Ïον Erik de Castro Lopo"
msgid "Libsamplerate error: %d\n"
msgstr "Libsamplerate ÏÏάλμα: %d\n"
-#: Resample.cpp:240
-#: Resample.cpp:250
+#: Resample.cpp:240 Resample.cpp:250
msgid "Resampling disabled."
msgstr "ÎÏαναδειγμαÏοληÏία αÏενεÏγοÏοιημÎνη."
@@ -3298,6 +3174,164 @@ msgstr "24-bit PCM"
msgid "32-bit float"
msgstr "32-bit float"
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
+
+#: export/ExportMultiple.cpp:204 prefs/DirectoriesPrefs.cpp:92
+msgid "Choose..."
+msgstr "ÎÏιλογή..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
+
+#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
+msgid "false"
+msgstr ""
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr "ÎÏγαλεία"
+
+#: toolbars/ControlToolBar.cpp:82
+#, fuzzy
+msgid "Control"
+msgstr "Control"
+
+#: toolbars/MixerToolBar.cpp:58
+msgid "Mixer"
+msgstr "ÎείκÏηÏ"
+
+#: toolbars/MeterToolBar.cpp:50
+msgid "Meter"
+msgstr "ÎεÏÏηÏήÏ"
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
+#: toolbars/DeviceToolBar.cpp:54
+msgid "Device"
+msgstr "ΣÏ
ÏκεÏ
ή"
+
+#: toolbars/TranscriptionToolBar.cpp:82
+msgid "Transcription"
+msgstr "ÎÏγαλεία διαÏκεÏ
ήÏ"
+
+#: TrackPanel.cpp:448 TrackPanel.cpp:449
+msgid "Track Panel"
+msgstr "Î Î¯Î½Î±ÎºÎ±Ï ÎλÎγÏοÏ
ÎαναλιοÏ"
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: export/ExportMultiple.cpp:246
+msgid "Tracks"
+msgstr "Îανάλια"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
#: Screenshot.cpp:384
msgid "Saved "
msgstr "ÎÏοθηκεÏÏηκε"
@@ -3306,14 +3340,15 @@ msgstr "ÎÏοθηκεÏÏηκε"
msgid "Error trying to save file: "
msgstr "ΣÏάλμα καÏά Ïην αÏοθήκεÏ
Ïη ÏοÏ
αÏÏείοÏ
:"
-#: Sequence.cpp:732
-#: Sequence.cpp:742
-#: Sequence.cpp:749
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
+#: Sequence.cpp:732 Sequence.cpp:742 Sequence.cpp:749
msgid "Gap detected in project file\n"
msgstr "ÎνιÏνεÏθηκε ÎºÎµÎ½Ï ÏÏο αÏÏείο εÏγαÏίαÏ\n"
-#: ShuttleGui.cpp:1852
-#: effects/Effect.cpp:255
+#: ShuttleGui.cpp:1852 effects/Effect.cpp:255
#: effects/audiounits/AudioUnitEffect.cpp:872
msgid "Pre&view"
msgstr "&Î ÏοεÏιÏκÏÏηÏη"
@@ -3357,8 +3392,7 @@ msgstr "ΤίÏλοÏ"
msgid "Track Number"
msgstr "ÎÏιθμÏÏ ÎºÎ±Î½Î±Î»Î¹Î¿Ï"
-#: Tags.cpp:625
-#: Tags.cpp:2105
+#: Tags.cpp:625 Tags.cpp:2105
msgid "Year"
msgstr "ÎÏοÏ"
@@ -3366,9 +3400,7 @@ msgstr "ÎÏοÏ"
msgid "Genre"
msgstr "ÎίδοÏ"
-#: Tags.cpp:627
-#: Tags.cpp:2115
-#: prefs/MousePrefs.cpp:96
+#: Tags.cpp:627 Tags.cpp:2115 prefs/MousePrefs.cpp:96
msgid "Comments"
msgstr "ΣÏÏλια"
@@ -3385,9 +3417,7 @@ msgstr "Îνομα ÎαναλιοÏ"
msgid "Tag Value"
msgstr ""
-#: Tags.cpp:785
-#: Tags.cpp:1443
-#: prefs/KeyConfigPrefs.cpp:116
+#: Tags.cpp:785 Tags.cpp:1443 prefs/KeyConfigPrefs.cpp:116
msgid "&Clear"
msgstr "&ÎαθαÏιÏμÏÏ"
@@ -3404,23 +3434,15 @@ msgstr ""
msgid "Rese&t..."
msgstr ""
-#: Tags.cpp:801
-#: Tags.cpp:1427
-#: Tags.cpp:1955
+#: Tags.cpp:801 Tags.cpp:1427 Tags.cpp:1955
msgid "Template"
msgstr "Î ÏÏÏÏ
Ïο"
-#: Tags.cpp:805
-#: Tags.cpp:1431
-#: Tags.cpp:1959
-#: prefs/KeyConfigPrefs.cpp:126
+#: Tags.cpp:805 Tags.cpp:1431 Tags.cpp:1959 prefs/KeyConfigPrefs.cpp:126
msgid "&Load..."
msgstr "&ΦÏÏÏÏÏη..."
-#: Tags.cpp:806
-#: Tags.cpp:1432
-#: Tags.cpp:1960
-#: prefs/KeyConfigPrefs.cpp:125
+#: Tags.cpp:806 Tags.cpp:1432 Tags.cpp:1960 prefs/KeyConfigPrefs.cpp:125
msgid "&Save..."
msgstr "ÎÏο&θήκεÏ
Ïη..."
@@ -3429,49 +3451,30 @@ msgstr "ÎÏο&θήκεÏ
Ïη..."
msgid "S&et Default"
msgstr "Î&ÏιÏμÏÏ ÏÏοκαθοÏιÏμÎνοÏ
"
-#: Tags.cpp:958
-#: Tags.cpp:1597
-#: Tags.cpp:2326
+#: Tags.cpp:958 Tags.cpp:1597 Tags.cpp:2326
#, fuzzy
msgid "Edit Genres"
msgstr "ÎÏεξεÏγαÏία εÏγαÏίαÏ"
-#: Tags.cpp:991
-#: Tags.cpp:1003
-#: Tags.cpp:1019
-#: Tags.cpp:1032
-#: Tags.cpp:1635
-#: Tags.cpp:1647
-#: Tags.cpp:1663
-#: Tags.cpp:1676
-#: Tags.cpp:2369
-#: Tags.cpp:2381
-#: Tags.cpp:2397
-#: Tags.cpp:2410
+#: Tags.cpp:991 Tags.cpp:1003 Tags.cpp:1019 Tags.cpp:1032 Tags.cpp:1635
+#: Tags.cpp:1647 Tags.cpp:1663 Tags.cpp:1676 Tags.cpp:2369 Tags.cpp:2381
+#: Tags.cpp:2397 Tags.cpp:2410
#, fuzzy
msgid "Reset Genres"
msgstr "ÎÏαναÏοÏά ÎÏαμμÏν ÎÏγαλείÏν"
-#: Tags.cpp:991
-#: Tags.cpp:1032
-#: Tags.cpp:1635
-#: Tags.cpp:1676
-#: Tags.cpp:2369
+#: Tags.cpp:991 Tags.cpp:1032 Tags.cpp:1635 Tags.cpp:1676 Tags.cpp:2369
#: Tags.cpp:2410
#, fuzzy
msgid "Unable to save genre file."
msgstr "ÎδÏναÏο Ïο άνοιγμα/δημιοÏ
Ïγία δοκιμαÏÏÎ¹ÎºÎ¿Ï Î±ÏÏείοÏ
"
-#: Tags.cpp:1002
-#: Tags.cpp:1646
-#: Tags.cpp:2380
+#: Tags.cpp:1002 Tags.cpp:1646 Tags.cpp:2380
#, fuzzy
msgid "Are you sure you want to reset the genre list to defaults?"
msgstr "ÎίÏαι ÏίγοÏ
ÏÎ¿Ï ÏÏι θÎÎ»ÎµÎ¹Ï Î½Î± αÏοθηκεÏÏÎµÎ¹Ï Ïο αÏÏείο ÏÏ \""
-#: Tags.cpp:1019
-#: Tags.cpp:1663
-#: Tags.cpp:2397
+#: Tags.cpp:1019 Tags.cpp:1663 Tags.cpp:2397
#, fuzzy
msgid "Unable to open genre file."
msgstr "ÎδÏναÏο Ïο άνοιγμα/δημιοÏ
Ïγία δοκιμαÏÏÎ¹ÎºÎ¿Ï Î±ÏÏείοÏ
"
@@ -3480,21 +3483,19 @@ msgstr "ÎδÏναÏο Ïο άνοιγμα/δημιοÏ
Ïγία δοκιμαÏÏ
msgid "Load Metadata As:"
msgstr ""
-#: Tags.cpp:1079
-#: Tags.cpp:1730
-#: Tags.cpp:2453
+#: Tags.cpp:1079 Tags.cpp:1730 Tags.cpp:2453
msgid "Error loading metadata"
msgstr "ΣÏάλμα καÏά Ïη ÏÏÏÏÏÏη ÏÏν μεÏαδεδομÎνÏν"
-#: Tags.cpp:1054
-#: Tags.cpp:1108
-#: Tags.cpp:1709
-#: Tags.cpp:1745
-#: Tags.cpp:2432
+#: Tags.cpp:1054 Tags.cpp:1108 Tags.cpp:1709 Tags.cpp:1745 Tags.cpp:2432
#: Tags.cpp:2468
msgid "Save Metadata As:"
msgstr "ÎÏοθήκεÏ
Ïη ÎεÏαδεδομÎνÏν ΩÏ:"
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
#: Theme.cpp:634
#, c-format
msgid "Audacity could not write file:\n"
@@ -3525,8 +3526,7 @@ msgid "Audacity could not find file:\n"
"Theme not loaded."
msgstr ""
-#: Theme.cpp:803
-#: Theme.cpp:892
+#: Theme.cpp:803 Theme.cpp:892
#, c-format
msgid "Audacity could not load file:\n"
" %s.\n"
@@ -3545,8 +3545,7 @@ msgid "None of the expected theme component files\n"
" %s."
msgstr ""
-#: Theme.cpp:938
-#: effects/NoiseRemoval.cpp:173
+#: Theme.cpp:938 effects/NoiseRemoval.cpp:173
#, c-format
msgid "Could not create directory:\n"
" %s"
@@ -3575,6 +3574,14 @@ msgstr "ÎιάÏκεια"
msgid "Audacity Timer Record"
msgstr "Î ÏογÏαμμαÏιÏμÎνη ÎγγÏαÏή ÏοÏ
Audacity"
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
#: SmartRecordDialog.cpp:223
msgid "Recording start"
msgstr ""
@@ -3614,40 +3621,23 @@ msgstr ""
msgid "Audacity Timer Record - Waiting for Start"
msgstr ""
-#: TrackPanel.cpp:448
-#: TrackPanel.cpp:449
-msgid "Track Panel"
-msgstr "Î Î¯Î½Î±ÎºÎ±Ï ÎλÎγÏοÏ
ÎαναλιοÏ"
-
-#: TrackPanel.cpp:492
-#: export/ExportPCM.cpp:133
-#: prefs/QualityPrefs.cpp:97
+#: TrackPanel.cpp:492 export/ExportPCM.cpp:133 prefs/QualityPrefs.cpp:97
msgid "Other..."
msgstr "Îλλο..."
-#: TrackPanel.cpp:500
-#: TrackPanel.cpp:521
-#: TrackPanel.cpp:530
-#: TrackPanel.cpp:538
+#: TrackPanel.cpp:500 TrackPanel.cpp:521 TrackPanel.cpp:530 TrackPanel.cpp:538
msgid "Name..."
msgstr "Îνομα..."
-#: TrackPanel.cpp:502
-#: TrackPanel.cpp:523
-#: TrackPanel.cpp:534
-#: TrackPanel.cpp:540
+#: TrackPanel.cpp:502 TrackPanel.cpp:523 TrackPanel.cpp:534 TrackPanel.cpp:540
msgid "Move Track Up"
msgstr "ÎεÏακίνηÏη ÎÎ±Î½Î±Î»Î¹Î¿Ï Î Î¬Î½Ï"
-#: TrackPanel.cpp:503
-#: TrackPanel.cpp:524
-#: TrackPanel.cpp:535
-#: TrackPanel.cpp:541
+#: TrackPanel.cpp:503 TrackPanel.cpp:524 TrackPanel.cpp:535 TrackPanel.cpp:541
msgid "Move Track Down"
msgstr "ÎεÏακίνηÏη ÎÎ±Î½Î±Î»Î¹Î¿Ï ÎάÏÏ"
-#: TrackPanel.cpp:505
-#: effects/ToneGen.cpp:295
+#: TrackPanel.cpp:505 effects/ToneGen.cpp:295
msgid "Waveform"
msgstr "ÎÏ
μαÏομοÏÏή"
@@ -3663,18 +3653,15 @@ msgstr ""
msgid "Pitch (EAC)"
msgstr "ΤÏÎ½Î¿Ï (EAC)"
-#: TrackPanel.cpp:510
-#: TrackPanel.cpp:5640
+#: TrackPanel.cpp:510 TrackPanel.cpp:5640
msgid "Mono"
msgstr "ÎονÏ"
-#: TrackPanel.cpp:511
-#: TrackPanel.cpp:5639
+#: TrackPanel.cpp:511 TrackPanel.cpp:5639
msgid "Left Channel"
msgstr "ÎÏιÏÏεÏÏ Îανάλι"
-#: TrackPanel.cpp:512
-#: TrackPanel.cpp:5639
+#: TrackPanel.cpp:512 TrackPanel.cpp:5639
msgid "Right Channel"
msgstr "Îεξί Îανάλι"
@@ -3686,12 +3673,15 @@ msgstr "ÎημιοÏ
Ïγία ΣÏÎÏεο ÎαναλιοÏ"
msgid "Split Stereo Track"
msgstr "ÎιαίÏεÏη ΣÏÎÏεο ÎαναλιοÏ"
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr ""
+
#: TrackPanel.cpp:516
msgid "Set Sample Format"
msgstr "ÎÏιÏμÏÏ ÎοÏÏÎ®Ï ÎείγμαÏοÏ"
-#: TrackPanel.cpp:518
-#: TrackPanel.cpp:5857
+#: TrackPanel.cpp:518 TrackPanel.cpp:5857
msgid "Set Rate"
msgstr "ÎÏιÏμÏÏ Î¡Ï
Î¸Î¼Î¿Ï ÎειγμαÏοληÏίαÏ"
@@ -3711,8 +3701,7 @@ msgstr "ÎÏαμμαÏοÏειÏά..."
msgid "Set Range..."
msgstr "ÎÏιÏμÏÏ Î ÎµÏιοÏήÏ..."
-#: TrackPanel.cpp:547
-#: toolbars/EditToolBar.cpp:135
+#: TrackPanel.cpp:547 toolbars/EditToolBar.cpp:135
msgid "Copy"
msgstr "ÎνÏιγÏαÏή"
@@ -3759,21 +3748,13 @@ msgstr "Îάνε κλικ και ÏÏÏε για να μεÏακινήÏειÏ
msgid "Click and drag to move right selection boundary."
msgstr "Îάνε κλικ και ÏÏÏε για να μεÏακινήÏÎµÎ¹Ï Ïο δεξί ÏÏιο ÏÎ·Ï ÎµÏιλογήÏ."
-#: TrackPanel.cpp:1669
-#: TrackPanel.cpp:3777
-#: TrackPanel.cpp:3809
-#: TrackPanel.cpp:4064
-#: TrackPanel.cpp:5969
-#: TrackPanel.cpp:5989
+#: TrackPanel.cpp:1669 TrackPanel.cpp:3777 TrackPanel.cpp:3809
+#: TrackPanel.cpp:4064 TrackPanel.cpp:5969 TrackPanel.cpp:5989
msgid "Modified Label"
msgstr "ΤÏοÏοÏοιημÎνη ÎÏικÎÏα"
-#: TrackPanel.cpp:1670
-#: TrackPanel.cpp:3778
-#: TrackPanel.cpp:3810
-#: TrackPanel.cpp:4065
-#: TrackPanel.cpp:5970
-#: TrackPanel.cpp:5990
+#: TrackPanel.cpp:1670 TrackPanel.cpp:3778 TrackPanel.cpp:3810
+#: TrackPanel.cpp:4065 TrackPanel.cpp:5970 TrackPanel.cpp:5990
msgid "Label Edit"
msgstr "ÎÏεξεÏγαÏία ÎÏικÎÏαÏ"
@@ -3781,8 +3762,7 @@ msgstr "ÎÏεξεÏγαÏία ÎÏικÎÏαÏ"
msgid "Adjusted envelope."
msgstr "Î ÏοÏαÏμοÏμÎνη ÏοÏεία ÎνÏαÏηÏ."
-#: TrackPanel.cpp:1898
-#: prefs/MousePrefs.cpp:115
+#: TrackPanel.cpp:1898 prefs/MousePrefs.cpp:115
msgid "Envelope"
msgstr "ΠοÏεία ÎνÏαÏηÏ"
@@ -3804,9 +3784,7 @@ msgstr "δεξιά"
msgid "Time shifted tracks/clips %s %.02f seconds"
msgstr ""
-#: TrackPanel.cpp:2044
-#: prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:112
+#: TrackPanel.cpp:2044 prefs/MousePrefs.cpp:111 prefs/MousePrefs.cpp:112
#: prefs/MousePrefs.cpp:113
msgid "Time-Shift"
msgstr "ΧÏονική-ÎεÏαÏÏÏιÏη"
@@ -3846,39 +3824,29 @@ msgstr "ÎεÏακινημÎÎ½Î¿Ï Î¿Î»Î¹ÏθηÏÎ®Ï pan"
# i18n-hint: Title of the Gain slider, used to adjust the volume
#. i18n-hint: Title of the Gain slider, used to adjust the volume
-#: TrackPanel.cpp:3269
-#: TrackPanel.cpp:5306
-#: TrackPanel.cpp:6638
+#: TrackPanel.cpp:3269 TrackPanel.cpp:5306 TrackPanel.cpp:6638
msgid "Gain"
msgstr "ÎÎÏδοÏ"
#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: TrackPanel.cpp:3269
-#: TrackPanel.cpp:5244
-#: TrackPanel.cpp:6645
+#: TrackPanel.cpp:3269 TrackPanel.cpp:5244 TrackPanel.cpp:6645
msgid "Pan"
msgstr "Pan"
-#: TrackPanel.cpp:3394
-#: TrackPanel.cpp:5922
-#: effects/ChangePitch.cpp:282
+#: TrackPanel.cpp:3394 TrackPanel.cpp:5922 effects/ChangePitch.cpp:282
msgid "up"
msgstr "εÏάνÏ"
-#: TrackPanel.cpp:3398
-#: TrackPanel.cpp:5923
-#: effects/ChangePitch.cpp:282
+#: TrackPanel.cpp:3398 TrackPanel.cpp:5923 effects/ChangePitch.cpp:282
msgid "down"
msgstr "κάÏÏ"
-#: TrackPanel.cpp:3405
-#: TrackPanel.cpp:5918
+#: TrackPanel.cpp:3405 TrackPanel.cpp:5918
#, c-format
msgid "Moved '%s' %s"
msgstr "ÎεÏακινημÎνο '%s' %s"
-#: TrackPanel.cpp:3408
-#: TrackPanel.cpp:5924
+#: TrackPanel.cpp:3408 TrackPanel.cpp:5924
msgid "Move Track"
msgstr "ÎεÏακίνηÏη ÎαναλιοÏ"
@@ -3915,14 +3883,6 @@ msgstr "ÎÏ
λÏÏ ÏοÏ
ΠανÏÏ"
msgid "Adjusted gain"
msgstr "&ÎÏαναÏοÏÏολή..."
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr ""
-
#: TrackPanel.cpp:5467
msgid "Can't delete track with active audio"
msgstr ""
@@ -3943,8 +3903,7 @@ msgstr "ÎÏιÏÏεÏÏ, "
msgid "Right, "
msgstr "Îεξί, "
-#: TrackPanel.cpp:5649
-#: TrackPanel.cpp:5762
+#: TrackPanel.cpp:5649 TrackPanel.cpp:5762
#, c-format
msgid "Changed '%s' to %s"
msgstr "ÎλλαγμÎνο '%s' Ïε %s"
@@ -3958,6 +3917,11 @@ msgstr "Îανάλι"
msgid "Split stereo track '%s'"
msgstr "ÎιαίÏεÏη ÏÏÎÏεο ÎºÎ±Î½Î±Î»Î¹Î¿Ï '%s'"
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
#: TrackPanel.cpp:5688
#, c-format
msgid "Made '%s' a stereo track"
@@ -3984,8 +3948,7 @@ msgstr "Îλλαγή ÎοÏÏήÏ"
msgid "Change lower speed limit (%) to:"
msgstr "Îλλαγή οÏίοÏ
ÏαμηλÏÏεÏÎ·Ï ÏαÏÏÏηÏÎ±Ï (%) Ïε:"
-#: TrackPanel.cpp:5887
-#: TrackPanel.cpp:5888
+#: TrackPanel.cpp:5887 TrackPanel.cpp:5888
msgid "Lower speed limit"
msgstr "ÎάÏÏ ÏÏιο ÏαÏÏÏηÏαÏ"
@@ -3993,8 +3956,7 @@ msgstr "ÎάÏÏ ÏÏιο ÏαÏÏÏηÏαÏ"
msgid "Change upper speed limit (%) to:"
msgstr "Îλλαγή οÏίοÏ
Ï
ÏηλÏÏεÏÎ·Ï ÏαÏÏÏηÏÎ±Ï (%) Ïε:"
-#: TrackPanel.cpp:5894
-#: TrackPanel.cpp:5895
+#: TrackPanel.cpp:5894 TrackPanel.cpp:5895
msgid "Upper speed limit"
msgstr "ÎÎ½Ï ÏÏιο ÏαÏÏÏηÏαÏ"
@@ -4037,6 +3999,10 @@ msgstr "Îνομα ÎαναλιοÏ"
msgid "Face size"
msgstr ""
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr ""
+
#: TrackPanel.cpp:6565
msgid "Mute"
msgstr "Σιγή"
@@ -4070,10 +4036,7 @@ msgstr "ΣÏλο ÎνεÏγοÏοιημÎνο"
msgid " Select On"
msgstr "ÎÏιλογή ÎνεÏγοÏοιημÎνη"
-#: VoiceKey.cpp:88
-#: VoiceKey.cpp:238
-#: VoiceKey.cpp:376
-#: VoiceKey.cpp:517
+#: VoiceKey.cpp:88 VoiceKey.cpp:238 VoiceKey.cpp:376 VoiceKey.cpp:517
msgid "Selection is too small to use voice key."
msgstr ""
@@ -4101,8 +4064,7 @@ msgstr ""
msgid "Audio Track"
msgstr "Îανάλι Audio"
-#: WaveTrack.cpp:541
-#: WaveTrack.cpp:560
+#: WaveTrack.cpp:541 WaveTrack.cpp:560
msgid "There is not enough room available to paste the selection"
msgstr ""
@@ -4120,8 +4082,9 @@ msgstr "ÎνθÎμαÏα (Plugins) 1 ÎÏÏ %i"
msgid "Plugins %i to %i"
msgstr "ÎνθÎμαÏα (Plugins) %i Ïε %i"
-#: commands/CommandManager.cpp:857
-msgid "Disallowed for some reason. Try selecting some audio first?"
+#: commands/CommandManager.cpp:923
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
msgstr ""
#: commands/CommandManager.cpp:724
@@ -4202,9 +4165,7 @@ msgstr "ÎνίÏÏÏ
Ïη"
msgid "You selected a track which does not contain audio. AutoDuck can only process audio tracks."
msgstr ""
-#: effects/AutoDuck.cpp:126
-#: effects/AutoDuck.cpp:138
-#: effects/AutoDuck.cpp:451
+#: effects/AutoDuck.cpp:126 effects/AutoDuck.cpp:138 effects/AutoDuck.cpp:451
#: effects/AutoDuck.cpp:568
#, fuzzy
msgid "Auto Duck"
@@ -4227,17 +4188,11 @@ msgstr "ΠοÏÏÏηÏα ÏÏήÏÎ·Ï ÎµÏοÏÏν:"
msgid "Maximum pause:"
msgstr "ÎÎγιÏÏη ÏαÏÏη:"
-#: effects/AutoDuck.cpp:492
-#: effects/AutoDuck.cpp:497
-#: effects/AutoDuck.cpp:502
-#: effects/AutoDuck.cpp:507
-#: effects/AutoDuck.cpp:512
-#: prefs/AudioIOPrefs.cpp:166
-#: prefs/AudioIOPrefs.cpp:174
-#: prefs/AudioIOPrefs.cpp:176
-#: prefs/AudioIOPrefs.cpp:201
-#: prefs/AudioIOPrefs.cpp:203
-#: widgets/TimeTextCtrl.cpp:197
+#: effects/AutoDuck.cpp:492 effects/AutoDuck.cpp:497 effects/AutoDuck.cpp:502
+#: effects/AutoDuck.cpp:507 effects/AutoDuck.cpp:512
+#: prefs/AudioIOPrefs.cpp:166 prefs/AudioIOPrefs.cpp:174
+#: prefs/AudioIOPrefs.cpp:176 prefs/AudioIOPrefs.cpp:201
+#: prefs/AudioIOPrefs.cpp:203 widgets/TimeTextCtrl.cpp:197
msgid "seconds"
msgstr "δεÏ
ÏεÏÏλεÏÏα"
@@ -4257,8 +4212,7 @@ msgstr ""
msgid "Inner fade up length:"
msgstr ""
-#: effects/AutoDuck.cpp:519
-#: effects/Compressor.cpp:479
+#: effects/AutoDuck.cpp:519 effects/Compressor.cpp:479
msgid "Threshold:"
msgstr "ÎαÏÏÏλι:"
@@ -4280,12 +4234,9 @@ msgstr "ÎÏ
ÏÏμαÏÎ¿Ï ÏÏ
γÏÏονιÏμÏÏ"
msgid "Processing Auto Duck..."
msgstr "ΧÏÏ&Î½Î¿Ï Î±Ï
ÏÏμαÏÎ·Ï Î±ÏοθήκεÏ
ÏηÏ:"
-#: effects/AvcCompressor.cpp:738
-#: effects/VST/VSTEffect.cpp:439
-#: effects/audiounits/AudioUnitEffect.cpp:877
-#: effects/nyquist/Nyquist.cpp:1037
-#: widgets/ErrorDialog.cpp:70
-#: widgets/ErrorDialog.cpp:96
+#: effects/AvcCompressor.cpp:738 effects/VST/VSTEffect.cpp:439
+#: effects/audiounits/AudioUnitEffect.cpp:877 effects/nyquist/Nyquist.cpp:1037
+#: widgets/ErrorDialog.cpp:70 widgets/ErrorDialog.cpp:96
#: widgets/Warning.cpp:67
msgid "OK"
msgstr "ÎνÏάξει"
@@ -4351,14 +4302,12 @@ msgstr "Îλλαγή ΤÏνοÏ
"
msgid "Change Pitch without Changing Tempo"
msgstr "Îλλαγή ΤÏνοÏ
ÏÏÏÎ¯Ï Ïην αλλαγή ΡÏ
θμοÏ"
-#: effects/ChangePitch.cpp:252
-#: effects/ChangeSpeed.cpp:304
+#: effects/ChangePitch.cpp:252 effects/ChangeSpeed.cpp:304
#: effects/ChangeTempo.cpp:180
msgid "by Vaughan Johnson && Dominic Mazzoni"
msgstr "αÏÏ ÏοÏ
Ï Vaughan Johnson && Dominic Mazzoni"
-#: effects/ChangePitch.cpp:257
-#: effects/ChangeTempo.cpp:185
+#: effects/ChangePitch.cpp:257 effects/ChangeTempo.cpp:185
msgid "using SoundTouch, by Olli Parviainen"
msgstr "ÏÏήÏη ÏοÏ
SoundTouch, αÏÏ Ïον Olli Parviainen"
@@ -4407,10 +4356,8 @@ msgstr ""
msgid "From frequency in hertz"
msgstr ""
-#: effects/ChangePitch.cpp:289
-#: effects/ChangePitch.cpp:335
-#: effects/ChangeSpeed.cpp:368
-#: effects/ChangeTempo.cpp:239
+#: effects/ChangePitch.cpp:289 effects/ChangePitch.cpp:335
+#: effects/ChangeSpeed.cpp:368 effects/ChangeTempo.cpp:239
#: effects/ChangeTempo.cpp:270
msgid "to"
msgstr "Ïε"
@@ -4419,8 +4366,7 @@ msgstr "Ïε"
msgid "To frequency in seconds"
msgstr ""
-#: effects/ChangePitch.cpp:358
-#: effects/ChangeSpeed.cpp:322
+#: effects/ChangePitch.cpp:358 effects/ChangeSpeed.cpp:322
#: effects/ChangeTempo.cpp:198
msgid "Percent Change:"
msgstr "ΠοÏοÏÏιαία Îλλαγή:"
@@ -4438,8 +4384,7 @@ msgstr "Îλλαγή ΤÏνοÏ
..."
msgid "Changing Pitch"
msgstr "Îλλαγή ΤÏνοÏ
"
-#: effects/ChangeSpeed.cpp:53
-#: effects/ChangeTempo.cpp:55
+#: effects/ChangeSpeed.cpp:53 effects/ChangeTempo.cpp:55
#, c-format
msgid "Applied effect: %s %.1f%%"
msgstr "ÎÏαÏμοÏμÎνο εÏÎ: %s %.1f%%"
@@ -4594,12 +4539,11 @@ msgstr ""
msgid "Decay Time"
msgstr ""
-#: effects/Compressor.cpp:504
-msgid "Normalize to 0dB after compressing"
-msgstr "ÎανονικοÏοίηÏη ÏÏα 0dB μεÏά Ïη ÏÏ
μÏίεÏη"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
+msgstr ""
#: effects/Compressor.cpp:563
-#, c-format
#, fuzzy
msgid "Threshold %d dB"
msgstr "ÎαÏÏÏλι: %d dB"
@@ -4630,7 +4574,6 @@ msgid "%.1f:1"
msgstr ""
#: effects/Compressor.cpp:575
-#, c-format
#, fuzzy
msgid "Attack Time %.1f secs"
msgstr "ΧÏÏÎ½Î¿Ï Attack: %.1f δεÏ
Ï."
@@ -4653,6 +4596,10 @@ msgstr "ΣÏ
μÏιεÏÏήÏ..."
msgid "Applying Dynamic Range Compression..."
msgstr "ÎÏαÏμογή ΣÏ
μÏίεÏη ÎÏ
Î½Î±Î¼Î¹ÎºÎ®Ï Î ÎµÏιοÏÎ®Ï ..."
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
msgstr ""
@@ -4672,19 +4619,6 @@ msgid "Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr ""
-
#: effects/Contrast.cpp:231
msgid "Contrast Analyzer"
msgstr ""
@@ -4693,15 +4627,12 @@ msgstr ""
msgid "Parameters"
msgstr ""
-#: effects/ToneGen.cpp:330
-#: toolbars/ControlToolBar.cpp:185
+#: effects/ToneGen.cpp:330 toolbars/ControlToolBar.cpp:185
msgid "Start"
msgstr "ÎκκίνηÏη"
-#: effects/ToneGen.cpp:331
-#: toolbars/ControlToolBar.cpp:188
-#: toolbars/SelectionBar.cpp:141
-#: toolbars/SelectionBar.cpp:242
+#: effects/ToneGen.cpp:331 toolbars/ControlToolBar.cpp:188
+#: toolbars/SelectionBar.cpp:141 toolbars/SelectionBar.cpp:242
msgid "End"
msgstr "ΤÎλοÏ"
@@ -4721,6 +4652,11 @@ msgstr ""
msgid "Foreground end time"
msgstr ""
+#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
+#: effects/Contrast.cpp:289
+msgid "Measured"
+msgstr ""
+
#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
msgid "Use selection"
msgstr ""
@@ -4745,8 +4681,7 @@ msgstr ""
msgid "Contrast Result:"
msgstr ""
-#: Tags.cpp:796
-#: Tags.cpp:1948
+#: Tags.cpp:796 Tags.cpp:1948
#, fuzzy
msgid "Reset"
msgstr "ÎÏανάληÏη"
@@ -4767,17 +4702,8 @@ msgstr ""
msgid "Help for WCAG2 Audio Contrast Analyzer"
msgstr ""
-#: toolbars/ControlToolBar.cpp:82
-#, fuzzy
-msgid "Control"
-msgstr "Control"
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
msgstr ""
#: effects/Contrast.cpp:328 effects/Contrast.cpp:336 effects/Contrast.cpp:344
@@ -4888,18 +4814,6 @@ msgstr ""
msgid "Data gathered"
msgstr ""
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr ""
-
#: effects/DtmfGen.cpp:47
msgid "DTMF Tone Generator"
msgstr "ÎημιοÏ
Ïγία DTMF ΤÏνÏν"
@@ -4912,8 +4826,7 @@ msgstr ""
msgid "DTMF sequence:"
msgstr "ΣÏ
γÏνÏÏηÏα DTMF:"
-#: effects/ToneGen.cpp:298
-#: effects/ToneGen.cpp:334
+#: effects/ToneGen.cpp:298 effects/ToneGen.cpp:334
msgid "Amplitude (0-1)"
msgstr "ΠλάÏÎ¿Ï ÏήμαÏÎ¿Ï (0-1)"
@@ -4934,9 +4847,7 @@ msgstr "ÎÏÎºÎ»Î¿Ï ÎµÏγαÏίαÏ"
msgid "Tone duration:"
msgstr "ÎιάÏκεια ÏÏνοÏ
:"
-#: effects/DtmfGen.cpp:436
-#: effects/DtmfGen.cpp:438
-#: effects/DtmfGen.cpp:512
+#: effects/DtmfGen.cpp:436 effects/DtmfGen.cpp:438 effects/DtmfGen.cpp:512
#: effects/DtmfGen.cpp:513
msgid "ms"
msgstr "ms"
@@ -5018,8 +4929,7 @@ msgstr "ΣÏ
νημίÏονο"
msgid "Cubic"
msgstr "ÎÏ
βικÏ"
-#: effects/Equalization.cpp:352
-#: effects/Equalization.cpp:403
+#: effects/Equalization.cpp:352 effects/Equalization.cpp:403
msgid "Equalization"
msgstr "ÎÏοÏÏάθμιÏη"
@@ -5032,6 +4942,10 @@ msgstr "ΣÏάλμα καÏά Ïη ÏÏÏÏÏÏη ÏÎ·Ï ÎºÎ±Î¼ÏÏÎ»Î·Ï ÎÏο
msgid "custom"
msgstr "Î ÏοÏαÏμοÏμÎνη"
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr ""
+
#: effects/Equalization.cpp:1064
msgid "Equalization, by Martyn Shaw && Mitch Golden"
msgstr "ÎÏοÏÏάθμιÏη αÏÏ ÏοÏ
Ï Martyn Shaw && Mitch Golden"
@@ -5068,8 +4982,7 @@ msgstr "ÎιάÏκεια ÏίλÏÏοÏ
:"
msgid "Select curve:"
msgstr "ÎÏιλογή καμÏÏληÏ:"
-#: effects/Equalization.cpp:1236
-#: effects/Equalization.cpp:2399
+#: effects/Equalization.cpp:1236 effects/Equalization.cpp:2399
msgid "Save As..."
msgstr "ÎÏοθήκεÏ
Ïη ΩÏ..."
@@ -5189,8 +5102,7 @@ msgstr "Το Ïιο βαÏÏ"
msgid "by Lynn Allan"
msgstr ""
-#: effects/Leveller.cpp:219
-#: effects/Leveller.cpp:224
+#: effects/Leveller.cpp:219 effects/Leveller.cpp:224
#, fuzzy
msgid "Degree of Leveling"
msgstr "ΠβαθμÏÏ Î¼ÎµÎ³ÎθÏ
νÏηÏ"
@@ -5241,10 +5153,6 @@ msgstr ""
msgid "Analyser"
msgstr ""
-#: toolbars/MixerToolBar.cpp:58
-msgid "Mixer"
-msgstr "ÎείκÏηÏ"
-
#: effects/LoadEffects.cpp:116
msgid "Simulator"
msgstr ""
@@ -5485,10 +5393,6 @@ msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr ""
#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
-msgid "false"
-msgstr ""
-
-#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
msgid "true"
msgstr ""
@@ -5546,8 +5450,7 @@ msgstr ""
msgid "Dry Wet"
msgstr ""
-#: effects/Phaser.cpp:264
-#: effects/Wahwah.cpp:221
+#: effects/Phaser.cpp:264 effects/Wahwah.cpp:221
msgid "LFO Frequency (Hz):"
msgstr "ΣÏ
ÏνÏÏηÏα LFO (Hz):"
@@ -5555,8 +5458,7 @@ msgstr "ΣÏ
ÏνÏÏηÏα LFO (Hz):"
msgid "LFO frequency in hertz"
msgstr ""
-#: effects/Phaser.cpp:280
-#: effects/Wahwah.cpp:237
+#: effects/Phaser.cpp:280 effects/Wahwah.cpp:237
msgid "LFO Start Phase (deg.):"
msgstr "LFO ÎÏÏή ΦάÏÎ·Ï (deg.):"
@@ -5617,8 +5519,7 @@ msgstr "ÎÏαναλαμβανÏμενο %d ÏοÏÎÏ"
msgid "Tracks are too long to repeat the selection."
msgstr "Τα κανάλια είναι ÏÎ¿Î»Ï Î¼ÎµÎ³Î¬Î»Î± για να εÏαναληÏθεί η εÏιλογή."
-#: effects/Repeat.cpp:76
-#: effects/Repeat.cpp:80
+#: effects/Repeat.cpp:76 effects/Repeat.cpp:80
msgid "Repeat"
msgstr "ÎÏανάληÏη"
@@ -5631,8 +5532,7 @@ msgstr "ÎÏιθμÏÏ ÎµÏαναλήÏεÏν: "
msgid "New selection length: hh:mm:ss"
msgstr ""
-#: effects/Repeat.cpp:190
-#: effects/Repeat.cpp:220
+#: effects/Repeat.cpp:190 effects/Repeat.cpp:220
msgid "New selection length: "
msgstr "ÎÎο Î¼Î®ÎºÎ¿Ï ÎµÏιλογήÏ: "
@@ -5849,27 +5749,42 @@ msgstr "ÎημιοÏ
Ïγία ΤÏνοÏ
"
msgid "All tracks must have the same sample rate"
msgstr "Îλα Ïα κανάλια ÏÏÎÏει να ÎÏοÏ
ν Ïον ίδιο ÏÏ
Î¸Î¼Ï Î´ÎµÎ¹Î³Î¼Î±ÏοληÏίαÏ"
-#: effects/TruncSilence.cpp:113
-#: effects/TruncSilence.cpp:310
+#: effects/TruncSilence.cpp:113 effects/TruncSilence.cpp:310
#, fuzzy
msgid "Truncate Silence"
msgstr "Î ÏοÏθήκη ÏιÏÏήÏ"
-#: effects/TruncSilence.cpp:346
-msgid "Max silence duration:"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr ""
+
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:190
-#: prefs/AudioIOPrefs.cpp:193
+#: prefs/AudioIOPrefs.cpp:190 prefs/AudioIOPrefs.cpp:193
msgid "milliseconds"
msgstr "ÏιλιοδεÏ
ÏεÏÏλεÏÏα"
+#: effects/TruncSilence.cpp:346
+msgid "Max silence duration:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ""
+
#: effects/TruncSilence.cpp:338
msgid "Threshold for silence:"
msgstr "ÎαÏÏÏλι για Ïη Ïιγή:"
-#: effects/TruncSilence.cpp:375
-msgid " Duration must be at least 1 millisecond"
+#: effects/TruncSilence.cpp:506
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
msgstr ""
#: effects/TruncSilence.h:28
@@ -5882,17 +5797,55 @@ msgstr "Î ÏοÏθήκη ÏιÏÏήÏ"
msgid "Truncating Silence..."
msgstr "Î ÏοÏθήκη ÏιÏÏήÏ"
-#: effects/VST/VSTEffect.cpp:165
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "ÎÏ
Ïάμαι, Ïα VST ÎÏΠδεν μÏοÏοÏν να λειÏοÏ
ÏγήÏοÏ
ν Ïε ÏÏÎÏεο κανάλια, ÏÏοÏ
Ïα εÏÏÏεÏικά κανάλια δεν ÏαιÏιάζοÏ
ν."
+#: effects/ladspa/LadspaEffect.cpp:607
+msgid "Effect Settings"
+msgstr "ΡÏ
θμίÏÎµÎ¹Ï ÏÏν ÎÏÎ"
-#: effects/VST/VSTEffect.cpp:180
-msgid "Can't process replacing"
-msgstr "ÎδÏναÏη η εÏεξεÏγαÏία ÏÎ·Ï Î±Î½ÏικαÏάÏÏαÏηÏ"
+#: effects/ladspa/LadspaEffect.cpp:572 effects/ladspa/LadspaEffect.cpp:580
+#: prefs/QualityPrefs.cpp:72
+msgid "None"
+msgstr "ÎανÎνα"
-#: effects/VST/VSTEffect.cpp:394
-msgid "VST Plug-in parameters:"
-msgstr "ΠαÏάμεÏÏοι VST ÎνθεμάÏÏν(Plug-in):"
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr ""
#: effects/Wahwah.cpp:61
#, c-format
@@ -5941,20 +5894,10 @@ msgstr "ÎκÏÎλεÏη ÎÏÎ: %s"
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr "ÎÏ
Ïάμαι, Ïα ÎÏιÏÏÏÏθεÏα ÎÏÎ (Plug-in) δεν μÏοÏοÏν να λειÏοÏ
ÏγήÏοÏ
ν Ïε ÏÏÎÏεο κανάλια, ÏÏοÏ
Ïα εÏÏÏεÏικά κανάλια (δεξί-αÏιÏÏεÏÏ) δεν ÏαιÏιάζοÏ
ν."
-#: effects/ladspa/LadspaEffect.cpp:572
-#: effects/ladspa/LadspaEffect.cpp:580
-#: prefs/QualityPrefs.cpp:72
-msgid "None"
-msgstr "ÎανÎνα"
-
#: effects/ladspa/LadspaEffect.cpp:574
msgid "Author: "
msgstr "ÎημιοÏ
ÏγÏÏ: "
-#: effects/ladspa/LadspaEffect.cpp:607
-msgid "Effect Settings"
-msgstr "ΡÏ
θμίÏÎµÎ¹Ï ÏÏν ÎÏÎ"
-
#: effects/ladspa/LadspaEffect.cpp:698
msgid "Length (seconds)"
msgstr "ÎιάÏκεια (δεÏ
Ï.)"
@@ -5975,8 +5918,7 @@ msgstr ""
msgid "Applying Nyquist Effect..."
msgstr "ÎÏαÏμογή ÎÏÎ Nyquist..."
-#: effects/nyquist/Nyquist.cpp:259
-#: effects/nyquist/Nyquist.cpp:321
+#: effects/nyquist/Nyquist.cpp:259 effects/nyquist/Nyquist.cpp:321
msgid "Nyquist Prompt..."
msgstr "Nyquist Prompt..."
@@ -5996,8 +5938,7 @@ msgstr "Nyquist"
msgid "Nyquist Output: "
msgstr "ÎÎ¾Î¿Î´Î¿Ï Nyquist"
-#: effects/nyquist/Nyquist.cpp:593
-#: effects/nyquist/Nyquist.cpp:604
+#: effects/nyquist/Nyquist.cpp:593 effects/nyquist/Nyquist.cpp:604
msgid "Nyquist returned the value:"
msgstr "Το Nyquist εÏÎÏÏÏεÏε Ïην Ïιμή:"
@@ -6105,8 +6046,7 @@ msgstr "-Îεξιά"
msgid "Mixer Panel"
msgstr ""
-#: export/Export.cpp:961
-#: export/Export.cpp:1006
+#: export/Export.cpp:961 export/Export.cpp:1006
#, fuzzy, c-format
msgid "Output Channels: %2d"
msgstr "ÎÏιÏÏÎÏονÏαι διÏδιάÏÏαÏοι ελκÏ
ÏÏÎÏ"
@@ -6138,8 +6078,7 @@ msgstr ""
msgid "(external program)"
msgstr "(εξÏÏεÏÎ¹ÎºÏ ÏÏÏγÏαμμα)"
-#: export/ExportCL.cpp:248
-#: export/ExportPCM.cpp:367
+#: export/ExportCL.cpp:248 export/ExportPCM.cpp:367
#, c-format
msgid "Cannot export audio to %s"
msgstr "ÎδÏναÏη η εξαγÏγή audio ÏÏο %s"
@@ -6157,9 +6096,21 @@ msgstr "ÎξαγÏγή ολÏκληÏÎ·Ï ÏÎ·Ï ÎµÏγαÏÎ¯Î±Ï ÏÏηÏιμο
msgid "Command Output"
msgstr "ÎÎ¾Î¿Î´Î¿Ï ÎµÎ½ÏολήÏ"
-#: export/ExportFFmpeg.cpp:59
+#: export/ExportFFmpeg.cpp:61
msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
#: export/ExportFFmpeg.cpp:394
@@ -6227,6 +6178,10 @@ msgstr ""
msgid "AAC Export Setup"
msgstr ""
+#: export/ExportOGG.cpp:86
+msgid "Quality:"
+msgstr "ΠοιÏÏηÏα:"
+
#: export/ExportFFmpegDialogs.cpp:217
msgid "Specify AMR-NB Options"
msgstr ""
@@ -6360,12 +6315,8 @@ msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n
"Recommended - 192000"
msgstr ""
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr "ΠοιÏÏηÏα:"
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid "Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
@@ -6384,10 +6335,10 @@ msgstr ""
msgid "Cutoff Bandwidth:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:947
+#: export/ExportFFmpegDialogs.cpp:936
msgid "Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:949
@@ -6576,12 +6527,12 @@ msgstr ""
msgid "AC3 Files (FFmpeg)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:56
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:57
@@ -6692,6 +6643,17 @@ msgstr "ÎÎ¬Î¸Î¿Ï Îit:"
msgid "FLAC Files"
msgstr "ÎÏÏεία FLAC"
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
#: export/ExportFLAC.cpp:296
msgid "Exporting the selected audio as FLAC"
msgstr "ÎξαγÏγή ÏοÏ
εÏιλεγμÎνοÏ
audio ÏÏ FLAC"
@@ -6716,9 +6678,7 @@ msgstr "ÎÏÏεία MP2"
msgid "Cannot export MP2 with this sample rate and bit rate"
msgstr "ÎδÏναÏη η εξαγÏγή με μοÏÏή MP2 με αÏ
ÏÏ Ïο ÏÏ
Î¸Î¼Ï Î´ÎµÎ¹Î³Î¼Î±ÏοληÏÎ¯Î±Ï ÎºÎ±Î¹ ÏÏ
Î¸Î¼Ï bit"
-#: export/ExportMP2.cpp:243
-#: export/ExportMP3.cpp:1713
-#: export/ExportOGG.cpp:183
+#: export/ExportMP2.cpp:243 export/ExportMP3.cpp:1713 export/ExportOGG.cpp:183
msgid "Unable to open target file for writing"
msgstr "ÎδÏναÏο Ïο άνοιγμα ÏοÏ
αÏÏείοÏ
ÏÏοοÏιÏÎ¼Î¿Ï Î³Î¹Î± εγγÏαÏή"
@@ -6733,24 +6693,12 @@ msgid "Exporting entire file at %d kbps"
msgstr "ÎξαγÏγή ολÏκληÏοÏ
ÏοÏ
αÏÏείοÏ
ÏÏα %d kbps"
#. i18n-hint: kbps is the bitrate of the MP3 file, kilobits per second
-#: export/ExportMP3.cpp:142
-#: export/ExportMP3.cpp:143
-#: export/ExportMP3.cpp:144
-#: export/ExportMP3.cpp:145
-#: export/ExportMP3.cpp:146
-#: export/ExportMP3.cpp:147
-#: export/ExportMP3.cpp:148
-#: export/ExportMP3.cpp:149
-#: export/ExportMP3.cpp:150
-#: export/ExportMP3.cpp:151
-#: export/ExportMP3.cpp:152
-#: export/ExportMP3.cpp:153
-#: export/ExportMP3.cpp:154
-#: export/ExportMP3.cpp:155
-#: export/ExportMP3.cpp:156
-#: export/ExportMP3.cpp:157
-#: export/ExportMP3.cpp:158
-#: export/ExportMP3.cpp:159
+#: export/ExportMP3.cpp:142 export/ExportMP3.cpp:143 export/ExportMP3.cpp:144
+#: export/ExportMP3.cpp:145 export/ExportMP3.cpp:146 export/ExportMP3.cpp:147
+#: export/ExportMP3.cpp:148 export/ExportMP3.cpp:149 export/ExportMP3.cpp:150
+#: export/ExportMP3.cpp:151 export/ExportMP3.cpp:152 export/ExportMP3.cpp:153
+#: export/ExportMP3.cpp:154 export/ExportMP3.cpp:155 export/ExportMP3.cpp:156
+#: export/ExportMP3.cpp:157 export/ExportMP3.cpp:158 export/ExportMP3.cpp:159
#, fuzzy
msgid "kbps"
msgstr "8 kbps"
@@ -6787,8 +6735,7 @@ msgstr ""
msgid "Specify MP3 Options"
msgstr "ÎÏιÏε ÏÎ¹Ï ÎµÏιλογÎÏ MP3"
-#: export/ExportMP3.cpp:264
-#: prefs/FileFormatPrefs.cpp:101
+#: export/ExportMP3.cpp:264 prefs/FileFormatPrefs.cpp:101
msgid "MP3 Export Setup"
msgstr "ΡÏ
θμίÏÎµÎ¹Ï MP3 ÎξαγÏγήÏ"
@@ -6812,8 +6759,7 @@ msgstr "ÎÎÏÎ¿Ï ÎÏοÏ"
msgid "Constant"
msgstr "ΣÏαθεÏή"
-#: prefs/QualityPrefs.cpp:42
-#: prefs/QualityPrefs.cpp:43
+#: prefs/QualityPrefs.cpp:42 prefs/QualityPrefs.cpp:43
msgid "Quality"
msgstr "ΠιÏÏÏÏηÏα"
@@ -6933,10 +6879,8 @@ msgstr ""
msgid "MP3 export library not found"
msgstr ""
-#: export/ExportMultiple.cpp:88
-#: export/ExportMultiple.cpp:362
-#: export/ExportMultiple.cpp:609
-#: export/ExportMultiple.cpp:717
+#: export/ExportMultiple.cpp:88 export/ExportMultiple.cpp:362
+#: export/ExportMultiple.cpp:609 export/ExportMultiple.cpp:717
msgid "Export Multiple"
msgstr "ÎξαγÏγή ΠολλαÏλÏν"
@@ -6969,11 +6913,6 @@ msgstr "ÎÏιλογÎÏ..."
msgid "Export location:"
msgstr "ΤοÏοθεÏία εξαγÏγήÏ:"
-#: export/ExportMultiple.cpp:204
-#: prefs/DirectoriesPrefs.cpp:92
-msgid "Choose..."
-msgstr "ÎÏιλογή..."
-
#: export/ExportMultiple.cpp:205
msgid "Create"
msgstr "ÎημιοÏ
Ïγία"
@@ -6998,10 +6937,6 @@ msgstr "Î ÏÏÏο Ïνομα αÏÏείοÏ
:"
msgid "First file name"
msgstr ""
-#: export/ExportMultiple.cpp:246
-msgid "Tracks"
-msgstr "Îανάλια"
-
#: export/ExportMultiple.cpp:253
msgid "Name files:"
msgstr "ÎνομαÏία αÏÏείÏν:"
@@ -7035,6 +6970,35 @@ msgstr "Ïο \"%s\" δημιοÏ
Ïγήθηκε με εÏιÏÏ
Ïία."
msgid "Choose a location to save the exported files"
msgstr "ÎÏÎλεξε μία ÏοÏοθεÏία για Ïην αÏοθήκεÏ
Ïη ÏÏν εξαγÏμενÏν αÏÏείÏν"
+#: export/ExportMultiple.cpp:524
+#, c-format
+msgid "Successfully exported the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:527
+#, c-format
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr ""
+
#: export/ExportMultiple.cpp:480
#, c-format
msgid "\"%s\" doesn't exist.\n"
@@ -7048,18 +7012,6 @@ msgstr "Ïο \"%s\" δεν Ï
ÏάÏÏει.\n"
msgid "Edit metadata"
msgstr ""
-#: export/ExportMultiple.cpp:606
-#: export/ExportMultiple.cpp:714
-#, c-format
-msgid "Successfully exported %d file(s)."
-msgstr "ÎÏιÏÏ
ÏÎ®Ï ÎµÎ¾Î±Î³Ïγή %d αÏÏείÏν(-οÏ
)."
-
-#: export/ExportMultiple.cpp:607
-#: export/ExportMultiple.cpp:715
-#, c-format
-msgid "Something went wrong after exporting %d file(s)."
-msgstr "ÎάÏι Ïήγε ÏÏÏαβά μεÏά αÏÏ Ïην εξαγÏγή %d αÏÏείÏν(-οÏ
)."
-
#: export/ExportMultiple.cpp:881
#, c-format
msgid "Label %s is not a legal file name. You cannot use any of: %s\n"
@@ -7138,7 +7090,6 @@ msgstr ""
#. i18n-hint: %s will be the error message from libsndfile
#: export/ExportPCM.cpp:436
-#, c-format
#, fuzzy
msgid "Error (file may not have been written): %s"
msgstr "ΣÏάλμα (ίÏÏÏ Î´ÎµÎ½ ÎÏει γίνει εγγÏαÏή ÏοÏ
αÏÏείοÏ
): %s"
@@ -7304,6 +7255,10 @@ msgstr ""
msgid "FLAC files"
msgstr "ÎÏÏεία FLAC"
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr ""
+
#: import/ImportLOF.cpp:92
msgid "List of Files in basic text format"
msgstr "ÎίÏÏα ÎÏÏείÏν Ïε μοÏÏή basic text"
@@ -7316,9 +7271,7 @@ msgstr "Îη αÏοδεκÏή μεÏαÏÏÏιÏη window ÏÏο αÏÏείο LO
# i18n-hint: You do not need to translate "LOF"
#. i18n-hint: You do not need to translate "LOF"
-#: import/ImportLOF.cpp:320
-#: import/ImportLOF.cpp:341
-#: import/ImportLOF.cpp:415
+#: import/ImportLOF.cpp:320 import/ImportLOF.cpp:341 import/ImportLOF.cpp:415
#: import/ImportLOF.cpp:435
msgid "LOF Error"
msgstr "LOF ΣÏάλμα"
@@ -7376,8 +7329,7 @@ msgstr "Îη αÏοδεκÏή Vorbis bitstream κεÏαλίδα"
msgid "Internal logic fault"
msgstr "ÎÏÏÏεÏÎ¹ÎºÏ Î»Î¿Î³Î¹ÎºÏ ÏÏάλμα"
-#: export/ExportPCM.cpp:320
-#: import/ImportPCM.cpp:47
+#: export/ExportPCM.cpp:320 import/ImportPCM.cpp:47
msgid "WAV, AIFF, and other uncompressed types"
msgstr "WAV, AIFF, και άλλοι μη ÏÏ
μÏιεÏμÎνοι ÏÏÏοι"
@@ -7476,36 +7428,41 @@ msgstr ""
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr ""
-#: prefs/AudioIOPrefs.cpp:41
-#: prefs/AudioIOPrefs.cpp:42
-msgid "Audio I/O"
-msgstr "Audio I/O"
+#: prefs/BatchPrefs.cpp:55 prefs/BatchPrefs.cpp:56
+msgid "Batch"
+msgstr "Îμαδική"
-#: prefs/AudioIOPrefs.cpp:100
-msgid "1 (Mono)"
-msgstr "1 (ÎονÏ)"
+#: prefs/BatchPrefs.cpp:77 prefs/GUIPrefs.cpp:70
+msgid "Behaviors"
+msgstr "ΣÏ
μÏεÏιÏοÏÎÏ"
-#: prefs/AudioIOPrefs.cpp:101
-msgid "2 (Stereo)"
-msgstr "2 (ΣÏÎÏεο)"
+#: prefs/BatchPrefs.cpp:80
+msgid "&Don't apply effects in batch mode"
+msgstr ""
-#: prefs/AudioIOPrefs.cpp:115
-msgid "Playback"
-msgstr "ÎναÏαÏαγÏγή"
+#: prefs/BatchPrefs.cpp:85
+msgid "Cl&eanSpeech Mode (Customized GUI)"
+msgstr ""
-#: prefs/AudioIOPrefs.cpp:119
-#: prefs/AudioIOPrefs.cpp:137
-#: toolbars/DeviceToolBar.cpp:54
-msgid "Device"
-msgstr "ΣÏ
ÏκεÏ
ή"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:33 prefs/GUIPrefs.cpp:34
+msgid "Interface"
+msgstr "ΠεÏιβάλλον ÎÏγαÏίαÏ"
+
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
+msgstr ""
#: prefs/AudioIOPrefs.cpp:122
msgid "Using:"
msgstr "ΧÏηÏιμοÏοιεί:"
-#: prefs/AudioIOPrefs.cpp:123
-msgid "Portaudio v"
-msgstr "Portaudio v"
+#: prefs/AudioIOPrefs.cpp:115
+msgid "Playback"
+msgstr "ÎναÏαÏαγÏγή"
#: prefs/AudioIOPrefs.cpp:133
msgid "Recording"
@@ -7515,103 +7472,15 @@ msgstr "ÎÏογÏάÏηÏη"
msgid "Channels"
msgstr "Îανάλια"
-#: prefs/AudioIOPrefs.cpp:145
-msgid "Playthrough"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:150
-#, fuzzy
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr "Playthrough &ΣÏ
ÏκεÏ
Î®Ï (ÎναÏαÏαγÏγή ÏοÏ
νÎοÏ
κομμαÏÎ¹Î¿Ï ÎºÎ±Î¸ÏÏ Î±Ï
ÏÏ Î·ÏογÏαÏείÏαι)"
-
-#: prefs/AudioIOPrefs.cpp:152
-#, fuzzy
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr "Playthrough &ÎογιÏÎ¼Î¹ÎºÎ¿Ï (ÎναÏαÏαγÏγή ÏοÏ
νÎοÏ
κομμαÏÎ¹Î¿Ï ÎºÎ±Î¸ÏÏ Î±Ï
ÏÏ Î·ÏογÏαÏείÏαι)"
-
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:162
-msgid "Effects Preview"
-msgstr "Î ÏοεÏιÏκÏÏηÏη ÏÏν ÎÏÎ"
-
-#: prefs/AudioIOPrefs.cpp:165
-#, fuzzy
-msgid "Length of preview:"
-msgstr "ÎιάÏκεια ÏίλÏÏοÏ
:"
-
-#: prefs/AudioIOPrefs.cpp:170
-msgid "Cut Preview"
-msgstr "ÎÏοκοÏή Î ÏοεÏιÏκÏÏηÏη"
-
-#: prefs/AudioIOPrefs.cpp:173
-#, fuzzy
-msgid "Preview before cut region:"
-msgstr "ÎναÏαÏαγÏγή ÏÏιν Ïην ÏεÏιοÏή αÏοκοÏήÏ:"
-
-#: prefs/AudioIOPrefs.cpp:175
-#, fuzzy
-msgid "Preview after cut region:"
-msgstr "ÎναÏαÏαγÏγή μεÏά Ïην ÏεÏιοÏή αÏοκοÏήÏ:"
-
-#: prefs/AudioIOPrefs.cpp:183
-msgid "Latency"
-msgstr "ÎαθÏ
ÏÏÎÏηÏη"
-
-#: prefs/AudioIOPrefs.cpp:195
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:198
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:197
-msgid "Seek Time when playing"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:200
-#, fuzzy
-msgid "Short period:"
-msgstr "ΧÏÏÎ½Î¿Ï Î±ÏÏÏνιÏηÏ:"
-
-#: prefs/AudioIOPrefs.cpp:202
-#, fuzzy
-msgid "Long period:"
-msgstr "ΧÏÏÎ½Î¿Ï Î±ÏÏÏνιÏηÏ:"
-
-#: prefs/BatchPrefs.cpp:55
-#: prefs/BatchPrefs.cpp:56
-msgid "Batch"
-msgstr "Îμαδική"
-
-#: prefs/BatchPrefs.cpp:77
-#: prefs/GUIPrefs.cpp:70
-msgid "Behaviors"
-msgstr "ΣÏ
μÏεÏιÏοÏÎÏ"
-
-#: prefs/BatchPrefs.cpp:80
-msgid "&Don't apply effects in batch mode"
-msgstr ""
+#: prefs/AudioIOPrefs.cpp:100
+msgid "1 (Mono)"
+msgstr "1 (ÎονÏ)"
-#: prefs/BatchPrefs.cpp:85
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr ""
+#: prefs/AudioIOPrefs.cpp:101
+msgid "2 (Stereo)"
+msgstr "2 (ΣÏÎÏεο)"
-#: prefs/DirectoriesPrefs.cpp:55
-#: prefs/DirectoriesPrefs.cpp:56
+#: prefs/DirectoriesPrefs.cpp:55 prefs/DirectoriesPrefs.cpp:56
#: prefs/PrefsDialog.cpp:279
msgid "Directories"
msgstr "Φάκελοι"
@@ -7628,34 +7497,31 @@ msgstr "ΤοÏοθεÏία:"
msgid "Free Space:"
msgstr "ÎλεÏθεÏÎ¿Ï Î§ÏÏοÏ:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr "ÎÏ
ÏÏμαÏη αÏοθήκεÏ
Ïη"
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr "ÎÏ
ÏÏμαÏη αÏοθήκεÏ
Ïη ενÏÏ Î±Î½ÏίγÏαÏοÏ
ÏÎ·Ï ÎµÏγαÏÎ¯Î±Ï Ïε ξεÏÏÏιÏÏÏ Ïάκελο"
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
-msgstr ""
-
-#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
-msgstr "λεÏÏά"
-
#: prefs/DirectoriesPrefs.cpp:110
msgid "Audio cache"
msgstr "ÎικÏοαÏοθήκεÏ
Ïη (cache) Audio"
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "Play and/or record using RAM (useful for slow drives)"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
#: prefs/DirectoriesPrefs.cpp:121
msgid "Choose a location to place the temporary directory"
msgstr "ÎÏÎλεξε Ïην ÏοÏοθεÏία ÏοÏ
ÏÏοÏÏÏÎ¹Î½Î¿Ï ÏακÎλοÏ
"
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: prefs/DirectoriesPrefs.cpp:166
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -7674,228 +7540,144 @@ msgstr "Î ÏÎ¬ÎºÎµÎ»Î¿Ï %s δεν είναι εγγÏάÏιμοÏ"
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "Îι αλλαγÎÏ ÏÏο ÏÏοÏÏÏÎ¹Î½Ï Ïάκελο δεν θα εÏαÏμοÏÏοÏν μÎÏÏι να γίνει εÏανεκκίνηÏη ÏοÏ
Audacity"
-#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
-msgid "Import / Export"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:84
-msgid "MP3 Export Library"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:104
-msgid "MP3 Library Version:"
-msgstr "ÎκδοÏη MP3 ÎιβλιοθήκηÏ:"
-
-#: prefs/FileFormatPrefs.cpp:93
-msgid "MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:98
-msgid "LAME MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
-msgid "&Download"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:136
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:137
-msgid "When importing audio files"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:140
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:141
-msgid "&Read uncompressed audio files directly from the original (faster)"
+#: prefs/GUIPrefs.cpp:42
+msgid "In Browser"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:143
-msgid "&Normalize all tracks in project"
+#: prefs/GUIPrefs.cpp:43
+msgid "From Internet"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:84
-msgid "When saving a project that depends on other audio files"
-msgstr "ÎÏαν αÏοθηκεÏεÏαι μία εÏγαÏία ÏοÏ
εξαÏÏάÏαι αÏÏ Î¬Î»Î»Î± αÏÏεία audio"
-
-#: prefs/FileFormatPrefs.cpp:87
-msgid "Always © all audio into project (safest)"
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:88
-msgid "&Do not copy any audio"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:87
-msgid "&Ask user"
-msgstr "&ÎÏÏÏηÏη ÏÏήÏÏη"
-
-#: prefs/FileFormatPrefs.cpp:93
-msgid "When exporting tracks to an audio file"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:96
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:97
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
msgstr ""
-#: prefs/BatchPrefs.cpp:91
-msgid "S&how Metadata Editor prior to export step"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
msgstr ""
-#: prefs/GUIPrefs.cpp:33
-#: prefs/GUIPrefs.cpp:34
-msgid "Interface"
-msgstr "ΠεÏιβάλλον ÎÏγαÏίαÏ"
+#: prefs/GUIPrefs.cpp:110
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 dB (ÏηÏÏ ÎµÏÏÎ¿Ï Î³Î¹Î± Ï
ÏÎ·Î»Î¿Ï ÏλάÏοÏ
Ï ÎµÏεξεÏγαÏία)"
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
-msgstr ""
+#: prefs/GUIPrefs.cpp:111
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 dB (PCM εÏÏÎ¿Ï Î³Î¹Î± 8 bit δειγμαÏοληÏία)"
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
+#: prefs/GUIPrefs.cpp:143
+msgid "-60 dB (PCM range of 10 bit samples)"
msgstr ""
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
-msgstr ""
+#: prefs/GUIPrefs.cpp:112
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 dB (PCM εÏÏÎ¿Ï Î³Î¹Î± 16 bit δειγμαÏοληÏία)"
-#: prefs/GUIPrefs.cpp:72
-#, fuzzy
-msgid "&Update display while playing"
-msgstr "Î&νανÎÏÏη ÏοÏ
ΦαÏμαÏογÏαÏήμαÏÎ¿Ï ÎºÎ±Ïά Ïη διάÏκεια ÏÎ·Ï Î±Î½Î±ÏαÏαγÏγήÏ"
+#: prefs/GUIPrefs.cpp:113
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 dB (ÏÏιο ανθÏÏÏÎ¹Î½Î·Ï Î±ÎºÎ¿Î®Ï ÎºÎ±Ïά ÏÏοÏÎγγιÏη)"
-#: prefs/GUIPrefs.cpp:96
-msgid "Cl&osing last window quits Audacity"
-msgstr ""
+#: prefs/GUIPrefs.cpp:114
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB (PCM εÏÏÎ¿Ï Î³Î¹Î± 24 bit δειγμαÏοληÏία)"
-#: prefs/GUIPrefs.cpp:76
-msgid "Enable &dragging of left and right selection edges"
-msgstr ""
+#: prefs/SpectrumPrefs.cpp:96
+msgid "Display"
+msgstr "ÎμÏάνιÏη"
#: prefs/GUIPrefs.cpp:100
msgid "Er&gonomic order of audio I/O buttons"
msgstr ""
-#: prefs/GUIPrefs.cpp:80
-msgid "Automatically &fit tracks vertically zoomed"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
msgstr ""
-#: prefs/GUIPrefs.cpp:104
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
msgstr ""
-#: prefs/GUIPrefs.cpp:86
-msgid "Editing a &clip can move other clips"
+#: prefs/GUIPrefs.cpp:167
+msgid "Help:"
msgstr ""
-#: prefs/GUIPrefs.cpp:88
-msgid "&Select all audio in project, if none selected"
+#: prefs/GUIPrefs.cpp:96
+msgid "Cl&osing last window quits Audacity"
msgstr ""
#: prefs/GUIPrefs.cpp:90
msgid "&Beep on completion of longer activities"
msgstr ""
-#: prefs/BatchPrefs.cpp:89
-#: prefs/GUIPrefs.cpp:90
-msgid "Show / Hide"
-msgstr "ÎμÏάνιÏη / ÎÏÏκÏÏ
Ïη"
-
-#: prefs/GUIPrefs.cpp:92
-#, fuzzy
-msgid "Enable cut &lines"
-msgstr "ÎνεÏγοÏοίηÏη γÏαμμÏν ÏλÎγμαÏοÏ"
-
-#: prefs/GUIPrefs.cpp:94
-msgid "Show warnings about &temp files"
-msgstr "Î Ïοβολή ÏÏοειδοÏοίηÏÎ·Ï Î³Î¹Î± &ÏÏοÏÏÏινά αÏÏεία"
-
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:122
-msgid "Show &Welcome Message at program start up"
-msgstr ""
-
#: prefs/GUIPrefs.cpp:126
msgid "Modes"
msgstr ""
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
+msgstr ""
+
#: prefs/GUIPrefs.cpp:129
msgid "Don't a&pply effects in batch mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
+#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
+msgid "Import / Export"
msgstr ""
-#: prefs/GUIPrefs.cpp:110
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 dB (ÏηÏÏ ÎµÏÏÎ¿Ï Î³Î¹Î± Ï
ÏÎ·Î»Î¿Ï ÏλάÏοÏ
Ï ÎµÏεξεÏγαÏία)"
-
-#: prefs/GUIPrefs.cpp:111
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 dB (PCM εÏÏÎ¿Ï Î³Î¹Î± 8 bit δειγμαÏοληÏία)"
+#: prefs/FileFormatPrefs.cpp:137
+msgid "When importing audio files"
+msgstr ""
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
+#: prefs/FileFormatPrefs.cpp:140
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
msgstr ""
-#: prefs/GUIPrefs.cpp:112
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 dB (PCM εÏÏÎ¿Ï Î³Î¹Î± 16 bit δειγμαÏοληÏία)"
+#: prefs/FileFormatPrefs.cpp:141
+msgid "&Read uncompressed audio files directly from the original (faster)"
+msgstr ""
-#: prefs/GUIPrefs.cpp:113
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 dB (ÏÏιο ανθÏÏÏÎ¹Î½Î·Ï Î±ÎºÎ¿Î®Ï ÎºÎ±Ïά ÏÏοÏÎγγιÏη)"
+#: prefs/FileFormatPrefs.cpp:143
+msgid "&Normalize all tracks in project"
+msgstr ""
-#: prefs/GUIPrefs.cpp:114
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB (PCM εÏÏÎ¿Ï Î³Î¹Î± 24 bit δειγμαÏοληÏία)"
+#: prefs/FileFormatPrefs.cpp:93
+msgid "When exporting tracks to an audio file"
+msgstr ""
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
+#: prefs/FileFormatPrefs.cpp:96
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
msgstr ""
-#: prefs/GUIPrefs.cpp:164
-msgid "Other interface choices"
+#: prefs/FileFormatPrefs.cpp:97
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
msgstr ""
-#: prefs/GUIPrefs.cpp:167
-msgid "Help:"
+#: prefs/BatchPrefs.cpp:91
+msgid "S&how Metadata Editor prior to export step"
msgstr ""
-#: prefs/GUIPrefs.cpp:168
-msgid "Solo Button:"
+#: prefs/ImportExportPrefs.cpp:84
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
msgstr ""
-#: prefs/KeyConfigPrefs.cpp:64
-#: prefs/KeyConfigPrefs.cpp:65
+#: prefs/KeyConfigPrefs.cpp:64 prefs/KeyConfigPrefs.cpp:65
msgid "Keyboard"
msgstr "ΠληκÏÏολÏγιο"
@@ -7919,22 +7701,26 @@ msgstr "&ÎÏιÏμÏÏ"
msgid "Note: Pressing Cmd+Q will quit. All other keys are valid."
msgstr "ΣημείÏÏη: ΠληκÏÏολογÏνÏÎ±Ï Cmd+Q θα κλείÏει. Îλα Ïα άλλα ÏλήκÏÏα είναι ÎγκÏ
Ïα."
-#: prefs/KeyConfigPrefs.cpp:124
-#: prefs/ThemePrefs.cpp:103
+#: prefs/KeyConfigPrefs.cpp:124 prefs/ThemePrefs.cpp:103
msgid "&Defaults"
msgstr "&Î ÏοκαθοÏιÏμÎνα"
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr ""
+
#: prefs/KeyConfigPrefs.cpp:143
msgid "Key Combination"
msgstr "ΣÏ
νδÏ
αÏμÏÏ Î Î»Î®ÎºÏÏÏν"
-#: prefs/KeyConfigPrefs.cpp:163
-msgid "Export Keyboard Shortcuts As:"
-msgstr "ÎξαγÏγή ÏÏ
νÏομεÏÏεÏν ÏληκÏÏολογίοÏ
ÏÏ:"
+#: prefs/KeyConfigPrefs.cpp:367 toolbars/EditToolBar.cpp:144
+msgid "Undo"
+msgstr "ÎναίÏεÏη"
-#: prefs/KeyConfigPrefs.cpp:181
-msgid "Error saving keyboard shortcuts"
-msgstr "ΣÏάλμα ÏÏην αÏοθήκεÏ
Ïη ÏÏν ÏÏ
νÏομεÏÏεÏν ÏοÏ
ÏληκÏÏολογίοÏ
"
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr ""
#: prefs/KeyConfigPrefs.cpp:196
msgid "Select an XML file containing Audacity keyboard shortcuts..."
@@ -7944,6 +7730,14 @@ msgstr "ÎÏÎλεξε Îνα αÏÏείο XML ÏοÏ
να ÏεÏιÎÏει Aud
msgid "Error loading keyboard shortcuts"
msgstr "ΣÏάλμα ÏÏο ÏÏÏÏÏμα ÏÏν ÏÏ
νÏομεÏÏεÏν ÏοÏ
ÏληκÏÏολογίοÏ
"
+#: prefs/KeyConfigPrefs.cpp:163
+msgid "Export Keyboard Shortcuts As:"
+msgstr "ÎξαγÏγή ÏÏ
νÏομεÏÏεÏν ÏληκÏÏολογίοÏ
ÏÏ:"
+
+#: prefs/KeyConfigPrefs.cpp:181
+msgid "Error saving keyboard shortcuts"
+msgstr "ΣÏάλμα ÏÏην αÏοθήκεÏ
Ïη ÏÏν ÏÏ
νÏομεÏÏεÏν ÏοÏ
ÏληκÏÏολογίοÏ
"
+
#: prefs/KeyConfigPrefs.cpp:241
#, c-format
msgid "The keyboard shortcut '%s' is already assigned to:\n"
@@ -7953,10 +7747,61 @@ msgstr "Î ÏÏ
νÏÏμεÏ
Ïη ÏληκÏÏολογίοÏ
'%s' ÎÏει ήδη
"\n"
"'%s'"
-#: prefs/KeyConfigPrefs.cpp:367
-#: toolbars/EditToolBar.cpp:144
-msgid "Undo"
-msgstr "ÎναίÏεÏη"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:84
+msgid "MP3 Export Library"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:104
+msgid "MP3 Library Version:"
+msgstr "ÎκδοÏη MP3 ÎιβλιοθήκηÏ:"
+
+#: prefs/FileFormatPrefs.cpp:93
+msgid "MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:98
+msgid "LAME MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
+msgid "&Download"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:109
+msgid "FFmpeg Library Version:"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
+msgid "FFmpeg Library:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:41 prefs/AudioIOPrefs.cpp:42
+msgid "Audio I/O"
+msgstr "Audio I/O"
+
+#: prefs/AudioIOPrefs.cpp:123
+msgid "Portaudio v"
+msgstr "Portaudio v"
+
+#: prefs/AudioIOPrefs.cpp:145
+msgid "Playthrough"
+msgstr ""
#: prefs/AudioIOPrefs.cpp:147
msgid "&Play other tracks while recording new one"
@@ -7970,6 +7815,10 @@ msgstr ""
msgid "&Software Playthrough (Play new track while recording it)"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:170
+msgid "Cut Preview"
+msgstr "ÎÏοκοÏή Î ÏοεÏιÏκÏÏηÏη"
+
#: prefs/MidiIOPrefs.cpp:160
msgid "Play before cut region:"
msgstr ""
@@ -7978,6 +7827,10 @@ msgstr ""
msgid "Play after cut region:"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:183
+msgid "Latency"
+msgstr "ÎαθÏ
ÏÏÎÏηÏη"
+
#: prefs/AudioIOPrefs.cpp:189
#, fuzzy
msgid "Audio to buffer:"
@@ -7991,12 +7844,25 @@ msgstr "ÎιÏÏθÏÏη καθÏ
ÏÏÎÏηÏηÏ:"
msgid "Seek Time"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:200
+#, fuzzy
+msgid "Short period:"
+msgstr "ΧÏÏÎ½Î¿Ï Î±ÏÏÏνιÏηÏ:"
+
+#: prefs/AudioIOPrefs.cpp:202
+#, fuzzy
+msgid "Long period:"
+msgstr "ΧÏÏÎ½Î¿Ï Î±ÏÏÏνιÏηÏ:"
+
+#: prefs/AudioIOPrefs.cpp:162
+msgid "Effects Preview"
+msgstr "Î ÏοεÏιÏκÏÏηÏη ÏÏν ÎÏÎ"
+
#: prefs/MidiIOPrefs.cpp:196
msgid "Play when previewing:"
msgstr ""
-#: prefs/MousePrefs.cpp:55
-#: prefs/MousePrefs.cpp:56
+#: prefs/MousePrefs.cpp:55 prefs/MousePrefs.cpp:56
msgid "Mouse"
msgstr "ΠονÏίκι"
@@ -8017,37 +7883,26 @@ msgstr "Command Action"
msgid "Buttons"
msgstr "ΠλήκÏÏα"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:117
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:117
#: prefs/MousePrefs.cpp:122
msgid "Left-Click"
msgstr "ÎÏιÏÏεÏÏ-Îλικ"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:100
-#: prefs/MousePrefs.cpp:101
-#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:101 prefs/MousePrefs.cpp:102
msgid "Select"
msgstr "ÎÏιλογή"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:122
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:122
msgid "Set Selection Point"
msgstr "ÎÏιÏμÏÏ Î£Î·Î¼ÎµÎ¯Î¿Ï
ÎÏιλογήÏ"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:115
-#: prefs/MousePrefs.cpp:119
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:115 prefs/MousePrefs.cpp:119 prefs/MousePrefs.cpp:123
msgid "Left-Drag"
msgstr "ÎÏιÏÏεÏÏ-ΣÏÏÏιμο"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:123
msgid "Set Selection Range"
msgstr "ÎÏιÏμÏÏ Î ÎµÏιοÏÎ®Ï ÎÏÎ¹Î»Î¿Î³Î®Ï "
@@ -8078,12 +7933,8 @@ msgstr "Alt-ÎÏιÏÏεÏÏ-Îλικ"
msgid "Set Selection Point and Play"
msgstr "ÎÏιÏμÏÏ Î£Î·Î¼ÎµÎ¯Î¿Ï
ÎÏιλογήÏ"
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:108
-#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:106
+#: prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:108 prefs/MousePrefs.cpp:109
msgid "Zoom"
msgstr "Î Ïοβολή"
@@ -8091,9 +7942,7 @@ msgstr "Î Ïοβολή"
msgid "Zoom in on Point"
msgstr "ÎεγÎθÏ
νÏη Ïε Σημείο"
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:125
msgid "Zoom in on a Range"
msgstr "ÎεγÎθÏ
νÏη Ïε ΠεÏιοÏή"
@@ -8102,18 +7951,15 @@ msgstr "ÎεγÎθÏ
νÏη Ïε ΠεÏιοÏή"
msgid "same as right-drag"
msgstr "Îμοια με Ïα ονÏμαÏα κλάÏηÏ"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:106 prefs/MousePrefs.cpp:124
msgid "Right-Click"
msgstr "Îεξί-Îλικ"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:106 prefs/MousePrefs.cpp:124
msgid "Zoom out one step"
msgstr "ΣμίκÏÏ
νÏη Îνα βήμα"
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:125
msgid "Right-Drag"
msgstr "Îεξί-ΣÏÏÏιμο"
@@ -8153,8 +7999,7 @@ msgstr "Shift-ÎÏιÏÏεÏÏ-ΣÏÏÏιμο"
msgid "Time shift all clips in track"
msgstr ""
-#: prefs/MousePrefs.cpp:113
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:113 prefs/MousePrefs.cpp:120
msgid "Ctrl-Left-Drag"
msgstr "Ctrl-ÎÏιÏÏεÏÏ-ΣÏÏÏιμο"
@@ -8170,9 +8015,7 @@ msgstr "Îλλαγή ΠοÏÎµÎ¯Î±Ï ÎνÏαÏηÏ"
msgid "Change Sample"
msgstr "Îλλαγή ÎείγμαÏοÏ"
-#: prefs/MousePrefs.cpp:117
-#: prefs/MousePrefs.cpp:118
-#: prefs/MousePrefs.cpp:119
+#: prefs/MousePrefs.cpp:117 prefs/MousePrefs.cpp:118 prefs/MousePrefs.cpp:119
#: prefs/MousePrefs.cpp:120
msgid "Pencil"
msgstr "ÎολÏβι"
@@ -8193,26 +8036,20 @@ msgstr "Îλλαγή ΠολλÏν ÎειγμάÏÏν"
msgid "Change ONE Sample only"
msgstr "Îλλαγή ÎÎÎΣ μÏνο δείγμαÏοÏ"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123 prefs/MousePrefs.cpp:124
#: prefs/MousePrefs.cpp:125
msgid "Multi"
msgstr "ΠολλαÏλÏÏ"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123
msgid "same as select tool"
msgstr "Ïμοια με Ïο εÏγαλείο εÏιλογήÏ"
-#: prefs/MousePrefs.cpp:124
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:124 prefs/MousePrefs.cpp:125
msgid "same as zoom tool"
msgstr "Ïμοια με Ïο εÏγαλείο εÏÏίαÏηÏ"
-#: prefs/MousePrefs.cpp:127
-#: prefs/MousePrefs.cpp:128
-#: prefs/MousePrefs.cpp:129
+#: prefs/MousePrefs.cpp:127 prefs/MousePrefs.cpp:128 prefs/MousePrefs.cpp:129
msgid "Any"
msgstr "ÎÏοιοδήÏοÏε"
@@ -8241,10 +8078,65 @@ msgstr "Ctrl-ΠεÏιÏÏÏοÏή ΤÏοÏοÏ"
msgid "Zoom in or out"
msgstr "ÎεγÎθÏ
νÏη ή ΣμίκÏÏ
νÏη"
+#: prefs/AudioIOPrefs.cpp:165
+#, fuzzy
+msgid "Length of preview:"
+msgstr "ÎιάÏκεια ÏίλÏÏοÏ
:"
+
+#: prefs/AudioIOPrefs.cpp:173
+#, fuzzy
+msgid "Preview before cut region:"
+msgstr "ÎναÏαÏαγÏγή ÏÏιν Ïην ÏεÏιοÏή αÏοκοÏήÏ:"
+
+#: prefs/AudioIOPrefs.cpp:175
+#, fuzzy
+msgid "Preview after cut region:"
+msgstr "ÎναÏαÏαγÏγή μεÏά Ïην ÏεÏιοÏή αÏοκοÏήÏ:"
+
+#: prefs/AudioIOPrefs.cpp:197
+msgid "Seek Time when playing"
+msgstr ""
+
#: prefs/PrefsDialog.cpp:89
msgid "Audacity Preferences"
msgstr "Î ÏοÏιμήÏÎµÎ¹Ï ÏοÏ
Audacity"
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:84
+msgid "When saving a project that depends on other audio files"
+msgstr "ÎÏαν αÏοθηκεÏεÏαι μία εÏγαÏία ÏοÏ
εξαÏÏάÏαι αÏÏ Î¬Î»Î»Î± αÏÏεία audio"
+
+#: prefs/FileFormatPrefs.cpp:87
+msgid "Always © all audio into project (safest)"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:88
+msgid "&Do not copy any audio"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:87
+msgid "&Ask user"
+msgstr "&ÎÏÏÏηÏη ÏÏήÏÏη"
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr "ÎÏ
ÏÏμαÏη αÏοθήκεÏ
Ïη"
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr "ÎÏ
ÏÏμαÏη αÏοθήκεÏ
Ïη ενÏÏ Î±Î½ÏίγÏαÏοÏ
ÏÎ·Ï ÎµÏγαÏÎ¯Î±Ï Ïε ξεÏÏÏιÏÏÏ Ïάκελο"
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr "λεÏÏά"
+
#: prefs/QualityPrefs.cpp:73
msgid "Rectangle"
msgstr "ÎÏθογÏνιο"
@@ -8269,46 +8161,47 @@ msgstr "Î ÏοεÏιλεγμÎÎ½Î¿Ï Î¡Ï
θμÏÏ ÎειγμαÏοληÏίαÏ:"
msgid "Default Sample Format:"
msgstr "Î ÏοεÏιλεγμÎνη ÎοÏÏή ÎείγμαÏοÏ:"
-#: prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "ÎεÏαÏÏοÏÎÎ±Ï ÏÏ
Î¸Î¼Î¿Ï Î´ÎµÎ¹Î³Î¼Î±ÏοληÏÎ¯Î±Ï ÏÏαγμαÏÎ¹ÎºÎ¿Ï ÏÏÏνοÏ
:"
-
-#: prefs/QualityPrefs.cpp:139
-msgid "High-quality sample rate converter:"
-msgstr "Î¥ÏÎ·Î»Î®Ï ÏιÏÏÏÏηÏÎ±Ï Î¼ÎµÏαÏÏοÏÎÎ±Ï ÏÏ
Î¸Î¼Î¿Ï Î´ÎµÎ¹Î³Î¼Î±ÏοληÏίαÏ:"
-
-#: prefs/QualityPrefs.cpp:142
-msgid "Real-time dither:"
-msgstr "Dither ÏÏαγμαÏÎ¹ÎºÎ¿Ï ÏÏÏνοÏ
:"
-
-#: prefs/QualityPrefs.cpp:145
-msgid "High-quality dither:"
-msgstr "Î¥ÏÎ·Î»Î®Ï Î Î¹ÏÏÏÏηÏÎ±Ï dither:"
-
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
-msgstr "ÎεÏαÏÏοÏή"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+#, fuzzy
+msgid "Sample Rate Converter:"
msgstr "ÎεÏαÏÏοÏÎÎ±Ï Î¡Ï
Î¸Î¼Î¿Ï ÎειγμαÏοληÏίαÏ"
#: prefs/QualityPrefs.cpp:164
msgid "Dither"
msgstr "ÎμÏιÏαλάνÏεÏ
Ïη"
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
-msgstr "Î ÏαγμαÏικÏÏ ÏÏÏνοÏ:"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:149
+msgid "Overdub: &Play other tracks while recording new one"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:150
+#, fuzzy
+msgid "&Hardware Playthrough: Play new track while recording it"
+msgstr "Playthrough &ΣÏ
ÏκεÏ
Î®Ï (ÎναÏαÏαγÏγή ÏοÏ
νÎοÏ
κομμαÏÎ¹Î¿Ï ÎºÎ±Î¸ÏÏ Î±Ï
ÏÏ Î·ÏογÏαÏείÏαι)"
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
-msgstr "Î¥Ïηλή ÏοιÏÏηÏα:"
+#: prefs/AudioIOPrefs.cpp:157
+msgid "&Software Playthrough: Play new track while recording or monitoring"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:160
+msgid "(uncheck when recording \"stereo mix\")"
+msgstr ""
-#: prefs/SmartRecordPrefs.cpp:54
-#: prefs/SmartRecordPrefs.cpp:55
-msgid "Smart Recording"
-msgstr "ÎξÏ
Ïνη ÎÏογÏάÏηÏη"
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
+msgstr ""
#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
msgid "Sound Activated Recording"
@@ -8318,23 +8211,58 @@ msgstr ""
msgid "Sound Activation Level (dB):"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:36
-#: prefs/SpectrumPrefs.cpp:37
+#: prefs/SpectrumPrefs.cpp:36 prefs/SpectrumPrefs.cpp:37
msgid "Spectrograms"
msgstr "ΦαÏμαÏογÏαÏήμαÏα"
-#: prefs/SpectrumPrefs.cpp:72
-msgid "FFT Size"
-msgstr "FFT ÎÎγεθοÏ"
-
#: prefs/SpectrumPrefs.cpp:75
msgid "8 - most wideband"
msgstr "8 - εÏ
ÏÏÏεÏο ÏάÏμα"
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:80
msgid "256 - default"
msgstr "256 - ÏÏοεÏιλογή"
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:107
msgid "32768 - most narrowband"
msgstr ""
@@ -8343,21 +8271,26 @@ msgstr ""
msgid "4096 - most narrowband"
msgstr "4096 - Ïο Ïιο μικÏÏ ÏάÏμα"
-#: prefs/SpectrumPrefs.cpp:90
-msgid "Window type:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:93
+#, fuzzy
+msgid "Window type"
msgstr "ΤÏÏÎ¿Ï ÏαÏαθÏÏοÏ
:"
#: prefs/SpectrumPrefs.cpp:125
msgid "FFT Skip Points"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:96
-msgid "Display"
-msgstr "ÎμÏάνιÏη"
-
-#: prefs/SpectrumPrefs.cpp:100
-msgid "&Grayscale"
-msgstr "ÎÎ¹Î±Î²Î±Î¸Î¼Î¯ÎµÎ¹Ï ÏοÏ
&ÎκÏι"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
+msgstr ""
#: prefs/SpectrumPrefs.cpp:103
msgid "Minimum Frequency (Hz):"
@@ -8367,16 +8300,16 @@ msgstr "ÎλάÏιÏÏη ΣÏ
ÏνÏÏηÏα (Hz):"
msgid "Maximum Frequency (Hz):"
msgstr "ÎÎγιÏÏη ΣÏ
ÏνÏÏηÏα (Hz):"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
msgstr ""
#: prefs/SpectrumPrefs.cpp:165
@@ -8387,6 +8320,14 @@ msgstr ""
msgid "Max. Number of Notes (1..128):"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:161
+msgid "&Find Notes"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Quantize Notes"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:134
msgid "The maximum frequency must be an integer"
msgstr "ΠμÎγιÏÏη ÏÏ
ÏνÏÏηÏα ÏÏÎÏει να είναι ακÎÏÎ±Î¹Î¿Ï Î±ÏιθμÏÏ"
@@ -8403,19 +8344,57 @@ msgstr "ΠελάÏιÏÏη ÏÏ
ÏνÏÏηÏα ÏÏÎÏει να είναι ακ
msgid "Minimum frequency must be at least 0 Hz"
msgstr "ΠελάÏιÏÏη ÏÏ
ÏνÏÏηÏα θα ÏÏÎÏει να είναι ÏοÏ
λάÏιÏÏον 0 Hz"
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:226 prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
+#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
msgstr ""
-#: prefs/ThemePrefs.cpp:62
-#: prefs/ThemePrefs.cpp:63
+#: prefs/SpectrumPrefs.cpp:230
+msgid "The maximum number of notes must be in the range 1..128"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:62 prefs/ThemePrefs.cpp:63
msgid "Theme"
msgstr "ÎÎμα"
+#: prefs/ThemePrefs.cpp:124
+msgid "Info"
+msgstr "ΠληÏοÏοÏίεÏ"
+
+#: prefs/ThemePrefs.cpp:91
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#: prefs/ThemePrefs.cpp:91
#, fuzzy
msgid "Theme Cache - Images && Color"
@@ -8447,81 +8426,98 @@ msgstr "ÎÏοθήκεÏ
Ïη ÎÏÏείÏν"
msgid "Load Files"
msgstr "ΦÏÏÏÏμα ÎÏÏείÏν"
-#: prefs/ThemePrefs.cpp:124
-msgid "Info"
-msgstr "ΠληÏοÏοÏίεÏ"
+#: prefs/GUIPrefs.cpp:50
+msgid "Simple"
+msgstr ""
-#: prefs/ThemePrefs.cpp:127
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
+#: prefs/GUIPrefs.cpp:72
+#, fuzzy
+msgid "&Update display while playing"
+msgstr "Î&νανÎÏÏη ÏοÏ
ΦαÏμαÏογÏαÏήμαÏÎ¿Ï ÎºÎ±Ïά Ïη διάÏκεια ÏÎ·Ï Î±Î½Î±ÏαÏαγÏγήÏ"
+
+#: prefs/GUIPrefs.cpp:80
+msgid "Automatically &fit tracks vertically zoomed"
msgstr ""
-#: prefs/ThemePrefs.cpp:132
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
+#: prefs/TracksPrefs.cpp:88
+msgid "Default View Mode:"
msgstr ""
-#: prefs/ThemePrefs.cpp:137
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:88
+msgid "&Select all audio in project, if none selected"
msgstr ""
-#: prefs/ThemePrefs.cpp:140
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:92
+#, fuzzy
+msgid "Enable cut &lines"
+msgstr "ÎνεÏγοÏοίηÏη γÏαμμÏν ÏλÎγμαÏοÏ"
+
+#: prefs/GUIPrefs.cpp:76
+msgid "Enable &dragging of left and right selection edges"
msgstr ""
-#: toolbars/ControlToolBar.cpp:174
-msgid "Pause"
-msgstr "ΠαÏÏη"
+#: prefs/GUIPrefs.cpp:104
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:177
-msgid "Play"
-msgstr "ÎναÏαÏαγÏγή"
+#: prefs/GUIPrefs.cpp:86
+msgid "Editing a &clip can move other clips"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
+#: prefs/GUIPrefs.cpp:168
+msgid "Solo Button:"
msgstr ""
-#: toolbars/ControlToolBar.cpp:182
-msgid "Stop"
-msgstr "ÎιακοÏή"
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:185
-msgid "Skip to Start"
-msgstr "ÎεÏάβαÏη ÏÏην ÎÏÏή"
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:188
-msgid "Skip to End"
-msgstr "ÎεÏάβαÏη ÏÏο ΤÎλοÏ"
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:192
-msgid "Record (Shift for Append Record)"
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
msgstr ""
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr ""
+
+#: Menus.cpp:762
+msgid "Pause"
+msgstr "ΠαÏÏη"
+
+#: Menus.cpp:761
+msgid "Stop"
+msgstr "ÎιακοÏή"
+
#: toolbars/ControlToolBar.cpp:194
#, fuzzy
msgid "Clean Speech"
msgstr "Îμιλία GSM"
-#: toolbars/ControlToolBar.cpp:530
-#: toolbars/ControlToolBar.cpp:831
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play (Shift for Loop Play)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:192
+msgid "Record (Shift for Append Record)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:530 toolbars/ControlToolBar.cpp:831
msgid "Error while opening sound device. "
msgstr "ΣÏάλμα καÏά Ïο άνοιγμα ÏÎ·Ï ÏÏ
ÏκεÏ
Î®Ï Î®ÏοÏ
"
@@ -8533,13 +8529,11 @@ msgstr ""
msgid "Recording not permitted"
msgstr "ΠεγγÏαÏή δεν εÏιÏÏÎÏεÏαι"
-#: toolbars/DeviceToolBar.cpp:113
-#: toolbars/DeviceToolBar.cpp:115
+#: toolbars/DeviceToolBar.cpp:113 toolbars/DeviceToolBar.cpp:115
msgid "Output Device"
msgstr "ΣÏ
ÏκεÏ
ή ÎξÏδοÏ
"
-#: toolbars/DeviceToolBar.cpp:134
-#: toolbars/DeviceToolBar.cpp:136
+#: toolbars/DeviceToolBar.cpp:134 toolbars/DeviceToolBar.cpp:136
msgid "Input Device"
msgstr "ΣÏ
ÏκεÏ
ή ÎιÏÏδοÏ
"
@@ -8563,29 +8557,21 @@ msgstr "ÎεγÎθÏ
νÏη"
msgid "Zoom Out"
msgstr "ΣμίκÏÏ
νÏη"
-#: toolbars/EditToolBar.cpp:156
-msgid "Zoom Toggle"
-msgstr "Îναλλαγή Î ÏοβολήÏ"
-
-#: toolbars/EditToolBar.cpp:160
-msgid "Fit Selection"
-msgstr "ΤÎÏιαÏμα ÎÏιλογήÏ"
-
#: toolbars/EditToolBar.cpp:160
msgid "Fit selection in window"
msgstr "Î ÏοÏαÏμογή εÏÎ¹Î»Î¿Î³Î®Ï ÏÏο ÏαÏάθÏ
Ïο"
#: toolbars/EditToolBar.cpp:162
-msgid "Fit Project"
-msgstr "ΤÎÏιαÏμα ÎÏγαÏίαÏ"
-
-#: toolbars/EditToolBar.cpp:162
msgid "Fit project in window"
msgstr "Î ÏοÏαÏμογή εÏγαÏÎ¯Î±Ï ÏÏο ÏαÏάθÏ
Ïο"
-#: toolbars/MeterToolBar.cpp:50
-msgid "Meter"
-msgstr "ÎεÏÏηÏήÏ"
+#: toolbars/EditToolBar.cpp:160
+msgid "Fit Selection"
+msgstr "ΤÎÏιαÏμα ÎÏιλογήÏ"
+
+#: toolbars/EditToolBar.cpp:162
+msgid "Fit Project"
+msgstr "ΤÎÏιαÏμα ÎÏγαÏίαÏ"
#: toolbars/MeterToolBar.cpp:80
#, fuzzy
@@ -8637,24 +8623,28 @@ msgstr "ΦίλÏÏο ειÏÏδοÏ
"
msgid "Input Source"
msgstr "Πηγή ÎιÏÏδοÏ
"
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:80
msgid "Selection"
msgstr "ÎÏιλογή"
-#: toolbars/SelectionBar.cpp:120
-#: toolbars/SelectionBar.cpp:177
+#: toolbars/SelectionBar.cpp:120 toolbars/SelectionBar.cpp:177
msgid "Project Rate (Hz):"
msgstr "ΡÏ
θμÏÏ ÎειγμαÏοληÏÎ¯Î±Ï ÎÏγαÏÎ¯Î±Ï (Hz):"
-#: toolbars/SelectionBar.cpp:134
-#: toolbars/SelectionBar.cpp:235
+#: toolbars/SelectionBar.cpp:134 toolbars/SelectionBar.cpp:235
msgid "Selection Start:"
msgstr "ÎÏÏή ÎÏιλογήÏ:"
-#: effects/ToneGen.cpp:299
-#: effects/ToneGen.cpp:340
-#: toolbars/SelectionBar.cpp:147
-#: toolbars/SelectionBar.cpp:241
+#: effects/ToneGen.cpp:299 effects/ToneGen.cpp:340
+#: toolbars/SelectionBar.cpp:147 toolbars/SelectionBar.cpp:241
msgid "Length"
msgstr "ÎιάÏκεια"
@@ -8662,8 +8652,7 @@ msgstr "ÎιάÏκεια"
msgid "hidden"
msgstr "κÏÏ
μμÎνο"
-#: toolbars/SelectionBar.cpp:167
-#: toolbars/SelectionBar.cpp:252
+#: toolbars/SelectionBar.cpp:167 toolbars/SelectionBar.cpp:252
msgid "Audio Position:"
msgstr "ÎÎÏη ÏοÏ
Audio:"
@@ -8688,8 +8677,7 @@ msgstr "ΤÎÎ»Î¿Ï ÎÏιλογήÏ"
msgid "Audacity %s ToolBar"
msgstr "ÎÏαμμή ÎÏγαλείÏν %s ÏοÏ
Audacity"
-#: toolbars/ToolDock.cpp:74
-#: toolbars/ToolDock.cpp:75
+#: toolbars/ToolDock.cpp:74 toolbars/ToolDock.cpp:75
msgid "ToolDock"
msgstr ""
@@ -8721,34 +8709,6 @@ msgstr "ÎÏιÏÏεÏÏ=ÎεγÎθÏ
νÏη, Îεξί=ΣμίκÏÏ
νÏη, ÎεÏ
msgid "Click and drag to move a track in time"
msgstr "Îάνε κλικ και ÏÏÏε για να μεÏακινήÏÎµÎ¹Ï Îνα κανάλι ÏÏο ÏÏÏνο"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr "ÎÏγαλεία"
-
-#: toolbars/ToolsToolBar.cpp:147
-#: toolbars/ToolsToolBar.cpp:182
-msgid "Selection Tool"
-msgstr "ÎÏγαλείο ÎÏιλογήÏ"
-
-#: toolbars/ToolsToolBar.cpp:148
-msgid "Envelope Tool"
-msgstr "ÎÏγαλείο ΠοÏÎµÎ¯Î±Ï ÎνÏαÏηÏ"
-
-#: toolbars/ToolsToolBar.cpp:149
-#: toolbars/ToolsToolBar.cpp:183
-msgid "Time Shift Tool"
-msgstr "ÎÏγαλείο ΧÏÎ¿Î½Î¹ÎºÎ®Ï ÎεÏαÏÏÏιÏηÏ"
-
-#: toolbars/ToolsToolBar.cpp:150
-#: toolbars/ToolsToolBar.cpp:185
-msgid "Zoom Tool"
-msgstr "ÎÏγαλείο Î ÏοβολήÏ"
-
-#: toolbars/ToolsToolBar.cpp:151
-#: toolbars/ToolsToolBar.cpp:184
-msgid "Draw Tool"
-msgstr "ÎÏγαλείο ΣÏεδίαÏηÏ"
-
#: toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
msgstr "ÎαÏάÏÏαÏη ΠολÏ
εÏγαλείοÏ
"
@@ -8758,24 +8718,11 @@ msgstr "ÎαÏάÏÏαÏη ΠολÏ
εÏγαλείοÏ
"
msgid "Slide Tool"
msgstr "ÎÏγαλειο_θήκη"
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr "ΠολÏ
εÏγαλείο"
-
-#: toolbars/TranscriptionToolBar.cpp:82
-msgid "Transcription"
-msgstr "ÎÏγαλεία διαÏκεÏ
ήÏ"
-
#: toolbars/TranscriptionToolBar.cpp:163
msgid "Play at selected speed"
msgstr "ÎναÏαÏαγÏÎ³Î®Ï ÏÏην εÏιλεγμÎνη ÏαÏÏÏηÏα"
-#: toolbars/TranscriptionToolBar.cpp:164
-msgid "Play-at-speed"
-msgstr "ÎναÏαÏαγÏγή-ÏÏην-ÏαÏÏÏηÏα"
-
-#: toolbars/TranscriptionToolBar.cpp:170
-#: toolbars/TranscriptionToolBar.cpp:175
+#: toolbars/TranscriptionToolBar.cpp:170 toolbars/TranscriptionToolBar.cpp:175
msgid "Playback Speed"
msgstr "ΤαÏÏÏηÏα ÎναÏαÏαγÏγήÏ"
@@ -8783,80 +8730,39 @@ msgstr "ΤαÏÏÏηÏα ÎναÏαÏαγÏγήÏ"
msgid "Adjust left selection to next onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:181
-#, fuzzy
-msgid "Left-to-On"
-msgstr "_ÎÏιλογή ÏÏη ÎιαδÏομή"
-
#: toolbars/TranscriptionToolBar.cpp:183
msgid "Adjust right selection to previous offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:184
-#, fuzzy
-msgid "Right-to-Off"
-msgstr "Îεξί ανεμιÏÏηÏάκι: ÎλειÏÏÏ"
-
#: toolbars/TranscriptionToolBar.cpp:186
msgid "Adjust left selection to next offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:187
-#, fuzzy
-msgid "Left-to-Off"
-msgstr "ÎÏιÏÏεÏÏ Î±Î½ÎµÎ¼Î¹ÏÏηÏάκι: ÎλειÏÏÏ"
-
#: toolbars/TranscriptionToolBar.cpp:189
msgid "Adjust right selection to previous onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:190
-#, fuzzy
-msgid "Right-to-On"
-msgstr "_ÎÏιλογή ÏÏη ÎιαδÏομή"
-
#: toolbars/TranscriptionToolBar.cpp:192
msgid "Select region of sound around cursor"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:193
-msgid "Select-Sound"
-msgstr "ÎÏιλογή-ÎÏοÏ
"
-
#: toolbars/TranscriptionToolBar.cpp:195
msgid "Select region of silence around cursor"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:196
-msgid "Select-Silence"
-msgstr "ÎÏιλογή-ΣιγήÏ"
-
#: toolbars/TranscriptionToolBar.cpp:198
msgid "Automatically make labels from words"
msgstr "ÎÏ
ÏÏμαÏη δημιοÏ
Ïγία εÏικεÏÏν αÏÏ Î»ÎξειÏ"
-#: toolbars/TranscriptionToolBar.cpp:199
-msgid "Make Labels"
-msgstr "ÎημιοÏ
Ïγία ÎÏικεÏÏν"
-
#: toolbars/TranscriptionToolBar.cpp:201
msgid "Add label at selection"
msgstr "Î ÏοÏθήκη εÏικÎÏÎ±Ï ÏÏην εÏιλογή"
-#: toolbars/TranscriptionToolBar.cpp:202
-msgid "Add Label"
-msgstr "Î ÏοÏθήκη ÎÏικÎÏαÏ"
-
#: toolbars/TranscriptionToolBar.cpp:204
#, fuzzy
msgid "Calibrate voicekey"
msgstr "ΡÏθμιÏη ÎνάλÏ
ÏÎ·Ï ÎθÏνηÏ"
-#: toolbars/TranscriptionToolBar.cpp:205
-#, fuzzy
-msgid "Calibrate"
-msgstr "ΡÏθμιÏη"
-
#: toolbars/TranscriptionToolBar.cpp:209
msgid "Adjust Sensitivity"
msgstr "Î ÏοÏαÏμογή ÎÏ
αιÏθηÏίαÏ"
@@ -8889,6 +8795,51 @@ msgstr ""
msgid "Key type"
msgstr "ΤÏÏÎ¿Ï ÎºÎ»ÎµÎ¹Î´Î¹Î¿Ï"
+#: toolbars/TranscriptionToolBar.cpp:164
+msgid "Play-at-speed"
+msgstr "ÎναÏαÏαγÏγή-ÏÏην-ÏαÏÏÏηÏα"
+
+#: toolbars/TranscriptionToolBar.cpp:181
+#, fuzzy
+msgid "Left-to-On"
+msgstr "_ÎÏιλογή ÏÏη ÎιαδÏομή"
+
+#: toolbars/TranscriptionToolBar.cpp:184
+#, fuzzy
+msgid "Right-to-Off"
+msgstr "Îεξί ανεμιÏÏηÏάκι: ÎλειÏÏÏ"
+
+#: toolbars/TranscriptionToolBar.cpp:187
+#, fuzzy
+msgid "Left-to-Off"
+msgstr "ÎÏιÏÏεÏÏ Î±Î½ÎµÎ¼Î¹ÏÏηÏάκι: ÎλειÏÏÏ"
+
+#: toolbars/TranscriptionToolBar.cpp:190
+#, fuzzy
+msgid "Right-to-On"
+msgstr "_ÎÏιλογή ÏÏη ÎιαδÏομή"
+
+#: toolbars/TranscriptionToolBar.cpp:193
+msgid "Select-Sound"
+msgstr "ÎÏιλογή-ÎÏοÏ
"
+
+#: toolbars/TranscriptionToolBar.cpp:196
+msgid "Select-Silence"
+msgstr "ÎÏιλογή-ΣιγήÏ"
+
+#: toolbars/TranscriptionToolBar.cpp:199
+msgid "Make Labels"
+msgstr "ÎημιοÏ
Ïγία ÎÏικεÏÏν"
+
+#: toolbars/TranscriptionToolBar.cpp:202
+msgid "Add Label"
+msgstr "Î ÏοÏθήκη ÎÏικÎÏαÏ"
+
+#: toolbars/TranscriptionToolBar.cpp:205
+#, fuzzy
+msgid "Calibrate"
+msgstr "ΡÏθμιÏη"
+
#: widgets/AButton.cpp:302
msgid " (disabled)"
msgstr "(αÏενεÏγοÏοιημÎνο)"
@@ -8905,16 +8856,14 @@ msgstr "ÎοÏ
μÏί"
# i18n-hint: One-letter abbreviation for Left, in the Pan slider
#. i18n-hint: One-letter abbreviation for Left, in VU Meter
#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
-#: widgets/ASlider.cpp:604
-#: widgets/Meter.cpp:211
+#: widgets/ASlider.cpp:604 widgets/Meter.cpp:211
msgid "L"
msgstr "L"
# i18n-hint: One-letter abbreviation for Right, in the Pan slider
#. i18n-hint: One-letter abbreviation for Right, in VU Meter
#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
-#: widgets/ASlider.cpp:607
-#: widgets/Meter.cpp:213
+#: widgets/ASlider.cpp:607 widgets/Meter.cpp:213
msgid "R"
msgstr "R"
@@ -8930,8 +8879,7 @@ msgstr "ÎÏιÏÏεÏÏ"
msgid "Right"
msgstr "Îεξί"
-#: widgets/ErrorDialog.cpp:69
-#: widgets/ErrorDialog.cpp:93
+#: widgets/ErrorDialog.cpp:69 widgets/ErrorDialog.cpp:93
msgid "Help"
msgstr "Îοήθεια"
@@ -8965,8 +8913,7 @@ msgstr "ÎαÏÎβαÏμα αÏÏείÏν WWW "
msgid "%d rows, %d columns"
msgstr "%d γÏαμμÎÏ, %d ÏÏήλεÏ"
-#: widgets/Grid.cpp:641
-#: widgets/Grid.cpp:768
+#: widgets/Grid.cpp:641 widgets/Grid.cpp:768
#, c-format
msgid "Row %d"
msgstr "ÎÏαμμή %d"
@@ -9042,8 +8989,7 @@ msgstr ""
msgid "Cancel"
msgstr ""
-#: widgets/Ruler.cpp:1138
-#: widgets/Ruler.cpp:1139
+#: widgets/Ruler.cpp:1138 widgets/Ruler.cpp:1139
msgid "Vertical Ruler"
msgstr "ÎαÏακÏÏÏ
ÏÎ¿Ï Î§Î¬ÏακαÏ"
@@ -9201,3 +9147,15 @@ msgstr ""
msgid "Could not load file: \"%s\""
msgstr "ÎδÏναÏη η ÏÏÏÏÏÏη ÏοÏ
αÏÏείοÏ
: \"%s\""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
+
diff --git a/locale/es.po b/locale/es.po
index f0459ad..2e1ca19 100644
--- a/locale/es.po
+++ b/locale/es.po
@@ -1,14 +1,14 @@
-# translation of es.commited.po to Spanish
+# translation of audacity.po to Spanish
# Copyright (C) 2004, 2007, 2008, 2009 Free Software Foundation, Inc.
#
# Antonio Paniagua Navarro <antpaniagua en gmail.com>, 2004, 2008.
# Antonio Paniagua Navarro <antpaniagua at gmail.com>, 2009.
msgid ""
msgstr ""
-"Project-Id-Version: es.commited\n"
+"Project-Id-Version: audacity\n"
"Report-Msgid-Bugs-To: audacity-translation at lists.sourceforge.net\n"
-"POT-Creation-Date: 2008-10-18 15:20+0100\n"
-"PO-Revision-Date: 2009-01-21 13:21+0100\n"
+"POT-Creation-Date: 2009-06-30 22:14+0100\n"
+"PO-Revision-Date: 2009-07-03 10:49+0200\n"
"Last-Translator: Antonio Paniagua Navarro <antpaniagua at gmail.com>\n"
"Language-Team: Spanish <es at li.org>\n"
"MIME-Version: 1.0\n"
@@ -17,25 +17,58 @@ msgstr ""
"X-Generator: KBabel 1.11.4\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: AboutDialog.cpp:143 AudacityApp.cpp:807 Menus.cpp:953
-msgid "&About Audacity..."
-msgstr "Acerca de &Audacity..."
+#: AboutDialog.cpp:143
+msgid "About Audacity..."
+msgstr "Acerca de Audacity..."
#: AboutDialog.cpp:157
msgid "OK... Audacious!"
msgstr "Ok... ¡Audaz!"
#: AboutDialog.cpp:175
-msgid "Audacity is a free program written by a team of volunteer <a href=\"http://audacity.sourceforge.net/community/developers\">developers</a> around the world. We are grateful to <a href=\"http://sourceforge.net\">SourceForge.net</a> for our project hosting. Audacity is available for Windows 98 and later, Mac OS X, Linux and other Unix-like operating systems. Older versions of Audacity are available for Mac OS 9."
-msgstr "Audacity es un programa libre escrito por un equipo de <a href=\"http://audacity.sourceforge.net/community/developers\">desarrolladores</a> voluntarios de todo el mundo. Queremos expresar nuestro agradecimiento a <a href=\"http://sourceforge.net\">SourceForge.net</a> por alojar nuestro proyecto. Audacity está diponible para Windows 98 o superior, Mac OS X, Linux y otros sistemas operativos tipo Unix. Hay versiones antiguas de Audacity disponibles también para Mac OS 9."
+msgid ""
+"Audacity is a free program written by a team of volunteer <a href=\"http://"
+"audacity.sourceforge.net/community/developers\">developers</a> around the "
+"world. We are grateful to <a href=\"http://sourceforge.net\">SourceForge."
+"net</a> for our project hosting. Audacity is available for Windows 98 and "
+"later, Mac OS X, Linux and other Unix-like operating systems. Older versions "
+"of Audacity are available for Mac OS 9."
+msgstr ""
+"Audacity es un programa libre escrito por un equipo de <a href=\"http://"
+"audacity.sourceforge.net/community/developers\">desarrolladores</a> "
+"voluntarios de todo el mundo. Queremos expresar nuestro agradecimiento a <a "
+"href=\"http://sourceforge.net\">SourceForge.net</a> por alojar nuestro "
+"proyecto. Audacity está diponible para Windows 98 o superior, Mac OS X, "
+"Linux y otros sistemas operativos tipo Unix. Hay versiones antiguas de "
+"Audacity disponibles también para Mac OS 9."
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
-msgstr "Esta es una versión beta del programa. Puede contener errores y caracterÃsticas incompletas. Dependemos de la respuesta de nuestros usuarios: envie informes de errores y peticiones de caracterÃsticas nuevas a <b>feedback at audacityteam.org</b>. Para obtener ayuda sobre el uso de Audacity, visite nuestro <a href=\"http://audacityteam.org/forum/\">foro</a>."
+msgid ""
+"This is a Beta version of the program. It may contain bugs and unfinished "
+"features. We depend on your feedback: please send bug reports and feature "
+"requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> "
+"address. For help using Audacity, please visit our <a href=\"http://"
+"audacityteam.org/forum/\">Forum</a>."
+msgstr ""
+"Esta es una versión beta del programa. Puede contener errores y caracterÃsticas "
+"incompletas. Dependemos de la respuesta de nuestros usuarios: envie informes "
+"de errores y peticiones de caracterÃsticas nuevas a nuestra "
+"<a href=\"mailto:feedback at audacityteam.org\">dirección de respuesta </a>. "
+" Para obtener ayuda sobre el uso de Audacity, visite nuestro <a href=\"http://"
+"audacityteam.org/forum/\">foro</a>."
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
-msgstr "Ãsta es una versión estable y completa de Audacity. Sin embargo, si encuentra algún error o tiene alguna sugerencia escrÃbanos a <b>feedback at audacityteam.org</b>. Para obtener ayuda sobre el uso de Audacity, visite nuestro <a href=\"http://audacityteam.org/forum/\">foro</a>."
+msgid ""
+"This is a stable, completed release of the program. However, if you find a "
+"bug or have a suggestion for us, please write to our <a href=\"mailto:"
+"feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, "
+"please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgstr ""
+"Ãsta es una versión estable y completa de Audacity. Sin embargo, "
+" si encuentra algún error o tiene alguna sugerencia escrÃbanos "
+"a <a href=\"mailto:feedback at audacityteam.org\"> nuestra "
+"dirección de respuesta</a>. Para obtener ayuda sobre el uso de "
+"Audacity, visite nuestro <a href=\"http://audacityteam.org/forum/\">foro</a>."
#. i18n-hint: The translation of "translator_credits" will appear
#. in the credits in the About Audacity window. Use this to add
@@ -86,127 +119,133 @@ msgid "Special thanks:"
msgstr "Agradecimientos especiales:"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
-msgstr "<b>Audacity®</b> copyright © 1999-2008 Audacity Team. <br>El nombre <b>Audacity®</b> es una marca registrada de Dominic Mazzoni."
+msgid ""
+"<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. "
+"<br>The name <b>Audacity®</b> is a registered trademark of Dominic "
+"Mazzoni."
+msgstr ""
+"<b>Audacity®</b> copyright © 1999-2009 Audacity Team. "
+"<br>El nombre <b>Audacity®</b> es una marca registrada de Dominic "
+"Mazzoni."
-#: AboutDialog.cpp:254
+#: AboutDialog.cpp:258
msgid "Audacity"
msgstr "Audacity"
#. i18n-hint: Information about when audacity was compiled
-#: AboutDialog.cpp:300 AboutDialog.cpp:313 AboutDialog.cpp:469
+#: AboutDialog.cpp:304 AboutDialog.cpp:317 AboutDialog.cpp:468
msgid "Build Information"
msgstr "Información de compilación"
-#: AboutDialog.cpp:306 effects/AvcCompressor.cpp:674
+#: AboutDialog.cpp:310 effects/AvcCompressor.cpp:674
msgid "Enabled"
msgstr "Habilitado"
-#: AboutDialog.cpp:307
+#: AboutDialog.cpp:311
msgid "Disabled"
msgstr "Deshabilitado"
-#: AboutDialog.cpp:317
+#: AboutDialog.cpp:321
msgid "File Format Support"
msgstr "Soporte de formato de archivo"
#. i18n-hint: This is what the library (libmad) does - imports MP3 files
-#: AboutDialog.cpp:327 AboutDialog.cpp:329
+#: AboutDialog.cpp:331 AboutDialog.cpp:333
msgid "MP3 Importing"
msgstr "Importación de MP3"
-#: AboutDialog.cpp:336 AboutDialog.cpp:339
+#: AboutDialog.cpp:340 AboutDialog.cpp:343
msgid "Ogg Vorbis Import and Export"
msgstr "Importación y exportación de Ogg Vorbis"
-#: AboutDialog.cpp:343 AboutDialog.cpp:346
+#: AboutDialog.cpp:347 AboutDialog.cpp:350
msgid "ID3 tag support"
msgstr "Soporte de etiquetas ID3"
-#: AboutDialog.cpp:353 AboutDialog.cpp:356
+#: AboutDialog.cpp:357 AboutDialog.cpp:360
msgid "FLAC import and export"
msgstr "Importación y exportación de FLAC"
-#: AboutDialog.cpp:361 AboutDialog.cpp:364
+#: AboutDialog.cpp:365 AboutDialog.cpp:368
msgid "MP2 export"
msgstr "Exportación a MP2"
-#: AboutDialog.cpp:369 AboutDialog.cpp:372
+#: AboutDialog.cpp:373 AboutDialog.cpp:376
msgid "Import via QuickTime"
msgstr "Importación mediante QuickTime"
#. i18n-hint: Libraries that are essential to audacity
-#: AboutDialog.cpp:379
+#: AboutDialog.cpp:383
msgid "Core Libraries"
msgstr "Bibliotecas principales"
-#: AboutDialog.cpp:385 AboutDialog.cpp:388 AboutDialog.cpp:391
-#: AboutDialog.cpp:393
+#: AboutDialog.cpp:389 AboutDialog.cpp:392 AboutDialog.cpp:395
+#: AboutDialog.cpp:397
msgid "Sample rate conversion"
msgstr "Conversión de frecuencia de muestreo"
-#: AboutDialog.cpp:398 AboutDialog.cpp:401
+#: AboutDialog.cpp:401
msgid "Audio playback and recording"
msgstr "Reproducción y grabación de audio"
-#: AboutDialog.cpp:414
+#: AboutDialog.cpp:413
msgid "Features"
msgstr "CaracterÃsticas"
-#: AboutDialog.cpp:418 AboutDialog.cpp:421 AboutDialog.cpp:426
-#: AboutDialog.cpp:429 AboutDialog.cpp:434 AboutDialog.cpp:437
-#: AboutDialog.cpp:442 AboutDialog.cpp:445
+#: AboutDialog.cpp:417 AboutDialog.cpp:420 AboutDialog.cpp:425
+#: AboutDialog.cpp:428 AboutDialog.cpp:433 AboutDialog.cpp:436
+#: AboutDialog.cpp:441 AboutDialog.cpp:444
msgid "Plug-in support"
msgstr "Soporte de plug-in"
-#: AboutDialog.cpp:450 AboutDialog.cpp:453
+#: AboutDialog.cpp:449 AboutDialog.cpp:452
msgid "Sound card mixer support"
msgstr "Soporte de mezclador de tarjeta de sonido"
-#: AboutDialog.cpp:458 AboutDialog.cpp:461
+#: AboutDialog.cpp:457 AboutDialog.cpp:460
msgid "Pitch and Tempo Change support"
msgstr "Soporte de cambio de tono y ritmo"
-#: AboutDialog.cpp:473
+#: AboutDialog.cpp:472
msgid "Program build date: "
msgstr "Fecha de compilación del programa: "
-#: AboutDialog.cpp:476 AboutDialog.cpp:478
+#: AboutDialog.cpp:475 AboutDialog.cpp:477
msgid "Build type:"
msgstr "Tipo de compilación:"
-#: AboutDialog.cpp:476
+#: AboutDialog.cpp:475
msgid "Debug build"
msgstr "Compilación de depuración"
-#: AboutDialog.cpp:478
+#: AboutDialog.cpp:477
msgid "Release build"
msgstr "Compilación final"
#. i18n-hint: The directory audacity is installed into (on *nix systems)
-#: AboutDialog.cpp:483
+#: AboutDialog.cpp:482
msgid "Installation Prefix: "
msgstr "Prefijo de instalación: "
-#: AboutDialog.cpp:487
+#: AboutDialog.cpp:486
msgid "Settings folder: "
msgstr "Carpeta de configuración: "
-#: AboutDialog.cpp:502
+#: AboutDialog.cpp:501
msgid "GPL License"
msgstr "Licencia GPL"
-#: AudacityApp.cpp:507 Project.cpp:1844
+#: AudacityApp.cpp:677 Project.cpp:2031
#, c-format
msgid "%s is already open in another window."
msgstr "%s ya está abierto en otra ventana."
-#: AudacityApp.cpp:509 Project.cpp:1846 Project.cpp:1951 Project.cpp:2095
-#: Project.cpp:2232
+#: AudacityApp.cpp:679 Project.cpp:2033 Project.cpp:2153 Project.cpp:2301
+#: Project.cpp:2433
msgid "Error opening project"
msgstr "Error al abrir el proyecto"
-#: AudacityApp.cpp:541
+#: AudacityApp.cpp:705
#, c-format
msgid ""
"%s does not exist and could not be opened.\n"
@@ -217,55 +256,76 @@ msgstr ""
"\n"
"Ha sido eliminado del historial."
-#: AudacityApp.cpp:643
+#: AudacityApp.cpp:812
msgid "Master Gain Control"
msgstr "Control maestro de ganancia"
-#: AudacityApp.cpp:644
+#: AudacityApp.cpp:813
msgid "Input Meter"
msgstr "Medidor de entrada"
-#: AudacityApp.cpp:645
+#: AudacityApp.cpp:814
msgid "Output Meter"
msgstr "Medidor de salida"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#: AudacityApp.cpp:809
-msgid "&Preferences...\tCtrl+,"
-msgstr "&Preferencias...\tCtrl+,"
+#: AudacityApp.cpp:973 Menus.cpp:199
+msgid "&New"
+msgstr "&Nuevo"
+
+#: AudacityApp.cpp:974 Menus.cpp:203
+msgid "&Open..."
+msgstr "&Abrir..."
+
+#: AudacityApp.cpp:975
+msgid "Open &Recent..."
+msgstr "Abrir &reciente..."
-#: AudacityApp.cpp:901 AudacityApp.cpp:978
+#: AudacityApp.cpp:976 Menus.cpp:955
+msgid "&About Audacity..."
+msgstr "&Acerca de Audacity..."
+
+#: AudacityApp.cpp:977
+msgid "&Preferences..."
+msgstr "&Preferencias..."
+
+#: AudacityApp.cpp:1068 AudacityApp.cpp:1145
#, c-format
msgid "Using block size of %ld\n"
msgstr "Usando tamaño de bloque de %ld\n"
-#: AudacityApp.cpp:923 AudacityApp.cpp:993
+#: AudacityApp.cpp:1090 AudacityApp.cpp:1160
#, c-format
msgid "Unknown command line option: %s\n"
msgstr "Opción de lÃnea de comandos desconocida: %s\n"
-#: AudacityApp.cpp:1127
+#: AudacityApp.cpp:1314
msgid ""
"Audacity could not find a place to store temporary files.\n"
"Please enter an appropriate directory in the preferences dialog."
msgstr ""
-"Audacity no puede encontrar un lugar donde almacenar los archivos temporales.\n"
+"Audacity no puede encontrar un lugar donde almacenar los archivos "
+"temporales.\n"
"Indique una carpeta apropiada en la ventana de preferencias."
-#: AudacityApp.cpp:1133
-msgid "Audacity is now going to exit. Please launch Audacity again to use the new temporary directory."
-msgstr "Audacity se cerrará. Ejecute Audacity de nuevo para usar la nueva carpeta temporal."
+#: AudacityApp.cpp:1320
+msgid ""
+"Audacity is now going to exit. Please launch Audacity again to use the new "
+"temporary directory."
+msgstr ""
+"Audacity se cerrará. Ejecute Audacity de nuevo para usar la nueva carpeta "
+"temporal."
-#: AudacityApp.cpp:1165
+#: AudacityApp.cpp:1352
msgid ""
"Running two copies of Audacity simultaneously may cause\n"
"data loss or cause your system to crash.\n"
"\n"
msgstr ""
-"Ejecutar dos copias de Audacity simultáneamente puede provocar pérdidas de datos o provocar un bloqueo del sistema.\n"
+"Ejecutar dos copias de Audacity simultáneamente puede provocar pérdidas de "
+"datos o provocar un bloqueo del sistema.\n"
"\n"
-#: AudacityApp.cpp:1172
+#: AudacityApp.cpp:1359
msgid ""
"Audacity was not able to lock the temporary files directory.\n"
"This folder may be in use by another copy of Audacity.\n"
@@ -273,49 +333,51 @@ msgstr ""
"Audacity no ha podido bloquear la carpeta de archivos temporales.\n"
"Esta carpeta puede estar siendo utilizada por otra copia de Audacity.\n"
-#: AudacityApp.cpp:1174
+#: AudacityApp.cpp:1361
msgid "Do you still want to start Audacity?"
msgstr "¿Aún desea ejecutar Audacity?"
-#: AudacityApp.cpp:1176
+#: AudacityApp.cpp:1363
msgid "Error locking temporary folder"
msgstr "Error al bloquear la carpeta temporal"
-#: AudacityApp.cpp:1214
+#: AudacityApp.cpp:1401
msgid "The system has detected that another copy of Audacity is running.\n"
msgstr ""
"El sistema ha detectado que ya se está ejecutando otra copia de Audacity.\n"
"\n"
-#: AudacityApp.cpp:1216
+#: AudacityApp.cpp:1403
msgid ""
"Use the New or Open commands in the currently running Audacity\n"
"process to open multiple projects simultaneously.\n"
-msgstr "Utilice la opción Nuevo o Abrir en la copia de Audacity que ya se está ejecutando para abrir múltiples proyectos simultáneamente.\n"
+msgstr ""
+"Utilice la opción Nuevo o Abrir en la copia de Audacity que ya se está "
+"ejecutando para abrir múltiples proyectos simultáneamente.\n"
-#: AudacityApp.cpp:1217
+#: AudacityApp.cpp:1404
msgid "Audacity is already running"
msgstr "Audacity ya se está ejecutando"
-#: AudacityApp.cpp:1234
+#: AudacityApp.cpp:1421
msgid "Command-line options supported:"
msgstr "Parámetros de la lÃnea de comandos:"
#. i18n-hint: '-help' is the option and needs to stay in
#. * English. This displays a list of available options
-#: AudacityApp.cpp:1237
+#: AudacityApp.cpp:1424
msgid "\t-help (this message)"
msgstr "\t-help (este mensaje)"
#. i18n-hint '-version' needs to stay in English.
-#: AudacityApp.cpp:1239
+#: AudacityApp.cpp:1426
msgid "\t-version (display Audacity version)"
msgstr "\t-version (mostrar la versión de Audacity)"
#. i18n-hint '-test' is the option and needs to stay in
#. * English. This runs a set of automatic tests on audacity
#. * itself
-#: AudacityApp.cpp:1243
+#: AudacityApp.cpp:1430
msgid "\t-test (run self diagnostics)"
msgstr "\t-test (ejecutar diagnósticos internos)"
@@ -323,15 +385,19 @@ msgstr "\t-test (ejecutar diagnósticos internos)"
#. * English. 'nnn' is any integer number. This controls the
#. * size pieces that audacity uses when writing files to the
#. * disk
-#: AudacityApp.cpp:1248
+#: AudacityApp.cpp:1435
msgid "\t-blocksize nnn (set max disk block size in bytes)"
msgstr "\t-blocksize nnn (establecer el tamaño máximo de bloque de disco en bytes)"
-#: AudacityApp.cpp:1249
-msgid "In addition, specify the name of an audio file or Audacity project to open it."
-msgstr "Además puede especificar el nombre de un archivo de audio o un proyecto de Audacity para abrirlo."
+#: AudacityApp.cpp:1436
+msgid ""
+"In addition, specify the name of an audio file or Audacity project to open "
+"it."
+msgstr ""
+"Además puede indicar el nombre de un archivo de audio o un proyecto de "
+"Audacity para abrirlo."
-#: AudacityApp.cpp:1529
+#: AudacityApp.cpp:1747
msgid ""
"Audacity project (.AUP) files are not currently \n"
"associated with Audacity. \n"
@@ -343,15 +409,15 @@ msgstr ""
"\n"
"¿Desea asociarlos para que se abran al hacer doble clic sobre ellos?"
-#: AudacityApp.cpp:1530
+#: AudacityApp.cpp:1748
msgid "Audacity Project Files"
msgstr "Archivos de proyecto de Audacity"
-#: AudioIO.cpp:254
+#: AudioIO.cpp:261
msgid "Could not find any audio devices.\n"
msgstr "No se ha podido encontrar ningún dispositivo de audio.\n"
-#: AudioIO.cpp:255
+#: AudioIO.cpp:262
msgid ""
"You will not be able to play or record audio.\n"
"\n"
@@ -359,27 +425,47 @@ msgstr ""
"No será posible reproducir o grabar audio. \n"
"\n"
-#: AudioIO.cpp:258
+#: AudioIO.cpp:265 AudioIO.cpp:285
msgid "Error: "
msgstr "Error: "
-#: AudioIO.cpp:261
+#: AudioIO.cpp:268
msgid "Error Initializing Audio"
msgstr "Error al inicializar el audio"
-#: AudioIO.cpp:1375
-msgid "Latency problem"
-msgstr "Problema de latencia"
+#: AudioIO.cpp:281
+msgid "There was an error initializing the midi i/o layer.\n"
+msgstr "Se encontró un error al inicializar la capa de entrada/salida midi.\n"
-#: AudioIO.cpp:1375
+#: AudioIO.cpp:282
msgid ""
-"Latency setting has caused the recorded audio to be hidden before zero.\n"
+"You will not be able to play midi.\n"
+"\n"
+msgstr ""
+"No será posible reproducir sonido midi. \n"
+"\n"
+
+#: AudioIO.cpp:288
+msgid "Error Initializing Midi"
+msgstr "Error al inicializar el audio Midi"
+
+#: AudioIO.cpp:1300
+msgid ""
+"Latency Correction setting has caused the recorded audio to be hidden before "
+"zero.\n"
"Audacity has brought it back to start at zero.\n"
-"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
+"You may have to use the Time Shift Tool (<---> or F5) to drag the track to "
+"the right place."
msgstr ""
-"La configuración de latencia ha provocado que el audio grabado se oculte antes que cero.\n"
+"La configuración de la corrección de latencia ha provocado que el audio grabado se oculte antes "
+"que cero.\n"
"Audacity lo ha reubicado para que comience en cero.\n"
-"Puede utilizar la herramienta de desplazamiento en el tiempo (<--> o F5) para arrastrar la pista al lugar correcto."
+"Puede utilizar la herramienta de desplazamiento en el tiempo (<--> o F5) para arrastrar "
+"la pista al lugar correcto."
+
+#: AudioIO.cpp:1301
+msgid "Latency problem"
+msgstr "Problema de latencia"
#: AutoRecovery.cpp:54
msgid "Automatic Crash Recovery"
@@ -390,20 +476,24 @@ msgid ""
"Some projects were not saved properly the last time Audacity was run.\n"
"Fortunately, the following projects can automatically be recovered:"
msgstr ""
-"Algunos proyectos no se guardaron correctamente la última vez que se ejecutó Audacity.\n"
-"Afortunadamente, los siguientes proyectos se pueden recuperar automáticamente:"
+"Algunos proyectos no se guardaron correctamente la última vez que se ejecutó "
+"Audacity.\n"
+"Afortunadamente, los siguientes proyectos se pueden recuperar "
+"automáticamente:"
#: AutoRecovery.cpp:75
msgid "Recoverable projects"
msgstr "Proyectos recuperables"
-#: AutoRecovery.cpp:78 Tags.cpp:2041
+#: AutoRecovery.cpp:78
msgid "Name"
msgstr "Nombre"
#: AutoRecovery.cpp:84
msgid "Recovering a project will not change any files on disk before you save it."
-msgstr "La recuperación de un proyecto no realizará ningún cambio en los archivos hasta que éste sea guardado."
+msgstr ""
+"La recuperación de un proyecto no realizará ningún cambio en los archivos "
+"hasta que éste sea guardado."
#: AutoRecovery.cpp:88
msgid "Quit Audacity"
@@ -433,13 +523,13 @@ msgstr "¿Confirmar?"
msgid "Could not enumerate files in auto save directory"
msgstr "No se han podido enumerar los archivos de la carpeta de guardado automático"
-#: AutoRecovery.cpp:147 AutoRecovery.cpp:184 Menus.cpp:3045 Menus.cpp:3057
-#: Menus.cpp:5174 Project.cpp:2054 Project.cpp:3615 Project.cpp:3694
-#: TrackPanel.cpp:6385 WaveTrack.cpp:598 WaveTrack.cpp:617 WaveTrack.cpp:1058
-#: WaveTrack.cpp:1077 WaveTrack.cpp:2053 effects/Effect.cpp:513
-#: export/ExportMP2.cpp:233 prefs/DirectoriesPrefs.cpp:189
-#: prefs/KeyConfigPrefs.cpp:247 toolbars/ControlToolBar.cpp:542
-#: toolbars/ControlToolBar.cpp:871
+#: AutoRecovery.cpp:147 AutoRecovery.cpp:184 Menus.cpp:3278 Menus.cpp:3290
+#: Menus.cpp:5359 Project.cpp:2260 Project.cpp:3882 Project.cpp:3968
+#: TrackPanel.cpp:6505 WaveTrack.cpp:977 WaveTrack.cpp:996 WaveTrack.cpp:2022
+#: effects/Contrast.cpp:144 effects/Contrast.cpp:154 effects/Effect.cpp:546
+#: export/ExportFFmpeg.cpp:655 export/ExportMP2.cpp:231
+#: prefs/DirectoriesPrefs.cpp:195 prefs/KeyConfigPrefs.cpp:372
+#: toolbars/ControlToolBar.cpp:581 toolbars/ControlToolBar.cpp:916
msgid "Error"
msgstr "Error"
@@ -448,8 +538,7 @@ msgstr "Error"
msgid "Select Command"
msgstr "Seleccione un comando"
-#: BatchCommandDialog.cpp:82 BatchProcessDialog.cpp:454
-#: prefs/KeyConfigPrefs.cpp:142
+#: BatchCommandDialog.cpp:82
msgid "&Command"
msgstr "&Comando"
@@ -457,7 +546,7 @@ msgstr "&Comando"
msgid "&Edit Parameters"
msgstr "&Editar parámetros"
-#: BatchCommandDialog.cpp:91 BatchProcessDialog.cpp:455
+#: BatchCommandDialog.cpp:91
msgid "&Parameters"
msgstr "&Parámetros"
@@ -465,24 +554,26 @@ msgstr "&Parámetros"
msgid "C&hoose command"
msgstr "Seleccionar &comando"
-#: BatchCommands.cpp:477
+#: BatchCommands.cpp:455
msgid "Stereo to Mono Effect not found"
msgstr "Efecto Estéreo a Mono no encontrado"
-#: BatchCommands.cpp:497
+#: BatchCommands.cpp:475
msgid "Ogg Vorbis support is not included in this build of Audacity"
-msgstr "El soporte de archivos Ogg Vorbis no está incluido en esta versión de Audacity"
+msgstr ""
+"El soporte de archivos Ogg Vorbis no está incluido en esta versión de "
+"Audacity"
-#: BatchCommands.cpp:509
+#: BatchCommands.cpp:487
msgid "FLAC support is not included in this build of Audacity"
msgstr "Esta versión de Audacity no incluye soporte para FLAC"
-#: BatchCommands.cpp:513
+#: BatchCommands.cpp:491
#, c-format
msgid "Command %s not implemented yet"
msgstr "El comando %s no ha sido implementado aún"
-#: BatchCommands.cpp:529
+#: BatchCommands.cpp:507
#, c-format
msgid ""
"Could not set parameters of effect %s\n"
@@ -491,12 +582,12 @@ msgstr ""
"No se ha podido establecer los parámetros del efecto %s\n"
"a %s."
-#: BatchCommands.cpp:583
+#: BatchCommands.cpp:560
#, c-format
msgid "Your batch command of %s was not recognised."
msgstr "El comando de secuencia de %s no fue reconocido."
-#: BatchCommands.cpp:674
+#: BatchCommands.cpp:651
#, c-format
msgid ""
"Apply %s with parameter(s)\n"
@@ -507,11 +598,11 @@ msgstr ""
"\n"
"%s"
-#: BatchCommands.cpp:675 BatchCommands.cpp:680
+#: BatchCommands.cpp:652 BatchCommands.cpp:657
msgid "Test Mode"
msgstr "Modo de prueba"
-#: BatchCommands.cpp:679
+#: BatchCommands.cpp:656
#, c-format
msgid "Apply %s"
msgstr "Aplicar %s"
@@ -541,15 +632,13 @@ msgstr "Aplicar al &proyecto actual"
msgid "Apply to &Files..."
msgstr "Aplicar a &archivos..."
-#: BatchProcessDialog.cpp:108 BatchProcessDialog.cpp:247 Tags.cpp:2080
-#: Tags.cpp:2084 Tags.cpp:2384 Tags.cpp:2388 UploadDialog.cpp:180
+#: BatchProcessDialog.cpp:108 BatchProcessDialog.cpp:245 UploadDialog.cpp:180
#: effects/AvcCompressor.cpp:732 effects/ChangeLength.cpp:183
-#: effects/SpikeCleaner.cpp:188 effects/VST/VSTEffect.cpp:453
-#: effects/audiounits/AudioUnitEffect.cpp:887
+#: effects/SpikeCleaner.cpp:188 effects/audiounits/AudioUnitEffect.cpp:861
msgid "&Cancel"
msgstr "&Cancelar"
-#: BatchProcessDialog.cpp:146 BatchProcessDialog.cpp:191
+#: BatchProcessDialog.cpp:146 BatchProcessDialog.cpp:189
msgid "No chain selected"
msgstr "No se ha seleccionado ninguna secuencia de comandos"
@@ -558,112 +647,130 @@ msgstr "No se ha seleccionado ninguna secuencia de comandos"
msgid "Applying '%s' to current project"
msgstr "Aplicando '%s' al proyecto actual"
-#: BatchProcessDialog.cpp:200
+#: BatchProcessDialog.cpp:198
msgid "Please save and close the current project first."
msgstr "Primero debe guardar y cerrar el proyecto actual."
-#: BatchProcessDialog.cpp:206
+#: BatchProcessDialog.cpp:204
msgid "Select vocal file(s) for batch CleanSpeech Chain..."
msgstr "Seleccionar archivo(s) vocal para la secuencia de limpieza de locución..."
-#: BatchProcessDialog.cpp:207
+#: BatchProcessDialog.cpp:205
msgid "Select file(s) for batch processing..."
msgstr "Seleccionar archivo(s) para la secuencia..."
-#: BatchProcessDialog.cpp:209
-msgid "Vocal files (*.wav;*.mp3)|*.wav;*.mp3|WAV files (*.wav)|*.wav|MP3 files (*.mp3)|*.mp3"
-msgstr "Archivos vocales (*.wav;*.mp3)|*.wav;*.mp3|Archivos WAV (*.wav)|*.wav|Archivos MP3 (*.mp3)|*.mp3"
+#: BatchProcessDialog.cpp:207
+msgid ""
+"Vocal files (*.wav;*.mp3)|*.wav;*.mp3|WAV files (*.wav)|*.wav|MP3 files (*."
+"mp3)|*.mp3"
+msgstr ""
+"Archivos vocales (*.wav;*.mp3)|*.wav;*.mp3|Archivos WAV (*.wav)|*.wav|"
+"Archivos MP3 (*.mp3)|*.mp3"
-#: BatchProcessDialog.cpp:210
-msgid "All files (*.*)|*.*|WAV files (*.wav)|*.wav|AIFF files (*.aif)|*.aif|AU files (*.au)|*.au|MP3 files (*.mp3)|*.mp3|Ogg Vorbis files (*.ogg)|*.ogg|FLAC files (*.flac)|*.flac"
-msgstr "Todos los archivos (*.*)|*.*|Archivos WAV (*.wav)|*.wav|Archivos AIFF (*.aif)|*.aif|Archivos AU (*.au)|*.au|Archivos MP3 (*.mp3)|*.mp3|Archivos Ogg Vorbis (*.ogg)|*.ogg|Archivos FLAC (*.flac)|*.flac|"
+#: BatchProcessDialog.cpp:208
+msgid ""
+"All files (*.*)|*.*|WAV files (*.wav)|*.wav|AIFF files (*.aif)|*.aif|AU "
+"files (*.au)|*.au|MP3 files (*.mp3)|*.mp3|Ogg Vorbis files (*.ogg)|*.ogg|"
+"FLAC files (*.flac)|*.flac"
+msgstr ""
+"Todos los archivos (*.*)|*.*|Archivos WAV (*.wav)|*.wav|Archivos AIFF (*."
+"aif)|*.aif|Archivos AU (*.au)|*.au|Archivos MP3 (*.mp3)|*.mp3|Archivos Ogg "
+"Vorbis (*.ogg)|*.ogg|Archivos FLAC (*.flac)|*.flac|"
-#: BatchProcessDialog.cpp:231
+#: BatchProcessDialog.cpp:229
msgid "Applying..."
msgstr "Aplicando..."
-#: BatchProcessDialog.cpp:241
+#: BatchProcessDialog.cpp:239
msgid "File"
msgstr "Archivo"
-#: BatchProcessDialog.cpp:356 BatchProcessDialog.cpp:360
-#: BatchProcessDialog.cpp:361
+#: BatchProcessDialog.cpp:352 BatchProcessDialog.cpp:356
+#: BatchProcessDialog.cpp:357
msgid "Edit Chains"
msgstr "Editar secuencias de comandos"
-#: BatchProcessDialog.cpp:416
+#: BatchProcessDialog.cpp:412
msgid "&Chains"
msgstr "&Secuencias de comandos"
-#: BatchProcessDialog.cpp:435 Tags.cpp:826 Tags.cpp:1465 Tags.cpp:2064
+#: BatchProcessDialog.cpp:431 Tags.cpp:825
msgid "&Add"
msgstr "&Añadir"
-#: BatchProcessDialog.cpp:436 LabelDialog.cpp:128 Tags.cpp:827 Tags.cpp:1466
-#: Tags.cpp:2065 TrackPanel.cpp:4176
+#: BatchProcessDialog.cpp:432 LabelDialog.cpp:128 Tags.cpp:826
msgid "&Remove"
msgstr "&Eliminar"
-#: BatchProcessDialog.cpp:437
+#: BatchProcessDialog.cpp:433
msgid "Re&name"
msgstr "Re&nombrar"
-#: BatchProcessDialog.cpp:443
+#: BatchProcessDialog.cpp:439
msgid "C&hain (Double-Click or press SPACE to edit)"
msgstr "S&ecuencia de comandos (Doble clic o Espacio para editar)"
#. i18n-hint: This is the number of the command in the list
-#: BatchProcessDialog.cpp:453
-msgid "No"
-msgstr "No"
+#: BatchProcessDialog.cpp:449
+msgid "Num"
+msgstr "Num"
-#: BatchProcessDialog.cpp:459
+#: BatchProcessDialog.cpp:450 commands/CommandManager.cpp:108
+#: prefs/KeyConfigPrefs.cpp:180
+msgid "Command"
+msgstr "Commando"
+
+#: BatchProcessDialog.cpp:451 effects/Contrast.cpp:279
+msgid "Parameters"
+msgstr "Parámetros"
+
+#: BatchProcessDialog.cpp:455
msgid "&Insert"
msgstr "&Insertar"
-#: BatchProcessDialog.cpp:460
+#: BatchProcessDialog.cpp:456
msgid "De&lete"
msgstr "&Borrar"
-#: BatchProcessDialog.cpp:461
+#: BatchProcessDialog.cpp:457
msgid "Move &Up"
msgstr "D&esplazar hacia arriba"
-#: BatchProcessDialog.cpp:462
+#: BatchProcessDialog.cpp:458
msgid "Move &Down"
msgstr "&Desplazar hacia abajo"
-#: BatchProcessDialog.cpp:463
+#: BatchProcessDialog.cpp:459
msgid "De&faults"
msgstr "&Valores predeterminados"
-#: BatchProcessDialog.cpp:507
+#: BatchProcessDialog.cpp:503
msgid "- END -"
msgstr "- FIN -"
-#: BatchProcessDialog.cpp:540
+#: BatchProcessDialog.cpp:536
#, c-format
msgid "%s changed"
msgstr "%s modificado"
-#: BatchProcessDialog.cpp:541
+#: BatchProcessDialog.cpp:537
msgid "Do you want to save the changes?"
msgstr "¿Desea guardar los cambios?"
-#: BatchProcessDialog.cpp:623
+#: BatchProcessDialog.cpp:619
msgid "Enter name of new chain"
msgstr "Introduzca el nombre de la nueva secuencia de comandos"
-#: BatchProcessDialog.cpp:634
+#: BatchProcessDialog.cpp:630
msgid "Name must not be blank"
msgstr "No se puede dejar el nombre vacÃo"
-#: BatchProcessDialog.cpp:643
+#: BatchProcessDialog.cpp:639
#, c-format
msgid "Names may not contain '%c' and '%c'"
msgstr "Los nombres no pueden contener '%c' y '%c'"
-#: BatchProcessDialog.cpp:673
+#: BatchProcessDialog.cpp:669
#, c-format
msgid "Are you sure you want to delete %s?"
msgstr "¿Está seguro de desea borrar %s?"
@@ -676,175 +783,186 @@ msgstr "Eliminando dependencias"
msgid "Copying audio data into project..."
msgstr "Copiando audio dentro del proyecto..."
-#: Dependencies.cpp:223
+#: Dependencies.cpp:226
msgid ""
"Your project currently depends on the presence of other files.\n"
-"Copy audio from the following files into your project to make it self-contained?\n"
+"Copy audio from the following files into your project to make it self-"
+"contained?\n"
"This will need more disc space but is safer."
msgstr ""
"Actualmente el proyecto depende de la presencia de otros archivos.\n"
-"¿Desea copiar el audio de los archivos indicados en el interior del proyecto?\n"
+"¿Desea copiar el audio de los archivos indicados en el interior del "
+"proyecto?\n"
"Esto requiere más espacio en disco, pero resulta más seguro."
-#: Dependencies.cpp:270
+#: Dependencies.cpp:273
msgid "Project depends on other audio files"
msgstr "El proyecto depende de archivos de audio externos"
-#: Dependencies.cpp:291
+#: Dependencies.cpp:294
msgid "Project Dependencies"
msgstr "Dependencias del proyecto"
-#: Dependencies.cpp:294
+#: Dependencies.cpp:297
msgid "Audio file"
msgstr "Archivo de audio"
-#: Dependencies.cpp:296
+#: Dependencies.cpp:299
msgid "Disk space"
msgstr "Espacio de disco"
-#: Dependencies.cpp:301
+#: Dependencies.cpp:304
msgid "Copy Selected Audio Into Project"
msgstr "Copiar audio seleccionado dentro del proyecto"
-#: Dependencies.cpp:308 Dependencies.cpp:414
+#: Dependencies.cpp:311 Dependencies.cpp:417
msgid "Cancel Save"
msgstr "Cancelar guardado"
-#: Dependencies.cpp:310
+#: Dependencies.cpp:313
msgid "Do Not Copy Any Audio"
msgstr "No copiar ningún audio"
-#: Dependencies.cpp:312
+#: Dependencies.cpp:315
msgid "Copy All Audio into Project (Safer)"
msgstr "Copiar todo el audio dentro del proyecto (más seguro)"
-#: Dependencies.cpp:321 Dependencies.cpp:326
+#: Dependencies.cpp:324 Dependencies.cpp:329
msgid "Ask me"
msgstr "Preguntar"
-#: Dependencies.cpp:322
+#: Dependencies.cpp:325
msgid "Always copy all audio (safest)"
msgstr "Copiar siempre todo el audio (el más seguro)"
-#: Dependencies.cpp:323
+#: Dependencies.cpp:326
msgid "Never copy any audio"
msgstr "Nunca copiar los archivos de audio"
-#: Dependencies.cpp:325
+#: Dependencies.cpp:328
msgid "Whenever a project depends on other files:"
msgstr "Cuando un proyecto dependa de archivos externos:"
-#: Dependencies.cpp:413
-msgid "If you proceed, your project will not be saved to disk. Is this what you want?"
+#: Dependencies.cpp:416
+msgid ""
+"If you proceed, your project will not be saved to disk. Is this what you "
+"want?"
msgstr "El proyecto no será guardado en el disco. ¿Es esto lo que desea hacer?"
-#: Dependencies.cpp:453
-msgid "Your project is self-contained; it does not depend on any external audio files."
-msgstr "El proyecto contiene todos los archivos de audio; no depende de archivos externos."
+#: Dependencies.cpp:456
+msgid ""
+"Your project is self-contained; it does not depend on any external audio "
+"files."
+msgstr ""
+"El proyecto contiene todos los archivos de audio; no depende de archivos "
+"externos."
-#: Dependencies.cpp:454
+#: Dependencies.cpp:457
msgid "Dependency check"
msgstr "Comprobación de dependencia"
-#: DirManager.cpp:137
+#: DirManager.cpp:136
msgid ""
-"Warning: there is very little free disk space left on this volume.\n"
-"Please select another temporary directory in your preferences."
+"There is very little free disk space left on this volume.\n"
+"Please select another temporary directory in Preferences."
msgstr ""
-"Advertencia: hay muy poco espacio disponible en este disco.\n"
-"Seleccione otra carpeta temporal en la ventana de preferencias."
+"Hay muy poco espacio disponible en este disco.\n"
+"Seleccione otra carpeta temporal en la ventana Preferencias."
-#: DirManager.cpp:223 DirManager.cpp:254 DirManager.cpp:337
+#: DirManager.cpp:221 DirManager.cpp:252 DirManager.cpp:335
msgid "Progress"
msgstr "Progreso"
-#: DirManager.cpp:288
+#: DirManager.cpp:286
msgid "Cleaning up temporary files"
msgstr "Eliminando archivos temporales"
-#: DirManager.cpp:338
+#: DirManager.cpp:336
msgid "Saving project data files"
msgstr "Guardando archivos de datos del proyecto"
-#: DirManager.cpp:410
+#: DirManager.cpp:408
msgid "Cleaning up cache directories"
msgstr "Eliminando el contenido de las carpetas de caché"
-#: DirManager.cpp:505
+#: DirManager.cpp:503
#, c-format
msgid ""
"Audacity found an orphaned blockfile %s! \n"
-"Please consider saving and reloading the project to perform a complete project check.\n"
+"Please consider saving and reloading the project to perform a complete "
+"project check.\n"
msgstr ""
"Audacity encontró un bloque huérfano %s \n"
-"Considere la posibilidad de guardar el proyecto y volverlo a cargar para realizar una comprobación completa del mismo.\n"
+"Considere la posibilidad de guardar el proyecto y volverlo a cargar para "
+"realizar una comprobación completa del mismo.\n"
#. i18n-hint: This is the pattern for filenames that are created
#. when a file needs to be backed up to a different name. For
#. example, mysong would become mysong-old1, mysong-old2, etc.
-#: DirManager.cpp:1094
+#: DirManager.cpp:1092
#, c-format
msgid "%s-old%d"
msgstr "%s-antiguo%d"
-#: DirManager.cpp:1102
+#: DirManager.cpp:1100
msgid "Unable to open/create test file"
msgstr "No se puede abrir o crear el archivo de prueba"
-#: DirManager.cpp:1111
+#: DirManager.cpp:1109
#, c-format
msgid "Unable to remove '%s'"
msgstr "No se puede eliminar '%s'"
-#: DirManager.cpp:1116
+#: DirManager.cpp:1114
#, c-format
msgid "Renamed file: %s\n"
msgstr "Archivo renombrado: %s\n"
-#: DirManager.cpp:1160
+#: DirManager.cpp:1164
#, c-format
msgid "Unable to rename '%s' to '%s'"
msgstr "No se puede renombrar '%s' a '%s'"
-#: DirManager.cpp:1183
+#: DirManager.cpp:1181
#, c-format
msgid "Changed block %s to new alias name\n"
msgstr "Bloque %s cambiado al nuevo alias\n"
-#: DirManager.cpp:1224 DirManager.cpp:1515
+#: DirManager.cpp:1247 DirManager.cpp:1538
msgid "Inspecting project file data..."
msgstr "Inspeccionando los datos de archivos del proyecto..."
-#: DirManager.cpp:1240
+#: DirManager.cpp:1263
#, c-format
msgid "Orphaned blockfile: (%s)"
msgstr "Bloque huérfano: (%s)"
-#: DirManager.cpp:1265
+#: DirManager.cpp:1288
#, c-format
msgid "Missing alias file: (%s)"
msgstr "Archivo de alias perdido: (%s)"
-#: DirManager.cpp:1285
+#: DirManager.cpp:1308
#, c-format
msgid "Missing summary file: (%s.auf)"
msgstr "Archivo de resumen perdido: (%s.auf)"
-#: DirManager.cpp:1305
+#: DirManager.cpp:1328
#, c-format
msgid "Missing data file: (%s.au)"
msgstr "Archivo de datos perdido: (%s.au)"
-#: DirManager.cpp:1319
+#: DirManager.cpp:1342
msgid ""
"Project check found inconsistencies inspecting the loaded project data;\n"
-"click 'Details' for a complete list of errors, or 'OK' to proceed to more options."
+"click 'Details' for a complete list of errors, or 'OK' to proceed to more "
+"options."
msgstr ""
"La comprobación del proyecto encontró inconsistencias al revisar \n"
"los datos del proyecto. Haga clic en 'Detalles' para obtener una \n"
"lista completa de errores, o 'Aceptar' para acceder a más opciones."
-#: DirManager.cpp:1331
+#: DirManager.cpp:1354
#, c-format
msgid ""
"Project check found %d orphaned blockfile[s]. These files are\n"
@@ -856,25 +974,25 @@ msgstr ""
"como residuo de algún bloqueo del sistema o algún otro error. \n"
"Deben ser borrados para que dejen de ocupar espacio innecesariamente."
-#: DirManager.cpp:1336
+#: DirManager.cpp:1359
msgid "Delete orphaned files [safe and recommended]"
msgstr "Borrar archivos huérfanos (seguro y recomendado)"
-#: DirManager.cpp:1337
+#: DirManager.cpp:1360
msgid "Continue without deleting; silently work around the extra files"
msgstr "Continuar sin borrar; evitar discretamente los archivos extra"
-#: DirManager.cpp:1338
+#: DirManager.cpp:1361
msgid "Close project immediately with no changes"
msgstr "Cerrar el proyecto inmediatamente sin guardar cambios"
-#: DirManager.cpp:1340 DirManager.cpp:1375 DirManager.cpp:1421
-#: DirManager.cpp:1463 export/Export.cpp:576 export/Export.cpp:597
-#: export/Export.cpp:616 widgets/Warning.cpp:55
+#: DirManager.cpp:1363 DirManager.cpp:1398 DirManager.cpp:1444
+#: DirManager.cpp:1486 export/Export.cpp:581 export/Export.cpp:602
+#: export/Export.cpp:621 widgets/Warning.cpp:53
msgid "Warning"
msgstr "Advertencia"
-#: DirManager.cpp:1366
+#: DirManager.cpp:1389
#, c-format
msgid ""
"Project check detected %d input file[s] being used in place\n"
@@ -891,38 +1009,40 @@ msgstr ""
"sólo para esta sesión o cerrar el proyecto e intentar recuperar esos\n"
"archivos a mano."
-#: DirManager.cpp:1371
+#: DirManager.cpp:1394
msgid "Replace missing data with silence [permanent upon save]"
msgstr "Reemplaza datos perdidos con silencios (permanente al guardar)"
-#: DirManager.cpp:1372 DirManager.cpp:1460
+#: DirManager.cpp:1395 DirManager.cpp:1483
msgid "Temporarily replace missing data with silence [this session only]"
msgstr "Reemplaza temporalmente datos perdidos con silencio (solo esta sesión)"
-#: DirManager.cpp:1373 DirManager.cpp:1419 DirManager.cpp:1461
+#: DirManager.cpp:1396 DirManager.cpp:1442 DirManager.cpp:1484
msgid "Close project immediately with no further changes"
msgstr "Cerrar el proyecto inmediatamente sin más cambios"
-#: DirManager.cpp:1412
+#: DirManager.cpp:1435
#, c-format
msgid ""
"Project check detected %d missing summary file[s] (.auf).\n"
"Audacity can fully regenerate these summary files from the\n"
"original audio data in the project."
msgstr ""
-"La comprobación del proyecto encontró %d archivo(s) de resumen (.auf) perdidos.\n"
-"Audacity puede regenerar esos resúmenes a partir de los datos originales del \n"
+"La comprobación del proyecto encontró %d archivo(s) de resumen (.auf) "
+"perdidos.\n"
+"Audacity puede regenerar esos resúmenes a partir de los datos originales "
+"del \n"
"proyecto."
-#: DirManager.cpp:1417
+#: DirManager.cpp:1440
msgid "Regenerate summary files [safe and recommended]"
msgstr "Regenerar archivos de resumen (seguro y recomendado)"
-#: DirManager.cpp:1418
+#: DirManager.cpp:1441
msgid "Fill in silence for missing display data [this session only]"
msgstr "Rellena con silencio los datos perdidos (sólo esta sesión)"
-#: DirManager.cpp:1454
+#: DirManager.cpp:1477
#, c-format
msgid ""
"Project check detected %d missing audio data blockfile[s] (.au), \n"
@@ -933,34 +1053,36 @@ msgid ""
"session only, or close the project now and try to restore the\n"
"missing data by hand."
msgstr ""
-"La comprobación del proyecto encontró %d bloque(s) de datos de audio (.au), \n"
+"La comprobación del proyecto encontró %d bloque(s) de datos de audio (."
+"au), \n"
"probablemente por algún error, bloqueo del sistema o un borrado accidental.\n"
"No hay manera de recuperar esos datos automáticamente; puede optar por \n"
-"rellenar permanentemente esos espacios con silencio, rellenarlo temporalmente\n"
+"rellenar permanentemente esos espacios con silencio, rellenarlo "
+"temporalmente\n"
"sólo para esta sesión o cerrar el proyecto e intentar recuperar esos\n"
"datos a mano."
-#: DirManager.cpp:1459
+#: DirManager.cpp:1482
msgid "Replace missing data with silence [permanent immediately]"
msgstr "Reemplaza datos perdidos con silencios (permanente de inmediato)"
-#: DirManager.cpp:1487
+#: DirManager.cpp:1510
msgid "Cleaning up unused directories in project data..."
msgstr "Eliminando carpetas no utilizadas en los datos del proyecto..."
-#: DirManager.cpp:1558
+#: DirManager.cpp:1587
msgid "Caching audio"
msgstr "Almacenando audio"
-#: DirManager.cpp:1559
+#: DirManager.cpp:1588
msgid "Caching audio into memory..."
msgstr "Almacenando audio en memoria..."
-#: DirManager.cpp:1592
+#: DirManager.cpp:1623
msgid "Saving recorded audio"
msgstr "Guardando el audio grabado"
-#: DirManager.cpp:1593
+#: DirManager.cpp:1624
msgid "Saving recorded audio to disk..."
msgstr "Guardando en disco el audio grabado..."
@@ -968,230 +1090,294 @@ msgstr "Guardando en disco el audio grabado..."
msgid "Rectangular"
msgstr "Rectangular"
-#: FFmpeg.cpp:36
+#: FFmpeg.cpp:38
msgid "FFmpeg support not compiled in"
msgstr "Soporte de FFmpeg no incluido en la compilación"
-#: FFmpeg.cpp:101
+#: FFmpeg.cpp:103
msgid ""
-"FFmpeg was configured in Preferences and successfully loaded before, \n"
+"FFmpeg was configured in Preferences and successfully loaded "
+"before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
-"FFmpeg fue configurado en las Preferencias y cargado correctamente, \n"
-"pero esta vez Audacity no logro cargarlo al iniciar. \n"
+"FFmpeg fue configurado en las Preferencias y cargado correctamente "
+", \n"
+"pero esta vez Audacity no logró cargarlo al iniciar. \n"
"\n"
-"Acceda a Preferencias > Importar/Exportar para reconfigurarlo."
+"Acceda a Preferencias > Bibliotecas para configurarlo de nuevo."
-#: FFmpeg.cpp:104
+#: FFmpeg.cpp:106
msgid "FFmpeg startup failed"
msgstr "Fallo al iniciar FFmpeg"
-#: FFmpeg.cpp:115
+#: FFmpeg.cpp:114
msgid "FFmpeg library not found"
msgstr "Biblioteca FFmpeg no encontrada"
-#: FFmpeg.cpp:170
+#: FFmpeg.cpp:408
msgid "Locate FFmpeg"
msgstr "Localizar FFmpeg"
-#: FFmpeg.cpp:190
+#: FFmpeg.cpp:428
#, c-format
msgid "Audacity needs the file %s to import and export audio via FFmpeg."
-msgstr "Audacity necesita el archivo %s para importar y exportar audio mediante FFmpeg."
+msgstr ""
+"Audacity necesita el archivo %s para importar y exportar audio mediante "
+"FFmpeg."
-#: FFmpeg.cpp:196 export/ExportMP3.cpp:562
+#: FFmpeg.cpp:434 export/ExportMP3.cpp:562
#, c-format
msgid "Location of %s:"
msgstr "Ubicación de %s:"
-#: FFmpeg.cpp:205 export/ExportMP3.cpp:571
+#: FFmpeg.cpp:443 export/ExportMP3.cpp:571
#, c-format
msgid "To find %s, click here -->"
msgstr "Para buscar %s, haga clic aquà -->"
-#: FFmpeg.cpp:211 export/ExportMP3.cpp:577
+#: FFmpeg.cpp:449 export/ExportMP3.cpp:577
msgid "Browse..."
msgstr "Explorar..."
-#: FFmpeg.cpp:212
+#: FFmpeg.cpp:450
msgid "To get a free copy of FFmpeg, click here -->"
msgstr "Para obtener una copia gratuita de FFmpeg, haga clic aquà -->"
-#: FFmpeg.cpp:215 export/ExportMP3.cpp:579
+#: FFmpeg.cpp:451 export/ExportMP3.cpp:579
msgid "Download"
msgstr "Descargar"
#. i18n-hint: It's asking for the location of a file, for
#. example, "Where is lame_enc.dll?" - you could translate
#. "Where would I find the file %s" instead if you want.
-#: FFmpeg.cpp:235 export/ExportMP3.cpp:601
+#: FFmpeg.cpp:473 export/ExportMP3.cpp:601
#, c-format
msgid "Where is %s?"
msgstr "¿Dónde está %s?"
-#: FFmpeg.cpp:407
+#: FFmpeg.cpp:643
msgid "Failed to find compatible FFmpeg libraries"
msgstr "No se ha podido encontrar bibliotecas compatibles con FFmpeg"
-#: FFmpeg.h:95
+#: FFmpeg.h:97
msgid "FFmpeg not found"
msgstr "FFmpeg no encontrada"
-#: FFmpeg.h:101
+#: FFmpeg.h:111
msgid ""
-"Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+"Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
-"Audacity usar las bibiliotecas FFmpeg para importar un archivo de audio,\n"
-"pero no se encontraron.\n"
-"para usar las caracterÃsticas de importación de FFmpeg acceda a Preferencias->Importar/Exportar\n"
-"e indique a Audacty dónde encontrar estas bibliotecas."
+"Audacity intentó utilizar FFmpeg para importar un archivo de audio,\n"
+"pero no se encontraron las bibliotecas necesarias.\n"
+"\n"
+"Ppara usar las caracterÃsticas de importación de FFmpeg acceda a Preferencias > Bibliotecas\n"
+"para descargar o localizar las bibliotecas FFmpeg."
-#: FFmpeg.h:109
+#: FFmpeg.h:119
msgid "Do not show this warning again"
msgstr "No volver a mostrar este aviso"
-#: FFmpeg.h:251
-msgid "Only avformat.dll|*avformat*.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
-msgstr "Sólo avformat.dll|avformat*.dll|Bibliotecas enlazadas dinámicamente (*.dll)|*.dll| Todos los archivos (*.*)|*"
+#: FFmpeg.h:264
+msgid ""
+"Only avformat.dll|*avformat*.dll|Dynamically Linked Libraries (*.dll)|*.dll|"
+"All Files (*.*)|*"
+msgstr ""
+"Sólo avformat.dll|avformat*.dll|Bibliotecas enlazadas dinámicamente (*.dll)|"
+"*.dll| Todos los archivos (*.*)|*"
-#: FFmpeg.h:268
+#: FFmpeg.h:297
msgid "Dynamic Libraries (*.dylib)|*.dylib|All Files (*)|*"
msgstr "Bibliotecas dinámicas (*.dylib)|*.dylib|Todos los archivos (*)|*"
-#: FFmpeg.h:266
-msgid "Only libavformat.so|libavformat.so*|Dynamically Linked Libraries (*.so*)|*.so*|All Files (*)|*"
-msgstr "Sólo libavformat.so|libavformat.so*|Bibliotecas enlazadas dinámicamente (*.so*)|*.so*|Todos los archivos (*)|*"
+#: FFmpeg.h:324
+msgid ""
+"Only libavformat.so|libavformat.so*|Dynamically Linked Libraries (*.so*)|*."
+"so*|All Files (*)|*"
+msgstr ""
+"Sólo libavformat.so|libavformat.so*|Bibliotecas enlazadas dinámicamente (*."
+"so*)|*.so*|Todos los archivos (*)|*"
-#: FreqWindow.cpp:103
+#: FreqWindow.cpp:107
msgid "Frequency Analysis"
msgstr "Análisis de frecuencia"
-#: FreqWindow.cpp:139 TrackPanel.cpp:556 prefs/GUIPrefs.cpp:156
+#: FreqWindow.cpp:163 TrackPanel.cpp:611 prefs/TracksPrefs.cpp:58
msgid "Spectrum"
msgstr "Espectro"
-#: FreqWindow.cpp:140
+#: FreqWindow.cpp:164
msgid "Standard Autocorrelation"
msgstr "Autocorrelación estándar"
-#: FreqWindow.cpp:141
+#: FreqWindow.cpp:165
msgid "Cuberoot Autocorrelation"
msgstr "Autocorrelación de raÃz cúbica"
-#: FreqWindow.cpp:142
+#: FreqWindow.cpp:166
msgid "Enhanced Autocorrelation"
msgstr "Autocorrelación mejorada"
#. i18n-hint: This is a technical term, derived from the word
#. "spectrum". Do not translate it unless you are sure you
#. know the correct technical word in your language.
-#: FreqWindow.cpp:146
+#: FreqWindow.cpp:170
msgid "Cepstrum"
msgstr "Cepstrum"
-#: FreqWindow.cpp:150 FreqWindow.cpp:154
+#: FreqWindow.cpp:174 FreqWindow.cpp:178
msgid "Algorithm"
msgstr "Algoritmo"
-#: FreqWindow.cpp:169 FreqWindow.cpp:173 HistoryWindow.cpp:79
+#: FreqWindow.cpp:193 FreqWindow.cpp:197 HistoryWindow.cpp:79
msgid "Size"
msgstr "Tamaño"
#. i18n-hint: This refers to a "window function", used in the
#. Frequency analyze dialog box.
-#: FreqWindow.cpp:183
+#: FreqWindow.cpp:207
msgid " window"
msgstr " (ventana)"
-#: FreqWindow.cpp:187 FreqWindow.cpp:191
+#: FreqWindow.cpp:211 FreqWindow.cpp:215
msgid "Function"
msgstr "Función"
-#: FreqWindow.cpp:196
+#: FreqWindow.cpp:220
msgid "Linear frequency"
msgstr "Frecuencia lineal"
-#: FreqWindow.cpp:197
+#: FreqWindow.cpp:221
msgid "Log frequency"
msgstr "Frecuencia logarÃtmica"
-#: FreqWindow.cpp:201 FreqWindow.cpp:205
+#: FreqWindow.cpp:225 FreqWindow.cpp:229
msgid "Axis"
msgstr "Eje"
-#: FreqWindow.cpp:212 LabelDialog.cpp:130 Menus.cpp:239 Menus.cpp:274
+#: FreqWindow.cpp:236 LabelDialog.cpp:130 Menus.cpp:256
msgid "&Export..."
msgstr "&Exportar..."
-#: FreqWindow.cpp:213 export/ExportCL.cpp:325 export/ExportMultiple.cpp:347
+#: FreqWindow.cpp:237 effects/Contrast.cpp:395 export/ExportCL.cpp:358
+#: export/ExportMultiple.cpp:344
msgid "Export"
msgstr "Exportar"
-#: FreqWindow.cpp:216 FreqWindow.cpp:217 widgets/ErrorDialog.cpp:161
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr "&Redibujar"
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr "Redibujar"
+
+#: FreqWindow.cpp:244 FreqWindow.cpp:245 widgets/ErrorDialog.cpp:190
msgid "Close"
msgstr "Cerrar"
-#: FreqWindow.cpp:280 FreqWindow.cpp:410 effects/AutoDuck.cpp:489
-#: effects/AutoDuck.cpp:523 effects/AutoDuck.cpp:792
-#: effects/Compressor.cpp:352 effects/Compressor.cpp:360
-#: effects/Equalization.cpp:1123 effects/Equalization.cpp:1125
-#: effects/Equalization.cpp:1133 effects/Equalization.cpp:1199
-#: effects/Equalization.cpp:1408 effects/Equalization.cpp:1419
-#: effects/Normalize.cpp:367 widgets/Meter.cpp:416
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1300
+#: effects/Equalization.cpp:1303
+msgid "Grids"
+msgstr "CuadrÃculas"
+
+#: FreqWindow.cpp:314 FreqWindow.cpp:516 effects/AutoDuck.cpp:503
+#: effects/AutoDuck.cpp:537 effects/AutoDuck.cpp:806
+#: effects/Compressor.cpp:360 effects/Compressor.cpp:368
+#: effects/Equalization.cpp:1142 effects/Equalization.cpp:1144
+#: effects/Equalization.cpp:1152 effects/Equalization.cpp:1218
+#: effects/Equalization.cpp:1434 effects/Equalization.cpp:1445
+#: effects/Normalize.cpp:372 widgets/Meter.cpp:406
msgid "dB"
msgstr "dB"
#. i18n-hint: This is the abbreviation for "Hertz", or
#. cycles per second.
-#: FreqWindow.cpp:295 FreqWindow.cpp:450 effects/Equalization.cpp:1164
-#: effects/Equalization.cpp:1195 import/ImportRaw.cpp:399
+#: FreqWindow.cpp:330 FreqWindow.cpp:556 effects/Equalization.cpp:1183
+#: effects/Equalization.cpp:1214 import/ImportRaw.cpp:409
msgid "Hz"
msgstr "Hz"
-#: FreqWindow.cpp:394
+#: FreqWindow.cpp:422
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr ""
+"Para dibujar el espectro, todas las pistas seleccionadas deben tener la "
+"misma frecuencia de muestreo."
+
+#: FreqWindow.cpp:449
+#, c-format
+msgid ""
+"Too much audio was selected. Only the first %.1f seconds of audio will be "
+"analyzed."
+msgstr ""
+"Demasiado audio seleccionado. Sólo los primeros %.1f segundos de audio "
+"serán analizados."
+
+#: FreqWindow.cpp:500
msgid "Not enough data selected."
msgstr "No hay suficientes datos seleccionados."
-#: FreqWindow.cpp:458 effects/AutoDuck.cpp:794
+#: FreqWindow.cpp:564 effects/AutoDuck.cpp:808
msgid "s"
msgstr "s"
-#: FreqWindow.cpp:787
+#: FreqWindow.cpp:898
#, c-format
msgid "Cursor: %d Hz (%s) = %d dB Peak: %d Hz (%s) = %.1f dB"
msgstr "Cursor: %d Hz (%s) = %d dB Pico: %d Hz (%s) = %.1f dB"
-#: FreqWindow.cpp:796
+#: FreqWindow.cpp:907
#, c-format
msgid "Cursor: %.4f sec (%d Hz) (%s) = %f, Peak: %.4f sec (%d Hz) (%s) = %.3f"
msgstr "Cursor: %.4f s (%d Hz) (%s) = %f, Pico: %.4f seg (%d Hz) (%s) = %.3f"
-#: FreqWindow.cpp:1069
+#: FreqWindow.cpp:1198
msgid "spectrum.txt"
msgstr "espectro.txt"
-#: FreqWindow.cpp:1071
+#: FreqWindow.cpp:1200
msgid "Export Spectral Data As:"
msgstr "Exportar datos del espectro como:"
-#: FreqWindow.cpp:1087 LabelDialog.cpp:603 Menus.cpp:2547 Project.cpp:2604
-#: Project.cpp:3667 prefs/KeyConfigPrefs.cpp:182
+#: FreqWindow.cpp:1216 LabelDialog.cpp:603 Menus.cpp:2663
+#: effects/Contrast.cpp:587 prefs/KeyConfigPrefs.cpp:319
msgid "Couldn't write to file: "
msgstr "No se ha podido escribir en el archivo: "
-#: FreqWindow.cpp:1092
+#: FreqWindow.cpp:1221
msgid "Frequency (Hz)\tLevel (dB)"
msgstr "Frecuencia (Hz)\tvolumen (dB)"
-#: FreqWindow.cpp:1098
+#: FreqWindow.cpp:1227
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "Retraso (segundos)\tFrecuencia (Hz)\tVolumen"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr "GStreamer %s: %s"
+
+#: GStreamerLoader.cpp:212
+msgid ""
+"GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and "
+"re-configure it."
+msgstr ""
+"GStreamer fue configurado en las Preferencias y cargado correctamente,\n"
+" pero esta vez Audacity no logro cargarlo al iniciar.\n"
+" Acceda a Preferencias > Bibliotecas para configurarlo "
+"de nuevo."
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr "Fallo al iniciar GStreamer"
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr "A la [[welcome|página de bienvenida]]"
@@ -1253,56 +1439,387 @@ msgid "Welcome to Audacity "
msgstr "Bienvenido a Audacity "
#: HelpText.cpp:151
-msgid "Learn how to: <ul><li>[[play|play]] an existing audio file <li>[[record|record]] your voice, LP or tape <li>[[edit|edit]] sounds <li>[[save|save or open an Audacity project]] <li>[[export|export]] to an MP3 or other audio file, or [[burncd|burn to a CD]] </ul></p><p>"
-msgstr "Aprenda como:<ul><li>[[play|Reproducir]] un archivo existente.<li> Cómo [[record|grabar]] su voz, un LP o una cinta. <li>Cómo [[edit|editar]] sonido.<li> Cómo [[save|guardar o abrir un proyecto de Audacity]]. [[export|Exportar]] en formato MP3 u otro archivo de audio o [[burncd|grabar un CD]] </ul><br><br>"
+msgid ""
+"Learn how to: <ul><li>[[play|play]] an existing audio file <li>[[record|"
+"record]] your voice, LP or tape <li>[[edit|edit]] sounds <li>[[save|save or "
+"open an Audacity project]] <li>[[export|export]] to an MP3 or other audio "
+"file, or [[burncd|burn to a CD]] </ul></p><p>"
+msgstr ""
+"Aprenda como:<ul><li>[[play|Reproducir]] un archivo existente.<li> Cómo "
+"[[record|grabar]] su voz, un LP o una cinta. <li>Cómo [[edit|editar]] sonido."
+"<li> Cómo [[save|guardar o abrir un proyecto de Audacity]]. [[export|"
+"Exportar]] en formato MP3 u otro archivo de audio o [[burncd|grabar un CD]] "
+"</ul><br><br>"
#: HelpText.cpp:159
-msgid "This screen can be viewed at any time by clicking the <i>Help</i> menu, then <i>Show Welcome Message</i>. For a detailed guide to all the Audacity menus and controls, click <i>Help</i> menu then <i>Index</i>, or download our <a href=\"http://audacity.sourceforge.net/help/documentation/manual_1.4.pdf\">full Manual</a> in PDF format.</p>"
-msgstr "Siempre puede volver a estas instrucciones haciendo clic en la opción 'Mensaje de bienvenida' del menú <i>Ayuda</i>. Para consultar una guÃa más completa de todos los menús y controles de Audacity seleccione la opción 'Ãndice' del menú <i>Ayuda</i> o <a href=\"http://audacity.sourceforge.net/help/documentation/manual_1.4.pdf\"> descargando el manual</a> en formato PDF.</p>"
+msgid ""
+"This screen can be viewed at any time by clicking the <i>Help</i> menu, then "
+"<i>Show Welcome Message</i>. For a detailed guide to all the Audacity menus "
+"and controls, click <i>Help</i> menu then <i>Index</i>, or download our <a "
+"href=\"http://audacity.sourceforge.net/help/documentation/manual_1.4.pdf"
+"\">full Manual</a> in PDF format.</p>"
+msgstr ""
+"Siempre puede volver a estas instrucciones haciendo clic en la opción "
+"'Mensaje de bienvenida' del menú <i>Ayuda</i>. Para consultar una guÃa más "
+"completa de todos los menús y controles de Audacity seleccione la opción "
+"'Ãndice' del menú <i>Ayuda</i> o <a href=\"http://audacity.sourceforge.net/"
+"help/documentation/manual_1.4.pdf\"> descargando el manual</a> en formato "
+"PDF.</p>"
#: HelpText.cpp:172
-msgid "<p><b>Opening audio files:</b> Either drag the files into the current project window, or click <i>File > Import > Audio</i>. Files can be opened into a new project window with <i>File > Open</i>. The main formats Audacity plays are <b>AIFF, AU, FLAC, M4A</b> (only on a Mac), <b>MP2/MP3, OGG Vorbis</b> and <b>WAV</b>. Click [[wma-proprietary|here]] if your file is in some other format. <b>To import a CD:</b> extract it to WAV or AIFF using iTunes, Windows Media Player 11 or similar. See our online guide: [[wiki:How_to_import_CDs|importing CDs]].</p><p> <p><b>Playing audio:</b> Press the green Play button to start playback. Press the blue Pause button once to pause playback, and again to resume. To stop, press the yellow Stop button. Spacebar can be used to either play or stop. After stopping, playback resumes from its last starting point. To change the starting point, click in the track at your desired starting point. The <b>|<<</b> and <b>>>|</b> buttons can be used to skip to the start or end of the track respectively. </p><br><br>"
-msgstr "<p><b>Abrir archivos de audio:</b> Puede arrastrar archivos existentes dentro de Audacity o usar el comando <i>Archivo > Importar > Audio</i>. <i>Archivo > Abrir</i> hace lo mismo pero abre una nueva ventana. Estos son los principales formatos de Audacity: <b>AIFF, AU, FLAC, M4A</b> (sólo en Mac), <b>MP2/MP3, Ogg Vorbis</b> y <b>WAV</b>. Haga clic [[wma-proprietary|aquÃ]] si tiene archivos en otro formato. <b>Para importar un CD:</b> extraigalo a WAV o AIFF mediante iTunes, Windows Media Player 11 o similares. Consulte nuestra guÃa online [[wiki:How to import CDs|Importando CD]]</p><p> <p><b>Reproducción de audio: </b>Pulse el botón verde de reproducción. Pulse el botón de pausa azul para parar momentáneamente y una vez más para continuar. Para detenerlo. Pulse el botón amarillo para detener la reproducción. También puede utilizar la barra espaciadora tanto para reproducir como para parar. Cuando comienza a reproducir después de una parada, ésta continua desde el desde el punto de inicio anterior. Para modificar el punto de inicio utilice los botones <b>|<<</b> y <b>>>|</b> para saltar al punto de inicio y de fin respectivamente. Haga clic en cualquier lugar de la pista para reiniciar desde ese punto.</p><br><br>"
+msgid ""
+"<p><b>Opening audio files:</b> Either drag the files into the current "
+"project window, or click <i>File > Import > Audio</i>. Files can be "
+"opened into a new project window with <i>File > Open</i>. The main "
+"formats Audacity plays are <b>AIFF, AU, FLAC, M4A</b> (only on a Mac), "
+"<b>MP2/MP3, OGG Vorbis</b> and <b>WAV</b>. Click [[wma-proprietary|here]] if "
+"your file is in some other format. <b>To import a CD:</b> extract it to WAV "
+"or AIFF using iTunes, Windows Media Player 11 or similar. See our online "
+"guide: [[wiki:How_to_import_CDs|importing CDs]].</p><p> <p><b>Playing audio:"
+"</b> Press the green Play button to start playback. Press the blue Pause "
+"button once to pause playback, and again to resume. To stop, press the "
+"yellow Stop button. Spacebar can be used to either play or stop. After "
+"stopping, playback resumes from its last starting point. To change the "
+"starting point, click in the track at your desired starting point. The <b>|"
+"<<</b> and <b>>>|</b> buttons can be used to skip to the start "
+"or end of the track respectively. </p><br><br>"
+msgstr ""
+"<p><b>Abrir archivos de audio:</b> Puede arrastrar archivos existentes "
+"dentro de Audacity o usar el comando <i>Archivo > Importar > Audio</"
+"i>. <i>Archivo > Abrir</i> hace lo mismo pero abre una nueva ventana. "
+"Estos son los principales formatos de Audacity: <b>AIFF, AU, FLAC, M4A</b> "
+"(sólo en Mac), <b>MP2/MP3, Ogg Vorbis</b> y <b>WAV</b>. Haga clic [[wma-"
+"proprietary|aquÃ]] si tiene archivos en otro formato. <b>Para importar un CD:"
+"</b> extraigalo a WAV o AIFF mediante iTunes, Windows Media Player 11 o "
+"similares. Consulte nuestra guÃa online [[wiki:How to import CDs|Importando "
+"CD]]</p><p> <p><b>Reproducción de audio: </b>Pulse el botón verde de "
+"reproducción. Pulse el botón de pausa azul para parar momentáneamente y una "
+"vez más para continuar. Para detenerlo, pulse el botón amarillo. También puede "
+"utilizar la barra espaciadora tanto para reproducir como para detener. Cuando "
+"comienza a reproducir después de una parada, ésta continua desde el desde "
+"el punto de inicio anterior. Para modificar el punto de inicio utilice los botones "
+" <b>|<<</b> y <b>>>|</b> para saltar al punto de inicio y de fin "
+"respectivamente. Haga clic en cualquier lugar de la pista para reiniciar desde "
+" ese punto.</p><br><br>"
#: HelpText.cpp:194
-msgid "<p><b>To record:</b> Set the recording device and input source, adjust the input level, then press the red Record button.</b></p><p> 1) [[inputdevice|Set Recording Device]] either in the <i>Audio I/O tab of Preferences</i> or in <i>Device Toolbar</i>. Audio I/O Preferences lets you choose stereo recording if required.<br> 2) [[inputsource|Set input source]] for that device (for example, microphone or line-in) in the dropdown selector of the <i>Mixer Toolbar</i>, or (on some systems) at Recording Device in the <i>Audio I/O tab of Preferences</i> or in <i>Device Toolbar</i>.<br> 3) [[inputlevel|Adjust input level]] using the right-hand slider on the <i>Mixer Toolbar</i>. Correct adjustment of level before recording is essential to avoid noise or distortion. </p><p> More help at: \"Recording\" <a href=\"http://audacity.sourceforge.net/help/faq\">FAQs</a>, our Tutorial <a href=\"http://www.audacityteam.org/manual/index.php?title=Tutorial_-_Your_First_Recording\"> Your First Recording</a> in the <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">Manual</a>, and our Wiki [[wiki:Recording_Tips|Recording Tips]] and [[wiki:Troubleshooting_Recordings|Troubleshooting Recordings]] pages. </p><br><br>"
-msgstr "<p><b>Para grabar:</b> Indique el dispositivo de grabación y la fuente de entrada, ajuste el nivel de entrada y pulse el botón rojo de Grabar.</b></p> <p> 1) [[inputdevice|Establezca el dispositivo de grabación]] en <i>pestaña de preferencias Audio E/S</i> o en la <i>barra de herramientas de dispositivos</i>. Las preferencias de E/S de audio le permite seleccionar una grabación estéreo si fuese necesario.<br> 2) [[inputsource|Establezca la fuente de entrada]] para ese dispositivo (por ejemplo, micrófono o entrada de lÃnea) en el selector desplegable de la <i>barra de herramientas de mezcla</i>, o (en algunos sistemas) en Dispositivo de grabación en la <i>pestaña de preferencias Audio E/S</i> o en la <i>barra de herramientas de dispositivos</i>.<br> 3) [[inputlevel|Ajuste el nivel de entrada]] mediante el control de la parte derecha de la <i>barra de herramientas de mezcla </i>Corregir el ajuste de nivel es imprescindible para prevenir la aparición de ruidos o distorsiones. </p><p> Más ayuda en la sección \"Grabación\" de nuestra <a href=\"http://audacity.sourceforge.net/help/faq\">FAQ</a>, nuestro tutorial<a href=\"http://www.audacityteam.org/manual/index.php?title=Tutorial_-_Your_First_Recording\"> Su primera grabación</a>, en el <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">manual</a> y en nuestro wiki en las páginas [[wiki:Recording_Tips|Consejos de grabación]] y [[wiki:Troubleshooting_Recordings|Resolución de problemas al grabar]]. </p><br><br>"
+msgid ""
+"<p><b>To record:</b> Set the recording device and input source, adjust the "
+"input level, then press the red Record button.</b></p><p> 1) [[inputdevice|"
+"Set Recording Device]] either in the <i>Audio I/O tab of Preferences</i> or "
+"in <i>Device Toolbar</i>. Audio I/O Preferences lets you choose stereo "
+"recording if required.<br> 2) [[inputsource|Set input source]] for that "
+"device (for example, microphone or line-in) in the dropdown selector of the "
+"<i>Mixer Toolbar</i>, or (on some systems) at Recording Device in the "
+"<i>Audio I/O tab of Preferences</i> or in <i>Device Toolbar</i>.<br> 3) "
+"[[inputlevel|Adjust input level]] using the right-hand slider on the "
+"<i>Mixer Toolbar</i>. Correct adjustment of level before recording is "
+"essential to avoid noise or distortion. </p><p> More help at: \"Recording\" "
+"<a href=\"http://audacity.sourceforge.net/help/faq\">FAQs</a>, our Tutorial "
+"<a href=\"http://www.audacityteam.org/manual/index.php?title=Tutorial_-"
+"_Your_First_Recording\"> Your First Recording</a> in the <a href=\"http://"
+"www.audacityteam.org/manual/index.php?title=Main_Page\">Manual</a>, and our "
+"Wiki [[wiki:Recording_Tips|Recording Tips]] and [[wiki:"
+"Troubleshooting_Recordings|Troubleshooting Recordings]] pages. </p><br><br>"
+msgstr ""
+"<p><b>Para grabar:</b> Indique el dispositivo de grabación y la fuente de "
+"entrada, ajuste el nivel de entrada y pulse el botón rojo de Grabar.</b></p> "
+"<p> 1) [[inputdevice|Establezca el dispositivo de grabación]] en <i>pestaña "
+"de preferencias Audio E/S</i> o en la <i>barra de herramientas de "
+"dispositivos</i>. Las preferencias de E/S de audio le permite seleccionar "
+"una grabación estéreo si fuese necesario.<br> 2) [[inputsource|Establezca la "
+"fuente de entrada]] para ese dispositivo (por ejemplo, micrófono o entrada "
+"de lÃnea) en el selector desplegable de la <i>barra de herramientas de "
+"mezcla</i>, o (en algunos sistemas) en Dispositivo de grabación en la "
+"<i>pestaña de preferencias Audio E/S</i> o en la <i>barra de herramientas de "
+"dispositivos</i>.<br> 3) [[inputlevel|Ajuste el nivel de entrada]] mediante "
+"el control de la parte derecha de la <i>barra de herramientas de mezcla </"
+"i>Corregir el ajuste de nivel es imprescindible para prevenir la aparición "
+"de ruidos o distorsiones. </p><p> Más ayuda en la sección \"Grabación\" de "
+"nuestra <a href=\"http://audacity.sourceforge.net/help/faq\">FAQ</a>, "
+"nuestro tutorial<a href=\"http://www.audacityteam.org/manual/index.php?"
+"title=Tutorial_-_Your_First_Recording\"> Su primera grabación</a>, en el <a "
+"href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page"
+"\">manual</a> y en nuestro wiki en las páginas [[wiki:Recording_Tips|"
+"Consejos de grabación]] y [[wiki:Troubleshooting_Recordings|Resolución de "
+"problemas al grabar]]. </p><br><br>"
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
-msgstr "<p>El dispositivo de entrada es el dispositivo fÃsico de sonido desde el que se está grabando. Este es elegido en \"Dispositivo de grabación\", en la <i>pestaña Audio E/S de Preferencias</i>. En Windows y en Linux, la opción Preferencias se encuentra en la parte inferior del menú Edición. En Mac, está en el menú <i>Audacity</i> También es posible seleccionar el dispositivo de grabación en la <i>barra de herramientas de dispositivos</i>, que se puede mostrar mediante la opción <i>Ver > Barra de herramientas...</i>. </p><p>De forma predeterminada, Audacity utiliza el dispositivo que está siendo utilizado por el sistema (normalmente será la tarjeta de sonido instalada), asà que habitualmente no es necesario cambiar el dispositivo de entrada. En Windows, este dispositivo de entrada actual puede ser seleccionado como \"Mapeador de sonido de Microsoft\". Si está grabando de un USB externo o un dispositivo Firewire como una mesa de mezclas USB, seleccionela explÃcitamente por su nombre como dispositivo de grabación después de conectarlo.</p><p>Regresar a [[record|Grabación de Audio]]<br></p>"
+msgid ""
+"<p>The input device is the actual physical sound device you are recording "
+"from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of "
+"Preferences</i>, On Windows and Linux, Preferences are at the bottom of the "
+"<i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also "
+"conveniently select Recording Device in the <i>Device Toolbar</i>, which can "
+"be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity "
+"uses the device currently being used by the system, (usually your inbuilt "
+"sound device), so it is often not necessary to change the input device. On "
+"Windows, this current system device can be selected as \"Microsoft Sound "
+"Mapper\". If you are recording from an external USB or Firewire device such "
+"as a USB turntable, select it explicitly by name as recording device after "
+"connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgstr ""
+"<p>El dispositivo de entrada es el dispositivo fÃsico de sonido desde el que "
+"se está grabando. Este es elegido en \"Dispositivo de grabación\", en la "
+"<i>pestaña Audio E/S de Preferencias</i>. En Windows y en Linux, la opción "
+"Preferencias se encuentra en la parte inferior del menú <i>Edición</i>. En Mac, "
+"está en el menú <i>Audacity</i> También es posible seleccionar el "
+"dispositivo de grabación en la <i>barra de herramientas de dispositivos</i>, "
+"que se puede mostrar mediante la opción <i>Ver > Barra de herramientas..."
+"</i>. </p><p>De forma predeterminada, Audacity utiliza el dispositivo que "
+"está siendo utilizado por el sistema (normalmente será la tarjeta de sonido "
+"instalada), asà que habitualmente no es necesario cambiar el dispositivo de "
+"entrada. En Windows, este dispositivo de entrada actual puede ser "
+"seleccionado como \"Mapeador de sonido de Microsoft\". Si está grabando de "
+"un USB externo o un dispositivo Firewire como una mesa de mezclas USB, "
+"seleccionela explÃcitamente por su nombre como dispositivo de grabación "
+"después de conectarlo.</p><p>Regresar a [[record|Grabación de Audio]]<br></p>"
#: HelpText.cpp:244
-msgid "<p>Select the input source (such as microphone or line-in) for your [[inputdevice|recording device]]:<br> - <b>On Windows (except Vista)</b> and <b>Linux</b>, in the dropdown selector on the right of the <i>Mixer Toolbar</i>.<br> - <b>On Windows Vista</b> and <b>Mac</b>, at Recording Device on the <i>Audio I/O tab of Preferences</i>, or in <i>Device Toolbar</i>. The source will be shown as part of the parent device (for example, <i>High Def Audio Card: Microphone</i>). If necessary, Mac users can choose the input source at Apple Audio MIDI Setup. <br><i><b>Note:</b> many USB or Firewire recording devices don't have a choice of inputs, so this step is not necessary. If in doubt, see the documentation for your device. </i></p><p> <b>Tip:</b> To <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record audio playing on the computer</a>, Windows and Linux users can choose the \"Stereo Mix\", \"Wave Out\", \"Sum\" or comparable input source. </p><p> Back to [[record|Recording Audio]] <br></p>"
-msgstr "<p>Seleccione el dispositivo de entrada (como micrófono o entrada de lÃnea) para su [inputdevice|dispositivo de grabación]]:<br> - <b>En Windows (excepto Vista)</b> y <b>Linux</b>, en el selector desplegable de la <i>barra de herramientas de mezcla</i>.<br> - <b>En Windows Vista</b> y <b>en Mac</b>, en Dispositivo de grabación en la <i>pestaña Audio E/S de Preferencias</i>, o en la<i>barra de herramientas de dispositivos</i>. La fuente se mostrará como una parte del dispositivo predecesor (por ejemplo, <i>Tarjeta de audio de alta definición:Micrófono</i>). Si es necesario, los usuarios de Mac pueden escoger la fuente de entrada en la configuración de audio MIDI de Apple. <br><i><b>Nota:</b> algunos dispositivos de grabación USB o Firewire no tienen la opción de seleccionar entradas, asà que este paso no serÃa necesario. Si tiene alguna duda, consulte la documentación de su dispositivo. </i></p><p> <b>Consejo:</b> Para <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">grabar el audio que se está escuchando en el ordenador</a>, los usuarios de Windows y Linux pueden escoger \"Mezclador estéreo\", \"salida de onda\", \"Total\" o alguna fuente de entrada similar. </p><p> Volver a [[record|Grabación de audio]] <br></p>"
+msgid ""
+"<p>Select the input source (such as microphone or line-in) for your "
+"[[inputdevice|recording device]]:<br> - <b>On Windows (except Vista)</b> and "
+"<b>Linux</b>, in the dropdown selector on the right of the <i>Mixer Toolbar</"
+"i>.<br> - <b>On Windows Vista</b> and <b>Mac</b>, at Recording Device on the "
+"<i>Audio I/O tab of Preferences</i>, or in <i>Device Toolbar</i>. The source "
+"will be shown as part of the parent device (for example, <i>High Def Audio "
+"Card: Microphone</i>). If necessary, Mac users can choose the input source "
+"at Apple Audio MIDI Setup. <br><i><b>Note:</b> many USB or Firewire "
+"recording devices don't have a choice of inputs, so this step is not "
+"necessary. If in doubt, see the documentation for your device. </i></p><p> "
+"<b>Tip:</b> To <a href=\"http://audacity.sourceforge.net/help/faq?"
+"s=recording&i=streaming\">record audio playing on the computer</a>, Windows "
+"and Linux users can choose the \"Stereo Mix\", \"Wave Out\", \"Sum\" or "
+"comparable input source. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgstr ""
+"<p>Seleccione el dispositivo de entrada (como micrófono o entrada de lÃnea) "
+"para su [inputdevice|dispositivo de grabación]]:<br> - <b>En Windows "
+"(excepto Vista)</b> y <b>Linux</b>, en el selector desplegable de la "
+"<i>barra de herramientas de mezcla</i>.<br> - <b>En Windows Vista</b> y "
+"<b>en Mac</b>, en Dispositivo de grabación en la <i>pestaña Audio E/S de "
+"Preferencias</i>, o en la<i>barra de herramientas de dispositivos</i>. La "
+"fuente se mostrará como una parte del dispositivo predecesor (por ejemplo, "
+"<i>Tarjeta de audio de alta definición:Micrófono</i>). Si es necesario, los "
+"usuarios de Mac pueden escoger la fuente de entrada en la configuración de "
+"audio MIDI de Apple. <br><i><b>Nota:</b> algunos dispositivos de grabación "
+"USB o Firewire no tienen la opción de seleccionar entradas, asà que este "
+"paso no serÃa necesario. Si tiene alguna duda, consulte la documentación de "
+"su dispositivo. </i></p><p> <b>Consejo:</b> Para <a href=\"http://audacity."
+"sourceforge.net/help/faq?s=recording&i=streaming\">grabar el audio que se "
+"está escuchando en el ordenador</a>, los usuarios de Windows y Linux pueden "
+"escoger \"Mezclador estéreo\", \"salida de onda\", \"Total\" o alguna fuente "
+"de entrada similar. </p><p> Volver a [[record|Grabación de audio]] <br></p>"
#: HelpText.cpp:267
-msgid "<p>The input level must be set correctly. If the level is too low, there will be background noise. If the level is too high, there will be distortion in the loud parts. </p><p>To set the level, either see this [[wiki:Recording_levels|illustrated online guide]] or follow these steps: <ol><li>Turn on <b>monitoring</b>. Double-click the right-hand of the two <i>VU Meters</i> (or right-click over it) and click \"Start Monitoring\". If the meters are not visible, click <i>View > Toolbars</i> and check \"Meter Toolbar\". </li><li>Adjust the input slider on the <i>Mixer Toolbar</i> (by the microphone symbol), so that the red bars in the meter come close to <b>but do not touch</b> the right edge of the scale. If you can't hear the monitored audio, go to the <i>Audio I/O tab of Preferences</i> and check \"Software Playthrough\". </li></ol></p><p> Back to [[record|Recording Audio]] <br></p>"
-msgstr "<p>El nivel de entrada debe establecerse correctamente. Si el nivel de entrada es demasiado bajo, se producirán ruidos de fondo. Si éste es demasiado alto, habrá distorsión en las partes más altas. </p><p>Para establecer el nivel, consulte la [[wiki:Recording_levels|guÃa ilustrada online]] o siga estos pasos: <ol><li>Active <b>monitorización</b>. Haga doble clic en el medidor de la derecha de la barra de herramientas de medición (o haga clic con el botón derecho y seleccione \"Comenzar monitorización\". Si los medidores no están visibles haga clic en \"Ver>Barras de herramientas</i> y active \"Barra de herramientas de medición\". </li><li>Ajuste el control de entrada en la <i>barra de herramientas de mezcla</i> (con el sÃmbolo de micrófono, hasta que las barras rojas del medidor se acerquen <b>pero no toquen</b> el borde derecho de la escala. Si no puede escuchar el audio monitorizado, acceda a <i>la pestaña Audio E/S de Preferencias</i> y active \"Reproducción a través del software\". </li></ol></p><p> Regresar a [[record|Grabación de audio]] <br></p>"
+msgid ""
+"<p>The input level must be set correctly. If the level is too low, there "
+"will be background noise. If the level is too high, there will be distortion "
+"in the loud parts. </p><p>To set the level, either see this [[wiki:"
+"Recording_levels|illustrated online guide]] or follow these steps: "
+"<ol><li>Turn on <b>monitoring</b>. Double-click the right-hand of the two "
+"<i>VU Meters</i> (or right-click over it) and click \"Start Monitoring\". If "
+"the meters are not visible, click <i>View > Toolbars</i> and check "
+"\"Meter Toolbar\". </li><li>Adjust the input slider on the <i>Mixer Toolbar</"
+"i> (by the microphone symbol), so that the red bars in the meter come close "
+"to <b>but do not touch</b> the right edge of the scale. If you can't hear "
+"the monitored audio, go to the <i>Audio I/O tab of Preferences</i> and check "
+"\"Software Playthrough\". </li></ol></p><p> Back to [[record|Recording "
+"Audio]] <br></p>"
+msgstr ""
+"<p>El nivel de entrada debe establecerse correctamente. Si el nivel de "
+"entrada es demasiado bajo, se producirán ruidos de fondo. Si éste es "
+"demasiado alto, habrá distorsión en las partes más altas. </p><p>Para "
+"establecer el nivel, consulte la [[wiki:Recording_levels|guÃa ilustrada "
+"online]] o siga estos pasos: <ol><li>Active <b>monitorización</b>. Haga "
+"doble clic en el medidor de la derecha de la barra de herramientas de "
+"medición (o haga clic con el botón derecho y seleccione \"Comenzar "
+"monitorización\". Si los medidores no están visibles haga clic en \"Ver>"
+"Barras de herramientas</i> y active \"Barra de herramientas de medición\". </"
+"li><li>Ajuste el control de entrada en la <i>barra de herramientas de "
+"mezcla</i> (con el sÃmbolo de micrófono, hasta que las barras rojas del "
+"medidor se acerquen <b>pero no toquen</b> el borde derecho de la escala. Si "
+"no puede escuchar el audio monitorizado, acceda a <i>la pestaña Audio E/S de "
+"Preferencias</i> y active \"Reproducción a través del software\". </li></"
+"ol></p><p> Regresar a [[record|Grabación de audio]] <br></p>"
#: HelpText.cpp:292
-msgid "<p>The main commands for editing audio are under the <i>Edit</i> menu (such as cut, copy and paste) and the <i>Effect</i> menu (you can do things like boost the bass, change pitch or tempo, or remove noise). </p><p> Audacity applies edits to selected areas of the audio track. To select a particular area, click in the track and drag the shaded area with the mouse. If no audio is selected, Audacity selects all the audio in the project window.</p><p> When playing or recording, the Edit and Effect menus will appear greyed out, because a moving track can't be edited. Commands can sometimes be unavailable for other reasons too. For example, you can't run effects until you have audio on the screen, and you can't paste audio until you've cut or copied it to Audacity's clipboard. </p><br><br>"
-msgstr "<p>Los principales comandos para edición de audio se encuentran en el menú <i>Editar</i> (como cortar, copiar y pegar) y el menú <i>Efecto</i> (para hacer cosas como potenciar los bajos, cambiar el tono y el ritmo o eliminar ruido). </p><p> Audacity aplica las ediciones a las zonas seleccionadas de las pistas de audio. Para seleccionar un área en particular, haga clic sobre la pista y arrastre la zona sombreada con el ratón. Si no se ha seleccionado ninguna parte de audio, Audacity selecciona todo el audio del proyecto.</p><p> Cuando se reproduce o se graba, los menús Edición y Efecto aparecerán deshabilitados ya que una pista en movimiento no puede ser editada. A veces algunos comandos no estarán disponibles por otros motivos. Por ejemplo, no se pueden aplicar efectos hasta que no hay audio en la pantalla, o no se puede pegar audio hasta que no se ha copiado o cortado una parte en el portapapeles de Audacity.</p><br><br>"
+msgid ""
+"<p>The main commands for editing audio are under the <i>Edit</i> menu (such "
+"as cut, copy and paste) and the <i>Effect</i> menu (you can do things like "
+"boost the bass, change pitch or tempo, or remove noise). </p><p> Audacity "
+"applies edits to selected areas of the audio track. To select a particular "
+"area, click in the track and drag the shaded area with the mouse. If no "
+"audio is selected, Audacity selects all the audio in the project window.</"
+"p><p> When playing or recording, the Edit and Effect menus will appear "
+"greyed out, because a moving track can't be edited. Commands can sometimes "
+"be unavailable for other reasons too. For example, you can't run effects "
+"until you have audio on the screen, and you can't paste audio until you've "
+"cut or copied it to Audacity's clipboard. </p><br><br>"
+msgstr ""
+"<p>Los principales comandos para edición de audio se encuentran en el menú "
+"<i>Editar</i> (como cortar, copiar y pegar) y el menú <i>Efecto</i> (para "
+"hacer cosas como potenciar los bajos, cambiar el tono y el ritmo o eliminar "
+"ruido). </p><p> Audacity aplica las ediciones a las zonas seleccionadas de "
+"las pistas de audio. Para seleccionar un área en particular, haga clic sobre "
+"la pista y arrastre la zona sombreada con el ratón. Si no se ha seleccionado "
+"ninguna parte de audio, Audacity selecciona todo el audio del proyecto.</"
+"p><p> Cuando se reproduce o se graba, los menús Edición y Efecto aparecerán "
+"deshabilitados ya que una pista en movimiento no puede ser editada. A veces "
+"algunos comandos no estarán disponibles por otros motivos. Por ejemplo, no "
+"se pueden aplicar efectos hasta que no hay audio en la pantalla, o no se "
+"puede pegar audio hasta que no se ha copiado o cortado una parte en el "
+"portapapeles de Audacity.</p><br><br>"
#: HelpText.cpp:311
-msgid "<p>To return later to your unfinished work in Audacity with all tracks and edits as you left them, save an Audacity project. To play your current work in other media programs or send it to others, [[export|export]] an audio file such as WAV or MP3. </p><p> <i>File > Save Project</i> saves an <b>.aup</b> project file and a <b>_data</b> folder containing the actual audio. To re-open a saved project, click <i>File > Open</i> and open the .aup file. If you save and exit more than once, an .aup.bak backup file is created, but the .aup file should always be opened if present. When your final exported file is exactly as you want, delete the project files and _data folder to save disc space. </p><p><i>File > Save Project As...</i> is for saving an empty project. It also lets you save an existing Project to a <b> new</b> name. This is the only safe way to rename a project. The .aup file and _data folder should not be moved or renamed manually. </p><p>"
-msgstr "<p>Para volver en otro momento a un trabajo no terminado manteniendo todas las pistas y ediciones tal y como se dejaron, guarde el trabajo como un proyecto de Audacity. Para reproducir el trabajo en otros programas o enviárselo a otras personas, [[export|expórtelo]] como un archivo WAV o MP3, por ejemplo.</p> <p> <i>Archivo > Guardar proyecto</i>crea un archivo de proyecto <b>aup</b> y una carpeta <b>_data</b> que contiene los archivos de audio. Para reabrir un proyecto guardado, haga clic en <i>Archivo > Abrir</i> y escoja el archivo aup. Si guarda y sale del programa más de una vez, se creará una copia de seguridad terminada en .aup.bak, pero siempre se debe utilizar el archivo .aup. Cuando el trabajo final exportado sea exactamente lo que quiere, puede borrar los archivos de proyecto y la carpeta _data para ahorrar espacio.</p><p><i>Archivo > Guardar proyecto como...</i> se utiliza para guardar un proyecto nuevo. También permite guardar un proyecto existente con un <b>nuevo</b> nombre. Este es el único método efectivo para renombrar un proyecto. El archivo .aup y la carpeta _data no deben ser movidas o renombradas manualmente. </p><p>"
+msgid ""
+"<p>To return later to your unfinished work in Audacity with all tracks and "
+"edits as you left them, save an Audacity project. To play your current work "
+"in other media programs or send it to others, [[export|export]] an audio "
+"file such as WAV or MP3. </p><p> <i>File > Save Project</i> saves an <b>."
+"aup</b> project file and a <b>_data</b> folder containing the actual audio. "
+"To re-open a saved project, click <i>File > Open</i> and open the .aup "
+"file. If you save and exit more than once, an .aup.bak backup file is "
+"created, but the .aup file should always be opened if present. When your "
+"final exported file is exactly as you want, delete the project files and "
+"_data folder to save disc space. </p><p><i>File > Save Project As...</i> "
+"is for saving an empty project. It also lets you save an existing Project to "
+"a <b> new</b> name. This is the only safe way to rename a project. The .aup "
+"file and _data folder should not be moved or renamed manually. </p><p>"
+msgstr ""
+"<p>Para volver en otro momento a un trabajo no terminado manteniendo todas "
+"las pistas y ediciones tal y como se dejaron, guarde el trabajo como un "
+"proyecto de Audacity. Para reproducir el trabajo en otros programas o "
+"enviárselo a otras personas, [[export|expórtelo]] como un archivo WAV o MP3, "
+"por ejemplo.</p> <p> <i>Archivo > Guardar proyecto</i>crea un archivo de "
+"proyecto <b>aup</b> y una carpeta <b>_data</b> que contiene los archivos de "
+"audio. Para reabrir un proyecto guardado, haga clic en <i>Archivo > "
+"Abrir</i> y escoja el archivo aup. Si guarda y sale del programa más de una "
+"vez, se creará una copia de seguridad terminada en .aup.bak, pero siempre se "
+"debe utilizar el archivo .aup. Cuando el trabajo final exportado sea "
+"exactamente lo que quiere, puede borrar los archivos de proyecto y la "
+"carpeta _data para ahorrar espacio.</p><p><i>Archivo > Guardar proyecto "
+"como...</i> se utiliza para guardar un proyecto nuevo. También permite "
+"guardar un proyecto existente con un <b>nuevo</b> nombre. Este es el único "
+"método efectivo para renombrar un proyecto. El archivo .aup y la carpeta "
+"_data no deben ser movidas o renombradas manualmente. </p><p>"
#: HelpText.cpp:335
-msgid "To hear your work in other media programs, export it to an audio file such as WAV or MP3 (some formats are [[wma-proprietary|unsupported]]). [[save|Saving an Audacity project]] creates a project file (and linked _data folder) containing all your edited tracks, so you can return to your work later. However, other programs can't read Audacity projects. </p><p> To export, click <i>File > Export</i> then choose the file format you want to export to in the \"Save as type\" dropdown. To [[burncd|burn a CD]] for standalone CD players, choose WAV or AIFF. To export as MP3, the [[wiki:Lame_Installation|Lame Encoder]] must be installed. </p><p> <i>File > Export Selection</i> exports only a selected area of audio. <i>Use File > Export Multiple</i> to export multiple files at the same time, either one for each audio track, or one for each labeled area in a single track. <i>Tracks > Add Label At Selection</i> lets you [[wiki:Splitting_recordings_into_separate_tracks|split the tracks]] from an album for multiple export as separate files. </p><br><br>"
-msgstr "Para escuchar su trabajo en otros programas debe exportarlo a un archivo de audio como WAV o MP3 (algunos formatos [[wma-propietary|no están soportados]]). [[save|Guardar un proyecto de Audacity]] crea un archivo de proyecto (enlazado con una carpeta _data) que contiene todas las pistas editadas, asà que en cualquier momento se puede recuperar el trabajo. No obstante, otros programas no pueden leer los archivos de proyecto creados con Audacity.<p><p>Para exportar, haga clic en <i>Archivo > Exportar</i> y seleccione el formato de archivo al que desea exportar en el menú desplegable \"Guardar como tipo\". Si desea [[burncd|grabar un CD]] para reproductores de CD, seleccione los formatos WAV o AIFF. Para exportar como MP3 debe tener instalado el [[Lame_Installation|codificador Lame]].</p><p> <i>Archivo > Exportar Selección</i> exporta varios archivos al mismo tiempo, ya sea uno por posta o uno por cada zona etiquetada en una sola pista. <i>Pistas > Insertar etiqueta en selección</i>le permite [[[[wiki:Splitting_recordings_into_separate_tracks|dividir las pistas]] de un álbum para realizar una exportación múltiple en archivos independientes. </p><br><br>"
+msgid ""
+"To hear your work in other media programs, export it to an audio file such "
+"as WAV or MP3 (some formats are [[wma-proprietary|unsupported]]). [[save|"
+"Saving an Audacity project]] creates a project file (and linked _data "
+"folder) containing all your edited tracks, so you can return to your work "
+"later. However, other programs can't read Audacity projects. </p><p> To "
+"export, click <i>File > Export</i> then choose the file format you want "
+"to export to in the \"Save as type\" dropdown. To [[burncd|burn a CD]] for "
+"standalone CD players, choose WAV or AIFF. To export as MP3, the [[wiki:"
+"Lame_Installation|Lame Encoder]] must be installed. </p><p> <i>File > "
+"Export Selection</i> exports only a selected area of audio. <i>Use File > "
+"Export Multiple</i> to export multiple files at the same time, either one "
+"for each audio track, or one for each labeled area in a single track. "
+"<i>Tracks > Add Label At Selection</i> lets you [[wiki:"
+"Splitting_recordings_into_separate_tracks|split the tracks]] from an album "
+"for multiple export as separate files. </p><br><br>"
+msgstr ""
+"Para escuchar su trabajo en otros programas debe exportarlo a un archivo de "
+"audio como WAV o MP3 (algunos formatos [[wma-propietary|no están "
+"soportados]]). [[save|Guardar un proyecto de Audacity]] crea un archivo de "
+"proyecto (enlazado con una carpeta _data) que contiene todas las pistas "
+"editadas, asà que en cualquier momento se puede recuperar el trabajo. No "
+"obstante, otros programas no pueden leer los archivos de proyecto creados "
+"con Audacity.<p><p>Para exportar, haga clic en <i>Archivo > Exportar</i> "
+"y seleccione el formato de archivo al que desea exportar en el menú "
+"desplegable \"Guardar como tipo\". Si desea [[burncd|grabar un CD]] para "
+"reproductores de CD, seleccione los formatos WAV o AIFF. Para exportar como "
+"MP3 debe tener instalado el [[Lame_Installation|codificador Lame]].</p><p> "
+"<i>Archivo > Exportar Selección</i> exporta varios archivos al mismo "
+"tiempo, ya sea uno por posta o uno por cada zona etiquetada en una sola "
+"pista. <i>Pistas > Insertar etiqueta en selección</i>le permite [[[[wiki:"
+"Splitting_recordings_into_separate_tracks|dividir las pistas]] de un álbum "
+"para realizar una exportación múltiple en archivos independientes. </"
+"p><br><br>"
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
-msgstr "<p>Audacity <b>no puede</b> [[play|reproducir]] o [[export|exportar]] archivos en la mayorÃa de formatos propietarios como <b>WMA, RealAudio, Shorten (SHN)</b> por problemas de licencia o restricciones de patente. En ordenadores con Mac formatos <b>AAC</b> no protegidos como <b>M4A</b> pueden ser importados. Algunos formatos abiertos como <b>Ogg Speex</b> y <b>Musepack</b> aún no están soportados. Archivos protegidos por cualquier tipo de sistema de gestión de derechos digitales (DRM) incluÃdos la mayorÃa de los que se adquieren online en tiendas como iTunes o Napster, <b>no pueden</b> ser importados.</p><p> Si no puede importar un archivo en Audacity y está seguro de que no está protegido con DRM puede utilizar iTunes o <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> para convertirlo a WAV o AIFF. Si está protegido puede grabarlo en un CD de audio en un programa con licencia para reproducirlo y a continuación extraer la pista del CD a formato WAV o AIFF mediante iTunes o (en Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> o Windows Media Player 11. También puede <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">grabar</a> el CD en su ordenador. <i>Para exportar a un formato no soportado, exporte a WAV o AIFF y conviértalo al formato deseado con iTunes o <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgid ""
+"<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in "
+"<b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due "
+"to licensing and patent restrictions. On a Mac computer, unprotected "
+"<b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are "
+"not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files "
+"protected by any kind of Digital Rights Management (DRM), including most "
+"purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</"
+"p><p> If you can't import your file into Audacity, then if it is not DRM-"
+"protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER."
+"html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, "
+"burn it to an audio CD in the program licensed to play it, then extract the "
+"CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos."
+"sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could "
+"also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&"
+"i=streaming\">record</a> the CD to your computer. <i>To export to an "
+"unsupported format, export to WAV or AIFF and convert it to the desired "
+"format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload"
+"\">SUPER</a>. </i></p><p>"
+msgstr ""
+"<p>Audacity <b>no puede</b> [[play|reproducir]] o [[export|exportar]] "
+"archivos en la mayorÃa de formatos propietarios como <b>WMA, RealAudio, "
+"Shorten (SHN)</b> por problemas de licencia o restricciones de patente. En "
+"ordenadores con Mac pueden ser importados formatos <b>AAC</b> no "
+"protegidos como <b>M4A</b>. Algunos formatos abiertos como <b>Ogg "
+"Speex</b> y <b>Musepack</b> aún no están soportados. Archivos protegidos por cualquier "
+"tipo de sistema de gestión de derechos digitales (DRM) incluÃdos la mayorÃa "
+"de los que se adquieren online en tiendas como iTunes o Napster, <b>no "
+"pueden</b> ser importados.</p><p> Si no puede importar un archivo en "
+"Audacity y está seguro de que no está protegido con DRM puede utilizar "
+"iTunes o <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> "
+"para convertirlo a WAV o AIFF. Si está protegido puede grabarlo en un CD de "
+"audio en un programa con licencia para reproducirlo y a continuación extraer "
+"la pista del CD a formato WAV o AIFF mediante iTunes o (en Windows) <a href="
+"\"http://cdexos.sourceforge.net/?q=download\">CDex</a> o Windows Media "
+"Player 11. También puede <a href=\"http://audacity.sourceforge.net/help/faq?"
+"s=recording&i=streaming\">grabar</a> el CD en su ordenador. <i>Para "
+"exportar a un formato no soportado, exporte a WAV o AIFF y conviértalo al "
+"formato deseado con iTunes o <a href=\"http://www.erightsoft.com/SUPER."
+"html#Dnload\">SUPER</a>. </i></p><p>"
#: HelpText.cpp:383
-msgid "<p>To burn your work to an audio CD for standalone CD players, first [[export|export]] it as WAV or AIFF. The exported file should be stereo, 44100 Hz (set in the \"Project Rate\" button bottom left) and 16 bit (set in the \"Options\" button in the file export dialog). These are Audacity's default settings, so normally you will not need to change these before exporting. <p>Burn the exported file to an \"audio CD\" - not a \"data CD\" or \"MP3 CD\" - with a CD burning program like iTunes or Windows Media Player. For more help, see [[wiki:How_to_burn_CDs|How to burn CDs]] online. </p><p>"
-msgstr "<p>Para grabar su trabajo en un CD de audio para escucharlo en reproductores de CD, primero [[export|expórtelo]] como WAV o AIFF. El archivo exportado deberÃa ser estéreo, 44100 Hz (se establece en el botón \"Frecuencia del proyecto\" en la parte inferior izquierda) y 16 bit (se establece en el botón \"Opciones\" del cuadro de diálogo de exportación de archivo). Estas son las opciones de configuración predeterminadas en Audacity, asà que probablemente no necesitará cambiar nada antes de exportar.<p>Almacene los archivos exportados en un \"CD de audio\", no en un \"CD de datos\" o un \"CD MP3\", con un programa de grabación de CD como iTunes o Windows Media Player. Para obtener más información consulte la ayuda online [[wiki:How_to_burn_CDs|Como grabar CD]]. </p><p>"
+msgid ""
+"<p>To burn your work to an audio CD for standalone CD players, first "
+"[[export|export]] it as WAV or AIFF. The exported file should be stereo, "
+"44100 Hz (set in the \"Project Rate\" button bottom left) and 16 bit (set in "
+"the \"Options\" button in the file export dialog). These are Audacity's "
+"default settings, so normally you will not need to change these before "
+"exporting. <p>Burn the exported file to an \"audio CD\" - not a \"data CD\" "
+"or \"MP3 CD\" - with a CD burning program like iTunes or Windows Media "
+"Player. For more help, see [[wiki:How_to_burn_CDs|How to burn CDs]] online. "
+"</p><p>"
+msgstr ""
+"<p>Para grabar su trabajo en un CD de audio para escucharlo en "
+"reproductores de CD, primero [[export|expórtelo]] como WAV o AIFF. El "
+"archivo exportado deberÃa ser estéreo, 44100 Hz (se establece en el botón "
+"\"Frecuencia del proyecto\" en la parte inferior izquierda) y 16 bit (se "
+"establece en el botón \"Opciones\" del cuadro de diálogo de exportación de "
+"archivo). Estas son las opciones de configuración predeterminadas en "
+"Audacity, asà que probablemente no necesitará cambiar nada antes de exportar."
+"<p>Almacene los archivos exportados en un \"CD de audio\", no en un \"CD de "
+"datos\" o un \"CD MP3\", con un programa de grabación de CD como iTunes o "
+"Windows Media Player. Para obtener más información consulte la ayuda online "
+"[[wiki:How_to_burn_CDs|Como grabar CD]]. </p><p>"
#: HelpText.cpp:403
-msgid "<p>Help for Audacity Beta is currently unfinished. For now, a draft manual is available <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">online</a>. Alternatively, click <a href=\"http://www.audacityteam.org/manual/index.php?title=Temporary_HTML_Manual_Export\">here</a> to download a single-page version of the manual which can be viewed in this window."
-msgstr "<p>La ayuda de la versión Beta de Audacity está incompleta. Se puedeconsultar un borrador <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">online</a> del manual. También puede hacer clic <a href=\"http://www.audacityteam.org/manual/index.php?title=Temporary_HTML_Manual_Export\">aquÃ</a> para descargar una versión del manual en una sola página que se mostrará en esta ventana."
+msgid ""
+"<p>Help for Audacity Beta is currently unfinished. For now, a draft manual "
+"is available <a href=\"http://www.audacityteam.org/manual/index.php?"
+"title=Main_Page\">online</a>. Alternatively, click <a href=\"http://www."
+"audacityteam.org/manual/index.php?title=Temporary_HTML_Manual_Export\">here</"
+"a> to download a single-page version of the manual which can be viewed in "
+"this window."
+msgstr ""
+"<p>La ayuda de la versión Beta de Audacity está incompleta. Se "
+"puedeconsultar un borrador <a href=\"http://www.audacityteam.org/manual/"
+"index.php?title=Main_Page\">online</a> del manual. También puede hacer clic "
+"<a href=\"http://www.audacityteam.org/manual/index.php?"
+"title=Temporary_HTML_Manual_Export\">aquÃ</a> para descargar una versión del "
+"manual en una sola página que se mostrará en esta ventana."
#: HistoryWindow.cpp:53
msgid "Undo History"
@@ -1328,51 +1845,58 @@ msgstr "Niveles a descartar"
msgid "&Discard"
msgstr "&Descartar"
-#: HistoryWindow.cpp:112 Tags.cpp:2081 Tags.cpp:2083 Tags.cpp:2385
-#: Tags.cpp:2387 effects/ChangeLength.cpp:186 effects/SpikeCleaner.cpp:191
-#: export/ExportCL.cpp:399
+#: HistoryWindow.cpp:112 effects/ChangeLength.cpp:186
+#: effects/SpikeCleaner.cpp:191 export/ExportCL.cpp:432
msgid "&OK"
msgstr "&Aceptar"
-#: Internat.cpp:191
+#: Internat.cpp:143
msgid "Unable to determine"
msgstr "No se puede determinar"
-#: Internat.cpp:195 import/ImportRaw.cpp:385
+#: Internat.cpp:147 import/ImportRaw.cpp:395
msgid "bytes"
msgstr "bytes"
-#: Internat.cpp:197
+#: Internat.cpp:149
msgid "KB"
msgstr "KB"
-#: Internat.cpp:200
+#: Internat.cpp:152
msgid "MB"
msgstr "MB"
-#: Internat.cpp:203
+#: Internat.cpp:155
msgid "GB"
msgstr "GB"
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr "El nombre de archivo indicado no puede ser convertido por el uso de caracteres Unicode."
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr "Indicar un nuevo nombre de archivo:"
+
#: LabelDialog.cpp:54
msgid "Track"
msgstr "Pista"
-#: LabelDialog.cpp:55 Menus.cpp:4669 Menus.cpp:4704
+#: LabelDialog.cpp:55 Menus.cpp:4855 Menus.cpp:4890
msgid "Label"
msgstr "Etiqueta"
-#: LabelDialog.cpp:56 TimerRecordDialog.cpp:279
+#: LabelDialog.cpp:56 TimerRecordDialog.cpp:328
msgid "Start Time"
msgstr "Instante inicial"
-#: LabelDialog.cpp:57 TimerRecordDialog.cpp:298
+#: LabelDialog.cpp:57 TimerRecordDialog.cpp:347
msgid "End Time"
msgstr "Instante final"
-#: LabelDialog.cpp:100 Menus.cpp:711
-msgid "&Edit Labels"
-msgstr "&Editar etiquetas"
+#: LabelDialog.cpp:100
+msgid "Edit Labels"
+msgstr "Editar etiquetas"
#: LabelDialog.cpp:115
msgid "Press F2 or double click to edit cell contents."
@@ -1406,19 +1930,19 @@ msgstr ""
"\n"
"¿Desea volver e indicar los nombres?"
-#: LabelDialog.cpp:355
+#: LabelDialog.cpp:355 LangChoice.cpp:130
msgid "Confirm"
msgstr "Confirmar"
-#: LabelDialog.cpp:516 Menus.cpp:4093
+#: LabelDialog.cpp:516 Menus.cpp:4273
msgid "Select a text file containing labels..."
msgstr "Seleccione un archivo de texto que contenga etiquetas..."
-#: LabelDialog.cpp:520 Menus.cpp:4097
+#: LabelDialog.cpp:520 Menus.cpp:4277
msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
msgstr "Archivos de texto (*.txt)|*.txt|Todos los archivos (*.*)|*.*"
-#: LabelDialog.cpp:534 Menus.cpp:4109 Project.cpp:1914 Project.cpp:1922
+#: LabelDialog.cpp:534 Menus.cpp:4289 Project.cpp:2116 Project.cpp:2124
msgid "Could not open file: "
msgstr "No se ha podido abrir el archivo: "
@@ -1426,11 +1950,11 @@ msgstr "No se ha podido abrir el archivo: "
msgid "No labels to export."
msgstr "No hay etiquetas que exportar."
-#: LabelDialog.cpp:566 Menus.cpp:2510
+#: LabelDialog.cpp:566 Menus.cpp:2626
msgid "Export Labels As:"
msgstr "Exportar etiquetas como:"
-#: LabelDialog.cpp:568 Menus.cpp:2508
+#: LabelDialog.cpp:568 Menus.cpp:2624
msgid "labels.txt"
msgstr "etiquetas.txt"
@@ -1442,19 +1966,28 @@ msgstr "Nueva pista de etiqueta"
msgid "Enter track name"
msgstr "Introduzca el nombre de la pista"
-#: LabelDialog.cpp:705 LabelDialog.h:52 LabelTrack.cpp:89 Menus.cpp:630
-msgid "&Label Track"
-msgstr "&Pista de etiqueta"
+#: LabelDialog.cpp:705 LabelDialog.h:52 LabelTrack.cpp:92
+msgid "Label Track"
+msgstr "Pista de etiqueta"
-#: LangChoice.cpp:57
+#: LangChoice.cpp:58
msgid "Audacity First Run"
msgstr "Primera ejecución de Audacity"
-#: LangChoice.cpp:89
+#: LangChoice.cpp:90
msgid "Choose Language for Audacity to use:"
msgstr "Seleccione el idioma que desea utilizar:"
-#: Legacy.cpp:356
+#: LangChoice.cpp:125
+#, c-format
+msgid ""
+"The language you have chosen, %s (%s), is not the same as the system "
+"language, %s (%s)."
+msgstr ""
+"El idioma que ha elegido, %s (%s), no es el predeterminado del "
+"sistema, %s (%s)."
+
+#: Legacy.cpp:372
#, c-format
msgid ""
"Converted a 1.0 project file to the new format.\n"
@@ -1463,611 +1996,565 @@ msgstr ""
"Se ha convertido un archivo de proyecto 1.0 al nuevo formato.\n"
"El archivo antiguo fue guardado como '%s'"
-#: Legacy.cpp:357
+#: Legacy.cpp:373
msgid "Opening Audacity Project"
msgstr "Abriendo proyecto de Audacity"
-#: Menus.cpp:192
+#: Menus.cpp:196
msgid "&File"
msgstr "&Archivo"
-#: Menus.cpp:194
-msgid "&New\tCtrl+N"
-msgstr "&Nuevo\tCtrl+N"
-
-#: Menus.cpp:196
-msgid "&Open...\tCtrl+O"
-msgstr "&Abrir...\tCtrl+O"
-
-#: Menus.cpp:201
-msgid "&Close\tCtrl+W"
-msgstr "&Cerrar\tCtrl+W"
+#: Menus.cpp:215
+msgid "&Close"
+msgstr "&Cerrar"
-#: Menus.cpp:204
-msgid "&Save Project\tCtrl+S"
-msgstr "&Guardar proyecto\tCtrl+S"
+#: Menus.cpp:218
+msgid "&Save Project"
+msgstr "&Guardar proyecto"
-#: Menus.cpp:208 Project.cpp:2896
+#: Menus.cpp:221
msgid "Save Project &As..."
msgstr "Guardar &proyecto como..."
-#: Menus.cpp:210
+#: Menus.cpp:223
msgid "Save Compressed Copy of Project..."
msgstr "Guardar una copia comprimida del proyecto..."
-#: Menus.cpp:214
+#: Menus.cpp:227
msgid "Chec&k Dependencies..."
msgstr "Co&mprobar dependencias..."
-#: Menus.cpp:220
+#: Menus.cpp:231
msgid "Open Me&tadata Editor..."
msgstr "Abrir edi&tor de metadatos..."
-#: Menus.cpp:227 import/ImportRaw.cpp:411
+#: Menus.cpp:239 import/ImportRaw.cpp:421
msgid "&Import"
msgstr "&Importar"
-#: Menus.cpp:229
-msgid "&Audio...\tCtrl+Shift+I"
-msgstr "&Audio...\tCtrl+Mayús+I"
+#: Menus.cpp:241
+msgid "&Audio..."
+msgstr "&Audio..."
-#: Menus.cpp:230
+#: Menus.cpp:242
msgid "&Labels..."
msgstr "&Etiquetas..."
-#: Menus.cpp:232
+#: Menus.cpp:244
msgid "&MIDI..."
msgstr "&MIDI..."
-#: Menus.cpp:234
+#: Menus.cpp:246
msgid "&Raw Data..."
msgstr "Datos en b&ruto..."
-#: Menus.cpp:245 Menus.cpp:280
+#: Menus.cpp:261
msgid "Expo&rt Selection..."
msgstr "Expo&rtar selección..."
-#: Menus.cpp:252
+#: Menus.cpp:269
msgid "Export &Labels..."
msgstr "Exportar e&tiquetas..."
-#: Menus.cpp:253
+#: Menus.cpp:272
msgid "Export &Multiple..."
msgstr "Exportar &múltiple..."
-#: Menus.cpp:255
+#: Menus.cpp:276
msgid "Export MIDI..."
msgstr "Exportar MIDI..."
-#: Menus.cpp:288
-msgid "CleanSpeech C&hain..."
-msgstr "Limpieza de lo&cución..."
+#: Menus.cpp:282
+msgid "Appl&y Chain..."
+msgstr "Apl&icar secuencia de comandos..."
-#: Menus.cpp:289 Menus.cpp:303
+#: Menus.cpp:285
msgid "Edit C&hains..."
msgstr "Editar se&cuencias de comandos..."
-#: Menus.cpp:290
+#: Menus.cpp:288
msgid "Export CleanSpeech &Presets..."
msgstr "Ex&portar configuración de limpieza de locución..."
-#: Menus.cpp:291
+#: Menus.cpp:289
msgid "I&mport CleanSpeech Presets..."
msgstr "I&mportar configuración de limpieza de locución..."
-#: Menus.cpp:301
-msgid "Appl&y Chain..."
-msgstr "Apl&icar secuencia de comandos..."
-
-#: Menus.cpp:308
+#: Menus.cpp:296
msgid "&Upload File..."
msgstr "P&ublicar archivo..."
-#: Menus.cpp:314
+#: Menus.cpp:301
msgid "Pa&ge Setup..."
msgstr "Confi&gurar página...."
-#: Menus.cpp:315
+#: Menus.cpp:304
msgid "&Print..."
msgstr "Im&primir...."
-#: Menus.cpp:328
-msgid "E&xit\tCtrl+Q"
-msgstr "Sa&lir\tCtrl+Q"
+#: Menus.cpp:313
+msgid "E&xit"
+msgstr "Sa&lir"
-#: Menus.cpp:336 toolbars/EditToolBar.cpp:76
+#: Menus.cpp:323
msgid "&Edit"
msgstr "&Editar"
-#: Menus.cpp:340
-msgid "&Undo\tCtrl+Z"
-msgstr "&Deshacer\tCtrl+Z"
+#: Menus.cpp:328
+msgid "&Undo"
+msgstr "&Deshacer"
-#: Menus.cpp:348 prefs/KeyConfigPrefs.cpp:371 toolbars/EditToolBar.cpp:146
+#: Menus.cpp:340
msgid "&Redo"
msgstr "&Rehacer"
-#: Menus.cpp:361
-msgid "Cu&t\tCtrl+X"
-msgstr "Cor&tar\tCtrl+X"
+#: Menus.cpp:346
+msgid "Cu&t"
+msgstr "Cor&tar"
-#: Menus.cpp:365
-msgid "Spl&it Cut\tCtrl+Alt+X"
-msgstr "D&ividir y cortar\tCtrl+Alt+X"
+#: Menus.cpp:349
+msgid "Spl&it Cut"
+msgstr "D&ividir y cortar"
-#: Menus.cpp:366
-msgid "&Copy\tCtrl+C"
-msgstr "&Copiar\tCtrl+C"
+#: Menus.cpp:350
+msgid "&Copy"
+msgstr "&Copiar"
-#: Menus.cpp:370
-msgid "&Paste\tCtrl+V"
-msgstr "&Pegar\tCtrl+V"
+#: Menus.cpp:353
+msgid "&Paste"
+msgstr "&Pegar"
-#: Menus.cpp:374
-msgid "Tri&m\tCtrl+T"
-msgstr "&R&ecortar\tCtrl+T"
+#: Menus.cpp:356
+msgid "Tri&m"
+msgstr "&R&ecortar"
-#: Menus.cpp:376
-msgid "&Delete\tCtrl+K"
-msgstr "&Borrar\tCtrl+K"
+#: Menus.cpp:360 Menus.cpp:399
+msgid "&Delete"
+msgstr "&Borrar"
-#: Menus.cpp:377
-msgid "Split D&elete\tCtrl+Alt+K"
-msgstr "Dividir y &borrar\tCtrl+Alt+K"
+#: Menus.cpp:361
+msgid "Split D&elete"
+msgstr "Dividir y &borrar"
-#: Menus.cpp:378
-msgid "Silence Audi&o\tCtrl+L"
-msgstr "Silenciar audi&o\tCtrl+L"
+#: Menus.cpp:362
+msgid "Silence Audi&o"
+msgstr "Silenciar audi&o"
-#: Menus.cpp:380
-msgid "Sp&lit\tCtrl+I"
-msgstr "D&ividir\tCtrl+I"
+#: Menus.cpp:366
+msgid "Sp&lit"
+msgstr "D&ividir"
-#: Menus.cpp:385
-msgid "Split Ne&w\tCtrl+Alt+I"
-msgstr "Di&vidir y nueva\tCtrl+Alt+I"
+#: Menus.cpp:370
+msgid "Split Ne&w"
+msgstr "Di&vidir y nueva"
-#: Menus.cpp:390
-msgid "&Join\tCtrl+J"
-msgstr "&Unir\tCtrl+J"
+#: Menus.cpp:374 Menus.cpp:406
+msgid "&Join"
+msgstr "&Unir"
-#: Menus.cpp:391
-msgid "Detac&h at Silences\tCtrl+Alt+J"
-msgstr "Des&unir en los silencios\tCtrl+Alt+J"
+#: Menus.cpp:375 Menus.cpp:407
+msgid "Detac&h at Silences"
+msgstr "Des&unir en los silencios"
-#: Menus.cpp:392
-msgid "Duplic&ate\tCtrl+D"
-msgstr "Duplic&ar\tCtrl+D"
+#: Menus.cpp:376
+msgid "Duplic&ate"
+msgstr "Duplic&ar"
-#: Menus.cpp:398 Menus.cpp:637
+#: Menus.cpp:381 Menus.cpp:617
msgid "Stereo Trac&k to Mono"
msgstr "Pista e&stéreo a mono"
-#: Menus.cpp:405
+#: Menus.cpp:390
msgid "La&beled Regions"
msgstr "Z&onas etiquetadas"
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:407
-msgid "&Cut\tAlt+X"
-msgstr "Cor&tar\tAlt+X"
+#: Menus.cpp:393
+msgid "&Cut"
+msgstr "Cor&tar"
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:412
-msgid "&Split Cut\tShift+Alt+X"
-msgstr "Dividir y cor&tar\tMayús+Alt+X"
+#: Menus.cpp:394
+msgid "&Split Cut"
+msgstr "Dividir y cor&tar"
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:417
-msgid "Co&py\tShift+Alt+C"
-msgstr "Co&piar\tMayús+Alt+C"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:423
-msgid "&Delete\tAlt+K"
-msgstr "&Borrar\tAlt+K"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:428
-msgid "Sp&lit Delete\tShift+Alt+K"
-msgstr "Dividir y &borrar\tMayús+Alt+K"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:433
-msgid "Sile&nce\tAlt+L"
-msgstr "Sile&nciar\tAlt+L"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:439
-msgid "Spli&t\tAlt+I"
-msgstr "D&ividir\tAlt+I"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:444
-msgid "&Join\tAlt+J"
-msgstr "&Unir\tAlt+J"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:449
-msgid "Detac&h at Silences\tShift+Alt+J"
-msgstr "Desu&nir en silencios\tMayús+Alt+J"
+#: Menus.cpp:395
+msgid "Co&py"
+msgstr "Co&piar"
+
+#: Menus.cpp:400
+msgid "Sp&lit Delete"
+msgstr "Dividir y &borrar"
-#: Menus.cpp:454
+#: Menus.cpp:401
+msgid "Sile&nce"
+msgstr "Sile&nciar"
+
+#: Menus.cpp:405
+msgid "Spli&t"
+msgstr "D&ividir"
+
+#: Menus.cpp:413
msgid "&Select"
msgstr "&Seleccionar"
-#: Menus.cpp:455
-msgid "&All\tCtrl+A"
-msgstr "&Todo\tCtrl+A"
+#: Menus.cpp:416
+msgid "&All"
+msgstr "&Todo"
-#: Menus.cpp:456
-msgid "&None\tCtrl+Shift+A"
-msgstr "&Nada\tCtrl+Mayús+A"
+#: Menus.cpp:417
+msgid "&None"
+msgstr "&Nada"
-#: Menus.cpp:460
-msgid "&Left at Playback Position\t["
-msgstr "Desde la &izquierda hasta el cursor\t["
+#: Menus.cpp:419
+msgid "&Left at Playback Position"
+msgstr "Desde la &izquierda hasta el cursor"
-#: Menus.cpp:461
-msgid "&Right at Playback Position\t]"
-msgstr "Desde la &derecha hasta el cursor\t]"
+#: Menus.cpp:420
+msgid "&Right at Playback Position"
+msgstr "Desde la &derecha hasta el cursor"
-#: Menus.cpp:465
-msgid "Track &Start to Cursor\tShift+J"
-msgstr "De&sde el principio hasta el cursor\tShift+J"
+#: Menus.cpp:424
+msgid "Track &Start to Cursor"
+msgstr "De&sde el principio hasta el cursor"
-#: Menus.cpp:466
-msgid "Cursor to Track &End\tShift+K"
-msgstr "D&esde el cursor hasta el final\tShift+K"
+#: Menus.cpp:425
+msgid "Cursor to Track &End"
+msgstr "D&esde el cursor hasta el final"
-#: Menus.cpp:472
-msgid "Find &Zero Crossings\tZ"
-msgstr "Encontrar &cruces en cero\tZ"
+#: Menus.cpp:431
+msgid "Find &Zero Crossings"
+msgstr "Encontrar &cruces en cero"
-#: Menus.cpp:474
+#: Menus.cpp:435
msgid "Mo&ve Cursor"
msgstr "Mo&ver cursor"
-#: Menus.cpp:476
+#: Menus.cpp:437
msgid "to Selection Star&t"
msgstr "&Al comienzo de la selección"
-#: Menus.cpp:477
+#: Menus.cpp:438
msgid "to Selection En&d"
msgstr "Al &final de la selección"
-#: Menus.cpp:481
-msgid "to Track &Start\tJ"
-msgstr "Al comienzo de la pi&sta\tJ"
+#: Menus.cpp:440
+msgid "to Track &Start"
+msgstr "Al comienzo de la pi&sta"
-#: Menus.cpp:482
-msgid "to Track &End\tK"
-msgstr "Al final d&e la pista\tK"
+#: Menus.cpp:441
+msgid "to Track &End"
+msgstr "Al final d&e la pista"
-#: Menus.cpp:489
+#: Menus.cpp:449
msgid "Re&gion Save"
msgstr "&Guardar selección"
-#: Menus.cpp:490
+#: Menus.cpp:452
msgid "Regio&n Restore"
msgstr "Restaurar selecció&n"
-#: Menus.cpp:501
+#: Menus.cpp:460
msgid "Pla&y Region"
msgstr "Ã&rea de reproducción"
-#: Menus.cpp:502
+#: Menus.cpp:462
msgid "&Lock"
msgstr "B&loquear"
-#: Menus.cpp:503
+#: Menus.cpp:465
msgid "&Unlock"
msgstr "&Desbloquear"
-#: Menus.cpp:509
-msgid "Turn Snap-To On"
-msgstr "Activar ajuste"
-
-#: Menus.cpp:510
-msgid "Turn Snap-To Off"
-msgstr "Desactivar ajuste"
-
-#: Menus.cpp:511
-msgid "Turn Grid Snap On"
-msgstr "Activar el ajuste a cuadrÃcula"
-
-#: Menus.cpp:512
-msgid "Turn Grid Snap Off"
-msgstr "Desactivar el ajuste a cuadrÃcula"
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
-#: Menus.cpp:517
-msgid "Pre&ferences...\tCtrl+,"
-msgstr "Pre&ferencias...\tCtrl+,"
-
-#: Menus.cpp:521
-msgid "Pre&ferences...\tCtrl+P"
-msgstr "Pre&ferencias...\tCtrl+P"
+#: Menus.cpp:485
+msgid "Pre&ferences..."
+msgstr "Pre&ferencias..."
-#: Menus.cpp:531
+#: Menus.cpp:495
msgid "&View"
msgstr "&Ver"
-#: Menus.cpp:533
-msgid "Zoom &In\tCtrl+1"
-msgstr "&Ampliar\tCtrl+1"
+#: Menus.cpp:498
+msgid "Zoom &In"
+msgstr "&Ampliar"
-#: Menus.cpp:536
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "&Normal\tCtrl+2"
+#: Menus.cpp:501
+msgid "Zoom &Normal"
+msgstr "&Normal"
-#: Menus.cpp:537
-msgid "Zoom &Out\tCtrl+3"
-msgstr "R&educir\tCtrl+3"
+#: Menus.cpp:502
+msgid "Zoom &Out"
+msgstr "R&educir"
-#: Menus.cpp:540
-msgid "&Fit in Window\tCtrl+F"
-msgstr "A&justar a la ventana\tCtrl+F"
+#: Menus.cpp:506
+msgid "&Fit in Window"
+msgstr "A&justar a la ventana"
-#: Menus.cpp:541
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "Ajustar &verticalmente\tCtrl+Mayús+F"
+#: Menus.cpp:507
+msgid "Fit &Vertically"
+msgstr "Ajustar &verticalmente"
-#: Menus.cpp:542
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "Ampliar la s&elección\tCtrl+E"
+#: Menus.cpp:508
+msgid "&Zoom to Selection"
+msgstr "Ampliar la s&elección"
-#: Menus.cpp:545
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
-msgstr "&Contraer todas las pistas\tCtrl+Mayús+C"
+#: Menus.cpp:512
+msgid "&Collapse All Tracks"
+msgstr "&Contraer todas las pistas"
-#: Menus.cpp:546
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
-msgstr "E&xpandir todas las pistas\tCtrl+Mayús+X"
+#: Menus.cpp:513
+msgid "E&xpand All Tracks"
+msgstr "E&xpandir todas las pistas"
-#: Menus.cpp:549
+#: Menus.cpp:517
msgid "&Show Clipping"
msgstr "Mo&strar distorsión"
-#: Menus.cpp:558
+#: Menus.cpp:522
msgid "&History..."
msgstr "&Historial..."
-#: Menus.cpp:564
+#: Menus.cpp:530
msgid "&Toolbars"
msgstr "&Barras de herramientas"
-#: Menus.cpp:565
+#: Menus.cpp:532
msgid "&Control Toolbar"
msgstr "Barra de herramientas de &control"
-#: Menus.cpp:566
+#: Menus.cpp:533
msgid "&Device Toolbar"
msgstr "Barra de herramientas de &dispositivos"
-#: Menus.cpp:567
+#: Menus.cpp:534
msgid "&Edit Toolbar"
msgstr "Barra de herramientas de &edición"
-#: Menus.cpp:568
+#: Menus.cpp:535
msgid "&Meter Toolbar"
msgstr "Barra de herramientas de &medidores"
-#: Menus.cpp:569
+#: Menus.cpp:536
msgid "Mi&xer Toolbar"
msgstr "Barra de herramientas de me&zcla"
-#: Menus.cpp:570
+#: Menus.cpp:537
msgid "&Selection Toolbar"
msgstr "Barra de herramientas de &selección"
-#: Menus.cpp:571
+#: Menus.cpp:538
msgid "T&ools Toolbar"
msgstr "Barra de herramientas de &herramientas"
-#: Menus.cpp:572
+#: Menus.cpp:539
msgid "Transcri&ption Toolbar"
msgstr "Barra de herramientas de &transcripción"
-#: Menus.cpp:574
+#: Menus.cpp:543
msgid "&Reset Toolbars"
msgstr "&Restablecer barras de herramientas"
-#: Menus.cpp:576
+#: Menus.cpp:551
msgid "!Simplified View"
msgstr "!Vista simplificada"
#. i18n-hint: 'Transport' is the name given to the set of controls that
#. play, record, pause etc.
-#: Menus.cpp:585
+#: Menus.cpp:562
msgid "T&ransport"
msgstr "Cont&rol"
-#: Menus.cpp:591
-msgid "Play\tSpace"
-msgstr "Reproducir\tEspacio"
+#: Menus.cpp:565 toolbars/ControlToolBar.cpp:173
+msgid "Play"
+msgstr "Reproducir"
-#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
-msgstr "Reproducir cÃc&licamente\tMayús+Espacio"
+#: Menus.cpp:566
+msgid "&Loop Play"
+msgstr "Reproducir cÃc&licamente"
-#: Menus.cpp:591
-msgid "&Pause\tP"
-msgstr "&Pausa\tP"
+#: Menus.cpp:567
+msgid "&Pause"
+msgstr "&Pausa"
-#: Menus.cpp:596
-msgid "&Stop\tSpace"
-msgstr "&Parar\tEspacio"
+#: Menus.cpp:570
+msgid "&Stop"
+msgstr "&Detener"
-#: Menus.cpp:593 Menus.cpp:1008
-msgid "Skip to Start\tHome"
-msgstr "Ir al comienzo\tInicio"
+#: Menus.cpp:573 toolbars/ControlToolBar.cpp:208
+msgid "Skip to Start"
+msgstr "Ir al comienzo"
-#: Menus.cpp:595 Menus.cpp:1009
-msgid "Skip to End\tEnd"
-msgstr "Ir al final\tFin"
+#: Menus.cpp:574 toolbars/ControlToolBar.cpp:209
+msgid "Skip to End"
+msgstr "Ir al final"
-#: Menus.cpp:598
-msgid "&Record\tR"
-msgstr "G&rabar\tR"
+#: Menus.cpp:578
+msgid "&Record"
+msgstr "G&rabar"
-#: Menus.cpp:600
-msgid "&Timer Record...\tShift+T"
-msgstr "Grabación &programada...\tMayús+T"
+#: Menus.cpp:579
+msgid "&Timer Record..."
+msgstr "Grabación &programada..."
-#: Menus.cpp:602
-msgid "Append Record\tShift+R"
-msgstr "Anexar grabación\tMayús+R"
+#: Menus.cpp:580
+msgid "Append Record"
+msgstr "Anexar grabación"
-#: Menus.cpp:605
+#: Menus.cpp:584
msgid "Overdub (on/off)"
msgstr "Remezclar"
-#: Menus.cpp:607
+#: Menus.cpp:585
msgid "Software Playthrough (on/off)"
msgstr "Reproducción a través del software"
-#: Menus.cpp:610
+#: Menus.cpp:588
msgid "Sound Activated Recording (on/off)"
msgstr "Grabación por activación de sonido"
-#: Menus.cpp:612
+#: Menus.cpp:589
msgid "Sound Activation Level..."
msgstr "Nivel de activación de sonido..."
-#: Menus.cpp:620
+#: Menus.cpp:597
msgid "&Tracks"
msgstr "&Pistas"
-#: Menus.cpp:627
+#: Menus.cpp:602
msgid "Add &New"
msgstr "Añadir &nueva"
-#: Menus.cpp:628
-msgid "&Audio Track\tCtrl+Shift+N"
-msgstr "Pista de &audio\tCtrl+Mayús+N"
+#: Menus.cpp:604
+msgid "&Audio Track"
+msgstr "Pista de &audio"
-#: Menus.cpp:629
+#: Menus.cpp:605
msgid "&Stereo Track"
msgstr "Pista de audio e&stéreo"
-#: Menus.cpp:631 TimeTrack.cpp:44
+#: Menus.cpp:606
+msgid "&Label Track"
+msgstr "&Pista de etiqueta"
+
+#: Menus.cpp:607
msgid "&Time Track"
msgstr "Pista de &tiempo"
-#: Menus.cpp:641
+#: Menus.cpp:620
msgid "Mi&x and Render"
msgstr "&Mezclar y generar"
-#: Menus.cpp:645
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
-msgstr "Mezclar y generar en una nueva pista\tCtrl+Mayús+M"
+#: Menus.cpp:623
+msgid "Mix and Render to New Track"
+msgstr "Mezclar y generar en una nueva pista"
-#: Menus.cpp:649
+#: Menus.cpp:626
msgid "&Resample..."
msgstr "&Remuestrear..."
-#: Menus.cpp:659
+#: Menus.cpp:632
msgid "Remo&ve Tracks"
msgstr "E&liminar pistas"
-#: Menus.cpp:665
-msgid "&Mute All Tracks\tCtrl+U"
-msgstr "&Silenciar todas las pistas\tCtrl+U"
+#: Menus.cpp:638
+msgid "&Mute All Tracks"
+msgstr "&Silenciar todas las pistas"
-#: Menus.cpp:666
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
-msgstr "D&esactivar silencio en todas las pistas\tCtrl+Mayús+U"
+#: Menus.cpp:639
+msgid "&UnMute All Tracks"
+msgstr "D&esactivar silencio en todas las pistas"
-#: Menus.cpp:670
+#: Menus.cpp:644
msgid "Align with &Zero"
msgstr "Alinear en c&ero"
-#: Menus.cpp:671
+#: Menus.cpp:645
msgid "Align with &Cursor"
msgstr "Alinear en el &cursor"
-#: Menus.cpp:672
+#: Menus.cpp:646
msgid "Align with Selection &Start"
msgstr "Alinear en el comienzo de &selección"
-#: Menus.cpp:673
+#: Menus.cpp:647
msgid "Align with Selection &End"
msgstr "Alinear en el final de se&lección"
-#: Menus.cpp:674
+#: Menus.cpp:648
msgid "Align End with Cu&rsor"
msgstr "Alinear final en el cu&rsor"
-#: Menus.cpp:675
+#: Menus.cpp:649
msgid "Align End with Selection Star&t"
msgstr "Alinear final en el comienzo de la &selección"
-#: Menus.cpp:676
+#: Menus.cpp:650
msgid "Align End with Selection En&d"
msgstr "Alinear final en el &final de la selección"
-#: Menus.cpp:677
+#: Menus.cpp:651
msgid "Align Tracks To&gether"
msgstr "Alinear pistas con&juntamente"
-#: Menus.cpp:679
+#: Menus.cpp:653
msgid "&Align Tracks"
msgstr "&Alinear pistas"
-#: Menus.cpp:688
+#: Menus.cpp:668
msgid "Ali&gn and Move Cursor"
msgstr "Al&inear y desplazar cursor"
-#: Menus.cpp:695
+#: Menus.cpp:680
msgid "Synchronize MIDI with Audio"
msgstr "Sincronizar MIDI con audio"
-#: Menus.cpp:704
-msgid "Link Audio and Label Tracks"
-msgstr "Enlazar audio y pistas de etiquetas"
+#: Menus.cpp:687
+msgid "&Link Audio and Label Tracks"
+msgstr "En&lazar audio y pistas de etiquetas"
-#: Menus.cpp:707
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "Añadir etiqueta en se&lección\tCtrl+B"
+#: Menus.cpp:691
+msgid "Add Label At &Selection"
+msgstr "Añadir etiqueta en la &selección"
-#: Menus.cpp:708
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "Añadir etiqueta en el &punto de reproducción\tCtrl+M"
+#: Menus.cpp:694
+msgid "Add Label At &Playback Position"
+msgstr "Añadir etiqueta en el &punto de reproducción"
+
+#: Menus.cpp:697
+msgid "&Edit Labels"
+msgstr "&Editar etiquetas"
-#: Menus.cpp:714
+#: Menus.cpp:703
msgid "S&ort tracks"
msgstr "&Ordenar pistas"
-#: Menus.cpp:715
+#: Menus.cpp:705
msgid "by &Start time"
msgstr "In&stante inicial"
-#: Menus.cpp:717
+#: Menus.cpp:708
msgid "by &Name"
msgstr "&Nombre"
-#: Menus.cpp:728
+#: Menus.cpp:722
msgid "&Generate"
msgstr "&Generar"
-#: Menus.cpp:774 Menus.cpp:858 Menus.cpp:920
+#: Menus.cpp:767 Menus.cpp:852 Menus.cpp:922
msgid "Unsorted"
msgstr "Desordenado"
-#: Menus.cpp:793
+#: Menus.cpp:789
msgid "Effe&ct"
msgstr "Efe&cto"
-#: Menus.cpp:797
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "Repetir el último efecto\tCtrl+R"
-
-#: Menus.cpp:875
+#: Menus.cpp:873
msgid "&Analyze"
msgstr "&Analizar"
-#: Menus.cpp:877
+#: Menus.cpp:875
+msgid "Contrast..."
+msgstr "Contraste..."
+
+#: Menus.cpp:878
msgid "Plot Spectrum..."
msgstr "Análisis de espectro..."
@@ -2075,352 +2562,368 @@ msgstr "Análisis de espectro..."
msgid "&Help"
msgstr "&Ayuda"
-#: Menus.cpp:951
+#: Menus.cpp:952
msgid "&About Audacity CleanSpeech..."
msgstr "&Acerca de limpieza de locución de Audacity..."
-#: Menus.cpp:955
+#: Menus.cpp:958
msgid "&Show Welcome Message..."
msgstr "Men&saje de bienvenida..."
-#: Menus.cpp:956
-msgid "&Index..."
-msgstr "Ãnd&ice..."
+#: Menus.cpp:959
+msgid "&Help..."
+msgstr "A&yuda..."
-#: Menus.cpp:957
+#: Menus.cpp:960
msgid "Show &Log..."
msgstr "&Mostrar registro..."
-#: Menus.cpp:965
+#: Menus.cpp:966
msgid "&Screenshot Tools..."
msgstr "Herramienta&s de captura de pantalla..."
-#: Menus.cpp:968
+#: Menus.cpp:971
msgid "&Run Benchmark..."
msgstr "Ejecutar test de &rendimiento..."
-#: Menus.cpp:970
+#: Menus.cpp:976
msgid "&Audio Device Info..."
msgstr "Información de dispositivo de &audio..."
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
-msgstr "Saltar hacia atrás entre las barras de herramientas y la vista de pista\tCtrl+Mayús+F6"
-
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
-msgstr "Saltar hacia adelante entre las barras de herramientas y la vista de pista\tCtrl+F6"
-
-#: Menus.cpp:983
-msgid "Selection Tool\tF1"
-msgstr "Herramienta de selección\tF1"
-
-#: Menus.cpp:984
-msgid "Envelope Tool\tF2"
-msgstr "Herramienta de envolvente\tF2"
-
-#: Menus.cpp:985
-msgid "Draw Tool\tF3"
-msgstr "Herramienta de dibujo\tF3"
-
-#: Menus.cpp:986
-msgid "Zoom Tool\tF4"
-msgstr "Herramienta de ampliación\tF4"
-
#: Menus.cpp:987
-msgid "Time Shift Tool\tF5"
-msgstr "Herramienta de desplazamiento en el tiempo\tF5"
+msgid "Move backward from toolbars to tracks"
+msgstr "Retroceder desde las barras de herramientas hasta las pistas"
#: Menus.cpp:988
-msgid "Multi Tool\tF6"
-msgstr "Multiherramienta\tF6"
+msgid "Move forward from toolbars to tracks"
+msgstr "Avanzar desde las barras de herramientas hasta las pistas"
-#: Menus.cpp:990
-msgid "Next Tool\tD"
-msgstr "Herramienta siguiente\tD"
+#: Menus.cpp:990 toolbars/ToolsToolBar.cpp:147 toolbars/ToolsToolBar.cpp:186
+msgid "Selection Tool"
+msgstr "Herramienta de selección"
-#: Menus.cpp:991
-msgid "Previous Tool\tA"
-msgstr "Herramienta anterior\tA"
+#: Menus.cpp:991 toolbars/ToolsToolBar.cpp:148 toolbars/ToolsToolBar.cpp:187
+msgid "Envelope Tool"
+msgstr "Herramienta de envolvente"
-#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
-msgstr "Reproducir/Parar\tEspacio"
+#: Menus.cpp:992 toolbars/ToolsToolBar.cpp:151 toolbars/ToolsToolBar.cpp:188
+msgid "Draw Tool"
+msgstr "Herramienta de dibujo"
-#: Menus.cpp:994
-msgid "Stop\tS"
-msgstr "Detener\tS"
+#: Menus.cpp:993 toolbars/ToolsToolBar.cpp:150 toolbars/ToolsToolBar.cpp:189
+msgid "Zoom Tool"
+msgstr "Herramienta de ampliación"
-#: Menus.cpp:995
-msgid "Pause\tP"
-msgstr "Pausa\tP"
+#: Menus.cpp:994 toolbars/ToolsToolBar.cpp:149
+msgid "Time Shift Tool"
+msgstr "Herramienta de desplazamiento en el tiempo"
-#: Menus.cpp:996
-msgid "Record\tR"
-msgstr "Grabar\tR"
+#: Menus.cpp:995 toolbars/ToolsToolBar.cpp:191
+msgid "Multi Tool"
+msgstr "Multiherramienta"
#: Menus.cpp:997
-msgid "Record Append\tShift+R"
-msgstr "Anexar grabación\tMayús+R"
+msgid "Next Tool"
+msgstr "Herramienta siguiente"
+
+#: Menus.cpp:998
+msgid "Previous Tool"
+msgstr "Herramienta anterior"
-#: Menus.cpp:999
-msgid "Play/Stop and Set Cursor\tShift+A"
-msgstr "Reproducir/Detener y establecer cursor\tMayús+A"
+#: Menus.cpp:1000
+msgid "Play/Stop"
+msgstr "Reproducir/Detener"
+
+#: Menus.cpp:1001
+msgid "Play/Stop and Set Cursor"
+msgstr "Reproducir/Detener y establecer cursor"
#: Menus.cpp:1002
-msgid "Play One Second\t1"
-msgstr "Reproducir un segundo\t1"
+msgid "Play One Second"
+msgstr "Reproducir un segundo"
#: Menus.cpp:1003
-msgid "Play To Selection\tB"
-msgstr "Reproducir hasta la selección\tB"
+msgid "Play To Selection"
+msgstr "Reproducir hasta la selección"
#: Menus.cpp:1004
-msgid "Play Looped\tL"
-msgstr "Reproducir cÃclicamente\tL"
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr "Reproducir cÃclicamente\tMayús+Espacio"
+msgid "Play Cut Preview"
+msgstr "Reproducir vista previa"
#: Menus.cpp:1006
-msgid "Play Cut Preview\tC"
-msgstr "Reproducir vista previa\tC"
+msgid "Selection to Start"
+msgstr "Seleccionar hasta el comienzo"
-#: Menus.cpp:1011
-msgid "Selection to Start\tShift+Home"
-msgstr "Seleccionar hasta el comienzo\tMayús+Inicio"
+#: Menus.cpp:1007
+msgid "Selection to End"
+msgstr "Seleccionar hasta el final"
-#: Menus.cpp:1012
-msgid "Selection to End\tShift+End"
-msgstr "Seleccionar hasta el final\tMayús+Fin"
+#: Menus.cpp:1009
+msgid "DeleteKey"
+msgstr "Tecla de borrado"
-#: Menus.cpp:1014
-msgid "DeleteKey\tBackspace"
-msgstr "Tecla de borrado\tBorrar"
+#: Menus.cpp:1013
+msgid "DeleteKey2"
+msgstr "Tecla de borrado 2"
#: Menus.cpp:1019
-msgid "DeleteKey2\tDelete"
-msgstr "Tecla de borrado 2\tSupr"
+msgid "Short seek left during playback"
+msgstr "Buscar un periodo corto hacia la izquierda durante la reproducción"
+
+#: Menus.cpp:1020
+msgid "Short seek right during playback"
+msgstr "Buscar un periodo corto hacia la derecha durante la reproducción"
-#: Menus.cpp:1025
-msgid "Seek left short period during playback\tLeft"
-msgstr "Avanzar hacia la izquierda un periodo corto durante la reproducción\tIzquierda"
+#: Menus.cpp:1021
+msgid "Long seek left during playback"
+msgstr "Buscar un periodo largo hacia la izquierda durante la reproducción"
-#: Menus.cpp:1026
-msgid "Seek right short period during playback\tRight"
-msgstr "Avanzar hacia la derecha un periodo corto durante la reproducción\tDerecha"
+#: Menus.cpp:1022
+msgid "Long Seek right during playback"
+msgstr "Buscar un periodo largo hacia la derecha durante la reproducción"
#: Menus.cpp:1027
-msgid "Seek left long period during playback\tShift+Left"
-msgstr "Avanzar hacia la izquierda un periodo largo durante la reproducción\tMayús+Izquierda"
+msgid "Move Focus to Previous Track"
+msgstr "Ir a la pista anterior"
#: Menus.cpp:1028
-msgid "Seek right long period during playback\tShift+Right"
-msgstr "Avanzar hacia la derecha un periodo largo durante la reproducción\tMayús+Derecha"
+msgid "Move Focus to Previous and Select"
+msgstr "Ir a la pista anterior y seleccionar"
-#: Menus.cpp:1032
-msgid "Move Focus to Previous Track\tUp"
-msgstr "Ir a la pista anterior\tArriba"
+#: Menus.cpp:1029
+msgid "Move Focus to Next Track"
+msgstr "Ir a la pista siguiente"
-#: Menus.cpp:1033
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
-msgstr "Ir a la pista anterior y cambiar selección\tMayús+Arriba"
+#: Menus.cpp:1030
+msgid "Move Focus to Next and Select"
+msgstr "Ir a la pista siguiente y seleccionar"
+
+#: Menus.cpp:1031 Menus.cpp:1032
+msgid "Toggle Focused Track"
+msgstr "Cambiar pista activa"
#: Menus.cpp:1034
-msgid "Move Focus to Next Track\tDown"
-msgstr "Ir a la pista siguiente\tAbajo"
+msgid "Cursor Left"
+msgstr "Cursor a la Izquierda"
#: Menus.cpp:1035
-msgid "Move Focus to Next and Change Selection\tShift+Down"
-msgstr "Ir a la pista siguiente y cambiar la selección\tMayús+Abajo"
+msgid "Cursor Right"
+msgstr "Cursor a la derecha"
#: Menus.cpp:1036
-msgid "Toggle Focused Track\tReturn"
-msgstr "Cambiar pista activa\tIntro"
+msgid "Cursor Short Jump Left"
+msgstr "Pequeño salto del cursor a la izquierda"
#: Menus.cpp:1037
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr "Cambiar pista activa\tTeclado numérico Intro"
+msgid "Cursor Short Jump Right"
+msgstr "Pequeño salto del cursor a la derecha"
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
-msgstr "Cambiar pista activa\tCtrl+Espacio"
+#: Menus.cpp:1038
+msgid "Cursor Long Jump Left"
+msgstr "Salto largo del cursor a la izquierda"
-#: Menus.cpp:1040
-msgid "Cursor Left\tLeft"
-msgstr "Cursor a la Izquierda\tIzquierda"
+#: Menus.cpp:1039
+msgid "Cursor Long Jump Right"
+msgstr "Salto largo del cursor a la derecha"
#: Menus.cpp:1041
-msgid "Cursor Right\tRight"
-msgstr "Cursor a la derecha\tDerecha"
+msgid "Selection Extend Left"
+msgstr "Extender selección a la izquierda"
#: Menus.cpp:1042
-msgid "Cursor Short Jump Left\t,"
-msgstr "Pequeño salto del cursor a la izquierda\t,"
-
-#: Menus.cpp:1043
-msgid "Cursor Short Jump Right\t."
-msgstr "Pequeño salto del cursor a la derecha\t."
+msgid "Selection Extend Right"
+msgstr "Extender selección a la derecha"
#: Menus.cpp:1044
-msgid "Cursor Long Jump Left\tShift+,"
-msgstr "Salto largo del cursor a la izquierda\tMayús+,"
+msgid "Set (or Extend) Left Selection"
+msgstr "Establecer (o extender) lÃmite izquierdo de selección"
#: Menus.cpp:1045
-msgid "Cursor Long Jump Right\tShift+."
-msgstr "Salto largo del cursor a la derecha\tMayús+."
+msgid "Set (or Extend) Right Selection"
+msgstr "Establecer (o extender) lÃmite derecho de selección"
#: Menus.cpp:1047
-msgid "Selection Extend Left\tShift+Left"
-msgstr "Extender selección a la izquierda\tMayús+Izquierda"
+msgid "Selection Contract Left"
+msgstr "Contraer selección a la izquierda"
#: Menus.cpp:1048
-msgid "Selection Extend Right\tShift+Right"
-msgstr "Extender selección a la derecha\tMayús+Derecha"
+msgid "Selection Contract Right"
+msgstr "Contraer selección a la derecha"
#: Menus.cpp:1050
-msgid "Set (or Extend) Left Selection"
-msgstr "Establecer (o extender) lÃmite izquierdo de selección"
+msgid "Change pan on focused track"
+msgstr "Cambiar panorama en la pista activa"
#: Menus.cpp:1051
-msgid "Set (or Extend) Right Selection"
-msgstr "Establecer (o extender) lÃmite derecho de selección"
+msgid "Pan left on focused track"
+msgstr "Desplazar panorama a la izquierda en la pista activa."
+
+#: Menus.cpp:1052
+msgid "Pan right on focused track"
+msgstr "Desplazar panorama a la derecha en la pista activa."
#: Menus.cpp:1053
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "Contraer selección a la izquierda\tCtrl+Mayús+Derecha"
+msgid "Change gain on focused track"
+msgstr "Cambiar ganancia en la pista activa"
#: Menus.cpp:1054
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "Contraer selección a la derecha\tCtrl+Mayús+Izquierda"
+msgid "Increase gain on focused track"
+msgstr "Incrementar ganancia en la pista activa"
+
+#: Menus.cpp:1055
+msgid "Decrease gain on focused track"
+msgstr "Decrementa ganancia en la pista activa"
#: Menus.cpp:1056
-msgid "Change pan on focused track\tShift+P"
-msgstr "Cambiar panorama en la pista activa\tMayús+P"
+msgid "Open menu on focused track"
+msgstr "Desplegar menú en la pista activa"
#: Menus.cpp:1057
-msgid "Pan left on focused track\tAlt+Shift+Left"
-msgstr "Desplazar panorama a la izquierda en la pista activa.\tAlt+Mayús+Izquierda"
+msgid "Mute/Unmute focused track"
+msgstr "Activar o desactivar silencio en la pista activa"
#: Menus.cpp:1058
-msgid "Pan right on focused track\tAlt+Shift+Right"
-msgstr "Desplazar panorama a la derecha en la pista activa.\tAlt+Mayús+Derecha"
+msgid "Solo/Unsolo focused track"
+msgstr "Activar o desactivar Solo en la pista activa"
#: Menus.cpp:1059
-msgid "Change gain on focused track\tShift+G"
-msgstr "Cambiar ganancia en la pista activa\tMayús+G"
-
-#: Menus.cpp:1060
-msgid "Increase gain on focused track\tAlt+Shift+Up"
-msgstr "Incrementar ganancia en la pista activa\tAlt+Mayús+Arriba"
+msgid "Close focused track"
+msgstr "Cerrar la pista activa"
#: Menus.cpp:1061
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
-msgstr "Decrementa ganancia en la pista activa\tAlt+Mayús+Abajo"
+msgid "Snap To On"
+msgstr "Activar ajuste"
#: Menus.cpp:1062
-msgid "Open menu on focused track\tShift+M"
-msgstr "Desplegar menú en la pista activa\tMayús+M"
+msgid "Snap To Off"
+msgstr "Desactivar ajuste"
-#: Menus.cpp:1063
-msgid "Mute/Unmute focused track\tShift+U"
-msgstr "Activar o desactivar silencio en la pista activa\tMayús+U"
+#: Menus.cpp:1066
+msgid "Full screen on/off"
+msgstr "Activar/Desactivar pantalla completa"
-#: Menus.cpp:1064
-msgid "Solo/Unsolo focused track\tShift+S"
-msgstr "Activar o desactivar Solo en la pista activa\tMayús+S"
+#: Menus.cpp:1068
+msgid "Adjust output gain"
+msgstr "Ajustar la ganancia de salida"
-#: Menus.cpp:1065
-msgid "Close focused track\tShift+C"
-msgstr "Cerrar la pista activa\tMayús+C"
+#: Menus.cpp:1069
+msgid "Increase output gain"
+msgstr "Incrementar la ganancia de salida"
-#: Menus.cpp:1067
-msgid "Snap To On"
-msgstr "Activar ajuste"
-
-#: Menus.cpp:1068
-msgid "Snap To Off"
-msgstr "Desactivar ajuste"
+#: Menus.cpp:1070
+msgid "Decrease output gain"
+msgstr "Decrementar la ganancia de salida"
#: Menus.cpp:1071
-msgid "Full screen on/off\tF11"
-msgstr "Activar/Desactivar pantalla completa\tF11"
+msgid "Adjust input gain"
+msgstr "Ajustar la ganancia de entrada"
+
+#: Menus.cpp:1072
+msgid "Increase input gain"
+msgstr "Incrementar la ganancia de entrada"
+
+#: Menus.cpp:1073
+msgid "Decrease input gain"
+msgstr "Decrementar la ganancia de entrada"
+
+#: Menus.cpp:1075
+msgid "Adjust input source"
+msgstr "Ajustar la fuente de entrada"
+
+#: Menus.cpp:1079
+msgid "Play at speed"
+msgstr "Reproducir a velocidad"
+
+#: Menus.cpp:1080
+msgid "Adjust playback speed"
+msgstr "Ajustar la velocidad de reproducción"
+
+#: Menus.cpp:1081
+msgid "Increase playback speed"
+msgstr "Incrementar la velocidad de reproducción"
+
+#: Menus.cpp:1082
+msgid "Decrease playback speed"
+msgstr "Decrementar la velocidad de reproducción"
#. i18n-hint: This is the name of the menu item on Mac OS X only
-#: Menus.cpp:1149
+#: Menus.cpp:1167
msgid "Open Recent"
msgstr "Abrir reciente"
#. i18n-hint: This is the name of the menu item on Windows and Linux
-#: Menus.cpp:1152
+#: Menus.cpp:1170
msgid "Recent &Files"
msgstr "Archivos &recientes"
-#: Menus.cpp:1201
+#: Menus.cpp:1188
#, c-format
msgid "&Undo %s"
msgstr "&Deshacer %s"
-#: Menus.cpp:1227
+#: Menus.cpp:1214
msgid "Can't Undo"
msgstr "No se puede deshacer"
-#: Menus.cpp:1236
+#: Menus.cpp:1223
#, c-format
msgid "&Redo %s"
msgstr "&Rehacer %s"
-#: Menus.cpp:1242
+#: Menus.cpp:1229
msgid "Can't Redo"
msgstr "No se puede rehacer"
-#: Menus.cpp:1848
+#: Menus.cpp:1874
msgid "Sort By Time"
msgstr "Ordenar por fecha"
-#: Menus.cpp:1848
+#: Menus.cpp:1874
msgid "Tracks sorted by time"
msgstr "Pistas ordenadas por fecha"
-#: Menus.cpp:1874
+#: Menus.cpp:1900
msgid "Sort By Name"
msgstr "Ordenar por nombre"
-#: Menus.cpp:1874
+#: Menus.cpp:1900
msgid "Tracks sorted by name"
msgstr "Pistas ordenadas por nombre"
-#: Menus.cpp:2025
-msgid "Set Left Selection Bound"
+#: Menus.cpp:2051 Menus.cpp:2087
+msgid "Position"
+msgstr "Posición"
+
+#: Menus.cpp:2051
+msgid "Set Left Selection Boundary"
msgstr "Establecer lÃmite izquierdo de selección"
-#: Menus.cpp:2060
-msgid "Set Right Selection Bound"
+#: Menus.cpp:2087
+msgid "Set Right Selection Boundary"
msgstr "Establecer lÃmite derecho de selección"
-#: Menus.cpp:2329
+#: Menus.cpp:2444
msgid "You must select a track first."
msgstr "Primero debe seleccionar una pista."
-#: Menus.cpp:2361
+#: Menus.cpp:2479
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "Repetir %s\tCtrl+R"
+msgid "Repeat %s"
+msgstr "Repetir %s"
-#: Menus.cpp:2504
+#: Menus.cpp:2620
msgid "There are no label tracks to export."
msgstr "No hay pistas de etiqueta que exportar."
-#: Menus.cpp:2599
+#: Menus.cpp:2715
msgid "Export MIDI As:"
msgstr "Exportar MIDI como:"
-#: Menus.cpp:2603
+#: Menus.cpp:2719
msgid "MIDI file (*.mid)|*.mid|Allegro file (*.gro)|*.gro"
msgstr "Archivos MIDI (*.mid)|*.mid|Archivos Allegro (*.gro)|*.gro"
-#: Menus.cpp:2635
+#: Menus.cpp:2751
msgid ""
"You have selected a filename with an unrecognized file extension.\n"
"Do you want to continue?"
@@ -2428,400 +2931,400 @@ msgstr ""
"Ha seleccionado un nombre de archivo con una extensión no identificada.\n"
"¿Está seguro de que quiere continuar?"
-#: Menus.cpp:2636
+#: Menus.cpp:2752
msgid "Export MIDI"
msgstr "Exportar MIDI"
-#: Menus.cpp:2694
+#: Menus.cpp:2830
msgid "Nothing to undo"
msgstr "No hay nada que deshacer"
-#: Menus.cpp:2714
+#: Menus.cpp:2851
msgid "Nothing to redo"
msgstr "No hay nada que rehacer"
-#: Menus.cpp:2801 TrackPanel.cpp:596 toolbars/EditToolBar.cpp:133
+#: Menus.cpp:2958 TrackPanel.cpp:652 toolbars/EditToolBar.cpp:130
+#: toolbars/EditToolBar.cpp:190
msgid "Cut"
msgstr "Cortar"
-#: Menus.cpp:2801
+#: Menus.cpp:2958
msgid "Cut to the clipboard"
msgstr "Cortar y guardar en portapapeles"
-#: Menus.cpp:2841
+#: Menus.cpp:2997
msgid "Split Cut"
msgstr "Dividir y cortar"
-#: Menus.cpp:2841
+#: Menus.cpp:2997
msgid "Split-cut to the clipboard"
msgstr "Divide y corta en el portapapeles"
-#: Menus.cpp:2906 Menus.cpp:2978 Menus.cpp:3170 TrackPanel.cpp:598
-#: toolbars/EditToolBar.cpp:137
+#: Menus.cpp:3063 Menus.cpp:3128 Menus.cpp:3209 Menus.cpp:3408
+#: TrackPanel.cpp:654 toolbars/EditToolBar.cpp:134
+#: toolbars/EditToolBar.cpp:192
msgid "Paste"
msgstr "Pegar"
-#: Menus.cpp:2906
+#: Menus.cpp:3063
msgid "Pasted text from the clipboard"
msgstr "Texto pegado desde el portapapeles"
-#: Menus.cpp:2978 Menus.cpp:3170
+#: Menus.cpp:3128 Menus.cpp:3209 Menus.cpp:3408
msgid "Pasted from the clipboard"
msgstr "Pegado desde el portapapeles"
-#: Menus.cpp:3044
+#: Menus.cpp:3277
msgid "Pasting one type of track into another is not allowed."
msgstr "No se puede pegar un tipo de pista en otra."
-#: Menus.cpp:3056
+#: Menus.cpp:3289
msgid "Copying stereo audio into a mono track is not allowed."
msgstr "No se puede copiar audio estéreo en una pista mono."
-#: Menus.cpp:3206 toolbars/EditToolBar.cpp:139
+#: Menus.cpp:3444 toolbars/EditToolBar.cpp:193
msgid "Trim"
msgstr "Recortar"
-#: Menus.cpp:3206
+#: Menus.cpp:3444
msgid "Trim file to selection"
msgstr "Recortar archivo hasta la selección"
-#: Menus.cpp:3235
+#: Menus.cpp:3473
#, c-format
msgid "Split-deleted %.2f seconds at t=%.2f"
msgstr "Dividir y borrar %.2f segundos en t=%.2f"
-#: Menus.cpp:3238
+#: Menus.cpp:3476
msgid "Split Delete"
msgstr "Dividir y borrar"
-#: Menus.cpp:3259
+#: Menus.cpp:3497
#, c-format
msgid "Disjoined %.2f seconds at t=%.2f"
msgstr "Desunidos %.2f segundos en t=%.2f"
-#: Menus.cpp:3262
+#: Menus.cpp:3500
msgid "Disjoin"
msgstr "Desunir"
-#: Menus.cpp:3283
+#: Menus.cpp:3521
#, c-format
msgid "Joined %.2f seconds at t=%.2f"
msgstr "Unidos %.2f segundos en t=%.2f"
-#: Menus.cpp:3286
+#: Menus.cpp:3524
msgid "Join"
msgstr "Unir"
-#: Menus.cpp:3305
+#: Menus.cpp:3543
#, c-format
msgid "Silenced selected tracks for %.2f seconds at %.2f"
msgstr "Pistas seleccionadas silenciadas durante %.2f segundos en %.2f"
-#: Menus.cpp:3307 toolbars/EditToolBar.cpp:141
+#: Menus.cpp:3545 toolbars/EditToolBar.cpp:194
msgid "Silence"
msgstr "Silenciar"
-#: Menus.cpp:3341
+#: Menus.cpp:3575
msgid "Duplicate"
msgstr "Duplicar"
-#: Menus.cpp:3341
+#: Menus.cpp:3575
msgid "Duplicated"
msgstr "Duplicado"
-#: Menus.cpp:3360
+#: Menus.cpp:3594
msgid "Cut Labels"
msgstr "Cortar etiquetas"
-#: Menus.cpp:3360
+#: Menus.cpp:3594
msgid "Cut labeled regions to the clipboard"
msgstr "Cortar zonas etiquetadas y guardar en portapapeles"
-#: Menus.cpp:3374
+#: Menus.cpp:3608
msgid "SplitCut labeled regions to the clipboard"
msgstr "Dividir y cortar zonas etiquetadas en el portapapeles"
-#: Menus.cpp:3375
+#: Menus.cpp:3609
msgid "Split Cut Labels"
msgstr "Dividir y cortar etiquetas"
-#: Menus.cpp:3389
+#: Menus.cpp:3623
msgid "Copied labeled regions to the clipboard"
msgstr "Pegadas zonas etiquetadas desde el portapapeles"
-#: Menus.cpp:3389
+#: Menus.cpp:3623
msgid "Copy Labels"
msgstr "Copiar etiquetas"
-#: Menus.cpp:3401
+#: Menus.cpp:3635
msgid "Delete Labels"
msgstr "Borrar etiquetas"
-#: Menus.cpp:3401
+#: Menus.cpp:3635
msgid "Deleted labeled regions"
msgstr "Zonas etiquetadas borradas"
-#: Menus.cpp:3413
+#: Menus.cpp:3647
msgid "Split Delete Labels"
msgstr "Dividir y borrar etiquetas"
-#: Menus.cpp:3413
+#: Menus.cpp:3647
msgid "Split Deleted labeled regions"
msgstr "Dividir y borrar zonas etiquetadas"
-#: Menus.cpp:3425
+#: Menus.cpp:3659
msgid "Silence Labels"
msgstr "Silenciar en etiquetas"
-#: Menus.cpp:3425
+#: Menus.cpp:3659
msgid "Silenced labeled regions"
msgstr "Silenciar zonas etiquetadas"
-#: Menus.cpp:3437
+#: Menus.cpp:3671
msgid "Split Labels"
msgstr "Dividir en etiquetas"
-#: Menus.cpp:3437
+#: Menus.cpp:3671
msgid "Split labeled regions"
msgstr "Dividir en las zonas etiquetadas"
-#: Menus.cpp:3449
+#: Menus.cpp:3683
msgid "Join Labels"
msgstr "Unir etiquetas"
-#: Menus.cpp:3449
+#: Menus.cpp:3683
msgid "Joined labeled regions"
msgstr "Unir zonas etiquetadas"
-#: Menus.cpp:3461
+#: Menus.cpp:3695
msgid "Disjoin Labels"
msgstr "Desunir etiquetas"
-#: Menus.cpp:3461
+#: Menus.cpp:3695
msgid "Disjoined labeled regions"
msgstr "Desunir zonas etiquetadas"
-#: Menus.cpp:3483 TrackPanel.cpp:6134
+#: Menus.cpp:3717 TrackPanel.cpp:6257
msgid "Split"
msgstr "Dividir"
-#: Menus.cpp:3577
+#: Menus.cpp:3806
msgid "Split New"
msgstr "Dividir y nuevo"
-#: Menus.cpp:3577
+#: Menus.cpp:3806
msgid "Split to new track"
msgstr "Dividir en una nueva pista"
-#: Menus.cpp:3660
+#: Menus.cpp:3888
msgid "Split at labels"
msgstr "Dividir en las etiquetas"
-#: Menus.cpp:3961
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "Para dibujar el espectro, todas las pistas seleccionadas deben tener la misma frecuencia de muestreo."
-
-#: Menus.cpp:3987
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "Demasiado audio seleccionado. Sólo los primeros %.1f segundos de audio serán analizados."
-
-#: Menus.cpp:4122
+#: Menus.cpp:4302
#, c-format
msgid "Imported labels from '%s'"
msgstr "Etiquetas Importadas de '%s'"
-#: Menus.cpp:4123
+#: Menus.cpp:4303
msgid "Import Labels"
msgstr "Importar etiquetas"
-#: Menus.cpp:4134
+#: Menus.cpp:4314
msgid "Select a MIDI file..."
msgstr "Seleccionar un archivo MIDI..."
-#: Menus.cpp:4138
-msgid "MIDI and Allegro files (*.mid;*.midi;*.gro)|*.mid;*.midi;*.gro|MIDI files (*.mid;*.midi)|*.mid;*.midi|Allegro files (*.gro)|*.gro|All files (*.*)|*.*"
-msgstr "Archivos MIDI y Allegro (*.mid;*.midi;*.gro)|*.mid;*.midi;*.gro|Archivos MIDI (*.mid;*.midi)|*.mid;*.midi|Archivos Allegro (*.gro)|*.gro|Todos los archivos (*.*)|*.*"
+#: Menus.cpp:4318
+msgid ""
+"MIDI and Allegro files (*.mid;*.midi;*.gro)|*.mid;*.midi;*.gro|MIDI files (*."
+"mid;*.midi)|*.mid;*.midi|Allegro files (*.gro)|*.gro|All files (*.*)|*.*"
+msgstr ""
+"Archivos MIDI y Allegro (*.mid;*.midi;*.gro)|*.mid;*.midi;*.gro|Archivos "
+"MIDI (*.mid;*.midi)|*.mid;*.midi|Archivos Allegro (*.gro)|*.gro|Todos los "
+"archivos (*.*)|*.*"
-#: Menus.cpp:4154
+#: Menus.cpp:4334
#, c-format
msgid "Imported MIDI from '%s'"
msgstr "MIDI importado de '%s'"
-#: Menus.cpp:4155
+#: Menus.cpp:4335
msgid "Import MIDI"
msgstr "Importar MIDI"
-#: Menus.cpp:4169
+#: Menus.cpp:4349
msgid "Select any uncompressed audio file..."
msgstr "Seleccione algún archivo de audio descomprimido..."
-#: Menus.cpp:4173
+#: Menus.cpp:4353
msgid "All files (*)|*"
msgstr "Todos los archivos (*)|*"
-#: Menus.cpp:4197
+#: Menus.cpp:4377
msgid "Edit the metadata tags"
msgstr "Editar las etiquetas de metadatos"
-#: Menus.cpp:4198 export/Export.cpp:353
+#: Menus.cpp:4378 export/Export.cpp:348
msgid "Edit Metadata"
msgstr "Editar metadatos"
-#: Menus.cpp:4198
+#: Menus.cpp:4378
msgid "Edit Metadata tags"
msgstr "Editar etiquetas de metadatos"
-#: Menus.cpp:4254
+#: Menus.cpp:4433
#, c-format
msgid "Rendered all audio in track '%s'"
msgstr "Generado todo el audio en la pista '%s'"
-#: Menus.cpp:4255
+#: Menus.cpp:4434
msgid "Render"
msgstr "Generar"
-#: Menus.cpp:4260
+#: Menus.cpp:4439
#, c-format
msgid "Mixed and rendered %d tracks into one new stereo track"
msgstr "Mezclado y generado %d pistas en una nueva pista estéreo"
-#: Menus.cpp:4263
+#: Menus.cpp:4442
#, c-format
msgid "Mixed and rendered %d tracks into one new mono track"
msgstr "Mezcladas y generadas %d pistas en una nueva pista mono"
-#: Menus.cpp:4265 Mix.cpp:121
-msgid "&Mix and Render"
-msgstr "&Mezclar y generar"
+#: Menus.cpp:4444 Mix.cpp:120
+msgid "Mix and Render"
+msgstr "Mezclar y generar"
-#: Menus.cpp:4395
+#: Menus.cpp:4576
msgid "Aligned with zero"
msgstr "Alineado en cero"
-#: Menus.cpp:4399
+#: Menus.cpp:4580
msgid "Aligned cursor"
msgstr "Cursor alineado"
-#: Menus.cpp:4403
+#: Menus.cpp:4584
msgid "Aligned with selection start"
msgstr "Alineado con comienzo de selección"
-#: Menus.cpp:4407
+#: Menus.cpp:4588
msgid "Aligned with selection end"
msgstr "Alineado con final de selección"
-#: Menus.cpp:4411
+#: Menus.cpp:4592
msgid "Aligned end with cursor"
msgstr "Alineado final con cursor"
-#: Menus.cpp:4415
+#: Menus.cpp:4596
msgid "Aligned end with selection start"
msgstr "Alineado final con comienzo de selección"
-#: Menus.cpp:4419
+#: Menus.cpp:4600
msgid "Aligned end with selection end"
msgstr "Alineado final con final de selección"
-#: Menus.cpp:4423
+#: Menus.cpp:4604
msgid "Aligned"
msgstr "Alineado"
-#: Menus.cpp:4456
+#: Menus.cpp:4637
msgid "Align"
msgstr "Alinear"
-#: Menus.cpp:4541
+#: Menus.cpp:4723
msgid "Sync MIDI with Audio"
msgstr "Sincronizar MIDI con audio"
-#: Menus.cpp:4545
+#: Menus.cpp:4727
msgid "Alignment completed."
msgstr "Alineamiento completado."
-#: Menus.cpp:4556
+#: Menus.cpp:4738
msgid "Created new audio track"
msgstr "Nueva pista de audio creada"
-#: Menus.cpp:4556 Menus.cpp:4579 Menus.cpp:4594 Menus.cpp:4614
+#: Menus.cpp:4738 Menus.cpp:4760 Menus.cpp:4775 Menus.cpp:4795
msgid "New Track"
msgstr "Nueva pista"
-#: Menus.cpp:4579
+#: Menus.cpp:4760
msgid "Created new stereo audio track"
msgstr "Nueva pista de audio estéreo creada"
-#: Menus.cpp:4594
+#: Menus.cpp:4775
msgid "Created new label track"
msgstr "Nueva pista de etiqueta creada"
-#: Menus.cpp:4603
+#: Menus.cpp:4784
msgid "The version of Audacity you are using does not support multiple time tracks."
-msgstr "La versión de Audacity que está utilizando no soporta múltiples pistas de tiempo."
+msgstr ""
+"La versión de Audacity que está utilizando no soporta múltiples pistas de "
+"tiempo."
-#: Menus.cpp:4614
+#: Menus.cpp:4795
msgid "Created new time track"
msgstr "Nueva pista de tiempo creada"
-#: Menus.cpp:4669
+#: Menus.cpp:4855
msgid "Added label"
msgstr "Etiqueta añadida"
-#: Menus.cpp:4704
+#: Menus.cpp:4890
msgid "Edited labels"
msgstr "Etiquetas editadas"
-#: Menus.cpp:4731
+#: Menus.cpp:4917
msgid "Save CleanSpeech Preset File As:"
msgstr "Guardar archivo de configuración de limpieza de locución como:"
-#: Menus.cpp:4735
+#: Menus.cpp:4921
msgid "CleanSpeech Presets (*.csp)|*.csp"
msgstr "Configuración de limpieza de locución (*.csp)|*.csp"
-#: Menus.cpp:4742 export/Export.cpp:605
+#: Menus.cpp:4928 export/Export.cpp:610
msgid "Sorry, pathnames longer than 256 characters not supported."
msgstr "Las rutas de carpetas no pueden superar los 256 caracteres."
-#: Menus.cpp:4788
+#: Menus.cpp:4974
msgid "Problem encountered exporting presets."
msgstr "Se ha encontrado un problema al exportar la configuración."
-#: Menus.cpp:4789 export/Export.cpp:468
+#: Menus.cpp:4975 export/Export.cpp:472
msgid "Unable to export"
msgstr "No se puede exportar"
-#: Menus.cpp:4973
+#: Menus.cpp:5158
msgid "Remove Track"
msgstr "Eliminar pista"
-#: Menus.cpp:4973
+#: Menus.cpp:5158
msgid "Removed audio track(s)"
msgstr "Pista(s) de audio eliminadas"
-#: Menus.cpp:5130 Menus.cpp:5185 export/ExportFFmpeg.cpp:710
-#: export/ExportMP3.cpp:1928
+#: Menus.cpp:5314 Menus.cpp:5370 export/ExportFFmpeg.cpp:756
+#: export/ExportMP3.cpp:1785
msgid "Resample"
msgstr "Remuestrear"
-#: Menus.cpp:5150 TrackPanel.cpp:6361
+#: Menus.cpp:5335 TrackPanel.cpp:6481
msgid "New sample rate (Hz):"
msgstr "Nueva frecuencia de muestreo (Hz):"
-#: Menus.cpp:5174 TrackPanel.cpp:6385
+#: Menus.cpp:5359 TrackPanel.cpp:6505
msgid "The entered value is invalid"
msgstr "El valor introducido es inválido"
-#: Menus.cpp:5183
+#: Menus.cpp:5368
#, c-format
msgid "Resampling track %d"
msgstr "Remuestreando pista %d"
-#: Menus.cpp:5192
+#: Menus.cpp:5377
msgid "Resample Track"
msgstr "Remuestrear pista"
-#: Menus.cpp:5192
+#: Menus.cpp:5377
msgid "Resampled audio track(s)"
msgstr "Pista(s) de audio remuestreadas"
@@ -2829,7 +3332,7 @@ msgstr "Pista(s) de audio remuestreadas"
msgid "Mix"
msgstr "Mezclar"
-#: Mix.cpp:122
+#: Mix.cpp:121
msgid "Mixing and rendering tracks"
msgstr "Mezclando y generando pistas"
@@ -2837,40 +3340,44 @@ msgstr "Mezclando y generando pistas"
msgid "Note Track"
msgstr "Pista de notas"
-#: Printing.cpp:192
+#: Printing.cpp:160
msgid "There was a problem printing."
msgstr "Se encontró un problema al imprimir."
-#: Printing.cpp:193
+#: Printing.cpp:161
msgid "Print"
msgstr "Imprimir"
-#: Project.cpp:673
+#: Project.cpp:671
+msgid "Repeat Last Effect"
+msgstr "Repetir el último efecto"
+
+#: Project.cpp:776
msgid "Main Mix"
msgstr "Mezclador principal"
-#: Project.cpp:797
+#: Project.cpp:894
#, c-format
msgid "Welcome to Audacity version %s"
msgstr "Bienvenido a la versión %s de Audacity"
-#: Project.cpp:957
+#: Project.cpp:1049
msgid "(Recovered)"
msgstr "(Recuperado)"
-#: Project.cpp:1546 TrackPanel.cpp:796 toolbars/ControlToolBar.cpp:192
+#: Project.cpp:1718 TrackPanel.cpp:846 toolbars/ControlToolBar.cpp:187
msgid "Record"
msgstr "Grabar"
-#: Project.cpp:1546 TrackPanel.cpp:796
+#: Project.cpp:1718 TrackPanel.cpp:846
msgid "Recorded Audio"
msgstr "Audio grabado"
-#: Project.cpp:1564
+#: Project.cpp:1736
msgid "Save changes before closing?"
msgstr "¿Desea guardar los cambios antes de cerrar?"
-#: Project.cpp:1567
+#: Project.cpp:1739
msgid ""
"\n"
"If saved, the project will have no tracks.\n"
@@ -2888,23 +3395,23 @@ msgstr ""
"hasta que todas las pistas estén abiertas. En ese momento \n"
"seleccione Archivo > Guardar proyecto."
-#: Project.cpp:1570
+#: Project.cpp:1742
msgid "Save changes?"
msgstr "¿Guardar cambios?"
-#: Project.cpp:1772
-msgid "All files|*.*|All supported files|"
-msgstr "Todos los archivos|*.*|Todos los archivos soportados|"
+#: Project.cpp:1954
+msgid "All files|*|All supported files|"
+msgstr "Todos los archivos|*|Todos los archivos soportados|"
-#: Project.cpp:1802
+#: Project.cpp:1984
msgid "Select one or more audio files..."
msgstr "Seleccione uno o más archivos de audio..."
-#: Project.cpp:1829
+#: Project.cpp:2011
msgid "Audacity projects|*.aup|"
msgstr "Proyectos Audacity|*.aup|"
-#: Project.cpp:1882 Project.cpp:2304
+#: Project.cpp:2071 Project.cpp:2506
#, c-format
msgid ""
"This file was saved by Audacity %s, a much\n"
@@ -2924,19 +3431,35 @@ msgstr ""
"\n"
"¿Le gustarÃa abrir el archivo ahora?"
-#: Project.cpp:1883
+#: Project.cpp:2072
msgid "1.0 or earlier"
msgstr "1.0 o anterior"
-#: Project.cpp:1889 Project.cpp:2316
+#: Project.cpp:2078 Project.cpp:2518
msgid "Opening old project file"
msgstr "Abriendo un archivo de proyecto antiguo"
-#: Project.cpp:1915 Project.cpp:1923
+#: Project.cpp:2102
+msgid ""
+"You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+"Está intentado abrir un archivo de copia de seguridad generado automáticamente.\n"
+"Esto puede conllevar una grave perdida de datos.\n"
+"\n"
+"En su lugar, abra el archivo de proyecto de Audacity."
+
+#: Project.cpp:2103
+msgid "Backup file detected"
+msgstr "Archivo de copia de seguridad detectado"
+
+#: Project.cpp:2117 Project.cpp:2125 xml/XMLWriter.cpp:306
msgid "Error opening file"
msgstr "Error al abrir archivo"
-#: Project.cpp:1929
+#: Project.cpp:2131
#, c-format
msgid ""
"File may be invalid or corrupted: \n"
@@ -2945,40 +3468,44 @@ msgstr ""
"El archivo podrÃa ser inválido o estar dañado: \n"
"%s"
-#: Project.cpp:1930
+#: Project.cpp:2132
msgid "Error opening file or project"
msgstr "Error al abrir el archivo o proyecto"
-#: Project.cpp:1950
-msgid "Audacity was unable to convert an Audacity 1.0 project to the new project format."
-msgstr "Audacity no pudo convertir un proyecto de Audacity 1.0 al nuevo formato de proyecto."
+#: Project.cpp:2152
+msgid ""
+"Audacity was unable to convert an Audacity 1.0 project to the new project "
+"format."
+msgstr ""
+"Audacity no pudo convertir un proyecto de Audacity 1.0 al nuevo formato de "
+"proyecto."
-#: Project.cpp:2053
+#: Project.cpp:2259
msgid "Could not remove old auto save file"
msgstr "No se ha podido eliminar el archivo de guardado automático"
-#: Project.cpp:2055
+#: Project.cpp:2261
msgid "Project was recovered"
msgstr "El proyecto fue recuperado"
-#: Project.cpp:2055
+#: Project.cpp:2261
msgid "Recover"
msgstr "Recuperar"
-#: Project.cpp:2084
+#: Project.cpp:2290
msgid "Project checker repaired file"
msgstr "La comprobación de proyectos recuperó el archivo"
-#: Project.cpp:2084 effects/Repair.h:29
+#: Project.cpp:2290 effects/Repair.h:29
msgid "Repair"
msgstr "Reparación"
-#: Project.cpp:2230
+#: Project.cpp:2431
#, c-format
msgid "Couldn't find the project data folder: \"%s\""
msgstr "No se ha podido encontrar la carpeta de datos de proyecto: \"%s\""
-#: Project.cpp:2273
+#: Project.cpp:2475
#, c-format
msgid ""
"This file was saved using Audacity %s.\n"
@@ -2989,25 +3516,28 @@ msgstr ""
"Está usando Audacity %s. Necesita actualizar a una\n"
"versión más moderna para poder abrir este archivo."
-#: Project.cpp:2277
+#: Project.cpp:2479
msgid "Can't open project file"
msgstr "No se puede abrir el archivo de proyecto"
-#: Project.cpp:2311
+#: Project.cpp:2513
#, c-format
msgid ""
"This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
msgstr ""
"Este archivo fue guardado por Audacity %s.\n"
-"La versión actual puede abrirlo, pero si lo guarda con esta versión no podrá volverlo a abrir con versiones antiguas de Audacity.\n"
-"una copia de seguridad previamente.\n"
"\n"
-"¿Le gustarÃa abrir el archivo de todos modos?"
+"Audacity puede abrir y guardar este archivo, pero guardarlo en esta versión\n"
+"evitará que pueda ser abierto de nuevo con la versión 1.2 o anterior.\n"
+"\n"
+"¿Quiere abrir el archivo de todos modos?"
-#: Project.cpp:2537
+#: Project.cpp:2711
msgid ""
"Your project is now empty.\n"
"If saved, the project will have no tracks.\n"
@@ -3028,213 +3558,408 @@ msgstr ""
"\n"
"¿Guardar de todos modos?"
-#: Project.cpp:2538
+#: Project.cpp:2712
msgid "Warning empty project"
msgstr "Proyecto vacÃo"
-#: Project.cpp:2588
+#: Project.cpp:2821
#, c-format
msgid ""
"Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+"is not writable or the disk is full."
msgstr ""
"No se ha podido guardar el proyecto. Tal vez %s \n"
"no se pueda escribir o el disco esté lleno."
-#: Project.cpp:2590 Project.cpp:2605
+#: Project.cpp:2823 Project.cpp:2849
msgid "Error saving project"
msgstr "Error al guardar el proyecto"
-#: Project.cpp:2680
+#: Project.cpp:2847 Project.cpp:3950 Tags.cpp:1203
+#: effects/Equalization.cpp:1095
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr "No se ha podido escribir en el archivo \"%s\": %s"
+
+#: Project.cpp:2927
#, c-format
msgid "Saved %s"
msgstr "Se guardó %s"
-#: Project.cpp:2806
+#: Project.cpp:3080
#, c-format
msgid "Imported '%s'"
msgstr "'%s' importado"
-#: Project.cpp:2807 import/ImportPCM.cpp:483 import/ImportPCM.cpp:527
+#: Project.cpp:3081
msgid "Import"
msgstr "Importar"
-#: Project.cpp:2840 Project.cpp:2848
+#: Project.cpp:3116
msgid "Error importing"
msgstr "Error al importar"
-#: Project.cpp:2882
+#: Project.cpp:3163
msgid "Save Speech As:"
msgstr "Guardar locución como:"
-#: Project.cpp:2884
+#: Project.cpp:3165
msgid "Windows PCM Audio file (*.wav)|*.wav"
msgstr "Archivo de audio PCM de Windows (*.wav)|*.wav"
-#: Project.cpp:2891
+#: Project.cpp:3172
msgid ""
-"Audacity compressed project files (.aup) save your work in a smaller, compressed (.ogg) format. \n"
-"Compressed project files are a good way to transmit your project online, because they are much smaller. \n"
-"To open a compressed project takes longer than usual, as it imports each compressed track. \n"
+"Audacity compressed project files (.aup) save your work in a smaller, "
+"compressed (.ogg) format. \n"
+"Compressed project files are a good way to transmit your project online, "
+"because they are much smaller. \n"
+"To open a compressed project takes longer than usual, as it imports each "
+"compressed track. \n"
"\n"
"Most other programs can't open Audacity project files.\n"
-"When you want to save a file that can be opened by other programs, select one of the\n"
+"When you want to save a file that can be opened by other programs, select "
+"one of the\n"
"Export commands."
msgstr ""
"Los archivo de proyecto comprimidos de Audacity (.aup) le permiten guardar \n"
"su trabajo en un formato más pequeño y comprimido (.ogg).\n"
-"Los archivos de proyecto comprimidos suponen un buen métido para transmitir proyectos online, ya que son mucho más pequeños.\n"
-"Abrir un proyecto comprimido requiere más tiempo de lo habitual, ya que se tiene que importar cada pista comprimida.\n"
+"Los archivos de proyecto comprimidos suponen un buen métido para transmitir "
+"proyectos online, ya que son mucho más pequeños.\n"
+"Abrir un proyecto comprimido requiere más tiempo de lo habitual, ya que se "
+"tiene que importar cada pista comprimida.\n"
"\n"
-"La mayorÃa de los programas no pueden abrir archivos de proyecto de Audacity.\n"
-"Cuando quiera guardar un archivo que deba ser abierto con otros programas, seleccione \n"
+"La mayorÃa de los programas no pueden abrir archivos de proyecto de "
+"Audacity.\n"
+"Cuando quiera guardar un archivo que deba ser abierto con otros programas, "
+"seleccione \n"
"una de las opciones de Exportar."
-#: Project.cpp:2894
+#: Project.cpp:3175
msgid ""
"You are saving an Audacity project file (.aup).\n"
"\n"
"Saving a project creates a file that only Audacity can open.\n"
"\n"
-"To save an audio file for other programs, use one of the \"File > Export\" commands.\n"
+"To save an audio file for other programs, use one of the \"File > Export\" "
+"commands.\n"
msgstr ""
"Esta guardando un archivo como proyecto de Audacity (.aup).\n"
"\n"
-"Guardar un proyecto crea un archivo que sólo puede ser abierto con Audacity.\n"
+"Guardar un proyecto crea un archivo que sólo puede ser abierto con "
+"Audacity.\n"
"\n"
-"Para crear un archivo de audio que pueda ser utilizado en otros programas utilice una de las opciones de \"Archivo > Exportar\".\n"
+"Para crear un archivo de audio que pueda ser utilizado en otros programas "
+"utilice una de las opciones de \"Archivo > Exportar\".\n"
+
+#: Project.cpp:3177
+msgid "Save Project As..."
+msgstr "Guardar proyecto como..."
-#: Project.cpp:2898
+#: Project.cpp:3179
msgid "Audacity projects (*.aup)|*.aup"
msgstr "Proyectos de Audacity (*.aup)|*.aup"
-#: Project.cpp:2952
+#: Project.cpp:3228
msgid "Created new project"
msgstr "Nuevo proyecto creado"
-#: Project.cpp:3111
+#: Project.cpp:3372
#, c-format
msgid "Deleted %.2f seconds at t=%.2f"
msgstr "Borrados %.2f segundos en t=%.2f"
-#: Project.cpp:3114 effects/Equalization.cpp:1276
-#: effects/Equalization.cpp:2607
+#: Project.cpp:3375 effects/Equalization.cpp:1295
+#: effects/Equalization.cpp:2647
msgid "Delete"
msgstr "Borrar"
-#: Project.cpp:3308
+#: Project.cpp:3569
#, c-format
msgid "Disk space remains for recording %d hours and %d minutes."
msgstr "Espacio de disco disponible para grabar %d horas y %d minutos."
-#: Project.cpp:3311
+#: Project.cpp:3572
#, c-format
msgid "Disk space remains for recording 1 hour and %d minutes."
msgstr "Espacio de disco disponible para grabar 1 hora y %d minutos."
-#: Project.cpp:3314
+#: Project.cpp:3575
#, c-format
msgid "Disk space remains for recording %d minutes."
msgstr "Espacio de disco disponible para grabar %d minutos."
-#: Project.cpp:3317
+#: Project.cpp:3578
#, c-format
msgid "Disk space remains for recording %d seconds."
msgstr "Espacio de disco disponible para grabar %d segundos."
-#: Project.cpp:3320
+#: Project.cpp:3581
msgid "Out of disk space"
msgstr "Sin espacio en disco"
-#: Project.cpp:3333
+#: Project.cpp:3594
#, c-format
-msgid "Import(s) complete. Running %d on-demand waveform calculations. Overall %2.0f%% complete."
-msgstr "Importación completada.Ejecutando %d calculos de formas de onda bajo demanda. Total de %2.0f%% completadas."
+msgid ""
+"Import(s) complete. Running %d on-demand waveform calculations. Overall %2.0f"
+"%% complete."
+msgstr ""
+"Importación completada.Ejecutando %d calculos de formas de onda bajo "
+"demanda. Total de %2.0f%% completadas."
-#: Project.cpp:3336
+#: Project.cpp:3597
#, c-format
msgid "Import complete. Running an on-demand waveform calculation. %2.0f%% complete."
-msgstr "Importación completada. Ejecutando un cálculo de forma de onda bajo demanda. %2.0f%% completados."
+msgstr ""
+"Importación completada. Ejecutando un cálculo de forma de onda bajo "
+"demanda. %2.0f%% completados."
-#: Project.cpp:3614
+#: Project.cpp:3881
msgid "Could not remove old autosave file: "
msgstr "No se ha podido eliminar el archivo de guardado automático anterior: "
-#: Project.cpp:3655
+#: Project.cpp:3922
msgid "New Project"
msgstr "Nuevo proyecto"
-#: Project.cpp:3668
+#: Project.cpp:3952
msgid "Error writing autosave file"
msgstr "Error al escribir el archivo de guardado automático"
-#: Project.cpp:3693
+#: Project.cpp:3967
msgid "Could not create autosave file: "
msgstr "No se ha podido crear el archivo de guardado automático: "
-#: Project.cpp:3719
+#: Project.cpp:3993
#, c-format
msgid "Actual Rate: %d"
msgstr "Frecuencia real: %d"
-#: Resample.cpp:42
+#: Resample.cpp:62
msgid "Libresample by Dominic Mazzoni and Julius Smith"
msgstr "Libresample de Dominic Mazzoni y Julius Smith"
-#: Resample.cpp:53
+#: Resample.cpp:73
msgid "High-quality Sinc Interpolation"
msgstr "Interpolación de sincronÃa de alta calidad"
-#: Resample.cpp:55
+#: Resample.cpp:75
msgid "Fast Sinc Interpolation"
msgstr "Interpolación de sincronÃa rápida"
-#: Resample.cpp:125
+#: Resample.cpp:141
msgid "Libsamplerate by Erik de Castro Lopo"
msgstr "Libsamplerate de Erik de Castro Lopo"
-#: Resample.cpp:218
+#: Resample.cpp:230
#, c-format
msgid "Libsamplerate error: %d\n"
msgstr "Error de Libsamplerate: %d\n"
-#: Resample.cpp:240 Resample.cpp:250
+#: Resample.cpp:252 Resample.cpp:262
msgid "Resampling disabled."
msgstr "Remuestreo desactivado."
-#. i18n-hint: Audio data bit depth (precison): 16-bit integers
+#. i18n-hint: Audio data bit depth (precision): 16-bit integers
#: SampleFormat.cpp:66
msgid "16-bit PCM"
msgstr "16-bit PCM"
-#. i18n-hint: Audio data bit depth (precison): 24-bit integers
+#. i18n-hint: Audio data bit depth (precision): 24-bit integers
#: SampleFormat.cpp:69
msgid "24-bit PCM"
msgstr "24-bit PCM"
-#. i18n-hint: Audio data bit depth (precison): 32-bit floating point
+#. i18n-hint: Audio data bit depth (precision): 32-bit floating point
#: SampleFormat.cpp:72
msgid "32-bit float"
msgstr "32-bit flotante"
-#: Screenshot.cpp:384
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr "Ãrea de captura de pantalla"
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr "Seleccione una carpeta para guardar los archivos"
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr "Guardar imágenes en:"
+
+#: Screenshot.cpp:328 export/ExportMultiple.cpp:242
+#: prefs/DirectoriesPrefs.cpp:94
+msgid "Choose..."
+msgstr "Seleccionar..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr "Capturar la ventana completa o la pantalla"
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr "Reducir ventana"
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr "Aumentar ventana"
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr "Fondo azul"
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr "Fondo blanco"
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr "Capturar interior de ventana"
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr "Capturar la ventana completa"
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr "Capturar ventana extra"
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr "Capturar pantalla completa"
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr "Esperar cinco segundos y capturar el cuadro de diálogo o ventana en primer plano"
+
+#: Screenshot.cpp:369 effects/Normalize.cpp:74 effects/Normalize.cpp:75
+msgid "false"
+msgstr "falso"
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr "Capturar una parte de la ventana de proyecto"
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr "Todas las barras de herramientas"
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr "Barra de selección"
+
+#: Screenshot.cpp:381 toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr "Herramientas"
+
+#: Screenshot.cpp:382 effects/Contrast.cpp:410 toolbars/ControlToolBar.cpp:83
+#: toolbars/ControlToolBar.cpp:243
+msgid "Control"
+msgstr "Control"
+
+#: Screenshot.cpp:388 effects/LoadEffects.cpp:114 toolbars/MixerToolBar.cpp:59
+#: toolbars/MixerToolBar.cpp:245
+msgid "Mixer"
+msgstr "Mezclador"
+
+#: Screenshot.cpp:389 toolbars/MeterToolBar.cpp:50
+#: toolbars/MeterToolBar.cpp:114
+msgid "Meter"
+msgstr "Medidor"
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr "Edición"
+
+#: Screenshot.cpp:391 prefs/DevicePrefs.cpp:131 prefs/DevicePrefs.cpp:144
+#: prefs/MidiIOPrefs.cpp:137 prefs/MidiIOPrefs.cpp:150
+#: toolbars/DeviceToolBar.cpp:57 toolbars/DeviceToolBar.cpp:196
+msgid "Device"
+msgstr "Dispositivo"
+
+#: Screenshot.cpp:392 toolbars/TranscriptionToolBar.cpp:84
+#: toolbars/TranscriptionToolBar.cpp:253
+msgid "Transcription"
+msgstr "Transcripción"
+
+#: Screenshot.cpp:398 TrackPanel.cpp:442 TrackPanel.cpp:443
+msgid "Track Panel"
+msgstr "Panel de pista"
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr "Regla"
+
+#: Screenshot.cpp:400 export/ExportMultiple.cpp:285
+#: export/ExportMultiple.cpp:287 prefs/TracksPrefs.cpp:31
+msgid "Tracks"
+msgstr "Pistas"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr "Primera pista"
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr "Segunda pista"
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr "Escala"
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr "Un segundo"
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr "Diez segundos"
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr "Un minuto"
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr "Cinco minutos"
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr "Una hora"
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr "Pistas cortas"
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr "Pistas medias"
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr "Pistas largas"
+
+#: Screenshot.cpp:599
msgid "Saved "
msgstr "Guardado "
-#: Screenshot.cpp:387
+#: Screenshot.cpp:602
msgid "Error trying to save file: "
msgstr "Error al intentar guardar el archivo: "
-#: Sequence.cpp:745 Sequence.cpp:755 Sequence.cpp:762
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr "Seleccione una carpeta para almacenar las capturas de pantalla"
+
+#: Sequence.cpp:799 Sequence.cpp:809 Sequence.cpp:816
msgid "Gap detected in project file\n"
msgstr "Se ha detectado un hueco en el archivo del proyecto\n"
-#: ShuttleGui.cpp:1972 effects/Effect.cpp:417
-#: effects/audiounits/AudioUnitEffect.cpp:877
+#: ShuttleGui.cpp:2034 effects/Effect.cpp:436
+#: effects/audiounits/AudioUnitEffect.cpp:851
msgid "Pre&view"
msgstr "&Vista previa"
-#: ShuttleGui.cpp:1979
+#: ShuttleGui.cpp:2041
msgid "&Debug"
msgstr "&Depurar"
@@ -3247,121 +3972,125 @@ msgid "Activation level (dB):"
msgstr "Nivel de activación (dB):"
#: SplashDialog.cpp:60
-msgid "&Welcome to Audacity!"
-msgstr "&Bienvenido a Audacity"
+msgid "Welcome to Audacity!"
+msgstr "Bienvenido a Audacity"
#: SplashDialog.cpp:112
msgid "Don't show this again at start up"
msgstr "No volver a mostrar esta ventana en el inicio del programa"
-#: Tags.cpp:640
+#: Tags.cpp:629
msgid "Artist Name"
msgstr "Artista"
-#: Tags.cpp:641
+#: Tags.cpp:630
msgid "Track Title"
msgstr "Nombre de pista"
-#: Tags.cpp:642
+#: Tags.cpp:631
msgid "Album Title"
msgstr "TÃtulo del álbum"
-#: Tags.cpp:643
+#: Tags.cpp:632
msgid "Track Number"
msgstr "Número de pista"
-#: Tags.cpp:644 Tags.cpp:2147
+#: Tags.cpp:633
msgid "Year"
msgstr "Año"
-#: Tags.cpp:645
+#: Tags.cpp:634
msgid "Genre"
msgstr "Género"
-#: Tags.cpp:646 Tags.cpp:2157 prefs/MousePrefs.cpp:96
+#: Tags.cpp:635 prefs/MousePrefs.cpp:100
msgid "Comments"
msgstr "Comentarios"
-#: Tags.cpp:777
+#: Tags.cpp:788
msgid "Use arrow keys (or RETURN key after editing) to navigate fields."
-msgstr "Use las teclas de cursor (o Intro después de editar) para desplazarse por los campos."
+msgstr ""
+"Use las teclas de cursor (o Intro después de editar) para desplazarse por "
+"los campos."
-#: Tags.cpp:813
-msgid "Tag Name"
+#: Tags.cpp:812
+msgid "Tag"
msgstr "Etiqueta"
-#: Tags.cpp:814
-msgid "Tag Value"
-msgstr "Valor de la etiqueta"
+#: Tags.cpp:813
+msgid "Value"
+msgstr "Valor"
-#: Tags.cpp:829 Tags.cpp:1486 prefs/KeyConfigPrefs.cpp:116
-msgid "&Clear"
-msgstr "&Limpiar"
+#: Tags.cpp:828
+msgid "Cl&ear"
+msgstr "L&impiar"
-#: Tags.cpp:835
+#: Tags.cpp:834
msgid "Genres"
msgstr "Géneros"
-#: Tags.cpp:826
+#: Tags.cpp:838
msgid "E&dit..."
msgstr "E&ditar..."
-#: Tags.cpp:827
+#: Tags.cpp:839
msgid "Rese&t..."
msgstr "Res&tablecer..."
-#: Tags.cpp:845 Tags.cpp:1470 Tags.cpp:1997
+#: Tags.cpp:844
msgid "Template"
msgstr "Plantilla"
-#: Tags.cpp:849 Tags.cpp:1474 Tags.cpp:2001 prefs/KeyConfigPrefs.cpp:126
+#: Tags.cpp:848 prefs/KeyConfigPrefs.cpp:167
msgid "&Load..."
msgstr "&Cargar..."
-#: Tags.cpp:850 Tags.cpp:1475 Tags.cpp:2002 prefs/KeyConfigPrefs.cpp:125
+#: Tags.cpp:849 prefs/KeyConfigPrefs.cpp:168
msgid "&Save..."
msgstr "&Guardar..."
-#: Tags.cpp:852 Tags.cpp:1477 Tags.cpp:2004
-msgid "S&et Default"
+#: Tags.cpp:851
+msgid "Set De&fault"
msgstr "&Establecer valores predeterminados"
-#: Tags.cpp:1002 Tags.cpp:1640 Tags.cpp:2368
+#: Tags.cpp:1001
msgid "Edit Genres"
msgstr "Editar géneros"
-#: Tags.cpp:1035 Tags.cpp:1047 Tags.cpp:1062 Tags.cpp:1075 Tags.cpp:1678
-#: Tags.cpp:1690 Tags.cpp:1705 Tags.cpp:1718 Tags.cpp:2411 Tags.cpp:2423
-#: Tags.cpp:2438 Tags.cpp:2451
+#: Tags.cpp:1034 Tags.cpp:1046 Tags.cpp:1061 Tags.cpp:1074
msgid "Reset Genres"
msgstr "Restablecer géneros"
-#: Tags.cpp:1035 Tags.cpp:1075 Tags.cpp:1678 Tags.cpp:1718 Tags.cpp:2411
-#: Tags.cpp:2451
+#: Tags.cpp:1034 Tags.cpp:1074
msgid "Unable to save genre file."
msgstr "No se puede guardar archivo de género."
-#: Tags.cpp:1046 Tags.cpp:1689 Tags.cpp:2422
+#: Tags.cpp:1045
msgid "Are you sure you want to reset the genre list to defaults?"
-msgstr "¿Está seguro de que desea restablecer la lista de géneros a los valores predeterminados?"
+msgstr ""
+"¿Está seguro de que desea restablecer la lista de géneros a los valores "
+"predeterminados?"
-#: Tags.cpp:1062 Tags.cpp:1705 Tags.cpp:2438
+#: Tags.cpp:1061
msgid "Unable to open genre file."
msgstr "No se puede abrir el archivo de género."
-#: Tags.cpp:1084
+#: Tags.cpp:1096
msgid "Load Metadata As:"
msgstr "Cargar metadato como:"
-#: Tags.cpp:1122 Tags.cpp:1772 Tags.cpp:2494
+#: Tags.cpp:1121
msgid "Error loading metadata"
msgstr "Error al cargar metadato"
-#: Tags.cpp:1097 Tags.cpp:1151 Tags.cpp:1751 Tags.cpp:1787 Tags.cpp:2473
-#: Tags.cpp:2509
+#: Tags.cpp:1150
msgid "Save Metadata As:"
msgstr "Guardar metadato como:"
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr "Error al guardar el archivo de etiquetas"
+
#: Theme.cpp:638
#, c-format
msgid ""
@@ -3432,7 +4161,7 @@ msgstr ""
"del tema en:\n"
" %s."
-#: Theme.cpp:942 effects/NoiseRemoval.cpp:173
+#: Theme.cpp:942 effects/NoiseRemoval.cpp:172
#, c-format
msgid ""
"Could not create directory:\n"
@@ -3461,462 +4190,488 @@ msgstr ""
" %s\n"
"ya están presentes."
-#: TimeDialog.cpp:53 TimerRecordDialog.cpp:227 TimerRecordDialog.cpp:305
-#: TimerRecordDialog.cpp:309 effects/Noise.cpp:243 effects/ToneGen.cpp:323
-#: effects/ToneGen.cpp:366
+#: TimeDialog.h:29 TimerRecordDialog.cpp:233 TimerRecordDialog.cpp:354
+#: TimerRecordDialog.cpp:358 effects/DtmfGen.cpp:446 effects/Noise.cpp:191
+#: effects/Noise.cpp:207 effects/ToneGen.cpp:279 effects/ToneGen.cpp:291
+#: effects/ToneGen.cpp:323 effects/ToneGen.cpp:335
msgid "Duration"
msgstr "Duración"
-#: TimerRecordDialog.cpp:68
+#: TimeTrack.cpp:44
+msgid "Time Track"
+msgstr "Pista de tiempo"
+
+#: TimerRecordDialog.cpp:69
msgid "Audacity Timer Record"
msgstr "Grabación programada de Audacity"
-#: TimerRecordDialog.cpp:224
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr "La duración es cero. No se grabará nada."
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr "Error en la duración"
+
+#: TimerRecordDialog.cpp:230
msgid "Recording start"
msgstr "Comienzo de la grabación"
-#: TimerRecordDialog.cpp:225
+#: TimerRecordDialog.cpp:231
msgid "Recording end"
msgstr "Fin de la grabación"
-#: TimerRecordDialog.cpp:230
+#: TimerRecordDialog.cpp:237
msgid "Audacity Timer Record Progress"
msgstr "Progreso de grabación programada de Audacity"
-#: TimerRecordDialog.cpp:267
+#: TimerRecordDialog.cpp:316
msgid "Start Date and Time"
msgstr "Fecha y hora de comienzo"
-#: TimerRecordDialog.cpp:274
+#: TimerRecordDialog.cpp:323
msgid "Start Date"
msgstr "Fecha inicial"
-#: TimerRecordDialog.cpp:286
+#: TimerRecordDialog.cpp:335
msgid "End Date and Time"
msgstr "Fecha y hora de final"
-#: TimerRecordDialog.cpp:294
+#: TimerRecordDialog.cpp:343
msgid "End Date"
msgstr "Fecha final"
#. i18n-hint: A time specification like "Sunday 28th October 2007 15:16:17 GMT"
#. * but hopefully translated by wxwidgets will be inserted into this
-#: TimerRecordDialog.cpp:381
+#: TimerRecordDialog.cpp:430
#, c-format
msgid "Waiting to start recording at %s.\n"
msgstr "Esperando para comenzar la grabación en %s.\n"
-#: TimerRecordDialog.cpp:382
+#: TimerRecordDialog.cpp:436
msgid "Audacity Timer Record - Waiting for Start"
msgstr "Grabación programada de Audacity. Esperando para comenzar"
-#: TrackPanel.cpp:457 TrackPanel.cpp:458
-msgid "Track Panel"
-msgstr "Panel de pista"
-
-#: TrackPanel.cpp:541 prefs/QualityPrefs.cpp:97
+#: TrackPanel.cpp:596 prefs/QualityPrefs.cpp:99
msgid "Other..."
msgstr "Otro..."
-#: TrackPanel.cpp:549 TrackPanel.cpp:571 TrackPanel.cpp:580 TrackPanel.cpp:588
-#: TrackPanel.cpp:5793
+#: TrackPanel.cpp:604 TrackPanel.cpp:627 TrackPanel.cpp:636 TrackPanel.cpp:644
msgid "Name..."
msgstr "Nombre..."
-#: TrackPanel.cpp:551 TrackPanel.cpp:573 TrackPanel.cpp:584 TrackPanel.cpp:590
-#: TrackPanel.cpp:5797
+#: TrackPanel.cpp:606 TrackPanel.cpp:629 TrackPanel.cpp:640 TrackPanel.cpp:646
msgid "Move Track Up"
msgstr "Desplazar pista hacia arriba"
-#: TrackPanel.cpp:552 TrackPanel.cpp:574 TrackPanel.cpp:585 TrackPanel.cpp:591
-#: TrackPanel.cpp:5798
+#: TrackPanel.cpp:607 TrackPanel.cpp:630 TrackPanel.cpp:641 TrackPanel.cpp:647
msgid "Move Track Down"
msgstr "Desplazar pista hacia abajo"
-#: TrackPanel.cpp:554 effects/ToneGen.cpp:319 prefs/GUIPrefs.cpp:154
+#: TrackPanel.cpp:609 effects/ToneGen.cpp:275 prefs/TracksPrefs.cpp:56
msgid "Waveform"
msgstr "Forma de onda"
-#: TrackPanel.cpp:555 prefs/GUIPrefs.cpp:155
+#: TrackPanel.cpp:610 prefs/TracksPrefs.cpp:57
msgid "Waveform (dB)"
msgstr "Forma de onda (dB)"
-#: TrackPanel.cpp:557 prefs/GUIPrefs.cpp:157
+#: TrackPanel.cpp:612 prefs/TracksPrefs.cpp:59
msgid "Spectrum log(f)"
msgstr "Espectro logarÃtmico (f)"
#. i18n-hint: short form of 'logarithm'
-#: TrackPanel.cpp:558 prefs/GUIPrefs.cpp:158
+#: TrackPanel.cpp:613 prefs/TracksPrefs.cpp:60
msgid "Pitch (EAC)"
msgstr "Tono (EAC)"
-#: TrackPanel.cpp:560 TrackPanel.cpp:6096
+#: TrackPanel.cpp:615 TrackPanel.cpp:6200
msgid "Mono"
msgstr "Mono"
-#: TrackPanel.cpp:561 TrackPanel.cpp:6095
+#: TrackPanel.cpp:616 TrackPanel.cpp:6199
msgid "Left Channel"
msgstr "Canal izquierdo"
-#: TrackPanel.cpp:562 TrackPanel.cpp:6095
+#: TrackPanel.cpp:617 TrackPanel.cpp:6199
msgid "Right Channel"
msgstr "Canal derecho"
-#: TrackPanel.cpp:563
+#: TrackPanel.cpp:618
msgid "Make Stereo Track"
msgstr "Hacer pista estéreo"
-#: TrackPanel.cpp:564
+#: TrackPanel.cpp:619
msgid "Split Stereo Track"
msgstr "Dividir pista estéreo"
-#: TrackPanel.cpp:566
+#: TrackPanel.cpp:620
+msgid "Split Stereo to Mono"
+msgstr "Dividir pista estéreo a mono"
+
+#: TrackPanel.cpp:622
msgid "Set Sample Format"
msgstr "Establecer formato de muestra"
-#: TrackPanel.cpp:568 TrackPanel.cpp:6341
+#: TrackPanel.cpp:624 TrackPanel.cpp:6461
msgid "Set Rate"
msgstr "Establecer frecuencia"
-#: TrackPanel.cpp:576
+#: TrackPanel.cpp:632
msgid "Up Octave"
msgstr "Subir una octava"
-#: TrackPanel.cpp:577
+#: TrackPanel.cpp:633
msgid "Down Octave"
msgstr "Bajar una octava"
-#: TrackPanel.cpp:582 TrackPanel.cpp:5795
+#: TrackPanel.cpp:638
msgid "Font..."
msgstr "Tipo de letra..."
-#: TrackPanel.cpp:593
+#: TrackPanel.cpp:649
msgid "Set Range..."
msgstr "Establecer rango..."
-#: TrackPanel.cpp:597 toolbars/EditToolBar.cpp:135
+#: TrackPanel.cpp:653 toolbars/EditToolBar.cpp:132
+#: toolbars/EditToolBar.cpp:191
msgid "Copy"
msgstr "Copiar"
-#: TrackPanel.cpp:1258
-msgid "Click to vertically zoom in, Shift-click to zoom out, Drag to create a particular zoom region."
-msgstr "Haga clic para acercar verticalmente, Mayús-Clic para alejar. Arrastre para acercar una zona en concreto."
+#: TrackPanel.cpp:1302
+msgid ""
+"Click to vertically zoom in, Shift-click to zoom out, Drag to create a "
+"particular zoom region."
+msgstr ""
+"Haga clic para acercar verticalmente, Mayús-Clic para alejar. Arrastre para "
+"acercar una zona en concreto."
-#: TrackPanel.cpp:1263
+#: TrackPanel.cpp:1307
msgid "Drag the label vertically to change the order of the tracks."
-msgstr "Arrastre la etiqueta hacia arriba o abajo para cambiar el orden de las pistas."
+msgstr ""
+"Arrastre la etiqueta hacia arriba o abajo para cambiar el orden de las "
+"pistas."
-#: TrackPanel.cpp:1283
+#: TrackPanel.cpp:1327
msgid "Click and drag to adjust relative size of stereo tracks."
msgstr "Haga clic y arrastre para modificar el tamaño relativo de las pistas estéreo."
-#: TrackPanel.cpp:1286
+#: TrackPanel.cpp:1330
msgid "Click and drag to resize the track."
msgstr "Haga clic y arrastre para modificar el tamaño de la pista."
-#: TrackPanel.cpp:1317
+#: TrackPanel.cpp:1361
msgid "Drag one or more label boundaries"
msgstr "Arrastrar uno o más lÃmites de etiqueta"
-#: TrackPanel.cpp:1318
+#: TrackPanel.cpp:1362
msgid "Drag label boundary"
msgstr "Arrastrar lÃmite de etiqueta"
#. i18n-hint: This string is for the Mac OS, which uses Command-, as the shortcut for Preferences
-#: TrackPanel.cpp:1334
+#: TrackPanel.cpp:1378
msgid "Multi-Tool Mode: Cmd-, for Mouse and Keyboard Preferences"
msgstr "Modo multiherramienta: Cmd- para preferencias de ratón y teclado"
#. i18n-hint: This string is for Windows and Linux, which uses Control-P as the shortcut for Preferences
-#: TrackPanel.cpp:1337
+#: TrackPanel.cpp:1381
msgid "Multi-Tool Mode: Ctrl-P for Mouse and Keyboard Preferences"
msgstr "Modo multiherramienta: Ctrl+P para preferencias de ratón y teclado"
-#: TrackPanel.cpp:1383
+#: TrackPanel.cpp:1427
msgid "Click and drag to move left selection boundary."
msgstr "Haga clic y arrastre para mover el lÃmite izquierdo de la selección."
-#: TrackPanel.cpp:1388
+#: TrackPanel.cpp:1432
msgid "Click and drag to move right selection boundary."
msgstr "Haga clic y arrastre para mover el lÃmite derecho de la selección."
-#: TrackPanel.cpp:1730 TrackPanel.cpp:3959 TrackPanel.cpp:3991
-#: TrackPanel.cpp:4255 TrackPanel.cpp:6490 TrackPanel.cpp:6510
+#: TrackPanel.cpp:1770 TrackPanel.cpp:4054 TrackPanel.cpp:4086
+#: TrackPanel.cpp:4348 TrackPanel.cpp:6610 TrackPanel.cpp:6630
msgid "Modified Label"
msgstr "Etiqueta modificada"
-#: TrackPanel.cpp:1731 TrackPanel.cpp:3960 TrackPanel.cpp:3992
-#: TrackPanel.cpp:4256 TrackPanel.cpp:6491 TrackPanel.cpp:6511
+#: TrackPanel.cpp:1771 TrackPanel.cpp:4055 TrackPanel.cpp:4087
+#: TrackPanel.cpp:4349 TrackPanel.cpp:6611 TrackPanel.cpp:6631
msgid "Label Edit"
msgstr "Edición de etiqueta"
-#: TrackPanel.cpp:1971
+#: TrackPanel.cpp:2009
msgid "Adjusted envelope."
msgstr "Envolvente ajustada."
-#: TrackPanel.cpp:1972 prefs/MousePrefs.cpp:115
+#: TrackPanel.cpp:2010 prefs/MousePrefs.cpp:119
msgid "Envelope"
msgstr "Envolvente"
-#: TrackPanel.cpp:2123
+#: TrackPanel.cpp:2160
msgid "Moved clip to another track"
msgstr "Bloque desplazado a otra pista"
-#: TrackPanel.cpp:2127
+#: TrackPanel.cpp:2164
msgid "left"
msgstr "izquierdo"
-#: TrackPanel.cpp:2127
+#: TrackPanel.cpp:2164
msgid "right"
msgstr "derecho"
#. i18n-hint: %s is a direction like left or right
-#: TrackPanel.cpp:2129
+#: TrackPanel.cpp:2166
#, c-format
msgid "Time shifted tracks/clips %s %.02f seconds"
msgstr "Pistas o bloques desplazados en el tiempo %s %.02f segundos"
-#: TrackPanel.cpp:2133 prefs/MousePrefs.cpp:111 prefs/MousePrefs.cpp:112
-#: prefs/MousePrefs.cpp:113
+#: TrackPanel.cpp:2170 prefs/MousePrefs.cpp:115 prefs/MousePrefs.cpp:116
+#: prefs/MousePrefs.cpp:117
msgid "Time-Shift"
msgstr "Desplazamiento en el tiempo"
-#: TrackPanel.cpp:2916
+#: TrackPanel.cpp:2964
msgid "To use Draw, choose 'Waveform' in the Track Drop-down Menu."
-msgstr "Para usar la herramienta de dibujo seleccione 'Forma de onda' en el menú desplegable de pista."
+msgstr ""
+"Para usar la herramienta de dibujo seleccione 'Forma de onda' en el menú "
+"desplegable de pista."
-#: TrackPanel.cpp:2933
+#: TrackPanel.cpp:2981
msgid "To use Draw, zoom in further until you can see the individual samples."
-msgstr "Para utilizar la herramienta de dibujo debe acercar la pista hasta poder ver las muestras individuales."
+msgstr ""
+"Para utilizar la herramienta de dibujo debe acercar la pista hasta poder ver "
+"las muestras individuales."
-#: TrackPanel.cpp:3205
+#: TrackPanel.cpp:3255
msgid "Moved Sample"
msgstr "Muestra movida"
-#: TrackPanel.cpp:3206
+#: TrackPanel.cpp:3256
msgid "Sample Edit"
msgstr "Edición de muestra"
-#: TrackPanel.cpp:3305
+#: TrackPanel.cpp:3349
#, c-format
msgid "Removed track '%s.'"
msgstr "Pista '%s' eliminada"
-#: TrackPanel.cpp:3307
+#: TrackPanel.cpp:3351
msgid "Track Remove"
msgstr "Eliminación de pista"
-#: TrackPanel.cpp:3448
+#: TrackPanel.cpp:3497
msgid "Moved gain slider"
msgstr "Desplazado el control de ganancia"
-#: TrackPanel.cpp:3448
+#: TrackPanel.cpp:3497
msgid "Moved pan slider"
msgstr "Desplazado el control de panorama"
#. i18n-hint: Title of the Gain slider, used to adjust the volume
-#: TrackPanel.cpp:3449 TrackPanel.cpp:5703 TrackPanel.cpp:7244
+#: TrackPanel.cpp:3498 TrackPanel.cpp:5801 TrackPanel.cpp:7254
msgid "Gain"
msgstr "Ganancia"
#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: TrackPanel.cpp:3449 TrackPanel.cpp:5641 TrackPanel.cpp:7251
+#: TrackPanel.cpp:3498 TrackPanel.cpp:5749 TrackPanel.cpp:7262
msgid "Pan"
msgstr "Panorama"
-#: TrackPanel.cpp:3576 TrackPanel.cpp:6441
+#: TrackPanel.cpp:3664 TrackPanel.cpp:6561
msgid "up"
msgstr "arriba"
-#: TrackPanel.cpp:3580 TrackPanel.cpp:6442
+#: TrackPanel.cpp:3668 TrackPanel.cpp:6562
msgid "down"
msgstr "abajo"
-#: TrackPanel.cpp:3587 TrackPanel.cpp:6437
+#: TrackPanel.cpp:3675 TrackPanel.cpp:6557
#, c-format
msgid "Moved '%s' %s"
msgstr "Movida '%s' %s"
-#: TrackPanel.cpp:3590 TrackPanel.cpp:6443
+#: TrackPanel.cpp:3678 TrackPanel.cpp:6563
msgid "Move Track"
msgstr "Desplazar pista"
-#: TrackPanel.cpp:4155
+#: TrackPanel.cpp:4249
msgid "Expand"
msgstr "Expandir"
-#: TrackPanel.cpp:4155
+#: TrackPanel.cpp:4249
msgid "Expanded Cut Line"
msgstr "Expandida la lÃnea de corte"
-#: TrackPanel.cpp:4164
+#: TrackPanel.cpp:4258
msgid "Merge"
msgstr "Combinar"
-#: TrackPanel.cpp:4164
+#: TrackPanel.cpp:4258
msgid "Merged Clips"
msgstr "Bloques combinados"
-#: TrackPanel.cpp:4176
+#: TrackPanel.cpp:4269
+msgid "Remove"
+msgstr "Eliminar"
+
+#: TrackPanel.cpp:4269
msgid "Removed Cut Line"
msgstr "Eliminada la lÃnea de corte"
-#: TrackPanel.cpp:5641
+#: TrackPanel.cpp:5749
msgid "Adjusted Pan"
msgstr "Panorama ajustado"
-#: TrackPanel.cpp:5703
+#: TrackPanel.cpp:5801
msgid "Adjusted gain"
msgstr "Ganancia ajustada"
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr "Agrupar con la pista de onda"
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr "Limpiar cualquier agrupamiento"
-
-#: TrackPanel.cpp:5923
+#: TrackPanel.cpp:6030
msgid "Can't delete track with active audio"
msgstr "No se puede borrar una pista con audio activo"
-#: TrackPanel.cpp:6076
+#: TrackPanel.cpp:6180
msgid "Stereo, "
msgstr "Estéreo, "
-#: TrackPanel.cpp:6079
+#: TrackPanel.cpp:6183
msgid "Mono, "
msgstr "Mono, "
-#: TrackPanel.cpp:6081
+#: TrackPanel.cpp:6185
msgid "Left, "
msgstr "Izquierdo, "
-#: TrackPanel.cpp:6083
+#: TrackPanel.cpp:6187
msgid "Right, "
msgstr "Derecho, "
-#: TrackPanel.cpp:6105 TrackPanel.cpp:6251
+#: TrackPanel.cpp:6209 TrackPanel.cpp:6371
#, c-format
msgid "Changed '%s' to %s"
msgstr "Cambiado '%s' a %s"
-#: TrackPanel.cpp:6110
+#: TrackPanel.cpp:6212
msgid "Channel"
msgstr "Canal"
-#: TrackPanel.cpp:6131
+#: TrackPanel.cpp:6253
#, c-format
msgid "Split stereo track '%s'"
msgstr "Dividir pista estéreo '%s'"
-#: TrackPanel.cpp:6169
+#: TrackPanel.cpp:6255
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr "Dividir pista estéro a mono '%s'"
+
+#: TrackPanel.cpp:6287
#, c-format
msgid "Made '%s' a stereo track"
msgstr "Se convirtió a estéreo la pista '%s'"
-#: TrackPanel.cpp:6172
+#: TrackPanel.cpp:6290
msgid "Make Stereo"
msgstr "Hacer estéreo"
-#: TrackPanel.cpp:6215
+#: TrackPanel.cpp:6335
#, c-format
msgid "Changed '%s' to %d Hz"
msgstr "Cambiado '%s' a %d Hz"
-#: TrackPanel.cpp:6217
+#: TrackPanel.cpp:6337
msgid "Rate Change"
msgstr "Cambio de frecuencia"
-#: TrackPanel.cpp:6255
+#: TrackPanel.cpp:6375
msgid "Format Change"
msgstr "Cambio de formato"
-#: TrackPanel.cpp:6405
+#: TrackPanel.cpp:6525
msgid "Change lower speed limit (%) to:"
msgstr "Cambiar el lÃmite inferior de velocidad (%) a:"
-#: TrackPanel.cpp:6406 TrackPanel.cpp:6407
+#: TrackPanel.cpp:6526 TrackPanel.cpp:6527
msgid "Lower speed limit"
msgstr "LÃmite inferior de velocidad"
-#: TrackPanel.cpp:6412
+#: TrackPanel.cpp:6532
msgid "Change upper speed limit (%) to:"
msgstr "Cambiar el lÃmite superior de velocidad (%) a:"
-#: TrackPanel.cpp:6413 TrackPanel.cpp:6414
+#: TrackPanel.cpp:6533 TrackPanel.cpp:6534
msgid "Upper speed limit"
msgstr "LÃmite superior de velocidad"
-#: TrackPanel.cpp:6422
+#: TrackPanel.cpp:6542
#, c-format
msgid "Set range to '%d' - '%d'"
msgstr "Establecer rango en '%d' - '%d'"
-#: TrackPanel.cpp:6425
+#: TrackPanel.cpp:6545
msgid "Set Range"
msgstr "Establecer rango"
-#: TrackPanel.cpp:6472
+#: TrackPanel.cpp:6592
msgid "Change track name to:"
msgstr "Cambiar nombre de pista a:"
-#: TrackPanel.cpp:6473
+#: TrackPanel.cpp:6593
msgid "Track Name"
msgstr "Nombre de pista"
-#: TrackPanel.cpp:6476
+#: TrackPanel.cpp:6596
#, c-format
msgid "Renamed '%s' to '%s'"
msgstr "'%s' renombrado a '%s'"
-#: TrackPanel.cpp:6479
+#: TrackPanel.cpp:6599
msgid "Name Change"
msgstr "Cambio de nombre"
-#: TrackPanel.cpp:6580
+#: TrackPanel.cpp:6665
msgid "Label Track Font"
msgstr "Tipo de letra de la pista de etiqueta"
-#: TrackPanel.cpp:6592 TrackPanel.cpp:6598
+#: TrackPanel.cpp:6677 TrackPanel.cpp:6683
msgid "Face name"
msgstr "Nombre de tipografÃa"
-#: TrackPanel.cpp:6602 TrackPanel.cpp:6609
+#: TrackPanel.cpp:6687 TrackPanel.cpp:6694
msgid "Face size"
msgstr "Tamaño de tipografÃa"
-#: TrackPanel.cpp:7171
+#: TrackPanel.cpp:6943
+msgid "Stereo, 999999Hz"
+msgstr "Estéreo, 999999Hz"
+
+#: TrackPanel.cpp:7203
msgid "Mute"
msgstr "Silencio"
-#: TrackPanel.cpp:7171
+#: TrackPanel.cpp:7203
msgid "Solo"
msgstr "Solo"
-#: TrackPanelAx.cpp:273
+#: TrackPanelAx.cpp:285
msgid "TrackView"
msgstr "Vista de pista"
-#: TrackPanelAx.cpp:281
+#: TrackPanelAx.cpp:293
msgid "Track Accessible out of sync"
msgstr "Pista accesible fuera de sincronÃa"
-#: TrackPanelAx.cpp:289
+#: TrackPanelAx.cpp:301
#, c-format
msgid "Track %d"
msgstr "Pista %d"
-#: TrackPanelAx.cpp:295
+#: TrackPanelAx.cpp:307
msgid " Mute On"
msgstr " Silencio activado"
-#: TrackPanelAx.cpp:300
+#: TrackPanelAx.cpp:312
msgid " Solo On"
msgstr " Solo activado"
-#: TrackPanelAx.cpp:304
+#: TrackPanelAx.cpp:316
msgid " Select On"
msgstr " Selección activada"
@@ -3943,33 +4698,37 @@ msgstr "Cambios de signo -- significa: %1.4f sd: (%1.4f)\n"
msgid "Direction Changes -- mean: %1.4f sd: (%1.4f)\n"
msgstr "Cambios de dirección -- significa: %1.4f sd: (%1.4f)\n"
-#: WaveTrack.cpp:88
+#: WaveTrack.cpp:87
msgid "Audio Track"
msgstr "Pista de audio"
-#: WaveTrack.cpp:597 WaveTrack.cpp:616 WaveTrack.cpp:1057 WaveTrack.cpp:1076
+#: WaveTrack.cpp:976 WaveTrack.cpp:995
msgid "There is not enough room available to paste the selection"
msgstr "No hay espacio suficiente para pegar la selección"
-#: WaveTrack.cpp:2052
+#: WaveTrack.cpp:2021
msgid "There is not enough room available to expand the cut line"
msgstr "No hay espacio suficiente para expandir la lÃnea de corte"
-#: commands/CommandManager.cpp:555
+#: commands/CommandManager.cpp:549
#, c-format
msgid "Plugins 1 to %i"
msgstr "Complementos del 1 al %i"
-#: commands/CommandManager.cpp:569
+#: commands/CommandManager.cpp:563
#, c-format
msgid "Plugins %i to %i"
msgstr "Complementos del %i al %i"
-#: commands/CommandManager.cpp:857
-msgid "Disallowed for some reason. Try selecting some audio first?"
-msgstr "Deshabilitado por algún motivo. ¿Ha probado a seleccionar algo de audio previamente?"
+#: commands/CommandManager.cpp:928
+msgid ""
+"There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
+msgstr ""
+"Se encontró un problema con la última acción. Si piensa\n"
+"que es un error, explÃquenos exactamente dónde sucedio."
-#: commands/CommandManager.cpp:892
+#: commands/CommandManager.cpp:932
msgid ""
"You can only do this when playing and recording are\n"
" stopped. [Pausing is not sufficient.]"
@@ -3977,7 +4736,7 @@ msgstr ""
"Sólo puede hacer esto cuando la reproducción y la \n"
"grabación están detenidas (no basta con la pausa)."
-#: commands/CommandManager.cpp:894
+#: commands/CommandManager.cpp:934
msgid ""
"You must first select some stereo audio for this\n"
" to use. [You can't use this with mono.]"
@@ -3985,11 +4744,11 @@ msgstr ""
"Primero debe seleccionar audio estéreo para\n"
"utilizar esto (no se puede hacer con mono)."
-#: commands/CommandManager.cpp:896
+#: commands/CommandManager.cpp:936
msgid "You must first select some audio for this to use."
msgstr "Primero debe seleccionar audio para utilizar esto."
-#: commands/CommandManager.cpp:898
+#: commands/CommandManager.cpp:938
msgid ""
"You must first select some audio for this\n"
" to use. [Selecting other kinds of track won't work.]"
@@ -3997,50 +4756,50 @@ msgstr ""
"Primero debe seleccionar audio para utilizar\n"
"esto (seleccionar otro tipo de pista no funcionará)"
-#: commands/CommandManager.cpp:903
+#: commands/CommandManager.cpp:943
msgid "Disallowed"
msgstr "Desestimado"
-#: commands/CommandManager.cpp:1083
+#: commands/CommandManager.cpp:1167
#, c-format
msgid "Loaded %d keyboard shortcuts\n"
msgstr "%d accesos directos cargados\n"
-#: commands/CommandManager.cpp:1085
+#: commands/CommandManager.cpp:1169
msgid "Loading keyboard shortcuts"
msgstr "Cargando accesos directos"
-#: effects/Amplify.cpp:52
+#: effects/Amplify.cpp:53
#, c-format
msgid "Applied effect: %s %.1f dB"
msgstr "Efecto aplicado: %s %.1f dB"
-#: effects/Amplify.cpp:139
+#: effects/Amplify.cpp:136
msgid "Amplify"
msgstr "Amplificado"
-#: effects/Amplify.cpp:155 effects/Compressor.cpp:476
-#: effects/Normalize.cpp:337
+#: effects/Amplify.cpp:152 effects/Compressor.cpp:487
+#: effects/Normalize.cpp:341
msgid "by Dominic Mazzoni"
msgstr "de Dominic Mazzoni"
-#: effects/Amplify.cpp:168
+#: effects/Amplify.cpp:165
msgid "Amplification (dB):"
msgstr "Amplificación (dB):"
-#: effects/Amplify.cpp:183
+#: effects/Amplify.cpp:180
msgid "Amplification dB"
msgstr "Amplificación dB"
-#: effects/Amplify.cpp:190
+#: effects/Amplify.cpp:187
msgid "New Peak Amplitude (dB):"
msgstr "Nuevo pico de amplitud (dB):"
-#: effects/Amplify.cpp:200
+#: effects/Amplify.cpp:197
msgid "Allow clipping"
msgstr "Permitir recorte"
-#: effects/Amplify.cpp:222 effects/Amplify.cpp:279 effects/Amplify.cpp:323
+#: effects/Amplify.cpp:219 effects/Amplify.cpp:276 effects/Amplify.cpp:320
msgid "-Infinity"
msgstr "-Infinito"
@@ -4052,68 +4811,78 @@ msgstr "Amplificado..."
msgid "Amplifying"
msgstr "Amplificando"
-#: effects/AutoDuck.cpp:125
-msgid "You selected a track which does not contain audio. AutoDuck can only process audio tracks."
-msgstr "Se ha seleccionado una pista que no contiene audio. Auto Duck solo puede procesar pistas de audio."
+#: effects/AutoDuck.cpp:140
+msgid ""
+"You selected a track which does not contain audio. AutoDuck can only process "
+"audio tracks."
+msgstr ""
+"Se ha seleccionado una pista que no contiene audio. Auto Duck solo puede "
+"procesar pistas de audio."
-#: effects/AutoDuck.cpp:126 effects/AutoDuck.cpp:138 effects/AutoDuck.cpp:453
-#: effects/AutoDuck.cpp:570
+#: effects/AutoDuck.cpp:141 effects/AutoDuck.cpp:153 effects/AutoDuck.cpp:467
+#: effects/AutoDuck.cpp:584
msgid "Auto Duck"
msgstr "Auto Duck"
-#: effects/AutoDuck.cpp:137
-msgid "Auto Duck needs a control track which must be placed below the selected track(s)."
-msgstr "Auto Duck necesita una pista de control que se debe situar debajo de la pista(s) seleccionada."
+#: effects/AutoDuck.cpp:152
+msgid ""
+"Auto Duck needs a control track which must be placed below the selected track"
+"(s)."
+msgstr ""
+"Auto Duck necesita una pista de control que se debe situar debajo de la pista"
+"(s) seleccionada."
-#: effects/AutoDuck.cpp:465
+#: effects/AutoDuck.cpp:479
msgid "Auto Duck by Markus Meyer"
msgstr "Auto Duck de Markus Meyer"
-#: effects/AutoDuck.cpp:487
+#: effects/AutoDuck.cpp:501
msgid "Duck amount:"
msgstr "Cantidad de Duck:"
-#: effects/AutoDuck.cpp:492
+#: effects/AutoDuck.cpp:506
msgid "Maximum pause:"
msgstr "Pausa máxima:"
#. i18n-hint: Name of time display format that shows time in seconds
-#: effects/AutoDuck.cpp:494 effects/AutoDuck.cpp:499 effects/AutoDuck.cpp:504
-#: effects/AutoDuck.cpp:509 effects/AutoDuck.cpp:514
-#: prefs/AudioIOPrefs.cpp:172 prefs/AudioIOPrefs.cpp:180
-#: prefs/AudioIOPrefs.cpp:182 prefs/AudioIOPrefs.cpp:207
-#: prefs/AudioIOPrefs.cpp:209 prefs/MidiIOPrefs.cpp:161
-#: prefs/MidiIOPrefs.cpp:163 prefs/MidiIOPrefs.cpp:187
-#: prefs/MidiIOPrefs.cpp:189 prefs/MidiIOPrefs.cpp:197
-#: widgets/TimeTextCtrl.cpp:263
+#: effects/AutoDuck.cpp:508 effects/AutoDuck.cpp:513 effects/AutoDuck.cpp:518
+#: effects/AutoDuck.cpp:523 effects/AutoDuck.cpp:528 prefs/MidiIOPrefs.cpp:185
+#: prefs/MidiIOPrefs.cpp:187 prefs/MidiIOPrefs.cpp:209
+#: prefs/MidiIOPrefs.cpp:211 prefs/MidiIOPrefs.cpp:219
+#: prefs/PlaybackPrefs.cpp:65 prefs/PlaybackPrefs.cpp:66
+#: prefs/PlaybackPrefs.cpp:80 prefs/PlaybackPrefs.cpp:81
+#: prefs/PlaybackPrefs.cpp:87 prefs/PlaybackPrefs.cpp:88
+#: prefs/PlaybackPrefs.cpp:102 prefs/PlaybackPrefs.cpp:103
+#: prefs/PlaybackPrefs.cpp:109 prefs/PlaybackPrefs.cpp:110
+#: widgets/TimeTextCtrl.cpp:265
msgid "seconds"
msgstr "segundos"
-#: effects/AutoDuck.cpp:497
+#: effects/AutoDuck.cpp:511
msgid "Outer fade down length:"
msgstr "Longitud de caÃda exterior:"
-#: effects/AutoDuck.cpp:502
+#: effects/AutoDuck.cpp:516
msgid "Outer fade up length:"
msgstr "Longitud de subida exterior:"
-#: effects/AutoDuck.cpp:507
+#: effects/AutoDuck.cpp:521
msgid "Inner fade down length:"
msgstr "Longitud de caÃda interior:"
-#: effects/AutoDuck.cpp:512
+#: effects/AutoDuck.cpp:526
msgid "Inner fade up length:"
msgstr "Longitud de subida interior:"
-#: effects/AutoDuck.cpp:521 effects/Compressor.cpp:494
+#: effects/AutoDuck.cpp:535 effects/Compressor.cpp:506
msgid "Threshold:"
msgstr "Umbral:"
-#: effects/AutoDuck.cpp:570
+#: effects/AutoDuck.cpp:584
msgid "Please enter valid values."
msgstr "Introduzca valores válidos."
-#: effects/AutoDuck.cpp:705
+#: effects/AutoDuck.cpp:719
msgid "Preview not available"
msgstr "Vista previa no disponible"
@@ -4125,9 +4894,8 @@ msgstr "Auto Duck..."
msgid "Processing Auto Duck..."
msgstr "Procesando Auto Duck..."
-#: effects/AvcCompressor.cpp:738 effects/VST/VSTEffect.cpp:455
-#: effects/audiounits/AudioUnitEffect.cpp:882 effects/nyquist/Nyquist.cpp:1053
-#: widgets/ErrorDialog.cpp:101
+#: effects/AvcCompressor.cpp:738 effects/audiounits/AudioUnitEffect.cpp:856
+#: effects/nyquist/Nyquist.cpp:1237 widgets/ErrorDialog.cpp:99
msgid "OK"
msgstr "Aceptar"
@@ -4152,7 +4920,7 @@ msgstr "Frecuencia (Hz):"
msgid "Frequency Hertz"
msgstr "Frecuencia Herztios"
-#: effects/BassBoost.cpp:208
+#: effects/BassBoost.cpp:209
msgid "Boost (dB):"
msgstr "Realce (dB):"
@@ -4189,12 +4957,12 @@ msgstr "Cambiar tono"
msgid "Change Pitch without Changing Tempo"
msgstr "Cambiar tono sin cambiar ritmo"
-#: effects/ChangePitch.cpp:258 effects/ChangeSpeed.cpp:336
-#: effects/ChangeTempo.cpp:173
+#: effects/ChangePitch.cpp:258 effects/ChangeSpeed.cpp:337
+#: effects/ChangeTempo.cpp:176
msgid "by Vaughan Johnson && Dominic Mazzoni"
msgstr "de Vaughan Johnson y Dominic Mazzoni"
-#: effects/ChangePitch.cpp:260 effects/ChangeTempo.cpp:175
+#: effects/ChangePitch.cpp:260 effects/ChangeTempo.cpp:178
msgid "using SoundTouch, by Olli Parviainen"
msgstr "uso de SoundTouch, de Olli Parviainen"
@@ -4234,8 +5002,8 @@ msgstr "Semitonos (pasos intermedios):"
msgid "Semitones in half-steps"
msgstr "Semitonos en pasos intermedios"
-#: effects/ChangePitch.cpp:326 effects/ChangeSpeed.cpp:369
-#: effects/ChangeTempo.cpp:206 effects/ChangeTempo.cpp:219
+#: effects/ChangePitch.cpp:326 effects/ChangeSpeed.cpp:370
+#: effects/ChangeTempo.cpp:209 effects/ChangeTempo.cpp:222
msgid "from"
msgstr "desde"
@@ -4243,8 +5011,8 @@ msgstr "desde"
msgid "From frequency in hertz"
msgstr "Desde frencuencia en hertzios"
-#: effects/ChangePitch.cpp:331 effects/ChangeSpeed.cpp:374
-#: effects/ChangeTempo.cpp:211 effects/ChangeTempo.cpp:224
+#: effects/ChangePitch.cpp:331 effects/ChangeSpeed.cpp:375
+#: effects/ChangeTempo.cpp:214 effects/ChangeTempo.cpp:227
msgid "to"
msgstr "a"
@@ -4252,13 +5020,13 @@ msgstr "a"
msgid "To frequency in seconds"
msgstr "A frecuencia en segundos"
-#: effects/ChangePitch.cpp:338 effects/ChangeSpeed.cpp:347
-#: effects/ChangeTempo.cpp:184
+#: effects/ChangePitch.cpp:338 effects/ChangeSpeed.cpp:348
+#: effects/ChangeTempo.cpp:187
msgid "Percent Change:"
msgstr "Porcentaje de cambio:"
#: effects/ChangePitch.cpp:343 effects/ChangePitch.cpp:356
-#: effects/ChangeSpeed.cpp:358 effects/ChangeTempo.cpp:195
+#: effects/ChangeSpeed.cpp:359 effects/ChangeTempo.cpp:198
msgid "Percent Change"
msgstr "Porcentaje de cambio"
@@ -4275,33 +5043,33 @@ msgstr "Cambiando tono"
msgid "Applied effect: %s %.1f%%"
msgstr "Efecto aplicado: %s %.1f%%"
-#: effects/ChangeSpeed.cpp:298
+#: effects/ChangeSpeed.cpp:299
msgid "Change Speed"
msgstr "Cambio de velocidad"
#. i18n-hint: n/a is an English abbreviation meaning "not applicable"
#. (in other words, unimportant, not relevant).
-#: effects/ChangeSpeed.cpp:329
+#: effects/ChangeSpeed.cpp:330
msgid "n/a"
msgstr "no disponible"
-#: effects/ChangeSpeed.cpp:334
+#: effects/ChangeSpeed.cpp:335
msgid "Change Speed, affecting both Tempo and Pitch"
msgstr "Cambio de velocidad afectando a tiempo y a ritmo"
-#: effects/ChangeSpeed.cpp:338
+#: effects/ChangeSpeed.cpp:339
msgid "using SampleRate, by Erik de Castro Lopo"
msgstr "uso de SampleRate, de Erik de Castro Lopo"
-#: effects/ChangeSpeed.cpp:366
+#: effects/ChangeSpeed.cpp:367
msgid "Standard Vinyl RPM:"
msgstr "RPM de vinilo estándar:"
-#: effects/ChangeSpeed.cpp:370
+#: effects/ChangeSpeed.cpp:371
msgid "From RPM"
msgstr "Desde RPM"
-#: effects/ChangeSpeed.cpp:375
+#: effects/ChangeSpeed.cpp:376
msgid "To RPM"
msgstr "A RPM"
@@ -4313,35 +5081,35 @@ msgstr "Cambio de velocidad..."
msgid "Changing Speed"
msgstr "Cambiando velocidad"
-#: effects/ChangeTempo.cpp:138
+#: effects/ChangeTempo.cpp:141
msgid "Change Tempo"
msgstr "Cambiar ritmo"
-#: effects/ChangeTempo.cpp:171
+#: effects/ChangeTempo.cpp:174
msgid "Change Tempo without Changing Pitch"
msgstr "Cambiar ritmo sin cambiar tono"
-#: effects/ChangeTempo.cpp:203
+#: effects/ChangeTempo.cpp:206
msgid "Beats per minute:"
msgstr "Compases por minuto:"
-#: effects/ChangeTempo.cpp:207
+#: effects/ChangeTempo.cpp:210
msgid "From beats per minute"
msgstr "Desde compases por minuto"
-#: effects/ChangeTempo.cpp:212
+#: effects/ChangeTempo.cpp:215
msgid "To beats per minute"
msgstr "A compases por minuto"
-#: effects/ChangeTempo.cpp:216
+#: effects/ChangeTempo.cpp:219
msgid "Length (seconds):"
msgstr "Duración (segundos):"
-#: effects/ChangeTempo.cpp:220
+#: effects/ChangeTempo.cpp:223
msgid "From length in seconds"
msgstr "Desde duración en segundos"
-#: effects/ChangeTempo.cpp:225
+#: effects/ChangeTempo.cpp:228
msgid "To length in seconds"
msgstr "A duración en segundos"
@@ -4369,11 +5137,11 @@ msgstr "Seleccionar umbral (valores menores indican más sensibilidad):"
msgid "Select threshold"
msgstr "Seleccionar umbral"
-#: effects/ClickRemoval.cpp:353
+#: effects/ClickRemoval.cpp:358
msgid "Max spike width (higher is more sensitive):"
msgstr "Ancho de pico máximo (valores mayores indican más sensibilidad):"
-#: effects/ClickRemoval.cpp:363
+#: effects/ClickRemoval.cpp:367
msgid "Max spike width"
msgstr "Ancho de pico máximo"
@@ -4385,100 +5153,104 @@ msgstr "Eliminación de click...."
msgid "Removing clicks and pops..."
msgstr "Eliminando click y pop..."
-#: effects/Compressor.cpp:461
+#: effects/Compressor.cpp:472
msgid "Dynamic Range Compressor"
msgstr "Compresor de rango dinámico"
-#: effects/Compressor.cpp:498
+#: effects/Compressor.cpp:510
msgid "Threshold"
msgstr "Umbral"
-#: effects/Compressor.cpp:502
+#: effects/Compressor.cpp:514
msgid "Ratio:"
msgstr "Proporción:"
-#: effects/Compressor.cpp:506
+#: effects/Compressor.cpp:518
msgid "Ratio"
msgstr "Proporción"
-#: effects/Compressor.cpp:510
+#: effects/Compressor.cpp:522
msgid "Attack Time:"
msgstr "Tiempo de ataque:"
-#: effects/Compressor.cpp:514
+#: effects/Compressor.cpp:526
msgid "Attack Time"
msgstr "Tiempo de ataque"
-#: effects/Compressor.cpp:518
+#: effects/Compressor.cpp:530
msgid "Decay Time:"
msgstr "Tiempo de decaimiento:"
-#: effects/Compressor.cpp:522
+#: effects/Compressor.cpp:534
msgid "Decay Time"
msgstr "Tiempo de decaimiento"
-#: effects/Compressor.cpp:530
-msgid "Normalize to 0dB after compressing"
-msgstr "Normalizar a 0 dB después de comprimir"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
+msgstr "Composición de ganancia para 0db después de la compresión"
-#: effects/Compressor.cpp:563
+#: effects/Compressor.cpp:575
#, c-format
msgid "Threshold %d dB"
msgstr "Umbral %d dB"
-#: effects/Compressor.cpp:564
+#: effects/Compressor.cpp:576
#, c-format
msgid "%3d dB"
msgstr "%3d dB"
-#: effects/Compressor.cpp:567
+#: effects/Compressor.cpp:579
#, c-format
msgid "Ratio %.0f to 1"
msgstr "Proporción %.0f a 1"
-#: effects/Compressor.cpp:568
+#: effects/Compressor.cpp:580
#, c-format
msgid "%.0f:1"
msgstr "%.0f:1"
-#: effects/Compressor.cpp:571
+#: effects/Compressor.cpp:583
#, c-format
msgid "Ratio %.1f to 1"
msgstr "Proporción %.1f a 1"
-#: effects/Compressor.cpp:572
+#: effects/Compressor.cpp:584
#, c-format
msgid "%.1f:1"
msgstr "%.1f:1"
-#: effects/Compressor.cpp:575
+#: effects/Compressor.cpp:587
#, c-format
msgid "Attack Time %.1f secs"
msgstr "Timpo de ataque %.1f seg"
-#: effects/Compressor.cpp:576 effects/Compressor.cpp:579
+#: effects/Compressor.cpp:588 effects/Compressor.cpp:591
#, c-format
msgid "%.1f secs"
msgstr "%.1f seg"
-#: effects/Compressor.cpp:578
+#: effects/Compressor.cpp:590
#, c-format
msgid "Decay Time %.1f secs"
msgstr "Tiempo de decaimiento % 1f seg"
-#: effects/Compressor.h:36
+#: effects/Compressor.h:37
msgid "Compressor..."
msgstr "Compresión..."
-#: effects/Compressor.h:50
+#: effects/Compressor.h:51
msgid "Applying Dynamic Range Compression..."
msgstr "Aplicando compresión de rango dinámico..."
-#: effects/Contrast.cpp:79
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr "Análisis de contraste"
+
+#: effects/Contrast.cpp:88
msgid "Contrast Tool Foreground"
msgstr "Herramienta de contraste de sonido principal"
-#: effects/Contrast.cpp:79
+#: effects/Contrast.cpp:88
msgid ""
"Foreground times selected.\n"
"Now select background and use Ctrl+Shift+T or menu again."
@@ -4486,7 +5258,7 @@ msgstr ""
"Tiempos de sonido principal seleccionados.\n"
"Ahora seleccione el sonido de fondo y use Ctrl+Mayús+T o menú de nuevo."
-#: effects/Contrast.cpp:127
+#: effects/Contrast.cpp:144
msgid ""
"Start time after after end time!\n"
"Please enter reasonable times."
@@ -4494,7 +5266,7 @@ msgstr ""
"El punto de inicio finaliza después del punto final!\n"
"Introduzca unos valores razonables."
-#: effects/Contrast.cpp:137
+#: effects/Contrast.cpp:154
msgid ""
"Times are not reasonable!\n"
"Please enter reasonable times."
@@ -4502,281 +5274,250 @@ msgstr ""
"Los tiempos no son razonables\n"
"Introduzca unos valores con sentido."
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr "Hola.\n"
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr "Analizador de contraste de audio WCAG2"
-
-#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr "Medido"
-
-#: effects/Contrast.cpp:231
+#: effects/Contrast.cpp:276
msgid "Contrast Analyzer"
msgstr "Analizador de contraste"
-#: effects/Contrast.cpp:235
-msgid "Parameters"
-msgstr "Parámetros"
-
-#: effects/ToneGen.cpp:355 toolbars/ControlToolBar.cpp:186
+#: effects/Contrast.cpp:286 effects/ToneGen.cpp:312
+#: toolbars/ControlToolBar.cpp:181
msgid "Start"
msgstr "Comienzo"
-#: effects/ToneGen.cpp:356 toolbars/ControlToolBar.cpp:189
-#: toolbars/SelectionBar.cpp:156 toolbars/SelectionBar.cpp:159
-#: toolbars/SelectionBar.cpp:262
+#: effects/Contrast.cpp:287 effects/ToneGen.cpp:313
+#: toolbars/ControlToolBar.cpp:184 toolbars/SelectionBar.cpp:156
+#: toolbars/SelectionBar.cpp:159 toolbars/SelectionBar.cpp:262
msgid "End"
msgstr "Fin"
-#: effects/Contrast.cpp:332
+#: effects/Contrast.cpp:290
msgid "Volume "
msgstr "Volumen "
-#: effects/Contrast.cpp:248
+#: effects/Contrast.cpp:293
msgid "Foreground:"
msgstr "Principal:"
-#: effects/Contrast.cpp:347
+#: effects/Contrast.cpp:305
msgid "Foreground start time"
msgstr "Punto de inicio de sonido principal"
-#: effects/Contrast.cpp:365
+#: effects/Contrast.cpp:323
msgid "Foreground end time"
msgstr "Punto de fin de sonido principal"
-#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
+#: effects/Contrast.cpp:329 effects/Contrast.cpp:373 effects/Contrast.cpp:437
+#: effects/Contrast.cpp:448
+msgid "Measured"
+msgstr "Medido"
+
+#: effects/Contrast.cpp:331 effects/Contrast.cpp:375
msgid "Use selection"
msgstr "Utilizar selección"
-#: effects/Contrast.cpp:271
+#: effects/Contrast.cpp:336
msgid "Background:"
msgstr "Fondo:"
-#: effects/Contrast.cpp:391
+#: effects/Contrast.cpp:349
msgid "Background start time"
msgstr "Punto de inicio de sonido de fondo"
-#: effects/Contrast.cpp:409
+#: effects/Contrast.cpp:367
msgid "Background end time"
msgstr "Punto de fin de sonido de fondo"
-#: effects/Contrast.cpp:298
+#: effects/Contrast.cpp:384
msgid "Result"
msgstr "Resultado"
-#: effects/Contrast.cpp:302
+#: effects/Contrast.cpp:388
msgid "Contrast Result:"
msgstr "Resultado de contraste:"
-#: Tags.cpp:840 Tags.cpp:1990
+#: effects/Contrast.cpp:391
msgid "Reset"
msgstr "Restablecer"
-#: effects/Contrast.cpp:304
+#: effects/Contrast.cpp:392
msgid "Difference:"
msgstr "Diferencia:"
-#: effects/Contrast.cpp:313
+#: effects/Contrast.cpp:403
msgid "Information"
msgstr "Información"
-#: effects/Contrast.cpp:447
+#: effects/Contrast.cpp:405
msgid "For measuring rms volume differences between two selections of audio."
msgstr "Para medir diferencias de volumnen rms entre dos selecciones de audio"
-#: effects/Contrast.cpp:448
+#: effects/Contrast.cpp:406
msgid "Help for WCAG2 Audio Contrast Analyzer"
msgstr "Ayuda del Analizador de contraste de audio WCAG2"
-#: toolbars/ControlToolBar.cpp:83
-msgid "Control"
-msgstr "Control"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
+msgstr "Cerrar (manteniendo intervalos)"
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr "Nota: El botón 'Aceptar' restablece los valores de tiempo."
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
-msgstr "Cerrar manteniendo los tiempos"
-
-#: effects/Contrast.cpp:328 effects/Contrast.cpp:336 effects/Contrast.cpp:344
-#: effects/Contrast.cpp:352
+#: effects/Contrast.cpp:474 effects/Contrast.cpp:480 effects/Contrast.cpp:486
+#: effects/Contrast.cpp:492
msgid "Measure"
msgstr "Medición"
-#: effects/Contrast.cpp:511
+#: effects/Contrast.cpp:531
msgid "No foreground to measure"
msgstr "No hay principal que medir"
-#: effects/Contrast.cpp:516
+#: effects/Contrast.cpp:536
msgid "Measured foreground level"
msgstr "Nivel de medición de principal"
-#: effects/Contrast.cpp:191 effects/Contrast.cpp:202
+#: effects/Contrast.cpp:537 effects/Contrast.cpp:547
#, c-format
msgid "%.1f dB"
msgstr "%.1f dB"
-#: effects/Contrast.cpp:521
+#: effects/Contrast.cpp:541
msgid "No background to measure"
msgstr "No hay fondo que medir"
-#: effects/Contrast.cpp:526
+#: effects/Contrast.cpp:546
msgid "Measured background level"
msgstr "Nivel de medición de fondo"
-#: effects/Contrast.cpp:358
+#: effects/Contrast.cpp:552
msgid "WCAG2 Pass"
msgstr "WCAG2 superado"
-#: effects/Contrast.cpp:360
+#: effects/Contrast.cpp:554
msgid "WCAG2 Fail"
msgstr "WCAG2 no superado"
-#: effects/Contrast.cpp:535
+#: effects/Contrast.cpp:555
msgid "Current difference"
msgstr "Diferencia actual"
-#: effects/Contrast.cpp:536
+#: effects/Contrast.cpp:556
#, c-format
msgid "%.1f dB Average rms"
msgstr "%.1f dB rms de media"
-#: effects/Contrast.cpp:541
+#: effects/Contrast.cpp:561
msgid "Please enter valid times."
msgstr "Introduzca tiempos válidos"
-#: effects/Contrast.cpp:551
+#: effects/Contrast.cpp:571
msgid "Export Contrast Result As:"
msgstr "Exportar resultado de contraste como:"
-#: effects/Contrast.cpp:572
+#: effects/Contrast.cpp:592
msgid "WCAG 2.0 Success Criteria 1.4.7 Contrast Results"
msgstr "Resultados de contraste de WCAG 2.0 Success Criteria 1.4.7"
-#: effects/Contrast.cpp:574
+#: effects/Contrast.cpp:594
#, c-format
msgid "Filename = %s."
msgstr "Nombre de archivo = %s."
-#: effects/Contrast.cpp:576
+#: effects/Contrast.cpp:596
msgid "Foreground"
msgstr "Principal"
-#: effects/Contrast.cpp:581 effects/Contrast.cpp:598
+#: effects/Contrast.cpp:601 effects/Contrast.cpp:618
#, c-format
msgid "Time started = %2d hour(s), %2d minute(s), %.2f seconds."
msgstr "Tiempo comenzado = %2d hora(s), %2d minuto(s), %.2f segundos."
-#: effects/Contrast.cpp:586 effects/Contrast.cpp:603
+#: effects/Contrast.cpp:606 effects/Contrast.cpp:623
#, c-format
msgid "Time ended = %2d hour(s), %2d minute(s), %.2f seconds."
msgstr "Tiempo finalizado = %2d hora(s), %2d minuto(s), %.2f segundos."
-#: effects/Contrast.cpp:588 effects/Contrast.cpp:605
+#: effects/Contrast.cpp:608 effects/Contrast.cpp:625
#, c-format
msgid "Average rms = %.1f dB."
msgstr "Media de rms = %.1f dB."
-#: effects/Contrast.cpp:590 effects/Contrast.cpp:607
+#: effects/Contrast.cpp:610 effects/Contrast.cpp:627
msgid "Average rms = dB."
msgstr "Media de rms = dB."
-#: effects/Contrast.cpp:593
+#: effects/Contrast.cpp:613
msgid "Background"
msgstr "Fondo"
-#: effects/Contrast.cpp:609
+#: effects/Contrast.cpp:629
msgid "Results"
msgstr "Resultados"
-#: effects/Contrast.cpp:611
+#: effects/Contrast.cpp:631
#, c-format
msgid "Difference = %.1f Average rms dB."
msgstr "Diferencia = %.1f media de rms dB."
-#: effects/Contrast.cpp:613
+#: effects/Contrast.cpp:633
msgid "Success Criteria 1.4.7 of WCAG 2.0: Pass"
msgstr "Success Criteria 1.4.7 de WCAG 2.0: Superado"
-#: effects/Contrast.cpp:615
+#: effects/Contrast.cpp:635
msgid "Success Criteria 1.4.7 of WCAG 2.0: Fail"
msgstr "Success Criteria 1.4.7 de WCAG 2.0: No superado"
-#: effects/Contrast.cpp:618
+#: effects/Contrast.cpp:638
msgid "Data gathered"
msgstr "Información recopilada"
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr "Contraste...\tCtrl+Mayús+T"
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr "Midiendo fondo"
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr "Midiendo principal"
-
#: effects/DtmfGen.cpp:56
msgid "DTMF Tone Generator"
msgstr "Generador de tonos DTMF"
-#: effects/DtmfGen.cpp:456
+#: effects/DtmfGen.cpp:421
msgid "by Salvo Ventura (2006)"
msgstr "de Salvo Ventura (2006)"
-#: effects/DtmfGen.cpp:460
+#: effects/DtmfGen.cpp:425
msgid "DTMF sequence:"
msgstr "Secuencia DTMF:"
-#: effects/DtmfGen.cpp:463 effects/Noise.cpp:242 effects/ToneGen.cpp:322
-#: effects/ToneGen.cpp:359
+#: effects/DtmfGen.cpp:428 effects/Noise.cpp:190 effects/ToneGen.cpp:278
+#: effects/ToneGen.cpp:316
msgid "Amplitude (0-1)"
msgstr "Amplitud (0-1)"
-#: effects/DtmfGen.cpp:465
+#: effects/DtmfGen.cpp:430
msgid "Duration:"
msgstr "Duración:"
-#: effects/DtmfGen.cpp:486
+#: effects/DtmfGen.cpp:452
msgid "Tone/silence ratio:"
msgstr "Proporción de tono a silencio:"
-#: effects/DtmfGen.cpp:496
+#: effects/DtmfGen.cpp:462
msgid "Duty cycle:"
msgstr "Ciclo de trabajo:"
-#: effects/DtmfGen.cpp:498
+#: effects/DtmfGen.cpp:464
msgid "Tone duration:"
msgstr "Duración de tono:"
-#: effects/DtmfGen.cpp:499 effects/DtmfGen.cpp:501 effects/DtmfGen.cpp:577
-#: effects/DtmfGen.cpp:578
+#: effects/DtmfGen.cpp:465 effects/DtmfGen.cpp:467 effects/DtmfGen.cpp:543
+#: effects/DtmfGen.cpp:544
msgid "ms"
msgstr "ms"
-#: effects/DtmfGen.cpp:500
+#: effects/DtmfGen.cpp:466
msgid "Silence duration:"
msgstr "Duración del silencio:"
-#: effects/DtmfGen.h:39
+#: effects/DtmfGen.h:40
msgid "DTMF Tones..."
msgstr "Tonos DTMF..."
-#: effects/DtmfGen.h:53
+#: effects/DtmfGen.h:54
#, c-format
msgid "Applied effect: Generate DTMF tones, %.6lf seconds"
msgstr "Efecto aplicado: Generar tonos DTMF, %.6lf segundos"
-#: effects/DtmfGen.h:57
+#: effects/DtmfGen.h:58
msgid "Generating DTMF tones"
msgstr "Generando tonos DTMF"
@@ -4785,21 +5526,21 @@ msgstr "Generando tonos DTMF"
msgid "Applied effect: %s delay = %f seconds, decay factor = %f"
msgstr "Efecto aplicado: %s retraso = %f segundos, factor de decaimiento = %f"
-#: effects/Echo.cpp:170
+#: effects/Echo.cpp:174
msgid "Echo"
msgstr "Eco"
#. i18n-hint: && in here is an escape character to get a single & on
#. * screen, so keep it as is
-#: effects/Echo.cpp:195 effects/Repeat.cpp:200
+#: effects/Echo.cpp:199 effects/Repeat.cpp:199
msgid "by Dominic Mazzoni && Vaughan Johnson"
msgstr "de Dominic Mazzoni y Vaughan Johnson"
-#: effects/Echo.cpp:207
+#: effects/Echo.cpp:211
msgid "Delay time (seconds):"
msgstr "Tiempo de retraso (segundos):"
-#: effects/Echo.cpp:212
+#: effects/Echo.cpp:216
msgid "Decay factor:"
msgstr "Factor de decaimiento:"
@@ -4811,107 +5552,115 @@ msgstr "Eco..."
msgid "Performing Echo"
msgstr "Aplicando eco"
-#: effects/Effect.cpp:467
+#: effects/Effect.cpp:498
msgid "Preparing preview"
msgstr "Preparando vista previa"
-#: effects/Effect.cpp:497
+#: effects/Effect.cpp:530
msgid "Previewing"
msgstr "Mostrando vista previa"
-#: effects/Effect.cpp:512
-msgid "Error while opening sound device. Please check the output device settings and the project sample rate."
-msgstr "Error al abrir dispositivo de sonido. Por favor verifique la configuración del dispositivo de salida y la frecuencia de muestreo del proyecto."
+#: effects/Effect.cpp:545
+msgid ""
+"Error while opening sound device. Please check the output device settings "
+"and the project sample rate."
+msgstr ""
+"Error al abrir dispositivo de sonido. Por favor verifique la configuración "
+"del dispositivo de salida y la frecuencia de muestreo del proyecto."
-#: effects/Effect.h:100
+#: effects/Effect.h:96 effects/TimeScale.cpp:52
#, c-format
msgid "Applied effect: %s"
msgstr "Efecto aplicado: %s"
-#: effects/Equalization.cpp:329
+#: effects/Equalization.cpp:338
msgid "B-spline"
msgstr "Curva b-spline"
-#: effects/Equalization.cpp:330
+#: effects/Equalization.cpp:339
msgid "Cosine"
msgstr "Coseno"
-#: effects/Equalization.cpp:331
+#: effects/Equalization.cpp:340
msgid "Cubic"
msgstr "Cúbico"
-#: effects/Equalization.cpp:367 effects/Equalization.cpp:416
+#: effects/Equalization.cpp:379 effects/Equalization.cpp:430
msgid "Equalization"
msgstr "Ecualización"
-#: effects/Equalization.cpp:994
+#: effects/Equalization.cpp:1009
msgid "Error loading EQ curve"
msgstr "Error al cargar la curva de ecualización"
-#: effects/Equalization.cpp:1033
+#: effects/Equalization.cpp:1048
msgid "custom"
msgstr "personalizado"
+#: effects/Equalization.cpp:1097
+msgid "Error saving equalization curves"
+msgstr "Error al guardar las curvas de ecualización"
+
#. i18n-hint: && in here is an escape character to get a single &
#. * on screen, so keep it as is
-#: effects/Equalization.cpp:1101
+#: effects/Equalization.cpp:1120
msgid "Equalization, by Martyn Shaw && Mitch Golden"
msgstr "Ecualización de Mitch Golden y Vaughan Johnson"
-#: effects/Equalization.cpp:1122
+#: effects/Equalization.cpp:1141
msgid "Max dB"
msgstr "Máximo de dB"
-#: effects/Equalization.cpp:1124
+#: effects/Equalization.cpp:1143
msgid "Min dB"
msgstr "MÃnimo de dB"
-#: effects/Equalization.cpp:1197
+#: effects/Equalization.cpp:1216
msgid "kHz"
msgstr "kHz"
-#: effects/Equalization.cpp:1214
+#: effects/Equalization.cpp:1233
msgid "Draw curves"
msgstr "Dibujar curvas"
-#: effects/Equalization.cpp:1219
+#: effects/Equalization.cpp:1238
msgid "Graphic EQ"
msgstr "Ecualizador gráfico"
-#: effects/Equalization.cpp:1233
+#: effects/Equalization.cpp:1252
msgid "Linear frequency scale"
msgstr "Escala de frecuencia lineal"
-#: effects/Equalization.cpp:1242
+#: effects/Equalization.cpp:1261
msgid "Length of filter:"
msgstr "Longitud del filtro:"
-#: effects/Equalization.cpp:1263
+#: effects/Equalization.cpp:1282
msgid "Select curve:"
msgstr "Seleccionar curva:"
-#: effects/Equalization.cpp:1273 effects/Equalization.cpp:2512
-#: export/ExportMultiple.cpp:882
+#: effects/Equalization.cpp:1292 effects/Equalization.cpp:2552
+#: export/ExportMultiple.cpp:924
msgid "Save As..."
msgstr "Guardar como..."
-#: effects/Equalization.cpp:1279
+#: effects/Equalization.cpp:1298
msgid "Flat"
msgstr "Plano"
-#: effects/Equalization.cpp:2511
+#: effects/Equalization.cpp:2551
msgid "Enter the desired name of the curve"
msgstr "Introduzca el nombre de la curva"
-#: effects/Equalization.cpp:2611 export/ExportFFmpegDialogs.cpp:1202
+#: effects/Equalization.cpp:2651 export/ExportFFmpegDialogs.cpp:1214
msgid "Confirm Deletion"
msgstr "Confirmar borrado"
-#: effects/Equalization.h:84
+#: effects/Equalization.h:82
msgid "Equalization..."
msgstr "Ecualización..."
-#: effects/Equalization.h:98
+#: effects/Equalization.h:96
msgid "Performing Equalization"
msgstr "Aplicando ecualización"
@@ -4931,33 +5680,33 @@ msgstr "Desvanecer progresivamente"
msgid "Fading Out"
msgstr "Aplicando Desvanecer progresivamente"
-#: effects/FindClipping.cpp:49
+#: effects/FindClipping.cpp:50
msgid "Detect clipping"
msgstr "Detectar recorte"
-#: effects/FindClipping.cpp:91
+#: effects/FindClipping.cpp:93
msgid "Clipping"
msgstr "Recorte"
-#: effects/FindClipping.cpp:211
+#: effects/FindClipping.cpp:213
msgid "Find Clipping"
msgstr "Buscar recorte"
-#: effects/FindClipping.cpp:222
+#: effects/FindClipping.cpp:224
msgid "by Leland Lucius"
msgstr "de Leland Lucius"
-#: effects/FindClipping.cpp:234
+#: effects/FindClipping.cpp:236
msgid "Start threshold (samples):"
msgstr "Umbral de inicio (muestras):"
-#: effects/FindClipping.cpp:238
+#: effects/FindClipping.cpp:240
msgid "Stop threshold (samples):"
-msgstr "Umbral de parada (muestras):"
+msgstr "Umbral de detención (muestras):"
-#: effects/FindClipping.cpp:250
+#: effects/FindClipping.cpp:252
msgid "Start and stop must be greater than 0."
-msgstr "Comenzar y parar debe ser mayor que cero."
+msgstr "Comenzar y detener debe ser mayor que cero."
#: effects/FindClipping.h:37
msgid "Find Clipping..."
@@ -4979,47 +5728,47 @@ msgstr "Invirtiendo"
msgid "Leveller"
msgstr "Nivelado"
-#: effects/Leveller.cpp:203
+#: effects/Leveller.cpp:205
msgid "None-Skip"
msgstr "Sin saltar nada"
-#: effects/Leveller.cpp:204
+#: effects/Leveller.cpp:206
msgid "Light"
msgstr "Ligero"
-#: effects/Leveller.cpp:205
+#: effects/Leveller.cpp:207
msgid "Moderate"
msgstr "Moderado"
-#: effects/Leveller.cpp:206
+#: effects/Leveller.cpp:208
msgid "Heavy"
msgstr "Pesado"
-#: effects/Leveller.cpp:207
+#: effects/Leveller.cpp:209
msgid "Heavier"
msgstr "Más pesado"
-#: effects/Leveller.cpp:208
+#: effects/Leveller.cpp:210
msgid "Heaviest"
msgstr "El más pesado"
-#: effects/Leveller.cpp:212 effects/TruncSilence.cpp:331
+#: effects/Leveller.cpp:214
msgid "by Lynn Allan"
msgstr "de Lynn Allan"
-#: effects/Leveller.cpp:222
+#: effects/Leveller.cpp:224
msgid "Degree of Leveling"
msgstr "Grado de nivelado"
-#: effects/Leveller.cpp:226
+#: effects/Leveller.cpp:228
msgid "Degree of Leveling:"
msgstr "Grado de nivelado:"
-#: effects/Leveller.cpp:234
+#: effects/Leveller.cpp:236
msgid "Noise Threshold (Hiss/Hum/Ambient Noise)"
msgstr "Umbral de ruido (Hiss/Hum/Ruido ambiental)"
-#: effects/Leveller.cpp:238
+#: effects/Leveller.cpp:240
msgid "Threshold for Noise:"
msgstr "Umbral para ruido:"
@@ -5031,155 +5780,151 @@ msgstr "Nivelado..."
msgid "Applying Leveller..."
msgstr "Aplicando nivelado..."
-#: effects/LoadEffects.cpp:99
+#: effects/LoadEffects.cpp:102
msgid "Generator"
msgstr "Generador"
-#: effects/LoadEffects.cpp:101
+#: effects/LoadEffects.cpp:104
msgid "Instrument"
msgstr "Instrumento"
-#: effects/LoadEffects.cpp:103
+#: effects/LoadEffects.cpp:106
msgid "Oscillator"
msgstr "Oscilador"
-#: effects/LoadEffects.cpp:105
+#: effects/LoadEffects.cpp:108
msgid "Utility"
msgstr "Utilidad"
-#: effects/LoadEffects.cpp:107
+#: effects/LoadEffects.cpp:110
msgid "Converter"
msgstr "Conversor"
-#: effects/LoadEffects.cpp:109
+#: effects/LoadEffects.cpp:112
msgid "Analyser"
msgstr "Analizador"
-#: effects/LoadEffects.cpp:111 toolbars/MixerToolBar.cpp:60
-msgid "Mixer"
-msgstr "Mezclador"
-
-#: effects/LoadEffects.cpp:113
+#: effects/LoadEffects.cpp:116
msgid "Simulator"
msgstr "Simulador"
-#: effects/LoadEffects.cpp:115
+#: effects/LoadEffects.cpp:118
msgid "Delay"
msgstr "Retardo"
-#: effects/LoadEffects.cpp:117
+#: effects/LoadEffects.cpp:120
msgid "Modulator"
msgstr "Modulador"
-#: effects/LoadEffects.cpp:119
+#: effects/LoadEffects.cpp:122
msgid "Reverb"
msgstr "Reverberación"
-#: effects/LoadEffects.cpp:121 effects/Phaser.cpp:208
+#: effects/LoadEffects.cpp:124 effects/Phaser.cpp:208
msgid "Phaser"
msgstr "Cambio de fase"
-#: effects/LoadEffects.cpp:123
+#: effects/LoadEffects.cpp:126
msgid "Flanger"
msgstr "Flanger"
-#: effects/LoadEffects.cpp:125
+#: effects/LoadEffects.cpp:128
msgid "Chorus"
msgstr "Coro"
-#: effects/LoadEffects.cpp:127
+#: effects/LoadEffects.cpp:130
msgid "Filter"
msgstr "Filtro"
-#: effects/LoadEffects.cpp:129
+#: effects/LoadEffects.cpp:132
msgid "Lowpass"
msgstr "Paso bajo"
-#: effects/LoadEffects.cpp:131
+#: effects/LoadEffects.cpp:134
msgid "Bandpass"
msgstr "Paso de banda"
-#: effects/LoadEffects.cpp:133
+#: effects/LoadEffects.cpp:136
msgid "Highpass"
msgstr "Paso alto"
-#: effects/LoadEffects.cpp:135
+#: effects/LoadEffects.cpp:138
msgid "Comb"
msgstr "Comb"
-#: effects/LoadEffects.cpp:137
+#: effects/LoadEffects.cpp:140
msgid "Allpass"
msgstr "Paso de todos"
-#: effects/LoadEffects.cpp:139
+#: effects/LoadEffects.cpp:142
msgid "Equaliser"
msgstr "Ecualizador"
-#: effects/LoadEffects.cpp:141
+#: effects/LoadEffects.cpp:144
msgid "Parametric"
msgstr "Paramétrico"
-#: effects/LoadEffects.cpp:143
+#: effects/LoadEffects.cpp:146
msgid "Multiband"
msgstr "Multibanda"
-#: effects/LoadEffects.cpp:145
+#: effects/LoadEffects.cpp:148
msgid "Spectral Processor"
msgstr "Procesador de espectro"
-#: effects/LoadEffects.cpp:147
+#: effects/LoadEffects.cpp:150
msgid "Pitch Shifter"
msgstr "Desplazamiento de tono"
-#: effects/LoadEffects.cpp:149
+#: effects/LoadEffects.cpp:152
msgid "Amplifier"
msgstr "Amplicador"
-#: effects/LoadEffects.cpp:151
+#: effects/LoadEffects.cpp:154
msgid "Distortion"
msgstr "Distorsión"
-#: effects/LoadEffects.cpp:153
+#: effects/LoadEffects.cpp:156
msgid "Waveshaper"
msgstr "Perfilado de onda"
-#: effects/LoadEffects.cpp:155
+#: effects/LoadEffects.cpp:158
msgid "Dynamics Processor"
msgstr "Procesador dinámico"
-#: effects/LoadEffects.cpp:157
+#: effects/LoadEffects.cpp:160
msgid "Compressor"
msgstr "Compresor"
-#: effects/LoadEffects.cpp:159
+#: effects/LoadEffects.cpp:162
msgid "Expander"
msgstr "Expandidor"
-#: effects/LoadEffects.cpp:161
+#: effects/LoadEffects.cpp:164
msgid "Limiter"
msgstr "Limitador"
-#: effects/LoadEffects.cpp:163
+#: effects/LoadEffects.cpp:166
msgid "Gate"
msgstr "Puerta"
-#: effects/LoadEffects.cpp:196 effects/NoiseRemoval.cpp:725
+#: effects/LoadEffects.cpp:199 effects/NoiseRemoval.cpp:738
msgid "Noise Removal"
msgstr "Reducción de ruido"
-#: effects/LoadEffects.cpp:198
+#: effects/LoadEffects.cpp:201
msgid "Pitch and Tempo"
msgstr "Tono y ritmo"
-#: effects/LoadEffects.cpp:200
+#: effects/LoadEffects.cpp:203
msgid "Timeline Changer"
msgstr "Modicador de lÃnea de tiempo"
-#: effects/LoadEffects.cpp:202
+#: effects/LoadEffects.cpp:205
msgid "Time"
msgstr "Tiempo"
-#: effects/LoadEffects.cpp:204
+#: effects/LoadEffects.cpp:207
msgid "Onsets"
msgstr "Comienzos"
@@ -5199,24 +5944,24 @@ msgstr "Marrón"
msgid "Noise Generator"
msgstr "Generador de ruido"
-#: effects/Noise.cpp:241
+#: effects/Noise.cpp:189
msgid "Noise type"
msgstr "Tipo de ruido:"
-#: effects/Noise.h:41
+#: effects/Noise.h:42
msgid "Noise..."
msgstr "Ruido..."
-#: effects/Noise.h:55
+#: effects/Noise.h:56
#, c-format
msgid "Applied effect: Generate Noise, %.6lf seconds"
msgstr "Efecto aplicado: Generar ruido, %.6lf segundos"
-#: effects/Noise.h:59
+#: effects/Noise.h:60
msgid "Generating Noise"
msgstr "Generando ruido"
-#: effects/NoiseRemoval.cpp:192
+#: effects/NoiseRemoval.cpp:191
#, c-format
msgid ""
"Could not open file:\n"
@@ -5225,15 +5970,15 @@ msgstr ""
"No se ha podido abrir el archivo:\n"
" %s"
-#: effects/NoiseRemoval.cpp:277
+#: effects/NoiseRemoval.cpp:276
msgid "Attempt to run Noise Removal without a noise profile.\n"
msgstr "Intentando aplicar reducción de ruido sin un perfil de ruido.\n"
-#: effects/NoiseRemoval.cpp:814
+#: effects/NoiseRemoval.cpp:827
msgid "Step 1"
msgstr "Paso 1"
-#: effects/NoiseRemoval.cpp:815
+#: effects/NoiseRemoval.cpp:828
msgid ""
"Select a few seconds of just noise so Audacity knows what to filter out,\n"
"then click Get Noise Profile:"
@@ -5241,59 +5986,60 @@ msgstr ""
"Seleccione unos segundos de ruido para que Audacity sepa qué filtrar, luego\n"
"haga clic en Obtener perfil de ruido:"
-#: effects/NoiseRemoval.cpp:816
+#: effects/NoiseRemoval.cpp:829
msgid "Step 2"
msgstr "Paso 2"
-#: effects/NoiseRemoval.cpp:817
+#: effects/NoiseRemoval.cpp:830
msgid ""
"Select all of the audio you want filtered, choose how much noise you want\n"
"filtered out, and then click 'OK' to remove noise.\n"
msgstr ""
-"Seleccione todo el audio que desea filtrar, elija que porcentaje de ruido desea filtrar\n"
+"Seleccione todo el audio que desea filtrar, elija que porcentaje de ruido "
+"desea filtrar\n"
"y luego haga clic en Aceptar para eliminar el ruido.\n"
-#: effects/NoiseRemoval.cpp:822
+#: effects/NoiseRemoval.cpp:835
msgid "Noise Removal by Dominic Mazzoni"
msgstr "Reducción de ruido de Dominic Mazzoni"
-#: effects/NoiseRemoval.cpp:830
+#: effects/NoiseRemoval.cpp:843
msgid "Get Noise Profile"
msgstr "Obtener perfil de ruido"
-#: effects/NoiseRemoval.cpp:841
+#: effects/NoiseRemoval.cpp:854
msgid "Noise reduction (dB):"
msgstr "Reducción de ruido (dB):"
-#: effects/NoiseRemoval.cpp:850
+#: effects/NoiseRemoval.cpp:859
msgid "Noise reduction"
msgstr "Reducción de ruido"
-#: effects/NoiseRemoval.cpp:849
+#: effects/NoiseRemoval.cpp:863
msgid "Frequency smoothing (Hz):"
msgstr "Suavizado de frecuencia (Hz):"
-#: effects/NoiseRemoval.cpp:859
+#: effects/NoiseRemoval.cpp:868
msgid "Frequency smoothing"
msgstr "Suavizado de frecuencia"
-#: effects/NoiseRemoval.cpp:857
+#: effects/NoiseRemoval.cpp:872
msgid "Attack/decay time (secs):"
msgstr "Tiempo de ataque o decaimiento (seg):"
-#: effects/NoiseRemoval.cpp:868
+#: effects/NoiseRemoval.cpp:877
msgid "Attach/decay time"
msgstr "Tiempo de ataque o decaimiento"
-#: effects/NoiseRemoval.h:35
+#: effects/NoiseRemoval.h:37
msgid "Noise Removal..."
msgstr "Reducción de ruido..."
-#: effects/NoiseRemoval.h:50
+#: effects/NoiseRemoval.h:52
msgid "Creating Noise Profile"
msgstr "Creando perfil de ruido"
-#: effects/NoiseRemoval.h:52
+#: effects/NoiseRemoval.h:54
msgid "Removing Noise"
msgstr "Reduciendo ruido"
@@ -5304,10 +6050,6 @@ msgstr "Reduciendo ruido"
msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr "Efecto aplicado: %s eliminada desalineación = %s, amplitud normalizada = %s"
-#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
-msgid "false"
-msgstr "falso"
-
#. i18n-hint: true here means that the option was
#. * selected. Opposite false if not selected
#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
@@ -5323,19 +6065,19 @@ msgstr ", amplitud máxima = %1f dB"
msgid "Normalize"
msgstr "Normalizado"
-#: effects/Normalize.cpp:351 effects/Normalize.cpp:352
+#: effects/Normalize.cpp:355
msgid "Remove any DC offset (center on 0.0 vertically)"
msgstr "Eliminar cualquier desalineación DC (centrar en 0.0 verticalmente)"
-#: effects/Normalize.cpp:357
+#: effects/Normalize.cpp:358
msgid "Normalize maximum amplitude to:"
msgstr "Normalizar amplitud máxima a:"
-#: effects/Normalize.cpp:362
+#: effects/Normalize.cpp:366
msgid "-"
msgstr "-"
-#: effects/Normalize.cpp:367
+#: effects/Normalize.cpp:371
msgid "Maximum amplitude dB"
msgstr "Amplitud máxima db"
@@ -5349,54 +6091,58 @@ msgstr "Normalizando..."
#: effects/Phaser.cpp:65
#, c-format
-msgid "Applied effect: %s %d stages, %.0f%% wet, frequency = %.1f Hz, start phase = %.0f deg, depth = %d, feedback = %.0f%%"
-msgstr "Efecto aplicado: %s %d etapas, %.0f%% wet, frecuencia = %.1f Hz, fase inicial = %.0f grados, profundidad = %d, retroalimentación = %.0f%%"
+msgid ""
+"Applied effect: %s %d stages, %.0f%% wet, frequency = %.1f Hz, start phase = "
+"%.0f deg, depth = %d, feedback = %.0f%%"
+msgstr ""
+"Efecto aplicado: %s %d etapas, %.0f%% wet, frecuencia = %.1f Hz, fase "
+"inicial = %.0f grados, profundidad = %d, retroalimentación = %.0f%%"
-#: effects/Phaser.cpp:226
+#: effects/Phaser.cpp:228
msgid "Stages:"
msgstr "Etapas:"
-#: effects/Phaser.cpp:229
+#: effects/Phaser.cpp:231
msgid "Stages"
msgstr "Etapas"
-#: effects/Phaser.cpp:231
+#: effects/Phaser.cpp:236
msgid "Dry/Wet:"
msgstr "Seco/Húmedo:"
-#: effects/Phaser.cpp:234
+#: effects/Phaser.cpp:239
msgid "Dry Wet"
msgstr "Seco húmedo"
-#: effects/Phaser.cpp:236 effects/Wahwah.cpp:221
+#: effects/Phaser.cpp:244 effects/Wahwah.cpp:222
msgid "LFO Frequency (Hz):"
msgstr "Frecuencia LFO (Hz):"
-#: effects/Phaser.cpp:239 effects/Wahwah.cpp:224
+#: effects/Phaser.cpp:247 effects/Wahwah.cpp:225
msgid "LFO frequency in hertz"
msgstr "Frecuencia LFO en hertzios"
-#: effects/Phaser.cpp:241 effects/Wahwah.cpp:226
+#: effects/Phaser.cpp:252 effects/Wahwah.cpp:230
msgid "LFO Start Phase (deg.):"
msgstr "Fase de Inicio LFO (grados):"
-#: effects/Phaser.cpp:244 effects/Wahwah.cpp:229
+#: effects/Phaser.cpp:255 effects/Wahwah.cpp:233
msgid "LFO start phase in degrees"
msgstr "Fase de Inicio LFO en grados"
-#: effects/Phaser.cpp:246
+#: effects/Phaser.cpp:260
msgid "Depth:"
msgstr "Profundidad:"
-#: effects/Phaser.cpp:249 effects/Wahwah.cpp:234
+#: effects/Phaser.cpp:263 effects/Wahwah.cpp:241
msgid "Depth in percent"
msgstr "Profundidad en porcentaje"
-#: effects/Phaser.cpp:251
+#: effects/Phaser.cpp:268
msgid "Feedback (%):"
msgstr "Retroalimentación (%):"
-#: effects/Phaser.cpp:254
+#: effects/Phaser.cpp:271
msgid "Feedback in percent"
msgstr "Retroalimentación en porcentaje"
@@ -5410,13 +6156,16 @@ msgstr "Aplicando cambio de fase"
#: effects/Repair.cpp:99
msgid ""
-"The Repair effect is intended to be used on very short sections of damaged audio (up to 128 samples).\n"
+"The Repair effect is intended to be used on very short sections of damaged "
+"audio (up to 128 samples).\n"
"\n"
"Zoom in and select a tiny fraction of a second to repair."
msgstr ""
-"El efecto de reparación está pensado para usarse en pequeñas secciones de audio dañado (hasta 128 muestras).\n"
+"El efecto de reparación está pensado para usarse en pequeñas secciones de "
+"audio dañado (hasta 128 muestras).\n"
"\n"
-"Utilice la herramienta Acercar y seleccione una pequeña fracción de un segundo para realizar la reparación."
+"Utilice la herramienta Acercar y seleccione una pequeña fracción de un "
+"segundo para realizar la reparación."
#: effects/Repair.cpp:105
msgid ""
@@ -5445,25 +6194,25 @@ msgstr "Repetido %d veces"
msgid "Tracks are too long to repeat the selection."
msgstr "Las pistas son muy largas para repetir la selección."
-#: effects/Repeat.cpp:77 effects/Repeat.cpp:187
+#: effects/Repeat.cpp:77 effects/Repeat.cpp:186
msgid "Repeat"
msgstr "Repetir"
-#: effects/Repeat.cpp:212
+#: effects/Repeat.cpp:211
msgid "Number of times to repeat:"
msgstr "Número de veces a repetir:"
-#: effects/Repeat.cpp:221
+#: effects/Repeat.cpp:220
msgid "New selection length: hh:mm:ss"
msgstr "Nueva duración de selección: hh:mm:ss"
-#: effects/Repeat.cpp:253
+#: effects/Repeat.cpp:252
msgid "New selection length: "
msgstr "Nueva longitud de selección: "
#. i18n-hint: Name of time display format that shows time in hours, minutes
#. * and seconds
-#: effects/Repeat.cpp:262 widgets/TimeTextCtrl.cpp:270
+#: effects/Repeat.cpp:261 widgets/TimeTextCtrl.cpp:272
msgid "hh:mm:ss"
msgstr "hh:mm:ss"
@@ -5500,9 +6249,13 @@ msgstr "Generando silencio"
msgid "Applied effect: Generate Silence, %.6lf seconds"
msgstr "Efecto aplicado: Generar silencio, %.6lf segundos"
-#: effects/SimplePairedTwoTrack.h:120
-msgid "Sorry, this effect cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "Este efecto no puede ser aplicado en pistas estéreo donde los canales individuales de la pista no coinciden."
+#: effects/SimplePairedTwoTrack.h:115
+msgid ""
+"Sorry, this effect cannot be performed on stereo tracks where the individual "
+"channels of the track do not match."
+msgstr ""
+"Este efecto no puede ser aplicado en pistas estéreo donde los canales "
+"individuales de la pista no coinciden."
#: effects/SpikeCleaner.cpp:69
msgid "Spike Cleaner"
@@ -5533,8 +6286,8 @@ msgid "Applying Spike Cleaner..."
msgstr "Aplicando limpiador de picos..."
#: effects/StereoToMono.h:23
-msgid "&Stereo to Mono"
-msgstr "E&stéreo a Mono"
+msgid "Stereo to Mono"
+msgstr "Estéreo a Mono"
#: effects/StereoToMono.h:38
msgid "Applying Stereo to Mono"
@@ -5586,10 +6339,14 @@ msgstr "Modificando ritmo/tono"
#: effects/ToneGen.cpp:61
#, c-format
-msgid "Applied effect: Generate %s wave %s, frequency = %.2f Hz, amplitude = %.2f, %.6lf seconds"
-msgstr "Efecto aplicado: Generar %s onda %s, frecuencia = %.2f Hz, amplitud = %.2f, %.6lf segundos"
+msgid ""
+"Applied effect: Generate %s wave %s, frequency = %.2f Hz, amplitude = %.2f, "
+"%.6lf seconds"
+msgstr ""
+"Efecto aplicado: Generar %s onda %s, frecuencia = %.2f Hz, amplitud = %.2f, "
+"%.6lf segundos"
-#: effects/ToneGen.cpp:69 widgets/Meter.cpp:415
+#: effects/ToneGen.cpp:69 widgets/Meter.cpp:405
msgid "Linear"
msgstr "Lineal"
@@ -5621,31 +6378,31 @@ msgstr "Diente de sierra"
msgid "Square, no alias"
msgstr "Cuadrado, sin alias"
-#: effects/ToneGen.cpp:321 effects/ToneGen.cpp:357
+#: effects/ToneGen.cpp:277 effects/ToneGen.cpp:314
msgid "Frequency (Hz)"
msgstr "Frecuencia (Hz)"
-#: effects/ToneGen.cpp:348
+#: effects/ToneGen.cpp:305
msgid "Waveform:"
msgstr "Forma de onda:"
-#: effects/ToneGen.cpp:358
+#: effects/ToneGen.cpp:314
msgid "Frequency Hertz Start"
msgstr "Hertzio de comienzo de frecuencia"
-#: effects/ToneGen.cpp:359
+#: effects/ToneGen.cpp:315
msgid "Frequency Hertz End"
msgstr "Hertzio de fin de frecuencia"
-#: effects/ToneGen.cpp:360
+#: effects/ToneGen.cpp:316
msgid "Amplitude Start"
msgstr "Comienzo de amplitud"
-#: effects/ToneGen.cpp:361
+#: effects/ToneGen.cpp:317
msgid "Amplitude End"
msgstr "Fin de amplitud"
-#: effects/ToneGen.cpp:365
+#: effects/ToneGen.cpp:322
msgid "Interpolation:"
msgstr "Interpolación:"
@@ -5665,78 +6422,141 @@ msgstr "Generando chirp"
msgid "Generating Tone"
msgstr "Generando tono"
-#: effects/TruncSilence.cpp:113
+#: effects/TruncSilence.cpp:133
msgid "All tracks must have the same sample rate"
msgstr "Todas las pistas deben tener la misma frecuencia de muestreo"
-#: effects/TruncSilence.cpp:113 effects/TruncSilence.cpp:321
+#: effects/TruncSilence.cpp:133 effects/TruncSilence.cpp:444
msgid "Truncate Silence"
msgstr "Truncado de silencio"
-#: effects/TruncSilence.cpp:345
-msgid "Max silence duration:"
-msgstr "Duración máxima del silencio:"
+#: effects/TruncSilence.cpp:454
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr "por Lynn Allan y Philip Van Baren"
-#: effects/TruncSilence.cpp:348 prefs/AudioIOPrefs.cpp:196
-#: prefs/AudioIOPrefs.cpp:199 prefs/MidiIOPrefs.cpp:174
-#: prefs/MidiIOPrefs.cpp:177
+#: effects/TruncSilence.cpp:468
+msgid "Min silence duration:"
+msgstr "Duración mÃnima del silencio:"
+
+#: effects/TruncSilence.cpp:471 effects/TruncSilence.cpp:475
+#: prefs/MidiIOPrefs.cpp:197 prefs/MidiIOPrefs.cpp:199
msgid "milliseconds"
msgstr "milisegundos"
-#: effects/TruncSilence.cpp:350
+#: effects/TruncSilence.cpp:472
+msgid "Max silence duration:"
+msgstr "Duración máxima del silencio:"
+
+#: effects/TruncSilence.cpp:476
+msgid "Silence compression:"
+msgstr "Compresión del silencio:"
+
+#: effects/TruncSilence.cpp:479
+msgid ":1"
+msgstr ":1"
+
+#: effects/TruncSilence.cpp:481
msgid "Threshold for silence:"
-msgstr "Umbral de silencio:"
+msgstr "Umbral del silencio:"
-#: effects/TruncSilence.cpp:374
-msgid " Duration must be at least 1 millisecond"
-msgstr " La duración debe ser de al menos 1 milisegundo"
+#: effects/TruncSilence.cpp:507
+msgid ""
+" Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
+msgstr ""
+" La duración debe ser de al menos 1 milisegundo\n"
+" La relación de compresión debe ser de al menos 1:1"
-#: effects/TruncSilence.h:28
+#: effects/TruncSilence.h:29
msgid "Truncate Silence..."
msgstr "Truncado de silencio..."
-#: effects/TruncSilence.h:42
+#: effects/TruncSilence.h:43
msgid "Truncating Silence..."
msgstr "Truncando silencio..."
-#: effects/VST/VSTEffect.cpp:172
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "Los efectos VST no pueden ser aplicados en pistas estéreo donde los canales individuales de la pista no coinciden."
+#: effects/VST/VSTEffect.cpp:256 effects/ladspa/LadspaEffect.cpp:590
+#: effects/lv2/LV2Effect.cpp:798
+msgid "Effect Settings"
+msgstr "Configuración del efecto"
+
+#: effects/VST/VSTEffect.cpp:336 effects/ladspa/LadspaEffect.cpp:555
+#: effects/ladspa/LadspaEffect.cpp:563 prefs/QualityPrefs.cpp:74
+#: prefs/TracksPrefs.cpp:48
+msgid "None"
+msgstr "Ninguno"
+
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr "Predefinidos:"
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr "Cargar"
+
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr "Guardar"
+
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr "Cargar programa VST:"
+
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr "Error al cargar el programa"
+
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr "Guardar programa VST como:"
+
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr "Este archivo de parámetros fue guardado como %s. ¿Desea continuar?"
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr "Aplicando el efecto: "
-#: effects/VST/VSTEffect.cpp:187
-msgid "Can't process replacing"
-msgstr "No se puede realizar el reemplazo"
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr "Los dos canales de una pista estéro deben tener la misma frecuencia de muestreo."
-#: effects/VST/VSTEffect.cpp:410
-msgid "VST Plug-in parameters:"
-msgstr "Parámetros de los complementos VST:"
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr "Los dos canales de una pista estério deben tener la misma longitud."
#: effects/Wahwah.cpp:61
#, c-format
-msgid "Applied effect: %s frequency = %.1f Hz, start phase = %.0f deg, depth = %.0f%%, resonance = %.1f, frequency offset = %.0f%%"
-msgstr "Efecto aplicado: frecuencia %s = %.1f Hz, fase inicial = %.0f grad, profundidad= %.0f% %, resonancia = %.1f, desplazamiento de frecuencia= %.0f%%"
+msgid ""
+"Applied effect: %s frequency = %.1f Hz, start phase = %.0f deg, depth = %.0f%"
+"%, resonance = %.1f, frequency offset = %.0f%%"
+msgstr ""
+"Efecto aplicado: frecuencia %s = %.1f Hz, fase inicial = %.0f grad, "
+"profundidad= %.0f% %, resonancia = %.1f, desplazamiento de frecuencia= %.0f%%"
#: effects/Wahwah.cpp:203
msgid "Wahwah"
msgstr "Wahwah"
-#: effects/Wahwah.cpp:231
+#: effects/Wahwah.cpp:238
msgid "Depth (%):"
msgstr "Profundidad (%):"
-#: effects/Wahwah.cpp:236
+#: effects/Wahwah.cpp:246
msgid "Resonance:"
msgstr "Resonancia:"
-#: effects/Wahwah.cpp:239
+#: effects/Wahwah.cpp:249
msgid "Resonance"
msgstr "Resonancia"
-#: effects/Wahwah.cpp:241
+#: effects/Wahwah.cpp:254
msgid "Wah Frequency Offset (%):"
msgstr "Desplazamiento de la frecuencia Wah (%):"
-#: effects/Wahwah.cpp:244
+#: effects/Wahwah.cpp:257
msgid "Wah frequency offset in percent"
msgstr "Desplazamiento de la frecuencia Wah en porcentaje"
@@ -5748,182 +6568,185 @@ msgstr "Wahwah..."
msgid "Applying Wahwah"
msgstr "Aplicando Wahwah"
-#: effects/audiounits/AudioUnitEffect.cpp:138
-#: effects/ladspa/LadspaEffect.cpp:176 effects/lv2/LV2Effect.cpp:191
+#: effects/audiounits/AudioUnitEffect.cpp:139
+#: effects/ladspa/LadspaEffect.cpp:178 effects/lv2/LV2Effect.cpp:193
#, c-format
msgid "Performing Effect: %s"
msgstr "Aplicando efecto: %s"
-#: effects/ladspa/LadspaEffect.cpp:196 effects/lv2/LV2Effect.cpp:211
-msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "Los complementos de efectos no pueden ser aplicados en pistas estéreo donde los canales individuales de la pista no coinciden."
-
-#: effects/ladspa/LadspaEffect.cpp:580 effects/ladspa/LadspaEffect.cpp:588
-#: prefs/GUIPrefs.cpp:51 prefs/QualityPrefs.cpp:72
-msgid "None"
-msgstr "Ninguno"
+#: effects/ladspa/LadspaEffect.cpp:198 effects/lv2/LV2Effect.cpp:213
+msgid ""
+"Sorry, Plug-in Effects cannot be performed on stereo tracks where the "
+"individual channels of the track do not match."
+msgstr ""
+"Los complementos de efectos no pueden ser aplicados en pistas estéreo donde "
+"los canales individuales de la pista no coinciden."
-#: effects/ladspa/LadspaEffect.cpp:582 effects/lv2/LV2Effect.cpp:798
-#: effects/vamp/VampEffect.cpp:395
+#: effects/ladspa/LadspaEffect.cpp:557 effects/lv2/LV2Effect.cpp:773
+#: effects/vamp/VampEffect.cpp:371
msgid "Author: "
msgstr "Autor: "
-#: effects/ladspa/LadspaEffect.cpp:615 effects/lv2/LV2Effect.cpp:823
-msgid "Effect Settings"
-msgstr "Configuración del efecto"
-
-#: effects/ladspa/LadspaEffect.cpp:710 effects/ladspa/LadspaEffect.cpp:713
-#: effects/lv2/LV2Effect.cpp:834 effects/lv2/LV2Effect.cpp:837
+#: effects/ladspa/LadspaEffect.cpp:685 effects/ladspa/LadspaEffect.cpp:688
+#: effects/lv2/LV2Effect.cpp:809 effects/lv2/LV2Effect.cpp:812
msgid "Length (seconds)"
msgstr "Longitud (segundos)"
-#: effects/lv2/LV2Effect.cpp:849 effects/lv2/LV2Effect.cpp:852
+#: effects/lv2/LV2Effect.cpp:824 effects/lv2/LV2Effect.cpp:827
msgid "Note length (seconds)"
msgstr "Duración de nota (segundos)"
-#: effects/lv2/LV2Effect.cpp:860 effects/lv2/LV2Effect.cpp:863
+#: effects/lv2/LV2Effect.cpp:835 effects/lv2/LV2Effect.cpp:838
msgid "Note velocity"
msgstr "Velocidad de nota"
-#: effects/lv2/LV2Effect.cpp:871 effects/lv2/LV2Effect.cpp:874
+#: effects/lv2/LV2Effect.cpp:846 effects/lv2/LV2Effect.cpp:849
msgid "Note key"
msgstr "Clave de nota"
-#: effects/nyquist/Nyquist.cpp:257
+#: effects/nyquist/Nyquist.cpp:73
msgid "Applying Nyquist Effect..."
msgstr "Aplicando efecto Nyquist..."
-#: effects/nyquist/Nyquist.cpp:264 effects/nyquist/Nyquist.cpp:326
+#: effects/nyquist/Nyquist.cpp:91 effects/nyquist/Nyquist.cpp:401
msgid "Nyquist Prompt..."
msgstr "Comando Nyquist..."
-#: effects/nyquist/Nyquist.cpp:327
+#: effects/nyquist/Nyquist.cpp:402
msgid "Enter Nyquist Command: "
msgstr "Introduzca comando Nyquist: "
-#: effects/nyquist/Nyquist.cpp:417
+#: effects/nyquist/Nyquist.cpp:515
msgid "Sorry, cannot apply effect on stereo tracks where the tracks don't match."
-msgstr "No se puede aplicar el efecto en pistas estéreo donde las pistas no coinciden."
+msgstr ""
+"No se puede aplicar el efecto en pistas estéreo donde las pistas no "
+"coinciden."
-#: effects/nyquist/Nyquist.cpp:445
+#: effects/nyquist/Nyquist.cpp:557
msgid "Nyquist"
msgstr "Nyquist"
-#: effects/nyquist/Nyquist.cpp:446
+#: effects/nyquist/Nyquist.cpp:558
msgid "Nyquist Output: "
msgstr "Salida Nyquist: "
-#: effects/nyquist/Nyquist.cpp:603 effects/nyquist/Nyquist.cpp:614
+#: effects/nyquist/Nyquist.cpp:656 effects/nyquist/Nyquist.cpp:665
msgid "Nyquist returned the value:"
msgstr "Nyquist devolvió el valor:"
-#: effects/nyquist/Nyquist.cpp:656
+#: effects/nyquist/Nyquist.cpp:702
msgid "Nyquist did not return audio.\n"
msgstr "Nyquist no devolvió audio.\n"
-#: effects/nyquist/Nyquist.cpp:667
+#: effects/nyquist/Nyquist.cpp:711
msgid "Nyquist returned too many audio channels.\n"
msgstr "Nyquist devolvió demasiados canales de audio.\n"
-#: effects/vamp/VampEffect.cpp:86
+#: effects/vamp/VampEffect.cpp:81
#, c-format
msgid "Extracting features: %s"
msgstr "Extrayendo caracterÃsticas: %s"
-#: effects/vamp/VampEffect.cpp:117
-msgid "Sorry, Vamp Plug-ins cannot be run on stereo tracks where the individual channels of the track do not match."
-msgstr "Los complementos Vamp no pueden ser aplicados en pistas estéreo donde los canales individuales de la pista no coinciden."
+#: effects/vamp/VampEffect.cpp:107
+msgid ""
+"Sorry, Vamp Plug-ins cannot be run on stereo tracks where the individual "
+"channels of the track do not match."
+msgstr ""
+"Los complementos Vamp no pueden ser aplicados en pistas estéreo donde los "
+"canales individuales de la pista no coinciden."
-#: effects/vamp/VampEffect.cpp:131
+#: effects/vamp/VampEffect.cpp:121
msgid "Sorry, failed to load Vamp Plug-in."
msgstr "Fallo al cargar el complemento Vamp."
-#: effects/vamp/VampEffect.cpp:239
+#: effects/vamp/VampEffect.cpp:207
msgid "Sorry, Vamp Plug-in failed to initialize."
msgstr "Fallo al inicializar el complemento Vamp."
-#: effects/vamp/VampEffect.cpp:387
+#: effects/vamp/VampEffect.cpp:363
msgid " - Vamp audio analysis plugin"
msgstr " - Complemento de análisis de audio Vamp"
-#: effects/vamp/VampEffect.cpp:423
+#: effects/vamp/VampEffect.cpp:399
msgid "Plugin Settings"
msgstr "Configuración de complemento"
-#: effects/vamp/VampEffect.cpp:442 effects/vamp/VampEffect.cpp:448
+#: effects/vamp/VampEffect.cpp:418 effects/vamp/VampEffect.cpp:424
msgid "Program"
msgstr "Programa"
-#: export/Export.cpp:469
+#: export/Export.cpp:468
msgid "All the selected audio is muted."
msgstr "Todo el audio seleccionado está silenciado."
-#: export/Export.cpp:471
+#: export/Export.cpp:470
msgid "All the audio is muted."
msgstr "Todo el audio está silenciado."
-#: export/Export.cpp:522
+#: export/Export.cpp:526
msgid "Export File"
msgstr "Exportar archivo"
-#: export/Export.cpp:530
+#: export/Export.cpp:535
msgid "&Options..."
msgstr "&Opciones..."
-#: export/Export.cpp:571
+#: export/Export.cpp:576
msgid "Are you sure you want to save the file as \""
msgstr "¿Está seguro de que desea guardar el archivo como \""
-#: export/Export.cpp:591
+#: export/Export.cpp:596
#, c-format
msgid ""
"You are about to save a %s file with the name \"%s\".\n"
"\n"
-"Normally these files end in \".%s\", and some programs will not open files with nonstandard extensions.\n"
+"Normally these files end in \".%s\", and some programs will not open files "
+"with nonstandard extensions.\n"
"\n"
"Are you sure you want to save the file under this name?"
msgstr ""
"Va a guardar un archivo %s con el nombre \"%s\".\n"
"\n"
-"Estos archivos suelen acabar con \".%s\", y alguno programas no abrirán archivos con una extensión no estándar.\n"
+"Estos archivos suelen acabar con \".%s\", y alguno programas no abrirán "
+"archivos con una extensión no estándar.\n"
"\n"
"¿Está seguro de que desea guardar el archivo con ese nombre?"
-#: export/Export.cpp:612
+#: export/Export.cpp:617
#, c-format
msgid "A file named \"%s\" already exists. Replace?"
msgstr "Ya existe un archivo llamado \"%s\". ¿Desea sobreescribirlo?"
-#: export/Export.cpp:710
+#: export/Export.cpp:719
msgid "Your tracks will be mixed down to two stereo channels in the exported file."
msgstr "Las pistas serán mezcladas en dos canales estéreo en el archivo exportado."
-#: export/Export.cpp:715
+#: export/Export.cpp:724
msgid "Your tracks will be mixed down to a single mono channel in the exported file."
msgstr "Las pistas serán mezcladas en un solo canal mono en el archivo exportado."
-#: export/Export.cpp:726
+#: export/Export.cpp:735
msgid "Advanced Mixing Options"
msgstr "Opciones avanzadas de mezclado"
-#: export/Export.cpp:930
+#: export/Export.cpp:943
#, c-format
msgid "Channel: %2d"
msgstr "Canal: %2d"
-#: export/Export.cpp:1046
+#: export/Export.cpp:1058
msgid " - Left"
msgstr " - Izquierdo"
-#: export/Export.cpp:1047
+#: export/Export.cpp:1060
msgid " - Right"
msgstr " - Derecho"
-#: export/Export.cpp:1072
+#: export/Export.cpp:1082
msgid "Mixer Panel"
msgstr "Panel mezclador"
-#: export/Export.cpp:1078 export/Export.cpp:1125
+#: export/Export.cpp:1088 export/Export.cpp:1135
#, c-format
msgid "Output Channels: %2d"
msgstr "Canales de salida: %2d"
@@ -5932,53 +6755,79 @@ msgstr "Canales de salida: %2d"
msgid "Specify Command Line Encoder"
msgstr "Indicar codificador de lÃnea de comandos"
-#: export/ExportCL.cpp:70
+#: export/ExportCL.cpp:68
msgid "Command Line Export Setup"
msgstr "Opciones de exportación de lÃnea de comandos"
-#: export/ExportCL.cpp:75
+#: export/ExportCL.cpp:73
msgid "Command:"
msgstr "Comando:"
-#: export/ExportCL.cpp:80
+#: export/ExportCL.cpp:78
msgid "Show output"
msgstr "Mostrar salida"
-#: export/ExportCL.cpp:87
+#: export/ExportCL.cpp:85
#, c-format
-msgid "Data will be piped to standard in. \"%f\" will be replaced with output filename selected."
-msgstr "Los datos serán enviados a la entrada estándar. \"%f\" serán reemplazados con el nombre de archivo de salida seleccionado."
+msgid ""
+"Data will be piped to standard in. \"%f\" will be replaced with output "
+"filename selected."
+msgstr ""
+"Los datos serán enviados a la entrada estándar. \"%f\" serán reemplazados "
+"con el nombre de archivo de salida seleccionado."
-#: export/ExportCL.cpp:222
+#: export/ExportCL.cpp:220
msgid "(external program)"
msgstr "Usar un programa externo"
-#: export/ExportCL.cpp:253 export/ExportPCM.cpp:454
+#: export/ExportCL.cpp:286 export/ExportPCM.cpp:492
#, c-format
msgid "Cannot export audio to %s"
msgstr "No se puede exportar audio a %s"
-#: export/ExportCL.cpp:327
+#: export/ExportCL.cpp:360
msgid "Exporting the selected audio using command-line encoder"
-msgstr "Exportando el audio seleccionado utilizando el codificador de lÃnea de comandos"
+msgstr ""
+"Exportando el audio seleccionado utilizando el codificador de lÃnea de "
+"comandos"
-#: export/ExportCL.cpp:328
+#: export/ExportCL.cpp:361
msgid "Exporting the entire project using command-line encoder"
-msgstr "Exportando el proyecto completo utilizando el codificador de lÃnea de comandos"
+msgstr ""
+"Exportando el proyecto completo utilizando el codificador de lÃnea de "
+"comandos"
-#: export/ExportCL.cpp:390
+#: export/ExportCL.cpp:423
msgid "Command Output"
msgstr "Salida de comando"
-#: export/ExportFFmpeg.cpp:59
+#: export/ExportFFmpeg.cpp:61
msgid ""
"Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+"You can configure it at Preferences > Libraries."
msgstr ""
"Se necesita contar con FFmpeg correctamente configurado.\n"
-"Puede configurarlo en Preferencias->Importar/Exportar."
+"Puede configurarlo en Preferencias > Bibliotecas."
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr "Soporte AMR no distribuible"
-#: export/ExportFFmpeg.cpp:394
+#: export/ExportFFmpeg.cpp:232
+msgid ""
+"Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
+msgstr ""
+"Se necesita contar con FFmpeg correctamente configurado.\n"
+"Puede configurarlo en Preferencias > Bibliotecas.\n"
+"\n"
+"Observe que no se dispone de soporte AMR con nuestro \n"
+"instalador FFmpeg, pero es neceario para poder compilar FFmpeg."
+
+#: export/ExportFFmpeg.cpp:433
#, c-format
msgid ""
"FFmpeg cannot find audio codec 0x%x.\n"
@@ -5987,26 +6836,30 @@ msgstr ""
"FFmpeg no puede encontrar el codec de audio 0x%x.\n"
"Probablemente se ha realizado la compilación sin soporte para el."
-#: export/ExportFFmpeg.cpp:614
+#: export/ExportFFmpeg.cpp:655
#, c-format
-msgid "Attempted to export %d channels, but max. channels for selected output format is %d"
-msgstr "Se intentó exportar %d canales, pero el número máximo de canales para el formato seleccionado es de %d"
+msgid ""
+"Attempted to export %d channels, but max. channels for selected output "
+"format is %d"
+msgstr ""
+"Se intentó exportar %d canales, pero el número máximo de canales para el "
+"formato seleccionado es de %d"
-#: export/ExportFFmpeg.cpp:638
+#: export/ExportFFmpeg.cpp:684
#, c-format
msgid "Exporting selected audio as %s"
msgstr "Exportando audio seleccionado como %s"
-#: export/ExportFFmpeg.cpp:639
+#: export/ExportFFmpeg.cpp:685
#, c-format
msgid "Exporting entire file as %s"
msgstr "Exportando el proyecto completo como %s"
-#: export/ExportFFmpeg.cpp:702 export/ExportMP3.cpp:1920
+#: export/ExportFFmpeg.cpp:748 export/ExportMP3.cpp:1777
msgid "Invalid sample rate"
msgstr "Frecuencia de muestreo inválida"
-#: export/ExportFFmpeg.cpp:715
+#: export/ExportFFmpeg.cpp:761
#, c-format
msgid ""
"The project sample rate (%d) is not supported by the current output\n"
@@ -6015,156 +6868,167 @@ msgstr ""
"La frecuencia de muestreo del proyecto (%d) no está soportada por el\n"
"formato de archivo de salida actual."
-#: export/ExportFFmpeg.cpp:718
+#: export/ExportFFmpeg.cpp:764
#, c-format
msgid ""
"The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
"supported by the current output file format. "
msgstr ""
"La frecuencia de muestra del proyecto (%d) combinada con la velocidad\n"
-"de transferencia (%d kbps) no está soportada por el formato de archivo de salida actual."
+"de transferencia (%d kbps) no está soportada por el formato de archivo de "
+"salida actual."
-#: export/ExportFFmpeg.cpp:721 export/ExportMP3.cpp:1939
+#: export/ExportFFmpeg.cpp:767 export/ExportMP3.cpp:1796
msgid "You may resample to one of the rates below."
msgstr "Puede volver a muestrear a una de las frecuencias indicadas."
-#: export/ExportFFmpeg.cpp:749 export/ExportMP3.cpp:1962
+#: export/ExportFFmpeg.cpp:795 export/ExportMP3.cpp:1819
msgid "Sample Rates"
msgstr "Frecuencias de muestreo"
#: export/ExportFFmpegDialogs.cpp:93
msgid "Specify AC3 Options"
-msgstr "Especificar opciones AC3"
+msgstr "Indicar opciones AC3"
-#: export/ExportFFmpegDialogs.cpp:114
+#: export/ExportFFmpegDialogs.cpp:112
msgid "AC3 Export Setup"
msgstr "Opciones de exportación AC3"
-#: export/ExportFFmpegDialogs.cpp:118 export/ExportFFmpegDialogs.cpp:236
-#: export/ExportFFmpegDialogs.cpp:302 export/ExportFFmpegDialogs.cpp:370
-#: export/ExportFFmpegDialogs.cpp:919 export/ExportMP2.cpp:133
+#: export/ExportFFmpegDialogs.cpp:116 export/ExportFFmpegDialogs.cpp:234
+#: export/ExportFFmpegDialogs.cpp:298 export/ExportFFmpegDialogs.cpp:364
+#: export/ExportFFmpegDialogs.cpp:926 export/ExportMP2.cpp:131
msgid "Bit Rate:"
msgstr "Velocidad de transferencia:"
-#: export/ExportFFmpegDialogs.cpp:159
+#: export/ExportFFmpegDialogs.cpp:157
msgid "Specify AAC Options"
-msgstr "Especificar opciones AAC"
+msgstr "Indicar opciones AAC"
-#: export/ExportFFmpegDialogs.cpp:172
+#: export/ExportFFmpegDialogs.cpp:168
msgid "AAC Export Setup"
msgstr "Opciones de exportación a AAC"
+#: export/ExportFFmpegDialogs.cpp:172 export/ExportFFmpegDialogs.cpp:929
+#: export/ExportOGG.cpp:84
+msgid "Quality:"
+msgstr "Calidad:"
+
#: export/ExportFFmpegDialogs.cpp:211
msgid "Specify AMR-NB Options"
-msgstr "Especificar opciones AMR-NB"
+msgstr "Indicar opciones AMR-NB"
-#: export/ExportFFmpegDialogs.cpp:232
+#: export/ExportFFmpegDialogs.cpp:230
msgid "AMR-NB Export Setup"
msgstr "Opciones de exportación a AMR-NB"
-#: export/ExportFFmpegDialogs.cpp:277
+#: export/ExportFFmpegDialogs.cpp:275
msgid "Specify AMR-WB Options"
-msgstr "Especificar opciones AMR-WB"
+msgstr "Indicar opciones AMR-WB"
-#: export/ExportFFmpegDialogs.cpp:298
+#: export/ExportFFmpegDialogs.cpp:294
msgid "AMR-WB Export Setup"
msgstr "Opciones de exportación a AMR-WB"
-#: export/ExportFFmpegDialogs.cpp:345
+#: export/ExportFFmpegDialogs.cpp:341
msgid "Specify WMA Options"
-msgstr "Especificar opciones WMA"
+msgstr "Indicar opciones WMA"
-#: export/ExportFFmpegDialogs.cpp:366
+#: export/ExportFFmpegDialogs.cpp:360
msgid "WMA Export Setup"
msgstr "Opciones de exportación a WMA"
-#: export/ExportFFmpegDialogs.cpp:494
+#: export/ExportFFmpegDialogs.cpp:491
#, c-format
msgid "Overwrite preset '%s'?"
msgstr "¿Sobreescribir valores predefinidos '%s'?"
-#: export/ExportFFmpegDialogs.cpp:495
+#: export/ExportFFmpegDialogs.cpp:492
msgid "Confirm Overwrite"
msgstr "Confirmar sobreescritura"
-#: export/ExportFFmpegDialogs.cpp:501
+#: export/ExportFFmpegDialogs.cpp:504
msgid "Please select format before saving a profile"
msgstr "Seleccione el formato antes de guardar un perfil"
-#: export/ExportFFmpegDialogs.cpp:509
+#: export/ExportFFmpegDialogs.cpp:512
msgid "Please select codec before saving a profile"
msgstr "Seleccione el codec antes de guardar un perfil"
-#: export/ExportFFmpegDialogs.cpp:580
+#: export/ExportFFmpegDialogs.cpp:582
#, c-format
msgid "Preset '%s' does not exist."
msgstr "Los valores predefinidos '%s' no existen."
-#: export/ExportFFmpegDialogs.cpp:788
+#: export/ExportFFmpegDialogs.cpp:797
msgid "Specify Other Options"
-msgstr "Especificar otras opciones"
+msgstr "Indicar otras opciones"
-#: export/ExportFFmpegDialogs.cpp:879
+#: export/ExportFFmpegDialogs.cpp:886
msgid "Preset:"
msgstr "Predefinido:"
-#: export/ExportFFmpegDialogs.cpp:880
+#: export/ExportFFmpegDialogs.cpp:887
msgid "Load Preset"
msgstr "Cargar predefinidos"
-#: export/ExportFFmpegDialogs.cpp:881
+#: export/ExportFFmpegDialogs.cpp:888
msgid "Save Preset"
msgstr "Guardar predefinidos"
-#: export/ExportFFmpegDialogs.cpp:882
+#: export/ExportFFmpegDialogs.cpp:889
msgid "Delete Preset"
msgstr "Borrar predefinidos"
-#: export/ExportFFmpegDialogs.cpp:883
+#: export/ExportFFmpegDialogs.cpp:890
msgid "Import Presets"
msgstr "Importar predefinidos"
-#: export/ExportFFmpegDialogs.cpp:884
+#: export/ExportFFmpegDialogs.cpp:891
msgid "Export Presets"
msgstr "Exportar predefinidos"
-#: export/ExportFFmpegDialogs.cpp:889
+#: export/ExportFFmpegDialogs.cpp:896
msgid "Format:"
msgstr "Formato:"
-#: export/ExportFFmpegDialogs.cpp:891
+#: export/ExportFFmpegDialogs.cpp:898
msgid "Codec:"
msgstr "Codec:"
-#: export/ExportFFmpegDialogs.cpp:895
-msgid "Not all formats and codecs are compatible. Some parameters (such as bitrate and samplerate) combinations are not compatible with some codecs too."
-msgstr "No todos los formatos y codecs son compatibles. Algunas combinaciones de (como la velocidad de transferencia y la frecuencia de muestra) parámetros no son compatibles con algunos codecs."
+#: export/ExportFFmpegDialogs.cpp:902
+msgid ""
+"Not all formats and codecs are compatible. Some parameters (such as bitrate "
+"and samplerate) combinations are not compatible with some codecs too."
+msgstr ""
+"No todos los formatos y codecs son compatibles. Algunas combinaciones de "
+"(como la velocidad de transferencia y la frecuencia de muestra) parámetros "
+"no son compatibles con algunos codecs."
-#: export/ExportFFmpegDialogs.cpp:898
+#: export/ExportFFmpegDialogs.cpp:905
msgid "Format selector:"
msgstr "Selector de formato:"
-#: export/ExportFFmpegDialogs.cpp:899
+#: export/ExportFFmpegDialogs.cpp:906
msgid "Codec selector:"
msgstr "Selector de codec:"
-#: export/ExportFFmpegDialogs.cpp:901
+#: export/ExportFFmpegDialogs.cpp:908
msgid "Show All Formats"
msgstr "Mostrar todos los formatos"
-#: export/ExportFFmpegDialogs.cpp:902
+#: export/ExportFFmpegDialogs.cpp:909
msgid "Show All Codecs"
msgstr "Mostrar todos los codecs"
-#: export/ExportFFmpegDialogs.cpp:914
+#: export/ExportFFmpegDialogs.cpp:916
msgid "Options"
msgstr "Opciones"
-#: export/ExportFFmpegDialogs.cpp:913 prefs/GUIPrefs.cpp:166
+#: export/ExportFFmpegDialogs.cpp:920 prefs/GUIPrefs.cpp:116
msgid "Language:"
msgstr "Idioma:"
-#: export/ExportFFmpegDialogs.cpp:914
+#: export/ExportFFmpegDialogs.cpp:921
msgid ""
"ISO 639 3-letter language code\n"
"Optional\n"
@@ -6174,11 +7038,11 @@ msgstr ""
"Opcional\n"
"vacÃo - automático"
-#: export/ExportFFmpegDialogs.cpp:916
+#: export/ExportFFmpegDialogs.cpp:923
msgid "Tag:"
msgstr "Etiqueta:"
-#: export/ExportFFmpegDialogs.cpp:917
+#: export/ExportFFmpegDialogs.cpp:924
msgid ""
"Codec tag (FOURCC)\n"
"Optional\n"
@@ -6188,7 +7052,7 @@ msgstr ""
"Opcional\n"
"vacÃo - automático"
-#: export/ExportFFmpegDialogs.cpp:920
+#: export/ExportFFmpegDialogs.cpp:927
msgid ""
"Bit Rate (bits/second) - influences the resulting file size and quality\n"
"Some codecs may only accept specific values (128k, 192k, 256k etc)\n"
@@ -6196,31 +7060,29 @@ msgid ""
"Recommended - 192000"
msgstr ""
"Velocidad de transferencia (bits/segundo) - influye en el tamaño y calidad\n"
-"del archivo resultante. Algunos codec pueden aceptar sólo valores especÃficos \n"
+"del archivo resultante. Algunos codec pueden aceptar sólo valores "
+"especÃficos \n"
"(128k, 192k, 256k, etc.)\n"
"0 - automático.\n"
"Recomendado - 192000"
-#: export/ExportFFmpegDialogs.cpp:922 export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr "Calidad:"
-
-#: export/ExportFFmpegDialogs.cpp:923
+#: export/ExportFFmpegDialogs.cpp:930
msgid ""
-"Overral quality, used differently by different codecs\n"
+"Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
msgstr ""
-"Cualidad general, empleada por diferentes codec\n"
+"Calidad general, empleada por diferentes codec\n"
"Requerida para vorbis\n"
-"0 - automática -1 - desactivado (utilice en su lugar la velocidad de transferencia)"
+"0 - automática\n"
+"-1 - desactivado (utiliza en su lugar la velocidad de transferencia)"
-#: export/ExportFFmpegDialogs.cpp:925
+#: export/ExportFFmpegDialogs.cpp:932
msgid "Sample Rate:"
msgstr "Frecuencia de muestreo:"
-#: export/ExportFFmpegDialogs.cpp:926
+#: export/ExportFFmpegDialogs.cpp:933
msgid ""
"Sample rate (Hz)\n"
"0 - don't change sample rate"
@@ -6228,25 +7090,25 @@ msgstr ""
"Frecuencia de muestreo (Hz)\n"
"0 -No modificar la frecuencia de muestreo"
-#: export/ExportFFmpegDialogs.cpp:928
+#: export/ExportFFmpegDialogs.cpp:935
msgid "Cutoff Bandwidth:"
msgstr "Ancho de banda útil:"
-#: export/ExportFFmpegDialogs.cpp:929
+#: export/ExportFFmpegDialogs.cpp:936
msgid ""
"Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
"Ancho de banda útil de audio (Hz)\n"
"Opcional\n"
-"0 - automático\n"
+"0 - automático"
-#: export/ExportFFmpegDialogs.cpp:931
+#: export/ExportFFmpegDialogs.cpp:938
msgid "Profile:"
msgstr "Perfil:"
-#: export/ExportFFmpegDialogs.cpp:933
+#: export/ExportFFmpegDialogs.cpp:940
msgid ""
"AAC Profile\n"
"Low Complexity -default\n"
@@ -6256,23 +7118,23 @@ msgstr ""
"Baja complejidad -predeterminado\n"
"La mayorÃa de los reproductores no reproducirán otro tipo de perfil"
-#: export/ExportFFmpegDialogs.cpp:940
+#: export/ExportFFmpegDialogs.cpp:942
msgid "Use Bit Reservoir"
msgstr "Usar Buffer de bit (Bit Reservoir)"
-#: export/ExportFFmpegDialogs.cpp:943
+#: export/ExportFFmpegDialogs.cpp:945
msgid "Use Variable Block Length"
msgstr "Usar longitud de bloque variable"
-#: export/ExportFFmpegDialogs.cpp:948
+#: export/ExportFFmpegDialogs.cpp:950
msgid "FLAC options"
msgstr "Opciones FLAC"
-#: export/ExportFFmpegDialogs.cpp:947
+#: export/ExportFFmpegDialogs.cpp:954
msgid "Compression Level:"
msgstr "Nivel de compresión:"
-#: export/ExportFFmpegDialogs.cpp:948
+#: export/ExportFFmpegDialogs.cpp:955
msgid ""
"Compression level\n"
"Required for FLAC\n"
@@ -6286,11 +7148,11 @@ msgstr ""
"min - 0 (codificación, rápida, archivos resultantes grandes)\n"
"max - 10 (codificación lenta, archivos resultantes pequeños)"
-#: export/ExportFFmpegDialogs.cpp:950
+#: export/ExportFFmpegDialogs.cpp:957
msgid "Frame Size:"
msgstr "Tamaño de fotograma:"
-#: export/ExportFFmpegDialogs.cpp:951
+#: export/ExportFFmpegDialogs.cpp:958
msgid ""
"Frame size\n"
"Optional\n"
@@ -6304,11 +7166,11 @@ msgstr ""
"min - 16\n"
"max - 65535"
-#: export/ExportFFmpegDialogs.cpp:953
+#: export/ExportFFmpegDialogs.cpp:960
msgid "LPC coefficients precision"
msgstr "Precisión de coeficientes LPC"
-#: export/ExportFFmpegDialogs.cpp:954
+#: export/ExportFFmpegDialogs.cpp:961
msgid ""
"LPC coefficients precision\n"
"Optional\n"
@@ -6321,11 +7183,11 @@ msgstr ""
"min - 1\n"
"max - 15"
-#: export/ExportFFmpegDialogs.cpp:956
+#: export/ExportFFmpegDialogs.cpp:963
msgid "Minimal prediction order"
msgstr "Orden mÃnimo de predicción"
-#: export/ExportFFmpegDialogs.cpp:957
+#: export/ExportFFmpegDialogs.cpp:964
msgid ""
"Minimal prediction order\n"
"Optional\n"
@@ -6339,11 +7201,11 @@ msgstr ""
"min - 0\n"
"max - 32 (con LPC) o 4 (sin LPC)"
-#: export/ExportFFmpegDialogs.cpp:959
+#: export/ExportFFmpegDialogs.cpp:966
msgid "Maximal prediction order"
msgstr "Orden máximo de predicción"
-#: export/ExportFFmpegDialogs.cpp:960
+#: export/ExportFFmpegDialogs.cpp:967
msgid ""
"Maximal prediction order\n"
"Optional\n"
@@ -6357,11 +7219,11 @@ msgstr ""
"min - 0\n"
"max - 32 (con LPC) o 4 (sin LPC)"
-#: export/ExportFFmpegDialogs.cpp:962
+#: export/ExportFFmpegDialogs.cpp:969
msgid "Prediction Order Method:"
msgstr "Método de orden de predicción"
-#: export/ExportFFmpegDialogs.cpp:964
+#: export/ExportFFmpegDialogs.cpp:971
msgid ""
"Prediction Order Method\n"
"Estimate - fastest, lower compression\n"
@@ -6373,11 +7235,11 @@ msgstr ""
"Búsqueda logarÃtmica - el más lento, la mejor compresión\n"
"Búsqueda completa - predeterminado"
-#: export/ExportFFmpegDialogs.cpp:966
+#: export/ExportFFmpegDialogs.cpp:973
msgid "Minimal partition order"
msgstr "Orden mÃnimo de partición"
-#: export/ExportFFmpegDialogs.cpp:967
+#: export/ExportFFmpegDialogs.cpp:974
msgid ""
"Minimal partition order\n"
"Optional\n"
@@ -6391,11 +7253,11 @@ msgstr ""
"min - 0\n"
"max - 8"
-#: export/ExportFFmpegDialogs.cpp:969
+#: export/ExportFFmpegDialogs.cpp:976
msgid "Maximal partition order"
msgstr "Orden máximo de partición"
-#: export/ExportFFmpegDialogs.cpp:970
+#: export/ExportFFmpegDialogs.cpp:977
msgid ""
"Maximal partition order\n"
"Optional\n"
@@ -6409,19 +7271,19 @@ msgstr ""
"min - 0\n"
"max - 8"
-#: export/ExportFFmpegDialogs.cpp:977
+#: export/ExportFFmpegDialogs.cpp:979
msgid "Use LPC"
msgstr "Usar LPC"
-#: export/ExportFFmpegDialogs.cpp:984
+#: export/ExportFFmpegDialogs.cpp:986
msgid "MPEG container options"
msgstr "Opciones de contendor MPEG"
-#: export/ExportFFmpegDialogs.cpp:983
+#: export/ExportFFmpegDialogs.cpp:990
msgid "Mux Rate:"
msgstr "Frecuencia de multiplexado:"
-#: export/ExportFFmpegDialogs.cpp:984
+#: export/ExportFFmpegDialogs.cpp:991
msgid ""
"Maximum bit rate of the multiplexed stream\n"
"Optional\n"
@@ -6431,11 +7293,11 @@ msgstr ""
"Opcional\n"
"0 - predeterminado"
-#: export/ExportFFmpegDialogs.cpp:986
+#: export/ExportFFmpegDialogs.cpp:993
msgid "Packet Size:"
msgstr "Tamaño de paquete:"
-#: export/ExportFFmpegDialogs.cpp:987
+#: export/ExportFFmpegDialogs.cpp:994
msgid ""
"Packet size\n"
"Optional\n"
@@ -6445,237 +7307,252 @@ msgstr ""
"Opcional\n"
"0 - predeterminado"
-#: export/ExportFFmpegDialogs.cpp:1207
+#: export/ExportFFmpegDialogs.cpp:1209
msgid "You can't delete a preset without name"
msgstr "No puede borrar an valor predefinido sin nombre"
-#: export/ExportFFmpegDialogs.cpp:1201
+#: export/ExportFFmpegDialogs.cpp:1213
#, c-format
msgid "Delete preset '%s'?"
msgstr "¿Eliminar valor predefinido '%s'?"
-#: export/ExportFFmpegDialogs.cpp:1220
+#: export/ExportFFmpegDialogs.cpp:1232
msgid "You can't save a preset without name"
msgstr "No puede guardar un valor predefinido con ese nombre"
-#: export/ExportFFmpegDialogs.cpp:1259
+#: export/ExportFFmpegDialogs.cpp:1272
msgid "Select xml file with presets to import"
msgstr "Seleccione un archivo xml con valores predefinidos a importar"
-#: prefs/KeyConfigPrefs.cpp:202
+#: export/ExportFFmpegDialogs.cpp:1275 export/ExportFFmpegDialogs.cpp:1295
+#: prefs/KeyConfigPrefs.cpp:267 prefs/KeyConfigPrefs.cpp:298
msgid "XML files (*.xml)|*.xml|All files (*.*)|*.*"
msgstr "Archivos Xml (*.xml)|*.xml|Todos los archivos (*.*)|*.*"
-#: export/ExportFFmpegDialogs.cpp:1274
+#: export/ExportFFmpegDialogs.cpp:1292
msgid "Select xml file to export presets into"
msgstr "Seleccione un archivo xml para exportar los valores predefinidos"
-#: export/ExportFFmpegDialogs.cpp:1361
+#: export/ExportFFmpegDialogs.cpp:1363
msgid "Failed to guess format"
msgstr "Fallo al averiguar el formato"
-#: export/ExportFFmpegDialogs.cpp:1403
+#: export/ExportFFmpegDialogs.cpp:1405
msgid "Failed to find the codec"
msgstr "Fallo al buscar el codec"
-#: export/ExportFFmpegDialogs.h:53
+#: export/ExportFFmpegDialogs.h:54
msgid "M4A (AAC) Files (FFmpeg)"
msgstr "Archivos M4A (AAC) (FFmpeg)"
-#: export/ExportFFmpegDialogs.h:54
+#: export/ExportFFmpegDialogs.h:55
msgid "AC3 Files (FFmpeg)"
msgstr "Archivos AC3 (FFmpeg)"
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
-msgstr "Archivos AMR (banda estrecha) (FFmpeg)"
-
#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
-msgstr "Archivos AMR (banda ancha) (FFmpeg)"
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
+msgstr "Archivos AMR (banda estrecha) (FFmpeg, no distribuible)"
#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
+msgstr "Archivos AMR (banda ancha) (FFmpeg, no distribuible)"
+
+#: export/ExportFFmpegDialogs.h:58
msgid "WMA (version 2) Files (FFmpeg)"
msgstr "Archivos WMA (version 2) (FFmpeg)"
-#: export/ExportFFmpegDialogs.h:58
+#: export/ExportFFmpegDialogs.h:59
msgid "Custom FFmpeg Export"
msgstr "Exportar FFmpeg personalizado"
-#: export/ExportFFmpegDialogs.h:373
+#: export/ExportFFmpegDialogs.h:374
msgid "LTP"
msgstr "LTP"
-#: export/ExportFFmpegDialogs.h:373
+#: export/ExportFFmpegDialogs.h:374
msgid "Low Complexity"
msgstr "Baja complejidad"
-#: export/ExportFFmpegDialogs.h:373
+#: export/ExportFFmpegDialogs.h:374
msgid "Main profile"
msgstr "Perfil principal"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "2-level"
msgstr "2 niveles"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "4-level"
msgstr "4 niveles"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "8-level"
msgstr "8 niveles"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "Estimate"
msgstr "Estimado"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "Full search"
msgstr "Búsqueda completa"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "Log search"
msgstr "Búsqueda logarÃtmica"
-#: export/ExportFLAC.cpp:68
+#: export/ExportFLAC.cpp:67
msgid "Specify FLAC Options"
-msgstr "Especificar opciones FLAC"
+msgstr "Indicar opciones FLAC"
-#: export/ExportFLAC.cpp:82
+#: export/ExportFLAC.cpp:79
msgid "0 (fastest)"
msgstr "0 (el más rápido)"
-#: export/ExportFLAC.cpp:83
+#: export/ExportFLAC.cpp:80
msgid "1"
msgstr "1"
-#: export/ExportFLAC.cpp:84
+#: export/ExportFLAC.cpp:81
msgid "2"
msgstr "2"
-#: export/ExportFLAC.cpp:85
+#: export/ExportFLAC.cpp:82
msgid "3"
msgstr "3"
-#: export/ExportFLAC.cpp:86
+#: export/ExportFLAC.cpp:83
msgid "4"
msgstr "4"
-#: export/ExportFLAC.cpp:87
+#: export/ExportFLAC.cpp:84
msgid "5"
msgstr "5"
-#: export/ExportFLAC.cpp:88
+#: export/ExportFLAC.cpp:85
msgid "6"
msgstr "6"
-#: export/ExportFLAC.cpp:89
+#: export/ExportFLAC.cpp:86
msgid "7"
msgstr "7"
-#: export/ExportFLAC.cpp:90
+#: export/ExportFLAC.cpp:87
msgid "8 (best)"
msgstr "8 (el mejor)"
-#: export/ExportFLAC.cpp:93
+#: export/ExportFLAC.cpp:90
msgid "16 bit"
msgstr "16 bit"
-#: export/ExportFLAC.cpp:94
+#: export/ExportFLAC.cpp:91
msgid "24 bit"
msgstr "24 bit"
-#: export/ExportFLAC.cpp:98
+#: export/ExportFLAC.cpp:95
msgid "FLAC Export Setup"
msgstr "Opciones de exportación a FLAC"
-#: export/ExportFLAC.cpp:102
+#: export/ExportFLAC.cpp:99
msgid "Level:"
msgstr "Nivel:"
-#: export/ExportFLAC.cpp:104
+#: export/ExportFLAC.cpp:101
msgid "Bit depth:"
msgstr "Profundidad de bit:"
-#: export/ExportFLAC.cpp:210
+#: export/ExportFLAC.cpp:207
msgid "FLAC Files"
msgstr "Archivos FLAC"
-#: export/ExportFLAC.cpp:313
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr "La exportación de FLAC no pudo abrir %s"
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid ""
+"FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr "Fallo al inicializar la codificación de FLAC<br> Estado: %d"
+
+#: export/ExportFLAC.cpp:324
msgid "Exporting the selected audio as FLAC"
msgstr "Exportando el audio seleccionado como un archivo FLAC"
-#: export/ExportFLAC.cpp:314
+#: export/ExportFLAC.cpp:325
msgid "Exporting the entire project as FLAC"
msgstr "Exportando el proyecto completo como un archivo FLAC"
#: export/ExportMP2.cpp:108
msgid "Specify MP2 Options"
-msgstr "Especificar opciones MP2"
+msgstr "Indicar opciones MP2"
-#: export/ExportMP2.cpp:129
+#: export/ExportMP2.cpp:127
msgid "MP2 Export Setup"
msgstr "Opciones de exportación a MP2"
-#: export/ExportMP2.cpp:202
+#: export/ExportMP2.cpp:200
msgid "MP2 Files"
msgstr "Archivos MP2"
-#: export/ExportMP2.cpp:232
+#: export/ExportMP2.cpp:230
msgid "Cannot export MP2 with this sample rate and bit rate"
-msgstr "No se puede exportar a MP2 con esta frecuencia de muestreo y velocidad de transferencia"
+msgstr ""
+"No se puede exportar a MP2 con esta frecuencia de muestreo y velocidad de "
+"transferencia"
-#: export/ExportMP2.cpp:243 export/ExportMP3.cpp:1771 export/ExportOGG.cpp:186
+#: export/ExportMP2.cpp:241 export/ExportMP3.cpp:1619 export/ExportOGG.cpp:184
msgid "Unable to open target file for writing"
msgstr "No se puede abrir el archivo de destino para escritura"
-#: export/ExportMP2.cpp:274
+#: export/ExportMP2.cpp:273
#, c-format
msgid "Exporting selected audio at %d kbps"
msgstr "Exportando el audio seleccionado a %d kbps"
-#: export/ExportMP2.cpp:275
+#: export/ExportMP2.cpp:274
#, c-format
msgid "Exporting entire file at %d kbps"
msgstr "Exportando el proyecto completo a %d kbps"
-#: export/ExportMP3.cpp:221 export/ExportMP3.cpp:239 export/ExportMP3.cpp:253
+#: export/ExportMP3.cpp:223 export/ExportMP3.cpp:241 export/ExportMP3.cpp:255
msgid "kbps"
msgstr "kbps"
-#: export/ExportMP3.cpp:240
+#: export/ExportMP3.cpp:242
msgid "(Best Quality)"
msgstr "(mejor calidad)"
-#: export/ExportMP3.cpp:241
+#: export/ExportMP3.cpp:243
msgid "(Smaller files)"
msgstr "(archivos más pequeños)"
-#: export/ExportMP3.cpp:243
+#: export/ExportMP3.cpp:245
msgid "Fast"
msgstr "Rápido"
-#: export/ExportMP3.cpp:244 export/ExportMP3.cpp:250 prefs/GUIPrefs.cpp:41
-#: prefs/GUIPrefs.cpp:49
+#: export/ExportMP3.cpp:246 export/ExportMP3.cpp:252 prefs/GUIPrefs.cpp:50
+#: prefs/TracksPrefs.cpp:46
msgid "Standard"
msgstr "Estándar"
-#: export/ExportMP3.cpp:248
+#: export/ExportMP3.cpp:250
msgid "Insane"
msgstr "Enfermizo"
-#: export/ExportMP3.cpp:249
+#: export/ExportMP3.cpp:251
msgid "Extreme"
msgstr "Extremo"
-#: export/ExportMP3.cpp:251
+#: export/ExportMP3.cpp:253
msgid "Medium"
msgstr "Medio"
-#: export/ExportMP3.cpp:303
+#: export/ExportMP3.cpp:305
msgid "Specify MP3 Options"
-msgstr "Especificar opciones MP3"
+msgstr "Indicar opciones MP3"
#: export/ExportMP3.cpp:319
msgid "MP3 Export Setup"
@@ -6701,8 +7578,7 @@ msgstr "Intermedio"
msgid "Constant"
msgstr "Constante"
-#: export/ExportMP3.cpp:373 prefs/QualityPrefs.cpp:42
-#: prefs/QualityPrefs.cpp:43
+#: export/ExportMP3.cpp:373 prefs/QualityPrefs.cpp:38
msgid "Quality"
msgstr "Calidad"
@@ -6738,76 +7614,90 @@ msgstr "Para obtener una copia gratuita de Lame, haga clic aquà -->"
#: export/ExportMP3.cpp:1070
#, c-format
msgid ""
-"You are linking to lame_enc.dll v%d.%d. This version is not compatible with Audacity %d.%d.%d.\n"
+"You are linking to lame_enc.dll v%d.%d. This version is not compatible with "
+"Audacity %d.%d.%d.\n"
"Please download the latest version of the LAME MP3 library."
msgstr ""
-"Está enlazando con un lame_enc.dll v%d.%d. Esta versión no es compatible con Audacity %d.%d.%d.\n"
+"Está enlazando con un lame_enc.dll v%d.%d. Esta versión no es compatible con "
+"Audacity %d.%d.%d.\n"
"Descargue la última versión disponible de la biblioteca LAME MP3."
-#: export/ExportMP3.cpp:1094
-msgid "Only lame_enc.dll|lame_enc.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
-msgstr "Sólo lame_enc.dll|lame_enc.dll|Bibliotecas enlazadas dinámicamente (*.dll)|*.dll|Todos los archivos (*.*)|*"
+#: export/ExportMP3.cpp:1328
+msgid ""
+"Only lame_enc.dll|lame_enc.dll|Dynamically Linked Libraries (*.dll)|*.dll|"
+"All Files (*.*)|*"
+msgstr ""
+"Sólo lame_enc.dll|lame_enc.dll|Bibliotecas enlazadas dinámicamente (*.dll)|*."
+"dll|Todos los archivos (*.*)|*"
-#: export/ExportMP3.cpp:1550
-msgid "Only libmp3lame.dylib|libmp3lame.dylib|Dynamic Libraries (*.dylib)|*.dylib|All Files (*)|*"
-msgstr "Solo libmp3lame.dylib|libmp3lame.dylib|Bibliotecas dinámicas (*.dylib)|*.dylib|Todos los archivos (*.*)|*"
+#: export/ExportMP3.cpp:1346
+msgid ""
+"Only libmp3lame.dylib|libmp3lame.dylib|Dynamic Libraries (*.dylib)|*.dylib|"
+"All Files (*)|*"
+msgstr ""
+"Solo libmp3lame.dylib|libmp3lame.dylib|Bibliotecas dinámicas (*.dylib)|*."
+"dylib|Todos los archivos (*.*)|*"
-#: export/ExportMP3.cpp:1567
-msgid "Only libmp3lame.so.0|libmp3lame.so.0|Primary Shared Object files (*.so)|*.so|Extended Libraries (*.so*)|*.so*|All Files (*)|*"
-msgstr "Sólo libmp3lame.so|libmp3lame.so|Archivos de objeto compartido primario (*.so)|*.so|Bibliotecas extendidas (*.so*)|*.so*|Todos los archivos (*)|*"
+#: export/ExportMP3.cpp:1364
+msgid ""
+"Only libmp3lame.so.0|libmp3lame.so.0|Primary Shared Object files (*.so)|*.so|"
+"Extended Libraries (*.so*)|*.so*|All Files (*)|*"
+msgstr ""
+"Sólo libmp3lame.so|libmp3lame.so|Archivos de objeto compartido primario (*."
+"so)|*.so|Bibliotecas extendidas (*.so*)|*.so*|Todos los archivos (*)|*"
-#: export/ExportMP3.cpp:1652
+#: export/ExportMP3.cpp:1500
msgid "MP3 Files"
msgstr "Archivos MP3"
-#: export/ExportMP3.cpp:1676
+#: export/ExportMP3.cpp:1524
msgid "Could not open MP3 encoding library!"
msgstr "No se ha podido abrir la biblioteca de codificación de MP3"
-#: export/ExportMP3.cpp:1683
+#: export/ExportMP3.cpp:1531
msgid "Not a valid or supported MP3 encoding library!"
msgstr "No es una biblioteca de codificación MP3 soportada"
-#: export/ExportMP3.cpp:1760
+#: export/ExportMP3.cpp:1608
msgid "Unable to initialize MP3 stream"
msgstr "No se puede inicializar el flujo MP3"
-#: export/ExportMP3.cpp:1802
+#: export/ExportMP3.cpp:1652
#, c-format
msgid "Exporting selected audio with %s preset"
msgstr "Exportando audio seleccionado con preferencias %s"
-#: export/ExportMP3.cpp:1803
+#: export/ExportMP3.cpp:1653
#, c-format
msgid "Exporting entire file with %s preset"
msgstr "Exportando archivo completo con preferencias %s"
-#: export/ExportMP3.cpp:1808
+#: export/ExportMP3.cpp:1658
#, c-format
msgid "Exporting selected audio with VBR quality %s"
msgstr "Exportando audio seleccionado con calidad VBR %s"
-#: export/ExportMP3.cpp:1809
+#: export/ExportMP3.cpp:1659
#, c-format
msgid "Exporting entire file with VBR quality %s"
msgstr "Exportando archivo completo con calidad VBR %s"
-#: export/ExportMP3.cpp:1814
+#: export/ExportMP3.cpp:1664
#, c-format
msgid "Exporting selected audio at %d Kbps"
msgstr "Exportando audio seleccionado a %d kbps"
-#: export/ExportMP3.cpp:1815
+#: export/ExportMP3.cpp:1665
#, c-format
msgid "Exporting entire file at %d Kbps"
msgstr "Exportando audio completo a %d kbps"
-#: export/ExportMP3.cpp:1849
+#: export/ExportMP3.cpp:1699
#, c-format
msgid "Error %d returned from MP3 encoder"
msgstr "Error %d devuelto del codificador de MP3"
-#: export/ExportMP3.cpp:1933
+#: export/ExportMP3.cpp:1790
#, c-format
msgid ""
"The project sample rate (%d) is not supported by the MP3\n"
@@ -6816,7 +7706,7 @@ msgstr ""
"La frecuencia de muestreo del proyecto (%d) no está soportada por el\n"
"formato de archivo MP3. "
-#: export/ExportMP3.cpp:1936
+#: export/ExportMP3.cpp:1793
#, c-format
msgid ""
"The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
@@ -6825,109 +7715,134 @@ msgstr ""
"La frecuencia de muestra del proyecto (%d) combinada con la velocidad\n"
"de transferencia (%d kbps) no está soportada por el formato de archivo MP3. "
-#: export/ExportMP3.cpp:1965
+#: export/ExportMP3.cpp:1970
msgid "MP3 export library not found"
msgstr "Biblioteca de exportación MP3 no encontrada"
-#: export/ExportMultiple.cpp:96 export/ExportMultiple.cpp:426
-#: export/ExportMultiple.cpp:667 export/ExportMultiple.cpp:834
+#: export/ExportMultiple.cpp:93 export/ExportMultiple.cpp:424
msgid "Export Multiple"
msgstr "Exportación múltiple"
-#: export/ExportMultiple.cpp:166
+#: export/ExportMultiple.cpp:163
msgid ""
-"If you have more than one Audio Track, you can export each track as a separate file,\n"
+"If you have more than one Audio Track, you can export each track as a "
+"separate file,\n"
"or if you have a Label Track, you can export a new file for each label.\n"
"\n"
-"This project does not have multiple tracks or a Label Track, so you cannot export multiple files."
+"This project does not have multiple tracks or a Label Track, so you cannot "
+"export multiple files."
msgstr ""
-"Si tiene más de una pista de audio puede exportar cada pista en un archivo independiente,\n"
-"o si tiene una pista de etiqueta puede exportar a un archivo independiente por cada etiqueta.\n"
+"Si tiene más de una pista de audio puede exportar cada pista en un archivo "
+"independiente,\n"
+"o si tiene una pista de etiqueta puede exportar a un archivo independiente "
+"por cada etiqueta.\n"
"\n"
-"Este proyecto no tiene pistas múltiples ni pistas de etiqueta, asà que no puede realizar una exportación múltiple."
+"Este proyecto no tiene pistas múltiples ni pistas de etiqueta, asà que no "
+"puede realizar una exportación múltiple."
-#: export/ExportMultiple.cpp:167
+#: export/ExportMultiple.cpp:164
msgid "Can't export multiple files"
msgstr "No se puede realizar una exportación múltiple"
-#: export/ExportMultiple.cpp:232
+#: export/ExportMultiple.cpp:229
msgid "Export format:"
msgstr "Exportar formato:"
-#: export/ExportMultiple.cpp:237
+#: export/ExportMultiple.cpp:234
msgid "Options..."
msgstr "Opciones..."
-#: export/ExportMultiple.cpp:241
+#: export/ExportMultiple.cpp:238
msgid "Export location:"
msgstr "Exportar ubicación:"
-#: export/ExportMultiple.cpp:245 prefs/DirectoriesPrefs.cpp:92
-msgid "Choose..."
-msgstr "Seleccionar..."
-
-#: export/ExportMultiple.cpp:246
+#: export/ExportMultiple.cpp:243
msgid "Create"
msgstr "Crear"
-#: export/ExportMultiple.cpp:253
+#: export/ExportMultiple.cpp:250
msgid "Split files based on:"
msgstr "Dividir archivos basados en:"
-#: export/ExportMultiple.cpp:262 export/ExportMultiple.cpp:264
+#: export/ExportMultiple.cpp:259 export/ExportMultiple.cpp:261
msgid "Labels"
msgstr "Etiquetas"
-#: export/ExportMultiple.cpp:269
+#: export/ExportMultiple.cpp:266
msgid "Include audio before first label"
msgstr "Incluir audio antes de la primera etiqueta"
-#: export/ExportMultiple.cpp:275
+#: export/ExportMultiple.cpp:272
msgid "First file name:"
msgstr "Primer nombre del archivo:"
-#: export/ExportMultiple.cpp:280
+#: export/ExportMultiple.cpp:277
msgid "First file name"
msgstr "Primer nombre del archivo"
-#: export/ExportMultiple.cpp:288 export/ExportMultiple.cpp:290
-msgid "Tracks"
-msgstr "Pistas"
-
-#: export/ExportMultiple.cpp:297
+#: export/ExportMultiple.cpp:294
msgid "Name files:"
msgstr "Asignar nombre a archivos:"
-#: export/ExportMultiple.cpp:306 export/ExportMultiple.cpp:308
+#: export/ExportMultiple.cpp:303 export/ExportMultiple.cpp:305
msgid "Using Label/Track Name"
msgstr "Uso de nombre de etiqueta o pista"
-#: export/ExportMultiple.cpp:314 export/ExportMultiple.cpp:316
+#: export/ExportMultiple.cpp:311 export/ExportMultiple.cpp:313
msgid "Numbering consecutively"
msgstr "Numerando secuencialmente"
-#: export/ExportMultiple.cpp:322
+#: export/ExportMultiple.cpp:319
msgid "File name prefix:"
msgstr "Prefijo del nombre de archivo:"
-#: export/ExportMultiple.cpp:327
+#: export/ExportMultiple.cpp:324
msgid "File name prefix"
msgstr "Prefijo del nombre de archivo"
-#: export/ExportMultiple.cpp:341
+#: export/ExportMultiple.cpp:338
msgid "Overwrite existing files"
msgstr "Sobreescribir archivos existentes"
-#: export/ExportMultiple.cpp:424
+#: export/ExportMultiple.cpp:422
#, c-format
msgid "\"%s\" successfully created."
msgstr "\"%s\" creada con éxito."
-#: export/ExportMultiple.cpp:433
+#: export/ExportMultiple.cpp:431
msgid "Choose a location to save the exported files"
msgstr "Seleccione una carpeta para guardar los archivos exportados"
-#: export/ExportMultiple.cpp:539
+#: export/ExportMultiple.cpp:524
+#, c-format
+msgid "Successfully exported the following %ld file(s)."
+msgstr "Exportados correctamente los siguientes %ld archivo(s)."
+
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the following %ld file(s)."
+msgstr "Sucedio un error tras exportar los siguientes %ld archivo(s)."
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
+msgstr "Exportación cancelada tras exportar los siguientes %ld archivos(s)."
+
+#: export/ExportMultiple.cpp:527
+#, c-format
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr "Exportación detenida tras exportar los siguientes %ld archivos(s)."
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr "Sucedio un error grave tras exportar los siguientes %ld archivo(s)."
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr "ExportarMultiple"
+
+#: export/ExportMultiple.cpp:570
#, c-format
msgid ""
"\"%s\" doesn't exist.\n"
@@ -6938,106 +7853,97 @@ msgstr ""
"\n"
"¿Desea crearlo?"
-#: export/ExportMultiple.cpp:637 export/ExportMultiple.cpp:772
+#: export/ExportMultiple.cpp:667 export/ExportMultiple.cpp:804
msgid "Edit metadata"
msgstr "Editar metadato"
-#: export/ExportMultiple.cpp:664 export/ExportMultiple.cpp:831
-#, c-format
-msgid "Successfully exported %d file(s)."
-msgstr "Se han exportado correctamente %d archivo(s)."
-
-#: export/ExportMultiple.cpp:665 export/ExportMultiple.cpp:832
-#, c-format
-msgid "Something went wrong after exporting %d file(s)."
-msgstr "Se ha producido un error tras exportar %d archivos."
-
-#: export/ExportMultiple.cpp:881
+#: export/ExportMultiple.cpp:923
#, c-format
msgid ""
"Label %s is not a legal file name. You cannot use any of: %s\n"
"Use..."
msgstr ""
-"La etiqueta %s no es un nombre de archivo permitido. No puede utilizar: %s\n"
+"La etiqueta %s no es un nombre de archivo permitido. No puede utilizar: %"
+"s\n"
"Utilice..."
#: export/ExportOGG.cpp:64
msgid "Specify Ogg Vorbis Options"
-msgstr "Especificar opciones Ogg Vorbis"
+msgstr "Indicar opciones Ogg Vorbis"
-#: export/ExportOGG.cpp:81
+#: export/ExportOGG.cpp:79
msgid "Ogg Vorbis Export Setup"
msgstr "Opciones de exportación Ogg Vorbis"
-#: export/ExportOGG.cpp:157
+#: export/ExportOGG.cpp:155
msgid "Ogg Vorbis Files"
msgstr "Archivos Ogg Vorbis"
-#: export/ExportOGG.cpp:257
+#: export/ExportOGG.cpp:256
msgid "Exporting the selected audio as Ogg Vorbis"
msgstr "Exportando el audio seleccionado como Ogg Vorbis"
-#: export/ExportOGG.cpp:258
+#: export/ExportOGG.cpp:257
msgid "Exporting the entire project as Ogg Vorbis"
msgstr "Exportando el proyecto completo como Ogg Vorbis"
-#: export/ExportPCM.cpp:113
+#: export/ExportPCM.cpp:119
msgid "Specify Uncompressed Options"
-msgstr "Especificar opciones de datos sin comprimir"
+msgstr "Indicar opciones de datos sin comprimir"
-#: export/ExportPCM.cpp:182
+#: export/ExportPCM.cpp:189
msgid "Uncompressed Export Setup"
msgstr "Opciones de exportación de datos sin comprimir"
-#: export/ExportPCM.cpp:188
+#: export/ExportPCM.cpp:195
msgid "Header:"
msgstr "Tipo:"
-#: export/ExportPCM.cpp:192 import/ImportRaw.cpp:366
+#: export/ExportPCM.cpp:199 import/ImportRaw.cpp:376
msgid "Encoding:"
msgstr "Codificación:"
-#: export/ExportPCM.cpp:197
+#: export/ExportPCM.cpp:204
msgid "(Not all combinations of headers and encodings are possible.)"
msgstr "(No todas las combinaciones de tipo de cabecera y codificación son posibles)"
-#: export/ExportPCM.cpp:366
+#: export/ExportPCM.cpp:359
msgid "Other uncompressed files"
msgstr "Otros archivos sin comprimir"
-#: export/ExportPCM.cpp:358
+#: export/ExportPCM.cpp:377
msgid "AIFF (Apple) signed 16 bit PCM"
msgstr "AIFF (Apple) PCM de 16 bit con signo"
-#: export/ExportPCM.cpp:348
+#: export/ExportPCM.cpp:388
msgid "WAV (Microsoft) signed 16 bit PCM"
msgstr "WAV (Microsoft) PCM de 16 bit con signo"
-#: export/ExportPCM.cpp:384
+#: export/ExportPCM.cpp:399
msgid "GSM 6.10 WAV (mobile)"
msgstr "GSM 6.10 WAV (dispositivos móviles)"
-#: export/ExportPCM.cpp:446
+#: export/ExportPCM.cpp:476
msgid "Cannot export audio in this format."
msgstr "No se puede exportar audio en este formato."
-#: export/ExportPCM.cpp:488
+#: export/ExportPCM.cpp:526
#, c-format
msgid "Exporting the selected audio as %s"
msgstr "Exportando el audio seleccionado como %s"
-#: export/ExportPCM.cpp:490
+#: export/ExportPCM.cpp:528
#, c-format
msgid "Exporting the entire project as %s"
msgstr "Exportando el proyecto completo como %s"
#. i18n-hint: %s will be the error message from libsndfile
-#: export/ExportPCM.cpp:528
+#: export/ExportPCM.cpp:564
#, c-format
msgid "Error (file may not have been written): %s"
msgstr "Error (el archivo puede no haber sido escrito): %s"
-#: export/ExportPCM.cpp:723
+#: export/ExportPCM.cpp:735
msgid "There are no options for this format.\n"
msgstr "No hay opciones para este formato.\n"
@@ -7045,36 +7951,40 @@ msgstr "No hay opciones para este formato.\n"
#. * the list. So you should translate the quoted string
#. * 'Other uncompressed files' exactly the same as you do the same string
#. * when it comes up on it's own.
-#: export/ExportPCM.cpp:728
-msgid "If you need more control over the export format please use the 'Other uncompressed files' format."
-msgstr "Si necesita más control sobre el formato de exportación utilice el formato 'Otros archivos sin comprimir'."
+#: export/ExportPCM.cpp:740
+msgid ""
+"If you need more control over the export format please use the 'Other "
+"uncompressed files' format."
+msgstr ""
+"Si necesita más control sobre el formato de exportación utilice el formato "
+"'Otros archivos sin comprimir'."
-#: export/ExportPCM.cpp:733
+#: export/ExportPCM.cpp:745
msgid "Your file will be exported as a 16-bit AIFF (Apple/SGI) file.\n"
msgstr "El archivo se exportará como un archivo AIFF de 16 bits (Apple/SGI).\n"
-#: export/ExportPCM.cpp:738
+#: export/ExportPCM.cpp:750
msgid "Your file will be exported as a 16-bit WAV (Microsoft) file.\n"
msgstr "El archivo se exportará como un archivo WAV de 16 bits (Microsoft).\n"
-#: export/ExportPCM.cpp:743
+#: export/ExportPCM.cpp:755
msgid "Your file will be exported as a GSM 6.10 WAV file.\n"
msgstr "El archivo se exportará como un archivo WAV GSM 6.10.\n"
-#: import/Import.cpp:156 import/ImportMP3.cpp:47
+#: import/Import.cpp:162 import/ImportMP3.cpp:47
msgid "MP3 files"
msgstr "Archivos MP3"
-#: import/Import.cpp:175
+#: import/Import.cpp:181
msgid "Select stream(s) to import"
msgstr "Seleccione flujo(s) a importar"
-#: import/Import.cpp:227
+#: import/Import.cpp:234
#, c-format
msgid "This version of Audacity was not compiled with %s support."
msgstr "Esta versión de Audacity no fue compilada con soporte para %s."
-#: import/Import.cpp:240
+#: import/Import.cpp:247
#, c-format
msgid ""
"\"%s\" \n"
@@ -7088,7 +7998,7 @@ msgstr ""
"editarlo pulsando en Archivo > Importar > MIDI."
#. i18n-hint: %s will be the filename
-#: import/Import.cpp:250
+#: import/Import.cpp:257
#, c-format
msgid ""
"\"%s\" is an audio CD track. \n"
@@ -7101,18 +8011,21 @@ msgstr ""
"Extraiga las pistas del CD a un formato de audio que \n"
"pueda ser importado con Audacity, como WAV o AIFF."
-#: import/Import.cpp:256
+#: import/Import.cpp:263
#, c-format
msgid ""
"\"%s\" is a playlist file. \n"
-"Audacity cannot open this file because it only contains links to other files. \n"
-"You may be able to open it in a text editor and download the actual audio files."
+"Audacity cannot open this file because it only contains links to other "
+"files. \n"
+"You may be able to open it in a text editor and download the actual audio "
+"files."
msgstr ""
"\"%s\" es una archivo de lista de reproducción. \n"
-"Audacity no puede abrir este archivo porque sólo contiene enlaces a otros archivos. \n"
+"Audacity no puede abrir este archivo porque sólo contiene enlaces a otros "
+"archivos. \n"
"PodrÃa abrirlo con un editor de texto y descargar el archivo de audio real."
-#: import/Import.cpp:261
+#: import/Import.cpp:268
#, c-format
msgid ""
"\"%s\" is a Windows Media Audio file. \n"
@@ -7120,10 +8033,11 @@ msgid ""
"You need to convert it to a supported audio format, such as WAV or AIFF."
msgstr ""
"\"%s\" es un archivo de Windows Media Audio. \n"
-"Audacity no puede abrir este tipo de archivo por restricciones en su patente. \n"
+"Audacity no puede abrir este tipo de archivo por restricciones en su "
+"patente. \n"
"Necesita convertirlo a un formato de audio soportado, como WAV o AIFF."
-#: import/Import.cpp:266
+#: import/Import.cpp:273
#, c-format
msgid ""
"\"%s\" is an Advanced Audio Coding file. \n"
@@ -7134,7 +8048,7 @@ msgstr ""
"Audacity no puede abrir este tipo de archivo. \n"
"Necesita convertirlo a un formato de audio soportado, como WAV o AIFF."
-#: import/Import.cpp:271
+#: import/Import.cpp:278
#, c-format
msgid ""
"\"%s\" is an encrypted audio file. \n"
@@ -7147,9 +8061,10 @@ msgstr ""
"Estos suelen provenir de una tienda de música online. \n"
"Audacity no puede abrir este tipo de archivo porque están encriptados. \n"
"Intente grabar el archivo en Audacity, o grabarlo en un CD de audio para\n"
-"posteriormente extraer la pista de CD a un formato de audio soportado como WAV o AIFF."
+"posteriormente extraer la pista de CD a un formato de audio soportado como "
+"WAV o AIFF."
-#: import/Import.cpp:276
+#: import/Import.cpp:283
#, c-format
msgid ""
"\"%s\" is a RealPlayer media file. \n"
@@ -7160,7 +8075,7 @@ msgstr ""
"Audacity no puede abrir este formato propietario. \n"
"Necesita convertirlo a un formato de audio soportado, como WAV o AIFF."
-#: import/Import.cpp:282
+#: import/Import.cpp:289
#, c-format
msgid ""
"\"%s\" is a notes-based file, not an audio file. \n"
@@ -7173,22 +8088,24 @@ msgstr ""
"Internet convertirlo en un archivo de audio como WAV o AIFF y \n"
"entonces impórtelo o grábelo en Audacity."
-#: import/Import.cpp:288
+#: import/Import.cpp:295
#, c-format
msgid ""
"\"%s\" is a Musepack audio file. \n"
"Audacity cannot open this type of file. \n"
"If you think it might be an mp3 file, rename it to end with \".mp3\" \n"
-"and try importing it again. Otherwise you need to convert it to a supported audio \n"
+"and try importing it again. Otherwise you need to convert it to a supported "
+"audio \n"
"format, such as WAV or AIFF."
msgstr ""
"\"%s\" es un archivo de audio Musepack. \n"
"Audacity no puede abrir este tipo de archivo. \n"
-"Si piensa que podrÃa ser un archivo MP3, renómbrelo para que finalice con \".mp3\" \n"
+"Si piensa que podrÃa ser un archivo MP3, renómbrelo para que finalice con \"."
+"mp3\" \n"
" e intente importarlo de nuevo. De otro modo necesitará convertirlo \n"
"a un formato de audio soportado, como WAV o AIFF."
-#: import/Import.cpp:294
+#: import/Import.cpp:301
#, c-format
msgid ""
"\"%s\" is a Wavpack audio file. \n"
@@ -7199,7 +8116,7 @@ msgstr ""
"Audacity no puede abrir este tipo de archivo. \n"
"Necesita convertirlo a un formato de audio soportado, como WAV o AIFF."
-#: import/Import.cpp:300
+#: import/Import.cpp:307
#, c-format
msgid ""
"\"%s\" is a Dolby Digital audio file. \n"
@@ -7210,7 +8127,7 @@ msgstr ""
"Audacity no puede abrir este tipo de archivo. \n"
"Necesita convertirlo a un formato de audio soportado, como WAV o AIFF."
-#: import/Import.cpp:306
+#: import/Import.cpp:313
#, c-format
msgid ""
"\"%s\" is an Ogg Speex audio file. \n"
@@ -7221,7 +8138,7 @@ msgstr ""
"Audacity no puede abrir este tipo de archivo. \n"
"Necesita convertirlo a un formato de audio soportado, como WAV o AIFF."
-#: import/Import.cpp:312
+#: import/Import.cpp:319
#, c-format
msgid ""
"\"%s\" is a video file. \n"
@@ -7232,16 +8149,17 @@ msgstr ""
"Audacity no puede abrir este tipo de archivo. \n"
"Necesita extraer su audio a un formato soportado, como WAV o AIFF."
-#: import/Import.cpp:317
+#: import/Import.cpp:324
#, c-format
msgid ""
"Audacity did not recognize the type of the file '%s'.\n"
"If it is uncompressed, try importing it using \"Import Raw\"."
msgstr ""
"Audacity no reconoce este tipo de archivo '%s'.\n"
-"Si es audio sin compresión, intente importarlo usando \"Importar datos en bruto\"."
+"Si es audio sin compresión, intente importarlo usando \"Importar datos en "
+"bruto\"."
-#: import/Import.cpp:322
+#: import/Import.cpp:329
#, c-format
msgid ""
"Audacity recognized the type of the file '%s',\n"
@@ -7254,15 +8172,21 @@ msgstr ""
msgid "FFmpeg-compatible files"
msgstr "Archivos compatibles con FFmpeg"
-#: import/ImportFFmpeg.cpp:431
+#: import/ImportFFmpeg.cpp:438
#, c-format
msgid "Index[%02x] Codec[%S], Language[%S], Bitrate[%S], Channels[%d], Duration[%d]"
-msgstr "Ãndice[%02x] Codec[%S], Idioma[%S], Velocidad de transferencia[%S], Canales[%d], Duración[%d]"
+msgstr ""
+"Ãndice[%02x] Codec[%S], Idioma[%S], Velocidad de transferencia[%S], Canales[%"
+"d], Duración[%d]"
-#: import/ImportFLAC.cpp:43
+#: import/ImportFLAC.cpp:45
msgid "FLAC files"
msgstr "Archivos FLAC"
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr "Archivos compatibles con GStreamer"
+
#: import/ImportLOF.cpp:95
msgid "List of Files in basic text format"
msgstr "Lista de archivos en formato de texto básico"
@@ -7285,7 +8209,9 @@ msgstr "Duración no válida en archivo LOF."
#: import/ImportLOF.cpp:417
msgid "MIDI tracks cannot be offset individually, only audio files can be."
-msgstr "Las pistas MIDI no pueden ser trasladadas individualmente, sólo se puede hacer con los archivos de audio."
+msgstr ""
+"Las pistas MIDI no pueden ser trasladadas individualmente, sólo se puede "
+"hacer con los archivos de audio."
#. i18n-hint: You do not need to translate "LOF"
#: import/ImportLOF.cpp:438
@@ -7329,81 +8255,81 @@ msgstr "Tipo inválido para un flujo de bits Vorbis"
msgid "Internal logic fault"
msgstr "Fallo de lógica interna"
-#: import/ImportPCM.cpp:54
+#: import/ImportPCM.cpp:66
msgid "WAV, AIFF, and other uncompressed types"
msgstr "WAV, AIFF y otros tipos de datos sin comprimir"
-#: import/ImportPlugin.h:142 import/ImportRaw.cpp:203
+#: import/ImportPlugin.h:135 import/ImportRaw.cpp:210
#, c-format
msgid "Importing %s"
msgstr "Importando %s"
-#: import/ImportQT.cpp:21
+#: import/ImportQT.cpp:18
msgid "QuickTime files"
msgstr "Archivos QuickTime"
-#: import/ImportRaw.cpp:205
+#: import/ImportRaw.cpp:212
msgid "Import Raw"
msgstr "Importar datos en bruto"
-#: import/ImportRaw.cpp:282
+#: import/ImportRaw.cpp:292
msgid "Import Raw Data"
msgstr "Importar archivo en bruto"
#. i18n-hint: Refers to byte-order. Don't translate "endianness" if you don't
#. know the correct technical word.
-#: import/ImportRaw.cpp:327
+#: import/ImportRaw.cpp:337
msgid "No endianness"
msgstr "Sin endianness"
#. i18n-hint: Refers to byte-order. Don't translate this if you don't
#. know the correct technical word.
-#: import/ImportRaw.cpp:330
+#: import/ImportRaw.cpp:340
msgid "Little-endian"
msgstr "Little-endian"
#. i18n-hint: Refers to byte-order. Don't translate this if you don't
#. know the correct technical word.
-#: import/ImportRaw.cpp:333
+#: import/ImportRaw.cpp:343
msgid "Big-endian"
msgstr "Big-endian"
#. i18n-hint: Refers to byte-order. Don't translate "endianness" if you don't
#. know the correct technical word.
-#: import/ImportRaw.cpp:336
+#: import/ImportRaw.cpp:346
msgid "Default endianness"
msgstr "Endianness predeterminado"
-#: import/ImportRaw.cpp:355
+#: import/ImportRaw.cpp:365
msgid "1 Channel (Mono)"
msgstr "1 Canal (Mono)"
-#: import/ImportRaw.cpp:356
+#: import/ImportRaw.cpp:366
msgid "2 Channels (Stereo)"
msgstr "2 Canales (estéreo)"
-#: import/ImportRaw.cpp:358
+#: import/ImportRaw.cpp:368
#, c-format
msgid "%d Channels"
msgstr "%d canales"
-#: import/ImportRaw.cpp:369
+#: import/ImportRaw.cpp:379
msgid "Byte order:"
msgstr "Orden de byte:"
-#: import/ImportRaw.cpp:372
+#: import/ImportRaw.cpp:382
msgid "Channels:"
msgstr "Canales:"
-#: import/ImportRaw.cpp:382
+#: import/ImportRaw.cpp:392
msgid "Start offset:"
msgstr "Desplazamiento inicial:"
-#: import/ImportRaw.cpp:388
+#: import/ImportRaw.cpp:398
msgid "Amount to import:"
msgstr "Cantidad a importar:"
-#: import/ImportRaw.cpp:394
+#: import/ImportRaw.cpp:404
msgid "Sample rate:"
msgstr "Frecuencia de muestreo:"
@@ -7420,465 +8346,356 @@ msgstr "Decodificando la forma de onda"
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr "%s %2.0f%% completado. Haga clic para cambiar el foco de la tarea."
-#: prefs/AudioIOPrefs.cpp:41 prefs/AudioIOPrefs.cpp:42
-#: prefs/MidiIOPrefs.cpp:44 prefs/MidiIOPrefs.cpp:45
-msgid "Audio I/O"
-msgstr "Audio E/S"
+#: prefs/BatchPrefs.cpp:53
+msgid "Batch"
+msgstr "Secuencia"
-#: prefs/AudioIOPrefs.cpp:102 prefs/MidiIOPrefs.cpp:99
-msgid "1 (Mono)"
-msgstr "1 (Mono)"
+#: prefs/BatchPrefs.cpp:75 prefs/GUIPrefs.cpp:134 prefs/TracksPrefs.cpp:99
+msgid "Behaviors"
+msgstr "Comportamientos"
-#: prefs/AudioIOPrefs.cpp:103 prefs/MidiIOPrefs.cpp:100
-msgid "2 (Stereo)"
-msgstr "2 (Estéreo)"
+#: prefs/BatchPrefs.cpp:78
+msgid "&Don't apply effects in batch mode"
+msgstr "No ap&licar efectos en modo de secuencia"
-#: prefs/AudioIOPrefs.cpp:117 prefs/MidiIOPrefs.cpp:114
-msgid "Playback"
-msgstr "Reproducción"
+#: prefs/BatchPrefs.cpp:81 prefs/GUIPrefs.cpp:147
+msgid "Cl&eanSpeech Mode (Customized GUI)"
+msgstr "Modo de limpi&eza de locución (interfaz personalizado)"
-#: prefs/AudioIOPrefs.cpp:121 prefs/AudioIOPrefs.cpp:139
-#: prefs/MidiIOPrefs.cpp:118 prefs/MidiIOPrefs.cpp:136
-#: toolbars/DeviceToolBar.cpp:57
-msgid "Device"
-msgstr "Dispositivo"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
+msgstr "Dispositivos"
-#: prefs/AudioIOPrefs.cpp:124 prefs/MidiIOPrefs.cpp:121
+#: prefs/DevicePrefs.cpp:107 prefs/GUIPrefs.cpp:32 prefs/MidiIOPrefs.cpp:113
+msgid "Interface"
+msgstr "Espacio de trabajo"
+
+#: prefs/DevicePrefs.cpp:112 prefs/MidiIOPrefs.cpp:118
+msgid "Host"
+msgstr "Servidor"
+
+#: prefs/DevicePrefs.cpp:119 prefs/MidiIOPrefs.cpp:125
msgid "Using:"
msgstr "Usando:"
-#: prefs/AudioIOPrefs.cpp:125 prefs/MidiIOPrefs.cpp:122
-msgid "Portaudio v"
-msgstr "Portaudio v"
+#: prefs/DevicePrefs.cpp:126 prefs/MidiIOPrefs.cpp:132
+#: prefs/PlaybackPrefs.cpp:31
+msgid "Playback"
+msgstr "Reproducción"
-#: prefs/AudioIOPrefs.cpp:135 prefs/MidiIOPrefs.cpp:132
+#: prefs/DevicePrefs.cpp:139 prefs/MidiIOPrefs.cpp:145
+#: prefs/RecordingPrefs.cpp:34
msgid "Recording"
msgstr "Grabación"
-#: prefs/AudioIOPrefs.cpp:141 prefs/MidiIOPrefs.cpp:138
+#: prefs/DevicePrefs.cpp:149
msgid "Channels"
msgstr "Canales"
-#: prefs/AudioIOPrefs.cpp:147 prefs/MidiIOPrefs.cpp:144
-msgid "Playthrough"
-msgstr "Reproducir a través"
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr "Remezclar: &Reproducir otras pistas mientras se graba una nueva"
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr "Reproducción a través del &hardware: Reproducir la pista mientras se está grabando"
-
-#: prefs/AudioIOPrefs.cpp:154
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr "Reproducción a través del &software: Reproducir la pista mientras se está grabando"
-
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr "Reproducción a través del &software: Reproducir la pista mientras se está grabando o visualizando"
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr "(desactivar cuando se graba \"mezcla estéreo\")"
-
-#: prefs/AudioIOPrefs.cpp:168 prefs/MidiIOPrefs.cpp:193
-msgid "Effects Preview"
-msgstr "Vista previa de efectos"
-
-#: prefs/AudioIOPrefs.cpp:171
-msgid "Length of preview:"
-msgstr "Longitud de la vista previa:"
-
-#: prefs/AudioIOPrefs.cpp:176 prefs/MidiIOPrefs.cpp:157
-msgid "Cut Preview"
-msgstr "Vista previa del corte"
+#: prefs/DevicePrefs.cpp:165
+msgid "No audio interfaces"
+msgstr "Sin interface de audio"
-#: prefs/AudioIOPrefs.cpp:179
-msgid "Preview before cut region:"
-msgstr "Vista previa antes cortar zona:"
-
-#: prefs/AudioIOPrefs.cpp:181
-msgid "Preview after cut region:"
-msgstr "Vista previa después cortar zona:"
-
-#: prefs/AudioIOPrefs.cpp:189 prefs/MidiIOPrefs.cpp:167
-msgid "Latency"
-msgstr "Latencia"
+#: prefs/DevicePrefs.cpp:201 prefs/DevicePrefs.cpp:206
+#: prefs/MidiIOPrefs.cpp:295 prefs/MidiIOPrefs.cpp:300
+msgid "No devices found"
+msgstr "No se han encontrado dispositivos"
-#: prefs/AudioIOPrefs.cpp:195
-msgid ""
-"Audio to buffer:\n"
-"(higher = more latency)"
-msgstr ""
-"Audio a buffer:\n"
-"(mayores = más latencia)"
-
-#: prefs/AudioIOPrefs.cpp:198
-msgid ""
-"Latency correction:\n"
-"(negative = backwards)"
-msgstr ""
-"Corrección de latencia:\n"
-"(negativos=hacia atrás)"
-
-#: prefs/AudioIOPrefs.cpp:203
-msgid "Seek Time when playing"
-msgstr "Buscar tiempo mientras se reproduce"
-
-#: prefs/AudioIOPrefs.cpp:206 prefs/MidiIOPrefs.cpp:186
-msgid "Short period:"
-msgstr "Periodo corto:"
-
-#: prefs/AudioIOPrefs.cpp:208 prefs/MidiIOPrefs.cpp:188
-msgid "Long period:"
-msgstr "Periodo largo:"
-
-#: prefs/BatchPrefs.cpp:55 prefs/BatchPrefs.cpp:56
-msgid "Batch"
-msgstr "Secuencia"
-
-#: prefs/BatchPrefs.cpp:77 prefs/GUIPrefs.cpp:92
-msgid "Behaviors"
-msgstr "Comportamientos"
-
-#: prefs/BatchPrefs.cpp:80
-msgid "&Don't apply effects in batch mode"
-msgstr "No ap&licar efectos en modo de secuencia"
+#: prefs/DevicePrefs.cpp:264
+msgid "1 (Mono)"
+msgstr "1 (Mono)"
-#: prefs/BatchPrefs.cpp:83 prefs/GUIPrefs.cpp:132
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr "Modo de limpi&eza de locución (interfaz personalizado)"
+#: prefs/DevicePrefs.cpp:267
+msgid "2 (Stereo)"
+msgstr "2 (Estéreo)"
-#: prefs/DirectoriesPrefs.cpp:55 prefs/DirectoriesPrefs.cpp:56
-#: prefs/PrefsDialog.cpp:267
+#: prefs/DirectoriesPrefs.cpp:52 prefs/PrefsDialog.cpp:210
msgid "Directories"
msgstr "Carpetas"
-#: prefs/DirectoriesPrefs.cpp:87
+#: prefs/DirectoriesPrefs.cpp:82
msgid "Temporary files directory"
msgstr "Carpeta de archivos temporales"
-#: prefs/DirectoriesPrefs.cpp:91
+#: prefs/DirectoriesPrefs.cpp:89
msgid "Location:"
msgstr "Ubicación:"
-#: prefs/DirectoriesPrefs.cpp:93
+#: prefs/DirectoriesPrefs.cpp:96
msgid "Free Space:"
msgstr "Espacio libre:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr "Guardado automático"
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr "Guardar automáticamente una copia del proyecto en una carpeta aparte"
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
-msgstr "Intervalo de guardado automático:"
+#: prefs/DirectoriesPrefs.cpp:103
+msgid "Audio cache"
+msgstr "Caché de audio"
#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
-msgstr "minutos"
+msgid "Play and/or record using RAM (useful for slow drives)"
+msgstr "Reproducir y/o grabar utilizando RAM (útil en discos lentos)"
-#: prefs/DirectoriesPrefs.cpp:110
-msgid "Audio cache"
-msgstr "Caché de audio"
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
+msgstr "Cantidad mÃnima de memoria libre (Mb):"
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
-msgstr "Reproducir y/o grabar utilizando la RAM (útil para discos lentos, pero puede no funcionar con archivos o grabaciones demasiado largas)"
+#: prefs/DirectoriesPrefs.cpp:118
+msgid ""
+"If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
+msgstr ""
+"Si la memoria disponible desciende por debajo de este valor, el audio\n"
+"dejará de ser almacenado en memoria y se escribirá en el disco."
-#: prefs/DirectoriesPrefs.cpp:121
+#: prefs/DirectoriesPrefs.cpp:126
msgid "Choose a location to place the temporary directory"
msgstr "Seleccione la ubicación de la carpeta temporal"
-#: prefs/DirectoriesPrefs.cpp:166
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr "no disponible - la ubicación indicada no existe"
+
+#: prefs/DirectoriesPrefs.cpp:173
#, c-format
msgid "Directory %s does not exist. Create it?"
msgstr "La carpeta %s no existe. ¿Desea crearla?"
-#: prefs/DirectoriesPrefs.cpp:168
+#: prefs/DirectoriesPrefs.cpp:175
msgid "New Temporary Directory"
msgstr "Nueva carpeta temporal"
-#: prefs/DirectoriesPrefs.cpp:187
+#: prefs/DirectoriesPrefs.cpp:193
#, c-format
msgid "Directory %s is not writable"
msgstr "La carpeta %s no tiene permiso de escritura"
-#: prefs/DirectoriesPrefs.cpp:199
-msgid "Changes to temporary directory will not take effect until Audacity is restarted"
-msgstr "Los cambios de la carpeta temporal no tendrán efecto hasta que se reinicie Audacity"
-
-#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
-msgid "Import / Export"
-msgstr "Importar / Exportar"
-
-#: prefs/FileFormatPrefs.cpp:84
-msgid "MP3 Export Library"
-msgstr "Biblioteca de exportación de MP3"
-
-#: prefs/FileFormatPrefs.cpp:87
-msgid "MP3 Library Version:"
-msgstr "Versión de la biblioteca MP3:"
-
-#: prefs/FileFormatPrefs.cpp:93
-msgid "MP3 Library:"
-msgstr "Biblioteca MP3:"
-
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
-msgstr "&Ubicar..."
-
-#: prefs/FileFormatPrefs.cpp:98
-msgid "LAME MP3 Library:"
-msgstr "Biblioteca LAME MP3:"
-
-#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
-msgid "&Download"
-msgstr "&Descargar"
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
-msgstr "Biblioteca de importación/exportación FFmpeg"
-
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
-msgstr "Versión de la biblioteca FFmpeg"
-
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
-msgstr "Biblioteca FFmpeg:"
-
-#: prefs/FileFormatPrefs.cpp:136
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr "Nota: Las opciones de calidad de exportación pueden ser elegidas pulsando en el botón Opciones, en el cuadro de diálogo Exportar.\n"
-
-#: prefs/FileFormatPrefs.cpp:137
-msgid "When importing audio files"
-msgstr "Cuando se importa archivos de audio"
-
-#: prefs/FileFormatPrefs.cpp:140
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
-msgstr "&Hacer una copia del archivo de audio descomprimido antes de editar (más seguro)"
-
-#: prefs/FileFormatPrefs.cpp:141
-msgid "&Read uncompressed audio files directly from the original (faster)"
-msgstr "Lee&r directamente desde el archivo de audio descomprimido original (más rápido)"
+#: prefs/DirectoriesPrefs.cpp:207
+msgid ""
+"Changes to temporary directory will not take effect until Audacity is "
+"restarted"
+msgstr ""
+"Los cambios de la carpeta temporal no tendrán efecto hasta que se reinicie "
+"Audacity"
-#: prefs/FileFormatPrefs.cpp:143
-msgid "&Normalize all tracks in project"
-msgstr "&Normalizar todas las pistas del proyecto"
+#: prefs/GUIPrefs.cpp:51
+msgid "In Browser"
+msgstr "En Explorador"
-#: prefs/FileFormatPrefs.cpp:148
-msgid "When saving a project that depends on other audio files"
-msgstr "Cuando se guarda un proyecto que depende de otros archivos de audio"
+#: prefs/GUIPrefs.cpp:52
+msgid "From Internet"
+msgstr "Desde Internet"
-#: prefs/FileFormatPrefs.cpp:151
-msgid "Always © all audio into project (safest)"
-msgstr "&Copiar siempre todo el audio dentro del proyecto (el más seguro)"
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
+msgstr "36"
-#: prefs/FileFormatPrefs.cpp:152
-msgid "&Do not copy any audio"
-msgstr "&No copiar ninguna parte del audio"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
+msgstr "48"
-#: prefs/FileFormatPrefs.cpp:153
-msgid "&Ask user"
-msgstr "&Preguntar al usuario"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
+msgstr "60"
-#: prefs/FileFormatPrefs.cpp:157
-msgid "When exporting tracks to an audio file"
-msgstr "Cuando se exportan pistas a un archivo de audio"
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
+msgstr "96"
-#: prefs/FileFormatPrefs.cpp:160
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
-msgstr "Mezcl&ar siempre todas las pistas de canales estéreo o mono"
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
+msgstr "120"
-#: prefs/FileFormatPrefs.cpp:161
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
-msgstr "&Utilice mezcla personalizada (por ejemplo para exportar un archivo multicanal 5.1)"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
+msgstr "145"
-#: prefs/FileFormatPrefs.cpp:163
-msgid "S&how Metadata Editor prior to export step"
-msgstr "&Mostrar el editor de metadatos antes de realizar la exportación"
+#: prefs/GUIPrefs.cpp:61
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 dB (rango aproximado para edición de alta amplitud)"
-#: prefs/GUIPrefs.cpp:34 prefs/GUIPrefs.cpp:35
-msgid "Interface"
-msgstr "Espacio de trabajo"
+#: prefs/GUIPrefs.cpp:62
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 dB (rango PCM de muestras de 8 bit)"
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
-msgstr "En Explorador"
+#: prefs/GUIPrefs.cpp:63
+msgid "-60 dB (PCM range of 10 bit samples)"
+msgstr "-60 dB (rango PCM de muestras de 10 bits)"
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
-msgstr "Desde Internet"
+#: prefs/GUIPrefs.cpp:64
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 dB (rango PCM de muestras de 16 bits)"
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
-msgstr "Simple"
+#: prefs/GUIPrefs.cpp:65
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 dB (lÃmite aproximado del oÃdo humano)"
-#: prefs/GUIPrefs.cpp:94
-msgid "&Update display while playing"
-msgstr "Act&ualizar pantalla mientras se reproduce"
+#: prefs/GUIPrefs.cpp:66
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB (rango PCM de muestras de 24 bit)"
-#: prefs/GUIPrefs.cpp:96
-msgid "Cl&osing last window quits Audacity"
-msgstr "C&errar la última ventana finaliza completamente Audacity"
+#: prefs/GUIPrefs.cpp:96 prefs/SpectrumPrefs.cpp:129 prefs/TracksPrefs.cpp:75
+msgid "Display"
+msgstr "Mostrar"
#: prefs/GUIPrefs.cpp:98
-msgid "Enable &dragging of left and right selection edges"
-msgstr "Permitir arrastre de los bor&des izquierdo y derecho de la selección"
-
-#: prefs/GUIPrefs.cpp:100
msgid "Er&gonomic order of audio I/O buttons"
msgstr "Orden &ergonómico de los botones de E/S de audio"
-#: prefs/GUIPrefs.cpp:102
-msgid "Automatically &fit tracks vertically zoomed"
-msgstr "A&justar automáticamente las pistas acercadas verticalmente"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
+msgstr "&Mostrar el mensaje de bienvenida al comenzar el programa"
-#: prefs/GUIPrefs.cpp:104
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
-msgstr "\"Mover la pista seleccionada\" se repite &cÃclicamente a través de las pistas"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
+msgstr "Rango de medición/forma de onda:"
-#: prefs/GUIPrefs.cpp:106
-msgid "Editing a &clip can move other clips"
-msgstr "La edición de un &bloque puede desplazar otros bloques"
+#: prefs/GUIPrefs.cpp:123
+msgid "Help:"
+msgstr "Ayuda:"
-#: prefs/GUIPrefs.cpp:108
-msgid "&Select all audio in project, if none selected"
-msgstr "&Seleccionar todo el audio del proyecto si no hay nada seleccionado"
+#: prefs/GUIPrefs.cpp:136
+msgid "Cl&osing last window quits Audacity"
+msgstr "C&errar la última ventana finaliza completamente Audacity"
-#: prefs/GUIPrefs.cpp:110
+#: prefs/GUIPrefs.cpp:139
msgid "&Beep on completion of longer activities"
msgstr "&Avisar con un sonido al completar procesos largos"
-#: prefs/GUIPrefs.cpp:114
-msgid "Show / Hide"
-msgstr "Mostrar u ocultar"
-
-#: prefs/GUIPrefs.cpp:116
-msgid "Enable cut &lines"
-msgstr "Permitir el corte de &lÃneas"
-
-#: prefs/GUIPrefs.cpp:118
-msgid "Show warnings about &temp files"
-msgstr "Mostrar advertencias sobre archivos &temporales"
-
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
-msgstr "&Pedir confirmación al guardar, incluso si el proyecto está vacÃo"
-
-#: prefs/GUIPrefs.cpp:122
-msgid "Show &Welcome Message at program start up"
-msgstr "Mostrar el me&nsaje de bienvenida al comenzar"
-
-#: prefs/GUIPrefs.cpp:126
+#: prefs/GUIPrefs.cpp:145
msgid "Modes"
msgstr "Modos"
-#: prefs/GUIPrefs.cpp:129
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
+msgstr "Mostrar los efectos VST en el modo GUI"
+
+#: prefs/GUIPrefs.cpp:156
msgid "Don't a&pply effects in batch mode"
msgstr "No a&plicar efectos en modo de secuencia"
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
-msgstr "Mostrar el rango mÃnimo: medidores y''Forma de onda (dB)'"
-
-#: prefs/GUIPrefs.cpp:141
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 dB (rango aproximado para edición de alta amplitud)"
+#: prefs/ImportExportPrefs.cpp:28
+msgid "Import / Export"
+msgstr "Importar / Exportar"
-#: prefs/GUIPrefs.cpp:142
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 dB (rango PCM de muestras de 8 bit)"
+#: prefs/ImportExportPrefs.cpp:53
+msgid "When importing audio files"
+msgstr "Cuando se importa archivos de audio"
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
-msgstr "-60 dB (rango PCM de muestras de 10 bits)"
+#: prefs/ImportExportPrefs.cpp:57
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
+msgstr ""
+"&Hacer una copia del archivo de audio descomprimido antes de editar (más "
+"seguro)"
-#: prefs/GUIPrefs.cpp:144
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 dB (rango PCM de muestras de 16 bits)"
+#: prefs/ImportExportPrefs.cpp:59
+msgid "&Read uncompressed audio files directly from the original (faster)"
+msgstr ""
+"Lee&r directamente desde el archivo de audio descomprimido original (más "
+"rápido)"
-#: prefs/GUIPrefs.cpp:145
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 dB (lÃmite aproximado del oÃdo humano)"
+#: prefs/ImportExportPrefs.cpp:64
+msgid "&Normalize all tracks in project"
+msgstr "&Normalizar todas las pistas del proyecto"
-#: prefs/GUIPrefs.cpp:146
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB (rango PCM de muestras de 24 bit)"
+#: prefs/ImportExportPrefs.cpp:70
+msgid "When exporting tracks to an audio file"
+msgstr "Cuando se exportan pistas a un archivo de audio"
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
-msgstr "Modo de vista predeterminado"
+#: prefs/ImportExportPrefs.cpp:74
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+msgstr "Mezcl&ar siempre todas las pistas de canales estéreo o mono"
-#: prefs/GUIPrefs.cpp:164
-msgid "Other interface choices"
-msgstr "Otras opciones de espacio de trabajo"
+#: prefs/ImportExportPrefs.cpp:76
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+msgstr ""
+"&Utilice mezcla personalizada (por ejemplo para exportar un archivo "
+"multicanal 5.1)"
-#: prefs/GUIPrefs.cpp:167
-msgid "Help:"
-msgstr "Ayuda:"
+#: prefs/ImportExportPrefs.cpp:81
+msgid "S&how Metadata Editor prior to export step"
+msgstr "&Mostrar el editor de metadatos antes de realizar la exportación"
-#: prefs/GUIPrefs.cpp:168
-msgid "Solo Button:"
-msgstr "Botón de sólo:"
+#: prefs/ImportExportPrefs.cpp:84
+msgid ""
+"Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
+msgstr ""
+"Nota: Las opciones de calidad de exportación pueden ser elegidas pulsando\n"
+"en el botón Opciones del cuadro de diálogo Exportar."
-#: prefs/KeyConfigPrefs.cpp:64 prefs/KeyConfigPrefs.cpp:65
+#: prefs/KeyConfigPrefs.cpp:72
msgid "Keyboard"
msgstr "Teclado"
-#: prefs/KeyConfigPrefs.cpp:86
+#: prefs/KeyConfigPrefs.cpp:96
msgid "Keyboard preferences currently unavailable."
msgstr "Las preferencias de teclado no están disponibles en este momento."
-#: prefs/KeyConfigPrefs.cpp:87
+#: prefs/KeyConfigPrefs.cpp:97
msgid "Open a new project to modify keyboard shortcuts."
msgstr "Abra un nuevo proyecto para modificar los atajos de teclado."
-#: prefs/KeyConfigPrefs.cpp:95
+#: prefs/KeyConfigPrefs.cpp:108 prefs/KeyConfigPrefs.cpp:224
+msgid "All"
+msgstr "Todo"
+
+#: prefs/KeyConfigPrefs.cpp:124
msgid "Key Bindings"
msgstr "Atajos de teclado"
-#: prefs/KeyConfigPrefs.cpp:115
+#: prefs/KeyConfigPrefs.cpp:129
+msgid "Category:"
+msgstr "CategorÃa:"
+
+#: prefs/KeyConfigPrefs.cpp:156
msgid "S&et"
msgstr "&Establecer"
-#: prefs/KeyConfigPrefs.cpp:120
+#: prefs/KeyConfigPrefs.cpp:157 widgets/FileHistory.cpp:174
+msgid "&Clear"
+msgstr "&Limpiar"
+
+#: prefs/KeyConfigPrefs.cpp:162
msgid "Note: Pressing Cmd+Q will quit. All other keys are valid."
-msgstr "Nota: Pulsando Cmd+Q se cerrará el programa. El resto de las teclas son válidas."
+msgstr ""
+"Nota: Pulsando Cmd+Q se cerrará el programa. El resto de las teclas son "
+"válidas."
-#: prefs/KeyConfigPrefs.cpp:124 prefs/ThemePrefs.cpp:105
+#: prefs/KeyConfigPrefs.cpp:169 prefs/ThemePrefs.cpp:125
msgid "&Defaults"
msgstr "&Valores predeterminados"
-#: prefs/KeyConfigPrefs.cpp:143
+#: prefs/KeyConfigPrefs.cpp:181
msgid "Key Combination"
msgstr "Combinación de teclas"
-#: prefs/KeyConfigPrefs.cpp:163
-msgid "Export Keyboard Shortcuts As:"
-msgstr "Exportar accesos directos de teclado como:"
+#: prefs/KeyConfigPrefs.cpp:234 toolbars/EditToolBar.cpp:143
+#: toolbars/EditToolBar.cpp:195
+msgid "Undo"
+msgstr "Deshacer"
-#: prefs/KeyConfigPrefs.cpp:183
-msgid "Error saving keyboard shortcuts"
-msgstr "Error al guardar accesos directos de teclado"
+#: prefs/KeyConfigPrefs.cpp:237 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr "Rehacer"
-#: prefs/KeyConfigPrefs.cpp:198
+#: prefs/KeyConfigPrefs.cpp:263
msgid "Select an XML file containing Audacity keyboard shortcuts..."
-msgstr "Seleccione un archivo XML que contenga accesos directos de teclado de Audacity..."
+msgstr ""
+"Seleccione un archivo XML que contenga accesos directos de teclado de "
+"Audacity..."
-#: prefs/KeyConfigPrefs.cpp:215
+#: prefs/KeyConfigPrefs.cpp:281
msgid "Error loading keyboard shortcuts"
msgstr "Error al cargar accesos directos de teclado"
-#: prefs/KeyConfigPrefs.cpp:243
+#: prefs/KeyConfigPrefs.cpp:294
+msgid "Export Keyboard Shortcuts As:"
+msgstr "Exportar accesos directos de teclado como:"
+
+#: prefs/KeyConfigPrefs.cpp:320
+msgid "Error saving keyboard shortcuts"
+msgstr "Error al guardar accesos directos de teclado"
+
+#: prefs/KeyConfigPrefs.cpp:368
#, c-format
msgid ""
"The keyboard shortcut '%s' is already assigned to:\n"
@@ -7889,616 +8706,855 @@ msgstr ""
"\n"
"'%s'"
-#: prefs/KeyConfigPrefs.cpp:369 toolbars/EditToolBar.cpp:144
-msgid "Undo"
-msgstr "Deshacer"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr "Bibliotecas"
+
+#: prefs/LibraryPrefs.cpp:79
+msgid "MP3 Export Library"
+msgstr "Biblioteca de exportación de MP3"
+
+#: prefs/LibraryPrefs.cpp:83
+msgid "MP3 Library Version:"
+msgstr "Versión de la biblioteca MP3:"
+
+#: prefs/LibraryPrefs.cpp:89
+msgid "MP3 Library:"
+msgstr "Biblioteca MP3:"
-#: prefs/MidiIOPrefs.cpp:146
+#: prefs/LibraryPrefs.cpp:92 prefs/LibraryPrefs.cpp:124
+msgid "&Locate..."
+msgstr "&Ubicar..."
+
+#: prefs/LibraryPrefs.cpp:94
+msgid "LAME MP3 Library:"
+msgstr "Biblioteca LAME MP3:"
+
+#: prefs/LibraryPrefs.cpp:97 prefs/LibraryPrefs.cpp:130
+msgid "&Download"
+msgstr "&Descargar"
+
+#: prefs/LibraryPrefs.cpp:104
+msgid "FFmpeg Import/Export Library"
+msgstr "Biblioteca de importación/exportación FFmpeg"
+
+#: prefs/LibraryPrefs.cpp:108
+msgid "FFmpeg Library Version:"
+msgstr "Versión de la biblioteca FFmpeg"
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr "No se ha encontrado una biblioteca FFmpeg compatible"
+
+#: prefs/LibraryPrefs.cpp:120 prefs/LibraryPrefs.cpp:126
+msgid "FFmpeg Library:"
+msgstr "Biblioteca FFmpeg:"
+
+#: prefs/MidiIOPrefs.cpp:58
+msgid "MIDI Devices"
+msgstr "Dispositivos MIDI"
+
+#: prefs/MidiIOPrefs.cpp:168 prefs/RecordingPrefs.cpp:60
+msgid "Playthrough"
+msgstr "Reproducir a través"
+
+#: prefs/MidiIOPrefs.cpp:170
msgid "&Play other tracks while recording new one"
msgstr "&Reproducir otras pistas mientras se graba una nueva"
-#: prefs/MidiIOPrefs.cpp:149
+#: prefs/MidiIOPrefs.cpp:173
msgid "&Hardware Playthrough (Play new track while recording it)"
-msgstr "Reproducción a través del &hardware (Reproducir la pista mientras se está grabando)"
+msgstr ""
+"Reproducción a través del &hardware (Reproducir la pista mientras se está "
+"grabando)"
-#: prefs/MidiIOPrefs.cpp:152
+#: prefs/MidiIOPrefs.cpp:176
msgid "&Software Playthrough (Play new track while recording it)"
-msgstr "Reproducción a través del &software (Reproducir la pista mientras se está grabando)"
+msgstr ""
+"Reproducción a través del &software (Reproducir la pista mientras se está "
+"grabando)"
+
+#: prefs/MidiIOPrefs.cpp:181 prefs/PlaybackPrefs.cpp:72
+msgid "Cut Preview"
+msgstr "Vista previa del corte"
-#: prefs/MidiIOPrefs.cpp:160
+#: prefs/MidiIOPrefs.cpp:184
msgid "Play before cut region:"
msgstr "Reproducir antes de cortar zona:"
-#: prefs/MidiIOPrefs.cpp:162
+#: prefs/MidiIOPrefs.cpp:186
msgid "Play after cut region:"
msgstr "Reproducir después de cortar zona:"
-#: prefs/MidiIOPrefs.cpp:173
+#: prefs/MidiIOPrefs.cpp:191 prefs/RecordingPrefs.cpp:79
+msgid "Latency"
+msgstr "Latencia"
+
+#: prefs/MidiIOPrefs.cpp:196 prefs/RecordingPrefs.cpp:85
msgid "Audio to buffer:"
msgstr "Archivo a buffer:"
-#: prefs/MidiIOPrefs.cpp:176
+#: prefs/MidiIOPrefs.cpp:198 prefs/RecordingPrefs.cpp:92
msgid "Latency correction:"
msgstr "Corrección de latencia:"
-#: prefs/MidiIOPrefs.cpp:183
+#: prefs/MidiIOPrefs.cpp:205
msgid "Seek Time"
msgstr "Buscar tiempo"
-#: prefs/MidiIOPrefs.cpp:196
+#: prefs/MidiIOPrefs.cpp:208 prefs/PlaybackPrefs.cpp:98
+msgid "Short period:"
+msgstr "Periodo corto:"
+
+#: prefs/MidiIOPrefs.cpp:210 prefs/PlaybackPrefs.cpp:105
+msgid "Long period:"
+msgstr "Periodo largo:"
+
+#: prefs/MidiIOPrefs.cpp:215 prefs/PlaybackPrefs.cpp:57
+msgid "Effects Preview"
+msgstr "Vista previa de efectos"
+
+#: prefs/MidiIOPrefs.cpp:218
msgid "Play when previewing:"
msgstr "Reproducir mientras se realiza la vista previa:"
-#: prefs/MousePrefs.cpp:55 prefs/MousePrefs.cpp:56
+#: prefs/MidiIOPrefs.cpp:256
+msgid "No MIDI interfaces"
+msgstr "No hay interfaces MIDI"
+
+#: prefs/MousePrefs.cpp:57
msgid "Mouse"
msgstr "Ratón"
-#: prefs/MousePrefs.cpp:78
+#: prefs/MousePrefs.cpp:84
msgid "Mouse Bindings (default values, not configurable)"
msgstr "Atajos de ratón (valores predeterminados, no configurables)"
-#: prefs/MousePrefs.cpp:93
+#: prefs/MousePrefs.cpp:97
msgid "Tool"
msgstr "Herramienta"
-#: prefs/MousePrefs.cpp:94
+#: prefs/MousePrefs.cpp:98
msgid "Command Action"
msgstr "Acción de comando"
-#: prefs/MousePrefs.cpp:95
+#: prefs/MousePrefs.cpp:99
msgid "Buttons"
msgstr "Botones"
-#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:117
-#: prefs/MousePrefs.cpp:122
+#: prefs/MousePrefs.cpp:102 prefs/MousePrefs.cpp:108 prefs/MousePrefs.cpp:121
+#: prefs/MousePrefs.cpp:126
msgid "Left-Click"
msgstr "Clic izquierdo"
-#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:100
-#: prefs/MousePrefs.cpp:101 prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:102 prefs/MousePrefs.cpp:103 prefs/MousePrefs.cpp:104
+#: prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:106
msgid "Select"
msgstr "Seleccionar"
-#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:122
+#: prefs/MousePrefs.cpp:102 prefs/MousePrefs.cpp:126
msgid "Set Selection Point"
msgstr "Establecer punto de selección"
-#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:115 prefs/MousePrefs.cpp:119 prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:103 prefs/MousePrefs.cpp:109 prefs/MousePrefs.cpp:115
+#: prefs/MousePrefs.cpp:119 prefs/MousePrefs.cpp:123 prefs/MousePrefs.cpp:127
msgid "Left-Drag"
msgstr "Arrastre-Izquierdo"
-#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:103 prefs/MousePrefs.cpp:127
msgid "Set Selection Range"
msgstr "Establecer rango de selección"
-#: prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:104
msgid "Extend Selection Range"
msgstr "Extender rango de la selección"
-#: prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:104
msgid "Shift-Left-Click"
msgstr "Mayús-Clic izquierdo"
-#: prefs/MousePrefs.cpp:101
+#: prefs/MousePrefs.cpp:105
msgid "Left-Double-Click"
msgstr "Doble clic izquierdo"
-#: prefs/MousePrefs.cpp:101
+#: prefs/MousePrefs.cpp:105
msgid "Select Clip or Entire Track"
msgstr "Seleccionar bloque o pista completa"
-#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:106
msgid "Ctrl-Left-Click"
msgstr "Control-Clic izquierdo"
-#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:106
msgid "Set Selection Point and Play"
msgstr "Establecer punto de selección y reproducir"
-#: prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:108 prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:108 prefs/MousePrefs.cpp:109 prefs/MousePrefs.cpp:110
+#: prefs/MousePrefs.cpp:111 prefs/MousePrefs.cpp:112 prefs/MousePrefs.cpp:113
msgid "Zoom"
msgstr "Ampliar"
-#: prefs/MousePrefs.cpp:104
+#: prefs/MousePrefs.cpp:108
msgid "Zoom in on Point"
msgstr "Ampliar en un punto"
-#: prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:109 prefs/MousePrefs.cpp:111 prefs/MousePrefs.cpp:129
msgid "Zoom in on a Range"
msgstr "Ampliar en un rango"
-#: prefs/MousePrefs.cpp:105
+#: prefs/MousePrefs.cpp:109
msgid "same as right-drag"
msgstr "Igual que arrastre derecho "
-#: prefs/MousePrefs.cpp:106 prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:110 prefs/MousePrefs.cpp:128
msgid "Right-Click"
msgstr "Clic derecho"
-#: prefs/MousePrefs.cpp:106 prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:110 prefs/MousePrefs.cpp:128
msgid "Zoom out one step"
msgstr "Reducir un paso"
-#: prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:111 prefs/MousePrefs.cpp:129
msgid "Right-Drag"
msgstr "Arrastre-derecho"
-#: prefs/MousePrefs.cpp:107
+#: prefs/MousePrefs.cpp:111
msgid "same as left-drag"
msgstr "igual que arrastre izquierdo"
-#: prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:112
msgid "Shift-Drag"
msgstr "Mayús-Arrastrar"
-#: prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:112
msgid "Zoom out on a Range"
msgstr "Reducir en un rango"
-#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:113
msgid "Middle-Click"
msgstr "Clic central"
-#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:113
msgid "Zoom default"
msgstr "Ampliar predeterminado"
-#: prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:115
msgid "Time shift clip or move up/down between tracks"
msgstr "Desplazar en el tiempo el bloque o desplazar entre pistas"
-#: prefs/MousePrefs.cpp:112
+#: prefs/MousePrefs.cpp:116
msgid "Shift-Left-Drag"
msgstr "Mayús-Arrastrar izquierdo"
-#: prefs/MousePrefs.cpp:112
+#: prefs/MousePrefs.cpp:116
msgid "Time shift all clips in track"
msgstr "Desplazar en el tiempo todos los bloques de la pista"
-#: prefs/MousePrefs.cpp:113 prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:117 prefs/MousePrefs.cpp:124
msgid "Ctrl-Left-Drag"
msgstr "Ctrl-Arrastrar izquierdo"
-#: prefs/MousePrefs.cpp:113
+#: prefs/MousePrefs.cpp:117
msgid "Move clip up/down between tracks"
msgstr "Desplazar bloque entre pistas"
-#: prefs/MousePrefs.cpp:115
+#: prefs/MousePrefs.cpp:119
msgid "Change Amplification Envelope"
msgstr "Cambiar la envolvente de amplificación"
-#: prefs/MousePrefs.cpp:117
+#: prefs/MousePrefs.cpp:121
msgid "Change Sample"
msgstr "Cambiar muestra"
-#: prefs/MousePrefs.cpp:117 prefs/MousePrefs.cpp:118 prefs/MousePrefs.cpp:119
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:121 prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:124
msgid "Pencil"
msgstr "Lápiz"
-#: prefs/MousePrefs.cpp:118
+#: prefs/MousePrefs.cpp:122
msgid "Alt-Left-Click"
msgstr "Alt-Clic izquierdo"
-#: prefs/MousePrefs.cpp:118
+#: prefs/MousePrefs.cpp:122
msgid "Smooth at Sample"
msgstr "Suavizar en muestra"
-#: prefs/MousePrefs.cpp:119
+#: prefs/MousePrefs.cpp:123
msgid "Change Several Samples"
msgstr "Cambiar varias muestras"
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:124
msgid "Change ONE Sample only"
msgstr "Cambiar una única muestra"
-#: prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123 prefs/MousePrefs.cpp:124
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:126 prefs/MousePrefs.cpp:127 prefs/MousePrefs.cpp:128
+#: prefs/MousePrefs.cpp:129
msgid "Multi"
msgstr "Múltiple"
-#: prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:126 prefs/MousePrefs.cpp:127
msgid "same as select tool"
msgstr "igual que herramienta de selección"
-#: prefs/MousePrefs.cpp:124 prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:128 prefs/MousePrefs.cpp:129
msgid "same as zoom tool"
msgstr "Igual que herramienta de ampliación"
-#: prefs/MousePrefs.cpp:127 prefs/MousePrefs.cpp:128 prefs/MousePrefs.cpp:129
+#: prefs/MousePrefs.cpp:131 prefs/MousePrefs.cpp:132 prefs/MousePrefs.cpp:133
msgid "Any"
msgstr "Cualquiera"
-#: prefs/MousePrefs.cpp:127
+#: prefs/MousePrefs.cpp:131
msgid "Scroll up or down"
msgstr "Desplazamiento arriba o abajo"
-#: prefs/MousePrefs.cpp:127
+#: prefs/MousePrefs.cpp:131
msgid "Wheel-Rotate"
msgstr "Rueda del ratón"
-#: prefs/MousePrefs.cpp:128
+#: prefs/MousePrefs.cpp:132
msgid "Scroll left or right"
msgstr "Desplazamiento izquierdo o derecho"
-#: prefs/MousePrefs.cpp:128
+#: prefs/MousePrefs.cpp:132
msgid "Shift-Wheel-Rotate"
msgstr "Mayús-Rueda del ratón"
-#: prefs/MousePrefs.cpp:129
+#: prefs/MousePrefs.cpp:133
msgid "Ctrl-Wheel-Rotate"
msgstr "Ctrl-Rueda del ratón"
-#: prefs/MousePrefs.cpp:129
+#: prefs/MousePrefs.cpp:133
msgid "Zoom in or out"
msgstr "Ampliar o reducir"
-#: prefs/PrefsDialog.cpp:94
+#: prefs/PlaybackPrefs.cpp:61
+msgid "Length of preview:"
+msgstr "Longitud de la vista previa:"
+
+#: prefs/PlaybackPrefs.cpp:76
+msgid "Preview before cut region:"
+msgstr "Vista previa antes de cortar zona:"
+
+#: prefs/PlaybackPrefs.cpp:83
+msgid "Preview after cut region:"
+msgstr "Vista previa después de cortar zona:"
+
+#: prefs/PlaybackPrefs.cpp:94
+msgid "Seek Time when playing"
+msgstr "Buscar tiempo mientras se reproduce"
+
+#: prefs/PrefsDialog.cpp:72
msgid "Audacity Preferences"
msgstr "Preferencias de Audacity"
-#: prefs/QualityPrefs.cpp:73
+#: prefs/ProjectsPrefs.cpp:32
+msgid "Projects"
+msgstr "Proyectos"
+
+#: prefs/ProjectsPrefs.cpp:59
+msgid "When saving a project that depends on other audio files"
+msgstr "Cuando se guarda un proyecto que depende de otros archivos de audio"
+
+#: prefs/ProjectsPrefs.cpp:63
+msgid "Always © all audio into project (safest)"
+msgstr "&Copiar siempre todo el audio dentro del proyecto (el más seguro)"
+
+#: prefs/ProjectsPrefs.cpp:65
+msgid "&Do not copy any audio"
+msgstr "&No copiar ninguna parte del audio"
+
+#: prefs/ProjectsPrefs.cpp:67
+msgid "&Ask user"
+msgstr "&Preguntar al usuario"
+
+#: prefs/ProjectsPrefs.cpp:74
+msgid "Auto save"
+msgstr "Guardado automático"
+
+#: prefs/ProjectsPrefs.cpp:76
+msgid "Auto save a copy of the project in a separate folder"
+msgstr "Guardar automáticamente una copia del proyecto en una carpeta aparte"
+
+#: prefs/ProjectsPrefs.cpp:82
+msgid "Auto save interval:"
+msgstr "Intervalo de guardado automático:"
+
+#: prefs/ProjectsPrefs.cpp:86 prefs/ProjectsPrefs.cpp:87
+msgid "minutes"
+msgstr "minutos"
+
+#: prefs/QualityPrefs.cpp:75
msgid "Rectangle"
msgstr "Rectángulo"
-#: prefs/QualityPrefs.cpp:74
+#: prefs/QualityPrefs.cpp:76
msgid "Triangle"
msgstr "Triángulo"
-#: prefs/QualityPrefs.cpp:75
+#: prefs/QualityPrefs.cpp:77
msgid "Shaped"
msgstr "Perfilado"
-#: prefs/QualityPrefs.cpp:122
+#: prefs/QualityPrefs.cpp:125
msgid "Sampling"
msgstr "Muestreo"
-#: prefs/QualityPrefs.cpp:125
+#: prefs/QualityPrefs.cpp:129
msgid "Default Sample Rate:"
msgstr "Frecuencia de muestreo predeterminada:"
-#: prefs/QualityPrefs.cpp:127
+#: prefs/QualityPrefs.cpp:154
msgid "Default Sample Format:"
msgstr "Formato de muestra predeterminado:"
-#: prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "Conversor de frecuencia de muestreo en tiempo real:"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr "Conversión en tiempo real"
-#: prefs/QualityPrefs.cpp:139
-msgid "High-quality sample rate converter:"
-msgstr "Conversor de frecuencia de muestreo de alta calidad:"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+msgid "Sample Rate Converter:"
+msgstr "Conversor de frecuencia de muestreo:"
-#: prefs/QualityPrefs.cpp:142
-msgid "Real-time dither:"
-msgstr "Fusión en tiempo real:"
+#: prefs/QualityPrefs.cpp:178 prefs/QualityPrefs.cpp:200
+msgid "Dither"
+msgstr "Fusión"
-#: prefs/QualityPrefs.cpp:145
-msgid "High-quality dither:"
-msgstr "Fusión de alta calidad:"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr "Conversión de alta calidad"
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
-msgstr "Conversión"
+#: prefs/RecordingPrefs.cpp:62
+msgid "Overdub: &Play other tracks while recording new one"
+msgstr "Remezclar: &Reproducir otras pistas mientras se graba una nueva"
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
-msgstr "Conversor de frecuencia de muestreo"
+#: prefs/RecordingPrefs.cpp:66
+msgid "&Hardware Playthrough: Play new track while recording it"
+msgstr ""
+"Reproducción a través del &hardware: Reproducir la pista mientras se está "
+"grabando"
-#: prefs/QualityPrefs.cpp:164
-msgid "Dither"
-msgstr "Fusión"
+#: prefs/RecordingPrefs.cpp:70
+msgid "&Software Playthrough: Play new track while recording or monitoring"
+msgstr ""
+"Reproducción a través del &software: Reproducir la pista mientras se está "
+"grabando o visualizando"
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
-msgstr "Tiempo real:"
+#: prefs/RecordingPrefs.cpp:74
+msgid "(uncheck when recording \"stereo mix\")"
+msgstr "(desactivar cuando se graba \"mezcla estéreo\")"
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
-msgstr "Alta calidad:"
+#: prefs/RecordingPrefs.cpp:89 prefs/RecordingPrefs.cpp:90
+msgid "milliseconds (higher = more latency)"
+msgstr "milisegundos (más alto = más latencia)"
-#: prefs/SmartRecordPrefs.cpp:37 prefs/SmartRecordPrefs.cpp:38
-msgid "Smart Recording"
-msgstr "Grabación inteligente"
+#: prefs/RecordingPrefs.cpp:96 prefs/RecordingPrefs.cpp:97
+msgid "milliseconds (negative = backwards)"
+msgstr "milisegundos (negativo = hacia atrás)"
-#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
+#: prefs/RecordingPrefs.cpp:103 prefs/RecordingPrefs.cpp:105
msgid "Sound Activated Recording"
msgstr "Grabación de activación por sonido"
-#: prefs/SmartRecordPrefs.cpp:71
+#: prefs/RecordingPrefs.cpp:114
msgid "Sound Activation Level (dB):"
msgstr "Nivel de activación de sonido (dB):"
-#: prefs/SpectrumPrefs.cpp:41 prefs/SpectrumPrefs.cpp:42
+#: prefs/SpectrumPrefs.cpp:30
msgid "Spectrograms"
msgstr "Espectrogramas"
-#: prefs/SpectrumPrefs.cpp:91
-msgid "FFT Size"
-msgstr "Tamaño de FFT"
-
-#: prefs/SpectrumPrefs.cpp:94
+#: prefs/SpectrumPrefs.cpp:41
msgid "8 - most wideband"
msgstr "8 - banda más ancha"
-#: prefs/SpectrumPrefs.cpp:99
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr "16"
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr "32"
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr "64"
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr "128"
+
+#: prefs/SpectrumPrefs.cpp:46
msgid "256 - default"
msgstr "256 - predeterminado"
-#: prefs/SpectrumPrefs.cpp:107
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr "512"
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr "1024"
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr "2048"
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr "4096"
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr "8192"
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr "16384"
+
+#: prefs/SpectrumPrefs.cpp:54
msgid "32768 - most narrowband"
msgstr "32768 - banda más estrecha"
-#: prefs/SpectrumPrefs.cpp:109
+#: prefs/SpectrumPrefs.cpp:56
msgid "4096 - most narrowband"
msgstr "4096 - banda más estrecha"
-#: prefs/SpectrumPrefs.cpp:116
-msgid "Window type:"
-msgstr "Tipo de ventana:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
+msgstr "Ventana FFT"
+
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
+msgstr "Tamaño de ventana"
+
+#: prefs/SpectrumPrefs.cpp:93
+msgid "Window type"
+msgstr "Tipo de ventana"
-#: prefs/SpectrumPrefs.cpp:125
+#: prefs/SpectrumPrefs.cpp:113
msgid "FFT Skip Points"
msgstr "Puntos de omisión FFT"
-#: prefs/SpectrumPrefs.cpp:140
-msgid "Display"
-msgstr "Mostrar"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
+msgstr "Puntos de omisión"
-#: prefs/SpectrumPrefs.cpp:144
-msgid "&Grayscale"
-msgstr "&Escala de grises"
-
-#: prefs/SpectrumPrefs.cpp:147
+#: prefs/SpectrumPrefs.cpp:134
msgid "Minimum Frequency (Hz):"
msgstr "Frecuencia mÃnima (Hz):"
-#: prefs/SpectrumPrefs.cpp:152
+#: prefs/SpectrumPrefs.cpp:140
msgid "Maximum Frequency (Hz):"
msgstr "Frecuencia máxima (Hz):"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
-msgstr "CuadrÃcula &Y"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
+msgstr "Mostrar el espectro utilizando escala de &grises"
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
-msgstr "E&ncontrar notas"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
+msgstr "Mostrar una cuadrÃcula alrededor del eje &Y"
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
-msgstr "&Reducir el rango de notas"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
+msgstr "Buscar notas FFT"
#: prefs/SpectrumPrefs.cpp:165
msgid "Minimum Amplitude (dB):"
msgstr "Amplitud mÃnima (dB):"
-#: prefs/SpectrumPrefs.cpp:170
+#: prefs/SpectrumPrefs.cpp:171
msgid "Max. Number of Notes (1..128):"
msgstr "Número máximo de notas (1..128):"
-#: prefs/SpectrumPrefs.cpp:197
+#: prefs/SpectrumPrefs.cpp:178
+msgid "&Find Notes"
+msgstr "E&ncontrar notas"
+
+#: prefs/SpectrumPrefs.cpp:182
+msgid "&Quantize Notes"
+msgstr "&Reducir el rango de notas"
+
+#: prefs/SpectrumPrefs.cpp:194
msgid "The maximum frequency must be an integer"
msgstr "La frecuencia máxima debe ser un número entero"
-#: prefs/SpectrumPrefs.cpp:201
+#: prefs/SpectrumPrefs.cpp:198
msgid "Maximum frequency must be in the range 100 Hz - 100,000 Hz"
msgstr "La frecuencia máxima debe estar entre los 100 Hz y los 100.000 Hz"
-#: prefs/SpectrumPrefs.cpp:209
+#: prefs/SpectrumPrefs.cpp:204
msgid "The minimum frequency must be an integer"
msgstr "La frecuencia mÃnima debe ser un número entero"
-#: prefs/SpectrumPrefs.cpp:213
+#: prefs/SpectrumPrefs.cpp:208
msgid "Minimum frequency must be at least 0 Hz"
msgstr "La frecuencia mÃnima debe ser al menos de 0 Hz"
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr "La frecuencia mÃnima debe ser menor que la frecuencia máxima"
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr "La amplitud mÃnima (dB) debe ser un número entero"
-#: prefs/SpectrumPrefs.cpp:226 prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
-msgstr "El número máximo de notas debe ser un número entero entre 1 y 128"
+#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr "El número máximo de notas debe ser un valor entero"
+
+#: prefs/SpectrumPrefs.cpp:230
+msgid "The maximum number of notes must be in the range 1..128"
+msgstr "El máximo número de notas debe estar entre 1 y 128"
-#: prefs/ThemePrefs.cpp:62 prefs/ThemePrefs.cpp:63
+#: prefs/ThemePrefs.cpp:60
msgid "Theme"
msgstr "Tema"
+#: prefs/ThemePrefs.cpp:88
+msgid "Info"
+msgstr "Información"
+
+#: prefs/ThemePrefs.cpp:91
+msgid ""
+"Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images "
+"and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into "
+"Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently "
+"affected, even\n"
+"though the image file shows other icons too.]"
+msgstr ""
+"El uso de temas es una caracterÃstica experimental.\n"
+"\n"
+"Para probarla, haga clic en \"Guardar caché de tema\" cuando encuentre y "
+"modifique las imágenes y colores en \n"
+"ImageCacheVxx.png usando un editor de imágenes como \n"
+"Gimp.\n"
+"\n"
+"Haga clic en \"Cargar caché de tema\" para cargar las imágenes cambiada y "
+"colores en Audacity.\n"
+"\n"
+"[Sólo la barra de herramientas de control y los colores de las pistas "
+"de onda se verán afectadas, incluso cuando\n"
+"el archivo de imagen muestra también otros iconos.]"
+
+#: prefs/ThemePrefs.cpp:96
+msgid ""
+"You have compiled Audacity with an extra button, 'Output Sourcery'. This "
+"will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+"Ha compilado Audacity con un botón extra denominado 'Salida Sourcery'. "
+"Este almacenará una \n"
+"versión C de la caché de imagen que puede ser compilada de forma predeterminada."
+
+#: prefs/ThemePrefs.cpp:101
+msgid ""
+"If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be "
+"loaded\n"
+"when the program starts up."
+msgstr ""
+"Si la opción 'Cargar la caché del tema al iniciar' está activada, la caché de tema "
+"será cargada\n"
+"cuando el programa comience."
+
+#: prefs/ThemePrefs.cpp:104
+msgid ""
+"Saving and loading individual theme files uses a separate file for each "
+"image, but is\n"
+"otherwise the same idea."
+msgstr ""
+"El guardado y carga de archivos de tema individuales utiliza un archivo "
+"separado para cada imagen,\n"
+"pero es el mismo concepto."
+
#. i18n-hint: && in here is an escape character to get a single & on screen,
#. * so keep it as is
-#: prefs/ThemePrefs.cpp:93
+#: prefs/ThemePrefs.cpp:111
msgid "Theme Cache - Images && Color"
msgstr "Caché del tema - Imágenes y color"
-#: prefs/ThemePrefs.cpp:95
+#: prefs/ThemePrefs.cpp:115
msgid "Save Theme Cache"
msgstr "Guardar la caché del tema"
-#: prefs/ThemePrefs.cpp:96
+#: prefs/ThemePrefs.cpp:116
msgid "Load Theme Cache"
msgstr "Cargar la caché del tema"
-#: prefs/ThemePrefs.cpp:106
+#: prefs/ThemePrefs.cpp:131
msgid "Load Theme Cache At Startup"
msgstr "Cargar la caché del tema al iniciar"
-#: prefs/ThemePrefs.cpp:118
+#: prefs/ThemePrefs.cpp:146
msgid "Individual Theme Files"
msgstr "Archivos individuales del tema"
-#: prefs/ThemePrefs.cpp:120
+#: prefs/ThemePrefs.cpp:150
msgid "Save Files"
msgstr "Guardar archivos"
-#: prefs/ThemePrefs.cpp:121
+#: prefs/ThemePrefs.cpp:151
msgid "Load Files"
msgstr "Cargar archivos"
-#: prefs/ThemePrefs.cpp:126
-msgid "Info"
-msgstr "Información"
+#: prefs/TracksPrefs.cpp:47
+msgid "Simple"
+msgstr "Simple"
-#: prefs/ThemePrefs.cpp:129
-msgid ""
-"Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
-msgstr ""
-"El uso de temas es una caracterÃstica experimental.\n"
-"\n"
-"Para probarlo, haga clic en \"Guardar caché de tema\" cuando\n"
-"encuentre y modifique las imágenes y colores en \n"
-"ImageCacheVxx.png usando un editor de imágenes como \n"
-"Gimp.\n"
-"\n"
-"Haga clic en \"Cargar caché de tema\" para cargar las imágenes cambiada y colores en Audacity.\n"
-"\n"
-"[Sólo la barra de herramientas de control y los colores \n"
-"de las pistas de onda se verán afectadas, incluso cuando\n"
-"el archivo de imagen muestra también otros iconos.]\n"
+#: prefs/TracksPrefs.cpp:77
+msgid "&Update display while playing"
+msgstr "Act&ualizar pantalla mientras se reproduce"
-#: prefs/ThemePrefs.cpp:134
-msgid ""
-"You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
-msgstr ""
-"Ha compilado Audacity con un botón extra, \n"
-"\"Output Sourcery'. Esto guardará una versión C de \n"
-"la caché de imagen que puede ser compilada como la predeterminada.\n"
+#: prefs/TracksPrefs.cpp:80
+msgid "Automatically &fit tracks vertically zoomed"
+msgstr "A&justar automáticamente las pistas acercadas verticalmente"
-#: prefs/ThemePrefs.cpp:139
-msgid ""
-"If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
-msgstr ""
-"Si Cargar caché de temas en el comienzo \n"
-"está activado, entonces el caché de temas \n"
-"será cargado cuando el programa se inicie.\n"
-"\n"
+#: prefs/TracksPrefs.cpp:88
+msgid "Default View Mode:"
+msgstr "Modo de vista predeterminado:"
-#: prefs/ThemePrefs.cpp:142
-msgid ""
-"Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
+#: prefs/TracksPrefs.cpp:101
+msgid "&Select all audio in project, if none selected"
+msgstr "&Seleccionar todo el audio del proyecto si no hay nada seleccionado"
+
+#: prefs/TracksPrefs.cpp:104
+msgid "Enable cut &lines"
+msgstr "Permitir el corte de &lÃneas"
+
+#: prefs/TracksPrefs.cpp:107
+msgid "Enable &dragging of left and right selection edges"
+msgstr "Permitir arrastre de los bor&des izquierdo y derecho de la selección"
+
+#: prefs/TracksPrefs.cpp:110
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
msgstr ""
-"Guardar y cargar archivos de temas individuales \n"
-"utiliza un archivo separado para cada imagen, pero \n"
-"es el mismo concepto.\n"
-"\n"
+"\"Mover la pista seleccionada\" se repite &cÃclicamente a través de las "
+"pistas"
-#: toolbars/ControlToolBar.cpp:175
-msgid "Pause"
-msgstr "Pausa"
+#: prefs/TracksPrefs.cpp:113
+msgid "Editing a &clip can move other clips"
+msgstr "La edición de un &bloque puede desplazar otros bloques"
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play"
-msgstr "Reproducir"
+#: prefs/TracksPrefs.cpp:121
+msgid "Solo Button:"
+msgstr "Botón de sólo:"
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
-msgstr "Reproducir (Mayús para reproducir cÃclicamente)"
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
+msgstr "Advertencias"
+
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr "Mostrar advertencias y preguntas"
+
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr "Al guardar &proyectos"
+
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr "Al guardar proy&ectos vacÃos"
+
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr "Al disponer de poco espacio en el &disco"
-#: toolbars/ControlToolBar.cpp:183
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr "Al mezclar varias pistas a e&stéreo durante la exportación"
+
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr "Al mezclar varias pistas a &mono durante la exportación"
+
+#: toolbars/ControlToolBar.cpp:170 toolbars/ControlToolBar.cpp:205
+msgid "Pause"
+msgstr "Pausa"
+
+#: toolbars/ControlToolBar.cpp:178 toolbars/ControlToolBar.cpp:207
+#: widgets/ProgressDialog.cpp:1108
msgid "Stop"
msgstr "Detener"
-#: toolbars/ControlToolBar.cpp:186
-msgid "Skip to Start"
-msgstr "Saltar al comienzo"
+#: toolbars/ControlToolBar.cpp:190 toolbars/ControlToolBar.cpp:211
+msgid "Clean Speech"
+msgstr "Limpieza de locución"
-#: toolbars/ControlToolBar.cpp:189
-msgid "Skip to End"
-msgstr "Saltar al final"
+#: toolbars/ControlToolBar.cpp:206
+msgid "Play (Shift for Loop Play)"
+msgstr "Reproducir (Mayús para reproducir cÃclicamente)"
-#: toolbars/ControlToolBar.cpp:192
+#: toolbars/ControlToolBar.cpp:210
msgid "Record (Shift for Append Record)"
msgstr "Grabar (Mayús para añadir grabación)"
-#: toolbars/ControlToolBar.cpp:195
-msgid "Clean Speech"
-msgstr "Limpieza de locución"
-
-#: toolbars/ControlToolBar.cpp:540 toolbars/ControlToolBar.cpp:869
+#: toolbars/ControlToolBar.cpp:579 toolbars/ControlToolBar.cpp:914
msgid "Error while opening sound device. "
msgstr "Error al abrir el dispositivo de audio. "
-#: toolbars/ControlToolBar.cpp:706
-msgid "Recording in CleanSpeech mode is not possible when a track, or more than one project, is already open."
-msgstr "La grabación en modo Limpieza de locución no es posible cuando hay abierta una pista o más de un proyecto."
+#: toolbars/ControlToolBar.cpp:749
+msgid ""
+"Recording in CleanSpeech mode is not possible when a track, or more than one "
+"project, is already open."
+msgstr ""
+"La grabación en modo Limpieza de locución no es posible cuando hay abierta "
+"una pista o más de un proyecto."
-#: toolbars/ControlToolBar.cpp:707
+#: toolbars/ControlToolBar.cpp:750
msgid "Recording not permitted"
msgstr "Grabación no permitida"
-#: toolbars/DeviceToolBar.cpp:113 toolbars/DeviceToolBar.cpp:115
+#: toolbars/DeviceToolBar.cpp:109 toolbars/DeviceToolBar.cpp:205
msgid "Output Device"
msgstr "Dispositivo de salida"
-#: toolbars/DeviceToolBar.cpp:134 toolbars/DeviceToolBar.cpp:136
+#: toolbars/DeviceToolBar.cpp:127 toolbars/DeviceToolBar.cpp:206
msgid "Input Device"
msgstr "Dispositivo de entrada"
-#: toolbars/EditToolBar.cpp:139
+#: toolbars/EditToolBar.cpp:136
msgid "Trim outside selection"
msgstr "Recortar fuera de selección"
-#: toolbars/EditToolBar.cpp:141
+#: toolbars/EditToolBar.cpp:138
msgid "Silence selection"
msgstr "Silenciar selección"
-#: toolbars/EditToolBar.cpp:150
+#: toolbars/EditToolBar.cpp:150 toolbars/EditToolBar.cpp:197
msgid "Link Tracks"
msgstr "Enlazar pistas"
-#: toolbars/EditToolBar.cpp:155
+#: toolbars/EditToolBar.cpp:155 toolbars/EditToolBar.cpp:198
msgid "Zoom In"
msgstr "Ampliar"
-#: toolbars/EditToolBar.cpp:157
+#: toolbars/EditToolBar.cpp:157 toolbars/EditToolBar.cpp:199
msgid "Zoom Out"
msgstr "Reducir"
-#: toolbars/EditToolBar.cpp:161
-msgid "Zoom Toggle"
-msgstr "Ampliación anterior"
-
-#: toolbars/EditToolBar.cpp:165
-msgid "Fit Selection"
-msgstr "Ajustar selección"
-
-#: toolbars/EditToolBar.cpp:165
+#: toolbars/EditToolBar.cpp:160
msgid "Fit selection in window"
msgstr "Ajustar selección a la ventana"
-#: toolbars/EditToolBar.cpp:167
-msgid "Fit Project"
-msgstr "Ajustar proyecto"
-
-#: toolbars/EditToolBar.cpp:167
+#: toolbars/EditToolBar.cpp:162
msgid "Fit project in window"
msgstr "Ajustar el proyecto en la ventana"
-#: toolbars/MeterToolBar.cpp:50
-msgid "Meter"
-msgstr "Medidor"
+#: toolbars/EditToolBar.cpp:200
+msgid "Fit Selection"
+msgstr "Ajustar selección"
+
+#: toolbars/EditToolBar.cpp:201
+msgid "Fit Project"
+msgstr "Ajustar proyecto"
#: toolbars/MeterToolBar.cpp:80
msgid "Play Meter"
@@ -8516,11 +9572,11 @@ msgstr "Medidor de grabación"
msgid "Meter-Record"
msgstr "Medidor-grabación"
-#: toolbars/MeterToolBar.cpp:94
+#: toolbars/MeterToolBar.cpp:123
msgid "Output level meter"
msgstr "Medidor de nivel de salida"
-#: toolbars/MeterToolBar.cpp:95
+#: toolbars/MeterToolBar.cpp:124
msgid "Input level meter - click to monitor input"
msgstr "Medidor de nivel de entrada- haga clic para visualizar la entrada"
@@ -8532,7 +9588,7 @@ msgstr "Volumen de salida"
msgid "Slider Output"
msgstr "Control de salida"
-#: toolbars/MixerToolBar.cpp:101 widgets/Meter.cpp:873
+#: toolbars/MixerToolBar.cpp:101 widgets/Meter.cpp:862
msgid "Input Volume"
msgstr "Volumen de entrada"
@@ -8540,11 +9596,23 @@ msgstr "Volumen de entrada"
msgid "Slider Input"
msgstr "Control de entrada"
-#: toolbars/MixerToolBar.cpp:134
+#: toolbars/MixerToolBar.cpp:139
msgid "Input Source"
msgstr "Fuente de entrada"
-#: toolbars/SelectionBar.cpp:86
+#: toolbars/MixerToolBar.cpp:304
+msgid "Input source information is not available."
+msgstr "La información de la fuente de entrada no está disponible"
+
+#: toolbars/MixerToolBar.cpp:311
+msgid "Select Input Source"
+msgstr "Seleccionar fuente de entrada "
+
+#: toolbars/MixerToolBar.cpp:319
+msgid "Input Source:"
+msgstr "Fuente de entrada:"
+
+#: toolbars/SelectionBar.cpp:86 toolbars/SelectionBar.cpp:292
msgid "Selection"
msgstr "Selección"
@@ -8577,20 +9645,20 @@ msgstr "Ajuste a"
msgid "Selection "
msgstr "Selección "
-#: toolbars/SelectionBar.cpp:325
+#: toolbars/SelectionBar.cpp:340
msgid "Selection Length"
msgstr "Longitud de la selección"
-#: toolbars/SelectionBar.cpp:333
+#: toolbars/SelectionBar.cpp:348
msgid "Selection End"
msgstr "Final de la selección"
-#: toolbars/ToolBar.cpp:98
+#: toolbars/ToolBar.cpp:120
#, c-format
msgid "Audacity %s ToolBar"
msgstr "Barra de herramientas %s"
-#: toolbars/ToolDock.cpp:74 toolbars/ToolDock.cpp:75
+#: toolbars/ToolDock.cpp:75 toolbars/ToolDock.cpp:76
msgid "ToolDock"
msgstr "Bloqueo de herramientas"
@@ -8622,219 +9690,188 @@ msgstr "Izquierdo=Acercar, Derecho=Alejar, Central=Normal"
msgid "Click and drag to move a track in time"
msgstr "Haga clic y arrastre para desplazar una pista en el tiempo"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr "Herramientas"
-
-#: toolbars/ToolsToolBar.cpp:147 toolbars/ToolsToolBar.cpp:182
-msgid "Selection Tool"
-msgstr "Herramienta de selección"
-
-#: toolbars/ToolsToolBar.cpp:148
-msgid "Envelope Tool"
-msgstr "Herramienta de envolvente"
-
-#: toolbars/ToolsToolBar.cpp:149 toolbars/ToolsToolBar.cpp:183
-msgid "Time Shift Tool"
-msgstr "Herramienta de desplazamiento en el tiempo"
-
-#: toolbars/ToolsToolBar.cpp:150 toolbars/ToolsToolBar.cpp:185
-msgid "Zoom Tool"
-msgstr "Herramienta de ampliación"
-
-#: toolbars/ToolsToolBar.cpp:151 toolbars/ToolsToolBar.cpp:184
-msgid "Draw Tool"
-msgstr "Herramienta de dibujo"
-
#: toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
msgstr "Modo multiherramienta"
-#: toolbars/ToolsToolBar.cpp:186
+#: toolbars/ToolsToolBar.cpp:190
msgid "Slide Tool"
msgstr "Herramienta de deslizamiento"
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr "Herramienta múltiple"
-
-#: toolbars/TranscriptionToolBar.cpp:84
-msgid "Transcription"
-msgstr "Transcripción"
-
-#: toolbars/TranscriptionToolBar.cpp:171
+#: toolbars/TranscriptionToolBar.cpp:170
msgid "Play at selected speed"
msgstr "Reproducir a la velocidad seleccionada"
-#: toolbars/TranscriptionToolBar.cpp:172
-msgid "Play-at-speed"
-msgstr "Reproducir a velocidad"
-
-#: toolbars/TranscriptionToolBar.cpp:178 toolbars/TranscriptionToolBar.cpp:183
+#: toolbars/TranscriptionToolBar.cpp:176 toolbars/TranscriptionToolBar.cpp:181
+#: toolbars/TranscriptionToolBar.cpp:263
msgid "Playback Speed"
msgstr "Velocidad de reproducción"
-#: toolbars/TranscriptionToolBar.cpp:196
+#: toolbars/TranscriptionToolBar.cpp:195
msgid "Adjust left selection to next onset"
msgstr "Ajustar selección izquierda a la entrada siguiente"
#: toolbars/TranscriptionToolBar.cpp:197
-msgid "Left-to-On"
-msgstr "Izquierda a encendido"
-
-#: toolbars/TranscriptionToolBar.cpp:199
msgid "Adjust right selection to previous offset"
msgstr "Ajustar selección derecha a la salida anterior"
-#: toolbars/TranscriptionToolBar.cpp:200
-msgid "Right-to-Off"
-msgstr "Derecho a apagado"
-
-#: toolbars/TranscriptionToolBar.cpp:202
+#: toolbars/TranscriptionToolBar.cpp:199
msgid "Adjust left selection to next offset"
msgstr "Ajustar selección izquierda a la salida siguiente"
-#: toolbars/TranscriptionToolBar.cpp:203
-msgid "Left-to-Off"
-msgstr "Izquierda a apagado"
-
-#: toolbars/TranscriptionToolBar.cpp:205
+#: toolbars/TranscriptionToolBar.cpp:201
msgid "Adjust right selection to previous onset"
msgstr "Ajustar selección derecha a la entrada anterior"
-#: toolbars/TranscriptionToolBar.cpp:206
-msgid "Right-to-On"
-msgstr "Derecho a encendido"
-
-#: toolbars/TranscriptionToolBar.cpp:208
+#: toolbars/TranscriptionToolBar.cpp:203
msgid "Select region of sound around cursor"
msgstr "Seleccione una zona de sonido alrededor del cursor"
-#: toolbars/TranscriptionToolBar.cpp:209
-msgid "Select-Sound"
-msgstr "Seleccionar sonido"
-
-#: toolbars/TranscriptionToolBar.cpp:211
+#: toolbars/TranscriptionToolBar.cpp:205
msgid "Select region of silence around cursor"
msgstr "Seleccione una zona de silencio alrededor del cursor"
-#: toolbars/TranscriptionToolBar.cpp:212
-msgid "Select-Silence"
-msgstr "Seleccionar Silencio"
-
-#: toolbars/TranscriptionToolBar.cpp:214
+#: toolbars/TranscriptionToolBar.cpp:207
msgid "Automatically make labels from words"
msgstr "Crea etiquetas automáticamente a partir de palabras"
-#: toolbars/TranscriptionToolBar.cpp:215
-msgid "Make Labels"
-msgstr "Crear etiquetas"
-
-#: toolbars/TranscriptionToolBar.cpp:217
+#: toolbars/TranscriptionToolBar.cpp:209
msgid "Add label at selection"
msgstr "Añadir etiqueta en la selección"
-#: toolbars/TranscriptionToolBar.cpp:218
-msgid "Add Label"
-msgstr "Añadir etiqueta"
-
-#: toolbars/TranscriptionToolBar.cpp:220
+#: toolbars/TranscriptionToolBar.cpp:211
msgid "Calibrate voicekey"
msgstr "Calibrar clave de voz"
-#: toolbars/TranscriptionToolBar.cpp:221
-msgid "Calibrate"
-msgstr "Calibrar"
-
-#: toolbars/TranscriptionToolBar.cpp:225
+#: toolbars/TranscriptionToolBar.cpp:215
msgid "Adjust Sensitivity"
msgstr "Ajustar sensibilidad"
-#: toolbars/TranscriptionToolBar.cpp:230
+#: toolbars/TranscriptionToolBar.cpp:220 toolbars/TranscriptionToolBar.cpp:276
msgid "Sensitivity"
msgstr "Sensibilidad"
-#: toolbars/TranscriptionToolBar.cpp:235
+#: toolbars/TranscriptionToolBar.cpp:225
msgid "Energy"
msgstr "EnergÃa"
-#: toolbars/TranscriptionToolBar.cpp:236
+#: toolbars/TranscriptionToolBar.cpp:226
msgid "Sign Changes (Low Threshold)"
msgstr "Cambios de signo (Umbral bajo)"
-#: toolbars/TranscriptionToolBar.cpp:237
+#: toolbars/TranscriptionToolBar.cpp:227
msgid "Sign Changes (High Threshold)"
msgstr "Cambios de signo (Umbral alto)"
-#: toolbars/TranscriptionToolBar.cpp:238
+#: toolbars/TranscriptionToolBar.cpp:228
msgid "Direction Changes (Low Threshold)"
msgstr "Cambios de dirección (umbral bajo)"
-#: toolbars/TranscriptionToolBar.cpp:239
+#: toolbars/TranscriptionToolBar.cpp:229
msgid "Direction Changes (High Threshold)"
msgstr "Cambios de dirección (umbral alto)"
-#: toolbars/TranscriptionToolBar.cpp:247
+#: toolbars/TranscriptionToolBar.cpp:237 toolbars/TranscriptionToolBar.cpp:277
msgid "Key type"
msgstr "Tipo de clave"
-#: widgets/AButton.cpp:303
+#: toolbars/TranscriptionToolBar.cpp:262
+msgid "Play-at-speed"
+msgstr "Reproducir a velocidad"
+
+#: toolbars/TranscriptionToolBar.cpp:266
+msgid "Left-to-On"
+msgstr "Izquierda a encendido"
+
+#: toolbars/TranscriptionToolBar.cpp:267
+msgid "Right-to-Off"
+msgstr "Derecho a apagado"
+
+#: toolbars/TranscriptionToolBar.cpp:268
+msgid "Left-to-Off"
+msgstr "Izquierda a apagado"
+
+#: toolbars/TranscriptionToolBar.cpp:269
+msgid "Right-to-On"
+msgstr "Derecho a encendido"
+
+#: toolbars/TranscriptionToolBar.cpp:270
+msgid "Select-Sound"
+msgstr "Seleccionar sonido"
+
+#: toolbars/TranscriptionToolBar.cpp:271
+msgid "Select-Silence"
+msgstr "Seleccionar Silencio"
+
+#: toolbars/TranscriptionToolBar.cpp:272
+msgid "Make Labels"
+msgstr "Crear etiquetas"
+
+#: toolbars/TranscriptionToolBar.cpp:273
+msgid "Add Label"
+msgstr "Añadir etiqueta"
+
+#: toolbars/TranscriptionToolBar.cpp:274
+msgid "Calibrate"
+msgstr "Calibrar"
+
+#: widgets/AButton.cpp:300
msgid " (disabled)"
msgstr " (deshabilitado)"
-#: widgets/AButton.cpp:461
+#: widgets/AButton.cpp:458
msgid "Press"
msgstr "Pulsar"
-#: widgets/AButton.cpp:540
+#: widgets/AButton.cpp:537
msgid "Button"
msgstr "Botón"
#. i18n-hint: One-letter abbreviation for Left, in VU Meter
#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
-#: widgets/ASlider.cpp:612 widgets/Meter.cpp:247
+#: widgets/ASlider.cpp:642 widgets/Meter.cpp:241
msgid "L"
msgstr "L"
#. i18n-hint: One-letter abbreviation for Right, in VU Meter
#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
-#: widgets/ASlider.cpp:615 widgets/Meter.cpp:249
+#: widgets/ASlider.cpp:645 widgets/Meter.cpp:243
msgid "R"
msgstr "R"
-#: widgets/ASlider.cpp:678
+#: widgets/ASlider.cpp:708
msgid "Center"
msgstr "Centro"
-#: widgets/ASlider.cpp:682
+#: widgets/ASlider.cpp:712
msgid "Left"
msgstr "Izquierda"
-#: widgets/ASlider.cpp:685
+#: widgets/ASlider.cpp:715
msgid "Right"
msgstr "Derecha"
-#: widgets/ErrorDialog.cpp:98
+#: widgets/ErrorDialog.cpp:96
msgid "Help"
msgstr "Ayuda"
-#: widgets/ErrorDialog.cpp:137
+#: widgets/ErrorDialog.cpp:166
msgid "<"
msgstr "<"
-#: widgets/ErrorDialog.cpp:138
+#: widgets/ErrorDialog.cpp:167
msgid ">"
msgstr ">"
-#: widgets/ErrorDialog.cpp:142
+#: widgets/ErrorDialog.cpp:171
msgid "Forwards"
msgstr "Avances"
-#: widgets/ErrorDialog.cpp:143
+#: widgets/ErrorDialog.cpp:172
msgid "Backwards"
-msgstr "Restrocesos"
+msgstr "Retrocesos"
-#: widgets/ErrorDialog.cpp:255
+#: widgets/ErrorDialog.cpp:275
msgid "Help on the Internet"
msgstr "Ayuda en Internet"
@@ -8842,53 +9879,43 @@ msgstr "Ayuda en Internet"
msgid "Grabber"
msgstr "Arrastrador"
-#: widgets/Grid.cpp:643
-#, c-format
-msgid "%d rows, %d columns"
-msgstr "%d filas, %d columnas"
-
-#: widgets/Grid.cpp:649 widgets/Grid.cpp:776
-#, c-format
-msgid "Row %d"
-msgstr "Fila %d"
-
-#: widgets/Grid.cpp:791
+#: widgets/Grid.cpp:723
msgid "Empty"
msgstr "VacÃo"
-#: widgets/Meter.cpp:395
+#: widgets/Meter.cpp:385
msgid "Enable Meter"
msgstr "Habilitar medidor"
-#: widgets/Meter.cpp:397
+#: widgets/Meter.cpp:387
msgid "Disable Meter"
msgstr "Desactivar medidor"
-#: widgets/Meter.cpp:400
+#: widgets/Meter.cpp:390
msgid "Stop Monitoring"
msgstr "Detener monitorización"
-#: widgets/Meter.cpp:402
+#: widgets/Meter.cpp:392
msgid "Start Monitoring"
msgstr "Comenzar monitorización"
-#: widgets/Meter.cpp:406
+#: widgets/Meter.cpp:396
msgid "Horizontal Stereo"
msgstr "Estéreo horizontal"
-#: widgets/Meter.cpp:407
+#: widgets/Meter.cpp:397
msgid "Vertical Stereo"
msgstr "Estéreo vertical"
-#: widgets/Meter.cpp:424
+#: widgets/Meter.cpp:414
msgid "Preferences..."
msgstr "Preferencias..."
-#: widgets/Meter.cpp:875
+#: widgets/Meter.cpp:864
msgid "Mix Volume"
msgstr "Mezcla de volumen"
-#: widgets/Meter.cpp:1144
+#: widgets/Meter.cpp:1133
msgid ""
"This determines how often the meter is refreshed.\n"
"If you have a slower PC you may want to select a\n"
@@ -8900,11 +9927,11 @@ msgstr ""
"baja (30 por segundo o menos), para que la calidad de audio\n"
"no se vea afectada por la presentación del medidor."
-#: widgets/Meter.cpp:1145
+#: widgets/Meter.cpp:1134
msgid "Meter refresh rate per second [1-100]: "
msgstr "Actualización por segundos del medidor [1-100]: "
-#: widgets/Meter.cpp:1146
+#: widgets/Meter.cpp:1135
msgid "Meter Preferences"
msgstr "Preferencias de medición"
@@ -8916,26 +9943,26 @@ msgstr "Seleccione una acción "
msgid "Please select an action"
msgstr "Seleccione una acción"
-#: widgets/ProgressDialog.cpp:97
+#: widgets/ProgressDialog.cpp:1067
msgid "Elapsed Time:"
msgstr "Tiempo transcurrido:"
-#: widgets/ProgressDialog.cpp:117
+#: widgets/ProgressDialog.cpp:1087
msgid "Remaining Time:"
msgstr "Tiempo restante:"
-#: widgets/ProgressDialog.cpp:134
+#: widgets/ProgressDialog.cpp:1115
msgid "Cancel"
msgstr "Cancelar"
-#: widgets/Ruler.cpp:1445 widgets/Ruler.cpp:1446
+#: widgets/Ruler.cpp:1588 widgets/Ruler.cpp:1589
msgid "Vertical Ruler"
msgstr "Regla vertical"
#. i18n-hint: Format string for displaying time in seconds. Change the comma
#. * in the middle to the 1000s separator for your locale, and the 'seconds'
#. * on the end to the word for seconds. Don't change the numbers.
-#: widgets/TimeTextCtrl.cpp:267
+#: widgets/TimeTextCtrl.cpp:269
msgid "01000,01000 seconds"
msgstr "01000,01000 segundos"
@@ -8944,13 +9971,13 @@ msgstr "01000,01000 segundos"
#. * abbreviation for minutes and 's' to the abbreviation for seconds. Don't
#. * change the numbers unless there aren't 60 seconds in a minute in your
#. * locale
-#: widgets/TimeTextCtrl.cpp:276
+#: widgets/TimeTextCtrl.cpp:278
msgid "0100 h 060 m 060 s"
msgstr "0100 h 060 m 060 s"
#. i18n-hint: Name of time display format that shows time in days, hours,
#. * minutes and seconds
-#: widgets/TimeTextCtrl.cpp:279
+#: widgets/TimeTextCtrl.cpp:281
msgid "dd:hh:mm:ss"
msgstr "dd:hh:mm:ss"
@@ -8959,13 +9986,13 @@ msgstr "dd:hh:mm:ss"
#. * for hours, 'm' to the abbreviation for minutes and 's' to the
#. * abbreviation for seconds. Don't change the numbers unless there aren't
#. * 24 hours in a day in your locale
-#: widgets/TimeTextCtrl.cpp:285
+#: widgets/TimeTextCtrl.cpp:287
msgid "0100 days 024 h 060 m 060 s"
msgstr "0100 dÃas 024 h 060 m 060 s"
#. i18n-hint: Name of time display format that shows time in hours,
-#. * minutes, seconds and hundreths of a second (1/100 second)
-#: widgets/TimeTextCtrl.cpp:288
+#. * minutes, seconds and hundredths of a second (1/100 second)
+#: widgets/TimeTextCtrl.cpp:290
msgid "hh:mm:ss + hundredths"
msgstr "hh:mm:ss + centésimas"
@@ -8974,13 +10001,13 @@ msgstr "hh:mm:ss + centésimas"
#. * 'm' to the abbreviation for minutes and 's' to the abbreviation for seconds (the
#. * hundredths are shown as decimal seconds) . Don't change the numbers
#. * unless there aren't 60 minutes in an hour in your locale
-#: widgets/TimeTextCtrl.cpp:294
+#: widgets/TimeTextCtrl.cpp:296
msgid "0100 h 060 m 060.0100 s"
msgstr "0100 h 060 m 060.0100 s"
#. i18n-hint: Name of time display format that shows time in hours,
#. * minutes, seconds and milliseconds (1/1000 second)
-#: widgets/TimeTextCtrl.cpp:288
+#: widgets/TimeTextCtrl.cpp:299
msgid "hh:mm:ss + milliseconds"
msgstr "hh:mm:ss + milisegundos"
@@ -8989,13 +10016,13 @@ msgstr "hh:mm:ss + milisegundos"
#. * abbreviation for minutes and 's' to the abbreviation for seconds (the
#. * milliseconds are shown as decimal seconds) . Don't change the numbers
#. * unless there aren't 60 minutes in an hour in your locale
-#: widgets/TimeTextCtrl.cpp:294
+#: widgets/TimeTextCtrl.cpp:305
msgid "0100 h 060 m 060.01000 s"
msgstr "0100 h 060 m 060.01000 s"
#. i18n-hint: Name of time display format that shows time in hours,
#. * minutes, seconds and samples (at the current project sample rate)
-#: widgets/TimeTextCtrl.cpp:297
+#: widgets/TimeTextCtrl.cpp:308
msgid "hh:mm:ss + samples"
msgstr "hh:mm:ss + muestras"
@@ -9004,13 +10031,13 @@ msgstr "hh:mm:ss + muestras"
#. * abbreviation for minutes, 's' to the abbreviation for seconds and
#. * translate samples . Don't change the numbers
#. * unless there aren't 60 seconds in a minute in your locale
-#: widgets/TimeTextCtrl.cpp:303
+#: widgets/TimeTextCtrl.cpp:314
msgid "0100 h 060 m 060 s+.# samples"
msgstr "0100 h 060 m 060 s+.# muestras"
#. i18n-hint: Name of time display format that shows time in samples (at the
#. * current project sample rate)
-#: widgets/TimeTextCtrl.cpp:306
+#: widgets/TimeTextCtrl.cpp:317
msgid "samples"
msgstr "muestras"
@@ -9018,13 +10045,13 @@ msgstr "muestras"
#. * Change the ',' to the 1000s separator for your locale, and translate
#. * samples. If 1000s aren't a base multiple for your number system, then you
#. * can change the numbers to an appropriate one, and put a 0 on the front
-#: widgets/TimeTextCtrl.cpp:311
+#: widgets/TimeTextCtrl.cpp:322
msgid "01000,01000,01000 samples|#"
msgstr "01000,01000,01000 muestras|#"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
#. * seconds and frames at 24 frames per second (commonly used for films)
-#: widgets/TimeTextCtrl.cpp:314
+#: widgets/TimeTextCtrl.cpp:325
msgid "hh:mm:ss + film frames (24 fps)"
msgstr "hh:mm:ss +fotogramas de pelÃcula (24 fps)"
@@ -9033,26 +10060,26 @@ msgstr "hh:mm:ss +fotogramas de pelÃcula (24 fps)"
#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
#. * for seconds and translate 'frames' . Don't change the numbers
#. * unless there aren't 60 seconds in a minute in your locale
-#: widgets/TimeTextCtrl.cpp:320
+#: widgets/TimeTextCtrl.cpp:331
msgid "0100 h 060 m 060 s+.24 frames"
msgstr "0100 h 060 m 060 s+.24 fotogramas"
#. i18n-hint: Name of time display format that shows time in frames (lots of
#. * frames) at 24 frames per second (commonly used for films)
-#: widgets/TimeTextCtrl.cpp:323
+#: widgets/TimeTextCtrl.cpp:334
msgid "film frames (24 fps)"
msgstr "fotogramas de pelÃcula (24 fps)"
#. i18n-hint: Format string for displaying time in frames at 24 frames per
#. * second. Translate 'frames' and leave the rest alone
-#: widgets/TimeTextCtrl.cpp:326
+#: widgets/TimeTextCtrl.cpp:337
msgid "01000,01000 frames|24"
msgstr "01000,01000 fotogramas|24"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
#. * seconds and frames at NTSC TV drop-frame rate (used for American /
-#. * Japananese TV, and very odd)
-#: widgets/TimeTextCtrl.cpp:330
+#. * Japanese TV, and very odd)
+#: widgets/TimeTextCtrl.cpp:341
msgid "hh:mm:ss + NTSC drop frames"
msgstr "hh:mm:ss + fotogramas NTSC con pérdida"
@@ -9060,14 +10087,14 @@ msgstr "hh:mm:ss + fotogramas NTSC con pérdida"
#. * and frames with NTSC drop frames. Change the 'h' to the abbreviation
#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
#. * for seconds and translate 'frames'. Leave the |N alone, it's important!
-#: widgets/TimeTextCtrl.cpp:335
+#: widgets/TimeTextCtrl.cpp:346
msgid "0100 h 060 m 060 s+.30 frames|N"
msgstr "0100 h 060 m 060 s+.30 fotogramas|N"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
#. * seconds and frames at NTSC TV non-drop-frame rate (used for American /
-#. * Japananese TV, and doesn't quite match wall time
-#: widgets/TimeTextCtrl.cpp:339
+#. * Japanese TV, and doesn't quite match wall time
+#: widgets/TimeTextCtrl.cpp:350
msgid "hh:mm:ss + NTSC non-drop frames"
msgstr "hh:mm:ss + fotogramas NTSC sin pérdida"
@@ -9076,26 +10103,26 @@ msgstr "hh:mm:ss + fotogramas NTSC sin pérdida"
#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
#. * for seconds and translate 'frames'. Leave the | .999000999 alone,
#. * the whole things really is slightly off-speed!
-#: widgets/TimeTextCtrl.cpp:345
+#: widgets/TimeTextCtrl.cpp:356
msgid "0100 h 060 m 060 s+.030 frames| .999000999"
msgstr "0100 h 060 m 060 s+.030 fotogramas| .999000999"
#. i18n-hint: Name of time display format that shows time in frames at NTSC
-#. * TV frame rate (used for American / Japananese TV
-#: widgets/TimeTextCtrl.cpp:348
+#. * TV frame rate (used for American / Japanese TV
+#: widgets/TimeTextCtrl.cpp:359
msgid "NTSC frames"
msgstr "fotogramas NTSC"
#. i18n-hint: Format string for displaying time in frames with NTSC frames.
#. * Translate 'frames' and leave the rest alone. That really is the frame
#. * rate!
-#: widgets/TimeTextCtrl.cpp:352
+#: widgets/TimeTextCtrl.cpp:363
msgid "01000,01000 frames|29.97002997"
msgstr "01000,01000 fotogramas|29.97002997"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
#. * seconds and frames at PAL TV frame rate (used for European TV)
-#: widgets/TimeTextCtrl.cpp:355
+#: widgets/TimeTextCtrl.cpp:366
msgid "hh:mm:ss + PAL frames (25 fps)"
msgstr "hh:mm:ss + fotogramas PAL (25 fps)"
@@ -9103,25 +10130,25 @@ msgstr "hh:mm:ss + fotogramas PAL (25 fps)"
#. * and frames with PAL TV frames. Change the 'h' to the abbreviation
#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
#. * for seconds and translate 'frames'. Nice simple time code!
-#: widgets/TimeTextCtrl.cpp:360
+#: widgets/TimeTextCtrl.cpp:371
msgid "0100 h 060 m 060 s+.25 frames"
msgstr "0100 h 060 m 060 s+.25 fotogramas"
#. i18n-hint: Name of time display format that shows time in frames at PAL
#. * TV frame rate (used for European TV
-#: widgets/TimeTextCtrl.cpp:363
+#: widgets/TimeTextCtrl.cpp:374
msgid "PAL frames (25 fps)"
msgstr "Fotogramas PAL (25 fps)"
#. i18n-hint: Format string for displaying time in frames with NTSC frames.
#. * Translate 'frames' and leave the rest alone.
-#: widgets/TimeTextCtrl.cpp:366
+#: widgets/TimeTextCtrl.cpp:377
msgid "01000,01000 frames|25"
msgstr "01000,01000 fotogramas|25"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
#. * seconds and frames at CD Audio frame rate (75 frames per second)
-#: widgets/TimeTextCtrl.cpp:369
+#: widgets/TimeTextCtrl.cpp:380
msgid "hh:mm:ss + CDDA frames (75 fps)"
msgstr "hh:mm:ss + fotogramas CDDA (75 fps)"
@@ -9129,31 +10156,29 @@ msgstr "hh:mm:ss + fotogramas CDDA (75 fps)"
#. * and frames with CD Audio frames. Change the 'h' to the abbreviation
#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
#. * for seconds and translate 'frames'.
-#: widgets/TimeTextCtrl.cpp:374
+#: widgets/TimeTextCtrl.cpp:385
msgid "0100 h 060 m 060 s+.75 frames"
msgstr "0100 h 060 m 060 s+.75 fotogramas"
#. i18n-hint: Name of time display format that shows time in frames at CD
#. * Audio frame rate (75 frames per second)
-#: widgets/TimeTextCtrl.cpp:377
+#: widgets/TimeTextCtrl.cpp:388
msgid "CDDA frames (75 fps)"
msgstr "Fotogramas CDDA (75 fps)"
#. i18n-hint: Format string for displaying time in frames with CD Audio
#. * frames. Translate 'frames' and leave the rest alone
-#: widgets/TimeTextCtrl.cpp:380
+#: widgets/TimeTextCtrl.cpp:391
msgid "01000,01000 frames|75"
msgstr "01000,01000 fotogramas|75"
-#: widgets/TimeTextCtrl.cpp:451
+#: widgets/TimeTextCtrl.cpp:470
msgid "Use right mouse button or context key to change format"
-msgstr "Utilice el botón derecho del ratón o la tecla de contexto para cambiar el formato"
-
-#: widgets/TimeTextCtrl.cpp:1485
-msgid "Time Control"
-msgstr "Control de tiempo"
+msgstr ""
+"Utilice el botón derecho del ratón o la tecla de contexto para cambiar el "
+"formato"
-#: widgets/Warning.cpp:64
+#: widgets/Warning.cpp:61
msgid "Don't show this warning again"
msgstr "No volver a mostrar esta advertencia"
@@ -9172,3 +10197,15 @@ msgstr "Error: %hs en la lÃnea %lu"
msgid "Could not load file: \"%s\""
msgstr "No se ha podido abrir el archivo: \"%s\""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr "Error al recargar el archivo"
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr "Error al cerrar el archivo"
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr "Error al escribir el archivo"
+
diff --git a/locale/eu.po b/locale/eu.po
index f3faa65..f530cee 100644
--- a/locale/eu.po
+++ b/locale/eu.po
@@ -32,11 +32,11 @@ msgid "Audacity is a free program written by a team of volunteer <a href=\"http:
msgstr ""
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#. i18n-hint: The translation of "translator_credits" will appear
@@ -86,7 +86,7 @@ msgid "Special thanks:"
msgstr "Eskerrik asko hauei:"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
msgstr ""
#: AboutDialog.cpp:320
@@ -228,10 +228,20 @@ msgstr "Sarrerako metroa"
msgid "Output Meter"
msgstr "Irteerako metroa"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
+#: ../src/Menus.cpp:141
+msgid "&New"
+msgstr "&Berria"
+
+#: ../src/Menus.cpp:143
+msgid "&Open..."
+msgstr "&Ireki..."
+
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
+
#: AudacityApp.cpp:534 Menus.cpp:575
-msgid "&Preferences...\tCtrl+,"
+msgid "&Preferences..."
msgstr ""
#: ../src/AudacityApp.cpp:626 ../src/AudacityApp.cpp:696
@@ -353,14 +363,14 @@ msgstr "Errorea: "
msgid "Error Initializing Audio"
msgstr "Errorea audioa hasieratzean"
-#: AudioIO.cpp:1236
-msgid "Latency problem"
+#: AudioIO.cpp:1225
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
+"Audacity has brought it back to start at zero.\n"
+"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
msgstr ""
#: AudioIO.cpp:1236
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
-"Audacity has brought it back to start at zero.\n"
-"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
+msgid "Latency problem"
msgstr ""
#: AutoRecovery.cpp:40
@@ -586,8 +596,9 @@ msgstr ""
msgid "C&hain (Double-Click or press SPACE to edit)"
msgstr ""
-#: BatchProcessDialog.cpp:450
-msgid "No"
+#. i18n-hint: This is the number of the command in the list
+#: BatchProcessDialog.cpp:453
+msgid "Num"
msgstr ""
#: BatchProcessDialog.cpp:456
@@ -905,11 +916,11 @@ msgstr "Laukizuzena"
msgid "FFmpeg support not compiled in"
msgstr ""
-#: FFmpeg.cpp:101
+#: FFmpeg.cpp:103
msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
#: FFmpeg.cpp:104
@@ -965,11 +976,12 @@ msgstr ""
msgid "FFmpeg not found"
msgstr ""
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
#: FFmpeg.h:109
@@ -1050,11 +1062,24 @@ msgstr ""
msgid "Export"
msgstr ""
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
#: ../src/Benchmark.cpp:223 ../src/FreqWindow.cpp:123
#: ../src/effects/ClickRemoval.cpp:371 ../src/effects/NoiseRemoval.cpp:463
msgid "Close"
msgstr "Itxi"
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr ""
+
#: ../src/effects/Compressor.cpp:385 ../src/effects/Compressor.cpp:393
#: ../src/widgets/Meter.cpp:293
msgid "dB"
@@ -1065,6 +1090,15 @@ msgstr "dB"
msgid "Hz"
msgstr "Hz"
+#: ../src/Menus.cpp:2369
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "Espektroa ikusteko, hautatutako pista guztiek lagintze-maiztasun bera izan behar dute."
+
+#: ../src/Menus.cpp:2395
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "Audio gehiegi hautatu duzu. Audioaren lehen %.1f segundoak baino ez dira analizatuko."
+
#: ../src/FreqWindow.cpp:463
msgid "Not enough data selected."
msgstr "Ez dira nahikoa datu hautatu."
@@ -1104,6 +1138,21 @@ msgstr "Maiztasuna (Hz)\tMaila (dB)"
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "Atzerapena (segundo)\tMaiztasuna (Hz)\tMaila"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr ""
+
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr ""
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr ""
@@ -1181,7 +1230,7 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr ""
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
msgstr ""
#: HelpText.cpp:244
@@ -1205,7 +1254,7 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr ""
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
msgstr ""
#: HelpText.cpp:383
@@ -1274,6 +1323,14 @@ msgstr ""
msgid "GB"
msgstr ""
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
#: LabelDialog.cpp:50
msgid "Track"
msgstr ""
@@ -1387,21 +1444,13 @@ msgstr "Audacity proiektua irekitzen"
msgid "&File"
msgstr "&Fitxategia"
-#: ../src/Menus.cpp:141
-msgid "&New\tCtrl+N"
-msgstr "&Berria\tKtrl+N"
-
-#: ../src/Menus.cpp:143
-msgid "&Open...\tCtrl+O"
-msgstr "&Ireki...\tKtrl+O"
-
#: ../src/Menus.cpp:145
-msgid "&Close\tCtrl+W"
-msgstr "&Itxi\tKtrl+W"
+msgid "&Close"
+msgstr "&Itxi"
#: ../src/Menus.cpp:146
-msgid "&Save Project\tCtrl+S"
-msgstr "&Gorde proiektua\tKtrl+S"
+msgid "&Save Project"
+msgstr "&Gorde proiektua"
#: ../src/Menus.cpp:150
msgid "Save Project &As..."
@@ -1424,7 +1473,7 @@ msgid "&Import"
msgstr ""
#: Menus.cpp:236
-msgid "&Audio...\tCtrl+Shift+I"
+msgid "&Audio..."
msgstr ""
#: Menus.cpp:237
@@ -1455,8 +1504,8 @@ msgstr "Esportatu &hainbat..."
msgid "Export MIDI..."
msgstr ""
-#: Menus.cpp:290
-msgid "CleanSpeech C&hain..."
+#: Menus.cpp:352
+msgid "Appl&y Chain..."
msgstr ""
#: Menus.cpp:340 Menus.cpp:354
@@ -1471,10 +1520,6 @@ msgstr ""
msgid "I&mport CleanSpeech Presets..."
msgstr ""
-#: Menus.cpp:352
-msgid "Appl&y Chain..."
-msgstr ""
-
#: Menus.cpp:358
msgid "&Upload File..."
msgstr ""
@@ -1489,7 +1534,7 @@ msgid "&Print..."
msgstr ""
#: Menus.cpp:382 Menus.cpp:385
-msgid "E&xit\tCtrl+Q"
+msgid "E&xit"
msgstr ""
#: ../src/Menus.cpp:227
@@ -1497,63 +1542,63 @@ msgid "&Edit"
msgstr "&Editatu"
#: ../src/Menus.cpp:231
-msgid "&Undo\tCtrl+Z"
-msgstr "&Desegin\tKtrl+Z"
+msgid "&Undo"
+msgstr "&Desegin"
#: ../src/Menus.cpp:239
msgid "&Redo"
msgstr "&Berregin"
#: ../src/Menus.cpp:252
-msgid "Cu&t\tCtrl+X"
-msgstr "Eba&ki\tKtrl+X"
+msgid "Cu&t"
+msgstr "Eba&ki"
#: Menus.cpp:420
-msgid "Spl&it Cut\tCtrl+Alt+X"
+msgid "Spl&it Cut"
msgstr ""
#: ../src/Menus.cpp:253
-msgid "&Copy\tCtrl+C"
-msgstr "&Kopiatu\tKtrl+C"
+msgid "&Copy"
+msgstr "&Kopiatu"
#: ../src/Menus.cpp:254
-msgid "&Paste\tCtrl+V"
-msgstr "&Itsatsi\tKtrl+V"
+msgid "&Paste"
+msgstr "&Itsatsi"
#: Menus.cpp:426
-msgid "Tri&m\tCtrl+T"
+msgid "Tri&m"
msgstr ""
#: ../src/Menus.cpp:260
-msgid "&Delete\tCtrl+K"
-msgstr "&Ezabatu\tKtrl+K"
+msgid "&Delete"
+msgstr "&Ezabatu"
#: Menus.cpp:429
-msgid "Split D&elete\tCtrl+Alt+K"
+msgid "Split D&elete"
msgstr ""
#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
+msgid "Silence Audi&o"
msgstr ""
#: Menus.cpp:432
-msgid "Sp&lit\tCtrl+I"
+msgid "Sp&lit"
msgstr ""
#: Menus.cpp:342
-msgid "Split Ne&w\tCtrl+Alt+I"
+msgid "Split Ne&w"
msgstr ""
#: Menus.cpp:442
-msgid "&Join\tCtrl+J"
+msgid "&Join"
msgstr ""
#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
+msgid "Detac&h at Silences"
msgstr ""
#: Menus.cpp:445
-msgid "Duplic&ate\tCtrl+D"
+msgid "Duplic&ate"
msgstr ""
#: Menus.cpp:400 Menus.cpp:639
@@ -1566,47 +1611,32 @@ msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:460
-msgid "&Cut\tAlt+X"
+msgid "&Cut"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:465
-msgid "&Split Cut\tShift+Alt+X"
+msgid "&Split Cut"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:470
-msgid "Co&py\tShift+Alt+C"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:476
-msgid "&Delete\tAlt+K"
+msgid "Co&py"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:481
-msgid "Sp&lit Delete\tShift+Alt+K"
+msgid "Sp&lit Delete"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:486
-msgid "Sile&nce\tAlt+L"
+msgid "Sile&nce"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:492
-msgid "Spli&t\tAlt+I"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:497
-msgid "&Join\tAlt+J"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
+msgid "Spli&t"
msgstr ""
#: Menus.cpp:456
@@ -1614,33 +1644,33 @@ msgid "&Select"
msgstr ""
#: ../src/Menus.cpp:269
-msgid "&All\tCtrl+A"
-msgstr "&Dena\tKtrl+A"
+msgid "&All"
+msgstr "&Dena"
#: Menus.cpp:415
-msgid "&None\tCtrl+Shift+A"
+msgid "&None"
msgstr ""
#: Menus.cpp:462
-msgid "&Left at Playback Position\t["
+msgid "&Left at Playback Position"
msgstr ""
#: Menus.cpp:463
-msgid "&Right at Playback Position\t]"
+msgid "&Right at Playback Position"
msgstr ""
#: Menus.cpp:467
-msgid "Track &Start to Cursor\tShift+J"
+msgid "Track &Start to Cursor"
msgstr ""
#: Menus.cpp:468
-msgid "Cursor to Track &End\tShift+K"
+msgid "Cursor to Track &End"
msgstr ""
#: Menus.cpp:525
#, fuzzy
-msgid "Find &Zero Crossings\tZ"
-msgstr "Bilatu zeroak\tZ"
+msgid "Find &Zero Crossings"
+msgstr "Bilatu zeroak"
#: Menus.cpp:476
msgid "Mo&ve Cursor"
@@ -1657,11 +1687,11 @@ msgid "to Selection En&d"
msgstr "hautapenaren amaierara"
#: Menus.cpp:483
-msgid "to Track &Start\tJ"
+msgid "to Track &Start"
msgstr ""
#: Menus.cpp:484
-msgid "to Track &End\tK"
+msgid "to Track &End"
msgstr ""
#: Menus.cpp:491
@@ -1684,29 +1714,8 @@ msgstr ""
msgid "&Unlock"
msgstr ""
-#: ../src/Menus.cpp:311
-msgid "Turn Snap-To On"
-msgstr "Aktibatu 'Atxiki honi'"
-
-#: ../src/Menus.cpp:312
-msgid "Turn Snap-To Off"
-msgstr "Desaktibatu 'Atxiki honi'"
-
-#: ../src/Menus.cpp:313
-msgid "Turn Grid Snap On"
-msgstr "Aktibatu 'Atxiki saretari'"
-
-#: ../src/Menus.cpp:314
-msgid "Turn Grid Snap Off"
-msgstr "Desaktibatu 'Atxiki saretari'"
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr ""
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
+msgid "Pre&ferences..."
msgstr ""
#: ../src/Menus.cpp:345
@@ -1714,35 +1723,35 @@ msgid "&View"
msgstr "&Ikusi"
#: ../src/Menus.cpp:347
-msgid "Zoom &In\tCtrl+1"
-msgstr "Handiagotu &zooma\tKtrl+1"
+msgid "Zoom &In"
+msgstr "Handiagotu &zooma"
#: ../src/Menus.cpp:350
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "Zoom &normala\tKtrl+2"
+msgid "Zoom &Normal"
+msgstr "Zoom &normala"
#: ../src/Menus.cpp:351
-msgid "Zoom &Out\tCtrl+3"
-msgstr "Txikiagotu zoo&ma\tKtrl+3"
+msgid "Zoom &Out"
+msgstr "Txikiagotu zoo&ma"
#: ../src/Menus.cpp:354
-msgid "&Fit in Window\tCtrl+F"
-msgstr "&Doitu leihoari\tKtrl+F"
+msgid "&Fit in Window"
+msgstr "&Doitu leihoari"
#: ../src/Menus.cpp:355
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "Doitu &bertikalki\tKtrl+Maius+F"
+msgid "Fit &Vertically"
+msgstr "Doitu &bertikalki"
#: ../src/Menus.cpp:356
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "&Zooma hautapenera\tKtrl+E"
+msgid "&Zoom to Selection"
+msgstr "&Zooma hautapenera"
#: Menus.cpp:603
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
+msgid "&Collapse All Tracks"
msgstr ""
#: Menus.cpp:604
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
+msgid "E&xpand All Tracks"
msgstr ""
#: Menus.cpp:551
@@ -1804,39 +1813,39 @@ msgid "T&ransport"
msgstr ""
#: Menus.cpp:591
-msgid "Play\tSpace"
+msgid "Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
+msgid "&Loop Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Pause\tP"
+msgid "&Pause"
msgstr ""
#: Menus.cpp:596
-msgid "&Stop\tSpace"
+msgid "&Stop"
msgstr ""
#: ../src/Menus.cpp:569
-msgid "Skip to Start\tHome"
-msgstr "Salto egin hasierara\tEtxea"
+msgid "Skip to Start"
+msgstr "Salto egin hasierara"
#: ../src/Menus.cpp:570
-msgid "Skip to End\tEnd"
-msgstr "Salto egin amaierara\tAmaiera"
+msgid "Skip to End"
+msgstr "Salto egin amaierara"
#: Menus.cpp:600
-msgid "&Record\tR"
+msgid "&Record"
msgstr ""
#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
+msgid "&Timer Record..."
msgstr ""
#: Menus.cpp:604
-msgid "Append Record\tShift+R"
+msgid "Append Record"
msgstr ""
#: Menus.cpp:607
@@ -1864,7 +1873,7 @@ msgid "Add &New"
msgstr ""
#: Menus.cpp:643
-msgid "&Audio Track\tCtrl+Shift+N"
+msgid "&Audio Track"
msgstr ""
#: Menus.cpp:644
@@ -1881,7 +1890,7 @@ msgid "Mi&x and Render"
msgstr ""
#: Menus.cpp:564
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
+msgid "Mix and Render to New Track"
msgstr ""
#: Menus.cpp:662
@@ -1893,11 +1902,11 @@ msgid "Remo&ve Tracks"
msgstr "Ke&ndu pistak"
#: Menus.cpp:667
-msgid "&Mute All Tracks\tCtrl+U"
+msgid "&Mute All Tracks"
msgstr ""
#: Menus.cpp:668
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
+msgid "&UnMute All Tracks"
msgstr ""
#: ../src/Menus.cpp:405
@@ -1948,19 +1957,18 @@ msgstr ""
msgid "Synchronize MIDI with Audio"
msgstr ""
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
+#: Menus.cpp:686
+msgid "&Link Audio and Label Tracks"
msgstr ""
-#: Menus.cpp:705
-#, fuzzy
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "Gehitu etiketa hautapenari\tKtrl+B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr ""
#: Menus.cpp:706
#, fuzzy
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "Gehitu etiketa erreproduzio-posizioari\tKtrl+M"
+msgid "Add Label At &Playback Position"
+msgstr "Gehitu etiketa erreproduzio-posizioari"
#: Menus.cpp:716
msgid "S&ort tracks"
@@ -1986,14 +1994,14 @@ msgstr ""
msgid "Effe&ct"
msgstr "Efe&ktua"
-#: ../src/Menus.cpp:468
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "Errepikatu azken efektua\tKtrl+R"
-
#: ../src/Menus.cpp:494
msgid "&Analyze"
msgstr "&Analizatu"
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
+
#: Menus.cpp:692
msgid "Plot Spectrum..."
msgstr ""
@@ -2011,8 +2019,8 @@ msgstr ""
msgid "&Show Welcome Message..."
msgstr ""
-#: Menus.cpp:736
-msgid "&Index..."
+#: Menus.cpp:958
+msgid "&Help..."
msgstr ""
#: Menus.cpp:959
@@ -2031,181 +2039,149 @@ msgstr "&Exekutatu Benchmark..."
msgid "&Audio Device Info..."
msgstr ""
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
msgstr ""
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
msgstr ""
#: ../src/Menus.cpp:549
-msgid "Selection Tool\tF1"
-msgstr "Hautapen-tresna\tF1"
+msgid "Selection Tool"
+msgstr "Hautapen-tresna"
#: ../src/Menus.cpp:550
-msgid "Envelope Tool\tF2"
-msgstr "Bilkari-tresna\tF2"
+msgid "Envelope Tool"
+msgstr "Bilkari-tresna"
#: ../src/Menus.cpp:551
-msgid "Draw Tool\tF3"
-msgstr "Marrazteko tresna\tF3"
+msgid "Draw Tool"
+msgstr "Marrazteko tresna"
#: ../src/Menus.cpp:552
-msgid "Zoom Tool\tF4"
-msgstr "Zoomaren tresna\tF4"
+msgid "Zoom Tool"
+msgstr "Zoomaren tresna"
#: ../src/Menus.cpp:553
-msgid "Time Shift Tool\tF5"
-msgstr "Lerratzeko tresna\tF5"
+msgid "Time Shift Tool"
+msgstr "Lerratzeko tresna"
#: ../src/Menus.cpp:554
-msgid "Multi Tool\tF6"
-msgstr "Tresna anitz\tF6"
+msgid "Multi Tool"
+msgstr "Tresna anitz"
#: ../src/Menus.cpp:556
-msgid "Next Tool\tD"
-msgstr "Hurrengo tresna\tD"
+msgid "Next Tool"
+msgstr "Hurrengo tresna"
#: ../src/Menus.cpp:557
-msgid "Previous Tool\tA"
-msgstr "Aurreko tresna\tA"
+msgid "Previous Tool"
+msgstr "Aurreko tresna"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
-msgstr ""
-
-#: ../src/Menus.cpp:560
-msgid "Stop\tS"
-msgstr "Gelditu\tS"
-
-#: ../src/Menus.cpp:561
-msgid "Pause\tP"
-msgstr "Pausarazi\tP"
-
-#: ../src/Menus.cpp:562
-msgid "Record\tR"
-msgstr "Grabatu\tR"
-
-#: Menus.cpp:999
-msgid "Record Append\tShift+R"
+msgid "Play/Stop"
msgstr ""
#: Menus.cpp:1001
-msgid "Play/Stop and Set Cursor\tShift+A"
+msgid "Play/Stop and Set Cursor"
msgstr ""
#: ../src/Menus.cpp:564
-msgid "Play One Second\t1"
-msgstr "Erreproduzitu segundo bat\t1"
+msgid "Play One Second"
+msgstr "Erreproduzitu segundo bat"
#: ../src/Menus.cpp:565
-msgid "Play To Selection\tB"
-msgstr "Erreproduzitu hautapenera arte\tB"
-
-#: ../src/Menus.cpp:566
-msgid "Play Looped\tL"
-msgstr "Erreproduzitu begiztan\tL"
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
+msgid "Play To Selection"
+msgstr "Erreproduzitu hautapenera arte"
#: Menus.cpp:873
-msgid "Play Cut Preview\tC"
+msgid "Play Cut Preview"
msgstr ""
#: ../src/Menus.cpp:572
-msgid "Selection to Start\tShift+Home"
-msgstr "Hautatu hasieraraino\tMaius+Etxea"
+msgid "Selection to Start"
+msgstr "Hautatu hasieraraino"
#: ../src/Menus.cpp:573
-msgid "Selection to End\tShift+End"
-msgstr "Hautatu amaieraraino\tMaius+Amaiera"
+msgid "Selection to End"
+msgstr "Hautatu amaieraraino"
#: ../src/Menus.cpp:575
-msgid "DeleteKey\tBackspace"
-msgstr "EzabatuTekla\tAtzera_tekla"
+msgid "DeleteKey"
+msgstr "EzabatuTekla"
#: ../src/Menus.cpp:580
-msgid "DeleteKey2\tDelete"
-msgstr "EzabatuTekla2\tEzabatu"
+msgid "DeleteKey2"
+msgstr "EzabatuTekla2"
-#: Menus.cpp:892
-msgid "Seek left short period during playback\tLeft"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
msgstr ""
-#: Menus.cpp:893
-msgid "Seek right short period during playback\tRight"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
msgstr ""
-#: Menus.cpp:894
-msgid "Seek left long period during playback\tShift+Left"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
msgstr ""
-#: Menus.cpp:895
-msgid "Seek right long period during playback\tShift+Right"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
msgstr ""
#: Menus.cpp:899
-msgid "Move Focus to Previous Track\tUp"
+msgid "Move Focus to Previous Track"
msgstr ""
-#: Menus.cpp:900
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
msgstr ""
#: Menus.cpp:901
-msgid "Move Focus to Next Track\tDown"
+msgid "Move Focus to Next Track"
msgstr ""
-#: Menus.cpp:902
-msgid "Move Focus to Next and Change Selection\tShift+Down"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
msgstr ""
#: Menus.cpp:903
-msgid "Toggle Focused Track\tReturn"
-msgstr ""
-
-#: Menus.cpp:904
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr ""
-
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
+msgid "Toggle Focused Track"
msgstr ""
#: ../src/Menus.cpp:585
-msgid "Cursor Left\tLeft"
-msgstr "Kurtsorea ezkerrean\tEzk."
+msgid "Cursor Left"
+msgstr "Kurtsorea ezkerrean"
#: ../src/Menus.cpp:586
-msgid "Cursor Right\tRight"
-msgstr "Kurtsorea eskuinean\tEsk."
+msgid "Cursor Right"
+msgstr "Kurtsorea eskuinean"
#: Menus.cpp:820
-msgid "Cursor Short Jump Left\t,"
+msgid "Cursor Short Jump Left"
msgstr ""
#: Menus.cpp:821
-msgid "Cursor Short Jump Right\t."
+msgid "Cursor Short Jump Right"
msgstr ""
#: Menus.cpp:822
-msgid "Cursor Long Jump Left\tShift+,"
+msgid "Cursor Long Jump Left"
msgstr ""
#: Menus.cpp:823
-msgid "Cursor Long Jump Right\tShift+."
+msgid "Cursor Long Jump Right"
msgstr ""
#: ../src/Menus.cpp:587
-msgid "Selection Extend Left\tShift+Left"
-msgstr "Zabaldu hautapena ezkerrera\tMaius+Ezkerra"
+msgid "Selection Extend Left"
+msgstr "Zabaldu hautapena ezkerrera"
#: ../src/Menus.cpp:588
-msgid "Selection Extend Right\tShift+Right"
-msgstr "Zabaldu hautapena eskuinera\tMaius+Eskuina"
+msgid "Selection Extend Right"
+msgstr "Zabaldu hautapena eskuinera"
#: Menus.cpp:828
msgid "Set (or Extend) Left Selection"
@@ -2216,51 +2192,51 @@ msgid "Set (or Extend) Right Selection"
msgstr ""
#: ../src/Menus.cpp:589
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "Murriztu hautapena ezkerrera\tKtrl+Maius+Eskuina"
+msgid "Selection Contract Left"
+msgstr "Murriztu hautapena ezkerrera"
#: ../src/Menus.cpp:590
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "Murriztu hautapena eskuinera\tKtrl+Maius+Ezkerra"
+msgid "Selection Contract Right"
+msgstr "Murriztu hautapena eskuinera"
#: Menus.cpp:916
-msgid "Change pan on focused track\tShift+P"
+msgid "Change pan on focused track"
msgstr ""
#: Menus.cpp:917
-msgid "Pan left on focused track\tAlt+Shift+Left"
+msgid "Pan left on focused track"
msgstr ""
#: Menus.cpp:918
-msgid "Pan right on focused track\tAlt+Shift+Right"
+msgid "Pan right on focused track"
msgstr ""
#: Menus.cpp:919
-msgid "Change gain on focused track\tShift+G"
+msgid "Change gain on focused track"
msgstr ""
#: Menus.cpp:920
-msgid "Increase gain on focused track\tAlt+Shift+Up"
+msgid "Increase gain on focused track"
msgstr ""
#: Menus.cpp:921
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
+msgid "Decrease gain on focused track"
msgstr ""
#: Menus.cpp:922
-msgid "Open menu on focused track\tShift+M"
+msgid "Open menu on focused track"
msgstr ""
#: Menus.cpp:923
-msgid "Mute/Unmute focused track\tShift+U"
+msgid "Mute/Unmute focused track"
msgstr ""
#: Menus.cpp:924
-msgid "Solo/Unsolo focused track\tShift+S"
+msgid "Solo/Unsolo focused track"
msgstr ""
#: Menus.cpp:925
-msgid "Close focused track\tShift+C"
+msgid "Close focused track"
msgstr ""
#: Menus.cpp:845
@@ -2272,7 +2248,35 @@ msgid "Snap To Off"
msgstr ""
#: Menus.cpp:1071
-msgid "Full screen on/off\tF11"
+msgid "Full screen on/off"
+msgstr ""
+
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr ""
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr ""
+
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr ""
+
+#: Menus.cpp:1074
+msgid "Adjust input source"
msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
@@ -2333,8 +2337,8 @@ msgstr "Pista bat hautatu behar duzu lehenbizi."
#: ../src/Menus.cpp:1248
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "Errepikatu %s\tKtrl+R"
+msgid "Repeat %s"
+msgstr "Errepikatu %s"
#: ../src/Menus.cpp:1352
msgid "There are no label tracks to export."
@@ -2541,15 +2545,6 @@ msgstr ""
msgid "Split at labels"
msgstr "Zatitu etiketetan"
-#: ../src/Menus.cpp:2369
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "Espektroa ikusteko, hautatutako pista guztiek lagintze-maiztasun bera izan behar dute."
-
-#: ../src/Menus.cpp:2395
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "Audio gehiegi hautatu duzu. Audioaren lehen %.1f segundoak baino ez dira analizatuko."
-
#: ../src/Menus.cpp:2660
#, c-format
msgid "Imported labels from '%s'"
@@ -2769,6 +2764,10 @@ msgstr "Arazo bat gertatu da inprimatzean."
msgid "Print"
msgstr "Inprimatu"
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr ""
+
#: Project.cpp:573
msgid "Main Mix"
msgstr ""
@@ -2782,8 +2781,7 @@ msgstr ""
msgid "(Recovered)"
msgstr ""
-#: ../src/ControlToolBar.cpp:469 ../src/Project.cpp:1707
-#: ../src/TrackPanel.cpp:1208
+#: ../src/Menus.cpp:562
msgid "Record"
msgstr "Grabatu"
@@ -2808,8 +2806,8 @@ msgstr ""
msgid "Save changes?"
msgstr "Aldaketak gorde nahi dituzu?"
-#: Project.cpp:1684
-msgid "All files|*.*|All supported files|"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
msgstr ""
#: ../src/Menus.cpp:2595 ../src/Project.cpp:1738
@@ -2839,6 +2837,17 @@ msgstr ""
msgid "Opening old project file"
msgstr ""
+#: Project.cpp:2073
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr ""
+
#: ../src/Project.cpp:1821 ../src/Project.cpp:1829
msgid "Error opening file"
msgstr "Errorea fitxategia irekitzean"
@@ -2895,10 +2904,12 @@ msgstr "Fitxategia Audacity %s erabiliz gorde zen.\n"
msgid "Can't open project file"
msgstr "Ezin da proiektuaren fitxategia ireki"
-#: Project.cpp:2314
+#: Project.cpp:2484
#, c-format
msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
msgstr ""
@@ -2918,16 +2929,22 @@ msgstr ""
msgid "Warning empty project"
msgstr ""
-#: Project.cpp:2591
+#: Project.cpp:2792
#, c-format
msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+"is not writable or the disk is full."
msgstr ""
#: ../src/Project.cpp:2148 ../src/Project.cpp:2160
msgid "Error saving project"
msgstr "Errorea proiektua gordetzean"
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
#: ../src/Project.cpp:2200
#, c-format
msgid "Saved %s"
@@ -3086,6 +3103,163 @@ msgstr ""
msgid "32-bit float"
msgstr ""
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
+
+#: ../src/export/ExportMultiple.cpp:600 ../src/prefs/DirectoriesPrefs.cpp:82
+msgid "Choose..."
+msgstr "Aukeratu..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
+
+#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
+msgid "false"
+msgstr ""
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:82
+msgid "Control"
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:58
+msgid "Mixer"
+msgstr ""
+
+#: toolbars/MeterToolBar.cpp:49
+msgid "Meter"
+msgstr ""
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
+#: toolbars/DeviceToolBar.cpp:54
+msgid "Device"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:81
+msgid "Transcription"
+msgstr ""
+
+#: TrackPanel.cpp:452 TrackPanel.cpp:453
+msgid "Track Panel"
+msgstr ""
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: ../src/export/ExportMultiple.cpp:636
+msgid "Tracks"
+msgstr "Pistak"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
#: Screenshot.cpp:384
msgid "Saved "
msgstr ""
@@ -3094,6 +3268,10 @@ msgstr ""
msgid "Error trying to save file: "
msgstr ""
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
#: Sequence.cpp:732 Sequence.cpp:742 Sequence.cpp:749
msgid "Gap detected in project file\n"
msgstr ""
@@ -3232,6 +3410,10 @@ msgstr ""
msgid "Save Metadata As:"
msgstr ""
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
#: Theme.cpp:629
#, c-format
msgid "Audacity could not write file:\n"
@@ -3304,6 +3486,14 @@ msgstr ""
msgid "Audacity Timer Record"
msgstr ""
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
#: SmartRecordDialog.cpp:223
msgid "Recording start"
msgstr ""
@@ -3343,10 +3533,6 @@ msgstr ""
msgid "Audacity Timer Record - Waiting for Start"
msgstr ""
-#: TrackPanel.cpp:452 TrackPanel.cpp:453
-msgid "Track Panel"
-msgstr ""
-
#: ../src/AStatus.cpp:81 ../src/TrackPanel.cpp:822
#: ../src/prefs/FileFormatPrefs.cpp:105 ../src/prefs/QualityPrefs.cpp:91
msgid "Other..."
@@ -3403,6 +3589,10 @@ msgstr "Bihurtu pista estereo"
msgid "Split Stereo Track"
msgstr "Zatitu pista estereoa"
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr ""
+
#: ../src/TrackPanel.cpp:846
msgid "Set Sample Format"
msgstr "Ezarri lagin-formatua"
@@ -3597,14 +3787,6 @@ msgstr ""
msgid "Adjusted gain"
msgstr ""
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr ""
-
#: TrackPanel.cpp:5428
msgid "Can't delete track with active audio"
msgstr ""
@@ -3639,6 +3821,11 @@ msgstr "Kanala"
msgid "Split stereo track '%s'"
msgstr "Zatitu '%s' pista estereoa"
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
#: ../src/TrackPanel.cpp:4153
#, c-format
msgid "Made '%s' a stereo track"
@@ -3715,6 +3902,10 @@ msgstr ""
msgid "Face size"
msgstr ""
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr ""
+
#: ../src/TrackPanel.cpp:4701
msgid "Mute"
msgstr "Mututu"
@@ -3793,8 +3984,9 @@ msgstr "Pluginak 1(e)tik %i(e)ra"
msgid "Plugins %i to %i"
msgstr "Pluginak %i(e)tik %i(e)ra"
-#: commands/CommandManager.cpp:857
-msgid "Disallowed for some reason. Try selecting some audio first?"
+#: commands/CommandManager.cpp:923
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
msgstr ""
#: commands/CommandManager.cpp:724
@@ -4245,12 +4437,11 @@ msgstr ""
msgid "Decay Time"
msgstr ""
-#: ../src/effects/Compressor.cpp:469
-msgid "Normalize to 0dB after compressing"
-msgstr "Normalizatu 0dB-ra konprimitu ondoren"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
+msgstr ""
#: effects/Compressor.cpp:563
-#, c-format
#, fuzzy
msgid "Threshold %d dB"
msgstr "Atalasea: %d dB"
@@ -4281,7 +4472,6 @@ msgid "%.1f:1"
msgstr ""
#: effects/Compressor.cpp:575
-#, c-format
#, fuzzy
msgid "Attack Time %.1f secs"
msgstr "Eraso-denbora: %.1f s"
@@ -4304,6 +4494,10 @@ msgstr "Konpresorea..."
msgid "Applying Dynamic Range Compression..."
msgstr "Tarte dinamikoaren konpresioa aplikatzen..."
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
msgstr ""
@@ -4323,19 +4517,6 @@ msgid "Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr ""
-
#: effects/Contrast.cpp:231
msgid "Contrast Analyzer"
msgstr ""
@@ -4369,6 +4550,11 @@ msgstr ""
msgid "Foreground end time"
msgstr ""
+#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
+#: effects/Contrast.cpp:289
+msgid "Measured"
+msgstr ""
+
#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
msgid "Use selection"
msgstr ""
@@ -4413,16 +4599,8 @@ msgstr ""
msgid "Help for WCAG2 Audio Contrast Analyzer"
msgstr ""
-#: toolbars/ControlToolBar.cpp:82
-msgid "Control"
-msgstr ""
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
msgstr ""
#: effects/Contrast.cpp:328 effects/Contrast.cpp:336 effects/Contrast.cpp:344
@@ -4533,18 +4711,6 @@ msgstr ""
msgid "Data gathered"
msgstr ""
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr ""
-
#: effects/DtmfGen.cpp:47
msgid "DTMF Tone Generator"
msgstr ""
@@ -4669,6 +4835,10 @@ msgstr ""
msgid "custom"
msgstr ""
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr ""
+
#: effects/Equalization.cpp:971
msgid "Equalization, by Martyn Shaw && Mitch Golden"
msgstr ""
@@ -4869,10 +5039,6 @@ msgstr ""
msgid "Analyser"
msgstr ""
-#: toolbars/MixerToolBar.cpp:58
-msgid "Mixer"
-msgstr ""
-
#: effects/LoadEffects.cpp:116
msgid "Simulator"
msgstr ""
@@ -5108,10 +5274,6 @@ msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr ""
#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
-msgid "false"
-msgstr ""
-
-#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
msgid "true"
msgstr ""
@@ -5460,20 +5622,37 @@ msgstr ""
msgid "Truncate Silence"
msgstr ""
-#: effects/TruncSilence.cpp:346
-msgid "Max silence duration:"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr ""
+
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
msgstr ""
#: prefs/AudioIOPrefs.cpp:175 prefs/AudioIOPrefs.cpp:178
msgid "milliseconds"
msgstr ""
+#: effects/TruncSilence.cpp:346
+msgid "Max silence duration:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ""
+
#: effects/TruncSilence.cpp:351
msgid "Threshold for silence:"
msgstr ""
-#: effects/TruncSilence.cpp:375
-msgid " Duration must be at least 1 millisecond"
+#: effects/TruncSilence.cpp:506
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
msgstr ""
#: BatchCommands.cpp:236 effects/TruncSilence.cpp:84 effects/TruncSilence.h:29
@@ -5484,17 +5663,56 @@ msgstr ""
msgid "Truncating Silence..."
msgstr ""
-#: ../src/effects/VST/VSTEffect.cpp:180
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "Barkatu, VST efektuak ezin dira pista estereotan aplikatu pistaren kanal indibidualak bat ez badatoz."
+#: ../src/effects/ladspa/LadspaEffect.cpp:452
+msgid "Effect Settings"
+msgstr "Efektuaren ezarpenak"
+
+#: ../src/effects/ladspa/LadspaEffect.cpp:435
+#: ../src/effects/ladspa/LadspaEffect.cpp:443
+#: ../src/prefs/QualityPrefs.cpp:160
+msgid "None"
+msgstr "Bat ere ez"
-#: ../src/effects/VST/VSTEffect.cpp:196
-msgid "Can't process replacing"
-msgstr "Ezin da ordezkatzea prozesatu"
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
-#: ../src/effects/VST/VSTEffect.cpp:410
-msgid "VST Plug-in parameters:"
-msgstr "VST Plugin parametroak:"
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr ""
#: ../src/effects/Wahwah.cpp:41
#, c-format
@@ -5542,20 +5760,10 @@ msgstr "Efektua aplikatzen: %s"
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr ""
-#: ../src/effects/ladspa/LadspaEffect.cpp:435
-#: ../src/effects/ladspa/LadspaEffect.cpp:443
-#: ../src/prefs/QualityPrefs.cpp:160
-msgid "None"
-msgstr "Bat ere ez"
-
#: ../src/effects/ladspa/LadspaEffect.cpp:437
msgid "Author: "
msgstr "Egilea: "
-#: ../src/effects/ladspa/LadspaEffect.cpp:452
-msgid "Effect Settings"
-msgstr "Efektuaren ezarpenak"
-
#: ../src/effects/Silence.cpp:127 ../src/effects/ToneGen.cpp:306
msgid "Length (seconds)"
msgstr "Luzera (segundo)"
@@ -5747,9 +5955,21 @@ msgstr "Proiektu osoa komando-lerroaren kodetzailea erabiliz esportatzea"
msgid "Command Output"
msgstr ""
-#: export/ExportFFmpeg.cpp:59
+#: export/ExportFFmpeg.cpp:61
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
#: export/ExportFFmpeg.cpp:394
@@ -5817,6 +6037,10 @@ msgstr ""
msgid "AAC Export Setup"
msgstr ""
+#: export/ExportOGG.cpp:86
+msgid "Quality:"
+msgstr ""
+
#: export/ExportFFmpegDialogs.cpp:217
msgid "Specify AMR-NB Options"
msgstr ""
@@ -5950,12 +6174,8 @@ msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n
"Recommended - 192000"
msgstr ""
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr ""
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid "Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
@@ -5974,10 +6194,10 @@ msgstr ""
msgid "Cutoff Bandwidth:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:947
+#: export/ExportFFmpegDialogs.cpp:936
msgid "Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:949
@@ -6166,12 +6386,12 @@ msgstr ""
msgid "AC3 Files (FFmpeg)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:56
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:57
@@ -6282,6 +6502,17 @@ msgstr ""
msgid "FLAC Files"
msgstr ""
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
#: export/ExportFLAC.cpp:93
msgid "Exporting the selected audio as FLAC"
msgstr ""
@@ -6536,10 +6767,6 @@ msgstr ""
msgid "Export location:"
msgstr "Esportatze-kokalekua:"
-#: ../src/export/ExportMultiple.cpp:600 ../src/prefs/DirectoriesPrefs.cpp:82
-msgid "Choose..."
-msgstr "Aukeratu..."
-
#: export/ExportMultiple.cpp:205
msgid "Create"
msgstr ""
@@ -6564,10 +6791,6 @@ msgstr "Artxiboaren lehen izena:"
msgid "First file name"
msgstr ""
-#: ../src/export/ExportMultiple.cpp:636
-msgid "Tracks"
-msgstr "Pistak"
-
#: ../src/export/ExportMultiple.cpp:646
msgid "Name files:"
msgstr "Fitxategi-izenak:"
@@ -6601,25 +6824,44 @@ msgstr ""
msgid "Choose a location to save the exported files"
msgstr "Aukeratu esportatutako fitxategiak gordetzeko kokalekua"
-#: export/ExportMultiple.cpp:480
+#: export/ExportMultiple.cpp:524
#, c-format
-msgid "\"%s\" doesn't exist.\n"
-"\n"
-"Would you like to create it?"
+msgid "Successfully exported the following %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:637 export/ExportMultiple.cpp:772
-msgid "Edit metadata"
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:590
+#: export/ExportMultiple.cpp:527
#, c-format
-msgid "Successfully exported %d file(s)."
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
msgstr ""
-#: export/ExportMultiple.cpp:597
+#: export/ExportMultiple.cpp:480
#, c-format
-msgid "Something went wrong after exporting %d file(s)."
+msgid "\"%s\" doesn't exist.\n"
+"\n"
+"Would you like to create it?"
+msgstr ""
+
+#: export/ExportMultiple.cpp:637 export/ExportMultiple.cpp:772
+msgid "Edit metadata"
msgstr ""
#: export/ExportMultiple.cpp:881
@@ -6703,7 +6945,6 @@ msgstr ""
#. i18n-hint: %s will be the error message from libsndfile
#: export/ExportPCM.cpp:436
-#, c-format
#, fuzzy
msgid "Error (file may not have been written): %s"
msgstr "Errorea (agian fitxategia ez da idatzi): %s"
@@ -6869,6 +7110,10 @@ msgstr ""
msgid "FLAC files"
msgstr ""
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr ""
+
#: ../src/import/ImportLOF.cpp:151 ../src/import/ImportLOF.cpp:177
msgid "List of Files in basic text format"
msgstr "Testu-formatu basikoko fitxategien zerrenda"
@@ -7023,128 +7268,57 @@ msgstr ""
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr ""
-#: ../src/prefs/PrefsDialog.cpp:84
-msgid "Audio I/O"
-msgstr "Audioaren S/I"
-
-#: ../src/prefs/AudioIOPrefs.cpp:212
-msgid "1 (Mono)"
-msgstr "1 (Mono)"
-
-#: ../src/prefs/AudioIOPrefs.cpp:213
-msgid "2 (Stereo)"
-msgstr "2 (Estereo)"
-
-#: ../src/prefs/AudioIOPrefs.cpp:80
-msgid "Playback"
-msgstr "Erreproduzitzea"
-
-#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
-#: toolbars/DeviceToolBar.cpp:54
-msgid "Device"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:122
-msgid "Using:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:123
-msgid "Portaudio v"
-msgstr ""
-
-#: ../src/prefs/AudioIOPrefs.cpp:148
-msgid "Recording"
-msgstr "Grabazioa"
-
-#: prefs/AudioIOPrefs.cpp:139
-msgid "Channels"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:145
-msgid "Playthrough"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:194
-msgid "Effects Preview"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:165
-msgid "Length of preview:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:158
-msgid "Cut Preview"
+#: prefs/BatchPrefs.cpp:53 prefs/BatchPrefs.cpp:54
+msgid "Batch"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:173
-msgid "Preview before cut region:"
+#: prefs/BatchPrefs.cpp:75 prefs/GUIPrefs.cpp:70
+msgid "Behaviors"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:175
-msgid "Preview after cut region:"
+#: prefs/BatchPrefs.cpp:80
+msgid "&Don't apply effects in batch mode"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:168
-msgid "Latency"
+#: prefs/BatchPrefs.cpp:83
+msgid "Cl&eanSpeech Mode (Customized GUI)"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:195
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:198
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr ""
+#: ../src/prefs/PrefsDialog.cpp:89
+msgid "Interface"
+msgstr "Interfazea"
-#: prefs/AudioIOPrefs.cpp:197
-msgid "Seek Time when playing"
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:187
-msgid "Short period:"
+#: prefs/AudioIOPrefs.cpp:122
+msgid "Using:"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:189
-msgid "Long period:"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:80
+msgid "Playback"
+msgstr "Erreproduzitzea"
-#: prefs/BatchPrefs.cpp:53 prefs/BatchPrefs.cpp:54
-msgid "Batch"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:148
+msgid "Recording"
+msgstr "Grabazioa"
-#: prefs/BatchPrefs.cpp:75 prefs/GUIPrefs.cpp:70
-msgid "Behaviors"
+#: prefs/AudioIOPrefs.cpp:139
+msgid "Channels"
msgstr ""
-#: prefs/BatchPrefs.cpp:80
-msgid "&Don't apply effects in batch mode"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:212
+msgid "1 (Mono)"
+msgstr "1 (Mono)"
-#: prefs/BatchPrefs.cpp:83
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:213
+msgid "2 (Stereo)"
+msgstr "2 (Estereo)"
#: ../src/prefs/PrefsDialog.cpp:88 ../src/prefs/PrefsDialog.cpp:216
msgid "Directories"
@@ -7162,34 +7336,31 @@ msgstr "Kokalekua:"
msgid "Free Space:"
msgstr "Lekua libre:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr ""
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr ""
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
+#: prefs/DirectoriesPrefs.cpp:110
+msgid "Audio cache"
msgstr ""
#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
+msgid "Play and/or record using RAM (useful for slow drives)"
msgstr ""
-#: prefs/DirectoriesPrefs.cpp:110
-msgid "Audio cache"
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
msgstr ""
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
#: ../src/prefs/DirectoriesPrefs.cpp:135
msgid "Choose a location to place the temporary directory"
msgstr "Aukeratu aldi baterako direktorioa jartzeko kokalekua"
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: ../src/prefs/DirectoriesPrefs.cpp:181
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -7208,220 +7379,141 @@ msgstr "%s direktorioan ezin da idatzi"
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "Aldi baterako direktorioan egindako aldaketek ez dute eraginik izango Audacity berrabiarazi arte"
-#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
-msgid "Import / Export"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:84
-msgid "MP3 Export Library"
-msgstr ""
-
-#: ../src/prefs/FileFormatPrefs.cpp:180
-msgid "MP3 Library Version:"
-msgstr "MP3 liburutegiaren bertsioa:"
-
-#: prefs/FileFormatPrefs.cpp:93
-msgid "MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:98
-msgid "LAME MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
-msgid "&Download"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:136
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:137
-msgid "When importing audio files"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:140
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
+#: prefs/GUIPrefs.cpp:42
+msgid "In Browser"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:141
-msgid "&Read uncompressed audio files directly from the original (faster)"
+#: prefs/GUIPrefs.cpp:43
+msgid "From Internet"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:143
-msgid "&Normalize all tracks in project"
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:132
-msgid "When saving a project that depends on other audio files"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:87
-msgid "Always © all audio into project (safest)"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:88
-msgid "&Do not copy any audio"
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:135
-msgid "&Ask user"
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:93
-msgid "When exporting tracks to an audio file"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:144
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:97
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
-msgstr ""
-
-#: prefs/BatchPrefs.cpp:91
-msgid "S&how Metadata Editor prior to export step"
-msgstr ""
-
-#: ../src/prefs/PrefsDialog.cpp:89
-msgid "Interface"
-msgstr "Interfazea"
+#: ../src/prefs/GUIPrefs.cpp:150
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 dB (anplitude handian editatzeko bitartea)"
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:157
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 dB (8 biteko laginen PCM bitartea)"
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
+#: prefs/GUIPrefs.cpp:143
+msgid "-60 dB (PCM range of 10 bit samples)"
msgstr ""
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:164
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 dB (16 biteko laginen PCM bitartea)"
-#: prefs/GUIPrefs.cpp:72
-msgid "&Update display while playing"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:171
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 dB (gizakion entzumenaren gutxi gorabeherako muga)"
-#: prefs/GUIPrefs.cpp:96
-msgid "Cl&osing last window quits Audacity"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:178
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB (24 biteko laginen PCM bitartea)"
-#: prefs/GUIPrefs.cpp:76
-msgid "Enable &dragging of left and right selection edges"
+#: prefs/SpectrumPrefs.cpp:96
+msgid "Display"
msgstr ""
#: prefs/GUIPrefs.cpp:100
msgid "Er&gonomic order of audio I/O buttons"
msgstr ""
-#: prefs/GUIPrefs.cpp:80
-msgid "Automatically &fit tracks vertically zoomed"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
msgstr ""
-#: prefs/GUIPrefs.cpp:104
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
msgstr ""
-#: prefs/GUIPrefs.cpp:90
-msgid "Editing a &clip can move other clips"
+#: prefs/GUIPrefs.cpp:167
+msgid "Help:"
msgstr ""
-#: prefs/GUIPrefs.cpp:88
-msgid "&Select all audio in project, if none selected"
+#: prefs/GUIPrefs.cpp:96
+msgid "Cl&osing last window quits Audacity"
msgstr ""
#: prefs/GUIPrefs.cpp:90
msgid "&Beep on completion of longer activities"
msgstr ""
-#: prefs/BatchPrefs.cpp:87 prefs/GUIPrefs.cpp:94
-msgid "Show / Hide"
+#: prefs/GUIPrefs.cpp:126
+msgid "Modes"
msgstr ""
-#: prefs/GUIPrefs.cpp:96
-msgid "Enable cut &lines"
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:98
-msgid "Show warnings about &temp files"
+#: prefs/GUIPrefs.cpp:129
+msgid "Don't a&pply effects in batch mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
+#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
+msgid "Import / Export"
msgstr ""
-#: prefs/GUIPrefs.cpp:122
-msgid "Show &Welcome Message at program start up"
+#: prefs/FileFormatPrefs.cpp:137
+msgid "When importing audio files"
msgstr ""
-#: prefs/GUIPrefs.cpp:126
-msgid "Modes"
+#: prefs/FileFormatPrefs.cpp:140
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
msgstr ""
-#: prefs/GUIPrefs.cpp:129
-msgid "Don't a&pply effects in batch mode"
+#: prefs/FileFormatPrefs.cpp:141
+msgid "&Read uncompressed audio files directly from the original (faster)"
msgstr ""
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
+#: prefs/FileFormatPrefs.cpp:143
+msgid "&Normalize all tracks in project"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:150
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 dB (anplitude handian editatzeko bitartea)"
-
-#: ../src/prefs/GUIPrefs.cpp:157
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 dB (8 biteko laginen PCM bitartea)"
-
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
+#: prefs/FileFormatPrefs.cpp:93
+msgid "When exporting tracks to an audio file"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:164
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 dB (16 biteko laginen PCM bitartea)"
-
-#: ../src/prefs/GUIPrefs.cpp:171
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 dB (gizakion entzumenaren gutxi gorabeherako muga)"
-
-#: ../src/prefs/GUIPrefs.cpp:178
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB (24 biteko laginen PCM bitartea)"
-
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
+#: prefs/FileFormatPrefs.cpp:144
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
msgstr ""
-#: prefs/GUIPrefs.cpp:164
-msgid "Other interface choices"
+#: prefs/FileFormatPrefs.cpp:97
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
msgstr ""
-#: prefs/GUIPrefs.cpp:167
-msgid "Help:"
+#: prefs/BatchPrefs.cpp:91
+msgid "S&how Metadata Editor prior to export step"
msgstr ""
-#: prefs/GUIPrefs.cpp:168
-msgid "Solo Button:"
+#: prefs/ImportExportPrefs.cpp:84
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
msgstr ""
#: ../src/prefs/PrefsDialog.cpp:90
@@ -7452,17 +7544,22 @@ msgstr "Oharra: Cmd+Q sakatzean irten egingo da. Beste tekla guztiak baliozkoak
msgid "&Defaults"
msgstr ""
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr ""
+
#: ../src/prefs/KeyConfigPrefs.cpp:79
msgid "Key Combination"
msgstr "Tekla-konbinazioa"
-#: ../src/prefs/KeyConfigPrefs.cpp:159
-msgid "Export Keyboard Shortcuts As:"
-msgstr "Esportatu laster-teklak honela:"
+#: ../src/EditToolBar.cpp:159
+msgid "Undo"
+msgstr "Desegin"
-#: ../src/prefs/KeyConfigPrefs.cpp:174
-msgid "Error saving keyboard shortcuts"
-msgstr "Errorea laster-teklak gordetzean"
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr ""
#: ../src/prefs/KeyConfigPrefs.cpp:188
msgid "Select an XML file containing Audacity keyboard shortcuts..."
@@ -7472,6 +7569,14 @@ msgstr "Hautatu Audacity-ren laster-teklak dituen XML fitxategia..."
msgid "Error loading keyboard shortcuts"
msgstr "Errorea laster-teklak kargatzean"
+#: ../src/prefs/KeyConfigPrefs.cpp:159
+msgid "Export Keyboard Shortcuts As:"
+msgstr "Esportatu laster-teklak honela:"
+
+#: ../src/prefs/KeyConfigPrefs.cpp:174
+msgid "Error saving keyboard shortcuts"
+msgstr "Errorea laster-teklak gordetzean"
+
#: prefs/KeyConfigPrefs.cpp:239
#, c-format
msgid "The keyboard shortcut '%s' is already assigned to:\n"
@@ -7479,9 +7584,61 @@ msgid "The keyboard shortcut '%s' is already assigned to:\n"
"'%s'"
msgstr ""
-#: ../src/EditToolBar.cpp:159
-msgid "Undo"
-msgstr "Desegin"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:84
+msgid "MP3 Export Library"
+msgstr ""
+
+#: ../src/prefs/FileFormatPrefs.cpp:180
+msgid "MP3 Library Version:"
+msgstr "MP3 liburutegiaren bertsioa:"
+
+#: prefs/FileFormatPrefs.cpp:93
+msgid "MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:98
+msgid "LAME MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
+msgid "&Download"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:109
+msgid "FFmpeg Library Version:"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
+msgid "FFmpeg Library:"
+msgstr ""
+
+#: ../src/prefs/PrefsDialog.cpp:84
+msgid "Audio I/O"
+msgstr "Audioaren S/I"
+
+#: prefs/AudioIOPrefs.cpp:123
+msgid "Portaudio v"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:145
+msgid "Playthrough"
+msgstr ""
#: prefs/AudioIOPrefs.cpp:147
#, fuzzy
@@ -7496,6 +7653,10 @@ msgstr ""
msgid "&Software Playthrough (Play new track while recording it)"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:158
+msgid "Cut Preview"
+msgstr ""
+
#: prefs/MidiIOPrefs.cpp:160
msgid "Play before cut region:"
msgstr ""
@@ -7504,6 +7665,10 @@ msgstr ""
msgid "Play after cut region:"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:168
+msgid "Latency"
+msgstr ""
+
#: prefs/AudioIOPrefs.cpp:174
msgid "Audio to buffer:"
msgstr ""
@@ -7516,6 +7681,18 @@ msgstr ""
msgid "Seek Time"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:187
+msgid "Short period:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:189
+msgid "Long period:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:194
+msgid "Effects Preview"
+msgstr ""
+
#: prefs/MidiIOPrefs.cpp:196
msgid "Play when previewing:"
msgstr ""
@@ -7729,10 +7906,62 @@ msgstr "Ktrl-Gurpila-Biratu"
msgid "Zoom in or out"
msgstr "Handiagotu edo txikiagotu zooma"
+#: prefs/AudioIOPrefs.cpp:165
+msgid "Length of preview:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:173
+msgid "Preview before cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:175
+msgid "Preview after cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:197
+msgid "Seek Time when playing"
+msgstr ""
+
#: ../src/prefs/PrefsDialog.cpp:52
msgid "Audacity Preferences"
msgstr "Audacity-ren hobespenak"
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:132
+msgid "When saving a project that depends on other audio files"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:87
+msgid "Always © all audio into project (safest)"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:88
+msgid "&Do not copy any audio"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:135
+msgid "&Ask user"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr ""
+
#: ../src/prefs/QualityPrefs.cpp:161
msgid "Rectangle"
msgstr "Laukizuzena"
@@ -7757,44 +7986,44 @@ msgstr "Lagintze-maiztasun lehenetsia:"
msgid "Default Sample Format:"
msgstr "Lagin-formatu lehenetsia:"
-#: ../src/prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "Denbora errealeko lagintze-maiztasunaren bihurgailua:"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:147
-msgid "High-quality sample rate converter:"
-msgstr "Kalitate handiko lagintze-maiztasunaren bihurgailua:"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+msgid "Sample Rate Converter:"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:171
-msgid "Real-time dither:"
-msgstr "Denbora errealeko dither-a:"
+#: prefs/QualityPrefs.cpp:164
+msgid "Dither"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:186
-msgid "High-quality dither:"
-msgstr "Kalitate handiko dither-a:"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
+#: prefs/AudioIOPrefs.cpp:149
+msgid "Overdub: &Play other tracks while recording new one"
msgstr ""
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
+#: prefs/AudioIOPrefs.cpp:150
+msgid "&Hardware Playthrough: Play new track while recording it"
msgstr ""
-#: prefs/QualityPrefs.cpp:164
-msgid "Dither"
+#: prefs/AudioIOPrefs.cpp:157
+msgid "&Software Playthrough: Play new track while recording or monitoring"
msgstr ""
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
+#: prefs/AudioIOPrefs.cpp:160
+msgid "(uncheck when recording \"stereo mix\")"
msgstr ""
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
msgstr ""
-#: prefs/SmartRecordPrefs.cpp:54 prefs/SmartRecordPrefs.cpp:55
-msgid "Smart Recording"
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
msgstr ""
#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
@@ -7809,18 +8038,54 @@ msgstr ""
msgid "Spectrograms"
msgstr "Espektrogramak"
-#: ../src/prefs/SpectrumPrefs.cpp:70
-msgid "FFT Size"
-msgstr "FFTn tamaina"
-
#: prefs/SpectrumPrefs.cpp:75
msgid "8 - most wideband"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
#: ../src/prefs/SpectrumPrefs.cpp:40
msgid "256 - default"
msgstr "256 - lehenetsia"
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:107
msgid "32768 - most narrowband"
msgstr ""
@@ -7829,20 +8094,24 @@ msgstr ""
msgid "4096 - most narrowband"
msgstr "4096 - bandarik estuena"
-#: prefs/SpectrumPrefs.cpp:90
-msgid "Window type:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:125
-msgid "FFT Skip Points"
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:96
-msgid "Display"
+#: prefs/SpectrumPrefs.cpp:93
+msgid "Window type"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:100
-msgid "&Grayscale"
+#: prefs/SpectrumPrefs.cpp:125
+msgid "FFT Skip Points"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
msgstr ""
#: prefs/SpectrumPrefs.cpp:103
@@ -7853,16 +8122,16 @@ msgstr ""
msgid "Maximum Frequency (Hz):"
msgstr "Gehienezko maiztasuna (Hz):"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
msgstr ""
#: prefs/SpectrumPrefs.cpp:165
@@ -7873,6 +8142,14 @@ msgstr ""
msgid "Max. Number of Notes (1..128):"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:161
+msgid "&Find Notes"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Quantize Notes"
+msgstr ""
+
#: ../src/prefs/SpectrumPrefs.cpp:148
msgid "The maximum frequency must be an integer"
msgstr "Gehienezko maiztasunak osoko zenbakia izan behar du"
@@ -7889,18 +8166,57 @@ msgstr ""
msgid "Minimum frequency must be at least 0 Hz"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:226 prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
+#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:230
+msgid "The maximum number of notes must be in the range 1..128"
msgstr ""
#: prefs/ThemePrefs.cpp:61 prefs/ThemePrefs.cpp:62
msgid "Theme"
msgstr ""
+#: prefs/ThemePrefs.cpp:123
+msgid "Info"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:91
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#: prefs/ThemePrefs.cpp:90
msgid "Theme Cache - Images && Color"
msgstr ""
@@ -7929,78 +8245,94 @@ msgstr ""
msgid "Load Files"
msgstr ""
-#: prefs/ThemePrefs.cpp:123
-msgid "Info"
+#: prefs/GUIPrefs.cpp:50
+msgid "Simple"
msgstr ""
-#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
+#: prefs/GUIPrefs.cpp:72
+msgid "&Update display while playing"
msgstr ""
-#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
+#: prefs/GUIPrefs.cpp:80
+msgid "Automatically &fit tracks vertically zoomed"
msgstr ""
-#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
+#: prefs/TracksPrefs.cpp:88
+msgid "Default View Mode:"
msgstr ""
-#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:88
+msgid "&Select all audio in project, if none selected"
msgstr ""
-#: ../src/ControlToolBar.cpp:470
-msgid "Pause"
-msgstr "Pausarazi"
+#: prefs/GUIPrefs.cpp:96
+msgid "Enable cut &lines"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play"
+#: prefs/GUIPrefs.cpp:76
+msgid "Enable &dragging of left and right selection edges"
msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
+#: prefs/GUIPrefs.cpp:104
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
msgstr ""
-#: ../src/ControlToolBar.cpp:471
-msgid "Stop"
-msgstr "Gelditu"
+#: prefs/GUIPrefs.cpp:90
+msgid "Editing a &clip can move other clips"
+msgstr ""
-#: ../src/ControlToolBar.cpp:467
-msgid "Skip to Start"
-msgstr "Salto egin hasierara"
+#: prefs/GUIPrefs.cpp:168
+msgid "Solo Button:"
+msgstr ""
-#: ../src/ControlToolBar.cpp:472
-msgid "Skip to End"
-msgstr "Salto egin amaierara"
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:192
-msgid "Record (Shift for Append Record)"
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
msgstr ""
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr ""
+
+#: ../src/Menus.cpp:561
+msgid "Pause"
+msgstr "Pausarazi"
+
+#: ../src/Menus.cpp:560
+msgid "Stop"
+msgstr "Gelditu"
+
#: toolbars/ControlToolBar.cpp:195
msgid "Clean Speech"
msgstr ""
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play (Shift for Loop Play)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:192
+msgid "Record (Shift for Append Record)"
+msgstr ""
+
#: toolbars/ControlToolBar.cpp:524 toolbars/ControlToolBar.cpp:776
msgid "Error while opening sound device. "
msgstr ""
@@ -8041,28 +8373,20 @@ msgstr "Handiagotu zooma"
msgid "Zoom Out"
msgstr "Txikiagotu zooma"
-#: ../src/EditToolBar.cpp:170
-msgid "Zoom Toggle"
-msgstr "Txandakatu zooma"
-
-#: toolbars/EditToolBar.cpp:160
-msgid "Fit Selection"
-msgstr ""
-
#: ../src/EditToolBar.cpp:174
msgid "Fit selection in window"
msgstr "Doitu hautapena leihoari"
-#: toolbars/EditToolBar.cpp:162
-msgid "Fit Project"
-msgstr ""
-
#: ../src/EditToolBar.cpp:176
msgid "Fit project in window"
msgstr "Doitu proiektua leihoari"
-#: toolbars/MeterToolBar.cpp:49
-msgid "Meter"
+#: toolbars/EditToolBar.cpp:160
+msgid "Fit Selection"
+msgstr ""
+
+#: toolbars/EditToolBar.cpp:162
+msgid "Fit Project"
msgstr ""
#: toolbars/MeterToolBar.cpp:79
@@ -8109,6 +8433,14 @@ msgstr ""
msgid "Input Source"
msgstr ""
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:75
msgid "Selection"
msgstr ""
@@ -8187,30 +8519,6 @@ msgstr "Ezkerra=Handitu, Eskuina=Txikitu, Erdia=Normala"
msgid "Click and drag to move a track in time"
msgstr "Egin klik eta arrastatu pista bat denboran mugitzeko"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr ""
-
-#: ../src/ControlToolBar.cpp:355
-msgid "Selection Tool"
-msgstr "Hautapen-tresna"
-
-#: ../src/ControlToolBar.cpp:356
-msgid "Envelope Tool"
-msgstr "Bilkari-tresna"
-
-#: ../src/ControlToolBar.cpp:357
-msgid "Time Shift Tool"
-msgstr "Lerratzeko tresna"
-
-#: ../src/ControlToolBar.cpp:358
-msgid "Zoom Tool"
-msgstr "Zoomaren tresna"
-
-#: ../src/ControlToolBar.cpp:359
-msgid "Draw Tool"
-msgstr "Marrazteko tresna"
-
#: ../src/ControlToolBar.cpp:360
msgid "Multi-Tool Mode"
msgstr "Tresna anitzeko modua"
@@ -8219,22 +8527,10 @@ msgstr "Tresna anitzeko modua"
msgid "Slide Tool"
msgstr ""
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr ""
-
-#: toolbars/TranscriptionToolBar.cpp:81
-msgid "Transcription"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:183
msgid "Play at selected speed"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:184
-msgid "Play-at-speed"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:190 toolbars/TranscriptionToolBar.cpp:195
msgid "Playback Speed"
msgstr ""
@@ -8243,74 +8539,38 @@ msgstr ""
msgid "Adjust left selection to next onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:201
-msgid "Left-to-On"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:203
msgid "Adjust right selection to previous offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:204
-msgid "Right-to-Off"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:206
msgid "Adjust left selection to next offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:207
-msgid "Left-to-Off"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:209
msgid "Adjust right selection to previous onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:210
-msgid "Right-to-On"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:212
msgid "Select region of sound around cursor"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:213
-msgid "Select-Sound"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:215
msgid "Select region of silence around cursor"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:216
-msgid "Select-Silence"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:218
msgid "Automatically make labels from words"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:219
-msgid "Make Labels"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:221
msgid "Add label at selection"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:222
-msgid "Add Label"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:224
msgid "Calibrate voicekey"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:225
-msgid "Calibrate"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:229
msgid "Adjust Sensitivity"
msgstr ""
@@ -8343,6 +8603,46 @@ msgstr ""
msgid "Key type"
msgstr ""
+#: toolbars/TranscriptionToolBar.cpp:184
+msgid "Play-at-speed"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:201
+msgid "Left-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:204
+msgid "Right-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:207
+msgid "Left-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:210
+msgid "Right-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:213
+msgid "Select-Sound"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:216
+msgid "Select-Silence"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:219
+msgid "Make Labels"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:222
+msgid "Add Label"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:225
+msgid "Calibrate"
+msgstr ""
+
#: ../src/widgets/AButton.cpp:181
msgid " (disabled)"
msgstr " (desgaituta)"
@@ -8644,3 +8944,15 @@ msgstr ""
msgid "Could not load file: \"%s\""
msgstr ""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
+
diff --git a/locale/fa.po b/locale/fa.po
index 2aab05d..4ad5a06 100644
--- a/locale/fa.po
+++ b/locale/fa.po
@@ -6,10 +6,8 @@
# Meelad Zakaria <meelad at farsiweb.info>, 2007.
# Farzaneh Sarafraz <farzaneh at farsiweb.info>, 2007.
# Shervin Afshar <shervinafshar at gmail.com>, 2007.
-
msgid ""
-msgstr ""
-"Project-Id-Version: Audacity 1.3.3\n"
+msgstr "Project-Id-Version: Audacity 1.3.3\n"
"Report-Msgid-Bugs-To: audacity-translation at lists.sourceforge.net\n"
"POT-Creation-Date: 2007-03-12 02:40-0700\n"
"PO-Revision-Date: 2007-06-26 14:01+0330\n"
@@ -23,52 +21,21 @@ msgstr ""
msgid "&About Audacity..."
msgstr "&دربارÙÙ Ø§ÙØ¯Ø§Ø³ÛتÛ..."
-#: AboutDialog.cpp:147 effects/AvcCompressor.cpp:674
-msgid "Enabled"
-msgstr "Ø±ÙØ´Ù"
-
-#: AboutDialog.cpp:148
-msgid "Disabled"
-msgstr "خاÙ
ÙØ´"
-
-#: AboutDialog.cpp:204
-msgid "Program build date: "
-msgstr "ØªØ§Ø±ÛØ® ساخت ÙØ³Ø®Ù٠اجراÛÛ Ø¨Ø±ÙØ§Ù
Ù: "
-
-#: AboutDialog.cpp:209
-msgid "Settings folder: "
-msgstr "Ù¾ÙØ´ÙÙ ØªÙØ¸ÛÙ
ات: "
+#: AboutDialog.cpp:157
+msgid "OK... Audacious!"
+msgstr ""
-#: AboutDialog.cpp:214
-msgid ""
-"Audacity is a free program written by a team of volunteer developers around "
-"the world. Coordination happens thanks to SourceForge.net, an online service "
-"that provides free tools to open-source software projects. Audacity is "
-"available for Windows 98 and newer, Mac OS X, Linux, and other Unix-like "
-"operating systems. Older versions of Audacity are available for Mac OS 9."
+#: AboutDialog.cpp:175
+msgid "Audacity is a free program written by a team of volunteer <a href=\"http://audacity.sourceforge.net/community/developers\">developers</a> around the world. We are grateful to <a href=\"http://sourceforge.net\">SourceForge.net</a> for our project hosting. Audacity is available for Windows 98 and later, Mac OS X, Linux and other Unix-like operating systems. Older versions of Audacity are available for Mac OS 9."
msgstr ""
-"Ø§ÙØ¯Ø§Ø³ÛØªÛ ÛÚ© ÙØ±Ù
âØ§ÙØ²Ø§Ø± آزاد است Ú©Ù ØªÙØ³Ø· گرÙÙÛ Ø§Ø² Ø¨Ø±ÙØ§Ù
ÙâØ³Ø§Ø²Ø§Ù Ø§Ø² سراسر دÙÛØ§ ÙÙØ´ØªÙ شد٠است. "
-"اÛÙ Ø§ÙØ±Ø§Ø¯ با Ú©Ù
Ú© SourceForge.netØ Ø³Ø±ÙÛØ³ Ø¨Ø±Ø®Ø·Û Ú©Ù Ø§Ø¨Ø²Ø§Ø±ÙØ§Û آزاد را در Ø§Ø®ØªÛØ§Ø± پرÙÚÙâÙØ§Û اÙÙ¾ÙâØ³ÙØ±Ø³ Ù
ÛâÚ¯Ø°Ø§Ø±Ø¯Ø âØ¨Ø§ ÛکدÛگر ÙÙ
Ú©Ø§Ø±Û Ù
ÛâÚ©ÙÙØ¯. "
-"Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø¨Ø±Ø§Û Ø³ÛØ³ØªÙ
âØ¹Ø§Ù
ÙâÙØ§Û ÙÛÙØ¯Ùز 98 ÛØ§ Ø¬Ø¯ÛØ¯ØªØ±Ø Ù
Ú© ا٠اس اÛÚ©Ø³Ø ÙÛÙÙکس ٠دÛگر Ø³ÛØ³ØªÙ
âØ¹Ø§Ù
ÙâÙØ§Û ÛÙÙÛÚ©Ø³Û Ù
ÙØ¬Ùد است. ÙØ³Ø®ÙâÙØ§Û ÙØ¯ÛÙ
ÛâØªØ± Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø¨Ø±Ø§Û Ù
Ú© ا٠اس 9 Ù
ÙØ¬ÙØ¯ÙØ¯."
-#: AboutDialog.cpp:218
-msgid ""
-"This is a beta version of the program. It may contain bugs and unfinished "
-"features. We depend on your feedback, so please visit our website and give "
-"us your bug reports and feature requests."
+#: AboutDialog.cpp:179
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
-"اÛÙ ÙØ³Ø®ÙÙ Ø¨ØªØ§Û Ø¨Ø±ÙØ§Ù
٠است Ù Ù
Ù
ک٠است Ø¯Ø§Ø±Ø§Û Ø§Ø´Ú©Ø§ÙØ§Øª ÛØ§ اÙ
Ú©Ø§ÙØ§Øª Ù¾ÛØ§Ø¯ÙâØ³Ø§Ø²Û ÙØ´Ø¯Ù باشد. "
-"Ù
ا ب٠کÙ
Ú© Ø´Ù
ا ÙÛØ§Ø² دارÛÙ
Ø Ø¨ÙØ§Ø¨Ø±Ø§ÛÙ ÙØ·Ùا٠از ÙØ¨âگا٠Ù
ا Ø¨Ø§Ø²Ø¯ÛØ¯ Ú©ÙÛØ¯ Ù Ø§Ø´Ú©Ø§ÙØ§Øª را گزارش Ú©ÙÛØ¯ ٠اÙ
Ú©Ø§ÙØ§Øª Ø¬Ø¯ÛØ¯Û Ø¯Ø±Ø®ÙØ§Ø³Øª Ú©ÙÛØ¯."
-#: AboutDialog.cpp:221
-msgid ""
-"This is a stable, completed release of Audacity. However, if you find a bug "
-"or have a suggestion, please contact us. We depend on feedback from users in "
-"order to continue to improve Audacity. For more information, visit our "
-"website."
+#: AboutDialog.cpp:182
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
-"اÛÙ ÙØ³Ø®ÙÙ Ù¾Ø§ÛØ¯Ø§Ø± ٠تکÙ
Û٠شدÙÙ Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø§Ø³Øª. با اÛÙ ÙØ¬ÙØ¯Ø Ø§Ú¯Ø± اشکاÙÛ Ø¯Ø± Ø¢Ù Ù¾ÛØ¯Ø§ Ú©Ø±Ø¯ÛØ¯ ÛØ§ Ù¾ÛØ´ÙÙØ§Ø¯Û Ø¯Ø§Ø±ÛØ¯ ÙØ·Ùا٠با Ù
ا تÙ
اس Ø¨Ú¯ÛØ±Ûد. "
-"Ù
ا Ø¨Ø±Ø§Û Ø¨ÙØªØ± Ú©Ø±Ø¯Ù Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø¨Ù Ú©Ù
Ú© کاربرا٠ÙÛØ§Ø² دارÛÙ
. Ø¨Ø±Ø§Û Ø§Ø·ÙØ§Ø¹Ø§Øª Ø¨ÛØ´ØªØ± از ÙØ¨âگا٠Ù
ا Ø¨Ø§Ø²Ø¯ÛØ¯ Ú©ÙÛØ¯."
#. i18n-hint: The translation of "translator_credits" will appear
#. in the credits in the About Audacity window. Use this to add
@@ -78,18 +45,13 @@ msgstr ""
#.
#: AboutDialog.cpp:231 AboutDialog.cpp:233
msgid "translator_credits"
-msgstr ""
-"Ù
ÛÙØ§Ø¯ Ø²Ú©Ø±ÛØ§ <meelad at farsiweb.inf>\n"
+msgstr "Ù
ÛÙØ§Ø¯ Ø²Ú©Ø±ÛØ§ <meelad at farsiweb.inf>\n"
"ÙØ±Ø²Ø§ÙÙ Ø³Ø±Ø§ÙØ±Ø§Ø² <farzaneh at farsiweb.info>\n"
"شرÙÛÙ Ø§ÙØ´Ø§Ø± <shervinafshar at gmail.com>"
-#: AboutDialog.cpp:246
-msgid "A Free Digital Audio Editor"
-msgstr "ÛÚ© ÙÛØ±Ø§Ûشگر آزاد ØµÙØª Ø¯ÛØ¬ÛتاÙ"
-
-#: AboutDialog.cpp:250
-msgid "Information"
-msgstr "Ø§Ø·ÙØ§Ø¹Ø§Øª"
+#: AboutDialog.cpp:207
+msgid "A Free Digital Audio Editor<br>"
+msgstr ""
#: AboutDialog.cpp:252
msgid "Credits"
@@ -125,12 +87,116 @@ msgstr "Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø¨Ø± پاÛÙÙ Ù
ØªÙ Ø¨Ø±ÙØ§Ù
Ù٠پرÙÚÙâÙØ§
msgid "Special thanks:"
msgstr "تشکر ÙÛÚÙ:"
-#. i18n-hint: Rather than a literal translation, consider adding the
-#. appropriate suffix or prefix to create a word meaning 'something which
-#. has Audacity'
-#: AboutDialog.cpp:311
-msgid "Audacious!"
-msgstr "Ø§ÙØ¯Ø§Ø³ÛتÛâØ¯Ø§Ø±!"
+#: AboutDialog.cpp:250
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgstr ""
+
+#: AboutDialog.cpp:258
+msgid "Audacity"
+msgstr ""
+
+#. i18n-hint: Information about when audacity was compiled
+#: AboutDialog.cpp:304 AboutDialog.cpp:317 AboutDialog.cpp:468
+msgid "Build Information"
+msgstr ""
+
+#: AboutDialog.cpp:147 effects/AvcCompressor.cpp:674
+msgid "Enabled"
+msgstr "Ø±ÙØ´Ù"
+
+#: AboutDialog.cpp:148
+msgid "Disabled"
+msgstr "خاÙ
ÙØ´"
+
+#: AboutDialog.cpp:321
+msgid "File Format Support"
+msgstr ""
+
+#. i18n-hint: This is what the library (libmad) does - imports MP3 files
+#: AboutDialog.cpp:331 AboutDialog.cpp:333
+msgid "MP3 Importing"
+msgstr ""
+
+#: AboutDialog.cpp:340 AboutDialog.cpp:343
+msgid "Ogg Vorbis Import and Export"
+msgstr ""
+
+#: AboutDialog.cpp:347 AboutDialog.cpp:350
+msgid "ID3 tag support"
+msgstr ""
+
+#: AboutDialog.cpp:357 AboutDialog.cpp:360
+msgid "FLAC import and export"
+msgstr ""
+
+#: AboutDialog.cpp:365 AboutDialog.cpp:368
+msgid "MP2 export"
+msgstr ""
+
+#: AboutDialog.cpp:373 AboutDialog.cpp:376
+msgid "Import via QuickTime"
+msgstr ""
+
+#. i18n-hint: Libraries that are essential to audacity
+#: AboutDialog.cpp:383
+msgid "Core Libraries"
+msgstr ""
+
+#: AboutDialog.cpp:389 AboutDialog.cpp:392 AboutDialog.cpp:395
+#: AboutDialog.cpp:397
+msgid "Sample rate conversion"
+msgstr ""
+
+#: AboutDialog.cpp:401
+msgid "Audio playback and recording"
+msgstr ""
+
+#: AboutDialog.cpp:413
+msgid "Features"
+msgstr ""
+
+#: AboutDialog.cpp:417 AboutDialog.cpp:420 AboutDialog.cpp:425
+#: AboutDialog.cpp:428 AboutDialog.cpp:433 AboutDialog.cpp:436
+#: AboutDialog.cpp:441 AboutDialog.cpp:444
+msgid "Plug-in support"
+msgstr ""
+
+#: AboutDialog.cpp:449 AboutDialog.cpp:452
+msgid "Sound card mixer support"
+msgstr ""
+
+#: AboutDialog.cpp:457 AboutDialog.cpp:460
+msgid "Pitch and Tempo Change support"
+msgstr ""
+
+#: AboutDialog.cpp:204
+msgid "Program build date: "
+msgstr "ØªØ§Ø±ÛØ® ساخت ÙØ³Ø®Ù٠اجراÛÛ Ø¨Ø±ÙØ§Ù
Ù: "
+
+#: AboutDialog.cpp:475 AboutDialog.cpp:477
+msgid "Build type:"
+msgstr ""
+
+#: AboutDialog.cpp:475
+msgid "Debug build"
+msgstr ""
+
+#: AboutDialog.cpp:477
+msgid "Release build"
+msgstr ""
+
+#. i18n-hint: The directory audacity is installed into (on *nix systems)
+#: AboutDialog.cpp:482
+msgid "Installation Prefix: "
+msgstr ""
+
+#: AboutDialog.cpp:209
+msgid "Settings folder: "
+msgstr "Ù¾ÙØ´ÙÙ ØªÙØ¸ÛÙ
ات: "
+
+#: AboutDialog.cpp:501
+msgid "GPL License"
+msgstr ""
#: AudacityApp.cpp:276 Project.cpp:1521
#, c-format
@@ -144,12 +210,10 @@ msgstr "خطا در باز کرد٠پرÙÚÙ"
#: AudacityApp.cpp:310
#, c-format
-msgid ""
-"%s does not exist and could not be opened.\n"
+msgid "%s does not exist and could not be opened.\n"
"\n"
"It has been removed from the history list."
-msgstr ""
-"â%s ÙØ¬Ùد ÙØ¯Ø§Ø±Ø¯ ٠باز ÙÙ
ÛâØ´ÙØ¯.\n"
+msgstr "â%s ÙØ¬Ùد ÙØ¯Ø§Ø±Ø¯ ٠باز ÙÙ
ÛâØ´ÙØ¯.\n"
"\n"
"از ÙÙØ±Ø³Øª ØªØ§Ø±ÛØ®ÚÙ ØØ°Ù شد٠است."
@@ -165,16 +229,21 @@ msgstr "Ø§ÙØ¯Ø§Ø²ÙâÚ¯ÛØ± ÙØ±ÙدÛ"
msgid "Output Meter"
msgstr "Ø§ÙØ¯Ø§Ø²ÙâÚ¯ÛØ± Ø®Ø±ÙØ¬Û"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
-#: AudacityApp.cpp:534 Menus.cpp:575
-msgid "&Preferences...\tCtrl+,"
-msgstr
- "ترجÛ&ØØ§Øª...\tCtrl+,"
+#: Menus.cpp:200
+msgid "&New"
+msgstr "&Ø¬Ø¯ÛØ¯"
+
+#: Menus.cpp:202
+msgid "&Open..."
+msgstr "&باز کردÙ..."
+
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
-#: AudacityApp.cpp:601
-msgid "Command-line options supported:\n"
-msgstr "گزÛÙÙâÙØ§Û خط ÙØ±Ù
Ø§Ù Ù¾Ø´ÛØ¨Ø§ÙÛ Ù
ÛâØ´ÙØ¯:\n"
+#: AudacityApp.cpp:534 Menus.cpp:575
+msgid "&Preferences..."
+msgstr "ترجÛ&ØØ§Øª..."
#: AudacityApp.cpp:617 AudacityApp.cpp:702
#, c-format
@@ -186,60 +255,28 @@ msgstr "در ØØ§Ù Ø§Ø³ØªÙØ§Ø¯Ù از Ø§ÙØ¯Ø§Ø²Ù بÙÙÚ© %Ild\n"
msgid "Unknown command line option: %s\n"
msgstr "گزÛÙÙ٠خط ÙØ±Ù
Ø§Ù ÙØ§Ø´ÙاختÙ: %s\n"
-#. i18n-hint: '-help', '-test' and
-#. '-blocksize' need to stay in English.
-#: AudacityApp.cpp:686
-msgid ""
-"Command-line options supported:\n"
-" -help (this message)\n"
-" -test (run self diagnostics)\n"
-" -blocksize ### (set max disk block size in bytes)\n"
-"\n"
-"In addition, specify the name of an audio file or Audacity project\n"
-"to open it.\n"
-"\n"
-msgstr ""
-"گزÛÙÙâÙØ§Û خط ÙØ±Ù
Ø§Ù Ù¾Ø´ÛØ¨Ø§ÙÛ Ù
ÛâØ´ÙØ¯:\n"
-" -help (ÙÙ
ÛÙ Ù¾ÛØºØ§Ù
)\n"
-" -test (Ø§Ø¬Ø±Ø§Û Ø¹ÛØ¨âÛØ§Ø¨Û)\n"
-" -blocksize ### (ØªÙØ¸ÛÙ
ØØ¯Ø§Ú©Ø«Ø± Ø§ÙØ¯Ø§Ø²Ù٠بÙÙÚ© Ø¯ÛØ³Ú© بر ØØ³Ø¨ Ø¨Ø§ÛØª)\n"
-"\n"
-"Ø¨Ù Ø¹ÙØ§ÙÙØ ÙØ§Ù
ÛÚ© پرÙÙØ¯ÙÙ ØµÙØªÛ ÛØ§ پرÙÚÙÙ Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø±Ø§ Ù
شخص Ú©ÙÛØ¯\n"
-"تا باز Ø´ÙØ¯.\n"
-
#: AudacityApp.cpp:839
-msgid ""
-"Audacity could not find a place to store temporary files.\n"
+msgid "Audacity could not find a place to store temporary files.\n"
"Please enter an appropriate directory in the preferences dialog."
-msgstr ""
-"Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø¬Ø§ÛÛ Ø¨Ø±Ø§Û Ø°Ø®ÛØ±Ù٠پرÙÙØ¯ÙÙ Ù
ÙÙØª Ù¾ÛØ¯Ø§ Ùکرد.\n"
+msgstr "Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø¬Ø§ÛÛ Ø¨Ø±Ø§Û Ø°Ø®ÛØ±Ù٠پرÙÙØ¯ÙÙ Ù
ÙÙØª Ù¾ÛØ¯Ø§ Ùکرد.\n"
"ÙØ·Ùا٠در Ù¾ÙØ¬Ø±ÙÙ ØªØ±Ø¬ÛØØ§Øª ÛÚ© شاخÙÙ Ù
ÙØ§Ø³Ø¨ ÙØ§Ø±Ø¯ Ú©ÙÛØ¯."
-
#: AudacityApp.cpp:845
-msgid ""
-"Audacity is now going to exit. Please launch Audacity again to use the new "
-"temporary directory."
-msgstr ""
-"در ØØ§Ù خارج شد٠از Ø§ÙØ¯Ø§Ø³ÛتÛ. Ø¨Ø±Ø§Û Ø§Ø³ØªÙØ§Ø¯Ù از شاخÙÙ Ù
ÙÙØª Ø¬Ø¯ÛØ¯ ÙØ·Ùا٠"
-"Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø±Ø§ Ø¯ÙØ¨Ø§Ø±Ù راÙâØ§ÙØ¯Ø§Ø²Û Ú©ÙÛØ¯."
+msgid "Audacity is now going to exit. Please launch Audacity again to use the new temporary directory."
+msgstr "در ØØ§Ù خارج شد٠از Ø§ÙØ¯Ø§Ø³ÛتÛ. Ø¨Ø±Ø§Û Ø§Ø³ØªÙØ§Ø¯Ù از شاخÙÙ Ù
ÙÙØª Ø¬Ø¯ÛØ¯ ÙØ·ÙØ§Ù Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø±Ø§ Ø¯ÙØ¨Ø§Ø±Ù راÙâØ§ÙØ¯Ø§Ø²Û Ú©ÙÛØ¯."
#: AudacityApp.cpp:877
-msgid ""
-"Running two copies of Audacity simultaneously may cause\n"
+msgid "Running two copies of Audacity simultaneously may cause\n"
"data loss or cause your system to crash.\n"
"\n"
-msgstr ""
-"Ø§Ø¬Ø±Ø§Û ÙÙ
âØ²Ù
Ø§Ù Ø¯Ù ÙØ³Ø®Ù از Ø§ÙØ¯Ø§Ø³ÛØªÛ Ù
Ù
ک٠است باعث\n"
+msgstr "Ø§Ø¬Ø±Ø§Û ÙÙ
âØ²Ù
Ø§Ù Ø¯Ù ÙØ³Ø®Ù از Ø§ÙØ¯Ø§Ø³ÛØªÛ Ù
Ù
ک٠است باعث\n"
"از دست داد٠دادÙâÙØ§ Ø´ÙØ¯Ø ÛØ§ Ø³ÛØ³ØªÙ
را از کار Ø¨ÛØ§Ùدازد.\n"
"\n"
#: AudacityApp.cpp:884
-msgid ""
-"Audacity was not able to lock the temporary files directory.\n"
+msgid "Audacity was not able to lock the temporary files directory.\n"
"This folder may be in use by another copy of Audacity.\n"
-msgstr ""
-"Ø§ÙØ¯Ø§Ø³ÛØªÛ ÙØªÙØ§ÙØ³Øª شاخÙ٠پرÙÙØ¯ÙâÙØ§Û Ù
ÙÙØª را ÙÙÙ Ú©ÙØ¯.\n"
+msgstr "Ø§ÙØ¯Ø§Ø³ÛØªÛ ÙØªÙØ§ÙØ³Øª شاخÙ٠پرÙÙØ¯ÙâÙØ§Û Ù
ÙÙØª را ÙÙÙ Ú©ÙØ¯.\n"
"Ù
Ù
ک٠است ÛÚ© ÙØ³Ø®Ù٠دÛگر Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø¯Ø± ØØ§Ù Ø§Ø³ØªÙØ§Ø¯Ù از اÛÙ Ù¾ÙØ´Ù باشد.\n"
#: AudacityApp.cpp:886
@@ -255,31 +292,58 @@ msgid "The system has detected that another copy of Audacity is running.\n"
msgstr "Ø³ÛØ³ØªÙ
ÛÚ© ÙØ³Ø®Ù٠دÛگر Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø±Ø§ در ØØ§Ù اجرا ÛØ§Ùت٠است.\n"
#: AudacityApp.cpp:902
-msgid ""
-"Use the New or Open commands in the currently running Audacity\n"
+msgid "Use the New or Open commands in the currently running Audacity\n"
"process to open multiple projects simultaneously.\n"
-msgstr ""
-"Ø¨Ø±Ø§Û Ø§ÛÙÚ©Ù ÚÙØ¯Û٠پرÙÚ٠را ÙÙ
âØ²Ù
ا٠باز Ú©ÙÛØ¯\n"
+msgstr "Ø¨Ø±Ø§Û Ø§ÛÙÚ©Ù ÚÙØ¯Û٠پرÙÚ٠را ÙÙ
âØ²Ù
ا٠باز Ú©ÙÛØ¯\n"
"از ÙØ±Ù
Ø§Ù Ø¬Ø¯ÛØ¯ ÛØ§ بازکرد٠در Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø¯Ø± ØØ§Ù اجرا Ø§Ø³ØªÙØ§Ø¯Ù Ú©ÙÛØ¯\n"
#: AudacityApp.cpp:903
msgid "Audacity is already running"
msgstr "Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø§Ø² ÙØ¨Ù در ØØ§Ù اجرا است"
+#: AudacityApp.cpp:1252
+msgid "Command-line options supported:"
+msgstr ""
+
+#. i18n-hint: '-help' is the option and needs to stay in
+#. * English. This displays a list of available options
+#: AudacityApp.cpp:1255
+msgid "\t-help (this message)"
+msgstr ""
+
+#. i18n-hint '-version' needs to stay in English.
+#: AudacityApp.cpp:1257
+msgid "\t-version (display Audacity version)"
+msgstr ""
+
+#. i18n-hint '-test' is the option and needs to stay in
+#. * English. This runs a set of automatic tests on audacity
+#. * itself
+#: AudacityApp.cpp:1261
+msgid "\t-test (run self diagnostics)"
+msgstr ""
+
+#. i18n-hint '-blocksize' is the option and needs to stay in
+#. * English. 'nnn' is any integer number. This controls the
+#. * size pieces that audacity uses when writing files to the
+#. * disk
+#: AudacityApp.cpp:1266
+msgid "\t-blocksize nnn (set max disk block size in bytes)"
+msgstr ""
+
+#: AudacityApp.cpp:1267
+msgid "In addition, specify the name of an audio file or Audacity project to open it."
+msgstr ""
#: AudacityApp.cpp:1173
-msgid ""
-"Audacity project (.AUP) files are not currently \n"
+msgid "Audacity project (.AUP) files are not currently \n"
"associated with Audacity. \n"
"\n"
"Associate them, so they open on double-click?"
-msgstr ""
-"پرÙÙØ¯ÙâÙØ§Û پرÙÚÙÙ Ø§ÙØ¯Ø§Ø³ÛØªÛ (â.AUP) ÙÙ
âØ§Ú©ÙÙÙ\n"
-"بÙâØ·ÙØ± Ù¾ÛØ´âÙØ±Ø¶ با Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø¨Ø§Ø² ÙÙ
ÛâØ´ÙÙØ¯."
-"\n"
+msgstr "پرÙÙØ¯ÙâÙØ§Û پرÙÚÙÙ Ø§ÙØ¯Ø§Ø³ÛØªÛ (â.AUP) ÙÙ
âØ§Ú©ÙÙÙ\n"
+"بÙâØ·ÙØ± Ù¾ÛØ´âÙØ±Ø¶ با Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø¨Ø§Ø² ÙÙ
ÛâØ´ÙÙØ¯.\n"
"Ø¢ÙÙØ§ Ø¨Ù Ø§ÙØ¯Ø§Ø³ÛØªÛ Ù
رتبط Ø´ÙÙØ¯ تا با Ø¯ÙØ¨Ø§Ø± Ú©ÙÛÚ© باز Ø´ÙÙØ¯Ø"
-
#: AudacityApp.cpp:1174
msgid "Audacity Project Files"
msgstr "پرÙÙØ¯ÙâÙØ§Û پرÙÚÙÙ Ø§ÙØ¯Ø§Ø³ÛتÛ"
@@ -289,11 +353,9 @@ msgid "Could not find any audio devices.\n"
msgstr "ÙÛÚ Ø¯Ø³ØªÚ¯Ø§Ù ØµÙØªÛâØ§Û Ù¾ÛØ¯Ø§ ÙØ´Ø¯.\n"
#: AudioIO.cpp:215
-msgid ""
-"You will not be able to play or record audio.\n"
+msgid "You will not be able to play or record audio.\n"
"\n"
-msgstr ""
-"ÙØ§Ø¯Ø± ب٠پخش ÛØ§ ضبط صدا ÙØ®ÙاÙÛØ¯ Ø¨ÙØ¯.\n"
+msgstr "ÙØ§Ø¯Ø± ب٠پخش ÛØ§ ضبط صدا ÙØ®ÙاÙÛØ¯ Ø¨ÙØ¯.\n"
"\n"
#: AudioIO.cpp:218
@@ -304,16 +366,24 @@ msgstr "خطا: "
msgid "Error Initializing Audio"
msgstr "خطا در راÙâØ§ÙØ¯Ø§Ø²Û صدا"
+#: AudioIO.cpp:1225
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
+"Audacity has brought it back to start at zero.\n"
+"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
+msgstr ""
+
+#: AudioIO.cpp:1225
+msgid "Latency problem"
+msgstr ""
+
#: AutoRecovery.cpp:40
msgid "Automatic Crash Recovery"
msgstr "Ø¨Ø§Ø²ÛØ§Ø¨Û Ø®ÙØ¯Ú©Ø§Ø± پس از ÙØ±ÙپاشÛ"
#: AutoRecovery.cpp:59
-msgid ""
-"Some projects were not saved properly the last time Audacity was run.\n"
+msgid "Some projects were not saved properly the last time Audacity was run.\n"
"Fortunately, the following projects can automatically be recovered:"
-msgstr ""
-"Ø¯ÙØ¹ÙÙ ÙØ¨ÙÛ Ú©Ù Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø§Ø¬Ø±Ø§ Ø´Ø¯ÙØ Ø¨Ø¹Ø¶Û Ù¾Ø±ÙÚÙâÙØ§ درست Ø°Ø®ÛØ±Ù ÙØ´Ø¯ÙâØ§ÙØ¯.\n"
+msgstr "Ø¯ÙØ¹ÙÙ ÙØ¨ÙÛ Ú©Ù Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø§Ø¬Ø±Ø§ Ø´Ø¯ÙØ Ø¨Ø¹Ø¶Û Ù¾Ø±ÙÚÙâÙØ§ درست Ø°Ø®ÛØ±Ù ÙØ´Ø¯ÙâØ§ÙØ¯.\n"
"Ø®ÙØ´Ø¨Ø®ØªØ§Ù٠پرÙÚÙâÙØ§Û Ø²ÛØ± را Ù
ÛâØªÙØ§Ù Ø¨Ù Ø·ÙØ± Ø®ÙØ¯Ú©Ø§Ø± Ø¨Ø§Ø²ÛØ§Ø¨Û کرد:"
#: AutoRecovery.cpp:61
@@ -325,34 +395,30 @@ msgid "Name"
msgstr "ÙØ§Ù
"
#: AutoRecovery.cpp:70
-msgid ""
-"Recovering a project will not change any files on disk before you save it."
+msgid "Recovering a project will not change any files on disk before you save it."
msgstr "Ø¨Ø§Ø²ÛØ§Ø¨Û پرÙÚÙ Ù¾ÛØ´ از Ø°Ø®ÛØ±Ù کرد٠ÙÛÚ Ù¾Ø±ÙÙØ¯ÙâØ§Û Ø±Ø§ در Ø¯ÛØ³Ú© تغÛÛØ± ÙØ®ÙØ§ÙØ¯ داد."
#: AutoRecovery.cpp:74
msgid "Quit Audacity"
msgstr "Ø®Ø±ÙØ¬ از Ø§ÙØ¯Ø§Ø³ÛتÛ"
-#: AutoRecovery.cpp:75
-msgid "Don't recover"
-msgstr "Ø¨Ø§Ø²ÛØ§Ø¨Û ÙØ´Ùد"
+#: AutoRecovery.cpp:89
+msgid "Do Not Recover"
+msgstr ""
-#: AutoRecovery.cpp:76
-msgid "Recover projects"
+#: AutoRecovery.cpp:90
+#, fuzzy
+msgid "Recover Projects"
msgstr "Ø¨Ø§Ø²ÛØ§Ø¨Û پرÙÚÙâÙØ§"
-#: AutoRecovery.cpp:113
-msgid ""
-"You have chosen not to recover any projects. You will not be able to recover "
-"those projects later if you change your mind. Do you really want to continue "
-"without recovering?"
+#: AutoRecovery.cpp:127
+msgid "Are you sure you don't want to recover any projects?\n"
+"They can't be recovered later."
msgstr ""
-"Ø´Ù
ا تصÙ
ÛÙ
Ú¯Ø±ÙØªÛد ÙÛÚ Ù¾Ø±ÙÚÙâØ§Û Ø±Ø§ Ø¨Ø§Ø²ÛØ§Ø¨Û ÙÚ©ÙÛØ¯. بعدا٠اگر ÙØ¸Ø±ØªØ§Ù تغÛÛØ± کرد ÙØ§Ø¯Ø± ÙØ®ÙاÙÛØ¯ Ø¨ÙØ¯ اÛ٠پرÙÚÙâÙØ§ را Ø¨Ø§Ø²ÛØ§Ø¨Û Ú©ÙÛØ¯. "
-"Ø¢ÛØ§ ÙØ§Ùعا٠Ù
ÛâØ®ÙØ§ÙÛØ¯ بدÙÙ Ø¨Ø§Ø²ÛØ§Ø¨Û اداÙ
٠دÙÛØ¯Ø"
-#: AutoRecovery.cpp:114
-msgid "Question"
-msgstr "پرسش"
+#: AutoRecovery.cpp:128
+msgid "Confirm?"
+msgstr ""
#: AutoRecovery.cpp:132 AutoRecovery.cpp:169
msgid "Could not enumerate files in auto save directory"
@@ -389,34 +455,59 @@ msgstr "&پاراÙ
ØªØ±ÙØ§"
msgid "C&hoose command"
msgstr "اÙ&تخاب ÙØ±Ù
اÙ"
-#. i18n-hint: Effect name translations must agree with those used elsewhere, or batch won't find them
-#: BatchCommands.cpp:232 BatchCommands.cpp:466 BatchCommands.cpp:468
-#: Menus.cpp:451 Menus.cpp:654 effects/StereoToMono.h:23
-msgid "&Stereo To Mono"
-msgstr "ا&سترÛ٠ب٠Ù
ÙÙÙ"
+#: BatchCommands.cpp:455
+msgid "Stereo to Mono Effect not found"
+msgstr ""
-#: BatchCommands.cpp:233 BatchCommands.cpp:238 BatchCommands.cpp:246
-#: effects/Normalize.cpp:94
-msgid "Normalize"
-msgstr "ÙØ±Ù
اÙâØ³Ø§Ø²Û"
+#: export/Export.cpp:410
+msgid "Ogg Vorbis support is not included in this build of Audacity"
+msgstr "در اÛÙ ÙØ³Ø®Ù از Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø§ÙÚ¯ ÙØ±Ø¨Ûس را Ù¾Ø´ØªÛØ¨Ø§ÙÛ ÙÙ
ÛâÚ©ÙØ¯"
-#: BatchCommands.cpp:235 effects/NoiseRemoval.cpp:675
-msgid "Noise Removal"
-msgstr "ØØ°Ù ÙÙÙÙ"
+#: BatchCommands.cpp:487
+msgid "FLAC support is not included in this build of Audacity"
+msgstr ""
-#: BatchCommands.cpp:236 effects/TruncSilence.cpp:84 effects/TruncSilence.h:29
-msgid "Truncate Silence..."
-msgstr "ØØ°Ù Ø³Ú©ÙØª..."
+#: BatchCommands.cpp:491
+#, c-format
+msgid "Command %s not implemented yet"
+msgstr ""
-#: BatchCommands.cpp:237 effects/Leveller.cpp:129
-msgid "Leveller"
-msgstr "ابزار ØªØ±Ø§Ø²Ø¨ÙØ¯Û"
+#: BatchCommands.cpp:507
+#, c-format
+msgid "Could not set parameters of effect %s\n"
+" to %s."
+msgstr ""
+
+#: BatchCommands.cpp:560
+#, c-format
+msgid "Your batch command of %s was not recognised."
+msgstr ""
+
+#: BatchCommands.cpp:651
+#, c-format
+msgid "Apply %s with parameter(s)\n"
+"\n"
+"%s"
+msgstr ""
+
+#: BatchCommands.cpp:652 BatchCommands.cpp:657
+msgid "Test Mode"
+msgstr ""
+
+#: BatchCommands.cpp:656
+#, c-format
+msgid "Apply %s"
+msgstr ""
#: BatchProcessDialog.cpp:58 BatchProcessDialog.cpp:68
#: BatchProcessDialog.cpp:69
msgid "Apply Chain"
msgstr "Ø§ÙØ¹Ù
Ø§Ù Ø²ÙØ¬ÛرÙ"
+#: BatchProcessDialog.cpp:67
+msgid "CleanSpeech Batch Processing"
+msgstr ""
+
#: BatchProcessDialog.cpp:92
msgid "&Select chain"
msgstr "&Ø§ÙØªØ®Ø§Ø¨ Ø²ÙØ¬ÛرÙ"
@@ -465,19 +556,21 @@ msgstr "در ØØ§Ù Ø§ÙØ¹Ù
ا٠«%s» بر پرÙÚÙÙ ÙØ¹ÙÛ"
msgid "Please save and close the current project first."
msgstr "ÙØ·Ùا٠ابتدا پرÙÚÙÙ ÙØ¹ÙÛ Ø±Ø§ Ø°Ø®ÛØ±Ù Ú©Ø±Ø¯Ù Ù Ø¨Ø¨ÙØ¯Ûد."
+#: BatchProcessDialog.cpp:206
+msgid "Select vocal file(s) for batch CleanSpeech Chain..."
+msgstr ""
+
#: BatchProcessDialog.cpp:205
msgid "Select file(s) for batch processing..."
msgstr "پرÙÙØ¯Ù(ÙØ§Û) ÙØ§Ø²Ù
Ø¨Ø±Ø§Û Ù¾Ø±Ø¯Ø§Ø²Ø´ دستÙâØ§Û Ø±Ø§ Ø§ÙØªØ®Ø§Ø¨ Ú©ÙÛØ¯..."
-#: BatchProcessDialog.cpp:208
-msgid ""
-"All files (*.*)|*.*|WAV files (*.wav)|*.wav|AIFF files (*.aif)|*.aif|AU "
-"files (*.au)|*.au|MP3 files (*.mp3)|*.mp3|Ogg Vorbis files (*.ogg)|*.ogg|"
-"FLAC files (*.flac)|*.flac"
+#: BatchProcessDialog.cpp:209
+msgid "Vocal files (*.wav;*.mp3)|*.wav;*.mp3|WAV files (*.wav)|*.wav|MP3 files (*.mp3)|*.mp3"
msgstr ""
-"ÙÙ
Ù٠پرÙÙØ¯ÙâÙØ§ (*.*)|*.*|WAV پرÙÙØ¯ÙâÙØ§Û (*.wav)|*.wav|AIFF پرÙÙØ¯ÙâÙØ§Û (*.aif)|*.aif|AU "
-"پرÙÙØ¯ÙâÙØ§Û (*.au)|*.au|MP3 پرÙÙØ¯ÙâÙØ§Û (*.mp3)|*.mp3|پرÙÙØ¯ÙâÙØ§Û اÙÚ¯ ÙÙØ±Ø¨Ûس (*.ogg)|*.ogg|"
-"FLAC پرÙÙØ¯ÙâÙØ§Û (*.flac)|*.flac"
+
+#: BatchProcessDialog.cpp:208
+msgid "All files (*.*)|*.*|WAV files (*.wav)|*.wav|AIFF files (*.aif)|*.aif|AU files (*.au)|*.au|MP3 files (*.mp3)|*.mp3|Ogg Vorbis files (*.ogg)|*.ogg|FLAC files (*.flac)|*.flac"
+msgstr "ÙÙ
Ù٠پرÙÙØ¯ÙâÙØ§ (*.*)|*.*|WAV پرÙÙØ¯ÙâÙØ§Û (*.wav)|*.wav|AIFF پرÙÙØ¯ÙâÙØ§Û (*.aif)|*.aif|AU پرÙÙØ¯ÙâÙØ§Û (*.au)|*.au|MP3 پرÙÙØ¯ÙâÙØ§Û (*.mp3)|*.mp3|پرÙÙØ¯ÙâÙØ§Û اÙÚ¯ ÙÙØ±Ø¨Ûس (*.ogg)|*.ogg|FLAC پرÙÙØ¯ÙâÙØ§Û (*.flac)|*.flac"
#: BatchProcessDialog.cpp:229
msgid "Applying..."
@@ -512,9 +605,10 @@ msgstr "ت&غÛÛØ± ÙØ§Ù
"
msgid "C&hain (Double-Click or press SPACE to edit)"
msgstr "&Ø²ÙØ¬Ûر٠(Ø¨Ø±Ø§Û ÙÛØ±Ø§ÛØ´ Ø¯ÙØ¨Ø§Ø± Ú©ÙÛÚ© Ú©ÙÛØ¯ ÛØ§ Ú©ÙÛØ¯ ÙØ§ØµÙ٠را ÙØ´Ø§Ø± دÙÛØ¯)"
-#: BatchProcessDialog.cpp:450
-msgid "No"
-msgstr "ÙÙ"
+#. i18n-hint: This is the number of the command in the list
+#: BatchProcessDialog.cpp:453
+msgid "Num"
+msgstr ""
#: BatchProcessDialog.cpp:456
msgid "&Insert"
@@ -576,13 +670,10 @@ msgid "Copying audio data into project..."
msgstr "در ØØ§Ù ÙØ³Ø®ÙâØ¨Ø±Ø¯Ø§Ø±Û Ø§Ø² Ø§Ø·ÙØ§Ø¹Ø§Øª ØµÙØªÛ در پرÙÚÙ..."
#: Dependencies.cpp:219
-msgid ""
-"Your project currently depends on the presence of other files.\n"
-"Copy audio from the following files into your project to make it self-"
-"contained?\n"
+msgid "Your project currently depends on the presence of other files.\n"
+"Copy audio from the following files into your project to make it self-contained?\n"
"This will need more disc space but is safer."
-msgstr ""
-"پرÙÚÙÙ Ø´Ù
ا در ØØ§Ù ØØ§Ø¶Ø± Ø¨Ù ÙØ¬Ùد پرÙÙØ¯ÙâÙØ§Û دÛÚ¯Ø±Û ÙØ§Ø¨Ø³ØªÙ است.\n"
+msgstr "پرÙÚÙÙ Ø´Ù
ا در ØØ§Ù ØØ§Ø¶Ø± Ø¨Ù ÙØ¬Ùد پرÙÙØ¯ÙâÙØ§Û دÛÚ¯Ø±Û ÙØ§Ø¨Ø³ØªÙ است.\n"
"Ø¢ÛØ§ Ù
ÛâØ®ÙØ§ÙÛØ¯ با ÙØ³Ø®ÙâØ¨Ø±Ø¯Ø§Ø±Û Ø§Ø² اÛ٠پرÙÙØ¯ÙâÙØ§ در پرÙÚÙâØªØ§Ù Ø¢Ù Ø±Ø§ Ù
ستÙÙ Ú©ÙÛØ¯Ø\n"
"اÛ٠کار Ø¨Ù ÙØ¶Ø§Û Ø¨ÛØ´ØªØ±Û از Ø¯ÛØ³Ú© ÙÛØ§Ø² دارد ÙÙÛ Ù
Ø·Ù
ئÙâØªØ± است."
@@ -610,28 +701,26 @@ msgstr "ÙØ³Ø®ÙâØ¨Ø±Ø¯Ø§Ø±Û Ø§Ø² پرÙÙØ¯ÙâÙØ§Û ØµÙØªÛ Ø§ÙØªØ®Ø§Ø¨
msgid "Cancel Save"
msgstr "ØµØ±Ù ÙØ¸Ø± از Ø°Ø®ÛØ±ÙâØ³Ø§Ø²Û"
-#: Dependencies.cpp:305
-msgid "Skip"
-msgstr "گذشتÙ"
-
-#: Dependencies.cpp:308 FreqWindow.cpp:207
-msgid "Close"
-msgstr "بستÙ"
+#: Dependencies.cpp:313
+msgid "Do Not Copy Any Audio"
+msgstr ""
-#: Dependencies.cpp:311
-msgid "Copy All Audio Into Project (safer)"
-msgstr "ÙØ³Ø®ÙâØ¨Ø±Ø¯Ø§Ø±Û Ø§Ø² ÙÙ
ÙÙ ØµØ¯Ø§ÙØ§ در پرÙÚÙ (را٠Ù
Ø·Ù
ئÙâØªØ±)"
+#: Dependencies.cpp:315
+msgid "Copy All Audio into Project (Safer)"
+msgstr ""
#: Dependencies.cpp:320 Dependencies.cpp:325
msgid "Ask me"
msgstr "پرسش از Ø´Ù
ا"
-#: Dependencies.cpp:321 prefs/FileFormatPrefs.cpp:136
-msgid "Always © all audio (safest)"
+#: Dependencies.cpp:325
+#, fuzzy
+msgid "Always copy all audio (safest)"
msgstr "&ÙÙ
ÛØ´Ù از ÙÙ
ÙÙ ØµØ¯Ø§ÙØ§ ÙØ³Ø®ÙâØ¨Ø±Ø¯Ø§Ø±Û Ø´ÙØ¯ (Ù
Ø·Ù
ئÙâØªØ±Û٠راÙ)"
-#: Dependencies.cpp:322 prefs/FileFormatPrefs.cpp:137
-msgid "&Never copy any audio"
+#: Dependencies.cpp:326
+#, fuzzy
+msgid "Never copy any audio"
msgstr "ÙÛ&ÚâÙÙØª از ØµØ¯Ø§ÙØ§ ÙØ³Ø®ÙâØ¨Ø±Ø¯Ø§Ø±Û ÙØ´Ùد"
#: Dependencies.cpp:324
@@ -639,15 +728,11 @@ msgid "Whenever a project depends on other files:"
msgstr "ÙÙØªÛ پرÙÚÙâØ§Û Ø¨Ù Ù¾Ø±ÙÙØ¯ÙâÙØ§Û دÛگر ÙØ§Ø¨Ø³ØªÙ Ø¨ÙØ¯:"
#: Dependencies.cpp:412
-msgid ""
-"If you proceed, your project will not be saved to disk. Is this what you "
-"want?"
+msgid "If you proceed, your project will not be saved to disk. Is this what you want?"
msgstr "اگر اداÙ
٠دÙÛØ¯ پرÙÚÙÙ Ø´Ù
ا در Ø¯ÛØ³Ú© Ø°Ø®ÛØ±Ù ÙØ®ÙØ§ÙØ¯ شد. Ø¢ÛØ§ Ù
ÙØ¸Ùرتا٠ÙÙ
Û٠استØ"
#: Dependencies.cpp:452
-msgid ""
-"Your project is self-contained; it does not depend on any external audio "
-"files."
+msgid "Your project is self-contained; it does not depend on any external audio files."
msgstr "پرÙÚÙÙ Ø´Ù
ا Ù
ستÙ٠است ٠ب٠ÙÛÚ Ù¾Ø±ÙÙØ¯ÙÙ ØµÙØªÛ خارجÛâØ§Û ÙØ§Ø¨Ø³ØªÙ ÙÛØ³Øª."
#: Dependencies.cpp:453
@@ -655,11 +740,9 @@ msgid "Dependency check"
msgstr "Ø¨Ø±Ø±Ø³Û ÙØ§Ø¨Ø³ØªÚ¯Û"
#: DirManager.cpp:136
-msgid ""
-"Warning: there is very little free disk space left on this volume.\n"
+msgid "Warning: there is very little free disk space left on this volume.\n"
"Please select another temporary directory in your preferences."
-msgstr ""
-"اخطار: ÙØ¶Ø§Û آزاد Ø¨Ø³ÛØ§Ø± Ú©Ù
Û Ø¯Ø± اÛÙ Ø¯ÛØ³Ú© ÙØ¬Ùد دارد.\n"
+msgstr "اخطار: ÙØ¶Ø§Û آزاد Ø¨Ø³ÛØ§Ø± Ú©Ù
Û Ø¯Ø± اÛÙ Ø¯ÛØ³Ú© ÙØ¬Ùد دارد.\n"
"ÙØ·Ùا٠در ØªØ±Ø¬ÛØØ§ØªØªØ§Ù Ø´Ø§Ø®ÙÙ Ù
ÙÙØª دÛÚ¯Ø±Û Ø§ÙØªØ®Ø§Ø¨ Ú©ÙÛØ¯."
#: DirManager.cpp:221 DirManager.cpp:251 DirManager.cpp:332
@@ -680,14 +763,10 @@ msgstr "در ØØ§Ù Ù¾Ø§Ú©âØ³Ø§Ø²Û Ø´Ø§Ø®ÙâÙØ§Û ØØ§ÙظÙÙ ÙÙØ§Ù"
#: DirManager.cpp:493
#, c-format
-msgid ""
-"Audacity found an orphaned blockfile %s! \n"
-"Please consider saving and reloading the project to perform a complete "
-"project check.\n"
-msgstr ""
-"Ø§ÙØ¯Ø§Ø³ÛØªÛ ÛÚ© پرÙÙØ¯ÙÙ Ø§ÙØ³Ø¯Ø§Ø¯ ÛØªÛÙ
Ø¨Ù ÙØ§Ù
%s Ù¾ÛØ¯Ø§ کرد٠است!\n"
-"ÙØ·Ùا٠پرÙÚ٠را Ø°Ø®ÛØ±Ù Ù Ø¯ÙØ¨Ø§Ø±Ù Ø¨Ø§Ø±Ú¯ÛØ±Û Ú©ÙÛØ¯ تا"
-"پرÙÚÙ Ø¨Ù Ø·ÙØ± کاÙ
Ù Ø¨Ø±Ø±Ø³Û Ø´ÙØ¯.\n"
+msgid "Audacity found an orphaned blockfile %s! \n"
+"Please consider saving and reloading the project to perform a complete project check.\n"
+msgstr "Ø§ÙØ¯Ø§Ø³ÛØªÛ ÛÚ© پرÙÙØ¯ÙÙ Ø§ÙØ³Ø¯Ø§Ø¯ ÛØªÛÙ
Ø¨Ù ÙØ§Ù
%s Ù¾ÛØ¯Ø§ کرد٠است!\n"
+"ÙØ·Ùا٠پرÙÚ٠را Ø°Ø®ÛØ±Ù Ù Ø¯ÙØ¨Ø§Ø±Ù Ø¨Ø§Ø±Ú¯ÛØ±Û Ú©ÙÛØ¯ تاپرÙÚÙ Ø¨Ù Ø·ÙØ± کاÙ
Ù Ø¨Ø±Ø±Ø³Û Ø´ÙØ¯.\n"
#. i18n-hint: This is the pattern for filenames that are created
#. when a file needs to be backed up to a different name. For
@@ -711,16 +790,16 @@ msgstr "ØØ°Ù «â%s» Ù
Ù
Ú©Ù ÙÛØ³Øª"
msgid "Renamed file: %s\n"
msgstr "پرÙÙØ¯Ù با ÙØ§Ù
تغÛÛØ± ÛØ§ÙتÙ: â%s\n"
-#: DirManager.cpp:1023
-#, c-format
-msgid "Changing block %s\n"
-msgstr "در ØØ§Ù تغÛÛØ± بÙÙÚ© %s\n"
-
#: DirManager.cpp:1051
#, c-format
msgid "Unable to rename '%s' to '%s'"
msgstr "تغÛÛØ± ÙØ§Ù
«â%s» ب٠«â%s» Ù
Ù
Ú©Ù ÙÛØ³Øª"
+#: DirManager.cpp:1181
+#, c-format
+msgid "Changed block %s to new alias name\n"
+msgstr ""
+
#: DirManager.cpp:1115 DirManager.cpp:1403
msgid "Inspecting project file data..."
msgstr "در ØØ§Ù Ø¨Ø§Ø²Ø±Ø³Û Ø¯Ø§Ø¯ÙâÙØ§Û پرÙÙØ¯Ù٠پرÙÚÙ..."
@@ -746,18 +825,14 @@ msgid "Missing data file: (%s.au)"
msgstr "پرÙÙØ¯Ù٠دادÙâÙØ§ ÙØ¬Ùد ÙØ¯Ø§Ø±Ø¯: (%s.au)"
#: DirManager.cpp:1207
-msgid ""
-"Project check found inconsistencies inspecting the loaded project data;\n"
-"click 'Details' for a complete list of errors, or 'OK' to proceed to more "
-"options."
+msgid "Project check found inconsistencies inspecting the loaded project data;\n"
+"click 'Details' for a complete list of errors, or 'OK' to proceed to more options."
msgstr "ØØ¯Ø± Ø¨Ø±Ø±Ø³Û Ù¾Ø±ÙÚÙØ ÙØ§Ø³Ø§Ø²Ú¯Ø§Ø±ÛâÙØ§ÛÛ Ø¯Ø± دادÙâÙØ§Û بارشدÙ٠پرÙÚÙ Ù¾ÛØ¯Ø§ شد\n"
-"Ø¨Ø±Ø§Û ÙÙØ±Ø³Øª کاÙ
ÙÛ Ø§Ø² Ø®Ø·Ø§ÙØ§ رÙÛ Â«Ø¬Ø²Ø¦ÛØ§ØªÂ» ÛØ§ Ø¨Ø±Ø§Û Ù¾ÛØ´âØ±ÙØªÙ Ù Ø¯ÛØ¯Ù گزÛÙÙâÙØ§Û Ø¨ÛØ´ØªØ± رÙÛ Â«ØªØ£ÛÛØ¯Â»"
-" Ú©ÙÛÚ© Ú©ÙÛØ¯."
+"Ø¨Ø±Ø§Û ÙÙØ±Ø³Øª کاÙ
ÙÛ Ø§Ø² Ø®Ø·Ø§ÙØ§ رÙÛ Â«Ø¬Ø²Ø¦ÛØ§ØªÂ» ÛØ§ Ø¨Ø±Ø§Û Ù¾ÛØ´âØ±ÙØªÙ Ù Ø¯ÛØ¯Ù گزÛÙÙâÙØ§Û Ø¨ÛØ´ØªØ± رÙÛ Â«ØªØ£ÛÛØ¯Â» Ú©ÙÛÚ© Ú©ÙÛØ¯."
#: DirManager.cpp:1219
#, c-format
-msgid ""
-"Project check found %d orphaned blockfile[s]. These files are\n"
+msgid "Project check found %d orphaned blockfile[s]. These files are\n"
"unused and probably left over from a crash or some other bug.\n"
"They should be deleted to avoid disk contention."
msgstr "در Ø¨Ø±Ø±Ø³Û Ù¾Ø±ÙÚÙ %Id پرÙÙØ¯ÙÙ Ø§ÙØ³Ø¯Ø§Ø¯ ÛØªÛÙ
Ù¾ÛØ¯Ø§ شد. از اÛ٠پرÙÙØ¯ÙâÙØ§\n"
@@ -783,8 +858,7 @@ msgstr "اخطار"
#: DirManager.cpp:1254
#, c-format
-msgid ""
-"Project check detected %d input file[s] being used in place\n"
+msgid "Project check detected %d input file[s] being used in place\n"
"('alias files') are now missing. There is no way for Audacity\n"
"to recover these files automatically; you may choose to\n"
"permanently fill in silence for the missing files, temporarily\n"
@@ -809,8 +883,7 @@ msgstr "ÙÙ
ÛÙ ØØ§Ùا پرÙÚ٠بدÙÙ ÙÛÚ ØªØºÛÛØ± دÛÚ¯Ø±Û Ø¨Ø³
#: DirManager.cpp:1300
#, c-format
-msgid ""
-"Project check detected %d missing summary file[s] (.auf).\n"
+msgid "Project check detected %d missing summary file[s] (.auf).\n"
"Audacity can fully regenerate these summary files from the\n"
"original audio data in the project."
msgstr "در Ø¨Ø±Ø±Ø³Û Ù¾Ø±ÙÚÙ %Id پرÙÙØ¯ÙÙ Ø®ÙØ§ØµÙÙ (.auf) ØªØ´Ø®ÛØµ داد٠شد.\n"
@@ -827,8 +900,7 @@ msgstr "پر کرد٠دادÙâÙØ§Û ÙÙ
Ø§ÛØ´Û Ù
ÙÙÙØ¯ با Ø³Ú©ÙØª [
#: DirManager.cpp:1342
#, c-format
-msgid ""
-"Project check detected %d missing audio data blockfile[s] (.au), \n"
+msgid "Project check detected %d missing audio data blockfile[s] (.au), \n"
"probably due to a bug, system crash or accidental deletion.\n"
"There is no way for Audacity to recover this lost data\n"
"automatically; you may choose to permanently fill in silence\n"
@@ -837,11 +909,10 @@ msgid ""
"missing data by hand."
msgstr "در Ø¨Ø±Ø±Ø³Û Ù¾Ø±ÙÚÙ %Id پرÙÙØ¯ÙÙ Ø§ÙØ³Ø¯Ø§Ø¯ (.au) Ù¾ÛØ¯Ø§ شد Ú©Ù Ø§ØØªÙ
Ø§ÙØ§Ù بدÙÛÙ ÛÚ© Ø®Ø·Ø§Ø ÙØ±ÙÙ¾Ø§Ø´Û Ø³ÛØ³ØªÙ
Ø \n"
"ÛØ§ ØØ°Ù Ø§ØªÙØ§ÙÛ Ø¨ÙØ¬Ùد Ø¢Ù
دÙâØ§ÙØ¯. Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø±Ø§ÙÛ Ø¨Ø±Ø§Û ØªØ±Ù
ÛÙ
Ø®ÙØ¯Ú©Ø§Ø± اÛ٠دادÙâÙØ§ ÙØ¯Ø§Ø±Ø¯Ø\n"
-" Ù
ÛâØªÙØ§ÙÛØ¯ Ø§ÙØªØ®Ø§Ø¨ Ú©ÙÛØ¯ Ú©Ù ÙÙ
ÛØ´Ù Ø³Ú©ÙØª Ø¨Ù Ø¬Ø§Û Ø¯Ø§Ø¯ÙâÙØ§Û Ù
ÙÙÙØ¯ Ù¾ÙØ± Ø´ÙØ¯Ø Ø¨Ø·ÙØ± Ù
ÙÙØª Ù \n"
+" Ù
ÛâØªÙØ§ÙÛØ¯ Ø§ÙØªØ®Ø§Ø¨ Ú©ÙÛØ¯ Ú©Ù ÙÙ
ÛØ´Ù Ø³Ú©ÙØª Ø¨Ù Ø¬Ø§Û Ø¯Ø§Ø¯ÙâÙØ§Û Ù
ÙÙÙØ¯ Ù¾ÙØ± Ø´ÙØ¯Ø Ø¨Ø·ÙØ± Ù
ÙÙØª Ù \n"
"ÙÙØ· Ø¨Ø±Ø§Û Ø§ÛÙ ÙØ´Ø³Øª Ø³Ú©ÙØª Ù¾ÙØ± Ø´ÙØ¯Ø ÛØ§ پرÙÚ٠را ÙÙ
ÛÙ ØØ§Ùا Ø¨Ø¨ÙØ¯Ûد Ù Ø³Ø¹Û Ú©ÙÛØ¯ ک٠دادÙâÙØ§Û\n"
"Ù
ÙÙÙØ¯ را Ø¨Ø·ÙØ± Ø¯Ø³ØªÛ Ø¨Ø§Ø²Ú¯Ø±Ø¯Ø§ÙÛ Ú©ÙÛØ¯."
-
#: DirManager.cpp:1347
msgid "Replace missing data with silence [permanent immediately]"
msgstr "جاÛگزÛÙÛ Ø¯Ø§Ø¯ÙâÙØ§Û Ù
ÙÙÙØ¯ با Ø³Ú©ÙØª [Ø¨ÙØ§ÙاصÙ٠دائÙ
Û Ø®ÙØ§Ùد شد]"
@@ -870,6 +941,96 @@ msgstr "در ØØ§Ù Ø°Ø®ÛØ±ÙÙ ØµØ¯Ø§ÙØ§Û Ø¶Ø¨Ø·âØ´Ø¯Ù Ø¯Ø± Ø¯ÛØ³Ú©..."
msgid "Rectangular"
msgstr "Ù
ستطÛÙÛ"
+#: FFmpeg.cpp:38
+msgid "FFmpeg support not compiled in"
+msgstr ""
+
+#: FFmpeg.cpp:103
+msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
+"but this time Audacity failed to load it at startup. \n"
+"\n"
+"You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: FFmpeg.cpp:106
+msgid "FFmpeg startup failed"
+msgstr ""
+
+#: FFmpeg.cpp:114
+msgid "FFmpeg library not found"
+msgstr ""
+
+#: FFmpeg.cpp:408
+msgid "Locate FFmpeg"
+msgstr ""
+
+#: FFmpeg.cpp:428
+#, c-format
+msgid "Audacity needs the file %s to import and export audio via FFmpeg."
+msgstr ""
+
+#: FFmpeg.cpp:434 export/ExportMP3.cpp:562
+#, c-format
+msgid "Location of %s:"
+msgstr ""
+
+#: FFmpeg.cpp:443 export/ExportMP3.cpp:571
+#, c-format
+msgid "To find %s, click here -->"
+msgstr ""
+
+#: FFmpeg.cpp:449 export/ExportMP3.cpp:577
+msgid "Browse..."
+msgstr ""
+
+#: FFmpeg.cpp:450
+msgid "To get a free copy of FFmpeg, click here -->"
+msgstr ""
+
+#: FFmpeg.cpp:451 export/ExportMP3.cpp:579
+msgid "Download"
+msgstr ""
+
+#. i18n-hint: It's asking for the location of a file, for
+#. example, "Where is lame_enc.dll?" - you could translate
+#. "Where would I find the file %s" instead if you want.
+#: export/ExportMP3.cpp:129
+#, c-format
+msgid "Where is %s?"
+msgstr "%s کجاستØ"
+
+#: FFmpeg.cpp:643
+msgid "Failed to find compatible FFmpeg libraries"
+msgstr ""
+
+#: FFmpeg.h:97
+msgid "FFmpeg not found"
+msgstr ""
+
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
+msgstr ""
+
+#: FFmpeg.h:119
+msgid "Do not show this warning again"
+msgstr ""
+
+#: FFmpeg.h:264
+msgid "Only avformat.dll|*avformat*.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
+msgstr ""
+
+#: FFmpeg.h:297
+msgid "Dynamic Libraries (*.dylib)|*.dylib|All Files (*)|*"
+msgstr ""
+
+#: FFmpeg.h:324
+msgid "Only libavformat.so|libavformat.so*|Dynamically Linked Libraries (*.so*)|*.so*|All Files (*)|*"
+msgstr ""
+
#: FreqWindow.cpp:102
msgid "Frequency Analysis"
msgstr "تØÙÛ٠بساÙ
دÛ"
@@ -897,8 +1058,9 @@ msgstr "Ø®ÙØ¯ÙÙ
Ø¨Ø³ØªÚ¯Û Ø¨ÙØ¨ÙØ¯ÛØ§ÙتÙ"
msgid "Cepstrum"
msgstr "Cepstrum"
-#: FreqWindow.cpp:148
-msgid "Algorithm:"
+#: FreqWindow.cpp:174 FreqWindow.cpp:178
+#, fuzzy
+msgid "Algorithm"
msgstr "اÙÚ¯ÙØ±ÛتÙ
:"
#: FreqWindow.cpp:166 HistoryWindow.cpp:79
@@ -911,9 +1073,9 @@ msgstr "Ø§ÙØ¯Ø§Ø²Ù"
msgid " window"
msgstr " Ù¾ÙØ¬Ø±ÙâØ§Û"
-#: FreqWindow.cpp:182
-msgid "Function:"
-msgstr "تابع:"
+#: FreqWindow.cpp:211 FreqWindow.cpp:215
+msgid "Function"
+msgstr ""
#: FreqWindow.cpp:190
msgid "Linear frequency"
@@ -923,14 +1085,36 @@ msgstr "بساÙ
د خطÛ"
msgid "Log frequency"
msgstr "بساÙ
د ÙÚ¯Ø§Ø±ÛØªÙ
Û"
-#: FreqWindow.cpp:194
-msgid "Axis:"
-msgstr "Ù
ØÙر:"
+#: FreqWindow.cpp:225 FreqWindow.cpp:229
+msgid "Axis"
+msgstr ""
#: FreqWindow.cpp:204 LabelDialog.cpp:128
msgid "&Export..."
msgstr "&ØµØ¯ÙØ±..."
+#: FreqWindow.cpp:237 effects/Contrast.cpp:395 export/ExportCL.cpp:358
+#: export/ExportMultiple.cpp:344
+msgid "Export"
+msgstr ""
+
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
+#: Dependencies.cpp:308 FreqWindow.cpp:207
+msgid "Close"
+msgstr "بستÙ"
+
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr ""
+
#: FreqWindow.cpp:270 FreqWindow.cpp:393 effects/AutoDuck.cpp:487
#: effects/AutoDuck.cpp:521 effects/AutoDuck.cpp:799
#: effects/Compressor.cpp:348 effects/Compressor.cpp:356
@@ -948,6 +1132,15 @@ msgstr "دسÛâØ¨Ù"
msgid "Hz"
msgstr "ÙØ±ØªØ²"
+#: Menus.cpp:3452
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "Ø¨Ø±Ø§Û Ø±Ø³Ù
Ø·ÛÙØ ÙÙ
ÙÙ Ø´ÛØ§Ø±ÙØ§Û Ø§ÙØªØ®Ø§Ø¨âØ´Ø¯Ù Ø¨Ø§ÛØ¯ ÙØ±Ø® ÙÙ
ÙÙÙâØ¨Ø±Ø¯Ø§Ø±Û ÛÚ©Ø³Ø§Ù Ø¯Ø§Ø´ØªÙ Ø¨Ø§Ø´ÙØ¯."
+
+#: Menus.cpp:3478
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "Ù
ÙØ¯Ø§Ø± ØµÙØª Ø§ÙØªØ®Ø§Ø¨âØ´Ø¯Ù Ø²ÛØ§Ø¯ است. تÙÙØ§ %I.1f ثاÙÛÙ٠اÙÙ ØµÙØªØªØÙÛÙ Ø®ÙØ§Ùد شد."
+
#: FreqWindow.cpp:377
msgid "Not enough data selected."
msgstr "Ø§ÙØ¯Ø§Ø²Ù٠دادÙâÙØ§Û Ø§ÙØªØ®Ø§Ø¨âشد٠کاÙÛ ÙÛØ³Øª."
@@ -963,10 +1156,8 @@ msgstr "Ù
کاÙâÙÙ
ا: %Id ÙØ±ØªØ² (%s) = %Id دسÛâØ¨Ù Peak: %Id Ù
#: FreqWindow.cpp:778
#, c-format
-msgid ""
-"Cursor: %.4f sec (%d Hz) (%s) = %f, Peak: %.4f sec (%d Hz) (%s) = %.3f"
-msgstr ""
-"Ù
کاÙâÙÙ
ا: %I.4f ثاÙÛÙ (%Id ÙØ±ØªØ²) (%s) = %If, ÙÙÙ: %I.4f ثاÙÛÙ (%Id ÙØ±ØªØ²) (%s) = %I.3f"
+msgid "Cursor: %.4f sec (%d Hz) (%s) = %f, Peak: %.4f sec (%d Hz) (%s) = %.3f"
+msgstr "Ù
کاÙâÙÙ
ا: %I.4f ثاÙÛÙ (%Id ÙØ±ØªØ²) (%s) = %If, ÙÙÙ: %I.4f ثاÙÛÙ (%Id ÙØ±ØªØ²) (%s) = %I.3f"
#: FreqWindow.cpp:1043
msgid "spectrum.txt"
@@ -989,25 +1180,132 @@ msgstr "ÙØ±Ú©Ø§Ùس (ÙØ±ØªØ²)\tØ³Ø·Ø (دسÛâØ¨Ù)"
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "ØªØ£Ø®ÛØ± (ثاÙÛÙ)\tÙØ±Ú©Ø§Ùس (ÙØ±ØªØ²)\tسطØ"
-#: Help.cpp:68
-msgid "Where is audacity-1.2-help.htb?"
-msgstr "âaudacity-1.2-help.htb کجاستØ"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr ""
+
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr ""
+
+#: HelpText.cpp:85
+msgid "To [[welcome|Welcome screen]]"
+msgstr ""
+
+#: HelpText.cpp:92
+msgid "Welcome!"
+msgstr ""
+
+#: HelpText.cpp:97
+msgid "Playing Audio"
+msgstr ""
+
+#: HelpText.cpp:101
+msgid "Recording Audio"
+msgstr ""
+
+#: HelpText.cpp:105
+msgid "Recording - Choosing the Input Device"
+msgstr ""
+
+#: HelpText.cpp:109
+msgid "Recording - Choosing the Input Source"
+msgstr ""
+
+#: HelpText.cpp:113
+msgid "Recording - Setting the Input Level"
+msgstr ""
+
+#: HelpText.cpp:117
+msgid "Editing and greyed out Menus"
+msgstr ""
+
+#: HelpText.cpp:121
+msgid "Exporting an Audio File"
+msgstr ""
+
+#: HelpText.cpp:125
+msgid "Saving an Audacity Project"
+msgstr ""
+
+#: HelpText.cpp:129
+msgid "Unsupported Formats"
+msgstr ""
+
+#: HelpText.cpp:133
+msgid "Burn to CD"
+msgstr ""
+
+#: HelpText.cpp:137
+msgid "No Local Help"
+msgstr ""
+
+#: HelpText.cpp:148
+msgid "</p><center><h3>Getting Started</h3></center><br>"
+msgstr ""
+
+#: HelpText.cpp:150
+msgid "Welcome to Audacity "
+msgstr ""
+
+#: HelpText.cpp:151
+msgid "Learn how to: <ul><li>[[play|play]] an existing audio file <li>[[record|record]] your voice, LP or tape <li>[[edit|edit]] sounds <li>[[save|save or open an Audacity project]] <li>[[export|export]] to an MP3 or other audio file, or [[burncd|burn to a CD]] </ul></p><p>"
+msgstr ""
+
+#: HelpText.cpp:159
+msgid "This screen can be viewed at any time by clicking the <i>Help</i> menu, then <i>Show Welcome Message</i>. For a detailed guide to all the Audacity menus and controls, click <i>Help</i> menu then <i>Index</i>, or download our <a href=\"http://audacity.sourceforge.net/help/documentation/manual_1.4.pdf\">full Manual</a> in PDF format.</p>"
+msgstr ""
+
+#: HelpText.cpp:172
+msgid "<p><b>Opening audio files:</b> Either drag the files into the current project window, or click <i>File > Import > Audio</i>. Files can be opened into a new project window with <i>File > Open</i>. The main formats Audacity plays are <b>AIFF, AU, FLAC, M4A</b> (only on a Mac), <b>MP2/MP3, OGG Vorbis</b> and <b>WAV</b>. Click [[wma-proprietary|here]] if your file is in some other format. <b>To import a CD:</b> extract it to WAV or AIFF using iTunes, Windows Media Player 11 or similar. See our online guide: [[wiki:How_to_import_CDs|importing CDs]].</p><p> <p><b>Playing audio:</b> Press the green Play button to start playback. Press the blue Pause button once to pause playback, and again to resume. To stop, press the yellow Stop button. Spacebar can be used to either play or stop. After stopping, playback resumes from its last starting point. To change the starting point, click in the track at your desired starting point. The <b>|<<</b> and <b>>>|</b> buttons can be used to skip to the start or end of the track respectively. </p><br><br>"
+msgstr ""
+
+#: HelpText.cpp:194
+msgid "<p><b>To record:</b> Set the recording device and input source, adjust the input level, then press the red Record button.</b></p><p> 1) [[inputdevice|Set Recording Device]] either in the <i>Audio I/O tab of Preferences</i> or in <i>Device Toolbar</i>. Audio I/O Preferences lets you choose stereo recording if required.<br> 2) [[inputsource|Set input source]] for that device (for example, microphone or line-in) in the dropdown selector of the <i>Mixer Toolbar</i>, or (on some systems) at Recording Device in the <i>Audio I/O tab of Preferences</i> or in <i>Device Toolbar</i>.<br> 3) [[inputlevel|Adjust input level]] using the right-hand slider on the <i>Mixer Toolbar</i>. Correct adjustment of level before recording is essential to avoid noise or distortion. </p><p> More help at: \"Recording\" <a href=\"http://audacity.sourceforge.net/help/faq\">FAQs</a>, our Tutorial <a href=\"http://www.audacityteam.org/manual/index.php?title=Tutorial_-_Your_First_Recording\"> Your First Recording</a> in the <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">Manual</a>, and our Wiki [[wiki:Recording_Tips|Recording Tips]] and [[wiki:Troubleshooting_Recordings|Troubleshooting Recordings]] pages. </p><br><br>"
+msgstr ""
+
+#: HelpText.cpp:221
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgstr ""
-#: Help.cpp:71
-msgid "HTML Help Books (*.htb)|*.htb"
-msgstr "کتابâÙØ§Û راÙÙÙ
Ø§Û HTML ââ(*.htb)|*htb"
+#: HelpText.cpp:244
+msgid "<p>Select the input source (such as microphone or line-in) for your [[inputdevice|recording device]]:<br> - <b>On Windows (except Vista)</b> and <b>Linux</b>, in the dropdown selector on the right of the <i>Mixer Toolbar</i>.<br> - <b>On Windows Vista</b> and <b>Mac</b>, at Recording Device on the <i>Audio I/O tab of Preferences</i>, or in <i>Device Toolbar</i>. The source will be shown as part of the parent device (for example, <i>High Def Audio Card: Microphone</i>). If necessary, Mac users can choose the input source at Apple Audio MIDI Setup. <br><i><b>Note:</b> many USB or Firewire recording devices don't have a choice of inputs, so this step is not necessary. If in doubt, see the documentation for your device. </i></p><p> <b>Tip:</b> To <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record audio playing on the computer</a>, Windows and Linux users can choose the \"Stereo Mix\", \"Wave Out\", \"Sum\" or comparable input source. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgstr ""
-#: Help.cpp:79
-msgid "Couldn't open the Audacity Help file."
-msgstr "پرÙÙØ¯Ù٠راÙÙÙ
Ø§Û Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø¨Ø§Ø² ÙÙ
ÛâØ´ÙØ¯."
+#: HelpText.cpp:267
+msgid "<p>The input level must be set correctly. If the level is too low, there will be background noise. If the level is too high, there will be distortion in the loud parts. </p><p>To set the level, either see this [[wiki:Recording_levels|illustrated online guide]] or follow these steps: <ol><li>Turn on <b>monitoring</b>. Double-click the right-hand of the two <i>VU Meters</i> (or right-click over it) and click \"Start Monitoring\". If the meters are not visible, click <i>View > Toolbars</i> and check \"Meter Toolbar\". </li><li>Adjust the input slider on the <i>Mixer Toolbar</i> (by the microphone symbol), so that the red bars in the meter come close to <b>but do not touch</b> the right edge of the scale. If you can't hear the monitored audio, go to the <i>Audio I/O tab of Preferences</i> and check \"Software Playthrough\". </li></ol></p><p> Back to [[record|Recording Audio]] <br></p>"
+msgstr ""
-#: Help.cpp:117
-msgid "Search for?"
-msgstr "Ø¬Ø³ØªØ¬Ù Ø¨Ù Ø¯ÙØ¨Ø§ÙØ"
+#: HelpText.cpp:292
+msgid "<p>The main commands for editing audio are under the <i>Edit</i> menu (such as cut, copy and paste) and the <i>Effect</i> menu (you can do things like boost the bass, change pitch or tempo, or remove noise). </p><p> Audacity applies edits to selected areas of the audio track. To select a particular area, click in the track and drag the shaded area with the mouse. If no audio is selected, Audacity selects all the audio in the project window.</p><p> When playing or recording, the Edit and Effect menus will appear greyed out, because a moving track can't be edited. Commands can sometimes be unavailable for other reasons too. For example, you can't run effects until you have audio on the screen, and you can't paste audio until you've cut or copied it to Audacity's clipboard. </p><br><br>"
+msgstr ""
-#: Help.cpp:118
-msgid "Search help for keyword"
-msgstr "جستجÙÛ Ø¯Ø± راÙÙÙ
ا Ø¨Ù Ø¯ÙØ¨Ø§Ù Ú©ÙÛØ¯ÙاÚÙ"
+#: HelpText.cpp:311
+msgid "<p>To return later to your unfinished work in Audacity with all tracks and edits as you left them, save an Audacity project. To play your current work in other media programs or send it to others, [[export|export]] an audio file such as WAV or MP3. </p><p> <i>File > Save Project</i> saves an <b>.aup</b> project file and a <b>_data</b> folder containing the actual audio. To re-open a saved project, click <i>File > Open</i> and open the .aup file. If you save and exit more than once, an .aup.bak backup file is created, but the .aup file should always be opened if present. When your final exported file is exactly as you want, delete the project files and _data folder to save disc space. </p><p><i>File > Save Project As...</i> is for saving an empty project. It also lets you save an existing Project to a <b> new</b> name. This is the only safe way to rename a project. The .aup file and _data folder should not be moved or renamed manually. </p><p>"
+msgstr ""
+
+#: HelpText.cpp:335
+msgid "To hear your work in other media programs, export it to an audio file such as WAV or MP3 (some formats are [[wma-proprietary|unsupported]]). [[save|Saving an Audacity project]] creates a project file (and linked _data folder) containing all your edited tracks, so you can return to your work later. However, other programs can't read Audacity projects. </p><p> To export, click <i>File > Export</i> then choose the file format you want to export to in the \"Save as type\" dropdown. To [[burncd|burn a CD]] for standalone CD players, choose WAV or AIFF. To export as MP3, the [[wiki:Lame_Installation|Lame Encoder]] must be installed. </p><p> <i>File > Export Selection</i> exports only a selected area of audio. <i>Use File > Export Multiple</i> to export multiple files at the same time, either one for each audio track, or one for each labeled area in a single track. <i>Tracks > Add Label At Selection</i> lets you [[wiki:Splitting_recordings_into_separate_tracks|split the tracks]] from an album for multiple export as separate files. </p><br><br>"
+msgstr ""
+
+#: HelpText.cpp:359
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgstr ""
+
+#: HelpText.cpp:383
+msgid "<p>To burn your work to an audio CD for standalone CD players, first [[export|export]] it as WAV or AIFF. The exported file should be stereo, 44100 Hz (set in the \"Project Rate\" button bottom left) and 16 bit (set in the \"Options\" button in the file export dialog). These are Audacity's default settings, so normally you will not need to change these before exporting. <p>Burn the exported file to an \"audio CD\" - not a \"data CD\" or \"MP3 CD\" - with a CD burning program like iTunes or Windows Media Player. For more help, see [[wiki:How_to_burn_CDs|How to burn CDs]] online. </p><p>"
+msgstr ""
+
+#: HelpText.cpp:403
+msgid "<p>Help for Audacity Beta is currently unfinished. For now, a draft manual is available <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">online</a>. Alternatively, click <a href=\"http://www.audacityteam.org/manual/index.php?title=Temporary_HTML_Manual_Export\">here</a> to download a single-page version of the manual which can be viewed in this window."
+msgstr ""
#: HistoryWindow.cpp:53
msgid "Undo History"
@@ -1067,6 +1365,14 @@ msgstr "Ù
Ú¯Ø§Ø¨Ø§ÛØª"
msgid "GB"
msgstr "Ú¯ÛÚ¯Ø§Ø¨Ø§ÛØª"
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
#: LabelDialog.cpp:50
msgid "Track"
msgstr "Ø´ÛØ§Ø±"
@@ -1075,8 +1381,9 @@ msgstr "Ø´ÛØ§Ø±"
msgid "Label"
msgstr "Ø¨Ø±ÚØ³Ø¨"
-#: LabelDialog.cpp:52
-msgid "&Start Time"
+#: LabelDialog.cpp:56 TimerRecordDialog.cpp:341
+#, fuzzy
+msgid "Start Time"
msgstr "&زÙ
ا٠آغاز"
#: LabelDialog.cpp:53
@@ -1107,9 +1414,12 @@ msgstr "&ÙØ§Ø±Ø¯ کردÙ..."
msgid "New..."
msgstr "Ø¬Ø¯ÛØ¯..."
-#: LabelDialog.cpp:347
+#: LabelDialog.cpp:354
msgid "You have left blank label names. These will be\n"
-msgstr "Ø´Ù
ا ÙØ§Ù
Ø¨Ø±ÚØ³Ø¨ را خاÙÛ Ú¯Ø°Ø§Ø´ØªÙâØ§ÛØ¯. Ø®ÙØ§Ùد شد\n"
+"skipped when repopulating the Label Tracks.\n"
+"\n"
+"Would you like to go back and provide names?"
+msgstr ""
#: LabelDialog.cpp:350
msgid "Confirm"
@@ -1160,73 +1470,52 @@ msgstr "اÙÙÛÙ Ø§Ø¬Ø±Ø§Û Ø§ÙØ¯Ø§Ø³ÛتÛ"
msgid "Choose Language for Audacity to use:"
msgstr "Ø²Ø¨Ø§Ù Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø±Ø§ Ø§ÙØªØ®Ø§Ø¨ Ú©ÙÛØ¯"
-#: LangChoice.cpp:103 effects/AvcCompressor.cpp:738
-#: effects/TruncSilence.cpp:281 effects/VST/VSTEffect.cpp:454
-#: effects/audiounits/AudioUnitEffect.cpp:857 effects/nyquist/Nyquist.cpp:993
-#: effects/nyquist/Nyquist.cpp:1059 widgets/Warning.cpp:67
-msgid "OK"
-msgstr "تأÛÛØ¯"
-
#: Legacy.cpp:356
#, c-format
-msgid ""
-"Converted a 1.0 project file to the new format.\n"
+msgid "Converted a 1.0 project file to the new format.\n"
"The old file has been saved as '%s'"
-msgstr ""
-"ÛÚ© پرÙÙØ¯Ù٠پرÙÚÙÙ ÙØ³Ø®ÙÙ 1.0 Ø¨Ù ÙØ§Ùب Ø¬Ø¯ÛØ¯ تبدÛ٠شد.\n"
+msgstr "ÛÚ© پرÙÙØ¯Ù٠پرÙÚÙÙ ÙØ³Ø®ÙÙ 1.0 Ø¨Ù ÙØ§Ùب Ø¬Ø¯ÛØ¯ تبدÛ٠شد.\n"
"پرÙÙØ¯ÙÙ ÙØ¯ÛÙ
Û Ø¨Ù ÙØ§Ù
«â%s» Ø°Ø®ÛØ±Ù شد"
#: Legacy.cpp:357
msgid "Opening Audacity Project"
msgstr "در ØØ§Ù باز کرد٠پرÙÚÙÙ Ø§ÙØ¯Ø§Ø³ÛتÛ"
-#. i18n-hint: here, %s is the name of a toolbar, e.g. "Control Toolbar"
-#: Menus.cpp:169
-#, c-format
-msgid "Show %s"
-msgstr "ÙÙ
Ø§ÛØ´ %s"
-
-#. i18n-hint: here, %s is the name of a toolbar, e.g. "Control Toolbar"
-#: Menus.cpp:175
-#, c-format
-msgid "Hide %s"
-msgstr "Ù
Ø®ÙÛ Ú©Ø±Ø¯Ù %s"
-
#: Menus.cpp:198
msgid "&File"
msgstr "&پرÙÙØ¯Ù"
-#: Menus.cpp:200
-msgid "&New\tCtrl+N"
-msgstr "&Ø¬Ø¯ÛØ¯\tCtrl+N"
-
-#: Menus.cpp:202
-msgid "&Open...\tCtrl+O"
-msgstr "&باز کردÙ...\tCtrl+O"
-
#: Menus.cpp:213
-msgid "&Close\tCtrl+W"
-msgstr "بس&تÙ\tCtrl+W"
+msgid "&Close"
+msgstr "بس&تÙ"
#: Menus.cpp:216
-msgid "&Save Project\tCtrl+S"
-msgstr "&Ø°Ø®ÛØ±Ù٠پرÙÚÙ\tCtrl+S"
+msgid "&Save Project"
+msgstr "&Ø°Ø®ÛØ±Ù٠پرÙÚÙ"
#: Menus.cpp:220 Project.cpp:2374
msgid "Save Project &As..."
msgstr "Ø°Ø®ÛØ±Ù٠پرÙÚ٠ب٠&ÙØ§Ù
..."
+#: Menus.cpp:222
+msgid "Save Compressed Copy of Project..."
+msgstr ""
+
#: Menus.cpp:223
msgid "Chec&k Dependencies..."
msgstr "ب&Ø±Ø±Ø³Û ÙØ§Ø¨Ø³ØªÚ¯ÛâÙØ§..."
-#: Menus.cpp:227
-msgid "Open Me&tadata Editor"
-msgstr "باز کرد٠ÙÛØ±Ø§Ûشگر &ÙØ±Ø§Ø¯Ø§Ø¯Ù"
+#: Menus.cpp:230
+msgid "Open Me&tadata Editor..."
+msgstr ""
+
+#: Menus.cpp:238 import/ImportRaw.cpp:421
+msgid "&Import"
+msgstr ""
#: Menus.cpp:236
-msgid "&Audio...\tCtrl+Shift+I"
-msgstr "&صدا...\tCtrl+Shift+Iâ"
+msgid "&Audio..."
+msgstr "&صدا..."
#: Menus.cpp:237
msgid "&Labels..."
@@ -1240,33 +1529,9 @@ msgstr "MIDI...\t(&Ù
)"
msgid "&Raw Data..."
msgstr "دادÙâÙØ§Û &خاÙ
..."
-#: Menus.cpp:244 Menus.cpp:318
-msgid "&Export As..."
-msgstr "&ØµØ¯ÙØ± Ø¨Ù ØµÙØ±Øª..."
-
-#: Menus.cpp:245 Menus.cpp:269 Menus.cpp:319 Menus.cpp:324
-msgid "&WAV..."
-msgstr "WAV...\t(&Ù)"
-
-#: Menus.cpp:246 Menus.cpp:270 Menus.cpp:320 Menus.cpp:325
-msgid "&MP3..."
-msgstr "MP3...\t(&Û³)"
-
-#: Menus.cpp:248 Menus.cpp:272
-msgid "Ogg &Vorbis..."
-msgstr "اÙÚ¯ ÙÙ&Ø±Ø¨ÛØ³..."
-
-#: Menus.cpp:255 Menus.cpp:279
-msgid "&FLAC..."
-msgstr "FLAC...\t(&Ù)"
-
-#: Menus.cpp:261 Menus.cpp:285
-msgid "MP&2..."
-msgstr "MP2...\t(&Û²)"
-
-#: Menus.cpp:268 Menus.cpp:323
-msgid "Expo&rt Selection As..."
-msgstr "ص&Ø¯ÙØ± Ø§ÙØªØ®Ø§Ø¨ Ø¨Ù ØµÙØ±Øª..."
+#: Menus.cpp:260
+msgid "Expo&rt Selection..."
+msgstr ""
#: Menus.cpp:302
msgid "Export &Labels..."
@@ -1276,14 +1541,26 @@ msgstr "ØµØ¯ÙØ± &Ø¨Ø±ÚØ³Ø¨âÙØ§..."
msgid "Export &Multiple..."
msgstr "ØµØ¯ÙØ± &Ù
تعدد..."
-#: Menus.cpp:340 Menus.cpp:354
-msgid "Edit C&hains..."
-msgstr "ÙÛØ±Ø§ÛØ´ &Ø²ÙØ¬ÛØ±ÙØ§"
+#: Menus.cpp:275
+msgid "Export MIDI..."
+msgstr ""
#: Menus.cpp:352
msgid "Appl&y Chain..."
msgstr "اÙ&عÙ
Ø§Ù Ø²ÙØ¬Ûر..."
+#: Menus.cpp:340 Menus.cpp:354
+msgid "Edit C&hains..."
+msgstr "ÙÛØ±Ø§ÛØ´ &Ø²ÙØ¬ÛØ±ÙØ§"
+
+#: Menus.cpp:287
+msgid "Export CleanSpeech &Presets..."
+msgstr ""
+
+#: Menus.cpp:288
+msgid "I&mport CleanSpeech Presets..."
+msgstr ""
+
#: Menus.cpp:358
msgid "&Upload File..."
msgstr "بارگ&Ø°Ø§Ø±Û Ù¾Ø±ÙÙØ¯Ù..."
@@ -1297,315 +1574,359 @@ msgid "&Print..."
msgstr "&ÚØ§Ù¾..."
#: Menus.cpp:382 Menus.cpp:385
-msgid "E&xit\tCtrl+Q"
-msgstr "&Ø®Ø±ÙØ¬\tCtrl+Q"
+msgid "E&xit"
+msgstr "&Ø®Ø±ÙØ¬"
#: Menus.cpp:394 toolbars/EditToolBar.cpp:76
msgid "&Edit"
msgstr "&ÙÛØ±Ø§ÛØ´"
#: Menus.cpp:398
-msgid "&Undo\tCtrl+Z"
-msgstr "بر&گرداÙ\tCtrl+Z"
+msgid "&Undo"
+msgstr "بر&گرداÙ"
#: Menus.cpp:406 prefs/KeyConfigPrefs.cpp:341 toolbars/EditToolBar.cpp:146
msgid "&Redo"
msgstr "&Ø¯ÙØ¨Ø§Ø±Ù"
#: Menus.cpp:419
-msgid "Cu&t\tCtrl+X"
-msgstr "بر&ش\tCtrl+X"
+msgid "Cu&t"
+msgstr "بر&ش"
#: Menus.cpp:420
-msgid "Spl&it Cut\tCtrl+Alt+X"
-msgstr "تÙÚ©Û&Ú© ٠برش\tCtrl+Alt+X"
+msgid "Spl&it Cut"
+msgstr "تÙÚ©Û&Ú© ٠برش"
#: Menus.cpp:421
-msgid "&Copy\tCtrl+C"
-msgstr "&ÙØ³Ø®ÙâØ¨Ø±Ø¯Ø§Ø±Û\tCtrl+C"
+msgid "&Copy"
+msgstr "&ÙØ³Ø®ÙâØ¨Ø±Ø¯Ø§Ø±Û"
#: Menus.cpp:422
-msgid "&Paste\tCtrl+V"
-msgstr "&ÚØ³Ø¨Ø§ÙدÙ\tCtrl+V"
+msgid "&Paste"
+msgstr "&ÚØ³Ø¨Ø§ÙدÙ"
#: Menus.cpp:426
-msgid "Tri&m\tCtrl+T"
-msgstr "Ø¢&Ø±Ø§ÛØ´\tCtrl+T"
+msgid "Tri&m"
+msgstr "Ø¢&Ø±Ø§ÛØ´"
#: Menus.cpp:428
-msgid "&Delete\tCtrl+K"
-msgstr "&ØØ°Ù\tCtrl+K"
+msgid "&Delete"
+msgstr "&ØØ°Ù"
#: Menus.cpp:429
-msgid "Split D&elete\tCtrl+Alt+K"
-msgstr "تÙÚ©ÛÚ© Ù Ø&ذÙ\tCtrl+Alt+K"
+msgid "Split D&elete"
+msgstr "تÙÚ©ÛÚ© Ù Ø&ذÙ"
-#: Menus.cpp:430
-msgid "&Silence\tCtrl+L"
-msgstr "&Ø³Ú©ÙØª\tCtrl+L"
+#: Menus.cpp:361
+msgid "Silence Audi&o"
+msgstr ""
#: Menus.cpp:432
-msgid "Sp&lit\tCtrl+I"
-msgstr "ت&ÙÚ©ÛÚ©\tCtrl+Iâ"
+msgid "Sp&lit"
+msgstr "ت&ÙÚ©ÛÚ©"
#: Menus.cpp:437
-msgid "Split Ne&wCtrl+Alt+I"
-msgstr "تÙÚ©ÛÚ© ج&Ø¯ÛØ¯Ctrl+Alt+Iâ"
+msgid "Split Ne&w"
+msgstr "تÙÚ©ÛÚ© ج&Ø¯ÛØ¯"
#: Menus.cpp:442
-msgid "&Join\tCtrl+J"
-msgstr "&Ù¾ÛÙØ³ØªÙ\tCtrl+J"
+msgid "&Join"
+msgstr "&Ù¾ÛÙØ³ØªÙ"
-#: Menus.cpp:443
-msgid "Disj&oin\tCtrl+Alt+J"
-msgstr "&گسستÙ\tCtrl+Alt+J"
+#: Menus.cpp:374 Menus.cpp:406
+msgid "Detac&h at Silences"
+msgstr ""
#: Menus.cpp:445
-msgid "Duplic&ate\tCtrl+D"
-msgstr "تک&Ø«ÛØ±\tCtrl+D"
+msgid "Duplic&ate"
+msgstr "تک&Ø«ÛØ±"
+
+#: Menus.cpp:380 Menus.cpp:616
+msgid "Stereo Trac&k to Mono"
+msgstr ""
-#: Menus.cpp:458
-msgid "Labeled Re&gions..."
-msgstr "ÙØ§&ØÛÙâÙØ§Û Ø¨Ø±ÚØ³Ø¨âدار..."
+#: Menus.cpp:389
+msgid "La&beled Regions"
+msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:460
-msgid "&Cut\tAlt+X"
-msgstr "بر&ش\tAlt+X"
+msgid "&Cut"
+msgstr "بر&ش"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:465
-msgid "&Split Cut\tShift+Alt+X"
-msgstr "تÙÚ©&ÛÚ© ٠برش\tShift+Alt+X"
+msgid "&Split Cut"
+msgstr "تÙÚ©&ÛÚ© ٠برش"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:470
-msgid "Co&py\tShift+Alt+C"
-msgstr "ÙØ³&Ø®ÙâØ¨Ø±Ø¯Ø§Ø±Û\tShift+Alt+C"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:476
-msgid "&Delete\tAlt+K"
-msgstr "&ØØ°Ù\tAlt+K"
+msgid "Co&py"
+msgstr "ÙØ³&Ø®ÙâØ¨Ø±Ø¯Ø§Ø±Û"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:481
-msgid "Sp&lit Delete\tShift+Alt+K"
-msgstr "تÙ&Ú©ÛÚ© Ù ØØ°Ù\tShift+Alt+K"
+msgid "Sp&lit Delete"
+msgstr "تÙ&Ú©ÛÚ© Ù ØØ°Ù"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:486
-msgid "Sile&nce\tAlt+L"
-msgstr "سک&ÙØª\tAlt+L"
+msgid "Sile&nce"
+msgstr "سک&ÙØª"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:492
-msgid "Spli&t\tAlt+I"
-msgstr "تÙÚ©Û&Ú©\tAlt+Iâ"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:497
-msgid "&Join\tAlt+J"
-msgstr "&Ù¾ÛÙØ³ØªÙ\tAlt+J"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:502
-msgid "Disj&oin\tShift+Alt+J"
-msgstr "&گسستÙ\tShift+Alt+J"
+msgid "Spli&t"
+msgstr "تÙÚ©Û&Ú©"
-#: Menus.cpp:508
-msgid "Select..."
-msgstr "Ø§ÙØªØ®Ø§Ø¨..."
+#: Menus.cpp:412
+msgid "&Select"
+msgstr ""
#: Menus.cpp:509
-msgid "&All\tCtrl+A"
-msgstr "&ÙÙ
Ù\tCtrl+A"
+msgid "&All"
+msgstr "&ÙÙ
Ù"
-#: Menus.cpp:513
-msgid "Left at Playback Position\t["
-msgstr "سÙ
ت ÚÙ¾ Ù
کا٠پخش\t["
+#: Menus.cpp:416
+#, fuzzy
+msgid "&None"
+msgstr "&Ø°Ø®ÛØ±Ù"
+
+#: Menus.cpp:418
+#, fuzzy
+msgid "&Left at Playback Position"
+msgstr "سÙ
ت ÚÙ¾ Ù
کا٠پخش"
-#: Menus.cpp:514
-msgid "Right at Playback Position\t]"
-msgstr "سÙ
ت راست Ù
کا٠پخش\t]"
+#: Menus.cpp:419
+#, fuzzy
+msgid "&Right at Playback Position"
+msgstr "سÙ
ت راست Ù
کا٠پخش"
-#: Menus.cpp:518
-msgid "Start to Cursor"
-msgstr "از اÙ٠تا Ù
کاÙâÙÙ
ا"
+#: Menus.cpp:423
+msgid "Track &Start to Cursor"
+msgstr ""
-#: Menus.cpp:519
-msgid "Cursor to End"
-msgstr "از Ù
کاÙâÙÙ
ا تا آخر"
+#: Menus.cpp:424
+msgid "Cursor to Track &End"
+msgstr ""
#: Menus.cpp:525
-msgid "Find &Zero Crossings\tZ"
-msgstr "ÛØ§ÙØªÙ ØªÙØ§Ø·Ø¹âÙØ§Û &ØµÙØ±\tZ"
+msgid "Find &Zero Crossings"
+msgstr "ÛØ§ÙØªÙ ØªÙØ§Ø·Ø¹âÙØ§Û &ØµÙØ±"
-#: Menus.cpp:527
-msgid "Mo&ve Cursor..."
-msgstr "Ø§ÙØª&ÙØ§Ù Ù
کاÙâÙÙ
ا..."
+#: Menus.cpp:434
+msgid "Mo&ve Cursor"
+msgstr ""
-#: Menus.cpp:529
-msgid "to Selection Start"
+#: Menus.cpp:436
+#, fuzzy
+msgid "to Selection Star&t"
msgstr "ب٠آغاز Ø§ÙØªØ®Ø§Ø¨"
-#: Menus.cpp:530
-msgid "to Selection End"
+#: Menus.cpp:437
+#, fuzzy
+msgid "to Selection En&d"
msgstr "Ø¨Ù Ù¾Ø§ÛØ§Ù Ø§ÙØªØ®Ø§Ø¨"
-#: Menus.cpp:534
-msgid "to Track Start"
+#: Menus.cpp:439
+#, fuzzy
+msgid "to Track &Start"
msgstr "ب٠آغاز Ø´ÛØ§Ø±"
-#: Menus.cpp:535
-msgid "to Track End"
+#: Menus.cpp:440
+#, fuzzy
+msgid "to Track &End"
msgstr "Ø¨Ù Ù¾Ø§ÛØ§Ù Ø´ÛØ§Ø±"
-#: Menus.cpp:542
-msgid "Selection Save"
-msgstr "Ø°Ø®ÛØ±ÙÙ Ø§ÙØªØ®Ø§Ø¨"
-
-#: Menus.cpp:543
-msgid "Selection Restore"
-msgstr "Ø¨Ø±Ú¯Ø±Ø¯Ø§ÙØ¯Ù Ø§ÙØªØ®Ø§Ø¨"
-
-#: Menus.cpp:548
-msgid "S&nap-To..."
-msgstr "&ÚØ³Ø¨Ûد٠بÙ..."
-
-#. i18n-hint: Set snap-to mode on or off
-#: Menus.cpp:551
-msgid "On"
-msgstr "Ø±ÙØ´Ù"
-
-#. i18n-hint: Set snap-to mode on or off
-#: Menus.cpp:553 effects/ClickRemoval.cpp:376 effects/ClickRemoval.cpp:405
-msgid "Off"
-msgstr "خاÙ
ÙØ´"
-
-#: Menus.cpp:559
-msgid "Play &Region..."
-msgstr "پخش &Ù
ØØ¯ÙدÙ..."
-
-#: Menus.cpp:560
-msgid "Lock"
-msgstr "ÙÙÙ"
-
-#: Menus.cpp:561
-msgid "Unlock"
-msgstr "باز"
+#: Menus.cpp:448
+msgid "Re&gion Save"
+msgstr ""
-#: Menus.cpp:567
-msgid "Turn Snap-To On"
-msgstr "Ø±ÙØ´Ù Ú©Ø±Ø¯Ù ØØ§Ùت ÚØ³Ø¨Ø§Ù"
+#: Menus.cpp:451
+msgid "Regio&n Restore"
+msgstr ""
-#: Menus.cpp:568
-msgid "Turn Snap-To Off"
-msgstr "خاÙ
ÙØ´ Ú©Ø±Ø¯Ù ØØ§Ùت ÚØ³Ø¨Ø§Ù"
+#: Menus.cpp:459
+msgid "Pla&y Region"
+msgstr ""
-#: Menus.cpp:569
-msgid "Turn Grid Snap On"
-msgstr "Ø±ÙØ´Ù Ú©Ø±Ø¯Ù ØØ§Ùت ÚØ³Ø¨ÛØ¯Ù Ø¨Ù ØªÙØ±Û"
+#: Menus.cpp:461
+msgid "&Lock"
+msgstr ""
-#: Menus.cpp:570
-msgid "Turn Grid Snap Off"
-msgstr "خاÙ
ÙØ´ Ú©Ø±Ø¯Ù ØØ§Ùت ÚØ³Ø¨ÛØ¯Ù Ø¨Ù ØªÙØ±Û"
+#: Menus.cpp:464
+msgid "&Unlock"
+msgstr ""
-#: Menus.cpp:579
-msgid "&Preferences...\tCtrl+P"
-msgstr "ترجÛ&ØØ§Øª...\tCtrl+P"
+#: Menus.cpp:484
+msgid "Pre&ferences..."
+msgstr ""
#: Menus.cpp:589
msgid "&View"
msgstr "Ù&Ù
ا"
#: Menus.cpp:591
-msgid "Zoom &In\tCtrl+1"
-msgstr "زÙÙ
ب٠&داخÙ\tCtrl+1"
+msgid "Zoom &In"
+msgstr "زÙÙ
ب٠&داخÙ"
#: Menus.cpp:594
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "زÙÙ
&عادÛ\tCtrl+2"
+msgid "Zoom &Normal"
+msgstr "زÙÙ
&عادÛ"
#: Menus.cpp:595
-msgid "Zoom &Out\tCtrl+3"
-msgstr "زÙÙ
ب٠&خارج\tCtrl+3"
+msgid "Zoom &Out"
+msgstr "زÙÙ
ب٠&خارج"
#: Menus.cpp:598
-msgid "&Fit in Window\tCtrl+F"
-msgstr "&جا داد٠در Ù¾ÙØ¬Ø±Ù\tCtrl+F"
+msgid "&Fit in Window"
+msgstr "&جا داد٠در Ù¾ÙØ¬Ø±Ù"
#: Menus.cpp:599
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "جا داد٠&عÙ
ÙØ¯Û\tCtrl+Shift+F"
+msgid "Fit &Vertically"
+msgstr "جا داد٠&عÙ
ÙØ¯Û"
#: Menus.cpp:600
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "&زÙÙ
Ø¨Ù Ø§ÙØ¯Ø§Ø²ÙÙ Ø§ÙØªØ®Ø§Ø¨\tCtrl+E"
+msgid "&Zoom to Selection"
+msgstr "&زÙÙ
Ø¨Ù Ø§ÙØ¯Ø§Ø²ÙÙ Ø§ÙØªØ®Ø§Ø¨"
#: Menus.cpp:603
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
-msgstr "&جÙ
ع کرد٠ÙÙ
ÙÙ ÙØ·Ø¹Ø§Øª\tCtrl+Shift+C"
+msgid "&Collapse All Tracks"
+msgstr "&جÙ
ع کرد٠ÙÙ
ÙÙ ÙØ·Ø¹Ø§Øª"
#: Menus.cpp:604
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
-msgstr "Ù¾&Ù٠کرد٠ÙÙ
ÙÙ ÙØ·Ø¹Ø§Øª\tCtrl+Shift+X"
+msgid "E&xpand All Tracks"
+msgstr "Ù¾&Ù٠کرد٠ÙÙ
ÙÙ ÙØ·Ø¹Ø§Øª"
+
+#: Menus.cpp:516
+msgid "&Show Clipping"
+msgstr ""
#: Menus.cpp:612
msgid "&History..."
msgstr "&ØªØ§Ø±ÛØ®ÚÙ"
-#: Menus.cpp:614
-msgid "&Experimental Display..."
-msgstr "ÙÙ
Ø§ÛØ´ ت&جربÛ..."
-
-#: Menus.cpp:617
-msgid "&Toolbars..."
-msgstr "&ÙÙØ§Ø±ÙØ§Û Ø§Ø¨Ø²Ø§Ø±..."
+#: Menus.cpp:529
+msgid "&Toolbars"
+msgstr ""
-#: Menus.cpp:618 Menus.cpp:1203 Menus.cpp:1204
-msgid "Control Toolbar"
+#: Menus.cpp:531
+#, fuzzy
+msgid "&Control Toolbar"
msgstr "ÙÙØ§Ø± ابزار Ú©ÙØªØ±Ù"
-#: Menus.cpp:619 Menus.cpp:1207 Menus.cpp:1208
-msgid "Device Toolbar"
+#: Menus.cpp:532
+#, fuzzy
+msgid "&Device Toolbar"
msgstr "ÙÙØ§Ø± ابزار دستگاÙ"
-#: Menus.cpp:620 Menus.cpp:1211 Menus.cpp:1212
-msgid "Edit Toolbar"
+#: Menus.cpp:533
+#, fuzzy
+msgid "&Edit Toolbar"
msgstr "ÙÙØ§Ø± ابزار ÙÛØ±Ø§ÛØ´"
-#: Menus.cpp:621 Menus.cpp:1215 Menus.cpp:1216
-msgid "Meter Toolbar"
+#: Menus.cpp:534
+#, fuzzy
+msgid "&Meter Toolbar"
msgstr "ÙÙØ§Ø± ابزار Ø§ÙØ¯Ø§Ø²ÙâÚ¯ÛØ±"
-#: Menus.cpp:622 Menus.cpp:1219 Menus.cpp:1220
-msgid "Mixer Toolbar"
+#: Menus.cpp:535
+#, fuzzy
+msgid "Mi&xer Toolbar"
msgstr "ÙÙØ§Ø± ابزار Ù
Ûکسر"
-#: Menus.cpp:623 Menus.cpp:1223 Menus.cpp:1224
-msgid "Selection Toolbar"
+#: Menus.cpp:536
+#, fuzzy
+msgid "&Selection Toolbar"
msgstr "ÙÙØ§Ø± ابزار Ø§ÙØªØ®Ø§Ø¨"
-#: Menus.cpp:624 Menus.cpp:1227 Menus.cpp:1228
-msgid "Tools Toolbar"
+#: Menus.cpp:537
+#, fuzzy
+msgid "T&ools Toolbar"
msgstr "ÙÙØ§Ø± ابزار Ø§Ø¨Ø²Ø§Ø±ÙØ§"
-#: Menus.cpp:625 Menus.cpp:1231 Menus.cpp:1232
-msgid "Transcription Toolbar"
+#: Menus.cpp:538
+#, fuzzy
+msgid "Transcri&ption Toolbar"
msgstr "ابزار Ø¢ÙØ§ÙÙÛØ³Û"
+#: Menus.cpp:542
+msgid "&Reset Toolbars"
+msgstr ""
+
+#: Menus.cpp:550
+msgid "!Simplified View"
+msgstr ""
+
+#. i18n-hint: 'Transport' is the name given to the set of controls that
+#. play, record, pause etc.
+#: Menus.cpp:561
+msgid "T&ransport"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play"
+msgstr "پخش"
+
+#: Menus.cpp:565
+msgid "&Loop Play"
+msgstr ""
+
+#: Menus.cpp:566
+msgid "&Pause"
+msgstr ""
+
+#: Menus.cpp:569
+msgid "&Stop"
+msgstr ""
+
+#: Menus.cpp:875
+msgid "Skip to Start"
+msgstr "پرش ب٠آغاز"
+
+#: Menus.cpp:876
+msgid "Skip to End"
+msgstr "پرش Ø¨Ù Ø§ÙØªÙا"
+
+#: Menus.cpp:577
+msgid "&Record"
+msgstr ""
+
+#: Menus.cpp:578
+msgid "&Timer Record..."
+msgstr ""
+
+#: Menus.cpp:579
+msgid "Append Record"
+msgstr ""
+
+#: Menus.cpp:583
+msgid "Overdub (on/off)"
+msgstr ""
+
+#: Menus.cpp:584
+msgid "Software Playthrough (on/off)"
+msgstr ""
+
+#: Menus.cpp:587
+msgid "Sound Activated Recording (on/off)"
+msgstr ""
+
+#: Menus.cpp:588
+msgid "Sound Activation Level..."
+msgstr ""
+
#: Menus.cpp:635
msgid "&Tracks"
msgstr "&Ø´ÛØ§Ø±âÙØ§"
-#: Menus.cpp:642
-msgid "Add &New..."
-msgstr "اضاÙ٠کرد٠... &Ø¬Ø¯ÛØ¯"
+#: Menus.cpp:601
+msgid "Add &New"
+msgstr ""
#: Menus.cpp:643
-msgid "&Audio Track\tCtrl+Shift+N"
-msgstr "Ø´ÛØ§Ø± &ØµÙØªÛ\tCtrl+Shift+N"
+msgid "&Audio Track"
+msgstr "Ø´ÛØ§Ø± &ØµÙØªÛ"
#: Menus.cpp:644
msgid "&Stereo Track"
@@ -1615,13 +1936,13 @@ msgstr "Ø´ÛØ§Ø± ا&سترÛÙ"
msgid "&Time Track"
msgstr "Ø´ÛØ§Ø± &زÙ
اÙ"
-#: Menus.cpp:649
-msgid "&Timer Record"
-msgstr "ضبط با &زÙ
اÙâØ³ÙØ¬"
+#: Menus.cpp:619
+msgid "Mi&x and Render"
+msgstr ""
-#: Menus.cpp:658 Menus.cpp:3760 Mix.cpp:119
-msgid "&Mix and Render"
-msgstr "&Ù
Ûکس Ù Ø±ÙØ¯Ø±"
+#: Menus.cpp:622
+msgid "Mix and Render to New Track"
+msgstr ""
#: Menus.cpp:662
msgid "&Resample..."
@@ -1631,6 +1952,14 @@ msgstr "ÙÙ
&ÙÙÙâØ¨Ø±Ø¯Ø§Ø±Û Ù
جدد..."
msgid "Remo&ve Tracks"
msgstr "Ø&Ø°Ù Ø´ÛØ§Ø±âÙØ§"
+#: Menus.cpp:637
+msgid "&Mute All Tracks"
+msgstr ""
+
+#: Menus.cpp:638
+msgid "&UnMute All Tracks"
+msgstr ""
+
#: Menus.cpp:679
msgid "Align with &Zero"
msgstr "ردÛ٠کرد٠با ص&ÙØ±"
@@ -1647,302 +1976,358 @@ msgstr "ردÛ٠کرد٠با Ø¢&غاز Ø§ÙØªØ®Ø§Ø¨"
msgid "Align with Selection &End"
msgstr "ردÛ٠کرد٠با &Ù¾Ø§ÛØ§Ù Ø§ÙØªØ®Ø§Ø¨"
-#: Menus.cpp:683
-msgid "Align End with Cursor"
+#: Menus.cpp:647
+#, fuzzy
+msgid "Align End with Cu&rsor"
msgstr "ردÛÙ Ú©Ø±Ø¯Ù Ù¾Ø§ÛØ§Ù با Ù
کاÙâÙÙ
ا"
-#: Menus.cpp:684
-msgid "Align End with Selection Start"
+#: Menus.cpp:648
+#, fuzzy
+msgid "Align End with Selection Star&t"
msgstr "ردÛÙ Ú©Ø±Ø¯Ù Ù¾Ø§ÛØ§Ù با آغاز Ø§ÙØªØ®Ø§Ø¨"
-#: Menus.cpp:685
-msgid "Align End with Selection End"
+#: Menus.cpp:649
+#, fuzzy
+msgid "Align End with Selection En&d"
msgstr "ردÛÙ Ú©Ø±Ø¯Ù Ù¾Ø§ÛØ§Ù با Ù¾Ø§ÛØ§Ù Ø§ÙØªØ®Ø§Ø¨"
-#: Menus.cpp:686
-msgid "Align Tracks Together"
+#: Menus.cpp:650
+#, fuzzy
+msgid "Align Tracks To&gether"
msgstr "ÙÙ
âØ±Ø¯ÛÙ Ú©Ø±Ø¯Ù Ø´ÛØ§Ø±âÙØ§"
-#: Menus.cpp:688
-msgid "&Align Tracks..."
-msgstr "&ردÛÙ Ú©Ø±Ø¯Ù Ø´ÛØ§Ø±âÙØ§..."
+#: Menus.cpp:652
+msgid "&Align Tracks"
+msgstr ""
+
+#: Menus.cpp:667
+msgid "Ali&gn and Move Cursor"
+msgstr ""
+
+#: Menus.cpp:679
+msgid "Synchronize MIDI with Audio"
+msgstr ""
-#: Menus.cpp:697
-msgid "Ali&gn And Move Cursor..."
-msgstr "ردÛ&٠کرد٠٠جابÙâØ¬Ø§ÛÛ Ù
کاÙâÙÙ
ا..."
+#: Menus.cpp:686
+msgid "&Link Audio and Label Tracks"
+msgstr ""
-#: Menus.cpp:705
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "اضاÙ٠کرد٠&Ø¨Ø±ÚØ³Ø¨ در ÙØ³Ù
ت Ø§ÙØªØ®Ø§Ø¨âشدÙ\tCtrl+B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr ""
#: Menus.cpp:706
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "اضاÙÙ Ú©Ø±Ø¯Ù Ø¨Ø±ÚØ³Ø¨ در Ù
کا٠پخش\tCtrl+M"
+msgid "Add Label At &Playback Position"
+msgstr "اضاÙÙ Ú©Ø±Ø¯Ù Ø¨Ø±ÚØ³Ø¨ در Ù
کا٠پخش"
-#: Menus.cpp:712
-msgid "S&ort tracks by..."
-msgstr "&Ù
رتب Ú©Ø±Ø¯Ù Ø´ÛØ§Ø±Ùا از رÙÛ..."
+#: Menus.cpp:702
+msgid "S&ort tracks"
+msgstr ""
-#: Menus.cpp:713
-msgid "&Start time"
-msgstr "زÙ
ا٠آ&غاز"
+#: Menus.cpp:704
+msgid "by &Start time"
+msgstr ""
-#: Menus.cpp:715
-msgid "&Name"
-msgstr "&ÙØ§Ù
"
+#: Menus.cpp:707
+msgid "by &Name"
+msgstr ""
#: Menus.cpp:725
msgid "&Generate"
msgstr "&تÙÙÛØ¯"
+#: Menus.cpp:766 Menus.cpp:851 Menus.cpp:921
+msgid "Unsorted"
+msgstr ""
+
#: Menus.cpp:748
msgid "Effe&ct"
msgstr "ج&ÙÙÙ"
-#: Menus.cpp:752
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "تکرار جÙÙÙÙ ÙØ¨Ù\tCtrl+R"
-
#: Menus.cpp:784
msgid "&Analyze"
msgstr "تØÙÛ&Ù"
-#: Menus.cpp:786
-msgid "&Plot Spectrum..."
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
+
+#: Menus.cpp:877
+#, fuzzy
+msgid "Plot Spectrum..."
msgstr "&رسÙ
Ø·ÛÙ..."
#: Menus.cpp:819 Menus.cpp:822
msgid "&Help"
msgstr "را&ÙÙÙ
ا"
-#: Menus.cpp:824
-msgid "&Contents..."
-msgstr "&Ù
ÙØ¯Ø±Ø¬Ø§Øª..."
-
#: Menus.cpp:829
msgid "&About Audacity CleanSpeech..."
msgstr "&دربارÙÙ Ú©ÙÛÙâØ§Ø³Ù¾ÛÚ Ø§ÙØ¯Ø§Ø³ÛتÛ..."
+#: Menus.cpp:957
+msgid "&Show Welcome Message..."
+msgstr ""
+
+#: Menus.cpp:958
+msgid "&Help..."
+msgstr ""
+
+#: Menus.cpp:959
+msgid "Show &Log..."
+msgstr ""
+
+#: Menus.cpp:965
+msgid "&Screenshot Tools..."
+msgstr ""
+
#: Menus.cpp:837
msgid "&Run Benchmark..."
msgstr "&Ø§Ø¬Ø±Ø§Û Ø¢Ø²Ù
Ø§ÛØ´ Ù
ØÚ©..."
-#: Menus.cpp:848
-msgid ""
-"Cycle backward through Dock, Track View, and Selection Bar\tCtrl+Shift+F6"
-msgstr "ØØ±Ú©Øª Ù
Ø¹Ú©ÙØ³ بÛÙ Ù¾ÙØ¬Ø±Ù٠جداشدÙÛØ ÙÙ
Ø§Û Ø´ÛØ§Ø±ÙØ§Ø Ù ÙÙØ§Ø± Ø§ÙØªØ®Ø§Ø¨\tCtrl+Shift+F6"
+#: Menus.cpp:975
+msgid "&Audio Device Info..."
+msgstr ""
+
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
+msgstr ""
-#: Menus.cpp:849
-msgid "Cycle forward through Dock, Track View, and Selection Bar\tCtrl+F6"
-msgstr "ØØ±Ú©Øª بÛÙ Ù¾ÙØ¬Ø±Ù٠جداشدÙÛØ ÙÙ
Ø§Û Ø´ÛØ§Ø±ÙØ§Ø Ù ÙÙØ§Ø± Ø§ÙØªØ®Ø§Ø¨\tCtrl+F6"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
+msgstr ""
#: Menus.cpp:852
-msgid "Selection Tool\tF1"
-msgstr "ابزار Ø§ÙØªØ®Ø§Ø¨\tF1"
+msgid "Selection Tool"
+msgstr "ابزار Ø§ÙØªØ®Ø§Ø¨"
#: Menus.cpp:853
-msgid "Envelope Tool\tF2"
-msgstr "ابزار پاکت\tF2"
+msgid "Envelope Tool"
+msgstr "ابزار پاکت"
#: Menus.cpp:854
-msgid "Draw Tool\tF3"
-msgstr "ابزار رسÙ
\tF3"
+msgid "Draw Tool"
+msgstr "ابزار رسÙ
"
#: Menus.cpp:855
-msgid "Zoom Tool\tF4"
-msgstr "ابزار زÙÙ
\tF4"
+msgid "Zoom Tool"
+msgstr "ابزار زÙÙ
"
#: Menus.cpp:856
-msgid "Time Shift Tool\tF5"
-msgstr "ابزار جابÙâØ¬Ø§ÛÛ Ø²Ù
اÙÛ\tF5"
+msgid "Time Shift Tool"
+msgstr "ابزار جابÙâØ¬Ø§ÛÛ Ø²Ù
اÙÛ"
#: Menus.cpp:857
-msgid "Multi Tool\tF6"
-msgstr "ابزار ÚÙØ¯Ú¯Ø§ÙÙ\tF6"
+msgid "Multi Tool"
+msgstr "ابزار ÚÙØ¯Ú¯Ø§ÙÙ"
#: Menus.cpp:859
-msgid "Next Tool\tD"
-msgstr "ابزار بعدÛ\tD"
+msgid "Next Tool"
+msgstr "ابزار بعدÛ"
#: Menus.cpp:860
-msgid "Previous Tool\tA"
-msgstr "ابزار ÙØ¨ÙÛ\tA"
+msgid "Previous Tool"
+msgstr "ابزار ÙØ¨ÙÛ"
#: Menus.cpp:862
-msgid "Play/Stop\tSpacebar"
-msgstr "پخش/تÙÙÙ\tSpacebar"
-
-#: Menus.cpp:863
-msgid "Stop\tS"
-msgstr "تÙÙÙ\tS"
-
-#: Menus.cpp:864
-msgid "Pause\tP"
-msgstr "Ù
Ú©Ø«\tP"
+msgid "Play/Stop"
+msgstr "پخش/تÙÙÙ"
-#: Menus.cpp:865
-msgid "Record\tR"
-msgstr "ضبط\tR"
-
-#: Menus.cpp:867
-msgid "Stop and Select\tShift+A"
-msgstr "تÙÙÙ Ù Ø§ÙØªØ®Ø§Ø¨\tShift+A"
+#: Menus.cpp:1000
+msgid "Play/Stop and Set Cursor"
+msgstr ""
#: Menus.cpp:869
-msgid "Play One Second\t1"
-msgstr "پخش ÛÚ© ثاÙÛÙ\t1"
+msgid "Play One Second"
+msgstr "پخش ÛÚ© ثاÙÛÙ"
#: Menus.cpp:870
-msgid "Play To Selection\tB"
-msgstr "پخش تا Ø§ÙØªØ®Ø§Ø¨\tB"
-
-#: Menus.cpp:871
-msgid "Play Looped\tL"
-msgstr "پخش در ØÙÙÙ٠تکرار\tL"
-
-#: Menus.cpp:872
-msgid "Play Looped\tShift+Spacebar"
-msgstr "پخش در ØÙÙÙ٠تکرار\tShift+Spacebar"
+msgid "Play To Selection"
+msgstr "پخش تا Ø§ÙØªØ®Ø§Ø¨"
#: Menus.cpp:873
-msgid "Play Cut Preview\tC"
-msgstr "پخش Ù¾ÛØ´âÙÙ
Ø§ÛØ´ برش\tC"
-
-#: Menus.cpp:875
-msgid "Skip to Start\tHome"
-msgstr "پرش ب٠آغاز\tHome"
-
-#: Menus.cpp:876
-msgid "Skip to End\tEnd"
-msgstr "پرش Ø¨Ù Ø§ÙØªÙا\tEnd"
+msgid "Play Cut Preview"
+msgstr "پخش Ù¾ÛØ´âÙÙ
Ø§ÛØ´ برش"
#: Menus.cpp:878
-msgid "Selection to Start\tShift+Home"
-msgstr "Ø§ÙØªØ®Ø§Ø¨ تا آغاز\tShift+Home"
+msgid "Selection to Start"
+msgstr "Ø§ÙØªØ®Ø§Ø¨ تا آغاز"
#: Menus.cpp:879
-msgid "Selection to End\tShift+End"
-msgstr "Ø§ÙØªØ®Ø§Ø¨ تا Ù¾Ø§ÛØ§Ù\tShift+End"
+msgid "Selection to End"
+msgstr "Ø§ÙØªØ®Ø§Ø¨ تا Ù¾Ø§ÛØ§Ù"
#: Menus.cpp:881
-msgid "DeleteKey\tBackspace"
-msgstr "ØØ°Ù Ú©ÙÛØ¯\tBackspace"
+msgid "DeleteKey"
+msgstr "ØØ°Ù Ú©ÙÛØ¯"
#: Menus.cpp:886
-msgid "DeleteKey2\tDelete"
-msgstr "ØØ°Ù Ú©ÙÛØ¯ Û²\tDelete"
+msgid "DeleteKey2"
+msgstr "ØØ°Ù Ú©ÙÛØ¯ Û²"
-#: Menus.cpp:892
-msgid "Seek left short period during playback\tLeft"
-msgstr "پرش Ú©ÙÚÚ© ب٠ÚÙ¾ در ØÛ٠پخش\tLeft"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
+msgstr ""
-#: Menus.cpp:893
-msgid "Seek right short period during playback\tRight"
-msgstr "پرش Ú©ÙÚÚ© ب٠راست در ØÛ٠پخش\tRight"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
+msgstr ""
-#: Menus.cpp:894
-msgid "Seek left long period during playback\tShift+Left"
-msgstr "پرش بزرگ ب٠ÚÙ¾ در ØÛ٠پخش\tShift+Left"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
+msgstr ""
-#: Menus.cpp:895
-msgid "Seek right long period during playback\tShift+Right"
-msgstr "پرش بزرگ ب٠راست در ØÛ٠پخش\tShift+Right"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
+msgstr ""
#: Menus.cpp:899
-msgid "Move Focus to Previous Track\tUp"
-msgstr "جابÙâØ¬Ø§ÛÛ ØªÙ
رکز Ø¨Ù Ø´ÛØ§Ø± ÙØ¨ÙÛ\tUp"
+msgid "Move Focus to Previous Track"
+msgstr "جابÙâØ¬Ø§ÛÛ ØªÙ
رکز Ø¨Ù Ø´ÛØ§Ø± ÙØ¨ÙÛ"
-#: Menus.cpp:900
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
-msgstr "جابÙâØ¬Ø§ÛÛ ØªÙ
رکز Ø¨Ù ÙØ¨ÙÛ Ù ØªØºÛÛØ± Ø§ÙØªØ®Ø§Ø¨\tShift+Up"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
+msgstr ""
#: Menus.cpp:901
-msgid "Move Focus to Next Track\tDown"
-msgstr "جابÙâØ¬Ø§ÛÛ ØªÙ
رکز Ø¨Ù Ø´ÛØ§Ø± بعدÛ\tDown"
+msgid "Move Focus to Next Track"
+msgstr "جابÙâØ¬Ø§ÛÛ ØªÙ
رکز Ø¨Ù Ø´ÛØ§Ø± بعدÛ"
-#: Menus.cpp:902
-msgid "Move Focus to Next and Change Selection\tShift+Down"
-msgstr "جابÙâØ¬Ø§ÛÛ ØªÙ
رکز Ø¨Ù Ø¨Ø¹Ø¯Û Ù ØªØºÛÛØ± Ø§ÙØªØ®Ø§Ø¨\tShift+Down"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
+msgstr ""
#: Menus.cpp:903
-msgid "Toggle Focused Track\tReturn"
-msgstr "تغÛÛØ± ÙØ¶Ø¹Ûت تÙ
رکز Ø´ÛØ§Ø±\tReturn"
+msgid "Toggle Focused Track"
+msgstr "تغÛÛØ± ÙØ¶Ø¹Ûت تÙ
رکز Ø´ÛØ§Ø±"
-#: Menus.cpp:904
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr "تغÛÛØ± ÙØ¶Ø¹Ûت تÙ
رکز Ø´ÛØ§Ø±\tNUMPAD_ENTER"
+#: Menus.cpp:908
+msgid "Cursor Left"
+msgstr "Ù
کاÙâÙÙ
ا ب٠ÚÙ¾"
-#: Menus.cpp:905
-msgid "Toggle Focused Track\tCtrl+Spacebar"
-msgstr "تغÛÛØ± ÙØ¶Ø¹Ûت تÙ
رکز Ø´ÛØ§Ø±\tCtrl+Spacebar"
+#: Menus.cpp:909
+msgid "Cursor Right"
+msgstr "Ù
کاÙâÙÙ
ا ب٠راست"
-#: Menus.cpp:906
-msgid "Unfocus Track\tEscape"
-msgstr "ØØ°Ù تÙ
رکز از Ø´ÛØ§Ø±\tEscape"
+#: Menus.cpp:1035
+msgid "Cursor Short Jump Left"
+msgstr ""
-#: Menus.cpp:908
-msgid "Cursor Left\tLeft"
-msgstr "Ù
کاÙâÙÙ
ا ب٠ÚÙ¾\tLeft"
+#: Menus.cpp:1036
+msgid "Cursor Short Jump Right"
+msgstr ""
-#: Menus.cpp:909
-msgid "Cursor Right\tRight"
-msgstr "Ù
کاÙâÙÙ
ا ب٠راست\tRight"
+#: Menus.cpp:1037
+msgid "Cursor Long Jump Left"
+msgstr ""
+
+#: Menus.cpp:1038
+msgid "Cursor Long Jump Right"
+msgstr ""
#: Menus.cpp:910
-msgid "Selection Extend Left\tShift+Left"
-msgstr "گسترش Ø§ÙØªØ®Ø§Ø¨ ب٠ÚÙ¾\tShift+Left"
+msgid "Selection Extend Left"
+msgstr "گسترش Ø§ÙØªØ®Ø§Ø¨ ب٠ÚÙ¾"
#: Menus.cpp:911
-msgid "Selection Extend Right\tShift+Right"
-msgstr "گسترش Ø§ÙØªØ®Ø§Ø¨ ب٠راست\tShift+Right"
+msgid "Selection Extend Right"
+msgstr "گسترش Ø§ÙØªØ®Ø§Ø¨ ب٠راست"
+
+#: Menus.cpp:1043
+msgid "Set (or Extend) Left Selection"
+msgstr ""
+
+#: Menus.cpp:1044
+msgid "Set (or Extend) Right Selection"
+msgstr ""
#: Menus.cpp:913
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "اÙÙØ¨Ø§Ø¶ از ÚÙ¾ Ø§ÙØªØ®Ø§Ø¨\tCtrl+Shift+Right"
+msgid "Selection Contract Left"
+msgstr "اÙÙØ¨Ø§Ø¶ از ÚÙ¾ Ø§ÙØªØ®Ø§Ø¨"
#: Menus.cpp:914
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "اÙÙØ¨Ø§Ø¶ از راست Ø§ÙØªØ®Ø§Ø¨\tCtrl+Shift+Left"
+msgid "Selection Contract Right"
+msgstr "اÙÙØ¨Ø§Ø¶ از راست Ø§ÙØªØ®Ø§Ø¨"
#: Menus.cpp:916
-msgid "Change pan on focused track\tShift+P"
-msgstr "تغÛÛØ± ØØ±Ú©Øª اÙÙÛ Ø¨Ø± رÙÛ Ø´ÛØ§Ø± Ù
ÙØ±Ø¯ تÙ
رکز\tShift+P"
+msgid "Change pan on focused track"
+msgstr "تغÛÛØ± ØØ±Ú©Øª اÙÙÛ Ø¨Ø± رÙÛ Ø´ÛØ§Ø± Ù
ÙØ±Ø¯ تÙ
رکز"
#: Menus.cpp:917
-msgid "Pan left on focused track\tAlt+Shift+Left"
-msgstr "ØØ±Ú©Øª اÙÙÛ Ø¨Ù ÚÙ¾ بر رÙÛ Ø´ÛØ§Ø± Ù
ÙØ±Ø¯ تÙ
رکز\tAlt+Shift+Left"
+msgid "Pan left on focused track"
+msgstr "ØØ±Ú©Øª اÙÙÛ Ø¨Ù ÚÙ¾ بر رÙÛ Ø´ÛØ§Ø± Ù
ÙØ±Ø¯ تÙ
رکز"
#: Menus.cpp:918
-msgid "Pan right on focused track\tAlt+Shift+Right"
-msgstr "ØØ±Ú©Øª اÙÙÛ Ø¨Ù Ø±Ø§Ø³Øª بر رÙÛ Ø´ÛØ§Ø± Ù
ÙØ±Ø¯ تÙ
رکز\tAlt+Shift+Right"
+msgid "Pan right on focused track"
+msgstr "ØØ±Ú©Øª اÙÙÛ Ø¨Ù Ø±Ø§Ø³Øª بر رÙÛ Ø´ÛØ§Ø± Ù
ÙØ±Ø¯ تÙ
رکز"
#: Menus.cpp:919
-msgid "Change gain on focused track\tShift+G"
-msgstr "تغÛÛØ± Ø¨ÙØ±Ù Ø¨Ø±Ø§Û Ø´ÛØ§Ø± Ù
ÙØ±Ø¯ تÙ
رکز\tShift+G"
+msgid "Change gain on focused track"
+msgstr "تغÛÛØ± Ø¨ÙØ±Ù Ø¨Ø±Ø§Û Ø´ÛØ§Ø± Ù
ÙØ±Ø¯ تÙ
رکز"
#: Menus.cpp:920
-msgid "Increase gain on focused track\tAlt+Shift+Up"
-msgstr "Ø§ÙØ²Ø§ÛØ´ Ø¨ÙØ±Ù Ø¨Ø±Ø§Û Ø´ÛØ§Ø± Ù
ÙØ±Ø¯ تÙ
رکز\tAlt+Shift+Up"
+msgid "Increase gain on focused track"
+msgstr "Ø§ÙØ²Ø§ÛØ´ Ø¨ÙØ±Ù Ø¨Ø±Ø§Û Ø´ÛØ§Ø± Ù
ÙØ±Ø¯ تÙ
رکز"
#: Menus.cpp:921
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
-msgstr "Ú©Ø§ÙØ´ Ø¨ÙØ±Ù Ø¨Ø±Ø§Û Ø´ÛØ§Ø± Ù
ÙØ±Ø¯ تÙ
رکز\tAlt+Shift+Down"
+msgid "Decrease gain on focused track"
+msgstr "Ú©Ø§ÙØ´ Ø¨ÙØ±Ù Ø¨Ø±Ø§Û Ø´ÛØ§Ø± Ù
ÙØ±Ø¯ تÙ
رکز"
#: Menus.cpp:922
-msgid "Open menu on focused track\tShift+M"
-msgstr "بازکرد٠Ù
ÙÙ Ø¨Ø±Ø§Û Ø´ÛØ§Ø± Ù
ÙØ±Ø¯ تÙ
رکز\tShift+M"
+msgid "Open menu on focused track"
+msgstr "بازکرد٠Ù
ÙÙ Ø¨Ø±Ø§Û Ø´ÛØ§Ø± Ù
ÙØ±Ø¯ تÙ
رکز"
#: Menus.cpp:923
-msgid "Mute/Unmute focused track\tShift+U"
-msgstr "بدÙ٠صدا/با صدا Ú©Ø±Ø¯Ù Ø´ÛØ§Ø± Ù
ÙØ±Ø¯ تÙ
رکز\tShift+U"
+msgid "Mute/Unmute focused track"
+msgstr "بدÙ٠صدا/با صدا Ú©Ø±Ø¯Ù Ø´ÛØ§Ø± Ù
ÙØ±Ø¯ تÙ
رکز"
#: Menus.cpp:924
-msgid "Solo/Unsolo focused track\tShift+S"
-msgstr "تکâÙÙØ§Ø®Øª/ØºÛØ± تکâÙÙØ§Ø®Øª Ø´ÛØ§Ø± Ù
ÙØ±Ø¯ تÙ
رکز\tShift+S"
+msgid "Solo/Unsolo focused track"
+msgstr "تکâÙÙØ§Ø®Øª/ØºÛØ± تکâÙÙØ§Ø®Øª Ø´ÛØ§Ø± Ù
ÙØ±Ø¯ تÙ
رکز"
#: Menus.cpp:925
-msgid "Close focused track\tShift+C"
-msgstr "Ø¨Ø³ØªÙ Ø´ÛØ§Ø± Ù
ÙØ±Ø¯ تÙ
رکز\tShift+C"
+msgid "Close focused track"
+msgstr "Ø¨Ø³ØªÙ Ø´ÛØ§Ø± Ù
ÙØ±Ø¯ تÙ
رکز"
+
+#: Menus.cpp:1060
+msgid "Snap To On"
+msgstr ""
+
+#: Menus.cpp:1061
+msgid "Snap To Off"
+msgstr ""
+
+#: Menus.cpp:1065
+msgid "Full screen on/off"
+msgstr ""
+
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr ""
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr ""
+
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr ""
+
+#: Menus.cpp:1074
+msgid "Adjust input source"
+msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
#: Menus.cpp:939
@@ -1950,14 +2335,9 @@ msgid "Open Recent"
msgstr "باز کرد٠Ù
ÙØ§Ø±Ø¯ Ø§Ø®ÛØ±"
#. i18n-hint: This is the name of the menu item on Windows and Linux
-#: Menus.cpp:942
-msgid "Recent &Files..."
-msgstr "پرÙÙØ¯ÙâÙØ§Û ا&Ø®ÛØ±..."
-
-#: Menus.cpp:987 Menus.cpp:990
-#, c-format
-msgid "&%s..."
-msgstr "&%s..."
+#: Menus.cpp:1164
+msgid "Recent &Files"
+msgstr ""
#: Menus.cpp:1002
#, c-format
@@ -2007,13 +2387,30 @@ msgstr "Ø¨Ø§ÛØ¯ اÙÙ ÛÚ© Ø´ÛØ§Ø± Ø§ÙØªØ®Ø§Ø¨ Ú©ÙÛØ¯."
#: Menus.cpp:2040
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "تکرار %s\tCtrl+R"
+msgid "Repeat %s"
+msgstr "تکرار %s"
#: Menus.cpp:2171
msgid "There are no label tracks to export."
msgstr "ÙÛÚ Ø´ÛØ§Ø± Ø¨Ø±ÚØ³Ø¨Û Ø¨Ø±Ø§Û ØµØ¯ÙØ± ÙØ¬Ùد ÙØ¯Ø§Ø±Ø¯."
+#: Menus.cpp:2667
+msgid "Export MIDI As:"
+msgstr ""
+
+#: Menus.cpp:2671
+msgid "MIDI file (*.mid)|*.mid|Allegro file (*.gro)|*.gro"
+msgstr ""
+
+#: Menus.cpp:2703
+msgid "You have selected a filename with an unrecognized file extension.\n"
+"Do you want to continue?"
+msgstr ""
+
+#: Menus.cpp:2704
+msgid "Export MIDI"
+msgstr ""
+
#: Menus.cpp:2310
msgid "Nothing to undo"
msgstr "ÚÛØ²Û Ø¨Ø±Ø§Û Ø¨Ø±Ú¯Ø±Ø¯Ø§ÙØ¯Ù ÙÛØ³Øª"
@@ -2051,6 +2448,10 @@ msgstr "Ù
ت٠از تختÙâÚ¯ÛØ±Ù ÚØ³Ø¨Ø§Ùد٠شد"
msgid "Pasted from the clipboard"
msgstr "از تختÙâÚ¯ÛØ±Ù ÚØ³Ø¨Ø§Ùد٠شد"
+#: Menus.cpp:3229
+msgid "Pasting one type of track into another is not allowed."
+msgstr ""
+
#: Menus.cpp:2628
msgid "Copying stereo audio into a mono track is not allowed."
msgstr "ÙØ³Ø®ÙâØ¨Ø±Ø¯Ø§Ø±Û Ø§Ø² ØµÙØª استرÛ٠در Ø´ÛØ§Ø± Ù
ÙÙÙ Ù
جاز ÙÛØ³Øª."
@@ -2195,24 +2596,6 @@ msgstr "تÙÚ©ÛÚ© Ø¨Ù Ø´ÛØ§Ø± Ø¬Ø¯ÛØ¯"
msgid "Split at labels"
msgstr "تÙÚ©ÛÚ© در Ø¨Ø±ÚØ³Ø¨âÙØ§"
-#: Menus.cpp:3452
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "Ø¨Ø±Ø§Û Ø±Ø³Ù
Ø·ÛÙØ ÙÙ
ÙÙ Ø´ÛØ§Ø±ÙØ§Û Ø§ÙØªØ®Ø§Ø¨âØ´Ø¯Ù Ø¨Ø§ÛØ¯ ÙØ±Ø® ÙÙ
ÙÙÙâØ¨Ø±Ø¯Ø§Ø±Û ÛÚ©Ø³Ø§Ù Ø¯Ø§Ø´ØªÙ Ø¨Ø§Ø´ÙØ¯."
-
-#: Menus.cpp:3478
-#, c-format
-msgid ""
-"Too much audio was selected. Only the first %.1f seconds of audio will be "
-"analyzed."
-msgstr ""
-"Ù
ÙØ¯Ø§Ø± ØµÙØª Ø§ÙØªØ®Ø§Ø¨âØ´Ø¯Ù Ø²ÛØ§Ø¯ است. تÙÙØ§ %I.1f ثاÙÛÙ٠اÙÙ ØµÙØª"
-"تØÙÛÙ Ø®ÙØ§Ùد شد."
-
-
-#: Menus.cpp:3551 Project.cpp:1493
-msgid "Select one or more audio files..."
-msgstr "ÛÚ© ÛØ§ ÚÙØ¯ پرÙÙØ¯ÙÙ ØµÙØªÛ Ø§ÙØªØ®Ø§Ø¨ Ú©ÙÛØ¯..."
-
#: Menus.cpp:3613
#, c-format
msgid "Imported labels from '%s'"
@@ -2226,16 +2609,15 @@ msgstr "ÙØ§Ø±Ø¯ Ú©Ø±Ø¯Ù Ø¨Ø±ÚØ³Ø¨"
msgid "Select a MIDI file..."
msgstr "ÛÚ© ÛØ§ ÚÙØ¯ پرÙÙØ¯ÙÙ MIDI Ø§ÙØªØ®Ø§Ø¨ Ú©ÙÛØ¯..."
-#: Menus.cpp:3628
-msgid ""
-"All files (*.*)|*.*|MIDI files (*.mid)|*.mid|Allegro files (*.gro)|*.gro"
-msgstr "ÙÙ
Ù٠پرÙÙØ¯ÙâÙØ§ (*.*(|*.*|پرÙÙØ¯ÙâÙØ§Û MIDIâ â(*.mid)|*.mid|پرÙÙØ¯ÙâÙØ§Û اÙگر٠(*.gro)|gro"
+#: Menus.cpp:4270
+msgid "MIDI and Allegro files (*.mid;*.midi;*.gro)|*.mid;*.midi;*.gro|MIDI files (*.mid;*.midi)|*.mid;*.midi|Allegro files (*.gro)|*.gro|All files (*.*)|*.*"
+msgstr ""
#: Menus.cpp:3644
#, c-format
msgid "Imported MIDI from '%s'"
msgstr "MIDI ÙØ§Ø±Ø¯Ø´Ø¯Ù از «%s»"
-
+
#: Menus.cpp:3646
msgid "Import MIDI"
msgstr "ÙØ§Ø±Ø¯ کرد٠MIDI"
@@ -2248,22 +2630,17 @@ msgstr "ÛÚ© پرÙÙØ¯ÙÙ ØµÙØªÛ ÙØ§ÙØ´Ø±Ø¯Ù Ø§ÙØªØ®Ø§Ø¨ Ú©ÙÛØ¯..."
msgid "All files (*)|*"
msgstr "ÙÙ
Ù٠پرÙÙØ¯ÙâÙØ§ (*)|*"
-#: Menus.cpp:3678 Project.cpp:2285 Project.cpp:2310 import/ImportPCM.cpp:405
-#: import/ImportPCM.cpp:449 import/ImportRaw.cpp:446
-msgid "Import"
-msgstr "ÙØ§Ø±Ø¯ کردÙ"
-
-#: Menus.cpp:3697
-msgid "Edit ID3 Tags (for MP3 exporting)"
-msgstr "ÙÛØ±Ø§ÛØ´ Ø¨Ø±ÚØ³Ø¨ ID3 (Ø¨Ø±Ø§Û ØµØ¯ÙØ± Ø¨Ù ØµÙØ±Øª MP3)"
+#: Menus.cpp:4329
+msgid "Edit the metadata tags"
+msgstr ""
-#: Menus.cpp:3698
-msgid "Edit ID3 Tags"
-msgstr "ÙÛØ±Ø§ÛØ´ Ø¨Ø±ÚØ³Ø¨ ID3"
+#: Menus.cpp:4330 export/Export.cpp:348
+msgid "Edit Metadata"
+msgstr ""
-#: Menus.cpp:3698
-msgid "Edit ID3 tags"
-msgstr "ÙÛØ±Ø§ÛØ´ Ø¨Ø±ÚØ³Ø¨ ID3"
+#: Menus.cpp:4330
+msgid "Edit Metadata tags"
+msgstr ""
#: Menus.cpp:3749
#, c-format
@@ -2284,6 +2661,10 @@ msgstr "%Id Ø´ÛØ§Ø± در ÛÚ© Ø´ÛØ§Ø± استرÛÙØ Ù
Ûکس Ù Ø±ÙØ¯Ø± شد
msgid "Mixed and rendered %d tracks into one new mono track"
msgstr "%Id Ø´ÛØ§Ø± در ÛÚ© Ø´ÛØ§Ø± Ù
ÙÙÙØ Ù
Ûکس Ù Ø±ÙØ¯Ø± Ø´Ø¯ÙØ¯"
+#: Menus.cpp:658 Menus.cpp:3760 Mix.cpp:119
+msgid "&Mix and Render"
+msgstr "&Ù
Ûکس Ù Ø±ÙØ¯Ø±"
+
#: Menus.cpp:3877
msgid "Aligned with zero"
msgstr "ÙÙ
âØ±Ø¯Û٠با ØµÙØ±"
@@ -2320,6 +2701,14 @@ msgstr "ردÛ٠شد"
msgid "Align"
msgstr "ردÛ٠کردÙ"
+#: Menus.cpp:4675
+msgid "Sync MIDI with Audio"
+msgstr ""
+
+#: Menus.cpp:4679
+msgid "Alignment completed."
+msgstr ""
+
#: Menus.cpp:3961
msgid "Created new audio track"
msgstr "Ø§ÛØ¬Ø§Ø¯ Ø´ÛØ§Ø± ØµÙØªÛ Ø¬Ø¯ÛØ¯"
@@ -2337,10 +2726,8 @@ msgid "Created new label track"
msgstr "Ø´ÛØ§Ø± Ø¨Ø±ÚØ³Ø¨ Ø¬Ø¯ÛØ¯ Ø§ÛØ¬Ø§Ø¯ شد"
#: Menus.cpp:4024
-msgid ""
-"The version of Audacity you are using does not support multiple time tracks."
-msgstr ""
-"ÙØ³Ø®ÙÙ Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø´Ù
ا از ÛØ´ از ÛÚ© Ø´ÛØ§Ø± زÙ
Ø§Ù Ù¾Ø´ØªÛØ¨Ø§ÙÛ ÙÙ
ÛâÚ©ÙØ¯."
+msgid "The version of Audacity you are using does not support multiple time tracks."
+msgstr "ÙØ³Ø®ÙÙ Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø´Ù
ا از ÛØ´ از ÛÚ© Ø´ÛØ§Ø± زÙ
Ø§Ù Ù¾Ø´ØªÛØ¨Ø§ÙÛ ÙÙ
ÛâÚ©ÙØ¯."
#: Menus.cpp:4035
msgid "Created new time track"
@@ -2382,14 +2769,14 @@ msgstr "ØØ°Ù Ø´ÛØ§Ø±"
msgid "Removed audio track(s)"
msgstr "Ø´ÛØ§Ø±(ÙØ§Û) ØµÙØªÛ ØØ°ÙâØ´Ø¯Ù"
-#: Menus.cpp:4480
-msgid "Enter new samplerate:"
-msgstr "ÙØ±Ø® Ø¬Ø¯ÛØ¯ ÙÙ
ÙÙÙâØ¨Ø±Ø¯Ø§Ø±Û Ø±Ø§ ÙØ§Ø±Ø¯ Ú©ÙÛØ¯:"
-
#: Menus.cpp:4480 Menus.cpp:4499
msgid "Resample"
msgstr "ÙÙ
ÙÙÙâØ¨Ø±Ø¯Ø§Ø±Û Ù
جدد"
+#: Menus.cpp:5287 TrackPanel.cpp:6479 toolbars/MixerToolBar.cpp:314
+msgid "New sample rate (Hz):"
+msgstr ""
+
#: Menus.cpp:4486
msgid "The entered value is invalid"
msgstr "Ù
ÙØ¯Ø§Ø± ÙØ§Ø±Ø¯Ø´Ø¯Ù ÙØ§Ù
عتبر است"
@@ -2427,6 +2814,10 @@ msgstr "ÙÙگاÙ
ÚØ§Ù¾ Ù
Ø´Ú©ÙÛ Ù¾ÛØ´ Ø¢Ù
د."
msgid "Print"
msgstr "ÚØ§Ù¾"
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr ""
+
#: Project.cpp:573
msgid "Main Mix"
msgstr "Ù
Ûکس اصÙÛ"
@@ -2440,7 +2831,7 @@ msgstr "Ø¨Ù Ø§ÙØ¯Ø§Ø³ÛØªÛ ÙØ³Ø®ÙÙ %s Ø®ÙØ´ Ø¢Ù
Ø¯ÛØ¯"
msgid "(Recovered)"
msgstr "(Ø¨Ø§Ø²ÛØ§Ø¨Û شدÙ)"
-#: Project.cpp:1318 TrackPanel.cpp:776 toolbars/ControlToolBar.cpp:192
+#: Menus.cpp:865
msgid "Record"
msgstr "ضبط"
@@ -2452,17 +2843,60 @@ msgstr "ØµØ¯Ø§Û Ø¶Ø¨Ø·âØ´Ø¯Ù"
msgid "Save changes before closing?"
msgstr "Ø¢ÛØ§ Ù¾ÛØ´ از Ø¨Ø³ØªÙØ تغÛÛØ±Ø§Øª Ø°Ø®ÛØ±Ù Ø´ÙØ¯Ø"
+#: Project.cpp:1710
+msgid "\n"
+"If saved, the project will have no tracks.\n"
+"\n"
+"To save any previously open tracks:\n"
+"Cancel, Edit > Undo until all tracks\n"
+"are open, then File > Save Project."
+msgstr ""
+
#: Project.cpp:1336
msgid "Save changes?"
msgstr "تغÛÛØ±Ø§Øª Ø°Ø®ÛØ±Ù Ø´ÙØ¯Ø"
-#: Project.cpp:1496
-msgid ""
-"Music files (*.wav;*.mp3)|*.wav;*.mp3|WAV files (*.wav)|*.wav|MP3 files (*."
-"mp3)|*.mp3"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
+msgstr ""
+
+#: Menus.cpp:3551 Project.cpp:1493
+msgid "Select one or more audio files..."
+msgstr "ÛÚ© ÛØ§ ÚÙØ¯ پرÙÙØ¯ÙÙ ØµÙØªÛ Ø§ÙØªØ®Ø§Ø¨ Ú©ÙÛØ¯..."
+
+#: Project.cpp:1982
+msgid "Audacity projects|*.aup|"
+msgstr ""
+
+#: Project.cpp:2042 Project.cpp:2477
+#, c-format
+msgid "This file was saved by Audacity %s, a much\n"
+"older version. The format has changed.\n"
+"\n"
+"Audacity could corrupt the file in opening\n"
+"it, so you must back it up first.\n"
+"\n"
+"Open this file now?"
+msgstr ""
+
+#: Project.cpp:2043
+msgid "1.0 or earlier"
+msgstr ""
+
+#: Project.cpp:1902
+msgid "Opening old project file"
+msgstr "در ØØ§Ù باز کرد٠پرÙÙØ¯Ù٠پرÙÚÙÙ ÙØ¯ÛÙ
Û"
+
+#: Project.cpp:2073
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2074
+msgid "Backup file detected"
msgstr ""
-"پرÙÙØ¯ÙâÙØ§Û Ù
ÙØ³ÛÙÛ (*.wav;*.mp3)|*.wav;*.mp3|پرÙÙØ¯ÙâÙØ§Û (*.wav)|*.wav|MP3پرÙÙØ¯ÙâÙØ§Û WAV (*."
-"mp3)|*.mp3"
#: Project.cpp:1571 Project.cpp:1579
msgid "Error opening file"
@@ -2470,11 +2904,9 @@ msgstr "خطا در باز کرد٠پرÙÙØ¯Ù"
#: Project.cpp:1585
#, c-format
-msgid ""
-"File may be invalid or corrupted: \n"
+msgid "File may be invalid or corrupted: \n"
"%s"
-msgstr ""
-"Ù
Ù
ک٠است پرÙÙØ¯Ù ÙØ§Ù
عتبر ÛØ§ خراب باشد: \n"
+msgstr "Ù
Ù
ک٠است پرÙÙØ¯Ù ÙØ§Ù
عتبر ÛØ§ خراب باشد: \n"
"%s"
#: Project.cpp:1586
@@ -2482,9 +2914,7 @@ msgid "Error opening file or project"
msgstr "خطا در باز کرد٠پرÙÙØ¯Ù ÛØ§ پرÙÚÙ"
#: Project.cpp:1603
-msgid ""
-"Audacity was unable to convert an Audacity 1.0 project to the new project "
-"format."
+msgid "Audacity was unable to convert an Audacity 1.0 project to the new project format."
msgstr "Ø§ÙØ¯Ø§Ø³ÛØªÛ ÙØ§Ø¯Ø± ÙØ¨Ùد پرÙÚÙÙ Ø§ÙØ§Ø³ÛØªÛ 1.0 را Ø¨Ù ÙØ§Ùب Ø¬Ø¯ÛØ¯ پرÙÚ٠تبدÛÙ Ú©ÙØ¯."
#: Project.cpp:1706
@@ -2514,8 +2944,7 @@ msgstr "Ù¾ÙØ´Ù٠دادÙâÙØ§Û پرÙÚÙ Ù¾ÛØ¯Ø§ ÙÙ
ÛâØ´ÙØ¯: «%s»
#: Project.cpp:1886
#, c-format
-msgid ""
-"This file was saved using Audacity %s.\n"
+msgid "This file was saved using Audacity %s.\n"
"You are using Audacity %s - you need to upgrade to\n"
"a newer version to open this file."
msgstr "اÛ٠پرÙÙØ¯Ù ØªÙØ³Ø· Ø§ÙØ¯Ø§Ø³ÛØªÛ %s Ø°Ø®ÛØ±Ù شد٠است.\n"
@@ -2526,60 +2955,62 @@ msgstr "اÛ٠پرÙÙØ¯Ù ØªÙØ³Ø· Ø§ÙØ¯Ø§Ø³ÛØªÛ %s Ø°Ø®ÛØ±Ù شد٠اس
msgid "Can't open project file"
msgstr "ÙÙ
ÛâØªÙØ§Ù پرÙÙØ¯Ù٠پرÙÚ٠را باز کرد"
-#: Project.cpp:1898
+#: Project.cpp:2484
#, c-format
-msgid ""
-"This file was saved by Audacity %s and the format\n"
-"has changed. This version of Audacity can try to\n"
-"open it, but there may be problems. You should back up\n"
-"your project first, to be safe.\n"
+msgid "This file was saved by Audacity %s.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
-"Would you like to open this file right now anyway?"
+"Open this file now?"
msgstr ""
-"اÛ٠پرÙÙØ¯Ù ØªÙØ³Ø· Ø§ÙØ¯Ø§Ø³ÛØªÛ %s Ø°Ø®ÛØ±Ù شد٠است Ù ÙØ§Ùب آ٠تغÛÛØ± کرد٠است.\n"
-" اÛÙ ÙØ³Ø®Ù از Ø§ÙØ¯Ø§Ø³ÛØªÛ Ù
ÛâØªÙØ§Ùد ØªÙØ§Ø´ Ú©ÙØ¯ ک٠اÛ٠پرÙÙØ¯Ù را باز Ú©ÙØ¯Ø اÙ
ا Ù
Ù
ک٠است\n"
-"Ù
Ø´Ú©ÙØ§ØªÛ Ø¨ÙØ¬Ùد Ø¢ÛØ¯. Ø¨Ø±Ø§Û Ø§ØØªÛØ§Ø·Ø Ø§Ø² پرÙÚÙ ÙØ³Ø®ÙÙ Ù¾Ø´ØªÛØ¨Ø§Ù تÙÛÙ Ú©ÙÛØ¯.\n"
+
+#: Project.cpp:2682
+msgid "Your project is now empty.\n"
+"If saved, the project will have no tracks.\n"
+"\n"
+"To save any previously open tracks:\n"
+"Click 'No', Edit > Undo until all tracks\n"
+"are open, then File > Save Project.\n"
"\n"
-"Ø¢ÛØ§ با اÛÙ ÙØ¬Ùد Ù
ÛâØ®ÙØ§ÙÛØ¯ اÛ٠پرÙÙØ¯Ù ÙÙ
ÛÙ ØØ§Ùا باز Ú©ÙÛØ¯Ø"
+"Save anyway?"
+msgstr ""
-#: Project.cpp:1902
-msgid "Opening old project file"
-msgstr "در ØØ§Ù باز کرد٠پرÙÙØ¯Ù٠پرÙÚÙÙ ÙØ¯ÛÙ
Û"
+#: Project.cpp:2683
+msgid "Warning empty project"
+msgstr ""
-#: Project.cpp:2124
+#: Project.cpp:2792
#, c-format
-msgid ""
-"Could not save project. Perhaps %s is not writeable,\n"
-"or the disk is full."
+msgid "Could not save project. Perhaps %s \n"
+"is not writable or the disk is full."
msgstr ""
-"پرÙÚÙ Ø°Ø®ÛØ±Ù ÙÙ
ÛâØ´ÙØ¯. Ø´Ø§ÛØ¯ â%s ÙØ§Ø¨Ù ÙÙØ´ØªÙ ÙÛØ³ØªØ\n"
-"ÛØ§ Ø¯ÛØ³Ú© پر شد٠است."
#: Project.cpp:2126 Project.cpp:2140
msgid "Error saving project"
msgstr "خطا در Ø°Ø®ÛØ±ÙâØ³Ø§Ø²Û Ù¾Ø±ÙÚÙ"
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
#: Project.cpp:2202
#, c-format
msgid "Saved %s"
msgstr "ââ%s Ø°Ø®ÛØ±Ù شد"
-#. i18n-hint: This refers to files that are opened directly
-#. without looking at the file header. Same as "Import Raw"
-#: Project.cpp:2218
-msgid "Raw"
-msgstr "خاÙ
"
-
-#: Project.cpp:2223 import/ImportPCM.cpp:361
-#, c-format
-msgid "Importing %s File..."
-msgstr "در ØØ§Ù ÙØ§Ø±Ø¯ کرد٠پرÙÙØ¯ÙÙ â%s..."
-
#: Project.cpp:2284
#, c-format
msgid "Imported '%s'"
msgstr "â«â%s» ÙØ§Ø±Ø¯ شد"
+#: Menus.cpp:3678 Project.cpp:2285 Project.cpp:2310 import/ImportPCM.cpp:405
+#: import/ImportPCM.cpp:449 import/ImportRaw.cpp:446
+msgid "Import"
+msgstr "ÙØ§Ø±Ø¯ کردÙ"
+
#: Project.cpp:2324
msgid "Error importing"
msgstr "خطا در ÙØ§Ø±Ø¯ کردÙ"
@@ -2588,25 +3019,28 @@ msgstr "خطا در ÙØ§Ø±Ø¯ کردÙ"
msgid "Save Speech As:"
msgstr "Ø°Ø®ÛØ±ÙÙ Ú¯ÙØªØ§Ø± با ÙØ§Ù
:"
-#: Project.cpp:2367
-msgid "Windows PCM Audio file *.wav)|*.wav"
+#: Project.cpp:3136
+#, fuzzy
+msgid "Windows PCM Audio file (*.wav)|*.wav"
msgstr "پرÙÙØ¯ÙÙ ØµÙØªÛ PCM ÙÛÙØ¯Ùز (*.wav)|*.wav"
-#: Project.cpp:2373
-msgid ""
-"Audacity project files (.aup) let you save everything you're working on "
-"exactly as it\n"
-"appears on the screen, but most other programs can't open Audacity project "
-"files.\n"
+#: Project.cpp:3143
+msgid "Audacity compressed project files (.aup) save your work in a smaller, compressed (.ogg) format. \n"
+"Compressed project files are a good way to transmit your project online, because they are much smaller. \n"
+"To open a compressed project takes longer than usual, as it imports each compressed track. \n"
"\n"
-"When you want to save a file that can be opened by other programs, select "
-"one of the\n"
+"Most other programs can't open Audacity project files.\n"
+"When you want to save a file that can be opened by other programs, select one of the\n"
"Export commands."
msgstr ""
-"با پرÙÙØ¯ÙâÙØ§Û پرÙÚÙÙ Ø§ÙØ¯Ø§Ø³ÛØªÛ (â.aup) Ù
ÛâØªÙØ§ÙÛØ¯ تÙ
اÙ
ÚÛØ²ÙاÛÛ Ø±Ø§ ک٠در ØØ§Ù کار بر رÙÛ Ø¢ÙÙØ§ ÙØ³ØªÛدب٠ÙÙ
ا٠شکÙÛ Ú©Ù\n"
-"بر رÙÛ ØµÙØÙÙ ÙÙ
Ø§ÛØ´ ÙØ´Ø§Ù داد٠Ù
ÛâØ´ÙÙØ¯Ø Ø°Ø®ÛØ±Ù Ú©ÙÛØ¯Ø اÙ
ا اکثر Ø¨Ø±ÙØ§Ù
ÙâÙØ§ ÙÙ
ÛâØªÙØ§ÙÙØ¯ پرÙÙØ¯ÙâÙØ§Û پرÙÚÙÙ Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø±Ø§ باز Ú©ÙÙØ¯."
+
+#: Project.cpp:3146
+msgid "You are saving an Audacity project file (.aup).\n"
"\n"
-"Ù
ÙØ§ÙØ¹Û Ú©Ù Ù
ÛâØ®ÙØ§ÙÛØ¯ پرÙÙØ¯ÙâØ§Û Ø±Ø§ Ø°Ø®ÛØ±Ù Ú©ÙÛØ¯ Ú©Ù Ø¨ØªÙØ§Ù با Ø¨Ø±ÙØ§Ù
ÙâÙØ§Û دÛگر بازش Ú©Ø±Ø¯Ø ÛÚ©Û Ø§Ø² Â«ÙØ±Ù
اÙâÙØ§Û ØµØ¯ÙØ±Â» را Ø§ÙØªØ®Ø§Ø¨ Ú©ÙÛØ¯."
+"Saving a project creates a file that only Audacity can open.\n"
+"\n"
+"To save an audio file for other programs, use one of the \"File > Export\" commands.\n"
+msgstr ""
#: Project.cpp:2376
msgid "Audacity projects (*.aup)|*.aup"
@@ -2650,6 +3084,16 @@ msgstr "Ø¯ÛØ³Ú© Ø¨Ù Ø§ÙØ¯Ø§Ø²Ù٠ضبط %Id ثاÙÛÙ ÙØ¶Ø§Û خاÙÛ Ø¯
msgid "Out of disk space"
msgstr "Ø¯ÛØ³Ú© Ù¾ÙØ± شد٠است"
+#: Project.cpp:3563
+#, c-format
+msgid "Import(s) complete. Running %d on-demand waveform calculations. Overall %2.0f%% complete."
+msgstr ""
+
+#: Project.cpp:3566
+#, c-format
+msgid "Import complete. Running an on-demand waveform calculation. %2.0f%% complete."
+msgstr ""
+
#: Project.cpp:3027
msgid "Could not remove old autosave file: "
msgstr "ÙÙ
ÛâØªÙØ§Ù پرÙÙØ¯ÙÙ Ø°Ø®ÛØ±ÙâØ³Ø§Ø²Û Ø®ÙØ¯Ú©Ø§Ø± را ØØ°Ù کرد: "
@@ -2666,23 +3110,12 @@ msgstr "خطا در ÙÙØ´ØªÙ پرÙÙØ¯ÙÙ Ø°Ø®ÛØ±ÙâØ³Ø§Ø²Û Ø®ÙØ¯Ú©Ø§Ø±
msgid "Could not create autosave file: "
msgstr "ÙÙ
ÛâØªÙØ§Ù پرÙÙØ¯ÙÙ Ø°Ø®ÛØ±ÙâØ³Ø§Ø²Û Ø®ÙØ¯Ú©Ø§Ø± را Ø§ÛØ¬Ø§Ø¯ کرد: "
-#: Project.cpp:3113
+#: Project.cpp:3962
#, c-format
-msgid "Actual Rate %d"
+#, fuzzy
+msgid "Actual Rate: %d"
msgstr "ÙØ±Ø® ÙØ§ÙØ¹Û %Id"
-#: Project.cpp:3230
-msgid ""
-"All files (*.*)|*.*|Audacity projects (*.aup)|*.aup|WAV files (*.wav)|*.wav|"
-"AIFF files (*.aif)|*.aif|AU files (*.au)|*.au|MP3 files (*.mp3)|*.mp3|MP2/"
-"MPEG files (*.mp2;*.mpa;*.mpg;*.mpeg)|*.mp2;*.mpa;*.mpg;*.mpeg|Ogg Vorbis "
-"files (*.ogg)|*.ogg|FLAC files (*.flac)|*.flac|List of Files (*.lof)|*.lof"
-msgstr ""
-"ÙÙ
Ù٠پرÙÙØ¯ÙâÙØ§ (*.*)|*.*|پرÙÚÙâÙØ§Û Ø§ÙØ¯Ø§Ø³ÛØªÛ (*.aup)|*.aup|پرÙÙØ¯ÙâÙØ§Û WAV (*.wav)|*.wav|"
-"پرÙÙØ¯ÙâÙØ§Û AIFF (*.aif)|*.aif|پرÙÙØ¯ÙâÙØ§Û AU (*.au)|*.au|پرÙÙØ¯ÙâÙØ§Û MP3 (*.mp3)|*.mp3|پرÙÙØ¯ÙâÙØ§Û MP2/"
-"MPEG (*.mp2;*.mpa;*.mpg;*.mpeg)|*.mp2;*.mpa;*.mpg;*.mpeg|پرÙÙØ¯ÙâÙØ§Û اÙÚ¯ ÙÙØ±Ø¨Ûس "
-"(*.ogg)|*.ogg|پرÙÙØ¯ÙâÙØ§Û FLAC (*.flac)|*.flac|ÙÙØ±Ø³Øª پرÙÙØ¯ÙâÙØ§ (*.lof)|*.lof"
-
#: Resample.cpp:42
msgid "Libresample by Dominic Mazzoni and Julius Smith"
msgstr "âLibresample ÙÙØ´ØªÙ٠دÙÙ
ÛÙÛÚ© Ù
ازÙÙÛ Ù Ø¬ÙÙÛÙØ³ اسÙ
ÛØª"
@@ -2708,108 +3141,274 @@ msgstr "Ø®Ø·Ø§Û libsamplerate: %Id\n"
msgid "Resampling disabled."
msgstr "ÙÙ
ÙÙÙâØ¨Ø±Ø¯Ø§Ø±Û Ù
جدد از کار Ø§ÙØªØ§Ø¯. "
-#: SmartRecordDialog.cpp:68
-msgid "Audacity Timer Record"
-msgstr "ضبط زÙ
اÙâØ¨ÙØ¯Û شدÙÙ Ø§ÙØ¯Ø§Ø³ÛتÛ"
+#. i18n-hint: Audio data bit depth (precision): 16-bit integers
+#: SampleFormat.cpp:66
+msgid "16-bit PCM"
+msgstr ""
-#: SmartRecordDialog.cpp:212
-msgid "Recording start: "
-msgstr "آغاز ضبط: "
+#. i18n-hint: Audio data bit depth (precision): 24-bit integers
+#: SampleFormat.cpp:69
+msgid "24-bit PCM"
+msgstr ""
-#: SmartRecordDialog.cpp:213
-msgid ""
-"\n"
-"\n"
-"Recording end: "
+#. i18n-hint: Audio data bit depth (precision): 32-bit floating point
+#: SampleFormat.cpp:72
+msgid "32-bit float"
msgstr ""
-"\n"
-"\n"
-"Ù¾Ø§ÛØ§Ù ضبط: "
-#: SmartRecordDialog.cpp:214
-msgid " Duration: "
-msgstr " Ù
دت زÙ
اÙ: "
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
-#: SmartRecordDialog.cpp:217
-msgid "Audacity Smart Record Progress"
-msgstr "Ù¾ÛØ´Ø±Ùت ضبط ÙÙØ´Ù
ÙØ¯ Ø§ÙØ¯Ø§Ø³ÛتÛ"
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
-#: SmartRecordDialog.cpp:251
-msgid "Start Date and Time"
-msgstr "ØªØ§Ø±ÛØ® ٠زÙ
ا٠آغاز"
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
-#: SmartRecordDialog.cpp:268
-msgid "End Date and Time"
-msgstr "ØªØ§Ø±ÛØ® ٠زÙ
Ø§Ù Ù¾Ø§ÛØ§Ù"
+#: export/ExportMultiple.cpp:729 prefs/DirectoriesPrefs.cpp:92
+msgid "Choose..."
+msgstr "Ø§ÙØªØ®Ø§Ø¨..."
-#: SmartRecordDialog.cpp:285
-msgid "Duration"
-msgstr "Ù
دت زÙ
اÙ"
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
-#: SmartRecordDialog.cpp:361
-msgid "Waiting to start recording at "
-msgstr "در ØØ§Ù Ø§ÙØªØ¸Ø§Ø± Ø¨Ø±Ø§Û Ø¢ØºØ§Ø² ضبط از "
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
-#: SmartRecordDialog.cpp:362
-msgid "Audacity Smart Record - Waiting for Start"
-msgstr "ضبط ÙÙØ´Ù
ÙØ¯ Ø§ÙØ¯Ø§Ø³ÛØªÛ â Ø¯Ø± Ø§ÙØªØ¸Ø§Ø± آغاز"
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
-#: Tags.cpp:701
-#, c-format
-msgid "Maximum length of attribute '%s' is %d characters. Data was truncated."
-msgstr "ØØ¯Ø§Ú©Ø«Ø± Ø·ÙÙ Ù
شخصÙ٠«%sÂ»Ø %Id ÙÙÛØ³Ù است. Ø¯Ø§Ø¯Ù Ø¨ÙØ±Ûد٠شد."
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
-#: Tags.cpp:707 Tags.cpp:917
-msgid "Title"
-msgstr "عÙÙØ§Ù"
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
-#: Tags.cpp:717 Tags.cpp:927
-msgid "Artist"
-msgstr "ÙÙØ±Ù
ÙØ¯"
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
-#: Tags.cpp:727 Tags.cpp:937
-msgid "Album"
-msgstr "Ø¢ÙØ¨ÙÙ
"
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
-#: Tags.cpp:737 Tags.cpp:963
-msgid "Year"
-msgstr "Ø³Ø§Ù Ø§ÙØªØ´Ø§Ø±"
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
-#: Tags.cpp:747 Tags.cpp:996 prefs/MousePrefs.cpp:96
-msgid "Comments"
-msgstr "ØªÙØ¶ÛØØ§Øª"
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
-#: Tags.cpp:903
-msgid "ID3v1 (more compatible)"
-msgstr "ââID3 ÙØ³Ø®ÙÙ 1 (سازگارتر)"
+#: Screenshot.cpp:369 effects/Normalize.cpp:74 effects/Normalize.cpp:75
+msgid "false"
+msgstr ""
-#: Tags.cpp:904
-msgid "ID3v2 (more flexible)"
-msgstr "âID3 ÙØ³Ø®ÙÙ 2 (Ù
ÙØ¹Ø·ÙâØªØ±)"
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
-#: Tags.cpp:906
-msgid "Format"
-msgstr "ÙØ§Ùب"
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr "Ø§Ø¨Ø²Ø§Ø±ÙØ§"
+
+#: toolbars/ControlToolBar.cpp:82
+msgid "Control"
+msgstr "Ú©ÙØªØ±Ù"
+
+#: toolbars/MixerToolBar.cpp:58
+msgid "Mixer"
+msgstr "Ù
Ûکسر"
+
+#: toolbars/MeterToolBar.cpp:49
+msgid "Meter"
+msgstr "Ø§ÙØ¯Ø§Ø²ÙâÚ¯ÛØ±"
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
+#: toolbars/DeviceToolBar.cpp:54
+msgid "Device"
+msgstr "دستگاÙ"
+
+#: toolbars/TranscriptionToolBar.cpp:81
+msgid "Transcription"
+msgstr "Ø¢ÙØ§ÙÙÛØ³Û"
+
+#: TrackPanel.cpp:452 TrackPanel.cpp:453
+msgid "Track Panel"
+msgstr "تابÙÙÛ Ø´ÛØ§Ø±"
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: export/ExportMultiple.cpp:784
+msgid "Tracks"
+msgstr "Ø´ÛØ§Ø±Ùا"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
+#: Screenshot.cpp:599
+msgid "Saved "
+msgstr ""
+
+#: Screenshot.cpp:602
+msgid "Error trying to save file: "
+msgstr ""
+
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
+#: Sequence.cpp:799 Sequence.cpp:809 Sequence.cpp:816
+msgid "Gap detected in project file\n"
+msgstr ""
+
+#: effects/Effect.cpp:254 effects/Effect.cpp:370 effects/Phaser.cpp:595
+#: effects/Wahwah.cpp:582 effects/audiounits/AudioUnitEffect.cpp:852
+msgid "Pre&view"
+msgstr "Ù¾Û&Ø´âÙÙ
Ø§ÛØ´"
+
+#: effects/nyquist/Nyquist.cpp:826 effects/nyquist/Nyquist.cpp:990
+msgid "&Debug"
+msgstr "&اشکاÙâØ²Ø¯Ø§ÛÛ"
+
+#: SoundActivatedRecord.cpp:36
+msgid "Sound Activated Record"
+msgstr ""
+
+#: SoundActivatedRecord.cpp:58
+msgid "Activation level (dB):"
+msgstr ""
+
+#: SplashDialog.cpp:60
+msgid "&Welcome to Audacity!"
+msgstr ""
+
+#: SplashDialog.cpp:112
+msgid "Don't show this again at start up"
+msgstr ""
+
+#: Tags.cpp:629
+msgid "Artist Name"
+msgstr ""
+
+#: Tags.cpp:630
+msgid "Track Title"
+msgstr ""
+
+#: Tags.cpp:631
+msgid "Album Title"
+msgstr ""
#: Tags.cpp:953
msgid "Track Number"
msgstr "Ø´Ù
ارÙÙ Ø´ÛØ§Ø±"
+#: Tags.cpp:737 Tags.cpp:963
+msgid "Year"
+msgstr "Ø³Ø§Ù Ø§ÙØªØ´Ø§Ø±"
+
#: Tags.cpp:979
msgid "Genre"
msgstr "ÚØ§Ùر"
-#: Tags.cpp:1048
-msgid "&Fewer"
-msgstr "&Ú©Ù
تر"
+#: Tags.cpp:747 Tags.cpp:996 prefs/MousePrefs.cpp:96
+msgid "Comments"
+msgstr "ØªÙØ¶ÛØØ§Øª"
-#: Tags.cpp:1053
-msgid "&More"
-msgstr "&Ø¨ÛØ´ØªØ±"
+#: Tags.cpp:788
+msgid "Use arrow keys (or RETURN key after editing) to navigate fields."
+msgstr ""
-#: Tags.cpp:1060
-msgid "&Done"
-msgstr "&Ø°Ø®ÛØ±Ù"
+#: Tags.cpp:812
+msgid "Tag Name"
+msgstr ""
+
+#: Tags.cpp:813
+msgid "Tag Value"
+msgstr ""
+
+#: prefs/KeyConfigPrefs.cpp:114
+msgid "&Clear"
+msgstr "&پاک کردÙ"
+
+#: Tags.cpp:834
+msgid "Genres"
+msgstr ""
+
+#: Tags.cpp:838
+msgid "E&dit..."
+msgstr ""
+
+#: Tags.cpp:839
+msgid "Rese&t..."
+msgstr ""
#: Tags.cpp:1070
msgid "Template"
@@ -2823,115 +3422,179 @@ msgstr "&بار کردÙ..."
msgid "&Save..."
msgstr "&Ø°Ø®ÛØ±Ù کردÙ..."
-#: Tags.cpp:1085
-msgid "S&et default"
+#: Tags.cpp:851
+#, fuzzy
+msgid "S&et Default"
msgstr "تÙ&ظÛÙ
Ù¾ÛØ´âÙØ±Ø¶"
+#: Tags.cpp:1001
+msgid "Edit Genres"
+msgstr ""
+
+#: Tags.cpp:1034 Tags.cpp:1046 Tags.cpp:1061 Tags.cpp:1074
+msgid "Reset Genres"
+msgstr ""
+
+#: Tags.cpp:1034 Tags.cpp:1074
+msgid "Unable to save genre file."
+msgstr ""
+
+#: Tags.cpp:1045
+msgid "Are you sure you want to reset the genre list to defaults?"
+msgstr ""
+
+#: Tags.cpp:1061
+msgid "Unable to open genre file."
+msgstr ""
+
+#: Tags.cpp:1096
+msgid "Load Metadata As:"
+msgstr ""
+
+#: Tags.cpp:1121
+msgid "Error loading metadata"
+msgstr ""
+
+#: Tags.cpp:1150
+msgid "Save Metadata As:"
+msgstr ""
+
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
#: Theme.cpp:629
#, c-format
-msgid ""
-"Audacity could not write file:\n"
+msgid "Audacity could not write file:\n"
" %s."
-msgstr ""
-"Ø§ÙØ¯Ø§Ø³ÛØªÛ ÙØªÙØ§ÙØ³Øª اÛ٠پرÙÙØ¯Ù را بÙÙÛØ³Ø¯:\n"
+msgstr "Ø§ÙØ¯Ø§Ø³ÛØªÛ ÙØªÙØ§ÙØ³Øª اÛ٠پرÙÙØ¯Ù را بÙÙÛØ³Ø¯:\n"
" %s."
#: Theme.cpp:647
#, c-format
-msgid ""
-"Audacity could not open file:\n"
+msgid "Audacity could not open file:\n"
" %s\n"
"for writing."
-msgstr ""
-"Ø§ÙØ¯Ø§Ø³ÛØªÛ ÙØªÙØ§ÙØ³Øª اÛ٠پرÙÙØ¯Ù را Ø¨Ø±Ø§Û ÙÙØ´ØªÙ باز Ú©ÙØ¯:\n"
+msgstr "Ø§ÙØ¯Ø§Ø³ÛØªÛ ÙØªÙØ§ÙØ³Øª اÛ٠پرÙÙØ¯Ù را Ø¨Ø±Ø§Û ÙÙØ´ØªÙ باز Ú©ÙØ¯:\n"
" %s"
#: Theme.cpp:655
#, c-format
-msgid ""
-"Audacity could not write images to file:\n"
+msgid "Audacity could not write images to file:\n"
" %s."
-msgstr ""
-"Ø§ÙØ¯Ø§Ø³ÛØªÛ ÙØªÙØ§ÙØ³Øª تصاÙÛØ± را در اÛ٠پرÙÙØ¯Ù بÙÙÛØ³Ø¯:\n"
+msgstr "Ø§ÙØ¯Ø§Ø³ÛØªÛ ÙØªÙØ§ÙØ³Øª تصاÙÛØ± را در اÛ٠پرÙÙØ¯Ù بÙÙÛØ³Ø¯:\n"
" %s."
#: Theme.cpp:790
#, c-format
-msgid ""
-"Audacity could not find file:\n"
+msgid "Audacity could not find file:\n"
" %s.\n"
"Theme not loaded."
-msgstr ""
-"Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø§Û٠پرÙÙØ¯Ù را Ù¾ÛØ¯Ø§ Ùکرد:\n"
+msgstr "Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø§Û٠پرÙÙØ¯Ù را Ù¾ÛØ¯Ø§ Ùکرد:\n"
" %s.\n"
"تÙ
بار ÙØ´Ø¯."
#: Theme.cpp:798 Theme.cpp:886
#, c-format
-msgid ""
-"Audacity could not load file:\n"
+msgid "Audacity could not load file:\n"
" %s.\n"
"Bad png format perhaps?"
-msgstr ""
-"Ø§ÙØ¯Ø§Ø³ÛØªÛ ÙØªÙØ§ÙØ³Øª اÛ٠پرÙÙØ¯Ù را بار Ú©ÙØ¯:\n"
+msgstr "Ø§ÙØ¯Ø§Ø³ÛØªÛ ÙØªÙØ§ÙØ³Øª اÛ٠پرÙÙØ¯Ù را بار Ú©ÙØ¯:\n"
" %s.\n"
"Ø´Ø§ÛØ¯ پرÙÙØ¯ÙÙ PNG اشکا٠داردØ"
#: Theme.cpp:814
-msgid ""
-"Audacity could not read its default theme.\n"
+msgid "Audacity could not read its default theme.\n"
"Please report the problem."
-msgstr ""
-"Ø§ÙØ¯Ø§Ø³ÛØªÛ ÙØªÙØ§ÙØ³Øª تÙ
Ù¾ÛØ´âÙØ±Ø¶Ø´ را Ø¨Ø®ÙØ§Ùد.\n"
+msgstr "Ø§ÙØ¯Ø§Ø³ÛØªÛ ÙØªÙØ§ÙØ³Øª تÙ
Ù¾ÛØ´âÙØ±Ø¶Ø´ را Ø¨Ø®ÙØ§Ùد.\n"
"ÙØ·Ùا٠اÛÙ Ù
شک٠را گزارش Ú©ÙÛØ¯."
#: Theme.cpp:908
#, c-format
-msgid ""
-"None of the expected theme component files\n"
+msgid "None of the expected theme component files\n"
" were found in:\n"
" %s."
-msgstr ""
-"ÙÛÚ ÛÚ© از پرÙÙØ¯ÙâÙØ§Û Ø§Ø¬Ø²Ø§Û ØªÙ
در\n"
+msgstr "ÙÛÚ ÛÚ© از پرÙÙØ¯ÙâÙØ§Û Ø§Ø¬Ø²Ø§Û ØªÙ
در\n"
"اÛÙ ÙØ´Ø§ÙÛ Ù¾ÛØ¯Ø§ ÙØ´Ø¯Ùد:\n"
" %s."
#: Theme.cpp:932
#, c-format
-msgid ""
-"Could not create directory:\n"
+msgid "Could not create directory:\n"
" %s"
-msgstr ""
-"اÛÙ Ø´Ø§Ø®Ù Ø§ÛØ¬Ø§Ø¯ ÙØ´Ø¯:\n"
+msgstr "اÛÙ Ø´Ø§Ø®Ù Ø§ÛØ¬Ø§Ø¯ ÙØ´Ø¯:\n"
" %s"
#: Theme.cpp:953
#, c-format
-msgid ""
-"Audacity could not save file:\n"
+msgid "Audacity could not save file:\n"
" %s"
-msgstr ""
-"Ø§ÙØ¯Ø§Ø³ÛØªÛ ÙØªÙØ§ÙØ³Øª اÛ٠پرÙÙØ¯Ù را Ø°Ø®ÛØ±Ù Ú©ÙØ¯:\n"
+msgstr "Ø§ÙØ¯Ø§Ø³ÛØªÛ ÙØªÙØ§ÙØ³Øª اÛ٠پرÙÙØ¯Ù را Ø°Ø®ÛØ±Ù Ú©ÙØ¯:\n"
" %s"
#: Theme.cpp:965
#, c-format
-msgid ""
-"All required files in:\n"
+msgid "All required files in:\n"
" %s\n"
"were already present."
-msgstr ""
-"ÙÙ
Ù٠پرÙÙØ¯ÙâÙØ§Û ÙØ§Ø²Ù
در:\n"
+msgstr "ÙÙ
Ù٠پرÙÙØ¯ÙâÙØ§Û ÙØ§Ø²Ù
در:\n"
" %s\n"
"از ÙØ¨Ù Ù
ÙØ¬Ùد ÙØ³ØªÙد."
-#: TimeDialog.cpp:53
-msgid "Specify Time"
-msgstr "تعÛÛ٠زÙ
اÙ"
+#: SmartRecordDialog.cpp:285
+msgid "Duration"
+msgstr "Ù
دت زÙ
اÙ"
-#: TrackPanel.cpp:452 TrackPanel.cpp:453
-msgid "Track Panel"
-msgstr "تابÙÙÛ Ø´ÛØ§Ø±"
+#: SmartRecordDialog.cpp:68
+msgid "Audacity Timer Record"
+msgstr "ضبط زÙ
اÙâØ¨ÙØ¯Û شدÙÙ Ø§ÙØ¯Ø§Ø³ÛتÛ"
+
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
+#: TimerRecordDialog.cpp:233
+msgid "Recording start"
+msgstr ""
+
+#: TimerRecordDialog.cpp:234
+msgid "Recording end"
+msgstr ""
+
+#: TimerRecordDialog.cpp:239
+msgid "Audacity Timer Record Progress"
+msgstr ""
+
+#: SmartRecordDialog.cpp:251
+msgid "Start Date and Time"
+msgstr "ØªØ§Ø±ÛØ® ٠زÙ
ا٠آغاز"
+
+#: TimerRecordDialog.cpp:336
+msgid "Start Date"
+msgstr ""
+
+#: SmartRecordDialog.cpp:268
+msgid "End Date and Time"
+msgstr "ØªØ§Ø±ÛØ® ٠زÙ
Ø§Ù Ù¾Ø§ÛØ§Ù"
+
+#: TimerRecordDialog.cpp:356
+msgid "End Date"
+msgstr ""
+
+#. i18n-hint: A time specification like "Sunday 28th October 2007 15:16:17 GMT"
+#. * but hopefully translated by wxwidgets will be inserted into this
+#: TimerRecordDialog.cpp:443
+#, c-format
+msgid "Waiting to start recording at %s.\n"
+msgstr ""
+
+#: TimerRecordDialog.cpp:444
+msgid "Audacity Timer Record - Waiting for Start"
+msgstr ""
#: TrackPanel.cpp:496 prefs/FileFormatPrefs.cpp:111 prefs/QualityPrefs.cpp:97
msgid "Other..."
@@ -2957,6 +3620,10 @@ msgstr "Ø´Ú©Ù Ù
ÙØ¬"
msgid "Waveform (dB)"
msgstr "Ø´Ú©Ù Ù
ÙØ¬ (دسÛâØ¨Ù)"
+#: TrackPanel.cpp:613 prefs/TracksPrefs.cpp:59
+msgid "Spectrum log(f)"
+msgstr ""
+
#: TrackPanel.cpp:512
msgid "Pitch (EAC)"
msgstr "Ú©ÙÚ© (EAC)"
@@ -2981,6 +3648,10 @@ msgstr "ساخت Ø´ÛØ§Ø± استرÛÙ"
msgid "Split Stereo Track"
msgstr "تÙÚ©ÛÚ© Ø´ÛØ§Ø± استرÛÙ"
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr ""
+
#: TrackPanel.cpp:520
msgid "Set Sample Format"
msgstr "ØªÙØ¸ÛÙ
ÙØ§Ùب ÙÙ
ÙÙÙ"
@@ -3010,9 +3681,7 @@ msgid "Copy"
msgstr "ÙØ³Ø®ÙâØ¨Ø±Ø¯Ø§Ø±Û"
#: TrackPanel.cpp:1239
-msgid ""
-"Click to vertically zoom in, Shift-click to zoom out, Drag to create a "
-"particular zoom region."
+msgid "Click to vertically zoom in, Shift-click to zoom out, Drag to create a particular zoom region."
msgstr "Ø¨Ø±Ø§Û Ø²ÙÙ
ب٠داخ٠عÙ
ÙØ¯Û Ú©ÙÛÚ©Ø Ø¨Ø±Ø§Û Ø²ÙÙ
ب٠خارج تبدÛÙ-Ú©ÙÛÚ© Ú©ÙÛØ¯ Ù Ø¨Ø±Ø§Û Ø§ÛØ¬Ø§Ø¯ Ù
ØØ¯ÙدÙ٠زÙÙ
خاص Ú©ÙÛØ¯ Ù
ÙØ´Û را ÙÚ¯Ù Ø¯Ø§Ø±ÛØ¯ Ù Ù
ÙØ´Û را ØØ±Ú©Øª دÙÛØ¯."
#: TrackPanel.cpp:1244
@@ -3087,23 +3756,20 @@ msgstr "راست"
#: TrackPanel.cpp:2039
#, c-format
msgid "Time shifted tracks/clips %s %.02f seconds"
-msgstr
-"Ø¨Ø±ÛØ¯ÙâÙØ§/Ø´ÛØ§Ø±ÙØ§Û %s ک٠زÙ
ا٠آÙÙØ§ Ø¨Ù Ø§ÙØ¯Ø§Ø²ÙÙ %I.02f ثاÙÛ٠ب٠جابÙâØ¬Ø§ شد٠است"
+msgstr "Ø¨Ø±ÛØ¯ÙâÙØ§/Ø´ÛØ§Ø±ÙØ§Û %s ک٠زÙ
ا٠آÙÙØ§ Ø¨Ù Ø§ÙØ¯Ø§Ø²ÙÙ %I.02f ثاÙÛ٠ب٠جابÙâØ¬Ø§ شد٠است"
#: TrackPanel.cpp:2043 prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:108
#: prefs/MousePrefs.cpp:109
msgid "Time-Shift"
msgstr "جابÙâØ¬Ø§ÛÛ Ø²Ù
اÙÛ"
-#: TrackPanel.cpp:2696
-msgid "Draw currently only works with linear-view waveforms."
-msgstr "رسÙ
در ØØ§Ù ØØ§Ø¶Ø± ÙÙØ· با Ù
ÙØ¬âØ´Ú©ÙÛâÙØ§ÛÛ Ø¨Ø§ ÙÙ
Ø§Û Ø®Ø·Û Ú©Ø§Ø± Ù
ÛâÚ©ÙØ¯."
+#: TrackPanel.cpp:2966
+msgid "To use Draw, choose 'Waveform' in the Track Drop-down Menu."
+msgstr ""
-#: TrackPanel.cpp:2713
-msgid ""
-"You are not zoomed in enough. Zoom in until you can see the individual "
-"samples."
-msgstr "Ø¨Ù Ø§ÙØ¯Ø§Ø²Ù٠کاÙÛ Ø²ÙÙ
ÙکردÙâØ§ÛØ¯. Ø¢ÙâÙØ¯Ø± زÙÙ
Ú©ÙÛØ¯ Ú©Ù ØªÚ©âØªÚ© ÙÙ
ÙÙÙâÙØ§ را ببÛÙÛØ¯."
+#: TrackPanel.cpp:2983
+msgid "To use Draw, zoom in further until you can see the individual samples."
+msgstr ""
#: TrackPanel.cpp:2984
msgid "Moved Sample"
@@ -3151,8 +3817,7 @@ msgstr "پاÛÛÙ"
#: TrackPanel.cpp:3362 TrackPanel.cpp:5878
#, c-format
msgid "Moved '%s' %s"
-msgstr
-"«%s» ب٠%s جابÙâØ¬Ø§ شد"
+msgstr "«%s» ب٠%s جابÙâØ¬Ø§ شد"
#: TrackPanel.cpp:3365 TrackPanel.cpp:5884
msgid "Move Track"
@@ -3166,6 +3831,14 @@ msgstr "گسترش"
msgid "Expanded Cut Line"
msgstr "خط برش گسترشâÛØ§ÙتÙ"
+#: TrackPanel.cpp:4260
+msgid "Merge"
+msgstr ""
+
+#: TrackPanel.cpp:4260
+msgid "Merged Clips"
+msgstr ""
+
#: TrackPanel.cpp:3925
msgid "Removed Cut Line"
msgstr "خط برش ØØ°ÙâØ´Ø¯Ù"
@@ -3212,6 +3885,11 @@ msgstr "Ú©Ø§ÙØ§Ù"
msgid "Split stereo track '%s'"
msgstr "تÙÚ©ÛÚ© Ø´ÛØ§Ø± استرÛÙÛ Â«%s»"
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
#: TrackPanel.cpp:5648
#, c-format
msgid "Made '%s' a stereo track"
@@ -3234,14 +3912,6 @@ msgstr "تغÛÛØ± ÙØ±Ø®"
msgid "Format Change"
msgstr "تغÛÛØ± ÙØ§Ùب"
-#: TrackPanel.cpp:5816
-msgid "Enter a sample rate in Hz (per second) between 1 and 100000:"
-msgstr "ÙØ±Ø® ÙÙ
ÙÙÙâØ¨Ø±Ø¯Ø§Ø±Û Ø¨Ù ÙØ±ØªØ² (در ثاÙÛÙ) بÛÙ Û± تا Û±Û°Û°Û°Û°Û° ÙØ§Ø±Ø¯ Ú©ÙÛØ¯:"
-
-#: TrackPanel.cpp:5826
-msgid "Invalid rate."
-msgstr "ÙØ±Ø® ÙØ§Ù
عتبر."
-
#: TrackPanel.cpp:5846
msgid "Change lower speed limit (%) to:"
msgstr "تغÛÛØ± ØØ¯ پاÛÛ٠سرعت (Ùª) بÙ:"
@@ -3284,14 +3954,22 @@ msgstr "ÙØ§Ù
«%s» ب٠«%s» تغÛÛØ± کرد"
msgid "Name Change"
msgstr "تغÛÛØ± ÙØ§Ù
"
-#: TrackPanel.cpp:5980
-msgid "Choose a font for Label Tracks"
-msgstr "ÙÙÙ
Û Ø¨Ø±Ø§Û Ø¨Ø±ÚØ³Ø¨ Ø´ÛØ§Ø±Ùا Ø§ÙØªØ®Ø§Ø¨ Ú©ÙÛØ¯"
-
#: TrackPanel.cpp:5981
msgid "Label Track Font"
msgstr "ÙÙÙ
Ø¨Ø±ÚØ³Ø¨ Ø´ÛØ§Ø±"
+#: TrackPanel.cpp:6675 TrackPanel.cpp:6681
+msgid "Face name"
+msgstr ""
+
+#: TrackPanel.cpp:6685 TrackPanel.cpp:6692
+msgid "Face size"
+msgstr ""
+
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr ""
+
#: TrackPanel.cpp:6421
msgid "Mute"
msgstr "بÛâØµØ¯Ø§"
@@ -3336,17 +4014,17 @@ msgstr "ÙØªÛجÙÙ ØªÙØ¸ÛÙ
ات\n"
#: VoiceKey.cpp:844
#, c-format
msgid "Energy -- mean: %1.4f sd: (%1.4f)\n"
-msgstr "Ø§ÙØ±ÚÛ -- Ù
ÛØ§ÙÚ¯ÛÙ : %I1.4f Ø§ÙØØ±Ø§Ù Ù
Ø¹ÛØ§Ø±: )%I1.4f)\n"
+msgstr "Ø§ÙØ±ÚÛ\t\t\t-- Ù
ÛØ§ÙÚ¯ÛÙ : %I1.4f\tØ§ÙØØ±Ø§Ù Ù
Ø¹ÛØ§Ø±: )%I1.4f)\n"
#: VoiceKey.cpp:845
#, c-format
msgid "Sign Changes -- mean: %1.4f sd: (%1.4f)\n"
-msgstr "تغÛÛØ± Ø¹ÙØ§Ù
ت -- Ù
ÛØ§ÙÚ¯ÛÙ: %I1.4f Ø§ÙØØ±Ø§Ù Ù
Ø¹ÛØ§Ø±: (%I1.4f)\n"
+msgstr "تغÛÛØ± Ø¹ÙØ§Ù
ت\t-- Ù
ÛØ§ÙÚ¯ÛÙ: %I1.4f\tØ§ÙØØ±Ø§Ù Ù
Ø¹ÛØ§Ø±: (%I1.4f)\n"
#: VoiceKey.cpp:846
#, c-format
msgid "Direction Changes -- mean: %1.4f sd: (%1.4f)\n"
-msgstr "تغÛÛØ± Ø¬ÙØª -- Ù
ÛØ§ÙÚ¯ÛÙ: %I1.4f Ø§ÙØØ±Ø§Ù Ù
Ø¹ÛØ§Ø±: (%I1.4f)\n"
+msgstr "تغÛÛØ± Ø¬ÙØª\t-- Ù
ÛØ§ÙÚ¯ÛÙ: %I1.4f\tØ§ÙØØ±Ø§Ù Ù
Ø¹ÛØ§Ø±: (%I1.4f)\n"
#: WaveTrack.cpp:72
msgid "Audio Track"
@@ -3370,6 +4048,34 @@ msgstr "Ù
تصÙâØ´ÙÙØ¯ÙâÙØ§Û Û± تا %Ii"
msgid "Plugins %i to %i"
msgstr "Ù
تصÙâØ´ÙÙØ¯ÙâÙØ§Û %Ii تا %Ii"
+#: commands/CommandManager.cpp:923
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
+msgstr ""
+
+#: commands/CommandManager.cpp:927
+msgid "You can only do this when playing and recording are\n"
+" stopped. [Pausing is not sufficient.]"
+msgstr ""
+
+#: commands/CommandManager.cpp:929
+msgid "You must first select some stereo audio for this\n"
+" to use. [You can't use this with mono.]"
+msgstr ""
+
+#: commands/CommandManager.cpp:931
+msgid "You must first select some audio for this to use."
+msgstr ""
+
+#: commands/CommandManager.cpp:933
+msgid "You must first select some audio for this\n"
+" to use. [Selecting other kinds of track won't work.]"
+msgstr ""
+
+#: commands/CommandManager.cpp:938
+msgid "Disallowed"
+msgstr ""
+
#: commands/CommandManager.cpp:854
#, c-format
msgid "Loaded %d keyboard shortcuts\n"
@@ -3388,14 +4094,19 @@ msgstr "جÙÙÙ٠اعÙ
ا٠شدÙ: %s %I.1f دسÛâØ¨Ù"
msgid "Amplify"
msgstr "تÙÙÛØª"
-#: effects/Amplify.cpp:153
-msgid "Amplify by Dominic Mazzoni"
-msgstr "تÙÙÛØªâÚ©ÙÙØ¯Ù ÙÙØ´ØªÙ٠دÙÙ
ÛÙÛÚ© Ù
ازÙÙÛ"
+#: effects/Amplify.cpp:156 effects/Compressor.cpp:487
+#: effects/Normalize.cpp:341
+msgid "by Dominic Mazzoni"
+msgstr ""
#: effects/Amplify.cpp:160
msgid "Amplification (dB):"
msgstr "Ù
ÛØ²Ø§Ù تÙÙÛØª (دسÛâØ¨Ù):"
+#: effects/Amplify.cpp:184
+msgid "Amplification dB"
+msgstr ""
+
#: effects/Amplify.cpp:180
msgid "New Peak Amplitude (dB):"
msgstr "Ø¨ÛØ´ÛÙ٠داÙ
ÙÙÙ Ø¬Ø¯ÛØ¯ (دسÛâØ¨Ù) :"
@@ -3404,6 +4115,10 @@ msgstr "Ø¨ÛØ´ÛÙ٠داÙ
ÙÙÙ Ø¬Ø¯ÛØ¯ (دسÛâØ¨Ù) :"
msgid "Allow clipping"
msgstr "اجازÙ٠برش"
+#: effects/Amplify.cpp:223 effects/Amplify.cpp:280 effects/Amplify.cpp:324
+msgid "-Infinity"
+msgstr ""
+
#: effects/Amplify.h:46
msgid "Amplify..."
msgstr "تÙÙÛØª..."
@@ -3413,11 +4128,8 @@ msgid "Amplifying"
msgstr "در ØØ§Ù تÙÙÛØª"
#: effects/AutoDuck.cpp:125
-msgid ""
-"You selected a track which does not contain audio. AutoDuck can only process "
-"audio tracks."
-msgstr "Ø´Ù
ا Ø´ÛØ§Ø±Û را Ø§ÙØªØ®Ø§Ø¨ کردÙâØ§ÛØ¯ Ú©Ù ØØ§ÙÛ ØµÙØª ÙÛØ³Øª. Ù
Ø®ÙÛâØ³Ø§Ø²Û Ø®ÙØ¯Ú©Ø§Ø± ÙÙØ· Ù
ÛâØªÙØ§Ùد "
-"Ø´ÛØ§Ø±ÙØ§Û ØµÙØªÛ را پردازش Ú©ÙØ¯."
+msgid "You selected a track which does not contain audio. AutoDuck can only process audio tracks."
+msgstr "Ø´Ù
ا Ø´ÛØ§Ø±Û را Ø§ÙØªØ®Ø§Ø¨ کردÙâØ§ÛØ¯ Ú©Ù ØØ§ÙÛ ØµÙØª ÙÛØ³Øª. Ù
Ø®ÙÛâØ³Ø§Ø²Û Ø®ÙØ¯Ú©Ø§Ø± ÙÙØ· Ù
ÛâØªÙØ§Ùد Ø´ÛØ§Ø±ÙØ§Û ØµÙØªÛ را پردازش Ú©ÙØ¯."
#: effects/AutoDuck.cpp:126 effects/AutoDuck.cpp:138 effects/AutoDuck.cpp:451
#: effects/AutoDuck.cpp:578
@@ -3425,9 +4137,7 @@ msgid "Auto Duck"
msgstr "Ù
Ø®ÙÛâØ³Ø§Ø²Û Ø®ÙØ¯Ú©Ø§Ø±"
#: effects/AutoDuck.cpp:137
-msgid ""
-"Auto Duck needs a control track which must be placed below the selected track"
-"(s)."
+msgid "Auto Duck needs a control track which must be placed below the selected track(s)."
msgstr "Ù
Ø®ÙÛâØ³Ø§Ø²Û Ø®ÙØ¯Ú©Ø§Ø± ب٠ÛÚ© Ø´ÛØ§Ø± Ú©ÙØªØ±ÙÛ ÙÛØ§Ø² دارد Ú©Ù Ø¨Ø§ÛØ¯ Ø²ÛØ± Ø´ÛØ§Ø± Ø§ÙØªØ®Ø§Ø¨âØ´Ø¯Ù ÙØ±Ø§Ø± Ø¯Ø§Ø¯Ù Ø´ÙØ¯."
#: effects/AutoDuck.cpp:463
@@ -3486,14 +4196,21 @@ msgstr "Ù
Ø®ÙÛâØ³Ø§Ø²Û Ø®ÙØ¯Ú©Ø§Ø±..."
msgid "Processing Auto Duck..."
msgstr "در ØØ§Ù پردازش Ù
Ø®ÙÛâØ³Ø§Ø²Û Ø®ÙØ¯Ú©Ø§Ø±..."
+#: LangChoice.cpp:103 effects/AvcCompressor.cpp:738
+#: effects/TruncSilence.cpp:281 effects/VST/VSTEffect.cpp:454
+#: effects/audiounits/AudioUnitEffect.cpp:857 effects/nyquist/Nyquist.cpp:993
+#: effects/nyquist/Nyquist.cpp:1059 widgets/Warning.cpp:67
+msgid "OK"
+msgstr "تأÛÛØ¯"
+
#: effects/BassBoost.cpp:52
#, c-format
msgid "Applied effect: %s frequency = %.0f Hz, boost = %.0f dB"
msgstr "جÙÙÙâÙØ§Û اعÙ
اÙâØ´Ø¯Ù: %s ÙØ±Ú©Ø§Ùس = %I.0f ÙØ±ØªØ²Ø تÙÙÛØª = %I.0f دسÛâØ¨Ù"
#: effects/BassBoost.cpp:169
-msgid "BassBoost"
-msgstr "تÙÙÛØª باس"
+msgid "Bass Boost"
+msgstr ""
#: effects/BassBoost.cpp:182
msgid "by Nasca Octavian Paul"
@@ -3503,10 +4220,18 @@ msgstr "ÙÙØ´ØªÙÙ ÙØ§Ø³Ú©Ø§ اÙکتاÙÛ٠پاÙÙ"
msgid "Frequency (Hz):"
msgstr "بساÙ
د (ÙØ±ØªØ²):"
+#: effects/BassBoost.cpp:205
+msgid "Frequency Hertz"
+msgstr ""
+
#: effects/BassBoost.cpp:208
msgid "Boost (dB):"
msgstr "تÙÙÛØª (دسÛâØ¨Ù):"
+#: effects/BassBoost.cpp:218
+msgid "Boost dB"
+msgstr ""
+
#: effects/BassBoost.h:35
msgid "BassBoost..."
msgstr "تÙÙÛØª بساÙ
Ø¯ÙØ§Û بÙ
"
@@ -3545,9 +4270,50 @@ msgstr "ÙÙØ´ØªÙÙ ÙÚ¯Ø§Ù Ø¬Ø§ÙØ³Ù٠٠دÙÙ
ÛÙÛÚ© Ù
ازÙÙÛ"
msgid "using SoundTouch, by Olli Parviainen"
msgstr "با Ø§Ø³ØªÙØ§Ø¯Ù از SoundTouchØ ÙÙØ´ØªÙ٠اÙÙÛ Ù¾Ø§Ø±ÙÛØ§ÛÙÙ"
-#: effects/ChangePitch.cpp:268
-msgid "Pitch: from"
-msgstr "Ú©ÙÚ©: از"
+#: effects/ChangePitch.cpp:269
+msgid "Pitch:"
+msgstr ""
+
+#: effects/ChangePitch.cpp:274
+msgid "From:"
+msgstr ""
+
+#: effects/ChangePitch.cpp:275
+msgid "From Pitch"
+msgstr ""
+
+#: effects/ChangePitch.cpp:286
+msgid "Up"
+msgstr ""
+
+#: effects/ChangePitch.cpp:289
+msgid "Down"
+msgstr ""
+
+#: effects/ChangePitch.cpp:299
+msgid "To:"
+msgstr ""
+
+#: effects/ChangePitch.cpp:300
+msgid "To Pitch"
+msgstr ""
+
+#: effects/ChangePitch.cpp:305
+msgid "Semitones (half-steps):"
+msgstr "ÙÛÙ
âپردÙ:"
+
+#: effects/ChangePitch.cpp:316
+msgid "Semitones in half-steps"
+msgstr ""
+
+#: effects/ChangePitch.cpp:326 effects/ChangeSpeed.cpp:370
+#: effects/ChangeTempo.cpp:209 effects/ChangeTempo.cpp:222
+msgid "from"
+msgstr ""
+
+#: effects/ChangePitch.cpp:327
+msgid "From frequency in hertz"
+msgstr ""
#: effects/ChangePitch.cpp:290 effects/ChangePitch.cpp:336
#: effects/ChangeSpeed.cpp:369 effects/ChangeTempo.cpp:240
@@ -3555,19 +4321,20 @@ msgstr "Ú©ÙÚ©: از"
msgid "to"
msgstr "تا"
-#: effects/ChangePitch.cpp:305
-msgid "Semitones (half-steps):"
-msgstr "ÙÛÙ
âپردÙ:"
-
-#: effects/ChangePitch.cpp:324
-msgid "Frequency (Hz): from"
-msgstr "بساÙ
د (ÙØ±ØªØ²): از"
+#: effects/ChangePitch.cpp:332
+msgid "To frequency in seconds"
+msgstr ""
#: effects/ChangePitch.cpp:359 effects/ChangeSpeed.cpp:323
#: effects/ChangeTempo.cpp:199
msgid "Percent Change:"
msgstr "تغÛÛØ± درصد:"
+#: effects/ChangePitch.cpp:343 effects/ChangePitch.cpp:356
+#: effects/ChangeSpeed.cpp:359 effects/ChangeTempo.cpp:198
+msgid "Percent Change"
+msgstr ""
+
#: effects/ChangePitch.h:31
msgid "Change Pitch..."
msgstr "تغÛÛØ± Ú©ÙÚ©..."
@@ -3585,6 +4352,14 @@ msgstr "جÙÙÙâÙØ§Û اعÙ
اÙâØ´Ø¯Ù: %s %I.1f%%"
msgid "Change Speed"
msgstr "ØªØºÛØ± سرعت"
+#. i18n-hint: n/a is an English
+#. abbreviation meaning "not
+#. applicable" (in other words,
+#. unimportant, not relevant).
+#: effects/ChangeSpeed.cpp:356
+msgid "n/a"
+msgstr "Ù
Ø±Ø¨ÙØ· ÙÛØ³Øª"
+
#: effects/ChangeSpeed.cpp:300
msgid "Change Speed, affecting both Tempo and Pitch"
msgstr "تغÛÛØ± Ø³Ø±Ø¹ØªØ Ú©Ù Ø±ÙÛ Ø¶Ø±Ø¨Ø§ÙÙÚ¯ Ù Ú©ÙÚ© ØªØ£Ø«ÛØ± Ù
Ûâگذارد"
@@ -3593,17 +4368,17 @@ msgstr "تغÛÛØ± Ø³Ø±Ø¹ØªØ Ú©Ù Ø±ÙÛ Ø¶Ø±Ø¨Ø§ÙÙÚ¯ Ù Ú©ÙÚ© ØªØ£Ø«ÛØ± Ù
msgid "using SampleRate, by Erik de Castro Lopo"
msgstr "با Ø§Ø³ØªÙØ§Ø¯Ù از SampleRateØ ÙÙØ´ØªÙ٠ارÛÚ© دکاستر٠ÙÙÙ¾Ù"
-#. i18n-hint: n/a is an English
-#. abbreviation meaning "not
-#. applicable" (in other words,
-#. unimportant, not relevant).
-#: effects/ChangeSpeed.cpp:356
-msgid "n/a"
-msgstr "Ù
Ø±Ø¨ÙØ· ÙÛØ³Øª"
+#: effects/ChangeSpeed.cpp:367
+msgid "Standard Vinyl RPM:"
+msgstr ""
-#: effects/ChangeSpeed.cpp:359
-msgid "Standard Vinyl RPM: from"
-msgstr "Ø¯ÙØ±-در-ثاÙÛÙÙ Ø§Ø³ØªØ§ÙØ¯Ø§Ø±Ø¯ ØµÙØØ§Øª گراÙ
اÙÙÙ: از"
+#: effects/ChangeSpeed.cpp:371
+msgid "From RPM"
+msgstr ""
+
+#: effects/ChangeSpeed.cpp:376
+msgid "To RPM"
+msgstr ""
#: effects/ChangeSpeed.h:32
msgid "Change Speed..."
@@ -3621,13 +4396,29 @@ msgstr "تغÛÛØ± ضرباÙÙÚ¯"
msgid "Change Tempo without Changing Pitch"
msgstr "تغÛÛØ± ضرباÙÙÚ¯ بدÙ٠تغÛÛØ± کرد٠کÙÚ©"
-#: effects/ChangeTempo.cpp:228
-msgid "Beats per Minute (BPM): from"
-msgstr "ضرب در دÙÛÙÙ (BPM): از"
+#: effects/ChangeTempo.cpp:206
+msgid "Beats per minute:"
+msgstr ""
+
+#: effects/ChangeTempo.cpp:210
+msgid "From beats per minute"
+msgstr ""
+
+#: effects/ChangeTempo.cpp:215
+msgid "To beats per minute"
+msgstr ""
+
+#: effects/ChangeTempo.cpp:219
+msgid "Length (seconds):"
+msgstr ""
+
+#: effects/ChangeTempo.cpp:223
+msgid "From length in seconds"
+msgstr ""
-#: effects/ChangeTempo.cpp:258
-msgid "Length (seconds): from"
-msgstr "Ø·ÙÙ (ثاÙÛÙ): از"
+#: effects/ChangeTempo.cpp:228
+msgid "To length in seconds"
+msgstr ""
#: effects/ChangeTempo.h:35
msgid "Change Tempo..."
@@ -3637,46 +4428,29 @@ msgstr "تغÛÛØ± ضرباÙÙÚ¯..."
msgid "Changing Tempo"
msgstr "در ØØ§Ù تغÛÛØ± داد٠ضرباÙÙÚ¯"
-#: effects/ClickRemoval.cpp:104
-msgid "Click and Pop Removal"
-msgstr "ØØ°Ù ت٠٠تÙÙ"
+#: effects/ClickRemoval.cpp:314
+msgid "Click Removal"
+msgstr ""
#: effects/ClickRemoval.cpp:359
msgid "Click and Pop Removal by Craig DeForest"
msgstr "ØØ°Ù ت٠٠تÙÙ ÙÙØ´ØªÙ٠کرÛÚ¯ دÛâÙØ§Ø±Ø³Øª"
-#: effects/ClickRemoval.cpp:365
-msgid "Settings"
-msgstr "ØªÙØ¸ÛÙ
ات"
-
-#: effects/ClickRemoval.cpp:368
-msgid ""
-"\n"
-"Select threshold (lower is more sensitive)"
-msgstr "\n"
-"آستاÙ٠را Ø§ÙØªØ®Ø§Ø¨ Ú©ÙÛØ¯ (پاÛÛÙâØªØ± ب٠Ù
Ø¹ÙØ§Û ØØ³Ø§Ø³ Ø¨ÛØ´ØªØ± است)"
-
-#: effects/ClickRemoval.cpp:379 effects/ClickRemoval.cpp:408
-msgid "Medium"
-msgstr "Ù
ØªÙØ³Ø·"
+#: effects/ClickRemoval.cpp:341
+msgid "Select threshold (lower is more sensitive):"
+msgstr ""
-#: effects/ClickRemoval.cpp:382 effects/ClickRemoval.cpp:411
-msgid "Max"
-msgstr "ØØ¯Ø§Ú©Ø«Ø±"
+#: effects/ClickRemoval.cpp:350
+msgid "Select threshold"
+msgstr ""
-#: effects/ClickRemoval.cpp:389
-msgid ""
-"\n"
-"\n"
-"Max spike width (higher is more sensitive)"
+#: effects/ClickRemoval.cpp:358
+msgid "Max spike width (higher is more sensitive):"
msgstr ""
-"\n"
-"\n"
-"ØØ¯Ø§Ú©Ø«Ø± Ù¾ÙÙØ§Û ÙÙÙÙ ØªÛØ² Ù
ÙØ¬ (Ù
ÙØ¯Ø§Ø± بزرگتر Ù
شخصâÚ©ÙÙØ¯ÙÙ ØØ³Ø§Ø³Ûت Ø¨ÛØ´ØªØ± است)"
-#: effects/ClickRemoval.cpp:422
-msgid "&Remove clicks"
-msgstr "ØØ°Ù &تÙâÙØ§"
+#: effects/ClickRemoval.cpp:367
+msgid "Max spike width"
+msgstr ""
#: effects/ClickRemoval.h:42
msgid "Click Removal..."
@@ -3690,42 +4464,86 @@ msgstr "در ØØ§Ù ØØ°Ù ت٠٠تÙÙ..."
msgid "Dynamic Range Compressor"
msgstr "ÙØ´Ø±Ø¯ÙâØ³Ø§Ø² با داÙ
ÙÙÙ Ù¾ÙÛØ§"
-#: effects/Compressor.cpp:468
-msgid "Dynamic Range Compressor by Dominic Mazzoni"
-msgstr "ÙØ´Ø±Ø¯ÙâØ³Ø§Ø² با داÙ
ÙÙÙ Ù¾ÙÛØ§ ÙÙØ´ØªÙ٠دÙÙ
ÛÙÛÚ© Ù
ازÙÙÛ"
+#: effects/Compressor.cpp:510
+msgid "Threshold"
+msgstr ""
+
+#: effects/Compressor.cpp:514
+msgid "Ratio:"
+msgstr ""
-#: effects/Compressor.cpp:486
-msgid "Ratio: "
-msgstr "ÙØ³Ø¨Øª: "
+#: effects/Compressor.cpp:518
+msgid "Ratio"
+msgstr ""
-#: effects/Compressor.cpp:493
-msgid "Attack Time: "
+#: effects/Compressor.cpp:522
+#, fuzzy
+msgid "Attack Time:"
msgstr "زÙ
ا٠ØÙ
ÙÙ: "
-#: effects/Compressor.cpp:504
-msgid "Normalize to 0dB after compressing"
-msgstr "ÙØ±Ù
اÙâØ³Ø§Ø²Û Ø¨Ù ØµÙØ± دسÛâØ¨Ù Ù¾Ø³ از ÙØ´Ø±Ø¯ÙâØ³Ø§Ø²Û"
+#: effects/Compressor.cpp:526
+msgid "Attack Time"
+msgstr ""
+
+#: effects/Compressor.cpp:530
+msgid "Decay Time:"
+msgstr ""
+
+#: effects/Compressor.cpp:534
+msgid "Decay Time"
+msgstr ""
+
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
+msgstr ""
-#: effects/Compressor.cpp:559
+#: effects/Compressor.cpp:575
#, c-format
-msgid "Threshold: %d dB"
+#, fuzzy
+msgid "Threshold %d dB"
msgstr "آستاÙÙ: %Id دسÛâØ¨Ù"
-#: effects/Compressor.cpp:562
+#: effects/Compressor.cpp:576
#, c-format
-msgid "Ratio: %.0f:1"
-msgstr "ÙØ³Ø¨Øª: %I.0f:Û±"
+msgid "%3d dB"
+msgstr ""
+
+#: effects/Compressor.cpp:579
+#, c-format
+msgid "Ratio %.0f to 1"
+msgstr ""
+
+#: effects/Compressor.cpp:580
+#, c-format
+msgid "%.0f:1"
+msgstr ""
+
+#: effects/Compressor.cpp:583
+#, c-format
+msgid "Ratio %.1f to 1"
+msgstr ""
-#: effects/Compressor.cpp:564
+#: effects/Compressor.cpp:584
#, c-format
-msgid "Ratio: %.1f:1"
-msgstr "ÙØ³Ø¨Øª: %I.1f:Û±"
+msgid "%.1f:1"
+msgstr ""
-#: effects/Compressor.cpp:566
+#: effects/Compressor.cpp:587
#, c-format
-msgid "Attack Time: %.1f secs"
+#, fuzzy
+msgid "Attack Time %.1f secs"
msgstr "زÙ
ا٠ØÙ
ÙÙ: %I.1f ثاÙÛÙ"
+#: effects/Compressor.cpp:588 effects/Compressor.cpp:591
+#, c-format
+msgid "%.1f secs"
+msgstr ""
+
+#: effects/Compressor.cpp:590
+#, c-format
+msgid "Decay Time %.1f secs"
+msgstr ""
+
#: effects/Compressor.h:36
msgid "Compressor..."
msgstr "ÙØ´Ø±Ø¯ÙâØ³Ø§Ø²..."
@@ -3734,6 +4552,223 @@ msgstr "ÙØ´Ø±Ø¯ÙâØ³Ø§Ø²..."
msgid "Applying Dynamic Range Compression..."
msgstr "اعÙ
Ø§Ù ÙØ´Ø±Ø¯ÙâØ³Ø§Ø²Û Ø¨Ø§ داÙ
ÙÙÙ Ù¾ÙÛØ§..."
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
+#: effects/Contrast.cpp:88
+msgid "Contrast Tool Foreground"
+msgstr ""
+
+#: effects/Contrast.cpp:88
+msgid "Foreground times selected.\n"
+"Now select background and use Ctrl+Shift+T or menu again."
+msgstr ""
+
+#: effects/Contrast.cpp:144
+msgid "Start time after after end time!\n"
+"Please enter reasonable times."
+msgstr ""
+
+#: effects/Contrast.cpp:154
+msgid "Times are not reasonable!\n"
+"Please enter reasonable times."
+msgstr ""
+
+#: effects/Contrast.cpp:276
+msgid "Contrast Analyzer"
+msgstr ""
+
+#: effects/Contrast.cpp:279
+msgid "Parameters"
+msgstr ""
+
+#: effects/ToneGen.cpp:328 toolbars/ControlToolBar.cpp:186
+msgid "Start"
+msgstr "آغاز"
+
+#: effects/ToneGen.cpp:329 toolbars/ControlToolBar.cpp:189
+#: toolbars/SelectionBar.cpp:129 toolbars/SelectionBar.cpp:226
+msgid "End"
+msgstr "Ù¾Ø§ÛØ§Ù"
+
+#: effects/Contrast.cpp:290
+msgid "Volume "
+msgstr ""
+
+#: effects/Contrast.cpp:293
+msgid "Foreground:"
+msgstr ""
+
+#: effects/Contrast.cpp:305
+msgid "Foreground start time"
+msgstr ""
+
+#: effects/Contrast.cpp:323
+msgid "Foreground end time"
+msgstr ""
+
+#: effects/Contrast.cpp:329 effects/Contrast.cpp:373 effects/Contrast.cpp:437
+#: effects/Contrast.cpp:448
+msgid "Measured"
+msgstr ""
+
+#: effects/Contrast.cpp:331 effects/Contrast.cpp:375
+msgid "Use selection"
+msgstr ""
+
+#: effects/Contrast.cpp:336
+msgid "Background:"
+msgstr ""
+
+#: effects/Contrast.cpp:349
+msgid "Background start time"
+msgstr ""
+
+#: effects/Contrast.cpp:367
+msgid "Background end time"
+msgstr ""
+
+#: effects/Contrast.cpp:384
+msgid "Result"
+msgstr ""
+
+#: effects/Contrast.cpp:388
+msgid "Contrast Result:"
+msgstr ""
+
+#: effects/Contrast.cpp:391
+msgid "Reset"
+msgstr ""
+
+#: effects/Contrast.cpp:392
+msgid "Difference:"
+msgstr ""
+
+#: AboutDialog.cpp:250
+msgid "Information"
+msgstr "Ø§Ø·ÙØ§Ø¹Ø§Øª"
+
+#: effects/Contrast.cpp:405
+msgid "For measuring rms volume differences between two selections of audio."
+msgstr ""
+
+#: effects/Contrast.cpp:406
+msgid "Help for WCAG2 Audio Contrast Analyzer"
+msgstr ""
+
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
+msgstr ""
+
+#: effects/Contrast.cpp:474 effects/Contrast.cpp:480 effects/Contrast.cpp:486
+#: effects/Contrast.cpp:492
+msgid "Measure"
+msgstr ""
+
+#: effects/Contrast.cpp:531
+msgid "No foreground to measure"
+msgstr ""
+
+#: effects/Contrast.cpp:536
+msgid "Measured foreground level"
+msgstr ""
+
+#: effects/Contrast.cpp:537 effects/Contrast.cpp:547
+#, c-format
+msgid "%.1f dB"
+msgstr ""
+
+#: effects/Contrast.cpp:541
+msgid "No background to measure"
+msgstr ""
+
+#: effects/Contrast.cpp:546
+msgid "Measured background level"
+msgstr ""
+
+#: effects/Contrast.cpp:552
+msgid "WCAG2 Pass"
+msgstr ""
+
+#: effects/Contrast.cpp:554
+msgid "WCAG2 Fail"
+msgstr ""
+
+#: effects/Contrast.cpp:555
+msgid "Current difference"
+msgstr ""
+
+#: effects/Contrast.cpp:556
+#, c-format
+msgid "%.1f dB Average rms"
+msgstr ""
+
+#: effects/Contrast.cpp:561
+msgid "Please enter valid times."
+msgstr ""
+
+#: effects/Contrast.cpp:571
+msgid "Export Contrast Result As:"
+msgstr ""
+
+#: effects/Contrast.cpp:592
+msgid "WCAG 2.0 Success Criteria 1.4.7 Contrast Results"
+msgstr ""
+
+#: effects/Contrast.cpp:594
+#, c-format
+msgid "Filename = %s."
+msgstr ""
+
+#: effects/Contrast.cpp:596
+msgid "Foreground"
+msgstr ""
+
+#: effects/Contrast.cpp:601 effects/Contrast.cpp:618
+#, c-format
+msgid "Time started = %2d hour(s), %2d minute(s), %.2f seconds."
+msgstr ""
+
+#: effects/Contrast.cpp:606 effects/Contrast.cpp:623
+#, c-format
+msgid "Time ended = %2d hour(s), %2d minute(s), %.2f seconds."
+msgstr ""
+
+#: effects/Contrast.cpp:608 effects/Contrast.cpp:625
+#, c-format
+msgid "Average rms = %.1f dB."
+msgstr ""
+
+#: effects/Contrast.cpp:610 effects/Contrast.cpp:627
+msgid "Average rms = dB."
+msgstr ""
+
+#: effects/Contrast.cpp:613
+msgid "Background"
+msgstr ""
+
+#: effects/Contrast.cpp:629
+msgid "Results"
+msgstr ""
+
+#: effects/Contrast.cpp:631
+#, c-format
+msgid "Difference = %.1f Average rms dB."
+msgstr ""
+
+#: effects/Contrast.cpp:633
+msgid "Success Criteria 1.4.7 of WCAG 2.0: Pass"
+msgstr ""
+
+#: effects/Contrast.cpp:635
+msgid "Success Criteria 1.4.7 of WCAG 2.0: Fail"
+msgstr ""
+
+#: effects/Contrast.cpp:638
+msgid "Data gathered"
+msgstr ""
+
#: effects/DtmfGen.cpp:47
msgid "DTMF Tone Generator"
msgstr "تÙÙÛØ¯ÙâÚ©ÙÙØ¯ÙÙ ØµÙØª DTMF"
@@ -3746,9 +4781,13 @@ msgstr "ÙÙØ´ØªÙ٠ساÙÙÙ ÙÙØªÙرا (Û²Û°Û°Û¶)"
msgid "DTMF sequence:"
msgstr "Ø¯ÙØ¨Ø§ÙÙÙ DTMF"
-#: effects/DtmfGen.cpp:389
-msgid "DTMF duration:"
-msgstr "Ù
دت زÙ
ا٠DTMF"
+#: effects/ToneGen.cpp:299 effects/ToneGen.cpp:332
+msgid "Amplitude (0-1)"
+msgstr "داÙ
ÙÙ (Û°-Û±)"
+
+#: effects/DtmfGen.cpp:430
+msgid "Duration:"
+msgstr ""
#: effects/DtmfGen.cpp:407
msgid "Tone/silence ratio:"
@@ -3771,8 +4810,9 @@ msgstr "Ù
ÛÙÛâØ«Ø§ÙÛÙ"
msgid "Silence duration:"
msgstr "Ù
دت زÙ
Ø§Ù Ø³Ú©ÙØª:"
-#: effects/DtmfGen.h:41
-msgid "&DTMF Tones..."
+#: effects/DtmfGen.h:40
+#, fuzzy
+msgid "DTMF Tones..."
msgstr "ØµÙØªâÙØ§Û& DTMF"
#: effects/DtmfGen.h:45
@@ -3813,23 +4853,35 @@ msgstr "Ù¾ÚÙØ§Ú©..."
msgid "Performing Echo"
msgstr "در ØØ§Ù Ø§Ø¬Ø±Ø§Û Ù¾ÚÙØ§Ú©"
-#: effects/Effect.cpp:254 effects/Effect.cpp:370 effects/Phaser.cpp:595
-#: effects/Wahwah.cpp:582 effects/audiounits/AudioUnitEffect.cpp:852
-msgid "Pre&view"
-msgstr "Ù¾Û&Ø´âÙÙ
Ø§ÛØ´"
+#: effects/Effect.cpp:520
+msgid "Preparing preview"
+msgstr ""
+
+#: effects/Effect.cpp:550
+msgid "Previewing"
+msgstr ""
#: effects/Effect.cpp:333
-msgid ""
-"Error while opening sound device. Please check the output device settings "
-"and the project sample rate."
-msgstr "خطا در ÙÙگاÙ
باز کرد٠دستگا٠صدا. ÙØ·ÙØ§Ù ØªÙØ¸ÛÙ
ات Ø®Ø±ÙØ¬Û دستگا٠"
-"Ù ÙØ±Ø® ÙÙ
ÙÙÙâØ¨Ø±Ø¯Ø§Ø±Û Ù¾Ø±ÙÚ٠را Ø¨Ø±Ø±Ø³Û Ú©ÙÛØ¯."
+msgid "Error while opening sound device. Please check the output device settings and the project sample rate."
+msgstr "خطا در ÙÙگاÙ
باز کرد٠دستگا٠صدا. ÙØ·ÙØ§Ù ØªÙØ¸ÛÙ
ات Ø®Ø±ÙØ¬Û Ø¯Ø³ØªÚ¯Ø§Ù Ù ÙØ±Ø® ÙÙ
ÙÙÙâØ¨Ø±Ø¯Ø§Ø±Û Ù¾Ø±ÙÚ٠را Ø¨Ø±Ø±Ø³Û Ú©ÙÛØ¯."
#: effects/Effect.h:107
#, c-format
msgid "Applied effect: %s"
msgstr "جÙÙÙâÙØ§Û اعÙ
اÙâØ´Ø¯Ù: %s"
+#: effects/Equalization.cpp:1119
+msgid "B-spline"
+msgstr "بÛâØ§Ø³Ù¾ÙØ§ÛÙ"
+
+#: effects/Equalization.cpp:1119
+msgid "Cosine"
+msgstr "کسÛÙÙØ³Û"
+
+#: effects/Equalization.cpp:1119
+msgid "Cubic"
+msgstr "Ù
کعبÛ"
+
#: effects/Equalization.cpp:331
msgid "Equalization"
msgstr "Ø§ÙØ¹Ù
ا٠اکÙÙØ§Ûزر"
@@ -3838,10 +4890,15 @@ msgstr "Ø§ÙØ¹Ù
ا٠اکÙÙØ§Ûزر"
msgid "Error loading EQ curve"
msgstr "خطا در بار کرد٠Ù
ÙØÙÛ Ø§Ú©ÙÙØ§ÛØ²Ø±ÙØ§"
-#: effects/Equalization.cpp:904
-msgid "Custom"
+#: effects/Equalization.cpp:1051
+#, fuzzy
+msgid "custom"
msgstr "Ø³ÙØ§Ø±Ø´Û"
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr ""
+
#: effects/Equalization.cpp:971
msgid "Equalization, by Martyn Shaw && Mitch Golden"
msgstr "Ø§ÙØ¹Ù
ا٠اکÙÙØ§ÛØ²Ø±Ø ÙÙØ´ØªÙÙ Ù
ارتÛ٠شا٠٠Ù
ÛÚ Ú¯ÙØ¯Ù"
@@ -3854,18 +4911,6 @@ msgstr "ØØ¯Ø§Ú©Ø«Ø± ÙØ¯Ø±Øª صدا (دسÛâØ¨Ù)"
msgid "Min dB"
msgstr "ØØ¯Ø§ÙÙ ÙØ¯Ø±Øª صدا (دسÛâØ¨Ù)"
-#: effects/Equalization.cpp:1048
-msgid "Select curve:"
-msgstr "Ø§ÙØªØ®Ø§Ø¨ Ù
ÙØÙÛ:"
-
-#: effects/Equalization.cpp:1058 effects/Equalization.cpp:2244
-msgid "Save As..."
-msgstr "Ø°Ø®ÛØ±Ù Ø¨Ù ÙØ§Ù
..."
-
-#: effects/Equalization.cpp:1064
-msgid "Flat"
-msgstr "تخت"
-
#: effects/Equalization.cpp:1093
msgid "kHz"
msgstr "Ú©ÛÙÙÙØ±ØªØ²"
@@ -3878,18 +4923,6 @@ msgstr "رسÙ
Ù
ÙØÙÛ"
msgid "Graphic EQ"
msgstr "اکÙÙØ§Ûزر گراÙÛÚ©Û"
-#: effects/Equalization.cpp:1119
-msgid "B-spline"
-msgstr "بÛâØ§Ø³Ù¾ÙØ§ÛÙ"
-
-#: effects/Equalization.cpp:1119
-msgid "Cosine"
-msgstr "کسÛÙÙØ³Û"
-
-#: effects/Equalization.cpp:1119
-msgid "Cubic"
-msgstr "Ù
کعبÛ"
-
#: effects/Equalization.cpp:1131
msgid "Linear frequency scale"
msgstr "Ù
ÙÛØ§Ø³ بساÙ
د خطÛ"
@@ -3898,6 +4931,18 @@ msgstr "Ù
ÙÛØ§Ø³ بساÙ
د خطÛ"
msgid "Length of filter:"
msgstr "Ø·Ù٠صاÙÛ:"
+#: effects/Equalization.cpp:1048
+msgid "Select curve:"
+msgstr "Ø§ÙØªØ®Ø§Ø¨ Ù
ÙØÙÛ:"
+
+#: effects/Equalization.cpp:1058 effects/Equalization.cpp:2244
+msgid "Save As..."
+msgstr "Ø°Ø®ÛØ±Ù Ø¨Ù ÙØ§Ù
..."
+
+#: effects/Equalization.cpp:1064
+msgid "Flat"
+msgstr "تخت"
+
#: effects/Equalization.cpp:2243
msgid "Enter the desired name of the curve"
msgstr "ÙØ§Ù
Ù
ÙØ±Ø¯ ÙØ¸Ø± Ø¨Ø±Ø§Û Ù
ÙØÙÛ Ø±Ø§ ÙØ§Ø±Ø¯ Ú©ÙÛØ¯"
@@ -3930,6 +4975,42 @@ msgstr "Ù
ØÙ Ø´Ø¯Ù ØªØ¯Ø±ÛØ¬Û"
msgid "Fading Out"
msgstr "در ØØ§Ù Ù
ØÙ Ø´Ø¯Ù ØªØ¯Ø±ÛØ¬Û"
+#: effects/FindClipping.cpp:50
+msgid "Detect clipping"
+msgstr ""
+
+#: effects/FindClipping.cpp:93
+msgid "Clipping"
+msgstr ""
+
+#: effects/FindClipping.cpp:213
+msgid "Find Clipping"
+msgstr ""
+
+#: effects/FindClipping.cpp:224
+msgid "by Leland Lucius"
+msgstr ""
+
+#: effects/FindClipping.cpp:236
+msgid "Start threshold (samples):"
+msgstr ""
+
+#: effects/FindClipping.cpp:240
+msgid "Stop threshold (samples):"
+msgstr ""
+
+#: effects/FindClipping.cpp:252
+msgid "Start and stop must be greater than 0."
+msgstr ""
+
+#: effects/FindClipping.h:37
+msgid "Find Clipping..."
+msgstr ""
+
+#: effects/FindClipping.h:54
+msgid "Detecting clipping"
+msgstr ""
+
#: effects/Invert.h:27
msgid "Invert"
msgstr "Ù
Ø¹Ú©ÙØ³ کردÙ"
@@ -3938,17 +5019,13 @@ msgstr "Ù
Ø¹Ú©ÙØ³ کردÙ"
msgid "Inverting"
msgstr "در ØØ§Ù Ù
Ø¹Ú©ÙØ³ کردÙ"
-#: effects/Leveller.cpp:47
-msgid "Heavier"
-msgstr "سÙÚ¯ÛÙâØªØ±"
-
-#: effects/Leveller.cpp:47
-msgid "Heaviest"
-msgstr "سÙÚ¯ÛÙâØªØ±ÛÙ"
+#: BatchCommands.cpp:237 effects/Leveller.cpp:129
+msgid "Leveller"
+msgstr "ابزار ØªØ±Ø§Ø²Ø¨ÙØ¯Û"
#: effects/Leveller.cpp:47
-msgid "Heavy"
-msgstr "سÙÚ¯ÛÙ"
+msgid "None-Skip"
+msgstr "بدÙ٠پرش"
#: effects/Leveller.cpp:47
msgid "Light"
@@ -3959,27 +5036,36 @@ msgid "Moderate"
msgstr "Ù
تعادÙ"
#: effects/Leveller.cpp:47
-msgid "None-Skip"
-msgstr "بدÙ٠پرش"
+msgid "Heavy"
+msgstr "سÙÚ¯ÛÙ"
-#: effects/Leveller.cpp:214
-msgid "Leveller by Lynn Allan"
-msgstr "ابزار ØªØ±Ø§Ø²Ø¨ÙØ¯Û ÙÙØ´ØªÙÙ ÙÛ٠آÙÙ"
+#: effects/Leveller.cpp:47
+msgid "Heavier"
+msgstr "سÙÚ¯ÛÙâØªØ±"
-#: effects/Leveller.cpp:217
-msgid "Equalize soft and loud sections"
-msgstr "Ø§Ø³ØªÙØ§Ø¯Ù از اکÙÙØ§Ûزر بر رÙÛ Ø¨Ø®Ø´âÙØ§Û ØµØ¯Ø§Û ÙØ±Ù
٠بÙÙØ¯"
+#: effects/Leveller.cpp:47
+msgid "Heaviest"
+msgstr "سÙÚ¯ÛÙâØªØ±ÛÙ"
+
+#: effects/Leveller.cpp:214
+msgid "by Lynn Allan"
+msgstr ""
#: effects/Leveller.cpp:220 effects/Leveller.cpp:233
msgid "Degree of Leveling"
msgstr "درجÙÙ ØªØ±Ø§Ø²Ø¨ÙØ¯Û"
+#: effects/Leveller.cpp:228
+msgid "Degree of Leveling:"
+msgstr ""
+
#: effects/Leveller.cpp:244
msgid "Noise Threshold (Hiss/Hum/Ambient Noise)"
msgstr "آستاÙÙÙ ÙÙÙÙ (ÙÛØ³/ÙØ§Ù
/ÙÙÙÙÙ Ù
ØÛØ·Û)"
-#: effects/Leveller.cpp:255
-msgid "Threshold for Noise: "
+#: effects/Leveller.cpp:240
+#, fuzzy
+msgid "Threshold for Noise:"
msgstr "آستاÙÙ Ø¨Ø±Ø§Û ÙÙÙÙ: "
#: effects/Leveller.h:28
@@ -3990,6 +5076,154 @@ msgstr "ابزار ØªØ±Ø§Ø²Ø¨ÙØ¯Û..."
msgid "Applying Leveller..."
msgstr "در ØØ§Ù ØªØ±Ø§Ø²Ø¨ÙØ¯Û..."
+#: effects/LoadEffects.cpp:102
+msgid "Generator"
+msgstr ""
+
+#: effects/LoadEffects.cpp:104
+msgid "Instrument"
+msgstr ""
+
+#: effects/LoadEffects.cpp:106
+msgid "Oscillator"
+msgstr ""
+
+#: effects/LoadEffects.cpp:108
+msgid "Utility"
+msgstr ""
+
+#: effects/LoadEffects.cpp:110
+msgid "Converter"
+msgstr ""
+
+#: effects/LoadEffects.cpp:112
+msgid "Analyser"
+msgstr ""
+
+#: effects/LoadEffects.cpp:116
+msgid "Simulator"
+msgstr ""
+
+#: effects/LoadEffects.cpp:118
+msgid "Delay"
+msgstr ""
+
+#: effects/LoadEffects.cpp:120
+msgid "Modulator"
+msgstr ""
+
+#: effects/LoadEffects.cpp:122
+msgid "Reverb"
+msgstr ""
+
+#: effects/Phaser.cpp:78
+msgid "Phaser"
+msgstr "ÙØ§Ø²"
+
+#: effects/LoadEffects.cpp:126
+msgid "Flanger"
+msgstr ""
+
+#: effects/LoadEffects.cpp:128
+msgid "Chorus"
+msgstr ""
+
+#: effects/LoadEffects.cpp:130
+msgid "Filter"
+msgstr ""
+
+#: effects/LoadEffects.cpp:132
+msgid "Lowpass"
+msgstr ""
+
+#: effects/LoadEffects.cpp:134
+msgid "Bandpass"
+msgstr ""
+
+#: effects/LoadEffects.cpp:136
+msgid "Highpass"
+msgstr ""
+
+#: effects/LoadEffects.cpp:138
+msgid "Comb"
+msgstr ""
+
+#: effects/LoadEffects.cpp:140
+msgid "Allpass"
+msgstr ""
+
+#: effects/LoadEffects.cpp:142
+msgid "Equaliser"
+msgstr ""
+
+#: effects/LoadEffects.cpp:144
+msgid "Parametric"
+msgstr ""
+
+#: effects/LoadEffects.cpp:146
+msgid "Multiband"
+msgstr ""
+
+#: effects/LoadEffects.cpp:148
+msgid "Spectral Processor"
+msgstr ""
+
+#: effects/LoadEffects.cpp:150
+msgid "Pitch Shifter"
+msgstr ""
+
+#: effects/LoadEffects.cpp:152
+msgid "Amplifier"
+msgstr ""
+
+#: effects/LoadEffects.cpp:154
+msgid "Distortion"
+msgstr ""
+
+#: effects/LoadEffects.cpp:156
+msgid "Waveshaper"
+msgstr ""
+
+#: effects/LoadEffects.cpp:158
+msgid "Dynamics Processor"
+msgstr ""
+
+#: effects/LoadEffects.cpp:160
+msgid "Compressor"
+msgstr ""
+
+#: effects/LoadEffects.cpp:162
+msgid "Expander"
+msgstr ""
+
+#: effects/LoadEffects.cpp:164
+msgid "Limiter"
+msgstr ""
+
+#: effects/LoadEffects.cpp:166
+msgid "Gate"
+msgstr ""
+
+#: BatchCommands.cpp:235 effects/NoiseRemoval.cpp:675
+msgid "Noise Removal"
+msgstr "ØØ°Ù ÙÙÙÙ"
+
+#: effects/LoadEffects.cpp:201
+msgid "Pitch and Tempo"
+msgstr ""
+
+#: effects/LoadEffects.cpp:203
+msgid "Timeline Changer"
+msgstr ""
+
+#: effects/LoadEffects.cpp:205
+msgid "Time"
+msgstr ""
+
+#: effects/LoadEffects.cpp:207
+msgid "Onsets"
+msgstr ""
+
#: effects/Noise.cpp:37
msgid "White"
msgstr "سÙÛØ¯"
@@ -4006,21 +5240,14 @@ msgstr "ÙÙÙÙâØ§Û"
msgid "Noise Generator"
msgstr "تÙÙÛØ¯Ú©ÙÙØ¯ÙÙ ÙÙÙÙ"
-#: effects/Noise.cpp:222
-msgid "Noise duration"
-msgstr "Ù
دت زÙ
ا٠ÙÙÙÙ"
-
-#: effects/Noise.cpp:239
-msgid "Amplitude"
-msgstr "داÙ
ÙÙ"
-
-#: effects/Noise.cpp:240
-msgid "Noise type:"
+#: effects/Noise.cpp:189
+#, fuzzy
+msgid "Noise type"
msgstr "ÙÙØ¹ ÙÙÙÙ:"
-#: effects/Noise.h:41
-msgid "&Noise..."
-msgstr "&ÙÙÙÙ..."
+#: effects/Noise.h:42
+msgid "Noise..."
+msgstr ""
#: effects/Noise.h:45
#, c-format
@@ -4031,20 +5258,24 @@ msgstr "جÙÙÙâÙØ§Û اعÙ
ا٠شدÙ: تÙÙÛØ¯ ÙÙÙÙØ %I.6lf ثاÙ
msgid "Generating Noise"
msgstr "در ØØ§Ù تÙÙÛØ¯ ÙÙÙÙ"
-#: effects/NoiseRemoval.cpp:235
-msgid ""
-"Attempt to run Noise Removal without a noise profile\n"
-"."
+#: effects/NoiseRemoval.cpp:192
+#, c-format
+msgid "Could not open file:\n"
+" %s"
+msgstr ""
+
+#: effects/NoiseRemoval.cpp:277
+#, fuzzy
+msgid "Attempt to run Noise Removal without a noise profile.\n"
msgstr "ØªÙØ§Ø´ Ø¨Ø±Ø§Û Ø§Ø¬Ø±Ø§Û Ø¹Ù
ÙÛØ§Øª ØØ°Ù ÙÙÙ٠بدÙÙ ÙØ¬Ùد ÛÚ© Ù
جÙ
ÙØ¹Ù ØªÙØ¸ÛÙ
ات Ù
Ø±Ø¨ÙØ· ب٠ÙÙÙÙ\n"
-"."
+".\n"
#: effects/NoiseRemoval.cpp:764
msgid "Step 1"
msgstr "Ù
رØÙÙÙ Û±"
#: effects/NoiseRemoval.cpp:765
-msgid ""
-"Select a few seconds of just noise so Audacity knows what to filter out,\n"
+msgid "Select a few seconds of just noise so Audacity knows what to filter out,\n"
"then click Get Noise Profile:"
msgstr "ÚÙØ¯ ثاÙÛ٠از ÙÙÙÙâÙØ§ را Ø§ÙØªØ®Ø§Ø¨ Ú©ÙÛØ¯ تا Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø¨Ø¯Ø§ÙØ¯ ÚÙ ÚÛØ²Û را صاÙÛ Ú©ÙØ¯Ø\n"
"سپس رÙÛ Â«Ú¯Ø±ÙØªÙ Ù
جÙ
ÙØ¹Ù ØªÙØ¸ÛÙ
ات Ù
Ø±Ø¨ÙØ· ب٠ÙÙÙÙ» Ú©ÙÛÚ© Ú©ÙÛØ¯:"
@@ -4054,8 +5285,7 @@ msgid "Step 2"
msgstr "Ù
رØÙÙÙ Û²"
#: effects/NoiseRemoval.cpp:767
-msgid ""
-"Select all of the audio you want filtered, choose how much noise you want\n"
+msgid "Select all of the audio you want filtered, choose how much noise you want\n"
"filtered out, and then click 'OK' to remove noise.\n"
msgstr "تÙ
اÙ
صداÛÛ Ú©Ù Ù
ÛâØ®ÙØ§ÙÛØ¯ صاÙÛ Ú©ÙÛØ¯ را Ø§ÙØªØ®Ø§Ø¨ ÙÙ
اÛÛØ¯Ø Ù
شخص Ú©ÙÛØ¯ Ú©Ù ÚÙ Ù
ÙØ¯Ø§Ø± ÙÙÙ٠را Ù
ÛâØ®ÙØ§ÙÛØ¯\n"
"با Ø§Ø³ØªÙØ§Ø¯Ù از صاÙÛ ØØ°Ù Ú©ÙÛØ¯Ø سپس رÙÛ Â«ØªØ£ÛÛØ¯Â» Ú©ÙÛÚ© Ú©ÙÛØ¯ تا ÙÙÙÙ ØØ°Ù گردد.\n"
@@ -4072,14 +5302,26 @@ msgstr "Ú¯Ø±ÙØªÙ Ù
جÙ
ÙØ¹Ù ØªÙØ¸ÛÙ
ات Ù
Ø±Ø¨ÙØ· ب٠ÙÙÙÙ"
msgid "Noise reduction (dB):"
msgstr "Ú©Ø§ÙØ´ ÙÙÙÙ (دسÛâØ¨Ù):"
+#: effects/NoiseRemoval.cpp:851
+msgid "Noise reduction"
+msgstr ""
+
#: effects/NoiseRemoval.cpp:799
msgid "Frequency smoothing (Hz):"
msgstr "ÙÙ
ÙØ§Ø±Ø³Ø§Ø²Û بساÙ
د (ÙØ±ØªØ²):"
+#: effects/NoiseRemoval.cpp:860
+msgid "Frequency smoothing"
+msgstr ""
+
#: effects/NoiseRemoval.cpp:807
msgid "Attack/decay time (secs):"
msgstr "زÙ
ا٠ØÙ
ÙÙ/Ù
ÛØ±Ø§ÛÛ (ثاÙÛÙ):"
+#: effects/NoiseRemoval.cpp:869
+msgid "Attach/decay time"
+msgstr ""
+
#: effects/NoiseRemoval.h:35
msgid "Noise Removal..."
msgstr "ØØ°Ù ÙÙÙÙ..."
@@ -4092,22 +5334,46 @@ msgstr "در ØØ§Ù ساخت Ù
جÙ
ÙØ¹Ù ØªÙØ¸ÛÙ
ات Ù
Ø±Ø¨ÙØ· ب٠ÙÙÙ
msgid "Removing Noise"
msgstr "در ØØ§Ù ØØ°Ù ÙÙÙÙ"
-#: effects/Normalize.cpp:316
-msgid "Normalize by Dominic Mazzoni\n"
-msgstr "ÙØ±Ù
اÙâØ³Ø§Ø²Û ÙÙØ´ØªÙ٠دÙÙ
ÛÙÛÚ© Ù
Ø§ÙØ²ÙÙÛ\n"
+#. i18n-hint: First %s is the effect name, 2nd and 3rd are either true or
+#. * false (translated below) if those options were selected
+#: effects/Normalize.cpp:70
+#, c-format
+msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
+msgstr ""
+
+#. i18n-hint: true here means that the option was
+#. * selected. Opposite false if not selected
+#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
+msgid "true"
+msgstr ""
-#: effects/Normalize.cpp:323
-msgid "Remove any DC offset (center on 0 vertically)"
-msgstr "ØØ°Ù بÛâÙØ§Ø¹Ø¯Ú¯Û DC (تراز عÙ
ÙØ¯Û Ù
رکز بر ۰)"
+#: effects/Normalize.cpp:77
+#, c-format
+msgid ", maximum amplitude = %.1f dB"
+msgstr ""
-#: effects/Normalize.cpp:328
-msgid "Normalize maximum amplitude to"
+#: BatchCommands.cpp:233 BatchCommands.cpp:238 BatchCommands.cpp:246
+#: effects/Normalize.cpp:94
+msgid "Normalize"
+msgstr "ÙØ±Ù
اÙâØ³Ø§Ø²Û"
+
+#: effects/Normalize.cpp:355
+msgid "Remove any DC offset (center on 0.0 vertically)"
+msgstr ""
+
+#: effects/Normalize.cpp:358
+#, fuzzy
+msgid "Normalize maximum amplitude to:"
msgstr "ÙØ±Ù
اÙâØ³Ø§Ø²Û ØØ¯Ø§Ú©Ø«Ø± داÙ
Ù٠تا"
#: effects/Normalize.cpp:336
msgid "-"
msgstr "-"
+#: effects/Normalize.cpp:371
+msgid "Maximum amplitude dB"
+msgstr ""
+
#: effects/Normalize.h:32
msgid "Normalize..."
msgstr "ÙØ±Ù
اÙâØ³Ø§Ø²Û..."
@@ -4118,48 +5384,57 @@ msgstr "در ØØ§Ù ÙØ±Ù
اÙâØ³Ø§Ø²Û..."
#: effects/Phaser.cpp:66
#, c-format
-msgid ""
-"Applied effect: %s %d stages, %.0f%% wet, frequency = %.1f Hz, start phase = "
-"%.0f deg, depth = %d, feedback = %.0f%%"
-msgstr "جÙÙÙâÙØ§Û اعÙ
اÙâØ´Ø¯Ù: %sØ %Id Ù
رØÙÙ Ø ØµØ¯Ø§Û Ø¬ÙÙÙâÙ¾Ø°ÛØ±Ùت٠%I.0f%%Ø ÙØ±Ú©Ø§Ùس = %I.1f ÙØ±ØªØ²Ø ÙØ§Ø² Ø´Ø±ÙØ¹ = "
-"%I.0f Ø¯Ø±Ø¬ÙØ عÙ
Ù = %IdØ Ø¨Ø§Ø²Ø®ÙØ±Ø¯ = %I.0f%%"
-
-#: effects/Phaser.cpp:78
-msgid "Phaser"
-msgstr "ÙØ§Ø²"
-
-#: effects/Phaser.cpp:477
-msgid "Phaser by Nasca Octavian Paul"
-msgstr "ÙØ§Ø² ÙÙØ´ØªÙÙ ÙØ§Ø³Ú©Ø§ اÙکتاÙÛÙ Ù¾Ù"
+msgid "Applied effect: %s %d stages, %.0f%% wet, frequency = %.1f Hz, start phase = %.0f deg, depth = %d, feedback = %.0f%%"
+msgstr "جÙÙÙâÙØ§Û اعÙ
اÙâØ´Ø¯Ù: %sØ %Id Ù
رØÙÙ Ø ØµØ¯Ø§Û Ø¬ÙÙÙâÙ¾Ø°ÛØ±Ùت٠%I.0f%%Ø ÙØ±Ú©Ø§Ùس = %I.1f ÙØ±ØªØ²Ø ÙØ§Ø² Ø´Ø±ÙØ¹ = %I.0f Ø¯Ø±Ø¬ÙØ عÙ
Ù = %IdØ Ø¨Ø§Ø²Ø®ÙØ±Ø¯ = %I.0f%%"
#: effects/Phaser.cpp:484
msgid "Stages:"
msgstr "Ù
راØÙ:"
-#: effects/Phaser.cpp:505
-msgid "DRY"
-msgstr "ØµØ¯Ø§Û Ø§ØµÙÛ"
+#: effects/Phaser.cpp:231
+msgid "Stages"
+msgstr ""
+
+#: effects/Phaser.cpp:236
+msgid "Dry/Wet:"
+msgstr ""
-#: effects/Phaser.cpp:512
-msgid "WET"
-msgstr "ØµØ¯Ø§Û Ø¬ÙÙÙâÙ¾Ø°ÛØ±ÙتÙ"
+#: effects/Phaser.cpp:239
+msgid "Dry Wet"
+msgstr ""
#: effects/Phaser.cpp:526 effects/Wahwah.cpp:497
msgid "LFO Frequency (Hz):"
msgstr "ÙØ±Ú©Ø§Ùس LFO (ÙØ±ØªØ²):"
+#: effects/Phaser.cpp:247 effects/Wahwah.cpp:225
+msgid "LFO frequency in hertz"
+msgstr ""
+
#: effects/Phaser.cpp:542 effects/Wahwah.cpp:513
msgid "LFO Start Phase (deg.):"
msgstr "ÙØ§Ø² Ø´Ø±ÙØ¹ LFO (درجÙ):"
+#: effects/Phaser.cpp:255 effects/Wahwah.cpp:233
+msgid "LFO start phase in degrees"
+msgstr ""
+
#: effects/Phaser.cpp:558
msgid "Depth:"
msgstr "عÙ
Ù:"
+#: effects/Phaser.cpp:263 effects/Wahwah.cpp:241
+msgid "Depth in percent"
+msgstr ""
+
#: effects/Phaser.cpp:574
msgid "Feedback (%):"
msgstr "Ø¨Ø§Ø²Ø®ÙØ±Ø¯ (Ùª):"
+#: effects/Phaser.cpp:271
+msgid "Feedback in percent"
+msgstr ""
+
#: effects/Phaser.h:38
msgid "Phaser..."
msgstr "ÙØ§Ø²..."
@@ -4169,15 +5444,21 @@ msgid "Applying Phaser"
msgstr "در ØØ§Ù Ø§ÙØ¹Ù
Ø§Ù ÙØ§Ø²"
#: effects/Repair.cpp:94
-msgid ""
-"The Repair effect is intended to be used on very short sections of damaged "
-"audio (up to 128 samples).\n"
+msgid "The Repair effect is intended to be used on very short sections of damaged audio (up to 128 samples).\n"
"\n"
"Zoom in and select a tiny fraction of a second to repair."
msgstr "جÙÙÙ٠تعÙ
ÛØ± Ø¨Ø±Ø§Û Ø§Ø¹Ù
ا٠بر رÙÛ Ø¨Ø®Ø´ Ø¨Ø³ÛØ§Ø±Û Ú©ÙØªØ§ÙÛ Ø§Ø² ØµÙØª Ø¢Ø³ÛØ¨âØ¯ÛØ¯Ù Ù
ÙØ§Ø³Ø¨ است (ØØ¯Ø§Ú©Ø«Ø± تا Û±Û²Û¸ ÙÙ
ÙÙÙ).\n"
"\n"
"با Ø§Ø³ØªÙØ§Ø¯Ù از زÙÙ
Ú©Ø±Ø¯Ù Ø¨Ù Ø¯Ø§Ø®ÙØ کسر Ú©ÙÚÚ©Û Ø§Ø² ثاÙÛ٠را Ø¨Ø±Ø§Û ØªØ¹Ù
ÛØ± Ø§ÙØªØ®Ø§Ø¨ Ú©ÙÛØ¯."
+#: effects/Repair.cpp:105
+msgid "Repair works by using audio data outside the selection region.\n"
+"\n"
+"Please select a region that has audio touching at least one side of it.\n"
+"\n"
+"The more surrounding audio, the better it performs."
+msgstr ""
+
#: effects/Repair.h:33
msgid "Repairing damaged audio"
msgstr "در ØØ§Ù تعÙ
ÛØ± ØµÙØª Ø¢Ø³ÛØ¨âØ¯ÛØ¯Ù"
@@ -4195,27 +5476,22 @@ msgstr "ÙØ·Ø¹Ø§Øª بÙÙØ¯ØªØ± از Ø¢Ù ÙØ³ØªÙد Ú©Ù Ø§ÙØªØ®Ø§Ø¨ تکرا
msgid "Repeat"
msgstr "تکرار"
-#: effects/Repeat.cpp:245
-msgid "Repeat by Dominic Mazzoni && Vaughan Johnson"
-msgstr "تکرار ÙÙØ´ØªÙ٠دÙÙ
ÛÙÛÚ© Ù
ازÙÙÛ Ù ÙÙÚ¯Ø§Ù Ø¬Ø§ÙØ³ÙÙ"
-
-#: effects/Repeat.cpp:252
-msgid "Number of times to repeat: "
+#: effects/Repeat.cpp:209
+#, fuzzy
+msgid "Number of times to repeat:"
msgstr "تعداد Ø¯ÙØ¹Ø§Øª تکرار: "
+#: effects/Repeat.cpp:218
+msgid "New selection length: hh:mm:ss"
+msgstr ""
+
#: effects/Repeat.cpp:264 effects/Repeat.cpp:302
msgid "New selection length: "
msgstr "Ø·ÙÙ Ø§ÙØªØ®Ø§Ø¨ Ø¬Ø¯ÛØ¯: "
-#: effects/Repeat.cpp:304
-#, c-format
-msgid "%d minutes, %d seconds"
-msgstr "â%Id دÙÛÙÙ Ù %Id ثاÙÛÙ"
-
-#: effects/Repeat.cpp:307
-#, c-format
-msgid "%d seconds"
-msgstr "â%Id ثاÙÛÙ"
+#: widgets/TimeTextCtrl.cpp:199
+msgid "hh:mm:ss"
+msgstr "hh:mm:ss"
#: effects/Repeat.h:32
msgid "Repeat..."
@@ -4238,7 +5514,8 @@ msgid "Silence Generator"
msgstr "Ø³Ú©ÙØªâساز"
#: effects/Silence.h:34
-msgid "&Silence..."
+#, fuzzy
+msgid "Silence..."
msgstr "&Ø³Ú©ÙØª..."
#: effects/Silence.h:38
@@ -4250,9 +5527,9 @@ msgstr "در ØØ§Ù Ø§ÛØ¬Ø§Ø¯ Ø³Ú©ÙØª"
msgid "Applied effect: Generate Silence, %.6lf seconds"
msgstr "جÙÙÙ٠اعÙ
اÙâØ´Ø¯Ù: تÙÙÛØ¯ Ø³Ú©ÙØªØ %I.6lf ثاÙÛÙ"
-#: effects/SimplePairedTwoTrack.h:120
-msgid "Sorry, This effect cannot be performed on stereo tracks where "
-msgstr "Ø¨Ø¨Ø®Ø´ÛØ¯Ø اÛ٠جÙÙ٠را ÙÙ
ÛâØªÙØ§Ù رÙÛ ÙØ·Ø¹Ø§Øª استرÛÙÛÛ Ú©Ù "
+#: effects/SimplePairedTwoTrack.h:115
+msgid "Sorry, this effect cannot be performed on stereo tracks where the individual channels of the track do not match."
+msgstr ""
#: effects/SpikeCleaner.cpp:69
msgid "Spike Cleaner"
@@ -4263,8 +5540,7 @@ msgid "SpikeCleaner by Lynn Allan"
msgstr "پاکâÚ©ÙÙØ¯ÙÙ ÙÙÙâÙØ§Û ØªÛØ² Ù
ÙØ¬ ÙÙØ´ØªÙÙ ÙÛ٠آÙÙ"
#: effects/SpikeCleaner.cpp:165
-msgid ""
-"Max Spike Duration (milliseconds): \n"
+msgid "Max Spike Duration (milliseconds): \n"
"(99999 or greater is off)"
msgstr "ØØ¯Ø§Ú©Ø«Ø± Ù
دت زÙ
ا٠ÙÙÙÙ ØªÛØ² Ù
ÙØ¬ (ب٠Ù
ÛÙÛâØ«Ø§ÙÛÙ): \n"
"(Û¹Û¹Û¹Û¹Û¹ ÛØ§ Ø¨ÛØ´ØªØ± ØºÛØ±Ùعا٠Ù
ÛâÚ©ÙØ¯)"
@@ -4281,17 +5557,72 @@ msgstr "پاکâÚ©ÙÙØ¯ÙÙ ÙÙÙâÙØ§Û ØªÛØ² Ù
ÙØ¬..."
msgid "Applying Spike Cleaner..."
msgstr "در ØØ§Ù اعÙ
ا٠پاکâÚ©ÙÙØ¯ÙÙ ÙÙÙâÙØ§Û ØªÛØ² Ù
ÙØ¬..."
-#: effects/StereoToMono.h:32
-msgid "Applying Stereo To Mono"
+#: effects/StereoToMono.h:23
+#, fuzzy
+msgid "&Stereo to Mono"
+msgstr "ا&سترÛ٠ب٠Ù
ÙÙÙ"
+
+#: effects/StereoToMono.h:38
+#, fuzzy
+msgid "Applying Stereo to Mono"
msgstr "اعÙ
ا٠استرÛ٠ب٠Ù
ÙÙÙ"
+#: effects/TimeScale.cpp:140
+msgid "Time Scale"
+msgstr ""
+
+#: effects/TimeScale.cpp:176
+msgid "Sliding Time Scale/Pitch Shift"
+msgstr ""
+
+#: effects/TimeScale.cpp:178
+msgid "using SBSMS, by Clayton Otey"
+msgstr ""
+
+#: effects/TimeScale.cpp:187
+msgid "Initial Tempo Change (%):"
+msgstr ""
+
+#: effects/TimeScale.cpp:191
+msgid "Final Tempo Change (%):"
+msgstr ""
+
+#: effects/TimeScale.cpp:202
+msgid "Initial Tempo Change (%)"
+msgstr ""
+
+#: effects/TimeScale.cpp:211
+msgid "Final Tempo Change (%)"
+msgstr ""
+
+#: effects/TimeScale.cpp:219
+msgid "Initial Pitch Shift (semitones) [-12 to 12]:"
+msgstr ""
+
+#: effects/TimeScale.cpp:223
+msgid "Final Pitch Shift (semitones) [-12 to 12]:"
+msgstr ""
+
+#: effects/TimeScale.h:33
+msgid "Sliding Time Scale/Pitch Shift..."
+msgstr ""
+
+#: effects/TimeScale.h:47
+msgid "Changing Tempo/Pitch"
+msgstr ""
+
#: effects/ToneGen.cpp:59
#, c-format
-msgid ""
-"Applied effect: Generate %s wave %s, frequency = %.2f Hz, amplitude = %.2f, "
-"%.6lf seconds"
-msgstr "جÙÙÙâÙØ§Û اعÙ
اÙâØ´Ø¯Ù: تÙÙÛØ¯ %s Ù
ÙØ¬ %sØ ÙØ±Ú©Ø§Ùس = %I.2f ÙØ±ØªØ²Ø داÙ
ÙÙ = %I.2fØ "
-"%I.6lf ثاÙÛÙ"
+msgid "Applied effect: Generate %s wave %s, frequency = %.2f Hz, amplitude = %.2f, %.6lf seconds"
+msgstr "جÙÙÙâÙØ§Û اعÙ
اÙâØ´Ø¯Ù: تÙÙÛØ¯ %s Ù
ÙØ¬ %sØ ÙØ±Ú©Ø§Ùس = %I.2f ÙØ±ØªØ²Ø داÙ
ÙÙ = %I.2fØ %I.6lf ثاÙÛÙ"
+
+#: widgets/Meter.cpp:356
+msgid "Linear"
+msgstr "خطÛ..."
+
+#: effects/ToneGen.cpp:70
+msgid "Logarithmic"
+msgstr ""
#: effects/ToneGen.cpp:66
msgid "Chirp Generator"
@@ -4321,39 +5652,37 @@ msgstr "Ù
Ø±Ø¨Ø¹ÛØ بدÙÙ Ù¾Ø±Ø§Ú©ÙØ¯Ú¯Û"
msgid "Frequency (Hz)"
msgstr "بساÙ
د (ÙØ±ØªØ²)"
-#: effects/ToneGen.cpp:299 effects/ToneGen.cpp:332
-msgid "Amplitude (0-1)"
-msgstr "داÙ
ÙÙ (Û°-Û±)"
-
-#: effects/ToneGen.cpp:300 effects/ToneGen.cpp:338
-#: toolbars/SelectionBar.cpp:135 toolbars/SelectionBar.cpp:225
-msgid "Length"
-msgstr "Ø·ÙÙ"
-
#: effects/ToneGen.cpp:321
msgid "Waveform:"
msgstr "Ø´Ú©Ù Ù
ÙØ¬:"
-#: effects/ToneGen.cpp:328 toolbars/ControlToolBar.cpp:186
-msgid "Start"
-msgstr "آغاز"
+#: effects/ToneGen.cpp:314
+msgid "Frequency Hertz Start"
+msgstr ""
-#: effects/ToneGen.cpp:329 toolbars/ControlToolBar.cpp:189
-#: toolbars/SelectionBar.cpp:129 toolbars/SelectionBar.cpp:226
-msgid "End"
-msgstr "Ù¾Ø§ÛØ§Ù"
+#: effects/ToneGen.cpp:315
+msgid "Frequency Hertz End"
+msgstr ""
-#: effects/ToneGen.cpp:330
-msgid "Frequency / Hz"
-msgstr "بساÙ
د / ÙØ±ØªØ²"
+#: effects/ToneGen.cpp:316
+msgid "Amplitude Start"
+msgstr ""
-#: effects/ToneGen.h:39
-msgid "&Chirp..."
-msgstr "&Ø¬ÛØ±Ø¬Ûر..."
+#: effects/ToneGen.cpp:317
+msgid "Amplitude End"
+msgstr ""
+
+#: effects/ToneGen.cpp:322
+msgid "Interpolation:"
+msgstr ""
-#: effects/ToneGen.h:39
-msgid "&Tone..."
-msgstr "&ØµÙØª..."
+#: effects/ToneGen.h:40
+msgid "Chirp..."
+msgstr ""
+
+#: effects/ToneGen.h:40
+msgid "Tone..."
+msgstr ""
#: effects/ToneGen.h:43
msgid "Generating Chirp"
@@ -4363,55 +5692,114 @@ msgstr "در ØØ§Ù تÙÙÛØ¯ Ø¬ÛØ±Ø¬Ûر"
msgid "Generating Tone"
msgstr "در ØØ§Ù تÙÙÛØ¯ ØµÙØª"
-#: effects/TruncSilence.cpp:64
-msgid "Sorry. Truncate Silence only valid with mono track"
-msgstr "Ù
ØªØ§Ø³ÙØ§ÙÙ ØØ°Ù Ø³Ú©ÙØª ÙÙØ· بر رÙÛ Ø´ÛØ§Ø±ÙØ§Û Ù
ÙÙÙ Ù
عتبر است"
+#: effects/TruncSilence.cpp:133
+msgid "All tracks must have the same sample rate"
+msgstr ""
-#: effects/TruncSilence.cpp:251
-msgid "Truncate Silence by Lynn Allan"
-msgstr "ØØ°Ù Ø³Ú©ÙØª ÙÙØ´ØªÙÙ ÙÛ٠آÙÙ"
+#: effects/TruncSilence.cpp:133 effects/TruncSilence.cpp:443
+msgid "Truncate Silence"
+msgstr ""
-#: effects/TruncSilence.cpp:256
-msgid ""
-"Max Silent Duration (milliseconds): \n"
-"(99999 or greater is off)"
-msgstr "ØØ¯Ø§Ú©Ø«Ø± Ù
دت زÙ
Ø§Ù Ø³Ú©ÙØª (ب٠Ù
ÛÙÛâØ«Ø§ÙÛÙ): \n"
-"(Û¹Û¹Û¹Û¹Û¹ ÛØ§ Ø¨ÛØ´ از Ø¢Ù ØºÛØ±Ùعا٠است)"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr ""
+
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:175 prefs/AudioIOPrefs.cpp:178
+msgid "milliseconds"
+msgstr "Ù
ÛÙÛâØ«Ø§ÙÛÙ"
+
+#: effects/TruncSilence.cpp:471
+msgid "Max silence duration:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ""
+
+#: effects/TruncSilence.cpp:480
+msgid "Threshold for silence:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:506
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
+msgstr ""
+
+#: BatchCommands.cpp:236 effects/TruncSilence.cpp:84 effects/TruncSilence.h:29
+msgid "Truncate Silence..."
+msgstr "ØØ°Ù Ø³Ú©ÙØª..."
#: effects/TruncSilence.h:33
msgid "Truncating Silence..."
msgstr "در ØØ§Ù ØØ°Ù Ø³Ú©ÙØª..."
-#: effects/VST/VSTEffect.cpp:179
-msgid ""
-"Sorry, VST Effects cannot be performed on stereo tracks where the individual "
-"channels of the track do not match."
-msgstr "Ù
ØªØ§Ø³ÙØ§Ù٠جÙÙÙâÙØ§Û VST ÙÙ
ÛâØªÙØ§ÙÙØ¯ بر رÙÛ Ø´ÛØ§Ø±ÙØ§Û Ø§Ø³ØªØ±ÛÙ Ú©Ù Ú©Ø§ÙØ§ÙâÙØ§Û Ù
ستÙÙ Ø¢Ù Ø´ÛØ§Ø± با ÙÙ
ÙÙ
Ø®ÙØ§ÙÛ ÙØ¯Ø§Ø±ÙØ¯Ø Ø§Ø¬Ø±Ø§ Ø´ÙÙØ¯."
+#: effects/ladspa/LadspaEffect.cpp:601
+msgid "Effect Settings"
+msgstr "ØªÙØ¸ÛÙ
ات جÙÙÙ"
+
+#: effects/ladspa/LadspaEffect.cpp:559 effects/ladspa/LadspaEffect.cpp:567
+#: prefs/QualityPrefs.cpp:72
+msgid "None"
+msgstr "ÙÛÚ"
+
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
-#: effects/VST/VSTEffect.cpp:195
-msgid "Can't process replacing"
-msgstr "پردازش جاÛگزÛÙÛ Ù
Ù
Ú©Ù ÙÛØ³Øª"
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
-#: effects/VST/VSTEffect.cpp:409
-msgid "VST Plug-in parameters:"
-msgstr "پاراÙ
ØªØ±ÙØ§Û Ù
تصÙâØ´ÙÙØ¯ÙÙ VST"
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr ""
#: effects/Wahwah.cpp:60
#, c-format
-msgid ""
-"Applied effect: %s frequency = %.1f Hz, start phase = %.0f deg, depth = %.0f%"
-"%, resonance = %.1f, frequency offset = %.0f%%"
-msgstr "جÙÙÙâÙØ§Û اعÙ
ا٠شدÙ: %s ÙØ±Ú©Ø§Ùس = %I.1f ÙØ±ØªØ²Ø ÙØ§Ø² Ø´Ø±ÙØ¹ = %I.0f Ø¯Ø±Ø¬ÙØ عÙ
Ù = %I.0f%"
-"%Ø Ø·ÙÛÙ = %I.1fØ Ø§ÙØ³Øª ÙØ±Ú©Ø§Ùس = %I.0f%%"
+msgid "Applied effect: %s frequency = %.1f Hz, start phase = %.0f deg, depth = %.0f%%, resonance = %.1f, frequency offset = %.0f%%"
+msgstr "جÙÙÙâÙØ§Û اعÙ
ا٠شدÙ: %s ÙØ±Ú©Ø§Ùس = %I.1f ÙØ±ØªØ²Ø ÙØ§Ø² Ø´Ø±ÙØ¹ = %I.0f Ø¯Ø±Ø¬ÙØ عÙ
Ù = %I.0f%%Ø Ø·ÙÛÙ = %I.1fØ Ø§ÙØ³Øª ÙØ±Ú©Ø§Ùس = %I.0f%%"
#: effects/Wahwah.cpp:71
msgid "Wahwah"
msgstr "ÙØ§ÙâÙØ§Ù"
-#: effects/Wahwah.cpp:490
-msgid "Wahwah by Nasca Octavian Paul"
-msgstr "ÙØ§ÙâÙØ§Ù ÙÙØ´ØªÙÙ ÙØ³Ú©Ø§ اکتاÙÛ٠پاÙÙ"
-
#: effects/Wahwah.cpp:529
msgid "Depth (%):"
msgstr "عÙ
Ù (Ùª):"
@@ -4420,10 +5808,18 @@ msgstr "عÙ
Ù (Ùª):"
msgid "Resonance:"
msgstr "Ø·ÙÛÙ:"
+#: effects/Wahwah.cpp:249
+msgid "Resonance"
+msgstr ""
+
#: effects/Wahwah.cpp:561
msgid "Wah Frequency Offset (%):"
msgstr "اÙÙØ³Øª ÙØ±Ú©Ø§Ùس ÙØ§Ù (Ùª):"
+#: effects/Wahwah.cpp:257
+msgid "Wah frequency offset in percent"
+msgstr ""
+
#: effects/Wahwah.h:34
msgid "Wahwah..."
msgstr "ÙØ§ÙâÙØ§Ù..."
@@ -4438,32 +5834,30 @@ msgstr "در ØØ§Ù اعÙ
Ø§Ù ÙØ§ÙâÙØ§Ù"
msgid "Performing Effect: %s"
msgstr "اعÙ
ا٠جÙÙÙ: %s"
-#: effects/ladspa/LadspaEffect.cpp:173
-msgid ""
-"Sorry, Plug-in Effects cannot be performed on "
-"stereo tracks where the individual channels of "
-"the track do not match."
-msgstr "Ù
ØªØ§Ø³ÙØ§Ù٠جÙÙÙâÙØ§Û Ù
تصÙâØ´ÙÙØ¯Ù ÙÙ
ÛâØªÙØ§ÙÙØ¯ رÙÛ"
-"Ø´ÛØ§Ø±ÙØ§Û Ø§Ø³ØªØ±ÛÙ Ú©Ù Ú©Ø§ÙØ§ÙâÙØ§Û Ù
ستÙÙ Ø¢Ù Ø´ÛØ§Ø± با ÙÙ
"
-"ÙÙ
Ø®ÙØ§ÙÛ ÙØ¯Ø§Ø±ÙØ¯Ø Ø§Ø¬Ø±Ø§ Ø´ÙÙØ¯."
-
-#: effects/ladspa/LadspaEffect.cpp:559 effects/ladspa/LadspaEffect.cpp:567
-#: prefs/QualityPrefs.cpp:72
-msgid "None"
-msgstr "ÙÛÚ"
+#: effects/ladspa/LadspaEffect.cpp:198 effects/lv2/LV2Effect.cpp:213
+msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
+msgstr ""
#: effects/ladspa/LadspaEffect.cpp:561
msgid "Author: "
msgstr "Ù
ؤÙÙ: "
-#: effects/ladspa/LadspaEffect.cpp:601
-msgid "Effect Settings"
-msgstr "ØªÙØ¸ÛÙ
ات جÙÙÙ"
-
#: effects/ladspa/LadspaEffect.cpp:692
msgid "Length (seconds)"
msgstr "Ø·ÙÙ (ب٠ثاÙÛÙ)"
+#: effects/lv2/LV2Effect.cpp:824 effects/lv2/LV2Effect.cpp:827
+msgid "Note length (seconds)"
+msgstr ""
+
+#: effects/lv2/LV2Effect.cpp:835 effects/lv2/LV2Effect.cpp:838
+msgid "Note velocity"
+msgstr ""
+
+#: effects/lv2/LV2Effect.cpp:846 effects/lv2/LV2Effect.cpp:849
+msgid "Note key"
+msgstr ""
+
#: effects/nyquist/Nyquist.cpp:253
msgid "Applying Nyquist Effect..."
msgstr "در ØØ§Ù اعÙ
ا٠جÙÙÙ Nyquist..."
@@ -4477,8 +5871,7 @@ msgid "Enter Nyquist Command: "
msgstr "ÛÚ© ÙØ±Ù
ا٠Nyquist را ÙØ§Ø±Ø¯ Ú©ÙÛØ¯: "
#: effects/nyquist/Nyquist.cpp:412
-msgid ""
-"Sorry, cannot apply effect on stereo tracks where the tracks don't match."
+msgid "Sorry, cannot apply effect on stereo tracks where the tracks don't match."
msgstr "Ù
ØªØ§Ø³ÙØ§ÙÙ ÙÙ
ÛâØªÙØ§Ù جÙÙ٠را بر رÙÛ Ø´ÛØ§Ø±ÙØ§Û Ø§Ø³ØªØ±Û٠ک٠با ÙÙ
ÙÙ
Ø®ÙØ§ÙÛ ÙØ¯Ø§Ø±ÙØ¯Ø Ø§Ø¹Ù
ا٠ÙÙ
ÙØ¯."
#: effects/nyquist/Nyquist.cpp:439
@@ -4501,64 +5894,80 @@ msgstr "Nyquist ØµÙØª بازÙÚ¯Ø±Ø¯Ø§ÙØ¯.\n"
msgid "Nyquist returned too many audio channels.\n"
msgstr "Nyquist تعداد Ø²ÛØ§Ø¯Û Ú©Ø§ÙØ§Ù ØµÙØªÛ Ø¨Ø§Ø²Ú¯Ø±Ø¯Ø§ÙØ¯.\n"
-#: effects/nyquist/Nyquist.cpp:826 effects/nyquist/Nyquist.cpp:990
-msgid "&Debug"
-msgstr "&اشکاÙâØ²Ø¯Ø§ÛÛ"
+#: effects/vamp/VampEffect.cpp:81
+#, c-format
+msgid "Extracting features: %s"
+msgstr ""
-#: export/Export.cpp:135
-msgid ""
-"No tracks are selected! Use Ctrl-A (Select All)\n"
-"Choose Export... to export all tracks."
-msgstr "ÙÛÚ Ø´ÛØ§Ø±Û Ø§ÙØªØ®Ø§Ø¨ ÙØ´Ø¯Ù است! با Ø§Ø³ØªÙØ§Ø¯Ù از Ù
ÙØ§Ø±-Ø´ (Ø§ÙØªØ®Ø§Ø¨ ÙÙ
Ù)\n"
-"Ø¨Ø±Ø§Û ØµØ¯ÙØ± تÙ
اÙ
Ø´ÛØ§Ø±ÙØ§Ø Â«ØµØ¯ÙØ±...» را Ø§ÙØªØ®Ø§Ø¨ Ú©ÙÛØ¯."
+#: effects/vamp/VampEffect.cpp:107
+msgid "Sorry, Vamp Plug-ins cannot be run on stereo tracks where the individual channels of the track do not match."
+msgstr ""
-#: export/Export.cpp:161
-msgid ""
-"Your tracks will be mixed down to two stereo channels in the exported file."
-msgstr "Ø´ÛØ§Ø±ÙØ§Û Ø´Ù
ا بعÙÙØ§Ù Ø¯Ù Ú©Ø§ÙØ§Ù استرÛ٠در پرÙÙØ¯Ù٠صادرشÙÙØ¯Ù Ù
Ûکس Ø®ÙØ§ÙÙØ¯ شد."
+#: effects/vamp/VampEffect.cpp:121
+msgid "Sorry, failed to load Vamp Plug-in."
+msgstr ""
-#: export/Export.cpp:165
-msgid ""
-"Your tracks will be mixed down to a single mono channel in the exported file."
-msgstr "Ø´ÛØ§Ø±ÙØ§Û Ø´Ù
ا بعÙÙØ§Ù ÛÚ© Ú©Ø§ÙØ§Ù Ù
ÙÙ٠در پرÙÙØ¯Ù٠صادرشÙÙØ¯Ù Ù
Ûکس Ø®ÙØ§ÙÙØ¯ شد"
+#: effects/vamp/VampEffect.cpp:207
+msgid "Sorry, Vamp Plug-in failed to initialize."
+msgstr ""
-#: export/Export.cpp:171
-msgid "Advanced Mixing Options"
-msgstr "گزÛÙÙâÙØ§Û Ù¾ÛØ´Ø±ÙتÙÙ Ù
Ûکس"
+#: effects/vamp/VampEffect.cpp:363
+msgid " - Vamp audio analysis plugin"
+msgstr ""
-#: export/Export.cpp:211
-#, c-format
-msgid "Save %s File As:"
-msgstr "Ø°Ø®ÛØ±Ù٠پرÙÙØ¯ÙÙ %s با ÙØ§Ù
:"
+#: effects/vamp/VampEffect.cpp:399
+msgid "Plugin Settings"
+msgstr ""
+
+#: effects/vamp/VampEffect.cpp:418 effects/vamp/VampEffect.cpp:424
+msgid "Program"
+msgstr ""
+
+#: export/Export.cpp:468
+msgid "All the selected audio is muted."
+msgstr ""
+
+#: export/Export.cpp:470
+msgid "All the audio is muted."
+msgstr ""
+
+#: export/Export.cpp:526
+msgid "Export File"
+msgstr ""
+
+#: export/Export.cpp:535
+msgid "&Options..."
+msgstr ""
#: export/Export.cpp:238
msgid "Are you sure you want to save the file as \""
msgstr "Ø¢ÛØ§ Ù
Ø·Ù
Ø¦Ù ÙØ³ØªÛد Ú©Ù Ù
ÛâØ®ÙØ§ÙÛØ¯ پرÙÙØ¯Ù را با Ø°Ø®ÛØ±Ù Ú©ÙÛØ¯ با ÙØ§Ù
\""
-#: export/Export.cpp:276
+#: export/Export.cpp:596
#, c-format
-msgid ""
-"You are about to save a %s file with the name %s.\n"
-"Normally these files end in %s, and some programs will not open files with "
-"nonstandard extensions.\n"
+msgid "You are about to save a %s file with the name \"%s\".\n"
+"\n"
+"Normally these files end in \".%s\", and some programs will not open files with nonstandard extensions.\n"
+"\n"
"Are you sure you want to save the file under this name?"
-msgstr "Ø´Ù
ا در ØØ§Ù Ø°Ø®ÛØ±ÙÙ ÛÚ© پرÙÙØ¯ÙÙ %s با ÙØ§Ù
%s ÙØ³ØªÛد.\n"
-"Ù
عÙ
ÙÙØ§Ù ÙØ§Ù
اÛ٠پرÙÙØ¯ÙâÙØ§ با %s خاتÙ
Ù Ù
ÛâÛØ§Ø¨Ø¯ Ù Ø¨Ø¹Ø¶Û Ø¨Ø±ÙØ§Ù
ÙâÙØ§ اÛ٠پرÙÙØ¯ÙâÙØ§Û Ø¯Ø§Ø±Ø§Û Ù¾Ø³ÙÙØ¯"
-"ØºÛØ± Ø§Ø³ØªØ§ÙØ¯Ø§Ø±Ø¯ باز ÙØ®ÙاÙÙØ¯ کرد.\n"
-"Ø¢ÛØ§ Ù
Ø·Ù
Ø¦Ù ÙØ³ØªÛد Ú©Ù Ù
ÛâØ®ÙØ§ÙÛØ¯ پرÙÙØ¯Ù را ØªØØª اÛÙ ÙØ§Ù
Ø°Ø®ÛØ±Ù Ú©ÙÛØ¯Ø"
+msgstr ""
-#: export/Export.cpp:370 export/Export.cpp:464
+#: export/Export.cpp:617
#, c-format
-msgid "File may be invalid or corrupted: %s"
-msgstr "پرÙÙØ¯Ù Ù
Ù
ک٠است ÙØ§Ù
عتبر ÛØ§ Ù
Ø®Ø¯ÙØ´ باشد: %s"
+msgid "A file named \"%s\" already exists. Replace?"
+msgstr ""
-#: export/Export.cpp:371 export/Export.cpp:465
-msgid "Error exporting file or project"
-msgstr "خطا در ØµØ¯ÙØ± پرÙÙØ¯Ù ÛØ§ پرÙÚÙ"
+#: export/Export.cpp:161
+msgid "Your tracks will be mixed down to two stereo channels in the exported file."
+msgstr "Ø´ÛØ§Ø±ÙØ§Û Ø´Ù
ا بعÙÙØ§Ù Ø¯Ù Ú©Ø§ÙØ§Ù استرÛ٠در پرÙÙØ¯Ù٠صادرشÙÙØ¯Ù Ù
Ûکس Ø®ÙØ§ÙÙØ¯ شد."
-#: export/Export.cpp:410
-msgid "Ogg Vorbis support is not included in this build of Audacity"
-msgstr "در اÛÙ ÙØ³Ø®Ù از Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø§ÙÚ¯ ÙØ±Ø¨Ûس را Ù¾Ø´ØªÛØ¨Ø§ÙÛ ÙÙ
ÛâÚ©ÙØ¯"
+#: export/Export.cpp:165
+msgid "Your tracks will be mixed down to a single mono channel in the exported file."
+msgstr "Ø´ÛØ§Ø±ÙØ§Û Ø´Ù
ا بعÙÙØ§Ù ÛÚ© Ú©Ø§ÙØ§Ù Ù
ÙÙ٠در پرÙÙØ¯Ù٠صادرشÙÙØ¯Ù Ù
Ûکس Ø®ÙØ§ÙÙØ¯ شد"
+
+#: export/Export.cpp:171
+msgid "Advanced Mixing Options"
+msgstr "گزÛÙÙâÙØ§Û Ù¾ÛØ´Ø±ÙتÙÙ Ù
Ûکس"
#: export/Export.cpp:632
#, c-format
@@ -4573,15 +5982,44 @@ msgstr " â ÚÙ¾"
msgid " - Right"
msgstr " â Ø±Ø§Ø³Øª"
+#: export/Export.cpp:1082
+msgid "Mixer Panel"
+msgstr ""
+
#: export/Export.cpp:775 export/Export.cpp:829
#, c-format
msgid "Output Channels: %2d"
msgstr "Ú©Ø§ÙØ§ÙâÙØ§Û Ø®Ø±ÙØ¬Û: %I2d"
-#: export/ExportCL.cpp:113 export/ExportMultiple.cpp:847
-#: export/ExportOGG.cpp:123 export/ExportPCM.cpp:103
-msgid "E&xport"
-msgstr "&ØµØ¯ÙØ±"
+#: export/ExportCL.cpp:55
+msgid "Specify Command Line Encoder"
+msgstr ""
+
+#: export/ExportCL.cpp:68
+msgid "Command Line Export Setup"
+msgstr ""
+
+#: export/ExportCL.cpp:73
+msgid "Command:"
+msgstr ""
+
+#: export/ExportCL.cpp:78
+msgid "Show output"
+msgstr ""
+
+#: export/ExportCL.cpp:85
+#, c-format
+msgid "Data will be piped to standard in. \"%f\" will be replaced with output filename selected."
+msgstr ""
+
+#: export/ExportCL.cpp:220
+msgid "(external program)"
+msgstr ""
+
+#: export/ExportPCM.cpp:79
+#, c-format
+msgid "Cannot export audio to %s"
+msgstr "ØµØ¯ÙØ± ØµÙØª ب٠%s Ù
Ù
Ú©Ù ÙÛØ³Øª"
#: export/ExportCL.cpp:115
msgid "Exporting the selected audio using command-line encoder"
@@ -4591,6 +6029,569 @@ msgstr "ØµØ¯ÙØ± ØµÙØª Ø§ÙØªØ®Ø§Ø¨âشد٠با Ø§Ø³ØªÙØ§Ø¯Ù از رÙ
زگ
msgid "Exporting the entire project using command-line encoder"
msgstr "ØµØ¯ÙØ± پرÙÚÙ Ø¨Ø·ÙØ± کاÙ
٠با Ø§Ø³ØªÙØ§Ø¯Ù از رÙ
زگذار خط ÙØ±Ù
اÙ"
+#: export/ExportCL.cpp:423
+msgid "Command Output"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:61
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:433
+#, c-format
+msgid "FFmpeg cannot find audio codec 0x%x.\n"
+"Support for this codec is probably not compiled in."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:655
+#, c-format
+msgid "Attempted to export %d channels, but max. channels for selected output format is %d"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:684
+#, c-format
+msgid "Exporting selected audio as %s"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:685
+#, c-format
+msgid "Exporting entire file as %s"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:748 export/ExportMP3.cpp:1777
+msgid "Invalid sample rate"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:761
+#, c-format
+msgid "The project sample rate (%d) is not supported by the current output\n"
+"file format. "
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:764
+#, c-format
+msgid "The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
+"supported by the current output file format. "
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:767 export/ExportMP3.cpp:1796
+msgid "You may resample to one of the rates below."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:795 export/ExportMP3.cpp:1819
+msgid "Sample Rates"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:93
+msgid "Specify AC3 Options"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:112
+msgid "AC3 Export Setup"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:182 prefs/FileFormatPrefs.cpp:207
+msgid "Bit Rate:"
+msgstr "ÙØ±Ø® Ø¨ÛØª:"
+
+#: export/ExportFFmpegDialogs.cpp:157
+msgid "Specify AAC Options"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:168
+msgid "AAC Export Setup"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:172 export/ExportFFmpegDialogs.cpp:929
+#: export/ExportOGG.cpp:84
+msgid "Quality:"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:211
+msgid "Specify AMR-NB Options"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:230
+msgid "AMR-NB Export Setup"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:275
+msgid "Specify AMR-WB Options"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:294
+msgid "AMR-WB Export Setup"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:341
+msgid "Specify WMA Options"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:360
+msgid "WMA Export Setup"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:491
+#, c-format
+msgid "Overwrite preset '%s'?"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:492
+msgid "Confirm Overwrite"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:504
+msgid "Please select format before saving a profile"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:512
+msgid "Please select codec before saving a profile"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:582
+#, c-format
+msgid "Preset '%s' does not exist."
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:797
+msgid "Specify Other Options"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:886
+msgid "Preset:"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:887
+msgid "Load Preset"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:888
+msgid "Save Preset"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:889
+msgid "Delete Preset"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:890
+msgid "Import Presets"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:891
+msgid "Export Presets"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:896
+msgid "Format:"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:898
+msgid "Codec:"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:902
+msgid "Not all formats and codecs are compatible. Some parameters (such as bitrate and samplerate) combinations are not compatible with some codecs too."
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:905
+msgid "Format selector:"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:906
+msgid "Codec selector:"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:908
+msgid "Show All Formats"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:909
+msgid "Show All Codecs"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:916
+msgid "Options"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:105
+msgid "Language:"
+msgstr "زباÙ:"
+
+#: export/ExportFFmpegDialogs.cpp:921
+msgid "ISO 639 3-letter language code\n"
+"Optional\n"
+"empty - automatic"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:923
+msgid "Tag:"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:924
+msgid "Codec tag (FOURCC)\n"
+"Optional\n"
+"empty - automatic"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:927
+msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n"
+"Some codecs may only accept specific values (128k, 192k, 256k etc)\n"
+"0 - automatic\n"
+"Recommended - 192000"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:930
+msgid "Overall quality, used differently by different codecs\n"
+"Required for vorbis\n"
+"0 - automatic\n"
+"-1 - off (use bitrate instead)"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:932
+msgid "Sample Rate:"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:933
+msgid "Sample rate (Hz)\n"
+"0 - don't change sample rate"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:935
+msgid "Cutoff Bandwidth:"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:936
+msgid "Audio cutoff bandwidth (Hz)\n"
+"Optional\n"
+"0 - automatic"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:938
+msgid "Profile:"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:940
+msgid "AAC Profile\n"
+"Low Complexity -default\n"
+"Most players won't play anything other than LC"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:942
+msgid "Use Bit Reservoir"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:945
+msgid "Use Variable Block Length"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:950
+msgid "FLAC options"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:954
+msgid "Compression Level:"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:955
+msgid "Compression level\n"
+"Required for FLAC\n"
+"-1 - automatic\n"
+"min - 0 (fast encoding, large output file)\n"
+"max - 10 (slow encoding, small output file)"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:957
+msgid "Frame Size:"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:958
+msgid "Frame size\n"
+"Optional\n"
+"0 - default\n"
+"min - 16\n"
+"max - 65535"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:960
+msgid "LPC coefficients precision"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:961
+msgid "LPC coefficients precision\n"
+"Optional\n"
+"0 - default\n"
+"min - 1\n"
+"max - 15"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:963
+msgid "Minimal prediction order"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:964
+msgid "Minimal prediction order\n"
+"Optional\n"
+"-1 - default\n"
+"min - 0\n"
+"max - 32 (with LPC) or 4 (without LPC)"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:966
+msgid "Maximal prediction order"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:967
+msgid "Maximal prediction order\n"
+"Optional\n"
+"-1 - default\n"
+"min - 0\n"
+"max - 32 (with LPC) or 4 (without LPC)"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:969
+msgid "Prediction Order Method:"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:971
+msgid "Prediction Order Method\n"
+"Estimate - fastest, lower compression\n"
+"Log search - slowest, best compression\n"
+"Full search - default"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:973
+msgid "Minimal partition order"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:974
+msgid "Minimal partition order\n"
+"Optional\n"
+"-1 - default\n"
+"min - 0\n"
+"max - 8"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:976
+msgid "Maximal partition order"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:977
+msgid "Maximal partition order\n"
+"Optional\n"
+"-1 - default\n"
+"min - 0\n"
+"max - 8"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:979
+msgid "Use LPC"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:986
+msgid "MPEG container options"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:990
+msgid "Mux Rate:"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:991
+msgid "Maximum bit rate of the multiplexed stream\n"
+"Optional\n"
+"0 - default"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:993
+msgid "Packet Size:"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:994
+msgid "Packet size\n"
+"Optional\n"
+"0 - default"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:1209
+msgid "You can't delete a preset without name"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:1213
+#, c-format
+msgid "Delete preset '%s'?"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:1232
+msgid "You can't save a preset without name"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:1272
+msgid "Select xml file with presets to import"
+msgstr ""
+
+#: prefs/KeyConfigPrefs.cpp:198
+msgid "XML files (*.xml)|*.xml|All files (*.*)|*.*"
+msgstr "پرÙÙØ¯ÙâÙØ§Û XML (*.xml)|*.xml|تÙ
اÙ
پرÙÙØ¯ÙâÙØ§ (*.*)|*.*"
+
+#: export/ExportFFmpegDialogs.cpp:1292
+msgid "Select xml file to export presets into"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:1363
+msgid "Failed to guess format"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:1405
+msgid "Failed to find the codec"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.h:54
+msgid "M4A (AAC) Files (FFmpeg)"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.h:55
+msgid "AC3 Files (FFmpeg)"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.h:56
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.h:58
+msgid "WMA (version 2) Files (FFmpeg)"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.h:59
+msgid "Custom FFmpeg Export"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.h:374
+msgid "LTP"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.h:374
+msgid "Low Complexity"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.h:374
+msgid "Main profile"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.h:677
+msgid "2-level"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.h:677
+msgid "4-level"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.h:677
+msgid "8-level"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.h:677
+msgid "Estimate"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.h:677
+msgid "Full search"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.h:677
+msgid "Log search"
+msgstr ""
+
+#: export/ExportFLAC.cpp:67
+msgid "Specify FLAC Options"
+msgstr ""
+
+#: export/ExportFLAC.cpp:79
+msgid "0 (fastest)"
+msgstr ""
+
+#: export/ExportFLAC.cpp:80
+msgid "1"
+msgstr ""
+
+#: export/ExportFLAC.cpp:81
+msgid "2"
+msgstr ""
+
+#: export/ExportFLAC.cpp:82
+msgid "3"
+msgstr ""
+
+#: export/ExportFLAC.cpp:83
+msgid "4"
+msgstr ""
+
+#: export/ExportFLAC.cpp:84
+msgid "5"
+msgstr ""
+
+#: export/ExportFLAC.cpp:85
+msgid "6"
+msgstr ""
+
+#: export/ExportFLAC.cpp:86
+msgid "7"
+msgstr ""
+
+#: export/ExportFLAC.cpp:87
+msgid "8 (best)"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:193
+msgid "16 bit"
+msgstr "Û±Û¶ Ø¨ÛØªÛ"
+
+#: prefs/FileFormatPrefs.cpp:194
+msgid "24 bit"
+msgstr "Û²Û´ Ø¨ÛØªÛ"
+
+#: prefs/FileFormatPrefs.cpp:190
+msgid "FLAC Export Setup"
+msgstr "Ø¨Ø±Ù¾Ø§Ø³Ø§Ø²Û ØµØ¯ÙØ± FLAC"
+
+#: export/ExportFLAC.cpp:99
+msgid "Level:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:197
+msgid "Bit depth:"
+msgstr "عÙ
Ù Ø¨ÛØª:"
+
+#: export/ExportFLAC.cpp:207
+msgid "FLAC Files"
+msgstr ""
+
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
#: export/ExportFLAC.cpp:93
msgid "Exporting the selected audio as FLAC"
msgstr "ØµØ¯ÙØ± ØµÙØª Ø§ÙØªØ®Ø§Ø¨âشد٠بعÙÙØ§Ù FLAC"
@@ -4599,14 +6600,22 @@ msgstr "ØµØ¯ÙØ± ØµÙØª Ø§ÙØªØ®Ø§Ø¨âشد٠بعÙÙØ§Ù FLAC"
msgid "Exporting the entire project as FLAC"
msgstr "ØµØ¯ÙØ± پرÙÚÙ Ø¨Ø·ÙØ± کاÙ
٠بعÙÙØ§Ù FLAC"
+#: export/ExportMP2.cpp:108
+msgid "Specify MP2 Options"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:204
+msgid "MP2 Export Setup"
+msgstr "Ø¨Ø±Ù¾Ø§Ø³Ø§Ø²Û ØµØ¯ÙØ± MP2"
+
+#: export/ExportMP2.cpp:200
+msgid "MP2 Files"
+msgstr ""
+
#: export/ExportMP2.cpp:94
msgid "Cannot export MP2 with this sample rate and bit rate"
msgstr "با ÙØ±Ø® ÙÙ
ÙÙÙâØ¨Ø±Ø¯Ø§Ø±Û Ù ÙØ±Ø® Ø¨ÛØª تعÛÛÙâØ´Ø¯Ù ÙÙ
ÛâØªÙØ§Ù ØµØ¯ÙØ± Ø¨Ù ÙØ§Ùب MP2 را Ø§ÙØ¬Ø§Ù
داد"
-#: export/ExportMP2.cpp:106 export/ExportMP3.cpp:1643
-msgid "Edit the ID3 tags for the MP3 file"
-msgstr "ÙÛØ±Ø§ÛØ´ Ø¨Ø±ÚØ³Ø¨âÙØ§Û ID3 Ø¨Ø±Ø§Û Ù¾Ø±ÙÙØ¯ÙÙ MP3"
-
#: export/ExportMP2.cpp:114 export/ExportMP3.cpp:1632 export/ExportOGG.cpp:55
msgid "Unable to open target file for writing"
msgstr "باز کرد٠پرÙÙØ¯ÙÙ Ù
ÙØµØ¯ Ø¨Ø±Ø§Û ÙÙØ´ØªÙ Ù
Ù
Ú©Ù ÙÛØ³Øª"
@@ -4621,119 +6630,122 @@ msgstr "ØµØ¯ÙØ± ØµÙØª Ø§ÙØªØ®Ø§Ø¨âشد٠با سرعت %Id Ú©ÛÙÙØ¨Ûت
msgid "Exporting entire file at %d kbps"
msgstr "ØµØ¯ÙØ± پرÙÙØ¯Ù Ø¨Ø·ÙØ± کاÙ
٠با سرعت %Id Ú©ÛÙÙØ¨Ûت در ثاÙÛÙ"
-#: export/ExportMP3.cpp:120 export/ExportMP3.cpp:158
-msgid "Export MP3"
-msgstr "ØµØ¯ÙØ± MP3"
+#: export/ExportMP3.cpp:223 export/ExportMP3.cpp:241 export/ExportMP3.cpp:255
+msgid "kbps"
+msgstr ""
-#. i18n-hint: It's asking for the location of a file, for
-#. example, "Where is lame_enc.dll?" - you could translate
-#. "Where would I find the file %s" instead if you want.
-#: export/ExportMP3.cpp:129
-#, c-format
-msgid "Where is %s?"
-msgstr "%s کجاستØ"
+#: export/ExportMP3.cpp:242
+msgid "(Best Quality)"
+msgstr ""
-#: export/ExportMP3.cpp:153
-#, c-format
-msgid ""
-"Audacity was expecting a library named \"%s\". Are you sure you want to "
-"attempt to export MP3 files using \"%s\"?"
-msgstr "Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø¯Ø± ØØ§Ù ØµØ¯ÙØ± کتابخاÙÙâØ§Û Ø¨Ù ÙØ§Ù
«%s» Ø¨ÙØ¯. Ø¢ÛØ§ Ù
Ø·Ù
Ø¦Ù ÙØ³ØªÛد Ú©Ù Ù
ÛâØ®ÙØ§ÙÛØ¯"
-"Ø³Ø¹Û Ú©ÙÛØ¯ پرÙÙØ¯ÙâÙØ§Û MP3 را با Ø§Ø³ØªÙØ§Ø¯Ù از «%s» صادر ÙÙ
اÛÛØ¯Ø"
+#: export/ExportMP3.cpp:243
+msgid "(Smaller files)"
+msgstr ""
-#: export/ExportMP3.cpp:271
-msgid ""
-"Only libmp3lame.so|libmp3lame.so|Primary Shared Object files (*.so)|*.so|"
-"Extended Libraries (*.so*)|*.so*|All Files (*)|*"
-msgstr "ÙÙØ· libmp3lame.so|libmp3lame.so|پرÙÙØ¯ÙâÙØ§Û اصÙÛ Ø§Ø´ÛØ§Ø¡ بÙâØ§Ø´ØªØ±Ø§Ú©âگذاشتÙâØ´Ø¯Ù (*.so)|*.so|"
-"کتابخاÙÙâÙØ§Û گسترشâÛØ§Ùت٠(*.so*)|*.so*|ÙÙ
Ù٠پرÙÙØ¯ÙâÙØ§ (*)|*"
+#: export/ExportMP3.cpp:245
+msgid "Fast"
+msgstr ""
-#. i18n-hint: This message is used on Unix/Linux
-#: export/ExportMP3.cpp:277
-msgid ""
-"Audacity does not export MP3 files directly, but instead uses the \n"
-"freely available LAME library to handle MP3 file encoding. You must \n"
-"obtain libmp3lame.so separately, either by downloading it or building \n"
-"it from the sources, and then locate the file for Audacity. You only \n"
-"need to do this once.\n"
-"\n"
-"Would you like to locate libmp3lame.so now?"
-msgstr "Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø¨Ø·ÙØ± Ù
ستÙÛÙ
ØµØ¯ÙØ± ب٠پرÙÙØ¯ÙÙ MP3 را Ø§ÙØ¬Ø§Ù
ÙÙ
ÛâØ¯ÙØ¯Ø اÙ
ا Ø¨Ù Ø¬Ø§Û Ø¢Ù Ø§Ø²\n"
-"کتابخاÙÙ٠آزاد LAME Ø¨Ø±Ø§Û Ú©Ø§Ø±Ú©Ø±Ø¯Ù Ø¨Ø§ Ú©Ø¯Ú¯Ø°Ø§Ø±Û Ù¾Ø±ÙÙØ¯ÙâÙØ§Û MP3 Ø§Ø³ØªÙØ§Ø¯Ù Ù
ÛâÚ©ÙØ¯. Ø´Ù
ا Ø¨Ø§ÛØ¯\n"
-"libmp3lame.so را از اÛÙØªØ±Ùت Ø¨Ø§Ø±Ú¯ÛØ±Û Ú©ÙÛØ¯ ÛØ§ آ٠را با Ø§Ø³ØªÙØ§Ø¯Ù از Ù
ØªÙ Ø¨Ø±ÙØ§Ù
Ù Ø¨Ø³Ø§Ø²ÛØ¯\n"
-"Ù Ù
ØÙ پرÙÙØ¯Ù را Ø¨Ø±Ø§Û Ø§ÙØ¯Ø§Ø³ÛØªÛ Ù
شخص Ú©ÙÛØ¯. Ø´Ù
ا Ø¨Ø§ÛØ¯ اÛ٠کار را ÙÙØ· ÛÚ© بار Ø§ÙØ¬Ø§Ù
دÙÛØ¯.\n"
-"\n"
-"Ø¢ÛØ§ Ù
ÛâØ®ÙØ§ÙÛØ¯ Ú©Ù ÙÙ
âØ§Ú©ÙÙÙ Ù
ØÙ libmp3lame.so را Ù
شخص Ú©ÙÛØ¯Ø"
+#: export/ExportMP3.cpp:246 export/ExportMP3.cpp:252 prefs/GUIPrefs.cpp:50
+#: prefs/TracksPrefs.cpp:46
+msgid "Standard"
+msgstr ""
-#: export/ExportMP3.cpp:536
-msgid ""
-"Only libmp3lame.dylib|libmp3lame.dylib|Dynamic Libraries (*.dylib)|*.dylib|"
-"All Files (*)|*"
-msgstr "ÙÙØ· libmp3lame.dylib|libmp3lame.dylib|کتابخاÙÙâÙØ§Û Ù¾ÙÛØ§ (*.dylib)|*.dylib"
-"ÙÙ
Ù٠پرÙÙØ¯ÙâÙØ§ (*)|*"
-
-#. i18n-hint: This message is used on Mac OS X. This particular
-#. message must be <= 255 characters. Be brief.
-#: export/ExportMP3.cpp:544
-msgid ""
-"Audacity does not export MP3 files directly, but instead uses LAME, an MP3 "
-"exporting library available separately. See the documentation for more "
-"information.\n"
-"\n"
-"Would you like to locate libmp3lame.dylib now?"
-msgstr "Ø§ÙØ¯Ø§Ø³ÛØªÛ ØµØ¯ÙØ± ب٠پرÙÙØ¯ÙâÙØ§Û MP3 را Ù
ستÙÛÙ
Ø§Ù Ø§ÙØ¬Ø§Ù
ÙÙ
ÛâØ¯ÙØ¯Ø اÙ
ا Ø¨Ù Ø¬Ø§Û Ø¢Ù Ø§Ø² LAME Ú©Ù ÛÚ©"
-"کتابخاÙÙÙ ØµØ¯ÙØ± MP3 است ک٠جداگاÙÙ Ù
ÙØ¬Ùد Ø§Ø³ØªØ Ø§Ø³ØªÙØ§Ø¯Ù Ù
ÛâÚ©ÙØ¯. Ø¨Ø±Ø§Û Ø§Ø·ÙØ§Ø¹Ø§Øª Ø¨ÛØ´ØªØ±"
-"Ù
Ø³ØªÙØ¯Ø§Øª را ببÛÙÛØ¯.\n"
-"\n"
-"Ø¢ÛØ§ Ù
ÛâØ®ÙØ§ÙÛØ¯ Ú©Ù ÙÙ
âØ§Ú©ÙÙÙ Ù
ØÙ libmp3lame.dylib را Ù
شخص Ú©ÙÛØ¯Ø"
+#: export/ExportMP3.cpp:250
+msgid "Insane"
+msgstr ""
-#: export/ExportMP3.cpp:835
-msgid "Only LameLib|LameLib|All Files (*)|*"
-msgstr "ÙÙØ· LameLib|LameLib|ÙÙ
Ù٠پرÙÙØ¯ÙâÙØ§ (*)|*"
+#: export/ExportMP3.cpp:251
+msgid "Extreme"
+msgstr ""
-#. i18n-hint: This message is used on Mac OS X. This particular
-#. message must be <= 255 characters. Be brief.
-#. i18n-hint: This message is used on Mac OS 9. This particular
-#. message must be <= 255 characters. Be brief.
-#: export/ExportMP3.cpp:843 export/ExportMP3.cpp:1165
-msgid ""
-"Audacity does not export MP3 files directly, but instead uses LAME, an MP3 "
-"exporting library available separately. See the documentation for more "
-"information.\n"
-"\n"
-"Would you like to locate LameLib now?"
-msgstr "Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø¨Ø·ÙØ± Ù
ستÙÛÙ
ØµØ¯ÙØ± ب٠پرÙÙØ¯ÙÙ MP3 را Ø§ÙØ¬Ø§Ù
ÙÙ
ÛâØ¯ÙØ¯Ø اÙ
ا Ø¨Ù Ø¬Ø§Û Ø¢Ù Ø§Ø²\n"
-"âLAMEØ ÛÚ© کتابخاÙÙÙ ØµØ¯ÙØ± MP3 ک٠جداگاÙÙ Ù
ÙØ¬Ùد Ø§Ø³ØªØ Ø§Ø³ØªÙØ§Ø¯Ù Ù
ÛâÚ©ÙØ¯. Ø¨Ø±Ø§Û Ø§Ø·ÙØ§Ø¹Ø§Øª Ø¨ÛØ´ØªØ±"
-"Ù
Ø³ØªÙØ¯Ø§Øª را ببÛÙÛØ¯.\n"
-"\n"
-"Ø¢ÛØ§ Ù
ÛâØ®ÙØ§ÙÛØ¯ Ú©Ù ÙÙ
âØ§Ú©ÙÙÙ Ù
ØÙ LameLib را Ù
شخص Ú©ÙÛØ¯Ø"
+#: effects/ClickRemoval.cpp:379 effects/ClickRemoval.cpp:408
+msgid "Medium"
+msgstr "Ù
ØªÙØ³Ø·"
+
+#: export/ExportMP3.cpp:305
+msgid "Specify MP3 Options"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:173
+msgid "MP3 Export Setup"
+msgstr "Ø¨Ø±Ù¾Ø§Ø³Ø§Ø²Û ØµØ¯ÙØ± MP3"
+
+#: export/ExportMP3.cpp:326
+msgid "Bit Rate Mode:"
+msgstr ""
+
+#: export/ExportMP3.cpp:331
+msgid "Preset"
+msgstr ""
+
+#: export/ExportMP3.cpp:332
+msgid "Variable"
+msgstr ""
+
+#: export/ExportMP3.cpp:333
+msgid "Average"
+msgstr ""
+#: export/ExportMP3.cpp:334
+msgid "Constant"
+msgstr ""
+
+#: prefs/QualityPrefs.cpp:42 prefs/QualityPrefs.cpp:43
+msgid "Quality"
+msgstr "Ú©ÛÙÛØª "
+
+#: export/ExportMP3.cpp:379
+msgid "Variable Speed:"
+msgstr ""
+
+#: export/ExportMP3.cpp:386
+msgid "Channel Mode:"
+msgstr ""
+
+#: export/ExportMP3.cpp:391
+msgid "Joint Stereo"
+msgstr ""
+
+#: export/ExportMP3.cpp:392
+msgid "Stereo"
+msgstr ""
+
+#: export/ExportMP3.cpp:536
+msgid "Locate Lame"
+msgstr ""
+
+#: export/ExportMP3.cpp:556
+#, c-format
+msgid "Audacity needs the file %s to create MP3s."
+msgstr ""
+
+#: export/ExportMP3.cpp:578
+msgid "To get a free copy of Lame, click here -->"
+msgstr ""
-#: export/ExportMP3.cpp:1157
-msgid "Only LAMELib|LAMELib|Shared Libraries (*)|*"
-msgstr "ÙÙØ· LAMELib|LAMELib|کتابخاÙÙâÙØ§Û بÙâØ§Ø´ØªØ±Ø§Ú©âگذاشتÙâØ´Ø¯Ù (*)|*"
+#: export/ExportMP3.cpp:1070
+#, c-format
+msgid "You are linking to lame_enc.dll v%d.%d. This version is not compatible with Audacity %d.%d.%d.\n"
+"Please download the latest version of the LAME MP3 library."
+msgstr ""
#: export/ExportMP3.cpp:1407
-msgid ""
-"Only lame_enc.dll|lame_enc.dll|Dynamically Linked Libraries (*.dll)|*.dll|"
-"All Files (*.*)|*"
+msgid "Only lame_enc.dll|lame_enc.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
msgstr "ÙÙØ· lame_enc.dll|lame_enc.dll|کتابخاÙÙâÙØ§Û Ù¾ÛÙÙØ¯Û Ù¾ÙÛØ§ (*.dll)|*.dll|"
-#. i18n-hint: This message is used on Windows.
-#: export/ExportMP3.cpp:1413
-msgid ""
-"Audacity does not export MP3 files directly, but instead uses the\n"
-"freely available LAME library to handle MP3 file encoding. You must\n"
-"obtain lame_enc.dll separately, by downloading the LAME MP3 encoder,and then "
-"locate this file for Audacity. You only need to do this once.\n"
-"\n"
-"Would you like to locate lame_enc.dll now?"
-msgstr "Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø¨Ø·ÙØ± Ù
ستÙÛÙ
ØµØ¯ÙØ± ب٠پرÙÙØ¯ÙÙ MP3 را Ø§ÙØ¬Ø§Ù
ÙÙ
ÛâØ¯ÙØ¯Ø اÙ
ا Ø¨Ù Ø¬Ø§Û Ø¢Ù Ø§Ø²\n"
-"کتابخاÙÙ٠آزاد LAME Ø¨Ø±Ø§Û Ú©Ø§Ø±Ú©Ø±Ø¯Ù Ø¨Ø§ Ú©Ø¯Ú¯Ø°Ø§Ø±Û Ù¾Ø±ÙÙØ¯ÙâÙØ§Û MP3 Ø§Ø³ØªÙØ§Ø¯Ù Ù
ÛâÚ©ÙØ¯. Ø´Ù
ا Ø¨Ø§ÛØ¯\n"
-"âlame_enc.dll را جداگاÙ٠از طرÛÙ Ø¨Ø§Ø±Ú¯ÛØ±Û کدگذار LAME MP3 از اÛÙØªØ±ÙØªØ ØªÙÛÙ ÙÙ
اÛÛØ¯ ٠سپس Ù
ØÙ\n"
-"اÛ٠پرÙÙØ¯Ù را Ø¨Ø±Ø§Û Ø§ÙØ¯Ø§Ø³ÛØªÛ Ù
شخص Ú©ÙÛØ¯. Ø´Ù
ا Ø¨Ø§ÛØ¯ اÛ٠کار را ÙÙØ· ÛÚ© بار Ø§ÙØ¬Ø§Ù
دÙÛØ¯.\n"
-"\n"
-"Ø¢ÛØ§ Ù
ÛâØ®ÙØ§ÙÛØ¯ Ú©Ù ÙÙ
âØ§Ú©ÙÙÙ Ù
ØÙ lame_enc.dll را Ù
شخص Ú©ÙÛØ¯Ø"
+#: export/ExportMP3.cpp:536
+msgid "Only libmp3lame.dylib|libmp3lame.dylib|Dynamic Libraries (*.dylib)|*.dylib|All Files (*)|*"
+msgstr "ÙÙØ· libmp3lame.dylib|libmp3lame.dylib|کتابخاÙÙâÙØ§Û Ù¾ÙÛØ§ (*.dylib)|*.dylibÙÙ
Ù٠پرÙÙØ¯ÙâÙØ§ (*)|*"
+
+#: export/ExportMP3.cpp:1364
+#, fuzzy
+msgid "Only libmp3lame.so.0|libmp3lame.so.0|Primary Shared Object files (*.so)|*.so|Extended Libraries (*.so*)|*.so*|All Files (*)|*"
+msgstr "ÙÙØ· libmp3lame.so|libmp3lame.so|پرÙÙØ¯ÙâÙØ§Û اصÙÛ Ø§Ø´ÛØ§Ø¡ بÙâØ§Ø´ØªØ±Ø§Ú©âگذاشتÙâØ´Ø¯Ù (*.so)|*.so|کتابخاÙÙâÙØ§Û گسترشâÛØ§Ùت٠(*.so*)|*.so*|ÙÙ
Ù٠پرÙÙØ¯ÙâÙØ§ (*)|*"
+
+#: export/ExportMP3.cpp:1500
+msgid "MP3 Files"
+msgstr ""
#: export/ExportMP3.cpp:1615
msgid "Could not open MP3 encoding library!"
@@ -4743,86 +6755,96 @@ msgstr "ÙÙ
ÛâØªÙØ§Ù Ú©ØªØ§Ø¨âØ®Ø§ÙÙ٠رÙ
Ø²Ú¯Ø°Ø§Ø±Û MP3 را باز
msgid "Not a valid or supported MP3 encoding library!"
msgstr "Ú©ØªØ§Ø¨âØ®Ø§ÙÙ٠رÙ
Ø²Ú¯Ø°Ø§Ø±Û MP3 Ù
Ø¹ØªØ¨Ø±Û ÙÛØ³Øª!"
-#: export/ExportMultiple.cpp:271
-msgid ""
-"Audacity needs to know the location of the TOMPG.EXE program.\n"
-"Please download and save the freely available file in any convenient\n"
-"location such as the Plug-Ins subdir of Audacity and let Audacity\n"
-"know about this path. Would you like to help Audacity locate the file now?"
-msgstr "Ø§ÙØ¯Ø§Ø³ÛØªÛ ÙÛØ§Ø² دارد Ú©Ù Ù
ØÙ Ø¨Ø±ÙØ§Ù
ÙÙ TOMPG.EXE را Ø¨Ø¯Ø§ÙØ¯.\n"
-"ÙØ·Ùا٠اÛ٠پرÙÙØ¯Ù٠آزاد را در Ù
ØÙÛ Ù
ÙØ§Ø³Ø¨ ÚÙÙ Ø²ÛØ±Ø´Ø§Ø®ÙÙ Ù
تصÙâØ´ÙÙØ¯ÙâÙØ§Û Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø¨Ø§Ø±Ú¯Ø°Ø§Ø±Û Ú©ÙÛØ¯\n"
-"Ù Ù
Ø³ÛØ± آ٠را Ø¨Ù Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø§Ø·ÙØ§Ø¹ دÙÛØ¯. Ø¢ÛØ§ Ù
ÛâØ®ÙØ§ÙÛØ¯ ÙÙ
âØ§Ú©ÙÙÙ Ø¨Ù Ø§ÙØ¯Ø§Ø³ÛØªÛ Ú©Ù
Ú© Ú©ÙÛØ¯ تا اÛ٠پرÙÙØ¯Ù را Ù¾ÛØ¯Ø§ Ú©ÙØ¯Ø"
+#: export/ExportMP3.cpp:1608
+msgid "Unable to initialize MP3 stream"
+msgstr ""
-#: export/ExportMultiple.cpp:272
-msgid "Export needs TOMPG.EXE PATH"
-msgstr "عÙ
ÙÛØ§Øª ØµØ¯ÙØ± ب٠Ù
Ø³ÛØ± TOMPG.EXE ÙÛØ§Ø²Ù
ÙØ¯ است"
+#: export/ExportMP3.cpp:1652
+#, c-format
+msgid "Exporting selected audio with %s preset"
+msgstr ""
-#: export/ExportMultiple.cpp:278
-msgid "Where is the mp3 encoder TOMPG.EXE located?"
-msgstr "رÙ
زگذار MP3 â«TOMPG.EXE» کجاستØ"
+#: export/ExportMP3.cpp:1653
+#, c-format
+msgid "Exporting entire file with %s preset"
+msgstr ""
-#: export/ExportMultiple.cpp:479
+#: export/ExportMP3.cpp:1658
#, c-format
-msgid "Successfully exported %d files."
-msgstr "عÙ
ÙÛØ§Øª ØµØ¯ÙØ± Ø¨Ø±Ø§Û %Id پرÙÙØ¯Ù با Ù
ÙÙÙÛØª Ø§ÙØ¬Ø§Ù
شد."
+msgid "Exporting selected audio with VBR quality %s"
+msgstr ""
-#: export/ExportMultiple.cpp:480 export/ExportMultiple.cpp:592
-#: export/ExportMultiple.cpp:599 export/ExportMultiple.cpp:684
-msgid "Export Multiple"
-msgstr "ØµØ¯ÙØ± ÚÙØ¯ØªØ§ÛÛ"
+#: export/ExportMP3.cpp:1659
+#, c-format
+msgid "Exporting entire file with VBR quality %s"
+msgstr ""
-#: export/ExportMultiple.cpp:590
+#: export/ExportMP3.cpp:1664
#, c-format
-msgid "Successfully exported %d file(s)."
-msgstr "عÙ
ÙÛØ§Øª ØµØ¯ÙØ± Ø¨Ø±Ø§Û %Id پرÙÙØ¯Ù با Ù
ÙÙÙØª Ø§ÙØ¬Ø§Ù
شد."
+msgid "Exporting selected audio at %d Kbps"
+msgstr ""
-#: export/ExportMultiple.cpp:597
+#: export/ExportMP3.cpp:1665
#, c-format
-msgid "Something went wrong after exporting %d file(s)."
-msgstr "پس از ØµØ¯ÙØ± پرÙÙØ¯ÙÙ %Id Ù
Ø´Ú©ÙÛ Ù¾ÛØ´ Ø¢Ù
د."
+msgid "Exporting entire file at %d Kbps"
+msgstr ""
+
+#: export/ExportMP3.cpp:1699
+#, c-format
+msgid "Error %d returned from MP3 encoder"
+msgstr ""
+
+#: export/ExportMP3.cpp:1790
+#, c-format
+msgid "The project sample rate (%d) is not supported by the MP3\n"
+"file format. "
+msgstr ""
+
+#: export/ExportMP3.cpp:1793
+#, c-format
+msgid "The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
+"supported by the MP3 file format. "
+msgstr ""
+
+#: export/ExportMP3.cpp:1970
+msgid "MP3 export library not found"
+msgstr ""
+
+#: export/ExportMultiple.cpp:480 export/ExportMultiple.cpp:592
+#: export/ExportMultiple.cpp:599 export/ExportMultiple.cpp:684
+msgid "Export Multiple"
+msgstr "ØµØ¯ÙØ± ÚÙØ¯ØªØ§ÛÛ"
#: export/ExportMultiple.cpp:613
-msgid ""
-"If you have more than one Audio Track, you can export each track as a "
-"separate file,\n"
+msgid "If you have more than one Audio Track, you can export each track as a separate file,\n"
"or if you have a Label Track, you can export a new file for each label.\n"
"\n"
-"This project does not have multiple tracks or a Label Track, so you cannot "
-"export multiple files."
+"This project does not have multiple tracks or a Label Track, so you cannot export multiple files."
msgstr "اگر Ø´Ù
ا Ø¨ÛØ´ از ÛÚ© Ø´ÛØ§Ø± ØµÙØªÛ Ø¯Ø§Ø±ÛØ¯Ø Ù
ÛâØªÙØ§ÙÛØ¯ ÙØ± Ø´ÛØ§Ø± را بعÙÙØ§Ù\n"
"ÛÚ© پرÙÙØ¯Ù٠جداگاÙ٠صادر Ú©ÙÛØ¯Ø\n"
"ÛØ§ اگر ÛÚ© Ø´ÛØ§Ø± Ø¨Ø±ÚØ³Ø¨ Ø¯Ø§Ø±ÛØ¯Ø Ù
ÛâØªÙØ§ÙÛØ¯ Ø¨Ø±Ø§Û ÙØ± Ø¨Ø±ÚØ³Ø¨ ÛÚ© پرÙÙØ¯ÙÙ Ø¬Ø¯ÛØ¯ صادر Ú©ÙÛØ¯.\n"
"\n"
-"اÛ٠پرÙÚÙ Ø´ÛØ§Ø±ÙØ§Û Ù
ØªÙØ§Ùت ÛØ§ ÛÚ© Ø´ÛØ§Ø± Ø¨Ø±ÚØ³Ø¨ ÙØ¯Ø§Ø±Ø¯ Ù Ø¨ÙØ§Ø¨Ø±Ø§ÛÙ Ø´Ù
ا ÙÙ
ÛâØªÙØ§ÙÛØ¯ "
-"از اÙ
Ú©Ø§Ù ØµØ¯ÙØ± پرÙÙØ¯ÙâÙØ§Û Ù
تعدد Ø§Ø³ØªÙØ§Ø¯Ù Ú©ÙÛØ¯"
+"اÛ٠پرÙÚÙ Ø´ÛØ§Ø±ÙØ§Û Ù
ØªÙØ§Ùت ÛØ§ ÛÚ© Ø´ÛØ§Ø± Ø¨Ø±ÚØ³Ø¨ ÙØ¯Ø§Ø±Ø¯ Ù Ø¨ÙØ§Ø¨Ø±Ø§ÛÙ Ø´Ù
ا ÙÙ
ÛâØªÙØ§ÙÛØ¯ از اÙ
Ú©Ø§Ù ØµØ¯ÙØ± پرÙÙØ¯ÙâÙØ§Û Ù
تعدد Ø§Ø³ØªÙØ§Ø¯Ù Ú©ÙÛØ¯"
#: export/ExportMultiple.cpp:614
msgid "Can't export multiple files"
msgstr "ØµØ¯ÙØ± را ÙÙ
ÛâØªÙØ§Ù Ø¨Ø±Ø§Û ÚÙØ¯ پرÙÙØ¯Ù Ø§ÙØ¬Ø§Ù
داد"
-#: export/ExportMultiple.cpp:642
-msgid "Edit the ID3 tags for all MP3 files"
-msgstr "ÙÛØ±Ø§ÛØ´ Ø¨Ø±ÚØ³Ø¨âÙØ§Û ID3 Ø¨Ø±Ø§Û ØªÙ
اÙ
پرÙÙØ¯ÙâÙØ§Û MP3"
-
#: export/ExportMultiple.cpp:698
msgid "Export format:"
msgstr "ÙØ§Ùب ØµØ¯ÙØ±:"
+#: export/ExportMultiple.cpp:234
+msgid "Options..."
+msgstr ""
+
#: export/ExportMultiple.cpp:723
msgid "Export location:"
msgstr "Ù
ØÙ ØµØ¯ÙØ±:"
-#: export/ExportMultiple.cpp:729 prefs/DirectoriesPrefs.cpp:92
-msgid "Choose..."
-msgstr "Ø§ÙØªØ®Ø§Ø¨..."
-
-#: export/ExportMultiple.cpp:740
-msgid "MP3 Bit Rate: "
-msgstr "ÙØ±Ø® Ø¨ÛØª MP3: "
-
-#: export/ExportMultiple.cpp:744
-msgid "Force Mono"
-msgstr "اجبار ب٠Ù
ÙÙÙ"
+#: export/ExportMultiple.cpp:243
+msgid "Create"
+msgstr ""
#: export/ExportMultiple.cpp:760
msgid "Split files based on:"
@@ -4840,9 +6862,9 @@ msgstr "Ú¯ÙØ¬Ø§ÙØ¯Ù ØµÙØª ÙØ¨Ù از Ø¨Ø±ÚØ³Ø¨ اÙÙ"
msgid "First file name:"
msgstr "ÙØ§Ù
پرÙÙØ¯Ù٠اÙÙ:"
-#: export/ExportMultiple.cpp:784
-msgid "Tracks"
-msgstr "Ø´ÛØ§Ø±Ùا"
+#: export/ExportMultiple.cpp:277
+msgid "First file name"
+msgstr ""
#: export/ExportMultiple.cpp:794
msgid "Name files:"
@@ -4860,14 +6882,81 @@ msgstr "Ø´Ù
ارÙâÚ¯Ø°Ø§Ø±Û Ù
ØªÙØ§ÙÛ"
msgid "File name prefix:"
msgstr "Ù¾ÛØ´ÙÙØ¯ ÙØ§Ù
پرÙÙØ¯Ù:"
+#: export/ExportMultiple.cpp:324
+msgid "File name prefix"
+msgstr ""
+
#: export/ExportMultiple.cpp:825
msgid "Overwrite existing files"
msgstr "رÙÙÙÛØ³Û پرÙÙØ¯ÙâÙØ§Û Ù
ÙØ¬Ùد"
+#: export/ExportMultiple.cpp:422
+#, c-format
+msgid "\"%s\" successfully created."
+msgstr ""
+
#: export/ExportMultiple.cpp:930
msgid "Choose a location to save the exported files"
msgstr "Ù
کاÙÛ Ø¨Ø±Ø§Û Ø°Ø®ÛØ±ÙâØ³Ø§Ø²Û Ù¾Ø±ÙÙØ¯ÙâÙØ§Û ØµØ§Ø¯Ø±Ø´Ø¯Ù Ø§ÙØªØ®Ø§Ø¨ Ú©ÙÛØ¯"
+#: export/ExportMultiple.cpp:524
+#, c-format
+msgid "Successfully exported the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:527
+#, c-format
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr ""
+
+#: export/ExportMultiple.cpp:570
+#, c-format
+msgid "\"%s\" doesn't exist.\n"
+"\n"
+"Would you like to create it?"
+msgstr ""
+
+#: export/ExportMultiple.cpp:667 export/ExportMultiple.cpp:804
+msgid "Edit metadata"
+msgstr ""
+
+#: export/ExportMultiple.cpp:923
+#, c-format
+msgid "Label %s is not a legal file name. You cannot use any of: %s\n"
+"Use..."
+msgstr ""
+
+#: export/ExportOGG.cpp:64
+msgid "Specify Ogg Vorbis Options"
+msgstr ""
+
+#: export/ExportOGG.cpp:79
+msgid "Ogg Vorbis Export Setup"
+msgstr ""
+
+#: export/ExportOGG.cpp:155
+msgid "Ogg Vorbis Files"
+msgstr ""
+
#: export/ExportOGG.cpp:125
msgid "Exporting the selected audio as Ogg Vorbis"
msgstr "ØµØ¯ÙØ± ØµÙØª Ø§ÙØªØ®Ø§Ø¨âشد٠در ÙØ§Ùب اÙÚ¯ ÙØ±Ø¨Ûس"
@@ -4876,98 +6965,230 @@ msgstr "ØµØ¯ÙØ± ØµÙØª Ø§ÙØªØ®Ø§Ø¨âشد٠در ÙØ§Ùب اÙÚ¯ ÙØ±Ø¨Ûس"
msgid "Exporting the entire project as Ogg Vorbis"
msgstr "ØµØ¯ÙØ± پرÙÚÙ Ø¨Ø·ÙØ± کاÙ
٠در ÙØ§Ùب اÙÚ¯ ÙØ±Ø¨Ûس"
+#: export/ExportPCM.cpp:119
+msgid "Specify Uncompressed Options"
+msgstr ""
+
+#: export/ExportPCM.cpp:189
+msgid "Uncompressed Export Setup"
+msgstr ""
+
+#: export/ExportPCM.cpp:195
+msgid "Header:"
+msgstr ""
+
+#: export/ExportPCM.cpp:199 import/ImportRaw.cpp:376
+#, fuzzy
+msgid "Encoding:"
+msgstr "کدگذارÛ: "
+
+#: export/ExportPCM.cpp:204
+#, fuzzy
+msgid "(Not all combinations of headers and encodings are possible.)"
+msgstr "(تÙ
اÙ
ØªØ±Ú©ÛØ¨Ø§Øª سرآÛÙØ¯Ùا\n"
+"Ù Ø±ÙØ´âÙØ§Û Ú©Ø¯Ú¯Ø°Ø§Ø±Û Ù
Ù
Ú©Ù ÙÛØ³Øª.)"
+
+#: export/ExportPCM.cpp:359
+msgid "Other uncompressed files"
+msgstr ""
+
+#: export/ExportPCM.cpp:377
+msgid "AIFF (Apple) signed 16 bit PCM"
+msgstr ""
+
+#: export/ExportPCM.cpp:388
+msgid "WAV (Microsoft) signed 16 bit PCM"
+msgstr ""
+
+#: export/ExportPCM.cpp:399
+msgid "GSM 6.10 WAV (mobile)"
+msgstr ""
+
#: export/ExportPCM.cpp:73
msgid "Cannot export audio in this format."
msgstr "ØµØ¯ÙØ± ØµÙØª در اÛÙ ÙØ§Ùب Ù
Ù
Ú©Ù ÙÛØ³Øª."
-#: export/ExportPCM.cpp:79
-#, c-format
-msgid "Cannot export audio to %s"
-msgstr "ØµØ¯ÙØ± ØµÙØª ب٠%s Ù
Ù
Ú©Ù ÙÛØ³Øª"
-
-#: export/ExportPCM.cpp:105
+#: export/ExportPCM.cpp:526
#, c-format
-msgid "Exporting the selected audio as a %s file"
-msgstr "ØµØ¯ÙØ± ØµÙØª Ø§ÙØªØ®Ø§Ø¨âشد٠بعÙÙØ§Ù ÛÚ© پرÙÙØ¯ÙÙ %s"
+msgid "Exporting the selected audio as %s"
+msgstr ""
-#: export/ExportPCM.cpp:107
+#: export/ExportPCM.cpp:528
#, c-format
-msgid "Exporting the entire project as a %s file"
-msgstr "ØµØ¯ÙØ± پرÙÚÙ Ø¨Ø·ÙØ± کاÙ
٠بعÙÙØ§Ù ÛÚ© پرÙÙØ¯ÙÙ %s"
+msgid "Exporting the entire project as %s"
+msgstr ""
-#: export/ExportPCM.cpp:140
+#. i18n-hint: %s will be the error message from libsndfile
+#: export/ExportPCM.cpp:564
#, c-format
-msgid "Error (file may not have been written): %hs"
+#, fuzzy
+msgid "Error (file may not have been written): %s"
msgstr "خطا (Ù
Ù
ک٠است در پرÙÙØ¯Ù ÙÙØ´ØªÙ شد٠باشد) : %hs"
+#: export/ExportPCM.cpp:735
+msgid "There are no options for this format.\n"
+msgstr ""
+
+#. i18n-hint: This is pointing users at another possible export format in
+#. * the list. So you should translate the quoted string
+#. * 'Other uncompressed files' exactly the same as you do the same string
+#. * when it comes up on it's own.
+#: export/ExportPCM.cpp:740
+msgid "If you need more control over the export format please use the 'Other uncompressed files' format."
+msgstr ""
+
+#: export/ExportPCM.cpp:745
+msgid "Your file will be exported as a 16-bit AIFF (Apple/SGI) file.\n"
+msgstr ""
+
+#: export/ExportPCM.cpp:750
+msgid "Your file will be exported as a 16-bit WAV (Microsoft) file.\n"
+msgstr ""
+
+#: export/ExportPCM.cpp:755
+msgid "Your file will be exported as a GSM 6.10 WAV file.\n"
+msgstr ""
+
+#: import/Import.cpp:162 import/ImportMP3.cpp:47
+msgid "MP3 files"
+msgstr ""
+
+#: import/Import.cpp:181
+msgid "Select stream(s) to import"
+msgstr ""
+
#: import/Import.cpp:177
#, c-format
msgid "This version of Audacity was not compiled with %s support."
msgstr "اÛÙ ÙØ³Ø®Ù از Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø§Ø² %s Ù¾Ø´ØªÛØ¨Ø§ÙÛ ÙÙ
ÛâÚ©ÙØ¯."
-#: import/Import.cpp:190
-msgid ""
-" is an audio CD file. \n"
-"Audacity does not open this type of file.\n"
-"Try ripping it to a native audio format that Audacity can import."
-msgstr " ÛÚ© پرÙÙØ¯ÙÙ Ø¯ÛØ³Ú© ØµÙØªÛ است.\n"
-"Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø§ÛÙ ÙÙØ¹ از پرÙÙØ¯Ù را باز ÙÙ
ÛâÚ©ÙØ¯.\n"
-"Ø³Ø¹Û Ú©ÙÛØ¯ Ù
ØØªÙÛØ§Øª آ٠را در ÙØ§ÙØ¨Û Ø³Ø§Ø²Ú¯Ø§Ø± استخراج Ú©ÙÛØ¯ تا Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø¨ØªÙØ§Ùد ÙØ§Ø±Ø¯Ø³Ø§Ø²Û را بر رÙÛ Ø¢Ù Ø§ÙØ¬Ø§Ù
Ø¯ÙØ¯."
-
-#: import/Import.cpp:197
-msgid ""
-" is a playlist file.\n"
-"Audacity cannot open this file because it only contains links to other "
-"files.\n"
-"You may be able to open it in a text editor and download the actual audio "
-"files."
-msgstr " ÛÚ© پرÙÙØ¯ÙÙ ÙÙØ±Ø³Øª پخش است.\n"
-"Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø¨Ù Ø¯ÙÛ٠اÛÙک٠اÛ٠پرÙÙØ¯Ù ÙÙØ· Ù¾ÛÙÙØ¯ÙاÛÛ Ø¨Ù Ù¾Ø±ÙÙØ¯ÙâÙØ§Û دÛگر را در بر داردØ\n"
-"ÙÙ
ÛâØªÙØ§Ùد اÛÙ ÙÙØ¹ از پرÙÙØ¯Ù را باز Ú©ÙØ¯.\n"
-"Ù
Ù
ک٠است Ø¨ØªÙØ§ÙÛØ¯ آ٠را در ÛÚ© ÙÛØ±Ø§Ûشگر Ù
ت٠باز Ú©ÙÛØ¯ ٠پرÙÙØ¯ÙâÙØ§Û ØµÙØªÛ اصÙÛ Ø±Ø§ Ø¨Ø§Ø±Ú¯Ø°Ø§Ø±Û ÙÙ
اÛÛØ¯"
-
-#: import/Import.cpp:203
-msgid ""
-" is a Windows Media Audio file. \n"
-"Audacity cannot open this type of file to due to patent restrictions.\n"
-"You need to convert it to a supported audio format."
-msgstr " ÛÚ© پرÙÙØ¯ÙÙ ØµÙØªÛ ÙÛÙØ¯ÙØ²Û Ø§Ø³Øª. \n"
-"Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø¨Ù Ø¯ÙÛÙ Ù
ØØ¯ÙØ¯ÛØªâÙØ§Û Ù
Ø±Ø¨ÙØ· ب٠ثبت اختراعات ÙÙ
ÛâØªÙØ§Ùد اÛÙ ÙÙØ¹ پرÙÙØ¯Ù را باز Ú©ÙØ¯.\n"
-"Ø´Ù
ا Ø¨Ø§ÛØ¯ آ٠را ب٠ÛÚ© ÙØ§Ùب ØµÙØªÛ Ù¾Ø´ØªÛØ¨Ø§ÙÛâØ´Ø¯Ù ØªØ¨Ø¯ÛÙ ÙÙ
اÛÛØ¯."
-
-#: import/Import.cpp:209
-msgid ""
-" is an Advanced Audio Coding file. \n"
-"Audacity cannot open this type of file.\n"
-"You need to convert it to a supported audio format."
-msgstr " ÛÚ© پرÙÙØ¯ÙÙ Ú©Ø¯Ú¯Ø°Ø§Ø±Û ØµÙØª Ù¾ÛØ´Ø±Ùت٠(AAC) است. \n"
-"Ø§ÙØ¯Ø§Ø³ÛØªÛ ÙÙ
ÛâØªÙØ§Ùد اÛÙ ÙÙØ¹ پرÙÙØ¯Ù را باز Ú©ÙØ¯.\n"
-"Ø´Ù
ا Ø¨Ø§ÛØ¯ آ٠را ب٠ÛÚ© ÙØ§Ùب ØµÙØªÛ Ù¾Ø´ØªÛØ¨Ø§ÙÛâØ´Ø¯Ù ØªØ¨Ø¯ÛÙ ÙÙ
اÛÛØ¯."
-
-#: import/Import.cpp:215
-msgid ""
-" is an encrypted audio file, typically from an online music store. \n"
-"Audacity cannot open this type of file due to the encryption.\n"
-"You need to convert it to a supported, unencrypted audio format."
-msgstr " ÛÚ© پرÙÙØ¯ÙÙ ØµÙØªÛ رÙ
زشد٠است. Ù
عÙ
ÙÙØ§Ù اÛÙ ÙÙØ¹ پرÙÙØ¯ÙâÙØ§ از ÛÚ© ÙØ±Ùشگا٠برخط Ù
ÙØ³ÛÙÛ Ø¯Ø±ÛØ§Ùت شدÙâØ§ÙØ¯. \n"
-"Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø¨Ø¯ÙÛ٠رÙ
زگذارÛâØ´Ø¯Ù Ø¨ÙØ¯ÙØ ÙÙ
ÛâØªÙØ§Ùد اÛÙ ÙÙØ¹ پرÙÙØ¯Ù را باز Ú©ÙØ¯.\n"
-"Ø´Ù
ا Ø¨Ø§ÛØ¯ آ٠را ب٠ÛÚ© ÙØ§Ùب ØµÙØªÛ Ù¾Ø´ØªÛØ¨Ø§ÙÛâØ´Ø¯ÙÙ ØºÛØ±Ø±Ù
زگذارÛâØ´Ø¯Ù ØªØ¨Ø¯ÛÙ ÙÙ
اÛÛØ¯."
-
-#: import/Import.cpp:221
-msgid ""
-" is a RealPlayer media file. \n"
-"Audacity cannot open this proprietary format.\n"
-"You need to convert it to a supported audio format."
-msgstr " ÛÚ© پرÙÙØ¯Ù٠رساÙÙâØ§Û RealPlayer است.\n"
-"Ø§ÙØ¯Ø§Ø³ÛØªÛ ÙÙ
ÛâØªÙØ§Ùد اÛÙ ÙØ§Ùب Ø§Ø®ØªØµØ§ØµÛ Ø±Ø§ باز Ú©ÙØ¯.\n"
-"Ø´Ù
ا Ø¨Ø§ÛØ¯ آ٠را ب٠ÛÚ© ÙØ§Ùب ØµÙØªÛ Ù¾Ø´ØªÛØ¨Ø§ÙÛâØ´Ø¯Ù ØªØ¨Ø¯ÛÙ ÙÙ
اÛÛØ¯."
-
-#: import/Import.cpp:226
-msgid ""
-"Audacity did not recognize the type of this file.\n"
-"If it is uncompressed, try importing it using \"Import Raw\""
-msgstr "Ø§ÙØ¯Ø§Ø³ÛØªÛ ÙØªÙØ§ÙØ³Øª ÙÙØ¹ اÛ٠پرÙÙØ¯Ù را Ø´ÙØ§Ø³Ø§ÛÛ Ú©ÙØ¯.\n"
-"در ØµÙØ±ØªÛ ک٠اÛ٠پرÙÙØ¯Ù ÙØ´Ø±Ø¯ÙâØ´Ø¯Ù ÙÛØ³ØªØ Ø³Ø¹Û Ú©ÙÛØ¯ ک٠با Ø§Ø³ØªÙØ§Ø¯Ù از Â«ÙØ±Ùد دادÙ٠خاÙ
» عÙ
ÙÛØ§Øª ÙØ§Ø±Ø¯Ø³Ø§Ø²Û را بر رÙÛ Ø¢Ù Ø§ÙØ¬Ø§Ù
دÙÛØ¯."
+#: import/Import.cpp:247
+#, c-format
+msgid "\"%s\" \n"
+"is a MIDI file, not an audio file. \n"
+"Audacity cannot open this type of file for playing, but you can\n"
+"edit it by clicking File > Import > MIDI."
+msgstr ""
+
+#. i18n-hint: %s will be the filename
+#: import/Import.cpp:257
+#, c-format
+msgid "\"%s\" is an audio CD track. \n"
+"Audacity cannot open audio CDs directly. \n"
+"Extract (rip) the CD tracks to an audio format that \n"
+"Audacity can import, such as WAV or AIFF."
+msgstr ""
+
+#: import/Import.cpp:263
+#, c-format
+msgid "\"%s\" is a playlist file. \n"
+"Audacity cannot open this file because it only contains links to other files. \n"
+"You may be able to open it in a text editor and download the actual audio files."
+msgstr ""
+
+#: import/Import.cpp:268
+#, c-format
+msgid "\"%s\" is a Windows Media Audio file. \n"
+"Audacity cannot open this type of file due to patent restrictions. \n"
+"You need to convert it to a supported audio format, such as WAV or AIFF."
+msgstr ""
+
+#: import/Import.cpp:273
+#, c-format
+msgid "\"%s\" is an Advanced Audio Coding file. \n"
+"Audacity cannot open this type of file. \n"
+"You need to convert it to a supported audio format, such as WAV or AIFF."
+msgstr ""
+
+#: import/Import.cpp:278
+#, c-format
+msgid "\"%s\" is an encrypted audio file. \n"
+"These typically are from an online music store. \n"
+"Audacity cannot open this type of file due to the encryption. \n"
+"Try recording the file into Audacity, or burn it to audio CD then \n"
+"extract the CD track to a supported audio format such as WAV or AIFF."
+msgstr ""
+
+#: import/Import.cpp:283
+#, c-format
+msgid "\"%s\" is a RealPlayer media file. \n"
+"Audacity cannot open this proprietary format. \n"
+"You need to convert it to a supported audio format, such as WAV or AIFF."
+msgstr ""
+
+#: import/Import.cpp:289
+#, c-format
+msgid "\"%s\" is a notes-based file, not an audio file. \n"
+"Audacity cannot open this type of file. \n"
+"Try converting it to an audio file such as WAV or AIFF and \n"
+"then import it, or record it into Audacity."
+msgstr ""
+
+#: import/Import.cpp:295
+#, c-format
+msgid "\"%s\" is a Musepack audio file. \n"
+"Audacity cannot open this type of file. \n"
+"If you think it might be an mp3 file, rename it to end with \".mp3\" \n"
+"and try importing it again. Otherwise you need to convert it to a supported audio \n"
+"format, such as WAV or AIFF."
+msgstr ""
+
+#: import/Import.cpp:301
+#, c-format
+msgid "\"%s\" is a Wavpack audio file. \n"
+"Audacity cannot open this type of file. \n"
+"You need to convert it to a supported audio format, such as WAV or AIFF."
+msgstr ""
+
+#: import/Import.cpp:307
+#, c-format
+msgid "\"%s\" is a Dolby Digital audio file. \n"
+"Audacity cannot currently open this type of file. \n"
+"You need to convert it to a supported audio format, such as WAV or AIFF."
+msgstr ""
+
+#: import/Import.cpp:313
+#, c-format
+msgid "\"%s\" is an Ogg Speex audio file. \n"
+"Audacity cannot currently open this type of file. \n"
+"You need to convert it to a supported audio format, such as WAV or AIFF."
+msgstr ""
+
+#: import/Import.cpp:319
+#, c-format
+msgid "\"%s\" is a video file. \n"
+"Audacity cannot currently open this type of file. \n"
+"You need to extract the audio to a supported format, such as WAV or AIFF."
+msgstr ""
+
+#: import/Import.cpp:324
+#, c-format
+msgid "Audacity did not recognize the type of the file '%s'.\n"
+"If it is uncompressed, try importing it using \"Import Raw\"."
+msgstr ""
+
+#: import/Import.cpp:329
+#, c-format
+msgid "Audacity recognized the type of the file '%s',\n"
+"but was unable to import it."
+msgstr ""
+
+#: import/ImportFFmpeg.cpp:34
+msgid "FFmpeg-compatible files"
+msgstr ""
+
+#: import/ImportFFmpeg.cpp:438
+#, c-format
+msgid "Index[%02x] Codec[%S], Language[%S], Bitrate[%S], Channels[%d], Duration[%d]"
+msgstr ""
+
+#: import/ImportFLAC.cpp:43
+msgid "FLAC files"
+msgstr ""
+
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr ""
#: import/ImportLOF.cpp:172 import/ImportLOF.cpp:222
msgid "List of Files in basic text format"
@@ -4991,21 +7212,29 @@ msgstr "Ù
دت زÙ
Ø§Ù ÙØ§Ù
عتبر در پرÙÙØ¯ÙÙ LOF"
#: import/ImportLOF.cpp:407
msgid "MIDI tracks cannot be offset individually, only audio files can be."
-msgstr
-"Ø´ÛØ§Ø±ÙØ§Û MIDI ÙÙ
ÛâØªÙØ§ÙÙØ¯ Ø¨Ø·ÙØ± Ù
ستÙ٠از Ø§ÙØ³Øª Ø§Ø³ØªÙØ§Ø¯Ù Ú©ÙÙØ¯. ÙÙØ· پرÙÙØ¯ÙâÙØ§Û ØµÙØªÛ Ù
ÛâØªÙØ§ÙÙØ¯ ÚÙÛÙ Ú©ÙÙØ¯. "
+msgstr "Ø´ÛØ§Ø±ÙØ§Û MIDI ÙÙ
ÛâØªÙØ§ÙÙØ¯ Ø¨Ø·ÙØ± Ù
ستÙ٠از Ø§ÙØ³Øª Ø§Ø³ØªÙØ§Ø¯Ù Ú©ÙÙØ¯. ÙÙØ· پرÙÙØ¯ÙâÙØ§Û ØµÙØªÛ Ù
ÛâØªÙØ§ÙÙØ¯ ÚÙÛÙ Ú©ÙÙØ¯. "
#. i18n-hint: You do not need to translate "LOF"
#: import/ImportLOF.cpp:427
msgid "Invalid track offset in LOF file."
msgstr "Ø§ÙØ³Øª Ø´ÛØ§Ø± در پرÙÙØ¯ÙÙ LOF ÙØ§Ù
عتبر است."
-#: import/ImportMIDI.cpp:46
-msgid "Error parsing Allegro file."
-msgstr "خطا در تجرÛÙ٠پرÙÙØ¯ÙÙ Allegro."
+#: import/ImportMIDI.cpp:31
+msgid ": Filename too short."
+msgstr ""
+
+#: import/ImportMIDI.cpp:31 import/ImportMIDI.cpp:39 import/ImportMIDI.cpp:45
+#: import/ImportMIDI.cpp:53
+msgid "Could not open file "
+msgstr ""
-#: import/ImportMIDI.cpp:76
-msgid "Error parsing MIDI file."
-msgstr "خطا در تجزÛ٠پرÙÙØ¯ÙÙ MIDI."
+#: import/ImportMIDI.cpp:39
+msgid ": Incorrect filetype."
+msgstr ""
+
+#: import/ImportOGG.cpp:44
+msgid "Ogg Vorbis files"
+msgstr ""
#: import/ImportOGG.cpp:138
msgid "Media read error"
@@ -5027,6 +7256,23 @@ msgstr "سرآÛÙØ¯ رشتÙÙ Ø¨ÛØªÛ ÙØ§Ù
عتبر است"
msgid "Internal logic fault"
msgstr "ÙÙØµ در Ù
ÙØ·Ù درÙÙÛ"
+#: import/ImportPCM.cpp:66
+msgid "WAV, AIFF, and other uncompressed types"
+msgstr ""
+
+#: import/ImportPlugin.h:135 import/ImportRaw.cpp:210
+#, c-format
+msgid "Importing %s"
+msgstr ""
+
+#: import/ImportQT.cpp:18
+msgid "QuickTime files"
+msgstr ""
+
+#: import/ImportRaw.cpp:212
+msgid "Import Raw"
+msgstr ""
+
#: import/ImportRaw.cpp:277
msgid "Import Raw Data"
msgstr "ÙØ±Ùد دادÙ٠خاÙ
"
@@ -5068,6 +7314,14 @@ msgstr "Û² Ú©Ø§ÙØ§ÙÙ (استرÛÙ)"
msgid "%d Channels"
msgstr "%Id Ú©Ø§ÙØ§ÙÙ"
+#: import/ImportRaw.cpp:379
+msgid "Byte order:"
+msgstr ""
+
+#: import/ImportRaw.cpp:382
+msgid "Channels:"
+msgstr ""
+
#: import/ImportRaw.cpp:386
msgid "Start offset:"
msgstr "Ø§ÙØ³Øª آغاز:"
@@ -5080,34 +7334,54 @@ msgstr "Ù
ÙØ¯Ø§Ø±Û Ú©Ù Ø¨Ø§ÛØ¯ ÙØ§Ø±Ø¯ Ø´ÙØ¯:"
msgid "Sample rate:"
msgstr "ÙØ±Ø® ÙÙ
ÙÙÙâØ¨Ø±Ø¯Ø§Ø±Û:"
-#: prefs/AudioIOPrefs.cpp:41 prefs/AudioIOPrefs.cpp:42
-msgid "Audio I/O"
-msgstr "ÙØ±ÙدÛ/Ø®Ø±ÙØ¬Û صدا"
+#: ondemand/ODComputeSummaryTask.h:47
+msgid "Import complete. Calculating waveform"
+msgstr ""
-#: prefs/AudioIOPrefs.cpp:100
-msgid "1 (Mono)"
-msgstr "Û± (Ù
ÙÙÙ)"
+#: ondemand/ODDecodeTask.h:61
+msgid "Decoding Waveform"
+msgstr ""
-#: prefs/AudioIOPrefs.cpp:101
-msgid "2 (Stereo)"
-msgstr "Û² (استرÛÙ)"
+#: ondemand/ODWaveTrackTaskQueue.cpp:327
+#, c-format
+msgid "%s %2.0f%% complete. Click to change task focal point."
+msgstr ""
-#: prefs/AudioIOPrefs.cpp:115
-msgid "Playback"
-msgstr "پخش"
+#: prefs/BatchPrefs.cpp:53 prefs/BatchPrefs.cpp:54
+msgid "Batch"
+msgstr "دستÙâØ§Û"
-#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
-#: toolbars/DeviceToolBar.cpp:54
-msgid "Device"
-msgstr "دستگاÙ"
+#: prefs/BatchPrefs.cpp:75 prefs/GUIPrefs.cpp:70
+msgid "Behaviors"
+msgstr "Ø±ÙØªØ§Ø±Ùا"
+
+#: prefs/BatchPrefs.cpp:78
+msgid "&Don't apply effects in batch mode"
+msgstr ""
+
+#: prefs/BatchPrefs.cpp:83
+msgid "Cl&eanSpeech Mode (Customized GUI)"
+msgstr "ØØ§Ùت Ù¾Ø§Ú©Ø³Ø§Ø²Û &Ú¯ÙØªØ§Ø± (رابط Ú©Ø§Ø±Ø¨Ø±Û Ú¯Ø±Ø§ÙÛÚ©Û Ø³ÙØ§Ø±Ø´Û شدÙ)"
+
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:33 prefs/GUIPrefs.cpp:34
+msgid "Interface"
+msgstr "ÙØ§Ø³Ø·"
+
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
+msgstr ""
#: prefs/AudioIOPrefs.cpp:122
msgid "Using:"
msgstr "با Ø§Ø³ØªÙØ§Ø¯Ù از:"
-#: prefs/AudioIOPrefs.cpp:123
-msgid "Portaudio v"
-msgstr "Portaudio v"
+#: prefs/AudioIOPrefs.cpp:115
+msgid "Playback"
+msgstr "پخش"
#: prefs/AudioIOPrefs.cpp:133
msgid "Recording"
@@ -5117,101 +7391,13 @@ msgstr "در ØØ§Ù ضبط"
msgid "Channels"
msgstr "Ú©Ø§ÙØ§ÙâÙØ§"
-#: prefs/AudioIOPrefs.cpp:145
-msgid "Playthrough"
-msgstr "ضبط ٠پخش ÙÙ
زÙ
اÙ"
-
-#: prefs/AudioIOPrefs.cpp:147
-msgid "&Play other tracks while recording new one"
-msgstr "&پخش Ø´ÛØ§Ø±ÙØ§Û Ø¯Ûگر در ØØ§ÙÛ Ú©Ù ÛÚ© Ø´ÛØ§Ø± Ø¬Ø¯ÛØ¯ ضبط Ù
ÛâØ´ÙØ¯"
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "&Hardware Playthrough (Play new track while recording it)"
-msgstr "ضبط ٠پخش ÙÙ
زÙ
ا٠&Ø³Ø®ØªâØ§ÙØ²Ø§Ø±Û (Ø´ÛØ§Ø± Ø¬Ø¯ÛØ¯ را ÙÙ
ا٠زÙ
اÙÛ Ú©Ù Ø¶Ø¨Ø· Ù
ÛâØ´ÙØ¯ پخش Ù
ÛâÚ©ÙØ¯)"
-
-#: prefs/AudioIOPrefs.cpp:153
-msgid "&Software Playthrough (Play new track while recording it)"
-msgstr "ضبط ٠پخش ÙÙ
زÙ
ا٠&ÙØ±Ù
âØ§ÙØ²Ø§Ø±Û (Ø´ÛØ§Ø± Ø¬Ø¯ÛØ¯ را ÙÙ
ا٠زÙ
اÙÛ Ú©Ù Ø¶Ø¨Ø· Ù
ÛâØ´ÙØ¯ پخش Ù
ÛâÚ©ÙØ¯)"
-
-#: prefs/AudioIOPrefs.cpp:158
-msgid "Cut Preview"
-msgstr "Ù¾ÛØ´âÙÙ
Ø§ÛØ´ برش"
-
-#: prefs/AudioIOPrefs.cpp:161
-msgid "Play before cut region:"
-msgstr "پخش Ù¾ÛØ´ از برش ÙØ§ØÛÙ:"
-
-#: prefs/AudioIOPrefs.cpp:163
-msgid "Play after cut region:"
-msgstr "پخش پس از برش ÙØ§ØÛÙ:"
-
-#: prefs/AudioIOPrefs.cpp:168
-msgid "Latency"
-msgstr "ÙÙÙØªÚ¯Û"
-
-#: prefs/AudioIOPrefs.cpp:174
-msgid "Audio to buffer:"
-msgstr "ØµÙØªÛ Ú©Ù Ø¨Ø§ÛØ¯ Ù
ÛØ§ÙâÚ¯ÛØ±Û Ø´ÙØ¯:"
-
-#: prefs/AudioIOPrefs.cpp:175 prefs/AudioIOPrefs.cpp:178
-msgid "milliseconds"
-msgstr "Ù
ÛÙÛâØ«Ø§ÙÛÙ"
-
-#: prefs/AudioIOPrefs.cpp:177
-msgid "Latency correction:"
-msgstr "Ø§ØµÙØ§Ø ÙÙÙØªÚ¯Û:"
-
-#: prefs/AudioIOPrefs.cpp:184
-msgid "Seek Time"
-msgstr "زÙ
ا٠پرش"
-
-#: prefs/AudioIOPrefs.cpp:187
-msgid "Short period:"
-msgstr "Ø¯ÙØ±Ù Ú©ÙØªØ§Ù:"
-
-#: prefs/AudioIOPrefs.cpp:189
-msgid "Long period:"
-msgstr "Ø¯ÙØ±Ù٠بÙÙØ¯:"
-
-#: prefs/AudioIOPrefs.cpp:194
-msgid "Effects Preview"
-msgstr "Ù¾ÛØ´âÙÙ
Ø§ÛØ´ جÙÙÙâÙØ§"
-
-#: prefs/AudioIOPrefs.cpp:197
-msgid "Play when previewing:"
-msgstr "پخش در ØÛÙ Ù¾ÛØ´âÙÙ
Ø§ÛØ´:"
-
-#: prefs/BatchPrefs.cpp:53 prefs/BatchPrefs.cpp:54
-msgid "Batch"
-msgstr "دستÙâØ§Û"
-
-#: prefs/BatchPrefs.cpp:75 prefs/GUIPrefs.cpp:70
-msgid "Behaviors"
-msgstr "Ø±ÙØªØ§Ø±Ùا"
-
-#: prefs/BatchPrefs.cpp:77
-msgid "&Batch debug mode"
-msgstr "ØØ§Ùت اشکاÙâØ²Ø¯Ø§ÛÛ &دستÙâØ§Û"
-
-#: prefs/BatchPrefs.cpp:79
-msgid "&Normalize on load"
-msgstr "&ÙØ±Ù
اÙâØ³Ø§Ø²Û ÙÙگاÙ
بار کردÙ"
-
-#: prefs/BatchPrefs.cpp:81
-msgid "&Prompt to save, even if empty"
-msgstr "&Ø§Ø¹ÙØ§Ù Ø¨Ø±Ø§Û Ø°Ø®ÛØ±Ù Ú©Ø±Ø¯ÙØ ØØªÛ پرÙÙØ¯Ù خاÙÛ Ø¨Ø§Ø´Ø¯"
-
-#: prefs/BatchPrefs.cpp:83
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr "ØØ§Ùت Ù¾Ø§Ú©Ø³Ø§Ø²Û &Ú¯ÙØªØ§Ø± (رابط Ú©Ø§Ø±Ø¨Ø±Û Ú¯Ø±Ø§ÙÛÚ©Û Ø³ÙØ§Ø±Ø´Û شدÙ)"
-
-#: prefs/BatchPrefs.cpp:87 prefs/GUIPrefs.cpp:94
-msgid "Show / Hide"
-msgstr "ÙÙ
Ø§ÛØ´ داد٠/ Ù
Ø®ÙÛ Ú©Ø±Ø¯Ù"
+#: prefs/AudioIOPrefs.cpp:100
+msgid "1 (Mono)"
+msgstr "Û± (Ù
ÙÙÙ)"
-#: prefs/BatchPrefs.cpp:89
-msgid "S&how MP3-ID3 Dialog"
-msgstr "&ÙÙ
Ø§ÛØ´ جعبÙÙ Ù
ØØ§ÙرÙÙ MP3-ID3"
+#: prefs/AudioIOPrefs.cpp:101
+msgid "2 (Stereo)"
+msgstr "Û² (استرÛÙ)"
#: prefs/DirectoriesPrefs.cpp:55 prefs/DirectoriesPrefs.cpp:56
#: prefs/PrefsDialog.cpp:276
@@ -5230,34 +7416,31 @@ msgstr "Ù
ØÙ:"
msgid "Free Space:"
msgstr "ÙØ¶Ø§Û خاÙÛ:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr "Ø°Ø®ÛØ±ÙÙ Ø®ÙØ¯Ú©Ø§Ø±"
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr "Ø°Ø®ÛØ±ÙÙ Ø®ÙØ¯Ú©Ø§Ø± ÛÚ© ÙØ³Ø®Ù از پرÙÚ٠در شاخÙâØ§Û Ø¬Ø¯Ø§Ú¯Ø§ÙÙ"
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save every:"
-msgstr "Ø¯Ø®ÛØ±ÙÙ Ø®ÙØ¯Ú©Ø§Ø± در بازÙ٠زÙ
اÙÛ:"
-
-#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
-msgstr "دÙÛÙÙ"
-
#: prefs/DirectoriesPrefs.cpp:110
msgid "Audio cache"
msgstr "ØØ§ÙظÙÙ ÙÙØ§Ù ØµÙØªÛ"
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Always hold all audio data in memory"
-msgstr "ÙÙ
ÛØ´Ù تÙ
اÙ
دادÙâÙØ§Û Ù
Ø±Ø¨ÙØ· Ø¨Ù ØµÙØª را در ØØ§Ùظ٠ÙÚ¯Ù Ø¯Ø§Ø´ØªÙ Ø´ÙØ¯"
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "Play and/or record using RAM (useful for slow drives)"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
+msgstr ""
#: prefs/DirectoriesPrefs.cpp:121
msgid "Choose a location to place the temporary directory"
msgstr "Ù
ØÙÛ Ø¨Ø±Ø§Û ÙØ±Ø§Ø± داد٠شاخÙÙ Ù
ÙÙØª Ø§ÙØªØ®Ø§Ø¨ Ú©ÙÛØ¯"
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: prefs/DirectoriesPrefs.cpp:165
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -5273,208 +7456,158 @@ msgid "Directory %s is not writable"
msgstr "شاخÙÙ %s ÙØ§Ø¨Ù ÙÙØ´ØªÙ ÙÛØ³Øª"
#: prefs/DirectoriesPrefs.cpp:198
-msgid ""
-"Changes to temporary directory will not take effect until Audacity is "
-"restarted"
+msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "تغÛÛØ±Ø§Øª در شاخÙÙ Ù
ÙÙØª تا زÙ
اÙÛ Ú©Ù Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø±Ø§ÙâØ§ÙØ¯Ø§Ø²Û Ù
جدد ÙØ´ÙØ¯Ø Ø§Ø¹Ù
Ø§Ù ÙØ®ÙاÙÙØ¯ شد"
-#: prefs/FileFormatPrefs.cpp:58 prefs/FileFormatPrefs.cpp:59
-msgid "File Formats"
-msgstr "ÙØ§Ùب پرÙÙØ¯ÙâÙØ§"
-
-#: prefs/FileFormatPrefs.cpp:124
-msgid "When importing uncompressed audio files into Audacity"
-msgstr "در ÙÙگاÙ
ÙØ§Ø±Ø¯Ø³Ø§Ø²Û پرÙÙØ¯ÙâÙØ§Û ØµÙØªÛ ØºÛØ±ÙØ´Ø±Ø¯Ù Ø¨Ù Ø§ÙØ¯Ø§Ø³ÛتÛ"
-
-
-#: prefs/FileFormatPrefs.cpp:127
-msgid "&Make a copy of the file before editing (safer)"
-msgstr "Ù¾ÛØ´ از ÙÛØ±Ø§ÛØ´Ø ÛÚ© &ÙØ³Ø®Ù از پرÙÙØ¯Ù تÙÛÙ Ø´ÙØ¯ (اÙ
ÙâØªØ±)"
-
-#: prefs/FileFormatPrefs.cpp:128
-msgid "&Read directly from the original file (faster)"
-msgstr "Ø®ÙØ§Ùد٠&Ù
ستÙÛÙ
از پرÙÙØ¯Ù٠اصÙÛ (Ø³Ø±ÛØ¹âتر)"
-
-#: prefs/FileFormatPrefs.cpp:132
-msgid "When saving a project that depends on other audio files"
-msgstr "در ÙÙگاÙ
Ø°Ø®ÛØ±ÙâØ³Ø§Ø²Û Ù¾Ø±ÙÚÙâØ§Û Ú©Ù Ø¨Ù Ù¾Ø±ÙÙØ¯ÙâÙØ§Û ØµÙØªÛ دÛگر ÙØ§Ø¨Ø³ØªÚ¯Û دارد"
-
-#: prefs/FileFormatPrefs.cpp:135
-msgid "&Ask user"
-msgstr "از کاربر &Ù¾Ø±Ø³ÛØ¯Ù Ø´ÙØ¯"
-
-#: prefs/FileFormatPrefs.cpp:141
-msgid "When exporting tracks"
-msgstr "زÙ
Ø§Ù ØµØ¯ÙØ± Ø´ÛØ§Ø±Ùا"
-
-#: prefs/FileFormatPrefs.cpp:144
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
-msgstr "&ÙÙ
ÛØ´Ù تÙ
اÙ
Ø´ÛØ§Ø±Ùا Ø¨ØµÙØ±Øª Ú©Ø§ÙØ§ÙâÙØ§Û استرÛÙ ÛØ§ Ù
ÙÙÙ Ù
Ûکس Ø´ÙØ¯"
-
-#: prefs/FileFormatPrefs.cpp:145
-msgid "&Use Advanced Mixing Options"
-msgstr "Ø§Ø³ØªÙØ§Ø¯Ù از ØªÙØ¸ÛÙ
ات &Ù¾ÛØ´Ø±ÙتÙÙ Ù
Ûکس"
-
-#: prefs/FileFormatPrefs.cpp:150
-msgid "Uncompressed Export Format"
-msgstr "ÙØ§Ùب ØµØ¯ÙØ± ØºÛØ±ÙشردÙ"
-
-#: prefs/FileFormatPrefs.cpp:163
-msgid "OGG Export Setup"
-msgstr "ØªÙØ¸ÛÙ
ات ØµØ¯ÙØ± اÙÚ¯"
-
-#: prefs/FileFormatPrefs.cpp:167
-msgid "OGG Quality:"
-msgstr "Ú©ÛÙÛØª اÙÚ¯:"
-
-#: prefs/FileFormatPrefs.cpp:173
-msgid "MP3 Export Setup"
-msgstr "Ø¨Ø±Ù¾Ø§Ø³Ø§Ø²Û ØµØ¯ÙØ± MP3"
-
-#: prefs/FileFormatPrefs.cpp:180
-msgid "MP3 Library Version:"
-msgstr "ÙØ³Ø®ÙÙ Ú©ØªØ§Ø¨âØ®Ø§ÙÙÙ MP3"
+#: prefs/GUIPrefs.cpp:51
+msgid "In Browser"
+msgstr ""
-#: prefs/FileFormatPrefs.cpp:182 prefs/FileFormatPrefs.cpp:207
-msgid "Bit Rate:"
-msgstr "ÙØ±Ø® Ø¨ÛØª:"
+#: prefs/GUIPrefs.cpp:52
+msgid "From Internet"
+msgstr ""
-#: prefs/FileFormatPrefs.cpp:185
-msgid "&Find Library"
-msgstr "&جستجÙÛ Ú©ØªØ§Ø¨âØ®Ø§ÙÙ"
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
+msgstr ""
-#: prefs/FileFormatPrefs.cpp:190
-msgid "FLAC Export Setup"
-msgstr "Ø¨Ø±Ù¾Ø§Ø³Ø§Ø²Û ØµØ¯ÙØ± FLAC"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
+msgstr ""
-#: prefs/FileFormatPrefs.cpp:193
-msgid "16 bit"
-msgstr "Û±Û¶ Ø¨ÛØªÛ"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
+msgstr ""
-#: prefs/FileFormatPrefs.cpp:194
-msgid "24 bit"
-msgstr "Û²Û´ Ø¨ÛØªÛ"
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
+msgstr ""
-#: prefs/FileFormatPrefs.cpp:197
-msgid "Bit depth:"
-msgstr "عÙ
Ù Ø¨ÛØª:"
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
+msgstr ""
-#: prefs/FileFormatPrefs.cpp:204
-msgid "MP2 Export Setup"
-msgstr "Ø¨Ø±Ù¾Ø§Ø³Ø§Ø²Û ØµØ¯ÙØ± MP2"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
+msgstr ""
-#: prefs/FileFormatPrefs.cpp:219
-msgid "MP3 exporting plugin not found"
-msgstr "Ù
تصÙâØ´ÙÙØ¯ÙÙ ØµØ¯ÙØ± MP3 Ù¾ÛØ¯Ø§ ÙØ´Ø¯"
+#: prefs/GUIPrefs.cpp:111
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "âÛ³Û¶- دسÛâØ¨Ù (Ù
ØØ¯ÙدÙÙ Ú©Ù
âØ¹Ù
Ù Ø¨Ø±Ø§Û ÙÛØ±Ø§ÛØ´ Ù
ÙØ¬âÙØ§Û ØµÙØªÛ با داÙ
ÙÙÙ Ø¨Ø§ÙØ§)"
-#: prefs/FileFormatPrefs.cpp:364
-msgid "File Format"
-msgstr "ÙØ§Ùب پرÙÙØ¯Ù"
+#: prefs/GUIPrefs.cpp:112
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "Û´Û¸- دسÛâØ¨ÙØ¯ (Ù
ØØ¯ÙدÙÙ PCM ÙÙ
ÙÙÙâÙØ§Û Û¸ Ø¨ÛØª)"
-#: prefs/FileFormatPrefs.cpp:401
-msgid ""
-"(Not all combinations of headers\n"
-"and encodings are possible.)"
-msgstr "(تÙ
اÙ
ØªØ±Ú©ÛØ¨Ø§Øª سرآÛÙØ¯Ùا\n"
-"Ù Ø±ÙØ´âÙØ§Û Ú©Ø¯Ú¯Ø°Ø§Ø±Û Ù
Ù
Ú©Ù ÙÛØ³Øª.)"
+#: prefs/GUIPrefs.cpp:63
+msgid "-60 dB (PCM range of 10 bit samples)"
+msgstr ""
-#: prefs/FileFormatPrefs.cpp:403
-msgid "Header: "
-msgstr "سرآÛÙØ¯: "
+#: prefs/GUIPrefs.cpp:113
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "Û¹Û¶- دسÛâØ¨Ù (Ù
ØØ¯ÙدÙÙ PCM ÙÙ
ÙÙÙâÙØ§Û Û±Û¶ Ø¨ÛØª)"
-#: prefs/FileFormatPrefs.cpp:404
-msgid "Encoding: "
-msgstr "کدگذارÛ: "
+#: prefs/GUIPrefs.cpp:114
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "Û±Û²Û°- دسÛâØ¨Ù (ØØ¯ ØªÙØ±ÛØ¨Û Ø´ÙÙØ§ÛÛ Ø§ÙØ³Ø§Ù)"
-#: prefs/GUIPrefs.cpp:33 prefs/GUIPrefs.cpp:34
-msgid "Interface"
-msgstr "ÙØ§Ø³Ø·"
+#: prefs/GUIPrefs.cpp:115
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "Û±Û´Ûµ- دسÛâØ¨Ù (Ù
ØØ¯ÙدÙÙ PCM ÙÙ
ÙÙÙâÙØ§Û Û²Û´ Ø¨ÛØª)"
-#: prefs/GUIPrefs.cpp:72
-msgid "&Autoscroll while playing"
-msgstr "&ÙØºØ²Ø´ در ÙÙگاÙ
پخش"
+#: prefs/SpectrumPrefs.cpp:96
+msgid "Display"
+msgstr "ÙÙ
Ø§ÛØ´"
-#: prefs/GUIPrefs.cpp:74
-msgid "Al&ways allow pausing"
-msgstr "&Ù
Ú©Ø« ÙÙ
ÛØ´Ù Ù
Ù
ک٠باشد"
+#: prefs/GUIPrefs.cpp:98
+msgid "Er&gonomic order of audio I/O buttons"
+msgstr ""
-#: prefs/GUIPrefs.cpp:76
-msgid "&Update spectrogram while playing"
-msgstr "&بÙâØ±ÙØ²Ø±Ø³Ø§ÙÛ Ø·ÛÙâÙÙ
ا در ØÛ٠پخش"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
+msgstr ""
-#: prefs/GUIPrefs.cpp:78
-msgid "&Quit Audacity upon closing last window"
-msgstr "&Ø®Ø±ÙØ¬ از Ø§ÙØ¯Ø§Ø³ÛØªÛ ÙÙگاÙ
بست٠آخرÛÙ Ù¾ÙØ¬Ø±Ù"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
+msgstr ""
-#: prefs/GUIPrefs.cpp:80
-msgid "&Dragging of left and right selection edges"
-msgstr "&Ú©Ø´ÛØ¯Ù ÙØ¨ÙâÙØ§Û ÚÙ¾ ٠راست Ø§ÙØªØ®Ø§Ø¨"
+#: prefs/GUIPrefs.cpp:123
+msgid "Help:"
+msgstr ""
-#: prefs/GUIPrefs.cpp:82
-msgid "&Ergonomic order of audio I/O buttons"
-msgstr "ØªØ±ØªÛØ¨ &ارگÙÙÙÙ
ÛÚ© Ú©ÙÛØ¯ÙØ§Û ÙØ±ÙدÛ/Ø®Ø±ÙØ¬Û ØµÙØªÛ"
+#: prefs/GUIPrefs.cpp:136
+msgid "Cl&osing last window quits Audacity"
+msgstr ""
-#: prefs/GUIPrefs.cpp:84
-msgid "Tracks &fit vertically zoomed"
-msgstr "در ØØ§Ùت زÙÙ
Ø Ø´ÛØ§Ø± Ø¨Ø·ÙØ± اÙÙÛ Ø¯Ø± Ù¾ÙØ¬Ø±Ù &Ø¬Ø§Ø¯Ø§Ø¯Ù Ø´ÙØ¯"
+#: prefs/GUIPrefs.cpp:139
+msgid "&Beep on completion of longer activities"
+msgstr ""
-#: prefs/GUIPrefs.cpp:86
-msgid "&Circular track keyboard navigation"
-msgstr "ÙØ§ÙØ´ &ØÙÙÙÛ Ø´ÛØ§Ø± از طرÛÙ ØµÙØÙâÚ©ÙÛØ¯"
+#: prefs/GUIPrefs.cpp:145
+msgid "Modes"
+msgstr ""
-#: prefs/GUIPrefs.cpp:88
-msgid "&Present track number to accessibility aid"
-msgstr "ارائÙÙ Ø´Ù
ارÙÙ Ø´ÛØ§Ø± "
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
+msgstr ""
-#: prefs/GUIPrefs.cpp:90
-msgid "Editing a &clip can move other clips"
-msgstr "ÙÛØ±Ø§ÛØ´ ÛÚ© &Ø¨Ø±ÛØ¯Ù Ù
ÛâØªÙØ§Ù Ø¨Ø±ÛØ¯ÙâÙØ§Û دÛگر را ØØ±Ú©Øª Ø¯ÙØ¯"
+#: prefs/GUIPrefs.cpp:156
+msgid "Don't a&pply effects in batch mode"
+msgstr ""
-#: prefs/GUIPrefs.cpp:96
-msgid "Enable cut &lines"
-msgstr "ÙØ¹Ø§ÙâØ³Ø§Ø²Û &Ø®Ø·ÙØ· برش"
+#: prefs/ImportExportPrefs.cpp:28
+msgid "Import / Export"
+msgstr ""
-#: prefs/GUIPrefs.cpp:98
-msgid "Show warnings about &temp files"
-msgstr "ÙÙ
Ø§ÛØ´ ÙØ´Ø¯Ø§Ø± دربارÙ٠پرÙÙØ¯ÙâÙØ§Û &Ù
ÙÙØª"
+#: prefs/ImportExportPrefs.cpp:53
+msgid "When importing audio files"
+msgstr ""
-#: prefs/GUIPrefs.cpp:103
-msgid "Language"
-msgstr "زباÙ"
+#: prefs/ImportExportPrefs.cpp:57
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
+msgstr ""
-#: prefs/GUIPrefs.cpp:105
-msgid "Language:"
-msgstr "زباÙ:"
+#: prefs/ImportExportPrefs.cpp:59
+msgid "&Read uncompressed audio files directly from the original (faster)"
+msgstr ""
-#: prefs/GUIPrefs.cpp:108
-msgid "Minimum of dB mode display range"
-msgstr "ØØ¯Ø§ÙÙ Ù
ØØ¯ÙدÙÙ ÙÙ
Ø§ÛØ´ ØØ§Ùت دسÛâØ¨Ù"
+#: prefs/ImportExportPrefs.cpp:64
+msgid "&Normalize all tracks in project"
+msgstr ""
-#: prefs/GUIPrefs.cpp:111
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr
-"âÛ³Û¶- دسÛâØ¨Ù (Ù
ØØ¯ÙدÙÙ Ú©Ù
âØ¹Ù
Ù Ø¨Ø±Ø§Û ÙÛØ±Ø§ÛØ´ Ù
ÙØ¬âÙØ§Û ØµÙØªÛ با داÙ
ÙÙÙ Ø¨Ø§ÙØ§)"
+#: prefs/ImportExportPrefs.cpp:70
+msgid "When exporting tracks to an audio file"
+msgstr ""
-#: prefs/GUIPrefs.cpp:112
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "Û´Û¸- دسÛâØ¨ÙØ¯ (Ù
ØØ¯ÙدÙÙ PCM ÙÙ
ÙÙÙâÙØ§Û Û¸ Ø¨ÛØª)"
+#: prefs/FileFormatPrefs.cpp:144
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+msgstr "&ÙÙ
ÛØ´Ù تÙ
اÙ
Ø´ÛØ§Ø±Ùا Ø¨ØµÙØ±Øª Ú©Ø§ÙØ§ÙâÙØ§Û استرÛÙ ÛØ§ Ù
ÙÙÙ Ù
Ûکس Ø´ÙØ¯"
-#: prefs/GUIPrefs.cpp:113
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "Û¹Û¶- دسÛâØ¨Ù (Ù
ØØ¯ÙدÙÙ PCM ÙÙ
ÙÙÙâÙØ§Û Û±Û¶ Ø¨ÛØª)"
+#: prefs/ImportExportPrefs.cpp:76
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+msgstr ""
-#: prefs/GUIPrefs.cpp:114
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "Û±Û²Û°- دسÛâØ¨Ù (ØØ¯ ØªÙØ±ÛØ¨Û Ø´ÙÙØ§ÛÛ Ø§ÙØ³Ø§Ù)"
+#: prefs/ImportExportPrefs.cpp:81
+msgid "S&how Metadata Editor prior to export step"
+msgstr ""
-#: prefs/GUIPrefs.cpp:115
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "Û±Û´Ûµ- دسÛâØ¨Ù (Ù
ØØ¯ÙدÙÙ PCM ÙÙ
ÙÙÙâÙØ§Û Û²Û´ Ø¨ÛØª)"
+#: prefs/ImportExportPrefs.cpp:84
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
+msgstr ""
#: prefs/KeyConfigPrefs.cpp:62 prefs/KeyConfigPrefs.cpp:63
msgid "Keyboard"
msgstr "ØµÙØÙâÚ©ÙÛØ¯"
+#: prefs/KeyConfigPrefs.cpp:95
+msgid "Keyboard preferences currently unavailable."
+msgstr ""
+
+#: prefs/KeyConfigPrefs.cpp:96
+msgid "Open a new project to modify keyboard shortcuts."
+msgstr ""
+
#: prefs/KeyConfigPrefs.cpp:93
msgid "Key Bindings"
msgstr "Ù
ÙÛØ¯Ø³Ø§Ø²Û Ú©ÙÛØ¯Ùا"
@@ -5483,10 +7616,6 @@ msgstr "Ù
ÙÛØ¯Ø³Ø§Ø²Û Ú©ÙÛØ¯Ùا"
msgid "S&et"
msgstr "&تعÛÛÙ"
-#: prefs/KeyConfigPrefs.cpp:114
-msgid "&Clear"
-msgstr "&پاک کردÙ"
-
#: prefs/KeyConfigPrefs.cpp:118
msgid "Note: Pressing Cmd+Q will quit. All other keys are valid."
msgstr "ØªÙØ¬Ù: با زد٠کÙÛØ¯ÙØ§Û Cmd+ض خارج Ù
ÛâØ´ÙØ¯. تÙ
اÙ
Ú©ÙÛØ¯ÙØ§Û Ø¯Ûگر Ù
Ø¹ØªØ¨Ø±ÙØ¯"
@@ -5495,43 +7624,159 @@ msgstr "ØªÙØ¬Ù: با زد٠کÙÛØ¯ÙØ§Û Cmd+ض خارج Ù
ÛâØ´ÙØ¯. تÙ
msgid "&Defaults"
msgstr "&Ù¾ÛØ´âÙØ±Ø¶âÙØ§"
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr ""
+
#: prefs/KeyConfigPrefs.cpp:141
msgid "Key Combination"
msgstr "ØªØ±Ú©ÛØ¨ Ú©ÙÛØ¯âÙØ§"
-#: prefs/KeyConfigPrefs.cpp:161
-msgid "Export Keyboard Shortcuts As:"
-msgstr "ØµØ¯ÙØ± Ù
ÛØ§ÙâØ¨ÙØ±ÙØ§Û ØµÙØÙâÚ©ÙÛØ¯ با ÙØ§Ù
:"
+#: prefs/KeyConfigPrefs.cpp:339 toolbars/EditToolBar.cpp:144
+msgid "Undo"
+msgstr "برگرداÙ"
-#: prefs/KeyConfigPrefs.cpp:179
-msgid "Error saving keyboard shortcuts"
-msgstr "خطا در Ø°Ø®ÛØ±ÙâØ³Ø§Ø²Û Ù
ÛØ§ÙâØ¨ÙØ±ÙØ§Û ØµÙØÙâÚ©ÙÛØ¯"
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr ""
#: prefs/KeyConfigPrefs.cpp:194
msgid "Select an XML file containing Audacity keyboard shortcuts..."
msgstr "ÛÚ© پرÙÙØ¯ÙÙ XML Ú©Ù Ù
ÛØ§ÙâØ¨ÙØ±ÙØ§Û ØµÙØÙâÚ©ÙÛØ¯ Ø§ÙØ¯Ø§Ø³ÛØªÛ Ø¯Ø± آ٠باشد را Ø§ÙØªØ®Ø§Ø¨ Ú©ÙÛØ¯..."
-#: prefs/KeyConfigPrefs.cpp:198
-msgid "XML files (*.xml)|*.xml|All files (*.*)|*.*"
-msgstr "پرÙÙØ¯ÙâÙØ§Û XML (*.xml)|*.xml|تÙ
اÙ
پرÙÙØ¯ÙâÙØ§ (*.*)|*.*"
-
#: prefs/KeyConfigPrefs.cpp:211
msgid "Error loading keyboard shortcuts"
msgstr "خطا در بار کرد٠Ù
ÛØ§ÙâØ¨ÙØ±ÙØ§Û ØµÙØÙâÚ©ÙÛØ¯"
+#: prefs/KeyConfigPrefs.cpp:161
+msgid "Export Keyboard Shortcuts As:"
+msgstr "ØµØ¯ÙØ± Ù
ÛØ§ÙâØ¨ÙØ±ÙØ§Û ØµÙØÙâÚ©ÙÛØ¯ با ÙØ§Ù
:"
+
+#: prefs/KeyConfigPrefs.cpp:179
+msgid "Error saving keyboard shortcuts"
+msgstr "خطا در Ø°Ø®ÛØ±ÙâØ³Ø§Ø²Û Ù
ÛØ§ÙâØ¨ÙØ±ÙØ§Û ØµÙØÙâÚ©ÙÛØ¯"
+
#: prefs/KeyConfigPrefs.cpp:239
#, c-format
-msgid ""
-"The keyboard shortcut '%s' is already assigned to:\n"
+msgid "The keyboard shortcut '%s' is already assigned to:\n"
"\n"
"'%s'"
msgstr "Ú©ÙÛØ¯ Ù
ÛØ§Ùبر «%s» در ØØ§Ù ØØ§Ø¶Ø± اختصاص داد٠شد٠است ب٠:\n"
"\n"
"«%s»"
-#: prefs/KeyConfigPrefs.cpp:339 toolbars/EditToolBar.cpp:144
-msgid "Undo"
-msgstr "برگرداÙ"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:79
+msgid "MP3 Export Library"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:180
+msgid "MP3 Library Version:"
+msgstr "ÙØ³Ø®ÙÙ Ú©ØªØ§Ø¨âØ®Ø§ÙÙÙ MP3"
+
+#: prefs/LibraryPrefs.cpp:89
+msgid "MP3 Library:"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:92 prefs/LibraryPrefs.cpp:124
+msgid "&Locate..."
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:94
+msgid "LAME MP3 Library:"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:97 prefs/LibraryPrefs.cpp:130
+msgid "&Download"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:104
+msgid "FFmpeg Import/Export Library"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:108
+msgid "FFmpeg Library Version:"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:120 prefs/LibraryPrefs.cpp:126
+msgid "FFmpeg Library:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:41 prefs/AudioIOPrefs.cpp:42
+msgid "Audio I/O"
+msgstr "ÙØ±ÙدÛ/Ø®Ø±ÙØ¬Û صدا"
+
+#: prefs/AudioIOPrefs.cpp:123
+msgid "Portaudio v"
+msgstr "Portaudio v"
+
+#: prefs/AudioIOPrefs.cpp:145
+msgid "Playthrough"
+msgstr "ضبط ٠پخش ÙÙ
زÙ
اÙ"
+
+#: prefs/AudioIOPrefs.cpp:147
+msgid "&Play other tracks while recording new one"
+msgstr "&پخش Ø´ÛØ§Ø±ÙØ§Û Ø¯Ûگر در ØØ§ÙÛ Ú©Ù ÛÚ© Ø´ÛØ§Ø± Ø¬Ø¯ÛØ¯ ضبط Ù
ÛâØ´ÙØ¯"
+
+#: prefs/AudioIOPrefs.cpp:150
+msgid "&Hardware Playthrough (Play new track while recording it)"
+msgstr "ضبط ٠پخش ÙÙ
زÙ
ا٠&Ø³Ø®ØªâØ§ÙØ²Ø§Ø±Û (Ø´ÛØ§Ø± Ø¬Ø¯ÛØ¯ را ÙÙ
ا٠زÙ
اÙÛ Ú©Ù Ø¶Ø¨Ø· Ù
ÛâØ´ÙØ¯ پخش Ù
ÛâÚ©ÙØ¯)"
+
+#: prefs/AudioIOPrefs.cpp:153
+msgid "&Software Playthrough (Play new track while recording it)"
+msgstr "ضبط ٠پخش ÙÙ
زÙ
ا٠&ÙØ±Ù
âØ§ÙØ²Ø§Ø±Û (Ø´ÛØ§Ø± Ø¬Ø¯ÛØ¯ را ÙÙ
ا٠زÙ
اÙÛ Ú©Ù Ø¶Ø¨Ø· Ù
ÛâØ´ÙØ¯ پخش Ù
ÛâÚ©ÙØ¯)"
+
+#: prefs/AudioIOPrefs.cpp:158
+msgid "Cut Preview"
+msgstr "Ù¾ÛØ´âÙÙ
Ø§ÛØ´ برش"
+
+#: prefs/AudioIOPrefs.cpp:161
+msgid "Play before cut region:"
+msgstr "پخش Ù¾ÛØ´ از برش ÙØ§ØÛÙ:"
+
+#: prefs/AudioIOPrefs.cpp:163
+msgid "Play after cut region:"
+msgstr "پخش پس از برش ÙØ§ØÛÙ:"
+
+#: prefs/AudioIOPrefs.cpp:168
+msgid "Latency"
+msgstr "ÙÙÙØªÚ¯Û"
+
+#: prefs/AudioIOPrefs.cpp:174
+msgid "Audio to buffer:"
+msgstr "ØµÙØªÛ Ú©Ù Ø¨Ø§ÛØ¯ Ù
ÛØ§ÙâÚ¯ÛØ±Û Ø´ÙØ¯:"
+
+#: prefs/AudioIOPrefs.cpp:177
+msgid "Latency correction:"
+msgstr "Ø§ØµÙØ§Ø ÙÙÙØªÚ¯Û:"
+
+#: prefs/AudioIOPrefs.cpp:184
+msgid "Seek Time"
+msgstr "زÙ
ا٠پرش"
+
+#: prefs/AudioIOPrefs.cpp:187
+msgid "Short period:"
+msgstr "Ø¯ÙØ±Ù Ú©ÙØªØ§Ù:"
+
+#: prefs/AudioIOPrefs.cpp:189
+msgid "Long period:"
+msgstr "Ø¯ÙØ±Ù٠بÙÙØ¯:"
+
+#: prefs/AudioIOPrefs.cpp:194
+msgid "Effects Preview"
+msgstr "Ù¾ÛØ´âÙÙ
Ø§ÛØ´ جÙÙÙâÙØ§"
+
+#: prefs/AudioIOPrefs.cpp:197
+msgid "Play when previewing:"
+msgstr "پخش در ØÛÙ Ù¾ÛØ´âÙÙ
Ø§ÛØ´:"
#: prefs/MousePrefs.cpp:55 prefs/MousePrefs.cpp:56
msgid "Mouse"
@@ -5583,6 +7828,22 @@ msgstr "گسترش Ù
ØØ¯ÙدÙÙ Ø§ÙØªØ®Ø§Ø¨"
msgid "Shift-Left-Click"
msgstr "Ú©ÙÛÚ© ÚÙ¾ با تبدÛÙ"
+#: prefs/MousePrefs.cpp:105
+msgid "Left-Double-Click"
+msgstr ""
+
+#: prefs/MousePrefs.cpp:105
+msgid "Select Clip or Entire Track"
+msgstr ""
+
+#: prefs/MousePrefs.cpp:106
+msgid "Ctrl-Left-Click"
+msgstr ""
+
+#: prefs/MousePrefs.cpp:106
+msgid "Set Selection Point and Play"
+msgstr ""
+
#: prefs/MousePrefs.cpp:102 prefs/MousePrefs.cpp:103 prefs/MousePrefs.cpp:104
#: prefs/MousePrefs.cpp:105
msgid "Zoom"
@@ -5616,6 +7877,22 @@ msgstr "راست Ù Ú©Ø´ÛØ¯Ù"
msgid "same as left-drag"
msgstr "Ù
اÙÙØ¯ ÚÙ¾ Ù Ú©Ø´ÛØ¯Ù"
+#: prefs/MousePrefs.cpp:112
+msgid "Shift-Drag"
+msgstr ""
+
+#: prefs/MousePrefs.cpp:112
+msgid "Zoom out on a Range"
+msgstr ""
+
+#: prefs/MousePrefs.cpp:113
+msgid "Middle-Click"
+msgstr ""
+
+#: prefs/MousePrefs.cpp:113
+msgid "Zoom default"
+msgstr ""
+
#: prefs/MousePrefs.cpp:107
msgid "Time shift clip or move up/down between tracks"
msgstr "تغÛÛØ± Ù
ØÙ زÙ
اÙÛ Ø¨Ø±ÛØ¯Ù در Ø´ÛØ§Ø± ÛØ§ ØØ±Ú©Øª Ø¨Ø§ÙØ§/پاÛÛ٠بÛÙ Ø´ÛØ§Ø±Ùا"
@@ -5690,6 +7967,14 @@ msgstr "ÙØºØ²Ø´ Ø¨Ù Ø¨Ø§ÙØ§ ÛØ§ پاÛÛÙ"
msgid "Wheel-Rotate"
msgstr "ÚØ±Ø®Ø§ÙØ¯Ù ÚØ±Ø® Ù
ÙØ´Û"
+#: prefs/MousePrefs.cpp:132
+msgid "Scroll left or right"
+msgstr ""
+
+#: prefs/MousePrefs.cpp:132
+msgid "Shift-Wheel-Rotate"
+msgstr ""
+
#: prefs/MousePrefs.cpp:124
msgid "Ctrl-Wheel-Rotate"
msgstr "Ù
ÙØ§Ø±-ÚØ±Ø®Ø§ÙØ¯Ù ÚØ±Ø® Ù
ÙØ´Û"
@@ -5698,13 +7983,61 @@ msgstr "Ù
ÙØ§Ø±-ÚØ±Ø®Ø§ÙØ¯Ù ÚØ±Ø® Ù
ÙØ´Û"
msgid "Zoom in or out"
msgstr "زÙÙ
Ø¨Ù Ø¯Ø§Ø®Ù ÛØ§ خارج"
+#: prefs/PlaybackPrefs.cpp:58
+msgid "Length of preview:"
+msgstr ""
+
+#: prefs/PlaybackPrefs.cpp:72
+msgid "Preview before cut region:"
+msgstr ""
+
+#: prefs/PlaybackPrefs.cpp:78
+msgid "Preview after cut region:"
+msgstr ""
+
+#: prefs/PlaybackPrefs.cpp:88
+msgid "Seek Time when playing"
+msgstr ""
+
#: prefs/PrefsDialog.cpp:97
msgid "Audacity Preferences"
msgstr "ØªØ±Ø¬ÛØØ§Øª Ø§ÙØ¯Ø§Ø³ÛتÛ"
-#: prefs/QualityPrefs.cpp:42 prefs/QualityPrefs.cpp:43
-msgid "Quality"
-msgstr "Ú©ÛÙÛØª "
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:132
+msgid "When saving a project that depends on other audio files"
+msgstr "در ÙÙگاÙ
Ø°Ø®ÛØ±ÙâØ³Ø§Ø²Û Ù¾Ø±ÙÚÙâØ§Û Ú©Ù Ø¨Ù Ù¾Ø±ÙÙØ¯ÙâÙØ§Û ØµÙØªÛ دÛگر ÙØ§Ø¨Ø³ØªÚ¯Û دارد"
+
+#: prefs/ProjectsPrefs.cpp:60
+msgid "Always © all audio into project (safest)"
+msgstr ""
+
+#: prefs/ProjectsPrefs.cpp:62
+msgid "&Do not copy any audio"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:135
+msgid "&Ask user"
+msgstr "از کاربر &Ù¾Ø±Ø³ÛØ¯Ù Ø´ÙØ¯"
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr "Ø°Ø®ÛØ±ÙÙ Ø®ÙØ¯Ú©Ø§Ø±"
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr "Ø°Ø®ÛØ±ÙÙ Ø®ÙØ¯Ú©Ø§Ø± ÛÚ© ÙØ³Ø®Ù از پرÙÚ٠در شاخÙâØ§Û Ø¬Ø¯Ø§Ú¯Ø§ÙÙ"
+
+#: prefs/ProjectsPrefs.cpp:79
+msgid "Auto save interval:"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr "دÙÛÙÙ"
#: prefs/QualityPrefs.cpp:73
msgid "Rectangle"
@@ -5730,73 +8063,135 @@ msgstr "ÙØ±Ø® ÙÙ
ÙÙÙâØ¨Ø±Ø¯Ø§Ø±Û Ù¾ÛØ´âÙØ±Ø¶:"
msgid "Default Sample Format:"
msgstr "ÙØ§Ùب ÙÙ
ÙÙÙÙ Ù¾ÛØ´âÙØ±Ø¶:"
-#: prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "Ù
Ø¨Ø¯Ù Ø¨ÙØ§Ø¯Ø±ÙÚ¯ ÙØ±Ø® ÙÙ
ÙÙÙ:"
-
-#: prefs/QualityPrefs.cpp:139
-msgid "High-quality sample rate converter:"
-msgstr "Ù
بد٠کÛÙÛØª Ø¨Ø§ÙØ§Û ÙØ±Ø® ÙÙ
ÙÙÙ:"
-
-#: prefs/QualityPrefs.cpp:142
-msgid "Real-time dither:"
-msgstr "Ù
ÙØ§ÛÙ
âØ³Ø§Ø²Û Ø¨ÙØ§Ø¯Ø±ÙÚ¯:"
-
-#: prefs/QualityPrefs.cpp:145
-msgid "High-quality dither:"
-msgstr "Ù
ÙØ§ÛÙ
âØ³Ø§Ø²Û Ø¨Ø§ Ú©ÛÙÛØª Ø¨Ø§ÙØ§"
-
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
-msgstr "تبدÛÙ"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+#, fuzzy
+msgid "Sample Rate Converter:"
msgstr "Ù
Ø¨Ø¯Ù ÙØ±Ø® ÙÙ
ÙÙÙâ"
#: prefs/QualityPrefs.cpp:164
msgid "Dither"
msgstr "Ù
ÙØ§ÛÙ
âØ³Ø§Ø²Û"
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
-msgstr "Ø¨ÙØ§Ø¯Ø±ÙÚ¯:"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
-msgstr "Ú©ÛÙÛØª Ø¨Ø§ÙØ§"
+#: prefs/RecordingPrefs.cpp:59
+msgid "Overdub: &Play other tracks while recording new one"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:63
+msgid "&Hardware Playthrough: Play new track while recording it"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:67
+msgid "&Software Playthrough: Play new track while recording or monitoring"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:71
+msgid "(uncheck when recording \"stereo mix\")"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:98 prefs/RecordingPrefs.cpp:100
+msgid "Sound Activated Recording"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:109
+msgid "Sound Activation Level (dB):"
+msgstr ""
#: prefs/SpectrumPrefs.cpp:36 prefs/SpectrumPrefs.cpp:37
msgid "Spectrograms"
msgstr "Ø·ÛÙâÙÙ
ا"
-#: prefs/SpectrumPrefs.cpp:72
-msgid "FFT Size"
-msgstr "Ø§ÙØ¯Ø§Ø²ÙÙ FFT"
-
#: prefs/SpectrumPrefs.cpp:75
msgid "8 - most wideband"
msgstr "Û¸ â Ø¨ÛشترÛÙ Ù¾ÙÙØ§Û Ø¨Ø§ÙØ¯"
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:80
msgid "256 - default"
msgstr "Û²ÛµÛ¶ â Ù¾ÛØ´âÙØ±Ø¶"
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:54
+msgid "32768 - most narrowband"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:84
msgid "4096 - most narrowband"
msgstr "Û´Û°Û¹Û¶ â Ú©Ù
ترÛÙ Ù¾ÙÙØ§Û Ø¨Ø§ÙØ¯"
-#: prefs/SpectrumPrefs.cpp:90
-msgid "Window type:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:93
+#, fuzzy
+msgid "Window type"
msgstr "ÙÙØ¹ Ù¾ÙØ¬Ø±Ù:"
-#: prefs/SpectrumPrefs.cpp:96
-msgid "Display"
-msgstr "ÙÙ
Ø§ÛØ´"
+#: prefs/SpectrumPrefs.cpp:113
+msgid "FFT Skip Points"
+msgstr ""
-#: prefs/SpectrumPrefs.cpp:100
-msgid "&Grayscale"
-msgstr "&بدÙ٠رÙÚ¯"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
+msgstr ""
#: prefs/SpectrumPrefs.cpp:103
msgid "Minimum Frequency (Hz):"
@@ -5806,6 +8201,34 @@ msgstr "ÙØ±Ú©Ø§Ùس ØØ¯Ø§ÙÙ (ÙØ±ØªØ²):"
msgid "Maximum Frequency (Hz):"
msgstr "ÙØ±Ú©Ø§Ùس ØØ¯Ø§Ú©Ø«Ø± (ÙØ±ØªØ²):"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:165
+msgid "Minimum Amplitude (dB):"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:171
+msgid "Max. Number of Notes (1..128):"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:178
+msgid "&Find Notes"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:182
+msgid "&Quantize Notes"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:134
msgid "The maximum frequency must be an integer"
msgstr "ÙØ±Ú©Ø§Ùس ØØ¯Ø§Ú©Ø«Ø± Ø¨Ø§ÛØ¯ ÛÚ© عدد صØÛØ Ø¨Ø§Ø´Ø¯"
@@ -5822,10 +8245,57 @@ msgstr "ÙØ±Ú©Ø§Ùس ØØ¯Ø§ÙÙ Ø¨Ø§ÛØ¯ ÛÚ© عدد صØÛØ Ø¨Ø§Ø´Ø¯"
msgid "Minimum frequency must be at least 0 Hz"
msgstr "ÙØ±Ú©Ø§Ùس ØØ¯Ø§ÙÙ Ø¨Ø§ÛØ¯ دست Ú©Ù
Û° ÙØ±ØªØ² باشد"
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:220
+msgid "The minimum amplitude (dB) must be an integer"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:230
+msgid "The maximum number of notes must be in the range 1..128"
+msgstr ""
+
#: prefs/ThemePrefs.cpp:61 prefs/ThemePrefs.cpp:62
msgid "Theme"
msgstr "تÙ
"
+#: prefs/ThemePrefs.cpp:123
+msgid "Info"
+msgstr "Ø§Ø·ÙØ§Ø¹Ø§Øª"
+
+#: prefs/ThemePrefs.cpp:91
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#: prefs/ThemePrefs.cpp:90
msgid "Theme Cache - Images && Color"
msgstr "ØØ§ÙظÙÙ ÙÙØ§Ù تÙ
â ØªØµØ§ÙÛØ± ٠رÙÚ¯"
@@ -5854,60 +8324,101 @@ msgstr "Ø¯Ø®ÛØ±Ù٠پرÙÙØ¯ÙâÙØ§"
msgid "Load Files"
msgstr "بار کرد٠پرÙÙØ¯ÙâÙØ§"
-#: prefs/ThemePrefs.cpp:123
-msgid "Info"
-msgstr "Ø§Ø·ÙØ§Ø¹Ø§Øª"
+#: prefs/TracksPrefs.cpp:47
+msgid "Simple"
+msgstr ""
-#: prefs/ThemePrefs.cpp:126
-msgid ""
-"Themability is an experimental feature.\n"
-"\n"
-msgstr "Themability اÙ
کاÙÛ Ø¢Ø²Ù
Ø§ÛØ´Û است.\n"
-"\n"
+#: prefs/TracksPrefs.cpp:77
+msgid "&Update display while playing"
+msgstr ""
-#: prefs/ThemePrefs.cpp:147
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-msgstr "در ØµÙØ±ØªÛ Ú©Ù Â«Ø¨Ø§Ø±Ú©Ø±Ø¯Ù ØØ§ÙظÙÙ ÙÙØ§Ù تÙ
ب٠ÙÙگاÙ
راÙâØ§ÙØ¯Ø§Ø²Û» تÛÚ© Ø®ÙØ±Ø¯Ù Ø¨Ø§Ø´Ø¯Ø Ø³Ù¾Ø³ \n"
+#: prefs/TracksPrefs.cpp:80
+msgid "Automatically &fit tracks vertically zoomed"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:82
-msgid "Control"
-msgstr "Ú©ÙØªØ±Ù"
+#: prefs/TracksPrefs.cpp:88
+msgid "Default View Mode:"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:175
-msgid "Pause"
-msgstr "Ù
Ú©Ø«"
+#: prefs/TracksPrefs.cpp:101
+msgid "&Select all audio in project, if none selected"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play"
-msgstr "پخش"
+#: prefs/GUIPrefs.cpp:96
+msgid "Enable cut &lines"
+msgstr "ÙØ¹Ø§ÙâØ³Ø§Ø²Û &Ø®Ø·ÙØ· برش"
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for loop-play)"
-msgstr "پخش (تبدÛÙ Ø¨Ø±Ø§Û Ù¾Ø®Ø´ در ØÙÙÙ)"
+#: prefs/TracksPrefs.cpp:107
+msgid "Enable &dragging of left and right selection edges"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:183
-msgid "Stop"
-msgstr "تÙÙÙ"
+#: prefs/TracksPrefs.cpp:110
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:186
-msgid "Skip to Start"
-msgstr "پرش Ø¨Ù Ø´Ø±ÙØ¹"
+#: prefs/GUIPrefs.cpp:90
+msgid "Editing a &clip can move other clips"
+msgstr "ÙÛØ±Ø§ÛØ´ ÛÚ© &Ø¨Ø±ÛØ¯Ù Ù
ÛâØªÙØ§Ù Ø¨Ø±ÛØ¯ÙâÙØ§Û دÛگر را ØØ±Ú©Øª Ø¯ÙØ¯"
-#: toolbars/ControlToolBar.cpp:189
-msgid "Skip to End"
-msgstr "پرش Ø¨Ù Ù¾Ø§ÛØ§Ù"
+#: prefs/TracksPrefs.cpp:121
+msgid "Solo Button:"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr ""
+
+#: Menus.cpp:864
+msgid "Pause"
+msgstr "Ù
Ú©Ø«"
+
+#: Menus.cpp:863
+msgid "Stop"
+msgstr "تÙÙÙ"
#: toolbars/ControlToolBar.cpp:195
msgid "Clean Speech"
msgstr "Ù¾Ø§Ú©Ø³Ø§Ø²Û Ú¯ÙØªØ§Ø±"
+#: toolbars/ControlToolBar.cpp:206
+msgid "Play (Shift for Loop Play)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:210
+msgid "Record (Shift for Append Record)"
+msgstr ""
+
#: toolbars/ControlToolBar.cpp:524 toolbars/ControlToolBar.cpp:776
msgid "Error while opening sound device. "
msgstr "خطا در ÙÙگاÙ
باز کرد٠دستگا٠صدا. "
-#: toolbars/ControlToolBar.cpp:683
-msgid "CleanSpeech only allows recording mono track.\n"
-msgstr "Ù¾Ø§Ú©Ø³Ø§Ø²Û Ú¯ÙØªØ§Ø± ÙÙØ· اجازÙ٠ضبط Ú©Ø±Ø¯Ù Ø´ÛØ§Ø± Ù
ÙÙ٠را Ù
ÛâØ¯ÙØ¯.\n"
+#: toolbars/ControlToolBar.cpp:743
+msgid "Recording in CleanSpeech mode is not possible when a track, or more than one project, is already open."
+msgstr ""
#: toolbars/ControlToolBar.cpp:685
msgid "Recording not permitted"
@@ -5929,6 +8440,10 @@ msgstr "Ø¢Ø±Ø§ÛØ´ بخش Ø¨ÛØ±Ù٠از Ø§ÙØªØ®Ø§Ø¨"
msgid "Silence selection"
msgstr "Ø§ÙØªØ®Ø§Ø¨ Ø³Ú©ÙØª"
+#: toolbars/EditToolBar.cpp:150 toolbars/EditToolBar.cpp:197
+msgid "Link Tracks"
+msgstr ""
+
#: toolbars/EditToolBar.cpp:150
msgid "Zoom In"
msgstr "زÙÙ
ب٠داخÙ"
@@ -5937,29 +8452,21 @@ msgstr "زÙÙ
ب٠داخÙ"
msgid "Zoom Out"
msgstr "زÙÙ
ب٠خارج"
-#: toolbars/EditToolBar.cpp:156
-msgid "Zoom Toggle"
-msgstr "تغÛÛØ± بÛÙ Ø¯Ù ØØ§Ùت زÙÙ
"
-
-#: toolbars/EditToolBar.cpp:160
-msgid "Fit Selection"
-msgstr "Ø¬Ø§Ø¯Ø§Ø¯Ù Ø§ÙØªØ®Ø§Ø¨"
-
#: toolbars/EditToolBar.cpp:160
msgid "Fit selection in window"
msgstr "Ø¬Ø§Ø¯Ø§Ø¯Ù Ø§ÙØªØ®Ø§Ø¨ در Ù¾ÙØ¬Ø±Ù"
#: toolbars/EditToolBar.cpp:162
-msgid "Fit Project"
-msgstr "جاداد٠پرÙÚÙ"
-
-#: toolbars/EditToolBar.cpp:162
msgid "Fit project in window"
msgstr "جاداد٠پرÙÚ٠در Ù¾ÙØ¬Ø±Ù"
-#: toolbars/MeterToolBar.cpp:49
-msgid "Meter"
-msgstr "Ø§ÙØ¯Ø§Ø²ÙâÚ¯ÛØ±"
+#: toolbars/EditToolBar.cpp:160
+msgid "Fit Selection"
+msgstr "Ø¬Ø§Ø¯Ø§Ø¯Ù Ø§ÙØªØ®Ø§Ø¨"
+
+#: toolbars/EditToolBar.cpp:162
+msgid "Fit Project"
+msgstr "جاداد٠پرÙÚÙ"
#: toolbars/MeterToolBar.cpp:79
msgid "Play Meter"
@@ -5985,30 +8492,36 @@ msgstr "Ø§ÙØ¯Ø§Ø²ÙâÚ¯ÛØ± Ø³Ø·Ø ØµØ¯Ø§Û Ø®Ø±ÙØ¬Û"
msgid "Input level meter - click to monitor input"
msgstr "Ø§ÙØ¯Ø§Ø²ÙâÚ¯ÛØ± Ø³Ø·Ø ØµØ¯Ø§Û ÙØ±ÙØ¯Û â Ø¨Ø±Ø§Û Ù¾Ø§ÛØ´ ÙØ±ÙØ¯Û Ú©ÙÛÚ© Ú©ÙÛØ¯"
-#: toolbars/MixerToolBar.cpp:58
-msgid "Mixer"
-msgstr "Ù
Ûکسر"
-
#: toolbars/MixerToolBar.cpp:91
msgid "Output Volume"
msgstr "ØØ¬Ù
ØµØ¯Ø§Û Ø®Ø±ÙØ¬Û"
-#: toolbars/MixerToolBar.cpp:93
-msgid "Slider-Output"
+#: toolbars/MixerToolBar.cpp:92
+#, fuzzy
+msgid "Slider Output"
msgstr "دکÙ
ÙÙ ÙØºØ²ÙدÙ-Ø®Ø±ÙØ¬Û"
#: toolbars/MixerToolBar.cpp:102
msgid "Input Volume"
msgstr "ØØ¬Ù
ØµØ¯Ø§Û ÙØ±ÙدÛ"
-#: toolbars/MixerToolBar.cpp:104
-msgid "Slider-Input"
+#: toolbars/MixerToolBar.cpp:103
+#, fuzzy
+msgid "Slider Input"
msgstr "دکÙ
ÙÙ ÙØºØ²ÙدÙ-ÙØ±ÙدÛ"
#: toolbars/MixerToolBar.cpp:119
msgid "Input Source"
msgstr "Ù
ÙØ¨Ø¹ ÙØ±ÙدÛ"
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:75
msgid "Selection"
msgstr "Ø§ÙØªØ®Ø§Ø¨"
@@ -6021,6 +8534,11 @@ msgstr "ÙØ±Ø® پرÙÚÙ (ÙØ±ØªØ²):"
msgid "Selection Start:"
msgstr "آغاز Ø§ÙØªØ®Ø§Ø¨:"
+#: effects/ToneGen.cpp:300 effects/ToneGen.cpp:338
+#: toolbars/SelectionBar.cpp:135 toolbars/SelectionBar.cpp:225
+msgid "Length"
+msgstr "Ø·ÙÙ"
+
#: toolbars/SelectionBar.cpp:145
msgid "hidden"
msgstr "Ù
Ø®ÙÛ"
@@ -6029,6 +8547,10 @@ msgstr "Ù
Ø®ÙÛ"
msgid "Audio Position:"
msgstr "Ù
Ú©Ø§Ù ØµÙØª:"
+#: toolbars/SelectionBar.cpp:236 toolbars/SelectionBar.cpp:241
+msgid "Snap To"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:224
msgid "Selection "
msgstr "Ø§ÙØªØ®Ø§Ø¨"
@@ -6078,30 +8600,6 @@ msgstr "ÚÙ¾=زÙÙ
Ø Ø±Ø§Ø³Øª=زÙÙ
Ø¨Ù Ø¹ÙØ¨Ø ÙØ³Ø·=عادÛ"
msgid "Click and drag to move a track in time"
msgstr "Ø¨Ø±Ø§Û Ø¬Ø§Ø¨ÙâØ¬Ø§ÛÛ ÛÚ© Ø´ÛØ§Ø± در زÙ
ا٠کÙÛÚ© Ú©ÙÛØ¯ Ù Ø¨Ú©Ø´ÛØ¯"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr "Ø§Ø¨Ø²Ø§Ø±ÙØ§"
-
-#: toolbars/ToolsToolBar.cpp:147 toolbars/ToolsToolBar.cpp:182
-msgid "Selection Tool"
-msgstr "ابزار Ø§ÙØªØ®Ø§Ø¨"
-
-#: toolbars/ToolsToolBar.cpp:148
-msgid "Envelope Tool"
-msgstr "ابزار Ù¾ÙØ´Ø´"
-
-#: toolbars/ToolsToolBar.cpp:149 toolbars/ToolsToolBar.cpp:183
-msgid "Time Shift Tool"
-msgstr "ابزار Ø§ÙØªÙا٠زÙ
اÙ"
-
-#: toolbars/ToolsToolBar.cpp:150 toolbars/ToolsToolBar.cpp:185
-msgid "Zoom Tool"
-msgstr "ابزار زÙÙ
"
-
-#: toolbars/ToolsToolBar.cpp:151 toolbars/ToolsToolBar.cpp:184
-msgid "Draw Tool"
-msgstr "ابزار رسÙ
"
-
#: toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
msgstr "ØØ§Ùت ابزار ÚÙØ¯Ú¯Ø§ÙÙ"
@@ -6110,22 +8608,10 @@ msgstr "ØØ§Ùت ابزار ÚÙØ¯Ú¯Ø§ÙÙ"
msgid "Slide Tool"
msgstr "ابزار ÙØºØ²ÙدÙ"
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr "ابزار ÚÙØ¯Ú¯Ø§ÙÙ"
-
-#: toolbars/TranscriptionToolBar.cpp:81
-msgid "Transcription"
-msgstr "Ø¢ÙØ§ÙÙÛØ³Û"
-
#: toolbars/TranscriptionToolBar.cpp:183
msgid "Play at selected speed"
msgstr "پخش با سرعت Ø§ÙØªØ®Ø§Ø¨âشدÙ"
-#: toolbars/TranscriptionToolBar.cpp:184
-msgid "Play-at-speed"
-msgstr "پخش در سرعت خاص"
-
#: toolbars/TranscriptionToolBar.cpp:190 toolbars/TranscriptionToolBar.cpp:195
msgid "Playback Speed"
msgstr "سرعت پخش"
@@ -6134,74 +8620,38 @@ msgstr "سرعت پخش"
msgid "Adjust left selection to next onset"
msgstr "ØªÙØ¸ÛÙ
Ø§ÙØªØ®Ø§Ø¨ ÚÙ¾ با آغاز بعدÛ"
-#: toolbars/TranscriptionToolBar.cpp:201
-msgid "Left-to-On"
-msgstr "ÚÙ¾ Ø¨Ø±Ø§Û Ø±ÙØ´Ù کردÙ"
-
#: toolbars/TranscriptionToolBar.cpp:203
msgid "Adjust right selection to previous offset"
msgstr "ØªÙØ¸ÛÙ
Ø§ÙØªØ®Ø§Ø¨ راست با Ø§ÙØ³Øª ÙØ¨ÙÛ"
-#: toolbars/TranscriptionToolBar.cpp:204
-msgid "Right-to-Off"
-msgstr "راست Ø¨Ø±Ø§Û Ø®Ø§Ù
ÙØ´ کردÙ"
-
#: toolbars/TranscriptionToolBar.cpp:206
msgid "Adjust left selection to next offset"
msgstr "ØªÙØ¸ÛÙ
Ø§ÙØªØ®Ø§Ø¨ ÚÙ¾ با Ø§ÙØ³Øª بعدÛ"
-#: toolbars/TranscriptionToolBar.cpp:207
-msgid "Left-to-Off"
-msgstr "ÚÙ¾ Ø¨Ø±Ø§Û Ø®Ø§Ù
ÙØ´ کردÙ"
-
#: toolbars/TranscriptionToolBar.cpp:209
msgid "Adjust right selection to previous onset"
msgstr "ØªÙØ¸ÛÙ
Ø§ÙØªØ®Ø§Ø¨ راست با آغاز بعدÛ"
-#: toolbars/TranscriptionToolBar.cpp:210
-msgid "Right-to-On"
-msgstr "راست Ø¨Ø±Ø§Û Ø±ÙØ´Ù کردÙ"
-
#: toolbars/TranscriptionToolBar.cpp:212
msgid "Select region of sound around cursor"
msgstr "ÙØ§ØÛÙ٠صدا در اطرا٠Ù
کاÙâÙÙ
ا Ø§ÙØªØ®Ø§Ø¨ Ø´ÙØ¯"
-#: toolbars/TranscriptionToolBar.cpp:213
-msgid "Select-Sound"
-msgstr "Ø§ÙØªØ®Ø§Ø¨ صدا"
-
#: toolbars/TranscriptionToolBar.cpp:215
msgid "Select region of silence around cursor"
msgstr "ÙØ§ØÛÙÙ Ø³Ú©ÙØª در اطرا٠Ù
کاÙâÙÙ
ا Ø§ÙØªØ®Ø§Ø¨ Ø´ÙØ¯"
-#: toolbars/TranscriptionToolBar.cpp:216
-msgid "Select-Silence"
-msgstr "Ø§ÙØªØ®Ø§Ø¨ Ø³Ú©ÙØª"
-
#: toolbars/TranscriptionToolBar.cpp:218
msgid "Automatically make labels from words"
msgstr "Ø¨Ø±ÚØ³Ø¨ Ø¨Ù Ø·ÙØ± Ø®ÙØ¯Ú©Ø§Ø± از Ú©ÙÙ
ات Ø³Ø§Ø®ØªÙ Ø´ÙØ¯"
-#: toolbars/TranscriptionToolBar.cpp:219
-msgid "Make Labels"
-msgstr "Ø³Ø§Ø®ØªÙ Ø¨Ø±ÚØ³Ø¨"
-
#: toolbars/TranscriptionToolBar.cpp:221
msgid "Add label at selection"
msgstr "اضاÙÙ Ú©Ø±Ø¯Ù Ø¨Ø±ÚØ³Ø¨ در ÙØ³Ù
ت Ø§ÙØªØ®Ø§Ø¨ شدÙ"
-#: toolbars/TranscriptionToolBar.cpp:222
-msgid "Add Label"
-msgstr "اضاÙÙ Ú©Ø±Ø¯Ù Ø¨Ø±ÚØ³Ø¨"
-
#: toolbars/TranscriptionToolBar.cpp:224
msgid "Calibrate voicekey"
msgstr "Ù
ÛØ²Ø§Ù کرد٠voicekey"
-#: toolbars/TranscriptionToolBar.cpp:225
-msgid "Calibrate"
-msgstr "Ù
ÛØ²Ø§Ù کردÙ"
-
#: toolbars/TranscriptionToolBar.cpp:229
msgid "Adjust Sensitivity"
msgstr "ØªÙØ¸ÛÙ
ØØ³Ø§Ø³Ûت"
@@ -6234,6 +8684,46 @@ msgstr "تغÛÛØ±Ø§Øª Ø¬ÙØª (ØØ¯ آستاÙÙÙ Ø²ÛØ§Ø¯)"
msgid "Key type"
msgstr "ÙÙØ¹ Ú©ÙÛØ¯"
+#: toolbars/TranscriptionToolBar.cpp:184
+msgid "Play-at-speed"
+msgstr "پخش در سرعت خاص"
+
+#: toolbars/TranscriptionToolBar.cpp:201
+msgid "Left-to-On"
+msgstr "ÚÙ¾ Ø¨Ø±Ø§Û Ø±ÙØ´Ù کردÙ"
+
+#: toolbars/TranscriptionToolBar.cpp:204
+msgid "Right-to-Off"
+msgstr "راست Ø¨Ø±Ø§Û Ø®Ø§Ù
ÙØ´ کردÙ"
+
+#: toolbars/TranscriptionToolBar.cpp:207
+msgid "Left-to-Off"
+msgstr "ÚÙ¾ Ø¨Ø±Ø§Û Ø®Ø§Ù
ÙØ´ کردÙ"
+
+#: toolbars/TranscriptionToolBar.cpp:210
+msgid "Right-to-On"
+msgstr "راست Ø¨Ø±Ø§Û Ø±ÙØ´Ù کردÙ"
+
+#: toolbars/TranscriptionToolBar.cpp:213
+msgid "Select-Sound"
+msgstr "Ø§ÙØªØ®Ø§Ø¨ صدا"
+
+#: toolbars/TranscriptionToolBar.cpp:216
+msgid "Select-Silence"
+msgstr "Ø§ÙØªØ®Ø§Ø¨ Ø³Ú©ÙØª"
+
+#: toolbars/TranscriptionToolBar.cpp:219
+msgid "Make Labels"
+msgstr "Ø³Ø§Ø®ØªÙ Ø¨Ø±ÚØ³Ø¨"
+
+#: toolbars/TranscriptionToolBar.cpp:222
+msgid "Add Label"
+msgstr "اضاÙÙ Ú©Ø±Ø¯Ù Ø¨Ø±ÚØ³Ø¨"
+
+#: toolbars/TranscriptionToolBar.cpp:225
+msgid "Calibrate"
+msgstr "Ù
ÛØ²Ø§Ù کردÙ"
+
#: widgets/AButton.cpp:298
msgid " (disabled)"
msgstr " (از کار Ø§ÙØªØ§Ø¯Ù)"
@@ -6270,6 +8760,30 @@ msgstr "ÚÙ¾"
msgid "Right"
msgstr "راست"
+#: widgets/ErrorDialog.cpp:96
+msgid "Help"
+msgstr ""
+
+#: widgets/ErrorDialog.cpp:166
+msgid "<"
+msgstr ""
+
+#: widgets/ErrorDialog.cpp:167
+msgid ">"
+msgstr ""
+
+#: widgets/ErrorDialog.cpp:171
+msgid "Forwards"
+msgstr ""
+
+#: widgets/ErrorDialog.cpp:172
+msgid "Backwards"
+msgstr ""
+
+#: widgets/ErrorDialog.cpp:275
+msgid "Help on the Internet"
+msgstr ""
+
#: widgets/Grabber.cpp:61
msgid "Grabber"
msgstr "Ú¯ÛØ±Ù"
@@ -6284,15 +8798,6 @@ msgstr "%Id Ø³Ø·Ø±Ø %Id ستÙÙ"
msgid "Row %d"
msgstr "سطر %Id"
-#: widgets/Grid.cpp:627
-#, c-format
-msgid "%d"
-msgstr "%Id"
-
-#: widgets/Grid.cpp:632
-msgid "oh-oh...buggie"
-msgstr "Ø§Û ÙØ§Û...خطا"
-
#: widgets/Grid.cpp:764
msgid "Empty"
msgstr "خاÙÛ"
@@ -6321,22 +8826,20 @@ msgstr "استرÛÙÛ Ø§ÙÙÛ"
msgid "Vertical Stereo"
msgstr "استرÛÙÛ Ø¹Ù
ÙØ¯Û"
-#: widgets/Meter.cpp:356
-msgid "Linear"
-msgstr "خطÛ..."
-
#: widgets/Meter.cpp:365
msgid "Preferences..."
msgstr "ØªØ±Ø¬ÛØØ§Øª..."
+#: widgets/Meter.cpp:871
+msgid "Mix Volume"
+msgstr ""
+
#: widgets/Meter.cpp:1037
-msgid ""
-"This determines how often the meter is refreshed.\n"
+msgid "This determines how often the meter is refreshed.\n"
"If you have a slower PC you may want to select a\n"
"lower refresh rate (30 per second or lower), so that\n"
"audio qualtiy is not affected by the meter display."
-msgstr ""
-"اÛÙ Ù
ÙØ¯Ø§Ø± تعÛÛÙ Ù
ÛâÚ©ÙØ¯ ک٠با Ú٠بساÙ
Ø¯Û Ø§ÙØ¯Ø§Ø²ÙâÚ¯ÛØ± ÙÙØ³Ø§Ø²Û Ø´ÙØ¯.\n"
+msgstr "اÛÙ Ù
ÙØ¯Ø§Ø± تعÛÛÙ Ù
ÛâÚ©ÙØ¯ ک٠با Ú٠بساÙ
Ø¯Û Ø§ÙØ¯Ø§Ø²ÙâÚ¯ÛØ± ÙÙØ³Ø§Ø²Û Ø´ÙØ¯.\n"
"اگر با کاÙ
Ù¾ÛÙØªØ± Ú©ÙØ¯Û کار Ù
ÛâÚ©ÙÛØ¯ Ø§ØØªÙ
Ø§ÙØ§Ù Ø®ÙØ¨ است Ø¢ÙÙÚ¯ ÙÙØ³Ø§Ø²Û \n"
"Ú©Ù
ØªØ±Û Ø§ÙØªØ®Ø§Ø¨ Ú©ÙÛØ¯ (Û³Û° در ثاÙÛÙ ÛØ§ Ú©Ù
تر) Ú©Ù ÙÙ
Ø§ÛØ´Ú¯Ø± Ø§ÙØ¯Ø§Ø²ÙâÚ¯ÛØ±\n"
"رÙÛ Ú©ÛÙÛØª صدا ØªØ£Ø«ÛØ±Û Ùگذارد."
@@ -6345,14 +8848,30 @@ msgstr ""
msgid "Meter refresh rate per second [1-100]: "
msgstr "Ø¢ÙÙÚ¯ ÙÙØ³Ø§Ø²Û Ø§ÙØ¯Ø§Ø²ÙâÚ¯ÛØ± بر ثاÙÛÙ [Û± تا۱۰۰]: "
-#: widgets/Meter.cpp:1039
-msgid "Meter Perferences"
-msgstr "ØªØ±Ø¬ÛØØ§Øª Ø§ÙØ¯Ø§Ø²ÙâÚ¯ÛØ±"
+#: widgets/Meter.cpp:1142
+msgid "Meter Preferences"
+msgstr ""
#: widgets/MultiDialog.cpp:82
msgid " Please select an action "
msgstr " ÙØ·Ùا٠ÛÚ© Ú©ÙÙØ´ Ø§ÙØªØ®Ø§Ø¨ Ú©ÙÛØ¯ "
+#: widgets/MultiDialog.cpp:86
+msgid "Please select an action"
+msgstr ""
+
+#: widgets/ProgressDialog.cpp:1060
+msgid "Elapsed Time:"
+msgstr ""
+
+#: widgets/ProgressDialog.cpp:1080
+msgid "Remaining Time:"
+msgstr ""
+
+#: widgets/ProgressDialog.cpp:1108
+msgid "Cancel"
+msgstr ""
+
#: widgets/Ruler.cpp:1110 widgets/Ruler.cpp:1111
msgid "Vertical Ruler"
msgstr "خطâÚ©Ø´ عÙ
ÙØ¯Û"
@@ -6361,10 +8880,6 @@ msgstr "خطâÚ©Ø´ عÙ
ÙØ¯Û"
msgid "01000,01000 seconds"
msgstr "ثاÙÛÙâÙØ§Û Û°Û±Û°Û°Û°ØÛ°Û±Û°Û°Û°"
-#: widgets/TimeTextCtrl.cpp:199
-msgid "hh:mm:ss"
-msgstr "hh:mm:ss"
-
#: widgets/TimeTextCtrl.cpp:200
msgid "0100 h 060 m 060 s"
msgstr "Û°Û±Û°Û° ساعت Û°Û¶Û° دÙÛÙÙ Û°Û¶Û° ثاÙÛÙ"
@@ -6377,6 +8892,21 @@ msgstr "dd:hh:mm:ss"
msgid "0100 days 024 h 060 m 060 s"
msgstr "Û°Û±Û°Û° Ø±ÙØ² Û°Û²Û´ ساعت Û°Û¶Û° دÙÛÙÙ Û°Û¶Û° ثاÙÛÙ"
+#. i18n-hint: Name of time display format that shows time in hours,
+#. * minutes, seconds and hundredths of a second (1/100 second)
+#: widgets/TimeTextCtrl.cpp:289
+msgid "hh:mm:ss + hundredths"
+msgstr ""
+
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and hundredths of a second. Change the 'h' to the abbreviation for hours,
+#. * 'm' to the abbreviation for minutes and 's' to the abbreviation for seconds (the
+#. * hundredths are shown as decimal seconds) . Don't change the numbers
+#. * unless there aren't 60 minutes in an hour in your locale
+#: widgets/TimeTextCtrl.cpp:295
+msgid "0100 h 060 m 060.0100 s"
+msgstr ""
+
#: widgets/TimeTextCtrl.cpp:203
msgid "hh:mm:ss + milliseconds"
msgstr "hh:mm:ss + Ù
ÛÙÛâØ«Ø§ÙÛÙ"
@@ -6490,11 +9020,25 @@ msgstr "اÛ٠اخطار دÛگر ÙØ´Ø§Ù Ø¯Ø§Ø¯Ù ÙØ´Ùد"
msgid "Could not open file: \"%s\""
msgstr "باز کرد٠پرÙÙØ¯Ù٠«%s» Ù
Ù
Ù
Ú©Ù ÙÛØ³Øª"
-#: xml/XMLFileReader.cpp:64
+#: xml/XMLFileReader.cpp:63
+#, c-format
+msgid "Error: %hs at line %lu"
+msgstr ""
+
+#: xml/XMLFileReader.cpp:79
#, c-format
-msgid "Error: %hs at line %d"
-msgstr "خطا: %hs در خط %Id"
+msgid "Could not load file: \"%s\""
+msgstr ""
+
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
-#: xml/XMLFileReader.cpp:80
-msgid "Unable to open project file."
-msgstr "باز کرد٠پرÙÙØ¯Ù٠پرÙÚÙ Ù
Ù
Ù
Ú©Ù ÙÛØ³Øª"
diff --git a/locale/fi.po b/locale/fi.po
index 4e077dc..3030a7f 100644
--- a/locale/fi.po
+++ b/locale/fi.po
@@ -1,27 +1,26 @@
# translation of audacity.po to Finnish
# Copyright (C) 2008 Free Software Foundation, Inc.
# This file is distributed under the same license as the Audacity package.
+#
# Petri Vuorio <petri dot vuorio at musita dot savonia-amk dot fi>, 2004, 2005.
# Petri Vuorio <use the form of forename dot surname at pvjulkaisut dot fi>, 2005.
-# Elias Julkunenm, 2008.
-#
+# Elias Julkunenm, 2008, 2009.
msgid ""
msgstr "Project-Id-Version: Audacity 1.3\n"
"Report-Msgid-Bugs-To: audacity-translation at lists.sourceforge.net\n"
"POT-Creation-Date: 2008-11-09 20:10+0000\n"
-"PO-Revision-Date: 2008-11-15 19:39+0200\n"
-"Last-Translator: Elias Julkunen <elias.julkunen at gmail.com>\n"
-"Language-Team: Finnish <fi at li.org>\n"
+"PO-Revision-Date: 2009-05-29 01:51+0200\n"
+"Last-Translator: Tomi Toivio <tomi.olavi.toivio at gmail.com>\n"
+"Language-Team: American English <kde-i18n-doc at kde.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Lokalize 0.3\n"
#: AboutDialog.cpp:143
-#: AudacityApp.cpp:807
-#: Menus.cpp:955
-msgid "&About Audacity..."
-msgstr "&Tietoja Audacitystä..."
+msgid "About Audacity..."
+msgstr ""
#: AboutDialog.cpp:157
msgid "OK... Audacious!"
@@ -33,14 +32,12 @@ msgid "Audacity is a free program written by a team of volunteer <a href=\"http:
msgstr "Audacity on vapaa ohjelma, jonka on kehittänyt eri puolilta maailmaa koostuva vapaaehtoisten kehittäjien tiimi. Koordinointi toimii SourceForge.net online-palvelun ansiosta, joka tarjoaa ilmaiset työkalut avoimen lähdekoodin ohjelmaprojekteille. Audacity on saatavana Windows 98:lle ja sitä uudemmille, Mac OS X:lle, Linuxille sekä muille Unix-tyyppisille käyttöjärjestelmille. Vanhemmat Audacityn versiot ovat saatavana Mac Os 9:lle."
#: AboutDialog.cpp:179
-#, fuzzy
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
-msgstr "Tämä on ohjelman beta-versio. Siinä saattaa olla virheitä ja keskeneräisiä toimintoja. Tarvitsemme palautettasi, joten toivomme sinun vierailevan kotisivuillamme ja antavan meille ilmoituksia virheistä ja ehdotuksia ominaisuuksista."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgstr ""
#: AboutDialog.cpp:182
-#, fuzzy
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
-msgstr "Tämä on vakaa, valmis Audacityn julkaisu. Jos kuitenkin löydät virheen tai sinulla on ehdotuksia, ota meihin yhteyttä. Tarvitsemme käyttäjien palauttetta voidaksemme kehittää Audacityä. Vieraile kotisivuillamme saadaksesi lisätietoa."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgstr ""
# i18n-hint: The translation of "translator_credits" will appear
# in the credits in the About Audacity window. Use this to add
@@ -89,14 +86,14 @@ msgstr "Muut osallistujat"
#: AboutDialog.cpp:240
msgid "Audacity is based on code from the following projects:"
-msgstr "Audacty perustuu seuraavien projektien koodiin:"
+msgstr "Audacity perustuu seuraavien projektien koodiin:"
#: AboutDialog.cpp:245
msgid "Special thanks:"
msgstr "Erityiskiitokset:"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
msgstr ""
#: AboutDialog.cpp:258
@@ -191,7 +188,7 @@ msgstr "Liitännäistuki"
#: AboutDialog.cpp:454
#: AboutDialog.cpp:457
msgid "Sound card mixer support"
-msgstr ""
+msgstr "Ãänikortin mikserituki"
#: AboutDialog.cpp:462
#: AboutDialog.cpp:465
@@ -219,7 +216,7 @@ msgstr "Julkaisuversio"
#. i18n-hint: The directory audacity is installed into (on *nix systems)
#: AboutDialog.cpp:487
msgid "Installation Prefix: "
-msgstr ""
+msgstr "Asennuksen etuliite:"
#: AboutDialog.cpp:491
msgid "Settings folder: "
@@ -264,10 +261,27 @@ msgstr "Sisääntulomittari"
msgid "Output Meter"
msgstr "Ulostulomittari"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#: AudacityApp.cpp:809
-msgid "&Preferences...\tCtrl+,"
-msgstr "&Asetukset...\tCtrl+,"
+#: AudacityApp.cpp:803 Menus.cpp:198
+msgid "&New"
+msgstr ""
+
+#: AudacityApp.cpp:804 Menus.cpp:202
+msgid "&Open..."
+msgstr ""
+
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
+
+#: AboutDialog.cpp:143
+#: AudacityApp.cpp:807
+#: Menus.cpp:955
+msgid "&About Audacity..."
+msgstr "&Tietoja Audacitystä..."
+
+#: AudacityApp.cpp:807
+msgid "&Preferences..."
+msgstr ""
#: AudacityApp.cpp:901
#: AudacityApp.cpp:978
@@ -392,14 +406,14 @@ msgstr "Virhe: "
msgid "Error Initializing Audio"
msgstr "Virhe alustettaessa audiota"
-#: AudioIO.cpp:1375
-msgid "Latency problem"
+#: AudioIO.cpp:1242
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
+"Audacity has brought it back to start at zero.\n"
+"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
msgstr ""
#: AudioIO.cpp:1375
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
-"Audacity has brought it back to start at zero.\n"
-"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
+msgid "Latency problem"
msgstr ""
#: AutoRecovery.cpp:54
@@ -550,7 +564,7 @@ msgstr "Hyväksy %s"
#: BatchProcessDialog.cpp:70
#: BatchProcessDialog.cpp:71
msgid "Apply Chain"
-msgstr ""
+msgstr "Käytä ketjua"
#: BatchProcessDialog.cpp:67
msgid "CleanSpeech Batch Processing"
@@ -558,11 +572,11 @@ msgstr ""
#: BatchProcessDialog.cpp:94
msgid "&Select chain"
-msgstr ""
+msgstr "&Valitse ketju"
#: BatchProcessDialog.cpp:99
msgid "Chain"
-msgstr ""
+msgstr "Ketju"
#: BatchProcessDialog.cpp:106
msgid "Apply to Current &Project"
@@ -590,7 +604,7 @@ msgstr "&Peruuta"
#: BatchProcessDialog.cpp:146
#: BatchProcessDialog.cpp:191
msgid "No chain selected"
-msgstr ""
+msgstr "Ketjua ei valittu"
#: BatchProcessDialog.cpp:159
#, c-format
@@ -603,7 +617,7 @@ msgstr ""
#: BatchProcessDialog.cpp:206
msgid "Select vocal file(s) for batch CleanSpeech Chain..."
-msgstr ""
+msgstr "Valitse puhetiedosto(t) CleanSpeech-ketjuun..."
#: BatchProcessDialog.cpp:207
msgid "Select file(s) for batch processing..."
@@ -629,11 +643,11 @@ msgstr "Tiedosto"
#: BatchProcessDialog.cpp:360
#: BatchProcessDialog.cpp:361
msgid "Edit Chains"
-msgstr ""
+msgstr "Muokkaa ketjuja"
#: BatchProcessDialog.cpp:416
msgid "&Chains"
-msgstr ""
+msgstr "&Ketjut"
#: BatchProcessDialog.cpp:435
#: Tags.cpp:826
@@ -661,8 +675,16 @@ msgstr ""
#. i18n-hint: This is the number of the command in the list
#: BatchProcessDialog.cpp:453
-msgid "No"
-msgstr "Ei"
+msgid "Num"
+msgstr ""
+
+#: prefs/KeyConfigPrefs.cpp:167
+msgid "Command"
+msgstr ""
+
+#: effects/Contrast.cpp:235
+msgid "Parameters"
+msgstr "Parametrit"
#: BatchProcessDialog.cpp:459
msgid "&Insert"
@@ -699,7 +721,7 @@ msgstr "Haluatko tallentaa muutokset?"
#: BatchProcessDialog.cpp:623
msgid "Enter name of new chain"
-msgstr ""
+msgstr "Kirjoita uuden ketjun nimi"
#: BatchProcessDialog.cpp:634
msgid "Name must not be blank"
@@ -928,12 +950,12 @@ msgstr ""
#: DirManager.cpp:1371
msgid "Replace missing data with silence [permanent upon save]"
-msgstr ""
+msgstr "Korvaa puuttuvan tiedon hiljaisuudella [pysyvä tallettaessa]"
#: DirManager.cpp:1372
#: DirManager.cpp:1460
msgid "Temporarily replace missing data with silence [this session only]"
-msgstr ""
+msgstr "Korvaa tilapäisesti puuttuvan tiedon hiljaisuudella [vain tämä istunto]"
#: DirManager.cpp:1373
#: DirManager.cpp:1419
@@ -954,7 +976,7 @@ msgstr ""
#: DirManager.cpp:1418
msgid "Fill in silence for missing display data [this session only]"
-msgstr ""
+msgstr "Lisää hiljaisuutta puuttuvalle näyttötiedolle [tämän istunnon ajaksi]"
#: DirManager.cpp:1454
#, c-format
@@ -969,7 +991,7 @@ msgstr ""
#: DirManager.cpp:1459
msgid "Replace missing data with silence [permanent immediately]"
-msgstr ""
+msgstr "Korvaa puuttuva tieto hiljaisuudella [pysyvä välittömästi]"
#: DirManager.cpp:1487
msgid "Cleaning up unused directories in project data..."
@@ -999,11 +1021,11 @@ msgstr "Suorakulma"
msgid "FFmpeg support not compiled in"
msgstr ""
-#: FFmpeg.cpp:101
+#: FFmpeg.cpp:103
msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
#: FFmpeg.cpp:104
@@ -1044,7 +1066,8 @@ msgstr "Selaa"
msgid "To get a free copy of FFmpeg, click here -->"
msgstr "Ladataksesi ilmainen kopion ohjelmasta FFmpeg, napsauta tästä -->"
-#: FFmpeg.cpp:215 export/ExportMP3.cpp:579
+#: FFmpeg.cpp:215
+#: export/ExportMP3.cpp:579
msgid "Download"
msgstr ""
@@ -1068,11 +1091,12 @@ msgstr ""
msgid "FFmpeg not found"
msgstr "Ohjelmaa FFmpeg ei löytynyt"
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
#: FFmpeg.h:109
@@ -1174,12 +1198,25 @@ msgstr "&Vie..."
msgid "Export"
msgstr "Vie"
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
#: FreqWindow.cpp:216
#: FreqWindow.cpp:217
#: widgets/ErrorDialog.cpp:161
msgid "Close"
msgstr "Sulje"
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1301
+#: effects/Equalization.cpp:1304
+msgid "Grids"
+msgstr ""
+
#: FreqWindow.cpp:280
#: FreqWindow.cpp:410
#: effects/AutoDuck.cpp:489
@@ -1210,6 +1247,15 @@ msgstr "dB"
msgid "Hz"
msgstr "Hz"
+#: Menus.cpp:3969
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "Jotta spektri voidaan esittää, kaikkilla valituilla raidoilla täytyy olla sama näytteenottotaajuus."
+
+#: Menus.cpp:3995
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "Audiota on valittu liian paljon. Vain ensimmäiset %.1f sekuntia audiosta analysoidaan."
+
#: FreqWindow.cpp:394
msgid "Not enough data selected."
msgstr "Dataa ei ole valittu riittävästi."
@@ -1254,6 +1300,21 @@ msgstr "Taajuus (Hz)\tTaso (dB)"
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "Viive (sekuntia)\tTaajuus (Hz)\tTaso"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr ""
+
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr ""
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr ""
@@ -1331,7 +1392,7 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr ""
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
msgstr ""
#: HelpText.cpp:244
@@ -1355,7 +1416,7 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr ""
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
msgstr ""
#: HelpText.cpp:383
@@ -1422,6 +1483,14 @@ msgstr "MB"
msgid "GB"
msgstr "GB"
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
#: LabelDialog.cpp:54
msgid "Track"
msgstr "Raita"
@@ -1435,16 +1504,15 @@ msgstr "Merkki"
#: LabelDialog.cpp:56
#: TimerRecordDialog.cpp:279
msgid "Start Time"
-msgstr ""
+msgstr "Aloitusaika."
#: LabelDialog.cpp:57
#: TimerRecordDialog.cpp:298
msgid "End Time"
-msgstr ""
+msgstr "Lopetusaika."
#: LabelDialog.cpp:100
-#: Menus.cpp:713
-msgid "&Edit Labels"
+msgid "Edit Labels"
msgstr ""
#: LabelDialog.cpp:115
@@ -1518,13 +1586,9 @@ msgstr "Uusi &merkkiraita"
msgid "Enter track name"
msgstr "Anna raidan nimi"
-#: LabelDialog.cpp:705
-#: LabelDialog.h:52
-#: LabelTrack.cpp:89
-#: Menus.cpp:632
-#, fuzzy
-msgid "&Label Track"
-msgstr "Merkkiraita"
+#: LabelDialog.cpp:705 LabelDialog.h:52 LabelTrack.cpp:92
+msgid "Label Track"
+msgstr ""
#: LangChoice.cpp:57
msgid "Audacity First Run"
@@ -1534,6 +1598,11 @@ msgstr "Audacity ensimmäinen käynnistys"
msgid "Choose Language for Audacity to use:"
msgstr "Valitse Audacityn kieli:"
+#: LangChoice.cpp:125
+#, c-format
+msgid "The language you have chosen, %s (%s), is not the same as the system language, %s (%s)."
+msgstr ""
+
#: Legacy.cpp:356
#, c-format
msgid "Converted a 1.0 project file to the new format.\n"
@@ -1549,21 +1618,13 @@ msgstr "Avataan Audacity-projektia"
msgid "&File"
msgstr "&Tiedosto"
-#: Menus.cpp:196
-msgid "&New\tCtrl+N"
-msgstr "&Uusi\tCtrl+N"
-
-#: Menus.cpp:198
-msgid "&Open...\tCtrl+O"
-msgstr "&Avaa...\tCtrl+O"
-
-#: Menus.cpp:203
-msgid "&Close\tCtrl+W"
-msgstr "&Sulje\tCtrl+W"
+#: Menus.cpp:214
+msgid "&Close"
+msgstr ""
-#: Menus.cpp:206
-msgid "&Save Project\tCtrl+S"
-msgstr "&Tallenna projekti\tCtrl+S"
+#: Menus.cpp:217
+msgid "&Save Project"
+msgstr ""
#: Menus.cpp:210
#: Project.cpp:2896
@@ -1587,9 +1648,9 @@ msgstr "Avaa &metatietoeditori..."
msgid "&Import"
msgstr "&Tuo"
-#: Menus.cpp:231
-msgid "&Audio...\tCtrl+Shift+I"
-msgstr "&Ãäni...\tCtrl+Shift+I"
+#: Menus.cpp:240
+msgid "&Audio..."
+msgstr ""
#: Menus.cpp:232
msgid "&Labels..."
@@ -1620,14 +1681,14 @@ msgstr "Vie &moneen tiedostoon..."
msgid "Export MIDI..."
msgstr "MIDI-tiedosto"
-#: Menus.cpp:290
-msgid "CleanSpeech C&hain..."
-msgstr ""
+#: Menus.cpp:303
+msgid "Appl&y Chain..."
+msgstr "Käyt&ä ketjua..."
#: Menus.cpp:291
#: Menus.cpp:305
msgid "Edit C&hains..."
-msgstr ""
+msgstr "Muokkaa ketjuja"
#: Menus.cpp:292
msgid "Export CleanSpeech &Presets..."
@@ -1637,10 +1698,6 @@ msgstr ""
msgid "I&mport CleanSpeech Presets..."
msgstr ""
-#: Menus.cpp:303
-msgid "Appl&y Chain..."
-msgstr ""
-
#: Menus.cpp:310
msgid "&Upload File..."
msgstr ""
@@ -1653,18 +1710,18 @@ msgstr "&Sivun asetukset..."
msgid "&Print..."
msgstr "&Tulosta..."
-#: Menus.cpp:330
-msgid "E&xit\tCtrl+Q"
-msgstr "&Lopeta\tCtrl+Q"
+#: Menus.cpp:312
+msgid "E&xit"
+msgstr ""
#: Menus.cpp:338
#: toolbars/EditToolBar.cpp:76
msgid "&Edit"
msgstr "&Muokkaa"
-#: Menus.cpp:342
-msgid "&Undo\tCtrl+Z"
-msgstr "&Kumoa\tCtrl+Z"
+#: Menus.cpp:327
+msgid "&Undo"
+msgstr ""
#: Menus.cpp:350
#: prefs/KeyConfigPrefs.cpp:371
@@ -1672,151 +1729,122 @@ msgstr "&Kumoa\tCtrl+Z"
msgid "&Redo"
msgstr "Tee &uudelleen"
-#: Menus.cpp:363
-msgid "Cu&t\tCtrl+X"
-msgstr "&Leikkaa\tCtrl+X"
+#: Menus.cpp:345
+msgid "Cu&t"
+msgstr ""
-#: Menus.cpp:367
-msgid "Spl&it Cut\tCtrl+Alt+X"
+#: Menus.cpp:348
+msgid "Spl&it Cut"
msgstr ""
-#: Menus.cpp:368
-msgid "&Copy\tCtrl+C"
-msgstr "K&opioi\tCtrl+C"
+#: Menus.cpp:349
+msgid "&Copy"
+msgstr ""
-#: Menus.cpp:372
-msgid "&Paste\tCtrl+V"
-msgstr "L&iitä\tCtrl+V"
+#: Menus.cpp:352
+msgid "&Paste"
+msgstr ""
-#: Menus.cpp:376
-msgid "Tri&m\tCtrl+T"
+#: Menus.cpp:355
+msgid "Tri&m"
msgstr ""
-#: Menus.cpp:378
-msgid "&Delete\tCtrl+K"
-msgstr "&Poista\tCtrl+K"
+#: Menus.cpp:359 Menus.cpp:398
+msgid "&Delete"
+msgstr ""
-#: Menus.cpp:379
-msgid "Split D&elete\tCtrl+Alt+K"
+#: Menus.cpp:360
+msgid "Split D&elete"
msgstr ""
-#: Menus.cpp:380
-#, fuzzy
-msgid "Silence Audi&o\tCtrl+L"
-msgstr "&Vaimenna\tCtrl+L"
+#: Menus.cpp:361
+msgid "Silence Audi&o"
+msgstr ""
-#: Menus.cpp:382
-msgid "Sp&lit\tCtrl+I"
+#: Menus.cpp:365
+msgid "Sp&lit"
msgstr ""
-#: Menus.cpp:387
-msgid "Split Ne&w\tCtrl+Alt+I"
+#: Menus.cpp:369
+msgid "Split Ne&w"
msgstr ""
-#: Menus.cpp:392
-msgid "&Join\tCtrl+J"
+#: Menus.cpp:373 Menus.cpp:405
+msgid "&Join"
msgstr ""
-#: Menus.cpp:393
-#, fuzzy
-msgid "Detac&h at Silences\tCtrl+Alt+J"
-msgstr "&Vaimenna\tCtrl+Alt+J"
+#: Menus.cpp:374 Menus.cpp:406
+msgid "Detac&h at Silences"
+msgstr ""
-#: Menus.cpp:394
-msgid "Duplic&ate\tCtrl+D"
+#: Menus.cpp:375
+msgid "Duplic&ate"
msgstr ""
#: Menus.cpp:400
#: Menus.cpp:639
-#, fuzzy
msgid "Stereo Trac&k to Mono"
-msgstr "Yhdistä stereoraidaksi"
+msgstr "Stereoraita monoksi"
#: Menus.cpp:407
msgid "La&beled Regions"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:409
-msgid "&Cut\tAlt+X"
-msgstr ""
+msgstr "Me&rkityt alueet"
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:414
-msgid "&Split Cut\tShift+Alt+X"
+#: Menus.cpp:392
+msgid "&Cut"
msgstr ""
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:419
-msgid "Co&py\tShift+Alt+C"
-msgstr "&Kopioi\tShift+Alt+C"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:425
-msgid "&Delete\tAlt+K"
-msgstr "&Poista\tAlt+K"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:430
-msgid "Sp&lit Delete\tShift+Alt+K"
+#: Menus.cpp:393
+msgid "&Split Cut"
msgstr ""
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:435
-msgid "Sile&nce\tAlt+L"
+#: Menus.cpp:394
+msgid "Co&py"
msgstr ""
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:441
-msgid "Spli&t\tAlt+I"
+#: Menus.cpp:399
+msgid "Sp&lit Delete"
msgstr ""
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:446
-msgid "&Join\tAlt+J"
+#: Menus.cpp:400
+msgid "Sile&nce"
msgstr ""
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
+#: Menus.cpp:404
+msgid "Spli&t"
msgstr ""
#: Menus.cpp:456
msgid "&Select"
msgstr "&Valitse"
-#: Menus.cpp:457
-msgid "&All\tCtrl+A"
-msgstr "&Kaikki\tCtrl+A"
+#: Menus.cpp:415
+msgid "&All"
+msgstr ""
-#: Menus.cpp:458
-msgid "&None\tCtrl+Shift+A"
+#: Menus.cpp:416
+msgid "&None"
msgstr ""
-#: Menus.cpp:462
-#, fuzzy
-msgid "&Left at Playback Position\t["
-msgstr "Lisää merkki toistokohtaan\t["
+#: Menus.cpp:418
+msgid "&Left at Playback Position"
+msgstr ""
-#: Menus.cpp:463
-#, fuzzy
-msgid "&Right at Playback Position\t]"
-msgstr "Lisää merkki toistokohtaan\t]"
+#: Menus.cpp:419
+msgid "&Right at Playback Position"
+msgstr ""
-#: Menus.cpp:467
-#, fuzzy
-msgid "Track &Start to Cursor\tShift+J"
-msgstr "Alusta kursoriin"
+#: Menus.cpp:423
+msgid "Track &Start to Cursor"
+msgstr ""
-#: Menus.cpp:468
-#, fuzzy
-msgid "Cursor to Track &End\tShift+K"
-msgstr "Kursorista loppuun"
+#: Menus.cpp:424
+msgid "Cursor to Track &End"
+msgstr ""
-#: Menus.cpp:474
-#, fuzzy
-msgid "Find &Zero Crossings\tZ"
-msgstr "Etsi nollakohdat\tZ"
+#: Menus.cpp:430
+msgid "Find &Zero Crossings"
+msgstr ""
#: Menus.cpp:476
msgid "Mo&ve Cursor"
@@ -1830,27 +1858,25 @@ msgstr "valinnan &alkuun"
msgid "to Selection En&d"
msgstr "valinnan &loppuun"
-#: Menus.cpp:483
-msgid "to Track &Start\tJ"
-msgstr "raidan al&kuun\tJ"
+#: Menus.cpp:439
+msgid "to Track &Start"
+msgstr ""
-#: Menus.cpp:484
-msgid "to Track &End\tK"
-msgstr "raidan l&oppuun\tK"
+#: Menus.cpp:440
+msgid "to Track &End"
+msgstr ""
#: Menus.cpp:491
-#, fuzzy
msgid "Re&gion Save"
-msgstr "Tallenna valinta"
+msgstr "Tallenna alue"
#: Menus.cpp:492
-#, fuzzy
msgid "Regio&n Restore"
msgstr "Palauta valinta"
#: Menus.cpp:503
msgid "Pla&y Region"
-msgstr ""
+msgstr "Soita alue"
#: Menus.cpp:504
msgid "&Lock"
@@ -1860,71 +1886,49 @@ msgstr "&Lukitse"
msgid "&Unlock"
msgstr "&Avaa lukitus"
-#: Menus.cpp:511
-msgid "Turn Snap-To On"
-msgstr "Ota kohdistus käyttöön"
-
-#: Menus.cpp:512
-msgid "Turn Snap-To Off"
-msgstr "Poista kohdistus käytöstä"
-
-#: Menus.cpp:513
-msgid "Turn Grid Snap On"
-msgstr "Ota ruudukkoon kohdistus käyttöön"
-
-#: Menus.cpp:514
-msgid "Turn Grid Snap Off"
-msgstr "Poista ruudukkoon kohdistus käytöstä"
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
-#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr "As&etukset...\tCtrl+,"
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
-msgstr "As&etukset...\tCtrl+P"
+#: Menus.cpp:484
+msgid "Pre&ferences..."
+msgstr ""
#: Menus.cpp:533
msgid "&View"
msgstr "&Näytä"
-#: Menus.cpp:535
-msgid "Zoom &In\tCtrl+1"
-msgstr "&Lähennä näkymää\tCtrl+1"
+#: Menus.cpp:497
+msgid "Zoom &In"
+msgstr ""
-#: Menus.cpp:538
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "&Normaali zoomaus\tCtrl+2"
+#: Menus.cpp:500
+msgid "Zoom &Normal"
+msgstr ""
-#: Menus.cpp:539
-msgid "Zoom &Out\tCtrl+3"
-msgstr "L&oitonna näkymää\tCtrl+3"
+#: Menus.cpp:501
+msgid "Zoom &Out"
+msgstr ""
-#: Menus.cpp:542
-msgid "&Fit in Window\tCtrl+F"
-msgstr "&Sovita ikkunaan\tCtrl+F"
+#: Menus.cpp:505
+msgid "&Fit in Window"
+msgstr ""
-#: Menus.cpp:543
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "Sovita &pystysuunnassa\tCtrl+Shift+F"
+#: Menus.cpp:506
+msgid "Fit &Vertically"
+msgstr ""
-#: Menus.cpp:544
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "&Zoomaa valintaan\tCtrl+E"
+#: Menus.cpp:507
+msgid "&Zoom to Selection"
+msgstr ""
-#: Menus.cpp:547
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
+#: Menus.cpp:511
+msgid "&Collapse All Tracks"
msgstr ""
-#: Menus.cpp:548
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
+#: Menus.cpp:512
+msgid "E&xpand All Tracks"
msgstr ""
#: Menus.cpp:551
-#, fuzzy
msgid "&Show Clipping"
-msgstr "Salli leikkautuminen"
+msgstr "Näytä leikkau&s"
#: Menus.cpp:560
msgid "&History..."
@@ -1952,7 +1956,7 @@ msgstr ""
#: Menus.cpp:571
msgid "Mi&xer Toolbar"
-msgstr ""
+msgstr "Mikserin työkalupalkki"
#: Menus.cpp:572
msgid "&Selection Toolbar"
@@ -1979,61 +1983,59 @@ msgstr "!Yksinkertaistettu näkymä"
#. play, record, pause etc.
#: Menus.cpp:587
msgid "T&ransport"
-msgstr ""
+msgstr "Siirrä"
-#: Menus.cpp:591
-msgid "Play\tSpace"
-msgstr ""
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play"
+msgstr "Soita"
-#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
+#: Menus.cpp:565
+msgid "&Loop Play"
msgstr ""
-#: Menus.cpp:593
-msgid "&Pause\tP"
-msgstr "&Pysäytä\tP"
+#: Menus.cpp:566
+msgid "&Pause"
+msgstr ""
-#: Menus.cpp:596
-msgid "&Stop\tSpace"
+#: Menus.cpp:602
+msgid "&Stop"
msgstr ""
-#: Menus.cpp:595
-#: Menus.cpp:1010
-msgid "Skip to Start\tHome"
-msgstr "Siirry alkuun\tHome"
+#: toolbars/ControlToolBar.cpp:186
+msgid "Skip to Start"
+msgstr "Siirry alkuun"
-#: Menus.cpp:597
-#: Menus.cpp:1011
-msgid "Skip to End\tEnd"
-msgstr "Siirry loppuun\tEnd"
+#: toolbars/ControlToolBar.cpp:189
+msgid "Skip to End"
+msgstr "Siirry loppuun"
-#: Menus.cpp:600
-msgid "&Record\tR"
-msgstr "&Ãänitä\tR"
+#: Menus.cpp:577
+msgid "&Record"
+msgstr ""
-#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
+#: Menus.cpp:578
+msgid "&Timer Record..."
msgstr ""
-#: Menus.cpp:604
-msgid "Append Record\tShift+R"
+#: Menus.cpp:579
+msgid "Append Record"
msgstr ""
#: Menus.cpp:607
msgid "Overdub (on/off)"
-msgstr ""
+msgstr "Päällenauhoitus (päälle/pois)"
#: Menus.cpp:609
msgid "Software Playthrough (on/off)"
-msgstr ""
+msgstr "Ohjelmiston läpisoitto (päällä/pois)"
#: Menus.cpp:612
msgid "Sound Activated Recording (on/off)"
-msgstr ""
+msgstr "Nauhoitus äänikäynnistyksellä (päällä/pois)"
#: Menus.cpp:614
msgid "Sound Activation Level..."
-msgstr ""
+msgstr "Ãänikäynnistyksen taso..."
#: Menus.cpp:622
msgid "&Tracks"
@@ -2043,14 +2045,22 @@ msgstr "&Raidat"
msgid "Add &New"
msgstr "Lisää &uusi"
-#: Menus.cpp:630
-msgid "&Audio Track\tCtrl+Shift+N"
+#: Menus.cpp:603
+msgid "&Audio Track"
msgstr ""
#: Menus.cpp:631
msgid "&Stereo Track"
msgstr ""
+#: LabelDialog.cpp:705
+#: LabelDialog.h:52
+#: LabelTrack.cpp:89
+#: Menus.cpp:632
+#, fuzzy
+msgid "&Label Track"
+msgstr "Merkkiraita"
+
#: Menus.cpp:633
#: TimeTrack.cpp:44
#, fuzzy
@@ -2059,27 +2069,27 @@ msgstr "Aikaraita"
#: Menus.cpp:643
msgid "Mi&x and Render"
-msgstr ""
+msgstr "Miksaa ja renderöi"
-#: Menus.cpp:647
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
+#: Menus.cpp:622
+msgid "Mix and Render to New Track"
msgstr ""
#: Menus.cpp:651
msgid "&Resample..."
-msgstr ""
+msgstr "Samplaa uudelleen"
#: Menus.cpp:661
msgid "Remo&ve Tracks"
msgstr "P&oista raitoja"
-#: Menus.cpp:667
-msgid "&Mute All Tracks\tCtrl+U"
-msgstr "&Hiljennä kaikki raidat\tCtrl+U"
+#: Menus.cpp:637
+msgid "&Mute All Tracks"
+msgstr ""
-#: Menus.cpp:668
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
-msgstr "&Poista hiljennys kaikilta raidoilta\tCtrl+Shift+U"
+#: Menus.cpp:638
+msgid "&UnMute All Tracks"
+msgstr ""
#: Menus.cpp:672
msgid "Align with &Zero"
@@ -2118,32 +2128,34 @@ msgid "Align Tracks To&gether"
msgstr "Kohdista raidat yhteen"
#: Menus.cpp:681
-#, fuzzy
msgid "&Align Tracks"
-msgstr "Kohdista raidat..."
+msgstr "Kohdista raidat"
#: Menus.cpp:690
-#, fuzzy
msgid "Ali&gn and Move Cursor"
-msgstr "Kohdista loppu kursoriin"
+msgstr "Kohdista ja siirrä kursoria"
#: Menus.cpp:697
msgid "Synchronize MIDI with Audio"
msgstr "Synkronoi MIDI äänen kanssa"
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
+#: Menus.cpp:713
+#, fuzzy
+msgid "&Link Audio and Label Tracks"
+msgstr "Yhdistä ääniraita ja merkkiraita"
+
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
msgstr ""
-#: Menus.cpp:709
-#, fuzzy
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "Lisää valintaan merkki\tCtrl+B"
+#: Menus.cpp:693
+msgid "Add Label At &Playback Position"
+msgstr ""
-#: Menus.cpp:710
-#, fuzzy
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "Lisää merkki toistokohtaan\tCtrl+M"
+#: LabelDialog.cpp:100
+#: Menus.cpp:713
+msgid "&Edit Labels"
+msgstr "&Muokkaa otsikoita"
#: Menus.cpp:716
msgid "S&ort tracks"
@@ -2171,17 +2183,17 @@ msgstr ""
msgid "Effe&ct"
msgstr "&Efekti"
-#: Menus.cpp:799
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "Toista viimeisin efekti\tCtrl+R"
-
#: Menus.cpp:877
msgid "&Analyze"
msgstr "&Analysoi"
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
+
#: Menus.cpp:879
msgid "Plot Spectrum..."
-msgstr ""
+msgstr "Piirrä spektri..."
#: Menus.cpp:947
#: Menus.cpp:950
@@ -2197,7 +2209,7 @@ msgid "&Show Welcome Message..."
msgstr "Näytä &Tervetuloa-viesti..."
#: Menus.cpp:958
-msgid "&Index..."
+msgid "&Help..."
msgstr ""
#: Menus.cpp:959
@@ -2216,248 +2228,248 @@ msgstr "&Suorita mittauskoe..."
msgid "&Audio Device Info..."
msgstr "&Ãänilaitetiedot..."
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
-msgstr ""
-
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
-msgstr ""
-
-#: Menus.cpp:985
-msgid "Selection Tool\tF1"
-msgstr "Valintatyökalu\tF1"
-
#: Menus.cpp:986
-msgid "Envelope Tool\tF2"
-msgstr "Verhotyökalu\tF2"
+msgid "Move backward from toolbars to tracks"
+msgstr ""
#: Menus.cpp:987
-msgid "Draw Tool\tF3"
-msgstr "Piirtotyökalu\tF3"
+msgid "Move forward from toolbars to tracks"
+msgstr ""
-#: Menus.cpp:988
-msgid "Zoom Tool\tF4"
-msgstr "Zoomaustyökalu\tF4"
+#: toolbars/ToolsToolBar.cpp:147
+#: toolbars/ToolsToolBar.cpp:182
+msgid "Selection Tool"
+msgstr "Valintatyökalu"
-#: Menus.cpp:989
-msgid "Time Shift Tool\tF5"
-msgstr "Aikakorjaustyökalu\tF5"
+#: toolbars/ToolsToolBar.cpp:148
+msgid "Envelope Tool"
+msgstr "Verhotyökalu"
-#: Menus.cpp:990
-msgid "Multi Tool\tF6"
-msgstr "Monitoimityökalu\tF6"
+#: toolbars/ToolsToolBar.cpp:151
+#: toolbars/ToolsToolBar.cpp:184
+msgid "Draw Tool"
+msgstr "Piirtotyökalu"
-#: Menus.cpp:992
-msgid "Next Tool\tD"
-msgstr "Seuraava työkalu\tD"
+#: toolbars/ToolsToolBar.cpp:150
+#: toolbars/ToolsToolBar.cpp:185
+msgid "Zoom Tool"
+msgstr "Zoomaustyökalu"
-#: Menus.cpp:993
-msgid "Previous Tool\tA"
-msgstr "Edellinen työkalu\tA"
+#: toolbars/ToolsToolBar.cpp:149
+#: toolbars/ToolsToolBar.cpp:183
+msgid "Time Shift Tool"
+msgstr "Aikakorjaustyökalu"
-#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
+#: toolbars/ToolsToolBar.cpp:187
+msgid "Multi Tool"
msgstr ""
#: Menus.cpp:996
-msgid "Stop\tS"
-msgstr "Pysäytä\tS"
+msgid "Next Tool"
+msgstr ""
#: Menus.cpp:997
-msgid "Pause\tP"
-msgstr "Keskeytä\tP"
-
-#: Menus.cpp:998
-msgid "Record\tR"
-msgstr "Ãänitä\tR"
+msgid "Previous Tool"
+msgstr ""
#: Menus.cpp:999
-msgid "Record Append\tShift+R"
+msgid "Play/Stop"
+msgstr ""
+
+#: Menus.cpp:1000
+msgid "Play/Stop and Set Cursor"
msgstr ""
#: Menus.cpp:1001
-msgid "Play/Stop and Set Cursor\tShift+A"
+msgid "Play One Second"
msgstr ""
-#: Menus.cpp:1004
-msgid "Play One Second\t1"
-msgstr "Toista yksi sekunti\t1"
+#: Menus.cpp:1002
+msgid "Play To Selection"
+msgstr ""
+
+#: Menus.cpp:1003
+msgid "Play Cut Preview"
+msgstr ""
#: Menus.cpp:1005
-msgid "Play To Selection\tB"
-msgstr "Toista valintaan saakka\tB"
+msgid "Selection to Start"
+msgstr ""
#: Menus.cpp:1006
-msgid "Play Looped\tL"
-msgstr "Toista silmukassa\tL"
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
+msgid "Selection to End"
msgstr ""
#: Menus.cpp:1008
-msgid "Play Cut Preview\tC"
+msgid "DeleteKey"
+msgstr ""
+
+#: Menus.cpp:1012
+msgid "DeleteKey2"
msgstr ""
-#: Menus.cpp:1013
-msgid "Selection to Start\tShift+Home"
-msgstr "Valitse alkuun\tShift+Home"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
+msgstr ""
-#: Menus.cpp:1014
-msgid "Selection to End\tShift+End"
-msgstr "Valitse loppuun\tShift+End"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
+msgstr ""
-#: Menus.cpp:1016
-msgid "DeleteKey\tBackspace"
-msgstr "Poista-näppäin\tBackspace"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
+msgstr ""
#: Menus.cpp:1021
-msgid "DeleteKey2\tDelete"
-msgstr "Poista-näppäin2\tDelete"
+msgid "Long Seek right during playback"
+msgstr ""
+
+#: Menus.cpp:1026
+msgid "Move Focus to Previous Track"
+msgstr ""
#: Menus.cpp:1027
-msgid "Seek left short period during playback\tLeft"
+msgid "Move Focus to Previous and Select"
msgstr ""
#: Menus.cpp:1028
-msgid "Seek right short period during playback\tRight"
+msgid "Move Focus to Next Track"
msgstr ""
#: Menus.cpp:1029
-msgid "Seek left long period during playback\tShift+Left"
+msgid "Move Focus to Next and Select"
+msgstr ""
+
+#: Menus.cpp:1030 Menus.cpp:1031
+msgid "Toggle Focused Track"
msgstr ""
-#: Menus.cpp:1030
-msgid "Seek right long period during playback\tShift+Right"
+#: Menus.cpp:1033
+msgid "Cursor Left"
msgstr ""
#: Menus.cpp:1034
-msgid "Move Focus to Previous Track\tUp"
+msgid "Cursor Right"
msgstr ""
#: Menus.cpp:1035
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
+msgid "Cursor Short Jump Left"
msgstr ""
#: Menus.cpp:1036
-msgid "Move Focus to Next Track\tDown"
+msgid "Cursor Short Jump Right"
msgstr ""
#: Menus.cpp:1037
-msgid "Move Focus to Next and Change Selection\tShift+Down"
+msgid "Cursor Long Jump Left"
msgstr ""
#: Menus.cpp:1038
-msgid "Toggle Focused Track\tReturn"
+msgid "Cursor Long Jump Right"
msgstr ""
-#: Menus.cpp:1039
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
+#: Menus.cpp:1040
+msgid "Selection Extend Left"
msgstr ""
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
+#: Menus.cpp:1041
+msgid "Selection Extend Right"
msgstr ""
-#: Menus.cpp:1042
-msgid "Cursor Left\tLeft"
-msgstr "Kursori vasemmalle\tLeft"
-
-#: Menus.cpp:1043
-msgid "Cursor Right\tRight"
-msgstr "Kursori oikealle\tRight"
-
-#: Menus.cpp:1044
-msgid "Cursor Short Jump Left\t,"
+#: Menus.cpp:1052
+msgid "Set (or Extend) Left Selection"
msgstr ""
-#: Menus.cpp:1045
-msgid "Cursor Short Jump Right\t."
+#: Menus.cpp:1053
+msgid "Set (or Extend) Right Selection"
msgstr ""
#: Menus.cpp:1046
-msgid "Cursor Long Jump Left\tShift+,"
+msgid "Selection Contract Left"
msgstr ""
#: Menus.cpp:1047
-msgid "Cursor Long Jump Right\tShift+."
+msgid "Selection Contract Right"
msgstr ""
#: Menus.cpp:1049
-msgid "Selection Extend Left\tShift+Left"
-msgstr "Laajenna valintaa vasemmalle\tShift+Left"
+msgid "Change pan on focused track"
+msgstr ""
#: Menus.cpp:1050
-msgid "Selection Extend Right\tShift+Right"
-msgstr "Laajenna valintaa oikealle\tShift+Right"
+msgid "Pan left on focused track"
+msgstr ""
+
+#: Menus.cpp:1051
+msgid "Pan right on focused track"
+msgstr ""
#: Menus.cpp:1052
-msgid "Set (or Extend) Left Selection"
+msgid "Change gain on focused track"
msgstr ""
#: Menus.cpp:1053
-msgid "Set (or Extend) Right Selection"
+msgid "Increase gain on focused track"
msgstr ""
-#: Menus.cpp:1055
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "Supista valintaa vasemmalta\tCtrl+Shift+Right"
-
-#: Menus.cpp:1056
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "Supista valintaa oikealta\tCtrl+Shift+Left"
-
-#: Menus.cpp:1058
-msgid "Change pan on focused track\tShift+P"
+#: Menus.cpp:1054
+msgid "Decrease gain on focused track"
msgstr ""
-#: Menus.cpp:1059
-msgid "Pan left on focused track\tAlt+Shift+Left"
+#: Menus.cpp:1055
+msgid "Open menu on focused track"
msgstr ""
-#: Menus.cpp:1060
-msgid "Pan right on focused track\tAlt+Shift+Right"
+#: Menus.cpp:1056
+msgid "Mute/Unmute focused track"
msgstr ""
-#: Menus.cpp:1061
-msgid "Change gain on focused track\tShift+G"
+#: Menus.cpp:1057
+msgid "Solo/Unsolo focused track"
msgstr ""
-#: Menus.cpp:1062
-msgid "Increase gain on focused track\tAlt+Shift+Up"
+#: Menus.cpp:1058
+msgid "Close focused track"
msgstr ""
-#: Menus.cpp:1063
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
-msgstr ""
+#: Menus.cpp:1069
+msgid "Snap To On"
+msgstr "Napsahda kohtaan pois päältä"
-#: Menus.cpp:1064
-msgid "Open menu on focused track\tShift+M"
-msgstr ""
+#: Menus.cpp:1070
+msgid "Snap To Off"
+msgstr "Napsahda kohtaan pois päältä"
#: Menus.cpp:1065
-msgid "Mute/Unmute focused track\tShift+U"
+msgid "Full screen on/off"
msgstr ""
#: Menus.cpp:1066
-msgid "Solo/Unsolo focused track\tShift+S"
+msgid "Adjust output gain"
msgstr ""
#: Menus.cpp:1067
-msgid "Close focused track\tShift+C"
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Decrease output gain"
msgstr ""
#: Menus.cpp:1069
-msgid "Snap To On"
+msgid "Adjust input gain"
msgstr ""
#: Menus.cpp:1070
-msgid "Snap To Off"
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1071
+msgid "Decrease input gain"
msgstr ""
#: Menus.cpp:1073
-msgid "Full screen on/off\tF11"
+msgid "Adjust input source"
msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
@@ -2516,10 +2528,10 @@ msgstr ""
msgid "You must select a track first."
msgstr "Sinun on ensin valittava raita."
-#: Menus.cpp:2369
+#: Menus.cpp:2441
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "Toista %s\tCtrl+R"
+msgid "Repeat %s"
+msgstr ""
#: Menus.cpp:2512
msgid "There are no label tracks to export."
@@ -2562,11 +2574,11 @@ msgstr "Leikattu leikepöydälle"
#: Menus.cpp:2849
msgid "Split Cut"
-msgstr ""
+msgstr "Jaa ja leikkaa"
#: Menus.cpp:2849
msgid "Split-cut to the clipboard"
-msgstr ""
+msgstr "Jaa ja leikkaa leikepöydälle"
#: Menus.cpp:2914
#: Menus.cpp:2986
@@ -2605,11 +2617,11 @@ msgstr "Tiedosto rajattu valintaan"
#: Menus.cpp:3243
#, c-format
msgid "Split-deleted %.2f seconds at t=%.2f"
-msgstr ""
+msgstr "Jaettiin ja tuhottiin %.2f sekuntia kohdassa t=%.2f"
#: Menus.cpp:3246
msgid "Split Delete"
-msgstr ""
+msgstr "Jaa ja tuhoa"
#: Menus.cpp:3267
#, c-format
@@ -2653,19 +2665,19 @@ msgstr ""
#: Menus.cpp:3368
msgid "Cut labeled regions to the clipboard"
-msgstr ""
+msgstr "Leikkaa merkityt alueet leikepöydälle"
#: Menus.cpp:3382
msgid "SplitCut labeled regions to the clipboard"
-msgstr ""
+msgstr "Jaa ja leikkaa merkityt alueet leikepöydälle"
#: Menus.cpp:3383
msgid "Split Cut Labels"
-msgstr ""
+msgstr "Jaa ja leikkaa merkit"
#: Menus.cpp:3397
msgid "Copied labeled regions to the clipboard"
-msgstr ""
+msgstr "Kopioi merkityt alueet leikepöydälle"
#: Menus.cpp:3397
msgid "Copy Labels"
@@ -2677,31 +2689,31 @@ msgstr ""
#: Menus.cpp:3409
msgid "Deleted labeled regions"
-msgstr ""
+msgstr "Tuhotut merkityt alueet"
#: Menus.cpp:3421
msgid "Split Delete Labels"
-msgstr ""
+msgstr "Jako ja tuhoa merkit"
#: Menus.cpp:3421
msgid "Split Deleted labeled regions"
-msgstr ""
+msgstr "Jaa tuhotut merkityt alueet"
#: Menus.cpp:3433
msgid "Silence Labels"
-msgstr ""
+msgstr "Hiljennä merkit"
#: Menus.cpp:3433
msgid "Silenced labeled regions"
-msgstr ""
+msgstr "Hiljennetyt merkityt alueet"
#: Menus.cpp:3445
msgid "Split Labels"
-msgstr ""
+msgstr "Jaa merkit"
#: Menus.cpp:3445
msgid "Split labeled regions"
-msgstr ""
+msgstr "Jaa merkityt alueet"
#: Menus.cpp:3457
msgid "Join Labels"
@@ -2709,7 +2721,7 @@ msgstr ""
#: Menus.cpp:3457
msgid "Joined labeled regions"
-msgstr ""
+msgstr "Yhdistetyt merkityt alueet"
#: Menus.cpp:3469
msgid "Disjoin Labels"
@@ -2717,7 +2729,7 @@ msgstr ""
#: Menus.cpp:3469
msgid "Disjoined labeled regions"
-msgstr ""
+msgstr "Erotetut merkityt alueet"
#: Menus.cpp:3491
#: TrackPanel.cpp:6134
@@ -2726,25 +2738,16 @@ msgstr "Jaettu"
#: Menus.cpp:3585
msgid "Split New"
-msgstr ""
+msgstr "Uusi jako"
#: Menus.cpp:3585
msgid "Split to new track"
-msgstr ""
+msgstr "Jaa uuteen raitaan"
#: Menus.cpp:3668
msgid "Split at labels"
msgstr "Jaa merkkien kohdalta"
-#: Menus.cpp:3969
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "Jotta spektri voidaan esittää, kaikkilla valituilla raidoilla täytyy olla sama näytteenottotaajuus."
-
-#: Menus.cpp:3995
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "Audiota on valittu liian paljon. Vain ensimmäiset %.1f sekuntia audiosta analysoidaan."
-
#: Menus.cpp:4130
#, c-format
msgid "Imported labels from '%s'"
@@ -2811,9 +2814,8 @@ msgstr ""
msgid "Mixed and rendered %d tracks into one new mono track"
msgstr ""
-#: Menus.cpp:4273
-#: Mix.cpp:121
-msgid "&Mix and Render"
+#: Menus.cpp:4406 Mix.cpp:120
+msgid "Mix and Render"
msgstr ""
#: Menus.cpp:4403
@@ -2977,6 +2979,10 @@ msgstr "Tulostamisessa oli ongelma."
msgid "Print"
msgstr "Tulosta"
+#: Project.cpp:671
+msgid "Repeat Last Effect"
+msgstr ""
+
#: Project.cpp:673
msgid "Main Mix"
msgstr ""
@@ -3018,9 +3024,9 @@ msgstr ""
msgid "Save changes?"
msgstr "Tallennetaanko muutokset?"
-#: Project.cpp:1772
-msgid "All files|*.*|All supported files|"
-msgstr "Kaikki tiedostot|*.*|Kaikki tuetut tiedostot|"
+#: Project.cpp:1949
+msgid "All files|*|All supported files|"
+msgstr ""
#: Project.cpp:1802
msgid "Select one or more audio files..."
@@ -3051,6 +3057,17 @@ msgstr "1.0 tai aikaisempi"
msgid "Opening old project file"
msgstr ""
+#: Project.cpp:2097
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2098
+msgid "Backup file detected"
+msgstr ""
+
#: Project.cpp:1915
#: Project.cpp:1923
msgid "Error opening file"
@@ -3089,7 +3106,7 @@ msgstr ""
#: Project.cpp:2084
#: effects/Repair.h:29
msgid "Repair"
-msgstr ""
+msgstr "Korjaus..."
#: Project.cpp:2230
#, c-format
@@ -3109,10 +3126,12 @@ msgstr "Tämä tiedosto on tallennettu Audacityn versiolla %s.\n"
msgid "Can't open project file"
msgstr "Projektitiedoston avaaminen ei onnistu"
-#: Project.cpp:2311
+#: Project.cpp:2508
#, c-format
msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
msgstr ""
@@ -3132,10 +3151,11 @@ msgstr ""
msgid "Warning empty project"
msgstr ""
-#: Project.cpp:2588
-#, fuzzy, c-format
+#: Project.cpp:2816
+#, c-format
+#, fuzzy
msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+"is not writable or the disk is full."
msgstr "Projektia ei voitu tallentaa. Ehkä %s ei ole kirjoitettavissa,\n"
"tai levy on täynnä."
@@ -3144,6 +3164,12 @@ msgstr "Projektia ei voitu tallentaa. Ehkä %s ei ole kirjoitettavissa,\n"
msgid "Error saving project"
msgstr "Virhe tallennettaessa projektia"
+#: Project.cpp:2842 Project.cpp:3943 Tags.cpp:1198
+#: effects/Equalization.cpp:1096
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
#: Project.cpp:2680
#, c-format
msgid "Saved %s"
@@ -3197,6 +3223,10 @@ msgid "You are saving an Audacity project file (.aup).\n"
"To save an audio file for other programs, use one of the \"File > Export\" commands.\n"
msgstr ""
+#: Project.cpp:3161
+msgid "Save Project As..."
+msgstr ""
+
#: Project.cpp:2898
msgid "Audacity projects (*.aup)|*.aup"
msgstr "Audacityn projektitiedostot (*.aup)|*.aup"
@@ -3312,6 +3342,171 @@ msgstr ""
msgid "32-bit float"
msgstr ""
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
+
+#: export/ExportMultiple.cpp:245
+#: prefs/DirectoriesPrefs.cpp:92
+msgid "Choose..."
+msgstr "Valitse..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
+
+#: effects/Normalize.cpp:74
+#: effects/Normalize.cpp:75
+msgid "false"
+msgstr ""
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr "Työkalut"
+
+#: toolbars/ControlToolBar.cpp:83
+msgid "Control"
+msgstr ""
+
+#: effects/LoadEffects.cpp:114
+#: toolbars/MixerToolBar.cpp:60
+msgid "Mixer"
+msgstr ""
+
+#: toolbars/MeterToolBar.cpp:50
+msgid "Meter"
+msgstr ""
+
+#: Screenshot.cpp:390
+msgid "Edit"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:121
+#: prefs/AudioIOPrefs.cpp:139
+#: prefs/MidiIOPrefs.cpp:118
+#: prefs/MidiIOPrefs.cpp:136
+#: toolbars/DeviceToolBar.cpp:57
+msgid "Device"
+msgstr "Laite"
+
+#: toolbars/TranscriptionToolBar.cpp:84
+msgid "Transcription"
+msgstr ""
+
+#: TrackPanel.cpp:457
+#: TrackPanel.cpp:458
+msgid "Track Panel"
+msgstr ""
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: export/ExportMultiple.cpp:288
+#: export/ExportMultiple.cpp:290
+msgid "Tracks"
+msgstr "Raidat"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
#: Screenshot.cpp:384
msgid "Saved "
msgstr "Tallennettu"
@@ -3320,6 +3515,10 @@ msgstr "Tallennettu"
msgid "Error trying to save file: "
msgstr "Virhe yritettäessä tallentaa tiedostoa:"
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
#: Sequence.cpp:804
#: Sequence.cpp:814
#: Sequence.cpp:821
@@ -3338,7 +3537,7 @@ msgstr "&Virheidenjäljitys"
#: SoundActivatedRecord.cpp:36
msgid "Sound Activated Record"
-msgstr ""
+msgstr "Ãänikäynnistysnauhoitus"
#: SoundActivatedRecord.cpp:58
#, fuzzy
@@ -3346,7 +3545,8 @@ msgid "Activation level (dB):"
msgstr "Vahvistus (dB):"
#: SplashDialog.cpp:60
-msgid "&Welcome to Audacity!"
+#, fuzzy
+msgid "Welcome to Audacity!"
msgstr "&Tervetuloa käyttämään Audacitya!"
#: SplashDialog.cpp:112
@@ -3396,11 +3596,9 @@ msgstr "Tunnisteen nimi"
msgid "Tag Value"
msgstr "Tunnisteen arvo"
-#: Tags.cpp:829
-#: Tags.cpp:1486
-#: prefs/KeyConfigPrefs.cpp:116
-msgid "&Clear"
-msgstr "&Tyhjennä"
+#: Tags.cpp:828
+msgid "Cl&ear"
+msgstr ""
#: Tags.cpp:835
msgid "Genres"
@@ -3434,11 +3632,9 @@ msgstr "&Lataa..."
msgid "&Save..."
msgstr "&Tallenna..."
-#: Tags.cpp:852
-#: Tags.cpp:1477
-#: Tags.cpp:2004
-msgid "S&et Default"
-msgstr "&Aseta oletukseksi"
+#: Tags.cpp:851
+msgid "Set De&fault"
+msgstr ""
#: Tags.cpp:1002
#: Tags.cpp:1640
@@ -3501,6 +3697,10 @@ msgstr "Virhe ladattaessa metatietoja"
msgid "Save Metadata As:"
msgstr "Tallenna metatiedot nimellä:"
+#: Tags.cpp:1200
+msgid "Error saving tags file"
+msgstr ""
+
#: Theme.cpp:638
#, c-format
msgid "Audacity could not write file:\n"
@@ -3588,10 +3788,22 @@ msgstr ""
msgid "Duration"
msgstr "Kesto"
+#: TimeTrack.cpp:44
+msgid "Time Track"
+msgstr ""
+
#: TimerRecordDialog.cpp:68
msgid "Audacity Timer Record"
msgstr ""
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
#: TimerRecordDialog.cpp:224
msgid "Recording start"
msgstr "Ãänityksen alku"
@@ -3633,11 +3845,6 @@ msgstr ""
msgid "Audacity Timer Record - Waiting for Start"
msgstr ""
-#: TrackPanel.cpp:457
-#: TrackPanel.cpp:458
-msgid "Track Panel"
-msgstr ""
-
#: TrackPanel.cpp:541
#: prefs/QualityPrefs.cpp:97
msgid "Other..."
@@ -3680,9 +3887,8 @@ msgstr "Ãäniaalto (dB)"
#: TrackPanel.cpp:557
#: prefs/GUIPrefs.cpp:157
-#, fuzzy
msgid "Spectrum log(f)"
-msgstr "Spektri"
+msgstr "Spektrilogi"
#. i18n-hint: short form of 'logarithm'
#: TrackPanel.cpp:558
@@ -3713,6 +3919,10 @@ msgstr "Yhdistä stereoraidaksi"
msgid "Split Stereo Track"
msgstr "Jaa stereoraita"
+#: TrackPanel.cpp:629
+msgid "Split Stereo to Mono"
+msgstr ""
+
#: TrackPanel.cpp:566
msgid "Set Sample Format"
msgstr "Aseta näytteen muoto"
@@ -3925,6 +4135,10 @@ msgstr ""
msgid "Merged Clips"
msgstr ""
+#: TrackPanel.cpp:4271
+msgid "Remove"
+msgstr ""
+
#: TrackPanel.cpp:4176
msgid "Removed Cut Line"
msgstr ""
@@ -3937,14 +4151,6 @@ msgstr ""
msgid "Adjusted gain"
msgstr ""
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr ""
-
#: TrackPanel.cpp:5923
msgid "Can't delete track with active audio"
msgstr ""
@@ -3980,6 +4186,11 @@ msgstr "Kanava"
msgid "Split stereo track '%s'"
msgstr "Jaettu stereoraita \"%s\""
+#: TrackPanel.cpp:6243
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
#: TrackPanel.cpp:6169
#, c-format
msgid "Made '%s' a stereo track"
@@ -4060,6 +4271,10 @@ msgstr ""
msgid "Face size"
msgstr ""
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr ""
+
#: TrackPanel.cpp:7171
msgid "Mute"
msgstr "Mykkä"
@@ -4144,8 +4359,9 @@ msgstr "Laajennukset 1-%i"
msgid "Plugins %i to %i"
msgstr "Laajennukset %i-%i"
-#: commands/CommandManager.cpp:857
-msgid "Disallowed for some reason. Try selecting some audio first?"
+#: commands/CommandManager.cpp:881
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
msgstr ""
#: commands/CommandManager.cpp:892
@@ -4235,7 +4451,7 @@ msgstr ""
#: effects/AutoDuck.cpp:453
#: effects/AutoDuck.cpp:570
msgid "Auto Duck"
-msgstr ""
+msgstr "Automaattinen välttely"
#: effects/AutoDuck.cpp:137
msgid "Auto Duck needs a control track which must be placed below the selected track(s)."
@@ -4307,7 +4523,7 @@ msgstr "Esikatselu ei ole käytössä"
#: effects/AutoDuck.h:98
msgid "Auto Duck..."
-msgstr ""
+msgstr "Automaattinen välttely"
#: effects/AutoDuck.h:115
msgid "Processing Auto Duck..."
@@ -4543,11 +4759,11 @@ msgstr "Iskua minuutissa (BPM) muutos:"
#: effects/ChangeTempo.cpp:207
msgid "From beats per minute"
-msgstr ""
+msgstr "Iskuista minuutissa"
#: effects/ChangeTempo.cpp:212
msgid "To beats per minute"
-msgstr ""
+msgstr "Iskuiksi minuutissa"
#: effects/ChangeTempo.cpp:216
#, fuzzy
@@ -4573,9 +4789,8 @@ msgid "Changing Tempo"
msgstr "Muutetaan tempoa"
#: effects/ClickRemoval.cpp:314
-#, fuzzy
msgid "Click Removal"
-msgstr "Naksahdusten poisto..."
+msgstr "Naksahdusten poisto"
#: effects/ClickRemoval.cpp:327
msgid "Click and Pop Removal by Craig DeForest"
@@ -4641,8 +4856,8 @@ msgid "Decay Time"
msgstr ""
#: effects/Compressor.cpp:530
-msgid "Normalize to 0dB after compressing"
-msgstr "Normalisoi 0dB:iin kompression jälkeen"
+msgid "Make-up gain for 0dB after compressing"
+msgstr ""
#: effects/Compressor.cpp:563
#, fuzzy, c-format
@@ -4698,9 +4913,13 @@ msgstr "Kompressori..."
msgid "Applying Dynamic Range Compression..."
msgstr "Kompressoidaan..."
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
-msgstr ""
+msgstr "Kontrastityökalun etuala"
#: effects/Contrast.cpp:79
msgid "Foreground times selected.\n"
@@ -4717,28 +4936,9 @@ msgid "Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr "Terve.\n"
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:193
-#: effects/Contrast.cpp:204
-#: effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr ""
-
#: effects/Contrast.cpp:231
msgid "Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:235
-msgid "Parameters"
-msgstr "Parametrit"
+msgstr "Kontrastianalyysi"
#: effects/Contrast.cpp:242
#: effects/ToneGen.cpp:355
@@ -4771,7 +4971,15 @@ msgstr ""
msgid "Foreground end time"
msgstr ""
-#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
+#: effects/Contrast.cpp:193
+#: effects/Contrast.cpp:204
+#: effects/Contrast.cpp:266
+#: effects/Contrast.cpp:289
+msgid "Measured"
+msgstr ""
+
+#: effects/Contrast.cpp:373
+#: effects/Contrast.cpp:417
msgid "Use selection"
msgstr ""
@@ -4793,7 +5001,7 @@ msgstr "Tlos"
#: effects/Contrast.cpp:302
msgid "Contrast Result:"
-msgstr ""
+msgstr "Kontrastin tulos:"
#: Tags.cpp:840
#: Tags.cpp:1990
@@ -4816,16 +5024,8 @@ msgstr ""
msgid "Help for WCAG2 Audio Contrast Analyzer"
msgstr ""
-#: toolbars/ControlToolBar.cpp:83
-msgid "Control"
-msgstr ""
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
+#: effects/Contrast.cpp:401
+msgid "Close (keeping times)"
msgstr ""
#: effects/Contrast.cpp:328
@@ -4880,7 +5080,7 @@ msgstr ""
#: effects/Contrast.cpp:551
msgid "Export Contrast Result As:"
-msgstr ""
+msgstr "Vie kontrastin tulos:"
#: effects/Contrast.cpp:572
msgid "WCAG 2.0 Success Criteria 1.4.7 Contrast Results"
@@ -4895,22 +5095,26 @@ msgstr ""
msgid "Foreground"
msgstr ""
-#: effects/Contrast.cpp:581 effects/Contrast.cpp:598
+#: effects/Contrast.cpp:581
+#: effects/Contrast.cpp:598
#, c-format
msgid "Time started = %2d hour(s), %2d minute(s), %.2f seconds."
msgstr ""
-#: effects/Contrast.cpp:586 effects/Contrast.cpp:603
+#: effects/Contrast.cpp:586
+#: effects/Contrast.cpp:603
#, c-format
msgid "Time ended = %2d hour(s), %2d minute(s), %.2f seconds."
msgstr ""
-#: effects/Contrast.cpp:588 effects/Contrast.cpp:605
+#: effects/Contrast.cpp:588
+#: effects/Contrast.cpp:605
#, c-format
msgid "Average rms = %.1f dB."
msgstr ""
-#: effects/Contrast.cpp:590 effects/Contrast.cpp:607
+#: effects/Contrast.cpp:590
+#: effects/Contrast.cpp:607
msgid "Average rms = dB."
msgstr ""
@@ -4939,18 +5143,6 @@ msgstr ""
msgid "Data gathered"
msgstr ""
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr ""
-
#: effects/DtmfGen.cpp:56
msgid "DTMF Tone Generator"
msgstr ""
@@ -4977,7 +5169,7 @@ msgstr "Sijainti:"
#: effects/DtmfGen.cpp:486
msgid "Tone/silence ratio:"
-msgstr ""
+msgstr "Ãänen/hiljaisuuden suhde:"
#: effects/DtmfGen.cpp:496
msgid "Duty cycle:"
@@ -4996,11 +5188,11 @@ msgstr "ms"
#: effects/DtmfGen.cpp:500
msgid "Silence duration:"
-msgstr ""
+msgstr "Hiljaisuuden pituus:"
#: effects/DtmfGen.h:39
msgid "DTMF Tones..."
-msgstr ""
+msgstr "DTMF sävelet..."
#: effects/DtmfGen.h:53
#, c-format
@@ -5085,6 +5277,10 @@ msgstr ""
msgid "custom"
msgstr ""
+#: effects/Equalization.cpp:1098
+msgid "Error saving equalization curves"
+msgstr ""
+
#. i18n-hint: && in here is an escape character to get a single &
#. * on screen, so keep it as is
#: effects/Equalization.cpp:1101
@@ -5168,15 +5364,15 @@ msgstr "Tehdään uloshäivytystä"
#: effects/FindClipping.cpp:49
msgid "Detect clipping"
-msgstr ""
+msgstr "Etsii leikkausta"
#: effects/FindClipping.cpp:91
msgid "Clipping"
-msgstr ""
+msgstr "Leikkaus"
#: effects/FindClipping.cpp:211
msgid "Find Clipping"
-msgstr ""
+msgstr "Etsi leikkaus"
#: effects/FindClipping.cpp:222
msgid "by Leland Lucius"
@@ -5196,11 +5392,11 @@ msgstr ""
#: effects/FindClipping.h:37
msgid "Find Clipping..."
-msgstr ""
+msgstr "Etsi leikkaus..."
#: effects/FindClipping.h:54
msgid "Detecting clipping"
-msgstr ""
+msgstr "Etsii leikkausta"
#: effects/Invert.h:27
msgid "Invert"
@@ -5212,7 +5408,7 @@ msgstr "Muunnetaan vastaääneksi"
#: effects/Leveller.cpp:192
msgid "Leveller"
-msgstr ""
+msgstr "Tasoitus"
#: effects/Leveller.cpp:203
msgid "None-Skip"
@@ -5253,20 +5449,19 @@ msgstr ""
#: effects/Leveller.cpp:234
msgid "Noise Threshold (Hiss/Hum/Ambient Noise)"
-msgstr ""
+msgstr "Hälyn kynnys (sihinä/humina/taustahäly)"
#: effects/Leveller.cpp:238
-#, fuzzy
msgid "Threshold for Noise:"
-msgstr "Kynnys: "
+msgstr "Hälyn kynnys: "
#: effects/Leveller.h:28
msgid "Leveller..."
-msgstr ""
+msgstr "Tasoitus..."
#: effects/Leveller.h:42
msgid "Applying Leveller..."
-msgstr ""
+msgstr "Tasoittaa..."
#: effects/LoadEffects.cpp:102
#, fuzzy
@@ -5295,11 +5490,6 @@ msgstr "Vastaääni"
msgid "Analyser"
msgstr "&Analysoi"
-#: effects/LoadEffects.cpp:114
-#: toolbars/MixerToolBar.cpp:60
-msgid "Mixer"
-msgstr ""
-
#: effects/LoadEffects.cpp:116
msgid "Simulator"
msgstr ""
@@ -5452,15 +5642,15 @@ msgstr "Ruskea"
#: effects/Noise.cpp:41
msgid "Noise Generator"
-msgstr ""
+msgstr "Hälygeneraattori"
#: effects/Noise.cpp:241
msgid "Noise type"
-msgstr ""
+msgstr "Hälyn tyyppi"
#: effects/Noise.h:41
msgid "Noise..."
-msgstr ""
+msgstr "Häly..."
#: effects/Noise.h:55
#, c-format
@@ -5469,7 +5659,7 @@ msgstr ""
#: effects/Noise.h:59
msgid "Generating Noise"
-msgstr ""
+msgstr "Luo hälyä"
#: effects/NoiseRemoval.cpp:192
#, c-format
@@ -5509,11 +5699,11 @@ msgstr "Hae kohinaprofiili"
#: effects/NoiseRemoval.cpp:841
msgid "Noise reduction (dB):"
-msgstr ""
+msgstr "Hälyn poisto (dB):"
#: effects/NoiseRemoval.cpp:850
msgid "Noise reduction"
-msgstr ""
+msgstr "Hälyn poisto"
#: effects/NoiseRemoval.cpp:849
msgid "Frequency smoothing (Hz):"
@@ -5550,11 +5740,6 @@ msgstr "Poistetaan kohinaa"
msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr ""
-#: effects/Normalize.cpp:74
-#: effects/Normalize.cpp:75
-msgid "false"
-msgstr ""
-
#. i18n-hint: true here means that the option was
#. * selected. Opposite false if not selected
#: effects/Normalize.cpp:74
@@ -5737,11 +5922,11 @@ msgstr "Käännetään takaperin"
#: effects/Silence.cpp:32
msgid "Silence Generator"
-msgstr ""
+msgstr "Hiljaisuusgeneraatori"
#: effects/Silence.h:34
msgid "Silence..."
-msgstr ""
+msgstr "Hiljaisuus..."
#: effects/Silence.h:48
msgid "Generating Silence"
@@ -5771,7 +5956,7 @@ msgstr ""
#: effects/SpikeCleaner.cpp:178
msgid "Theshold for silence: "
-msgstr ""
+msgstr "Hiljaisuuden kynnysarvo:"
#: effects/SpikeCleaner.h:27
msgid "Spike Cleaner..."
@@ -5783,7 +5968,7 @@ msgstr ""
#: effects/StereoToMono.h:23
#, fuzzy
-msgid "&Stereo to Mono"
+msgid "Stereo to Mono"
msgstr "Stereo, "
#: effects/StereoToMono.h:38
@@ -5796,7 +5981,7 @@ msgstr ""
#: effects/TimeScale.cpp:176
msgid "Sliding Time Scale/Pitch Shift"
-msgstr ""
+msgstr "Liukuva aikaskaala / sävelkorkeuden siirtymä"
#: effects/TimeScale.cpp:178
msgid "using SBSMS, by Clayton Otey"
@@ -5828,7 +6013,7 @@ msgstr ""
#: effects/TimeScale.h:33
msgid "Sliding Time Scale/Pitch Shift..."
-msgstr ""
+msgstr "Liukuva aikaskaala / sävelkorkeuden siirtymä..."
#: effects/TimeScale.h:47
msgid "Changing Tempo/Pitch"
@@ -5850,7 +6035,7 @@ msgstr ""
#: effects/ToneGen.cpp:71
msgid "Chirp Generator"
-msgstr ""
+msgstr "Viserrysgeneraattori"
#: effects/ToneGen.cpp:71
msgid "Tone Generator"
@@ -5904,15 +6089,15 @@ msgstr "Nopea Sinc-interpolointi"
#: effects/ToneGen.h:40
msgid "Chirp..."
-msgstr ""
+msgstr "Viserrys..."
#: effects/ToneGen.h:40
msgid "Tone..."
-msgstr ""
+msgstr "Sävel..."
#: effects/ToneGen.h:54
msgid "Generating Chirp"
-msgstr ""
+msgstr "Luo viserrystä"
#: effects/ToneGen.h:54
msgid "Generating Tone"
@@ -5925,10 +6110,14 @@ msgstr ""
#: effects/TruncSilence.cpp:113
#: effects/TruncSilence.cpp:321
msgid "Truncate Silence"
+msgstr "Lyhennä hiljaisuutta"
+
+#: effects/TruncSilence.cpp:438
+msgid "by Lynn Allan && Philip Van Baren"
msgstr ""
-#: effects/TruncSilence.cpp:345
-msgid "Max silence duration:"
+#: effects/TruncSilence.cpp:452
+msgid "Min silence duration:"
msgstr ""
#: effects/TruncSilence.cpp:348
@@ -5939,33 +6128,87 @@ msgstr ""
msgid "milliseconds"
msgstr "millisekuntia"
+#: effects/TruncSilence.cpp:345
+msgid "Max silence duration:"
+msgstr "Hiljaisuuden maksimipituus:"
+
+#: effects/TruncSilence.cpp:460
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:463
+msgid ":1"
+msgstr ""
+
#: effects/TruncSilence.cpp:350
msgid "Threshold for silence:"
-msgstr ""
+msgstr "Hiljaisuuden kynnysarvo:"
-#: effects/TruncSilence.cpp:374
-msgid " Duration must be at least 1 millisecond"
+#: effects/TruncSilence.cpp:491
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
msgstr ""
#: effects/TruncSilence.h:28
msgid "Truncate Silence..."
-msgstr ""
+msgstr "Typistä hiljaisuutta..."
#: effects/TruncSilence.h:42
msgid "Truncating Silence..."
+msgstr "Typistää hiljaisuutta..."
+
+#: effects/ladspa/LadspaEffect.cpp:615
+#: effects/lv2/LV2Effect.cpp:823
+msgid "Effect Settings"
+msgstr "Efektiasetukset"
+
+#: effects/ladspa/LadspaEffect.cpp:580
+#: effects/ladspa/LadspaEffect.cpp:588
+#: prefs/GUIPrefs.cpp:51
+#: prefs/QualityPrefs.cpp:72
+msgid "None"
+msgstr "Ei mitään"
+
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
msgstr ""
-#: effects/VST/VSTEffect.cpp:172
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "Valitan, VST-efektejä ei voi käyttää stereoraidoille, joissa raitojen yksittäiset kanavat eivät täsmää."
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
-#: effects/VST/VSTEffect.cpp:187
-msgid "Can't process replacing"
-msgstr "Korvausta ei voitu suorittaa"
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
-#: effects/VST/VSTEffect.cpp:410
-msgid "VST Plug-in parameters:"
-msgstr "VST-laajennuksen parametrit:"
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr ""
#: effects/Wahwah.cpp:61
#, c-format
@@ -6018,24 +6261,12 @@ msgstr "Suoritetaan efektiä: %s"
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr ""
-#: effects/ladspa/LadspaEffect.cpp:580
-#: effects/ladspa/LadspaEffect.cpp:588
-#: prefs/GUIPrefs.cpp:51
-#: prefs/QualityPrefs.cpp:72
-msgid "None"
-msgstr "Ei mitään"
-
#: effects/ladspa/LadspaEffect.cpp:582
#: effects/lv2/LV2Effect.cpp:798
#: effects/vamp/VampEffect.cpp:395
msgid "Author: "
msgstr "Tekijä: "
-#: effects/ladspa/LadspaEffect.cpp:615
-#: effects/lv2/LV2Effect.cpp:823
-msgid "Effect Settings"
-msgstr "Efektiasetukset"
-
#: effects/ladspa/LadspaEffect.cpp:710
#: effects/ladspa/LadspaEffect.cpp:713
#: effects/lv2/LV2Effect.cpp:834
@@ -6240,9 +6471,21 @@ msgstr "Koko projektia viedään komentorivienkooderia käyttäen"
msgid "Command Output"
msgstr "Komennon tuloste"
-#: export/ExportFFmpeg.cpp:59
+#: export/ExportFFmpeg.cpp:61
msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
#: export/ExportFFmpeg.cpp:394
@@ -6318,6 +6561,11 @@ msgstr "Tee AAC-asetukset"
msgid "AAC Export Setup"
msgstr "AAC-vientiasetukset"
+#: export/ExportFFmpegDialogs.cpp:940
+#: export/ExportOGG.cpp:86
+msgid "Quality:"
+msgstr "Laatu:"
+
#: export/ExportFFmpegDialogs.cpp:217
msgid "Specify AMR-NB Options"
msgstr "Tee AMR-NB-asetukset"
@@ -6452,13 +6700,8 @@ msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n
"Recommended - 192000"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:940
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr "Laatu:"
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:929
+msgid "Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
@@ -6478,10 +6721,10 @@ msgstr ""
msgid "Cutoff Bandwidth:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:947
+#: export/ExportFFmpegDialogs.cpp:935
msgid "Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:949
@@ -6674,12 +6917,12 @@ msgstr "M4A (AAC) -tiedostot (FFmpeg)"
msgid "AC3 Files (FFmpeg)"
msgstr "AC3-tiedostot (FFmpeg)"
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:56
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:57
@@ -6790,6 +7033,17 @@ msgstr "Bittisyvyys:"
msgid "FLAC Files"
msgstr "FLAC-tiedostot"
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
#: export/ExportFLAC.cpp:312
msgid "Exporting the selected audio as FLAC"
msgstr "Viedään valittua äänt FLAC-muodossa"
@@ -7048,11 +7302,6 @@ msgstr "Asetukset..."
msgid "Export location:"
msgstr "Viennin kohde:"
-#: export/ExportMultiple.cpp:245
-#: prefs/DirectoriesPrefs.cpp:92
-msgid "Choose..."
-msgstr "Valitse..."
-
#: export/ExportMultiple.cpp:246
msgid "Create"
msgstr "Luo"
@@ -7079,11 +7328,6 @@ msgstr "Ensimmäisen tiedoston nimi:"
msgid "First file name"
msgstr "Ensimmäisen tiedoston nimi:"
-#: export/ExportMultiple.cpp:288
-#: export/ExportMultiple.cpp:290
-msgid "Tracks"
-msgstr "Raidat"
-
#: export/ExportMultiple.cpp:297
msgid "Name files:"
msgstr "Nimeä tiedostot:"
@@ -7120,6 +7364,35 @@ msgstr "\"%s\" luotiin onnistuneesti."
msgid "Choose a location to save the exported files"
msgstr "Valitse hakemisto vietäville tiedostoille"
+#: export/ExportMultiple.cpp:524
+#, c-format
+msgid "Successfully exported the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:527
+#, c-format
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr ""
+
#: export/ExportMultiple.cpp:539
#, c-format
msgid "\"%s\" doesn't exist.\n"
@@ -7134,18 +7407,6 @@ msgstr "Tiedostoa \"%s\" ei ole.\n"
msgid "Edit metadata"
msgstr "Muokkaa metatietoja"
-#: export/ExportMultiple.cpp:664
-#: export/ExportMultiple.cpp:831
-#, c-format
-msgid "Successfully exported %d file(s)."
-msgstr "%d tiedosto(a) vietiinonnistuneesti."
-
-#: export/ExportMultiple.cpp:665
-#: export/ExportMultiple.cpp:832
-#, c-format
-msgid "Something went wrong after exporting %d file(s)."
-msgstr ""
-
#: export/ExportMultiple.cpp:881
#, c-format
msgid "Label %s is not a legal file name. You cannot use any of: %s\n"
@@ -7397,6 +7658,10 @@ msgstr ""
msgid "FLAC files"
msgstr "FLAC-tiedostot"
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr ""
+
#: import/ImportLOF.cpp:95
msgid "List of Files in basic text format"
msgstr "Lista tiedostoista tekstitiedostomuodossa"
@@ -7574,45 +7839,47 @@ msgstr "Ãäniaalto"
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr ""
-#: prefs/AudioIOPrefs.cpp:41
-#: prefs/AudioIOPrefs.cpp:42
-#: prefs/MidiIOPrefs.cpp:44
-#: prefs/MidiIOPrefs.cpp:45
-msgid "Audio I/O"
-msgstr "Audio I/O"
+#: prefs/BatchPrefs.cpp:55
+#: prefs/BatchPrefs.cpp:56
+msgid "Batch"
+msgstr ""
-#: prefs/AudioIOPrefs.cpp:102
-#: prefs/MidiIOPrefs.cpp:99
-msgid "1 (Mono)"
-msgstr "1 (mono)"
+#: prefs/BatchPrefs.cpp:77
+#: prefs/GUIPrefs.cpp:92
+msgid "Behaviors"
+msgstr ""
-#: prefs/AudioIOPrefs.cpp:103
-#: prefs/MidiIOPrefs.cpp:100
-msgid "2 (Stereo)"
-msgstr "2 (stereo)"
+#: prefs/BatchPrefs.cpp:80
+msgid "&Don't apply effects in batch mode"
+msgstr ""
-#: prefs/AudioIOPrefs.cpp:117
-#: prefs/MidiIOPrefs.cpp:114
-msgid "Playback"
-msgstr "Toisto"
+#: prefs/BatchPrefs.cpp:83
+#: prefs/GUIPrefs.cpp:132
+msgid "Cl&eanSpeech Mode (Customized GUI)"
+msgstr ""
-#: prefs/AudioIOPrefs.cpp:121
-#: prefs/AudioIOPrefs.cpp:139
-#: prefs/MidiIOPrefs.cpp:118
-#: prefs/MidiIOPrefs.cpp:136
-#: toolbars/DeviceToolBar.cpp:57
-msgid "Device"
-msgstr "Laite"
+#: prefs/AudioIOPrefs.cpp:58
+msgid "Devices"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:34
+#: prefs/GUIPrefs.cpp:35
+msgid "Interface"
+msgstr "Käyttöliittymä"
+
+#: prefs/AudioIOPrefs.cpp:117
+msgid "Host"
+msgstr ""
#: prefs/AudioIOPrefs.cpp:124
#: prefs/MidiIOPrefs.cpp:121
msgid "Using:"
msgstr "Käytetään:"
-#: prefs/AudioIOPrefs.cpp:125
-#: prefs/MidiIOPrefs.cpp:122
-msgid "Portaudio v"
-msgstr ""
+#: prefs/AudioIOPrefs.cpp:117
+#: prefs/MidiIOPrefs.cpp:114
+msgid "Playback"
+msgstr "Toisto"
#: prefs/AudioIOPrefs.cpp:135
#: prefs/MidiIOPrefs.cpp:132
@@ -7624,102 +7891,23 @@ msgstr "Ãänitys"
msgid "Channels"
msgstr "Kanavat"
-#: prefs/AudioIOPrefs.cpp:147
-#: prefs/MidiIOPrefs.cpp:144
-msgid "Playthrough"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:149
-#, fuzzy
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr "Toista muut raidat uutta raitaa äänitettäessä"
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:154
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:157
-#, fuzzy
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr "Toista muut raidat uutta raitaa äänitettäessä"
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:168
-#: prefs/MidiIOPrefs.cpp:193
-msgid "Effects Preview"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:171
-msgid "Length of preview:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:176
-#: prefs/MidiIOPrefs.cpp:157
-msgid "Cut Preview"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:179
-msgid "Preview before cut region:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:181
-msgid "Preview after cut region:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:189
-#: prefs/MidiIOPrefs.cpp:167
-msgid "Latency"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:195
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:198
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:203
-msgid "Seek Time when playing"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:206
-#: prefs/MidiIOPrefs.cpp:186
-msgid "Short period:"
+#: prefs/DevicePrefs.cpp:166
+msgid "No audio interfaces"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:208
-#: prefs/MidiIOPrefs.cpp:188
-msgid "Long period:"
+#: prefs/DevicePrefs.cpp:202 prefs/DevicePrefs.cpp:207
+msgid "No devices found"
msgstr ""
-#: prefs/BatchPrefs.cpp:55
-#: prefs/BatchPrefs.cpp:56
-msgid "Batch"
-msgstr ""
-
-#: prefs/BatchPrefs.cpp:77
-#: prefs/GUIPrefs.cpp:92
-msgid "Behaviors"
-msgstr ""
-
-#: prefs/BatchPrefs.cpp:80
-msgid "&Don't apply effects in batch mode"
-msgstr ""
+#: prefs/AudioIOPrefs.cpp:102
+#: prefs/MidiIOPrefs.cpp:99
+msgid "1 (Mono)"
+msgstr "1 (mono)"
-#: prefs/BatchPrefs.cpp:83
-#: prefs/GUIPrefs.cpp:132
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr ""
+#: prefs/AudioIOPrefs.cpp:103
+#: prefs/MidiIOPrefs.cpp:100
+msgid "2 (Stereo)"
+msgstr "2 (stereo)"
#: prefs/DirectoriesPrefs.cpp:55
#: prefs/DirectoriesPrefs.cpp:56
@@ -7739,34 +7927,31 @@ msgstr "Sijainti:"
msgid "Free Space:"
msgstr "Vapaata tilaa:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr "Automaattitallennus"
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr "Tallenna automaattisesti kopio projektista erilliseen kansioon"
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
-msgstr "Automaattitallennuksen väli:"
-
-#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
-msgstr "minuuttia"
-
#: prefs/DirectoriesPrefs.cpp:110
msgid "Audio cache"
msgstr "Ãänivälimuisti"
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "Play and/or record using RAM (useful for slow drives)"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
#: prefs/DirectoriesPrefs.cpp:121
msgid "Choose a location to place the temporary directory"
msgstr "Valitse hakemisto väliaikaisille tiedostoille"
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: prefs/DirectoriesPrefs.cpp:166
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -7785,234 +7970,148 @@ msgstr "Hakemisto %s ei ole kirjoitettava"
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "Väliaikaishakemiston muutos tulee voimaan vasta, kun Audacity käynnistetään uudelleen"
-#: prefs/FileFormatPrefs.cpp:53
-#: prefs/FileFormatPrefs.cpp:54
-#, fuzzy
-msgid "Import / Export"
-msgstr "Tuo raakadataa"
-
-#: prefs/FileFormatPrefs.cpp:84
-msgid "MP3 Export Library"
-msgstr "MP3-vientikirjasto"
-
-#: prefs/FileFormatPrefs.cpp:87
-msgid "MP3 Library Version:"
-msgstr "MP3-kirjaston versio:"
-
-#: prefs/FileFormatPrefs.cpp:93
-msgid "MP3 Library:"
-msgstr "MP3-kirjasto:"
-
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:98
-msgid "LAME MP3 Library:"
-msgstr "LAME MP3 -kirjasto:"
-
-#: prefs/FileFormatPrefs.cpp:101
-#: prefs/FileFormatPrefs.cpp:125
-msgid "&Download"
-msgstr "&Lataa"
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
-msgstr "FFmpeg tuonti- ja vientikirjasto"
-
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
-msgstr "FFmpeg-kirjaston versio:"
-
-#: prefs/FileFormatPrefs.cpp:118
-#: prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
-msgstr "FFmpeg-kirjasto:"
-
-#: prefs/FileFormatPrefs.cpp:136
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:137
-msgid "When importing audio files"
-msgstr "Tuoatessa äänitiedostoja"
-
-#: prefs/FileFormatPrefs.cpp:140
-#, fuzzy
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
-msgstr "Tee tiedostosta kopio ennen muokkausta (turvallisempi)"
-
-#: prefs/FileFormatPrefs.cpp:141
-#, fuzzy
-msgid "&Read uncompressed audio files directly from the original (faster)"
-msgstr "Lue suoraan alkuperäistä tiedostoa (nopeampi)"
+#: prefs/GUIPrefs.cpp:42
+msgid "In Browser"
+msgstr "Selaimessa"
-#: prefs/FileFormatPrefs.cpp:143
-msgid "&Normalize all tracks in project"
-msgstr ""
+#: prefs/GUIPrefs.cpp:43
+msgid "From Internet"
+msgstr "Internetistä"
-#: prefs/FileFormatPrefs.cpp:148
-msgid "When saving a project that depends on other audio files"
+#: prefs/GUIPrefs.cpp:227
+msgid "36"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:151
-msgid "Always © all audio into project (safest)"
+#: prefs/GUIPrefs.cpp:228
+msgid "48"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:152
-msgid "&Do not copy any audio"
-msgstr "&Ãlä kopioi mitään ääntä"
-
-#: prefs/FileFormatPrefs.cpp:153
-msgid "&Ask user"
-msgstr "&Kysy"
-
-#: prefs/FileFormatPrefs.cpp:157
-msgid "When exporting tracks to an audio file"
+#: prefs/GUIPrefs.cpp:229
+msgid "60"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:160
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+#: prefs/GUIPrefs.cpp:230
+msgid "96"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:161
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+#: prefs/GUIPrefs.cpp:231
+msgid "120"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:163
-msgid "S&how Metadata Editor prior to export step"
+#: prefs/GUIPrefs.cpp:232
+msgid "145"
msgstr ""
-#: prefs/GUIPrefs.cpp:34
-#: prefs/GUIPrefs.cpp:35
-msgid "Interface"
-msgstr "Käyttöliittymä"
-
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
-msgstr "Selaimessa"
+#: prefs/GUIPrefs.cpp:141
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 dB (ylimalkainen alue korkea-amplitudiselle muokkaukselle)"
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
-msgstr "Internetistä"
+#: prefs/GUIPrefs.cpp:142
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 dB (8-bittisen PCM:n näytealue)"
-#: prefs/GUIPrefs.cpp:50
+#: prefs/GUIPrefs.cpp:143
#, fuzzy
-msgid "Simple"
-msgstr "Hiljaisuutta"
+msgid "-60 dB (PCM range of 10 bit samples)"
+msgstr "-96 dB (16-bittisen PCM:n näytealue)"
-#: prefs/GUIPrefs.cpp:94
-msgid "&Update display while playing"
-msgstr "&Päivitä näyttö soitettaessa"
+#: prefs/GUIPrefs.cpp:144
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 dB (16-bittisen PCM:n näytealue)"
-#: prefs/GUIPrefs.cpp:96
-msgid "Cl&osing last window quits Audacity"
-msgstr "Viimeisimmän ikkunan &sulkeminen lopettaa Audacityn"
+#: prefs/GUIPrefs.cpp:145
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 dB (suunnilleen ihmiskuulon raja)"
-#: prefs/GUIPrefs.cpp:98
-msgid "Enable &dragging of left and right selection edges"
-msgstr ""
+#: prefs/GUIPrefs.cpp:146
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB (24-bittisen PCM:n näytealue)"
+
+#: prefs/SpectrumPrefs.cpp:140
+msgid "Display"
+msgstr "Näyttö"
#: prefs/GUIPrefs.cpp:100
msgid "Er&gonomic order of audio I/O buttons"
msgstr ""
-#: prefs/GUIPrefs.cpp:102
-msgid "Automatically &fit tracks vertically zoomed"
+#: prefs/GUIPrefs.cpp:274
+msgid "Show &welcome message at program start up"
msgstr ""
-#: prefs/GUIPrefs.cpp:104
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+#: prefs/GUIPrefs.cpp:282
+msgid "Meter/Waveform dB range:"
msgstr ""
-#: prefs/GUIPrefs.cpp:106
-msgid "Editing a &clip can move other clips"
-msgstr ""
+#: prefs/GUIPrefs.cpp:167
+msgid "Help:"
+msgstr "Ohje:"
-#: prefs/GUIPrefs.cpp:108
-msgid "&Select all audio in project, if none selected"
-msgstr ""
+#: prefs/GUIPrefs.cpp:96
+msgid "Cl&osing last window quits Audacity"
+msgstr "Viimeisimmän ikkunan &sulkeminen lopettaa Audacityn"
#: prefs/GUIPrefs.cpp:110
msgid "&Beep on completion of longer activities"
msgstr ""
-#: prefs/GUIPrefs.cpp:114
-msgid "Show / Hide"
-msgstr "Näytä/piilota"
-
-#: prefs/GUIPrefs.cpp:116
-msgid "Enable cut &lines"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:118
-msgid "Show warnings about &temp files"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
-msgstr "Näytä &tallennusvalintaikkunan, vaikka projekti olisi tyhjä"
-
-#: prefs/GUIPrefs.cpp:122
-msgid "Show &Welcome Message at program start up"
-msgstr "Näytä &Tervetuloa-viesti sovelluksen käynnistyksessä"
-
#: prefs/GUIPrefs.cpp:126
#, fuzzy
msgid "Modes"
msgstr "Hiiri"
-#: prefs/GUIPrefs.cpp:129
-msgid "Don't a&pply effects in batch mode"
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
+#: prefs/GUIPrefs.cpp:129
+msgid "Don't a&pply effects in batch mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:141
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 dB (ylimalkainen alue korkea-amplitudiselle muokkaukselle)"
+#: prefs/FileFormatPrefs.cpp:53
+#: prefs/FileFormatPrefs.cpp:54
+#, fuzzy
+msgid "Import / Export"
+msgstr "Tuo raakadataa"
-#: prefs/GUIPrefs.cpp:142
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 dB (8-bittisen PCM:n näytealue)"
+#: prefs/FileFormatPrefs.cpp:137
+msgid "When importing audio files"
+msgstr "Tuoatessa äänitiedostoja"
-#: prefs/GUIPrefs.cpp:143
+#: prefs/FileFormatPrefs.cpp:140
#, fuzzy
-msgid "-60 dB (PCM range of 10 bit samples)"
-msgstr "-96 dB (16-bittisen PCM:n näytealue)"
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
+msgstr "Tee tiedostosta kopio ennen muokkausta (turvallisempi)"
-#: prefs/GUIPrefs.cpp:144
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 dB (16-bittisen PCM:n näytealue)"
+#: prefs/FileFormatPrefs.cpp:141
+#, fuzzy
+msgid "&Read uncompressed audio files directly from the original (faster)"
+msgstr "Lue suoraan alkuperäistä tiedostoa (nopeampi)"
-#: prefs/GUIPrefs.cpp:145
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 dB (suunnilleen ihmiskuulon raja)"
+#: prefs/FileFormatPrefs.cpp:143
+msgid "&Normalize all tracks in project"
+msgstr ""
-#: prefs/GUIPrefs.cpp:146
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB (24-bittisen PCM:n näytealue)"
+#: prefs/FileFormatPrefs.cpp:157
+msgid "When exporting tracks to an audio file"
+msgstr ""
-# i18n-hint: Refers to byte-order. Don't translate "endianness" if you don't
-# know the correct technical word.
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
-msgstr "Oletusnäkymä"
+#: prefs/FileFormatPrefs.cpp:160
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+msgstr ""
-#: prefs/GUIPrefs.cpp:164
-msgid "Other interface choices"
+#: prefs/FileFormatPrefs.cpp:161
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
msgstr ""
-#: prefs/GUIPrefs.cpp:167
-msgid "Help:"
-msgstr "Ohje:"
+#: prefs/FileFormatPrefs.cpp:163
+msgid "S&how Metadata Editor prior to export step"
+msgstr ""
-#: prefs/GUIPrefs.cpp:168
-#, fuzzy
-msgid "Solo Button:"
-msgstr "Painikkeet"
+#: prefs/FileFormatPrefs.cpp:287
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
+msgstr ""
#: prefs/KeyConfigPrefs.cpp:64
#: prefs/KeyConfigPrefs.cpp:65
@@ -8035,6 +8134,12 @@ msgstr "Näppäinoikotiet"
msgid "S&et"
msgstr "&Aseta"
+#: Tags.cpp:829
+#: Tags.cpp:1486
+#: prefs/KeyConfigPrefs.cpp:116
+msgid "&Clear"
+msgstr "&Tyhjennä"
+
#: prefs/KeyConfigPrefs.cpp:120
msgid "Note: Pressing Cmd+Q will quit. All other keys are valid."
msgstr "Huom: Cmd+Q lopettaa. Muut näppäimet ovat kelvollisia."
@@ -8048,13 +8153,14 @@ msgstr "&Oletukset"
msgid "Key Combination"
msgstr "Näppäinyhdistelmä"
-#: prefs/KeyConfigPrefs.cpp:163
-msgid "Export Keyboard Shortcuts As:"
-msgstr "Vie näppäinoikotiet tiedostoon:"
+#: prefs/KeyConfigPrefs.cpp:369
+#: toolbars/EditToolBar.cpp:144
+msgid "Undo"
+msgstr "Kumoa"
-#: prefs/KeyConfigPrefs.cpp:183
-msgid "Error saving keyboard shortcuts"
-msgstr "Virhe tallennettaessa näppäinoikoteitä"
+#: prefs/KeyConfigPrefs.cpp:195
+msgid "Redo"
+msgstr ""
#: prefs/KeyConfigPrefs.cpp:198
msgid "Select an XML file containing Audacity keyboard shortcuts..."
@@ -8064,6 +8170,14 @@ msgstr "Valitse Audacityn näppäinoikotiet sisältävä XML-tiedosto..."
msgid "Error loading keyboard shortcuts"
msgstr "Virhe ladattaessa näppäinoikoteitä"
+#: prefs/KeyConfigPrefs.cpp:163
+msgid "Export Keyboard Shortcuts As:"
+msgstr "Vie näppäinoikotiet tiedostoon:"
+
+#: prefs/KeyConfigPrefs.cpp:183
+msgid "Error saving keyboard shortcuts"
+msgstr "Virhe tallennettaessa näppäinoikoteitä"
+
#: prefs/KeyConfigPrefs.cpp:243
#, c-format
msgid "The keyboard shortcut '%s' is already assigned to:\n"
@@ -8071,10 +8185,69 @@ msgid "The keyboard shortcut '%s' is already assigned to:\n"
"'%s'"
msgstr ""
-#: prefs/KeyConfigPrefs.cpp:369
-#: toolbars/EditToolBar.cpp:144
-msgid "Undo"
-msgstr "Kumoa"
+#: prefs/FileFormatPrefs.cpp:53
+msgid "Libraries"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:84
+msgid "MP3 Export Library"
+msgstr "MP3-vientikirjasto"
+
+#: prefs/FileFormatPrefs.cpp:87
+msgid "MP3 Library Version:"
+msgstr "MP3-kirjaston versio:"
+
+#: prefs/FileFormatPrefs.cpp:93
+msgid "MP3 Library:"
+msgstr "MP3-kirjasto:"
+
+#: prefs/FileFormatPrefs.cpp:96
+#: prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:98
+msgid "LAME MP3 Library:"
+msgstr "LAME MP3 -kirjasto:"
+
+#: prefs/FileFormatPrefs.cpp:101
+#: prefs/FileFormatPrefs.cpp:125
+msgid "&Download"
+msgstr "&Lataa"
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr "FFmpeg tuonti- ja vientikirjasto"
+
+#: prefs/FileFormatPrefs.cpp:109
+msgid "FFmpeg Library Version:"
+msgstr "FFmpeg-kirjaston versio:"
+
+#: prefs/FileFormatPrefs.cpp:119
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:118
+#: prefs/FileFormatPrefs.cpp:122
+msgid "FFmpeg Library:"
+msgstr "FFmpeg-kirjasto:"
+
+#: prefs/AudioIOPrefs.cpp:41
+#: prefs/AudioIOPrefs.cpp:42
+#: prefs/MidiIOPrefs.cpp:44
+#: prefs/MidiIOPrefs.cpp:45
+msgid "Audio I/O"
+msgstr "Audio I/O"
+
+#: prefs/AudioIOPrefs.cpp:125
+#: prefs/MidiIOPrefs.cpp:122
+msgid "Portaudio v"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:147
+#: prefs/MidiIOPrefs.cpp:144
+msgid "Playthrough"
+msgstr "Läpisoitto"
#: prefs/MidiIOPrefs.cpp:146
#, fuzzy
@@ -8082,21 +8255,29 @@ msgid "&Play other tracks while recording new one"
msgstr "Toista muut raidat uutta raitaa äänitettäessä"
#: prefs/MidiIOPrefs.cpp:149
-#, fuzzy
msgid "&Hardware Playthrough (Play new track while recording it)"
msgstr "Toista muut raidat uutta raitaa äänitettäessä"
#: prefs/MidiIOPrefs.cpp:152
-#, fuzzy
msgid "&Software Playthrough (Play new track while recording it)"
msgstr "Toista muut raidat uutta raitaa äänitettäessä"
+#: prefs/AudioIOPrefs.cpp:176
+#: prefs/MidiIOPrefs.cpp:157
+msgid "Cut Preview"
+msgstr ""
+
#: prefs/MidiIOPrefs.cpp:160
msgid "Play before cut region:"
msgstr ""
#: prefs/MidiIOPrefs.cpp:162
msgid "Play after cut region:"
+msgstr "Soita leikatun alueen jälkeen:"
+
+#: prefs/AudioIOPrefs.cpp:189
+#: prefs/MidiIOPrefs.cpp:167
+msgid "Latency"
msgstr ""
#: prefs/MidiIOPrefs.cpp:173
@@ -8111,6 +8292,21 @@ msgstr ""
msgid "Seek Time"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:206
+#: prefs/MidiIOPrefs.cpp:186
+msgid "Short period:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:208
+#: prefs/MidiIOPrefs.cpp:188
+msgid "Long period:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:168
+#: prefs/MidiIOPrefs.cpp:193
+msgid "Effects Preview"
+msgstr ""
+
#: prefs/MidiIOPrefs.cpp:196
msgid "Play when previewing:"
msgstr ""
@@ -8351,10 +8547,62 @@ msgstr "Ctrl-rulla-vieritys"
msgid "Zoom in or out"
msgstr "Lähennä tai loitonna"
+#: prefs/AudioIOPrefs.cpp:171
+msgid "Length of preview:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:179
+msgid "Preview before cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:181
+msgid "Preview after cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:203
+msgid "Seek Time when playing"
+msgstr ""
+
#: prefs/PrefsDialog.cpp:94
msgid "Audacity Preferences"
msgstr "Audacity asetukset"
+#: prefs/FileFormatPrefs.cpp:303
+msgid "Projects"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:148
+msgid "When saving a project that depends on other audio files"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:151
+msgid "Always © all audio into project (safest)"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:152
+msgid "&Do not copy any audio"
+msgstr "&Ãlä kopioi mitään ääntä"
+
+#: prefs/FileFormatPrefs.cpp:153
+msgid "&Ask user"
+msgstr "&Kysy"
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr "Automaattitallennus"
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr "Tallenna automaattisesti kopio projektista erilliseen kansioon"
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr "Automaattitallennuksen väli:"
+
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr "minuuttia"
+
#: prefs/QualityPrefs.cpp:73
msgid "Rectangle"
msgstr "Neliö"
@@ -8379,73 +8627,108 @@ msgstr "Oletusnäytteenottotaajuus:"
msgid "Default Sample Format:"
msgstr "Näytteen oletusmuoto:"
-#: prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "Reaaliaikainen näytteenottotaajuuden muunnos:"
-
-#: prefs/QualityPrefs.cpp:139
-msgid "High-quality sample rate converter:"
-msgstr "Korkealaatuinen näytteenottotaajuuden muunnos:"
-
-#: prefs/QualityPrefs.cpp:142
-msgid "Real-time dither:"
-msgstr "Reaaliaikainen tasoitus:"
-
-#: prefs/QualityPrefs.cpp:145
-msgid "High-quality dither:"
-msgstr "Korkealaatuinen tasoitus:"
-
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
+#: prefs/QualityPrefs.cpp:167
+msgid "Real-time Conversion"
msgstr ""
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
+#: prefs/QualityPrefs.cpp:173 prefs/QualityPrefs.cpp:195
+msgid "Sample Rate Converter:"
msgstr ""
#: prefs/QualityPrefs.cpp:164
msgid "Dither"
msgstr ""
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
+#: prefs/QualityPrefs.cpp:191
+msgid "High-quality Conversion"
msgstr ""
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
+#: prefs/AudioIOPrefs.cpp:149
+msgid "Overdub: &Play other tracks while recording new one"
+msgstr "Toista muut raidat uutta raitaa äänitettäessä"
+
+#: prefs/AudioIOPrefs.cpp:152
+msgid "&Hardware Playthrough: Play new track while recording it"
+msgstr "Koneen läpisoitto: toista uutta nauhaa äänittäessäsi sitä"
+
+#: prefs/AudioIOPrefs.cpp:157
+msgid "&Software Playthrough: Play new track while recording or monitoring"
+msgstr "Toista muut raidat uutta raitaa äänitettäessä"
+
+#: prefs/AudioIOPrefs.cpp:160
+msgid "(uncheck when recording \"stereo mix\")"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:432
+msgid "milliseconds (higher = more latency)"
msgstr ""
-#: prefs/SmartRecordPrefs.cpp:37
-#: prefs/SmartRecordPrefs.cpp:38
-msgid "Smart Recording"
+#: prefs/AudioIOPrefs.cpp:438
+msgid "milliseconds (negative = backwards)"
msgstr ""
#: prefs/SmartRecordPrefs.cpp:64
#: prefs/SmartRecordPrefs.cpp:66
msgid "Sound Activated Recording"
-msgstr ""
+msgstr "Ãänikäynnistysnauhoitus"
#: prefs/SmartRecordPrefs.cpp:71
msgid "Sound Activation Level (dB):"
-msgstr ""
+msgstr "Ãänen käynnistystaso (dB):"
#: prefs/SpectrumPrefs.cpp:41
#: prefs/SpectrumPrefs.cpp:42
msgid "Spectrograms"
msgstr "Spektrogrammit"
-#: prefs/SpectrumPrefs.cpp:91
-msgid "FFT Size"
-msgstr "FFT:n koko"
-
#: prefs/SpectrumPrefs.cpp:94
msgid "8 - most wideband"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:99
msgid "256 - default"
msgstr "256 - oletus"
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:107
#, fuzzy
msgid "32768 - most narrowband"
@@ -8455,21 +8738,26 @@ msgstr "4096 - kapea-alaisin"
msgid "4096 - most narrowband"
msgstr "4096 - kapea-alaisin"
-#: prefs/SpectrumPrefs.cpp:116
-msgid "Window type:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:93
+#, fuzzy
+msgid "Window type"
msgstr "Ikkunatyyppi:"
#: prefs/SpectrumPrefs.cpp:125
msgid "FFT Skip Points"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:140
-msgid "Display"
-msgstr "Näyttö"
-
-#: prefs/SpectrumPrefs.cpp:144
-msgid "&Grayscale"
-msgstr "&Harmaasävyt"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
+msgstr ""
#: prefs/SpectrumPrefs.cpp:147
msgid "Minimum Frequency (Hz):"
@@ -8479,16 +8767,16 @@ msgstr ""
msgid "Maximum Frequency (Hz):"
msgstr "Suurin taajuus (Hz):"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
msgstr ""
#: prefs/SpectrumPrefs.cpp:165
@@ -8500,6 +8788,14 @@ msgstr "Uusi huippukohdan voimakkuus (dB):"
msgid "Max. Number of Notes (1..128):"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:161
+msgid "&Find Notes"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Quantize Notes"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:197
msgid "The maximum frequency must be an integer"
msgstr "Maksimitaajuuden täytyy olla kokonaisluku"
@@ -8516,22 +8812,59 @@ msgstr ""
msgid "Minimum frequency must be at least 0 Hz"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:220
#, fuzzy
msgid "The minimum amplitude (dB) must be an integer"
msgstr "Maksimitaajuuden täytyy olla kokonaisluku"
#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:230
-#, fuzzy
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
-msgstr "Maksimitaajuuden täytyy olla kokonaisluku"
+msgid "The maximum number of notes must be in the range 1..128"
+msgstr ""
#: prefs/ThemePrefs.cpp:62
#: prefs/ThemePrefs.cpp:63
msgid "Theme"
msgstr "Teema"
+#: prefs/ThemePrefs.cpp:126
+msgid "Info"
+msgstr "Tietoja"
+
+#: prefs/ThemePrefs.cpp:91
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#. i18n-hint: && in here is an escape character to get a single & on screen,
#. * so keep it as is
#: prefs/ThemePrefs.cpp:93
@@ -8562,83 +8895,101 @@ msgstr "Tallenna tiedostot"
msgid "Load Files"
msgstr "Lataa tiedostot"
-#: prefs/ThemePrefs.cpp:126
-msgid "Info"
-msgstr "Tietoja"
+#: prefs/GUIPrefs.cpp:50
+#, fuzzy
+msgid "Simple"
+msgstr "Hiljaisuutta"
-#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
+#: prefs/GUIPrefs.cpp:94
+msgid "&Update display while playing"
+msgstr "&Päivitä näyttö soitettaessa"
+
+#: prefs/GUIPrefs.cpp:102
+msgid "Automatically &fit tracks vertically zoomed"
msgstr ""
-#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
+#: prefs/GUIPrefs.cpp:149
+#, fuzzy
+msgid "Default View Mode:"
+msgstr "Oletusnäkymä"
+
+#: prefs/GUIPrefs.cpp:108
+msgid "&Select all audio in project, if none selected"
msgstr ""
-#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:116
+msgid "Enable cut &lines"
msgstr ""
-#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:98
+msgid "Enable &dragging of left and right selection edges"
msgstr ""
-#: toolbars/ControlToolBar.cpp:175
-msgid "Pause"
-msgstr "Keskeytä"
+#: prefs/GUIPrefs.cpp:104
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play"
-msgstr "Soita"
+#: prefs/GUIPrefs.cpp:106
+msgid "Editing a &clip can move other clips"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:178
+#: prefs/GUIPrefs.cpp:168
#, fuzzy
-msgid "Play (Shift for Loop Play)"
-msgstr "Toista (Vaihto+klikkaus: soittosilmukka)"
+msgid "Solo Button:"
+msgstr "Painikkeet"
+
+#: prefs/GUIPrefs.cpp:36
+msgid "Warnings"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:60
+msgid "Show Warnings/Prompts"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:62
+msgid "When saving &projects"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:65
+msgid "When saving &empty project"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:68
+msgid "When &disk space is getting low"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:71
+msgid "When mixing down to &stereo during export"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:74
+msgid "When mixing down to &mono during export"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:175
+msgid "Pause"
+msgstr "Keskeytä"
#: toolbars/ControlToolBar.cpp:183
msgid "Stop"
msgstr "Pysäytä"
-#: toolbars/ControlToolBar.cpp:186
-msgid "Skip to Start"
-msgstr "Siirry alkuun"
+#: toolbars/ControlToolBar.cpp:195
+msgid "Clean Speech"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:189
-msgid "Skip to End"
-msgstr "Siirry loppuun"
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play (Shift for Loop Play)"
+msgstr "Toista (Vaihto+klikkaus: soittosilmukka)"
#: toolbars/ControlToolBar.cpp:192
msgid "Record (Shift for Append Record)"
msgstr ""
-#: toolbars/ControlToolBar.cpp:195
-msgid "Clean Speech"
-msgstr ""
-
#: toolbars/ControlToolBar.cpp:540
#: toolbars/ControlToolBar.cpp:869
msgid "Error while opening sound device. "
-msgstr ""
+msgstr "Virhe äänilaitetta käynnistettäessä."
#: toolbars/ControlToolBar.cpp:706
msgid "Recording in CleanSpeech mode is not possible when a track, or more than one project, is already open."
@@ -8679,37 +9030,29 @@ msgstr "Lähennä näkymää"
msgid "Zoom Out"
msgstr "Loitonna näkymää"
-#: toolbars/EditToolBar.cpp:161
-msgid "Zoom Toggle"
-msgstr "Vaihda zoomausta"
-
-#: toolbars/EditToolBar.cpp:165
-msgid "Fit Selection"
-msgstr ""
-
#: toolbars/EditToolBar.cpp:165
msgid "Fit selection in window"
msgstr "Sovita valinta ikkunaan"
#: toolbars/EditToolBar.cpp:167
-msgid "Fit Project"
-msgstr ""
-
-#: toolbars/EditToolBar.cpp:167
msgid "Fit project in window"
msgstr "Sovita projekti ikkunaan"
-#: toolbars/MeterToolBar.cpp:50
-msgid "Meter"
+#: toolbars/EditToolBar.cpp:165
+msgid "Fit Selection"
+msgstr ""
+
+#: toolbars/EditToolBar.cpp:167
+msgid "Fit Project"
msgstr ""
#: toolbars/MeterToolBar.cpp:80
msgid "Play Meter"
-msgstr ""
+msgstr "Soittomittari"
#: toolbars/MeterToolBar.cpp:81
msgid "Meter-Play"
-msgstr ""
+msgstr "Soittomittari"
#: toolbars/MeterToolBar.cpp:89
msgid "Record Meter"
@@ -8748,6 +9091,14 @@ msgstr ""
msgid "Input Source"
msgstr ""
+#: toolbars/MixerToolBar.cpp:298
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:305
+msgid "Select Input Source"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:86
msgid "Selection"
msgstr ""
@@ -8755,7 +9106,7 @@ msgstr ""
#: toolbars/SelectionBar.cpp:135
#: toolbars/SelectionBar.cpp:194
msgid "Project Rate (Hz):"
-msgstr ""
+msgstr "Projektin tahti (Hz):"
#: toolbars/SelectionBar.cpp:149
#: toolbars/SelectionBar.cpp:255
@@ -8766,7 +9117,7 @@ msgstr "Valinnan alku:"
#: toolbars/SelectionBar.cpp:164
#: toolbars/SelectionBar.cpp:261
msgid "Length"
-msgstr ""
+msgstr "Pituus"
#: toolbars/SelectionBar.cpp:174
msgid "hidden"
@@ -8775,12 +9126,12 @@ msgstr "piilotettu"
#: toolbars/SelectionBar.cpp:184
#: toolbars/SelectionBar.cpp:272
msgid "Audio Position:"
-msgstr ""
+msgstr "Paikka äänessä:"
#: toolbars/SelectionBar.cpp:236
#: toolbars/SelectionBar.cpp:241
msgid "Snap To"
-msgstr ""
+msgstr "Napsahda kohtaan"
#: toolbars/SelectionBar.cpp:260
msgid "Selection "
@@ -8832,34 +9183,6 @@ msgstr "Vasen=lähennä, oikea=loitonna, keskipainike=normaali"
msgid "Click and drag to move a track in time"
msgstr "Klikkaa ja raahaa siirtääksesi raitaa aikajanalla"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr "Työkalut"
-
-#: toolbars/ToolsToolBar.cpp:147
-#: toolbars/ToolsToolBar.cpp:182
-msgid "Selection Tool"
-msgstr "Valintatyökalu"
-
-#: toolbars/ToolsToolBar.cpp:148
-msgid "Envelope Tool"
-msgstr "Verhotyökalu"
-
-#: toolbars/ToolsToolBar.cpp:149
-#: toolbars/ToolsToolBar.cpp:183
-msgid "Time Shift Tool"
-msgstr "Aikakorjaustyökalu"
-
-#: toolbars/ToolsToolBar.cpp:150
-#: toolbars/ToolsToolBar.cpp:185
-msgid "Zoom Tool"
-msgstr "Zoomaustyökalu"
-
-#: toolbars/ToolsToolBar.cpp:151
-#: toolbars/ToolsToolBar.cpp:184
-msgid "Draw Tool"
-msgstr "Piirtotyökalu"
-
#: toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
msgstr "Monitoimitila"
@@ -8868,99 +9191,51 @@ msgstr "Monitoimitila"
msgid "Slide Tool"
msgstr ""
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr ""
-
-#: toolbars/TranscriptionToolBar.cpp:84
-msgid "Transcription"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:171
msgid "Play at selected speed"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:172
-msgid "Play-at-speed"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:178
#: toolbars/TranscriptionToolBar.cpp:183
msgid "Playback Speed"
-msgstr ""
+msgstr "Toiston nopeus"
#: toolbars/TranscriptionToolBar.cpp:196
msgid "Adjust left selection to next onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:197
-msgid "Left-to-On"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:199
msgid "Adjust right selection to previous offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:200
-msgid "Right-to-Off"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:202
msgid "Adjust left selection to next offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:203
-msgid "Left-to-Off"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:205
msgid "Adjust right selection to previous onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:206
-msgid "Right-to-On"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:208
msgid "Select region of sound around cursor"
-msgstr ""
-
-#: toolbars/TranscriptionToolBar.cpp:209
-msgid "Select-Sound"
-msgstr ""
+msgstr "Valitse äänialue kursorin ympäriltä"
#: toolbars/TranscriptionToolBar.cpp:211
msgid "Select region of silence around cursor"
-msgstr ""
-
-#: toolbars/TranscriptionToolBar.cpp:212
-msgid "Select-Silence"
-msgstr ""
+msgstr "Valitse hiljainen alue kursorin ympäriltä"
#: toolbars/TranscriptionToolBar.cpp:214
msgid "Automatically make labels from words"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:215
-msgid "Make Labels"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:217
msgid "Add label at selection"
-msgstr ""
-
-#: toolbars/TranscriptionToolBar.cpp:218
-msgid "Add Label"
-msgstr ""
+msgstr "Lisää merkki valintaan"
#: toolbars/TranscriptionToolBar.cpp:220
msgid "Calibrate voicekey"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:221
-msgid "Calibrate"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:225
msgid "Adjust Sensitivity"
msgstr ""
@@ -8993,6 +9268,46 @@ msgstr ""
msgid "Key type"
msgstr "Näppäintyyppi"
+#: toolbars/TranscriptionToolBar.cpp:172
+msgid "Play-at-speed"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:197
+msgid "Left-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:200
+msgid "Right-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:203
+msgid "Left-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:206
+msgid "Right-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:209
+msgid "Select-Sound"
+msgstr "Valitse ääni"
+
+#: toolbars/TranscriptionToolBar.cpp:212
+msgid "Select-Silence"
+msgstr "Valitse hiljaisuus"
+
+#: toolbars/TranscriptionToolBar.cpp:215
+msgid "Make Labels"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:218
+msgid "Add Label"
+msgstr "Lisää merkki"
+
+#: toolbars/TranscriptionToolBar.cpp:221
+msgid "Calibrate"
+msgstr ""
+
#: widgets/AButton.cpp:303
msgid " (disabled)"
msgstr " (ei käytössä)"
@@ -9389,3 +9704,15 @@ msgstr "Virhe: %hs rivillä %lu"
msgid "Could not load file: \"%s\""
msgstr "Ei voitu ladata tiedostoa: \"%s\""
+#: xml/XMLWriter.cpp:281
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:286
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:296
+msgid "Error writing to file"
+msgstr ""
+
diff --git a/locale/fr.po b/locale/fr.po
index 9e29903..6450a42 100644
--- a/locale/fr.po
+++ b/locale/fr.po
@@ -1,49 +1,53 @@
msgid ""
-msgstr "Project-Id-Version: Audacity 1.4.x\n"
+msgstr ""
+"Project-Id-Version: Audacity 1.4.x\n"
"Report-Msgid-Bugs-To: audacity-translation at lists.sourceforge.net\n"
-"POT-Creation-Date: 2008-04-28 22:24+0100\n"
-"PO-Revision-Date: 2008-12-22 17:28-0000\n"
-"Last-Translator: g <g at g>\n"
+"POT-Creation-Date: 2009-05-31 20:42-0500\n"
+"PO-Revision-Date: 2009-06-04 23:10+0100\n"
+"Last-Translator: Christian Brochec <christian at audacityteam.org>\n"
"Language-Team: Christian Brochec <christian at audacityteam.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Poedit-Language: French\n"
"X-Poedit-Country: FRANCE\n"
-"X-Poedit-Bookmarks: 394,948,-1,-1,-1,-1,-1,1523,-1,-1\n"
-#: AboutDialog.cpp:142
-#: AudacityApp.cpp:749
-#: Menus.cpp:745
+#: AboutDialog.cpp:143
+#: AudacityApp.cpp:806
+#: Menus.cpp:954
msgid "&About Audacity..."
msgstr "&A propos d'Audacity..."
-#: AboutDialog.cpp:156
+#: AboutDialog.cpp:157
msgid "OK... Audacious!"
msgstr "OK... Audacieux !"
#: AboutDialog.cpp:175
msgid "Audacity is a free program written by a team of volunteer <a href=\"http://audacity.sourceforge.net/community/developers\">developers</a> around the world. We are grateful to <a href=\"http://sourceforge.net\">SourceForge.net</a> for our project hosting. Audacity is available for Windows 98 and later, Mac OS X, Linux and other Unix-like operating systems. Older versions of Audacity are available for Mac OS 9."
-msgstr ""
+msgstr "Audacity est un programme gratuit écrit par une équipe de <a href=\"http://audacity.sourceforge.net/community/developers\">developpeurs</a> bénévoles du monde entier. Nous remercions <a href=\"http://sourceforge.net\">SourceForge.net</a> pour l'hébergement du projet. Audacity est disponible pour Windows 98 et plus, Mac OS X, Linux, et d'autres systèmes basés sur Unix. Des versions plus anciennes d'Audacity sont disponibles pour Mac OS 9. "
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
-msgstr ""
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgstr "Ce programme est en version bêta ! Il peut contenir des bogues et des fonctions non achevées. Nous avons besoin de vos retours. Merci de nous envoyer vos relevés de bogues et demandes d'améliorations à <a href=\"mailto:feedback at audacityteam.org\">. Pour une aide à l'utilisation d'Audacity, rendez-vous sur notre <a href=\"http://audacityteam.org/forum/\">forum</a>."
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
-msgstr ""
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgstr "Ceci est une version stable et complête d'Audacity. Si toutefois vous décelez un bogue ou avez une suggestion, merci de nous écrire à <a href=\"mailto:feedback at audacityteam.org\">. Pour une aide à l'utilisation d'Audacity, rendez-vous sur notre<a href=\"http://audacityteam.org/forum/\">forum</a>."
#. i18n-hint: The translation of "translator_credits" will appear
+#. in the credits in the About Audacity window. Use this to add
+#. your own name(s) to the credits.
+#.
+#. For example: "English translation by Dominic Mazzoni."
+#.
#: AboutDialog.cpp:192
#: AboutDialog.cpp:194
msgid "translator_credits"
-msgstr "Traduction française de Christian Brochec.\n"
-"Pour toute remarque ou suggestion : christian at audacityteam.org"
+msgstr "Traduction française de Christian Brochec. Pour toute remarque ou suggestion : christian at audacityteam.org"
#: AboutDialog.cpp:207
msgid "A Free Digital Audio Editor<br>"
-msgstr ""
+msgstr "Un éditeur audio numérique libre<br>"
#: AboutDialog.cpp:211
msgid "Credits"
@@ -61,7 +65,7 @@ msgstr "%s équipe de support d'Audacity"
#: AboutDialog.cpp:225
msgid "Emeritus Developers"
-msgstr "Développeurs émérites"
+msgstr "Développeurs émérites :"
#: AboutDialog.cpp:230
msgid "Other Emeritus Team Members"
@@ -69,7 +73,7 @@ msgstr "Autres membres émérites de l'équipe"
#: AboutDialog.cpp:235
msgid "Other Contributors"
-msgstr "Autres contributeurs"
+msgstr "Autres contributeurs :"
#: AboutDialog.cpp:240
msgid "Audacity is based on code from the following projects:"
@@ -80,78 +84,77 @@ msgid "Special thanks:"
msgstr "Remerciements particuliers :"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
-msgstr ""
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgstr "Le logiciel <b>Audacity®</b>est protégé par copyright © 1999-2009 Audacity Team. <br> <b>Audacity®</b> est une marque déposée par Dominic Mazzoni."
-#: AboutDialog.cpp:254
+#: AboutDialog.cpp:258
msgid "Audacity"
msgstr "Audacity"
#. i18n-hint: Information about when audacity was compiled
-#: AboutDialog.cpp:299
-#: AboutDialog.cpp:312
+#: AboutDialog.cpp:304
+#: AboutDialog.cpp:317
#: AboutDialog.cpp:468
msgid "Build Information"
msgstr "Informations système"
-#: AboutDialog.cpp:305
+#: AboutDialog.cpp:310
#: effects/AvcCompressor.cpp:674
msgid "Enabled"
msgstr "Activé"
-#: AboutDialog.cpp:306
+#: AboutDialog.cpp:311
msgid "Disabled"
msgstr "Désactivé"
-#: AboutDialog.cpp:316
+#: AboutDialog.cpp:321
msgid "File Format Support"
msgstr "Support de format de fichier"
#. i18n-hint: This is what the library (libmad) does - imports MP3 files
-#: AboutDialog.cpp:326
-#: AboutDialog.cpp:328
+#: AboutDialog.cpp:331
+#: AboutDialog.cpp:333
msgid "MP3 Importing"
msgstr "Importation de MP3"
-#: AboutDialog.cpp:335
-#: AboutDialog.cpp:338
+#: AboutDialog.cpp:340
+#: AboutDialog.cpp:343
msgid "Ogg Vorbis Import and Export"
-msgstr "Importation et Exportation d'Ogg Vorbis "
+msgstr "Import et Export Ogg Vorbis "
-#: AboutDialog.cpp:342
-#: AboutDialog.cpp:345
+#: AboutDialog.cpp:347
+#: AboutDialog.cpp:350
msgid "ID3 tag support"
-msgstr "Support des tag ID3"
+msgstr "support des tag ID3"
-#: AboutDialog.cpp:352
-#: AboutDialog.cpp:355
+#: AboutDialog.cpp:357
+#: AboutDialog.cpp:360
msgid "FLAC import and export"
msgstr "Import et Export FLAC"
-#: AboutDialog.cpp:360
-#: AboutDialog.cpp:363
+#: AboutDialog.cpp:365
+#: AboutDialog.cpp:368
msgid "MP2 export"
-msgstr "Export MP2"
+msgstr "export MP2"
-#: AboutDialog.cpp:368
-#: AboutDialog.cpp:371
+#: AboutDialog.cpp:373
+#: AboutDialog.cpp:376
msgid "Import via QuickTime"
msgstr "Importer depuis QuickTime"
#. i18n-hint: Libraries that are essential to audacity
-#: AboutDialog.cpp:378
+#: AboutDialog.cpp:383
msgid "Core Libraries"
-msgstr ""
+msgstr "Librairies"
-#: AboutDialog.cpp:384
-#: AboutDialog.cpp:387
-#: AboutDialog.cpp:390
+#: AboutDialog.cpp:389
#: AboutDialog.cpp:392
+#: AboutDialog.cpp:395
+#: AboutDialog.cpp:397
msgid "Sample rate conversion"
msgstr "Conversion de fréquence d'échantillonnage"
-#: AboutDialog.cpp:397
-#: AboutDialog.cpp:400
+#: AboutDialog.cpp:401
msgid "Audio playback and recording"
msgstr "Lecture et enregistrement audio"
@@ -187,7 +190,7 @@ msgstr "Date de création du programme :"
#: AboutDialog.cpp:475
#: AboutDialog.cpp:477
msgid "Build type:"
-msgstr ""
+msgstr "Type de version :"
#: AboutDialog.cpp:475
msgid "Debug build"
@@ -195,12 +198,12 @@ msgstr ""
#: AboutDialog.cpp:477
msgid "Release build"
-msgstr ""
+msgstr "Distribution"
#. i18n-hint: The directory audacity is installed into (on *nix systems)
#: AboutDialog.cpp:482
msgid "Installation Prefix: "
-msgstr "Préfixe d'installation :"
+msgstr "Préfixe d'intallation"
#: AboutDialog.cpp:486
msgid "Settings folder: "
@@ -208,187 +211,223 @@ msgstr "Répertoire des réglages :"
#: AboutDialog.cpp:501
msgid "GPL License"
-msgstr "License GPL "
+msgstr "License GPL (en anglais)"
-#: AudacityApp.cpp:468
-#: Project.cpp:1761
+#: AudacityApp.cpp:507
+#: Project.cpp:2002
#, c-format
msgid "%s is already open in another window."
msgstr "%s est déjà ouvert dans une autre fenêtre."
-#: AudacityApp.cpp:470
-#: Project.cpp:1763
-#: Project.cpp:1868
-#: Project.cpp:2012
-#: Project.cpp:2114
+#: AudacityApp.cpp:509
+#: Project.cpp:2004
+#: Project.cpp:2124
+#: Project.cpp:2272
+#: Project.cpp:2404
msgid "Error opening project"
msgstr "Erreur d'ouverture de projet"
-#: AudacityApp.cpp:502
+#: AudacityApp.cpp:535
#, c-format
-msgid "%s does not exist and could not be opened.\n"
+msgid ""
+"%s does not exist and could not be opened.\n"
"\n"
"It has been removed from the history list."
-msgstr "%s n'existe pas et ne peut être ouvert.\n"
+msgstr ""
+"%s n'existe pas et ne peut être ouvert.\n"
"\n"
"Il a été retiré de l'historique."
-#: AudacityApp.cpp:581
+#: AudacityApp.cpp:642
msgid "Master Gain Control"
msgstr "Contrôle du niveau Master"
-#: AudacityApp.cpp:582
+#: AudacityApp.cpp:643
msgid "Input Meter"
-msgstr "VU mètre d'entrée"
+msgstr "VU-mètre d'entrée"
-#: AudacityApp.cpp:583
+#: AudacityApp.cpp:644
msgid "Output Meter"
-msgstr "VU mètre de sortie"
+msgstr "VU-mètre de sortie"
+
+#: AudacityApp.cpp:803
+#: Menus.cpp:198
+msgid "&New"
+msgstr "&Nouveau"
+
+#: AudacityApp.cpp:804
+#: Menus.cpp:202
+msgid "&Open..."
+msgstr "&Ouvrir..."
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#: AudacityApp.cpp:751
-#: Menus.cpp:478
-msgid "&Preferences...\tCtrl+,"
-msgstr "&Préférences...\tCtrl+,"
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr "Ouvrir les fichiers récents..."
-#: AudacityApp.cpp:833
-#: AudacityApp.cpp:910
+#: AudacityApp.cpp:807
+msgid "&Preferences..."
+msgstr "&Préférences..."
+
+#: AudacityApp.cpp:898
+#: AudacityApp.cpp:975
#, c-format
msgid "Using block size of %ld\n"
msgstr "Utiliser une taille de bloc de %ld\n"
-#: AudacityApp.cpp:855
-#: AudacityApp.cpp:925
+#: AudacityApp.cpp:920
+#: AudacityApp.cpp:990
#, c-format
msgid "Unknown command line option: %s\n"
msgstr "Option de ligne de commande inconnue : %s\n"
-#: AudacityApp.cpp:1044
-msgid "Audacity could not find a place to store temporary files.\n"
+#: AudacityApp.cpp:1144
+msgid ""
+"Audacity could not find a place to store temporary files.\n"
"Please enter an appropriate directory in the preferences dialog."
-msgstr "Audacity n'a pas pu trouver un emplacement pour stocker les fichiers temporaires.\n"
+msgstr ""
+"Audacity ne peut pas trouver de place pour stocker les fichiers temporaires.\n"
"Veuillez entrer un répertoire approprié dans la boîte de dialogue des préférences."
-#: AudacityApp.cpp:1050
+#: AudacityApp.cpp:1150
msgid "Audacity is now going to exit. Please launch Audacity again to use the new temporary directory."
-msgstr "Audacity va maintenant se fermer. Veuillez relancer Audacity pour utiliser le nouveau répertoire temporaire."
+msgstr "Audacity va maintenant se fermer. Veuillez relancer Audacity pour utiliser le nouveau répertoire temporaire."
-#: AudacityApp.cpp:1082
-msgid "Running two copies of Audacity simultaneously may cause\n"
+#: AudacityApp.cpp:1182
+msgid ""
+"Running two copies of Audacity simultaneously may cause\n"
"data loss or cause your system to crash.\n"
"\n"
-msgstr "L'ouverture simultanée de deux sessions d'Audacity\n"
+msgstr ""
+"L'ouverture simultanée de deux sessions d'Audacity\n"
"peut causer des pertes de données ou le crash du système.\n"
"\n"
-#: AudacityApp.cpp:1089
-msgid "Audacity was not able to lock the temporary files directory.\n"
+#: AudacityApp.cpp:1189
+msgid ""
+"Audacity was not able to lock the temporary files directory.\n"
"This folder may be in use by another copy of Audacity.\n"
-msgstr "Audacity n'a pas pu verrouiller le répertoire temporaire.\n"
+msgstr ""
+"Audacity ne peut pas verrouiller le répertoire temporaire.\n"
"Ce répertoire est peut être déjà utilisé par une autre session d'Audacity.\n"
-#: AudacityApp.cpp:1091
+#: AudacityApp.cpp:1191
msgid "Do you still want to start Audacity?"
-msgstr "Voulez-vous toujours démarrer Audacity ?"
+msgstr "Voulez-vous toujours démarrer Audacity"
-#: AudacityApp.cpp:1093
+#: AudacityApp.cpp:1193
msgid "Error locking temporary folder"
msgstr "Erreur de verrouillage du répertoire temporaire"
-#: AudacityApp.cpp:1131
+#: AudacityApp.cpp:1231
msgid "The system has detected that another copy of Audacity is running.\n"
-msgstr "Le système a détecté qu'une autre session d'Audacity est ouverte.\n"
+msgstr "Le système a détecté qu'une autre session d'Audacity était ouverte.\n"
-#: AudacityApp.cpp:1133
-msgid "Use the New or Open commands in the currently running Audacity\n"
+#: AudacityApp.cpp:1233
+msgid ""
+"Use the New or Open commands in the currently running Audacity\n"
"process to open multiple projects simultaneously.\n"
-msgstr "Sélectionnez Nouveau ou Ouvrir dans la session courante d'Audacity \n"
-"pour démarrer plusieurs projets simultanément.\n"
+msgstr ""
+"A partir de la session courante d'Audacity, utilisez Nouveau ou Ouvrir\n"
+"pour démarrer plusieurs projets simultannément.\n"
-#: AudacityApp.cpp:1134
+#: AudacityApp.cpp:1234
msgid "Audacity is already running"
msgstr "Audacity est déjà ouvert"
-#: AudacityApp.cpp:1151
+#: AudacityApp.cpp:1251
msgid "Command-line options supported:"
-msgstr "Options de ligne de commande supportées :"
+msgstr "Options de lignes de commandes supportées :"
#. i18n-hint: '-help' is the option and needs to stay in
-#: AudacityApp.cpp:1154
+#. * English. This displays a list of available options
+#: AudacityApp.cpp:1254
msgid "\t-help (this message)"
msgstr "\t-help (ce message)"
#. i18n-hint '-version' needs to stay in English.
-#: AudacityApp.cpp:1156
+#: AudacityApp.cpp:1256
msgid "\t-version (display Audacity version)"
-msgstr "\t-version (afficher la version d'Audacity)"
+msgstr "\t-version (affiche la version d'Audacity)"
#. i18n-hint '-test' is the option and needs to stay in
-#: AudacityApp.cpp:1160
+#. * English. This runs a set of automatic tests on audacity
+#. * itself
+#: AudacityApp.cpp:1260
msgid "\t-test (run self diagnostics)"
-msgstr "\t-test (lancer l'auto diagnostic)"
+msgstr "\t-test (lance l'auto diagnostic)"
#. i18n-hint '-blocksize' is the option and needs to stay in
-#: AudacityApp.cpp:1165
+#. * English. 'nnn' is any integer number. This controls the
+#. * size pieces that audacity uses when writing files to the
+#. * disk
+#: AudacityApp.cpp:1265
msgid "\t-blocksize nnn (set max disk block size in bytes)"
-msgstr "\t-blocksize nnn (fixer la taille maximale des blocs en octets)"
+msgstr "\t-blocksize nnn (règle en bytes la taille maximale des blocs)"
-#: AudacityApp.cpp:1166
+#: AudacityApp.cpp:1266
msgid "In addition, specify the name of an audio file or Audacity project to open it."
-msgstr "De plus, spécifier le nom d'un fichier audio ou projet Audacity pour l'ouvrir"
+msgstr "De plus, spécifier le nom du fichier audio ou du projet Audacity pour l'ouvrir"
-#: AudacityApp.cpp:1443
-msgid "Audacity project (.AUP) files are not currently \n"
+#: AudacityApp.cpp:1557
+msgid ""
+"Audacity project (.AUP) files are not currently \n"
"associated with Audacity. \n"
"\n"
"Associate them, so they open on double-click?"
-msgstr "Les projets Audacity (.AUP) ne sont actuellement pas\n"
-"associés à Audacity. \n"
+msgstr ""
+"Les projets Audacity(.AUP) ne sont actuellement pas\n"
+"associés à Audacity. \n"
"\n"
"Voulez-vous les associer afin de pouvoir les ouvrir d'un double clic ?"
-#: AudacityApp.cpp:1444
+#: AudacityApp.cpp:1558
msgid "Audacity Project Files"
msgstr "Fichiers projet Audacity"
-#: AudioIO.cpp:241
+#: AudioIO.cpp:253
msgid "Could not find any audio devices.\n"
msgstr "Impossible de trouver un périphérique audio.\n"
-#: AudioIO.cpp:242
-msgid "You will not be able to play or record audio.\n"
+#: AudioIO.cpp:254
+msgid ""
+"You will not be able to play or record audio.\n"
"\n"
-msgstr "Vous ne pourrez pas lire ou enregistrer d'audio.\n"
+msgstr ""
+"Vous ne pourrez pas lire ou enregistrer d'audio.\n"
"\n"
-#: AudioIO.cpp:245
+#: AudioIO.cpp:257
msgid "Error: "
msgstr "Erreur :"
-#: AudioIO.cpp:248
+#: AudioIO.cpp:260
msgid "Error Initializing Audio"
msgstr "Erreur d'initialisation audio"
-#: AudioIO.cpp:1208
-msgid "Latency problem"
-msgstr "Problème de latence"
-
-#: AudioIO.cpp:1208
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
+#: AudioIO.cpp:1225
+msgid ""
+"Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
"Audacity has brought it back to start at zero.\n"
"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
-msgstr "La latence a caché l'audio enregistré avant le zéro.\n"
-"Audacity l'a rétabli à zéro.\n"
+msgstr ""
+"Le réglage de correction de latence a caché l'audio enregistré, avant le zéro.\n"
+"Audacity l'a ramené au zéro.\n"
"Vous pourrez utiliser l'outil de glissement temporel (<---> ou F5) pour glisser la piste à sa place."
+#: AudioIO.cpp:1225
+msgid "Latency problem"
+msgstr "Problème de latence"
+
#: AutoRecovery.cpp:54
msgid "Automatic Crash Recovery"
msgstr "Récupération automatique de crash"
#: AutoRecovery.cpp:73
-msgid "Some projects were not saved properly the last time Audacity was run.\n"
+msgid ""
+"Some projects were not saved properly the last time Audacity was run.\n"
"Fortunately, the following projects can automatically be recovered:"
-msgstr "Des projets n'ont pas été correctement sauvegardés lors de la dernière session Audacity.\n"
+msgstr ""
+"Des projets n'ont pas été correctement sauvegardés lors de la dernière session Audacity.\n"
"Heureusement, les projets suivants peuvent être automatiquement récupérés :"
#: AutoRecovery.cpp:75
@@ -396,9 +435,8 @@ msgid "Recoverable projects"
msgstr "Projets récupérables"
#: AutoRecovery.cpp:78
-#: Tags.cpp:2032
msgid "Name"
-msgstr "Nom"
+msgstr "Nom..."
#: AutoRecovery.cpp:84
msgid "Recovering a project will not change any files on disk before you save it."
@@ -406,7 +444,7 @@ msgstr "La récupération du projet ne modifiera aucun des fichiers du disque av
#: AutoRecovery.cpp:88
msgid "Quit Audacity"
-msgstr "Quitter Audacity"
+msgstr "Quitter Audacity..."
#: AutoRecovery.cpp:89
msgid "Do Not Recover"
@@ -417,9 +455,11 @@ msgid "Recover Projects"
msgstr "Récupérer les projets"
#: AutoRecovery.cpp:127
-msgid "Are you sure you don't want to recover any projects?\n"
+msgid ""
+"Are you sure you don't want to recover any projects?\n"
"They can't be recovered later."
-msgstr "Etes-vous sûr(e) de ne pas vouloir récupérer de projets ?\n"
+msgstr ""
+"Etes-vous sûr(e) de ne pas vouloir récupérer de projets ?\n"
"Ils ne pourront pas être récupérés plus tard."
#: AutoRecovery.cpp:128
@@ -429,96 +469,104 @@ msgstr "Confirmer ?"
#: AutoRecovery.cpp:146
#: AutoRecovery.cpp:183
msgid "Could not enumerate files in auto save directory"
-msgstr "Impossible d'énumérer les fichiers du répertoire de sauvegarde automatique"
+msgstr "Impossible d'énumérer les fichiers du répertoire de sauvegarde auto"
#: AutoRecovery.cpp:147
#: AutoRecovery.cpp:184
-#: Menus.cpp:2575
-#: Menus.cpp:4514
-#: Project.cpp:1971
-#: Project.cpp:3343
-#: Project.cpp:3422
-#: WaveTrack.cpp:556
-#: WaveTrack.cpp:575
-#: WaveTrack.cpp:1689
-#: effects/Effect.cpp:436
-#: export/ExportMP2.cpp:230
-#: prefs/DirectoriesPrefs.cpp:189
-#: prefs/KeyConfigPrefs.cpp:245
-#: toolbars/ControlToolBar.cpp:532
-#: toolbars/ControlToolBar.cpp:846
+#: Menus.cpp:3230
+#: Menus.cpp:3242
+#: Menus.cpp:5311
+#: Project.cpp:2231
+#: Project.cpp:3851
+#: Project.cpp:3937
+#: TrackPanel.cpp:6503
+#: WaveTrack.cpp:979
+#: WaveTrack.cpp:998
+#: WaveTrack.cpp:2024
+#: effects/Contrast.cpp:144
+#: effects/Contrast.cpp:154
+#: effects/Effect.cpp:566
+#: export/ExportFFmpeg.cpp:655
+#: export/ExportMP2.cpp:231
+#: prefs/DirectoriesPrefs.cpp:195
+#: prefs/KeyConfigPrefs.cpp:335
+#: toolbars/ControlToolBar.cpp:575
+#: toolbars/ControlToolBar.cpp:907
msgid "Error"
msgstr "Erreur"
-#: BatchCommandDialog.cpp:56
-#: BatchCommandDialog.cpp:60
-#: BatchCommandDialog.cpp:61
+#: BatchCommandDialog.cpp:57
+#: BatchCommandDialog.cpp:62
+#: BatchCommandDialog.cpp:63
msgid "Select Command"
msgstr "Sélectionner une commande"
-#: BatchCommandDialog.cpp:80
+#: BatchCommandDialog.cpp:82
#: BatchProcessDialog.cpp:454
-#: prefs/KeyConfigPrefs.cpp:142
msgid "&Command"
msgstr "&Commande"
-#: BatchCommandDialog.cpp:82
+#: BatchCommandDialog.cpp:84
msgid "&Edit Parameters"
msgstr "Paramètres d'&Edition"
-#: BatchCommandDialog.cpp:89
+#: BatchCommandDialog.cpp:91
#: BatchProcessDialog.cpp:455
msgid "&Parameters"
msgstr "&Paramètres"
-#: BatchCommandDialog.cpp:94
+#: BatchCommandDialog.cpp:96
msgid "C&hoose command"
msgstr "C&hoisir une commande"
-#: BatchCommands.cpp:477
+#: BatchCommands.cpp:455
msgid "Stereo to Mono Effect not found"
-msgstr "L'effet Stéréo vers Mono n'a pas été trouvé"
+msgstr "L'effet Stéréo vers mono n'a pas été trouvé"
-#: BatchCommands.cpp:497
+#: BatchCommands.cpp:475
msgid "Ogg Vorbis support is not included in this build of Audacity"
msgstr "Le support d'Ogg Vorbis n'est pas inclus dans cette version d'Audacity"
-#: BatchCommands.cpp:509
+#: BatchCommands.cpp:487
msgid "FLAC support is not included in this build of Audacity"
-msgstr "Le support de FLAC n'est pas inclus dans cette version d'Audacity"
+msgstr "Le support de FLAC n'est pas inclus dans cette version d'Audacity"
-#: BatchCommands.cpp:513
+#: BatchCommands.cpp:491
#, c-format
msgid "Command %s not implemented yet"
msgstr "La commande %s n'est pas encore implémentée"
-#: BatchCommands.cpp:529
+#: BatchCommands.cpp:507
#, c-format
-msgid "Could not set parameters of effect %s\n"
+msgid ""
+"Could not set parameters of effect %s\n"
" to %s."
-msgstr "Impossible de modifier les paramêtres de l'effet %s\n"
+msgstr ""
+"Impossible de modifier les paramêtres de l'effet %s\n"
"Ã %s."
-#: BatchCommands.cpp:583
+#: BatchCommands.cpp:560
#, c-format
msgid "Your batch command of %s was not recognised."
msgstr "Votre commande de traitement en lot de %s n'a pas été reconnu."
-#: BatchCommands.cpp:674
+#: BatchCommands.cpp:651
#, c-format
-msgid "Apply %s with parameter(s)\n"
+msgid ""
+"Apply %s with parameter(s)\n"
"\n"
"%s"
-msgstr "Appliquer %s avec le(s) paramètre(s)\n"
+msgstr ""
+"Appliquer %s avec le(s) paramêtre(s)\n"
"\n"
"%s"
-#: BatchCommands.cpp:675
-#: BatchCommands.cpp:680
+#: BatchCommands.cpp:652
+#: BatchCommands.cpp:657
msgid "Test Mode"
msgstr "Mode test"
-#: BatchCommands.cpp:679
+#: BatchCommands.cpp:656
#, c-format
msgid "Apply %s"
msgstr "Appliquer %s"
@@ -531,7 +579,7 @@ msgstr "Appliquer le script"
#: BatchProcessDialog.cpp:67
msgid "CleanSpeech Batch Processing"
-msgstr ""
+msgstr "Script CleanSpeech..."
#: BatchProcessDialog.cpp:94
msgid "&Select chain"
@@ -547,23 +595,17 @@ msgstr "Appliquer au &Projet courant"
#: BatchProcessDialog.cpp:107
msgid "Apply to &Files..."
-msgstr "Appliquer aux &fichiers..."
+msgstr "Appliquer aux &fichiers"
#: BatchProcessDialog.cpp:108
#: BatchProcessDialog.cpp:247
-#: Tags.cpp:2071
-#: Tags.cpp:2075
-#: Tags.cpp:2375
-#: Tags.cpp:2379
#: UploadDialog.cpp:180
#: effects/AvcCompressor.cpp:732
#: effects/ChangeLength.cpp:183
#: effects/SpikeCleaner.cpp:188
-#: effects/VST/VSTEffect.cpp:446
-#: effects/audiounits/AudioUnitEffect.cpp:882
-#: effects/vamp/VampEffect.cpp:411
+#: effects/audiounits/AudioUnitEffect.cpp:861
msgid "&Cancel"
-msgstr "&Annuler"
+msgstr "Annuler"
#: BatchProcessDialog.cpp:146
#: BatchProcessDialog.cpp:191
@@ -581,15 +623,15 @@ msgstr "Veuillez d'abord enregistrer et fermer le projet courant."
#: BatchProcessDialog.cpp:206
msgid "Select vocal file(s) for batch CleanSpeech Chain..."
-msgstr ""
+msgstr "Sélectionner le(s) fichier(s) vocaux pour le traitement en lot CleanSpeech."
#: BatchProcessDialog.cpp:207
msgid "Select file(s) for batch processing..."
-msgstr "Sélectionner le(s) fichier(s) pour le traitement en lot..."
+msgstr "Sélectionner le(s) fichier(s) pour le traitement en lot.."
#: BatchProcessDialog.cpp:209
msgid "Vocal files (*.wav;*.mp3)|*.wav;*.mp3|WAV files (*.wav)|*.wav|MP3 files (*.mp3)|*.mp3"
-msgstr ""
+msgstr "Fichiers vocaux (*.wav;*.mp3)|*.wav;*.mp3|WAV files (*.wav)|*.wav|MP3 files (*.mp3)|*.mp3"
#: BatchProcessDialog.cpp:210
msgid "All files (*.*)|*.*|WAV files (*.wav)|*.wav|AIFF files (*.aif)|*.aif|AU files (*.au)|*.au|MP3 files (*.mp3)|*.mp3|Ogg Vorbis files (*.ogg)|*.ogg|FLAC files (*.flac)|*.flac"
@@ -611,21 +653,17 @@ msgstr "Editer les scripts"
#: BatchProcessDialog.cpp:416
msgid "&Chains"
-msgstr "&Scripts"
+msgstr "S&cripts"
#: BatchProcessDialog.cpp:435
-#: Tags.cpp:815
-#: Tags.cpp:1455
-#: Tags.cpp:2055
+#: Tags.cpp:825
msgid "&Add"
msgstr "&Ajouter"
#: BatchProcessDialog.cpp:436
-#: LabelDialog.cpp:126
-#: Tags.cpp:816
-#: Tags.cpp:1456
-#: Tags.cpp:2056
-#: TrackPanel.cpp:4201
+#: LabelDialog.cpp:128
+#: Tags.cpp:826
+#: TrackPanel.cpp:4271
msgid "&Remove"
msgstr "&Retirer"
@@ -635,12 +673,12 @@ msgstr "Re&nommer"
#: BatchProcessDialog.cpp:443
msgid "C&hain (Double-Click or press SPACE to edit)"
-msgstr "&Script (double-cliquer ou taper ESPACE pour éditer)"
+msgstr "S&cript (double-cliquer ou taper ESPACE pour éditer)"
#. i18n-hint: This is the number of the command in the list
#: BatchProcessDialog.cpp:453
-msgid "No"
-msgstr "Aucun"
+msgid "Num"
+msgstr "Numérique"
#: BatchProcessDialog.cpp:459
msgid "&Insert"
@@ -648,19 +686,19 @@ msgstr "&Insérer"
#: BatchProcessDialog.cpp:460
msgid "De&lete"
-msgstr "&Effacer"
+msgstr "Effacer"
#: BatchProcessDialog.cpp:461
msgid "Move &Up"
-msgstr "&Déplacer la piste vers le haut"
+msgstr "Remonter"
#: BatchProcessDialog.cpp:462
msgid "Move &Down"
-msgstr "&Déplacer la piste vers le bas"
+msgstr "&Descendre"
#: BatchProcessDialog.cpp:463
msgid "De&faults"
-msgstr "Réglages par dé&faut"
+msgstr "Réglages par défaut"
#: BatchProcessDialog.cpp:507
msgid "- END -"
@@ -701,399 +739,436 @@ msgstr "Suppression des fichiers associés"
msgid "Copying audio data into project..."
msgstr "Copie de données audio dans le projet..."
-#: Dependencies.cpp:219
-msgid "Your project currently depends on the presence of other files.\n"
+#: Dependencies.cpp:226
+msgid ""
+"Your project currently depends on the presence of other files.\n"
"Copy audio from the following files into your project to make it self-contained?\n"
"This will need more disc space but is safer."
-msgstr "Votre projet dépend de la présence d'autres fichiers.\n"
+msgstr ""
+"Votre projet dépend de la présence d'autres fichiers.\n"
"Copiez l'audio des fichiers suivants vers votre projet afin qu'il le contienne.\n"
"Ceci nécessite davantage d'espace disque, mais est plus sûr."
-#: Dependencies.cpp:266
+#: Dependencies.cpp:273
msgid "Project depends on other audio files"
msgstr "Le projet dépend de fichiers audio externes"
-#: Dependencies.cpp:287
+#: Dependencies.cpp:294
msgid "Project Dependencies"
msgstr "Fichiers associés au projet"
-#: Dependencies.cpp:290
+#: Dependencies.cpp:297
msgid "Audio file"
msgstr "Fichier audio"
-#: Dependencies.cpp:292
+#: Dependencies.cpp:299
msgid "Disk space"
msgstr "Espace disque"
-#: Dependencies.cpp:297
+#: Dependencies.cpp:304
msgid "Copy Selected Audio Into Project"
msgstr "Copier dans le projet l'audio sélectionné"
-#: Dependencies.cpp:304
-#: Dependencies.cpp:410
+#: Dependencies.cpp:311
+#: Dependencies.cpp:417
msgid "Cancel Save"
msgstr "Annuler l'enregistrement"
-#: Dependencies.cpp:306
+#: Dependencies.cpp:313
msgid "Do Not Copy Any Audio"
-msgstr "Ne pas copier d'Audio"
+msgstr "Ne pas cop"
-#: Dependencies.cpp:308
+#: Dependencies.cpp:315
msgid "Copy All Audio into Project (Safer)"
msgstr "Copier tout l'audio dans le projet (plus sûr)"
-#: Dependencies.cpp:317
-#: Dependencies.cpp:322
+#: Dependencies.cpp:324
+#: Dependencies.cpp:329
msgid "Ask me"
msgstr "Me demander"
-#: Dependencies.cpp:318
+#: Dependencies.cpp:325
msgid "Always copy all audio (safest)"
-msgstr "Toujours copier tout l'audio (le plus sûr)"
+msgstr "Toujours &copier tout l'audio (plus sûr)"
-#: Dependencies.cpp:319
+#: Dependencies.cpp:326
msgid "Never copy any audio"
msgstr "Ne jamais copier d'audio"
-#: Dependencies.cpp:321
+#: Dependencies.cpp:328
msgid "Whenever a project depends on other files:"
msgstr "A chaque fois qu'un projet dépend d'autres fichiers :"
-#: Dependencies.cpp:409
+#: Dependencies.cpp:416
msgid "If you proceed, your project will not be saved to disk. Is this what you want?"
-msgstr "Si vous continuez, votre projet ne sera pas enregistré. Le souhaitez-vous ?"
+msgstr "Si vous le faites, votre projet ne sera pas enregistré. Le souhaitez-vous ?"
-#: Dependencies.cpp:449
+#: Dependencies.cpp:456
msgid "Your project is self-contained; it does not depend on any external audio files."
msgstr "Votre projet est auto-contenu ; il ne dépend d'aucun fichier audio externe."
-#: Dependencies.cpp:450
+#: Dependencies.cpp:457
msgid "Dependency check"
msgstr "Vérification des fichiers associés."
#: DirManager.cpp:136
-msgid "Warning: there is very little free disk space left on this volume.\n"
+msgid ""
+"Warning: there is very little free disk space left on this volume.\n"
"Please select another temporary directory in your preferences."
-msgstr "Attention : il reste très peu d'espace libre sur ce volume. Veuillez\n"
+msgstr ""
+"Attention : il reste très peu d'espace libre sur ce volume. Veuillez\n"
" sélectionner un autre répertoire temporaire dans vos préférences."
#: DirManager.cpp:221
-#: DirManager.cpp:251
-#: DirManager.cpp:332
+#: DirManager.cpp:252
+#: DirManager.cpp:335
msgid "Progress"
msgstr "Progression"
-#: DirManager.cpp:285
+#: DirManager.cpp:286
msgid "Cleaning up temporary files"
msgstr "Nettoyage des fichiers temporaires..."
-#: DirManager.cpp:333
+#: DirManager.cpp:336
msgid "Saving project data files"
msgstr "Enregistrement des fichiers de données du projet"
-#: DirManager.cpp:406
+#: DirManager.cpp:408
msgid "Cleaning up cache directories"
msgstr "Nettoyage des répertoires cache..."
-#: DirManager.cpp:493
+#: DirManager.cpp:503
#, c-format
-msgid "Audacity found an orphaned blockfile %s! \n"
+msgid ""
+"Audacity found an orphaned blockfile %s! \n"
"Please consider saving and reloading the project to perform a complete project check.\n"
-msgstr "Audacity a trouvé un bloc de fichiers orphelins %s! \n"
-"Il est souhaitable d'enregistrer et de recharger le projet pour effectuer une vérification complète du projet.\n"
+msgstr ""
+"Audacity a trouvé des blocs de fichiers orphelins %s! \n"
+"Il est souhaitable d'enregsitrer et de recharger le projet pour effectuer une vérification du projet.\n"
# i18n-hint: This is the pattern for filenames that are created
# when a file needs to be backed up to a different name. For
# example, mysong would become mysong-old1, mysong-old2, etc.
#. i18n-hint: This is the pattern for filenames that are created
-#: DirManager.cpp:985
+#. when a file needs to be backed up to a different name. For
+#. example, mysong would become mysong-old1, mysong-old2, etc.
+#: DirManager.cpp:1092
#, c-format
msgid "%s-old%d"
-msgstr "%s-old%d"
+msgstr "%s-ancien%d"
-#: DirManager.cpp:993
+#: DirManager.cpp:1100
msgid "Unable to open/create test file"
-msgstr "Impossible d'ouvrir/créer un fichier test"
+msgstr "Impossible d'ouvrir/créer le ficher test"
-#: DirManager.cpp:1002
+#: DirManager.cpp:1109
#, c-format
msgid "Unable to remove '%s'"
msgstr "Impossible de retirer '%s'"
-#: DirManager.cpp:1007
+#: DirManager.cpp:1114
#, c-format
msgid "Renamed file: %s\n"
-msgstr "Fichier renommé : %s\n"
+msgstr "Renommer le fichier : %s\n"
-#: DirManager.cpp:1051
+#: DirManager.cpp:1164
#, c-format
msgid "Unable to rename '%s' to '%s'"
-msgstr "Impossible de renommer '%s' en '%s'"
+msgstr "Imposible de renommer '%s' en '%s'"
-#: DirManager.cpp:1183
+#: DirManager.cpp:1181
#, c-format
msgid "Changed block %s to new alias name\n"
-msgstr ""
+msgstr "Bloc %s changé en nouveau nom d'alias\n"
-#: DirManager.cpp:1115
-#: DirManager.cpp:1403
+#: DirManager.cpp:1247
+#: DirManager.cpp:1538
msgid "Inspecting project file data..."
msgstr "Vérification des données du projet..."
-#: DirManager.cpp:1128
+#: DirManager.cpp:1263
#, c-format
msgid "Orphaned blockfile: (%s)"
-msgstr "Bloc de fichiers orphelins : (%s)"
+msgstr "Bloc de fichier orphelin : (%s)"
-#: DirManager.cpp:1153
+#: DirManager.cpp:1288
#, c-format
msgid "Missing alias file: (%s)"
msgstr "Lien manquant : (%s)"
-#: DirManager.cpp:1173
+#: DirManager.cpp:1308
#, c-format
msgid "Missing summary file: (%s.auf)"
msgstr "Sommaire manquant : (%s.auf)"
-#: DirManager.cpp:1193
+#: DirManager.cpp:1328
#, c-format
msgid "Missing data file: (%s.au)"
msgstr "Fichier de données manquant : (%s.au)"
-#: DirManager.cpp:1207
-msgid "Project check found inconsistencies inspecting the loaded project data;\n"
+#: DirManager.cpp:1342
+msgid ""
+"Project check found inconsistencies inspecting the loaded project data;\n"
"click 'Details' for a complete list of errors, or 'OK' to proceed to more options."
-msgstr "Le vérificateur de projet a trouvé des erreurs lors de l'inspection des données du projet chargé;\n"
-"cliquer sur \"Détails\" pour une liste complète des erreurs ou sur \"OK\" pour accéder à davantage d'options."
+msgstr ""
+"Le vérificateur de projet a trouvé des erreurs lors de l'inspection des données du projet chargé;\n"
+"cliquer sur 'Détails' pour une liste complète des erreurs ou sur \"OK\" pour accéder à davantage d'options."
-#: DirManager.cpp:1219
+#: DirManager.cpp:1354
#, c-format
-msgid "Project check found %d orphaned blockfile[s]. These files are\n"
+msgid ""
+"Project check found %d orphaned blockfile[s]. These files are\n"
"unused and probably left over from a crash or some other bug.\n"
"They should be deleted to avoid disk contention."
-msgstr "Le vérificateur de projet a trouvé %d blocs de fichiers orphelins. Ces fichiers\n"
+msgstr ""
+"Le vérificateur de projet a trouvé %d blocs de fichiers orphelins. Ces fichiers\n"
"sont inutilisés et sont probablement le résultat d'un crash ou d'un bogue.\n"
"Il doivent être effacés pour éviter de saturer le disque."
-#: DirManager.cpp:1224
+#: DirManager.cpp:1359
msgid "Delete orphaned files [safe and recommended]"
msgstr "Effacer les fichiers orphelins [recommandé et sans risque]"
-#: DirManager.cpp:1225
+#: DirManager.cpp:1360
msgid "Continue without deleting; silently work around the extra files"
-msgstr "Continuer sans effacer ; silently work around the extra files"
+msgstr "Continuer sans effacer ; agit silencieusement autour des fichiers supplémentaires"
-#: DirManager.cpp:1226
+#: DirManager.cpp:1361
msgid "Close project immediately with no changes"
msgstr "Fermer immédiatement le projet sans modifications"
-#: DirManager.cpp:1228
-#: DirManager.cpp:1263
-#: DirManager.cpp:1309
-#: DirManager.cpp:1351
-#: export/Export.cpp:490
-#: export/Export.cpp:507
-#: export/Export.cpp:526
-#: widgets/Warning.cpp:55
+#: DirManager.cpp:1363
+#: DirManager.cpp:1398
+#: DirManager.cpp:1444
+#: DirManager.cpp:1486
+#: export/Export.cpp:581
+#: export/Export.cpp:602
+#: export/Export.cpp:621
+#: widgets/Warning.cpp:53
msgid "Warning"
msgstr "Attention"
-#: DirManager.cpp:1254
+#: DirManager.cpp:1389
#, c-format
-msgid "Project check detected %d input file[s] being used in place\n"
+msgid ""
+"Project check detected %d input file[s] being used in place\n"
"('alias files') are now missing. There is no way for Audacity\n"
"to recover these files automatically; you may choose to\n"
"permanently fill in silence for the missing files, temporarily\n"
"fill in silence for this session only, or close the project now\n"
"and try to restore the missing files by hand."
-msgstr "Le vérificateur de projet a détecté %d fichier(s) source utilisé(s) à la place\n"
-"(\"liens\"') sont désormais manquants. Audacity n'a aucun moyen\n"
+msgstr ""
+"Le vérificateur de projet a détecté %d fichier(s) source utilisé(s) à la place\n"
+"(\"liens\"') sont désormais manquant. Audacity n'a aucun moyen\n"
"de récupérer ces fichiers automatiquement ; vous pouvez choisir\n"
"de remplir définitivement de silence ces fichiers manquants, de les remplir\n"
"de silence pour cette session seulement, ou de fermer le projet maintenant\n"
"et d'essayer de restaurer manuellement ces fichiers."
-#: DirManager.cpp:1259
+#: DirManager.cpp:1394
msgid "Replace missing data with silence [permanent upon save]"
-msgstr "Remplacer les données manquantes de silence [permanent jusqu'à la sauvegarde]"
+msgstr "Remplacer les données manquante par du silence [permanent jusqu'à la sauvegarde]"
-#: DirManager.cpp:1260
-#: DirManager.cpp:1348
+#: DirManager.cpp:1395
+#: DirManager.cpp:1483
msgid "Temporarily replace missing data with silence [this session only]"
-msgstr "Remplacer temporairement les données manquantes de silence [cette session seulement]"
+msgstr "Remplacer temporairement les données manquantes par du silence [cette session seulement]"
-#: DirManager.cpp:1261
-#: DirManager.cpp:1307
-#: DirManager.cpp:1349
+#: DirManager.cpp:1396
+#: DirManager.cpp:1442
+#: DirManager.cpp:1484
msgid "Close project immediately with no further changes"
msgstr "Fermer immédiatement le projet sans modifications supplémentaires"
-#: DirManager.cpp:1300
+#: DirManager.cpp:1435
#, c-format
-msgid "Project check detected %d missing summary file[s] (.auf).\n"
+msgid ""
+"Project check detected %d missing summary file[s] (.auf).\n"
"Audacity can fully regenerate these summary files from the\n"
"original audio data in the project."
-msgstr "Le vérificateur de projet a détecté %d sommaire manquant (.auf).\n"
+msgstr ""
+"Le vérificateur de projet a détecté %d sommaire manquant (.auf).\n"
"Audacity peut totalement recréer ce sommaire à partir des données\n"
"audio originales du projet."
-#: DirManager.cpp:1305
+#: DirManager.cpp:1440
msgid "Regenerate summary files [safe and recommended]"
msgstr "Recréer le sommaire [sans risque et recommandé]"
-#: DirManager.cpp:1306
+#: DirManager.cpp:1441
msgid "Fill in silence for missing display data [this session only]"
-msgstr "Remplir de silence les données manquantes [pour cette session]"
+msgstr "Rempli de silence les données manquantes [pour cette session]"
-#: DirManager.cpp:1342
+#: DirManager.cpp:1477
#, c-format
-msgid "Project check detected %d missing audio data blockfile[s] (.au), \n"
+msgid ""
+"Project check detected %d missing audio data blockfile[s] (.au), \n"
"probably due to a bug, system crash or accidental deletion.\n"
"There is no way for Audacity to recover this lost data\n"
"automatically; you may choose to permanently fill in silence\n"
"for the missing data, temporarily fill in silence for this\n"
"session only, or close the project now and try to restore the\n"
"missing data by hand."
-msgstr "Le vérificateur de projet a détecté %d bloc(s) de données audio manquants (.au) \n"
+msgstr ""
+"Le vérificateur de projet a détecté %d bloc(s) de données audio manquants (.au) \n"
"probablement à cause d'un bogue, d'un crash système ou d'un effacement accidentel\n"
"Il est impossible à Audacity de récupérer ces fichiers manquants automatiquement.\n"
"Vous pouvez choisir de les remplir définitivement de silence, de les remplir\n"
"de silence pour cette session seulement, ou de fermer le projet maintenant\n"
"et d'essayer de restaurer manuellement ces fichiers."
-#: DirManager.cpp:1347
+#: DirManager.cpp:1482
msgid "Replace missing data with silence [permanent immediately]"
-msgstr "Remplacer les données manquantes de silence [permanent immédiatement]"
+msgstr "Remplacer les données manquantes par du silence [permanent immédiatement]"
-#: DirManager.cpp:1375
+#: DirManager.cpp:1510
msgid "Cleaning up unused directories in project data..."
-msgstr "Nettoyer les répertoires inutilisés dans les données du projet..."
+msgstr "Nettoyer les répertoires inutilisés des données du projet..."
-#: DirManager.cpp:1448
+#: DirManager.cpp:1587
msgid "Caching audio"
msgstr "Cache de l'audio"
-#: DirManager.cpp:1449
+#: DirManager.cpp:1588
msgid "Caching audio into memory..."
msgstr "Cache de l'audio dans la mémoire..."
-#: DirManager.cpp:1486
+#: DirManager.cpp:1623
msgid "Saving recorded audio"
msgstr "Sauvegarde de l'audio enregistré"
-#: DirManager.cpp:1487
+#: DirManager.cpp:1624
msgid "Saving recorded audio to disk..."
-msgstr "Sauvegarde sur le disque de l'audio enregistré ..."
+msgstr "Enregistrement de l'audio sur le disque..."
#: FFT.cpp:389
msgid "Rectangular"
msgstr "Rectangulaire"
-#: FFmpeg.cpp:36
+#: FFmpeg.cpp:38
msgid "FFmpeg support not compiled in"
-msgstr ""
+msgstr "Le support FFmpeg n'est pas compilé"
-#: FFmpeg.cpp:101
-msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
+#: FFmpeg.cpp:103
+msgid ""
+"FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
+"FFmpeg a été configuré dans les Préférences et précédemment chargé avec succès, \n"
+"mais cette fois, Audacity n'a pu le charger au lancement. \n"
+"\n"
+"Vous pouvez retourner dans Préférences > Import/Export et le re-configurer."
-#: FFmpeg.cpp:104
+#: FFmpeg.cpp:106
msgid "FFmpeg startup failed"
-msgstr ""
+msgstr "Echec du lancement de FFmpeg"
-#: FFmpeg.cpp:112
+#: FFmpeg.cpp:114
msgid "FFmpeg library not found"
-msgstr ""
+msgstr "La librairie FFmpeg est absente"
-#: FFmpeg.cpp:172
+#: FFmpeg.cpp:408
msgid "Locate FFmpeg"
-msgstr ""
+msgstr "Localiser FFmpeg"
-#: FFmpeg.cpp:192
+#: FFmpeg.cpp:428
#, c-format
msgid "Audacity needs the file %s to import and export audio via FFmpeg."
-msgstr ""
+msgstr "Audacity requiert le fichier %s pour importer et exporter de l'audio par FFmpeg."
+#: FFmpeg.cpp:434
#: export/ExportMP3.cpp:562
#, c-format
msgid "Location of %s:"
msgstr "Localisation de %s:"
+#: FFmpeg.cpp:443
#: export/ExportMP3.cpp:571
#, c-format
msgid "To find %s, click here -->"
msgstr "Pour trouver %s, cliquer ici -->"
+#: FFmpeg.cpp:449
#: export/ExportMP3.cpp:577
msgid "Browse..."
msgstr "Parcourir..."
-#: FFmpeg.cpp:214
+#: FFmpeg.cpp:450
msgid "To get a free copy of FFmpeg, click here -->"
-msgstr ""
+msgstr "Pour obtenir une copie gratuite de FFmpeg, cliquer ici -->"
-#: FFmpeg.cpp:215 export/ExportMP3.cpp:579
+#: FFmpeg.cpp:451
+#: export/ExportMP3.cpp:579
msgid "Download"
-msgstr ""
+msgstr "Téléchargement"
#. i18n-hint: It's asking for the location of a file, for
+#. example, "Where is lame_enc.dll?" - you could translate
+#. "Where would I find the file %s" instead if you want.
+#: FFmpeg.cpp:473
#: export/ExportMP3.cpp:601
#, c-format
msgid "Where is %s?"
msgstr "Où se trouve %s ?"
-#: FFmpeg.cpp:407
+#: FFmpeg.cpp:643
msgid "Failed to find compatible FFmpeg libraries"
-msgstr ""
+msgstr "Impossible de trouver des librairies FFmpeg compatibles"
-#: FFmpeg.h:87
+#: FFmpeg.h:97
msgid "FFmpeg not found"
-msgstr ""
+msgstr "FFmpeg absent"
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid ""
+"Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
+"Audacity a besoin de librairies FFmpeg pour importer un fichier audio,\n"
+"mais il ne peut les trouver.\n"
+"Si vous voulez utiliser les fonction d'import FFmpeg, allez dans Préférences->Librairies\n"
+"pour télécharger les libraries FFmpeg ou indiquer leur emplacement ."
-#: FFmpeg.h:109
+#: FFmpeg.h:119
msgid "Do not show this warning again"
-msgstr ""
+msgstr "Ne plus montrer cet avertissement."
-#: FFmpeg.h:242
+#: FFmpeg.h:264
msgid "Only avformat.dll|*avformat*.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
-msgstr ""
+msgstr "Seulement avformat.dll|*avformat*.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
-#: FFmpeg.h:268
+#: FFmpeg.h:297
msgid "Dynamic Libraries (*.dylib)|*.dylib|All Files (*)|*"
-msgstr ""
+msgstr "Dynamic Libraries (*.dylib)|*.dylib|All Files (*)|*"
-#: FFmpeg.h:295
+#: FFmpeg.h:324
msgid "Only libavformat.so|libavformat.so*|Dynamically Linked Libraries (*.so*)|*.so*|All Files (*)|*"
-msgstr ""
+msgstr "Seulement libavformat.so|libavformat.so*|Dynamically Linked Libraries (*.so*)|*.so*|All Files (*)|*"
-#: FreqWindow.cpp:104
+#: FreqWindow.cpp:107
msgid "Frequency Analysis"
msgstr "Analyse de fréquence"
-#: FreqWindow.cpp:140
-#: TrackPanel.cpp:563
+#: FreqWindow.cpp:163
+#: TrackPanel.cpp:612
+#: prefs/TracksPrefs.cpp:58
msgid "Spectrum"
msgstr "Spectre"
-#: FreqWindow.cpp:141
+#: FreqWindow.cpp:164
msgid "Standard Autocorrelation"
msgstr "Autocorrélation standard"
-#: FreqWindow.cpp:142
+#: FreqWindow.cpp:165
msgid "Cuberoot Autocorrelation"
msgstr "Autocorrélation racine cubique"
-#: FreqWindow.cpp:143
+#: FreqWindow.cpp:166
msgid "Enhanced Autocorrelation"
msgstr "Autocorrélation avancée"
@@ -1101,128 +1176,181 @@ msgstr "Autocorrélation avancée"
# "spectrum". Do not translate it unless you are sure you
# know the correct technical word in your language.
#. i18n-hint: This is a technical term, derived from the word
-#: FreqWindow.cpp:147
+#. "spectrum". Do not translate it unless you are sure you
+#. know the correct technical word in your language.
+#: FreqWindow.cpp:170
msgid "Cepstrum"
msgstr "Cepstre"
-#: FreqWindow.cpp:150 FreqWindow.cpp:154
-#, fuzzy
+#: FreqWindow.cpp:174
+#: FreqWindow.cpp:178
msgid "Algorithm"
-msgstr "Algorithme :"
+msgstr "Algorithme "
-#: FreqWindow.cpp:168
+#: FreqWindow.cpp:193
+#: FreqWindow.cpp:197
#: HistoryWindow.cpp:79
msgid "Size"
msgstr "Taille"
#. i18n-hint: This refers to a "window function", used in the
-#: FreqWindow.cpp:181
+#. Frequency analyze dialog box.
+#: FreqWindow.cpp:207
msgid " window"
-msgstr " fenêtre"
+msgstr " window"
-#: FreqWindow.cpp:187 FreqWindow.cpp:191
+#: FreqWindow.cpp:211
+#: FreqWindow.cpp:215
msgid "Function"
-msgstr ""
+msgstr "Fonction "
-#: FreqWindow.cpp:192
+#: FreqWindow.cpp:220
msgid "Linear frequency"
msgstr "Fréquence linéaire"
-#: FreqWindow.cpp:193
+#: FreqWindow.cpp:221
msgid "Log frequency"
msgstr "Fréquence logarithmique"
-#: FreqWindow.cpp:201 FreqWindow.cpp:205
+#: FreqWindow.cpp:225
+#: FreqWindow.cpp:229
msgid "Axis"
-msgstr ""
+msgstr "Axe "
-#: FreqWindow.cpp:206
-#: LabelDialog.cpp:128
-#: Menus.cpp:204
-#: Menus.cpp:233
+#: FreqWindow.cpp:236
+#: LabelDialog.cpp:130
+#: Menus.cpp:255
msgid "&Export..."
msgstr "&Exporter..."
-#: export/ExportCL.cpp:322
+#: FreqWindow.cpp:237
+#: effects/Contrast.cpp:395
+#: export/ExportCL.cpp:358
+#: export/ExportMultiple.cpp:344
msgid "Export"
msgstr "Exporter"
-#: FreqWindow.cpp:209
-#: widgets/ErrorDialog.cpp:159
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr "&Retracer"
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr "Retracer"
+
+#: FreqWindow.cpp:244
+#: FreqWindow.cpp:245
+#: widgets/ErrorDialog.cpp:190
msgid "Close"
msgstr "Fermer"
-#: FreqWindow.cpp:272
-#: FreqWindow.cpp:402
-#: effects/AutoDuck.cpp:489
-#: effects/AutoDuck.cpp:523
-#: effects/AutoDuck.cpp:791
-#: effects/Compressor.cpp:352
+#: FreqWindow.cpp:247
+#: FreqWindow.cpp:250
+#: effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr "Grilles"
+
+#: FreqWindow.cpp:314
+#: FreqWindow.cpp:516
+#: effects/AutoDuck.cpp:503
+#: effects/AutoDuck.cpp:537
+#: effects/AutoDuck.cpp:806
#: effects/Compressor.cpp:360
-#: effects/Equalization.cpp:1109
-#: effects/Equalization.cpp:1111
-#: effects/Equalization.cpp:1119
-#: effects/Equalization.cpp:1185
-#: effects/Equalization.cpp:1394
-#: effects/Equalization.cpp:1405
-#: effects/Normalize.cpp:365
-#: widgets/Meter.cpp:380
+#: effects/Compressor.cpp:368
+#: effects/Equalization.cpp:1145
+#: effects/Equalization.cpp:1147
+#: effects/Equalization.cpp:1155
+#: effects/Equalization.cpp:1221
+#: effects/Equalization.cpp:1437
+#: effects/Equalization.cpp:1448
+#: effects/Normalize.cpp:372
+#: widgets/Meter.cpp:413
msgid "dB"
msgstr "dB"
#. i18n-hint: This is the abbreviation for "Hertz", or
-#: FreqWindow.cpp:287
-#: FreqWindow.cpp:442
-#: effects/Equalization.cpp:1150
-#: effects/Equalization.cpp:1181
-#: import/ImportRaw.cpp:416
+#. cycles per second.
+#: FreqWindow.cpp:330
+#: FreqWindow.cpp:556
+#: effects/Equalization.cpp:1186
+#: effects/Equalization.cpp:1217
+#: import/ImportRaw.cpp:409
msgid "Hz"
msgstr "Hz"
-#: FreqWindow.cpp:386
+#: FreqWindow.cpp:422
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "Pour le tracé du spectre, toutes les pistes sélectionnées doivent avoir la même fréquence d'échantillonnage."
+
+#: FreqWindow.cpp:449
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "Trop d'audio a été sélectionné. Seules les %.1f premières secondes d'audio seront analysées."
+
+#: FreqWindow.cpp:500
msgid "Not enough data selected."
msgstr "Pas assez de données sélectionnées"
-#: FreqWindow.cpp:450
-#: effects/AutoDuck.cpp:793
+#: FreqWindow.cpp:564
+#: effects/AutoDuck.cpp:808
msgid "s"
msgstr "s"
-#: FreqWindow.cpp:779
+#: FreqWindow.cpp:898
#, c-format
msgid "Cursor: %d Hz (%s) = %d dB Peak: %d Hz (%s) = %.1f dB"
msgstr "Curseur : %d Hz (%s) = %d dB Crête : %d Hz (%s) = %.1f dB"
-#: FreqWindow.cpp:788
+#: FreqWindow.cpp:907
#, c-format
msgid "Cursor: %.4f sec (%d Hz) (%s) = %f, Peak: %.4f sec (%d Hz) (%s) = %.3f"
msgstr "Curseur: %.4f sec (%d Hz) (%s) = %f, Crête : %.4f sec (%d Hz) (%s) = %.3f"
-#: FreqWindow.cpp:1061
+#: FreqWindow.cpp:1198
msgid "spectrum.txt"
msgstr "spectre.txt"
-#: FreqWindow.cpp:1063
+#: FreqWindow.cpp:1200
msgid "Export Spectral Data As:"
msgstr "Exporter les données spectrales sous :"
-#: FreqWindow.cpp:1079
-#: LabelDialog.cpp:599
-#: Menus.cpp:2207
-#: Project.cpp:2441
-#: Project.cpp:3395
-#: prefs/KeyConfigPrefs.cpp:180
+#: FreqWindow.cpp:1216
+#: LabelDialog.cpp:603
+#: Menus.cpp:2615
+#: effects/Contrast.cpp:587
+#: prefs/KeyConfigPrefs.cpp:280
msgid "Couldn't write to file: "
msgstr "Impossible d'enregistrer le fichier : "
-#: FreqWindow.cpp:1084
+#: FreqWindow.cpp:1221
msgid "Frequency (Hz)\tLevel (dB)"
msgstr "Fréquence (Hz)\tNiveau (dB)"
-#: FreqWindow.cpp:1090
+#: FreqWindow.cpp:1227
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "Décalage (secondes)\tFréquence (Hz)\tNiveau"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr "GStreamer %s: %s"
+
+#: GStreamerLoader.cpp:212
+#, fuzzy
+msgid ""
+"GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+"GStreamer a été configuré dans les Préférences et précédemment chargé avec succès,\n"
+"mais cette fois, Audacity n'a pu le charger au lancement.\n"
+"Vous pouvez retourner dans Préférences > Import/Export et le re-configurer."
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr "Echec du lancement de GStreamer"
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr "[[welcome|Ãcran d'accueil]]"
@@ -1241,15 +1369,15 @@ msgstr "Enregistrement Audio"
#: HelpText.cpp:105
msgid "Recording - Choosing the Input Device"
-msgstr "Enregistrement -choisir le périphérique d'entrée"
+msgstr "Enregistrement - choisir le périphérique d'entrée"
#: HelpText.cpp:109
msgid "Recording - Choosing the Input Source"
-msgstr "Enregistrement - Choisir la source audio"
+msgstr "Enregistrement -choisir la source audio"
#: HelpText.cpp:113
msgid "Recording - Setting the Input Level"
-msgstr "Enregistrement - Régler le niveau d'enregistrement"
+msgstr "Enregistrement - régler le niveau d'enregistrement"
#: HelpText.cpp:117
msgid "Editing and greyed out Menus"
@@ -1269,7 +1397,7 @@ msgstr "Formats non supportés"
#: HelpText.cpp:133
msgid "Burn to CD"
-msgstr "Graver sur CD"
+msgstr "Graver sur un CD"
#: HelpText.cpp:137
msgid "No Local Help"
@@ -1281,7 +1409,7 @@ msgstr "</p><center><h3>Pour bien démarrer</h3></center><br>"
#: HelpText.cpp:150
msgid "Welcome to Audacity "
-msgstr "Bienvenue à Audacity"
+msgstr "Bienvenue dans Audacity"
#: HelpText.cpp:151
msgid "Learn how to: <ul><li>[[play|play]] an existing audio file <li>[[record|record]] your voice, LP or tape <li>[[edit|edit]] sounds <li>[[save|save or open an Audacity project]] <li>[[export|export]] to an MP3 or other audio file, or [[burncd|burn to a CD]] </ul></p><p>"
@@ -1289,7 +1417,7 @@ msgstr "Découvrez comment : <ul><li>[[play|lire]] un fichier audio existant <li
#: HelpText.cpp:159
msgid "This screen can be viewed at any time by clicking the <i>Help</i> menu, then <i>Show Welcome Message</i>. For a detailed guide to all the Audacity menus and controls, click <i>Help</i> menu then <i>Index</i>, or download our <a href=\"http://audacity.sourceforge.net/help/documentation/manual_1.4.pdf\">full Manual</a> in PDF format.</p>"
-msgstr "Cet écran peut être affiché à tout moment en cliquant sur le menu <i>Aide</i>,puis <i>afficher le message d'accueil</i>. Pour une découverte des menus et contrôles d'Audacity en détail, cliquer sur le menu <i>Aide</i> puis <i>Index</i>, ou télécharger notre <a href=\"http://audacity.sourceforge.net/help/documentation/manual_1.4.pdf\">Manuel complet</a> en format PDF (en anglais).</p>"
+msgstr "Cet écran peut être affiché à tout moment en cliquant sur le menu <i>Aide</i>,puis <i>Afficher le message d'accueil</i>. Pour une découverte des menus et contrôles d'Audacity en détail, cliquer sur le menu <i>Aide</i> puis <i>Index</i>, ou télécharger notre <a href=\"http://audacity.sourceforge.net/help/documentation/manual_1.4.pdf\">Manuel</a> en format PDF (en anglais).</p>"
#: HelpText.cpp:172
msgid "<p><b>Opening audio files:</b> Either drag the files into the current project window, or click <i>File > Import > Audio</i>. Files can be opened into a new project window with <i>File > Open</i>. The main formats Audacity plays are <b>AIFF, AU, FLAC, M4A</b> (only on a Mac), <b>MP2/MP3, OGG Vorbis</b> and <b>WAV</b>. Click [[wma-proprietary|here]] if your file is in some other format. <b>To import a CD:</b> extract it to WAV or AIFF using iTunes, Windows Media Player 11 or similar. See our online guide: [[wiki:How_to_import_CDs|importing CDs]].</p><p> <p><b>Playing audio:</b> Press the green Play button to start playback. Press the blue Pause button once to pause playback, and again to resume. To stop, press the yellow Stop button. Spacebar can be used to either play or stop. After stopping, playback resumes from its last starting point. To change the starting point, click in the track at your desired starting point. The <b>|<<</b> and <b>>>|</b> buttons can be used to skip to the start or end of the track respectively. </p><br><br>"
@@ -1300,8 +1428,8 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr "<p><b>Pour enregistrer:</b> Choisir le périphérique d'enregistrement et la source, ajuster le niveau d'entrée, puis cliquer sur le bouton rouge Enregistrement.</b></p><p> 1) [[inputdevice|Choisir le périphérique d'enregistrement]] dans l'onglet <i>E/S Audio des Préférences</i> ou dans la <i>Barre de périphérique</i>. Les préférences E/S Audio vous permettent si besoin de choisir un enregistrement stéréo.<br> 2) [[inputsource|Choix de la source]] pour ce périphérique (par exemple, microphone ou entrée ligne) dans le sélecteur de la <i>Barre de mixage</i>, ou (sous certains systèmes) dans Périphérique d'enregistrement de l'onglet <i>E/S Audio des Préférences</i> ou dans la <i>Barre de périphérique</i>.<br> 3) [[inputlevel|Réglage du niveau d'entrée]] à l'aide du curseur de droite de la <i>Barre de mixage</i>. Un ajustement correct du niveau avant l'enregistrement est essentiel pour éviter bruit ou distorsion. </p><p> Davantage d'aide sur : \"Enregistrement\" <a href=\"http://audacity.sourceforge.net/help/faq\">FAQ</a>, notre Tutoriel en anglais<a href=\"http://www.audacityteam.org/manual/index.php?title=Tutorial_-_Your_First_Recording\"> Your First Recording</a> dans le <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">Manuel</a>, et notre Wiki en anglais[[wiki:Recording_Tips|RecordingTips]] et les pages [[wiki:Troubleshooting_Recordings|Troubleshooting Recordings]]. </p><br><br>"
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
-msgstr "<p>Le périphérique d'entrée est lla carte son à partir de laquelle vous enregistrez. Le choix se fait par \"Périphérique d'enregistrement\" dans l'onglet <i>E/S audio des Préférences</i>. Sous Windows et Linux, les Préférences sont à la fin du menu <i>Edition</i>. Sous Mac, ils sont dans le menu <i>Audacity</i>. Vous pouvez aussi aisément sélectionner le périphérique d'enregistrement depuis la <i>barre de périphérique</i>, qui peut être activé à partir d'<i>affichage > Barres d'outils...</i>. </p><p> Audacity sélectionnant par défaut le périphérique utilisé par le système, (habituellement votre carte son intégrée), il est le plus souvent inutile de changer de périphérique d'entrée. Sous Windows, le périphérique système peut être le \"Mappeur de son Microsoft\". Si vous enregistrez à partir d'un périphérique externe USB ou Firewire comme une platine vinyl USB, sélectionnez-le comme périphérique d'enregistrement d'après sa dénomination explicite. </p><p> Retour à [[record|Enregistrement audio]] <br></p>"
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgstr "<p>Le périphérique d'entrée est la carte son à partir de laquelle vous enregistrez. Le choix se fait par \"Périphérique d'enregistrement\" dans l'onglet <i>E/S audio des Préférences</i>. Sous Windows et Linux, les Préférences sont à la fin du menu <i>Edition</i>. Sous Mac, ils sont dans le menu <i>Audacity</i>. Vous pouvez aussi aisément sélectionner le périphérique d'enregistrement depuis la <i>barre de périphérique</i>, qui peut être activé à partir d'<i>Affichage > Barres d'outils...</i>. </p><p> Audacity sélectionnant par défaut le périphérique utilisé par le système, (habituellement votre carte son intégrée), il est le plus souvent inutile de changer de périphérique d'entrée. Sous Windows, le périphérique système peut être le \"Mappeur de son Microsoft\". Si vous enregistrez à partir d'un périphérique externe USB ou Firewire comme une platine vinyl USB, connectez-le, puis sélectionnez-le comme périphérique d'enregistrement d'après sa dénomination explicite. </p><p> Retour à [[record|Enregistrement audio]] <br></p>"
#: HelpText.cpp:244
msgid "<p>Select the input source (such as microphone or line-in) for your [[inputdevice|recording device]]:<br> - <b>On Windows (except Vista)</b> and <b>Linux</b>, in the dropdown selector on the right of the <i>Mixer Toolbar</i>.<br> - <b>On Windows Vista</b> and <b>Mac</b>, at Recording Device on the <i>Audio I/O tab of Preferences</i>, or in <i>Device Toolbar</i>. The source will be shown as part of the parent device (for example, <i>High Def Audio Card: Microphone</i>). If necessary, Mac users can choose the input source at Apple Audio MIDI Setup. <br><i><b>Note:</b> many USB or Firewire recording devices don't have a choice of inputs, so this step is not necessary. If in doubt, see the documentation for your device. </i></p><p> <b>Tip:</b> To <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record audio playing on the computer</a>, Windows and Linux users can choose the \"Stereo Mix\", \"Wave Out\", \"Sum\" or comparable input source. </p><p> Back to [[record|Recording Audio]] <br></p>"
@@ -1309,7 +1437,7 @@ msgstr "<p>Sélectionnez la source (le microphone ou l'entrée ligne) comme [[in
#: HelpText.cpp:267
msgid "<p>The input level must be set correctly. If the level is too low, there will be background noise. If the level is too high, there will be distortion in the loud parts. </p><p>To set the level, either see this [[wiki:Recording_levels|illustrated online guide]] or follow these steps: <ol><li>Turn on <b>monitoring</b>. Double-click the right-hand of the two <i>VU Meters</i> (or right-click over it) and click \"Start Monitoring\". If the meters are not visible, click <i>View > Toolbars</i> and check \"Meter Toolbar\". </li><li>Adjust the input slider on the <i>Mixer Toolbar</i> (by the microphone symbol), so that the red bars in the meter come close to <b>but do not touch</b> the right edge of the scale. If you can't hear the monitored audio, go to the <i>Audio I/O tab of Preferences</i> and check \"Software Playthrough\". </li></ol></p><p> Back to [[record|Recording Audio]] <br></p>"
-msgstr "<p>Le niveau d'entrée doit être réglé correctement. Si le niveau est trop bas, il y aura du bruit de fond. S'il est trop haut, les parties fortes provoqueront de la distorsion. </p><p>Pour régler le niveau, consulter [[wiki:Recording_levels|illustrated online guide]] (en anglais) ou suivez ces étapes : <ol><li>Activer le <b>monitoring</b>. Double-cliquez sur le<i>VU mètre</i> de droite (ou faites un clic droit dessus et sélectionnez \"Visualiser l'entrée\"). Si les VU mètres ne sont pas visibles, ouvrez <i>Affichage > Barres d'outils</i> et cochez \"VU mètre\". </li><li>Ajustez le curseur de volume d'entrée de la <i>Barre de mixage</i> (à côté de l'icône microphone), de façon à ce que les barres de niveau rouges approchent la limite droite <b>sans la toucher</b>. Si vous ne pouvez entendre le son pendant l'enregistrement, allez dans l'onglet <i>E/S audio des Préférences</i> et cochez \"Passage audio logiciel\". </li></ol></p><p> Retour à [[record|Enregistrement audio]] <br></p>"
+msgstr "<p>Le niveau d'entrée doit être réglé correctement. Si le niveau est trop bas, il y aura du bruit de fond. S'il est trop haut, les parties fortes provoqueront de la distorsion. </p><p>Pour régler le niveau, consulter [[wiki:Recording_levels|illustrated online guide]] (en anglais) ou suivez ces étapes : <ol><li>Activer le <b>monitoring</b>. Double-cliquez sur le<i>VU-mètre</i> de droite (ou faites un clic droit dessus et sélectionnez \"Visualiser l'entrée\"). Si les VU-mètres ne sont pas visibles, ouvrez <i>Affichage > Barres d'outils</i> et cochez \"VU-mètre\". </li><li>Ajustez le curseur de volume d'entrée de la <i>Barre de mixage</i> (à côté de l'icône microphone), de façon à ce que les barres de niveau rouges approchent la limite droite <b>sans la toucher</b>. Si vous ne pouvez entendre le son pendant l'enregistrement, allez dans l'onglet <i>E/S audio des Préférences</i> et cochez \"Passage audio logiciel\". </li></ol></p><p> Retour à [[record|Enregistrement audio]] <br></p>"
#: HelpText.cpp:292
msgid "<p>The main commands for editing audio are under the <i>Edit</i> menu (such as cut, copy and paste) and the <i>Effect</i> menu (you can do things like boost the bass, change pitch or tempo, or remove noise). </p><p> Audacity applies edits to selected areas of the audio track. To select a particular area, click in the track and drag the shaded area with the mouse. If no audio is selected, Audacity selects all the audio in the project window.</p><p> When playing or recording, the Edit and Effect menus will appear greyed out, because a moving track can't be edited. Commands can sometimes be unavailable for other reasons too. For example, you can't run effects until you have audio on the screen, and you can't paste audio until you've cut or copied it to Audacity's clipboard. </p><br><br>"
@@ -1324,8 +1452,8 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr "Pour écouter votre travail dans d'autres programmes, l'exporter en un fichier audio WAV ou MP3 (certains formats ne sont pas [[wma-proprietary|supportés]]). [[save|Enregistrer un projet Audacity]] crée un fichier projet (et un répertoire _data associé) contenant toutes vos pistes, pour vous permettre de retourner à votre travail plus tard. Cependant, les autres programmes ne peuvent lire les projets Audacity. </p><p> Pour exporter, cliquer sur <i>Fichier > Exporter</i> puis choisir le format sous lequel vous souhaitez exporter dans la liste \"type\". Pour [[burncd|graver un CD]] lisible sur tout lecteur de CD, choisir WAV ou AIFF. Pour exporter en MP3, l'[[wiki:Lame_Installation|Encodeur Lame]] doit être installé. </p><p> <i>Fichier > Exporter la sélection</i> exporte seulement une portion d'audio sélectionnée. <i>Utiliser Fichier > Export Multiple</i> pour exporter en une seule fois des fichiers multiples, soit un par piste audio, soit un par zone marquée dans une même piste. <i>Pistes > Ajouter marqueur à la sélection</i> vous permet de[[wiki:Splitting_recordings_into_separate_tracks|séparer les pistes]] d'un album pour un export multiple en fichiers séparés. </p><br><br>"
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
-msgstr "<p>Audacity <b>ne peut pas</b> [[play|lire]] ou [[export|exporter]] des fichiers en <b>WMA, RealAudio, Shorten (SHN)</b> ainsi que das la plupart des formats propriétaires, à cause de licences et de limitations de droits. Sous Mac, les formats <b>AAC</b>non protégés comme le <b>M4A</b> peuvent être importés. Quelques formats libres ne sont pas encore supportés, Y compris <b>Ogg Speex</b> et <b>Musepack</b>. Les fichiers protégés par n'importe quel gestionnaire de droits digitaux (DRM), y compris la plupart de ceux achetés en ligne sur iTunes ou Napster, <b>ne peuvent pas</b> être importés.</p><p> Si vous ne pouvez pas importer un fichier dans Audacity, et qu'il n'a pas de protection DRM, utilisez iTunes ou <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> pour le convertir en WAV ou AIFF. S'il est protégé, gravez le sur un CD audio depuis son programme de lecture, puis ectraire la piste de CD en WAV ou AIFF à l'aide d' ITunes ou (on Windows) de <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> ou de Windows Media Player 11. Vous pouvez aussi <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">enregistrer</a> le CD sur votre ordinateur. <i>Pour exporter vers un format non supporté, exporter en WAV ou AIFF puis convertir au format désiré avec iTunes ou <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgstr "<p>Audacity <b>ne peut pas</b> [[play|lire]] ou [[export|exporter]] des fichiers en <b>WMA, RealAudio, Shorten (SHN)</b> ainsi que das la plupart des formats propriétaires, à cause de licences et de limitations de droits. Sous Mac, les formats <b>AAC</b>non protégés comme le <b>M4A</b> peuvent être importés. Quelques formats libres ne sont pas encore supportés, Y compris <b>Ogg Speex</b> et <b>Musepack</b>. Les fichiers protégés par n'importe quel gestionnaire de droits digitaux (DRM), y compris la plupart de ceux achetés en ligne sur iTunes ou Napster, <b>ne peuvent pas</b> être importés.</p><p> Si vous ne pouvez pas importer un fichier dans Audacity, et qu'il n'a pas de protection DRM, utilisez iTunes ou <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> pour le convertir en WAV ou AIFF. S'il est protégé, gravez le sur un CD audio depuis son programme de lecture, puis ectraire la piste de CD en WAV ou AIFF à l'aide d' ITunes ou (on Windows) de <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> ou de Windows Media Player 11. Vous pouvez aussi <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">enregistrer</a> le CD sur votre ordinateur. <i>Pour exporter vers un format non supporté, exporter en WAV ou AIFF puis convertir au format désiré avec iTunes ou <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
#: HelpText.cpp:383
msgid "<p>To burn your work to an audio CD for standalone CD players, first [[export|export]] it as WAV or AIFF. The exported file should be stereo, 44100 Hz (set in the \"Project Rate\" button bottom left) and 16 bit (set in the \"Options\" button in the file export dialog). These are Audacity's default settings, so normally you will not need to change these before exporting. <p>Burn the exported file to an \"audio CD\" - not a \"data CD\" or \"MP3 CD\" - with a CD burning program like iTunes or Windows Media Player. For more help, see [[wiki:How_to_burn_CDs|How to burn CDs]] online. </p><p>"
@@ -1333,7 +1461,7 @@ msgstr "<p>Pour graver votre oeuvre sur un CD audio lisible sur tout lecteur de
#: HelpText.cpp:403
msgid "<p>Help for Audacity Beta is currently unfinished. For now, a draft manual is available <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">online</a>. Alternatively, click <a href=\"http://www.audacityteam.org/manual/index.php?title=Temporary_HTML_Manual_Export\">here</a> to download a single-page version of the manual which can be viewed in this window."
-msgstr ""
+msgstr "<p>L'aide d'Audacity Beta est en cours de réalisation. Pour le moment, un manuel en ligne en anglais est disponible <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">ici</a>. Ou cliquez <a href=\"http://www.audacityteam.org/manual/index.php?title=Temporary_HTML_Manual_Export\">ici</a> pour télécharger une version simple-page du manuel qui s'affichera dans cette fenêtre."
#: HistoryWindow.cpp:53
msgid "Undo History"
@@ -1355,145 +1483,150 @@ msgstr "Niveaux d'ann&ulations disponibles :"
msgid "Levels To Discard"
msgstr "Niveaux à supprimer :"
-#: HistoryWindow.cpp:102
+#: HistoryWindow.cpp:103
msgid "&Discard"
msgstr "Supprimer"
-#: HistoryWindow.cpp:111
-#: Tags.cpp:2072
-#: Tags.cpp:2074
-#: Tags.cpp:2376
-#: Tags.cpp:2378
+#: HistoryWindow.cpp:112
#: effects/ChangeLength.cpp:186
#: effects/SpikeCleaner.cpp:191
-#: effects/vamp/VampEffect.cpp:414
-#: export/ExportCL.cpp:398
+#: export/ExportCL.cpp:432
msgid "&OK"
msgstr "&OK"
-#: Internat.cpp:191
+#: Internat.cpp:143
msgid "Unable to determine"
msgstr "Impossible à déterminer"
-#: Internat.cpp:195
-#: import/ImportRaw.cpp:392
+#: Internat.cpp:147
+#: import/ImportRaw.cpp:395
msgid "bytes"
msgstr "octets"
-#: Internat.cpp:197
+#: Internat.cpp:149
msgid "KB"
msgstr "Ko"
-#: Internat.cpp:200
+#: Internat.cpp:152
msgid "MB"
msgstr "Mo"
-#: Internat.cpp:203
+#: Internat.cpp:155
msgid "GB"
msgstr "Go"
-#: LabelDialog.cpp:52
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr "Le nom de fichier spécifié ne peut être converti à cause de l'utilisation de caractères Unicode."
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr "Spécifier un nouveau nom de fichier :"
+
+#: LabelDialog.cpp:54
msgid "Track"
msgstr "Piste"
-#: LabelDialog.cpp:53
-#: Menus.cpp:4057
-#: Menus.cpp:4085
+#: LabelDialog.cpp:55
+#: Menus.cpp:4807
+#: Menus.cpp:4842
msgid "Label"
msgstr "Marqueur"
-#: LabelDialog.cpp:54
+#: LabelDialog.cpp:56
+#: TimerRecordDialog.cpp:341
msgid "Start Time"
msgstr "Heure de démarrage"
-#: LabelDialog.cpp:55
+#: LabelDialog.cpp:57
+#: TimerRecordDialog.cpp:360
msgid "End Time"
msgstr "Heure de fin"
-#: LabelDialog.cpp:98
-#: Menus.cpp:627
+#: LabelDialog.cpp:100
+#: Menus.cpp:696
msgid "&Edit Labels"
msgstr "&Editer les marqueurs"
-#: LabelDialog.cpp:113
+#: LabelDialog.cpp:115
msgid "Press F2 or double click to edit cell contents."
msgstr "Appuyer sur F2 ou double-cliquer pour éditer le contenu des cellules."
-#: LabelDialog.cpp:124
+#: LabelDialog.cpp:126
msgid "Insert &After"
msgstr "Insérer &Après"
-#: LabelDialog.cpp:125
+#: LabelDialog.cpp:127
msgid "Insert &Before"
msgstr "Insérer avant"
-#: LabelDialog.cpp:127
-#: Menus.cpp:194
+#: LabelDialog.cpp:129
msgid "&Import..."
-msgstr "&Importer..."
+msgstr "&Importer"
-#: LabelDialog.cpp:155
+#: LabelDialog.cpp:157
msgid "New..."
msgstr "Nouveau..."
-#: LabelDialog.cpp:352
-msgid "You have left blank label names. These will be\n"
+#: LabelDialog.cpp:354
+msgid ""
+"You have left blank label names. These will be\n"
"skipped when repopulating the Label Tracks.\n"
"\n"
"Would you like to go back and provide names?"
-msgstr "Vous avez laissé des noms de marqueurs en blanc. Ils seront\n"
+msgstr ""
+"Vous avez laissé des noms de marqueurs en blanc. Ils seront\n"
"omis lors du remplissage de la piste de marqueurs.\n"
"\n"
"Voulez-vous revenir en arrière et fournir des noms ?"
-#: LabelDialog.cpp:353
+#: LabelDialog.cpp:355
msgid "Confirm"
msgstr "Confirmer"
-#: LabelDialog.cpp:514
-#: Menus.cpp:3555
+#: LabelDialog.cpp:516
+#: Menus.cpp:4225
msgid "Select a text file containing labels..."
-msgstr "Choisir un fichier texte contenant des marqueurs..."
+msgstr "Choisir un fichier texte contenant les marqueurs..."
-#: LabelDialog.cpp:518
-#: Menus.cpp:3559
+#: LabelDialog.cpp:520
+#: Menus.cpp:4229
msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
msgstr "Fichiers texte (*.txt)|*.txt|Tous fichiers (*.*)|*.*"
-#: LabelDialog.cpp:532
-#: Menus.cpp:3571
-#: Project.cpp:1831
-#: Project.cpp:1839
-#: import/ImportMIDI.cpp:31
+#: LabelDialog.cpp:534
+#: Menus.cpp:4241
+#: Project.cpp:2087
+#: Project.cpp:2095
msgid "Could not open file: "
msgstr "Impossible d'ouvrir le fichier : "
-#: LabelDialog.cpp:558
+#: LabelDialog.cpp:560
msgid "No labels to export."
-msgstr "Aucun marqueur à exporter."
+msgstr "Aucun marqueur à exporter"
-#: LabelDialog.cpp:564
-#: Menus.cpp:2172
+#: LabelDialog.cpp:566
+#: Menus.cpp:2578
msgid "Export Labels As:"
msgstr "Exporter les marqueurs sous :"
-#: LabelDialog.cpp:566
-#: Menus.cpp:2170
+#: LabelDialog.cpp:568
+#: Menus.cpp:2576
msgid "labels.txt"
msgstr "marqueurs.txt"
-#: LabelDialog.cpp:699
+#: LabelDialog.cpp:703
msgid "New Label Track"
msgstr "Nouvelle piste de marqueurs"
-#: LabelDialog.cpp:700
+#: LabelDialog.cpp:704
msgid "Enter track name"
msgstr "Entrer le nom de la piste"
-#: LabelDialog.cpp:701
+#: LabelDialog.cpp:705
#: LabelDialog.h:52
-#: LabelTrack.cpp:89
-#: Menus.cpp:555
+#: LabelTrack.cpp:92
+#: Menus.cpp:605
msgid "&Label Track"
msgstr "Piste de marqueurs"
@@ -1501,1492 +1634,1469 @@ msgstr "Piste de marqueurs"
msgid "Audacity First Run"
msgstr "Premier démarrage d'Audacity"
-#: LangChoice.cpp:84
+#: LangChoice.cpp:89
msgid "Choose Language for Audacity to use:"
msgstr "Choisir la langue qu'Audacity utilisera :"
-#: Legacy.cpp:356
+#: Legacy.cpp:372
#, c-format
-msgid "Converted a 1.0 project file to the new format.\n"
+msgid ""
+"Converted a 1.0 project file to the new format.\n"
"The old file has been saved as '%s'"
-msgstr "Conversion d'un projet version 1.0 au nouveau format.\n"
+msgstr ""
+"Conversion d'un projet version 1.0 au nouveau format.\n"
"L'ancien fichier a été sauvegardé sous '%s'"
-#: Legacy.cpp:357
+#: Legacy.cpp:373
msgid "Opening Audacity Project"
msgstr "Ouverture d'un projet Audacity"
-#: Menus.cpp:162
+#: Menus.cpp:195
msgid "&File"
msgstr "&Fichier"
-#: Menus.cpp:164
-msgid "&New\tCtrl+N"
-msgstr "&Nouveau\tCtrl+N"
+#: Menus.cpp:214
+msgid "&Close"
+msgstr "&Fermer"
-#: Menus.cpp:166
-msgid "&Open...\tCtrl+O"
-msgstr "&Ouvrir...\tCtrl+O"
-
-#: Menus.cpp:171
-msgid "&Close\tCtrl+W"
-msgstr "&Fermer\tCtrl+W"
-
-#: Menus.cpp:174
-msgid "&Save Project\tCtrl+S"
-msgstr "&Enregistrer le projet\tCtrl+S"
+#: Menus.cpp:217
+msgid "&Save Project"
+msgstr "&Enregistrer le projet"
-#: Menus.cpp:178
-#: Project.cpp:2690
+#: Menus.cpp:220
+#: Project.cpp:3148
msgid "Save Project &As..."
msgstr "Enregistrer le projet &sous..."
-#: Menus.cpp:213
+#: Menus.cpp:222
msgid "Save Compressed Copy of Project..."
-msgstr ""
+msgstr "Enregistrer une copie compressée du projet ..."
-#: Menus.cpp:181
+#: Menus.cpp:226
msgid "Chec&k Dependencies..."
msgstr "Vérifier les fichiers associés..."
-#: Menus.cpp:187
+#: Menus.cpp:230
msgid "Open Me&tadata Editor..."
msgstr "Ouvrir l'éditeur de mé&tadonnées..."
-#: import/ImportRaw.cpp:447
+#: Menus.cpp:238
+#: import/ImportRaw.cpp:421
msgid "&Import"
msgstr "&Importer"
-#: Menus.cpp:196
-msgid "&Audio...\tCtrl+Shift+I"
-msgstr "&Audio...\tCtrl+Shift+I"
+#: Menus.cpp:240
+msgid "&Audio..."
+msgstr "&Audio..."
-#: Menus.cpp:197
+#: Menus.cpp:241
msgid "&Labels..."
msgstr "Marqueurs..."
-#: Menus.cpp:198
+#: Menus.cpp:243
msgid "&MIDI..."
msgstr "&MIDI..."
-#: Menus.cpp:199
+#: Menus.cpp:245
msgid "&Raw Data..."
msgstr "Données brutes (&Raw)..."
-#: Menus.cpp:210
-#: Menus.cpp:239
+#: Menus.cpp:260
msgid "Expo&rt Selection..."
msgstr "Expo&rter la sélection..."
-#: Menus.cpp:217
+#: Menus.cpp:268
msgid "Export &Labels..."
msgstr "Exporter les marqueurs..."
-#: Menus.cpp:218
+#: Menus.cpp:271
msgid "Export &Multiple..."
msgstr "Export &Multiple..."
-#: Menus.cpp:258
+#: Menus.cpp:275
msgid "Export MIDI..."
-msgstr ""
+msgstr "Exporter en MIDI ..."
-#: Menus.cpp:247
-msgid "CleanSpeech C&hain..."
-msgstr "Script CleanSpeec&h..."
+#: Menus.cpp:281
+msgid "Appl&y Chain..."
+msgstr "Appliquer le script..."
-#: Menus.cpp:248
-#: Menus.cpp:262
+#: Menus.cpp:284
msgid "Edit C&hains..."
msgstr "Editer les scripts"
-#: Menus.cpp:249
+#: Menus.cpp:287
msgid "Export CleanSpeech &Presets..."
-msgstr "Exporter les &Préselections CleanSpeech..."
+msgstr "Exporter les Préselections CleanSpeech..."
-#: Menus.cpp:250
+#: Menus.cpp:288
msgid "I&mport CleanSpeech Presets..."
msgstr "I&mporter les préréglages CleanSpeech..."
-#: Menus.cpp:260
-msgid "Appl&y Chain..."
-msgstr "Appliquer le script..."
-
-#: Menus.cpp:267
+#: Menus.cpp:295
msgid "&Upload File..."
-msgstr "Envoyer le fichier..."
+msgstr "Envoyer le fichier.."
-#: Menus.cpp:273
+#: Menus.cpp:300
msgid "Pa&ge Setup..."
msgstr "Mise en pa&ge..."
-#: Menus.cpp:274
+#: Menus.cpp:303
msgid "&Print..."
msgstr "Im&primer..."
-#: Menus.cpp:287
-msgid "E&xit\tCtrl+Q"
-msgstr "Quitter\tCtrl+Q"
+#: Menus.cpp:312
+#, fuzzy
+msgid "E&xit"
+msgstr "Edition"
-#: Menus.cpp:295
-#: toolbars/EditToolBar.cpp:76
+#: Menus.cpp:322
msgid "&Edit"
msgstr "&Edition"
-#: Menus.cpp:299
-msgid "&Undo\tCtrl+Z"
-msgstr "&Annuler\tCtrl+Z"
+#: Menus.cpp:327
+msgid "&Undo"
+msgstr "&Annuler"
-#: Menus.cpp:307
-#: prefs/KeyConfigPrefs.cpp:369
-#: toolbars/EditToolBar.cpp:146
+#: Menus.cpp:339
msgid "&Redo"
msgstr "&Refaire"
-#: Menus.cpp:320
-msgid "Cu&t\tCtrl+X"
-msgstr "Couper\tCtrl+X"
+#: Menus.cpp:345
+msgid "Cu&t"
+msgstr "Coupe magnétisée"
-#: Menus.cpp:324
-msgid "Spl&it Cut\tCtrl+Alt+X"
-msgstr "Couper\tCtrl+Alt+X"
+#: Menus.cpp:348
+msgid "Spl&it Cut"
+msgstr "Couper"
-#: Menus.cpp:325
-msgid "&Copy\tCtrl+C"
-msgstr "&Copier\tCtrl+C"
+#: Menus.cpp:349
+msgid "&Copy"
+msgstr "Copier"
-#: Menus.cpp:329
-msgid "&Paste\tCtrl+V"
-msgstr "C&oller\tCtrl+V"
+#: Menus.cpp:352
+msgid "&Paste"
+msgstr "Coller"
-#: Menus.cpp:333
-msgid "Tri&m\tCtrl+T"
-msgstr "Rogner (supprimer en dehors de la sélection)\tCtrl+T"
+#: Menus.cpp:355
+#, fuzzy
+msgid "Tri&m"
+msgstr "Ne garder que la sélection"
-#: Menus.cpp:335
-msgid "&Delete\tCtrl+K"
-msgstr "&Effacer\tCtrl+K"
+#: Menus.cpp:359
+#: Menus.cpp:398
+msgid "&Delete"
+msgstr "&Effacer"
-#: Menus.cpp:336
-msgid "Split D&elete\tCtrl+Alt+K"
-msgstr "Supprimer la sélection\tCtrl+Alt+K"
+#: Menus.cpp:360
+msgid "Split D&elete"
+msgstr "Supprimer"
-#: Menus.cpp:381
-msgid "Silence Audi&o\tCtrl+L"
-msgstr ""
+#: Menus.cpp:361
+msgid "Silence Audi&o"
+msgstr "Silence Audi&o"
-#: Menus.cpp:339
-msgid "Sp&lit\tCtrl+I"
-msgstr "Scinder\tCtrl+I"
+#: Menus.cpp:365
+msgid "Sp&lit"
+msgstr "Scinder"
-#: Menus.cpp:344
-msgid "Split Ne&w\tCtrl+Alt+I"
-msgstr "Scinder Nouveau\tCtrl+Alt+I"
+#: Menus.cpp:369
+msgid "Split Ne&w"
+msgstr "Scinder dans une nouvelle piste"
-#: Menus.cpp:349
-msgid "&Join\tCtrl+J"
-msgstr "Grouper\tCtrl+C"
+#: Menus.cpp:373
+#: Menus.cpp:405
+msgid "&Join"
+msgstr "Fusionner"
-#: Menus.cpp:394
-msgid "Detac&h at Silences\tCtrl+Alt+J"
-msgstr ""
+#: Menus.cpp:374
+#: Menus.cpp:406
+msgid "Detac&h at Silences"
+msgstr "Détacher aux silences"
-#: Menus.cpp:352
-msgid "Duplic&ate\tCtrl+D"
-msgstr "Dupliquer\tCtrl+D"
+#: Menus.cpp:375
+msgid "Duplic&ate"
+msgstr "Dupliquer"
-#: Menus.cpp:401 Menus.cpp:641
+#: Menus.cpp:380
+#: Menus.cpp:616
msgid "Stereo Trac&k to Mono"
-msgstr ""
+msgstr "Piste stéréo vers mono"
-#: Menus.cpp:408
+#: Menus.cpp:389
msgid "La&beled Regions"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:367
-msgid "&Cut\tAlt+X"
-msgstr "&Coupe magnétisée\tAlt+X"
+msgstr "Régions marquées "
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:372
-msgid "&Split Cut\tShift+Alt+X"
-msgstr "Coupe &Sans réajustement\tShift+Alt+X"
+#: Menus.cpp:392
+msgid "&Cut"
+msgstr "Coupe magnétisée"
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:377
-msgid "Co&py\tShift+Alt+C"
-msgstr "&Copier\tShift+Alt+C"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:383
-msgid "&Delete\tAlt+K"
-msgstr "&Effacer\tAlt+K"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:388
-msgid "Sp&lit Delete\tShift+Alt+K"
-msgstr "Supprimer la sélection\tShift+Alt+K"
-
-#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:393
-msgid "Sile&nce\tAlt+L"
-msgstr "Sile&nce\tAlt+L"
+msgid "&Split Cut"
+msgstr "Couper"
+
+#: Menus.cpp:394
+msgid "Co&py"
+msgstr "Copier"
-#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:399
-msgid "Spli&t\tAlt+I"
-msgstr "Scinder\tAlt+I"
+msgid "Sp&lit Delete"
+msgstr "Supprimer"
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:404
-msgid "&Join\tAlt+J"
-msgstr "Grouper\tAlt+J"
+#: Menus.cpp:400
+msgid "Sile&nce"
+msgstr "Sile&nce"
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:452
-msgid "Detac&h at Silences\tShift+Alt+J"
-msgstr ""
+#: Menus.cpp:404
+#, fuzzy
+msgid "Spli&t"
+msgstr "Séparer"
-#: Menus.cpp:457
+#: Menus.cpp:412
msgid "&Select"
+msgstr "&Sélectionner"
+
+#: Menus.cpp:415
+msgid "&All"
msgstr ""
#: Menus.cpp:416
-msgid "&All\tCtrl+A"
-msgstr "&Tout sélectionner\tCtrl+A"
+msgid "&None"
+msgstr "Aucun"
-#: Menus.cpp:417
-msgid "&None\tCtrl+Shift+A"
-msgstr "&Aucun\tCtrl+Shift+A"
+#: Menus.cpp:418
+msgid "&Left at Playback Position"
+msgstr "&Limite gauche de la sélection au point de lecture"
-#: Menus.cpp:421
-msgid "&Left at Playback Position\t["
-msgstr "Ã gauche de la position de lecture\t["
+#: Menus.cpp:419
+msgid "&Right at Playback Position"
+msgstr "Limite d&roite de la sélection au point de lecture"
-#: Menus.cpp:422
-msgid "&Right at Playback Position\t]"
-msgstr "Ã droite de la position de lecture\t]"
+#: Menus.cpp:423
+msgid "Track &Start to Cursor"
+msgstr "du début de la pi&ste jusqu'au curseur"
-#: Menus.cpp:426
-msgid "Track &Start to Cursor\tShift+J"
-msgstr ""
+#: Menus.cpp:424
+msgid "Cursor to Track &End"
+msgstr "du curseur jusqu'Ã la fin de la pist&e"
-#: Menus.cpp:427
-msgid "Cursor to Track &End\tShift+K"
-msgstr ""
-
-#: Menus.cpp:433
-msgid "Find &Zero Crossings\tZ"
-msgstr "Rechercher les croisements avec le &zéro\tZ"
+#: Menus.cpp:430
+msgid "Find &Zero Crossings"
+msgstr "Rechercher les croisements avec le &zéro"
-#: Menus.cpp:478
+#: Menus.cpp:434
msgid "Mo&ve Cursor"
-msgstr ""
+msgstr "Déplacer le curseur"
-#: Menus.cpp:437
+#: Menus.cpp:436
msgid "to Selection Star&t"
msgstr "au début de la sélec&tion"
-#: Menus.cpp:438
+#: Menus.cpp:437
msgid "to Selection En&d"
-msgstr "à la fin &de la sélection"
+msgstr "à la f&in de la sélection"
-#: Menus.cpp:442
-msgid "to Track &Start\tJ"
-msgstr "au début de la pi&ste\tJ"
+#: Menus.cpp:439
+msgid "to Track &Start"
+msgstr "au début de la piste"
-#: Menus.cpp:443
-msgid "to Track &End\tK"
-msgstr "Ã la fin de la pist&e\tK"
+#: Menus.cpp:440
+msgid "to Track &End"
+msgstr "Ã la fin de la piste"
-#: Menus.cpp:450
+#: Menus.cpp:448
msgid "Re&gion Save"
msgstr "Enregistrer la Ré&gion"
#: Menus.cpp:451
msgid "Regio&n Restore"
-msgstr "Restaurer la Régio&n"
+msgstr "Restaurer la Ré&gion"
-#: Menus.cpp:505
+#: Menus.cpp:459
msgid "Pla&y Region"
-msgstr ""
+msgstr "Lire la région"
-#: Menus.cpp:463
+#: Menus.cpp:461
msgid "&Lock"
-msgstr "Verroui&ller"
+msgstr "Verrouiller"
#: Menus.cpp:464
msgid "&Unlock"
-msgstr "Déverro&uiller"
+msgstr "Déverrouiller"
-#: Menus.cpp:470
-msgid "Turn Snap-To On"
-msgstr "Passer en sélection par bloc"
-
-#: Menus.cpp:471
-msgid "Turn Snap-To Off"
-msgstr "Passer en sélection libre"
-
-#: Menus.cpp:472
-msgid "Turn Grid Snap On"
-msgstr ""
-
-#: Menus.cpp:473
-msgid "Turn Grid Snap Off"
-msgstr ""
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
-#: Menus.cpp:521
-msgid "Pre&ferences...\tCtrl+,"
-msgstr ""
-
-#: Menus.cpp:525
-msgid "Pre&ferences...\tCtrl+P"
-msgstr ""
+#: Menus.cpp:484
+msgid "Pre&ferences..."
+msgstr "Préférences..."
-#: Menus.cpp:492
+#: Menus.cpp:494
msgid "&View"
msgstr "&Affichage"
-#: Menus.cpp:494
-msgid "Zoom &In\tCtrl+1"
-msgstr "Zoom a&vant\tCtrl+1"
-
#: Menus.cpp:497
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "Zoom &Normal\tCtrl+2"
+msgid "Zoom &In"
+msgstr "Zoom avant"
-#: Menus.cpp:498
-msgid "Zoom &Out\tCtrl+3"
-msgstr "Zoom a&rrière\tCtrl+3"
+#: Menus.cpp:500
+msgid "Zoom &Normal"
+msgstr "Zoom &normal"
#: Menus.cpp:501
-msgid "&Fit in Window\tCtrl+F"
-msgstr "&Ajuster à la fenêtre\tCtrl+F"
-
-#: Menus.cpp:502
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "Afficher toutes les pistes\tCtrl+Shift+F"
+msgid "Zoom &Out"
+msgstr "Zoom arrière"
-#: Menus.cpp:503
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "&Zoom sur la sélection\tCtrl+E"
+#: Menus.cpp:505
+msgid "&Fit in Window"
+msgstr "Afficher le projet du début à la fin"
#: Menus.cpp:506
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
-msgstr "Minimiser toutes les pistes\tCtrl+Shift+C"
+msgid "Fit &Vertically"
+msgstr "Afficher toutes les pistes"
#: Menus.cpp:507
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
-msgstr "Maximiser toutes les pistes\tCtrl+Shift+X"
+msgid "&Zoom to Selection"
+msgstr "&Zoom sur la sélection"
+
+#: Menus.cpp:511
+msgid "&Collapse All Tracks"
+msgstr "Réduire toutes les pistes"
-#: Menus.cpp:510
+#: Menus.cpp:512
+msgid "E&xpand All Tracks"
+msgstr "Restaurer toutes les pistes"
+
+#: Menus.cpp:516
msgid "&Show Clipping"
msgstr "Montrer la &saturation"
-#: Menus.cpp:519
+#: Menus.cpp:521
msgid "&History..."
msgstr "&Historique..."
-#: Menus.cpp:568
+#: Menus.cpp:529
msgid "&Toolbars"
-msgstr ""
+msgstr "Barres d'ou&tils"
-#: Menus.cpp:526
+#: Menus.cpp:531
msgid "&Control Toolbar"
-msgstr "Barre de &contrôle"
+msgstr "Barre de contrôle"
-#: Menus.cpp:527
+#: Menus.cpp:532
msgid "&Device Toolbar"
msgstr "Barre &de périphérique"
-#: Menus.cpp:528
+#: Menus.cpp:533
msgid "&Edit Toolbar"
-msgstr "Barre d'&édition"
+msgstr "Barre d'édition"
-#: Menus.cpp:529
+#: Menus.cpp:534
msgid "&Meter Toolbar"
-msgstr "Barre de VU-&mètre"
+msgstr "VU-mètre"
-#: Menus.cpp:530
+#: Menus.cpp:535
msgid "Mi&xer Toolbar"
msgstr "Barre de mi&xage"
-#: Menus.cpp:531
+#: Menus.cpp:536
msgid "&Selection Toolbar"
msgstr "Barre de &sélection"
-#: Menus.cpp:532
+#: Menus.cpp:537
msgid "T&ools Toolbar"
msgstr "Barre d'&outils"
-#: Menus.cpp:533
+#: Menus.cpp:538
msgid "Transcri&ption Toolbar"
-msgstr "Barre de transcri&ption"
+msgstr "Barre de lecture variable"
-#: Menus.cpp:535
+#: Menus.cpp:542
msgid "&Reset Toolbars"
msgstr "&Réinitialiser les barres d'outils"
-#: Menus.cpp:537
+#: Menus.cpp:550
msgid "!Simplified View"
-msgstr "!Affichage simplifié"
+msgstr "! Affichage simplifié"
#. i18n-hint: 'Transport' is the name given to the set of controls that
#. play, record, pause etc.
-#: Menus.cpp:589
+#: Menus.cpp:561
msgid "T&ransport"
-msgstr ""
+msgstr "Transport"
-#: Menus.cpp:591
-msgid "Play\tSpace"
-msgstr ""
+#: Menus.cpp:564
+#: toolbars/ControlToolBar.cpp:173
+msgid "Play"
+msgstr "Lecture"
-#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
-msgstr ""
+#: Menus.cpp:565
+msgid "&Loop Play"
+msgstr "&Lecture en boucle"
-#: Menus.cpp:595
-msgid "&Pause\tP"
-msgstr ""
+#: Menus.cpp:566
+msgid "&Pause"
+msgstr "&Pause"
-#: Menus.cpp:596
-msgid "&Stop\tSpace"
-msgstr ""
+#: Menus.cpp:569
+msgid "&Stop"
+msgstr "&Stop"
-#: Menus.cpp:799
-msgid "Skip to Start\tHome"
-msgstr "Retour au début\tHome"
+#: Menus.cpp:572
+#: toolbars/ControlToolBar.cpp:208
+msgid "Skip to Start"
+msgstr "Saut au début"
-#: Menus.cpp:800
-msgid "Skip to End\tEnd"
-msgstr "Aller à la fin\tEnd"
+#: Menus.cpp:573
+#: toolbars/ControlToolBar.cpp:209
+msgid "Skip to End"
+msgstr "Saut à la fin"
-#: Menus.cpp:602
-msgid "&Record\tR"
-msgstr ""
+#: Menus.cpp:577
+msgid "&Record"
+msgstr "Enregistrement"
-#: Menus.cpp:604
-msgid "&Timer Record...\tShift+T"
-msgstr ""
+#: Menus.cpp:578
+msgid "&Timer Record..."
+msgstr "Enregistrement programmé..."
-#: Menus.cpp:606
-msgid "Append Record\tShift+R"
-msgstr ""
+#: Menus.cpp:579
+msgid "Append Record"
+msgstr "Poursuite de l'enregistrement"
-#: Menus.cpp:609
+#: Menus.cpp:583
msgid "Overdub (on/off)"
-msgstr ""
+msgstr "Doublage (Marche/Arrêt)"
-#: Menus.cpp:611
+#: Menus.cpp:584
msgid "Software Playthrough (on/off)"
-msgstr ""
+msgstr "Passage audio logiciel (marche/arrêt)"
-#: Menus.cpp:614
+#: Menus.cpp:587
msgid "Sound Activated Recording (on/off)"
-msgstr ""
+msgstr "Enregistrement automatique (marche/arrêt)"
-#: Menus.cpp:616
+#: Menus.cpp:588
msgid "Sound Activation Level..."
-msgstr ""
+msgstr "Niveau sonore d'enregistrement automatique ..."
-#: Menus.cpp:545
+#: Menus.cpp:596
msgid "&Tracks"
-msgstr "Pis&tes"
+msgstr "Pistes"
-#: Menus.cpp:631
+#: Menus.cpp:601
msgid "Add &New"
-msgstr ""
+msgstr "Ajouter &nouvelle..."
-#: Menus.cpp:553
-msgid "&Audio Track\tCtrl+Shift+N"
-msgstr "Piste mono\tCtrl+Shift+N"
+#: Menus.cpp:603
+msgid "&Audio Track"
+msgstr "Piste audio"
-#: Menus.cpp:554
+#: Menus.cpp:604
msgid "&Stereo Track"
msgstr "Piste &stéréo"
-#: Menus.cpp:556
+#: Menus.cpp:606
#: TimeTrack.cpp:44
msgid "&Time Track"
msgstr "Piste de &temps"
-#: Menus.cpp:568
+#: Menus.cpp:619
msgid "Mi&x and Render"
msgstr "Mi&xage et Rendu"
-#: Menus.cpp:572
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
-msgstr "Mixer et rendre vers une nouvelle piste\tCtrl+Shift+M"
+#: Menus.cpp:622
+msgid "Mix and Render to New Track"
+msgstr "Mixer et rendre vers une nouvelle piste"
-#: Menus.cpp:576
+#: Menus.cpp:625
msgid "&Resample..."
msgstr "&Rééchantillonner..."
-#: Menus.cpp:586
+#: Menus.cpp:631
msgid "Remo&ve Tracks"
msgstr "Supprimer la (les) piste(s)"
-#: Menus.cpp:592
-msgid "&Mute All Tracks\tCtrl+U"
-msgstr "Rendre toutes les pistes &muettes\tCtrl+U"
+#: Menus.cpp:637
+msgid "&Mute All Tracks"
+msgstr "Toutes les pistes &muettes"
-#: Menus.cpp:593
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
-msgstr "Aucune piste muette\tCtrl+Shift+U"
+#: Menus.cpp:638
+msgid "&UnMute All Tracks"
+msgstr "Toutes les pistes &muettes"
-#: Menus.cpp:597
+#: Menus.cpp:643
msgid "Align with &Zero"
-msgstr "Aligner avec le &Zéro"
+msgstr "Aligner avec l'origine"
-#: Menus.cpp:598
+#: Menus.cpp:644
msgid "Align with &Cursor"
-msgstr "Aligner avec le &Curseur"
+msgstr "Aligner avec le &curseur"
-#: Menus.cpp:599
+#: Menus.cpp:645
msgid "Align with Selection &Start"
-msgstr "Aligner avec le début de la &Sélection"
+msgstr "Aligner avec le début de la &sélection"
-#: Menus.cpp:600
+#: Menus.cpp:646
msgid "Align with Selection &End"
msgstr "Aligner avec la fin de la sél&ection"
-#: Menus.cpp:601
+#: Menus.cpp:647
msgid "Align End with Cu&rsor"
msgstr "Aligner la fin avec le cu&rseur"
-#: Menus.cpp:602
+#: Menus.cpp:648
msgid "Align End with Selection Star&t"
msgstr "Aligner la fin avec le débu&t de la sélection"
-#: Menus.cpp:603
+#: Menus.cpp:649
msgid "Align End with Selection En&d"
-msgstr "Aligner la fin avec la fi&n de la sélection"
+msgstr "Aligner la fin avec la fin de la sélection"
-#: Menus.cpp:604
+#: Menus.cpp:650
msgid "Align Tracks To&gether"
-msgstr "Aligner les pistes entre elles"
+msgstr "Aligner les pistes ensemble"
-#: Menus.cpp:683
+#: Menus.cpp:652
msgid "&Align Tracks"
-msgstr ""
+msgstr "&Aligner les pistes"
-#: Menus.cpp:692
+#: Menus.cpp:667
msgid "Ali&gn and Move Cursor"
-msgstr ""
+msgstr "Ali&gner et déplacer le curseur"
-#: Menus.cpp:699
+#: Menus.cpp:679
msgid "Synchronize MIDI with Audio"
-msgstr ""
+msgstr "Synchoniser le MIDI avec l'audio"
-#: Menus.cpp:708
-msgid "Link Audio and Label Tracks"
-msgstr ""
+#: Menus.cpp:686
+msgid "&Link Audio and Label Tracks"
+msgstr "&Lier les pistes audio et de marqueurs "
-#: Menus.cpp:623
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "Ajouter un marqueur à la sé&lection\tCtrl+B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr "Placer un marqueur sur la sélection"
-#: Menus.cpp:624
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "Ajouter un marqueur au point de lecture\tCtrl+M"
+#: Menus.cpp:693
+msgid "Add Label At &Playback Position"
+msgstr "Placer un marqueur au point de lecture"
-#: Menus.cpp:718
+#: Menus.cpp:702
msgid "S&ort tracks"
-msgstr ""
+msgstr "Trier les pistes"
-#: Menus.cpp:719
+#: Menus.cpp:704
msgid "by &Start time"
-msgstr ""
+msgstr "Par heure de début"
-#: Menus.cpp:721
+#: Menus.cpp:707
msgid "by &Name"
-msgstr ""
+msgstr "Par &nom."
-#: Menus.cpp:643
+#: Menus.cpp:721
msgid "&Generate"
msgstr "&Générer"
-#: Menus.cpp:778 Menus.cpp:862 Menus.cpp:924
+#: Menus.cpp:766
+#: Menus.cpp:851
+#: Menus.cpp:921
msgid "Unsorted"
-msgstr ""
+msgstr "Non trié"
-#: Menus.cpp:666
+#: Menus.cpp:788
msgid "Effe&ct"
msgstr "Effet"
-#: Menus.cpp:670
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "Répéter le dernier effet\tCtrl+R"
-
-#: Menus.cpp:702
+#: Menus.cpp:872
msgid "&Analyze"
msgstr "&Analyse"
-#: Menus.cpp:704
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr "Contraste..."
+
+#: Menus.cpp:877
msgid "Plot Spectrum..."
msgstr "Tracer le spectre..."
-#: Menus.cpp:737
-#: Menus.cpp:740
+#: Menus.cpp:944
+#: Menus.cpp:947
msgid "&Help"
msgstr "&Aide"
-#: Menus.cpp:743
+#: Menus.cpp:951
msgid "&About Audacity CleanSpeech..."
msgstr "&A propos d'Audacity CleanSpeech..."
-#: Menus.cpp:747
+#: Menus.cpp:957
msgid "&Show Welcome Message..."
-msgstr "Me&ssage d'accueil..."
+msgstr "&Message d'accueil..."
-#: Menus.cpp:748
-msgid "&Index..."
-msgstr "&Index..."
+#: Menus.cpp:958
+msgid "&Help..."
+msgstr "&Aide..."
-#: Menus.cpp:961
+#: Menus.cpp:959
msgid "Show &Log..."
-msgstr ""
+msgstr "Afficher le journa&l des bogues..."
-#: Menus.cpp:756
+#: Menus.cpp:965
msgid "&Screenshot Tools..."
msgstr "&Outils de capture d'écran..."
-#: Menus.cpp:759
+#: Menus.cpp:970
msgid "&Run Benchmark..."
-msgstr "Lance&r Test de performance..."
+msgstr "&Lancer Test de performance..."
-#: Menus.cpp:761
+#: Menus.cpp:975
msgid "&Audio Device Info..."
msgstr "&Périphérique audio..."
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
-msgstr ""
-
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
-msgstr ""
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
+msgstr "Déplacement arrière entre barre d'outils et pistes"
-#: Menus.cpp:774
-msgid "Selection Tool\tF1"
-msgstr "Outil de sélection\tF1"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
+msgstr "Déplacement avant entre barre d'outils et pistes"
-#: Menus.cpp:775
-msgid "Envelope Tool\tF2"
-msgstr "Outil de niveau (enveloppe)\tF2"
+#: Menus.cpp:989
+#: toolbars/ToolsToolBar.cpp:147
+#: toolbars/ToolsToolBar.cpp:186
+msgid "Selection Tool"
+msgstr "Outil de sélection"
-#: Menus.cpp:776
-msgid "Draw Tool\tF3"
-msgstr "Outil de dessin d'ondes\tF3"
+#: Menus.cpp:990
+#: toolbars/ToolsToolBar.cpp:148
+#: toolbars/ToolsToolBar.cpp:187
+msgid "Envelope Tool"
+msgstr "Outil de niveau (enveloppe)"
-#: Menus.cpp:777
-msgid "Zoom Tool\tF4"
-msgstr "Outil Zoom\tF4"
+#: Menus.cpp:991
+#: toolbars/ToolsToolBar.cpp:151
+#: toolbars/ToolsToolBar.cpp:188
+msgid "Draw Tool"
+msgstr "Outil de dessin d'ondes"
-#: Menus.cpp:778
-msgid "Time Shift Tool\tF5"
-msgstr "Outil de glissement temporel\tF5"
+#: Menus.cpp:992
+#: toolbars/ToolsToolBar.cpp:150
+#: toolbars/ToolsToolBar.cpp:189
+msgid "Zoom Tool"
+msgstr "Outil Zoom"
-#: Menus.cpp:779
-msgid "Multi Tool\tF6"
-msgstr "Mode multi outils\tF6"
+#: Menus.cpp:993
+#: toolbars/ToolsToolBar.cpp:149
+msgid "Time Shift Tool"
+msgstr "Outil de glissement temporel"
-#: Menus.cpp:781
-msgid "Next Tool\tD"
-msgstr "Outil suivant\tD"
+#: Menus.cpp:994
+#: toolbars/ToolsToolBar.cpp:191
+msgid "Multi Tool"
+msgstr "Multi outils"
-#: Menus.cpp:782
-msgid "Previous Tool\tA"
-msgstr "Outil précédent\tA"
+#: Menus.cpp:996
+msgid "Next Tool"
+msgstr "Outil suivant"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
-msgstr ""
-
-#: Menus.cpp:785
-msgid "Stop\tS"
-msgstr "Stop\tS"
-
-#: Menus.cpp:786
-msgid "Pause\tP"
-msgstr "Pause\tP"
-
-#: Menus.cpp:787
-msgid "Record\tR"
-msgstr "Enregistrer\tR"
-
-#: Menus.cpp:788
-msgid "Record Append\tShift+R"
-msgstr ""
-
-#: Menus.cpp:790
-msgid "Play/Stop and Set Cursor\tShift+A"
-msgstr "Lecture/Stop et positionner le curseur\tShift+A"
-
-#: Menus.cpp:793
-msgid "Play One Second\t1"
-msgstr "Lire une seconde\t1"
-
-#: Menus.cpp:794
-msgid "Play To Selection\tB"
-msgstr "Lire jusqu'à la sélection\tB"
+msgid "Previous Tool"
+msgstr "Outil précédent"
-#: Menus.cpp:795
-msgid "Play Looped\tL"
-msgstr "Lecture en boucle\tL"
+#: Menus.cpp:999
+msgid "Play/Stop"
+msgstr "Lecture/Stop"
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
+#: Menus.cpp:1000
+msgid "Play/Stop and Set Cursor"
+msgstr "Lecture/Stop et positionner le curseur"
-#: Menus.cpp:797
-msgid "Play Cut Preview\tC"
-msgstr "Prévisualisation de la coupe\tC"
+#: Menus.cpp:1001
+msgid "Play One Second"
+msgstr "Lire une seconde"
-#: Menus.cpp:802
-msgid "Selection to Start\tShift+Home"
-msgstr "Sélectionner depuis le début\tShift+Home"
+#: Menus.cpp:1002
+msgid "Play To Selection"
+msgstr "Lire jusqu'à la sélection"
-#: Menus.cpp:803
-msgid "Selection to End\tShift+End"
-msgstr "Sélectionner jusqu'à la fin\tShift+End"
+#: Menus.cpp:1003
+msgid "Play Cut Preview"
+msgstr "Prélecture de la coupe"
-#: Menus.cpp:805
-msgid "DeleteKey\tBackspace"
-msgstr "Touche d'effacement\tBackspace"
+#: Menus.cpp:1005
+msgid "Selection to Start"
+msgstr "Début de la sélection"
-#: Menus.cpp:810
-msgid "DeleteKey2\tDelete"
-msgstr "Touche d'effacement2\tDelete"
+#: Menus.cpp:1006
+msgid "Selection to End"
+msgstr "Fin de la sélection"
-#: Menus.cpp:816
-msgid "Seek left short period during playback\tLeft"
-msgstr "Court saut de lecture à gauche\tLeft"
+#: Menus.cpp:1008
+#, fuzzy
+msgid "DeleteKey"
+msgstr "Effacer"
-#: Menus.cpp:817
-msgid "Seek right short period during playback\tRight"
-msgstr "Court saut de lecture à droite\tRight"
+#: Menus.cpp:1012
+#, fuzzy
+msgid "DeleteKey2"
+msgstr "Effacer"
-#: Menus.cpp:818
-msgid "Seek left long period during playback\tShift+Left"
-msgstr "Long saut de lecture à gauche\tShift+Left"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
+msgstr "Court saut à gauche durant la lecture"
-#: Menus.cpp:819
-msgid "Seek right long period during playback\tShift+Right"
-msgstr "Long saut de lecture à droite\tShift+Right"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
+msgstr "Court saut à droite durant la lecture"
-#: Menus.cpp:823
-msgid "Move Focus to Previous Track\tUp"
-msgstr "Passer la visée à la piste précédente\tUp"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
+msgstr "Long saut à gauche durant la lecture"
-#: Menus.cpp:824
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
-msgstr "Passer la visée à la précédente et changer la sélection\tShift+Up"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
+msgstr "Long saut à droite durant la lecture"
-#: Menus.cpp:825
-msgid "Move Focus to Next Track\tDown"
-msgstr "Passer la visée à la piste suivante\tDown"
+#: Menus.cpp:1026
+msgid "Move Focus to Previous Track"
+msgstr "Passer la visée à la piste précédente"
-#: Menus.cpp:826
-msgid "Move Focus to Next and Change Selection\tShift+Down"
-msgstr "Passer la visée à la suivante et changer la sélection\tShift+Down"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
+msgstr "Passer à la visée précédente et sélectionner"
-#: Menus.cpp:827
-msgid "Toggle Focused Track\tReturn"
-msgstr "Bascule de visée de piste\tReturn"
+#: Menus.cpp:1028
+msgid "Move Focus to Next Track"
+msgstr "Passer la visée à la piste suivante"
-#: Menus.cpp:828
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr "Bascule de visée de piste\tNUMPAD_ENTER"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
+msgstr "Passer à la visée suivante et sélectionner"
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
-msgstr ""
+#: Menus.cpp:1030
+#: Menus.cpp:1031
+msgid "Toggle Focused Track"
+msgstr "Bascule de visée de piste"
-#: Menus.cpp:831
-msgid "Cursor Left\tLeft"
-msgstr "Curseur gauche\tLeft"
+#: Menus.cpp:1033
+msgid "Cursor Left"
+msgstr "Petit saut de curseur à gauche"
-#: Menus.cpp:832
-msgid "Cursor Right\tRight"
-msgstr "Curseur droite\tRight"
+#: Menus.cpp:1034
+msgid "Cursor Right"
+msgstr "Petit saut de curseur à droite"
-#: Menus.cpp:833
-msgid "Cursor Short Jump Left\t,"
-msgstr "Petit saut de curseur à gauche\t,"
+#: Menus.cpp:1035
+msgid "Cursor Short Jump Left"
+msgstr "Petit saut de curseur à gauche"
-#: Menus.cpp:834
-msgid "Cursor Short Jump Right\t."
-msgstr "Petit saut de curseur à droite\t."
+#: Menus.cpp:1036
+msgid "Cursor Short Jump Right"
+msgstr "Petit saut de curseur à droite"
-#: Menus.cpp:835
-msgid "Cursor Long Jump Left\tShift+,"
-msgstr "Grand saut de curseur à gauche\tShift+,"
+#: Menus.cpp:1037
+msgid "Cursor Long Jump Left"
+msgstr "Grand saut de curseur à gauche"
-#: Menus.cpp:836
-msgid "Cursor Long Jump Right\tShift+."
-msgstr "Grand saut de curseur à droite\tShift+."
+#: Menus.cpp:1038
+msgid "Cursor Long Jump Right"
+msgstr "Grand saut de curseur à droite"
-#: Menus.cpp:838
-msgid "Selection Extend Left\tShift+Left"
-msgstr "Etendre la sélection à gauche\tShift+Left"
+#: Menus.cpp:1040
+#, fuzzy
+msgid "Selection Extend Left"
+msgstr "Fin de la sélection"
-#: Menus.cpp:839
-msgid "Selection Extend Right\tShift+Right"
-msgstr "Etendre la sélection à droite\tShift+Right"
+#: Menus.cpp:1041
+#, fuzzy
+msgid "Selection Extend Right"
+msgstr "Fin de la sélection"
-#: Menus.cpp:841
+#: Menus.cpp:1043
msgid "Set (or Extend) Left Selection"
msgstr "Définir (ou étendre) la sélection gauche"
-#: Menus.cpp:842
+#: Menus.cpp:1044
msgid "Set (or Extend) Right Selection"
msgstr "Définir (ou étendre) la sélection droite"
-#: Menus.cpp:844
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "Réduire la sélection à gauche\tCtrl+Shift+Right"
+#: Menus.cpp:1046
+msgid "Selection Contract Left"
+msgstr "Réduire la sélection à gauche"
-#: Menus.cpp:845
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "Réduire la sélection à droite\tCtrl+Shift+Left"
+#: Menus.cpp:1047
+msgid "Selection Contract Right"
+msgstr "Réduire la sélection à gauche"
-#: Menus.cpp:847
-msgid "Change pan on focused track\tShift+P"
-msgstr "Changer le panoramique sur la piste visée\tShift+P"
+#: Menus.cpp:1049
+msgid "Change pan on focused track"
+msgstr "Changer le panoramique sur la piste visée"
-#: Menus.cpp:848
-msgid "Pan left on focused track\tAlt+Shift+Left"
-msgstr "Panoramique à gauche sur la piste visée\tAlt+Shift+Left"
+#: Menus.cpp:1050
+msgid "Pan left on focused track"
+msgstr "Panoramique à gauche sur la piste visée"
-#: Menus.cpp:849
-msgid "Pan right on focused track\tAlt+Shift+Right"
-msgstr "Panoramique à droite sur la piste visée\tAlt+Shift+Right"
+#: Menus.cpp:1051
+msgid "Pan right on focused track"
+msgstr "Panoramique à droite sur la piste visée"
-#: Menus.cpp:850
-msgid "Change gain on focused track\tShift+G"
-msgstr "Changer le gain sur la piste visée\tShift+G"
+#: Menus.cpp:1052
+msgid "Change gain on focused track"
+msgstr "Changer le gain sur la piste visée"
-#: Menus.cpp:851
-msgid "Increase gain on focused track\tAlt+Shift+Up"
-msgstr "Augmenter le gain sur la piste visée\tAlt+Shift+Up"
+#: Menus.cpp:1053
+msgid "Increase gain on focused track"
+msgstr "Augmenter le gain sur la piste visée"
-#: Menus.cpp:852
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
-msgstr "Diminuer le gain sur la piste visée\tAlt+Shift+Down"
+#: Menus.cpp:1054
+msgid "Decrease gain on focused track"
+msgstr "Diminuer le gain sur la piste visée"
-#: Menus.cpp:853
-msgid "Open menu on focused track\tShift+M"
-msgstr "Ouvrir le menu sur la piste visée\tShift+M"
+#: Menus.cpp:1055
+msgid "Open menu on focused track"
+msgstr "Ouvrir le menu sur la piste visée"
-#: Menus.cpp:854
-msgid "Mute/Unmute focused track\tShift+U"
-msgstr "Muet bascule marche/arrêt sur la piste visée\tShift+U"
+#: Menus.cpp:1056
+msgid "Mute/Unmute focused track"
+msgstr "Muet bascule marche/arrêt sur la piste visée"
-#: Menus.cpp:855
-msgid "Solo/Unsolo focused track\tShift+S"
-msgstr "Bascule marche/arrêt du solo sur la piste visée\tShift+S"
+#: Menus.cpp:1057
+msgid "Solo/Unsolo focused track"
+msgstr "Bascule marche/arrêt du solo sur la piste visée"
-#: Menus.cpp:856
-msgid "Close focused track\tShift+C"
-msgstr "Fermer la sur la piste visée\tShift+C"
+#: Menus.cpp:1058
+msgid "Close focused track"
+msgstr "Fermer la sur la piste visée"
-#: Menus.cpp:858
+#: Menus.cpp:1060
msgid "Snap To On"
msgstr "Passer en sélection par bloc"
-#: Menus.cpp:859
+#: Menus.cpp:1061
msgid "Snap To Off"
msgstr "Passer en sélection libre"
-#: Menus.cpp:1073
-msgid "Full screen on/off\tF11"
-msgstr ""
+#: Menus.cpp:1065
+msgid "Full screen on/off"
+msgstr "Plein écran/retour"
+
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr "Ajuster le gain de sortie"
+
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr "Augmenter le gain de sortie"
+
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr "Diminuer le gain de sortie"
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr "Ajuster le gain d'entrée"
+
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr "Augmenter le gain d'entrée"
+
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr "Diminuer le gain d'entrée"
+
+#: Menus.cpp:1074
+msgid "Adjust input source"
+msgstr "Ajuster la source d'entrée"
#. i18n-hint: This is the name of the menu item on Mac OS X only
-#: Menus.cpp:873
+#: Menus.cpp:1161
msgid "Open Recent"
msgstr "Ouvrir les fichiers récents"
#. i18n-hint: This is the name of the menu item on Windows and Linux
-#: Menus.cpp:1158
+#: Menus.cpp:1164
msgid "Recent &Files"
-msgstr ""
+msgstr "&Fichiers récents..."
-#: Menus.cpp:925
+#: Menus.cpp:1182
#, c-format
msgid "&Undo %s"
msgstr "&Annuler %s"
-#: Menus.cpp:951
+#: Menus.cpp:1208
msgid "Can't Undo"
msgstr "Impossible d'annuler"
-#: Menus.cpp:960
+#: Menus.cpp:1217
#, c-format
msgid "&Redo %s"
msgstr "&Refaire %s"
-#: Menus.cpp:966
+#: Menus.cpp:1223
msgid "Can't Redo"
msgstr "Impossible de refaire"
-#: Menus.cpp:1528
+#: Menus.cpp:1858
msgid "Sort By Time"
msgstr "Trier par temps"
-#: Menus.cpp:1528
+#: Menus.cpp:1858
msgid "Tracks sorted by time"
msgstr "Pistes triées par temps"
-#: Menus.cpp:1554
+#: Menus.cpp:1884
msgid "Sort By Name"
msgstr "Trier par nom"
-#: Menus.cpp:1554
+#: Menus.cpp:1884
msgid "Tracks sorted by name"
msgstr "Pistes triées par nom"
-#: Menus.cpp:1705
+#: Menus.cpp:2035
msgid "Set Left Selection Bound"
msgstr "Définir la limite gauche de sélection"
-#: Menus.cpp:1739
+#: Menus.cpp:2071
msgid "Set Right Selection Bound"
msgstr "Définir la limite droite de sélection"
-#: Menus.cpp:2006
+#: Menus.cpp:2396
msgid "You must select a track first."
-msgstr "Sélectionner d'abord une piste."
+msgstr "Sélectionner d'abord une piste"
-#: Menus.cpp:2035
+#: Menus.cpp:2431
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "Répéter %s\tCtrl+R"
+msgid "Repeat %s"
+msgstr "Répéter %s"
-#: Menus.cpp:2166
+#: Menus.cpp:2572
msgid "There are no label tracks to export."
-msgstr "Il n'y a pas de piste de marqueurs à exporter."
+msgstr "Il n'y a pas de piste de marqueurs à exporter"
-#: Menus.cpp:2619
+#: Menus.cpp:2667
msgid "Export MIDI As:"
-msgstr ""
+msgstr "Exporter MIDI sous :"
-#: Menus.cpp:2623
+#: Menus.cpp:2671
msgid "MIDI file (*.mid)|*.mid|Allegro file (*.gro)|*.gro"
-msgstr ""
+msgstr "Fichiers MIDI (*.mid)|*.mid|Fichiers Allegro (*.gro)|*.gro"
-#: Menus.cpp:2655
-msgid "You have selected a filename with an unrecognized file extension.\n"
+#: Menus.cpp:2703
+msgid ""
+"You have selected a filename with an unrecognized file extension.\n"
"Do you want to continue?"
msgstr ""
+"Vous avez sélectionné un nom de fichier comportant une extension inconnue.\n"
+"Souhaitez-vous continuer ?"
-#: Menus.cpp:2656
+#: Menus.cpp:2704
msgid "Export MIDI"
-msgstr ""
+msgstr "Exporter MIDI"
-#: Menus.cpp:2271
+#: Menus.cpp:2782
msgid "Nothing to undo"
msgstr "Rien à annuler"
-#: Menus.cpp:2291
+#: Menus.cpp:2803
msgid "Nothing to redo"
msgstr "Rien à refaire"
-#: Menus.cpp:2366
-#: TrackPanel.cpp:605
-#: toolbars/EditToolBar.cpp:133
+#: Menus.cpp:2910
+#: TrackPanel.cpp:653
+#: toolbars/EditToolBar.cpp:130
+#: toolbars/EditToolBar.cpp:190
msgid "Cut"
msgstr "Couper"
-#: Menus.cpp:2366
+#: Menus.cpp:2910
msgid "Cut to the clipboard"
msgstr "Couper vers le presse-papier"
-#: Menus.cpp:2404
+#: Menus.cpp:2949
msgid "Split Cut"
msgstr "Couper"
-#: Menus.cpp:2404
+#: Menus.cpp:2949
msgid "Split-cut to the clipboard"
msgstr "Couper vers le presse-papier"
-#: Menus.cpp:2469
-#: Menus.cpp:2540
-#: Menus.cpp:2634
-#: TrackPanel.cpp:607
-#: toolbars/EditToolBar.cpp:137
+#: Menus.cpp:3015
+#: Menus.cpp:3080
+#: Menus.cpp:3161
+#: Menus.cpp:3360
+#: TrackPanel.cpp:655
+#: toolbars/EditToolBar.cpp:134
+#: toolbars/EditToolBar.cpp:192
msgid "Paste"
msgstr "Coller"
-#: Menus.cpp:2469
+#: Menus.cpp:3015
msgid "Pasted text from the clipboard"
msgstr "Texte collé depuis le presse-papier"
-#: Menus.cpp:2540
-#: Menus.cpp:2634
+#: Menus.cpp:3080
+#: Menus.cpp:3161
+#: Menus.cpp:3360
msgid "Pasted from the clipboard"
msgstr "Collé depuis le presse-papier"
-#: Menus.cpp:3094
+#: Menus.cpp:3229
msgid "Pasting one type of track into another is not allowed."
-msgstr ""
+msgstr "La copie d'un type de piste dans un autre n'est pas permise."
-#: Menus.cpp:2574
+#: Menus.cpp:3241
msgid "Copying stereo audio into a mono track is not allowed."
msgstr "La copie d'audio stéréo dans une piste mono n'est pas permise."
-#: Menus.cpp:2670
-#: toolbars/EditToolBar.cpp:139
+#: Menus.cpp:3396
+#: toolbars/EditToolBar.cpp:193
msgid "Trim"
-msgstr "Rogner"
+msgstr "Ne garder que la sélection"
-#: Menus.cpp:2670
+#: Menus.cpp:3396
msgid "Trim file to selection"
-msgstr "Rogner le fichier vers la sélection"
+msgstr "Couper le fichier vers la sélection"
-#: Menus.cpp:2699
+#: Menus.cpp:3425
#, c-format
msgid "Split-deleted %.2f seconds at t=%.2f"
msgstr "Audio supprimé de %.2f secondes à t=%.2f"
-#: Menus.cpp:2702
+#: Menus.cpp:3428
msgid "Split Delete"
msgstr "Supprimer"
-#: Menus.cpp:2723
+#: Menus.cpp:3449
#, c-format
msgid "Disjoined %.2f seconds at t=%.2f"
msgstr "Dégroupé de %.2f secondes à t=%.2f"
-#: Menus.cpp:2726
+#: Menus.cpp:3452
msgid "Disjoin"
-msgstr "Dégrouper"
+msgstr "Détacher"
-#: Menus.cpp:2747
+#: Menus.cpp:3473
#, c-format
msgid "Joined %.2f seconds at t=%.2f"
msgstr "Groupé de %.2f secondes à t=%.2f"
-#: Menus.cpp:2750
+#: Menus.cpp:3476
msgid "Join"
-msgstr "Grouper"
+msgstr "Fusionner"
-#: Menus.cpp:2769
+#: Menus.cpp:3495
#, c-format
msgid "Silenced selected tracks for %.2f seconds at %.2f"
msgstr "Pistes sélectionnées rendues muettes de %.2f secondes à %.2f"
-#: Menus.cpp:2771
-#: toolbars/EditToolBar.cpp:141
+#: Menus.cpp:3497
+#: toolbars/EditToolBar.cpp:194
msgid "Silence"
msgstr "Silence"
-#: Menus.cpp:2805
+#: Menus.cpp:3527
msgid "Duplicate"
msgstr "Dupliquer"
-#: Menus.cpp:2805
+#: Menus.cpp:3527
msgid "Duplicated"
msgstr "Dupliqué"
-#: Menus.cpp:2824
+#: Menus.cpp:3546
msgid "Cut Labels"
msgstr "Copier les marqueurs"
-#: Menus.cpp:2824
+#
+#: Menus.cpp:3546
msgid "Cut labeled regions to the clipboard"
msgstr "Couper la région marquée vers le presse-papier"
-#: Menus.cpp:2838
+#: Menus.cpp:3560
msgid "SplitCut labeled regions to the clipboard"
msgstr "Couper les régions marquées vers le presse-papier"
-#: Menus.cpp:2839
+#: Menus.cpp:3561
msgid "Split Cut Labels"
msgstr "Couper les marqueurs"
-#: Menus.cpp:2853
+#: Menus.cpp:3575
msgid "Copied labeled regions to the clipboard"
msgstr "Régions marquées collées vers le presse-papier"
-#: Menus.cpp:2853
+#: Menus.cpp:3575
msgid "Copy Labels"
msgstr "Copier les marqueurs"
-#: Menus.cpp:2865
+#: Menus.cpp:3587
msgid "Delete Labels"
msgstr "Effacer les marqueurs"
-#: Menus.cpp:2865
+#: Menus.cpp:3587
msgid "Deleted labeled regions"
msgstr "Supprimer les régions marquées"
-#: Menus.cpp:2877
+#: Menus.cpp:3599
msgid "Split Delete Labels"
msgstr "Supprimer les marqueurs"
-#: Menus.cpp:2877
+#: Menus.cpp:3599
msgid "Split Deleted labeled regions"
-msgstr "Supprimer les régions marquéesr"
+msgstr "Supprimer les régions marquées"
-#: Menus.cpp:2889
+#: Menus.cpp:3611
msgid "Silence Labels"
msgstr "Marqueurs de silence"
-#: Menus.cpp:2889
-#, fuzzy
+#: Menus.cpp:3611
msgid "Silenced labeled regions"
-msgstr "Rendre la sélection muette"
+msgstr "Régions marquées muettes"
-#: Menus.cpp:2901
+#: Menus.cpp:3623
msgid "Split Labels"
msgstr "Scinder les marqueurs"
-#: Menus.cpp:2901
+#: Menus.cpp:3623
msgid "Split labeled regions"
msgstr "Scinder les régions marquées"
-#: Menus.cpp:2913
+#: Menus.cpp:3635
msgid "Join Labels"
-msgstr "Grouper les marqueurs"
+msgstr "Fusionner les marqueurs"
-#: Menus.cpp:2913
+#: Menus.cpp:3635
msgid "Joined labeled regions"
msgstr "Régions marquées groupées"
-#: Menus.cpp:2925
+#: Menus.cpp:3647
msgid "Disjoin Labels"
msgstr "Dégrouper les marqueurs"
-#: Menus.cpp:2925
+#: Menus.cpp:3647
msgid "Disjoined labeled regions"
msgstr "Régions marquées dégroupées"
-#: Menus.cpp:2947
-#: TrackPanel.cpp:6121
+#: Menus.cpp:3669
+#: TrackPanel.cpp:6255
msgid "Split"
msgstr "Séparer"
-#: Menus.cpp:3041
+#: Menus.cpp:3758
msgid "Split New"
msgstr "Scinder dans une nouvelle piste"
-#: Menus.cpp:3041
+#: Menus.cpp:3758
msgid "Split to new track"
msgstr "Séparer vers une nouvelle piste"
-#: Menus.cpp:3124
+#: Menus.cpp:3840
msgid "Split at labels"
msgstr "Séparer au marqueur"
-#: Menus.cpp:3425
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "Pour le tracé du spectre, toutes les pistes sélectionnées doivent avoir le même taux d'échantillonnage."
-
-#: Menus.cpp:3451
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "Trop d'audio a été sélectionné. Seules les %.1f premières secondes d'audio seront analysées."
-
-#: Menus.cpp:3584
+#: Menus.cpp:4254
#, c-format
msgid "Imported labels from '%s'"
msgstr "Marqueurs importés depuis '%s'"
-#: Menus.cpp:3585
+#: Menus.cpp:4255
msgid "Import Labels"
msgstr "Importer les marqueurs"
-#: Menus.cpp:3595
+#: Menus.cpp:4266
msgid "Select a MIDI file..."
msgstr "Choisir un fichier MIDI..."
-#: Menus.cpp:4196
+#: Menus.cpp:4270
msgid "MIDI and Allegro files (*.mid;*.midi;*.gro)|*.mid;*.midi;*.gro|MIDI files (*.mid;*.midi)|*.mid;*.midi|Allegro files (*.gro)|*.gro|All files (*.*)|*.*"
-msgstr ""
+msgstr "Fichiers MIDI et Allegro (*.mid;*.midi;*.gro)|*.mid;*.midi;*.gro|Fichiers MIDI (*.mid;*.midi)|*.mid;*.midi|Fichiers Allegro(*.gro)|*.gro|All files (*.*)|*.*"
-#: Menus.cpp:3615
+#: Menus.cpp:4286
#, c-format
msgid "Imported MIDI from '%s'"
msgstr "Midi importé depuis '%s'"
-#: Menus.cpp:3617
+#: Menus.cpp:4287
msgid "Import MIDI"
msgstr "Importer MIDI"
-#: Menus.cpp:3630
+#: Menus.cpp:4301
msgid "Select any uncompressed audio file..."
-msgstr "Choisir un fichier audio non compressé..."
+msgstr "Choisir un fichier audio non compressé ..."
-#: Menus.cpp:3634
+#: Menus.cpp:4305
msgid "All files (*)|*"
msgstr "Tous les fichiers (*.*)|*.*"
-#: Menus.cpp:3668
+#: Menus.cpp:4329
msgid "Edit the metadata tags"
msgstr "Editer les tags de métadonnées"
-#: Menus.cpp:3669
-#: export/Export.cpp:298
+#: Menus.cpp:4330
+#: export/Export.cpp:348
msgid "Edit Metadata"
msgstr "Editer les métadonnées"
-#: Menus.cpp:3669
+#: Menus.cpp:4330
msgid "Edit Metadata tags"
msgstr "Editer les tags de métadonnées"
-#: Menus.cpp:3725
+#: Menus.cpp:4385
#, c-format
msgid "Rendered all audio in track '%s'"
msgstr "Tout l'audio de la piste '%s' rendu"
-#: Menus.cpp:3726
+#: Menus.cpp:4386
msgid "Render"
msgstr "Rendu"
-#: Menus.cpp:3731
+#: Menus.cpp:4391
#, c-format
msgid "Mixed and rendered %d tracks into one new stereo track"
msgstr "Mixer et rendre les pistes %d en une nouvelle piste stéréo"
-#: Menus.cpp:3734
+#: Menus.cpp:4394
#, c-format
msgid "Mixed and rendered %d tracks into one new mono track"
msgstr "Mixer et rendre les pistes %d en une nouvelle piste mono"
-#: Menus.cpp:3736
+#: Menus.cpp:4396
#: Mix.cpp:120
msgid "&Mix and Render"
-msgstr "&Mixage et rendu"
+msgstr "&Mixer et rendre"
-#: Menus.cpp:3866
+#: Menus.cpp:4528
msgid "Aligned with zero"
msgstr "Aligné avec le zéro"
-#: Menus.cpp:3870
+#: Menus.cpp:4532
msgid "Aligned cursor"
msgstr "Curseur aligné"
-#: Menus.cpp:3874
+#: Menus.cpp:4536
msgid "Aligned with selection start"
msgstr "Aligné avec le début de la sélection"
-#: Menus.cpp:3878
+#: Menus.cpp:4540
msgid "Aligned with selection end"
msgstr "Aligné avec la fin de la sélection"
-#: Menus.cpp:3882
+#: Menus.cpp:4544
msgid "Aligned end with cursor"
msgstr "Fin alignée avec le curseur"
-#: Menus.cpp:3886
+#: Menus.cpp:4548
msgid "Aligned end with selection start"
msgstr "Fin alignée avec le début de la sélection"
-#: Menus.cpp:3890
+#: Menus.cpp:4552
msgid "Aligned end with selection end"
msgstr "Fin alignée avec la fin de la sélection"
-#: Menus.cpp:3894
+#: Menus.cpp:4556
msgid "Aligned"
msgstr "Aligné"
-#: Menus.cpp:3927
+#: Menus.cpp:4589
msgid "Align"
msgstr "Aligner"
-#: Menus.cpp:4599
+#: Menus.cpp:4675
msgid "Sync MIDI with Audio"
-msgstr ""
+msgstr "Sync MIDI avec Audio"
-#: Menus.cpp:4603
+#: Menus.cpp:4679
msgid "Alignment completed."
-msgstr ""
+msgstr "Alignement achevé"
-#: Menus.cpp:3950
+#: Menus.cpp:4690
msgid "Created new audio track"
msgstr "Nouvelle piste audio créée"
-#: Menus.cpp:3950
-#: Menus.cpp:3973
-#: Menus.cpp:3988
-#: Menus.cpp:4008
+#: Menus.cpp:4690
+#: Menus.cpp:4712
+#: Menus.cpp:4727
+#: Menus.cpp:4747
msgid "New Track"
msgstr "Nouvelle piste"
-#: Menus.cpp:3973
+#: Menus.cpp:4712
msgid "Created new stereo audio track"
msgstr "Nouvelle piste audio stéréo créée"
-#: Menus.cpp:3988
+#: Menus.cpp:4727
msgid "Created new label track"
msgstr "Nouvelle piste de marqueurs créée"
-#: Menus.cpp:3997
+#: Menus.cpp:4736
msgid "The version of Audacity you are using does not support multiple time tracks."
msgstr "Cette version d'Audacity ne prend pas en charge des pistes temporelles multiples"
-#: Menus.cpp:4008
+#: Menus.cpp:4747
msgid "Created new time track"
msgstr "Nouvelle piste de temps créée"
-#: Menus.cpp:4057
+#: Menus.cpp:4807
msgid "Added label"
msgstr "Marqueur ajouté"
-#: Menus.cpp:4085
+#: Menus.cpp:4842
msgid "Edited labels"
msgstr "Marqueurs édités"
-#: Menus.cpp:4112
+#: Menus.cpp:4869
msgid "Save CleanSpeech Preset File As:"
msgstr "Enregistrer le fichier de présélection CleanSpeech sous :"
-#: Menus.cpp:4116
+#: Menus.cpp:4873
msgid "CleanSpeech Presets (*.csp)|*.csp"
msgstr "Préréglages de ClenSpeech (*.csp)|*.csp"
-#: Menus.cpp:4123
-#: export/Export.cpp:515
+#: Menus.cpp:4880
+#: export/Export.cpp:610
msgid "Sorry, pathnames longer than 256 characters not supported."
msgstr "Désolé, les noms de chemins de plus de 256 caractères ne sont pas supportés."
-#: Menus.cpp:4169
+#: Menus.cpp:4926
msgid "Problem encountered exporting presets."
msgstr "Problème rencontré lors de l'exportation des présélections."
-#: Menus.cpp:4170
-#: export/Export.cpp:408
+#: Menus.cpp:4927
+#: export/Export.cpp:472
msgid "Unable to export"
msgstr "Impossible d'exporter"
-#: Menus.cpp:4354
+#: Menus.cpp:5110
msgid "Remove Track"
msgstr "Supprimer la piste"
-#: Menus.cpp:4354
+#: Menus.cpp:5110
msgid "Removed audio track(s)"
msgstr "Piste(s) audio supprimée(s)"
-#: Menus.cpp:4508
-#: Menus.cpp:4527
-#: export/ExportMP3.cpp:1926
+#: Menus.cpp:5266
+#: Menus.cpp:5322
+#: export/ExportFFmpeg.cpp:756
+#: export/ExportMP3.cpp:1785
msgid "Resample"
msgstr "Rééchantillonner"
-#: Menus.cpp:4508
+#: Menus.cpp:5287
+#: TrackPanel.cpp:6479
+#: toolbars/MixerToolBar.cpp:314
msgid "New sample rate (Hz):"
-msgstr "Nouvelle fréquence d'échantillonnage (Hz) :"
+msgstr "Nouvelle fréquence d'échantillonnage (Hz):"
-#: Menus.cpp:4514
+#: Menus.cpp:5311
+#: TrackPanel.cpp:6503
msgid "The entered value is invalid"
msgstr "La valeur entrée est invalide"
-#: Menus.cpp:4525
+#: Menus.cpp:5320
#, c-format
msgid "Resampling track %d"
msgstr "Rééchantillonnage de la piste %d"
-#: Menus.cpp:4536
+#: Menus.cpp:5329
msgid "Resample Track"
msgstr "Rééchantillonner la piste"
-#: Menus.cpp:4536
+#: Menus.cpp:5329
msgid "Resampled audio track(s)"
msgstr "Piste(s) audio rééchantillonnée(s)"
-#: Mix.cpp:94
-#: Mix.cpp:101
+#: Mix.cpp:95
+#: Mix.cpp:102
msgid "Mix"
msgstr "Mixer"
#: Mix.cpp:121
msgid "Mixing and rendering tracks"
-msgstr "Mixage et rendu des pistes"
+msgstr "Mixer et rendre les pistes"
-#: NoteTrack.cpp:36
+#: NoteTrack.cpp:43
msgid "Note Track"
msgstr "Piste de note"
-#: Printing.cpp:198
+#: Printing.cpp:160
msgid "There was a problem printing."
msgstr "Il y a eu un problème à l'impression."
-#: Printing.cpp:199
+#: Printing.cpp:161
msgid "Print"
msgstr "Imprimer"
-#: Project.cpp:636
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr "Répéter le dernier effet"
+
+#: Project.cpp:774
msgid "Main Mix"
msgstr "Mix principal"
-#: Project.cpp:761
+#: Project.cpp:892
#, c-format
msgid "Welcome to Audacity version %s"
msgstr "Bienvenue dans Audacity version %s"
-#: Project.cpp:922
+#: Project.cpp:1047
msgid "(Recovered)"
msgstr "(Récupéré)"
-#: Project.cpp:1482
-#: TrackPanel.cpp:804
-#: toolbars/ControlToolBar.cpp:191
+#: Project.cpp:1689
+#: TrackPanel.cpp:840
+#: toolbars/ControlToolBar.cpp:187
msgid "Record"
msgstr "Enregistrement"
-#: Project.cpp:1482
-#: TrackPanel.cpp:804
+#: Project.cpp:1689
+#: TrackPanel.cpp:840
msgid "Recorded Audio"
msgstr "Audio enregistré"
-#: Project.cpp:1500
+#: Project.cpp:1707
msgid "Save changes before closing?"
msgstr "Enregistrer les modifications avant de quitter ?"
-#: Project.cpp:1503
-msgid "\n"
+#: Project.cpp:1710
+msgid ""
+"\n"
"If saved, the project will have no tracks.\n"
"\n"
"To save any previously open tracks:\n"
"Cancel, Edit > Undo until all tracks\n"
"are open, then File > Save Project."
-msgstr "\n"
+msgstr ""
+"\n"
"En cas d'enregistrement, le projet n'aura pas de piste.\n"
"\n"
"Pour enregistrer toute piste précédemment ouverte :\n"
"Annuler, Edition > Annuler, jusqu'Ã ce que toutes les pistes\n"
"soient ouverte, puis Fichier > Enregistrer le projet."
-#: Project.cpp:1506
+#: Project.cpp:1713
msgid "Save changes?"
msgstr "Enregistrer les modifications ?"
-#: Project.cpp:1694
-msgid "All files|*.*|All supported files|"
-msgstr "Tous fichiers|*.*|Tous les fichiers supportés|"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
+msgstr "Tous fichiers|*|Tous fichiers supportés|"
-#: Project.cpp:1719
+#: Project.cpp:1955
msgid "Select one or more audio files..."
msgstr "Choisir un ou plusieurs fichiers audio..."
-#: Project.cpp:1746
+#: Project.cpp:1982
msgid "Audacity projects|*.aup|"
-msgstr "Projets Audacity (*.aup)|*.aup|"
+msgstr "Projets Audacity (*.aup)|*.aup"
-#: Project.cpp:1799
-#: Project.cpp:2186
+#: Project.cpp:2042
+#: Project.cpp:2477
#, c-format
-msgid "This file was saved by Audacity %s, a much\n"
+msgid ""
+"This file was saved by Audacity %s, a much\n"
"older version. The format has changed.\n"
"\n"
"Audacity could corrupt the file in opening\n"
"it, so you must back it up first.\n"
"\n"
"Open this file now?"
-msgstr "Ce fichier a été enregistré par Audacity %s,\n"
+msgstr ""
+"Ce fichier a été enregistré par Audacity %s,\n"
"une très vieille version. Le format a changé.\n"
"\n"
"Audacity peut corrompre le fichier en l'ouvrant,\n"
@@ -2994,88 +3104,116 @@ msgstr "Ce fichier a été enregistré par Audacity %s,\n"
"\n"
"Ouvrir le fichier immédiatement ?"
-#: Project.cpp:1800
+#: Project.cpp:2043
msgid "1.0 or earlier"
msgstr "1.0 ou précédentes"
-#: Project.cpp:1806
-#: Project.cpp:2198
+#: Project.cpp:2049
+#: Project.cpp:2489
msgid "Opening old project file"
msgstr "Ouverture d'ancien fichier de projet"
-#: Project.cpp:1832
-#: Project.cpp:1840
+#: Project.cpp:2073
+msgid ""
+"You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+"Vous essayez d'ouvrir un fichier de sauvergarde créé automatiquement.\n"
+"Le faire peut causer ddes pertes sévères de données.\n"
+"\n"
+"Ouvrez plutôt le projet Audacity actuel."
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr "Fichier de sauvegarde détecté"
+
+#: Project.cpp:2088
+#: Project.cpp:2096
+#: xml/XMLWriter.cpp:306
msgid "Error opening file"
msgstr "Erreur d'ouverture de fichier"
-#: Project.cpp:1846
+#: Project.cpp:2102
#, c-format
-msgid "File may be invalid or corrupted: \n"
+msgid ""
+"File may be invalid or corrupted: \n"
"%s"
-msgstr "Le fichier est peut-être invalide ou corrompu: \n"
+msgstr ""
+"Le fichier est peut-être invalide ou corrompu: \n"
"%s"
-#: Project.cpp:1847
+#: Project.cpp:2103
msgid "Error opening file or project"
msgstr "Erreur d'ouverture de fichier ou de projet"
-#: Project.cpp:1867
+#: Project.cpp:2123
msgid "Audacity was unable to convert an Audacity 1.0 project to the new project format."
msgstr "Audacity ne peut pas convertir un projet Audacity 1.0 au nouveau format de projet."
-#: Project.cpp:1970
+#: Project.cpp:2230
msgid "Could not remove old auto save file"
msgstr "Impossible de retirer l'ancien fichier de sauvegarde automatique"
-#: Project.cpp:1972
+#: Project.cpp:2232
msgid "Project was recovered"
msgstr "Le projet a été récupéré"
-#: Project.cpp:1972
+#: Project.cpp:2232
msgid "Recover"
msgstr "Récupérer"
-#: Project.cpp:2001
+#: Project.cpp:2261
msgid "Project checker repaired file"
msgstr "Le vérificateur de fichier a réparé le fichier"
-#: Project.cpp:2001
+#: Project.cpp:2261
#: effects/Repair.h:29
msgid "Repair"
msgstr "Réparer"
-#: Project.cpp:2112
+#: Project.cpp:2402
#, c-format
msgid "Couldn't find the project data folder: \"%s\""
msgstr "Impossible de trouver le répertoire de données du projet : \"%s\""
-#: Project.cpp:2155
+#: Project.cpp:2446
#, c-format
-msgid "This file was saved using Audacity %s.\n"
+msgid ""
+"This file was saved using Audacity %s.\n"
"You are using Audacity %s - you need to upgrade to\n"
"a newer version to open this file."
-msgstr "Ce fichier a été enregistré avec Audacity %s.\n"
+msgstr ""
+"Ce fichier a été enregistré avec Audacity %s.\n"
"Vous utilisez Audacity %s - vous devez mettre votre version\n"
"Ã jour pour ouvrir ce fichier."
-#: Project.cpp:2159
+#: Project.cpp:2450
msgid "Can't open project file"
msgstr "Impossible d'ouvrir le fichier projet"
# n
-#: Project.cpp:2193
+#: Project.cpp:2484
#, c-format
-msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+msgid ""
+"This file was saved by Audacity %s.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
-msgstr "Ce fichier a été enregistré par Audacity %s.\n"
-"Vous pouvez l'ouvrir avec cette version d'Audacity, mais si vous l'enregistrez avec, vous ne pourrez plus l'ouvrir dans l'ancienne version.\n"
+msgstr ""
+"Ce fichier a été enregistré par Audacity %s,\n"
"\n"
-"Ouvrir le fichier immédiatement ?"
+"Audacity peut ouvrir ce fichier et le sauvegarder, mais l'enregistrer avec cette version\n"
+"vous empêchera de l'ouvrir dans une version 1.2 ou plus ancienne.\n"
+"\n"
+"Ouvrir le fichier maintenant ?"
-#: Project.cpp:2537
-msgid "Your project is now empty.\n"
+#: Project.cpp:2682
+msgid ""
+"Your project is now empty.\n"
"If saved, the project will have no tracks.\n"
"\n"
"To save any previously open tracks:\n"
@@ -3084,55 +3222,70 @@ msgid "Your project is now empty.\n"
"\n"
"Save anyway?"
msgstr ""
+"Votre projet n'est pas vide.\n"
+"En cas d'enregistrement, le projet n'aura pas de piste.\n"
+"\n"
+"Pour enregistrer toute piste précédemment ouverte :\n"
+"Annuler, Edition > Annuler, jusqu'Ã ce que toutes les pistes\n"
+"soient ouverte, puis Fichier > Enregistrer le projet.\n"
+"\n"
+"Enregistrer malgré tout ?"
-#: Project.cpp:2538
+#: Project.cpp:2683
msgid "Warning empty project"
-msgstr ""
+msgstr "Attention, projet vide"
-#: Project.cpp:2647
+#: Project.cpp:2792
#, c-format
-msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+msgid ""
+"Could not save project. Perhaps %s \n"
+"is not writable or the disk is full."
msgstr ""
+"Impossible de sauver le projet. %s est peut-être\n"
+"protégé en écriture, ou le disque est plein."
-#: Project.cpp:2428
-#: Project.cpp:2442
+#: Project.cpp:2794
+#: Project.cpp:2820
msgid "Error saving project"
msgstr "Erreur d'enregistrement du projet"
-#: Project.cpp:2504
+#: Project.cpp:2818
+#: Project.cpp:3919
+#: Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr "Impossible d'enregistrer le fichier \"%s\": %s"
+
+#: Project.cpp:2898
#, c-format
msgid "Saved %s"
msgstr " %s enregistré"
-#: Project.cpp:2586
+#: Project.cpp:3051
#, c-format
msgid "Imported '%s'"
msgstr " '%s' importé"
-#: Menus.cpp:3649
-#: Project.cpp:2587
-#: Project.cpp:2612
-#: import/ImportPCM.cpp:440
-#: import/ImportPCM.cpp:484
+#: Project.cpp:3052
msgid "Import"
-msgstr "Importer"
+msgstr "Importer "
-#: Project.cpp:2639
-#: Project.cpp:2647
+#: Project.cpp:3087
msgid "Error importing"
msgstr "Erreur d'importation"
-#: Project.cpp:2681
+#: Project.cpp:3134
msgid "Save Speech As:"
msgstr "Enregistrer Speech sous :"
-#: Project.cpp:2683
+#: Project.cpp:3136
msgid "Windows PCM Audio file (*.wav)|*.wav"
msgstr "Fichier audio Windows PCM *.wav)|*.wav"
-#: Project.cpp:2938
-msgid "Audacity compressed project files (.aup) save your work in a smaller, compressed (.ogg) format. \n"
+#: Project.cpp:3143
+msgid ""
+"Audacity compressed project files (.aup) save your work in a smaller, compressed (.ogg) format. \n"
"Compressed project files are a good way to transmit your project online, because they are much smaller. \n"
"To open a compressed project takes longer than usual, as it imports each compressed track. \n"
"\n"
@@ -3140,161 +3293,362 @@ msgid "Audacity compressed project files (.aup) save your work in a smaller, com
"When you want to save a file that can be opened by other programs, select one of the\n"
"Export commands."
msgstr ""
+"Les fichiers de projets compressés Audacity (.aup) enregistrent votre travail dans un format compressé (.ogg).\n"
+"Les fichiers de projets compressés sont un bon moyen de transmettre vos projets, car ils sont bien plus réduits.\n"
+"L'ouverture d'un projet compressé prend plus de temps, puisqu'il importe chaque piste compressée.\n"
+"\n"
+"La plupart des autres programmes ne peuvent ouvrir des fichiers de projet Audacity.\n"
+"Si vous voulez enregister un fichier pouvant être ouvert par d'autres programmes, sélectionnez\n"
+"une des commandes d'exportation."
-#: Project.cpp:2941
-msgid "You are saving an Audacity project file (.aup).\n"
+#: Project.cpp:3146
+msgid ""
+"You are saving an Audacity project file (.aup).\n"
"\n"
"Saving a project creates a file that only Audacity can open.\n"
"\n"
"To save an audio file for other programs, use one of the \"File > Export\" commands.\n"
msgstr ""
+"Vous sauvegardez un projet Audacity (.aup).\n"
+"\n"
+"La sauvegarde d'un projet crée des fichiers utilisables seulement par Audacity.\n"
+"\n"
+"Pour enregistrer un fichier audio utilisable avec d'autres programmes, utiliser une des commandes \"Fichier > Exporter\".\n"
-#: Project.cpp:2692
+#: Project.cpp:3150
msgid "Audacity projects (*.aup)|*.aup"
msgstr "Projets Audacity (*.aup)|*.aup"
-#: Project.cpp:2736
+#: Project.cpp:3199
msgid "Created new project"
msgstr "Nouveau projet créé"
-#: Project.cpp:2856
+#: Project.cpp:3341
#, c-format
msgid "Deleted %.2f seconds at t=%.2f"
msgstr "Effacé de %.2f secondes à t=%.2f"
-#: Project.cpp:2859
-#: effects/Equalization.cpp:1262
-#: effects/Equalization.cpp:2593
+#: Project.cpp:3344
+#: effects/Equalization.cpp:1298
+#: effects/Equalization.cpp:2648
msgid "Delete"
msgstr "Effacer"
-#: Project.cpp:3052
+#: Project.cpp:3538
#, c-format
msgid "Disk space remains for recording %d hours and %d minutes."
-msgstr "Espace disque restant pour l'enregistrement de %d heures et %d minutes."
+msgstr "Espace disque restant pour l'enregistrement : %d heures et %d minutes"
-#: Project.cpp:3055
+#: Project.cpp:3541
#, c-format
msgid "Disk space remains for recording 1 hour and %d minutes."
-msgstr "Espace disque restant pour l'enregistrement d'une 1 heure et %d minutes."
+msgstr "Espace disque restant pour l'enregistrement : 1 heure et %d minutes"
-#: Project.cpp:3058
+#: Project.cpp:3544
#, c-format
msgid "Disk space remains for recording %d minutes."
msgstr "L'espace disque restant permet l'enregistrement de %d minutes."
-#: Project.cpp:3061
+#: Project.cpp:3547
#, c-format
msgid "Disk space remains for recording %d seconds."
msgstr "L'espace disque restant permet l'enregistrement de %d seconds."
-#: Project.cpp:3064
+#: Project.cpp:3550
msgid "Out of disk space"
msgstr "Disque plein"
-#: Project.cpp:3380
+#: Project.cpp:3563
#, c-format
msgid "Import(s) complete. Running %d on-demand waveform calculations. Overall %2.0f%% complete."
-msgstr ""
+msgstr "Import(s) achevé(s). Exécution des calculs de forme d'onde %d à la demande.%2.0f%% achevé cependant."
-#: Project.cpp:3383
+#: Project.cpp:3566
#, c-format
msgid "Import complete. Running an on-demand waveform calculation. %2.0f%% complete."
-msgstr ""
+msgstr "Import achevé. Exécution d'un calcul de forme d'onde à la demande. %2.0f%% achevé."
-#: Project.cpp:3342
+#: Project.cpp:3850
msgid "Could not remove old autosave file: "
-msgstr "Impossible de supprimer l'ancien fichier de sauvegarde automatique :"
+msgstr "Impossible de retirer l'ancien fichier de sauvegarde automatique :"
-#: Project.cpp:3383
+#: Project.cpp:3891
msgid "New Project"
msgstr "Nouveau projet"
-#: Project.cpp:3396
+#: Project.cpp:3921
msgid "Error writing autosave file"
msgstr "Erreur d'écriture de fichier de sauvegarde automatique"
-#: Project.cpp:3421
+#: Project.cpp:3936
msgid "Could not create autosave file: "
msgstr "Impossible d'enregistrer le fichier de sauvegarde automatique :"
-#: Project.cpp:3447
+#: Project.cpp:3962
#, c-format
msgid "Actual Rate: %d"
msgstr "Taux actuel : %d"
-#: Resample.cpp:42
+#: Resample.cpp:62
msgid "Libresample by Dominic Mazzoni and Julius Smith"
msgstr "Libresample par Dominic Mazzoni et Julius Smith"
-#: Resample.cpp:53
+#: Resample.cpp:73
msgid "High-quality Sinc Interpolation"
msgstr "Interpolation de haute qualité"
-#: Resample.cpp:55
+#: Resample.cpp:75
msgid "Fast Sinc Interpolation"
msgstr "Interpolation rapide"
-#: Resample.cpp:125
+#: Resample.cpp:141
msgid "Libsamplerate by Erik de Castro Lopo"
msgstr "LibsampleRate, d'Erik de Castro Lopo"
-#: Resample.cpp:218
+#: Resample.cpp:230
#, c-format
msgid "Libsamplerate error: %d\n"
msgstr "Erreur LibSampleRate : %d\n"
-#: Resample.cpp:240
-#: Resample.cpp:250
+#: Resample.cpp:252
+#: Resample.cpp:262
msgid "Resampling disabled."
msgstr "Rééchantillonnage désactivé."
-#. i18n-hint: Audio data bit depth (precison): 16-bit integers
+#. i18n-hint: Audio data bit depth (precision): 16-bit integers
#: SampleFormat.cpp:66
msgid "16-bit PCM"
msgstr "16 bits PCM"
-#. i18n-hint: Audio data bit depth (precison): 24-bit integers
+#. i18n-hint: Audio data bit depth (precision): 24-bit integers
#: SampleFormat.cpp:69
msgid "24-bit PCM"
msgstr "24 bits PCM"
-#. i18n-hint: Audio data bit depth (precison): 32-bit floating point
+#. i18n-hint: Audio data bit depth (precision): 32-bit floating point
#: SampleFormat.cpp:72
msgid "32-bit float"
msgstr "32 bits flottant"
-#: Screenshot.cpp:384
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr "Outil de capture d'écran"
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr "Choisir un emplacement pour enregistrer les fichiers"
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr "Enregistrer les images dans :"
+
+#: Screenshot.cpp:328
+#: export/ExportMultiple.cpp:242
+#: prefs/DirectoriesPrefs.cpp:94
+msgid "Choose..."
+msgstr "Choisir..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr "Capturer entièrement la fenêtre ou l'écran"
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr "Réduire en petite fenêtre"
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr "Réduire en grande fenêtre"
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr "Fond bleu"
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr "Fond blanc"
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr "Capturer la fenêtre de travail"
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr "Capturer la fenêtre complète"
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr "Capturer au-delà de la fenêtre"
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr "Capturer tout l'écran"
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr "Attendre 5 secondes et capturer également menu/boîte de dialogue"
+
+#: Screenshot.cpp:369
+#: effects/Normalize.cpp:74
+#: effects/Normalize.cpp:75
+msgid "false"
+msgstr "faux"
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr "Capturer une partie de la fenêtre de projet"
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr "Toutes les barres d'outils"
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr "Barre de sélection"
+
+#: Screenshot.cpp:381
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr "Outils"
+
+#: Screenshot.cpp:382
+#: effects/Contrast.cpp:410
+#: toolbars/ControlToolBar.cpp:83
+#: toolbars/ControlToolBar.cpp:243
+msgid "Control"
+msgstr "Contrôle"
+
+#: Screenshot.cpp:388
+#: effects/LoadEffects.cpp:114
+#: toolbars/MixerToolBar.cpp:59
+#: toolbars/MixerToolBar.cpp:240
+msgid "Mixer"
+msgstr "Mixage"
+
+#: Screenshot.cpp:389
+#: toolbars/MeterToolBar.cpp:50
+#: toolbars/MeterToolBar.cpp:114
+msgid "Meter"
+msgstr "VU-mètre"
+
+#: Screenshot.cpp:390
+#: toolbars/EditToolBar.cpp:76
+#: toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr "Edition"
+
+#: Screenshot.cpp:391
+#: prefs/DevicePrefs.cpp:133
+#: prefs/DevicePrefs.cpp:146
+#: prefs/MidiIOPrefs.cpp:118
+#: prefs/MidiIOPrefs.cpp:132
+#: toolbars/DeviceToolBar.cpp:57
+#: toolbars/DeviceToolBar.cpp:196
+msgid "Device"
+msgstr "Périphérique"
+
+#: Screenshot.cpp:392
+#: toolbars/TranscriptionToolBar.cpp:84
+#: toolbars/TranscriptionToolBar.cpp:252
+msgid "Transcription"
+msgstr "Lecture variable"
+
+#: Screenshot.cpp:398
+#: TrackPanel.cpp:443
+#: TrackPanel.cpp:444
+msgid "Track Panel"
+msgstr "Panneau de piste"
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr "Règle"
+
+#: Screenshot.cpp:400
+#: export/ExportMultiple.cpp:285
+#: export/ExportMultiple.cpp:287
+#: prefs/TracksPrefs.cpp:31
+msgid "Tracks"
+msgstr "Pistes"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr "Première piste"
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr "Seconde piste "
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr "Echelle"
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr "Une sec."
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr "Dix sec."
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr "Une min."
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr "Cinq min."
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr "Une heure"
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr "Pistes réduites"
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr "Pistes normales"
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr "Pistes pleine largeur"
+
+#: Screenshot.cpp:599
msgid "Saved "
msgstr "Enregistré"
-#: Screenshot.cpp:387
+#: Screenshot.cpp:602
msgid "Error trying to save file: "
msgstr "Erreur à l'enregistrement du fichier :"
-#: Sequence.cpp:732
-#: Sequence.cpp:742
-#: Sequence.cpp:749
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr "Choisir un emplacement pour enregistrer les copies d'écran"
+
+#: Sequence.cpp:799
+#: Sequence.cpp:809
+#: Sequence.cpp:816
msgid "Gap detected in project file\n"
msgstr "Des manques ont été découverts dans le fichier projet\n"
-#: ShuttleGui.cpp:1852
-#: effects/Effect.cpp:342
-#: effects/audiounits/AudioUnitEffect.cpp:872
+#: ShuttleGui.cpp:2034
+#: effects/Effect.cpp:458
+#: effects/audiounits/AudioUnitEffect.cpp:851
msgid "Pre&view"
msgstr "Pré&visualisation"
-#: ShuttleGui.cpp:1859
+#: ShuttleGui.cpp:2041
msgid "&Debug"
msgstr "&Débogage"
#: SoundActivatedRecord.cpp:36
msgid "Sound Activated Record"
-msgstr ""
+msgstr "Enregistrement automatique"
#: SoundActivatedRecord.cpp:58
msgid "Activation level (dB):"
-msgstr ""
+msgstr "Niveau d'activation (dB) :"
#: SplashDialog.cpp:60
msgid "&Welcome to Audacity!"
@@ -3321,716 +3675,723 @@ msgid "Track Number"
msgstr "Numéro de piste"
#: Tags.cpp:633
-#: Tags.cpp:2138
msgid "Year"
-msgstr "Année"
+msgstr "Année :"
#: Tags.cpp:634
msgid "Genre"
msgstr "Genre "
#: Tags.cpp:635
-#: Tags.cpp:2148
-#: prefs/MousePrefs.cpp:96
+#: prefs/MousePrefs.cpp:100
msgid "Comments"
msgstr "Commentaires "
-#: Tags.cpp:777
+#: Tags.cpp:788
msgid "Use arrow keys (or RETURN key after editing) to navigate fields."
-msgstr ""
+msgstr "Utiliser les flèches(ou la touche ENTRÃE après la frappe) pour passer d'un champ à l'autre."
-#: Tags.cpp:802
+#: Tags.cpp:812
msgid "Tag Name"
-msgstr "Nom du Tag"
+msgstr "Nom du tag"
-#: Tags.cpp:803
+#: Tags.cpp:813
msgid "Tag Value"
msgstr "Valeur de tag"
-#: Tags.cpp:818
-#: Tags.cpp:1476
-#: prefs/KeyConfigPrefs.cpp:116
+#: Tags.cpp:828
+#: prefs/KeyConfigPrefs.cpp:145
+#: widgets/FileHistory.cpp:174
msgid "&Clear"
-msgstr "Effa&cer"
+msgstr "Effacer"
-#: Tags.cpp:824
+#: Tags.cpp:834
msgid "Genres"
msgstr "Genres"
-#: Tags.cpp:826
+#: Tags.cpp:838
msgid "E&dit..."
-msgstr ""
+msgstr "E&diter..."
-#: Tags.cpp:827
+#: Tags.cpp:839
msgid "Rese&t..."
-msgstr ""
+msgstr "Réini&tialiser..."
-#: Tags.cpp:834
-#: Tags.cpp:1460
-#: Tags.cpp:1988
+#: Tags.cpp:844
msgid "Template"
msgstr "Modèle"
-#: Tags.cpp:838
-#: Tags.cpp:1464
-#: Tags.cpp:1992
-#: prefs/KeyConfigPrefs.cpp:126
+#: Tags.cpp:848
+#: prefs/KeyConfigPrefs.cpp:155
msgid "&Load..."
msgstr "Charger..."
-#: Tags.cpp:839
-#: Tags.cpp:1465
-#: Tags.cpp:1993
-#: prefs/KeyConfigPrefs.cpp:125
+#: Tags.cpp:849
+#: prefs/KeyConfigPrefs.cpp:156
msgid "&Save..."
msgstr "Enregi&strer.."
-#: Tags.cpp:841
-#: Tags.cpp:1467
-#: Tags.cpp:1995
+#: Tags.cpp:851
msgid "S&et Default"
msgstr "Réglag&es par défaut"
-#: Tags.cpp:991
-#: Tags.cpp:1630
-#: Tags.cpp:2359
+#: Tags.cpp:1001
msgid "Edit Genres"
msgstr "Editer les genres"
-#: Tags.cpp:1024
-#: Tags.cpp:1036
-#: Tags.cpp:1052
-#: Tags.cpp:1065
-#: Tags.cpp:1668
-#: Tags.cpp:1680
-#: Tags.cpp:1696
-#: Tags.cpp:1709
-#: Tags.cpp:2402
-#: Tags.cpp:2414
-#: Tags.cpp:2430
-#: Tags.cpp:2443
+#: Tags.cpp:1034
+#: Tags.cpp:1046
+#: Tags.cpp:1061
+#: Tags.cpp:1074
msgid "Reset Genres"
msgstr "Rétablir les genres"
-#: Tags.cpp:1024
-#: Tags.cpp:1065
-#: Tags.cpp:1668
-#: Tags.cpp:1709
-#: Tags.cpp:2402
-#: Tags.cpp:2443
+#: Tags.cpp:1034
+#: Tags.cpp:1074
msgid "Unable to save genre file."
-msgstr "Impossible d'enregistrer le fichier de genre."
+msgstr "Impossible d'enregistrer le fichier de genre"
-#: Tags.cpp:1035
-#: Tags.cpp:1679
-#: Tags.cpp:2413
+#: Tags.cpp:1045
msgid "Are you sure you want to reset the genre list to defaults?"
msgstr "Etes-vous sûr(e) de remettre à zéro la liste de genre ? "
-#: Tags.cpp:1052
-#: Tags.cpp:1696
-#: Tags.cpp:2430
+#: Tags.cpp:1061
msgid "Unable to open genre file."
msgstr "Impossible d'ouvrir le fichier de genre."
-#: Tags.cpp:1084
+#: Tags.cpp:1096
msgid "Load Metadata As:"
-msgstr ""
+msgstr "Charger les métadonnées comme :"
-#: Tags.cpp:1112
-#: Tags.cpp:1763
-#: Tags.cpp:2486
+#: Tags.cpp:1121
msgid "Error loading metadata"
msgstr "Erreur de chargement des métadonnées"
-#: Tags.cpp:1087
-#: Tags.cpp:1141
-#: Tags.cpp:1742
-#: Tags.cpp:1778
-#: Tags.cpp:2465
-#: Tags.cpp:2501
+#: Tags.cpp:1150
msgid "Save Metadata As:"
msgstr "Enregistrer les métadonnées sous :"
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr "Erreur à l'enregistrement de fichiers tags"
+
#: Theme.cpp:638
#, c-format
-msgid "Audacity could not write file:\n"
+msgid ""
+"Audacity could not write file:\n"
" %s."
-msgstr "Audacity n'arrive pas à écrire le fichier :\n"
+msgstr ""
+"Audacity n'arrive pas à écrire le fichier :\n"
" %s."
#: Theme.cpp:656
#, c-format
-msgid "Audacity could not open file:\n"
+msgid ""
+"Audacity could not open file:\n"
" %s\n"
"for writing."
-msgstr "Audacity ne peut ouvrir le fichier :\n"
+msgstr ""
+"Audacity ne peut ouvrir le fichier :\n"
" %s\n"
"en écriture."
#: Theme.cpp:664
#, c-format
-msgid "Audacity could not write images to file:\n"
+msgid ""
+"Audacity could not write images to file:\n"
" %s."
-msgstr "Audacity n'arrive pas à enregistrer les images dans le fichier :\n"
+msgstr ""
+"Audacity n'arrive pas à enregistrer les images dans le fichier :\n"
" %s."
#: Theme.cpp:799
#, c-format
-msgid "Audacity could not find file:\n"
+msgid ""
+"Audacity could not find file:\n"
" %s.\n"
"Theme not loaded."
-msgstr "Audacity ne peut trouver le fichier :\n"
+msgstr ""
+"Audacity ne peut trouver le fichier :\n"
" %s.\n"
"Le thème n'est pas chargé."
#: Theme.cpp:807
#: Theme.cpp:896
#, c-format
-msgid "Audacity could not load file:\n"
+msgid ""
+"Audacity could not load file:\n"
" %s.\n"
"Bad png format perhaps?"
-msgstr "Audacity ne peut charger le fichier :\n"
+msgstr ""
+"Audacity ne peut charger le fichier :\n"
" %s.\n"
"Peut-être un mauvais format png ?"
#: Theme.cpp:823
-msgid "Audacity could not read its default theme.\n"
+msgid ""
+"Audacity could not read its default theme.\n"
"Please report the problem."
-msgstr "Audacity ne peut lire son thème par défaut.\n"
+msgstr ""
+"Audacity ne peut lire son thème par défaut.\n"
"Merci de rapporter le problème."
#: Theme.cpp:918
#, c-format
-msgid "None of the expected theme component files\n"
+msgid ""
+"None of the expected theme component files\n"
" were found in:\n"
" %s."
-msgstr "Aucun des fichiers composant le thème attendu\n"
+msgstr ""
+"Aucun des fichiers composant le thème attendu\n"
"n'a été trouvé dans :\n"
" %s."
#: Theme.cpp:942
#: effects/NoiseRemoval.cpp:173
#, c-format
-msgid "Could not create directory:\n"
+msgid ""
+"Could not create directory:\n"
" %s"
-msgstr "Impossible de créer le répertoire :\n"
+msgstr ""
+"Impossible de créer le répertoire :\n"
" %s"
#: Theme.cpp:963
#, c-format
-msgid "Audacity could not save file:\n"
+msgid ""
+"Audacity could not save file:\n"
" %s"
-msgstr "Audacity n'arrive pas à enregistrer le fichier :\n"
+msgstr ""
+"Audacity n'arrive pas à enregistrer le fichier :\n"
" %s."
#: Theme.cpp:975
#, c-format
-msgid "All required files in:\n"
+msgid ""
+"All required files in:\n"
" %s\n"
"were already present."
-msgstr "Tous les fichiers requis dans :\n"
+msgstr ""
+"Tous les fichiers requis dans :\n"
" %s\n"
-"sont déjà présents."
+"sont désormais présents."
-#: SmartRecordDialog.cpp:226
-#: SmartRecordDialog.cpp:307
#: TimeDialog.cpp:53
-#: effects/Noise.cpp:235
-#: effects/ToneGen.cpp:329
-#: effects/ToneGen.cpp:374
+#: TimeDialog.cpp:64
+#: TimerRecordDialog.cpp:236
+#: TimerRecordDialog.cpp:367
+#: TimerRecordDialog.cpp:371
+#: effects/DtmfGen.cpp:446
+#: effects/Noise.cpp:191
+#: effects/Noise.cpp:207
+#: effects/ToneGen.cpp:279
+#: effects/ToneGen.cpp:291
+#: effects/ToneGen.cpp:323
+#: effects/ToneGen.cpp:335
msgid "Duration"
msgstr "Durée"
-#: SmartRecordDialog.cpp:68
+#: TimerRecordDialog.cpp:69
msgid "Audacity Timer Record"
msgstr "Enregistrement programmé d'Audacity"
-#: SmartRecordDialog.cpp:223
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr "La durée est à zéro. Rien ne sera enregistré."
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr "Erreur de durée"
+
+#: TimerRecordDialog.cpp:233
msgid "Recording start"
msgstr "Début de l'enregistrement"
-#: SmartRecordDialog.cpp:224
+#: TimerRecordDialog.cpp:234
msgid "Recording end"
msgstr "Fin de l'enregistrement"
-#: TimerRecordDialog.cpp:231
+#: TimerRecordDialog.cpp:239
msgid "Audacity Timer Record Progress"
-msgstr ""
+msgstr "Progression de l'enregistrement programmé d'Audacity"
-#: SmartRecordDialog.cpp:273
+#: TimerRecordDialog.cpp:329
msgid "Start Date and Time"
msgstr "Date et heure de début"
-#: TimerRecordDialog.cpp:324
+#: TimerRecordDialog.cpp:336
msgid "Start Date"
-msgstr ""
+msgstr "Date de début"
-#: SmartRecordDialog.cpp:290
+#: TimerRecordDialog.cpp:348
msgid "End Date and Time"
msgstr "Date et heure de fin"
-#: TimerRecordDialog.cpp:344
+#: TimerRecordDialog.cpp:356
msgid "End Date"
-msgstr ""
+msgstr "Date de fin"
#. i18n-hint: A time specification like "Sunday 28th October 2007 15:16:17 GMT"
-#: SmartRecordDialog.cpp:383
+#. * but hopefully translated by wxwidgets will be inserted into this
+#: TimerRecordDialog.cpp:443
#, c-format
msgid "Waiting to start recording at %s.\n"
msgstr "En attente de démarrage d'enregistrement à %s.\n"
-#: TimerRecordDialog.cpp:432
+#: TimerRecordDialog.cpp:444
msgid "Audacity Timer Record - Waiting for Start"
-msgstr ""
+msgstr "Enregistrement programmé d'Audacity - en attente de démarrage"
-#: TrackPanel.cpp:464
-#: TrackPanel.cpp:465
-msgid "Track Panel"
-msgstr "Panneau de piste"
-
-#: TrackPanel.cpp:548
-#: export/ExportPCM.cpp:133
-#: prefs/QualityPrefs.cpp:97
+#: TrackPanel.cpp:597
+#: prefs/QualityPrefs.cpp:99
msgid "Other..."
msgstr "Autre..."
-#: TrackPanel.cpp:556
-#: TrackPanel.cpp:580
-#: TrackPanel.cpp:589
-#: TrackPanel.cpp:597
+#: TrackPanel.cpp:605
+#: TrackPanel.cpp:628
+#: TrackPanel.cpp:637
+#: TrackPanel.cpp:645
msgid "Name..."
msgstr "Nom..."
-#: TrackPanel.cpp:558
-#: TrackPanel.cpp:582
-#: TrackPanel.cpp:593
-#: TrackPanel.cpp:599
+#: TrackPanel.cpp:607
+#: TrackPanel.cpp:630
+#: TrackPanel.cpp:641
+#: TrackPanel.cpp:647
msgid "Move Track Up"
msgstr "Déplacer la piste vers le haut"
-#: TrackPanel.cpp:559
-#: TrackPanel.cpp:583
-#: TrackPanel.cpp:594
-#: TrackPanel.cpp:600
+#: TrackPanel.cpp:608
+#: TrackPanel.cpp:631
+#: TrackPanel.cpp:642
+#: TrackPanel.cpp:648
msgid "Move Track Down"
msgstr "Déplacer la piste vers le bas"
-#: TrackPanel.cpp:561
-#: effects/ToneGen.cpp:325
+#: TrackPanel.cpp:610
+#: effects/ToneGen.cpp:275
+#: prefs/TracksPrefs.cpp:56
msgid "Waveform"
msgstr "Forme d'onde"
-#: TrackPanel.cpp:562
+#: TrackPanel.cpp:611
+#: prefs/TracksPrefs.cpp:57
msgid "Waveform (dB)"
msgstr "Forme d'onde (dB)"
-#: TrackPanel.cpp:565
+#: TrackPanel.cpp:613
+#: prefs/TracksPrefs.cpp:59
msgid "Spectrum log(f)"
-msgstr "Journal de spectre(f)"
+msgstr "Spectre logarithmique décimal"
-#: TrackPanel.cpp:567
+#. i18n-hint: short form of 'logarithm'
+#: TrackPanel.cpp:614
+#: prefs/TracksPrefs.cpp:60
msgid "Pitch (EAC)"
msgstr "Hauteur (EAC)"
-#: TrackPanel.cpp:569
-#: TrackPanel.cpp:6091
+#: TrackPanel.cpp:616
+#: TrackPanel.cpp:6198
msgid "Mono"
msgstr "Mono"
-#: TrackPanel.cpp:570
-#: TrackPanel.cpp:6090
+#: TrackPanel.cpp:617
+#: TrackPanel.cpp:6197
msgid "Left Channel"
msgstr "Canal gauche"
-#: TrackPanel.cpp:571
-#: TrackPanel.cpp:6090
+#: TrackPanel.cpp:618
+#: TrackPanel.cpp:6197
msgid "Right Channel"
msgstr "Canal droit"
-#: TrackPanel.cpp:572
+#: TrackPanel.cpp:619
msgid "Make Stereo Track"
-msgstr "Transformer en piste stéréo"
+msgstr "Joindre en piste stéréo"
-#: TrackPanel.cpp:573
+#: TrackPanel.cpp:620
msgid "Split Stereo Track"
msgstr "Séparer la piste stéréo"
-#: TrackPanel.cpp:575
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr "Séparer stéréo vers mono"
+
+#: TrackPanel.cpp:623
msgid "Set Sample Format"
-msgstr "Choisir un format d'échantillon"
+msgstr "Choisir un format d'échantillonnage"
-#: TrackPanel.cpp:577
-#: TrackPanel.cpp:6320
+#: TrackPanel.cpp:625
+#: TrackPanel.cpp:6459
msgid "Set Rate"
-msgstr "Régler le taux"
+msgstr "Fréquence d'échantillonnage"
-#: TrackPanel.cpp:585
+#: TrackPanel.cpp:633
msgid "Up Octave"
msgstr "Octave supérieure"
-#: TrackPanel.cpp:586
+#: TrackPanel.cpp:634
msgid "Down Octave"
msgstr "Octave inférieure"
-#: TrackPanel.cpp:591
+#: TrackPanel.cpp:639
msgid "Font..."
msgstr "Police..."
-#: TrackPanel.cpp:602
+#: TrackPanel.cpp:650
msgid "Set Range..."
-msgstr "Régler l'étendue..."
+msgstr "Régler l'amplitude..."
-#: TrackPanel.cpp:606
-#: toolbars/EditToolBar.cpp:135
+#: TrackPanel.cpp:654
+#: toolbars/EditToolBar.cpp:132
+#: toolbars/EditToolBar.cpp:191
msgid "Copy"
msgstr "Copier"
-#: TrackPanel.cpp:1272
+#: TrackPanel.cpp:1304
msgid "Click to vertically zoom in, Shift-click to zoom out, Drag to create a particular zoom region."
msgstr "Clic pour zoom vertical, Maj+clic pour zoom arrière, glisser pour ajuster le zoom à une zone"
-#: TrackPanel.cpp:1277
+#: TrackPanel.cpp:1309
msgid "Drag the label vertically to change the order of the tracks."
msgstr "Tirer ce panneau vers le haut ou le bas pour changer l'ordre des pistes."
-#: TrackPanel.cpp:1297
+#: TrackPanel.cpp:1329
msgid "Click and drag to adjust relative size of stereo tracks."
msgstr "Cliquer-glisser pour ajuster la taille relative des pistes stéréo"
-#: TrackPanel.cpp:1300
+#: TrackPanel.cpp:1332
msgid "Click and drag to resize the track."
msgstr "Cliquer-glisser pour redimensionner la piste."
-#: TrackPanel.cpp:1331
+#: TrackPanel.cpp:1363
msgid "Drag one or more label boundaries"
msgstr "Tirer une limite de marqueur ou plus"
-#: TrackPanel.cpp:1332
+#: TrackPanel.cpp:1364
msgid "Drag label boundary"
msgstr "Tirer la limite de marqueur"
#. i18n-hint: This string is for the Mac OS, which uses Command-, as the shortcut for Preferences
-#: TrackPanel.cpp:1348
+#: TrackPanel.cpp:1380
msgid "Multi-Tool Mode: Cmd-, for Mouse and Keyboard Preferences"
msgstr "Mode multi-outils : Cmd-, pour Préférences souris et clavier"
#. i18n-hint: This string is for Windows and Linux, which uses Control-P as the shortcut for Preferences
-#: TrackPanel.cpp:1351
+#: TrackPanel.cpp:1383
msgid "Multi-Tool Mode: Ctrl-P for Mouse and Keyboard Preferences"
msgstr "Mode multi-outils : Ctrl+P pour Préférences souris et clavier"
-#: TrackPanel.cpp:1371
+#: TrackPanel.cpp:1429
msgid "Click and drag to move left selection boundary."
-msgstr "Cliquer-glisser pour déplacer la limite gauche de la sélection."
+msgstr "Cliquer-glisser pour déplacer à gauche les limites de la sélection."
-#: TrackPanel.cpp:1376
+#: TrackPanel.cpp:1434
msgid "Click and drag to move right selection boundary."
-msgstr "Cliquer-glisser pour déplacer la limite droite de la sélection."
-
-#: TrackPanel.cpp:1702
-#: TrackPanel.cpp:3993
-#: TrackPanel.cpp:4025
-#: TrackPanel.cpp:4280
-#: TrackPanel.cpp:6432
-#: TrackPanel.cpp:6452
+msgstr "Cliquer-glisser pour déplacer à droite les limites de la sélection."
+
+#: TrackPanel.cpp:1772
+#: TrackPanel.cpp:4056
+#: TrackPanel.cpp:4088
+#: TrackPanel.cpp:4350
+#: TrackPanel.cpp:6608
+#: TrackPanel.cpp:6628
msgid "Modified Label"
msgstr "Marqueur modifié"
-#: TrackPanel.cpp:1703
-#: TrackPanel.cpp:3994
-#: TrackPanel.cpp:4026
-#: TrackPanel.cpp:4281
-#: TrackPanel.cpp:6433
-#: TrackPanel.cpp:6453
+#: TrackPanel.cpp:1773
+#: TrackPanel.cpp:4057
+#: TrackPanel.cpp:4089
+#: TrackPanel.cpp:4351
+#: TrackPanel.cpp:6609
+#: TrackPanel.cpp:6629
msgid "Label Edit"
msgstr "Edition de marqueur"
-#: TrackPanel.cpp:1930
+#: TrackPanel.cpp:2011
msgid "Adjusted envelope."
msgstr "Enveloppe ajustée."
-#: TrackPanel.cpp:1931
-#: prefs/MousePrefs.cpp:115
+#: TrackPanel.cpp:2012
+#: prefs/MousePrefs.cpp:119
msgid "Envelope"
msgstr "Outil de niveau (enveloppe)"
-#: TrackPanel.cpp:2082
+#: TrackPanel.cpp:2162
msgid "Moved clip to another track"
msgstr "Clip déplacé sur une autre piste"
-#: TrackPanel.cpp:2086
+#: TrackPanel.cpp:2166
msgid "left"
msgstr "gauche"
-#: TrackPanel.cpp:2086
+#: TrackPanel.cpp:2166
msgid "right"
msgstr "droite"
#. i18n-hint: %s is a direction like left or right
-#: TrackPanel.cpp:2088
+#: TrackPanel.cpp:2168
#, c-format
msgid "Time shifted tracks/clips %s %.02f seconds"
msgstr "Décalage des pistes/clips %s %.02f secondes"
-#: TrackPanel.cpp:2092
-#: prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:112
-#: prefs/MousePrefs.cpp:113
+#: TrackPanel.cpp:2172
+#: prefs/MousePrefs.cpp:115
+#: prefs/MousePrefs.cpp:116
+#: prefs/MousePrefs.cpp:117
msgid "Time-Shift"
msgstr "Glissement temporel"
-#: TrackPanel.cpp:2953
+#: TrackPanel.cpp:2966
msgid "To use Draw, choose 'Waveform' in the Track Drop-down Menu."
msgstr "Pour utiliser Dessin, choisir \"Forme d'onde\" dasn le menu déroulant de piste."
-#: TrackPanel.cpp:2970
+#: TrackPanel.cpp:2983
msgid "To use Draw, zoom in further until you can see the individual samples."
msgstr "Pour utiliser Dessin, zoomer jusqu'à distinguer chaque échantillon."
-#: TrackPanel.cpp:3241
+#: TrackPanel.cpp:3257
msgid "Moved Sample"
msgstr "Echantillon déplacé"
-#: TrackPanel.cpp:3242
+#: TrackPanel.cpp:3258
msgid "Sample Edit"
msgstr "Edition d'échantillon"
-#: TrackPanel.cpp:3341
+#: TrackPanel.cpp:3351
#, c-format
msgid "Removed track '%s.'"
msgstr "piste '%s' supprimée"
-#: TrackPanel.cpp:3343
+#: TrackPanel.cpp:3353
msgid "Track Remove"
msgstr "Supprimer la piste"
-#: TrackPanel.cpp:3484
+#: TrackPanel.cpp:3499
msgid "Moved gain slider"
msgstr "Curseur de niveau déplacé"
-#: TrackPanel.cpp:3484
+#: TrackPanel.cpp:3499
msgid "Moved pan slider"
msgstr "Curseur de panoramique déplacé"
#. i18n-hint: Title of the Gain slider, used to adjust the volume
-#: TrackPanel.cpp:3485
-#: TrackPanel.cpp:5726
-#: TrackPanel.cpp:7149
+#: TrackPanel.cpp:3500
+#: TrackPanel.cpp:5802
+#: TrackPanel.cpp:7252
msgid "Gain"
msgstr "Gain"
#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: TrackPanel.cpp:3485
-#: TrackPanel.cpp:5664
-#: TrackPanel.cpp:7156
+#: TrackPanel.cpp:3500
+#: TrackPanel.cpp:5750
+#: TrackPanel.cpp:7260
msgid "Pan"
msgstr "Panoramique"
-#: TrackPanel.cpp:3610
-#: TrackPanel.cpp:6385
-#: effects/ChangePitch.cpp:284
+#: TrackPanel.cpp:3666
+#: TrackPanel.cpp:6559
msgid "up"
msgstr "haut"
-#: TrackPanel.cpp:3614
-#: TrackPanel.cpp:6386
-#: effects/ChangePitch.cpp:284
+#: TrackPanel.cpp:3670
+#: TrackPanel.cpp:6560
msgid "down"
msgstr "bas"
-#: TrackPanel.cpp:3621
-#: TrackPanel.cpp:6381
+#: TrackPanel.cpp:3677
+#: TrackPanel.cpp:6555
#, c-format
msgid "Moved '%s' %s"
msgstr "Déplacé '%s' %s"
-#: TrackPanel.cpp:3624
-#: TrackPanel.cpp:6387
+#: TrackPanel.cpp:3680
+#: TrackPanel.cpp:6561
msgid "Move Track"
msgstr "Déplacer la piste"
-#: TrackPanel.cpp:4180
+#: TrackPanel.cpp:4251
msgid "Expand"
msgstr "Etendre"
-#: TrackPanel.cpp:4180
+#: TrackPanel.cpp:4251
msgid "Expanded Cut Line"
-msgstr ""
+msgstr "Etendre la ligne de coupe"
-#: TrackPanel.cpp:4189
+#: TrackPanel.cpp:4260
msgid "Merge"
msgstr "Mélanger"
-#: TrackPanel.cpp:4189
+#: TrackPanel.cpp:4260
msgid "Merged Clips"
msgstr "Clips mélangés"
-#: TrackPanel.cpp:4201
-#, fuzzy
+#: TrackPanel.cpp:4271
msgid "Removed Cut Line"
-msgstr "Supprimer le bruit"
+msgstr "Supprimer la ligne de coupe"
-#: TrackPanel.cpp:5664
+#: TrackPanel.cpp:5750
msgid "Adjusted Pan"
-msgstr "Panoramique ajusté"
+msgstr "Panoramique ajusté."
-#: TrackPanel.cpp:5726
+#: TrackPanel.cpp:5802
msgid "Adjusted gain"
msgstr "Gain ajusté"
-#: TrackPanel.cpp:5796
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5797
-msgid "Clear any grouping"
-msgstr ""
-
-#: TrackPanel.cpp:5918
+#: TrackPanel.cpp:6028
msgid "Can't delete track with active audio"
msgstr "Impossible d'effacer les pistes avec l'audio actif"
-#: TrackPanel.cpp:6071
+#: TrackPanel.cpp:6178
msgid "Stereo, "
msgstr "Stéréo,"
-#: TrackPanel.cpp:6074
+#: TrackPanel.cpp:6181
msgid "Mono, "
msgstr "Mono,"
-#: TrackPanel.cpp:6076
+#: TrackPanel.cpp:6183
msgid "Left, "
msgstr "Gauche,"
-#: TrackPanel.cpp:6078
+#: TrackPanel.cpp:6185
msgid "Right, "
msgstr "Droit,"
-#: TrackPanel.cpp:6100
-#: TrackPanel.cpp:6225
+#: TrackPanel.cpp:6207
+#: TrackPanel.cpp:6369
#, c-format
msgid "Changed '%s' to %s"
msgstr " '%s' changé en %s"
-#: TrackPanel.cpp:6105
+#: TrackPanel.cpp:6210
msgid "Channel"
msgstr "Canal"
-#: TrackPanel.cpp:6118
+#: TrackPanel.cpp:6251
#, c-format
msgid "Split stereo track '%s'"
msgstr "Séparer la piste stéréo '%s'"
-#: TrackPanel.cpp:6139
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr "Séparer stéréo vers mono '%s'"
+
+#: TrackPanel.cpp:6285
#, c-format
msgid "Made '%s' a stereo track"
msgstr " '%s' transformé en piste stéréo"
-#: TrackPanel.cpp:6142
+#: TrackPanel.cpp:6288
msgid "Make Stereo"
msgstr "Rendre stéréo"
-#: TrackPanel.cpp:6189
+#: TrackPanel.cpp:6333
#, c-format
msgid "Changed '%s' to %d Hz"
msgstr " '%s' changé en %d Hz"
-#: TrackPanel.cpp:6191
+#: TrackPanel.cpp:6335
msgid "Rate Change"
msgstr "Changement de taux"
-#: TrackPanel.cpp:6229
+#: TrackPanel.cpp:6373
msgid "Format Change"
-msgstr "Changement de format"
+msgstr "Format :"
-#: TrackPanel.cpp:6349
+#: TrackPanel.cpp:6523
msgid "Change lower speed limit (%) to:"
msgstr "Passer la vitesse minimale de (%) Ã :"
-#: TrackPanel.cpp:6350
-#: TrackPanel.cpp:6351
+#: TrackPanel.cpp:6524
+#: TrackPanel.cpp:6525
msgid "Lower speed limit"
-msgstr "Limite inférieure de vitesse"
+msgstr "Vitesse limite basse"
-#: TrackPanel.cpp:6356
+#: TrackPanel.cpp:6530
msgid "Change upper speed limit (%) to:"
msgstr "Passer la vitesse maximale de (%) Ã :"
-#: TrackPanel.cpp:6357
-#: TrackPanel.cpp:6358
+#: TrackPanel.cpp:6531
+#: TrackPanel.cpp:6532
msgid "Upper speed limit"
-msgstr "Limite supérieure de vitesse"
+msgstr "Vitesse maximale"
-#: TrackPanel.cpp:6366
+#: TrackPanel.cpp:6540
#, c-format
msgid "Set range to '%d' - '%d'"
-msgstr "Passer la sélection de '%d' à '%d'"
+msgstr "Passer la sélection de '%d' à '%d'"
-#: TrackPanel.cpp:6369
+#: TrackPanel.cpp:6543
msgid "Set Range"
msgstr "Régler l'étendue"
-#: TrackPanel.cpp:6414
+#: TrackPanel.cpp:6590
msgid "Change track name to:"
msgstr "Changer le nom de la piste en :"
-#: TrackPanel.cpp:6415
+#: TrackPanel.cpp:6591
msgid "Track Name"
msgstr "Nom de la piste"
-#: TrackPanel.cpp:6418
+#: TrackPanel.cpp:6594
#, c-format
msgid "Renamed '%s' to '%s'"
msgstr " '%s' renommé en '%s'"
-#: TrackPanel.cpp:6421
+#: TrackPanel.cpp:6597
msgid "Name Change"
-msgstr "Changement de nom"
+msgstr "changement de nom"
-#: TrackPanel.cpp:6487
+#: TrackPanel.cpp:6663
msgid "Label Track Font"
msgstr "Police de la piste de marqueurs"
-#: TrackPanel.cpp:6499
+#: TrackPanel.cpp:6675
+#: TrackPanel.cpp:6681
msgid "Face name"
msgstr "Nom de la police"
-#: TrackPanel.cpp:6508
+#: TrackPanel.cpp:6685
+#: TrackPanel.cpp:6692
msgid "Face size"
msgstr "Taille de police"
-#: TrackPanel.cpp:7076
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr "Stéréo, 999999Hz"
+
+#: TrackPanel.cpp:7201
msgid "Mute"
msgstr "Muet"
-#: TrackPanel.cpp:7076
+#: TrackPanel.cpp:7201
msgid "Solo"
msgstr "Solo"
-#: TrackPanelAx.cpp:265
-#, fuzzy
+#: TrackPanelAx.cpp:273
msgid "TrackView"
-msgstr "Pistes"
+msgstr "Vue de piste"
-#: TrackPanelAx.cpp:273
+#: TrackPanelAx.cpp:281
msgid "Track Accessible out of sync"
msgstr ""
-#: TrackPanelAx.cpp:281
+#: TrackPanelAx.cpp:289
#, c-format
msgid "Track %d"
msgstr "Piste %d"
-#: TrackPanelAx.cpp:287
+#: TrackPanelAx.cpp:295
msgid " Mute On"
msgstr "Rendre muet"
-#: TrackPanelAx.cpp:292
+#: TrackPanelAx.cpp:300
msgid " Solo On"
msgstr "Solo"
-#: TrackPanelAx.cpp:296
+#: TrackPanelAx.cpp:304
msgid " Select On"
msgstr "Sélection"
@@ -4048,211 +4409,223 @@ msgstr "Résultats de la calibration\n"
#: VoiceKey.cpp:844
#, c-format
msgid "Energy -- mean: %1.4f sd: (%1.4f)\n"
-msgstr "Energie -- moyenne : %1.4f ds : (%1.4f)\n"
+msgstr "Energie -- soit: %1.4f sd: (%1.4f)\n"
#: VoiceKey.cpp:845
#, c-format
msgid "Sign Changes -- mean: %1.4f sd: (%1.4f)\n"
-msgstr "Changements de signe -- moyenne : %1.4f ds : (%1.4f)\n"
+msgstr ""
#: VoiceKey.cpp:846
#, c-format
msgid "Direction Changes -- mean: %1.4f sd: (%1.4f)\n"
-msgstr "Changements de direction -- moyenne : %1.4f ds: (%1.4f)\n"
+msgstr ""
-#: WaveTrack.cpp:85
+#: WaveTrack.cpp:84
msgid "Audio Track"
msgstr "Piste audio"
-#: WaveTrack.cpp:555
-#: WaveTrack.cpp:574
+#: WaveTrack.cpp:978
+#: WaveTrack.cpp:997
msgid "There is not enough room available to paste the selection"
msgstr "Il n'y a pas assez de place pour pouvoir coller la sélection."
-#: WaveTrack.cpp:1688
+#: WaveTrack.cpp:2023
msgid "There is not enough room available to expand the cut line"
-msgstr ""
+msgstr "Pas assez de place pour étendre la ligne de coupe"
-#: commands/CommandManager.cpp:448
+#: commands/CommandManager.cpp:545
#, c-format
msgid "Plugins 1 to %i"
msgstr "Modules de 1 Ã %i"
-#: commands/CommandManager.cpp:462
+#: commands/CommandManager.cpp:559
#, c-format
msgid "Plugins %i to %i"
msgstr "Modules de %i à %i"
-#: commands/CommandManager.cpp:857
-#, fuzzy
-msgid "Disallowed for some reason. Try selecting some audio first?"
-msgstr "Non autorisé pour quelque raison. Essayer de sélectionner de l'audio auparavant ?"
+#: commands/CommandManager.cpp:923
+msgid ""
+"There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
+msgstr ""
+"Il y a eu un problème lors de votre dernière action. Si vous pensez\n"
+"que c'est un bogue, merci de de décrire ce qui l'a produit."
-#: commands/CommandManager.cpp:781
-msgid "You can only do this when playing and recording are\n"
+#: commands/CommandManager.cpp:927
+msgid ""
+"You can only do this when playing and recording are\n"
" stopped. [Pausing is not sufficient.]"
-msgstr "Vous ne pouvez faire ceci que si la lecture et l'enregistrement\n"
+msgstr ""
+"Vous ne pouvez faire ceci que si la lecture et l'enregistrement\n"
"sont arrêtés. [Il ne suffit pas de mettre en pause.]"
-#: commands/CommandManager.cpp:783
-msgid "You must first select some stereo audio for this\n"
+#: commands/CommandManager.cpp:929
+msgid ""
+"You must first select some stereo audio for this\n"
" to use. [You can't use this with mono.]"
-msgstr "Vous devez auparavant sélectionner de l'audio stéréo.\n"
+msgstr ""
+"Vous devez auparavant sélectionner de l'audio stéréo.\n"
"[Vous ne pouvez pas utiliser ceci avec du mono.]"
-#: commands/CommandManager.cpp:785
+#: commands/CommandManager.cpp:931
msgid "You must first select some audio for this to use."
msgstr "Pour ceci, sélectionner d'abord de l'audio."
-#: commands/CommandManager.cpp:787
-msgid "You must first select some audio for this\n"
+#: commands/CommandManager.cpp:933
+msgid ""
+"You must first select some audio for this\n"
" to use. [Selecting other kinds of track won't work.]"
-msgstr "Vous devez auparavant sélectionner de l'audio.\n"
-" [Selectionner un autre type de piste ne marchera pas.]"
+msgstr ""
+"Vous devez auparavant sélectionner de l'audio\n"
+" [Selectionner un autre type de piste ne marche pas.]"
-#: commands/CommandManager.cpp:872
+#: commands/CommandManager.cpp:938
msgid "Disallowed"
-msgstr ""
+msgstr "Interdit"
-#: commands/CommandManager.cpp:972
+#: commands/CommandManager.cpp:1120
#, c-format
msgid "Loaded %d keyboard shortcuts\n"
msgstr "Chargement des %d raccourcis clavier\n"
-#: commands/CommandManager.cpp:974
+#: commands/CommandManager.cpp:1122
msgid "Loading keyboard shortcuts"
msgstr "Chargement des raccourcis clavier"
-#: effects/Amplify.cpp:52
+#: effects/Amplify.cpp:53
#, c-format
msgid "Applied effect: %s %.1f dB"
msgstr "Effet appliqué : %s %.1f dB"
-#: effects/Amplify.cpp:87
+#: effects/Amplify.cpp:140
msgid "Amplify"
msgstr "Amplification"
-#: effects/Amplify.cpp:155 effects/Compressor.cpp:476
-#: effects/Normalize.cpp:337
+#: effects/Amplify.cpp:156
+#: effects/Compressor.cpp:487
+#: effects/Normalize.cpp:341
msgid "by Dominic Mazzoni"
-msgstr ""
+msgstr "par Dominic Mazzoni"
-#: effects/Amplify.cpp:159
+#: effects/Amplify.cpp:169
msgid "Amplification (dB):"
msgstr "Amplification (dB) :"
-#: effects/Amplify.cpp:183
+#: effects/Amplify.cpp:184
msgid "Amplification dB"
-msgstr ""
+msgstr "Amplification dB"
-#: effects/Amplify.cpp:179
+#: effects/Amplify.cpp:191
msgid "New Peak Amplitude (dB):"
-msgstr "Nouvelle crête (dB) :"
+msgstr "Nouvelle crête (dB ):"
-#: effects/Amplify.cpp:191
+#: effects/Amplify.cpp:201
msgid "Allow clipping"
msgstr "Autoriser la saturation"
-#: effects/Amplify.cpp:237
-#: effects/Amplify.cpp:287
-#: effects/Amplify.cpp:353
+#: effects/Amplify.cpp:223
+#: effects/Amplify.cpp:280
+#: effects/Amplify.cpp:324
msgid "-Infinity"
msgstr "-Infini"
-#: effects/Amplify.h:46
+#: effects/Amplify.h:37
msgid "Amplify..."
msgstr "Amplification..."
-#: effects/Amplify.h:54
+#: effects/Amplify.h:51
msgid "Amplifying"
msgstr "Amplification en cours"
-#: effects/AutoDuck.cpp:125
+#: effects/AutoDuck.cpp:140
msgid "You selected a track which does not contain audio. AutoDuck can only process audio tracks."
msgstr "Vous avez sélectionné une piste ne contenant pas d'audio. AutoDuck ne peut traiter que les pistes audio."
-#: effects/AutoDuck.cpp:126
-#: effects/AutoDuck.cpp:138
-#: effects/AutoDuck.cpp:453
-#: effects/AutoDuck.cpp:570
+#: effects/AutoDuck.cpp:141
+#: effects/AutoDuck.cpp:153
+#: effects/AutoDuck.cpp:467
+#: effects/AutoDuck.cpp:584
msgid "Auto Duck"
msgstr "Auto Duck"
-#: effects/AutoDuck.cpp:137
+#: effects/AutoDuck.cpp:152
msgid "Auto Duck needs a control track which must be placed below the selected track(s)."
msgstr "Auto Duck nécessite une piste de contrôle placée sous la (les) piste(s) sélectionnée(s). "
-#: effects/AutoDuck.cpp:465
+#: effects/AutoDuck.cpp:479
msgid "Auto Duck by Markus Meyer"
msgstr "Auto Duck par Markus Meyer"
-#: effects/AutoDuck.cpp:487
+#: effects/AutoDuck.cpp:501
msgid "Duck amount:"
msgstr "Montant de Duck :"
-#: effects/AutoDuck.cpp:492
+#: effects/AutoDuck.cpp:506
msgid "Maximum pause:"
msgstr "Pause maximale :"
#. i18n-hint: Name of time display format that shows time in seconds
-#: effects/AutoDuck.cpp:494
-#: effects/AutoDuck.cpp:499
-#: effects/AutoDuck.cpp:504
-#: effects/AutoDuck.cpp:509
-#: effects/AutoDuck.cpp:514
-#: prefs/AudioIOPrefs.cpp:166
-#: prefs/AudioIOPrefs.cpp:174
-#: prefs/AudioIOPrefs.cpp:176
-#: prefs/AudioIOPrefs.cpp:201
-#: prefs/AudioIOPrefs.cpp:203
-#: widgets/TimeTextCtrl.cpp:263
+#: effects/AutoDuck.cpp:508
+#: effects/AutoDuck.cpp:513
+#: effects/AutoDuck.cpp:518
+#: effects/AutoDuck.cpp:523
+#: effects/AutoDuck.cpp:528
+#: prefs/MidiIOPrefs.cpp:157
+#: prefs/MidiIOPrefs.cpp:159
+#: prefs/MidiIOPrefs.cpp:181
+#: prefs/MidiIOPrefs.cpp:183
+#: prefs/MidiIOPrefs.cpp:191
+#: prefs/PlaybackPrefs.cpp:62
+#: prefs/PlaybackPrefs.cpp:76
+#: prefs/PlaybackPrefs.cpp:82
+#: prefs/PlaybackPrefs.cpp:96
+#: prefs/PlaybackPrefs.cpp:102
+#: widgets/TimeTextCtrl.cpp:264
msgid "seconds"
msgstr "secondes"
-#: effects/AutoDuck.cpp:497
+#: effects/AutoDuck.cpp:511
msgid "Outer fade down length:"
msgstr "Longueur de fondu externe à la fermeture :"
-#: effects/AutoDuck.cpp:502
+#: effects/AutoDuck.cpp:516
msgid "Outer fade up length:"
msgstr "Longueur de fondu externe à l'ouverture :"
-#: effects/AutoDuck.cpp:507
+#: effects/AutoDuck.cpp:521
msgid "Inner fade down length:"
msgstr "Longueur de fondu interne à la fermeture :"
-#: effects/AutoDuck.cpp:512
+#: effects/AutoDuck.cpp:526
msgid "Inner fade up length:"
msgstr "Longueur de fondu interne à l'ouverture :"
-#: effects/AutoDuck.cpp:521
-#: effects/Compressor.cpp:484
+#: effects/AutoDuck.cpp:535
+#: effects/Compressor.cpp:506
msgid "Threshold:"
msgstr "Seuil :"
-#: effects/AutoDuck.cpp:570
+#: effects/AutoDuck.cpp:584
msgid "Please enter valid values."
msgstr "Merci d'entrer des valeurs valides."
-#: effects/AutoDuck.cpp:704
+#: effects/AutoDuck.cpp:719
msgid "Preview not available"
msgstr "La prévisualistion n'est pas disponible"
-#: effects/AutoDuck.h:97
+#: effects/AutoDuck.h:98
msgid "Auto Duck..."
msgstr "Auto Duck..."
-#: effects/AutoDuck.h:107
+#: effects/AutoDuck.h:115
msgid "Processing Auto Duck..."
msgstr "Auto Duck en cours..."
#: effects/AvcCompressor.cpp:738
-#: effects/VST/VSTEffect.cpp:448
-#: effects/audiounits/AudioUnitEffect.cpp:877
-#: effects/nyquist/Nyquist.cpp:1042
-#: widgets/ErrorDialog.cpp:79
-#: widgets/ErrorDialog.cpp:105
-#: widgets/Warning.cpp:67
+#: effects/audiounits/AudioUnitEffect.cpp:856
+#: effects/nyquist/Nyquist.cpp:1237
+#: widgets/ErrorDialog.cpp:99
msgid "OK"
msgstr "OK"
@@ -4266,30 +4639,33 @@ msgid "Bass Boost"
msgstr "Amplification des basses"
#: effects/BassBoost.cpp:182
+#: effects/Phaser.cpp:219
+#: effects/Wahwah.cpp:214
msgid "by Nasca Octavian Paul"
msgstr "par Nasca Octavian Paul"
#: effects/BassBoost.cpp:196
+#: effects/ChangePitch.cpp:322
msgid "Frequency (Hz):"
msgstr "Fréquence (Hz) :"
#: effects/BassBoost.cpp:205
msgid "Frequency Hertz"
-msgstr ""
+msgstr "Fréquence Hertz"
-#: effects/BassBoost.cpp:208
+#: effects/BassBoost.cpp:209
msgid "Boost (dB):"
msgstr "Amplification (dB) :"
#: effects/BassBoost.cpp:218
msgid "Boost dB"
-msgstr ""
+msgstr "Amplification dB"
#: effects/BassBoost.h:35
msgid "BassBoost..."
msgstr "Amplification des basses..."
-#: effects/BassBoost.h:43
+#: effects/BassBoost.h:49
msgid "Boosting Bass Frequencies"
msgstr "Amplification des basses fréquences"
@@ -4306,635 +4682,632 @@ msgstr "Changement de la longueur..."
msgid "Applied effect: %s %.2f semitones"
msgstr "Effet Appliqué : %s %.2f demi-tons"
-#: effects/ChangePitch.cpp:118
+#: effects/ChangePitch.cpp:198
msgid "Change Pitch"
msgstr "Changer la hauteur"
-#: effects/ChangePitch.cpp:247
+#: effects/ChangePitch.cpp:256
msgid "Change Pitch without Changing Tempo"
msgstr "Changer la hauteur sans changer le tempo"
-#. i18n-hint: && in here is an escape character to get a single & on
-#: effects/ChangePitch.cpp:254
-#: effects/ChangeSpeed.cpp:313
-#: effects/ChangeTempo.cpp:180
+#: effects/ChangePitch.cpp:258
+#: effects/ChangeSpeed.cpp:337
+#: effects/ChangeTempo.cpp:176
msgid "by Vaughan Johnson && Dominic Mazzoni"
msgstr "par Vaughan Johnson && Dominic Mazzoni"
-#: effects/ChangePitch.cpp:259
-#: effects/ChangeTempo.cpp:185
+#: effects/ChangePitch.cpp:260
+#: effects/ChangeTempo.cpp:178
msgid "using SoundTouch, by Olli Parviainen"
msgstr "utilise SoundTouch, d'Olli Parviainen"
#: effects/ChangePitch.cpp:269
msgid "Pitch:"
-msgstr ""
+msgstr "Hauteur : "
#: effects/ChangePitch.cpp:274
msgid "From:"
-msgstr ""
+msgstr "Depuis :"
#: effects/ChangePitch.cpp:275
msgid "From Pitch"
-msgstr ""
+msgstr "Depuis hauteur"
#: effects/ChangePitch.cpp:286
msgid "Up"
-msgstr ""
+msgstr "Haut"
#: effects/ChangePitch.cpp:289
msgid "Down"
-msgstr ""
+msgstr "Bas"
#: effects/ChangePitch.cpp:299
msgid "To:"
-msgstr ""
+msgstr "Vers :"
#: effects/ChangePitch.cpp:300
msgid "To Pitch"
-msgstr ""
+msgstr "Vers la hauteur"
-#: effects/ChangePitch.cpp:306
+#: effects/ChangePitch.cpp:311
msgid "Semitones (half-steps):"
msgstr "Demi tons :"
#: effects/ChangePitch.cpp:316
msgid "Semitones in half-steps"
-msgstr ""
+msgstr "Demi tons par demi-degrés :"
-#: effects/ChangePitch.cpp:326 effects/ChangeSpeed.cpp:369
-#: effects/ChangeTempo.cpp:209 effects/ChangeTempo.cpp:222
+#: effects/ChangePitch.cpp:326
+#: effects/ChangeSpeed.cpp:370
+#: effects/ChangeTempo.cpp:209
+#: effects/ChangeTempo.cpp:222
msgid "from"
-msgstr ""
+msgstr "depuis"
#: effects/ChangePitch.cpp:327
msgid "From frequency in hertz"
-msgstr ""
+msgstr "de fréquence en hertz"
-#: effects/ChangePitch.cpp:291
-#: effects/ChangePitch.cpp:337
-#: effects/ChangeSpeed.cpp:377
-#: effects/ChangeTempo.cpp:239
-#: effects/ChangeTempo.cpp:270
+#: effects/ChangePitch.cpp:331
+#: effects/ChangeSpeed.cpp:375
+#: effects/ChangeTempo.cpp:214
+#: effects/ChangeTempo.cpp:227
msgid "to"
msgstr "vers"
#: effects/ChangePitch.cpp:332
msgid "To frequency in seconds"
-msgstr ""
+msgstr "Vers fréquence en secondes"
-#: effects/ChangePitch.cpp:360
-#: effects/ChangeSpeed.cpp:331
-#: effects/ChangeTempo.cpp:198
+#: effects/ChangePitch.cpp:338
+#: effects/ChangeSpeed.cpp:348
+#: effects/ChangeTempo.cpp:187
msgid "Percent Change:"
msgstr "Pourcentage de modification :"
-#: effects/ChangePitch.cpp:343 effects/ChangePitch.cpp:356
-#: effects/ChangeSpeed.cpp:358 effects/ChangeTempo.cpp:198
+#: effects/ChangePitch.cpp:343
+#: effects/ChangePitch.cpp:356
+#: effects/ChangeSpeed.cpp:359
+#: effects/ChangeTempo.cpp:198
msgid "Percent Change"
-msgstr ""
+msgstr "Pourcentage de modification"
#: effects/ChangePitch.h:31
msgid "Change Pitch..."
msgstr "Changer la hauteur..."
-#: effects/ChangePitch.h:39
+#: effects/ChangePitch.h:46
msgid "Changing Pitch"
msgstr "Changement de hauteur"
-#: effects/ChangeSpeed.cpp:53
+#: effects/ChangeSpeed.cpp:54
#: effects/ChangeTempo.cpp:55
#, c-format
msgid "Applied effect: %s %.1f%%"
msgstr "Effet Appliqué : %s %.1f%%"
-#: effects/ChangeSpeed.cpp:60
+#: effects/ChangeSpeed.cpp:299
msgid "Change Speed"
msgstr "Changer la vitesse"
-#. i18n-hint: n/a is an English
-#: effects/ChangeSpeed.cpp:364
+#. i18n-hint: n/a is an English abbreviation meaning "not applicable"
+#. (in other words, unimportant, not relevant).
+#: effects/ChangeSpeed.cpp:330
msgid "n/a"
msgstr "n/a"
-#: effects/ChangeSpeed.cpp:308
+#: effects/ChangeSpeed.cpp:335
msgid "Change Speed, affecting both Tempo and Pitch"
msgstr "Changer la vitesse en modifiant tempo et hauteur"
-#: effects/ChangeSpeed.cpp:318
+#: effects/ChangeSpeed.cpp:339
msgid "using SampleRate, by Erik de Castro Lopo"
msgstr "utilise SampleRate, d'Erik de Castro Lopo"
-#: effects/ChangeSpeed.cpp:366
+#: effects/ChangeSpeed.cpp:367
msgid "Standard Vinyl RPM:"
-msgstr ""
+msgstr "Vinyl t/m : "
-#: effects/ChangeSpeed.cpp:370
+#: effects/ChangeSpeed.cpp:371
msgid "From RPM"
-msgstr ""
+msgstr "Depuis tours/min."
-#: effects/ChangeSpeed.cpp:375
+#: effects/ChangeSpeed.cpp:376
msgid "To RPM"
-msgstr ""
+msgstr "Vers tours/min."
#: effects/ChangeSpeed.h:32
msgid "Change Speed..."
msgstr "Changer la vitesse..."
-#: effects/ChangeSpeed.h:40
+#: effects/ChangeSpeed.h:46
msgid "Changing Speed"
msgstr "Changement de vitesse"
-#: effects/ChangeTempo.cpp:74
+#: effects/ChangeTempo.cpp:141
msgid "Change Tempo"
msgstr "Changer le tempo"
-#: effects/ChangeTempo.cpp:175
+#: effects/ChangeTempo.cpp:174
msgid "Change Tempo without Changing Pitch"
msgstr "Changer le tempo sans modifier la hauteur"
#: effects/ChangeTempo.cpp:206
msgid "Beats per minute:"
-msgstr ""
+msgstr "Battements Par Minute :"
#: effects/ChangeTempo.cpp:210
msgid "From beats per minute"
-msgstr ""
+msgstr "Depuis battements/minute"
#: effects/ChangeTempo.cpp:215
msgid "To beats per minute"
-msgstr ""
+msgstr "Vers battements/minute"
#: effects/ChangeTempo.cpp:219
msgid "Length (seconds):"
-msgstr ""
+msgstr "Durée (secondes)"
#: effects/ChangeTempo.cpp:223
msgid "From length in seconds"
-msgstr ""
+msgstr "Depuis durée en secondes"
#: effects/ChangeTempo.cpp:228
msgid "To length in seconds"
-msgstr ""
+msgstr "Vers durée en secondes"
#: effects/ChangeTempo.h:35
msgid "Change Tempo..."
msgstr "Changer le tempo..."
-#: effects/ChangeTempo.h:43
+#: effects/ChangeTempo.h:49
msgid "Changing Tempo"
msgstr "Changement de tempo"
#: effects/ClickRemoval.cpp:314
-#, fuzzy
msgid "Click Removal"
-msgstr "Suppression des clics..."
+msgstr "Suppression des clics"
-#: effects/ClickRemoval.cpp:336
+#: effects/ClickRemoval.cpp:327
msgid "Click and Pop Removal by Craig DeForest"
msgstr "Suppression des clics et pops par Craig DeForest"
-#: effects/ClickRemoval.cpp:350
+#: effects/ClickRemoval.cpp:341
msgid "Select threshold (lower is more sensitive):"
msgstr "Sélectionnez le seuil (la sensibilité diminue avec le seuil)"
#: effects/ClickRemoval.cpp:350
msgid "Select threshold"
-msgstr ""
+msgstr "Sélectionner le seuil "
-#: effects/ClickRemoval.cpp:362
+#: effects/ClickRemoval.cpp:358
msgid "Max spike width (higher is more sensitive):"
msgstr "Largeur maximum du pic (la sensibilité augmente avec la largeur) :"
-#: effects/ClickRemoval.cpp:363
+#: effects/ClickRemoval.cpp:367
msgid "Max spike width"
-msgstr ""
+msgstr "Largeur de pic max."
#: effects/ClickRemoval.h:42
msgid "Click Removal..."
msgstr "Suppression des clics..."
-#: effects/ClickRemoval.h:50
+#: effects/ClickRemoval.h:56
msgid "Removing clicks and pops..."
msgstr "Suppression des clics et pops "
-#: effects/Compressor.cpp:74
+#: effects/Compressor.cpp:472
msgid "Dynamic Range Compressor"
msgstr "Compresseur dynamique"
-#: effects/Compressor.cpp:498
+#: effects/Compressor.cpp:510
msgid "Threshold"
-msgstr ""
+msgstr "Seuil "
-#: effects/Compressor.cpp:502
+#: effects/Compressor.cpp:514
msgid "Ratio:"
-msgstr ""
+msgstr "Ratio : "
-#: effects/Compressor.cpp:506
+#: effects/Compressor.cpp:518
msgid "Ratio"
-msgstr ""
+msgstr "Ratio"
-#: effects/Compressor.cpp:510
-#, fuzzy
+#: effects/Compressor.cpp:522
msgid "Attack Time:"
msgstr "Attaque :"
-#: effects/Compressor.cpp:514
+#: effects/Compressor.cpp:526
msgid "Attack Time"
-msgstr ""
+msgstr "Attaque"
-#: effects/Compressor.cpp:518
-#, fuzzy
+#: effects/Compressor.cpp:530
msgid "Decay Time:"
-msgstr "Durée de décroissance :"
+msgstr "Décroissance :"
-#: effects/Compressor.cpp:522
+#: effects/Compressor.cpp:534
msgid "Decay Time"
-msgstr ""
+msgstr "Décroissance :"
-#: effects/Compressor.cpp:516
-msgid "Normalize to 0dB after compressing"
-msgstr "Normaliser à 0dB après la compression"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
+msgstr "Normaliser à 0dB après la compression."
-#: effects/Compressor.cpp:563
+#: effects/Compressor.cpp:575
#, c-format
-#, fuzzy
msgid "Threshold %d dB"
-msgstr "Seuil : %d dB"
+msgstr "Seuil %d dB"
-#: effects/Compressor.cpp:564
+#: effects/Compressor.cpp:576
#, c-format
msgid "%3d dB"
-msgstr ""
+msgstr "%3d dB"
-#: effects/Compressor.cpp:567
+#: effects/Compressor.cpp:579
#, c-format
msgid "Ratio %.0f to 1"
-msgstr ""
+msgstr "Ratio %.0f à 1"
-#: effects/Compressor.cpp:568
+#: effects/Compressor.cpp:580
#, c-format
msgid "%.0f:1"
-msgstr ""
+msgstr "%.0f:1"
-#: effects/Compressor.cpp:571
+#: effects/Compressor.cpp:583
#, c-format
msgid "Ratio %.1f to 1"
-msgstr ""
+msgstr "Ratio %.1f à 1"
-#: effects/Compressor.cpp:572
+#: effects/Compressor.cpp:584
#, c-format
msgid "%.1f:1"
-msgstr ""
+msgstr "%.1f:1"
-#: effects/Compressor.cpp:575
+#: effects/Compressor.cpp:587
#, c-format
-#, fuzzy
msgid "Attack Time %.1f secs"
-msgstr "Attaque: %.1f secs"
+msgstr "Attaque %.1f secs"
-#: effects/Compressor.cpp:576 effects/Compressor.cpp:579
+#: effects/Compressor.cpp:588
+#: effects/Compressor.cpp:591
#, c-format
msgid "%.1f secs"
-msgstr ""
+msgstr "%.1f secs"
-#: effects/Compressor.cpp:578
+#: effects/Compressor.cpp:590
#, c-format
-#, fuzzy
msgid "Decay Time %.1f secs"
-msgstr "Délai : %.1f secs"
+msgstr "Délai %.1f secs"
-#: effects/Compressor.h:36
+#: effects/Compressor.h:37
msgid "Compressor..."
msgstr "Compresseur..."
-#: effects/Compressor.h:44
+#: effects/Compressor.h:51
msgid "Applying Dynamic Range Compression..."
msgstr "Application de compression dynamique..."
-#: effects/Contrast.cpp:79
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr "Analyse de contraste"
+
+#: effects/Contrast.cpp:88
msgid "Contrast Tool Foreground"
-msgstr ""
+msgstr "Outil de contraste de premier plan"
-#: effects/Contrast.cpp:79
-msgid "Foreground times selected.\n"
+#: effects/Contrast.cpp:88
+msgid ""
+"Foreground times selected.\n"
"Now select background and use Ctrl+Shift+T or menu again."
msgstr ""
+"Chrono de premier plan sélectionné.\n"
+"Sélectionner le fond et utiliser de nouveau Ctrl+Maj.+T ou le menu."
-#: effects/Contrast.cpp:127
-msgid "Start time after after end time!\n"
+#: effects/Contrast.cpp:144
+msgid ""
+"Start time after after end time!\n"
"Please enter reasonable times."
msgstr ""
+"Le chrono de début est après celui de fin !\n"
+"Entrez des chronos cohérents."
-#: effects/Contrast.cpp:137
-msgid "Times are not reasonable!\n"
+#: effects/Contrast.cpp:154
+msgid ""
+"Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
+"Les durées ne sont pas raisonnables !\n"
+"Entrez des chronos cohérents."
-#: effects/Contrast.cpp:190
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:277 effects/Contrast.cpp:288 effects/Contrast.cpp:371
-#: effects/Contrast.cpp:415
-msgid "Measured"
-msgstr ""
-
-#: effects/Contrast.cpp:318
+#: effects/Contrast.cpp:276
msgid "Contrast Analyzer"
-msgstr ""
+msgstr "Analyseur de contraste"
-#: effects/Contrast.cpp:321
+#: effects/Contrast.cpp:279
msgid "Parameters"
-msgstr ""
+msgstr "Paramètres"
-#: effects/ToneGen.cpp:361
-#: toolbars/ControlToolBar.cpp:185
+#: effects/Contrast.cpp:286
+#: effects/ToneGen.cpp:312
+#: toolbars/ControlToolBar.cpp:181
msgid "Start"
msgstr "Début"
-#: effects/ToneGen.cpp:362
-#: toolbars/ControlToolBar.cpp:188
-#: toolbars/SelectionBar.cpp:149
-#: toolbars/SelectionBar.cpp:254
+#: effects/Contrast.cpp:287
+#: effects/ToneGen.cpp:313
+#: toolbars/ControlToolBar.cpp:184
+#: toolbars/SelectionBar.cpp:156
+#: toolbars/SelectionBar.cpp:159
+#: toolbars/SelectionBar.cpp:262
msgid "End"
msgstr "Fin"
-#: effects/Contrast.cpp:332
+#: effects/Contrast.cpp:290
msgid "Volume "
-msgstr ""
+msgstr "Volume"
-#: effects/Contrast.cpp:335
+#: effects/Contrast.cpp:293
msgid "Foreground:"
-msgstr ""
+msgstr "Premier plan :"
-#: effects/Contrast.cpp:347
+#: effects/Contrast.cpp:305
msgid "Foreground start time"
-msgstr ""
+msgstr "Chrono de début de premier plan :"
-#: effects/Contrast.cpp:365
+#: effects/Contrast.cpp:323
msgid "Foreground end time"
-msgstr ""
+msgstr "Chrono de fin du premier plan :"
+
+#: effects/Contrast.cpp:329
+#: effects/Contrast.cpp:373
+#: effects/Contrast.cpp:437
+#: effects/Contrast.cpp:448
+msgid "Measured"
+msgstr "Mesuré"
-#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
+#: effects/Contrast.cpp:331
+#: effects/Contrast.cpp:375
msgid "Use selection"
-msgstr ""
+msgstr "Utiliser la sélection"
-#: effects/Contrast.cpp:378
+#: effects/Contrast.cpp:336
msgid "Background:"
-msgstr ""
+msgstr "Fond :"
-#: effects/Contrast.cpp:391
+#: effects/Contrast.cpp:349
msgid "Background start time"
-msgstr ""
+msgstr "Chrono de début du fond"
-#: effects/Contrast.cpp:409
+#: effects/Contrast.cpp:367
msgid "Background end time"
-msgstr ""
+msgstr "Chrono de fin du fond"
-#: effects/Contrast.cpp:426
+#: effects/Contrast.cpp:384
msgid "Result"
-msgstr ""
+msgstr "Résultat"
-#: effects/Contrast.cpp:430
+#: effects/Contrast.cpp:388
msgid "Contrast Result:"
-msgstr ""
+msgstr "Résultat de la comparaison :"
-#: Tags.cpp:829
-#: Tags.cpp:1981
+#: effects/Contrast.cpp:391
msgid "Reset"
msgstr "Remise à zéro"
-#: effects/Contrast.cpp:434
+#: effects/Contrast.cpp:392
msgid "Difference:"
-msgstr ""
+msgstr "Différence :"
-#: effects/Contrast.cpp:445
+#: effects/Contrast.cpp:403
msgid "Information"
-msgstr ""
+msgstr "Informations"
-#: effects/Contrast.cpp:447
+#: effects/Contrast.cpp:405
msgid "For measuring rms volume differences between two selections of audio."
-msgstr ""
+msgstr "Mesure des différences de volume RMS entre deux sélections audio."
-#: effects/Contrast.cpp:448
+#: effects/Contrast.cpp:406
msgid "Help for WCAG2 Audio Contrast Analyzer"
-msgstr ""
+msgstr "Aide de l'analyseur de contraste audio WCAG2"
-#: toolbars/ControlToolBar.cpp:82
-msgid "Control"
-msgstr "Contrôle"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
+msgstr "Fermer (conserve les chronos)"
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
-msgstr ""
-
-#: effects/Contrast.cpp:466 effects/Contrast.cpp:472 effects/Contrast.cpp:478
-#: effects/Contrast.cpp:484
+#: effects/Contrast.cpp:474
+#: effects/Contrast.cpp:480
+#: effects/Contrast.cpp:486
+#: effects/Contrast.cpp:492
msgid "Measure"
-msgstr ""
+msgstr "Mesurer"
-#: effects/Contrast.cpp:511
+#: effects/Contrast.cpp:531
msgid "No foreground to measure"
-msgstr ""
+msgstr "Pas de premier plan à mesurer"
-#: effects/Contrast.cpp:516
+#: effects/Contrast.cpp:536
msgid "Measured foreground level"
-msgstr ""
+msgstr "Niveau mesuré du premier plan"
-#: effects/Contrast.cpp:517 effects/Contrast.cpp:527
+#: effects/Contrast.cpp:537
+#: effects/Contrast.cpp:547
#, c-format
msgid "%.1f dB"
-msgstr ""
+msgstr "%.1f dB"
-#: effects/Contrast.cpp:521
+#: effects/Contrast.cpp:541
msgid "No background to measure"
-msgstr ""
+msgstr "Pas de fond à mesurer"
-#: effects/Contrast.cpp:526
+#: effects/Contrast.cpp:546
msgid "Measured background level"
-msgstr ""
+msgstr "Bruit de fond mesuré"
-#: effects/Contrast.cpp:532
+#: effects/Contrast.cpp:552
msgid "WCAG2 Pass"
-msgstr ""
+msgstr "Passage WCAG2"
-#: effects/Contrast.cpp:534
+#: effects/Contrast.cpp:554
msgid "WCAG2 Fail"
-msgstr ""
+msgstr "Echec WCAG2"
-#: effects/Contrast.cpp:535
+#: effects/Contrast.cpp:555
msgid "Current difference"
-msgstr ""
+msgstr "Différence actuelle"
-#: effects/Contrast.cpp:536
+#: effects/Contrast.cpp:556
#, c-format
msgid "%.1f dB Average rms"
-msgstr ""
+msgstr "%.1f dB de moyenne rms"
-#: effects/Contrast.cpp:541
+#: effects/Contrast.cpp:561
msgid "Please enter valid times."
-msgstr ""
+msgstr "Merci d'entrer des durées valides."
-#: effects/Contrast.cpp:551
+#: effects/Contrast.cpp:571
msgid "Export Contrast Result As:"
-msgstr ""
+msgstr "Exporter le résultat du contraste sous :"
-#: effects/Contrast.cpp:572
+#: effects/Contrast.cpp:592
msgid "WCAG 2.0 Success Criteria 1.4.7 Contrast Results"
-msgstr ""
+msgstr "Résultats de contraste WCAG 2.0 Critère de succès 1.4.7 "
-#: effects/Contrast.cpp:574
+#: effects/Contrast.cpp:594
#, c-format
msgid "Filename = %s."
-msgstr ""
+msgstr "Nom de fichier = %s."
-#: effects/Contrast.cpp:576
+#: effects/Contrast.cpp:596
msgid "Foreground"
-msgstr ""
+msgstr "Premier plan"
-#: effects/Contrast.cpp:581 effects/Contrast.cpp:598
+#: effects/Contrast.cpp:601
+#: effects/Contrast.cpp:618
#, c-format
msgid "Time started = %2d hour(s), %2d minute(s), %.2f seconds."
-msgstr ""
+msgstr "Chrono de début = %2d hour(s), %2d minute(s), %.2f seconds."
-#: effects/Contrast.cpp:586 effects/Contrast.cpp:603
+#: effects/Contrast.cpp:606
+#: effects/Contrast.cpp:623
#, c-format
msgid "Time ended = %2d hour(s), %2d minute(s), %.2f seconds."
-msgstr ""
+msgstr "Chrono de fin = %2d hour(s), %2d minute(s), %.2f seconds."
-#: effects/Contrast.cpp:588 effects/Contrast.cpp:605
+#: effects/Contrast.cpp:608
+#: effects/Contrast.cpp:625
#, c-format
msgid "Average rms = %.1f dB."
-msgstr ""
+msgstr "Moyenne rms = %.1f dB."
-#: effects/Contrast.cpp:590 effects/Contrast.cpp:607
+#: effects/Contrast.cpp:610
+#: effects/Contrast.cpp:627
msgid "Average rms = dB."
-msgstr ""
+msgstr "Moyenne rms = dB."
-#: effects/Contrast.cpp:593
+#: effects/Contrast.cpp:613
msgid "Background"
-msgstr ""
+msgstr "Fond"
-#: effects/Contrast.cpp:609
+#: effects/Contrast.cpp:629
msgid "Results"
-msgstr ""
+msgstr "Résultats"
-#: effects/Contrast.cpp:611
+#: effects/Contrast.cpp:631
#, c-format
msgid "Difference = %.1f Average rms dB."
-msgstr ""
+msgstr "Différence = %.1f de moyenne rms dB."
-#: effects/Contrast.cpp:613
+#: effects/Contrast.cpp:633
msgid "Success Criteria 1.4.7 of WCAG 2.0: Pass"
-msgstr ""
+msgstr "Critère de succès 1.4.7 de WCAG 2.0 : Réussite"
-#: effects/Contrast.cpp:615
+#: effects/Contrast.cpp:635
msgid "Success Criteria 1.4.7 of WCAG 2.0: Fail"
-msgstr ""
+msgstr "Critère de succès 1.4.7 de WCAG 2.0 : Echec"
-#: effects/Contrast.cpp:618
+#: effects/Contrast.cpp:638
msgid "Data gathered"
-msgstr ""
+msgstr "Données réunies le"
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:52
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:54
-msgid "Measuring foreground"
-msgstr ""
-
-#: effects/DtmfGen.cpp:48
+#: effects/DtmfGen.cpp:56
msgid "DTMF Tone Generator"
-msgstr "Générateur de son DTMF"
+msgstr "Générateur de tonalité DTMF"
-#: effects/DtmfGen.cpp:439
+#: effects/DtmfGen.cpp:421
msgid "by Salvo Ventura (2006)"
msgstr "par Salvo Ventura (2006)"
-#: effects/DtmfGen.cpp:443
+#: effects/DtmfGen.cpp:425
msgid "DTMF sequence:"
msgstr "Séquence DTMF :"
-#: effects/DtmfGen.cpp:446
-#: effects/Noise.cpp:255
-#: effects/ToneGen.cpp:328
-#: effects/ToneGen.cpp:365
+#: effects/DtmfGen.cpp:428
+#: effects/Noise.cpp:190
+#: effects/ToneGen.cpp:278
+#: effects/ToneGen.cpp:316
msgid "Amplitude (0-1)"
msgstr "Amplitude (0 Ã 1)"
-#: effects/DtmfGen.cpp:448
+#: effects/DtmfGen.cpp:430
msgid "Duration:"
msgstr "Durée :"
-#: effects/DtmfGen.cpp:469
+#: effects/DtmfGen.cpp:452
msgid "Tone/silence ratio:"
-msgstr "Rapport signal/bruit :"
+msgstr "Rapport tonalité/silence :"
-#: effects/DtmfGen.cpp:479
+#: effects/DtmfGen.cpp:462
msgid "Duty cycle:"
-msgstr ""
+msgstr "Cycle d'activité :"
-#: effects/DtmfGen.cpp:481
+#: effects/DtmfGen.cpp:464
msgid "Tone duration:"
msgstr "Durée de son"
-#: effects/DtmfGen.cpp:482
-#: effects/DtmfGen.cpp:484
-#: effects/DtmfGen.cpp:560
-#: effects/DtmfGen.cpp:561
+#: effects/DtmfGen.cpp:465
+#: effects/DtmfGen.cpp:467
+#: effects/DtmfGen.cpp:543
+#: effects/DtmfGen.cpp:544
msgid "ms"
msgstr "ms"
-#: effects/DtmfGen.cpp:483
+#: effects/DtmfGen.cpp:466
msgid "Silence duration:"
msgstr "Durée du silence :"
-#: effects/DtmfGen.h:41
+#: effects/DtmfGen.h:40
msgid "DTMF Tones..."
-msgstr "Sons DTMF..."
+msgstr "Tonalités DTMF..."
-#: effects/DtmfGen.h:49
+#: effects/DtmfGen.h:54
#, c-format
msgid "Applied effect: Generate DTMF tones, %.6lf seconds"
-msgstr "Effet appliqué : Générer des sons DTMF, %.6lf secondes"
+msgstr "Effet appliqué : Générer des tonalitéss DTMF, %.6lf secondes"
-#: effects/DtmfGen.h:53
+#: effects/DtmfGen.h:58
msgid "Generating DTMF tones"
-msgstr "Géneration de sons DTMF"
+msgstr "Géneration de tonalités DTMF"
#: effects/Echo.cpp:48
#, c-format
msgid "Applied effect: %s delay = %f seconds, decay factor = %f"
msgstr "Effet appliqué : %s délai = %f secondes, facteur de décroissance = %f"
-#: effects/Echo.cpp:170
+#: effects/Echo.cpp:174
msgid "Echo"
msgstr "Echo"
#. i18n-hint: && in here is an escape character to get a single & on
-#: effects/Echo.cpp:195
+#. * screen, so keep it as is
+#: effects/Echo.cpp:199
+#: effects/Repeat.cpp:197
msgid "by Dominic Mazzoni && Vaughan Johnson"
msgstr "par Dominic Mazzoni && Vaughan Johnson"
-#: effects/Echo.cpp:207
+#: effects/Echo.cpp:211
msgid "Delay time (seconds):"
msgstr "Durée du délai (secondes) :"
-#: effects/Echo.cpp:212
+#: effects/Echo.cpp:216
msgid "Decay factor:"
msgstr "Facteur de décroissance :"
@@ -4942,112 +5315,119 @@ msgstr "Facteur de décroissance :"
msgid "Echo..."
msgstr "Echo..."
-#: effects/Echo.h:42
+#: effects/Echo.h:48
msgid "Performing Echo"
msgstr "Echo en cours"
-#: effects/Effect.cpp:390
+#: effects/Effect.cpp:520
msgid "Preparing preview"
-msgstr "Préparation de la prévisualisation"
+msgstr "Préparation de la prélecture"
-#: effects/Effect.cpp:419
+#: effects/Effect.cpp:550
msgid "Previewing"
-msgstr "Prévisualisation"
+msgstr "Prélecture"
-#: effects/Effect.cpp:435
+#: effects/Effect.cpp:565
msgid "Error while opening sound device. Please check the output device settings and the project sample rate."
msgstr "Erreur à l 'ouverture du périphérique son. Vérifiez les réglages du périphérique et l'échantillonnage du projet."
-#: effects/Effect.h:107
+#: effects/Effect.h:97
+#: effects/TimeScale.cpp:52
#, c-format
msgid "Applied effect: %s"
msgstr "Effet appliqué : %s"
-#: effects/Equalization.cpp:329
+#: effects/Equalization.cpp:336
msgid "B-spline"
msgstr "B-spline"
-#: effects/Equalization.cpp:330
+#: effects/Equalization.cpp:337
msgid "Cosine"
msgstr "Cosinus"
-#: effects/Equalization.cpp:331
+#: effects/Equalization.cpp:338
msgid "Cubic"
msgstr "Cubique"
-#: effects/Equalization.cpp:362
-#: effects/Equalization.cpp:412
+#: effects/Equalization.cpp:371
+#: effects/Equalization.cpp:422
msgid "Equalization"
msgstr "Egalisation"
-#: effects/Equalization.cpp:980
+#: effects/Equalization.cpp:1012
msgid "Error loading EQ curve"
msgstr "Erreur de chargement de la courbe d'égalisation"
-#: effects/Equalization.cpp:1019
+#: effects/Equalization.cpp:1051
msgid "custom"
msgstr "Personnalisé"
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr "Erreur à l'enregistrement de courbes d'égalisation"
+
#. i18n-hint: && in here is an escape character to get a single &
-#: effects/Equalization.cpp:1087
+#. * on screen, so keep it as is
+#: effects/Equalization.cpp:1123
msgid "Equalization, by Martyn Shaw && Mitch Golden"
msgstr "Egalisation, par Martyn Shaw && Mitch Golden"
-#: effects/Equalization.cpp:1108
+#: effects/Equalization.cpp:1144
msgid "Max dB"
msgstr "Max dB"
-#: effects/Equalization.cpp:1110
+#: effects/Equalization.cpp:1146
msgid "Min dB"
msgstr "Min dB"
-#: effects/Equalization.cpp:1183
+#: effects/Equalization.cpp:1219
msgid "kHz"
msgstr "kHz"
-#: effects/Equalization.cpp:1200
+#: effects/Equalization.cpp:1236
msgid "Draw curves"
msgstr "Dessiner les courbes"
-#: effects/Equalization.cpp:1205
+#: effects/Equalization.cpp:1241
msgid "Graphic EQ"
msgstr "Egaliseur graphique"
-#: effects/Equalization.cpp:1219
+#: effects/Equalization.cpp:1255
msgid "Linear frequency scale"
msgstr "Echelle linéaire de fréquence"
-#: effects/Equalization.cpp:1228
+#: effects/Equalization.cpp:1264
msgid "Length of filter:"
msgstr "Longueur du filtre :"
-#: effects/Equalization.cpp:1249
+#: effects/Equalization.cpp:1285
msgid "Select curve:"
msgstr "Sélectionner la courbe "
-#: effects/Equalization.cpp:1259
-#: effects/Equalization.cpp:2498
-#: export/ExportMultiple.cpp:826
+#: effects/Equalization.cpp:1295
+#: effects/Equalization.cpp:2553
+#: export/ExportMultiple.cpp:924
msgid "Save As..."
msgstr "Enregistrer sous..."
-#: effects/Equalization.cpp:1265
+#: effects/Equalization.cpp:1301
msgid "Flat"
msgstr "Plat"
-#: effects/Equalization.cpp:2497
+#: effects/Equalization.cpp:2552
msgid "Enter the desired name of the curve"
msgstr "Entrer le nom de la courbe"
-#: effects/Equalization.cpp:2597
+#: effects/Equalization.cpp:2652
+#: export/ExportFFmpegDialogs.cpp:1214
msgid "Confirm Deletion"
msgstr "Confirmer l'effacement"
-#: effects/Equalization.h:87
+#: effects/Equalization.h:84
msgid "Equalization..."
msgstr "Egalisation..."
-#: effects/Equalization.h:95
+#: effects/Equalization.h:98
msgid "Performing Equalization"
msgstr "Egalisation en cours"
@@ -5055,51 +5435,51 @@ msgstr "Egalisation en cours"
msgid "Fade In"
msgstr "Fondre en ouverture"
-#: effects/Fade.h:32
+#: effects/Fade.h:38
msgid "Fading In"
msgstr "Fondu en ouverture "
-#: effects/Fade.h:48
+#: effects/Fade.h:54
msgid "Fade Out"
msgstr "Fondre en fermeture"
-#: effects/Fade.h:56
+#: effects/Fade.h:68
msgid "Fading Out"
msgstr "Fondu en fermeture"
-#: effects/FindClipping.cpp:49
+#: effects/FindClipping.cpp:50
msgid "Detect clipping"
msgstr "Détecter la saturation"
-#: effects/FindClipping.cpp:91
+#: effects/FindClipping.cpp:93
msgid "Clipping"
msgstr "Saturation"
-#: effects/FindClipping.cpp:211
+#: effects/FindClipping.cpp:213
msgid "Find Clipping"
-msgstr "Trouver la saturation"
+msgstr "Marquer la saturation"
-#: effects/FindClipping.cpp:222
+#: effects/FindClipping.cpp:224
msgid "by Leland Lucius"
msgstr "par Leland Lucius"
-#: effects/FindClipping.cpp:234
+#: effects/FindClipping.cpp:236
msgid "Start threshold (samples):"
-msgstr "Démarrer seuil (échantillons):"
+msgstr "Seuil de marquage (échantillons):"
-#: effects/FindClipping.cpp:238
+#: effects/FindClipping.cpp:240
msgid "Stop threshold (samples):"
-msgstr "Arrêter le seuil (échantillon) :"
+msgstr "Seuil d'arrêt (échantillons) :"
-#: effects/FindClipping.cpp:250
+#: effects/FindClipping.cpp:252
msgid "Start and stop must be greater than 0."
-msgstr "Début et fin doivent être supérieurs à 0"
+msgstr "Les seuils doivent être supérieurs à 0"
#: effects/FindClipping.h:37
msgid "Find Clipping..."
-msgstr "Trouver la saturation..."
+msgstr "Marquer la saturation..."
-#: effects/FindClipping.h:47
+#: effects/FindClipping.h:54
msgid "Detecting clipping"
msgstr "Détection de la saturation"
@@ -5107,219 +5487,215 @@ msgstr "Détection de la saturation"
msgid "Invert"
msgstr "Inverser"
-#: effects/Invert.h:35
+#: effects/Invert.h:41
msgid "Inverting"
msgstr "Inversion"
-#: effects/Leveller.cpp:136
+#: effects/Leveller.cpp:192
msgid "Leveller"
msgstr "Niveleur"
-#: effects/Leveller.cpp:52
+#: effects/Leveller.cpp:205
msgid "None-Skip"
msgstr "Aucun saut"
-#: effects/Leveller.cpp:53
+#: effects/Leveller.cpp:206
msgid "Light"
msgstr "Léger"
-#: effects/Leveller.cpp:54
+#: effects/Leveller.cpp:207
msgid "Moderate"
msgstr "Modéré"
-#: effects/Leveller.cpp:55
+#: effects/Leveller.cpp:208
msgid "Heavy"
msgstr "Fort"
-#: effects/Leveller.cpp:56
+#: effects/Leveller.cpp:209
msgid "Heavier"
msgstr "Plus fort"
-#: effects/Leveller.cpp:57
+#: effects/Leveller.cpp:210
msgid "Heaviest"
msgstr "Très fort"
-#: effects/TruncSilence.cpp:332
+#: effects/Leveller.cpp:214
msgid "by Lynn Allan"
msgstr "par Lynn Allan"
-#: effects/Leveller.cpp:226
-#: effects/Leveller.cpp:231
+#: effects/Leveller.cpp:224
msgid "Degree of Leveling"
msgstr "Dégré de nivellement"
#: effects/Leveller.cpp:228
msgid "Degree of Leveling:"
-msgstr ""
+msgstr "Dégré de nivellement :"
-#: effects/Leveller.cpp:242
+#: effects/Leveller.cpp:236
msgid "Noise Threshold (Hiss/Hum/Ambient Noise)"
msgstr "Seuil de bruit (Bruit de bande, hum, son ambient)"
#: effects/Leveller.cpp:240
-#, fuzzy
msgid "Threshold for Noise:"
msgstr "Seuil de bruit :"
#: effects/Leveller.h:28
msgid "Leveller..."
-msgstr "Nivelleur..."
+msgstr "Niveleur..."
-#: effects/Leveller.h:36
+#: effects/Leveller.h:42
msgid "Applying Leveller..."
-msgstr "Application du nivelleur..."
+msgstr "Application du niveleur..."
-#: effects/LoadEffects.cpp:103
+#: effects/LoadEffects.cpp:102
msgid "Generator"
-msgstr ""
+msgstr "Générateur"
-#: effects/LoadEffects.cpp:105
+#: effects/LoadEffects.cpp:104
msgid "Instrument"
-msgstr ""
+msgstr "Instrument"
-#: effects/LoadEffects.cpp:107
+#: effects/LoadEffects.cpp:106
msgid "Oscillator"
-msgstr ""
+msgstr "Oscillateur"
-#: effects/LoadEffects.cpp:109
+#: effects/LoadEffects.cpp:108
msgid "Utility"
-msgstr ""
+msgstr "Utilitaires"
-#: effects/LoadEffects.cpp:111
+#: effects/LoadEffects.cpp:110
msgid "Converter"
-msgstr ""
+msgstr "Convertisseur"
-#: effects/LoadEffects.cpp:113
+#: effects/LoadEffects.cpp:112
msgid "Analyser"
-msgstr ""
-
-#: toolbars/MixerToolBar.cpp:60
-msgid "Mixer"
-msgstr "Mixage"
+msgstr "Analyseur"
-#: effects/LoadEffects.cpp:117
+#: effects/LoadEffects.cpp:116
msgid "Simulator"
-msgstr ""
+msgstr "Simulateur"
-#: effects/LoadEffects.cpp:119
+#: effects/LoadEffects.cpp:118
msgid "Delay"
-msgstr ""
+msgstr "Délai "
-#: effects/LoadEffects.cpp:121
+#: effects/LoadEffects.cpp:120
msgid "Modulator"
-msgstr ""
+msgstr "Modulateur"
-#: effects/LoadEffects.cpp:123
+#: effects/LoadEffects.cpp:122
msgid "Reverb"
-msgstr ""
+msgstr "Réverbération"
-#: effects/Phaser.cpp:77
+#: effects/LoadEffects.cpp:124
+#: effects/Phaser.cpp:208
msgid "Phaser"
msgstr "Phaser"
-#: effects/LoadEffects.cpp:127
+#: effects/LoadEffects.cpp:126
msgid "Flanger"
-msgstr ""
+msgstr "Flanger"
-#: effects/LoadEffects.cpp:129
+#: effects/LoadEffects.cpp:128
msgid "Chorus"
-msgstr ""
+msgstr "Chorus"
-#: effects/LoadEffects.cpp:131
+#: effects/LoadEffects.cpp:130
msgid "Filter"
-msgstr ""
+msgstr "Filtre"
-#: effects/LoadEffects.cpp:133
+#: effects/LoadEffects.cpp:132
msgid "Lowpass"
-msgstr ""
+msgstr "Passe-bas"
-#: effects/LoadEffects.cpp:135
+#: effects/LoadEffects.cpp:134
msgid "Bandpass"
-msgstr ""
+msgstr "Passe-bande"
-#: effects/LoadEffects.cpp:137
+#: effects/LoadEffects.cpp:136
msgid "Highpass"
-msgstr ""
+msgstr "Passe-haut"
-#: effects/LoadEffects.cpp:139
+#: effects/LoadEffects.cpp:138
msgid "Comb"
-msgstr ""
+msgstr "Peigne"
-#: effects/LoadEffects.cpp:141
+#: effects/LoadEffects.cpp:140
msgid "Allpass"
-msgstr ""
+msgstr "Passe-tout"
-#: effects/LoadEffects.cpp:143
+#: effects/LoadEffects.cpp:142
msgid "Equaliser"
-msgstr ""
+msgstr "Egaliseur"
-#: effects/LoadEffects.cpp:145
+#: effects/LoadEffects.cpp:144
msgid "Parametric"
-msgstr ""
+msgstr "Paramétrique"
-#: effects/LoadEffects.cpp:147
+#: effects/LoadEffects.cpp:146
msgid "Multiband"
-msgstr ""
+msgstr "Multibande"
-#: effects/LoadEffects.cpp:149
+#: effects/LoadEffects.cpp:148
msgid "Spectral Processor"
-msgstr ""
+msgstr "Processeur spectral"
-#: effects/LoadEffects.cpp:151
+#: effects/LoadEffects.cpp:150
msgid "Pitch Shifter"
-msgstr ""
+msgstr "Ajusteur de hauteur"
-#: effects/LoadEffects.cpp:153
+#: effects/LoadEffects.cpp:152
msgid "Amplifier"
-msgstr ""
+msgstr "Amplification"
-#: effects/LoadEffects.cpp:155
+#: effects/LoadEffects.cpp:154
msgid "Distortion"
-msgstr ""
+msgstr "Distortion"
-#: effects/LoadEffects.cpp:157
+#: effects/LoadEffects.cpp:156
msgid "Waveshaper"
-msgstr ""
+msgstr "Onduleur"
-#: effects/LoadEffects.cpp:159
+#: effects/LoadEffects.cpp:158
msgid "Dynamics Processor"
-msgstr ""
+msgstr "Processeur dynamique"
-#: effects/LoadEffects.cpp:161
+#: effects/LoadEffects.cpp:160
msgid "Compressor"
-msgstr ""
+msgstr "Compresseur"
-#: effects/LoadEffects.cpp:163
+#: effects/LoadEffects.cpp:162
msgid "Expander"
-msgstr ""
+msgstr "Expanseur"
-#: effects/LoadEffects.cpp:165
+#: effects/LoadEffects.cpp:164
msgid "Limiter"
-msgstr ""
+msgstr "Limiteur"
-#: effects/LoadEffects.cpp:167
+#: effects/LoadEffects.cpp:166
msgid "Gate"
-msgstr ""
+msgstr "Seuil"
-#: effects/NoiseRemoval.cpp:723
+#: effects/LoadEffects.cpp:199
+#: effects/NoiseRemoval.cpp:730
msgid "Noise Removal"
msgstr "Elimination du bruit"
-#: effects/LoadEffects.cpp:202
+#: effects/LoadEffects.cpp:201
msgid "Pitch and Tempo"
-msgstr ""
+msgstr "Hauteur et tempo"
-#: effects/LoadEffects.cpp:204
+#: effects/LoadEffects.cpp:203
msgid "Timeline Changer"
-msgstr ""
+msgstr "Changeur de piste temporelle"
-#: effects/LoadEffects.cpp:206
+#: effects/LoadEffects.cpp:205
msgid "Time"
-msgstr ""
+msgstr "Temps"
-#: effects/LoadEffects.cpp:208
+#: effects/LoadEffects.cpp:207
msgid "Onsets"
-msgstr ""
+msgstr "Débuts"
#: effects/Noise.cpp:37
msgid "White"
@@ -5331,118 +5707,121 @@ msgstr "Rose"
#: effects/Noise.cpp:39
msgid "Brown"
-msgstr "Brun"
+msgstr "Rouge (Brownien)"
#: effects/Noise.cpp:41
msgid "Noise Generator"
-msgstr "Générateur de son"
+msgstr "Générateur de bruit"
-#: effects/Noise.cpp:256
+#: effects/Noise.cpp:189
msgid "Noise type"
msgstr "Type de bruit :"
-#: effects/Noise.h:41
+#: effects/Noise.h:42
msgid "Noise..."
msgstr "Bruit..."
-#: effects/Noise.h:49
+#: effects/Noise.h:56
#, c-format
msgid "Applied effect: Generate Noise, %.6lf seconds"
msgstr "Effet appliqué : Générer un bruit de, %.6lf secondes"
-#: effects/Noise.h:53
+#: effects/Noise.h:60
msgid "Generating Noise"
msgstr "Génération du bruit"
#: effects/NoiseRemoval.cpp:192
#, c-format
-msgid "Could not open file:\n"
+msgid ""
+"Could not open file:\n"
" %s"
-msgstr "Impossible d'ouvrir le fichier : \n"
+msgstr ""
+"Impossible d'ouvrir le fichier : \n"
" %s"
#: effects/NoiseRemoval.cpp:277
msgid "Attempt to run Noise Removal without a noise profile.\n"
msgstr "Tentative d'application de la suppression de bruit sans profil de bruit. \n"
-#: effects/NoiseRemoval.cpp:813
+#: effects/NoiseRemoval.cpp:819
msgid "Step 1"
msgstr "Etape 1"
-#: effects/NoiseRemoval.cpp:814
-msgid "Select a few seconds of just noise so Audacity knows what to filter out,\n"
+#: effects/NoiseRemoval.cpp:820
+msgid ""
+"Select a few seconds of just noise so Audacity knows what to filter out,\n"
"then click Get Noise Profile:"
-msgstr "Choisir quelques secondes de bruit seul\n"
+msgstr ""
+"Choisir quelques secondes de bruit seul\n"
"afin que Audacity sache ce qu'il doit filtrer.\n"
"Cliquer ensuite sur Prendre le profil du bruit :"
-#: effects/NoiseRemoval.cpp:815
+#: effects/NoiseRemoval.cpp:821
msgid "Step 2"
msgstr "Etape 2"
-#: effects/NoiseRemoval.cpp:816
-msgid "Select all of the audio you want filtered, choose how much noise you want\n"
+#: effects/NoiseRemoval.cpp:822
+msgid ""
+"Select all of the audio you want filtered, choose how much noise you want\n"
"filtered out, and then click 'OK' to remove noise.\n"
-msgstr "Sélectionner tout l'audio à filtrer,\n"
-"choisir la quantité de bruit à filtrer,\n"
+msgstr ""
+"Sélectionner tout l'audio que vous voulez filtrer,\n"
+"choisir la quantité de bruit vous voulez filtrer,\n"
"cliquer alors sur \"OK\" pour supprimer le bruit.\n"
-#: effects/NoiseRemoval.cpp:821
+#: effects/NoiseRemoval.cpp:827
msgid "Noise Removal by Dominic Mazzoni"
msgstr "Elimination du bruit par Dominic Mazzoni"
-#: effects/NoiseRemoval.cpp:829
+#: effects/NoiseRemoval.cpp:835
msgid "Get Noise Profile"
msgstr "Prendre le profil du bruit"
-#: effects/NoiseRemoval.cpp:840
+#: effects/NoiseRemoval.cpp:846
msgid "Noise reduction (dB):"
-msgstr "Réduction de bruit (dB) :"
+msgstr "Réduction de bruit (dB):"
-#: effects/NoiseRemoval.cpp:850
+#: effects/NoiseRemoval.cpp:851
msgid "Noise reduction"
-msgstr ""
+msgstr "Réduction de bruit"
-#: effects/NoiseRemoval.cpp:848
+#: effects/NoiseRemoval.cpp:855
msgid "Frequency smoothing (Hz):"
msgstr "Lissage de fréquence (Hz) :"
-#: effects/NoiseRemoval.cpp:859
+#: effects/NoiseRemoval.cpp:860
msgid "Frequency smoothing"
-msgstr ""
+msgstr "Lissage de fréquence"
-#: effects/NoiseRemoval.cpp:856
+#: effects/NoiseRemoval.cpp:864
msgid "Attack/decay time (secs):"
msgstr "Durée de l'attaque et du délai (secondes) :"
-#: effects/NoiseRemoval.cpp:868
+#: effects/NoiseRemoval.cpp:869
msgid "Attach/decay time"
-msgstr ""
+msgstr "Durée d'attaque/délai "
#: effects/NoiseRemoval.h:35
msgid "Noise Removal..."
msgstr "Elimination du bruit..."
-#: effects/NoiseRemoval.h:44
+#: effects/NoiseRemoval.h:50
msgid "Creating Noise Profile"
msgstr "Création d'un profil du bruit"
-#: effects/NoiseRemoval.h:46
+#: effects/NoiseRemoval.h:52
msgid "Removing Noise"
msgstr "Suppression du bruit"
#. i18n-hint: First %s is the effect name, 2nd and 3rd are either true or
+#. * false (translated below) if those options were selected
#: effects/Normalize.cpp:70
#, c-format
msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr "Effet appliqué : %s supprimer le décalage = %s, normaliser l'amplitude = %s"
-#: effects/Normalize.cpp:74
-#: effects/Normalize.cpp:75
-msgid "false"
-msgstr "faux"
-
#. i18n-hint: true here means that the option was
+#. * selected. Opposite false if not selected
#: effects/Normalize.cpp:74
#: effects/Normalize.cpp:75
msgid "true"
@@ -5453,156 +5832,166 @@ msgstr "vrai"
msgid ", maximum amplitude = %.1f dB"
msgstr ", amplitude maximum = %.1f dB"
-#: effects/Normalize.cpp:113
+#: effects/Normalize.cpp:327
msgid "Normalize"
msgstr "Normaliser"
-#: effects/Normalize.cpp:351
+#: effects/Normalize.cpp:355
msgid "Remove any DC offset (center on 0.0 vertically)"
-msgstr ""
+msgstr "Supprimer tout décalage DC (centrer verticalement à 0.0)"
-#: effects/Normalize.cpp:354
-#, fuzzy
+#: effects/Normalize.cpp:358
msgid "Normalize maximum amplitude to:"
-msgstr "Normaliser l'amplitude maximum à "
+msgstr "Normaliser l'amplitude maximum à :"
-#: effects/Normalize.cpp:361
+#: effects/Normalize.cpp:366
msgid "-"
msgstr "-"
-#: effects/Normalize.cpp:367
+#: effects/Normalize.cpp:371
msgid "Maximum amplitude dB"
-msgstr ""
+msgstr "Amplitude maximale dB"
-#: effects/Normalize.h:32
+#: effects/Normalize.h:33
msgid "Normalize..."
-msgstr "Normaliser..."
+msgstr "Normaliser......"
-#: effects/Normalize.h:41
+#: effects/Normalize.h:49
msgid "Normalizing..."
-msgstr "Normalisation..."
+msgstr "Normalisation"
#: effects/Phaser.cpp:65
#, c-format
msgid "Applied effect: %s %d stages, %.0f%% wet, frequency = %.1f Hz, start phase = %.0f deg, depth = %d, feedback = %.0f%%"
msgstr "Effet appliqué: %s %d phases, %.0f%% maxi, fréquence = %.1f Hz, phase de départ = %.0f deg, amplitude = %d, retour = %.0f%%"
-#: effects/Phaser.cpp:222
+#: effects/Phaser.cpp:228
msgid "Stages:"
msgstr "Phases :"
-#: effects/Phaser.cpp:229
+#: effects/Phaser.cpp:231
msgid "Stages"
-msgstr ""
+msgstr "Phases"
-#: effects/Phaser.cpp:231
+#: effects/Phaser.cpp:236
msgid "Dry/Wet:"
-msgstr ""
+msgstr "Original/Modifié :"
-#: effects/Phaser.cpp:234
+#: effects/Phaser.cpp:239
msgid "Dry Wet"
-msgstr ""
+msgstr "Original Modifié"
-#: effects/Phaser.cpp:264
-#: effects/Wahwah.cpp:221
+#: effects/Phaser.cpp:244
+#: effects/Wahwah.cpp:222
msgid "LFO Frequency (Hz):"
msgstr "Fréquence LFO (Hz) :"
-#: effects/Phaser.cpp:239 effects/Wahwah.cpp:224
+#: effects/Phaser.cpp:247
+#: effects/Wahwah.cpp:225
msgid "LFO frequency in hertz"
-msgstr ""
+msgstr "Fréquence LFO en hertz"
-#: effects/Phaser.cpp:280
-#: effects/Wahwah.cpp:237
+#: effects/Phaser.cpp:252
+#: effects/Wahwah.cpp:230
msgid "LFO Start Phase (deg.):"
msgstr "Phase de départ LFO (deg.) :"
-#: effects/Phaser.cpp:244 effects/Wahwah.cpp:229
+#: effects/Phaser.cpp:255
+#: effects/Wahwah.cpp:233
msgid "LFO start phase in degrees"
-msgstr ""
+msgstr "Phase de départ LFO en degrés"
-#: effects/Phaser.cpp:296
+#: effects/Phaser.cpp:260
msgid "Depth:"
msgstr "Profondeur :"
-#: effects/Phaser.cpp:249 effects/Wahwah.cpp:234
+#: effects/Phaser.cpp:263
+#: effects/Wahwah.cpp:241
msgid "Depth in percent"
-msgstr ""
+msgstr "Profondeur en pourcentage"
-#: effects/Phaser.cpp:312
+#: effects/Phaser.cpp:268
msgid "Feedback (%):"
msgstr "Retour (%) :"
-#: effects/Phaser.cpp:254
+#: effects/Phaser.cpp:271
msgid "Feedback in percent"
-msgstr ""
+msgstr "Retour en pourcentage"
-#: effects/Phaser.h:38
+#: effects/Phaser.h:45
msgid "Phaser..."
msgstr "Phaser..."
-#: effects/Phaser.h:46
+#: effects/Phaser.h:59
msgid "Applying Phaser"
msgstr "Application de Phaser"
#: effects/Repair.cpp:99
-msgid "The Repair effect is intended to be used on very short sections of damaged audio (up to 128 samples).\n"
+msgid ""
+"The Repair effect is intended to be used on very short sections of damaged audio (up to 128 samples).\n"
"\n"
"Zoom in and select a tiny fraction of a second to repair."
-msgstr "L'effet Réparation est destiné à être utilisé avec de très courtes sections d'audio endommagé (jusqu'à 128 échantillons).\n"
+msgstr ""
+"L'effet réparation est destiné à être utilisé avec de très courtes sections d'audio endommagé (jusqu'à 128 échantillons).\n"
"\n"
-"Zoomer et sélectionner une courte fraction de seconde à réparer."
+"Zoommer et selectionner une courte fraction de seconde à réparer."
#: effects/Repair.cpp:105
-msgid "Repair works by using audio data outside the selection region.\n"
+msgid ""
+"Repair works by using audio data outside the selection region.\n"
"\n"
"Please select a region that has audio touching at least one side of it.\n"
"\n"
"The more surrounding audio, the better it performs."
msgstr ""
+"Réparation utilise des données audio situées hors de la sélection.\n"
+"\n"
+"Séectionnez une région avec de l'audio touchant au moins un de ses côtés.\n"
+"\n"
+"Plus il y a d'audio alentour, meilleur est le résultat."
-#: effects/Repair.h:37
+#: effects/Repair.h:43
msgid "Repairing damaged audio"
msgstr "Réparation de l'audio endommagé"
-#: effects/Repeat.cpp:49
+#: effects/Repeat.cpp:50
#, c-format
msgid "Repeated %d times"
msgstr "Répété %d fois"
-#: effects/Repeat.cpp:75
+#: effects/Repeat.cpp:76
msgid "Tracks are too long to repeat the selection."
msgstr "Les pistes sont trop longues pour pouvoir répéter la sélection."
-#: effects/Repeat.cpp:76
-#: effects/Repeat.cpp:80
+#: effects/Repeat.cpp:77
+#: effects/Repeat.cpp:184
msgid "Repeat"
msgstr "Répéter"
-#: effects/Repeat.cpp:211
-#, fuzzy
+#: effects/Repeat.cpp:209
msgid "Number of times to repeat:"
msgstr "Nombre de répétitions :"
-#: effects/Repeat.cpp:220
+#: effects/Repeat.cpp:218
msgid "New selection length: hh:mm:ss"
-msgstr ""
+msgstr "Longueur de la nouvelle sélection : hh:mm:ss"
-#: effects/Repeat.cpp:207
-#: effects/Repeat.cpp:237
+#: effects/Repeat.cpp:250
msgid "New selection length: "
msgstr "Longueur de la nouvelle sélection :"
#. i18n-hint: Name of time display format that shows time in hours, minutes
-#: widgets/TimeTextCtrl.cpp:270
+#. * and seconds
+#: effects/Repeat.cpp:259
+#: widgets/TimeTextCtrl.cpp:271
msgid "hh:mm:ss"
msgstr "hh:mm:ss"
-#: effects/Repeat.h:32
+#: effects/Repeat.h:33
msgid "Repeat..."
msgstr "Répéter..."
-#: effects/Repeat.h:40
+#: effects/Repeat.h:47
msgid "Performing Repeat"
msgstr "Répétition en cours"
@@ -5610,7 +5999,7 @@ msgstr "Répétition en cours"
msgid "Reverse"
msgstr "Inverser sens"
-#: effects/Reverse.h:38
+#: effects/Reverse.h:44
msgid "Reversing"
msgstr "Inversion du sens"
@@ -5622,16 +6011,16 @@ msgstr "Générateur de silence"
msgid "Silence..."
msgstr "Silence..."
-#: effects/Silence.h:42
+#: effects/Silence.h:48
msgid "Generating Silence"
msgstr "Génération du silence"
-#: effects/Silence.h:47
+#: effects/Silence.h:53
#, c-format
msgid "Applied effect: Generate Silence, %.6lf seconds"
msgstr "Effet appliqué : Générer un silence de, %.6lf secondes"
-#: effects/SimplePairedTwoTrack.h:120
+#: effects/SimplePairedTwoTrack.h:115
msgid "Sorry, this effect cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr "Désolé, cet effet ne peut être réalisé sur des pistes stéréo dans lesquelles les canaux individuels de la piste ne correspondent pas."
@@ -5644,9 +6033,11 @@ msgid "SpikeCleaner by Lynn Allan"
msgstr "Nettoyeur de pic par Lynn Allan"
#: effects/SpikeCleaner.cpp:165
-msgid "Max Spike Duration (milliseconds): \n"
+msgid ""
+"Max Spike Duration (milliseconds): \n"
"(99999 or greater is off)"
-msgstr "Durée maximale de pic (millisecondes): \n"
+msgstr ""
+"Durée maximale de pic (millisecondes): \n"
"(inférieure à 99999)"
#: effects/SpikeCleaner.cpp:178
@@ -5661,124 +6052,122 @@ msgstr "Nettoyeur de pic..."
msgid "Applying Spike Cleaner..."
msgstr "Application de Nettoyeur de pic..."
-#: Menus.cpp:358
-#: Menus.cpp:564
#: effects/StereoToMono.h:23
msgid "&Stereo to Mono"
msgstr "&Stéréo vers mono"
-#: effects/StereoToMono.h:32
+#: effects/StereoToMono.h:38
msgid "Applying Stereo to Mono"
msgstr "Appliquer stéréo vers mono"
#: effects/TimeScale.cpp:140
msgid "Time Scale"
-msgstr ""
+msgstr "Variation progressive de la hauteur"
#: effects/TimeScale.cpp:176
msgid "Sliding Time Scale/Pitch Shift"
-msgstr ""
+msgstr "Variation progressive de la hauteur"
#: effects/TimeScale.cpp:178
msgid "using SBSMS, by Clayton Otey"
-msgstr ""
+msgstr "utilise SBSMS, par Clayton Otey"
#: effects/TimeScale.cpp:187
msgid "Initial Tempo Change (%):"
-msgstr ""
+msgstr "Changement initial du tempo (%):"
#: effects/TimeScale.cpp:191
msgid "Final Tempo Change (%):"
-msgstr ""
+msgstr "Changement final du tempo (%) :"
#: effects/TimeScale.cpp:202
msgid "Initial Tempo Change (%)"
-msgstr ""
+msgstr "Changement initial du tempo (%)"
#: effects/TimeScale.cpp:211
msgid "Final Tempo Change (%)"
-msgstr ""
+msgstr "Changement final du tempo (%)"
#: effects/TimeScale.cpp:219
msgid "Initial Pitch Shift (semitones) [-12 to 12]:"
-msgstr ""
+msgstr "Ajustement de hauteur initial (demitons) [-12 Ã 12] :"
#: effects/TimeScale.cpp:223
msgid "Final Pitch Shift (semitones) [-12 to 12]:"
-msgstr ""
+msgstr "Ajustement de hauteur final(demitons) [-12 Ã 12] :"
#: effects/TimeScale.h:33
msgid "Sliding Time Scale/Pitch Shift..."
-msgstr ""
+msgstr "Variation progressive de la hauteur..."
#: effects/TimeScale.h:47
msgid "Changing Tempo/Pitch"
-msgstr ""
+msgstr "Changement de tempo/hauteur"
-#: effects/ToneGen.cpp:66
+#: effects/ToneGen.cpp:61
#, c-format
msgid "Applied effect: Generate %s wave %s, frequency = %.2f Hz, amplitude = %.2f, %.6lf seconds"
msgstr "Effet appliqué : Générer %s %s onde, fréquence = %.2f Hz, amplitude = %.2f, %.6lf secondes"
-#: effects/ToneGen.cpp:75
-#: widgets/Meter.cpp:379
+#: effects/ToneGen.cpp:69
+#: widgets/Meter.cpp:412
msgid "Linear"
msgstr "Linéaire"
-#: effects/ToneGen.cpp:76
+#: effects/ToneGen.cpp:70
msgid "Logarithmic"
msgstr "Logarithmique"
-#: effects/ToneGen.cpp:78
+#: effects/ToneGen.cpp:71
msgid "Chirp Generator"
msgstr "Générateur de sifflet"
-#: effects/ToneGen.cpp:78
+#: effects/ToneGen.cpp:71
msgid "Tone Generator"
msgstr "Générateur de son"
-#: effects/ToneGen.cpp:79
+#: effects/ToneGen.cpp:72
msgid "Sine"
msgstr "Sinusoïde"
-#: effects/ToneGen.cpp:80
+#: effects/ToneGen.cpp:73
msgid "Square"
-msgstr "Carré"
+msgstr "Carrée"
-#: effects/ToneGen.cpp:81
+#: effects/ToneGen.cpp:74
msgid "Sawtooth"
-msgstr "Dents de scie"
+msgstr "Dent de scie"
-#: effects/ToneGen.cpp:82
+#: effects/ToneGen.cpp:75
msgid "Square, no alias"
-msgstr ""
+msgstr "Carrée, lissée"
-#: effects/ToneGen.cpp:327
-#: effects/ToneGen.cpp:363
+#: effects/ToneGen.cpp:277
+#: effects/ToneGen.cpp:314
msgid "Frequency (Hz)"
msgstr "Fréquence (Hz) :"
-#: effects/ToneGen.cpp:354
+#: effects/ToneGen.cpp:305
msgid "Waveform:"
msgstr "Forme d'onde :"
-#: effects/ToneGen.cpp:358
+#: effects/ToneGen.cpp:314
msgid "Frequency Hertz Start"
-msgstr ""
+msgstr "Fréquence Hertz de début"
-#: effects/ToneGen.cpp:359
+#: effects/ToneGen.cpp:315
msgid "Frequency Hertz End"
-msgstr ""
+msgstr "Fréquence Hertz de fin"
-#: effects/ToneGen.cpp:360
+#: effects/ToneGen.cpp:316
msgid "Amplitude Start"
-msgstr ""
+msgstr "Amplitude de début"
-#: effects/ToneGen.cpp:361
+#: effects/ToneGen.cpp:317
msgid "Amplitude End"
-msgstr ""
+msgstr "Amplitude de fin"
-#: effects/ToneGen.cpp:372
+#: effects/ToneGen.cpp:322
msgid "Interpolation:"
msgstr "Interpolation :"
@@ -5790,277 +6179,344 @@ msgstr "Sifflet..."
msgid "Tone..."
msgstr "Son..."
-#: effects/ToneGen.h:48
+#: effects/ToneGen.h:54
msgid "Generating Chirp"
-msgstr "Génération d'un sifflet"
+msgstr "Géneration d'un sifflet"
-#: effects/ToneGen.h:48
+#: effects/ToneGen.h:54
msgid "Generating Tone"
-msgstr "Génération d'un son"
+msgstr "Géneration d'un son"
-#: effects/TruncSilence.cpp:113
+#: effects/TruncSilence.cpp:133
msgid "All tracks must have the same sample rate"
-msgstr "Toutes les pistes doivent avoir le même taux d'échantillonnage."
+msgstr "Toutes les pistes doivent avoir la même fréquence d'échantillonnage."
-#: effects/TruncSilence.cpp:113
-#: effects/TruncSilence.cpp:322
+#: effects/TruncSilence.cpp:133
+#: effects/TruncSilence.cpp:443
msgid "Truncate Silence"
msgstr "Tronquer le silence"
-#: effects/TruncSilence.cpp:346
-msgid "Max silence duration:"
-msgstr "Durée maxi du silence :"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr "par Lynn Allan && Philip Van Baren"
+
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
+msgstr "Durée mini du silence :"
-#: effects/TruncSilence.cpp:349
-#: prefs/AudioIOPrefs.cpp:190
-#: prefs/AudioIOPrefs.cpp:193
+#: effects/TruncSilence.cpp:470
+#: effects/TruncSilence.cpp:474
+#: prefs/MidiIOPrefs.cpp:169
+#: prefs/MidiIOPrefs.cpp:171
msgid "milliseconds"
msgstr "millisecondes"
-#: effects/TruncSilence.cpp:351
+#: effects/TruncSilence.cpp:471
+msgid "Max silence duration:"
+msgstr "Durée maxi du silence :"
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr "Compression du silence :"
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ": 1"
+
+#: effects/TruncSilence.cpp:480
msgid "Threshold for silence:"
msgstr "Seuil de silence :"
-#: effects/TruncSilence.cpp:376
-msgid " Duration must be at least 1 millisecond"
-msgstr "La durée doit être d'au moins une milliseconde"
+#: effects/TruncSilence.cpp:506
+msgid ""
+" Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
+msgstr ""
+"La durée doit être d'au moins une milliseconde\n"
+"le rapport de compression doit être d'au moins 1:1"
-#: effects/TruncSilence.h:28
+#: effects/TruncSilence.h:29
msgid "Truncate Silence..."
msgstr "Tronquer le silence"
-#: effects/TruncSilence.h:36
+#: effects/TruncSilence.h:43
msgid "Truncating Silence..."
msgstr "Tronquer du silence"
-#: effects/VST/VSTEffect.cpp:165
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "Désolé, les effets VST ne peuvent être réalisés sur des pistes stéréo dans lesquelles les canaux individuels de la piste ne correspondent pas."
+#: effects/VST/VSTEffect.cpp:256
+#: effects/ladspa/LadspaEffect.cpp:590
+#: effects/lv2/LV2Effect.cpp:798
+msgid "Effect Settings"
+msgstr "Réglages de l'effet"
-#: effects/VST/VSTEffect.cpp:180
-msgid "Can't process replacing"
-msgstr "Impossible de remplacer"
+#: effects/VST/VSTEffect.cpp:336
+#: effects/ladspa/LadspaEffect.cpp:555
+#: effects/ladspa/LadspaEffect.cpp:563
+#: prefs/QualityPrefs.cpp:74
+#: prefs/TracksPrefs.cpp:48
+msgid "None"
+msgstr "Aucun"
+
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr "Présélections :"
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr "Charger"
+
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr "Enregistrer"
+
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr "Erreur de chargement du programme"
+
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
-#: effects/VST/VSTEffect.cpp:403
-msgid "VST Plug-in parameters:"
-msgstr "Paramètres des modules VST (plugins)"
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr "Effet en cours : "
+
+#: effects/VST/VSTEffect.cpp:1016
+#, fuzzy
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr "Pour le tracé du spectre, toutes les pistes sélectionnées doivent avoir la même fréquence d'échantillonnage."
+
+#: effects/VST/VSTEffect.cpp:1021
+#, fuzzy
+msgid "Both channels of a stereo track must be the same length."
+msgstr "Pour le tracé du spectre, toutes les pistes sélectionnées doivent avoir la même fréquence d'échantillonnage."
#: effects/Wahwah.cpp:61
#, c-format
msgid "Applied effect: %s frequency = %.1f Hz, start phase = %.0f deg, depth = %.0f%%, resonance = %.1f, frequency offset = %.0f%%"
msgstr "Effet appliqué : %s fréquence = %.1f Hz, phase de départ = %.0f deg, amplitude = %.0f%%, résonnance = %.1f, fréquence offset = %.0f%%"
-#: effects/Wahwah.cpp:72
+#: effects/Wahwah.cpp:203
msgid "Wahwah"
msgstr "Wahwah"
-#: effects/Wahwah.cpp:253
+#: effects/Wahwah.cpp:238
msgid "Depth (%):"
msgstr "Profondeur (%) :"
-#: effects/Wahwah.cpp:269
+#: effects/Wahwah.cpp:246
msgid "Resonance:"
msgstr "Résonnance:"
-#: effects/Wahwah.cpp:239
+#: effects/Wahwah.cpp:249
msgid "Resonance"
-msgstr ""
+msgstr "Résonnance"
-#: effects/Wahwah.cpp:285
+#: effects/Wahwah.cpp:254
msgid "Wah Frequency Offset (%):"
-msgstr "Fréquence Wah (%) :"
+msgstr "Fréquence Wah (%):"
-#: effects/Wahwah.cpp:244
+#: effects/Wahwah.cpp:257
msgid "Wah frequency offset in percent"
-msgstr ""
+msgstr "Décallage de fréquence Wah en pourcentage"
-#: effects/Wahwah.h:34
+#: effects/Wahwah.h:41
msgid "Wahwah..."
msgstr "Wahwah..."
-#: effects/Wahwah.h:42
+#: effects/Wahwah.h:55
msgid "Applying Wahwah"
msgstr "Application de Wahwah"
-#: effects/audiounits/AudioUnitEffect.cpp:133
-#: effects/ladspa/LadspaEffect.cpp:169
+#: effects/audiounits/AudioUnitEffect.cpp:139
+#: effects/ladspa/LadspaEffect.cpp:178
+#: effects/lv2/LV2Effect.cpp:193
#, c-format
msgid "Performing Effect: %s"
msgstr "Effet en cours : %s"
-#: effects/ladspa/LadspaEffect.cpp:189
+#: effects/ladspa/LadspaEffect.cpp:198
+#: effects/lv2/LV2Effect.cpp:213
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr "Désolé, les modules d'effet (plugins) ne peuvent être réalisés sur des pistes stéréo dans lesquelles les canaux individuels de la piste ne correspondent pas."
-#: effects/ladspa/LadspaEffect.cpp:573
-#: effects/ladspa/LadspaEffect.cpp:581
-#: prefs/GUIPrefs.cpp:51
-#: prefs/QualityPrefs.cpp:72
-msgid "None"
-msgstr "Aucun"
-
-#: effects/ladspa/LadspaEffect.cpp:575
-#: effects/vamp/VampEffect.cpp:384
+#: effects/ladspa/LadspaEffect.cpp:557
+#: effects/lv2/LV2Effect.cpp:773
+#: effects/vamp/VampEffect.cpp:371
msgid "Author: "
msgstr "Auteur :"
-#: effects/ladspa/LadspaEffect.cpp:608
-msgid "Effect Settings"
-msgstr "Réglages de l'effet"
-
-#: effects/ladspa/LadspaEffect.cpp:699
+#: effects/ladspa/LadspaEffect.cpp:685
+#: effects/ladspa/LadspaEffect.cpp:688
+#: effects/lv2/LV2Effect.cpp:809
+#: effects/lv2/LV2Effect.cpp:812
msgid "Length (seconds)"
msgstr "Durée (secondes)"
-#: effects/lv2/LV2Effect.cpp:850 effects/lv2/LV2Effect.cpp:853
+#: effects/lv2/LV2Effect.cpp:824
+#: effects/lv2/LV2Effect.cpp:827
msgid "Note length (seconds)"
-msgstr ""
+msgstr "Durée de la note (secondes)"
-#: effects/lv2/LV2Effect.cpp:861 effects/lv2/LV2Effect.cpp:864
+#: effects/lv2/LV2Effect.cpp:835
+#: effects/lv2/LV2Effect.cpp:838
msgid "Note velocity"
-msgstr ""
+msgstr "Vélocité de note"
-#: effects/lv2/LV2Effect.cpp:872 effects/lv2/LV2Effect.cpp:875
+#: effects/lv2/LV2Effect.cpp:846
+#: effects/lv2/LV2Effect.cpp:849
msgid "Note key"
-msgstr ""
+msgstr "Note"
-#: effects/nyquist/Nyquist.cpp:252
+#: effects/nyquist/Nyquist.cpp:73
msgid "Applying Nyquist Effect..."
msgstr "Application d'effet Nyquist..."
-#: effects/nyquist/Nyquist.cpp:259
-#: effects/nyquist/Nyquist.cpp:321
+#: effects/nyquist/Nyquist.cpp:91
+#: effects/nyquist/Nyquist.cpp:401
msgid "Nyquist Prompt..."
msgstr "Console Nyquist..."
-#: effects/nyquist/Nyquist.cpp:322
+#: effects/nyquist/Nyquist.cpp:402
msgid "Enter Nyquist Command: "
msgstr "Entrer une commande Nyquist :"
-#: effects/nyquist/Nyquist.cpp:412
+#: effects/nyquist/Nyquist.cpp:515
msgid "Sorry, cannot apply effect on stereo tracks where the tracks don't match."
msgstr "Désolé, l'effet ne peut être réalisé sur des pistes stéréo dans lesquelles les canaux individuels de la piste ne correspondent pas."
-#: effects/nyquist/Nyquist.cpp:440
+#: effects/nyquist/Nyquist.cpp:557
msgid "Nyquist"
msgstr "Nyquist"
-#: effects/nyquist/Nyquist.cpp:441
+#: effects/nyquist/Nyquist.cpp:558
msgid "Nyquist Output: "
msgstr "Console Nyquist"
-#: effects/nyquist/Nyquist.cpp:598
-#: effects/nyquist/Nyquist.cpp:609
+#: effects/nyquist/Nyquist.cpp:656
+#: effects/nyquist/Nyquist.cpp:665
msgid "Nyquist returned the value:"
msgstr "Nyquist a retourné la valeur :"
-#: effects/nyquist/Nyquist.cpp:651
+#: effects/nyquist/Nyquist.cpp:702
msgid "Nyquist did not return audio.\n"
msgstr "Nyquist n'a pas retourné d'audio.\n"
-#: effects/nyquist/Nyquist.cpp:662
+#: effects/nyquist/Nyquist.cpp:711
msgid "Nyquist returned too many audio channels.\n"
msgstr "Nyquist a retourné trop de canaux audio.\n"
-#: effects/vamp/VampEffect.cpp:75
+#: effects/vamp/VampEffect.cpp:81
#, c-format
msgid "Extracting features: %s"
msgstr "Fonctions d'extraction : %s"
-#: effects/vamp/VampEffect.cpp:106
+#: effects/vamp/VampEffect.cpp:107
msgid "Sorry, Vamp Plug-ins cannot be run on stereo tracks where the individual channels of the track do not match."
msgstr "Désolé, les modules Vamp ne peuvent être réalisés sur des pistes stéréo dans lesquelles les canaux individuels de la piste ne correspondent pas."
-#: effects/vamp/VampEffect.cpp:120
+#: effects/vamp/VampEffect.cpp:121
msgid "Sorry, failed to load Vamp Plug-in."
msgstr "Désolé, échec au chargement du module (plugin) Vamp."
-#: effects/vamp/VampEffect.cpp:228
+#: effects/vamp/VampEffect.cpp:207
msgid "Sorry, Vamp Plug-in failed to initialize."
msgstr "Désolé, le module (plugin) Vamp n'a pas pu démarrer."
-#: effects/vamp/VampEffect.cpp:376
+#: effects/vamp/VampEffect.cpp:363
msgid " - Vamp audio analysis plugin"
msgstr " - Module (plugin) d'analyse audio Vamp"
-#: effects/vamp/VampEffect.cpp:423
+#: effects/vamp/VampEffect.cpp:399
msgid "Plugin Settings"
msgstr "Réglage du module"
-#: effects/vamp/VampEffect.cpp:446
+#: effects/vamp/VampEffect.cpp:418
+#: effects/vamp/VampEffect.cpp:424
msgid "Program"
msgstr "Programme"
-#: export/Export.cpp:469
+#: export/Export.cpp:468
msgid "All the selected audio is muted."
-msgstr ""
+msgstr "Toute la sélection audio est muette."
-#: export/Export.cpp:471
+#: export/Export.cpp:470
msgid "All the audio is muted."
-msgstr ""
+msgstr "Tout l'audio est muet."
-#: export/Export.cpp:451
+#: export/Export.cpp:526
msgid "Export File"
msgstr "Exporter le fichier"
-#: export/Export.cpp:459
+#: export/Export.cpp:535
msgid "&Options..."
msgstr "&Options..."
-#: export/Export.cpp:485
+#: export/Export.cpp:576
msgid "Are you sure you want to save the file as \""
msgstr "Etes-vous sûr(e) d'enregistrer le fichier sous \""
-#: export/Export.cpp:501
+#: export/Export.cpp:596
#, c-format
-msgid "You are about to save a %s file with the name \"%s\".\n"
+msgid ""
+"You are about to save a %s file with the name \"%s\".\n"
"\n"
"Normally these files end in \".%s\", and some programs will not open files with nonstandard extensions.\n"
"\n"
"Are you sure you want to save the file under this name?"
-msgstr "Vous allez enregistrer le fichier %s sous le nom \"%s\".\n"
+msgstr ""
+"Vous allez enregistrer le fichier %s sous le nom \"%s\".\n"
"\n"
"Normalement, ces fichiers se terminent par \"%s\", et plusieurs programmes ne peuvent ouvrir de fichiers \n"
"ayant des extensions non standard.\n"
"\n"
"Etes-vous sûr(e) de vouloir sauvegarder le fichier sous ce nom ?"
-#: export/Export.cpp:522
+#: export/Export.cpp:617
#, c-format
msgid "A file named \"%s\" already exists. Replace?"
msgstr "Un fichier nommé \"%s\" existe déjà . Le remplacer ?"
-#: export/Export.cpp:604
+#: export/Export.cpp:719
msgid "Your tracks will be mixed down to two stereo channels in the exported file."
-msgstr "Dans le fichier exporté, vos pistes seront mélangées en deux canaux stéréo."
+msgstr "Dans le fichier exporté, vos pistes seront mélangées en deux canaux stéréo"
-#: export/Export.cpp:609
+#: export/Export.cpp:724
msgid "Your tracks will be mixed down to a single mono channel in the exported file."
-msgstr "Dans le fichier exporté, vos pistes seront mélangées en un canal mono."
+msgstr "Dans le fichier exporté, vos pistes seront mélangées en un canal mono "
-#: export/Export.cpp:619
+#: export/Export.cpp:735
msgid "Advanced Mixing Options"
msgstr "Options de mixage avancées"
-#: export/Export.cpp:821
+#: export/Export.cpp:943
#, c-format
msgid "Channel: %2d"
-msgstr "Canaux : %2d"
+msgstr "Canal : %2d"
-#: export/Export.cpp:945
+#: export/Export.cpp:1058
msgid " - Left"
msgstr " - Gauche"
-#: export/Export.cpp:946
+#: export/Export.cpp:1060
msgid " - Right"
msgstr " - Droit"
#: export/Export.cpp:1082
msgid "Mixer Panel"
-msgstr ""
+msgstr "Panneau de mixage"
-#: export/Export.cpp:976
-#: export/Export.cpp:1021
+#: export/Export.cpp:1088
+#: export/Export.cpp:1135
#, c-format
msgid "Output Channels: %2d"
msgstr "Canaux de sortie : %2d"
@@ -6069,585 +6525,693 @@ msgstr "Canaux de sortie : %2d"
msgid "Specify Command Line Encoder"
msgstr "Spécifier l'encodeur à ligne de commande"
-#: export/ExportCL.cpp:70
+#: export/ExportCL.cpp:68
msgid "Command Line Export Setup"
msgstr "Réglage de l'exportation en ligne de commande"
-#: export/ExportCL.cpp:75
+#: export/ExportCL.cpp:73
msgid "Command:"
msgstr "Commande :"
-#: export/ExportCL.cpp:80
+#: export/ExportCL.cpp:78
msgid "Show output"
msgstr "Montrer la sortie"
-#: export/ExportCL.cpp:87
+#: export/ExportCL.cpp:85
#, c-format
msgid "Data will be piped to standard in. \"%f\" will be replaced with output filename selected."
-msgstr ""
+msgstr "Data will be piped to standard in. \"%f\" sera remplacé par le nom de fichier final sélectionné."
#: export/ExportCL.cpp:220
msgid "(external program)"
msgstr "(programme externe)"
-#: export/ExportCL.cpp:250
-#: export/ExportPCM.cpp:367
+#: export/ExportCL.cpp:286
+#: export/ExportPCM.cpp:492
#, c-format
msgid "Cannot export audio to %s"
msgstr "Impossible d'exporter l'audio vers %s"
-#: export/ExportCL.cpp:324
+#: export/ExportCL.cpp:360
msgid "Exporting the selected audio using command-line encoder"
msgstr "Exportation de la sélection audio en utilisant un encodeur à ligne de commande"
-#: export/ExportCL.cpp:325
+#: export/ExportCL.cpp:361
msgid "Exporting the entire project using command-line encoder"
msgstr "Exportation du projet entier en utilisant un encodeur à ligne de commande"
-#: export/ExportCL.cpp:389
+#: export/ExportCL.cpp:423
msgid "Command Output"
-msgstr "Sortie de commande"
+msgstr "Commande"
+
+#: export/ExportFFmpeg.cpp:61
+msgid ""
+"Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries."
+msgstr ""
+"Il est nécessaire de configurer correctement FFmpeg.\n"
+"Vous pouvez le configurer dans Préférences >Librairies."
-#: export/ExportFFmpeg.cpp:59
-msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
msgstr ""
-#: export/ExportFFmpeg.cpp:394
+#: export/ExportFFmpeg.cpp:232
+#, fuzzy
+msgid ""
+"Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
+msgstr ""
+"Une configuration FFmpeg correcte est nécessaire. Vous pouvez le configurer dans Préférences->Import/Export.\n"
+"Cependant le support AMR n'est pas disponible avec notre installateur FFmpeg. Vous devrez compiler FFmpeg vous-même."
+
+#: export/ExportFFmpeg.cpp:433
#, c-format
-msgid "FFmpeg cannot find audio codec 0x%x.\n"
+msgid ""
+"FFmpeg cannot find audio codec 0x%x.\n"
"Support for this codec is probably not compiled in."
msgstr ""
+"FFmpeg ne peut pas trouver le codec audio 0x%x.\n"
+"Le support de ce codec n'est probablement pas compilé."
-#: export/ExportFFmpeg.cpp:614
+#: export/ExportFFmpeg.cpp:655
#, c-format
msgid "Attempted to export %d channels, but max. channels for selected output format is %d"
-msgstr ""
+msgstr "Tentative d'exporter %d canaux, mais le maximum de canaux est de %d pour le format sélectionné"
-#: export/ExportFFmpeg.cpp:643
+#: export/ExportFFmpeg.cpp:684
#, c-format
msgid "Exporting selected audio as %s"
-msgstr ""
+msgstr "Exporter la sélection audio sous %s"
-#: export/ExportFFmpeg.cpp:644
+#: export/ExportFFmpeg.cpp:685
#, c-format
msgid "Exporting entire file as %s"
-msgstr ""
+msgstr "Exporter le fichier entier à %s"
-#: export/ExportMP3.cpp:1918
+#: export/ExportFFmpeg.cpp:748
+#: export/ExportMP3.cpp:1777
msgid "Invalid sample rate"
-msgstr "Taux d'échantillonnage invalide"
+msgstr "Fréquence d'échantillonnage invalide."
-#: export/ExportFFmpeg.cpp:720
+#: export/ExportFFmpeg.cpp:761
#, c-format
-msgid "The project sample rate (%d) is not supported by the current output\n"
+msgid ""
+"The project sample rate (%d) is not supported by the current output\n"
"file format. "
msgstr ""
+"La fréquence d'échantillonnage du projet (%d) n'est pas supporté par le format\n"
+"de sortie actuel."
-#: export/ExportFFmpeg.cpp:723
+#: export/ExportFFmpeg.cpp:764
#, c-format
-msgid "The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
+msgid ""
+"The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
"supported by the current output file format. "
msgstr ""
+"La combinaison de fréquence d'échantillonnage du projet (%d) et de définition (%d kbps)\n"
+"n'est pas supporté par le format de sortie actuel."
-#: export/ExportMP3.cpp:1937
+#: export/ExportFFmpeg.cpp:767
+#: export/ExportMP3.cpp:1796
msgid "You may resample to one of the rates below."
msgstr "Vous devez rééchantillonner à un des taux ci-dessous."
-#: export/ExportMP3.cpp:1960
+#: export/ExportFFmpeg.cpp:795
+#: export/ExportMP3.cpp:1819
msgid "Sample Rates"
-msgstr "Taux d'échantillonnage"
+msgstr "Taux d'échantillonnage :"
#: export/ExportFFmpegDialogs.cpp:93
msgid "Specify AC3 Options"
-msgstr ""
+msgstr "Spécifier les options AC3"
#: export/ExportFFmpegDialogs.cpp:112
msgid "AC3 Export Setup"
-msgstr ""
-
-#: export/ExportMP2.cpp:133
+msgstr "Réglage de l'exportation AC3"
+
+#: export/ExportFFmpegDialogs.cpp:116
+#: export/ExportFFmpegDialogs.cpp:234
+#: export/ExportFFmpegDialogs.cpp:298
+#: export/ExportFFmpegDialogs.cpp:364
+#: export/ExportFFmpegDialogs.cpp:926
+#: export/ExportMP2.cpp:131
msgid "Bit Rate:"
msgstr "Débit :"
#: export/ExportFFmpegDialogs.cpp:157
msgid "Specify AAC Options"
-msgstr ""
+msgstr "Spécifier les options AAC"
#: export/ExportFFmpegDialogs.cpp:168
msgid "AAC Export Setup"
-msgstr ""
+msgstr "Réglage de l'exportation AAC"
+
+#: export/ExportFFmpegDialogs.cpp:172
+#: export/ExportFFmpegDialogs.cpp:929
+#: export/ExportOGG.cpp:84
+msgid "Quality:"
+msgstr "Qualité :"
#: export/ExportFFmpegDialogs.cpp:211
msgid "Specify AMR-NB Options"
-msgstr ""
+msgstr "Spécifier les options AMR-NB"
#: export/ExportFFmpegDialogs.cpp:230
msgid "AMR-NB Export Setup"
-msgstr ""
+msgstr "Réglage de l'exportation AMR-NB"
#: export/ExportFFmpegDialogs.cpp:275
msgid "Specify AMR-WB Options"
-msgstr ""
+msgstr "Spécifier les options AMR-WB"
#: export/ExportFFmpegDialogs.cpp:294
msgid "AMR-WB Export Setup"
-msgstr ""
+msgstr "Réglage de l'exportation AMR-WB"
#: export/ExportFFmpegDialogs.cpp:341
msgid "Specify WMA Options"
-msgstr ""
+msgstr "Spécifier les options WMA"
#: export/ExportFFmpegDialogs.cpp:360
msgid "WMA Export Setup"
-msgstr ""
+msgstr "Réglage de l'exportation WMA"
-#: export/ExportFFmpegDialogs.cpp:488
+#: export/ExportFFmpegDialogs.cpp:491
#, c-format
msgid "Overwrite preset '%s'?"
-msgstr ""
+msgstr "Ecraser les présélections '%s'?"
-#: export/ExportFFmpegDialogs.cpp:489
+#: export/ExportFFmpegDialogs.cpp:492
msgid "Confirm Overwrite"
-msgstr ""
+msgstr "Confirmer l'effacement"
-#: export/ExportFFmpegDialogs.cpp:501
+#: export/ExportFFmpegDialogs.cpp:504
msgid "Please select format before saving a profile"
-msgstr ""
+msgstr "Sélectionnez le format avant d'enregistrer le profil"
-#: export/ExportFFmpegDialogs.cpp:509
+#: export/ExportFFmpegDialogs.cpp:512
msgid "Please select codec before saving a profile"
-msgstr ""
+msgstr "Sélectionnez le codec avant d'enregistrer le profil"
-#: export/ExportFFmpegDialogs.cpp:580
+#: export/ExportFFmpegDialogs.cpp:582
#, c-format
msgid "Preset '%s' does not exist."
-msgstr ""
+msgstr "La présélection %s n'existe pas. "
-#: export/ExportFFmpegDialogs.cpp:795
+#: export/ExportFFmpegDialogs.cpp:797
msgid "Specify Other Options"
-msgstr ""
+msgstr "Spécifier les autres options"
-#: export/ExportFFmpegDialogs.cpp:884
+#: export/ExportFFmpegDialogs.cpp:886
msgid "Preset:"
-msgstr ""
+msgstr "Présélection :"
-#: export/ExportFFmpegDialogs.cpp:885
+#: export/ExportFFmpegDialogs.cpp:887
msgid "Load Preset"
-msgstr ""
+msgstr "Charger une présélection"
-#: export/ExportFFmpegDialogs.cpp:886
+#: export/ExportFFmpegDialogs.cpp:888
msgid "Save Preset"
-msgstr ""
+msgstr "Enregistrer la présélection"
-#: export/ExportFFmpegDialogs.cpp:887
+#: export/ExportFFmpegDialogs.cpp:889
msgid "Delete Preset"
-msgstr ""
+msgstr "Effacer la présélection"
-#: export/ExportFFmpegDialogs.cpp:888
+#: export/ExportFFmpegDialogs.cpp:890
msgid "Import Presets"
-msgstr ""
+msgstr "Importer les présélections"
-#: export/ExportFFmpegDialogs.cpp:889
+#: export/ExportFFmpegDialogs.cpp:891
msgid "Export Presets"
-msgstr ""
+msgstr "Exporter les présélections"
-#: export/ExportPCM.cpp:177
+#: export/ExportFFmpegDialogs.cpp:896
msgid "Format:"
msgstr "Format :"
-#: export/ExportFFmpegDialogs.cpp:896
+#: export/ExportFFmpegDialogs.cpp:898
msgid "Codec:"
-msgstr ""
+msgstr "Codec :"
-#: export/ExportFFmpegDialogs.cpp:900
+#: export/ExportFFmpegDialogs.cpp:902
msgid "Not all formats and codecs are compatible. Some parameters (such as bitrate and samplerate) combinations are not compatible with some codecs too."
-msgstr ""
+msgstr "Tous les formats et codecs ne sont pas compatibles. Certaines combinaisons de paramètres (comme la définition et la fréquence d'échantillonnage) ne sont pas non plus compatibles avec certains codecs."
-#: export/ExportFFmpegDialogs.cpp:903
+#: export/ExportFFmpegDialogs.cpp:905
msgid "Format selector:"
-msgstr ""
+msgstr "Sélecteur de format :"
-#: export/ExportFFmpegDialogs.cpp:904
+#: export/ExportFFmpegDialogs.cpp:906
msgid "Codec selector:"
-msgstr ""
+msgstr "Sélecteur de Codec :"
-#: export/ExportFFmpegDialogs.cpp:906
+#: export/ExportFFmpegDialogs.cpp:908
msgid "Show All Formats"
-msgstr ""
+msgstr "Montrer tous les formats"
-#: export/ExportFFmpegDialogs.cpp:907
+#: export/ExportFFmpegDialogs.cpp:909
msgid "Show All Codecs"
-msgstr ""
+msgstr "Montrer tous les Codecs"
-#: export/ExportFFmpegDialogs.cpp:914
+#: export/ExportFFmpegDialogs.cpp:916
msgid "Options"
-msgstr ""
+msgstr "Options"
-#: prefs/GUIPrefs.cpp:168
+#: export/ExportFFmpegDialogs.cpp:920
+#: prefs/GUIPrefs.cpp:116
msgid "Language:"
msgstr "Langue :"
-#: export/ExportFFmpegDialogs.cpp:919
-msgid "ISO 639 3-letter language code\n"
+#: export/ExportFFmpegDialogs.cpp:921
+msgid ""
+"ISO 639 3-letter language code\n"
"Optional\n"
"empty - automatic"
msgstr ""
+"Format de caractères ISO 639 3\n"
+"Optionnel\n"
+"vide - automatique"
-#: export/ExportFFmpegDialogs.cpp:921
+#: export/ExportFFmpegDialogs.cpp:923
msgid "Tag:"
-msgstr ""
+msgstr "Etiquette :"
-#: export/ExportFFmpegDialogs.cpp:922
-msgid "Codec tag (FOURCC)\n"
+#: export/ExportFFmpegDialogs.cpp:924
+msgid ""
+"Codec tag (FOURCC)\n"
"Optional\n"
"empty - automatic"
msgstr ""
+"En-tête de codec (FOURCC)\n"
+"Optionnel\n"
+"vide - automatique"
-#: export/ExportFFmpegDialogs.cpp:925
-msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n"
+#: export/ExportFFmpegDialogs.cpp:927
+msgid ""
+"Bit Rate (bits/second) - influences the resulting file size and quality\n"
"Some codecs may only accept specific values (128k, 192k, 256k etc)\n"
"0 - automatic\n"
"Recommended - 192000"
msgstr ""
+"Le taux d'échantillonnage (bits/second) - influence la taille et la qualité du fichier obtenu\n"
+"Certains codecs n'acceptent que des valeurs prédéfinies(128k, 192k, 256k etc)\n"
+"0 - automatique\n"
+"Recommandé - 192000"
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr "Qualité :"
-
-#: export/ExportFFmpegDialogs.cpp:928
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid ""
+"Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
msgstr ""
+"Qualité générale, utilisée différemment selon les codecs\n"
+"Requis pour vorbis\n"
+"0 - automatique\n"
+"-1 - Arrêté (remplacé par débit )"
-#: export/ExportFFmpegDialogs.cpp:930
+#: export/ExportFFmpegDialogs.cpp:932
msgid "Sample Rate:"
-msgstr ""
+msgstr "Taux d'échantillonnage :"
-#: export/ExportFFmpegDialogs.cpp:931
-msgid "Sample rate (Hz)\n"
+#: export/ExportFFmpegDialogs.cpp:933
+msgid ""
+"Sample rate (Hz)\n"
"0 - don't change sample rate"
msgstr ""
+"Taux d'échantillonnage (Hz)\n"
+"0 - ne change pas le taux d'échantillonnage"
-#: export/ExportFFmpegDialogs.cpp:933
+#: export/ExportFFmpegDialogs.cpp:935
msgid "Cutoff Bandwidth:"
-msgstr ""
+msgstr "Largeur de coupe bande"
-#: export/ExportFFmpegDialogs.cpp:934
-msgid "Audio cutoff bandwidth (Hz)\n"
+#: export/ExportFFmpegDialogs.cpp:936
+#, fuzzy
+msgid ""
+"Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
+"En-tête de codec (FOURCC)\n"
+"Optionnel\n"
+"0 - automatique"
-#: export/ExportFFmpegDialogs.cpp:936
+#: export/ExportFFmpegDialogs.cpp:938
msgid "Profile:"
-msgstr ""
+msgstr "Profil :"
-#: export/ExportFFmpegDialogs.cpp:938
-msgid "AAC Profile\n"
+#: export/ExportFFmpegDialogs.cpp:940
+msgid ""
+"AAC Profile\n"
"Low Complexity -default\n"
"Most players won't play anything other than LC"
msgstr ""
+"Profil AAC\n"
+"Basse complexité -Par défaut\n"
+"La plupart des lecteurs n'acceptent rien d'autre."
-#: export/ExportFFmpegDialogs.cpp:940
+#: export/ExportFFmpegDialogs.cpp:942
msgid "Use Bit Reservoir"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:943
+#: export/ExportFFmpegDialogs.cpp:945
msgid "Use Variable Block Length"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:948
+#: export/ExportFFmpegDialogs.cpp:950
msgid "FLAC options"
-msgstr ""
+msgstr "Options FLAC"
-#: export/ExportFFmpegDialogs.cpp:952
+#: export/ExportFFmpegDialogs.cpp:954
msgid "Compression Level:"
-msgstr ""
+msgstr "Niveau de compression :"
-#: export/ExportFFmpegDialogs.cpp:953
-msgid "Compression level\n"
+#: export/ExportFFmpegDialogs.cpp:955
+msgid ""
+"Compression level\n"
"Required for FLAC\n"
"-1 - automatic\n"
"min - 0 (fast encoding, large output file)\n"
"max - 10 (slow encoding, small output file)"
msgstr ""
+"Niveau de compression\n"
+"requis pour FLAC\n"
+"-1 - automatique\n"
+"min - 0 (encodage rapide, fichier de sortie important)\n"
+"max - 10 (encodage lent, fichier de sortie réduit)"
-#: export/ExportFFmpegDialogs.cpp:955
+#: export/ExportFFmpegDialogs.cpp:957
msgid "Frame Size:"
-msgstr ""
+msgstr "Taille de police"
-#: export/ExportFFmpegDialogs.cpp:956
-msgid "Frame size\n"
+#: export/ExportFFmpegDialogs.cpp:958
+msgid ""
+"Frame size\n"
"Optional\n"
"0 - default\n"
"min - 16\n"
"max - 65535"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:958
+#: export/ExportFFmpegDialogs.cpp:960
msgid "LPC coefficients precision"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:959
-msgid "LPC coefficients precision\n"
+#: export/ExportFFmpegDialogs.cpp:961
+msgid ""
+"LPC coefficients precision\n"
"Optional\n"
"0 - default\n"
"min - 1\n"
"max - 15"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:961
+#: export/ExportFFmpegDialogs.cpp:963
msgid "Minimal prediction order"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:962
-msgid "Minimal prediction order\n"
+#: export/ExportFFmpegDialogs.cpp:964
+msgid ""
+"Minimal prediction order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 32 (with LPC) or 4 (without LPC)"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:964
+#: export/ExportFFmpegDialogs.cpp:966
msgid "Maximal prediction order"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:965
-msgid "Maximal prediction order\n"
+#: export/ExportFFmpegDialogs.cpp:967
+msgid ""
+"Maximal prediction order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 32 (with LPC) or 4 (without LPC)"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:967
+#: export/ExportFFmpegDialogs.cpp:969
msgid "Prediction Order Method:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:969
-msgid "Prediction Order Method\n"
+#: export/ExportFFmpegDialogs.cpp:971
+msgid ""
+"Prediction Order Method\n"
"Estimate - fastest, lower compression\n"
"Log search - slowest, best compression\n"
"Full search - default"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:971
+#: export/ExportFFmpegDialogs.cpp:973
msgid "Minimal partition order"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:972
-msgid "Minimal partition order\n"
+#: export/ExportFFmpegDialogs.cpp:974
+msgid ""
+"Minimal partition order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 8"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:974
+#: export/ExportFFmpegDialogs.cpp:976
msgid "Maximal partition order"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:975
-msgid "Maximal partition order\n"
+#: export/ExportFFmpegDialogs.cpp:977
+msgid ""
+"Maximal partition order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 8"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:977
+#: export/ExportFFmpegDialogs.cpp:979
msgid "Use LPC"
-msgstr ""
+msgstr "Utilise LPC"
-#: export/ExportFFmpegDialogs.cpp:984
+#: export/ExportFFmpegDialogs.cpp:986
msgid "MPEG container options"
-msgstr ""
+msgstr "Options de conteneur MPEG"
-#: export/ExportFFmpegDialogs.cpp:988
+#: export/ExportFFmpegDialogs.cpp:990
msgid "Mux Rate:"
-msgstr ""
+msgstr "Taux de mixage :"
-#: export/ExportFFmpegDialogs.cpp:989
-msgid "Maximum bit rate of the multiplexed stream\n"
+#: export/ExportFFmpegDialogs.cpp:991
+msgid ""
+"Maximum bit rate of the multiplexed stream\n"
"Optional\n"
"0 - default"
msgstr ""
+"Débit maximum de flux multiplexé\n"
+"Optionnel\n"
+"0 - default"
-#: export/ExportFFmpegDialogs.cpp:991
+#: export/ExportFFmpegDialogs.cpp:993
msgid "Packet Size:"
-msgstr ""
+msgstr "Taille de paquet"
-#: export/ExportFFmpegDialogs.cpp:992
-msgid "Packet size\n"
+#: export/ExportFFmpegDialogs.cpp:994
+msgid ""
+"Packet size\n"
"Optional\n"
"0 - default"
msgstr ""
+"Taille de paquet\n"
+"Optionnel\n"
+"0 - par défaut"
-#: export/ExportFFmpegDialogs.cpp:1207
+#: export/ExportFFmpegDialogs.cpp:1209
msgid "You can't delete a preset without name"
-msgstr ""
+msgstr "Vous ne pouvez effacer une présélection sans nom"
-#: export/ExportFFmpegDialogs.cpp:1211
+#: export/ExportFFmpegDialogs.cpp:1213
#, c-format
msgid "Delete preset '%s'?"
-msgstr ""
+msgstr "Effacer la présélection '%s' ?"
-#: export/ExportFFmpegDialogs.cpp:1230
+#: export/ExportFFmpegDialogs.cpp:1232
msgid "You can't save a preset without name"
-msgstr ""
+msgstr "Vous ne pouvez enregistrer une présélection sans lui donner un nom"
-#: export/ExportFFmpegDialogs.cpp:1270
+#: export/ExportFFmpegDialogs.cpp:1272
msgid "Select xml file with presets to import"
-msgstr ""
+msgstr "Sélectionnez un fichier XML contenant les présélections à importer"
-#: prefs/KeyConfigPrefs.cpp:200
+#: export/ExportFFmpegDialogs.cpp:1275
+#: export/ExportFFmpegDialogs.cpp:1295
+#: prefs/KeyConfigPrefs.cpp:228
+#: prefs/KeyConfigPrefs.cpp:259
msgid "XML files (*.xml)|*.xml|All files (*.*)|*.*"
msgstr "Fichiers XML (*.xml)|*.xlml|Tous fichiers (*.*)|*.*"
-#: export/ExportFFmpegDialogs.cpp:1290
+#: export/ExportFFmpegDialogs.cpp:1292
msgid "Select xml file to export presets into"
-msgstr ""
+msgstr "Sélectionner un fichier XML pour exporter les présélection sous "
-#: export/ExportFFmpegDialogs.cpp:1361
+#: export/ExportFFmpegDialogs.cpp:1363
msgid "Failed to guess format"
-msgstr ""
+msgstr "Impossible de reconnaître le format"
-#: export/ExportFFmpegDialogs.cpp:1403
+#: export/ExportFFmpegDialogs.cpp:1405
msgid "Failed to find the codec"
-msgstr ""
-
-#: export/ExportFFmpegDialogs.h:53
-msgid "M4A (AAC) Files (FFmpeg)"
-msgstr ""
+msgstr "Impossible de trouver le codec"
#: export/ExportFFmpegDialogs.h:54
-msgid "AC3 Files (FFmpeg)"
-msgstr ""
+msgid "M4A (AAC) Files (FFmpeg)"
+msgstr " Fichiers (FFmpeg) M4A (AAC)"
#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
-msgstr ""
+msgid "AC3 Files (FFmpeg)"
+msgstr "Fichiers AC3 (FFmpeg)"
#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
-msgstr ""
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
+msgstr "AMR (bande étroite) Fichiers (FFmpeg, non distribuable)"
#: export/ExportFFmpegDialogs.h:57
-msgid "WMA (version 2) Files (FFmpeg)"
-msgstr ""
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
+msgstr "AMR (large bande) Fichiers (FFmpeg, non distribuable)"
#: export/ExportFFmpegDialogs.h:58
+msgid "WMA (version 2) Files (FFmpeg)"
+msgstr "WMA (version 2) Fichiers (FFmpeg)"
+
+#: export/ExportFFmpegDialogs.h:59
msgid "Custom FFmpeg Export"
-msgstr ""
+msgstr "Personalisation de l'export FFmpeg"
-#: export/ExportFFmpegDialogs.h:373
+#: export/ExportFFmpegDialogs.h:374
msgid "LTP"
-msgstr ""
+msgstr "LTP"
-#: export/ExportFFmpegDialogs.h:373
+#: export/ExportFFmpegDialogs.h:374
msgid "Low Complexity"
-msgstr ""
+msgstr "Basse complexité"
-#: export/ExportFFmpegDialogs.h:373
+#: export/ExportFFmpegDialogs.h:374
msgid "Main profile"
-msgstr ""
+msgstr "Profil principal"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "2-level"
-msgstr ""
+msgstr "Niveau 2"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "4-level"
-msgstr ""
+msgstr "Niveau 4"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "8-level"
-msgstr ""
+msgstr "Niveau 8"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "Estimate"
-msgstr ""
+msgstr "Estimer"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "Full search"
-msgstr ""
+msgstr "Recherche complète"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
+#, fuzzy
msgid "Log search"
-msgstr ""
+msgstr "Recherche dans le journal"
-#: export/ExportFLAC.cpp:68
+#: export/ExportFLAC.cpp:67
msgid "Specify FLAC Options"
msgstr "Spécifier les options FLAC"
-#: export/ExportFLAC.cpp:82
+#: export/ExportFLAC.cpp:79
msgid "0 (fastest)"
msgstr "0 (plus rapide)"
-#: export/ExportFLAC.cpp:83
+#: export/ExportFLAC.cpp:80
msgid "1"
msgstr "1"
-#: export/ExportFLAC.cpp:84
+#: export/ExportFLAC.cpp:81
msgid "2"
msgstr "2"
-#: export/ExportFLAC.cpp:85
+#: export/ExportFLAC.cpp:82
msgid "3"
msgstr "3"
-#: export/ExportFLAC.cpp:86
+#: export/ExportFLAC.cpp:83
msgid "4"
msgstr "4"
-#: export/ExportFLAC.cpp:87
+#: export/ExportFLAC.cpp:84
msgid "5"
msgstr "5"
-#: export/ExportFLAC.cpp:88
+#: export/ExportFLAC.cpp:85
msgid "6"
msgstr "6"
-#: export/ExportFLAC.cpp:89
+#: export/ExportFLAC.cpp:86
msgid "7"
msgstr "7"
-#: export/ExportFLAC.cpp:90
+#: export/ExportFLAC.cpp:87
msgid "8 (best)"
msgstr "8 (meilleur)"
-#: export/ExportFLAC.cpp:93
+#: export/ExportFLAC.cpp:90
msgid "16 bit"
msgstr "16 bits"
-#: export/ExportFLAC.cpp:94
+#: export/ExportFLAC.cpp:91
msgid "24 bit"
msgstr "24 bits"
-#: export/ExportFLAC.cpp:98
+#: export/ExportFLAC.cpp:95
msgid "FLAC Export Setup"
msgstr "Réglage de l'exportation FLAC"
-#: export/ExportFLAC.cpp:102
+#: export/ExportFLAC.cpp:99
msgid "Level:"
msgstr "Niveau :"
-#: export/ExportFLAC.cpp:104
+#: export/ExportFLAC.cpp:101
msgid "Bit depth:"
msgstr "Profondeur d'échantillonnage :"
-#: export/ExportFLAC.cpp:208
+#: export/ExportFLAC.cpp:207
msgid "FLAC Files"
-msgstr "fichiers flac"
+msgstr "Fichiers FLAC"
+
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr "L'export FLAC ne peut ouvrir %s"
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid ""
+"FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+"L'encodeur FLAC n'a pas pu s'initialiser\n"
+"Status: %d"
-#: export/ExportFLAC.cpp:310
+#: export/ExportFLAC.cpp:324
msgid "Exporting the selected audio as FLAC"
msgstr "Exportation de la sélection audio en FLAC"
-#: export/ExportFLAC.cpp:311
+#: export/ExportFLAC.cpp:325
msgid "Exporting the entire project as FLAC"
msgstr "Exportation du projet entier en fichier FLAC"
@@ -6655,7 +7219,7 @@ msgstr "Exportation du projet entier en fichier FLAC"
msgid "Specify MP2 Options"
msgstr "Spécifier les options MP2"
-#: export/ExportMP2.cpp:129
+#: export/ExportMP2.cpp:127
msgid "MP2 Export Setup"
msgstr "Réglage de l'exportation MP2"
@@ -6663,64 +7227,64 @@ msgstr "Réglage de l'exportation MP2"
msgid "MP2 Files"
msgstr "Fichiers MP2"
-#: export/ExportMP2.cpp:229
+#: export/ExportMP2.cpp:230
msgid "Cannot export MP2 with this sample rate and bit rate"
msgstr "Impossible d'exporter en MP2 à ce taux d'échantillonnage et cette définition"
-#: export/ExportMP2.cpp:240
-#: export/ExportMP3.cpp:1768
-#: export/ExportOGG.cpp:183
+#: export/ExportMP2.cpp:241
+#: export/ExportMP3.cpp:1619
+#: export/ExportOGG.cpp:184
msgid "Unable to open target file for writing"
msgstr "Impossible d'ouvrir le fichier cible en écriture"
-#: export/ExportMP2.cpp:271
+#: export/ExportMP2.cpp:273
#, c-format
msgid "Exporting selected audio at %d kbps"
msgstr "Exportation de la sélection audio à %d kbps"
-#: export/ExportMP2.cpp:272
+#: export/ExportMP2.cpp:274
#, c-format
msgid "Exporting entire file at %d kbps"
msgstr "Exportation du fichier entier à %d kbps"
-#: export/ExportMP3.cpp:221
-#: export/ExportMP3.cpp:239
-#: export/ExportMP3.cpp:253
+#: export/ExportMP3.cpp:223
+#: export/ExportMP3.cpp:241
+#: export/ExportMP3.cpp:255
msgid "kbps"
msgstr "kbps"
-#: export/ExportMP3.cpp:240
+#: export/ExportMP3.cpp:242
msgid "(Best Quality)"
msgstr "(Meilleure qualité)"
-#: export/ExportMP3.cpp:241
+#: export/ExportMP3.cpp:243
msgid "(Smaller files)"
msgstr "(Petits fichiers)"
-#: export/ExportMP3.cpp:243
+#: export/ExportMP3.cpp:245
msgid "Fast"
msgstr "Rapide"
-#: export/ExportMP3.cpp:244
-#: export/ExportMP3.cpp:250
-#: prefs/GUIPrefs.cpp:41
-#: prefs/GUIPrefs.cpp:49
+#: export/ExportMP3.cpp:246
+#: export/ExportMP3.cpp:252
+#: prefs/GUIPrefs.cpp:50
+#: prefs/TracksPrefs.cpp:46
msgid "Standard"
msgstr "Standard"
-#: export/ExportMP3.cpp:248
+#: export/ExportMP3.cpp:250
msgid "Insane"
msgstr "Délirant"
-#: export/ExportMP3.cpp:249
+#: export/ExportMP3.cpp:251
msgid "Extreme"
msgstr "Extrême"
-#: export/ExportMP3.cpp:251
+#: export/ExportMP3.cpp:253
msgid "Medium"
msgstr "Moyen"
-#: export/ExportMP3.cpp:303
+#: export/ExportMP3.cpp:305
msgid "Specify MP3 Options"
msgstr "Spécifier les options MP3"
@@ -6749,26 +7313,25 @@ msgid "Constant"
msgstr "Constant"
#: export/ExportMP3.cpp:373
-#: prefs/QualityPrefs.cpp:42
-#: prefs/QualityPrefs.cpp:43
+#: prefs/QualityPrefs.cpp:38
msgid "Quality"
msgstr "Qualité"
#: export/ExportMP3.cpp:379
msgid "Variable Speed:"
-msgstr "Vitesse variable"
+msgstr "Vistesse variable"
#: export/ExportMP3.cpp:386
msgid "Channel Mode:"
-msgstr "Mode de canaux :"
+msgstr "Mode de canal :"
#: export/ExportMP3.cpp:391
msgid "Joint Stereo"
-msgstr "Joindre stéréo"
+msgstr "canaux stéréo joints"
#: export/ExportMP3.cpp:392
msgid "Stereo"
-msgstr "Stéréo"
+msgstr "Stéréo,"
#: export/ExportMP3.cpp:536
msgid "Locate Lame"
@@ -6785,229 +7348,250 @@ msgstr "Pour obtenir une copie de Lame gratuite, cliquer ici -->"
#: export/ExportMP3.cpp:1070
#, c-format
-msgid "You are linking to lame_enc.dll v%d.%d. This version is not compatible with Audacity %d.%d.%d.\n"
+msgid ""
+"You are linking to lame_enc.dll v%d.%d. This version is not compatible with Audacity %d.%d.%d.\n"
"Please download the latest version of the LAME MP3 library."
msgstr ""
+"Vous liez vers lame_enc.dll v%d.%d. Cette version n'est pas compatible avec Audacity %d.%d.%d.\n"
+"Téléchargez la dernière version de la librairie MP3 LAME."
-#: export/ExportMP3.cpp:1094
+#: export/ExportMP3.cpp:1328
msgid "Only lame_enc.dll|lame_enc.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
msgstr "Seulement lame_enc.dll|lame_enc.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
-#: export/ExportMP3.cpp:1550
+#: export/ExportMP3.cpp:1346
msgid "Only libmp3lame.dylib|libmp3lame.dylib|Dynamic Libraries (*.dylib)|*.dylib|All Files (*)|*"
msgstr "Seulement libmp3lame.dylib|libmp3lame.dylib|Dynamic Libraries (*.dylib)|*.dylib|All Files (*)|*"
-#: export/ExportMP3.cpp:1567
-#, fuzzy
+#: export/ExportMP3.cpp:1364
msgid "Only libmp3lame.so.0|libmp3lame.so.0|Primary Shared Object files (*.so)|*.so|Extended Libraries (*.so*)|*.so*|All Files (*)|*"
msgstr "Seulement libmp3lame.so|libmp3lame.so|Fichiers Primary Shared Object (*.so)|*.so|Libraries étendues (*.so*)|*.so*|Tous fichiers (*)|*"
-#: export/ExportMP3.cpp:1650
+#: export/ExportMP3.cpp:1500
msgid "MP3 Files"
msgstr "Fichiers MP3"
-#: export/ExportMP3.cpp:1673
+#: export/ExportMP3.cpp:1524
msgid "Could not open MP3 encoding library!"
msgstr "Impossible d'ouvrir la librairie d'encodage MP3 !"
-#: export/ExportMP3.cpp:1680
+#: export/ExportMP3.cpp:1531
msgid "Not a valid or supported MP3 encoding library!"
msgstr "La librairie d'encodage MP3 n'est pas valide ou pas supportée !"
-#: export/ExportMP3.cpp:1757
+#: export/ExportMP3.cpp:1608
msgid "Unable to initialize MP3 stream"
msgstr "Impossible d'initialiser le flux MP3"
-#: export/ExportMP3.cpp:1799
+#: export/ExportMP3.cpp:1652
#, c-format
msgid "Exporting selected audio with %s preset"
msgstr "Exportation de la sélection audio avec la présélection %s"
-#: export/ExportMP3.cpp:1800
+#: export/ExportMP3.cpp:1653
#, c-format
msgid "Exporting entire file with %s preset"
msgstr "Exportation du fichier entier avec la présélection %s"
-#: export/ExportMP3.cpp:1805
+#: export/ExportMP3.cpp:1658
#, c-format
msgid "Exporting selected audio with VBR quality %s"
msgstr "Exportation de la sélection audio avec la qualité VBR %s"
-#: export/ExportMP3.cpp:1806
+#: export/ExportMP3.cpp:1659
#, c-format
msgid "Exporting entire file with VBR quality %s"
msgstr "Exportation du fichier entier avec la qualité VBR %s"
-#: export/ExportMP3.cpp:1811
+#: export/ExportMP3.cpp:1664
#, c-format
msgid "Exporting selected audio at %d Kbps"
msgstr "Exportation de la sélection audio à %d kbps"
-#: export/ExportMP3.cpp:1812
+#: export/ExportMP3.cpp:1665
#, c-format
msgid "Exporting entire file at %d Kbps"
msgstr "Exportation du fichier entier à %d kbps"
-#: export/ExportMP3.cpp:1845
+#: export/ExportMP3.cpp:1699
#, c-format
msgid "Error %d returned from MP3 encoder"
msgstr "Erreur %d retournée par l'encodeur MP3"
-#: export/ExportMP3.cpp:1931
+#: export/ExportMP3.cpp:1790
#, c-format
-msgid "The project sample rate (%d) is not supported by the MP3\n"
+msgid ""
+"The project sample rate (%d) is not supported by the MP3\n"
"file format. "
-msgstr "Le taux d'échantillonnage du projet (%d) n'est pas supporté\n"
+msgstr ""
+"Le taux d'échantillonnage du projet (%d) n'est pas supporté\n"
"par le format MP3."
-#: export/ExportMP3.cpp:1934
+#: export/ExportMP3.cpp:1793
#, c-format
-msgid "The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
+msgid ""
+"The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
"supported by the MP3 file format. "
-msgstr "La combinaison de taux d'échantillonnage du projet (%d) et de définition (%d kbps)\n"
+msgstr ""
+"La combinaison de taux d'échantillonnage du projet (%d) et de définition (%d kbps)\n"
"n'est pas supporté par le format MP3."
-#: export/ExportMP3.cpp:1965
+#: export/ExportMP3.cpp:1970
msgid "MP3 export library not found"
-msgstr ""
+msgstr "Librairie d'exportation MP3 non trouvée"
-#: export/ExportMultiple.cpp:95
-#: export/ExportMultiple.cpp:374
-#: export/ExportMultiple.cpp:598
-#: export/ExportMultiple.cpp:765
+#: export/ExportMultiple.cpp:93
+#: export/ExportMultiple.cpp:424
msgid "Export Multiple"
msgstr "Export Multiple"
-#: export/ExportMultiple.cpp:164
-msgid "If you have more than one Audio Track, you can export each track as a separate file,\n"
+#: export/ExportMultiple.cpp:163
+msgid ""
+"If you have more than one Audio Track, you can export each track as a separate file,\n"
"or if you have a Label Track, you can export a new file for each label.\n"
"\n"
"This project does not have multiple tracks or a Label Track, so you cannot export multiple files."
-msgstr "Si vous avez plus d'une piste audio, il est possible d'exporter chacune dans un fichier indépendant,\n"
+msgstr ""
+"Si vous avez plus d'une piste audio, il est possible d'exporter chacune dans un fichier indépendant,\n"
"ou si vous avez une piste de marqueurs, vous pouvez créer un nouveau fichier pour chaque marqueur.\n"
"\n"
"Ce projet n'ayant pas de pistes multiples, ni de piste de marqueurs, vous ne pouvez pas exporter de fichiers multiples."
-#: export/ExportMultiple.cpp:165
+#: export/ExportMultiple.cpp:164
msgid "Can't export multiple files"
msgstr "Impossible d'exporter des fichiers multiples"
-#: export/ExportMultiple.cpp:200
+#: export/ExportMultiple.cpp:229
msgid "Export format:"
msgstr "Format d'export :"
-#: export/ExportMultiple.cpp:207
+#: export/ExportMultiple.cpp:234
msgid "Options..."
msgstr "Options..."
-#: export/ExportMultiple.cpp:210
+#: export/ExportMultiple.cpp:238
msgid "Export location:"
msgstr "Emplacement de l'export :"
-#: export/ExportMultiple.cpp:216
-#: prefs/DirectoriesPrefs.cpp:92
-msgid "Choose..."
-msgstr "Choisir..."
-
-#: export/ExportMultiple.cpp:217
+#: export/ExportMultiple.cpp:243
msgid "Create"
msgstr "Créer"
-#: export/ExportMultiple.cpp:224
+#: export/ExportMultiple.cpp:250
msgid "Split files based on:"
-msgstr "Séparer en fichiers selon :"
+msgstr "Séparer en fichier selon :"
-#: export/ExportMultiple.cpp:234
+#: export/ExportMultiple.cpp:259
+#: export/ExportMultiple.cpp:261
msgid "Labels"
msgstr "Marqueurs"
-#: export/ExportMultiple.cpp:239
+#: export/ExportMultiple.cpp:266
msgid "Include audio before first label"
msgstr "Inclure l'audio avant le premier marqueur"
-#: export/ExportMultiple.cpp:245
+#: export/ExportMultiple.cpp:272
msgid "First file name:"
msgstr "Premier nom de fichier :"
#: export/ExportMultiple.cpp:277
msgid "First file name"
-msgstr ""
-
-#: export/ExportMultiple.cpp:258
-msgid "Tracks"
-msgstr "Pistes"
+msgstr "Premier nom de fichier"
-#: export/ExportMultiple.cpp:265
+#: export/ExportMultiple.cpp:294
msgid "Name files:"
msgstr "Renommer le fichier :"
-#: export/ExportMultiple.cpp:275
+#: export/ExportMultiple.cpp:303
+#: export/ExportMultiple.cpp:305
msgid "Using Label/Track Name"
msgstr "selon le marqueur ou le nom de piste"
-#: export/ExportMultiple.cpp:282
+#: export/ExportMultiple.cpp:311
+#: export/ExportMultiple.cpp:313
msgid "Numbering consecutively"
msgstr "Numérotation continue"
-#: export/ExportMultiple.cpp:288
+#: export/ExportMultiple.cpp:319
msgid "File name prefix:"
msgstr "Préfixe de nom de fichier :"
#: export/ExportMultiple.cpp:324
msgid "File name prefix"
-msgstr ""
+msgstr "Préfixe de nom de fichier"
-#: export/ExportMultiple.cpp:306
+#: export/ExportMultiple.cpp:338
msgid "Overwrite existing files"
msgstr "Ecraser les fichiers existants"
-#: export/ExportMultiple.cpp:372
+#: export/ExportMultiple.cpp:422
#, c-format
msgid "\"%s\" successfully created."
msgstr "\"%s\" a été créé avec succès."
-#: export/ExportMultiple.cpp:381
+#: export/ExportMultiple.cpp:431
msgid "Choose a location to save the exported files"
msgstr "Choisir un emplacement pour placer les fichiers temporaires"
-#: export/ExportMultiple.cpp:470
+#: export/ExportMultiple.cpp:524
+#, c-format
+msgid "Successfully exported the following %ld file(s)."
+msgstr "%ld fichier(s) exporté(s) avec succès."
+
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
+msgstr "Quelque chose a mal tourné après l'export du (des) fichier(s) %ld."
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
+msgstr "Export annulé après l'exportation du (des) fichier(s) %ld."
+
+#: export/ExportMultiple.cpp:527
+#, c-format
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr "Export stoppé après l'exportation du (des) fichier(s) %ld."
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr "Quelque chose a vraiment mal tourné après l'export du (des) fichier(s) %ld."
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr "Export Multiple"
+
+#: export/ExportMultiple.cpp:570
#, c-format
-msgid "\"%s\" doesn't exist.\n"
+msgid ""
+"\"%s\" doesn't exist.\n"
"\n"
"Would you like to create it?"
-msgstr "\"%s\" n'existe pas.\n"
+msgstr ""
+"\"%s\" n'existe pas.\n"
"\n"
"Voulez-vous le créer ?"
-#: export/ExportMultiple.cpp:568
-#: export/ExportMultiple.cpp:703
+#: export/ExportMultiple.cpp:667
+#: export/ExportMultiple.cpp:804
msgid "Edit metadata"
msgstr "Editer les métadonnées"
-#: export/ExportMultiple.cpp:595
-#: export/ExportMultiple.cpp:762
-#, c-format
-msgid "Successfully exported %d file(s)."
-msgstr " %d fichier(s) exporté(s) avec succès."
-
-#: export/ExportMultiple.cpp:596
-#: export/ExportMultiple.cpp:763
-#, c-format
-msgid "Something went wrong after exporting %d file(s)."
-msgstr "Quelque chose a mal tourné après l'export du (des) fichier(s) %d."
-
-#: export/ExportMultiple.cpp:825
+#: export/ExportMultiple.cpp:923
#, c-format
-msgid "Label %s is not a legal file name. You cannot use any of: %s\n"
+msgid ""
+"Label %s is not a legal file name. You cannot use any of: %s\n"
"Use..."
-msgstr "Le marqueur %s n'est pas un nom valise. Ne pas utiliser les caractères suivants : %s\n"
+msgstr ""
+"Le marqueur %s n'est pas un nom valide. Ne pas utiliser les caractères suivants : %s\n"
"Utiliser..."
#: export/ExportOGG.cpp:64
msgid "Specify Ogg Vorbis Options"
msgstr "Spécifier les options Ogg Vorbis"
-#: export/ExportOGG.cpp:81
+#: export/ExportOGG.cpp:79
msgid "Ogg Vorbis Export Setup"
msgstr "Réglage de l'exportation Ogg Vorbis"
@@ -7015,362 +7599,408 @@ msgstr "Réglage de l'exportation Ogg Vorbis"
msgid "Ogg Vorbis Files"
msgstr "Fichier Ogg Vorbis"
-#: export/ExportOGG.cpp:254
+#: export/ExportOGG.cpp:256
msgid "Exporting the selected audio as Ogg Vorbis"
msgstr "Exportation de la sélection audio en Ogg Vorbis"
-#: export/ExportOGG.cpp:255
+#: export/ExportOGG.cpp:257
msgid "Exporting the entire project as Ogg Vorbis"
msgstr "Exportation du projet entier en Ogg Vorbis"
-#: export/ExportPCM.cpp:115
+#: export/ExportPCM.cpp:119
msgid "Specify Uncompressed Options"
msgstr "Spécifier les options de compression"
-#: export/ExportPCM.cpp:171
+#: export/ExportPCM.cpp:189
msgid "Uncompressed Export Setup"
msgstr "Réglage d'exportation non compressé"
-#: export/ExportPCM.cpp:181
+#: export/ExportPCM.cpp:195
msgid "Header:"
-msgstr "En-tête :"
+msgstr "Entête :"
-#: export/ExportPCM.cpp:185
+#: export/ExportPCM.cpp:199
+#: import/ImportRaw.cpp:376
msgid "Encoding:"
msgstr "Encodage :"
-#: export/ExportPCM.cpp:190
+#: export/ExportPCM.cpp:204
msgid "(Not all combinations of headers and encodings are possible.)"
msgstr "(Les combinaison d'entête et d'encodage ne sont pas toutes possibles.)"
#: export/ExportPCM.cpp:359
msgid "Other uncompressed files"
-msgstr ""
+msgstr "Autres formats non compressés"
#: export/ExportPCM.cpp:377
msgid "AIFF (Apple) signed 16 bit PCM"
-msgstr ""
+msgstr "AIFF (Apple) signé 16 bits PCM"
#: export/ExportPCM.cpp:388
msgid "WAV (Microsoft) signed 16 bit PCM"
-msgstr ""
+msgstr "WAV (Microsoft) signé 16 bits PCM"
#: export/ExportPCM.cpp:399
msgid "GSM 6.10 WAV (mobile)"
-msgstr ""
+msgstr "GSM 6.10 WAV (mobile)"
-#: export/ExportPCM.cpp:361
+#: export/ExportPCM.cpp:476
msgid "Cannot export audio in this format."
msgstr "Impossible d'exporter l'audio dans ce format."
-#: export/ExportPCM.cpp:401
+#: export/ExportPCM.cpp:526
#, c-format
msgid "Exporting the selected audio as %s"
msgstr "Exportation de la sélection audio à %s"
-#: export/ExportPCM.cpp:403
+#: export/ExportPCM.cpp:528
#, c-format
msgid "Exporting the entire project as %s"
msgstr "Exportation du projet entier en %s"
#. i18n-hint: %s will be the error message from libsndfile
-#: export/ExportPCM.cpp:437
+#: export/ExportPCM.cpp:564
#, c-format
msgid "Error (file may not have been written): %s"
msgstr "Erreur (le fichier peut ne pas avoir été écrit) : %hs"
-#: export/ExportPCM.cpp:723
+#: export/ExportPCM.cpp:735
msgid "There are no options for this format.\n"
-msgstr ""
+msgstr "Il n'y a pas d'options pour ce format.\n"
#. i18n-hint: This is pointing users at another possible export format in
#. * the list. So you should translate the quoted string
#. * 'Other uncompressed files' exactly the same as you do the same string
#. * when it comes up on it's own.
-#: export/ExportPCM.cpp:728
+#: export/ExportPCM.cpp:740
msgid "If you need more control over the export format please use the 'Other uncompressed files' format."
-msgstr ""
+msgstr "Pour davantage de choix de format d'export, sélectionner \"Autres formats non compressés\"."
-#: export/ExportPCM.cpp:733
+#: export/ExportPCM.cpp:745
msgid "Your file will be exported as a 16-bit AIFF (Apple/SGI) file.\n"
-msgstr ""
+msgstr "Votre fichier sera exporté comme fichier 16-bit AIFF (Apple/SGI) file.\n"
-#: export/ExportPCM.cpp:738
+#: export/ExportPCM.cpp:750
msgid "Your file will be exported as a 16-bit WAV (Microsoft) file.\n"
-msgstr ""
+msgstr "Votre fichier sera exporté comme fichier 16-bit WAV (Microsoft).\n"
-#: export/ExportPCM.cpp:743
+#: export/ExportPCM.cpp:755
msgid "Your file will be exported as a GSM 6.10 WAV file.\n"
-msgstr ""
+msgstr "Votre fichier sera exporté comme fichier GSM 6.10 WAV .\n"
-#: import/ImportMP3.cpp:39
+#: import/Import.cpp:162
+#: import/ImportMP3.cpp:47
msgid "MP3 files"
msgstr "Fichiers MP3"
-#: import/Import.cpp:176
+#: import/Import.cpp:181
msgid "Select stream(s) to import"
-msgstr ""
+msgstr "Sélectionner le(s) flux à importer"
-#: import/Import.cpp:155
+#: import/Import.cpp:234
#, c-format
msgid "This version of Audacity was not compiled with %s support."
msgstr "Cette version d'Audacity n'a pas été compilée avec le support %s."
-#: import/Import.cpp:242
+#: import/Import.cpp:247
#, c-format
-msgid "\"%s\" \n"
+msgid ""
+"\"%s\" \n"
"is a MIDI file, not an audio file. \n"
"Audacity cannot open this type of file for playing, but you can\n"
"edit it by clicking File > Import > MIDI."
msgstr ""
+"\"%s\" est un fichier MIDI, et non audio. \n"
+"Audacity ne peut pas ouvrir ce type de fichier pour le lire, mais vous pouvez \n"
+" l'éditer en cliquant sur Fichier > Importer > MIDI."
#. i18n-hint: %s will be the filename
-#: import/Import.cpp:168
+#: import/Import.cpp:257
#, c-format
-msgid "\"%s\" is an audio CD track. \n"
+msgid ""
+"\"%s\" is an audio CD track. \n"
"Audacity cannot open audio CDs directly. \n"
"Extract (rip) the CD tracks to an audio format that \n"
"Audacity can import, such as WAV or AIFF."
-msgstr "\"%s\" est une piste de CD audio. \n"
+msgstr ""
+"\"%s\" est une piste de CD audio. \n"
"Audacity ne peut pas ouvrir de CD audio directement. \n"
"Extraire (ripper) les pistes de CD dans un format audio\n"
"qu'Audacity peut importer, comme le WAV ou l'AIFF."
-#: import/Import.cpp:174
+#: import/Import.cpp:263
#, c-format
-msgid "\"%s\" is a playlist file. \n"
+msgid ""
+"\"%s\" is a playlist file. \n"
"Audacity cannot open this file because it only contains links to other files. \n"
"You may be able to open it in a text editor and download the actual audio files."
-msgstr "\"%s\" est une liste de lecture. \n"
+msgstr ""
+"\"%s\" est une liste de lecture. \n"
"Audacity ne peut pas ouvrir ce fichier car il contient seulement des liens vers d'autres fichiers. \n"
-"Vous pouvez l'ouvrir avec un éditeur de texte et télécharger les fichiers audio correspondants."
+"Vous pouvez l'ouvrir avec un traitement de texte et télécharger les fichiers audio correspondants."
-#: import/Import.cpp:179
+#: import/Import.cpp:268
#, c-format
-msgid "\"%s\" is a Windows Media Audio file. \n"
+msgid ""
+"\"%s\" is a Windows Media Audio file. \n"
"Audacity cannot open this type of file due to patent restrictions. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr "\"%s\" est un fichier Windows Media Audio. \n"
+msgstr ""
+"\"%s\" est un fichier Windows Media Audio. \n"
"Audacity ne peut pas ouvrir ce type de fichier pour des raisons de droits. \n"
-"Vous devez le convertir dans un format audio compatible, tel que le WAV ou l'AIFF."
+"Vous devez le convertir dans un format audio compatible, tel le WAV ou l'AIFF."
-#: import/Import.cpp:184
+#: import/Import.cpp:273
#, c-format
-msgid "\"%s\" is an Advanced Audio Coding file. \n"
+msgid ""
+"\"%s\" is an Advanced Audio Coding file. \n"
"Audacity cannot open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr "\"%s\" est un fichier Advanced Audio Coding. \n"
+msgstr ""
+"\"%s\" est un fichier Advanced Audio Coding. \n"
"Audacity ne peut pas ouvrir ce type de fichier. \n"
-"Vous devez le convertir dans un format audio compatible, tel que le WAV ou l'AIFF."
+"Vous devez le convertir dans un format audio compatible, tel le WAV ou l'AIFF."
-#: import/Import.cpp:273
+#: import/Import.cpp:278
#, c-format
-#, fuzzy
-msgid "\"%s\" is an encrypted audio file. \n"
+msgid ""
+"\"%s\" is an encrypted audio file. \n"
"These typically are from an online music store. \n"
"Audacity cannot open this type of file due to the encryption. \n"
"Try recording the file into Audacity, or burn it to audio CD then \n"
"extract the CD track to a supported audio format such as WAV or AIFF."
-msgstr "\"%s\" est un fichier audio crypté, de ceux distribués par les boutiques de musique en ligne. \n"
+msgstr ""
+"\"%s\" est un fichier audio crypté, de ceux distribués par les boutiques de musique en ligne. \n"
"Audacity ne peut pas ouvrir ce type de fichier à cause de son cryptage. \n"
"Essayez d'enregistrer ce fichier avec Audacity, ou de le graver sur un CD audio, puis d'extraire \n"
-"les pistes de CD dans un format audio qu'Audacity peut importer, comme le WAV ou l'AIFF."
+"les pistes de CD dans un format audio compatible, comme le WAV ou l'AIFF."
-#: import/Import.cpp:194
+#: import/Import.cpp:283
#, c-format
-msgid "\"%s\" is a RealPlayer media file. \n"
+msgid ""
+"\"%s\" is a RealPlayer media file. \n"
"Audacity cannot open this proprietary format. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr "\"%s\" est un fichier média RealPlayer. \n"
+msgstr ""
+"\"%s\" est un fichier média RealPlayer. \n"
"Audacity ne peut pas ouvrir ce format propriétaire. \n"
-"Vous devez le convertir dans un format audio compatible, tel que le WAV ou l'AIFF."
+"Vous devez le convertir dans un format audio compatible, tel le WAV ou l'AIFF."
-#: import/Import.cpp:206
+#: import/Import.cpp:289
#, c-format
-msgid "\"%s\" is a notes-based file, not an audio file. \n"
+msgid ""
+"\"%s\" is a notes-based file, not an audio file. \n"
"Audacity cannot open this type of file. \n"
"Try converting it to an audio file such as WAV or AIFF and \n"
"then import it, or record it into Audacity."
-msgstr "\"%s\" est un fichier de notes, pas un fichier audio. \n"
+msgstr ""
+"\"%s\" est un fichier de notes, pas un fichier audio. \n"
"Audacity ne peut pas ouvrir ce type de fichier. \n"
-"Essayez de le convertir dans un format audio, tel que le WAV ou l'AIFF.\n"
+"Essayez de le convertir dans un format audio, tel le WAV ou l'AIFF.\n"
"puis de l'importer, ou de l'enregistrer avec Audacity."
-#: import/Import.cpp:212
+#: import/Import.cpp:295
#, c-format
-msgid "\"%s\" is a Musepack audio file. \n"
+msgid ""
+"\"%s\" is a Musepack audio file. \n"
"Audacity cannot open this type of file. \n"
"If you think it might be an mp3 file, rename it to end with \".mp3\" \n"
"and try importing it again. Otherwise you need to convert it to a supported audio \n"
"format, such as WAV or AIFF."
-msgstr "\"%s\" est un fichier audio Musepack. \n"
+msgstr ""
+"\"%s\" est un fichier audio Musepack. \n"
"Audacity ne peut pas ouvrir ce type de fichier. \n"
"Si vous pensez qu'il peut s'agir d'un fichier MP3, renommez-le avec l'extension \".mp3\" \n"
"et essayez de l'importer à nouveau. Sinon, vous devez le convertir dans un format audio \n"
-"compatible, tel que le WAV ou l'AIFF."
+"compatible, tel le WAV ou l'AIFF."
-#: import/Import.cpp:218
+#: import/Import.cpp:301
#, c-format
-msgid "\"%s\" is a Wavpack audio file. \n"
+msgid ""
+"\"%s\" is a Wavpack audio file. \n"
"Audacity cannot open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr "\"%s\" est un fichier audio Wavpack. \n"
+msgstr ""
+"\"%s\" est un fichier audio Wavpack. \n"
"Audacity ne peut pas ouvrir ce type de fichier. \n"
-"Vous devez le convertir dans un format audio compatible, tel que le WAV ou l'AIFF."
+"Vous devez le convertir dans un format audio compatible, tel le WAV ou l'AIFF."
-#: import/Import.cpp:224
+#: import/Import.cpp:307
#, c-format
-msgid "\"%s\" is a Dolby Digital audio file. \n"
+msgid ""
+"\"%s\" is a Dolby Digital audio file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr "\"%s\" est un fichier audio Dolby Digital. \n"
+msgstr ""
+"\"%s\" est un fichier audio Dolby Digital. \n"
"Pour le moment, Audacity ne peut pas ouvrir ce type de fichier. \n"
-"Vous devez le convertir dans un format audio compatible, tel que le WAV ou l'AIFF."
+"Vous devez le convertir dans un format audio compatible, tel le WAV ou l'AIFF."
-#: import/Import.cpp:230
+#: import/Import.cpp:313
#, c-format
-msgid "\"%s\" is an Ogg Speex audio file. \n"
+msgid ""
+"\"%s\" is an Ogg Speex audio file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr "\"%s\" est un fichier audio Ogg Speex. \n"
+msgstr ""
+"\"%s\" est un fichier audio Ogg Speex. \n"
"Pour le moment, Audacity ne peut pas ouvrir ce type de fichier. \n"
-"Vous devez le convertir dans un format audio compatible, tel que le WAV ou l'AIFF."
+"Vous devez le convertir dans un format audio compatible, tel le WAV ou l'AIFF."
-#: import/Import.cpp:314
+#: import/Import.cpp:319
#, c-format
-msgid "\"%s\" is a video file. \n"
+msgid ""
+"\"%s\" is a video file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to extract the audio to a supported format, such as WAV or AIFF."
msgstr ""
+"\"%s\" est un fichier vidéo. \n"
+"Pour le moment, Audacity ne peut pas ouvrir ce type de fichier. \n"
+"Vous devez en extraire l'audio dans un format compatible, tel le WAV ou l'AIFF."
-#: import/Import.cpp:319
+#: import/Import.cpp:324
#, c-format
-msgid "Audacity did not recognize the type of the file '%s'.\n"
+msgid ""
+"Audacity did not recognize the type of the file '%s'.\n"
"If it is uncompressed, try importing it using \"Import Raw\"."
msgstr ""
+"Audacity n'a pas reconnu ce type de fichier '%s'.\n"
+"S'il est non compressé, essayez de l'importer en utilisant \"Importer Raw\""
-#: import/Import.cpp:324
+#: import/Import.cpp:329
#, c-format
-msgid "Audacity recognized the type of the file '%s',\n"
+msgid ""
+"Audacity recognized the type of the file '%s',\n"
"but was unable to import it."
msgstr ""
+"Audacity a reconnu ce type de fichier '%s'.\n"
+"mais il n'a pu l'importer."
#: import/ImportFFmpeg.cpp:34
msgid "FFmpeg-compatible files"
-msgstr ""
+msgstr "Fichiers compatibles - FFmpeg"
-#: import/ImportFFmpeg.cpp:431
+#: import/ImportFFmpeg.cpp:438
#, c-format
msgid "Index[%02x] Codec[%S], Language[%S], Bitrate[%S], Channels[%d], Duration[%d]"
-msgstr ""
+msgstr "Index[%02x] Codec[%S], Langage[%S], Débit[%S], Canaux[%d], Durée[%d]"
-#: import/ImportFLAC.cpp:35
+#: import/ImportFLAC.cpp:43
msgid "FLAC files"
msgstr "Fichiers FLAC"
-#: import/ImportLOF.cpp:92
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr "Fichiers compatibles GStreamer"
+
+#: import/ImportLOF.cpp:95
msgid "List of Files in basic text format"
msgstr "Liste des fichiers en format texte"
#. i18n-hint: You do not need to translate "LOF"
-#: import/ImportLOF.cpp:318
+#: import/ImportLOF.cpp:314
msgid "Invalid window offset in LOF file."
msgstr ""
# i18n-hint: You do not need to translate "LOF"
#. i18n-hint: You do not need to translate "LOF"
-#: import/ImportLOF.cpp:320
-#: import/ImportLOF.cpp:341
-#: import/ImportLOF.cpp:415
-#: import/ImportLOF.cpp:435
+#: import/ImportLOF.cpp:316
+#: import/ImportLOF.cpp:337
+#: import/ImportLOF.cpp:418
+#: import/ImportLOF.cpp:439
msgid "LOF Error"
msgstr "Erreur de LOF"
#. i18n-hint: You do not need to translate "LOF"
-#: import/ImportLOF.cpp:339
+#: import/ImportLOF.cpp:335
msgid "Invalid duration in LOF file."
msgstr "Durée invalide dans le fichier LOF."
-#: import/ImportLOF.cpp:414
+#: import/ImportLOF.cpp:417
msgid "MIDI tracks cannot be offset individually, only audio files can be."
msgstr "Les pistes MIDI ne peuvent être compensées individuellement, seules les pistes audio le peuvent."
# i18n-hint: You do not need to translate "LOF"
#. i18n-hint: You do not need to translate "LOF"
-#: import/ImportLOF.cpp:434
+#: import/ImportLOF.cpp:438
msgid "Invalid track offset in LOF file."
-msgstr ""
+msgstr "Décalage de piste invalide dans le fichier LOF."
#: import/ImportMIDI.cpp:31
msgid ": Filename too short."
-msgstr ""
+msgstr ": Nom de fichier trop court"
-#: import/ImportMIDI.cpp:31 import/ImportMIDI.cpp:39 import/ImportMIDI.cpp:45
+#: import/ImportMIDI.cpp:31
+#: import/ImportMIDI.cpp:39
+#: import/ImportMIDI.cpp:45
#: import/ImportMIDI.cpp:53
msgid "Could not open file "
-msgstr ""
+msgstr "Impossible d'ouvrir le fichier"
#: import/ImportMIDI.cpp:39
msgid ": Incorrect filetype."
-msgstr ""
+msgstr ": Type de fichier incorrect"
-#: import/ImportOGG.cpp:36
+#: import/ImportOGG.cpp:44
msgid "Ogg Vorbis files"
msgstr "Fichiers Ogg Vorbis"
-#: import/ImportOGG.cpp:142
+#: import/ImportOGG.cpp:184
msgid "Media read error"
msgstr "Erreur de lecture du média"
-#: import/ImportOGG.cpp:145
+#: import/ImportOGG.cpp:187
msgid "Not an Ogg Vorbis file"
msgstr "N'est pas un fichier Ogg Vorbis"
-#: import/ImportOGG.cpp:148
+#: import/ImportOGG.cpp:190
msgid "Vorbis version mismatch"
msgstr "Mauvaise version de Vorbis"
-#: import/ImportOGG.cpp:151
+#: import/ImportOGG.cpp:193
msgid "Invalid Vorbis bitstream header"
msgstr "Entête Vorbis bitstream invalide"
-#: import/ImportOGG.cpp:154
+#: import/ImportOGG.cpp:196
msgid "Internal logic fault"
msgstr "Erreur de logique interne"
-#: export/ExportPCM.cpp:320
-#: import/ImportPCM.cpp:47
+#: import/ImportPCM.cpp:66
msgid "WAV, AIFF, and other uncompressed types"
msgstr "WAV, AIFF, et autres formats non compressés"
-#: import/ImportPlugin.h:142 import/ImportRaw.cpp:203
+#: import/ImportPlugin.h:135
+#: import/ImportRaw.cpp:210
#, c-format
msgid "Importing %s"
-msgstr ""
+msgstr "Importation de %s ..."
-#: import/ImportQT.cpp:21
+#: import/ImportQT.cpp:18
msgid "QuickTime files"
msgstr "Fichiers QuickTime"
-#: import/ImportRaw.cpp:205
+#: import/ImportRaw.cpp:212
msgid "Import Raw"
-msgstr ""
+msgstr "Importer des données brutes (Raw)"
-#: import/ImportRaw.cpp:278
+#: import/ImportRaw.cpp:292
msgid "Import Raw Data"
msgstr "Importer des données brutes (Raw)"
#. i18n-hint: Refers to byte-order. Don't translate "endianness" if you don't
+#. know the correct technical word.
#: import/ImportRaw.cpp:337
msgid "No endianness"
msgstr "Pas de \"boutisme\""
#. i18n-hint: Refers to byte-order. Don't translate this if you don't
+#. know the correct technical word.
#: import/ImportRaw.cpp:340
msgid "Little-endian"
msgstr "Mode \"petit-boutiste\""
#. i18n-hint: Refers to byte-order. Don't translate this if you don't
+#. know the correct technical word.
#: import/ImportRaw.cpp:343
msgid "Big-endian"
msgstr "Mode \"Gros-boutiste\""
@@ -7378,1198 +8008,1317 @@ msgstr "Mode \"Gros-boutiste\""
# i18n-hint: Refers to byte-order. Don't translate "endianness" if you don't
# know the correct technical word.
#. i18n-hint: Refers to byte-order. Don't translate "endianness" if you don't
+#. know the correct technical word.
#: import/ImportRaw.cpp:346
msgid "Default endianness"
msgstr "\"Boutisme\" par défaut."
-#: import/ImportRaw.cpp:370
+#: import/ImportRaw.cpp:365
msgid "1 Channel (Mono)"
msgstr "1 Canal (Mono)"
-#: import/ImportRaw.cpp:371
+#: import/ImportRaw.cpp:366
msgid "2 Channels (Stereo)"
msgstr "2 Canaux (Stéréo)"
-#: import/ImportRaw.cpp:373
+#: import/ImportRaw.cpp:368
#, c-format
msgid "%d Channels"
msgstr "%d Canaux"
-#: import/ImportRaw.cpp:369
+#: import/ImportRaw.cpp:379
msgid "Byte order:"
-msgstr ""
+msgstr "Ordre des bits :"
-#: import/ImportRaw.cpp:372
+#: import/ImportRaw.cpp:382
msgid "Channels:"
-msgstr ""
+msgstr "Canaux :"
-#: import/ImportRaw.cpp:386
+#: import/ImportRaw.cpp:392
msgid "Start offset:"
msgstr "Décalage de début :"
-#: import/ImportRaw.cpp:397
+#: import/ImportRaw.cpp:398
msgid "Amount to import:"
msgstr "Portion à importer :"
-#: import/ImportRaw.cpp:408
+#: import/ImportRaw.cpp:404
msgid "Sample rate:"
msgstr "Fréquence d'échantillonnage :"
#: ondemand/ODComputeSummaryTask.h:47
msgid "Import complete. Calculating waveform"
-msgstr ""
+msgstr "Import achevé. Calcul de la forme d'onde"
#: ondemand/ODDecodeTask.h:61
msgid "Decoding Waveform"
-msgstr ""
+msgstr "Décodage de la forme d'onde"
#: ondemand/ODWaveTrackTaskQueue.cpp:327
#, c-format
msgid "%s %2.0f%% complete. Click to change task focal point."
-msgstr ""
+msgstr "%s %2.0f%% achevé. Cliquer pour modifier."
-#: prefs/AudioIOPrefs.cpp:41
-#: prefs/AudioIOPrefs.cpp:42
-msgid "Audio I/O"
-msgstr "E/S audio "
+#: prefs/BatchPrefs.cpp:53
+msgid "Batch"
+msgstr "Traitement en lot"
-#: prefs/AudioIOPrefs.cpp:100
-msgid "1 (Mono)"
-msgstr "1 (Mono)"
+#: prefs/BatchPrefs.cpp:75
+#: prefs/GUIPrefs.cpp:134
+#: prefs/TracksPrefs.cpp:99
+msgid "Behaviors"
+msgstr "Comportements"
-#: prefs/AudioIOPrefs.cpp:101
-msgid "2 (Stereo)"
-msgstr "2 (Stéréo)"
+#: prefs/BatchPrefs.cpp:78
+msgid "&Don't apply effects in batch mode"
+msgstr "&N'appliquer aucun effet en mode Traitement par lot"
-#: prefs/AudioIOPrefs.cpp:115
-msgid "Playback"
-msgstr "Lecture"
+#: prefs/BatchPrefs.cpp:81
+#: prefs/GUIPrefs.cpp:147
+msgid "Cl&eanSpeech Mode (Customized GUI)"
+msgstr "Mode Cl&eanSpeech (interface personnalisée)"
-#: prefs/AudioIOPrefs.cpp:119
-#: prefs/AudioIOPrefs.cpp:137
-#: toolbars/DeviceToolBar.cpp:57
-msgid "Device"
-msgstr "Périphérique :"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
+msgstr "Périphériques"
+
+#: prefs/DevicePrefs.cpp:108
+#: prefs/GUIPrefs.cpp:32
+msgid "Interface"
+msgstr "Interface"
+
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
+msgstr "Hôte"
-#: prefs/AudioIOPrefs.cpp:122
+#: prefs/DevicePrefs.cpp:120
+#: prefs/MidiIOPrefs.cpp:121
msgid "Using:"
msgstr "Utilisation :"
-#: prefs/AudioIOPrefs.cpp:123
-msgid "Portaudio v"
-msgstr "Portaudio v"
+#: prefs/DevicePrefs.cpp:128
+#: prefs/MidiIOPrefs.cpp:114
+#: prefs/PlaybackPrefs.cpp:30
+msgid "Playback"
+msgstr "Lecture"
-#: prefs/AudioIOPrefs.cpp:133
+#: prefs/DevicePrefs.cpp:141
+#: prefs/MidiIOPrefs.cpp:128
+#: prefs/RecordingPrefs.cpp:33
msgid "Recording"
msgstr "Enregistrement"
-#: prefs/AudioIOPrefs.cpp:139
+#: prefs/DevicePrefs.cpp:151
+#: prefs/MidiIOPrefs.cpp:134
msgid "Channels"
msgstr "Canaux"
-#: prefs/AudioIOPrefs.cpp:145
-msgid "Playthrough"
-msgstr "Passage audio"
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr "Passage audio matériel : Lire la nouvelle piste pendant son enregistrement"
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr "Passage audio logiciel : Lire la nouvelle piste pendant son enregistrement"
-
-#: prefs/AudioIOPrefs.cpp:158
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:161
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:162
-msgid "Effects Preview"
-msgstr "Prévisualisation des effets"
-
-#: prefs/AudioIOPrefs.cpp:165
-msgid "Length of preview:"
-msgstr "Longueur de la prévisualisation :"
-
-#: prefs/AudioIOPrefs.cpp:170
-msgid "Cut Preview"
-msgstr "Prévisualisation de la coupe"
-
-#: prefs/AudioIOPrefs.cpp:173
-msgid "Preview before cut region:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:175
-msgid "Preview after cut region:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:183
-msgid "Latency"
-msgstr "Latence"
-
-#: prefs/AudioIOPrefs.cpp:189
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
-msgstr "Buffer audio :\n"
-"(plus haut = plus de latence)"
-
-#: prefs/AudioIOPrefs.cpp:192
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr "Correction de latence :\n"
-"(négative = arrière)"
-
-#: prefs/AudioIOPrefs.cpp:197
-msgid "Seek Time when playing"
-msgstr "Saut de lecture"
-
-#: prefs/AudioIOPrefs.cpp:200
-msgid "Short period:"
-msgstr "Court :"
-
-#: prefs/AudioIOPrefs.cpp:202
-msgid "Long period:"
-msgstr "Long :"
-
-#: prefs/BatchPrefs.cpp:55
-#: prefs/BatchPrefs.cpp:56
-msgid "Batch"
-msgstr "Traitement en lot"
-
-#: prefs/BatchPrefs.cpp:77
-#: prefs/GUIPrefs.cpp:92
-msgid "Behaviors"
-msgstr "Comportements"
-
-#: prefs/BatchPrefs.cpp:80
-#: prefs/GUIPrefs.cpp:129
-msgid "&Don't apply effects in batch mode"
-msgstr "&N'appliquer aucun effet en mode Traitement par lot"
+#: prefs/DevicePrefs.cpp:241
+#: prefs/MidiIOPrefs.cpp:99
+msgid "1 (Mono)"
+msgstr "1 (Mono)"
-#: prefs/BatchPrefs.cpp:83
-#: prefs/GUIPrefs.cpp:132
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr "Mode Cl&eanSpeech (interface personnalisée)"
+#: prefs/DevicePrefs.cpp:244
+#: prefs/MidiIOPrefs.cpp:100
+msgid "2 (Stereo)"
+msgstr "2 (Stéréo)"
-#: prefs/DirectoriesPrefs.cpp:55
-#: prefs/DirectoriesPrefs.cpp:56
-#: prefs/PrefsDialog.cpp:279
+#: prefs/DirectoriesPrefs.cpp:52
+#: prefs/PrefsDialog.cpp:193
msgid "Directories"
msgstr "Répertoires"
-#: prefs/DirectoriesPrefs.cpp:87
+#: prefs/DirectoriesPrefs.cpp:82
msgid "Temporary files directory"
msgstr "Répertoire des fichiers temporaires"
-#: prefs/DirectoriesPrefs.cpp:91
+#: prefs/DirectoriesPrefs.cpp:89
msgid "Location:"
msgstr "Emplacement :"
-#: prefs/DirectoriesPrefs.cpp:93
+#: prefs/DirectoriesPrefs.cpp:96
msgid "Free Space:"
msgstr "Espace libre :"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr "Sauvegarde automatique"
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr "Sauvegarde automatiquement une copie du projet dans un répertoire séparé"
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
-msgstr "Intervalle de sauvegarde automatique"
+#: prefs/DirectoriesPrefs.cpp:103
+msgid "Audio cache"
+msgstr "Cache audio"
#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
-msgstr "minutes"
+msgid "Play and/or record using RAM (useful for slow drives)"
+msgstr "Lecture et/ou enregistrement en mémoire RAM (utile pour des disques lents)"
-#: prefs/DirectoriesPrefs.cpp:110
-msgid "Audio cache"
-msgstr "Cache audio"
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
+msgstr "Mémoire libre minimale (MB) :"
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:118
+msgid ""
+"If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
+"Si la mémoire système libre tombe en-dessous de cette valeur, l'audio pourra\n"
+"plus être dans le cache mémoire et sera écrit sur le disque. "
-#: prefs/DirectoriesPrefs.cpp:121
+#: prefs/DirectoriesPrefs.cpp:126
msgid "Choose a location to place the temporary directory"
msgstr "Choisir un emplacement pour placer le répertoire temporaire"
-#: prefs/DirectoriesPrefs.cpp:166
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr "Indisponible - la localisation ci-dessus n'existe pas"
+
+#: prefs/DirectoriesPrefs.cpp:173
#, c-format
msgid "Directory %s does not exist. Create it?"
msgstr "Le répertoire %s n'existe pas. Le créer ?"
-#: prefs/DirectoriesPrefs.cpp:168
+#: prefs/DirectoriesPrefs.cpp:175
msgid "New Temporary Directory"
msgstr "Nouveau Répertoire Temporaire"
-#: prefs/DirectoriesPrefs.cpp:187
+#: prefs/DirectoriesPrefs.cpp:193
#, c-format
msgid "Directory %s is not writable"
msgstr "Le répertoire %s est protégé en écriture."
-#: prefs/DirectoriesPrefs.cpp:199
+#: prefs/DirectoriesPrefs.cpp:207
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "Les changements de dossier temporaire ne prendront effet qu'après avoir redémarré Audacity "
-#: prefs/FileFormatPrefs.cpp:48
-#: prefs/FileFormatPrefs.cpp:49
-msgid "Import / Export"
-msgstr "Import / Export"
-
-#: prefs/FileFormatPrefs.cpp:77
-msgid "MP3 Export Library"
-msgstr "Librairie d'export MP3 :"
-
-#: prefs/FileFormatPrefs.cpp:80
-msgid "MP3 Library Version:"
-msgstr "Version de la librairie MP3 :"
-
-#: prefs/FileFormatPrefs.cpp:86
-msgid "MP3 Library:"
-msgstr "Librairie MP3 :"
-
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:91
-msgid "LAME MP3 Library:"
-msgstr "Librairie MP3 LAME :"
-
-#: prefs/FileFormatPrefs.cpp:94
-msgid "&Download"
-msgstr "Téléchargement"
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:136
-#, fuzzy
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr "Note : Pour choisir les options de qualité d'exportation, cliquer sur le bouton Options de la boîte de dialogue d'exportation.\n"
-
-#: prefs/FileFormatPrefs.cpp:100
-msgid "When importing audio files"
-msgstr "A l'importation de fichiers audio"
-
-#: prefs/FileFormatPrefs.cpp:103
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
-msgstr "Faire une copie des fichiers audio non compressés avant le montage (plus sûr)"
+#: prefs/GUIPrefs.cpp:51
+msgid "In Browser"
+msgstr "Dans l'explorateur"
-#: prefs/FileFormatPrefs.cpp:104
-msgid "&Read uncompressed audio files directly from the original (faster)"
-msgstr "Lire les fichiers audio non compressés directement depuis l'original (plus rapide)"
+#: prefs/GUIPrefs.cpp:52
+msgid "From Internet"
+msgstr "Depuis Internet"
-#: prefs/FileFormatPrefs.cpp:106
-msgid "&Normalize all tracks in project"
-msgstr "&Normaliser toutes les pistes du projet"
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
+msgstr "36"
-#: prefs/FileFormatPrefs.cpp:111
-msgid "When saving a project that depends on other audio files"
-msgstr "Lors de l'enregistrement d'un projet dépendant d'autres fichiers audio"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
+msgstr "48"
-#: prefs/FileFormatPrefs.cpp:114
-msgid "Always © all audio into project (safest)"
-msgstr "Toujours copier tout l'audio dans le projet (plus sûr)"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
+msgstr "60"
-#: prefs/FileFormatPrefs.cpp:115
-msgid "&Do not copy any audio"
-msgstr "Ne pas copier d'au&dio"
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
+msgstr "96"
-#: prefs/FileFormatPrefs.cpp:116
-msgid "&Ask user"
-msgstr "Dem&ander à l'utilisateur"
-
-#: prefs/FileFormatPrefs.cpp:120
-msgid "When exporting tracks to an audio file"
-msgstr "A l'exportation dans un fichier audio"
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
+msgstr "120"
-#: prefs/FileFormatPrefs.cpp:123
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
-msgstr "Toujours réduire la totalité des pistes à un mixage stéréo ou mono."
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
+msgstr "145"
-#: prefs/FileFormatPrefs.cpp:124
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
-msgstr "&Utiliser un mixage personnalisé (par exemple exporter en multicanal 5.1) "
-
-#: prefs/FileFormatPrefs.cpp:126
-msgid "S&how Metadata Editor prior to export step"
-msgstr "Ouvrir l'éditeur de métadonnées avant l'exportation"
+#: prefs/GUIPrefs.cpp:61
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 dB (pour édition de grande amplitude)"
-#: prefs/GUIPrefs.cpp:34
-#: prefs/GUIPrefs.cpp:35
-msgid "Interface"
-msgstr "Interface"
+#: prefs/GUIPrefs.cpp:62
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 dB (amplitude PCM en échantillonnage 8 bits)"
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
-msgstr "Dans l'explorateur"
+#: prefs/GUIPrefs.cpp:63
+msgid "-60 dB (PCM range of 10 bit samples)"
+msgstr "-60 dB (amplitude PCM d'échantillon 10 bits)"
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
-msgstr "Depuis Internet"
+#: prefs/GUIPrefs.cpp:64
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 dB (amplitude PCM en échantillonnage 16 bits)"
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
-msgstr "Simple"
+#: prefs/GUIPrefs.cpp:65
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 dB (limite approximative de l'audition humaine)"
-#: prefs/GUIPrefs.cpp:94
-msgid "&Update display while playing"
-msgstr "Act&ualiser l'affichage pendant la lecture"
+#: prefs/GUIPrefs.cpp:66
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB (amplitude PCM en échantillonnage 24 bits)"
#: prefs/GUIPrefs.cpp:96
-#, fuzzy
-msgid "Cl&osing last window quits Audacity"
-msgstr "La fermeture de la dernière fenêtre referme Audacity"
+#: prefs/SpectrumPrefs.cpp:129
+#: prefs/TracksPrefs.cpp:75
+msgid "Display"
+msgstr "Affichage"
#: prefs/GUIPrefs.cpp:98
-msgid "Enable &dragging of left and right selection edges"
-msgstr "Permettre le glissement des bordures de sélection gauche et droite"
-
-#: prefs/GUIPrefs.cpp:100
msgid "Er&gonomic order of audio I/O buttons"
-msgstr ""
+msgstr "Activer l'er&gonomie des boutons d'E/S audio"
-#: prefs/GUIPrefs.cpp:102
-msgid "Automatically &fit tracks vertically zoomed"
-msgstr "Ajuster automatiquement les pistes à la hauteur de la fenêtre"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
+msgstr "Afficher le message d'accueil au lancement du programme"
-#: prefs/GUIPrefs.cpp:104
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
-msgstr ""
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
+msgstr "Amplitude en dB du VU-mètre/Forme d'onde"
-#: prefs/GUIPrefs.cpp:106
-msgid "Editing a &clip can move other clips"
-msgstr "L'édition d'un &clip peut déplacer les autres clips"
+#: prefs/GUIPrefs.cpp:123
+msgid "Help:"
+msgstr "Aide :"
-#: prefs/GUIPrefs.cpp:108
-msgid "&Select all audio in project, if none selected"
-msgstr "&Sélectionner tout l'audio d'un projet si rien n'est sélectionné"
+#: prefs/GUIPrefs.cpp:136
+msgid "Cl&osing last window quits Audacity"
+msgstr "La fermeture de la dernière fenêtre referme Audacity"
-#: prefs/GUIPrefs.cpp:110
+#: prefs/GUIPrefs.cpp:139
msgid "&Beep on completion of longer activities"
msgstr "&Bip à l'achèvement des travaux de longue durée"
-#: prefs/GUIPrefs.cpp:114
-msgid "Show / Hide"
-msgstr "Montrer / Cacher"
-
-#: prefs/GUIPrefs.cpp:116
-msgid "Enable cut &lines"
-msgstr "Autoriser les lignes de coupe"
-
-#: prefs/GUIPrefs.cpp:118
-msgid "Show warnings about &temp files"
-msgstr "Afficher les avertissements concernant les fichiers &temporaires"
-
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:122
-#, fuzzy
-msgid "Show &Welcome Message at program start up"
-msgstr "Afficher le message de bienvenue au lancement du programme"
-
-#: prefs/GUIPrefs.cpp:126
+#: prefs/GUIPrefs.cpp:145
msgid "Modes"
msgstr "Modes"
-#: prefs/GUIPrefs.cpp:129
-msgid "Don't a&pply effects in batch mode"
-msgstr ""
+#: prefs/GUIPrefs.cpp:151
+#, fuzzy
+msgid "Display VST effects in GUI mode"
+msgstr "&N'appliquer aucun effet en mode Traitement par lot"
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
-msgstr ""
+#: prefs/GUIPrefs.cpp:156
+msgid "Don't a&pply effects in batch mode"
+msgstr "N'a&ppliquer aucun effet en mode Traitement par lot"
-#: prefs/GUIPrefs.cpp:141
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 dB (pour édition de grande amplitude)"
+#: prefs/ImportExportPrefs.cpp:28
+msgid "Import / Export"
+msgstr "Import / Export"
-#: prefs/GUIPrefs.cpp:142
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 dB (amplitude PCM en échantillonnage 8 bits)"
+#: prefs/ImportExportPrefs.cpp:53
+msgid "When importing audio files"
+msgstr "A l'importation de fichiers audio"
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
-msgstr "-60 dB (amplitude PCM d'échantillon 10 bits)"
+#: prefs/ImportExportPrefs.cpp:57
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
+msgstr "Faire une copie des fichiers audio non compressés avant le montage (plus sûr)"
-#: prefs/GUIPrefs.cpp:144
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 dB (amplitude PCM en échantillonnage 16 bits)"
+#: prefs/ImportExportPrefs.cpp:59
+msgid "&Read uncompressed audio files directly from the original (faster)"
+msgstr "Lire les fichiers audio non compressés directement depuis l'original (plus rapide)"
-#: prefs/GUIPrefs.cpp:145
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 dB (limite approximative de l'audition humaine)"
+#: prefs/ImportExportPrefs.cpp:64
+msgid "&Normalize all tracks in project"
+msgstr "&Normaliser toutes les pistes du projet"
-#: prefs/GUIPrefs.cpp:146
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB (amplitude PCM en échantillonnage 24 bits)"
+#: prefs/ImportExportPrefs.cpp:70
+msgid "When exporting tracks to an audio file"
+msgstr "A l'exportation dans un fichier audio"
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
-msgstr "Mode dd'affichage par défaut"
+#: prefs/ImportExportPrefs.cpp:74
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+msgstr "Toujours réduire la totalité des pistes à un mixage stéréo ou mono."
-#: prefs/GUIPrefs.cpp:166
-msgid "Other interface choices"
-msgstr "Autres choix d'interface"
+#: prefs/ImportExportPrefs.cpp:76
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+msgstr "&Utiliser un mixage personnalisé (par exemple exporter en multicanal 5.1) "
-#: prefs/GUIPrefs.cpp:169
-msgid "Help:"
-msgstr "Aide :"
+#: prefs/ImportExportPrefs.cpp:81
+msgid "S&how Metadata Editor prior to export step"
+msgstr "Ouvrir l'éditeur de métadonnées avant l'exportation"
-#: prefs/GUIPrefs.cpp:170
-msgid "Solo Button:"
-msgstr "Bouton solo :"
+#: prefs/ImportExportPrefs.cpp:84
+msgid ""
+"Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
+msgstr ""
+"Note : Pour choisir les options de qualité d'exportation, cliquer sur le bouton Options\n"
+"de la boîte de dialogue d'exportation."
-#: prefs/KeyConfigPrefs.cpp:64
-#: prefs/KeyConfigPrefs.cpp:65
+#: prefs/KeyConfigPrefs.cpp:71
msgid "Keyboard"
msgstr "Clavier"
-#: prefs/KeyConfigPrefs.cpp:86
+#: prefs/KeyConfigPrefs.cpp:95
msgid "Keyboard preferences currently unavailable."
-msgstr ""
+msgstr "Les préférences de clavier ne sont pas disponible pour l'instant."
-#: prefs/KeyConfigPrefs.cpp:87
+#: prefs/KeyConfigPrefs.cpp:96
msgid "Open a new project to modify keyboard shortcuts."
-msgstr ""
+msgstr "Ouvrir un nuveau projet pour modifier les raccourcis clavier."
-#: prefs/KeyConfigPrefs.cpp:95
+#: prefs/KeyConfigPrefs.cpp:121
msgid "Key Bindings"
msgstr "Définition des raccourcis clavier"
-#: prefs/KeyConfigPrefs.cpp:115
+#: prefs/KeyConfigPrefs.cpp:144
msgid "S&et"
msgstr "Réglag&es"
-#: prefs/KeyConfigPrefs.cpp:120
+#: prefs/KeyConfigPrefs.cpp:150
msgid "Note: Pressing Cmd+Q will quit. All other keys are valid."
msgstr "Note: Frapper Cmd+Q pour quitter. Toutes les autres touches sont valides."
-#: prefs/KeyConfigPrefs.cpp:124
-#: prefs/ThemePrefs.cpp:105
+#: prefs/KeyConfigPrefs.cpp:157
+#: prefs/ThemePrefs.cpp:125
msgid "&Defaults"
msgstr "Réglages par défaut"
-#: prefs/KeyConfigPrefs.cpp:143
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr "Commande"
+
+#: prefs/KeyConfigPrefs.cpp:172
msgid "Key Combination"
msgstr "Combinaison de touches"
-#: prefs/KeyConfigPrefs.cpp:163
-msgid "Export Keyboard Shortcuts As:"
-msgstr "Exporter les raccourcis clavier sous :"
+#: prefs/KeyConfigPrefs.cpp:196
+#: toolbars/EditToolBar.cpp:143
+#: toolbars/EditToolBar.cpp:195
+msgid "Undo"
+msgstr "Annuler"
-#: prefs/KeyConfigPrefs.cpp:181
-msgid "Error saving keyboard shortcuts"
-msgstr "Erreur d'enregistrement des raccourcis clavier"
+#: prefs/KeyConfigPrefs.cpp:199
+#: toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr "Refaire"
-#: prefs/KeyConfigPrefs.cpp:196
+#: prefs/KeyConfigPrefs.cpp:224
msgid "Select an XML file containing Audacity keyboard shortcuts..."
msgstr "Choisir un fichier XML contenant les raccourcis clavier..."
-#: prefs/KeyConfigPrefs.cpp:213
+#: prefs/KeyConfigPrefs.cpp:242
msgid "Error loading keyboard shortcuts"
msgstr "Erreur de chargement des raccourcis clavier"
-#: prefs/KeyConfigPrefs.cpp:241
+#: prefs/KeyConfigPrefs.cpp:255
+msgid "Export Keyboard Shortcuts As:"
+msgstr "Exporter les raccourcis clavier sous :"
+
+#: prefs/KeyConfigPrefs.cpp:281
+msgid "Error saving keyboard shortcuts"
+msgstr "Erreur d'enregistrement des raccourcis clavier"
+
+#: prefs/KeyConfigPrefs.cpp:331
#, c-format
-msgid "The keyboard shortcut '%s' is already assigned to:\n"
+msgid ""
+"The keyboard shortcut '%s' is already assigned to:\n"
"\n"
"'%s'"
-msgstr "Le raccourcis clavier '%s' est déjà assigné à :\n"
+msgstr ""
+"Le raccourcis clavier '%s' est déjà assigné à :\n"
"\n"
"'%s'"
-#: prefs/KeyConfigPrefs.cpp:367
-#: toolbars/EditToolBar.cpp:144
-msgid "Undo"
-msgstr "Annuler"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr "Librairies"
+
+#: prefs/LibraryPrefs.cpp:79
+msgid "MP3 Export Library"
+msgstr "Librairie d'export MP3 :"
-#: prefs/AudioIOPrefs.cpp:147
+#: prefs/LibraryPrefs.cpp:83
+msgid "MP3 Library Version:"
+msgstr "Version de la librairie MP3 :"
+
+#: prefs/LibraryPrefs.cpp:89
+msgid "MP3 Library:"
+msgstr "Librairie MP3 :"
+
+#: prefs/LibraryPrefs.cpp:92
+#: prefs/LibraryPrefs.cpp:124
+msgid "&Locate..."
+msgstr "&Localiser..."
+
+#: prefs/LibraryPrefs.cpp:94
+msgid "LAME MP3 Library:"
+msgstr "Librairie MP3 LAME :"
+
+#: prefs/LibraryPrefs.cpp:97
+#: prefs/LibraryPrefs.cpp:130
+msgid "&Download"
+msgstr "Téléchargement"
+
+#: prefs/LibraryPrefs.cpp:104
+msgid "FFmpeg Import/Export Library"
+msgstr "Librairie d'export FFmpeg"
+
+#: prefs/LibraryPrefs.cpp:108
+msgid "FFmpeg Library Version:"
+msgstr "Version de la librairie FFmpeg :"
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr "Aucune librairie FFmpeg compatible n'a été trouvée"
+
+#: prefs/LibraryPrefs.cpp:120
+#: prefs/LibraryPrefs.cpp:126
+msgid "FFmpeg Library:"
+msgstr "Librairie FFmpeg :"
+
+#: prefs/MidiIOPrefs.cpp:44
+#: prefs/MidiIOPrefs.cpp:45
+msgid "Audio I/O"
+msgstr "E/S audio "
+
+#: prefs/MidiIOPrefs.cpp:122
+msgid "Portaudio v"
+msgstr "Portaudio v"
+
+#: prefs/MidiIOPrefs.cpp:140
+#: prefs/RecordingPrefs.cpp:57
+msgid "Playthrough"
+msgstr "Passage audio"
+
+#: prefs/MidiIOPrefs.cpp:142
msgid "&Play other tracks while recording new one"
msgstr "Lire les autres pistes pendant l'enregistrement d'une nouvelle"
-#: prefs/MidiIOPrefs.cpp:149
+#: prefs/MidiIOPrefs.cpp:145
msgid "&Hardware Playthrough (Play new track while recording it)"
-msgstr ""
+msgstr "Passage audio matériel (Lire la nouvelle piste pendant son enregistrement)"
-#: prefs/MidiIOPrefs.cpp:152
+#: prefs/MidiIOPrefs.cpp:148
msgid "&Software Playthrough (Play new track while recording it)"
-msgstr ""
+msgstr "Passage audio logiciel (Lire la nouvelle piste pendant son enregistrement)"
+
+#: prefs/MidiIOPrefs.cpp:153
+#: prefs/PlaybackPrefs.cpp:68
+msgid "Cut Preview"
+msgstr "Prévisualisation de la coupe"
-#: prefs/MidiIOPrefs.cpp:160
+#: prefs/MidiIOPrefs.cpp:156
msgid "Play before cut region:"
-msgstr ""
+msgstr "Lecture avant la coupe :"
-#: prefs/MidiIOPrefs.cpp:162
+#: prefs/MidiIOPrefs.cpp:158
msgid "Play after cut region:"
-msgstr ""
+msgstr "Lecture après la coupe :"
+
+#: prefs/MidiIOPrefs.cpp:163
+#: prefs/RecordingPrefs.cpp:76
+msgid "Latency"
+msgstr "Latence"
-#: prefs/MidiIOPrefs.cpp:173
+#: prefs/MidiIOPrefs.cpp:168
+#: prefs/RecordingPrefs.cpp:82
msgid "Audio to buffer:"
-msgstr ""
+msgstr "Audio vers tampon :"
-#: prefs/MidiIOPrefs.cpp:176
+#: prefs/MidiIOPrefs.cpp:170
+#: prefs/RecordingPrefs.cpp:88
msgid "Latency correction:"
-msgstr ""
+msgstr "Correction de latence :"
-#: prefs/MidiIOPrefs.cpp:183
+#: prefs/MidiIOPrefs.cpp:177
msgid "Seek Time"
-msgstr ""
+msgstr "Temps passé"
+
+#: prefs/MidiIOPrefs.cpp:180
+#: prefs/PlaybackPrefs.cpp:92
+msgid "Short period:"
+msgstr "Court :"
-#: prefs/MidiIOPrefs.cpp:196
+#: prefs/MidiIOPrefs.cpp:182
+#: prefs/PlaybackPrefs.cpp:98
+msgid "Long period:"
+msgstr "Long :"
+
+#: prefs/MidiIOPrefs.cpp:187
+#: prefs/PlaybackPrefs.cpp:54
+msgid "Effects Preview"
+msgstr "Prévisualisation des effets"
+
+#: prefs/MidiIOPrefs.cpp:190
msgid "Play when previewing:"
-msgstr ""
+msgstr "Lecture durant la prélecture"
-#: prefs/MousePrefs.cpp:55
-#: prefs/MousePrefs.cpp:56
+#: prefs/MousePrefs.cpp:57
msgid "Mouse"
msgstr "Souris"
-#: prefs/MousePrefs.cpp:78
+#: prefs/MousePrefs.cpp:84
msgid "Mouse Bindings (default values, not configurable)"
msgstr "Souris (réglages par défaut, non modifiables)"
-#: prefs/MousePrefs.cpp:93
+#: prefs/MousePrefs.cpp:97
msgid "Tool"
msgstr "Outil"
-#: prefs/MousePrefs.cpp:94
+#: prefs/MousePrefs.cpp:98
msgid "Command Action"
msgstr "Commande"
-#: prefs/MousePrefs.cpp:95
+#: prefs/MousePrefs.cpp:99
msgid "Buttons"
msgstr "Boutons"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:117
-#: prefs/MousePrefs.cpp:122
+#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:121
+#: prefs/MousePrefs.cpp:126
msgid "Left-Click"
msgstr "Clic Gauche"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:100
-#: prefs/MousePrefs.cpp:101
#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:103
+#: prefs/MousePrefs.cpp:104
+#: prefs/MousePrefs.cpp:105
+#: prefs/MousePrefs.cpp:106
msgid "Select"
msgstr "Sélection"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:122
+#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:126
msgid "Set Selection Point"
msgstr "Définir un point de sélection"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:103
+#: prefs/MousePrefs.cpp:109
#: prefs/MousePrefs.cpp:115
#: prefs/MousePrefs.cpp:119
#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:127
msgid "Left-Drag"
msgstr "Glisser à gauche"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:103
+#: prefs/MousePrefs.cpp:127
msgid "Set Selection Range"
msgstr "Régler la sélection"
-#: prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:104
msgid "Extend Selection Range"
msgstr "Etendre la sélection"
-#: prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:104
msgid "Shift-Left-Click"
msgstr "Maj + Clic gauche"
-#: prefs/MousePrefs.cpp:101
+#: prefs/MousePrefs.cpp:105
msgid "Left-Double-Click"
msgstr "Double clic gauche"
-#: prefs/MousePrefs.cpp:101
+#: prefs/MousePrefs.cpp:105
msgid "Select Clip or Entire Track"
msgstr "Sélectionner le clip ou la piste entière"
-#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:106
msgid "Ctrl-Left-Click"
msgstr "Ctrl + Clic gauche"
-#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:106
msgid "Set Selection Point and Play"
msgstr "Définir un point de sélection et lire"
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:107
#: prefs/MousePrefs.cpp:108
#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:110
+#: prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:112
+#: prefs/MousePrefs.cpp:113
msgid "Zoom"
msgstr "Zoom"
-#: prefs/MousePrefs.cpp:104
+#: prefs/MousePrefs.cpp:108
msgid "Zoom in on Point"
msgstr "Zoom avant au point"
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:129
msgid "Zoom in on a Range"
msgstr "Zoom sur la sélection"
-#: prefs/MousePrefs.cpp:105
+#: prefs/MousePrefs.cpp:109
msgid "same as right-drag"
msgstr "Comme glisser à droite"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:110
+#: prefs/MousePrefs.cpp:128
msgid "Right-Click"
msgstr "Clic droit"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:110
+#: prefs/MousePrefs.cpp:128
msgid "Zoom out one step"
msgstr "Zoom arrière d'un cran"
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:129
msgid "Right-Drag"
msgstr "Glisser à droite"
-#: prefs/MousePrefs.cpp:107
+#: prefs/MousePrefs.cpp:111
msgid "same as left-drag"
msgstr "comme glisser à gauche"
-#: prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:112
msgid "Shift-Drag"
msgstr "Maj. + glisser"
-#: prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:112
msgid "Zoom out on a Range"
msgstr "Zoom arrière sur la sélection"
-#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:113
msgid "Middle-Click"
msgstr "Clic du milieu"
-#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:113
msgid "Zoom default"
msgstr "Zoom par défaut"
-#: prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:115
msgid "Time shift clip or move up/down between tracks"
msgstr "Glissement des clips temporellement ou d'une piste à l'autre "
-#: prefs/MousePrefs.cpp:112
+#: prefs/MousePrefs.cpp:116
msgid "Shift-Left-Drag"
msgstr "Maj. + glisser à gauche"
-#: prefs/MousePrefs.cpp:112
+#: prefs/MousePrefs.cpp:116
msgid "Time shift all clips in track"
msgstr "Glissement temporel de tous les clips de la piste"
-#: prefs/MousePrefs.cpp:113
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:117
+#: prefs/MousePrefs.cpp:124
msgid "Ctrl-Left-Drag"
msgstr "Ctrl + glisser à gauche"
-#: prefs/MousePrefs.cpp:113
+#: prefs/MousePrefs.cpp:117
msgid "Move clip up/down between tracks"
msgstr "Déplacer les clips d'une piste à l'autre"
-#: prefs/MousePrefs.cpp:115
+#: prefs/MousePrefs.cpp:119
msgid "Change Amplification Envelope"
msgstr "Changer l'amplification"
-#: prefs/MousePrefs.cpp:117
+#: prefs/MousePrefs.cpp:121
msgid "Change Sample"
msgstr "Modifier l'échantillon"
-#: prefs/MousePrefs.cpp:117
-#: prefs/MousePrefs.cpp:118
-#: prefs/MousePrefs.cpp:119
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:121
+#: prefs/MousePrefs.cpp:122
+#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:124
msgid "Pencil"
msgstr "Crayon"
-#: prefs/MousePrefs.cpp:118
+#: prefs/MousePrefs.cpp:122
msgid "Alt-Left-Click"
msgstr "Alt + Clic gauche"
-#: prefs/MousePrefs.cpp:118
+#: prefs/MousePrefs.cpp:122
msgid "Smooth at Sample"
msgstr "Lisser l'échantillon"
-#: prefs/MousePrefs.cpp:119
+#: prefs/MousePrefs.cpp:123
msgid "Change Several Samples"
msgstr "Changer plusieurs échantillons"
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:124
msgid "Change ONE Sample only"
msgstr "Changer un seul échantillon :"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
-#: prefs/MousePrefs.cpp:124
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:126
+#: prefs/MousePrefs.cpp:127
+#: prefs/MousePrefs.cpp:128
+#: prefs/MousePrefs.cpp:129
msgid "Multi"
msgstr "Multi"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:126
+#: prefs/MousePrefs.cpp:127
msgid "same as select tool"
msgstr "Comme l'outil de sélection"
-#: prefs/MousePrefs.cpp:124
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:128
+#: prefs/MousePrefs.cpp:129
msgid "same as zoom tool"
msgstr "Comme l'outil zoom"
-#: prefs/MousePrefs.cpp:127
-#: prefs/MousePrefs.cpp:128
-#: prefs/MousePrefs.cpp:129
+#: prefs/MousePrefs.cpp:131
+#: prefs/MousePrefs.cpp:132
+#: prefs/MousePrefs.cpp:133
msgid "Any"
msgstr "Tout"
-#: prefs/MousePrefs.cpp:127
+#: prefs/MousePrefs.cpp:131
msgid "Scroll up or down"
msgstr "Défilement haut/bas"
-#: prefs/MousePrefs.cpp:127
+#: prefs/MousePrefs.cpp:131
msgid "Wheel-Rotate"
msgstr "Molette de souris"
-#: prefs/MousePrefs.cpp:128
+#: prefs/MousePrefs.cpp:132
msgid "Scroll left or right"
msgstr "Rouler à gauche ou à droite"
-#: prefs/MousePrefs.cpp:128
+#: prefs/MousePrefs.cpp:132
msgid "Shift-Wheel-Rotate"
msgstr "Maj. et roulette de souris"
-#: prefs/MousePrefs.cpp:129
+#: prefs/MousePrefs.cpp:133
msgid "Ctrl-Wheel-Rotate"
msgstr "Ctrl + Roulette souris"
-#: prefs/MousePrefs.cpp:129
+#: prefs/MousePrefs.cpp:133
msgid "Zoom in or out"
msgstr "Zoom avant/arrière"
-#: prefs/PrefsDialog.cpp:89
+#: prefs/PlaybackPrefs.cpp:58
+msgid "Length of preview:"
+msgstr "Longueur de la prélecture :"
+
+#: prefs/PlaybackPrefs.cpp:72
+msgid "Preview before cut region:"
+msgstr "Prélecture avant la coupe :"
+
+#: prefs/PlaybackPrefs.cpp:78
+msgid "Preview after cut region:"
+msgstr "Prélecture après la coupe :"
+
+#: prefs/PlaybackPrefs.cpp:88
+msgid "Seek Time when playing"
+msgstr "Saut de lecture"
+
+#: prefs/PrefsDialog.cpp:72
msgid "Audacity Preferences"
msgstr "Préférences d'Audacity"
-#: prefs/QualityPrefs.cpp:73
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr "Projets"
+
+#: prefs/ProjectsPrefs.cpp:56
+msgid "When saving a project that depends on other audio files"
+msgstr "Lors de l'enregistrement d'un projet dépendant d'autres fichiers audio"
+
+#: prefs/ProjectsPrefs.cpp:60
+msgid "Always © all audio into project (safest)"
+msgstr "Toujours copier tout l'audio dans le projet ( plus sûr)"
+
+#: prefs/ProjectsPrefs.cpp:62
+msgid "&Do not copy any audio"
+msgstr "Ne pas copier d'audio"
+
+#: prefs/ProjectsPrefs.cpp:64
+msgid "&Ask user"
+msgstr "Demander à l'utilisateur"
+
+#: prefs/ProjectsPrefs.cpp:71
+msgid "Auto save"
+msgstr "Sauvegarde automatique"
+
+#: prefs/ProjectsPrefs.cpp:73
+msgid "Auto save a copy of the project in a separate folder"
+msgstr "Sauvegarder automatiquement une copie du projet dans un répertoire séparé"
+
+#: prefs/ProjectsPrefs.cpp:79
+msgid "Auto save interval:"
+msgstr "Intervalle de sauvegarde automatique"
+
+#: prefs/ProjectsPrefs.cpp:83
+msgid "minutes"
+msgstr "minutes"
+
+#: prefs/QualityPrefs.cpp:75
msgid "Rectangle"
msgstr "Rectangulaire"
-#: prefs/QualityPrefs.cpp:74
+#: prefs/QualityPrefs.cpp:76
msgid "Triangle"
msgstr "Triangle"
-#: prefs/QualityPrefs.cpp:75
+#: prefs/QualityPrefs.cpp:77
msgid "Shaped"
msgstr "Onde"
-#: prefs/QualityPrefs.cpp:122
+#: prefs/QualityPrefs.cpp:125
msgid "Sampling"
msgstr "Echantillonnage"
-#: prefs/QualityPrefs.cpp:125
+#: prefs/QualityPrefs.cpp:129
msgid "Default Sample Rate:"
msgstr "Fréquence d'échantillonnage par défaut :"
-#: prefs/QualityPrefs.cpp:127
+#: prefs/QualityPrefs.cpp:154
msgid "Default Sample Format:"
msgstr "Format d'échantillonnage par défaut :"
-#: prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "Convertisseur d'échantillonnage en temps réel :"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr "Conversion en temps réel"
-#: prefs/QualityPrefs.cpp:139
-msgid "High-quality sample rate converter:"
-msgstr "Convertisseur d'échantillonnage de haute qualité :"
+#: prefs/QualityPrefs.cpp:171
+#: prefs/QualityPrefs.cpp:193
+msgid "Sample Rate Converter:"
+msgstr "Convertisseur d'échantillonnage "
-#: prefs/QualityPrefs.cpp:142
-msgid "Real-time dither:"
-msgstr "Lissage en temps réel :"
+#: prefs/QualityPrefs.cpp:178
+#: prefs/QualityPrefs.cpp:200
+msgid "Dither"
+msgstr "Lissage"
-#: prefs/QualityPrefs.cpp:145
-msgid "High-quality dither:"
-msgstr "Lissage de haute qualité :"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr "Conversion de haute qualité"
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
-msgstr "Conversion"
+#: prefs/RecordingPrefs.cpp:59
+msgid "Overdub: &Play other tracks while recording new one"
+msgstr "Doublage : lire les autres &pistes pendant l'enregistrement d'une nouvelle"
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
-msgstr "Convertisseur d'échantillonnage "
+#: prefs/RecordingPrefs.cpp:63
+msgid "&Hardware Playthrough: Play new track while recording it"
+msgstr "Passage audio matériel : Lire la nouvelle piste pendant son enregistrement"
-#: prefs/QualityPrefs.cpp:164
-msgid "Dither"
-msgstr "Lisser"
+#: prefs/RecordingPrefs.cpp:67
+msgid "&Software Playthrough: Play new track while recording or monitoring"
+msgstr "Pa&ssage audio logiciel : Lire la nouvelle piste pendant son enregistrement sa visualisation"
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
-msgstr "Temps réel :"
+#: prefs/RecordingPrefs.cpp:71
+msgid "(uncheck when recording \"stereo mix\")"
+msgstr "(décocher pour enregistrement avec \"stéréo mix\")"
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
-msgstr "Haute qualité :"
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
+msgstr "millisecondes(plus = plus de latence)"
-#: prefs/SmartRecordPrefs.cpp:54
-#: prefs/SmartRecordPrefs.cpp:55
-msgid "Smart Recording"
-msgstr "Enregistrement simplifié"
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
+msgstr "millisecondes (négatif = arrière)"
-#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
+#: prefs/RecordingPrefs.cpp:98
+#: prefs/RecordingPrefs.cpp:100
msgid "Sound Activated Recording"
-msgstr ""
+msgstr "Enregistrement automatique"
-#: prefs/SmartRecordPrefs.cpp:71
+#: prefs/RecordingPrefs.cpp:109
msgid "Sound Activation Level (dB):"
-msgstr ""
+msgstr "Niveau sonore de déclenchement (dB) :"
-#: prefs/SpectrumPrefs.cpp:41
-#: prefs/SpectrumPrefs.cpp:42
+#: prefs/SpectrumPrefs.cpp:30
msgid "Spectrograms"
msgstr "Spectrogrammes"
-#: prefs/SpectrumPrefs.cpp:91
-msgid "FFT Size"
-msgstr "Taille FFT"
-
-#: prefs/SpectrumPrefs.cpp:94
+#: prefs/SpectrumPrefs.cpp:41
msgid "8 - most wideband"
msgstr "8 - bande plus large"
-#: prefs/SpectrumPrefs.cpp:99
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr "16"
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr "32"
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr "64"
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr "128"
+
+#: prefs/SpectrumPrefs.cpp:46
msgid "256 - default"
msgstr "256 - par défaut"
-#: prefs/SpectrumPrefs.cpp:107
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr "512"
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr "1024"
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr "2048"
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr "4096"
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr "8192"
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr "16384"
+
+#: prefs/SpectrumPrefs.cpp:54
msgid "32768 - most narrowband"
-msgstr "32768 - bande la plus étroite"
+msgstr "32768 - bande plus étroite"
-#: prefs/SpectrumPrefs.cpp:109
+#: prefs/SpectrumPrefs.cpp:56
msgid "4096 - most narrowband"
msgstr "4096 - bande plus étroite"
-#: prefs/SpectrumPrefs.cpp:116
-msgid "Window type:"
-msgstr "Type de fenêtre :"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
+msgstr "FFT Window"
-#: prefs/SpectrumPrefs.cpp:125
-msgid "FFT Skip Points"
-msgstr ""
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
+msgstr "Taille de fenêtre :"
-#: prefs/SpectrumPrefs.cpp:140
-msgid "Display"
-msgstr "Affichage"
+#: prefs/SpectrumPrefs.cpp:93
+msgid "Window type"
+msgstr "Type de fenêtre"
-#: prefs/SpectrumPrefs.cpp:144
-msgid "&Grayscale"
-msgstr "Niveaux de &gris"
+#: prefs/SpectrumPrefs.cpp:113
+msgid "FFT Skip Points"
+msgstr "Points FFT sautés"
-#: prefs/SpectrumPrefs.cpp:147
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
+msgstr "sauter les points "
+
+#: prefs/SpectrumPrefs.cpp:134
msgid "Minimum Frequency (Hz):"
msgstr "Fréquence minimum (Hz) :"
-#: prefs/SpectrumPrefs.cpp:152
+#: prefs/SpectrumPrefs.cpp:140
msgid "Maximum Frequency (Hz):"
msgstr "Fréquence maximum (Hz) :"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
-msgstr ""
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
+msgstr "Afficher le spectre en échelle de &gris"
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
-msgstr "Touver les notes"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
+msgstr "Afficher une grille le long de l'axe &Y"
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
-msgstr "&Quantifier les notes"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
+msgstr "Touver les notes FFT"
#: prefs/SpectrumPrefs.cpp:165
msgid "Minimum Amplitude (dB):"
-msgstr "Amplitude Minimale (dB) :"
+msgstr "Amplitude Minimale (dB):"
-#: prefs/SpectrumPrefs.cpp:170
+#: prefs/SpectrumPrefs.cpp:171
msgid "Max. Number of Notes (1..128):"
msgstr "Nombre maximal de notes (1...128) :"
-#: prefs/SpectrumPrefs.cpp:197
+#: prefs/SpectrumPrefs.cpp:178
+msgid "&Find Notes"
+msgstr "Touver les notes"
+
+#: prefs/SpectrumPrefs.cpp:182
+msgid "&Quantize Notes"
+msgstr "&Quantifier les notes"
+
+#: prefs/SpectrumPrefs.cpp:194
msgid "The maximum frequency must be an integer"
msgstr "La fréquence maximale doit être un nombre entier"
-#: prefs/SpectrumPrefs.cpp:201
+#: prefs/SpectrumPrefs.cpp:198
msgid "Maximum frequency must be in the range 100 Hz - 100,000 Hz"
-msgstr "La fréquence maximale doit se situer entre 100 Hz et 100 000 Hz"
+msgstr "La fréquence maximum doit se situer entre 100 Hz et 100 000 Hz"
-#: prefs/SpectrumPrefs.cpp:209
+#: prefs/SpectrumPrefs.cpp:204
msgid "The minimum frequency must be an integer"
msgstr "La fréquence minimale doit être un nombre entier"
-#: prefs/SpectrumPrefs.cpp:213
+#: prefs/SpectrumPrefs.cpp:208
msgid "Minimum frequency must be at least 0 Hz"
-msgstr "La fréquence minimale doit être supérieure à 0 Hz"
+msgstr "La fréquence minimum doit être supérieure à 0 Hz"
+
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr "La fréquence minimale doit être inférieure à la fréquence maximale"
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr "L'amplitude minimale (dB) doit être un nombre entier"
#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr "Le nombre maximum de notes doit être un nombre entier"
+
#: prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
-msgstr "Le nombre maximal de notes doit être un nombre entier compris entre 1 et 128"
+msgid "The maximum number of notes must be in the range 1..128"
+msgstr "Le nombre maximal de notes doit être compris entre 1 et 128"
-#: prefs/ThemePrefs.cpp:62
-#: prefs/ThemePrefs.cpp:63
+#: prefs/ThemePrefs.cpp:60
msgid "Theme"
msgstr "Thème"
+#: prefs/ThemePrefs.cpp:88
+msgid "Info"
+msgstr "Info"
+
+#: prefs/ThemePrefs.cpp:91
+msgid ""
+"Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr ""
+"Les thèmes sont une fonction expérimentale.\n"
+"\n"
+"Pour l'essayer, cliquer sur \"Enregistrer le thème\" puis trouver et modifier les images et couleurs dans \n"
+"ImageCacheVxx.png avec un logiciel de retouche d'image tel Gimp.\n"
+"\n"
+"Cliquer sur \"Charger le thème\" pour charger dans Audacity les images et couleurs modifiées.\n"
+"\n"
+"[Seules la barre de contrôle et les couleurs de la piste d'onde sont affectées pour le moment,\n"
+"même si le fichier d'image montre également d'autres icônes.]"
+
+#: prefs/ThemePrefs.cpp:96
+msgid ""
+"You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+"Vous avez compilé Audacity avec un bouton supplémentaire, 'Output Sourcery'. \n"
+"Ceci enregistre une version C du cache image qui peut être compilée par défaut."
+
+#: prefs/ThemePrefs.cpp:101
+msgid ""
+"If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+"Si \"Charger le thème au démarrage\" est coché,\n"
+"le thème sera chargé quand le programme démarrera."
+
+#: prefs/ThemePrefs.cpp:104
+msgid ""
+"Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+"Enregistrer et charger des fichiers de thèmes indépendants utilise un fichier séparé pour chaque image,\n"
+" mais d'autre part reste dans la même logique."
+
#. i18n-hint: && in here is an escape character to get a single & on screen,
-#: prefs/ThemePrefs.cpp:93
+#. * so keep it as is
+#: prefs/ThemePrefs.cpp:111
msgid "Theme Cache - Images && Color"
-msgstr ""
+msgstr "Thème - Images && Couleur"
-#: prefs/ThemePrefs.cpp:95
+#: prefs/ThemePrefs.cpp:115
msgid "Save Theme Cache"
-msgstr "Enregistrer le cache du thème"
+msgstr "Enregistrer le thème"
-#: prefs/ThemePrefs.cpp:96
+#: prefs/ThemePrefs.cpp:116
msgid "Load Theme Cache"
-msgstr "Charger le cache du thème"
+msgstr "Charger le thème"
-#: prefs/ThemePrefs.cpp:106
+#: prefs/ThemePrefs.cpp:131
msgid "Load Theme Cache At Startup"
-msgstr "A l'ouverture, charger le cache du thème"
+msgstr "A l'ouverture, charger le thème"
-#: prefs/ThemePrefs.cpp:118
+#: prefs/ThemePrefs.cpp:146
msgid "Individual Theme Files"
msgstr "Fichiers de thème individuels"
-#: prefs/ThemePrefs.cpp:120
+#: prefs/ThemePrefs.cpp:150
msgid "Save Files"
msgstr "Enregistrer les fichiers"
-#: prefs/ThemePrefs.cpp:121
+#: prefs/ThemePrefs.cpp:151
msgid "Load Files"
msgstr "Charger les fichiers"
-#: prefs/ThemePrefs.cpp:126
-msgid "Info"
-msgstr "Info"
+#: prefs/TracksPrefs.cpp:47
+msgid "Simple"
+msgstr "Simple"
-#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
-msgstr ""
-
-#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
-msgstr "Vous avez compilé Audacity avec un bouton \n"
-"supplémentaire, \"Output Sourcery\". Ceci va sauvegarder \n"
-"une version C de l'image cachée qui peut être compilée \n"
-"dedans comme défaut.\n"
-
-#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
-msgstr ""
+#: prefs/TracksPrefs.cpp:77
+msgid "&Update display while playing"
+msgstr "Act&ualiser l'affichage pendant la lecture"
-#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
-msgstr "L'enregistrement et chargement de fichiers de thèmes \n"
-"séparés utilise un fichier séparé pour chaue image, mais est\n"
-"d'ailleurs la même idée.\n"
-"\n"
+#: prefs/TracksPrefs.cpp:80
+msgid "Automatically &fit tracks vertically zoomed"
+msgstr "Ajuster automatiquement les pistes à la hauteur de la fenêtre"
+
+#: prefs/TracksPrefs.cpp:88
+msgid "Default View Mode:"
+msgstr "Mode d'affichage par défaut"
+
+#: prefs/TracksPrefs.cpp:101
+msgid "&Select all audio in project, if none selected"
+msgstr "&Sélectionner tout l'audio d'un projet si rien n'est sélectionné"
+
+#: prefs/TracksPrefs.cpp:104
+msgid "Enable cut &lines"
+msgstr "Autoriser les lignes de coupe"
+
+#: prefs/TracksPrefs.cpp:107
+msgid "Enable &dragging of left and right selection edges"
+msgstr "Permettre le glissement des bordures de sélection gauche et droite"
+
+#: prefs/TracksPrefs.cpp:110
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+msgstr "\"Changer la visée de piste\" de piste en piste"
+
+#: prefs/TracksPrefs.cpp:113
+msgid "Editing a &clip can move other clips"
+msgstr "L'édition d'un &clip peut déplacer les autres clips"
+
+#: prefs/TracksPrefs.cpp:121
+msgid "Solo Button:"
+msgstr "Bouton solo :"
+
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
+msgstr "Avertissements"
+
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr "Afficher les avertissements/affichages"
+
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr "Lors de l'enregistrement de projets"
+
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr "En enregistrant un projet vide"
+
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr "Quand l'espace &disque devient faible"
+
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr "En mixant en &stéréo durant l'export"
-#: toolbars/ControlToolBar.cpp:174
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr "En mixant en &mono durant l'export"
+
+#: toolbars/ControlToolBar.cpp:170
+#: toolbars/ControlToolBar.cpp:205
msgid "Pause"
msgstr "Pause"
-#: toolbars/ControlToolBar.cpp:177
-msgid "Play"
-msgstr "Lecture"
-
#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
-msgstr ""
-
-#: toolbars/ControlToolBar.cpp:182
+#: toolbars/ControlToolBar.cpp:207
+#: widgets/ProgressDialog.cpp:1101
msgid "Stop"
msgstr "Stop"
-#: toolbars/ControlToolBar.cpp:185
-msgid "Skip to Start"
-msgstr "Retour au début"
+#: toolbars/ControlToolBar.cpp:190
+#: toolbars/ControlToolBar.cpp:211
+msgid "Clean Speech"
+msgstr "Clean Speech"
-#: toolbars/ControlToolBar.cpp:188
-msgid "Skip to End"
-msgstr "Aller à la fin"
+#: toolbars/ControlToolBar.cpp:206
+msgid "Play (Shift for Loop Play)"
+msgstr "Lecture (+Maj pour lecture en boucle)"
-#: toolbars/ControlToolBar.cpp:192
+#: toolbars/ControlToolBar.cpp:210
msgid "Record (Shift for Append Record)"
-msgstr ""
-
-#: toolbars/ControlToolBar.cpp:194
-msgid "Clean Speech"
-msgstr "Clean Speech"
+msgstr "Enregistrement (Maj. pour poursuivre l'enregistrement)"
-#: toolbars/ControlToolBar.cpp:530
-#: toolbars/ControlToolBar.cpp:844
+#: toolbars/ControlToolBar.cpp:573
+#: toolbars/ControlToolBar.cpp:905
msgid "Error while opening sound device. "
-msgstr "Erreur à l'ouverture du périphérique son"
+msgstr "Erreur à l'ouverture du périphérique son."
-#: toolbars/ControlToolBar.cpp:696
+#: toolbars/ControlToolBar.cpp:743
msgid "Recording in CleanSpeech mode is not possible when a track, or more than one project, is already open."
msgstr "L'enregistrement en mode Cleanspeech n'est pas possible quand une ou plusieurs pistes sont déjà ouvertes."
-#: toolbars/ControlToolBar.cpp:697
+#: toolbars/ControlToolBar.cpp:744
msgid "Recording not permitted"
msgstr "L'enregistrement n'est pas autorisé"
-#: toolbars/DeviceToolBar.cpp:113
-#: toolbars/DeviceToolBar.cpp:115
+#: toolbars/DeviceToolBar.cpp:109
+#: toolbars/DeviceToolBar.cpp:205
msgid "Output Device"
msgstr "Périphérique de sortie"
-#: toolbars/DeviceToolBar.cpp:134
-#: toolbars/DeviceToolBar.cpp:136
+#: toolbars/DeviceToolBar.cpp:127
+#: toolbars/DeviceToolBar.cpp:206
msgid "Input Device"
msgstr "Périphérique d'entrée"
-#: toolbars/EditToolBar.cpp:139
+#: toolbars/EditToolBar.cpp:136
msgid "Trim outside selection"
msgstr "Supprimer en dehors de la sélection"
-#: toolbars/EditToolBar.cpp:141
+#: toolbars/EditToolBar.cpp:138
msgid "Silence selection"
msgstr "Rendre la sélection muette"
#: toolbars/EditToolBar.cpp:150
+#: toolbars/EditToolBar.cpp:197
msgid "Link Tracks"
-msgstr ""
+msgstr "Lier les pistes"
-#: toolbars/EditToolBar.cpp:150
+#: toolbars/EditToolBar.cpp:155
+#: toolbars/EditToolBar.cpp:198
msgid "Zoom In"
msgstr "Zoom avant"
-#: toolbars/EditToolBar.cpp:152
+#: toolbars/EditToolBar.cpp:157
+#: toolbars/EditToolBar.cpp:199
msgid "Zoom Out"
msgstr "Zoom arrière"
-#: toolbars/EditToolBar.cpp:156
-msgid "Zoom Toggle"
-msgstr "Outil Zoom"
-
-#: toolbars/EditToolBar.cpp:160
-msgid "Fit Selection"
-msgstr "Adapter la sélection"
-
#: toolbars/EditToolBar.cpp:160
msgid "Fit selection in window"
msgstr "Ajuster la sélection à la fenêtre"
#: toolbars/EditToolBar.cpp:162
-msgid "Fit Project"
-msgstr "Adapter le projet"
-
-#: toolbars/EditToolBar.cpp:162
msgid "Fit project in window"
msgstr "Afficher toutes les pistes"
-#: toolbars/MeterToolBar.cpp:50
-msgid "Meter"
-msgstr "VU mètre"
+#: toolbars/EditToolBar.cpp:200
+msgid "Fit Selection"
+msgstr "Afficher la sélection"
+
+#: toolbars/EditToolBar.cpp:201
+msgid "Fit Project"
+msgstr "Afficher le projet"
#: toolbars/MeterToolBar.cpp:80
msgid "Play Meter"
-msgstr "VU mètre de lecture"
+msgstr "VU-mètre de lecture"
#: toolbars/MeterToolBar.cpp:81
msgid "Meter-Play"
-msgstr ""
+msgstr "VU-mètre de lecture"
#: toolbars/MeterToolBar.cpp:89
msgid "Record Meter"
-msgstr "VU mètre d'enregistrement"
+msgstr "VU-mètre d'enregistrement"
#: toolbars/MeterToolBar.cpp:90
-#, fuzzy
msgid "Meter-Record"
-msgstr "Enregistrement"
+msgstr "VU-mètre d'enregistrement"
-#: toolbars/MeterToolBar.cpp:94
+#: toolbars/MeterToolBar.cpp:123
msgid "Output level meter"
-msgstr "VU mètre de sortie"
+msgstr "VU-mètre de sortie"
-#: toolbars/MeterToolBar.cpp:95
+#: toolbars/MeterToolBar.cpp:124
msgid "Input level meter - click to monitor input"
-msgstr "VU mètre d'entrée - cliquer pour visualiser"
+msgstr "VU-mètre d'entrée - cliquer pour visualiser"
#: toolbars/MixerToolBar.cpp:90
msgid "Output Volume"
msgstr "Volume de sortie"
#: toolbars/MixerToolBar.cpp:92
-#, fuzzy
msgid "Slider Output"
msgstr "Curseur de sortie"
#: toolbars/MixerToolBar.cpp:101
+#: widgets/Meter.cpp:869
msgid "Input Volume"
msgstr "Volume d'entrée"
#: toolbars/MixerToolBar.cpp:103
-#, fuzzy
msgid "Slider Input"
msgstr "Curseur d'entrée"
@@ -8577,58 +9326,68 @@ msgstr "Curseur d'entrée"
msgid "Input Source"
msgstr "Source d'entrée"
-#: toolbars/SelectionBar.cpp:80
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr "Pas d'information disponible sur la source d'entrée"
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr "Sélectionner la source d'entrée"
+
+#: toolbars/SelectionBar.cpp:86
+#: toolbars/SelectionBar.cpp:292
msgid "Selection"
msgstr "Sélection"
-#: toolbars/SelectionBar.cpp:128
-#: toolbars/SelectionBar.cpp:185
+#: toolbars/SelectionBar.cpp:135
+#: toolbars/SelectionBar.cpp:194
msgid "Project Rate (Hz):"
msgstr "Projet à :"
-#: toolbars/SelectionBar.cpp:142
-#: toolbars/SelectionBar.cpp:247
+#: toolbars/SelectionBar.cpp:149
+#: toolbars/SelectionBar.cpp:255
msgid "Selection Start:"
msgstr "Début de la sélection"
-#: toolbars/SelectionBar.cpp:155
-#: toolbars/SelectionBar.cpp:253
+#: toolbars/SelectionBar.cpp:163
+#: toolbars/SelectionBar.cpp:164
+#: toolbars/SelectionBar.cpp:261
msgid "Length"
msgstr "Longueur"
-#: toolbars/SelectionBar.cpp:165
+#: toolbars/SelectionBar.cpp:174
msgid "hidden"
msgstr "caché"
-#: toolbars/SelectionBar.cpp:175
-#: toolbars/SelectionBar.cpp:264
+#: toolbars/SelectionBar.cpp:184
+#: toolbars/SelectionBar.cpp:272
msgid "Audio Position:"
msgstr "Position audio :"
-#: toolbars/SelectionBar.cpp:225
-#: toolbars/SelectionBar.cpp:230
+#: toolbars/SelectionBar.cpp:236
+#: toolbars/SelectionBar.cpp:241
msgid "Snap To"
msgstr "Incrément..."
-#: toolbars/SelectionBar.cpp:252
+#: toolbars/SelectionBar.cpp:260
msgid "Selection "
msgstr "Sélection"
-#: toolbars/SelectionBar.cpp:317
+#: toolbars/SelectionBar.cpp:340
msgid "Selection Length"
msgstr "Longueur de la sélection"
-#: toolbars/SelectionBar.cpp:325
+#: toolbars/SelectionBar.cpp:348
msgid "Selection End"
msgstr "Fin de la sélection"
-#: toolbars/ToolBar.cpp:97
+#: toolbars/ToolBar.cpp:120
#, c-format
msgid "Audacity %s ToolBar"
msgstr "Barre d'outils %s Audacity"
-#: toolbars/ToolDock.cpp:74
#: toolbars/ToolDock.cpp:75
+#: toolbars/ToolDock.cpp:76
msgid "ToolDock"
msgstr "Verrouillage d'outil"
@@ -8660,228 +9419,195 @@ msgstr "Gauche=Zoom avant, Droit=Zoom arrière, Milieu=Normal"
msgid "Click and drag to move a track in time"
msgstr "Cliquer-glisser pour glisser temporellement une piste.."
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr "Outils"
-
-#: toolbars/ToolsToolBar.cpp:147
-#: toolbars/ToolsToolBar.cpp:182
-msgid "Selection Tool"
-msgstr "Outil de sélection"
-
-#: toolbars/ToolsToolBar.cpp:148
-msgid "Envelope Tool"
-msgstr "Outil de niveau (enveloppe)"
-
-#: toolbars/ToolsToolBar.cpp:149
-#: toolbars/ToolsToolBar.cpp:183
-msgid "Time Shift Tool"
-msgstr "Outil de glissement temporel"
-
-#: toolbars/ToolsToolBar.cpp:150
-#: toolbars/ToolsToolBar.cpp:185
-msgid "Zoom Tool"
-msgstr "Outil Zoom"
-
-#: toolbars/ToolsToolBar.cpp:151
-#: toolbars/ToolsToolBar.cpp:184
-msgid "Draw Tool"
-msgstr "Outil de dessin d'ondes"
-
#: toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
msgstr "Mode multi outils"
-#: toolbars/ToolsToolBar.cpp:186
+#: toolbars/ToolsToolBar.cpp:190
#, fuzzy
msgid "Slide Tool"
msgstr "Outil de sélection"
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr "Multi outils"
-
-#: toolbars/TranscriptionToolBar.cpp:84
-msgid "Transcription"
-msgstr "Lecture variable"
-
-#: toolbars/TranscriptionToolBar.cpp:171
+#: toolbars/TranscriptionToolBar.cpp:170
msgid "Play at selected speed"
msgstr "Lire à la vitesse sélectionnée"
-#: toolbars/TranscriptionToolBar.cpp:172
-msgid "Play-at-speed"
-msgstr "Lecture à vitesse variable"
-
-#: toolbars/TranscriptionToolBar.cpp:178
-#: toolbars/TranscriptionToolBar.cpp:183
+#: toolbars/TranscriptionToolBar.cpp:176
+#: toolbars/TranscriptionToolBar.cpp:181
+#: toolbars/TranscriptionToolBar.cpp:262
msgid "Playback Speed"
msgstr "Vitesse de lecture"
-#: toolbars/TranscriptionToolBar.cpp:196
+#: toolbars/TranscriptionToolBar.cpp:194
msgid "Adjust left selection to next onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:197
-msgid "Left-to-On"
-msgstr ""
-
-#: toolbars/TranscriptionToolBar.cpp:199
+#: toolbars/TranscriptionToolBar.cpp:196
msgid "Adjust right selection to previous offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:200
-msgid "Right-to-Off"
-msgstr ""
-
-#: toolbars/TranscriptionToolBar.cpp:202
+#: toolbars/TranscriptionToolBar.cpp:198
msgid "Adjust left selection to next offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:203
-msgid "Left-to-Off"
-msgstr ""
-
-#: toolbars/TranscriptionToolBar.cpp:205
+#: toolbars/TranscriptionToolBar.cpp:200
msgid "Adjust right selection to previous onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:206
-#, fuzzy
-msgid "Right-to-On"
-msgstr "Droit"
-
-#: toolbars/TranscriptionToolBar.cpp:208
+#: toolbars/TranscriptionToolBar.cpp:202
msgid "Select region of sound around cursor"
msgstr "Sélectionner une région de son autour du curseur"
-#: toolbars/TranscriptionToolBar.cpp:209
-#, fuzzy
-msgid "Select-Sound"
-msgstr "Sélection"
-
-#: toolbars/TranscriptionToolBar.cpp:211
+#: toolbars/TranscriptionToolBar.cpp:204
msgid "Select region of silence around cursor"
msgstr "Sélectionner une région de silence autour du curseur"
-#: toolbars/TranscriptionToolBar.cpp:212
-msgid "Select-Silence"
-msgstr "Sélection du silence"
-
-#: toolbars/TranscriptionToolBar.cpp:214
+#: toolbars/TranscriptionToolBar.cpp:206
msgid "Automatically make labels from words"
msgstr "Créer automatiquement des marqueurs d'après les mots"
-#: toolbars/TranscriptionToolBar.cpp:215
-msgid "Make Labels"
-msgstr "Créer marqueurs"
-
-#: toolbars/TranscriptionToolBar.cpp:217
+#: toolbars/TranscriptionToolBar.cpp:208
msgid "Add label at selection"
msgstr "Ajouter un marqueur à la sélection"
-#: toolbars/TranscriptionToolBar.cpp:218
-msgid "Add Label"
-msgstr "Ajouter un marqueur "
-
-#: toolbars/TranscriptionToolBar.cpp:220
+#: toolbars/TranscriptionToolBar.cpp:210
msgid "Calibrate voicekey"
msgstr "Calibrer voicekey"
-#: toolbars/TranscriptionToolBar.cpp:221
-msgid "Calibrate"
-msgstr "Calibrer"
-
-#: toolbars/TranscriptionToolBar.cpp:225
+#: toolbars/TranscriptionToolBar.cpp:214
msgid "Adjust Sensitivity"
msgstr "Ajuster la sensibilité"
-#: toolbars/TranscriptionToolBar.cpp:230
+#: toolbars/TranscriptionToolBar.cpp:219
+#: toolbars/TranscriptionToolBar.cpp:275
msgid "Sensitivity"
msgstr "Sensibilité"
-#: toolbars/TranscriptionToolBar.cpp:235
+#: toolbars/TranscriptionToolBar.cpp:224
msgid "Energy"
msgstr "Energie"
-#: toolbars/TranscriptionToolBar.cpp:236
+#: toolbars/TranscriptionToolBar.cpp:225
msgid "Sign Changes (Low Threshold)"
-msgstr "Changements de signe (seuil inférieur)"
+msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:237
+#: toolbars/TranscriptionToolBar.cpp:226
msgid "Sign Changes (High Threshold)"
-msgstr "Changements de direction (Seuil supérieur)"
+msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:238
+#: toolbars/TranscriptionToolBar.cpp:227
msgid "Direction Changes (Low Threshold)"
-msgstr "Changements de direction (Seuil inférieur)"
+msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:239
+#: toolbars/TranscriptionToolBar.cpp:228
msgid "Direction Changes (High Threshold)"
-msgstr "Changements de direction (Seuil supérieur)"
+msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:247
+#: toolbars/TranscriptionToolBar.cpp:236
+#: toolbars/TranscriptionToolBar.cpp:276
msgid "Key type"
msgstr "Type de clé"
-#: widgets/AButton.cpp:302
+#: toolbars/TranscriptionToolBar.cpp:261
+msgid "Play-at-speed"
+msgstr "Lecture à vitesse variable"
+
+#: toolbars/TranscriptionToolBar.cpp:265
+msgid "Left-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:266
+msgid "Right-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:267
+msgid "Left-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:268
+msgid "Right-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:269
+#, fuzzy
+msgid "Select-Sound"
+msgstr "Sélection"
+
+#: toolbars/TranscriptionToolBar.cpp:270
+msgid "Select-Silence"
+msgstr "Sélection du silence"
+
+#: toolbars/TranscriptionToolBar.cpp:271
+msgid "Make Labels"
+msgstr "Créer marqueurs"
+
+#: toolbars/TranscriptionToolBar.cpp:272
+msgid "Add Label"
+msgstr "Ajouter un marqueur "
+
+#: toolbars/TranscriptionToolBar.cpp:273
+msgid "Calibrate"
+msgstr "Calibrer"
+
+#: widgets/AButton.cpp:300
msgid " (disabled)"
msgstr " (désactivé)"
-#: widgets/AButton.cpp:452
+#: widgets/AButton.cpp:458
msgid "Press"
msgstr "Presser"
-#: widgets/AButton.cpp:531
+#: widgets/AButton.cpp:537
msgid "Button"
msgstr "Bouton"
+#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
#. i18n-hint: One-letter abbreviation for Left, in VU Meter
-#: widgets/ASlider.cpp:604
-#: widgets/Meter.cpp:212
+#: widgets/ASlider.cpp:625
+#: widgets/Meter.cpp:248
msgid "L"
msgstr "G"
+#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
#. i18n-hint: One-letter abbreviation for Right, in VU Meter
-#: widgets/ASlider.cpp:607
-#: widgets/Meter.cpp:214
+#: widgets/ASlider.cpp:628
+#: widgets/Meter.cpp:250
msgid "R"
msgstr "D"
-#: widgets/ASlider.cpp:670
+#: widgets/ASlider.cpp:691
msgid "Center"
msgstr "Centré"
-#: widgets/ASlider.cpp:674
+#: widgets/ASlider.cpp:695
msgid "Left"
msgstr "Gauche"
-#: widgets/ASlider.cpp:677
+#: widgets/ASlider.cpp:698
msgid "Right"
msgstr "Droit"
-#: widgets/ErrorDialog.cpp:78
-#: widgets/ErrorDialog.cpp:102
+#: widgets/ErrorDialog.cpp:96
msgid "Help"
msgstr "Aide"
-#: widgets/ErrorDialog.cpp:137
+#: widgets/ErrorDialog.cpp:166
msgid "<"
msgstr "<"
-#: widgets/ErrorDialog.cpp:138
+#: widgets/ErrorDialog.cpp:167
msgid ">"
msgstr ">"
-#: widgets/ErrorDialog.cpp:142
+#: widgets/ErrorDialog.cpp:171
msgid "Forwards"
msgstr "En avant"
-#: widgets/ErrorDialog.cpp:143
+#: widgets/ErrorDialog.cpp:172
msgid "Backwards"
msgstr "En arrière"
-#: widgets/ErrorDialog.cpp:249
+#: widgets/ErrorDialog.cpp:275
msgid "Help on the Internet"
msgstr "Aide sur Internet"
@@ -8889,68 +9615,70 @@ msgstr "Aide sur Internet"
msgid "Grabber"
msgstr "Lecture glissante"
-#: widgets/Grid.cpp:643
+#: widgets/Grid.cpp:703
#, c-format
msgid "%d rows, %d columns"
msgstr "%d lignes, %d colonnes"
-#: widgets/Grid.cpp:649
-#: widgets/Grid.cpp:776
+#: widgets/Grid.cpp:709
+#: widgets/Grid.cpp:836
#, c-format
msgid "Row %d"
msgstr "Ligne %d"
-#: widgets/Grid.cpp:791
+#: widgets/Grid.cpp:851
msgid "Empty"
msgstr "Vide"
-#: widgets/Meter.cpp:359
+#: widgets/Meter.cpp:392
msgid "Enable Meter"
-msgstr "Activer le VU mètre"
+msgstr "Activer le VU-mètre"
-#: widgets/Meter.cpp:361
+#: widgets/Meter.cpp:394
msgid "Disable Meter"
-msgstr "Désactiver le VU mètre"
+msgstr "Désactiver le VU-mètre"
-#: widgets/Meter.cpp:364
+#: widgets/Meter.cpp:397
msgid "Stop Monitoring"
msgstr "Arrêter la visualisation"
-#: widgets/Meter.cpp:366
+#: widgets/Meter.cpp:399
msgid "Start Monitoring"
msgstr "Visualiser l'entrée"
-#: widgets/Meter.cpp:370
+#: widgets/Meter.cpp:403
msgid "Horizontal Stereo"
msgstr "Affichage horizontal"
-#: widgets/Meter.cpp:371
+#: widgets/Meter.cpp:404
msgid "Vertical Stereo"
msgstr "Affichage vertical"
-#: widgets/Meter.cpp:388
+#: widgets/Meter.cpp:421
msgid "Preferences..."
msgstr "Préférences..."
-#: widgets/Meter.cpp:872
+#: widgets/Meter.cpp:871
msgid "Mix Volume"
-msgstr ""
+msgstr "Volume de mixage"
-#: widgets/Meter.cpp:1078
-msgid "This determines how often the meter is refreshed.\n"
+#: widgets/Meter.cpp:1140
+msgid ""
+"This determines how often the meter is refreshed.\n"
"If you have a slower PC you may want to select a\n"
"lower refresh rate (30 per second or lower), so that\n"
"audio qualtiy is not affected by the meter display."
-msgstr "Détermine la fréquence de rafraîchissement du VU mètre.\n"
+msgstr ""
+"Détermine la fréquence de rafraîchissement du VU-mètre.\n"
"Si votre ordinateur est ancien, vous devriez sélectionner\n"
"une fréquence basse (30 par seconde ou moins), afin\n"
"de ne pas affecter la qualité audio."
-#: widgets/Meter.cpp:1079
+#: widgets/Meter.cpp:1141
msgid "Meter refresh rate per second [1-100]: "
msgstr "Fréquence de rafraîchissement par seconde [1-100]"
-#: widgets/Meter.cpp:1080
+#: widgets/Meter.cpp:1142
msgid "Meter Preferences"
msgstr "Préférences de mesure"
@@ -8960,191 +9688,249 @@ msgstr "Veuillez sélectionner une action"
#: widgets/MultiDialog.cpp:86
msgid "Please select an action"
-msgstr ""
+msgstr "Veuillez sélectionner une action"
-#: widgets/ProgressDialog.cpp:1058
+#: widgets/ProgressDialog.cpp:1060
msgid "Elapsed Time:"
-msgstr ""
+msgstr "Temps passé :"
-#: widgets/ProgressDialog.cpp:1078
+#: widgets/ProgressDialog.cpp:1080
msgid "Remaining Time:"
-msgstr ""
+msgstr "Temps restant :"
-#: widgets/ProgressDialog.cpp:1095
+#: widgets/ProgressDialog.cpp:1108
msgid "Cancel"
-msgstr ""
+msgstr "Annuler"
-#: widgets/Ruler.cpp:1478
-#: widgets/Ruler.cpp:1479
+#: widgets/Ruler.cpp:1584
+#: widgets/Ruler.cpp:1585
msgid "Vertical Ruler"
msgstr "Règle verticale"
#. i18n-hint: Format string for displaying time in seconds. Change the comma
-#: widgets/TimeTextCtrl.cpp:267
+#. * in the middle to the 1000s separator for your locale, and the 'seconds'
+#. * on the end to the word for seconds. Don't change the numbers.
+#: widgets/TimeTextCtrl.cpp:268
msgid "01000,01000 seconds"
-msgstr "01000,01000 secondes"
+msgstr "01000 01000 secondes"
#. i18n-hint: Format string for displaying time in hours, minutes and
-#: widgets/TimeTextCtrl.cpp:276
+#. * seconds. Change the 'h' to the abbreviation for hours, 'm' to the
+#. * abbreviation for minutes and 's' to the abbreviation for seconds. Don't
+#. * change the numbers unless there aren't 60 seconds in a minute in your
+#. * locale
+#: widgets/TimeTextCtrl.cpp:277
msgid "0100 h 060 m 060 s"
msgstr "0100 h 060 m 060 s"
#. i18n-hint: Name of time display format that shows time in days, hours,
-#: widgets/TimeTextCtrl.cpp:279
+#. * minutes and seconds
+#: widgets/TimeTextCtrl.cpp:280
msgid "dd:hh:mm:ss"
msgstr "dd:hh:mm:ss"
#. i18n-hint: Format string for displaying time in days, hours, minutes and
-#: widgets/TimeTextCtrl.cpp:285
+#. * seconds. Change the 'days' to the word for days, 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes and 's' to the
+#. * abbreviation for seconds. Don't change the numbers unless there aren't
+#. * 24 hours in a day in your locale
+#: widgets/TimeTextCtrl.cpp:286
msgid "0100 days 024 h 060 m 060 s"
msgstr "0100 jours 024 h 060 m 060 s"
#. i18n-hint: Name of time display format that shows time in hours,
-#. * minutes, seconds and hundreths of a second (1/100 second)
-#: widgets/TimeTextCtrl.cpp:288
+#. * minutes, seconds and hundredths of a second (1/100 second)
+#: widgets/TimeTextCtrl.cpp:289
msgid "hh:mm:ss + hundredths"
-msgstr ""
+msgstr "hh:mm:ss + centièmes"
#. i18n-hint: Format string for displaying time in hours, minutes, seconds
#. * and hundredths of a second. Change the 'h' to the abbreviation for hours,
#. * 'm' to the abbreviation for minutes and 's' to the abbreviation for seconds (the
#. * hundredths are shown as decimal seconds) . Don't change the numbers
#. * unless there aren't 60 minutes in an hour in your locale
-#: widgets/TimeTextCtrl.cpp:294
+#: widgets/TimeTextCtrl.cpp:295
msgid "0100 h 060 m 060.0100 s"
-msgstr ""
+msgstr "0100 h 060 m 060.0100 s"
#. i18n-hint: Name of time display format that shows time in hours,
-#: widgets/TimeTextCtrl.cpp:288
+#. * minutes, seconds and milliseconds (1/1000 second)
+#: widgets/TimeTextCtrl.cpp:298
msgid "hh:mm:ss + milliseconds"
msgstr "hh:mm:ss + millisecondes"
#. i18n-hint: Format string for displaying time in hours, minutes, seconds
-#: widgets/TimeTextCtrl.cpp:294
+#. * and milliseconds. Change the 'h' to the abbreviation for hours, 'm' to the
+#. * abbreviation for minutes and 's' to the abbreviation for seconds (the
+#. * milliseconds are shown as decimal seconds) . Don't change the numbers
+#. * unless there aren't 60 minutes in an hour in your locale
+#: widgets/TimeTextCtrl.cpp:304
msgid "0100 h 060 m 060.01000 s"
msgstr "0100 h 060 m 060.01000 s"
#. i18n-hint: Name of time display format that shows time in hours,
-#: widgets/TimeTextCtrl.cpp:297
+#. * minutes, seconds and samples (at the current project sample rate)
+#: widgets/TimeTextCtrl.cpp:307
msgid "hh:mm:ss + samples"
-msgstr "hh:mm:ss + échantillons"
+msgstr "hh:mm:ss + échantillon"
#. i18n-hint: Format string for displaying time in hours, minutes, seconds
-#: widgets/TimeTextCtrl.cpp:303
+#. * and samples. Change the 'h' to the abbreviation for hours, 'm' to the
+#. * abbreviation for minutes, 's' to the abbreviation for seconds and
+#. * translate samples . Don't change the numbers
+#. * unless there aren't 60 seconds in a minute in your locale
+#: widgets/TimeTextCtrl.cpp:313
msgid "0100 h 060 m 060 s+.# samples"
msgstr "0100 h 060 m 060 s+.# échantillons"
#. i18n-hint: Name of time display format that shows time in samples (at the
-#: widgets/TimeTextCtrl.cpp:306
+#. * current project sample rate)
+#: widgets/TimeTextCtrl.cpp:316
msgid "samples"
-msgstr "Echantillons"
+msgstr "échantillons"
#. i18n-hint: Format string for displaying time in samples (lots of samples).
-#: widgets/TimeTextCtrl.cpp:311
+#. * Change the ',' to the 1000s separator for your locale, and translate
+#. * samples. If 1000s aren't a base multiple for your number system, then you
+#. * can change the numbers to an appropriate one, and put a 0 on the front
+#: widgets/TimeTextCtrl.cpp:321
msgid "01000,01000,01000 samples|#"
-msgstr "01000,01000,01000 échantillons|#"
+msgstr "01000 01000 01000 échantillons|#"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
-#: widgets/TimeTextCtrl.cpp:314
+#. * seconds and frames at 24 frames per second (commonly used for films)
+#: widgets/TimeTextCtrl.cpp:324
msgid "hh:mm:ss + film frames (24 fps)"
msgstr "hh:mm:ss + images film 24i/s"
#. i18n-hint: Format string for displaying time in hours, minutes, seconds
-#: widgets/TimeTextCtrl.cpp:320
+#. * and frames at 24 frames per second. Change the 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
+#. * for seconds and translate 'frames' . Don't change the numbers
+#. * unless there aren't 60 seconds in a minute in your locale
+#: widgets/TimeTextCtrl.cpp:330
msgid "0100 h 060 m 060 s+.24 frames"
msgstr "0100 h 060 m 060 s+.24 images"
#. i18n-hint: Name of time display format that shows time in frames (lots of
-#: widgets/TimeTextCtrl.cpp:323
+#. * frames) at 24 frames per second (commonly used for films)
+#: widgets/TimeTextCtrl.cpp:333
msgid "film frames (24 fps)"
msgstr "Images film 24i/s"
#. i18n-hint: Format string for displaying time in frames at 24 frames per
-#: widgets/TimeTextCtrl.cpp:326
+#. * second. Translate 'frames' and leave the rest alone
+#: widgets/TimeTextCtrl.cpp:336
msgid "01000,01000 frames|24"
-msgstr "01000,01000 images|24"
+msgstr "01000 01000 images|24"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
-#: widgets/TimeTextCtrl.cpp:330
+#. * seconds and frames at NTSC TV drop-frame rate (used for American /
+#. * Japanese TV, and very odd)
+#: widgets/TimeTextCtrl.cpp:340
msgid "hh:mm:ss + NTSC drop frames"
msgstr "hh:mm:ss + images NTSC manquantes"
#. i18n-hint: Format string for displaying time in hours, minutes, seconds
-#: widgets/TimeTextCtrl.cpp:335
+#. * and frames with NTSC drop frames. Change the 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
+#. * for seconds and translate 'frames'. Leave the |N alone, it's important!
+#: widgets/TimeTextCtrl.cpp:345
msgid "0100 h 060 m 060 s+.30 frames|N"
msgstr "0100 h 060 m 060 s+.30 images|N"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
-#: widgets/TimeTextCtrl.cpp:339
+#. * seconds and frames at NTSC TV non-drop-frame rate (used for American /
+#. * Japanese TV, and doesn't quite match wall time
+#: widgets/TimeTextCtrl.cpp:349
msgid "hh:mm:ss + NTSC non-drop frames"
msgstr "hh:mm:ss + images NTSC non-drop "
#. i18n-hint: Format string for displaying time in hours, minutes, seconds
-#: widgets/TimeTextCtrl.cpp:345
+#. * and frames with NTSC drop frames. Change the 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
+#. * for seconds and translate 'frames'. Leave the | .999000999 alone,
+#. * the whole things really is slightly off-speed!
+#: widgets/TimeTextCtrl.cpp:355
msgid "0100 h 060 m 060 s+.030 frames| .999000999"
msgstr "0100 h 060 m 060 s+.030 images| .999000999"
#. i18n-hint: Name of time display format that shows time in frames at NTSC
-#: widgets/TimeTextCtrl.cpp:348
+#. * TV frame rate (used for American / Japanese TV
+#: widgets/TimeTextCtrl.cpp:358
msgid "NTSC frames"
msgstr "Images NTSC"
#. i18n-hint: Format string for displaying time in frames with NTSC frames.
-#: widgets/TimeTextCtrl.cpp:352
+#. * Translate 'frames' and leave the rest alone. That really is the frame
+#. * rate!
+#: widgets/TimeTextCtrl.cpp:362
msgid "01000,01000 frames|29.97002997"
-msgstr "01000,01000 images|29.97002997"
+msgstr "01000 01000 images|29.97002997"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
-#: widgets/TimeTextCtrl.cpp:355
+#. * seconds and frames at PAL TV frame rate (used for European TV)
+#: widgets/TimeTextCtrl.cpp:365
msgid "hh:mm:ss + PAL frames (25 fps)"
msgstr "hh:mm:ss + images PAL 25 i/s"
#. i18n-hint: Format string for displaying time in hours, minutes, seconds
-#: widgets/TimeTextCtrl.cpp:360
+#. * and frames with PAL TV frames. Change the 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
+#. * for seconds and translate 'frames'. Nice simple time code!
+#: widgets/TimeTextCtrl.cpp:370
msgid "0100 h 060 m 060 s+.25 frames"
msgstr "0100 h 060 m 060 s+.25 images"
#. i18n-hint: Name of time display format that shows time in frames at PAL
-#: widgets/TimeTextCtrl.cpp:363
+#. * TV frame rate (used for European TV
+#: widgets/TimeTextCtrl.cpp:373
msgid "PAL frames (25 fps)"
msgstr "Images PAL 25 i/s"
#. i18n-hint: Format string for displaying time in frames with NTSC frames.
-#: widgets/TimeTextCtrl.cpp:366
+#. * Translate 'frames' and leave the rest alone.
+#: widgets/TimeTextCtrl.cpp:376
msgid "01000,01000 frames|25"
-msgstr "01000,01000 images|25"
+msgstr "01000 01000 images|25"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
-#: widgets/TimeTextCtrl.cpp:369
+#. * seconds and frames at CD Audio frame rate (75 frames per second)
+#: widgets/TimeTextCtrl.cpp:379
msgid "hh:mm:ss + CDDA frames (75 fps)"
msgstr "hh:mm:ss + échantillons CDDA (75 fps)"
#. i18n-hint: Format string for displaying time in hours, minutes, seconds
-#: widgets/TimeTextCtrl.cpp:374
+#. * and frames with CD Audio frames. Change the 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
+#. * for seconds and translate 'frames'.
+#: widgets/TimeTextCtrl.cpp:384
msgid "0100 h 060 m 060 s+.75 frames"
msgstr "0100 h 060 m 060 s+.75 échantillons"
#. i18n-hint: Name of time display format that shows time in frames at CD
-#: widgets/TimeTextCtrl.cpp:377
+#. * Audio frame rate (75 frames per second)
+#: widgets/TimeTextCtrl.cpp:387
msgid "CDDA frames (75 fps)"
msgstr "échantillons CDDA (75 i/s)"
#. i18n-hint: Format string for displaying time in frames with CD Audio
-#: widgets/TimeTextCtrl.cpp:380
+#. * frames. Translate 'frames' and leave the rest alone
+#: widgets/TimeTextCtrl.cpp:390
msgid "01000,01000 frames|75"
-msgstr "01000,01000 échantillons|75"
+msgstr "01000 01000 échantillons|75"
-#: widgets/TimeTextCtrl.cpp:451
+#: widgets/TimeTextCtrl.cpp:469
msgid "Use right mouse button or context key to change format"
msgstr "Utiliser le bouton droit de la souris ou le menu contextuel pour modifier le format"
-#: widgets/TimeTextCtrl.cpp:1485
+#: widgets/TimeTextCtrl.cpp:1502
msgid "Time Control"
msgstr "Contrôle du temps"
-#: widgets/Warning.cpp:64
+#: widgets/Warning.cpp:61
msgid "Don't show this warning again"
-msgstr "Ne plus montrer cet avertissement"
+msgstr "Ne plus montrer cet avertissement."
#: xml/XMLFileReader.cpp:49
#, c-format
@@ -9154,10 +9940,395 @@ msgstr "Impossible d'ouvrir le fichier : \"%s\""
#: xml/XMLFileReader.cpp:63
#, c-format
msgid "Error: %hs at line %lu"
-msgstr ""
+msgstr "Erreur : %hs à la ligne %lu"
#: xml/XMLFileReader.cpp:79
#, c-format
msgid "Could not load file: \"%s\""
msgstr "Impossible de charger le fichier : \"%s\""
+#: xml/XMLWriter.cpp:325
+#, fuzzy
+msgid "Error flushing file"
+msgstr "Erreur d'ouverture de fichier"
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr "Erreur de fermeture de fichier"
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr "Erreur d'écriture de fichier"
+
+#~ msgid "&Preferences...\tCtrl+,"
+#~ msgstr "&Préférences...\tCtrl+,"
+#~ msgid "&New\tCtrl+N"
+#~ msgstr "&Nouveau\tCtrl+N"
+#~ msgid "&Open...\tCtrl+O"
+#~ msgstr "&Ouvrir...\tCtrl+O"
+#~ msgid "&Close\tCtrl+W"
+#~ msgstr "&Fermer\tCtrl+W"
+#~ msgid "&Audio...\tCtrl+Shift+I"
+#~ msgstr "&Audio...\tCtrl+Shift+I"
+#~ msgid "CleanSpeech C&hain..."
+#~ msgstr "Script CleanSpeech..."
+#~ msgid "E&xit\tCtrl+Q"
+#~ msgstr "Quitter\tCtrl+Q"
+#~ msgid "&Undo\tCtrl+Z"
+#~ msgstr "&Annuler\tCtrl+Z"
+#~ msgid "Cu&t\tCtrl+X"
+#~ msgstr "Coupe magnétisée\tCtrl+X"
+#~ msgid "Spl&it Cut\tCtrl+Alt+X"
+#~ msgstr "Couper\tCtrl+Alt+X"
+#~ msgid "&Copy\tCtrl+C"
+#~ msgstr "&Copier\tCtrl+C"
+#~ msgid "&Paste\tCtrl+V"
+#~ msgstr "C&oller\tCtrl+V"
+#~ msgid "Tri&m\tCtrl+T"
+#~ msgstr "Rogner (supprimer en dehors de la sélection)\tCtrl+T"
+#~ msgid "&Delete\tCtrl+K"
+#~ msgstr "&Effacer\tCtrl+K"
+#~ msgid "Split D&elete\tCtrl+Alt+K"
+#~ msgstr "Supprimer la sélection\tCtrl+Alt+K"
+#~ msgid "Sp&lit\tCtrl+I"
+#~ msgstr "Scinder\tCtrl+I"
+#~ msgid "Split Ne&w\tCtrl+Alt+I"
+#~ msgstr "Scinder Nouveau\tCtrl+Alt+I"
+#~ msgid "&Join\tCtrl+J"
+#~ msgstr "Fusionner\tCtrl+J"
+#~ msgid "Duplic&ate\tCtrl+D"
+#~ msgstr "Dupliquer\tCtrl+D"
+#~ msgid "&Cut\tAlt+X"
+#~ msgstr "&Coupe magnétisée\tAlt+X"
+#~ msgid "&Split Cut\tShift+Alt+X"
+#~ msgstr "Couper\tShift+Alt+X"
+#~ msgid "Co&py\tShift+Alt+C"
+#~ msgstr "&Copier\tShift+Alt+C"
+#~ msgid "&Delete\tAlt+K"
+#~ msgstr "&Suppression magnétisée\tAlt+K"
+#~ msgid "Sp&lit Delete\tShift+Alt+K"
+#~ msgstr "Supprimer\tShift+Alt+K"
+#~ msgid "Sile&nce\tAlt+L"
+#~ msgstr "Sile&nce\tAlt+L"
+#~ msgid "Spli&t\tAlt+I"
+#~ msgstr "Scinder\tAlt+I"
+#~ msgid "&Join\tAlt+J"
+#~ msgstr "Fusionner\tAlt+J"
+#~ msgid "Detac&h at Silences\tShift+Alt+J"
+#~ msgstr "Détacher aux silences\tShift+Alt+J"
+#~ msgid "&All\tCtrl+A"
+#~ msgstr "&Tout sélectionner\tCtrl+A"
+#~ msgid "&None\tCtrl+Shift+A"
+#~ msgstr "&Tout désélectionner\tCtrl+Shift+A"
+#~ msgid "Turn Snap-To On"
+#~ msgstr "Passer en sélection par bloc"
+#~ msgid "Turn Snap-To Off"
+#~ msgstr "Passer en sélection libre"
+#~ msgid "Pre&ferences...\tCtrl+,"
+#~ msgstr "Pré&férences...\tCtrl+,"
+#~ msgid "Pre&ferences...\tCtrl+P"
+#~ msgstr "Pré&férences...\tCtrl+P"
+#~ msgid "Zoom &In\tCtrl+1"
+#~ msgstr "Zoom a&vant\tCtrl+1"
+#~ msgid "Zoom &Out\tCtrl+3"
+#~ msgstr "Zoom a&rrière\tCtrl+3"
+#~ msgid "&Pause\tP"
+#~ msgstr "&Pause\tP"
+#~ msgid "Skip to Start\tHome"
+#~ msgstr "Saut au début\tHome"
+#~ msgid "Skip to End\tEnd"
+#~ msgstr "Saut à la fin\tEnd"
+#~ msgid "&Record\tR"
+#~ msgstr "&Enregistrer\tR"
+#~ msgid "&Audio Track\tCtrl+Shift+N"
+#~ msgstr "Piste mono\tCtrl+Shift+N"
+#~ msgid "&UnMute All Tracks\tCtrl+Shift+U"
+#~ msgstr "Aucune piste muette\tCtrl+Shift+U"
+#~ msgid "Contrast...\tCtrl+Shift+T"
+#~ msgstr "Contraste...\tCtrl+Shift+T"
+#~ msgid "&Index..."
+#~ msgstr "&Index..."
+#~ msgid "Selection Tool\tF1"
+#~ msgstr "Outil de sélection\tF1"
+#~ msgid "Envelope Tool\tF2"
+#~ msgstr "Outil de niveau (enveloppe)\tF2"
+#~ msgid "Draw Tool\tF3"
+#~ msgstr "Outil de dessin d'ondes\tF3"
+#~ msgid "Zoom Tool\tF4"
+#~ msgstr "Outil Zoom\tF4"
+#~ msgid "Time Shift Tool\tF5"
+#~ msgstr "Outil de glissement temporel\tF5"
+#~ msgid "Multi Tool\tF6"
+#~ msgstr "Mode multi outils\tF6"
+#~ msgid "Selection to Start\tShift+Home"
+#~ msgstr "Sélectionner depuis le début\tShift+Home"
+#~ msgid "Selection to End\tShift+End"
+#~ msgstr "Sélectionner jusqu'à la fin\tShift+End"
+#~ msgid "DeleteKey\tBackspace"
+#~ msgstr "Touche d'effacement\tBackspace"
+#~ msgid "DeleteKey2\tDelete"
+#~ msgstr "Touche d'effacement2\tDelete"
+#~ msgid "Toggle Focused Track\tNUMPAD_ENTER"
+#~ msgstr "Bascule de visée de pistetNUMPAD_ENTER"
+#~ msgid "Cursor Left\tLeft\tallowdup"
+#~ msgstr "Curseur gauche\tLeft\tallowdup"
+#~ msgid "Cursor Right\tRight\tallowdup"
+#~ msgstr "Curseur droite\tRight\tallowdup"
+#~ msgid "Selection Extend Left\tShift+Left\tallowdup"
+#~ msgstr "Etendre la sélection à gauche\tShift+Left\tallowdup"
+#~ msgid "Selection Extend Right\tShift+Right\tallowdup"
+#~ msgstr "Etendre la sélection à droite\tShift+Right\tallowdup"
+#~ msgid "Selection Contract Right\tCtrl+Shift+Left"
+#~ msgstr "Réduire la sélection à droite\tCtrl+Shift+Left"
+#~ msgid "Repeat %s\tCtrl+R"
+#~ msgstr "Répéter %s\tCtrl+R"
+#~ msgid ""
+#~ "Sorry, VST Effects cannot be performed on stereo tracks where the "
+#~ "individual channels of the track do not match."
+#~ msgstr ""
+#~ "Désolé, les effets VST ne peuvent être réalisés sur des pistes stéréo "
+#~ "dans lesquelles les canaux individuels de la piste ne correspondent pas."
+#~ msgid "Can't process replacing"
+#~ msgstr "Impossible de remplacer"
+#~ msgid "VST Plug-in parameters:"
+#~ msgstr "Paramètres des modules VST (plugins)"
+#~ msgid "Smart Recording"
+#~ msgstr "Enregistrement auto"
+#~ msgid "Zoom Toggle"
+#~ msgstr "Outil Zoom"
+#~ msgid "Play\tSpace"
+#~ msgstr "Lecture\tSpace"
+#~ msgid "&Stop\tSpace"
+#~ msgstr "&Stop\tBarre d'espace"
+#~ msgid "Stop\tS"
+#~ msgstr "Stop\tS"
+#~ msgid "Pause\tP"
+#~ msgstr "Pause\tP"
+#~ msgid "Record\tR"
+#~ msgstr "Enregistrer\tR"
+#~ msgid "Record Append\tShift+R"
+#~ msgstr "Enregistrement poursuivi\tShift+R"
+#~ msgid "Play Looped\tL"
+#~ msgstr "Lecture en boucle\tL"
+#~ msgid "Play Looped\tShift+Space"
+#~ msgstr "Lecture bouclée\tShift+Space"
+#~ msgid "Toggle Focused Track\tCtrl+Space"
+#~ msgstr "Bascule de visée de piste\tCtrl+Space"
+#~ msgid "Soloed track"
+#~ msgstr "Piste solo"
+#~ msgid "Muted track"
+#~ msgstr "Piste muette"
+#~ msgid "Disallowed for some reason. Try selecting some audio first?"
+#~ msgstr ""
+#~ "Non autorisé pour quelque raison. Essayer de sélectionner de l'audio "
+#~ "auparavant ?"
+#~ msgid "Hello.\n"
+#~ msgstr "Bonjour, \n"
+#~ msgid "WCAG2 Audio Contrast Analyzer"
+#~ msgstr "Analyseur de contraste audio WCAG2"
+#~ msgid "Note: The 'OK' button resets time values."
+#~ msgstr "Note : Le bouton 'OK' remet les chronos à zéro."
+#~ msgid "Measuring background"
+#~ msgstr "Mesure du fond"
+#~ msgid "Measuring foreground"
+#~ msgstr "mesure du premier plan"
+#~ msgid "&Software Playthrough: Play new track while recording it"
+#~ msgstr ""
+#~ "Passage audio logiciel : Lire la nouvelle piste pendant son enregistrement"
+#~ msgid ""
+#~ "Playback and Recording device must use the same type, i.e., MME, "
+#~ "DirectSound, etc."
+#~ msgstr ""
+#~ "Les périphériques de lecture et d'enregistrement doivent être du même "
+#~ "type, par exemple, MME, DirectSound, etc."
+#~ msgid "Show / Hide"
+#~ msgstr "Montrer / Cacher"
+#~ msgid "Show prompt to sa&ve, even if project is empty"
+#~ msgstr ""
+#~ "Afficher la boîte de dialogue d'enregistrement, même si le projet est vide"
+#~ msgid "Other interface choices"
+#~ msgstr "Autres choix d'interface"
+#~ msgid "Conversion"
+#~ msgstr "Conversion"
+#~ msgid "Real-time:"
+#~ msgstr "Temps réel :"
+#~ msgid "High-quality:"
+#~ msgstr "Haute qualité."
+#~ msgid "FFT Size"
+#~ msgstr "Taille FFT"
+#~ msgid "&Grayscale"
+#~ msgstr "Niveaux de &gris"
+#~ msgid "No"
+#~ msgstr "Aucun"
+#~ msgid "Changing block %s\n"
+#~ msgstr "Changement de bloc %s\n"
+#~ msgid "Download..."
+#~ msgstr "Télécharger..."
+#~ msgid "Define Foreground\tCtrl+Alt+F"
+#~ msgstr "Définir le premier plan\tCtrl+Alt+F"
+#~ msgid "Define Background\tCtrl+Alt+B"
+#~ msgstr "Définir l'arrière-plan\tCtrl+Alt+B"
+#~ msgid "Press F2 or double click to edit."
+#~ msgstr "Appuyer sur F2 ou double-cliquer pour éditer."
+#~ msgid "Title:"
+#~ msgstr "Titre :"
+#~ msgid "Artist:"
+#~ msgstr "Artiste :"
+#~ msgid "Album:"
+#~ msgstr "Album :"
+#~ msgid "Composer:"
+#~ msgstr "Compositeur :"
+#~ msgid "Lyricist:"
+#~ msgstr "Chanteur :"
+#~ msgid "Comments:"
+#~ msgstr "Commentaires :"
+#~ msgid "Encoded By:"
+#~ msgstr "Encodé par :"
+#~ msgid "Copyright:"
+#~ msgstr "Copyright :"
+#~ msgid "Track Number:"
+#~ msgstr "Numéro de piste :"
+#~ msgid "Year:"
+#~ msgstr "Année :"
+#~ msgid "Genre:"
+#~ msgstr "Genre :"
+#~ msgid "No Genres"
+#~ msgstr "Pas de genres"
+#~ msgid "Reset to Defaults"
+#~ msgstr "Réglages par défaut"
+#~ msgid "Basic"
+#~ msgstr "Basic"
+#~ msgid "Advanced"
+#~ msgstr "Avancé"
+#~ msgid "Value"
+#~ msgstr "Valeur"
+#~ msgid "Clea&r"
+#~ msgstr "Effacer"
+#~ msgid ""
+#~ "Maximum length of attribute '%s' is %d characters. Data was truncated."
+#~ msgstr ""
+#~ "La longueur maximale des attributs de '%s' est de %d caractères. Les "
+#~ "données seront tronquées."
+#~ msgid "Title"
+#~ msgstr "Titre"
+#~ msgid "Artist"
+#~ msgstr "Artiste"
+#~ msgid "Album"
+#~ msgstr "Album"
+#~ msgid "Group with Wave Track"
+#~ msgstr "Grouper avec piste d'onde"
+#~ msgid "Clear any grouping"
+#~ msgstr "Tout dégrouper"
+#~ msgid "Fail"
+#~ msgstr "Echec"
+#~ msgid "Before you open this tool,"
+#~ msgstr "Avant d'ouvrir cet outil,"
+#~ msgid "WCAG Information on web"
+#~ msgstr "Informations WCAG sur le web"
+#~ msgid "Normalize maximum amplitude to"
+#~ msgstr "Normaliser l'amplitude maximum à "
+#~ msgid ""
+#~ "No tracks are selected! Use Ctrl-A (Select All)\n"
+#~ "Choose Export... to export all tracks."
+#~ msgstr ""
+#~ "Aucune piste n'est sélectionnée ! Taper Ctrl-A (Tout sélectionner)\n"
+#~ "Choisissez Exporter... pour exporter toutes les pistes"
+#~ msgid "Importing %s File..."
+#~ msgstr "Importation du fichier %s ..."
+#~ msgid "&Find Library"
+#~ msgstr "Chercher la librairie"
+#~ msgid "Real-time sample rate converter:"
+#~ msgstr "Convertisseur d'échantillonnage en temps réel :"
+#~ msgid "High-quality sample rate converter:"
+#~ msgstr "Convertisseur d'échantillonnage de haute qualité :"
+#~ msgid "Real-time dither:"
+#~ msgstr "Lissage en temps réel :"
+#~ msgid "High-quality dither:"
+#~ msgstr "Lissage de haute qualité."
+#~ msgid ""
+#~ "<p>You don't appear to have Audacity help files on your machine. Either "
+#~ "<a href=\"http://audacity.sourceforge.net/help/documentation\">download</"
+#~ "a> the help files and then access them again from Audacity by clicking "
+#~ "<i>Help</i> then <i>Index</i>, or click <a href=\"http://www.audacityteam."
+#~ "org/manual/index.php?title=Main_Page\">here</a> to read the full Manual "
+#~ "online."
+#~ msgstr ""
+#~ "<p>Vous ne semblez pas avoir le fichier d'aide Audacity sur votre "
+#~ "machine. Vous pouvez soit <a href=\"http://audacity.sourceforge.net/help/"
+#~ "documentation\">télécharger</a> le fichier d'aide puis y accéder depuis "
+#~ "Audacity en cliquant <i>Aide</i> puis <i>Index</i>, soit cliquer <a href="
+#~ "\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">ici</a> "
+#~ "pour lire le manuel complet en ligne."
+#~ msgid "Disj&oin\tCtrl+Alt+J"
+#~ msgstr "Dégrouper\tCtrl+Maj+J"
+#~ msgid "Select&..."
+#~ msgstr "Sélectionner&..."
+#~ msgid "Raw"
+#~ msgstr "données brutes (Raw)"
+#~ msgid "Enter a sample rate in Hz (per second) between 1 and 100000:"
+#~ msgstr ""
+#~ "Entrer un taux d'échantillonnage en Hz (par seconde) entre 1 et 100 000 :"
+#~ msgid "Invalid rate."
+#~ msgstr "Taux invalide."
+#~ msgid "Message"
+#~ msgstr "Message"
+#~ msgid "Frequency (Hz): from"
+#~ msgstr "Frequence (Hz) : depuis"
+#~ msgid "Length (seconds): from"
+#~ msgstr "Durée (secondes): depuis"
+#~ msgid "Dynamic Range Compressor by Dominic Mazzoni"
+#~ msgstr "Compresseur dynamique par Dominic Mazzoni"
+#~ msgid "Leveller by Lynn Allan"
+#~ msgstr "Niveleur par Lynn Allan"
+#~ msgid "Equalize soft and loud sections"
+#~ msgstr "Egaliser les sections faibles et fortes"
+#~ msgid "Normalize by Dominic Mazzoni"
+#~ msgstr "Normalisation par Dominic Mazzoni"
+#~ msgid "Phaser by Nasca Octavian Paul"
+#~ msgstr "Phaser par Nasca Octavian Paul"
+#~ msgid "DRY"
+#~ msgstr "Mini"
+#~ msgid "WET"
+#~ msgstr "Maxi"
+#~ msgid "Repeat by Dominic Mazzoni && Vaughan Johnson"
+#~ msgstr "Répétition par Dominic Mazzoni && Vaughan Johnson"
+#~ msgid "%d minutes, %d seconds"
+#~ msgstr "%d minutes, %d secondes"
+#~ msgid "Wahwah by Nasca Octavian Paul"
+#~ msgstr "Wahwah par Nasca Octavian Paul"
+#~ msgid "E&xport"
+#~ msgstr "E&xporter"
+#~ msgid ""
+#~ "Audacity had to make a guess at the type of file.\n"
+#~ "The Audio may be bogus.\n"
+#~ "\n"
+#~ "If the audio is bogus, try renaming the file\n"
+#~ "so that it has the correct extension before opening it."
+#~ msgstr ""
+#~ "Audacity a dû établir au jugé le format du fichier.\n"
+#~ "L'audio peut être défectueux.\n"
+#~ "\n"
+#~ "Si c'est le cas, essayez de renommer le fichier\n"
+#~ "avec son extension correcte avant de l'ouvrir."
+#~ msgid "Error parsing Allegro file."
+#~ msgstr "Erreur de traitement de fichier Allegro."
+#~ msgid "Error parsing MIDI file."
+#~ msgstr "Erreur de traitement de fichier Midi."
+#~ msgid ""
+#~ "&Software Playthrough: Play new track while recording it (uncheck when "
+#~ "recording \"stereo mix\")"
+#~ msgstr ""
+#~ "Passage audio logiciel : Lire la nouvelle piste pendant son "
+#~ "enregistrement (décocher en cas d'enregistrement de \"stereo mix\")"
+#~ msgid "Hold recorded data in memory until recording is stopped"
+#~ msgstr ""
+#~ "Conserver les données enregistrées en mémoire jusqu'à la fin de "
+#~ "l'enregistrement"
+#~ msgid "WaveformDisplay"
+#~ msgstr "Affichage de la forme d'onde"
+#~ msgid "SpectrumDisplay"
+#~ msgstr "Affichage du spectre"
+#~ msgid "PitchDisplay"
+#~ msgstr "Affichage de la hauteur"
+#~ msgid "Pause Recording on Silence"
+#~ msgstr "Pause d'enregistrement au silence"
\ No newline at end of file
diff --git a/locale/ga.po b/locale/ga.po
index fc4a3e4..29d361a 100644
--- a/locale/ga.po
+++ b/locale/ga.po
@@ -32,16 +32,15 @@ msgid "Audacity is a free program written by a team of volunteer <a href=\"http:
msgstr ""
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#. i18n-hint: The translation of "translator_credits" will appear
-#: ../src/AboutDialog.cpp:127
-#: ../src/AboutDialog.cpp:129
+#: ../src/AboutDialog.cpp:127 ../src/AboutDialog.cpp:129
msgid "translator_credits"
msgstr "creidiúintí_aistritheora"
@@ -84,7 +83,7 @@ msgid "Special thanks:"
msgstr "Baochas fé leith:"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
msgstr ""
#: AboutDialog.cpp:320
@@ -195,18 +194,13 @@ msgstr ""
msgid "GPL License"
msgstr ""
-#: ../src/AudacityApp.cpp:304
-#: ../src/Project.cpp:1770
+#: ../src/AudacityApp.cpp:304 ../src/Project.cpp:1770
#, c-format
msgid "%s is already open in another window."
msgstr "Tá %s ar oscailt i bhfuinneog eile cheana."
-#: ../src/AudacityApp.cpp:306
-#: ../src/Project.cpp:1772
-#: ../src/Project.cpp:1843
-#: ../src/Project.cpp:1894
-#: ../src/Project.cpp:1905
-#: ../src/Project.cpp:1943
+#: ../src/AudacityApp.cpp:306 ../src/Project.cpp:1772 ../src/Project.cpp:1843
+#: ../src/Project.cpp:1894 ../src/Project.cpp:1905 ../src/Project.cpp:1943
msgid "Error opening project"
msgstr "Earráid le linn oscailt an tionscadail"
@@ -231,20 +225,28 @@ msgstr "M
msgid "Output Meter"
msgstr "Méadar Aschuir"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
+#: ../src/Menus.cpp:141
+msgid "&New"
+msgstr "&Nua"
+
+#: ../src/Menus.cpp:143
+msgid "&Open..."
+msgstr "&Oscail..."
+
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
+
#: AudacityApp.cpp:534 Menus.cpp:575
-msgid "&Preferences...\tCtrl+,"
+msgid "&Preferences..."
msgstr ""
-#: ../src/AudacityApp.cpp:626
-#: ../src/AudacityApp.cpp:696
+#: ../src/AudacityApp.cpp:626 ../src/AudacityApp.cpp:696
#, c-format
msgid "Using block size of %ld\n"
msgstr "Méad bloc de %ld á úsáid\n"
-#: ../src/AudacityApp.cpp:641
-#: ../src/AudacityApp.cpp:711
+#: ../src/AudacityApp.cpp:641 ../src/AudacityApp.cpp:711
#, c-format
msgid "Unknown command line option: %s\n"
msgstr "Rogha anaithnid ar an líne orduithe: %s\n"
@@ -360,14 +362,14 @@ msgstr "Earr
msgid "Error Initializing Audio"
msgstr "Earráid le Linn Tosnú Fuaime"
-#: AudioIO.cpp:1236
-msgid "Latency problem"
+#: AudioIO.cpp:1225
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
+"Audacity has brought it back to start at zero.\n"
+"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
msgstr ""
#: AudioIO.cpp:1236
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
-"Audacity has brought it back to start at zero.\n"
-"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
+msgid "Latency problem"
msgstr ""
#: AutoRecovery.cpp:40
@@ -416,10 +418,8 @@ msgstr ""
msgid "Could not enumerate files in auto save directory"
msgstr ""
-#: ../src/ControlToolBar.cpp:723
-#: ../src/ControlToolBar.cpp:884
-#: ../src/effects/Effect.cpp:331
-#: ../src/prefs/DirectoriesPrefs.cpp:204
+#: ../src/ControlToolBar.cpp:723 ../src/ControlToolBar.cpp:884
+#: ../src/effects/Effect.cpp:331 ../src/prefs/DirectoriesPrefs.cpp:204
msgid "Error"
msgstr "Earráid"
@@ -595,8 +595,9 @@ msgstr ""
msgid "C&hain (Double-Click or press SPACE to edit)"
msgstr ""
-#: BatchProcessDialog.cpp:450
-msgid "No"
+#. i18n-hint: This is the number of the command in the list
+#: BatchProcessDialog.cpp:453
+msgid "Num"
msgstr ""
#: BatchProcessDialog.cpp:456
@@ -914,11 +915,11 @@ msgstr "Dronnuilleogach"
msgid "FFmpeg support not compiled in"
msgstr ""
-#: FFmpeg.cpp:101
+#: FFmpeg.cpp:103
msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
#: FFmpeg.cpp:104
@@ -974,11 +975,12 @@ msgstr ""
msgid "FFmpeg not found"
msgstr ""
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
#: FFmpeg.h:109
@@ -1001,8 +1003,7 @@ msgstr ""
msgid "Frequency Analysis"
msgstr "Anailís ar Mhinicíocht"
-#: ../src/FreqWindow.cpp:129
-#: ../src/TrackPanel.cpp:837
+#: ../src/FreqWindow.cpp:129 ../src/TrackPanel.cpp:837
msgid "Spectrum"
msgstr "Speictream"
@@ -1060,15 +1061,25 @@ msgstr ""
msgid "Export"
msgstr ""
-#: ../src/Benchmark.cpp:223
-#: ../src/FreqWindow.cpp:123
-#: ../src/effects/ClickRemoval.cpp:371
-#: ../src/effects/NoiseRemoval.cpp:463
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
+#: ../src/Benchmark.cpp:223 ../src/FreqWindow.cpp:123
+#: ../src/effects/ClickRemoval.cpp:371 ../src/effects/NoiseRemoval.cpp:463
msgid "Close"
msgstr "Dún"
-#: ../src/effects/Compressor.cpp:385
-#: ../src/effects/Compressor.cpp:393
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr ""
+
+#: ../src/effects/Compressor.cpp:385 ../src/effects/Compressor.cpp:393
#: ../src/widgets/Meter.cpp:293
msgid "dB"
msgstr "dB"
@@ -1078,6 +1089,15 @@ msgstr "dB"
msgid "Hz"
msgstr "Hz"
+#: ../src/Menus.cpp:2369
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "Chun an speictream a rianadh, ní foláir gach rian roghnaithe a bheith ag an ráta samplaithe céanna."
+
+#: ../src/Menus.cpp:2395
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "Roghnaíodh an iomad fuaime. Ní dhéanfar anailís ach ar an gcéad %.1f soicind di."
+
#: ../src/FreqWindow.cpp:463
msgid "Not enough data selected."
msgstr "Níl dóthain sonraí roghnaithe."
@@ -1104,9 +1124,7 @@ msgstr "spectrum.txt"
msgid "Export Spectral Data As:"
msgstr "Easpórtáil Sonraí Speictreacha Mar:"
-#: ../src/FreqWindow.cpp:1014
-#: ../src/Menus.cpp:1393
-#: ../src/Project.cpp:2159
+#: ../src/FreqWindow.cpp:1014 ../src/Menus.cpp:1393 ../src/Project.cpp:2159
#: ../src/prefs/KeyConfigPrefs.cpp:173
msgid "Couldn't write to file: "
msgstr "Theip ar scríobh sa chomhaid: "
@@ -1119,6 +1137,21 @@ msgstr "Minic
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "Moill (soicindí)\tMinicíocht (Hz)\tLeibhéal"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr ""
+
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr ""
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr ""
@@ -1196,7 +1229,7 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr ""
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
msgstr ""
#: HelpText.cpp:244
@@ -1220,7 +1253,7 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr ""
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
msgstr ""
#: HelpText.cpp:383
@@ -1289,6 +1322,14 @@ msgstr ""
msgid "GB"
msgstr ""
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
#: LabelDialog.cpp:50
msgid "Track"
msgstr ""
@@ -1348,9 +1389,7 @@ msgstr "Roghnaigh comhad t
msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
msgstr "Comhaid théacsa (*.txt)|*.txt|Gach comhad (*.*)|*.*"
-#: ../src/Menus.cpp:2647
-#: ../src/Project.cpp:1820
-#: ../src/Project.cpp:1828
+#: ../src/Menus.cpp:2647 ../src/Project.cpp:1820 ../src/Project.cpp:1828
#: ../src/import/ImportMIDI.cpp:31
msgid "Could not open file: "
msgstr "Theip ar oscailt an chomhaid: "
@@ -1404,21 +1443,13 @@ msgstr "Tionscadal Audacity
msgid "&File"
msgstr "&Comhad"
-#: ../src/Menus.cpp:141
-msgid "&New\tCtrl+N"
-msgstr "&Nua\tCtrl+N"
-
-#: ../src/Menus.cpp:143
-msgid "&Open...\tCtrl+O"
-msgstr "&Oscail...\tCtrl+O"
-
#: ../src/Menus.cpp:145
-msgid "&Close\tCtrl+W"
-msgstr "&Dún\tCtrl+W"
+msgid "&Close"
+msgstr "&Dún"
#: ../src/Menus.cpp:146
-msgid "&Save Project\tCtrl+S"
-msgstr "&Sábháil Tionscadal\tCtrl+S"
+msgid "&Save Project"
+msgstr "&Sábháil Tionscadal"
#: ../src/Menus.cpp:150
msgid "Save Project &As..."
@@ -1441,7 +1472,7 @@ msgid "&Import"
msgstr ""
#: Menus.cpp:236
-msgid "&Audio...\tCtrl+Shift+I"
+msgid "&Audio..."
msgstr ""
#: Menus.cpp:237
@@ -1472,8 +1503,8 @@ msgstr "Easp
msgid "Export MIDI..."
msgstr ""
-#: Menus.cpp:290
-msgid "CleanSpeech C&hain..."
+#: Menus.cpp:352
+msgid "Appl&y Chain..."
msgstr ""
#: Menus.cpp:340 Menus.cpp:354
@@ -1488,10 +1519,6 @@ msgstr ""
msgid "I&mport CleanSpeech Presets..."
msgstr ""
-#: Menus.cpp:352
-msgid "Appl&y Chain..."
-msgstr ""
-
#: Menus.cpp:358
msgid "&Upload File..."
msgstr ""
@@ -1506,7 +1533,7 @@ msgid "&Print..."
msgstr ""
#: Menus.cpp:382 Menus.cpp:385
-msgid "E&xit\tCtrl+Q"
+msgid "E&xit"
msgstr ""
#: ../src/Menus.cpp:227
@@ -1514,63 +1541,63 @@ msgid "&Edit"
msgstr "&Eagar"
#: ../src/Menus.cpp:231
-msgid "&Undo\tCtrl+Z"
-msgstr "Cealaig&h\tCtrl+Z"
+msgid "&Undo"
+msgstr "Cealaig&h"
#: ../src/Menus.cpp:239
msgid "&Redo"
msgstr "&Athdhéan"
#: ../src/Menus.cpp:252
-msgid "Cu&t\tCtrl+X"
-msgstr "&Gearr\tCtrl+X"
+msgid "Cu&t"
+msgstr "&Gearr"
#: Menus.cpp:420
-msgid "Spl&it Cut\tCtrl+Alt+X"
+msgid "Spl&it Cut"
msgstr ""
#: ../src/Menus.cpp:253
-msgid "&Copy\tCtrl+C"
-msgstr "&Cóip\tCtrl+C"
+msgid "&Copy"
+msgstr "&Cóip"
#: ../src/Menus.cpp:254
-msgid "&Paste\tCtrl+V"
-msgstr "G&reamaigh\tCtrl+V"
+msgid "&Paste"
+msgstr "G&reamaigh"
#: Menus.cpp:426
-msgid "Tri&m\tCtrl+T"
+msgid "Tri&m"
msgstr ""
#: ../src/Menus.cpp:260
-msgid "&Delete\tCtrl+K"
-msgstr "Scri&os\tCtrl+K"
+msgid "&Delete"
+msgstr "Scri&os"
#: Menus.cpp:429
-msgid "Split D&elete\tCtrl+Alt+K"
+msgid "Split D&elete"
msgstr ""
#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
+msgid "Silence Audi&o"
msgstr ""
#: Menus.cpp:432
-msgid "Sp&lit\tCtrl+I"
+msgid "Sp&lit"
msgstr ""
#: Menus.cpp:342
-msgid "Split Ne&w\tCtrl+Alt+I"
+msgid "Split Ne&w"
msgstr ""
#: Menus.cpp:442
-msgid "&Join\tCtrl+J"
+msgid "&Join"
msgstr ""
#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
+msgid "Detac&h at Silences"
msgstr ""
#: Menus.cpp:445
-msgid "Duplic&ate\tCtrl+D"
+msgid "Duplic&ate"
msgstr ""
#: Menus.cpp:400 Menus.cpp:639
@@ -1583,47 +1610,32 @@ msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:460
-msgid "&Cut\tAlt+X"
+msgid "&Cut"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:465
-msgid "&Split Cut\tShift+Alt+X"
+msgid "&Split Cut"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:470
-msgid "Co&py\tShift+Alt+C"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:476
-msgid "&Delete\tAlt+K"
+msgid "Co&py"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:481
-msgid "Sp&lit Delete\tShift+Alt+K"
+msgid "Sp&lit Delete"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:486
-msgid "Sile&nce\tAlt+L"
+msgid "Sile&nce"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:492
-msgid "Spli&t\tAlt+I"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:497
-msgid "&Join\tAlt+J"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
+msgid "Spli&t"
msgstr ""
#: Menus.cpp:456
@@ -1631,33 +1643,33 @@ msgid "&Select"
msgstr ""
#: ../src/Menus.cpp:269
-msgid "&All\tCtrl+A"
-msgstr "G&ach Éinní\tCtrl+A"
+msgid "&All"
+msgstr "G&ach Éinní"
#: Menus.cpp:415
-msgid "&None\tCtrl+Shift+A"
+msgid "&None"
msgstr ""
#: Menus.cpp:462
-msgid "&Left at Playback Position\t["
+msgid "&Left at Playback Position"
msgstr ""
#: Menus.cpp:463
-msgid "&Right at Playback Position\t]"
+msgid "&Right at Playback Position"
msgstr ""
#: Menus.cpp:467
-msgid "Track &Start to Cursor\tShift+J"
+msgid "Track &Start to Cursor"
msgstr ""
#: Menus.cpp:468
-msgid "Cursor to Track &End\tShift+K"
+msgid "Cursor to Track &End"
msgstr ""
#: Menus.cpp:525
#, fuzzy
-msgid "Find &Zero Crossings\tZ"
-msgstr "Aimsigh Trasnuithe Náide\tZ"
+msgid "Find &Zero Crossings"
+msgstr "Aimsigh Trasnuithe Náide"
#: Menus.cpp:476
msgid "Mo&ve Cursor"
@@ -1674,11 +1686,11 @@ msgid "to Selection En&d"
msgstr "go Deireadh an Rogha"
#: Menus.cpp:483
-msgid "to Track &Start\tJ"
+msgid "to Track &Start"
msgstr ""
#: Menus.cpp:484
-msgid "to Track &End\tK"
+msgid "to Track &End"
msgstr ""
#: Menus.cpp:491
@@ -1701,29 +1713,8 @@ msgstr ""
msgid "&Unlock"
msgstr ""
-#: ../src/Menus.cpp:311
-msgid "Turn Snap-To On"
-msgstr "Cas ar Léim-go"
-
-#: ../src/Menus.cpp:312
-msgid "Turn Snap-To Off"
-msgstr "Cas as Léim-go"
-
-#: ../src/Menus.cpp:313
-msgid "Turn Grid Snap On"
-msgstr "Cas ar Léim go Greille"
-
-#: ../src/Menus.cpp:314
-msgid "Turn Grid Snap Off"
-msgstr "Cas as Léim go Greille"
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr ""
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
+msgid "Pre&ferences..."
msgstr ""
#: ../src/Menus.cpp:345
@@ -1731,35 +1722,35 @@ msgid "&View"
msgstr "&Radharc"
#: ../src/Menus.cpp:347
-msgid "Zoom &In\tCtrl+1"
-msgstr "Zúmáil &Isteach\tCtrl+1"
+msgid "Zoom &In"
+msgstr "Zúmáil &Isteach"
#: ../src/Menus.cpp:350
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "Zúmáil &Normálta\tCtrl+2"
+msgid "Zoom &Normal"
+msgstr "Zúmáil &Normálta"
#: ../src/Menus.cpp:351
-msgid "Zoom &Out\tCtrl+3"
-msgstr "Zúmáil A&mach\tCtrl+3"
+msgid "Zoom &Out"
+msgstr "Zúmáil A&mach"
#: ../src/Menus.cpp:354
-msgid "&Fit in Window\tCtrl+F"
-msgstr "Socraigh i bh&Fuinneog\tCtrl+F"
+msgid "&Fit in Window"
+msgstr "Socraigh i bh&Fuinneog"
#: ../src/Menus.cpp:355
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "Socraigh go hIn&gearach\tCtrl+Shift+F"
+msgid "Fit &Vertically"
+msgstr "Socraigh go hIn&gearach"
#: ../src/Menus.cpp:356
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "&Zúmáil go dtí an Rogha\tCtrl+E"
+msgid "&Zoom to Selection"
+msgstr "&Zúmáil go dtí an Rogha"
#: Menus.cpp:603
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
+msgid "&Collapse All Tracks"
msgstr ""
#: Menus.cpp:604
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
+msgid "E&xpand All Tracks"
msgstr ""
#: Menus.cpp:551
@@ -1821,39 +1812,39 @@ msgid "T&ransport"
msgstr ""
#: Menus.cpp:591
-msgid "Play\tSpace"
+msgid "Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
+msgid "&Loop Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Pause\tP"
+msgid "&Pause"
msgstr ""
#: Menus.cpp:596
-msgid "&Stop\tSpace"
+msgid "&Stop"
msgstr ""
#: ../src/Menus.cpp:569
-msgid "Skip to Start\tHome"
-msgstr "Léim go dtí an Tosach\tHome"
+msgid "Skip to Start"
+msgstr "Léim go dtí an Tosach"
#: ../src/Menus.cpp:570
-msgid "Skip to End\tEnd"
-msgstr "Léim go dtí an Deireadh\tEnd"
+msgid "Skip to End"
+msgstr "Léim go dtí an Deireadh"
#: Menus.cpp:600
-msgid "&Record\tR"
+msgid "&Record"
msgstr ""
#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
+msgid "&Timer Record..."
msgstr ""
#: Menus.cpp:604
-msgid "Append Record\tShift+R"
+msgid "Append Record"
msgstr ""
#: Menus.cpp:607
@@ -1881,7 +1872,7 @@ msgid "Add &New"
msgstr ""
#: Menus.cpp:643
-msgid "&Audio Track\tCtrl+Shift+N"
+msgid "&Audio Track"
msgstr ""
#: Menus.cpp:644
@@ -1898,7 +1889,7 @@ msgid "Mi&x and Render"
msgstr ""
#: Menus.cpp:564
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
+msgid "Mix and Render to New Track"
msgstr ""
#: Menus.cpp:662
@@ -1910,11 +1901,11 @@ msgid "Remo&ve Tracks"
msgstr "&Bain Amach Rianta"
#: Menus.cpp:667
-msgid "&Mute All Tracks\tCtrl+U"
+msgid "&Mute All Tracks"
msgstr ""
#: Menus.cpp:668
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
+msgid "&UnMute All Tracks"
msgstr ""
#: ../src/Menus.cpp:405
@@ -1965,19 +1956,18 @@ msgstr ""
msgid "Synchronize MIDI with Audio"
msgstr ""
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
+#: Menus.cpp:686
+msgid "&Link Audio and Label Tracks"
msgstr ""
-#: Menus.cpp:705
-#, fuzzy
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "Cuir Lipéad ag an Rogha\tCtrl+B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr ""
#: Menus.cpp:706
#, fuzzy
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "Cuir Lipéad ag an Ionad Seinnte\tCtrl+M"
+msgid "Add Label At &Playback Position"
+msgstr "Cuir Lipéad ag an Ionad Seinnte"
#: Menus.cpp:716
msgid "S&ort tracks"
@@ -2003,21 +1993,20 @@ msgstr ""
msgid "Effe&ct"
msgstr "&Maisiúchán"
-#: ../src/Menus.cpp:468
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "Athdhéan an Maisiúchán Deireanach\tCtrl+R"
-
#: ../src/Menus.cpp:494
msgid "&Analyze"
msgstr "Déan &Anailís"
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
+
#: Menus.cpp:692
msgid "Plot Spectrum..."
msgstr ""
#. i18n-hint: The name of the Help menu
-#: ../src/Menus.cpp:524
-#: ../src/Menus.cpp:540
+#: ../src/Menus.cpp:524 ../src/Menus.cpp:540
msgid "&Help"
msgstr "Cab&hair"
@@ -2029,8 +2018,8 @@ msgstr ""
msgid "&Show Welcome Message..."
msgstr ""
-#: Menus.cpp:736
-msgid "&Index..."
+#: Menus.cpp:958
+msgid "&Help..."
msgstr ""
#: Menus.cpp:959
@@ -2049,181 +2038,149 @@ msgstr "&Rith Tagarmharc..."
msgid "&Audio Device Info..."
msgstr ""
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
msgstr ""
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
msgstr ""
#: ../src/Menus.cpp:549
-msgid "Selection Tool\tF1"
-msgstr "Uirlis an Roghnaithe\tF1"
+msgid "Selection Tool"
+msgstr "Uirlis an Roghnaithe"
#: ../src/Menus.cpp:550
-msgid "Envelope Tool\tF2"
-msgstr "Uirlis na gClúdach\tF2"
+msgid "Envelope Tool"
+msgstr "Uirlis na gClúdach"
#: ../src/Menus.cpp:551
-msgid "Draw Tool\tF3"
-msgstr "Uirlis Líníochta\tF3"
+msgid "Draw Tool"
+msgstr "Uirlis Líníochta"
#: ../src/Menus.cpp:552
-msgid "Zoom Tool\tF4"
-msgstr "Uirlis Zúmála\tF4"
+msgid "Zoom Tool"
+msgstr "Uirlis Zúmála"
#: ../src/Menus.cpp:553
-msgid "Time Shift Tool\tF5"
-msgstr "Uirlis Bhogadh in Am\tF5"
+msgid "Time Shift Tool"
+msgstr "Uirlis Bhogadh in Am"
#: ../src/Menus.cpp:554
-msgid "Multi Tool\tF6"
-msgstr "Iluirlis\tF6"
+msgid "Multi Tool"
+msgstr "Iluirlis"
#: ../src/Menus.cpp:556
-msgid "Next Tool\tD"
-msgstr "An Chéad Uirlis Eile\tD"
+msgid "Next Tool"
+msgstr "An Chéad Uirlis Eile"
#: ../src/Menus.cpp:557
-msgid "Previous Tool\tA"
-msgstr "Uirlis Dheireanach\tA"
+msgid "Previous Tool"
+msgstr "Uirlis Dheireanach"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
-msgstr ""
-
-#: ../src/Menus.cpp:560
-msgid "Stop\tS"
-msgstr "Stad\tS"
-
-#: ../src/Menus.cpp:561
-msgid "Pause\tP"
-msgstr "Sos\tP"
-
-#: ../src/Menus.cpp:562
-msgid "Record\tR"
-msgstr "Déan Taifeadadh\tR"
-
-#: Menus.cpp:999
-msgid "Record Append\tShift+R"
+msgid "Play/Stop"
msgstr ""
#: Menus.cpp:1001
-msgid "Play/Stop and Set Cursor\tShift+A"
+msgid "Play/Stop and Set Cursor"
msgstr ""
#: ../src/Menus.cpp:564
-msgid "Play One Second\t1"
-msgstr "Seinn Aon Soicind Amháin\t1"
+msgid "Play One Second"
+msgstr "Seinn Aon Soicind Amháin"
#: ../src/Menus.cpp:565
-msgid "Play To Selection\tB"
-msgstr "Seinn go dtí an Rogha\tB"
-
-#: ../src/Menus.cpp:566
-msgid "Play Looped\tL"
-msgstr "Seinnt i Lúb\tL"
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
+msgid "Play To Selection"
+msgstr "Seinn go dtí an Rogha"
#: Menus.cpp:873
-msgid "Play Cut Preview\tC"
+msgid "Play Cut Preview"
msgstr ""
#: ../src/Menus.cpp:572
-msgid "Selection to Start\tShift+Home"
-msgstr "Rogha go dtí an Tosach\tShift+Home"
+msgid "Selection to Start"
+msgstr "Rogha go dtí an Tosach"
#: ../src/Menus.cpp:573
-msgid "Selection to End\tShift+End"
-msgstr "Rogha go dtí an Deireadh\tShift+End"
+msgid "Selection to End"
+msgstr "Rogha go dtí an Deireadh"
#: ../src/Menus.cpp:575
-msgid "DeleteKey\tBackspace"
-msgstr "Scrioschnaipe\tBackspace"
+msgid "DeleteKey"
+msgstr "Scrioschnaipe"
#: ../src/Menus.cpp:580
-msgid "DeleteKey2\tDelete"
-msgstr "Scrioschnaipe2\tDelete"
+msgid "DeleteKey2"
+msgstr "Scrioschnaipe2"
-#: Menus.cpp:892
-msgid "Seek left short period during playback\tLeft"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
msgstr ""
-#: Menus.cpp:893
-msgid "Seek right short period during playback\tRight"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
msgstr ""
-#: Menus.cpp:894
-msgid "Seek left long period during playback\tShift+Left"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
msgstr ""
-#: Menus.cpp:895
-msgid "Seek right long period during playback\tShift+Right"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
msgstr ""
#: Menus.cpp:899
-msgid "Move Focus to Previous Track\tUp"
+msgid "Move Focus to Previous Track"
msgstr ""
-#: Menus.cpp:900
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
msgstr ""
#: Menus.cpp:901
-msgid "Move Focus to Next Track\tDown"
+msgid "Move Focus to Next Track"
msgstr ""
-#: Menus.cpp:902
-msgid "Move Focus to Next and Change Selection\tShift+Down"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
msgstr ""
#: Menus.cpp:903
-msgid "Toggle Focused Track\tReturn"
-msgstr ""
-
-#: Menus.cpp:904
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr ""
-
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
+msgid "Toggle Focused Track"
msgstr ""
#: ../src/Menus.cpp:585
-msgid "Cursor Left\tLeft"
-msgstr "Reathaí Clé\tLeft"
+msgid "Cursor Left"
+msgstr "Reathaí Clé"
#: ../src/Menus.cpp:586
-msgid "Cursor Right\tRight"
-msgstr "Reathaí Deas\tRight"
+msgid "Cursor Right"
+msgstr "Reathaí Deas"
#: Menus.cpp:820
-msgid "Cursor Short Jump Left\t,"
+msgid "Cursor Short Jump Left"
msgstr ""
#: Menus.cpp:821
-msgid "Cursor Short Jump Right\t."
+msgid "Cursor Short Jump Right"
msgstr ""
#: Menus.cpp:822
-msgid "Cursor Long Jump Left\tShift+,"
+msgid "Cursor Long Jump Left"
msgstr ""
#: Menus.cpp:823
-msgid "Cursor Long Jump Right\tShift+."
+msgid "Cursor Long Jump Right"
msgstr ""
#: ../src/Menus.cpp:587
-msgid "Selection Extend Left\tShift+Left"
-msgstr "Sineadh an Rogha ar an Taobh Clé\tShift+Left"
+msgid "Selection Extend Left"
+msgstr "Sineadh an Rogha ar an Taobh Clé"
#: ../src/Menus.cpp:588
-msgid "Selection Extend Right\tShift+Right"
-msgstr "Sineadh an Rogha ar an Taobh Deas\tShift+Right"
+msgid "Selection Extend Right"
+msgstr "Sineadh an Rogha ar an Taobh Deas"
#: Menus.cpp:828
msgid "Set (or Extend) Left Selection"
@@ -2234,51 +2191,51 @@ msgid "Set (or Extend) Right Selection"
msgstr ""
#: ../src/Menus.cpp:589
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "Crapadh an Rogha ón Taobh Clé\tCtrl+Shift+Right"
+msgid "Selection Contract Left"
+msgstr "Crapadh an Rogha ón Taobh Clé"
#: ../src/Menus.cpp:590
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "Crapadh an Rogha ón Taobh Deas\tCtrl+Shift+Left"
+msgid "Selection Contract Right"
+msgstr "Crapadh an Rogha ón Taobh Deas"
#: Menus.cpp:916
-msgid "Change pan on focused track\tShift+P"
+msgid "Change pan on focused track"
msgstr ""
#: Menus.cpp:917
-msgid "Pan left on focused track\tAlt+Shift+Left"
+msgid "Pan left on focused track"
msgstr ""
#: Menus.cpp:918
-msgid "Pan right on focused track\tAlt+Shift+Right"
+msgid "Pan right on focused track"
msgstr ""
#: Menus.cpp:919
-msgid "Change gain on focused track\tShift+G"
+msgid "Change gain on focused track"
msgstr ""
#: Menus.cpp:920
-msgid "Increase gain on focused track\tAlt+Shift+Up"
+msgid "Increase gain on focused track"
msgstr ""
#: Menus.cpp:921
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
+msgid "Decrease gain on focused track"
msgstr ""
#: Menus.cpp:922
-msgid "Open menu on focused track\tShift+M"
+msgid "Open menu on focused track"
msgstr ""
#: Menus.cpp:923
-msgid "Mute/Unmute focused track\tShift+U"
+msgid "Mute/Unmute focused track"
msgstr ""
#: Menus.cpp:924
-msgid "Solo/Unsolo focused track\tShift+S"
+msgid "Solo/Unsolo focused track"
msgstr ""
#: Menus.cpp:925
-msgid "Close focused track\tShift+C"
+msgid "Close focused track"
msgstr ""
#: Menus.cpp:845
@@ -2290,7 +2247,35 @@ msgid "Snap To Off"
msgstr ""
#: Menus.cpp:1071
-msgid "Full screen on/off\tF11"
+msgid "Full screen on/off"
+msgstr ""
+
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr ""
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr ""
+
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr ""
+
+#: Menus.cpp:1074
+msgid "Adjust input source"
msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
@@ -2351,8 +2336,8 @@ msgstr "N
#: ../src/Menus.cpp:1248
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "Athdhéan %s\tCtrl+R"
+msgid "Repeat %s"
+msgstr "Athdhéan %s"
#: ../src/Menus.cpp:1352
msgid "There are no label tracks to export."
@@ -2383,8 +2368,7 @@ msgstr "N
msgid "Nothing to redo"
msgstr "Níl pioc le hathdhéanamh"
-#: ../src/EditToolBar.cpp:148
-#: ../src/Menus.cpp:1713
+#: ../src/EditToolBar.cpp:148 ../src/Menus.cpp:1713
msgid "Cut"
msgstr "Gearr"
@@ -2400,9 +2384,7 @@ msgstr ""
msgid "Split-cut to the clipboard"
msgstr ""
-#: ../src/EditToolBar.cpp:152
-#: ../src/Menus.cpp:1818
-#: ../src/Menus.cpp:1862
+#: ../src/EditToolBar.cpp:152 ../src/Menus.cpp:1818 ../src/Menus.cpp:1862
msgid "Paste"
msgstr "Greamaigh"
@@ -2410,8 +2392,7 @@ msgstr "Greamaigh"
msgid "Pasted text from the clipboard"
msgstr ""
-#: ../src/Menus.cpp:1818
-#: ../src/Menus.cpp:1862
+#: ../src/Menus.cpp:1818 ../src/Menus.cpp:1862
msgid "Pasted from the clipboard"
msgstr "Arna ghreamú ón ghearrathaisce"
@@ -2463,8 +2444,7 @@ msgstr ""
msgid "Silenced selected tracks for %.2f seconds at %.2f"
msgstr "Rianta roghnaithe arna gcur ina dtost ar feadh %.2f soic. ag %.2f"
-#: ../src/Menus.cpp:1928
-#: ../src/effects/Silence.h:33
+#: ../src/Menus.cpp:1928 ../src/effects/Silence.h:33
msgid "Silence"
msgstr "Tost"
@@ -2548,8 +2528,7 @@ msgstr ""
msgid "Disjoined labeled regions"
msgstr ""
-#: ../src/Menus.cpp:2009
-#: ../src/TrackPanel.cpp:4134
+#: ../src/Menus.cpp:2009 ../src/TrackPanel.cpp:4134
msgid "Split"
msgstr "Deighil"
@@ -2565,15 +2544,6 @@ msgstr ""
msgid "Split at labels"
msgstr "Deighil ag lipéid"
-#: ../src/Menus.cpp:2369
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "Chun an speictream a rianadh, ní foláir gach rian roghnaithe a bheith ag an ráta samplaithe céanna."
-
-#: ../src/Menus.cpp:2395
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "Roghnaíodh an iomad fuaime. Ní dhéanfar anailís ach ar an gcéad %.1f soicind di."
-
#: ../src/Menus.cpp:2660
#, c-format
msgid "Imported labels from '%s'"
@@ -2691,9 +2661,7 @@ msgstr ""
msgid "Created new audio track"
msgstr "Rian nua fuaime arna cheapadh"
-#: ../src/Menus.cpp:2977
-#: ../src/Menus.cpp:3001
-#: ../src/Menus.cpp:3016
+#: ../src/Menus.cpp:2977 ../src/Menus.cpp:3001 ../src/Menus.cpp:3016
#: ../src/Menus.cpp:3052
msgid "New Track"
msgstr "Rian Nua"
@@ -2775,8 +2743,7 @@ msgstr ""
msgid "Resampled audio track(s)"
msgstr ""
-#: ../src/Mix.cpp:74
-#: ../src/Mix.cpp:82
+#: ../src/Mix.cpp:74 ../src/Mix.cpp:82
msgid "Mix"
msgstr "Measc"
@@ -2796,6 +2763,10 @@ msgstr "Deacreacht le linn priont
msgid "Print"
msgstr "Priontáil"
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr ""
+
#: Project.cpp:573
msgid "Main Mix"
msgstr ""
@@ -2809,14 +2780,11 @@ msgstr ""
msgid "(Recovered)"
msgstr ""
-#: ../src/ControlToolBar.cpp:469
-#: ../src/Project.cpp:1707
-#: ../src/TrackPanel.cpp:1208
+#: ../src/Menus.cpp:562
msgid "Record"
msgstr "Déan Taifeadadh"
-#: ../src/Project.cpp:1707
-#: ../src/TrackPanel.cpp:1208
+#: ../src/Project.cpp:1707 ../src/TrackPanel.cpp:1208
msgid "Recorded Audio"
msgstr "Fuaim Thaifeadta"
@@ -2837,12 +2805,11 @@ msgstr ""
msgid "Save changes?"
msgstr "Sábháil athruithe?"
-#: Project.cpp:1684
-msgid "All files|*.*|All supported files|"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
msgstr ""
-#: ../src/Menus.cpp:2595
-#: ../src/Project.cpp:1738
+#: ../src/Menus.cpp:2595 ../src/Project.cpp:1738
msgid "Select one or more audio files..."
msgstr "Roghnaigh comha(i)d f(h)uaime..."
@@ -2869,8 +2836,18 @@ msgstr ""
msgid "Opening old project file"
msgstr ""
-#: ../src/Project.cpp:1821
-#: ../src/Project.cpp:1829
+#: Project.cpp:2073
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr ""
+
+#: ../src/Project.cpp:1821 ../src/Project.cpp:1829
msgid "Error opening file"
msgstr "Earráid le linn oscailt an chomhaid"
@@ -2926,10 +2903,12 @@ msgstr "S
msgid "Can't open project file"
msgstr "Theip ar oscailt chomhad an tionscadail"
-#: Project.cpp:2314
+#: Project.cpp:2484
#, c-format
msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
msgstr ""
@@ -2949,17 +2928,22 @@ msgstr ""
msgid "Warning empty project"
msgstr ""
-#: Project.cpp:2591
+#: Project.cpp:2792
#, c-format
msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+"is not writable or the disk is full."
msgstr ""
-#: ../src/Project.cpp:2148
-#: ../src/Project.cpp:2160
+#: ../src/Project.cpp:2148 ../src/Project.cpp:2160
msgid "Error saving project"
msgstr "Earráid le linn shábháil an tionscadail"
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
#: ../src/Project.cpp:2200
#, c-format
msgid "Saved %s"
@@ -2970,10 +2954,8 @@ msgstr "%s s
msgid "Imported '%s'"
msgstr "'%s' arna (h)iompórtáil"
-#: ../src/Project.cpp:2236
-#: ../src/Project.cpp:2283
-#: ../src/import/ImportPCM.cpp:403
-#: ../src/import/ImportPCM.cpp:488
+#: ../src/Project.cpp:2236 ../src/Project.cpp:2283
+#: ../src/import/ImportPCM.cpp:403 ../src/import/ImportPCM.cpp:488
#: ../src/import/ImportRaw.cpp:408
msgid "Import"
msgstr "Iompórtáil"
@@ -3101,8 +3083,7 @@ msgstr "Libsamplerate le Erik de Castro Lopo"
msgid "Libsamplerate error: %d\n"
msgstr "Earráid libsamplerate: %d\n"
-#: ../src/Resample.cpp:233
-#: ../src/Resample.cpp:243
+#: ../src/Resample.cpp:233 ../src/Resample.cpp:243
msgid "Resampling disabled."
msgstr "Athshampláil cosctha."
@@ -3121,6 +3102,163 @@ msgstr ""
msgid "32-bit float"
msgstr ""
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
+
+#: ../src/export/ExportMultiple.cpp:600 ../src/prefs/DirectoriesPrefs.cpp:82
+msgid "Choose..."
+msgstr "Roghnaigh..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
+
+#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
+msgid "false"
+msgstr ""
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:82
+msgid "Control"
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:58
+msgid "Mixer"
+msgstr ""
+
+#: toolbars/MeterToolBar.cpp:49
+msgid "Meter"
+msgstr ""
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
+#: toolbars/DeviceToolBar.cpp:54
+msgid "Device"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:81
+msgid "Transcription"
+msgstr ""
+
+#: TrackPanel.cpp:452 TrackPanel.cpp:453
+msgid "Track Panel"
+msgstr ""
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: ../src/export/ExportMultiple.cpp:636
+msgid "Tracks"
+msgstr "Rianta"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
#: Screenshot.cpp:384
msgid "Saved "
msgstr ""
@@ -3129,6 +3267,10 @@ msgstr ""
msgid "Error trying to save file: "
msgstr ""
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
#: Sequence.cpp:732 Sequence.cpp:742 Sequence.cpp:749
msgid "Gap detected in project file\n"
msgstr ""
@@ -3267,6 +3409,10 @@ msgstr ""
msgid "Save Metadata As:"
msgstr ""
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
#: Theme.cpp:629
#, c-format
msgid "Audacity could not write file:\n"
@@ -3339,6 +3485,14 @@ msgstr ""
msgid "Audacity Timer Record"
msgstr ""
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
#: SmartRecordDialog.cpp:223
msgid "Recording start"
msgstr ""
@@ -3378,35 +3532,23 @@ msgstr ""
msgid "Audacity Timer Record - Waiting for Start"
msgstr ""
-#: TrackPanel.cpp:452 TrackPanel.cpp:453
-msgid "Track Panel"
-msgstr ""
-
-#: ../src/AStatus.cpp:81
-#: ../src/TrackPanel.cpp:822
-#: ../src/prefs/FileFormatPrefs.cpp:105
-#: ../src/prefs/QualityPrefs.cpp:91
+#: ../src/AStatus.cpp:81 ../src/TrackPanel.cpp:822
+#: ../src/prefs/FileFormatPrefs.cpp:105 ../src/prefs/QualityPrefs.cpp:91
msgid "Other..."
msgstr "Eile..."
-#: ../src/TrackPanel.cpp:830
-#: ../src/TrackPanel.cpp:851
-#: ../src/TrackPanel.cpp:860
-#: ../src/TrackPanel.cpp:868
+#: ../src/TrackPanel.cpp:830 ../src/TrackPanel.cpp:851
+#: ../src/TrackPanel.cpp:860 ../src/TrackPanel.cpp:868
msgid "Name..."
msgstr "Ainm..."
-#: ../src/TrackPanel.cpp:832
-#: ../src/TrackPanel.cpp:853
-#: ../src/TrackPanel.cpp:864
-#: ../src/TrackPanel.cpp:870
+#: ../src/TrackPanel.cpp:832 ../src/TrackPanel.cpp:853
+#: ../src/TrackPanel.cpp:864 ../src/TrackPanel.cpp:870
msgid "Move Track Up"
msgstr "Bog an Rian Suas"
-#: ../src/TrackPanel.cpp:833
-#: ../src/TrackPanel.cpp:854
-#: ../src/TrackPanel.cpp:865
-#: ../src/TrackPanel.cpp:871
+#: ../src/TrackPanel.cpp:833 ../src/TrackPanel.cpp:854
+#: ../src/TrackPanel.cpp:865 ../src/TrackPanel.cpp:871
msgid "Move Track Down"
msgstr "Bog an Rian Síos"
@@ -3446,13 +3588,15 @@ msgstr "Ceap Rian D
msgid "Split Stereo Track"
msgstr "Deighil Rian Défhónach"
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr ""
+
#: ../src/TrackPanel.cpp:846
msgid "Set Sample Format"
msgstr "Socraigh Formáid an tSamplaithe"
-#: ../src/AStatus.cpp:352
-#: ../src/TrackPanel.cpp:848
-#: ../src/TrackPanel.cpp:4322
+#: ../src/AStatus.cpp:352 ../src/TrackPanel.cpp:848 ../src/TrackPanel.cpp:4322
msgid "Set Rate"
msgstr "Socraigh Ráta"
@@ -3528,8 +3672,7 @@ msgstr "Eag. Lip
msgid "Adjusted envelope."
msgstr "Clúdach gléasta."
-#: ../src/TrackPanel.cpp:1905
-#: ../src/prefs/MousePrefs.cpp:98
+#: ../src/TrackPanel.cpp:1905 ../src/prefs/MousePrefs.cpp:98
msgid "Envelope"
msgstr "Clúdach"
@@ -3589,24 +3732,20 @@ msgid "Moved pan slider"
msgstr "Maide sleamhnáin peanála arna bhogadh"
#. i18n-hint: Title of the Gain slider, used to adjust the volume
-#: ../src/TrackPanel.cpp:2807
-#: ../src/TrackPanel.cpp:4726
+#: ../src/TrackPanel.cpp:2807 ../src/TrackPanel.cpp:4726
msgid "Gain"
msgstr "Neartúchán"
#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: ../src/TrackPanel.cpp:2807
-#: ../src/TrackPanel.cpp:4733
+#: ../src/TrackPanel.cpp:2807 ../src/TrackPanel.cpp:4733
msgid "Pan"
msgstr "Pean"
-#: ../src/TrackPanel.cpp:4387
-#: ../src/effects/ChangePitch.cpp:277
+#: ../src/TrackPanel.cpp:4387 ../src/effects/ChangePitch.cpp:277
msgid "up"
msgstr "suas"
-#: ../src/TrackPanel.cpp:4388
-#: ../src/effects/ChangePitch.cpp:277
+#: ../src/TrackPanel.cpp:4388 ../src/effects/ChangePitch.cpp:277
msgid "down"
msgstr "síos"
@@ -3647,14 +3786,6 @@ msgstr ""
msgid "Adjusted gain"
msgstr ""
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr ""
-
#: TrackPanel.cpp:5428
msgid "Can't delete track with active audio"
msgstr ""
@@ -3675,8 +3806,7 @@ msgstr "Cl
msgid "Right, "
msgstr "Deas,"
-#: ../src/TrackPanel.cpp:4116
-#: ../src/TrackPanel.cpp:4225
+#: ../src/TrackPanel.cpp:4116 ../src/TrackPanel.cpp:4225
#, c-format
msgid "Changed '%s' to %s"
msgstr "Athraíodh '%s' go %s"
@@ -3690,6 +3820,11 @@ msgstr "Cain
msgid "Split stereo track '%s'"
msgstr "Deighil rian défhónach '%s'"
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
#: ../src/TrackPanel.cpp:4153
#, c-format
msgid "Made '%s' a stereo track"
@@ -3716,8 +3851,7 @@ msgstr "Athr
msgid "Change lower speed limit (%) to:"
msgstr "Athraigh íosteorainn an luasa (%) go:"
-#: ../src/TrackPanel.cpp:4352
-#: ../src/TrackPanel.cpp:4353
+#: ../src/TrackPanel.cpp:4352 ../src/TrackPanel.cpp:4353
msgid "Lower speed limit"
msgstr "Íosteorainn luasa"
@@ -3725,8 +3859,7 @@ msgstr "
msgid "Change upper speed limit (%) to:"
msgstr "Athraigh uasteorainn an luasa (%) go:"
-#: ../src/TrackPanel.cpp:4359
-#: ../src/TrackPanel.cpp:4360
+#: ../src/TrackPanel.cpp:4359 ../src/TrackPanel.cpp:4360
msgid "Upper speed limit"
msgstr "Uastheorann luasa"
@@ -3768,6 +3901,10 @@ msgstr ""
msgid "Face size"
msgstr ""
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr ""
+
#: ../src/TrackPanel.cpp:4701
msgid "Mute"
msgstr "Tost"
@@ -3846,8 +3983,9 @@ msgstr "Breise
msgid "Plugins %i to %i"
msgstr "Breiseáin %i go %i"
-#: commands/CommandManager.cpp:857
-msgid "Disallowed for some reason. Try selecting some audio first?"
+#: commands/CommandManager.cpp:923
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
msgstr ""
#: commands/CommandManager.cpp:724
@@ -3994,31 +4132,19 @@ msgstr ""
msgid "Processing Auto Duck..."
msgstr ""
-#: ../src/LangChoice.cpp:94
-#: ../src/Tags.cpp:721
-#: ../src/effects/Amplify.cpp:187
-#: ../src/effects/AvcCompressor.cpp:716
-#: ../src/effects/BassBoost.cpp:332
-#: ../src/effects/ChangePitch.cpp:393
-#: ../src/effects/ChangeSpeed.cpp:379
-#: ../src/effects/ChangeTempo.cpp:284
-#: ../src/effects/Compressor.cpp:484
-#: ../src/effects/Echo.cpp:242
-#: ../src/effects/Equalization.cpp:731
-#: ../src/effects/Filter.cpp:482
-#: ../src/effects/Normalize.cpp:258
-#: ../src/effects/Phaser.cpp:576
-#: ../src/effects/Repeat.cpp:251
-#: ../src/effects/VST/VSTEffect.cpp:98
-#: ../src/effects/VST/VSTEffect.cpp:455
-#: ../src/effects/Wahwah.cpp:563
-#: ../src/effects/ladspa/LadspaEffect.cpp:498
+#: ../src/LangChoice.cpp:94 ../src/Tags.cpp:721 ../src/effects/Amplify.cpp:187
+#: ../src/effects/AvcCompressor.cpp:716 ../src/effects/BassBoost.cpp:332
+#: ../src/effects/ChangePitch.cpp:393 ../src/effects/ChangeSpeed.cpp:379
+#: ../src/effects/ChangeTempo.cpp:284 ../src/effects/Compressor.cpp:484
+#: ../src/effects/Echo.cpp:242 ../src/effects/Equalization.cpp:731
+#: ../src/effects/Filter.cpp:482 ../src/effects/Normalize.cpp:258
+#: ../src/effects/Phaser.cpp:576 ../src/effects/Repeat.cpp:251
+#: ../src/effects/VST/VSTEffect.cpp:98 ../src/effects/VST/VSTEffect.cpp:455
+#: ../src/effects/Wahwah.cpp:563 ../src/effects/ladspa/LadspaEffect.cpp:498
#: ../src/effects/nyquist/Nyquist.cpp:736
#: ../src/effects/nyquist/Nyquist.cpp:883
-#: ../src/effects/nyquist/Nyquist.cpp:949
-#: ../src/prefs/FileFormatPrefs.cpp:471
-#: ../src/prefs/PrefsDialog.cpp:100
-#: ../src/widgets/Warning.cpp:56
+#: ../src/effects/nyquist/Nyquist.cpp:949 ../src/prefs/FileFormatPrefs.cpp:471
+#: ../src/prefs/PrefsDialog.cpp:100 ../src/widgets/Warning.cpp:56
msgid "OK"
msgstr "Tá go Maith"
@@ -4081,14 +4207,12 @@ msgstr "Athraigh Airde"
msgid "Change Pitch without Changing Tempo"
msgstr "Athraigh Airde gan Luas a Athrú"
-#: ../src/effects/ChangePitch.cpp:247
-#: ../src/effects/ChangeSpeed.cpp:287
+#: ../src/effects/ChangePitch.cpp:247 ../src/effects/ChangeSpeed.cpp:287
#: ../src/effects/ChangeTempo.cpp:164
msgid "by Vaughan Johnson && Dominic Mazzoni"
msgstr "le Vaughan Johnson && Dominic Mazzoni"
-#: ../src/effects/ChangePitch.cpp:252
-#: ../src/effects/ChangeTempo.cpp:169
+#: ../src/effects/ChangePitch.cpp:252 ../src/effects/ChangeTempo.cpp:169
msgid "using SoundTouch, by Olli Parviainen"
msgstr "TadhallFuaime, le hOlli Parviainen, á úsáid"
@@ -4137,10 +4261,8 @@ msgstr ""
msgid "From frequency in hertz"
msgstr ""
-#: ../src/effects/ChangePitch.cpp:284
-#: ../src/effects/ChangePitch.cpp:330
-#: ../src/effects/ChangeSpeed.cpp:351
-#: ../src/effects/ChangeTempo.cpp:223
+#: ../src/effects/ChangePitch.cpp:284 ../src/effects/ChangePitch.cpp:330
+#: ../src/effects/ChangeSpeed.cpp:351 ../src/effects/ChangeTempo.cpp:223
#: ../src/effects/ChangeTempo.cpp:254
msgid "to"
msgstr "go (dtí)"
@@ -4149,8 +4271,7 @@ msgstr "go (dt
msgid "To frequency in seconds"
msgstr ""
-#: ../src/effects/ChangePitch.cpp:353
-#: ../src/effects/ChangeSpeed.cpp:305
+#: ../src/effects/ChangePitch.cpp:353 ../src/effects/ChangeSpeed.cpp:305
#: ../src/effects/ChangeTempo.cpp:182
msgid "Percent Change:"
msgstr "Céatadán an Athraithe:"
@@ -4168,8 +4289,7 @@ msgstr "Athraigh Airde..."
msgid "Changing Pitch"
msgstr "Airde á Athrú"
-#: ../src/effects/ChangeSpeed.cpp:40
-#: ../src/effects/ChangeTempo.cpp:43
+#: ../src/effects/ChangeSpeed.cpp:40 ../src/effects/ChangeTempo.cpp:43
#, c-format
msgid "Applied effect: %s %.1f%%"
msgstr "Maisiúchán forchurtha: %s %.1f%%"
@@ -4316,12 +4436,11 @@ msgstr ""
msgid "Decay Time"
msgstr ""
-#: ../src/effects/Compressor.cpp:469
-msgid "Normalize to 0dB after compressing"
-msgstr "Normalaigh go 0dB tar éis comhbhrúite"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
+msgstr ""
#: effects/Compressor.cpp:563
-#, c-format
#, fuzzy
msgid "Threshold %d dB"
msgstr "Tairseach: %d dB"
@@ -4352,7 +4471,6 @@ msgid "%.1f:1"
msgstr ""
#: effects/Compressor.cpp:575
-#, c-format
#, fuzzy
msgid "Attack Time %.1f secs"
msgstr "Aga Ionsaithe: %.1f soic"
@@ -4375,6 +4493,10 @@ msgstr "Comhbhr
msgid "Applying Dynamic Range Compression..."
msgstr "Comhbhrú Réimse Dhinimiciúil á Fhorchur..."
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
msgstr ""
@@ -4394,19 +4516,6 @@ msgid "Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr ""
-
#: effects/Contrast.cpp:231
msgid "Contrast Analyzer"
msgstr ""
@@ -4440,6 +4549,11 @@ msgstr ""
msgid "Foreground end time"
msgstr ""
+#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
+#: effects/Contrast.cpp:289
+msgid "Measured"
+msgstr ""
+
#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
msgid "Use selection"
msgstr ""
@@ -4484,16 +4598,8 @@ msgstr ""
msgid "Help for WCAG2 Audio Contrast Analyzer"
msgstr ""
-#: toolbars/ControlToolBar.cpp:82
-msgid "Control"
-msgstr ""
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
msgstr ""
#: effects/Contrast.cpp:328 effects/Contrast.cpp:336 effects/Contrast.cpp:344
@@ -4604,18 +4710,6 @@ msgstr ""
msgid "Data gathered"
msgstr ""
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr ""
-
#: effects/DtmfGen.cpp:47
msgid "DTMF Tone Generator"
msgstr ""
@@ -4675,8 +4769,7 @@ msgstr ""
msgid "Applied effect: %s delay = %f seconds, decay factor = %f"
msgstr "Maisiúchán forchurtha: %s moill = %f soicind, fachtóir meatha = %f"
-#: ../src/effects/Echo.cpp:39
-#: ../src/effects/Echo.cpp:177
+#: ../src/effects/Echo.cpp:39 ../src/effects/Echo.cpp:177
msgid "Echo"
msgstr "Macalla"
@@ -4708,8 +4801,7 @@ msgstr ""
msgid "Previewing"
msgstr ""
-#: ../src/ControlToolBar.cpp:721
-#: ../src/effects/Effect.cpp:329
+#: ../src/ControlToolBar.cpp:721 ../src/effects/Effect.cpp:329
msgid "Error while opening sound device. Please check the output device settings and the project sample rate."
msgstr "Earráid le linn oscailt ghléas fuaime. Deimhnigh socruithe ghléas an aschuir, is ráta samplaithe an tionscadail."
@@ -4742,6 +4834,10 @@ msgstr ""
msgid "custom"
msgstr ""
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr ""
+
#: effects/Equalization.cpp:971
msgid "Equalization, by Martyn Shaw && Mitch Golden"
msgstr ""
@@ -4942,10 +5038,6 @@ msgstr ""
msgid "Analyser"
msgstr ""
-#: toolbars/MixerToolBar.cpp:58
-msgid "Mixer"
-msgstr ""
-
#: effects/LoadEffects.cpp:116
msgid "Simulator"
msgstr ""
@@ -5181,10 +5273,6 @@ msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr ""
#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
-msgid "false"
-msgstr ""
-
-#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
msgid "true"
msgstr ""
@@ -5242,8 +5330,7 @@ msgstr ""
msgid "Dry Wet"
msgstr ""
-#: ../src/effects/Phaser.cpp:497
-#: ../src/effects/Wahwah.cpp:468
+#: ../src/effects/Phaser.cpp:497 ../src/effects/Wahwah.cpp:468
msgid "LFO Frequency (Hz):"
msgstr "Minicíocht LFO (Hz):"
@@ -5251,8 +5338,7 @@ msgstr "Minic
msgid "LFO frequency in hertz"
msgstr ""
-#: ../src/effects/Phaser.cpp:513
-#: ../src/effects/Wahwah.cpp:484
+#: ../src/effects/Phaser.cpp:513 ../src/effects/Wahwah.cpp:484
msgid "LFO Start Phase (deg.):"
msgstr "Pas Tosaigh LFO (céim.):"
@@ -5311,8 +5397,7 @@ msgstr "Athdh
msgid "Tracks are too long to repeat the selection."
msgstr "Tá na rianta ró-fhada chun an rogha a athdhéanamh."
-#: ../src/effects/Repeat.cpp:58
-#: ../src/effects/Repeat.cpp:62
+#: ../src/effects/Repeat.cpp:58 ../src/effects/Repeat.cpp:62
msgid "Repeat"
msgstr "Athdhéan"
@@ -5325,8 +5410,7 @@ msgstr "L
msgid "New selection length: hh:mm:ss"
msgstr ""
-#: ../src/effects/Repeat.cpp:241
-#: ../src/effects/Repeat.cpp:280
+#: ../src/effects/Repeat.cpp:241 ../src/effects/Repeat.cpp:280
msgid "New selection length: "
msgstr "Fad roghnaithe nua:"
@@ -5537,20 +5621,37 @@ msgstr ""
msgid "Truncate Silence"
msgstr ""
-#: effects/TruncSilence.cpp:346
-msgid "Max silence duration:"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr ""
+
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
msgstr ""
#: prefs/AudioIOPrefs.cpp:175 prefs/AudioIOPrefs.cpp:178
msgid "milliseconds"
msgstr ""
+#: effects/TruncSilence.cpp:346
+msgid "Max silence duration:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ""
+
#: effects/TruncSilence.cpp:351
msgid "Threshold for silence:"
msgstr ""
-#: effects/TruncSilence.cpp:375
-msgid " Duration must be at least 1 millisecond"
+#: effects/TruncSilence.cpp:506
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
msgstr ""
#: BatchCommands.cpp:236 effects/TruncSilence.cpp:84 effects/TruncSilence.h:29
@@ -5561,17 +5662,56 @@ msgstr ""
msgid "Truncating Silence..."
msgstr ""
-#: ../src/effects/VST/VSTEffect.cpp:180
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "Fóiríor, ní féidir Maisiúcháin VST a chur i gcrích ar rianta défhónacha nuair nach dtagann cainéil fé leith an riain le chéile."
+#: ../src/effects/ladspa/LadspaEffect.cpp:452
+msgid "Effect Settings"
+msgstr "Socruithe Maisiúcháin"
+
+#: ../src/effects/ladspa/LadspaEffect.cpp:435
+#: ../src/effects/ladspa/LadspaEffect.cpp:443
+#: ../src/prefs/QualityPrefs.cpp:160
+msgid "None"
+msgstr "Faic"
+
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
-#: ../src/effects/VST/VSTEffect.cpp:196
-msgid "Can't process replacing"
-msgstr "Ní féidir athlonnú a phróiseáil"
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
-#: ../src/effects/VST/VSTEffect.cpp:410
-msgid "VST Plug-in parameters:"
-msgstr "Paraméadair Bhreiseáin VST:"
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr ""
#: ../src/effects/Wahwah.cpp:41
#, c-format
@@ -5619,22 +5759,11 @@ msgstr "Maisi
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr ""
-#: ../src/effects/ladspa/LadspaEffect.cpp:435
-#: ../src/effects/ladspa/LadspaEffect.cpp:443
-#: ../src/prefs/QualityPrefs.cpp:160
-msgid "None"
-msgstr "Faic"
-
#: ../src/effects/ladspa/LadspaEffect.cpp:437
msgid "Author: "
msgstr "Údar:"
-#: ../src/effects/ladspa/LadspaEffect.cpp:452
-msgid "Effect Settings"
-msgstr "Socruithe Maisiúcháin"
-
-#: ../src/effects/Silence.cpp:127
-#: ../src/effects/ToneGen.cpp:306
+#: ../src/effects/Silence.cpp:127 ../src/effects/ToneGen.cpp:306
msgid "Length (seconds)"
msgstr "Fad (soicindí)"
@@ -5825,9 +5954,21 @@ msgstr "Tionscadal ar fad
msgid "Command Output"
msgstr ""
-#: export/ExportFFmpeg.cpp:59
+#: export/ExportFFmpeg.cpp:61
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
#: export/ExportFFmpeg.cpp:394
@@ -5895,6 +6036,10 @@ msgstr ""
msgid "AAC Export Setup"
msgstr ""
+#: export/ExportOGG.cpp:86
+msgid "Quality:"
+msgstr ""
+
#: export/ExportFFmpegDialogs.cpp:217
msgid "Specify AMR-NB Options"
msgstr ""
@@ -6028,12 +6173,8 @@ msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n
"Recommended - 192000"
msgstr ""
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr ""
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid "Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
@@ -6052,10 +6193,10 @@ msgstr ""
msgid "Cutoff Bandwidth:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:947
+#: export/ExportFFmpegDialogs.cpp:936
msgid "Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:949
@@ -6244,12 +6385,12 @@ msgstr ""
msgid "AC3 Files (FFmpeg)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:56
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:57
@@ -6360,6 +6501,17 @@ msgstr ""
msgid "FLAC Files"
msgstr ""
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
#: export/ExportFLAC.cpp:93
msgid "Exporting the selected audio as FLAC"
msgstr ""
@@ -6384,8 +6536,7 @@ msgstr ""
msgid "Cannot export MP2 with this sample rate and bit rate"
msgstr ""
-#: ../src/export/ExportMP3.cpp:1345
-#: ../src/export/ExportOGG.cpp:53
+#: ../src/export/ExportMP3.cpp:1345 ../src/export/ExportOGG.cpp:53
msgid "Unable to open target file for writing"
msgstr "Theip ar oscailt sprioc-chomhad chun scrite"
@@ -6584,8 +6735,7 @@ msgstr ""
msgid "MP3 export library not found"
msgstr ""
-#: ../src/export/ExportMultiple.cpp:367
-#: ../src/export/ExportMultiple.cpp:474
+#: ../src/export/ExportMultiple.cpp:367 ../src/export/ExportMultiple.cpp:474
#: ../src/export/ExportMultiple.cpp:562
msgid "Export Multiple"
msgstr "Easpórtáil Iomadúil"
@@ -6617,11 +6767,6 @@ msgstr ""
msgid "Export location:"
msgstr "Ionad easportála:"
-#: ../src/export/ExportMultiple.cpp:600
-#: ../src/prefs/DirectoriesPrefs.cpp:82
-msgid "Choose..."
-msgstr "Roghnaigh..."
-
#: export/ExportMultiple.cpp:205
msgid "Create"
msgstr ""
@@ -6646,10 +6791,6 @@ msgstr "Ainm an ch
msgid "First file name"
msgstr ""
-#: ../src/export/ExportMultiple.cpp:636
-msgid "Tracks"
-msgstr "Rianta"
-
#: ../src/export/ExportMultiple.cpp:646
msgid "Name files:"
msgstr "Comhaid ainmneacha:"
@@ -6683,25 +6824,44 @@ msgstr ""
msgid "Choose a location to save the exported files"
msgstr "Roghnaigh ionad ina sábháilfear na comhaid easphortáilte"
-#: export/ExportMultiple.cpp:480
+#: export/ExportMultiple.cpp:524
#, c-format
-msgid "\"%s\" doesn't exist.\n"
-"\n"
-"Would you like to create it?"
+msgid "Successfully exported the following %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:637 export/ExportMultiple.cpp:772
-msgid "Edit metadata"
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:590
+#: export/ExportMultiple.cpp:527
#, c-format
-msgid "Successfully exported %d file(s)."
+msgid "Export stopped after exporting the following %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:597
+#: export/ExportMultiple.cpp:528
#, c-format
-msgid "Something went wrong after exporting %d file(s)."
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr ""
+
+#: export/ExportMultiple.cpp:480
+#, c-format
+msgid "\"%s\" doesn't exist.\n"
+"\n"
+"Would you like to create it?"
+msgstr ""
+
+#: export/ExportMultiple.cpp:637 export/ExportMultiple.cpp:772
+msgid "Edit metadata"
msgstr ""
#: export/ExportMultiple.cpp:881
@@ -6785,7 +6945,6 @@ msgstr ""
#. i18n-hint: %s will be the error message from libsndfile
#: export/ExportPCM.cpp:436
-#, c-format
#, fuzzy
msgid "Error (file may not have been written): %s"
msgstr "Earráid (seans nár scríobhadh an comhad): %s"
@@ -6951,8 +7110,11 @@ msgstr ""
msgid "FLAC files"
msgstr ""
-#: ../src/import/ImportLOF.cpp:151
-#: ../src/import/ImportLOF.cpp:177
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr ""
+
+#: ../src/import/ImportLOF.cpp:151 ../src/import/ImportLOF.cpp:177
msgid "List of Files in basic text format"
msgstr "Liosta Comhad i bhfoirm bhunúsach théacsa"
@@ -6962,10 +7124,8 @@ msgid "Invalid window offset in LOF file."
msgstr "Taobhrianadh neamhdhlistineach fuinneog sa chomhad LOF."
#. i18n-hint: You do not need to translate "LOF"
-#: ../src/import/ImportLOF.cpp:270
-#: ../src/import/ImportLOF.cpp:291
-#: ../src/import/ImportLOF.cpp:364
-#: ../src/import/ImportLOF.cpp:384
+#: ../src/import/ImportLOF.cpp:270 ../src/import/ImportLOF.cpp:291
+#: ../src/import/ImportLOF.cpp:364 ../src/import/ImportLOF.cpp:384
msgid "LOF Error"
msgstr "Earráid LOF"
@@ -7108,131 +7268,59 @@ msgstr ""
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr ""
-#: ../src/prefs/PrefsDialog.cpp:84
-msgid "Audio I/O"
-msgstr "Fuaim I/A"
-
-#: ../src/prefs/AudioIOPrefs.cpp:212
-msgid "1 (Mono)"
-msgstr "1 (Aonfhónach)"
-
-#: ../src/prefs/AudioIOPrefs.cpp:213
-msgid "2 (Stereo)"
-msgstr "2 (Défhónach)"
-
-#: ../src/prefs/AudioIOPrefs.cpp:80
-msgid "Playback"
-msgstr "Seinnt"
-
-#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
-#: toolbars/DeviceToolBar.cpp:54
-msgid "Device"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:122
-msgid "Using:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:123
-msgid "Portaudio v"
-msgstr ""
-
-#: ../src/prefs/AudioIOPrefs.cpp:148
-msgid "Recording"
-msgstr "Taifeadadh á dhéanamh"
-
-#: prefs/AudioIOPrefs.cpp:139
-msgid "Channels"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:145
-msgid "Playthrough"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:194
-msgid "Effects Preview"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:165
-msgid "Length of preview:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:158
-msgid "Cut Preview"
+#: prefs/BatchPrefs.cpp:53 prefs/BatchPrefs.cpp:54
+msgid "Batch"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:173
-msgid "Preview before cut region:"
+#: prefs/BatchPrefs.cpp:75 prefs/GUIPrefs.cpp:70
+msgid "Behaviors"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:175
-msgid "Preview after cut region:"
+#: prefs/BatchPrefs.cpp:80
+msgid "&Don't apply effects in batch mode"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:168
-msgid "Latency"
+#: prefs/BatchPrefs.cpp:83
+msgid "Cl&eanSpeech Mode (Customized GUI)"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:195
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:198
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr ""
+#: ../src/prefs/PrefsDialog.cpp:89
+msgid "Interface"
+msgstr "Comhéadan"
-#: prefs/AudioIOPrefs.cpp:197
-msgid "Seek Time when playing"
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:187
-msgid "Short period:"
+#: prefs/AudioIOPrefs.cpp:122
+msgid "Using:"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:189
-msgid "Long period:"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:80
+msgid "Playback"
+msgstr "Seinnt"
-#: prefs/BatchPrefs.cpp:53 prefs/BatchPrefs.cpp:54
-msgid "Batch"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:148
+msgid "Recording"
+msgstr "Taifeadadh á dhéanamh"
-#: prefs/BatchPrefs.cpp:75 prefs/GUIPrefs.cpp:70
-msgid "Behaviors"
+#: prefs/AudioIOPrefs.cpp:139
+msgid "Channels"
msgstr ""
-#: prefs/BatchPrefs.cpp:80
-msgid "&Don't apply effects in batch mode"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:212
+msgid "1 (Mono)"
+msgstr "1 (Aonfhónach)"
-#: prefs/BatchPrefs.cpp:83
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:213
+msgid "2 (Stereo)"
+msgstr "2 (Défhónach)"
-#: ../src/prefs/PrefsDialog.cpp:88
-#: ../src/prefs/PrefsDialog.cpp:216
+#: ../src/prefs/PrefsDialog.cpp:88 ../src/prefs/PrefsDialog.cpp:216
msgid "Directories"
msgstr "Comhadlanna"
@@ -7248,34 +7336,31 @@ msgstr "Ionad:"
msgid "Free Space:"
msgstr "Slí ar Fáil:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr ""
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr ""
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
+#: prefs/DirectoriesPrefs.cpp:110
+msgid "Audio cache"
msgstr ""
#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
+msgid "Play and/or record using RAM (useful for slow drives)"
msgstr ""
-#: prefs/DirectoriesPrefs.cpp:110
-msgid "Audio cache"
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
msgstr ""
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
#: ../src/prefs/DirectoriesPrefs.cpp:135
msgid "Choose a location to place the temporary directory"
msgstr "Roghnaigh ionad don chomhadlann shealadach"
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: ../src/prefs/DirectoriesPrefs.cpp:181
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -7294,220 +7379,141 @@ msgstr "N
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "Ní chuirfear athruithe ar an gcomhadlann shealadach i gcrích go dtí go n-athmhúsclófar Audacity"
-#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
-msgid "Import / Export"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:84
-msgid "MP3 Export Library"
-msgstr ""
-
-#: ../src/prefs/FileFormatPrefs.cpp:180
-msgid "MP3 Library Version:"
-msgstr "Leagan Leabharlainne MP3:"
-
-#: prefs/FileFormatPrefs.cpp:93
-msgid "MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:98
-msgid "LAME MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
-msgid "&Download"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:136
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:137
-msgid "When importing audio files"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:140
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:141
-msgid "&Read uncompressed audio files directly from the original (faster)"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:143
-msgid "&Normalize all tracks in project"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:132
-msgid "When saving a project that depends on other audio files"
+#: prefs/GUIPrefs.cpp:42
+msgid "In Browser"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:87
-msgid "Always © all audio into project (safest)"
+#: prefs/GUIPrefs.cpp:43
+msgid "From Internet"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:88
-msgid "&Do not copy any audio"
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:135
-msgid "&Ask user"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:93
-msgid "When exporting tracks to an audio file"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:144
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:97
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
msgstr ""
-#: prefs/BatchPrefs.cpp:91
-msgid "S&how Metadata Editor prior to export step"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
msgstr ""
-#: ../src/prefs/PrefsDialog.cpp:89
-msgid "Interface"
-msgstr "Comhéadan"
+#: ../src/prefs/GUIPrefs.cpp:150
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 dB (réimse éadoimhin i gcomhair eagarthóireacht ard-aimplitiúide)"
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:157
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 dB (réimse PCM de shamplaí 8 giotán)"
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
+#: prefs/GUIPrefs.cpp:143
+msgid "-60 dB (PCM range of 10 bit samples)"
msgstr ""
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:164
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 dB (réimse PCM de shamplaí 16 giotán)"
-#: prefs/GUIPrefs.cpp:72
-msgid "&Update display while playing"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:171
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 dB (teorainn gharbh éisteacht an duine)"
-#: prefs/GUIPrefs.cpp:96
-msgid "Cl&osing last window quits Audacity"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:178
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB (réimse PCM de shamplaí 24 giotán)"
-#: prefs/GUIPrefs.cpp:76
-msgid "Enable &dragging of left and right selection edges"
+#: prefs/SpectrumPrefs.cpp:96
+msgid "Display"
msgstr ""
#: prefs/GUIPrefs.cpp:100
msgid "Er&gonomic order of audio I/O buttons"
msgstr ""
-#: prefs/GUIPrefs.cpp:80
-msgid "Automatically &fit tracks vertically zoomed"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
msgstr ""
-#: prefs/GUIPrefs.cpp:104
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
msgstr ""
-#: prefs/GUIPrefs.cpp:90
-msgid "Editing a &clip can move other clips"
+#: prefs/GUIPrefs.cpp:167
+msgid "Help:"
msgstr ""
-#: prefs/GUIPrefs.cpp:88
-msgid "&Select all audio in project, if none selected"
+#: prefs/GUIPrefs.cpp:96
+msgid "Cl&osing last window quits Audacity"
msgstr ""
#: prefs/GUIPrefs.cpp:90
msgid "&Beep on completion of longer activities"
msgstr ""
-#: prefs/BatchPrefs.cpp:87 prefs/GUIPrefs.cpp:94
-msgid "Show / Hide"
+#: prefs/GUIPrefs.cpp:126
+msgid "Modes"
msgstr ""
-#: prefs/GUIPrefs.cpp:96
-msgid "Enable cut &lines"
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:98
-msgid "Show warnings about &temp files"
+#: prefs/GUIPrefs.cpp:129
+msgid "Don't a&pply effects in batch mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
+#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
+msgid "Import / Export"
msgstr ""
-#: prefs/GUIPrefs.cpp:122
-msgid "Show &Welcome Message at program start up"
+#: prefs/FileFormatPrefs.cpp:137
+msgid "When importing audio files"
msgstr ""
-#: prefs/GUIPrefs.cpp:126
-msgid "Modes"
+#: prefs/FileFormatPrefs.cpp:140
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
msgstr ""
-#: prefs/GUIPrefs.cpp:129
-msgid "Don't a&pply effects in batch mode"
+#: prefs/FileFormatPrefs.cpp:141
+msgid "&Read uncompressed audio files directly from the original (faster)"
msgstr ""
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
+#: prefs/FileFormatPrefs.cpp:143
+msgid "&Normalize all tracks in project"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:150
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 dB (réimse éadoimhin i gcomhair eagarthóireacht ard-aimplitiúide)"
-
-#: ../src/prefs/GUIPrefs.cpp:157
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 dB (réimse PCM de shamplaí 8 giotán)"
-
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
+#: prefs/FileFormatPrefs.cpp:93
+msgid "When exporting tracks to an audio file"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:164
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 dB (réimse PCM de shamplaí 16 giotán)"
-
-#: ../src/prefs/GUIPrefs.cpp:171
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 dB (teorainn gharbh éisteacht an duine)"
-
-#: ../src/prefs/GUIPrefs.cpp:178
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB (réimse PCM de shamplaí 24 giotán)"
-
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
+#: prefs/FileFormatPrefs.cpp:144
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
msgstr ""
-#: prefs/GUIPrefs.cpp:164
-msgid "Other interface choices"
+#: prefs/FileFormatPrefs.cpp:97
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
msgstr ""
-#: prefs/GUIPrefs.cpp:167
-msgid "Help:"
+#: prefs/BatchPrefs.cpp:91
+msgid "S&how Metadata Editor prior to export step"
msgstr ""
-#: prefs/GUIPrefs.cpp:168
-msgid "Solo Button:"
+#: prefs/ImportExportPrefs.cpp:84
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
msgstr ""
#: ../src/prefs/PrefsDialog.cpp:90
@@ -7538,17 +7544,22 @@ msgstr "N
msgid "&Defaults"
msgstr ""
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr ""
+
#: ../src/prefs/KeyConfigPrefs.cpp:79
msgid "Key Combination"
msgstr "Teaglaim Cnaipí"
-#: ../src/prefs/KeyConfigPrefs.cpp:159
-msgid "Export Keyboard Shortcuts As:"
-msgstr "Easpórtáil Congair Mhéarchláir Mar:"
+#: ../src/EditToolBar.cpp:159
+msgid "Undo"
+msgstr "Cealaigh"
-#: ../src/prefs/KeyConfigPrefs.cpp:174
-msgid "Error saving keyboard shortcuts"
-msgstr "Earráid le linn shábháil chongair mhéarchláir"
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr ""
#: ../src/prefs/KeyConfigPrefs.cpp:188
msgid "Select an XML file containing Audacity keyboard shortcuts..."
@@ -7558,6 +7569,14 @@ msgstr "Roghnaigh comhad XML ina bhfuil congair mh
msgid "Error loading keyboard shortcuts"
msgstr "Earráid le linn lódáil chongair mhéarchláir"
+#: ../src/prefs/KeyConfigPrefs.cpp:159
+msgid "Export Keyboard Shortcuts As:"
+msgstr "Easpórtáil Congair Mhéarchláir Mar:"
+
+#: ../src/prefs/KeyConfigPrefs.cpp:174
+msgid "Error saving keyboard shortcuts"
+msgstr "Earráid le linn shábháil chongair mhéarchláir"
+
#: prefs/KeyConfigPrefs.cpp:239
#, c-format
msgid "The keyboard shortcut '%s' is already assigned to:\n"
@@ -7565,9 +7584,61 @@ msgid "The keyboard shortcut '%s' is already assigned to:\n"
"'%s'"
msgstr ""
-#: ../src/EditToolBar.cpp:159
-msgid "Undo"
-msgstr "Cealaigh"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:84
+msgid "MP3 Export Library"
+msgstr ""
+
+#: ../src/prefs/FileFormatPrefs.cpp:180
+msgid "MP3 Library Version:"
+msgstr "Leagan Leabharlainne MP3:"
+
+#: prefs/FileFormatPrefs.cpp:93
+msgid "MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:98
+msgid "LAME MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
+msgid "&Download"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:109
+msgid "FFmpeg Library Version:"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
+msgid "FFmpeg Library:"
+msgstr ""
+
+#: ../src/prefs/PrefsDialog.cpp:84
+msgid "Audio I/O"
+msgstr "Fuaim I/A"
+
+#: prefs/AudioIOPrefs.cpp:123
+msgid "Portaudio v"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:145
+msgid "Playthrough"
+msgstr ""
#: prefs/AudioIOPrefs.cpp:147
#, fuzzy
@@ -7582,6 +7653,10 @@ msgstr ""
msgid "&Software Playthrough (Play new track while recording it)"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:158
+msgid "Cut Preview"
+msgstr ""
+
#: prefs/MidiIOPrefs.cpp:160
msgid "Play before cut region:"
msgstr ""
@@ -7590,6 +7665,10 @@ msgstr ""
msgid "Play after cut region:"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:168
+msgid "Latency"
+msgstr ""
+
#: prefs/AudioIOPrefs.cpp:174
msgid "Audio to buffer:"
msgstr ""
@@ -7602,6 +7681,18 @@ msgstr ""
msgid "Seek Time"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:187
+msgid "Short period:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:189
+msgid "Long period:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:194
+msgid "Effects Preview"
+msgstr ""
+
#: prefs/MidiIOPrefs.cpp:196
msgid "Play when previewing:"
msgstr ""
@@ -7626,14 +7717,12 @@ msgstr "Gn
msgid "Buttons"
msgstr "Cnaipí"
-#: ../src/prefs/MousePrefs.cpp:88
-#: ../src/prefs/MousePrefs.cpp:92
+#: ../src/prefs/MousePrefs.cpp:88 ../src/prefs/MousePrefs.cpp:92
#: ../src/prefs/MousePrefs.cpp:100
msgid "Left-Click"
msgstr "Cléchnagadh"
-#: ../src/prefs/MousePrefs.cpp:88
-#: ../src/prefs/MousePrefs.cpp:89
+#: ../src/prefs/MousePrefs.cpp:88 ../src/prefs/MousePrefs.cpp:89
#: ../src/prefs/MousePrefs.cpp:90
msgid "Select"
msgstr "Roghnaigh"
@@ -7642,10 +7731,8 @@ msgstr "Roghnaigh"
msgid "Set Selection Point"
msgstr "Socraigh Pointe an Rogha"
-#: ../src/prefs/MousePrefs.cpp:89
-#: ../src/prefs/MousePrefs.cpp:93
-#: ../src/prefs/MousePrefs.cpp:97
-#: ../src/prefs/MousePrefs.cpp:98
+#: ../src/prefs/MousePrefs.cpp:89 ../src/prefs/MousePrefs.cpp:93
+#: ../src/prefs/MousePrefs.cpp:97 ../src/prefs/MousePrefs.cpp:98
#: ../src/prefs/MousePrefs.cpp:102
msgid "Left-Drag"
msgstr "Clétharraingt"
@@ -7678,10 +7765,8 @@ msgstr ""
msgid "Set Selection Point and Play"
msgstr ""
-#: ../src/prefs/MousePrefs.cpp:92
-#: ../src/prefs/MousePrefs.cpp:93
-#: ../src/prefs/MousePrefs.cpp:94
-#: ../src/prefs/MousePrefs.cpp:95
+#: ../src/prefs/MousePrefs.cpp:92 ../src/prefs/MousePrefs.cpp:93
+#: ../src/prefs/MousePrefs.cpp:94 ../src/prefs/MousePrefs.cpp:95
msgid "Zoom"
msgstr "Zúmáil"
@@ -7757,10 +7842,8 @@ msgstr "Athraigh Cl
msgid "Change Sample"
msgstr "Athraigh Sampla"
-#: ../src/prefs/MousePrefs.cpp:100
-#: ../src/prefs/MousePrefs.cpp:101
-#: ../src/prefs/MousePrefs.cpp:102
-#: ../src/prefs/MousePrefs.cpp:103
+#: ../src/prefs/MousePrefs.cpp:100 ../src/prefs/MousePrefs.cpp:101
+#: ../src/prefs/MousePrefs.cpp:102 ../src/prefs/MousePrefs.cpp:103
msgid "Pencil"
msgstr "Peann Luaidhe"
@@ -7780,10 +7863,8 @@ msgstr "Athraigh Sampla
msgid "Change ONE Sample only"
msgstr "Athraigh AON tsampla amháin"
-#: ../src/prefs/MousePrefs.cpp:105
-#: ../src/prefs/MousePrefs.cpp:106
-#: ../src/prefs/MousePrefs.cpp:107
-#: ../src/prefs/MousePrefs.cpp:108
+#: ../src/prefs/MousePrefs.cpp:105 ../src/prefs/MousePrefs.cpp:106
+#: ../src/prefs/MousePrefs.cpp:107 ../src/prefs/MousePrefs.cpp:108
msgid "Multi"
msgstr "Il"
@@ -7797,8 +7878,7 @@ msgstr "Ionann leis an uirlis roghn
msgid "same as zoom tool"
msgstr "Ionann leis an uirlis zúmála"
-#: ../src/prefs/MousePrefs.cpp:110
-#: ../src/prefs/MousePrefs.cpp:111
+#: ../src/prefs/MousePrefs.cpp:110 ../src/prefs/MousePrefs.cpp:111
msgid "Any"
msgstr "Éinní"
@@ -7826,10 +7906,62 @@ msgstr "Rial-Roth-Cas"
msgid "Zoom in or out"
msgstr "Zúmáil isteach nó amach"
+#: prefs/AudioIOPrefs.cpp:165
+msgid "Length of preview:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:173
+msgid "Preview before cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:175
+msgid "Preview after cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:197
+msgid "Seek Time when playing"
+msgstr ""
+
#: ../src/prefs/PrefsDialog.cpp:52
msgid "Audacity Preferences"
msgstr "Roghanna Audacity"
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:132
+msgid "When saving a project that depends on other audio files"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:87
+msgid "Always © all audio into project (safest)"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:88
+msgid "&Do not copy any audio"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:135
+msgid "&Ask user"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr ""
+
#: ../src/prefs/QualityPrefs.cpp:161
msgid "Rectangle"
msgstr "Dronnuilleog"
@@ -7854,44 +7986,44 @@ msgstr "R
msgid "Default Sample Format:"
msgstr "Formáid Réamhshocraithe Samplaithe:"
-#: ../src/prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "Aistritheoir fíor-ama ráta samplaithe:"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:147
-msgid "High-quality sample rate converter:"
-msgstr "Aistritheoir ar ardchaighdeáin de rátaí samplaithe:"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+msgid "Sample Rate Converter:"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:171
-msgid "Real-time dither:"
-msgstr "Sliomachán fíor-ama:"
+#: prefs/QualityPrefs.cpp:164
+msgid "Dither"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:186
-msgid "High-quality dither:"
-msgstr "Slíomachán ar ardchaighdeán:"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
+#: prefs/AudioIOPrefs.cpp:149
+msgid "Overdub: &Play other tracks while recording new one"
msgstr ""
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
+#: prefs/AudioIOPrefs.cpp:150
+msgid "&Hardware Playthrough: Play new track while recording it"
msgstr ""
-#: prefs/QualityPrefs.cpp:164
-msgid "Dither"
+#: prefs/AudioIOPrefs.cpp:157
+msgid "&Software Playthrough: Play new track while recording or monitoring"
msgstr ""
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
+#: prefs/AudioIOPrefs.cpp:160
+msgid "(uncheck when recording \"stereo mix\")"
msgstr ""
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
msgstr ""
-#: prefs/SmartRecordPrefs.cpp:54 prefs/SmartRecordPrefs.cpp:55
-msgid "Smart Recording"
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
msgstr ""
#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
@@ -7906,18 +8038,54 @@ msgstr ""
msgid "Spectrograms"
msgstr "Sp'graim"
-#: ../src/prefs/SpectrumPrefs.cpp:70
-msgid "FFT Size"
-msgstr "Méad FFT"
-
#: prefs/SpectrumPrefs.cpp:75
msgid "8 - most wideband"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
#: ../src/prefs/SpectrumPrefs.cpp:40
msgid "256 - default"
msgstr "256 - réamhshocrú"
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:107
msgid "32768 - most narrowband"
msgstr ""
@@ -7926,20 +8094,24 @@ msgstr ""
msgid "4096 - most narrowband"
msgstr "4096 - cúngbhanda is cúinge"
-#: prefs/SpectrumPrefs.cpp:90
-msgid "Window type:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:125
-msgid "FFT Skip Points"
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:96
-msgid "Display"
+#: prefs/SpectrumPrefs.cpp:93
+msgid "Window type"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:100
-msgid "&Grayscale"
+#: prefs/SpectrumPrefs.cpp:125
+msgid "FFT Skip Points"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
msgstr ""
#: prefs/SpectrumPrefs.cpp:103
@@ -7950,16 +8122,16 @@ msgstr ""
msgid "Maximum Frequency (Hz):"
msgstr "Uasmhinicíocht (Hz):"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
msgstr ""
#: prefs/SpectrumPrefs.cpp:165
@@ -7970,6 +8142,14 @@ msgstr ""
msgid "Max. Number of Notes (1..128):"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:161
+msgid "&Find Notes"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Quantize Notes"
+msgstr ""
+
#: ../src/prefs/SpectrumPrefs.cpp:148
msgid "The maximum frequency must be an integer"
msgstr "Ní foláir ach gur slánuimhir í an uasmhinicíocht"
@@ -7986,18 +8166,57 @@ msgstr ""
msgid "Minimum frequency must be at least 0 Hz"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:226 prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
+#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:230
+msgid "The maximum number of notes must be in the range 1..128"
msgstr ""
#: prefs/ThemePrefs.cpp:61 prefs/ThemePrefs.cpp:62
msgid "Theme"
msgstr ""
+#: prefs/ThemePrefs.cpp:123
+msgid "Info"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:91
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#: prefs/ThemePrefs.cpp:90
msgid "Theme Cache - Images && Color"
msgstr ""
@@ -8026,78 +8245,94 @@ msgstr ""
msgid "Load Files"
msgstr ""
-#: prefs/ThemePrefs.cpp:123
-msgid "Info"
+#: prefs/GUIPrefs.cpp:50
+msgid "Simple"
msgstr ""
-#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
+#: prefs/GUIPrefs.cpp:72
+msgid "&Update display while playing"
msgstr ""
-#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
+#: prefs/GUIPrefs.cpp:80
+msgid "Automatically &fit tracks vertically zoomed"
msgstr ""
-#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
+#: prefs/TracksPrefs.cpp:88
+msgid "Default View Mode:"
msgstr ""
-#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:88
+msgid "&Select all audio in project, if none selected"
msgstr ""
-#: ../src/ControlToolBar.cpp:470
-msgid "Pause"
-msgstr "Sos"
+#: prefs/GUIPrefs.cpp:96
+msgid "Enable cut &lines"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play"
+#: prefs/GUIPrefs.cpp:76
+msgid "Enable &dragging of left and right selection edges"
msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
+#: prefs/GUIPrefs.cpp:104
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
msgstr ""
-#: ../src/ControlToolBar.cpp:471
-msgid "Stop"
-msgstr "Stad"
+#: prefs/GUIPrefs.cpp:90
+msgid "Editing a &clip can move other clips"
+msgstr ""
-#: ../src/ControlToolBar.cpp:467
-msgid "Skip to Start"
-msgstr "Léim go dtí an Tosach"
+#: prefs/GUIPrefs.cpp:168
+msgid "Solo Button:"
+msgstr ""
-#: ../src/ControlToolBar.cpp:472
-msgid "Skip to End"
-msgstr "Léim go dtí an Deireadh"
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:192
-msgid "Record (Shift for Append Record)"
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
msgstr ""
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr ""
+
+#: ../src/Menus.cpp:561
+msgid "Pause"
+msgstr "Sos"
+
+#: ../src/Menus.cpp:560
+msgid "Stop"
+msgstr "Stad"
+
#: toolbars/ControlToolBar.cpp:195
msgid "Clean Speech"
msgstr ""
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play (Shift for Loop Play)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:192
+msgid "Record (Shift for Append Record)"
+msgstr ""
+
#: toolbars/ControlToolBar.cpp:524 toolbars/ControlToolBar.cpp:776
msgid "Error while opening sound device. "
msgstr ""
@@ -8138,28 +8373,20 @@ msgstr "Z
msgid "Zoom Out"
msgstr "Zúmáil Amach"
-#: ../src/EditToolBar.cpp:170
-msgid "Zoom Toggle"
-msgstr "Scorán Zúmála"
-
-#: toolbars/EditToolBar.cpp:160
-msgid "Fit Selection"
-msgstr ""
-
#: ../src/EditToolBar.cpp:174
msgid "Fit selection in window"
msgstr "Socraigh rogha sa bhfuinneog"
-#: toolbars/EditToolBar.cpp:162
-msgid "Fit Project"
-msgstr ""
-
#: ../src/EditToolBar.cpp:176
msgid "Fit project in window"
msgstr "Socraigh tionscadal sa bhfuinneog"
-#: toolbars/MeterToolBar.cpp:49
-msgid "Meter"
+#: toolbars/EditToolBar.cpp:160
+msgid "Fit Selection"
+msgstr ""
+
+#: toolbars/EditToolBar.cpp:162
+msgid "Fit Project"
msgstr ""
#: toolbars/MeterToolBar.cpp:79
@@ -8206,6 +8433,14 @@ msgstr ""
msgid "Input Source"
msgstr ""
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:75
msgid "Selection"
msgstr ""
@@ -8284,30 +8519,6 @@ msgstr "Cl
msgid "Click and drag to move a track in time"
msgstr "Cnag is tarraing chun rian a bhogadh in am"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr ""
-
-#: ../src/ControlToolBar.cpp:355
-msgid "Selection Tool"
-msgstr "Uirlis an Roghnaithe"
-
-#: ../src/ControlToolBar.cpp:356
-msgid "Envelope Tool"
-msgstr "Uirlis na gClúdach"
-
-#: ../src/ControlToolBar.cpp:357
-msgid "Time Shift Tool"
-msgstr "Uirlis Bhogadh in Am"
-
-#: ../src/ControlToolBar.cpp:358
-msgid "Zoom Tool"
-msgstr "Uirlis Zúmála"
-
-#: ../src/ControlToolBar.cpp:359
-msgid "Draw Tool"
-msgstr "Uirlis Líníochta"
-
#: ../src/ControlToolBar.cpp:360
msgid "Multi-Tool Mode"
msgstr "Mód Iluirlise"
@@ -8316,22 +8527,10 @@ msgstr "M
msgid "Slide Tool"
msgstr ""
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr ""
-
-#: toolbars/TranscriptionToolBar.cpp:81
-msgid "Transcription"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:183
msgid "Play at selected speed"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:184
-msgid "Play-at-speed"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:190 toolbars/TranscriptionToolBar.cpp:195
msgid "Playback Speed"
msgstr ""
@@ -8340,74 +8539,38 @@ msgstr ""
msgid "Adjust left selection to next onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:201
-msgid "Left-to-On"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:203
msgid "Adjust right selection to previous offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:204
-msgid "Right-to-Off"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:206
msgid "Adjust left selection to next offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:207
-msgid "Left-to-Off"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:209
msgid "Adjust right selection to previous onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:210
-msgid "Right-to-On"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:212
msgid "Select region of sound around cursor"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:213
-msgid "Select-Sound"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:215
msgid "Select region of silence around cursor"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:216
-msgid "Select-Silence"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:218
msgid "Automatically make labels from words"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:219
-msgid "Make Labels"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:221
msgid "Add label at selection"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:222
-msgid "Add Label"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:224
msgid "Calibrate voicekey"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:225
-msgid "Calibrate"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:229
msgid "Adjust Sensitivity"
msgstr ""
@@ -8440,6 +8603,46 @@ msgstr ""
msgid "Key type"
msgstr ""
+#: toolbars/TranscriptionToolBar.cpp:184
+msgid "Play-at-speed"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:201
+msgid "Left-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:204
+msgid "Right-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:207
+msgid "Left-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:210
+msgid "Right-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:213
+msgid "Select-Sound"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:216
+msgid "Select-Silence"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:219
+msgid "Make Labels"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:222
+msgid "Add Label"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:225
+msgid "Calibrate"
+msgstr ""
+
#: ../src/widgets/AButton.cpp:181
msgid " (disabled)"
msgstr "(cosctha)"
@@ -8453,14 +8656,12 @@ msgid "Button"
msgstr ""
#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
-#: ../src/widgets/ASlider.cpp:329
-#: ../src/widgets/Meter.cpp:165
+#: ../src/widgets/ASlider.cpp:329 ../src/widgets/Meter.cpp:165
msgid "L"
msgstr "C"
#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
-#: ../src/widgets/ASlider.cpp:332
-#: ../src/widgets/Meter.cpp:167
+#: ../src/widgets/ASlider.cpp:332 ../src/widgets/Meter.cpp:167
msgid "R"
msgstr "D"
@@ -8743,3 +8944,15 @@ msgstr ""
msgid "Could not load file: \"%s\""
msgstr ""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
+
diff --git a/locale/gl.po b/locale/gl.po
index 7065141..8e97a68 100644
--- a/locale/gl.po
+++ b/locale/gl.po
@@ -1,11 +1,9 @@
# translation of audacity.po to Galician
# Copyright (C) 2004, 2005 Free Software Foundation, Inc.
# Xosé Antón Vicente RodrÃguez <galiza en gmail.com>, 2005.
-
#
msgid ""
-msgstr ""
-"Project-Id-Version: audacity\n"
+msgstr "Project-Id-Version: audacity\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2005-10-14 09:03+0200\n"
"PO-Revision-Date: 2005-10-23 16:34+0200\n"
@@ -18,2390 +16,3048 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"\n"
-#: ../src/effects/ClickRemoval.cpp:326
-msgid ""
-"\n"
-" \n"
-"Select threshold (lower is more sensitive)"
+#: ../src/Menus.cpp:529
+msgid "&About Audacity..."
+msgstr "Acerca de &Audacity..."
+
+#: AboutDialog.cpp:157
+msgid "OK... Audacious!"
msgstr ""
-"\n"
-" \n"
-"Seleccione umbral (valores máis baixos indican maior sensibilidade)"
-#: ../src/effects/ClickRemoval.cpp:333
-msgid ""
-"\n"
-"Max spike width (higher is more sensitive)"
+#: AboutDialog.cpp:175
+msgid "Audacity is a free program written by a team of volunteer <a href=\"http://audacity.sourceforge.net/community/developers\">developers</a> around the world. We are grateful to <a href=\"http://sourceforge.net\">SourceForge.net</a> for our project hosting. Audacity is available for Windows 98 and later, Mac OS X, Linux and other Unix-like operating systems. Older versions of Audacity are available for Mac OS 9."
msgstr ""
-"\n"
-"Pico de anchura máximo (valores mái altos indican maior sensibilidade)"
-#: ../src/widgets/AButton.cpp:181
-msgid " (disabled)"
-msgstr " (deshabilitado)"
+#: AboutDialog.cpp:179
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgstr ""
-#: ../src/import/Import.cpp:83
-msgid ""
-" is an audio CD file. \n"
-"Audacity does not open this type of file.\n"
-"Try ripping it to a native audio format that Audacity can import."
+#: AboutDialog.cpp:182
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
-"é un arquivo de CD. \n"
-"Audacity non pode abrir este tipo de arquivo.\n"
-"Intente extraelo a un formato de audio que poida ser importado por Audacity."
-#. i18n-hint: This refers to a "window function", used in the
-#. Frequency analyze dialog box.
-#: ../src/FreqWindow.cpp:167
-msgid " window"
-msgstr " rango"
+#. i18n-hint: The translation of "translator_credits" will appear
+#. in the credits in the About Audacity window. Use this to add
+#. your own name(s) to the credits.
+#.
+#. For example: "English translation by Dominic Mazzoni."
+#.
+#: ../src/AboutDialog.cpp:127 ../src/AboutDialog.cpp:129
+msgid "translator_credits"
+msgstr "Traducción ao Galego por Xosé Antón Vicente RodrÃguez"
-#: ../src/import/ImportRaw.cpp:335
+#: AboutDialog.cpp:207
+msgid "A Free Digital Audio Editor<br>"
+msgstr ""
+
+#: ../src/AboutDialog.cpp:154
+msgid "Credits"
+msgstr "Créditos"
+
+#: AboutDialog.cpp:215
#, c-format
-msgid "%d Channels"
-msgstr "%d Canais"
+msgid "Audacity %s Development Team"
+msgstr ""
-#: ../src/effects/Repeat.cpp:282
+#: AboutDialog.cpp:220
#, c-format
-msgid "%d minutes, %d seconds"
-msgstr "%d minutos, %d segundos"
+msgid "Audacity %s Support Team"
+msgstr ""
+
+#: AboutDialog.cpp:225
+msgid "Emeritus Developers"
+msgstr ""
+
+#: AboutDialog.cpp:230
+msgid "Other Emeritus Team Members"
+msgstr ""
+
+#: AboutDialog.cpp:235
+msgid "Other Contributors"
+msgstr ""
+
+#: AboutDialog.cpp:240
+msgid "Audacity is based on code from the following projects:"
+msgstr ""
+
+#: ../src/AboutDialog.cpp:237
+msgid "Special thanks:"
+msgstr "Agradecementos Especiais:"
+
+#: AboutDialog.cpp:250
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgstr ""
+
+#: AboutDialog.cpp:258
+msgid "Audacity"
+msgstr ""
+
+#. i18n-hint: Information about when audacity was compiled
+#: AboutDialog.cpp:304 AboutDialog.cpp:317 AboutDialog.cpp:468
+msgid "Build Information"
+msgstr ""
+
+#: ../src/effects/AvcCompressor.cpp:652
+msgid "Enabled"
+msgstr "Habilitado"
+
+#: AboutDialog.cpp:311
+msgid "Disabled"
+msgstr ""
+
+#: AboutDialog.cpp:321
+msgid "File Format Support"
+msgstr ""
+
+#. i18n-hint: This is what the library (libmad) does - imports MP3 files
+#: AboutDialog.cpp:331 AboutDialog.cpp:333
+msgid "MP3 Importing"
+msgstr ""
+
+#: AboutDialog.cpp:340 AboutDialog.cpp:343
+msgid "Ogg Vorbis Import and Export"
+msgstr ""
+
+#: AboutDialog.cpp:347 AboutDialog.cpp:350
+msgid "ID3 tag support"
+msgstr ""
+
+#: AboutDialog.cpp:357 AboutDialog.cpp:360
+msgid "FLAC import and export"
+msgstr ""
+
+#: AboutDialog.cpp:365 AboutDialog.cpp:368
+msgid "MP2 export"
+msgstr ""
+
+#: AboutDialog.cpp:373 AboutDialog.cpp:376
+msgid "Import via QuickTime"
+msgstr ""
+
+#. i18n-hint: Libraries that are essential to audacity
+#: AboutDialog.cpp:383
+msgid "Core Libraries"
+msgstr ""
+
+#: AboutDialog.cpp:389 AboutDialog.cpp:392 AboutDialog.cpp:395
+#: AboutDialog.cpp:397
+msgid "Sample rate conversion"
+msgstr ""
+
+#: AboutDialog.cpp:401
+msgid "Audio playback and recording"
+msgstr ""
+
+#: AboutDialog.cpp:413
+msgid "Features"
+msgstr ""
+
+#: AboutDialog.cpp:417 AboutDialog.cpp:420 AboutDialog.cpp:425
+#: AboutDialog.cpp:428 AboutDialog.cpp:433 AboutDialog.cpp:436
+#: AboutDialog.cpp:441 AboutDialog.cpp:444
+msgid "Plug-in support"
+msgstr ""
+
+#: AboutDialog.cpp:449 AboutDialog.cpp:452
+msgid "Sound card mixer support"
+msgstr ""
+
+#: AboutDialog.cpp:457 AboutDialog.cpp:460
+msgid "Pitch and Tempo Change support"
+msgstr ""
+
+#: AboutDialog.cpp:472
+#, fuzzy
+msgid "Program build date: "
+msgstr "Data de contrucción do programa:"
-#: ../src/effects/Repeat.cpp:285
+#: AboutDialog.cpp:475 AboutDialog.cpp:477
+msgid "Build type:"
+msgstr ""
+
+#: AboutDialog.cpp:475
+msgid "Debug build"
+msgstr ""
+
+#: AboutDialog.cpp:477
+msgid "Release build"
+msgstr ""
+
+#. i18n-hint: The directory audacity is installed into (on *nix systems)
+#: AboutDialog.cpp:482
+msgid "Installation Prefix: "
+msgstr ""
+
+#: AboutDialog.cpp:486
+msgid "Settings folder: "
+msgstr ""
+
+#: AboutDialog.cpp:501
+msgid "GPL License"
+msgstr ""
+
+#: ../src/AudacityApp.cpp:304 ../src/Project.cpp:1770
#, c-format
-msgid "%d seconds"
-msgstr "%d segundos"
+msgid "%s is already open in another window."
+msgstr "%s xa está aberto noutra fiestra."
+
+#: ../src/AudacityApp.cpp:306 ../src/Project.cpp:1772 ../src/Project.cpp:1843
+#: ../src/Project.cpp:1894 ../src/Project.cpp:1905 ../src/Project.cpp:1943
+msgid "Error opening project"
+msgstr "Error al abrir proyecto"
#: ../src/AudacityApp.cpp:338
#, c-format
-msgid ""
-"%s does not exist and could not be opened.\n"
+msgid "%s does not exist and could not be opened.\n"
"\n"
"It has been removed from the history list."
-msgstr ""
-"%s non existe e non pode ser aberto.\n"
+msgstr "%s non existe e non pode ser aberto.\n"
"\n"
"Foi eliminado do historial."
-#: ../src/AudacityApp.cpp:304 ../src/Project.cpp:1770
+#: ../src/AudacityApp.cpp:367
+msgid "Master Gain Control"
+msgstr "Control mestre de gañancia"
+
+#: ../src/AudacityApp.cpp:368
+msgid "Input Meter"
+msgstr "Medidor de entrada"
+
+#: ../src/AudacityApp.cpp:369
+msgid "Output Meter"
+msgstr "Medidor de saÃda"
+
+#: ../src/Menus.cpp:141
+msgid "&New"
+msgstr "&Novo"
+
+#: ../src/Menus.cpp:143
+msgid "&Open..."
+msgstr "&Abrir..."
+
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
+
+#: ../src/Menus.cpp:327 ../src/Menus.cpp:333
+msgid "&Preferences..."
+msgstr "&Preferencias..."
+
+#: ../src/AudacityApp.cpp:626 ../src/AudacityApp.cpp:696
#, c-format
-msgid "%s is already open in another window."
-msgstr "%s xa está aberto noutra fiestra."
+msgid "Using block size of %ld\n"
+msgstr "Usando tamaño de bloque de %ld\n"
-#. i18n-hint: This is the pattern for filenames that are created
-#. when a file needs to be backed up to a different name. For
-#. example, mysong would become mysong-old1, mysong-old2, etc.
-#: ../src/DirManager.cpp:627
+#: ../src/AudacityApp.cpp:641 ../src/AudacityApp.cpp:711
#, c-format
-msgid "%s-old%d"
-msgstr "%s-antigo%d"
+msgid "Unknown command line option: %s\n"
+msgstr "Opción de liña de comandos descoñecida: %s\n"
-#: ../src/Menus.cpp:529
-msgid "&About Audacity..."
-msgstr "Acerca de &Audacity..."
+#: ../src/AudacityApp.cpp:773
+msgid "Audacity could not find a place to store temporary files.\n"
+"Please enter an appropriate directory in the preferences dialog."
+msgstr "Audacity non puido atopar un lugar onde almacenar os arquivos temporais.\n"
+"Indique un directorio apropiado no diálogo de preferencias."
-#: ../src/Menus.cpp:269
-msgid "&All\tCtrl+A"
-msgstr "&Todo\tCtrl+A"
+#: AudacityApp.cpp:1151
+#, fuzzy
+msgid "Audacity is now going to exit. Please launch Audacity again to use the new temporary directory."
+msgstr "Audacity vaise pechar. Por favor execute Audacity novamente para usar o novo directorio temporal."
-#: ../src/Menus.cpp:494
-msgid "&Analyze"
-msgstr "&Analizar"
+#: AudacityApp.cpp:1183
+msgid "Running two copies of Audacity simultaneously may cause\n"
+"data loss or cause your system to crash.\n"
+"\n"
+msgstr ""
-#: ../src/Menus.cpp:145
-msgid "&Close\tCtrl+W"
-msgstr "Pe&char\tCtrl+W"
+#: AudacityApp.cpp:1190
+msgid "Audacity was not able to lock the temporary files directory.\n"
+"This folder may be in use by another copy of Audacity.\n"
+msgstr ""
-#: ../src/Menus.cpp:526
-msgid "&Contents..."
-msgstr "&Conteidos..."
+#: AudacityApp.cpp:1192
+msgid "Do you still want to start Audacity?"
+msgstr ""
-#: ../src/Menus.cpp:253
-msgid "&Copy\tCtrl+C"
-msgstr "&Copiar\tCtrl+C"
+#: ../src/AudacityApp.cpp:829
+msgid "Error locking temporary folder"
+msgstr "Erro bloqueando o directorio temporal"
-#: ../src/Menus.cpp:260
-msgid "&Delete\tCtrl+K"
-msgstr "&Borrar\tCtrl+K"
+#: AudacityApp.cpp:1232
+msgid "The system has detected that another copy of Audacity is running.\n"
+msgstr ""
-#: ../src/Menus.cpp:227
-msgid "&Edit"
-msgstr "&Editar"
+#: AudacityApp.cpp:1234
+msgid "Use the New or Open commands in the currently running Audacity\n"
+"process to open multiple projects simultaneously.\n"
+msgstr ""
-#: ../src/Menus.cpp:386
-msgid "&Edit ID3 Tags..."
-msgstr "&Editar etiquetas ID3..."
+#: ../src/AudacityApp.cpp:846
+msgid "Audacity is already running"
+msgstr "Audacity xa se está executando"
-#: ../src/Menus.cpp:605
-#, c-format
-msgid "&Export As %s..."
-msgstr "&Exportar como %s..."
+#: AudacityApp.cpp:1252
+msgid "Command-line options supported:"
+msgstr ""
-#: ../src/Menus.cpp:608
-#, c-format
-msgid "&Export Selection As %s..."
-msgstr "&Exportar selección como %s..."
+#. i18n-hint: '-help' is the option and needs to stay in
+#. * English. This displays a list of available options
+#: AudacityApp.cpp:1255
+msgid "\t-help (this message)"
+msgstr ""
-#: ../src/Menus.cpp:139
-msgid "&File"
-msgstr "&Arquivo"
+#. i18n-hint '-version' needs to stay in English.
+#: AudacityApp.cpp:1257
+msgid "\t-version (display Audacity version)"
+msgstr ""
-#: ../src/Menus.cpp:354
-msgid "&Fit in Window\tCtrl+F"
-msgstr "A&xustar á fiestra\tCtrl+F"
+#. i18n-hint '-test' is the option and needs to stay in
+#. * English. This runs a set of automatic tests on audacity
+#. * itself
+#: AudacityApp.cpp:1261
+msgid "\t-test (run self diagnostics)"
+msgstr ""
-#: ../src/Menus.cpp:441
-msgid "&Generate"
-msgstr "Xe&rar"
+#. i18n-hint '-blocksize' is the option and needs to stay in
+#. * English. 'nnn' is any integer number. This controls the
+#. * size pieces that audacity uses when writing files to the
+#. * disk
+#: AudacityApp.cpp:1266
+msgid "\t-blocksize nnn (set max disk block size in bytes)"
+msgstr ""
-#. i18n-hint: The name of the Help menu
-#: ../src/Menus.cpp:524 ../src/Menus.cpp:540
-msgid "&Help"
-msgstr "&Axuda"
+#: AudacityApp.cpp:1267
+msgid "In addition, specify the name of an audio file or Audacity project to open it."
+msgstr ""
-#: ../src/Menus.cpp:364
-msgid "&History..."
-msgstr "&Historial..."
+#: ../src/AudacityApp.cpp:1099
+msgid "Audacity project (.AUP) files are not currently \n"
+"associated with Audacity. \n"
+"\n"
+"Associate them, so they open on double-click?"
+msgstr "Os arquivos de proxecto de Audacity (AUP) non están \n"
+"asociados a Audacity.\n"
+"\n"
+"ÿQuere asocialos para que se poidan abrir directamente?"
-#: ../src/Menus.cpp:381
-msgid "&Import Audio...\tCtrl+I"
-msgstr "&Importar audio...\tCtrl+I"
+#: ../src/AudacityApp.cpp:1100
+msgid "Audacity Project Files"
+msgstr "Arquivos de proxecto de Audacity"
-#: ../src/Menus.cpp:141
-msgid "&New\tCtrl+N"
-msgstr "&Novo\tCtrl+N"
+#: AudioIO.cpp:253
+msgid "Could not find any audio devices.\n"
+msgstr ""
-#: ../src/Menus.cpp:143
-msgid "&Open...\tCtrl+O"
-msgstr "&Abrir...\tCtrl+O"
+#: ../src/AudioIO.cpp:167
+msgid "You will not be able to play or record audio.\n"
+"\n"
+msgstr "Non estararás habilitado a reproducir ou gravar audio. \n"
+"\n"
-#: ../src/Menus.cpp:254
-msgid "&Paste\tCtrl+V"
-msgstr "&Pegar\tCtrl+V"
+#: ../src/AudioIO.cpp:170
+msgid "Error: "
+msgstr "Erro: "
-#: ../src/Menus.cpp:496
-msgid "&Plot Spectrum"
-msgstr "Debuxar es&pectro"
+#: ../src/AudioIO.cpp:173
+msgid "Error Initializing Audio"
+msgstr "Erro ao inicializar audio"
-#: ../src/Menus.cpp:327 ../src/Menus.cpp:333
-msgid "&Preferences...\tCtrl+P"
-msgstr "&Preferencias...\tCtrl+P"
+#: AudioIO.cpp:1225
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
+"Audacity has brought it back to start at zero.\n"
+"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
+msgstr ""
-#: ../src/Menus.cpp:379
-msgid "&Project"
-msgstr "&Proxecto"
+#: AudioIO.cpp:1225
+msgid "Latency problem"
+msgstr ""
-#: ../src/Menus.cpp:388
-msgid "&Quick Mix"
-msgstr "&Mestura rápida"
+#: AutoRecovery.cpp:54
+msgid "Automatic Crash Recovery"
+msgstr ""
-#: ../src/Menus.cpp:239
-msgid "&Redo"
-msgstr "&Refacer"
+#: AutoRecovery.cpp:73
+msgid "Some projects were not saved properly the last time Audacity was run.\n"
+"Fortunately, the following projects can automatically be recovered:"
+msgstr ""
-#: ../src/Menus.cpp:633
-#, c-format
-msgid "&Redo %s"
-msgstr "&Refacer %s"
+#: AutoRecovery.cpp:75
+msgid "Recoverable projects"
+msgstr ""
-#: ../src/Menus.cpp:533
-msgid "&Run Benchmark..."
-msgstr "Executar test de &rendemento..."
+#: AutoRecovery.cpp:78
+msgid "Name"
+msgstr ""
-#: ../src/Menus.cpp:146
-msgid "&Save Project\tCtrl+S"
-msgstr "&Gardar proxecto\tCtrl+S"
+#: AutoRecovery.cpp:84
+msgid "Recovering a project will not change any files on disk before you save it."
+msgstr ""
-#: ../src/Menus.cpp:261
-msgid "&Silence\tCtrl+L"
-msgstr "&Silencio\tCtrl+L"
+#: AutoRecovery.cpp:88
+msgid "Quit Audacity"
+msgstr ""
-#: ../src/Menus.cpp:258
-msgid "&Trim\tCtrl+T"
-msgstr "&Recortar\tCtrl+T"
+#: AutoRecovery.cpp:89
+msgid "Do Not Recover"
+msgstr ""
-#: ../src/Menus.cpp:231
-msgid "&Undo\tCtrl+Z"
-msgstr "&Desfacer\tCtrl+Z"
+#: AutoRecovery.cpp:90
+msgid "Recover Projects"
+msgstr ""
-#: ../src/Menus.cpp:620
-#, c-format
-msgid "&Undo %s"
-msgstr "&Desfacer %s"
+#: AutoRecovery.cpp:127
+msgid "Are you sure you don't want to recover any projects?\n"
+"They can't be recovered later."
+msgstr ""
-#: ../src/Menus.cpp:345
-msgid "&View"
-msgstr "&Ver"
+#: AutoRecovery.cpp:128
+msgid "Confirm?"
+msgstr ""
-#: ../src/Menus.cpp:356
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "Acercar a &selección\tCtrl+E"
+#: AutoRecovery.cpp:146 AutoRecovery.cpp:183
+msgid "Could not enumerate files in auto save directory"
+msgstr ""
-#: ../src/TrackPanel.cpp:4106
-msgid "'left' channel"
-msgstr "Canle 'esquerda'"
+#: ../src/ControlToolBar.cpp:723 ../src/ControlToolBar.cpp:884
+#: ../src/effects/Effect.cpp:332 ../src/prefs/DirectoriesPrefs.cpp:204
+msgid "Error"
+msgstr "Erro"
-#: ../src/TrackPanel.cpp:4107
-msgid "'mono'"
-msgstr "'mono'"
+#: BatchCommandDialog.cpp:57 BatchCommandDialog.cpp:62
+#: BatchCommandDialog.cpp:63
+msgid "Select Command"
+msgstr ""
-#: ../src/TrackPanel.cpp:4106
-msgid "'right' channel"
-msgstr "Canle 'dereita'"
+#: BatchCommandDialog.cpp:82 BatchProcessDialog.cpp:454
+msgid "&Command"
+msgstr ""
-#: ../src/prefs/FileFormatPrefs.cpp:405
-msgid ""
-"(Not all combinations of headers\n"
-"and encodings are possible.)"
+#: BatchCommandDialog.cpp:84
+msgid "&Edit Parameters"
msgstr ""
-"(Non tódalas combinacións de encabezados\n"
-"e codificacións son posibles.)"
-#: ../src/prefs/GUIPrefs.cpp:171
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 dB (lÃmite aproximado do oido humano)"
+#: BatchCommandDialog.cpp:91 BatchProcessDialog.cpp:455
+msgid "&Parameters"
+msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:178
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB (rango PCM de mostras de 24 bit)"
+#: BatchCommandDialog.cpp:96
+msgid "C&hoose command"
+msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:150
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 dB (rango superficial para edición de alta amplitude)"
+#: BatchCommands.cpp:455
+msgid "Stereo to Mono Effect not found"
+msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:157
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 dB (rango PCM de mostras de 8 bit)"
+#: ../src/export/Export.cpp:366
+msgid "Ogg Vorbis support is not included in this build of Audacity"
+msgstr "Soporte de Ogg Vorbis non está incluido nesta versión de Audacity"
-#: ../src/prefs/GUIPrefs.cpp:164
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 dB (rango PCM de mostras de 16 bits)"
+#: BatchCommands.cpp:487
+msgid "FLAC support is not included in this build of Audacity"
+msgstr ""
-#: ../src/prefs/AudioIOPrefs.cpp:212
-msgid "1 (Mono)"
-msgstr "1 (Mono)"
+#: BatchCommands.cpp:491
+#, c-format
+msgid "Command %s not implemented yet"
+msgstr ""
-#: ../src/import/ImportRaw.cpp:332
-msgid "1 Channel (Mono)"
-msgstr "1 Canle (Mono)"
+#: BatchCommands.cpp:507
+#, c-format
+msgid "Could not set parameters of effect %s\n"
+" to %s."
+msgstr ""
-#: ../src/prefs/AudioIOPrefs.cpp:213
-msgid "2 (Stereo)"
-msgstr "2 (Estéreo)"
+#: BatchCommands.cpp:560
+#, c-format
+msgid "Your batch command of %s was not recognised."
+msgstr ""
-#: ../src/import/ImportRaw.cpp:333
-msgid "2 Channels (Stereo)"
-msgstr "2 Canles (Estéreo)"
+#: BatchCommands.cpp:651
+#, c-format
+msgid "Apply %s with parameter(s)\n"
+"\n"
+"%s"
+msgstr ""
-#: ../src/prefs/SpectrumPrefs.cpp:40
-msgid "256 - default"
-msgstr "256 - predeterminado"
+#: BatchCommands.cpp:652 BatchCommands.cpp:657
+msgid "Test Mode"
+msgstr ""
-#: ../src/prefs/SpectrumPrefs.cpp:44
-msgid "4096 - most narrowband"
-msgstr "4096 - banda máis estreita"
+#: BatchCommands.cpp:656
+#, c-format
+msgid "Apply %s"
+msgstr ""
-#: ../src/prefs/SpectrumPrefs.cpp:38
-msgid "64 - most wideband"
-msgstr "64 banda máis ancha"
+#: BatchProcessDialog.cpp:60 BatchProcessDialog.cpp:70
+#: BatchProcessDialog.cpp:71
+msgid "Apply Chain"
+msgstr ""
-#: ../src/AboutDialog.cpp:141
-msgid "A Free Digital Audio Editor"
-msgstr "Un Editor de audio dixital de balde"
+#: BatchProcessDialog.cpp:67
+msgid "CleanSpeech Batch Processing"
+msgstr ""
-#: ../src/AboutDialog.cpp:46
-msgid "About Audacity..."
-msgstr "Sobre Audacity..."
+#: BatchProcessDialog.cpp:94
+msgid "&Select chain"
+msgstr ""
-#: ../src/HistoryWindow.cpp:57
-msgid "Action"
-msgstr "Acción"
+#: BatchProcessDialog.cpp:99
+msgid "Chain"
+msgstr ""
-#: ../src/Menus.cpp:432
-msgid "Add Label At Playback Position\tCtrl+M"
-msgstr "Agregar etiqueta en punto de reproducción\tCtrl+B"
+#: BatchProcessDialog.cpp:106
+msgid "Apply to Current &Project"
+msgstr ""
-#: ../src/Menus.cpp:431
-msgid "Add Label At Selection\tCtrl+B"
-msgstr "Agregar etiqueta en selección\tCtrl+B"
+#: BatchProcessDialog.cpp:107
+msgid "Apply to &Files..."
+msgstr ""
-#: ../src/Menus.cpp:3088
-msgid "Added label"
-msgstr "Etiqueta agregada"
+#: BatchProcessDialog.cpp:108 BatchProcessDialog.cpp:247 UploadDialog.cpp:180
+#: effects/AvcCompressor.cpp:732 effects/ChangeLength.cpp:183
+#: effects/SpikeCleaner.cpp:188 effects/audiounits/AudioUnitEffect.cpp:861
+msgid "&Cancel"
+msgstr ""
-#: ../src/TrackPanel.cpp:1904
-msgid "Adjusted envelope."
-msgstr "Envolvente axustada."
+#: BatchProcessDialog.cpp:146 BatchProcessDialog.cpp:191
+msgid "No chain selected"
+msgstr ""
-#: ../src/effects/AvcCompressor.cpp:581
-msgid "Adjustment Delay:"
-msgstr "Retraso de axuste:"
+#: BatchProcessDialog.cpp:159
+#, c-format
+msgid "Applying '%s' to current project"
+msgstr ""
-#: ../src/effects/AvcCompressor.cpp:564
-msgid "Adjustment Settings"
-msgstr "Configuración de axuste"
+#: BatchProcessDialog.cpp:200
+msgid "Please save and close the current project first."
+msgstr ""
-#: ../src/effects/AvcCompressor.cpp:569
-msgid "Adjustment Window:"
-msgstr "Fiestra de axuste:"
+#: BatchProcessDialog.cpp:206
+msgid "Select vocal file(s) for batch CleanSpeech Chain..."
+msgstr ""
-#: ../src/Tags.cpp:455
-msgid "Album"
-msgstr "Ãlbum"
+#: BatchProcessDialog.cpp:207
+msgid "Select file(s) for batch processing..."
+msgstr ""
-#: ../src/Tags.cpp:641
-msgid "Album:"
-msgstr "Ãlbum:"
+#: BatchProcessDialog.cpp:209
+msgid "Vocal files (*.wav;*.mp3)|*.wav;*.mp3|WAV files (*.wav)|*.wav|MP3 files (*.mp3)|*.mp3"
+msgstr ""
-#: ../src/Menus.cpp:2953
-msgid "Align"
-msgstr "Aliñar"
+#: BatchProcessDialog.cpp:210
+msgid "All files (*.*)|*.*|WAV files (*.wav)|*.wav|AIFF files (*.aif)|*.aif|AU files (*.au)|*.au|MP3 files (*.mp3)|*.mp3|Ogg Vorbis files (*.ogg)|*.ogg|FLAC files (*.flac)|*.flac"
+msgstr ""
-#: ../src/Menus.cpp:409
-msgid "Align End with Cursor"
-msgstr "Aliñar final con cursor"
+#: BatchProcessDialog.cpp:231
+msgid "Applying..."
+msgstr ""
-#: ../src/Menus.cpp:411
-msgid "Align End with Selection End"
-msgstr "Aliñar final con final de selección"
+#: BatchProcessDialog.cpp:241
+msgid "File"
+msgstr ""
-#: ../src/Menus.cpp:410
-msgid "Align End with Selection Start"
-msgstr "Aliñar final con comenzo de selección"
+#: BatchProcessDialog.cpp:356 BatchProcessDialog.cpp:360
+#: BatchProcessDialog.cpp:361
+msgid "Edit Chains"
+msgstr ""
-#: ../src/Menus.cpp:412
-msgid "Align Tracks Together"
-msgstr "Aliñar pistas conxuntamente"
+#: BatchProcessDialog.cpp:416
+msgid "&Chains"
+msgstr ""
-#: ../src/Menus.cpp:414
-msgid "Align Tracks..."
-msgstr "Aliñar pistas..."
+#: BatchProcessDialog.cpp:435 Tags.cpp:825
+msgid "&Add"
+msgstr ""
-#: ../src/Menus.cpp:423
-msgid "Align and move cursor..."
-msgstr "Aliñar e mover cursor..."
+#: BatchProcessDialog.cpp:436 LabelDialog.cpp:128 Tags.cpp:826
+#: TrackPanel.cpp:4271
+msgid "&Remove"
+msgstr ""
-#: ../src/Menus.cpp:406
-msgid "Align with &Cursor"
-msgstr "Aliñar con &cursor"
+#: BatchProcessDialog.cpp:437
+msgid "Re&name"
+msgstr ""
-#: ../src/Menus.cpp:405
-msgid "Align with &Zero"
-msgstr "Aliñar en &cero"
+#: BatchProcessDialog.cpp:443
+msgid "C&hain (Double-Click or press SPACE to edit)"
+msgstr ""
-#: ../src/Menus.cpp:408
-msgid "Align with Selection &End"
-msgstr "Aliñar con final de s&elección"
+#. i18n-hint: This is the number of the command in the list
+#: BatchProcessDialog.cpp:453
+msgid "Num"
+msgstr ""
-#: ../src/Menus.cpp:407
-msgid "Align with Selection &Start"
-msgstr "Aliñar con comenzo de &selección"
+#: BatchProcessDialog.cpp:459
+msgid "&Insert"
+msgstr ""
-#: ../src/Menus.cpp:2920
-msgid "Aligned"
-msgstr "Aliñado"
+#: BatchProcessDialog.cpp:460
+msgid "De&lete"
+msgstr ""
-#: ../src/Menus.cpp:2896
-msgid "Aligned cursor"
-msgstr "Cursor aliñado"
+#: BatchProcessDialog.cpp:461
+msgid "Move &Up"
+msgstr ""
-#: ../src/Menus.cpp:2908
-msgid "Aligned end with cursor"
-msgstr "Aliñados final con cursor"
+#: BatchProcessDialog.cpp:462
+msgid "Move &Down"
+msgstr ""
-#: ../src/Menus.cpp:2916
-msgid "Aligned end with selection end"
-msgstr "Aliñados final con final de selección"
+#: BatchProcessDialog.cpp:463
+msgid "De&faults"
+msgstr ""
-#: ../src/Menus.cpp:2912
-msgid "Aligned end with selection start"
-msgstr "Aliñados final con comenzo de selección"
+#: BatchProcessDialog.cpp:507
+msgid "- END -"
+msgstr ""
-#: ../src/Menus.cpp:2904
-msgid "Aligned with selection end"
-msgstr "Aliñado con final de selección"
+#: BatchProcessDialog.cpp:540
+#, c-format
+msgid "%s changed"
+msgstr ""
-#: ../src/Menus.cpp:2900
-msgid "Aligned with selection start"
-msgstr "Aliñado con comenzo de selección"
+#: BatchProcessDialog.cpp:541
+msgid "Do you want to save the changes?"
+msgstr ""
-#: ../src/Menus.cpp:2892
-msgid "Aligned with zero"
-msgstr "Aliñado en cero"
+#: BatchProcessDialog.cpp:623
+msgid "Enter name of new chain"
+msgstr ""
-#: ../src/Menus.cpp:2713
-msgid "All files (*)|*"
-msgstr "Tódolos arquivos (*)|*"
+#: BatchProcessDialog.cpp:634
+msgid "Name must not be blank"
+msgstr ""
-#: ../src/Project.cpp:1740
-msgid ""
-"All files (*.*)|*.*|Audacity projects (*.aup)|*.aup|WAV files (*.wav)|*.wav|"
-"AIFF files (*.aif)|*.aif|AU files (*.au)|*.au|MP3 files (*.mp3)|*.mp3|Ogg "
-"Vorbis files (*.ogg)|*.ogg|List of Files (*.lof)|*.lof"
+#: BatchProcessDialog.cpp:643
+#, c-format
+msgid "Names may not contain '%c' and '%c'"
msgstr ""
-"Todos los archivos (*.*)|*.*|Proxectos Audacity (*.aup)|*.aup|Arquivos WAV "
-"(*.wav)|*.wav|Arquivos AIFF (*.aif)|*.aif|Arquivos AU (*.au)|*.au|Arquivos "
-"MP3 (*.mp3)|*.mp3|Arquivos Ogg Vorbis (*.ogg)|*.ogg|Lista de Arquivos (*."
-"lof)|*.lof"
-#: ../src/Menus.cpp:2676
-msgid "All files (*.*)|*.*|MIDI files (*.mid)|*.mid|Allegro files (*.gro)|*.gro"
+#: BatchProcessDialog.cpp:673
+#, c-format
+msgid "Are you sure you want to delete %s?"
msgstr ""
-"Tódolos arquivos (*.*)|*.*|Arquivos MIDI (*.mid)|*.mid|Arquivos Allegro (*."
-"gro)|*.gro"
-#: ../src/Menus.cpp:2597
-msgid ""
-"All files (*.*)|*.*|WAV files (*.wav)|*.wav|AIFF files (*.aif)|*.aif|AU "
-"files (*.au)|*.au|MP3 files (*.mp3)|*.mp3|Ogg Vorbis files (*.ogg)|*.ogg|"
-"List of Files (*.lof)|*.lof"
+#: Dependencies.cpp:139
+msgid "Removing Dependencies"
msgstr ""
-"Tódolos arquivos (*.*)|*.*|Arquivos WAV (*.wav)|*.wav|Arquivos AIFF (*."
-"aif)|*.aif|Arquivos AU (*.au)|*.au|Arquivos MP3 (*.mp3)|*.mp3|Arquivos Ogg "
-"Vorbis (*.ogg)|*.ogg|Lista de Arquivos (*.lof)|*.lof"
-#: ../src/effects/Amplify.cpp:164
-msgid "Allow clipping"
-msgstr "Permitir clipping"
+#: Dependencies.cpp:140
+msgid "Copying audio data into project..."
+msgstr ""
-#: ../src/prefs/MousePrefs.cpp:101
-msgid "Alt-Left-Click"
-msgstr "Alt-Frecha-Esquerda"
+#: Dependencies.cpp:226
+msgid "Your project currently depends on the presence of other files.\n"
+"Copy audio from the following files into your project to make it self-contained?\n"
+"This will need more disc space but is safer."
+msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:71
-msgid "Always allow pausing"
-msgstr "Sempre permitir pausa"
+#: Dependencies.cpp:273
+msgid "Project depends on other audio files"
+msgstr ""
-#: ../src/import/ImportRaw.cpp:359
-msgid "Amount to import:"
-msgstr "Cantidade a importar:"
+#: Dependencies.cpp:294
+msgid "Project Dependencies"
+msgstr ""
-#: ../src/effects/Amplify.cpp:132
-msgid "Amplification (dB):"
-msgstr "Amplificación (dB):"
+#: Dependencies.cpp:297
+msgid "Audio file"
+msgstr ""
-#: ../src/effects/AvcCompressor.cpp:645
-msgid "Amplification Settings"
-msgstr "Configuración de amplificación"
+#: Dependencies.cpp:299
+msgid "Disk space"
+msgstr ""
-#: ../src/effects/Amplify.cpp:63
-msgid "Amplify"
-msgstr "Amplificar"
+#: Dependencies.cpp:304
+msgid "Copy Selected Audio Into Project"
+msgstr ""
-#: ../src/effects/Amplify.cpp:125
-msgid "Amplify by Dominic Mazzoni"
-msgstr "Amplificar por Dominic Mazzoni"
+#: Dependencies.cpp:311 Dependencies.cpp:417
+msgid "Cancel Save"
+msgstr ""
-#: ../src/effects/Amplify.h:47
-msgid "Amplify..."
-msgstr "Amplificar..."
+#: Dependencies.cpp:313
+msgid "Do Not Copy Any Audio"
+msgstr ""
-#: ../src/effects/Amplify.h:51
-msgid "Amplifying"
-msgstr "Amplificando"
+#: Dependencies.cpp:315
+msgid "Copy All Audio into Project (Safer)"
+msgstr ""
-#: ../src/effects/ToneGen.cpp:293
-msgid "Amplitude (0-1)"
-msgstr "Amplitude (0-1)"
+#: Dependencies.cpp:324 Dependencies.cpp:329
+msgid "Ask me"
+msgstr ""
-#: ../src/Project.cpp:1893
-msgid ""
-"An error occurred while opening the project file.\n"
-"Some audio may not have been retrieved."
+#: Dependencies.cpp:325
+msgid "Always copy all audio (safest)"
msgstr ""
-"Produciuse un erro mentras se abrÃa o proxecto.\n"
-"Parte do audio puido non obterse."
-#: ../src/prefs/MousePrefs.cpp:110 ../src/prefs/MousePrefs.cpp:111
-msgid "Any"
-msgstr "Calquera"
+#: Dependencies.cpp:326
+msgid "Never copy any audio"
+msgstr ""
-#: ../src/effects/Effect.h:84
+#: Dependencies.cpp:328
+msgid "Whenever a project depends on other files:"
+msgstr ""
+
+#: Dependencies.cpp:416
+msgid "If you proceed, your project will not be saved to disk. Is this what you want?"
+msgstr ""
+
+#: Dependencies.cpp:456
+msgid "Your project is self-contained; it does not depend on any external audio files."
+msgstr ""
+
+#: Dependencies.cpp:457
+msgid "Dependency check"
+msgstr ""
+
+#: DirManager.cpp:136
+#, fuzzy
+msgid "Warning: there is very little free disk space left on this volume.\n"
+"Please select another temporary directory in your preferences."
+msgstr "Advertencia: hai moi pouco espacio dispoñible neste disco. Por favor selecciona outro directorio temporal nas túas preferencias."
+
+#: ../src/DirManager.cpp:157
+msgid "Progress"
+msgstr "Progreso"
+
+#: DirManager.cpp:286
+msgid "Cleaning up temporary files"
+msgstr ""
+
+#: DirManager.cpp:336
+msgid "Saving project data files"
+msgstr ""
+
+#: DirManager.cpp:408
+msgid "Cleaning up cache directories"
+msgstr ""
+
+#: DirManager.cpp:503
#, c-format
-msgid "Applied effect: %s"
-msgstr "Efecto aplicado: %s"
+msgid "Audacity found an orphaned blockfile %s! \n"
+"Please consider saving and reloading the project to perform a complete project check.\n"
+msgstr ""
-#: ../src/effects/Amplify.cpp:34
+#. i18n-hint: This is the pattern for filenames that are created
+#. when a file needs to be backed up to a different name. For
+#. example, mysong would become mysong-old1, mysong-old2, etc.
+#: ../src/DirManager.cpp:627
#, c-format
-msgid "Applied effect: %s %.1f dB"
-msgstr "Aplicado o efecto: %s %.1f dB"
+msgid "%s-old%d"
+msgstr "%s-antigo%d"
-#: ../src/effects/ChangeSpeed.cpp:40 ../src/effects/ChangeTempo.cpp:43
+#: DirManager.cpp:1100
+msgid "Unable to open/create test file"
+msgstr ""
+
+#: DirManager.cpp:1109
#, c-format
-msgid "Applied effect: %s %.1f%%"
-msgstr "Efecto aplicado: %s %.1f%%"
+msgid "Unable to remove '%s'"
+msgstr ""
-#: ../src/effects/ChangePitch.cpp:56
+#: ../src/DirManager.cpp:643
#, c-format
-msgid "Applied effect: %s %.2f semitones"
-msgstr "Efecto aplicado: %s %.2f semitonos"
+msgid "Renamed file: %s\n"
+msgstr "Arquivo renomeado: %s\n"
-#: ../src/effects/Phaser.cpp:47
+#: DirManager.cpp:1164
#, c-format
-msgid ""
-"Applied effect: %s %d stages, %.0f%% wet, frequency = %.1f Hz, start phase = "
-"%.0f deg, depth = %d, feedback = %.0f%%"
+msgid "Unable to rename '%s' to '%s'"
msgstr ""
-"Efecto aplicado: %s %d etapas, %.0f%% wet frecuencia = %.1f Hz, fase inicial "
-"= %.0f grad, profundidade = %d, retroalimentación = %.0f%%"
-#: ../src/effects/Echo.cpp:33
+#: DirManager.cpp:1181
#, c-format
-msgid "Applied effect: %s delay = %f seconds, decay factor = %f"
-msgstr "Efecto aplicado: %s retraso = %f segundos, factor de decaemento = %f"
+msgid "Changed block %s to new alias name\n"
+msgstr ""
-#: ../src/effects/BassBoost.cpp:36
-#, c-format
-msgid "Applied effect: %s frequency = %.0f Hz, boost = %.0f dB"
-msgstr "Efecto aplicado: frecuencia %s = %.0f Hz, realce = %.0f dB"
+#: DirManager.cpp:1247 DirManager.cpp:1538
+msgid "Inspecting project file data..."
+msgstr ""
-#: ../src/effects/Wahwah.cpp:41
+#: DirManager.cpp:1263
#, c-format
-msgid ""
-"Applied effect: %s frequency = %.1f Hz, start phase = %.0f deg, depth = %.0f%"
-"%, resonance = %.1f, frequency offset = %.0f%%"
+msgid "Orphaned blockfile: (%s)"
msgstr ""
-"Efecto aplicado: frecuencia %s = %.1f Hz, fase inicial = %.0f grad, "
-"profundidade= %.0f%%, resonancia = %.1f, frecuencia inicial = %.0f%%"
-#: ../src/effects/ToneGen.cpp:33
+#: DirManager.cpp:1288
#, c-format
-msgid ""
-"Applied effect: Generate %s %s wave, frequency = %.2f Hz, amplitude = %.2f, "
-"%.6lf seconds"
+msgid "Missing alias file: (%s)"
msgstr ""
-"Efecto aplicado: Xerar %s %s onda, frecuencia = %.2f Hz, amplitude = %.2f, "
-"%.6lf segundos"
-#: ../src/effects/Silence.h:42
+#: DirManager.cpp:1308
#, c-format
-msgid "Applied effect: Generate Silence, %.6lf seconds"
-msgstr "Efecto aplicado: Xerar Silencio, %.6lf segundos"
+msgid "Missing summary file: (%s.auf)"
+msgstr ""
-#: ../src/effects/Noise.h:31
+#: DirManager.cpp:1328
#, c-format
-msgid "Applied effect: Generate White Noise, %.6lf seconds"
-msgstr "Efecto aplicado: Xerar ruido branco, %.6lf segundos"
+msgid "Missing data file: (%s.au)"
+msgstr ""
-#: ../src/effects/Compressor.cpp:464
-msgid "Apply Normalization (to 0dB) after compressing"
-msgstr "Aplicar normalización (a 0 dB) despois de comprimir"
+#: DirManager.cpp:1342
+msgid "Project check found inconsistencies inspecting the loaded project data;\n"
+"click 'Details' for a complete list of errors, or 'OK' to proceed to more options."
+msgstr ""
-#: ../src/effects/Compressor.h:40
-msgid "Applying Dynamic Range Compression..."
-msgstr "Aplicando compresión de rango dinámico..."
+#: DirManager.cpp:1354
+#, c-format
+msgid "Project check found %d orphaned blockfile[s]. These files are\n"
+"unused and probably left over from a crash or some other bug.\n"
+"They should be deleted to avoid disk contention."
+msgstr ""
-#: ../src/effects/nyquist/Nyquist.cpp:217
-msgid "Applying Nyquist Effect..."
-msgstr "Aplicando Efecto Nyquist..."
+#: DirManager.cpp:1359
+msgid "Delete orphaned files [safe and recommended]"
+msgstr ""
-#: ../src/effects/Phaser.h:45
-msgid "Applying Phaser"
-msgstr "Aplicando Fase"
+#: DirManager.cpp:1360
+msgid "Continue without deleting; silently work around the extra files"
+msgstr ""
-#: ../src/effects/Wahwah.h:43
-msgid "Applying Wahwah"
-msgstr "Aplicando Wahwah"
+#: DirManager.cpp:1361
+msgid "Close project immediately with no changes"
+msgstr ""
-#: ../src/export/Export.cpp:202
-msgid "Are you sure you want to save the file as \""
-msgstr "¿Está seguro de que quere gardar o arquivo como \""
+#: ../src/widgets/Warning.cpp:45
+msgid "Warning"
+msgstr "Advertencia"
-#: ../src/Tags.cpp:445
-msgid "Artist"
-msgstr "Artista"
+#: DirManager.cpp:1389
+#, c-format
+msgid "Project check detected %d input file[s] being used in place\n"
+"('alias files') are now missing. There is no way for Audacity\n"
+"to recover these files automatically; you may choose to\n"
+"permanently fill in silence for the missing files, temporarily\n"
+"fill in silence for this session only, or close the project now\n"
+"and try to restore the missing files by hand."
+msgstr ""
-#: ../src/Tags.cpp:631
-msgid "Artist:"
-msgstr "Artista:"
+#: DirManager.cpp:1394
+msgid "Replace missing data with silence [permanent upon save]"
+msgstr ""
-#: ../src/effects/Compressor.cpp:453
-msgid "Attack Time: "
-msgstr "Tempo de ataque: "
+#: DirManager.cpp:1395 DirManager.cpp:1483
+msgid "Temporarily replace missing data with silence [this session only]"
+msgstr ""
+
+#: DirManager.cpp:1396 DirManager.cpp:1442 DirManager.cpp:1484
+msgid "Close project immediately with no further changes"
+msgstr ""
-#: ../src/effects/Compressor.cpp:527
+#: DirManager.cpp:1435
#, c-format
-msgid "Attack Time: %.1f secs"
-msgstr "Tempo de ataque: %.1f segs"
+msgid "Project check detected %d missing summary file[s] (.auf).\n"
+"Audacity can fully regenerate these summary files from the\n"
+"original audio data in the project."
+msgstr ""
-#: ../src/AboutDialog.cpp:271
-msgid "Audacious!"
-msgstr "Audaz!"
+#: DirManager.cpp:1440
+msgid "Regenerate summary files [safe and recommended]"
+msgstr ""
-#: ../src/ControlToolBar.cpp:141
-msgid "Audacity Control Toolbar"
-msgstr "Barra de Ferramentas de control"
+#: DirManager.cpp:1441
+msgid "Fill in silence for missing display data [this session only]"
+msgstr ""
-#: ../src/EditToolBar.cpp:80
-msgid "Audacity Edit Toolbar"
-msgstr "Barra de Ferramentas de edición de Audacity"
+#: DirManager.cpp:1477
+#, c-format
+msgid "Project check detected %d missing audio data blockfile[s] (.au), \n"
+"probably due to a bug, system crash or accidental deletion.\n"
+"There is no way for Audacity to recover this lost data\n"
+"automatically; you may choose to permanently fill in silence\n"
+"for the missing data, temporarily fill in silence for this\n"
+"session only, or close the project now and try to restore the\n"
+"missing data by hand."
+msgstr ""
-#: ../src/LangChoice.cpp:47
-msgid "Audacity First Run"
-msgstr "Primeira execución de Audacity"
+#: DirManager.cpp:1482
+msgid "Replace missing data with silence [permanent immediately]"
+msgstr ""
-#: ../src/MeterToolBar.cpp:55
-msgid "Audacity Meter Toolbar"
-msgstr "Barra de medición de Audacity"
+#: DirManager.cpp:1510
+msgid "Cleaning up unused directories in project data..."
+msgstr ""
-#: ../src/MixerToolBar.cpp:101
-msgid "Audacity Mixer Toolbar"
-msgstr "Barra de mesturas de Audacity"
+#: DirManager.cpp:1587
+msgid "Caching audio"
+msgstr ""
-#: ../src/prefs/PrefsDialog.cpp:52
-msgid "Audacity Preferences"
-msgstr "Preferencias de Audacity"
+#: DirManager.cpp:1588
+msgid "Caching audio into memory..."
+msgstr ""
-#: ../src/AudacityApp.cpp:1100
-msgid "Audacity Project Files"
-msgstr "Arquivos de proxecto de Audacity"
+#: DirManager.cpp:1623
+msgid "Saving recorded audio"
+msgstr ""
-#: ../src/AudacityApp.cpp:773
-msgid ""
-"Audacity could not find a place to store temporary files.\n"
-"Please enter an appropriate directory in the preferences dialog."
+#: DirManager.cpp:1624
+msgid "Saving recorded audio to disk..."
msgstr ""
-"Audacity non puido atopar un lugar onde almacenar os arquivos "
-"temporais.\n"
-"Indique un directorio apropiado no diálogo de preferencias."
-#: ../src/import/Import.cpp:170
-msgid ""
-"Audacity did not recognize the type of this file.\n"
-"If it is uncompressed, try importing it using \"Import Raw\""
-msgstr ""
-"Audacity non recoñeceu o tipo de este arquivo.\n"
-"Se está descomprimido, intente importalo usando \"Importar Arquivo en bruto"
-"\""
-
-#. i18n-hint: This message is used on Mac OS X. This particular
-#. message must be <= 255 characters. Be brief.
-#. i18n-hint: This message is used on Mac OS 9. This particular
-#. message must be <= 255 characters. Be brief.
-#: ../src/export/ExportMP3.cpp:560 ../src/export/ExportMP3.cpp:874
-msgid ""
-"Audacity does not export MP3 files directly, but instead uses LAME, an MP3 "
-"exporting library available separately. See the documentation for more "
-"information.\n"
-"\n"
-"Would you like to locate LameLib now?"
+#: ../src/FFT.cpp:364
+msgid "Rectangular"
+msgstr "Rectangular"
+
+#: FFmpeg.cpp:38
+msgid "FFmpeg support not compiled in"
msgstr ""
-"Audacity non exporta arquivos MP3 en forma directa, senón que usa LAME, unha "
-"librerÃa para exportación de MP3 dispoñible por separado. Consulte a "
-"documentación para máis información.\n"
-"\n"
-"¿Quere localizar LameLib agora?"
-#. i18n-hint: This message is used on Windows.
-#: ../src/export/ExportMP3.cpp:1122
-msgid ""
-"Audacity does not export MP3 files directly, but instead uses the\n"
-"freely available LAME library to handle MP3 file encoding. You must\n"
-"obtain lame_enc.dll separately, by downloading the LAME MP3 encoder,and then "
-"locate this file for Audacity. You only need to do this once.\n"
+#: FFmpeg.cpp:103
+msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
+"but this time Audacity failed to load it at startup. \n"
"\n"
-"Would you like to locate lame_enc.dll now?"
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
-"Audacity non exporta arquivos MP3 en forma directa, pero usa LAME\n"
-"unha librerÃa dispoñible libremente para manexar a codificación de arquivos "
-"MP3.\n"
-"Debes adquirir lame_enc.dll por separado, baixando o codificador LAME MP3, e "
-"logo localiza este arquivo con Audacity. Só precisas facelo unha soa vez.\n"
-"\n"
-"¿Quere localizar lame_enc.dll agora?"
-#. i18n-hint: This message is used on Unix/Linux
-#: ../src/export/ExportMP3.cpp:261
-msgid ""
-"Audacity does not export MP3 files directly, but instead uses the \n"
-"freely available LAME library to handle MP3 file encoding. You must \n"
-"obtain libmp3lame.so separately, either by downloading it or building \n"
-"it from the sources, and then locate the file for Audacity. You only \n"
-"need to do this once.\n"
-"\n"
-"Would you like to locate libmp3lame.so now?"
+#: FFmpeg.cpp:106
+msgid "FFmpeg startup failed"
msgstr ""
-"Audacity non exporta arquivos MP3 en forma directa, pero usa LAME\n"
-"unha librerÃa libre para manexar a codificación de arquivos MP3. Debes\n"
-"adquirir libmp3lame.so por separado, baixándoo ou\n"
-"construÃndoo dende o seu cçodigo fonte, e logo localiza este arquivo\n"
-"para Audacity. Só precisas facelo unha soa vez.\n"
-"\n"
-"¿Quere localizar libmp3lame.so agora?"
-#: ../src/DirManager.cpp:127
-msgid ""
-"Audacity found temporary files that were not deleted or saved\n"
-"the last time you used Audacity.\n"
-"\n"
-"Audacity can't recover them automatically, but if you choose not\n"
-"to delete them, you can recover them manually.\n"
-"\n"
-"Delete temporary files?"
+#: FFmpeg.cpp:114
+msgid "FFmpeg library not found"
msgstr ""
-"Audacity atopou arquivos temporais que non foron eliminados ou "
-"gardados a última vez que utilizou o programa.\n"
-"\n"
-"Audacity pode recuperalos automáticamente pero se decide non eliminalos "
-"pode recuperalos manualmente.\n"
-"\n"
-"¿Eliminar arquivos temporais?"
-#: ../src/AboutDialog.cpp:99
-msgid ""
-"Audacity is a free program written by a team of volunteer developers around "
-"the world. Coordination happens thanks to SourceForge.net, an online "
-"service that provides free tools to open-source software projects. Audacity "
-"is available for Windows 98 and newer, Mac OS X, Linux, and other Unix-like "
-"operating systems. Older versions of Audacity are available for Mac OS 9."
-msgstr ""
-"Audacity é un programa gratuito realizado por un grupo de desenroladores "
-"voluntarios arredor do mundo. A coordinación é posible grazas a "
-"SourceForge.net, un servicio online que provee ferramentas gratuitas a "
-"proxectos de software de código-aberto. Audacity está dispoñible para "
-"Windows 98 ou posterior, Mac OS X, Linux, e outros sistemas operativos "
-"parecidos a Unix. Versións anteriores de Audacity están dispoñibles para "
-"Mac OS 9."
+#: FFmpeg.cpp:408
+msgid "Locate FFmpeg"
+msgstr ""
-#: ../src/AudacityApp.cpp:846
-msgid "Audacity is already running"
-msgstr "Audacity xa se está executando"
+#: FFmpeg.cpp:428
+#, c-format
+msgid "Audacity needs the file %s to import and export audio via FFmpeg."
+msgstr ""
-#: ../src/AudacityApp.cpp:782
-msgid ""
-"Audacity is now going to exit. Please launch Audacity again to use the new "
-"temporary directory."
+#: FFmpeg.cpp:434 export/ExportMP3.cpp:562
+#, c-format
+msgid "Location of %s:"
msgstr ""
-"Audacity vaise pechar. Por favor execute Audacity novamente para usar o "
-"novo directorio temporal."
-#: ../src/AudacityApp.cpp:1099
-msgid ""
-"Audacity project (.AUP) files are not currently \n"
-"associated with Audacity. \n"
-"\n"
-"Associate them, so they open on double-click?"
+#: FFmpeg.cpp:443 export/ExportMP3.cpp:571
+#, c-format
+msgid "To find %s, click here -->"
msgstr ""
-"Os arquivos de proxecto de Audacity (AUP) non están \n"
-"asociados a Audacity.\n"
-"\n"
-"ÿQuere asocialos para que se poidan abrir directamente?"
-#: ../src/Project.cpp:2368
-msgid ""
-"Audacity project files (.aup) let you save everything you're working on "
-"exactly as it\n"
-"appears on the screen, but most other programs can't open Audacity project "
-"files.\n"
-"\n"
-"When you want to save a file that can be opened by other programs, select "
-"one of the\n"
-"Export commands."
+#: FFmpeg.cpp:449 export/ExportMP3.cpp:577
+msgid "Browse..."
msgstr ""
-"Os arquivos de proxecto de Audacity (.aup) permÃtenlle gardar todo o \n"
-"traballo exactamente como aparece en pantalla, pero a maiorÃa dos\n"
-"programas non poden abrir arquivos de proxecto de Audacity.\n"
-"Cando queira gardar un arquivo que poida ser aberto por outros programas,\n"
-"seleccione un dos comandos de Exportación."
-#: ../src/Project.cpp:2378
-msgid "Audacity projects (*.aup)|*.aup"
-msgstr "Proyectos Audacity (*.aup)|*.aup"
+#: FFmpeg.cpp:450
+msgid "To get a free copy of FFmpeg, click here -->"
+msgstr ""
-#: ../src/export/ExportMP3.cpp:137
+#: FFmpeg.cpp:451 export/ExportMP3.cpp:579
+msgid "Download"
+msgstr ""
+
+#. i18n-hint: It's asking for the location of a file, for
+#. example, "Where is lame_enc.dll?" - you could translate
+#. "Where would I find the file %s" instead if you want.
+#: ../src/export/ExportMP3.cpp:113
#, c-format
-msgid ""
-"Audacity was expecting a library named \"%s\". Are you sure you want to "
-"attempt to export MP3 files using \"%s\"?"
+msgid "Where is %s?"
+msgstr "Onde está %s?"
+
+#: FFmpeg.cpp:643
+msgid "Failed to find compatible FFmpeg libraries"
msgstr ""
-"Audacity esperaba unha librerÃa chamada \"%s\". ¿Está seguro de que quere "
-"intentar exportar arquivos MP3 usando \"%s\"?"
-#: ../src/AudacityApp.cpp:823
-msgid ""
-"Audacity was not able to lock the temporary files directory.\n"
-"This folder may be in use by another copy of Audacity.\n"
-"Running two copies of Audacity simultaneously may cause\n"
-"data loss or cause your system to crash.\n"
-"\n"
-"Do you still want to start Audacity?"
+#: FFmpeg.h:97
+msgid "FFmpeg not found"
msgstr ""
-"Audacity non puido bloquear o directorio de arquivos temporais.\n"
-"Este cartafol pode estar sendo utilizado por outra copia de Audacity.\n"
-"Executar dúas copias simultaneas de Audacity pode provocar perda \n"
-"de datos ou bloquear o sistema.\n"
+
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
"\n"
-"¿AÃnda quere executar Audacity?"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
+msgstr ""
-#: ../src/Project.cpp:1842
-msgid ""
-"Audacity was unable to convert an Audacity 1.0 project to the new project "
-"format."
+#: FFmpeg.h:119
+msgid "Do not show this warning again"
msgstr ""
-"Audacity non puido convertir un proxecto de Audacity 1.0 ao novo formato de "
-"proxecto."
-#: ../src/prefs/PrefsDialog.cpp:84
-msgid "Audio I/O"
-msgstr "Audio E/S"
+#: FFmpeg.h:264
+msgid "Only avformat.dll|*avformat*.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
+msgstr ""
-#: ../src/WaveTrack.cpp:128
-msgid "Audio Track"
-msgstr "Pista de audio"
+#: FFmpeg.h:297
+msgid "Dynamic Libraries (*.dylib)|*.dylib|All Files (*)|*"
+msgstr ""
-#: ../src/effects/ladspa/LadspaEffect.cpp:437
-msgid "Author: "
-msgstr "Autor: "
+#: FFmpeg.h:324
+msgid "Only libavformat.so|libavformat.so*|Dynamically Linked Libraries (*.so*)|*.so*|All Files (*)|*"
+msgstr ""
-#: ../src/effects/AvcCompressor.cpp:122
-msgid "Automatic Volume Control"
-msgstr "Control automático de volume"
+#: ../src/FreqWindow.cpp:68
+msgid "Frequency Analysis"
+msgstr "Análise de frecuencia"
-#: ../src/effects/AvcCompressor.cpp:551
-msgid "Automatic Volume Control by Vincent A. Busam"
-msgstr "Control automático de volume por Vincent A. Busam"
+#: ../src/FreqWindow.cpp:129 ../src/TrackPanel.cpp:837
+msgid "Spectrum"
+msgstr "Espectro"
-#: ../src/effects/AvcCompressor.h:66
-msgid "Automatic Volume Control..."
-msgstr "Control automático de volume..."
+#: ../src/FreqWindow.cpp:130
+msgid "Standard Autocorrelation"
+msgstr "Autocorrelación estándard"
-#: ../src/prefs/GUIPrefs.cpp:66
-msgid "Autoscroll while playing"
-msgstr "Autoscroll mentras se reproduce"
+#: ../src/FreqWindow.cpp:131
+msgid "Cuberoot Autocorrelation"
+msgstr "Autocorrelación de raiz cúbica"
-#: ../src/effects/BassBoost.cpp:69
-msgid "Bass Boost"
-msgstr "BassBoost (Realzar graves)"
+#: ../src/FreqWindow.cpp:132
+msgid "Enhanced Autocorrelation"
+msgstr "Autocorrelación mellorada"
-#: ../src/effects/BassBoost.cpp:279
-msgid "Bass Boost by Nasca Octavian Paul"
-msgstr "BassBoost por Nasca Octavian Paul"
+#. i18n-hint: This is a technical term, derived from the word
+#. "spectrum". Do not translate it unless you are sure you
+#. know the correct technical word in your language.
+#: ../src/FreqWindow.cpp:136
+msgid "Cepstrum"
+msgstr "Cepstrum"
-#: ../src/effects/BassBoost.h:44
-msgid "Bass Boost..."
-msgstr "BassBoost (Realzar graves)..."
+#: FreqWindow.cpp:174 FreqWindow.cpp:178
+msgid "Algorithm"
+msgstr ""
-#: ../src/effects/ChangeTempo.cpp:211
-msgid "Beats per Minute (BPM): from"
-msgstr "Pulsos por Minuto (BMP): dende"
+#: ../src/HistoryWindow.cpp:58
+msgid "Size"
+msgstr "Tamaño"
-#: ../src/Benchmark.cpp:117
-msgid "Benchmark"
-msgstr "Test de rendemento"
+#. i18n-hint: This refers to a "window function", used in the
+#. Frequency analyze dialog box.
+#: ../src/FreqWindow.cpp:167
+msgid " window"
+msgstr " rango"
-#. i18n-hint: Refers to byte-order. Don't translate this if you don't
-#. know the correct technical word.
-#: ../src/import/ImportRaw.cpp:305
-msgid "Big-endian"
-msgstr "Big-endian"
+#: FreqWindow.cpp:211 FreqWindow.cpp:215
+msgid "Function"
+msgstr ""
-#: ../src/prefs/FileFormatPrefs.cpp:197
-msgid "Bit Rate:"
-msgstr "Bit Rate:"
+#: ../src/FreqWindow.cpp:177
+msgid "Linear frequency"
+msgstr "Frecuencia Liñal"
-#: ../src/effects/BassBoost.cpp:302
-msgid "Boost (dB):"
-msgstr "Realzar (dB):"
+#: ../src/FreqWindow.cpp:178
+msgid "Log frequency"
+msgstr "Logaritmo de Frecuencia"
-#: ../src/effects/BassBoost.h:48
-msgid "Boosting Bass Frequencies"
-msgstr "Realzando frecuencias baixas"
+#: FreqWindow.cpp:225 FreqWindow.cpp:229
+msgid "Axis"
+msgstr ""
-#: ../src/prefs/MousePrefs.cpp:86
-msgid "Buttons"
-msgstr "Botóns"
+#: FreqWindow.cpp:236 LabelDialog.cpp:130 Menus.cpp:255
+msgid "&Export..."
+msgstr ""
-#: ../src/Menus.cpp:639
-msgid "Can't Redo"
-msgstr "Non se pode refacer"
+#: ../src/export/ExportMP3.cpp:1427 ../src/export/ExportMultiple.cpp:699
+#: ../src/export/ExportOGG.cpp:195 ../src/export/ExportPCM.cpp:136
+msgid "Export"
+msgstr "Exportar"
-#: ../src/Menus.cpp:626
-msgid "Can't Undo"
-msgstr "Non se pode desfacer"
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
-#: ../src/export/ExportMultiple.cpp:493
-msgid "Can't export multiple files"
-msgstr "Non se pode exportar múltiples ficheiros"
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
-#: ../src/Project.cpp:2308 ../src/Project.cpp:2311
-msgid "Can't import project file"
-msgstr "Non se pode importar o arquivo de proxecto"
+#: ../src/Benchmark.cpp:223 ../src/FreqWindow.cpp:123
+#: ../src/effects/NoiseRemoval.cpp:463 ../src/effects/ClickRemoval.cpp:371
+msgid "Close"
+msgstr "Pechar"
-#: ../src/Project.cpp:1991
-msgid "Can't open project file"
-msgstr "Imposible abrir o arquivo de proxecto"
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr ""
-#: ../src/effects/VST/VSTEffect.cpp:196
-msgid "Can't process replacing"
-msgstr "Non se pode procesar o reemprazo"
+#: ../src/widgets/Meter.cpp:293
+msgid "dB"
+msgstr "dB"
-#: ../src/Tags.cpp:716 ../src/effects/VST/VSTEffect.cpp:95
-#: ../src/effects/VST/VSTEffect.cpp:453 ../src/effects/Amplify.cpp:182
-#: ../src/effects/AvcCompressor.cpp:710 ../src/effects/BassBoost.cpp:327
-#: ../src/effects/ChangePitch.cpp:389 ../src/effects/ChangeSpeed.cpp:375
-#: ../src/effects/ChangeTempo.cpp:280 ../src/effects/Compressor.cpp:476
-#: ../src/effects/Echo.cpp:238 ../src/effects/Equalization.cpp:726
-#: ../src/effects/Filter.cpp:479 ../src/effects/Normalize.cpp:255
-#: ../src/effects/Phaser.cpp:571 ../src/effects/Repeat.cpp:248
-#: ../src/effects/Silence.cpp:140 ../src/effects/ToneGen.cpp:320
-#: ../src/effects/Wahwah.cpp:558 ../src/effects/ladspa/LadspaEffect.cpp:495
-#: ../src/effects/nyquist/Nyquist.cpp:730
-#: ../src/effects/nyquist/Nyquist.cpp:877 ../src/export/ExportMultiple.cpp:696
-#: ../src/import/ImportRaw.cpp:405 ../src/prefs/FileFormatPrefs.cpp:466
-#: ../src/prefs/PrefsDialog.cpp:109
-msgid "Cancel"
-msgstr "Cancelar"
+#. i18n-hint: This is the abbreviation for "Hertz", or
+#. cycles per second.
+#: ../src/import/ImportRaw.cpp:378
+msgid "Hz"
+msgstr "Hz"
-#: ../src/export/ExportPCM.cpp:73
-msgid "Cannot export audio in this format."
-msgstr "Non se pode exportar audio neste formato."
+#: ../src/Menus.cpp:2369
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "Para representar o espectro, tódalas pistas seleccionadas deben ter a mesma frecuencia de mostreo."
-#: ../src/export/ExportPCM.cpp:79
+#: ../src/Menus.cpp:2395
#, c-format
-msgid "Cannot export audio to %s"
-msgstr "Non se pode exportar audio a %s"
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "Demasiado audio seleccionado. Só os primeiros %.1f segundos de audio serán analizados."
-#: ../src/effects/PopClick.cpp:63
-msgid "Cannot remove a pop or click at the very beginning of a track."
-msgstr "Non se pode eliminar un \"pop\" ou un \"click\" ao principio da pista."
+#: ../src/FreqWindow.cpp:463
+msgid "Not enough data selected."
+msgstr "Non hai suficiente información seleccionada."
-#: ../src/effects/PopClick.cpp:58
-msgid "Cannot remove a pop or click longer than one second."
-msgstr "Non se pode eliminar un \"pop\"ou un \"click\" maior que un segundo."
+#: FreqWindow.cpp:564 effects/AutoDuck.cpp:808
+msgid "s"
+msgstr ""
-#: ../src/widgets/ASlider.cpp:484
-msgid "Center"
-msgstr "Centro"
+#: FreqWindow.cpp:898
+#, c-format
+msgid "Cursor: %d Hz (%s) = %d dB Peak: %d Hz (%s) = %.1f dB"
+msgstr ""
-#. i18n-hint: This is a technical term, derived from the word
-#. "spectrum". Do not translate it unless you are sure you
-#. know the correct technical word in your language.
-#: ../src/FreqWindow.cpp:136
-msgid "Cepstrum"
-msgstr "Cepstrum"
+#: FreqWindow.cpp:907
+#, c-format
+msgid "Cursor: %.4f sec (%d Hz) (%s) = %f, Peak: %.4f sec (%d Hz) (%s) = %.3f"
+msgstr ""
-#: ../src/prefs/MousePrefs.cpp:98
-msgid "Change Amplification Envelope"
-msgstr "Cambiar a envolvente de amplificación"
+#: ../src/FreqWindow.cpp:996
+msgid "spectrum.txt"
+msgstr "espectro.txt"
-#: ../src/prefs/MousePrefs.cpp:103
-msgid "Change ONE Sample only"
-msgstr "Cambiar UN mostreo somentes"
+#: ../src/FreqWindow.cpp:998
+msgid "Export Spectral Data As:"
+msgstr "Exportar datos do espectro como:"
-#: ../src/effects/ChangePitch.cpp:119
-msgid "Change Pitch"
-msgstr "Cambiar tono"
+#: ../src/FreqWindow.cpp:1014 ../src/Menus.cpp:1393 ../src/Project.cpp:2159
+#: ../src/prefs/KeyConfigPrefs.cpp:173
+msgid "Couldn't write to file: "
+msgstr "Non se puido escribir no arquivo: "
-#: ../src/effects/ChangePitch.cpp:242
-msgid "Change Pitch without Changing Tempo"
-msgstr "Cambiar tono sen cambiar tempo"
+#: ../src/FreqWindow.cpp:1019
+msgid "Frequency (Hz)\tLevel (dB)"
+msgstr "Frecuencia (Hz)\tVolume (dB)"
-#: ../src/effects/ChangePitch.h:31
-msgid "Change Pitch..."
-msgstr "Cambiar tono..."
+#: ../src/FreqWindow.cpp:1025
+msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
+msgstr "Retraso (segundos)\tFrecuencia (Hz)\tVolume"
-#: ../src/prefs/MousePrefs.cpp:100
-msgid "Change Sample"
-msgstr "Cambiar mostreo"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr ""
-#: ../src/prefs/MousePrefs.cpp:102
-msgid "Change Several Samples"
-msgstr "Cambiar varios mostreos"
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
-#: ../src/effects/ChangeSpeed.cpp:47
-msgid "Change Speed"
-msgstr "Cambiar velocidade"
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr ""
-#: ../src/effects/ChangeSpeed.cpp:282
-msgid "Change Speed, affecting both Tempo and Pitch"
-msgstr "Cambiar velocidade, afectando tempo e tono"
+#: HelpText.cpp:85
+msgid "To [[welcome|Welcome screen]]"
+msgstr ""
-#: ../src/effects/ChangeSpeed.h:37
-msgid "Change Speed..."
-msgstr "Cambiar velocidade..."
+#: HelpText.cpp:92
+msgid "Welcome!"
+msgstr ""
-#: ../src/effects/ChangeTempo.cpp:62
-msgid "Change Tempo"
-msgstr "Cambiar tempo"
+#: HelpText.cpp:97
+msgid "Playing Audio"
+msgstr ""
-#: ../src/effects/ChangeTempo.cpp:159
-msgid "Change Tempo without Changing Pitch"
-msgstr "Cambiar tempo sen cambiar tono"
+#: HelpText.cpp:101
+msgid "Recording Audio"
+msgstr ""
-#: ../src/effects/ChangeTempo.h:40
-msgid "Change Tempo..."
-msgstr "Cambiar tempo..."
+#: HelpText.cpp:105
+msgid "Recording - Choosing the Input Device"
+msgstr ""
-#: ../src/TrackPanel.cpp:4351
-msgid "Change lower speed limit (%) to:"
-msgstr "Cambiar o lÃmite inferior de velocidade (%) a:"
+#: HelpText.cpp:109
+msgid "Recording - Choosing the Input Source"
+msgstr ""
-#: ../src/TrackPanel.cpp:4416
-msgid "Change track name to:"
-msgstr "Cambiar nome de pista a:"
+#: HelpText.cpp:113
+msgid "Recording - Setting the Input Level"
+msgstr ""
-#: ../src/TrackPanel.cpp:4358
-msgid "Change upper speed limit (%) to:"
-msgstr "Cambiar o lÃmite superior de velocidade (%) a:"
+#: HelpText.cpp:117
+msgid "Editing and greyed out Menus"
+msgstr ""
-#: ../src/effects/AvcCompressor.cpp:398
-msgid "Change window size must be less than or equal to Adjustment window size."
+#: HelpText.cpp:121
+msgid "Exporting an Audio File"
msgstr ""
-"Cambio do tamaño de fiestra debe ser menor ou igual ao axuste del tamaño de "
-"fiestra."
-#: ../src/TrackPanel.cpp:4189
-#, c-format
-msgid "Changed '%s' to %d Hz"
-msgstr "Cambiado '%s' a %d Hz"
+#: HelpText.cpp:125
+msgid "Saving an Audacity Project"
+msgstr ""
-#: ../src/TrackPanel.cpp:4116 ../src/TrackPanel.cpp:4225
-#, c-format
-msgid "Changed '%s' to %s"
-msgstr "Cambiado '%s' a %s"
+#: HelpText.cpp:129
+msgid "Unsupported Formats"
+msgstr ""
-#: ../src/prefs/DirectoriesPrefs.cpp:214
-msgid ""
-"Changes to temporary directory will not take effect until Audacity is "
-"restarted"
+#: HelpText.cpp:133
+msgid "Burn to CD"
msgstr ""
-"Os cambios do directorio temporal non terán efecto ata que se reinicie "
-"Audacity"
-#: ../src/effects/ChangePitch.h:35
-msgid "Changing Pitch"
-msgstr "Cambiando tono"
+#: HelpText.cpp:137
+msgid "No Local Help"
+msgstr ""
-#: ../src/effects/ChangeSpeed.h:40
-msgid "Changing Speed"
-msgstr "Cambiando velocidade"
+#: HelpText.cpp:148
+msgid "</p><center><h3>Getting Started</h3></center><br>"
+msgstr ""
-#: ../src/effects/ChangeTempo.h:44
-msgid "Changing Tempo"
-msgstr "Cambiando tempo"
+#: HelpText.cpp:150
+msgid "Welcome to Audacity "
+msgstr ""
-#: ../src/DirManager.cpp:660
-#, c-format
-msgid "Changing block %s\n"
-msgstr "Cambiando bloque %s\n"
+#: HelpText.cpp:151
+msgid "Learn how to: <ul><li>[[play|play]] an existing audio file <li>[[record|record]] your voice, LP or tape <li>[[edit|edit]] sounds <li>[[save|save or open an Audacity project]] <li>[[export|export]] to an MP3 or other audio file, or [[burncd|burn to a CD]] </ul></p><p>"
+msgstr ""
-#: ../src/effects/AvcCompressor.h:70
-msgid "Changing volume"
-msgstr "Cambiando volume"
+#: HelpText.cpp:159
+msgid "This screen can be viewed at any time by clicking the <i>Help</i> menu, then <i>Show Welcome Message</i>. For a detailed guide to all the Audacity menus and controls, click <i>Help</i> menu then <i>Index</i>, or download our <a href=\"http://audacity.sourceforge.net/help/documentation/manual_1.4.pdf\">full Manual</a> in PDF format.</p>"
+msgstr ""
-#: ../src/TrackPanel.cpp:4121
-msgid "Channel"
-msgstr "Canle"
+#: HelpText.cpp:172
+msgid "<p><b>Opening audio files:</b> Either drag the files into the current project window, or click <i>File > Import > Audio</i>. Files can be opened into a new project window with <i>File > Open</i>. The main formats Audacity plays are <b>AIFF, AU, FLAC, M4A</b> (only on a Mac), <b>MP2/MP3, OGG Vorbis</b> and <b>WAV</b>. Click [[wma-proprietary|here]] if your file is in some other format. <b>To import a CD:</b> extract it to WAV or AIFF using iTunes, Windows Media Player 11 or similar. See our online guide: [[wiki:How_to_import_CDs|importing CDs]].</p><p> <p><b>Playing audio:</b> Press the green Play button to start playback. Press the blue Pause button once to pause playback, and again to resume. To stop, press the yellow Stop button. Spacebar can be used to either play or stop. After stopping, playback resumes from its last starting point. To change the starting point, click in the track at your desired starting point. The <b>|<<</b> and <b>>>|</b> buttons can be used to skip to the start or end of the track respectively. </p><br><br>"
+msgstr ""
-#: ../src/prefs/AudioIOPrefs.cpp:220
-msgid "Channels:"
-msgstr "Canles:"
+#: HelpText.cpp:194
+msgid "<p><b>To record:</b> Set the recording device and input source, adjust the input level, then press the red Record button.</b></p><p> 1) [[inputdevice|Set Recording Device]] either in the <i>Audio I/O tab of Preferences</i> or in <i>Device Toolbar</i>. Audio I/O Preferences lets you choose stereo recording if required.<br> 2) [[inputsource|Set input source]] for that device (for example, microphone or line-in) in the dropdown selector of the <i>Mixer Toolbar</i>, or (on some systems) at Recording Device in the <i>Audio I/O tab of Preferences</i> or in <i>Device Toolbar</i>.<br> 3) [[inputlevel|Adjust input level]] using the right-hand slider on the <i>Mixer Toolbar</i>. Correct adjustment of level before recording is essential to avoid noise or distortion. </p><p> More help at: \"Recording\" <a href=\"http://audacity.sourceforge.net/help/faq\">FAQs</a>, our Tutorial <a href=\"http://www.audacityteam.org/manual/index.php?title=Tutorial_-_Your_First_Recording\"> Your First Recording</a> in the <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">Manual</a>, and our Wiki [[wiki:Recording_Tips|Recording Tips]] and [[wiki:Troubleshooting_Recordings|Troubleshooting Recordings]] pages. </p><br><br>"
+msgstr ""
-#: ../src/LangChoice.cpp:74
-msgid "Choose Language for Audacity to use:"
-msgstr "Seleccione a linguaxe a utilizar:"
+#: HelpText.cpp:221
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgstr ""
-#: ../src/TrackPanel.cpp:4453
-msgid "Choose a font for Label Tracks"
-msgstr "Seleccione un tipo de letra para a pista de etiquetas"
+#: HelpText.cpp:244
+msgid "<p>Select the input source (such as microphone or line-in) for your [[inputdevice|recording device]]:<br> - <b>On Windows (except Vista)</b> and <b>Linux</b>, in the dropdown selector on the right of the <i>Mixer Toolbar</i>.<br> - <b>On Windows Vista</b> and <b>Mac</b>, at Recording Device on the <i>Audio I/O tab of Preferences</i>, or in <i>Device Toolbar</i>. The source will be shown as part of the parent device (for example, <i>High Def Audio Card: Microphone</i>). If necessary, Mac users can choose the input source at Apple Audio MIDI Setup. <br><i><b>Note:</b> many USB or Firewire recording devices don't have a choice of inputs, so this step is not necessary. If in doubt, see the documentation for your device. </i></p><p> <b>Tip:</b> To <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record audio playing on the computer</a>, Windows and Linux users can choose the \"Stereo Mix\", \"Wave Out\", \"Sum\" or comparable input source. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgstr ""
-#: ../src/prefs/DirectoriesPrefs.cpp:135
-msgid "Choose a location to place the temporary directory"
-msgstr "Seleccione onde establecer o directorio temporal"
+#: HelpText.cpp:267
+msgid "<p>The input level must be set correctly. If the level is too low, there will be background noise. If the level is too high, there will be distortion in the loud parts. </p><p>To set the level, either see this [[wiki:Recording_levels|illustrated online guide]] or follow these steps: <ol><li>Turn on <b>monitoring</b>. Double-click the right-hand of the two <i>VU Meters</i> (or right-click over it) and click \"Start Monitoring\". If the meters are not visible, click <i>View > Toolbars</i> and check \"Meter Toolbar\". </li><li>Adjust the input slider on the <i>Mixer Toolbar</i> (by the microphone symbol), so that the red bars in the meter come close to <b>but do not touch</b> the right edge of the scale. If you can't hear the monitored audio, go to the <i>Audio I/O tab of Preferences</i> and check \"Software Playthrough\". </li></ol></p><p> Back to [[record|Recording Audio]] <br></p>"
+msgstr ""
-#: ../src/export/ExportMultiple.cpp:766
-msgid "Choose a location to save the exported files"
-msgstr "Seleccione un lugar para gardar os arquivos exportados"
+#: HelpText.cpp:292
+msgid "<p>The main commands for editing audio are under the <i>Edit</i> menu (such as cut, copy and paste) and the <i>Effect</i> menu (you can do things like boost the bass, change pitch or tempo, or remove noise). </p><p> Audacity applies edits to selected areas of the audio track. To select a particular area, click in the track and drag the shaded area with the mouse. If no audio is selected, Audacity selects all the audio in the project window.</p><p> When playing or recording, the Edit and Effect menus will appear greyed out, because a moving track can't be edited. Commands can sometimes be unavailable for other reasons too. For example, you can't run effects until you have audio on the screen, and you can't paste audio until you've cut or copied it to Audacity's clipboard. </p><br><br>"
+msgstr ""
-#: ../src/export/ExportMultiple.cpp:600 ../src/prefs/DirectoriesPrefs.cpp:82
-msgid "Choose..."
-msgstr "Explorar..."
+#: HelpText.cpp:311
+msgid "<p>To return later to your unfinished work in Audacity with all tracks and edits as you left them, save an Audacity project. To play your current work in other media programs or send it to others, [[export|export]] an audio file such as WAV or MP3. </p><p> <i>File > Save Project</i> saves an <b>.aup</b> project file and a <b>_data</b> folder containing the actual audio. To re-open a saved project, click <i>File > Open</i> and open the .aup file. If you save and exit more than once, an .aup.bak backup file is created, but the .aup file should always be opened if present. When your final exported file is exactly as you want, delete the project files and _data folder to save disc space. </p><p><i>File > Save Project As...</i> is for saving an empty project. It also lets you save an existing Project to a <b> new</b> name. This is the only safe way to rename a project. The .aup file and _data folder should not be moved or renamed manually. </p><p>"
+msgstr ""
-#: ../src/DirManager.cpp:158
-msgid "Cleaning up temporary files..."
-msgstr "Eliminando arquivos temporais..."
+#: HelpText.cpp:335
+msgid "To hear your work in other media programs, export it to an audio file such as WAV or MP3 (some formats are [[wma-proprietary|unsupported]]). [[save|Saving an Audacity project]] creates a project file (and linked _data folder) containing all your edited tracks, so you can return to your work later. However, other programs can't read Audacity projects. </p><p> To export, click <i>File > Export</i> then choose the file format you want to export to in the \"Save as type\" dropdown. To [[burncd|burn a CD]] for standalone CD players, choose WAV or AIFF. To export as MP3, the [[wiki:Lame_Installation|Lame Encoder]] must be installed. </p><p> <i>File > Export Selection</i> exports only a selected area of audio. <i>Use File > Export Multiple</i> to export multiple files at the same time, either one for each audio track, or one for each labeled area in a single track. <i>Tracks > Add Label At Selection</i> lets you [[wiki:Splitting_recordings_into_separate_tracks|split the tracks]] from an album for multiple export as separate files. </p><br><br>"
+msgstr ""
-#: ../src/effects/Equalization.cpp:683 ../src/effects/Filter.cpp:468
-#: ../src/prefs/KeyConfigPrefs.cpp:99
-msgid "Clear"
-msgstr "Eliminar"
+#: HelpText.cpp:359
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgstr ""
-#: ../src/effects/ClickRemoval.h:42
-msgid "Click Removal..."
-msgstr "Eliminación de ruido...."
+#: HelpText.cpp:383
+msgid "<p>To burn your work to an audio CD for standalone CD players, first [[export|export]] it as WAV or AIFF. The exported file should be stereo, 44100 Hz (set in the \"Project Rate\" button bottom left) and 16 bit (set in the \"Options\" button in the file export dialog). These are Audacity's default settings, so normally you will not need to change these before exporting. <p>Burn the exported file to an \"audio CD\" - not a \"data CD\" or \"MP3 CD\" - with a CD burning program like iTunes or Windows Media Player. For more help, see [[wiki:How_to_burn_CDs|How to burn CDs]] online. </p><p>"
+msgstr ""
-#: ../src/effects/ClickRemoval.cpp:67
-msgid "Click and Pop Removal"
-msgstr "Eliminación de Click e Pop"
+#: HelpText.cpp:403
+msgid "<p>Help for Audacity Beta is currently unfinished. For now, a draft manual is available <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">online</a>. Alternatively, click <a href=\"http://www.audacityteam.org/manual/index.php?title=Temporary_HTML_Manual_Export\">here</a> to download a single-page version of the manual which can be viewed in this window."
+msgstr ""
-#: ../src/effects/ClickRemoval.cpp:317
-msgid "Click and Pop Removal by Craig DeForest"
-msgstr "Eliminación de Click e Pop por Craig DeForest"
+#: ../src/HistoryWindow.cpp:44
+msgid "Undo History"
+msgstr "Desfacer historial"
-#: ../src/TrackPanel.cpp:1616
-msgid "Click and drag to adjust relative size of stereo tracks."
-msgstr "Faga clic e arrastre para modificar o tamaño relativo de pistas estéreo."
+#: HistoryWindow.cpp:72
+msgid "Manage History"
+msgstr ""
-#: ../src/ControlToolBar.cpp:77
-msgid "Click and drag to edit the amplitude envelope"
-msgstr "Faga clic e arrastre para editar a amplitude da envolvente"
+#: ../src/HistoryWindow.cpp:57
+msgid "Action"
+msgstr "Acción"
-#: ../src/ControlToolBar.cpp:78
-msgid "Click and drag to edit the samples"
-msgstr "Faga clic e arrastre para editar os mostreos"
+#: HistoryWindow.cpp:86
+msgid "&Undo Levels Available"
+msgstr ""
-#: ../src/ControlToolBar.cpp:86
-msgid "Click and drag to move a track in time"
-msgstr "Faga clic e arrastre para mover unha pista no tempo"
+#: HistoryWindow.cpp:92
+msgid "Levels To Discard"
+msgstr ""
-#: ../src/TrackPanel.cpp:1574
-msgid "Click and drag to move left selection boundary."
-msgstr "Faga clic e arrastre para mover o lÃmite esquerdo da selección."
+#: HistoryWindow.cpp:103
+msgid "&Discard"
+msgstr ""
-#: ../src/TrackPanel.cpp:1579
-msgid "Click and drag to move right selection boundary."
-msgstr "Faga clic e arrastre para mover o lÃmite dereito da selección."
+#: HistoryWindow.cpp:112 effects/ChangeLength.cpp:186
+#: effects/SpikeCleaner.cpp:191 export/ExportCL.cpp:432
+msgid "&OK"
+msgstr ""
-#: ../src/TrackPanel.cpp:1621
-msgid "Click and drag to resize the track."
-msgstr "Faga clic e arrastre para modificar o tamaño da pista."
+#: ../src/prefs/DirectoriesPrefs.cpp:114
+msgid "Unable to determine"
+msgstr "Non se pode determinar"
-#: ../src/ControlToolBar.cpp:76
-msgid "Click and drag to select audio"
-msgstr "Faga clic e arrastre para seleccionar audio"
+#: ../src/import/ImportRaw.cpp:354
+msgid "bytes"
+msgstr "bytes"
-#: ../src/ControlToolBar.cpp:80
-msgid "Click to Zoom In, Shift-Click to Zoom Out"
-msgstr "Faga clic para Achegar, Maiús-Click para Alonxar"
+#: Internat.cpp:149
+msgid "KB"
+msgstr ""
-#: ../src/TrackPanel.cpp:1513
-msgid ""
-"Click to vertically zoom in, Shift-click to zoom out, Drag to create a "
-"particular zoom region."
+#: Internat.cpp:152
+msgid "MB"
msgstr ""
-"Faga clic para acercar verticalmente, Maiús-click para alonxar, arrastra para "
-"crear unha rexión de zoom en particular."
-#: ../src/Benchmark.cpp:223 ../src/FreqWindow.cpp:123
-#: ../src/effects/NoiseRemoval.cpp:463 ../src/effects/ClickRemoval.cpp:371
-msgid "Close"
-msgstr "Pechar"
+#: Internat.cpp:155
+msgid "GB"
+msgstr ""
-#: ../src/prefs/KeyConfigPrefs.cpp:78
-msgid "Command"
-msgstr "Comando"
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
-#: ../src/prefs/MousePrefs.cpp:85
-msgid "Command Action"
-msgstr "Acción de Comando"
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
-#: ../src/export/Export.cpp:382
-msgid "Command-line exporting is only supported on UNIX"
-msgstr "Exportación de liña de comandos só está dispoñible en UNIX"
+#: LabelDialog.cpp:54
+msgid "Track"
+msgstr ""
-#. i18n-hint: '-help', '-test' and
-#. '-blocksize' need to stay in English.
-#: ../src/AudacityApp.cpp:610 ../src/AudacityApp.cpp:680
-#, c-format
-msgid ""
-"Command-line options supported:\n"
-" -help (this message)\n"
-" -test (run self diagnostics)\n"
-" -blocksize ### (set max disk block size in bytes)\n"
-"\n"
-"In addition, specify the name of an audio file or Audacity project\n"
-"to open it.\n"
-"\n"
+#: ../src/Menus.cpp:3088
+msgid "Label"
+msgstr "Etiqueta"
+
+#: LabelDialog.cpp:56 TimerRecordDialog.cpp:341
+msgid "Start Time"
msgstr ""
-"Opcións de liña de comando:\n"
-" -help (esta mensaxe)\n"
-" -test (executa auto diagnóstico)\n"
-" -blocksize ### (tamaño máximo de bloque de disco en bytes)\n"
-"\n"
-"Xunto a esto, especifique o nome dun arquivo de son ou\n"
-"proxecto Audacity para abrilo.\n"
-"\n"
-#: ../src/Tags.cpp:475
-msgid "Comments"
-msgstr "Comentarios"
+#: LabelDialog.cpp:57 TimerRecordDialog.cpp:360
+msgid "End Time"
+msgstr ""
-#: ../src/Tags.cpp:700
-msgid "Comments:"
-msgstr "Comentarios:"
+#: LabelDialog.cpp:100 Menus.cpp:696
+msgid "&Edit Labels"
+msgstr ""
-#: ../src/effects/Compressor.h:36
-msgid "Compressor..."
-msgstr "Compresor..."
+#: LabelDialog.cpp:115
+msgid "Press F2 or double click to edit cell contents."
+msgstr ""
-#: ../src/Legacy.cpp:337
-#, c-format
-msgid ""
-"Converted a 1.0 project file to the new format.\n"
-"The old file has been saved as '%s'"
+#: LabelDialog.cpp:126
+msgid "Insert &After"
msgstr ""
-"Convertirase un arquivo de proxecto 1.0 ao novo formato.\n"
-"O arquivo antigo foi gardado como %s'"
-#: ../src/EditToolBar.cpp:150
-msgid "Copy"
-msgstr "Copiar"
+#: LabelDialog.cpp:127
+msgid "Insert &Before"
+msgstr ""
-#: ../src/export/ExportMP3.cpp:1328
-msgid "Could not open MP3 encoding library!"
-msgstr "Non se puido abrir a librerÃa codificadora de MP3!"
+#: LabelDialog.cpp:129
+msgid "&Import..."
+msgstr ""
+
+#: LabelDialog.cpp:157
+msgid "New..."
+msgstr ""
+
+#: LabelDialog.cpp:354
+msgid "You have left blank label names. These will be\n"
+"skipped when repopulating the Label Tracks.\n"
+"\n"
+"Would you like to go back and provide names?"
+msgstr ""
+
+#: LabelDialog.cpp:355
+msgid "Confirm"
+msgstr ""
+
+#: ../src/Menus.cpp:2631
+msgid "Select a text file containing labels..."
+msgstr "Selecciona un arquivo de texto que conteña etiquetas..."
+
+#: ../src/Menus.cpp:2635
+msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
+msgstr "Arquivos de texto (*.txt)|*.txt|Tódolos arquivos (*.*)|*.*"
#: ../src/Menus.cpp:2647 ../src/Project.cpp:1820 ../src/Project.cpp:1828
#: ../src/import/ImportMIDI.cpp:31
msgid "Could not open file: "
msgstr "Non se puido abrir o arquivo: "
-#: ../src/xml/XMLFileReader.cpp:45
-#, c-format
-msgid "Could not open file: \"%s\""
-msgstr "Non se puido abrir o arquivo: \"%s\""
+#: LabelDialog.cpp:560
+msgid "No labels to export."
+msgstr ""
-#: ../src/Project.cpp:2144
-#, c-format
-msgid ""
-"Could not save project. Perhaps %s is not writeable,\n"
-"or the disk is full."
+#: ../src/Menus.cpp:1358
+msgid "Export Labels As:"
+msgstr "Exportar etiquetas como:"
+
+#: ../src/Menus.cpp:1356
+msgid "labels.txt"
+msgstr "rotulos.txt"
+
+#: LabelDialog.cpp:703
+#, fuzzy
+msgid "New Label Track"
+msgstr "Nova p&ista de etiquetas"
+
+#: LabelDialog.cpp:704
+msgid "Enter track name"
msgstr ""
-"Non se puido gardar o proxecto. Tal vez %s non teña\n"
-"permiso para ser escrito, ou o disco está cheo."
-#: ../src/Project.cpp:1941
+#: LabelDialog.cpp:705 LabelDialog.h:52 LabelTrack.cpp:92 Menus.cpp:605
+#, fuzzy
+msgid "&Label Track"
+msgstr "Pista de etiquetas"
+
+#: ../src/LangChoice.cpp:47
+msgid "Audacity First Run"
+msgstr "Primeira execución de Audacity"
+
+#: ../src/LangChoice.cpp:74
+msgid "Choose Language for Audacity to use:"
+msgstr "Seleccione a linguaxe a utilizar:"
+
+#: ../src/Legacy.cpp:337
#, c-format
-msgid "Couldn't find the project data folder: \"%s\""
-msgstr "Non se puido atopar o cartafol de datos do proxecto: \"%s\""
+msgid "Converted a 1.0 project file to the new format.\n"
+"The old file has been saved as '%s'"
+msgstr "Convertirase un arquivo de proxecto 1.0 ao novo formato.\n"
+"O arquivo antigo foi gardado como %s'"
-#: ../src/Help.cpp:71
-msgid "Couldn't open the Audacity Help file."
-msgstr "Non se puido abrir o arquivo de axuda de Audacity."
+#: ../src/Legacy.cpp:338
+msgid "Opening Audacity Project"
+msgstr "Abrindo proxecto de Audacity"
-#: ../src/FreqWindow.cpp:1014 ../src/Menus.cpp:1393 ../src/Project.cpp:2159
-#: ../src/prefs/KeyConfigPrefs.cpp:173
-msgid "Couldn't write to file: "
-msgstr "Non se puido escribir no arquivo: "
+#: ../src/Menus.cpp:139
+msgid "&File"
+msgstr "&Arquivo"
-#: ../src/Menus.cpp:2977
-msgid "Created new audio track"
-msgstr "Creouse unha nova pista de audio"
+#: ../src/Menus.cpp:145
+msgid "&Close"
+msgstr "Pe&char"
-#: ../src/Menus.cpp:3016
-msgid "Created new label track"
-msgstr "Creouse unha nova pista de etiquetas"
+#: ../src/Menus.cpp:146
+msgid "&Save Project"
+msgstr "&Gardar proxecto"
-#: ../src/Project.cpp:2414
-msgid "Created new project"
-msgstr "Creouse un novo proxecto"
+#: ../src/Menus.cpp:150
+msgid "Save Project &As..."
+msgstr "Gardar proxecto &como..."
-#: ../src/Menus.cpp:3001
-msgid "Created new stereo audio track"
-msgstr "Creouse unha nova pista estéreo de audio"
+#: Menus.cpp:222
+msgid "Save Compressed Copy of Project..."
+msgstr ""
-#: ../src/Menus.cpp:3052
-msgid "Created new time track"
-msgstr "Creouse unha nova pista de tempo"
+#: Menus.cpp:226
+msgid "Chec&k Dependencies..."
+msgstr ""
-#: ../src/effects/NoiseRemoval.h:43
-msgid "Creating Noise Profile"
-msgstr "Creando perfil de ruido"
+#: Menus.cpp:230
+msgid "Open Me&tadata Editor..."
+msgstr ""
-#: ../src/AboutDialog.cpp:154
-msgid "Credits"
-msgstr "Créditos"
+#: Menus.cpp:238 import/ImportRaw.cpp:421
+msgid "&Import"
+msgstr ""
-#: ../src/prefs/MousePrefs.cpp:103
-msgid "Ctrl-Left-Drag"
-msgstr "Ctrl-Frecha esq.-Arrastrar"
+#: Menus.cpp:240
+msgid "&Audio..."
+msgstr ""
-#: ../src/prefs/MousePrefs.cpp:111
-msgid "Ctrl-Wheel-Rotate"
-msgstr "Ctrl-Roda do rato"
+#: Menus.cpp:241
+msgid "&Labels..."
+msgstr ""
+
+#: Menus.cpp:243
+msgid "&MIDI..."
+msgstr ""
+
+#: Menus.cpp:245
+msgid "&Raw Data..."
+msgstr ""
+
+#: Menus.cpp:260
+msgid "Expo&rt Selection..."
+msgstr ""
+
+#: ../src/Menus.cpp:173
+msgid "Export &Labels..."
+msgstr "Exportar E&tiquetas..."
+
+#: ../src/Menus.cpp:174
+msgid "Export &Multiple..."
+msgstr "Exportar &múltiple..."
+
+#: Menus.cpp:275
+msgid "Export MIDI..."
+msgstr ""
+
+#: Menus.cpp:281
+msgid "Appl&y Chain..."
+msgstr ""
+
+#: Menus.cpp:284
+msgid "Edit C&hains..."
+msgstr ""
+
+#: Menus.cpp:287
+msgid "Export CleanSpeech &Presets..."
+msgstr ""
+
+#: Menus.cpp:288
+msgid "I&mport CleanSpeech Presets..."
+msgstr ""
+
+#: Menus.cpp:295
+msgid "&Upload File..."
+msgstr ""
+
+#: Menus.cpp:300
+#, fuzzy
+msgid "Pa&ge Setup..."
+msgstr "Configuración de páxina...."
+
+#: Menus.cpp:303
+msgid "&Print..."
+msgstr ""
+
+#: ../src/Menus.cpp:212 ../src/Menus.cpp:218
+msgid "E&xit"
+msgstr "&SaÃr"
+
+#: ../src/Menus.cpp:227
+msgid "&Edit"
+msgstr "&Editar"
+
+#: ../src/Menus.cpp:231
+msgid "&Undo"
+msgstr "&Desfacer"
+
+#: ../src/Menus.cpp:239
+msgid "&Redo"
+msgstr "&Refacer"
#: ../src/Menus.cpp:252
-msgid "Cu&t\tCtrl+X"
-msgstr "Cor&tar\tCtrl+X"
+msgid "Cu&t"
+msgstr "Cor&tar"
-#: ../src/FreqWindow.cpp:131
-msgid "Cuberoot Autocorrelation"
-msgstr "Autocorrelación de raiz cúbica"
+#: Menus.cpp:348
+msgid "Spl&it Cut"
+msgstr ""
-#: ../src/Menus.cpp:585
-msgid "Cursor Left\tLeft"
-msgstr "Cursor á esquerda\tEsq"
+#: ../src/Menus.cpp:253
+msgid "&Copy"
+msgstr "&Copiar"
-#: ../src/Menus.cpp:586
-msgid "Cursor Right\tRight"
-msgstr "Cursor á dereita\tDer"
+#: ../src/Menus.cpp:254
+msgid "&Paste"
+msgstr "&Pegar"
-#: ../src/Menus.cpp:273
-msgid "Cursor to End"
-msgstr "Cursor ao Final de pista"
+#: Menus.cpp:355
+msgid "Tri&m"
+msgstr ""
-#: ../src/FormatSelection.cpp:412
-#, c-format
-msgid "Cursor: %.3lf NTSC frames (29.97 fps) %s"
-msgstr "Cursor: %.3lf cadros NTSC (29.97 cps) %s"
+#: ../src/Menus.cpp:260
+msgid "&Delete"
+msgstr "&Borrar"
-#: ../src/FormatSelection.cpp:334
-#, c-format
-msgid "Cursor: %.3lf PAL frames (25 fps) %s"
-msgstr "Cursor: %.3lf cadros PAL (25 cps) %s"
+#: Menus.cpp:360
+msgid "Split D&elete"
+msgstr ""
-#: ../src/FormatSelection.cpp:256
-#, c-format
-msgid "Cursor: %.3lf film frames (24 fps) %s"
-msgstr "Cursor: %.3lf cadros film (24 cps) %s"
+#: Menus.cpp:361
+msgid "Silence Audi&o"
+msgstr ""
-#: ../src/FreqWindow.cpp:751
-#, c-format
-msgid "Cursor: %.4f sec (%d Hz) (%s) = %f, Peak: %.4f sec (%d Hz) (%s)"
-msgstr "Cursor: %.4f seg (%d Hz) (%s) = %f, Pico: %.4f seg (%d Hz) (%s)"
+#: Menus.cpp:365
+msgid "Sp&lit"
+msgstr ""
-#: ../src/FormatSelection.cpp:632
-#, c-format
-msgid "Cursor: %02i:%02i:%06.3lf cdda min:sec:frames (75 fps) %s"
-msgstr "Cursor: %02i:%02i:%06.3lf cdda min:seg:cadros (75 cps) %s"
+#: Menus.cpp:369
+msgid "Split Ne&w"
+msgstr ""
-#: ../src/FormatSelection.cpp:532
-#, c-format
-msgid ""
-"Cursor: %1i:%02i:%02i:%06.3lf NTSC drop-frame h:mm:ss:ff (%.3lf NTSC "
-"frames) %s"
+#: Menus.cpp:373 Menus.cpp:405
+msgid "&Join"
msgstr ""
-"Cursor: %1i:%02i:%02i:%06.3lf NTSC drop-frame h:mm:ss:cc (%.3lf cadros "
-"NTSC) %s"
-#: ../src/FormatSelection.cpp:590
-#, c-format
-msgid ""
-"Cursor: %1i:%02i:%02i:%06.3lf NTSC non-drop-frame h:mm:ss:ff (%.3lf NTSC "
-"frames) %s"
+#: Menus.cpp:374 Menus.cpp:406
+msgid "Detac&h at Silences"
msgstr ""
-"Cursor: %1i:%02i:%02i:%06.3lf NTSC non-drop-frame h:mm:ss:cc (%.3lf cadros "
-"NTSC) %s"
-#: ../src/FormatSelection.cpp:387
-#, c-format
-msgid "Cursor: %1i:%02i:%02i:%06.3lf PAL h:mm:ss:ff 25 fps (%.3lf PAL frames) %s"
-msgstr "Cursor: %1i:%02i:%02i:%06.3lf PAL h:mm:ss:cc 25 cps (%.3lf cadros PAL) %s"
+#: Menus.cpp:375
+msgid "Duplic&ate"
+msgstr ""
-#: ../src/FormatSelection.cpp:309
-#, c-format
-msgid "Cursor: %1i:%02i:%02i:%06.3lf film h:mm:ss:ff 24 fps (%.3lf film frames) %s"
+#: Menus.cpp:380 Menus.cpp:616
+msgid "Stereo Trac&k to Mono"
msgstr ""
-"Cursor: %1i:%02i:%02i:%06.3lf film h:mm:ss:cc 24 cps (%.3lf cadros de "
-"film) %s"
-#: ../src/FormatSelection.cpp:232
-#, c-format
-msgid "Cursor: %1i:%02i:%09.6f hr:min:sec %s"
-msgstr "Cursor: %1i:%02i:%09.6f hr:min:seg %s"
+#: Menus.cpp:389
+msgid "La&beled Regions"
+msgstr ""
-#: ../src/FreqWindow.cpp:742
-#, c-format
-msgid "Cursor: %d Hz (%s) = %d dB Peak: %d Hz (%s)"
-msgstr "Cursor: %d Hz (%s) = %d dB Pico: %d Hz (%s)"
+#: Menus.cpp:392
+msgid "&Cut"
+msgstr ""
-#: ../src/FormatSelection.cpp:780
-#, c-format
-msgid ""
-"Cursor: %i+%04i cdda sectors+bytes (2352 bytes per sector) [Snap-To "
-"Samples]"
+#: Menus.cpp:393
+msgid "&Split Cut"
msgstr ""
-"Cursor: %i+%04i sectores cdda+bytes (2352 bytes por sector) [Axuste a "
-"mostreos]"
-#: ../src/FormatSelection.cpp:783
-#, c-format
-msgid ""
-"Cursor: %i+%04i cdda sectors+bytes (2352 bytes per sector) [Snap-To "
-"Samples] Change Project Rate to 44100 for cdda"
+#: Menus.cpp:394
+msgid "Co&py"
msgstr ""
-"Cursor: %i+%04i sectores cdda+bytes (2352 bytes por sector) [Axuste a "
-"mostreos] Cambiar frecuencia do proxecto a 44100 para cdda"
-#: ../src/FormatSelection.cpp:745
-#, c-format
-msgid "Cursor: %i+%i sec+samples [Snap-To Samples]"
-msgstr "Cursor: %i+%i segundos+mostras [Axuste a mostreos]"
+#: Menus.cpp:399
+msgid "Sp&lit Delete"
+msgstr ""
-#: ../src/FormatSelection.cpp:721
-#, c-format
-msgid "Cursor: %i:%02i+%i min:sec+samples [Snap-To Samples]"
-msgstr "Cursor: %i:%02i+%i min:seg+mostreos [Axuste a mostreos]"
+#: Menus.cpp:400
+msgid "Sile&nce"
+msgstr ""
-#: ../src/FormatSelection.cpp:161
-#, c-format
-msgid "Cursor: %i:%09.6f min:sec %s"
-msgstr "Cursor: %i:%09.6f min:seg %s"
+#: Menus.cpp:404
+msgid "Spli&t"
+msgstr ""
-#: ../src/FormatSelection.cpp:673
-#, c-format
-msgid "Cursor: %i:%09.6lf min:sec [Snap-To Samples]"
-msgstr "Cursor: %i:%09.6lf min:seg [Axuste a mostreos]"
+#: Menus.cpp:412
+msgid "&Select"
+msgstr ""
-#: ../src/FormatSelection.cpp:185
-#, c-format
-msgid "Cursor: %lf sec %s"
-msgstr "Cursor: %lf seg %s"
+#: ../src/Menus.cpp:269
+msgid "&All"
+msgstr "&Todo"
-#: ../src/FormatSelection.cpp:694
-#, c-format
-msgid "Cursor: %lf sec [Snap-To Samples]"
-msgstr "Cursor: %lf seg [Axuste a mostreos]"
+#: Menus.cpp:416
+msgid "&None"
+msgstr ""
-#: ../src/FormatSelection.cpp:649
-#, c-format
-msgid "Cursor: %li samples [Snap-To Samples]"
-msgstr "Cursor: %li mostreos [Axuste a mostreos]"
+#: Menus.cpp:418
+msgid "&Left at Playback Position"
+msgstr ""
-#: ../src/EditToolBar.cpp:148 ../src/Menus.cpp:1713
-msgid "Cut"
-msgstr "Cortar"
+#: Menus.cpp:419
+msgid "&Right at Playback Position"
+msgstr ""
-#: ../src/Menus.cpp:1713
-msgid "Cut to the clipboard"
-msgstr "Cortar e gardar en portapapeis"
+#: Menus.cpp:423
+msgid "Track &Start to Cursor"
+msgstr ""
-#: ../src/Menus.cpp:264
-msgid "D&uplicate\tCtrl+D"
-msgstr "D&uplicar\tCtrl+D"
+#: Menus.cpp:424
+msgid "Cursor to Track &End"
+msgstr ""
-#: ../src/effects/Phaser.cpp:476
-msgid "DRY"
-msgstr "SECO"
+#: Menus.cpp:430
+#, fuzzy
+msgid "Find &Zero Crossings"
+msgstr "Atopar cruces por cero"
-#: ../src/effects/nyquist/Nyquist.cpp:733
-#: ../src/effects/nyquist/Nyquist.cpp:880
-msgid "Debug"
-msgstr "Depuración"
+#: Menus.cpp:434
+msgid "Mo&ve Cursor"
+msgstr ""
-#: ../src/effects/Echo.cpp:211
-msgid "Decay factor:"
-msgstr "Factor de decaemento:"
+#: Menus.cpp:436
+#, fuzzy
+msgid "to Selection Star&t"
+msgstr "ao Comenzo da Selección"
-#: ../src/prefs/QualityPrefs.cpp:114
-msgid "Default Sample Format:"
-msgstr "Formato de mostreo predeterminado:"
+#: Menus.cpp:437
+#, fuzzy
+msgid "to Selection En&d"
+msgstr "ao Final da Selección"
-#: ../src/prefs/QualityPrefs.cpp:80
-msgid "Default Sample Rate:"
-msgstr "Frecuencia de mostreo predeterminado:"
+#: Menus.cpp:439
+#, fuzzy
+msgid "to Track &Start"
+msgstr "ao Comenzo da Pista"
-#. i18n-hint: Refers to byte-order. Don't translate "endianness" if you don't
-#. know the correct technical word.
-#: ../src/import/ImportRaw.cpp:308
-msgid "Default endianness"
-msgstr "Endianness predeterminado"
+#: Menus.cpp:440
+#, fuzzy
+msgid "to Track &End"
+msgstr "ao Final da Pista"
-#: ../src/prefs/KeyConfigPrefs.cpp:123
-msgid "Defaults"
-msgstr "Valores predeterminados"
+#: Menus.cpp:448
+msgid "Re&gion Save"
+msgstr ""
-#: ../src/effects/Echo.cpp:192
-msgid "Delay time (seconds):"
-msgstr "Tempo de retraso (segundos):"
+#: Menus.cpp:451
+msgid "Regio&n Restore"
+msgstr ""
-#: ../src/Project.cpp:2530
-msgid "Delete"
-msgstr "Borrar"
+#: Menus.cpp:459
+msgid "Pla&y Region"
+msgstr ""
-#: ../src/Menus.cpp:575
-msgid "DeleteKey\tBackspace"
-msgstr "TeclaDeBorrado\tBackspace"
+#: Menus.cpp:461
+msgid "&Lock"
+msgstr ""
-#: ../src/Menus.cpp:580
-msgid "DeleteKey2\tDelete"
-msgstr "TeclaDeBorrado\tDel"
+#: Menus.cpp:464
+msgid "&Unlock"
+msgstr ""
-#: ../src/Project.cpp:2527
-#, c-format
-msgid "Deleted %.2f seconds at t=%.2f"
-msgstr "Borrar %.2f segundos en t=%.2f"
+#: Menus.cpp:484
+msgid "Pre&ferences..."
+msgstr ""
-#: ../src/effects/Wahwah.cpp:500
-msgid "Depth (%):"
-msgstr "Profundidade (%):"
+#: ../src/Menus.cpp:345
+msgid "&View"
+msgstr "&Ver"
-#: ../src/effects/Phaser.cpp:529
-msgid "Depth:"
-msgstr "Profundidade:"
+#: ../src/Menus.cpp:347
+msgid "Zoom &In"
+msgstr "Zoom &Achegar"
-#: ../src/AboutDialog.cpp:197
-msgid "Developers:"
-msgstr "Desenroladores:"
+#: ../src/Menus.cpp:350
+msgid "Zoom &Normal"
+msgstr "Zoom &Normal"
-#: ../src/prefs/AudioIOPrefs.cpp:131 ../src/prefs/AudioIOPrefs.cpp:197
-msgid "Device:"
-msgstr "Dispositivo:"
+#: ../src/Menus.cpp:351
+msgid "Zoom &Out"
+msgstr "Z&oom Alonxar"
-#: ../src/prefs/PrefsDialog.cpp:88 ../src/prefs/PrefsDialog.cpp:216
-msgid "Directories"
-msgstr "Directorios"
+#: ../src/Menus.cpp:354
+msgid "&Fit in Window"
+msgstr "A&xustar á fiestra"
-#: ../src/prefs/DirectoriesPrefs.cpp:181
-#, c-format
-msgid "Directory %s does not exist. Create it?"
-msgstr "O directorio %s non existe. ¿Desexa crealo?"
+#: ../src/Menus.cpp:355
+msgid "Fit &Vertically"
+msgstr "Axustar &Verticalmente"
-#: ../src/prefs/DirectoriesPrefs.cpp:202
-#, c-format
-msgid "Directory %s is not writable"
-msgstr "O directorio %s non ten permiso de escritura"
+#: ../src/Menus.cpp:356
+msgid "&Zoom to Selection"
+msgstr "Acercar a &selección"
-#: ../src/widgets/Meter.cpp:305
-msgid "Disable"
-msgstr "(deshabilitado)"
+#: Menus.cpp:511
+msgid "&Collapse All Tracks"
+msgstr ""
-#: ../src/HistoryWindow.cpp:89
-msgid "Discard"
-msgstr "Descartar"
+#: Menus.cpp:512
+msgid "E&xpand All Tracks"
+msgstr ""
-#: ../src/HistoryWindow.cpp:65
-msgid "Discard undo data"
-msgstr "Descartar información de desfacer"
+#: Menus.cpp:516
+msgid "&Show Clipping"
+msgstr ""
-#: ../src/Project.cpp:1509
-msgid "Dock Control Toolbar"
-msgstr "Bloquear Barra de ferramentas de control"
+#: ../src/Menus.cpp:364
+msgid "&History..."
+msgstr "&Historial..."
-#: ../src/Menus.cpp:743
-msgid "Dock Edit Toolbar"
-msgstr "Bloquear Barra de ferramentas de edición"
+#: Menus.cpp:529
+msgid "&Toolbars"
+msgstr ""
-#: ../src/Menus.cpp:773
-msgid "Dock Meter Toolbar"
-msgstr "Bloquear Barra de medición"
+#: Menus.cpp:531
+msgid "&Control Toolbar"
+msgstr ""
-#: ../src/Menus.cpp:758
-msgid "Dock Mixer Toolbar"
-msgstr "Bloquear Barra de mestura"
+#: Menus.cpp:532
+msgid "&Device Toolbar"
+msgstr ""
-#: ../src/AboutDialog.cpp:188
-msgid "Documentation Writer"
-msgstr "Escritor de documentación"
+#: Menus.cpp:533
+msgid "&Edit Toolbar"
+msgstr ""
-#: ../src/widgets/Warning.cpp:53
-msgid "Don't show this warning again"
-msgstr "Non amosar esta advertencia novamente"
+#: Menus.cpp:534
+msgid "&Meter Toolbar"
+msgstr ""
-#: ../src/TrackPanel.cpp:857
-msgid "Down Octave"
-msgstr "Baixar unha oitava"
+#: Menus.cpp:535
+msgid "Mi&xer Toolbar"
+msgstr ""
-#: ../src/TrackPanel.cpp:1519
-msgid "Drag the label vertically to change the order of the tracks."
+#: Menus.cpp:536
+msgid "&Selection Toolbar"
msgstr ""
-"Arrastre a etiqueta cara arriba ou abaixo para cambiar a orde das "
-"pistas."
-#: ../src/ControlToolBar.cpp:82
-msgid "Drag to Zoom Into Region, Right-Click to Zoom Out"
-msgstr "Arrastrar para achegar dentro da rexión, Clic-dereito para alonxar"
+#: Menus.cpp:537
+msgid "T&ools Toolbar"
+msgstr ""
-#: ../src/ControlToolBar.cpp:359
-msgid "Draw Tool"
-msgstr "Ferramenta de debuxo"
+#: Menus.cpp:538
+msgid "Transcri&ption Toolbar"
+msgstr ""
-#: ../src/Menus.cpp:551
-msgid "Draw Tool\tF3"
-msgstr "Ferramenta de debuxo\tF3"
+#: Menus.cpp:542
+msgid "&Reset Toolbars"
+msgstr ""
-#: ../src/TrackPanel.cpp:2364
-msgid "Draw currently only works with waveforms."
-msgstr "Polo momento Debuxar só funciona con fomas de onda."
+#: Menus.cpp:550
+msgid "!Simplified View"
+msgstr ""
-#: ../src/Menus.cpp:1962
-msgid "Duplicate"
-msgstr "Duplicar"
+#. i18n-hint: 'Transport' is the name given to the set of controls that
+#. play, record, pause etc.
+#: Menus.cpp:561
+msgid "T&ransport"
+msgstr ""
-#: ../src/Menus.cpp:1962
-msgid "Duplicated"
-msgstr "Duplicado"
+#: Menus.cpp:564 toolbars/ControlToolBar.cpp:173
+msgid "Play"
+msgstr ""
-#: ../src/effects/Compressor.cpp:42
-msgid "Dynamic Range Compressor"
-msgstr "Compresor de rango dinámico"
+#: Menus.cpp:565
+msgid "&Loop Play"
+msgstr ""
-#: ../src/effects/Compressor.cpp:428
-msgid "Dynamic Range Compressor by Dominic Mazzoni"
-msgstr "Compresor de rango dinámico por Dominic Mazzoni"
+#: Menus.cpp:566
+msgid "&Pause"
+msgstr ""
-#: ../src/Menus.cpp:212 ../src/Menus.cpp:218
-msgid "E&xit"
-msgstr "&SaÃr"
+#: Menus.cpp:569
+msgid "&Stop"
+msgstr ""
-#: ../src/effects/Echo.cpp:39 ../src/effects/Echo.cpp:177
-msgid "Echo"
-msgstr "Eco"
+#: ../src/ControlToolBar.cpp:467
+msgid "Skip to Start"
+msgstr "Ir ao comezo"
-#: ../src/effects/Echo.h:36
-msgid "Echo..."
-msgstr "Eco..."
+#: ../src/ControlToolBar.cpp:472
+msgid "Skip to End"
+msgstr "Ir ao final"
+
+#: Menus.cpp:577
+msgid "&Record"
+msgstr ""
+
+#: Menus.cpp:578
+msgid "&Timer Record..."
+msgstr ""
+
+#: Menus.cpp:579
+msgid "Append Record"
+msgstr ""
+
+#: Menus.cpp:583
+msgid "Overdub (on/off)"
+msgstr ""
+
+#: Menus.cpp:584
+msgid "Software Playthrough (on/off)"
+msgstr ""
+
+#: Menus.cpp:587
+msgid "Sound Activated Recording (on/off)"
+msgstr ""
+
+#: Menus.cpp:588
+msgid "Sound Activation Level..."
+msgstr ""
+
+#: Menus.cpp:596
+msgid "&Tracks"
+msgstr ""
+
+#: Menus.cpp:601
+msgid "Add &New"
+msgstr ""
+
+#: Menus.cpp:603
+msgid "&Audio Track"
+msgstr ""
+
+#: Menus.cpp:604
+msgid "&Stereo Track"
+msgstr ""
+
+#: Menus.cpp:606 TimeTrack.cpp:44
+#, fuzzy
+msgid "&Time Track"
+msgstr "Pista de tempo"
+
+#: Menus.cpp:619
+msgid "Mi&x and Render"
+msgstr ""
+
+#: Menus.cpp:622
+msgid "Mix and Render to New Track"
+msgstr ""
+
+#: Menus.cpp:625
+msgid "&Resample..."
+msgstr ""
+
+#: ../src/Menus.cpp:398
+msgid "Remo&ve Tracks"
+msgstr "E&liminar pistas"
-#: ../src/Menus.cpp:2752
-msgid "Edit ID3 Tags"
-msgstr "Editar etiquetas ID3"
+#: Menus.cpp:637
+msgid "&Mute All Tracks"
+msgstr ""
-#: ../src/Menus.cpp:2751
-msgid "Edit ID3 Tags (for MP3 exporting)"
-msgstr "Editar etiquetas ID3 (para exportación MP3)"
+#: Menus.cpp:638
+msgid "&UnMute All Tracks"
+msgstr ""
-#: ../src/Menus.cpp:2752
-msgid "Edit ID3 tags"
-msgstr "Editar etiquetas ID3"
+#: ../src/Menus.cpp:405
+msgid "Align with &Zero"
+msgstr "Aliñar en &cero"
-#: ../src/export/ExportMultiple.cpp:521
-msgid "Edit the ID3 tags for all MP3 files"
-msgstr "Editar as etiquetas ID3 para tódolos arquivos MP3"
+#: ../src/Menus.cpp:406
+msgid "Align with &Cursor"
+msgstr "Aliñar con &cursor"
-#: ../src/export/ExportMP3.cpp:1354
-msgid "Edit the ID3 tags for the MP3 file"
-msgstr "Editar as etiquetas ID3 para o arquivo MP3"
+#: ../src/Menus.cpp:407
+msgid "Align with Selection &Start"
+msgstr "Aliñar con comenzo de &selección"
+
+#: ../src/Menus.cpp:408
+msgid "Align with Selection &End"
+msgstr "Aliñar con final de s&elección"
+
+#: Menus.cpp:647
+#, fuzzy
+msgid "Align End with Cu&rsor"
+msgstr "Aliñar final con cursor"
+
+#: Menus.cpp:648
+#, fuzzy
+msgid "Align End with Selection Star&t"
+msgstr "Aliñar final con comenzo de selección"
+
+#: Menus.cpp:649
+#, fuzzy
+msgid "Align End with Selection En&d"
+msgstr "Aliñar final con final de selección"
+
+#: Menus.cpp:650
+#, fuzzy
+msgid "Align Tracks To&gether"
+msgstr "Aliñar pistas conxuntamente"
+
+#: Menus.cpp:652
+msgid "&Align Tracks"
+msgstr ""
+
+#: Menus.cpp:667
+msgid "Ali&gn and Move Cursor"
+msgstr ""
+
+#: Menus.cpp:679
+msgid "Synchronize MIDI with Audio"
+msgstr ""
+
+#: Menus.cpp:686
+msgid "&Link Audio and Label Tracks"
+msgstr ""
+
+#: Menus.cpp:690
+#, fuzzy
+msgid "Add Label At &Selection"
+msgstr "Agregar etiqueta en selección"
+
+#: Menus.cpp:693
+#, fuzzy
+msgid "Add Label At &Playback Position"
+msgstr "Agregar etiqueta en punto de reproducción"
+
+#: Menus.cpp:702
+msgid "S&ort tracks"
+msgstr ""
+
+#: Menus.cpp:704
+msgid "by &Start time"
+msgstr ""
+
+#: Menus.cpp:707
+msgid "by &Name"
+msgstr ""
+
+#: ../src/Menus.cpp:441
+msgid "&Generate"
+msgstr "Xe&rar"
+
+#: Menus.cpp:766 Menus.cpp:851 Menus.cpp:921
+msgid "Unsorted"
+msgstr ""
#: ../src/Menus.cpp:464
msgid "Effe&ct"
msgstr "&Efecto"
-#: ../src/effects/ladspa/LadspaEffect.cpp:452
-msgid "Effect Settings"
-msgstr "Configuración do efecto"
+#: ../src/Menus.cpp:494
+msgid "&Analyze"
+msgstr "&Analizar"
-#: ../src/prefs/GUIPrefs.cpp:82
-msgid "Enable Edit Toolbar"
-msgstr "Habilitar Barra de ferramentas de edición"
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:92
-msgid "Enable Meter Toolbar"
-msgstr "Habilitar Barra de medición"
+#: Menus.cpp:877
+msgid "Plot Spectrum..."
+msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:87
-msgid "Enable Mixer Toolbar"
-msgstr "Habilitar Barra de mestura"
+#. i18n-hint: The name of the Help menu
+#: ../src/Menus.cpp:524 ../src/Menus.cpp:540
+msgid "&Help"
+msgstr "&Axuda"
-#: ../src/prefs/GUIPrefs.cpp:106
-msgid "Enable dragging of left and right selection edges"
-msgstr "Habilitar arrastre do borde esquerdo ou dereito da selección"
+#: Menus.cpp:951
+msgid "&About Audacity CleanSpeech..."
+msgstr ""
+
+#: Menus.cpp:957
+msgid "&Show Welcome Message..."
+msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:113
-msgid "Enable ergonomic order of Audio I/O buttons"
-msgstr "Habilitar orde ergonómico dos botóns de audio E/S"
+#: Menus.cpp:958
+msgid "&Help..."
+msgstr ""
-#: ../src/effects/AvcCompressor.cpp:652
-msgid "Enabled"
-msgstr "Habilitado"
+#: Menus.cpp:959
+msgid "Show &Log..."
+msgstr ""
-#: ../src/prefs/FileFormatPrefs.cpp:438
-msgid "Encoding: "
-msgstr "Codificación: "
+#: Menus.cpp:965
+msgid "&Screenshot Tools..."
+msgstr ""
-#: ../src/FreqWindow.cpp:132
-msgid "Enhanced Autocorrelation"
-msgstr "Autocorrelación mellorada"
+#: ../src/Menus.cpp:533
+msgid "&Run Benchmark..."
+msgstr "Executar test de &rendemento..."
-#: ../src/effects/nyquist/Nyquist.cpp:282
-msgid "Enter Nyquist Command: "
-msgstr "Introduza comando Nyquist: "
+#: Menus.cpp:975
+msgid "&Audio Device Info..."
+msgstr ""
-#: ../src/AStatus.cpp:351
-msgid "Enter a rate in Hz (samples per second):"
-msgstr "Introduza unha frecuencia en Hz (mostreos por segundo):"
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
+msgstr ""
-#: ../src/TrackPanel.cpp:4320
-msgid "Enter a sample rate in Hz (per second) between 1 and 100000:"
-msgstr "Introduza unha frecuencia de mostreo en Hz (por segundo) entre 1 e 100000:"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
+msgstr ""
-#: ../src/TrackPanel.cpp:1905 ../src/prefs/MousePrefs.cpp:98
-msgid "Envelope"
-msgstr "Envolvente"
+#: ../src/ControlToolBar.cpp:355
+msgid "Selection Tool"
+msgstr "Ferramenta de selección"
#: ../src/ControlToolBar.cpp:356
msgid "Envelope Tool"
msgstr "Ferramenta de envolvente"
-#: ../src/Menus.cpp:550
-msgid "Envelope Tool\tF2"
-msgstr "Ferramenta de envolvente\tF2"
+#: ../src/ControlToolBar.cpp:359
+msgid "Draw Tool"
+msgstr "Ferramenta de debuxo"
-#: ../src/effects/Equalization.cpp:156
-msgid "Equalization"
-msgstr "Ecualización"
+#: ../src/ControlToolBar.cpp:358
+msgid "Zoom Tool"
+msgstr "Ferramenta de Zoom"
-#: ../src/effects/Equalization.cpp:662
-msgid "Equalization, by Mitch Golden && Vaughan Johnson"
-msgstr "Ecualización por Mitch Golden && Vaughan Johnson"
+#: ../src/ControlToolBar.cpp:357
+msgid "Time Shift Tool"
+msgstr "Ferramenta de Traslado en Tempo"
-#: ../src/effects/Equalization.h:38
-msgid "Equalization..."
-msgstr "Ecualización..."
+#: ../src/Menus.cpp:554
+msgid "Multi Tool"
+msgstr "Modo Multi-ferramenta"
-#: ../src/ControlToolBar.cpp:723 ../src/ControlToolBar.cpp:884
-#: ../src/effects/Effect.cpp:332 ../src/prefs/DirectoriesPrefs.cpp:204
-msgid "Error"
-msgstr "Erro"
+#: ../src/Menus.cpp:556
+msgid "Next Tool"
+msgstr "Seguinte ferramenta"
-#: ../src/export/ExportPCM.cpp:160
-#, c-format
-msgid "Error (file may not have been written): %s"
-msgstr "Erro (o arquivo pode non ter sido escrito): %s"
+#: ../src/Menus.cpp:557
+msgid "Previous Tool"
+msgstr "Ferramenta anterior"
-#: ../src/AudioIO.cpp:173
-msgid "Error Initializing Audio"
-msgstr "Erro ao inicializar audio"
+#: ../src/Menus.cpp:559
+msgid "Play/Stop"
+msgstr "Reproducir/Parar"
-#: ../src/Project.cpp:2340
-msgid "Error importing"
-msgstr "Erro ao importar"
+#: Menus.cpp:1000
+msgid "Play/Stop and Set Cursor"
+msgstr ""
-#: ../src/prefs/KeyConfigPrefs.cpp:206
-msgid "Error loading keyboard shortcuts"
-msgstr "Erro ao cargar accesos directos de teclado"
+#: ../src/Menus.cpp:564
+msgid "Play One Second"
+msgstr "Reproducir un segundo"
-#: ../src/AudacityApp.cpp:829
-msgid "Error locking temporary folder"
-msgstr "Erro bloqueando o directorio temporal"
+#: ../src/Menus.cpp:565
+msgid "Play To Selection"
+msgstr "Reproducir a selección"
-#: ../src/Project.cpp:1821 ../src/Project.cpp:1829
-msgid "Error opening file"
-msgstr "Erro ao abrir arquivo"
+#: Menus.cpp:1003
+msgid "Play Cut Preview"
+msgstr ""
-#: ../src/AudacityApp.cpp:306 ../src/Project.cpp:1772 ../src/Project.cpp:1843
-#: ../src/Project.cpp:1894 ../src/Project.cpp:1905 ../src/Project.cpp:1943
-msgid "Error opening project"
-msgstr "Error al abrir proyecto"
+#: ../src/Menus.cpp:572
+msgid "Selection to Start"
+msgstr "Seleccionar ata o comezo"
-#: ../src/import/ImportMIDI.cpp:46
-msgid "Error parsing Allegro file."
-msgstr "Erro analizando arquivo Allegro."
+#: ../src/Menus.cpp:573
+msgid "Selection to End"
+msgstr "Seleccionar ata o final"
-#: ../src/import/ImportMIDI.cpp:76
-msgid "Error parsing MIDI file."
-msgstr "Erro analizando arquivo MIDI."
+#: ../src/Menus.cpp:575
+msgid "DeleteKey"
+msgstr "TeclaDeBorrado"
-#: ../src/prefs/KeyConfigPrefs.cpp:174
-msgid "Error saving keyboard shortcuts"
-msgstr "Erro ao gardar accesos directos de teclado"
+#: ../src/Menus.cpp:580
+msgid "DeleteKey2"
+msgstr "TeclaDeBorrado"
-#: ../src/Project.cpp:2148 ../src/Project.cpp:2160
-msgid "Error saving project"
-msgstr "Erro ao gardar proxecto"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
+msgstr ""
-#: ../src/ControlToolBar.cpp:882
-msgid ""
-"Error while opening sound device. Please check the input device settings and "
-"the project sample rate."
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
msgstr ""
-"Erro ao abrir dispositivo de son. Por favor comprobe a configuración "
-"do dispositivo de saÃda e a frecuencia de mostreo do proxecto."
-#: ../src/ControlToolBar.cpp:721 ../src/effects/Effect.cpp:330
-msgid ""
-"Error while opening sound device. Please check the output device settings "
-"and the project sample rate."
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
msgstr ""
-"Erro ao abrir dispositivo de son. Por favor verifique a configuración "
-"do dispositivo de saÃda e a frecuencia de mostreo do proxecto."
-#: ../src/AudioIO.cpp:170
-msgid "Error: "
-msgstr "Erro: "
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
+msgstr ""
-#: ../src/xml/XMLFileReader.cpp:63
-#, c-format
-msgid "Error: %s at line %d"
-msgstr "Erro: %s na liña %d"
+#: Menus.cpp:1026
+msgid "Move Focus to Previous Track"
+msgstr ""
-#: ../src/DirManager.cpp:613
-msgid "Error: is directory write-protected or disk full?"
-msgstr "Erro: ¿o directorio está protexido contra escritura ou o disco está cheo?"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
+msgstr ""
-#: ../src/Sequence.cpp:779
-#, c-format
-msgid "Expected to read %d samples, got %d samples.\n"
-msgstr "Esperaban ser lidos %d mostreos, obtivéronse %d mostreos.\n"
+#: Menus.cpp:1028
+msgid "Move Focus to Next Track"
+msgstr ""
-#: ../src/export/ExportMP3.cpp:1427 ../src/export/ExportMultiple.cpp:699
-#: ../src/export/ExportOGG.cpp:195 ../src/export/ExportPCM.cpp:136
-msgid "Export"
-msgstr "Exportar"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
+msgstr ""
-#: ../src/Menus.cpp:173
-msgid "Export &Labels..."
-msgstr "Exportar E&tiquetas..."
+#: Menus.cpp:1030 Menus.cpp:1031
+msgid "Toggle Focused Track"
+msgstr ""
-#: ../src/Menus.cpp:174
-msgid "Export &Multiple..."
-msgstr "Exportar &múltiple..."
+#: ../src/Menus.cpp:585
+msgid "Cursor Left"
+msgstr "Cursor á esquerda"
-#: ../src/Menus.cpp:167
-msgid "Export As MP3..."
-msgstr "Exportar como MP3..."
+#: ../src/Menus.cpp:586
+msgid "Cursor Right"
+msgstr "Cursor á dereita"
-#: ../src/Menus.cpp:170
-msgid "Export As Ogg Vorbis..."
-msgstr "Exportar como Ogg Vorbis..."
+#: Menus.cpp:1035
+msgid "Cursor Short Jump Left"
+msgstr ""
-#: ../src/Menus.cpp:164
-msgid "Export As..."
-msgstr "Exportar como..."
+#: Menus.cpp:1036
+msgid "Cursor Short Jump Right"
+msgstr ""
-#: ../src/prefs/KeyConfigPrefs.cpp:159
-msgid "Export Keyboard Shortcuts As:"
-msgstr "Exportar accesos directos de teclado como:"
+#: Menus.cpp:1037
+msgid "Cursor Long Jump Left"
+msgstr ""
-#: ../src/Menus.cpp:1358
-msgid "Export Labels As:"
-msgstr "Exportar etiquetas como:"
+#: Menus.cpp:1038
+msgid "Cursor Long Jump Right"
+msgstr ""
-#: ../src/export/ExportMP3.cpp:104 ../src/export/ExportMP3.cpp:144
-msgid "Export MP3"
-msgstr "Exportar MP3"
+#: ../src/Menus.cpp:587
+msgid "Selection Extend Left"
+msgstr "Extensión de selección á esquerda"
-#: ../src/export/ExportMultiple.cpp:367 ../src/export/ExportMultiple.cpp:474
-#: ../src/export/ExportMultiple.cpp:562
-msgid "Export Multiple"
-msgstr "Exportar múltiple"
+#: ../src/Menus.cpp:588
+msgid "Selection Extend Right"
+msgstr "Extensión de selección á dereita"
-#: ../src/Menus.cpp:168
-msgid "Export Selection As MP3..."
-msgstr "Exportar selección como MP3..."
+#: Menus.cpp:1043
+msgid "Set (or Extend) Left Selection"
+msgstr ""
-#: ../src/Menus.cpp:171
-msgid "Export Selection As Ogg Vorbis..."
-msgstr "Exportar selección como Ogg Vorbis..."
+#: Menus.cpp:1044
+msgid "Set (or Extend) Right Selection"
+msgstr ""
-#: ../src/Menus.cpp:165
-msgid "Export Selection As..."
-msgstr "Exportar selección como..."
+#: ../src/Menus.cpp:589
+msgid "Selection Contract Left"
+msgstr "Contracción de Selección á esquerda"
-#: ../src/FreqWindow.cpp:998
-msgid "Export Spectral Data As:"
-msgstr "Exportar datos do espectro como:"
+#: ../src/Menus.cpp:590
+msgid "Selection Contract Right"
+msgstr "Contracción de Selección á dereita"
-#: ../src/export/ExportMultiple.cpp:576
-msgid "Export format:"
-msgstr "Exportar formato:"
+#: Menus.cpp:1049
+msgid "Change pan on focused track"
+msgstr ""
-#: ../src/export/ExportMultiple.cpp:594
-msgid "Export location:"
-msgstr "Exportar ubicación:"
+#: Menus.cpp:1050
+msgid "Pan left on focused track"
+msgstr ""
-#: ../src/FreqWindow.cpp:119
-msgid "Export..."
-msgstr "Exportar..."
+#: Menus.cpp:1051
+msgid "Pan right on focused track"
+msgstr ""
-#: ../src/export/ExportOGG.cpp:192
-msgid "Exporting the entire project as Ogg Vorbis"
-msgstr "Exportando o proxecto enteiro como Ogg Vorbis"
+#: Menus.cpp:1052
+msgid "Change gain on focused track"
+msgstr ""
-#: ../src/export/ExportPCM.cpp:132
-#, c-format
-msgid "Exporting the entire project as a %s file"
-msgstr "Exportando o proxecto enteiro como un arquivo %s"
+#: Menus.cpp:1053
+msgid "Increase gain on focused track"
+msgstr ""
-#: ../src/export/ExportMP3.cpp:1424
-msgid "Exporting the entire project as an mp3"
-msgstr "Exportando o proxecto enteiro como un MP3"
+#: Menus.cpp:1054
+msgid "Decrease gain on focused track"
+msgstr ""
-#: ../src/export/ExportCL.cpp:146
-msgid "Exporting the entire project using command-line encoder"
-msgstr "Exportando o proxecto enteiro utilizando o codificador de liña de comandos"
+#: Menus.cpp:1055
+msgid "Open menu on focused track"
+msgstr ""
-#: ../src/export/ExportOGG.cpp:191
-msgid "Exporting the selected audio as Ogg Vorbis"
-msgstr "Exportando o audio seleccionado como Ogg Vorbis"
+#: Menus.cpp:1056
+msgid "Mute/Unmute focused track"
+msgstr ""
-#: ../src/export/ExportPCM.cpp:127
-#, c-format
-msgid "Exporting the selected audio as a %s file"
-msgstr "Exportando o audio seleccionado como un arquivo %s"
+#: Menus.cpp:1057
+msgid "Solo/Unsolo focused track"
+msgstr ""
-#: ../src/export/ExportMP3.cpp:1421
-msgid "Exporting the selected audio as an mp3"
-msgstr "Exportando o proxecto seleccionado como un MP3"
+#: Menus.cpp:1058
+msgid "Close focused track"
+msgstr ""
-#: ../src/export/ExportCL.cpp:144
-msgid "Exporting the selected audio using command-line encoder"
-msgstr "Exportando o audio seleccionado utilizando codificador de liña de comandos"
+#: Menus.cpp:1060
+msgid "Snap To On"
+msgstr ""
-#: ../src/prefs/MousePrefs.cpp:90
-msgid "Extend Selection Range"
-msgstr "Extender o rango da selección"
+#: Menus.cpp:1061
+msgid "Snap To Off"
+msgstr ""
-#: ../src/effects/Filter.cpp:53
-msgid "FFT Filter"
-msgstr "Filtro FFT"
+#: Menus.cpp:1065
+msgid "Full screen on/off"
+msgstr ""
-#: ../src/effects/Filter.cpp:458
-msgid "FFT Filter by Dominic Mazzoni"
-msgstr "Filtro FFT por Dominic Mazzoni"
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr ""
-#: ../src/effects/Filter.h:36
-msgid "FFT Filter..."
-msgstr "Filtro FFT..."
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr ""
-#: ../src/prefs/SpectrumPrefs.cpp:70
-msgid "FFT Size"
-msgstr "Tamaño de FFT"
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr ""
-#: ../src/effects/Fade.h:23
-msgid "Fade In"
-msgstr "Fade In (Aparecer)"
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr ""
-#: ../src/effects/Fade.h:43
-msgid "Fade Out"
-msgstr "Fade Out (Desvanecer)"
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr ""
-#: ../src/effects/Fade.h:27
-msgid "Fading In"
-msgstr "Aplicando Fade In"
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr ""
-#: ../src/effects/Fade.h:47
-msgid "Fading Out"
-msgstr "Aplicando Fade Out"
+#: Menus.cpp:1074
+msgid "Adjust input source"
+msgstr ""
-#: ../src/Resample.cpp:48
-msgid "Fast Sinc Interpolation"
-msgstr "Interpolación Fast Sinc"
+#. i18n-hint: This is the name of the menu item on Mac OS X only
+#: Menus.cpp:1161
+msgid "Open Recent"
+msgstr ""
-#: ../src/effects/Phaser.cpp:545
-msgid "Feedback (%):"
-msgstr "Retroalimentación (%):"
+#. i18n-hint: This is the name of the menu item on Windows and Linux
+#: Menus.cpp:1164
+msgid "Recent &Files"
+msgstr ""
-#: ../src/prefs/FileFormatPrefs.cpp:395
-msgid "File Format"
-msgstr "Formato de arquivo"
+#: ../src/Menus.cpp:620
+#, c-format
+msgid "&Undo %s"
+msgstr "&Desfacer %s"
-#: ../src/prefs/PrefsDialog.cpp:86
-msgid "File Formats"
-msgstr "Formatos de arquivo"
+#: ../src/Menus.cpp:626
+msgid "Can't Undo"
+msgstr "Non se pode desfacer"
-#: ../src/export/ExportMultiple.cpp:660
-msgid "File name prefix:"
-msgstr "Perfixo do nome do arquivo:"
+#: ../src/Menus.cpp:633
+#, c-format
+msgid "&Redo %s"
+msgstr "&Refacer %s"
-#: ../src/prefs/FileFormatPrefs.cpp:190
-msgid "Find Library"
-msgstr "Buscar librerÃa"
+#: ../src/Menus.cpp:639
+msgid "Can't Redo"
+msgstr "Non se pode refacer"
-#: ../src/Menus.cpp:278
-msgid "Find Zero Crossings\tZ"
-msgstr "Atopar cruces por cero\tZ"
+#: Menus.cpp:1858
+msgid "Sort By Time"
+msgstr ""
-#: ../src/export/ExportMultiple.cpp:629
-msgid "First file name:"
-msgstr "Primeiro nome do arquivo:"
+#: Menus.cpp:1858
+msgid "Tracks sorted by time"
+msgstr ""
-#: ../src/Menus.cpp:355
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "Axustar &Verticalmente\tCtrl+Shift+F"
+#: Menus.cpp:1884
+msgid "Sort By Name"
+msgstr ""
-#: ../src/EditToolBar.cpp:176
-msgid "Fit project in window"
-msgstr "Axustar o proxecto na fiestra"
+#: Menus.cpp:1884
+msgid "Tracks sorted by name"
+msgstr ""
-#: ../src/EditToolBar.cpp:174
-msgid "Fit selection in window"
-msgstr "Axustar selección á fiestra"
+#: Menus.cpp:2035
+msgid "Set Left Selection Bound"
+msgstr ""
-#: ../src/Menus.cpp:366 ../src/Project.cpp:1424
-msgid "Float Control Toolbar"
-msgstr "Desbloquear Barra de ferramentas de control"
+#: Menus.cpp:2071
+msgid "Set Right Selection Bound"
+msgstr ""
-#: ../src/Menus.cpp:367 ../src/Menus.cpp:745
-msgid "Float Edit Toolbar"
-msgstr "Desbloquear Barra de ferramentas de edición"
+#: ../src/Menus.cpp:1225
+msgid "You must select a track first."
+msgstr "Debes seleccionar primeiro unha pista."
-#: ../src/Menus.cpp:369 ../src/Menus.cpp:775
-msgid "Float Meter Toolbar"
-msgstr "Desbloquear Barra de medición"
+#: ../src/Menus.cpp:1248
+#, c-format
+msgid "Repeat %s"
+msgstr "Repetir %s"
-#: ../src/Menus.cpp:368 ../src/Menus.cpp:760
-msgid "Float Mixer Toolbar"
-msgstr "Desbloquear Barra de mestura"
+#: ../src/Menus.cpp:1352
+msgid "There are no label tracks to export."
+msgstr "Non hai pistas de etiquetas para exportar."
-#: ../src/TrackPanel.cpp:862
-msgid "Font..."
-msgstr "Tipo de letra..."
+#: Menus.cpp:2667
+msgid "Export MIDI As:"
+msgstr ""
-#: ../src/TrackPanel.cpp:4229
-msgid "Format Change"
-msgstr "Cambio de formato"
+#: Menus.cpp:2671
+msgid "MIDI file (*.mid)|*.mid|Allegro file (*.gro)|*.gro"
+msgstr ""
-#: ../src/Tags.cpp:610
-msgid "Format:"
-msgstr "Formato:"
+#: Menus.cpp:2703
+msgid "You have selected a filename with an unrecognized file extension.\n"
+"Do you want to continue?"
+msgstr ""
-#: ../src/prefs/DirectoriesPrefs.cpp:78
-msgid "Free Space:"
-msgstr "Espacio libre:"
+#: Menus.cpp:2704
+msgid "Export MIDI"
+msgstr ""
-#: ../src/FreqWindow.cpp:1019
-msgid "Frequency (Hz)\tLevel (dB)"
-msgstr "Frecuencia (Hz)\tVolume (dB)"
+#: ../src/Menus.cpp:1636
+msgid "Nothing to undo"
+msgstr "Nada para desfacer"
-#: ../src/effects/BassBoost.cpp:286
-msgid "Frequency (Hz):"
-msgstr "Frecuencia (Hz):"
+#: ../src/Menus.cpp:1655
+msgid "Nothing to redo"
+msgstr "Nada para refacer"
-#: ../src/effects/ChangePitch.cpp:318
-msgid "Frequency (Hz): from"
-msgstr "Frecuencia (Hz): dende"
+#: ../src/EditToolBar.cpp:148 ../src/Menus.cpp:1713
+msgid "Cut"
+msgstr "Cortar"
-#: ../src/effects/ToneGen.cpp:277
-msgid "Frequency / Hz"
-msgstr "Frecuencia / Hz"
+#: ../src/Menus.cpp:1713
+msgid "Cut to the clipboard"
+msgstr "Cortar e gardar en portapapeis"
-#: ../src/FreqWindow.cpp:68
-msgid "Frequency Analysis"
-msgstr "Análise de frecuencia"
+#: Menus.cpp:2949
+msgid "Split Cut"
+msgstr ""
-#. i18n-hint: Title of the Gain slider, used to adjust the volume
-#: ../src/TrackPanel.cpp:2807 ../src/TrackPanel.cpp:4726
-msgid "Gain"
-msgstr "Gañancia"
+#: Menus.cpp:2949
+msgid "Split-cut to the clipboard"
+msgstr ""
+
+#: ../src/EditToolBar.cpp:152 ../src/Menus.cpp:1818 ../src/Menus.cpp:1862
+msgid "Paste"
+msgstr "Pegar"
-#: ../src/effects/Noise.cpp:35
-msgid "Generate Noise"
-msgstr "Xerar ruido"
+#: Menus.cpp:3015
+msgid "Pasted text from the clipboard"
+msgstr ""
-#: ../src/effects/Silence.cpp:31
-msgid "Generate Silence"
-msgstr "Xerar silencio"
+#: ../src/Menus.cpp:1818 ../src/Menus.cpp:1862
+msgid "Pasted from the clipboard"
+msgstr "Pegar dende o portapapeis"
-#: ../src/effects/ToneGen.cpp:325
-msgid "Generate Tone"
-msgstr "Xerar tono"
+#: Menus.cpp:3229
+msgid "Pasting one type of track into another is not allowed."
+msgstr ""
-#: ../src/effects/Silence.h:37
-msgid "Generating Silence"
-msgstr "Xerando silencio"
+#: Menus.cpp:3241
+msgid "Copying stereo audio into a mono track is not allowed."
+msgstr ""
-#: ../src/effects/ToneGen.h:44
-msgid "Generating Tone"
-msgstr "Xerando tono"
+#: ../src/Menus.cpp:1902
+msgid "Trim"
+msgstr "Recortar"
-#: ../src/effects/Noise.h:35
-msgid "Generating White Noise"
-msgstr "Xerando ruido branco"
+#: ../src/Menus.cpp:1902
+msgid "Trim file to selection"
+msgstr "Recortar arquivo ata o seleccionado"
-#: ../src/Tags.cpp:682
-msgid "Genre:"
-msgstr "Xénero:"
+#: Menus.cpp:3425
+#, c-format
+msgid "Split-deleted %.2f seconds at t=%.2f"
+msgstr ""
-#: ../src/effects/NoiseRemoval.cpp:419
-msgid "Get Noise Profile"
-msgstr "Obter perfil de ruido"
+#: Menus.cpp:3428
+msgid "Split Delete"
+msgstr ""
-#: ../src/prefs/SpectrumPrefs.cpp:94
-msgid "Grayscale"
-msgstr "Escala de grises"
+#: Menus.cpp:3449
+#, c-format
+msgid "Disjoined %.2f seconds at t=%.2f"
+msgstr ""
-#: ../src/Help.cpp:63
-msgid "HTML Help Books (*.htb)|*.htb"
-msgstr "Libros de axuda HTML (*.htb)|*.htb"
+#: Menus.cpp:3452
+msgid "Disjoin"
+msgstr ""
-#: ../src/prefs/AudioIOPrefs.cpp:238
-msgid "Hardware Playthrough (Play new track while recording it)"
-msgstr "Reproducción Hardware (Reproducir unha pista mentras se grava)"
+#: Menus.cpp:3473
+#, c-format
+msgid "Joined %.2f seconds at t=%.2f"
+msgstr ""
-#: ../src/prefs/FileFormatPrefs.cpp:415
-msgid "Header: "
-msgstr "Encabezado: "
+#: Menus.cpp:3476
+msgid "Join"
+msgstr ""
-#: ../src/Resample.cpp:46
-msgid "High-quality Sinc Interpolation"
-msgstr "Fusión de alta calidade"
+#: ../src/Menus.cpp:1926
+#, c-format
+msgid "Silenced selected tracks for %.2f seconds at %.2f"
+msgstr "Pistas seleccionadas silenciadas por %.2f segundos en %.2f"
-#: ../src/prefs/QualityPrefs.cpp:186
-msgid "High-quality dither:"
-msgstr "Fusión de alta calidade:"
+#: ../src/Menus.cpp:1928 ../src/effects/Silence.h:33
+msgid "Silence"
+msgstr "Silencio"
-#: ../src/prefs/QualityPrefs.cpp:147
-msgid "High-quality sample rate converter:"
-msgstr "Conversor de frecuencia de mostreo de alta calidade:"
+#: ../src/Menus.cpp:1962
+msgid "Duplicate"
+msgstr "Duplicar"
-#: ../src/widgets/Meter.cpp:285
-msgid "Horizontal Stereo"
-msgstr "Estéreo horizontal"
+#: ../src/Menus.cpp:1962
+msgid "Duplicated"
+msgstr "Duplicado"
-#. i18n-hint: This is the abbreviation for "Hertz", or
-#. cycles per second.
-#: ../src/import/ImportRaw.cpp:378
-msgid "Hz"
-msgstr "Hz"
+#: Menus.cpp:3546
+msgid "Cut Labels"
+msgstr ""
-#: ../src/AboutDialog.cpp:70
-msgid "ID3 tag exporting disabled"
-msgstr "Exportación de etiquetas ID3 deshabilitada"
+#: Menus.cpp:3546
+msgid "Cut labeled regions to the clipboard"
+msgstr ""
-#: ../src/AboutDialog.cpp:68
-msgid "ID3 tag exporting enabled"
-msgstr "Exportación de etiquetas ID3 habilitada"
+#: Menus.cpp:3560
+msgid "SplitCut labeled regions to the clipboard"
+msgstr ""
-#: ../src/Tags.cpp:607
-msgid "ID3v1 (more compatible)"
-msgstr "ID3v1 (máis compatible)"
+#: Menus.cpp:3561
+msgid "Split Cut Labels"
+msgstr ""
-#: ../src/Tags.cpp:608
-msgid "ID3v2 (more flexible)"
-msgstr "ID3v2 (máis flexible)"
+#: Menus.cpp:3575
+msgid "Copied labeled regions to the clipboard"
+msgstr ""
-#: ../src/export/ExportMultiple.cpp:487
-msgid ""
-"If you have more than one Audio Track, you can export each track as a "
-"separate file,\n"
-"or if you have a Label Track, you can export a new file for each label.\n"
-"\n"
-"This project does not have multiple tracks or a Label Track, so you cannot "
-"export multiple files."
+#: Menus.cpp:3575
+msgid "Copy Labels"
msgstr ""
-"Se ten máis dunha pista de audio pode exportar cada pista nun arquivo "
-"independente,\n"
-"ou se ten unha pista de etiquetas pode exportar a un ficheiro independente "
-"por cada etiqueta.\n"
-"\n"
-"Este proxecto non ten pistas múltiples nin pista de etiquetas, asà que non "
-"pode exportar a arquivos independentes."
-#: ../src/Project.cpp:2236 ../src/Project.cpp:2283
-#: ../src/import/ImportPCM.cpp:403 ../src/import/ImportPCM.cpp:488
-#: ../src/import/ImportRaw.cpp:408
-msgid "Import"
-msgstr "Importar"
+#: Menus.cpp:3587
+msgid "Delete Labels"
+msgstr ""
+
+#: Menus.cpp:3587
+msgid "Deleted labeled regions"
+msgstr ""
+
+#: Menus.cpp:3599
+msgid "Split Delete Labels"
+msgstr ""
+
+#: Menus.cpp:3599
+msgid "Split Deleted labeled regions"
+msgstr ""
+
+#: Menus.cpp:3611
+msgid "Silence Labels"
+msgstr ""
+
+#: Menus.cpp:3611
+msgid "Silenced labeled regions"
+msgstr ""
+
+#: Menus.cpp:3623
+msgid "Split Labels"
+msgstr ""
+
+#: Menus.cpp:3623
+msgid "Split labeled regions"
+msgstr ""
+
+#: Menus.cpp:3635
+msgid "Join Labels"
+msgstr ""
+
+#: Menus.cpp:3635
+msgid "Joined labeled regions"
+msgstr ""
+
+#: Menus.cpp:3647
+msgid "Disjoin Labels"
+msgstr ""
+
+#: Menus.cpp:3647
+msgid "Disjoined labeled regions"
+msgstr ""
+
+#: ../src/Menus.cpp:2009 ../src/TrackPanel.cpp:4134
+msgid "Split"
+msgstr "Dividir"
+
+#: Menus.cpp:3758
+msgid "Split New"
+msgstr ""
-#: ../src/Menus.cpp:382
-msgid "Import &Labels..."
-msgstr "Importar e&tiquetas..."
+#: Menus.cpp:3758
+msgid "Split to new track"
+msgstr ""
-#: ../src/Menus.cpp:383
-msgid "Import &MIDI..."
-msgstr "Importar &MIDI..."
+#: ../src/Menus.cpp:2092
+msgid "Split at labels"
+msgstr "Dividir nas etiquetas"
-#: ../src/Menus.cpp:384
-msgid "Import &Raw Data..."
-msgstr "Importar arquivo en &bruto (raw)..."
+#: ../src/Menus.cpp:2660
+#, c-format
+msgid "Imported labels from '%s'"
+msgstr "Etiquetas Importadas de '%s'"
#: ../src/Menus.cpp:2661
msgid "Import Labels"
msgstr "Importar etiquetas"
+#: ../src/Menus.cpp:2672
+msgid "Select a MIDI file..."
+msgstr "Seleccionar un arquivo MIDI..."
+
+#: Menus.cpp:4270
+msgid "MIDI and Allegro files (*.mid;*.midi;*.gro)|*.mid;*.midi;*.gro|MIDI files (*.mid;*.midi)|*.mid;*.midi|Allegro files (*.gro)|*.gro|All files (*.*)|*.*"
+msgstr ""
+
+#: ../src/Menus.cpp:2694
+#, c-format
+msgid "Imported MIDI from '%s'"
+msgstr "MIDI Importado de '%s'"
+
#: ../src/Menus.cpp:2696
msgid "Import MIDI"
msgstr "Importar MIDI"
-#: ../src/import/ImportRaw.cpp:256
-msgid "Import Raw Data"
-msgstr "Importar arquivo en bruto"
+#: ../src/Menus.cpp:2709
+msgid "Select any uncompressed audio file..."
+msgstr "Seleccione un arquivo de audio descomprimido..."
-#: ../src/Project.cpp:2282
+#: ../src/Menus.cpp:2713
+msgid "All files (*)|*"
+msgstr "Tódolos arquivos (*)|*"
+
+#: Menus.cpp:4329
+msgid "Edit the metadata tags"
+msgstr ""
+
+#: Menus.cpp:4330 export/Export.cpp:348
+msgid "Edit Metadata"
+msgstr ""
+
+#: Menus.cpp:4330
+msgid "Edit Metadata tags"
+msgstr ""
+
+#: Menus.cpp:4385
#, c-format
-msgid "Imported '%s'"
-msgstr "'%s' Importado"
+msgid "Rendered all audio in track '%s'"
+msgstr ""
-#: ../src/Menus.cpp:2694
+#: Menus.cpp:4386
+msgid "Render"
+msgstr ""
+
+#: Menus.cpp:4391
#, c-format
-msgid "Imported MIDI from '%s'"
-msgstr "MIDI Importado de '%s'"
+msgid "Mixed and rendered %d tracks into one new stereo track"
+msgstr ""
-#: ../src/Menus.cpp:2660
+#: Menus.cpp:4394
#, c-format
-msgid "Imported labels from '%s'"
-msgstr "Etiquetas Importadas de '%s'"
+msgid "Mixed and rendered %d tracks into one new mono track"
+msgstr ""
+
+#: Menus.cpp:4396 Mix.cpp:120
+msgid "&Mix and Render"
+msgstr ""
+
+#: ../src/Menus.cpp:2892
+msgid "Aligned with zero"
+msgstr "Aliñado en cero"
+
+#: ../src/Menus.cpp:2896
+msgid "Aligned cursor"
+msgstr "Cursor aliñado"
+
+#: ../src/Menus.cpp:2900
+msgid "Aligned with selection start"
+msgstr "Aliñado con comenzo de selección"
+
+#: ../src/Menus.cpp:2904
+msgid "Aligned with selection end"
+msgstr "Aliñado con final de selección"
+
+#: ../src/Menus.cpp:2908
+msgid "Aligned end with cursor"
+msgstr "Aliñados final con cursor"
+
+#: ../src/Menus.cpp:2912
+msgid "Aligned end with selection start"
+msgstr "Aliñados final con comenzo de selección"
+
+#: ../src/Menus.cpp:2916
+msgid "Aligned end with selection end"
+msgstr "Aliñados final con final de selección"
+
+#: ../src/Menus.cpp:2920
+msgid "Aligned"
+msgstr "Aliñado"
+
+#: ../src/Menus.cpp:2953
+msgid "Align"
+msgstr "Aliñar"
+
+#: Menus.cpp:4675
+msgid "Sync MIDI with Audio"
+msgstr ""
+
+#: Menus.cpp:4679
+msgid "Alignment completed."
+msgstr ""
+
+#: ../src/Menus.cpp:2977
+msgid "Created new audio track"
+msgstr "Creouse unha nova pista de audio"
+
+#: ../src/Menus.cpp:2977 ../src/Menus.cpp:3001 ../src/Menus.cpp:3016
+#: ../src/Menus.cpp:3052
+msgid "New Track"
+msgstr "Nova pista"
+
+#: ../src/Menus.cpp:3001
+msgid "Created new stereo audio track"
+msgstr "Creouse unha nova pista estéreo de audio"
+
+#: ../src/Menus.cpp:3016
+msgid "Created new label track"
+msgstr "Creouse unha nova pista de etiquetas"
+
+#: ../src/Menus.cpp:3041
+msgid "The version of Audacity you are using does not support multiple time tracks."
+msgstr "A versión de Audacity que está utilizando non soporta múltiples pistas de tempo."
+
+#: ../src/Menus.cpp:3052
+msgid "Created new time track"
+msgstr "Creouse unha nova pista de tempo"
+
+#: ../src/Menus.cpp:3088
+msgid "Added label"
+msgstr "Etiqueta agregada"
+
+#: Menus.cpp:4842
+msgid "Edited labels"
+msgstr ""
+
+#: Menus.cpp:4869
+msgid "Save CleanSpeech Preset File As:"
+msgstr ""
+
+#: Menus.cpp:4873
+msgid "CleanSpeech Presets (*.csp)|*.csp"
+msgstr ""
+
+#: ../src/export/Export.cpp:185
+msgid "Sorry, pathnames longer than 256 characters not supported."
+msgstr "SÃntoo, rutas de directorios de máis de 256 caracteres non son soportadas."
+
+#: Menus.cpp:4926
+msgid "Problem encountered exporting presets."
+msgstr ""
+
+#: Menus.cpp:4927 export/Export.cpp:472
+msgid "Unable to export"
+msgstr ""
-#: ../src/Project.cpp:2233
+#: ../src/Menus.cpp:3122
+msgid "Remove Track"
+msgstr "Eliminar pista"
+
+#: ../src/Menus.cpp:3122
+msgid "Removed audio track(s)"
+msgstr "Pista(s) de audio eliminadas"
+
+#: Menus.cpp:5266 Menus.cpp:5322 export/ExportFFmpeg.cpp:756
+#: export/ExportMP3.cpp:1785
+msgid "Resample"
+msgstr ""
+
+#: Menus.cpp:5287 TrackPanel.cpp:6479 toolbars/MixerToolBar.cpp:314
+msgid "New sample rate (Hz):"
+msgstr ""
+
+#: Menus.cpp:5311 TrackPanel.cpp:6503
+msgid "The entered value is invalid"
+msgstr ""
+
+#: Menus.cpp:5320
#, c-format
-msgid "Importing %s File..."
-msgstr "Importando arquivo %s..."
+msgid "Resampling track %d"
+msgstr ""
-#: ../src/import/ImportPCM.cpp:344
+#: Menus.cpp:5329
+msgid "Resample Track"
+msgstr ""
+
+#: Menus.cpp:5329
+msgid "Resampled audio track(s)"
+msgstr ""
+
+#: ../src/Mix.cpp:74 ../src/Mix.cpp:82
+msgid "Mix"
+msgstr "Mestura"
+
+#: Mix.cpp:121
+msgid "Mixing and rendering tracks"
+msgstr ""
+
+#: ../src/NoteTrack.cpp:30
+msgid "Note Track"
+msgstr "Pista de notas"
+
+#: ../src/Menus.cpp:1617
+msgid "There was a problem printing."
+msgstr "Houbo un problema imprimindo."
+
+#: ../src/Menus.cpp:1618
+msgid "Print"
+msgstr "Imprimir"
+
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr ""
+
+#: Project.cpp:774
+msgid "Main Mix"
+msgstr ""
+
+#: Project.cpp:892
#, c-format
-msgid "Importing %s file..."
-msgstr "Importando arquivo %s..."
+msgid "Welcome to Audacity version %s"
+msgstr ""
-#: ../src/export/ExportMultiple.cpp:623
-msgid "Include audio before first label"
-msgstr "Incluir audio antes da primeira etiqueta"
+#: Project.cpp:1047
+msgid "(Recovered)"
+msgstr ""
-#: ../src/AboutDialog.cpp:150
-msgid "Information"
-msgstr "Información"
+#: ../src/ControlToolBar.cpp:469 ../src/Project.cpp:1707
+#: ../src/TrackPanel.cpp:1208
+msgid "Record"
+msgstr "Gravar"
-#: ../src/AudacityApp.cpp:368
-msgid "Input Meter"
-msgstr "Medidor de entrada"
+#: ../src/Project.cpp:1707 ../src/TrackPanel.cpp:1208
+msgid "Recorded Audio"
+msgstr "Audio gardado"
-#: ../src/MixerToolBar.cpp:138
-msgid "Input Volume"
-msgstr "Volume de entrada"
+#: ../src/Project.cpp:1716
+msgid "Save changes before closing?"
+msgstr "¿Gardar cambios antes de pechar?"
-#: ../src/MeterToolBar.cpp:67
-msgid "Input level meter - click to monitor input"
-msgstr "NÃvel de entrada - faga clic para visualizar a entrada"
+#: Project.cpp:1710
+msgid "\n"
+"If saved, the project will have no tracks.\n"
+"\n"
+"To save any previously open tracks:\n"
+"Cancel, Edit > Undo until all tracks\n"
+"are open, then File > Save Project."
+msgstr ""
-#: ../src/prefs/PrefsDialog.cpp:89
-msgid "Interface"
-msgstr "Contorno"
+#: ../src/Project.cpp:1717
+msgid "Save changes?"
+msgstr "¿Gardar cambios?"
-#: ../src/import/ImportOGG.cpp:136
-msgid "Internal logic fault"
-msgstr "Fallo de lóxica interna"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
+msgstr ""
-#: ../src/import/ImportOGG.cpp:133
-msgid "Invalid Vorbis bitstream header"
-msgstr "Encabezado inválido para Vorbis bitstream"
+#: ../src/Menus.cpp:2595 ../src/Project.cpp:1738
+msgid "Select one or more audio files..."
+msgstr "Seleccione un ou máis arquivos de audio..."
-#. i18n-hint: You do not need to translate "LOF"
-#: ../src/import/ImportLOF.cpp:289
-msgid "Invalid duration in LOF file."
-msgstr "Duración non válida en arquivo LOF."
+#: Project.cpp:1982
+msgid "Audacity projects|*.aup|"
+msgstr ""
-#: ../src/AStatus.cpp:362 ../src/TrackPanel.cpp:4331
-msgid "Invalid rate."
-msgstr "Frecuencia inválida."
+#: Project.cpp:2042 Project.cpp:2477
+#, c-format
+msgid "This file was saved by Audacity %s, a much\n"
+"older version. The format has changed.\n"
+"\n"
+"Audacity could corrupt the file in opening\n"
+"it, so you must back it up first.\n"
+"\n"
+"Open this file now?"
+msgstr ""
-#. i18n-hint: You do not need to translate "LOF"
-#: ../src/import/ImportLOF.cpp:383
-msgid "Invalid track offset in LOF file."
-msgstr "LÃmite de pista non válido en arquivo LOF."
+#: Project.cpp:2043
+msgid "1.0 or earlier"
+msgstr ""
-#. i18n-hint: You do not need to translate "LOF"
-#: ../src/import/ImportLOF.cpp:268
-msgid "Invalid window offset in LOF file."
-msgstr "LÃmite de fiestra non válido en arquivo LOF."
+#: Project.cpp:2049 Project.cpp:2489
+msgid "Opening old project file"
+msgstr ""
-#: ../src/effects/Invert.h:27
-msgid "Invert"
-msgstr "Invertir"
+#: Project.cpp:2073
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
-#: ../src/effects/Invert.h:31
-msgid "Inverting"
-msgstr "Invirtindo"
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr ""
-#: ../src/prefs/KeyConfigPrefs.cpp:79
-msgid "Key Combination"
-msgstr "Combinación de teclas"
+#: ../src/Project.cpp:1821 ../src/Project.cpp:1829
+msgid "Error opening file"
+msgstr "Erro ao abrir arquivo"
-#: ../src/prefs/PrefsDialog.cpp:90
-msgid "Keyboard"
-msgstr "Teclado"
+#: Project.cpp:2102
+#, c-format
+msgid "File may be invalid or corrupted: \n"
+"%s"
+msgstr ""
-#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
-#. i18n-hint: One-letter abbreviation for Left, in VU Meter
-#: ../src/widgets/ASlider.cpp:329 ../src/widgets/Meter.cpp:165
-msgid "L"
-msgstr "I"
+#: Project.cpp:2103
+msgid "Error opening file or project"
+msgstr ""
-#: ../src/AboutDialog.cpp:77
-msgid "LADSPA plug-in support disabled"
-msgstr "Soporte para plug-in LADSPA deshabilitado"
+#: ../src/Project.cpp:1842
+msgid "Audacity was unable to convert an Audacity 1.0 project to the new project format."
+msgstr "Audacity non puido convertir un proxecto de Audacity 1.0 ao novo formato de proxecto."
-#: ../src/AboutDialog.cpp:75
-msgid "LADSPA plug-in support enabled"
-msgstr "Soporte para plug-in LADSPA habilitado"
+#: Project.cpp:2230
+msgid "Could not remove old auto save file"
+msgstr ""
-#: ../src/effects/Phaser.cpp:497 ../src/effects/Wahwah.cpp:468
-msgid "LFO Frequency (Hz):"
-msgstr "Frecuencia LFO (Hz):"
+#: Project.cpp:2232
+msgid "Project was recovered"
+msgstr ""
-#: ../src/effects/Phaser.cpp:513 ../src/effects/Wahwah.cpp:484
-msgid "LFO Start Phase (deg.):"
-msgstr "Fase de Inicio LFO (grados):"
+#: Project.cpp:2232
+msgid "Recover"
+msgstr ""
-#. i18n-hint: You do not need to translate "LOF"
-#: ../src/import/ImportLOF.cpp:270 ../src/import/ImportLOF.cpp:291
-#: ../src/import/ImportLOF.cpp:364 ../src/import/ImportLOF.cpp:384
-msgid "LOF Error"
-msgstr "Erro de LOF"
+#: Project.cpp:2261
+msgid "Project checker repaired file"
+msgstr ""
-#: ../src/Menus.cpp:3088
-msgid "Label"
-msgstr "Etiqueta"
+#: Project.cpp:2261 effects/Repair.h:29
+msgid "Repair"
+msgstr ""
-#: ../src/TrackPanel.cpp:3315
-msgid "Label Edit"
-msgstr "Edición de etiqueta"
+#: ../src/Project.cpp:1941
+#, c-format
+msgid "Couldn't find the project data folder: \"%s\""
+msgstr "Non se puido atopar o cartafol de datos do proxecto: \"%s\""
-#: ../src/LabelTrack.cpp:35
-msgid "Label Track"
-msgstr "Pista de etiquetas"
+#: ../src/Project.cpp:1985
+#, c-format
+msgid "This file was saved using Audacity %s.\n"
+"You are using Audacity %s - you need to upgrade to\n"
+"a newer version to open this file."
+msgstr "Este arquivo foi gardado usando Audacity %s.\n"
+"Está usando a versión %s de Audacity. Precisa actualizar a \n"
+"unha versión máis moderna para poder abrir o arquivo."
-#: ../src/TrackPanel.cpp:4454
-msgid "Label Track Font"
-msgstr "Fonte da pista de etiquetas"
+#: ../src/Project.cpp:1991
+msgid "Can't open project file"
+msgstr "Imposible abrir o arquivo de proxecto"
-#: ../src/export/ExportMultiple.cpp:615
-msgid "Labels"
-msgstr "Etiquetas"
+#: Project.cpp:2484
+#, c-format
+msgid "This file was saved by Audacity %s.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
+"\n"
+"Open this file now?"
+msgstr ""
-#: ../src/FreqWindow.cpp:1025
-msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
-msgstr "Retraso (segundos)\tFrecuencia (Hz)\tVolume"
+#: Project.cpp:2682
+msgid "Your project is now empty.\n"
+"If saved, the project will have no tracks.\n"
+"\n"
+"To save any previously open tracks:\n"
+"Click 'No', Edit > Undo until all tracks\n"
+"are open, then File > Save Project.\n"
+"\n"
+"Save anyway?"
+msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:134
-msgid "Language:"
-msgstr "Linguaxe:"
+#: Project.cpp:2683
+msgid "Warning empty project"
+msgstr ""
-#: ../src/widgets/ASlider.cpp:488
-msgid "Left"
-msgstr "Esq"
+#: Project.cpp:2792
+#, c-format
+msgid "Could not save project. Perhaps %s \n"
+"is not writable or the disk is full."
+msgstr ""
-#: ../src/TrackPanel.cpp:841
-msgid "Left Channel"
-msgstr "Canle Esquerdo"
+#: ../src/Project.cpp:2148 ../src/Project.cpp:2160
+msgid "Error saving project"
+msgstr "Erro ao gardar proxecto"
-#: ../src/prefs/MousePrefs.cpp:105
-msgid "Left Click"
-msgstr "Clic Esquerdo"
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
-#: ../src/prefs/MousePrefs.cpp:106
-msgid "Left Drag"
-msgstr "Arrastre Esquerdo"
+#: ../src/Project.cpp:2200
+#, c-format
+msgid "Saved %s"
+msgstr "Gardouse %s"
-#: ../src/TrackPanel.cpp:4092
-msgid "Left, "
-msgstr "Esquerdo, "
+#: ../src/Project.cpp:2282
+#, c-format
+msgid "Imported '%s'"
+msgstr "'%s' Importado"
-#: ../src/prefs/MousePrefs.cpp:88 ../src/prefs/MousePrefs.cpp:92
-#: ../src/prefs/MousePrefs.cpp:100
-msgid "Left-Click"
-msgstr "Clic-Esquerdo"
+#: ../src/Project.cpp:2236 ../src/Project.cpp:2283
+#: ../src/import/ImportPCM.cpp:403 ../src/import/ImportPCM.cpp:488
+#: ../src/import/ImportRaw.cpp:408
+msgid "Import"
+msgstr "Importar"
-#: ../src/prefs/MousePrefs.cpp:89 ../src/prefs/MousePrefs.cpp:93
-#: ../src/prefs/MousePrefs.cpp:97 ../src/prefs/MousePrefs.cpp:98
-#: ../src/prefs/MousePrefs.cpp:102
-msgid "Left-Drag"
-msgstr "Arrastre-Esquerdo"
+#: ../src/Project.cpp:2340
+msgid "Error importing"
+msgstr "Erro ao importar"
-#: ../src/ControlToolBar.cpp:84
-msgid "Left=Zoom In, Right=Zoom Out, Middle=Normal"
-msgstr "Esquerdo=Achegar, Dereito=Alonxar, Central=Normal"
+#: Project.cpp:3134
+msgid "Save Speech As:"
+msgstr ""
-#: ../src/effects/Silence.cpp:127 ../src/effects/ToneGen.cpp:306
-msgid "Length (seconds)"
-msgstr "Lonxitude (segundos)"
+#: Project.cpp:3136
+msgid "Windows PCM Audio file (*.wav)|*.wav"
+msgstr ""
+
+#: Project.cpp:3143
+msgid "Audacity compressed project files (.aup) save your work in a smaller, compressed (.ogg) format. \n"
+"Compressed project files are a good way to transmit your project online, because they are much smaller. \n"
+"To open a compressed project takes longer than usual, as it imports each compressed track. \n"
+"\n"
+"Most other programs can't open Audacity project files.\n"
+"When you want to save a file that can be opened by other programs, select one of the\n"
+"Export commands."
+msgstr ""
+
+#: Project.cpp:3146
+msgid "You are saving an Audacity project file (.aup).\n"
+"\n"
+"Saving a project creates a file that only Audacity can open.\n"
+"\n"
+"To save an audio file for other programs, use one of the \"File > Export\" commands.\n"
+msgstr ""
+
+#: ../src/Project.cpp:2378
+msgid "Audacity projects (*.aup)|*.aup"
+msgstr "Proyectos Audacity (*.aup)|*.aup"
+
+#: ../src/Project.cpp:2414
+msgid "Created new project"
+msgstr "Creouse un novo proxecto"
+
+#: ../src/Project.cpp:2527
+#, c-format
+msgid "Deleted %.2f seconds at t=%.2f"
+msgstr "Borrar %.2f segundos en t=%.2f"
+
+#: ../src/Project.cpp:2530
+msgid "Delete"
+msgstr "Borrar"
+
+#: Project.cpp:3538
+#, c-format
+msgid "Disk space remains for recording %d hours and %d minutes."
+msgstr ""
+
+#: Project.cpp:3541
+#, c-format
+msgid "Disk space remains for recording 1 hour and %d minutes."
+msgstr ""
+
+#: Project.cpp:3544
+#, c-format
+msgid "Disk space remains for recording %d minutes."
+msgstr ""
+
+#: Project.cpp:3547
+#, c-format
+msgid "Disk space remains for recording %d seconds."
+msgstr ""
+
+#: ../src/Project.cpp:2706
+msgid "Out of disk space"
+msgstr "Sen espacio en disco"
+
+#: Project.cpp:3563
+#, c-format
+msgid "Import(s) complete. Running %d on-demand waveform calculations. Overall %2.0f%% complete."
+msgstr ""
+
+#: Project.cpp:3566
+#, c-format
+msgid "Import complete. Running an on-demand waveform calculation. %2.0f%% complete."
+msgstr ""
-#: ../src/effects/ChangeTempo.cpp:241
-msgid "Length (seconds): from"
-msgstr "Lonxitude (segundos): dende"
+#: Project.cpp:3850
+msgid "Could not remove old autosave file: "
+msgstr ""
-#: ../src/effects/NoiseRemoval.cpp:441 ../src/effects/ClickRemoval.cpp:349
-msgid "Less"
-msgstr "Menos"
+#: Project.cpp:3891
+msgid "New Project"
+msgstr ""
-#: ../src/HistoryWindow.cpp:80
-msgid "Levels to discard: "
-msgstr "NÃveis a descartar: "
+#: Project.cpp:3921
+msgid "Error writing autosave file"
+msgstr ""
+
+#: Project.cpp:3936
+msgid "Could not create autosave file: "
+msgstr ""
+
+#: Project.cpp:3962
+#, c-format
+msgid "Actual Rate: %d"
+msgstr ""
#: ../src/Resample.cpp:35
msgid "Libresample by Dominic Mazzoni and Julius Smith"
msgstr "Normalizar por Dominic Mazzoni e Julius Smith"
-#: ../src/AboutDialog.cpp:82
-msgid "Libresample support enabled"
-msgstr "Soporte para Libresample habilitado"
+#: ../src/Resample.cpp:46
+msgid "High-quality Sinc Interpolation"
+msgstr "Fusión de alta calidade"
+
+#: ../src/Resample.cpp:48
+msgid "Fast Sinc Interpolation"
+msgstr "Interpolación Fast Sinc"
#: ../src/Resample.cpp:118
msgid "Libsamplerate by Erik de Castro Lopo"
@@ -2412,202 +3068,651 @@ msgstr "Libsamplerate por Erik de Castro Lopo"
msgid "Libsamplerate error: %d\n"
msgstr "Erro de Libsamplerate: %d\n"
-#: ../src/AboutDialog.cpp:84
-msgid "Libsamplerate support enabled"
-msgstr "Soporte habilitado para Libsamplerate"
+#: ../src/Resample.cpp:233 ../src/Resample.cpp:243
+msgid "Resampling disabled."
+msgstr "Remostreo desactivado."
-#: ../src/widgets/Meter.cpp:292
-msgid "Linear"
-msgstr "Liñal"
+#. i18n-hint: Audio data bit depth (precision): 16-bit integers
+#: SampleFormat.cpp:66
+msgid "16-bit PCM"
+msgstr ""
-#: ../src/FreqWindow.cpp:177
-msgid "Linear frequency"
-msgstr "Frecuencia Liñal"
+#. i18n-hint: Audio data bit depth (precision): 24-bit integers
+#: SampleFormat.cpp:69
+msgid "24-bit PCM"
+msgstr ""
-#: ../src/import/ImportLOF.cpp:151 ../src/import/ImportLOF.cpp:177
-msgid "List of Files in basic text format"
-msgstr "Lista de arquivos en formato de texto básico"
+#. i18n-hint: Audio data bit depth (precision): 32-bit floating point
+#: SampleFormat.cpp:72
+msgid "32-bit float"
+msgstr ""
-#. i18n-hint: Refers to byte-order. Don't translate this if you don't
-#. know the correct technical word.
-#: ../src/import/ImportRaw.cpp:302
-msgid "Little-endian"
-msgstr "Little-endian"
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
-#: ../src/effects/Equalization.cpp:677
-msgid "Load Predefined Curve"
-msgstr "Cargar curva predefinida"
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
-#: ../src/prefs/KeyConfigPrefs.cpp:127
-msgid "Load..."
-msgstr "Cargar..."
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
-#: ../src/commands/CommandManager.cpp:640
-#, c-format
-msgid "Loaded %d keyboard shortcuts\n"
-msgstr "%d accesos directos cargados\n"
+#: ../src/export/ExportMultiple.cpp:600 ../src/prefs/DirectoriesPrefs.cpp:82
+msgid "Choose..."
+msgstr "Explorar..."
-#: ../src/commands/CommandManager.cpp:643
-msgid "Loading keyboard shortcuts"
-msgstr "Cargando accesos directos"
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
-#: ../src/prefs/DirectoriesPrefs.cpp:57
-msgid "Location:"
-msgstr "Ubicación:"
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
-#: ../src/FreqWindow.cpp:178
-msgid "Log frequency"
-msgstr "Logaritmo de Frecuencia"
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
-#: ../src/TrackPanel.cpp:4352 ../src/TrackPanel.cpp:4353
-msgid "Lower speed limit"
-msgstr "LÃmite inferior de velocidade"
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
-#: ../src/import/ImportLOF.cpp:362
-msgid "MIDI tracks cannot be offset individually, only audio files may be."
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
msgstr ""
-"As pistas MIDI non poden ser trasladadas en tempo individualmente, só "
-"arquivos de audio poden."
-#: ../src/prefs/FileFormatPrefs.cpp:172
-msgid "MP3 Export Setup"
-msgstr "Opcións de exportación a MP3"
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
-#: ../src/prefs/FileFormatPrefs.cpp:180
-msgid "MP3 Library Version:"
-msgstr "Versión da librerÃa MP3:"
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
-#: ../src/prefs/FileFormatPrefs.cpp:261
-msgid "MP3 exporting plugin not found"
-msgstr "Non se atopou plugin para exportar a MP3"
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
-#: ../src/AboutDialog.cpp:56
-msgid "MP3 importing disabled"
-msgstr "Importación MP3 deshabilitada"
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
-#: ../src/AboutDialog.cpp:54
-msgid "MP3 importing enabled"
-msgstr "Importación MP3 habilitada"
+#: Screenshot.cpp:369 effects/Normalize.cpp:74 effects/Normalize.cpp:75
+msgid "false"
+msgstr ""
-#: ../src/TrackPanel.cpp:4153
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: Screenshot.cpp:381 toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr ""
+
+#: Screenshot.cpp:382 effects/Contrast.cpp:410 toolbars/ControlToolBar.cpp:83
+#: toolbars/ControlToolBar.cpp:243
+msgid "Control"
+msgstr ""
+
+#: Screenshot.cpp:388 effects/LoadEffects.cpp:114 toolbars/MixerToolBar.cpp:59
+#: toolbars/MixerToolBar.cpp:240
+msgid "Mixer"
+msgstr ""
+
+#: Screenshot.cpp:389 toolbars/MeterToolBar.cpp:50
+#: toolbars/MeterToolBar.cpp:114
+msgid "Meter"
+msgstr ""
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: Screenshot.cpp:391 prefs/DevicePrefs.cpp:133 prefs/DevicePrefs.cpp:146
+#: prefs/MidiIOPrefs.cpp:118 prefs/MidiIOPrefs.cpp:132
+#: toolbars/DeviceToolBar.cpp:57 toolbars/DeviceToolBar.cpp:196
+msgid "Device"
+msgstr ""
+
+#: Screenshot.cpp:392 toolbars/TranscriptionToolBar.cpp:84
+#: toolbars/TranscriptionToolBar.cpp:252
+msgid "Transcription"
+msgstr ""
+
+#: Screenshot.cpp:398 TrackPanel.cpp:443 TrackPanel.cpp:444
+msgid "Track Panel"
+msgstr ""
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: ../src/export/ExportMultiple.cpp:636
+msgid "Tracks"
+msgstr "Pistas"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
+#: Screenshot.cpp:599
+msgid "Saved "
+msgstr ""
+
+#: Screenshot.cpp:602
+msgid "Error trying to save file: "
+msgstr ""
+
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
+#: Sequence.cpp:799 Sequence.cpp:809 Sequence.cpp:816
+msgid "Gap detected in project file\n"
+msgstr ""
+
+#: ShuttleGui.cpp:2034 effects/Effect.cpp:458
+#: effects/audiounits/AudioUnitEffect.cpp:851
+msgid "Pre&view"
+msgstr ""
+
+#: ShuttleGui.cpp:2041
+msgid "&Debug"
+msgstr ""
+
+#: SoundActivatedRecord.cpp:36
+msgid "Sound Activated Record"
+msgstr ""
+
+#: SoundActivatedRecord.cpp:58
+msgid "Activation level (dB):"
+msgstr ""
+
+#: SplashDialog.cpp:60
+msgid "&Welcome to Audacity!"
+msgstr ""
+
+#: SplashDialog.cpp:112
+msgid "Don't show this again at start up"
+msgstr ""
+
+#: Tags.cpp:629
+msgid "Artist Name"
+msgstr ""
+
+#: Tags.cpp:630
+msgid "Track Title"
+msgstr ""
+
+#: Tags.cpp:631
+msgid "Album Title"
+msgstr ""
+
+#: Tags.cpp:632
+#, fuzzy
+msgid "Track Number"
+msgstr "Número de pista:"
+
+#: ../src/Tags.cpp:465
+msgid "Year"
+msgstr "Año"
+
+#: Tags.cpp:634
+msgid "Genre"
+msgstr ""
+
+#: ../src/Tags.cpp:475
+msgid "Comments"
+msgstr "Comentarios"
+
+#: Tags.cpp:788
+msgid "Use arrow keys (or RETURN key after editing) to navigate fields."
+msgstr ""
+
+#: Tags.cpp:812
+msgid "Tag Name"
+msgstr ""
+
+#: Tags.cpp:813
+msgid "Tag Value"
+msgstr ""
+
+#: Tags.cpp:828 prefs/KeyConfigPrefs.cpp:145 widgets/FileHistory.cpp:174
+msgid "&Clear"
+msgstr ""
+
+#: Tags.cpp:834
+#, fuzzy
+msgid "Genres"
+msgstr "Xénero:"
+
+#: Tags.cpp:838
+msgid "E&dit..."
+msgstr ""
+
+#: Tags.cpp:839
+msgid "Rese&t..."
+msgstr ""
+
+#: Tags.cpp:844
+msgid "Template"
+msgstr ""
+
+#: Tags.cpp:848 prefs/KeyConfigPrefs.cpp:155
+msgid "&Load..."
+msgstr ""
+
+#: Tags.cpp:849 prefs/KeyConfigPrefs.cpp:156
+msgid "&Save..."
+msgstr ""
+
+#: Tags.cpp:851
+msgid "S&et Default"
+msgstr ""
+
+#: Tags.cpp:1001
+msgid "Edit Genres"
+msgstr ""
+
+#: Tags.cpp:1034 Tags.cpp:1046 Tags.cpp:1061 Tags.cpp:1074
+msgid "Reset Genres"
+msgstr ""
+
+#: Tags.cpp:1034 Tags.cpp:1074
+msgid "Unable to save genre file."
+msgstr ""
+
+#: Tags.cpp:1045
+msgid "Are you sure you want to reset the genre list to defaults?"
+msgstr ""
+
+#: Tags.cpp:1061
+msgid "Unable to open genre file."
+msgstr ""
+
+#: Tags.cpp:1096
+msgid "Load Metadata As:"
+msgstr ""
+
+#: Tags.cpp:1121
+msgid "Error loading metadata"
+msgstr ""
+
+#: Tags.cpp:1150
+msgid "Save Metadata As:"
+msgstr ""
+
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
+#: Theme.cpp:638
#, c-format
-msgid "Made '%s' a stereo track"
-msgstr "Convirtiuse a Estéreo a pista '%s'"
+msgid "Audacity could not write file:\n"
+" %s."
+msgstr ""
-#: ../src/AboutDialog.cpp:192
-msgid "Main Logo"
-msgstr "Logo Principal"
+#: Theme.cpp:656
+#, c-format
+msgid "Audacity could not open file:\n"
+" %s\n"
+"for writing."
+msgstr ""
-#: ../src/TrackPanel.cpp:4156
-msgid "Make Stereo"
-msgstr "Facer Estéreo"
+#: Theme.cpp:664
+#, c-format
+msgid "Audacity could not write images to file:\n"
+" %s."
+msgstr ""
-#: ../src/TrackPanel.cpp:843
-msgid "Make Stereo Track"
-msgstr "Convertir a pista estéreo"
+#: Theme.cpp:799
+#, c-format
+msgid "Audacity could not find file:\n"
+" %s.\n"
+"Theme not loaded."
+msgstr ""
-#: ../src/prefs/FileFormatPrefs.cpp:72
-msgid "Make a copy of the file before editing (safer)"
-msgstr "Facer unha copia do arquivo antes de editar (máis seguro)"
+#: Theme.cpp:807 Theme.cpp:896
+#, c-format
+msgid "Audacity could not load file:\n"
+" %s.\n"
+"Bad png format perhaps?"
+msgstr ""
-#: ../src/AudacityApp.cpp:367
-msgid "Master Gain Control"
-msgstr "Control mestre de gañancia"
+#: Theme.cpp:823
+msgid "Audacity could not read its default theme.\n"
+"Please report the problem."
+msgstr ""
-#: ../src/prefs/SpectrumPrefs.cpp:104
-msgid "Maximum Frequency (Hz):"
-msgstr "Frecuencia máxima (Hz):"
+#: Theme.cpp:918
+#, c-format
+msgid "None of the expected theme component files\n"
+" were found in:\n"
+" %s."
+msgstr ""
-#: ../src/prefs/SpectrumPrefs.cpp:152
-msgid "Maximum frequency must be in the range 100 Hz - 100,000 Hz"
-msgstr "A frecuencia máxima debe estar no rango 100 Hz - 100,000 Hz"
+#: Theme.cpp:942 effects/NoiseRemoval.cpp:173
+#, c-format
+msgid "Could not create directory:\n"
+" %s"
+msgstr ""
-#: ../src/Tags.cpp:429
+#: Theme.cpp:963
#, c-format
-msgid "Maximum length of attribute '%s' is %d characters. Data was truncated."
+msgid "Audacity could not save file:\n"
+" %s"
msgstr ""
-"A lonxitude máxima do atributo '%s' é %d caracteres. Os datos foron "
-"truncados."
-#: ../src/import/ImportOGG.cpp:124
-msgid "Media read error"
-msgstr "Erro de lectura de medio"
+#: Theme.cpp:975
+#, c-format
+msgid "All required files in:\n"
+" %s\n"
+"were already present."
+msgstr ""
+
+#: TimeDialog.cpp:53 TimeDialog.cpp:64 TimerRecordDialog.cpp:236
+#: TimerRecordDialog.cpp:367 TimerRecordDialog.cpp:371 effects/DtmfGen.cpp:446
+#: effects/Noise.cpp:191 effects/Noise.cpp:207 effects/ToneGen.cpp:279
+#: effects/ToneGen.cpp:291 effects/ToneGen.cpp:323 effects/ToneGen.cpp:335
+msgid "Duration"
+msgstr ""
-#: ../src/effects/AvcCompressor.cpp:606
-msgid "Minimum Change %:"
-msgstr "Cambio mÃnimo %:"
+#: TimerRecordDialog.cpp:69
+msgid "Audacity Timer Record"
+msgstr ""
-#: ../src/effects/AvcCompressor.cpp:594
-msgid "Minimum Change Window:"
-msgstr "Cambio mÃnimo de fiestra:"
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:145
-msgid "Minimum of dB mode display range"
-msgstr "Modo de vista de máximo rango de dB"
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
-#: ../src/Mix.cpp:74 ../src/Mix.cpp:82
-msgid "Mix"
-msgstr "Mestura"
+#: TimerRecordDialog.cpp:233
+msgid "Recording start"
+msgstr ""
-#: ../src/Mix.cpp:125
-msgid "Mixing tracks"
-msgstr "Mesturando pistas"
+#: TimerRecordDialog.cpp:234
+msgid "Recording end"
+msgstr ""
-#: ../src/TrackPanel.cpp:3314
-msgid "Modified Label"
-msgstr "Etiqueta modificada"
+#: TimerRecordDialog.cpp:239
+msgid "Audacity Timer Record Progress"
+msgstr ""
-#: ../src/widgets/Meter.cpp:299
-msgid "Monitor input"
-msgstr "Entrada de monitor"
+#: TimerRecordDialog.cpp:329
+msgid "Start Date and Time"
+msgstr ""
-#: ../src/TrackPanel.cpp:840
-msgid "Mono"
-msgstr "Mono"
+#: TimerRecordDialog.cpp:336
+msgid "Start Date"
+msgstr ""
-#: ../src/TrackPanel.cpp:4090
-msgid "Mono, "
-msgstr "Mono, "
+#: TimerRecordDialog.cpp:348
+msgid "End Date and Time"
+msgstr ""
-#: ../src/effects/NoiseRemoval.cpp:444 ../src/effects/ClickRemoval.cpp:352
-msgid "More"
-msgstr "Máis"
+#: TimerRecordDialog.cpp:356
+msgid "End Date"
+msgstr ""
-#: ../src/prefs/PrefsDialog.cpp:91
-msgid "Mouse"
-msgstr "Rato"
+#. i18n-hint: A time specification like "Sunday 28th October 2007 15:16:17 GMT"
+#. * but hopefully translated by wxwidgets will be inserted into this
+#: TimerRecordDialog.cpp:443
+#, c-format
+msgid "Waiting to start recording at %s.\n"
+msgstr ""
-#: ../src/prefs/MousePrefs.cpp:71
-msgid "Mouse Bindings (default values, not configurable)"
-msgstr "Accións de rato (valores predeterminados, non configurábeis)"
+#: TimerRecordDialog.cpp:444
+msgid "Audacity Timer Record - Waiting for Start"
+msgstr ""
-#: ../src/Menus.cpp:286
-msgid "Move Cursor..."
-msgstr "Mover cursor..."
+#: ../src/AStatus.cpp:81 ../src/TrackPanel.cpp:822
+#: ../src/prefs/FileFormatPrefs.cpp:105 ../src/prefs/QualityPrefs.cpp:91
+msgid "Other..."
+msgstr "Outro..."
-#: ../src/TrackPanel.cpp:4389
-msgid "Move Track"
-msgstr "Desprazar pista"
+#: ../src/TrackPanel.cpp:830 ../src/TrackPanel.cpp:851
+#: ../src/TrackPanel.cpp:860 ../src/TrackPanel.cpp:868
+msgid "Name..."
+msgstr "Nome..."
+
+#: ../src/TrackPanel.cpp:832 ../src/TrackPanel.cpp:853
+#: ../src/TrackPanel.cpp:864 ../src/TrackPanel.cpp:870
+msgid "Move Track Up"
+msgstr "Desprazar pista cara arriba"
#: ../src/TrackPanel.cpp:833 ../src/TrackPanel.cpp:854
#: ../src/TrackPanel.cpp:865 ../src/TrackPanel.cpp:871
msgid "Move Track Down"
msgstr "Desprazar pista cara abaixo"
-#: ../src/TrackPanel.cpp:832 ../src/TrackPanel.cpp:853
-#: ../src/TrackPanel.cpp:864 ../src/TrackPanel.cpp:870
-msgid "Move Track Up"
-msgstr "Desprazar pista cara arriba"
+#: ../src/TrackPanel.cpp:835
+msgid "Waveform"
+msgstr "Forma de onda"
-#: ../src/TrackPanel.cpp:4383
+#: ../src/TrackPanel.cpp:836
+msgid "Waveform (dB)"
+msgstr "Forma de onda (dB)"
+
+#: TrackPanel.cpp:613 prefs/TracksPrefs.cpp:59
+msgid "Spectrum log(f)"
+msgstr ""
+
+#: ../src/TrackPanel.cpp:838
+msgid "Pitch (EAC)"
+msgstr "Tono (EAC)"
+
+#: ../src/TrackPanel.cpp:840
+msgid "Mono"
+msgstr "Mono"
+
+#: ../src/TrackPanel.cpp:841
+msgid "Left Channel"
+msgstr "Canle Esquerdo"
+
+#: ../src/TrackPanel.cpp:842
+msgid "Right Channel"
+msgstr "Canle dereito"
+
+#: ../src/TrackPanel.cpp:843
+msgid "Make Stereo Track"
+msgstr "Convertir a pista estéreo"
+
+#: ../src/TrackPanel.cpp:844
+msgid "Split Stereo Track"
+msgstr "Dividir pista estéreo"
+
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr ""
+
+#: ../src/TrackPanel.cpp:846
+msgid "Set Sample Format"
+msgstr "Establecer formato de mostreo"
+
+#: ../src/AStatus.cpp:352 ../src/TrackPanel.cpp:848 ../src/TrackPanel.cpp:4322
+msgid "Set Rate"
+msgstr "Establecer frecuencia"
+
+#: ../src/TrackPanel.cpp:856
+msgid "Up Octave"
+msgstr "Subir unha oitava"
+
+#: ../src/TrackPanel.cpp:857
+msgid "Down Octave"
+msgstr "Baixar unha oitava"
+
+#: ../src/TrackPanel.cpp:862
+msgid "Font..."
+msgstr "Tipo de letra..."
+
+#: ../src/TrackPanel.cpp:873
+msgid "Set Range..."
+msgstr "Establecer rango..."
+
+#: ../src/EditToolBar.cpp:150
+msgid "Copy"
+msgstr "Copiar"
+
+#: ../src/TrackPanel.cpp:1513
+msgid "Click to vertically zoom in, Shift-click to zoom out, Drag to create a particular zoom region."
+msgstr "Faga clic para acercar verticalmente, Maiús-click para alonxar, arrastra para crear unha rexión de zoom en particular."
+
+#: ../src/TrackPanel.cpp:1519
+msgid "Drag the label vertically to change the order of the tracks."
+msgstr "Arrastre a etiqueta cara arriba ou abaixo para cambiar a orde das pistas."
+
+#: ../src/TrackPanel.cpp:1616
+msgid "Click and drag to adjust relative size of stereo tracks."
+msgstr "Faga clic e arrastre para modificar o tamaño relativo de pistas estéreo."
+
+#: ../src/TrackPanel.cpp:1621
+msgid "Click and drag to resize the track."
+msgstr "Faga clic e arrastre para modificar o tamaño da pista."
+
+#: TrackPanel.cpp:1363
+msgid "Drag one or more label boundaries"
+msgstr ""
+
+#: TrackPanel.cpp:1364
+msgid "Drag label boundary"
+msgstr ""
+
+#: ../src/TrackPanel.cpp:1541
+msgid "Multi-Tool Mode: Cmd-, for Mouse and Keyboard Preferences"
+msgstr "Modo Multi-Ferramenta: Ctrl-P para preferencias de rato e teclado"
+
+#: ../src/TrackPanel.cpp:1543
+msgid "Multi-Tool Mode: Ctrl-P for Mouse and Keyboard Preferences"
+msgstr "Modo Multi-Ferramenta: Ctrl-P para preferencias de rato e teclado"
+
+#: ../src/TrackPanel.cpp:1574
+msgid "Click and drag to move left selection boundary."
+msgstr "Faga clic e arrastre para mover o lÃmite esquerdo da selección."
+
+#: ../src/TrackPanel.cpp:1579
+msgid "Click and drag to move right selection boundary."
+msgstr "Faga clic e arrastre para mover o lÃmite dereito da selección."
+
+#: ../src/TrackPanel.cpp:3314
+msgid "Modified Label"
+msgstr "Etiqueta modificada"
+
+#: ../src/TrackPanel.cpp:3315
+msgid "Label Edit"
+msgstr "Edición de etiqueta"
+
+#: ../src/TrackPanel.cpp:1904
+msgid "Adjusted envelope."
+msgstr "Envolvente axustada."
+
+#: ../src/TrackPanel.cpp:1905 ../src/prefs/MousePrefs.cpp:98
+msgid "Envelope"
+msgstr "Envolvente"
+
+#: TrackPanel.cpp:2162
+msgid "Moved clip to another track"
+msgstr ""
+
+#: ../src/TrackPanel.cpp:2012
+msgid "left"
+msgstr "esquerdo"
+
+#: ../src/TrackPanel.cpp:2012
+msgid "right"
+msgstr "dereito"
+
+#. i18n-hint: %s is a direction like left or right
+#: TrackPanel.cpp:2168
#, c-format
-msgid "Moved '%s' %s"
-msgstr "Moveuse '%s' %s"
+msgid "Time shifted tracks/clips %s %.02f seconds"
+msgstr ""
+
+#: ../src/prefs/MousePrefs.cpp:97
+msgid "Time-Shift"
+msgstr "Traslado en tempo"
+
+#: TrackPanel.cpp:2966
+msgid "To use Draw, choose 'Waveform' in the Track Drop-down Menu."
+msgstr ""
+
+#: TrackPanel.cpp:2983
+msgid "To use Draw, zoom in further until you can see the individual samples."
+msgstr ""
#: ../src/TrackPanel.cpp:2637
msgid "Moved Sample"
msgstr "Mostreo movido"
+#: ../src/TrackPanel.cpp:2638
+msgid "Sample Edit"
+msgstr "Edición de mostreo"
+
+#: ../src/TrackPanel.cpp:2703
+#, c-format
+msgid "Removed track '%s.'"
+msgstr "Pista '%s' eliminada"
+
+#: ../src/TrackPanel.cpp:2705
+msgid "Track Remove"
+msgstr "Eliminación de pista"
+
#: ../src/TrackPanel.cpp:2806
msgid "Moved gain slider"
msgstr "Mostreo movido"
@@ -2616,233 +3721,409 @@ msgstr "Mostreo movido"
msgid "Moved pan slider"
msgstr "Mostreo movido"
-#: ../src/prefs/MousePrefs.cpp:105 ../src/prefs/MousePrefs.cpp:106
-#: ../src/prefs/MousePrefs.cpp:107 ../src/prefs/MousePrefs.cpp:108
-msgid "Multi"
-msgstr "Multi"
+#. i18n-hint: Title of the Gain slider, used to adjust the volume
+#: ../src/TrackPanel.cpp:2807 ../src/TrackPanel.cpp:4726
+msgid "Gain"
+msgstr "Gañancia"
-#: ../src/Menus.cpp:554
-msgid "Multi Tool\tF6"
-msgstr "Modo Multi-ferramenta\tF6"
+#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
+#: ../src/TrackPanel.cpp:2807 ../src/TrackPanel.cpp:4733
+msgid "Pan"
+msgstr "Pan"
-#: ../src/ControlToolBar.cpp:360
-msgid "Multi-Tool Mode"
-msgstr "Modo Multi-Ferramenta"
+#: ../src/TrackPanel.cpp:4387 ../src/effects/ChangePitch.cpp:277
+msgid "up"
+msgstr "arriba"
-#: ../src/TrackPanel.cpp:1541
-msgid "Multi-Tool Mode: Cmd-, for Mouse and Keyboard Preferences"
-msgstr "Modo Multi-Ferramenta: Ctrl-P para preferencias de rato e teclado"
+#: ../src/TrackPanel.cpp:4388 ../src/effects/ChangePitch.cpp:277
+msgid "down"
+msgstr "abaixo"
-#: ../src/TrackPanel.cpp:1543
-msgid "Multi-Tool Mode: Ctrl-P for Mouse and Keyboard Preferences"
-msgstr "Modo Multi-Ferramenta: Ctrl-P para preferencias de rato e teclado"
+#: ../src/TrackPanel.cpp:4383
+#, c-format
+msgid "Moved '%s' %s"
+msgstr "Moveuse '%s' %s"
-#: ../src/TrackPanel.cpp:4701
-msgid "Mute"
-msgstr "Silencio"
+#: ../src/TrackPanel.cpp:4389
+msgid "Move Track"
+msgstr "Desprazar pista"
+
+#: TrackPanel.cpp:4251
+msgid "Expand"
+msgstr ""
+
+#: TrackPanel.cpp:4251
+msgid "Expanded Cut Line"
+msgstr ""
+
+#: TrackPanel.cpp:4260
+msgid "Merge"
+msgstr ""
+
+#: TrackPanel.cpp:4260
+msgid "Merged Clips"
+msgstr ""
+
+#: TrackPanel.cpp:4271
+msgid "Removed Cut Line"
+msgstr ""
+
+#: TrackPanel.cpp:5750
+msgid "Adjusted Pan"
+msgstr ""
+
+#: TrackPanel.cpp:5802
+msgid "Adjusted gain"
+msgstr ""
+
+#: TrackPanel.cpp:6028
+msgid "Can't delete track with active audio"
+msgstr ""
+
+#: ../src/TrackPanel.cpp:4087
+msgid "Stereo, "
+msgstr "Estéreo,"
+
+#: ../src/TrackPanel.cpp:4090
+msgid "Mono, "
+msgstr "Mono, "
+
+#: ../src/TrackPanel.cpp:4092
+msgid "Left, "
+msgstr "Esquerdo, "
+
+#: ../src/TrackPanel.cpp:4094
+msgid "Right, "
+msgstr "Dereito,"
+
+#: ../src/TrackPanel.cpp:4116 ../src/TrackPanel.cpp:4225
+#, c-format
+msgid "Changed '%s' to %s"
+msgstr "Cambiado '%s' a %s"
+
+#: ../src/TrackPanel.cpp:4121
+msgid "Channel"
+msgstr "Canle"
+
+#: ../src/TrackPanel.cpp:4131
+#, c-format
+msgid "Split stereo track '%s'"
+msgstr "Dividir pista estéreo '%s'"
+
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
-#. i18n-hint: hours, minutes, seconds, frames
-#: ../src/FormatSelection.cpp:39
-msgid "NTSC drop-frame h:mm:ss:ff"
-msgstr "NTSC fotogramas descartados h:mm:ss:cc"
+#: ../src/TrackPanel.cpp:4153
+#, c-format
+msgid "Made '%s' a stereo track"
+msgstr "Convirtiuse a Estéreo a pista '%s'"
+
+#: ../src/TrackPanel.cpp:4156
+msgid "Make Stereo"
+msgstr "Facer Estéreo"
+
+#: ../src/TrackPanel.cpp:4189
+#, c-format
+msgid "Changed '%s' to %d Hz"
+msgstr "Cambiado '%s' a %d Hz"
+
+#: ../src/TrackPanel.cpp:4191
+msgid "Rate Change"
+msgstr "Cambio de frecuencia"
+
+#: ../src/TrackPanel.cpp:4229
+msgid "Format Change"
+msgstr "Cambio de formato"
+
+#: ../src/TrackPanel.cpp:4351
+msgid "Change lower speed limit (%) to:"
+msgstr "Cambiar o lÃmite inferior de velocidade (%) a:"
+
+#: ../src/TrackPanel.cpp:4352 ../src/TrackPanel.cpp:4353
+msgid "Lower speed limit"
+msgstr "LÃmite inferior de velocidade"
+
+#: ../src/TrackPanel.cpp:4358
+msgid "Change upper speed limit (%) to:"
+msgstr "Cambiar o lÃmite superior de velocidade (%) a:"
+
+#: ../src/TrackPanel.cpp:4359 ../src/TrackPanel.cpp:4360
+msgid "Upper speed limit"
+msgstr "LÃmite superior de velocidade"
+
+#: ../src/TrackPanel.cpp:4368
+#, c-format
+msgid "Set range to '%d' - '%d'"
+msgstr "Establecer rango en '%d' - '%d'"
-#. i18n-hint: fps is "frames per second"
-#: ../src/FormatSelection.cpp:37
-msgid "NTSC frames 29.97 fps"
-msgstr "Fotogramas NTSC 29.97 cps"
+#: ../src/TrackPanel.cpp:4371
+msgid "Set Range"
+msgstr "Establecer rango"
-#. i18n-hint: hours, minutes, seconds, frames
-#: ../src/FormatSelection.cpp:41
-msgid "NTSC non-drop-frame h:mm:ss:ff"
-msgstr "NTSC fotogramas non descartados h:mm:ss:cc"
+#: ../src/TrackPanel.cpp:4416
+msgid "Change track name to:"
+msgstr "Cambiar nome de pista a:"
+
+#: ../src/TrackPanel.cpp:4417
+msgid "Track Name"
+msgstr "Nome da pista"
+
+#: ../src/TrackPanel.cpp:4420
+#, c-format
+msgid "Renamed '%s' to '%s'"
+msgstr "Renomeouse '%s' a '%s'"
#: ../src/TrackPanel.cpp:4423
msgid "Name Change"
msgstr "Cambio de nome"
-#: ../src/export/ExportMultiple.cpp:646
-msgid "Name files:"
-msgstr "Arquivos nomeados:"
+#: ../src/TrackPanel.cpp:4454
+msgid "Label Track Font"
+msgstr "Fonte da pista de etiquetas"
-#: ../src/TrackPanel.cpp:830 ../src/TrackPanel.cpp:851
-#: ../src/TrackPanel.cpp:860 ../src/TrackPanel.cpp:868
-msgid "Name..."
-msgstr "Nome..."
+#: TrackPanel.cpp:6675 TrackPanel.cpp:6681
+msgid "Face name"
+msgstr ""
-#: ../src/Menus.cpp:393
-msgid "New &Audio Track"
-msgstr "Nova pista de &audio"
+#: TrackPanel.cpp:6685 TrackPanel.cpp:6692
+msgid "Face size"
+msgstr ""
-#: ../src/Menus.cpp:394
-msgid "New &Stereo Track"
-msgstr "Nova pista e&stéreo"
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr ""
-#: ../src/Menus.cpp:396
-msgid "New &Time Track"
-msgstr "Nova pista de &tempo"
+#: ../src/TrackPanel.cpp:4701
+msgid "Mute"
+msgstr "Silencio"
-#: ../src/Menus.cpp:395
-msgid "New La&bel Track"
-msgstr "Nova p&ista de etiquetas"
+#: ../src/TrackPanel.cpp:4701
+msgid "Solo"
+msgstr "Só"
-#: ../src/effects/Amplify.cpp:152
-msgid "New Peak Amplitude (dB):"
-msgstr "Novo pico de amplitude (dB):"
+#: TrackPanelAx.cpp:273
+msgid "TrackView"
+msgstr ""
-#: ../src/prefs/DirectoriesPrefs.cpp:183
-msgid "New Temporary Directory"
-msgstr "Novo directorio temporal"
+#: TrackPanelAx.cpp:281
+msgid "Track Accessible out of sync"
+msgstr ""
-#: ../src/Menus.cpp:2977 ../src/Menus.cpp:3001 ../src/Menus.cpp:3016
-#: ../src/Menus.cpp:3052
-msgid "New Track"
-msgstr "Nova pista"
+#: TrackPanelAx.cpp:289
+#, c-format
+msgid "Track %d"
+msgstr ""
-#: ../src/effects/AvcCompressor.cpp:662
-msgid "New Value"
-msgstr "Novo valor"
+#: TrackPanelAx.cpp:295
+msgid " Mute On"
+msgstr ""
-#: ../src/effects/Repeat.cpp:241 ../src/effects/Repeat.cpp:280
-msgid "New selection length: "
-msgstr "Nova lonxitude de selección: "
+#: TrackPanelAx.cpp:300
+msgid " Solo On"
+msgstr ""
-#: ../src/Menus.cpp:556
-msgid "Next Tool\tD"
-msgstr "Seguinte ferramenta\tD"
+#: TrackPanelAx.cpp:304
+msgid " Select On"
+msgstr ""
-#. i18n-hint: Refers to byte-order. Don't translate "endianness" if you don't
-#. know the correct technical word.
-#: ../src/import/ImportRaw.cpp:299
-msgid "No endianness"
-msgstr "Sen endianness"
+#: VoiceKey.cpp:88 VoiceKey.cpp:238 VoiceKey.cpp:376 VoiceKey.cpp:517
+msgid "Selection is too small to use voice key."
+msgstr ""
-#: ../src/AboutDialog.cpp:86
-msgid "No resampling support enabled"
-msgstr "Soporte habilitado para non remostreos"
+#: VoiceKey.cpp:843
+msgid "Calibration Results\n"
+msgstr ""
-#: ../src/export/Export.cpp:124
-msgid ""
-"No tracks are selected!\n"
-"Choose Export... to export all tracks."
+#: VoiceKey.cpp:844
+#, c-format
+msgid "Energy -- mean: %1.4f sd: (%1.4f)\n"
msgstr ""
-"Non hai pistas seleccionadas!\n"
-"Escolle Exportar... para exportar tódalas pistas."
-#: ../src/effects/NoiseRemoval.cpp:69
-msgid "Noise Removal"
-msgstr "Eliminación de ruido"
+#: VoiceKey.cpp:845
+#, c-format
+msgid "Sign Changes -- mean: %1.4f sd: (%1.4f)\n"
+msgstr ""
-#: ../src/effects/NoiseRemoval.cpp:403
-msgid "Noise Removal by Dominic Mazzoni"
-msgstr "Eliminación de ruido por Dominic Mazzoni"
+#: VoiceKey.cpp:846
+#, c-format
+msgid "Direction Changes -- mean: %1.4f sd: (%1.4f)\n"
+msgstr ""
-#: ../src/effects/NoiseRemoval.h:38
-msgid "Noise Removal..."
-msgstr "Eliminación de ruido..."
+#: ../src/WaveTrack.cpp:128
+msgid "Audio Track"
+msgstr "Pista de audio"
-#: ../src/effects/ladspa/LadspaEffect.cpp:435
-#: ../src/effects/ladspa/LadspaEffect.cpp:443
-#: ../src/prefs/QualityPrefs.cpp:160
-msgid "None"
-msgstr "Ningún"
+#: WaveTrack.cpp:978 WaveTrack.cpp:997
+msgid "There is not enough room available to paste the selection"
+msgstr ""
-#: ../src/effects/Normalize.cpp:29
-msgid "Normalize"
-msgstr "Normalizar"
+#: WaveTrack.cpp:2023
+msgid "There is not enough room available to expand the cut line"
+msgstr ""
-#: ../src/effects/Normalize.cpp:233
-msgid "Normalize by Dominic Mazzoni"
-msgstr "Normalizar por Dominic Mazzoni"
+#: ../src/commands/CommandManager.cpp:323
+#, c-format
+msgid "Plugins 1 to %i"
+msgstr "Plugins 1 a %i"
-#: ../src/effects/Normalize.cpp:244
-msgid "Normalize maximum amplitude to -3 dB"
-msgstr "Normalizar máxima amplitude a -3 dB"
+#: ../src/commands/CommandManager.cpp:337
+#, c-format
+msgid "Plugins %i to %i"
+msgstr "Plugins %i a %i"
-#: ../src/effects/Normalize.h:34
-msgid "Normalize..."
-msgstr "Normalizar..."
+#: commands/CommandManager.cpp:923
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
+msgstr ""
-#: ../src/effects/Normalize.h:38
-msgid "Normalizing..."
-msgstr "Normalizando..."
+#: commands/CommandManager.cpp:927
+msgid "You can only do this when playing and recording are\n"
+" stopped. [Pausing is not sufficient.]"
+msgstr ""
-#: ../src/export/ExportMP3.cpp:1335
-msgid "Not a valid or supported MP3 encoding library!"
-msgstr "Non é unha librerÃa de codificación MP3 soportada!"
+#: commands/CommandManager.cpp:929
+msgid "You must first select some stereo audio for this\n"
+" to use. [You can't use this with mono.]"
+msgstr ""
-#: ../src/import/ImportOGG.cpp:127
-msgid "Not an Ogg Vorbis file"
-msgstr "Non é un arquivo Ogg Vorbis"
+#: commands/CommandManager.cpp:931
+msgid "You must first select some audio for this to use."
+msgstr ""
-#: ../src/FreqWindow.cpp:463
-msgid "Not enough data selected."
-msgstr "Non hai suficiente información seleccionada."
+#: commands/CommandManager.cpp:933
+msgid "You must first select some audio for this\n"
+" to use. [Selecting other kinds of track won't work.]"
+msgstr ""
-#: ../src/NoteTrack.cpp:30
-msgid "Note Track"
-msgstr "Pista de notas"
+#: commands/CommandManager.cpp:938
+msgid "Disallowed"
+msgstr ""
-#: ../src/prefs/KeyConfigPrefs.cpp:115
-msgid "Note: Pressing Cmd+Q will quit. All other keys are valid."
-msgstr "Nota: Premendo Cmd+Q sairase. O resto das teclas son válidas."
+#: ../src/commands/CommandManager.cpp:640
+#, c-format
+msgid "Loaded %d keyboard shortcuts\n"
+msgstr "%d accesos directos cargados\n"
-#: ../src/Menus.cpp:1655
-msgid "Nothing to redo"
-msgstr "Nada para refacer"
+#: ../src/commands/CommandManager.cpp:643
+msgid "Loading keyboard shortcuts"
+msgstr "Cargando accesos directos"
-#: ../src/Menus.cpp:1636
-msgid "Nothing to undo"
-msgstr "Nada para desfacer"
+#: ../src/effects/Amplify.cpp:34
+#, c-format
+msgid "Applied effect: %s %.1f dB"
+msgstr "Aplicado o efecto: %s %.1f dB"
-#: ../src/effects/Repeat.cpp:229
-msgid "Number of times to repeat: "
-msgstr "Número de veces a repetir: "
+#: ../src/effects/Amplify.cpp:63
+msgid "Amplify"
+msgstr "Amplificar"
-#: ../src/export/ExportMultiple.cpp:655
-msgid "Numbering consecutively"
-msgstr "Numerando consecutivamente"
+#: effects/Amplify.cpp:156 effects/Compressor.cpp:487
+#: effects/Normalize.cpp:341
+msgid "by Dominic Mazzoni"
+msgstr ""
-#: ../src/effects/nyquist/Nyquist.cpp:397
-msgid "Nyquist"
-msgstr "Nyquist"
+#: ../src/effects/Amplify.cpp:132
+msgid "Amplification (dB):"
+msgstr "Amplificación (dB):"
-#: ../src/effects/nyquist/Nyquist.cpp:398
-msgid "Nyquist Output: "
-msgstr "SaÃda Nyquist: "
+#: effects/Amplify.cpp:184
+msgid "Amplification dB"
+msgstr ""
-#: ../src/effects/nyquist/Nyquist.cpp:281
-msgid "Nyquist Prompt"
-msgstr "Comando Nyquist"
+#: ../src/effects/Amplify.cpp:152
+msgid "New Peak Amplitude (dB):"
+msgstr "Novo pico de amplitude (dB):"
-#: ../src/effects/nyquist/Nyquist.cpp:224
-msgid "Nyquist Prompt..."
-msgstr "Comando Nyquist..."
+#: ../src/effects/Amplify.cpp:164
+msgid "Allow clipping"
+msgstr "Permitir clipping"
-#: ../src/effects/nyquist/Nyquist.cpp:594
-msgid "Nyquist did not return audio.\n"
-msgstr "Nyquist non devolveu audio.\n"
+#: effects/Amplify.cpp:223 effects/Amplify.cpp:280 effects/Amplify.cpp:324
+msgid "-Infinity"
+msgstr ""
-#: ../src/effects/nyquist/Nyquist.cpp:556
-#, c-format
-msgid "Nyquist returned the value: %d"
-msgstr "Nyquist devolveu o valor: %d"
+#: ../src/effects/Amplify.h:47
+msgid "Amplify..."
+msgstr "Amplificar..."
-#: ../src/effects/nyquist/Nyquist.cpp:547
-#, c-format
-msgid "Nyquist returned the value: %f"
-msgstr "Nyquist devolveu o valor: %f"
+#: ../src/effects/Amplify.h:51
+msgid "Amplifying"
+msgstr "Amplificando"
-#: ../src/effects/nyquist/Nyquist.cpp:604
-msgid "Nyquist returned too many audio channels.\n"
-msgstr "Nyquist devolveu demasiadas canles de audio.\n"
+#: effects/AutoDuck.cpp:140
+msgid "You selected a track which does not contain audio. AutoDuck can only process audio tracks."
+msgstr ""
+
+#: effects/AutoDuck.cpp:141 effects/AutoDuck.cpp:153 effects/AutoDuck.cpp:467
+#: effects/AutoDuck.cpp:584
+msgid "Auto Duck"
+msgstr ""
+
+#: effects/AutoDuck.cpp:152
+msgid "Auto Duck needs a control track which must be placed below the selected track(s)."
+msgstr ""
-#: ../src/prefs/FileFormatPrefs.cpp:138
-msgid "OGG Export Setup"
-msgstr "Opcións de exportación a OGG"
+#: effects/AutoDuck.cpp:479
+msgid "Auto Duck by Markus Meyer"
+msgstr ""
+
+#: effects/AutoDuck.cpp:501
+msgid "Duck amount:"
+msgstr ""
-#: ../src/prefs/FileFormatPrefs.cpp:147
-msgid "OGG Quality:"
-msgstr "Calidade OGG:"
+#: effects/AutoDuck.cpp:506
+msgid "Maximum pause:"
+msgstr ""
+
+#. i18n-hint: Name of time display format that shows time in seconds
+#: effects/AutoDuck.cpp:508 effects/AutoDuck.cpp:513 effects/AutoDuck.cpp:518
+#: effects/AutoDuck.cpp:523 effects/AutoDuck.cpp:528 prefs/MidiIOPrefs.cpp:157
+#: prefs/MidiIOPrefs.cpp:159 prefs/MidiIOPrefs.cpp:181
+#: prefs/MidiIOPrefs.cpp:183 prefs/MidiIOPrefs.cpp:191
+#: prefs/PlaybackPrefs.cpp:62 prefs/PlaybackPrefs.cpp:76
+#: prefs/PlaybackPrefs.cpp:82 prefs/PlaybackPrefs.cpp:96
+#: prefs/PlaybackPrefs.cpp:102 widgets/TimeTextCtrl.cpp:264
+msgid "seconds"
+msgstr ""
+
+#: effects/AutoDuck.cpp:511
+msgid "Outer fade down length:"
+msgstr ""
+
+#: effects/AutoDuck.cpp:516
+msgid "Outer fade up length:"
+msgstr ""
+
+#: effects/AutoDuck.cpp:521
+msgid "Inner fade down length:"
+msgstr ""
+
+#: effects/AutoDuck.cpp:526
+msgid "Inner fade up length:"
+msgstr ""
+
+#: effects/AutoDuck.cpp:535 effects/Compressor.cpp:506
+#, fuzzy
+msgid "Threshold:"
+msgstr "Umbral: "
+
+#: effects/AutoDuck.cpp:584
+msgid "Please enter valid values."
+msgstr ""
+
+#: effects/AutoDuck.cpp:719
+msgid "Preview not available"
+msgstr ""
+
+#: effects/AutoDuck.h:98
+msgid "Auto Duck..."
+msgstr ""
+
+#: effects/AutoDuck.h:115
+msgid "Processing Auto Duck..."
+msgstr ""
#: ../src/LangChoice.cpp:94 ../src/Tags.cpp:721
#: ../src/effects/VST/VSTEffect.cpp:98 ../src/effects/VST/VSTEffect.cpp:455
@@ -2861,457 +4142,1299 @@ msgstr "Calidade OGG:"
msgid "OK"
msgstr "Aceptar"
-#: ../src/AboutDialog.cpp:63
-msgid "Ogg Vorbis importing disabled"
-msgstr "Importación Ogg Vorbis deshabilitada"
+#: ../src/effects/BassBoost.cpp:36
+#, c-format
+msgid "Applied effect: %s frequency = %.0f Hz, boost = %.0f dB"
+msgstr "Efecto aplicado: frecuencia %s = %.0f Hz, realce = %.0f dB"
-#: ../src/AboutDialog.cpp:61
-msgid "Ogg Vorbis importing enabled"
-msgstr "Importación Ogg Vorbis habilitada"
+#: ../src/effects/BassBoost.cpp:69
+msgid "Bass Boost"
+msgstr "BassBoost (Realzar graves)"
-#: ../src/export/Export.cpp:366
-msgid "Ogg Vorbis support is not included in this build of Audacity"
-msgstr "Soporte de Ogg Vorbis non está incluido nesta versión de Audacity"
+#: effects/BassBoost.cpp:182 effects/Phaser.cpp:219 effects/Wahwah.cpp:214
+msgid "by Nasca Octavian Paul"
+msgstr ""
-#: ../src/export/ExportMP3.cpp:866
-msgid "Only LAMELib|LAMELib|Shared Libraries (*)|*"
-msgstr "Só LAMELib|LAMELib|LibrerÃas Compartidas (*)|*"
+#: ../src/effects/BassBoost.cpp:286
+msgid "Frequency (Hz):"
+msgstr "Frecuencia (Hz):"
-#: ../src/export/ExportMP3.cpp:552
-msgid "Only LameLib|LameLib|All Files (*)|*"
-msgstr "Só LameLib|LameLib|Tódolos Arquivos (*)|*"
+#: effects/BassBoost.cpp:205
+msgid "Frequency Hertz"
+msgstr ""
-#: ../src/export/ExportMP3.cpp:1116
-msgid ""
-"Only lame_enc.dll|lame_enc.dll|Dynamically Linked Libraries (*.dll)|*.dll|"
-"All Files (*.*)|*"
+#: ../src/effects/BassBoost.cpp:302
+msgid "Boost (dB):"
+msgstr "Realzar (dB):"
+
+#: effects/BassBoost.cpp:218
+msgid "Boost dB"
msgstr ""
-"Só lame_enc.dll|lame_enc.dll|Dynamically Linked Libraries (*.dll)|*.dll|"
-"Tódolos Arquivos (*.*)|*"
-#: ../src/export/ExportMP3.cpp:255
-msgid ""
-"Only libmp3lame.so|libmp3lame.so|Primary Shared Object files (*.so)|*.so|"
-"Extended Libraries (*.so*)|*.so*|All Files (*)|*"
+#: effects/BassBoost.h:35
+#, fuzzy
+msgid "BassBoost..."
+msgstr "BassBoost (Realzar graves)..."
+
+#: ../src/effects/BassBoost.h:48
+msgid "Boosting Bass Frequencies"
+msgstr "Realzando frecuencias baixas"
+
+#: effects/ChangeLength.h:26
+msgid "Change Length..."
msgstr ""
-"Só libmp3lame.so|libmp3lame.so|Primary Shared Object (*.so)|*.so|Extended "
-"Libraries (*.so*)|*.so*|Tódolos Arquivos (*)|*"
-#: ../src/Legacy.cpp:338
-msgid "Opening Audacity Project"
-msgstr "Abrindo proxecto de Audacity"
+#: effects/ChangeLength.h:34
+msgid "Changing Length..."
+msgstr ""
-#: ../src/effects/AvcCompressor.cpp:657
-msgid "Original Value"
-msgstr "Valor orixinal"
+#: ../src/effects/ChangePitch.cpp:56
+#, c-format
+msgid "Applied effect: %s %.2f semitones"
+msgstr "Efecto aplicado: %s %.2f semitonos"
-#: ../src/AboutDialog.cpp:208
-msgid "Other contributors:"
-msgstr "Outros colaboradores:"
+#: ../src/effects/ChangePitch.cpp:119
+msgid "Change Pitch"
+msgstr "Cambiar tono"
-#: ../src/AStatus.cpp:81 ../src/TrackPanel.cpp:822
-#: ../src/prefs/FileFormatPrefs.cpp:105 ../src/prefs/QualityPrefs.cpp:91
-msgid "Other..."
-msgstr "Outro..."
+#: ../src/effects/ChangePitch.cpp:242
+msgid "Change Pitch without Changing Tempo"
+msgstr "Cambiar tono sen cambiar tempo"
-#: ../src/Project.cpp:2706
-msgid "Out of disk space"
-msgstr "Sen espacio en disco"
+#: ../src/effects/ChangePitch.cpp:247 ../src/effects/ChangeSpeed.cpp:287
+#: ../src/effects/ChangeTempo.cpp:164
+msgid "by Vaughan Johnson && Dominic Mazzoni"
+msgstr "por Vaughan Johnson && Dominic Mazzoni"
-#: ../src/AudacityApp.cpp:369
-msgid "Output Meter"
-msgstr "Medidor de saÃda"
+#: ../src/effects/ChangePitch.cpp:252 ../src/effects/ChangeTempo.cpp:169
+msgid "using SoundTouch, by Olli Parviainen"
+msgstr "usando SoundTouch, por Olli Parviainen"
-#: ../src/MixerToolBar.cpp:135
-msgid "Output Volume"
-msgstr "Volume de saÃda"
+#: effects/ChangePitch.cpp:269
+msgid "Pitch:"
+msgstr ""
-#: ../src/MeterToolBar.cpp:66
-msgid "Output level meter"
-msgstr "Medidor de nÃvel de saÃda"
+#: effects/ChangePitch.cpp:274
+msgid "From:"
+msgstr ""
-#: ../src/export/ExportMultiple.cpp:677
-msgid "Overwrite existing files"
-msgstr "Sobreescribir arquivos existentes"
+#: effects/ChangePitch.cpp:275
+msgid "From Pitch"
+msgstr ""
-#. i18n-hint: fps is "frames per second"
-#: ../src/FormatSelection.cpp:32
-msgid "PAL frames 25 fps"
-msgstr "Cadros PAL 25 cps"
+#: effects/ChangePitch.cpp:286
+msgid "Up"
+msgstr ""
-#. i18n-hint: fps is "frames per second",
-#. and the other letters are for hours, minutes, seconds, frames
-#: ../src/FormatSelection.cpp:35
-msgid "PAL h:mm:ss:ff 25 fps"
-msgstr "PAL h:mm:ss:cc 25 cps"
+#: effects/ChangePitch.cpp:289
+msgid "Down"
+msgstr ""
-#: ../src/Menus.cpp:192
-msgid "Page Setup..."
-msgstr "Configuración de páxina...."
+#: effects/ChangePitch.cpp:299
+msgid "To:"
+msgstr ""
-#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: ../src/TrackPanel.cpp:2807 ../src/TrackPanel.cpp:4733
-msgid "Pan"
-msgstr "Pan"
+#: effects/ChangePitch.cpp:300
+msgid "To Pitch"
+msgstr ""
-#: ../src/EditToolBar.cpp:152 ../src/Menus.cpp:1818 ../src/Menus.cpp:1862
-msgid "Paste"
-msgstr "Pegar"
+#: ../src/effects/ChangePitch.cpp:299
+msgid "Semitones (half-steps):"
+msgstr "Semitonos (medios-pasos):"
-#: ../src/Menus.cpp:1818 ../src/Menus.cpp:1862
-msgid "Pasted from the clipboard"
-msgstr "Pegar dende o portapapeis"
+#: effects/ChangePitch.cpp:316
+msgid "Semitones in half-steps"
+msgstr ""
-#: ../src/ControlToolBar.cpp:470
-msgid "Pause"
-msgstr "Pausa"
+#: effects/ChangePitch.cpp:326 effects/ChangeSpeed.cpp:370
+#: effects/ChangeTempo.cpp:209 effects/ChangeTempo.cpp:222
+msgid "from"
+msgstr ""
-#: ../src/Menus.cpp:561
-msgid "Pause\tP"
-msgstr "Pausa\tP"
+#: effects/ChangePitch.cpp:327
+msgid "From frequency in hertz"
+msgstr ""
-#: ../src/prefs/MousePrefs.cpp:100 ../src/prefs/MousePrefs.cpp:101
-#: ../src/prefs/MousePrefs.cpp:102 ../src/prefs/MousePrefs.cpp:103
-msgid "Pencil"
-msgstr "Lapis"
+#: ../src/effects/ChangePitch.cpp:284 ../src/effects/ChangePitch.cpp:330
+#: ../src/effects/ChangeSpeed.cpp:351 ../src/effects/ChangeTempo.cpp:223
+#: ../src/effects/ChangeTempo.cpp:254
+msgid "to"
+msgstr "a"
+
+#: effects/ChangePitch.cpp:332
+msgid "To frequency in seconds"
+msgstr ""
#: ../src/effects/ChangePitch.cpp:353 ../src/effects/ChangeSpeed.cpp:305
#: ../src/effects/ChangeTempo.cpp:182
msgid "Percent Change:"
msgstr "Cambio porcentual:"
-#: ../src/effects/Echo.h:40
-msgid "Performing Echo"
-msgstr "Aplicando Eco"
+#: effects/ChangePitch.cpp:343 effects/ChangePitch.cpp:356
+#: effects/ChangeSpeed.cpp:359 effects/ChangeTempo.cpp:198
+msgid "Percent Change"
+msgstr ""
-#: ../src/effects/ladspa/LadspaEffect.cpp:137
+#: ../src/effects/ChangePitch.h:31
+msgid "Change Pitch..."
+msgstr "Cambiar tono..."
+
+#: ../src/effects/ChangePitch.h:35
+msgid "Changing Pitch"
+msgstr "Cambiando tono"
+
+#: ../src/effects/ChangeSpeed.cpp:40 ../src/effects/ChangeTempo.cpp:43
#, c-format
-msgid "Performing Effect: %s"
-msgstr "Aplicando efecto: %s"
+msgid "Applied effect: %s %.1f%%"
+msgstr "Efecto aplicado: %s %.1f%%"
-#: ../src/effects/Equalization.h:42
-msgid "Performing Equalization"
-msgstr "Aplicando ecualización"
+#: ../src/effects/ChangeSpeed.cpp:47
+msgid "Change Speed"
+msgstr "Cambiar velocidade"
-#: ../src/effects/Filter.h:40
-msgid "Performing FFT Filter"
-msgstr "Aplicando filtro FFT"
+#. i18n-hint: n/a is an English
+#. abbreviation meaning "not
+#. applicable" (in other words,
+#. unimportant, not relevant).
+#: ../src/effects/ChangeSpeed.cpp:338
+msgid "n/a"
+msgstr "non dispoñible"
-#: ../src/effects/Repeat.h:38
-msgid "Performing Repeat"
-msgstr "Aplicando repetición"
+#: ../src/effects/ChangeSpeed.cpp:282
+msgid "Change Speed, affecting both Tempo and Pitch"
+msgstr "Cambiar velocidade, afectando tempo e tono"
-#: ../src/effects/Phaser.cpp:59
-msgid "Phaser"
-msgstr "Fase"
+#: ../src/effects/ChangeSpeed.cpp:292
+msgid "using SampleRate, by Erik de Castro Lopo"
+msgstr "usando SampleRate, por Erik de Castro Lopo"
-#: ../src/effects/Phaser.cpp:448
-msgid "Phaser by Nasca Octavian Paul"
-msgstr "Fase por Nasca Octavian Paul"
+#: effects/ChangeSpeed.cpp:367
+msgid "Standard Vinyl RPM:"
+msgstr ""
-#: ../src/effects/Phaser.h:41
-msgid "Phaser..."
-msgstr "Fase..."
+#: effects/ChangeSpeed.cpp:371
+msgid "From RPM"
+msgstr ""
-#: ../src/TrackPanel.cpp:838
-msgid "Pitch (EAC)"
-msgstr "Tono (EAC)"
+#: effects/ChangeSpeed.cpp:376
+msgid "To RPM"
+msgstr ""
-#: ../src/effects/ChangePitch.cpp:262
-msgid "Pitch: from"
-msgstr "Tono: dende"
+#: ../src/effects/ChangeSpeed.h:37
+msgid "Change Speed..."
+msgstr "Cambiar velocidade..."
-#: ../src/ControlToolBar.cpp:468
-msgid "Play (Shift for loop-play)"
-msgstr "Reproducir (Maiús para reproducir cÃclicamente)"
+#: ../src/effects/ChangeSpeed.h:40
+msgid "Changing Speed"
+msgstr "Cambiando velocidade"
-#: ../src/Menus.cpp:566
-msgid "Play Looped\tL"
-msgstr "Reproducir cÃclicamente\tL"
+#: ../src/effects/ChangeTempo.cpp:62
+msgid "Change Tempo"
+msgstr "Cambiar tempo"
-#: ../src/Menus.cpp:567
-msgid "Play Looped\tShift+Spacebar"
-msgstr "Reproducir cÃclicamente\tMaiús-Barra espaciadora"
+#: ../src/effects/ChangeTempo.cpp:159
+msgid "Change Tempo without Changing Pitch"
+msgstr "Cambiar tempo sen cambiar tono"
-#: ../src/Menus.cpp:564
-msgid "Play One Second\t1"
-msgstr "Reproducir un segundo\t1"
+#: effects/ChangeTempo.cpp:206
+msgid "Beats per minute:"
+msgstr ""
-#: ../src/Menus.cpp:565
-msgid "Play To Selection\tB"
-msgstr "Reproducir a selección\tB"
+#: effects/ChangeTempo.cpp:210
+msgid "From beats per minute"
+msgstr ""
-#: ../src/prefs/AudioIOPrefs.cpp:232
-msgid "Play other tracks while recording new one"
-msgstr "Reproducir outras pistas mentras se grava unha nova"
+#: effects/ChangeTempo.cpp:215
+msgid "To beats per minute"
+msgstr ""
-#: ../src/Menus.cpp:559
-msgid "Play/Stop\tSpacebar"
-msgstr "Reproducir/Parar\tBarra Espaciadora"
+#: effects/ChangeTempo.cpp:219
+msgid "Length (seconds):"
+msgstr ""
-#: ../src/prefs/AudioIOPrefs.cpp:80
-msgid "Playback"
-msgstr "Reproducción"
+#: effects/ChangeTempo.cpp:223
+msgid "From length in seconds"
+msgstr ""
-#: ../src/commands/CommandManager.cpp:337
+#: effects/ChangeTempo.cpp:228
+msgid "To length in seconds"
+msgstr ""
+
+#: ../src/effects/ChangeTempo.h:40
+msgid "Change Tempo..."
+msgstr "Cambiar tempo..."
+
+#: ../src/effects/ChangeTempo.h:44
+msgid "Changing Tempo"
+msgstr "Cambiando tempo"
+
+#: effects/ClickRemoval.cpp:314
+msgid "Click Removal"
+msgstr ""
+
+#: ../src/effects/ClickRemoval.cpp:317
+msgid "Click and Pop Removal by Craig DeForest"
+msgstr "Eliminación de Click e Pop por Craig DeForest"
+
+#: effects/ClickRemoval.cpp:341
+msgid "Select threshold (lower is more sensitive):"
+msgstr ""
+
+#: effects/ClickRemoval.cpp:350
+msgid "Select threshold"
+msgstr ""
+
+#: effects/ClickRemoval.cpp:358
+msgid "Max spike width (higher is more sensitive):"
+msgstr ""
+
+#: effects/ClickRemoval.cpp:367
+msgid "Max spike width"
+msgstr ""
+
+#: ../src/effects/ClickRemoval.h:42
+msgid "Click Removal..."
+msgstr "Eliminación de ruido...."
+
+#: ../src/effects/ClickRemoval.h:46
+msgid "Removing clicks and pops..."
+msgstr "Eliminando ruido non desexado..."
+
+#: ../src/effects/Compressor.cpp:42
+msgid "Dynamic Range Compressor"
+msgstr "Compresor de rango dinámico"
+
+#: effects/Compressor.cpp:510
+msgid "Threshold"
+msgstr ""
+
+#: effects/Compressor.cpp:514
+msgid "Ratio:"
+msgstr ""
+
+#: effects/Compressor.cpp:518
+msgid "Ratio"
+msgstr ""
+
+#: effects/Compressor.cpp:522
+#, fuzzy
+msgid "Attack Time:"
+msgstr "Tempo de ataque: "
+
+#: effects/Compressor.cpp:526
+msgid "Attack Time"
+msgstr ""
+
+#: effects/Compressor.cpp:530
+msgid "Decay Time:"
+msgstr ""
+
+#: effects/Compressor.cpp:534
+msgid "Decay Time"
+msgstr ""
+
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
+msgstr ""
+
+#: effects/Compressor.cpp:575
#, c-format
-msgid "Plugins %i to %i"
-msgstr "Plugins %i a %i"
+#, fuzzy
+msgid "Threshold %d dB"
+msgstr "Umbral: %d dB"
-#: ../src/commands/CommandManager.cpp:323
+#: effects/Compressor.cpp:576
#, c-format
-msgid "Plugins 1 to %i"
-msgstr "Plugins 1 a %i"
+msgid "%3d dB"
+msgstr ""
-#: ../src/effects/PopClick.h:29
-msgid "Pop and Click Removal..."
-msgstr "Eliminación de Pop e Click..."
+#: effects/Compressor.cpp:579
+#, c-format
+msgid "Ratio %.0f to 1"
+msgstr ""
-#: ../src/effects/Equalization.cpp:700
-msgid "Predefined:"
-msgstr "Predefinido:"
+#: effects/Compressor.cpp:580
+#, c-format
+msgid "%.0f:1"
+msgstr ""
-#: ../src/effects/Effect.cpp:247 ../src/effects/Equalization.cpp:719
-#: ../src/effects/Phaser.cpp:566 ../src/effects/Wahwah.cpp:553
-msgid "Preview"
-msgstr "Previsualización"
+#: effects/Compressor.cpp:583
+#, c-format
+msgid "Ratio %.1f to 1"
+msgstr ""
-#: ../src/Menus.cpp:557
-msgid "Previous Tool\tA"
-msgstr "Ferramenta anterior\tA"
+#: effects/Compressor.cpp:584
+#, c-format
+msgid "%.1f:1"
+msgstr ""
-#: ../src/AboutDialog.cpp:164 ../src/AboutDialog.cpp:168
-msgid "Primary developer"
-msgstr "Desenrolador principal"
+#: effects/Compressor.cpp:587
+#, c-format
+#, fuzzy
+msgid "Attack Time %.1f secs"
+msgstr "Tempo de ataque: %.1f segs"
-#: ../src/Menus.cpp:1618
-msgid "Print"
-msgstr "Imprimir"
+#: effects/Compressor.cpp:588 effects/Compressor.cpp:591
+#, c-format
+msgid "%.1f secs"
+msgstr ""
-#: ../src/Menus.cpp:193
-msgid "Print..."
-msgstr "Imprimir...."
+#: effects/Compressor.cpp:590
+#, c-format
+msgid "Decay Time %.1f secs"
+msgstr ""
-#: ../src/AboutDialog.cpp:95
-msgid "Program build date:"
-msgstr "Data de contrucción do programa:"
+#: ../src/effects/Compressor.h:36
+msgid "Compressor..."
+msgstr "Compresor..."
-#: ../src/AboutDialog.cpp:172 ../src/AboutDialog.cpp:176
-#: ../src/AboutDialog.cpp:180 ../src/AboutDialog.cpp:184
-msgid "Programmer"
-msgstr "Programador"
+#: ../src/effects/Compressor.h:40
+msgid "Applying Dynamic Range Compression..."
+msgstr "Aplicando compresión de rango dinámico..."
-#: ../src/DirManager.cpp:157
-msgid "Progress"
-msgstr "Progreso"
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
-#: ../src/AboutDialog.cpp:160
-msgid "Project leader and primary programmer"
-msgstr "Lider do proxecto e programador principal"
+#: effects/Contrast.cpp:88
+msgid "Contrast Tool Foreground"
+msgstr ""
-#: ../src/AStatus.cpp:227
-msgid "Project rate:"
-msgstr "Frecuencia:"
+#: effects/Contrast.cpp:88
+msgid "Foreground times selected.\n"
+"Now select background and use Ctrl+Shift+T or menu again."
+msgstr ""
-#: ../src/prefs/PrefsDialog.cpp:85
-msgid "Quality"
-msgstr "Calidade"
+#: effects/Contrast.cpp:144
+msgid "Start time after after end time!\n"
+"Please enter reasonable times."
+msgstr ""
-#: ../src/Mix.cpp:125
-msgid "Quick Mix"
-msgstr "Mestura rápida"
+#: effects/Contrast.cpp:154
+msgid "Times are not reasonable!\n"
+"Please enter reasonable times."
+msgstr ""
+
+#: effects/Contrast.cpp:276
+msgid "Contrast Analyzer"
+msgstr ""
-#: ../src/Menus.cpp:2783
-msgid "Quick mix"
-msgstr "Mestura rápida"
+#: effects/Contrast.cpp:279
+msgid "Parameters"
+msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:99
-msgid "Quit Audacity upon closing last window"
-msgstr "SaÃr de Audacity ao pechar a última fiestra"
+#: effects/Contrast.cpp:286 effects/ToneGen.cpp:312
+#: toolbars/ControlToolBar.cpp:181
+msgid "Start"
+msgstr ""
-#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
-#. i18n-hint: One-letter abbreviation for Right, in VU Meter
-#: ../src/widgets/ASlider.cpp:332 ../src/widgets/Meter.cpp:167
-msgid "R"
-msgstr "R"
+#: effects/Contrast.cpp:287 effects/ToneGen.cpp:313
+#: toolbars/ControlToolBar.cpp:184 toolbars/SelectionBar.cpp:156
+#: toolbars/SelectionBar.cpp:159 toolbars/SelectionBar.cpp:262
+msgid "End"
+msgstr ""
-#: ../src/TrackPanel.cpp:4191
-msgid "Rate Change"
-msgstr "Cambio de frecuencia"
+#: effects/Contrast.cpp:290
+msgid "Volume "
+msgstr ""
+
+#: effects/Contrast.cpp:293
+msgid "Foreground:"
+msgstr ""
+
+#: effects/Contrast.cpp:305
+msgid "Foreground start time"
+msgstr ""
+
+#: effects/Contrast.cpp:323
+msgid "Foreground end time"
+msgstr ""
+
+#: effects/Contrast.cpp:329 effects/Contrast.cpp:373 effects/Contrast.cpp:437
+#: effects/Contrast.cpp:448
+msgid "Measured"
+msgstr ""
+
+#: effects/Contrast.cpp:331 effects/Contrast.cpp:375
+msgid "Use selection"
+msgstr ""
+
+#: effects/Contrast.cpp:336
+msgid "Background:"
+msgstr ""
+
+#: effects/Contrast.cpp:349
+msgid "Background start time"
+msgstr ""
+
+#: effects/Contrast.cpp:367
+msgid "Background end time"
+msgstr ""
+
+#: effects/Contrast.cpp:384
+msgid "Result"
+msgstr ""
+
+#: effects/Contrast.cpp:388
+msgid "Contrast Result:"
+msgstr ""
+
+#: effects/Contrast.cpp:391
+msgid "Reset"
+msgstr ""
+
+#: effects/Contrast.cpp:392
+msgid "Difference:"
+msgstr ""
+
+#: ../src/AboutDialog.cpp:150
+msgid "Information"
+msgstr "Información"
+
+#: effects/Contrast.cpp:405
+msgid "For measuring rms volume differences between two selections of audio."
+msgstr ""
+
+#: effects/Contrast.cpp:406
+msgid "Help for WCAG2 Audio Contrast Analyzer"
+msgstr ""
+
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
+msgstr ""
+
+#: effects/Contrast.cpp:474 effects/Contrast.cpp:480 effects/Contrast.cpp:486
+#: effects/Contrast.cpp:492
+msgid "Measure"
+msgstr ""
+
+#: effects/Contrast.cpp:531
+msgid "No foreground to measure"
+msgstr ""
-#: ../src/effects/Compressor.cpp:446
-msgid "Ratio: "
-msgstr "Proporción: "
+#: effects/Contrast.cpp:536
+msgid "Measured foreground level"
+msgstr ""
-#: ../src/effects/Compressor.cpp:523
+#: effects/Contrast.cpp:537 effects/Contrast.cpp:547
#, c-format
-msgid "Ratio: %.0f:1"
-msgstr "Proporción: %.0f:1"
+msgid "%.1f dB"
+msgstr ""
+
+#: effects/Contrast.cpp:541
+msgid "No background to measure"
+msgstr ""
+
+#: effects/Contrast.cpp:546
+msgid "Measured background level"
+msgstr ""
+
+#: effects/Contrast.cpp:552
+msgid "WCAG2 Pass"
+msgstr ""
+
+#: effects/Contrast.cpp:554
+msgid "WCAG2 Fail"
+msgstr ""
+
+#: effects/Contrast.cpp:555
+msgid "Current difference"
+msgstr ""
-#: ../src/effects/Compressor.cpp:525
+#: effects/Contrast.cpp:556
#, c-format
-msgid "Ratio: %.1f:1"
-msgstr "Proporción: %.1f:1"
+msgid "%.1f dB Average rms"
+msgstr ""
-#. i18n-hint: This refers to files that are opened directly
-#. without looking at the file header. Same as "Import Raw"
-#: ../src/Project.cpp:2228
-msgid "Raw"
-msgstr "En bruto"
+#: effects/Contrast.cpp:561
+msgid "Please enter valid times."
+msgstr ""
-#: ../src/prefs/FileFormatPrefs.cpp:79
-msgid "Read directly from the original file (faster)"
-msgstr "Ler directamente dende o arquivo orixinal (máis rápido)"
+#: effects/Contrast.cpp:571
+msgid "Export Contrast Result As:"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:171
-msgid "Real-time dither:"
-msgstr "Fusionado en tempo real:"
+#: effects/Contrast.cpp:592
+msgid "WCAG 2.0 Success Criteria 1.4.7 Contrast Results"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "Conversor de frecuencia de mostreo en tempo real:"
+#: effects/Contrast.cpp:594
+#, c-format
+msgid "Filename = %s."
+msgstr ""
-#: ../src/Menus.cpp:154
-msgid "Recent &Files..."
-msgstr "A&rquivos recentes..."
+#: effects/Contrast.cpp:596
+msgid "Foreground"
+msgstr ""
-#: ../src/ControlToolBar.cpp:469 ../src/Project.cpp:1707
-#: ../src/TrackPanel.cpp:1208
-msgid "Record"
-msgstr "Gravar"
+#: effects/Contrast.cpp:601 effects/Contrast.cpp:618
+#, c-format
+msgid "Time started = %2d hour(s), %2d minute(s), %.2f seconds."
+msgstr ""
-#: ../src/Menus.cpp:562
-msgid "Record\tR"
-msgstr "Gravar\tR"
+#: effects/Contrast.cpp:606 effects/Contrast.cpp:623
+#, c-format
+msgid "Time ended = %2d hour(s), %2d minute(s), %.2f seconds."
+msgstr ""
-#: ../src/Project.cpp:1707 ../src/TrackPanel.cpp:1208
-msgid "Recorded Audio"
-msgstr "Audio gardado"
+#: effects/Contrast.cpp:608 effects/Contrast.cpp:625
+#, c-format
+msgid "Average rms = %.1f dB."
+msgstr ""
-#: ../src/prefs/AudioIOPrefs.cpp:148
-msgid "Recording"
-msgstr "Gravación"
+#: effects/Contrast.cpp:610 effects/Contrast.cpp:627
+msgid "Average rms = dB."
+msgstr ""
+
+#: effects/Contrast.cpp:613
+msgid "Background"
+msgstr ""
+
+#: effects/Contrast.cpp:629
+msgid "Results"
+msgstr ""
-#: ../src/Project.cpp:2694
+#: effects/Contrast.cpp:631
#, c-format
-msgid "Recording time remaining: %d hours and %d minutes"
-msgstr "Tempo restante de gravación: %d horas e %d minutos"
+msgid "Difference = %.1f Average rms dB."
+msgstr ""
+
+#: effects/Contrast.cpp:633
+msgid "Success Criteria 1.4.7 of WCAG 2.0: Pass"
+msgstr ""
+
+#: effects/Contrast.cpp:635
+msgid "Success Criteria 1.4.7 of WCAG 2.0: Fail"
+msgstr ""
+
+#: effects/Contrast.cpp:638
+msgid "Data gathered"
+msgstr ""
+
+#: effects/DtmfGen.cpp:56
+msgid "DTMF Tone Generator"
+msgstr ""
+
+#: effects/DtmfGen.cpp:421
+msgid "by Salvo Ventura (2006)"
+msgstr ""
+
+#: effects/DtmfGen.cpp:425
+msgid "DTMF sequence:"
+msgstr ""
+
+#: ../src/effects/ToneGen.cpp:293
+msgid "Amplitude (0-1)"
+msgstr "Amplitude (0-1)"
-#: ../src/Project.cpp:2700
+#: effects/DtmfGen.cpp:430
+msgid "Duration:"
+msgstr ""
+
+#: effects/DtmfGen.cpp:452
+msgid "Tone/silence ratio:"
+msgstr ""
+
+#: effects/DtmfGen.cpp:462
+msgid "Duty cycle:"
+msgstr ""
+
+#: effects/DtmfGen.cpp:464
+msgid "Tone duration:"
+msgstr ""
+
+#: effects/DtmfGen.cpp:465 effects/DtmfGen.cpp:467 effects/DtmfGen.cpp:543
+#: effects/DtmfGen.cpp:544
+msgid "ms"
+msgstr ""
+
+#: effects/DtmfGen.cpp:466
+msgid "Silence duration:"
+msgstr ""
+
+#: effects/DtmfGen.h:40
+msgid "DTMF Tones..."
+msgstr ""
+
+#: effects/DtmfGen.h:54
#, c-format
-msgid "Recording time remaining: %d minutes"
-msgstr "Tempo restante de gravación: %d minutos"
+msgid "Applied effect: Generate DTMF tones, %.6lf seconds"
+msgstr ""
-#: ../src/Project.cpp:2703
+#: effects/DtmfGen.h:58
+msgid "Generating DTMF tones"
+msgstr ""
+
+#: ../src/effects/Echo.cpp:33
#, c-format
-msgid "Recording time remaining: %d seconds"
-msgstr "Tempo restante de gravación: %d segundos"
+msgid "Applied effect: %s delay = %f seconds, decay factor = %f"
+msgstr "Efecto aplicado: %s retraso = %f segundos, factor de decaemento = %f"
-#: ../src/Project.cpp:2697
+#: ../src/effects/Echo.cpp:39 ../src/effects/Echo.cpp:177
+msgid "Echo"
+msgstr "Eco"
+
+#: ../src/effects/Echo.cpp:182
+msgid "by Dominic Mazzoni && Vaughan Johnson"
+msgstr "por Dominic Mazzoni && Vaughan Johnson"
+
+#: ../src/effects/Echo.cpp:192
+msgid "Delay time (seconds):"
+msgstr "Tempo de retraso (segundos):"
+
+#: ../src/effects/Echo.cpp:211
+msgid "Decay factor:"
+msgstr "Factor de decaemento:"
+
+#: ../src/effects/Echo.h:36
+msgid "Echo..."
+msgstr "Eco..."
+
+#: ../src/effects/Echo.h:40
+msgid "Performing Echo"
+msgstr "Aplicando Eco"
+
+#: effects/Effect.cpp:520
+msgid "Preparing preview"
+msgstr ""
+
+#: effects/Effect.cpp:550
+msgid "Previewing"
+msgstr ""
+
+#: ../src/ControlToolBar.cpp:721 ../src/effects/Effect.cpp:330
+msgid "Error while opening sound device. Please check the output device settings and the project sample rate."
+msgstr "Erro ao abrir dispositivo de son. Por favor verifique a configuración do dispositivo de saÃda e a frecuencia de mostreo do proxecto."
+
+#: ../src/effects/Effect.h:84
#, c-format
-msgid "Recording time remaining: 1 hour and %d minutes"
-msgstr "Tempo restante de gravación: 1 hora e %d minutos"
+msgid "Applied effect: %s"
+msgstr "Efecto aplicado: %s"
-#: ../src/prefs/QualityPrefs.cpp:161
-msgid "Rectangle"
-msgstr "Rectángulo"
+#: effects/Equalization.cpp:336
+msgid "B-spline"
+msgstr ""
-#: ../src/FFT.cpp:364
-msgid "Rectangular"
-msgstr "Rectangular"
+#: effects/Equalization.cpp:337
+msgid "Cosine"
+msgstr ""
-#: ../src/EditToolBar.cpp:160
-msgid "Redo"
-msgstr "Refacer"
+#: effects/Equalization.cpp:338
+msgid "Cubic"
+msgstr ""
-#: ../src/Menus.cpp:398
-msgid "Remo&ve Tracks"
-msgstr "E&liminar pistas"
+#: ../src/effects/Equalization.cpp:156
+msgid "Equalization"
+msgstr "Ecualización"
-#: ../src/effects/NoiseRemoval.cpp:455
-msgid "Remove Noise"
-msgstr "Eliminar ruido"
+#: effects/Equalization.cpp:1012
+msgid "Error loading EQ curve"
+msgstr ""
-#: ../src/Menus.cpp:3122
-msgid "Remove Track"
-msgstr "Eliminar pista"
+#: effects/Equalization.cpp:1051
+msgid "custom"
+msgstr ""
-#: ../src/effects/Normalize.cpp:239
-msgid "Remove any DC offset (center on 0 vertically)"
-msgstr "Eliminar calquera desaliñación vertical (centrar en cero)"
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr ""
-#: ../src/effects/ClickRemoval.cpp:363
-msgid "Remove clicks"
-msgstr "E&liminar click"
+#. i18n-hint: && in here is an escape character to get a single &
+#. * on screen, so keep it as is
+#: effects/Equalization.cpp:1123
+msgid "Equalization, by Martyn Shaw && Mitch Golden"
+msgstr ""
-#: ../src/Menus.cpp:3122
-msgid "Removed audio track(s)"
-msgstr "Pista(s) de audio eliminadas"
+#: effects/Equalization.cpp:1144
+msgid "Max dB"
+msgstr ""
-#: ../src/TrackPanel.cpp:2703
+#: effects/Equalization.cpp:1146
+msgid "Min dB"
+msgstr ""
+
+#: effects/Equalization.cpp:1219
+msgid "kHz"
+msgstr ""
+
+#: effects/Equalization.cpp:1236
+msgid "Draw curves"
+msgstr ""
+
+#: effects/Equalization.cpp:1241
+msgid "Graphic EQ"
+msgstr ""
+
+#: effects/Equalization.cpp:1255
+msgid "Linear frequency scale"
+msgstr ""
+
+#: effects/Equalization.cpp:1264
+msgid "Length of filter:"
+msgstr ""
+
+#: effects/Equalization.cpp:1285
+msgid "Select curve:"
+msgstr ""
+
+#: effects/Equalization.cpp:1295 effects/Equalization.cpp:2553
+#: export/ExportMultiple.cpp:924
+msgid "Save As..."
+msgstr ""
+
+#: effects/Equalization.cpp:1301
+msgid "Flat"
+msgstr ""
+
+#: effects/Equalization.cpp:2552
+msgid "Enter the desired name of the curve"
+msgstr ""
+
+#: effects/Equalization.cpp:2652 export/ExportFFmpegDialogs.cpp:1214
+msgid "Confirm Deletion"
+msgstr ""
+
+#: ../src/effects/Equalization.h:38
+msgid "Equalization..."
+msgstr "Ecualización..."
+
+#: ../src/effects/Equalization.h:42
+msgid "Performing Equalization"
+msgstr "Aplicando ecualización"
+
+#: ../src/effects/Fade.h:23
+msgid "Fade In"
+msgstr "Fade In (Aparecer)"
+
+#: ../src/effects/Fade.h:27
+msgid "Fading In"
+msgstr "Aplicando Fade In"
+
+#: ../src/effects/Fade.h:43
+msgid "Fade Out"
+msgstr "Fade Out (Desvanecer)"
+
+#: ../src/effects/Fade.h:47
+msgid "Fading Out"
+msgstr "Aplicando Fade Out"
+
+#: effects/FindClipping.cpp:50
+msgid "Detect clipping"
+msgstr ""
+
+#: effects/FindClipping.cpp:93
+msgid "Clipping"
+msgstr ""
+
+#: effects/FindClipping.cpp:213
+msgid "Find Clipping"
+msgstr ""
+
+#: effects/FindClipping.cpp:224
+msgid "by Leland Lucius"
+msgstr ""
+
+#: effects/FindClipping.cpp:236
+msgid "Start threshold (samples):"
+msgstr ""
+
+#: effects/FindClipping.cpp:240
+msgid "Stop threshold (samples):"
+msgstr ""
+
+#: effects/FindClipping.cpp:252
+msgid "Start and stop must be greater than 0."
+msgstr ""
+
+#: effects/FindClipping.h:37
+msgid "Find Clipping..."
+msgstr ""
+
+#: effects/FindClipping.h:54
+msgid "Detecting clipping"
+msgstr ""
+
+#: ../src/effects/Invert.h:27
+msgid "Invert"
+msgstr "Invertir"
+
+#: ../src/effects/Invert.h:31
+msgid "Inverting"
+msgstr "Invirtindo"
+
+#: effects/Leveller.cpp:192
+msgid "Leveller"
+msgstr ""
+
+#: effects/Leveller.cpp:205
+msgid "None-Skip"
+msgstr ""
+
+#: effects/Leveller.cpp:206
+msgid "Light"
+msgstr ""
+
+#: effects/Leveller.cpp:207
+msgid "Moderate"
+msgstr ""
+
+#: effects/Leveller.cpp:208
+msgid "Heavy"
+msgstr ""
+
+#: effects/Leveller.cpp:209
+msgid "Heavier"
+msgstr ""
+
+#: effects/Leveller.cpp:210
+msgid "Heaviest"
+msgstr ""
+
+#: effects/Leveller.cpp:214
+msgid "by Lynn Allan"
+msgstr ""
+
+#: effects/Leveller.cpp:224
+msgid "Degree of Leveling"
+msgstr ""
+
+#: effects/Leveller.cpp:228
+msgid "Degree of Leveling:"
+msgstr ""
+
+#: effects/Leveller.cpp:236
+msgid "Noise Threshold (Hiss/Hum/Ambient Noise)"
+msgstr ""
+
+#: effects/Leveller.cpp:240
+msgid "Threshold for Noise:"
+msgstr ""
+
+#: effects/Leveller.h:28
+msgid "Leveller..."
+msgstr ""
+
+#: effects/Leveller.h:42
+msgid "Applying Leveller..."
+msgstr ""
+
+#: effects/LoadEffects.cpp:102
+msgid "Generator"
+msgstr ""
+
+#: effects/LoadEffects.cpp:104
+msgid "Instrument"
+msgstr ""
+
+#: effects/LoadEffects.cpp:106
+msgid "Oscillator"
+msgstr ""
+
+#: effects/LoadEffects.cpp:108
+msgid "Utility"
+msgstr ""
+
+#: effects/LoadEffects.cpp:110
+msgid "Converter"
+msgstr ""
+
+#: effects/LoadEffects.cpp:112
+msgid "Analyser"
+msgstr ""
+
+#: effects/LoadEffects.cpp:116
+msgid "Simulator"
+msgstr ""
+
+#: effects/LoadEffects.cpp:118
+msgid "Delay"
+msgstr ""
+
+#: effects/LoadEffects.cpp:120
+msgid "Modulator"
+msgstr ""
+
+#: effects/LoadEffects.cpp:122
+msgid "Reverb"
+msgstr ""
+
+#: ../src/effects/Phaser.cpp:59
+msgid "Phaser"
+msgstr "Fase"
+
+#: effects/LoadEffects.cpp:126
+msgid "Flanger"
+msgstr ""
+
+#: effects/LoadEffects.cpp:128
+msgid "Chorus"
+msgstr ""
+
+#: effects/LoadEffects.cpp:130
+msgid "Filter"
+msgstr ""
+
+#: effects/LoadEffects.cpp:132
+msgid "Lowpass"
+msgstr ""
+
+#: effects/LoadEffects.cpp:134
+msgid "Bandpass"
+msgstr ""
+
+#: effects/LoadEffects.cpp:136
+msgid "Highpass"
+msgstr ""
+
+#: effects/LoadEffects.cpp:138
+msgid "Comb"
+msgstr ""
+
+#: effects/LoadEffects.cpp:140
+msgid "Allpass"
+msgstr ""
+
+#: effects/LoadEffects.cpp:142
+msgid "Equaliser"
+msgstr ""
+
+#: effects/LoadEffects.cpp:144
+msgid "Parametric"
+msgstr ""
+
+#: effects/LoadEffects.cpp:146
+msgid "Multiband"
+msgstr ""
+
+#: effects/LoadEffects.cpp:148
+msgid "Spectral Processor"
+msgstr ""
+
+#: effects/LoadEffects.cpp:150
+msgid "Pitch Shifter"
+msgstr ""
+
+#: effects/LoadEffects.cpp:152
+msgid "Amplifier"
+msgstr ""
+
+#: effects/LoadEffects.cpp:154
+msgid "Distortion"
+msgstr ""
+
+#: effects/LoadEffects.cpp:156
+msgid "Waveshaper"
+msgstr ""
+
+#: effects/LoadEffects.cpp:158
+msgid "Dynamics Processor"
+msgstr ""
+
+#: effects/LoadEffects.cpp:160
+msgid "Compressor"
+msgstr ""
+
+#: effects/LoadEffects.cpp:162
+msgid "Expander"
+msgstr ""
+
+#: effects/LoadEffects.cpp:164
+msgid "Limiter"
+msgstr ""
+
+#: effects/LoadEffects.cpp:166
+msgid "Gate"
+msgstr ""
+
+#: ../src/effects/NoiseRemoval.cpp:69
+msgid "Noise Removal"
+msgstr "Eliminación de ruido"
+
+#: effects/LoadEffects.cpp:201
+msgid "Pitch and Tempo"
+msgstr ""
+
+#: effects/LoadEffects.cpp:203
+msgid "Timeline Changer"
+msgstr ""
+
+#: effects/LoadEffects.cpp:205
+msgid "Time"
+msgstr ""
+
+#: effects/LoadEffects.cpp:207
+msgid "Onsets"
+msgstr ""
+
+#: effects/Noise.cpp:37
+msgid "White"
+msgstr ""
+
+#: effects/Noise.cpp:38
+msgid "Pink"
+msgstr ""
+
+#: effects/Noise.cpp:39
+msgid "Brown"
+msgstr ""
+
+#: effects/Noise.cpp:41
+msgid "Noise Generator"
+msgstr ""
+
+#: effects/Noise.cpp:189
+msgid "Noise type"
+msgstr ""
+
+#: effects/Noise.h:42
+msgid "Noise..."
+msgstr ""
+
+#: effects/Noise.h:56
#, c-format
-msgid "Removed track '%s.'"
-msgstr "Pista '%s' eliminada"
+msgid "Applied effect: Generate Noise, %.6lf seconds"
+msgstr ""
+
+#: effects/Noise.h:60
+msgid "Generating Noise"
+msgstr ""
+
+#: effects/NoiseRemoval.cpp:192
+#, c-format
+msgid "Could not open file:\n"
+" %s"
+msgstr ""
+
+#: effects/NoiseRemoval.cpp:277
+msgid "Attempt to run Noise Removal without a noise profile.\n"
+msgstr ""
+
+#: ../src/effects/NoiseRemoval.cpp:410
+msgid "Step 1"
+msgstr "Paso 1"
+
+#: effects/NoiseRemoval.cpp:820
+msgid "Select a few seconds of just noise so Audacity knows what to filter out,\n"
+"then click Get Noise Profile:"
+msgstr ""
+
+#: ../src/effects/NoiseRemoval.cpp:427
+msgid "Step 2"
+msgstr "Paso 2"
+
+#: effects/NoiseRemoval.cpp:822
+msgid "Select all of the audio you want filtered, choose how much noise you want\n"
+"filtered out, and then click 'OK' to remove noise.\n"
+msgstr ""
+
+#: ../src/effects/NoiseRemoval.cpp:403
+msgid "Noise Removal by Dominic Mazzoni"
+msgstr "Eliminación de ruido por Dominic Mazzoni"
+
+#: ../src/effects/NoiseRemoval.cpp:419
+msgid "Get Noise Profile"
+msgstr "Obter perfil de ruido"
+
+#: effects/NoiseRemoval.cpp:846
+msgid "Noise reduction (dB):"
+msgstr ""
+
+#: effects/NoiseRemoval.cpp:851
+msgid "Noise reduction"
+msgstr ""
+
+#: effects/NoiseRemoval.cpp:855
+msgid "Frequency smoothing (Hz):"
+msgstr ""
+
+#: effects/NoiseRemoval.cpp:860
+msgid "Frequency smoothing"
+msgstr ""
+
+#: effects/NoiseRemoval.cpp:864
+msgid "Attack/decay time (secs):"
+msgstr ""
+
+#: effects/NoiseRemoval.cpp:869
+msgid "Attach/decay time"
+msgstr ""
+
+#: ../src/effects/NoiseRemoval.h:38
+msgid "Noise Removal..."
+msgstr "Eliminación de ruido..."
+
+#: ../src/effects/NoiseRemoval.h:43
+msgid "Creating Noise Profile"
+msgstr "Creando perfil de ruido"
#: ../src/effects/NoiseRemoval.h:45
msgid "Removing Noise"
msgstr "Eliminando ruido"
-#: ../src/effects/ClickRemoval.h:46
-msgid "Removing clicks and pops..."
-msgstr "Eliminando ruido non desexado..."
+#. i18n-hint: First %s is the effect name, 2nd and 3rd are either true or
+#. * false (translated below) if those options were selected
+#: effects/Normalize.cpp:70
+#, c-format
+msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
+msgstr ""
-#: ../src/effects/PopClick.h:33
-msgid "Removing unwanted noise"
-msgstr "Eliminando ruido non desexado"
+#. i18n-hint: true here means that the option was
+#. * selected. Opposite false if not selected
+#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
+msgid "true"
+msgstr ""
-#: ../src/TrackPanel.cpp:4420
+#: effects/Normalize.cpp:77
#, c-format
-msgid "Renamed '%s' to '%s'"
-msgstr "Renomeouse '%s' a '%s'"
+msgid ", maximum amplitude = %.1f dB"
+msgstr ""
-#: ../src/DirManager.cpp:643
-#, c-format
-msgid "Renamed file: %s\n"
-msgstr "Arquivo renomeado: %s\n"
+#: ../src/effects/Normalize.cpp:29
+msgid "Normalize"
+msgstr "Normalizar"
-#: ../src/effects/Repeat.cpp:58 ../src/effects/Repeat.cpp:62
-msgid "Repeat"
-msgstr "Repetir"
+#: effects/Normalize.cpp:355
+msgid "Remove any DC offset (center on 0.0 vertically)"
+msgstr ""
-#: ../src/Menus.cpp:1248
+#: effects/Normalize.cpp:358
+msgid "Normalize maximum amplitude to:"
+msgstr ""
+
+#: effects/Normalize.cpp:366
+msgid "-"
+msgstr ""
+
+#: effects/Normalize.cpp:371
+msgid "Maximum amplitude dB"
+msgstr ""
+
+#: ../src/effects/Normalize.h:34
+msgid "Normalize..."
+msgstr "Normalizar..."
+
+#: ../src/effects/Normalize.h:38
+msgid "Normalizing..."
+msgstr "Normalizando..."
+
+#: ../src/effects/Phaser.cpp:47
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "Repetir %s\tCtrl+R"
+msgid "Applied effect: %s %d stages, %.0f%% wet, frequency = %.1f Hz, start phase = %.0f deg, depth = %d, feedback = %.0f%%"
+msgstr "Efecto aplicado: %s %d etapas, %.0f%% wet frecuencia = %.1f Hz, fase inicial = %.0f grad, profundidade = %d, retroalimentación = %.0f%%"
-#: ../src/Menus.cpp:468
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "Repetir último efecto\tCtrl+R"
+#: ../src/effects/Phaser.cpp:455
+msgid "Stages:"
+msgstr "Etapas:"
-#: ../src/effects/Repeat.cpp:222
-msgid "Repeat by Dominic Mazzoni && Vaughan Johnson"
-msgstr "Repetición por Dominic Mazzoni && Vaughan Johnson"
+#: effects/Phaser.cpp:231
+msgid "Stages"
+msgstr ""
-#: ../src/effects/Repeat.h:34
-msgid "Repeat..."
-msgstr "Repetir..."
+#: effects/Phaser.cpp:236
+msgid "Dry/Wet:"
+msgstr ""
+
+#: effects/Phaser.cpp:239
+msgid "Dry Wet"
+msgstr ""
+
+#: ../src/effects/Phaser.cpp:497 ../src/effects/Wahwah.cpp:468
+msgid "LFO Frequency (Hz):"
+msgstr "Frecuencia LFO (Hz):"
+
+#: effects/Phaser.cpp:247 effects/Wahwah.cpp:225
+msgid "LFO frequency in hertz"
+msgstr ""
+
+#: ../src/effects/Phaser.cpp:513 ../src/effects/Wahwah.cpp:484
+msgid "LFO Start Phase (deg.):"
+msgstr "Fase de Inicio LFO (grados):"
+
+#: effects/Phaser.cpp:255 effects/Wahwah.cpp:233
+msgid "LFO start phase in degrees"
+msgstr ""
+
+#: ../src/effects/Phaser.cpp:529
+msgid "Depth:"
+msgstr "Profundidade:"
+
+#: effects/Phaser.cpp:263 effects/Wahwah.cpp:241
+msgid "Depth in percent"
+msgstr ""
+
+#: ../src/effects/Phaser.cpp:545
+msgid "Feedback (%):"
+msgstr "Retroalimentación (%):"
+
+#: effects/Phaser.cpp:271
+msgid "Feedback in percent"
+msgstr ""
+
+#: ../src/effects/Phaser.h:41
+msgid "Phaser..."
+msgstr "Fase..."
+
+#: ../src/effects/Phaser.h:45
+msgid "Applying Phaser"
+msgstr "Aplicando Fase"
+
+#: effects/Repair.cpp:99
+msgid "The Repair effect is intended to be used on very short sections of damaged audio (up to 128 samples).\n"
+"\n"
+"Zoom in and select a tiny fraction of a second to repair."
+msgstr ""
+
+#: effects/Repair.cpp:105
+msgid "Repair works by using audio data outside the selection region.\n"
+"\n"
+"Please select a region that has audio touching at least one side of it.\n"
+"\n"
+"The more surrounding audio, the better it performs."
+msgstr ""
+
+#: effects/Repair.h:43
+msgid "Repairing damaged audio"
+msgstr ""
#: ../src/effects/Repeat.cpp:31
#, c-format
msgid "Repeated %d times"
msgstr "Repetido %d veces"
-#: ../src/Resample.cpp:233 ../src/Resample.cpp:243
-msgid "Resampling disabled."
-msgstr "Remostreo desactivado."
+#: ../src/effects/Repeat.cpp:57
+msgid "Tracks are too long to repeat the selection."
+msgstr "As pistas son moi longas para repetir a selección."
-#: ../src/effects/Wahwah.cpp:516
-msgid "Resonance:"
-msgstr "Resonancia:"
+#: ../src/effects/Repeat.cpp:58 ../src/effects/Repeat.cpp:62
+msgid "Repeat"
+msgstr "Repetir"
+
+#: effects/Repeat.cpp:209
+#, fuzzy
+msgid "Number of times to repeat:"
+msgstr "Número de veces a repetir: "
+
+#: effects/Repeat.cpp:218
+msgid "New selection length: hh:mm:ss"
+msgstr ""
-#: ../src/effects/AvcCompressor.cpp:704
-msgid "Restore Defaults"
-msgstr "Restaurar predeterminados"
+#: ../src/effects/Repeat.cpp:241 ../src/effects/Repeat.cpp:280
+msgid "New selection length: "
+msgstr "Nova lonxitude de selección: "
+
+#. i18n-hint: Name of time display format that shows time in hours, minutes
+#. * and seconds
+#: effects/Repeat.cpp:259 widgets/TimeTextCtrl.cpp:271
+msgid "hh:mm:ss"
+msgstr ""
+
+#: ../src/effects/Repeat.h:34
+msgid "Repeat..."
+msgstr "Repetir..."
+
+#: ../src/effects/Repeat.h:38
+msgid "Performing Repeat"
+msgstr "Aplicando repetición"
#: ../src/effects/Reverse.h:30
msgid "Reverse"
@@ -3321,1023 +5444,2940 @@ msgstr "Revertir"
msgid "Reversing"
msgstr "Revirtindo"
-#: ../src/widgets/ASlider.cpp:491
-msgid "Right"
-msgstr "Der"
+#: effects/Silence.cpp:32
+msgid "Silence Generator"
+msgstr ""
-#: ../src/TrackPanel.cpp:842
-msgid "Right Channel"
-msgstr "Canle dereito"
+#: effects/Silence.h:34
+msgid "Silence..."
+msgstr ""
-#: ../src/prefs/MousePrefs.cpp:107
-msgid "Right Click"
-msgstr "Clic dereito"
+#: ../src/effects/Silence.h:37
+msgid "Generating Silence"
+msgstr "Xerando silencio"
-#: ../src/prefs/MousePrefs.cpp:108
-msgid "Right Drag"
-msgstr "Arrastre dereito"
+#: ../src/effects/Silence.h:42
+#, c-format
+msgid "Applied effect: Generate Silence, %.6lf seconds"
+msgstr "Efecto aplicado: Xerar Silencio, %.6lf segundos"
-#: ../src/TrackPanel.cpp:4094
-msgid "Right, "
-msgstr "Dereito,"
+#: effects/SimplePairedTwoTrack.h:115
+msgid "Sorry, this effect cannot be performed on stereo tracks where the individual channels of the track do not match."
+msgstr ""
-#: ../src/prefs/MousePrefs.cpp:94
-msgid "Right-Click"
-msgstr "Clic-Dereito"
+#: effects/SpikeCleaner.cpp:69
+msgid "Spike Cleaner"
+msgstr ""
-#: ../src/prefs/MousePrefs.cpp:95
-msgid "Right-Drag"
-msgstr "Arrastre-dereito"
+#: effects/SpikeCleaner.cpp:160
+msgid "SpikeCleaner by Lynn Allan"
+msgstr ""
-#: ../src/prefs/MousePrefs.cpp:95
-msgid "Same as Left-Drag"
-msgstr "Igual que arrastre-esquerdo"
+#: effects/SpikeCleaner.cpp:165
+msgid "Max Spike Duration (milliseconds): \n"
+"(99999 or greater is off)"
+msgstr ""
-#: ../src/prefs/MousePrefs.cpp:105 ../src/prefs/MousePrefs.cpp:106
-msgid "Same as select tool"
-msgstr "Igual que ferramenta de selección"
+#: effects/SpikeCleaner.cpp:178
+msgid "Theshold for silence: "
+msgstr ""
-#: ../src/prefs/MousePrefs.cpp:107 ../src/prefs/MousePrefs.cpp:108
-msgid "Same as zoom tool"
-msgstr "Igual que ferramenta de zoom"
+#: effects/SpikeCleaner.h:27
+msgid "Spike Cleaner..."
+msgstr ""
-#: ../src/TrackPanel.cpp:2638
-msgid "Sample Edit"
-msgstr "Edición de mostreo"
+#: effects/SpikeCleaner.h:35
+msgid "Applying Spike Cleaner..."
+msgstr ""
-#: ../src/import/ImportRaw.cpp:370
-msgid "Sample rate:"
-msgstr "Frecuencia de mostreo:"
+#: effects/StereoToMono.h:23
+msgid "&Stereo to Mono"
+msgstr ""
-#: ../src/export/Export.cpp:175
-#, c-format
-msgid "Save %s File As:"
-msgstr "Gardar arquivo %s como:"
+#: effects/StereoToMono.h:38
+msgid "Applying Stereo to Mono"
+msgstr ""
-#: ../src/Menus.cpp:150
-msgid "Save Project &As..."
-msgstr "Gardar proxecto &como..."
+#: effects/TimeScale.cpp:140
+msgid "Time Scale"
+msgstr ""
-#: ../src/Project.cpp:2376
-msgid "Save Project As:"
-msgstr "Gardar proxecto como:"
+#: effects/TimeScale.cpp:176
+msgid "Sliding Time Scale/Pitch Shift"
+msgstr ""
-#: ../src/Project.cpp:1716
-msgid "Save changes before closing?"
-msgstr "¿Gardar cambios antes de pechar?"
+#: effects/TimeScale.cpp:178
+msgid "using SBSMS, by Clayton Otey"
+msgstr ""
-#: ../src/Project.cpp:1717
-msgid "Save changes?"
-msgstr "¿Gardar cambios?"
+#: effects/TimeScale.cpp:187
+msgid "Initial Tempo Change (%):"
+msgstr ""
-#: ../src/prefs/KeyConfigPrefs.cpp:125
-msgid "Save..."
-msgstr "Gardar..."
+#: effects/TimeScale.cpp:191
+msgid "Final Tempo Change (%):"
+msgstr ""
-#: ../src/Project.cpp:2200
+#: effects/TimeScale.cpp:202
+msgid "Initial Tempo Change (%)"
+msgstr ""
+
+#: effects/TimeScale.cpp:211
+msgid "Final Tempo Change (%)"
+msgstr ""
+
+#: effects/TimeScale.cpp:219
+msgid "Initial Pitch Shift (semitones) [-12 to 12]:"
+msgstr ""
+
+#: effects/TimeScale.cpp:223
+msgid "Final Pitch Shift (semitones) [-12 to 12]:"
+msgstr ""
+
+#: effects/TimeScale.h:33
+msgid "Sliding Time Scale/Pitch Shift..."
+msgstr ""
+
+#: effects/TimeScale.h:47
+msgid "Changing Tempo/Pitch"
+msgstr ""
+
+#: effects/ToneGen.cpp:61
#, c-format
-msgid "Saved %s"
-msgstr "Gardouse %s"
+msgid "Applied effect: Generate %s wave %s, frequency = %.2f Hz, amplitude = %.2f, %.6lf seconds"
+msgstr ""
+
+#: ../src/widgets/Meter.cpp:292
+msgid "Linear"
+msgstr "Liñal"
+
+#: effects/ToneGen.cpp:70
+msgid "Logarithmic"
+msgstr ""
+
+#: effects/ToneGen.cpp:71
+msgid "Chirp Generator"
+msgstr ""
+
+#: ../src/effects/ToneGen.cpp:43
+msgid "Tone Generator"
+msgstr "Xerador de tonos"
+
+#: ../src/effects/ToneGen.cpp:48
+msgid "Sine"
+msgstr "Sinusoide"
+
+#: ../src/effects/ToneGen.cpp:49
+msgid "Square"
+msgstr "Cadrado"
#: ../src/effects/ToneGen.cpp:50
msgid "Sawtooth"
msgstr "Dente de serra"
-#: ../src/prefs/MousePrefs.cpp:110
-msgid "Scroll up or down"
-msgstr "Desprazamento arriba ou abaixo"
+#: effects/ToneGen.cpp:75
+msgid "Square, no alias"
+msgstr ""
-#: ../src/Help.cpp:109
-msgid "Search for?"
-msgstr "Buscar por?"
+#: effects/ToneGen.cpp:277 effects/ToneGen.cpp:314
+msgid "Frequency (Hz)"
+msgstr ""
-#: ../src/Help.cpp:110
-msgid "Search help for keyword"
-msgstr "Buscar axuda para a palabra clave"
+#: ../src/effects/ToneGen.cpp:263
+msgid "Waveform:"
+msgstr "Forma de onda:"
-#: ../src/prefs/MousePrefs.cpp:88 ../src/prefs/MousePrefs.cpp:89
-#: ../src/prefs/MousePrefs.cpp:90
-msgid "Select"
-msgstr "Seleccionar"
+#: effects/ToneGen.cpp:314
+msgid "Frequency Hertz Start"
+msgstr ""
-#: ../src/Menus.cpp:2672
-msgid "Select a MIDI file..."
-msgstr "Seleccionar un arquivo MIDI..."
+#: effects/ToneGen.cpp:315
+msgid "Frequency Hertz End"
+msgstr ""
-#: ../src/effects/NoiseRemoval.cpp:413
-msgid ""
-"Select a few seconds of just noise\n"
-"so Audacity knows what to filter out, then\n"
-"click Get Noise Profile:"
+#: effects/ToneGen.cpp:316
+msgid "Amplitude Start"
msgstr ""
-"Selecciona uns segundos só de Ruido\n"
-"asà Audacity sabe que filtrar, logo\n"
-"cliquea Obter Perfil de Ruido:"
-#: ../src/Menus.cpp:2631
-msgid "Select a text file containing labels..."
-msgstr "Selecciona un arquivo de texto que conteña etiquetas..."
+#: effects/ToneGen.cpp:317
+msgid "Amplitude End"
+msgstr ""
-#: ../src/effects/NoiseRemoval.cpp:430
-msgid ""
-"Select all of the audio you want filtered,\n"
-"choose how much noise you want filtered out,\n"
-"and then click Remove Noise.\n"
+#: effects/ToneGen.cpp:322
+msgid "Interpolation:"
msgstr ""
-"Seleccione todo o audio que queiras filtrar,\n"
-"elixe que tanto ruido desexas eliminar,\n"
-"e logo fai clic en Eliminar ruido.\n"
-#: ../src/prefs/KeyConfigPrefs.cpp:188
-msgid "Select an XML file containing Audacity keyboard shortcuts..."
+#: effects/ToneGen.h:40
+msgid "Chirp..."
msgstr ""
-"Seleccione un arquivo XML que conteña accesos directos de teclado de "
-"Audacity..."
-#: ../src/Menus.cpp:2709
-msgid "Select any uncompressed audio file..."
-msgstr "Seleccione un arquivo de audio descomprimido..."
+#: ../src/effects/ToneGen.h:40
+msgid "Tone..."
+msgstr "Tono..."
-#: ../src/Menus.cpp:2595 ../src/Project.cpp:1738
-msgid "Select one or more audio files..."
-msgstr "Seleccione un ou máis arquivos de audio..."
+#: effects/ToneGen.h:54
+msgid "Generating Chirp"
+msgstr ""
-#: ../src/Menus.cpp:268
-msgid "Select..."
-msgstr "Seleccionar..."
+#: ../src/effects/ToneGen.h:44
+msgid "Generating Tone"
+msgstr "Xerando tono"
-#: ../src/Menus.cpp:589
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "Contracción de Selección á esquerda\tCtrl+Maiús+Dereita"
+#: effects/TruncSilence.cpp:133
+msgid "All tracks must have the same sample rate"
+msgstr ""
-#: ../src/Menus.cpp:590
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "Contracción de Selección á dereita\tCtrl+Maiús+Esquerda"
+#: effects/TruncSilence.cpp:133 effects/TruncSilence.cpp:443
+msgid "Truncate Silence"
+msgstr ""
-#: ../src/Menus.cpp:587
-msgid "Selection Extend Left\tShift+Left"
-msgstr "Extensión de selección á esquerda\tCtrl+Maiús+Esquerda"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr ""
-#: ../src/Menus.cpp:588
-msgid "Selection Extend Right\tShift+Right"
-msgstr "Extensión de selección á dereita\tCtrl+Maiús+Dereita"
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
+msgstr ""
-#: ../src/Menus.cpp:281
-msgid "Selection Restore"
-msgstr "Restaurar selección"
+#: effects/TruncSilence.cpp:470 effects/TruncSilence.cpp:474
+#: prefs/MidiIOPrefs.cpp:169 prefs/MidiIOPrefs.cpp:171
+msgid "milliseconds"
+msgstr ""
-#: ../src/Menus.cpp:280
-msgid "Selection Save"
-msgstr "Gardar selección"
+#: effects/TruncSilence.cpp:471
+msgid "Max silence duration:"
+msgstr ""
-#: ../src/ControlToolBar.cpp:355
-msgid "Selection Tool"
-msgstr "Ferramenta de selección"
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr ""
-#: ../src/Menus.cpp:549
-msgid "Selection Tool\tF1"
-msgstr "Ferramenta de selección\tF1"
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ""
-#: ../src/Menus.cpp:573
-msgid "Selection to End\tShift+End"
-msgstr "Seleccionar ata o final\tMaiús+Fin"
+#: effects/TruncSilence.cpp:480
+msgid "Threshold for silence:"
+msgstr ""
-#: ../src/Menus.cpp:572
-msgid "Selection to Start\tShift+Home"
-msgstr "Seleccionar ata o comezo\tMaiús+Inicio"
+#: effects/TruncSilence.cpp:506
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
+msgstr ""
+
+#: effects/TruncSilence.h:29
+msgid "Truncate Silence..."
+msgstr ""
+
+#: effects/TruncSilence.h:43
+msgid "Truncating Silence..."
+msgstr ""
+
+#: ../src/effects/ladspa/LadspaEffect.cpp:452
+msgid "Effect Settings"
+msgstr "Configuración do efecto"
+
+#: ../src/effects/ladspa/LadspaEffect.cpp:435
+#: ../src/effects/ladspa/LadspaEffect.cpp:443
+#: ../src/prefs/QualityPrefs.cpp:160
+msgid "None"
+msgstr "Ningún"
+
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
-#: ../src/FormatSelection.cpp:415
+#: effects/VST/VSTEffect.cpp:626
#, c-format
-msgid "Selection: %.3lf - %.3lf (%.3lf NTSC frames) %s"
-msgstr "Selección: %.3lf - %.3lf (%.3lf cadros NTSC) %s"
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
-#: ../src/FormatSelection.cpp:337
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr ""
+
+#: ../src/effects/Wahwah.cpp:41
#, c-format
-msgid "Selection: %.3lf - %.3lf (%.3lf PAL frames) %s"
-msgstr "Selección: %.3lf - %.3lf (%.3lf cadros PAL) %s"
+msgid "Applied effect: %s frequency = %.1f Hz, start phase = %.0f deg, depth = %.0f%%, resonance = %.1f, frequency offset = %.0f%%"
+msgstr "Efecto aplicado: frecuencia %s = %.1f Hz, fase inicial = %.0f grad, profundidade= %.0f%%, resonancia = %.1f, frecuencia inicial = %.0f%%"
+
+#: ../src/effects/Wahwah.cpp:52
+msgid "Wahwah"
+msgstr "Wahwah"
+
+#: ../src/effects/Wahwah.cpp:500
+msgid "Depth (%):"
+msgstr "Profundidade (%):"
+
+#: ../src/effects/Wahwah.cpp:516
+msgid "Resonance:"
+msgstr "Resonancia:"
+
+#: effects/Wahwah.cpp:249
+msgid "Resonance"
+msgstr ""
+
+#: ../src/effects/Wahwah.cpp:532
+msgid "Wah Frequency Offset (%):"
+msgstr "Comenzo de Frecuencia Wah (%):"
+
+#: effects/Wahwah.cpp:257
+msgid "Wah frequency offset in percent"
+msgstr ""
+
+#: ../src/effects/Wahwah.h:39
+msgid "Wahwah..."
+msgstr "Wahwah..."
+
+#: ../src/effects/Wahwah.h:43
+msgid "Applying Wahwah"
+msgstr "Aplicando Wahwah"
+
+#: ../src/effects/ladspa/LadspaEffect.cpp:137
+#, c-format
+msgid "Performing Effect: %s"
+msgstr "Aplicando efecto: %s"
+
+#: ../src/effects/ladspa/LadspaEffect.cpp:157
+msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
+msgstr "SÃntoo, Efectos VST non poden ser aplicados en pistas estéreo onde as canles individuais da pista non coinciden."
+
+#: ../src/effects/ladspa/LadspaEffect.cpp:437
+msgid "Author: "
+msgstr "Autor: "
+
+#: ../src/effects/Silence.cpp:127 ../src/effects/ToneGen.cpp:306
+msgid "Length (seconds)"
+msgstr "Lonxitude (segundos)"
+
+#: effects/lv2/LV2Effect.cpp:824 effects/lv2/LV2Effect.cpp:827
+msgid "Note length (seconds)"
+msgstr ""
+
+#: effects/lv2/LV2Effect.cpp:835 effects/lv2/LV2Effect.cpp:838
+msgid "Note velocity"
+msgstr ""
+
+#: effects/lv2/LV2Effect.cpp:846 effects/lv2/LV2Effect.cpp:849
+msgid "Note key"
+msgstr ""
+
+#: ../src/effects/nyquist/Nyquist.cpp:217
+msgid "Applying Nyquist Effect..."
+msgstr "Aplicando Efecto Nyquist..."
+
+#: ../src/effects/nyquist/Nyquist.cpp:224
+msgid "Nyquist Prompt..."
+msgstr "Comando Nyquist..."
+
+#: ../src/effects/nyquist/Nyquist.cpp:282
+msgid "Enter Nyquist Command: "
+msgstr "Introduza comando Nyquist: "
+
+#: ../src/effects/nyquist/Nyquist.cpp:370
+msgid "Sorry, cannot apply effect on stereo tracks where the tracks don't match."
+msgstr "SÃntoo, non pode aplicarse o efecto en pistas estéreo onde as pistas non coinciden."
+
+#: ../src/effects/nyquist/Nyquist.cpp:397
+msgid "Nyquist"
+msgstr "Nyquist"
+
+#: ../src/effects/nyquist/Nyquist.cpp:398
+msgid "Nyquist Output: "
+msgstr "SaÃda Nyquist: "
+
+#: effects/nyquist/Nyquist.cpp:656 effects/nyquist/Nyquist.cpp:665
+msgid "Nyquist returned the value:"
+msgstr ""
-#: ../src/FormatSelection.cpp:259
+#: ../src/effects/nyquist/Nyquist.cpp:594
+msgid "Nyquist did not return audio.\n"
+msgstr "Nyquist non devolveu audio.\n"
+
+#: ../src/effects/nyquist/Nyquist.cpp:604
+msgid "Nyquist returned too many audio channels.\n"
+msgstr "Nyquist devolveu demasiadas canles de audio.\n"
+
+#: effects/vamp/VampEffect.cpp:81
#, c-format
-msgid "Selection: %.3lf - %.3lf (%.3lf film frames) %s"
-msgstr "Selección: %.3lf - %.3lf (%.3lf cadros de film) %s"
+msgid "Extracting features: %s"
+msgstr ""
+
+#: effects/vamp/VampEffect.cpp:107
+msgid "Sorry, Vamp Plug-ins cannot be run on stereo tracks where the individual channels of the track do not match."
+msgstr ""
+
+#: effects/vamp/VampEffect.cpp:121
+msgid "Sorry, failed to load Vamp Plug-in."
+msgstr ""
+
+#: effects/vamp/VampEffect.cpp:207
+msgid "Sorry, Vamp Plug-in failed to initialize."
+msgstr ""
+
+#: effects/vamp/VampEffect.cpp:363
+msgid " - Vamp audio analysis plugin"
+msgstr ""
+
+#: effects/vamp/VampEffect.cpp:399
+msgid "Plugin Settings"
+msgstr ""
+
+#: effects/vamp/VampEffect.cpp:418 effects/vamp/VampEffect.cpp:424
+msgid "Program"
+msgstr ""
+
+#: export/Export.cpp:468
+msgid "All the selected audio is muted."
+msgstr ""
+
+#: export/Export.cpp:470
+msgid "All the audio is muted."
+msgstr ""
+
+#: export/Export.cpp:526
+msgid "Export File"
+msgstr ""
+
+#: export/Export.cpp:535
+msgid "&Options..."
+msgstr ""
+
+#: ../src/export/Export.cpp:202
+msgid "Are you sure you want to save the file as \""
+msgstr "¿Está seguro de que quere gardar o arquivo como \""
-#: ../src/FormatSelection.cpp:635
+#: export/Export.cpp:596
#, c-format
-msgid ""
-"Selection: %02i:%02i:%06.3lf - %02i:%02i:%06.3lf (%02i:%02i:%06.3lf cdda min:"
-"sec:frames) %s"
+msgid "You are about to save a %s file with the name \"%s\".\n"
+"\n"
+"Normally these files end in \".%s\", and some programs will not open files with nonstandard extensions.\n"
+"\n"
+"Are you sure you want to save the file under this name?"
msgstr ""
-"Selección: %02i:%02i:%06.3lf - %02i:%02i:%06.3lf (%02i:%02i:%06.3lf cdda min:"
-"seg:cadros) %s"
-#: ../src/FormatSelection.cpp:535
+#: export/Export.cpp:617
#, c-format
-msgid ""
-"Selection: %1i:%02i:%02i:%06.3lf - %1i:%02i:%02i:%06.3lf (%1i:%02i:%02i:%"
-"06.3lf NTSC drop-frame h:mm:ss:ff) (%.3lf NTSC frames) %s"
+msgid "A file named \"%s\" already exists. Replace?"
+msgstr ""
+
+#: ../src/export/Export.cpp:142
+msgid "Your tracks will be mixed down to two stereo channels in the exported file."
+msgstr "As túas pistas serán mesturadas a dúas canles estéreo no arquivo exportado."
+
+#: ../src/export/Export.cpp:147
+msgid "Your tracks will be mixed down to a single mono channel in the exported file."
+msgstr "As túas pistas serán mesturadas a unha soa canle mono no arquivo exportado."
+
+#: export/Export.cpp:735
+msgid "Advanced Mixing Options"
msgstr ""
-"Selección: %1i:%02i:%02i:%06.3lf - %1i:%02i:%02i:%06.3lf (%1i:%02i:%02i:%"
-"06.3lf NTSC drop-frame h:mm:ss:cc) (%.3lf cadros NTSC) %s"
-#: ../src/FormatSelection.cpp:593
+#: export/Export.cpp:943
#, c-format
-msgid ""
-"Selection: %1i:%02i:%02i:%06.3lf - %1i:%02i:%02i:%06.3lf (%1i:%02i:%02i:%"
-"06.3lf NTSC non-drop-frame h:mm:ss:ff) (%.3lf NTSC frames) %s"
+msgid "Channel: %2d"
+msgstr ""
+
+#: export/Export.cpp:1058
+msgid " - Left"
+msgstr ""
+
+#: export/Export.cpp:1060
+msgid " - Right"
+msgstr ""
+
+#: export/Export.cpp:1082
+msgid "Mixer Panel"
msgstr ""
-"Selección: %1i:%02i:%02i:%06.3lf - %1i:%02i:%02i:%06.3lf (%1i:%02i:%02i:%"
-"06.3lf NTSC non-drop-frame h:mm:ss:cc) (%.3lf cadros NTSC) %s"
-#: ../src/FormatSelection.cpp:390
+#: export/Export.cpp:1088 export/Export.cpp:1135
#, c-format
-msgid ""
-"Selection: %1i:%02i:%02i:%06.3lf - %1i:%02i:%02i:%06.3lf (%1i:%02i:%02i:%"
-"06.3lf PAL h:mm:ss:ff) (%.3lf PAL frames) %s"
+msgid "Output Channels: %2d"
+msgstr ""
+
+#: export/ExportCL.cpp:55
+msgid "Specify Command Line Encoder"
+msgstr ""
+
+#: export/ExportCL.cpp:68
+msgid "Command Line Export Setup"
msgstr ""
-"Selección: %1i:%02i:%02i:%06.3lf - %1i:%02i:%02i:%06.3lf (%1i:%02i:%02i:%"
-"06.3lf PAL h:mm:ss:cc) (%.3lf cadros PAL) %s"
-#: ../src/FormatSelection.cpp:312
+#: export/ExportCL.cpp:73
+msgid "Command:"
+msgstr ""
+
+#: export/ExportCL.cpp:78
+msgid "Show output"
+msgstr ""
+
+#: export/ExportCL.cpp:85
#, c-format
-msgid ""
-"Selection: %1i:%02i:%02i:%06.3lf - %1i:%02i:%02i:%06.3lf (%1i:%02i:%02i:%"
-"06.3lf film h:mm:ss:ff) (%.3lf film frames) %s"
+msgid "Data will be piped to standard in. \"%f\" will be replaced with output filename selected."
+msgstr ""
+
+#: export/ExportCL.cpp:220
+msgid "(external program)"
msgstr ""
-"Selección: %1i:%02i:%02i:%06.3lf - %1i:%02i:%02i:%06.3lf (%1i:%02i:%02i:%"
-"06.3lf film h:mm:ss:cc) (%.3lf cadros de film) %s"
-#: ../src/FormatSelection.cpp:235
+#: ../src/export/ExportPCM.cpp:79
#, c-format
-msgid ""
-"Selection: %1i:%02i:%09.6f - %1i:%02i:%09.6f (%1i:%02i:%09.6f hr:min:sec) %"
-"s"
+msgid "Cannot export audio to %s"
+msgstr "Non se pode exportar audio a %s"
+
+#: ../src/export/ExportCL.cpp:144
+msgid "Exporting the selected audio using command-line encoder"
+msgstr "Exportando o audio seleccionado utilizando codificador de liña de comandos"
+
+#: ../src/export/ExportCL.cpp:146
+msgid "Exporting the entire project using command-line encoder"
+msgstr "Exportando o proxecto enteiro utilizando o codificador de liña de comandos"
+
+#: export/ExportCL.cpp:423
+msgid "Command Output"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:61
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
-"Selección: %1i:%02i:%09.6f - %1i:%02i:%09.6f (%1i:%02i:%09.6f hr:min:seg) %"
-"s"
-#: ../src/FormatSelection.cpp:787
+#: export/ExportFFmpeg.cpp:433
#, c-format
-msgid "Selection: %i+%04i - %i+%04i (%i+%04i cdda sectors+bytes) [Snap-To Samples]"
+msgid "FFmpeg cannot find audio codec 0x%x.\n"
+"Support for this codec is probably not compiled in."
msgstr ""
-"Selección: %i+%04i - %i+%04i (%i+%04i sectores cdda+bytes) [Axuste a "
-"mostreos]"
-#: ../src/FormatSelection.cpp:790
+#: export/ExportFFmpeg.cpp:655
#, c-format
-msgid ""
-"Selection: %i+%04i - %i+%04i (%i+%04i cdda sectors+bytes) [Snap-To "
-"Samples] Change Project Rate to 44100 for cdda"
+msgid "Attempted to export %d channels, but max. channels for selected output format is %d"
msgstr ""
-"Selección: %i+%04i - %i+%04i (%i+%04i sectores cdda+bytes) [Axuste a "
-"mostreos] Cambiar Frecuencia de Proxecto a 44100 para cdda"
-#: ../src/FormatSelection.cpp:748
+#: export/ExportFFmpeg.cpp:684
#, c-format
-msgid "Selection: %i+%i - %i+%i (%i+%i sec+samples) [Snap-To Samples]"
-msgstr "Selección: %i+%i - %i+%i (%i+%i seg+muestreos) [Axuste a mostreos]"
+msgid "Exporting selected audio as %s"
+msgstr ""
-#: ../src/FormatSelection.cpp:724
+#: export/ExportFFmpeg.cpp:685
#, c-format
-msgid ""
-"Selection: %i:%02i+%i - %i:%02i+%i (%i:%02i+%i min:sec+samples) [Snap-To "
-"Samples]"
+msgid "Exporting entire file as %s"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:748 export/ExportMP3.cpp:1777
+msgid "Invalid sample rate"
msgstr ""
-"Selección: %i:%02i+%i - %i:%02i+%i (%i:%02i+%i min:seg+mostreos) [Axuste "
-"a mostreos]"
-#: ../src/FormatSelection.cpp:164
+#: export/ExportFFmpeg.cpp:761
#, c-format
-msgid "Selection: %i:%09.6f - %i:%09.6f (%i:%09.6f min:sec) %s"
-msgstr "Selección: %i:%09.6f - %i:%09.6f (%i:%09.6f min:seg) %s"
+msgid "The project sample rate (%d) is not supported by the current output\n"
+"file format. "
+msgstr ""
-#: ../src/FormatSelection.cpp:676
+#: export/ExportFFmpeg.cpp:764
#, c-format
-msgid "Selection: %i:%09.6lf - %i:%09.6lf (%i:%09.6lf min:sec) [Snap-To Samples]"
+msgid "The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
+"supported by the current output file format. "
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:767 export/ExportMP3.cpp:1796
+msgid "You may resample to one of the rates below."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:795 export/ExportMP3.cpp:1819
+msgid "Sample Rates"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:93
+msgid "Specify AC3 Options"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:112
+msgid "AC3 Export Setup"
+msgstr ""
+
+#: ../src/prefs/FileFormatPrefs.cpp:197
+msgid "Bit Rate:"
+msgstr "Bit Rate:"
+
+#: export/ExportFFmpegDialogs.cpp:157
+msgid "Specify AAC Options"
msgstr ""
-"Selección: %i:%09.6lf - %i:%09.6lf (%i:%09.6lf min:seg) [Axuste a "
-"mostreos]"
-#: ../src/FormatSelection.cpp:188
+#: export/ExportFFmpegDialogs.cpp:168
+msgid "AAC Export Setup"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:172 export/ExportFFmpegDialogs.cpp:929
+#: export/ExportOGG.cpp:84
+msgid "Quality:"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:211
+msgid "Specify AMR-NB Options"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:230
+msgid "AMR-NB Export Setup"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:275
+msgid "Specify AMR-WB Options"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:294
+msgid "AMR-WB Export Setup"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:341
+msgid "Specify WMA Options"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:360
+msgid "WMA Export Setup"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:491
#, c-format
-msgid "Selection: %lf - %lf (%lf sec) %s"
-msgstr "Selección: %lf - %lf (%lf seg) %s"
+msgid "Overwrite preset '%s'?"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:492
+msgid "Confirm Overwrite"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:504
+msgid "Please select format before saving a profile"
+msgstr ""
-#: ../src/FormatSelection.cpp:697
+#: export/ExportFFmpegDialogs.cpp:512
+msgid "Please select codec before saving a profile"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:582
#, c-format
-msgid "Selection: %lf - %lf (%lf sec) [Snap-To Samples]"
-msgstr "Selección: %lf - %lf (%lf seg) [Axuste a mostreos]"
+msgid "Preset '%s' does not exist."
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:797
+msgid "Specify Other Options"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:886
+msgid "Preset:"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:887
+msgid "Load Preset"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:888
+msgid "Save Preset"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:889
+msgid "Delete Preset"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:890
+msgid "Import Presets"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:891
+msgid "Export Presets"
+msgstr ""
+
+#: ../src/Tags.cpp:610
+msgid "Format:"
+msgstr "Formato:"
+
+#: export/ExportFFmpegDialogs.cpp:898
+msgid "Codec:"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:902
+msgid "Not all formats and codecs are compatible. Some parameters (such as bitrate and samplerate) combinations are not compatible with some codecs too."
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:905
+msgid "Format selector:"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:906
+msgid "Codec selector:"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:908
+msgid "Show All Formats"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:909
+msgid "Show All Codecs"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:916
+msgid "Options"
+msgstr ""
+
+#: ../src/prefs/GUIPrefs.cpp:134
+msgid "Language:"
+msgstr "Linguaxe:"
+
+#: export/ExportFFmpegDialogs.cpp:921
+msgid "ISO 639 3-letter language code\n"
+"Optional\n"
+"empty - automatic"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:923
+msgid "Tag:"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:924
+msgid "Codec tag (FOURCC)\n"
+"Optional\n"
+"empty - automatic"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:927
+msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n"
+"Some codecs may only accept specific values (128k, 192k, 256k etc)\n"
+"0 - automatic\n"
+"Recommended - 192000"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:930
+msgid "Overall quality, used differently by different codecs\n"
+"Required for vorbis\n"
+"0 - automatic\n"
+"-1 - off (use bitrate instead)"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:932
+msgid "Sample Rate:"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:933
+msgid "Sample rate (Hz)\n"
+"0 - don't change sample rate"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:935
+msgid "Cutoff Bandwidth:"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:936
+msgid "Audio cutoff bandwidth (Hz)\n"
+"Optional\n"
+"0 - automatic"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:938
+msgid "Profile:"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:940
+msgid "AAC Profile\n"
+"Low Complexity -default\n"
+"Most players won't play anything other than LC"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:942
+msgid "Use Bit Reservoir"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:945
+msgid "Use Variable Block Length"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:950
+msgid "FLAC options"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:954
+msgid "Compression Level:"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:955
+msgid "Compression level\n"
+"Required for FLAC\n"
+"-1 - automatic\n"
+"min - 0 (fast encoding, large output file)\n"
+"max - 10 (slow encoding, small output file)"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:957
+msgid "Frame Size:"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:958
+msgid "Frame size\n"
+"Optional\n"
+"0 - default\n"
+"min - 16\n"
+"max - 65535"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:960
+msgid "LPC coefficients precision"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:961
+msgid "LPC coefficients precision\n"
+"Optional\n"
+"0 - default\n"
+"min - 1\n"
+"max - 15"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:963
+msgid "Minimal prediction order"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:964
+msgid "Minimal prediction order\n"
+"Optional\n"
+"-1 - default\n"
+"min - 0\n"
+"max - 32 (with LPC) or 4 (without LPC)"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:966
+msgid "Maximal prediction order"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:967
+msgid "Maximal prediction order\n"
+"Optional\n"
+"-1 - default\n"
+"min - 0\n"
+"max - 32 (with LPC) or 4 (without LPC)"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:969
+msgid "Prediction Order Method:"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:971
+msgid "Prediction Order Method\n"
+"Estimate - fastest, lower compression\n"
+"Log search - slowest, best compression\n"
+"Full search - default"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:973
+msgid "Minimal partition order"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:974
+msgid "Minimal partition order\n"
+"Optional\n"
+"-1 - default\n"
+"min - 0\n"
+"max - 8"
+msgstr ""
-#: ../src/FormatSelection.cpp:652
+#: export/ExportFFmpegDialogs.cpp:976
+msgid "Maximal partition order"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:977
+msgid "Maximal partition order\n"
+"Optional\n"
+"-1 - default\n"
+"min - 0\n"
+"max - 8"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:979
+msgid "Use LPC"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:986
+msgid "MPEG container options"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:990
+msgid "Mux Rate:"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:991
+msgid "Maximum bit rate of the multiplexed stream\n"
+"Optional\n"
+"0 - default"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:993
+msgid "Packet Size:"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:994
+msgid "Packet size\n"
+"Optional\n"
+"0 - default"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:1209
+msgid "You can't delete a preset without name"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:1213
#, c-format
-msgid "Selection: %li - %li (%li samples) [Snap-To Samples]"
-msgstr "Selección: %li - %li (%li mostreos) [Axuste a mostreos]"
+msgid "Delete preset '%s'?"
+msgstr ""
-#: ../src/effects/ChangePitch.cpp:299
-msgid "Semitones (half-steps):"
-msgstr "Semitonos (medios-pasos):"
+#: export/ExportFFmpegDialogs.cpp:1232
+msgid "You can't save a preset without name"
+msgstr ""
-#: ../src/prefs/KeyConfigPrefs.cpp:98
-msgid "Set"
-msgstr "Elexir"
+#: export/ExportFFmpegDialogs.cpp:1272
+msgid "Select xml file with presets to import"
+msgstr ""
-#: ../src/TrackPanel.cpp:4371
-msgid "Set Range"
-msgstr "Establecer rango"
+#: ../src/prefs/KeyConfigPrefs.cpp:192
+msgid "XML files (*.xml)|*.xml|All files (*.*)|*.*"
+msgstr "Arquivos XML (*.xml)|*.xml|Tódolos arquivos (*.*)|*.*"
-#: ../src/TrackPanel.cpp:873
-msgid "Set Range..."
-msgstr "Establecer rango..."
+#: export/ExportFFmpegDialogs.cpp:1292
+msgid "Select xml file to export presets into"
+msgstr ""
-#: ../src/AStatus.cpp:352 ../src/TrackPanel.cpp:848 ../src/TrackPanel.cpp:4322
-msgid "Set Rate"
-msgstr "Establecer frecuencia"
+#: export/ExportFFmpegDialogs.cpp:1363
+msgid "Failed to guess format"
+msgstr ""
-#: ../src/TrackPanel.cpp:846
-msgid "Set Sample Format"
-msgstr "Establecer formato de mostreo"
+#: export/ExportFFmpegDialogs.cpp:1405
+msgid "Failed to find the codec"
+msgstr ""
-#: ../src/Menus.cpp:359
-msgid "Set Selection Format"
-msgstr "Establecer formato de selección"
+#: export/ExportFFmpegDialogs.h:54
+msgid "M4A (AAC) Files (FFmpeg)"
+msgstr ""
-#: ../src/prefs/MousePrefs.cpp:88
-msgid "Set Selection Point"
-msgstr "Establecer punto de selección"
+#: export/ExportFFmpegDialogs.h:55
+msgid "AC3 Files (FFmpeg)"
+msgstr ""
-#: ../src/prefs/MousePrefs.cpp:89
-msgid "Set Selection Range"
-msgstr "Establecer rango de selección"
+#: export/ExportFFmpegDialogs.h:56
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
+msgstr ""
-#: ../src/TrackPanel.cpp:4368
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.h:58
+msgid "WMA (version 2) Files (FFmpeg)"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.h:59
+msgid "Custom FFmpeg Export"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.h:374
+msgid "LTP"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.h:374
+msgid "Low Complexity"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.h:374
+msgid "Main profile"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.h:677
+msgid "2-level"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.h:677
+msgid "4-level"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.h:677
+msgid "8-level"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.h:677
+msgid "Estimate"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.h:677
+msgid "Full search"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.h:677
+msgid "Log search"
+msgstr ""
+
+#: export/ExportFLAC.cpp:67
+msgid "Specify FLAC Options"
+msgstr ""
+
+#: export/ExportFLAC.cpp:79
+msgid "0 (fastest)"
+msgstr ""
+
+#: export/ExportFLAC.cpp:80
+msgid "1"
+msgstr ""
+
+#: export/ExportFLAC.cpp:81
+msgid "2"
+msgstr ""
+
+#: export/ExportFLAC.cpp:82
+msgid "3"
+msgstr ""
+
+#: export/ExportFLAC.cpp:83
+msgid "4"
+msgstr ""
+
+#: export/ExportFLAC.cpp:84
+msgid "5"
+msgstr ""
+
+#: export/ExportFLAC.cpp:85
+msgid "6"
+msgstr ""
+
+#: export/ExportFLAC.cpp:86
+msgid "7"
+msgstr ""
+
+#: export/ExportFLAC.cpp:87
+msgid "8 (best)"
+msgstr ""
+
+#: export/ExportFLAC.cpp:90
+msgid "16 bit"
+msgstr ""
+
+#: export/ExportFLAC.cpp:91
+msgid "24 bit"
+msgstr ""
+
+#: export/ExportFLAC.cpp:95
+msgid "FLAC Export Setup"
+msgstr ""
+
+#: export/ExportFLAC.cpp:99
+msgid "Level:"
+msgstr ""
+
+#: export/ExportFLAC.cpp:101
+msgid "Bit depth:"
+msgstr ""
+
+#: export/ExportFLAC.cpp:207
+msgid "FLAC Files"
+msgstr ""
+
+#: export/ExportFLAC.cpp:288
#, c-format
-msgid "Set range to '%d' - '%d'"
-msgstr "Establecer rango en '%d' - '%d'"
+msgid "FLAC export couldn't open %s"
+msgstr ""
-#: ../src/effects/ClickRemoval.cpp:323
-msgid "Settings"
-msgstr "Configuración"
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:163
-msgid "Shaped"
-msgstr "Moldeado "
+#: export/ExportFLAC.cpp:324
+msgid "Exporting the selected audio as FLAC"
+msgstr ""
-#: ../src/prefs/MousePrefs.cpp:90
-msgid "Shift-Left-Click"
-msgstr "Maiús-Click-Esquerdo"
+#: export/ExportFLAC.cpp:325
+msgid "Exporting the entire project as FLAC"
+msgstr ""
-#: ../src/Menus.cpp:1928 ../src/effects/Silence.h:33
-msgid "Silence"
-msgstr "Silencio"
+#: export/ExportMP2.cpp:108
+msgid "Specify MP2 Options"
+msgstr ""
-#: ../src/EditToolBar.cpp:156
-msgid "Silence selection"
-msgstr "Silenciar selección"
+#: export/ExportMP2.cpp:127
+msgid "MP2 Export Setup"
+msgstr ""
-#: ../src/Menus.cpp:1926
+#: export/ExportMP2.cpp:200
+msgid "MP2 Files"
+msgstr ""
+
+#: export/ExportMP2.cpp:230
+msgid "Cannot export MP2 with this sample rate and bit rate"
+msgstr ""
+
+#: ../src/export/ExportMP3.cpp:1345 ../src/export/ExportOGG.cpp:53
+msgid "Unable to open target file for writing"
+msgstr "Imposible abrir o arquivo de destino para escritura"
+
+#: export/ExportMP2.cpp:273
#, c-format
-msgid "Silenced selected tracks for %.2f seconds at %.2f"
-msgstr "Pistas seleccionadas silenciadas por %.2f segundos en %.2f"
+msgid "Exporting selected audio at %d kbps"
+msgstr ""
-#: ../src/effects/ToneGen.cpp:48
-msgid "Sine"
-msgstr "Sinusoide"
+#: export/ExportMP2.cpp:274
+#, c-format
+msgid "Exporting entire file at %d kbps"
+msgstr ""
-#: ../src/HistoryWindow.cpp:58
-msgid "Size"
-msgstr "Tamaño"
+#: export/ExportMP3.cpp:223 export/ExportMP3.cpp:241 export/ExportMP3.cpp:255
+msgid "kbps"
+msgstr ""
-#: ../src/ControlToolBar.cpp:472
-msgid "Skip to End"
-msgstr "Ir ao final"
+#: export/ExportMP3.cpp:242
+msgid "(Best Quality)"
+msgstr ""
-#: ../src/Menus.cpp:570
-msgid "Skip to End\tEnd"
-msgstr "Ir ao final\tFin"
+#: export/ExportMP3.cpp:243
+msgid "(Smaller files)"
+msgstr ""
-#: ../src/ControlToolBar.cpp:467
-msgid "Skip to Start"
-msgstr "Ir ao comezo"
+#: export/ExportMP3.cpp:245
+msgid "Fast"
+msgstr ""
-#: ../src/Menus.cpp:569
-msgid "Skip to Start\tHome"
-msgstr "Ir ao comezo\tInicio"
+#: export/ExportMP3.cpp:246 export/ExportMP3.cpp:252 prefs/GUIPrefs.cpp:50
+#: prefs/TracksPrefs.cpp:46
+msgid "Standard"
+msgstr ""
-#: ../src/prefs/MousePrefs.cpp:101
-msgid "Smooth at Sample"
-msgstr "Suavizar en mostreo"
+#: export/ExportMP3.cpp:250
+msgid "Insane"
+msgstr ""
-#. i18n-hint: Set snap-to mode on or off
-#: ../src/Menus.cpp:304
-msgid "Snap Off"
-msgstr "Desactivar Axuste"
+#: export/ExportMP3.cpp:251
+msgid "Extreme"
+msgstr ""
-#. i18n-hint: Set snap-to mode on or off
-#: ../src/Menus.cpp:302
-msgid "Snap On"
-msgstr "Activar Axuste"
+#: export/ExportMP3.cpp:253
+msgid "Medium"
+msgstr ""
-#: ../src/Menus.cpp:299
-msgid "Snap-To..."
-msgstr "Axuste..."
+#: export/ExportMP3.cpp:305
+msgid "Specify MP3 Options"
+msgstr ""
-#: ../src/prefs/AudioIOPrefs.cpp:244
-msgid "Software Playthrough (Play new track while recording it)"
-msgstr "Reproducción Hardware (Reproducir unha pista mentras se grava)"
+#: ../src/prefs/FileFormatPrefs.cpp:172
+msgid "MP3 Export Setup"
+msgstr "Opcións de exportación a MP3"
-#: ../src/TrackPanel.cpp:4701
-msgid "Solo"
-msgstr "Só"
+#: export/ExportMP3.cpp:326
+msgid "Bit Rate Mode:"
+msgstr ""
-#: ../src/Prefs.cpp:108
-msgid ""
-"Some of your preferences were from an earlier version of Audacity and have "
-"been reset."
+#: export/ExportMP3.cpp:331
+msgid "Preset"
msgstr ""
-"Algunhas das túas preferencias eran dunha versión anterior de Audacity e "
-"foron actualizadas."
-#: ../src/effects/ladspa/LadspaEffect.cpp:157
-msgid ""
-"Sorry, Plug-in Effects cannot be performed on stereo tracks where the "
-"individual channels of the track do not match."
+#: export/ExportMP3.cpp:332
+msgid "Variable"
msgstr ""
-"SÃntoo, Efectos VST non poden ser aplicados en pistas estéreo onde as "
-"canles individuais da pista non coinciden."
-#: ../src/effects/VST/VSTEffect.cpp:180
-msgid ""
-"Sorry, VST Effects cannot be performed on stereo tracks where the individual "
-"channels of the track do not match."
+#: export/ExportMP3.cpp:333
+msgid "Average"
msgstr ""
-"SÃntoo, Efectos VST non poden ser aplicados en pistas estéreo onde as "
-"canles individuais da pista non coinciden."
-#: ../src/effects/nyquist/Nyquist.cpp:370
-msgid "Sorry, cannot apply effect on stereo tracks where the tracks don't match."
+#: export/ExportMP3.cpp:334
+msgid "Constant"
msgstr ""
-"SÃntoo, non pode aplicarse o efecto en pistas estéreo onde as pistas "
-"non coinciden."
-#: ../src/export/Export.cpp:185
-msgid "Sorry, pathnames longer than 256 characters not supported."
-msgstr "SÃntoo, rutas de directorios de máis de 256 caracteres non son soportadas."
+#: ../src/prefs/PrefsDialog.cpp:85
+msgid "Quality"
+msgstr "Calidade"
-#: ../src/AboutDialog.cpp:237
-msgid "Special thanks:"
-msgstr "Agradecementos Especiais:"
+#: export/ExportMP3.cpp:379
+msgid "Variable Speed:"
+msgstr ""
-#: ../src/prefs/PrefsDialog.cpp:87
-msgid "Spectrograms"
-msgstr "Espectrogramas"
+#: export/ExportMP3.cpp:386
+msgid "Channel Mode:"
+msgstr ""
-#: ../src/FreqWindow.cpp:129 ../src/TrackPanel.cpp:837
-msgid "Spectrum"
-msgstr "Espectro"
+#: export/ExportMP3.cpp:391
+msgid "Joint Stereo"
+msgstr ""
-#: ../src/Menus.cpp:263
-msgid "Spl&it"
-msgstr "D&ividir"
+#: export/ExportMP3.cpp:392
+msgid "Stereo"
+msgstr ""
-#: ../src/Menus.cpp:2009 ../src/TrackPanel.cpp:4134
-msgid "Split"
-msgstr "Dividir"
+#: export/ExportMP3.cpp:536
+msgid "Locate Lame"
+msgstr ""
-#: ../src/TrackPanel.cpp:844
-msgid "Split Stereo Track"
-msgstr "Dividir pista estéreo"
+#: export/ExportMP3.cpp:556
+#, c-format
+msgid "Audacity needs the file %s to create MP3s."
+msgstr ""
-#: ../src/Menus.cpp:2092
-msgid "Split at labels"
-msgstr "Dividir nas etiquetas"
+#: export/ExportMP3.cpp:578
+msgid "To get a free copy of Lame, click here -->"
+msgstr ""
+
+#: export/ExportMP3.cpp:1070
+#, c-format
+msgid "You are linking to lame_enc.dll v%d.%d. This version is not compatible with Audacity %d.%d.%d.\n"
+"Please download the latest version of the LAME MP3 library."
+msgstr ""
+
+#: ../src/export/ExportMP3.cpp:1116
+msgid "Only lame_enc.dll|lame_enc.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
+msgstr "Só lame_enc.dll|lame_enc.dll|Dynamically Linked Libraries (*.dll)|*.dll|Tódolos Arquivos (*.*)|*"
+
+#: export/ExportMP3.cpp:1346
+msgid "Only libmp3lame.dylib|libmp3lame.dylib|Dynamic Libraries (*.dylib)|*.dylib|All Files (*)|*"
+msgstr ""
+
+#: export/ExportMP3.cpp:1364
+#, fuzzy
+msgid "Only libmp3lame.so.0|libmp3lame.so.0|Primary Shared Object files (*.so)|*.so|Extended Libraries (*.so*)|*.so*|All Files (*)|*"
+msgstr "Só libmp3lame.so|libmp3lame.so|Primary Shared Object (*.so)|*.so|Extended Libraries (*.so*)|*.so*|Tódolos Arquivos (*)|*"
+
+#: export/ExportMP3.cpp:1500
+msgid "MP3 Files"
+msgstr ""
+
+#: ../src/export/ExportMP3.cpp:1328
+msgid "Could not open MP3 encoding library!"
+msgstr "Non se puido abrir a librerÃa codificadora de MP3!"
+
+#: ../src/export/ExportMP3.cpp:1335
+msgid "Not a valid or supported MP3 encoding library!"
+msgstr "Non é unha librerÃa de codificación MP3 soportada!"
+
+#: export/ExportMP3.cpp:1608
+msgid "Unable to initialize MP3 stream"
+msgstr ""
+
+#: export/ExportMP3.cpp:1652
+#, c-format
+msgid "Exporting selected audio with %s preset"
+msgstr ""
+
+#: export/ExportMP3.cpp:1653
+#, c-format
+msgid "Exporting entire file with %s preset"
+msgstr ""
+
+#: export/ExportMP3.cpp:1658
+#, c-format
+msgid "Exporting selected audio with VBR quality %s"
+msgstr ""
+
+#: export/ExportMP3.cpp:1659
+#, c-format
+msgid "Exporting entire file with VBR quality %s"
+msgstr ""
+
+#: export/ExportMP3.cpp:1664
+#, c-format
+msgid "Exporting selected audio at %d Kbps"
+msgstr ""
+
+#: export/ExportMP3.cpp:1665
+#, c-format
+msgid "Exporting entire file at %d Kbps"
+msgstr ""
+
+#: export/ExportMP3.cpp:1699
+#, c-format
+msgid "Error %d returned from MP3 encoder"
+msgstr ""
+
+#: export/ExportMP3.cpp:1790
+#, c-format
+msgid "The project sample rate (%d) is not supported by the MP3\n"
+"file format. "
+msgstr ""
+
+#: export/ExportMP3.cpp:1793
+#, c-format
+msgid "The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
+"supported by the MP3 file format. "
+msgstr ""
+
+#: export/ExportMP3.cpp:1970
+msgid "MP3 export library not found"
+msgstr ""
+
+#: ../src/export/ExportMultiple.cpp:367 ../src/export/ExportMultiple.cpp:474
+#: ../src/export/ExportMultiple.cpp:562
+msgid "Export Multiple"
+msgstr "Exportar múltiple"
+
+#: ../src/export/ExportMultiple.cpp:487
+msgid "If you have more than one Audio Track, you can export each track as a separate file,\n"
+"or if you have a Label Track, you can export a new file for each label.\n"
+"\n"
+"This project does not have multiple tracks or a Label Track, so you cannot export multiple files."
+msgstr "Se ten máis dunha pista de audio pode exportar cada pista nun arquivo independente,\n"
+"ou se ten unha pista de etiquetas pode exportar a un ficheiro independente por cada etiqueta.\n"
+"\n"
+"Este proxecto non ten pistas múltiples nin pista de etiquetas, asà que non pode exportar a arquivos independentes."
+
+#: ../src/export/ExportMultiple.cpp:493
+msgid "Can't export multiple files"
+msgstr "Non se pode exportar múltiples ficheiros"
+
+#: ../src/export/ExportMultiple.cpp:576
+msgid "Export format:"
+msgstr "Exportar formato:"
+
+#: export/ExportMultiple.cpp:234
+msgid "Options..."
+msgstr ""
+
+#: ../src/export/ExportMultiple.cpp:594
+msgid "Export location:"
+msgstr "Exportar ubicación:"
+
+#: export/ExportMultiple.cpp:243
+msgid "Create"
+msgstr ""
#: ../src/export/ExportMultiple.cpp:612
msgid "Split files based on:"
msgstr "Unir arquivos baseados en:"
-#: ../src/TrackPanel.cpp:4131
-#, c-format
-msgid "Split stereo track '%s'"
-msgstr "Dividir pista estéreo '%s'"
+#: ../src/export/ExportMultiple.cpp:615
+msgid "Labels"
+msgstr "Etiquetas"
-#: ../src/effects/ToneGen.cpp:49
-msgid "Square"
-msgstr "Cadrado"
+#: ../src/export/ExportMultiple.cpp:623
+msgid "Include audio before first label"
+msgstr "Incluir audio antes da primeira etiqueta"
-#: ../src/effects/Phaser.cpp:455
-msgid "Stages:"
-msgstr "Etapas:"
+#: ../src/export/ExportMultiple.cpp:629
+msgid "First file name:"
+msgstr "Primeiro nome do arquivo:"
-#: ../src/FreqWindow.cpp:130
-msgid "Standard Autocorrelation"
-msgstr "Autocorrelación estándard"
+#: export/ExportMultiple.cpp:277
+msgid "First file name"
+msgstr ""
-#: ../src/effects/ChangeSpeed.cpp:341
-msgid "Standard Vinyl RPM: from"
-msgstr "RPM de vinilo estándar: dende"
+#: ../src/export/ExportMultiple.cpp:646
+msgid "Name files:"
+msgstr "Arquivos nomeados:"
-#: ../src/import/ImportRaw.cpp:348
-msgid "Start offset:"
-msgstr "LÃmite de comezo:"
+#: ../src/export/ExportMultiple.cpp:649
+msgid "Using Label/Track Name"
+msgstr "Usando etiquetas/Nome de pista"
-#: ../src/Menus.cpp:272
-msgid "Start to Cursor"
-msgstr "Comezo no cursor"
+#: ../src/export/ExportMultiple.cpp:655
+msgid "Numbering consecutively"
+msgstr "Numerando consecutivamente"
-#: ../src/effects/NoiseRemoval.cpp:410
-msgid "Step 1"
-msgstr "Paso 1"
+#: ../src/export/ExportMultiple.cpp:660
+msgid "File name prefix:"
+msgstr "Perfixo do nome do arquivo:"
-#: ../src/effects/NoiseRemoval.cpp:427
-msgid "Step 2"
-msgstr "Paso 2"
+#: export/ExportMultiple.cpp:324
+msgid "File name prefix"
+msgstr ""
-#: ../src/TrackPanel.cpp:4087
-msgid "Stereo, "
-msgstr "Estéreo,"
+#: ../src/export/ExportMultiple.cpp:677
+msgid "Overwrite existing files"
+msgstr "Sobreescribir arquivos existentes"
-#: ../src/ControlToolBar.cpp:471
-msgid "Stop"
-msgstr "Parar"
+#: export/ExportMultiple.cpp:422
+#, c-format
+msgid "\"%s\" successfully created."
+msgstr ""
-#: ../src/Menus.cpp:560
-msgid "Stop\tS"
-msgstr "Parar\tS"
+#: ../src/export/ExportMultiple.cpp:766
+msgid "Choose a location to save the exported files"
+msgstr "Seleccione un lugar para gardar os arquivos exportados"
-#: ../src/export/ExportMultiple.cpp:366 ../src/export/ExportMultiple.cpp:472
+#: export/ExportMultiple.cpp:524
#, c-format
-msgid "Successfully exported %d files."
-msgstr "Exportáronse correctamente %d arquivos."
+msgid "Successfully exported the following %ld file(s)."
+msgstr ""
-#: ../src/prefs/DirectoriesPrefs.cpp:52
-msgid "Temp. Directory"
-msgstr "Directorio temporal"
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
+msgstr ""
-#: ../src/Menus.cpp:2635
-msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
-msgstr "Arquivos de texto (*.txt)|*.txt|Tódolos arquivos (*.*)|*.*"
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
+msgstr ""
-#: ../src/widgets/Meter.cpp:901
-msgid ""
-"The VU meters will now be disabled.\n"
-"\n"
-"To enable them again, open the Preferences dialog and click on the Interface "
-"tab."
+#: export/ExportMultiple.cpp:527
+#, c-format
+msgid "Export stopped after exporting the following %ld file(s)."
msgstr ""
-"El \"VU meters\" vaise a deshabilitar. \n"
-"\n"
-"Para habilitalo de novo abra o cadro de diálogo Preferencias e faga clic "
-"na pestaña \"Interface\"."
-#: ../src/Project.cpp:2304
-msgid ""
-"The file you selected is an Audacity Project file.\n"
-"\n"
-"Only audio files, not project files, can be imported\n"
-"into an existing project. To open a project file,\n"
-"select Open from the File menu.\n"
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
msgstr ""
-"O arquivo seleccionado é un proxecto de Audacity.\n"
-"\\ "
-"Só se poden importar arquivos de audio dentro dun\n"
-"proxecto. Para abrir un arquivo de proxecto,\n"
-"seleccione Abrir no menú Arquivo.\n"
-#: ../src/prefs/SpectrumPrefs.cpp:148
-msgid "The maximum frequency must be an integer"
-msgstr "A frecuencia máxima debe ser un enteiro"
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr ""
-#: ../src/AudacityApp.cpp:841
-msgid ""
-"The system has detected that another copy of Audacity is running.\n"
-"Running two copies of Audacity simultaneously may lead to\n"
-"data loss or cause your system to crash, so is not allowed.\n"
+#: export/ExportMultiple.cpp:570
+#, c-format
+msgid "\"%s\" doesn't exist.\n"
"\n"
-"Use the New or Open commands in the currently running Audacity\n"
-"process to open multiple projects simultaneously.\n"
+"Would you like to create it?"
msgstr ""
-"O sistema detectou que outra copia de Audacity pode estar activa.\n"
-"Executar dúas copias de Audacity simultáneamente pode levar á perda\n"
-"de datos ou causar que o sistema se bloquee.\n"
-"\n"
-"Utilice os comandos Novo ou Abrir na versión en execución de Audacity\n"
-"para abrir varios proxectos simultáneamente. \n"
-#: ../src/Menus.cpp:3041
-msgid "The version of Audacity you are using does not support multiple time tracks."
+#: export/ExportMultiple.cpp:667 export/ExportMultiple.cpp:804
+msgid "Edit metadata"
msgstr ""
-"A versión de Audacity que está utilizando non soporta múltiples pistas de "
-"tempo."
-#: ../src/Menus.cpp:1352
-msgid "There are no label tracks to export."
-msgstr "Non hai pistas de etiquetas para exportar."
+#: export/ExportMultiple.cpp:923
+#, c-format
+msgid "Label %s is not a legal file name. You cannot use any of: %s\n"
+"Use..."
+msgstr ""
-#: ../src/Menus.cpp:1617
-msgid "There was a problem printing."
-msgstr "Houbo un problema imprimindo."
+#: export/ExportOGG.cpp:64
+msgid "Specify Ogg Vorbis Options"
+msgstr ""
-#: ../src/AudioIO.cpp:166
-msgid "There was an error initializing the audio i/o layer.\n"
-msgstr "Houbo un erro ao inicializar a capa de e/s de audio.\n"
+#: export/ExportOGG.cpp:79
+msgid "Ogg Vorbis Export Setup"
+msgstr ""
-#: ../src/Project.cpp:1985
+#: export/ExportOGG.cpp:155
+msgid "Ogg Vorbis Files"
+msgstr ""
+
+#: ../src/export/ExportOGG.cpp:191
+msgid "Exporting the selected audio as Ogg Vorbis"
+msgstr "Exportando o audio seleccionado como Ogg Vorbis"
+
+#: ../src/export/ExportOGG.cpp:192
+msgid "Exporting the entire project as Ogg Vorbis"
+msgstr "Exportando o proxecto enteiro como Ogg Vorbis"
+
+#: export/ExportPCM.cpp:119
+msgid "Specify Uncompressed Options"
+msgstr ""
+
+#: export/ExportPCM.cpp:189
+msgid "Uncompressed Export Setup"
+msgstr ""
+
+#: export/ExportPCM.cpp:195
+msgid "Header:"
+msgstr ""
+
+#: export/ExportPCM.cpp:199 import/ImportRaw.cpp:376
+#, fuzzy
+msgid "Encoding:"
+msgstr "Codificación: "
+
+#: export/ExportPCM.cpp:204
+#, fuzzy
+msgid "(Not all combinations of headers and encodings are possible.)"
+msgstr "(Non tódalas combinacións de encabezados\n"
+"e codificacións son posibles.)"
+
+#: export/ExportPCM.cpp:359
+msgid "Other uncompressed files"
+msgstr ""
+
+#: export/ExportPCM.cpp:377
+msgid "AIFF (Apple) signed 16 bit PCM"
+msgstr ""
+
+#: export/ExportPCM.cpp:388
+msgid "WAV (Microsoft) signed 16 bit PCM"
+msgstr ""
+
+#: export/ExportPCM.cpp:399
+msgid "GSM 6.10 WAV (mobile)"
+msgstr ""
+
+#: ../src/export/ExportPCM.cpp:73
+msgid "Cannot export audio in this format."
+msgstr "Non se pode exportar audio neste formato."
+
+#: export/ExportPCM.cpp:526
#, c-format
-msgid ""
-"This file was saved using Audacity %s.\n"
-"You are using Audacity %s - you need to upgrade to\n"
-"a newer version to open this file."
+msgid "Exporting the selected audio as %s"
msgstr ""
-"Este arquivo foi gardado usando Audacity %s.\n"
-"Está usando a versión %s de Audacity. Precisa actualizar a \n"
-"unha versión máis moderna para poder abrir o arquivo."
-#: ../src/AboutDialog.cpp:108
-msgid ""
-"This is a beta version of the program. It may contain bugs and unfinished "
-"features. We depend on your feedback, so please visit our website and give "
-"us your bug reports and feature requests."
+#: export/ExportPCM.cpp:528
+#, c-format
+msgid "Exporting the entire project as %s"
msgstr ""
-"Esta é a versión beta do programa. Pode conter erros e funcións sen "
-"rematar. Dependemos dos teus comentarios, polo cal por favor visita "
-"o noso sitio web e envÃanos información de erros e de funcións que "
-"quixeras que Audacity incorpore no futuro."
-#: ../src/AboutDialog.cpp:114
-msgid ""
-"This is a stable, completed release of Audacity. However, if you find a bug "
-"or have a suggestion, please contact us. We depend on feedback from users "
-"in order to continue to improve Audacity. For more information, visit our "
-"website."
+#: ../src/export/ExportPCM.cpp:160
+#, c-format
+msgid "Error (file may not have been written): %s"
+msgstr "Erro (o arquivo pode non ter sido escrito): %s"
+
+#: export/ExportPCM.cpp:735
+msgid "There are no options for this format.\n"
+msgstr ""
+
+#. i18n-hint: This is pointing users at another possible export format in
+#. * the list. So you should translate the quoted string
+#. * 'Other uncompressed files' exactly the same as you do the same string
+#. * when it comes up on it's own.
+#: export/ExportPCM.cpp:740
+msgid "If you need more control over the export format please use the 'Other uncompressed files' format."
+msgstr ""
+
+#: export/ExportPCM.cpp:745
+msgid "Your file will be exported as a 16-bit AIFF (Apple/SGI) file.\n"
+msgstr ""
+
+#: export/ExportPCM.cpp:750
+msgid "Your file will be exported as a 16-bit WAV (Microsoft) file.\n"
+msgstr ""
+
+#: export/ExportPCM.cpp:755
+msgid "Your file will be exported as a GSM 6.10 WAV file.\n"
+msgstr ""
+
+#: import/Import.cpp:162 import/ImportMP3.cpp:47
+msgid "MP3 files"
+msgstr ""
+
+#: import/Import.cpp:181
+msgid "Select stream(s) to import"
msgstr ""
-"Esta é unha versión estable e completa de Audacity. Sen embargo, se "
-"atopas algún erro ou tes algunha suxestión, por favor contáctanos. "
-"Dependemos da resposta dos usuarios para continuar mellorando "
-"Audacity. Para más información, visita o noso sitio web."
#: ../src/import/Import.cpp:159
#, c-format
msgid "This version of Audacity was not compiled with %s support."
msgstr "Esta versión de Audacity non foi compilada con soporte para %s."
-#: ../src/effects/Compressor.cpp:439
-msgid "Threshold: "
-msgstr "Umbral: "
-
-#: ../src/effects/Compressor.cpp:520
+#: import/Import.cpp:247
#, c-format
-msgid "Threshold: %d dB"
-msgstr "Umbral: %d dB"
+msgid "\"%s\" \n"
+"is a MIDI file, not an audio file. \n"
+"Audacity cannot open this type of file for playing, but you can\n"
+"edit it by clicking File > Import > MIDI."
+msgstr ""
-#: ../src/TrackPanel.cpp:2015
-msgid "Time Shift"
-msgstr "Traslado en Tempo"
+#. i18n-hint: %s will be the filename
+#: import/Import.cpp:257
+#, c-format
+msgid "\"%s\" is an audio CD track. \n"
+"Audacity cannot open audio CDs directly. \n"
+"Extract (rip) the CD tracks to an audio format that \n"
+"Audacity can import, such as WAV or AIFF."
+msgstr ""
-#: ../src/ControlToolBar.cpp:357
-msgid "Time Shift Tool"
-msgstr "Ferramenta de Traslado en Tempo"
+#: import/Import.cpp:263
+#, c-format
+msgid "\"%s\" is a playlist file. \n"
+"Audacity cannot open this file because it only contains links to other files. \n"
+"You may be able to open it in a text editor and download the actual audio files."
+msgstr ""
-#: ../src/Menus.cpp:553
-msgid "Time Shift Tool\tF5"
-msgstr "Ferramenta de traslado en tempo\tF5"
+#: import/Import.cpp:268
+#, c-format
+msgid "\"%s\" is a Windows Media Audio file. \n"
+"Audacity cannot open this type of file due to patent restrictions. \n"
+"You need to convert it to a supported audio format, such as WAV or AIFF."
+msgstr ""
-#: ../src/TimeTrack.cpp:38
-msgid "Time Track"
-msgstr "Pista de tempo"
+#: import/Import.cpp:273
+#, c-format
+msgid "\"%s\" is an Advanced Audio Coding file. \n"
+"Audacity cannot open this type of file. \n"
+"You need to convert it to a supported audio format, such as WAV or AIFF."
+msgstr ""
-#: ../src/prefs/MousePrefs.cpp:97
-msgid "Time shift sequence"
-msgstr "Secuencia de traslado en tempo"
+#: import/Import.cpp:278
+#, c-format
+msgid "\"%s\" is an encrypted audio file. \n"
+"These typically are from an online music store. \n"
+"Audacity cannot open this type of file due to the encryption. \n"
+"Try recording the file into Audacity, or burn it to audio CD then \n"
+"extract the CD track to a supported audio format such as WAV or AIFF."
+msgstr ""
-#: ../src/TrackPanel.cpp:2009
+#: import/Import.cpp:283
#, c-format
-msgid "Time shifted track '%s' %s %.02f seconds"
-msgstr "Pista '%s' %s deslizada %.02f segundos"
+msgid "\"%s\" is a RealPlayer media file. \n"
+"Audacity cannot open this proprietary format. \n"
+"You need to convert it to a supported audio format, such as WAV or AIFF."
+msgstr ""
-#: ../src/prefs/MousePrefs.cpp:97
-msgid "Time-Shift"
-msgstr "Traslado en tempo"
+#: import/Import.cpp:289
+#, c-format
+msgid "\"%s\" is a notes-based file, not an audio file. \n"
+"Audacity cannot open this type of file. \n"
+"Try converting it to an audio file such as WAV or AIFF and \n"
+"then import it, or record it into Audacity."
+msgstr ""
-#: ../src/Tags.cpp:435
-msgid "Title"
-msgstr "TÃtulo"
+#: import/Import.cpp:295
+#, c-format
+msgid "\"%s\" is a Musepack audio file. \n"
+"Audacity cannot open this type of file. \n"
+"If you think it might be an mp3 file, rename it to end with \".mp3\" \n"
+"and try importing it again. Otherwise you need to convert it to a supported audio \n"
+"format, such as WAV or AIFF."
+msgstr ""
-#: ../src/Tags.cpp:621
-msgid "Title:"
-msgstr "TÃtulo:"
+#: import/Import.cpp:301
+#, c-format
+msgid "\"%s\" is a Wavpack audio file. \n"
+"Audacity cannot open this type of file. \n"
+"You need to convert it to a supported audio format, such as WAV or AIFF."
+msgstr ""
-#: ../src/Menus.cpp:2369
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+#: import/Import.cpp:307
+#, c-format
+msgid "\"%s\" is a Dolby Digital audio file. \n"
+"Audacity cannot currently open this type of file. \n"
+"You need to convert it to a supported audio format, such as WAV or AIFF."
msgstr ""
-"Para representar o espectro, tódalas pistas seleccionadas deben ter a "
-"mesma frecuencia de mostreo."
-#: ../src/effects/ToneGen.cpp:43
-msgid "Tone Generator"
-msgstr "Xerador de tonos"
+#: import/Import.cpp:313
+#, c-format
+msgid "\"%s\" is an Ogg Speex audio file. \n"
+"Audacity cannot currently open this type of file. \n"
+"You need to convert it to a supported audio format, such as WAV or AIFF."
+msgstr ""
-#: ../src/effects/ToneGen.h:40
-msgid "Tone..."
-msgstr "Tono..."
+#: import/Import.cpp:319
+#, c-format
+msgid "\"%s\" is a video file. \n"
+"Audacity cannot currently open this type of file. \n"
+"You need to extract the audio to a supported format, such as WAV or AIFF."
+msgstr ""
-#: ../src/Menus.cpp:2395
+#: import/Import.cpp:324
#, c-format
-msgid ""
-"Too much audio was selected. Only the first %.1f seconds of audio will be "
-"analyzed."
+msgid "Audacity did not recognize the type of the file '%s'.\n"
+"If it is uncompressed, try importing it using \"Import Raw\"."
msgstr ""
-"Demasiado audio seleccionado. Só os primeiros %.1f segundos de audio "
-"serán analizados."
-#: ../src/prefs/MousePrefs.cpp:84
-msgid "Tool"
-msgstr "Ferramenta"
+#: import/Import.cpp:329
+#, c-format
+msgid "Audacity recognized the type of the file '%s',\n"
+"but was unable to import it."
+msgstr ""
-#: ../src/TrackPanel.cpp:4417
-msgid "Track Name"
-msgstr "Nome da pista"
+#: import/ImportFFmpeg.cpp:34
+msgid "FFmpeg-compatible files"
+msgstr ""
-#: ../src/Tags.cpp:657
-msgid "Track Number:"
-msgstr "Número de pista:"
+#: import/ImportFFmpeg.cpp:438
+#, c-format
+msgid "Index[%02x] Codec[%S], Language[%S], Bitrate[%S], Channels[%d], Duration[%d]"
+msgstr ""
-#: ../src/TrackPanel.cpp:2705
-msgid "Track Remove"
-msgstr "Eliminación de pista"
+#: import/ImportFLAC.cpp:43
+msgid "FLAC files"
+msgstr ""
-#: ../src/export/ExportMultiple.cpp:636
-msgid "Tracks"
-msgstr "Pistas"
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr ""
-#: ../src/effects/Repeat.cpp:57
-msgid "Tracks are too long to repeat the selection."
-msgstr "As pistas son moi longas para repetir a selección."
+#: ../src/import/ImportLOF.cpp:151 ../src/import/ImportLOF.cpp:177
+msgid "List of Files in basic text format"
+msgstr "Lista de arquivos en formato de texto básico"
-#: ../src/prefs/QualityPrefs.cpp:162
-msgid "Triangle"
-msgstr "Triángulo"
+#. i18n-hint: You do not need to translate "LOF"
+#: ../src/import/ImportLOF.cpp:268
+msgid "Invalid window offset in LOF file."
+msgstr "LÃmite de fiestra non válido en arquivo LOF."
-#: ../src/Menus.cpp:1902
-msgid "Trim"
-msgstr "Recortar"
+#. i18n-hint: You do not need to translate "LOF"
+#: ../src/import/ImportLOF.cpp:270 ../src/import/ImportLOF.cpp:291
+#: ../src/import/ImportLOF.cpp:364 ../src/import/ImportLOF.cpp:384
+msgid "LOF Error"
+msgstr "Erro de LOF"
-#: ../src/Menus.cpp:1902
-msgid "Trim file to selection"
-msgstr "Recortar arquivo ata o seleccionado"
+#. i18n-hint: You do not need to translate "LOF"
+#: ../src/import/ImportLOF.cpp:289
+msgid "Invalid duration in LOF file."
+msgstr "Duración non válida en arquivo LOF."
-#: ../src/EditToolBar.cpp:154
-msgid "Trim outside selection"
-msgstr "Recortar fóra de selección"
+#: import/ImportLOF.cpp:417
+#, fuzzy
+msgid "MIDI tracks cannot be offset individually, only audio files can be."
+msgstr "As pistas MIDI non poden ser trasladadas en tempo individualmente, só arquivos de audio poden."
-#: ../src/Menus.cpp:314
-msgid "Turn Grid Snap Off"
-msgstr "Desactivar o axuste a cuadrÃcula"
+#. i18n-hint: You do not need to translate "LOF"
+#: ../src/import/ImportLOF.cpp:383
+msgid "Invalid track offset in LOF file."
+msgstr "LÃmite de pista non válido en arquivo LOF."
-#: ../src/Menus.cpp:313
-msgid "Turn Grid Snap On"
-msgstr "Activar o axuste a cuadrÃcula"
+#: import/ImportMIDI.cpp:31
+msgid ": Filename too short."
+msgstr ""
-#: ../src/Menus.cpp:312
-msgid "Turn Snap-To Off"
-msgstr "Desactivar Axuste"
+#: import/ImportMIDI.cpp:31 import/ImportMIDI.cpp:39 import/ImportMIDI.cpp:45
+#: import/ImportMIDI.cpp:53
+msgid "Could not open file "
+msgstr ""
-#: ../src/Menus.cpp:311
-msgid "Turn Snap-To On"
-msgstr "Activar Axuste"
+#: import/ImportMIDI.cpp:39
+msgid ": Incorrect filetype."
+msgstr ""
-#: ../src/prefs/DirectoriesPrefs.cpp:114
-msgid "Unable to determine"
-msgstr "Non se pode determinar"
+#: import/ImportOGG.cpp:44
+msgid "Ogg Vorbis files"
+msgstr ""
-#: ../src/xml/XMLFileReader.cpp:83
-msgid "Unable to open project file."
-msgstr "Imposible abrir o arquivo de proxecto."
+#: ../src/import/ImportOGG.cpp:124
+msgid "Media read error"
+msgstr "Erro de lectura de medio"
-#: ../src/export/ExportMP3.cpp:1345 ../src/export/ExportOGG.cpp:53
-msgid "Unable to open target file for writing"
-msgstr "Imposible abrir o arquivo de destino para escritura"
+#: ../src/import/ImportOGG.cpp:127
+msgid "Not an Ogg Vorbis file"
+msgstr "Non é un arquivo Ogg Vorbis"
-#: ../src/prefs/FileFormatPrefs.cpp:93
-msgid "Uncompressed Export Format"
-msgstr "Formato descomprimido de exportación"
+#: ../src/import/ImportOGG.cpp:130
+msgid "Vorbis version mismatch"
+msgstr "Desigualdade de versión Vorbis"
-#: ../src/EditToolBar.cpp:159
-msgid "Undo"
-msgstr "Desfacer"
+#: ../src/import/ImportOGG.cpp:133
+msgid "Invalid Vorbis bitstream header"
+msgstr "Encabezado inválido para Vorbis bitstream"
-#: ../src/HistoryWindow.cpp:44
-msgid "Undo History"
-msgstr "Desfacer historial"
+#: ../src/import/ImportOGG.cpp:136
+msgid "Internal logic fault"
+msgstr "Fallo de lóxica interna"
-#: ../src/HistoryWindow.cpp:72
-msgid "Undo Levels Available (lots and lots)"
-msgstr "Desfacer nÃveis dispoñibles (moitos)"
+#: import/ImportPCM.cpp:66
+msgid "WAV, AIFF, and other uncompressed types"
+msgstr ""
-#: ../src/HistoryWindow.cpp:140
+#: import/ImportPlugin.h:135 import/ImportRaw.cpp:210
#, c-format
-msgid "Undo Levels Available: %d"
-msgstr "NÃveis de desfacer dispoñibles: %d"
+msgid "Importing %s"
+msgstr ""
-#: ../src/AudacityApp.cpp:641 ../src/AudacityApp.cpp:711
-#, c-format
-msgid "Unknown command line option: %s\n"
-msgstr "Opción de liña de comandos descoñecida: %s\n"
+#: import/ImportQT.cpp:18
+msgid "QuickTime files"
+msgstr ""
-#: ../src/TrackPanel.cpp:856
-msgid "Up Octave"
-msgstr "Subir unha oitava"
+#: import/ImportRaw.cpp:212
+msgid "Import Raw"
+msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:76
-msgid "Update spectrogram while playing"
-msgstr "Actualizar espectograma mentras se reproduce"
+#: ../src/import/ImportRaw.cpp:256
+msgid "Import Raw Data"
+msgstr "Importar arquivo en bruto"
-#: ../src/TrackPanel.cpp:4359 ../src/TrackPanel.cpp:4360
-msgid "Upper speed limit"
-msgstr "LÃmite superior de velocidade"
+#. i18n-hint: Refers to byte-order. Don't translate "endianness" if you don't
+#. know the correct technical word.
+#: ../src/import/ImportRaw.cpp:299
+msgid "No endianness"
+msgstr "Sen endianness"
-#: ../src/prefs/FileFormatPrefs.cpp:158
-msgid "Use OGG instead of MP3"
-msgstr "Usar OGG en vez de MP3"
+#. i18n-hint: Refers to byte-order. Don't translate this if you don't
+#. know the correct technical word.
+#: ../src/import/ImportRaw.cpp:302
+msgid "Little-endian"
+msgstr "Little-endian"
-#: ../src/export/ExportMultiple.cpp:649
-msgid "Using Label/Track Name"
-msgstr "Usando etiquetas/Nome de pista"
+#. i18n-hint: Refers to byte-order. Don't translate this if you don't
+#. know the correct technical word.
+#: ../src/import/ImportRaw.cpp:305
+msgid "Big-endian"
+msgstr "Big-endian"
-#: ../src/AudacityApp.cpp:626 ../src/AudacityApp.cpp:696
+#. i18n-hint: Refers to byte-order. Don't translate "endianness" if you don't
+#. know the correct technical word.
+#: ../src/import/ImportRaw.cpp:308
+msgid "Default endianness"
+msgstr "Endianness predeterminado"
+
+#: ../src/import/ImportRaw.cpp:332
+msgid "1 Channel (Mono)"
+msgstr "1 Canle (Mono)"
+
+#: ../src/import/ImportRaw.cpp:333
+msgid "2 Channels (Stereo)"
+msgstr "2 Canles (Estéreo)"
+
+#: ../src/import/ImportRaw.cpp:335
#, c-format
-msgid "Using block size of %ld\n"
-msgstr "Usando tamaño de bloque de %ld\n"
+msgid "%d Channels"
+msgstr "%d Canais"
+
+#: import/ImportRaw.cpp:379
+msgid "Byte order:"
+msgstr ""
+
+#: ../src/prefs/AudioIOPrefs.cpp:220
+msgid "Channels:"
+msgstr "Canles:"
+
+#: ../src/import/ImportRaw.cpp:348
+msgid "Start offset:"
+msgstr "LÃmite de comezo:"
+
+#: ../src/import/ImportRaw.cpp:359
+msgid "Amount to import:"
+msgstr "Cantidade a importar:"
+
+#: ../src/import/ImportRaw.cpp:370
+msgid "Sample rate:"
+msgstr "Frecuencia de mostreo:"
-#: ../src/effects/VST/VSTEffect.cpp:410
-msgid "VST Plug-in parameters:"
-msgstr "Parámetros de Plug-in VST:"
+#: ondemand/ODComputeSummaryTask.h:47
+msgid "Import complete. Calculating waveform"
+msgstr ""
-#: ../src/effects/AvcCompressor.cpp:362 ../src/effects/AvcCompressor.cpp:399
-#: ../src/effects/AvcCompressor.cpp:424 ../src/effects/AvcCompressor.cpp:431
-msgid "Validation error"
-msgstr "Erro de Validación"
+#: ondemand/ODDecodeTask.h:61
+msgid "Decoding Waveform"
+msgstr ""
-#: ../src/effects/AvcCompressor.cpp:361
+#: ondemand/ODWaveTrackTaskQueue.cpp:327
#, c-format
-msgid "Value must be from %d to %d."
-msgstr "O valor debe ser dende %d a %d."
+msgid "%s %2.0f%% complete. Click to change task focal point."
+msgstr ""
-#: ../src/effects/AvcCompressor.cpp:423 ../src/effects/AvcCompressor.cpp:430
-msgid "Values in columns must be in ascending order."
-msgstr "Os valores en columnas deben estar en orde ascendente."
+#: prefs/BatchPrefs.cpp:53
+msgid "Batch"
+msgstr ""
-#: ../src/widgets/Meter.cpp:286
-msgid "Vertical Stereo"
-msgstr "Estéreo vertical"
+#: prefs/BatchPrefs.cpp:75 prefs/GUIPrefs.cpp:134 prefs/TracksPrefs.cpp:99
+msgid "Behaviors"
+msgstr ""
-#: ../src/import/ImportOGG.cpp:130
-msgid "Vorbis version mismatch"
-msgstr "Desigualdade de versión Vorbis"
+#: prefs/BatchPrefs.cpp:78
+msgid "&Don't apply effects in batch mode"
+msgstr ""
-#: ../src/AudacityApp.cpp:120
-msgid ""
-"WARNING: You may be prompted to save your work. Clicking cancel will have "
-"the same effect as clicking no."
+#: prefs/BatchPrefs.cpp:81 prefs/GUIPrefs.cpp:147
+msgid "Cl&eanSpeech Mode (Customized GUI)"
msgstr ""
-"ADVERTENCIA: Pódese chegar a indicar que gardes o teu traballo. Facer "
-"click en cancelar terá o mesmo efecto que facer click en non."
-#: ../src/effects/Phaser.cpp:483
-msgid "WET"
-msgstr "HÃMIDO"
+#: prefs/DevicePrefs.cpp:54
+#, fuzzy
+msgid "Devices"
+msgstr "Dispositivo:"
-#: ../src/effects/Wahwah.cpp:532
-msgid "Wah Frequency Offset (%):"
-msgstr "Comenzo de Frecuencia Wah (%):"
+#: ../src/prefs/PrefsDialog.cpp:89
+msgid "Interface"
+msgstr "Contorno"
-#: ../src/effects/Wahwah.cpp:52
-msgid "Wahwah"
-msgstr "Wahwah"
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
+msgstr ""
-#: ../src/effects/Wahwah.cpp:461
-msgid "Wahwah by Nasca Octavian Paul"
-msgstr "Wahwah por Nasca Octavian Paul"
+#: prefs/DevicePrefs.cpp:120 prefs/MidiIOPrefs.cpp:121
+msgid "Using:"
+msgstr ""
-#: ../src/effects/Wahwah.h:39
-msgid "Wahwah..."
-msgstr "Wahwah..."
+#: ../src/prefs/AudioIOPrefs.cpp:80
+msgid "Playback"
+msgstr "Reproducción"
-#: ../src/widgets/Warning.cpp:45
-msgid "Warning"
-msgstr "Advertencia"
+#: ../src/prefs/AudioIOPrefs.cpp:148
+msgid "Recording"
+msgstr "Gravación"
-#: ../src/DirManager.cpp:83
-msgid ""
-"Warning: there is very little free disk space left on this volume. Please "
-"select another temporary directory in your preferences."
+#: prefs/DevicePrefs.cpp:151 prefs/MidiIOPrefs.cpp:134
+msgid "Channels"
msgstr ""
-"Advertencia: hai moi pouco espacio dispoñible neste disco. Por favor "
-"selecciona outro directorio temporal nas túas preferencias."
-#: ../src/TrackPanel.cpp:835
-msgid "Waveform"
-msgstr "Forma de onda"
+#: ../src/prefs/AudioIOPrefs.cpp:212
+msgid "1 (Mono)"
+msgstr "1 (Mono)"
-#: ../src/TrackPanel.cpp:836
-msgid "Waveform (dB)"
-msgstr "Forma de onda (dB)"
+#: ../src/prefs/AudioIOPrefs.cpp:213
+msgid "2 (Stereo)"
+msgstr "2 (Estéreo)"
-#: ../src/effects/ToneGen.cpp:263
-msgid "Waveform:"
-msgstr "Forma de onda:"
+#: ../src/prefs/PrefsDialog.cpp:88 ../src/prefs/PrefsDialog.cpp:216
+msgid "Directories"
+msgstr "Directorios"
-#: ../src/prefs/MousePrefs.cpp:110
-msgid "Wheel-Rotate"
-msgstr "Roda do rato"
+#: prefs/DirectoriesPrefs.cpp:82
+msgid "Temporary files directory"
+msgstr ""
-#: ../src/prefs/FileFormatPrefs.cpp:68
-msgid "When importing uncompressed audio files into Audacity"
-msgstr "Ao importar arquivos de audio descomprimidos dentro de Audacity"
+#: ../src/prefs/DirectoriesPrefs.cpp:57
+msgid "Location:"
+msgstr "Ubicación:"
-#. i18n-hint: It's asking for the location of a file, for
-#. example, "Where is lame_enc.dll?" - you could translate
-#. "Where would I find the file %s" instead if you want.
-#: ../src/export/ExportMP3.cpp:113
-#, c-format
-msgid "Where is %s?"
-msgstr "Onde está %s?"
+#: ../src/prefs/DirectoriesPrefs.cpp:78
+msgid "Free Space:"
+msgstr "Espacio libre:"
-#: ../src/Help.cpp:60
-msgid "Where is audacity-1.2-help.htb?"
-msgstr "Onde está audacity-1.2-help.htb?"
+#: prefs/DirectoriesPrefs.cpp:103
+msgid "Audio cache"
+msgstr ""
-#: ../src/effects/Noise.h:27
-msgid "White Noise"
-msgstr "Ruido branco"
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "Play and/or record using RAM (useful for slow drives)"
+msgstr ""
-#: ../src/prefs/KeyConfigPrefs.cpp:192
-msgid "XML files (*.xml)|*.xml|All files (*.*)|*.*"
-msgstr "Arquivos XML (*.xml)|*.xml|Tódolos arquivos (*.*)|*.*"
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
+msgstr ""
-#: ../src/Tags.cpp:465
-msgid "Year"
-msgstr "Año"
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
+msgstr ""
+
+#: ../src/prefs/DirectoriesPrefs.cpp:135
+msgid "Choose a location to place the temporary directory"
+msgstr "Seleccione onde establecer o directorio temporal"
-#: ../src/Tags.cpp:667
-msgid "Year:"
-msgstr "Año:"
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
-#: ../src/export/Export.cpp:240
+#: ../src/prefs/DirectoriesPrefs.cpp:181
#, c-format
-msgid ""
-"You are about to save a %s file with the name %s.\n"
-"Normally these files end in %s, and some programs will not open files with "
-"nonstandard extensions.\n"
-"Are you sure you want to save the file under this name?"
+msgid "Directory %s does not exist. Create it?"
+msgstr "O directorio %s non existe. ¿Desexa crealo?"
+
+#: ../src/prefs/DirectoriesPrefs.cpp:183
+msgid "New Temporary Directory"
+msgstr "Novo directorio temporal"
+
+#: ../src/prefs/DirectoriesPrefs.cpp:202
+#, c-format
+msgid "Directory %s is not writable"
+msgstr "O directorio %s non ten permiso de escritura"
+
+#: ../src/prefs/DirectoriesPrefs.cpp:214
+msgid "Changes to temporary directory will not take effect until Audacity is restarted"
+msgstr "Os cambios do directorio temporal non terán efecto ata que se reinicie Audacity"
+
+#: prefs/GUIPrefs.cpp:51
+msgid "In Browser"
msgstr ""
-"Va a gardar un arquivo %s co nome %s.\n"
-"Normalmente estos arquivos rematan en %s, e algúns programas non abrirán "
-"arquivos con extensións que non sexan estándar\n"
-"¿Está seguro de que quere gardar o arquivo baixo este nome?"
-#: ../src/TrackPanel.cpp:2378
-msgid ""
-"You are not zoomed in enough. Zoom in until you can see the individual "
-"samples."
+#: prefs/GUIPrefs.cpp:52
+msgid "From Internet"
msgstr ""
-"Non está o suficientemente cerca. Faga zoom ata poder ver os mostreos "
-"individuais."
-#: ../src/Menus.cpp:1225
-msgid "You must select a track first."
-msgstr "Debes seleccionar primeiro unha pista."
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
+msgstr ""
-#: ../src/AudioIO.cpp:167
-msgid ""
-"You will not be able to play or record audio.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
+msgstr ""
+
+#: ../src/prefs/GUIPrefs.cpp:150
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 dB (rango superficial para edición de alta amplitude)"
+
+#: ../src/prefs/GUIPrefs.cpp:157
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 dB (rango PCM de mostras de 8 bit)"
+
+#: prefs/GUIPrefs.cpp:63
+msgid "-60 dB (PCM range of 10 bit samples)"
+msgstr ""
+
+#: ../src/prefs/GUIPrefs.cpp:164
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 dB (rango PCM de mostras de 16 bits)"
+
+#: ../src/prefs/GUIPrefs.cpp:171
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 dB (lÃmite aproximado do oido humano)"
+
+#: ../src/prefs/GUIPrefs.cpp:178
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB (rango PCM de mostras de 24 bit)"
+
+#: prefs/GUIPrefs.cpp:96 prefs/SpectrumPrefs.cpp:129 prefs/TracksPrefs.cpp:75
+msgid "Display"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:98
+msgid "Er&gonomic order of audio I/O buttons"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:123
+msgid "Help:"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:136
+msgid "Cl&osing last window quits Audacity"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:139
+msgid "&Beep on completion of longer activities"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:145
+msgid "Modes"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:156
+msgid "Don't a&pply effects in batch mode"
+msgstr ""
+
+#: prefs/ImportExportPrefs.cpp:28
+msgid "Import / Export"
+msgstr ""
+
+#: prefs/ImportExportPrefs.cpp:53
+msgid "When importing audio files"
msgstr ""
-"Non estararás habilitado a reproducir ou gravar audio. \n"
+
+#: prefs/ImportExportPrefs.cpp:57
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
+msgstr ""
+
+#: prefs/ImportExportPrefs.cpp:59
+msgid "&Read uncompressed audio files directly from the original (faster)"
+msgstr ""
+
+#: prefs/ImportExportPrefs.cpp:64
+msgid "&Normalize all tracks in project"
+msgstr ""
+
+#: prefs/ImportExportPrefs.cpp:70
+msgid "When exporting tracks to an audio file"
+msgstr ""
+
+#: prefs/ImportExportPrefs.cpp:74
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+msgstr ""
+
+#: prefs/ImportExportPrefs.cpp:76
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+msgstr ""
+
+#: prefs/ImportExportPrefs.cpp:81
+msgid "S&how Metadata Editor prior to export step"
+msgstr ""
+
+#: prefs/ImportExportPrefs.cpp:84
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
+msgstr ""
+
+#: ../src/prefs/PrefsDialog.cpp:90
+msgid "Keyboard"
+msgstr "Teclado"
+
+#: prefs/KeyConfigPrefs.cpp:95
+msgid "Keyboard preferences currently unavailable."
+msgstr ""
+
+#: prefs/KeyConfigPrefs.cpp:96
+msgid "Open a new project to modify keyboard shortcuts."
+msgstr ""
+
+#: prefs/KeyConfigPrefs.cpp:121
+msgid "Key Bindings"
+msgstr ""
+
+#: prefs/KeyConfigPrefs.cpp:144
+msgid "S&et"
+msgstr ""
+
+#: ../src/prefs/KeyConfigPrefs.cpp:115
+msgid "Note: Pressing Cmd+Q will quit. All other keys are valid."
+msgstr "Nota: Premendo Cmd+Q sairase. O resto das teclas son válidas."
+
+#: prefs/KeyConfigPrefs.cpp:157 prefs/ThemePrefs.cpp:125
+msgid "&Defaults"
+msgstr ""
+
+#: ../src/prefs/KeyConfigPrefs.cpp:78
+msgid "Command"
+msgstr "Comando"
+
+#: ../src/prefs/KeyConfigPrefs.cpp:79
+msgid "Key Combination"
+msgstr "Combinación de teclas"
+
+#: ../src/EditToolBar.cpp:159
+msgid "Undo"
+msgstr "Desfacer"
+
+#: ../src/EditToolBar.cpp:160
+msgid "Redo"
+msgstr "Refacer"
+
+#: ../src/prefs/KeyConfigPrefs.cpp:188
+msgid "Select an XML file containing Audacity keyboard shortcuts..."
+msgstr "Seleccione un arquivo XML que conteña accesos directos de teclado de Audacity..."
+
+#: ../src/prefs/KeyConfigPrefs.cpp:206
+msgid "Error loading keyboard shortcuts"
+msgstr "Erro ao cargar accesos directos de teclado"
+
+#: ../src/prefs/KeyConfigPrefs.cpp:159
+msgid "Export Keyboard Shortcuts As:"
+msgstr "Exportar accesos directos de teclado como:"
+
+#: ../src/prefs/KeyConfigPrefs.cpp:174
+msgid "Error saving keyboard shortcuts"
+msgstr "Erro ao gardar accesos directos de teclado"
+
+#: prefs/KeyConfigPrefs.cpp:331
+#, c-format
+msgid "The keyboard shortcut '%s' is already assigned to:\n"
"\n"
+"'%s'"
+msgstr ""
-#: ../src/export/Export.cpp:147
-msgid "Your tracks will be mixed down to a single mono channel in the exported file."
-msgstr "As túas pistas serán mesturadas a unha soa canle mono no arquivo exportado."
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr ""
-#: ../src/export/Export.cpp:142
-msgid "Your tracks will be mixed down to two stereo channels in the exported file."
-msgstr "As túas pistas serán mesturadas a dúas canles estéreo no arquivo exportado."
+#: prefs/LibraryPrefs.cpp:79
+msgid "MP3 Export Library"
+msgstr ""
+
+#: ../src/prefs/FileFormatPrefs.cpp:180
+msgid "MP3 Library Version:"
+msgstr "Versión da librerÃa MP3:"
+
+#: prefs/LibraryPrefs.cpp:89
+msgid "MP3 Library:"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:92 prefs/LibraryPrefs.cpp:124
+msgid "&Locate..."
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:94
+msgid "LAME MP3 Library:"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:97 prefs/LibraryPrefs.cpp:130
+msgid "&Download"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:104
+msgid "FFmpeg Import/Export Library"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:108
+msgid "FFmpeg Library Version:"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:120 prefs/LibraryPrefs.cpp:126
+msgid "FFmpeg Library:"
+msgstr ""
+
+#: ../src/prefs/PrefsDialog.cpp:84
+msgid "Audio I/O"
+msgstr "Audio E/S"
+
+#: prefs/MidiIOPrefs.cpp:122
+msgid "Portaudio v"
+msgstr ""
+
+#: prefs/MidiIOPrefs.cpp:140 prefs/RecordingPrefs.cpp:57
+msgid "Playthrough"
+msgstr ""
+
+#: prefs/MidiIOPrefs.cpp:142
+#, fuzzy
+msgid "&Play other tracks while recording new one"
+msgstr "Reproducir outras pistas mentras se grava unha nova"
+
+#: prefs/MidiIOPrefs.cpp:145
+#, fuzzy
+msgid "&Hardware Playthrough (Play new track while recording it)"
+msgstr "Reproducción Hardware (Reproducir unha pista mentras se grava)"
+
+#: prefs/MidiIOPrefs.cpp:148
+#, fuzzy
+msgid "&Software Playthrough (Play new track while recording it)"
+msgstr "Reproducción Hardware (Reproducir unha pista mentras se grava)"
+
+#: prefs/MidiIOPrefs.cpp:153 prefs/PlaybackPrefs.cpp:68
+msgid "Cut Preview"
+msgstr ""
+
+#: prefs/MidiIOPrefs.cpp:156
+msgid "Play before cut region:"
+msgstr ""
+
+#: prefs/MidiIOPrefs.cpp:158
+msgid "Play after cut region:"
+msgstr ""
+
+#: prefs/MidiIOPrefs.cpp:163 prefs/RecordingPrefs.cpp:76
+msgid "Latency"
+msgstr ""
+
+#: prefs/MidiIOPrefs.cpp:168 prefs/RecordingPrefs.cpp:82
+msgid "Audio to buffer:"
+msgstr ""
+
+#: prefs/MidiIOPrefs.cpp:170 prefs/RecordingPrefs.cpp:88
+msgid "Latency correction:"
+msgstr ""
+
+#: prefs/MidiIOPrefs.cpp:177
+msgid "Seek Time"
+msgstr ""
+
+#: prefs/MidiIOPrefs.cpp:180 prefs/PlaybackPrefs.cpp:92
+msgid "Short period:"
+msgstr ""
+
+#: prefs/MidiIOPrefs.cpp:182 prefs/PlaybackPrefs.cpp:98
+msgid "Long period:"
+msgstr ""
+
+#: prefs/MidiIOPrefs.cpp:187 prefs/PlaybackPrefs.cpp:54
+msgid "Effects Preview"
+msgstr ""
+
+#: prefs/MidiIOPrefs.cpp:190
+msgid "Play when previewing:"
+msgstr ""
+
+#: ../src/prefs/PrefsDialog.cpp:91
+msgid "Mouse"
+msgstr "Rato"
+
+#: ../src/prefs/MousePrefs.cpp:71
+msgid "Mouse Bindings (default values, not configurable)"
+msgstr "Accións de rato (valores predeterminados, non configurábeis)"
+
+#: ../src/prefs/MousePrefs.cpp:84
+msgid "Tool"
+msgstr "Ferramenta"
+
+#: ../src/prefs/MousePrefs.cpp:85
+msgid "Command Action"
+msgstr "Acción de Comando"
+
+#: ../src/prefs/MousePrefs.cpp:86
+msgid "Buttons"
+msgstr "Botóns"
+
+#: ../src/prefs/MousePrefs.cpp:88 ../src/prefs/MousePrefs.cpp:92
+#: ../src/prefs/MousePrefs.cpp:100
+msgid "Left-Click"
+msgstr "Clic-Esquerdo"
+
+#: ../src/prefs/MousePrefs.cpp:88 ../src/prefs/MousePrefs.cpp:89
+#: ../src/prefs/MousePrefs.cpp:90
+msgid "Select"
+msgstr "Seleccionar"
+
+#: ../src/prefs/MousePrefs.cpp:88
+msgid "Set Selection Point"
+msgstr "Establecer punto de selección"
+
+#: ../src/prefs/MousePrefs.cpp:89 ../src/prefs/MousePrefs.cpp:93
+#: ../src/prefs/MousePrefs.cpp:97 ../src/prefs/MousePrefs.cpp:98
+#: ../src/prefs/MousePrefs.cpp:102
+msgid "Left-Drag"
+msgstr "Arrastre-Esquerdo"
+
+#: ../src/prefs/MousePrefs.cpp:89
+msgid "Set Selection Range"
+msgstr "Establecer rango de selección"
+
+#: ../src/prefs/MousePrefs.cpp:90
+msgid "Extend Selection Range"
+msgstr "Extender o rango da selección"
+
+#: ../src/prefs/MousePrefs.cpp:90
+msgid "Shift-Left-Click"
+msgstr "Maiús-Click-Esquerdo"
+
+#: prefs/MousePrefs.cpp:105
+msgid "Left-Double-Click"
+msgstr ""
+
+#: prefs/MousePrefs.cpp:105
+msgid "Select Clip or Entire Track"
+msgstr ""
+
+#: prefs/MousePrefs.cpp:106
+msgid "Ctrl-Left-Click"
+msgstr ""
+
+#: prefs/MousePrefs.cpp:106
+msgid "Set Selection Point and Play"
+msgstr ""
#: ../src/prefs/MousePrefs.cpp:92 ../src/prefs/MousePrefs.cpp:93
#: ../src/prefs/MousePrefs.cpp:94 ../src/prefs/MousePrefs.cpp:95
msgid "Zoom"
msgstr "Achegar/Alonxar"
-#: ../src/Menus.cpp:347
-msgid "Zoom &In\tCtrl+1"
-msgstr "Zoom &Achegar\tCtrl+1"
+#: ../src/prefs/MousePrefs.cpp:92
+msgid "Zoom in on Point"
+msgstr "Zoom Achegar nun punto"
-#: ../src/Menus.cpp:350
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "Zoom &Normal\tCtrl+2"
+#: ../src/prefs/MousePrefs.cpp:93
+msgid "Zoom in on a Range"
+msgstr "Zoom Achegar nun rango"
-#: ../src/Menus.cpp:351
-msgid "Zoom &Out\tCtrl+3"
-msgstr "Z&oom Alonxar\tCtrl+3"
+#: prefs/MousePrefs.cpp:109
+msgid "same as right-drag"
+msgstr ""
+
+#: ../src/prefs/MousePrefs.cpp:94
+msgid "Right-Click"
+msgstr "Clic-Dereito"
+
+#: ../src/prefs/MousePrefs.cpp:94
+msgid "Zoom out one step"
+msgstr "Alonxar un paso"
+
+#: ../src/prefs/MousePrefs.cpp:95
+msgid "Right-Drag"
+msgstr "Arrastre-dereito"
+
+#: prefs/MousePrefs.cpp:111
+msgid "same as left-drag"
+msgstr ""
+
+#: prefs/MousePrefs.cpp:112
+msgid "Shift-Drag"
+msgstr ""
+
+#: prefs/MousePrefs.cpp:112
+msgid "Zoom out on a Range"
+msgstr ""
+
+#: prefs/MousePrefs.cpp:113
+msgid "Middle-Click"
+msgstr ""
+
+#: prefs/MousePrefs.cpp:113
+msgid "Zoom default"
+msgstr ""
+
+#: prefs/MousePrefs.cpp:115
+msgid "Time shift clip or move up/down between tracks"
+msgstr ""
+
+#: prefs/MousePrefs.cpp:116
+msgid "Shift-Left-Drag"
+msgstr ""
+
+#: prefs/MousePrefs.cpp:116
+msgid "Time shift all clips in track"
+msgstr ""
+
+#: ../src/prefs/MousePrefs.cpp:103
+msgid "Ctrl-Left-Drag"
+msgstr "Ctrl-Frecha esq.-Arrastrar"
+
+#: prefs/MousePrefs.cpp:117
+msgid "Move clip up/down between tracks"
+msgstr ""
+
+#: ../src/prefs/MousePrefs.cpp:98
+msgid "Change Amplification Envelope"
+msgstr "Cambiar a envolvente de amplificación"
+
+#: ../src/prefs/MousePrefs.cpp:100
+msgid "Change Sample"
+msgstr "Cambiar mostreo"
+
+#: ../src/prefs/MousePrefs.cpp:100 ../src/prefs/MousePrefs.cpp:101
+#: ../src/prefs/MousePrefs.cpp:102 ../src/prefs/MousePrefs.cpp:103
+msgid "Pencil"
+msgstr "Lapis"
+
+#: ../src/prefs/MousePrefs.cpp:101
+msgid "Alt-Left-Click"
+msgstr "Alt-Frecha-Esquerda"
+
+#: ../src/prefs/MousePrefs.cpp:101
+msgid "Smooth at Sample"
+msgstr "Suavizar en mostreo"
+
+#: ../src/prefs/MousePrefs.cpp:102
+msgid "Change Several Samples"
+msgstr "Cambiar varios mostreos"
+
+#: ../src/prefs/MousePrefs.cpp:103
+msgid "Change ONE Sample only"
+msgstr "Cambiar UN mostreo somentes"
+
+#: ../src/prefs/MousePrefs.cpp:105 ../src/prefs/MousePrefs.cpp:106
+#: ../src/prefs/MousePrefs.cpp:107 ../src/prefs/MousePrefs.cpp:108
+msgid "Multi"
+msgstr "Multi"
+
+#: prefs/MousePrefs.cpp:126 prefs/MousePrefs.cpp:127
+#, fuzzy
+msgid "same as select tool"
+msgstr "Igual que ferramenta de selección"
+
+#: prefs/MousePrefs.cpp:128 prefs/MousePrefs.cpp:129
+#, fuzzy
+msgid "same as zoom tool"
+msgstr "Igual que ferramenta de zoom"
+
+#: ../src/prefs/MousePrefs.cpp:110 ../src/prefs/MousePrefs.cpp:111
+msgid "Any"
+msgstr "Calquera"
+
+#: ../src/prefs/MousePrefs.cpp:110
+msgid "Scroll up or down"
+msgstr "Desprazamento arriba ou abaixo"
+
+#: ../src/prefs/MousePrefs.cpp:110
+msgid "Wheel-Rotate"
+msgstr "Roda do rato"
+
+#: prefs/MousePrefs.cpp:132
+msgid "Scroll left or right"
+msgstr ""
+
+#: prefs/MousePrefs.cpp:132
+msgid "Shift-Wheel-Rotate"
+msgstr ""
+
+#: ../src/prefs/MousePrefs.cpp:111
+msgid "Ctrl-Wheel-Rotate"
+msgstr "Ctrl-Roda do rato"
+
+#: ../src/prefs/MousePrefs.cpp:111
+msgid "Zoom in or out"
+msgstr "Zoom Achegar ou Alonxar"
+
+#: prefs/PlaybackPrefs.cpp:58
+msgid "Length of preview:"
+msgstr ""
+
+#: prefs/PlaybackPrefs.cpp:72
+msgid "Preview before cut region:"
+msgstr ""
+
+#: prefs/PlaybackPrefs.cpp:78
+msgid "Preview after cut region:"
+msgstr ""
+
+#: prefs/PlaybackPrefs.cpp:88
+msgid "Seek Time when playing"
+msgstr ""
+
+#: ../src/prefs/PrefsDialog.cpp:52
+msgid "Audacity Preferences"
+msgstr "Preferencias de Audacity"
+
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr ""
+
+#: prefs/ProjectsPrefs.cpp:56
+msgid "When saving a project that depends on other audio files"
+msgstr ""
+
+#: prefs/ProjectsPrefs.cpp:60
+msgid "Always © all audio into project (safest)"
+msgstr ""
+
+#: prefs/ProjectsPrefs.cpp:62
+msgid "&Do not copy any audio"
+msgstr ""
+
+#: prefs/ProjectsPrefs.cpp:64
+msgid "&Ask user"
+msgstr ""
+
+#: prefs/ProjectsPrefs.cpp:71
+msgid "Auto save"
+msgstr ""
+
+#: prefs/ProjectsPrefs.cpp:73
+msgid "Auto save a copy of the project in a separate folder"
+msgstr ""
+
+#: prefs/ProjectsPrefs.cpp:79
+msgid "Auto save interval:"
+msgstr ""
+
+#: prefs/ProjectsPrefs.cpp:83
+msgid "minutes"
+msgstr ""
+
+#: ../src/prefs/QualityPrefs.cpp:161
+msgid "Rectangle"
+msgstr "Rectángulo"
+
+#: ../src/prefs/QualityPrefs.cpp:162
+msgid "Triangle"
+msgstr "Triángulo"
+
+#: ../src/prefs/QualityPrefs.cpp:163
+msgid "Shaped"
+msgstr "Moldeado "
+
+#: prefs/QualityPrefs.cpp:125
+msgid "Sampling"
+msgstr ""
+
+#: ../src/prefs/QualityPrefs.cpp:80
+msgid "Default Sample Rate:"
+msgstr "Frecuencia de mostreo predeterminado:"
+
+#: ../src/prefs/QualityPrefs.cpp:114
+msgid "Default Sample Format:"
+msgstr "Formato de mostreo predeterminado:"
+
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr ""
+
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+msgid "Sample Rate Converter:"
+msgstr ""
+
+#: prefs/QualityPrefs.cpp:178 prefs/QualityPrefs.cpp:200
+msgid "Dither"
+msgstr ""
+
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:59
+msgid "Overdub: &Play other tracks while recording new one"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:63
+msgid "&Hardware Playthrough: Play new track while recording it"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:67
+msgid "&Software Playthrough: Play new track while recording or monitoring"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:71
+msgid "(uncheck when recording \"stereo mix\")"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:98 prefs/RecordingPrefs.cpp:100
+msgid "Sound Activated Recording"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:109
+msgid "Sound Activation Level (dB):"
+msgstr ""
+
+#: ../src/prefs/PrefsDialog.cpp:87
+msgid "Spectrograms"
+msgstr "Espectrogramas"
+
+#: prefs/SpectrumPrefs.cpp:41
+msgid "8 - most wideband"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
+#: ../src/prefs/SpectrumPrefs.cpp:40
+msgid "256 - default"
+msgstr "256 - predeterminado"
+
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:54
+msgid "32768 - most narrowband"
+msgstr ""
+
+#: ../src/prefs/SpectrumPrefs.cpp:44
+msgid "4096 - most narrowband"
+msgstr "4096 - banda máis estreita"
+
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:93
+msgid "Window type"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:113
+msgid "FFT Skip Points"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:134
+msgid "Minimum Frequency (Hz):"
+msgstr ""
+
+#: ../src/prefs/SpectrumPrefs.cpp:104
+msgid "Maximum Frequency (Hz):"
+msgstr "Frecuencia máxima (Hz):"
+
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:165
+msgid "Minimum Amplitude (dB):"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:171
+msgid "Max. Number of Notes (1..128):"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:178
+msgid "&Find Notes"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:182
+msgid "&Quantize Notes"
+msgstr ""
+
+#: ../src/prefs/SpectrumPrefs.cpp:148
+msgid "The maximum frequency must be an integer"
+msgstr "A frecuencia máxima debe ser un enteiro"
+
+#: ../src/prefs/SpectrumPrefs.cpp:152
+msgid "Maximum frequency must be in the range 100 Hz - 100,000 Hz"
+msgstr "A frecuencia máxima debe estar no rango 100 Hz - 100,000 Hz"
+
+#: prefs/SpectrumPrefs.cpp:204
+msgid "The minimum frequency must be an integer"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:208
+msgid "Minimum frequency must be at least 0 Hz"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:220
+msgid "The minimum amplitude (dB) must be an integer"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:230
+msgid "The maximum number of notes must be in the range 1..128"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:60
+msgid "Theme"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:88
+msgid "Info"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:91
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
+#. i18n-hint: && in here is an escape character to get a single & on screen,
+#. * so keep it as is
+#: prefs/ThemePrefs.cpp:111
+msgid "Theme Cache - Images && Color"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:115
+msgid "Save Theme Cache"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:116
+msgid "Load Theme Cache"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:131
+msgid "Load Theme Cache At Startup"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:146
+msgid "Individual Theme Files"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:150
+msgid "Save Files"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:151
+msgid "Load Files"
+msgstr ""
+
+#: prefs/TracksPrefs.cpp:47
+msgid "Simple"
+msgstr ""
+
+#: prefs/TracksPrefs.cpp:77
+msgid "&Update display while playing"
+msgstr ""
+
+#: prefs/TracksPrefs.cpp:80
+msgid "Automatically &fit tracks vertically zoomed"
+msgstr ""
+
+#: prefs/TracksPrefs.cpp:88
+msgid "Default View Mode:"
+msgstr ""
+
+#: prefs/TracksPrefs.cpp:101
+msgid "&Select all audio in project, if none selected"
+msgstr ""
+
+#: prefs/TracksPrefs.cpp:104
+msgid "Enable cut &lines"
+msgstr ""
+
+#: prefs/TracksPrefs.cpp:107
+#, fuzzy
+msgid "Enable &dragging of left and right selection edges"
+msgstr "Habilitar arrastre do borde esquerdo ou dereito da selección"
+
+#: prefs/TracksPrefs.cpp:110
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+msgstr ""
+
+#: prefs/TracksPrefs.cpp:113
+msgid "Editing a &clip can move other clips"
+msgstr ""
+
+#: prefs/TracksPrefs.cpp:121
+msgid "Solo Button:"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr ""
+
+#: ../src/ControlToolBar.cpp:470
+msgid "Pause"
+msgstr "Pausa"
+
+#: ../src/ControlToolBar.cpp:471
+msgid "Stop"
+msgstr "Parar"
+
+#: toolbars/ControlToolBar.cpp:190 toolbars/ControlToolBar.cpp:211
+msgid "Clean Speech"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:206
+msgid "Play (Shift for Loop Play)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:210
+msgid "Record (Shift for Append Record)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:573 toolbars/ControlToolBar.cpp:905
+msgid "Error while opening sound device. "
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:743
+msgid "Recording in CleanSpeech mode is not possible when a track, or more than one project, is already open."
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:744
+msgid "Recording not permitted"
+msgstr ""
+
+#: toolbars/DeviceToolBar.cpp:109 toolbars/DeviceToolBar.cpp:205
+msgid "Output Device"
+msgstr ""
+
+#: toolbars/DeviceToolBar.cpp:127 toolbars/DeviceToolBar.cpp:206
+msgid "Input Device"
+msgstr ""
+
+#: ../src/EditToolBar.cpp:154
+msgid "Trim outside selection"
+msgstr "Recortar fóra de selección"
+
+#: ../src/EditToolBar.cpp:156
+msgid "Silence selection"
+msgstr "Silenciar selección"
+
+#: toolbars/EditToolBar.cpp:150 toolbars/EditToolBar.cpp:197
+msgid "Link Tracks"
+msgstr ""
#: ../src/EditToolBar.cpp:164
msgid "Zoom In"
@@ -4347,185 +8387,688 @@ msgstr "Zoom Achegar"
msgid "Zoom Out"
msgstr "Zoom Alonxar"
-#: ../src/EditToolBar.cpp:170
-msgid "Zoom Toggle"
-msgstr "Zoom anterior"
+#: ../src/EditToolBar.cpp:174
+msgid "Fit selection in window"
+msgstr "Axustar selección á fiestra"
-#: ../src/ControlToolBar.cpp:358
-msgid "Zoom Tool"
-msgstr "Ferramenta de Zoom"
+#: ../src/EditToolBar.cpp:176
+msgid "Fit project in window"
+msgstr "Axustar o proxecto na fiestra"
-#: ../src/Menus.cpp:552
-msgid "Zoom Tool\tF4"
-msgstr "Ferramenta de Zoom\tF4"
+#: toolbars/EditToolBar.cpp:200
+msgid "Fit Selection"
+msgstr ""
-#: ../src/prefs/MousePrefs.cpp:92
-msgid "Zoom in on Point"
-msgstr "Zoom Achegar nun punto"
+#: toolbars/EditToolBar.cpp:201
+msgid "Fit Project"
+msgstr ""
-#: ../src/prefs/MousePrefs.cpp:93
-msgid "Zoom in on a Range"
-msgstr "Zoom Achegar nun rango"
+#: toolbars/MeterToolBar.cpp:80
+msgid "Play Meter"
+msgstr ""
-#: ../src/prefs/MousePrefs.cpp:111
-msgid "Zoom in or out"
-msgstr "Zoom Achegar ou Alonxar"
+#: toolbars/MeterToolBar.cpp:81
+msgid "Meter-Play"
+msgstr ""
-#: ../src/prefs/MousePrefs.cpp:94
-msgid "Zoom out one step"
-msgstr "Alonxar un paso"
+#: toolbars/MeterToolBar.cpp:89
+msgid "Record Meter"
+msgstr ""
-#. i18n-hint: This snap-to string will appear in the status bar.
-#: ../src/FormatSelection.cpp:113
-msgid "[Snap-To Off]"
-msgstr "[Axuste desactivado]"
+#: toolbars/MeterToolBar.cpp:90
+msgid "Meter-Record"
+msgstr ""
-#. i18n-hint: This snap-to string will appear in the status bar.
-#: ../src/FormatSelection.cpp:115
-msgid "[Snap-To On]"
-msgstr "[Axuste activado]"
+#: ../src/MeterToolBar.cpp:66
+msgid "Output level meter"
+msgstr "Medidor de nÃvel de saÃda"
-#: ../src/effects/Echo.cpp:182
-msgid "by Dominic Mazzoni && Vaughan Johnson"
-msgstr "por Dominic Mazzoni && Vaughan Johnson"
+#: ../src/MeterToolBar.cpp:67
+msgid "Input level meter - click to monitor input"
+msgstr "NÃvel de entrada - faga clic para visualizar a entrada"
-#: ../src/effects/ChangePitch.cpp:247 ../src/effects/ChangeSpeed.cpp:287
-#: ../src/effects/ChangeTempo.cpp:164
-msgid "by Vaughan Johnson && Dominic Mazzoni"
-msgstr "por Vaughan Johnson && Dominic Mazzoni"
+#: ../src/MixerToolBar.cpp:135
+msgid "Output Volume"
+msgstr "Volume de saÃda"
-#: ../src/import/ImportRaw.cpp:354
-msgid "bytes"
-msgstr "bytes"
+#: toolbars/MixerToolBar.cpp:92
+msgid "Slider Output"
+msgstr ""
-#. i18n-hint: fps is "frames per second",
-#. cdda is "Compact Disc Digital Audio - don't translate
-#: ../src/FormatSelection.cpp:44
-msgid "cdda min:sec:frames 75 fps"
-msgstr "cdda min:seg:cadros 75 cps"
+#: ../src/MixerToolBar.cpp:138
+msgid "Input Volume"
+msgstr "Volume de entrada"
-#. i18n-hint: cdda is "Compact Disc Digital Audio - don't translate.
-#. A "sector" is a technical term - don't translate unless you're sure
-#. you know the correct term.
-#: ../src/FormatSelection.cpp:54
-msgid "cdda sectors+bytes (snap to samples)"
-msgstr "sectores cdda+bytes (Axuste a mostreos)"
+#: toolbars/MixerToolBar.cpp:103
+msgid "Slider Input"
+msgstr ""
-#: ../src/widgets/Meter.cpp:293
-msgid "dB"
-msgstr "dB"
+#: toolbars/MixerToolBar.cpp:134
+msgid "Input Source"
+msgstr ""
-#: ../src/TrackPanel.cpp:4388 ../src/effects/ChangePitch.cpp:277
-msgid "down"
-msgstr "abaixo"
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr ""
-#. i18n-hint: fps is "frames per second"
-#: ../src/FormatSelection.cpp:27
-msgid "film frames 24 fps"
-msgstr "cadros de film 24 cps"
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr ""
-#. i18n-hint: fps is "frames per second",
-#. and the other letters are for hours, minutes, seconds, frames
-#: ../src/FormatSelection.cpp:30
-msgid "film h:mm:ss:ff 24 fps"
-msgstr "film h:mm:ss:cc 24 cps"
+#: toolbars/SelectionBar.cpp:86 toolbars/SelectionBar.cpp:292
+msgid "Selection"
+msgstr ""
-#: ../src/FormatSelection.cpp:25
-msgid "hr:min:sec"
-msgstr "hr:min:seg"
+#: toolbars/SelectionBar.cpp:135 toolbars/SelectionBar.cpp:194
+msgid "Project Rate (Hz):"
+msgstr ""
-#: ../src/Menus.cpp:1356
-msgid "labels.txt"
-msgstr "rotulos.txt"
+#: toolbars/SelectionBar.cpp:149 toolbars/SelectionBar.cpp:255
+msgid "Selection Start:"
+msgstr ""
-#: ../src/TrackPanel.cpp:2012
-msgid "left"
-msgstr "esquerdo"
+#: toolbars/SelectionBar.cpp:163 toolbars/SelectionBar.cpp:164
+#: toolbars/SelectionBar.cpp:261
+msgid "Length"
+msgstr ""
-#: ../src/FormatSelection.cpp:23
-msgid "min:sec"
-msgstr "min:seg"
+#: toolbars/SelectionBar.cpp:174
+msgid "hidden"
+msgstr ""
-#: ../src/FormatSelection.cpp:46
-msgid "min:sec (snap to samples)"
-msgstr "min:seg "
+#: toolbars/SelectionBar.cpp:184 toolbars/SelectionBar.cpp:272
+msgid "Audio Position:"
+msgstr ""
-#: ../src/FormatSelection.cpp:48
-msgid "min:sec+samples (snap to samples)"
-msgstr "min:seg+mostreos (Axuste a mostreos)"
+#: toolbars/SelectionBar.cpp:236 toolbars/SelectionBar.cpp:241
+msgid "Snap To"
+msgstr ""
-#. i18n-hint: n/a is an English
-#. abbreviation meaning "not
-#. applicable" (in other words,
-#. unimportant, not relevant).
-#: ../src/effects/ChangeSpeed.cpp:338
-msgid "n/a"
-msgstr "non dispoñible"
+#: toolbars/SelectionBar.cpp:260
+msgid "Selection "
+msgstr ""
-#: ../src/TrackPanel.cpp:2012
-msgid "right"
-msgstr "dereito"
+#: toolbars/SelectionBar.cpp:340
+msgid "Selection Length"
+msgstr ""
-#: ../src/FormatSelection.cpp:45
-msgid "samples (snap to samples)"
-msgstr "mostreos (Axuste a mostreos)"
+#: toolbars/SelectionBar.cpp:348
+msgid "Selection End"
+msgstr ""
-#: ../src/FormatSelection.cpp:24
-msgid "sec"
-msgstr "seg"
+#: toolbars/ToolBar.cpp:120
+#, c-format
+msgid "Audacity %s ToolBar"
+msgstr ""
-#: ../src/FormatSelection.cpp:47
-msgid "sec (snap to samples)"
-msgstr "seg (Axuste a mostreos)"
+#: toolbars/ToolDock.cpp:75 toolbars/ToolDock.cpp:76
+msgid "ToolDock"
+msgstr ""
-#: ../src/FormatSelection.cpp:49
-msgid "sec+samples (snap to samples)"
-msgstr "seg+mostreos (Axuste a mostreos)"
+#: ../src/ControlToolBar.cpp:76
+msgid "Click and drag to select audio"
+msgstr "Faga clic e arrastre para seleccionar audio"
-#: ../src/FreqWindow.cpp:996
-msgid "spectrum.txt"
-msgstr "espectro.txt"
+#: ../src/ControlToolBar.cpp:77
+msgid "Click and drag to edit the amplitude envelope"
+msgstr "Faga clic e arrastre para editar a amplitude da envolvente"
-#: ../src/effects/ChangePitch.cpp:284 ../src/effects/ChangePitch.cpp:330
-#: ../src/effects/ChangeSpeed.cpp:351 ../src/effects/ChangeTempo.cpp:223
-#: ../src/effects/ChangeTempo.cpp:254
-msgid "to"
-msgstr "a"
+#: ../src/ControlToolBar.cpp:78
+msgid "Click and drag to edit the samples"
+msgstr "Faga clic e arrastre para editar os mostreos"
-#: ../src/Menus.cpp:293
-msgid "to Selection End"
-msgstr "ao Final da Selección"
+#: ../src/ControlToolBar.cpp:80
+msgid "Click to Zoom In, Shift-Click to Zoom Out"
+msgstr "Faga clic para Achegar, Maiús-Click para Alonxar"
-#: ../src/Menus.cpp:292
-msgid "to Selection Start"
-msgstr "ao Comenzo da Selección"
+#: ../src/ControlToolBar.cpp:82
+msgid "Drag to Zoom Into Region, Right-Click to Zoom Out"
+msgstr "Arrastrar para achegar dentro da rexión, Clic-dereito para alonxar"
-#: ../src/Menus.cpp:289
-msgid "to Track End"
-msgstr "ao Final da Pista"
+#: ../src/ControlToolBar.cpp:84
+msgid "Left=Zoom In, Right=Zoom Out, Middle=Normal"
+msgstr "Esquerdo=Achegar, Dereito=Alonxar, Central=Normal"
-#: ../src/Menus.cpp:288
-msgid "to Track Start"
-msgstr "ao Comenzo da Pista"
+#: ../src/ControlToolBar.cpp:86
+msgid "Click and drag to move a track in time"
+msgstr "Faga clic e arrastre para mover unha pista no tempo"
-#. i18n-hint: The translation of "translator_credits" will appear
-#. in the credits in the About Audacity window. Use this to add
-#. your own name(s) to the credits.
-#.
-#. For example: "English translation by Dominic Mazzoni."
-#.
-#: ../src/AboutDialog.cpp:127 ../src/AboutDialog.cpp:129
-msgid "translator_credits"
-msgstr "Traducción ao Galego por Xosé Antón Vicente RodrÃguez"
+#: ../src/ControlToolBar.cpp:360
+msgid "Multi-Tool Mode"
+msgstr "Modo Multi-Ferramenta"
-#: ../src/TrackPanel.cpp:4387 ../src/effects/ChangePitch.cpp:277
-msgid "up"
-msgstr "arriba"
+#: toolbars/ToolsToolBar.cpp:190
+msgid "Slide Tool"
+msgstr ""
-#: ../src/effects/ChangeSpeed.cpp:292
-msgid "using SampleRate, by Erik de Castro Lopo"
-msgstr "usando SampleRate, por Erik de Castro Lopo"
+#: toolbars/TranscriptionToolBar.cpp:170
+msgid "Play at selected speed"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:176 toolbars/TranscriptionToolBar.cpp:181
+#: toolbars/TranscriptionToolBar.cpp:262
+msgid "Playback Speed"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:194
+msgid "Adjust left selection to next onset"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:196
+msgid "Adjust right selection to previous offset"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:198
+msgid "Adjust left selection to next offset"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:200
+msgid "Adjust right selection to previous onset"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:202
+msgid "Select region of sound around cursor"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:204
+msgid "Select region of silence around cursor"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:206
+msgid "Automatically make labels from words"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:208
+msgid "Add label at selection"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:210
+msgid "Calibrate voicekey"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:214
+msgid "Adjust Sensitivity"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:219 toolbars/TranscriptionToolBar.cpp:275
+msgid "Sensitivity"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:224
+msgid "Energy"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:225
+msgid "Sign Changes (Low Threshold)"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:226
+msgid "Sign Changes (High Threshold)"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:227
+msgid "Direction Changes (Low Threshold)"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:228
+msgid "Direction Changes (High Threshold)"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:236 toolbars/TranscriptionToolBar.cpp:276
+msgid "Key type"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:261
+msgid "Play-at-speed"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:265
+msgid "Left-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:266
+msgid "Right-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:267
+msgid "Left-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:268
+msgid "Right-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:269
+msgid "Select-Sound"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:270
+msgid "Select-Silence"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:271
+msgid "Make Labels"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:272
+msgid "Add Label"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:273
+msgid "Calibrate"
+msgstr ""
+
+#: ../src/widgets/AButton.cpp:181
+msgid " (disabled)"
+msgstr " (deshabilitado)"
+
+#: widgets/AButton.cpp:458
+msgid "Press"
+msgstr ""
+
+#: widgets/AButton.cpp:537
+msgid "Button"
+msgstr ""
+
+#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
+#. i18n-hint: One-letter abbreviation for Left, in VU Meter
+#: ../src/widgets/ASlider.cpp:329 ../src/widgets/Meter.cpp:165
+msgid "L"
+msgstr "I"
+
+#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
+#. i18n-hint: One-letter abbreviation for Right, in VU Meter
+#: ../src/widgets/ASlider.cpp:332 ../src/widgets/Meter.cpp:167
+msgid "R"
+msgstr "R"
+
+#: ../src/widgets/ASlider.cpp:484
+msgid "Center"
+msgstr "Centro"
+
+#: ../src/widgets/ASlider.cpp:488
+msgid "Left"
+msgstr "Esq"
+
+#: ../src/widgets/ASlider.cpp:491
+msgid "Right"
+msgstr "Der"
+
+#: widgets/ErrorDialog.cpp:96
+msgid "Help"
+msgstr ""
+
+#: widgets/ErrorDialog.cpp:166
+msgid "<"
+msgstr ""
+
+#: widgets/ErrorDialog.cpp:167
+msgid ">"
+msgstr ""
+
+#: widgets/ErrorDialog.cpp:171
+msgid "Forwards"
+msgstr ""
+
+#: widgets/ErrorDialog.cpp:172
+msgid "Backwards"
+msgstr ""
+
+#: widgets/ErrorDialog.cpp:275
+msgid "Help on the Internet"
+msgstr ""
+
+#: widgets/Grabber.cpp:62
+msgid "Grabber"
+msgstr ""
+
+#: widgets/Grid.cpp:703
+#, c-format
+msgid "%d rows, %d columns"
+msgstr ""
+
+#: widgets/Grid.cpp:709 widgets/Grid.cpp:836
+#, c-format
+msgid "Row %d"
+msgstr ""
+
+#: widgets/Grid.cpp:851
+msgid "Empty"
+msgstr ""
+
+#: widgets/Meter.cpp:392
+msgid "Enable Meter"
+msgstr ""
+
+#: widgets/Meter.cpp:394
+msgid "Disable Meter"
+msgstr ""
+
+#: widgets/Meter.cpp:397
+msgid "Stop Monitoring"
+msgstr ""
+
+#: widgets/Meter.cpp:399
+msgid "Start Monitoring"
+msgstr ""
+
+#: ../src/widgets/Meter.cpp:285
+msgid "Horizontal Stereo"
+msgstr "Estéreo horizontal"
+
+#: ../src/widgets/Meter.cpp:286
+msgid "Vertical Stereo"
+msgstr "Estéreo vertical"
+
+#: widgets/Meter.cpp:421
+msgid "Preferences..."
+msgstr ""
+
+#: widgets/Meter.cpp:871
+msgid "Mix Volume"
+msgstr ""
+
+#: widgets/Meter.cpp:1140
+msgid "This determines how often the meter is refreshed.\n"
+"If you have a slower PC you may want to select a\n"
+"lower refresh rate (30 per second or lower), so that\n"
+"audio qualtiy is not affected by the meter display."
+msgstr ""
+
+#: widgets/Meter.cpp:1141
+msgid "Meter refresh rate per second [1-100]: "
+msgstr ""
+
+#: widgets/Meter.cpp:1142
+msgid "Meter Preferences"
+msgstr ""
+
+#: widgets/MultiDialog.cpp:82
+msgid " Please select an action "
+msgstr ""
+
+#: widgets/MultiDialog.cpp:86
+msgid "Please select an action"
+msgstr ""
+
+#: widgets/ProgressDialog.cpp:1060
+msgid "Elapsed Time:"
+msgstr ""
+
+#: widgets/ProgressDialog.cpp:1080
+msgid "Remaining Time:"
+msgstr ""
+
+#: ../src/Tags.cpp:716 ../src/effects/VST/VSTEffect.cpp:95
+#: ../src/effects/VST/VSTEffect.cpp:453 ../src/effects/Amplify.cpp:182
+#: ../src/effects/AvcCompressor.cpp:710 ../src/effects/BassBoost.cpp:327
+#: ../src/effects/ChangePitch.cpp:389 ../src/effects/ChangeSpeed.cpp:375
+#: ../src/effects/ChangeTempo.cpp:280 ../src/effects/Compressor.cpp:476
+#: ../src/effects/Echo.cpp:238 ../src/effects/Equalization.cpp:726
+#: ../src/effects/Filter.cpp:479 ../src/effects/Normalize.cpp:255
+#: ../src/effects/Phaser.cpp:571 ../src/effects/Repeat.cpp:248
+#: ../src/effects/Silence.cpp:140 ../src/effects/ToneGen.cpp:320
+#: ../src/effects/Wahwah.cpp:558 ../src/effects/ladspa/LadspaEffect.cpp:495
+#: ../src/effects/nyquist/Nyquist.cpp:730
+#: ../src/effects/nyquist/Nyquist.cpp:877 ../src/export/ExportMultiple.cpp:696
+#: ../src/import/ImportRaw.cpp:405 ../src/prefs/FileFormatPrefs.cpp:466
+#: ../src/prefs/PrefsDialog.cpp:109
+msgid "Cancel"
+msgstr "Cancelar"
+
+#: widgets/Ruler.cpp:1584 widgets/Ruler.cpp:1585
+msgid "Vertical Ruler"
+msgstr ""
+
+#. i18n-hint: Format string for displaying time in seconds. Change the comma
+#. * in the middle to the 1000s separator for your locale, and the 'seconds'
+#. * on the end to the word for seconds. Don't change the numbers.
+#: widgets/TimeTextCtrl.cpp:268
+msgid "01000,01000 seconds"
+msgstr ""
+
+#. i18n-hint: Format string for displaying time in hours, minutes and
+#. * seconds. Change the 'h' to the abbreviation for hours, 'm' to the
+#. * abbreviation for minutes and 's' to the abbreviation for seconds. Don't
+#. * change the numbers unless there aren't 60 seconds in a minute in your
+#. * locale
+#: widgets/TimeTextCtrl.cpp:277
+msgid "0100 h 060 m 060 s"
+msgstr ""
+
+#. i18n-hint: Name of time display format that shows time in days, hours,
+#. * minutes and seconds
+#: widgets/TimeTextCtrl.cpp:280
+msgid "dd:hh:mm:ss"
+msgstr ""
+
+#. i18n-hint: Format string for displaying time in days, hours, minutes and
+#. * seconds. Change the 'days' to the word for days, 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes and 's' to the
+#. * abbreviation for seconds. Don't change the numbers unless there aren't
+#. * 24 hours in a day in your locale
+#: widgets/TimeTextCtrl.cpp:286
+msgid "0100 days 024 h 060 m 060 s"
+msgstr ""
+
+#. i18n-hint: Name of time display format that shows time in hours,
+#. * minutes, seconds and hundredths of a second (1/100 second)
+#: widgets/TimeTextCtrl.cpp:289
+msgid "hh:mm:ss + hundredths"
+msgstr ""
+
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and hundredths of a second. Change the 'h' to the abbreviation for hours,
+#. * 'm' to the abbreviation for minutes and 's' to the abbreviation for seconds (the
+#. * hundredths are shown as decimal seconds) . Don't change the numbers
+#. * unless there aren't 60 minutes in an hour in your locale
+#: widgets/TimeTextCtrl.cpp:295
+msgid "0100 h 060 m 060.0100 s"
+msgstr ""
+
+#. i18n-hint: Name of time display format that shows time in hours,
+#. * minutes, seconds and milliseconds (1/1000 second)
+#: widgets/TimeTextCtrl.cpp:298
+msgid "hh:mm:ss + milliseconds"
+msgstr ""
+
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and milliseconds. Change the 'h' to the abbreviation for hours, 'm' to the
+#. * abbreviation for minutes and 's' to the abbreviation for seconds (the
+#. * milliseconds are shown as decimal seconds) . Don't change the numbers
+#. * unless there aren't 60 minutes in an hour in your locale
+#: widgets/TimeTextCtrl.cpp:304
+msgid "0100 h 060 m 060.01000 s"
+msgstr ""
+
+#. i18n-hint: Name of time display format that shows time in hours,
+#. * minutes, seconds and samples (at the current project sample rate)
+#: widgets/TimeTextCtrl.cpp:307
+msgid "hh:mm:ss + samples"
+msgstr ""
+
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and samples. Change the 'h' to the abbreviation for hours, 'm' to the
+#. * abbreviation for minutes, 's' to the abbreviation for seconds and
+#. * translate samples . Don't change the numbers
+#. * unless there aren't 60 seconds in a minute in your locale
+#: widgets/TimeTextCtrl.cpp:313
+msgid "0100 h 060 m 060 s+.# samples"
+msgstr ""
+
+#. i18n-hint: Name of time display format that shows time in samples (at the
+#. * current project sample rate)
+#: widgets/TimeTextCtrl.cpp:316
+msgid "samples"
+msgstr ""
+
+#. i18n-hint: Format string for displaying time in samples (lots of samples).
+#. * Change the ',' to the 1000s separator for your locale, and translate
+#. * samples. If 1000s aren't a base multiple for your number system, then you
+#. * can change the numbers to an appropriate one, and put a 0 on the front
+#: widgets/TimeTextCtrl.cpp:321
+msgid "01000,01000,01000 samples|#"
+msgstr ""
+
+#. i18n-hint: Name of time display format that shows time in hours, minutes,
+#. * seconds and frames at 24 frames per second (commonly used for films)
+#: widgets/TimeTextCtrl.cpp:324
+msgid "hh:mm:ss + film frames (24 fps)"
+msgstr ""
+
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and frames at 24 frames per second. Change the 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
+#. * for seconds and translate 'frames' . Don't change the numbers
+#. * unless there aren't 60 seconds in a minute in your locale
+#: widgets/TimeTextCtrl.cpp:330
+msgid "0100 h 060 m 060 s+.24 frames"
+msgstr ""
+
+#. i18n-hint: Name of time display format that shows time in frames (lots of
+#. * frames) at 24 frames per second (commonly used for films)
+#: widgets/TimeTextCtrl.cpp:333
+msgid "film frames (24 fps)"
+msgstr ""
+
+#. i18n-hint: Format string for displaying time in frames at 24 frames per
+#. * second. Translate 'frames' and leave the rest alone
+#: widgets/TimeTextCtrl.cpp:336
+msgid "01000,01000 frames|24"
+msgstr ""
+
+#. i18n-hint: Name of time display format that shows time in hours, minutes,
+#. * seconds and frames at NTSC TV drop-frame rate (used for American /
+#. * Japanese TV, and very odd)
+#: widgets/TimeTextCtrl.cpp:340
+msgid "hh:mm:ss + NTSC drop frames"
+msgstr ""
+
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and frames with NTSC drop frames. Change the 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
+#. * for seconds and translate 'frames'. Leave the |N alone, it's important!
+#: widgets/TimeTextCtrl.cpp:345
+msgid "0100 h 060 m 060 s+.30 frames|N"
+msgstr ""
+
+#. i18n-hint: Name of time display format that shows time in hours, minutes,
+#. * seconds and frames at NTSC TV non-drop-frame rate (used for American /
+#. * Japanese TV, and doesn't quite match wall time
+#: widgets/TimeTextCtrl.cpp:349
+msgid "hh:mm:ss + NTSC non-drop frames"
+msgstr ""
+
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and frames with NTSC drop frames. Change the 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
+#. * for seconds and translate 'frames'. Leave the | .999000999 alone,
+#. * the whole things really is slightly off-speed!
+#: widgets/TimeTextCtrl.cpp:355
+msgid "0100 h 060 m 060 s+.030 frames| .999000999"
+msgstr ""
+
+#. i18n-hint: Name of time display format that shows time in frames at NTSC
+#. * TV frame rate (used for American / Japanese TV
+#: widgets/TimeTextCtrl.cpp:358
+msgid "NTSC frames"
+msgstr ""
+
+#. i18n-hint: Format string for displaying time in frames with NTSC frames.
+#. * Translate 'frames' and leave the rest alone. That really is the frame
+#. * rate!
+#: widgets/TimeTextCtrl.cpp:362
+msgid "01000,01000 frames|29.97002997"
+msgstr ""
+
+#. i18n-hint: Name of time display format that shows time in hours, minutes,
+#. * seconds and frames at PAL TV frame rate (used for European TV)
+#: widgets/TimeTextCtrl.cpp:365
+msgid "hh:mm:ss + PAL frames (25 fps)"
+msgstr ""
+
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and frames with PAL TV frames. Change the 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
+#. * for seconds and translate 'frames'. Nice simple time code!
+#: widgets/TimeTextCtrl.cpp:370
+msgid "0100 h 060 m 060 s+.25 frames"
+msgstr ""
+
+#. i18n-hint: Name of time display format that shows time in frames at PAL
+#. * TV frame rate (used for European TV
+#: widgets/TimeTextCtrl.cpp:373
+msgid "PAL frames (25 fps)"
+msgstr ""
+
+#. i18n-hint: Format string for displaying time in frames with NTSC frames.
+#. * Translate 'frames' and leave the rest alone.
+#: widgets/TimeTextCtrl.cpp:376
+msgid "01000,01000 frames|25"
+msgstr ""
+
+#. i18n-hint: Name of time display format that shows time in hours, minutes,
+#. * seconds and frames at CD Audio frame rate (75 frames per second)
+#: widgets/TimeTextCtrl.cpp:379
+msgid "hh:mm:ss + CDDA frames (75 fps)"
+msgstr ""
+
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and frames with CD Audio frames. Change the 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
+#. * for seconds and translate 'frames'.
+#: widgets/TimeTextCtrl.cpp:384
+msgid "0100 h 060 m 060 s+.75 frames"
+msgstr ""
+
+#. i18n-hint: Name of time display format that shows time in frames at CD
+#. * Audio frame rate (75 frames per second)
+#: widgets/TimeTextCtrl.cpp:387
+msgid "CDDA frames (75 fps)"
+msgstr ""
+
+#. i18n-hint: Format string for displaying time in frames with CD Audio
+#. * frames. Translate 'frames' and leave the rest alone
+#: widgets/TimeTextCtrl.cpp:390
+msgid "01000,01000 frames|75"
+msgstr ""
+
+#: widgets/TimeTextCtrl.cpp:469
+msgid "Use right mouse button or context key to change format"
+msgstr ""
+
+#: widgets/TimeTextCtrl.cpp:1502
+msgid "Time Control"
+msgstr ""
+
+#: ../src/widgets/Warning.cpp:53
+msgid "Don't show this warning again"
+msgstr "Non amosar esta advertencia novamente"
+
+#: ../src/xml/XMLFileReader.cpp:45
+#, c-format
+msgid "Could not open file: \"%s\""
+msgstr "Non se puido abrir o arquivo: \"%s\""
+
+#: xml/XMLFileReader.cpp:63
+#, c-format
+msgid "Error: %hs at line %lu"
+msgstr ""
+
+#: xml/XMLFileReader.cpp:79
+#, c-format
+msgid "Could not load file: \"%s\""
+msgstr ""
+
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
-#: ../src/effects/ChangePitch.cpp:252 ../src/effects/ChangeTempo.cpp:169
-msgid "using SoundTouch, by Olli Parviainen"
-msgstr "usando SoundTouch, por Olli Parviainen"
diff --git a/locale/he.po b/locale/he.po
index 7709cd3..827c279 100644
--- a/locale/he.po
+++ b/locale/he.po
@@ -17,9 +17,7 @@ msgstr "Project-Id-Version: audacity 1.3.4\n"
"X-Poedit-Language: Hebrew\n"
"X-Poedit-Country: ISRAEL\n"
-#: AboutDialog.cpp:142
-#: AudacityApp.cpp:740
-#: Menus.cpp:733
+#: AboutDialog.cpp:142 AudacityApp.cpp:740 Menus.cpp:733
msgid "&About Audacity..."
msgstr "&...Audacity ××××ת"
@@ -32,11 +30,11 @@ msgid "Audacity is a free program written by a team of volunteer <a href=\"http:
msgstr ""
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#. i18n-hint: The translation of "translator_credits" will appear
@@ -45,8 +43,7 @@ msgstr ""
#.
#. For example: "English translation by Dominic Mazzoni."
#.
-#: AboutDialog.cpp:192
-#: AboutDialog.cpp:194
+#: AboutDialog.cpp:192 AboutDialog.cpp:194
msgid "translator_credits"
msgstr " ×¨× × :××תר×× ×§×¨××× \n"
" "
@@ -91,7 +88,7 @@ msgid "Special thanks:"
msgstr ":××××××ת ת×××ת"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
msgstr ""
#: AboutDialog.cpp:254
@@ -99,14 +96,11 @@ msgid "Audacity"
msgstr "Audacity"
#. i18n-hint: Information about when audacity was compiled
-#: AboutDialog.cpp:288
-#: AboutDialog.cpp:301
-#: AboutDialog.cpp:457
+#: AboutDialog.cpp:288 AboutDialog.cpp:301 AboutDialog.cpp:457
msgid "Build Information"
msgstr ""
-#: AboutDialog.cpp:294
-#: effects/AvcCompressor.cpp:674
+#: AboutDialog.cpp:294 effects/AvcCompressor.cpp:674
msgid "Enabled"
msgstr "×××פשר"
@@ -119,33 +113,27 @@ msgid "File Format Support"
msgstr "פ×ר××× ×§××צ×× × ×ª××××"
#. i18n-hint: This is what the library (libmad) does - imports MP3 files
-#: AboutDialog.cpp:315
-#: AboutDialog.cpp:317
+#: AboutDialog.cpp:315 AboutDialog.cpp:317
msgid "MP3 Importing"
msgstr "MP××××× 3 "
-#: AboutDialog.cpp:324
-#: AboutDialog.cpp:327
+#: AboutDialog.cpp:324 AboutDialog.cpp:327
msgid "Ogg Vorbis Import and Export"
msgstr "Ogg Vorbis ××צ×× ×××××× "
-#: AboutDialog.cpp:331
-#: AboutDialog.cpp:334
+#: AboutDialog.cpp:331 AboutDialog.cpp:334
msgid "ID3 tag support"
msgstr "ת×××× ×ת×× ID3"
-#: AboutDialog.cpp:341
-#: AboutDialog.cpp:344
+#: AboutDialog.cpp:341 AboutDialog.cpp:344
msgid "FLAC import and export"
msgstr ""
-#: AboutDialog.cpp:349
-#: AboutDialog.cpp:352
+#: AboutDialog.cpp:349 AboutDialog.cpp:352
msgid "MP2 export"
msgstr "MP2 ××צ××"
-#: AboutDialog.cpp:357
-#: AboutDialog.cpp:360
+#: AboutDialog.cpp:357 AboutDialog.cpp:360
msgid "Import via QuickTime"
msgstr "QuickTime ×××× ××¨× "
@@ -154,15 +142,12 @@ msgstr "QuickTime ×××× ××¨× "
msgid "Core Libraries"
msgstr "ספר××ת ×רע××"
-#: AboutDialog.cpp:373
-#: AboutDialog.cpp:376
-#: AboutDialog.cpp:379
+#: AboutDialog.cpp:373 AboutDialog.cpp:376 AboutDialog.cpp:379
#: AboutDialog.cpp:381
msgid "Sample rate conversion"
msgstr "×××ר קצ×× ××××××"
-#: AboutDialog.cpp:386
-#: AboutDialog.cpp:389
+#: AboutDialog.cpp:386 AboutDialog.cpp:389
msgid "Audio playback and recording"
msgstr "×ש××¢× ×××§××× ×©× ×©×××¢"
@@ -170,24 +155,17 @@ msgstr "×ש××¢× ×××§××× ×©× ×©×××¢"
msgid "Features"
msgstr "ת××× ×ת"
-#: AboutDialog.cpp:406
-#: AboutDialog.cpp:409
-#: AboutDialog.cpp:414
-#: AboutDialog.cpp:417
-#: AboutDialog.cpp:422
-#: AboutDialog.cpp:425
-#: AboutDialog.cpp:430
-#: AboutDialog.cpp:433
+#: AboutDialog.cpp:406 AboutDialog.cpp:409 AboutDialog.cpp:414
+#: AboutDialog.cpp:417 AboutDialog.cpp:422 AboutDialog.cpp:425
+#: AboutDialog.cpp:430 AboutDialog.cpp:433
msgid "Plug-in support"
msgstr "ת×××× ×ת×ספ××"
-#: AboutDialog.cpp:438
-#: AboutDialog.cpp:441
+#: AboutDialog.cpp:438 AboutDialog.cpp:441
msgid "Sound card mixer support"
msgstr "ת×××× ××ער×× ×ר××ס ××§××"
-#: AboutDialog.cpp:446
-#: AboutDialog.cpp:449
+#: AboutDialog.cpp:446 AboutDialog.cpp:449
msgid "Pitch and Tempo Change support"
msgstr ""
@@ -222,16 +200,12 @@ msgstr "ספר××ת ××¢×פ×ת:"
msgid "GPL License"
msgstr "GPL רש×××"
-#: AudacityApp.cpp:468
-#: Project.cpp:1751
+#: AudacityApp.cpp:468 Project.cpp:1751
#, c-format
msgid "%s is already open in another window."
msgstr ".××ר פת×× ××××× ××ר%s"
-#: AudacityApp.cpp:470
-#: Project.cpp:1753
-#: Project.cpp:1834
-#: Project.cpp:1978
+#: AudacityApp.cpp:470 Project.cpp:1753 Project.cpp:1834 Project.cpp:1978
#: Project.cpp:2080
msgid "Error opening project"
msgstr "ש×××× ×פת××ת פר×××§×"
@@ -257,22 +231,29 @@ msgstr "×× ×× ×ס×"
msgid "Output Meter"
msgstr "×× ××צ×××"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
-#: AudacityApp.cpp:742
-#: Menus.cpp:470
+#: Menus.cpp:164
+msgid "&New"
+msgstr "&××ש"
+
+#: Menus.cpp:166
+msgid "&Open..."
+msgstr "&...פת×"
+
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
+
+#: AudacityApp.cpp:742 Menus.cpp:470
#, fuzzy
-msgid "&Preferences...\tCtrl+,"
-msgstr "&...××¢×פ×ת\tCtrl+P"
+msgid "&Preferences..."
+msgstr "&...××¢×פ×ת"
-#: AudacityApp.cpp:824
-#: AudacityApp.cpp:901
+#: AudacityApp.cpp:824 AudacityApp.cpp:901
#, c-format
msgid "Using block size of %ld\n"
msgstr "%ld ש×××ש ××××× ××××§ ש×\n"
-#: AudacityApp.cpp:846
-#: AudacityApp.cpp:916
+#: AudacityApp.cpp:846 AudacityApp.cpp:916
#, c-format
msgid "Unknown command line option: %s\n"
msgstr "%s :××פצ×ת ×פק××× ×× ×××רת\n"
@@ -386,17 +367,16 @@ msgstr ":ש××××"
msgid "Error Initializing Audio"
msgstr "ש×××× ×××ת××× ×ש××¢"
+#: AudioIO.cpp:1225
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
+"Audacity has brought it back to start at zero.\n"
+"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
+msgstr ""
+
#: AudioIO.cpp:1236
msgid "Latency problem"
msgstr "××¢××ת ×סתר×"
-#: AudioIO.cpp:1236
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
-"Audacity has brought it back to start at zero.\n"
-"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
-msgstr "ער×× ××¡×ª×¨× ×ר×× ×ש××¢ ××××§×× ××××ת × ×¡×ª×¨ ××¤× × ××פס.\n"
-" ...×"
-
#: AutoRecovery.cpp:54
msgid "Automatic Crash Recovery"
msgstr "×ת××שש×ת ×××××××ת ×ש××××"
@@ -410,8 +390,7 @@ msgstr ""
msgid "Recoverable projects"
msgstr "פר×××§××× ××¨× ×©×××ר"
-#: AutoRecovery.cpp:78
-#: Tags.cpp:2032
+#: AutoRecovery.cpp:78 Tags.cpp:2032
#, fuzzy
msgid "Name"
msgstr "ש×"
@@ -443,38 +422,25 @@ msgstr ""
msgid "Confirm?"
msgstr "?××ש×ר"
-#: AutoRecovery.cpp:146
-#: AutoRecovery.cpp:183
+#: AutoRecovery.cpp:146 AutoRecovery.cpp:183
msgid "Could not enumerate files in auto save directory"
msgstr "×× ×××× ××ספר ×§×צ×× ×ספר××ת ש×××¨× ×××××××ת"
-#: AutoRecovery.cpp:147
-#: AutoRecovery.cpp:184
-#: Menus.cpp:2545
-#: Menus.cpp:4445
-#: Project.cpp:1937
-#: Project.cpp:3296
-#: Project.cpp:3375
-#: WaveTrack.cpp:556
-#: WaveTrack.cpp:575
-#: WaveTrack.cpp:1664
-#: effects/Effect.cpp:436
-#: export/ExportMP2.cpp:230
-#: prefs/DirectoriesPrefs.cpp:189
-#: prefs/KeyConfigPrefs.cpp:245
-#: toolbars/ControlToolBar.cpp:532
+#: AutoRecovery.cpp:147 AutoRecovery.cpp:184 Menus.cpp:2545 Menus.cpp:4445
+#: Project.cpp:1937 Project.cpp:3296 Project.cpp:3375 WaveTrack.cpp:556
+#: WaveTrack.cpp:575 WaveTrack.cpp:1664 effects/Effect.cpp:436
+#: export/ExportMP2.cpp:230 prefs/DirectoriesPrefs.cpp:189
+#: prefs/KeyConfigPrefs.cpp:245 toolbars/ControlToolBar.cpp:532
#: toolbars/ControlToolBar.cpp:841
msgid "Error"
msgstr "ש××××"
-#: BatchCommandDialog.cpp:56
-#: BatchCommandDialog.cpp:60
+#: BatchCommandDialog.cpp:56 BatchCommandDialog.cpp:60
#: BatchCommandDialog.cpp:61
msgid "Select Command"
msgstr "××ר פק×××"
-#: BatchCommandDialog.cpp:80
-#: BatchProcessDialog.cpp:454
+#: BatchCommandDialog.cpp:80 BatchProcessDialog.cpp:454
#: prefs/KeyConfigPrefs.cpp:142
msgid "&Command"
msgstr "&פק×××"
@@ -483,8 +449,7 @@ msgstr "&פק×××"
msgid "&Edit Parameters"
msgstr "&ער×× ×¤×¨××ר××"
-#: BatchCommandDialog.cpp:89
-#: BatchProcessDialog.cpp:455
+#: BatchCommandDialog.cpp:89 BatchProcessDialog.cpp:455
msgid "&Parameters"
msgstr "&פר××ר××"
@@ -528,8 +493,7 @@ msgid "Apply %s with parameter(s)\n"
"%s"
msgstr ""
-#: BatchCommands.cpp:675
-#: BatchCommands.cpp:680
+#: BatchCommands.cpp:675 BatchCommands.cpp:680
msgid "Test Mode"
msgstr "××¦× ×××× × (TEST MODE)"
@@ -538,8 +502,7 @@ msgstr "××¦× ×××× × (TEST MODE)"
msgid "Apply %s"
msgstr "%s ××××©× ×ת "
-#: BatchProcessDialog.cpp:60
-#: BatchProcessDialog.cpp:70
+#: BatchProcessDialog.cpp:60 BatchProcessDialog.cpp:70
#: BatchProcessDialog.cpp:71
msgid "Apply Chain"
msgstr "××××©× ×©×¨×©×¨×ª"
@@ -564,24 +527,15 @@ msgstr "×××©× &×פר×××§× × ××××"
msgid "Apply to &Files..."
msgstr "&...×××©× ××§×צ××"
-#: BatchProcessDialog.cpp:108
-#: BatchProcessDialog.cpp:247
-#: Tags.cpp:2071
-#: Tags.cpp:2075
-#: Tags.cpp:2375
-#: Tags.cpp:2379
-#: UploadDialog.cpp:180
-#: effects/AvcCompressor.cpp:732
-#: effects/ChangeLength.cpp:183
-#: effects/SpikeCleaner.cpp:188
-#: effects/VST/VSTEffect.cpp:446
-#: effects/audiounits/AudioUnitEffect.cpp:882
-#: effects/vamp/VampEffect.cpp:411
+#: BatchProcessDialog.cpp:108 BatchProcessDialog.cpp:247 Tags.cpp:2071
+#: Tags.cpp:2075 Tags.cpp:2375 Tags.cpp:2379 UploadDialog.cpp:180
+#: effects/AvcCompressor.cpp:732 effects/ChangeLength.cpp:183
+#: effects/SpikeCleaner.cpp:188 effects/VST/VSTEffect.cpp:446
+#: effects/audiounits/AudioUnitEffect.cpp:882 effects/vamp/VampEffect.cpp:411
msgid "&Cancel"
msgstr "&×××"
-#: BatchProcessDialog.cpp:146
-#: BatchProcessDialog.cpp:191
+#: BatchProcessDialog.cpp:146 BatchProcessDialog.cpp:191
msgid "No chain selected"
msgstr "×× × ×××¨× ×©×¨×©×¨×ª"
@@ -618,8 +572,7 @@ msgstr "...×××ש×"
msgid "File"
msgstr "×§×××¥"
-#: BatchProcessDialog.cpp:356
-#: BatchProcessDialog.cpp:360
+#: BatchProcessDialog.cpp:356 BatchProcessDialog.cpp:360
#: BatchProcessDialog.cpp:361
msgid "Edit Chains"
msgstr "ער×× ×©×¨×©×¨××ת"
@@ -628,19 +581,12 @@ msgstr "ער×× ×©×¨×©×¨××ת"
msgid "&Chains"
msgstr "&שרשר××ת"
-#: BatchProcessDialog.cpp:435
-#: Tags.cpp:815
-#: Tags.cpp:1455
-#: Tags.cpp:2055
+#: BatchProcessDialog.cpp:435 Tags.cpp:815 Tags.cpp:1455 Tags.cpp:2055
msgid "&Add"
msgstr "&××סף"
-#: BatchProcessDialog.cpp:436
-#: LabelDialog.cpp:126
-#: Tags.cpp:816
-#: Tags.cpp:1456
-#: Tags.cpp:2056
-#: TrackPanel.cpp:4176
+#: BatchProcessDialog.cpp:436 LabelDialog.cpp:126 Tags.cpp:816 Tags.cpp:1456
+#: Tags.cpp:2056 TrackPanel.cpp:4176
msgid "&Remove"
msgstr "&×סר"
@@ -654,9 +600,8 @@ msgstr ""
#. i18n-hint: This is the number of the command in the list
#: BatchProcessDialog.cpp:453
-#, fuzzy
-msgid "No"
-msgstr "××"
+msgid "Num"
+msgstr ""
#: BatchProcessDialog.cpp:459
msgid "&Insert"
@@ -743,8 +688,7 @@ msgstr "ש×× ××סק"
msgid "Copy Selected Audio Into Project"
msgstr ""
-#: Dependencies.cpp:304
-#: Dependencies.cpp:410
+#: Dependencies.cpp:304 Dependencies.cpp:410
msgid "Cancel Save"
msgstr "××× ×©××ר×"
@@ -756,8 +700,7 @@ msgstr ""
msgid "Copy All Audio into Project (Safer)"
msgstr ""
-#: Dependencies.cpp:317
-#: Dependencies.cpp:322
+#: Dependencies.cpp:317 Dependencies.cpp:322
msgid "Ask me"
msgstr "ש×× ××ת×"
@@ -790,9 +733,7 @@ msgid "Warning: there is very little free disk space left on this volume.\n"
"Please select another temporary directory in your preferences."
msgstr ""
-#: DirManager.cpp:221
-#: DirManager.cpp:251
-#: DirManager.cpp:332
+#: DirManager.cpp:221 DirManager.cpp:251 DirManager.cpp:332
msgid "Progress"
msgstr "×תק×××ת"
@@ -846,8 +787,7 @@ msgstr ""
msgid "Changed block %s to new alias name\n"
msgstr ""
-#: DirManager.cpp:1115
-#: DirManager.cpp:1403
+#: DirManager.cpp:1115 DirManager.cpp:1403
msgid "Inspecting project file data..."
msgstr ""
@@ -895,14 +835,9 @@ msgstr ""
msgid "Close project immediately with no changes"
msgstr ""
-#: DirManager.cpp:1228
-#: DirManager.cpp:1263
-#: DirManager.cpp:1309
-#: DirManager.cpp:1351
-#: export/Export.cpp:484
-#: export/Export.cpp:501
-#: export/Export.cpp:520
-#: widgets/Warning.cpp:55
+#: DirManager.cpp:1228 DirManager.cpp:1263 DirManager.cpp:1309
+#: DirManager.cpp:1351 export/Export.cpp:484 export/Export.cpp:501
+#: export/Export.cpp:520 widgets/Warning.cpp:55
msgid "Warning"
msgstr "×תר××"
@@ -920,14 +855,11 @@ msgstr ""
msgid "Replace missing data with silence [permanent upon save]"
msgstr ""
-#: DirManager.cpp:1260
-#: DirManager.cpp:1348
+#: DirManager.cpp:1260 DirManager.cpp:1348
msgid "Temporarily replace missing data with silence [this session only]"
msgstr "[××× ×ת ××××£ ××××¢ ×סר ××©×§× [ ××¢×××ת ×× ××××"
-#: DirManager.cpp:1261
-#: DirManager.cpp:1307
-#: DirManager.cpp:1349
+#: DirManager.cpp:1261 DirManager.cpp:1307 DirManager.cpp:1349
msgid "Close project immediately with no further changes"
msgstr "ס××ר ×ת ×פר×××§× ×××××ת ××× ×©×× ×××× × ×ספ××"
@@ -989,11 +921,11 @@ msgstr "Rectangular"
msgid "FFmpeg support not compiled in"
msgstr ""
-#: FFmpeg.cpp:101
+#: FFmpeg.cpp:103
msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
#: FFmpeg.cpp:104
@@ -1051,11 +983,12 @@ msgstr ""
msgid "FFmpeg not found"
msgstr ""
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
#: FFmpeg.h:109
@@ -1078,8 +1011,7 @@ msgstr ""
msgid "Frequency Analysis"
msgstr "× ×ת×× ×ª×ר"
-#: FreqWindow.cpp:140
-#: TrackPanel.cpp:522
+#: FreqWindow.cpp:140 TrackPanel.cpp:522
msgid "Spectrum"
msgstr "ספק×ר××"
@@ -1107,8 +1039,7 @@ msgstr "Cepstrum"
msgid "Algorithm"
msgstr "××××ר×ת×:"
-#: FreqWindow.cpp:168
-#: HistoryWindow.cpp:79
+#: FreqWindow.cpp:168 HistoryWindow.cpp:79
msgid "Size"
msgstr "××××"
@@ -1134,10 +1065,7 @@ msgstr "ת××ר×ת ×××ר×ת××ת"
msgid "Axis"
msgstr ""
-#: FreqWindow.cpp:206
-#: LabelDialog.cpp:128
-#: Menus.cpp:202
-#: Menus.cpp:231
+#: FreqWindow.cpp:206 LabelDialog.cpp:128 Menus.cpp:202 Menus.cpp:231
msgid "&Export..."
msgstr "...××צ××&"
@@ -1145,45 +1073,55 @@ msgstr "...××צ××&"
msgid "Export"
msgstr "××צ×"
-#: FreqWindow.cpp:209
-#: widgets/ErrorDialog.cpp:135
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
+#: FreqWindow.cpp:209 widgets/ErrorDialog.cpp:135
msgid "Close"
msgstr "ס××ר"
-#: FreqWindow.cpp:272
-#: FreqWindow.cpp:402
-#: effects/AutoDuck.cpp:489
-#: effects/AutoDuck.cpp:523
-#: effects/AutoDuck.cpp:791
-#: effects/Compressor.cpp:352
-#: effects/Compressor.cpp:360
-#: effects/Equalization.cpp:1107
-#: effects/Equalization.cpp:1109
-#: effects/Equalization.cpp:1117
-#: effects/Equalization.cpp:1183
-#: effects/Equalization.cpp:1392
-#: effects/Equalization.cpp:1403
-#: effects/Normalize.cpp:365
-#: widgets/Meter.cpp:367
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr ""
+
+#: FreqWindow.cpp:272 FreqWindow.cpp:402 effects/AutoDuck.cpp:489
+#: effects/AutoDuck.cpp:523 effects/AutoDuck.cpp:791
+#: effects/Compressor.cpp:352 effects/Compressor.cpp:360
+#: effects/Equalization.cpp:1107 effects/Equalization.cpp:1109
+#: effects/Equalization.cpp:1117 effects/Equalization.cpp:1183
+#: effects/Equalization.cpp:1392 effects/Equalization.cpp:1403
+#: effects/Normalize.cpp:365 widgets/Meter.cpp:367
msgid "dB"
msgstr "dB"
#. i18n-hint: This is the abbreviation for "Hertz", or
#. cycles per second.
-#: FreqWindow.cpp:287
-#: FreqWindow.cpp:442
-#: effects/Equalization.cpp:1148
-#: effects/Equalization.cpp:1179
-#: import/ImportRaw.cpp:416
+#: FreqWindow.cpp:287 FreqWindow.cpp:442 effects/Equalization.cpp:1148
+#: effects/Equalization.cpp:1179 import/ImportRaw.cpp:416
msgid "Hz"
msgstr "Hz"
+#: Menus.cpp:3394
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr ".×××× ×צ××ר ×ת ×ספק×ר××, ××× ×רצ××¢×ת ×× ××ר×ת ×××××ת ××××ת ××¢××ת ×××ª× ×§×¦× ×××××"
+
+#: Menus.cpp:3420
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "%.1f -××תר ××× ×©××¢ × ××ר. רק ×\n"
+".××©× ××ת ×ר×ש×× ×ת ×©× ×ש××¢ ×× ×ת××"
+
#: FreqWindow.cpp:386
msgid "Not enough data selected."
msgstr "×× ×ספ××§ ××××¢ × ××ר"
-#: FreqWindow.cpp:450
-#: effects/AutoDuck.cpp:793
+#: FreqWindow.cpp:450 effects/AutoDuck.cpp:793
msgid "s"
msgstr ""
@@ -1205,12 +1143,8 @@ msgstr "spectrum.txt"
msgid "Export Spectral Data As:"
msgstr ":××¦× ××××¢ ספק×ר××"
-#: FreqWindow.cpp:1077
-#: LabelDialog.cpp:599
-#: Menus.cpp:2177
-#: Project.cpp:2394
-#: Project.cpp:3348
-#: prefs/KeyConfigPrefs.cpp:180
+#: FreqWindow.cpp:1077 LabelDialog.cpp:599 Menus.cpp:2177 Project.cpp:2394
+#: Project.cpp:3348 prefs/KeyConfigPrefs.cpp:180
msgid "Couldn't write to file: "
msgstr ":×× ×××× ××ת×× ×§×××¥"
@@ -1222,6 +1156,21 @@ msgstr "(Hz) ת×ר \t (dB) ר×× "
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "(Hz)×ש×××× (×©× ××ת) / ת×ר\t×¢×צ××(×ש×××× (×©× ××ת/t(Hz) ת×ר\t×¢×צ×× "
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr ""
+
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr ""
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr ""
@@ -1300,7 +1249,7 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr ""
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
msgstr ""
#: HelpText.cpp:244
@@ -1324,7 +1273,7 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr ""
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
msgstr ""
#: HelpText.cpp:383
@@ -1360,15 +1309,9 @@ msgstr "ר×× ×××××§×"
msgid "&Discard"
msgstr "×ר××§&"
-#: HistoryWindow.cpp:111
-#: Tags.cpp:2072
-#: Tags.cpp:2074
-#: Tags.cpp:2376
-#: Tags.cpp:2378
-#: effects/ChangeLength.cpp:186
-#: effects/SpikeCleaner.cpp:191
-#: effects/vamp/VampEffect.cpp:414
-#: export/ExportCL.cpp:396
+#: HistoryWindow.cpp:111 Tags.cpp:2072 Tags.cpp:2074 Tags.cpp:2376
+#: Tags.cpp:2378 effects/ChangeLength.cpp:186 effects/SpikeCleaner.cpp:191
+#: effects/vamp/VampEffect.cpp:414 export/ExportCL.cpp:396
msgid "&OK"
msgstr "&××ש×ר"
@@ -1376,8 +1319,7 @@ msgstr "&××ש×ר"
msgid "Unable to determine"
msgstr "×× ×ס××× ××××××"
-#: Internat.cpp:180
-#: import/ImportRaw.cpp:392
+#: Internat.cpp:180 import/ImportRaw.cpp:392
msgid "bytes"
msgstr "×ת××"
@@ -1393,13 +1335,19 @@ msgstr "MB"
msgid "GB"
msgstr "GB"
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
#: LabelDialog.cpp:52
msgid "Track"
msgstr "ער××¥"
-#: LabelDialog.cpp:53
-#: Menus.cpp:4019
-#: Menus.cpp:4047
+#: LabelDialog.cpp:53 Menus.cpp:4019 Menus.cpp:4047
msgid "Label"
msgstr "ת×××ת"
@@ -1412,8 +1360,7 @@ msgstr "××× ×ת×××"
msgid "End Time"
msgstr "××× ×¡×××"
-#: LabelDialog.cpp:98
-#: Menus.cpp:615
+#: LabelDialog.cpp:98 Menus.cpp:615
msgid "&Edit Labels"
msgstr "&ער×× ×ª××××ת "
@@ -1429,8 +1376,7 @@ msgstr "××× ×¡ ××ר×"
msgid "Insert &Before"
msgstr "××× ×¡ ××¤× ×"
-#: LabelDialog.cpp:127
-#: Menus.cpp:192
+#: LabelDialog.cpp:127 Menus.cpp:192
msgid "&Import..."
msgstr "...××××&"
@@ -1449,20 +1395,15 @@ msgstr ""
msgid "Confirm"
msgstr "×שר"
-#: LabelDialog.cpp:514
-#: Menus.cpp:3517
+#: LabelDialog.cpp:514 Menus.cpp:3517
msgid "Select a text file containing labels..."
msgstr "...××ר ×ת ×§×××¥ ×××§×¡× ××××× ×ת ×ת×××ת"
-#: LabelDialog.cpp:518
-#: Menus.cpp:3521
+#: LabelDialog.cpp:518 Menus.cpp:3521
msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
msgstr "×§×× ××§×¡× (*.txt)|*.txt|×× ××§×צ×× (*.*)|*.*"
-#: LabelDialog.cpp:532
-#: Menus.cpp:3533
-#: Project.cpp:1800
-#: Project.cpp:1808
+#: LabelDialog.cpp:532 Menus.cpp:3533 Project.cpp:1800 Project.cpp:1808
#: import/ImportMIDI.cpp:31
msgid "Could not open file: "
msgstr ":×× ×××× ×פת×× ×§×××¥"
@@ -1471,13 +1412,11 @@ msgstr ":×× ×××× ×פת×× ×§×××¥"
msgid "No labels to export."
msgstr ".××× ×ª××××ת ×××צ×"
-#: LabelDialog.cpp:564
-#: Menus.cpp:2142
+#: LabelDialog.cpp:564 Menus.cpp:2142
msgid "Export Labels As:"
msgstr ":×××¦× ×ª×××ת ×ת×ר"
-#: LabelDialog.cpp:566
-#: Menus.cpp:2140
+#: LabelDialog.cpp:566 Menus.cpp:2140
msgid "labels.txt"
msgstr "labels.txt"
@@ -1489,10 +1428,7 @@ msgstr "ת××ת רצ××¢× ××ש×"
msgid "Enter track name"
msgstr "××× ×¡ ×©× ×¨×¦××¢× "
-#: LabelDialog.cpp:701
-#: LabelDialog.h:52
-#: LabelTrack.cpp:88
-#: Menus.cpp:547
+#: LabelDialog.cpp:701 LabelDialog.h:52 LabelTrack.cpp:88 Menus.cpp:547
msgid "&Label Track"
msgstr "&×ª× ×©× ×רצ××¢×"
@@ -1519,24 +1455,15 @@ msgstr "Audacity פ××ª× ×¤×¨×××§×"
msgid "&File"
msgstr "&×§×××¥"
-#: Menus.cpp:164
-msgid "&New\tCtrl+N"
-msgstr "&××ש\tCtrl+N"
-
-#: Menus.cpp:166
-msgid "&Open...\tCtrl+O"
-msgstr "&...פת×\tCtrl+O"
-
#: Menus.cpp:171
-msgid "&Close\tCtrl+W"
-msgstr "&ס××ר\tCtrl+W"
+msgid "&Close"
+msgstr "&ס××ר"
#: Menus.cpp:174
-msgid "&Save Project\tCtrl+S"
-msgstr "&ש××ר פר×××§×\tCtrl+S"
+msgid "&Save Project"
+msgstr "&ש××ר פר×××§×"
-#: Menus.cpp:178
-#: Project.cpp:2643
+#: Menus.cpp:178 Project.cpp:2643
msgid "Save Project &As..."
msgstr "...ש××ר פר×××§× &×ת×ר"
@@ -1557,8 +1484,8 @@ msgid "&Import"
msgstr "&×××××"
#: Menus.cpp:194
-msgid "&Audio...\tCtrl+Shift+I"
-msgstr "&...ש××¢\tCtrl+Shift+I"
+msgid "&Audio..."
+msgstr "&...ש××¢"
#: Menus.cpp:195
msgid "&Labels..."
@@ -1572,8 +1499,7 @@ msgstr "&...MIDI"
msgid "&Raw Data..."
msgstr "&...×××× ××××¢ ×××××"
-#: Menus.cpp:208
-#: Menus.cpp:237
+#: Menus.cpp:208 Menus.cpp:237
msgid "Expo&rt Selection..."
msgstr "&...××¦× ××××¨× ×ת×ר"
@@ -1589,12 +1515,11 @@ msgstr "...××¦× &×ר××××"
msgid "Export MIDI..."
msgstr ""
-#: Menus.cpp:245
-msgid "CleanSpeech C&hain..."
-msgstr ""
+#: Menus.cpp:258
+msgid "Appl&y Chain..."
+msgstr "&...×××©× ×©×¨×©×¨×ª"
-#: Menus.cpp:246
-#: Menus.cpp:260
+#: Menus.cpp:246 Menus.cpp:260
msgid "Edit C&hains..."
msgstr "...ער×× ×©×¨&שרת"
@@ -1606,10 +1531,6 @@ msgstr ""
msgid "I&mport CleanSpeech Presets..."
msgstr ""
-#: Menus.cpp:258
-msgid "Appl&y Chain..."
-msgstr "&...×××©× ×©×¨×©×¨×ª"
-
#: Menus.cpp:265
msgid "&Upload File..."
msgstr "&...××¢× ×§×××¥"
@@ -1623,76 +1544,73 @@ msgid "&Print..."
msgstr "&...××פס"
#: Menus.cpp:285
-msgid "E&xit\tCtrl+Q"
-msgstr "&צ×\tCtrl+Q"
+msgid "E&xit"
+msgstr "&צ×"
-#: Menus.cpp:293
-#: toolbars/EditToolBar.cpp:76
+#: Menus.cpp:293 toolbars/EditToolBar.cpp:76
msgid "&Edit"
msgstr "&ער×××"
#: Menus.cpp:297
-msgid "&Undo\tCtrl+Z"
-msgstr "&××× ××צ××¢\tCtrl+Z"
+msgid "&Undo"
+msgstr "&××× ××צ××¢"
-#: Menus.cpp:305
-#: prefs/KeyConfigPrefs.cpp:369
-#: toolbars/EditToolBar.cpp:146
+#: Menus.cpp:305 prefs/KeyConfigPrefs.cpp:369 toolbars/EditToolBar.cpp:146
msgid "&Redo"
msgstr "&×צע ש××"
#: Menus.cpp:318
-msgid "Cu&t\tCtrl+X"
-msgstr "××&×ר\tCtrl+X"
+msgid "Cu&t"
+msgstr "××&×ר"
#: Menus.cpp:322
-msgid "Spl&it Cut\tCtrl+Alt+X"
-msgstr "&פ×צ×× ×××ר×\tCtrl+Alt+X"
+msgid "Spl&it Cut"
+msgstr "&פ×צ×× ×××ר×"
#: Menus.cpp:323
-msgid "&Copy\tCtrl+C"
-msgstr "&×עתק\tCtrl+C"
+msgid "&Copy"
+msgstr "&×עתק"
#: Menus.cpp:327
-msgid "&Paste\tCtrl+V"
-msgstr "&××××§\tCtrl+V"
+msgid "&Paste"
+msgstr "&××××§"
#: Menus.cpp:331
#, fuzzy
-msgid "Tri&m\tCtrl+T"
-msgstr "&קצ××¥\tCtrl+T"
+msgid "Tri&m"
+msgstr "&קצ××¥"
#: Menus.cpp:333
-msgid "&Delete\tCtrl+K"
-msgstr "&×××§\tCtrl+K"
+msgid "&Delete"
+msgstr "&×××§"
#: Menus.cpp:334
-msgid "Split D&elete\tCtrl+Alt+K"
-msgstr "&פ×צ×× ××××§×\tCtrl+Alt+K"
+msgid "Split D&elete"
+msgstr "&פ×צ×× ××××§×"
#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
+msgid "Silence Audi&o"
msgstr ""
#: Menus.cpp:337
-msgid "Sp&lit\tCtrl+I"
-msgstr "&פ×צ××\tCtrl+I"
+msgid "Sp&lit"
+msgstr "&פ×צ××"
#: Menus.cpp:342
-msgid "Split Ne&w\tCtrl+Alt+I"
-msgstr "&×¤×¦× ××ש\tCtrl+Alt+I"
+msgid "Split Ne&w"
+msgstr "&×¤×¦× ××ש"
#: Menus.cpp:347
-msgid "&Join\tCtrl+J"
-msgstr "&צרף\tCtrl+J"
+msgid "&Join"
+msgstr "&צרף"
#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
+msgid "Detac&h at Silences"
msgstr ""
#: Menus.cpp:350
-msgid "Duplic&ate\tCtrl+D"
-msgstr "&ש×פ×\tCtrl+D"
+msgid "Duplic&ate"
+msgstr "&ש×פ×"
#: Menus.cpp:400 Menus.cpp:639
msgid "Stereo Trac&k to Mono"
@@ -1704,82 +1622,66 @@ msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:365
-msgid "&Cut\tAlt+X"
-msgstr "××&×ר\tAlt+X"
+msgid "&Cut"
+msgstr "××&×ר"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:370
-msgid "&Split Cut\tShift+Alt+X"
-msgstr "&×××ר ×פצ×\tShift+Alt+X"
+msgid "&Split Cut"
+msgstr "&×××ר ×פצ×"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:375
-msgid "Co&py\tShift+Alt+C"
-msgstr "&×עתק\tShift+Alt+C"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:381
-#, fuzzy
-msgid "&Delete\tAlt+K"
-msgstr "&×××§\tCtrl+K"
+msgid "Co&py"
+msgstr "&×עתק"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:386
-msgid "Sp&lit Delete\tShift+Alt+K"
-msgstr "&פ×צ×× ××××§×\tShift+Alt+K"
+msgid "Sp&lit Delete"
+msgstr "&פ×צ×× ××××§×"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:391
#, fuzzy
-msgid "Sile&nce\tAlt+L"
-msgstr "&שק×\tCtrl+L"
+msgid "Sile&nce"
+msgstr "&שק×"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:397
-msgid "Spli&t\tAlt+I"
-msgstr "&פצ×\tAlt+I"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:402
-msgid "&Join\tAlt+J"
-msgstr "&×××\tAlt+J"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
-msgstr ""
+msgid "Spli&t"
+msgstr "&פצ×"
#: Menus.cpp:456
msgid "&Select"
msgstr ""
#: Menus.cpp:414
-msgid "&All\tCtrl+A"
-msgstr "&×××\tCtrl+A"
+msgid "&All"
+msgstr "&×××"
#: Menus.cpp:415
-msgid "&None\tCtrl+Shift+A"
-msgstr "&××××\tCtrl+Shift+A"
+msgid "&None"
+msgstr "&××××"
#: Menus.cpp:462
-msgid "&Left at Playback Position\t["
+msgid "&Left at Playback Position"
msgstr ""
#: Menus.cpp:463
-msgid "&Right at Playback Position\t]"
+msgid "&Right at Playback Position"
msgstr ""
#: Menus.cpp:467
-msgid "Track &Start to Cursor\tShift+J"
+msgid "Track &Start to Cursor"
msgstr ""
#: Menus.cpp:468
-msgid "Cursor to Track &End\tShift+K"
+msgid "Cursor to Track &End"
msgstr ""
#: Menus.cpp:431
-msgid "Find &Zero Crossings\tZ"
-msgstr "&××¦× ×ת ×צ××ת ××פס\tZ"
+msgid "Find &Zero Crossings"
+msgstr "&××¦× ×ת ×צ××ת ××פס"
#: Menus.cpp:476
msgid "Mo&ve Cursor"
@@ -1796,11 +1698,11 @@ msgid "to Selection En&d"
msgstr "×ס××£ ××§××¢ ×× ××ר"
#: Menus.cpp:483
-msgid "to Track &Start\tJ"
+msgid "to Track &Start"
msgstr ""
#: Menus.cpp:484
-msgid "to Track &End\tK"
+msgid "to Track &End"
msgstr ""
#: Menus.cpp:491
@@ -1823,29 +1725,8 @@ msgstr ""
msgid "&Unlock"
msgstr ""
-#: Menus.cpp:462
-msgid "Turn Snap-To On"
-msgstr "(snap-to) ××¤×¢× ×צ×××"
-
-#: Menus.cpp:463
-msgid "Turn Snap-To Off"
-msgstr "(snap-to) ××× ×צ×××"
-
-#: Menus.cpp:464
-msgid "Turn Grid Snap On"
-msgstr "(grid snap) ××¤×¢× ×צ××× ×ר×ש×ת"
-
-#: Menus.cpp:465
-msgid "Turn Grid Snap Off"
-msgstr "(grid snap) ××× ×צ××× ×ר×ש×ת"
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr ""
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
+msgid "Pre&ferences..."
msgstr ""
#: Menus.cpp:484
@@ -1853,36 +1734,36 @@ msgid "&View"
msgstr "&תצ×××"
#: Menus.cpp:486
-msgid "Zoom &In\tCtrl+1"
-msgstr "××× &×¤× ×××\tCtrl+1"
+msgid "Zoom &In"
+msgstr "××× &×¤× ×××"
#: Menus.cpp:489
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "××× &ר×××\tCtrl+1"
+msgid "Zoom &Normal"
+msgstr "××× &ר×××"
#: Menus.cpp:490
-msgid "Zoom &Out\tCtrl+3"
-msgstr "××× &×××צ×\tCtrl+3"
+msgid "Zoom &Out"
+msgstr "××× &×××צ×"
#: Menus.cpp:493
-msgid "&Fit in Window\tCtrl+F"
-msgstr "&×ת×× ×××××\tCtrl+F"
+msgid "&Fit in Window"
+msgstr "&×ת×× ×××××"
#: Menus.cpp:494
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "×ת×× &×× ××ת\tCtrl+Shift+F"
+msgid "Fit &Vertically"
+msgstr "×ת×× &×× ××ת"
#: Menus.cpp:495
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "&×××× ×ת ××××ר×\tCtrl+E"
+msgid "&Zoom to Selection"
+msgstr "&×××× ×ת ××××ר×"
#: Menus.cpp:498
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
-msgstr "&צ××¦× ×× ×רצ××¢×ת\tCtrl+Shift+C"
+msgid "&Collapse All Tracks"
+msgstr "&צ××¦× ×× ×רצ××¢×ת"
#: Menus.cpp:499
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
-msgstr "&ר××× ×× ×רצ××¢×ת\tCtrl+Shift+X"
+msgid "E&xpand All Tracks"
+msgstr "&ר××× ×× ×רצ××¢×ת"
#: Menus.cpp:551
#, fuzzy
@@ -1952,40 +1833,40 @@ msgstr ""
msgid "T&ransport"
msgstr ""
-#: Menus.cpp:591
-msgid "Play\tSpace"
-msgstr ""
+#: toolbars/ControlToolBar.cpp:177
+msgid "Play"
+msgstr "× ×× "
#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
+msgid "&Loop Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Pause\tP"
+msgid "&Pause"
msgstr ""
#: Menus.cpp:596
-msgid "&Stop\tSpace"
+msgid "&Stop"
msgstr ""
#: Menus.cpp:786
-msgid "Skip to Start\tHome"
-msgstr "××× ××ת×××t\tHome"
+msgid "Skip to Start"
+msgstr "××× ××ת×××t"
#: Menus.cpp:787
-msgid "Skip to End\tEnd"
-msgstr "××× ×ס××£\tEnd"
+msgid "Skip to End"
+msgstr "××× ×ס××£"
#: Menus.cpp:600
-msgid "&Record\tR"
+msgid "&Record"
msgstr ""
#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
+msgid "&Timer Record..."
msgstr ""
#: Menus.cpp:604
-msgid "Append Record\tShift+R"
+msgid "Append Record"
msgstr ""
#: Menus.cpp:607
@@ -2013,15 +1894,14 @@ msgid "Add &New"
msgstr ""
#: Menus.cpp:545
-msgid "&Audio Track\tCtrl+Shift+N"
-msgstr "&רצ×עת ש××¢\tCtrl+Shift+N"
+msgid "&Audio Track"
+msgstr "&רצ×עת ש××¢"
#: Menus.cpp:546
msgid "&Stereo Track"
msgstr "&ער××¥ ס×ר×××"
-#: Menus.cpp:548
-#: TimeTrack.cpp:44
+#: Menus.cpp:548 TimeTrack.cpp:44
msgid "&Time Track"
msgstr "&רצ×עת ×××"
@@ -2030,7 +1910,7 @@ msgid "Mi&x and Render"
msgstr ""
#: Menus.cpp:564
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
+msgid "Mix and Render to New Track"
msgstr ""
#: Menus.cpp:568
@@ -2042,11 +1922,11 @@ msgid "Remo&ve Tracks"
msgstr "×ס&ר רצ××¢×"
#: Menus.cpp:667
-msgid "&Mute All Tracks\tCtrl+U"
+msgid "&Mute All Tracks"
msgstr ""
#: Menus.cpp:668
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
+msgid "&UnMute All Tracks"
msgstr ""
#: Menus.cpp:585
@@ -2097,17 +1977,17 @@ msgstr ""
msgid "Synchronize MIDI with Audio"
msgstr ""
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
+#: Menus.cpp:686
+msgid "&Link Audio and Label Tracks"
msgstr ""
-#: Menus.cpp:611
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "&××ספת ת×××ת ×× ×§××ת ××××ר×\tCtrl+B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr ""
#: Menus.cpp:612
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "&××סף ת××ת ×× ×§××ת ××ש××¢×\tCtrl+M"
+msgid "Add Label At &Playback Position"
+msgstr "&××סף ת××ת ×× ×§××ת ××ש××¢×"
#: Menus.cpp:716
msgid "S&ort tracks"
@@ -2133,20 +2013,19 @@ msgstr ""
msgid "Effe&ct"
msgstr "&×פק×××"
-#: Menus.cpp:658
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "×××ר ×¢× ××¤×§× ××ר××\tCtrl+R"
-
#: Menus.cpp:690
msgid "&Analyze"
msgstr "&× ×ª×"
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
+
#: Menus.cpp:692
msgid "Plot Spectrum..."
msgstr "...צ××ר ספק×ר××"
-#: Menus.cpp:725
-#: Menus.cpp:728
+#: Menus.cpp:725 Menus.cpp:728
msgid "&Help"
msgstr "&×¢×ר×"
@@ -2158,9 +2037,9 @@ msgstr "&...Audacity ××××ת \"××××ר × ×§×\" ×©× "
msgid "&Show Welcome Message..."
msgstr "&...××¦× ×××עת פת×××"
-#: Menus.cpp:736
-msgid "&Index..."
-msgstr "...×&×× ×קס"
+#: Menus.cpp:958
+msgid "&Help..."
+msgstr ""
#: Menus.cpp:959
msgid "Show &Log..."
@@ -2178,181 +2057,149 @@ msgstr "&...×רץ ×××× ×ש××××"
msgid "&Audio Device Info..."
msgstr "&...××× ×¤×ר×צ××ת ××ª×§× ×©××¢"
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
msgstr ""
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
msgstr ""
#: Menus.cpp:762
-msgid "Selection Tool\tF1"
-msgstr "××× ××××ר×\tF1"
+msgid "Selection Tool"
+msgstr "××× ××××ר×"
#: Menus.cpp:763
-msgid "Envelope Tool\tF2"
-msgstr "××× ×××¢×פת\tF2"
+msgid "Envelope Tool"
+msgstr "××× ×××¢×פת"
#: Menus.cpp:764
-msgid "Draw Tool\tF3"
-msgstr "××× ×צ××ר\tF3"
+msgid "Draw Tool"
+msgstr "××× ×צ××ר"
#: Menus.cpp:765
-msgid "Zoom Tool\tF4"
-msgstr "××× ××××\tF4"
+msgid "Zoom Tool"
+msgstr "××× ××××"
#: Menus.cpp:766
-msgid "Time Shift Tool\tF5"
-msgstr "××× ×××ת ××××\tF5"
+msgid "Time Shift Tool"
+msgstr "××× ×××ת ××××"
#: Menus.cpp:767
-msgid "Multi Tool\tF6"
-msgstr "×××× ×ר××××\tF6"
+msgid "Multi Tool"
+msgstr "×××× ×ר××××"
#: Menus.cpp:769
-msgid "Next Tool\tD"
-msgstr "×××× ×××\tD"
+msgid "Next Tool"
+msgstr "×××× ×××"
#: Menus.cpp:770
-msgid "Previous Tool\tA"
-msgstr "××× ×§×××\tA"
+msgid "Previous Tool"
+msgstr "××× ×§×××"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
-msgstr ""
-
-#: Menus.cpp:773
-msgid "Stop\tS"
-msgstr "עצ×ר\tS"
-
-#: Menus.cpp:774
-msgid "Pause\tP"
-msgstr "×פסק×\tP"
-
-#: Menus.cpp:775
-msgid "Record\tR"
-msgstr "××§×××\tR"
-
-#: Menus.cpp:999
-msgid "Record Append\tShift+R"
+msgid "Play/Stop"
msgstr ""
#: Menus.cpp:777
-msgid "Play/Stop and Set Cursor\tShift+A"
-msgstr "× ××/עצ×ר ××§××¢ ס××\tShift+A"
+msgid "Play/Stop and Set Cursor"
+msgstr "× ××/עצ×ר ××§××¢ ס××"
#: Menus.cpp:780
-msgid "Play One Second\t1"
-msgstr "× ×× ×©× ×× ××ת\t1"
+msgid "Play One Second"
+msgstr "× ×× ×©× ×× ××ת"
#: Menus.cpp:781
-msgid "Play To Selection\tB"
-msgstr "× ×× ×¢× ××××ר×\tB"
-
-#: Menus.cpp:782
-msgid "Play Looped\tL"
-msgstr "× ×× ××××××\tL"
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
+msgid "Play To Selection"
+msgstr "× ×× ×¢× ××××ר×"
#: Menus.cpp:784
-msgid "Play Cut Preview\tC"
+msgid "Play Cut Preview"
msgstr "× ×××× ××§××× ×©× ××××¨× "
#: Menus.cpp:789
-msgid "Selection to Start\tShift+Home"
-msgstr "××××¨× ×××ת×××\tShift+Home"
+msgid "Selection to Start"
+msgstr "××××¨× ×××ת×××"
#: Menus.cpp:790
-msgid "Selection to End\tShift+End"
-msgstr "××××¨× ×¢× ×ס××£\tShift+End"
+msgid "Selection to End"
+msgstr "××××¨× ×¢× ×ס××£"
#: Menus.cpp:792
-msgid "DeleteKey\tBackspace"
-msgstr "×קש ××××§×\t×¦×¢× ×××ר×"
+msgid "DeleteKey"
+msgstr "×קש ××××§×"
#: Menus.cpp:797
-msgid "DeleteKey2\tDelete"
-msgstr "×קש ××××§×2\t××××§×"
+msgid "DeleteKey2"
+msgstr "×קש ××××§×2"
-#: Menus.cpp:803
-msgid "Seek left short period during playback\tLeft"
-msgstr "×פש ש×××× ××× ×§×¦×¨ ת×× ××× ×ש××¢×\tLeft"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
+msgstr ""
-#: Menus.cpp:804
-msgid "Seek right short period during playback\tRight"
-msgstr "×פש ×××× × ××× ×§×¦×¨ ת×× ××× ×ש××¢×\tRight"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
+msgstr ""
-#: Menus.cpp:805
-msgid "Seek left long period during playback\tShift+Left"
-msgstr "×פש ש×××× ××× ×ר×× ×ª×× ××× ×ש××¢×\tLeft"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
+msgstr ""
-#: Menus.cpp:806
-msgid "Seek right long period during playback\tShift+Right"
-msgstr "×פש ×××× × ××× ×ר×× ×ª×× ××× ×ש××¢×\tRight"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
+msgstr ""
#: Menus.cpp:810
-msgid "Move Focus to Previous Track\tUp"
-msgstr "××× ×××§×× ×רצ××¢× ×§×××ת\tUp"
+msgid "Move Focus to Previous Track"
+msgstr "××× ×××§×× ×רצ××¢× ×§×××ת"
-#: Menus.cpp:811
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
-msgstr "××× ×××§×× ×× ×§××× ×§×××ת ××©× × ×××ר×\tShift+Up"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
+msgstr ""
#: Menus.cpp:812
-msgid "Move Focus to Next Track\tDown"
-msgstr "××× ×¤××§×ס ×רצ××¢×××××\tDown"
+msgid "Move Focus to Next Track"
+msgstr "××× ×¤××§×ס ×רצ××¢×××××"
-#: Menus.cpp:813
-msgid "Move Focus to Next and Change Selection\tShift+Down"
-msgstr "××× ×××§×× ×× ×§××× ×××× ××©× × ×××ר×\tShift+Down"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
+msgstr ""
#: Menus.cpp:814
-msgid "Toggle Focused Track\tReturn"
-msgstr "×©× × ×¨×¦××¢× ××××§×ת\tReturn"
-
-#: Menus.cpp:815
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr "×©× × ×¨×¦××¢× ××××§×ת\tNUMPAD_ENTER"
-
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
-msgstr ""
+msgid "Toggle Focused Track"
+msgstr "×©× × ×¨×¦××¢× ××××§×ת"
#: Menus.cpp:818
-msgid "Cursor Left\tLeft"
-msgstr "ס×× ×©××××\tש××××"
+msgid "Cursor Left"
+msgstr "ס×× ×©××××"
#: Menus.cpp:819
-msgid "Cursor Right\tRight"
-msgstr "ס×× ×××× ×\t×××× ×"
+msgid "Cursor Right"
+msgstr "ס×× ×××× ×"
#: Menus.cpp:820
-msgid "Cursor Short Jump Left\t,"
+msgid "Cursor Short Jump Left"
msgstr ""
#: Menus.cpp:821
-msgid "Cursor Short Jump Right\t."
+msgid "Cursor Short Jump Right"
msgstr ""
#: Menus.cpp:822
-msgid "Cursor Long Jump Left\tShift+,"
+msgid "Cursor Long Jump Left"
msgstr ""
#: Menus.cpp:823
-msgid "Cursor Long Jump Right\tShift+."
+msgid "Cursor Long Jump Right"
msgstr ""
#: Menus.cpp:825
-msgid "Selection Extend Left\tShift+Left"
-msgstr "×ר××ת ×××××¨× ×©××××\tShift+ש××××"
+msgid "Selection Extend Left"
+msgstr "×ר××ת ×××××¨× ×©××××"
#: Menus.cpp:826
-msgid "Selection Extend Right\tShift+Right"
-msgstr "×ר××ת ×××××¨× ×××× ×\tShift+×××× ×"
+msgid "Selection Extend Right"
+msgstr "×ר××ת ×××××¨× ×××× ×"
#: Menus.cpp:828
msgid "Set (or Extend) Left Selection"
@@ -2363,52 +2210,52 @@ msgid "Set (or Extend) Right Selection"
msgstr " ×§××¢ (×× ×ר××) ×××× ××××¨× ××× ×ת"
#: Menus.cpp:831
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "××××¥ ××××¨× ×©××××\tCtrl+Shift+×××× ×"
+msgid "Selection Contract Left"
+msgstr "××××¥ ××××¨× ×©××××"
#: Menus.cpp:832
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "××××¥ ××××¨× ×××× ×\tCtrl+Shift+ש××××"
+msgid "Selection Contract Right"
+msgstr "××××¥ ××××¨× ×××× ×"
#: Menus.cpp:834
-msgid "Change pan on focused track\tShift+P"
+msgid "Change pan on focused track"
msgstr ""
#: Menus.cpp:835
-msgid "Pan left on focused track\tAlt+Shift+Left"
-msgstr "Pan left on focused track\tAlt+Shift+Left"
+msgid "Pan left on focused track"
+msgstr "Pan left on focused track"
#: Menus.cpp:836
-msgid "Pan right on focused track\tAlt+Shift+Right"
+msgid "Pan right on focused track"
msgstr ""
#: Menus.cpp:837
-msgid "Change gain on focused track\tShift+G"
-msgstr "×©× × ×××ר ×רצ××¢× ×××××§×ת\tShift+G"
+msgid "Change gain on focused track"
+msgstr "×©× × ×××ר ×רצ××¢× ×××××§×ת"
#: Menus.cpp:838
-msgid "Increase gain on focused track\tAlt+Shift+Up"
-msgstr "×××× ×××ר ×רצ××¢× ×××××§×ת\tAlt+Shift+Up"
+msgid "Increase gain on focused track"
+msgstr "×××× ×××ר ×רצ××¢× ×××××§×ת"
#: Menus.cpp:839
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
-msgstr "××§×× ×××ר ×רצ××¢× ×××××§×ת\tAlt+Shift+Down"
+msgid "Decrease gain on focused track"
+msgstr "××§×× ×××ר ×רצ××¢× ×××××§×ת"
#: Menus.cpp:840
-msgid "Open menu on focused track\tShift+M"
-msgstr "×¤×ª× ×ª×¤×¨×× ×¢××ר רצ××¢× ××××§×ת\tShift+M"
+msgid "Open menu on focused track"
+msgstr "×¤×ª× ×ª×¤×¨×× ×¢××ר רצ××¢× ××××§×ת"
#: Menus.cpp:841
-msgid "Mute/Unmute focused track\tShift+U"
-msgstr "×שתק/××× ××©×ª×§× ×©× ×¨×¦××¢× ××××§×ת\tShift+U"
+msgid "Mute/Unmute focused track"
+msgstr "×שתק/××× ××©×ª×§× ×©× ×¨×¦××¢× ××××§×ת"
#: Menus.cpp:842
-msgid "Solo/Unsolo focused track\tShift+S"
-msgstr "×§××¢/××× ×¨×¦××¢× × ××רת ××××××\tShift+S"
+msgid "Solo/Unsolo focused track"
+msgstr "×§××¢/××× ×¨×¦××¢× × ××רת ××××××"
#: Menus.cpp:843
-msgid "Close focused track\tShift+C"
-msgstr "ס××ר רצ××¢× ××××§×ת\tShift+C"
+msgid "Close focused track"
+msgstr "ס××ר רצ××¢× ××××§×ת"
#: Menus.cpp:845
msgid "Snap To On"
@@ -2419,7 +2266,35 @@ msgid "Snap To Off"
msgstr "Snap-To Off"
#: Menus.cpp:1071
-msgid "Full screen on/off\tF11"
+msgid "Full screen on/off"
+msgstr ""
+
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr ""
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr ""
+
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr ""
+
+#: Menus.cpp:1074
+msgid "Adjust input source"
msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
@@ -2480,8 +2355,8 @@ msgstr ".ר×ש×ת צר×× ××××ר ×רצ××¢× "
#: Menus.cpp:2005
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "%s ×××ר ש××\tCtrl+R"
+msgid "Repeat %s"
+msgstr "%s ×××ר ש××"
#: Menus.cpp:2136
msgid "There are no label tracks to export."
@@ -2512,9 +2387,7 @@ msgstr "ש×× ××ר ×××××× ××צ××¢"
msgid "Nothing to redo"
msgstr "ש×× ××ר ×××צ××¢ ×××ש"
-#: Menus.cpp:2336
-#: TrackPanel.cpp:564
-#: toolbars/EditToolBar.cpp:133
+#: Menus.cpp:2336 TrackPanel.cpp:564 toolbars/EditToolBar.cpp:133
msgid "Cut"
msgstr "×××ר"
@@ -2530,10 +2403,7 @@ msgstr "×××ר ×פצ×"
msgid "Split-cut to the clipboard"
msgstr "×××ר ××¤×¦× ×××× ×עתק×"
-#: Menus.cpp:2439
-#: Menus.cpp:2510
-#: Menus.cpp:2604
-#: TrackPanel.cpp:566
+#: Menus.cpp:2439 Menus.cpp:2510 Menus.cpp:2604 TrackPanel.cpp:566
#: toolbars/EditToolBar.cpp:137
msgid "Paste"
msgstr "××××§"
@@ -2542,8 +2412,7 @@ msgstr "××××§"
msgid "Pasted text from the clipboard"
msgstr "××××§ ××§×¡× ×××× ××עתק×"
-#: Menus.cpp:2510
-#: Menus.cpp:2604
+#: Menus.cpp:2510 Menus.cpp:2604
msgid "Pasted from the clipboard"
msgstr "××××§ ×××× ××עתק×"
@@ -2555,8 +2424,7 @@ msgstr ""
msgid "Copying stereo audio into a mono track is not allowed."
msgstr ".×עתקת ש××¢ ס×ר×××פ×× × ×רצ×עת ××× × ×ס×ר×"
-#: Menus.cpp:2640
-#: toolbars/EditToolBar.cpp:139
+#: Menus.cpp:2640 toolbars/EditToolBar.cpp:139
msgid "Trim"
msgstr "קצ××¥"
@@ -2600,8 +2468,7 @@ msgid "Silenced selected tracks for %.2f seconds at %.2f"
msgstr "%.2f × ×××¨× ×¨×¦××¢×ת שק××ת ××ש×\n"
"%.2f ×× ×§××× "
-#: Menus.cpp:2741
-#: toolbars/EditToolBar.cpp:141
+#: Menus.cpp:2741 toolbars/EditToolBar.cpp:141
msgid "Silence"
msgstr "שק×"
@@ -2686,8 +2553,7 @@ msgstr "Disjoin Labels"
msgid "Disjoined labeled regions"
msgstr " ××× ××××× ×××ר×× ××¢×× ×ª××ת"
-#: Menus.cpp:2917
-#: TrackPanel.cpp:6087
+#: Menus.cpp:2917 TrackPanel.cpp:6087
msgid "Split"
msgstr "פצ×"
@@ -2703,16 +2569,6 @@ msgstr "×¤×¦× ×רצ××¢× ××ש×"
msgid "Split at labels"
msgstr "×¤×¦× ×× ×§××ת ×ת××××ת"
-#: Menus.cpp:3394
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr ".×××× ×צ××ר ×ת ×ספק×ר××, ××× ×רצ××¢×ת ×× ××ר×ת ×××××ת ××××ת ××¢××ת ×××ª× ×§×¦× ×××××"
-
-#: Menus.cpp:3420
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "%.1f -××תר ××× ×©××¢ × ××ר. רק ×\n"
-".××©× ××ת ×ר×ש×× ×ת ×©× ×ש××¢ ×× ×ת××"
-
#: Menus.cpp:3546
#, c-format
msgid "Imported labels from '%s'"
@@ -2779,9 +2635,7 @@ msgstr "רצ××¢×ת ×ער××¥ ס×ר××× ×××× %d ער×× ××פ××"
msgid "Mixed and rendered %d tracks into one new mono track"
msgstr "רצ××¢×ת ×ער××¥ ××× × ×××× %d ער×× ××פ××"
-#: Menus.cpp:560
-#: Menus.cpp:3698
-#: Mix.cpp:120
+#: Menus.cpp:560 Menus.cpp:3698 Mix.cpp:120
msgid "&Mix and Render"
msgstr "&ער×× ××פ××"
@@ -2833,10 +2687,7 @@ msgstr ""
msgid "Created new audio track"
msgstr "רצ×עת ש××¢ ×××©× × ×צר×"
-#: Menus.cpp:3912
-#: Menus.cpp:3935
-#: Menus.cpp:3950
-#: Menus.cpp:3970
+#: Menus.cpp:3912 Menus.cpp:3935 Menus.cpp:3950 Menus.cpp:3970
msgid "New Track"
msgstr "ער××¥ ××ש"
@@ -2872,8 +2723,7 @@ msgstr "Save CleanSpeech Preset File As:"
msgid "CleanSpeech Presets (*.csp)|*.csp"
msgstr "(*.csp)|*.csp CleanSpeech ער×× ×ת××× ×©×"
-#: Menus.cpp:4085
-#: export/Export.cpp:509
+#: Menus.cpp:4085 export/Export.cpp:509
msgid "Sorry, pathnames longer than 256 characters not supported."
msgstr ".×צ×ער, ×ס××× ×××§×× ××§×××¥ ××××× ×256 ת×××× ××× × × ×ª××"
@@ -2881,8 +2731,7 @@ msgstr ".×צ×ער, ×ס××× ×××§×× ××§×××¥ ××××× ×256 ת×××
msgid "Problem encountered exporting presets."
msgstr "×§×¨×ª× ×ª×§×× ××××× ×××¦× ×¢×¨×× ×ת×××"
-#: Menus.cpp:4132
-#: export/Export.cpp:402
+#: Menus.cpp:4132 export/Export.cpp:402
msgid "Unable to export"
msgstr "×× ×ס××× ×××צ×"
@@ -2894,9 +2743,7 @@ msgstr "×סר רצ××¢×"
msgid "Removed audio track(s)"
msgstr "×סר רצ××¢×ת ש××¢ "
-#: Menus.cpp:4439
-#: Menus.cpp:4458
-#: export/ExportMP3.cpp:1927
+#: Menus.cpp:4439 Menus.cpp:4458 export/ExportMP3.cpp:1927
msgid "Resample"
msgstr "××××× ×××ש"
@@ -2921,8 +2768,7 @@ msgstr "×××× ×¨×¦××¢× ×××ש"
msgid "Resampled audio track(s)"
msgstr "×××× ×¨×¦××¢×(×ת) ש××¢ ××ש×ת"
-#: Mix.cpp:94
-#: Mix.cpp:101
+#: Mix.cpp:94 Mix.cpp:101
msgid "Mix"
msgstr "×¢×ר×××"
@@ -2942,6 +2788,10 @@ msgstr "×ש ××¢×× ×××פס×."
msgid "Print"
msgstr "××פס"
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr ""
+
#: Project.cpp:635
msgid "Main Mix"
msgstr "×ער×× ×¨×ש×"
@@ -2955,14 +2805,11 @@ msgstr "%s ××¨×¡× Audacity - ×ר×××× ××××× ×"
msgid "(Recovered)"
msgstr "(×××§××)"
-#: Project.cpp:1472
-#: TrackPanel.cpp:788
-#: toolbars/ControlToolBar.cpp:191
+#: Menus.cpp:775
msgid "Record"
-msgstr "××§××"
+msgstr "××§×××"
-#: Project.cpp:1472
-#: TrackPanel.cpp:788
+#: Project.cpp:1472 TrackPanel.cpp:788
msgid "Recorded Audio"
msgstr "ש××¢ ×××§××"
@@ -2983,9 +2830,9 @@ msgstr ""
msgid "Save changes?"
msgstr "×ש××ר ש×× ××××?"
-#: Project.cpp:1684
-msgid "All files|*.*|All supported files|"
-msgstr "×× ××§×צ××|*.*|×× ×§×צ×× × ×ª××××|"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
+msgstr ""
#: Project.cpp:1709
msgid "Select one or more audio files..."
@@ -3014,8 +2861,18 @@ msgstr ""
msgid "Opening old project file"
msgstr "פ××ª× ×§×××¥ פר×××§× ×ש×"
-#: Project.cpp:1801
-#: Project.cpp:1809
+#: Project.cpp:2073
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr ""
+
+#: Project.cpp:1801 Project.cpp:1809
msgid "Error opening file"
msgstr "ש×××× ×פת××ת ×§×××¥"
@@ -3050,8 +2907,7 @@ msgstr "×ת××שש"
msgid "Project checker repaired file"
msgstr "××××§ ×פר×××§××× ×ª××§× ×§×××¥"
-#: Project.cpp:1967
-#: effects/Repair.h:29
+#: Project.cpp:1967 effects/Repair.h:29
msgid "Repair"
msgstr "תק×"
@@ -3071,10 +2927,12 @@ msgstr ""
msgid "Can't open project file"
msgstr "×× ×××× ×פת×× ×§×××¥ פר×××§×"
-#: Project.cpp:2153
+#: Project.cpp:2484
#, c-format
msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
msgstr ""
@@ -3094,17 +2952,22 @@ msgstr ""
msgid "Warning empty project"
msgstr ""
-#: Project.cpp:2591
+#: Project.cpp:2792
#, c-format
msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+"is not writable or the disk is full."
msgstr ""
-#: Project.cpp:2381
-#: Project.cpp:2395
+#: Project.cpp:2381 Project.cpp:2395
msgid "Error saving project"
msgstr "ש×××× ×ש××רת ×פר×××§×"
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
#: Project.cpp:2457
#, c-format
msgid "Saved %s"
@@ -3115,16 +2978,12 @@ msgstr "%s × ×©×ר"
msgid "Imported '%s'"
msgstr "'%s' ××××××"
-#: Menus.cpp:3611
-#: Project.cpp:2540
-#: Project.cpp:2565
-#: import/ImportPCM.cpp:440
+#: Menus.cpp:3611 Project.cpp:2540 Project.cpp:2565 import/ImportPCM.cpp:440
#: import/ImportPCM.cpp:484
msgid "Import"
msgstr "××××"
-#: Project.cpp:2592
-#: Project.cpp:2600
+#: Project.cpp:2592 Project.cpp:2600
msgid "Error importing"
msgstr "ש×××× ×××××"
@@ -3168,8 +3027,7 @@ msgid "Deleted %.2f seconds at t=%.2f"
msgstr "%.2f × ×××§×\n"
"%.2f ×©× ××ת ×× ×§××× "
-#: Project.cpp:2812
-#: effects/Equalization.cpp:1260
+#: Project.cpp:2812 effects/Equalization.cpp:1260
#: effects/Equalization.cpp:2515
msgid "Delete"
msgstr "×××§"
@@ -3250,8 +3108,7 @@ msgstr "Erik de Castro Lopo ×¢\"× Libsamplerate"
msgid "Libsamplerate error: %d\n"
msgstr "%d :Libsamplerate ש×××ת\n"
-#: Resample.cpp:240
-#: Resample.cpp:250
+#: Resample.cpp:240 Resample.cpp:250
msgid "Resampling disabled."
msgstr ".××××× ×××ש ×× ××ר×ת"
@@ -3270,6 +3127,163 @@ msgstr "24-bit PCM"
msgid "32-bit float"
msgstr "32-bit float"
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
+
+#: export/ExportMultiple.cpp:204 prefs/DirectoriesPrefs.cpp:92
+msgid "Choose..."
+msgstr "...××ר"
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
+
+#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
+msgid "false"
+msgstr "שקר"
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr "××××"
+
+#: toolbars/ControlToolBar.cpp:82
+msgid "Control"
+msgstr "cerv"
+
+#: toolbars/MixerToolBar.cpp:60
+msgid "Mixer"
+msgstr "×ער××"
+
+#: toolbars/MeterToolBar.cpp:50
+msgid "Meter"
+msgstr "××"
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
+#: toolbars/DeviceToolBar.cpp:57
+msgid "Device"
+msgstr "×תק×"
+
+#: toolbars/TranscriptionToolBar.cpp:84
+msgid "Transcription"
+msgstr "תעת××§"
+
+#: TrackPanel.cpp:463 TrackPanel.cpp:464
+msgid "Track Panel"
+msgstr "Track Panel"
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: export/ExportMultiple.cpp:246
+msgid "Tracks"
+msgstr "רצ××¢×ת"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
#: Screenshot.cpp:384
msgid "Saved "
msgstr "× ×©×ר"
@@ -3278,14 +3292,15 @@ msgstr "× ×©×ר"
msgid "Error trying to save file: "
msgstr "ש×××× ×× ×¡××× ×ש××ר ×§×××¥:"
-#: Sequence.cpp:732
-#: Sequence.cpp:742
-#: Sequence.cpp:749
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
+#: Sequence.cpp:732 Sequence.cpp:742 Sequence.cpp:749
msgid "Gap detected in project file\n"
msgstr ""
-#: ShuttleGui.cpp:1852
-#: effects/Effect.cpp:342
+#: ShuttleGui.cpp:1852 effects/Effect.cpp:342
#: effects/audiounits/AudioUnitEffect.cpp:872
msgid "Pre&view"
msgstr "&××¦× ×§×××"
@@ -3326,8 +3341,7 @@ msgstr "××תרת ×××××"
msgid "Track Number"
msgstr "רצ××¢× ×ספר"
-#: Tags.cpp:633
-#: Tags.cpp:2138
+#: Tags.cpp:633 Tags.cpp:2138
msgid "Year"
msgstr "×©× ×"
@@ -3335,9 +3349,7 @@ msgstr "×©× ×"
msgid "Genre"
msgstr "ס×× ××"
-#: Tags.cpp:635
-#: Tags.cpp:2148
-#: prefs/MousePrefs.cpp:96
+#: Tags.cpp:635 Tags.cpp:2148 prefs/MousePrefs.cpp:96
msgid "Comments"
msgstr "×ער×ת"
@@ -3353,9 +3365,7 @@ msgstr "×©× ×ª×"
msgid "Tag Value"
msgstr "×¢×¨× ×ת×"
-#: Tags.cpp:818
-#: Tags.cpp:1476
-#: prefs/KeyConfigPrefs.cpp:116
+#: Tags.cpp:818 Tags.cpp:1476 prefs/KeyConfigPrefs.cpp:116
msgid "&Clear"
msgstr "&× ×§×"
@@ -3371,71 +3381,42 @@ msgstr ""
msgid "Rese&t..."
msgstr ""
-#: Tags.cpp:834
-#: Tags.cpp:1460
-#: Tags.cpp:1988
+#: Tags.cpp:834 Tags.cpp:1460 Tags.cpp:1988
msgid "Template"
msgstr "ת×× ×ת"
-#: Tags.cpp:838
-#: Tags.cpp:1464
-#: Tags.cpp:1992
-#: prefs/KeyConfigPrefs.cpp:126
+#: Tags.cpp:838 Tags.cpp:1464 Tags.cpp:1992 prefs/KeyConfigPrefs.cpp:126
msgid "&Load..."
msgstr "&...××¢×"
-#: Tags.cpp:839
-#: Tags.cpp:1465
-#: Tags.cpp:1993
-#: prefs/KeyConfigPrefs.cpp:125
+#: Tags.cpp:839 Tags.cpp:1465 Tags.cpp:1993 prefs/KeyConfigPrefs.cpp:125
msgid "&Save..."
msgstr "...ש&××ר"
-#: Tags.cpp:841
-#: Tags.cpp:1467
-#: Tags.cpp:1995
+#: Tags.cpp:841 Tags.cpp:1467 Tags.cpp:1995
msgid "S&et Default"
msgstr "&×§××¢ ער×× ××××"
-#: Tags.cpp:991
-#: Tags.cpp:1630
-#: Tags.cpp:2359
+#: Tags.cpp:991 Tags.cpp:1630 Tags.cpp:2359
msgid "Edit Genres"
msgstr "ער×× ×¡×× ××"
-#: Tags.cpp:1024
-#: Tags.cpp:1036
-#: Tags.cpp:1052
-#: Tags.cpp:1065
-#: Tags.cpp:1668
-#: Tags.cpp:1680
-#: Tags.cpp:1696
-#: Tags.cpp:1709
-#: Tags.cpp:2402
-#: Tags.cpp:2414
-#: Tags.cpp:2430
-#: Tags.cpp:2443
+#: Tags.cpp:1024 Tags.cpp:1036 Tags.cpp:1052 Tags.cpp:1065 Tags.cpp:1668
+#: Tags.cpp:1680 Tags.cpp:1696 Tags.cpp:1709 Tags.cpp:2402 Tags.cpp:2414
+#: Tags.cpp:2430 Tags.cpp:2443
msgid "Reset Genres"
msgstr "×פס ס×× ××"
-#: Tags.cpp:1024
-#: Tags.cpp:1065
-#: Tags.cpp:1668
-#: Tags.cpp:1709
-#: Tags.cpp:2402
+#: Tags.cpp:1024 Tags.cpp:1065 Tags.cpp:1668 Tags.cpp:1709 Tags.cpp:2402
#: Tags.cpp:2443
msgid "Unable to save genre file."
msgstr ""
-#: Tags.cpp:1035
-#: Tags.cpp:1679
-#: Tags.cpp:2413
+#: Tags.cpp:1035 Tags.cpp:1679 Tags.cpp:2413
msgid "Are you sure you want to reset the genre list to defaults?"
msgstr "?××× ××ª× ×××× ×©××ª× ×¨××¦× ××פס ×ת ×§×××¥ רש××ת ×ס×× ×× ×ת ×ער×× ×××××"
-#: Tags.cpp:1052
-#: Tags.cpp:1696
-#: Tags.cpp:2430
+#: Tags.cpp:1052 Tags.cpp:1696 Tags.cpp:2430
msgid "Unable to open genre file."
msgstr ".×× ×××× ×פת×× ×§×××¥ ס×× ××"
@@ -3443,21 +3424,19 @@ msgstr ".×× ×××× ×פת×× ×§×××¥ ס×× ××"
msgid "Load Metadata As:"
msgstr ""
-#: Tags.cpp:1112
-#: Tags.cpp:1763
-#: Tags.cpp:2486
+#: Tags.cpp:1112 Tags.cpp:1763 Tags.cpp:2486
msgid "Error loading metadata"
msgstr "ש×××× ×××¢×× ×ª ×××-××××¢"
-#: Tags.cpp:1087
-#: Tags.cpp:1141
-#: Tags.cpp:1742
-#: Tags.cpp:1778
-#: Tags.cpp:2465
+#: Tags.cpp:1087 Tags.cpp:1141 Tags.cpp:1742 Tags.cpp:1778 Tags.cpp:2465
#: Tags.cpp:2501
msgid "Save Metadata As:"
msgstr "ש××ר ×××-××××¢ ×ת×ר:"
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
#: Theme.cpp:638
#, c-format
msgid "Audacity could not write file:\n"
@@ -3488,8 +3467,7 @@ msgid "Audacity could not find file:\n"
"Theme not loaded."
msgstr ""
-#: Theme.cpp:807
-#: Theme.cpp:896
+#: Theme.cpp:807 Theme.cpp:896
#, c-format
msgid "Audacity could not load file:\n"
" %s.\n"
@@ -3508,8 +3486,7 @@ msgid "None of the expected theme component files\n"
" %s."
msgstr ""
-#: Theme.cpp:942
-#: effects/NoiseRemoval.cpp:173
+#: Theme.cpp:942 effects/NoiseRemoval.cpp:173
#, c-format
msgid "Could not create directory:\n"
" %s"
@@ -3530,8 +3507,7 @@ msgid "All required files in:\n"
"were already present."
msgstr ""
-#: SmartRecordDialog.cpp:226
-#: SmartRecordDialog.cpp:304
+#: SmartRecordDialog.cpp:226 SmartRecordDialog.cpp:304
msgid "Duration"
msgstr "××©× ×××"
@@ -3539,6 +3515,14 @@ msgstr "××©× ×××"
msgid "Audacity Timer Record"
msgstr "Audacity ××§××× ×ת×××× ×ª ×¢\"×"
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
#: SmartRecordDialog.cpp:223
msgid "Recording start"
msgstr "ת×××ת ×××§×××"
@@ -3578,40 +3562,23 @@ msgstr "%s ×××× ××ת××× ××§××× × .\n"
msgid "Audacity Timer Record - Waiting for Start"
msgstr ""
-#: TrackPanel.cpp:463
-#: TrackPanel.cpp:464
-msgid "Track Panel"
-msgstr "Track Panel"
-
-#: TrackPanel.cpp:507
-#: export/ExportPCM.cpp:133
-#: prefs/QualityPrefs.cpp:97
+#: TrackPanel.cpp:507 export/ExportPCM.cpp:133 prefs/QualityPrefs.cpp:97
msgid "Other..."
msgstr "...××ר"
-#: TrackPanel.cpp:515
-#: TrackPanel.cpp:539
-#: TrackPanel.cpp:548
-#: TrackPanel.cpp:556
+#: TrackPanel.cpp:515 TrackPanel.cpp:539 TrackPanel.cpp:548 TrackPanel.cpp:556
msgid "Name..."
msgstr "...ש×"
-#: TrackPanel.cpp:517
-#: TrackPanel.cpp:541
-#: TrackPanel.cpp:552
-#: TrackPanel.cpp:558
+#: TrackPanel.cpp:517 TrackPanel.cpp:541 TrackPanel.cpp:552 TrackPanel.cpp:558
msgid "Move Track Up"
msgstr "××× ×¨×¦××¢× ×××¢××"
-#: TrackPanel.cpp:518
-#: TrackPanel.cpp:542
-#: TrackPanel.cpp:553
-#: TrackPanel.cpp:559
+#: TrackPanel.cpp:518 TrackPanel.cpp:542 TrackPanel.cpp:553 TrackPanel.cpp:559
msgid "Move Track Down"
msgstr "××× ×¨×¦××¢× ××××"
-#: TrackPanel.cpp:520
-#: effects/ToneGen.cpp:325
+#: TrackPanel.cpp:520 effects/ToneGen.cpp:325
msgid "Waveform"
msgstr "צ×רת ×××"
@@ -3627,18 +3594,15 @@ msgstr " (f)ספק×ר×× ×××"
msgid "Pitch (EAC)"
msgstr "(EAC) ×××× ×¦××× "
-#: TrackPanel.cpp:528
-#: TrackPanel.cpp:6057
+#: TrackPanel.cpp:528 TrackPanel.cpp:6057
msgid "Mono"
msgstr "××× ×"
-#: TrackPanel.cpp:529
-#: TrackPanel.cpp:6056
+#: TrackPanel.cpp:529 TrackPanel.cpp:6056
msgid "Left Channel"
msgstr "ער××¥ ש×××"
-#: TrackPanel.cpp:530
-#: TrackPanel.cpp:6056
+#: TrackPanel.cpp:530 TrackPanel.cpp:6056
msgid "Right Channel"
msgstr "ער××¥ ××× ×"
@@ -3650,12 +3614,15 @@ msgstr "××צר רצ×עת ס×ר×××"
msgid "Split Stereo Track"
msgstr "×¤×¦× ×¢×¨××¦× ×¡×ר×××"
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr ""
+
#: TrackPanel.cpp:534
msgid "Set Sample Format"
msgstr "×§××¢ פ×ר×× ××××××"
-#: TrackPanel.cpp:536
-#: TrackPanel.cpp:6286
+#: TrackPanel.cpp:536 TrackPanel.cpp:6286
msgid "Set Rate"
msgstr "×§××¢ קצ×"
@@ -3675,8 +3642,7 @@ msgstr "...××פ×"
msgid "Set Range..."
msgstr "...×§××¢ ת×××"
-#: TrackPanel.cpp:565
-#: toolbars/EditToolBar.cpp:135
+#: TrackPanel.cpp:565 toolbars/EditToolBar.cpp:135
msgid "Copy"
msgstr "×עתק"
@@ -3722,21 +3688,13 @@ msgstr ".××ר ××ר×ר ×××× ××××× ×ת ×§×¦× ×§××¢ ××××ר×
msgid "Click and drag to move right selection boundary."
msgstr ".××ר ××ר×ר ×××× ××××× ×ת ×§×¦× ×§××¢ ×××××¨× ×××× ×"
-#: TrackPanel.cpp:1692
-#: TrackPanel.cpp:3968
-#: TrackPanel.cpp:4000
-#: TrackPanel.cpp:4255
-#: TrackPanel.cpp:6398
-#: TrackPanel.cpp:6418
+#: TrackPanel.cpp:1692 TrackPanel.cpp:3968 TrackPanel.cpp:4000
+#: TrackPanel.cpp:4255 TrackPanel.cpp:6398 TrackPanel.cpp:6418
msgid "Modified Label"
msgstr "ת×××ת שש×× ×ª×"
-#: TrackPanel.cpp:1693
-#: TrackPanel.cpp:3969
-#: TrackPanel.cpp:4001
-#: TrackPanel.cpp:4256
-#: TrackPanel.cpp:6399
-#: TrackPanel.cpp:6419
+#: TrackPanel.cpp:1693 TrackPanel.cpp:3969 TrackPanel.cpp:4001
+#: TrackPanel.cpp:4256 TrackPanel.cpp:6399 TrackPanel.cpp:6419
msgid "Label Edit"
msgstr "ער×× ×ª×××ת"
@@ -3744,8 +3702,7 @@ msgstr "ער×× ×ª×××ת"
msgid "Adjusted envelope."
msgstr "××¢×ת ×ת×××ת."
-#: TrackPanel.cpp:1921
-#: prefs/MousePrefs.cpp:115
+#: TrackPanel.cpp:1921 prefs/MousePrefs.cpp:115
msgid "Envelope"
msgstr "××¢×פת"
@@ -3767,9 +3724,7 @@ msgstr "×××× ×"
msgid "Time shifted tracks/clips %s %.02f seconds"
msgstr "Time shifted tracks/clips %s %.02f seconds"
-#: TrackPanel.cpp:2067
-#: prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:112
+#: TrackPanel.cpp:2067 prefs/MousePrefs.cpp:111 prefs/MousePrefs.cpp:112
#: prefs/MousePrefs.cpp:113
msgid "Time-Shift"
msgstr "××××-××××"
@@ -3808,39 +3763,29 @@ msgid "Moved pan slider"
msgstr "Moved pan slider"
#. i18n-hint: Title of the Gain slider, used to adjust the volume
-#: TrackPanel.cpp:3460
-#: TrackPanel.cpp:5701
-#: TrackPanel.cpp:7107
+#: TrackPanel.cpp:3460 TrackPanel.cpp:5701 TrackPanel.cpp:7107
msgid "Gain"
msgstr "×××ר"
#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: TrackPanel.cpp:3460
-#: TrackPanel.cpp:5639
-#: TrackPanel.cpp:7114
+#: TrackPanel.cpp:3460 TrackPanel.cpp:5639 TrackPanel.cpp:7114
msgid "Pan"
msgstr "Pan"
-#: TrackPanel.cpp:3585
-#: TrackPanel.cpp:6351
-#: effects/ChangePitch.cpp:284
+#: TrackPanel.cpp:3585 TrackPanel.cpp:6351 effects/ChangePitch.cpp:284
msgid "up"
msgstr "×××¢××"
-#: TrackPanel.cpp:3589
-#: TrackPanel.cpp:6352
-#: effects/ChangePitch.cpp:284
+#: TrackPanel.cpp:3589 TrackPanel.cpp:6352 effects/ChangePitch.cpp:284
msgid "down"
msgstr "××××"
-#: TrackPanel.cpp:3596
-#: TrackPanel.cpp:6347
+#: TrackPanel.cpp:3596 TrackPanel.cpp:6347
#, c-format
msgid "Moved '%s' %s"
msgstr "'%s' %s ××××"
-#: TrackPanel.cpp:3599
-#: TrackPanel.cpp:6353
+#: TrackPanel.cpp:3599 TrackPanel.cpp:6353
msgid "Move Track"
msgstr "××× ×¨×¦××¢×"
@@ -3872,14 +3817,6 @@ msgstr "Adjusted Pan"
msgid "Adjusted gain"
msgstr "Adjusted gain"
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr ""
-
#: TrackPanel.cpp:5884
msgid "Can't delete track with active audio"
msgstr "×× ×××× ×××××§ רצ××¢× ×¢× ×©××¢ ××§××××"
@@ -3900,8 +3837,7 @@ msgstr ",ש×××"
msgid "Right, "
msgstr ",×××× ×"
-#: TrackPanel.cpp:6066
-#: TrackPanel.cpp:6191
+#: TrackPanel.cpp:6066 TrackPanel.cpp:6191
#, c-format
msgid "Changed '%s' to %s"
msgstr "'%s' ×רץ ×ת %s ש×× × × "
@@ -3915,6 +3851,11 @@ msgstr "ער××¥"
msgid "Split stereo track '%s'"
msgstr "×¤×¦× ×¢×¨××¦× ×¡×ר××× '%s'"
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
#: TrackPanel.cpp:6105
#, c-format
msgid "Made '%s' a stereo track"
@@ -3941,8 +3882,7 @@ msgstr "×©× × ×¤×ר××"
msgid "Change lower speed limit (%) to:"
msgstr ":×©× × ×××× ×××ר×ת ת×ת×× (%) ×"
-#: TrackPanel.cpp:6316
-#: TrackPanel.cpp:6317
+#: TrackPanel.cpp:6316 TrackPanel.cpp:6317
msgid "Lower speed limit"
msgstr "סף ×××ר×ת × ×××"
@@ -3950,8 +3890,7 @@ msgstr "סף ×××ר×ת × ×××"
msgid "Change upper speed limit (%) to:"
msgstr ":×©× × ×××× ×××ר×ת ×¢×××× (%) ×"
-#: TrackPanel.cpp:6323
-#: TrackPanel.cpp:6324
+#: TrackPanel.cpp:6323 TrackPanel.cpp:6324
msgid "Upper speed limit"
msgstr "סף ×××ר×ת ××××"
@@ -3993,6 +3932,10 @@ msgstr ""
msgid "Face size"
msgstr ""
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr ""
+
#: TrackPanel.cpp:7034
msgid "Mute"
msgstr "×שתק"
@@ -4026,10 +3969,7 @@ msgstr "×××× ××פע×"
msgid " Select On"
msgstr "××××¨× ××פע×ת"
-#: VoiceKey.cpp:88
-#: VoiceKey.cpp:238
-#: VoiceKey.cpp:376
-#: VoiceKey.cpp:517
+#: VoiceKey.cpp:88 VoiceKey.cpp:238 VoiceKey.cpp:376 VoiceKey.cpp:517
msgid "Selection is too small to use voice key."
msgstr "×××××¨× ×§×× × ××× ×ש×××ש ×©× ××¤×ª× ×§×××"
@@ -4056,8 +3996,7 @@ msgstr ""
msgid "Audio Track"
msgstr "רצ×עת ש××¢"
-#: WaveTrack.cpp:555
-#: WaveTrack.cpp:574
+#: WaveTrack.cpp:555 WaveTrack.cpp:574
msgid "There is not enough room available to paste the selection"
msgstr ""
@@ -4075,10 +4014,10 @@ msgstr "1 ×¢× %i ת×ספ××"
msgid "Plugins %i to %i"
msgstr "%i ×¢× %i ת×ספ××"
-#: commands/CommandManager.cpp:857
-#, fuzzy
-msgid "Disallowed for some reason. Try selecting some audio first?"
-msgstr "?××× × ××תר ×ס××× ×× ×©×××. × ×¡× ×¨×ש×ת ××××ר ש××¢ ××ש×× "
+#: commands/CommandManager.cpp:923
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
+msgstr ""
#: commands/CommandManager.cpp:724
msgid "You can only do this when playing and recording are\n"
@@ -4158,9 +4097,7 @@ msgstr "××××ר"
msgid "You selected a track which does not contain audio. AutoDuck can only process audio tracks."
msgstr ""
-#: effects/AutoDuck.cpp:126
-#: effects/AutoDuck.cpp:138
-#: effects/AutoDuck.cpp:453
+#: effects/AutoDuck.cpp:126 effects/AutoDuck.cpp:138 effects/AutoDuck.cpp:453
#: effects/AutoDuck.cpp:570
msgid "Auto Duck"
msgstr "×ת×××§×ת ×××××××ת"
@@ -4182,17 +4119,11 @@ msgid "Maximum pause:"
msgstr "××¤×¡×§× ××ר××ת:"
#. i18n-hint: Name of time display format that shows time in seconds
-#: effects/AutoDuck.cpp:494
-#: effects/AutoDuck.cpp:499
-#: effects/AutoDuck.cpp:504
-#: effects/AutoDuck.cpp:509
-#: effects/AutoDuck.cpp:514
-#: prefs/AudioIOPrefs.cpp:166
-#: prefs/AudioIOPrefs.cpp:174
-#: prefs/AudioIOPrefs.cpp:176
-#: prefs/AudioIOPrefs.cpp:201
-#: prefs/AudioIOPrefs.cpp:203
-#: widgets/TimeTextCtrl.cpp:263
+#: effects/AutoDuck.cpp:494 effects/AutoDuck.cpp:499 effects/AutoDuck.cpp:504
+#: effects/AutoDuck.cpp:509 effects/AutoDuck.cpp:514
+#: prefs/AudioIOPrefs.cpp:166 prefs/AudioIOPrefs.cpp:174
+#: prefs/AudioIOPrefs.cpp:176 prefs/AudioIOPrefs.cpp:201
+#: prefs/AudioIOPrefs.cpp:203 widgets/TimeTextCtrl.cpp:263
msgid "seconds"
msgstr "×©× ××ת"
@@ -4212,8 +4143,7 @@ msgstr ":×××¨× ××××©× ×¤× ×××ת"
msgid "Inner fade up length:"
msgstr ":×××¨× ××××¨× ×¤× ×××ת"
-#: effects/AutoDuck.cpp:521
-#: effects/Compressor.cpp:484
+#: effects/AutoDuck.cpp:521 effects/Compressor.cpp:484
msgid "Threshold:"
msgstr "ר×ת סף:"
@@ -4233,12 +4163,9 @@ msgstr "...×ת×××§×ת ×××××××ת"
msgid "Processing Auto Duck..."
msgstr "...××¢×× ×ת×××§×ת ×××××××ת"
-#: effects/AvcCompressor.cpp:738
-#: effects/VST/VSTEffect.cpp:448
-#: effects/audiounits/AudioUnitEffect.cpp:877
-#: effects/nyquist/Nyquist.cpp:1040
-#: widgets/ErrorDialog.cpp:74
-#: widgets/ErrorDialog.cpp:100
+#: effects/AvcCompressor.cpp:738 effects/VST/VSTEffect.cpp:448
+#: effects/audiounits/AudioUnitEffect.cpp:877 effects/nyquist/Nyquist.cpp:1040
+#: widgets/ErrorDialog.cpp:74 widgets/ErrorDialog.cpp:100
#: widgets/Warning.cpp:67
msgid "OK"
msgstr "××ש×ר"
@@ -4305,14 +4232,12 @@ msgstr "×©× × ×××× ×¦××× ×××× ××©× ×ת ×ת ×קצ×"
#. i18n-hint: && in here is an escape character to get a single & on
#. * screen, so keep it as is
-#: effects/ChangePitch.cpp:254
-#: effects/ChangeSpeed.cpp:313
+#: effects/ChangePitch.cpp:254 effects/ChangeSpeed.cpp:313
#: effects/ChangeTempo.cpp:180
msgid "by Vaughan Johnson && Dominic Mazzoni"
msgstr "Vaughan Johnson && Dominic Mazzoni ×¢\"×"
-#: effects/ChangePitch.cpp:259
-#: effects/ChangeTempo.cpp:185
+#: effects/ChangePitch.cpp:259 effects/ChangeTempo.cpp:185
msgid "using SoundTouch, by Olli Parviainen"
msgstr "Olli Parviainen ×¢\"× SoundTouch-×שת×ש ×"
@@ -4361,10 +4286,8 @@ msgstr ""
msgid "From frequency in hertz"
msgstr ""
-#: effects/ChangePitch.cpp:291
-#: effects/ChangePitch.cpp:337
-#: effects/ChangeSpeed.cpp:377
-#: effects/ChangeTempo.cpp:239
+#: effects/ChangePitch.cpp:291 effects/ChangePitch.cpp:337
+#: effects/ChangeSpeed.cpp:377 effects/ChangeTempo.cpp:239
#: effects/ChangeTempo.cpp:270
msgid "to"
msgstr "× ->"
@@ -4373,8 +4296,7 @@ msgstr "× ->"
msgid "To frequency in seconds"
msgstr ""
-#: effects/ChangePitch.cpp:360
-#: effects/ChangeSpeed.cpp:331
+#: effects/ChangePitch.cpp:360 effects/ChangeSpeed.cpp:331
#: effects/ChangeTempo.cpp:198
msgid "Percent Change:"
msgstr "×××× ×©×× ××:"
@@ -4392,8 +4314,7 @@ msgstr "...×©× × ×××× ×¦×××"
msgid "Changing Pitch"
msgstr "××©× × ×××× ×¦×××"
-#: effects/ChangeSpeed.cpp:53
-#: effects/ChangeTempo.cpp:55
+#: effects/ChangeSpeed.cpp:53 effects/ChangeTempo.cpp:55
#, c-format
msgid "Applied effect: %s %.1f%%"
msgstr "%s %.1f%% :×××©× ×פק×"
@@ -4545,13 +4466,11 @@ msgstr "××× × ××××:"
msgid "Decay Time"
msgstr ""
-#: effects/Compressor.cpp:516
-#, fuzzy
-msgid "Normalize to 0dB after compressing"
-msgstr "(0db×××©× × ×ר××× ×××¨× ×××××¡× (× "
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
+msgstr ""
#: effects/Compressor.cpp:563
-#, c-format
#, fuzzy
msgid "Threshold %d dB"
msgstr "ר×ת סף: %d dB"
@@ -4582,7 +4501,6 @@ msgid "%.1f:1"
msgstr ""
#: effects/Compressor.cpp:575
-#, c-format
#, fuzzy
msgid "Attack Time %.1f secs"
msgstr "%.1f :××× ×תקף ××©× ××ת"
@@ -4593,7 +4511,6 @@ msgid "%.1f secs"
msgstr ""
#: effects/Compressor.cpp:578
-#, c-format
#, fuzzy
msgid "Decay Time %.1f secs"
msgstr "%.1f :××× ××¢××× ××©× ××ת"
@@ -4606,6 +4523,10 @@ msgstr "...×××ס"
msgid "Applying Dynamic Range Compression..."
msgstr "...××××©× ×××סת ת××× ××× ××"
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
msgstr ""
@@ -4625,19 +4546,6 @@ msgid "Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr ""
-
#: effects/Contrast.cpp:231
msgid "Contrast Analyzer"
msgstr ""
@@ -4646,15 +4554,12 @@ msgstr ""
msgid "Parameters"
msgstr ""
-#: effects/ToneGen.cpp:361
-#: toolbars/ControlToolBar.cpp:185
+#: effects/ToneGen.cpp:361 toolbars/ControlToolBar.cpp:185
msgid "Start"
msgstr "×ת×××"
-#: effects/ToneGen.cpp:362
-#: toolbars/ControlToolBar.cpp:188
-#: toolbars/SelectionBar.cpp:149
-#: toolbars/SelectionBar.cpp:254
+#: effects/ToneGen.cpp:362 toolbars/ControlToolBar.cpp:188
+#: toolbars/SelectionBar.cpp:149 toolbars/SelectionBar.cpp:254
msgid "End"
msgstr "ס××£"
@@ -4674,6 +4579,11 @@ msgstr ""
msgid "Foreground end time"
msgstr ""
+#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
+#: effects/Contrast.cpp:289
+msgid "Measured"
+msgstr ""
+
#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
msgid "Use selection"
msgstr ""
@@ -4698,8 +4608,7 @@ msgstr ""
msgid "Contrast Result:"
msgstr ""
-#: Tags.cpp:829
-#: Tags.cpp:1981
+#: Tags.cpp:829 Tags.cpp:1981
msgid "Reset"
msgstr "××ת×××"
@@ -4719,16 +4628,8 @@ msgstr ""
msgid "Help for WCAG2 Audio Contrast Analyzer"
msgstr ""
-#: toolbars/ControlToolBar.cpp:82
-msgid "Control"
-msgstr "cerv"
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
msgstr ""
#: effects/Contrast.cpp:328 effects/Contrast.cpp:336 effects/Contrast.cpp:344
@@ -4839,18 +4740,6 @@ msgstr ""
msgid "Data gathered"
msgstr ""
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr ""
-
#: effects/DtmfGen.cpp:48
msgid "DTMF Tone Generator"
msgstr "DTMF ×××צר צ××××"
@@ -4863,9 +4752,7 @@ msgstr "(2006) Salvo Ventura ×¢\"×"
msgid "DTMF sequence:"
msgstr "DTMF ס×ר:"
-#: effects/DtmfGen.cpp:444
-#: effects/Noise.cpp:255
-#: effects/ToneGen.cpp:328
+#: effects/DtmfGen.cpp:444 effects/Noise.cpp:255 effects/ToneGen.cpp:328
#: effects/ToneGen.cpp:365
msgid "Amplitude (0-1)"
msgstr "(×¢×צ×× (0-1"
@@ -4886,9 +4773,7 @@ msgstr "××× ××××ר:"
msgid "Tone duration:"
msgstr ":××©× ×¦×××"
-#: effects/DtmfGen.cpp:478
-#: effects/DtmfGen.cpp:480
-#: effects/DtmfGen.cpp:556
+#: effects/DtmfGen.cpp:478 effects/DtmfGen.cpp:480 effects/DtmfGen.cpp:556
#: effects/DtmfGen.cpp:557
msgid "ms"
msgstr "×××××©× ××ת"
@@ -4970,8 +4855,7 @@ msgstr ""
msgid "Cubic"
msgstr "××¢××§×"
-#: effects/Equalization.cpp:357
-#: effects/Equalization.cpp:408
+#: effects/Equalization.cpp:357 effects/Equalization.cpp:408
msgid "Equalization"
msgstr "×ש××××"
@@ -4983,6 +4867,10 @@ msgstr "EQ ש×××× ×××¢×× ×ª ×¢×§×××ת "
msgid "custom"
msgstr "××ת××"
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr ""
+
#. i18n-hint: && in here is an escape character to get a single &
#. * on screen, so keep it as is
#: effects/Equalization.cpp:1085
@@ -5021,8 +4909,7 @@ msgstr "×××¨× ×פ×××ר:"
msgid "Select curve:"
msgstr "××ר ×¢×§×××:"
-#: effects/Equalization.cpp:1257
-#: effects/Equalization.cpp:2420
+#: effects/Equalization.cpp:1257 effects/Equalization.cpp:2420
msgid "Save As..."
msgstr "ש××ר ×ש×..."
@@ -5138,8 +5025,7 @@ msgstr "××× ×××תר"
msgid "by Lynn Allan"
msgstr "Lynn Allan ×¢\"×"
-#: effects/Leveller.cpp:226
-#: effects/Leveller.cpp:231
+#: effects/Leveller.cpp:226 effects/Leveller.cpp:231
msgid "Degree of Leveling"
msgstr "ר×ת ×××××§×"
@@ -5188,10 +5074,6 @@ msgstr ""
msgid "Analyser"
msgstr ""
-#: toolbars/MixerToolBar.cpp:60
-msgid "Mixer"
-msgstr "×ער××"
-
#: effects/LoadEffects.cpp:116
msgid "Simulator"
msgstr ""
@@ -5432,15 +5314,9 @@ msgstr "×ס×ר רעש"
msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr ""
-#: effects/Normalize.cpp:74
-#: effects/Normalize.cpp:75
-msgid "false"
-msgstr "שקר"
-
#. i18n-hint: true here means that the option was
#. * selected. Opposite false if not selected
-#: effects/Normalize.cpp:74
-#: effects/Normalize.cpp:75
+#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
msgid "true"
msgstr "××ת"
@@ -5504,8 +5380,7 @@ msgstr ""
msgid "Dry Wet"
msgstr ""
-#: effects/Phaser.cpp:264
-#: effects/Wahwah.cpp:221
+#: effects/Phaser.cpp:264 effects/Wahwah.cpp:221
msgid "LFO Frequency (Hz):"
msgstr "LFO ת××ר×ת (Hz):"
@@ -5513,8 +5388,7 @@ msgstr "LFO ת××ר×ת (Hz):"
msgid "LFO frequency in hertz"
msgstr ""
-#: effects/Phaser.cpp:280
-#: effects/Wahwah.cpp:237
+#: effects/Phaser.cpp:280 effects/Wahwah.cpp:237
msgid "LFO Start Phase (deg.):"
msgstr "LFO פ××ת ×ת××× ×©× (deg.):"
@@ -5573,8 +5447,7 @@ msgstr "פע××× %d ×××¦×¢× ×××¨× "
msgid "Tracks are too long to repeat the selection."
msgstr ".×רצ××¢×ת ×ר×××ת ××× ×××× ××××ר ×¢× ×××§××¢ ×× ××ר"
-#: effects/Repeat.cpp:76
-#: effects/Repeat.cpp:80
+#: effects/Repeat.cpp:76 effects/Repeat.cpp:80
msgid "Repeat"
msgstr "×××ר ש××"
@@ -5587,8 +5460,7 @@ msgstr "×ספר פע××× ×××ר×:"
msgid "New selection length: hh:mm:ss"
msgstr ""
-#: effects/Repeat.cpp:207
-#: effects/Repeat.cpp:237
+#: effects/Repeat.cpp:207 effects/Repeat.cpp:237
msgid "New selection length: "
msgstr "×××¨× ××§××¢ ××ש: "
@@ -5660,9 +5532,7 @@ msgstr ""
msgid "Applying Spike Cleaner..."
msgstr ""
-#: Menus.cpp:356
-#: Menus.cpp:556
-#: effects/StereoToMono.h:23
+#: Menus.cpp:356 Menus.cpp:556 effects/StereoToMono.h:23
#, fuzzy
msgid "&Stereo to Mono"
msgstr "&ס×ר××× ×××× ×"
@@ -5723,8 +5593,7 @@ msgstr "%s %s ×××©× ×פק×: ××צ×ר ××\n"
"%.2f -×¢×צ××\n"
"%.6lf -××©× ××©× ××ת"
-#: effects/ToneGen.cpp:74
-#: widgets/Meter.cpp:366
+#: effects/ToneGen.cpp:74 widgets/Meter.cpp:366
msgid "Linear"
msgstr "××× ×ר×"
@@ -5756,8 +5625,7 @@ msgstr "×©× ×ס×ר"
msgid "Square, no alias"
msgstr ""
-#: effects/ToneGen.cpp:327
-#: effects/ToneGen.cpp:363
+#: effects/ToneGen.cpp:327 effects/ToneGen.cpp:363
msgid "Frequency (Hz)"
msgstr "(Hz) ת×ר"
@@ -5805,28 +5673,43 @@ msgstr "×××צר ×××"
msgid "All tracks must have the same sample rate"
msgstr ".×× ×רצ××¢×ת ×××××ת ××××ת ××¢××ת ×××ª× ×§×¦× ×××××"
-#: effects/TruncSilence.cpp:113
-#: effects/TruncSilence.cpp:322
+#: effects/TruncSilence.cpp:113 effects/TruncSilence.cpp:322
msgid "Truncate Silence"
msgstr "×ת×× ×©×§×"
-#: effects/TruncSilence.cpp:346
-msgid "Max silence duration:"
-msgstr "×××¨× ××©×§× ×××ר××:"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr ""
-#: effects/TruncSilence.cpp:349
-#: prefs/AudioIOPrefs.cpp:190
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:349 prefs/AudioIOPrefs.cpp:190
#: prefs/AudioIOPrefs.cpp:193
msgid "milliseconds"
msgstr "×××××©× ××ת"
+#: effects/TruncSilence.cpp:346
+msgid "Max silence duration:"
+msgstr "×××¨× ××©×§× ×××ר××:"
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ""
+
#: effects/TruncSilence.cpp:351
msgid "Threshold for silence:"
msgstr "ר×ת סף ×שק×:"
-#: effects/TruncSilence.cpp:375
-msgid " Duration must be at least 1 millisecond"
-msgstr " ××©× ×××× ××××ת ×פ××ת 1 ×××× ×©× ××"
+#: effects/TruncSilence.cpp:506
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
+msgstr ""
#: effects/TruncSilence.h:28
msgid "Truncate Silence..."
@@ -5836,17 +5719,55 @@ msgstr "...×ת×× ×©×§×"
msgid "Truncating Silence..."
msgstr "...×ת×× ×©×§×"
-#: effects/VST/VSTEffect.cpp:165
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "×× ×××××× ××ת×צע ×¢××ר ער××¦× ×¡×ר××× ××שר ×ער×צ×× ×¢×¦×× ×©× ×רצ××¢× ××× × ×ת××××× VST ×צ×ער, ×פק××"
+#: effects/ladspa/LadspaEffect.cpp:608
+msgid "Effect Settings"
+msgstr "ער×× ××פק×××"
+
+#: effects/ladspa/LadspaEffect.cpp:573 effects/ladspa/LadspaEffect.cpp:581
+#: prefs/QualityPrefs.cpp:72
+msgid "None"
+msgstr "××××"
+
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
-#: effects/VST/VSTEffect.cpp:180
-msgid "Can't process replacing"
-msgstr "×× ×××× ××¢×× ×ª××××£"
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
-#: effects/VST/VSTEffect.cpp:403
-msgid "VST Plug-in parameters:"
-msgstr ":VST פר××ר ×ת×סף"
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr ""
#: effects/Wahwah.cpp:61
#, c-format
@@ -5900,21 +5821,10 @@ msgstr "%s :××צע ××¤×§× "
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr ".×צ×ער, ×פק××× ××ספ×× ×× ×××××× ××ת×צע ×¢××ר ער××¦× ×¡×ר××× ××שר ×ער×צ×× ×¢×¦×× ×©× ×רצ××¢× ××× × ×ת×××××"
-#: effects/ladspa/LadspaEffect.cpp:573
-#: effects/ladspa/LadspaEffect.cpp:581
-#: prefs/QualityPrefs.cpp:72
-msgid "None"
-msgstr "××××"
-
-#: effects/ladspa/LadspaEffect.cpp:575
-#: effects/vamp/VampEffect.cpp:384
+#: effects/ladspa/LadspaEffect.cpp:575 effects/vamp/VampEffect.cpp:384
msgid "Author: "
msgstr "×××רr: "
-#: effects/ladspa/LadspaEffect.cpp:608
-msgid "Effect Settings"
-msgstr "ער×× ××פק×××"
-
#: effects/ladspa/LadspaEffect.cpp:699
msgid "Length (seconds)"
msgstr "(×××¨× (×©× ××ת"
@@ -5935,8 +5845,7 @@ msgstr ""
msgid "Applying Nyquist Effect..."
msgstr "...××××©× ××¤×§× × ×××§×××ס×"
-#: effects/nyquist/Nyquist.cpp:259
-#: effects/nyquist/Nyquist.cpp:321
+#: effects/nyquist/Nyquist.cpp:259 effects/nyquist/Nyquist.cpp:321
msgid "Nyquist Prompt..."
msgstr "...Nyquist פק××ת"
@@ -5956,8 +5865,7 @@ msgstr "× ×××§×××ס×"
msgid "Nyquist Output: "
msgstr "ת×צר × ×××§×××ס×: "
-#: effects/nyquist/Nyquist.cpp:596
-#: effects/nyquist/Nyquist.cpp:607
+#: effects/nyquist/Nyquist.cpp:596 effects/nyquist/Nyquist.cpp:607
msgid "Nyquist returned the value:"
msgstr "× ×××§××××¡× ××××ר ×ת ×ער×:"
@@ -6065,8 +5973,7 @@ msgstr "- ××××"
msgid "Mixer Panel"
msgstr ""
-#: export/Export.cpp:961
-#: export/Export.cpp:1006
+#: export/Export.cpp:961 export/Export.cpp:1006
#, c-format
msgid "Output Channels: %2d"
msgstr ""
@@ -6096,8 +6003,7 @@ msgstr ""
msgid "(external program)"
msgstr "(ת××× × ××צ×× ×ת)"
-#: export/ExportCL.cpp:248
-#: export/ExportPCM.cpp:367
+#: export/ExportCL.cpp:248 export/ExportPCM.cpp:367
#, c-format
msgid "Cannot export audio to %s"
msgstr "%s ×× ×××× ×××¦× ×©××¢ ××"
@@ -6114,9 +6020,21 @@ msgstr "××××¦× ×ת ×× ×פר×××§× ×ª×× ×©×××ש ×××§××× ×¤×§
msgid "Command Output"
msgstr ""
-#: export/ExportFFmpeg.cpp:59
+#: export/ExportFFmpeg.cpp:61
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
#: export/ExportFFmpeg.cpp:394
@@ -6184,6 +6102,10 @@ msgstr ""
msgid "AAC Export Setup"
msgstr ""
+#: export/ExportOGG.cpp:86
+msgid "Quality:"
+msgstr "××××ת:"
+
#: export/ExportFFmpegDialogs.cpp:217
msgid "Specify AMR-NB Options"
msgstr ""
@@ -6317,12 +6239,8 @@ msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n
"Recommended - 192000"
msgstr ""
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr "××××ת:"
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid "Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
@@ -6341,10 +6259,10 @@ msgstr ""
msgid "Cutoff Bandwidth:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:947
+#: export/ExportFFmpegDialogs.cpp:936
msgid "Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:949
@@ -6533,12 +6451,12 @@ msgstr ""
msgid "AC3 Files (FFmpeg)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:56
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:57
@@ -6649,6 +6567,17 @@ msgstr "×¢×××§ ××××××:"
msgid "FLAC Files"
msgstr "FLAC ×§××¦× "
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
#: export/ExportFLAC.cpp:310
msgid "Exporting the selected audio as FLAC"
msgstr "FLAC ××××¦× ×ת ×××§ ×ש××¢ ×× ××ר ×ת×ר"
@@ -6673,9 +6602,7 @@ msgstr "MP2 ×§×××¥ "
msgid "Cannot export MP2 with this sample rate and bit rate"
msgstr "××§×¦× ××××× ×× ×××§×¦× ××××× ×× MP2 ×× ×××× ××××¦× ×"
-#: export/ExportMP2.cpp:243
-#: export/ExportMP3.cpp:1769
-#: export/ExportOGG.cpp:183
+#: export/ExportMP2.cpp:243 export/ExportMP3.cpp:1769 export/ExportOGG.cpp:183
msgid "Unable to open target file for writing"
msgstr ".×× ×××× ×פת×× ×§×××¥ ××¢× ××ת×××"
@@ -6689,9 +6616,7 @@ msgstr ""
msgid "Exporting entire file at %d kbps"
msgstr ""
-#: export/ExportMP3.cpp:221
-#: export/ExportMP3.cpp:239
-#: export/ExportMP3.cpp:253
+#: export/ExportMP3.cpp:221 export/ExportMP3.cpp:239 export/ExportMP3.cpp:253
msgid "kbps"
msgstr ""
@@ -6707,8 +6632,7 @@ msgstr "(×§×××¥ ×§×× ××תר)"
msgid "Fast"
msgstr "×××ר"
-#: export/ExportMP3.cpp:244
-#: export/ExportMP3.cpp:250
+#: export/ExportMP3.cpp:244 export/ExportMP3.cpp:250
msgid "Standard"
msgstr "ס×× ×ר××"
@@ -6752,8 +6676,7 @@ msgstr "××צ××¢"
msgid "Constant"
msgstr "×§×××¢"
-#: prefs/QualityPrefs.cpp:42
-#: prefs/QualityPrefs.cpp:43
+#: prefs/QualityPrefs.cpp:42 prefs/QualityPrefs.cpp:43
msgid "Quality"
msgstr "××××ת"
@@ -6872,10 +6795,8 @@ msgstr ""
msgid "MP3 export library not found"
msgstr ""
-#: export/ExportMultiple.cpp:88
-#: export/ExportMultiple.cpp:362
-#: export/ExportMultiple.cpp:609
-#: export/ExportMultiple.cpp:717
+#: export/ExportMultiple.cpp:88 export/ExportMultiple.cpp:362
+#: export/ExportMultiple.cpp:609 export/ExportMultiple.cpp:717
msgid "Export Multiple"
msgstr "××¦× ×××× ×¤×ר××××"
@@ -6905,11 +6826,6 @@ msgstr "...×פשר×××ת"
msgid "Export location:"
msgstr ":××¦× ××××§××"
-#: export/ExportMultiple.cpp:204
-#: prefs/DirectoriesPrefs.cpp:92
-msgid "Choose..."
-msgstr "...××ר"
-
#: export/ExportMultiple.cpp:205
msgid "Create"
msgstr "×צ×ר×"
@@ -6934,10 +6850,6 @@ msgstr "×©× ×§×××¥ ר×ש××:"
msgid "First file name"
msgstr ""
-#: export/ExportMultiple.cpp:246
-msgid "Tracks"
-msgstr "רצ××¢×ת"
-
#: export/ExportMultiple.cpp:253
msgid "Name files:"
msgstr ":×ª× ××צ×× ×©××ת ×פ×:"
@@ -6971,6 +6883,35 @@ msgstr "× ×צר ××צ××× \"%s\""
msgid "Choose a location to save the exported files"
msgstr "××ר ×××§×× ×¢××ר ×§×צ×× ×××צ×××"
+#: export/ExportMultiple.cpp:524
+#, c-format
+msgid "Successfully exported the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:527
+#, c-format
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr ""
+
#: export/ExportMultiple.cpp:480
#, c-format
msgid "\"%s\" doesn't exist.\n"
@@ -6982,18 +6923,6 @@ msgstr ""
msgid "Edit metadata"
msgstr ""
-#: export/ExportMultiple.cpp:606
-#: export/ExportMultiple.cpp:714
-#, fuzzy, c-format
-msgid "Successfully exported %d file(s)."
-msgstr ".×§×צ×× %d ××צ×× ××צ××× "
-
-#: export/ExportMultiple.cpp:607
-#: export/ExportMultiple.cpp:715
-#, c-format
-msgid "Something went wrong after exporting %d file(s)."
-msgstr ""
-
#: export/ExportMultiple.cpp:881
#, c-format
msgid "Label %s is not a legal file name. You cannot use any of: %s\n"
@@ -7249,6 +7178,10 @@ msgstr ""
msgid "FLAC files"
msgstr "FLAC ×§×צ×"
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr ""
+
#: import/ImportLOF.cpp:92
msgid "List of Files in basic text format"
msgstr "רש××ת ×פ×ר×× ××§×¡× ×¤×©××"
@@ -7259,9 +7192,7 @@ msgid "Invalid window offset in LOF file."
msgstr ".LOF ××× ×××× ×× ×××§× ××§×××¥"
#. i18n-hint: You do not need to translate "LOF"
-#: import/ImportLOF.cpp:320
-#: import/ImportLOF.cpp:341
-#: import/ImportLOF.cpp:415
+#: import/ImportLOF.cpp:320 import/ImportLOF.cpp:341 import/ImportLOF.cpp:415
#: import/ImportLOF.cpp:435
msgid "LOF Error"
msgstr "LOF ש×××ת"
@@ -7318,8 +7249,7 @@ msgstr "×× ×××§×ת Vorbis bitstream ××תרת"
msgid "Internal logic fault"
msgstr "ש×××× ××××ת ×¤× ×××ת"
-#: export/ExportPCM.cpp:320
-#: import/ImportPCM.cpp:47
+#: export/ExportPCM.cpp:320 import/ImportPCM.cpp:47
msgid "WAV, AIFF, and other uncompressed types"
msgstr ""
@@ -7410,36 +7340,41 @@ msgstr ""
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr ""
-#: prefs/AudioIOPrefs.cpp:41
-#: prefs/AudioIOPrefs.cpp:42
-msgid "Audio I/O"
-msgstr "×§××/פ×× ×©× ×©××¢"
+#: prefs/BatchPrefs.cpp:55 prefs/BatchPrefs.cpp:56
+msgid "Batch"
+msgstr "×צ×××"
-#: prefs/AudioIOPrefs.cpp:100
-msgid "1 (Mono)"
-msgstr "1 (××× ×)"
+#: prefs/BatchPrefs.cpp:77 prefs/GUIPrefs.cpp:73
+msgid "Behaviors"
+msgstr "××ª× ×××××ת"
-#: prefs/AudioIOPrefs.cpp:101
-msgid "2 (Stereo)"
-msgstr "2 (ס×ר×××)"
+#: prefs/BatchPrefs.cpp:80
+msgid "&Don't apply effects in batch mode"
+msgstr ""
-#: prefs/AudioIOPrefs.cpp:115
-msgid "Playback"
-msgstr "× ××××"
+#: prefs/BatchPrefs.cpp:85
+msgid "Cl&eanSpeech Mode (Customized GUI)"
+msgstr ""
-#: prefs/AudioIOPrefs.cpp:119
-#: prefs/AudioIOPrefs.cpp:137
-#: toolbars/DeviceToolBar.cpp:57
-msgid "Device"
-msgstr "×תק×"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:33 prefs/GUIPrefs.cpp:34
+msgid "Interface"
+msgstr "××שק"
+
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
+msgstr ""
#: prefs/AudioIOPrefs.cpp:122
msgid "Using:"
msgstr "×שת×ש ×:"
-#: prefs/AudioIOPrefs.cpp:123
-msgid "Portaudio v"
-msgstr ""
+#: prefs/AudioIOPrefs.cpp:115
+msgid "Playback"
+msgstr "× ××××"
#: prefs/AudioIOPrefs.cpp:133
msgid "Recording"
@@ -7449,97 +7384,15 @@ msgstr "××§×××"
msgid "Channels"
msgstr "ער×צ××"
-#: prefs/AudioIOPrefs.cpp:145
-msgid "Playthrough"
-msgstr "× ×× ×ר×"
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr "(× ××× × ×ª××-××× ×¢\"× ××××¨× (×ש××¢ רצ××¢× ×××©× ×××× ××§×××"
-
-#: prefs/AudioIOPrefs.cpp:152
-#, fuzzy
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr "(× ×××× ×¢×¦×× ×ת××× × (× ×× ×¨×¦××¢× ×××©× ×××× ×××§××× ×©××"
-
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:162
-msgid "Effects Preview"
-msgstr "תצ××× ××§×××× ×©× ×פק×××"
-
-#: prefs/AudioIOPrefs.cpp:165
-msgid "Length of preview:"
-msgstr "×××¨× ×ª×¦××× ××§××××:"
-
-#: prefs/AudioIOPrefs.cpp:170
-msgid "Cut Preview"
-msgstr "××¦× ×××ר×"
-
-#: prefs/AudioIOPrefs.cpp:173
-msgid "Preview before cut region:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:175
-msgid "Preview after cut region:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:183
-msgid "Latency"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:189
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:192
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:197
-msgid "Seek Time when playing"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:200
-msgid "Short period:"
-msgstr "פרק ××× ×§×¦×¨:"
-
-#: prefs/AudioIOPrefs.cpp:202
-msgid "Long period:"
-msgstr "פרק ××× ×ר××:"
-
-#: prefs/BatchPrefs.cpp:55
-#: prefs/BatchPrefs.cpp:56
-msgid "Batch"
-msgstr "×צ×××"
-
-#: prefs/BatchPrefs.cpp:77
-#: prefs/GUIPrefs.cpp:73
-msgid "Behaviors"
-msgstr "××ª× ×××××ת"
-
-#: prefs/BatchPrefs.cpp:80
-msgid "&Don't apply effects in batch mode"
-msgstr ""
+#: prefs/AudioIOPrefs.cpp:100
+msgid "1 (Mono)"
+msgstr "1 (××× ×)"
-#: prefs/BatchPrefs.cpp:85
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr ""
+#: prefs/AudioIOPrefs.cpp:101
+msgid "2 (Stereo)"
+msgstr "2 (ס×ר×××)"
-#: prefs/DirectoriesPrefs.cpp:55
-#: prefs/DirectoriesPrefs.cpp:56
+#: prefs/DirectoriesPrefs.cpp:55 prefs/DirectoriesPrefs.cpp:56
#: prefs/PrefsDialog.cpp:279
msgid "Directories"
msgstr "ספר××ת"
@@ -7556,34 +7409,31 @@ msgstr "×××§××:"
msgid "Free Space:"
msgstr "××§×× ×¤× ××:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr "ש×××¨× ×××××××ת"
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
+#: prefs/DirectoriesPrefs.cpp:110
+msgid "Audio cache"
msgstr ""
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
-msgstr "×ר××× ×©×××¨× ×××××××ת:"
-
#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
-msgstr "××§×ת"
+msgid "Play and/or record using RAM (useful for slow drives)"
+msgstr ""
-#: prefs/DirectoriesPrefs.cpp:110
-msgid "Audio cache"
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
msgstr ""
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
#: prefs/DirectoriesPrefs.cpp:121
msgid "Choose a location to place the temporary directory"
msgstr "××ר ×××§×× ×¢××ר ספר×× ××× ×ת"
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: prefs/DirectoriesPrefs.cpp:166
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -7602,227 +7452,144 @@ msgstr " ××× × ×רת ×ת××× %s ספר××"
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "ש×× ×××× ×ספר××× ×××× ×ת ×× ××× ×¡× ×ת××§×£ ×¢× ×©×ת××× × ×ª××ת××"
-#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
-msgid "Import / Export"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:84
-msgid "MP3 Export Library"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:105
-msgid "MP3 Library Version:"
-msgstr "MP3 ×רסת ספר××ת:"
-
-#: prefs/FileFormatPrefs.cpp:93
-msgid "MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:98
-msgid "LAME MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
-msgid "&Download"
+#: prefs/GUIPrefs.cpp:42
+msgid "In Browser"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
+#: prefs/GUIPrefs.cpp:43
+msgid "From Internet"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:136
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:137
-msgid "When importing audio files"
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:140
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:141
-msgid "&Read uncompressed audio files directly from the original (faster)"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:143
-msgid "&Normalize all tracks in project"
-msgstr ""
+#: prefs/GUIPrefs.cpp:116
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 dB (ת××× ×¨××× ×¢××ר ער××ת ×¢×צ××ת ×××××ת)"
-#: prefs/FileFormatPrefs.cpp:84
-msgid "When saving a project that depends on other audio files"
-msgstr ""
+#: prefs/GUIPrefs.cpp:117
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 dB (PCM ת××× ××××× ×©× 8 ס××××ת)"
-#: prefs/FileFormatPrefs.cpp:87
-msgid "Always © all audio into project (safest)"
+#: prefs/GUIPrefs.cpp:143
+msgid "-60 dB (PCM range of 10 bit samples)"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:88
-msgid "&Do not copy any audio"
-msgstr ""
+#: prefs/GUIPrefs.cpp:118
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 dB (PCM ת××× ××××× ×©× 16 ס××××ת)"
-#: prefs/FileFormatPrefs.cpp:89
-msgid "&Ask user"
-msgstr "&ש×× ×שת×ש"
+#: prefs/GUIPrefs.cpp:119
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 dB (סף ×ש×××¢× ××× ×ש×)"
-#: prefs/FileFormatPrefs.cpp:93
-msgid "When exporting tracks to an audio file"
-msgstr ""
+#: prefs/GUIPrefs.cpp:120
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB (PCM ת××× ××××× ×©× 24 ס××××ת)"
-#: prefs/FileFormatPrefs.cpp:96
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
-msgstr ""
+#: prefs/SpectrumPrefs.cpp:140
+msgid "Display"
+msgstr "×צ×"
-#: prefs/FileFormatPrefs.cpp:97
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+#: prefs/GUIPrefs.cpp:100
+msgid "Er&gonomic order of audio I/O buttons"
msgstr ""
-#: prefs/BatchPrefs.cpp:91
-msgid "S&how Metadata Editor prior to export step"
-msgstr "×&×¦× ×¢××¨× ×××-××××¢ ××¤× × ×¤×¢××ת ××צ××"
-
-#: prefs/GUIPrefs.cpp:33
-#: prefs/GUIPrefs.cpp:34
-msgid "Interface"
-msgstr "××שק"
-
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
msgstr ""
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
msgstr ""
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
+#: prefs/GUIPrefs.cpp:167
+msgid "Help:"
msgstr ""
-#: prefs/GUIPrefs.cpp:75
-msgid "&Update display while playing"
-msgstr "&×¢××× ×ª×¦××× ×××× ×ש××¢×"
-
#: prefs/GUIPrefs.cpp:96
msgid "Cl&osing last window quits Audacity"
msgstr ""
-#: prefs/GUIPrefs.cpp:79
-msgid "Enable &dragging of left and right selection edges"
-msgstr "×פשר ×&ר××¨× ×©× ×ש××××× ×××× × ××ש×××× ×©× ××§××¢ ×× ××ר"
-
-#: prefs/GUIPrefs.cpp:100
-msgid "Er&gonomic order of audio I/O buttons"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:83
-msgid "Automatically &fit tracks vertically zoomed"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:104
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:87
-msgid "Editing a &clip can move other clips"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:89
-msgid "&Select all audio in project, if none selected"
-msgstr "×&×ר ×× ×ש××¢ ×פר×××§×, ×× ××× × ×××ר"
-
#: prefs/GUIPrefs.cpp:91
msgid "&Beep on completion of longer activities"
msgstr ""
-#: prefs/BatchPrefs.cpp:89
-#: prefs/GUIPrefs.cpp:95
-msgid "Show / Hide"
-msgstr "××¦× / ×סתר"
-
-#: prefs/GUIPrefs.cpp:97
-msgid "Enable cut &lines"
-msgstr "&×פשר ××ת×× ××§××××"
-
-#: prefs/GUIPrefs.cpp:99
-msgid "Show warnings about &temp files"
-msgstr "××¦× ×××ר×ת ×× ×××¢ ×&×§×צ×× ××× ×××"
-
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:122
-#, fuzzy
-msgid "Show &Welcome Message at program start up"
-msgstr "××¦× ×××עת פת××× ××ת××ת ×ת××× ×ת"
-
#: prefs/GUIPrefs.cpp:126
msgid "Modes"
msgstr ""
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
+msgstr ""
+
#: prefs/GUIPrefs.cpp:129
msgid "Don't a&pply effects in batch mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
+#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
+msgid "Import / Export"
msgstr ""
-#: prefs/GUIPrefs.cpp:116
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 dB (ת××× ×¨××× ×¢××ר ער××ת ×¢×צ××ת ×××××ת)"
-
-#: prefs/GUIPrefs.cpp:117
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 dB (PCM ת××× ××××× ×©× 8 ס××××ת)"
-
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
+#: prefs/FileFormatPrefs.cpp:137
+msgid "When importing audio files"
msgstr ""
-#: prefs/GUIPrefs.cpp:118
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 dB (PCM ת××× ××××× ×©× 16 ס××××ת)"
+#: prefs/FileFormatPrefs.cpp:140
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
+msgstr ""
-#: prefs/GUIPrefs.cpp:119
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 dB (סף ×ש×××¢× ××× ×ש×)"
+#: prefs/FileFormatPrefs.cpp:141
+msgid "&Read uncompressed audio files directly from the original (faster)"
+msgstr ""
-#: prefs/GUIPrefs.cpp:120
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB (PCM ת××× ××××× ×©× 24 ס××××ת)"
+#: prefs/FileFormatPrefs.cpp:143
+msgid "&Normalize all tracks in project"
+msgstr ""
-#: prefs/GUIPrefs.cpp:126
-msgid "Default View Mode"
-msgstr "×ר×רת ××××× ×©× ×¦×רת ×תצ×××"
+#: prefs/FileFormatPrefs.cpp:93
+msgid "When exporting tracks to an audio file"
+msgstr ""
-#: prefs/GUIPrefs.cpp:164
-msgid "Other interface choices"
+#: prefs/FileFormatPrefs.cpp:96
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
msgstr ""
-#: prefs/GUIPrefs.cpp:167
-msgid "Help:"
+#: prefs/FileFormatPrefs.cpp:97
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
msgstr ""
-#: prefs/GUIPrefs.cpp:168
-msgid "Solo Button:"
+#: prefs/BatchPrefs.cpp:91
+msgid "S&how Metadata Editor prior to export step"
+msgstr "×&×¦× ×¢××¨× ×××-××××¢ ××¤× × ×¤×¢××ת ××צ××"
+
+#: prefs/ImportExportPrefs.cpp:84
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
msgstr ""
-#: prefs/KeyConfigPrefs.cpp:64
-#: prefs/KeyConfigPrefs.cpp:65
+#: prefs/KeyConfigPrefs.cpp:64 prefs/KeyConfigPrefs.cpp:65
msgid "Keyboard"
msgstr "××× ×קש××"
@@ -7846,22 +7613,26 @@ msgstr "&×§××¢"
msgid "Note: Pressing Cmd+Q will quit. All other keys are valid."
msgstr ".ת×ר×× ××צ×××. ×× ××קש×× ×××ר×× ×××§××× Cmd+Q ×ער×: ××××¦× ×¢×"
-#: prefs/KeyConfigPrefs.cpp:124
-#: prefs/ThemePrefs.cpp:105
+#: prefs/KeyConfigPrefs.cpp:124 prefs/ThemePrefs.cpp:105
msgid "&Defaults"
msgstr "&ער×× ×ר×רת ×××××"
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr ""
+
#: prefs/KeyConfigPrefs.cpp:143
msgid "Key Combination"
msgstr "×§××××× ×¦××ת ×פת××ת"
-#: prefs/KeyConfigPrefs.cpp:163
-msgid "Export Keyboard Shortcuts As:"
-msgstr ":×××¦× ×§×צ××¨× ×קש×× ×ת×ר"
+#: prefs/KeyConfigPrefs.cpp:367 toolbars/EditToolBar.cpp:144
+msgid "Undo"
+msgstr "×××××-××צ××¢"
-#: prefs/KeyConfigPrefs.cpp:181
-msgid "Error saving keyboard shortcuts"
-msgstr "ש×××× ×ש××רת ×§×צ××¨× ××קש××"
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr ""
#: prefs/KeyConfigPrefs.cpp:196
msgid "Select an XML file containing Audacity keyboard shortcuts..."
@@ -7871,6 +7642,14 @@ msgstr "...ש×××× ×ת ×§×צ××¨× ××קש×× ×¢××ר ×ת××× × XML
msgid "Error loading keyboard shortcuts"
msgstr "ש×××× ×××¢×× ×ª ×§×צ××¨× ××קש××"
+#: prefs/KeyConfigPrefs.cpp:163
+msgid "Export Keyboard Shortcuts As:"
+msgstr ":×××¦× ×§×צ××¨× ×קש×× ×ת×ר"
+
+#: prefs/KeyConfigPrefs.cpp:181
+msgid "Error saving keyboard shortcuts"
+msgstr "ש×××× ×ש××רת ×§×צ××¨× ××קש××"
+
#: prefs/KeyConfigPrefs.cpp:241
#, c-format
msgid "The keyboard shortcut '%s' is already assigned to:\n"
@@ -7878,10 +7657,61 @@ msgid "The keyboard shortcut '%s' is already assigned to:\n"
"'%s'"
msgstr ""
-#: prefs/KeyConfigPrefs.cpp:367
-#: toolbars/EditToolBar.cpp:144
-msgid "Undo"
-msgstr "×××××-××צ××¢"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:84
+msgid "MP3 Export Library"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:105
+msgid "MP3 Library Version:"
+msgstr "MP3 ×רסת ספר××ת:"
+
+#: prefs/FileFormatPrefs.cpp:93
+msgid "MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:98
+msgid "LAME MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
+msgid "&Download"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:109
+msgid "FFmpeg Library Version:"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
+msgid "FFmpeg Library:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:41 prefs/AudioIOPrefs.cpp:42
+msgid "Audio I/O"
+msgstr "×§××/פ×× ×©× ×©××¢"
+
+#: prefs/AudioIOPrefs.cpp:123
+msgid "Portaudio v"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:145
+msgid "Playthrough"
+msgstr "× ×× ×ר×"
#: prefs/AudioIOPrefs.cpp:147
msgid "&Play other tracks while recording new one"
@@ -7895,6 +7725,10 @@ msgstr ""
msgid "&Software Playthrough (Play new track while recording it)"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:170
+msgid "Cut Preview"
+msgstr "××¦× ×××ר×"
+
#: prefs/MidiIOPrefs.cpp:160
msgid "Play before cut region:"
msgstr ""
@@ -7903,6 +7737,10 @@ msgstr ""
msgid "Play after cut region:"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:183
+msgid "Latency"
+msgstr ""
+
#: prefs/MidiIOPrefs.cpp:173
msgid "Audio to buffer:"
msgstr ""
@@ -7915,12 +7753,23 @@ msgstr ""
msgid "Seek Time"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:200
+msgid "Short period:"
+msgstr "פרק ××× ×§×¦×¨:"
+
+#: prefs/AudioIOPrefs.cpp:202
+msgid "Long period:"
+msgstr "פרק ××× ×ר××:"
+
+#: prefs/AudioIOPrefs.cpp:162
+msgid "Effects Preview"
+msgstr "תצ××× ××§×××× ×©× ×פק×××"
+
#: prefs/MidiIOPrefs.cpp:196
msgid "Play when previewing:"
msgstr ""
-#: prefs/MousePrefs.cpp:55
-#: prefs/MousePrefs.cpp:56
+#: prefs/MousePrefs.cpp:55 prefs/MousePrefs.cpp:56
msgid "Mouse"
msgstr "×¢××ר"
@@ -7940,37 +7789,26 @@ msgstr "פק××ת ×פע××"
msgid "Buttons"
msgstr "×פת×ר××"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:117
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:117
#: prefs/MousePrefs.cpp:122
msgid "Left-Click"
msgstr "×§×××§-ש××××"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:100
-#: prefs/MousePrefs.cpp:101
-#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:101 prefs/MousePrefs.cpp:102
msgid "Select"
msgstr "××ר"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:122
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:122
msgid "Set Selection Point"
msgstr "×§××¢ × ×§××ת ×××ר×"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:115
-#: prefs/MousePrefs.cpp:119
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:115 prefs/MousePrefs.cpp:119 prefs/MousePrefs.cpp:123
msgid "Left-Drag"
msgstr "×ר×ר×-ש××××ת"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:123
msgid "Set Selection Range"
msgstr "×§××¢ ת××× ××××ר×"
@@ -7998,12 +7836,8 @@ msgstr "Ctrl-×§×××§ ש××××"
msgid "Set Selection Point and Play"
msgstr "×§××¢ × ×§××ת ××××¨× ×× ××"
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:108
-#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:106
+#: prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:108 prefs/MousePrefs.cpp:109
msgid "Zoom"
msgstr "(×××× (×××"
@@ -8011,9 +7845,7 @@ msgstr "(×××× (×××"
msgid "Zoom in on Point"
msgstr "××× ×¤× ××× ×× ×§×××"
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:125
msgid "Zoom in on a Range"
msgstr "××× ×¤× ××× ×ת×××"
@@ -8021,18 +7853,15 @@ msgstr "××× ×¤× ××× ×ת×××"
msgid "same as right-drag"
msgstr "××× ×ר××¨× ××× ×ת"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:106 prefs/MousePrefs.cpp:124
msgid "Right-Click"
msgstr "×§×××§-××× ×"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:106 prefs/MousePrefs.cpp:124
msgid "Zoom out one step"
msgstr "×¦×¢× ××× ×©× ××× ×××צ×"
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:125
msgid "Right-Drag"
msgstr "×ר×ר×-××× ×ת"
@@ -8069,8 +7898,7 @@ msgstr "Shift-×ר×ר×-ש××××ת"
msgid "Time shift all clips in track"
msgstr ""
-#: prefs/MousePrefs.cpp:113
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:113 prefs/MousePrefs.cpp:120
msgid "Ctrl-Left-Drag"
msgstr "Ctrl-×ר×ר×-ש××××ת"
@@ -8086,9 +7914,7 @@ msgstr "×©× × ××¢×פת ×××ר×"
msgid "Change Sample"
msgstr "×©× × ×××××"
-#: prefs/MousePrefs.cpp:117
-#: prefs/MousePrefs.cpp:118
-#: prefs/MousePrefs.cpp:119
+#: prefs/MousePrefs.cpp:117 prefs/MousePrefs.cpp:118 prefs/MousePrefs.cpp:119
#: prefs/MousePrefs.cpp:120
msgid "Pencil"
msgstr "עפר××"
@@ -8109,28 +7935,22 @@ msgstr "×©× × ×ספר ×××××ת"
msgid "Change ONE Sample only"
msgstr "×©× × ××××× ××ת ××××"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123 prefs/MousePrefs.cpp:124
#: prefs/MousePrefs.cpp:125
msgid "Multi"
msgstr "ר××××"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123
#, fuzzy
msgid "same as select tool"
msgstr "××× ××× ××××ר×"
-#: prefs/MousePrefs.cpp:124
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:124 prefs/MousePrefs.cpp:125
#, fuzzy
msgid "same as zoom tool"
msgstr "××× ××× ××××"
-#: prefs/MousePrefs.cpp:127
-#: prefs/MousePrefs.cpp:128
-#: prefs/MousePrefs.cpp:129
+#: prefs/MousePrefs.cpp:127 prefs/MousePrefs.cpp:128 prefs/MousePrefs.cpp:129
msgid "Any"
msgstr "××××"
@@ -8158,10 +7978,62 @@ msgstr "Ctrl-ס×××-××××"
msgid "Zoom in or out"
msgstr "××× ×¤× ××× ×× ×××צ×"
+#: prefs/AudioIOPrefs.cpp:165
+msgid "Length of preview:"
+msgstr "×××¨× ×ª×¦××× ××§××××:"
+
+#: prefs/AudioIOPrefs.cpp:173
+msgid "Preview before cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:175
+msgid "Preview after cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:197
+msgid "Seek Time when playing"
+msgstr ""
+
#: prefs/PrefsDialog.cpp:89
msgid "Audacity Preferences"
msgstr "Audacity ××¢×פ×ת ש×"
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:84
+msgid "When saving a project that depends on other audio files"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:87
+msgid "Always © all audio into project (safest)"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:88
+msgid "&Do not copy any audio"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:89
+msgid "&Ask user"
+msgstr "&ש×× ×שת×ש"
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr "ש×××¨× ×××××××ת"
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr "×ר××× ×©×××¨× ×××××××ת:"
+
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr "××§×ת"
+
#: prefs/QualityPrefs.cpp:73
msgid "Rectangle"
msgstr "×ר×××¢"
@@ -8186,46 +8058,46 @@ msgstr "×ר×רת ××××× ×©× ×§×¦× ××××× "
msgid "Default Sample Format:"
msgstr "×¢×¨× ×××× ×©× ×¤×ר×× ××××××:"
-#: prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "×××ר ××× ××ת ×©× ×§×¦× ××××××:"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:139
-msgid "High-quality sample rate converter:"
-msgstr "×××ר ×××××ת ××××× ×©× ×§×¦× ××××××:"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+#, fuzzy
+msgid "Sample Rate Converter:"
+msgstr "×××ר ×§×¦× ××××××"
-#: prefs/QualityPrefs.cpp:142
-msgid "Real-time dither:"
-msgstr "×××× ××ת dither:"
+#: prefs/QualityPrefs.cpp:164
+msgid "Dither"
+msgstr ""
-#: prefs/QualityPrefs.cpp:145
-msgid "High-quality dither:"
-msgstr "×××××ת ××××× dither:"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
-msgstr "××ר×"
+#: prefs/AudioIOPrefs.cpp:149
+msgid "Overdub: &Play other tracks while recording new one"
+msgstr ""
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
-msgstr "×××ר ×§×¦× ××××××"
+#: prefs/AudioIOPrefs.cpp:150
+msgid "&Hardware Playthrough: Play new track while recording it"
+msgstr "(× ××× × ×ª××-××× ×¢\"× ××××¨× (×ש××¢ רצ××¢× ×××©× ×××× ××§×××"
-#: prefs/QualityPrefs.cpp:164
-msgid "Dither"
+#: prefs/AudioIOPrefs.cpp:157
+msgid "&Software Playthrough: Play new track while recording or monitoring"
msgstr ""
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
-msgstr "××× ××ת:"
+#: prefs/AudioIOPrefs.cpp:160
+msgid "(uncheck when recording \"stereo mix\")"
+msgstr ""
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
-msgstr "××××ת ×××××:"
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
+msgstr ""
-#: prefs/SmartRecordPrefs.cpp:54
-#: prefs/SmartRecordPrefs.cpp:55
-msgid "Smart Recording"
-msgstr "××§××× ×××"
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
+msgstr ""
#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
msgid "Sound Activated Recording"
@@ -8235,23 +8107,58 @@ msgstr ""
msgid "Sound Activation Level (dB):"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:41
-#: prefs/SpectrumPrefs.cpp:42
+#: prefs/SpectrumPrefs.cpp:41 prefs/SpectrumPrefs.cpp:42
msgid "Spectrograms"
msgstr "ספק×××ר××"
-#: prefs/SpectrumPrefs.cpp:91
-msgid "FFT Size"
-msgstr "FFT ×××× ×"
-
#: prefs/SpectrumPrefs.cpp:94
msgid "8 - most wideband"
msgstr "8 - ר××× ×¡×¨× ×ר×× ×××תר"
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:99
msgid "256 - default"
msgstr "256 - ×¢×¨× ××××"
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:107
msgid "32768 - most narrowband"
msgstr "32768 - ר××× ×¡×¨× ×צר ×××תר"
@@ -8260,21 +8167,26 @@ msgstr "32768 - ר××× ×¡×¨× ×צר ×××תר"
msgid "4096 - most narrowband"
msgstr "4096 - ר××× ×¡×¨× ×צר ×××תר"
-#: prefs/SpectrumPrefs.cpp:116
-msgid "Window type:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:93
+#, fuzzy
+msgid "Window type"
msgstr "ס×× ××××:"
#: prefs/SpectrumPrefs.cpp:125
msgid "FFT Skip Points"
msgstr " FFT × ×§×××ת ×ש×××"
-#: prefs/SpectrumPrefs.cpp:140
-msgid "Display"
-msgstr "×צ×"
-
-#: prefs/SpectrumPrefs.cpp:144
-msgid "&Grayscale"
-msgstr "&סק×ת ×פ×ר"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
+msgstr ""
#: prefs/SpectrumPrefs.cpp:147
#, fuzzy
@@ -8285,16 +8197,16 @@ msgstr "ת××ר×ת ××× ××××ת (Hz):"
msgid "Maximum Frequency (Hz):"
msgstr "ת××ר×ת ××× ××××ת (Hz):"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
-msgstr "Y-צ×ר"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
+msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
-msgstr "××¦× ×ª××××"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
+msgstr ""
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
msgstr ""
#: prefs/SpectrumPrefs.cpp:165
@@ -8305,6 +8217,14 @@ msgstr "×¢×צ×× ××ר××ת (dB):"
msgid "Max. Number of Notes (1..128):"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:161
+msgid "&Find Notes"
+msgstr "××¦× ×ª××××"
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Quantize Notes"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:197
msgid "The maximum frequency must be an integer"
msgstr "×ת×ר ×××ר×× ×××× ××××ת ×ספר ש××"
@@ -8321,21 +8241,58 @@ msgstr "×ת×ר ×××× ×××× ×××× ××××ת ×ספר ש××"
msgid "Minimum frequency must be at least 0 Hz"
msgstr "0Hz ×ת×ר ×××× ××××ת ×פ××ת "
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr ""
#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
+msgid "The maximum number of notes must be in the range 1..128"
msgstr ""
-#: prefs/ThemePrefs.cpp:62
-#: prefs/ThemePrefs.cpp:63
+#: prefs/ThemePrefs.cpp:62 prefs/ThemePrefs.cpp:63
#, fuzzy
msgid "Theme"
msgstr "×¢×צ××"
+#: prefs/ThemePrefs.cpp:126
+msgid "Info"
+msgstr "××× ×¤×ר×צ××"
+
+#: prefs/ThemePrefs.cpp:91
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#. i18n-hint: && in here is an escape character to get a single & on screen,
#. * so keep it as is
#: prefs/ThemePrefs.cpp:93
@@ -8366,80 +8323,96 @@ msgstr "ש××ר ×§×××¥"
msgid "Load Files"
msgstr "××¢× ×§×צ××"
-#: prefs/ThemePrefs.cpp:126
-msgid "Info"
-msgstr "××× ×¤×ר×צ××"
+#: prefs/GUIPrefs.cpp:50
+msgid "Simple"
+msgstr ""
-#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
+#: prefs/GUIPrefs.cpp:75
+msgid "&Update display while playing"
+msgstr "&×¢××× ×ª×¦××× ×××× ×ש××¢×"
+
+#: prefs/GUIPrefs.cpp:83
+msgid "Automatically &fit tracks vertically zoomed"
msgstr ""
-#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
+#: prefs/TracksPrefs.cpp:88
+#, fuzzy
+msgid "Default View Mode:"
+msgstr "×ר×רת ××××× ×©× ×¦×רת ×תצ×××"
+
+#: prefs/GUIPrefs.cpp:89
+msgid "&Select all audio in project, if none selected"
+msgstr "×&×ר ×× ×ש××¢ ×פר×××§×, ×× ××× × ×××ר"
+
+#: prefs/GUIPrefs.cpp:97
+msgid "Enable cut &lines"
+msgstr "&×פשר ××ת×× ××§××××"
+
+#: prefs/GUIPrefs.cpp:79
+msgid "Enable &dragging of left and right selection edges"
+msgstr "×פשר ×&ר××¨× ×©× ×ש××××× ×××× × ××ש×××× ×©× ××§××¢ ×× ××ר"
+
+#: prefs/GUIPrefs.cpp:104
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
msgstr ""
-#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:87
+msgid "Editing a &clip can move other clips"
msgstr ""
-#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:168
+msgid "Solo Button:"
msgstr ""
-#: toolbars/ControlToolBar.cpp:174
-msgid "Pause"
-msgstr "×פסק"
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:177
-msgid "Play"
-msgstr "× ×× "
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
msgstr ""
-#: toolbars/ControlToolBar.cpp:182
-msgid "Stop"
-msgstr "עצ×ר"
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:185
-msgid "Skip to Start"
-msgstr "××× ××ת×××"
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:188
-msgid "Skip to End"
-msgstr "××× ×ס××£"
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:192
-msgid "Record (Shift for Append Record)"
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
msgstr ""
+#: Menus.cpp:774
+msgid "Pause"
+msgstr "×פסק×"
+
+#: Menus.cpp:773
+msgid "Stop"
+msgstr "עצ×ר"
+
#: toolbars/ControlToolBar.cpp:194
msgid "Clean Speech"
msgstr ""
-#: toolbars/ControlToolBar.cpp:530
-#: toolbars/ControlToolBar.cpp:839
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play (Shift for Loop Play)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:192
+msgid "Record (Shift for Append Record)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:530 toolbars/ControlToolBar.cpp:839
msgid "Error while opening sound device. "
msgstr ".ש×××× ×פת××ת ××ª×§× ×©××¢"
@@ -8451,13 +8424,11 @@ msgstr ""
msgid "Recording not permitted"
msgstr "××§××× ×ס×ר×"
-#: toolbars/DeviceToolBar.cpp:113
-#: toolbars/DeviceToolBar.cpp:115
+#: toolbars/DeviceToolBar.cpp:113 toolbars/DeviceToolBar.cpp:115
msgid "Output Device"
msgstr "××ª×§× ×¤××"
-#: toolbars/DeviceToolBar.cpp:134
-#: toolbars/DeviceToolBar.cpp:136
+#: toolbars/DeviceToolBar.cpp:134 toolbars/DeviceToolBar.cpp:136
msgid "Input Device"
msgstr "××ª×§× ×§××"
@@ -8481,29 +8452,21 @@ msgstr "××× ×¤× ×××"
msgid "Zoom Out"
msgstr "××× ×××צ×"
-#: toolbars/EditToolBar.cpp:156
-msgid "Zoom Toggle"
-msgstr "×©× × ××¦× ××××"
-
-#: toolbars/EditToolBar.cpp:160
-msgid "Fit Selection"
-msgstr "×ת×× ××§××¢ × ××ר"
-
#: toolbars/EditToolBar.cpp:160
msgid "Fit selection in window"
msgstr "×ת×× ××§××¢ ××××"
#: toolbars/EditToolBar.cpp:162
-msgid "Fit Project"
-msgstr "×ת×× ×¤×¨×××§×"
-
-#: toolbars/EditToolBar.cpp:162
msgid "Fit project in window"
msgstr "×ת×× ×¤×¨×××§× ×××××"
-#: toolbars/MeterToolBar.cpp:50
-msgid "Meter"
-msgstr "××"
+#: toolbars/EditToolBar.cpp:160
+msgid "Fit Selection"
+msgstr "×ת×× ××§××¢ × ××ר"
+
+#: toolbars/EditToolBar.cpp:162
+msgid "Fit Project"
+msgstr "×ת×× ×¤×¨×××§×"
#: toolbars/MeterToolBar.cpp:80
msgid "Play Meter"
@@ -8551,24 +8514,28 @@ msgstr "××××-×××××"
msgid "Input Source"
msgstr "××§×ר ×× ×ס×"
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:80
msgid "Selection"
msgstr "××§××¢ × ××ר"
-#: toolbars/SelectionBar.cpp:128
-#: toolbars/SelectionBar.cpp:185
+#: toolbars/SelectionBar.cpp:128 toolbars/SelectionBar.cpp:185
msgid "Project Rate (Hz):"
msgstr "×§×¦× ×פר×××§× (Hz):"
-#: toolbars/SelectionBar.cpp:142
-#: toolbars/SelectionBar.cpp:247
+#: toolbars/SelectionBar.cpp:142 toolbars/SelectionBar.cpp:247
msgid "Selection Start:"
msgstr "ת×××ת ××§××¢ ×× ××ר:"
-#: effects/ToneGen.cpp:329
-#: effects/ToneGen.cpp:374
-#: toolbars/SelectionBar.cpp:155
-#: toolbars/SelectionBar.cpp:253
+#: effects/ToneGen.cpp:329 effects/ToneGen.cpp:374
+#: toolbars/SelectionBar.cpp:155 toolbars/SelectionBar.cpp:253
msgid "Length"
msgstr "×××¨× "
@@ -8576,13 +8543,11 @@ msgstr "×××¨× "
msgid "hidden"
msgstr "× ×סתר"
-#: toolbars/SelectionBar.cpp:175
-#: toolbars/SelectionBar.cpp:264
+#: toolbars/SelectionBar.cpp:175 toolbars/SelectionBar.cpp:264
msgid "Audio Position:"
msgstr ":×××§×× ×ש××¢"
-#: toolbars/SelectionBar.cpp:225
-#: toolbars/SelectionBar.cpp:230
+#: toolbars/SelectionBar.cpp:225 toolbars/SelectionBar.cpp:230
msgid "Snap To"
msgstr "××צ×× ×"
@@ -8604,8 +8569,7 @@ msgstr "×ס××£ ××§××¢ ×× ××ר"
msgid "Audacity %s ToolBar"
msgstr "Audacity ×©× %s סר×× ×××× "
-#: toolbars/ToolDock.cpp:74
-#: toolbars/ToolDock.cpp:75
+#: toolbars/ToolDock.cpp:74 toolbars/ToolDock.cpp:75
msgid "ToolDock"
msgstr ""
@@ -8637,34 +8601,6 @@ msgstr "Left=Zoom In, Right=Zoom Out, Middle=Normal"
msgid "Click and drag to move a track in time"
msgstr "××ר ××ר×ר ×××× ××××× ×ת ×רצ××¢× ××××"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr "××××"
-
-#: toolbars/ToolsToolBar.cpp:147
-#: toolbars/ToolsToolBar.cpp:182
-msgid "Selection Tool"
-msgstr "××× ××××ר×"
-
-#: toolbars/ToolsToolBar.cpp:148
-msgid "Envelope Tool"
-msgstr "××× ×××¢×פת"
-
-#: toolbars/ToolsToolBar.cpp:149
-#: toolbars/ToolsToolBar.cpp:183
-msgid "Time Shift Tool"
-msgstr "××× ×××ת ××××"
-
-#: toolbars/ToolsToolBar.cpp:150
-#: toolbars/ToolsToolBar.cpp:185
-msgid "Zoom Tool"
-msgstr "××× ××××"
-
-#: toolbars/ToolsToolBar.cpp:151
-#: toolbars/ToolsToolBar.cpp:184
-msgid "Draw Tool"
-msgstr "××× ×צ××ר"
-
#: toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
msgstr ":××¦× ×××× ×ר××××"
@@ -8673,24 +8609,11 @@ msgstr ":××¦× ×××× ×ר××××"
msgid "Slide Tool"
msgstr "××× ××××ש×"
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr "×××× ×ר××××"
-
-#: toolbars/TranscriptionToolBar.cpp:84
-msgid "Transcription"
-msgstr "תעת××§"
-
#: toolbars/TranscriptionToolBar.cpp:165
msgid "Play at selected speed"
msgstr "× ×× ××§×¦× × ××ר"
-#: toolbars/TranscriptionToolBar.cpp:166
-msgid "Play-at-speed"
-msgstr "× ××-×קצ×"
-
-#: toolbars/TranscriptionToolBar.cpp:172
-#: toolbars/TranscriptionToolBar.cpp:177
+#: toolbars/TranscriptionToolBar.cpp:172 toolbars/TranscriptionToolBar.cpp:177
msgid "Playback Speed"
msgstr "×§×¦× × ××××"
@@ -8698,74 +8621,38 @@ msgstr "×§×¦× × ××××"
msgid "Adjust left selection to next onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:191
-msgid "Left-to-On"
-msgstr "ש×××-××פע××"
-
#: toolbars/TranscriptionToolBar.cpp:193
msgid "Adjust right selection to previous offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:194
-msgid "Right-to-Off"
-msgstr "××××-××××××"
-
#: toolbars/TranscriptionToolBar.cpp:196
msgid "Adjust left selection to next offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:197
-msgid "Left-to-Off"
-msgstr "ש××× ××××××"
-
#: toolbars/TranscriptionToolBar.cpp:199
msgid "Adjust right selection to previous onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:200
-msgid "Right-to-On"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:202
msgid "Select region of sound around cursor"
msgstr "××ר ×××ר ר×עש ס××× ×ס××"
-#: toolbars/TranscriptionToolBar.cpp:203
-msgid "Select-Sound"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:205
msgid "Select region of silence around cursor"
msgstr "××ר ×××ר ×©×§× ×¡××× ×ס××"
-#: toolbars/TranscriptionToolBar.cpp:206
-msgid "Select-Silence"
-msgstr "××ר-שק×"
-
#: toolbars/TranscriptionToolBar.cpp:208
msgid "Automatically make labels from words"
msgstr "××צר ת××××ת ××××¤× ××××××× ××××××"
-#: toolbars/TranscriptionToolBar.cpp:209
-msgid "Make Labels"
-msgstr "××תר ת××××ת"
-
#: toolbars/TranscriptionToolBar.cpp:211
msgid "Add label at selection"
msgstr "××ספת ת×××ת ×× ×§××ת ××××ר×"
-#: toolbars/TranscriptionToolBar.cpp:212
-msgid "Add Label"
-msgstr "××סף ת×××ת"
-
#: toolbars/TranscriptionToolBar.cpp:214
msgid "Calibrate voicekey"
msgstr "×××× ××¤×ª× ×§××"
-#: toolbars/TranscriptionToolBar.cpp:215
-msgid "Calibrate"
-msgstr "××××"
-
#: toolbars/TranscriptionToolBar.cpp:219
msgid "Adjust Sensitivity"
msgstr "×ת×× ×¨××ש×ת"
@@ -8798,6 +8685,46 @@ msgstr "(ש×× ×× ×××× (סף ××××"
msgid "Key type"
msgstr "ס×× ×קש"
+#: toolbars/TranscriptionToolBar.cpp:166
+msgid "Play-at-speed"
+msgstr "× ××-×קצ×"
+
+#: toolbars/TranscriptionToolBar.cpp:191
+msgid "Left-to-On"
+msgstr "ש×××-××פע××"
+
+#: toolbars/TranscriptionToolBar.cpp:194
+msgid "Right-to-Off"
+msgstr "××××-××××××"
+
+#: toolbars/TranscriptionToolBar.cpp:197
+msgid "Left-to-Off"
+msgstr "ש××× ××××××"
+
+#: toolbars/TranscriptionToolBar.cpp:200
+msgid "Right-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:203
+msgid "Select-Sound"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:206
+msgid "Select-Silence"
+msgstr "××ר-שק×"
+
+#: toolbars/TranscriptionToolBar.cpp:209
+msgid "Make Labels"
+msgstr "××תר ת××××ת"
+
+#: toolbars/TranscriptionToolBar.cpp:212
+msgid "Add Label"
+msgstr "××סף ת×××ת"
+
+#: toolbars/TranscriptionToolBar.cpp:215
+msgid "Calibrate"
+msgstr "××××"
+
#: widgets/AButton.cpp:302
msgid " (disabled)"
msgstr "×ס××"
@@ -8812,15 +8739,13 @@ msgstr "×פת×ר"
#. i18n-hint: One-letter abbreviation for Left, in VU Meter
#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
-#: widgets/ASlider.cpp:604
-#: widgets/Meter.cpp:211
+#: widgets/ASlider.cpp:604 widgets/Meter.cpp:211
msgid "L"
msgstr "L"
#. i18n-hint: One-letter abbreviation for Right, in VU Meter
#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
-#: widgets/ASlider.cpp:607
-#: widgets/Meter.cpp:213
+#: widgets/ASlider.cpp:607 widgets/Meter.cpp:213
msgid "R"
msgstr "R"
@@ -8836,8 +8761,7 @@ msgstr "ש×××"
msgid "Right"
msgstr "×××× ×"
-#: widgets/ErrorDialog.cpp:73
-#: widgets/ErrorDialog.cpp:97
+#: widgets/ErrorDialog.cpp:73 widgets/ErrorDialog.cpp:97
#, fuzzy
msgid "Help"
msgstr "×¢×ר×"
@@ -8871,8 +8795,7 @@ msgstr ""
msgid "%d rows, %d columns"
msgstr "××§×ת %d ,×©× ××ת %d"
-#: widgets/Grid.cpp:649
-#: widgets/Grid.cpp:776
+#: widgets/Grid.cpp:649 widgets/Grid.cpp:776
#, c-format
msgid "Row %d"
msgstr " %d ש×ר×"
@@ -8948,8 +8871,7 @@ msgstr ""
msgid "Cancel"
msgstr ""
-#: widgets/Ruler.cpp:1462
-#: widgets/Ruler.cpp:1463
+#: widgets/Ruler.cpp:1462 widgets/Ruler.cpp:1463
msgid "Vertical Ruler"
msgstr "סר×× ×× ××"
@@ -9193,3 +9115,15 @@ msgstr ""
msgid "Could not load file: \"%s\""
msgstr "\"%s\" :×× ×××× ×פת×× ×§×××¥"
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
+
diff --git a/locale/hu.po b/locale/hu.po
index 687458b..71b6059 100644
--- a/locale/hu.po
+++ b/locale/hu.po
@@ -4,10 +4,10 @@
# Audacity Team <audacity-translation at lists.sourceforge.net>, 2008.
#
msgid ""
-msgstr "Project-Id-Version: Audacity 1.3.6\n"
+msgstr "Project-Id-Version: Audacity 1.3.7\n"
"Report-Msgid-Bugs-To: audacity-translation at lists.sourceforge.net\n"
"POT-Creation-Date: 2008-11-03 21:55+0000\n"
-"PO-Revision-Date: 2008-12-02 20:30+0100\n"
+"PO-Revision-Date: 2009-02-28 11:18+0100\n"
"Last-Translator: Pelladi Gabor <audacity-translation at lists.sourceforge.net>\n"
"Language-Team: HU <hu at li.org>\n"
"MIME-Version: 1.0\n"
@@ -29,12 +29,12 @@ msgid "Audacity is a free program written by a team of volunteer <a href=\"http:
msgstr "Az Audacity egy ingyenes program, képzett <a href=\"http://audacity.sourceforge.net/community/developers\">fejlesztÅk</a> munkája, akik szerte a világon dolgoznak a fejlesztésén. Eredményes együttműködésük a <a href=\"http://sourceforge.net\">SourceForge.net</a>-nek, egy ingyenes és nyilt forráskódú programok készÃtését támogató online-szolgáltatásnak köszönhetÅ. Az Audacity futtatható Windows 98-on és az újabb változatokon, Mac OS X-en, Linuxon, és más, Unix-on alapuló operációs rendszereken. Az Audacity régebbi verziói Mac OS 9-en is futtathatóak."
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
-msgstr "Ez a programnak egy béta verziója. Tartalmazhat hibákat és elkészületlen funkciókat. SzámÃtunk a visszajelzésére, ezért kérjük, jelezze az észlelt hibákat és a kÃvánt változtatásokat a <b>feedback at audacityteam.org</b> cÃmen. Az Audacity használstához a <a href=\"http://audacityteam.org/forum/\">Fórumban</a> találhat segÃtséget."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgstr ""
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
-msgstr "Ez egy stabil, befejezett verziója az Audacity-nek. Amennyiben mégis hibát találna vagy javaslata van, kérünk Ãrjon a <b>feedback at audacityteam.org</b> cÃmre. Az Audacity használstához a <a href=\"http://audacityteam.org/forum/\">Fórumban</a> találhat segÃtséget."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgstr ""
#. i18n-hint: The translation of "translator_credits" will appear
#. in the credits in the About Audacity window. Use this to add
@@ -85,7 +85,7 @@ msgid "Special thanks:"
msgstr "Külön köszönet:"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
msgstr ""
#: AboutDialog.cpp:258
@@ -226,10 +226,21 @@ msgstr "Bemeneti szint"
msgid "Output Meter"
msgstr "Kimeneti szint"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
+#: Menus.cpp:196
+msgid "&New"
+msgstr "&Ãj"
+
+#: Menus.cpp:198
+msgid "&Open..."
+msgstr "&Megnyitás..."
+
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
+
#: AudacityApp.cpp:809
-msgid "&Preferences...\tCtrl+,"
-msgstr "&BeállÃtások...\tCtrl+,"
+msgid "&Preferences..."
+msgstr "&BeállÃtások..."
#: AudacityApp.cpp:901 AudacityApp.cpp:978
#, c-format
@@ -351,18 +362,16 @@ msgstr "Hiba: "
msgid "Error Initializing Audio"
msgstr "Hiba az Audió inicializásakor"
+#: AudioIO.cpp:1225
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
+"Audacity has brought it back to start at zero.\n"
+"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
+msgstr ""
+
#: AudioIO.cpp:1375
msgid "Latency problem"
msgstr "Késleltetési probléma"
-#: AudioIO.cpp:1375
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
-"Audacity has brought it back to start at zero.\n"
-"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
-msgstr "A késleltetési beállÃtás miatt a rögzÃtett hang eleje a nulla pont elé került.\n"
-"Az Audacity eltolta, hogy nullánál kezdÅdjön.\n"
-"Szüksége lehet az IdÅbeni eltolás eszközre (<---> vagy F5), hogy a sávot a megfelelÅ helyre igazÃtsa."
-
#: AutoRecovery.cpp:54
msgid "Automatic Crash Recovery"
msgstr "Automatikus helyreállÃtás"
@@ -585,8 +594,8 @@ msgstr "Lán&c (Dupla kattintás vagy szóköz a szerkesztéshez)"
#. i18n-hint: This is the number of the command in the list
#: BatchProcessDialog.cpp:453
-msgid "No"
-msgstr "Nem"
+msgid "Num"
+msgstr ""
#: BatchProcessDialog.cpp:459
msgid "&Insert"
@@ -718,7 +727,8 @@ msgstr "FüggÅség ellenÅrzése"
#: DirManager.cpp:137
msgid "Warning: there is very little free disk space left on this volume.\n"
"Please select another temporary directory in your preferences."
-msgstr "FIGYELEM: Ezen a meghajtón nagyon kevés a szabad hely. Kérlek, válassz ki egy másik ideiglenes könyvtárat a BeállÃtások pont alatt."
+msgstr "FIGYELEM: Ezen a meghajtón nagyon kevés a szabad hely.\n"
+"Kérem, válasszon ki egy másik ideiglenes könyvtárat a BeállÃtások pont alatt."
#: DirManager.cpp:223 DirManager.cpp:254 DirManager.cpp:337
msgid "Progress"
@@ -740,7 +750,8 @@ msgstr "GyorsÃtótár ürÃtése"
#, c-format
msgid "Audacity found an orphaned blockfile %s! \n"
"Please consider saving and reloading the project to perform a complete project check.\n"
-msgstr ""
+msgstr "Az Audacity egy árva blokkfájlt talált: %s! \n"
+"Ajánlott a projektet lementenie, majd visszatötenie, hogy egy teljes ellenÅrzésre kerüljön sor.\n"
#. i18n-hint: This is the pattern for filenames that are created
#. when a file needs to be backed up to a different name. For
@@ -772,55 +783,58 @@ msgstr "'%s' átnevezése '%s'-re sikertelen"
#: DirManager.cpp:1183
#, c-format
msgid "Changed block %s to new alias name\n"
-msgstr ""
+msgstr "Blokk %s megváltoztatva új alias névre\n"
#: DirManager.cpp:1224 DirManager.cpp:1515
msgid "Inspecting project file data..."
-msgstr ""
+msgstr "A projekt fájl adatok vizsgálata..."
#: DirManager.cpp:1240
#, c-format
msgid "Orphaned blockfile: (%s)"
-msgstr ""
+msgstr "Ãrva blokkfájl: (%s)"
#: DirManager.cpp:1265
#, c-format
msgid "Missing alias file: (%s)"
-msgstr ""
+msgstr "Hiányzó alias fájl: (%s)"
#: DirManager.cpp:1285
#, c-format
msgid "Missing summary file: (%s.auf)"
-msgstr ""
+msgstr "Hiányzó összegzŠfájl: (%s.auf)"
#: DirManager.cpp:1305
#, c-format
msgid "Missing data file: (%s.au)"
-msgstr ""
+msgstr "Hiányzó adatfájl: (%s.au)"
#: DirManager.cpp:1319
msgid "Project check found inconsistencies inspecting the loaded project data;\n"
"click 'Details' for a complete list of errors, or 'OK' to proceed to more options."
-msgstr ""
+msgstr "A projekt ellenÅrzés inkonzisztenciát talált a betöltött projekt adataiban;\n"
+"a 'Részletek' gombbal nézheti meg az összes hibát, vagy az 'OK' gombbal folytathatja."
#: DirManager.cpp:1331
#, c-format
msgid "Project check found %d orphaned blockfile[s]. These files are\n"
"unused and probably left over from a crash or some other bug.\n"
"They should be deleted to avoid disk contention."
-msgstr ""
+msgstr "A projekt ellenÅrzés %d árva blokkfájlt talált. Ezek a fájlok\n"
+"nincsenek használva és valószÃnűleg egy programösszeomlás vagy hiba után\n"
+"maradtak hátra. Ajánlott törölni a lemezhasználat csökkentésének érdekében."
#: DirManager.cpp:1336
msgid "Delete orphaned files [safe and recommended]"
-msgstr ""
+msgstr "Ãrva fájlok törlése [biztonságos és ajánlott]"
#: DirManager.cpp:1337
msgid "Continue without deleting; silently work around the extra files"
-msgstr ""
+msgstr "Folytatás törlés nélkül; az extra fájlok figyelmen kÃvül hagyása"
#: DirManager.cpp:1338
msgid "Close project immediately with no changes"
-msgstr ""
+msgstr "A projekt azonnali bezárása változtatás nélkül"
#: DirManager.cpp:1340 DirManager.cpp:1375 DirManager.cpp:1421
#: DirManager.cpp:1463 export/Export.cpp:576 export/Export.cpp:597
@@ -836,34 +850,41 @@ msgid "Project check detected %d input file[s] being used in place\n"
"permanently fill in silence for the missing files, temporarily\n"
"fill in silence for this session only, or close the project now\n"
"and try to restore the missing files by hand."
-msgstr ""
+msgstr "A projekt ellenÅrzés észlelte, hogy %d helyben használt\n"
+"('alias') bemeneti fájl hiányzik. Az Audacity számára nem lehetséges,\n"
+"hogy ezeket automatikusan helyreállÃtsa; a hiányzó fájlokat\n"
+"helyettesÃtheti csenddel tartósan, vagy ideiglenesen, csak a\n"
+"jelenlegi munkamenetben, vagy bezárhatja a projektet azonnal\n"
+"és megpróbálhatja helyreállÃtani a hiányzó fájlokat kézzel."
#: DirManager.cpp:1371
msgid "Replace missing data with silence [permanent upon save]"
-msgstr ""
+msgstr "A hiányzó adatok helyettesÃtése csenddel [mentés után állandósul]"
#: DirManager.cpp:1372 DirManager.cpp:1460
msgid "Temporarily replace missing data with silence [this session only]"
-msgstr ""
+msgstr "A hiányzó adatok ideiglenes helyettesÃtése csenddel [csak ebben a munkamenetben]"
#: DirManager.cpp:1373 DirManager.cpp:1419 DirManager.cpp:1461
msgid "Close project immediately with no further changes"
-msgstr ""
+msgstr "A projekt azonnali bezárása változtatások nélkül"
#: DirManager.cpp:1412
#, c-format
msgid "Project check detected %d missing summary file[s] (.auf).\n"
"Audacity can fully regenerate these summary files from the\n"
"original audio data in the project."
-msgstr ""
+msgstr "A projekt ellenÅrzés %d hiányzó összegzÅ fájlt (.auf) talált.\n"
+"Az Audacity teljesen helyre tudja állÃtani ezeket a fájlokat\n"
+"a projekt eredeti hanganyaga alapján."
#: DirManager.cpp:1417
msgid "Regenerate summary files [safe and recommended]"
-msgstr ""
+msgstr "ÃsszegzÅ fájlok helyreállÃtása [biztonságos és ajánlott]"
#: DirManager.cpp:1418
msgid "Fill in silence for missing display data [this session only]"
-msgstr ""
+msgstr "A hiányzó adatok helyettesÃtése csenddel [csak ebben a munkamenetben]"
#: DirManager.cpp:1454
#, c-format
@@ -874,15 +895,21 @@ msgid "Project check detected %d missing audio data blockfile[s] (.au), \n"
"for the missing data, temporarily fill in silence for this\n"
"session only, or close the project now and try to restore the\n"
"missing data by hand."
-msgstr ""
+msgstr "A projekt ellenÅrzés %d hiányzó hangadat blokkfájlt (.au) talált,\n"
+"valószÃnűleg programhiba, összeomlás vagy véletlen törlés miatt.\n"
+"Az Audacity számára nem lehetséges, hogy az elveszett adatokat\n"
+"automatikusan helyreállÃtsa; a hiányzó fájlokat helyettesÃtheti\n"
+"csenddel tartósan, vagy ideiglenesen, csak a jelenlegi\n"
+"munkamenetben, vagy bezárhatja a projektet azonnal és\n"
+"megpróbálhatja helyreállÃtani a hiányzó fájlokat kézzel."
#: DirManager.cpp:1459
msgid "Replace missing data with silence [permanent immediately]"
-msgstr ""
+msgstr "A hiányzó adatok helyettesÃtése csenddel [azonnal állandósul]"
#: DirManager.cpp:1487
msgid "Cleaning up unused directories in project data..."
-msgstr ""
+msgstr "A nem használt könyvtárak takarÃtása a projektben..."
#: DirManager.cpp:1558
msgid "Caching audio"
@@ -906,18 +933,18 @@ msgstr "Négyszögletű"
#: FFmpeg.cpp:36
msgid "FFmpeg support not compiled in"
-msgstr ""
+msgstr "FFmpeg támogatás nincs "
-#: FFmpeg.cpp:101
+#: FFmpeg.cpp:103
msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
#: FFmpeg.cpp:104
msgid "FFmpeg startup failed"
-msgstr ""
+msgstr "FFmpeg indÃtása sikertelen"
#: FFmpeg.cpp:115
msgid "FFmpeg library not found"
@@ -952,7 +979,7 @@ msgstr "Az FFmpeg ingyenes letöltéséhez kattintson ide -->"
#: FFmpeg.cpp:215 export/ExportMP3.cpp:579
msgid "Download"
-msgstr ""
+msgstr "Letöltés"
#. i18n-hint: It's asking for the location of a file, for
#. example, "Where is lame_enc.dll?" - you could translate
@@ -964,22 +991,23 @@ msgstr "Hol található meg ez: %s?"
#: FFmpeg.cpp:407
msgid "Failed to find compatible FFmpeg libraries"
-msgstr ""
+msgstr "Nem található FFmpeg komptibilis könyvtár"
#: FFmpeg.h:95
msgid "FFmpeg not found"
msgstr "FFmpeg nem található"
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
#: FFmpeg.h:109
msgid "Do not show this warning again"
-msgstr ""
+msgstr "Ne mutassa ezt a figyelmeztetést ismét"
#: FFmpeg.h:251
msgid "Only avformat.dll|*avformat*.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
@@ -987,11 +1015,11 @@ msgstr "Csak avformat.dll|*avformat*.dll|Dinamikusan linkelt könyvtárak (*.dll
#: FFmpeg.h:268
msgid "Dynamic Libraries (*.dylib)|*.dylib|All Files (*)|*"
-msgstr ""
+msgstr "Dinamikus könyvtárak (*.dylib)|*.dylib|Minden fájl (*)|*"
#: FFmpeg.h:295
msgid "Only libavformat.so|libavformat.so*|Dynamically Linked Libraries (*.so*)|*.so*|All Files (*)|*"
-msgstr ""
+msgstr "Csak libavformat.so|libavformat.so*|Dinamikusan linkelt könyvtárak (*.so*)|*.so*|Minden fájl (*.*)|*"
#: FreqWindow.cpp:103
msgid "Frequency Analysis"
@@ -1058,10 +1086,23 @@ msgstr "&Exportálás..."
msgid "Export"
msgstr "Exportálás"
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
#: FreqWindow.cpp:216 FreqWindow.cpp:217 widgets/ErrorDialog.cpp:161
msgid "Close"
msgstr "Bezárás"
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr ""
+
#: FreqWindow.cpp:280 FreqWindow.cpp:410 effects/AutoDuck.cpp:489
#: effects/AutoDuck.cpp:523 effects/AutoDuck.cpp:792
#: effects/Compressor.cpp:352 effects/Compressor.cpp:360
@@ -1079,6 +1120,15 @@ msgstr "dB"
msgid "Hz"
msgstr "Hz"
+#: Menus.cpp:3963
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "A spektrumtérkép készÃtéséhez minden sávnak azonos mintavételezési frekvenciával kell rendelkeznie."
+
+#: Menus.cpp:3989
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "Túl sok audió adat lett kijelölve. Csak az elsŠ%.1f másodperc lett analizálva."
+
#: FreqWindow.cpp:394
msgid "Not enough data selected."
msgstr "Nincsen elég adat kijelölve."
@@ -1118,6 +1168,21 @@ msgstr "Frekvencia (Hz)\tSzint (dB)"
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "Lag (másodperc)\tFrekvencia (Hz)\tSzint"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr ""
+
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr ""
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr ""
@@ -1195,7 +1260,7 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr ""
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
msgstr ""
#: HelpText.cpp:244
@@ -1219,7 +1284,7 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr ""
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
msgstr ""
#: HelpText.cpp:383
@@ -1280,6 +1345,14 @@ msgstr "MB"
msgid "GB"
msgstr "GB"
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
#: LabelDialog.cpp:54
msgid "Track"
msgstr "Sáv"
@@ -1390,21 +1463,13 @@ msgstr "Audacity Projekt megnyitása"
msgid "&File"
msgstr "&Fájl"
-#: Menus.cpp:196
-msgid "&New\tCtrl+N"
-msgstr "&Ãj\tCtrl+N"
-
-#: Menus.cpp:198
-msgid "&Open...\tCtrl+O"
-msgstr "&Megnyitás...\tCtrl+O"
-
#: Menus.cpp:203
-msgid "&Close\tCtrl+W"
-msgstr "&Bezárás\tCtrl+W"
+msgid "&Close"
+msgstr "&Bezárás"
#: Menus.cpp:206
-msgid "&Save Project\tCtrl+S"
-msgstr "&Projekt mentése\tCtrl+S"
+msgid "&Save Project"
+msgstr "&Projekt mentése"
#: Menus.cpp:210 Project.cpp:2896
msgid "Save Project &As..."
@@ -1427,8 +1492,8 @@ msgid "&Import"
msgstr "&Importálás"
#: Menus.cpp:231
-msgid "&Audio...\tCtrl+Shift+I"
-msgstr "&Audió...\tCtrl+Shift+I"
+msgid "&Audio..."
+msgstr "&Audió..."
#: Menus.cpp:232
msgid "&Labels..."
@@ -1458,9 +1523,9 @@ msgstr "&Köteg-Exportálás..."
msgid "Export MIDI..."
msgstr "MIDI exportálása..."
-#: Menus.cpp:290
-msgid "CleanSpeech C&hain..."
-msgstr "&CleanSpeech lánc..."
+#: Menus.cpp:303
+msgid "Appl&y Chain..."
+msgstr "Lánc &alkalmazása..."
#: Menus.cpp:291 Menus.cpp:305
msgid "Edit C&hains..."
@@ -1474,10 +1539,6 @@ msgstr "CleanSpeech beállÃtások e&xportálása..."
msgid "I&mport CleanSpeech Presets..."
msgstr "CleanSpeech beállÃtások i&mportálása..."
-#: Menus.cpp:303
-msgid "Appl&y Chain..."
-msgstr "Lánc &alkalmazása..."
-
#: Menus.cpp:310
msgid "&Upload File..."
msgstr "Fájl f&eltöltése..."
@@ -1491,15 +1552,15 @@ msgid "&Print..."
msgstr "&Nyomtatás..."
#: Menus.cpp:330
-msgid "E&xit\tCtrl+Q"
-msgstr "Kilé&pés\tCtrl+Q"
+msgid "E&xit"
+msgstr "Kilé&pés"
#: Menus.cpp:338 toolbars/EditToolBar.cpp:76
msgid "&Edit"
msgstr "S&zerkesztés"
#: Menus.cpp:342
-msgid "&Undo\tCtrl+Z"
+msgid "&Undo"
msgstr "&Visszavonás"
#: Menus.cpp:350 prefs/KeyConfigPrefs.cpp:371 toolbars/EditToolBar.cpp:146
@@ -1507,56 +1568,56 @@ msgid "&Redo"
msgstr "&Ãjra"
#: Menus.cpp:363
-msgid "Cu&t\tCtrl+X"
-msgstr "&Kivágás\tCtrl+X"
+msgid "Cu&t"
+msgstr "&Kivágás"
#: Menus.cpp:367
-msgid "Spl&it Cut\tCtrl+Alt+X"
-msgstr "&Szétvágó kivágás\tCtrl+Alt+X"
+msgid "Spl&it Cut"
+msgstr "&Szétvágó kivágás"
#: Menus.cpp:368
-msgid "&Copy\tCtrl+C"
-msgstr "&Másolás\tCtrl+C"
+msgid "&Copy"
+msgstr "&Másolás"
#: Menus.cpp:372
-msgid "&Paste\tCtrl+V"
-msgstr "&Beillesztés\tCtrl+V"
+msgid "&Paste"
+msgstr "&Beillesztés"
#: Menus.cpp:376
-msgid "Tri&m\tCtrl+T"
-msgstr "&NyÃrás\tCtrl+T"
+msgid "Tri&m"
+msgstr "&NyÃrás"
#: Menus.cpp:378
-msgid "&Delete\tCtrl+K"
-msgstr "&Törlés\tCtrl+K"
+msgid "&Delete"
+msgstr "&Törlés"
#: Menus.cpp:379
-msgid "Split D&elete\tCtrl+Alt+K"
-msgstr "Sz&étvágó törlés\tCtrl+Alt+K"
+msgid "Split D&elete"
+msgstr "Sz&étvágó törlés"
#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
-msgstr "Hang elném&Ãtása\tCtrl+L"
+msgid "Silence Audi&o"
+msgstr "Hang elném&Ãtása"
#: Menus.cpp:382
-msgid "Sp&lit\tCtrl+I"
-msgstr "Szétv&ágás\tCtrl+I"
+msgid "Sp&lit"
+msgstr "Szétv&ágás"
#: Menus.cpp:387
-msgid "Split Ne&w\tCtrl+Alt+I"
-msgstr "Szétvágva ú&j\tCtrl+Alt+I"
+msgid "Split Ne&w"
+msgstr "Szétvágva ú&j"
#: Menus.cpp:392
-msgid "&Join\tCtrl+J"
-msgstr "&Ãsszevonás\tCtrl+J"
+msgid "&Join"
+msgstr "&Ãsszevonás"
#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
-msgstr "Elválasztás a &csendeknél\tCtrl+Alt+J"
+msgid "Detac&h at Silences"
+msgstr "Elválasztás a &csendeknél"
#: Menus.cpp:394
-msgid "Duplic&ate\tCtrl+D"
-msgstr "Kett&Åzés\tCtrl+D"
+msgid "Duplic&ate"
+msgstr "Kett&Åzés"
#: Menus.cpp:400 Menus.cpp:639
msgid "Stereo Trac&k to Mono"
@@ -1568,80 +1629,65 @@ msgstr "CÃmkézett &régiók"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:409
-msgid "&Cut\tAlt+X"
-msgstr "&Kivágás\tAlt+X"
+msgid "&Cut"
+msgstr "&Kivágás"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:414
-msgid "&Split Cut\tShift+Alt+X"
-msgstr "&Szétvágó kivágás\tShift+Alt+X"
+msgid "&Split Cut"
+msgstr "&Szétvágó kivágás"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:419
-msgid "Co&py\tShift+Alt+C"
-msgstr "&Másolás\tShift+Alt+C"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:425
-msgid "&Delete\tAlt+K"
-msgstr "&Törlés\tAlt+K"
+msgid "Co&py"
+msgstr "&Másolás"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:430
-msgid "Sp&lit Delete\tShift+Alt+K"
-msgstr "Sz&étvágó törlés\tShift+Alt+K"
+msgid "Sp&lit Delete"
+msgstr "Sz&étvágó törlés"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:435
-msgid "Sile&nce\tAlt+L"
-msgstr "&Csend\tAlt+L"
+msgid "Sile&nce"
+msgstr "&Csend"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:441
-msgid "Spli&t\tAlt+I"
-msgstr "Szétv&ágás\tAlt+I"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:446
-msgid "&Join\tAlt+J"
-msgstr "&Ãsszevonás\tAlt+J"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
-msgstr "Elválasztás a &csendeknél\tShift+Alt+J"
+msgid "Spli&t"
+msgstr "Szétv&ágás"
#: Menus.cpp:456
msgid "&Select"
msgstr "&Kijelölés"
#: Menus.cpp:457
-msgid "&All\tCtrl+A"
-msgstr "&Ãsszes\tCtrl+A"
+msgid "&All"
+msgstr "&Ãsszes"
#: Menus.cpp:458
-msgid "&None\tCtrl+Shift+A"
-msgstr "&Semmi\tCtrl+Shift+A"
+msgid "&None"
+msgstr "&Semmi"
#: Menus.cpp:462
-msgid "&Left at Playback Position\t["
+msgid "&Left at Playback Position"
msgstr "K&ezdet a lejátszás pozÃciójában"
#: Menus.cpp:463
-msgid "&Right at Playback Position\t]"
+msgid "&Right at Playback Position"
msgstr "&Vég a lejátszás pozÃciójában"
#: Menus.cpp:467
-msgid "Track &Start to Cursor\tShift+J"
-msgstr "A sáv &kezdetétÅl a kurzorig\tShift+J"
+msgid "Track &Start to Cursor"
+msgstr "A sáv &kezdetétÅl a kurzorig"
#: Menus.cpp:468
-msgid "Cursor to Track &End\tShift+K"
-msgstr "A kurzortól a sáv végéi&g\tShift+K"
+msgid "Cursor to Track &End"
+msgstr "A kurzortól a sáv végéi&g"
#: Menus.cpp:474
-msgid "Find &Zero Crossings\tZ"
-msgstr "Nullpontok ke&resése\tZ"
+msgid "Find &Zero Crossings"
+msgstr "Nullpontok ke&resése"
#: Menus.cpp:476
msgid "Mo&ve Cursor"
@@ -1656,12 +1702,12 @@ msgid "to Selection En&d"
msgstr "a kijelölés vé&géhez"
#: Menus.cpp:483
-msgid "to Track &Start\tJ"
-msgstr "a sáv &kezdetéhez\tJ"
+msgid "to Track &Start"
+msgstr "a sáv &kezdetéhez"
#: Menus.cpp:484
-msgid "to Track &End\tK"
-msgstr "a sáv &végéhez\tK"
+msgid "to Track &End"
+msgstr "a sáv &végéhez"
#: Menus.cpp:491
msgid "Re&gion Save"
@@ -1683,66 +1729,45 @@ msgstr "&Zárolás"
msgid "&Unlock"
msgstr "Zárolás &feloldása"
-#: Menus.cpp:511
-msgid "Turn Snap-To On"
-msgstr "Hozzáillesztés be"
-
-#: Menus.cpp:512
-msgid "Turn Snap-To Off"
-msgstr "Hozzáillesztés ki"
-
-#: Menus.cpp:513
-msgid "Turn Grid Snap On"
-msgstr "Rácshoz illesztés be"
-
-#: Menus.cpp:514
-msgid "Turn Grid Snap Off"
-msgstr "Rácshoz illesztés ki"
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr "&BeállÃtások...\tCtrl+,"
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
-msgstr "&BeállÃtások...\tCtrl+P"
+msgid "Pre&ferences..."
+msgstr "&BeállÃtások..."
#: Menus.cpp:533
msgid "&View"
msgstr "&Nézet"
#: Menus.cpp:535
-msgid "Zoom &In\tCtrl+1"
-msgstr "&NagyÃtás\tCtrl+1"
+msgid "Zoom &In"
+msgstr "&NagyÃtás"
#: Menus.cpp:538
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "&Eredeti érték\tCtrl+2"
+msgid "Zoom &Normal"
+msgstr "&Eredeti érték"
#: Menus.cpp:539
-msgid "Zoom &Out\tCtrl+3"
-msgstr "&KicsinyÃtés\tCtrl+3"
+msgid "Zoom &Out"
+msgstr "&KicsinyÃtés"
#: Menus.cpp:542
-msgid "&Fit in Window\tCtrl+F"
+msgid "&Fit in Window"
msgstr "&Méretezés az ablakhoz igazÃtva"
#: Menus.cpp:543
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "&Magassághoz igazÃtás\tCtrl+Shift+F"
+msgid "Fit &Vertically"
+msgstr "&Magassághoz igazÃtás"
#: Menus.cpp:544
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "&Kijelölés nagyÃtása\tCtrl+E"
+msgid "&Zoom to Selection"
+msgstr "&Kijelölés nagyÃtása"
#: Menus.cpp:547
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
-msgstr "Minden sáv &összecsukása\tCtrl+Shift+C"
+msgid "&Collapse All Tracks"
+msgstr "Minden sáv &összecsukása"
#: Menus.cpp:548
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
-msgstr "Minden sáv ki&bontása\tCtrl+Shift+X"
+msgid "E&xpand All Tracks"
+msgstr "Minden sáv ki&bontása"
#: Menus.cpp:551
msgid "&Show Clipping"
@@ -1803,40 +1828,40 @@ msgid "T&ransport"
msgstr "&VezérlÅk"
#: Menus.cpp:591
-msgid "Play\tSpace"
-msgstr ""
+msgid "Play"
+msgstr "Lejátszás"
#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
-msgstr ""
+msgid "&Loop Play"
+msgstr "&IsmétlÅdÅ lejátszás"
#: Menus.cpp:593
-msgid "&Pause\tP"
-msgstr "Szü&net\tP"
+msgid "&Pause"
+msgstr "Szü&net"
#: Menus.cpp:596
-msgid "&Stop\tSpace"
-msgstr ""
+msgid "&Stop"
+msgstr "Ãllj"
#: Menus.cpp:595 Menus.cpp:1010
-msgid "Skip to Start\tHome"
-msgstr "Ugrás a kezdetére\tHome"
+msgid "Skip to Start"
+msgstr "Ugrás a kezdetére"
#: Menus.cpp:597 Menus.cpp:1011
-msgid "Skip to End\tEnd"
-msgstr "Ugrás a végére\tEnd"
+msgid "Skip to End"
+msgstr "Ugrás a végére"
#: Menus.cpp:600
-msgid "&Record\tR"
-msgstr "&Felvétel\tR"
+msgid "&Record"
+msgstr "&Felvétel"
#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
-msgstr "I&dÅzÃtett felvétel...\tShift+T"
+msgid "&Timer Record..."
+msgstr "I&dÅzÃtett felvétel..."
#: Menus.cpp:604
-msgid "Append Record\tShift+R"
-msgstr "Hozáfűzött felvétel\tShift+R"
+msgid "Append Record"
+msgstr "Hozáfűzött felvétel"
#: Menus.cpp:607
msgid "Overdub (on/off)"
@@ -1863,8 +1888,8 @@ msgid "Add &New"
msgstr "&Ãj hozzáadása"
#: Menus.cpp:630
-msgid "&Audio Track\tCtrl+Shift+N"
-msgstr "&Audió sáv\tCtrl+Shift+N"
+msgid "&Audio Track"
+msgstr "&Audió sáv"
#: Menus.cpp:631
msgid "&Stereo Track"
@@ -1879,8 +1904,8 @@ msgid "Mi&x and Render"
msgstr "Keverés és renderelés"
#: Menus.cpp:647
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
-msgstr "Keverés és renderelés új sávba\tCtrl+Shift+M"
+msgid "Mix and Render to New Track"
+msgstr "Keverés és renderelés új sávba"
#: Menus.cpp:651
msgid "&Resample..."
@@ -1891,12 +1916,12 @@ msgid "Remo&ve Tracks"
msgstr "Sávok &eltávolÃtása"
#: Menus.cpp:667
-msgid "&Mute All Tracks\tCtrl+U"
-msgstr "Minden sáv el&némÃtása\tCtrl+U"
+msgid "&Mute All Tracks"
+msgstr "Minden sáv el&némÃtása"
#: Menus.cpp:668
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
-msgstr "Minden sáv &hallhatóvá tétele\tCtrl+Shift+U"
+msgid "&UnMute All Tracks"
+msgstr "Minden sáv &hallhatóvá tétele"
#: Menus.cpp:672
msgid "Align with &Zero"
@@ -1942,17 +1967,18 @@ msgstr "&Kurzor igazÃtása és mozgatása"
msgid "Synchronize MIDI with Audio"
msgstr "A MIDI szinkronizálása a hanghoz"
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
+#: Menus.cpp:686
+#, fuzzy
+msgid "&Link Audio and Label Tracks"
msgstr "Hang- és cÃmkesávok összekapcsolása"
-#: Menus.cpp:709
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "CÃmke hozzárendelése a kijelölésnél\tCtrl+B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr ""
#: Menus.cpp:710
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "CÃmke hozzáadása az aktuális pozÃcónál\tCtrl+M"
+msgid "Add Label At &Playback Position"
+msgstr "CÃmke hozzáadása az aktuális pozÃcónál"
#: Menus.cpp:716
msgid "S&ort tracks"
@@ -1978,14 +2004,14 @@ msgstr "Rendezetlen"
msgid "Effe&ct"
msgstr "&Effekt"
-#: Menus.cpp:799
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "Utolsó effekt megismétlése\tCtrl+R"
-
#: Menus.cpp:877
msgid "&Analyze"
msgstr "&Analizálás"
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
+
#: Menus.cpp:879
msgid "Plot Spectrum..."
msgstr "S&pektrum ábrázolása"
@@ -2003,8 +2029,8 @@ msgid "&Show Welcome Message..."
msgstr "&ÃdvözlŠüzenet mutatása..."
#: Menus.cpp:958
-msgid "&Index..."
-msgstr "&Tartalomjegyzék..."
+msgid "&Help..."
+msgstr ""
#: Menus.cpp:959
msgid "Show &Log..."
@@ -2022,181 +2048,149 @@ msgstr "&Szintjel Futtatása..."
msgid "&Audio Device Info..."
msgstr "&Hangeszköz információ..."
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
msgstr ""
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
msgstr ""
#: Menus.cpp:985
-msgid "Selection Tool\tF1"
-msgstr "KijelölŠeszköz\tF1"
+msgid "Selection Tool"
+msgstr "KijelölŠeszköz"
#: Menus.cpp:986
-msgid "Envelope Tool\tF2"
-msgstr "Burkológörbe eszköz\tF2"
+msgid "Envelope Tool"
+msgstr "Burkológörbe eszköz"
#: Menus.cpp:987
-msgid "Draw Tool\tF3"
-msgstr "Rajzoló eszköz\tF3"
+msgid "Draw Tool"
+msgstr "Rajzoló eszköz"
#: Menus.cpp:988
-msgid "Zoom Tool\tF4"
-msgstr "NagyÃtó eszköz\tF4"
+msgid "Zoom Tool"
+msgstr "NagyÃtó eszköz"
#: Menus.cpp:989
-msgid "Time Shift Tool\tF5"
-msgstr "IdÅbeni Eltolás eszköz\tF5"
+msgid "Time Shift Tool"
+msgstr "IdÅbeni Eltolás eszköz"
#: Menus.cpp:990
-msgid "Multi Tool\tF6"
-msgstr "Multi Eszköz\tF6"
+msgid "Multi Tool"
+msgstr "Multi Eszköz"
#: Menus.cpp:992
-msgid "Next Tool\tD"
-msgstr "KövetkezŠeszköz\tD"
+msgid "Next Tool"
+msgstr "KövetkezŠeszköz"
#: Menus.cpp:993
-msgid "Previous Tool\tA"
-msgstr "ElÅzÅ eszköz\tA"
+msgid "Previous Tool"
+msgstr "ElÅzÅ eszköz"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
-msgstr ""
-
-#: Menus.cpp:996
-msgid "Stop\tS"
-msgstr "Ãllj\tS"
-
-#: Menus.cpp:997
-msgid "Pause\tP"
-msgstr "Szünet\tP"
-
-#: Menus.cpp:998
-msgid "Record\tR"
-msgstr "Felvétel\tR"
-
-#: Menus.cpp:999
-msgid "Record Append\tShift+R"
-msgstr "Felvétel hozzáfűzve\tShift+R"
+msgid "Play/Stop"
+msgstr "Lejátszás/Ãllj"
#: Menus.cpp:1001
-msgid "Play/Stop and Set Cursor\tShift+A"
-msgstr "Lejátszás/Stop és kurzor beállÃtása\tShift+A"
+msgid "Play/Stop and Set Cursor"
+msgstr "Lejátszás/Stop és kurzor beállÃtása"
#: Menus.cpp:1004
-msgid "Play One Second\t1"
-msgstr "Egymásodperces lejátszás\t1"
+msgid "Play One Second"
+msgstr "Egymásodperces lejátszás"
#: Menus.cpp:1005
-msgid "Play To Selection\tB"
-msgstr "Lejátszás a kijelölésig\tB"
-
-#: Menus.cpp:1006
-msgid "Play Looped\tL"
-msgstr "Ismételt Lejátszás\tL"
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
+msgid "Play To Selection"
+msgstr "Lejátszás a kijelölésig"
#: Menus.cpp:1008
-msgid "Play Cut Preview\tC"
-msgstr "A kivágott rész lejátszása\tC"
+msgid "Play Cut Preview"
+msgstr "A kivágott rész lejátszása"
#: Menus.cpp:1013
-msgid "Selection to Start\tShift+Home"
-msgstr "Kijelölés a kezdetéig\tShift+Home"
+msgid "Selection to Start"
+msgstr "Kijelölés a kezdetéig"
#: Menus.cpp:1014
-msgid "Selection to End\tShift+End"
-msgstr "Kijelölés a végéig\tShift+End"
+msgid "Selection to End"
+msgstr "Kijelölés a végéig"
#: Menus.cpp:1016
-msgid "DeleteKey\tBackspace"
-msgstr "TörlésGomb\tBackspace"
+msgid "DeleteKey"
+msgstr "TörlésGomb"
#: Menus.cpp:1021
-msgid "DeleteKey2\tDelete"
-msgstr "TörlésGomb2\tDelete"
+msgid "DeleteKey2"
+msgstr "TörlésGomb2"
-#: Menus.cpp:1027
-msgid "Seek left short period during playback\tLeft"
-msgstr "Ugrás balra keveset lejátszás közben\tLeft"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
+msgstr ""
-#: Menus.cpp:1028
-msgid "Seek right short period during playback\tRight"
-msgstr "Ugrás jobbra keveset lejátszás közben\tRight"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
+msgstr ""
-#: Menus.cpp:1029
-msgid "Seek left long period during playback\tShift+Left"
-msgstr "Ugrás balra nagyot lejátszás közben\tShift+Left"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
+msgstr ""
-#: Menus.cpp:1030
-msgid "Seek right long period during playback\tShift+Right"
-msgstr "Ugrás jobbra nagyot lejátszás közben\tShift+Right"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
+msgstr ""
#: Menus.cpp:1034
-msgid "Move Focus to Previous Track\tUp"
-msgstr "Fókusz mozgatása az elÅzÅ sávra\tUp"
+msgid "Move Focus to Previous Track"
+msgstr "Fókusz mozgatása az elÅzÅ sávra"
-#: Menus.cpp:1035
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
-msgstr "Fókusz mozgatása az elÅzÅre és kijelölés módosÃtása\tShift+Up"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
+msgstr ""
#: Menus.cpp:1036
-msgid "Move Focus to Next Track\tDown"
-msgstr "Fókusz mozgatása a következŠsávra\tDown"
+msgid "Move Focus to Next Track"
+msgstr "Fókusz mozgatása a következŠsávra"
-#: Menus.cpp:1037
-msgid "Move Focus to Next and Change Selection\tShift+Down"
-msgstr "Fókusz mozgatása a következÅre és kijelölés módosÃtása\tShift+Down"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
+msgstr ""
#: Menus.cpp:1038
-msgid "Toggle Focused Track\tReturn"
-msgstr "Fókuszált sáv be- és kikapcsolása\tReturn"
-
-#: Menus.cpp:1039
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr "Fókuszált sáv be- és kikapcsolása\tNUMPAD_ENTER"
-
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
-msgstr ""
+msgid "Toggle Focused Track"
+msgstr "Fókuszált sáv be- és kikapcsolása"
#: Menus.cpp:1042
-msgid "Cursor Left\tLeft"
-msgstr "Kurzor balra\tLeft"
+msgid "Cursor Left"
+msgstr "Kurzor balra"
#: Menus.cpp:1043
-msgid "Cursor Right\tRight"
-msgstr "Kurzor jobbra\tRight"
+msgid "Cursor Right"
+msgstr "Kurzor jobbra"
#: Menus.cpp:1044
-msgid "Cursor Short Jump Left\t,"
-msgstr "Kurzor kis ugrás balra\t,"
+msgid "Cursor Short Jump Left"
+msgstr "Kurzor kis ugrás balra"
#: Menus.cpp:1045
-msgid "Cursor Short Jump Right\t."
-msgstr "Kurzor kis ugrás jobbra\t."
+msgid "Cursor Short Jump Right"
+msgstr "Kurzor kis ugrás jobbra"
#: Menus.cpp:1046
-msgid "Cursor Long Jump Left\tShift+,"
-msgstr "Kurzor nagy ugrás balra\tShift+,"
+msgid "Cursor Long Jump Left"
+msgstr "Kurzor nagy ugrás balra"
#: Menus.cpp:1047
-msgid "Cursor Long Jump Right\tShift+."
-msgstr "Kurzor nagy ugrás jobbra\tShift+."
+msgid "Cursor Long Jump Right"
+msgstr "Kurzor nagy ugrás jobbra"
#: Menus.cpp:1049
-msgid "Selection Extend Left\tShift+Left"
-msgstr "Kijelölés megnövelése balra\tShift+Left"
+msgid "Selection Extend Left"
+msgstr "Kijelölés megnövelése balra"
#: Menus.cpp:1050
-msgid "Selection Extend Right\tShift+Right"
-msgstr "Kijelölés megnövelése jobbra\tShift+Right"
+msgid "Selection Extend Right"
+msgstr "Kijelölés megnövelése jobbra"
#: Menus.cpp:1052
msgid "Set (or Extend) Left Selection"
@@ -2207,52 +2201,52 @@ msgid "Set (or Extend) Right Selection"
msgstr "Kijelölés vvégének beállÃtása (vagy kiterjesztése)"
#: Menus.cpp:1055
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "Kijelölés kurtÃtása balról\tCtrl+Shift+Right"
+msgid "Selection Contract Left"
+msgstr "Kijelölés kurtÃtása balról"
#: Menus.cpp:1056
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "Kijelölés kurtÃtása jobbról\tCtrl+Shift+Left"
+msgid "Selection Contract Right"
+msgstr "Kijelölés kurtÃtása jobbról"
#: Menus.cpp:1058
-msgid "Change pan on focused track\tShift+P"
+msgid "Change pan on focused track"
msgstr ""
#: Menus.cpp:1059
-msgid "Pan left on focused track\tAlt+Shift+Left"
+msgid "Pan left on focused track"
msgstr ""
#: Menus.cpp:1060
-msgid "Pan right on focused track\tAlt+Shift+Right"
+msgid "Pan right on focused track"
msgstr ""
#: Menus.cpp:1061
-msgid "Change gain on focused track\tShift+G"
+msgid "Change gain on focused track"
msgstr ""
#: Menus.cpp:1062
-msgid "Increase gain on focused track\tAlt+Shift+Up"
+msgid "Increase gain on focused track"
msgstr ""
#: Menus.cpp:1063
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
+msgid "Decrease gain on focused track"
msgstr ""
#: Menus.cpp:1064
-msgid "Open menu on focused track\tShift+M"
-msgstr "Menu megnyitása a fókuszált sávon\tShift+M"
+msgid "Open menu on focused track"
+msgstr "Menu megnyitása a fókuszált sávon"
#: Menus.cpp:1065
-msgid "Mute/Unmute focused track\tShift+U"
-msgstr "Fókuszált sáv némÃtása/hangosÃtása\tShift+M"
+msgid "Mute/Unmute focused track"
+msgstr "Fókuszált sáv némÃtása/hangosÃtása"
#: Menus.cpp:1066
-msgid "Solo/Unsolo focused track\tShift+S"
+msgid "Solo/Unsolo focused track"
msgstr ""
#: Menus.cpp:1067
-msgid "Close focused track\tShift+C"
-msgstr "Fókuszált sáv bezásása\tShift+C"
+msgid "Close focused track"
+msgstr "Fókuszált sáv bezásása"
#: Menus.cpp:1069
msgid "Snap To On"
@@ -2263,7 +2257,35 @@ msgid "Snap To Off"
msgstr "Hozzáillesztés ki"
#: Menus.cpp:1073
-msgid "Full screen on/off\tF11"
+msgid "Full screen on/off"
+msgstr ""
+
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr ""
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr ""
+
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr ""
+
+#: Menus.cpp:1074
+msgid "Adjust input source"
msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
@@ -2324,8 +2346,8 @@ msgstr "ElÅször jelöljön ki egy sávot."
#: Menus.cpp:2363
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "Ismétlés %s\tCtrl+R"
+msgid "Repeat %s"
+msgstr "Ismétlés %s"
#: Menus.cpp:2506
msgid "There are no label tracks to export."
@@ -2534,15 +2556,6 @@ msgstr ""
msgid "Split at labels"
msgstr "Szétvágás a cÃmkénél"
-#: Menus.cpp:3963
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "A spektrumtérkép készÃtéséhez minden sávnak azonos mintavételezési frekvenciával kell rendelkeznie."
-
-#: Menus.cpp:3989
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "Túl sok audió adat lett kijelölve. Csak az elsŠ%.1f másodperc lett analizálva."
-
#: Menus.cpp:4124
#, c-format
msgid "Imported labels from '%s'"
@@ -2762,6 +2775,10 @@ msgstr "Probléma adódott nyomtatás közben."
msgid "Print"
msgstr "Nyomtatás"
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr ""
+
#: Project.cpp:673
msgid "Main Mix"
msgstr "FŠkeverés"
@@ -2775,7 +2792,7 @@ msgstr "Ãdvözli az Audacity %s verziója"
msgid "(Recovered)"
msgstr "(HelyreállÃtott)"
-#: Project.cpp:1546 TrackPanel.cpp:796 toolbars/ControlToolBar.cpp:192
+#: Menus.cpp:998
msgid "Record"
msgstr "Felvétel"
@@ -2805,9 +2822,9 @@ msgstr "\n"
msgid "Save changes?"
msgstr "Mentsük a változtatásokat?"
-#: Project.cpp:1772
-msgid "All files|*.*|All supported files|"
-msgstr "Minden fájl|*.*|Minden támogatott fájl|"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
+msgstr ""
#: Project.cpp:1802
msgid "Select one or more audio files..."
@@ -2836,6 +2853,17 @@ msgstr "1.0 vagy korábbi"
msgid "Opening old project file"
msgstr "Régi projekt fájl megnyitása"
+#: Project.cpp:2073
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr ""
+
#: Project.cpp:1915 Project.cpp:1923
msgid "Error opening file"
msgstr "Hiba a fájl megnyitásakor"
@@ -2893,16 +2921,15 @@ msgstr "Ezt a fájlt az Audacity %s. verziója mentette.\n"
msgid "Can't open project file"
msgstr "Nem lehet megnyitni a projekt fájlt"
-#: Project.cpp:2311
+#: Project.cpp:2484
#, c-format
msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
"\n"
-"Open this file now?"
-msgstr "Ez a fájl az Audacity %s által lett mentve.\n"
-"Megnyithatja a fájlt az Audacity ezen verziójával, de ha ezzel a verzióval elmenti, a késÅbbiekben nem fogja tudni megnyitni a régebbi verziókkal.\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
-"Megnyitja most a fájlt?"
+"Open this file now?"
+msgstr ""
#: Project.cpp:2537
msgid "Your project is now empty.\n"
@@ -2919,16 +2946,22 @@ msgstr ""
msgid "Warning empty project"
msgstr ""
-#: Project.cpp:2588
+#: Project.cpp:2792
#, c-format
msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+"is not writable or the disk is full."
msgstr ""
#: Project.cpp:2590 Project.cpp:2605
msgid "Error saving project"
msgstr "Hiba a projekt mentésekor"
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
#: Project.cpp:2680
#, c-format
msgid "Saved %s"
@@ -3086,6 +3119,164 @@ msgstr "24 bites PCM"
msgid "32-bit float"
msgstr "32 bites lebegÅ"
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
+
+#: export/ExportMultiple.cpp:245 prefs/DirectoriesPrefs.cpp:92
+msgid "Choose..."
+msgstr "Tallózás..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
+
+#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
+msgid "false"
+msgstr "hamis"
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr "Eszközök"
+
+#: toolbars/ControlToolBar.cpp:83
+msgid "Control"
+msgstr ""
+
+#: effects/LoadEffects.cpp:111 toolbars/MixerToolBar.cpp:60
+msgid "Mixer"
+msgstr "KeverÅ"
+
+#: toolbars/MeterToolBar.cpp:50
+msgid "Meter"
+msgstr ""
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:121 prefs/AudioIOPrefs.cpp:139
+#: prefs/MidiIOPrefs.cpp:118 prefs/MidiIOPrefs.cpp:136
+#: toolbars/DeviceToolBar.cpp:57
+msgid "Device"
+msgstr "Eszköz"
+
+#: toolbars/TranscriptionToolBar.cpp:84
+msgid "Transcription"
+msgstr "Ãttétel"
+
+#: TrackPanel.cpp:457 TrackPanel.cpp:458
+msgid "Track Panel"
+msgstr "Sáv panel"
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: export/ExportMultiple.cpp:288 export/ExportMultiple.cpp:290
+msgid "Tracks"
+msgstr "Sávok"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
#: Screenshot.cpp:384
msgid "Saved "
msgstr "Mentve "
@@ -3094,6 +3285,10 @@ msgstr "Mentve "
msgid "Error trying to save file: "
msgstr "Hiba a fájl mentése közben: "
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
#: Sequence.cpp:745 Sequence.cpp:755 Sequence.cpp:762
msgid "Gap detected in project file\n"
msgstr "Hézag került detektálásra a projekt fájlban\n"
@@ -3231,6 +3426,10 @@ msgstr "Hiba a metaadat betöltésekor"
msgid "Save Metadata As:"
msgstr "Metaadat mentése mint:"
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
#: Theme.cpp:638
#, c-format
msgid "Audacity could not write file:\n"
@@ -3316,6 +3515,14 @@ msgstr "IdÅtartam"
msgid "Audacity Timer Record"
msgstr "Audacity idÅzÃtett felvétel"
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
#: TimerRecordDialog.cpp:224
msgid "Recording start"
msgstr "Felvétel kezdete"
@@ -3355,10 +3562,6 @@ msgstr "Várakozás a felvétel megkezdésére eddig: %s.\n"
msgid "Audacity Timer Record - Waiting for Start"
msgstr "Audacity idÅzÃtett felvétel - Várakozás a kezdésre"
-#: TrackPanel.cpp:457 TrackPanel.cpp:458
-msgid "Track Panel"
-msgstr "Sáv panel"
-
#: TrackPanel.cpp:541 prefs/QualityPrefs.cpp:97
msgid "Other..."
msgstr "Egyéb..."
@@ -3415,6 +3618,10 @@ msgstr "Sztereó sáv készÃtése"
msgid "Split Stereo Track"
msgstr "Sztereó sáv szétvágása"
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr ""
+
#: TrackPanel.cpp:566
msgid "Set Sample Format"
msgstr "Hangminta formátum beállÃtása"
@@ -3614,14 +3821,6 @@ msgstr ""
msgid "Adjusted gain"
msgstr ""
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr ""
-
#: TrackPanel.cpp:5923
msgid "Can't delete track with active audio"
msgstr "Nem törölhetÅ sáv aktÃv hanggal"
@@ -3656,6 +3855,11 @@ msgstr "Csatorna"
msgid "Split stereo track '%s'"
msgstr "'%s' sztereó sáv szétvágása"
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
#: TrackPanel.cpp:6169
#, c-format
msgid "Made '%s' a stereo track"
@@ -3732,6 +3936,10 @@ msgstr ""
msgid "Face size"
msgstr ""
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr ""
+
#: TrackPanel.cpp:7171
msgid "Mute"
msgstr "Néma"
@@ -3810,10 +4018,10 @@ msgstr "Plugin-ek 1-tÅl %i-ig"
msgid "Plugins %i to %i"
msgstr "Plugin-ek %i-tÅl %i-ig"
-#: commands/CommandManager.cpp:857
-#, fuzzy
-msgid "Disallowed for some reason. Try selecting some audio first?"
-msgstr "Letiltott valamilyen okból. Próbált kijelölni némi hangot?"
+#: commands/CommandManager.cpp:923
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
+msgstr ""
#: commands/CommandManager.cpp:892
msgid "You can only do this when playing and recording are\n"
@@ -4257,9 +4465,9 @@ msgstr ""
msgid "Decay Time"
msgstr ""
-#: effects/Compressor.cpp:530
-msgid "Normalize to 0dB after compressing"
-msgstr "Normalizálás 0dB-re kompresszálás után"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
+msgstr ""
#: effects/Compressor.cpp:563
#, c-format
@@ -4314,6 +4522,10 @@ msgstr "Kompresszor"
msgid "Applying Dynamic Range Compression..."
msgstr "Dinamika tartomány kompressziójának végrehajtása..."
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
msgstr ""
@@ -4333,26 +4545,13 @@ msgid "Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
-#: effects/Contrast.cpp:190
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:277 effects/Contrast.cpp:288 effects/Contrast.cpp:371
-#: effects/Contrast.cpp:415
-msgid "Measured"
-msgstr ""
-
#: effects/Contrast.cpp:318
msgid "Contrast Analyzer"
msgstr ""
#: effects/Contrast.cpp:321
msgid "Parameters"
-msgstr ""
+msgstr "Paraméterek"
#: effects/ToneGen.cpp:355 toolbars/ControlToolBar.cpp:186
msgid "Start"
@@ -4370,7 +4569,7 @@ msgstr ""
#: effects/Contrast.cpp:335
msgid "Foreground:"
-msgstr ""
+msgstr "ElÅtér"
#: effects/Contrast.cpp:347
msgid "Foreground start time"
@@ -4380,13 +4579,18 @@ msgstr ""
msgid "Foreground end time"
msgstr ""
+#: effects/Contrast.cpp:277 effects/Contrast.cpp:288 effects/Contrast.cpp:371
+#: effects/Contrast.cpp:415
+msgid "Measured"
+msgstr ""
+
#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
msgid "Use selection"
msgstr ""
#: effects/Contrast.cpp:378
msgid "Background:"
-msgstr ""
+msgstr "Háttér:"
#: effects/Contrast.cpp:391
msgid "Background start time"
@@ -4398,7 +4602,7 @@ msgstr ""
#: effects/Contrast.cpp:426
msgid "Result"
-msgstr ""
+msgstr "Eredmény"
#: effects/Contrast.cpp:430
msgid "Contrast Result:"
@@ -4410,7 +4614,7 @@ msgstr "Alaphelyzet"
#: effects/Contrast.cpp:434
msgid "Difference:"
-msgstr ""
+msgstr "Különbség:"
#: effects/Contrast.cpp:445
msgid "Information"
@@ -4424,16 +4628,8 @@ msgstr ""
msgid "Help for WCAG2 Audio Contrast Analyzer"
msgstr ""
-#: toolbars/ControlToolBar.cpp:83
-msgid "Control"
-msgstr ""
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
msgstr ""
#: effects/Contrast.cpp:466 effects/Contrast.cpp:472 effects/Contrast.cpp:478
@@ -4494,11 +4690,11 @@ msgstr ""
#: effects/Contrast.cpp:574
#, c-format
msgid "Filename = %s."
-msgstr ""
+msgstr "Fájlnév = %s."
#: effects/Contrast.cpp:576
msgid "Foreground"
-msgstr ""
+msgstr "ElÅtér"
#: effects/Contrast.cpp:581 effects/Contrast.cpp:598
#, c-format
@@ -4521,11 +4717,11 @@ msgstr ""
#: effects/Contrast.cpp:593
msgid "Background"
-msgstr ""
+msgstr "Háttér"
#: effects/Contrast.cpp:609
msgid "Results"
-msgstr ""
+msgstr "Eredmények"
#: effects/Contrast.cpp:611
#, c-format
@@ -4542,19 +4738,7 @@ msgstr ""
#: effects/Contrast.cpp:618
msgid "Data gathered"
-msgstr ""
-
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:52
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:54
-msgid "Measuring foreground"
-msgstr ""
+msgstr "Gyűjtött adaat"
#: effects/DtmfGen.cpp:56
msgid "DTMF Tone Generator"
@@ -4683,6 +4867,10 @@ msgstr "EQ görbe betöltése sikertelen"
msgid "custom"
msgstr "egyéni"
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr ""
+
#. i18n-hint: && in here is an escape character to get a single &
#. * on screen, so keep it as is
#: effects/Equalization.cpp:1101
@@ -4886,10 +5074,6 @@ msgstr "Konvertáló"
msgid "Analyser"
msgstr "Analizáló"
-#: effects/LoadEffects.cpp:111 toolbars/MixerToolBar.cpp:60
-msgid "Mixer"
-msgstr "KeverÅ"
-
#: effects/LoadEffects.cpp:113
msgid "Simulator"
msgstr "Szimulátor"
@@ -5127,10 +5311,6 @@ msgstr "Zajszűrés"
msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr ""
-#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
-msgid "false"
-msgstr "hamis"
-
#. i18n-hint: true here means that the option was
#. * selected. Opposite false if not selected
#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
@@ -5483,9 +5663,13 @@ msgstr "Minden sávnak egyforma mintavételi rátával kell rendelkeznie"
msgid "Truncate Silence"
msgstr "Csend eltávolÃtása"
-#: effects/TruncSilence.cpp:345
-msgid "Max silence duration:"
-msgstr "A csend max hossza:"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr ""
+
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
+msgstr ""
#: effects/TruncSilence.cpp:348 prefs/AudioIOPrefs.cpp:196
#: prefs/AudioIOPrefs.cpp:199 prefs/MidiIOPrefs.cpp:174
@@ -5493,13 +5677,26 @@ msgstr "A csend max hossza:"
msgid "milliseconds"
msgstr "ezredmásodperc"
+#: effects/TruncSilence.cpp:345
+msgid "Max silence duration:"
+msgstr "A csend max hossza:"
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ""
+
#: effects/TruncSilence.cpp:350
msgid "Threshold for silence:"
msgstr "Csend küszöbértéke:"
-#: effects/TruncSilence.cpp:374
-msgid " Duration must be at least 1 millisecond"
-msgstr " Az idÅtartamnak legalább egy ezredmásodpercnek kell lennie"
+#: effects/TruncSilence.cpp:506
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
+msgstr ""
#: effects/TruncSilence.h:28
msgid "Truncate Silence..."
@@ -5509,17 +5706,55 @@ msgstr "Csend eltávolÃtása..."
msgid "Truncating Silence..."
msgstr "Csend eltávolÃtása..."
-#: effects/VST/VSTEffect.cpp:172
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "Sajnálom, de a VST Effekt nem működik az olyan sztereó sávokon, ahol a két csatorna tartalma nem egyezik."
+#: effects/ladspa/LadspaEffect.cpp:615 effects/lv2/LV2Effect.cpp:823
+msgid "Effect Settings"
+msgstr "Effekt beállÃtások"
-#: effects/VST/VSTEffect.cpp:187
-msgid "Can't process replacing"
-msgstr "Nem lehet végrehajtani a cserét"
+#: effects/ladspa/LadspaEffect.cpp:580 effects/ladspa/LadspaEffect.cpp:588
+#: prefs/GUIPrefs.cpp:51 prefs/QualityPrefs.cpp:72
+msgid "None"
+msgstr "Nincs"
-#: effects/VST/VSTEffect.cpp:410
-msgid "VST Plug-in parameters:"
-msgstr "VST plugin parméterek:"
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr ""
#: effects/Wahwah.cpp:61
#, c-format
@@ -5568,20 +5803,11 @@ msgstr "%s effekt végrehajtása"
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr ""
-#: effects/ladspa/LadspaEffect.cpp:580 effects/ladspa/LadspaEffect.cpp:588
-#: prefs/GUIPrefs.cpp:51 prefs/QualityPrefs.cpp:72
-msgid "None"
-msgstr "Nincs"
-
#: effects/ladspa/LadspaEffect.cpp:582 effects/lv2/LV2Effect.cpp:798
#: effects/vamp/VampEffect.cpp:395
msgid "Author: "
msgstr "SzerzÅ: "
-#: effects/ladspa/LadspaEffect.cpp:615 effects/lv2/LV2Effect.cpp:823
-msgid "Effect Settings"
-msgstr "Effekt beállÃtások"
-
#: effects/ladspa/LadspaEffect.cpp:710 effects/ladspa/LadspaEffect.cpp:713
#: effects/lv2/LV2Effect.cpp:834 effects/lv2/LV2Effect.cpp:837
msgid "Length (seconds)"
@@ -5666,11 +5892,11 @@ msgstr "Program"
#: export/Export.cpp:469
msgid "All the selected audio is muted."
-msgstr ""
+msgstr "Minden kijelölt hang néma."
#: export/Export.cpp:471
msgid "All the audio is muted."
-msgstr ""
+msgstr "Minden hang néma."
#: export/Export.cpp:522
msgid "Export File"
@@ -5691,7 +5917,11 @@ msgid "You are about to save a %s file with the name \"%s\".\n"
"Normally these files end in \".%s\", and some programs will not open files with nonstandard extensions.\n"
"\n"
"Are you sure you want to save the file under this name?"
-msgstr ""
+msgstr "Ãn egy %s fájlt készül menteni az alábbi néven: \"%s\".\n"
+"\n"
+"Ezek a fájlok szabványosan \".%s\"-re végzÅdnek, és egyes programok nem nyitják meg a fájlokat nem szabványos kiterjesztésekkel.\n"
+"\n"
+"Biztosan ezen a néven szeretné a fájt menteni?"
#: export/Export.cpp:612
#, c-format
@@ -5725,7 +5955,7 @@ msgstr " - Jobb"
#: export/Export.cpp:1072
msgid "Mixer Panel"
-msgstr ""
+msgstr "KeverÅ panel"
#: export/Export.cpp:1078 export/Export.cpp:1125
#, c-format
@@ -5738,7 +5968,7 @@ msgstr "Parancssoros kódoló megadása"
#: export/ExportCL.cpp:70
msgid "Command Line Export Setup"
-msgstr ""
+msgstr "Parancssori exportálás beállÃtása"
#: export/ExportCL.cpp:75
msgid "Command:"
@@ -5774,31 +6004,44 @@ msgstr "A teljes projekt exportálása parancssori enkóder segÃtségével"
msgid "Command Output"
msgstr "A parancs kimenete"
-#: export/ExportFFmpeg.cpp:59
+#: export/ExportFFmpeg.cpp:61
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
#: export/ExportFFmpeg.cpp:394
#, c-format
msgid "FFmpeg cannot find audio codec 0x%x.\n"
"Support for this codec is probably not compiled in."
-msgstr ""
+msgstr "Az FFmpeg nem talál audio kodeket 0x%x.\n"
+"Ennek a kodeknek a támogatása valószÃnűleg nincs a programba belefordÃtva."
#: export/ExportFFmpeg.cpp:614
#, c-format
msgid "Attempted to export %d channels, but max. channels for selected output format is %d"
-msgstr ""
+msgstr "Ãn %d csatornát próbált exportálni, de max. %d csatornát támogat a kiválasztott formátum"
#: export/ExportFFmpeg.cpp:638
#, c-format
msgid "Exporting selected audio as %s"
-msgstr ""
+msgstr "Kijelölt hang exportálása mint %s"
#: export/ExportFFmpeg.cpp:639
#, c-format
msgid "Exporting entire file as %s"
-msgstr ""
+msgstr "Teljes exportálás mint %s"
#: export/ExportFFmpeg.cpp:702 export/ExportMP3.cpp:1920
msgid "Invalid sample rate"
@@ -5808,13 +6051,15 @@ msgstr "Ãrvénytelen mintavételi ráta"
#, c-format
msgid "The project sample rate (%d) is not supported by the current output\n"
"file format. "
-msgstr ""
+msgstr "A projekt mintavételi rátáját (%d) a kiválasztott kimeneti formátum\n"
+"nem támogatja. "
#: export/ExportFFmpeg.cpp:718
#, c-format
msgid "The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
"supported by the current output file format. "
-msgstr ""
+msgstr "A projekt mintavételi rátájának (%d) és bitrátájának (%d kbps) a\n"
+"kombinációját a kimeneti formátum nem támogatja. "
#: export/ExportFFmpeg.cpp:721 export/ExportMP3.cpp:1939
msgid "You may resample to one of the rates below."
@@ -5826,11 +6071,11 @@ msgstr "Mintavételi ráták"
#: export/ExportFFmpegDialogs.cpp:93
msgid "Specify AC3 Options"
-msgstr ""
+msgstr "Adja meg az AC3 opciókat"
#: export/ExportFFmpegDialogs.cpp:117
msgid "AC3 Export Setup"
-msgstr ""
+msgstr "AC3 exportálás beállÃtása"
#: export/ExportFFmpegDialogs.cpp:121 export/ExportFFmpegDialogs.cpp:245
#: export/ExportFFmpegDialogs.cpp:314 export/ExportFFmpegDialogs.cpp:385
@@ -5840,35 +6085,39 @@ msgstr "Bitsűrűség:"
#: export/ExportFFmpegDialogs.cpp:162
msgid "Specify AAC Options"
-msgstr ""
+msgstr "Adja meg az AAC opciókat"
#: export/ExportFFmpegDialogs.cpp:178
msgid "AAC Export Setup"
-msgstr ""
+msgstr "AAC exportálás beállÃtása"
+
+#: export/ExportFFmpegDialogs.cpp:940 export/ExportOGG.cpp:86
+msgid "Quality:"
+msgstr "MinÅség:"
#: export/ExportFFmpegDialogs.cpp:217
msgid "Specify AMR-NB Options"
-msgstr ""
+msgstr "Adja meg az AMR-NB opciókat"
#: export/ExportFFmpegDialogs.cpp:241
msgid "AMR-NB Export Setup"
-msgstr ""
+msgstr "AMR-NB exportálás beállÃtása"
#: export/ExportFFmpegDialogs.cpp:286
msgid "Specify AMR-WB Options"
-msgstr ""
+msgstr "Adja meg az AMR-WB opciókat"
#: export/ExportFFmpegDialogs.cpp:310
msgid "AMR-WB Export Setup"
-msgstr ""
+msgstr "AMR-WB exportálás beállÃtása"
#: export/ExportFFmpegDialogs.cpp:357
msgid "Specify WMA Options"
-msgstr ""
+msgstr "Adja meg a WMA opciókat"
#: export/ExportFFmpegDialogs.cpp:381
msgid "WMA Export Setup"
-msgstr ""
+msgstr "WMA exportálás beállÃtása"
#: export/ExportFFmpegDialogs.cpp:509
#, c-format
@@ -5926,7 +6175,7 @@ msgstr "Formátum:"
#: export/ExportFFmpegDialogs.cpp:909
msgid "Codec:"
-msgstr ""
+msgstr "Kodek:"
#: export/ExportFFmpegDialogs.cpp:913
msgid "Not all formats and codecs are compatible. Some parameters (such as bitrate and samplerate) combinations are not compatible with some codecs too."
@@ -5979,12 +6228,8 @@ msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n
"Recommended - 192000"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:940 export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr "MinÅség:"
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid "Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
@@ -5992,7 +6237,7 @@ msgstr ""
#: export/ExportFFmpegDialogs.cpp:943
msgid "Sample Rate:"
-msgstr ""
+msgstr "Mintavételi ráta:"
#: export/ExportFFmpegDialogs.cpp:944
msgid "Sample rate (Hz)\n"
@@ -6003,15 +6248,15 @@ msgstr ""
msgid "Cutoff Bandwidth:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:947
+#: export/ExportFFmpegDialogs.cpp:936
msgid "Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:949
msgid "Profile:"
-msgstr ""
+msgstr "Profil:"
#: export/ExportFFmpegDialogs.cpp:951
msgid "AAC Profile\n"
@@ -6033,7 +6278,7 @@ msgstr ""
#: export/ExportFFmpegDialogs.cpp:965
msgid "Compression Level:"
-msgstr ""
+msgstr "TömörÃtés mértéke:"
#: export/ExportFFmpegDialogs.cpp:966
msgid "Compression level\n"
@@ -6128,7 +6373,7 @@ msgstr ""
#: export/ExportFFmpegDialogs.cpp:977
msgid "Use LPC"
-msgstr ""
+msgstr "LPC használata"
#: export/ExportFFmpegDialogs.cpp:984
msgid "MPEG container options"
@@ -6181,67 +6426,67 @@ msgstr ""
#: export/ExportFFmpegDialogs.cpp:1361
msgid "Failed to guess format"
-msgstr ""
+msgstr "Nem sikerült kitalálni a formátumot"
#: export/ExportFFmpegDialogs.cpp:1403
msgid "Failed to find the codec"
-msgstr ""
+msgstr "Nem sikerült megtalálni a kodeket"
#: export/ExportFFmpegDialogs.h:53
msgid "M4A (AAC) Files (FFmpeg)"
-msgstr ""
+msgstr "M4A (AAC) fájlok (FFmpeg)"
#: export/ExportFFmpegDialogs.h:54
msgid "AC3 Files (FFmpeg)"
-msgstr ""
+msgstr "AC3 fájlok (FFmpeg)"
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:56
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:57
msgid "WMA (version 2) Files (FFmpeg)"
-msgstr ""
+msgstr "WMA (2. verzió) fájlok (FFmpeg)"
#: export/ExportFFmpegDialogs.h:58
msgid "Custom FFmpeg Export"
-msgstr ""
+msgstr "Egyéni FFmpeg exportálás"
#: export/ExportFFmpegDialogs.h:373
msgid "LTP"
-msgstr ""
+msgstr "LTP"
#: export/ExportFFmpegDialogs.h:373
msgid "Low Complexity"
-msgstr ""
+msgstr "Alacsony komplexitás"
#: export/ExportFFmpegDialogs.h:373
msgid "Main profile"
-msgstr ""
+msgstr "FÅ profil"
#: export/ExportFFmpegDialogs.h:676
msgid "2-level"
-msgstr ""
+msgstr "2-szintű"
#: export/ExportFFmpegDialogs.h:676
msgid "4-level"
-msgstr ""
+msgstr "4-szintű"
#: export/ExportFFmpegDialogs.h:676
msgid "8-level"
-msgstr ""
+msgstr "8-szintű"
#: export/ExportFFmpegDialogs.h:676
msgid "Estimate"
-msgstr ""
+msgstr "Becsült"
#: export/ExportFFmpegDialogs.h:676
msgid "Full search"
-msgstr ""
+msgstr "Teljes keresés"
#: export/ExportFFmpegDialogs.h:676
msgid "Log search"
@@ -6311,6 +6556,17 @@ msgstr "Bitmélység:"
msgid "FLAC Files"
msgstr "FLAC fájlok"
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
#: export/ExportFLAC.cpp:312
msgid "Exporting the selected audio as FLAC"
msgstr "A kiválasztott hang exportálása FLAC-ként"
@@ -6529,7 +6785,7 @@ msgstr "A projekt mintavételi rátájának (%d) és bitrátájának (%d kbps) k
#: export/ExportMP3.cpp:1965
msgid "MP3 export library not found"
-msgstr ""
+msgstr "MP3 exportálás könyvtára nem található"
#: export/ExportMultiple.cpp:96 export/ExportMultiple.cpp:426
#: export/ExportMultiple.cpp:667 export/ExportMultiple.cpp:834
@@ -6562,10 +6818,6 @@ msgstr "BeállÃtások..."
msgid "Export location:"
msgstr "Exportálási hely:"
-#: export/ExportMultiple.cpp:245 prefs/DirectoriesPrefs.cpp:92
-msgid "Choose..."
-msgstr "Tallózás..."
-
#: export/ExportMultiple.cpp:246
msgid "Create"
msgstr "Létrehozás"
@@ -6588,11 +6840,7 @@ msgstr "ElsŠfájl neve:"
#: export/ExportMultiple.cpp:280
msgid "First file name"
-msgstr ""
-
-#: export/ExportMultiple.cpp:288 export/ExportMultiple.cpp:290
-msgid "Tracks"
-msgstr "Sávok"
+msgstr "ElsŠfájl neve"
#: export/ExportMultiple.cpp:297
msgid "Name files:"
@@ -6612,7 +6860,7 @@ msgstr "Fájlnév prefix:"
#: export/ExportMultiple.cpp:327
msgid "File name prefix"
-msgstr ""
+msgstr "Fájlnév prefix"
#: export/ExportMultiple.cpp:341
msgid "Overwrite existing files"
@@ -6627,6 +6875,35 @@ msgstr "\"%s\" sikeresen létrehozva."
msgid "Choose a location to save the exported files"
msgstr "Válassz egy útvonalat az exportálandó fájlok számára"
+#: export/ExportMultiple.cpp:524
+#, c-format
+msgid "Successfully exported the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:527
+#, c-format
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr ""
+
#: export/ExportMultiple.cpp:539
#, c-format
msgid "\"%s\" doesn't exist.\n"
@@ -6640,21 +6917,12 @@ msgstr "\"%s\" nem létezik.\n"
msgid "Edit metadata"
msgstr "Metaadat szerkesztése"
-#: export/ExportMultiple.cpp:664 export/ExportMultiple.cpp:831
-#, c-format
-msgid "Successfully exported %d file(s)."
-msgstr "%d fájl sikeresen exportálva."
-
-#: export/ExportMultiple.cpp:665 export/ExportMultiple.cpp:832
-#, c-format
-msgid "Something went wrong after exporting %d file(s)."
-msgstr "Valami elromlott %d fájl exportálása után."
-
#: export/ExportMultiple.cpp:881
#, c-format
msgid "Label %s is not a legal file name. You cannot use any of: %s\n"
"Use..."
-msgstr ""
+msgstr "%s nem érvényes fájlnév. Nem használhatja a következÅket: %s\n"
+"Használjon..."
#: export/ExportOGG.cpp:64
msgid "Specify Ogg Vorbis Options"
@@ -6698,19 +6966,19 @@ msgstr "(A fejléceknek és kódolásoknak nem minden kombinációja lehetséges
#: export/ExportPCM.cpp:366
msgid "Other uncompressed files"
-msgstr ""
+msgstr "Egyéb tömörÃtetlen fájlok"
#: export/ExportPCM.cpp:358
msgid "AIFF (Apple) signed 16 bit PCM"
-msgstr ""
+msgstr "AIFF (Apple) elÅjeles 16 bit PCM"
#: export/ExportPCM.cpp:348
msgid "WAV (Microsoft) signed 16 bit PCM"
-msgstr ""
+msgstr "WAV (Microsoft) elÅjeles 16 bit PCM"
#: export/ExportPCM.cpp:384
msgid "GSM 6.10 WAV (mobile)"
-msgstr ""
+msgstr "GSM 6.10 WAV (mobil)"
#: export/ExportPCM.cpp:446
msgid "Cannot export audio in this format."
@@ -6734,7 +7002,7 @@ msgstr "Hiba (lehet hogy a fájl sem lett Ãrva): %s"
#: export/ExportPCM.cpp:723
msgid "There are no options for this format.\n"
-msgstr ""
+msgstr "Nincs beállÃtás ehhez a formátumhoz.\n"
#. i18n-hint: This is pointing users at another possible export format in
#. * the list. So you should translate the quoted string
@@ -6742,19 +7010,19 @@ msgstr ""
#. * when it comes up on it's own.
#: export/ExportPCM.cpp:728
msgid "If you need more control over the export format please use the 'Other uncompressed files' format."
-msgstr ""
+msgstr "Ha részletesebben szeretné beállÃtani az exportálás formátumát, használja az 'Egyéb tömörÃtetlen fájlok' formátumot."
#: export/ExportPCM.cpp:733
msgid "Your file will be exported as a 16-bit AIFF (Apple/SGI) file.\n"
-msgstr ""
+msgstr "A fájl 16-bit AIFF (Apple/SGI) fájlként lesz exportálva.\n"
#: export/ExportPCM.cpp:738
msgid "Your file will be exported as a 16-bit WAV (Microsoft) file.\n"
-msgstr ""
+msgstr "A fájl 16-bit WAV (Microsoft) fájlként lesz exportálva.\n"
#: export/ExportPCM.cpp:743
msgid "Your file will be exported as a GSM 6.10 WAV file.\n"
-msgstr ""
+msgstr "A fájl GSM 6.10 WAV fájlként lesz exportálva.\n"
#: import/Import.cpp:156 import/ImportMP3.cpp:47
msgid "MP3 files"
@@ -6882,7 +7150,7 @@ msgstr ""
#: import/ImportFFmpeg.cpp:34
msgid "FFmpeg-compatible files"
-msgstr ""
+msgstr "FFmpeg-kompatibilis fájlok"
#: import/ImportFFmpeg.cpp:431
#, c-format
@@ -6893,6 +7161,10 @@ msgstr ""
msgid "FLAC files"
msgstr "FLAC fájlok"
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr ""
+
#: import/ImportLOF.cpp:95
msgid "List of Files in basic text format"
msgstr "Lista a Fájlokról sima szövegformátumban"
@@ -7050,36 +7322,41 @@ msgstr ""
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr ""
-#: prefs/AudioIOPrefs.cpp:41 prefs/AudioIOPrefs.cpp:42
-#: prefs/MidiIOPrefs.cpp:44 prefs/MidiIOPrefs.cpp:45
-msgid "Audio I/O"
-msgstr "Audió I/O"
+#: prefs/BatchPrefs.cpp:55 prefs/BatchPrefs.cpp:56
+msgid "Batch"
+msgstr "Köteg"
-#: prefs/AudioIOPrefs.cpp:102 prefs/MidiIOPrefs.cpp:99
-msgid "1 (Mono)"
-msgstr "1 (Monó)"
+#: prefs/BatchPrefs.cpp:77 prefs/GUIPrefs.cpp:92
+msgid "Behaviors"
+msgstr "Viselkedések"
-#: prefs/AudioIOPrefs.cpp:103 prefs/MidiIOPrefs.cpp:100
-msgid "2 (Stereo)"
-msgstr "2 (Sztereó)"
+#: prefs/BatchPrefs.cpp:80
+msgid "&Don't apply effects in batch mode"
+msgstr ""
-#: prefs/AudioIOPrefs.cpp:117 prefs/MidiIOPrefs.cpp:114
-msgid "Playback"
-msgstr "Visszajátszás"
+#: prefs/BatchPrefs.cpp:83 prefs/GUIPrefs.cpp:132
+msgid "Cl&eanSpeech Mode (Customized GUI)"
+msgstr ""
-#: prefs/AudioIOPrefs.cpp:121 prefs/AudioIOPrefs.cpp:139
-#: prefs/MidiIOPrefs.cpp:118 prefs/MidiIOPrefs.cpp:136
-#: toolbars/DeviceToolBar.cpp:57
-msgid "Device"
-msgstr "Eszköz"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:34 prefs/GUIPrefs.cpp:35
+msgid "Interface"
+msgstr "Felület"
+
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
+msgstr ""
#: prefs/AudioIOPrefs.cpp:124 prefs/MidiIOPrefs.cpp:121
msgid "Using:"
msgstr "Használva:"
-#: prefs/AudioIOPrefs.cpp:125 prefs/MidiIOPrefs.cpp:122
-msgid "Portaudio v"
-msgstr "Portaudio v"
+#: prefs/AudioIOPrefs.cpp:117 prefs/MidiIOPrefs.cpp:114
+msgid "Playback"
+msgstr "Visszajátszás"
#: prefs/AudioIOPrefs.cpp:135 prefs/MidiIOPrefs.cpp:132
msgid "Recording"
@@ -7089,91 +7366,13 @@ msgstr "Felvétel"
msgid "Channels"
msgstr "Csatornák"
-#: prefs/AudioIOPrefs.cpp:147 prefs/MidiIOPrefs.cpp:144
-msgid "Playthrough"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:154
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:168 prefs/MidiIOPrefs.cpp:193
-msgid "Effects Preview"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:171
-msgid "Length of preview:"
-msgstr "ElÅnézet hossza:"
-
-#: prefs/AudioIOPrefs.cpp:176 prefs/MidiIOPrefs.cpp:157
-msgid "Cut Preview"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:179
-msgid "Preview before cut region:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:181
-msgid "Preview after cut region:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:189 prefs/MidiIOPrefs.cpp:167
-msgid "Latency"
-msgstr "Késleltetés"
-
-#: prefs/AudioIOPrefs.cpp:195
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:198
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:203
-msgid "Seek Time when playing"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:206 prefs/MidiIOPrefs.cpp:186
-msgid "Short period:"
-msgstr "Rövid periódus:"
-
-#: prefs/AudioIOPrefs.cpp:208 prefs/MidiIOPrefs.cpp:188
-msgid "Long period:"
-msgstr "Hosszú periódus:"
-
-#: prefs/BatchPrefs.cpp:55 prefs/BatchPrefs.cpp:56
-msgid "Batch"
-msgstr "Köteg"
-
-#: prefs/BatchPrefs.cpp:77 prefs/GUIPrefs.cpp:92
-msgid "Behaviors"
-msgstr "Viselkedések"
-
-#: prefs/BatchPrefs.cpp:80
-msgid "&Don't apply effects in batch mode"
-msgstr ""
+#: prefs/AudioIOPrefs.cpp:102 prefs/MidiIOPrefs.cpp:99
+msgid "1 (Mono)"
+msgstr "1 (Monó)"
-#: prefs/BatchPrefs.cpp:83 prefs/GUIPrefs.cpp:132
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr ""
+#: prefs/AudioIOPrefs.cpp:103 prefs/MidiIOPrefs.cpp:100
+msgid "2 (Stereo)"
+msgstr "2 (Sztereó)"
#: prefs/DirectoriesPrefs.cpp:55 prefs/DirectoriesPrefs.cpp:56
#: prefs/PrefsDialog.cpp:267
@@ -7192,34 +7391,31 @@ msgstr "Hely:"
msgid "Free Space:"
msgstr "Szabad terület:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr "Automatikus mentés"
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
+#: prefs/DirectoriesPrefs.cpp:110
+msgid "Audio cache"
msgstr ""
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
-msgstr "Automatikus mentés idÅköze:"
-
#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
-msgstr "perc"
+msgid "Play and/or record using RAM (useful for slow drives)"
+msgstr ""
-#: prefs/DirectoriesPrefs.cpp:110
-msgid "Audio cache"
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
msgstr ""
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
#: prefs/DirectoriesPrefs.cpp:121
msgid "Choose a location to place the temporary directory"
msgstr "Válassz egy útvonalat az ideiglenes könyvtár számára"
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: prefs/DirectoriesPrefs.cpp:166
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -7238,220 +7434,141 @@ msgstr "A(z) %s nevű könyvtár nem Ãrható"
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "Az ideiglenes könyvtár új beállÃtásai az Audacity újraindÃtásakor lépnek érvénybe."
-#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
-msgid "Import / Export"
-msgstr "Importálás / Exportálás"
-
-#: prefs/FileFormatPrefs.cpp:84
-msgid "MP3 Export Library"
-msgstr "MP3 exportálás könyvtár"
-
-#: prefs/FileFormatPrefs.cpp:87
-msgid "MP3 Library Version:"
-msgstr "MP3 könyvtár verziója:"
-
-#: prefs/FileFormatPrefs.cpp:93
-msgid "MP3 Library:"
-msgstr "MP3 könyvtár:"
-
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:98
-msgid "LAME MP3 Library:"
-msgstr "LAME MP3 könyvtár:"
-
-#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
-msgid "&Download"
-msgstr "&Letöltés"
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:136
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:137
-msgid "When importing audio files"
-msgstr "Hangfájlok importálásakor"
-
-#: prefs/FileFormatPrefs.cpp:140
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:141
-msgid "&Read uncompressed audio files directly from the original (faster)"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:143
-msgid "&Normalize all tracks in project"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:148
-msgid "When saving a project that depends on other audio files"
-msgstr ""
+#: prefs/GUIPrefs.cpp:42
+msgid "In Browser"
+msgstr "BöngészÅben"
-#: prefs/FileFormatPrefs.cpp:151
-msgid "Always © all audio into project (safest)"
-msgstr ""
+#: prefs/GUIPrefs.cpp:43
+msgid "From Internet"
+msgstr "InternetrÅl"
-#: prefs/FileFormatPrefs.cpp:152
-msgid "&Do not copy any audio"
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:153
-msgid "&Ask user"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:157
-msgid "When exporting tracks to an audio file"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:160
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:161
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:163
-msgid "S&how Metadata Editor prior to export step"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
msgstr ""
-#: prefs/GUIPrefs.cpp:34 prefs/GUIPrefs.cpp:35
-msgid "Interface"
-msgstr "Felület"
+#: prefs/GUIPrefs.cpp:141
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 dB (szűk tartomány a nagy-jelszintű szerkesztéshez)"
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
-msgstr "BöngészÅben"
+#: prefs/GUIPrefs.cpp:142
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 dB (a 8 bites PCM-kódolású hangminták dinamika-tartománya)"
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
-msgstr "InternetrÅl"
+#: prefs/GUIPrefs.cpp:143
+msgid "-60 dB (PCM range of 10 bit samples)"
+msgstr "-60 dB (a 10 bites PCM-kódolású hangminták dinamika-tartománya)"
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
-msgstr "Egyszerű"
+#: prefs/GUIPrefs.cpp:144
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 dB (a 16 bites PCM-kódolású hangminták dinamika-tartománya)"
-#: prefs/GUIPrefs.cpp:94
-msgid "&Update display while playing"
-msgstr ""
+#: prefs/GUIPrefs.cpp:145
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 dB (az emberi hallás becsült határa)"
-#: prefs/GUIPrefs.cpp:96
-msgid "Cl&osing last window quits Audacity"
-msgstr ""
+#: prefs/GUIPrefs.cpp:146
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB (a 24 bites PCM-kódolású hangminták dinamika-tartománya)"
-#: prefs/GUIPrefs.cpp:98
-msgid "Enable &dragging of left and right selection edges"
+#: prefs/SpectrumPrefs.cpp:140
+msgid "Display"
msgstr ""
#: prefs/GUIPrefs.cpp:100
msgid "Er&gonomic order of audio I/O buttons"
msgstr ""
-#: prefs/GUIPrefs.cpp:102
-msgid "Automatically &fit tracks vertically zoomed"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
msgstr ""
-#: prefs/GUIPrefs.cpp:104
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
msgstr ""
-#: prefs/GUIPrefs.cpp:106
-msgid "Editing a &clip can move other clips"
+#: prefs/GUIPrefs.cpp:167
+msgid "Help:"
msgstr ""
-#: prefs/GUIPrefs.cpp:108
-msgid "&Select all audio in project, if none selected"
+#: prefs/GUIPrefs.cpp:96
+msgid "Cl&osing last window quits Audacity"
msgstr ""
#: prefs/GUIPrefs.cpp:110
msgid "&Beep on completion of longer activities"
msgstr ""
-#: prefs/GUIPrefs.cpp:114
-msgid "Show / Hide"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:116
-msgid "Enable cut &lines"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:118
-msgid "Show warnings about &temp files"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:122
-msgid "Show &Welcome Message at program start up"
-msgstr ""
-
#: prefs/GUIPrefs.cpp:126
msgid "Modes"
+msgstr "Módok"
+
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
msgstr ""
#: prefs/GUIPrefs.cpp:129
msgid "Don't a&pply effects in batch mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:141
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 dB (szűk tartomány a nagy-jelszintű szerkesztéshez)"
+#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
+msgid "Import / Export"
+msgstr "Importálás / Exportálás"
-#: prefs/GUIPrefs.cpp:142
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 dB (a 8 bites PCM-kódolású hangminták dinamika-tartománya)"
+#: prefs/FileFormatPrefs.cpp:137
+msgid "When importing audio files"
+msgstr "Hangfájlok importálásakor"
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
+#: prefs/FileFormatPrefs.cpp:140
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
msgstr ""
-#: prefs/GUIPrefs.cpp:144
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 dB (a 16 bites PCM-kódolású hangminták dinamika-tartománya)"
+#: prefs/FileFormatPrefs.cpp:141
+msgid "&Read uncompressed audio files directly from the original (faster)"
+msgstr ""
-#: prefs/GUIPrefs.cpp:145
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 dB (az emberi hallás becsült határa)"
+#: prefs/FileFormatPrefs.cpp:143
+msgid "&Normalize all tracks in project"
+msgstr ""
-#: prefs/GUIPrefs.cpp:146
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB (a 24 bites PCM-kódolású hangminták dinamika-tartománya)"
+#: prefs/FileFormatPrefs.cpp:157
+msgid "When exporting tracks to an audio file"
+msgstr ""
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
+#: prefs/FileFormatPrefs.cpp:160
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
msgstr ""
-#: prefs/GUIPrefs.cpp:164
-msgid "Other interface choices"
+#: prefs/FileFormatPrefs.cpp:161
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
msgstr ""
-#: prefs/GUIPrefs.cpp:167
-msgid "Help:"
+#: prefs/FileFormatPrefs.cpp:163
+msgid "S&how Metadata Editor prior to export step"
msgstr ""
-#: prefs/GUIPrefs.cpp:168
-msgid "Solo Button:"
+#: prefs/ImportExportPrefs.cpp:84
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
msgstr ""
#: prefs/KeyConfigPrefs.cpp:64 prefs/KeyConfigPrefs.cpp:65
@@ -7482,17 +7599,22 @@ msgstr "Megjegyzés: A Cmd+Q megnyomásával kilépsz. Minden más bilentyű eng
msgid "&Defaults"
msgstr "&Alapértékek"
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr ""
+
#: prefs/KeyConfigPrefs.cpp:143
msgid "Key Combination"
msgstr "Billentyűkombináció"
-#: prefs/KeyConfigPrefs.cpp:163
-msgid "Export Keyboard Shortcuts As:"
-msgstr "Billentyűparancsok exportálása, mint: "
+#: prefs/KeyConfigPrefs.cpp:369 toolbars/EditToolBar.cpp:144
+msgid "Undo"
+msgstr "Visszavonás"
-#: prefs/KeyConfigPrefs.cpp:183
-msgid "Error saving keyboard shortcuts"
-msgstr "Hiba a billentyűparancsok mentésekor"
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr ""
#: prefs/KeyConfigPrefs.cpp:198
msgid "Select an XML file containing Audacity keyboard shortcuts..."
@@ -7502,6 +7624,14 @@ msgstr "Válassz ki egy XML fájlt, amelyik az Audacity billentyűparancsait tar
msgid "Error loading keyboard shortcuts"
msgstr "Hiba a billentyűparancsok betöltésekor"
+#: prefs/KeyConfigPrefs.cpp:163
+msgid "Export Keyboard Shortcuts As:"
+msgstr "Billentyűparancsok exportálása, mint: "
+
+#: prefs/KeyConfigPrefs.cpp:183
+msgid "Error saving keyboard shortcuts"
+msgstr "Hiba a billentyűparancsok mentésekor"
+
#: prefs/KeyConfigPrefs.cpp:243
#, c-format
msgid "The keyboard shortcut '%s' is already assigned to:\n"
@@ -7509,9 +7639,62 @@ msgid "The keyboard shortcut '%s' is already assigned to:\n"
"'%s'"
msgstr ""
-#: prefs/KeyConfigPrefs.cpp:369 toolbars/EditToolBar.cpp:144
-msgid "Undo"
-msgstr "Visszavonás"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:84
+msgid "MP3 Export Library"
+msgstr "MP3 exportálás könyvtár"
+
+#: prefs/FileFormatPrefs.cpp:87
+msgid "MP3 Library Version:"
+msgstr "MP3 könyvtár verziója:"
+
+#: prefs/FileFormatPrefs.cpp:93
+msgid "MP3 Library:"
+msgstr "MP3 könyvtár:"
+
+#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:98
+msgid "LAME MP3 Library:"
+msgstr "LAME MP3 könyvtár:"
+
+#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
+msgid "&Download"
+msgstr "&Letöltés"
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr "FFmpeg importálás/exportálás könyvtár"
+
+#: prefs/FileFormatPrefs.cpp:109
+msgid "FFmpeg Library Version:"
+msgstr "FFmpeg könyvtár verzió:"
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
+msgid "FFmpeg Library:"
+msgstr "FFmpeg könyvtár:"
+
+#: prefs/AudioIOPrefs.cpp:41 prefs/AudioIOPrefs.cpp:42
+#: prefs/MidiIOPrefs.cpp:44 prefs/MidiIOPrefs.cpp:45
+msgid "Audio I/O"
+msgstr "Audió I/O"
+
+#: prefs/AudioIOPrefs.cpp:125 prefs/MidiIOPrefs.cpp:122
+msgid "Portaudio v"
+msgstr "Portaudio v"
+
+#: prefs/AudioIOPrefs.cpp:147 prefs/MidiIOPrefs.cpp:144
+msgid "Playthrough"
+msgstr ""
#: prefs/MidiIOPrefs.cpp:146
msgid "&Play other tracks while recording new one"
@@ -7525,6 +7708,10 @@ msgstr ""
msgid "&Software Playthrough (Play new track while recording it)"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:176 prefs/MidiIOPrefs.cpp:157
+msgid "Cut Preview"
+msgstr "Kivágás elÅnézete"
+
#: prefs/MidiIOPrefs.cpp:160
msgid "Play before cut region:"
msgstr ""
@@ -7533,6 +7720,10 @@ msgstr ""
msgid "Play after cut region:"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:189 prefs/MidiIOPrefs.cpp:167
+msgid "Latency"
+msgstr "Késleltetés"
+
#: prefs/MidiIOPrefs.cpp:173
msgid "Audio to buffer:"
msgstr ""
@@ -7545,6 +7736,18 @@ msgstr ""
msgid "Seek Time"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:206 prefs/MidiIOPrefs.cpp:186
+msgid "Short period:"
+msgstr "Rövid periódus:"
+
+#: prefs/AudioIOPrefs.cpp:208 prefs/MidiIOPrefs.cpp:188
+msgid "Long period:"
+msgstr "Hosszú periódus:"
+
+#: prefs/AudioIOPrefs.cpp:168 prefs/MidiIOPrefs.cpp:193
+msgid "Effects Preview"
+msgstr "Effekt elÅnézet"
+
#: prefs/MidiIOPrefs.cpp:196
msgid "Play when previewing:"
msgstr ""
@@ -7606,7 +7809,7 @@ msgstr "Dupla bal-kattintás"
#: prefs/MousePrefs.cpp:101
msgid "Select Clip or Entire Track"
-msgstr ""
+msgstr "Klip vagy az egész sáv kijelölése"
#: prefs/MousePrefs.cpp:102
msgid "Ctrl-Left-Click"
@@ -7614,7 +7817,7 @@ msgstr "Ctrl-Bal-kattintás"
#: prefs/MousePrefs.cpp:102
msgid "Set Selection Point and Play"
-msgstr ""
+msgstr "Kijelölés beállÃtása és lejátszás"
#: prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:106
#: prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:108 prefs/MousePrefs.cpp:109
@@ -7631,7 +7834,7 @@ msgstr "NagyÃtás az adott tartományra"
#: prefs/MousePrefs.cpp:105
msgid "same as right-drag"
-msgstr ""
+msgstr "mint jobb-vonszolás"
#: prefs/MousePrefs.cpp:106 prefs/MousePrefs.cpp:124
msgid "Right-Click"
@@ -7647,7 +7850,7 @@ msgstr "Jobb-vonszolás"
#: prefs/MousePrefs.cpp:107
msgid "same as left-drag"
-msgstr ""
+msgstr "mint bal-vonszolás"
#: prefs/MousePrefs.cpp:108
msgid "Shift-Drag"
@@ -7755,10 +7958,62 @@ msgstr "Ctrl-GörgÅkerék-Forgatás"
msgid "Zoom in or out"
msgstr "NagyÃtás vagy kicsinyÃtés"
+#: prefs/AudioIOPrefs.cpp:171
+msgid "Length of preview:"
+msgstr "ElÅnézet hossza:"
+
+#: prefs/AudioIOPrefs.cpp:179
+msgid "Preview before cut region:"
+msgstr "ElÅnézet a kivágott régió elÅtt:"
+
+#: prefs/AudioIOPrefs.cpp:181
+msgid "Preview after cut region:"
+msgstr "ElÅnézet a kivágott régió után:"
+
+#: prefs/AudioIOPrefs.cpp:203
+msgid "Seek Time when playing"
+msgstr ""
+
#: prefs/PrefsDialog.cpp:94
msgid "Audacity Preferences"
msgstr "Audacity BeállÃtások"
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:148
+msgid "When saving a project that depends on other audio files"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:151
+msgid "Always © all audio into project (safest)"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:152
+msgid "&Do not copy any audio"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:153
+msgid "&Ask user"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr "Automatikus mentés"
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr "Automatikus mentés idÅköze:"
+
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr "perc"
+
#: prefs/QualityPrefs.cpp:73
msgid "Rectangle"
msgstr "Négyszög"
@@ -7783,70 +8038,107 @@ msgstr "Alapértelmezett Mintavételezési frekvencia"
msgid "Default Sample Format:"
msgstr "Alapértelmezett Hangminta formátum"
-#: prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "Valós idejű mintavételezési frekvencia konverter:"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:139
-msgid "High-quality sample rate converter:"
-msgstr "CsúcsminÅségű mintavételezési frekvencia konverter"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+#, fuzzy
+msgid "Sample Rate Converter:"
+msgstr "Mintavételi ráta konvertáló"
-#: prefs/QualityPrefs.cpp:142
-msgid "Real-time dither:"
-msgstr "Valós idejű finomÃtás:"
+#: prefs/QualityPrefs.cpp:164
+msgid "Dither"
+msgstr ""
-#: prefs/QualityPrefs.cpp:145
-msgid "High-quality dither:"
-msgstr "CsúcsminÅségű finomÃtás:"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
-msgstr "Konverzió"
+#: prefs/AudioIOPrefs.cpp:149
+msgid "Overdub: &Play other tracks while recording new one"
+msgstr ""
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
-msgstr "Mintavételi ráta konvertáló"
+#: prefs/AudioIOPrefs.cpp:152
+msgid "&Hardware Playthrough: Play new track while recording it"
+msgstr ""
-#: prefs/QualityPrefs.cpp:164
-msgid "Dither"
+#: prefs/AudioIOPrefs.cpp:157
+msgid "&Software Playthrough: Play new track while recording or monitoring"
msgstr ""
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
-msgstr "Valós idejű:"
+#: prefs/AudioIOPrefs.cpp:160
+msgid "(uncheck when recording \"stereo mix\")"
+msgstr ""
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
-msgstr "CsúcsminÅség:"
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
+msgstr ""
-#: prefs/SmartRecordPrefs.cpp:37 prefs/SmartRecordPrefs.cpp:38
-msgid "Smart Recording"
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
msgstr ""
#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
msgid "Sound Activated Recording"
-msgstr ""
+msgstr "Hang által aktivált felvétel"
#: prefs/SmartRecordPrefs.cpp:71
msgid "Sound Activation Level (dB):"
-msgstr ""
+msgstr "Hang aktiválási szintje (dB):"
#: prefs/SpectrumPrefs.cpp:41 prefs/SpectrumPrefs.cpp:42
msgid "Spectrograms"
msgstr "Spektogramok"
-#: prefs/SpectrumPrefs.cpp:91
-msgid "FFT Size"
-msgstr "FFT mérete"
-
#: prefs/SpectrumPrefs.cpp:94
msgid "8 - most wideband"
msgstr "8 - a leginkább szélessávú"
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:99
msgid "256 - default"
msgstr "256 - alapérték"
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:107
msgid "32768 - most narrowband"
msgstr "32768 - a leginkább keskenysávú"
@@ -7855,40 +8147,45 @@ msgstr "32768 - a leginkább keskenysávú"
msgid "4096 - most narrowband"
msgstr "4096 - a leginkább keskenysávú"
-#: prefs/SpectrumPrefs.cpp:116
-msgid "Window type:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:93
+#, fuzzy
+msgid "Window type"
msgstr "Ablak tÃpusa:"
#: prefs/SpectrumPrefs.cpp:125
msgid "FFT Skip Points"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:140
-msgid "Display"
-msgstr ""
-
-#: prefs/SpectrumPrefs.cpp:144
-msgid "&Grayscale"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
msgstr ""
#: prefs/SpectrumPrefs.cpp:147
msgid "Minimum Frequency (Hz):"
-msgstr ""
+msgstr "Minimum frekvencia (Hz):"
#: prefs/SpectrumPrefs.cpp:152
msgid "Maximum Frequency (Hz):"
msgstr "Maximális frekvencia (Hz):"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
msgstr ""
#: prefs/SpectrumPrefs.cpp:165
@@ -7897,6 +8194,14 @@ msgstr "Legkisebb apmlitudó (dB):"
#: prefs/SpectrumPrefs.cpp:170
msgid "Max. Number of Notes (1..128):"
+msgstr "Jegyzetek max. száma (1..128)"
+
+#: prefs/SpectrumPrefs.cpp:161
+msgid "&Find Notes"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Quantize Notes"
msgstr ""
#: prefs/SpectrumPrefs.cpp:197
@@ -7909,24 +8214,63 @@ msgstr "A maximális frekvencia 100 - 100,000 Hz között kell, hogy legyen"
#: prefs/SpectrumPrefs.cpp:209
msgid "The minimum frequency must be an integer"
-msgstr ""
+msgstr "A minimum frekvenciának egésznek kell lennie"
#: prefs/SpectrumPrefs.cpp:213
msgid "Minimum frequency must be at least 0 Hz"
+msgstr "A minimum frekvenciának legalább 0 Hz-nek kell lennie"
+
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
msgstr ""
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:226 prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
+#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:230
+msgid "The maximum number of notes must be in the range 1..128"
msgstr ""
#: prefs/ThemePrefs.cpp:62 prefs/ThemePrefs.cpp:63
msgid "Theme"
msgstr "Téma"
+#: prefs/ThemePrefs.cpp:126
+msgid "Info"
+msgstr "Információ"
+
+#: prefs/ThemePrefs.cpp:91
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#. i18n-hint: && in here is an escape character to get a single & on screen,
#. * so keep it as is
#: prefs/ThemePrefs.cpp:93
@@ -7957,78 +8301,94 @@ msgstr "Fájlok mentése"
msgid "Load Files"
msgstr "Fájlok betöltése"
-#: prefs/ThemePrefs.cpp:126
-msgid "Info"
-msgstr "Információ"
+#: prefs/GUIPrefs.cpp:50
+msgid "Simple"
+msgstr "Egyszerű"
-#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
+#: prefs/GUIPrefs.cpp:94
+msgid "&Update display while playing"
msgstr ""
-#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
+#: prefs/GUIPrefs.cpp:102
+msgid "Automatically &fit tracks vertically zoomed"
msgstr ""
-#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
+#: prefs/TracksPrefs.cpp:88
+msgid "Default View Mode:"
msgstr ""
-#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:108
+msgid "&Select all audio in project, if none selected"
msgstr ""
-#: toolbars/ControlToolBar.cpp:175
-msgid "Pause"
-msgstr "Szünet"
+#: prefs/GUIPrefs.cpp:116
+msgid "Enable cut &lines"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play"
-msgstr "Lejátszás"
+#: prefs/GUIPrefs.cpp:98
+msgid "Enable &dragging of left and right selection edges"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
-msgstr "Lejátszás (Shift-tel ismételt lejátszás)"
+#: prefs/GUIPrefs.cpp:104
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:106
+msgid "Editing a &clip can move other clips"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:168
+msgid "Solo Button:"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:183
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr ""
+
+#: Menus.cpp:997
+msgid "Pause"
+msgstr "Szünet"
+
+#: Menus.cpp:996
msgid "Stop"
msgstr "Ãllj"
-#: toolbars/ControlToolBar.cpp:186
-msgid "Skip to Start"
-msgstr "Ugrás a kezdetére"
+#: toolbars/ControlToolBar.cpp:195
+msgid "Clean Speech"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:189
-msgid "Skip to End"
-msgstr "Ugrás a végére"
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play (Shift for Loop Play)"
+msgstr "Lejátszás (Shift-tel ismétlÅdÅ lejátszás)"
#: toolbars/ControlToolBar.cpp:192
msgid "Record (Shift for Append Record)"
msgstr "Felvétel (Shift-tel hozzáfűzve felvétel)"
-#: toolbars/ControlToolBar.cpp:195
-msgid "Clean Speech"
-msgstr ""
-
#: toolbars/ControlToolBar.cpp:540 toolbars/ControlToolBar.cpp:869
msgid "Error while opening sound device. "
msgstr "Hiba a hangeszköz megnyitása közben. "
@@ -8059,7 +8419,7 @@ msgstr "Kijelölés átalakÃtása csenddé"
#: toolbars/EditToolBar.cpp:150
msgid "Link Tracks"
-msgstr ""
+msgstr "Sávok összekapcsolása"
#: toolbars/EditToolBar.cpp:155
msgid "Zoom In"
@@ -8069,29 +8429,21 @@ msgstr "NagyÃtás"
msgid "Zoom Out"
msgstr "KicsinyÃtés"
-#: toolbars/EditToolBar.cpp:161
-msgid "Zoom Toggle"
-msgstr "NagyÃtás/kicsinyÃtés kapcsoló"
-
-#: toolbars/EditToolBar.cpp:165
-msgid "Fit Selection"
-msgstr "Méretezés a kijelöléshez"
-
#: toolbars/EditToolBar.cpp:165
msgid "Fit selection in window"
msgstr "Kijelölés méretezése az ablakhoz igazÃtva"
#: toolbars/EditToolBar.cpp:167
-msgid "Fit Project"
-msgstr "Méretezés a projekthez"
-
-#: toolbars/EditToolBar.cpp:167
msgid "Fit project in window"
msgstr "Projekt méretezése az ablakhoz igazÃtva"
-#: toolbars/MeterToolBar.cpp:50
-msgid "Meter"
-msgstr ""
+#: toolbars/EditToolBar.cpp:165
+msgid "Fit Selection"
+msgstr "Méretezés a kijelöléshez"
+
+#: toolbars/EditToolBar.cpp:167
+msgid "Fit Project"
+msgstr "Méretezés a projekthez"
#: toolbars/MeterToolBar.cpp:80
msgid "Play Meter"
@@ -8137,6 +8489,14 @@ msgstr ""
msgid "Input Source"
msgstr "Bemenet forrása"
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:86
msgid "Selection"
msgstr "Kijelölés"
@@ -8215,30 +8575,6 @@ msgstr "Balra=NagyÃtás, Jobbra=KicsinyÃtés, Középen=Normális"
msgid "Click and drag to move a track in time"
msgstr "Kattints és mozgasd a kurzort a sáv idÅbeli elhelyézéhez"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr "Eszközök"
-
-#: toolbars/ToolsToolBar.cpp:147 toolbars/ToolsToolBar.cpp:182
-msgid "Selection Tool"
-msgstr "KijelölŠeszköz"
-
-#: toolbars/ToolsToolBar.cpp:148
-msgid "Envelope Tool"
-msgstr "Burkológörbe eszköz"
-
-#: toolbars/ToolsToolBar.cpp:149 toolbars/ToolsToolBar.cpp:183
-msgid "Time Shift Tool"
-msgstr "IdÅbeni Eltolás eszköz"
-
-#: toolbars/ToolsToolBar.cpp:150 toolbars/ToolsToolBar.cpp:185
-msgid "Zoom Tool"
-msgstr "NagyÃtó eszköz"
-
-#: toolbars/ToolsToolBar.cpp:151 toolbars/ToolsToolBar.cpp:184
-msgid "Draw Tool"
-msgstr "Rajzoló eszköz"
-
#: toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
msgstr "Multi-Eszköz mód"
@@ -8247,22 +8583,10 @@ msgstr "Multi-Eszköz mód"
msgid "Slide Tool"
msgstr "Csúsztató eszköz"
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr "Multi-Eszköz"
-
-#: toolbars/TranscriptionToolBar.cpp:84
-msgid "Transcription"
-msgstr "Ãttétel"
-
#: toolbars/TranscriptionToolBar.cpp:171
msgid "Play at selected speed"
msgstr "Lejátszás a kiválasztott sebességgel"
-#: toolbars/TranscriptionToolBar.cpp:172
-msgid "Play-at-speed"
-msgstr "Lejátszás adott sebességgel"
-
#: toolbars/TranscriptionToolBar.cpp:178 toolbars/TranscriptionToolBar.cpp:183
msgid "Playback Speed"
msgstr "Lejátszás sebessége"
@@ -8271,74 +8595,38 @@ msgstr "Lejátszás sebessége"
msgid "Adjust left selection to next onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:197
-msgid "Left-to-On"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:199
msgid "Adjust right selection to previous offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:200
-msgid "Right-to-Off"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:202
msgid "Adjust left selection to next offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:203
-msgid "Left-to-Off"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:205
msgid "Adjust right selection to previous onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:206
-msgid "Right-to-On"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:208
msgid "Select region of sound around cursor"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:209
-msgid "Select-Sound"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:211
msgid "Select region of silence around cursor"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:212
-msgid "Select-Silence"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:214
msgid "Automatically make labels from words"
msgstr "CÃmkék automatikus létrehozása szavakból"
-#: toolbars/TranscriptionToolBar.cpp:215
-msgid "Make Labels"
-msgstr "CÃmkék létrehozása"
-
#: toolbars/TranscriptionToolBar.cpp:217
msgid "Add label at selection"
msgstr "CÃmke hozzáadása a kijelölésnél"
-#: toolbars/TranscriptionToolBar.cpp:218
-msgid "Add Label"
-msgstr "CÃmke hozzáadása"
-
#: toolbars/TranscriptionToolBar.cpp:220
msgid "Calibrate voicekey"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:221
-msgid "Calibrate"
-msgstr "Kalibrálás"
-
#: toolbars/TranscriptionToolBar.cpp:225
msgid "Adjust Sensitivity"
msgstr "Ãrzékenység állÃtása"
@@ -8371,6 +8659,46 @@ msgstr ""
msgid "Key type"
msgstr ""
+#: toolbars/TranscriptionToolBar.cpp:172
+msgid "Play-at-speed"
+msgstr "Lejátszás adott sebességgel"
+
+#: toolbars/TranscriptionToolBar.cpp:197
+msgid "Left-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:200
+msgid "Right-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:203
+msgid "Left-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:206
+msgid "Right-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:209
+msgid "Select-Sound"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:212
+msgid "Select-Silence"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:215
+msgid "Make Labels"
+msgstr "CÃmkék létrehozása"
+
+#: toolbars/TranscriptionToolBar.cpp:218
+msgid "Add Label"
+msgstr "CÃmke hozzáadása"
+
+#: toolbars/TranscriptionToolBar.cpp:221
+msgid "Calibrate"
+msgstr "Kalibrálás"
+
#: widgets/AButton.cpp:303
msgid " (disabled)"
msgstr " (tiltva)"
@@ -8490,7 +8818,7 @@ msgstr ""
#: widgets/Meter.cpp:1146
msgid "Meter refresh rate per second [1-100]: "
-msgstr ""
+msgstr "MérÅ frissÃtése másodpercenként [1-100]"
#: widgets/Meter.cpp:1147
msgid "Meter Preferences"
@@ -8502,19 +8830,19 @@ msgstr " Kérem válasszon egy akciót "
#: widgets/MultiDialog.cpp:86
msgid "Please select an action"
-msgstr ""
+msgstr "Kérem válasszon egy akciót"
#: widgets/ProgressDialog.cpp:97
msgid "Elapsed Time:"
-msgstr ""
+msgstr "Eltelt idÅ:"
#: widgets/ProgressDialog.cpp:117
msgid "Remaining Time:"
-msgstr ""
+msgstr "HátraévÅ idÅ:"
#: widgets/ProgressDialog.cpp:134
msgid "Cancel"
-msgstr ""
+msgstr "Mégse"
#: widgets/Ruler.cpp:1445 widgets/Ruler.cpp:1446
msgid "Vertical Ruler"
@@ -8555,7 +8883,7 @@ msgstr "0100 nap 024 ó 060 p 060 mp"
#. * minutes, seconds and hundreths of a second (1/100 second)
#: widgets/TimeTextCtrl.cpp:288
msgid "hh:mm:ss + hundredths"
-msgstr ""
+msgstr "óó:pp:mm + századmásodperc"
#. i18n-hint: Format string for displaying time in hours, minutes, seconds
#. * and hundredths of a second. Change the 'h' to the abbreviation for hours,
@@ -8564,7 +8892,7 @@ msgstr ""
#. * unless there aren't 60 minutes in an hour in your locale
#: widgets/TimeTextCtrl.cpp:294
msgid "0100 h 060 m 060.0100 s"
-msgstr ""
+msgstr "0100 ó 060 p 060.0100 mp"
#. i18n-hint: Name of time display format that shows time in hours,
#. * minutes, seconds and milliseconds (1/1000 second)
@@ -8760,3 +9088,15 @@ msgstr "Hiba: %hs a %lu. sorban"
msgid "Could not load file: \"%s\""
msgstr "Nem lehet betölteni ezt a fájlt: \"%s\""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
+
diff --git a/locale/id.po b/locale/id.po
index 2b3ae7c..f1e5f58 100644
--- a/locale/id.po
+++ b/locale/id.po
@@ -1,7 +1,8 @@
msgid ""
-msgstr "Project-Id-Version: Indo 1.0\n"
+msgstr ""
+"Project-Id-Version: Indo 1.0\n"
"Report-Msgid-Bugs-To: audacity-translation at lists.sourceforge.net\n"
-"POT-Creation-Date: 2008-11-09 20:10+0000\n"
+"POT-Creation-Date: 2009-05-10 21:56+0100\n"
"PO-Revision-Date: \n"
"Last-Translator: Lukmanul Hakim <lukmanulhakim14 at gmail.com>\n"
"Language-Team: Audacityn' Indonesia <lukmanulhakim14 at gmail.com>\n"
@@ -12,8 +13,8 @@ msgstr "Project-Id-Version: Indo 1.0\n"
"X-Poedit-Country: INDONESIA\n"
#: AboutDialog.cpp:143
-#: AudacityApp.cpp:807
-#: Menus.cpp:955
+#: AudacityApp.cpp:798
+#: Menus.cpp:960
msgid "&About Audacity..."
msgstr "&Tentang Audacity"
@@ -26,12 +27,12 @@ msgid "Audacity is a free program written by a team of volunteer <a href=\"http:
msgstr "Audacity adalah program bebas dan gratis yang dicanangkan oleh <a href=\"http://audacity.sourceforge.net/community/developers\">tim pengembang</a> di seluruh dunia. Kami berterima kasih kepada <a href=\"http://sourceforge.net\">Sourceforge.net</a>, untuk penempatan proyek kami. Audacity tersedia untuk Windows 98 atau yang lebih baru, Mac OS X, Linux, atau sistem operasi lainnya yang mirip dengan sistem operasi Unix. Audacity versi lebih lama tersedia untuk Mac OS 9."
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
-msgstr "Ini adalah program versi beta. Program ini mungkin mengandung beberapa bug dan fitur yang belum sempurna. Kami mengharapkan pendapat Anda. Mohon kirimkan laporan bug dan permintaan fitur ke <b>feedback at audacityteam.org</b>. Untuk bantuan menggunakan Audacity, silahkan kunjungi <a href=\"http://audacityteam.org/forum/\">Forum</a> kami."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgstr "Ini adalah program versi beta. Program ini mungkin mengandung beberapa bug dan fitur yang belum sempurna. Kami mengharapkan pendapat Anda. Mohon kirimkan laporan bug dan permintaan fitur ke alamat <a href=\"mailto:feedback at audacityteam.org\">Tanggapan</a> kami. Untuk bantuan menggunakan Audacity, silahkan kunjungi <a href=\"http://audacityteam.org/forum/\">Forum</a> kami."
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
-msgstr "Ini adalah versi yang sudah stabil. Tetapi, jika Anda menemukan bug atau mempunyai saran, silahkan hubungi ke <b>feedback at audacityteam.org</b>. Untuk bantuan menggunakan Audacity, silahkan kunjungi <a href=\"http://audacityteam.org/forum/\">Forum</a> kami."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgstr "Ini adalah versi yang sudah stabil. Tetapi, jika Anda menemukan bug atau mempunyai saran, silahkan hubungi ke alamat <a href=\"mailto:feedback at audacityteam.org\">Tanggapan</a> kami. Untuk bantuan menggunakan Audacity, silahkan kunjungi <a href=\"http://audacityteam.org/forum/\">Forum</a> kami."
#. i18n-hint: The translation of "translator_credits" will appear
#. in the credits in the About Audacity window. Use this to add
@@ -83,8 +84,8 @@ msgid "Special thanks:"
msgstr "Terima kasih untuk:"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
-msgstr "Perangkat lunak <b>Audacity®</b> adalah hak cipta © 1999-2008 Audacity Team. <br>Nama <b>Audacity®</b> adalah merk terdaftar oleh Dominic Mazzoni."
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgstr "Perangkat lunak <b>Audacity®</b> adalah hak cipta © Tim Audacity 1999-2008. <br>Nama <b>Audacity®</b> adalah merk terdaftar dari Dominic Mazzoni."
#: AboutDialog.cpp:258
msgid "Audacity"
@@ -93,7 +94,7 @@ msgstr "Audacity"
#. i18n-hint: Information about when audacity was compiled
#: AboutDialog.cpp:304
#: AboutDialog.cpp:317
-#: AboutDialog.cpp:473
+#: AboutDialog.cpp:468
msgid "Build Information"
msgstr "Informasi Perubahan"
@@ -153,183 +154,192 @@ msgstr "Referensi Penting"
msgid "Sample rate conversion"
msgstr "Konversi Sample Rate"
-#: AboutDialog.cpp:402
-#: AboutDialog.cpp:405
+#: AboutDialog.cpp:401
msgid "Audio playback and recording"
msgstr "Pemproduksian Audio dan Perekaman"
-#: AboutDialog.cpp:418
+#: AboutDialog.cpp:413
msgid "Features"
msgstr "Fitur"
-#: AboutDialog.cpp:422
+#: AboutDialog.cpp:417
+#: AboutDialog.cpp:420
#: AboutDialog.cpp:425
-#: AboutDialog.cpp:430
+#: AboutDialog.cpp:428
#: AboutDialog.cpp:433
-#: AboutDialog.cpp:438
+#: AboutDialog.cpp:436
#: AboutDialog.cpp:441
-#: AboutDialog.cpp:446
-#: AboutDialog.cpp:449
+#: AboutDialog.cpp:444
msgid "Plug-in support"
msgstr "Dukungan Plug-in"
-#: AboutDialog.cpp:454
-#: AboutDialog.cpp:457
+#: AboutDialog.cpp:449
+#: AboutDialog.cpp:452
msgid "Sound card mixer support"
msgstr "Dukungan Sound card mixer"
-#: AboutDialog.cpp:462
-#: AboutDialog.cpp:465
+#: AboutDialog.cpp:457
+#: AboutDialog.cpp:460
msgid "Pitch and Tempo Change support"
msgstr "Dukungan Perubahan Pitch dan Tempo"
-#: AboutDialog.cpp:477
+#: AboutDialog.cpp:472
msgid "Program build date: "
msgstr "Tangga perubahan program:"
-#: AboutDialog.cpp:480
-#: AboutDialog.cpp:482
+#: AboutDialog.cpp:475
+#: AboutDialog.cpp:477
msgid "Build type:"
msgstr "Tipe perubahan:"
-#: AboutDialog.cpp:480
+#: AboutDialog.cpp:475
msgid "Debug build"
msgstr "Pembuangan bug"
-#: AboutDialog.cpp:482
+#: AboutDialog.cpp:477
msgid "Release build"
msgstr "Rilis"
#. i18n-hint: The directory audacity is installed into (on *nix systems)
-#: AboutDialog.cpp:487
+#: AboutDialog.cpp:482
msgid "Installation Prefix: "
msgstr "Awalan Instalasi:"
-#: AboutDialog.cpp:491
+#: AboutDialog.cpp:486
msgid "Settings folder: "
msgstr "Folder pengaturan:"
-#: AboutDialog.cpp:506
+#: AboutDialog.cpp:501
msgid "GPL License"
msgstr "Lisensi GPL"
-#: AudacityApp.cpp:507
-#: Project.cpp:1844
+#: AudacityApp.cpp:500
+#: Project.cpp:2026
#, c-format
msgid "%s is already open in another window."
msgstr "%s sudah dibuka di window yang lain."
-#: AudacityApp.cpp:509
-#: Project.cpp:1846
-#: Project.cpp:1951
-#: Project.cpp:2095
-#: Project.cpp:2232
+#: AudacityApp.cpp:502
+#: Project.cpp:2028
+#: Project.cpp:2148
+#: Project.cpp:2296
+#: Project.cpp:2428
msgid "Error opening project"
msgstr "Error dalam membuka proyek"
-#: AudacityApp.cpp:541
+#: AudacityApp.cpp:528
#, c-format
-msgid "%s does not exist and could not be opened.\n"
+msgid ""
+"%s does not exist and could not be opened.\n"
"\n"
"It has been removed from the history list."
-msgstr "%s tidak ada dan tidak bisa dibuka.\n"
+msgstr ""
+"%s tidak ada dan tidak bisa dibuka.\n"
"\n"
"Ini sudah dibuang dari daftar history."
-#: AudacityApp.cpp:643
+#: AudacityApp.cpp:637
msgid "Master Gain Control"
msgstr "Pengendali Master"
-#: AudacityApp.cpp:644
+#: AudacityApp.cpp:638
msgid "Input Meter"
msgstr "Meter Input"
-#: AudacityApp.cpp:645
+#: AudacityApp.cpp:639
msgid "Output Meter"
msgstr "Meter Output"
#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#: AudacityApp.cpp:809
-msgid "&Preferences...\tCtrl+,"
-msgstr "&Preferensi...\tCtrl+,"
+#: AudacityApp.cpp:800
+msgid "&Preferences..."
+msgstr "&Preferensi..."
-#: AudacityApp.cpp:901
-#: AudacityApp.cpp:978
+#: AudacityApp.cpp:890
+#: AudacityApp.cpp:967
#, c-format
msgid "Using block size of %ld\n"
msgstr "Menggunakan ukuran blok %ld\n"
-#: AudacityApp.cpp:923
-#: AudacityApp.cpp:993
+#: AudacityApp.cpp:912
+#: AudacityApp.cpp:982
#, c-format
msgid "Unknown command line option: %s\n"
msgstr "Opsi baris komando tidak diketahui: %s\n"
-#: AudacityApp.cpp:1127
-msgid "Audacity could not find a place to store temporary files.\n"
+#: AudacityApp.cpp:1116
+msgid ""
+"Audacity could not find a place to store temporary files.\n"
"Please enter an appropriate directory in the preferences dialog."
-msgstr "Audacity tidak bisa mencari tempat untuk meletakkan file temporary.\n"
+msgstr ""
+"Audacity tidak bisa mencari tempat untuk meletakkan file temporary.\n"
"Tolong masukkan direktori yang benar ke dalam dialog preferensi."
-#: AudacityApp.cpp:1133
+#: AudacityApp.cpp:1122
msgid "Audacity is now going to exit. Please launch Audacity again to use the new temporary directory."
msgstr "Audacity sekarang ingin keluar. Tolong aktifkan Audacity kembali untuk menggunakan direktori file temporary yang baru."
-#: AudacityApp.cpp:1165
-msgid "Running two copies of Audacity simultaneously may cause\n"
+#: AudacityApp.cpp:1154
+msgid ""
+"Running two copies of Audacity simultaneously may cause\n"
"data loss or cause your system to crash.\n"
"\n"
-msgstr "Menjalankan dua Audacity yang sama sekaligus dapat menyebabkan\n"
+msgstr ""
+"Menjalankan dua Audacity yang sama sekaligus dapat menyebabkan\n"
"hilangnya data atau dapat merusak sistem Anda.\n"
"\n"
-#: AudacityApp.cpp:1172
-msgid "Audacity was not able to lock the temporary files directory.\n"
+#: AudacityApp.cpp:1161
+msgid ""
+"Audacity was not able to lock the temporary files directory.\n"
"This folder may be in use by another copy of Audacity.\n"
-msgstr "Audacity tidak bisa mengunci direktori file temporary.\n"
+msgstr ""
+"Audacity tidak bisa mengunci direktori file temporary.\n"
"Folder ini mungkin digunakan oleh program Audacity yang Lain.\n"
-#: AudacityApp.cpp:1174
+#: AudacityApp.cpp:1163
msgid "Do you still want to start Audacity?"
msgstr "Anda ingin tetap menjalankan Audacity?"
-#: AudacityApp.cpp:1176
+#: AudacityApp.cpp:1165
msgid "Error locking temporary folder"
msgstr "Error dalam mengunci folder temporary"
-#: AudacityApp.cpp:1214
+#: AudacityApp.cpp:1203
msgid "The system has detected that another copy of Audacity is running.\n"
msgstr "Sistem telah mendeteksi bahwa Audacity yang lainnya sedang berjalan.\n"
-#: AudacityApp.cpp:1216
-msgid "Use the New or Open commands in the currently running Audacity\n"
+#: AudacityApp.cpp:1205
+msgid ""
+"Use the New or Open commands in the currently running Audacity\n"
"process to open multiple projects simultaneously.\n"
-msgstr "Gunakan komando Baru atau Buka waktu menjalankan\n"
+msgstr ""
+"Gunakan komando Baru atau Buka waktu menjalankan\n"
"Audacity untuk membuka beberapa proyek sekaligus.\n"
-#: AudacityApp.cpp:1217
+#: AudacityApp.cpp:1206
msgid "Audacity is already running"
msgstr "Audacity sudah berjalan"
-#: AudacityApp.cpp:1234
+#: AudacityApp.cpp:1223
msgid "Command-line options supported:"
msgstr "Dukungan opsi baris komando"
#. i18n-hint: '-help' is the option and needs to stay in
#. * English. This displays a list of available options
-#: AudacityApp.cpp:1237
+#: AudacityApp.cpp:1226
msgid "\t-help (this message)"
msgstr "\t-bantuan (pesan ini)"
#. i18n-hint '-version' needs to stay in English.
-#: AudacityApp.cpp:1239
+#: AudacityApp.cpp:1228
msgid "\t-version (display Audacity version)"
msgstr "\t-versi (tampilan versi Audacity)"
#. i18n-hint '-test' is the option and needs to stay in
#. * English. This runs a set of automatic tests on audacity
#. * itself
-#: AudacityApp.cpp:1243
+#: AudacityApp.cpp:1232
msgid "\t-test (run self diagnostics)"
msgstr "\t-test (jalankan diagnosa otomatis)"
@@ -337,66 +347,74 @@ msgstr "\t-test (jalankan diagnosa otomatis)"
#. * English. 'nnn' is any integer number. This controls the
#. * size pieces that audacity uses when writing files to the
#. * disk
-#: AudacityApp.cpp:1248
+#: AudacityApp.cpp:1237
msgid "\t-blocksize nnn (set max disk block size in bytes)"
msgstr "\t-blocksize nnn (ukuran blok pada disk maksimum dalam byte)"
-#: AudacityApp.cpp:1249
+#: AudacityApp.cpp:1238
msgid "In addition, specify the name of an audio file or Audacity project to open it."
msgstr "Tambahan, spesifikasikan nama file audio atau proyek audacity terlebih dahul untuk membukanya."
-#: AudacityApp.cpp:1529
-msgid "Audacity project (.AUP) files are not currently \n"
+#: AudacityApp.cpp:1526
+msgid ""
+"Audacity project (.AUP) files are not currently \n"
"associated with Audacity. \n"
"\n"
"Associate them, so they open on double-click?"
-msgstr "File Proyek Audacity (.AUP) tidak\n"
+msgstr ""
+"File Proyek Audacity (.AUP) tidak\n"
"berasosiasi dengan Audacity.\n"
"\n"
"Hubungkan terlebih dahulu baru file tersebut bisa dibuka dengan klik ganda?"
-#: AudacityApp.cpp:1530
+#: AudacityApp.cpp:1527
msgid "Audacity Project Files"
msgstr "File Proyek Audacity"
-#: AudioIO.cpp:254
+#: AudioIO.cpp:251
msgid "Could not find any audio devices.\n"
msgstr "Tidak dapat mencari perangkat audio.\n"
-#: AudioIO.cpp:255
-msgid "You will not be able to play or record audio.\n"
+#: AudioIO.cpp:252
+msgid ""
+"You will not be able to play or record audio.\n"
"\n"
-msgstr "Anda tidak akan bisa memainkan ataupun merekam audio.\n"
+msgstr ""
+"Anda tidak akan bisa memainkan ataupun merekam audio.\n"
"\n"
-#: AudioIO.cpp:258
+#: AudioIO.cpp:255
msgid "Error: "
msgstr "Error:"
-#: AudioIO.cpp:261
+#: AudioIO.cpp:258
msgid "Error Initializing Audio"
msgstr "Error Menginisialisasi audio"
-#: AudioIO.cpp:1375
-msgid "Latency problem"
-msgstr "Masalah Laten"
-
-#: AudioIO.cpp:1375
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
+#: AudioIO.cpp:1242
+msgid ""
+"Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
"Audacity has brought it back to start at zero.\n"
"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
-msgstr "Aturan yang laten telah menyebabkan audio yang direkam menghilang.\n"
-"Audacity telah mengembalikan mulai dari nol.\n"
+msgstr ""
+"Aturan perbaikan laten telah menyebabkan audio yang direkam dihilangkan sebelum nol.\n"
+"Audacity telah mengembalikannya untuk mulai dari nol.\n"
"Anda bisa menggunakan Alat Time Shift (<--> atau F5) untuk memindahkan trak ke tempat yang tepat."
+#: AudioIO.cpp:1242
+msgid "Latency problem"
+msgstr "Masalah Laten"
+
#: AutoRecovery.cpp:54
msgid "Automatic Crash Recovery"
msgstr "Pengembalian Otomatis Akibat Crash"
#: AutoRecovery.cpp:73
-msgid "Some projects were not saved properly the last time Audacity was run.\n"
+msgid ""
+"Some projects were not saved properly the last time Audacity was run.\n"
"Fortunately, the following projects can automatically be recovered:"
-msgstr "Beberapa proyek tidak disimpan sebelumnya waktu Audacity terakhir dijalankan.\n"
+msgstr ""
+"Beberapa proyek tidak disimpan sebelumnya waktu Audacity terakhir dijalankan.\n"
"Pada yang akan datang, proyek-proyek ini bisa dikembalikan secara otomatis:"
#: AutoRecovery.cpp:75
@@ -404,7 +422,6 @@ msgid "Recoverable projects"
msgstr "Proyek yang dipindahkan"
#: AutoRecovery.cpp:78
-#: Tags.cpp:2041
msgid "Name"
msgstr "Nama"
@@ -425,9 +442,11 @@ msgid "Recover Projects"
msgstr "Kembalikan proyek-proyek"
#: AutoRecovery.cpp:127
-msgid "Are you sure you don't want to recover any projects?\n"
+msgid ""
+"Are you sure you don't want to recover any projects?\n"
"They can't be recovered later."
-msgstr "Apakah Anda yakin tidak mau mengembalikan proyek apapun?\n"
+msgstr ""
+"Apakah Anda yakin tidak mau mengembalikan proyek apapun?\n"
"Proyek tersebut tidak akan bisa dikembalikan lagi."
#: AutoRecovery.cpp:128
@@ -441,24 +460,25 @@ msgstr "Tidak bisa enumerasi file dalam direkroti simpan otomatis"
#: AutoRecovery.cpp:147
#: AutoRecovery.cpp:184
-#: Menus.cpp:3053
-#: Menus.cpp:3065
-#: Menus.cpp:5182
-#: Project.cpp:2054
-#: Project.cpp:3615
-#: Project.cpp:3694
-#: TrackPanel.cpp:6385
-#: WaveTrack.cpp:598
-#: WaveTrack.cpp:617
-#: WaveTrack.cpp:1058
-#: WaveTrack.cpp:1077
-#: WaveTrack.cpp:2087
-#: effects/Effect.cpp:513
-#: export/ExportMP2.cpp:233
-#: prefs/DirectoriesPrefs.cpp:189
-#: prefs/KeyConfigPrefs.cpp:247
-#: toolbars/ControlToolBar.cpp:542
-#: toolbars/ControlToolBar.cpp:871
+#: Menus.cpp:3155
+#: Menus.cpp:3167
+#: Menus.cpp:5230
+#: Project.cpp:2255
+#: Project.cpp:3875
+#: Project.cpp:3961
+#: TrackPanel.cpp:6493
+#: WaveTrack.cpp:979
+#: WaveTrack.cpp:998
+#: WaveTrack.cpp:2024
+#: effects/Contrast.cpp:136
+#: effects/Contrast.cpp:146
+#: effects/Effect.cpp:537
+#: export/ExportFFmpeg.cpp:654
+#: export/ExportMP2.cpp:231
+#: prefs/DirectoriesPrefs.cpp:195
+#: prefs/KeyConfigPrefs.cpp:331
+#: toolbars/ControlToolBar.cpp:551
+#: toolbars/ControlToolBar.cpp:883
msgid "Error"
msgstr "Error"
@@ -470,7 +490,6 @@ msgstr "Pilih Komando"
#: BatchCommandDialog.cpp:82
#: BatchProcessDialog.cpp:454
-#: prefs/KeyConfigPrefs.cpp:142
msgid "&Command"
msgstr "&Komando"
@@ -487,50 +506,54 @@ msgstr "&Parameter"
msgid "C&hoose command"
msgstr "P&ilih Komando"
-#: BatchCommands.cpp:456
+#: BatchCommands.cpp:455
msgid "Stereo to Mono Effect not found"
msgstr "Efek Stereo ke Mono tidak ditemukan"
-#: BatchCommands.cpp:476
+#: BatchCommands.cpp:475
msgid "Ogg Vorbis support is not included in this build of Audacity"
msgstr "Dukungan Ogg Vorbis tidak dimasukkan di dalam Audacity"
-#: BatchCommands.cpp:488
+#: BatchCommands.cpp:487
msgid "FLAC support is not included in this build of Audacity"
msgstr "Dukungan FLAC tidak dimasukkan di dalam Audacity"
-#: BatchCommands.cpp:492
+#: BatchCommands.cpp:491
#, c-format
msgid "Command %s not implemented yet"
msgstr "Komando %s belum bisa diimplementasikan"
-#: BatchCommands.cpp:508
+#: BatchCommands.cpp:507
#, c-format
-msgid "Could not set parameters of effect %s\n"
+msgid ""
+"Could not set parameters of effect %s\n"
" to %s."
-msgstr "Tidak dapat mengatur parameters efek %s\n"
+msgstr ""
+"Tidak dapat mengatur parameters efek %s\n"
"ke %s."
-#: BatchCommands.cpp:561
+#: BatchCommands.cpp:560
#, c-format
msgid "Your batch command of %s was not recognised."
msgstr "%s Komando Anda tidak bisa dijalankan."
-#: BatchCommands.cpp:652
+#: BatchCommands.cpp:651
#, c-format
-msgid "Apply %s with parameter(s)\n"
+msgid ""
+"Apply %s with parameter(s)\n"
"\n"
"%s"
-msgstr "Mengaplikasikan %s dengan (beberapa) parameter\n"
+msgstr ""
+"Mengaplikasikan %s dengan (beberapa) parameter\n"
"\n"
"%s"
-#: BatchCommands.cpp:653
-#: BatchCommands.cpp:658
+#: BatchCommands.cpp:652
+#: BatchCommands.cpp:657
msgid "Test Mode"
msgstr "Mode Percobaan"
-#: BatchCommands.cpp:657
+#: BatchCommands.cpp:656
#, c-format
msgid "Apply %s"
msgstr "Mengaplikasikan %s"
@@ -563,10 +586,6 @@ msgstr "Aplikasikan ke &File"
#: BatchProcessDialog.cpp:108
#: BatchProcessDialog.cpp:247
-#: Tags.cpp:2080
-#: Tags.cpp:2084
-#: Tags.cpp:2384
-#: Tags.cpp:2388
#: UploadDialog.cpp:180
#: effects/AvcCompressor.cpp:732
#: effects/ChangeLength.cpp:183
@@ -625,18 +644,14 @@ msgid "&Chains"
msgstr "&Untaian"
#: BatchProcessDialog.cpp:435
-#: Tags.cpp:826
-#: Tags.cpp:1465
-#: Tags.cpp:2064
+#: Tags.cpp:820
msgid "&Add"
msgstr "&Tambah"
#: BatchProcessDialog.cpp:436
#: LabelDialog.cpp:128
-#: Tags.cpp:827
-#: Tags.cpp:1466
-#: Tags.cpp:2065
-#: TrackPanel.cpp:4176
+#: Tags.cpp:821
+#: TrackPanel.cpp:4261
msgid "&Remove"
msgstr "&Buang"
@@ -650,8 +665,8 @@ msgstr "Un&taiann (Klik ganda atau tekan SPASI untuk edit)"
#. i18n-hint: This is the number of the command in the list
#: BatchProcessDialog.cpp:453
-msgid "No"
-msgstr "Tidak"
+msgid "Num"
+msgstr "No"
#: BatchProcessDialog.cpp:459
msgid "&Insert"
@@ -712,283 +727,299 @@ msgstr "Menghapus Ketergantungan"
msgid "Copying audio data into project..."
msgstr "Menyalin data audio ke proyek..."
-#: Dependencies.cpp:223
-msgid "Your project currently depends on the presence of other files.\n"
+#: Dependencies.cpp:226
+msgid ""
+"Your project currently depends on the presence of other files.\n"
"Copy audio from the following files into your project to make it self-contained?\n"
"This will need more disc space but is safer."
-msgstr "Proyek Anda membutuhkan file lainnya.\n"
+msgstr ""
+"Proyek Anda membutuhkan file lainnya.\n"
"Salin audio dari file tersebut ke dalam proyek Anda supaya proyek anda terisi sendiri?\n"
"Ini akan membutuhkan ruang lebig besar, tetapi lebih aman."
-#: Dependencies.cpp:270
+#: Dependencies.cpp:273
msgid "Project depends on other audio files"
msgstr "Proyek membutuhkan file audio lainnya"
-#: Dependencies.cpp:291
+#: Dependencies.cpp:294
msgid "Project Dependencies"
msgstr "Ketergantungan Proyek"
-#: Dependencies.cpp:294
+#: Dependencies.cpp:297
msgid "Audio file"
msgstr "File audio"
-#: Dependencies.cpp:296
+#: Dependencies.cpp:299
msgid "Disk space"
msgstr "Ruang disk"
-#: Dependencies.cpp:301
+#: Dependencies.cpp:304
msgid "Copy Selected Audio Into Project"
msgstr "Menyalin Audio yang Dipilih ke dalam Proyek"
-#: Dependencies.cpp:308
-#: Dependencies.cpp:414
+#: Dependencies.cpp:311
+#: Dependencies.cpp:417
msgid "Cancel Save"
msgstr "Batalkan Penyimpanan"
-#: Dependencies.cpp:310
+#: Dependencies.cpp:313
msgid "Do Not Copy Any Audio"
msgstr "Jangan Salin Audio Apapun"
-#: Dependencies.cpp:312
+#: Dependencies.cpp:315
msgid "Copy All Audio into Project (Safer)"
msgstr "Salin Semua Audio ke dalam Proyek (Lebih Aman)"
-#: Dependencies.cpp:321
-#: Dependencies.cpp:326
+#: Dependencies.cpp:324
+#: Dependencies.cpp:329
msgid "Ask me"
msgstr "Tanya saya"
-#: Dependencies.cpp:322
+#: Dependencies.cpp:325
msgid "Always copy all audio (safest)"
msgstr "Selalu salin semua audio (paling aman)"
-#: Dependencies.cpp:323
+#: Dependencies.cpp:326
msgid "Never copy any audio"
msgstr "Tidak pernah menyalin audio apapun"
-#: Dependencies.cpp:325
+#: Dependencies.cpp:328
msgid "Whenever a project depends on other files:"
msgstr "Ketika proyek membutuhkan file lainnya:"
-#: Dependencies.cpp:413
+#: Dependencies.cpp:416
msgid "If you proceed, your project will not be saved to disk. Is this what you want?"
msgstr "Proyek Anda tidak akan disimpad di disk. Itukan yang Anda mau?"
-#: Dependencies.cpp:453
+#: Dependencies.cpp:456
msgid "Your project is self-contained; it does not depend on any external audio files."
msgstr "Proyek Anda terisi sendiri; proyek ini tidak membutuhkan file audio eksternal apapun."
-#: Dependencies.cpp:454
+#: Dependencies.cpp:457
msgid "Dependency check"
msgstr "Cek ketergantungan"
-#: DirManager.cpp:137
-msgid "Warning: there is very little free disk space left on this volume.\n"
+#: DirManager.cpp:136
+msgid ""
+"Warning: there is very little free disk space left on this volume.\n"
"Please select another temporary directory in your preferences."
-msgstr "Perhatian: ruang disk yang tersisa tinggal sedikit.\n"
+msgstr ""
+"Perhatian: ruang disk yang tersisa tinggal sedikit.\n"
"Mohon pilih direktori temporer lainnya dalam preferensi Anda."
-#: DirManager.cpp:223
-#: DirManager.cpp:254
-#: DirManager.cpp:337
+#: DirManager.cpp:221
+#: DirManager.cpp:252
+#: DirManager.cpp:335
msgid "Progress"
msgstr "Kemajuan"
-#: DirManager.cpp:288
+#: DirManager.cpp:286
msgid "Cleaning up temporary files"
msgstr "Membersihkan file temporer"
-#: DirManager.cpp:338
+#: DirManager.cpp:336
msgid "Saving project data files"
msgstr "Menyimpan file data proyek"
-#: DirManager.cpp:410
+#: DirManager.cpp:408
msgid "Cleaning up cache directories"
msgstr "Membersihkan direktori cache"
-#: DirManager.cpp:505
+#: DirManager.cpp:503
#, c-format
-msgid "Audacity found an orphaned blockfile %s! \n"
+msgid ""
+"Audacity found an orphaned blockfile %s! \n"
"Please consider saving and reloading the project to perform a complete project check.\n"
-msgstr "Audacity menemukan anak file blok %s! \n"
+msgstr ""
+"Audacity menemukan anak file blok %s! \n"
"Silahkan Anda simpan dan buka kembali proyek Anda untuk melakukan pengecekan penuh.\n"
#. i18n-hint: This is the pattern for filenames that are created
#. when a file needs to be backed up to a different name. For
#. example, mysong would become mysong-old1, mysong-old2, etc.
-#: DirManager.cpp:1094
+#: DirManager.cpp:1092
#, c-format
msgid "%s-old%d"
msgstr "%s-%dlama"
-#: DirManager.cpp:1102
+#: DirManager.cpp:1100
msgid "Unable to open/create test file"
msgstr "Tidak bisa membuka atau membuat file tes"
-#: DirManager.cpp:1111
+#: DirManager.cpp:1109
#, c-format
msgid "Unable to remove '%s'"
msgstr "Tidak bisa membuang '%s'"
-#: DirManager.cpp:1116
+#: DirManager.cpp:1114
#, c-format
msgid "Renamed file: %s\n"
msgstr "File yang telah diganti nama: %s\n"
-#: DirManager.cpp:1160
+#: DirManager.cpp:1164
#, c-format
msgid "Unable to rename '%s' to '%s'"
msgstr "Tidak bisa meganti nama '%s' ke '%s'"
-#: DirManager.cpp:1183
+#: DirManager.cpp:1181
#, c-format
msgid "Changed block %s to new alias name\n"
-msgstr ""
+msgstr "Blok %s diubah ke nama alias yg baru\n"
-#: DirManager.cpp:1224
-#: DirManager.cpp:1515
+#: DirManager.cpp:1247
+#: DirManager.cpp:1538
msgid "Inspecting project file data..."
msgstr "Memeriksa data file proyek..."
-#: DirManager.cpp:1240
+#: DirManager.cpp:1263
#, c-format
msgid "Orphaned blockfile: (%s)"
msgstr "Anak file blok: (%s)"
-#: DirManager.cpp:1265
+#: DirManager.cpp:1288
#, c-format
msgid "Missing alias file: (%s)"
msgstr "File alias menghilang: (%s)"
-#: DirManager.cpp:1285
+#: DirManager.cpp:1308
#, c-format
msgid "Missing summary file: (%s.auf)"
msgstr "File rangkuman menghilang: (%s)"
-#: DirManager.cpp:1305
+#: DirManager.cpp:1328
#, c-format
msgid "Missing data file: (%s.au)"
msgstr "File data menghilang: (%s.au)"
-#: DirManager.cpp:1319
-msgid "Project check found inconsistencies inspecting the loaded project data;\n"
+#: DirManager.cpp:1342
+msgid ""
+"Project check found inconsistencies inspecting the loaded project data;\n"
"click 'Details' for a complete list of errors, or 'OK' to proceed to more options."
-msgstr "Pengecekan menemukan ketidakkonsistenan keteka memeriksa data yang diambil;\n"
+msgstr ""
+"Pengecekan menemukan ketidakkonsistenan keteka memeriksa data yang diambil;\n"
"Tekan 'Detail' untuk daftar error, atau 'OK' untuk meneruskan ke opsi lainnya."
-#: DirManager.cpp:1331
+#: DirManager.cpp:1354
#, c-format
-msgid "Project check found %d orphaned blockfile[s]. These files are\n"
+msgid ""
+"Project check found %d orphaned blockfile[s]. These files are\n"
"unused and probably left over from a crash or some other bug.\n"
"They should be deleted to avoid disk contention."
-msgstr "Pengecekan menemukan %d anak file blok. File ini tidak berguna\n"
+msgstr ""
+"Pengecekan menemukan %d anak file blok. File ini tidak berguna\n"
"dan mungkin tertinggal waktu crash atau bug lainya.\n"
"Ini harus dihapus untuk menghemat ruang disk."
-#: DirManager.cpp:1336
+#: DirManager.cpp:1359
msgid "Delete orphaned files [safe and recommended]"
msgstr "Hapus anak file [Aman dan direkomendasikan]"
-#: DirManager.cpp:1337
+#: DirManager.cpp:1360
msgid "Continue without deleting; silently work around the extra files"
msgstr "Terus tanpa penghapusan; bekerja di sekitar file tambahan secara diam-diam"
-#: DirManager.cpp:1338
+#: DirManager.cpp:1361
msgid "Close project immediately with no changes"
msgstr "Tutup proyek secepatnya tanpa perubahan"
-#: DirManager.cpp:1340
-#: DirManager.cpp:1375
-#: DirManager.cpp:1421
-#: DirManager.cpp:1463
-#: export/Export.cpp:576
-#: export/Export.cpp:597
-#: export/Export.cpp:616
-#: widgets/Warning.cpp:55
+#: DirManager.cpp:1363
+#: DirManager.cpp:1398
+#: DirManager.cpp:1444
+#: DirManager.cpp:1486
+#: export/Export.cpp:581
+#: export/Export.cpp:602
+#: export/Export.cpp:621
+#: widgets/Warning.cpp:53
msgid "Warning"
msgstr "Perhatian"
-#: DirManager.cpp:1366
+#: DirManager.cpp:1389
#, c-format
-msgid "Project check detected %d input file[s] being used in place\n"
+msgid ""
+"Project check detected %d input file[s] being used in place\n"
"('alias files') are now missing. There is no way for Audacity\n"
"to recover these files automatically; you may choose to\n"
"permanently fill in silence for the missing files, temporarily\n"
"fill in silence for this session only, or close the project now\n"
"and try to restore the missing files by hand."
-msgstr "Pengecekan menemukan file input %d yang telah digunakan\n"
+msgstr ""
+"Pengecekan menemukan file input %d yang telah digunakan\n"
"('alias file') sekarang telah menghilang. Tidak ada cara lain\n"
"selain mengembalikan file tersebut secara otomatis; Anda bisa memilih\n"
"mengosongkan file yang hilang secara permanen pada sesi ini, atau\n"
"tutup proyek ini dan coba mencari file itu sendiri."
-#: DirManager.cpp:1371
+#: DirManager.cpp:1394
msgid "Replace missing data with silence [permanent upon save]"
msgstr "Mengembalikan data yang hilang diam-diam [permanen pada penyimpanan]"
-#: DirManager.cpp:1372
-#: DirManager.cpp:1460
+#: DirManager.cpp:1395
+#: DirManager.cpp:1483
msgid "Temporarily replace missing data with silence [this session only]"
msgstr "Mengembalikan data yang hilang diam-diam secara sementara [hanya sesi ini saja]"
-#: DirManager.cpp:1373
-#: DirManager.cpp:1419
-#: DirManager.cpp:1461
+#: DirManager.cpp:1396
+#: DirManager.cpp:1442
+#: DirManager.cpp:1484
msgid "Close project immediately with no further changes"
msgstr "Tutup proyek secepatnya tanpa perubahan"
-#: DirManager.cpp:1412
+#: DirManager.cpp:1435
#, c-format
-msgid "Project check detected %d missing summary file[s] (.auf).\n"
+msgid ""
+"Project check detected %d missing summary file[s] (.auf).\n"
"Audacity can fully regenerate these summary files from the\n"
"original audio data in the project."
-msgstr "Pengecekan menemukan file rangkuman %d yang hilang (.auf).\n"
+msgstr ""
+"Pengecekan menemukan file rangkuman %d yang hilang (.auf).\n"
"Audacity bisa membuat ulang file tersebut dari data aslinya pada proyek."
-#: DirManager.cpp:1417
+#: DirManager.cpp:1440
msgid "Regenerate summary files [safe and recommended]"
msgstr "Membuat ulang file rangkuman [lebih aman dan direkomendasikan]"
-#: DirManager.cpp:1418
+#: DirManager.cpp:1441
msgid "Fill in silence for missing display data [this session only]"
msgstr "Kosongkan tampilan data yang hilang [sesi ini saja]"
-#: DirManager.cpp:1454
+#: DirManager.cpp:1477
#, c-format
-msgid "Project check detected %d missing audio data blockfile[s] (.au), \n"
+msgid ""
+"Project check detected %d missing audio data blockfile[s] (.au), \n"
"probably due to a bug, system crash or accidental deletion.\n"
"There is no way for Audacity to recover this lost data\n"
"automatically; you may choose to permanently fill in silence\n"
"for the missing data, temporarily fill in silence for this\n"
"session only, or close the project now and try to restore the\n"
"missing data by hand."
-msgstr "Pengecekan menemukan file data blok audio %d yang menghilang (.au), \n"
+msgstr ""
+"Pengecekan menemukan file data blok audio %d yang menghilang (.au), \n"
"mungkin karena bug, crash, atau ketidaksengajaan. \n"
"Tidak ada jalan lain selain mengembalikan data yang hilang\n"
"secara otomatis; Anda bisa memilih untuk tetap mengosongkan data tadi\n"
"atau secara sementara atau tutup proyek dan mencoba mengembalikannya sendiri."
-#: DirManager.cpp:1459
+#: DirManager.cpp:1482
msgid "Replace missing data with silence [permanent immediately]"
msgstr "Kosongkan data yang hilang [permanen]"
-#: DirManager.cpp:1487
+#: DirManager.cpp:1510
msgid "Cleaning up unused directories in project data..."
msgstr "Membersihkan direktori yang tak berguna apda data proyek..."
-#: DirManager.cpp:1558
+#: DirManager.cpp:1587
msgid "Caching audio"
msgstr "Membuat cache audio"
-#: DirManager.cpp:1559
+#: DirManager.cpp:1588
msgid "Caching audio into memory..."
msgstr "Membuat cache audio di memeoi..."
-#: DirManager.cpp:1592
+#: DirManager.cpp:1623
msgid "Saving recorded audio"
msgstr "Meinyimpan audio yang direkam"
-#: DirManager.cpp:1593
+#: DirManager.cpp:1624
msgid "Saving recorded audio to disk..."
msgstr "Meinyimpan audio yang direkam pada disk..."
@@ -996,254 +1027,308 @@ msgstr "Meinyimpan audio yang direkam pada disk..."
msgid "Rectangular"
msgstr "Bersiku"
-#: FFmpeg.cpp:36
+#: FFmpeg.cpp:38
msgid "FFmpeg support not compiled in"
-msgstr ""
+msgstr "Dukungan FFMpeg tidak terkompilasi"
-#: FFmpeg.cpp:101
-msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
+#: FFmpeg.cpp:103
+msgid ""
+"FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
"You may want to go back to Preferences > Import/Export and re-configure it."
msgstr ""
+"FFmpeg terkonfigurasi pada Preferensi dan diambil dengan sukses sebelumnya, \n"
+"tapi kali ini Audacity gagal mengambilnya pada awal dinyalakan. \n"
+"\n"
+"Anda butuh kembali ke Preferensi > Impor/Ekspor dan mengkonfigurasikan ulang."
-#: FFmpeg.cpp:104
+#: FFmpeg.cpp:106
msgid "FFmpeg startup failed"
-msgstr ""
+msgstr "Awalan FFMpeg gagal"
-#: FFmpeg.cpp:115
+#: FFmpeg.cpp:114
msgid "FFmpeg library not found"
msgstr "FFmpeg library not found"
-#: FFmpeg.cpp:170
+#: FFmpeg.cpp:408
msgid "Locate FFmpeg"
msgstr "Tempatkan FFmpeg"
-#: FFmpeg.cpp:190
+#: FFmpeg.cpp:428
#, c-format
msgid "Audacity needs the file %s to import and export audio via FFmpeg."
msgstr "Audacity memerlukan file %s untuk menegkspor dan mengimpor dengan FFmpeg.."
-#: FFmpeg.cpp:196
+#: FFmpeg.cpp:434
#: export/ExportMP3.cpp:562
#, c-format
msgid "Location of %s:"
msgstr "Lokasi %s:"
-#: FFmpeg.cpp:205
+#: FFmpeg.cpp:443
#: export/ExportMP3.cpp:571
#, c-format
msgid "To find %s, click here -->"
msgstr "Untuk mencari %s, click here -->"
-#: FFmpeg.cpp:211
+#: FFmpeg.cpp:449
#: export/ExportMP3.cpp:577
msgid "Browse..."
msgstr "Jelajah..."
-#: FFmpeg.cpp:212
+#: FFmpeg.cpp:450
msgid "To get a free copy of FFmpeg, click here -->"
msgstr "Untuk mendapatkan salinan FFmpeg gratis, klik di sini ==>"
-#: FFmpeg.cpp:215 export/ExportMP3.cpp:579
+#: FFmpeg.cpp:451
+#: export/ExportMP3.cpp:579
msgid "Download"
-msgstr ""
+msgstr "Unduh"
#. i18n-hint: It's asking for the location of a file, for
#. example, "Where is lame_enc.dll?" - you could translate
#. "Where would I find the file %s" instead if you want.
-#: FFmpeg.cpp:235
+#: FFmpeg.cpp:473
#: export/ExportMP3.cpp:601
#, c-format
msgid "Where is %s?"
msgstr "Dimana %s?"
-#: FFmpeg.cpp:407
+#: FFmpeg.cpp:643
msgid "Failed to find compatible FFmpeg libraries"
-msgstr ""
+msgstr "Gagal untuk mencari referensi FFMpeg yang kompetibel"
-#: FFmpeg.h:95
+#: FFmpeg.h:97
msgid "FFmpeg not found"
msgstr "FFmpeg tidak ada"
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
+#: FFmpeg.h:111
+msgid ""
+"Audacity attempted to use FFmpeg libraries to import an audio file,\n"
"but libraries were not found.\n"
"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
"and tell Audacity where to look for the libraries."
msgstr ""
+"Audacity menggunakan referensi FFmpeg untuk mengimpor file audio,\n"
+"tapi referensi tidak ditemukan.\n"
+"Jika Anda ingin menggunakan fitur impor FFmpeg, silahkan ke Preferensi->Impor/Ekspor\n"
+"dan beritahu Audacity dimanakah referensinya."
-#: FFmpeg.h:109
+#: FFmpeg.h:119
msgid "Do not show this warning again"
-msgstr ""
+msgstr "Jangan tunjukkan peringatan ini lagi"
-#: FFmpeg.h:251
+#: FFmpeg.h:264
msgid "Only avformat.dll|*avformat*.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
msgstr "Hanya avformat.dll|*avformat*.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
-#: FFmpeg.h:268
+#: FFmpeg.h:297
msgid "Dynamic Libraries (*.dylib)|*.dylib|All Files (*)|*"
-msgstr ""
+msgstr "Referensi Dinamis (*.dylib)|*.dylib|Semua File (*)|*"
-#: FFmpeg.h:295
+#: FFmpeg.h:324
msgid "Only libavformat.so|libavformat.so*|Dynamically Linked Libraries (*.so*)|*.so*|All Files (*)|*"
-msgstr ""
+msgstr "Hanya libavformat.so|libavformat.so*|Referensi Terhubung Dinamis (*.so*)|*.so*|Semua File (*)|*"
-#: FreqWindow.cpp:103
+#: FreqWindow.cpp:107
msgid "Frequency Analysis"
msgstr "Analisis Frekuensi"
-#: FreqWindow.cpp:139
-#: TrackPanel.cpp:556
-#: prefs/GUIPrefs.cpp:156
+#: FreqWindow.cpp:163
+#: TrackPanel.cpp:620
+#: prefs/GUIPrefs.cpp:119
msgid "Spectrum"
msgstr "Spektrum"
-#: FreqWindow.cpp:140
+#: FreqWindow.cpp:164
msgid "Standard Autocorrelation"
msgstr "Autokoreksi Standar"
-#: FreqWindow.cpp:141
+#: FreqWindow.cpp:165
msgid "Cuberoot Autocorrelation"
msgstr "Autokoreksi Cuberoot"
-#: FreqWindow.cpp:142
+#: FreqWindow.cpp:166
msgid "Enhanced Autocorrelation"
msgstr "Autokoreksi Tingkat Tinggi"
#. i18n-hint: This is a technical term, derived from the word
#. "spectrum". Do not translate it unless you are sure you
#. know the correct technical word in your language.
-#: FreqWindow.cpp:146
+#: FreqWindow.cpp:170
msgid "Cepstrum"
msgstr "Kepstrum"
-#: FreqWindow.cpp:150
-#: FreqWindow.cpp:154
+#: FreqWindow.cpp:174
+#: FreqWindow.cpp:178
msgid "Algorithm"
msgstr "Algoritma"
-#: FreqWindow.cpp:169
-#: FreqWindow.cpp:173
+#: FreqWindow.cpp:193
+#: FreqWindow.cpp:197
#: HistoryWindow.cpp:79
msgid "Size"
msgstr "Ukuran"
#. i18n-hint: This refers to a "window function", used in the
#. Frequency analyze dialog box.
-#: FreqWindow.cpp:183
+#: FreqWindow.cpp:207
msgid " window"
msgstr " jendela"
-#: FreqWindow.cpp:187
-#: FreqWindow.cpp:191
+#: FreqWindow.cpp:211
+#: FreqWindow.cpp:215
msgid "Function"
msgstr "Fungsi"
-#: FreqWindow.cpp:196
+#: FreqWindow.cpp:220
msgid "Linear frequency"
msgstr "Frekuensi linier"
-#: FreqWindow.cpp:197
+#: FreqWindow.cpp:221
msgid "Log frequency"
msgstr "Frekuensi logaritma"
-#: FreqWindow.cpp:201
-#: FreqWindow.cpp:205
+#: FreqWindow.cpp:225
+#: FreqWindow.cpp:229
msgid "Axis"
msgstr "Aksis"
-#: FreqWindow.cpp:212
+#: FreqWindow.cpp:236
#: LabelDialog.cpp:130
-#: Menus.cpp:241
-#: Menus.cpp:276
+#: Menus.cpp:247
+#: Menus.cpp:282
msgid "&Export..."
msgstr "&Ekspor"
-#: FreqWindow.cpp:213
-#: export/ExportCL.cpp:325
-#: export/ExportMultiple.cpp:347
+#: FreqWindow.cpp:237
+#: effects/Contrast.cpp:384
+#: export/ExportCL.cpp:358
+#: export/ExportMultiple.cpp:344
msgid "Export"
msgstr "Ekspor"
-#: FreqWindow.cpp:216
-#: FreqWindow.cpp:217
-#: widgets/ErrorDialog.cpp:161
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr "&Plot Ulang"
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr "Plot Ulang"
+
+#: FreqWindow.cpp:244
+#: FreqWindow.cpp:245
+#: widgets/ErrorDialog.cpp:159
msgid "Close"
msgstr "Tutup"
-#: FreqWindow.cpp:280
-#: FreqWindow.cpp:410
-#: effects/AutoDuck.cpp:489
-#: effects/AutoDuck.cpp:523
-#: effects/AutoDuck.cpp:792
+#: FreqWindow.cpp:247
+#: FreqWindow.cpp:250
+#: effects/Equalization.cpp:1301
+#: effects/Equalization.cpp:1304
+msgid "Grids"
+msgstr "Batas"
+
+#: FreqWindow.cpp:314
+#: FreqWindow.cpp:516
+#: effects/AutoDuck.cpp:488
+#: effects/AutoDuck.cpp:522
+#: effects/AutoDuck.cpp:791
#: effects/Compressor.cpp:352
#: effects/Compressor.cpp:360
-#: effects/Equalization.cpp:1123
-#: effects/Equalization.cpp:1125
-#: effects/Equalization.cpp:1133
-#: effects/Equalization.cpp:1199
-#: effects/Equalization.cpp:1408
-#: effects/Equalization.cpp:1419
-#: effects/Normalize.cpp:367
-#: widgets/Meter.cpp:417
+#: effects/Equalization.cpp:1143
+#: effects/Equalization.cpp:1145
+#: effects/Equalization.cpp:1153
+#: effects/Equalization.cpp:1219
+#: effects/Equalization.cpp:1435
+#: effects/Equalization.cpp:1446
+#: effects/Normalize.cpp:368
+#: widgets/Meter.cpp:413
msgid "dB"
msgstr "dB"
#. i18n-hint: This is the abbreviation for "Hertz", or
#. cycles per second.
-#: FreqWindow.cpp:295
-#: FreqWindow.cpp:450
-#: effects/Equalization.cpp:1164
-#: effects/Equalization.cpp:1195
-#: import/ImportRaw.cpp:399
+#: FreqWindow.cpp:330
+#: FreqWindow.cpp:556
+#: effects/Equalization.cpp:1184
+#: effects/Equalization.cpp:1215
+#: import/ImportRaw.cpp:409
msgid "Hz"
msgstr "Hz"
-#: FreqWindow.cpp:394
+#: FreqWindow.cpp:422
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "Untuk memplot spektrum, semua trek yang dipilih harus mempunyai rate sampel yang sama."
+
+#: FreqWindow.cpp:449
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "Terlalu banyak yang dipilih. Hanya awal %.1f detik audio yang akan dianalisis."
+
+#: FreqWindow.cpp:500
msgid "Not enough data selected."
msgstr "Data yang dipilih tidak cukup"
-#: FreqWindow.cpp:458
-#: effects/AutoDuck.cpp:794
+#: FreqWindow.cpp:564
+#: effects/AutoDuck.cpp:793
msgid "s"
msgstr "d"
-#: FreqWindow.cpp:787
+#: FreqWindow.cpp:898
#, c-format
msgid "Cursor: %d Hz (%s) = %d dB Peak: %d Hz (%s) = %.1f dB"
msgstr "Kursor: %d Hz (%s) = %d dB Pik: %d Hz (%s) = %.1f dB"
-#: FreqWindow.cpp:796
+#: FreqWindow.cpp:907
#, c-format
msgid "Cursor: %.4f sec (%d Hz) (%s) = %f, Peak: %.4f sec (%d Hz) (%s) = %.3f"
msgstr "Kursor: %.4f det (%d Hz) (%s) = %f, Pik: %.4f det (%d Hz) (%s) = %.3f"
-#: FreqWindow.cpp:1069
+#: FreqWindow.cpp:1198
msgid "spectrum.txt"
msgstr "spektrum.txt"
-#: FreqWindow.cpp:1071
+#: FreqWindow.cpp:1200
msgid "Export Spectral Data As:"
msgstr "Ekspor data spektral sebagai:"
-#: FreqWindow.cpp:1087
+#: FreqWindow.cpp:1216
#: LabelDialog.cpp:603
-#: Menus.cpp:2555
-#: Project.cpp:2604
-#: Project.cpp:3667
-#: prefs/KeyConfigPrefs.cpp:182
+#: Menus.cpp:2612
+#: effects/Contrast.cpp:576
+#: prefs/KeyConfigPrefs.cpp:276
msgid "Couldn't write to file: "
msgstr "Tidak bisa menulis file:"
-#: FreqWindow.cpp:1092
+#: FreqWindow.cpp:1221
msgid "Frequency (Hz)\tLevel (dB)"
msgstr "Frekuensi (Hz)\tTingkatan (dB)"
-#: FreqWindow.cpp:1098
+#: FreqWindow.cpp:1227
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "Waktu (detik)\tFrekuensi (Hz)\tTingkat"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr "GStreamer %s: %s"
+
+#: GStreamerLoader.cpp:212
+msgid ""
+"GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences->Import/Export and re-configure it."
+msgstr ""
+"GStreamer terkonfigurasi pada Preferensi dan diambil dengan sukses sebelumnya,\n"
+" tapi kali ini Audacity gagal mengambilnya pada awal dinyalakan.\n"
+" Anda butuh kembali ke Preferensi > Impor/Ekspor dan mengkonfigurasikannya kembali."
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr "Awalan GStreamer gagal"
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr "Ke [[welcome|Awal]]"
@@ -1321,8 +1406,8 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr "<p><b>Untuk merekam:</b> Atur perekam dan inputnya, atur volume input, kemudian tekan tombol merah.</b></p><p> 1) [[inputdevice|Atur perekam]] bisa di <i>Tab Audio I/O pada Preferensi</i> atau pada <i>Toolbar Perangkat</i>. Preferences Audio I/O memungkinkan anda memilih rekaman stereo jika mau.<br> 2) [[inputsource|Atur sumber input]] untuk perangkate (contoh: mikropon atau line-in) pada pilihan di bawah <i>Toolbar Mixer</i>, atau (pada beberapa sistem) di Perangkat Rekaman dalam <i>Tab Audio I/O pada Preferensi</i> atau pada <i>Toolbar Perangkat</i>.<br> 3) [[inputlevel|Atur tingkatan input]] menggunakan slider kanan pada <i>Toolbar Mixer</i>. Memeriksa tingkatan sebelum merekam sangat penting untuk mencegah bising. </p><p> Bantuan lainnya ada di: \"Recording\" <a href=\"http://audacity.sourceforge.net/help/faq\">FAQs</a>, Tutorial kami <a href=\"http://www.audacityteam.org/manual/index.php?title=Tutorial_-_Your_First_Recording\"> \"Your First Recording\"</a> di <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">Manual kami</a>, dan halaman Wiki kami [[wiki:Recording_Tips|Tips Merekam]] dan [[wiki:Troubleshooting_Recordings|Memecahkan masalah pada rekaman]]. </p><br><br>"
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
-msgstr "<p>Perangkat input adalah perangkat suara fisik yang digunakan untuk merekam. Bisa dipilih di \"Perangkat Rekaman\" pada <i>tab Audio I/O pada Preferensi</i>, Pada windows dan Linux, Preferensi ada di bawah Menu <i>Edit</i>. Pada Macintosh, ada di menu <i>Audacity</i>. Anda bisa juga memilih perangkat rekaman di <i>Toolbar Perangkat</i>, yang bisa ditampilkan pada <i>View > Toolbar...</i>. </p><p> Biasanya, Audacity memakai perangkat yang digunakan oleh sistem, (biasanya perangkat suara yang bulit-in), karenanya jarang sekali pada pengguna mengubah setting-an ini. Pada Windows, perangkat untuk sistem bisa dipilih di \"Microsoft Sound Mapper\". Jika Anda merekam dari USb eksternal atau perngkat Firewire seperti USB turntable, pilih secara terpisah dengan nama perangkat rekaman setelah dihubungkan. </p><p> Kembali ke [[record|Merekam Audio]] <br></p>"
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgstr "<p>Perangkat input adalah perangkat suara fisik yang digunakan untuk merekam. Bisa dipilih di \"Perangkat Rekaman\" pada <i>tab Audio I/O pada Preferensi</i>, Pada windows dan Linux, Preferensi ada di bawah Menu <i>Edit</i>. Pada Mac, ada di menu <i>Audacity</i>. Anda bisa juga memilih perangkat rekaman di <i>Toolbar Perangkat</i>, yang bisa ditampilkan pada <i>View > Toolbar...</i>. </p><p> Biasanya, Audacity memakai perangkat yang digunakan oleh sistem, (biasanya perangkat suara yang bulit-in), jadi ini sering tidak diperlukan untuk mengubah perangkat input. Pada Windows, perangkat untuk sistem bisa dipilih di \"Microsoft Sound Mapper\". Jika Anda merekam dari USB eksternal atau perangkat Firewire seperti USB turntable, pilih secara terpisah sebagai perangkat rekaman setelah dihubungkan. </p><p> Kembali ke [[record|Merekam Audio]] <br></p>"
#: HelpText.cpp:244
msgid "<p>Select the input source (such as microphone or line-in) for your [[inputdevice|recording device]]:<br> - <b>On Windows (except Vista)</b> and <b>Linux</b>, in the dropdown selector on the right of the <i>Mixer Toolbar</i>.<br> - <b>On Windows Vista</b> and <b>Mac</b>, at Recording Device on the <i>Audio I/O tab of Preferences</i>, or in <i>Device Toolbar</i>. The source will be shown as part of the parent device (for example, <i>High Def Audio Card: Microphone</i>). If necessary, Mac users can choose the input source at Apple Audio MIDI Setup. <br><i><b>Note:</b> many USB or Firewire recording devices don't have a choice of inputs, so this step is not necessary. If in doubt, see the documentation for your device. </i></p><p> <b>Tip:</b> To <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record audio playing on the computer</a>, Windows and Linux users can choose the \"Stereo Mix\", \"Wave Out\", \"Sum\" or comparable input source. </p><p> Back to [[record|Recording Audio]] <br></p>"
@@ -1345,8 +1430,8 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr "Untuk mendengarkan pekerjaan Anda di program media, eksporkan ke file audio seperti WAV atau MP3 (beberapa format [[wma-proprietary|tidak mendukung]]). [[save|Menyimpan proyek Audacity]] akan membuat file proyek (dan berhubungan dengan folder _data) yang mengandung semua trek yang telah diedit, jadi anda bisa melanjutkannya kembali. Tetapi, program lainnya tidak bisa membaca proyek Audacity. </p><p> Untuk mengekspor, klik <i>Berkas > Ekspor</i> kemudian pilih format file yang anda inginkan pada \"Save as type\". Untuk [[burncd|membakar ke CD]] untuk CD player yang tunggal, pilih WAV atau AIFF. Untuk mengekspor sebagai MP3, [[wiki:Lame_Installation|Encoder Lame]] harus sudah terinstal. </p><p> <i>Berkas > Ekspor Terpilih</i> mengekspor area audio yang dipilih saja. <i>Gunakan Berkas > Ekspor Multipel</i> untuk mengekspor banyak file sekaligus, baik pada setiap trek, maupun pada area-area yang ditandai pada satu trek. <i>Trek > Tambahkan Label pada yang Dipilih</i> memungkinkan Anda [[wiki:Splitting_recordings_into_separate_tracks|menyederhanakan trek]] dari satu album ke beberapa file. </p><br><br>"
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
-msgstr "<p>Audacity <b>tidak bisa</b> [[play|memainkan]] atau [[export|mengekspor]] file ke <b>WMA, RealAudio, Shorten (SHN)</b> atau format-format berbayar lainnya, karena larangan lisensi dan paten. Pada komputer Mac, format <b>AAC</b> yang tidak terproteksi seperti <b>M4A</b> bisa diimpor. Beberapa format open-source belum didukung, termasuk <b>Ogg Speex</b> dan <b>Musepack</b>. File yang diproteksi oleh Digital Rights Management (DRM), termasuk yang berbayar seperti dari iTunes atau Napster, <b>tidak bisa</b> diimpor.</p><p> Jika Anda tidak bisa mengimpor file Anda ke Audacity, kemudian jika itu tidak terlindungi oleh DRM, gunakan iTunes atau <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> untuk mengubahnya ke WAV atau AIFF. jika dilindungi, bakar ke CD audio pada program berlisensi untuk memainkannya, kemudian ekstrak CD ke WAV atau AIFF dengan ITunes atau (pada Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> atau Windows Media Player 11. Anda bisa juga <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">merekam</a> CD ke komputer Anda. <i>Untuk mengekspor ke format yang tidak terdukung, ekspor ke WAV atau AIFF dan ubah ke formatnya dengan iTunes atau <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgstr "<p>Audacity <b>tidak bisa</b> [[play|memainkan]] atau [[export|mengekspor]] file ke <b>WMA, RealAudio, Shorten (SHN)</b> atau format-format berbayar lainnya, karena larangan lisensi dan paten. Pada komputer Mac, format <b>AAC</b> yang tidak terproteksi seperti <b>M4A</b> bisa diimpor. Beberapa format open-source belum didukung, termasuk <b>Ogg Speex</b> dan <b>Musepack</b>. File yang diproteksi oleh Digital Rights Management (DRM), termasuk yang berbayar seperti dari iTunes atau Napster, <b>tidak bisa</b> diimpor.</p><p> Jika Anda tidak bisa mengimpor file Anda ke Audacity, kemudian jika itu tidak terlindungi oleh DRM, gunakan iTunes atau <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> untuk mengubahnya ke WAV atau AIFF. Jika dilindungi, bakar ke CD audio pada program berlisensi untuk memainkannya, kemudian ekstrak CD ke WAV atau AIFF dengan ITunes atau (pada Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> atau Windows Media Player 11. Anda bisa juga <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">merekam</a> CD ke komputer Anda. <i>Untuk mengekspor ke format yang tidak terdukung, ekspor ke WAV atau AIFF dan ubah ke formatnya dengan iTunes atau <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
#: HelpText.cpp:383
msgid "<p>To burn your work to an audio CD for standalone CD players, first [[export|export]] it as WAV or AIFF. The exported file should be stereo, 44100 Hz (set in the \"Project Rate\" button bottom left) and 16 bit (set in the \"Options\" button in the file export dialog). These are Audacity's default settings, so normally you will not need to change these before exporting. <p>Burn the exported file to an \"audio CD\" - not a \"data CD\" or \"MP3 CD\" - with a CD burning program like iTunes or Windows Media Player. For more help, see [[wiki:How_to_burn_CDs|How to burn CDs]] online. </p><p>"
@@ -1381,59 +1466,63 @@ msgid "&Discard"
msgstr "&Larang"
#: HistoryWindow.cpp:112
-#: Tags.cpp:2081
-#: Tags.cpp:2083
-#: Tags.cpp:2385
-#: Tags.cpp:2387
#: effects/ChangeLength.cpp:186
#: effects/SpikeCleaner.cpp:191
-#: export/ExportCL.cpp:399
+#: export/ExportCL.cpp:432
msgid "&OK"
msgstr "&OK"
-#: Internat.cpp:191
+#: Internat.cpp:143
msgid "Unable to determine"
msgstr "Tidak bisa medeterminasi"
-#: Internat.cpp:195
-#: import/ImportRaw.cpp:385
+#: Internat.cpp:147
+#: import/ImportRaw.cpp:395
msgid "bytes"
msgstr "byte"
-#: Internat.cpp:197
+#: Internat.cpp:149
msgid "KB"
msgstr "KB"
-#: Internat.cpp:200
+#: Internat.cpp:152
msgid "MB"
msgstr "MB"
-#: Internat.cpp:203
+#: Internat.cpp:155
msgid "GB"
msgstr "GB"
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr "Nama file yang dipilih tidak bisa diubah karena penggunaan karakter Unicode."
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr "Tentukan Nama File Baru:"
+
#: LabelDialog.cpp:54
msgid "Track"
msgstr "Trek"
#: LabelDialog.cpp:55
-#: Menus.cpp:4677
-#: Menus.cpp:4712
+#: Menus.cpp:4726
+#: Menus.cpp:4761
msgid "Label"
msgstr "Label"
#: LabelDialog.cpp:56
-#: TimerRecordDialog.cpp:279
+#: TimerRecordDialog.cpp:341
msgid "Start Time"
msgstr "Waktu Mulai"
#: LabelDialog.cpp:57
-#: TimerRecordDialog.cpp:298
+#: TimerRecordDialog.cpp:360
msgid "End Time"
msgstr "Waktu Selesai"
#: LabelDialog.cpp:100
-#: Menus.cpp:713
+#: Menus.cpp:720
msgid "&Edit Labels"
msgstr "&Edit Label"
@@ -1458,11 +1547,13 @@ msgid "New..."
msgstr "Baru..."
#: LabelDialog.cpp:354
-msgid "You have left blank label names. These will be\n"
+msgid ""
+"You have left blank label names. These will be\n"
"skipped when repopulating the Label Tracks.\n"
"\n"
"Would you like to go back and provide names?"
-msgstr "Anda telah mengosongkan nama label. Ini akan\n"
+msgstr ""
+"Anda telah mengosongkan nama label. Ini akan\n"
"dilewatkan ketika memasukkan Trek Label.\n"
"\n"
"Apakah Anda ingin untuk kembali dan memasukkan namanya kembali?"
@@ -1472,19 +1563,19 @@ msgid "Confirm"
msgstr "Konfirmasi"
#: LabelDialog.cpp:516
-#: Menus.cpp:4101
+#: Menus.cpp:4144
msgid "Select a text file containing labels..."
msgstr "Pilih file teks yang berisi label..."
#: LabelDialog.cpp:520
-#: Menus.cpp:4105
+#: Menus.cpp:4148
msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
msgstr "File teks (*.txt)|*.txt|Semua file (*.*)|*.* "
#: LabelDialog.cpp:534
-#: Menus.cpp:4117
-#: Project.cpp:1914
-#: Project.cpp:1922
+#: Menus.cpp:4160
+#: Project.cpp:2111
+#: Project.cpp:2119
msgid "Could not open file: "
msgstr "Tidak bisa membuka file:"
@@ -1493,12 +1584,12 @@ msgid "No labels to export."
msgstr "Tidak ada label untuk diekspor."
#: LabelDialog.cpp:566
-#: Menus.cpp:2518
+#: Menus.cpp:2575
msgid "Export Labels As:"
msgstr "Ekspor label sebagai:"
#: LabelDialog.cpp:568
-#: Menus.cpp:2516
+#: Menus.cpp:2573
msgid "labels.txt"
msgstr "label.txt"
@@ -1513,7 +1604,7 @@ msgstr "Masukkan nama trek"
#: LabelDialog.cpp:705
#: LabelDialog.h:52
#: LabelTrack.cpp:89
-#: Menus.cpp:632
+#: Menus.cpp:640
msgid "&Label Track"
msgstr "&Trek Label"
@@ -1525,956 +1616,953 @@ msgstr "Pengoperasian Pertama Audacity"
msgid "Choose Language for Audacity to use:"
msgstr "Pilih Bahasa untuk digunakan pada Audacity:"
-#: Legacy.cpp:356
+#: Legacy.cpp:372
#, c-format
-msgid "Converted a 1.0 project file to the new format.\n"
+msgid ""
+"Converted a 1.0 project file to the new format.\n"
"The old file has been saved as '%s'"
-msgstr "Mengubah file proyek 1.0 ke format baru.\n"
+msgstr ""
+"Mengubah file proyek 1.0 ke format baru.\n"
"File lama telah disimpan sebagai '%s'"
-#: Legacy.cpp:357
+#: Legacy.cpp:373
msgid "Opening Audacity Project"
msgstr "Membuka Proyek Audacity"
-#: Menus.cpp:194
+#: Menus.cpp:198
msgid "&File"
msgstr "&Berkas"
-#: Menus.cpp:196
-msgid "&New\tCtrl+N"
-msgstr "&Baru\tCtrl+N"
+#: Menus.cpp:200
+msgid "&New"
+msgstr "&Baru"
-#: Menus.cpp:198
-msgid "&Open...\tCtrl+O"
-msgstr "B&uka...\tCtrl+O"
+#: Menus.cpp:202
+msgid "&Open..."
+msgstr "B&uka..."
-#: Menus.cpp:203
-msgid "&Close\tCtrl+W"
-msgstr "&Tutup\tCtrl+W"
+#: Menus.cpp:209
+msgid "&Close"
+msgstr "&Tutup"
-#: Menus.cpp:206
-msgid "&Save Project\tCtrl+S"
-msgstr "&Simpan Proyek\tCtrl+S"
+#: Menus.cpp:212
+msgid "&Save Project"
+msgstr "&Simpan Proyek"
-#: Menus.cpp:210
-#: Project.cpp:2896
+#: Menus.cpp:216
+#: Project.cpp:3172
msgid "Save Project &As..."
msgstr "Simpan &Proyek Sebagai..."
-#: Menus.cpp:212
+#: Menus.cpp:218
msgid "Save Compressed Copy of Project..."
msgstr "Simpan Salinan Proyek Terkompres..."
-#: Menus.cpp:216
+#: Menus.cpp:222
msgid "Chec&k Dependencies..."
msgstr "Ce&k Ketergantungan..."
-#: Menus.cpp:222
+#: Menus.cpp:228
msgid "Open Me&tadata Editor..."
msgstr "Buka Editor M&etadata..."
-#: Menus.cpp:229
-#: import/ImportRaw.cpp:411
+#: Menus.cpp:235
+#: import/ImportRaw.cpp:421
msgid "&Import"
msgstr "&Impor"
-#: Menus.cpp:231
-msgid "&Audio...\tCtrl+Shift+I"
-msgstr "&Audio...\tCtrl+Shift+I"
+#: Menus.cpp:237
+msgid "&Audio..."
+msgstr "&Audio..."
-#: Menus.cpp:232
+#: Menus.cpp:238
msgid "&Labels..."
msgstr "&Label..."
-#: Menus.cpp:234
+#: Menus.cpp:240
msgid "&MIDI..."
msgstr "&MIDI..."
-#: Menus.cpp:236
+#: Menus.cpp:242
msgid "&Raw Data..."
msgstr "&Data Raw..."
-#: Menus.cpp:247
-#: Menus.cpp:282
+#: Menus.cpp:253
+#: Menus.cpp:288
msgid "Expo&rt Selection..."
msgstr "Eksp&or Terpilih..."
-#: Menus.cpp:254
+#: Menus.cpp:260
msgid "Export &Labels..."
msgstr "Ekspor &Label..."
-#: Menus.cpp:255
+#: Menus.cpp:261
msgid "Export &Multiple..."
msgstr "Ekspor &Multipel..."
-#: Menus.cpp:257
+#: Menus.cpp:263
msgid "Export MIDI..."
msgstr "Ekspor MIDI..."
-#: Menus.cpp:290
+#: Menus.cpp:296
msgid "CleanSpeech C&hain..."
msgstr "Sa&mbungan CleanSpeech..."
-#: Menus.cpp:291
-#: Menus.cpp:305
+#: Menus.cpp:297
+#: Menus.cpp:311
msgid "Edit C&hains..."
msgstr "Edit Sam&bungan..."
-#: Menus.cpp:292
+#: Menus.cpp:298
msgid "Export CleanSpeech &Presets..."
msgstr "Ekspor CleanSpee&ch..."
-#: Menus.cpp:293
+#: Menus.cpp:299
msgid "I&mport CleanSpeech Presets..."
msgstr "I&mpor CleamSpeech..."
-#: Menus.cpp:303
+#: Menus.cpp:309
msgid "Appl&y Chain..."
msgstr "Aplikasi&kan Sambungan..."
-#: Menus.cpp:310
+#: Menus.cpp:316
msgid "&Upload File..."
msgstr "&Upload File..."
-#: Menus.cpp:316
+#: Menus.cpp:322
msgid "Pa&ge Setup..."
msgstr "Setup &Halaman..."
-#: Menus.cpp:317
+#: Menus.cpp:323
msgid "&Print..."
msgstr "P&rint..."
-#: Menus.cpp:330
-msgid "E&xit\tCtrl+Q"
-msgstr "Ke&luar\tCtrl+Q"
+#: Menus.cpp:336
+msgid "E&xit"
+msgstr "Ke&luar"
-#: Menus.cpp:338
+#: Menus.cpp:344
#: toolbars/EditToolBar.cpp:76
msgid "&Edit"
msgstr "&Edit"
-#: Menus.cpp:342
-msgid "&Undo\tCtrl+Z"
-msgstr "&Batalkan\tCtrl+Z"
+#: Menus.cpp:348
+msgid "&Undo"
+msgstr "&Batalkan"
-#: Menus.cpp:350
-#: prefs/KeyConfigPrefs.cpp:371
+#: Menus.cpp:356
#: toolbars/EditToolBar.cpp:146
msgid "&Redo"
msgstr "&Lakukan Kembali"
-#: Menus.cpp:363
-msgid "Cu&t\tCtrl+X"
-msgstr "&Potong\tCtrl+X"
+#: Menus.cpp:369
+msgid "Cu&t"
+msgstr "&Potong"
-#: Menus.cpp:367
-msgid "Spl&it Cut\tCtrl+Alt+X"
-msgstr "Potong Se&kaligus\tCtrl+Alt+X"
+#: Menus.cpp:373
+msgid "Spl&it Cut"
+msgstr "Potong Se&kaligus"
-#: Menus.cpp:368
-msgid "&Copy\tCtrl+C"
-msgstr "&Salin\tCtrl+C"
-
-#: Menus.cpp:372
-msgid "&Paste\tCtrl+V"
-msgstr "&Tempel\tCtrl+V"
-
-#: Menus.cpp:376
-msgid "Tri&m\tCtrl+T"
-msgstr "Tri&m\tCtrl+T"
+#: Menus.cpp:374
+msgid "&Copy"
+msgstr "&Salin"
#: Menus.cpp:378
-msgid "&Delete\tCtrl+K"
-msgstr "&Hapus\tCtrl+K"
+msgid "&Paste"
+msgstr "&Tempel"
-#: Menus.cpp:379
-msgid "Split D&elete\tCtrl+Alt+K"
-msgstr "H&apus Sekaligus\tCtrl+Alt+K"
+#: Menus.cpp:382
+msgid "Tri&m"
+msgstr "Tri&m"
-#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
-msgstr "&Diamkan Audio\tCtrl+L"
+#. i18n-hint: Labeled Regions submenu
+#: Menus.cpp:431
+#: Menus.cpp:384
+msgid "&Delete"
+msgstr "&Hapus"
-#: Menus.cpp:382
-msgid "Sp&lit\tCtrl+I"
-msgstr "&Gabung\tCtrl+I"
+#: Menus.cpp:385
+msgid "Split D&elete"
+msgstr "H&apus Sekaligus"
-#: Menus.cpp:387
-msgid "Split Ne&w\tCtrl+Alt+I"
-msgstr "Gabung yang &Baru\tCtrl+Alt+I"
+#: Menus.cpp:386
+msgid "Silence Audi&o"
+msgstr "&Diamkan Audio"
-#: Menus.cpp:392
-msgid "&Join\tCtrl+J"
-msgstr "&Berteman\tCtrl+J"
+#: Menus.cpp:388
+msgid "Sp&lit"
+msgstr "&Gabung"
#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
-msgstr "Membuat tugas di Diam\tCtrl+Alt+J"
+msgid "Split Ne&w"
+msgstr "Gabung yang &Baru"
+
+#. i18n-hint: Labeled Regions submenu
+#: Menus.cpp:452
+#: Menus.cpp:398
+msgid "&Join"
+msgstr "&Berteman"
-#: Menus.cpp:394
-msgid "Duplic&ate\tCtrl+D"
-msgstr "&Gandakan\tCtrl+D"
+#. i18n-hint: Labeled Regions submenu
+#: Menus.cpp:457
+#: Menus.cpp:399
+msgid "Detac&h at Silences"
+msgstr "Membuat tugas di Diam"
#: Menus.cpp:400
-#: Menus.cpp:639
+msgid "Duplic&ate"
+msgstr "&Gandakan"
+
+#: Menus.cpp:406
+#: Menus.cpp:647
msgid "Stereo Trac&k to Mono"
msgstr "Tre&k Stereo ke Mono"
-#: Menus.cpp:407
+#: Menus.cpp:413
msgid "La&beled Regions"
msgstr "&Wilayah Terlabel"
#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:409
-msgid "&Cut\tAlt+X"
-msgstr "&Potong\tAlt+X"
+#: Menus.cpp:415
+msgid "&Cut"
+msgstr "&Potong"
#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:414
-msgid "&Split Cut\tShift+Alt+X"
-msgstr "Potong Se&kaligus\tShift+Alt+X"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:419
-msgid "Co&py\tShift+Alt+C"
-msgstr "&Salin\tShift+Alt+C"
+#: Menus.cpp:420
+msgid "&Split Cut"
+msgstr "Potong Se&kaligus"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:425
-msgid "&Delete\tAlt+K"
-msgstr "&Hapus\tAlt+K"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:430
-msgid "Sp&lit Delete\tShift+Alt+K"
-msgstr "Hapus Seka&ligus\tShift+Alt+K"
+msgid "Co&py"
+msgstr "&Salin"
#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:435
-msgid "Sile&nce\tAlt+L"
-msgstr "Dia&m\tAlt+L"
+#: Menus.cpp:436
+msgid "Sp&lit Delete"
+msgstr "Hapus Seka&ligus"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:441
-msgid "Spli&t\tAlt+I"
-msgstr "Ga&bung\tAlt+I"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:446
-msgid "&Join\tAlt+J"
-msgstr "Ber&teman\talt+J"
+msgid "Sile&nce"
+msgstr "Dia&m"
#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
-msgstr "Membuat tugas di Diam\tShift+Alt+J"
+#: Menus.cpp:447
+msgid "Spli&t"
+msgstr "Ga&bung"
-#: Menus.cpp:456
+#: Menus.cpp:462
msgid "&Select"
msgstr "&Pilih"
-#: Menus.cpp:457
-msgid "&All\tCtrl+A"
-msgstr "Se&mua\tCtrl+A"
-
-#: Menus.cpp:458
-msgid "&None\tCtrl+Shift+A"
-msgstr "&Tidak Sama Sekali\tCtrl+Shift+A"
-
-#: Menus.cpp:462
-msgid "&Left at Playback Position\t["
-msgstr "Di &Kiri Posisi Kursor Trek\t["
-
#: Menus.cpp:463
-msgid "&Right at Playback Position\t]"
-msgstr "Di K&anan Posisi Kursor Trek\t]"
+msgid "&All"
+msgstr "Se&mua"
-#: Menus.cpp:467
-msgid "Track &Start to Cursor\tShift+J"
-msgstr "&Awal Trek ke Kursor\tShift+J"
+#: Menus.cpp:464
+msgid "&None"
+msgstr "&Tidak Sama Sekali"
#: Menus.cpp:468
-msgid "Cursor to Track &End\tShift+K"
-msgstr "&Kursor ke akhir trek\tShift+K"
+msgid "&Left at Playback Position"
+msgstr "Di &Kiri Posisi Kursor Trek"
+
+#: Menus.cpp:469
+msgid "&Right at Playback Position"
+msgstr "Di K&anan Posisi Kursor Trek"
+
+#: Menus.cpp:473
+msgid "Track &Start to Cursor"
+msgstr "&Awal Trek ke Kursor"
#: Menus.cpp:474
-msgid "Find &Zero Crossings\tZ"
-msgstr "Cari Crossing Kosong\tZ"
+msgid "Cursor to Track &End"
+msgstr "&Kursor ke akhir trek"
-#: Menus.cpp:476
+#: Menus.cpp:480
+msgid "Find &Zero Crossings"
+msgstr "Cari Crossing Kosong"
+
+#: Menus.cpp:483
msgid "Mo&ve Cursor"
msgstr "Pin&dahkan Kursor"
-#: Menus.cpp:478
+#: Menus.cpp:485
msgid "to Selection Star&t"
msgstr "ke A&walan yang dipilih"
-#: Menus.cpp:479
+#: Menus.cpp:486
msgid "to Selection En&d"
msgstr "ke A&khiran yang Dipilih"
-#: Menus.cpp:483
-msgid "to Track &Start\tJ"
-msgstr "ke &Awal Trek\tJ"
-
-#: Menus.cpp:484
-msgid "to Track &End\tK"
-msgstr "ke Ak&hir Trek\tK"
+#: Menus.cpp:490
+msgid "to Track &Start"
+msgstr "ke &Awal Trek"
#: Menus.cpp:491
+msgid "to Track &End"
+msgstr "ke Ak&hir Trek"
+
+#: Menus.cpp:498
msgid "Re&gion Save"
msgstr "&Wilayah Penyimpanan"
-#: Menus.cpp:492
+#: Menus.cpp:499
msgid "Regio&n Restore"
msgstr "Wila&yah Pengembalian"
-#: Menus.cpp:503
+#: Menus.cpp:510
msgid "Pla&y Region"
msgstr "Mai&nkan Wilayah"
-#: Menus.cpp:504
+#: Menus.cpp:511
msgid "&Lock"
msgstr "&Kunci"
-#: Menus.cpp:505
+#: Menus.cpp:512
msgid "&Unlock"
msgstr "&Buka Kunci"
-#: Menus.cpp:511
+#: Menus.cpp:518
msgid "Turn Snap-To On"
msgstr "&Hidupkan Snap-To"
-#: Menus.cpp:512
+#: Menus.cpp:519
msgid "Turn Snap-To Off"
msgstr "&Matikan Snap-To"
-#: Menus.cpp:513
+#: Menus.cpp:520
msgid "Turn Grid Snap On"
msgstr "H&idupkan Grid Snap"
-#: Menus.cpp:514
+#: Menus.cpp:521
msgid "Turn Grid Snap Off"
msgstr "M&atikan Grid Snap"
#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
-#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr "Pre&ferensi...\tCtrl+,"
+#: Menus.cpp:526
+#: Menus.cpp:530
+msgid "Pre&ferences..."
+msgstr "Pre&ferensi..."
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
-msgstr "Pre&ferensi...\tCtrl+P"
-
-#: Menus.cpp:533
+#: Menus.cpp:540
msgid "&View"
msgstr "&Lihat"
-#: Menus.cpp:535
-msgid "Zoom &In\tCtrl+1"
-msgstr "Per&besar\tCtrl+1"
+#: Menus.cpp:542
+msgid "Zoom &In"
+msgstr "Per&besar"
-#: Menus.cpp:538
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "&Normal\tCtrl+2"
+#: Menus.cpp:545
+msgid "Zoom &Normal"
+msgstr "&Normal"
-#: Menus.cpp:539
-msgid "Zoom &Out\tCtrl+3"
-msgstr "Per&kecil\tCtrl+3"
+#: Menus.cpp:546
+msgid "Zoom &Out"
+msgstr "Per&kecil"
-#: Menus.cpp:542
-msgid "&Fit in Window\tCtrl+F"
-msgstr "&Samakan Dengan Jendela\tCtrl+F"
+#: Menus.cpp:549
+msgid "&Fit in Window"
+msgstr "&Samakan Dengan Jendela"
-#: Menus.cpp:543
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "Samakan Secara &Vertikal\tCtrl+Shift+F"
+#: Menus.cpp:550
+msgid "Fit &Vertically"
+msgstr "Samakan Secara &Vertikal"
-#: Menus.cpp:544
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "Perbesar Ter&pilih\tCtrl+E"
+#: Menus.cpp:551
+msgid "&Zoom to Selection"
+msgstr "Perbesar Ter&pilih"
-#: Menus.cpp:547
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
-msgstr "&Sederhanakan Semua Trek\tCtrl+Shift+C"
+#: Menus.cpp:554
+msgid "&Collapse All Tracks"
+msgstr "&Sederhanakan Semua Trek"
-#: Menus.cpp:548
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
-msgstr "Seba&rkan Semua Trek\tCtrl+Shift+X"
+#: Menus.cpp:555
+msgid "E&xpand All Tracks"
+msgstr "Seba&rkan Semua Trek"
-#: Menus.cpp:551
+#: Menus.cpp:558
msgid "&Show Clipping"
msgstr "&Lihat Clipping"
-#: Menus.cpp:560
+#: Menus.cpp:567
msgid "&History..."
msgstr "&History..."
-#: Menus.cpp:566
+#: Menus.cpp:573
msgid "&Toolbars"
msgstr "&Toolbar"
-#: Menus.cpp:567
+#: Menus.cpp:574
msgid "&Control Toolbar"
msgstr "Toolbar &Kontrol"
-#: Menus.cpp:568
+#: Menus.cpp:575
msgid "&Device Toolbar"
msgstr "Toolbar &Perangkat"
-#: Menus.cpp:569
+#: Menus.cpp:576
msgid "&Edit Toolbar"
msgstr "Toolbar &Edit"
-#: Menus.cpp:570
+#: Menus.cpp:577
msgid "&Meter Toolbar"
msgstr "Toolbar &Meter"
-#: Menus.cpp:571
+#: Menus.cpp:578
msgid "Mi&xer Toolbar"
msgstr "Toolbar Mi&xer"
-#: Menus.cpp:572
+#: Menus.cpp:579
msgid "&Selection Toolbar"
msgstr "Toolbar &Terpilih"
-#: Menus.cpp:573
+#: Menus.cpp:580
msgid "T&ools Toolbar"
msgstr "Toolbar Per&alatan"
-#: Menus.cpp:574
+#: Menus.cpp:581
msgid "Transcri&ption Toolbar"
msgstr "Toolbar Transkri&psi"
-#: Menus.cpp:576
+#: Menus.cpp:583
msgid "&Reset Toolbars"
msgstr "&Kembalikan Toolbar"
-#: Menus.cpp:578
+#: Menus.cpp:586
msgid "!Simplified View"
msgstr "!Lihat Sederhana"
#. i18n-hint: 'Transport' is the name given to the set of controls that
#. play, record, pause etc.
-#: Menus.cpp:587
+#: Menus.cpp:595
msgid "T&ransport"
msgstr "T&ransportasi"
-#: Menus.cpp:591
-msgid "Play\tSpace"
-msgstr ""
+#: Menus.cpp:597
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play"
+msgstr "Play"
-#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
-msgstr ""
+#: Menus.cpp:599
+msgid "&Loop Play"
+msgstr "Maikan Be&rkali-kali"
-#: Menus.cpp:593
-msgid "&Pause\tP"
-msgstr "&Pause\tP"
+#: Menus.cpp:601
+msgid "&Pause"
+msgstr "&Pause"
-#: Menus.cpp:596
-msgid "&Stop\tSpace"
-msgstr ""
+#: Menus.cpp:602
+msgid "&Stop"
+msgstr "&Berhenti"
-#: Menus.cpp:595
-#: Menus.cpp:1010
-msgid "Skip to Start\tHome"
-msgstr "Langsung ke Awal\tHome"
+#: Menus.cpp:603
+#: toolbars/ControlToolBar.cpp:186
+msgid "Skip to Start"
+msgstr "Langsung ke Awal"
-#: Menus.cpp:597
-#: Menus.cpp:1011
-msgid "Skip to End\tEnd"
-msgstr "Langsung ke akhir\tEnd"
+#: Menus.cpp:605
+#: toolbars/ControlToolBar.cpp:189
+msgid "Skip to End"
+msgstr "Langsung ke akhir"
-#: Menus.cpp:600
-msgid "&Record\tR"
-msgstr "&Rekam\tR"
+#: Menus.cpp:608
+msgid "&Record"
+msgstr "&Rekam"
-#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
-msgstr "Pen&catat waktu rekaman...\tShift+T"
+#: Menus.cpp:610
+msgid "&Timer Record..."
+msgstr "Pen&catat waktu rekaman..."
-#: Menus.cpp:604
-msgid "Append Record\tShift+R"
-msgstr "Tambah Rekaman\tShift+R"
+#: Menus.cpp:612
+msgid "Append Record"
+msgstr "Tambah Rekaman"
-#: Menus.cpp:607
+#: Menus.cpp:615
msgid "Overdub (on/off)"
msgstr "Overdub (nyala/mati)"
-#: Menus.cpp:609
+#: Menus.cpp:617
msgid "Software Playthrough (on/off)"
msgstr "Selama bermainpada software (nyala/mati)"
-#: Menus.cpp:612
+#: Menus.cpp:620
msgid "Sound Activated Recording (on/off)"
msgstr "Merekam dengan Suara Diaktifkan (nyala/mati)"
-#: Menus.cpp:614
+#: Menus.cpp:622
msgid "Sound Activation Level..."
msgstr "Level Pengaktifan Suara..."
-#: Menus.cpp:622
+#: Menus.cpp:630
msgid "&Tracks"
msgstr "&Trek"
-#: Menus.cpp:629
+#: Menus.cpp:637
msgid "Add &New"
msgstr "Add &New"
-#: Menus.cpp:630
-msgid "&Audio Track\tCtrl+Shift+N"
-msgstr "Trek &Audio\tCtrl+Shift+N"
+#: Menus.cpp:638
+msgid "&Audio Track"
+msgstr "Trek &Audio"
-#: Menus.cpp:631
+#: Menus.cpp:639
msgid "&Stereo Track"
msgstr "Trek &Stereo"
-#: Menus.cpp:633
+#: Menus.cpp:641
#: TimeTrack.cpp:44
msgid "&Time Track"
msgstr "Trek &Waktu"
-#: Menus.cpp:643
+#: Menus.cpp:651
msgid "Mi&x and Render"
msgstr "Mi&x dan Render"
-#: Menus.cpp:647
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
-msgstr "Mix dan Render ke Trek Baru\tCtrl+Shift+M"
+#: Menus.cpp:655
+msgid "Mix and Render to New Track"
+msgstr "Mix dan Render ke Trek Baru"
-#: Menus.cpp:651
+#: Menus.cpp:659
msgid "&Resample..."
msgstr "&Sampel Ulang..."
-#: Menus.cpp:661
+#: Menus.cpp:669
msgid "Remo&ve Tracks"
msgstr "&Buang Trek"
-#: Menus.cpp:667
-msgid "&Mute All Tracks\tCtrl+U"
-msgstr "&Diamkan Semua Trek\tCtrl+U"
+#: Menus.cpp:675
+msgid "&Mute All Tracks"
+msgstr "&Diamkan Semua Trek"
-#: Menus.cpp:668
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
-msgstr "&Matikan Diam ke Semua Trek\tCtrl+Shift+U"
+#: Menus.cpp:676
+msgid "&UnMute All Tracks"
+msgstr "&Matikan Diam ke Semua Trek"
-#: Menus.cpp:672
+#: Menus.cpp:680
msgid "Align with &Zero"
msgstr "Ratakan dengan &Nol"
-#: Menus.cpp:673
+#: Menus.cpp:681
msgid "Align with &Cursor"
msgstr "Ratakan dengan &Kursor"
-#: Menus.cpp:674
+#: Menus.cpp:682
msgid "Align with Selection &Start"
msgstr "Ratakan dengan &Awalan yang Terpilih"
-#: Menus.cpp:675
+#: Menus.cpp:683
msgid "Align with Selection &End"
msgstr "Ratakan dengan A&khiran yang Terpilih"
-#: Menus.cpp:676
+#: Menus.cpp:684
msgid "Align End with Cu&rsor"
msgstr "Ratakan Akhir dengan Ku&rsor"
-#: Menus.cpp:677
+#: Menus.cpp:685
msgid "Align End with Selection Star&t"
msgstr "Ra&takan Akhir dengan Awal di Pilihan"
-#: Menus.cpp:678
+#: Menus.cpp:686
msgid "Align End with Selection En&d"
msgstr "Ratakan Akhir &dengan Akhir di Pilihan"
-#: Menus.cpp:679
+#: Menus.cpp:687
msgid "Align Tracks To&gether"
msgstr "Ratakan Trek Bersa&ma-sama"
-#: Menus.cpp:681
+#: Menus.cpp:689
msgid "&Align Tracks"
msgstr "&Ratakan Trek"
-#: Menus.cpp:690
+#: Menus.cpp:698
msgid "Ali&gn and Move Cursor"
msgstr "Ratakan dan P&indahan Kursor"
-#: Menus.cpp:697
+#: Menus.cpp:705
msgid "Synchronize MIDI with Audio"
msgstr "Sinkronkan MIDI dengan Audio"
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
-msgstr "Link Audio dan Label"
+#: Menus.cpp:713
+msgid "&Link Audio and Label Tracks"
+msgstr "&Link Audio dan Trek Label"
-#: Menus.cpp:709
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "Tambahkan &Label Pada Pilihan\tCtrl+B"
+#: Menus.cpp:716
+msgid "Add Label At &Selection"
+msgstr "Tambahkan Label Pada &Pilihan"
-#: Menus.cpp:710
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "Tambahkan Label Pada &Posisi Kursor\tCtrl+M"
+#: Menus.cpp:717
+msgid "Add Label At &Playback Position"
+msgstr "Tambahkan Label Pada &Posisi Kursor"
-#: Menus.cpp:716
+#: Menus.cpp:723
msgid "S&ort tracks"
msgstr "U&rutkan trek"
-#: Menus.cpp:717
+#: Menus.cpp:724
msgid "by &Start time"
msgstr "dari &Waktu awal"
-#: Menus.cpp:719
+#: Menus.cpp:726
msgid "by &Name"
msgstr "dari &Nama"
-#: Menus.cpp:730
+#: Menus.cpp:737
msgid "&Generate"
msgstr "&Buat"
-#: Menus.cpp:776
-#: Menus.cpp:860
-#: Menus.cpp:922
+#: Menus.cpp:783
+#: Menus.cpp:867
+#: Menus.cpp:933
msgid "Unsorted"
msgstr "Tidak berurut"
-#: Menus.cpp:795
+#: Menus.cpp:802
msgid "Effe&ct"
msgstr "E&fek"
-#: Menus.cpp:799
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "Ulangi Efek Terakhir\tCtrl+R"
-
-#: Menus.cpp:877
+#: Menus.cpp:884
msgid "&Analyze"
msgstr "&Analisa"
-#: Menus.cpp:879
+#: Menus.cpp:885
+msgid "Contrast..."
+msgstr "Kontras..."
+
+#: Menus.cpp:890
msgid "Plot Spectrum..."
msgstr "Spektrum Plot..."
-#: Menus.cpp:947
-#: Menus.cpp:950
+#: Menus.cpp:952
+#: Menus.cpp:955
msgid "&Help"
msgstr "&Bantuan"
-#: Menus.cpp:953
+#: Menus.cpp:958
msgid "&About Audacity CleanSpeech..."
msgstr "&Tentang Audacity CleamSpeech..."
-#: Menus.cpp:957
+#: Menus.cpp:962
msgid "&Show Welcome Message..."
msgstr "&Tampilkan Pesan Awal..."
-#: Menus.cpp:958
+#: Menus.cpp:963
msgid "&Index..."
msgstr "&Indeks..."
-#: Menus.cpp:959
+#: Menus.cpp:964
msgid "Show &Log..."
msgstr "Tunjukkan &Log..."
-#: Menus.cpp:967
+#: Menus.cpp:969
msgid "&Screenshot Tools..."
msgstr "&Alat Screenshot..."
-#: Menus.cpp:970
+#: Menus.cpp:972
msgid "&Run Benchmark..."
msgstr "&Jalankan Benchmark..."
-#: Menus.cpp:972
+#: Menus.cpp:975
msgid "&Audio Device Info..."
msgstr "&Info Perangkat Audio..."
#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
-msgstr ""
+msgid "Move backward from toolbars to tracks"
+msgstr "Maju ke belakang dari toolbar ke Trek"
#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
-msgstr ""
-
-#: Menus.cpp:985
-msgid "Selection Tool\tF1"
-msgstr "Alat Pemilihan\tF1"
-
-#: Menus.cpp:986
-msgid "Envelope Tool\tF2"
-msgstr "Alat Envelop\tF2"
+msgid "Move forward from toolbars to tracks"
+msgstr "Maju ke depan dari toolbar ke Trek"
#: Menus.cpp:987
-msgid "Draw Tool\tF3"
-msgstr "Alat Menggambar\tF3"
+#: toolbars/ToolsToolBar.cpp:147
+#: toolbars/ToolsToolBar.cpp:182
+msgid "Selection Tool"
+msgstr "Alat Pemilihan"
#: Menus.cpp:988
-msgid "Zoom Tool\tF4"
-msgstr "Alat Memperbesar\tF4"
+#: toolbars/ToolsToolBar.cpp:148
+#: toolbars/ToolsToolBar.cpp:183
+msgid "Envelope Tool"
+msgstr "Alat Envelop"
#: Menus.cpp:989
-msgid "Time Shift Tool\tF5"
-msgstr "Alat Menyingkat Waktu\tF5"
+#: toolbars/ToolsToolBar.cpp:151
+#: toolbars/ToolsToolBar.cpp:184
+msgid "Draw Tool"
+msgstr "Alat Menggambar"
#: Menus.cpp:990
-msgid "Multi Tool\tF6"
-msgstr "Alat Multifungsi\tF6"
+#: toolbars/ToolsToolBar.cpp:150
+#: toolbars/ToolsToolBar.cpp:185
+msgid "Zoom Tool"
+msgstr "Alat Memperbesar"
-#: Menus.cpp:992
-msgid "Next Tool\tD"
-msgstr "Alat Selanjutnya\tD"
+#: Menus.cpp:991
+#: toolbars/ToolsToolBar.cpp:149
+msgid "Time Shift Tool"
+msgstr "Alat Menyingkat Waktu"
-#: Menus.cpp:993
-msgid "Previous Tool\tA"
-msgstr "Alat Sebelumnya\tA"
+#: Menus.cpp:992
+#: toolbars/ToolsToolBar.cpp:187
+msgid "Multi Tool"
+msgstr "Alat Multifungsi"
-#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
-msgstr ""
+#: Menus.cpp:994
+msgid "Next Tool"
+msgstr "Alat Selanjutnya"
-#: Menus.cpp:996
-msgid "Stop\tS"
-msgstr "Berhenti\tS"
+#: Menus.cpp:995
+msgid "Previous Tool"
+msgstr "Alat Sebelumnya"
#: Menus.cpp:997
-msgid "Pause\tP"
-msgstr "Pause\tP"
-
-#: Menus.cpp:998
-msgid "Record\tR"
-msgstr "Rekam\tR"
+msgid "Play/Stop"
+msgstr "Mulai/Berhenti"
#: Menus.cpp:999
-msgid "Record Append\tShift+R"
-msgstr "Penambahan Rekaman\tShift+R"
+msgid "Play/Stop and Set Cursor"
+msgstr "Main/Berhenti dan Atur Kursor"
#: Menus.cpp:1001
-msgid "Play/Stop and Set Cursor\tShift+A"
-msgstr "Main/Berhenti dan Atur Kursor\tShift+A"
+msgid "Play One Second"
+msgstr "Mainkan Satu Detik"
+
+#: Menus.cpp:1002
+msgid "Play To Selection"
+msgstr "Mainkan ke yang dipilih"
-#: Menus.cpp:1004
-msgid "Play One Second\t1"
-msgstr "Mainkan Satu Detik\t1"
+#: Menus.cpp:1003
+msgid "Play Cut Preview"
+msgstr "Mainkan Preview POtongan"
#: Menus.cpp:1005
-msgid "Play To Selection\tB"
-msgstr "Mainkan ke yang dipilih\tB"
+msgid "Selection to Start"
+msgstr "Pilih ke Awal"
#: Menus.cpp:1006
-msgid "Play Looped\tL"
-msgstr "Maikan berulang\tL"
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
+msgid "Selection to End"
+msgstr "Pilih ke Akhir"
#: Menus.cpp:1008
-msgid "Play Cut Preview\tC"
-msgstr "Mainkan Preview POtongan\tC"
+msgid "DeleteKey"
+msgstr "KunciHapus"
#: Menus.cpp:1013
-msgid "Selection to Start\tShift+Home"
-msgstr "Pilih ke Awal\tShift+Home"
+msgid "DeleteKey2"
+msgstr "KunciHapus2"
-#: Menus.cpp:1014
-msgid "Selection to End\tShift+End"
-msgstr "Pilih ke Akhir\tShift+End"
+#: Menus.cpp:1019
+msgid "Short seek left during playback"
+msgstr "Coba periode pendek di kiri selama bermain"
-#: Menus.cpp:1016
-msgid "DeleteKey\tBackspace"
-msgstr "KunciHapus\tBackspace"
+#: Menus.cpp:1020
+msgid "Short seek right during playback"
+msgstr "Coba periode pendek di kanan selama bermain"
#: Menus.cpp:1021
-msgid "DeleteKey2\tDelete"
-msgstr "KunciHapus2\tDelete"
+msgid "Long seek left during playback"
+msgstr "Coba periode panjang di kiri selama bermain"
+
+#: Menus.cpp:1022
+msgid "Long Seek right during playback"
+msgstr "Coba periode panjang di kanan selama bermain"
+
+#: Menus.cpp:1026
+msgid "Move Focus to Previous Track"
+msgstr "Pindahkan Fokus ke Trek Sebelumnya"
#: Menus.cpp:1027
-msgid "Seek left short period during playback\tLeft"
-msgstr "Coba periode pendek di kiri selama bermain\tLeft"
+msgid "Move Focus to Previous and Select"
+msgstr "Pindahkan Fokus ke Trek Sebelumnya dan Pilih"
#: Menus.cpp:1028
-msgid "Seek right short period during playback\tRight"
-msgstr "Coba periode pendek di kanan selama bermain\tRight"
+msgid "Move Focus to Next Track"
+msgstr "Pindahkan Fokus ke Trek Selanjutnya"
#: Menus.cpp:1029
-msgid "Seek left long period during playback\tShift+Left"
-msgstr "Coba periode panjang di kiri selama bermain\tShift+Left"
+msgid "Move Focus to Next and Select"
+msgstr "Pindahkan Fokus ke Trek Selanjutnya dan Pilih"
#: Menus.cpp:1030
-msgid "Seek right long period during playback\tShift+Right"
-msgstr "Coba periode panjang di kanan selama bermain\tShift+Right"
+#: Menus.cpp:1031
+msgid "Toggle Focused Track"
+msgstr "Fokuskan ke Trek Terpilih"
+
+#: Menus.cpp:1033
+msgid "Cursor Left"
+msgstr "Kursor Kiri"
#: Menus.cpp:1034
-msgid "Move Focus to Previous Track\tUp"
-msgstr "Pindahkan Fokus ke Trek Sebelumnya\tUp"
+msgid "Cursor Right"
+msgstr "Kursor Kanan"
#: Menus.cpp:1035
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
-msgstr "Pindahkan Fokus ke Trek Sebelumnya dan ubah pilihannya\tShift+Up"
+msgid "Cursor Short Jump Left"
+msgstr "Kursor Kiri Lompatan Rendah"
#: Menus.cpp:1036
-msgid "Move Focus to Next Track\tDown"
-msgstr "Pindahkan Fokus ke Trek Selanjutnya\tDown"
+msgid "Cursor Short Jump Right"
+msgstr "Kursor Kiri Lompatan Rendah"
#: Menus.cpp:1037
-msgid "Move Focus to Next and Change Selection\tShift+Down"
-msgstr "Pindahkan Fokus ke Trek Selanjutnya dan ubah pilihannya\tShift+Down"
+msgid "Cursor Long Jump Left"
+msgstr "Kursor Kiri Lompatan Tinggi"
#: Menus.cpp:1038
-msgid "Toggle Focused Track\tReturn"
-msgstr "Fokuskan ke Trek Terpilih\tReturn"
-
-#: Menus.cpp:1039
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr "Fokuskan ke Trek Terpilih\tNUMPAD_ENTER"
+msgid "Cursor Long Jump Right"
+msgstr "Kursor Kanan Lompatan Tinggi"
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
-msgstr ""
+#: Menus.cpp:1040
+msgid "Selection Extend Left"
+msgstr "Pilih yang tidak dipilih di Kiri"
-#: Menus.cpp:1042
-msgid "Cursor Left\tLeft"
-msgstr "Kursor Kiri\tLeft"
+#: Menus.cpp:1041
+msgid "Selection Extend Right"
+msgstr "Pilih yang tidak dipilih di Kanan"
#: Menus.cpp:1043
-msgid "Cursor Right\tRight"
-msgstr "Kursor Kanan\tRight"
+msgid "Set (or Extend) Left Selection"
+msgstr "Atur (atau Mengecualikan) Yang Terpilih di Kiri"
#: Menus.cpp:1044
-msgid "Cursor Short Jump Left\t,"
-msgstr "Kursor Kiri Lompatan Rendah\t,"
-
-#: Menus.cpp:1045
-msgid "Cursor Short Jump Right\t."
-msgstr "Kursor Kiri Lompatan Rendah\t."
+msgid "Set (or Extend) Right Selection"
+msgstr "Atur (atau Mengecualikan) Yang Terpilih di Kanan"
#: Menus.cpp:1046
-msgid "Cursor Long Jump Left\tShift+,"
-msgstr "Kursor Kiri Lompatan Tinggi\tShift+,"
+msgid "Selection Contract Left"
+msgstr "Pilih yang di Kiri"
#: Menus.cpp:1047
-msgid "Cursor Long Jump Right\tShift+."
-msgstr "Kursor Kanan Lompatan Tinggi\tShift+."
+msgid "Selection Contract Right"
+msgstr "Pilih yang di Kanan"
#: Menus.cpp:1049
-msgid "Selection Extend Left\tShift+Left"
-msgstr "Pilih yang tidak dipilih di Kiri\tShift+Left"
+msgid "Change pan on focused track"
+msgstr "Ubah pan pada trek terfokus"
#: Menus.cpp:1050
-msgid "Selection Extend Right\tShift+Right"
-msgstr "Pilih yang tidak dipilih di Kanan\tShift+Right"
+msgid "Pan left on focused track"
+msgstr "Pan-kan di kiri trek terfokus"
+
+#: Menus.cpp:1051
+msgid "Pan right on focused track"
+msgstr "Pan-kan di kanan trek terfokus"
#: Menus.cpp:1052
-msgid "Set (or Extend) Left Selection"
-msgstr "Atur (atau Mengecualikan) Yang Terpilih di Kiri"
+msgid "Change gain on focused track"
+msgstr "Ubah kekuatan pada trek yang terfokus"
#: Menus.cpp:1053
-msgid "Set (or Extend) Right Selection"
-msgstr "Atur (atau Mengecualikan) Yang Terpilih di Kanan"
+msgid "Increase gain on focused track"
+msgstr "Tingkatkan kekuatan pada trek yang difokuskan"
+
+#: Menus.cpp:1054
+msgid "Decrease gain on focused track"
+msgstr "Turunkan kekuatan pada trek yang difokuskan"
#: Menus.cpp:1055
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "Pilih yang di Kiri\tCtrl+Shift+Right"
+msgid "Open menu on focused track"
+msgstr "Buka menu pada trek yang terfokus"
#: Menus.cpp:1056
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "Pilih yang di Kanan\tCtrl+Shift+Left"
+msgid "Mute/Unmute focused track"
+msgstr "Diam/Hidupkan suara trek yang terfokus"
-#: Menus.cpp:1058
-msgid "Change pan on focused track\tShift+P"
-msgstr "Ubah pan pada trek terfokus\tShift+P"
+#: Menus.cpp:1057
+msgid "Solo/Unsolo focused track"
+msgstr "Solo/Jangan solo trek yang terfokus"
-#: Menus.cpp:1059
-msgid "Pan left on focused track\tAlt+Shift+Left"
-msgstr "Pan-kan di kiri trek terfokus\tAlt+Shift+Left"
+#: Menus.cpp:1058
+msgid "Close focused track"
+msgstr "Tutup trek yang terfokus"
#: Menus.cpp:1060
-msgid "Pan right on focused track\tAlt+Shift+Right"
-msgstr "Pan-kan di kanan trek terfokus\tAlt+Shift+Left"
+msgid "Snap To On"
+msgstr "Hidupkan Patokan"
#: Menus.cpp:1061
-msgid "Change gain on focused track\tShift+G"
-msgstr "Ubah kekuatan pada trek yang terfokus\tShift+G"
+msgid "Snap To Off"
+msgstr "Matikankan Patokan"
#: Menus.cpp:1062
-msgid "Increase gain on focused track\tAlt+Shift+Up"
-msgstr "Tingkatkan kekuatan pada trek yang difokuskan\tAlt+Shift+Up"
-
-#: Menus.cpp:1063
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
-msgstr "Turunkan kekuatan pada trek yang difokuskan\tAlt+Shift+Down"
-
-#: Menus.cpp:1064
-msgid "Open menu on focused track\tShift+M"
-msgstr "Buka menu pada trek yang terfokus\tShift+M"
-
-#: Menus.cpp:1065
-msgid "Mute/Unmute focused track\tShift+U"
-msgstr "Diam/Hidupkan suara trek yang terfokus\tShift+U"
+msgid "Full screen on/off"
+msgstr "Layar penuh hidup/mati"
#: Menus.cpp:1066
-msgid "Solo/Unsolo focused track\tShift+S"
-msgstr "Solo/Jangan solo trek yang terfokus\tShift+5"
+msgid "Adjust output gain"
+msgstr "Ubah kekuatan output"
#: Menus.cpp:1067
-msgid "Close focused track\tShift+C"
-msgstr "Tutup trek yang terfokus\tShift+C"
+msgid "Increase output gain"
+msgstr "Naikkan kekuatan output"
+
+#: Menus.cpp:1068
+msgid "Decrease output gain"
+msgstr "Turunkan kekuatan output"
#: Menus.cpp:1069
-msgid "Snap To On"
-msgstr "Hidupkan Patokan"
+msgid "Adjust input gain"
+msgstr "Ubah kekuatan imput"
#: Menus.cpp:1070
-msgid "Snap To Off"
-msgstr "Matikankan Patokan"
+msgid "Increase input gain"
+msgstr "Naikkan kekuatan input"
+
+#: Menus.cpp:1071
+msgid "Decrease input gain"
+msgstr "Turunkan kekuatan input"
#: Menus.cpp:1073
-msgid "Full screen on/off\tF11"
-msgstr ""
+msgid "Adjust input source"
+msgstr "Ubah Sumber Input"
#. i18n-hint: This is the name of the menu item on Mac OS X only
-#: Menus.cpp:1157
+#: Menus.cpp:1159
msgid "Open Recent"
msgstr "Buka yang Sebelumnya"
#. i18n-hint: This is the name of the menu item on Windows and Linux
-#: Menus.cpp:1160
+#: Menus.cpp:1162
msgid "Recent &Files"
msgstr "&File Sebelumnya"
-#: Menus.cpp:1209
+#: Menus.cpp:1180
#, c-format
msgid "&Undo %s"
msgstr "&Batalkan %s"
-#: Menus.cpp:1235
+#: Menus.cpp:1206
msgid "Can't Undo"
msgstr "Tidak Dapat Membatalkan"
-#: Menus.cpp:1244
+#: Menus.cpp:1215
#, c-format
msgid "&Redo %s"
msgstr "&Ulang %s"
-#: Menus.cpp:1250
+#: Menus.cpp:1221
msgid "Can't Redo"
msgstr "Tidak Dapat Mengulang"
-#: Menus.cpp:1856
+#: Menus.cpp:1855
msgid "Sort By Time"
msgstr "Urutkan dari waktu"
-#: Menus.cpp:1856
+#: Menus.cpp:1855
msgid "Tracks sorted by time"
msgstr "Trek diurut bedasarkan waktu"
-#: Menus.cpp:1882
+#: Menus.cpp:1881
msgid "Sort By Name"
msgstr "Urutkan dari Nama"
-#: Menus.cpp:1882
+#: Menus.cpp:1881
msgid "Tracks sorted by name"
msgstr "Trek diurut bedasarkan nama"
-#: Menus.cpp:2033
+#: Menus.cpp:2032
msgid "Set Left Selection Bound"
msgstr "Atur Batas Terpilih Kiri"
@@ -2482,447 +2570,441 @@ msgstr "Atur Batas Terpilih Kiri"
msgid "Set Right Selection Bound"
msgstr "Atur Batas Terpilih Kanan"
-#: Menus.cpp:2337
+#: Menus.cpp:2393
msgid "You must select a track first."
msgstr "Anda harus pilih trek terlebih dahulu"
-#: Menus.cpp:2369
+#: Menus.cpp:2428
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "Ulangi %s\tCtrl+R"
+msgid "Repeat %s"
+msgstr "Ulangi %s"
-#: Menus.cpp:2512
+#: Menus.cpp:2569
msgid "There are no label tracks to export."
msgstr "Tidak ada label yang diekspor"
-#: Menus.cpp:2607
+#: Menus.cpp:2664
msgid "Export MIDI As:"
msgstr "Ekspor MIDI Sebagai:"
-#: Menus.cpp:2611
+#: Menus.cpp:2668
msgid "MIDI file (*.mid)|*.mid|Allegro file (*.gro)|*.gro"
msgstr "File MIDI (*.mid)|*.mid|File Allegro (*.gro)|*.gro"
-#: Menus.cpp:2643
-msgid "You have selected a filename with an unrecognized file extension.\n"
+#: Menus.cpp:2700
+msgid ""
+"You have selected a filename with an unrecognized file extension.\n"
"Do you want to continue?"
-msgstr "Anda memilih nama file yang ekstensinya tidak bisa dibaca.\n"
+msgstr ""
+"Anda memilih nama file yang ekstensinya tidak bisa dibaca.\n"
" Anda ingin meneruskan?"
-#: Menus.cpp:2644
+#: Menus.cpp:2701
msgid "Export MIDI"
msgstr "Ekspor MIDI"
-#: Menus.cpp:2702
+#: Menus.cpp:2781
msgid "Nothing to undo"
msgstr "Tidak mungkin membatalkan"
-#: Menus.cpp:2722
+#: Menus.cpp:2802
msgid "Nothing to redo"
msgstr "Tidak mungkin melakukan kembali"
-#: Menus.cpp:2809
-#: TrackPanel.cpp:596
+#: Menus.cpp:2909
+#: TrackPanel.cpp:661
#: toolbars/EditToolBar.cpp:133
msgid "Cut"
msgstr "Potong"
-#: Menus.cpp:2809
+#: Menus.cpp:2909
msgid "Cut to the clipboard"
msgstr "Potong ke Clipboard"
-#: Menus.cpp:2849
+#: Menus.cpp:2948
msgid "Split Cut"
msgstr "Potong Sekaligus"
-#: Menus.cpp:2849
+#: Menus.cpp:2948
msgid "Split-cut to the clipboard"
msgstr "Potong sekaligus ke clipboard"
-#: Menus.cpp:2914
-#: Menus.cpp:2986
-#: Menus.cpp:3178
-#: TrackPanel.cpp:598
+#: Menus.cpp:3013
+#: Menus.cpp:3086
+#: Menus.cpp:3285
+#: TrackPanel.cpp:663
#: toolbars/EditToolBar.cpp:137
msgid "Paste"
msgstr "Tempel"
-#: Menus.cpp:2914
+#: Menus.cpp:3013
msgid "Pasted text from the clipboard"
msgstr "Teks ditempel dari clipboard"
-#: Menus.cpp:2986
-#: Menus.cpp:3178
+#: Menus.cpp:3086
+#: Menus.cpp:3285
msgid "Pasted from the clipboard"
msgstr "Ditempel dari clipboard"
-#: Menus.cpp:3052
+#: Menus.cpp:3154
msgid "Pasting one type of track into another is not allowed."
msgstr "Menempelkan satu tipe audio ke tipe lainnya tidak diperbolehkan."
-#: Menus.cpp:3064
+#: Menus.cpp:3166
msgid "Copying stereo audio into a mono track is not allowed."
msgstr "Menyalin auido stereo ke trek mono tidak diperbolehkan."
-#: Menus.cpp:3214
+#: Menus.cpp:3321
#: toolbars/EditToolBar.cpp:139
msgid "Trim"
msgstr "Gabung"
-#: Menus.cpp:3214
+#: Menus.cpp:3321
msgid "Trim file to selection"
msgstr "Trim file ke bagian terpilih"
-#: Menus.cpp:3243
+#: Menus.cpp:3350
#, c-format
msgid "Split-deleted %.2f seconds at t=%.2f"
msgstr "Dihapus sekaligus %.2f detik pada t=%.2f"
-#: Menus.cpp:3246
+#: Menus.cpp:3353
msgid "Split Delete"
msgstr "Hapus Sekaligus"
-#: Menus.cpp:3267
+#: Menus.cpp:3374
#, c-format
msgid "Disjoined %.2f seconds at t=%.2f"
msgstr "Berpisah %.2f detik pada t=%.2f"
-#: Menus.cpp:3270
+#: Menus.cpp:3377
msgid "Disjoin"
msgstr "Pisah"
-#: Menus.cpp:3291
+#: Menus.cpp:3398
#, c-format
msgid "Joined %.2f seconds at t=%.2f"
msgstr "Bergabung %.2f detik pada t=%.2f"
-#: Menus.cpp:3294
+#: Menus.cpp:3401
msgid "Join"
msgstr "Pasangkan"
-#: Menus.cpp:3313
+#: Menus.cpp:3420
#, c-format
msgid "Silenced selected tracks for %.2f seconds at %.2f"
msgstr "Telah didiamkan trek terpilih pada %.2f seconds at %.2f"
-#: Menus.cpp:3315
+#: Menus.cpp:3422
#: toolbars/EditToolBar.cpp:141
msgid "Silence"
msgstr "Diam"
-#: Menus.cpp:3349
+#: Menus.cpp:3452
msgid "Duplicate"
msgstr "Duplikatkan"
-#: Menus.cpp:3349
+#: Menus.cpp:3452
msgid "Duplicated"
msgstr "Terduplikat"
-#: Menus.cpp:3368
+#: Menus.cpp:3471
msgid "Cut Labels"
msgstr "Potong Label"
-#: Menus.cpp:3368
+#: Menus.cpp:3471
msgid "Cut labeled regions to the clipboard"
msgstr "Potong wilayah berlabel ke clipboard"
-#: Menus.cpp:3382
+#: Menus.cpp:3485
msgid "SplitCut labeled regions to the clipboard"
msgstr "Potong Sekaligus wilayah berlabel ke clipboard"
-#: Menus.cpp:3383
+#: Menus.cpp:3486
msgid "Split Cut Labels"
msgstr "Potong Sekaligus Label"
-#: Menus.cpp:3397
+#: Menus.cpp:3500
msgid "Copied labeled regions to the clipboard"
msgstr "Salin wilayah berlabel ke clipboard"
-#: Menus.cpp:3397
+#: Menus.cpp:3500
msgid "Copy Labels"
msgstr "Salin Label"
-#: Menus.cpp:3409
+#: Menus.cpp:3512
msgid "Delete Labels"
msgstr "Hapus Label"
-#: Menus.cpp:3409
+#: Menus.cpp:3512
msgid "Deleted labeled regions"
msgstr "Wilayah berlabel dihapus"
-#: Menus.cpp:3421
+#: Menus.cpp:3524
msgid "Split Delete Labels"
msgstr "Hapus Sekaligus Label"
-#: Menus.cpp:3421
+#: Menus.cpp:3524
msgid "Split Deleted labeled regions"
msgstr "Hapus Sekaligus wilayah berlabel"
-#: Menus.cpp:3433
+#: Menus.cpp:3536
msgid "Silence Labels"
msgstr "Label Diam"
-#: Menus.cpp:3433
+#: Menus.cpp:3536
msgid "Silenced labeled regions"
msgstr "Wilayah berlabel didiamkan"
-#: Menus.cpp:3445
+#: Menus.cpp:3548
msgid "Split Labels"
msgstr "Labelkan Sekaligus"
-#: Menus.cpp:3445
+#: Menus.cpp:3548
msgid "Split labeled regions"
msgstr "Sekaliguskan wilayah berlabel"
-#: Menus.cpp:3457
+#: Menus.cpp:3560
msgid "Join Labels"
msgstr "Gabungkan Label"
-#: Menus.cpp:3457
+#: Menus.cpp:3560
msgid "Joined labeled regions"
msgstr "Wilayah berlabel digabung"
-#: Menus.cpp:3469
+#: Menus.cpp:3572
msgid "Disjoin Labels"
msgstr "Pisahkan Label"
-#: Menus.cpp:3469
+#: Menus.cpp:3572
msgid "Disjoined labeled regions"
msgstr "Wilayah berlabel dipisahkan"
-#: Menus.cpp:3491
-#: TrackPanel.cpp:6134
+#: Menus.cpp:3594
+#: TrackPanel.cpp:6245
msgid "Split"
msgstr "Sekaligus"
-#: Menus.cpp:3585
+#: Menus.cpp:3683
msgid "Split New"
msgstr "Perbaharui sekaligus"
-#: Menus.cpp:3585
+#: Menus.cpp:3683
msgid "Split to new track"
msgstr "Sekaliguskan ke trek baru"
-#: Menus.cpp:3668
+#: Menus.cpp:3765
msgid "Split at labels"
msgstr "Sekaliguskan pada label"
-#: Menus.cpp:3969
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "Untuk memplot spektrum, semua trek yang dipilih harus mempunyai rate sampel yang sama."
-
-#: Menus.cpp:3995
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "Terlalu banyak yang dipilih. Hanya awal %.1f detik audio yang akan dianalisis."
-
-#: Menus.cpp:4130
+#: Menus.cpp:4173
#, c-format
msgid "Imported labels from '%s'"
msgstr "Diimpor label dari '%s'"
-#: Menus.cpp:4131
+#: Menus.cpp:4174
msgid "Import Labels"
msgstr "Impor label"
-#: Menus.cpp:4142
+#: Menus.cpp:4185
msgid "Select a MIDI file..."
msgstr "Pilih file MIDI..."
-#: Menus.cpp:4146
+#: Menus.cpp:4189
msgid "MIDI and Allegro files (*.mid;*.midi;*.gro)|*.mid;*.midi;*.gro|MIDI files (*.mid;*.midi)|*.mid;*.midi|Allegro files (*.gro)|*.gro|All files (*.*)|*.*"
msgstr "File MIDI dan Allegro (*.mid;*.midi;*.gro)|*.mid;*.midi;*.gro|File MIDI (*.mid;*.midi)|*.mid;*.midi|File Allegro (*.gro)|*.gro|Semua file (*.*)|*.*"
-#: Menus.cpp:4162
+#: Menus.cpp:4205
#, c-format
msgid "Imported MIDI from '%s'"
msgstr "MIDI diimpor dari '%s'"
-#: Menus.cpp:4163
+#: Menus.cpp:4206
msgid "Import MIDI"
msgstr "Impor MIDI"
-#: Menus.cpp:4177
+#: Menus.cpp:4220
msgid "Select any uncompressed audio file..."
msgstr "Pilih file audio tanpa kompresi apa saja..."
-#: Menus.cpp:4181
+#: Menus.cpp:4224
msgid "All files (*)|*"
msgstr "Semua File (*)|*"
-#: Menus.cpp:4205
+#: Menus.cpp:4248
msgid "Edit the metadata tags"
msgstr "Edit tag metadata"
-#: Menus.cpp:4206
-#: export/Export.cpp:353
+#: Menus.cpp:4249
+#: export/Export.cpp:348
msgid "Edit Metadata"
msgstr "Edit Metadata"
-#: Menus.cpp:4206
+#: Menus.cpp:4249
msgid "Edit Metadata tags"
msgstr "Edit Tag Metadata"
-#: Menus.cpp:4262
+#: Menus.cpp:4304
#, c-format
msgid "Rendered all audio in track '%s'"
msgstr "Semua audio di trek '%s' telah di-render"
-#: Menus.cpp:4263
+#: Menus.cpp:4305
msgid "Render"
msgstr "Render"
-#: Menus.cpp:4268
+#: Menus.cpp:4310
#, c-format
msgid "Mixed and rendered %d tracks into one new stereo track"
msgstr "Di-mix dan di-render %d trek ke dalam satu trek stereo"
-#: Menus.cpp:4271
+#: Menus.cpp:4313
#, c-format
msgid "Mixed and rendered %d tracks into one new mono track"
msgstr "Di-mix dan di-render %d trek ke dalam satu trek mono"
-#: Menus.cpp:4273
-#: Mix.cpp:121
+#: Menus.cpp:4315
+#: Mix.cpp:120
msgid "&Mix and Render"
msgstr "&Mix dan Render"
-#: Menus.cpp:4403
+#: Menus.cpp:4447
msgid "Aligned with zero"
msgstr "Sejajarkan dengan nol"
-#: Menus.cpp:4407
+#: Menus.cpp:4451
msgid "Aligned cursor"
msgstr "Kursor yang diratakan"
-#: Menus.cpp:4411
+#: Menus.cpp:4455
msgid "Aligned with selection start"
msgstr "Diratakan dengan awal pilihan"
-#: Menus.cpp:4415
+#: Menus.cpp:4459
msgid "Aligned with selection end"
msgstr "Diratakan dengan akhir pilihan"
-#: Menus.cpp:4419
+#: Menus.cpp:4463
msgid "Aligned end with cursor"
msgstr "Diratakan akhir dengan kursor"
-#: Menus.cpp:4423
+#: Menus.cpp:4467
msgid "Aligned end with selection start"
msgstr "Diratakan akhir dengan awal pilihan"
-#: Menus.cpp:4427
+#: Menus.cpp:4471
msgid "Aligned end with selection end"
msgstr "Diratakan akhir dengan akhir pilihan"
-#: Menus.cpp:4431
+#: Menus.cpp:4475
msgid "Aligned"
msgstr "Diratakan"
-#: Menus.cpp:4464
+#: Menus.cpp:4508
msgid "Align"
msgstr "Perataan"
-#: Menus.cpp:4549
+#: Menus.cpp:4594
msgid "Sync MIDI with Audio"
msgstr "Sinkronisasi MIDI dengan Audio"
-#: Menus.cpp:4553
+#: Menus.cpp:4598
msgid "Alignment completed."
msgstr "Perataan selesai."
-#: Menus.cpp:4564
+#: Menus.cpp:4609
msgid "Created new audio track"
msgstr "Trek audio baru telah dibuat"
-#: Menus.cpp:4564
-#: Menus.cpp:4587
-#: Menus.cpp:4602
-#: Menus.cpp:4622
+#: Menus.cpp:4609
+#: Menus.cpp:4631
+#: Menus.cpp:4646
+#: Menus.cpp:4666
msgid "New Track"
msgstr "Trek Baru"
-#: Menus.cpp:4587
+#: Menus.cpp:4631
msgid "Created new stereo audio track"
msgstr "Trek stereo baru telah dibuat"
-#: Menus.cpp:4602
+#: Menus.cpp:4646
msgid "Created new label track"
msgstr "Trek label baru telah dibuat"
-#: Menus.cpp:4611
+#: Menus.cpp:4655
msgid "The version of Audacity you are using does not support multiple time tracks."
msgstr "Varsi Audacity anda tidak mendukung multi-trek "
-#: Menus.cpp:4622
+#: Menus.cpp:4666
msgid "Created new time track"
msgstr "Dibuat trek waktu yang baru"
-#: Menus.cpp:4677
+#: Menus.cpp:4726
msgid "Added label"
msgstr "Label telah dibuat"
-#: Menus.cpp:4712
+#: Menus.cpp:4761
msgid "Edited labels"
msgstr "Label yang diedit"
-#: Menus.cpp:4739
+#: Menus.cpp:4788
msgid "Save CleanSpeech Preset File As:"
msgstr "Simpan File Aturan Lanjut CleanSpeech Sebagai:"
-#: Menus.cpp:4743
+#: Menus.cpp:4792
msgid "CleanSpeech Presets (*.csp)|*.csp"
msgstr "CleanSpeech Presets (*.csp)|*.csp"
-#: Menus.cpp:4750
-#: export/Export.cpp:605
+#: Menus.cpp:4799
+#: export/Export.cpp:610
msgid "Sorry, pathnames longer than 256 characters not supported."
msgstr "Maaf, nama path yang lebih dari 256 karakter tidak mendukung."
-#: Menus.cpp:4796
+#: Menus.cpp:4845
msgid "Problem encountered exporting presets."
msgstr "Problem encountered exporting presets."
-#: Menus.cpp:4797
-#: export/Export.cpp:468
+#: Menus.cpp:4846
+#: export/Export.cpp:472
msgid "Unable to export"
msgstr "Tidak bisa mengekspor"
-#: Menus.cpp:4981
+#: Menus.cpp:5029
msgid "Remove Track"
msgstr "Buang Trek"
-#: Menus.cpp:4981
+#: Menus.cpp:5029
msgid "Removed audio track(s)"
msgstr "Trek audio dibuang"
-#: Menus.cpp:5138
-#: Menus.cpp:5193
-#: export/ExportFFmpeg.cpp:710
-#: export/ExportMP3.cpp:1928
+#: Menus.cpp:5186
+#: Menus.cpp:5241
+#: export/ExportFFmpeg.cpp:755
+#: export/ExportMP3.cpp:1785
msgid "Resample"
msgstr "Sampel Ulang"
-#: Menus.cpp:5158
-#: TrackPanel.cpp:6361
+#: Menus.cpp:5206
+#: TrackPanel.cpp:6469
+#: toolbars/MixerToolBar.cpp:313
msgid "New sample rate (Hz):"
msgstr "New sample rate (Hz):"
-#: Menus.cpp:5182
-#: TrackPanel.cpp:6385
+#: Menus.cpp:5230
+#: TrackPanel.cpp:6493
msgid "The entered value is invalid"
msgstr "Nilai yang Anda masukkan tidak valid"
-#: Menus.cpp:5191
+#: Menus.cpp:5239
#, c-format
msgid "Resampling track %d"
msgstr "Menyampel ulang trek %d"
-#: Menus.cpp:5200
+#: Menus.cpp:5248
msgid "Resample Track"
msgstr "Menyempel Ulang Trek"
-#: Menus.cpp:5200
+#: Menus.cpp:5248
msgid "Resampled audio track(s)"
msgstr "Trek audio telah disampel ulang"
@@ -2931,7 +3013,7 @@ msgstr "Trek audio telah disampel ulang"
msgid "Mix"
msgstr "Mix"
-#: Mix.cpp:122
+#: Mix.cpp:121
msgid "Mixing and rendering tracks"
msgstr "Trek Mix dan Render"
@@ -2947,75 +3029,83 @@ msgstr "Ada masalah dalam mencetak"
msgid "Print"
msgstr "Cetak"
-#: Project.cpp:673
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr "Ulangi Efek Terakhir"
+
+#: Project.cpp:774
msgid "Main Mix"
msgstr "Mix Utama"
-#: Project.cpp:797
+#: Project.cpp:892
#, c-format
msgid "Welcome to Audacity version %s"
msgstr "Selamat datang di Audacity versi %s"
-#: Project.cpp:957
+#: Project.cpp:1071
msgid "(Recovered)"
msgstr "(Terkembalikan)"
-#: Project.cpp:1546
-#: TrackPanel.cpp:796
+#: Project.cpp:1713
+#: TrackPanel.cpp:848
#: toolbars/ControlToolBar.cpp:192
msgid "Record"
msgstr "Rekam"
-#: Project.cpp:1546
-#: TrackPanel.cpp:796
+#: Project.cpp:1713
+#: TrackPanel.cpp:848
msgid "Recorded Audio"
msgstr "Rekaman Audio"
-#: Project.cpp:1564
+#: Project.cpp:1731
msgid "Save changes before closing?"
msgstr "Simpan perubahan sebelum ditutup?"
-#: Project.cpp:1567
-msgid "\n"
+#: Project.cpp:1734
+msgid ""
+"\n"
"If saved, the project will have no tracks.\n"
"\n"
"To save any previously open tracks:\n"
"Cancel, Edit > Undo until all tracks\n"
"are open, then File > Save Project."
-msgstr "\n"
+msgstr ""
+"\n"
"Jika disimpan, proyek tidak akan punya trek.\n"
"\n"
"Untuk menyimpan trek yang dibuka sebelumnya:\n"
"Batal, Edit > Batalkan sampai semua trek\n"
"terbuka, kemudian Berkas > Simpan Proyek."
-#: Project.cpp:1570
+#: Project.cpp:1737
msgid "Save changes?"
msgstr "Simpan perubahan?"
-#: Project.cpp:1772
-msgid "All files|*.*|All supported files|"
-msgstr "Semua file|*.*|Semua file yang terdukung|"
+#: Project.cpp:1949
+msgid "All files|*|All supported files|"
+msgstr "Semua file|*|Semua file yang terdukung|"
-#: Project.cpp:1802
+#: Project.cpp:1979
msgid "Select one or more audio files..."
msgstr "Pilih satu atau lebih file audio..."
-#: Project.cpp:1829
+#: Project.cpp:2006
msgid "Audacity projects|*.aup|"
msgstr "Proyek Audacity|*.aup|"
-#: Project.cpp:1882
-#: Project.cpp:2304
+#: Project.cpp:2066
+#: Project.cpp:2501
#, c-format
-msgid "This file was saved by Audacity %s, a much\n"
+msgid ""
+"This file was saved by Audacity %s, a much\n"
"older version. The format has changed.\n"
"\n"
"Audacity could corrupt the file in opening\n"
"it, so you must back it up first.\n"
"\n"
"Open this file now?"
-msgstr "File ini disimpan dengan Audacity %s, versi\n"
+msgstr ""
+"File ini disimpan dengan Audacity %s, versi\n"
"yang sudah lama. Formatnya telah berbeda.\n"
"\n"
"Audacity bisa menghancurkan file dalam membukanya,\n"
@@ -3023,87 +3113,115 @@ msgstr "File ini disimpan dengan Audacity %s, versi\n"
"\n"
"Buka filenya sekarang?"
-#: Project.cpp:1883
+#: Project.cpp:2067
msgid "1.0 or earlier"
msgstr "1.0 atau lebih lama"
-#: Project.cpp:1889
-#: Project.cpp:2316
+#: Project.cpp:2073
+#: Project.cpp:2513
msgid "Opening old project file"
msgstr "Membuka file proyek yang lama"
-#: Project.cpp:1915
-#: Project.cpp:1923
+#: Project.cpp:2097
+msgid ""
+"You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+"Anda mencoba membuka file backup yang dibuat otomatis.\n"
+"Melakukannya memungkinkan beberapa data hilang.\n"
+"\n"
+"Silahkan buka file proyek Audacity yang sesungguhnya."
+
+#: Project.cpp:2098
+msgid "Backup file detected"
+msgstr "File backup terdeteksi"
+
+#: Project.cpp:2112
+#: Project.cpp:2120
+#: xml/XMLWriter.cpp:262
msgid "Error opening file"
msgstr "Error dalam mebuka file"
-#: Project.cpp:1929
+#: Project.cpp:2126
#, c-format
-msgid "File may be invalid or corrupted: \n"
+msgid ""
+"File may be invalid or corrupted: \n"
"%s"
-msgstr "File mungkin tidak ada atau terhapus: \n"
+msgstr ""
+"File mungkin tidak ada atau terhapus: \n"
"%s"
-#: Project.cpp:1930
+#: Project.cpp:2127
msgid "Error opening file or project"
msgstr "Error dalam membuka file atau proyek"
-#: Project.cpp:1950
+#: Project.cpp:2147
msgid "Audacity was unable to convert an Audacity 1.0 project to the new project format."
msgstr "Audacity was unable to convert an Audacity 1.0 project to the new project format."
-#: Project.cpp:2053
+#: Project.cpp:2254
msgid "Could not remove old auto save file"
msgstr "Tidak bisa membuang file simpan otomatis yang lama"
-#: Project.cpp:2055
+#: Project.cpp:2256
msgid "Project was recovered"
msgstr "Proyek telah dikembalikan"
-#: Project.cpp:2055
+#: Project.cpp:2256
msgid "Recover"
msgstr "Kembalikan"
-#: Project.cpp:2084
+#: Project.cpp:2285
msgid "Project checker repaired file"
msgstr "Pengecekan telah memperbaiki file"
-#: Project.cpp:2084
+#: Project.cpp:2285
#: effects/Repair.h:29
msgid "Repair"
msgstr "Perbaiki"
-#: Project.cpp:2230
+#: Project.cpp:2426
#, c-format
msgid "Couldn't find the project data folder: \"%s\""
msgstr "Tidak bisa menemukan folder data proyek: \"%s\""
-#: Project.cpp:2273
+#: Project.cpp:2470
#, c-format
-msgid "This file was saved using Audacity %s.\n"
+msgid ""
+"This file was saved using Audacity %s.\n"
"You are using Audacity %s - you need to upgrade to\n"
"a newer version to open this file."
-msgstr "File ini disimpan dengan Audacity %s.\n"
+msgstr ""
+"File ini disimpan dengan Audacity %s.\n"
"Anda menggunakan Audacity %s - anda diharuskan untuk\n"
"meng-upgrade versi terbaru untuk membuka file ini."
-#: Project.cpp:2277
+#: Project.cpp:2474
msgid "Can't open project file"
msgstr "Tidak bisa membuka file proyek"
-#: Project.cpp:2311
+#: Project.cpp:2508
#, c-format
-msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+msgid ""
+"This file was saved by Audacity %s.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
-msgstr "File ini disimpan dengan Audacity %s.\n"
-"Anda bisa membuka file ini dengan Audacity Anda ini, tapi jika anda menyimpannya, Anda tidak akan bisa untuk membukanya pada versi yang lama.\n"
+msgstr ""
+"File ini disimpan dengan Audacity %s.\n"
+"\n"
+"Anda bisa membuka dan menyimpan file ini, tapi meyimpannya di versi ini\n"
+"akan menghalangi versi 1.2 atau yang lebih lama untu membukanya\n"
"\n"
"Buka filenya sekarang?"
-#: Project.cpp:2537
-msgid "Your project is now empty.\n"
+#: Project.cpp:2706
+msgid ""
+"Your project is now empty.\n"
"If saved, the project will have no tracks.\n"
"\n"
"To save any previously open tracks:\n"
@@ -3112,61 +3230,78 @@ msgid "Your project is now empty.\n"
"\n"
"Save anyway?"
msgstr ""
+"Proyek Anda sekarang kosong.\n"
+"Jika disimpan, proyek tidak akan punya trek.\n"
+"\n"
+"Untuk menyimpan trek yang terbuka sebelumnya:\n"
+"Klik 'Tidak', Edit > Batalkan sampai semua trek\n"
+"terbuka, kemudian File > Simpan Proyek.\n"
+"\n"
+"Simpan saja?"
-#: Project.cpp:2538
+#: Project.cpp:2707
msgid "Warning empty project"
-msgstr ""
+msgstr "Peringatan proyek kosong"
-#: Project.cpp:2588
+#: Project.cpp:2816
#, c-format
-msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
-msgstr "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+msgid ""
+"Could not save project. Perhaps %s \n"
+"is not writable or the disk is full."
+msgstr ""
+"Tidak bisa menyimpan proyek. Mungkin %s \n"
+"tidak bisa ditulis atau disk penuh."
-#: Project.cpp:2590
-#: Project.cpp:2605
+#: Project.cpp:2818
+#: Project.cpp:2844
msgid "Error saving project"
msgstr "Error dalam meyimpan proyek"
-#: Project.cpp:2680
+#: Project.cpp:2842
+#: Project.cpp:3943
+#: Tags.cpp:1198
+#: effects/Equalization.cpp:1096
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr "Tidak bisa menulis ke file \"%s\": %s"
+
+#: Project.cpp:2922
#, c-format
msgid "Saved %s"
msgstr "Tersimpan %s"
-#: Project.cpp:2806
+#: Project.cpp:3075
#, c-format
msgid "Imported '%s'"
msgstr "Terimpor '%s'"
-#: Project.cpp:2807
-#: import/ImportPCM.cpp:483
-#: import/ImportPCM.cpp:527
+#: Project.cpp:3076
msgid "Import"
msgstr "Impor"
-#: Project.cpp:2840
-#: Project.cpp:2848
+#: Project.cpp:3111
msgid "Error importing"
msgstr "Error menginpor"
-#: Project.cpp:2882
+#: Project.cpp:3158
msgid "Save Speech As:"
msgstr "Simpan Speech Sebagai:"
-#: Project.cpp:2884
+#: Project.cpp:3160
msgid "Windows PCM Audio file (*.wav)|*.wav"
msgstr "File Windows PCM Audio(*.wav)|*.wav"
-#: Project.cpp:2891
-msgid "Audacity compressed project files (.aup) save your work in a smaller, compressed (.ogg) format. \n"
+#: Project.cpp:3167
+msgid ""
+"Audacity compressed project files (.aup) save your work in a smaller, compressed (.ogg) format. \n"
"Compressed project files are a good way to transmit your project online, because they are much smaller. \n"
"To open a compressed project takes longer than usual, as it imports each compressed track. \n"
"\n"
"Most other programs can't open Audacity project files.\n"
"When you want to save a file that can be opened by other programs, select one of the\n"
"Export commands."
-msgstr "File proyek Audacity (.aup) menyimpan pekerjaan Anda lebih kecil, karena format terkompres (.ogg) \n"
+msgstr ""
+"File proyek Audacity (.aup) menyimpan pekerjaan Anda lebih kecil, karena format terkompres (.ogg) \n"
"Proyek yang terkompres baik untuk menyebarkan proyek Anda secara online karena saking kecilnya.\n"
"Untuk membuka proyek terkompres butuh waktu lebih lama, karena harus mengimpor setiap trek yang terkompres.\n"
"\n"
@@ -3174,154 +3309,337 @@ msgstr "File proyek Audacity (.aup) menyimpan pekerjaan Anda lebih kecil, karena
"Ketika anda ingin menyimpan file yang bisa dibuka oleh program lain, Pilih salah satu\n"
"perintah Ekspor."
-#: Project.cpp:2894
-msgid "You are saving an Audacity project file (.aup).\n"
+#: Project.cpp:3170
+msgid ""
+"You are saving an Audacity project file (.aup).\n"
"\n"
"Saving a project creates a file that only Audacity can open.\n"
"\n"
"To save an audio file for other programs, use one of the \"File > Export\" commands.\n"
-msgstr "Anda sedang menyimpan file proyek Audacity (.aup).\n"
+msgstr ""
+"Anda sedang menyimpan file proyek Audacity (.aup).\n"
"\n"
"emnyimpan proyek akan membuat file dimana hanya Audacity yang bisa membukanya.\n"
"\n"
"Untuk emnyimpan file untuk program lainnya, gunakan salah satu perintah \"Berkas > Ekspor\".\n"
-#: Project.cpp:2898
+#: Project.cpp:3174
msgid "Audacity projects (*.aup)|*.aup"
msgstr "Proyek Audacity (*.aup)|*.aup"
-#: Project.cpp:2952
+#: Project.cpp:3223
msgid "Created new project"
msgstr "Membuat proyek baru"
-#: Project.cpp:3111
+#: Project.cpp:3365
#, c-format
msgid "Deleted %.2f seconds at t=%.2f"
msgstr "Terhapus %.2f detik pada t=%.2f"
-#: Project.cpp:3114
-#: effects/Equalization.cpp:1276
-#: effects/Equalization.cpp:2607
+#: Project.cpp:3368
+#: effects/Equalization.cpp:1296
+#: effects/Equalization.cpp:2636
msgid "Delete"
msgstr "Hapus"
-#: Project.cpp:3308
+#: Project.cpp:3562
#, c-format
msgid "Disk space remains for recording %d hours and %d minutes."
msgstr "Ruang disk tinggal %d jam dan %d menit waktu rekaman."
-#: Project.cpp:3311
+#: Project.cpp:3565
#, c-format
msgid "Disk space remains for recording 1 hour and %d minutes."
msgstr "Ruang disk tinggal 1 jam dan %d menit waktu rekaman."
-#: Project.cpp:3314
+#: Project.cpp:3568
#, c-format
msgid "Disk space remains for recording %d minutes."
msgstr "Ruang disk tinggal %d menit waktu rekaman."
-#: Project.cpp:3317
+#: Project.cpp:3571
#, c-format
msgid "Disk space remains for recording %d seconds."
msgstr "Ruang disk tinggal %d detik waktu rekaman."
-#: Project.cpp:3320
+#: Project.cpp:3574
msgid "Out of disk space"
msgstr "Ruang disk tidak cukup"
-#: Project.cpp:3333
+#: Project.cpp:3587
#, c-format
msgid "Import(s) complete. Running %d on-demand waveform calculations. Overall %2.0f%% complete."
msgstr "Mengimpor selesai. Menjalankan %d perhitungan waveform di tempat. %2.0f%% selesai dari semuanya."
-#: Project.cpp:3336
+#: Project.cpp:3590
#, c-format
msgid "Import complete. Running an on-demand waveform calculation. %2.0f%% complete."
msgstr "Mengimpor selesai. Menjalankan perhitungan waveform di tempat. %2.0f%% selesai."
-#: Project.cpp:3614
+#: Project.cpp:3874
msgid "Could not remove old autosave file: "
msgstr "Tidak bisa membuang file autosimpan yang lama:"
-#: Project.cpp:3655
+#: Project.cpp:3915
msgid "New Project"
msgstr "Proyek Baru"
-#: Project.cpp:3668
+#: Project.cpp:3945
msgid "Error writing autosave file"
msgstr "Error menulis file simpan otomatis"
-#: Project.cpp:3693
+#: Project.cpp:3960
msgid "Could not create autosave file: "
msgstr "Tidak bisa membuat file autosimpan:"
-#: Project.cpp:3719
+#: Project.cpp:3986
#, c-format
msgid "Actual Rate: %d"
msgstr "Rate Asli: %d"
-#: Resample.cpp:42
+#: Resample.cpp:62
msgid "Libresample by Dominic Mazzoni and Julius Smith"
msgstr "Libresample dari Dominic Mazzoni and Julius Smith"
-#: Resample.cpp:53
+#: Resample.cpp:73
msgid "High-quality Sinc Interpolation"
msgstr "Interpolasi Sinc Berkualitas Tinggi"
-#: Resample.cpp:55
+#: Resample.cpp:75
msgid "Fast Sinc Interpolation"
msgstr "Interpolasi Sinc yang Cepat"
-#: Resample.cpp:125
+#: Resample.cpp:141
msgid "Libsamplerate by Erik de Castro Lopo"
msgstr "Libsamplerate dari Erik de Castro Lopo"
-#: Resample.cpp:218
+#: Resample.cpp:230
#, c-format
msgid "Libsamplerate error: %d\n"
msgstr "Libsamplerate error: %d\n"
-#: Resample.cpp:240
-#: Resample.cpp:250
+#: Resample.cpp:252
+#: Resample.cpp:262
msgid "Resampling disabled."
msgstr "Sampel ulang dimatikan."
-#. i18n-hint: Audio data bit depth (precison): 16-bit integers
+#. i18n-hint: Audio data bit depth (precision): 16-bit integers
#: SampleFormat.cpp:66
msgid "16-bit PCM"
msgstr "16-bit PCM"
-#. i18n-hint: Audio data bit depth (precison): 24-bit integers
+#. i18n-hint: Audio data bit depth (precision): 24-bit integers
#: SampleFormat.cpp:69
msgid "24-bit PCM"
msgstr "24-bit PCM"
-#. i18n-hint: Audio data bit depth (precison): 32-bit floating point
+#. i18n-hint: Audio data bit depth (precision): 32-bit floating point
#: SampleFormat.cpp:72
msgid "32-bit float"
msgstr "32-bit float"
-#: Screenshot.cpp:384
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr "Biingkai Pengambilan Layar"
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr "Pilih lokasi untuk menyimpan file"
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr "Simpan Gambar ke:"
+
+#: Screenshot.cpp:328
+#: export/ExportMultiple.cpp:242
+#: prefs/DirectoriesPrefs.cpp:94
+msgid "Choose..."
+msgstr "Pilih..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr "Ambil antara jendela atau layar"
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr "Ubah ukuran lebih kecil"
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr "Ubah ukuran lebih besar"
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr "Ltr Blkg Biru"
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr "Ltr Blkg Putih"
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr "Ambil Jendela Saja"
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr "Ambil Jendela Penuh"
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr "Ambil Tambahan Jendela"
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr "Ambil Full Screen"
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr "Tunggu 5 detik dan ambil jendela/dialog terdepan"
+
+#: Screenshot.cpp:369
+#: effects/Normalize.cpp:74
+#: effects/Normalize.cpp:75
+msgid "false"
+msgstr "salah"
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr "Ambil bagian dari jendela proyek"
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr "Semua Toolbar"
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr "BarSeleksi"
+
+#: Screenshot.cpp:381
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr "Alat"
+
+#: Screenshot.cpp:382
+#: effects/Contrast.cpp:399
+#: toolbars/ControlToolBar.cpp:83
+msgid "Control"
+msgstr "Kontrol"
+
+#: Screenshot.cpp:388
+#: effects/LoadEffects.cpp:114
+#: toolbars/MixerToolBar.cpp:59
+msgid "Mixer"
+msgstr "Mixer"
+
+#: Screenshot.cpp:389
+#: toolbars/MeterToolBar.cpp:50
+msgid "Meter"
+msgstr "Meter"
+
+#: Screenshot.cpp:390
+msgid "Edit"
+msgstr "Edit"
+
+#: Screenshot.cpp:391
+#: prefs/AudioIOPrefs.cpp:137
+#: prefs/AudioIOPrefs.cpp:150
+#: prefs/MidiIOPrefs.cpp:118
+#: prefs/MidiIOPrefs.cpp:132
+#: toolbars/DeviceToolBar.cpp:57
+msgid "Device"
+msgstr "Perangkat"
+
+#: Screenshot.cpp:392
+#: toolbars/TranscriptionToolBar.cpp:84
+msgid "Transcription"
+msgstr "Transkrispi"
+
+#: Screenshot.cpp:398
+#: TrackPanel.cpp:454
+#: TrackPanel.cpp:455
+msgid "Track Panel"
+msgstr "Panel Trek"
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr "Penggaris"
+
+#: Screenshot.cpp:400
+#: export/ExportMultiple.cpp:285
+#: export/ExportMultiple.cpp:287
+#: prefs/GUIPrefs.cpp:92
+msgid "Tracks"
+msgstr "Trek"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr "Trek Pertama"
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr "Trek Kedua"
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr "Skala"
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr "Satu Dtk"
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr "10 Dtk"
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr "Satu Mnt"
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr "Lima Mnt"
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr "Satu Jam"
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr "Trek Kecil"
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr "Trek Sedang"
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr "Trek Panjang"
+
+#: Screenshot.cpp:599
msgid "Saved "
msgstr "Tersimpan"
-#: Screenshot.cpp:387
+#: Screenshot.cpp:602
msgid "Error trying to save file: "
msgstr "error dalam menyimpan file:"
-#: Sequence.cpp:804
-#: Sequence.cpp:814
-#: Sequence.cpp:821
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr "Pilih lokasi untuk menyimpan gambar hasil screenshot"
+
+#: Sequence.cpp:799
+#: Sequence.cpp:809
+#: Sequence.cpp:816
msgid "Gap detected in project file\n"
msgstr "Pemisah terdeteksi pada file proyek\n"
-#: ShuttleGui.cpp:1972
-#: effects/Effect.cpp:417
+#: ShuttleGui.cpp:2034
+#: effects/Effect.cpp:429
#: effects/audiounits/AudioUnitEffect.cpp:877
msgid "Pre&view"
msgstr "Pre&view"
-#: ShuttleGui.cpp:1979
+#: ShuttleGui.cpp:2041
msgid "&Debug"
msgstr "&Benah"
@@ -3341,716 +3659,710 @@ msgstr "&selamat datang di Audacity!"
msgid "Don't show this again at start up"
msgstr "Jangan tampilkan lagi waktu start up"
-#: Tags.cpp:640
+#: Tags.cpp:628
msgid "Artist Name"
msgstr "Nama Artis"
-#: Tags.cpp:641
+#: Tags.cpp:629
msgid "Track Title"
msgstr "Judul Trek"
-#: Tags.cpp:642
+#: Tags.cpp:630
msgid "Album Title"
msgstr "Judul album"
-#: Tags.cpp:643
+#: Tags.cpp:631
msgid "Track Number"
msgstr "Nomor Trek"
-#: Tags.cpp:644
-#: Tags.cpp:2147
+#: Tags.cpp:632
msgid "Year"
msgstr "Tahun"
-#: Tags.cpp:645
+#: Tags.cpp:633
msgid "Genre"
msgstr "Genre"
-#: Tags.cpp:646
-#: Tags.cpp:2157
-#: prefs/MousePrefs.cpp:96
+#: Tags.cpp:634
+#: prefs/MousePrefs.cpp:100
msgid "Comments"
msgstr "Kommentar"
-#: Tags.cpp:777
+#: Tags.cpp:783
msgid "Use arrow keys (or RETURN key after editing) to navigate fields."
-msgstr ""
+msgstr "Gunakan tombol arah (atau tombol RETURN setelah mengedit) untuk navigasi."
-#: Tags.cpp:813
+#: Tags.cpp:807
msgid "Tag Name"
msgstr "Nama Tag"
-#: Tags.cpp:814
+#: Tags.cpp:808
msgid "Tag Value"
msgstr "Nilai Tag"
-#: Tags.cpp:829
-#: Tags.cpp:1486
-#: prefs/KeyConfigPrefs.cpp:116
+#: Tags.cpp:823
+#: prefs/KeyConfigPrefs.cpp:141
+#: widgets/FileHistory.cpp:174
msgid "&Clear"
msgstr "&Hapus"
-#: Tags.cpp:835
+#: Tags.cpp:829
msgid "Genres"
msgstr "Genre"
-#: Tags.cpp:826
+#: Tags.cpp:833
msgid "E&dit..."
-msgstr ""
+msgstr "E&dit..."
-#: Tags.cpp:827
+#: Tags.cpp:834
msgid "Rese&t..."
-msgstr ""
+msgstr "A&tur ulang..."
-#: Tags.cpp:845
-#: Tags.cpp:1470
-#: Tags.cpp:1997
+#: Tags.cpp:839
msgid "Template"
msgstr "Sketsa"
-#: Tags.cpp:849
-#: Tags.cpp:1474
-#: Tags.cpp:2001
-#: prefs/KeyConfigPrefs.cpp:126
+#: Tags.cpp:843
+#: prefs/KeyConfigPrefs.cpp:151
msgid "&Load..."
msgstr "&Ambil..."
-#: Tags.cpp:850
-#: Tags.cpp:1475
-#: Tags.cpp:2002
-#: prefs/KeyConfigPrefs.cpp:125
+#: Tags.cpp:844
+#: prefs/KeyConfigPrefs.cpp:152
msgid "&Save..."
msgstr "Sim&pan..."
-#: Tags.cpp:852
-#: Tags.cpp:1477
-#: Tags.cpp:2004
+#: Tags.cpp:846
msgid "S&et Default"
msgstr "A&tur Normal"
-#: Tags.cpp:1002
-#: Tags.cpp:1640
-#: Tags.cpp:2368
+#: Tags.cpp:996
msgid "Edit Genres"
msgstr "Edit Genre"
-#: Tags.cpp:1035
-#: Tags.cpp:1047
-#: Tags.cpp:1062
-#: Tags.cpp:1075
-#: Tags.cpp:1678
-#: Tags.cpp:1690
-#: Tags.cpp:1705
-#: Tags.cpp:1718
-#: Tags.cpp:2411
-#: Tags.cpp:2423
-#: Tags.cpp:2438
-#: Tags.cpp:2451
+#: Tags.cpp:1029
+#: Tags.cpp:1041
+#: Tags.cpp:1056
+#: Tags.cpp:1069
msgid "Reset Genres"
msgstr "Atur Ulang Genre"
-#: Tags.cpp:1035
-#: Tags.cpp:1075
-#: Tags.cpp:1678
-#: Tags.cpp:1718
-#: Tags.cpp:2411
-#: Tags.cpp:2451
+#: Tags.cpp:1029
+#: Tags.cpp:1069
msgid "Unable to save genre file."
msgstr "Tidak bisa menyimpan file genre."
-#: Tags.cpp:1046
-#: Tags.cpp:1689
-#: Tags.cpp:2422
+#: Tags.cpp:1040
msgid "Are you sure you want to reset the genre list to defaults?"
msgstr "Anda yakin ingin mengatur ulang daftar genre Anda?"
-#: Tags.cpp:1062
-#: Tags.cpp:1705
-#: Tags.cpp:2438
+#: Tags.cpp:1056
msgid "Unable to open genre file."
msgstr "Tidak bisa membuka file genre."
-#: Tags.cpp:1084
+#: Tags.cpp:1091
msgid "Load Metadata As:"
-msgstr ""
+msgstr "Ambil Metadata Sebagai:"
-#: Tags.cpp:1122
-#: Tags.cpp:1772
-#: Tags.cpp:2494
+#: Tags.cpp:1116
msgid "Error loading metadata"
msgstr "Error mengambil metadata"
-#: Tags.cpp:1097
-#: Tags.cpp:1151
-#: Tags.cpp:1751
-#: Tags.cpp:1787
-#: Tags.cpp:2473
-#: Tags.cpp:2509
+#: Tags.cpp:1145
msgid "Save Metadata As:"
msgstr "Simpan Metadata Sebagai:"
+#: Tags.cpp:1200
+msgid "Error saving tags file"
+msgstr "Error menyimpan file tags"
+
#: Theme.cpp:638
#, c-format
-msgid "Audacity could not write file:\n"
+msgid ""
+"Audacity could not write file:\n"
" %s."
-msgstr "Audacity tidak bisa menulis file:\n"
+msgstr ""
+"Audacity tidak bisa menulis file:\n"
" %s."
#: Theme.cpp:656
#, c-format
-msgid "Audacity could not open file:\n"
+msgid ""
+"Audacity could not open file:\n"
" %s\n"
"for writing."
-msgstr "Audacity tidak bisa membuka file:\n"
+msgstr ""
+"Audacity tidak bisa membuka file:\n"
" %s\n"
"untuk ditulis."
#: Theme.cpp:664
#, c-format
-msgid "Audacity could not write images to file:\n"
+msgid ""
+"Audacity could not write images to file:\n"
" %s."
-msgstr "Audacity tidak bisa menulis gambar ke file:\n"
+msgstr ""
+"Audacity tidak bisa menulis gambar ke file:\n"
" %s."
#: Theme.cpp:799
#, c-format
-msgid "Audacity could not find file:\n"
+msgid ""
+"Audacity could not find file:\n"
" %s.\n"
"Theme not loaded."
-msgstr "Audacity tidak bisa menemukan file:\n"
+msgstr ""
+"Audacity tidak bisa menemukan file:\n"
" %s.\n"
"Tema tidak diambil."
#: Theme.cpp:807
#: Theme.cpp:896
#, c-format
-msgid "Audacity could not load file:\n"
+msgid ""
+"Audacity could not load file:\n"
" %s.\n"
"Bad png format perhaps?"
-msgstr "Audacity tidak bisa mengambil file:\n"
+msgstr ""
+"Audacity tidak bisa mengambil file:\n"
" %s.\n"
"Format png yang buruk mungkin?"
#: Theme.cpp:823
-msgid "Audacity could not read its default theme.\n"
+msgid ""
+"Audacity could not read its default theme.\n"
"Please report the problem."
-msgstr "Audacity tidak bisa membaca tema normalnya.\n"
+msgstr ""
+"Audacity tidak bisa membaca tema normalnya.\n"
"Tolong segera laporkan masalah ini."
#: Theme.cpp:918
#, c-format
-msgid "None of the expected theme component files\n"
+msgid ""
+"None of the expected theme component files\n"
" were found in:\n"
" %s."
-msgstr "Tidak ditemukan file komponen\n"
+msgstr ""
+"Tidak ditemukan file komponen\n"
" tema di:\n"
" %s."
#: Theme.cpp:942
#: effects/NoiseRemoval.cpp:173
#, c-format
-msgid "Could not create directory:\n"
+msgid ""
+"Could not create directory:\n"
" %s"
-msgstr "Tidak bisa membuat direktori:\n"
+msgstr ""
+"Tidak bisa membuat direktori:\n"
" %s"
#: Theme.cpp:963
#, c-format
-msgid "Audacity could not save file:\n"
+msgid ""
+"Audacity could not save file:\n"
" %s"
-msgstr "Audacity tidak bisa menyimpan file:\n"
+msgstr ""
+"Audacity tidak bisa menyimpan file:\n"
" %s"
#: Theme.cpp:975
#, c-format
-msgid "All required files in:\n"
+msgid ""
+"All required files in:\n"
" %s\n"
"were already present."
-msgstr "Semua file yang dibutuhjkan di:\n"
+msgstr ""
+"Semua file yang dibutuhjkan di:\n"
" %s\n"
"sudah ada."
#: TimeDialog.cpp:53
-#: TimerRecordDialog.cpp:227
-#: TimerRecordDialog.cpp:305
-#: TimerRecordDialog.cpp:309
-#: effects/Noise.cpp:243
-#: effects/ToneGen.cpp:323
-#: effects/ToneGen.cpp:366
+#: TimeDialog.cpp:64
+#: TimerRecordDialog.cpp:236
+#: TimerRecordDialog.cpp:367
+#: TimerRecordDialog.cpp:371
+#: effects/DtmfGen.cpp:446
+#: effects/Noise.cpp:191
+#: effects/Noise.cpp:207
+#: effects/ToneGen.cpp:278
+#: effects/ToneGen.cpp:290
+#: effects/ToneGen.cpp:322
+#: effects/ToneGen.cpp:334
msgid "Duration"
msgstr "Durasi"
-#: TimerRecordDialog.cpp:68
+#: TimerRecordDialog.cpp:69
msgid "Audacity Timer Record"
msgstr "Pencatat Waktu Rekaman Audacity"
-#: TimerRecordDialog.cpp:224
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr "Durasinya nol. Tidak ada yang akan direkam."
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr "Error dalam Durasi"
+
+#: TimerRecordDialog.cpp:233
msgid "Recording start"
msgstr "Mulai merekam"
-#: TimerRecordDialog.cpp:225
+#: TimerRecordDialog.cpp:234
msgid "Recording end"
msgstr "Selesai merekam"
-#: TimerRecordDialog.cpp:230
+#: TimerRecordDialog.cpp:239
msgid "Audacity Timer Record Progress"
msgstr "Peningkatan Pencatat Waktu Rekaman Audacity"
-#: TimerRecordDialog.cpp:267
+#: TimerRecordDialog.cpp:329
msgid "Start Date and Time"
msgstr "Tanggal dan Waktu mulai"
-#: TimerRecordDialog.cpp:274
+#: TimerRecordDialog.cpp:336
msgid "Start Date"
msgstr "Tanggal Mulai"
-#: TimerRecordDialog.cpp:286
+#: TimerRecordDialog.cpp:348
msgid "End Date and Time"
msgstr "Tanggal dan Waktu selesai"
-#: TimerRecordDialog.cpp:294
+#: TimerRecordDialog.cpp:356
msgid "End Date"
msgstr "Tanggal Selesai"
#. i18n-hint: A time specification like "Sunday 28th October 2007 15:16:17 GMT"
#. * but hopefully translated by wxwidgets will be inserted into this
-#: TimerRecordDialog.cpp:381
+#: TimerRecordDialog.cpp:443
#, c-format
msgid "Waiting to start recording at %s.\n"
msgstr "Menunggu untuk memulai rekaman pada %s.\n"
-#: TimerRecordDialog.cpp:382
+#: TimerRecordDialog.cpp:444
msgid "Audacity Timer Record - Waiting for Start"
msgstr "Pencatat Waktu Rekaman Audacity - Menunggu untuk mulai"
-#: TrackPanel.cpp:457
-#: TrackPanel.cpp:458
-msgid "Track Panel"
-msgstr "Panel Trek"
-
-#: TrackPanel.cpp:541
-#: prefs/QualityPrefs.cpp:97
+#: TrackPanel.cpp:605
+#: prefs/QualityPrefs.cpp:101
msgid "Other..."
msgstr "Lainnya..."
-#: TrackPanel.cpp:549
-#: TrackPanel.cpp:571
-#: TrackPanel.cpp:580
-#: TrackPanel.cpp:588
-#: TrackPanel.cpp:5793
+#: TrackPanel.cpp:613
+#: TrackPanel.cpp:636
+#: TrackPanel.cpp:645
+#: TrackPanel.cpp:653
msgid "Name..."
msgstr "Nama..."
-#: TrackPanel.cpp:551
-#: TrackPanel.cpp:573
-#: TrackPanel.cpp:584
-#: TrackPanel.cpp:590
-#: TrackPanel.cpp:5797
+#: TrackPanel.cpp:615
+#: TrackPanel.cpp:638
+#: TrackPanel.cpp:649
+#: TrackPanel.cpp:655
msgid "Move Track Up"
msgstr "Pindahkan Trek ke Atas"
-#: TrackPanel.cpp:552
-#: TrackPanel.cpp:574
-#: TrackPanel.cpp:585
-#: TrackPanel.cpp:591
-#: TrackPanel.cpp:5798
+#: TrackPanel.cpp:616
+#: TrackPanel.cpp:639
+#: TrackPanel.cpp:650
+#: TrackPanel.cpp:656
msgid "Move Track Down"
msgstr "Pindahkan Trek ke Bawah"
-#: TrackPanel.cpp:554
-#: effects/ToneGen.cpp:319
-#: prefs/GUIPrefs.cpp:154
+#: TrackPanel.cpp:618
+#: effects/ToneGen.cpp:274
+#: prefs/GUIPrefs.cpp:117
msgid "Waveform"
msgstr "Waveform"
-#: TrackPanel.cpp:555
-#: prefs/GUIPrefs.cpp:155
+#: TrackPanel.cpp:619
+#: prefs/GUIPrefs.cpp:118
msgid "Waveform (dB)"
msgstr "Waveform (db)"
-#: TrackPanel.cpp:557
-#: prefs/GUIPrefs.cpp:157
+#: TrackPanel.cpp:621
+#: prefs/GUIPrefs.cpp:120
msgid "Spectrum log(f)"
msgstr "Spektrum log(f)"
#. i18n-hint: short form of 'logarithm'
-#: TrackPanel.cpp:558
-#: prefs/GUIPrefs.cpp:158
+#: TrackPanel.cpp:622
+#: prefs/GUIPrefs.cpp:121
msgid "Pitch (EAC)"
msgstr "Pitch (EAC)"
-#: TrackPanel.cpp:560
-#: TrackPanel.cpp:6096
+#: TrackPanel.cpp:624
+#: TrackPanel.cpp:6188
msgid "Mono"
msgstr "Mono"
-#: TrackPanel.cpp:561
-#: TrackPanel.cpp:6095
+#: TrackPanel.cpp:625
+#: TrackPanel.cpp:6187
msgid "Left Channel"
msgstr "Bagian Kiri"
-#: TrackPanel.cpp:562
-#: TrackPanel.cpp:6095
+#: TrackPanel.cpp:626
+#: TrackPanel.cpp:6187
msgid "Right Channel"
msgstr "Bagian Kanan"
-#: TrackPanel.cpp:563
+#: TrackPanel.cpp:627
msgid "Make Stereo Track"
msgstr "Buat Trek Stero"
-#: TrackPanel.cpp:564
+#: TrackPanel.cpp:628
msgid "Split Stereo Track"
msgstr "Gabung Trek Stereo"
-#: TrackPanel.cpp:566
+#: TrackPanel.cpp:629
+msgid "Split Stereo to Mono"
+msgstr "Pisah Stereo ke Mono"
+
+#: TrackPanel.cpp:631
msgid "Set Sample Format"
msgstr "Atur Format Sampel"
-#: TrackPanel.cpp:568
-#: TrackPanel.cpp:6341
+#: TrackPanel.cpp:633
+#: TrackPanel.cpp:6449
msgid "Set Rate"
msgstr "Atur Rate"
-#: TrackPanel.cpp:576
+#: TrackPanel.cpp:641
msgid "Up Octave"
msgstr "Oktaf Atas"
-#: TrackPanel.cpp:577
+#: TrackPanel.cpp:642
msgid "Down Octave"
msgstr "Oktaf Bawah"
-#: TrackPanel.cpp:582
-#: TrackPanel.cpp:5795
+#: TrackPanel.cpp:647
msgid "Font..."
msgstr "Huruf..."
-#: TrackPanel.cpp:593
+#: TrackPanel.cpp:658
msgid "Set Range..."
msgstr "Atur Jarak..."
-#: TrackPanel.cpp:597
+#: TrackPanel.cpp:662
#: toolbars/EditToolBar.cpp:135
msgid "Copy"
msgstr "Salin"
-#: TrackPanel.cpp:1258
+#: TrackPanel.cpp:1310
msgid "Click to vertically zoom in, Shift-click to zoom out, Drag to create a particular zoom region."
msgstr "Klik untuk perbesar secara vertikal, klik dengan Shift untuk perkecil, Dorong untuk membuat wilayah zoom kecil."
-#: TrackPanel.cpp:1263
+#: TrackPanel.cpp:1315
msgid "Drag the label vertically to change the order of the tracks."
msgstr "Dorong label secara vertikal untuk mengubah urutan trek."
-#: TrackPanel.cpp:1283
+#: TrackPanel.cpp:1335
msgid "Click and drag to adjust relative size of stereo tracks."
msgstr "Klik dan dorong untuk mengubah ukuran relatif trek stereo."
-#: TrackPanel.cpp:1286
+#: TrackPanel.cpp:1338
msgid "Click and drag to resize the track."
msgstr "Klik dan dorong untuk mengubah ukuran trek"
-#: TrackPanel.cpp:1317
+#: TrackPanel.cpp:1369
msgid "Drag one or more label boundaries"
msgstr "Dorong satu atau lebih batasan label"
-#: TrackPanel.cpp:1318
+#: TrackPanel.cpp:1370
msgid "Drag label boundary"
msgstr "Borong batasan label"
#. i18n-hint: This string is for the Mac OS, which uses Command-, as the shortcut for Preferences
-#: TrackPanel.cpp:1334
+#: TrackPanel.cpp:1386
msgid "Multi-Tool Mode: Cmd-, for Mouse and Keyboard Preferences"
msgstr "Mode Tool Serbaguna: Cmd-. untuk Preferensi Mouse dan Keyboard"
#. i18n-hint: This string is for Windows and Linux, which uses Control-P as the shortcut for Preferences
-#: TrackPanel.cpp:1337
+#: TrackPanel.cpp:1389
msgid "Multi-Tool Mode: Ctrl-P for Mouse and Keyboard Preferences"
msgstr "Mode Tool Serbaguna: Ctrl-P untuk Preferensi Mouse dan Keyboard"
-#: TrackPanel.cpp:1383
+#: TrackPanel.cpp:1435
msgid "Click and drag to move left selection boundary."
msgstr "Klik dan dorong untuk memindahkan batasan kiri."
-#: TrackPanel.cpp:1388
+#: TrackPanel.cpp:1440
msgid "Click and drag to move right selection boundary."
msgstr "Klik dan dorong untuk memindahkan batasan kanan."
-#: TrackPanel.cpp:1730
-#: TrackPanel.cpp:3959
-#: TrackPanel.cpp:3991
-#: TrackPanel.cpp:4255
-#: TrackPanel.cpp:6490
-#: TrackPanel.cpp:6510
+#: TrackPanel.cpp:1778
+#: TrackPanel.cpp:4046
+#: TrackPanel.cpp:4078
+#: TrackPanel.cpp:4340
+#: TrackPanel.cpp:6598
+#: TrackPanel.cpp:6618
msgid "Modified Label"
msgstr "Label yang Telah Diubah"
-#: TrackPanel.cpp:1731
-#: TrackPanel.cpp:3960
-#: TrackPanel.cpp:3992
-#: TrackPanel.cpp:4256
-#: TrackPanel.cpp:6491
-#: TrackPanel.cpp:6511
+#: TrackPanel.cpp:1779
+#: TrackPanel.cpp:4047
+#: TrackPanel.cpp:4079
+#: TrackPanel.cpp:4341
+#: TrackPanel.cpp:6599
+#: TrackPanel.cpp:6619
msgid "Label Edit"
msgstr "Label Edit"
-#: TrackPanel.cpp:1971
+#: TrackPanel.cpp:2015
msgid "Adjusted envelope."
msgstr "Amplop diubah."
-#: TrackPanel.cpp:1972
-#: prefs/MousePrefs.cpp:115
+#: TrackPanel.cpp:2016
+#: prefs/MousePrefs.cpp:119
msgid "Envelope"
msgstr "Amplop"
-#: TrackPanel.cpp:2123
+#: TrackPanel.cpp:2166
msgid "Moved clip to another track"
msgstr "Telah dipindah ke trek yang lain"
-#: TrackPanel.cpp:2127
+#: TrackPanel.cpp:2170
msgid "left"
msgstr "kiri"
-#: TrackPanel.cpp:2127
+#: TrackPanel.cpp:2170
msgid "right"
msgstr "kanan"
#. i18n-hint: %s is a direction like left or right
-#: TrackPanel.cpp:2129
+#: TrackPanel.cpp:2172
#, c-format
msgid "Time shifted tracks/clips %s %.02f seconds"
msgstr "Waktu trek/klip %s dipersingkat %.02f seconds"
-#: TrackPanel.cpp:2133
-#: prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:112
-#: prefs/MousePrefs.cpp:113
+#: TrackPanel.cpp:2176
+#: prefs/MousePrefs.cpp:115
+#: prefs/MousePrefs.cpp:116
+#: prefs/MousePrefs.cpp:117
msgid "Time-Shift"
msgstr "Time-Shift"
-#: TrackPanel.cpp:2916
+#: TrackPanel.cpp:2969
msgid "To use Draw, choose 'Waveform' in the Track Drop-down Menu."
msgstr "Untuk menggunakan Gambar, pilih 'Waveform' pada Menu Trek."
-#: TrackPanel.cpp:2933
+#: TrackPanel.cpp:2986
msgid "To use Draw, zoom in further until you can see the individual samples."
msgstr "Untuk emnggunakan Gambar, perbesar sampai Anda melihat sampel berdiri sendiri."
-#: TrackPanel.cpp:3205
+#: TrackPanel.cpp:3260
msgid "Moved Sample"
msgstr "Dipindahkan Sampel"
-#: TrackPanel.cpp:3206
+#: TrackPanel.cpp:3261
msgid "Sample Edit"
msgstr "Sampel Edit"
-#: TrackPanel.cpp:3305
+#: TrackPanel.cpp:3354
#, c-format
msgid "Removed track '%s.'"
msgstr "Dibuang trek '%s.'"
-#: TrackPanel.cpp:3307
+#: TrackPanel.cpp:3356
msgid "Track Remove"
msgstr "Pembuangan Trek"
-#: TrackPanel.cpp:3448
+#: TrackPanel.cpp:3502
msgid "Moved gain slider"
msgstr "Pindahkan slider kekuatan"
-#: TrackPanel.cpp:3448
+#: TrackPanel.cpp:3502
msgid "Moved pan slider"
msgstr "Pindahkan slider pan"
#. i18n-hint: Title of the Gain slider, used to adjust the volume
-#: TrackPanel.cpp:3449
-#: TrackPanel.cpp:5703
-#: TrackPanel.cpp:7244
+#: TrackPanel.cpp:3503
+#: TrackPanel.cpp:5792
+#: TrackPanel.cpp:7239
msgid "Gain"
msgstr "Kekuatan"
#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: TrackPanel.cpp:3449
-#: TrackPanel.cpp:5641
-#: TrackPanel.cpp:7251
+#: TrackPanel.cpp:3503
+#: TrackPanel.cpp:5740
+#: TrackPanel.cpp:7247
msgid "Pan"
msgstr "Pan"
-#: TrackPanel.cpp:3576
-#: TrackPanel.cpp:6441
+#: TrackPanel.cpp:3656
+#: TrackPanel.cpp:6549
msgid "up"
msgstr "atas"
-#: TrackPanel.cpp:3580
-#: TrackPanel.cpp:6442
+#: TrackPanel.cpp:3660
+#: TrackPanel.cpp:6550
msgid "down"
msgstr "bawah"
-#: TrackPanel.cpp:3587
-#: TrackPanel.cpp:6437
+#: TrackPanel.cpp:3667
+#: TrackPanel.cpp:6545
#, c-format
msgid "Moved '%s' %s"
msgstr "Dipindahkan '%s' %s"
-#: TrackPanel.cpp:3590
-#: TrackPanel.cpp:6443
+#: TrackPanel.cpp:3670
+#: TrackPanel.cpp:6551
msgid "Move Track"
msgstr "Pindahkan Trek"
-#: TrackPanel.cpp:4155
+#: TrackPanel.cpp:4241
msgid "Expand"
msgstr "Sebar"
-#: TrackPanel.cpp:4155
+#: TrackPanel.cpp:4241
msgid "Expanded Cut Line"
msgstr "Garis Potong yng Tersebar"
-#: TrackPanel.cpp:4164
+#: TrackPanel.cpp:4250
msgid "Merge"
msgstr "Gabung"
-#: TrackPanel.cpp:4164
+#: TrackPanel.cpp:4250
msgid "Merged Clips"
msgstr "Klip Tergabung"
-#: TrackPanel.cpp:4176
+#: TrackPanel.cpp:4261
msgid "Removed Cut Line"
msgstr "Garis Pemisah yang Dibuang"
-#: TrackPanel.cpp:5641
+#: TrackPanel.cpp:5740
msgid "Adjusted Pan"
msgstr "Pengubahan Pan"
-#: TrackPanel.cpp:5703
+#: TrackPanel.cpp:5792
msgid "Adjusted gain"
msgstr "Kekuatan yang Diubah"
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr "Grupkan dengan Trek Wave"
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr "Hapus grup apapun"
-
-#: TrackPanel.cpp:5923
+#: TrackPanel.cpp:6018
msgid "Can't delete track with active audio"
msgstr "Tidak bisa menghapus trek yang sedang aktif"
-#: TrackPanel.cpp:6076
+#: TrackPanel.cpp:6168
msgid "Stereo, "
msgstr "Stereo,"
-#: TrackPanel.cpp:6079
+#: TrackPanel.cpp:6171
msgid "Mono, "
msgstr "Mono,"
-#: TrackPanel.cpp:6081
+#: TrackPanel.cpp:6173
msgid "Left, "
msgstr "Kiri,"
-#: TrackPanel.cpp:6083
+#: TrackPanel.cpp:6175
msgid "Right, "
msgstr "Kanan,"
-#: TrackPanel.cpp:6105
-#: TrackPanel.cpp:6251
+#: TrackPanel.cpp:6197
+#: TrackPanel.cpp:6359
#, c-format
msgid "Changed '%s' to %s"
msgstr "Diubah '%s' ke %s"
-#: TrackPanel.cpp:6110
+#: TrackPanel.cpp:6200
msgid "Channel"
msgstr "Saluran"
-#: TrackPanel.cpp:6131
+#: TrackPanel.cpp:6241
#, c-format
msgid "Split stereo track '%s'"
msgstr "Menggabung Trek Stereo '%s'"
-#: TrackPanel.cpp:6169
+#: TrackPanel.cpp:6243
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr "Pisah Stereo ke Mono '%s'"
+
+#: TrackPanel.cpp:6275
#, c-format
msgid "Made '%s' a stereo track"
msgstr "Dibuat '%s' trek stereo"
-#: TrackPanel.cpp:6172
+#: TrackPanel.cpp:6278
msgid "Make Stereo"
msgstr "Buat Stereo"
-#: TrackPanel.cpp:6215
+#: TrackPanel.cpp:6323
#, c-format
msgid "Changed '%s' to %d Hz"
msgstr "Diubah '%s' ke %d Hz"
-#: TrackPanel.cpp:6217
+#: TrackPanel.cpp:6325
msgid "Rate Change"
msgstr "Perubahan Rate"
-#: TrackPanel.cpp:6255
+#: TrackPanel.cpp:6363
msgid "Format Change"
msgstr "Perubahan Format"
-#: TrackPanel.cpp:6405
+#: TrackPanel.cpp:6513
msgid "Change lower speed limit (%) to:"
msgstr "Ubah batas kecepatan rendah (%) ke:"
-#: TrackPanel.cpp:6406
-#: TrackPanel.cpp:6407
+#: TrackPanel.cpp:6514
+#: TrackPanel.cpp:6515
msgid "Lower speed limit"
msgstr "Batas kecepatan rendah"
-#: TrackPanel.cpp:6412
+#: TrackPanel.cpp:6520
msgid "Change upper speed limit (%) to:"
msgstr "Ubah batas kecepatan tinggi (%) ke:"
-#: TrackPanel.cpp:6413
-#: TrackPanel.cpp:6414
+#: TrackPanel.cpp:6521
+#: TrackPanel.cpp:6522
msgid "Upper speed limit"
msgstr "Batas kecepatan tinggi"
-#: TrackPanel.cpp:6422
+#: TrackPanel.cpp:6530
#, c-format
msgid "Set range to '%d' - '%d'"
msgstr "Atur jarak ke '%d' - '%d'"
-#: TrackPanel.cpp:6425
+#: TrackPanel.cpp:6533
msgid "Set Range"
msgstr "Atur Jarak"
-#: TrackPanel.cpp:6472
+#: TrackPanel.cpp:6580
msgid "Change track name to:"
msgstr "Ubah nama trek ke:"
-#: TrackPanel.cpp:6473
+#: TrackPanel.cpp:6581
msgid "Track Name"
msgstr "Nama Trek"
-#: TrackPanel.cpp:6476
+#: TrackPanel.cpp:6584
#, c-format
msgid "Renamed '%s' to '%s'"
msgstr "Diubah nama '%s' ke '%s'"
-#: TrackPanel.cpp:6479
+#: TrackPanel.cpp:6587
msgid "Name Change"
msgstr "Pengubahan Nama"
-#: TrackPanel.cpp:6580
+#: TrackPanel.cpp:6653
msgid "Label Track Font"
msgstr "Font Label Trek"
-#: TrackPanel.cpp:6592
-#: TrackPanel.cpp:6598
+#: TrackPanel.cpp:6665
+#: TrackPanel.cpp:6671
msgid "Face name"
msgstr "Nama depan"
-#: TrackPanel.cpp:6602
-#: TrackPanel.cpp:6609
+#: TrackPanel.cpp:6675
+#: TrackPanel.cpp:6682
msgid "Face size"
msgstr "Ukuran depan"
-#: TrackPanel.cpp:7171
+#: TrackPanel.cpp:7166
msgid "Mute"
msgstr "Diam"
-#: TrackPanel.cpp:7171
+#: TrackPanel.cpp:7166
msgid "Solo"
msgstr "Solo"
@@ -4105,68 +4417,75 @@ msgstr "Pengubahan Tanda -- mean: %1.4f sd: (%1.4f)\n"
msgid "Direction Changes -- mean: %1.4f sd: (%1.4f)\n"
msgstr "Pengubahan Arah -- mean: %1.4f sd: (%1.4f)\n"
-#: WaveTrack.cpp:88
+#: WaveTrack.cpp:84
msgid "Audio Track"
msgstr "Trek Audio"
-#: WaveTrack.cpp:597
-#: WaveTrack.cpp:616
-#: WaveTrack.cpp:1057
-#: WaveTrack.cpp:1076
+#: WaveTrack.cpp:978
+#: WaveTrack.cpp:997
msgid "There is not enough room available to paste the selection"
msgstr "Tidak ada ruang cukup untuk menempel itu"
-#: WaveTrack.cpp:2086
+#: WaveTrack.cpp:2023
msgid "There is not enough room available to expand the cut line"
msgstr "Tidak ada ruang yang tersedia untuk menyebarkan garis potong"
-#: commands/CommandManager.cpp:555
+#: commands/CommandManager.cpp:522
#, c-format
msgid "Plugins 1 to %i"
msgstr "Plugin 1 ke %i"
-#: commands/CommandManager.cpp:569
+#: commands/CommandManager.cpp:536
#, c-format
msgid "Plugins %i to %i"
msgstr "Plugin %i ke %i"
-#: commands/CommandManager.cpp:857
-#, fuzzy
-msgid "Disallowed for some reason. Try selecting some audio first?"
-msgstr "Tidak diperbolehkan karena beberapa alasan. Coba memilih audio dahulu?"
+#: commands/CommandManager.cpp:881
+msgid ""
+"There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
+msgstr ""
+"Ada masalah dengan perintah terakhirAnda. Jika Anda\n"
+"pikir itu adalah bug, silahkan beritahu kami apa yang terjadi."
-#: commands/CommandManager.cpp:892
-msgid "You can only do this when playing and recording are\n"
+#: commands/CommandManager.cpp:885
+msgid ""
+"You can only do this when playing and recording are\n"
" stopped. [Pausing is not sufficient.]"
-msgstr "Anda hanya bisa melakukannya ketika berhenti memainkan atau\n"
+msgstr ""
+"Anda hanya bisa melakukannya ketika berhenti memainkan atau\n"
" merekam. [Pause juga tidak berpengaruh.]"
-#: commands/CommandManager.cpp:894
-msgid "You must first select some stereo audio for this\n"
+#: commands/CommandManager.cpp:887
+msgid ""
+"You must first select some stereo audio for this\n"
" to use. [You can't use this with mono.]"
-msgstr "Anda harus pilih beberapa trek stereo dahulu\n"
+msgstr ""
+"Anda harus pilih beberapa trek stereo dahulu\n"
" untuk menggunakannya. [Anda tidak bisa menggunakannya pada Mono.]"
-#: commands/CommandManager.cpp:896
+#: commands/CommandManager.cpp:889
msgid "You must first select some audio for this to use."
msgstr "Anda harus pilih beberapa audio terlebih dahulu."
-#: commands/CommandManager.cpp:898
-msgid "You must first select some audio for this\n"
+#: commands/CommandManager.cpp:891
+msgid ""
+"You must first select some audio for this\n"
" to use. [Selecting other kinds of track won't work.]"
-msgstr "Anda harus pilih beberapa audio dahulu\n"
+msgstr ""
+"Anda harus pilih beberapa audio dahulu\n"
" untuk menggunakannya. [Memilih jenis trek yang lain tidak akan bekerja.]"
-#: commands/CommandManager.cpp:903
+#: commands/CommandManager.cpp:896
msgid "Disallowed"
msgstr "Tidak Diperbolehkan"
-#: commands/CommandManager.cpp:1083
+#: commands/CommandManager.cpp:1078
#, c-format
msgid "Loaded %d keyboard shortcuts\n"
msgstr "Diambil %d jalan pintas keyboard\n"
-#: commands/CommandManager.cpp:1085
+#: commands/CommandManager.cpp:1080
msgid "Loading keyboard shortcuts"
msgstr "Mengambil jalan pintas keyboard"
@@ -4191,7 +4510,7 @@ msgstr "Amplifikasi (dB):"
#: effects/Amplify.cpp:183
msgid "Amplification dB"
-msgstr ""
+msgstr "dB Amplifikasi"
#: effects/Amplify.cpp:190
msgid "New Peak Amplitude (dB):"
@@ -4221,8 +4540,8 @@ msgstr "Anda memilih trek yang tidak ada suaranya. AutoDuck hanya bisa memproses
#: effects/AutoDuck.cpp:126
#: effects/AutoDuck.cpp:138
-#: effects/AutoDuck.cpp:453
-#: effects/AutoDuck.cpp:570
+#: effects/AutoDuck.cpp:452
+#: effects/AutoDuck.cpp:569
msgid "Auto Duck"
msgstr "Auto Duck"
@@ -4230,66 +4549,64 @@ msgstr "Auto Duck"
msgid "Auto Duck needs a control track which must be placed below the selected track(s)."
msgstr "Auto Duck membutuhkan trek pengendali yang harus ditempatkan dibawah trek yang dipilih."
-#: effects/AutoDuck.cpp:465
+#: effects/AutoDuck.cpp:464
msgid "Auto Duck by Markus Meyer"
msgstr "Auto Duck dari Markus Meyer"
-#: effects/AutoDuck.cpp:487
+#: effects/AutoDuck.cpp:486
msgid "Duck amount:"
msgstr "Banyak Duck:"
-#: effects/AutoDuck.cpp:492
+#: effects/AutoDuck.cpp:491
msgid "Maximum pause:"
msgstr "Tunda maksimum:"
#. i18n-hint: Name of time display format that shows time in seconds
-#: effects/AutoDuck.cpp:494
-#: effects/AutoDuck.cpp:499
-#: effects/AutoDuck.cpp:504
-#: effects/AutoDuck.cpp:509
-#: effects/AutoDuck.cpp:514
-#: effects/Contrast.cpp:263
-#: effects/Contrast.cpp:286
-#: prefs/AudioIOPrefs.cpp:172
-#: prefs/AudioIOPrefs.cpp:180
-#: prefs/AudioIOPrefs.cpp:182
-#: prefs/AudioIOPrefs.cpp:207
-#: prefs/AudioIOPrefs.cpp:209
-#: prefs/MidiIOPrefs.cpp:161
-#: prefs/MidiIOPrefs.cpp:163
-#: prefs/MidiIOPrefs.cpp:187
-#: prefs/MidiIOPrefs.cpp:189
-#: prefs/MidiIOPrefs.cpp:197
-#: widgets/TimeTextCtrl.cpp:263
+#: effects/AutoDuck.cpp:493
+#: effects/AutoDuck.cpp:498
+#: effects/AutoDuck.cpp:503
+#: effects/AutoDuck.cpp:508
+#: effects/AutoDuck.cpp:513
+#: prefs/AudioIOPrefs.cpp:323
+#: prefs/AudioIOPrefs.cpp:337
+#: prefs/AudioIOPrefs.cpp:343
+#: prefs/AudioIOPrefs.cpp:357
+#: prefs/AudioIOPrefs.cpp:363
+#: prefs/MidiIOPrefs.cpp:157
+#: prefs/MidiIOPrefs.cpp:159
+#: prefs/MidiIOPrefs.cpp:181
+#: prefs/MidiIOPrefs.cpp:183
+#: prefs/MidiIOPrefs.cpp:191
+#: widgets/TimeTextCtrl.cpp:264
msgid "seconds"
msgstr "detik"
-#: effects/AutoDuck.cpp:497
+#: effects/AutoDuck.cpp:496
msgid "Outer fade down length:"
msgstr "Panjang fade down luar: "
-#: effects/AutoDuck.cpp:502
+#: effects/AutoDuck.cpp:501
msgid "Outer fade up length:"
msgstr "Panjang fade up luar: "
-#: effects/AutoDuck.cpp:507
+#: effects/AutoDuck.cpp:506
msgid "Inner fade down length:"
msgstr "Panjang fade down dalam: "
-#: effects/AutoDuck.cpp:512
+#: effects/AutoDuck.cpp:511
msgid "Inner fade up length:"
msgstr "Panjang fade up dalam: "
-#: effects/AutoDuck.cpp:521
+#: effects/AutoDuck.cpp:520
#: effects/Compressor.cpp:494
msgid "Threshold:"
msgstr "Ambang Batas:"
-#: effects/AutoDuck.cpp:570
+#: effects/AutoDuck.cpp:569
msgid "Please enter valid values."
msgstr "Tolong masukkan nilai yang valid."
-#: effects/AutoDuck.cpp:705
+#: effects/AutoDuck.cpp:704
msgid "Preview not available"
msgstr "Preview tidak tersedia"
@@ -4304,8 +4621,8 @@ msgstr "Memproses Auto Duck..."
#: effects/AvcCompressor.cpp:738
#: effects/VST/VSTEffect.cpp:455
#: effects/audiounits/AudioUnitEffect.cpp:882
-#: effects/nyquist/Nyquist.cpp:1053
-#: widgets/ErrorDialog.cpp:101
+#: effects/nyquist/Nyquist.cpp:1237
+#: widgets/ErrorDialog.cpp:99
msgid "OK"
msgstr "OK"
@@ -4331,15 +4648,15 @@ msgstr "Frekuensi (Hz):"
#: effects/BassBoost.cpp:205
msgid "Frequency Hertz"
-msgstr ""
+msgstr "Hertz Frekuensi"
-#: effects/BassBoost.cpp:208
+#: effects/BassBoost.cpp:209
msgid "Boost (dB):"
msgstr "Boost (dB):"
#: effects/BassBoost.cpp:218
msgid "Boost dB"
-msgstr ""
+msgstr "dB Boost"
#: effects/BassBoost.h:35
msgid "BassBoost..."
@@ -4371,13 +4688,13 @@ msgid "Change Pitch without Changing Tempo"
msgstr "Mengubah Pitch Tanpa Mengubah Tempo"
#: effects/ChangePitch.cpp:258
-#: effects/ChangeSpeed.cpp:336
-#: effects/ChangeTempo.cpp:173
+#: effects/ChangeSpeed.cpp:337
+#: effects/ChangeTempo.cpp:176
msgid "by Vaughan Johnson && Dominic Mazzoni"
msgstr "dari Vaughan Johnson && Dominic Mazzoni"
#: effects/ChangePitch.cpp:260
-#: effects/ChangeTempo.cpp:175
+#: effects/ChangeTempo.cpp:178
msgid "using SoundTouch, by Olli Parviainen"
msgstr "menggunakan SoundTouch, dari Olli Parviainen"
@@ -4418,9 +4735,9 @@ msgid "Semitones in half-steps"
msgstr "Seminada dalam separuh langkah"
#: effects/ChangePitch.cpp:326
-#: effects/ChangeSpeed.cpp:369
-#: effects/ChangeTempo.cpp:206
-#: effects/ChangeTempo.cpp:219
+#: effects/ChangeSpeed.cpp:370
+#: effects/ChangeTempo.cpp:209
+#: effects/ChangeTempo.cpp:222
msgid "from"
msgstr "dari"
@@ -4429,9 +4746,9 @@ msgid "From frequency in hertz"
msgstr "Dari Frekuensi dalam Hertz"
#: effects/ChangePitch.cpp:331
-#: effects/ChangeSpeed.cpp:374
-#: effects/ChangeTempo.cpp:211
-#: effects/ChangeTempo.cpp:224
+#: effects/ChangeSpeed.cpp:375
+#: effects/ChangeTempo.cpp:214
+#: effects/ChangeTempo.cpp:227
msgid "to"
msgstr "ke"
@@ -4440,15 +4757,15 @@ msgid "To frequency in seconds"
msgstr "Ke Frekuensi dalam Detik"
#: effects/ChangePitch.cpp:338
-#: effects/ChangeSpeed.cpp:347
-#: effects/ChangeTempo.cpp:184
+#: effects/ChangeSpeed.cpp:348
+#: effects/ChangeTempo.cpp:187
msgid "Percent Change:"
msgstr "Presentase Perubahan:"
#: effects/ChangePitch.cpp:343
#: effects/ChangePitch.cpp:356
-#: effects/ChangeSpeed.cpp:358
-#: effects/ChangeTempo.cpp:195
+#: effects/ChangeSpeed.cpp:359
+#: effects/ChangeTempo.cpp:198
msgid "Percent Change"
msgstr "Presentase Perubahan"
@@ -4466,33 +4783,33 @@ msgstr "Mengubah Pitch"
msgid "Applied effect: %s %.1f%%"
msgstr "Efek teraplikasi: %s %.1f%%"
-#: effects/ChangeSpeed.cpp:298
+#: effects/ChangeSpeed.cpp:299
msgid "Change Speed"
msgstr "Mengubah Kecepatan"
#. i18n-hint: n/a is an English abbreviation meaning "not applicable"
#. (in other words, unimportant, not relevant).
-#: effects/ChangeSpeed.cpp:329
+#: effects/ChangeSpeed.cpp:330
msgid "n/a"
msgstr "tidak ada"
-#: effects/ChangeSpeed.cpp:334
+#: effects/ChangeSpeed.cpp:335
msgid "Change Speed, affecting both Tempo and Pitch"
msgstr "Mengubah Kecepatan, mengubah Tempo dan juga Pitch"
-#: effects/ChangeSpeed.cpp:338
+#: effects/ChangeSpeed.cpp:339
msgid "using SampleRate, by Erik de Castro Lopo"
msgstr "menggunakan SampleRate, dari Erik de Castro Lopo"
-#: effects/ChangeSpeed.cpp:366
+#: effects/ChangeSpeed.cpp:367
msgid "Standard Vinyl RPM:"
msgstr "Vinyl RPM Standar:"
-#: effects/ChangeSpeed.cpp:370
+#: effects/ChangeSpeed.cpp:371
msgid "From RPM"
msgstr "Dari RPM"
-#: effects/ChangeSpeed.cpp:375
+#: effects/ChangeSpeed.cpp:376
msgid "To RPM"
msgstr "Ke RPM"
@@ -4504,35 +4821,35 @@ msgstr "Udah Kecepatan..."
msgid "Changing Speed"
msgstr "Mengubah Kecepatan"
-#: effects/ChangeTempo.cpp:138
+#: effects/ChangeTempo.cpp:141
msgid "Change Tempo"
msgstr "Mengubah Tempo"
-#: effects/ChangeTempo.cpp:171
+#: effects/ChangeTempo.cpp:174
msgid "Change Tempo without Changing Pitch"
msgstr "Mengubah Tempo Tanpa Mengubah Pitch"
-#: effects/ChangeTempo.cpp:203
+#: effects/ChangeTempo.cpp:206
msgid "Beats per minute:"
msgstr "Bit per Menit:"
-#: effects/ChangeTempo.cpp:207
+#: effects/ChangeTempo.cpp:210
msgid "From beats per minute"
msgstr "Dari bit per menit"
-#: effects/ChangeTempo.cpp:212
+#: effects/ChangeTempo.cpp:215
msgid "To beats per minute"
msgstr "Kei bit per menit"
-#: effects/ChangeTempo.cpp:216
+#: effects/ChangeTempo.cpp:219
msgid "Length (seconds):"
msgstr "Panjang (detik):"
-#: effects/ChangeTempo.cpp:220
+#: effects/ChangeTempo.cpp:223
msgid "From length in seconds"
msgstr "Dari panjang dalam detik"
-#: effects/ChangeTempo.cpp:225
+#: effects/ChangeTempo.cpp:228
msgid "To length in seconds"
msgstr "Ke panjang dalam detik"
@@ -4558,15 +4875,15 @@ msgstr "Pilih ambang batas (lebih rendah, lebih sensitif):"
#: effects/ClickRemoval.cpp:350
msgid "Select threshold"
-msgstr ""
+msgstr "Pilih Ambang Batas"
-#: effects/ClickRemoval.cpp:353
+#: effects/ClickRemoval.cpp:354
msgid "Max spike width (higher is more sensitive):"
msgstr "Besar Spike maksimal (lebih tinggi, lebih sensitif):"
#: effects/ClickRemoval.cpp:363
msgid "Max spike width"
-msgstr ""
+msgstr "Ketebalan Maksimal"
#: effects/ClickRemoval.h:42
msgid "Click Removal..."
@@ -4609,8 +4926,8 @@ msgid "Decay Time"
msgstr "Waktu Kekurangan"
#: effects/Compressor.cpp:530
-msgid "Normalize to 0dB after compressing"
-msgstr "Normalkan ke 0dB setelah mengompres"
+msgid "Make-up gain for 0dB after compressing"
+msgstr "Naikkan ke 0dB setelah mengompres"
#: effects/Compressor.cpp:563
#, c-format
@@ -4666,56 +4983,52 @@ msgstr "Kompresor..."
msgid "Applying Dynamic Range Compression..."
msgstr "Mengaplikasikan Pengompresan Dinamis"
-#: effects/Contrast.cpp:79
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr "Analisa Kontras"
+
+#: effects/Contrast.cpp:88
msgid "Contrast Tool Foreground"
-msgstr ""
+msgstr "latar Depan Alat ontras"
-#: effects/Contrast.cpp:79
-msgid "Foreground times selected.\n"
+#: effects/Contrast.cpp:88
+msgid ""
+"Foreground times selected.\n"
"Now select background and use Ctrl+Shift+T or menu again."
msgstr ""
+"Waktu latar depan dipilih.\n"
+"Sekarang pilih latar belakang dan gunakan Ctrl+Shift+t atau menu kembali."
-#: effects/Contrast.cpp:127
-msgid "Start time after after end time!\n"
+#: effects/Contrast.cpp:136
+msgid ""
+"Start time after after end time!\n"
"Please enter reasonable times."
-msgstr ""
+msgstr "Waktu mulai jauh setelah waktu selesai!]nSilahkan masukkan watu yang logis."
-#: effects/Contrast.cpp:137
-msgid "Times are not reasonable!\n"
+#: effects/Contrast.cpp:146
+msgid ""
+"Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
+"Waktunya tidak beralasan!\n"
+"Silakan masukkan waktu yang beralasan."
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr "Halo. \n"
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:193
-#: effects/Contrast.cpp:204
-#: effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr "Terukur"
-
-#: effects/Contrast.cpp:231
+#: effects/Contrast.cpp:265
msgid "Contrast Analyzer"
msgstr "Penganalisa Kontras"
-#: effects/Contrast.cpp:235
+#: effects/Contrast.cpp:268
msgid "Parameters"
msgstr "Parameter"
-#: effects/Contrast.cpp:242
-#: effects/ToneGen.cpp:355
+#: effects/Contrast.cpp:275
+#: effects/ToneGen.cpp:311
#: toolbars/ControlToolBar.cpp:186
msgid "Start"
msgstr "Awal"
-#: effects/Contrast.cpp:243
-#: effects/ToneGen.cpp:356
+#: effects/Contrast.cpp:276
+#: effects/ToneGen.cpp:312
#: toolbars/ControlToolBar.cpp:189
#: toolbars/SelectionBar.cpp:156
#: toolbars/SelectionBar.cpp:159
@@ -4723,245 +5036,236 @@ msgstr "Awal"
msgid "End"
msgstr "Akhir"
-#: effects/Contrast.cpp:332
+#: effects/Contrast.cpp:279
msgid "Volume "
-msgstr ""
+msgstr "Volume Suara"
-#: effects/Contrast.cpp:248
+#: effects/Contrast.cpp:282
msgid "Foreground:"
msgstr "Latar Depan:"
-#: effects/Contrast.cpp:347
+#: effects/Contrast.cpp:294
msgid "Foreground start time"
-msgstr ""
+msgstr "Waktu mulai latar depan"
-#: effects/Contrast.cpp:365
+#: effects/Contrast.cpp:312
msgid "Foreground end time"
-msgstr ""
+msgstr "Waktu selesai latar depan"
-#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
+#: effects/Contrast.cpp:318
+#: effects/Contrast.cpp:362
+#: effects/Contrast.cpp:426
+#: effects/Contrast.cpp:437
+msgid "Measured"
+msgstr "Terukur"
+
+#: effects/Contrast.cpp:320
+#: effects/Contrast.cpp:364
msgid "Use selection"
-msgstr ""
+msgstr "Pilih Seleksi"
-#: effects/Contrast.cpp:271
+#: effects/Contrast.cpp:325
msgid "Background:"
msgstr "Latar Belakang:"
-#: effects/Contrast.cpp:391
+#: effects/Contrast.cpp:338
msgid "Background start time"
-msgstr ""
+msgstr "Waktu mulai latar belakang"
-#: effects/Contrast.cpp:409
+#: effects/Contrast.cpp:356
msgid "Background end time"
-msgstr ""
+msgstr "Waktu akhir latar belakang"
-#: effects/Contrast.cpp:298
+#: effects/Contrast.cpp:373
msgid "Result"
msgstr "Hasil"
-#: effects/Contrast.cpp:302
+#: effects/Contrast.cpp:377
msgid "Contrast Result:"
msgstr "Hasil Kontras:"
-#: Tags.cpp:840
-#: Tags.cpp:1990
+#: effects/Contrast.cpp:380
msgid "Reset"
msgstr "Ulang"
-#: effects/Contrast.cpp:304
+#: effects/Contrast.cpp:381
msgid "Difference:"
msgstr "Perbedaan:"
-#: effects/Contrast.cpp:313
+#: effects/Contrast.cpp:392
msgid "Information"
msgstr "Informasi"
-#: effects/Contrast.cpp:447
+#: effects/Contrast.cpp:394
msgid "For measuring rms volume differences between two selections of audio."
-msgstr ""
+msgstr "Untuk mengukur perbedaan volume rms diantara dua audio yang dipilih."
-#: effects/Contrast.cpp:448
+#: effects/Contrast.cpp:395
msgid "Help for WCAG2 Audio Contrast Analyzer"
-msgstr ""
+msgstr "Bantuan untuk Penganalisa Kontras Audio WCAG2"
-#: toolbars/ControlToolBar.cpp:83
-msgid "Control"
-msgstr "Kontrol"
+#: effects/Contrast.cpp:401
+msgid "Close (keeping times)"
+msgstr "Tutup (waktu tetap)"
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
-msgstr ""
-
-#: effects/Contrast.cpp:328
-#: effects/Contrast.cpp:336
-#: effects/Contrast.cpp:344
-#: effects/Contrast.cpp:352
+#: effects/Contrast.cpp:463
+#: effects/Contrast.cpp:469
+#: effects/Contrast.cpp:475
+#: effects/Contrast.cpp:481
msgid "Measure"
msgstr "Ukuran"
-#: effects/Contrast.cpp:511
+#: effects/Contrast.cpp:520
msgid "No foreground to measure"
-msgstr ""
+msgstr "Tidak ada latar depan yang dihitung"
-#: effects/Contrast.cpp:516
+#: effects/Contrast.cpp:525
msgid "Measured foreground level"
-msgstr ""
+msgstr "Tingkat latar depan yang terhitung"
-#: effects/Contrast.cpp:191
-#: effects/Contrast.cpp:202
+#: effects/Contrast.cpp:526
+#: effects/Contrast.cpp:536
#, c-format
msgid "%.1f dB"
msgstr "%.1f dB"
-#: effects/Contrast.cpp:521
+#: effects/Contrast.cpp:530
msgid "No background to measure"
-msgstr ""
+msgstr "Tidak ada latar belakang yang dihitung"
-#: effects/Contrast.cpp:526
+#: effects/Contrast.cpp:535
msgid "Measured background level"
-msgstr ""
+msgstr "Tingkat latar belakang yang terhitung"
-#: effects/Contrast.cpp:358
+#: effects/Contrast.cpp:541
msgid "WCAG2 Pass"
msgstr "WCAG2 Lolos"
-#: effects/Contrast.cpp:360
+#: effects/Contrast.cpp:543
msgid "WCAG2 Fail"
msgstr "WCAG2 Gagal"
-#: effects/Contrast.cpp:535
+#: effects/Contrast.cpp:544
msgid "Current difference"
-msgstr ""
+msgstr "Perbedaan yang ada"
-#: effects/Contrast.cpp:536
+#: effects/Contrast.cpp:545
#, c-format
msgid "%.1f dB Average rms"
-msgstr ""
+msgstr "Rata-Rata %.1f dB rms"
-#: effects/Contrast.cpp:541
+#: effects/Contrast.cpp:550
msgid "Please enter valid times."
-msgstr ""
+msgstr "Mohon masukkan waktu yang valid."
-#: effects/Contrast.cpp:551
+#: effects/Contrast.cpp:560
msgid "Export Contrast Result As:"
-msgstr ""
+msgstr "Mengekspor Hasil Kontras Sebagai:"
-#: effects/Contrast.cpp:572
+#: effects/Contrast.cpp:581
msgid "WCAG 2.0 Success Criteria 1.4.7 Contrast Results"
-msgstr ""
+msgstr "Hasil Kontras Kriteria Sukses WCAG 2.0 1.4.7"
-#: effects/Contrast.cpp:574
+#: effects/Contrast.cpp:583
#, c-format
msgid "Filename = %s."
-msgstr ""
+msgstr "Nama File = %s."
-#: effects/Contrast.cpp:576
+#: effects/Contrast.cpp:585
msgid "Foreground"
-msgstr ""
+msgstr "Latar Depan"
-#: effects/Contrast.cpp:581 effects/Contrast.cpp:598
+#: effects/Contrast.cpp:590
+#: effects/Contrast.cpp:607
#, c-format
msgid "Time started = %2d hour(s), %2d minute(s), %.2f seconds."
-msgstr ""
+msgstr "Waktu dimulai = %2d jam, %2d menit, %.2f detik."
-#: effects/Contrast.cpp:586 effects/Contrast.cpp:603
+#: effects/Contrast.cpp:595
+#: effects/Contrast.cpp:612
#, c-format
msgid "Time ended = %2d hour(s), %2d minute(s), %.2f seconds."
-msgstr ""
+msgstr "Waktu selesai = %2d jam, %2d menit, %.2f detik."
-#: effects/Contrast.cpp:588 effects/Contrast.cpp:605
+#: effects/Contrast.cpp:597
+#: effects/Contrast.cpp:614
#, c-format
msgid "Average rms = %.1f dB."
-msgstr ""
+msgstr "Rms rata-rata = %.1f dB."
-#: effects/Contrast.cpp:590 effects/Contrast.cpp:607
+#: effects/Contrast.cpp:599
+#: effects/Contrast.cpp:616
msgid "Average rms = dB."
-msgstr ""
+msgstr "Rms rata-rata = dB."
-#: effects/Contrast.cpp:593
+#: effects/Contrast.cpp:602
msgid "Background"
-msgstr ""
+msgstr "Latar Belakang"
-#: effects/Contrast.cpp:609
+#: effects/Contrast.cpp:618
msgid "Results"
-msgstr ""
+msgstr "Hasil"
-#: effects/Contrast.cpp:611
+#: effects/Contrast.cpp:620
#, c-format
msgid "Difference = %.1f Average rms dB."
-msgstr ""
+msgstr "Perbedaan = %.1f dB rata-rata rms."
-#: effects/Contrast.cpp:613
+#: effects/Contrast.cpp:622
msgid "Success Criteria 1.4.7 of WCAG 2.0: Pass"
-msgstr ""
+msgstr "Kesuksesan Kriteria 1.4.7 dari WCAG 2.0: Berhasil"
-#: effects/Contrast.cpp:615
+#: effects/Contrast.cpp:624
msgid "Success Criteria 1.4.7 of WCAG 2.0: Fail"
-msgstr ""
+msgstr "Kesuksesan Kriteria 1.4.7 dari WCAG 2.0: Gagal"
-#: effects/Contrast.cpp:618
+#: effects/Contrast.cpp:627
msgid "Data gathered"
-msgstr ""
-
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr "Mengukur latar belakang"
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr "Mengukur latar depan"
+msgstr "Data Terkumpul"
#: effects/DtmfGen.cpp:56
msgid "DTMF Tone Generator"
msgstr "Pembuat Nada DTMF "
-#: effects/DtmfGen.cpp:456
+#: effects/DtmfGen.cpp:421
msgid "by Salvo Ventura (2006)"
msgstr "dari Salvo Ventura (2006)"
-#: effects/DtmfGen.cpp:460
+#: effects/DtmfGen.cpp:425
msgid "DTMF sequence:"
msgstr "Urutan DTMF:"
-#: effects/DtmfGen.cpp:463
-#: effects/Noise.cpp:242
-#: effects/ToneGen.cpp:322
-#: effects/ToneGen.cpp:359
+#: effects/DtmfGen.cpp:428
+#: effects/Noise.cpp:190
+#: effects/ToneGen.cpp:277
+#: effects/ToneGen.cpp:315
msgid "Amplitude (0-1)"
msgstr "Amplitudo (0-1)"
-#: effects/DtmfGen.cpp:465
+#: effects/DtmfGen.cpp:430
msgid "Duration:"
msgstr "Durasi"
-#: effects/DtmfGen.cpp:486
+#: effects/DtmfGen.cpp:452
msgid "Tone/silence ratio:"
msgstr "Rasio nada dengan diam:"
-#: effects/DtmfGen.cpp:496
+#: effects/DtmfGen.cpp:462
msgid "Duty cycle:"
msgstr "Pengulangan:"
-#: effects/DtmfGen.cpp:498
+#: effects/DtmfGen.cpp:464
msgid "Tone duration:"
msgstr "Durasi nada:"
-#: effects/DtmfGen.cpp:499
-#: effects/DtmfGen.cpp:501
-#: effects/DtmfGen.cpp:577
-#: effects/DtmfGen.cpp:578
+#: effects/DtmfGen.cpp:465
+#: effects/DtmfGen.cpp:467
+#: effects/DtmfGen.cpp:543
+#: effects/DtmfGen.cpp:544
msgid "ms"
msgstr "ms"
-#: effects/DtmfGen.cpp:500
+#: effects/DtmfGen.cpp:466
msgid "Silence duration:"
msgstr "Durasi diam:"
@@ -4983,22 +5287,22 @@ msgstr "Membuat nada DTMF"
msgid "Applied effect: %s delay = %f seconds, decay factor = %f"
msgstr "Efek teraplikasi: jarak %s = %f detik, faktor kekurangan = %f"
-#: effects/Echo.cpp:170
+#: effects/Echo.cpp:174
msgid "Echo"
msgstr "Echo"
#. i18n-hint: && in here is an escape character to get a single & on
#. * screen, so keep it as is
-#: effects/Echo.cpp:195
-#: effects/Repeat.cpp:200
+#: effects/Echo.cpp:199
+#: effects/Repeat.cpp:197
msgid "by Dominic Mazzoni && Vaughan Johnson"
msgstr "dari Dominic Mazzoni && Vaughan Johnson"
-#: effects/Echo.cpp:207
+#: effects/Echo.cpp:211
msgid "Delay time (seconds):"
msgstr "Waktu tenggang (detk):"
-#: effects/Echo.cpp:212
+#: effects/Echo.cpp:216
msgid "Decay factor:"
msgstr "Faktor kekurangan:"
@@ -5010,102 +5314,107 @@ msgstr "Echo..."
msgid "Performing Echo"
msgstr "Menjalankan Echo..."
-#: effects/Effect.cpp:467
+#: effects/Effect.cpp:491
msgid "Preparing preview"
msgstr "Meyiapkan preview"
-#: effects/Effect.cpp:497
+#: effects/Effect.cpp:521
msgid "Previewing"
msgstr "Melihat preview"
-#: effects/Effect.cpp:512
+#: effects/Effect.cpp:536
msgid "Error while opening sound device. Please check the output device settings and the project sample rate."
msgstr "Error ketika membuka perangkat suara. Tolong cek pengaturan perangkat output dan rate sampel proyek."
-#: effects/Effect.h:100
+#: effects/Effect.h:97
+#: effects/TimeScale.cpp:52
#, c-format
msgid "Applied effect: %s"
msgstr "Efek teraplikasi: %s"
-#: effects/Equalization.cpp:329
+#: effects/Equalization.cpp:335
msgid "B-spline"
msgstr "Papan Bergelombang"
-#: effects/Equalization.cpp:330
+#: effects/Equalization.cpp:336
msgid "Cosine"
msgstr "Kosinus"
-#: effects/Equalization.cpp:331
+#: effects/Equalization.cpp:337
msgid "Cubic"
msgstr "Kubik"
-#: effects/Equalization.cpp:367
-#: effects/Equalization.cpp:416
+#: effects/Equalization.cpp:370
+#: effects/Equalization.cpp:421
msgid "Equalization"
msgstr "Ekualisasi"
-#: effects/Equalization.cpp:994
+#: effects/Equalization.cpp:1010
msgid "Error loading EQ curve"
msgstr "Error mengambil kurva EQ"
-#: effects/Equalization.cpp:1033
+#: effects/Equalization.cpp:1049
msgid "custom"
msgstr "pilihan sendiri"
+#: effects/Equalization.cpp:1098
+msgid "Error saving equalization curves"
+msgstr "Error dalam menyimpan equalizer"
+
#. i18n-hint: && in here is an escape character to get a single &
#. * on screen, so keep it as is
-#: effects/Equalization.cpp:1101
+#: effects/Equalization.cpp:1121
msgid "Equalization, by Martyn Shaw && Mitch Golden"
msgstr "Ekualisasi, dari Martyn Shaw && Mitch Golden"
-#: effects/Equalization.cpp:1122
+#: effects/Equalization.cpp:1142
msgid "Max dB"
msgstr "dB Maks"
-#: effects/Equalization.cpp:1124
+#: effects/Equalization.cpp:1144
msgid "Min dB"
msgstr "dB Min"
-#: effects/Equalization.cpp:1197
+#: effects/Equalization.cpp:1217
msgid "kHz"
msgstr "kHz"
-#: effects/Equalization.cpp:1214
+#: effects/Equalization.cpp:1234
msgid "Draw curves"
msgstr "Gambar kurva"
-#: effects/Equalization.cpp:1219
+#: effects/Equalization.cpp:1239
msgid "Graphic EQ"
msgstr "Grafik EQ"
-#: effects/Equalization.cpp:1233
+#: effects/Equalization.cpp:1253
msgid "Linear frequency scale"
msgstr "Skala frekuensi linier"
-#: effects/Equalization.cpp:1242
+#: effects/Equalization.cpp:1262
msgid "Length of filter:"
msgstr "Panjang filter:"
-#: effects/Equalization.cpp:1263
+#: effects/Equalization.cpp:1283
msgid "Select curve:"
msgstr "Pilih kurva:"
-#: effects/Equalization.cpp:1273
-#: effects/Equalization.cpp:2512
-#: export/ExportMultiple.cpp:882
+#: effects/Equalization.cpp:1293
+#: effects/Equalization.cpp:2541
+#: export/ExportMultiple.cpp:924
msgid "Save As..."
msgstr "Simpan Sebagai..."
-#: effects/Equalization.cpp:1279
+#: effects/Equalization.cpp:1299
msgid "Flat"
msgstr "Datar"
-#: effects/Equalization.cpp:2511
+#: effects/Equalization.cpp:2540
msgid "Enter the desired name of the curve"
msgstr "Masukkan nama untuk kurva"
-#: effects/Equalization.cpp:2611
-#: export/ExportFFmpegDialogs.cpp:1220
+#: effects/Equalization.cpp:2640
+#: export/ExportFFmpegDialogs.cpp:1213
msgid "Confirm Deletion"
msgstr "Konfirmasi Penghapusan"
@@ -5137,27 +5446,27 @@ msgstr "Membuat Fade Keluar"
msgid "Detect clipping"
msgstr "Deteksi clipping"
-#: effects/FindClipping.cpp:91
+#: effects/FindClipping.cpp:92
msgid "Clipping"
msgstr "Clipping"
-#: effects/FindClipping.cpp:211
+#: effects/FindClipping.cpp:212
msgid "Find Clipping"
msgstr "Mencari Clipping"
-#: effects/FindClipping.cpp:222
+#: effects/FindClipping.cpp:223
msgid "by Leland Lucius"
msgstr "dari Leland Lucius"
-#: effects/FindClipping.cpp:234
+#: effects/FindClipping.cpp:235
msgid "Start threshold (samples):"
msgstr "Ambang batas awal (sampel):"
-#: effects/FindClipping.cpp:238
+#: effects/FindClipping.cpp:239
msgid "Stop threshold (samples):"
msgstr "Ambang batas akhir (sampel):"
-#: effects/FindClipping.cpp:250
+#: effects/FindClipping.cpp:251
msgid "Start and stop must be greater than 0."
msgstr "Awal dan akhir harus lebih dari 0."
@@ -5181,48 +5490,47 @@ msgstr "Menukar"
msgid "Leveller"
msgstr "Leveller"
-#: effects/Leveller.cpp:203
+#: effects/Leveller.cpp:205
msgid "None-Skip"
msgstr "Tidak Ada yang Dilewatkan"
-#: effects/Leveller.cpp:204
+#: effects/Leveller.cpp:206
msgid "Light"
msgstr "Cahaya"
-#: effects/Leveller.cpp:205
+#: effects/Leveller.cpp:207
msgid "Moderate"
msgstr "Moderat"
-#: effects/Leveller.cpp:206
+#: effects/Leveller.cpp:208
msgid "Heavy"
msgstr "Berat"
-#: effects/Leveller.cpp:207
+#: effects/Leveller.cpp:209
msgid "Heavier"
msgstr "Lebig Berat"
-#: effects/Leveller.cpp:208
+#: effects/Leveller.cpp:210
msgid "Heaviest"
msgstr "Paling Berat"
-#: effects/Leveller.cpp:212
-#: effects/TruncSilence.cpp:331
+#: effects/Leveller.cpp:214
msgid "by Lynn Allan"
msgstr "dari Lynn Allan"
-#: effects/Leveller.cpp:222
+#: effects/Leveller.cpp:224
msgid "Degree of Leveling"
msgstr "Derajat Leveller"
-#: effects/Leveller.cpp:226
+#: effects/Leveller.cpp:228
msgid "Degree of Leveling:"
msgstr "Derajat Pelevelan:"
-#: effects/Leveller.cpp:234
+#: effects/Leveller.cpp:236
msgid "Noise Threshold (Hiss/Hum/Ambient Noise)"
msgstr "Ambang batas bising (Hiss/Hum/Ambang Bising):"
-#: effects/Leveller.cpp:238
+#: effects/Leveller.cpp:240
msgid "Threshold for Noise:"
msgstr "Ambang Batas untuk Bising:"
@@ -5258,11 +5566,6 @@ msgstr "Pengubah"
msgid "Analyser"
msgstr "Penganalisa"
-#: effects/LoadEffects.cpp:114
-#: toolbars/MixerToolBar.cpp:60
-msgid "Mixer"
-msgstr "Mixer"
-
#: effects/LoadEffects.cpp:116
msgid "Simulator"
msgstr "Simulator"
@@ -5369,7 +5672,7 @@ msgid "Gate"
msgstr "Jembatan"
#: effects/LoadEffects.cpp:199
-#: effects/NoiseRemoval.cpp:725
+#: effects/NoiseRemoval.cpp:728
msgid "Noise Removal"
msgstr "Pembuang Bising"
@@ -5405,7 +5708,7 @@ msgstr "Coklat"
msgid "Noise Generator"
msgstr "Pembuat Bising"
-#: effects/Noise.cpp:241
+#: effects/Noise.cpp:189
msgid "Noise type"
msgstr "Tpie Bising"
@@ -5424,66 +5727,72 @@ msgstr "Membuat Bising"
#: effects/NoiseRemoval.cpp:192
#, c-format
-msgid "Could not open file:\n"
+msgid ""
+"Could not open file:\n"
" %s"
-msgstr "Tidak bisa membuka file:\n"
+msgstr ""
+"Tidak bisa membuka file:\n"
" %s"
#: effects/NoiseRemoval.cpp:277
msgid "Attempt to run Noise Removal without a noise profile.\n"
msgstr "Tetap menjalankan Pembuang Bising tanpa profil bising.\n"
-#: effects/NoiseRemoval.cpp:814
+#: effects/NoiseRemoval.cpp:817
msgid "Step 1"
msgstr "Tahap 1"
-#: effects/NoiseRemoval.cpp:815
-msgid "Select a few seconds of just noise so Audacity knows what to filter out,\n"
+#: effects/NoiseRemoval.cpp:818
+msgid ""
+"Select a few seconds of just noise so Audacity knows what to filter out,\n"
"then click Get Noise Profile:"
-msgstr "Pilih beberapa detik bising agar Audacity tahu apa yang harus dibuang,\n"
+msgstr ""
+"Pilih beberapa detik bising agar Audacity tahu apa yang harus dibuang,\n"
"kemudian klik Ambil Profil Bising:"
-#: effects/NoiseRemoval.cpp:816
+#: effects/NoiseRemoval.cpp:819
msgid "Step 2"
msgstr "Tahap 2"
-#: effects/NoiseRemoval.cpp:817
-msgid "Select all of the audio you want filtered, choose how much noise you want\n"
+#: effects/NoiseRemoval.cpp:820
+msgid ""
+"Select all of the audio you want filtered, choose how much noise you want\n"
"filtered out, and then click 'OK' to remove noise.\n"
-msgstr "Pilih seluruh audio yang anda mau disaring, pilih seberapa banyak bising\n"
+msgstr ""
+"Pilih seluruh audio yang anda mau disaring, pilih seberapa banyak bising\n"
"yang Anda ingin buang, dan klik 'OK' untuk membuangnya.\n"
-#: effects/NoiseRemoval.cpp:822
+#: effects/NoiseRemoval.cpp:825
msgid "Noise Removal by Dominic Mazzoni"
msgstr "Pembuang Bising dari Dominic Mazzoni"
-#: effects/NoiseRemoval.cpp:830
+#: effects/NoiseRemoval.cpp:833
msgid "Get Noise Profile"
msgstr "Ambil Profil Bising"
-#: effects/NoiseRemoval.cpp:841
+#: effects/NoiseRemoval.cpp:844
msgid "Noise reduction (dB):"
msgstr "Reduksi bising (dB):"
-#: effects/NoiseRemoval.cpp:850
+#: effects/NoiseRemoval.cpp:849
msgid "Noise reduction"
-msgstr ""
+msgstr "Pengurangan bising"
-#: effects/NoiseRemoval.cpp:849
+#: effects/NoiseRemoval.cpp:853
msgid "Frequency smoothing (Hz):"
msgstr "Frekuensi pelembut (Hz):"
-#: effects/NoiseRemoval.cpp:859
+#: effects/NoiseRemoval.cpp:858
msgid "Frequency smoothing"
-msgstr ""
+msgstr "penghalusan frekuensi"
-#: effects/NoiseRemoval.cpp:857
+#: effects/NoiseRemoval.cpp:862
msgid "Attack/decay time (secs):"
msgstr "Waktu serang/kurang (dtk):"
-#: effects/NoiseRemoval.cpp:868
+#: effects/NoiseRemoval.cpp:867
msgid "Attach/decay time"
-msgstr ""
+msgstr "Waktu baru/usang"
#: effects/NoiseRemoval.h:35
msgid "Noise Removal..."
@@ -5504,11 +5813,6 @@ msgstr "Membuang Bising"
msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr "Efek teraplikasi: %s membuang dc offset = %s, amplitudo penormalan = %s"
-#: effects/Normalize.cpp:74
-#: effects/Normalize.cpp:75
-msgid "false"
-msgstr "salah"
-
#. i18n-hint: true here means that the option was
#. * selected. Opposite false if not selected
#: effects/Normalize.cpp:74
@@ -5526,11 +5830,10 @@ msgid "Normalize"
msgstr "Normalize"
#: effects/Normalize.cpp:351
-#: effects/Normalize.cpp:352
msgid "Remove any DC offset (center on 0.0 vertically)"
msgstr "Buang semua DC offset (tengah pada 0.0 secara vertikal)"
-#: effects/Normalize.cpp:357
+#: effects/Normalize.cpp:354
msgid "Normalize maximum amplitude to:"
msgstr "Menormalkan amplitudo maksimum ke:"
@@ -5540,7 +5843,7 @@ msgstr "-"
#: effects/Normalize.cpp:367
msgid "Maximum amplitude dB"
-msgstr ""
+msgstr "dB Amplitudo maksimum"
#: effects/Normalize.h:33
msgid "Normalize..."
@@ -5617,20 +5920,24 @@ msgid "Applying Phaser"
msgstr "Membuat Fase"
#: effects/Repair.cpp:99
-msgid "The Repair effect is intended to be used on very short sections of damaged audio (up to 128 samples).\n"
+msgid ""
+"The Repair effect is intended to be used on very short sections of damaged audio (up to 128 samples).\n"
"\n"
"Zoom in and select a tiny fraction of a second to repair."
-msgstr "Efek perbaikan hanya digunakan pada sesi sangat pendek pada audio yang hancur (lebih dari 128 sampel).\n"
+msgstr ""
+"Efek perbaikan hanya digunakan pada sesi sangat pendek pada audio yang hancur (lebih dari 128 sampel).\n"
"\n"
"Perbesar dan pilih fraksi kecil untuk memperbaikinya."
#: effects/Repair.cpp:105
-msgid "Repair works by using audio data outside the selection region.\n"
+msgid ""
+"Repair works by using audio data outside the selection region.\n"
"\n"
"Please select a region that has audio touching at least one side of it.\n"
"\n"
"The more surrounding audio, the better it performs."
-msgstr "Perbaikan bekerja dengan menggunakan data audio di luar wilayah yang dipilih.\n"
+msgstr ""
+"Perbaikan bekerja dengan menggunakan data audio di luar wilayah yang dipilih.\n"
"\n"
"Silahkan pilih wilayah yang mempinyai sentuhan audio sedikitnya satu sisi ini.\n"
"\n"
@@ -5650,26 +5957,26 @@ msgid "Tracks are too long to repeat the selection."
msgstr "Trek yang dipilih terlalu panjang untuk diulang."
#: effects/Repeat.cpp:77
-#: effects/Repeat.cpp:187
+#: effects/Repeat.cpp:184
msgid "Repeat"
msgstr "Ulang"
-#: effects/Repeat.cpp:212
+#: effects/Repeat.cpp:209
msgid "Number of times to repeat:"
msgstr "Number of times to repeat:"
-#: effects/Repeat.cpp:221
+#: effects/Repeat.cpp:218
msgid "New selection length: hh:mm:ss"
msgstr "Panjang yang baru: jj:mm:dd"
-#: effects/Repeat.cpp:253
+#: effects/Repeat.cpp:250
msgid "New selection length: "
msgstr "Panjang yang baru:"
#. i18n-hint: Name of time display format that shows time in hours, minutes
#. * and seconds
-#: effects/Repeat.cpp:262
-#: widgets/TimeTextCtrl.cpp:270
+#: effects/Repeat.cpp:259
+#: widgets/TimeTextCtrl.cpp:271
msgid "hh:mm:ss"
msgstr "jj:mm:dd"
@@ -5693,15 +6000,15 @@ msgstr "Menukar Balik"
msgid "Silence Generator"
msgstr "Pembuat Diam"
-#: effects/Silence.h:34
+#: effects/Silence.h:32
msgid "Silence..."
msgstr "Diam..."
-#: effects/Silence.h:48
+#: effects/Silence.h:46
msgid "Generating Silence"
msgstr "Membuat Diam"
-#: effects/Silence.h:53
+#: effects/Silence.h:51
#, c-format
msgid "Applied effect: Generate Silence, %.6lf seconds"
msgstr "Efek teraplikasi: Membuat Diam, %.6lf detik"
@@ -5719,9 +6026,11 @@ msgid "SpikeCleaner by Lynn Allan"
msgstr "Pembersih Spike dari Lynn Allan"
#: effects/SpikeCleaner.cpp:165
-msgid "Max Spike Duration (milliseconds): \n"
+msgid ""
+"Max Spike Duration (milliseconds): \n"
"(99999 or greater is off)"
-msgstr "Durasi Spike Maksimum (millidetik): \n"
+msgstr ""
+"Durasi Spike Maksimum (millidetik): \n"
"(99999 atau lebih berarti dimatikan)"
#: effects/SpikeCleaner.cpp:178
@@ -5746,112 +6055,112 @@ msgstr "Membuat Stereo ke Mono"
#: effects/TimeScale.cpp:140
msgid "Time Scale"
-msgstr ""
+msgstr "Skala Waktu"
#: effects/TimeScale.cpp:176
msgid "Sliding Time Scale/Pitch Shift"
-msgstr ""
+msgstr "Menggeser geseran waktu skala/pitch"
#: effects/TimeScale.cpp:178
msgid "using SBSMS, by Clayton Otey"
-msgstr ""
+msgstr "menggunakan SBSMS, dari Clayton Otey"
#: effects/TimeScale.cpp:187
msgid "Initial Tempo Change (%):"
-msgstr ""
+msgstr "Perubahan Tempo Inisial (%):"
#: effects/TimeScale.cpp:191
msgid "Final Tempo Change (%):"
-msgstr ""
+msgstr "Perubahan Tempo Final (%):"
#: effects/TimeScale.cpp:202
msgid "Initial Tempo Change (%)"
-msgstr ""
+msgstr "Perubahan Tempo Inisial (%)"
#: effects/TimeScale.cpp:211
msgid "Final Tempo Change (%)"
-msgstr ""
+msgstr "Perubahan Tempo Final (%)"
#: effects/TimeScale.cpp:219
msgid "Initial Pitch Shift (semitones) [-12 to 12]:"
-msgstr ""
+msgstr "Pitch Shift Inisal (seminada) [-12 to 12]:"
#: effects/TimeScale.cpp:223
msgid "Final Pitch Shift (semitones) [-12 to 12]:"
-msgstr ""
+msgstr "Pitch Shift Total (seminada) [-12 to 12]:"
#: effects/TimeScale.h:33
msgid "Sliding Time Scale/Pitch Shift..."
-msgstr ""
+msgstr "Menggeser geseran waktu skala/pitch..."
#: effects/TimeScale.h:47
msgid "Changing Tempo/Pitch"
-msgstr ""
+msgstr "Mengubah Tempo/Pitch"
-#: effects/ToneGen.cpp:61
+#: effects/ToneGen.cpp:60
#, c-format
msgid "Applied effect: Generate %s wave %s, frequency = %.2f Hz, amplitude = %.2f, %.6lf seconds"
msgstr "Efek teraplikasi: Membuat %s gelombang %s, frekuensi = %.2f Hz, amplitudo = %.2f, %.6lf detik"
-#: effects/ToneGen.cpp:69
-#: widgets/Meter.cpp:416
+#: effects/ToneGen.cpp:68
+#: widgets/Meter.cpp:412
msgid "Linear"
msgstr "Linier"
-#: effects/ToneGen.cpp:70
+#: effects/ToneGen.cpp:69
msgid "Logarithmic"
msgstr "Logaritmik"
-#: effects/ToneGen.cpp:71
+#: effects/ToneGen.cpp:70
msgid "Chirp Generator"
msgstr "Pembuat Chirp"
-#: effects/ToneGen.cpp:71
+#: effects/ToneGen.cpp:70
msgid "Tone Generator"
msgstr "Pembuat Nada"
-#: effects/ToneGen.cpp:72
+#: effects/ToneGen.cpp:71
msgid "Sine"
msgstr "Silau"
-#: effects/ToneGen.cpp:73
+#: effects/ToneGen.cpp:72
msgid "Square"
msgstr "Kotak"
-#: effects/ToneGen.cpp:74
+#: effects/ToneGen.cpp:73
msgid "Sawtooth"
msgstr "Gerigi"
-#: effects/ToneGen.cpp:75
+#: effects/ToneGen.cpp:74
msgid "Square, no alias"
msgstr "Persegi, tanpa samaran"
-#: effects/ToneGen.cpp:321
-#: effects/ToneGen.cpp:357
+#: effects/ToneGen.cpp:276
+#: effects/ToneGen.cpp:313
msgid "Frequency (Hz)"
msgstr "Frekuensi (Hz)"
-#: effects/ToneGen.cpp:348
+#: effects/ToneGen.cpp:304
msgid "Waveform:"
msgstr "Waveform:"
-#: effects/ToneGen.cpp:358
+#: effects/ToneGen.cpp:313
msgid "Frequency Hertz Start"
-msgstr ""
+msgstr "Awal Hertz Frekuensi"
-#: effects/ToneGen.cpp:359
+#: effects/ToneGen.cpp:314
msgid "Frequency Hertz End"
-msgstr ""
+msgstr "Akhir Hertz Frekuensi"
-#: effects/ToneGen.cpp:360
+#: effects/ToneGen.cpp:315
msgid "Amplitude Start"
-msgstr ""
+msgstr "Awal Amplitudo"
-#: effects/ToneGen.cpp:361
+#: effects/ToneGen.cpp:316
msgid "Amplitude End"
-msgstr ""
+msgstr "Akhir Amplitudo"
-#: effects/ToneGen.cpp:365
+#: effects/ToneGen.cpp:321
msgid "Interpolation:"
msgstr "Interpolasi:"
@@ -5871,40 +6180,59 @@ msgstr "Membuat Chirp"
msgid "Generating Tone"
msgstr "Membuat Nada"
-#: effects/TruncSilence.cpp:113
+#: effects/TruncSilence.cpp:133
msgid "All tracks must have the same sample rate"
msgstr "Semua trek harus mempunyai rate sampel yang sama"
-#: effects/TruncSilence.cpp:113
-#: effects/TruncSilence.cpp:321
+#: effects/TruncSilence.cpp:133
+#: effects/TruncSilence.cpp:428
msgid "Truncate Silence"
msgstr "Pangkas Diam"
-#: effects/TruncSilence.cpp:345
-msgid "Max silence duration:"
-msgstr "Durasi diam maksimum:"
+#: effects/TruncSilence.cpp:438
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr "oleh Lynn Allan && Philip Van Baren"
-#: effects/TruncSilence.cpp:348
-#: prefs/AudioIOPrefs.cpp:196
-#: prefs/AudioIOPrefs.cpp:199
-#: prefs/MidiIOPrefs.cpp:174
-#: prefs/MidiIOPrefs.cpp:177
+#: effects/TruncSilence.cpp:452
+msgid "Min silence duration:"
+msgstr "Durasi diam minimal:"
+
+#: effects/TruncSilence.cpp:455
+#: effects/TruncSilence.cpp:459
+#: prefs/MidiIOPrefs.cpp:169
+#: prefs/MidiIOPrefs.cpp:171
msgid "milliseconds"
msgstr "milidetik"
-#: effects/TruncSilence.cpp:350
+#: effects/TruncSilence.cpp:456
+msgid "Max silence duration:"
+msgstr "Durasi diam maksimum:"
+
+#: effects/TruncSilence.cpp:460
+msgid "Silence compression:"
+msgstr "Kompresi diam:"
+
+#: effects/TruncSilence.cpp:463
+msgid ":1"
+msgstr ":1"
+
+#: effects/TruncSilence.cpp:465
msgid "Threshold for silence:"
msgstr "Ambang Batas untuk Diam:"
-#: effects/TruncSilence.cpp:374
-msgid " Duration must be at least 1 millisecond"
-msgstr " Durasi harus minimal 1 milidetik"
+#: effects/TruncSilence.cpp:491
+msgid ""
+" Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
+msgstr ""
+" Durasi harus minimal 1 milidetik\n"
+" Rasio kompresi harus minimal 1:1"
-#: effects/TruncSilence.h:28
+#: effects/TruncSilence.h:29
msgid "Truncate Silence..."
msgstr "Pangkas Diam..."
-#: effects/TruncSilence.h:42
+#: effects/TruncSilence.h:43
msgid "Truncating Silence..."
msgstr "Memangkas Diam.."
@@ -5959,108 +6287,108 @@ msgstr "Mengaplikasikan Wahwah"
#: effects/audiounits/AudioUnitEffect.cpp:138
#: effects/ladspa/LadspaEffect.cpp:176
-#: effects/lv2/LV2Effect.cpp:191
+#: effects/lv2/LV2Effect.cpp:192
#, c-format
msgid "Performing Effect: %s"
msgstr "Menjalankan Efek: %s"
#: effects/ladspa/LadspaEffect.cpp:196
-#: effects/lv2/LV2Effect.cpp:211
+#: effects/lv2/LV2Effect.cpp:212
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr "Maaf, Efek Pulg-in tidak bisa dipakai pada trek stereo yang masing-masing salurannya tidak cocok."
#: effects/ladspa/LadspaEffect.cpp:580
#: effects/ladspa/LadspaEffect.cpp:588
-#: prefs/GUIPrefs.cpp:51
-#: prefs/QualityPrefs.cpp:72
+#: prefs/GUIPrefs.cpp:109
+#: prefs/QualityPrefs.cpp:76
msgid "None"
msgstr "Tidak Ada"
#: effects/ladspa/LadspaEffect.cpp:582
-#: effects/lv2/LV2Effect.cpp:798
+#: effects/lv2/LV2Effect.cpp:799
#: effects/vamp/VampEffect.cpp:395
msgid "Author: "
msgstr "Pengarang:"
#: effects/ladspa/LadspaEffect.cpp:615
-#: effects/lv2/LV2Effect.cpp:823
+#: effects/lv2/LV2Effect.cpp:824
msgid "Effect Settings"
msgstr "Aturan Efek"
#: effects/ladspa/LadspaEffect.cpp:710
#: effects/ladspa/LadspaEffect.cpp:713
-#: effects/lv2/LV2Effect.cpp:834
-#: effects/lv2/LV2Effect.cpp:837
+#: effects/lv2/LV2Effect.cpp:835
+#: effects/lv2/LV2Effect.cpp:838
msgid "Length (seconds)"
msgstr "Panjang (detik)"
-#: effects/lv2/LV2Effect.cpp:849
-#: effects/lv2/LV2Effect.cpp:852
+#: effects/lv2/LV2Effect.cpp:850
+#: effects/lv2/LV2Effect.cpp:853
msgid "Note length (seconds)"
msgstr "Panjang catatan(detik)"
-#: effects/lv2/LV2Effect.cpp:860
-#: effects/lv2/LV2Effect.cpp:863
+#: effects/lv2/LV2Effect.cpp:861
+#: effects/lv2/LV2Effect.cpp:864
msgid "Note velocity"
msgstr "Kecepatan pencatatan"
-#: effects/lv2/LV2Effect.cpp:871
-#: effects/lv2/LV2Effect.cpp:874
+#: effects/lv2/LV2Effect.cpp:872
+#: effects/lv2/LV2Effect.cpp:875
msgid "Note key"
msgstr "Kunci Catatan"
-#: effects/nyquist/Nyquist.cpp:257
+#: effects/nyquist/Nyquist.cpp:73
msgid "Applying Nyquist Effect..."
msgstr "Mengaplikasikan Efek Nyquist..."
-#: effects/nyquist/Nyquist.cpp:264
-#: effects/nyquist/Nyquist.cpp:326
+#: effects/nyquist/Nyquist.cpp:91
+#: effects/nyquist/Nyquist.cpp:401
msgid "Nyquist Prompt..."
msgstr "Prompt Nyquist..."
-#: effects/nyquist/Nyquist.cpp:327
+#: effects/nyquist/Nyquist.cpp:402
msgid "Enter Nyquist Command: "
msgstr "Masukkan Perintah Nyquist:"
-#: effects/nyquist/Nyquist.cpp:417
+#: effects/nyquist/Nyquist.cpp:515
msgid "Sorry, cannot apply effect on stereo tracks where the tracks don't match."
msgstr "Maaf, efek tidak bisa dipakai padatrek stereo yang trek-terknya tidak cocok."
-#: effects/nyquist/Nyquist.cpp:445
+#: effects/nyquist/Nyquist.cpp:557
msgid "Nyquist"
msgstr "Nyquist"
-#: effects/nyquist/Nyquist.cpp:446
+#: effects/nyquist/Nyquist.cpp:558
msgid "Nyquist Output: "
msgstr "Output Nyquist:"
-#: effects/nyquist/Nyquist.cpp:603
-#: effects/nyquist/Nyquist.cpp:614
+#: effects/nyquist/Nyquist.cpp:656
+#: effects/nyquist/Nyquist.cpp:665
msgid "Nyquist returned the value:"
msgstr "Nyquist menghasilkan nilai:"
-#: effects/nyquist/Nyquist.cpp:656
+#: effects/nyquist/Nyquist.cpp:702
msgid "Nyquist did not return audio.\n"
msgstr "Nyquist tidak menghasilkan audio.\n"
-#: effects/nyquist/Nyquist.cpp:667
+#: effects/nyquist/Nyquist.cpp:711
msgid "Nyquist returned too many audio channels.\n"
msgstr "Nyquist terlalu banyak membuat audio.\n"
-#: effects/vamp/VampEffect.cpp:86
+#: effects/vamp/VampEffect.cpp:80
#, c-format
msgid "Extracting features: %s"
msgstr "Mengekstrak fitur: %s"
-#: effects/vamp/VampEffect.cpp:117
+#: effects/vamp/VampEffect.cpp:111
msgid "Sorry, Vamp Plug-ins cannot be run on stereo tracks where the individual channels of the track do not match."
msgstr "Maaf, Plug-in Vamp tidak bisa dipakai pada trek stereo yang masing-masing salurannya tidak cocok."
-#: effects/vamp/VampEffect.cpp:131
+#: effects/vamp/VampEffect.cpp:125
msgid "Sorry, failed to load Vamp Plug-in."
msgstr "Maaf, gagal mengambil Plug-in Vamp."
-#: effects/vamp/VampEffect.cpp:239
+#: effects/vamp/VampEffect.cpp:231
msgid "Sorry, Vamp Plug-in failed to initialize."
msgstr "Maaf, Plug-in Vamp gagal diinstall."
@@ -6077,75 +6405,77 @@ msgstr "Aturan Plugin"
msgid "Program"
msgstr "Program"
-#: export/Export.cpp:469
+#: export/Export.cpp:468
msgid "All the selected audio is muted."
-msgstr ""
+msgstr "Semua audio yang dipilih dimatikan."
-#: export/Export.cpp:471
+#: export/Export.cpp:470
msgid "All the audio is muted."
-msgstr ""
+msgstr "Semua audio dimatikan."
-#: export/Export.cpp:522
+#: export/Export.cpp:526
msgid "Export File"
msgstr "Mengekpor File"
-#: export/Export.cpp:530
+#: export/Export.cpp:535
msgid "&Options..."
msgstr "&Opsi..."
-#: export/Export.cpp:571
+#: export/Export.cpp:576
msgid "Are you sure you want to save the file as \""
msgstr "Anda yakin ingin menyimpan file sebagai \""
-#: export/Export.cpp:591
+#: export/Export.cpp:596
#, c-format
-msgid "You are about to save a %s file with the name \"%s\".\n"
+msgid ""
+"You are about to save a %s file with the name \"%s\".\n"
"\n"
"Normally these files end in \".%s\", and some programs will not open files with nonstandard extensions.\n"
"\n"
"Are you sure you want to save the file under this name?"
-msgstr "Anda ingin menyimpan file %s dengan nama \"%s\".\n"
+msgstr ""
+"Anda ingin menyimpan file %s dengan nama \"%s\".\n"
"\n"
"Biasanya file berakhiran dengan \".%s\", dan beberapa program tidak dapat membuka file dengan ekstensi nonstandar.\n"
"\n"
"Anda yakin ingin menyimpan file dangan nama ini?"
-#: export/Export.cpp:612
+#: export/Export.cpp:617
#, c-format
msgid "A file named \"%s\" already exists. Replace?"
msgstr "File bernama \"%s\" telah ada. Ganti?"
-#: export/Export.cpp:710
+#: export/Export.cpp:719
msgid "Your tracks will be mixed down to two stereo channels in the exported file."
msgstr "Trek Anda akan di-mix ke stereo pada pengeksporan file."
-#: export/Export.cpp:715
+#: export/Export.cpp:724
msgid "Your tracks will be mixed down to a single mono channel in the exported file."
msgstr "Trek Anda akan di-mix ke mono pada pengeksporan file."
-#: export/Export.cpp:726
+#: export/Export.cpp:735
msgid "Advanced Mixing Options"
msgstr "Opsi Mixing Lanjut"
-#: export/Export.cpp:930
+#: export/Export.cpp:943
#, c-format
msgid "Channel: %2d"
msgstr "Channel: %2d"
-#: export/Export.cpp:1046
+#: export/Export.cpp:1058
msgid " - Left"
msgstr " - Kiri"
-#: export/Export.cpp:1047
+#: export/Export.cpp:1060
msgid " - Right"
msgstr " - Kanan"
-#: export/Export.cpp:1072
+#: export/Export.cpp:1082
msgid "Mixer Panel"
msgstr "Panel Mixer"
-#: export/Export.cpp:1078
-#: export/Export.cpp:1125
+#: export/Export.cpp:1088
+#: export/Export.cpp:1135
#, c-format
msgid "Output Channels: %2d"
msgstr "Channel Output: %2d"
@@ -6154,97 +6484,119 @@ msgstr "Channel Output: %2d"
msgid "Specify Command Line Encoder"
msgstr "Spesifikasi Encoder Baris Perintah"
-#: export/ExportCL.cpp:70
+#: export/ExportCL.cpp:68
msgid "Command Line Export Setup"
msgstr "Pengaturan Ekspor Baris Perintah"
-#: export/ExportCL.cpp:75
+#: export/ExportCL.cpp:73
msgid "Command:"
msgstr "Perintah:"
-#: export/ExportCL.cpp:80
+#: export/ExportCL.cpp:78
msgid "Show output"
msgstr "Tunjukkan output"
-#: export/ExportCL.cpp:87
+#: export/ExportCL.cpp:85
#, c-format
msgid "Data will be piped to standard in. \"%f\" will be replaced with output filename selected."
msgstr "Data akan distandarkan. \"%f\" akan diganti dengan nama file yang dipilih tadi."
-#: export/ExportCL.cpp:222
+#: export/ExportCL.cpp:220
msgid "(external program)"
msgstr "(program eksternal)"
-#: export/ExportCL.cpp:253
-#: export/ExportPCM.cpp:457
+#: export/ExportCL.cpp:286
+#: export/ExportPCM.cpp:492
#, c-format
msgid "Cannot export audio to %s"
msgstr "Tidak dapat mengekspor audio ke %s"
-#: export/ExportCL.cpp:327
+#: export/ExportCL.cpp:360
msgid "Exporting the selected audio using command-line encoder"
msgstr "Mengekspor audio terpilih dengan encoder baris perintah"
-#: export/ExportCL.cpp:328
+#: export/ExportCL.cpp:361
msgid "Exporting the entire project using command-line encoder"
msgstr "Mengekspor proyek tersebut dengan encoder baris perintah"
-#: export/ExportCL.cpp:390
+#: export/ExportCL.cpp:423
msgid "Command Output"
msgstr "Output Perintah"
-#: export/ExportFFmpeg.cpp:59
-msgid "Properly configured FFmpeg is required to proceed.\n"
+#: export/ExportFFmpeg.cpp:61
+msgid ""
+"Properly configured FFmpeg is required to proceed.\n"
"You can configure it in Preferences->Import/Export."
msgstr ""
+"FFMpeg yang dikonfigurasi diperlukan sebelumnya untuk diproses.\n"
+"Anda bisa mengaturnya di Preferensi->Impor/Ekspor."
+
+#: export/ExportFFmpeg.cpp:231
+msgid "AMR support is unlikely"
+msgstr "Dukungan AMR idak tersedia"
+
+#: export/ExportFFmpeg.cpp:231
+msgid ""
+"Properly configured FFmpeg is required to proceed. You can configure it in Preferences->Import/Export.\n"
+"However AMR support is not available with our FFmpeg installer, but requires you compile FFmpeg yourself."
+msgstr ""
+"FFMpeg yang dikonfigurasi diperlukan sebelumnya untuk diproses.Anda bisa mengaturnya di Preferensi->Impor/Ekspor.\n"
+"Tetapi, dukungan AMR tidak ada dalam installer FFmpeg kami, jadi anda butuh mengcompile FFmpeg sendiri."
-#: export/ExportFFmpeg.cpp:394
+#: export/ExportFFmpeg.cpp:432
#, c-format
-msgid "FFmpeg cannot find audio codec 0x%x.\n"
+msgid ""
+"FFmpeg cannot find audio codec 0x%x.\n"
"Support for this codec is probably not compiled in."
msgstr ""
+"FFmpeg tidak bisa mencari codec audio 0x%x.\n"
+"Pendukuk codec ini mungkin belum dibuat."
-#: export/ExportFFmpeg.cpp:614
+#: export/ExportFFmpeg.cpp:654
#, c-format
msgid "Attempted to export %d channels, but max. channels for selected output format is %d"
-msgstr ""
+msgstr "Sedang mengekspor %d saluran, tapi saluran maksimal untuk format ini adalah %d"
-#: export/ExportFFmpeg.cpp:638
+#: export/ExportFFmpeg.cpp:683
#, c-format
msgid "Exporting selected audio as %s"
msgstr "Exporting selected audio as %s"
-#: export/ExportFFmpeg.cpp:639
+#: export/ExportFFmpeg.cpp:684
#, c-format
msgid "Exporting entire file as %s"
msgstr "Mengekspor file sebagai %s"
-#: export/ExportFFmpeg.cpp:702
-#: export/ExportMP3.cpp:1920
+#: export/ExportFFmpeg.cpp:747
+#: export/ExportMP3.cpp:1777
msgid "Invalid sample rate"
msgstr "Rate sampel tidak valid"
-#: export/ExportFFmpeg.cpp:715
+#: export/ExportFFmpeg.cpp:760
#, c-format
-msgid "The project sample rate (%d) is not supported by the current output\n"
+msgid ""
+"The project sample rate (%d) is not supported by the current output\n"
"file format. "
-msgstr "Rate Sampel proyek (%d) tidak mendukung \n"
+msgstr ""
+"Rate Sampel proyek (%d) tidak mendukung \n"
"file format output yang ada. "
-#: export/ExportFFmpeg.cpp:718
+#: export/ExportFFmpeg.cpp:763
#, c-format
-msgid "The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
+msgid ""
+"The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
"supported by the current output file format. "
-msgstr "Kombinasi rate Sampel proyek (%d) dan bit ratenya (%d kbps) tidak\n"
+msgstr ""
+"Kombinasi rate Sampel proyek (%d) dan bit ratenya (%d kbps) tidak\n"
"mendukung format file output yang ada."
-#: export/ExportFFmpeg.cpp:721
-#: export/ExportMP3.cpp:1939
+#: export/ExportFFmpeg.cpp:766
+#: export/ExportMP3.cpp:1796
msgid "You may resample to one of the rates below."
msgstr "Anda harus menyampel ulang ke salah satu rate di bawah ini."
-#: export/ExportFFmpeg.cpp:749
-#: export/ExportMP3.cpp:1962
+#: export/ExportFFmpeg.cpp:794
+#: export/ExportMP3.cpp:1819
msgid "Sample Rates"
msgstr "Rate Sampel"
@@ -6252,477 +6604,514 @@ msgstr "Rate Sampel"
msgid "Specify AC3 Options"
msgstr "Opsi Spesifikasi AC3"
-#: export/ExportFFmpegDialogs.cpp:117
+#: export/ExportFFmpegDialogs.cpp:112
msgid "AC3 Export Setup"
msgstr "Aturan Ekspor AC3"
-#: export/ExportFFmpegDialogs.cpp:121
-#: export/ExportFFmpegDialogs.cpp:245
-#: export/ExportFFmpegDialogs.cpp:314
-#: export/ExportFFmpegDialogs.cpp:385
-#: export/ExportFFmpegDialogs.cpp:937
-#: export/ExportMP2.cpp:133
+#: export/ExportFFmpegDialogs.cpp:116
+#: export/ExportFFmpegDialogs.cpp:234
+#: export/ExportFFmpegDialogs.cpp:298
+#: export/ExportFFmpegDialogs.cpp:364
+#: export/ExportFFmpegDialogs.cpp:925
+#: export/ExportMP2.cpp:131
msgid "Bit Rate:"
msgstr "Bit Rate:"
-#: export/ExportFFmpegDialogs.cpp:162
+#: export/ExportFFmpegDialogs.cpp:157
msgid "Specify AAC Options"
msgstr "Opsi Spesifikasi AAC"
-#: export/ExportFFmpegDialogs.cpp:178
+#: export/ExportFFmpegDialogs.cpp:168
msgid "AAC Export Setup"
msgstr "Aturan Ekspor AAC"
-#: export/ExportFFmpegDialogs.cpp:217
+#: export/ExportFFmpegDialogs.cpp:211
msgid "Specify AMR-NB Options"
msgstr "Opsi Spesifikasi AMR-NB"
-#: export/ExportFFmpegDialogs.cpp:241
+#: export/ExportFFmpegDialogs.cpp:230
msgid "AMR-NB Export Setup"
msgstr "Pengaturan Ekspor AMR-NB"
-#: export/ExportFFmpegDialogs.cpp:286
+#: export/ExportFFmpegDialogs.cpp:275
msgid "Specify AMR-WB Options"
msgstr "Opsi Spesifikasi AMR-WB"
-#: export/ExportFFmpegDialogs.cpp:310
+#: export/ExportFFmpegDialogs.cpp:294
msgid "AMR-WB Export Setup"
msgstr "Pengaturan Ekspor AMR-WB"
-#: export/ExportFFmpegDialogs.cpp:357
+#: export/ExportFFmpegDialogs.cpp:341
msgid "Specify WMA Options"
msgstr "Opsi Spesifikasi WMA"
-#: export/ExportFFmpegDialogs.cpp:381
+#: export/ExportFFmpegDialogs.cpp:360
msgid "WMA Export Setup"
msgstr "Pengaturan Ekspor WMA"
-#: export/ExportFFmpegDialogs.cpp:509
+#: export/ExportFFmpegDialogs.cpp:490
#, c-format
msgid "Overwrite preset '%s'?"
msgstr "Tiban aturan lanjut '%s'?"
-#: export/ExportFFmpegDialogs.cpp:510
+#: export/ExportFFmpegDialogs.cpp:491
msgid "Confirm Overwrite"
msgstr "Konfirmasi Penibanan"
-#: export/ExportFFmpegDialogs.cpp:501
+#: export/ExportFFmpegDialogs.cpp:503
msgid "Please select format before saving a profile"
-msgstr ""
+msgstr "Silahkan pilih format sebelium menyimpan profil"
-#: export/ExportFFmpegDialogs.cpp:509
+#: export/ExportFFmpegDialogs.cpp:511
msgid "Please select codec before saving a profile"
-msgstr ""
+msgstr "Silahkan pilih codec sebelium menyimpan profil"
-#: export/ExportFFmpegDialogs.cpp:580
+#: export/ExportFFmpegDialogs.cpp:581
#, c-format
msgid "Preset '%s' does not exist."
-msgstr ""
+msgstr "Preset '%s' tidak ada."
-#: export/ExportFFmpegDialogs.cpp:803
+#: export/ExportFFmpegDialogs.cpp:796
msgid "Specify Other Options"
msgstr "Opsi Spesifikasi yang Lainnya"
-#: export/ExportFFmpegDialogs.cpp:897
+#: export/ExportFFmpegDialogs.cpp:885
msgid "Preset:"
msgstr "Aturan Lanjut:"
-#: export/ExportFFmpegDialogs.cpp:898
+#: export/ExportFFmpegDialogs.cpp:886
msgid "Load Preset"
msgstr "Ambil Aturan Lanjut"
-#: export/ExportFFmpegDialogs.cpp:899
+#: export/ExportFFmpegDialogs.cpp:887
msgid "Save Preset"
msgstr "Simpan Aturan Lanjut"
-#: export/ExportFFmpegDialogs.cpp:900
+#: export/ExportFFmpegDialogs.cpp:888
msgid "Delete Preset"
msgstr "Hapus Aturan Lanjut"
-#: export/ExportFFmpegDialogs.cpp:901
+#: export/ExportFFmpegDialogs.cpp:889
msgid "Import Presets"
msgstr "Impor Aturan Lajut"
-#: export/ExportFFmpegDialogs.cpp:902
+#: export/ExportFFmpegDialogs.cpp:890
msgid "Export Presets"
msgstr "Ekspor Aturan Lanjut"
-#: export/ExportFFmpegDialogs.cpp:907
+#: export/ExportFFmpegDialogs.cpp:895
msgid "Format:"
msgstr "Format:"
-#: export/ExportFFmpegDialogs.cpp:909
+#: export/ExportFFmpegDialogs.cpp:897
msgid "Codec:"
msgstr "Codec:"
-#: export/ExportFFmpegDialogs.cpp:913
+#: export/ExportFFmpegDialogs.cpp:901
msgid "Not all formats and codecs are compatible. Some parameters (such as bitrate and samplerate) combinations are not compatible with some codecs too."
msgstr "Tidak semua format dan codec kompetibel. Beberapa kombinasi parameter (seperti bitrate dan sampelrate) tidak kompetibel juga dengan beberapa codec"
-#: export/ExportFFmpegDialogs.cpp:916
+#: export/ExportFFmpegDialogs.cpp:904
msgid "Format selector:"
msgstr "Pemilih format:"
-#: export/ExportFFmpegDialogs.cpp:917
+#: export/ExportFFmpegDialogs.cpp:905
msgid "Codec selector:"
msgstr "Pemilih codec:"
-#: export/ExportFFmpegDialogs.cpp:919
+#: export/ExportFFmpegDialogs.cpp:907
msgid "Show All Formats"
msgstr "Tunjukkan Semua Format"
-#: export/ExportFFmpegDialogs.cpp:920
+#: export/ExportFFmpegDialogs.cpp:908
msgid "Show All Codecs"
msgstr "Tunjukkan Semua Codec"
-#: export/ExportFFmpegDialogs.cpp:914
+#: export/ExportFFmpegDialogs.cpp:915
msgid "Options"
-msgstr ""
+msgstr "Opsi"
-#: export/ExportFFmpegDialogs.cpp:931
-#: prefs/GUIPrefs.cpp:166
+#: export/ExportFFmpegDialogs.cpp:919
+#: prefs/GUIPrefs.cpp:289
msgid "Language:"
msgstr "Bahasa:"
-#: export/ExportFFmpegDialogs.cpp:932
-msgid "ISO 639 3-letter language code\n"
+#: export/ExportFFmpegDialogs.cpp:920
+msgid ""
+"ISO 639 3-letter language code\n"
"Optional\n"
"empty - automatic"
-msgstr "Tiga karakter kode bahasa berdasarkan ISO 639\n"
+msgstr ""
+"Tiga karakter kode bahasa berdasarkan ISO 639\n"
"Opsi\n"
"kosong - otomatis"
-#: export/ExportFFmpegDialogs.cpp:934
+#: export/ExportFFmpegDialogs.cpp:922
msgid "Tag:"
msgstr "Tag:"
-#: export/ExportFFmpegDialogs.cpp:935
-msgid "Codec tag (FOURCC)\n"
+#: export/ExportFFmpegDialogs.cpp:923
+msgid ""
+"Codec tag (FOURCC)\n"
"Optional\n"
"empty - automatic"
-msgstr "Tag codec (FOURCC)\n"
+msgstr ""
+"Tag codec (FOURCC)\n"
"Opsi\n"
"kosong - otomatis"
-#: export/ExportFFmpegDialogs.cpp:938
-msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n"
+#: export/ExportFFmpegDialogs.cpp:926
+msgid ""
+"Bit Rate (bits/second) - influences the resulting file size and quality\n"
"Some codecs may only accept specific values (128k, 192k, 256k etc)\n"
"0 - automatic\n"
"Recommended - 192000"
-msgstr "Bit Rate (bit/detik) - menunjukkan hasil pada ukuran file dan kualitas\n"
+msgstr ""
+"Bit Rate (bit/detik) - menunjukkan hasil pada ukuran file dan kualitas\n"
"Beberapa codec mungkin hanya menunjukkan nilai spesifik (128k, 192k, 256k, dll)\n"
"0 - otomatis\n"
"Direkomendasikan - 192000"
-#: export/ExportFFmpegDialogs.cpp:940
-#: export/ExportOGG.cpp:86
+#: export/ExportFFmpegDialogs.cpp:928
+#: export/ExportOGG.cpp:84
msgid "Quality:"
msgstr "Kualitas:"
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:929
+msgid ""
+"Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
-msgstr "Kualitas keseluruhan, digunakan berbeda oleh codec yang berbeda pula\n"
+msgstr ""
+"Kualitas keseluruhan, digunakan berbeda oleh codec yang berbeda pula\n"
"Diperlukan untuk Vorbis\n"
"0 - otomatis\n"
-"-1 - mati (jadi, gunakan bitrate)"
+"-1 - mati (gunakan bitrate)"
-#: export/ExportFFmpegDialogs.cpp:943
+#: export/ExportFFmpegDialogs.cpp:931
msgid "Sample Rate:"
msgstr "Rate Sampel:"
-#: export/ExportFFmpegDialogs.cpp:944
-msgid "Sample rate (Hz)\n"
+#: export/ExportFFmpegDialogs.cpp:932
+msgid ""
+"Sample rate (Hz)\n"
"0 - don't change sample rate"
-msgstr "Rate sampel (Hz)\n"
+msgstr ""
+"Rate sampel (Hz)\n"
"0 - jangan ubah rate sampel"
-#: export/ExportFFmpegDialogs.cpp:946
+#: export/ExportFFmpegDialogs.cpp:934
msgid "Cutoff Bandwidth:"
msgstr "Bandwidth yang Dipotong:"
-#: export/ExportFFmpegDialogs.cpp:947
-msgid "Audio cutoff bandwidth (Hz)\n"
+#: export/ExportFFmpegDialogs.cpp:935
+msgid ""
+"Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
-msgstr "Bandwidth audio yang dipotong (Hz)\n"
+"0 - automatic"
+msgstr ""
+"Bandwidth audio yang dipotong (Hz)\n"
"Opsi\n"
-"0 - otomatis\n"
+"0 - otomatis"
-#: export/ExportFFmpegDialogs.cpp:949
+#: export/ExportFFmpegDialogs.cpp:937
msgid "Profile:"
msgstr "Profil:"
-#: export/ExportFFmpegDialogs.cpp:951
-msgid "AAC Profile\n"
+#: export/ExportFFmpegDialogs.cpp:939
+msgid ""
+"AAC Profile\n"
"Low Complexity -default\n"
"Most players won't play anything other than LC"
-msgstr "Profil AAC\n"
+msgstr ""
+"Profil AAC\n"
"Kompleksitas Rendah (LC) -biasa\n"
"Kebannyakan player tidak mau mainkan apapun selain LC"
-#: export/ExportFFmpegDialogs.cpp:940
+#: export/ExportFFmpegDialogs.cpp:941
msgid "Use Bit Reservoir"
-msgstr ""
+msgstr "Gunakan Penampung Bit"
-#: export/ExportFFmpegDialogs.cpp:943
+#: export/ExportFFmpegDialogs.cpp:944
msgid "Use Variable Block Length"
-msgstr ""
+msgstr "Gunakan Panjang Blok Variabel"
-#: export/ExportFFmpegDialogs.cpp:948
+#: export/ExportFFmpegDialogs.cpp:949
msgid "FLAC options"
-msgstr ""
+msgstr "Opsi FLAC"
-#: export/ExportFFmpegDialogs.cpp:965
+#: export/ExportFFmpegDialogs.cpp:953
msgid "Compression Level:"
msgstr "Level pengompres:"
-#: export/ExportFFmpegDialogs.cpp:966
-msgid "Compression level\n"
+#: export/ExportFFmpegDialogs.cpp:954
+msgid ""
+"Compression level\n"
"Required for FLAC\n"
"-1 - automatic\n"
"min - 0 (fast encoding, large output file)\n"
"max - 10 (slow encoding, small output file)"
-msgstr "Level pengompresan\n"
+msgstr ""
+"Level pengompresan\n"
"Diperlukan untuk FLAC\n"
"-1 - otomatis\n"
"min - 0 (encoding cepat, file output besar)\n"
"maks - 10 (encoding lambat, file output kecil)"
-#: export/ExportFFmpegDialogs.cpp:968
+#: export/ExportFFmpegDialogs.cpp:956
msgid "Frame Size:"
msgstr "Ukuran Bingkai:"
-#: export/ExportFFmpegDialogs.cpp:969
-msgid "Frame size\n"
+#: export/ExportFFmpegDialogs.cpp:957
+msgid ""
+"Frame size\n"
"Optional\n"
"0 - default\n"
"min - 16\n"
"max - 65535"
-msgstr "Ukuran bingkai\n"
+msgstr ""
+"Ukuran bingkai\n"
"Opsi\n"
"0 - biasa\n"
"min - 16\n"
"maks - 65535"
-#: export/ExportFFmpegDialogs.cpp:971
+#: export/ExportFFmpegDialogs.cpp:959
msgid "LPC coefficients precision"
msgstr "Presisi Koefisien LPC"
-#: export/ExportFFmpegDialogs.cpp:972
-msgid "LPC coefficients precision\n"
+#: export/ExportFFmpegDialogs.cpp:960
+msgid ""
+"LPC coefficients precision\n"
"Optional\n"
"0 - default\n"
"min - 1\n"
"max - 15"
-msgstr "Presisi koefisien LPC\n"
+msgstr ""
+"Presisi koefisien LPC\n"
"Opsi\n"
"0 - biasa\n"
"min - 1\n"
"maks - 15"
-#: export/ExportFFmpegDialogs.cpp:974
+#: export/ExportFFmpegDialogs.cpp:962
msgid "Minimal prediction order"
msgstr "Prediksi persebaran minimal"
-#: export/ExportFFmpegDialogs.cpp:975
-msgid "Minimal prediction order\n"
+#: export/ExportFFmpegDialogs.cpp:963
+msgid ""
+"Minimal prediction order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 32 (with LPC) or 4 (without LPC)"
-msgstr "Prediksi persebaran minimal\n"
+msgstr ""
+"Prediksi persebaran minimal\n"
"Opsi\n"
"-1 - biasa\n"
"min - 0\n"
"maks - 32 (dengan LPC) atau 4 (tanpa LPC)"
-#: export/ExportFFmpegDialogs.cpp:977
+#: export/ExportFFmpegDialogs.cpp:965
msgid "Maximal prediction order"
msgstr "Prediksi persebaran maksimal"
-#: export/ExportFFmpegDialogs.cpp:978
-msgid "Maximal prediction order\n"
+#: export/ExportFFmpegDialogs.cpp:966
+msgid ""
+"Maximal prediction order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 32 (with LPC) or 4 (without LPC)"
-msgstr "Prediksi persebaran maksimal\n"
+msgstr ""
+"Prediksi persebaran maksimal\n"
"Opsi\n"
"-1 - biasa\n"
"min - 0\n"
"maks - 32 (dengan LPC) atau 4 (tanpa LPC)"
-#: export/ExportFFmpegDialogs.cpp:980
+#: export/ExportFFmpegDialogs.cpp:968
msgid "Prediction Order Method:"
msgstr "Metode prediksi persebaran:"
-#: export/ExportFFmpegDialogs.cpp:982
-msgid "Prediction Order Method\n"
+#: export/ExportFFmpegDialogs.cpp:970
+msgid ""
+"Prediction Order Method\n"
"Estimate - fastest, lower compression\n"
"Log search - slowest, best compression\n"
"Full search - default"
-msgstr "Metode Prediksi Persebaran\n"
+msgstr ""
+"Metode Prediksi Persebaran\n"
"Mapan - tercepat, kompresi lebih rendah\n"
"Pencarian Log - terlambat, kompresi lebih tinggi\n"
"Pencarian Penuh - biasa"
-#: export/ExportFFmpegDialogs.cpp:984
+#: export/ExportFFmpegDialogs.cpp:972
msgid "Minimal partition order"
msgstr "Pembagian persebaran minimal"
-#: export/ExportFFmpegDialogs.cpp:985
-msgid "Minimal partition order\n"
+#: export/ExportFFmpegDialogs.cpp:973
+msgid ""
+"Minimal partition order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 8"
-msgstr "Pembagian persebaran minimal\n"
+msgstr ""
+"Pembagian persebaran minimal\n"
"Opsi\n"
"-1 - biasa\n"
"min - 0\n"
"maks - 8"
-#: export/ExportFFmpegDialogs.cpp:987
+#: export/ExportFFmpegDialogs.cpp:975
msgid "Maximal partition order"
msgstr "Pembagian persebaran maksimal"
-#: export/ExportFFmpegDialogs.cpp:988
-msgid "Maximal partition order\n"
+#: export/ExportFFmpegDialogs.cpp:976
+msgid ""
+"Maximal partition order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 8"
-msgstr "Pembagian persebaran maksimall\n"
+msgstr ""
+"Pembagian persebaran maksimall\n"
"Opsi\n"
"-1 - biasa\n"
"min - 0\n"
"maks - 8"
-#: export/ExportFFmpegDialogs.cpp:977
+#: export/ExportFFmpegDialogs.cpp:978
msgid "Use LPC"
-msgstr ""
+msgstr "Gunakan LPC"
-#: export/ExportFFmpegDialogs.cpp:984
+#: export/ExportFFmpegDialogs.cpp:985
msgid "MPEG container options"
-msgstr ""
+msgstr "Opsi kontainer MPEG"
-#: export/ExportFFmpegDialogs.cpp:1001
+#: export/ExportFFmpegDialogs.cpp:989
msgid "Mux Rate:"
msgstr "Mux Rate:"
-#: export/ExportFFmpegDialogs.cpp:1002
-msgid "Maximum bit rate of the multiplexed stream\n"
+#: export/ExportFFmpegDialogs.cpp:990
+msgid ""
+"Maximum bit rate of the multiplexed stream\n"
"Optional\n"
"0 - default"
-msgstr "Bit rate maksimum stream rumit\n"
+msgstr ""
+"Bit rate maksimum stream rumit\n"
"Opsi\n"
"0 - biasa"
-#: export/ExportFFmpegDialogs.cpp:1004
+#: export/ExportFFmpegDialogs.cpp:992
msgid "Packet Size:"
msgstr "Ukuran paket:"
-#: export/ExportFFmpegDialogs.cpp:1005
-msgid "Packet size\n"
+#: export/ExportFFmpegDialogs.cpp:993
+msgid ""
+"Packet size\n"
"Optional\n"
"0 - default"
-msgstr "Ukuran paket\n"
+msgstr ""
+"Ukuran paket\n"
"Opsi\n"
"0 - biasa"
-#: export/ExportFFmpegDialogs.cpp:1207
+#: export/ExportFFmpegDialogs.cpp:1208
msgid "You can't delete a preset without name"
-msgstr ""
+msgstr "Anda tidak bisa menghapus preset tanpa nama"
-#: export/ExportFFmpegDialogs.cpp:1219
+#: export/ExportFFmpegDialogs.cpp:1212
#, c-format
msgid "Delete preset '%s'?"
msgstr "Hapus aturan lanjut '%s'?"
-#: export/ExportFFmpegDialogs.cpp:1238
+#: export/ExportFFmpegDialogs.cpp:1231
msgid "You can't save a preset without name"
msgstr "And tidak bisa menyimpan aturan lanjut tanpa nama"
-#: export/ExportFFmpegDialogs.cpp:1277
+#: export/ExportFFmpegDialogs.cpp:1271
msgid "Select xml file with presets to import"
msgstr "Pilih file xml dengan aturan lanjut untuk diimpor"
-#: prefs/KeyConfigPrefs.cpp:202
+#: export/ExportFFmpegDialogs.cpp:1274
+#: export/ExportFFmpegDialogs.cpp:1294
+#: prefs/KeyConfigPrefs.cpp:224
+#: prefs/KeyConfigPrefs.cpp:255
msgid "XML files (*.xml)|*.xml|All files (*.*)|*.*"
msgstr "File XML (*.xml)|*.xml|All files (*.*)|*.*"
-#: export/ExportFFmpegDialogs.cpp:1292
+#: export/ExportFFmpegDialogs.cpp:1291
msgid "Select xml file to export presets into"
msgstr "Pilih file xml untuk mengekspor aturan lanjut ke dalam"
-#: export/ExportFFmpegDialogs.cpp:1361
+#: export/ExportFFmpegDialogs.cpp:1362
msgid "Failed to guess format"
-msgstr ""
+msgstr "Gagal menebak format"
-#: export/ExportFFmpegDialogs.cpp:1403
+#: export/ExportFFmpegDialogs.cpp:1404
msgid "Failed to find the codec"
-msgstr ""
+msgstr "Gagal mencari codec"
-#: export/ExportFFmpegDialogs.h:53
+#: export/ExportFFmpegDialogs.h:54
msgid "M4A (AAC) Files (FFmpeg)"
msgstr "File M4A (AAC) (FFmpeg)"
-#: export/ExportFFmpegDialogs.h:54
+#: export/ExportFFmpegDialogs.h:55
msgid "AC3 Files (FFmpeg)"
msgstr "File AC3 (FFmpeg)"
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
-msgstr "File AMR-NB (FFmpeg)"
-
#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
-msgstr "File AMR-WB (FFmpeg)"
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
+msgstr "File AMR (jangakuan sempit) (FFmpeg, tidak terdistribusi)"
#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
+msgstr "File AMR (jangakuan luas) (FFmpeg, tidak terdistribusi)"
+
+#: export/ExportFFmpegDialogs.h:58
msgid "WMA (version 2) Files (FFmpeg)"
msgstr "File WMA (v2) (FFmpeg)"
-#: export/ExportFFmpegDialogs.h:58
+#: export/ExportFFmpegDialogs.h:59
msgid "Custom FFmpeg Export"
msgstr "Pengeksporan FFmpeg Pilihan Sendiri"
-#: export/ExportFFmpegDialogs.h:373
+#: export/ExportFFmpegDialogs.h:374
msgid "LTP"
msgstr "LTP"
-#: export/ExportFFmpegDialogs.h:373
+#: export/ExportFFmpegDialogs.h:374
msgid "Low Complexity"
msgstr "Kompleksitas Rendah"
-#: export/ExportFFmpegDialogs.h:373
+#: export/ExportFFmpegDialogs.h:374
msgid "Main profile"
msgstr "Profil utama"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "2-level"
msgstr "2 level"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "4-level"
msgstr "4 level"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "8-level"
msgstr "8 level"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "Estimate"
msgstr "Mapan"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "Full search"
msgstr "Pencarian Penuh"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "Log search"
msgstr "Pencarian Log"
@@ -6730,71 +7119,85 @@ msgstr "Pencarian Log"
msgid "Specify FLAC Options"
msgstr "Opsi Spesifikasi FLAC"
-#: export/ExportFLAC.cpp:81
+#: export/ExportFLAC.cpp:79
msgid "0 (fastest)"
msgstr "0 (tercepat)"
-#: export/ExportFLAC.cpp:82
+#: export/ExportFLAC.cpp:80
msgid "1"
msgstr "1"
-#: export/ExportFLAC.cpp:83
+#: export/ExportFLAC.cpp:81
msgid "2"
msgstr "2"
-#: export/ExportFLAC.cpp:84
+#: export/ExportFLAC.cpp:82
msgid "3"
msgstr "3"
-#: export/ExportFLAC.cpp:85
+#: export/ExportFLAC.cpp:83
msgid "4"
msgstr "4"
-#: export/ExportFLAC.cpp:86
+#: export/ExportFLAC.cpp:84
msgid "5"
msgstr "5"
-#: export/ExportFLAC.cpp:87
+#: export/ExportFLAC.cpp:85
msgid "6"
msgstr "6"
-#: export/ExportFLAC.cpp:88
+#: export/ExportFLAC.cpp:86
msgid "7"
msgstr "7"
-#: export/ExportFLAC.cpp:89
+#: export/ExportFLAC.cpp:87
msgid "8 (best)"
msgstr "8 (terbaik)"
-#: export/ExportFLAC.cpp:92
+#: export/ExportFLAC.cpp:90
msgid "16 bit"
msgstr "16 bit"
-#: export/ExportFLAC.cpp:93
+#: export/ExportFLAC.cpp:91
msgid "24 bit"
msgstr "24 bit"
-#: export/ExportFLAC.cpp:97
+#: export/ExportFLAC.cpp:95
msgid "FLAC Export Setup"
msgstr "Aturan Ekspor FLAC"
-#: export/ExportFLAC.cpp:101
+#: export/ExportFLAC.cpp:99
msgid "Level:"
msgstr "Tingkat:"
-#: export/ExportFLAC.cpp:103
+#: export/ExportFLAC.cpp:101
msgid "Bit depth:"
msgstr "Kedalaman bit:"
-#: export/ExportFLAC.cpp:209
+#: export/ExportFLAC.cpp:207
msgid "FLAC Files"
msgstr "File FLAC"
-#: export/ExportFLAC.cpp:312
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr "Eksortir FLAC tidak bisa membuka %s"
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid ""
+"FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+"Encoder FLAC gagal menginisialisasi\n"
+"Status: %d"
+
+#: export/ExportFLAC.cpp:324
msgid "Exporting the selected audio as FLAC"
msgstr "Mengekspor audio yang dipilih ke FLAC"
-#: export/ExportFLAC.cpp:313
+#: export/ExportFLAC.cpp:325
msgid "Exporting the entire project as FLAC"
msgstr "Mengekspor proyek yang ditentukan sebagai FLAC"
@@ -6802,72 +7205,72 @@ msgstr "Mengekspor proyek yang ditentukan sebagai FLAC"
msgid "Specify MP2 Options"
msgstr "Opsi Spesifikasi MP2"
-#: export/ExportMP2.cpp:129
+#: export/ExportMP2.cpp:127
msgid "MP2 Export Setup"
msgstr "Pengaturan Ekspor MP2"
-#: export/ExportMP2.cpp:202
+#: export/ExportMP2.cpp:200
msgid "MP2 Files"
msgstr "File MP2"
-#: export/ExportMP2.cpp:232
+#: export/ExportMP2.cpp:230
msgid "Cannot export MP2 with this sample rate and bit rate"
msgstr "Tidak bisa mengekspor MP2 dengan rate sampel dan bit rate ini"
-#: export/ExportMP2.cpp:243
-#: export/ExportMP3.cpp:1771
-#: export/ExportOGG.cpp:186
+#: export/ExportMP2.cpp:241
+#: export/ExportMP3.cpp:1619
+#: export/ExportOGG.cpp:184
msgid "Unable to open target file for writing"
msgstr "Tidak dapat membuka file target untuk ditulis"
-#: export/ExportMP2.cpp:274
+#: export/ExportMP2.cpp:273
#, c-format
msgid "Exporting selected audio at %d kbps"
msgstr "Mengekspor audio terpilih pada %d kbps"
-#: export/ExportMP2.cpp:275
+#: export/ExportMP2.cpp:274
#, c-format
msgid "Exporting entire file at %d kbps"
msgstr "Mengekspor file pada %d kbps"
-#: export/ExportMP3.cpp:221
-#: export/ExportMP3.cpp:239
-#: export/ExportMP3.cpp:253
+#: export/ExportMP3.cpp:223
+#: export/ExportMP3.cpp:241
+#: export/ExportMP3.cpp:255
msgid "kbps"
msgstr "kbps"
-#: export/ExportMP3.cpp:240
+#: export/ExportMP3.cpp:242
msgid "(Best Quality)"
msgstr "(Kualitas Terbaik)"
-#: export/ExportMP3.cpp:241
+#: export/ExportMP3.cpp:243
msgid "(Smaller files)"
msgstr "(File yang lebih kecil)"
-#: export/ExportMP3.cpp:243
+#: export/ExportMP3.cpp:245
msgid "Fast"
msgstr "Cepat"
-#: export/ExportMP3.cpp:244
-#: export/ExportMP3.cpp:250
-#: prefs/GUIPrefs.cpp:41
-#: prefs/GUIPrefs.cpp:49
+#: export/ExportMP3.cpp:246
+#: export/ExportMP3.cpp:252
+#: prefs/GUIPrefs.cpp:107
+#: prefs/GUIPrefs.cpp:223
msgid "Standard"
msgstr "Standar"
-#: export/ExportMP3.cpp:248
+#: export/ExportMP3.cpp:250
msgid "Insane"
msgstr "Parah"
-#: export/ExportMP3.cpp:249
+#: export/ExportMP3.cpp:251
msgid "Extreme"
msgstr "Ekstrim"
-#: export/ExportMP3.cpp:251
+#: export/ExportMP3.cpp:253
msgid "Medium"
msgstr "Sedang"
-#: export/ExportMP3.cpp:303
+#: export/ExportMP3.cpp:305
msgid "Specify MP3 Options"
msgstr "Opsi Spesifikasi MP3"
@@ -6896,8 +7299,7 @@ msgid "Constant"
msgstr "Konstan"
#: export/ExportMP3.cpp:373
-#: prefs/QualityPrefs.cpp:42
-#: prefs/QualityPrefs.cpp:43
+#: prefs/QualityPrefs.cpp:40
msgid "Quality"
msgstr "Kualitas"
@@ -6932,501 +7334,553 @@ msgstr "Untuk mendapatkan salinan Lame gratis, klik di sini ==>"
#: export/ExportMP3.cpp:1070
#, c-format
-msgid "You are linking to lame_enc.dll v%d.%d. This version is not compatible with Audacity %d.%d.%d.\n"
+msgid ""
+"You are linking to lame_enc.dll v%d.%d. This version is not compatible with Audacity %d.%d.%d.\n"
"Please download the latest version of the LAME MP3 library."
msgstr ""
+"Anda menghubungkan lame_enc.dll v%d.%d. Viersi ini tidak cocok dengan Audacity %d.%d.%d.\n"
+"Silahkan download versi akhir referensi LAME MP3."
-#: export/ExportMP3.cpp:1094
+#: export/ExportMP3.cpp:1328
msgid "Only lame_enc.dll|lame_enc.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
msgstr "Hanya lame_enc.dll|lame_enc.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
-#: export/ExportMP3.cpp:1550
+#: export/ExportMP3.cpp:1346
msgid "Only libmp3lame.dylib|libmp3lame.dylib|Dynamic Libraries (*.dylib)|*.dylib|All Files (*)|*"
msgstr "Hanya libmp3lame.dylib|libmp3lame.dylib|Dynamic Libraries (*.dylib)|*.dylib|Semua File (*)|*"
-#: export/ExportMP3.cpp:1567
+#: export/ExportMP3.cpp:1364
msgid "Only libmp3lame.so.0|libmp3lame.so.0|Primary Shared Object files (*.so)|*.so|Extended Libraries (*.so*)|*.so*|All Files (*)|*"
msgstr "Hanya libmp3lame.so.0|libmp3lame.so.0|File Primary Shared Object (*.so)|*.so|Extended Libraries (*.so*)|*.so*|Semua File (*)|*"
-#: export/ExportMP3.cpp:1652
+#: export/ExportMP3.cpp:1500
msgid "MP3 Files"
msgstr "File MP3"
-#: export/ExportMP3.cpp:1676
+#: export/ExportMP3.cpp:1524
msgid "Could not open MP3 encoding library!"
msgstr "Tidak bisa membuka referensi encoding MP3!"
-#: export/ExportMP3.cpp:1683
+#: export/ExportMP3.cpp:1531
msgid "Not a valid or supported MP3 encoding library!"
msgstr "Referensi encoding MP3 tidak valid atau terdukung"
-#: export/ExportMP3.cpp:1760
+#: export/ExportMP3.cpp:1608
msgid "Unable to initialize MP3 stream"
msgstr "Tidak bisa menginisialisasi strim MP3"
-#: export/ExportMP3.cpp:1802
+#: export/ExportMP3.cpp:1652
#, c-format
msgid "Exporting selected audio with %s preset"
msgstr "Mengekspor audio terpilih dengan %s aturan lanjut"
-#: export/ExportMP3.cpp:1803
+#: export/ExportMP3.cpp:1653
#, c-format
msgid "Exporting entire file with %s preset"
msgstr "Mengekspor file terpilih dengan %s aturan lanjut"
-#: export/ExportMP3.cpp:1808
+#: export/ExportMP3.cpp:1658
#, c-format
msgid "Exporting selected audio with VBR quality %s"
msgstr "Mengekspor audio terpilih dengan kualitas VBR %s"
-#: export/ExportMP3.cpp:1809
+#: export/ExportMP3.cpp:1659
#, c-format
msgid "Exporting entire file with VBR quality %s"
msgstr "Mengekspor file tersebut dengan kualitas VBR %s"
-#: export/ExportMP3.cpp:1814
+#: export/ExportMP3.cpp:1664
#, c-format
msgid "Exporting selected audio at %d Kbps"
msgstr "Mengekspor audio terpilih pada %d Kbps"
-#: export/ExportMP3.cpp:1815
+#: export/ExportMP3.cpp:1665
#, c-format
msgid "Exporting entire file at %d Kbps"
msgstr "Mengekspor file tersebut pada %d Kbps"
-#: export/ExportMP3.cpp:1849
+#: export/ExportMP3.cpp:1699
#, c-format
msgid "Error %d returned from MP3 encoder"
msgstr "Error %d ditolak dari encoder MP3"
-#: export/ExportMP3.cpp:1933
+#: export/ExportMP3.cpp:1790
#, c-format
-msgid "The project sample rate (%d) is not supported by the MP3\n"
+msgid ""
+"The project sample rate (%d) is not supported by the MP3\n"
"file format. "
-msgstr "Rate Sampel proyek (%d) tidak mendukung \n"
+msgstr ""
+"Rate Sampel proyek (%d) tidak mendukung \n"
"file format MP3. "
-#: export/ExportMP3.cpp:1936
+#: export/ExportMP3.cpp:1793
#, c-format
-msgid "The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
+msgid ""
+"The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
"supported by the MP3 file format. "
-msgstr "Kombinasi rate Sampel proyek (%d) dan bit ratenya (%d kbps) tidak\n"
+msgstr ""
+"Kombinasi rate Sampel proyek (%d) dan bit ratenya (%d kbps) tidak\n"
"mendukung format file MP3."
-#: export/ExportMP3.cpp:1965
+#: export/ExportMP3.cpp:1970
msgid "MP3 export library not found"
-msgstr ""
+msgstr "Referensi Ekspor MP3 tidak ditemukan"
-#: export/ExportMultiple.cpp:96
-#: export/ExportMultiple.cpp:426
-#: export/ExportMultiple.cpp:667
-#: export/ExportMultiple.cpp:834
+#: export/ExportMultiple.cpp:93
+#: export/ExportMultiple.cpp:424
msgid "Export Multiple"
msgstr "Ekspor Banyak"
-#: export/ExportMultiple.cpp:166
-msgid "If you have more than one Audio Track, you can export each track as a separate file,\n"
+#: export/ExportMultiple.cpp:163
+msgid ""
+"If you have more than one Audio Track, you can export each track as a separate file,\n"
"or if you have a Label Track, you can export a new file for each label.\n"
"\n"
"This project does not have multiple tracks or a Label Track, so you cannot export multiple files."
-msgstr "Jika Anda mempunyai lebih dari satu Trek Audio, Anda bisa mengekspor setiap trek dalam file-file terpisah,\n"
+msgstr ""
+"Jika Anda mempunyai lebih dari satu Trek Audio, Anda bisa mengekspor setiap trek dalam file-file terpisah,\n"
"atau jika Anda mempunyai label pada trek, Anda bisa mengekspornya berdasarkan labelnya.\n"
"\n"
"Proyek ini tidak mempunyai trek atau label yang banyak, jadi Anda tidak bisa mengekspor file seperti yang Anda perintahkan."
-#: export/ExportMultiple.cpp:167
+#: export/ExportMultiple.cpp:164
msgid "Can't export multiple files"
msgstr "Tidak bisa mengekspor file-file"
-#: export/ExportMultiple.cpp:232
+#: export/ExportMultiple.cpp:229
msgid "Export format:"
msgstr "Format Ekspor:"
-#: export/ExportMultiple.cpp:237
+#: export/ExportMultiple.cpp:234
msgid "Options..."
msgstr "Opsi..."
-#: export/ExportMultiple.cpp:241
+#: export/ExportMultiple.cpp:238
msgid "Export location:"
msgstr "Lokasi ekspor:"
-#: export/ExportMultiple.cpp:245
-#: prefs/DirectoriesPrefs.cpp:92
-msgid "Choose..."
-msgstr "Pilih..."
-
-#: export/ExportMultiple.cpp:246
+#: export/ExportMultiple.cpp:243
msgid "Create"
msgstr "Buat"
-#: export/ExportMultiple.cpp:253
+#: export/ExportMultiple.cpp:250
msgid "Split files based on:"
msgstr "Penggabungan file berdasarkan:"
-#: export/ExportMultiple.cpp:262
-#: export/ExportMultiple.cpp:264
+#: export/ExportMultiple.cpp:259
+#: export/ExportMultiple.cpp:261
msgid "Labels"
msgstr "Label"
-#: export/ExportMultiple.cpp:269
+#: export/ExportMultiple.cpp:266
msgid "Include audio before first label"
msgstr "Termasuk audio sebelum label pertama"
-#: export/ExportMultiple.cpp:275
+#: export/ExportMultiple.cpp:272
msgid "First file name:"
msgstr "Nama file pertama:"
-#: export/ExportMultiple.cpp:280
+#: export/ExportMultiple.cpp:277
msgid "First file name"
msgstr "Nama file pertama"
-#: export/ExportMultiple.cpp:288
-#: export/ExportMultiple.cpp:290
-msgid "Tracks"
-msgstr "Trek"
-
-#: export/ExportMultiple.cpp:297
+#: export/ExportMultiple.cpp:294
msgid "Name files:"
msgstr "Nama file:"
-#: export/ExportMultiple.cpp:306
-#: export/ExportMultiple.cpp:308
+#: export/ExportMultiple.cpp:303
+#: export/ExportMultiple.cpp:305
msgid "Using Label/Track Name"
msgstr "Menggunakan Nama Label/Trek"
-#: export/ExportMultiple.cpp:314
-#: export/ExportMultiple.cpp:316
+#: export/ExportMultiple.cpp:311
+#: export/ExportMultiple.cpp:313
msgid "Numbering consecutively"
msgstr "Penomoran secara otomatis"
-#: export/ExportMultiple.cpp:322
+#: export/ExportMultiple.cpp:319
msgid "File name prefix:"
msgstr "Awalan naman file:"
-#: export/ExportMultiple.cpp:327
+#: export/ExportMultiple.cpp:324
msgid "File name prefix"
msgstr "Awalan naman file"
-#: export/ExportMultiple.cpp:341
+#: export/ExportMultiple.cpp:338
msgid "Overwrite existing files"
msgstr "Meniban file yang sudah ada"
-#: export/ExportMultiple.cpp:424
+#: export/ExportMultiple.cpp:422
#, c-format
msgid "\"%s\" successfully created."
msgstr "\"%s\" telah dibuat."
-#: export/ExportMultiple.cpp:433
+#: export/ExportMultiple.cpp:431
msgid "Choose a location to save the exported files"
msgstr "Pilih lokasi untuk menyimpan hasil ekspor"
-#: export/ExportMultiple.cpp:539
+#: export/ExportMultiple.cpp:524
#, c-format
-msgid "\"%s\" doesn't exist.\n"
+msgid "Successfully exported the following %ld file(s)."
+msgstr "Telah terekspor %ld file."
+
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
+msgstr "Ada sesuatu yang salah setelah mengekspor %ld file."
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
+msgstr "Ekspor dibatalkan setelah mengekspor %ld file."
+
+#: export/ExportMultiple.cpp:527
+#, c-format
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr "Ekspor dihentikan setelah mengekspor %ld file."
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr "Ada sesuatu yang fatal setelah mengekspor %ld file."
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr "EksporMultipel"
+
+#: export/ExportMultiple.cpp:570
+#, c-format
+msgid ""
+"\"%s\" doesn't exist.\n"
"\n"
"Would you like to create it?"
-msgstr "\"%s\" tidak ada.\n"
+msgstr ""
+"\"%s\" tidak ada.\n"
"\n"
"Apakah Anda mingin membuatnya?"
-#: export/ExportMultiple.cpp:637
-#: export/ExportMultiple.cpp:772
+#: export/ExportMultiple.cpp:667
+#: export/ExportMultiple.cpp:804
msgid "Edit metadata"
msgstr "Edit Metadata"
-#: export/ExportMultiple.cpp:664
-#: export/ExportMultiple.cpp:831
-#, c-format
-msgid "Successfully exported %d file(s)."
-msgstr "Telah terekspor %d file."
-
-#: export/ExportMultiple.cpp:665
-#: export/ExportMultiple.cpp:832
-#, c-format
-msgid "Something went wrong after exporting %d file(s)."
-msgstr "Sesuatu gagal setelah mengekspor %d file."
-
-#: export/ExportMultiple.cpp:881
+#: export/ExportMultiple.cpp:923
#, c-format
-msgid "Label %s is not a legal file name. You cannot use any of: %s\n"
+msgid ""
+"Label %s is not a legal file name. You cannot use any of: %s\n"
"Use..."
-msgstr "Label %s bukan nama file yang legal. Anda tidak bisa menggunakan: %s\n"
+msgstr ""
+"Label %s bukan nama file yang legal. Anda tidak bisa menggunakan: %s\n"
"Gunakan..."
#: export/ExportOGG.cpp:64
msgid "Specify Ogg Vorbis Options"
msgstr "Opsi Spesifikasi Ogg Vorbis"
-#: export/ExportOGG.cpp:81
+#: export/ExportOGG.cpp:79
msgid "Ogg Vorbis Export Setup"
msgstr "Pengaturan Ekspor Ogg Vorbis"
-#: export/ExportOGG.cpp:157
+#: export/ExportOGG.cpp:155
msgid "Ogg Vorbis Files"
msgstr "File Ogg Vorbis"
-#: export/ExportOGG.cpp:257
+#: export/ExportOGG.cpp:256
msgid "Exporting the selected audio as Ogg Vorbis"
msgstr "Mengekspor audio terpilih sebagai Ogg Vorbis"
-#: export/ExportOGG.cpp:258
+#: export/ExportOGG.cpp:257
msgid "Exporting the entire project as Ogg Vorbis"
msgstr "Mengekspor proyek sebagai Ogg Vorbis"
-#: export/ExportPCM.cpp:116
+#: export/ExportPCM.cpp:119
msgid "Specify Uncompressed Options"
msgstr "Opsi Spesifikasi Tak Terkompres"
-#: export/ExportPCM.cpp:185
+#: export/ExportPCM.cpp:189
msgid "Uncompressed Export Setup"
msgstr "Pengaturan Ekspor Tanpa Pengompresan"
-#: export/ExportPCM.cpp:191
+#: export/ExportPCM.cpp:195
msgid "Header:"
msgstr "Catatan Kepala:"
-#: export/ExportPCM.cpp:195
-#: import/ImportRaw.cpp:366
+#: export/ExportPCM.cpp:199
+#: import/ImportRaw.cpp:376
msgid "Encoding:"
msgstr "Encoding:"
-#: export/ExportPCM.cpp:200
+#: export/ExportPCM.cpp:204
msgid "(Not all combinations of headers and encodings are possible.)"
msgstr "(Tidak semua kombinasi catatan kepala dan encoding bisa dipakai.)"
-#: export/ExportPCM.cpp:369
+#: export/ExportPCM.cpp:359
msgid "Other uncompressed files"
msgstr "File tanpa terkompres lainnya"
-#: export/ExportPCM.cpp:361
+#: export/ExportPCM.cpp:377
msgid "AIFF (Apple) signed 16 bit PCM"
msgstr "AIFF (Apple) tertanda 16 bit PCM"
-#: export/ExportPCM.cpp:351
+#: export/ExportPCM.cpp:388
msgid "WAV (Microsoft) signed 16 bit PCM"
msgstr "WAV (Microsoft) tertanda 16 bit PCM"
-#: export/ExportPCM.cpp:387
+#: export/ExportPCM.cpp:399
msgid "GSM 6.10 WAV (mobile)"
msgstr "GSM 6.10 WAV (telepon genggam)"
-#: export/ExportPCM.cpp:449
+#: export/ExportPCM.cpp:476
msgid "Cannot export audio in this format."
msgstr "Tidak bisa mengekspor audio pada format ini."
-#: export/ExportPCM.cpp:491
+#: export/ExportPCM.cpp:526
#, c-format
msgid "Exporting the selected audio as %s"
msgstr "Mengekspor audio terpilih sebagai %s"
-#: export/ExportPCM.cpp:493
+#: export/ExportPCM.cpp:528
#, c-format
msgid "Exporting the entire project as %s"
msgstr "Mengekspor proyek yang tersedia sebagai %s"
#. i18n-hint: %s will be the error message from libsndfile
-#: export/ExportPCM.cpp:531
+#: export/ExportPCM.cpp:564
#, c-format
msgid "Error (file may not have been written): %s"
msgstr "Error (file tidak mungkin ditulis): %s"
-#: export/ExportPCM.cpp:723
+#: export/ExportPCM.cpp:735
msgid "There are no options for this format.\n"
-msgstr ""
+msgstr "Tidak ada opsi untuk format ini.\n"
#. i18n-hint: This is pointing users at another possible export format in
#. * the list. So you should translate the quoted string
#. * 'Other uncompressed files' exactly the same as you do the same string
#. * when it comes up on it's own.
-#: export/ExportPCM.cpp:728
+#: export/ExportPCM.cpp:740
msgid "If you need more control over the export format please use the 'Other uncompressed files' format."
-msgstr ""
+msgstr "Jika Anda butuh kendali lebih dalam format ekspor, silahkan gunakan format \"file tanpa terkompres lainnya\"."
-#: export/ExportPCM.cpp:733
+#: export/ExportPCM.cpp:745
msgid "Your file will be exported as a 16-bit AIFF (Apple/SGI) file.\n"
-msgstr ""
+msgstr "File Anda akan diekspor sebagai file AIFF 16-bit (Apple/SGI).\n"
-#: export/ExportPCM.cpp:738
+#: export/ExportPCM.cpp:750
msgid "Your file will be exported as a 16-bit WAV (Microsoft) file.\n"
-msgstr ""
+msgstr "File Anda akan diekspor sebagai file WAV 16-bit (Microsoft).\n"
-#: export/ExportPCM.cpp:743
+#: export/ExportPCM.cpp:755
msgid "Your file will be exported as a GSM 6.10 WAV file.\n"
-msgstr ""
+msgstr "File Anda akan diekspor sebagai file WAV GSM 6.10.\n"
-#: import/Import.cpp:156
+#: import/Import.cpp:162
#: import/ImportMP3.cpp:47
msgid "MP3 files"
msgstr "File MP3"
-#: import/Import.cpp:175
+#: import/Import.cpp:181
msgid "Select stream(s) to import"
msgstr "Pilih stream untuk diimpor"
-#: import/Import.cpp:227
+#: import/Import.cpp:234
#, c-format
msgid "This version of Audacity was not compiled with %s support."
msgstr "Versi Audacity ini tidak di-compile dengan dukungan %s."
-#: import/Import.cpp:240
+#: import/Import.cpp:247
#, c-format
-msgid "\"%s\" \n"
+msgid ""
+"\"%s\" \n"
"is a MIDI file, not an audio file. \n"
"Audacity cannot open this type of file for playing, but you can\n"
"edit it by clicking File > Import > MIDI."
-msgstr "\"%s\" \n"
+msgstr ""
+"\"%s\" \n"
"adalah file MIDI, buka file audio. \n"
"Audacity tidak bisa membuka tipe file ini untuk dimainkan, tapi Anda bisa \n"
"mengeditnya dengan mengklik Berkas > Impor > MIDI."
#. i18n-hint: %s will be the filename
-#: import/Import.cpp:250
+#: import/Import.cpp:257
#, c-format
-msgid "\"%s\" is an audio CD track. \n"
+msgid ""
+"\"%s\" is an audio CD track. \n"
"Audacity cannot open audio CDs directly. \n"
"Extract (rip) the CD tracks to an audio format that \n"
"Audacity can import, such as WAV or AIFF."
-msgstr "\"%s\" adalah trek CD audio. \n"
+msgstr ""
+"\"%s\" adalah trek CD audio. \n"
"Audacity tidak bisa membuka CD audio secara langsung. \n"
"Ekstrak (rip) trek CD ke format Audio itu \n"
"Audacity bisa mengimpor salah satunya WAV atau AIFF."
-#: import/Import.cpp:256
+#: import/Import.cpp:263
#, c-format
-msgid "\"%s\" is a playlist file. \n"
+msgid ""
+"\"%s\" is a playlist file. \n"
"Audacity cannot open this file because it only contains links to other files. \n"
"You may be able to open it in a text editor and download the actual audio files."
-msgstr "\"%s\" adalah file playlist. \n"
+msgstr ""
+"\"%s\" adalah file playlist. \n"
"Audacity tidak bisa membuka file karena ini hanya mempunyai link ke file lain. \n"
"Anda bisa membuka file ini pada editor teks dan download file audio yang asli."
-#: import/Import.cpp:261
+#: import/Import.cpp:268
#, c-format
-msgid "\"%s\" is a Windows Media Audio file. \n"
+msgid ""
+"\"%s\" is a Windows Media Audio file. \n"
"Audacity cannot open this type of file due to patent restrictions. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr "\"%s\" adalah file Windows Media Audio. \n"
+msgstr ""
+"\"%s\" adalah file Windows Media Audio. \n"
"Audacity tidak bisa membuka tipe file ini karena pelarangan paten. \n"
"Anda perlu mengubahnya ke format audio yang mendukung, seperti WAV atau AIFF."
-#: import/Import.cpp:266
+#: import/Import.cpp:273
#, c-format
-msgid "\"%s\" is an Advanced Audio Coding file. \n"
+msgid ""
+"\"%s\" is an Advanced Audio Coding file. \n"
"Audacity cannot open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr "\"%s\" adalah file Advanced Audio Coding. \n"
+msgstr ""
+"\"%s\" adalah file Advanced Audio Coding. \n"
"Audacity tidak bisa membuka file ini. \n"
"Anda perlu mengubahnya ke format audio yang mendukung, seperti WAV atau AIFF."
-#: import/Import.cpp:271
+#: import/Import.cpp:278
#, c-format
-msgid "\"%s\" is an encrypted audio file. \n"
+msgid ""
+"\"%s\" is an encrypted audio file. \n"
"These typically are from an online music store. \n"
"Audacity cannot open this type of file due to the encryption. \n"
"Try recording the file into Audacity, or burn it to audio CD then \n"
"extract the CD track to a supported audio format such as WAV or AIFF."
-msgstr "\"%s\" adalah file audio terenkripsi. \n"
+msgstr ""
+"\"%s\" adalah file audio terenkripsi. \n"
"Ini biasanya didapat dari toko musik online. \n"
"Audacity tidak bisa membuka tipe file ini karena enkripsi. \n"
"Coba rekam file ke dalam Audacity, atau bakar ke CD audio kemudian \n"
"ekstrak trek CD ke format audio yang mendukung seperti WAV atau AIFF."
-#: import/Import.cpp:276
+#: import/Import.cpp:283
#, c-format
-msgid "\"%s\" is a RealPlayer media file. \n"
+msgid ""
+"\"%s\" is a RealPlayer media file. \n"
"Audacity cannot open this proprietary format. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr "\"%s\" is a file media RealPlayer. \n"
+msgstr ""
+"\"%s\" is a file media RealPlayer. \n"
"Audacity tidak bisa membuka format berbayar ini. \n"
"Anda perlu mengubah ke format audio yang mendukung, seperti WAV atau AIFF."
-#: import/Import.cpp:282
+#: import/Import.cpp:289
#, c-format
-msgid "\"%s\" is a notes-based file, not an audio file. \n"
+msgid ""
+"\"%s\" is a notes-based file, not an audio file. \n"
"Audacity cannot open this type of file. \n"
"Try converting it to an audio file such as WAV or AIFF and \n"
"then import it, or record it into Audacity."
-msgstr "\"%s\" adalah file berbasis teks, bukan file audio. \n"
+msgstr ""
+"\"%s\" adalah file berbasis teks, bukan file audio. \n"
"Audacity tidak bisa membuka tipe file ini. \n"
"Coba ubah ke format audio seperti WAV atau AIFF dan \n"
"kemudian imporkan, atau rekam ke dalam Audacity."
-#: import/Import.cpp:288
+#: import/Import.cpp:295
#, c-format
-msgid "\"%s\" is a Musepack audio file. \n"
+msgid ""
+"\"%s\" is a Musepack audio file. \n"
"Audacity cannot open this type of file. \n"
"If you think it might be an mp3 file, rename it to end with \".mp3\" \n"
"and try importing it again. Otherwise you need to convert it to a supported audio \n"
"format, such as WAV or AIFF."
-msgstr "\"%s\" adalah file audio Musepack. \n"
+msgstr ""
+"\"%s\" adalah file audio Musepack. \n"
"Audacity tidak bisa membuka tipe file ini. \n"
"Jika anda berpikir ini adalah file mp3, ganti nama ekstensi file Anda ke \".mp3\" \n"
"dan coba mengimpor lagi. Atau anda perlu mengubah ke format audio yang mendukung, \n"
"seperti WAV atau AIFF."
-#: import/Import.cpp:294
+#: import/Import.cpp:301
#, c-format
-msgid "\"%s\" is a Wavpack audio file. \n"
+msgid ""
+"\"%s\" is a Wavpack audio file. \n"
"Audacity cannot open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr "\"%s\" adalah file audio Wavpack. \n"
+msgstr ""
+"\"%s\" adalah file audio Wavpack. \n"
"Audacity tidak bisa membuka tipe file ini. \n"
"Anda perlu mengubah ke format audio yang mendukung, seperti WAV atau AIFF."
-#: import/Import.cpp:300
+#: import/Import.cpp:307
#, c-format
-msgid "\"%s\" is a Dolby Digital audio file. \n"
+msgid ""
+"\"%s\" is a Dolby Digital audio file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr "\"%s\" adalah file audio Dolby Digital. \n"
+msgstr ""
+"\"%s\" adalah file audio Dolby Digital. \n"
"Audacity tidak bisa membuka tipe file ini. \n"
"Anda perlu mengubah ke format audio yang mendukung, seperti WAV atau AIFF."
-#: import/Import.cpp:306
+#: import/Import.cpp:313
#, c-format
-msgid "\"%s\" is an Ogg Speex audio file. \n"
+msgid ""
+"\"%s\" is an Ogg Speex audio file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr "\"%s\" adalah file audio Ogg Speex. \n"
+msgstr ""
+"\"%s\" adalah file audio Ogg Speex. \n"
"Audacity tidak bisa membuka tipe file ini. \n"
"Anda perlu mengubah ke format audio yang mendukung, seperti WAV atau AIFF."
-#: import/Import.cpp:312
+#: import/Import.cpp:319
#, c-format
-msgid "\"%s\" is a video file. \n"
+msgid ""
+"\"%s\" is a video file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to extract the audio to a supported format, such as WAV or AIFF."
-msgstr "\"%s\" adalah file video. \n"
+msgstr ""
+"\"%s\" adalah file video. \n"
"Audacity belum bisa membuka tipe file ini. \n"
"Anda perlu mengekstrak audio ke format yang mendukung, seperti WAV atau AIFF."
-#: import/Import.cpp:317
+#: import/Import.cpp:324
#, c-format
-msgid "Audacity did not recognize the type of the file '%s'.\n"
+msgid ""
+"Audacity did not recognize the type of the file '%s'.\n"
"If it is uncompressed, try importing it using \"Import Raw\"."
-msgstr "Audacity tidak dapat membaca tipe file '%s'.\n"
+msgstr ""
+"Audacity tidak dapat membaca tipe file '%s'.\n"
"Jika ini tidak dikompres, coba mengimpornya dengan menggunakan \"Import Raw\""
-#: import/Import.cpp:322
+#: import/Import.cpp:329
#, c-format
-msgid "Audacity recognized the type of the file '%s',\n"
+msgid ""
+"Audacity recognized the type of the file '%s',\n"
"but was unable to import it."
-msgstr "Audacity dapat membaca tipe file '%s'.\n"
+msgstr ""
+"Audacity dapat membaca tipe file '%s'.\n"
"Tapi tidak bisa diimpor."
#: import/ImportFFmpeg.cpp:34
msgid "FFmpeg-compatible files"
msgstr "File yang berkompetibel dengan FFmpeg"
-#: import/ImportFFmpeg.cpp:431
+#: import/ImportFFmpeg.cpp:438
#, c-format
msgid "Index[%02x] Codec[%S], Language[%S], Bitrate[%S], Channels[%d], Duration[%d]"
-msgstr ""
+msgstr "Indeks[%02x] Codec[%S], Bahasa[%S], Bitrate[%S], Saluran[%d], Durasi[%d]"
#: import/ImportFLAC.cpp:43
msgid "FLAC files"
msgstr "File FLAC"
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr "File GSteramer yang kompetibel"
+
#: import/ImportLOF.cpp:95
msgid "List of Files in basic text format"
msgstr "Daftar file dalam format teks dasar"
@@ -7497,82 +7951,82 @@ msgstr "Vorbis bitstream header tidak valid"
msgid "Internal logic fault"
msgstr "Kesalahan logika internal"
-#: import/ImportPCM.cpp:54
+#: import/ImportPCM.cpp:66
msgid "WAV, AIFF, and other uncompressed types"
msgstr "WAV, AIFF, dan tipe tanpa terkompres lainnya"
-#: import/ImportPlugin.h:142
-#: import/ImportRaw.cpp:203
+#: import/ImportPlugin.h:135
+#: import/ImportRaw.cpp:210
#, c-format
msgid "Importing %s"
msgstr "Mengimpor %s"
-#: import/ImportQT.cpp:21
+#: import/ImportQT.cpp:18
msgid "QuickTime files"
msgstr "File QuickTime"
-#: import/ImportRaw.cpp:205
+#: import/ImportRaw.cpp:212
msgid "Import Raw"
msgstr "Impor Raw"
-#: import/ImportRaw.cpp:282
+#: import/ImportRaw.cpp:292
msgid "Import Raw Data"
msgstr "Impor Data Raw"
#. i18n-hint: Refers to byte-order. Don't translate "endianness" if you don't
#. know the correct technical word.
-#: import/ImportRaw.cpp:327
+#: import/ImportRaw.cpp:337
msgid "No endianness"
msgstr "Tidak ada pengakhiran"
#. i18n-hint: Refers to byte-order. Don't translate this if you don't
#. know the correct technical word.
-#: import/ImportRaw.cpp:330
+#: import/ImportRaw.cpp:340
msgid "Little-endian"
msgstr "Pengakhiran Kecil"
#. i18n-hint: Refers to byte-order. Don't translate this if you don't
#. know the correct technical word.
-#: import/ImportRaw.cpp:333
+#: import/ImportRaw.cpp:343
msgid "Big-endian"
msgstr "PEngakhiran Besar"
#. i18n-hint: Refers to byte-order. Don't translate "endianness" if you don't
#. know the correct technical word.
-#: import/ImportRaw.cpp:336
+#: import/ImportRaw.cpp:346
msgid "Default endianness"
msgstr "Pengakhiran Biasa"
-#: import/ImportRaw.cpp:355
+#: import/ImportRaw.cpp:365
msgid "1 Channel (Mono)"
msgstr "1 Saluran (Mono)"
-#: import/ImportRaw.cpp:356
+#: import/ImportRaw.cpp:366
msgid "2 Channels (Stereo)"
msgstr "2 Saluran (Stereo)"
-#: import/ImportRaw.cpp:358
+#: import/ImportRaw.cpp:368
#, c-format
msgid "%d Channels"
msgstr "%d Saluran"
-#: import/ImportRaw.cpp:369
+#: import/ImportRaw.cpp:379
msgid "Byte order:"
msgstr "Persebaran byte:"
-#: import/ImportRaw.cpp:372
+#: import/ImportRaw.cpp:382
msgid "Channels:"
msgstr "Saluran:"
-#: import/ImportRaw.cpp:382
+#: import/ImportRaw.cpp:392
msgid "Start offset:"
msgstr "Awal penyeimbangan:"
-#: import/ImportRaw.cpp:388
+#: import/ImportRaw.cpp:398
msgid "Amount to import:"
msgstr "Besar yang diimpor:"
-#: import/ImportRaw.cpp:394
+#: import/ImportRaw.cpp:404
msgid "Sample rate:"
msgstr "Rate sampel:"
@@ -7589,1061 +8043,1154 @@ msgstr "Men-decode Waveform"
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr "%s %2.0f%% selesai. Klik untuk mengubah titik tugas."
-#: prefs/AudioIOPrefs.cpp:41
-#: prefs/AudioIOPrefs.cpp:42
-#: prefs/MidiIOPrefs.cpp:44
-#: prefs/MidiIOPrefs.cpp:45
-msgid "Audio I/O"
-msgstr "Audio I/O"
-
-#: prefs/AudioIOPrefs.cpp:102
-#: prefs/MidiIOPrefs.cpp:99
-msgid "1 (Mono)"
-msgstr "1 (Mono)"
+#: prefs/AudioIOPrefs.cpp:58
+msgid "Devices"
+msgstr "Perangkat"
-#: prefs/AudioIOPrefs.cpp:103
-#: prefs/MidiIOPrefs.cpp:100
-msgid "2 (Stereo)"
-msgstr "2 (Stereo)"
+#: prefs/AudioIOPrefs.cpp:112
+#: prefs/GUIPrefs.cpp:205
+msgid "Interface"
+msgstr "Tampilan"
#: prefs/AudioIOPrefs.cpp:117
-#: prefs/MidiIOPrefs.cpp:114
-msgid "Playback"
-msgstr "Memainkan"
-
-#: prefs/AudioIOPrefs.cpp:121
-#: prefs/AudioIOPrefs.cpp:139
-#: prefs/MidiIOPrefs.cpp:118
-#: prefs/MidiIOPrefs.cpp:136
-#: toolbars/DeviceToolBar.cpp:57
-msgid "Device"
-msgstr "Perangkat"
+msgid "Host"
+msgstr "Host"
#: prefs/AudioIOPrefs.cpp:124
#: prefs/MidiIOPrefs.cpp:121
msgid "Using:"
msgstr "Menggunakan:"
-#: prefs/AudioIOPrefs.cpp:125
-#: prefs/MidiIOPrefs.cpp:122
-msgid "Portaudio v"
-msgstr "Portaudio v"
+#: prefs/AudioIOPrefs.cpp:132
+#: prefs/AudioIOPrefs.cpp:291
+#: prefs/MidiIOPrefs.cpp:114
+msgid "Playback"
+msgstr "Memainkan"
-#: prefs/AudioIOPrefs.cpp:135
-#: prefs/MidiIOPrefs.cpp:132
+#: prefs/AudioIOPrefs.cpp:145
+#: prefs/AudioIOPrefs.cpp:379
+#: prefs/MidiIOPrefs.cpp:128
msgid "Recording"
msgstr "Merekam"
-#: prefs/AudioIOPrefs.cpp:141
-#: prefs/MidiIOPrefs.cpp:138
+#: prefs/AudioIOPrefs.cpp:155
+#: prefs/MidiIOPrefs.cpp:134
msgid "Channels"
msgstr "Saluran"
-#: prefs/AudioIOPrefs.cpp:147
-#: prefs/MidiIOPrefs.cpp:144
-msgid "Playthrough"
-msgstr "Selama Bermain"
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr "OverDub: &Mainkan trek lain ketika merekam"
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr "Selama Bermain pada &Hardware: Mainkan trek baru ketika merekamnya"
-
-#: prefs/AudioIOPrefs.cpp:154
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr "Selama Bermain pada &Software: Mainkan trek baru ketika merekamnya"
-
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr "Selama Bermain pada &Software: Mainkan trek baru ketika merekam atau memantau"
+#: prefs/AudioIOPrefs.cpp:245
+#: prefs/MidiIOPrefs.cpp:99
+msgid "1 (Mono)"
+msgstr "1 (Mono)"
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr "(hilangkan cek ketika merekam \"stereo mix\")"
+#: prefs/AudioIOPrefs.cpp:248
+#: prefs/MidiIOPrefs.cpp:100
+msgid "2 (Stereo)"
+msgstr "2 (Stereo)"
-#: prefs/AudioIOPrefs.cpp:168
-#: prefs/MidiIOPrefs.cpp:193
+#: prefs/AudioIOPrefs.cpp:315
+#: prefs/MidiIOPrefs.cpp:187
msgid "Effects Preview"
msgstr "Efek preview"
-#: prefs/AudioIOPrefs.cpp:171
+#: prefs/AudioIOPrefs.cpp:319
msgid "Length of preview:"
msgstr "Panjang preview:"
-#: prefs/AudioIOPrefs.cpp:176
-#: prefs/MidiIOPrefs.cpp:157
+#: prefs/AudioIOPrefs.cpp:329
+#: prefs/MidiIOPrefs.cpp:153
msgid "Cut Preview"
msgstr "Preview Potongan"
-#: prefs/AudioIOPrefs.cpp:179
+#: prefs/AudioIOPrefs.cpp:333
msgid "Preview before cut region:"
msgstr "Preview sebelum wilayah dipotong:"
-#: prefs/AudioIOPrefs.cpp:181
+#: prefs/AudioIOPrefs.cpp:339
msgid "Preview after cut region:"
msgstr "Preview sesudah wilayah dipotong:"
-#: prefs/AudioIOPrefs.cpp:189
-#: prefs/MidiIOPrefs.cpp:167
-msgid "Latency"
-msgstr "Laten"
-
-#: prefs/AudioIOPrefs.cpp:195
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
-msgstr "Audio yang akan di-buffer:\n"
-"(lebih tinggi = lebih laten)"
-
-#: prefs/AudioIOPrefs.cpp:198
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr "Koreksi laten:\n"
-"(negatif=percepat ke awal)"
-
-#: prefs/AudioIOPrefs.cpp:203
+#: prefs/AudioIOPrefs.cpp:349
msgid "Seek Time when playing"
msgstr "Coba waktu ketika bermain"
-#: prefs/AudioIOPrefs.cpp:206
-#: prefs/MidiIOPrefs.cpp:186
+#: prefs/AudioIOPrefs.cpp:353
+#: prefs/MidiIOPrefs.cpp:180
msgid "Short period:"
msgstr "Periode pendek:"
-#: prefs/AudioIOPrefs.cpp:208
-#: prefs/MidiIOPrefs.cpp:188
+#: prefs/AudioIOPrefs.cpp:359
+#: prefs/MidiIOPrefs.cpp:182
msgid "Long period:"
msgstr "Periode panjang:"
-#: prefs/BatchPrefs.cpp:55
-#: prefs/BatchPrefs.cpp:56
+#: prefs/AudioIOPrefs.cpp:403
+#: prefs/MidiIOPrefs.cpp:140
+msgid "Playthrough"
+msgstr "Selama Bermain"
+
+#: prefs/AudioIOPrefs.cpp:405
+msgid "Overdub: &Play other tracks while recording new one"
+msgstr "OverDub: &Mainkan trek lain ketika merekam"
+
+#: prefs/AudioIOPrefs.cpp:409
+msgid "&Hardware Playthrough: Play new track while recording it"
+msgstr "Selama Bermain pada &Hardware: Mainkan trek baru ketika merekamnya"
+
+#: prefs/AudioIOPrefs.cpp:413
+msgid "&Software Playthrough: Play new track while recording or monitoring"
+msgstr "Selama Bermain pada &Software: Mainkan trek baru ketika merekam atau memantau"
+
+#: prefs/AudioIOPrefs.cpp:417
+msgid "(uncheck when recording \"stereo mix\")"
+msgstr "(hilangkan cek ketika merekam \"stereo mix\")"
+
+#: prefs/AudioIOPrefs.cpp:422
+#: prefs/MidiIOPrefs.cpp:163
+msgid "Latency"
+msgstr "Laten"
+
+#: prefs/AudioIOPrefs.cpp:428
+#: prefs/MidiIOPrefs.cpp:168
+msgid "Audio to buffer:"
+msgstr "Audio yang dibuffer:"
+
+#: prefs/AudioIOPrefs.cpp:432
+msgid "milliseconds (higher = more latency)"
+msgstr "milidetik (lebih tinggi = lebih laten)"
+
+#: prefs/AudioIOPrefs.cpp:434
+#: prefs/MidiIOPrefs.cpp:170
+msgid "Latency correction:"
+msgstr "Koreksi laten:"
+
+#: prefs/AudioIOPrefs.cpp:438
+msgid "milliseconds (negative = backwards)"
+msgstr "milidetik (negatif=percepat ke awal)"
+
+#: prefs/AudioIOPrefs.cpp:444
+#: prefs/AudioIOPrefs.cpp:446
+#: prefs/SmartRecordPrefs.cpp:61
+#: prefs/SmartRecordPrefs.cpp:63
+msgid "Sound Activated Recording"
+msgstr "Meream dengan Suara Diaktifkan"
+
+#: prefs/AudioIOPrefs.cpp:455
+#: prefs/SmartRecordPrefs.cpp:71
+msgid "Sound Activation Level (dB):"
+msgstr "Level Pengaktifan Suara (dB):"
+
+#: prefs/BatchPrefs.cpp:53
msgid "Batch"
msgstr "Batch"
-#: prefs/BatchPrefs.cpp:77
-#: prefs/GUIPrefs.cpp:92
+#: prefs/BatchPrefs.cpp:75
+#: prefs/GUIPrefs.cpp:160
+#: prefs/GUIPrefs.cpp:307
msgid "Behaviors"
msgstr "Kelakuan"
-#: prefs/BatchPrefs.cpp:80
+#: prefs/BatchPrefs.cpp:78
msgid "&Don't apply effects in batch mode"
msgstr "&Jangan aplikasikan efek pada mode batch"
-#: prefs/BatchPrefs.cpp:83
-#: prefs/GUIPrefs.cpp:132
+#: prefs/BatchPrefs.cpp:81
+#: prefs/GUIPrefs.cpp:325
msgid "Cl&eanSpeech Mode (Customized GUI)"
msgstr "Mode Cl&eanSpeech (Dengan model GUI)"
-#: prefs/DirectoriesPrefs.cpp:55
-#: prefs/DirectoriesPrefs.cpp:56
-#: prefs/PrefsDialog.cpp:267
+#: prefs/DirectoriesPrefs.cpp:52
+#: prefs/PrefsDialog.cpp:181
msgid "Directories"
msgstr "Direktori"
-#: prefs/DirectoriesPrefs.cpp:87
+#: prefs/DirectoriesPrefs.cpp:82
msgid "Temporary files directory"
msgstr "Direktori file sementara"
-#: prefs/DirectoriesPrefs.cpp:91
+#: prefs/DirectoriesPrefs.cpp:89
msgid "Location:"
msgstr "Lokasi:"
-#: prefs/DirectoriesPrefs.cpp:93
+#: prefs/DirectoriesPrefs.cpp:96
msgid "Free Space:"
msgstr "Ruang Disk yang Bebas:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr "Simpan otomatis"
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr "Simpan otomatis salinan proyek pada folder terpisah"
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
-msgstr "Jarak waktu penyimpanan otomatis:"
+#: prefs/DirectoriesPrefs.cpp:103
+msgid "Audio cache"
+msgstr "Cache Audio"
#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
-msgstr "menit"
+msgid "Play and/or record using RAM (useful for slow drives)"
+msgstr "Mainkan dan/atau rekam menggunakan RAM (berguna untuk driver tingkat rendah)"
-#: prefs/DirectoriesPrefs.cpp:110
-msgid "Audio cache"
-msgstr "Cache Audio"
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
+msgstr "Meomri Bebas Minimum (MB):"
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
-msgstr "Mainkan dan/atau rekam menggunakan RAM (berguna untuk performa driver rendah, tapi bisa menyebabkan crash akibat panjang file atau panjang merekam)"
+#: prefs/DirectoriesPrefs.cpp:118
+msgid ""
+"If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
+msgstr ""
+"Jika memori sistem yang ada di bawah biasanya, audio tidak akan\n"
+"disimpan di memori dan akan ditulis ke disk."
-#: prefs/DirectoriesPrefs.cpp:121
+#: prefs/DirectoriesPrefs.cpp:126
msgid "Choose a location to place the temporary directory"
msgstr "Pilih lokasi untuk meletakkan direktori temporer"
-#: prefs/DirectoriesPrefs.cpp:166
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr "tidak dibolehkan - lokasi di atas tidak ada"
+
+#: prefs/DirectoriesPrefs.cpp:173
#, c-format
msgid "Directory %s does not exist. Create it?"
msgstr "Direktori %s belum ada. Buat dulu?"
-#: prefs/DirectoriesPrefs.cpp:168
+#: prefs/DirectoriesPrefs.cpp:175
msgid "New Temporary Directory"
msgstr "Direktori Temporer Baru"
-#: prefs/DirectoriesPrefs.cpp:187
+#: prefs/DirectoriesPrefs.cpp:193
#, c-format
msgid "Directory %s is not writable"
msgstr "Direktori %s tidak bisa ditulis"
-#: prefs/DirectoriesPrefs.cpp:199
+#: prefs/DirectoriesPrefs.cpp:207
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "Pengubahan direktori temporer tidak berefek sampai Audacity dihidupkan ulang"
#: prefs/FileFormatPrefs.cpp:53
-#: prefs/FileFormatPrefs.cpp:54
-msgid "Import / Export"
-msgstr "Impor / Ekspor"
+msgid "Libraries"
+msgstr "Referensi"
-#: prefs/FileFormatPrefs.cpp:84
+#: prefs/FileFormatPrefs.cpp:86
msgid "MP3 Export Library"
msgstr "Referensi Pengeksporan MP3"
-#: prefs/FileFormatPrefs.cpp:87
+#: prefs/FileFormatPrefs.cpp:90
msgid "MP3 Library Version:"
msgstr "Versi Referensi MP3:"
-#: prefs/FileFormatPrefs.cpp:93
+#: prefs/FileFormatPrefs.cpp:96
msgid "MP3 Library:"
msgstr "Referensi MP3:"
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+#: prefs/FileFormatPrefs.cpp:99
+#: prefs/FileFormatPrefs.cpp:131
msgid "&Locate..."
-msgstr ""
+msgstr "&Tempatkan..."
-#: prefs/FileFormatPrefs.cpp:98
+#: prefs/FileFormatPrefs.cpp:101
msgid "LAME MP3 Library:"
msgstr "Referensi LAME MP3"
-#: prefs/FileFormatPrefs.cpp:101
-#: prefs/FileFormatPrefs.cpp:125
+#: prefs/FileFormatPrefs.cpp:104
+#: prefs/FileFormatPrefs.cpp:137
msgid "&Download"
msgstr "&Download"
-#: prefs/FileFormatPrefs.cpp:106
+#: prefs/FileFormatPrefs.cpp:111
msgid "FFmpeg Import/Export Library"
msgstr "Referensi Impor/Ekspor FFmpeg"
-#: prefs/FileFormatPrefs.cpp:109
+#: prefs/FileFormatPrefs.cpp:115
msgid "FFmpeg Library Version:"
msgstr "Versi Referensi FFmpeg:"
-#: prefs/FileFormatPrefs.cpp:118
-#: prefs/FileFormatPrefs.cpp:122
+#: prefs/FileFormatPrefs.cpp:119
+msgid "No compatible FFmpeg library was found"
+msgstr "Referensi FFmpeg yang tidak kompetibel ditemukan"
+
+#: prefs/FileFormatPrefs.cpp:127
+#: prefs/FileFormatPrefs.cpp:133
msgid "FFmpeg Library:"
msgstr "Referensi FFmpeg:"
-#: prefs/FileFormatPrefs.cpp:136
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr "Catatan: Opsi kualitas ekspor bisa dipilih dengan mengklik tombol Opsi pada dialog Ekspor.\n"
+#: prefs/FileFormatPrefs.cpp:231
+msgid "Import / Export"
+msgstr "Impor / Ekspor"
-#: prefs/FileFormatPrefs.cpp:137
+#: prefs/FileFormatPrefs.cpp:256
msgid "When importing audio files"
msgstr "Ketika mengimpor file audio"
-#: prefs/FileFormatPrefs.cpp:140
+#: prefs/FileFormatPrefs.cpp:260
msgid "&Make a copy of uncompressed audio files before editing (safer)"
msgstr "&Buat salinan file audio tak terkompres sebelum diedit (lebih aman)"
-#: prefs/FileFormatPrefs.cpp:141
+#: prefs/FileFormatPrefs.cpp:262
msgid "&Read uncompressed audio files directly from the original (faster)"
msgstr "&Langsung baca file audo tak terkompres dari aslinya (lebih cepat)"
-#: prefs/FileFormatPrefs.cpp:143
+#: prefs/FileFormatPrefs.cpp:267
msgid "&Normalize all tracks in project"
msgstr "&Normalkan semua trek pada proyek"
-#: prefs/FileFormatPrefs.cpp:148
+#: prefs/FileFormatPrefs.cpp:273
+msgid "When exporting tracks to an audio file"
+msgstr "Ketike mengekspor ke file audio"
+
+#: prefs/FileFormatPrefs.cpp:277
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+msgstr "Se&lalu mix semua trek ke Stereo atau Mono."
+
+#: prefs/FileFormatPrefs.cpp:279
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+msgstr "&Gunakan mix pilihan sendiri (contohnya untuk emngekspor file saluran 5.1)"
+
+#: prefs/FileFormatPrefs.cpp:284
+msgid "S&how Metadata Editor prior to export step"
+msgstr "&Tunjukkan Editor Metadata dahulu dalam langkah mengekspor"
+
+#: prefs/FileFormatPrefs.cpp:287
+msgid ""
+"Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
+msgstr ""
+"Catatan: Opsi kualitas ekspor bisa dipilih dengan mengklik tombol\n"
+"Opsi pada dialog Ekspor."
+
+#: prefs/FileFormatPrefs.cpp:303
+msgid "Projects"
+msgstr "Proyek"
+
+#: prefs/FileFormatPrefs.cpp:328
msgid "When saving a project that depends on other audio files"
msgstr "Ketika menyimpan proyek yang bergantung pada file audio yang lain"
-#: prefs/FileFormatPrefs.cpp:151
+#: prefs/FileFormatPrefs.cpp:332
msgid "Always © all audio into project (safest)"
msgstr "Salalu &salin semua audio pada proyek (teraman)"
-#: prefs/FileFormatPrefs.cpp:152
+#: prefs/FileFormatPrefs.cpp:334
msgid "&Do not copy any audio"
msgstr "&Jangan salin audio apapiun"
-#: prefs/FileFormatPrefs.cpp:153
+#: prefs/FileFormatPrefs.cpp:336
msgid "&Ask user"
msgstr "&Tanya pengguna"
-#: prefs/FileFormatPrefs.cpp:157
-msgid "When exporting tracks to an audio file"
-msgstr "Ketike mengekspor ke file audio"
+#: prefs/FileFormatPrefs.cpp:343
+msgid "Auto save"
+msgstr "Simpan otomatis"
-#: prefs/FileFormatPrefs.cpp:160
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
-msgstr "Se&lalu mix semua trek ke Stereo atau Mono."
+#: prefs/FileFormatPrefs.cpp:345
+msgid "Auto save a copy of the project in a separate folder"
+msgstr "Simpan otomatis salinan proyek pada folder terpisah"
-#: prefs/FileFormatPrefs.cpp:161
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
-msgstr "&Gunakan mix pilihan sendiri (contohnya untuk emngekspor file saluran 5.1)"
+#: prefs/FileFormatPrefs.cpp:351
+msgid "Auto save interval:"
+msgstr "Jarak waktu penyimpanan otomatis:"
-#: prefs/FileFormatPrefs.cpp:163
-msgid "S&how Metadata Editor prior to export step"
-msgstr "&Tunjukkan Editor Metadata dahulu dalam langkah mengekspor"
+#: prefs/FileFormatPrefs.cpp:355
+msgid "minutes"
+msgstr "menit"
-#: prefs/GUIPrefs.cpp:34
-#: prefs/GUIPrefs.cpp:35
-msgid "Interface"
-msgstr "Tampilan"
+#: prefs/GUIPrefs.cpp:36
+msgid "Warnings"
+msgstr "Peringatan"
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
-msgstr "Pada Browser"
+#: prefs/GUIPrefs.cpp:60
+msgid "Show Warnings/Prompts"
+msgstr "Tunjukkan Peringatan"
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
-msgstr "Dari Internet"
+#: prefs/GUIPrefs.cpp:62
+msgid "When saving &projects"
+msgstr "Ketika menyimpan &proyek"
+
+#: prefs/GUIPrefs.cpp:65
+msgid "When saving &empty project"
+msgstr "Ketika menyimpan proy&ek kosong"
-#: prefs/GUIPrefs.cpp:50
+#: prefs/GUIPrefs.cpp:68
+msgid "When &disk space is getting low"
+msgstr "Ketika ruang &disk menurun"
+
+#: prefs/GUIPrefs.cpp:71
+msgid "When mixing down to &stereo during export"
+msgstr "Ketika menge-mix ke &stereo waktu mengekspor"
+
+#: prefs/GUIPrefs.cpp:74
+msgid "When mixing down to &mono during export"
+msgstr "Ketika menge-mix ke &mono waktu mengekspor"
+
+#: prefs/GUIPrefs.cpp:108
msgid "Simple"
msgstr "Sederhana"
-#: prefs/GUIPrefs.cpp:94
+#: prefs/GUIPrefs.cpp:136
+#: prefs/GUIPrefs.cpp:269
+#: prefs/SpectrumPrefs.cpp:129
+msgid "Display"
+msgstr "Tampilan"
+
+#: prefs/GUIPrefs.cpp:138
msgid "&Update display while playing"
msgstr "&Perbaharui tampilan ketika memainkan"
-#: prefs/GUIPrefs.cpp:96
-msgid "Cl&osing last window quits Audacity"
-msgstr "Menutup jendela terak&hir akan mematikan Audacity"
+#: prefs/GUIPrefs.cpp:141
+msgid "Automatically &fit tracks vertically zoomed"
+msgstr "&Fit-kan trek secera vertikal dengan otomatis"
-#: prefs/GUIPrefs.cpp:98
-msgid "Enable &dragging of left and right selection edges"
-msgstr "Perbolehkan &menahan batas kiri dan kanan yang dipilih"
+#: prefs/GUIPrefs.cpp:149
+msgid "Default View Mode:"
+msgstr "Mode View Normal:"
-#: prefs/GUIPrefs.cpp:100
-msgid "Er&gonomic order of audio I/O buttons"
-msgstr "Peletakan tombol I/O auido yang er&gonomis"
+#: prefs/GUIPrefs.cpp:162
+msgid "&Select all audio in project, if none selected"
+msgstr "&Pilih semua audio pada proyek, jika tidak ada yang dipilih"
-#: prefs/GUIPrefs.cpp:102
-msgid "Automatically &fit tracks vertically zoomed"
-msgstr "&Fit-kan trek secera vertikal dengan otomatis"
+#: prefs/GUIPrefs.cpp:165
+msgid "Enable cut &lines"
+msgstr "Bo&lehkan memotong batas"
+
+#: prefs/GUIPrefs.cpp:168
+msgid "Enable &dragging of left and right selection edges"
+msgstr "Perbolehkan &menahan batas kiri dan kanan yang dipilih"
-#: prefs/GUIPrefs.cpp:104
+#: prefs/GUIPrefs.cpp:171
msgid "\"Move track focus\" c&ycles repeatedly through tracks"
msgstr "\"Move track focus\" memutar terus-menerus pada trek"
-#: prefs/GUIPrefs.cpp:106
+#: prefs/GUIPrefs.cpp:174
msgid "Editing a &clip can move other clips"
msgstr "Mengedit &klik bisa membuang klip lainnya"
-#: prefs/GUIPrefs.cpp:108
-msgid "&Select all audio in project, if none selected"
-msgstr "&Pilih semua audio pada proyek, jika tidak ada yang dipilih"
-
-#: prefs/GUIPrefs.cpp:110
-msgid "&Beep on completion of longer activities"
-msgstr "&Beep pada penyelesaian aktivitas lama"
+#: prefs/GUIPrefs.cpp:182
+msgid "Solo Button:"
+msgstr "Tombol Solo:"
-#: prefs/GUIPrefs.cpp:114
-msgid "Show / Hide"
-msgstr "Lihat / Sembunyi"
+#: prefs/GUIPrefs.cpp:224
+msgid "In Browser"
+msgstr "Pada Browser"
-#: prefs/GUIPrefs.cpp:116
-msgid "Enable cut &lines"
-msgstr "Bo&lehkan memotong batas"
+#: prefs/GUIPrefs.cpp:225
+msgid "From Internet"
+msgstr "Dari Internet"
-#: prefs/GUIPrefs.cpp:118
-msgid "Show warnings about &temp files"
-msgstr "Tunjukkan peringatan mengenai file &temporer"
+#: prefs/GUIPrefs.cpp:227
+msgid "36"
+msgstr "36"
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
-msgstr "Tunjukkan prompt untuk menyimpan, bahkan jika proyek masih kosong"
+#: prefs/GUIPrefs.cpp:228
+msgid "48"
+msgstr "48"
-#: prefs/GUIPrefs.cpp:122
-msgid "Show &Welcome Message at program start up"
-msgstr "Tunjukkan Pesan A&wal pada permulaan program"
+#: prefs/GUIPrefs.cpp:229
+msgid "60"
+msgstr "60"
-#: prefs/GUIPrefs.cpp:126
-msgid "Modes"
-msgstr "Mode"
+#: prefs/GUIPrefs.cpp:230
+msgid "96"
+msgstr "96"
-#: prefs/GUIPrefs.cpp:129
-msgid "Don't a&pply effects in batch mode"
-msgstr "Don't a&pply effects in batch mode"
+#: prefs/GUIPrefs.cpp:231
+msgid "120"
+msgstr "120"
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
-msgstr "Tampilkan range minimum: meter dan 'waveform (dB)'"
+#: prefs/GUIPrefs.cpp:232
+msgid "145"
+msgstr "145"
-#: prefs/GUIPrefs.cpp:141
+#: prefs/GUIPrefs.cpp:234
msgid "-36 dB (shallow range for high-amplitude editing)"
msgstr "-36 dB (range yang dangkal untuk mengedit amplitudo tinggi)"
-#: prefs/GUIPrefs.cpp:142
+#: prefs/GUIPrefs.cpp:235
msgid "-48 dB (PCM range of 8 bit samples)"
msgstr "-48 dB (range PCM dari sampel 8 bit)"
-#: prefs/GUIPrefs.cpp:143
+#: prefs/GUIPrefs.cpp:236
msgid "-60 dB (PCM range of 10 bit samples)"
msgstr "-60 dB (range PCM dari sampel 10 bit)"
-#: prefs/GUIPrefs.cpp:144
+#: prefs/GUIPrefs.cpp:237
msgid "-96 dB (PCM range of 16 bit samples)"
msgstr "-96 dB (range PCM dari sampel 16 bit)"
-#: prefs/GUIPrefs.cpp:145
+#: prefs/GUIPrefs.cpp:238
msgid "-120 dB (approximate limit of human hearing)"
msgstr "-120 dB (batas terbaik untuk pendengaran manusia)"
-#: prefs/GUIPrefs.cpp:146
+#: prefs/GUIPrefs.cpp:239
msgid "-145 dB (PCM range of 24 bit samples)"
msgstr "-145 dB (range PCM dari sampel 24 bit)"
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
-msgstr "Mode View Normal"
+#: prefs/GUIPrefs.cpp:271
+msgid "Er&gonomic order of audio I/O buttons"
+msgstr "Peletakan tombol I/O auido yang er&gonomis"
-#: prefs/GUIPrefs.cpp:164
-msgid "Other interface choices"
-msgstr "Pilihan interface lainnya"
+#: prefs/GUIPrefs.cpp:274
+msgid "Show &welcome message at program start up"
+msgstr "Tampilkan Pesan A&wal pada permulaan program"
-#: prefs/GUIPrefs.cpp:167
+#: prefs/GUIPrefs.cpp:282
+msgid "Meter/Waveform dB range:"
+msgstr "jangkauan dB meter/Waveform:"
+
+#: prefs/GUIPrefs.cpp:296
msgid "Help:"
msgstr "Bantuan:"
-#: prefs/GUIPrefs.cpp:168
-msgid "Solo Button:"
-msgstr "Tombol Solo:"
+#: prefs/GUIPrefs.cpp:309
+msgid "Cl&osing last window quits Audacity"
+msgstr "Menutup jendela terak&hir akan mematikan Audacity"
+
+#: prefs/GUIPrefs.cpp:312
+msgid "&Beep on completion of longer activities"
+msgstr "&Beep pada penyelesaian aktivitas lama"
-#: prefs/KeyConfigPrefs.cpp:64
-#: prefs/KeyConfigPrefs.cpp:65
+#: prefs/GUIPrefs.cpp:318
+msgid "Modes"
+msgstr "Mode"
+
+#: prefs/GUIPrefs.cpp:321
+msgid "Don't a&pply effects in batch mode"
+msgstr "Don't a&pply effects in batch mode"
+
+#: prefs/KeyConfigPrefs.cpp:71
msgid "Keyboard"
msgstr "Keyboard"
-#: prefs/KeyConfigPrefs.cpp:86
+#: prefs/KeyConfigPrefs.cpp:95
msgid "Keyboard preferences currently unavailable."
-msgstr ""
+msgstr "Preferensi Keyboard sudah tidak ada."
-#: prefs/KeyConfigPrefs.cpp:87
+#: prefs/KeyConfigPrefs.cpp:96
msgid "Open a new project to modify keyboard shortcuts."
-msgstr ""
+msgstr "Buka Proyek Baru untuk mengubah jalan pintas keyboard"
-#: prefs/KeyConfigPrefs.cpp:95
+#: prefs/KeyConfigPrefs.cpp:121
msgid "Key Bindings"
msgstr "Kunci-kunci Keyboard"
-#: prefs/KeyConfigPrefs.cpp:115
+#: prefs/KeyConfigPrefs.cpp:140
msgid "S&et"
msgstr "&Atur"
-#: prefs/KeyConfigPrefs.cpp:120
+#: prefs/KeyConfigPrefs.cpp:146
msgid "Note: Pressing Cmd+Q will quit. All other keys are valid."
msgstr "Catatan: Menekan Cmd+Q akan keluar. Kunci lainnya valid."
-#: prefs/KeyConfigPrefs.cpp:124
-#: prefs/ThemePrefs.cpp:105
+#: prefs/KeyConfigPrefs.cpp:153
+#: prefs/ThemePrefs.cpp:125
msgid "&Defaults"
msgstr "&Normal"
-#: prefs/KeyConfigPrefs.cpp:143
+#: prefs/KeyConfigPrefs.cpp:167
+msgid "Command"
+msgstr "Perintah"
+
+#: prefs/KeyConfigPrefs.cpp:168
msgid "Key Combination"
msgstr "Kombinasi Tombol Keyboard"
-#: prefs/KeyConfigPrefs.cpp:163
-msgid "Export Keyboard Shortcuts As:"
-msgstr "Ekspor Jalan Pintas Keyboard Sebagai:"
+#: prefs/KeyConfigPrefs.cpp:192
+#: toolbars/EditToolBar.cpp:144
+msgid "Undo"
+msgstr "Batalkan"
-#: prefs/KeyConfigPrefs.cpp:183
-msgid "Error saving keyboard shortcuts"
-msgstr "Error dalam menyimpan jalan pintas keyboard"
+#: prefs/KeyConfigPrefs.cpp:195
+msgid "Redo"
+msgstr "Lakukan Kembali"
-#: prefs/KeyConfigPrefs.cpp:198
+#: prefs/KeyConfigPrefs.cpp:220
msgid "Select an XML file containing Audacity keyboard shortcuts..."
msgstr "Pilih file XML yang mengandung jalan pintas keyboard Audacity..."
-#: prefs/KeyConfigPrefs.cpp:215
+#: prefs/KeyConfigPrefs.cpp:238
msgid "Error loading keyboard shortcuts"
msgstr "Error mengambil jalan pintas keyboard"
-#: prefs/KeyConfigPrefs.cpp:243
+#: prefs/KeyConfigPrefs.cpp:251
+msgid "Export Keyboard Shortcuts As:"
+msgstr "Ekspor Jalan Pintas Keyboard Sebagai:"
+
+#: prefs/KeyConfigPrefs.cpp:277
+msgid "Error saving keyboard shortcuts"
+msgstr "Error dalam menyimpan jalan pintas keyboard"
+
+#: prefs/KeyConfigPrefs.cpp:327
#, c-format
-msgid "The keyboard shortcut '%s' is already assigned to:\n"
+msgid ""
+"The keyboard shortcut '%s' is already assigned to:\n"
"\n"
"'%s'"
-msgstr "Jalan pintas keyboard '%s' telah ditandai untuk:\n"
+msgstr ""
+"Jalan pintas keyboard '%s' telah ditandai untuk:\n"
"\n"
"'%s'"
-#: prefs/KeyConfigPrefs.cpp:369
-#: toolbars/EditToolBar.cpp:144
-msgid "Undo"
-msgstr "Batalkan"
+#: prefs/MidiIOPrefs.cpp:44
+#: prefs/MidiIOPrefs.cpp:45
+msgid "Audio I/O"
+msgstr "Audio I/O"
-#: prefs/MidiIOPrefs.cpp:146
+#: prefs/MidiIOPrefs.cpp:122
+msgid "Portaudio v"
+msgstr "Portaudio v"
+
+#: prefs/MidiIOPrefs.cpp:142
msgid "&Play other tracks while recording new one"
msgstr "&Mainkan trek lain ketika merekam"
-#: prefs/MidiIOPrefs.cpp:149
+#: prefs/MidiIOPrefs.cpp:145
msgid "&Hardware Playthrough (Play new track while recording it)"
msgstr "Selama Bermain pada &Hardware (Mainkan trek baru ketika merekamnya)"
-#: prefs/MidiIOPrefs.cpp:152
+#: prefs/MidiIOPrefs.cpp:148
msgid "&Software Playthrough (Play new track while recording it)"
msgstr "Selama Bermain pada &Software (Mainkan trek baru ketika merekamnya)"
-#: prefs/MidiIOPrefs.cpp:160
+#: prefs/MidiIOPrefs.cpp:156
msgid "Play before cut region:"
msgstr "Mainkan sebelum wilayah dipotong:"
-#: prefs/MidiIOPrefs.cpp:162
+#: prefs/MidiIOPrefs.cpp:158
msgid "Play after cut region:"
msgstr "Mainkan sesudah wilayah dipotong:"
-#: prefs/MidiIOPrefs.cpp:173
-msgid "Audio to buffer:"
-msgstr "Audio yang dibuffer:"
-
-#: prefs/MidiIOPrefs.cpp:176
-msgid "Latency correction:"
-msgstr "Koreksi laten:"
-
-#: prefs/MidiIOPrefs.cpp:183
+#: prefs/MidiIOPrefs.cpp:177
msgid "Seek Time"
msgstr "Waktu Percobaan"
-#: prefs/MidiIOPrefs.cpp:196
+#: prefs/MidiIOPrefs.cpp:190
msgid "Play when previewing:"
msgstr "Meinkan ketika melakukan preview:"
-#: prefs/MousePrefs.cpp:55
-#: prefs/MousePrefs.cpp:56
+#: prefs/MousePrefs.cpp:57
msgid "Mouse"
msgstr "Mouse"
-#: prefs/MousePrefs.cpp:78
+#: prefs/MousePrefs.cpp:84
msgid "Mouse Bindings (default values, not configurable)"
msgstr "Kunci-kunci Mouse (tidak bisa diubah)"
-#: prefs/MousePrefs.cpp:93
+#: prefs/MousePrefs.cpp:97
msgid "Tool"
msgstr "Alat"
-#: prefs/MousePrefs.cpp:94
+#: prefs/MousePrefs.cpp:98
msgid "Command Action"
msgstr "Aksi perintah"
-#: prefs/MousePrefs.cpp:95
+#: prefs/MousePrefs.cpp:99
msgid "Buttons"
msgstr "Tombol"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:117
-#: prefs/MousePrefs.cpp:122
+#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:121
+#: prefs/MousePrefs.cpp:126
msgid "Left-Click"
msgstr "Klik-Kiri"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:100
-#: prefs/MousePrefs.cpp:101
#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:103
+#: prefs/MousePrefs.cpp:104
+#: prefs/MousePrefs.cpp:105
+#: prefs/MousePrefs.cpp:106
msgid "Select"
msgstr "Pilih"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:122
+#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:126
msgid "Set Selection Point"
msgstr "Pilih Titik Pilihan"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:103
+#: prefs/MousePrefs.cpp:109
#: prefs/MousePrefs.cpp:115
#: prefs/MousePrefs.cpp:119
#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:127
msgid "Left-Drag"
msgstr "Klik Kiri dan Dorong"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:103
+#: prefs/MousePrefs.cpp:127
msgid "Set Selection Range"
msgstr "Atur Range yang Dipilih"
-#: prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:104
msgid "Extend Selection Range"
msgstr "Pilih Range yang Tidak Dipilih"
-#: prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:104
msgid "Shift-Left-Click"
msgstr "Klik Kiri dengan Shift"
-#: prefs/MousePrefs.cpp:101
+#: prefs/MousePrefs.cpp:105
msgid "Left-Double-Click"
msgstr "Klik Ganda Kiri"
-#: prefs/MousePrefs.cpp:101
+#: prefs/MousePrefs.cpp:105
msgid "Select Clip or Entire Track"
msgstr "Pilih Klip atau Trek"
-#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:106
msgid "Ctrl-Left-Click"
msgstr "Klik Kiri dengan Ctrl"
-#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:106
msgid "Set Selection Point and Play"
msgstr "Pilih Titik Terpilih dan Mainkan"
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:107
#: prefs/MousePrefs.cpp:108
#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:110
+#: prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:112
+#: prefs/MousePrefs.cpp:113
msgid "Zoom"
msgstr "Zoom"
-#: prefs/MousePrefs.cpp:104
+#: prefs/MousePrefs.cpp:108
msgid "Zoom in on Point"
msgstr "Perbesar pada Titik"
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:129
msgid "Zoom in on a Range"
msgstr "Perbesar pada Wilayah"
-#: prefs/MousePrefs.cpp:105
+#: prefs/MousePrefs.cpp:109
msgid "same as right-drag"
msgstr "seperti klik kanan dan dorong"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:110
+#: prefs/MousePrefs.cpp:128
msgid "Right-Click"
msgstr "Klik Kanan"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:110
+#: prefs/MousePrefs.cpp:128
msgid "Zoom out one step"
msgstr "Perkecil satu kali"
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:129
msgid "Right-Drag"
msgstr "Klik Kanan dan Dorong"
-#: prefs/MousePrefs.cpp:107
+#: prefs/MousePrefs.cpp:111
msgid "same as left-drag"
msgstr "seperti klik kiri dan dorong"
-#: prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:112
msgid "Shift-Drag"
msgstr "Dorong dengan Shift"
-#: prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:112
msgid "Zoom out on a Range"
msgstr "Perkecil dengan jarak yang pas"
-#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:113
msgid "Middle-Click"
msgstr "Klik Tengah"
-#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:113
msgid "Zoom default"
msgstr "Normalkan"
-#: prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:115
msgid "Time shift clip or move up/down between tracks"
msgstr "Ubah waktu klip atau pindahkan ke atas/bawah diantara trek"
-#: prefs/MousePrefs.cpp:112
+#: prefs/MousePrefs.cpp:116
msgid "Shift-Left-Drag"
msgstr "Klik Kiri Dorong dengan Shift"
-#: prefs/MousePrefs.cpp:112
+#: prefs/MousePrefs.cpp:116
msgid "Time shift all clips in track"
msgstr "Ubah waktu semua klip pada trek"
-#: prefs/MousePrefs.cpp:113
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:117
+#: prefs/MousePrefs.cpp:124
msgid "Ctrl-Left-Drag"
msgstr "Klik kiri dorong dengan Ctrl"
-#: prefs/MousePrefs.cpp:113
+#: prefs/MousePrefs.cpp:117
msgid "Move clip up/down between tracks"
msgstr "Pindahkan klik ke atas/bawah diantara trek"
-#: prefs/MousePrefs.cpp:115
+#: prefs/MousePrefs.cpp:119
msgid "Change Amplification Envelope"
msgstr "Ubah Amplifikasi dengan Amplop"
-#: prefs/MousePrefs.cpp:117
+#: prefs/MousePrefs.cpp:121
msgid "Change Sample"
msgstr "Ubah Sample"
-#: prefs/MousePrefs.cpp:117
-#: prefs/MousePrefs.cpp:118
-#: prefs/MousePrefs.cpp:119
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:121
+#: prefs/MousePrefs.cpp:122
+#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:124
msgid "Pencil"
msgstr "Pensil"
-#: prefs/MousePrefs.cpp:118
+#: prefs/MousePrefs.cpp:122
msgid "Alt-Left-Click"
msgstr "Klik Kiri dengan Alt"
-#: prefs/MousePrefs.cpp:118
+#: prefs/MousePrefs.cpp:122
msgid "Smooth at Sample"
msgstr "Pelembutan pada Sampel"
-#: prefs/MousePrefs.cpp:119
+#: prefs/MousePrefs.cpp:123
msgid "Change Several Samples"
msgstr "Ubah Beberapa Sampel"
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:124
msgid "Change ONE Sample only"
msgstr "Ubah SATU Sampel saja"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
-#: prefs/MousePrefs.cpp:124
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:126
+#: prefs/MousePrefs.cpp:127
+#: prefs/MousePrefs.cpp:128
+#: prefs/MousePrefs.cpp:129
msgid "Multi"
msgstr "Banyak"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:126
+#: prefs/MousePrefs.cpp:127
msgid "same as select tool"
msgstr "seperti alat memilih"
-#: prefs/MousePrefs.cpp:124
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:128
+#: prefs/MousePrefs.cpp:129
msgid "same as zoom tool"
msgstr "seperti alat zoom"
-#: prefs/MousePrefs.cpp:127
-#: prefs/MousePrefs.cpp:128
-#: prefs/MousePrefs.cpp:129
+#: prefs/MousePrefs.cpp:131
+#: prefs/MousePrefs.cpp:132
+#: prefs/MousePrefs.cpp:133
msgid "Any"
msgstr "Apapun"
-#: prefs/MousePrefs.cpp:127
+#: prefs/MousePrefs.cpp:131
msgid "Scroll up or down"
msgstr "Ke atas atau bawah"
-#: prefs/MousePrefs.cpp:127
+#: prefs/MousePrefs.cpp:131
msgid "Wheel-Rotate"
msgstr "Rotasi Roda Mouse"
-#: prefs/MousePrefs.cpp:128
+#: prefs/MousePrefs.cpp:132
msgid "Scroll left or right"
msgstr "Ke kiri atau kanan"
-#: prefs/MousePrefs.cpp:128
+#: prefs/MousePrefs.cpp:132
msgid "Shift-Wheel-Rotate"
msgstr "Putar Roda Mouse dengan Shift"
-#: prefs/MousePrefs.cpp:129
+#: prefs/MousePrefs.cpp:133
msgid "Ctrl-Wheel-Rotate"
msgstr "Putar Roda Mouse dengan Ctrl"
-#: prefs/MousePrefs.cpp:129
+#: prefs/MousePrefs.cpp:133
msgid "Zoom in or out"
msgstr "Perbesar atau Perkecil"
-#: prefs/PrefsDialog.cpp:94
+#: prefs/PrefsDialog.cpp:67
msgid "Audacity Preferences"
msgstr "Preferensi Audacity"
-#: prefs/QualityPrefs.cpp:73
+#: prefs/QualityPrefs.cpp:77
msgid "Rectangle"
msgstr "Persegi"
-#: prefs/QualityPrefs.cpp:74
+#: prefs/QualityPrefs.cpp:78
msgid "Triangle"
msgstr "Segitiga"
-#: prefs/QualityPrefs.cpp:75
+#: prefs/QualityPrefs.cpp:79
msgid "Shaped"
msgstr "Terbentuk"
-#: prefs/QualityPrefs.cpp:122
+#: prefs/QualityPrefs.cpp:127
msgid "Sampling"
msgstr "Menyampel"
-#: prefs/QualityPrefs.cpp:125
+#: prefs/QualityPrefs.cpp:131
msgid "Default Sample Rate:"
msgstr "Rate Sampel Normal:"
-#: prefs/QualityPrefs.cpp:127
+#: prefs/QualityPrefs.cpp:156
msgid "Default Sample Format:"
msgstr "Format Sampel Normal:"
-#: prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "Pengkonversi rate sampel yang cepat:"
+#: prefs/QualityPrefs.cpp:167
+msgid "Real-time Conversion"
+msgstr "Konversi Real-time"
-#: prefs/QualityPrefs.cpp:139
-msgid "High-quality sample rate converter:"
-msgstr "Pengkonversi rate sampel berkualitas tinggi:"
+#: prefs/QualityPrefs.cpp:173
+#: prefs/QualityPrefs.cpp:195
+msgid "Sample Rate Converter:"
+msgstr "Pengkonversi Rate Sampel:"
-#: prefs/QualityPrefs.cpp:142
-msgid "Real-time dither:"
-msgstr "Dither tepat waktu:"
-
-#: prefs/QualityPrefs.cpp:145
-msgid "High-quality dither:"
-msgstr "Dither berkualitas tinggi:"
-
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
-msgstr "Konversi"
-
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
-msgstr "Pengkonversi Rate Sampel"
-
-#: prefs/QualityPrefs.cpp:164
+#: prefs/QualityPrefs.cpp:180
+#: prefs/QualityPrefs.cpp:202
msgid "Dither"
msgstr "Dither"
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
-msgstr "Tepat Waktu:"
-
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
-msgstr "Kualitas Tinggi:"
+#: prefs/QualityPrefs.cpp:191
+msgid "High-quality Conversion"
+msgstr "Konversi Berkualitas Tinggi"
-#: prefs/SmartRecordPrefs.cpp:37
-#: prefs/SmartRecordPrefs.cpp:38
+#: prefs/SmartRecordPrefs.cpp:33
msgid "Smart Recording"
msgstr "Rekaman Pintar"
-#: prefs/SmartRecordPrefs.cpp:64
-#: prefs/SmartRecordPrefs.cpp:66
-msgid "Sound Activated Recording"
-msgstr "Meream dengan Suara Diaktifkan"
-
-#: prefs/SmartRecordPrefs.cpp:71
-msgid "Sound Activation Level (dB):"
-msgstr "Level Pengaktifan Suara (dB):"
-
-#: prefs/SpectrumPrefs.cpp:41
-#: prefs/SpectrumPrefs.cpp:42
+#: prefs/SpectrumPrefs.cpp:30
msgid "Spectrograms"
msgstr "Spektrogram"
-#: prefs/SpectrumPrefs.cpp:91
-msgid "FFT Size"
-msgstr "Ukuran FFT"
-
-#: prefs/SpectrumPrefs.cpp:94
+#: prefs/SpectrumPrefs.cpp:41
msgid "8 - most wideband"
msgstr "8 - jangkauan terbesar"
-#: prefs/SpectrumPrefs.cpp:99
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr "16"
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr "32"
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr "64"
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr "128"
+
+#: prefs/SpectrumPrefs.cpp:46
msgid "256 - default"
msgstr "256 - normal"
-#: prefs/SpectrumPrefs.cpp:107
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr "512"
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr "1024"
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr "2048"
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr "4096"
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr "8192"
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr "16384"
+
+#: prefs/SpectrumPrefs.cpp:54
msgid "32768 - most narrowband"
msgstr "32768 - jangkauan terkecil"
-#: prefs/SpectrumPrefs.cpp:109
+#: prefs/SpectrumPrefs.cpp:56
msgid "4096 - most narrowband"
msgstr "4096 - jangkauan terkecil"
-#: prefs/SpectrumPrefs.cpp:116
-msgid "Window type:"
-msgstr "Tipe jendela:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
+msgstr "Jendela FFT"
+
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
+msgstr "Ukuran jendela"
-#: prefs/SpectrumPrefs.cpp:125
+#: prefs/SpectrumPrefs.cpp:93
+msgid "Window type"
+msgstr "Tipe jendela"
+
+#: prefs/SpectrumPrefs.cpp:113
msgid "FFT Skip Points"
msgstr "Titik Pelompatan FFT"
-#: prefs/SpectrumPrefs.cpp:140
-msgid "Display"
-msgstr "Tampilan"
-
-#: prefs/SpectrumPrefs.cpp:144
-msgid "&Grayscale"
-msgstr "&Hitam Putih"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
+msgstr "Lewati Titik-titik"
-#: prefs/SpectrumPrefs.cpp:147
+#: prefs/SpectrumPrefs.cpp:134
msgid "Minimum Frequency (Hz):"
msgstr "Frekuensi Minimum (Hz):"
-#: prefs/SpectrumPrefs.cpp:152
+#: prefs/SpectrumPrefs.cpp:140
msgid "Maximum Frequency (Hz):"
msgstr "Frekuensi Maksimum (Hz):"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
-msgstr "&Ordinat"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
+msgstr "Lihat spektrum dengan warna &hitam-putih"
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
-msgstr "&Cari Catatan"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
+msgstr "Lihat batas sepanjang sumbu &Y"
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
-msgstr "Catatan &Kuantisasi"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
+msgstr "Pencarian Catatan FFT"
#: prefs/SpectrumPrefs.cpp:165
msgid "Minimum Amplitude (dB):"
msgstr "Amplitudo Minimum (dB):"
-#: prefs/SpectrumPrefs.cpp:170
+#: prefs/SpectrumPrefs.cpp:171
msgid "Max. Number of Notes (1..128):"
msgstr "Jumlah Catatan Maksimum (1..128):"
-#: prefs/SpectrumPrefs.cpp:197
+#: prefs/SpectrumPrefs.cpp:178
+msgid "&Find Notes"
+msgstr "&Cari Catatan"
+
+#: prefs/SpectrumPrefs.cpp:182
+msgid "&Quantize Notes"
+msgstr "Catatan &Kuantisasi"
+
+#: prefs/SpectrumPrefs.cpp:194
msgid "The maximum frequency must be an integer"
msgstr "Frekuensi maksimum harus berupa angka"
-#: prefs/SpectrumPrefs.cpp:201
+#: prefs/SpectrumPrefs.cpp:198
msgid "Maximum frequency must be in the range 100 Hz - 100,000 Hz"
msgstr "Frekuensi maksimum harus diantara 100 Hz - 100.000 Hz"
-#: prefs/SpectrumPrefs.cpp:209
+#: prefs/SpectrumPrefs.cpp:204
msgid "The minimum frequency must be an integer"
msgstr "Frekuensi minmum harus berupa angka"
-#: prefs/SpectrumPrefs.cpp:213
+#: prefs/SpectrumPrefs.cpp:208
msgid "Minimum frequency must be at least 0 Hz"
msgstr "Frekuensi minimum harus lebih atau sama dengan 0 Hz"
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr "Frekuensi minimum harus lebih kecil dari frekuensi maksimum"
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr "Amplitudo minimal (dB) harus berupa integer"
#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr "Jumlah Catatan Maksimum harus berupa angka"
+
#: prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
-msgstr "Jumlah Catatan Maksimum harus berupa angka dan diantara 1 - 128"
+msgid "The maximum number of notes must be in the range 1..128"
+msgstr "Jumlah Catatan Maksimum harus berupa angka dan diantara 1..128"
-#: prefs/ThemePrefs.cpp:62
-#: prefs/ThemePrefs.cpp:63
+#: prefs/ThemePrefs.cpp:60
msgid "Theme"
msgstr "Tema"
+#: prefs/ThemePrefs.cpp:88
+msgid "Info"
+msgstr "Info"
+
+#: prefs/ThemePrefs.cpp:91
+msgid ""
+"Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr ""
+"Tema adalah fitur percobaan.\n"
+"\n"
+"Untuk mencobanya, klik \"Simpan Cache Tema\" kemudian cari dan ubah gambar dan\n"
+"warna pada ImageCacheVxx.png dengan editor gambar seperti Gimp.\n"
+"\n"
+"Klik \"Ambil Cache Tema\" Untuk mengambil gambar dan warna yang telah diubah ke Audacity.\n"
+"\n"
+"[Hanya toolbar kontrol dan warna wavetrack \n"
+"yang berubah, walaupun file gambar mempunyai icon juga.]"
+
+#: prefs/ThemePrefs.cpp:96
+msgid ""
+"You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+"Anda telah mengkompilasikan Audacity dengan tombol tambahan, 'Sumber Output'.\n"
+"Ini akan menyimpan gambar versi C yang bisa dikompilasi sebagaimana mestinya."
+
+#: prefs/ThemePrefs.cpp:101
+msgid ""
+"If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+"Jika 'Ambil Cache Tema Pada Permulaan' ditandai, Cache Tema akan diambil ketika\n"
+"program dimulai."
+
+#: prefs/ThemePrefs.cpp:104
+msgid ""
+"Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+"Menyimpan atau mengambil file tema sendiri menggunakan file terpisah untuk setiap\n"
+"gambar, tapi tetap berhubungan."
+
#. i18n-hint: && in here is an escape character to get a single & on screen,
#. * so keep it as is
-#: prefs/ThemePrefs.cpp:93
+#: prefs/ThemePrefs.cpp:111
msgid "Theme Cache - Images && Color"
msgstr "Cache Tema - Gambar && Warna"
-#: prefs/ThemePrefs.cpp:95
+#: prefs/ThemePrefs.cpp:115
msgid "Save Theme Cache"
msgstr "Simpan Cache Tema"
-#: prefs/ThemePrefs.cpp:96
+#: prefs/ThemePrefs.cpp:116
msgid "Load Theme Cache"
msgstr "Ambil Cache Tema"
-#: prefs/ThemePrefs.cpp:106
+#: prefs/ThemePrefs.cpp:131
msgid "Load Theme Cache At Startup"
msgstr "Ambil Cache Tema Pada Permulaan"
-#: prefs/ThemePrefs.cpp:118
+#: prefs/ThemePrefs.cpp:146
msgid "Individual Theme Files"
msgstr "File Tema Individual"
-#: prefs/ThemePrefs.cpp:120
+#: prefs/ThemePrefs.cpp:150
msgid "Save Files"
msgstr "Simpan File"
-#: prefs/ThemePrefs.cpp:121
+#: prefs/ThemePrefs.cpp:151
msgid "Load Files"
msgstr "Ambil File"
-#: prefs/ThemePrefs.cpp:126
-msgid "Info"
-msgstr "Info"
-
-#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
-msgstr "Tema adalah fitur percobaan.\n"
-"\n"
-"Untuk mencobanya, klik \"Simpan Cache Tema\" kemudian\n"
-"cari dan ubah gambar dan warna pada \n"
-"ImageCacheVxx.png dengan editor gambar seperti Gimp.\n"
-"\n"
-"Klik \"Ambil Cache Tema\" Untuk mengambil gambar dan warna\n"
-"yang telah diubah ke Audacity.\n"
-"\n"
-"[Hanya toolbar kontrol dan warna wavetrack \n"
-"yang berubah, walaupun file gambar mempunyai icon lainnya juga.]\n"
-
-#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
-msgstr "Anda telah mengkompilasikan Audacity dengan tombol tambahan, \n"
-"'Sumber Output'. Ini akan mengimpan gambar dengan \n"
-"versi C yang bisa dikompilasi sebagaimana mestinya.\n"
-
-#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
-msgstr "Jika 'Ambil Cache Tema Pada Permulaan' ditandai, \n"
-"Cache Tema akan diambil ketika program \n"
-"dimulai.\n"
-"\n"
-
-#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
-msgstr "Menyimpan atau mengambil file tema sendiri menggunakan \n"
-"file terpisah untuk setiap gambar, tapi tetap berhubungan \n"
-"\n"
-
#: toolbars/ControlToolBar.cpp:175
msgid "Pause"
msgstr "Pause"
#: toolbars/ControlToolBar.cpp:178
-msgid "Play"
-msgstr "Play"
-
-#: toolbars/ControlToolBar.cpp:178
msgid "Play (Shift for Loop Play)"
msgstr "Play (Shift for Loop Play)"
#: toolbars/ControlToolBar.cpp:183
+#: widgets/ProgressDialog.cpp:1101
msgid "Stop"
msgstr "Berhenti"
-#: toolbars/ControlToolBar.cpp:186
-msgid "Skip to Start"
-msgstr "Langsung ke awal"
-
-#: toolbars/ControlToolBar.cpp:189
-msgid "Skip to End"
-msgstr "Langsung ke Akhir"
-
#: toolbars/ControlToolBar.cpp:192
msgid "Record (Shift for Append Record)"
msgstr "Rekam (Shift untuk Tambahan Rekam)"
@@ -8652,26 +9199,26 @@ msgstr "Rekam (Shift untuk Tambahan Rekam)"
msgid "Clean Speech"
msgstr "Clean Speech"
-#: toolbars/ControlToolBar.cpp:540
-#: toolbars/ControlToolBar.cpp:869
+#: toolbars/ControlToolBar.cpp:549
+#: toolbars/ControlToolBar.cpp:881
msgid "Error while opening sound device. "
msgstr "Error ketika membuka perangkat suara."
-#: toolbars/ControlToolBar.cpp:706
+#: toolbars/ControlToolBar.cpp:719
msgid "Recording in CleanSpeech mode is not possible when a track, or more than one project, is already open."
msgstr "Merekam pada Mode CleanSpeech tidak mungkin ketika trek, atau lebih dari satu proyek telah dibuka."
-#: toolbars/ControlToolBar.cpp:707
+#: toolbars/ControlToolBar.cpp:720
msgid "Recording not permitted"
msgstr "Rekaman tidak diizinkan"
-#: toolbars/DeviceToolBar.cpp:113
-#: toolbars/DeviceToolBar.cpp:115
+#: toolbars/DeviceToolBar.cpp:109
+#: toolbars/DeviceToolBar.cpp:111
msgid "Output Device"
msgstr "PErangkat Output"
-#: toolbars/DeviceToolBar.cpp:134
-#: toolbars/DeviceToolBar.cpp:136
+#: toolbars/DeviceToolBar.cpp:130
+#: toolbars/DeviceToolBar.cpp:132
msgid "Input Device"
msgstr "Perangkat Input"
@@ -8715,10 +9262,6 @@ msgstr "Fit-kan Proyek"
msgid "Fit project in window"
msgstr "Fit-kan proyek dengan jendela"
-#: toolbars/MeterToolBar.cpp:50
-msgid "Meter"
-msgstr "Meter"
-
#: toolbars/MeterToolBar.cpp:80
msgid "Play Meter"
msgstr "Pengukur Permainan"
@@ -8752,7 +9295,7 @@ msgid "Slider Output"
msgstr "Slider pada Output"
#: toolbars/MixerToolBar.cpp:101
-#: widgets/Meter.cpp:874
+#: widgets/Meter.cpp:870
msgid "Input Volume"
msgstr "Volume Input"
@@ -8760,10 +9303,18 @@ msgstr "Volume Input"
msgid "Slider Input"
msgstr "Slider pada Input"
-#: toolbars/MixerToolBar.cpp:134
+#: toolbars/MixerToolBar.cpp:139
msgid "Input Source"
msgstr "Sumber Input"
+#: toolbars/MixerToolBar.cpp:298
+msgid "Input source information is not available."
+msgstr "Informasi sumber input tidak ada"
+
+#: toolbars/MixerToolBar.cpp:305
+msgid "Select Input Source"
+msgstr "Pilih Sumber Input"
+
#: toolbars/SelectionBar.cpp:86
msgid "Selection"
msgstr "Pilihan"
@@ -8815,8 +9366,8 @@ msgstr "Akhir Pilihan"
msgid "Audacity %s ToolBar"
msgstr "Toolbar Audacity %s"
-#: toolbars/ToolDock.cpp:74
#: toolbars/ToolDock.cpp:75
+#: toolbars/ToolDock.cpp:76
msgid "ToolDock"
msgstr "Alat Dock"
@@ -8848,34 +9399,6 @@ msgstr "Kiri=Perbesar, Kanan=Perkecil, Tengah=Normal"
msgid "Click and drag to move a track in time"
msgstr "Klik dan dorong ubtuk memindahkan trek ke waktu tertentu"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr "Alat"
-
-#: toolbars/ToolsToolBar.cpp:147
-#: toolbars/ToolsToolBar.cpp:182
-msgid "Selection Tool"
-msgstr "Tool Pemilihan"
-
-#: toolbars/ToolsToolBar.cpp:148
-msgid "Envelope Tool"
-msgstr "Tool Amplop"
-
-#: toolbars/ToolsToolBar.cpp:149
-#: toolbars/ToolsToolBar.cpp:183
-msgid "Time Shift Tool"
-msgstr "Tool Time-Shift"
-
-#: toolbars/ToolsToolBar.cpp:150
-#: toolbars/ToolsToolBar.cpp:185
-msgid "Zoom Tool"
-msgstr "Tool Zoom"
-
-#: toolbars/ToolsToolBar.cpp:151
-#: toolbars/ToolsToolBar.cpp:184
-msgid "Draw Tool"
-msgstr "Tool Gambar"
-
#: toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
msgstr "Mode Tool Serbaguna"
@@ -8884,190 +9407,182 @@ msgstr "Mode Tool Serbaguna"
msgid "Slide Tool"
msgstr "Tool Slide"
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr "Tool Serbaguna"
-
-#: toolbars/TranscriptionToolBar.cpp:84
-msgid "Transcription"
-msgstr "Transkrispi"
-
-#: toolbars/TranscriptionToolBar.cpp:171
+#: toolbars/TranscriptionToolBar.cpp:175
msgid "Play at selected speed"
msgstr "Mainkan padakecepatan terpilih"
-#: toolbars/TranscriptionToolBar.cpp:172
+#: toolbars/TranscriptionToolBar.cpp:176
msgid "Play-at-speed"
msgstr "Memainkan berkecepatan"
-#: toolbars/TranscriptionToolBar.cpp:178
-#: toolbars/TranscriptionToolBar.cpp:183
+#: toolbars/TranscriptionToolBar.cpp:182
+#: toolbars/TranscriptionToolBar.cpp:187
msgid "Playback Speed"
msgstr "Memainkan Berdasarkan Kecepatan"
-#: toolbars/TranscriptionToolBar.cpp:196
+#: toolbars/TranscriptionToolBar.cpp:200
msgid "Adjust left selection to next onset"
msgstr "Ubah pemilihan sebelah kiri ke perintah selanjutnya"
-#: toolbars/TranscriptionToolBar.cpp:197
+#: toolbars/TranscriptionToolBar.cpp:201
msgid "Left-to-On"
msgstr "Hidupkan Fitur Kiri"
-#: toolbars/TranscriptionToolBar.cpp:199
+#: toolbars/TranscriptionToolBar.cpp:203
msgid "Adjust right selection to previous offset"
msgstr "Ubah pemilihan sebelah kanan ke pertahanan sebelumnya"
-#: toolbars/TranscriptionToolBar.cpp:200
+#: toolbars/TranscriptionToolBar.cpp:204
msgid "Right-to-Off"
msgstr "Matikan Fitur Kanan"
-#: toolbars/TranscriptionToolBar.cpp:202
+#: toolbars/TranscriptionToolBar.cpp:206
msgid "Adjust left selection to next offset"
msgstr "Ubah pemilihan sebelah kiri ke perintah selanjutnya"
-#: toolbars/TranscriptionToolBar.cpp:203
+#: toolbars/TranscriptionToolBar.cpp:207
msgid "Left-to-Off"
msgstr "Matikankan Fitur Kiri"
-#: toolbars/TranscriptionToolBar.cpp:205
+#: toolbars/TranscriptionToolBar.cpp:209
msgid "Adjust right selection to previous onset"
msgstr "Ubah pemilihan sebelah kanan ke perintah sebelumnya"
-#: toolbars/TranscriptionToolBar.cpp:206
+#: toolbars/TranscriptionToolBar.cpp:210
msgid "Right-to-On"
msgstr "Hidupkan Fitur Kanan"
-#: toolbars/TranscriptionToolBar.cpp:208
+#: toolbars/TranscriptionToolBar.cpp:212
msgid "Select region of sound around cursor"
msgstr "Pilih area suara di sekitar kursor"
-#: toolbars/TranscriptionToolBar.cpp:209
+#: toolbars/TranscriptionToolBar.cpp:213
msgid "Select-Sound"
msgstr "Pilih Suara"
-#: toolbars/TranscriptionToolBar.cpp:211
+#: toolbars/TranscriptionToolBar.cpp:215
msgid "Select region of silence around cursor"
msgstr "Pilih area diam di sekitar kursor"
-#: toolbars/TranscriptionToolBar.cpp:212
+#: toolbars/TranscriptionToolBar.cpp:216
msgid "Select-Silence"
msgstr "Pilih Diam"
-#: toolbars/TranscriptionToolBar.cpp:214
+#: toolbars/TranscriptionToolBar.cpp:218
msgid "Automatically make labels from words"
msgstr "Membuat label dari kata-kata secara otomatis"
-#: toolbars/TranscriptionToolBar.cpp:215
+#: toolbars/TranscriptionToolBar.cpp:219
msgid "Make Labels"
msgstr "Buat Label"
-#: toolbars/TranscriptionToolBar.cpp:217
+#: toolbars/TranscriptionToolBar.cpp:221
msgid "Add label at selection"
msgstr "Tambahkan label pada yang dipilih"
-#: toolbars/TranscriptionToolBar.cpp:218
+#: toolbars/TranscriptionToolBar.cpp:222
msgid "Add Label"
msgstr "Tambahkan Label"
-#: toolbars/TranscriptionToolBar.cpp:220
+#: toolbars/TranscriptionToolBar.cpp:224
msgid "Calibrate voicekey"
msgstr "Kalibrasi kunci suara"
-#: toolbars/TranscriptionToolBar.cpp:221
+#: toolbars/TranscriptionToolBar.cpp:225
msgid "Calibrate"
msgstr "Kalibrasi"
-#: toolbars/TranscriptionToolBar.cpp:225
+#: toolbars/TranscriptionToolBar.cpp:229
msgid "Adjust Sensitivity"
msgstr "Ubah Sensitivitas"
-#: toolbars/TranscriptionToolBar.cpp:230
+#: toolbars/TranscriptionToolBar.cpp:234
msgid "Sensitivity"
msgstr "Senstivitas"
-#: toolbars/TranscriptionToolBar.cpp:235
+#: toolbars/TranscriptionToolBar.cpp:239
msgid "Energy"
msgstr "Energi"
-#: toolbars/TranscriptionToolBar.cpp:236
+#: toolbars/TranscriptionToolBar.cpp:240
msgid "Sign Changes (Low Threshold)"
msgstr "Pengubahan Tanda (Ambang Batas Rendah)"
-#: toolbars/TranscriptionToolBar.cpp:237
+#: toolbars/TranscriptionToolBar.cpp:241
msgid "Sign Changes (High Threshold)"
msgstr "Pengubahan Tanda (Ambang Batas Tinggi)"
-#: toolbars/TranscriptionToolBar.cpp:238
+#: toolbars/TranscriptionToolBar.cpp:242
msgid "Direction Changes (Low Threshold)"
msgstr "Pengubahan Arah (Ambang Batas Rendah)"
-#: toolbars/TranscriptionToolBar.cpp:239
+#: toolbars/TranscriptionToolBar.cpp:243
msgid "Direction Changes (High Threshold)"
msgstr "Pengubahan Arah (Ambang Batas Tinggi)"
-#: toolbars/TranscriptionToolBar.cpp:247
+#: toolbars/TranscriptionToolBar.cpp:251
msgid "Key type"
msgstr "Kunci Ketikan"
-#: widgets/AButton.cpp:303
+#: widgets/AButton.cpp:300
msgid " (disabled)"
msgstr " (dilarang)"
-#: widgets/AButton.cpp:461
+#: widgets/AButton.cpp:458
msgid "Press"
msgstr "Tekan"
-#: widgets/AButton.cpp:540
+#: widgets/AButton.cpp:537
msgid "Button"
msgstr "Tombol"
#. i18n-hint: One-letter abbreviation for Left, in VU Meter
#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
-#: widgets/ASlider.cpp:612
+#: widgets/ASlider.cpp:624
#: widgets/Meter.cpp:248
msgid "L"
msgstr "L"
#. i18n-hint: One-letter abbreviation for Right, in VU Meter
#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
-#: widgets/ASlider.cpp:615
+#: widgets/ASlider.cpp:627
#: widgets/Meter.cpp:250
msgid "R"
msgstr "R"
-#: widgets/ASlider.cpp:678
+#: widgets/ASlider.cpp:690
msgid "Center"
msgstr "Tengah"
-#: widgets/ASlider.cpp:682
+#: widgets/ASlider.cpp:694
msgid "Left"
msgstr "Kiri"
-#: widgets/ASlider.cpp:685
+#: widgets/ASlider.cpp:697
msgid "Right"
msgstr "Kanan"
-#: widgets/ErrorDialog.cpp:98
+#: widgets/ErrorDialog.cpp:96
msgid "Help"
msgstr "Bantuan"
-#: widgets/ErrorDialog.cpp:137
+#: widgets/ErrorDialog.cpp:135
msgid "<"
msgstr "<"
-#: widgets/ErrorDialog.cpp:138
+#: widgets/ErrorDialog.cpp:136
msgid ">"
msgstr ">"
-#: widgets/ErrorDialog.cpp:142
+#: widgets/ErrorDialog.cpp:140
msgid "Forwards"
msgstr "Percepat ke Akhir"
-#: widgets/ErrorDialog.cpp:143
+#: widgets/ErrorDialog.cpp:141
msgid "Backwards"
msgstr "Percepat ke Awal"
-#: widgets/ErrorDialog.cpp:255
+#: widgets/ErrorDialog.cpp:242
msgid "Help on the Internet"
msgstr "Bantuan di Internet"
@@ -9075,68 +9590,70 @@ msgstr "Bantuan di Internet"
msgid "Grabber"
msgstr "Pendorong"
-#: widgets/Grid.cpp:643
+#: widgets/Grid.cpp:703
#, c-format
msgid "%d rows, %d columns"
msgstr "%d baris, %d kolom"
-#: widgets/Grid.cpp:649
-#: widgets/Grid.cpp:776
+#: widgets/Grid.cpp:709
+#: widgets/Grid.cpp:836
#, c-format
msgid "Row %d"
msgstr "Baris %d"
-#: widgets/Grid.cpp:791
+#: widgets/Grid.cpp:851
msgid "Empty"
msgstr "Kosong"
-#: widgets/Meter.cpp:396
+#: widgets/Meter.cpp:392
msgid "Enable Meter"
msgstr "Bolehkan Meter"
-#: widgets/Meter.cpp:398
+#: widgets/Meter.cpp:394
msgid "Disable Meter"
msgstr "Larangkan Meter"
-#: widgets/Meter.cpp:401
+#: widgets/Meter.cpp:397
msgid "Stop Monitoring"
msgstr "Hentikan Pemantauan"
-#: widgets/Meter.cpp:403
+#: widgets/Meter.cpp:399
msgid "Start Monitoring"
msgstr "Mulai Pemantauan"
-#: widgets/Meter.cpp:407
+#: widgets/Meter.cpp:403
msgid "Horizontal Stereo"
msgstr "Stereo Horizontal"
-#: widgets/Meter.cpp:408
+#: widgets/Meter.cpp:404
msgid "Vertical Stereo"
msgstr "Stereo Vertikal"
-#: widgets/Meter.cpp:425
+#: widgets/Meter.cpp:421
msgid "Preferences..."
msgstr "Preferensi..."
-#: widgets/Meter.cpp:876
+#: widgets/Meter.cpp:872
msgid "Mix Volume"
msgstr "Volume Mix"
-#: widgets/Meter.cpp:1145
-msgid "This determines how often the meter is refreshed.\n"
+#: widgets/Meter.cpp:1141
+msgid ""
+"This determines how often the meter is refreshed.\n"
"If you have a slower PC you may want to select a\n"
"lower refresh rate (30 per second or lower), so that\n"
"audio qualtiy is not affected by the meter display."
-msgstr "Ini menunjukkan sesering apa meteran disegarkan.\n"
+msgstr ""
+"Ini menunjukkan sesering apa meteran disegarkan.\n"
"Jika performa PC Anda tidak tinggi, Anda pilih rate\n"
"penyegaran lebih rendah (30 per detik atau lebih rendah), supaya\n"
"kualitas audio tidak berdampak kepada penunjuk ini."
-#: widgets/Meter.cpp:1146
+#: widgets/Meter.cpp:1142
msgid "Meter refresh rate per second [1-100]: "
msgstr "Rate penyegaran meter per detik [1-100]:"
-#: widgets/Meter.cpp:1147
+#: widgets/Meter.cpp:1143
msgid "Meter Preferences"
msgstr "Preferensi Meter"
@@ -9148,27 +9665,27 @@ msgstr " Mohon pilih aksinya"
msgid "Please select an action"
msgstr "Silahkan pilih aksinya"
-#: widgets/ProgressDialog.cpp:97
+#: widgets/ProgressDialog.cpp:1060
msgid "Elapsed Time:"
msgstr "Waktu Berjalan:"
-#: widgets/ProgressDialog.cpp:117
+#: widgets/ProgressDialog.cpp:1080
msgid "Remaining Time:"
msgstr "Waktu Tersisa:"
-#: widgets/ProgressDialog.cpp:134
+#: widgets/ProgressDialog.cpp:1108
msgid "Cancel"
msgstr "Batal"
-#: widgets/Ruler.cpp:1445
-#: widgets/Ruler.cpp:1446
+#: widgets/Ruler.cpp:1584
+#: widgets/Ruler.cpp:1585
msgid "Vertical Ruler"
msgstr "Penunjuk Vertikal"
#. i18n-hint: Format string for displaying time in seconds. Change the comma
#. * in the middle to the 1000s separator for your locale, and the 'seconds'
#. * on the end to the word for seconds. Don't change the numbers.
-#: widgets/TimeTextCtrl.cpp:267
+#: widgets/TimeTextCtrl.cpp:268
msgid "01000,01000 seconds"
msgstr "01000,01000 detik"
@@ -9177,13 +9694,13 @@ msgstr "01000,01000 detik"
#. * abbreviation for minutes and 's' to the abbreviation for seconds. Don't
#. * change the numbers unless there aren't 60 seconds in a minute in your
#. * locale
-#: widgets/TimeTextCtrl.cpp:276
+#: widgets/TimeTextCtrl.cpp:277
msgid "0100 h 060 m 060 s"
msgstr "0100 jam 060 mnt 060 dtk"
#. i18n-hint: Name of time display format that shows time in days, hours,
#. * minutes and seconds
-#: widgets/TimeTextCtrl.cpp:279
+#: widgets/TimeTextCtrl.cpp:280
msgid "dd:hh:mm:ss"
msgstr "hh:jj:mm:dd"
@@ -9192,28 +9709,28 @@ msgstr "hh:jj:mm:dd"
#. * for hours, 'm' to the abbreviation for minutes and 's' to the
#. * abbreviation for seconds. Don't change the numbers unless there aren't
#. * 24 hours in a day in your locale
-#: widgets/TimeTextCtrl.cpp:285
+#: widgets/TimeTextCtrl.cpp:286
msgid "0100 days 024 h 060 m 060 s"
msgstr "0100 hari 024 jam 060 mnt 060 dtk"
#. i18n-hint: Name of time display format that shows time in hours,
-#. * minutes, seconds and hundreths of a second (1/100 second)
-#: widgets/TimeTextCtrl.cpp:288
+#. * minutes, seconds and hundredths of a second (1/100 second)
+#: widgets/TimeTextCtrl.cpp:289
msgid "hh:mm:ss + hundredths"
-msgstr ""
+msgstr "jj:mm:dd + seperseratus"
#. i18n-hint: Format string for displaying time in hours, minutes, seconds
#. * and hundredths of a second. Change the 'h' to the abbreviation for hours,
#. * 'm' to the abbreviation for minutes and 's' to the abbreviation for seconds (the
#. * hundredths are shown as decimal seconds) . Don't change the numbers
#. * unless there aren't 60 minutes in an hour in your locale
-#: widgets/TimeTextCtrl.cpp:294
+#: widgets/TimeTextCtrl.cpp:295
msgid "0100 h 060 m 060.0100 s"
-msgstr ""
+msgstr "0100 j 060 m 060.0100 d"
#. i18n-hint: Name of time display format that shows time in hours,
#. * minutes, seconds and milliseconds (1/1000 second)
-#: widgets/TimeTextCtrl.cpp:288
+#: widgets/TimeTextCtrl.cpp:298
msgid "hh:mm:ss + milliseconds"
msgstr "jj:mm:dd: + milidetik"
@@ -9222,13 +9739,13 @@ msgstr "jj:mm:dd: + milidetik"
#. * abbreviation for minutes and 's' to the abbreviation for seconds (the
#. * milliseconds are shown as decimal seconds) . Don't change the numbers
#. * unless there aren't 60 minutes in an hour in your locale
-#: widgets/TimeTextCtrl.cpp:294
+#: widgets/TimeTextCtrl.cpp:304
msgid "0100 h 060 m 060.01000 s"
msgstr "0100 jam 060 mnt 060.01000 dtk"
#. i18n-hint: Name of time display format that shows time in hours,
#. * minutes, seconds and samples (at the current project sample rate)
-#: widgets/TimeTextCtrl.cpp:297
+#: widgets/TimeTextCtrl.cpp:307
msgid "hh:mm:ss + samples"
msgstr "jj:mm:dd: + sampel"
@@ -9237,13 +9754,13 @@ msgstr "jj:mm:dd: + sampel"
#. * abbreviation for minutes, 's' to the abbreviation for seconds and
#. * translate samples . Don't change the numbers
#. * unless there aren't 60 seconds in a minute in your locale
-#: widgets/TimeTextCtrl.cpp:303
+#: widgets/TimeTextCtrl.cpp:313
msgid "0100 h 060 m 060 s+.# samples"
msgstr "0100 jam 060 mnt 060 dtk+.# sampel"
#. i18n-hint: Name of time display format that shows time in samples (at the
#. * current project sample rate)
-#: widgets/TimeTextCtrl.cpp:306
+#: widgets/TimeTextCtrl.cpp:316
msgid "samples"
msgstr "sampel"
@@ -9251,13 +9768,13 @@ msgstr "sampel"
#. * Change the ',' to the 1000s separator for your locale, and translate
#. * samples. If 1000s aren't a base multiple for your number system, then you
#. * can change the numbers to an appropriate one, and put a 0 on the front
-#: widgets/TimeTextCtrl.cpp:311
+#: widgets/TimeTextCtrl.cpp:321
msgid "01000,01000,01000 samples|#"
msgstr "01000,01000,01000 sampel|#"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
#. * seconds and frames at 24 frames per second (commonly used for films)
-#: widgets/TimeTextCtrl.cpp:314
+#: widgets/TimeTextCtrl.cpp:324
msgid "hh:mm:ss + film frames (24 fps)"
msgstr "jj:mm:dd: + Bingkai film (24 bpd)"
@@ -9266,26 +9783,26 @@ msgstr "jj:mm:dd: + Bingkai film (24 bpd)"
#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
#. * for seconds and translate 'frames' . Don't change the numbers
#. * unless there aren't 60 seconds in a minute in your locale
-#: widgets/TimeTextCtrl.cpp:320
+#: widgets/TimeTextCtrl.cpp:330
msgid "0100 h 060 m 060 s+.24 frames"
msgstr "0100 jam 060 mnt 060 dtk+.24 bingkai"
#. i18n-hint: Name of time display format that shows time in frames (lots of
#. * frames) at 24 frames per second (commonly used for films)
-#: widgets/TimeTextCtrl.cpp:323
+#: widgets/TimeTextCtrl.cpp:333
msgid "film frames (24 fps)"
msgstr "Bingkai PAL (25 bpd)"
#. i18n-hint: Format string for displaying time in frames at 24 frames per
#. * second. Translate 'frames' and leave the rest alone
-#: widgets/TimeTextCtrl.cpp:326
+#: widgets/TimeTextCtrl.cpp:336
msgid "01000,01000 frames|24"
msgstr "01000,01000 bingkai|24"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
#. * seconds and frames at NTSC TV drop-frame rate (used for American /
-#. * Japananese TV, and very odd)
-#: widgets/TimeTextCtrl.cpp:330
+#. * Japanese TV, and very odd)
+#: widgets/TimeTextCtrl.cpp:340
msgid "hh:mm:ss + NTSC drop frames"
msgstr "jj:mm:dd: + Bingkai NTSC dengan drop"
@@ -9293,14 +9810,14 @@ msgstr "jj:mm:dd: + Bingkai NTSC dengan drop"
#. * and frames with NTSC drop frames. Change the 'h' to the abbreviation
#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
#. * for seconds and translate 'frames'. Leave the |N alone, it's important!
-#: widgets/TimeTextCtrl.cpp:335
+#: widgets/TimeTextCtrl.cpp:345
msgid "0100 h 060 m 060 s+.30 frames|N"
msgstr "0100 jam 060 mnt 060 dtk+.30 bingkai|N"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
#. * seconds and frames at NTSC TV non-drop-frame rate (used for American /
-#. * Japananese TV, and doesn't quite match wall time
-#: widgets/TimeTextCtrl.cpp:339
+#. * Japanese TV, and doesn't quite match wall time
+#: widgets/TimeTextCtrl.cpp:349
msgid "hh:mm:ss + NTSC non-drop frames"
msgstr "jj:mm:dd: + Bingkai NTSC non-drop"
@@ -9309,26 +9826,26 @@ msgstr "jj:mm:dd: + Bingkai NTSC non-drop"
#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
#. * for seconds and translate 'frames'. Leave the | .999000999 alone,
#. * the whole things really is slightly off-speed!
-#: widgets/TimeTextCtrl.cpp:345
+#: widgets/TimeTextCtrl.cpp:355
msgid "0100 h 060 m 060 s+.030 frames| .999000999"
msgstr "0100 jam 060 mnt 060 dtk+.030 bingkai| .999000999"
#. i18n-hint: Name of time display format that shows time in frames at NTSC
-#. * TV frame rate (used for American / Japananese TV
-#: widgets/TimeTextCtrl.cpp:348
+#. * TV frame rate (used for American / Japanese TV
+#: widgets/TimeTextCtrl.cpp:358
msgid "NTSC frames"
msgstr "Bingkai NTSC"
#. i18n-hint: Format string for displaying time in frames with NTSC frames.
#. * Translate 'frames' and leave the rest alone. That really is the frame
#. * rate!
-#: widgets/TimeTextCtrl.cpp:352
+#: widgets/TimeTextCtrl.cpp:362
msgid "01000,01000 frames|29.97002997"
msgstr "01000,01000 bingkai|29.97002997"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
#. * seconds and frames at PAL TV frame rate (used for European TV)
-#: widgets/TimeTextCtrl.cpp:355
+#: widgets/TimeTextCtrl.cpp:365
msgid "hh:mm:ss + PAL frames (25 fps)"
msgstr "jj:mm:dd: + Bingkai PAL (25 bpd)"
@@ -9336,25 +9853,25 @@ msgstr "jj:mm:dd: + Bingkai PAL (25 bpd)"
#. * and frames with PAL TV frames. Change the 'h' to the abbreviation
#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
#. * for seconds and translate 'frames'. Nice simple time code!
-#: widgets/TimeTextCtrl.cpp:360
+#: widgets/TimeTextCtrl.cpp:370
msgid "0100 h 060 m 060 s+.25 frames"
msgstr "0100 jam 060 mnt 060 dtk+.25 bingkai"
#. i18n-hint: Name of time display format that shows time in frames at PAL
#. * TV frame rate (used for European TV
-#: widgets/TimeTextCtrl.cpp:363
+#: widgets/TimeTextCtrl.cpp:373
msgid "PAL frames (25 fps)"
msgstr "Bingkai PAL (25 bpd)"
#. i18n-hint: Format string for displaying time in frames with NTSC frames.
#. * Translate 'frames' and leave the rest alone.
-#: widgets/TimeTextCtrl.cpp:366
+#: widgets/TimeTextCtrl.cpp:376
msgid "01000,01000 frames|25"
msgstr "01000,01000 bingkai|25"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
#. * seconds and frames at CD Audio frame rate (75 frames per second)
-#: widgets/TimeTextCtrl.cpp:369
+#: widgets/TimeTextCtrl.cpp:379
msgid "hh:mm:ss + CDDA frames (75 fps)"
msgstr "jj:mm:dd: + Bingkai CDDA (75 bpd)"
@@ -9362,31 +9879,31 @@ msgstr "jj:mm:dd: + Bingkai CDDA (75 bpd)"
#. * and frames with CD Audio frames. Change the 'h' to the abbreviation
#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
#. * for seconds and translate 'frames'.
-#: widgets/TimeTextCtrl.cpp:374
+#: widgets/TimeTextCtrl.cpp:384
msgid "0100 h 060 m 060 s+.75 frames"
msgstr "0100 jam 060 mnt 060 dtk+.75 bingkai"
#. i18n-hint: Name of time display format that shows time in frames at CD
#. * Audio frame rate (75 frames per second)
-#: widgets/TimeTextCtrl.cpp:377
+#: widgets/TimeTextCtrl.cpp:387
msgid "CDDA frames (75 fps)"
msgstr "Bingkai CCDA (75 bpd)"
#. i18n-hint: Format string for displaying time in frames with CD Audio
#. * frames. Translate 'frames' and leave the rest alone
-#: widgets/TimeTextCtrl.cpp:380
+#: widgets/TimeTextCtrl.cpp:390
msgid "01000,01000 frames|75"
msgstr "01000,01000 bingkai|75"
-#: widgets/TimeTextCtrl.cpp:451
+#: widgets/TimeTextCtrl.cpp:469
msgid "Use right mouse button or context key to change format"
msgstr "Gunakan tombol kanan mouse atau kunci konteks untuk mengubah format"
-#: widgets/TimeTextCtrl.cpp:1485
+#: widgets/TimeTextCtrl.cpp:1503
msgid "Time Control"
msgstr "Kontrol Waktu"
-#: widgets/Warning.cpp:64
+#: widgets/Warning.cpp:61
msgid "Don't show this warning again"
msgstr "Jangan perlihatkan peringatan lagi"
@@ -9405,3 +9922,68 @@ msgstr "Error: %hs pada garis %lu"
msgid "Could not load file: \"%s\""
msgstr "Tidak bisa mengambil file: \"%s\""
+#: xml/XMLWriter.cpp:281
+msgid "Error flushing file"
+msgstr "Error dalam menyebarkan file"
+
+#: xml/XMLWriter.cpp:286
+msgid "Error closing file"
+msgstr "Error dalam menutup file"
+
+#: xml/XMLWriter.cpp:296
+msgid "Error writing to file"
+msgstr "Error menulis ke file"
+
+#~ msgid "No"
+#~ msgstr "Tidak"
+#~ msgid "Record Append"
+#~ msgstr "Penambahan Rekaman"
+#~ msgid "Play Looped"
+#~ msgstr "Maikan berulang"
+#~ msgid "Group with Wave Track"
+#~ msgstr "Grupkan dengan Trek Wave"
+#~ msgid "Clear any grouping"
+#~ msgstr "Hapus grup apapun"
+#~ msgid "Disallowed for some reason. Try selecting some audio first?"
+#~ msgstr ""
+#~ "Tidak diperbolehkan karena beberapa alasan. Coba memilih beberapa audio "
+#~ "dahulu?"
+#~ msgid "Hello.\n"
+#~ msgstr "Halo. \n"
+#~ msgid "WCAG2 Audio Contrast Analyzer"
+#~ msgstr "Penganalisa Kontras Audio WCAG2"
+#~ msgid "Note: The 'OK' button resets time values."
+#~ msgstr "Catatan: Tombol 'OK' mengubah ulang nilai waktu."
+#~ msgid "Measuring background"
+#~ msgstr "Mengukur latar belakang"
+#~ msgid "Measuring foreground"
+#~ msgstr "Mengukur latar depan"
+#~ msgid "&Software Playthrough: Play new track while recording it"
+#~ msgstr "Selama Bermain pada &Software: Mainkan trek baru ketika merekamnya"
+#~ msgid "Show / Hide"
+#~ msgstr "Lihat / Sembunyi"
+#~ msgid "Show prompt to sa&ve, even if project is empty"
+#~ msgstr "Tunjukkan prompt untuk menyimpan, bahkan jika proyek masih kosong"
+#~ msgid "Display range minimum: meters and 'Waveform (dB)'"
+#~ msgstr "Tampilkan range minimum: meter dan 'waveform (dB)'"
+#~ msgid "Other interface choices"
+#~ msgstr "Pilihan interface lainnya"
+#~ msgid "Real-time sample rate converter:"
+#~ msgstr "Pengkonversi rate sampel yang cepat:"
+#~ msgid "High-quality sample rate converter:"
+#~ msgstr "Pengkonversi rate sampel berkualitas tinggi:"
+#~ msgid "Real-time dither:"
+#~ msgstr "Dither tepat waktu:"
+#~ msgid "High-quality dither:"
+#~ msgstr "Dither berkualitas tinggi:"
+#~ msgid "Conversion"
+#~ msgstr "Konversi"
+#~ msgid "Real-time:"
+#~ msgstr "Tepat Waktu:"
+#~ msgid "High-quality:"
+#~ msgstr "Kualitas Tinggi:"
+#~ msgid "FFT Size"
+#~ msgstr "Ukuran FFT"
+#~ msgid "&Grayscale"
+#~ msgstr "&Hitam Putih"
+
diff --git a/locale/it.po b/locale/it.po
index f182c08..7d65ba6 100644
--- a/locale/it.po
+++ b/locale/it.po
@@ -31,11 +31,11 @@ msgid "Audacity is a free program written by a team of volunteer <a href=\"http:
msgstr ""
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#. i18n-hint: The translation of "translator_credits" will appear
@@ -87,7 +87,7 @@ msgid "Special thanks:"
msgstr "Ringraziamenti particolari:"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
msgstr ""
#: AboutDialog.cpp:320
@@ -229,10 +229,20 @@ msgstr "Livello Input"
msgid "Output Meter"
msgstr "Controllo Output"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
+#: ../src/Menus.cpp:141
+msgid "&New"
+msgstr "&Nuovo"
+
+#: ../src/Menus.cpp:143
+msgid "&Open..."
+msgstr "Apri..."
+
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
+
#: AudacityApp.cpp:534 Menus.cpp:575
-msgid "&Preferences...\tCtrl+,"
+msgid "&Preferences..."
msgstr ""
#: ../src/AudacityApp.cpp:626 ../src/AudacityApp.cpp:696
@@ -354,14 +364,14 @@ msgstr "Errore: "
msgid "Error Initializing Audio"
msgstr "Errore inizializzando l'audio"
-#: AudioIO.cpp:1236
-msgid "Latency problem"
+#: AudioIO.cpp:1225
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
+"Audacity has brought it back to start at zero.\n"
+"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
msgstr ""
#: AudioIO.cpp:1236
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
-"Audacity has brought it back to start at zero.\n"
-"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
+msgid "Latency problem"
msgstr ""
#: AutoRecovery.cpp:40
@@ -587,8 +597,9 @@ msgstr ""
msgid "C&hain (Double-Click or press SPACE to edit)"
msgstr ""
-#: BatchProcessDialog.cpp:450
-msgid "No"
+#. i18n-hint: This is the number of the command in the list
+#: BatchProcessDialog.cpp:453
+msgid "Num"
msgstr ""
#: BatchProcessDialog.cpp:456
@@ -908,11 +919,11 @@ msgstr "Rettangolare"
msgid "FFmpeg support not compiled in"
msgstr ""
-#: FFmpeg.cpp:101
+#: FFmpeg.cpp:103
msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
#: FFmpeg.cpp:104
@@ -970,11 +981,12 @@ msgstr ""
msgid "FFmpeg not found"
msgstr ""
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
#: FFmpeg.h:109
@@ -1058,11 +1070,24 @@ msgstr ""
msgid "Export"
msgstr ""
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
#: ../src/Benchmark.cpp:223 ../src/FreqWindow.cpp:123
#: ../src/effects/NoiseRemoval.cpp:463 ../src/effects/ClickRemoval.cpp:371
msgid "Close"
msgstr "Chiudi"
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr ""
+
#: ../src/widgets/Meter.cpp:293
msgid "dB"
msgstr "dB"
@@ -1073,6 +1098,15 @@ msgstr "dB"
msgid "Hz"
msgstr "Hz"
+#: ../src/Menus.cpp:2369
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "Per disegnare lo spettro, tutte le tracce selezionate devono avere la stessa frequenza di campionamento."
+
+#: ../src/Menus.cpp:2395
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "E' stato selezionato troppo audio: saranno analizzati solo i primi %.1f secondi."
+
#: ../src/FreqWindow.cpp:463
msgid "Not enough data selected."
msgstr "I dati selezionati non sono sufficienti."
@@ -1112,6 +1146,21 @@ msgstr "Frequenza (Hz)\tLivello (dB)"
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "Lag (secondi)\tfrequenza (Hz)\t livello"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr ""
+
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr ""
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr ""
@@ -1189,7 +1238,7 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr ""
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
msgstr ""
#: HelpText.cpp:244
@@ -1213,7 +1262,7 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr ""
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
msgstr ""
#: HelpText.cpp:383
@@ -1282,6 +1331,14 @@ msgstr ""
msgid "GB"
msgstr ""
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
#: LabelDialog.cpp:50
msgid "Track"
msgstr ""
@@ -1395,21 +1452,13 @@ msgstr "Sto aprendo un progetto di Audacity"
msgid "&File"
msgstr "&File"
-#: ../src/Menus.cpp:141
-msgid "&New\tCtrl+N"
-msgstr "&Nuovo\tCtrl+N"
-
-#: ../src/Menus.cpp:143
-msgid "&Open...\tCtrl+O"
-msgstr "Apri...\tCtrl+O"
-
#: ../src/Menus.cpp:145
-msgid "&Close\tCtrl+W"
-msgstr "&Chiudi\tCtrl+W"
+msgid "&Close"
+msgstr "&Chiudi"
#: ../src/Menus.cpp:146
-msgid "&Save Project\tCtrl+S"
-msgstr "&Salva il Progetto\tCtrl+S"
+msgid "&Save Project"
+msgstr "&Salva il Progetto"
#: ../src/Menus.cpp:150
msgid "Save Project &As..."
@@ -1432,7 +1481,7 @@ msgid "&Import"
msgstr ""
#: Menus.cpp:236
-msgid "&Audio...\tCtrl+Shift+I"
+msgid "&Audio..."
msgstr ""
#: Menus.cpp:237
@@ -1463,8 +1512,8 @@ msgstr "Esportazione &Multipla..."
msgid "Export MIDI..."
msgstr ""
-#: Menus.cpp:290
-msgid "CleanSpeech C&hain..."
+#: Menus.cpp:352
+msgid "Appl&y Chain..."
msgstr ""
#: Menus.cpp:340 Menus.cpp:354
@@ -1479,10 +1528,6 @@ msgstr ""
msgid "I&mport CleanSpeech Presets..."
msgstr ""
-#: Menus.cpp:352
-msgid "Appl&y Chain..."
-msgstr ""
-
#: Menus.cpp:358
msgid "&Upload File..."
msgstr ""
@@ -1497,7 +1542,7 @@ msgid "&Print..."
msgstr ""
#: Menus.cpp:382 Menus.cpp:385
-msgid "E&xit\tCtrl+Q"
+msgid "E&xit"
msgstr ""
#: ../src/Menus.cpp:227
@@ -1505,63 +1550,63 @@ msgid "&Edit"
msgstr "Modifica"
#: ../src/Menus.cpp:231
-msgid "&Undo\tCtrl+Z"
-msgstr "Ann&ulla\tCtrl+Z"
+msgid "&Undo"
+msgstr "Ann&ulla"
#: ../src/Menus.cpp:239
msgid "&Redo"
msgstr "&Ripristina"
#: ../src/Menus.cpp:252
-msgid "Cu&t\tCtrl+X"
-msgstr "&Taglia\tCtrl+X"
+msgid "Cu&t"
+msgstr "&Taglia"
#: Menus.cpp:420
-msgid "Spl&it Cut\tCtrl+Alt+X"
+msgid "Spl&it Cut"
msgstr ""
#: ../src/Menus.cpp:253
-msgid "&Copy\tCtrl+C"
-msgstr "&Copia\tCtrl+C"
+msgid "&Copy"
+msgstr "&Copia"
#: ../src/Menus.cpp:254
-msgid "&Paste\tCtrl+V"
-msgstr "Incolla\tCtrl+V"
+msgid "&Paste"
+msgstr "Incolla"
#: Menus.cpp:426
-msgid "Tri&m\tCtrl+T"
+msgid "Tri&m"
msgstr ""
#: ../src/Menus.cpp:260
-msgid "&Delete\tCtrl+K"
-msgstr "Elimina\tCtrl+K"
+msgid "&Delete"
+msgstr "Elimina"
#: Menus.cpp:429
-msgid "Split D&elete\tCtrl+Alt+K"
+msgid "Split D&elete"
msgstr ""
#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
+msgid "Silence Audi&o"
msgstr ""
#: Menus.cpp:432
-msgid "Sp&lit\tCtrl+I"
+msgid "Sp&lit"
msgstr ""
#: Menus.cpp:342
-msgid "Split Ne&w\tCtrl+Alt+I"
+msgid "Split Ne&w"
msgstr ""
#: Menus.cpp:442
-msgid "&Join\tCtrl+J"
+msgid "&Join"
msgstr ""
#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
+msgid "Detac&h at Silences"
msgstr ""
#: Menus.cpp:445
-msgid "Duplic&ate\tCtrl+D"
+msgid "Duplic&ate"
msgstr ""
#: Menus.cpp:400 Menus.cpp:639
@@ -1574,47 +1619,32 @@ msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:460
-msgid "&Cut\tAlt+X"
+msgid "&Cut"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:465
-msgid "&Split Cut\tShift+Alt+X"
+msgid "&Split Cut"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:470
-msgid "Co&py\tShift+Alt+C"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:476
-msgid "&Delete\tAlt+K"
+msgid "Co&py"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:481
-msgid "Sp&lit Delete\tShift+Alt+K"
+msgid "Sp&lit Delete"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:486
-msgid "Sile&nce\tAlt+L"
+msgid "Sile&nce"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:492
-msgid "Spli&t\tAlt+I"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:497
-msgid "&Join\tAlt+J"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
+msgid "Spli&t"
msgstr ""
#: Menus.cpp:456
@@ -1622,33 +1652,33 @@ msgid "&Select"
msgstr ""
#: ../src/Menus.cpp:269
-msgid "&All\tCtrl+A"
-msgstr "Tutto\tCtrl+&A"
+msgid "&All"
+msgstr "Tutto"
#: Menus.cpp:415
-msgid "&None\tCtrl+Shift+A"
+msgid "&None"
msgstr ""
#: Menus.cpp:462
-msgid "&Left at Playback Position\t["
+msgid "&Left at Playback Position"
msgstr ""
#: Menus.cpp:463
-msgid "&Right at Playback Position\t]"
+msgid "&Right at Playback Position"
msgstr ""
#: Menus.cpp:467
-msgid "Track &Start to Cursor\tShift+J"
+msgid "Track &Start to Cursor"
msgstr ""
#: Menus.cpp:468
-msgid "Cursor to Track &End\tShift+K"
+msgid "Cursor to Track &End"
msgstr ""
#: Menus.cpp:525
#, fuzzy
-msgid "Find &Zero Crossings\tZ"
-msgstr "Trova Incroci con Zero\tZ"
+msgid "Find &Zero Crossings"
+msgstr "Trova Incroci con Zero"
#: Menus.cpp:476
msgid "Mo&ve Cursor"
@@ -1665,11 +1695,11 @@ msgid "to Selection En&d"
msgstr "alla fine della selezione"
#: Menus.cpp:483
-msgid "to Track &Start\tJ"
+msgid "to Track &Start"
msgstr ""
#: Menus.cpp:484
-msgid "to Track &End\tK"
+msgid "to Track &End"
msgstr ""
#: Menus.cpp:491
@@ -1692,29 +1722,8 @@ msgstr ""
msgid "&Unlock"
msgstr ""
-#: ../src/Menus.cpp:311
-msgid "Turn Snap-To On"
-msgstr "Attiva Griglia"
-
-#: ../src/Menus.cpp:312
-msgid "Turn Snap-To Off"
-msgstr "Disattiva Griglia"
-
-#: ../src/Menus.cpp:313
-msgid "Turn Grid Snap On"
-msgstr "Attiva l'Allineamento alla Griglia"
-
-#: ../src/Menus.cpp:314
-msgid "Turn Grid Snap Off"
-msgstr "Disattiva l'Allineamento alla Griglia"
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr ""
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
+msgid "Pre&ferences..."
msgstr ""
#: ../src/Menus.cpp:345
@@ -1722,35 +1731,35 @@ msgid "&View"
msgstr "&Visualizza"
#: ../src/Menus.cpp:347
-msgid "Zoom &In\tCtrl+1"
-msgstr "Zoom Avant&i\tCtrl+1"
+msgid "Zoom &In"
+msgstr "Zoom Avant&i"
#: ../src/Menus.cpp:350
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "Zoom &Normale\tCtrl+2"
+msgid "Zoom &Normal"
+msgstr "Zoom &Normale"
#: ../src/Menus.cpp:351
-msgid "Zoom &Out\tCtrl+3"
-msgstr "Zoom Indietr&o\tCtrl+3"
+msgid "Zoom &Out"
+msgstr "Zoom Indietr&o"
#: ../src/Menus.cpp:354
-msgid "&Fit in Window\tCtrl+F"
-msgstr "Adatta alla &Finestra\tCtrl+F"
+msgid "&Fit in Window"
+msgstr "Adatta alla &Finestra"
#: ../src/Menus.cpp:355
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "Adatta &Verticalmente\tCtrl+Shift+F"
+msgid "Fit &Vertically"
+msgstr "Adatta &Verticalmente"
#: ../src/Menus.cpp:356
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "Ingrandisci la Sele&zione\tCtrl+E"
+msgid "&Zoom to Selection"
+msgstr "Ingrandisci la Sele&zione"
#: Menus.cpp:603
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
+msgid "&Collapse All Tracks"
msgstr ""
#: Menus.cpp:604
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
+msgid "E&xpand All Tracks"
msgstr ""
#: Menus.cpp:551
@@ -1812,39 +1821,39 @@ msgid "T&ransport"
msgstr ""
#: Menus.cpp:591
-msgid "Play\tSpace"
+msgid "Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
+msgid "&Loop Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Pause\tP"
+msgid "&Pause"
msgstr ""
#: Menus.cpp:596
-msgid "&Stop\tSpace"
+msgid "&Stop"
msgstr ""
#: ../src/Menus.cpp:569
-msgid "Skip to Start\tHome"
-msgstr "Vai all'Inizio\tHome"
+msgid "Skip to Start"
+msgstr "Vai all'Inizio"
#: ../src/Menus.cpp:570
-msgid "Skip to End\tEnd"
-msgstr "Vai alla Fine\tFine"
+msgid "Skip to End"
+msgstr "Vai alla Fine"
#: Menus.cpp:600
-msgid "&Record\tR"
+msgid "&Record"
msgstr ""
#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
+msgid "&Timer Record..."
msgstr ""
#: Menus.cpp:604
-msgid "Append Record\tShift+R"
+msgid "Append Record"
msgstr ""
#: Menus.cpp:607
@@ -1872,7 +1881,7 @@ msgid "Add &New"
msgstr ""
#: Menus.cpp:643
-msgid "&Audio Track\tCtrl+Shift+N"
+msgid "&Audio Track"
msgstr ""
#: Menus.cpp:644
@@ -1889,7 +1898,7 @@ msgid "Mi&x and Render"
msgstr ""
#: Menus.cpp:564
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
+msgid "Mix and Render to New Track"
msgstr ""
#: Menus.cpp:662
@@ -1901,11 +1910,11 @@ msgid "Remo&ve Tracks"
msgstr "Rimuo&vi Tracce"
#: Menus.cpp:667
-msgid "&Mute All Tracks\tCtrl+U"
+msgid "&Mute All Tracks"
msgstr ""
#: Menus.cpp:668
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
+msgid "&UnMute All Tracks"
msgstr ""
#: ../src/Menus.cpp:405
@@ -1956,19 +1965,18 @@ msgstr ""
msgid "Synchronize MIDI with Audio"
msgstr ""
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
+#: Menus.cpp:686
+msgid "&Link Audio and Label Tracks"
msgstr ""
-#: Menus.cpp:705
-#, fuzzy
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "Aggiungi un'Etichetta alla Selezione\tCtrl+B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr ""
#: Menus.cpp:706
#, fuzzy
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "Aggiungi un'Etichetta al punto di riproduzione\tCtrl+B"
+msgid "Add Label At &Playback Position"
+msgstr "Aggiungi un'Etichetta al punto di riproduzione"
#: Menus.cpp:716
msgid "S&ort tracks"
@@ -1994,14 +2002,14 @@ msgstr ""
msgid "Effe&ct"
msgstr "Effetti"
-#: ../src/Menus.cpp:468
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "Ripeti l'Ultimo Effetto\tCtrl+R"
-
#: ../src/Menus.cpp:494
msgid "&Analyze"
msgstr "&Analizza"
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
+
#: Menus.cpp:692
msgid "Plot Spectrum..."
msgstr ""
@@ -2019,8 +2027,8 @@ msgstr ""
msgid "&Show Welcome Message..."
msgstr ""
-#: Menus.cpp:736
-msgid "&Index..."
+#: Menus.cpp:958
+msgid "&Help..."
msgstr ""
#: Menus.cpp:959
@@ -2039,181 +2047,149 @@ msgstr "Avvia P&rove di Sistema..."
msgid "&Audio Device Info..."
msgstr ""
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
msgstr ""
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
msgstr ""
#: ../src/Menus.cpp:549
-msgid "Selection Tool\tF1"
-msgstr "Strumento Selezione\tF1"
+msgid "Selection Tool"
+msgstr "Strumento Selezione"
#: ../src/Menus.cpp:550
-msgid "Envelope Tool\tF2"
-msgstr "Strumento Inviluppo\tF2"
+msgid "Envelope Tool"
+msgstr "Strumento Inviluppo"
#: ../src/Menus.cpp:551
-msgid "Draw Tool\tF3"
-msgstr "Strumento Disegno\tF3"
+msgid "Draw Tool"
+msgstr "Strumento Disegno"
#: ../src/Menus.cpp:552
-msgid "Zoom Tool\tF4"
-msgstr "Strumento Zoom\tF4"
+msgid "Zoom Tool"
+msgstr "Strumento Zoom"
#: ../src/Menus.cpp:553
-msgid "Time Shift Tool\tF5"
-msgstr "Strumento di Spostamento Temporale\tF5"
+msgid "Time Shift Tool"
+msgstr "Strumento di Spostamento Temporale"
#: ../src/Menus.cpp:554
-msgid "Multi Tool\tF6"
-msgstr "Modalità Multi-Strumento\tF6"
+msgid "Multi Tool"
+msgstr "Modalità Multi-Strumento"
#: ../src/Menus.cpp:556
-msgid "Next Tool\tD"
-msgstr "Strumento successivo\tD"
+msgid "Next Tool"
+msgstr "Strumento successivo"
#: ../src/Menus.cpp:557
-msgid "Previous Tool\tA"
-msgstr "Strumento Precedente\tA"
+msgid "Previous Tool"
+msgstr "Strumento Precedente"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
-msgstr ""
-
-#: ../src/Menus.cpp:560
-msgid "Stop\tS"
-msgstr "Stop\tS"
-
-#: ../src/Menus.cpp:561
-msgid "Pause\tP"
-msgstr "Pausa\tP"
-
-#: ../src/Menus.cpp:562
-msgid "Record\tR"
-msgstr "Registra\tR"
-
-#: Menus.cpp:999
-msgid "Record Append\tShift+R"
+msgid "Play/Stop"
msgstr ""
#: Menus.cpp:1001
-msgid "Play/Stop and Set Cursor\tShift+A"
+msgid "Play/Stop and Set Cursor"
msgstr ""
#: ../src/Menus.cpp:564
-msgid "Play One Second\t1"
-msgstr "Esegui Un Secondo\t1"
+msgid "Play One Second"
+msgstr "Esegui Un Secondo"
#: ../src/Menus.cpp:565
-msgid "Play To Selection\tB"
-msgstr "Play To Selection\tB"
-
-#: ../src/Menus.cpp:566
-msgid "Play Looped\tL"
-msgstr "Esegui in loop\tL"
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
+msgid "Play To Selection"
+msgstr "Play To Selection"
#: Menus.cpp:873
-msgid "Play Cut Preview\tC"
+msgid "Play Cut Preview"
msgstr ""
#: ../src/Menus.cpp:572
-msgid "Selection to Start\tShift+Home"
-msgstr "Seleziona dall'Inizio\tShift+Home"
+msgid "Selection to Start"
+msgstr "Seleziona dall'Inizio"
#: ../src/Menus.cpp:573
-msgid "Selection to End\tShift+End"
-msgstr "Seleziona fino alla fine\tShift+End"
+msgid "Selection to End"
+msgstr "Seleziona fino alla fine"
#: ../src/Menus.cpp:575
-msgid "DeleteKey\tBackspace"
-msgstr "TastoElimina\tBackSpace"
+msgid "DeleteKey"
+msgstr "TastoElimina"
#: ../src/Menus.cpp:580
-msgid "DeleteKey2\tDelete"
-msgstr "TastoElimina2\tDelete"
+msgid "DeleteKey2"
+msgstr "TastoElimina2"
-#: Menus.cpp:892
-msgid "Seek left short period during playback\tLeft"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
msgstr ""
-#: Menus.cpp:893
-msgid "Seek right short period during playback\tRight"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
msgstr ""
-#: Menus.cpp:894
-msgid "Seek left long period during playback\tShift+Left"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
msgstr ""
-#: Menus.cpp:895
-msgid "Seek right long period during playback\tShift+Right"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
msgstr ""
#: Menus.cpp:899
-msgid "Move Focus to Previous Track\tUp"
+msgid "Move Focus to Previous Track"
msgstr ""
-#: Menus.cpp:900
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
msgstr ""
#: Menus.cpp:901
-msgid "Move Focus to Next Track\tDown"
+msgid "Move Focus to Next Track"
msgstr ""
-#: Menus.cpp:902
-msgid "Move Focus to Next and Change Selection\tShift+Down"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
msgstr ""
#: Menus.cpp:903
-msgid "Toggle Focused Track\tReturn"
-msgstr ""
-
-#: Menus.cpp:904
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr ""
-
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
+msgid "Toggle Focused Track"
msgstr ""
#: ../src/Menus.cpp:585
-msgid "Cursor Left\tLeft"
-msgstr "Cursore Sinistro\tSinistro"
+msgid "Cursor Left"
+msgstr "Cursore Sinistro"
#: ../src/Menus.cpp:586
-msgid "Cursor Right\tRight"
-msgstr "Cursore Destro\tDestro"
+msgid "Cursor Right"
+msgstr "Cursore Destro"
#: Menus.cpp:820
-msgid "Cursor Short Jump Left\t,"
+msgid "Cursor Short Jump Left"
msgstr ""
#: Menus.cpp:821
-msgid "Cursor Short Jump Right\t."
+msgid "Cursor Short Jump Right"
msgstr ""
#: Menus.cpp:822
-msgid "Cursor Long Jump Left\tShift+,"
+msgid "Cursor Long Jump Left"
msgstr ""
#: Menus.cpp:823
-msgid "Cursor Long Jump Right\tShift+."
+msgid "Cursor Long Jump Right"
msgstr ""
#: ../src/Menus.cpp:587
-msgid "Selection Extend Left\tShift+Left"
-msgstr "Estendi la Selezione a Sinistra\tShift+Freccia Sinistra"
+msgid "Selection Extend Left"
+msgstr "Estendi la Selezione a Sinistra"
#: ../src/Menus.cpp:588
-msgid "Selection Extend Right\tShift+Right"
-msgstr "Estendi la Selezione a Destra\tShift+Freccia Destra"
+msgid "Selection Extend Right"
+msgstr "Estendi la Selezione a Destra"
#: Menus.cpp:828
msgid "Set (or Extend) Left Selection"
@@ -2224,51 +2200,51 @@ msgid "Set (or Extend) Right Selection"
msgstr ""
#: ../src/Menus.cpp:589
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "Contrai la Selezione a Sinistra\tCtrl+Shift+Freccia Destra"
+msgid "Selection Contract Left"
+msgstr "Contrai la Selezione a Sinistra"
#: ../src/Menus.cpp:590
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "Contrai la Selezione a Destra\tCtrl+Shift+Freccia Sinistra"
+msgid "Selection Contract Right"
+msgstr "Contrai la Selezione a Destra"
#: Menus.cpp:916
-msgid "Change pan on focused track\tShift+P"
+msgid "Change pan on focused track"
msgstr ""
#: Menus.cpp:917
-msgid "Pan left on focused track\tAlt+Shift+Left"
+msgid "Pan left on focused track"
msgstr ""
#: Menus.cpp:918
-msgid "Pan right on focused track\tAlt+Shift+Right"
+msgid "Pan right on focused track"
msgstr ""
#: Menus.cpp:919
-msgid "Change gain on focused track\tShift+G"
+msgid "Change gain on focused track"
msgstr ""
#: Menus.cpp:920
-msgid "Increase gain on focused track\tAlt+Shift+Up"
+msgid "Increase gain on focused track"
msgstr ""
#: Menus.cpp:921
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
+msgid "Decrease gain on focused track"
msgstr ""
#: Menus.cpp:922
-msgid "Open menu on focused track\tShift+M"
+msgid "Open menu on focused track"
msgstr ""
#: Menus.cpp:923
-msgid "Mute/Unmute focused track\tShift+U"
+msgid "Mute/Unmute focused track"
msgstr ""
#: Menus.cpp:924
-msgid "Solo/Unsolo focused track\tShift+S"
+msgid "Solo/Unsolo focused track"
msgstr ""
#: Menus.cpp:925
-msgid "Close focused track\tShift+C"
+msgid "Close focused track"
msgstr ""
#: Menus.cpp:845
@@ -2280,7 +2256,35 @@ msgid "Snap To Off"
msgstr ""
#: Menus.cpp:1071
-msgid "Full screen on/off\tF11"
+msgid "Full screen on/off"
+msgstr ""
+
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr ""
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr ""
+
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr ""
+
+#: Menus.cpp:1074
+msgid "Adjust input source"
msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
@@ -2341,8 +2345,8 @@ msgstr "Devi prima selezionare una traccia."
#: ../src/Menus.cpp:1248
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "Ripeti %s\t Ctrl+R"
+msgid "Repeat %s"
+msgstr "Ripeti %s"
#: ../src/Menus.cpp:1352
msgid "There are no label tracks to export."
@@ -2549,15 +2553,6 @@ msgstr ""
msgid "Split at labels"
msgstr "Dividi come etichette"
-#: ../src/Menus.cpp:2369
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "Per disegnare lo spettro, tutte le tracce selezionate devono avere la stessa frequenza di campionamento."
-
-#: ../src/Menus.cpp:2395
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "E' stato selezionato troppo audio: saranno analizzati solo i primi %.1f secondi."
-
#: ../src/Menus.cpp:2660
#, c-format
msgid "Imported labels from '%s'"
@@ -2777,6 +2772,10 @@ msgstr "Si
msgid "Print"
msgstr "Stampa"
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr ""
+
#: Project.cpp:573
msgid "Main Mix"
msgstr ""
@@ -2790,8 +2789,7 @@ msgstr ""
msgid "(Recovered)"
msgstr ""
-#: ../src/ControlToolBar.cpp:469 ../src/Project.cpp:1707
-#: ../src/TrackPanel.cpp:1208
+#: ../src/Menus.cpp:562
msgid "Record"
msgstr "Registra"
@@ -2816,8 +2814,8 @@ msgstr ""
msgid "Save changes?"
msgstr "Salvare i cambiamenti?"
-#: Project.cpp:1684
-msgid "All files|*.*|All supported files|"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
msgstr ""
#: ../src/Menus.cpp:2595 ../src/Project.cpp:1738
@@ -2847,6 +2845,17 @@ msgstr ""
msgid "Opening old project file"
msgstr ""
+#: Project.cpp:2073
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr ""
+
#: ../src/Project.cpp:1821 ../src/Project.cpp:1829
msgid "Error opening file"
msgstr "Errore aprendo il file"
@@ -2903,10 +2912,12 @@ msgstr "Questo file
msgid "Can't open project file"
msgstr "Impossibile aprire il file del progetto"
-#: Project.cpp:2314
+#: Project.cpp:2484
#, c-format
msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
msgstr ""
@@ -2926,16 +2937,22 @@ msgstr ""
msgid "Warning empty project"
msgstr ""
-#: Project.cpp:2591
+#: Project.cpp:2792
#, c-format
msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+"is not writable or the disk is full."
msgstr ""
#: ../src/Project.cpp:2148 ../src/Project.cpp:2160
msgid "Error saving project"
msgstr "Errore salvando il progetto"
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
#: ../src/Project.cpp:2200
#, c-format
msgid "Saved %s"
@@ -3094,6 +3111,163 @@ msgstr ""
msgid "32-bit float"
msgstr ""
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
+
+#: ../src/export/ExportMultiple.cpp:600 ../src/prefs/DirectoriesPrefs.cpp:82
+msgid "Choose..."
+msgstr "Scegli..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
+
+#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
+msgid "false"
+msgstr ""
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:82
+msgid "Control"
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:58
+msgid "Mixer"
+msgstr ""
+
+#: toolbars/MeterToolBar.cpp:49
+msgid "Meter"
+msgstr ""
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
+#: toolbars/DeviceToolBar.cpp:54
+msgid "Device"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:81
+msgid "Transcription"
+msgstr ""
+
+#: TrackPanel.cpp:452 TrackPanel.cpp:453
+msgid "Track Panel"
+msgstr ""
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: ../src/export/ExportMultiple.cpp:636
+msgid "Tracks"
+msgstr "Tracce"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
#: Screenshot.cpp:384
msgid "Saved "
msgstr ""
@@ -3102,6 +3276,10 @@ msgstr ""
msgid "Error trying to save file: "
msgstr ""
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
#: Sequence.cpp:732 Sequence.cpp:742 Sequence.cpp:749
msgid "Gap detected in project file\n"
msgstr ""
@@ -3240,6 +3418,10 @@ msgstr ""
msgid "Save Metadata As:"
msgstr ""
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
#: Theme.cpp:629
#, c-format
msgid "Audacity could not write file:\n"
@@ -3312,6 +3494,14 @@ msgstr ""
msgid "Audacity Timer Record"
msgstr ""
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
#: SmartRecordDialog.cpp:223
msgid "Recording start"
msgstr ""
@@ -3351,10 +3541,6 @@ msgstr ""
msgid "Audacity Timer Record - Waiting for Start"
msgstr ""
-#: TrackPanel.cpp:452 TrackPanel.cpp:453
-msgid "Track Panel"
-msgstr ""
-
#: ../src/AStatus.cpp:81 ../src/TrackPanel.cpp:822
#: ../src/prefs/FileFormatPrefs.cpp:105 ../src/prefs/QualityPrefs.cpp:91
msgid "Other..."
@@ -3411,6 +3597,10 @@ msgstr "Crea una traccia stereo"
msgid "Split Stereo Track"
msgstr "Dividi traccia stereo"
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr ""
+
#: ../src/TrackPanel.cpp:846
msgid "Set Sample Format"
msgstr "Imposta la Risoluzione"
@@ -3605,14 +3795,6 @@ msgstr ""
msgid "Adjusted gain"
msgstr ""
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr ""
-
#: TrackPanel.cpp:5428
msgid "Can't delete track with active audio"
msgstr ""
@@ -3647,6 +3829,11 @@ msgstr "Canale"
msgid "Split stereo track '%s'"
msgstr "Dividi la traccia stereo '%s'"
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
#: ../src/TrackPanel.cpp:4153
#, c-format
msgid "Made '%s' a stereo track"
@@ -3723,6 +3910,10 @@ msgstr ""
msgid "Face size"
msgstr ""
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr ""
+
#: ../src/TrackPanel.cpp:4701
msgid "Mute"
msgstr "Muto"
@@ -3801,8 +3992,9 @@ msgstr "Plugins da 1 a %i"
msgid "Plugins %i to %i"
msgstr "Plugins da %i a %i"
-#: commands/CommandManager.cpp:857
-msgid "Disallowed for some reason. Try selecting some audio first?"
+#: commands/CommandManager.cpp:923
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
msgstr ""
#: commands/CommandManager.cpp:724
@@ -4257,12 +4449,11 @@ msgstr ""
msgid "Decay Time"
msgstr ""
-#: effects/Compressor.cpp:504
-msgid "Normalize to 0dB after compressing"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
msgstr ""
#: effects/Compressor.cpp:563
-#, c-format
#, fuzzy
msgid "Threshold %d dB"
msgstr "Soglia: %d dB"
@@ -4293,7 +4484,6 @@ msgid "%.1f:1"
msgstr ""
#: effects/Compressor.cpp:575
-#, c-format
#, fuzzy
msgid "Attack Time %.1f secs"
msgstr "Tempo d'attacco: %.1f secondi"
@@ -4316,6 +4506,10 @@ msgstr "Compressore..."
msgid "Applying Dynamic Range Compression..."
msgstr "Sto applicando il Compressore della Gamma Dinamica..."
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
msgstr ""
@@ -4335,19 +4529,6 @@ msgid "Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr ""
-
#: effects/Contrast.cpp:231
msgid "Contrast Analyzer"
msgstr ""
@@ -4381,6 +4562,11 @@ msgstr ""
msgid "Foreground end time"
msgstr ""
+#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
+#: effects/Contrast.cpp:289
+msgid "Measured"
+msgstr ""
+
#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
msgid "Use selection"
msgstr ""
@@ -4425,16 +4611,8 @@ msgstr ""
msgid "Help for WCAG2 Audio Contrast Analyzer"
msgstr ""
-#: toolbars/ControlToolBar.cpp:82
-msgid "Control"
-msgstr ""
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
msgstr ""
#: effects/Contrast.cpp:328 effects/Contrast.cpp:336 effects/Contrast.cpp:344
@@ -4545,18 +4723,6 @@ msgstr ""
msgid "Data gathered"
msgstr ""
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr ""
-
#: effects/DtmfGen.cpp:47
msgid "DTMF Tone Generator"
msgstr ""
@@ -4681,6 +4847,10 @@ msgstr ""
msgid "custom"
msgstr ""
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr ""
+
#: effects/Equalization.cpp:971
msgid "Equalization, by Martyn Shaw && Mitch Golden"
msgstr ""
@@ -4881,10 +5051,6 @@ msgstr ""
msgid "Analyser"
msgstr ""
-#: toolbars/MixerToolBar.cpp:58
-msgid "Mixer"
-msgstr ""
-
#: effects/LoadEffects.cpp:116
msgid "Simulator"
msgstr ""
@@ -5120,10 +5286,6 @@ msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr ""
#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
-msgid "false"
-msgstr ""
-
-#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
msgid "true"
msgstr ""
@@ -5472,20 +5634,37 @@ msgstr ""
msgid "Truncate Silence"
msgstr ""
-#: effects/TruncSilence.cpp:346
-msgid "Max silence duration:"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr ""
+
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
msgstr ""
#: prefs/AudioIOPrefs.cpp:175 prefs/AudioIOPrefs.cpp:178
msgid "milliseconds"
msgstr ""
+#: effects/TruncSilence.cpp:346
+msgid "Max silence duration:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ""
+
#: effects/TruncSilence.cpp:351
msgid "Threshold for silence:"
msgstr ""
-#: effects/TruncSilence.cpp:375
-msgid " Duration must be at least 1 millisecond"
+#: effects/TruncSilence.cpp:506
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
msgstr ""
#: BatchCommands.cpp:236 effects/TruncSilence.cpp:84 effects/TruncSilence.h:29
@@ -5496,17 +5675,56 @@ msgstr ""
msgid "Truncating Silence..."
msgstr ""
-#: ../src/effects/VST/VSTEffect.cpp:180
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "Spiacente, gli effetti non si può applicare sulle tracce stereo quando i canali individuali non corrispondono."
+#: ../src/effects/ladspa/LadspaEffect.cpp:452
+msgid "Effect Settings"
+msgstr "Impostazioni Effetti"
+
+#: ../src/effects/ladspa/LadspaEffect.cpp:435
+#: ../src/effects/ladspa/LadspaEffect.cpp:443
+#: ../src/prefs/QualityPrefs.cpp:160
+msgid "None"
+msgstr "Nessuno"
-#: ../src/effects/VST/VSTEffect.cpp:196
-msgid "Can't process replacing"
-msgstr "Impossibile sostituire"
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
-#: ../src/effects/VST/VSTEffect.cpp:410
-msgid "VST Plug-in parameters:"
-msgstr "parametri del VST Plug-in:"
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr ""
#: ../src/effects/Wahwah.cpp:41
#, c-format
@@ -5554,20 +5772,10 @@ msgstr "Sto applicando l'Effetto: %s"
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr ""
-#: ../src/effects/ladspa/LadspaEffect.cpp:435
-#: ../src/effects/ladspa/LadspaEffect.cpp:443
-#: ../src/prefs/QualityPrefs.cpp:160
-msgid "None"
-msgstr "Nessuno"
-
#: ../src/effects/ladspa/LadspaEffect.cpp:437
msgid "Author: "
msgstr "Autore: "
-#: ../src/effects/ladspa/LadspaEffect.cpp:452
-msgid "Effect Settings"
-msgstr "Impostazioni Effetti"
-
#: ../src/effects/Silence.cpp:127 ../src/effects/ToneGen.cpp:306
msgid "Length (seconds)"
msgstr "Durata (secondi)"
@@ -5759,9 +5967,21 @@ msgstr "Esporta l'intero progetto usando un encoder da linea di comando"
msgid "Command Output"
msgstr ""
-#: export/ExportFFmpeg.cpp:59
+#: export/ExportFFmpeg.cpp:61
msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
#: export/ExportFFmpeg.cpp:394
@@ -5829,6 +6049,10 @@ msgstr ""
msgid "AAC Export Setup"
msgstr ""
+#: export/ExportOGG.cpp:86
+msgid "Quality:"
+msgstr ""
+
#: export/ExportFFmpegDialogs.cpp:217
msgid "Specify AMR-NB Options"
msgstr ""
@@ -5962,12 +6186,8 @@ msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n
"Recommended - 192000"
msgstr ""
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr ""
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid "Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
@@ -5986,10 +6206,10 @@ msgstr ""
msgid "Cutoff Bandwidth:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:947
+#: export/ExportFFmpegDialogs.cpp:936
msgid "Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:949
@@ -6178,12 +6398,12 @@ msgstr ""
msgid "AC3 Files (FFmpeg)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:56
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:57
@@ -6294,6 +6514,17 @@ msgstr ""
msgid "FLAC Files"
msgstr ""
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
#: export/ExportFLAC.cpp:93
msgid "Exporting the selected audio as FLAC"
msgstr ""
@@ -6548,10 +6779,6 @@ msgstr ""
msgid "Export location:"
msgstr "Percorso del file da esportare:"
-#: ../src/export/ExportMultiple.cpp:600 ../src/prefs/DirectoriesPrefs.cpp:82
-msgid "Choose..."
-msgstr "Scegli..."
-
#: export/ExportMultiple.cpp:205
msgid "Create"
msgstr ""
@@ -6576,10 +6803,6 @@ msgstr "Nome del primo file:"
msgid "First file name"
msgstr ""
-#: ../src/export/ExportMultiple.cpp:636
-msgid "Tracks"
-msgstr "Tracce"
-
#: ../src/export/ExportMultiple.cpp:646
msgid "Name files:"
msgstr "Nomi dei file:"
@@ -6613,25 +6836,44 @@ msgstr ""
msgid "Choose a location to save the exported files"
msgstr "Scegli dove salvare i file esportati"
-#: export/ExportMultiple.cpp:480
+#: export/ExportMultiple.cpp:524
#, c-format
-msgid "\"%s\" doesn't exist.\n"
-"\n"
-"Would you like to create it?"
+msgid "Successfully exported the following %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:637 export/ExportMultiple.cpp:772
-msgid "Edit metadata"
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:527
+#, c-format
+msgid "Export stopped after exporting the following %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:590
+#: export/ExportMultiple.cpp:528
#, c-format
-msgid "Successfully exported %d file(s)."
+msgid "Something went really wrong after exporting the following %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:597
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr ""
+
+#: export/ExportMultiple.cpp:480
#, c-format
-msgid "Something went wrong after exporting %d file(s)."
+msgid "\"%s\" doesn't exist.\n"
+"\n"
+"Would you like to create it?"
+msgstr ""
+
+#: export/ExportMultiple.cpp:637 export/ExportMultiple.cpp:772
+msgid "Edit metadata"
msgstr ""
#: export/ExportMultiple.cpp:881
@@ -6715,7 +6957,6 @@ msgstr ""
#. i18n-hint: %s will be the error message from libsndfile
#: export/ExportPCM.cpp:436
-#, c-format
#, fuzzy
msgid "Error (file may not have been written): %s"
msgstr "Errore (il file potrebbe non essere stato salvato): %s"
@@ -6881,6 +7122,10 @@ msgstr ""
msgid "FLAC files"
msgstr ""
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr ""
+
#: ../src/import/ImportLOF.cpp:151 ../src/import/ImportLOF.cpp:177
msgid "List of Files in basic text format"
msgstr "Lista dei File in formato testo base"
@@ -7039,128 +7284,57 @@ msgstr ""
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr ""
-#: ../src/prefs/PrefsDialog.cpp:84
-msgid "Audio I/O"
-msgstr "Audio I/O"
-
-#: ../src/prefs/AudioIOPrefs.cpp:212
-msgid "1 (Mono)"
-msgstr "1 (Mono)"
-
-#: ../src/prefs/AudioIOPrefs.cpp:213
-msgid "2 (Stereo)"
-msgstr "2 (Stereo)"
-
-#: ../src/prefs/AudioIOPrefs.cpp:80
-msgid "Playback"
-msgstr "Riproduzione"
-
-#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
-#: toolbars/DeviceToolBar.cpp:54
-msgid "Device"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:122
-msgid "Using:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:123
-msgid "Portaudio v"
-msgstr ""
-
-#: ../src/prefs/AudioIOPrefs.cpp:148
-msgid "Recording"
-msgstr "Registrazione"
-
-#: prefs/AudioIOPrefs.cpp:139
-msgid "Channels"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:145
-msgid "Playthrough"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:194
-msgid "Effects Preview"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:165
-msgid "Length of preview:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:158
-msgid "Cut Preview"
+#: prefs/BatchPrefs.cpp:53 prefs/BatchPrefs.cpp:54
+msgid "Batch"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:173
-msgid "Preview before cut region:"
+#: prefs/BatchPrefs.cpp:75 prefs/GUIPrefs.cpp:70
+msgid "Behaviors"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:175
-msgid "Preview after cut region:"
+#: prefs/BatchPrefs.cpp:80
+msgid "&Don't apply effects in batch mode"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:168
-msgid "Latency"
+#: prefs/BatchPrefs.cpp:83
+msgid "Cl&eanSpeech Mode (Customized GUI)"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:195
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:198
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr ""
+#: ../src/prefs/PrefsDialog.cpp:89
+msgid "Interface"
+msgstr "Interfaccia"
-#: prefs/AudioIOPrefs.cpp:197
-msgid "Seek Time when playing"
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:187
-msgid "Short period:"
+#: prefs/AudioIOPrefs.cpp:122
+msgid "Using:"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:189
-msgid "Long period:"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:80
+msgid "Playback"
+msgstr "Riproduzione"
-#: prefs/BatchPrefs.cpp:53 prefs/BatchPrefs.cpp:54
-msgid "Batch"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:148
+msgid "Recording"
+msgstr "Registrazione"
-#: prefs/BatchPrefs.cpp:75 prefs/GUIPrefs.cpp:70
-msgid "Behaviors"
+#: prefs/AudioIOPrefs.cpp:139
+msgid "Channels"
msgstr ""
-#: prefs/BatchPrefs.cpp:80
-msgid "&Don't apply effects in batch mode"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:212
+msgid "1 (Mono)"
+msgstr "1 (Mono)"
-#: prefs/BatchPrefs.cpp:83
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:213
+msgid "2 (Stereo)"
+msgstr "2 (Stereo)"
#: ../src/prefs/PrefsDialog.cpp:88 ../src/prefs/PrefsDialog.cpp:216
msgid "Directories"
@@ -7178,34 +7352,31 @@ msgstr "Percorso:"
msgid "Free Space:"
msgstr "Spazio libero:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr ""
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr ""
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
+#: prefs/DirectoriesPrefs.cpp:110
+msgid "Audio cache"
msgstr ""
#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
+msgid "Play and/or record using RAM (useful for slow drives)"
msgstr ""
-#: prefs/DirectoriesPrefs.cpp:110
-msgid "Audio cache"
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
msgstr ""
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
#: ../src/prefs/DirectoriesPrefs.cpp:135
msgid "Choose a location to place the temporary directory"
msgstr "Seleziona un percorso per la cartella temporanea"
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: ../src/prefs/DirectoriesPrefs.cpp:181
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -7224,220 +7395,141 @@ msgstr "Impossibile scrivere nella cartella %s"
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "I cambiamenti alla cartella temporanea non saranno effettuati fino a che Audacity non sarà riavviato"
-#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
-msgid "Import / Export"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:84
-msgid "MP3 Export Library"
-msgstr ""
-
-#: ../src/prefs/FileFormatPrefs.cpp:180
-msgid "MP3 Library Version:"
-msgstr "Versione libreria MP3:"
-
-#: prefs/FileFormatPrefs.cpp:93
-msgid "MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:98
-msgid "LAME MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
-msgid "&Download"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:136
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:137
-msgid "When importing audio files"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:140
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
+#: prefs/GUIPrefs.cpp:42
+msgid "In Browser"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:141
-msgid "&Read uncompressed audio files directly from the original (faster)"
+#: prefs/GUIPrefs.cpp:43
+msgid "From Internet"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:143
-msgid "&Normalize all tracks in project"
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:132
-msgid "When saving a project that depends on other audio files"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:87
-msgid "Always © all audio into project (safest)"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:88
-msgid "&Do not copy any audio"
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:135
-msgid "&Ask user"
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:93
-msgid "When exporting tracks to an audio file"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:144
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:97
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
-msgstr ""
-
-#: prefs/BatchPrefs.cpp:91
-msgid "S&how Metadata Editor prior to export step"
-msgstr ""
-
-#: ../src/prefs/PrefsDialog.cpp:89
-msgid "Interface"
-msgstr "Interfaccia"
+#: ../src/prefs/GUIPrefs.cpp:150
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 dB (profondità ampiezza minima)"
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:157
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 dB (PCM range of 8 bit samples)"
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
+#: prefs/GUIPrefs.cpp:143
+msgid "-60 dB (PCM range of 10 bit samples)"
msgstr ""
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:164
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 dB (PCM range of 16 bit samples)"
-#: prefs/GUIPrefs.cpp:72
-msgid "&Update display while playing"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:171
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 dB (approssimativamente il limite dell'udito umano)"
-#: prefs/GUIPrefs.cpp:96
-msgid "Cl&osing last window quits Audacity"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:178
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB (PCM range of 24 bit samples)"
-#: prefs/GUIPrefs.cpp:76
-msgid "Enable &dragging of left and right selection edges"
+#: prefs/SpectrumPrefs.cpp:96
+msgid "Display"
msgstr ""
#: prefs/GUIPrefs.cpp:100
msgid "Er&gonomic order of audio I/O buttons"
msgstr ""
-#: prefs/GUIPrefs.cpp:80
-msgid "Automatically &fit tracks vertically zoomed"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
msgstr ""
-#: prefs/GUIPrefs.cpp:104
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
msgstr ""
-#: prefs/GUIPrefs.cpp:90
-msgid "Editing a &clip can move other clips"
+#: prefs/GUIPrefs.cpp:167
+msgid "Help:"
msgstr ""
-#: prefs/GUIPrefs.cpp:88
-msgid "&Select all audio in project, if none selected"
+#: prefs/GUIPrefs.cpp:96
+msgid "Cl&osing last window quits Audacity"
msgstr ""
#: prefs/GUIPrefs.cpp:90
msgid "&Beep on completion of longer activities"
msgstr ""
-#: prefs/BatchPrefs.cpp:87 prefs/GUIPrefs.cpp:94
-msgid "Show / Hide"
+#: prefs/GUIPrefs.cpp:126
+msgid "Modes"
msgstr ""
-#: prefs/GUIPrefs.cpp:96
-msgid "Enable cut &lines"
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:98
-msgid "Show warnings about &temp files"
+#: prefs/GUIPrefs.cpp:129
+msgid "Don't a&pply effects in batch mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
+#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
+msgid "Import / Export"
msgstr ""
-#: prefs/GUIPrefs.cpp:122
-msgid "Show &Welcome Message at program start up"
+#: prefs/FileFormatPrefs.cpp:137
+msgid "When importing audio files"
msgstr ""
-#: prefs/GUIPrefs.cpp:126
-msgid "Modes"
+#: prefs/FileFormatPrefs.cpp:140
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
msgstr ""
-#: prefs/GUIPrefs.cpp:129
-msgid "Don't a&pply effects in batch mode"
+#: prefs/FileFormatPrefs.cpp:141
+msgid "&Read uncompressed audio files directly from the original (faster)"
msgstr ""
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
+#: prefs/FileFormatPrefs.cpp:143
+msgid "&Normalize all tracks in project"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:150
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 dB (profondità ampiezza minima)"
-
-#: ../src/prefs/GUIPrefs.cpp:157
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 dB (PCM range of 8 bit samples)"
-
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
+#: prefs/FileFormatPrefs.cpp:93
+msgid "When exporting tracks to an audio file"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:164
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 dB (PCM range of 16 bit samples)"
-
-#: ../src/prefs/GUIPrefs.cpp:171
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 dB (approssimativamente il limite dell'udito umano)"
-
-#: ../src/prefs/GUIPrefs.cpp:178
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB (PCM range of 24 bit samples)"
-
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
+#: prefs/FileFormatPrefs.cpp:144
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
msgstr ""
-#: prefs/GUIPrefs.cpp:164
-msgid "Other interface choices"
+#: prefs/FileFormatPrefs.cpp:97
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
msgstr ""
-#: prefs/GUIPrefs.cpp:167
-msgid "Help:"
+#: prefs/BatchPrefs.cpp:91
+msgid "S&how Metadata Editor prior to export step"
msgstr ""
-#: prefs/GUIPrefs.cpp:168
-msgid "Solo Button:"
+#: prefs/ImportExportPrefs.cpp:84
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
msgstr ""
#: ../src/prefs/PrefsDialog.cpp:90
@@ -7468,17 +7560,22 @@ msgstr "Nota: Premere Cmd+Q provocher
msgid "&Defaults"
msgstr ""
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr ""
+
#: ../src/prefs/KeyConfigPrefs.cpp:79
msgid "Key Combination"
msgstr "Combinazione tasti"
-#: ../src/prefs/KeyConfigPrefs.cpp:159
-msgid "Export Keyboard Shortcuts As:"
-msgstr "Esporta scorciatoie da tastiera come:"
+#: ../src/EditToolBar.cpp:159
+msgid "Undo"
+msgstr "Annulla"
-#: ../src/prefs/KeyConfigPrefs.cpp:174
-msgid "Error saving keyboard shortcuts"
-msgstr "Errore salvando le scorciatoie da tastiera"
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr ""
#: ../src/prefs/KeyConfigPrefs.cpp:188
msgid "Select an XML file containing Audacity keyboard shortcuts..."
@@ -7488,6 +7585,14 @@ msgstr "Seleziona un file XML contenente le scorciatoie da tastiera di Audacity.
msgid "Error loading keyboard shortcuts"
msgstr "Errore caricando le scorciatoie da tastiera"
+#: ../src/prefs/KeyConfigPrefs.cpp:159
+msgid "Export Keyboard Shortcuts As:"
+msgstr "Esporta scorciatoie da tastiera come:"
+
+#: ../src/prefs/KeyConfigPrefs.cpp:174
+msgid "Error saving keyboard shortcuts"
+msgstr "Errore salvando le scorciatoie da tastiera"
+
#: prefs/KeyConfigPrefs.cpp:239
#, c-format
msgid "The keyboard shortcut '%s' is already assigned to:\n"
@@ -7495,9 +7600,61 @@ msgid "The keyboard shortcut '%s' is already assigned to:\n"
"'%s'"
msgstr ""
-#: ../src/EditToolBar.cpp:159
-msgid "Undo"
-msgstr "Annulla"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:84
+msgid "MP3 Export Library"
+msgstr ""
+
+#: ../src/prefs/FileFormatPrefs.cpp:180
+msgid "MP3 Library Version:"
+msgstr "Versione libreria MP3:"
+
+#: prefs/FileFormatPrefs.cpp:93
+msgid "MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:98
+msgid "LAME MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
+msgid "&Download"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:109
+msgid "FFmpeg Library Version:"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
+msgid "FFmpeg Library:"
+msgstr ""
+
+#: ../src/prefs/PrefsDialog.cpp:84
+msgid "Audio I/O"
+msgstr "Audio I/O"
+
+#: prefs/AudioIOPrefs.cpp:123
+msgid "Portaudio v"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:145
+msgid "Playthrough"
+msgstr ""
#: prefs/AudioIOPrefs.cpp:147
#, fuzzy
@@ -7512,6 +7669,10 @@ msgstr ""
msgid "&Software Playthrough (Play new track while recording it)"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:158
+msgid "Cut Preview"
+msgstr ""
+
#: prefs/MidiIOPrefs.cpp:160
msgid "Play before cut region:"
msgstr ""
@@ -7520,6 +7681,10 @@ msgstr ""
msgid "Play after cut region:"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:168
+msgid "Latency"
+msgstr ""
+
#: prefs/AudioIOPrefs.cpp:174
msgid "Audio to buffer:"
msgstr ""
@@ -7532,6 +7697,18 @@ msgstr ""
msgid "Seek Time"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:187
+msgid "Short period:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:189
+msgid "Long period:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:194
+msgid "Effects Preview"
+msgstr ""
+
#: prefs/MidiIOPrefs.cpp:196
msgid "Play when previewing:"
msgstr ""
@@ -7745,10 +7922,62 @@ msgstr "Ctrl-Rotella-ruota"
msgid "Zoom in or out"
msgstr "Zoom avanti o indietro"
+#: prefs/AudioIOPrefs.cpp:165
+msgid "Length of preview:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:173
+msgid "Preview before cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:175
+msgid "Preview after cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:197
+msgid "Seek Time when playing"
+msgstr ""
+
#: ../src/prefs/PrefsDialog.cpp:52
msgid "Audacity Preferences"
msgstr "Preferenze Audacity"
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:132
+msgid "When saving a project that depends on other audio files"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:87
+msgid "Always © all audio into project (safest)"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:88
+msgid "&Do not copy any audio"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:135
+msgid "&Ask user"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr ""
+
#: ../src/prefs/QualityPrefs.cpp:161
msgid "Rectangle"
msgstr "Rectangle"
@@ -7773,44 +8002,44 @@ msgstr "Frequenza di campionamento predefinita:"
msgid "Default Sample Format:"
msgstr "Formato predefinito:"
-#: ../src/prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "Convertitore in tempo reale della frequenza di campionamento:"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:147
-msgid "High-quality sample rate converter:"
-msgstr "Convertitore di alta qualità della frequenza di campionamento:"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+msgid "Sample Rate Converter:"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:171
-msgid "Real-time dither:"
-msgstr "Real-time dither:"
+#: prefs/QualityPrefs.cpp:164
+msgid "Dither"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:186
-msgid "High-quality dither:"
-msgstr "High-quality dither:"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
+#: prefs/AudioIOPrefs.cpp:149
+msgid "Overdub: &Play other tracks while recording new one"
msgstr ""
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
+#: prefs/AudioIOPrefs.cpp:150
+msgid "&Hardware Playthrough: Play new track while recording it"
msgstr ""
-#: prefs/QualityPrefs.cpp:164
-msgid "Dither"
+#: prefs/AudioIOPrefs.cpp:157
+msgid "&Software Playthrough: Play new track while recording or monitoring"
msgstr ""
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
+#: prefs/AudioIOPrefs.cpp:160
+msgid "(uncheck when recording \"stereo mix\")"
msgstr ""
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
msgstr ""
-#: prefs/SmartRecordPrefs.cpp:54 prefs/SmartRecordPrefs.cpp:55
-msgid "Smart Recording"
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
msgstr ""
#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
@@ -7825,18 +8054,54 @@ msgstr ""
msgid "Spectrograms"
msgstr "Spettrogramma"
-#: ../src/prefs/SpectrumPrefs.cpp:70
-msgid "FFT Size"
-msgstr "Dimensione FFT"
-
#: prefs/SpectrumPrefs.cpp:75
msgid "8 - most wideband"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
#: ../src/prefs/SpectrumPrefs.cpp:40
msgid "256 - default"
msgstr "256 - default"
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:107
msgid "32768 - most narrowband"
msgstr ""
@@ -7845,20 +8110,24 @@ msgstr ""
msgid "4096 - most narrowband"
msgstr "4096 - most narrowband"
-#: prefs/SpectrumPrefs.cpp:90
-msgid "Window type:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:125
-msgid "FFT Skip Points"
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:96
-msgid "Display"
+#: prefs/SpectrumPrefs.cpp:93
+msgid "Window type"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:125
+msgid "FFT Skip Points"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:100
-msgid "&Grayscale"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
msgstr ""
#: prefs/SpectrumPrefs.cpp:103
@@ -7869,16 +8138,16 @@ msgstr ""
msgid "Maximum Frequency (Hz):"
msgstr "Frequenza massima (Hz):"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
msgstr ""
#: prefs/SpectrumPrefs.cpp:165
@@ -7889,6 +8158,14 @@ msgstr ""
msgid "Max. Number of Notes (1..128):"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:161
+msgid "&Find Notes"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Quantize Notes"
+msgstr ""
+
#: ../src/prefs/SpectrumPrefs.cpp:148
msgid "The maximum frequency must be an integer"
msgstr "La frequenza massima deve essere un numero intero"
@@ -7905,18 +8182,57 @@ msgstr ""
msgid "Minimum frequency must be at least 0 Hz"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:226 prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
+#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:230
+msgid "The maximum number of notes must be in the range 1..128"
msgstr ""
#: prefs/ThemePrefs.cpp:61 prefs/ThemePrefs.cpp:62
msgid "Theme"
msgstr ""
+#: prefs/ThemePrefs.cpp:123
+msgid "Info"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:91
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#: prefs/ThemePrefs.cpp:90
msgid "Theme Cache - Images && Color"
msgstr ""
@@ -7945,78 +8261,94 @@ msgstr ""
msgid "Load Files"
msgstr ""
-#: prefs/ThemePrefs.cpp:123
-msgid "Info"
+#: prefs/GUIPrefs.cpp:50
+msgid "Simple"
msgstr ""
-#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
+#: prefs/GUIPrefs.cpp:72
+msgid "&Update display while playing"
msgstr ""
-#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
+#: prefs/GUIPrefs.cpp:80
+msgid "Automatically &fit tracks vertically zoomed"
msgstr ""
-#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
+#: prefs/TracksPrefs.cpp:88
+msgid "Default View Mode:"
msgstr ""
-#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:88
+msgid "&Select all audio in project, if none selected"
msgstr ""
-#: ../src/ControlToolBar.cpp:470
-msgid "Pause"
-msgstr "Pausa"
+#: prefs/GUIPrefs.cpp:96
+msgid "Enable cut &lines"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play"
+#: prefs/GUIPrefs.cpp:76
+msgid "Enable &dragging of left and right selection edges"
msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
+#: prefs/GUIPrefs.cpp:104
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
msgstr ""
-#: ../src/ControlToolBar.cpp:471
-msgid "Stop"
-msgstr "Stop"
+#: prefs/GUIPrefs.cpp:90
+msgid "Editing a &clip can move other clips"
+msgstr ""
-#: ../src/ControlToolBar.cpp:467
-msgid "Skip to Start"
-msgstr "Vai all'Inizio"
+#: prefs/GUIPrefs.cpp:168
+msgid "Solo Button:"
+msgstr ""
-#: ../src/ControlToolBar.cpp:472
-msgid "Skip to End"
-msgstr "Vai alla Fine"
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:192
-msgid "Record (Shift for Append Record)"
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
msgstr ""
+#: ../src/Menus.cpp:561
+msgid "Pause"
+msgstr "Pausa"
+
+#: ../src/Menus.cpp:560
+msgid "Stop"
+msgstr "Stop"
+
#: toolbars/ControlToolBar.cpp:195
msgid "Clean Speech"
msgstr ""
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play (Shift for Loop Play)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:192
+msgid "Record (Shift for Append Record)"
+msgstr ""
+
#: toolbars/ControlToolBar.cpp:524 toolbars/ControlToolBar.cpp:776
msgid "Error while opening sound device. "
msgstr ""
@@ -8057,28 +8389,20 @@ msgstr "Zoom Avanti"
msgid "Zoom Out"
msgstr "Zoom Indietro"
-#: ../src/EditToolBar.cpp:170
-msgid "Zoom Toggle"
-msgstr "Pulsante Zoom"
-
-#: toolbars/EditToolBar.cpp:160
-msgid "Fit Selection"
-msgstr ""
-
#: ../src/EditToolBar.cpp:174
msgid "Fit selection in window"
msgstr "Adatta la selezione alla finestra"
-#: toolbars/EditToolBar.cpp:162
-msgid "Fit Project"
-msgstr ""
-
#: ../src/EditToolBar.cpp:176
msgid "Fit project in window"
msgstr "Adatta l'intero progetto alla finestra"
-#: toolbars/MeterToolBar.cpp:49
-msgid "Meter"
+#: toolbars/EditToolBar.cpp:160
+msgid "Fit Selection"
+msgstr ""
+
+#: toolbars/EditToolBar.cpp:162
+msgid "Fit Project"
msgstr ""
#: toolbars/MeterToolBar.cpp:79
@@ -8125,6 +8449,14 @@ msgstr ""
msgid "Input Source"
msgstr ""
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:75
msgid "Selection"
msgstr ""
@@ -8203,30 +8535,6 @@ msgstr "Sinistro=Zoom avanti; Destro=Zoom indietro; Centrale=Normale"
msgid "Click and drag to move a track in time"
msgstr "Clicca e trascina per muovere una traccia nel tempo"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr ""
-
-#: ../src/ControlToolBar.cpp:355
-msgid "Selection Tool"
-msgstr "Strumento Selezione"
-
-#: ../src/ControlToolBar.cpp:356
-msgid "Envelope Tool"
-msgstr "Strumento Inviluppo"
-
-#: ../src/ControlToolBar.cpp:357
-msgid "Time Shift Tool"
-msgstr "Strumento di Spostamento Temporale"
-
-#: ../src/ControlToolBar.cpp:358
-msgid "Zoom Tool"
-msgstr "Strumento Zoom"
-
-#: ../src/ControlToolBar.cpp:359
-msgid "Draw Tool"
-msgstr "Strumento Disegno"
-
#: ../src/ControlToolBar.cpp:360
msgid "Multi-Tool Mode"
msgstr "Modalità Multi-Strumento"
@@ -8235,22 +8543,10 @@ msgstr "Modalit
msgid "Slide Tool"
msgstr ""
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr ""
-
-#: toolbars/TranscriptionToolBar.cpp:81
-msgid "Transcription"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:183
msgid "Play at selected speed"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:184
-msgid "Play-at-speed"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:190 toolbars/TranscriptionToolBar.cpp:195
msgid "Playback Speed"
msgstr ""
@@ -8259,74 +8555,38 @@ msgstr ""
msgid "Adjust left selection to next onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:201
-msgid "Left-to-On"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:203
msgid "Adjust right selection to previous offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:204
-msgid "Right-to-Off"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:206
msgid "Adjust left selection to next offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:207
-msgid "Left-to-Off"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:209
msgid "Adjust right selection to previous onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:210
-msgid "Right-to-On"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:212
msgid "Select region of sound around cursor"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:213
-msgid "Select-Sound"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:215
msgid "Select region of silence around cursor"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:216
-msgid "Select-Silence"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:218
msgid "Automatically make labels from words"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:219
-msgid "Make Labels"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:221
msgid "Add label at selection"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:222
-msgid "Add Label"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:224
msgid "Calibrate voicekey"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:225
-msgid "Calibrate"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:229
msgid "Adjust Sensitivity"
msgstr ""
@@ -8359,6 +8619,46 @@ msgstr ""
msgid "Key type"
msgstr ""
+#: toolbars/TranscriptionToolBar.cpp:184
+msgid "Play-at-speed"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:201
+msgid "Left-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:204
+msgid "Right-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:207
+msgid "Left-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:210
+msgid "Right-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:213
+msgid "Select-Sound"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:216
+msgid "Select-Silence"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:219
+msgid "Make Labels"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:222
+msgid "Add Label"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:225
+msgid "Calibrate"
+msgstr ""
+
#: ../src/widgets/AButton.cpp:181
msgid " (disabled)"
msgstr " (disabilitato)"
@@ -8662,3 +8962,15 @@ msgstr ""
msgid "Could not load file: \"%s\""
msgstr ""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
+
diff --git a/locale/ja.po b/locale/ja.po
index f81ae51..613928c 100644
--- a/locale/ja.po
+++ b/locale/ja.po
@@ -4,8 +4,7 @@
# FIRST AUTHOR <EMAIL at ADDRESS>, YEAR.
#
msgid ""
-msgstr ""
-"Project-Id-Version: \n"
+msgstr "Project-Id-Version: \n"
"Report-Msgid-Bugs-To: audacity-translation at lists.sourceforge.net\n"
"POT-Creation-Date: 2008-11-09 20:10+0000\n"
"PO-Revision-Date: 2009-01-25 17:00+0900\n"
@@ -17,9 +16,7 @@ msgstr ""
"X-Poedit-Language: Japanese\n"
"X-Poedit-Country: JAPAN\n"
-#: AboutDialog.cpp:143
-#: AudacityApp.cpp:807
-#: Menus.cpp:955
+#: AboutDialog.cpp:143 AudacityApp.cpp:807 Menus.cpp:955
msgid "&About Audacity..."
msgstr "Audacity ã«ã¤ã㦠(&A)"
@@ -35,12 +32,12 @@ msgid "Audacity is a free program written by a team of volunteer <a href=\"http:
msgstr "Audacity ã¯ä¸çä¸ã®ãã©ã³ãã£ã¢ã®<a href=\"http://audacity.sourceforge.net/community/developers\">éçºè
</a>ã®ãã¼ã ã«ãã£ã¦è£½ä½ãããããªã¼ãªããã°ã©ã ã§ã. æã
ã¯ããã¸ã§ã¯ãã®ãã¹ãã£ã³ã°ãè¡ã£ã¦ããã <a href=\"http://sourceforge.net\">ourceForge.net</a>ã«æè¬ãã¦ãã¾ã.Audacity ã¯Windows98 以é, Mac OS X, Linux ããã³ä»ã® Unix ã©ã¤ã¯ãªãªãã¬ã¼ãã£ã³ã°ã·ã¹ãã ä¸ã§åä½ãã¾ã. Audacity ã®ããå¤ããã¼ã¸ã§ã³ã¯ãã㯠OS9 ä¸ã§ã®å©ç¨ãå¯è½ã§ã."
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
-msgstr "ãã®ããã°ã©ã ã¯ãã¼ã¿ãã¼ã¸ã§ã³ã§, ãã°ãæªå®æã®æ©è½ãªã©ãããã§ããã. ããä½ããæ°ä»ãã®ç¹ãªã©ãããã¾ããã, ãã²ç§éã® WebSite ã訪ãã¦ãã ãã. ãã°ã®å ±åãæ¬²ããæ©è½ã®ãªã¯ã¨ã¹ããªã©. ã¿ãªããããã®ãã£ã¼ãããã¯ã<b>feedback at audacityteam.org</b>ã«ãå¾
ã¡ãã¦ããã¾ã. Audacity ã使ç¨ããããã§ã®å©ããå¿
è¦ãªãã<a href=\"http://audacityteam.org/forum/\">ãã©ã¼ã©ã </a>ã«ã¢ã¯ã»ã¹ãã¦ã¿ã¦ãã ãã."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgstr ""
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
-msgstr "ãã㯠Audacity ã®å®å®ãããªãªã¼ã¹ãã¼ã¸ã§ã³ã§ã. ã§ãã, ãããã°ãè¦ä»ãããæ¬²ããæ©è½ãªã©ãããã¾ããã, ãã²ç§é<b>feedback at audacityteam.org</b>å®ã«ãç¥ãããã ãã. Audacity ã使ç¨ããããã§ã®å©ããå¿
è¦ãªãã<a href=\"http://audacityteam.org/forum/\">ãã©ã¼ã©ã </a>ã«ã¢ã¯ã»ã¹ãã¦ã¿ã¦ãã ãã."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgstr ""
# i18n-hint: The translation of "translator_credits" will appear
# in the credits in the About Audacity window. Use this to add
@@ -60,8 +57,7 @@ msgstr "ãã㯠Audacity ã®å®å®ãããªãªã¼ã¹ãã¼ã¸ã§ã³ã§ã. ã§
#.
#. For example: "English translation by Dominic Mazzoni."
#.
-#: AboutDialog.cpp:192
-#: AboutDialog.cpp:194
+#: AboutDialog.cpp:192 AboutDialog.cpp:194
msgid "translator_credits"
msgstr "Japanese translation by Akira Nishimura (akira at rsch.tuis.ac.jp)"
@@ -104,7 +100,8 @@ msgid "Special thanks:"
msgstr "ã¹ãã·ã£ã«ãµã³ã¯ã¹:"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+#, fuzzy
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
msgstr "<b>Audacity®</b>ã½ããã¦ã§ã¢ã®è使¨©ã¯ Audacity Team ã«ããã¾ã.© 1999-2008.<br><b>Audacity®</b>ã®å称㯠Dominic Mazzoni ã®ç»é²åæ¨ã§ã."
#: AboutDialog.cpp:258
@@ -112,14 +109,11 @@ msgid "Audacity"
msgstr "Audacity"
#. i18n-hint: Information about when audacity was compiled
-#: AboutDialog.cpp:304
-#: AboutDialog.cpp:317
-#: AboutDialog.cpp:473
+#: AboutDialog.cpp:304 AboutDialog.cpp:317 AboutDialog.cpp:473
msgid "Build Information"
msgstr "ã³ã³ãã¤ã«æ
å ±"
-#: AboutDialog.cpp:310
-#: effects/AvcCompressor.cpp:674
+#: AboutDialog.cpp:310 effects/AvcCompressor.cpp:674
msgid "Enabled"
msgstr "æå¹ã«ãªã£ã¦ãã¾ã"
@@ -132,33 +126,27 @@ msgid "File Format Support"
msgstr "ãµãã¼ããããã¡ã¤ã«å½¢å¼"
#. i18n-hint: This is what the library (libmad) does - imports MP3 files
-#: AboutDialog.cpp:331
-#: AboutDialog.cpp:333
+#: AboutDialog.cpp:331 AboutDialog.cpp:333
msgid "MP3 Importing"
msgstr "MP3ãã¡ã¤ã«ãèªã¿è¾¼ã"
-#: AboutDialog.cpp:340
-#: AboutDialog.cpp:343
+#: AboutDialog.cpp:340 AboutDialog.cpp:343
msgid "Ogg Vorbis Import and Export"
msgstr "Ogg Vorbis èªã¿è¾¼ã¿ã¨æ¸ãåºã"
-#: AboutDialog.cpp:347
-#: AboutDialog.cpp:350
+#: AboutDialog.cpp:347 AboutDialog.cpp:350
msgid "ID3 tag support"
msgstr "ID3ã¿ã°ã®ãµãã¼ã"
-#: AboutDialog.cpp:357
-#: AboutDialog.cpp:360
+#: AboutDialog.cpp:357 AboutDialog.cpp:360
msgid "FLAC import and export"
msgstr "FLAC èªã¿è¾¼ã¿ã¨æ¸ãåºã"
-#: AboutDialog.cpp:365
-#: AboutDialog.cpp:368
+#: AboutDialog.cpp:365 AboutDialog.cpp:368
msgid "MP2 export"
msgstr "MP2 æ¸ãåºã"
-#: AboutDialog.cpp:373
-#: AboutDialog.cpp:376
+#: AboutDialog.cpp:373 AboutDialog.cpp:376
msgid "Import via QuickTime"
msgstr "QuickTime ãéãã¦èªã¿è¾¼ã¿"
@@ -167,15 +155,12 @@ msgstr "QuickTime ãéãã¦èªã¿è¾¼ã¿"
msgid "Core Libraries"
msgstr "ã³ã¢ã©ã¤ãã©ãª"
-#: AboutDialog.cpp:389
-#: AboutDialog.cpp:392
-#: AboutDialog.cpp:395
+#: AboutDialog.cpp:389 AboutDialog.cpp:392 AboutDialog.cpp:395
#: AboutDialog.cpp:397
msgid "Sample rate conversion"
msgstr "ãµã³ãã«ã¬ã¼ãã³ã³ãã¼ã¿ã¼"
-#: AboutDialog.cpp:402
-#: AboutDialog.cpp:405
+#: AboutDialog.cpp:402 AboutDialog.cpp:405
msgid "Audio playback and recording"
msgstr "ãªã¼ãã£ãªåçã¨é²é³"
@@ -183,24 +168,17 @@ msgstr "ãªã¼ãã£ãªåçã¨é²é³"
msgid "Features"
msgstr "ç¹å¾´"
-#: AboutDialog.cpp:422
-#: AboutDialog.cpp:425
-#: AboutDialog.cpp:430
-#: AboutDialog.cpp:433
-#: AboutDialog.cpp:438
-#: AboutDialog.cpp:441
-#: AboutDialog.cpp:446
-#: AboutDialog.cpp:449
+#: AboutDialog.cpp:422 AboutDialog.cpp:425 AboutDialog.cpp:430
+#: AboutDialog.cpp:433 AboutDialog.cpp:438 AboutDialog.cpp:441
+#: AboutDialog.cpp:446 AboutDialog.cpp:449
msgid "Plug-in support"
msgstr "ãã©ã°ã¤ã³ã®ãµãã¼ã"
-#: AboutDialog.cpp:454
-#: AboutDialog.cpp:457
+#: AboutDialog.cpp:454 AboutDialog.cpp:457
msgid "Sound card mixer support"
msgstr "ãµã¦ã³ãã«ã¼ããããµã¼ã®ãµãã¼ã"
-#: AboutDialog.cpp:462
-#: AboutDialog.cpp:465
+#: AboutDialog.cpp:462 AboutDialog.cpp:465
msgid "Pitch and Tempo Change support"
msgstr "ãããã¨ãã³ãã®å¤åã®ãµãã¼ã"
@@ -208,8 +186,7 @@ msgstr "ãããã¨ãã³ãã®å¤åã®ãµãã¼ã"
msgid "Program build date: "
msgstr "ããã°ã©ã ãã«ãã®æ¥ä»:"
-#: AboutDialog.cpp:480
-#: AboutDialog.cpp:482
+#: AboutDialog.cpp:480 AboutDialog.cpp:482
msgid "Build type:"
msgstr "ãã«ãã®ç¨®é¡:"
@@ -234,28 +211,22 @@ msgstr "è¨å®ãã©ã«ã: "
msgid "GPL License"
msgstr "GPLã©ã¤ã»ã³ã¹"
-#: AudacityApp.cpp:507
-#: Project.cpp:1844
+#: AudacityApp.cpp:507 Project.cpp:1844
#, c-format
msgid "%s is already open in another window."
msgstr "%s ã¯ä»ã®ã¦ã£ã³ãã¦ã§æ¢ã«éããã¦ãã¾ã."
-#: AudacityApp.cpp:509
-#: Project.cpp:1846
-#: Project.cpp:1951
-#: Project.cpp:2095
+#: AudacityApp.cpp:509 Project.cpp:1846 Project.cpp:1951 Project.cpp:2095
#: Project.cpp:2232
msgid "Error opening project"
msgstr "Audacity ããã¸ã§ã¯ããã¡ã¤ã«ã®èªã¿è¾¼ã¿æã«ã¨ã©ã¼ãçºçãã¾ãã"
#: AudacityApp.cpp:541
#, c-format
-msgid ""
-"%s does not exist and could not be opened.\n"
+msgid "%s does not exist and could not be opened.\n"
"\n"
"It has been removed from the history list."
-msgstr ""
-"%s ã¯åå¨ããªãããéããã¾ããã§ããã\n"
+msgstr "%s ã¯åå¨ããªãããéããã¾ããã§ããã\n"
"\n"
"å±¥æ´ããåé¤ããã¦ãã¾ãã"
@@ -271,31 +242,36 @@ msgstr "ã¤ã³ãããã¡ã¼ã¿ã¼"
msgid "Output Meter"
msgstr "åºåã¡ã¼ã¿ã¼"
-# i18n-hint: Mac OS X shortcut should be Ctrl+,
-# i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
+#: Menus.cpp:196
+msgid "&New"
+msgstr "æ°è¦(&N)"
+
+#: Menus.cpp:198
+msgid "&Open..."
+msgstr "éã...(&O)"
+
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
+
#: AudacityApp.cpp:809
-msgid "&Preferences...\tCtrl+,"
-msgstr "è¨å®... (&P)\tCtrl+,"
+msgid "&Preferences..."
+msgstr "è¨å®... (&P)"
-#: AudacityApp.cpp:901
-#: AudacityApp.cpp:978
+#: AudacityApp.cpp:901 AudacityApp.cpp:978
#, c-format
msgid "Using block size of %ld\n"
msgstr "ãããã¯ãµã¤ãºã %ld ã«ãã¾ã\n"
-#: AudacityApp.cpp:923
-#: AudacityApp.cpp:993
+#: AudacityApp.cpp:923 AudacityApp.cpp:993
#, c-format
msgid "Unknown command line option: %s\n"
msgstr "䏿ãªã³ãã³ãã©ã¤ã³ãªãã·ã§ã³ã§ã: %s\n"
#: AudacityApp.cpp:1127
-msgid ""
-"Audacity could not find a place to store temporary files.\n"
+msgid "Audacity could not find a place to store temporary files.\n"
"Please enter an appropriate directory in the preferences dialog."
-msgstr ""
-"Audacity ã¯ãã³ãã©ãªãã¡ã¤ã«ã製ä½ããå ´æãè¦ã¤ãããã¾ããã§ãã.\n"
+msgstr "Audacity ã¯ãã³ãã©ãªãã¡ã¤ã«ã製ä½ããå ´æãè¦ã¤ãããã¾ããã§ãã.\n"
"è¨å®ã¡ãã¥ã¼ã§ãã³ãã©ãªãã¡ã¤ã«ã製ä½ãããã£ã¬ã¯ããªã¼åãå
¥åãã¦ãã ãã."
#: AudacityApp.cpp:1133
@@ -303,21 +279,17 @@ msgid "Audacity is now going to exit. Please launch Audacity again to use the ne
msgstr "Audacity ãçµäºããã¾ã. æ°ãããã³ãã©ãªãã£ã¬ã¯ããªã使ãããã«, Audacity ãåèµ·åãã¦ä¸ãã."
#: AudacityApp.cpp:1165
-msgid ""
-"Running two copies of Audacity simultaneously may cause\n"
+msgid "Running two copies of Audacity simultaneously may cause\n"
"data loss or cause your system to crash.\n"
"\n"
-msgstr ""
-"Audacity ãäºã¤åæã«åä½ããããã¨ã¯ããã¼ã¿ãåªå¤±ãããã\n"
+msgstr "Audacity ãäºã¤åæã«åä½ããããã¨ã¯ããã¼ã¿ãåªå¤±ãããã\n"
"ã·ã¹ãã ã忢ãããããããã¨ãããã¾ãã\n"
"\n"
#: AudacityApp.cpp:1172
-msgid ""
-"Audacity was not able to lock the temporary files directory.\n"
+msgid "Audacity was not able to lock the temporary files directory.\n"
"This folder may be in use by another copy of Audacity.\n"
-msgstr ""
-"Audacity ã¯ãã³ãã©ãªãã¡ã¤ã«ã®ãããã©ã«ããããã¯ã§ãã¾ãã.\n"
+msgstr "Audacity ã¯ãã³ãã©ãªãã¡ã¤ã«ã®ãããã©ã«ããããã¯ã§ãã¾ãã.\n"
"ãã®ãã©ã«ãã¯å¥ã«èµ·åãããAudacityã使ç¨ãã¦ããããã§ã.\n"
#: AudacityApp.cpp:1174
@@ -333,11 +305,9 @@ msgid "The system has detected that another copy of Audacity is running.\n"
msgstr "ã·ã¹ãã ã¯å¥ã® Audacity ãåä½ãã¦ãããã¨ãæ¤ç¥ãã¾ããã\n"
#: AudacityApp.cpp:1216
-msgid ""
-"Use the New or Open commands in the currently running Audacity\n"
+msgid "Use the New or Open commands in the currently running Audacity\n"
"process to open multiple projects simultaneously.\n"
-msgstr ""
-"è¤æ°ã®ããã¸ã§ã¯ããåæã«éãã¦ä½æ¥ããããã«ã¯ãæ°è¦ããããã¯éãã³ãã³ããã\n"
+msgstr "è¤æ°ã®ããã¸ã§ã¯ããåæã«éãã¦ä½æ¥ããããã«ã¯ãæ°è¦ããããã¯éãã³ãã³ããã\n"
"ä»åä½ãã¦ãã Audacity ã«ããã¦ä½¿ã£ã¦ãã ããã\n"
#: AudacityApp.cpp:1217
@@ -382,13 +352,11 @@ msgid "In addition, specify the name of an audio file or Audacity project to ope
msgstr "å ãã¦ããªã¼ãã£ãªãã¡ã¤ã«ã®ååããã㯠Audacity ããã¸ã§ã¯ããéãååãæå®ãã¦ãã ããã"
#: AudacityApp.cpp:1529
-msgid ""
-"Audacity project (.AUP) files are not currently \n"
+msgid "Audacity project (.AUP) files are not currently \n"
"associated with Audacity. \n"
"\n"
"Associate them, so they open on double-click?"
-msgstr ""
-"Audacity ããã¸ã§ã¯ã (.AUP) ãã¡ã¤ã«ã¯ç¾å¨ Audacity ã«\n"
+msgstr "Audacity ããã¸ã§ã¯ã (.AUP) ãã¡ã¤ã«ã¯ç¾å¨ Audacity ã«\n"
"é¢é£ä»ãããã¦ãã¾ãã.\n"
"\n"
"ããã«ã¯ãªãã¯ã§éãããã«é¢é£ä»ããè¡ãã¾ããï¼"
@@ -402,11 +370,9 @@ msgid "Could not find any audio devices.\n"
msgstr "ãªã¼ãã£ãªããã¤ã¹ãè¦ã¤ããã¾ããã\n"
#: AudioIO.cpp:255
-msgid ""
-"You will not be able to play or record audio.\n"
+msgid "You will not be able to play or record audio.\n"
"\n"
-msgstr ""
-"åçãããã¯é²é³ãããã¨ãã§ããªãã§ããã.\n"
+msgstr "åçãããã¯é²é³ãããã¨ãã§ããªãã§ããã.\n"
"\n"
#: AudioIO.cpp:258
@@ -417,38 +383,31 @@ msgstr "ã¨ã©ã¼: "
msgid "Error Initializing Audio"
msgstr "ãªã¼ãã£ãªã®åæåæã«ã¨ã©ã¼ãçºçãã¾ãã"
-#: AudioIO.cpp:1375
-msgid "Latency problem"
-msgstr "ã¬ã¤ãã³ã·ã¼(æ½æ)ã®åé¡"
-
-#: AudioIO.cpp:1375
-msgid ""
-"Latency setting has caused the recorded audio to be hidden before zero.\n"
+#: AudioIO.cpp:1225
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
"Audacity has brought it back to start at zero.\n"
"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
msgstr ""
-"ã¬ã¤ãã³ã·ã¼ã®è¨å®ã¯ãé²é³ãããé³ãã¼ãæå»ããåã«é ãã¦ããç¶æ
ã«ãã¾ãã\n"
-"Audacity ã¯ãããã¼ãæå»ããéå§ããããã«å·»ãæ»ãã¾ãã\n"
-"ãã©ãã¯ãæ£ããæå»ã«ãã©ãã°ããããã«ãã¿ã¤ã ã·ãããã¼ã«(<---> ããã㯠F5)ã使ãã¹ãã§ããã"
+
+#: AudioIO.cpp:1375
+msgid "Latency problem"
+msgstr "ã¬ã¤ãã³ã·ã¼(æ½æ)ã®åé¡"
#: AutoRecovery.cpp:54
msgid "Automatic Crash Recovery"
msgstr "èªåçãªã¯ã©ãã·ã¥ããã®å復"
#: AutoRecovery.cpp:73
-msgid ""
-"Some projects were not saved properly the last time Audacity was run.\n"
+msgid "Some projects were not saved properly the last time Audacity was run.\n"
"Fortunately, the following projects can automatically be recovered:"
-msgstr ""
-"ããã¤ãã®ããã¸ã§ã¯ã㯠Audacity ãæå¾ã«åä½ç¶æ
ã«ãã£ãã¨ãã«æ£å¸¸ã«ä¿åããã¦ãã¾ããã\n"
+msgstr "ããã¤ãã®ããã¸ã§ã¯ã㯠Audacity ãæå¾ã«åä½ç¶æ
ã«ãã£ãã¨ãã«æ£å¸¸ã«ä¿åããã¦ãã¾ããã\n"
"ãã¾ãããã°ã以ä¸ã®ããã¸ã§ã¯ãã¯èªåçã«å復ãããã¨ãã§ããã§ãããã"
#: AutoRecovery.cpp:75
msgid "Recoverable projects"
msgstr "å復å¯è½ãªããã¸ã§ã¯ã"
-#: AutoRecovery.cpp:78
-#: Tags.cpp:2041
+#: AutoRecovery.cpp:78 Tags.cpp:2041
msgid "Name"
msgstr "åå"
@@ -469,53 +428,35 @@ msgid "Recover Projects"
msgstr "ããã¸ã§ã¯ããå復"
#: AutoRecovery.cpp:127
-msgid ""
-"Are you sure you don't want to recover any projects?\n"
+msgid "Are you sure you don't want to recover any projects?\n"
"They can't be recovered later."
-msgstr ""
-"ã©ã®ããã¸ã§ã¯ããå復ãããã¨ãæã¾ãªããã§ããããã§ãã?\n"
+msgstr "ã©ã®ããã¸ã§ã¯ããå復ãããã¨ãæã¾ãªããã§ããããã§ãã?\n"
"ãããã¯å¾ã§å復ããããã¨ã¯ã§ãã¾ããã"
#: AutoRecovery.cpp:128
msgid "Confirm?"
msgstr "確�"
-#: AutoRecovery.cpp:146
-#: AutoRecovery.cpp:183
+#: AutoRecovery.cpp:146 AutoRecovery.cpp:183
msgid "Could not enumerate files in auto save directory"
msgstr "èªåä¿åãã£ã¬ã¯ããªã«ãã¡ã¤ã«çªå·ãæ¯ããã¨ãã§ãã¾ããã"
-#: AutoRecovery.cpp:147
-#: AutoRecovery.cpp:184
-#: Menus.cpp:3053
-#: Menus.cpp:3065
-#: Menus.cpp:5182
-#: Project.cpp:2054
-#: Project.cpp:3615
-#: Project.cpp:3694
-#: TrackPanel.cpp:6385
-#: WaveTrack.cpp:598
-#: WaveTrack.cpp:617
-#: WaveTrack.cpp:1058
-#: WaveTrack.cpp:1077
-#: WaveTrack.cpp:2087
-#: effects/Effect.cpp:513
-#: export/ExportMP2.cpp:233
-#: prefs/DirectoriesPrefs.cpp:189
-#: prefs/KeyConfigPrefs.cpp:247
-#: toolbars/ControlToolBar.cpp:542
+#: AutoRecovery.cpp:147 AutoRecovery.cpp:184 Menus.cpp:3053 Menus.cpp:3065
+#: Menus.cpp:5182 Project.cpp:2054 Project.cpp:3615 Project.cpp:3694
+#: TrackPanel.cpp:6385 WaveTrack.cpp:598 WaveTrack.cpp:617 WaveTrack.cpp:1058
+#: WaveTrack.cpp:1077 WaveTrack.cpp:2087 effects/Effect.cpp:513
+#: export/ExportMP2.cpp:233 prefs/DirectoriesPrefs.cpp:189
+#: prefs/KeyConfigPrefs.cpp:247 toolbars/ControlToolBar.cpp:542
#: toolbars/ControlToolBar.cpp:871
msgid "Error"
msgstr "ã¨ã©ã¼"
-#: BatchCommandDialog.cpp:57
-#: BatchCommandDialog.cpp:62
+#: BatchCommandDialog.cpp:57 BatchCommandDialog.cpp:62
#: BatchCommandDialog.cpp:63
msgid "Select Command"
msgstr "ã³ãã³ãã鏿"
-#: BatchCommandDialog.cpp:82
-#: BatchProcessDialog.cpp:454
+#: BatchCommandDialog.cpp:82 BatchProcessDialog.cpp:454
#: prefs/KeyConfigPrefs.cpp:142
msgid "&Command"
msgstr "ã³ãã³ã (&C)"
@@ -524,8 +465,7 @@ msgstr "ã³ãã³ã (&C)"
msgid "&Edit Parameters"
msgstr "ç·¨éãã©ã¡ã¼ã¿ (&E)"
-#: BatchCommandDialog.cpp:91
-#: BatchProcessDialog.cpp:455
+#: BatchCommandDialog.cpp:91 BatchProcessDialog.cpp:455
msgid "&Parameters"
msgstr "ãã©ã¡ã¼ã¿ (&P)"
@@ -552,11 +492,9 @@ msgstr "ã³ãã³ã %s ã¯ã¾ã å®è£
ããã¦ãã¾ãã"
#: BatchCommands.cpp:508
#, c-format
-msgid ""
-"Could not set parameters of effect %s\n"
+msgid "Could not set parameters of effect %s\n"
" to %s."
-msgstr ""
-"ã¨ãã§ã¯ã %s ã®ãã©ã¡ã¼ã¿ã \n"
+msgstr "ã¨ãã§ã¯ã %s ã®ãã©ã¡ã¼ã¿ã \n"
"%s ã«è¨å®ã§ãã¾ãã"
#: BatchCommands.cpp:561
@@ -566,17 +504,14 @@ msgstr "èªåå®è¡ã³ãã³ã %s ã¯èªèããã¾ããã"
#: BatchCommands.cpp:652
#, c-format
-msgid ""
-"Apply %s with parameter(s)\n"
+msgid "Apply %s with parameter(s)\n"
"\n"
"%s"
-msgstr ""
-"%s ã¯ãã©ã¡ã¼ã¿ãä»ãã¦é©ç¨ãã¦ãã ããã\n"
+msgstr "%s ã¯ãã©ã¡ã¼ã¿ãä»ãã¦é©ç¨ãã¦ãã ããã\n"
"\n"
"%s"
-#: BatchCommands.cpp:653
-#: BatchCommands.cpp:658
+#: BatchCommands.cpp:653 BatchCommands.cpp:658
msgid "Test Mode"
msgstr "ãã¹ãã¢ã¼ã"
@@ -585,8 +520,7 @@ msgstr "ãã¹ãã¢ã¼ã"
msgid "Apply %s"
msgstr "%s ãé©ç¨"
-#: BatchProcessDialog.cpp:60
-#: BatchProcessDialog.cpp:70
+#: BatchProcessDialog.cpp:60 BatchProcessDialog.cpp:70
#: BatchProcessDialog.cpp:71
msgid "Apply Chain"
msgstr "ãã§ã¤ã³ãé©ç¨..."
@@ -613,23 +547,15 @@ msgstr "ç¾å¨ã®ããã¸ã§ã¯ãã«é©ç¨ (&P)"
msgid "Apply to &Files..."
msgstr "ãã¡ã¤ã«ã¸é©ç¨... (&F)"
-#: BatchProcessDialog.cpp:108
-#: BatchProcessDialog.cpp:247
-#: Tags.cpp:2080
-#: Tags.cpp:2084
-#: Tags.cpp:2384
-#: Tags.cpp:2388
-#: UploadDialog.cpp:180
-#: effects/AvcCompressor.cpp:732
-#: effects/ChangeLength.cpp:183
-#: effects/SpikeCleaner.cpp:188
-#: effects/VST/VSTEffect.cpp:453
+#: BatchProcessDialog.cpp:108 BatchProcessDialog.cpp:247 Tags.cpp:2080
+#: Tags.cpp:2084 Tags.cpp:2384 Tags.cpp:2388 UploadDialog.cpp:180
+#: effects/AvcCompressor.cpp:732 effects/ChangeLength.cpp:183
+#: effects/SpikeCleaner.cpp:188 effects/VST/VSTEffect.cpp:453
#: effects/audiounits/AudioUnitEffect.cpp:887
msgid "&Cancel"
msgstr "ãã£ã³ã»ã« (&C)"
-#: BatchProcessDialog.cpp:146
-#: BatchProcessDialog.cpp:191
+#: BatchProcessDialog.cpp:146 BatchProcessDialog.cpp:191
msgid "No chain selected"
msgstr "ãã§ã¤ã³ã鏿ããã¦ãã¾ãã."
@@ -666,8 +592,7 @@ msgstr "é©ç¨ä¸..."
msgid "File"
msgstr "ãã¡ã¤ã«"
-#: BatchProcessDialog.cpp:356
-#: BatchProcessDialog.cpp:360
+#: BatchProcessDialog.cpp:356 BatchProcessDialog.cpp:360
#: BatchProcessDialog.cpp:361
msgid "Edit Chains"
msgstr "ãã§ã¤ã³ãç·¨é"
@@ -676,19 +601,12 @@ msgstr "ãã§ã¤ã³ãç·¨é"
msgid "&Chains"
msgstr "ãã§ã¤ã³ (&C)"
-#: BatchProcessDialog.cpp:435
-#: Tags.cpp:826
-#: Tags.cpp:1465
-#: Tags.cpp:2064
+#: BatchProcessDialog.cpp:435 Tags.cpp:826 Tags.cpp:1465 Tags.cpp:2064
msgid "&Add"
msgstr "å ç® (&A)"
-#: BatchProcessDialog.cpp:436
-#: LabelDialog.cpp:128
-#: Tags.cpp:827
-#: Tags.cpp:1466
-#: Tags.cpp:2065
-#: TrackPanel.cpp:4176
+#: BatchProcessDialog.cpp:436 LabelDialog.cpp:128 Tags.cpp:827 Tags.cpp:1466
+#: Tags.cpp:2065 TrackPanel.cpp:4176
msgid "&Remove"
msgstr "åé¤(&R)"
@@ -700,11 +618,10 @@ msgstr "ãªãã¼ã (&n)"
msgid "C&hain (Double-Click or press SPACE to edit)"
msgstr "ãã§ã¤ã³ (ç·¨éããã«ã¯ããã«ã¯ãªãã¯ãSPACEãæ¼ã) (&h)"
-# i18n-hint: This is the number of the command in the list
#. i18n-hint: This is the number of the command in the list
#: BatchProcessDialog.cpp:453
-msgid "No"
-msgstr "No"
+msgid "Num"
+msgstr ""
#: BatchProcessDialog.cpp:459
msgid "&Insert"
@@ -766,12 +683,10 @@ msgid "Copying audio data into project..."
msgstr "ãªã¼ãã£ãªãã¼ã¿ãããã¸ã§ã¯ãã«ã³ãã¼ãã¦ãã¾ã..."
#: Dependencies.cpp:223
-msgid ""
-"Your project currently depends on the presence of other files.\n"
+msgid "Your project currently depends on the presence of other files.\n"
"Copy audio from the following files into your project to make it self-contained?\n"
"This will need more disc space but is safer."
-msgstr ""
-"ããã¸ã§ã¯ãã¯ç¾å¨ãå¥ã®ãã¡ã¤ã«ã«ä¾åãã¦ãã¾ãã\n"
+msgstr "ããã¸ã§ã¯ãã¯ç¾å¨ãå¥ã®ãã¡ã¤ã«ã«ä¾åãã¦ãã¾ãã\n"
"èªåèªèº«ã§ãã¡ã¤ã«ãä¿æããããã«ã以ä¸ã®ãã¡ã¤ã«ããããã¸ã§ã¯ãã«ãªã¼ãã£ãªãã³ãã¼ãã¾ãããï¼\n"
"ãã®ä½æ¥ã¯ããå¤ãã®ãã£ã¹ã¯é åãå¿
è¦ã¨ãã¾ãããããå®å
¨ã§ããã¨ããã¾ãã"
@@ -795,8 +710,7 @@ msgstr "ãã£ã¹ã¯ã¹ãã¼ã¹"
msgid "Copy Selected Audio Into Project"
msgstr "鏿ããããªã¼ãã£ãªãããã¸ã§ã¯ãã¸ã³ãã¼"
-#: Dependencies.cpp:308
-#: Dependencies.cpp:414
+#: Dependencies.cpp:308 Dependencies.cpp:414
msgid "Cancel Save"
msgstr "ä¿åããã£ã³ã»ã«"
@@ -808,8 +722,7 @@ msgstr "ãããªããªã¼ãã£ãªãã³ãã¼ãã¾ãã"
msgid "Copy All Audio into Project (Safer)"
msgstr "å
¨ã¦ã®ãªã¼ãã£ãªãããã¸ã§ã¯ãã«ã³ãã¼ãã¾ãï¼ããå®å
¨ï¼"
-#: Dependencies.cpp:321
-#: Dependencies.cpp:326
+#: Dependencies.cpp:321 Dependencies.cpp:326
msgid "Ask me"
msgstr "質åãã¦ãã ãã"
@@ -838,16 +751,12 @@ msgid "Dependency check"
msgstr "ä¾åæ§ã®ãã§ãã¯"
#: DirManager.cpp:137
-msgid ""
-"Warning: there is very little free disk space left on this volume.\n"
+msgid "Warning: there is very little free disk space left on this volume.\n"
"Please select another temporary directory in your preferences."
-msgstr ""
-"è¦å: ãã£ã¹ã¯ã®ç©ºã容éããããããæ®ã£ã¦ãã¾ãã. \n"
+msgstr "è¦å: ãã£ã¹ã¯ã®ç©ºã容éããããããæ®ã£ã¦ãã¾ãã. \n"
"ä»ã®ãã³ãã©ãªãã£ã¬ã¯ããªãè¨å®ã§é¸æãã¦ãã ãã."
-#: DirManager.cpp:223
-#: DirManager.cpp:254
-#: DirManager.cpp:337
+#: DirManager.cpp:223 DirManager.cpp:254 DirManager.cpp:337
msgid "Progress"
msgstr "é²è¡"
@@ -865,11 +774,9 @@ msgstr "ãã£ãã·ã¥ãã£ã¬ã¯ããªãã¯ãªã¢ä¸"
#: DirManager.cpp:505
#, c-format
-msgid ""
-"Audacity found an orphaned blockfile %s! \n"
+msgid "Audacity found an orphaned blockfile %s! \n"
"Please consider saving and reloading the project to perform a complete project check.\n"
-msgstr ""
-"Audacity ã¯ç®¡çããã¦ããªããããã¯ãã¡ã¤ã« %s ãè¦ã¤ãã¾ãã! \n"
+msgstr "Audacity ã¯ç®¡çããã¦ããªããããã¯ãã¡ã¤ã« %s ãè¦ã¤ãã¾ãã! \n"
"å®å
¨ãªããã¸ã§ã¯ãã®ãã§ãã¯ãå®è¡ããããã«ãããã¸ã§ã¯ããä¿åãã¦åèªã¿è¾¼ã¿ãããã¨ãæ¤è¨ãã¦ãã ããã\n"
# i18n-hint: This is the pattern for filenames that are created
@@ -910,8 +817,7 @@ msgstr "%s' ãã '%s' ã¸ãªãã¼ã ã§ãã¾ãã"
msgid "Changed block %s to new alias name\n"
msgstr "ããã㯠%s ã¯æ°ããã¨ãªã¢ã¹åã«å¤æ´ããã¾ãã\n"
-#: DirManager.cpp:1224
-#: DirManager.cpp:1515
+#: DirManager.cpp:1224 DirManager.cpp:1515
msgid "Inspecting project file data..."
msgstr "ããã¸ã§ã¯ããã¡ã¤ã«ãç²¾æ»ãã¦ãã¾ã..."
@@ -936,21 +842,17 @@ msgid "Missing data file: (%s.au)"
msgstr "æ¬ æãããã¼ã¿ãã¡ã¤ã«: (%s.au)"
#: DirManager.cpp:1319
-msgid ""
-"Project check found inconsistencies inspecting the loaded project data;\n"
+msgid "Project check found inconsistencies inspecting the loaded project data;\n"
"click 'Details' for a complete list of errors, or 'OK' to proceed to more options."
-msgstr ""
-"ããã¸ã§ã¯ããã§ãã¯ã¯èªã¿è¾¼ã¾ããããã¸ã§ã¯ããã¼ã¿ãç²¾æ»ãã¦ä¸æ´åæ§ãè¦ã¤ãã¾ããã\n"
+msgstr "ããã¸ã§ã¯ããã§ãã¯ã¯èªã¿è¾¼ã¾ããããã¸ã§ã¯ããã¼ã¿ãç²¾æ»ãã¦ä¸æ´åæ§ãè¦ã¤ãã¾ããã\n"
"å®å
¨ãªã¨ã©ã¼ã®ãªã¹ããå¾ãããã«ã`詳細'ãã¯ãªãã¯ããããããå¤ãã®ãªãã·ã§ã³ã«é²ããã`OK'ãã¯ãªãã¯ãã¦ãã ããã"
#: DirManager.cpp:1331
#, c-format
-msgid ""
-"Project check found %d orphaned blockfile[s]. These files are\n"
+msgid "Project check found %d orphaned blockfile[s]. These files are\n"
"unused and probably left over from a crash or some other bug.\n"
"They should be deleted to avoid disk contention."
-msgstr ""
-"ããã¸ã§ã¯ããã§ãã¯ã¯ %d åã®ç®¡çããã¦ããªããããã¯ãã¡ã¤ã«ãè¦ã¤ãã¾ããããããã®ãã¡ã¤ã«ã¯\n"
+msgstr "ããã¸ã§ã¯ããã§ãã¯ã¯ %d åã®ç®¡çããã¦ããªããããã¯ãã¡ã¤ã«ãè¦ã¤ãã¾ããããããã®ãã¡ã¤ã«ã¯\n"
"使ããã¦ããããå¤åãªãããã®ãã°ãããã°ã©ã ã®åæ¢ã«ãã£ã¦æ®ããããã®ã§ãããã\n"
"ãããã¯ããã£ã¹ã¯ç«¶åãé²ãããã«æ¶ãã¹ãã§ãããã"
@@ -966,28 +868,21 @@ msgstr "åé¤ããã«ç¶è¡; ãã£ããä½åãªãã¡ã¤ã«ã«åããã
msgid "Close project immediately with no changes"
msgstr "ä½ã夿´ããã«ããã«ããã¸ã§ã¯ããéãã"
-#: DirManager.cpp:1340
-#: DirManager.cpp:1375
-#: DirManager.cpp:1421
-#: DirManager.cpp:1463
-#: export/Export.cpp:576
-#: export/Export.cpp:597
-#: export/Export.cpp:616
-#: widgets/Warning.cpp:55
+#: DirManager.cpp:1340 DirManager.cpp:1375 DirManager.cpp:1421
+#: DirManager.cpp:1463 export/Export.cpp:576 export/Export.cpp:597
+#: export/Export.cpp:616 widgets/Warning.cpp:55
msgid "Warning"
msgstr "è¦å"
#: DirManager.cpp:1366
#, c-format
-msgid ""
-"Project check detected %d input file[s] being used in place\n"
+msgid "Project check detected %d input file[s] being used in place\n"
"('alias files') are now missing. There is no way for Audacity\n"
"to recover these files automatically; you may choose to\n"
"permanently fill in silence for the missing files, temporarily\n"
"fill in silence for this session only, or close the project now\n"
"and try to restore the missing files by hand."
-msgstr ""
-"ããã¸ã§ã¯ããã§ãã¯ã¯ (`ã¨ãªã¢ã¹ãã¡ã¤ã«')ãä»ã¯åå¨ããªãå ´æã§ä½¿ããã¦ãã \n"
+msgstr "ããã¸ã§ã¯ããã§ãã¯ã¯ (`ã¨ãªã¢ã¹ãã¡ã¤ã«')ãä»ã¯åå¨ããªãå ´æã§ä½¿ããã¦ãã \n"
"%d åã®å
¥åãã¡ã¤ã«ãè¦ã¤ãã¾ãããAudacity ã¯ãããã®ãã¡ã¤ã«ãèªåçã«å復ãã\n"
"ãã¹ããã¡ã¾ãã; æä¹
çã«æ¬ æãã¡ã¤ã«ãç¡é³ã§æºãããã䏿çã«ãã®ã»ãã·ã§ã³ã®ã¿ç¡é³ã§\n"
"æºããããããã¸ã§ã¯ããããã«éãã¦æ¬ æãããã¡ã¤ã«ãæåã§å復ããããé¸ã¶ã¨ããã§ãããã"
@@ -996,25 +891,20 @@ msgstr ""
msgid "Replace missing data with silence [permanent upon save]"
msgstr "æ¬ æãããã¼ã¿ãã¡ã¤ã«ãç¡é³ã§ç½®æãã [ä¿åããã«ããã£ã¦æä¹
çã«]"
-#: DirManager.cpp:1372
-#: DirManager.cpp:1460
+#: DirManager.cpp:1372 DirManager.cpp:1460
msgid "Temporarily replace missing data with silence [this session only]"
msgstr "䏿çã«æ¬ æãããã¼ã¿ãç¡é³ã§ç½®æãã [ãã®ã»ãã·ã§ã³ã®ã¿]"
-#: DirManager.cpp:1373
-#: DirManager.cpp:1419
-#: DirManager.cpp:1461
+#: DirManager.cpp:1373 DirManager.cpp:1419 DirManager.cpp:1461
msgid "Close project immediately with no further changes"
msgstr "ãã以ä¸ã®å¤æ´ãããªãã§ããã¸ã§ã¯ããããã«éãã"
#: DirManager.cpp:1412
#, c-format
-msgid ""
-"Project check detected %d missing summary file[s] (.auf).\n"
+msgid "Project check detected %d missing summary file[s] (.auf).\n"
"Audacity can fully regenerate these summary files from the\n"
"original audio data in the project."
-msgstr ""
-"ããã¸ã§ã¯ããã§ãã¯ã¯ %d åã®æ¬ æããè¦ç´ãã¡ã¤ã«(.auf)ãè¦ã¤ãã¾ããã\n"
+msgstr "ããã¸ã§ã¯ããã§ãã¯ã¯ %d åã®æ¬ æããè¦ç´ãã¡ã¤ã«(.auf)ãè¦ã¤ãã¾ããã\n"
"Audacity ã¯ããããã®è¦ç´ãã¡ã¤ã«ãããã¸ã§ã¯ãã«ããå
ã®ãªã¼ãã£ãªãã¼ã¿ãã\n"
"å®å
¨ã«åçæãããã¨ãã§ãã¾ãã"
@@ -1028,16 +918,14 @@ msgstr "表示ãã¼ã¿ã®æ¬ æãç¡é³ã§åãã [ãã®ã»ãã·ã§ã³ã®
#: DirManager.cpp:1454
#, c-format
-msgid ""
-"Project check detected %d missing audio data blockfile[s] (.au), \n"
+msgid "Project check detected %d missing audio data blockfile[s] (.au), \n"
"probably due to a bug, system crash or accidental deletion.\n"
"There is no way for Audacity to recover this lost data\n"
"automatically; you may choose to permanently fill in silence\n"
"for the missing data, temporarily fill in silence for this\n"
"session only, or close the project now and try to restore the\n"
"missing data by hand."
-msgstr ""
-"ããã¸ã§ã¯ããã§ãã¯ã¯ å¤åãã°ãã·ã¹ãã 忢ãããã¯å¶çºçãªåé¤ã«ãã£ã¦\n"
+msgstr "ããã¸ã§ã¯ããã§ãã¯ã¯ å¤åãã°ãã·ã¹ãã 忢ãããã¯å¶çºçãªåé¤ã«ãã£ã¦\n"
"%d åã®æ¬ æãããªã¼ãã£ãªãã¼ã¿ã®ãããã¯ãã¡ã¤ã«(.au)ãè¦ã¤ãã¾ããã\n"
"Audacity ã¯ãããã®å¤±ããããã¼ã¿ãèªåçã«å復ãããã¨ã¯ã§ãã¾ãã; \n"
"æ¬ æãã¼ã¿ãæä¹
çã«ç¡é³ã§åãããã䏿çã«ãã®ã»ãã·ã§ã³ã®ã¿ç¡é³ã§åãããã\n"
@@ -1075,17 +963,12 @@ msgstr "ç©å½¢"
msgid "FFmpeg support not compiled in"
msgstr "FFmpeg 対å¿ã¯ã³ã³ãã¤ã«ããã¦ãã¾ãã"
-#: FFmpeg.cpp:101
-msgid ""
-"FFmpeg was configured in Preferences and successfully loaded before, \n"
+#: FFmpeg.cpp:103
+msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
-"FFmpegã¯è¨å®ããã¦ãã以åã¯æ£å¸¸ã«èªã¿è¾¼ã¾ãã¦ãã¾ããã \n"
-"ä»åAudacityèµ·åæã«èªã¿è¾¼ã¿å¤±æãã¾ããã \n"
-"\n"
-"è¨å® ï¼ èªã¿è¾¼ã¿/æ¸ãåºãã§åè¨å®ãã¦ãã ããã"
#: FFmpeg.cpp:104
msgid "FFmpeg startup failed"
@@ -1104,20 +987,17 @@ msgstr "FFmpegãä½ç½®ã¥ãã"
msgid "Audacity needs the file %s to import and export audio via FFmpeg."
msgstr "ãã¡ã¤ã« %s ã FFmpeg ãéãã¦å
¥åºåãè¡ãããã«å¿
è¦ã§ãã"
-#: FFmpeg.cpp:196
-#: export/ExportMP3.cpp:562
+#: FFmpeg.cpp:196 export/ExportMP3.cpp:562
#, c-format
msgid "Location of %s:"
msgstr "ä½ç½® %s :"
-#: FFmpeg.cpp:205
-#: export/ExportMP3.cpp:571
+#: FFmpeg.cpp:205 export/ExportMP3.cpp:571
#, c-format
msgid "To find %s, click here -->"
msgstr "%s ãè¦ã¤ããã«ã¯ããããã¯ãªã㯠-->"
-#: FFmpeg.cpp:211
-#: export/ExportMP3.cpp:577
+#: FFmpeg.cpp:211 export/ExportMP3.cpp:577
msgid "Browse..."
msgstr "ãã©ã¦ãº..."
@@ -1125,8 +1005,7 @@ msgstr "ãã©ã¦ãº..."
msgid "To get a free copy of FFmpeg, click here -->"
msgstr "FFmpeg ã®ç¡æã³ãã¼ãå
¥æããã«ã¯ããããã¯ãªã㯠-->"
-#: FFmpeg.cpp:215
-#: export/ExportMP3.cpp:579
+#: FFmpeg.cpp:215 export/ExportMP3.cpp:579
msgid "Download"
msgstr "ãã¦ã³ãã¼ã"
@@ -1136,8 +1015,7 @@ msgstr "ãã¦ã³ãã¼ã"
#. i18n-hint: It's asking for the location of a file, for
#. example, "Where is lame_enc.dll?" - you could translate
#. "Where would I find the file %s" instead if you want.
-#: FFmpeg.cpp:235
-#: export/ExportMP3.cpp:601
+#: FFmpeg.cpp:235 export/ExportMP3.cpp:601
#, c-format
msgid "Where is %s?"
msgstr "%s ã¯ã©ãã«ããã¾ããï¼"
@@ -1150,17 +1028,13 @@ msgstr "ã³ã³ãããã«ãªFFmpegã©ã¤ãã©ãªãåå¨ãã¾ããã"
msgid "FFmpeg not found"
msgstr "FFmpeg ãè¦ã¤ããã¾ãã"
-#: FFmpeg.h:101
-msgid ""
-"Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
-"Audacityã¯ãªã¼ãã£ãªãã¡ã¤ã«ãèªã¿è¾¼ãããã«FFmpegã©ã¤ãã©ãªã使ããã¨ãã¾ãããã\n"
-"ã©ã¤ã´ã©ãªãåå¨ãã¾ããã§ããã\n"
-"FFmpegèªã¿è¾¼ã¿æ©è½ã使ãå ´åã¯ãè¨å® > èªã¿è¾¼ã¿/æ¸ãåºãã§\n"
-"ã©ã¤ãã©ãªã®å ´æãæå®ãã¦ãã ããã"
#: FFmpeg.h:109
msgid "Do not show this warning again"
@@ -1182,9 +1056,7 @@ msgstr "libavformat.so|libavformat.so*|ãã¤ãããã¯ãªã³ã¯ã©ã¤ãã©
msgid "Frequency Analysis"
msgstr "卿³¢æ°è§£æ"
-#: FreqWindow.cpp:139
-#: TrackPanel.cpp:556
-#: prefs/GUIPrefs.cpp:156
+#: FreqWindow.cpp:139 TrackPanel.cpp:556 prefs/GUIPrefs.cpp:156
msgid "Spectrum"
msgstr "ã¹ãã¯ããã°ã©ã 表示"
@@ -1213,14 +1085,11 @@ msgstr "強調ãããèªå·±ç¸é¢ (Enhanced Autocorrelation)"
msgid "Cepstrum"
msgstr "ã±ãã¹ãã©ã "
-#: FreqWindow.cpp:150
-#: FreqWindow.cpp:154
+#: FreqWindow.cpp:150 FreqWindow.cpp:154
msgid "Algorithm"
msgstr "ã¢ã«ã´ãªãºã "
-#: FreqWindow.cpp:169
-#: FreqWindow.cpp:173
-#: HistoryWindow.cpp:79
+#: FreqWindow.cpp:169 FreqWindow.cpp:173 HistoryWindow.cpp:79
msgid "Size"
msgstr "ãµã¤ãº"
@@ -1234,8 +1103,7 @@ msgstr "ãµã¤ãº"
msgid " window"
msgstr "ã¦ã£ã³ãã¦"
-#: FreqWindow.cpp:187
-#: FreqWindow.cpp:191
+#: FreqWindow.cpp:187 FreqWindow.cpp:191
msgid "Function"
msgstr "çªé¢æ°"
@@ -1247,45 +1115,42 @@ msgstr "ãªãã¢å¨æ³¢æ°è»¸"
msgid "Log frequency"
msgstr "対æ°å¨æ³¢æ°è»¸"
-#: FreqWindow.cpp:201
-#: FreqWindow.cpp:205
+#: FreqWindow.cpp:201 FreqWindow.cpp:205
msgid "Axis"
msgstr "軸"
-#: FreqWindow.cpp:212
-#: LabelDialog.cpp:130
-#: Menus.cpp:241
-#: Menus.cpp:276
+#: FreqWindow.cpp:212 LabelDialog.cpp:130 Menus.cpp:241 Menus.cpp:276
msgid "&Export..."
msgstr "æ¸ãåºã...(&E)"
-#: FreqWindow.cpp:213
-#: export/ExportCL.cpp:325
-#: export/ExportMultiple.cpp:347
+#: FreqWindow.cpp:213 export/ExportCL.cpp:325 export/ExportMultiple.cpp:347
msgid "Export"
msgstr "æ¸ãåºã"
-#: FreqWindow.cpp:216
-#: FreqWindow.cpp:217
-#: widgets/ErrorDialog.cpp:161
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
+#: FreqWindow.cpp:216 FreqWindow.cpp:217 widgets/ErrorDialog.cpp:161
msgid "Close"
msgstr "éãã"
-#: FreqWindow.cpp:280
-#: FreqWindow.cpp:410
-#: effects/AutoDuck.cpp:489
-#: effects/AutoDuck.cpp:523
-#: effects/AutoDuck.cpp:792
-#: effects/Compressor.cpp:352
-#: effects/Compressor.cpp:360
-#: effects/Equalization.cpp:1123
-#: effects/Equalization.cpp:1125
-#: effects/Equalization.cpp:1133
-#: effects/Equalization.cpp:1199
-#: effects/Equalization.cpp:1408
-#: effects/Equalization.cpp:1419
-#: effects/Normalize.cpp:367
-#: widgets/Meter.cpp:417
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr ""
+
+#: FreqWindow.cpp:280 FreqWindow.cpp:410 effects/AutoDuck.cpp:489
+#: effects/AutoDuck.cpp:523 effects/AutoDuck.cpp:792
+#: effects/Compressor.cpp:352 effects/Compressor.cpp:360
+#: effects/Equalization.cpp:1123 effects/Equalization.cpp:1125
+#: effects/Equalization.cpp:1133 effects/Equalization.cpp:1199
+#: effects/Equalization.cpp:1408 effects/Equalization.cpp:1419
+#: effects/Normalize.cpp:367 widgets/Meter.cpp:417
msgid "dB"
msgstr "dB"
@@ -1295,20 +1160,25 @@ msgstr "dB"
# cycles per second.
#. i18n-hint: This is the abbreviation for "Hertz", or
#. cycles per second.
-#: FreqWindow.cpp:295
-#: FreqWindow.cpp:450
-#: effects/Equalization.cpp:1164
-#: effects/Equalization.cpp:1195
-#: import/ImportRaw.cpp:399
+#: FreqWindow.cpp:295 FreqWindow.cpp:450 effects/Equalization.cpp:1164
+#: effects/Equalization.cpp:1195 import/ImportRaw.cpp:399
msgid "Hz"
msgstr "Hz"
+#: Menus.cpp:3969
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "ã¹ãã¯ãã«ãããããããããã«ã¯, 鏿ããããã©ãã¯ã¯ãã¹ã¦ãåä¸ã®ãµã³ããªã¬ã¼ãã§ãªããã°ãªãã¾ãã."
+
+#: Menus.cpp:3995
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "大éã®ãªã¼ãã£ãªã鏿ããã¾ãã. æåã® %.1f ç§ã ããåæãããã§ããã."
+
#: FreqWindow.cpp:394
msgid "Not enough data selected."
msgstr "å¿
è¦ãªãã¼ã¿ã鏿ããã¦ãã¾ãã."
-#: FreqWindow.cpp:458
-#: effects/AutoDuck.cpp:794
+#: FreqWindow.cpp:458 effects/AutoDuck.cpp:794
msgid "s"
msgstr "s"
@@ -1330,12 +1200,8 @@ msgstr "spectrum.txt"
msgid "Export Spectral Data As:"
msgstr "ã¹ãã¯ãã«ãã¼ã¿ã®æ¸ãåºã:"
-#: FreqWindow.cpp:1087
-#: LabelDialog.cpp:603
-#: Menus.cpp:2555
-#: Project.cpp:2604
-#: Project.cpp:3667
-#: prefs/KeyConfigPrefs.cpp:182
+#: FreqWindow.cpp:1087 LabelDialog.cpp:603 Menus.cpp:2555 Project.cpp:2604
+#: Project.cpp:3667 prefs/KeyConfigPrefs.cpp:182
msgid "Couldn't write to file: "
msgstr "ãã¡ã¤ã«ãæ¸ãè¾¼ãã¾ãã:"
@@ -1347,6 +1213,21 @@ msgstr "卿³¢æ° (Hz)\tã¬ãã« (dB)"
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "é
å»¶ (ç§)\t卿³¢æ° (Hz)\tã¬ãã«"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr ""
+
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr ""
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr "[[welcome|ãããã]]ç»é¢ã«æ»ã"
@@ -1424,7 +1305,8 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr "<p><b>é²é³ããã«ã¯: </b>é²é³ããã¤ã¹ã¨å
¥åã½ã¼ã¹ãã»ãããã¦ãå
¥åã¬ãã«ãåããã赤ãé²é³ãã¿ã³ãæ¼ãã¦ãã ããã</b></p><p>1)<i>è¨å®ã®ãªã¼ãã£ãªI/Oã¿ã</i>ãããã¯<i>ããã¤ã¹ãã¼ã«ãã¼</i>ã®ãªãã«ãã[[inputdevice|é²é³ããã¤ã¹ã®è¨å®]]ããªã¼ãã£ãªI/Oè¨å®ã§ã¯ãã¹ãã¬ãªé²é³ãå¿
è¦ãªãã°ãããé¸ãã§ãããã¾ãã2)[[inputsorce|å
¥åã½ã¼ã¹ã®è¨å®]] ãã<i>ãããµã¼ãã¼ã«ãã¼</i>ããã㯠(ããã¤ãã®ã·ã¹ãã ã§ã¯) <i>è¨å®ã®ãªã¼ãã£ãªIOã¿ã</i>ãããã¯<i>ããã¤ã¹ãã¼ã«ãã¼</i>ã®ä¸ã«é²é³ããã¤ã¹ã®ãããããã¦ã³ãªã¹ãã®ä¸ã«ãããã®ããã¤ã¹ã«å¯¾ãã¦è¡ãã¾ã(ä¾ãã°ãã¤ã¯ããã³ãã©ã¤ã³å
¥åãªã©).<br>3) [[inputlevel|å
¥åã¬ãã«ã®èª¿æ´]]] ã<i>ãããµã¼ãã«ã¼ãã¼</i>ã®å·¦å´ã«ããã¹ã©ã¤ãã¼ã使ã£ã¦è¡ãã¾ã. ãã¤ãºãæªãæããã«ã¯ãé²é³ã®åã«é²é³ã¬ãã«ã®èª¿æ´ãè¡ããã¨ã¯åºæ¬ã§ã.</p><p>ãããªããã«ãã¯ã<a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">ããã¥ã¢ã«ã®ä¸ã«ããã\"é²é³\"ã®<a href=\"http://audacity.sourceforge.net/help/faq\">FAQs</a>ã¨ãæã
ã®ãã¥ã¼ããªã¢ã«<a href=\"http://www.audacityteam.org/manual/index.php?title=Tutorial_-_Your_First_Recording\">åãã¦ã®é²é³</a>ã¨ãWiki [[wiki:Recording_Tips|é²é³ã®ã³ã]] 㨠[[wiki:Troubleshooting_Recordings|é²é³ã®ãã©ãã«ã·ã¥ã¼ãã£ã³ã°]]ãã¼ã¸ã御覧ãã ãã.</p><br><br>"
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+#, fuzzy
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
msgstr "<p>å
¥åããã¤ã¹ã¨ã¯ãããªããå®éé²é³ãããã¨ãã¦ããç©ççãªãµã¦ã³ãããã¤ã¹ã®ãã¨ã§ããããã¯<i>è¨å®ã®ãªãã®ãªã¼ãã£ãª I/O ã¿ã</i>\"ã«ããã\"é²é³ããã¤ã¹\"ã«ã¦é¸ã³ã¾ããWindows 㨠Linux ã§ã¯ã<i>ç·¨é</i>ã¡ãã¥ã¼ã®ä¸ç¨ã«è¨å®ãããã¾ããMac ã®å ´åã<i>Audacity</i>ã¡ãã¥ã¼ã®ãªãã«ããã¾ãã<i>ãã¥ã¼ > ãã¼ã«ãã¼...</i>ã«ã¦æå¹ã«ã§ãã <i>ããã¤ã¹ãã¼ã«ãã¼</i>ã®ä¸ããé²é³ããã¤ã¹ã便å©ã«é¸ã¶ãã¨ãã§ãã¾ãã</p><p>ãã®ã¾ã¾ã§ã¯ãAudacity ã¯ã·ã¹ãã ã«ãã£ã¦ç¾å¨ä½¿ç¨ããã¦ããããã¤ã¹(ä¸è¬ã«å
èµã®ãµã¦ã³ãããã¤ã¹)ã使ç¨ãã¾ãã®ã§ãå
¥åããã¤ã¹ã夿´ããå¿
è¦ã¯é »ç¹ã«ã¯ãªãã§ããããWindowsã§ã¯ããã®ç¾å¨ã·ã¹ãã ã使ç¨ä¸ã®ããã¤ã¹ã¯ã\"Microsoft ãµã¦ã³ããããã¼\"ã«ã¦é¸ã¶ãã¨ãã§ãã¾ãããããUSBã¬ã³ã¼ããã¬ã¼ã¤ãªã©ã®å¤é¨ã®USBã Firewire ããã¤ã¹ããé²é³ããå ´åã¯ããããæ¥ç¶å¾ã«é²é³ã®ããã¤ã¹ã§ååãæå®ãã¦é¸ãã§ãã ããã</p><p> [[record|é³ã®é²é³]] ã¸æ»ã<br></p>"
#: HelpText.cpp:244
@@ -1448,7 +1330,8 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr "宿ããä½åãä»ã®ã¡ãã£ã¢ããã°ã©ã ã§åçããã«ã¯ããªã¼ãã£ãªãã¡ã¤ã«ãWAVãMP3å½¢å¼ã«æ¸ãåºãã¦ãã ãããï¼ããã¤ãã®å½¢å¼ [[wma-proprietary|ã¯æªãµãã¼ãã§ã]]). [[save|ããã¸ã§ã¯ããã¡ã¤ã«ã®ä¿å]] ã¯ããã¸ã§ã¯ããã¡ã¤ã«ï¼ããã³ _data ãã©ã«ãï¼ãçæããã¹ã¦ã®ç·¨éããããã©ãã¯ãä¿åããã¾ãããããã£ã¦å¾ã§ç·¨é使¥ã«æ»ããã¨ãã§ãã¾ããããããªããä»ã®ããã°ã©ã ã¯Audacityããã¸ã§ã¯ããã¡ã¤ã«ãèªã¿è¾¼ããã¨ãã§ãã¾ããã</p><p> ãã¡ã¤ã«ãæ¸ãåºãã«ã¯ã<i>File > æ¸ãåºã</i> ãã¯ãªãã¯ãã\"ãã¡ã¤ã«ã®ç¨®é¡\" ã«ã¦ãã¡ã¤ã«å½¢å¼ã鏿ãã¦ãã ããã æ®éã®CDãã¬ã¼ã¤ã¼ã§è´ãããã« [[burncd|CDã«æ¸ãè¾¼ã]]ã«ã¯WAVã¾ãã¯AIFFå½¢å¼ã鏿ãã¦ãã ããã MP3å½¢å¼ã«æ¸ãåºãã«ã¯[[wiki:Lameã®ã¤ã³ã¹ãã¼ã«|Lameã¨ã³ã³ã¼ãã¼]]ãã¤ã³ã¹ãã¼ã«ãããã¨ãå¿
è¦ã§ãã </p><p> <i>File > 鏿ç¯å²ãæ¸ãåºã</i> ã¯ãªã¼ãã£ãªãã¡ã¤ã«ã®ä¸ã®ä¸é¨åã ããæ¸ãåºããã¨ãã§ãã¾ãã <i>Use File > è¤æ°ãã¡ã¤ã«ã®æ¸ãåºã</i> ã¯åå¥ã®ãã©ãã¯ãã¨ãããã¯ï¼ã¤ã®ãã©ãã¯ã®ä¸ã®è¤æ°é¨åãè¤æ°ã®ãã¡ã¤ã«ã«æ¸ãåºããã¨ãã§ãã¾ãã<i>Tracks > ã©ãã«ã®æ¸ãåºã</i> ã¯ï¼ã¤ã®ã¢ã«ãã ãã [[wiki:é²é³ãã¡ã¤ã«ãè¤æ°ãã©ãã¯ã«åå²ããã«ã¯|ãã©ãã¯ãåå²]]ãè¤æ°ã®ãã¡ã¤ã«ã«åå²ãã¦æ¸ãåºãããã«ä½¿ãã¾ãã</p><br><br>"
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+#, fuzzy
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
msgstr "<p>Audacity ã§ã¯ã©ã¤ã»ã³ã¹ãç¹è¨±ã®å¶éã«ãã <b>WMA, RealAudio, Shorten (SHN)</b> ãä»ã®ç¬èªå½¢å¼ã®ãã¡ã¤ã«ã®[[play|åç]] or [[export|æ¸ãåºã]]<b>ã¯ã§ãã¾ãã</b> Macçã§ã¯éä¿è·ã®<b>AAC</b> å½¢å¼ãã¨ãã° <b>M4A</b>ãèªã¿è¾¼ããã¨ãã§ãã¾ãã <b>Ogg Speex</b> ã<b>Musepack</b>ãªã©ã®ä»ã®å½¢å¼ã¯æªå¯¾å¿ã§ãããã£ã¸ã¿ã«è使¨©ç®¡ç(DRM)ã«ããä¿è·ããããã¡ã¤ã«ããã¨ãã°ãã£ã¨ãä¸è¬çãªiTunesãNapsterãããªã³ã©ã¤ã³è³¼å
¥ããããã¡ã¤ã«ã¯èªã¿è¾¼ããã¨ã¯<b>ã§ãã¾ããã</b> </p><p> ããDRMã§ä¿è·ããã¦ããªããã¡ã¤ã«ãªã®ã«Audacityã§èªã¿è¾¼ããªãå ´åãiTunes ã¾ãã¯<a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> ã使ã£ã¦WAVãããã¯AIFFå½¢å¼ã«å¤æãã¦ããèªã¿è¾¼ãã§ãã ããã ããDRMä¿è·ããããã¡ã¤ã«ã§ããå ´åã¯ãæ£ããã©ã¤ã»ã³ã¹ã«å¯¾å¿ããããã°ã©ã ã«ã¦é³æ¥½CDã使ãããã®å¾ãITunesãï¼Windowsã®å ´åï¼ <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> ã¾ãã¯Windows Media Player 11ã使ã£ã¦ã使ãã鳿¥½CDããWAVã¾ãã¯AIFFãã¡ã¤ã«ã¨ãã¦èªã¿åºãã¦ãã ãããã¾ãCDããã³ã³ãã¥ã¼ã¿ã« <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">é²é³</a>ãããã¨ãã§ãã¾ãã<i>æªå¯¾å¿ã®å½¢å¼ã«æ¸ãåºãã«ã¯ãã¾ãWAVãããã¯AIFFå½¢å¼ã«æ¸ãåºãããã®å¾iTunesã¾ãã¯<a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>ã«ã¦å¸æã®å½¢å¼ã«å¤æãã¦ãã ããã </i></p><p>"
#: HelpText.cpp:383
@@ -1483,13 +1366,8 @@ msgstr "ç ´æ£ããã©ãã«"
msgid "&Discard"
msgstr "ç ´æ£ (&D)"
-#: HistoryWindow.cpp:112
-#: Tags.cpp:2081
-#: Tags.cpp:2083
-#: Tags.cpp:2385
-#: Tags.cpp:2387
-#: effects/ChangeLength.cpp:186
-#: effects/SpikeCleaner.cpp:191
+#: HistoryWindow.cpp:112 Tags.cpp:2081 Tags.cpp:2083 Tags.cpp:2385
+#: Tags.cpp:2387 effects/ChangeLength.cpp:186 effects/SpikeCleaner.cpp:191
#: export/ExportCL.cpp:399
msgid "&OK"
msgstr "OK (&O)"
@@ -1498,8 +1376,7 @@ msgstr "OK (&O)"
msgid "Unable to determine"
msgstr "測å®ã§ãã¾ãã"
-#: Internat.cpp:195
-#: import/ImportRaw.cpp:385
+#: Internat.cpp:195 import/ImportRaw.cpp:385
msgid "bytes"
msgstr "ãã¤ã"
@@ -1515,28 +1392,31 @@ msgstr "MB"
msgid "GB"
msgstr "GB"
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
#: LabelDialog.cpp:54
msgid "Track"
msgstr "ãã©ãã¯"
-#: LabelDialog.cpp:55
-#: Menus.cpp:4677
-#: Menus.cpp:4712
+#: LabelDialog.cpp:55 Menus.cpp:4677 Menus.cpp:4712
msgid "Label"
msgstr "ã©ãã«"
-#: LabelDialog.cpp:56
-#: TimerRecordDialog.cpp:279
+#: LabelDialog.cpp:56 TimerRecordDialog.cpp:279
msgid "Start Time"
msgstr "éå§æå»"
-#: LabelDialog.cpp:57
-#: TimerRecordDialog.cpp:298
+#: LabelDialog.cpp:57 TimerRecordDialog.cpp:298
msgid "End Time"
msgstr "çµäºæå»"
-#: LabelDialog.cpp:100
-#: Menus.cpp:713
+#: LabelDialog.cpp:100 Menus.cpp:713
msgid "&Edit Labels"
msgstr "ã©ãã«ã®ç·¨é (&E)"
@@ -1561,13 +1441,11 @@ msgid "New..."
msgstr "æ°è¦..."
#: LabelDialog.cpp:354
-msgid ""
-"You have left blank label names. These will be\n"
+msgid "You have left blank label names. These will be\n"
"skipped when repopulating the Label Tracks.\n"
"\n"
"Would you like to go back and provide names?"
-msgstr ""
-"ã©ãã«åã空ç½ã®ã¾ã¾ã§ããããã¯ã©ãã«ãã©ãã¯ã\n"
+msgstr "ã©ãã«åã空ç½ã®ã¾ã¾ã§ããããã¯ã©ãã«ãã©ãã¯ã\n"
"éåãããã¨ãã«ã¹ãããããããã¨ã«ãªãã¾ãã\n"
"æ»ã£ã¦ååãä»ãã¦ããã¾ããï¼"
@@ -1575,20 +1453,15 @@ msgstr ""
msgid "Confirm"
msgstr "確èª"
-#: LabelDialog.cpp:516
-#: Menus.cpp:4101
+#: LabelDialog.cpp:516 Menus.cpp:4101
msgid "Select a text file containing labels..."
msgstr "ã©ãã«ãå«ãããã¹ããã¡ã¤ã«ã鏿ãã¦ä¸ãã..."
-#: LabelDialog.cpp:520
-#: Menus.cpp:4105
+#: LabelDialog.cpp:520 Menus.cpp:4105
msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
msgstr "ããã¹ã files (*.txt)|*.txt|All files (*.*)|*.*"
-#: LabelDialog.cpp:534
-#: Menus.cpp:4117
-#: Project.cpp:1914
-#: Project.cpp:1922
+#: LabelDialog.cpp:534 Menus.cpp:4117 Project.cpp:1914 Project.cpp:1922
msgid "Could not open file: "
msgstr "ãã¡ã¤ã«ãéãã¾ãã:"
@@ -1596,13 +1469,11 @@ msgstr "ãã¡ã¤ã«ãéãã¾ãã:"
msgid "No labels to export."
msgstr "æ¸ãåºããã©ãã¯ã©ãã«ã¯ããã¾ãã."
-#: LabelDialog.cpp:566
-#: Menus.cpp:2518
+#: LabelDialog.cpp:566 Menus.cpp:2518
msgid "Export Labels As:"
msgstr "ã©ãã«ã®æ¸ãåºã:"
-#: LabelDialog.cpp:568
-#: Menus.cpp:2516
+#: LabelDialog.cpp:568 Menus.cpp:2516
msgid "labels.txt"
msgstr "labels.txt"
@@ -1614,10 +1485,7 @@ msgstr "æ°è¦ã©ãã«ãã©ã㯠"
msgid "Enter track name"
msgstr "ãã©ãã¯åã®å
¥å:"
-#: LabelDialog.cpp:705
-#: LabelDialog.h:52
-#: LabelTrack.cpp:89
-#: Menus.cpp:632
+#: LabelDialog.cpp:705 LabelDialog.h:52 LabelTrack.cpp:89 Menus.cpp:632
msgid "&Label Track"
msgstr "ã©ãã«ãã©ã㯠(&L)"
@@ -1631,11 +1499,9 @@ msgstr "Audacity ã§ä½¿ç¨ããè¨èªã®é¸æ:"
#: Legacy.cpp:356
#, c-format
-msgid ""
-"Converted a 1.0 project file to the new format.\n"
+msgid "Converted a 1.0 project file to the new format.\n"
"The old file has been saved as '%s'"
-msgstr ""
-"ãã¼ã¸ã§ã³ 1.0 ã®ããã¸ã§ã¯ããã¡ã¤ã«ãæ°ãããã©ã¼ãããã¸å¤æãã¾ã.\n"
+msgstr "ãã¼ã¸ã§ã³ 1.0 ã®ããã¸ã§ã¯ããã¡ã¤ã«ãæ°ãããã©ã¼ãããã¸å¤æãã¾ã.\n"
"å¤ããã¡ã¤ã«ã¯ '%s' ã¨ããååã§ä¿åããã¾ãã."
#: Legacy.cpp:357
@@ -1646,24 +1512,15 @@ msgstr "Audacity ããã¸ã§ã¯ããã¡ã¤ã«ãéã"
msgid "&File"
msgstr "ãã¡ã¤ã« (&F)"
-#: Menus.cpp:196
-msgid "&New\tCtrl+N"
-msgstr "æ°è¦(&N)\tCtrl+N"
-
-#: Menus.cpp:198
-msgid "&Open...\tCtrl+O"
-msgstr "éã...(&O)\tCtrl+O"
-
#: Menus.cpp:203
-msgid "&Close\tCtrl+W"
-msgstr "éãã (&C)\tCtrl+W"
+msgid "&Close"
+msgstr "éãã (&C)"
#: Menus.cpp:206
-msgid "&Save Project\tCtrl+S"
-msgstr "ããã¸ã§ã¯ããã¡ã¤ã«ãä¿å (&S)\tCtrl+S"
+msgid "&Save Project"
+msgstr "ããã¸ã§ã¯ããã¡ã¤ã«ãä¿å (&S)"
-#: Menus.cpp:210
-#: Project.cpp:2896
+#: Menus.cpp:210 Project.cpp:2896
msgid "Save Project &As..."
msgstr "ããã¸ã§ã¯ããã¡ã¤ã«ãå¥åã§ä¿å... (&A)"
@@ -1679,14 +1536,13 @@ msgstr "ä¾åæ§ã®ãã§ã㯠(&k)"
msgid "Open Me&tadata Editor..."
msgstr "ã¡ã¿ãã¼ã¿ã¨ãã£ã¿ãéã (&t)"
-#: Menus.cpp:229
-#: import/ImportRaw.cpp:411
+#: Menus.cpp:229 import/ImportRaw.cpp:411
msgid "&Import"
msgstr "åãè¾¼ã¿ã(&I)"
#: Menus.cpp:231
-msgid "&Audio...\tCtrl+Shift+I"
-msgstr "ãªã¼ãã£ãªã®åãè¾¼ã¿... (&A)\tCtrl+Shift+I"
+msgid "&Audio..."
+msgstr "ãªã¼ãã£ãªã®åãè¾¼ã¿... (&A)"
#: Menus.cpp:232
msgid "&Labels..."
@@ -1700,8 +1556,7 @@ msgstr "MIDI ã®åãè¾¼ã¿... (&M)"
msgid "&Raw Data..."
msgstr "ãã¼ (Raw) ãã¼ã¿ã®åãè¾¼ã¿... (&R)"
-#: Menus.cpp:247
-#: Menus.cpp:282
+#: Menus.cpp:247 Menus.cpp:282
msgid "Expo&rt Selection..."
msgstr "鏿ç¯å²ãæ¸ãåºã...ã(&r)"
@@ -1717,12 +1572,11 @@ msgstr "è¤æ°ãã¡ã¤ã«ã®æ¸ãåºã... (&M)"
msgid "Export MIDI..."
msgstr "MIDIãæ¸ãåºã..."
-#: Menus.cpp:290
-msgid "CleanSpeech C&hain..."
-msgstr "ã¯ãªã¼ã³ã¹ãã¼ã ãã§ã¤ã³ (&h)"
+#: Menus.cpp:303
+msgid "Appl&y Chain..."
+msgstr "ãã§ã¤ã³ãé©ç¨ (&y)"
-#: Menus.cpp:291
-#: Menus.cpp:305
+#: Menus.cpp:291 Menus.cpp:305
msgid "Edit C&hains..."
msgstr "ãã§ã¤ã³ãç·¨é (&h)"
@@ -1734,10 +1588,6 @@ msgstr "ã¯ãªã¼ã³ã¹ãã¼ãè¨å®ã®æ¸ãåºã (&P)"
msgid "I&mport CleanSpeech Presets..."
msgstr "ã¯ãªã¼ã³ã¹ãã¼ãè¨å®ã®èªã¿è¾¼ã¿ (&m)"
-#: Menus.cpp:303
-msgid "Appl&y Chain..."
-msgstr "ãã§ã¤ã³ãé©ç¨ (&y)"
-
#: Menus.cpp:310
msgid "&Upload File..."
msgstr "ãã¡ã¤ã«ã®ã¢ãããã¼ã (&U)"
@@ -1751,78 +1601,74 @@ msgid "&Print..."
msgstr "å°å·...ã(&P)"
#: Menus.cpp:330
-msgid "E&xit\tCtrl+Q"
-msgstr "çµäº(&x)\tCtrl+Q"
+msgid "E&xit"
+msgstr "çµäº(&x)"
-#: Menus.cpp:338
-#: toolbars/EditToolBar.cpp:76
+#: Menus.cpp:338 toolbars/EditToolBar.cpp:76
msgid "&Edit"
msgstr "ç·¨é (&E)"
#: Menus.cpp:342
-msgid "&Undo\tCtrl+Z"
-msgstr "ã¢ã³ã㥠(&U)\tCtrl+Z"
+msgid "&Undo"
+msgstr "ã¢ã³ã㥠(&U)"
-#: Menus.cpp:350
-#: prefs/KeyConfigPrefs.cpp:371
-#: toolbars/EditToolBar.cpp:146
+#: Menus.cpp:350 prefs/KeyConfigPrefs.cpp:371 toolbars/EditToolBar.cpp:146
msgid "&Redo"
msgstr "ãªã㥠(&R)"
#: Menus.cpp:363
-msgid "Cu&t\tCtrl+X"
-msgstr "ã«ãã (&t)\tCtrl+X"
+msgid "Cu&t"
+msgstr "ã«ãã (&t)"
#: Menus.cpp:367
-msgid "Spl&it Cut\tCtrl+Alt+X"
-msgstr "åå² (&i)\tCtrl+Alt+X"
+msgid "Spl&it Cut"
+msgstr "åå² (&i)"
#: Menus.cpp:368
-msgid "&Copy\tCtrl+C"
-msgstr "ã³ãã¼ (&C)\tCtrl+C"
+msgid "&Copy"
+msgstr "ã³ãã¼ (&C)"
#: Menus.cpp:372
-msgid "&Paste\tCtrl+V"
-msgstr "ãã¼ã¹ã (&P)\tCtrl+V"
+msgid "&Paste"
+msgstr "ãã¼ã¹ã (&P)"
#: Menus.cpp:376
-msgid "Tri&m\tCtrl+T"
-msgstr "ããªã (&m)\tCtrl+T"
+msgid "Tri&m"
+msgstr "ããªã (&m)"
#: Menus.cpp:378
-msgid "&Delete\tCtrl+K"
-msgstr "åé¤ (&D)\tCtrl+K"
+msgid "&Delete"
+msgstr "åé¤ (&D)"
#: Menus.cpp:379
-msgid "Split D&elete\tCtrl+Alt+K"
-msgstr "åå²ã¨åé¤ (&e)\tCtrl+Alt+K"
+msgid "Split D&elete"
+msgstr "åå²ã¨åé¤ (&e)"
#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
-msgstr "ç¡é³ (&o)\tCtrl+L"
+msgid "Silence Audi&o"
+msgstr "ç¡é³ (&o)"
#: Menus.cpp:382
-msgid "Sp&lit\tCtrl+I"
-msgstr "åå²(&l)\tCtrl+I"
+msgid "Sp&lit"
+msgstr "åå²(&l)"
#: Menus.cpp:387
-msgid "Split Ne&w\tCtrl+Alt+I"
-msgstr "æ°è¦åé¢ (&w) \tCtrl+Alt+I"
+msgid "Split Ne&w"
+msgstr "æ°è¦åé¢ (&w) "
#: Menus.cpp:392
-msgid "&Join\tCtrl+J"
-msgstr "é£çµ(&J)\tCtrl+J"
+msgid "&Join"
+msgstr "é£çµ(&J)"
#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
-msgstr "ç¡é³ã®åãé¢ã (&h)\tCtrl+Alt+J"
+msgid "Detac&h at Silences"
+msgstr "ç¡é³ã®åãé¢ã (&h)"
#: Menus.cpp:394
-msgid "Duplic&ate\tCtrl+D"
-msgstr "è¤è£½ (&a)\tCtrl+D"
+msgid "Duplic&ate"
+msgstr "è¤è£½ (&a)"
-#: Menus.cpp:400
-#: Menus.cpp:639
+#: Menus.cpp:400 Menus.cpp:639
msgid "Stereo Trac&k to Mono"
msgstr "ã¹ãã¬ãªããã¢ãã©ã«ã¸ (&k)"
@@ -1833,88 +1679,70 @@ msgstr "ã©ãã«ã¥ããããé å... (&b)"
# i18n-hint: Labeled Regions submenu
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:409
-msgid "&Cut\tAlt+X"
-msgstr "ã«ãã (&C)\tAlt+X"
+msgid "&Cut"
+msgstr "ã«ãã (&C)"
# i18n-hint: Labeled Regions submenu
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:414
-msgid "&Split Cut\tShift+Alt+X"
-msgstr "åå²ã¨åãåã (&S)\tShift+Alt+X"
+msgid "&Split Cut"
+msgstr "åå²ã¨åãåã (&S)"
# i18n-hint: Labeled Regions submenu
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:419
-msgid "Co&py\tShift+Alt+C"
-msgstr "ã³ãã¼ (&p)\tShift+Altl+C"
-
-# i18n-hint: Labeled Regions submenu
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:425
-msgid "&Delete\tAlt+K"
-msgstr "åé¤ (&D)\tAlt+K"
+msgid "Co&py"
+msgstr "ã³ãã¼ (&p)"
# i18n-hint: Labeled Regions submenu
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:430
-msgid "Sp&lit Delete\tShift+Alt+K"
-msgstr "åå²ã¨åé¤ (&l)\tCtrl+Alt+K"
+msgid "Sp&lit Delete"
+msgstr "åå²ã¨åé¤ (&l)"
# i18n-hint: Labeled Regions submenu
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:435
-msgid "Sile&nce\tAlt+L"
-msgstr "ç¡é³ (&n)\tAlt+L"
+msgid "Sile&nce"
+msgstr "ç¡é³ (&n)"
# i18n-hint: Labeled Regions submenu
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:441
-msgid "Spli&t\tAlt+I"
-msgstr "åå² (&t)\tAlt+I"
-
-# i18n-hint: Labeled Regions submenu
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:446
-msgid "&Join\tAlt+J"
-msgstr "çµå (&J) \tAlt+J"
-
-# i18n-hint: Labeled Regions submenu
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
-msgstr "ç¡é³ã§åé¢ (&h)\tShift+Alt+J"
+msgid "Spli&t"
+msgstr "åå² (&t)"
#: Menus.cpp:456
msgid "&Select"
msgstr "鏿 (&S)"
#: Menus.cpp:457
-msgid "&All\tCtrl+A"
-msgstr "å
¨ã¦ (&A)\tCtrl+A"
+msgid "&All"
+msgstr "å
¨ã¦ (&A)"
#: Menus.cpp:458
-msgid "&None\tCtrl+Shift+A"
-msgstr "ç¡ã(&N)\tCtrl+Shift+A"
+msgid "&None"
+msgstr "ç¡ã(&N)"
#: Menus.cpp:462
-msgid "&Left at Playback Position\t["
-msgstr "åçéå§ä½ç½®ã左㫠(&L) \t["
+msgid "&Left at Playback Position"
+msgstr "åçéå§ä½ç½®ã左㫠(&L) "
#: Menus.cpp:463
-msgid "&Right at Playback Position\t]"
-msgstr "åçéå§ä½ç½®ãå³ã« (&R) \t]"
+msgid "&Right at Playback Position"
+msgstr "åçéå§ä½ç½®ãå³ã« (&R) "
#: Menus.cpp:467
-msgid "Track &Start to Cursor\tShift+J"
-msgstr "å
é ããã«ã¼ã½ã«ã¾ã§ (&S) \tShift+J"
+msgid "Track &Start to Cursor"
+msgstr "å
é ããã«ã¼ã½ã«ã¾ã§ (&S) "
#: Menus.cpp:468
-msgid "Cursor to Track &End\tShift+K"
-msgstr "ã«ã¼ã½ã«ããæå¾ã¾ã§ (&E) \tShift+K"
+msgid "Cursor to Track &End"
+msgstr "ã«ã¼ã½ã«ããæå¾ã¾ã§ (&E) "
#: Menus.cpp:474
-msgid "Find &Zero Crossings\tZ"
-msgstr "ã¼ãã¨ã®äº¤å·®é¨åãè¦ã¤ãã (&Z) \tZ"
+msgid "Find &Zero Crossings"
+msgstr "ã¼ãã¨ã®äº¤å·®é¨åãè¦ã¤ãã (&Z) "
#: Menus.cpp:476
msgid "Mo&ve Cursor"
@@ -1929,12 +1757,12 @@ msgid "to Selection En&d"
msgstr "é¸æã®æå¾ (&d)"
#: Menus.cpp:483
-msgid "to Track &Start\tJ"
-msgstr "ãã©ãã¯ã®æå (&S)\tJ"
+msgid "to Track &Start"
+msgstr "ãã©ãã¯ã®æå (&S)"
#: Menus.cpp:484
-msgid "to Track &End\tK"
-msgstr "ãã©ãã¯ã®æå¾ (&E)\tK"
+msgid "to Track &End"
+msgstr "ãã©ãã¯ã®æå¾ (&E)"
#: Menus.cpp:491
msgid "Re&gion Save"
@@ -1956,68 +1784,45 @@ msgstr "ãã㯠(&L)"
msgid "&Unlock"
msgstr "ã¢ã³ãã㯠(&U)"
-#: Menus.cpp:511
-msgid "Turn Snap-To On"
-msgstr "ã¹ãããããªã³"
-
-#: Menus.cpp:512
-msgid "Turn Snap-To Off"
-msgstr "ã¹ãããããªã"
-
-#: Menus.cpp:513
-msgid "Turn Grid Snap On"
-msgstr "ã°ãªããã¹ãããããªã³"
-
-#: Menus.cpp:514
-msgid "Turn Grid Snap Off"
-msgstr "ã°ãªããã¹ãããããªã"
-
-# i18n-hint: Mac OS X shortcut should be Ctrl+,
-# i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr "è¨å®... (&f)\tCtrl+,"
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
-msgstr "è¨å®... (&f)\tCtrl+P"
+msgid "Pre&ferences..."
+msgstr "è¨å®... (&f)"
#: Menus.cpp:533
msgid "&View"
msgstr "ãã¥ã¼ (&V)"
#: Menus.cpp:535
-msgid "Zoom &In\tCtrl+1"
-msgstr "æ¡å¤§ (&I)\tCtrl+1"
+msgid "Zoom &In"
+msgstr "æ¡å¤§ (&I)"
#: Menus.cpp:538
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "å
ã®ç¸®å°ºã«æ»ã (&N)\tCtrl+2"
+msgid "Zoom &Normal"
+msgstr "å
ã®ç¸®å°ºã«æ»ã (&N)"
#: Menus.cpp:539
-msgid "Zoom &Out\tCtrl+3"
-msgstr "ç¸®å° (&O)\tCtrl+3"
+msgid "Zoom &Out"
+msgstr "ç¸®å° (&O)"
#: Menus.cpp:542
-msgid "&Fit in Window\tCtrl+F"
-msgstr "ã¦ã£ã³ãã¦ã«åããã (&F)\tCtrl+F"
+msgid "&Fit in Window"
+msgstr "ã¦ã£ã³ãã¦ã«åããã (&F)"
#: Menus.cpp:543
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "åç´æ¹åã«åããã (&V)\tCtrl+Shift+F"
+msgid "Fit &Vertically"
+msgstr "åç´æ¹åã«åããã (&V)"
#: Menus.cpp:544
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "鏿ç¯å²ãæ¡å¤§ (&Z)\tCtrl+E"
+msgid "&Zoom to Selection"
+msgstr "鏿ç¯å²ãæ¡å¤§ (&Z)"
#: Menus.cpp:547
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
-msgstr "å
¨ã¦ã®ãã©ãã¯ã®ç¸®å° (&C) \tCtrl+Shift+C"
+msgid "&Collapse All Tracks"
+msgstr "å
¨ã¦ã®ãã©ãã¯ã®ç¸®å° (&C) "
#: Menus.cpp:548
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
-msgstr "å
¨ã¦ã®ãã©ãã¯ã®æ¡å¼µ (&x)\tCtrl+Shift+X"
+msgid "E&xpand All Tracks"
+msgstr "å
¨ã¦ã®ãã©ãã¯ã®æ¡å¼µ (&x)"
#: Menus.cpp:551
msgid "&Show Clipping"
@@ -2078,42 +1883,40 @@ msgid "T&ransport"
msgstr "é²é³ã¨åç (&r)"
#: Menus.cpp:591
-msgid "Play\tSpace"
-msgstr "åç\tSpace"
+msgid "Play"
+msgstr "åç"
#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
-msgstr "ã«ã¼ãåç(&L)\tShift+Space"
+msgid "&Loop Play"
+msgstr "ã«ã¼ãåç(&L)"
#: Menus.cpp:593
-msgid "&Pause\tP"
-msgstr "䏿忢 (&P) \tP"
+msgid "&Pause"
+msgstr "䏿忢 (&P) "
#: Menus.cpp:596
-msgid "&Stop\tSpace"
-msgstr "忢(&S)\tSpace"
+msgid "&Stop"
+msgstr "忢(&S)"
-#: Menus.cpp:595
-#: Menus.cpp:1010
-msgid "Skip to Start\tHome"
-msgstr "åãã¾ã§é²ãã\tHome"
+#: Menus.cpp:595 Menus.cpp:1010
+msgid "Skip to Start"
+msgstr "åãã¾ã§é²ãã"
-#: Menus.cpp:597
-#: Menus.cpp:1011
-msgid "Skip to End\tEnd"
-msgstr "çµããã¾ã§é²ãã\tEnd"
+#: Menus.cpp:597 Menus.cpp:1011
+msgid "Skip to End"
+msgstr "çµããã¾ã§é²ãã"
#: Menus.cpp:600
-msgid "&Record\tR"
-msgstr "é²é³ (&R) \tR"
+msgid "&Record"
+msgstr "é²é³ (&R) "
#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
-msgstr "ã¿ã¤ãã¼ã使ã£ãé²é³...(&T) \tShift+T"
+msgid "&Timer Record..."
+msgstr "ã¿ã¤ãã¼ã使ã£ãé²é³...(&T) "
#: Menus.cpp:604
-msgid "Append Record\tShift+R"
-msgstr "追å ãã¦é²é³\tShift+R"
+msgid "Append Record"
+msgstr "追å ãã¦é²é³"
#: Menus.cpp:607
msgid "Overdub (on/off)"
@@ -2140,15 +1943,14 @@ msgid "Add &New"
msgstr "æ°ãã追å (&N)"
#: Menus.cpp:630
-msgid "&Audio Track\tCtrl+Shift+N"
-msgstr "ãªã¼ãã£ãªãã©ã㯠(&A) \tCtrl+Shift+N"
+msgid "&Audio Track"
+msgstr "ãªã¼ãã£ãªãã©ã㯠(&A) "
#: Menus.cpp:631
msgid "&Stereo Track"
msgstr "ã¹ãã¬ãªãã©ã㯠(&S)"
-#: Menus.cpp:633
-#: TimeTrack.cpp:44
+#: Menus.cpp:633 TimeTrack.cpp:44
msgid "&Time Track"
msgstr "ã¿ã¤ã ãã©ãã¯ã(&T)"
@@ -2157,8 +1959,8 @@ msgid "Mi&x and Render"
msgstr "ããã¯ã¹ãã¦ä½æ (&x)"
#: Menus.cpp:647
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
-msgstr "æ°ãããã©ãã¯ã«ããã¯ã¹ãã¦ä½æ\tCtrl+Shift+M"
+msgid "Mix and Render to New Track"
+msgstr "æ°ãããã©ãã¯ã«ããã¯ã¹ãã¦ä½æ"
#: Menus.cpp:651
msgid "&Resample..."
@@ -2169,12 +1971,12 @@ msgid "Remo&ve Tracks"
msgstr "ãã©ãã¯åé¤ (&v)"
#: Menus.cpp:667
-msgid "&Mute All Tracks\tCtrl+U"
-msgstr "å
¨ã¦ã®ãã©ãã¯ã®ãã¥ã¼ã (&M) \tCtrl+U"
+msgid "&Mute All Tracks"
+msgstr "å
¨ã¦ã®ãã©ãã¯ã®ãã¥ã¼ã (&M) "
#: Menus.cpp:668
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
-msgstr "å
¨ã¦ã®ãã©ãã¯ã®ãã¥ã¼ãè§£é¤ (&U)\tCtrl+Shift+U"
+msgid "&UnMute All Tracks"
+msgstr "å
¨ã¦ã®ãã©ãã¯ã®ãã¥ã¼ãè§£é¤ (&U)"
#: Menus.cpp:672
msgid "Align with &Zero"
@@ -2220,17 +2022,18 @@ msgstr "ã«ã¼ã½ã«ãç§»åãã¦æãã (&g)"
msgid "Synchronize MIDI with Audio"
msgstr "MIDIããªã¼ãã£ãªã¨åæ"
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
+#: Menus.cpp:686
+#, fuzzy
+msgid "&Link Audio and Label Tracks"
msgstr "ãªã¼ãã£ãªã¨ã©ãã«ãã©ãã¯ããªã³ã¯"
-#: Menus.cpp:709
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "鏿ç¯å²ã«ã©ãã«ãä»ãã (&L) \tCtrl+B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr ""
#: Menus.cpp:710
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "åçéå§ä½ç½®ã«ã©ãã«ãä»ãã (&P) \tCtrl+M"
+msgid "Add Label At &Playback Position"
+msgstr "åçéå§ä½ç½®ã«ã©ãã«ãä»ãã (&P) "
#: Menus.cpp:716
msgid "S&ort tracks"
@@ -2248,9 +2051,7 @@ msgstr "åå (&N)"
msgid "&Generate"
msgstr "è£½ä½ (&G)"
-#: Menus.cpp:776
-#: Menus.cpp:860
-#: Menus.cpp:922
+#: Menus.cpp:776 Menus.cpp:860 Menus.cpp:922
msgid "Unsorted"
msgstr "æªåé¡"
@@ -2258,21 +2059,20 @@ msgstr "æªåé¡"
msgid "Effe&ct"
msgstr "广 (&c)"
-#: Menus.cpp:799
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "ååã®å¹æãé©ç¨\tCtrl+R"
-
#: Menus.cpp:877
msgid "&Analyze"
msgstr "è§£æ (&A)"
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
+
#: Menus.cpp:879
msgid "Plot Spectrum..."
msgstr "ã¹ãã¯ãã«è¡¨ç¤º..."
# i18n-hint: The name of the Help menu
-#: Menus.cpp:947
-#: Menus.cpp:950
+#: Menus.cpp:947 Menus.cpp:950
msgid "&Help"
msgstr "ãã«ã (&H)"
@@ -2285,8 +2085,8 @@ msgid "&Show Welcome Message..."
msgstr "ããããã表示 (&S)"
#: Menus.cpp:958
-msgid "&Index..."
-msgstr "ã¤ã³ããã¯ã¹... (&I)"
+msgid "&Help..."
+msgstr ""
#: Menus.cpp:959
msgid "Show &Log..."
@@ -2304,181 +2104,149 @@ msgstr "ãã³ããã¼ã¯... (&R)"
msgid "&Audio Device Info..."
msgstr "ãªã¼ãã£ãªãã¤ãã¤ã¹æ
å ± (&A)"
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
-msgstr "ãã¼ã«ãã¼ã¨ãã©ãã¯ãã¥ã¼ãéåãã«åãã¾ãã\tCtrl+Shift+F6"
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
+msgstr ""
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
-msgstr "ãã¼ã«ãã¼ã¨ãã©ãã¯ãã¥ã¼ãé åãã«åãã¾ãã\tCtrl+F6"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
+msgstr ""
#: Menus.cpp:985
-msgid "Selection Tool\tF1"
-msgstr "鏿ãã¼ã«\tF1"
+msgid "Selection Tool"
+msgstr "鏿ãã¼ã«"
#: Menus.cpp:986
-msgid "Envelope Tool\tF2"
-msgstr "ã¨ã³ããã¼ããã¼ã«\tF2"
+msgid "Envelope Tool"
+msgstr "ã¨ã³ããã¼ããã¼ã«"
#: Menus.cpp:987
-msgid "Draw Tool\tF3"
-msgstr "æç»ãã¼ã«\tF3"
+msgid "Draw Tool"
+msgstr "æç»ãã¼ã«"
#: Menus.cpp:988
-msgid "Zoom Tool\tF4"
-msgstr "æ¡å¤§ãã¼ã« \tF4"
+msgid "Zoom Tool"
+msgstr "æ¡å¤§ãã¼ã« "
#: Menus.cpp:989
-msgid "Time Shift Tool\tF5"
-msgstr "ã¿ã¤ã ã·ãããã¼ã«\tF5"
+msgid "Time Shift Tool"
+msgstr "ã¿ã¤ã ã·ãããã¼ã«"
#: Menus.cpp:990
-msgid "Multi Tool\tF6"
-msgstr "ãã«ããã¼ã«\tF6"
+msgid "Multi Tool"
+msgstr "ãã«ããã¼ã«"
#: Menus.cpp:992
-msgid "Next Tool\tD"
-msgstr "次ã®ãã¼ã«\tD"
+msgid "Next Tool"
+msgstr "次ã®ãã¼ã«"
#: Menus.cpp:993
-msgid "Previous Tool\tA"
-msgstr "ååã®ãã¼ã«\tA"
+msgid "Previous Tool"
+msgstr "ååã®ãã¼ã«"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
-msgstr " åç/忢\tSpace"
-
-#: Menus.cpp:996
-msgid "Stop\tS"
-msgstr "忢\tS"
-
-#: Menus.cpp:997
-msgid "Pause\tP"
-msgstr "忢\tP"
-
-#: Menus.cpp:998
-msgid "Record\tR"
-msgstr "é²é³\tR"
-
-#: Menus.cpp:999
-msgid "Record Append\tShift+R"
-msgstr "追å ãã¦é²é³\tShift+R"
+msgid "Play/Stop"
+msgstr " åç/忢"
#: Menus.cpp:1001
-msgid "Play/Stop and Set Cursor\tShift+A"
-msgstr "åç/忢 ã¨é¸æ\tShift+A"
+msgid "Play/Stop and Set Cursor"
+msgstr "åç/忢 ã¨é¸æ"
#: Menus.cpp:1004
-msgid "Play One Second\t1"
-msgstr "ï¼ç§éåç\t1"
+msgid "Play One Second"
+msgstr "ï¼ç§éåç"
#: Menus.cpp:1005
-msgid "Play To Selection\tB"
-msgstr "鏿ç¯å²ãåç\tB"
-
-#: Menus.cpp:1006
-msgid "Play Looped\tL"
-msgstr "ã«ã¼ãåç\tL"
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr "ã«ã¼ãåç\tShift+Space"
+msgid "Play To Selection"
+msgstr "鏿ç¯å²ãåç"
#: Menus.cpp:1008
-msgid "Play Cut Preview\tC"
-msgstr "ã«ãããã¬ãã¥ã¼ãåç\tC"
+msgid "Play Cut Preview"
+msgstr "ã«ãããã¬ãã¥ã¼ãåç"
#: Menus.cpp:1013
-msgid "Selection to Start\tShift+Home"
-msgstr "æåã¾ã§é¸æ\tShift+Home"
+msgid "Selection to Start"
+msgstr "æåã¾ã§é¸æ"
#: Menus.cpp:1014
-msgid "Selection to End\tShift+End"
-msgstr "æå¾ã¾ã§é¸æ\tShift+End"
+msgid "Selection to End"
+msgstr "æå¾ã¾ã§é¸æ"
#: Menus.cpp:1016
-msgid "DeleteKey\tBackspace"
-msgstr "ããªã¼ããã¼\tBackspace"
+msgid "DeleteKey"
+msgstr "ããªã¼ããã¼"
#: Menus.cpp:1021
-msgid "DeleteKey2\tDelete"
-msgstr "ããªã¼ããã¼ï¼\tDelete"
+msgid "DeleteKey2"
+msgstr "ããªã¼ããã¼ï¼"
-#: Menus.cpp:1027
-msgid "Seek left short period during playback\tLeft"
-msgstr "åçä¸ã«å·¦å´ã®çãåºéãæ¢ã \tLeft"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
+msgstr ""
-#: Menus.cpp:1028
-msgid "Seek right short period during playback\tRight"
-msgstr "åçä¸ã«å³å´ã®çãåºéãæ¢ã \tRight"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
+msgstr ""
-#: Menus.cpp:1029
-msgid "Seek left long period during playback\tShift+Left"
-msgstr "åçä¸ã«å·¦å´ã®é·ãåºéãæ¢ã \tShift+Left"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
+msgstr ""
-#: Menus.cpp:1030
-msgid "Seek right long period during playback\tShift+Right"
-msgstr "åçä¸ã«å³å´ã®é·ãåºéãæ¢ã \tShift+Right"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
+msgstr ""
#: Menus.cpp:1034
-msgid "Move Focus to Previous Track\tUp"
-msgstr "ãã©ã¼ã«ã¹ãåã®ãã©ãã¯ã«ç§»å \tUp"
+msgid "Move Focus to Previous Track"
+msgstr "ãã©ã¼ã«ã¹ãåã®ãã©ãã¯ã«ç§»å "
-#: Menus.cpp:1035
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
-msgstr "ãã©ã¼ã«ã¹ãåã®ãã©ãã¯ã«ç§»åãã¦é¸æã夿´ \tShift+tUp"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
+msgstr ""
#: Menus.cpp:1036
-msgid "Move Focus to Next Track\tDown"
-msgstr "ãã©ã¼ã«ã¹ã次ã®ãã©ãã¯ã¸ç§»å \tDown"
+msgid "Move Focus to Next Track"
+msgstr "ãã©ã¼ã«ã¹ã次ã®ãã©ãã¯ã¸ç§»å "
-#: Menus.cpp:1037
-msgid "Move Focus to Next and Change Selection\tShift+Down"
-msgstr "ãã©ã¼ã«ã¹ã次ã®ãã©ãã¯ã«ç§»åãã¦é¸æã夿´ \tShift+Down"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
+msgstr ""
#: Menus.cpp:1038
-msgid "Toggle Focused Track\tReturn"
-msgstr "ãã©ã¼ã«ã¹ãããã©ãã¯ãåãæ¿ã \tReturn"
-
-#: Menus.cpp:1039
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr "ãã©ã¼ã«ã¹ãããã©ãã¯ãåãæ¿ã\tNUMPAD_ENTER"
+msgid "Toggle Focused Track"
+msgstr "ãã©ã¼ã«ã¹ãããã©ãã¯ãåãæ¿ã"
#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
-msgstr "ãã©ãã¯ã®åãæ¿ã\tShift+Space"
-
-#: Menus.cpp:1042
-msgid "Cursor Left\tLeft"
-msgstr "ã«ã¼ã½ã«ãå·¦ã¸\tLeft"
+msgid "Cursor Left"
+msgstr "ã«ã¼ã½ã«ãå·¦ã¸"
#: Menus.cpp:1043
-msgid "Cursor Right\tRight"
-msgstr "ã«ã¼ã½ã«ãå³ã¸\tRight"
+msgid "Cursor Right"
+msgstr "ã«ã¼ã½ã«ãå³ã¸"
#: Menus.cpp:1044
-msgid "Cursor Short Jump Left\t,"
-msgstr "ã«ã¼ã½ã«ãå°ãã ãå·¦ã¸\t,"
+msgid "Cursor Short Jump Left"
+msgstr "ã«ã¼ã½ã«ãå°ãã ãå·¦ã¸"
#: Menus.cpp:1045
-msgid "Cursor Short Jump Right\t."
-msgstr "ã«ã¼ã½ã«ãå°ãã ãå³ã¸\t."
+msgid "Cursor Short Jump Right"
+msgstr "ã«ã¼ã½ã«ãå°ãã ãå³ã¸"
#: Menus.cpp:1046
-msgid "Cursor Long Jump Left\tShift+,"
-msgstr "ã«ã¼ã½ã«ã大ããå·¦ã¸\tShift+,"
+msgid "Cursor Long Jump Left"
+msgstr "ã«ã¼ã½ã«ã大ããå·¦ã¸"
#: Menus.cpp:1047
-msgid "Cursor Long Jump Right\tShift+."
-msgstr "ã«ã¼ã½ã«ã大ããå³ã¸\tShift+."
+msgid "Cursor Long Jump Right"
+msgstr "ã«ã¼ã½ã«ã大ããå³ã¸"
#: Menus.cpp:1049
-msgid "Selection Extend Left\tShift+Left"
-msgstr "鏿ç¯å²ã®å·¦ç«¯ãæ¡ãã\tShift+Left"
+msgid "Selection Extend Left"
+msgstr "鏿ç¯å²ã®å·¦ç«¯ãæ¡ãã"
#: Menus.cpp:1050
-msgid "Selection Extend Right\tShift+Right"
-msgstr "鏿ç¯å²ã®å³ç«¯ãæ¡ãã\tShift+Right"
+msgid "Selection Extend Right"
+msgstr "鏿ç¯å²ã®å³ç«¯ãæ¡ãã"
#: Menus.cpp:1052
msgid "Set (or Extend) Left Selection"
@@ -2489,52 +2257,52 @@ msgid "Set (or Extend) Right Selection"
msgstr "鏿ç¯å²ã®å³ç«¯ãè¨å®(ãããã¯å»¶é·)"
#: Menus.cpp:1055
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "鏿ç¯å²ã®å·¦ç«¯ã縮ãã\tCtrl+Shift+Right"
+msgid "Selection Contract Left"
+msgstr "鏿ç¯å²ã®å·¦ç«¯ã縮ãã"
#: Menus.cpp:1056
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "鏿ç¯å²ã®å³ç«¯ã縮ãã\tCtrl+Shift+Left"
+msgid "Selection Contract Right"
+msgstr "鏿ç¯å²ã®å³ç«¯ã縮ãã"
#: Menus.cpp:1058
-msgid "Change pan on focused track\tShift+P"
-msgstr "ãã©ã¼ã«ã¹ãããã©ãã¯ãåãæ¿ã\tShift+P"
+msgid "Change pan on focused track"
+msgstr "ãã©ã¼ã«ã¹ãããã©ãã¯ãåãæ¿ã"
#: Menus.cpp:1059
-msgid "Pan left on focused track\tAlt+Shift+Left"
-msgstr "ãã©ã¼ã«ã¹ãããã©ãã¯ãå·¦ã¸ãã³\tAlt+Shift+Left"
+msgid "Pan left on focused track"
+msgstr "ãã©ã¼ã«ã¹ãããã©ãã¯ãå·¦ã¸ãã³"
#: Menus.cpp:1060
-msgid "Pan right on focused track\tAlt+Shift+Right"
-msgstr "ãã©ã¼ã«ã¹ãããã©ãã¯ãå³ã¸ãã³\tAlt+Shift+Right"
+msgid "Pan right on focused track"
+msgstr "ãã©ã¼ã«ã¹ãããã©ãã¯ãå³ã¸ãã³"
#: Menus.cpp:1061
-msgid "Change gain on focused track\tShift+G"
-msgstr "ãã©ã¼ã«ã¹ãããã©ãã¯ã®ã²ã¤ã³ã夿´\tShift+G"
+msgid "Change gain on focused track"
+msgstr "ãã©ã¼ã«ã¹ãããã©ãã¯ã®ã²ã¤ã³ã夿´"
#: Menus.cpp:1062
-msgid "Increase gain on focused track\tAlt+Shift+Up"
-msgstr "ãã©ã¼ã«ã¹ãããã©ãã¯ã®ã²ã¤ã³ãä¸ãã \tAlt+Shift+Up"
+msgid "Increase gain on focused track"
+msgstr "ãã©ã¼ã«ã¹ãããã©ãã¯ã®ã²ã¤ã³ãä¸ãã "
#: Menus.cpp:1063
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
-msgstr "ãã©ã¼ã«ã¹ãããã©ãã¯ã®ã²ã¤ã³ãããã \tAlt+Shift+Down"
+msgid "Decrease gain on focused track"
+msgstr "ãã©ã¼ã«ã¹ãããã©ãã¯ã®ã²ã¤ã³ãããã "
#: Menus.cpp:1064
-msgid "Open menu on focused track\tShift+M"
-msgstr "ãã©ã¼ã«ã¹ãããã©ãã¯ã§ã¡ãã¥ã¼ãéã \tShift+M"
+msgid "Open menu on focused track"
+msgstr "ãã©ã¼ã«ã¹ãããã©ãã¯ã§ã¡ãã¥ã¼ãéã "
#: Menus.cpp:1065
-msgid "Mute/Unmute focused track\tShift+U"
-msgstr "ãã©ã¼ã«ã¹ãããã©ãã¯ããã¥ã¼ãå
¥ã/åããã \tShift+U"
+msgid "Mute/Unmute focused track"
+msgstr "ãã©ã¼ã«ã¹ãããã©ãã¯ããã¥ã¼ãå
¥ã/åããã "
#: Menus.cpp:1066
-msgid "Solo/Unsolo focused track\tShift+S"
-msgstr "ãã©ã¼ã«ã¹ãããã©ãã¯ãã½ãå
¥ã/åããã \tShift+S"
+msgid "Solo/Unsolo focused track"
+msgstr "ãã©ã¼ã«ã¹ãããã©ãã¯ãã½ãå
¥ã/åããã "
#: Menus.cpp:1067
-msgid "Close focused track\tShift+C"
-msgstr "ãã©ã¼ã«ã¹ããããã©ãã¯ãéãã \tShift+C"
+msgid "Close focused track"
+msgstr "ãã©ã¼ã«ã¹ããããã©ãã¯ãéãã "
# i18n-hint: Set snap-to mode on or off
# i18n-hint: Set snap-to mode on or off
@@ -2549,8 +2317,36 @@ msgid "Snap To Off"
msgstr "ã¹ãããã¢ã¼ããç¡å¹"
#: Menus.cpp:1073
-msgid "Full screen on/off\tF11"
-msgstr "ãã«ã¹ã¯ãªã¼ã³è¡¨ç¤ºon/off\tF11"
+msgid "Full screen on/off"
+msgstr "ãã«ã¹ã¯ãªã¼ã³è¡¨ç¤ºon/off"
+
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr ""
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr ""
+
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr ""
+
+#: Menus.cpp:1074
+msgid "Adjust input source"
+msgstr ""
# i18n-hint: This is the name of the menu item on Mac OS X only
#. i18n-hint: This is the name of the menu item on Mac OS X only
@@ -2611,8 +2407,8 @@ msgstr "ãã©ãã¯ãæåã«é¸æãã¦ãã ãã."
#: Menus.cpp:2369
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "ç¹°ãè¿ã %s\tCtrl+R"
+msgid "Repeat %s"
+msgstr "ç¹°ãè¿ã %s"
#: Menus.cpp:2512
msgid "There are no label tracks to export."
@@ -2627,8 +2423,7 @@ msgid "MIDI file (*.mid)|*.mid|Allegro file (*.gro)|*.gro"
msgstr "MIDI ãã¡ã¤ã« (*.mid)|*.mid|Allegro file (*.gro)|*.gro"
#: Menus.cpp:2643
-msgid ""
-"You have selected a filename with an unrecognized file extension.\n"
+msgid "You have selected a filename with an unrecognized file extension.\n"
"Do you want to continue?"
msgstr "èå¥ã§ããªãæ¡å¼µåã®ãã¡ã¤ã«åãé¸ã³ã¾ãã.ã¤ã¥ãã¾ãã?"
@@ -2644,9 +2439,7 @@ msgstr "ã¢ã³ãã¥ã¯ããã¾ãã"
msgid "Nothing to redo"
msgstr "ãªãã¥ã¯ããã¾ãã"
-#: Menus.cpp:2809
-#: TrackPanel.cpp:596
-#: toolbars/EditToolBar.cpp:133
+#: Menus.cpp:2809 TrackPanel.cpp:596 toolbars/EditToolBar.cpp:133
msgid "Cut"
msgstr "ã«ãã"
@@ -2662,10 +2455,7 @@ msgstr "åé¢ã«ãã"
msgid "Split-cut to the clipboard"
msgstr "ã«ããããå
容ãã¯ãªãããã¼ãã«éé¿"
-#: Menus.cpp:2914
-#: Menus.cpp:2986
-#: Menus.cpp:3178
-#: TrackPanel.cpp:598
+#: Menus.cpp:2914 Menus.cpp:2986 Menus.cpp:3178 TrackPanel.cpp:598
#: toolbars/EditToolBar.cpp:137
msgid "Paste"
msgstr "ãã¼ã¹ã"
@@ -2674,8 +2464,7 @@ msgstr "ãã¼ã¹ã"
msgid "Pasted text from the clipboard"
msgstr "ã¯ãªãããã¼ããããã¼ã¹ããããããã¹ã"
-#: Menus.cpp:2986
-#: Menus.cpp:3178
+#: Menus.cpp:2986 Menus.cpp:3178
msgid "Pasted from the clipboard"
msgstr "ã¯ãªãããã¼ããããã¼ã¹ããã"
@@ -2687,8 +2476,7 @@ msgstr "ãã®ç¨®é¡ã®ãªã¼ãã£ãªãã¼ã¿ãå¥ã®ç¨®é¡ã®ãã©ãã¯ã«
msgid "Copying stereo audio into a mono track is not allowed."
msgstr "ã¹ãã¬ãªã®ãªã¼ãã£ãªãã¼ã¿ãã¢ãã©ã«ãã©ãã¯ã«ã³ãã¼ãããã¨ã¯è¨±å¯ããã¦ãã¾ããã"
-#: Menus.cpp:3214
-#: toolbars/EditToolBar.cpp:139
+#: Menus.cpp:3214 toolbars/EditToolBar.cpp:139
msgid "Trim"
msgstr "ããªã "
@@ -2728,8 +2516,7 @@ msgstr "çµå"
msgid "Silenced selected tracks for %.2f seconds at %.2f"
msgstr "%.2f ç§ãã %.2f ç§ã¾ã§ã®ç¡é³ãã©ãã¯ã鏿"
-#: Menus.cpp:3315
-#: toolbars/EditToolBar.cpp:141
+#: Menus.cpp:3315 toolbars/EditToolBar.cpp:141
msgid "Silence"
msgstr "ç¡é³"
@@ -2813,8 +2600,7 @@ msgstr "ã©ãã«ãåå²"
msgid "Disjoined labeled regions"
msgstr "åé¢ããã©ãã«ä»ããããé å"
-#: Menus.cpp:3491
-#: TrackPanel.cpp:6134
+#: Menus.cpp:3491 TrackPanel.cpp:6134
msgid "Split"
msgstr "åé¢"
@@ -2830,15 +2616,6 @@ msgstr "æ°ãããã©ãã¯ã«åé¢"
msgid "Split at labels"
msgstr "ã©ãã«ãåé¢"
-#: Menus.cpp:3969
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "ã¹ãã¯ãã«ãããããããããã«ã¯, 鏿ããããã©ãã¯ã¯ãã¹ã¦ãåä¸ã®ãµã³ããªã¬ã¼ãã§ãªããã°ãªãã¾ãã."
-
-#: Menus.cpp:3995
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "大éã®ãªã¼ãã£ãªã鏿ããã¾ãã. æåã® %.1f ç§ã ããåæãããã§ããã."
-
#: Menus.cpp:4130
#, c-format
msgid "Imported labels from '%s'"
@@ -2878,8 +2655,7 @@ msgstr "å
¨ã¦ã®ãã¡ã¤ã« (*)|*"
msgid "Edit the metadata tags"
msgstr "ã¡ã¿ãã¼ã¿ã¿ã°ãç·¨é"
-#: Menus.cpp:4206
-#: export/Export.cpp:353
+#: Menus.cpp:4206 export/Export.cpp:353
msgid "Edit Metadata"
msgstr "ã¡ã¿ãã¼ã¿ãç·¨é"
@@ -2906,8 +2682,7 @@ msgstr "%dãåã®ãã©ãã¯ãä¸ã¤ã®æ°ããã¹ãã¬ãªãã©ãã¯ã«
msgid "Mixed and rendered %d tracks into one new mono track"
msgstr "%dãåã®ãã©ãã¯ãä¸ã¤ã®æ°ããã¢ãã©ã«ãã©ãã¯ã«ããã¯ã¹ãã¦ä½æ"
-#: Menus.cpp:4273
-#: Mix.cpp:121
+#: Menus.cpp:4273 Mix.cpp:121
msgid "&Mix and Render"
msgstr "ããã¯ã¹ãã¦ç½®ãæã (&M)"
@@ -2959,10 +2734,7 @@ msgstr "æ´åãå®äºãã¾ãã."
msgid "Created new audio track"
msgstr "æ°ãããªã¼ãã£ãªãã©ãã¯ã製ä½ããã¾ãã"
-#: Menus.cpp:4564
-#: Menus.cpp:4587
-#: Menus.cpp:4602
-#: Menus.cpp:4622
+#: Menus.cpp:4564 Menus.cpp:4587 Menus.cpp:4602 Menus.cpp:4622
msgid "New Track"
msgstr "æ°ãããã©ãã¯"
@@ -2998,8 +2770,7 @@ msgstr "ã¯ãªã¼ã³ãªé³å£°ããªã»ãããã¡ã¤ã«ãä¿å:"
msgid "CleanSpeech Presets (*.csp)|*.csp"
msgstr "ããããªé³å£°ä¿¡å·ã®ããªã»ãã (*.csp) |*.csp"
-#: Menus.cpp:4750
-#: export/Export.cpp:605
+#: Menus.cpp:4750 export/Export.cpp:605
msgid "Sorry, pathnames longer than 256 characters not supported."
msgstr "256 æå以ä¸ã®ãã¹åã¯ãµãã¼ããã¦ãã¾ãã."
@@ -3007,8 +2778,7 @@ msgstr "256 æå以ä¸ã®ãã¹åã¯ãµãã¼ããã¦ãã¾ãã."
msgid "Problem encountered exporting presets."
msgstr "ããªã»ãããå°å
¥ããéã«åé¡ãçãã¾ããã"
-#: Menus.cpp:4797
-#: export/Export.cpp:468
+#: Menus.cpp:4797 export/Export.cpp:468
msgid "Unable to export"
msgstr "æ¸ãåºãã§ãã¾ãã"
@@ -3020,20 +2790,16 @@ msgstr "ãã©ãã¯ã®åé¤"
msgid "Removed audio track(s)"
msgstr "åé¤ããããªã¼ãã£ãªãã©ãã¯"
-#: Menus.cpp:5138
-#: Menus.cpp:5193
-#: export/ExportFFmpeg.cpp:710
+#: Menus.cpp:5138 Menus.cpp:5193 export/ExportFFmpeg.cpp:710
#: export/ExportMP3.cpp:1928
msgid "Resample"
msgstr "ãªãµã³ãã«"
-#: Menus.cpp:5158
-#: TrackPanel.cpp:6361
+#: Menus.cpp:5158 TrackPanel.cpp:6361
msgid "New sample rate (Hz):"
msgstr "æ°ãããµã³ãã«ã¬ã¼ã(Hz):"
-#: Menus.cpp:5182
-#: TrackPanel.cpp:6385
+#: Menus.cpp:5182 TrackPanel.cpp:6385
msgid "The entered value is invalid"
msgstr "å
¥åãããå¤ã¯ä¸é©åã§ãã"
@@ -3050,8 +2816,7 @@ msgstr "ãã©ãã¯ã®ãªãµã³ãã«"
msgid "Resampled audio track(s)"
msgstr "ãªãµã³ãã«ããããªã¼ãã£ãªãã©ãã¯"
-#: Mix.cpp:95
-#: Mix.cpp:102
+#: Mix.cpp:95 Mix.cpp:102
msgid "Mix"
msgstr "Mix"
@@ -3071,6 +2836,10 @@ msgstr "å°å·ã«åé¡ãããã¾ã."
msgid "Print"
msgstr "å°å·"
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr ""
+
#: Project.cpp:673
msgid "Main Mix"
msgstr "主ããã¯ã¹"
@@ -3084,14 +2853,11 @@ msgstr "Audacity version %s ã¸ãããã"
msgid "(Recovered)"
msgstr "å復æ¸ã¿"
-#: Project.cpp:1546
-#: TrackPanel.cpp:796
-#: toolbars/ControlToolBar.cpp:192
+#: Menus.cpp:998
msgid "Record"
msgstr "é²é³"
-#: Project.cpp:1546
-#: TrackPanel.cpp:796
+#: Project.cpp:1546 TrackPanel.cpp:796
msgid "Recorded Audio"
msgstr "é²é³ããããªã¼ãã£ãª"
@@ -3100,15 +2866,13 @@ msgid "Save changes before closing?"
msgstr "éããåã«å¤æ´ãä¿åãã¾ããï¼"
#: Project.cpp:1567
-msgid ""
-"\n"
+msgid "\n"
"If saved, the project will have no tracks.\n"
"\n"
"To save any previously open tracks:\n"
"Cancel, Edit > Undo until all tracks\n"
"are open, then File > Save Project."
-msgstr ""
-"\n"
+msgstr "\n"
"\n"
"ããä¿åãããã¨ãããã¸ã§ã¯ãã®ãã©ãã¯ã¯ããªããªãã¾ã\n"
"\n"
@@ -3120,9 +2884,9 @@ msgstr ""
msgid "Save changes?"
msgstr "夿´ãä¿åãã¾ããï¼"
-#: Project.cpp:1772
-msgid "All files|*.*|All supported files|"
-msgstr "ãã¹ã¦ã®ãã¡ã¤ã«|*.*|å
¨ã¦ã®ãµãã¼ãããããã¡ã¤ã«|"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
+msgstr ""
#: Project.cpp:1802
msgid "Select one or more audio files..."
@@ -3132,19 +2896,16 @@ msgstr "ï¼ã¤ãããã¯è¤æ°ã®ãªã¼ãã£ãªãã¡ã¤ã«ã鏿ãã¦ä¸
msgid "Audacity projects|*.aup|"
msgstr "Audacity ããã¸ã§ã¯ã|*.aup|"
-#: Project.cpp:1882
-#: Project.cpp:2304
+#: Project.cpp:1882 Project.cpp:2304
#, c-format
-msgid ""
-"This file was saved by Audacity %s, a much\n"
+msgid "This file was saved by Audacity %s, a much\n"
"older version. The format has changed.\n"
"\n"
"Audacity could corrupt the file in opening\n"
"it, so you must back it up first.\n"
"\n"
"Open this file now?"
-msgstr ""
-"ãã®ãã¡ã¤ã«ã¯ãã¨ã¦ãå¤ããã¼ã¸ã§ã³ã®ãAudacity %sã\n"
+msgstr "ãã®ãã¡ã¤ã«ã¯ãã¨ã¦ãå¤ããã¼ã¸ã§ã³ã®ãAudacity %sã\n"
"ã«ãã£ã¦ä¿åããã¾ããããã¡ã¤ã«ãã©ã¼ãããã¯\n"
"彿ãã夿´ããã¾ããã\n"
"Audacity ã¯ãã®ãã¡ã¤ã«ãéããã¨ãã¦ç ´å£ãã¦ãã¾ãã§ãããã\n"
@@ -3156,23 +2917,30 @@ msgstr ""
msgid "1.0 or earlier"
msgstr "1.0 ãã以å"
-#: Project.cpp:1889
-#: Project.cpp:2316
+#: Project.cpp:1889 Project.cpp:2316
msgid "Opening old project file"
msgstr "å¤ãããã¸ã§ã¯ããã¡ã¤ã«ãéãã¦ãã¾ã"
-#: Project.cpp:1915
-#: Project.cpp:1923
+#: Project.cpp:2073
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr ""
+
+#: Project.cpp:1915 Project.cpp:1923
msgid "Error opening file"
msgstr "ãã¡ã¤ã«ã®èªã¿è¾¼ã¿æã«ã¨ã©ã¼ãçºçãã¾ãã"
#: Project.cpp:1929
#, c-format
-msgid ""
-"File may be invalid or corrupted: \n"
+msgid "File may be invalid or corrupted: \n"
"%s"
-msgstr ""
-"ãã¡ã¤ã«ã¯ä¸æ£ãå£ãã¦ããã§ãããã\n"
+msgstr "ãã¡ã¤ã«ã¯ä¸æ£ãå£ãã¦ããã§ãããã\n"
"%s"
#: Project.cpp:1930
@@ -3199,8 +2967,7 @@ msgstr "å復"
msgid "Project checker repaired file"
msgstr "ããã¸ã§ã¯ããã§ãã«ã¼ããã¡ã¤ã«ã修復ãã¾ããã"
-#: Project.cpp:2084
-#: effects/Repair.h:29
+#: Project.cpp:2084 effects/Repair.h:29
msgid "Repair"
msgstr "修復"
@@ -3211,12 +2978,10 @@ msgstr "ããã¸ã§ã¯ããã¼ã¿ãã©ã«ãã¼ãè¦ã¤ããã¾ãã: \"%s
#: Project.cpp:2273
#, c-format
-msgid ""
-"This file was saved using Audacity %s.\n"
+msgid "This file was saved using Audacity %s.\n"
"You are using Audacity %s - you need to upgrade to\n"
"a newer version to open this file."
-msgstr ""
-"ãã®ãã¡ã¤ã«ã¯ Audacity %s ãç¨ãã¦ä¿åããã¾ããã\n"
+msgstr "ãã®ãã¡ã¤ã«ã¯ Audacity %s ãç¨ãã¦ä¿åããã¾ããã\n"
"ããªã㯠Audacity %s ã使ç¨ãã¦ãã¾ã - ãã®ãã¡ã¤ã«ã\n"
"éãã«ã¯ãæ°ãããã¼ã¸ã§ã³ã«ã¢ããã°ã¬ã¼ãããå¿
è¦ãããã¾ãã"
@@ -3224,23 +2989,18 @@ msgstr ""
msgid "Can't open project file"
msgstr "ããã¸ã§ã¯ããã¡ã¤ã«ãéãã¾ãã"
-#: Project.cpp:2311
+#: Project.cpp:2484
#, c-format
-msgid ""
-"This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+msgid "This file was saved by Audacity %s.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
msgstr ""
-"ãã®ãã¡ã¤ã«ã¯ Audacity %s ã§ä¿åããã¦ãã¾ãã\n"
-"ãã®ãã¼ã¸ã§ã³ã® Audacity ã使ã£ã¦éããã¨ã¯ã§ãã¾ãããä¿åããã¨\n"
-"å¤ããã¼ã¸ã§ã³ã§ã¯ãã¯ãéããªããªãã¾ãã\n"
-"\n"
-"ãã®ãã¡ã¤ã«ãä»éãã¾ããï¼"
#: Project.cpp:2537
-msgid ""
-"Your project is now empty.\n"
+msgid "Your project is now empty.\n"
"If saved, the project will have no tracks.\n"
"\n"
"To save any previously open tracks:\n"
@@ -3248,8 +3008,7 @@ msgid ""
"are open, then File > Save Project.\n"
"\n"
"Save anyway?"
-msgstr ""
-"ããã¸ã§ã¯ãã¯ç©ºã§ãã\n"
+msgstr "ããã¸ã§ã¯ãã¯ç©ºã§ãã\n"
"ããä¿åæ¸ã¿ã§ããã°ããã®ããã¸ã§ã¯ãã«ã¯ãã©ãã¯ãããã¾ããã\n"
"\n"
"以åéãã¦ãããã©ãã¯ãä¿åããã«ã¯:\n"
@@ -3262,20 +3021,24 @@ msgstr ""
msgid "Warning empty project"
msgstr "è¦åï¼ããã¸ã§ã¯ãã¯ç©ºã§ãã"
-#: Project.cpp:2588
+#: Project.cpp:2792
#, c-format
-msgid ""
-"Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
-msgstr ""
-"ããã¸ã§ã¯ããã¡ã¤ã«ãä¿åã§ãã¾ãã. %s ã¯æ¸ãè¾¼ã¿ã§ããªãã,\n"
+#, fuzzy
+msgid "Could not save project. Perhaps %s \n"
+"is not writable or the disk is full."
+msgstr "ããã¸ã§ã¯ããã¡ã¤ã«ãä¿åã§ãã¾ãã. %s ã¯æ¸ãè¾¼ã¿ã§ããªãã,\n"
"ãã£ã¹ã¯ã䏿¯ã§ã."
-#: Project.cpp:2590
-#: Project.cpp:2605
+#: Project.cpp:2590 Project.cpp:2605
msgid "Error saving project"
msgstr "Audacity ããã¸ã§ã¯ããã¡ã¤ã«ã®ä¿åæã«ã¨ã©ã¼ãçºçãã¾ãã"
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
#: Project.cpp:2680
#, c-format
msgid "Saved %s"
@@ -3286,14 +3049,11 @@ msgstr "%s ãä¿åãã¾ãã"
msgid "Imported '%s'"
msgstr "'%s' ãåãè¾¼ã"
-#: Project.cpp:2807
-#: import/ImportPCM.cpp:483
-#: import/ImportPCM.cpp:527
+#: Project.cpp:2807 import/ImportPCM.cpp:483 import/ImportPCM.cpp:527
msgid "Import"
msgstr "åãè¾¼ã¿"
-#: Project.cpp:2840
-#: Project.cpp:2848
+#: Project.cpp:2840 Project.cpp:2848
msgid "Error importing"
msgstr "ãã¡ã¤ã«ã®åãè¾¼ã¿æã«ã¨ã©ã¼ãçºçãã¾ãã"
@@ -3306,30 +3066,26 @@ msgid "Windows PCM Audio file (*.wav)|*.wav"
msgstr "Windows PCM ãªã¼ãã£ãªãã¡ã¤ã« (*.wav)|*.wav"
#: Project.cpp:2891
-msgid ""
-"Audacity compressed project files (.aup) save your work in a smaller, compressed (.ogg) format. \n"
+msgid "Audacity compressed project files (.aup) save your work in a smaller, compressed (.ogg) format. \n"
"Compressed project files are a good way to transmit your project online, because they are much smaller. \n"
"To open a compressed project takes longer than usual, as it imports each compressed track. \n"
"\n"
"Most other programs can't open Audacity project files.\n"
"When you want to save a file that can be opened by other programs, select one of the\n"
"Export commands."
-msgstr ""
-"Audacity ã®å§ç¸®ãããããã¸ã§ã¯ããã¡ã¤ã« (.aup) ã¯ä½æ¥çµæããããµã¤ãºã®å°ããªå§ç¸®ããã (.ogg)ãã©ã¼ãããã§ä¿åãã¾ã.\n"
+msgstr "Audacity ã®å§ç¸®ãããããã¸ã§ã¯ããã¡ã¤ã« (.aup) ã¯ä½æ¥çµæããããµã¤ãºã®å°ããªå§ç¸®ããã (.ogg)ãã©ã¼ãããã§ä¿åãã¾ã.\n"
"å§ç¸®ãããããã¸ã§ã¯ããã¡ã¤ã«ã¯ããªã³ã©ã¤ã³ã§ããã¸ã§ã¯ããããã¨ãããã«ã¯ããæ¹æ³ã§ã. ãªããªããµã¤ãºãå°ãããªãããã§ã.å§ç¸®ãããããã¸ã§ã¯ããã¡ã¤ã«ãæãã«ã¯ãããããã®å§ç¸®ããããã©ãã¯ãèªã¿è¾¼ããããé常ããããæéããããã¾ã.\n"
"\n"
"ä»ã®ã»ã¨ãã©ã®ããã°ã©ã 㯠Audacity ããã¸ã§ã¯ããã¡ã¤ã«ãéããã¨ãã§ãã¾ãã\n"
"ä»ã®ããã°ã©ã ããéããã¨ã®ã§ãããã¡ã¤ã«ãä¿åããããªãã°ãæ¸ãåºãã³ãã³ãã®ãã¡ã®ã©ããã使ã£ã¦ä¸ãã."
#: Project.cpp:2894
-msgid ""
-"You are saving an Audacity project file (.aup).\n"
+msgid "You are saving an Audacity project file (.aup).\n"
"\n"
"Saving a project creates a file that only Audacity can open.\n"
"\n"
"To save an audio file for other programs, use one of the \"File > Export\" commands.\n"
-msgstr ""
-"Audacity ã®ããã¸ã§ã¯ããã¡ã¤ã« (.aup)ãä¿åãããã¨ãã¦ãã¾ã.\n"
+msgstr "Audacity ã®ããã¸ã§ã¯ããã¡ã¤ã« (.aup)ãä¿åãããã¨ãã¦ãã¾ã.\n"
"\n"
"ããã¸ã§ã¯ããä¿åãããã¨ã¯ãAudacity ã®ã¿ãéããã¨ã®ã§ãããã¡ã¤ã«ã使ãã¾ã.\n"
"\n"
@@ -3348,8 +3104,7 @@ msgstr "æ°ããããã¸ã§ã¯ãã製ä½ããã¾ãã"
msgid "Deleted %.2f seconds at t=%.2f"
msgstr "%.2f ç§åé¤ãã¾ãã (ä½ç½® %.2f)"
-#: Project.cpp:3114
-#: effects/Equalization.cpp:1276
+#: Project.cpp:3114 effects/Equalization.cpp:1276
#: effects/Equalization.cpp:2607
msgid "Delete"
msgstr "åé¤"
@@ -3430,8 +3185,7 @@ msgstr "Erik de Castro Lopo ã«ãã Libresample"
msgid "Libsamplerate error: %d\n"
msgstr "Libsamplerate ã¨ã©ã¼: %d\n"
-#: Resample.cpp:240
-#: Resample.cpp:250
+#: Resample.cpp:240 Resample.cpp:250
msgid "Resampling disabled."
msgstr "åãµã³ããªã³ã°ã¯ç¡å¹ã«ãªã£ã¦ãã¾ã."
@@ -3453,6 +3207,164 @@ msgstr "24-bit PCM"
msgid "32-bit float"
msgstr "32-bit float"
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
+
+#: export/ExportMultiple.cpp:245 prefs/DirectoriesPrefs.cpp:92
+msgid "Choose..."
+msgstr "鏿..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
+
+#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
+msgid "false"
+msgstr "å½"
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr "ãã¼ã«"
+
+#: toolbars/ControlToolBar.cpp:83
+msgid "Control"
+msgstr "ã³ã³ããã¼ã«"
+
+#: effects/LoadEffects.cpp:114 toolbars/MixerToolBar.cpp:60
+msgid "Mixer"
+msgstr "ãããµã¼"
+
+#: toolbars/MeterToolBar.cpp:50
+msgid "Meter"
+msgstr "ã¡ã¼ã¿ã¼"
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:121 prefs/AudioIOPrefs.cpp:139
+#: prefs/MidiIOPrefs.cpp:118 prefs/MidiIOPrefs.cpp:136
+#: toolbars/DeviceToolBar.cpp:57
+msgid "Device"
+msgstr "ããã¤ã¹:"
+
+#: toolbars/TranscriptionToolBar.cpp:84
+msgid "Transcription"
+msgstr "ç·¨æ²"
+
+#: TrackPanel.cpp:457 TrackPanel.cpp:458
+msgid "Track Panel"
+msgstr "ãã©ãã¯ããã«"
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: export/ExportMultiple.cpp:288 export/ExportMultiple.cpp:290
+msgid "Tracks"
+msgstr "ãã©ãã¯"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
#: Screenshot.cpp:384
msgid "Saved "
msgstr "ä¿åãã¾ãã"
@@ -3461,14 +3373,15 @@ msgstr "ä¿åãã¾ãã"
msgid "Error trying to save file: "
msgstr "ãã¡ã¤ã«ä¿åæã®ã¨ã©ã¼: "
-#: Sequence.cpp:804
-#: Sequence.cpp:814
-#: Sequence.cpp:821
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
+#: Sequence.cpp:804 Sequence.cpp:814 Sequence.cpp:821
msgid "Gap detected in project file\n"
msgstr "ããã¸ã§ã¯ããã¡ã¤ã«ã«ç©ºç½ãæ¤ç¥ããã¾ããã\n"
-#: ShuttleGui.cpp:1972
-#: effects/Effect.cpp:417
+#: ShuttleGui.cpp:1972 effects/Effect.cpp:417
#: effects/audiounits/AudioUnitEffect.cpp:877
msgid "Pre&view"
msgstr "ãã¬ãã¥ã¼ (&v)"
@@ -3509,8 +3422,7 @@ msgstr "ã¢ã«ãã å"
msgid "Track Number"
msgstr "ãã©ãã¯ãã³ãã¼:"
-#: Tags.cpp:644
-#: Tags.cpp:2147
+#: Tags.cpp:644 Tags.cpp:2147
msgid "Year"
msgstr "å¹´"
@@ -3518,9 +3430,7 @@ msgstr "å¹´"
msgid "Genre"
msgstr "ã¸ã£ã³ã«:"
-#: Tags.cpp:646
-#: Tags.cpp:2157
-#: prefs/MousePrefs.cpp:96
+#: Tags.cpp:646 Tags.cpp:2157 prefs/MousePrefs.cpp:96
msgid "Comments"
msgstr "ã³ã¡ã³ã"
@@ -3536,9 +3446,7 @@ msgstr "ã¿ã°å"
msgid "Tag Value"
msgstr "ã¿ã°å¤"
-#: Tags.cpp:829
-#: Tags.cpp:1486
-#: prefs/KeyConfigPrefs.cpp:116
+#: Tags.cpp:829 Tags.cpp:1486 prefs/KeyConfigPrefs.cpp:116
msgid "&Clear"
msgstr "ã¯ãªã¢ (&C)"
@@ -3554,71 +3462,42 @@ msgstr " 編é(&d)"
msgid "Rese&t..."
msgstr "ãªã»ãã(&t)"
-#: Tags.cpp:845
-#: Tags.cpp:1470
-#: Tags.cpp:1997
+#: Tags.cpp:845 Tags.cpp:1470 Tags.cpp:1997
msgid "Template"
msgstr "éå½¢"
-#: Tags.cpp:849
-#: Tags.cpp:1474
-#: Tags.cpp:2001
-#: prefs/KeyConfigPrefs.cpp:126
+#: Tags.cpp:849 Tags.cpp:1474 Tags.cpp:2001 prefs/KeyConfigPrefs.cpp:126
msgid "&Load..."
msgstr "èªã¿è¾¼ã¿...(&L)"
-#: Tags.cpp:850
-#: Tags.cpp:1475
-#: Tags.cpp:2002
-#: prefs/KeyConfigPrefs.cpp:125
+#: Tags.cpp:850 Tags.cpp:1475 Tags.cpp:2002 prefs/KeyConfigPrefs.cpp:125
msgid "&Save..."
msgstr "ä¿å...(&S)"
-#: Tags.cpp:852
-#: Tags.cpp:1477
-#: Tags.cpp:2004
+#: Tags.cpp:852 Tags.cpp:1477 Tags.cpp:2004
msgid "S&et Default"
msgstr "ããã©ã«ãã«æ»ã (&e)"
-#: Tags.cpp:1002
-#: Tags.cpp:1640
-#: Tags.cpp:2368
+#: Tags.cpp:1002 Tags.cpp:1640 Tags.cpp:2368
msgid "Edit Genres"
msgstr "ã¸ã£ã³ã«ãç·¨é"
-#: Tags.cpp:1035
-#: Tags.cpp:1047
-#: Tags.cpp:1062
-#: Tags.cpp:1075
-#: Tags.cpp:1678
-#: Tags.cpp:1690
-#: Tags.cpp:1705
-#: Tags.cpp:1718
-#: Tags.cpp:2411
-#: Tags.cpp:2423
-#: Tags.cpp:2438
-#: Tags.cpp:2451
+#: Tags.cpp:1035 Tags.cpp:1047 Tags.cpp:1062 Tags.cpp:1075 Tags.cpp:1678
+#: Tags.cpp:1690 Tags.cpp:1705 Tags.cpp:1718 Tags.cpp:2411 Tags.cpp:2423
+#: Tags.cpp:2438 Tags.cpp:2451
msgid "Reset Genres"
msgstr "ã¸ã£ã³ã«ããªã»ãã"
-#: Tags.cpp:1035
-#: Tags.cpp:1075
-#: Tags.cpp:1678
-#: Tags.cpp:1718
-#: Tags.cpp:2411
+#: Tags.cpp:1035 Tags.cpp:1075 Tags.cpp:1678 Tags.cpp:1718 Tags.cpp:2411
#: Tags.cpp:2451
msgid "Unable to save genre file."
msgstr "ã¸ã£ã³ã«ãã¡ã¤ã«ã«ä¿åã§ãã¾ããã"
-#: Tags.cpp:1046
-#: Tags.cpp:1689
-#: Tags.cpp:2422
+#: Tags.cpp:1046 Tags.cpp:1689 Tags.cpp:2422
msgid "Are you sure you want to reset the genre list to defaults?"
msgstr "ã¸ã£ã³ã«ãªã¹ããæ¢å®å¤ã«ãªã»ãããã¦ããããã§ãã?"
-#: Tags.cpp:1062
-#: Tags.cpp:1705
-#: Tags.cpp:2438
+#: Tags.cpp:1062 Tags.cpp:1705 Tags.cpp:2438
msgid "Unable to open genre file."
msgstr "ã¸ã£ã³ã«ãã¡ã¤ã«ãéãã¾ãã"
@@ -3626,118 +3505,94 @@ msgstr "ã¸ã£ã³ã«ãã¡ã¤ã«ãéãã¾ãã"
msgid "Load Metadata As:"
msgstr "ã¡ã¿ãã¼ã¿ããã¼ãï¼"
-#: Tags.cpp:1122
-#: Tags.cpp:1772
-#: Tags.cpp:2494
+#: Tags.cpp:1122 Tags.cpp:1772 Tags.cpp:2494
msgid "Error loading metadata"
msgstr "ã¡ã¿ãã¼ã¿ã®èªã¿è¾¼ã¿ã¨ã©ã¼"
-#: Tags.cpp:1097
-#: Tags.cpp:1151
-#: Tags.cpp:1751
-#: Tags.cpp:1787
-#: Tags.cpp:2473
+#: Tags.cpp:1097 Tags.cpp:1151 Tags.cpp:1751 Tags.cpp:1787 Tags.cpp:2473
#: Tags.cpp:2509
msgid "Save Metadata As:"
msgstr "ã¡ã¿ãã¼ã¿ãä¿å:"
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
#: Theme.cpp:638
#, c-format
-msgid ""
-"Audacity could not write file:\n"
+msgid "Audacity could not write file:\n"
" %s."
msgstr "ãã¡ã¤ã« %s ãæ¸ãè¾¼ãã¾ãã"
#: Theme.cpp:656
#, c-format
-msgid ""
-"Audacity could not open file:\n"
+msgid "Audacity could not open file:\n"
" %s\n"
"for writing."
msgstr "æ¸ãè¾¼ãããã®ãã¡ã¤ã« %s ãéãã¾ãã"
#: Theme.cpp:664
#, c-format
-msgid ""
-"Audacity could not write images to file:\n"
+msgid "Audacity could not write images to file:\n"
" %s."
msgstr "ã¤ã¡ã¼ã¸ããã¡ã¤ã« %s ã«æ¸ãè¾¼ãã¾ãã:"
#: Theme.cpp:799
#, c-format
-msgid ""
-"Audacity could not find file:\n"
+msgid "Audacity could not find file:\n"
" %s.\n"
"Theme not loaded."
-msgstr ""
-"ãã¡ã¤ã« %s \n"
+msgstr "ãã¡ã¤ã« %s \n"
"ãè¦ã¤ããã¾ããã\n"
"ãã¼ãã¯ãã¼ãããã¾ããã"
-#: Theme.cpp:807
-#: Theme.cpp:896
+#: Theme.cpp:807 Theme.cpp:896
#, c-format
-msgid ""
-"Audacity could not load file:\n"
+msgid "Audacity could not load file:\n"
" %s.\n"
"Bad png format perhaps?"
-msgstr ""
-"ãã¡ã¤ã« %s \n"
+msgstr "ãã¡ã¤ã« %s \n"
"ããã¼ãã§ãã¾ããã\n"
"å¤å png ãã©ã¼ããããå¤ãããªãã§ããï¼"
#: Theme.cpp:823
-msgid ""
-"Audacity could not read its default theme.\n"
+msgid "Audacity could not read its default theme.\n"
"Please report the problem."
-msgstr ""
-"è¦å®ã®ãã¼ããèªã¿åããã¨ãã§ãã¾ããã\n"
+msgstr "è¦å®ã®ãã¼ããèªã¿åããã¨ãã§ãã¾ããã\n"
"åé¡ãå ±åãã¦ãã ããã"
#: Theme.cpp:918
#, c-format
-msgid ""
-"None of the expected theme component files\n"
+msgid "None of the expected theme component files\n"
" were found in:\n"
" %s."
msgstr "ãã¼ããæ§æããã§ããããã¡ã¤ã«ãã%s ã§è¦ã¤ããã¾ããã"
-#: Theme.cpp:942
-#: effects/NoiseRemoval.cpp:173
+#: Theme.cpp:942 effects/NoiseRemoval.cpp:173
#, c-format
-msgid ""
-"Could not create directory:\n"
+msgid "Could not create directory:\n"
" %s"
-msgstr ""
-"ãã£ã¬ã¯ããä½ãã¾ãã: \n"
+msgstr "ãã£ã¬ã¯ããä½ãã¾ãã: \n"
" %s"
#: Theme.cpp:963
#, c-format
-msgid ""
-"Audacity could not save file:\n"
+msgid "Audacity could not save file:\n"
" %s"
-msgstr ""
-"ãã¡ã¤ã«ã«ä¿åã§ãã¾ãã:\n"
+msgstr "ãã¡ã¤ã«ã«ä¿åã§ãã¾ãã:\n"
"%s"
#: Theme.cpp:975
#, c-format
-msgid ""
-"All required files in:\n"
+msgid "All required files in:\n"
" %s\n"
"were already present."
-msgstr ""
-"%s\n"
+msgstr "%s\n"
"ã«ããå
¨ã¦ã®è¦æ±ããããã¡ã¤ã«ã¯\n"
"æ¢ã«åå¨ãã¦ãã¾ãã"
-#: TimeDialog.cpp:53
-#: TimerRecordDialog.cpp:227
-#: TimerRecordDialog.cpp:305
-#: TimerRecordDialog.cpp:309
-#: effects/Noise.cpp:243
-#: effects/ToneGen.cpp:323
+#: TimeDialog.cpp:53 TimerRecordDialog.cpp:227 TimerRecordDialog.cpp:305
+#: TimerRecordDialog.cpp:309 effects/Noise.cpp:243 effects/ToneGen.cpp:323
#: effects/ToneGen.cpp:366
msgid "Duration"
msgstr "æç¶æé"
@@ -3746,6 +3601,14 @@ msgstr "æç¶æé"
msgid "Audacity Timer Record"
msgstr "Audacity ã¿ã¤ãã¼é²é³"
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
#: TimerRecordDialog.cpp:224
msgid "Recording start"
msgstr "é²é³ã®éå§"
@@ -3785,74 +3648,51 @@ msgstr "é²é³éå§ãå¾
ã£ã¦ãã¾ã %s \n"
msgid "Audacity Timer Record - Waiting for Start"
msgstr "Audacity ã¿ã¤ãã¼é²é³ - éå§å¾
æ©ä¸"
-#: TrackPanel.cpp:457
-#: TrackPanel.cpp:458
-msgid "Track Panel"
-msgstr "ãã©ãã¯ããã«"
-
-#: TrackPanel.cpp:541
-#: prefs/QualityPrefs.cpp:97
+#: TrackPanel.cpp:541 prefs/QualityPrefs.cpp:97
msgid "Other..."
msgstr "ãã®ä»..."
-#: TrackPanel.cpp:549
-#: TrackPanel.cpp:571
-#: TrackPanel.cpp:580
-#: TrackPanel.cpp:588
+#: TrackPanel.cpp:549 TrackPanel.cpp:571 TrackPanel.cpp:580 TrackPanel.cpp:588
#: TrackPanel.cpp:5793
msgid "Name..."
msgstr "åå..."
-#: TrackPanel.cpp:551
-#: TrackPanel.cpp:573
-#: TrackPanel.cpp:584
-#: TrackPanel.cpp:590
+#: TrackPanel.cpp:551 TrackPanel.cpp:573 TrackPanel.cpp:584 TrackPanel.cpp:590
#: TrackPanel.cpp:5797
msgid "Move Track Up"
msgstr "ãã©ãã¯ãä¸ã¸ç§»å"
-#: TrackPanel.cpp:552
-#: TrackPanel.cpp:574
-#: TrackPanel.cpp:585
-#: TrackPanel.cpp:591
+#: TrackPanel.cpp:552 TrackPanel.cpp:574 TrackPanel.cpp:585 TrackPanel.cpp:591
#: TrackPanel.cpp:5798
msgid "Move Track Down"
msgstr "ãã©ãã¯ãä¸ã¸ç§»å"
-#: TrackPanel.cpp:554
-#: effects/ToneGen.cpp:319
-#: prefs/GUIPrefs.cpp:154
+#: TrackPanel.cpp:554 effects/ToneGen.cpp:319 prefs/GUIPrefs.cpp:154
msgid "Waveform"
msgstr "波形"
-#: TrackPanel.cpp:555
-#: prefs/GUIPrefs.cpp:155
+#: TrackPanel.cpp:555 prefs/GUIPrefs.cpp:155
msgid "Waveform (dB)"
msgstr "波形 (dB)"
-#: TrackPanel.cpp:557
-#: prefs/GUIPrefs.cpp:157
+#: TrackPanel.cpp:557 prefs/GUIPrefs.cpp:157
msgid "Spectrum log(f)"
msgstr "対æ°å¨æ³¢æ°ã§ã®ã¹ãã¯ããã°ã©ã 表示 "
#. i18n-hint: short form of 'logarithm'
-#: TrackPanel.cpp:558
-#: prefs/GUIPrefs.cpp:158
+#: TrackPanel.cpp:558 prefs/GUIPrefs.cpp:158
msgid "Pitch (EAC)"
msgstr "ããã (EAC)"
-#: TrackPanel.cpp:560
-#: TrackPanel.cpp:6096
+#: TrackPanel.cpp:560 TrackPanel.cpp:6096
msgid "Mono"
msgstr "ã¢ãã©ã«"
-#: TrackPanel.cpp:561
-#: TrackPanel.cpp:6095
+#: TrackPanel.cpp:561 TrackPanel.cpp:6095
msgid "Left Channel"
msgstr "å·¦ãã£ã³ãã«"
-#: TrackPanel.cpp:562
-#: TrackPanel.cpp:6095
+#: TrackPanel.cpp:562 TrackPanel.cpp:6095
msgid "Right Channel"
msgstr "å³ãã£ã³ãã«"
@@ -3864,12 +3704,15 @@ msgstr "ã¹ãã¬ãªãã©ãã¯ã®ä½è£½"
msgid "Split Stereo Track"
msgstr "ã¹ãã¬ãªãã©ãã¯ãåé¢"
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr ""
+
#: TrackPanel.cpp:566
msgid "Set Sample Format"
msgstr "ãµã³ãã«ãã©ã¼ããããè¨å®"
-#: TrackPanel.cpp:568
-#: TrackPanel.cpp:6341
+#: TrackPanel.cpp:568 TrackPanel.cpp:6341
msgid "Set Rate"
msgstr "ã¬ã¼ããã»ãã"
@@ -3881,8 +3724,7 @@ msgstr "ãªã¯ã¿ã¼ããä¸ãã"
msgid "Down Octave"
msgstr "ãªã¯ã¿ã¼ããä¸ãã"
-#: TrackPanel.cpp:582
-#: TrackPanel.cpp:5795
+#: TrackPanel.cpp:582 TrackPanel.cpp:5795
msgid "Font..."
msgstr "ãã©ã³ã..."
@@ -3890,8 +3732,7 @@ msgstr "ãã©ã³ã..."
msgid "Set Range..."
msgstr "ç¯å²ãã»ãã..."
-#: TrackPanel.cpp:597
-#: toolbars/EditToolBar.cpp:135
+#: TrackPanel.cpp:597 toolbars/EditToolBar.cpp:135
msgid "Copy"
msgstr "ã³ãã¼"
@@ -3937,21 +3778,13 @@ msgstr "å·¦ã®é¸æç¯å²ãç§»åãããããã«ã¯ã¯ãªãã¯ããå¾ã«
msgid "Click and drag to move right selection boundary."
msgstr "å³ã®é¸æç¯å²ãç§»åãããããã«ã¯ã¯ãªãã¯ããå¾ã«ãã©ãã°ãã¦ä¸ãã."
-#: TrackPanel.cpp:1730
-#: TrackPanel.cpp:3959
-#: TrackPanel.cpp:3991
-#: TrackPanel.cpp:4255
-#: TrackPanel.cpp:6490
-#: TrackPanel.cpp:6510
+#: TrackPanel.cpp:1730 TrackPanel.cpp:3959 TrackPanel.cpp:3991
+#: TrackPanel.cpp:4255 TrackPanel.cpp:6490 TrackPanel.cpp:6510
msgid "Modified Label"
msgstr "夿´ãããã©ãã«"
-#: TrackPanel.cpp:1731
-#: TrackPanel.cpp:3960
-#: TrackPanel.cpp:3992
-#: TrackPanel.cpp:4256
-#: TrackPanel.cpp:6491
-#: TrackPanel.cpp:6511
+#: TrackPanel.cpp:1731 TrackPanel.cpp:3960 TrackPanel.cpp:3992
+#: TrackPanel.cpp:4256 TrackPanel.cpp:6491 TrackPanel.cpp:6511
msgid "Label Edit"
msgstr "ã©ãã«ã®ç·¨é"
@@ -3959,8 +3792,7 @@ msgstr "ã©ãã«ã®ç·¨é"
msgid "Adjusted envelope."
msgstr "ã¨ã³ããã¼ãã®èª¿æ´."
-#: TrackPanel.cpp:1972
-#: prefs/MousePrefs.cpp:115
+#: TrackPanel.cpp:1972 prefs/MousePrefs.cpp:115
msgid "Envelope"
msgstr "ã¨ã³ããã¼ã"
@@ -3983,9 +3815,7 @@ msgstr "å³"
msgid "Time shifted tracks/clips %s %.02f seconds"
msgstr "ã¿ã¤ã ã·ããããããã©ãã¯/ã¯ãªãã %s %.02f ç§"
-#: TrackPanel.cpp:2133
-#: prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:112
+#: TrackPanel.cpp:2133 prefs/MousePrefs.cpp:111 prefs/MousePrefs.cpp:112
#: prefs/MousePrefs.cpp:113
msgid "Time-Shift"
msgstr "ã¿ã¤ã ã·ãã"
@@ -4026,39 +3856,31 @@ msgstr "ç§»åããããã³ã¹ã©ã¤ãã¼"
# i18n-hint: Title of the Gain slider, used to adjust the volume
# i18n-hint: Title of the Gain slider, used to adjust the volume
#. i18n-hint: Title of the Gain slider, used to adjust the volume
-#: TrackPanel.cpp:3449
-#: TrackPanel.cpp:5703
-#: TrackPanel.cpp:7244
+#: TrackPanel.cpp:3449 TrackPanel.cpp:5703 TrackPanel.cpp:7244
msgid "Gain"
msgstr "ã²ã¤ã³èª¿æ´"
# i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
# i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: TrackPanel.cpp:3449
-#: TrackPanel.cpp:5641
-#: TrackPanel.cpp:7251
+#: TrackPanel.cpp:3449 TrackPanel.cpp:5641 TrackPanel.cpp:7251
msgid "Pan"
msgstr "ãã³ã¹ã©ã¤ãã¼"
-#: TrackPanel.cpp:3576
-#: TrackPanel.cpp:6441
+#: TrackPanel.cpp:3576 TrackPanel.cpp:6441
msgid "up"
msgstr "ã¢ãã"
-#: TrackPanel.cpp:3580
-#: TrackPanel.cpp:6442
+#: TrackPanel.cpp:3580 TrackPanel.cpp:6442
msgid "down"
msgstr "ãã¦ã³"
-#: TrackPanel.cpp:3587
-#: TrackPanel.cpp:6437
+#: TrackPanel.cpp:3587 TrackPanel.cpp:6437
#, c-format
msgid "Moved '%s' %s"
msgstr "ç§»å '%s' %s"
-#: TrackPanel.cpp:3590
-#: TrackPanel.cpp:6443
+#: TrackPanel.cpp:3590 TrackPanel.cpp:6443
msgid "Move Track"
msgstr "ãã©ãã¯ã®ç§»å"
@@ -4090,14 +3912,6 @@ msgstr "ãã³ã®èª¿æ´."
msgid "Adjusted gain"
msgstr "ã²ã¤ã³ã®èª¿æ´:"
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr "波形ãã©ãã¯ãã°ã«ã¼ãå"
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr "å
¨ã¦ã®ã°ã«ã¼ãã³ã°ãè§£é¤"
-
#: TrackPanel.cpp:5923
msgid "Can't delete track with active audio"
msgstr "ã¢ã¯ãã£ããªãªã¼ãã£ãªã¨ä¸ç·ã«ãã©ãã¯ã®åé¤ã¯ã§ãã¾ããã"
@@ -4118,8 +3932,7 @@ msgstr "å·¦,"
msgid "Right, "
msgstr "å³,"
-#: TrackPanel.cpp:6105
-#: TrackPanel.cpp:6251
+#: TrackPanel.cpp:6105 TrackPanel.cpp:6251
#, c-format
msgid "Changed '%s' to %s"
msgstr "'%s' ãã %s ã«å¤æ´ããã¾ãã"
@@ -4133,6 +3946,11 @@ msgstr "ãã£ã³ãã«"
msgid "Split stereo track '%s'"
msgstr "ã¹ãã¬ãªãã©ã㯠'%s' ãåé¢"
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
#: TrackPanel.cpp:6169
#, c-format
msgid "Made '%s' a stereo track"
@@ -4159,8 +3977,7 @@ msgstr "ãã©ã¼ãããã®å¤æ´"
msgid "Change lower speed limit (%) to:"
msgstr "æä½é度å¶éã夿´ (%):"
-#: TrackPanel.cpp:6406
-#: TrackPanel.cpp:6407
+#: TrackPanel.cpp:6406 TrackPanel.cpp:6407
msgid "Lower speed limit"
msgstr "æä½ã¹ãã¼ãã®å¶é"
@@ -4168,8 +3985,7 @@ msgstr "æä½ã¹ãã¼ãã®å¶é"
msgid "Change upper speed limit (%) to:"
msgstr "æé«é度å¶éã夿´ (%):"
-#: TrackPanel.cpp:6413
-#: TrackPanel.cpp:6414
+#: TrackPanel.cpp:6413 TrackPanel.cpp:6414
msgid "Upper speed limit"
msgstr "ä¸ä½é度ã®å¶é"
@@ -4203,16 +4019,18 @@ msgstr "ååã®å¤æ´"
msgid "Label Track Font"
msgstr "ãã©ãã¯ã©ãã«ã®ãã©ã³ã"
-#: TrackPanel.cpp:6592
-#: TrackPanel.cpp:6598
+#: TrackPanel.cpp:6592 TrackPanel.cpp:6598
msgid "Face name"
msgstr "ãã©ã³ãå"
-#: TrackPanel.cpp:6602
-#: TrackPanel.cpp:6609
+#: TrackPanel.cpp:6602 TrackPanel.cpp:6609
msgid "Face size"
msgstr "ãã©ã³ããµã¤ãº"
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr ""
+
#: TrackPanel.cpp:7171
msgid "Mute"
msgstr "Mute"
@@ -4246,10 +4064,7 @@ msgstr "ã½ãå
¥ã"
msgid " Select On"
msgstr "鏿"
-#: VoiceKey.cpp:88
-#: VoiceKey.cpp:238
-#: VoiceKey.cpp:376
-#: VoiceKey.cpp:517
+#: VoiceKey.cpp:88 VoiceKey.cpp:238 VoiceKey.cpp:376 VoiceKey.cpp:517
msgid "Selection is too small to use voice key."
msgstr "ãã¤ã¹ãã¼ã使ãã«ã¯é¸æç¯å²ã¯å°ãããã§ãã"
@@ -4276,10 +4091,7 @@ msgstr "æ¹åã®å¤å -- å¹³å: %1.4f æ¨æºåå·®: (%1.4f)\n"
msgid "Audio Track"
msgstr "Audio Track"
-#: WaveTrack.cpp:597
-#: WaveTrack.cpp:616
-#: WaveTrack.cpp:1057
-#: WaveTrack.cpp:1076
+#: WaveTrack.cpp:597 WaveTrack.cpp:616 WaveTrack.cpp:1057 WaveTrack.cpp:1076
msgid "There is not enough room available to paste the selection"
msgstr "鏿ç¯å²ããã¼ã¹ãããã«ã¯ä½è£ãããã¾ããã"
@@ -4297,25 +4109,21 @@ msgstr "ãã©ã°ã¤ã³ 1 ãã %i"
msgid "Plugins %i to %i"
msgstr "ãã©ã°ã¤ã³ %i ãã %i"
-#: commands/CommandManager.cpp:857
-#, fuzzy
-msgid "Disallowed for some reason. Try selecting some audio first?"
-msgstr "ä½ããã®çç±ã§è¨±å¯ããã¾ãããã©ããã®ãªã¼ãã£ãªãå
ã«é¸ãã§ã¿ã¦ãã ããã"
+#: commands/CommandManager.cpp:923
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
+msgstr ""
#: commands/CommandManager.cpp:892
-msgid ""
-"You can only do this when playing and recording are\n"
+msgid "You can only do this when playing and recording are\n"
" stopped. [Pausing is not sufficient.]"
-msgstr ""
-"é²é³ã¨åçã忢ãã¦ããã¨ãã®ã¿ããã®ä½æ¥ã¯å¯è½ã§ãã\n"
+msgstr "é²é³ã¨åçã忢ãã¦ããã¨ãã®ã¿ããã®ä½æ¥ã¯å¯è½ã§ãã\n"
"[ä¸æåæ¢ç¶æ
ã§ãã ãã§ãã]"
#: commands/CommandManager.cpp:894
-msgid ""
-"You must first select some stereo audio for this\n"
+msgid "You must first select some stereo audio for this\n"
" to use. [You can't use this with mono.]"
-msgstr ""
-"ãã®å©ç¨ã®ããã«ã¯ãã¹ãã¬ãªã®ãªã¼ãã£ãªãä½ãæåã«é¸ã¶ã¹ãã§ãã\n"
+msgstr "ãã®å©ç¨ã®ããã«ã¯ãã¹ãã¬ãªã®ãªã¼ãã£ãªãä½ãæåã«é¸ã¶ã¹ãã§ãã\n"
"[ã¢ãã©ã«ã®ãªã¼ãã£ãªã«ã¯å©ç¨ã§ãã¾ããã]"
#: commands/CommandManager.cpp:896
@@ -4323,11 +4131,9 @@ msgid "You must first select some audio for this to use."
msgstr "ãã©ãã¯ãæåã«é¸æãã¦ãã ãã."
#: commands/CommandManager.cpp:898
-msgid ""
-"You must first select some audio for this\n"
+msgid "You must first select some audio for this\n"
" to use. [Selecting other kinds of track won't work.]"
-msgstr ""
-"ãã®å©ç¨ã®ããã«ã¯ããªã¼ãã£ãªãä½ãæåã«é¸ã¶ã¹ãã§ãã\n"
+msgstr "ãã®å©ç¨ã®ããã«ã¯ããªã¼ãã£ãªãä½ãæåã«é¸ã¶ã¹ãã§ãã\n"
"[ãªã¼ãã£ãªä»¥å¤ã®ãã©ãã¯ã«ã¯å©ç¨ã§ãã¾ããã]"
#: commands/CommandManager.cpp:903
@@ -4352,8 +4158,7 @@ msgstr "ã¨ãã§ã¯ãã®é©ç¨: %s %.1f dB"
msgid "Amplify"
msgstr "å¢å¹
"
-#: effects/Amplify.cpp:155
-#: effects/Compressor.cpp:476
+#: effects/Amplify.cpp:155 effects/Compressor.cpp:476
#: effects/Normalize.cpp:337
msgid "by Dominic Mazzoni"
msgstr "Dominic Mazzoni ã«ãã"
@@ -4374,9 +4179,7 @@ msgstr "æ°ããæå¤§æ¯å¹
"
msgid "Allow clipping"
msgstr "ã¯ãªããã³ã°ã許å¯"
-#: effects/Amplify.cpp:222
-#: effects/Amplify.cpp:279
-#: effects/Amplify.cpp:323
+#: effects/Amplify.cpp:222 effects/Amplify.cpp:279 effects/Amplify.cpp:323
msgid "-Infinity"
msgstr "-ç¡é"
@@ -4392,9 +4195,7 @@ msgstr "å¢å¹
"
msgid "You selected a track which does not contain audio. AutoDuck can only process audio tracks."
msgstr "ãªã¼ãã£ãªãå«ã¾ãªããã©ãã¯ãé¸ã°ãã¾ããããªã¼ãããã¯ã¯ãªã¼ãã£ãªãã©ãã¯ã®ã¿ãå¦çã§ãã¾ãã"
-#: effects/AutoDuck.cpp:126
-#: effects/AutoDuck.cpp:138
-#: effects/AutoDuck.cpp:453
+#: effects/AutoDuck.cpp:126 effects/AutoDuck.cpp:138 effects/AutoDuck.cpp:453
#: effects/AutoDuck.cpp:570
msgid "Auto Duck"
msgstr "ãªã¼ãããã¯"
@@ -4416,24 +4217,14 @@ msgid "Maximum pause:"
msgstr "æå¤§ä¼æ¢:"
#. i18n-hint: Name of time display format that shows time in seconds
-#: effects/AutoDuck.cpp:494
-#: effects/AutoDuck.cpp:499
-#: effects/AutoDuck.cpp:504
-#: effects/AutoDuck.cpp:509
-#: effects/AutoDuck.cpp:514
-#: effects/Contrast.cpp:263
-#: effects/Contrast.cpp:286
-#: prefs/AudioIOPrefs.cpp:172
-#: prefs/AudioIOPrefs.cpp:180
-#: prefs/AudioIOPrefs.cpp:182
-#: prefs/AudioIOPrefs.cpp:207
-#: prefs/AudioIOPrefs.cpp:209
-#: prefs/MidiIOPrefs.cpp:161
-#: prefs/MidiIOPrefs.cpp:163
-#: prefs/MidiIOPrefs.cpp:187
-#: prefs/MidiIOPrefs.cpp:189
-#: prefs/MidiIOPrefs.cpp:197
-#: widgets/TimeTextCtrl.cpp:263
+#: effects/AutoDuck.cpp:494 effects/AutoDuck.cpp:499 effects/AutoDuck.cpp:504
+#: effects/AutoDuck.cpp:509 effects/AutoDuck.cpp:514 effects/Contrast.cpp:263
+#: effects/Contrast.cpp:286 prefs/AudioIOPrefs.cpp:172
+#: prefs/AudioIOPrefs.cpp:180 prefs/AudioIOPrefs.cpp:182
+#: prefs/AudioIOPrefs.cpp:207 prefs/AudioIOPrefs.cpp:209
+#: prefs/MidiIOPrefs.cpp:161 prefs/MidiIOPrefs.cpp:163
+#: prefs/MidiIOPrefs.cpp:187 prefs/MidiIOPrefs.cpp:189
+#: prefs/MidiIOPrefs.cpp:197 widgets/TimeTextCtrl.cpp:263
msgid "seconds"
msgstr "ç§"
@@ -4453,8 +4244,7 @@ msgstr "å
å´ã®ãã§ã¼ããã¦ã³ããé·ã:"
msgid "Inner fade up length:"
msgstr "å
å´ã®ãã§ã¼ãã¢ããããé·ã:"
-#: effects/AutoDuck.cpp:521
-#: effects/Compressor.cpp:494
+#: effects/AutoDuck.cpp:521 effects/Compressor.cpp:494
msgid "Threshold:"
msgstr "é¾å¤:"
@@ -4474,10 +4264,8 @@ msgstr "ãªã¼ãããã¯..."
msgid "Processing Auto Duck..."
msgstr "ãªã¼ãã£ãªããã¯ã§ã®å¦ç..."
-#: effects/AvcCompressor.cpp:738
-#: effects/VST/VSTEffect.cpp:455
-#: effects/audiounits/AudioUnitEffect.cpp:882
-#: effects/nyquist/Nyquist.cpp:1053
+#: effects/AvcCompressor.cpp:738 effects/VST/VSTEffect.cpp:455
+#: effects/audiounits/AudioUnitEffect.cpp:882 effects/nyquist/Nyquist.cpp:1053
#: widgets/ErrorDialog.cpp:101
msgid "OK"
msgstr "OK"
@@ -4491,14 +4279,11 @@ msgstr "ã¨ãã§ã¯ãã®é©ç¨: %s 卿³¢æ° = %.0f Hz, å¢å¹
= %.0f dB"
msgid "Bass Boost"
msgstr "ä½åã®å¼·èª¿"
-#: effects/BassBoost.cpp:182
-#: effects/Phaser.cpp:219
-#: effects/Wahwah.cpp:214
+#: effects/BassBoost.cpp:182 effects/Phaser.cpp:219 effects/Wahwah.cpp:214
msgid "by Nasca Octavian Paul"
msgstr "Nasca Octavian Paul ã«ãã"
-#: effects/BassBoost.cpp:196
-#: effects/ChangePitch.cpp:322
+#: effects/BassBoost.cpp:196 effects/ChangePitch.cpp:322
msgid "Frequency (Hz):"
msgstr "卿³¢æ° (Hz):"
@@ -4543,14 +4328,12 @@ msgstr "ãããã®å¤æ´"
msgid "Change Pitch without Changing Tempo"
msgstr "ãã³ããå¤ããã«ãããã®å¤æ´"
-#: effects/ChangePitch.cpp:258
-#: effects/ChangeSpeed.cpp:336
+#: effects/ChangePitch.cpp:258 effects/ChangeSpeed.cpp:336
#: effects/ChangeTempo.cpp:173
msgid "by Vaughan Johnson && Dominic Mazzoni"
msgstr "Vaughan Johnson 㨠Dominic Mazzoni ã«ãã"
-#: effects/ChangePitch.cpp:260
-#: effects/ChangeTempo.cpp:175
+#: effects/ChangePitch.cpp:260 effects/ChangeTempo.cpp:175
msgid "using SoundTouch, by Olli Parviainen"
msgstr "Olli Parviainen ã«ãã SoundTouch ã®ä½¿ç¨"
@@ -4590,10 +4373,8 @@ msgstr "åé³ (åé):"
msgid "Semitones in half-steps"
msgstr "åé³ (åé):"
-#: effects/ChangePitch.cpp:326
-#: effects/ChangeSpeed.cpp:369
-#: effects/ChangeTempo.cpp:206
-#: effects/ChangeTempo.cpp:219
+#: effects/ChangePitch.cpp:326 effects/ChangeSpeed.cpp:369
+#: effects/ChangeTempo.cpp:206 effects/ChangeTempo.cpp:219
msgid "from"
msgstr "ãã"
@@ -4601,10 +4382,8 @@ msgstr "ãã"
msgid "From frequency in hertz"
msgstr "卿³¢æ° Hz ãã"
-#: effects/ChangePitch.cpp:331
-#: effects/ChangeSpeed.cpp:374
-#: effects/ChangeTempo.cpp:211
-#: effects/ChangeTempo.cpp:224
+#: effects/ChangePitch.cpp:331 effects/ChangeSpeed.cpp:374
+#: effects/ChangeTempo.cpp:211 effects/ChangeTempo.cpp:224
msgid "to"
msgstr "to"
@@ -4612,16 +4391,13 @@ msgstr "to"
msgid "To frequency in seconds"
msgstr "ç§ã§ãããããã卿³¢æ°ã¸"
-#: effects/ChangePitch.cpp:338
-#: effects/ChangeSpeed.cpp:347
+#: effects/ChangePitch.cpp:338 effects/ChangeSpeed.cpp:347
#: effects/ChangeTempo.cpp:184
msgid "Percent Change:"
msgstr "ãã³ã夿´ç(%):"
-#: effects/ChangePitch.cpp:343
-#: effects/ChangePitch.cpp:356
-#: effects/ChangeSpeed.cpp:358
-#: effects/ChangeTempo.cpp:195
+#: effects/ChangePitch.cpp:343 effects/ChangePitch.cpp:356
+#: effects/ChangeSpeed.cpp:358 effects/ChangeTempo.cpp:195
msgid "Percent Change"
msgstr "夿´ç(%)"
@@ -4633,8 +4409,7 @@ msgstr "ãããã®å¤æ´..."
msgid "Changing Pitch"
msgstr "ãããã®å¤æ´"
-#: effects/ChangeSpeed.cpp:54
-#: effects/ChangeTempo.cpp:55
+#: effects/ChangeSpeed.cpp:54 effects/ChangeTempo.cpp:55
#, c-format
msgid "Applied effect: %s %.1f%%"
msgstr "ã¨ãã§ã¯ãã®é©ç¨: %s %.1f%%"
@@ -4789,9 +4564,9 @@ msgstr "æ¸è¡°æé: "
msgid "Decay Time"
msgstr "æ¸è¡°æé"
-#: effects/Compressor.cpp:530
-msgid "Normalize to 0dB after compressing"
-msgstr "å§ç¸®å¾ã«é³éã0dBã«åºæºå"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
+msgstr ""
#: effects/Compressor.cpp:563
#, c-format
@@ -4828,8 +4603,7 @@ msgstr "%.1f:1"
msgid "Attack Time %.1f secs"
msgstr "ã¢ã¿ãã¯ã¿ã¤ã %.1f ç§"
-#: effects/Compressor.cpp:576
-#: effects/Compressor.cpp:579
+#: effects/Compressor.cpp:576 effects/Compressor.cpp:579
#, c-format
msgid "%.1f secs"
msgstr "%.1f ç§"
@@ -4847,49 +4621,32 @@ msgstr "å§ç¸®..."
msgid "Applying Dynamic Range Compression..."
msgstr "ãã¤ãããã¯ã¬ã³ã¸ãå§ç¸®..."
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
msgstr "ã³ã³ãã©ã¹ããã¼ã« 忝"
#: effects/Contrast.cpp:79
-msgid ""
-"Foreground times selected.\n"
+msgid "Foreground times selected.\n"
"Now select background and use Ctrl+Shift+T or menu again."
-msgstr ""
-"忝æéã鏿ããã¾ããã\n"
+msgstr "忝æéã鏿ããã¾ããã\n"
"次ã«èæ¯ã鏿ã Ctrl+Shift+Tã¾ãã¯ã¡ãã¥ã¼ã«æ»ã£ã¦ãã ããã"
#: effects/Contrast.cpp:127
-msgid ""
-"Start time after after end time!\n"
+msgid "Start time after after end time!\n"
"Please enter reasonable times."
-msgstr ""
-"éå§æéãçµäºæéããå¾ã«ãªã£ã¦ãã¾ãï¼\n"
+msgstr "éå§æéãçµäºæéããå¾ã«ãªã£ã¦ãã¾ãï¼\n"
"æ£ããæéãå
¥åãã¦ãã ããã"
#: effects/Contrast.cpp:137
-msgid ""
-"Times are not reasonable!\n"
+msgid "Times are not reasonable!\n"
"Please enter reasonable times."
-msgstr ""
-"æéãæ£ããããã¾ããï¼\n"
+msgstr "æéãæ£ããããã¾ããï¼\n"
"æ£ããæéãå
¥åãã¦ãã ããã"
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr "Hello.\n"
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr "WCAG2ãªã¼ãã£ãªã³ã³ãã©ã¹ãã¢ãã©ã¤ã¶"
-
-#: effects/Contrast.cpp:193
-#: effects/Contrast.cpp:204
-#: effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr "æåã¥ãããã"
-
#: effects/Contrast.cpp:231
msgid "Contrast Analyzer"
msgstr "ã³ã³ãã©ã¹ãåæå¨"
@@ -4898,18 +4655,14 @@ msgstr "ã³ã³ãã©ã¹ãåæå¨"
msgid "Parameters"
msgstr "ãã©ã¡ã¼ã¿"
-#: effects/Contrast.cpp:242
-#: effects/ToneGen.cpp:355
+#: effects/Contrast.cpp:242 effects/ToneGen.cpp:355
#: toolbars/ControlToolBar.cpp:186
msgid "Start"
msgstr "éå§"
-#: effects/Contrast.cpp:243
-#: effects/ToneGen.cpp:356
-#: toolbars/ControlToolBar.cpp:189
-#: toolbars/SelectionBar.cpp:156
-#: toolbars/SelectionBar.cpp:159
-#: toolbars/SelectionBar.cpp:262
+#: effects/Contrast.cpp:243 effects/ToneGen.cpp:356
+#: toolbars/ControlToolBar.cpp:189 toolbars/SelectionBar.cpp:156
+#: toolbars/SelectionBar.cpp:159 toolbars/SelectionBar.cpp:262
msgid "End"
msgstr "çµäº"
@@ -4929,8 +4682,12 @@ msgstr "忝éå§æé"
msgid "Foreground end time"
msgstr "忝çµäºæé"
-#: effects/Contrast.cpp:373
-#: effects/Contrast.cpp:417
+#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
+#: effects/Contrast.cpp:289
+msgid "Measured"
+msgstr "æåã¥ãããã"
+
+#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
msgid "Use selection"
msgstr "鏿ãã¦ãã ãã"
@@ -4954,8 +4711,7 @@ msgstr "çµæ"
msgid "Contrast Result:"
msgstr "対æ¯çµæ:"
-#: Tags.cpp:840
-#: Tags.cpp:1990
+#: Tags.cpp:840 Tags.cpp:1990
msgid "Reset"
msgstr "ãªã»ãã"
@@ -4975,21 +4731,11 @@ msgstr "ï¼ã¤ã®ãªã¼ãã£ãªåºéå士ã®rmsããªã¥ã¼ã ã®å·®ãè¨æ¸¬
msgid "Help for WCAG2 Audio Contrast Analyzer"
msgstr "WCAG2 ãªã¼ãã£ãªã³ã³ãã©ã¹ãã¢ãã©ã¤ã¶ã®ãã«ã"
-#: toolbars/ControlToolBar.cpp:83
-msgid "Control"
-msgstr "ã³ã³ããã¼ã«"
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr "æ³¨ï¼ 'OK'ãã¿ã³ã«ããæéã¯ãªã»ããããã¾ãã"
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
-msgstr "æéãç¶æããã¾ã¾éãã"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
+msgstr ""
-#: effects/Contrast.cpp:328
-#: effects/Contrast.cpp:336
-#: effects/Contrast.cpp:344
+#: effects/Contrast.cpp:328 effects/Contrast.cpp:336 effects/Contrast.cpp:344
#: effects/Contrast.cpp:352
msgid "Measure"
msgstr "å°ç¯"
@@ -5002,8 +4748,7 @@ msgstr "è¨æ¸¬ãã¹ã忝ãããã¾ããã"
msgid "Measured foreground level"
msgstr "è¨æ¸¬ããã忝ã¬ãã«"
-#: effects/Contrast.cpp:191
-#: effects/Contrast.cpp:202
+#: effects/Contrast.cpp:191 effects/Contrast.cpp:202
#, c-format
msgid "%.1f dB"
msgstr "%.1f dB"
@@ -5054,26 +4799,22 @@ msgstr "ãã¡ã¤ã«å = %s."
msgid "Foreground"
msgstr "忝"
-#: effects/Contrast.cpp:581
-#: effects/Contrast.cpp:598
+#: effects/Contrast.cpp:581 effects/Contrast.cpp:598
#, c-format
msgid "Time started = %2d hour(s), %2d minute(s), %.2f seconds."
msgstr "éå§æé = %2d æé, %2d å, %.2f ç§"
-#: effects/Contrast.cpp:586
-#: effects/Contrast.cpp:603
+#: effects/Contrast.cpp:586 effects/Contrast.cpp:603
#, c-format
msgid "Time ended = %2d hour(s), %2d minute(s), %.2f seconds."
msgstr "çµäºæé = %2d æé, %2d å, %.2f ç§"
-#: effects/Contrast.cpp:588
-#: effects/Contrast.cpp:605
+#: effects/Contrast.cpp:588 effects/Contrast.cpp:605
#, c-format
msgid "Average rms = %.1f dB."
msgstr "å¹³å rms = %.1f dB."
-#: effects/Contrast.cpp:590
-#: effects/Contrast.cpp:607
+#: effects/Contrast.cpp:590 effects/Contrast.cpp:607
msgid "Average rms = dB."
msgstr "å¹³å rms = dB."
@@ -5102,18 +4843,6 @@ msgstr "WCAG2.0ã®Success Criteria 1.4.7: ä¸åæ ¼"
msgid "Data gathered"
msgstr "ãã¼ã¿å鿏ã¿"
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr "ã³ã³ãã©ã¹ã...\tCtrl+Shift+T"
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr "èé¢ã§æ¸¬å®"
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr "åé¢ã§æ¸¬å®"
-
#: effects/DtmfGen.cpp:56
msgid "DTMF Tone Generator"
msgstr "DTMF ãã¼ã³ã¸ã§ãã¬ã¼ã¿"
@@ -5126,9 +4855,7 @@ msgstr "Salvo Ventura (2006) ã«ãã"
msgid "DTMF sequence:"
msgstr "DTMFã·ã¼ã±ã³ã¹:"
-#: effects/DtmfGen.cpp:463
-#: effects/Noise.cpp:242
-#: effects/ToneGen.cpp:322
+#: effects/DtmfGen.cpp:463 effects/Noise.cpp:242 effects/ToneGen.cpp:322
#: effects/ToneGen.cpp:359
msgid "Amplitude (0-1)"
msgstr "æ¯å¹
(0-1)"
@@ -5149,9 +4876,7 @@ msgstr "ãã¥ã¼ãã£ã¼æ¯:"
msgid "Tone duration:"
msgstr "ãã¼ã³æç¶æé:"
-#: effects/DtmfGen.cpp:499
-#: effects/DtmfGen.cpp:501
-#: effects/DtmfGen.cpp:577
+#: effects/DtmfGen.cpp:499 effects/DtmfGen.cpp:501 effects/DtmfGen.cpp:577
#: effects/DtmfGen.cpp:578
msgid "ms"
msgstr "ããªç§"
@@ -5184,8 +4909,7 @@ msgstr "ã¨ã³ã¼"
#. i18n-hint: && in here is an escape character to get a single & on
#. * screen, so keep it as is
-#: effects/Echo.cpp:195
-#: effects/Repeat.cpp:200
+#: effects/Echo.cpp:195 effects/Repeat.cpp:200
msgid "by Dominic Mazzoni && Vaughan Johnson"
msgstr "Dominic Mazzoni 㨠Vaughan Johnson ã«ãã"
@@ -5234,8 +4958,7 @@ msgstr "ã³ãµã¤ã³"
msgid "Cubic"
msgstr "ãã¥ã¼ããã¯"
-#: effects/Equalization.cpp:367
-#: effects/Equalization.cpp:416
+#: effects/Equalization.cpp:367 effects/Equalization.cpp:416
msgid "Equalization"
msgstr "ã¤ã³ã©ã¤ã¼ã¼ã·ã§ã³"
@@ -5247,6 +4970,10 @@ msgstr "ã¤ã³ã©ã¤ã¶æ²ç·ã®èªã¿è¾¼ã¿ã¨ã©ã¼"
msgid "custom"
msgstr "ã«ã¹ã¿ã "
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr ""
+
#. i18n-hint: && in here is an escape character to get a single &
#. * on screen, so keep it as is
#: effects/Equalization.cpp:1101
@@ -5289,8 +5016,7 @@ msgstr "ãã£ã«ã¿é·"
msgid "Select curve:"
msgstr "æ²ç·ã鏿"
-#: effects/Equalization.cpp:1273
-#: effects/Equalization.cpp:2512
+#: effects/Equalization.cpp:1273 effects/Equalization.cpp:2512
#: export/ExportMultiple.cpp:882
msgid "Save As..."
msgstr "ä¿å"
@@ -5303,8 +5029,7 @@ msgstr "å¹³å¦"
msgid "Enter the desired name of the curve"
msgstr "ã«ã¼ãã«ä»ããååãå
¥å"
-#: effects/Equalization.cpp:2611
-#: export/ExportFFmpegDialogs.cpp:1220
+#: effects/Equalization.cpp:2611 export/ExportFFmpegDialogs.cpp:1220
msgid "Confirm Deletion"
msgstr "åé¤ã®ç¢ºèª"
@@ -5404,8 +5129,7 @@ msgstr "ããå¼·ã"
msgid "Heaviest"
msgstr "æãå¼·ã"
-#: effects/Leveller.cpp:212
-#: effects/TruncSilence.cpp:331
+#: effects/Leveller.cpp:212 effects/TruncSilence.cpp:331
msgid "by Lynn Allan"
msgstr "Lynn Allan ã«ãã"
@@ -5457,11 +5181,6 @@ msgstr "夿å¨"
msgid "Analyser"
msgstr "è§£æå¨"
-#: effects/LoadEffects.cpp:114
-#: toolbars/MixerToolBar.cpp:60
-msgid "Mixer"
-msgstr "ãããµã¼"
-
#: effects/LoadEffects.cpp:116
msgid "Simulator"
msgstr "ã·ãã¥ã¬ã¼ã¿"
@@ -5478,8 +5197,7 @@ msgstr "å¤èª¿å¨"
msgid "Reverb"
msgstr "æ®é¿"
-#: effects/LoadEffects.cpp:124
-#: effects/Phaser.cpp:208
+#: effects/LoadEffects.cpp:124 effects/Phaser.cpp:208
msgid "Phaser"
msgstr "ãã§ã¼ã¶ã¼"
@@ -5567,8 +5285,7 @@ msgstr "ãªããã¿"
msgid "Gate"
msgstr "ã²ã¼ã"
-#: effects/LoadEffects.cpp:199
-#: effects/NoiseRemoval.cpp:725
+#: effects/LoadEffects.cpp:199 effects/NoiseRemoval.cpp:725
msgid "Noise Removal"
msgstr "ãã¤ãºã®é¤å»"
@@ -5623,11 +5340,9 @@ msgstr "ãã¤ãºã®ä½æ"
#: effects/NoiseRemoval.cpp:192
#, c-format
-msgid ""
-"Could not open file:\n"
+msgid "Could not open file:\n"
" %s"
-msgstr ""
-"ãã¡ã¤ã«ãéãã¾ãã:\n"
+msgstr "ãã¡ã¤ã«ãéãã¾ãã:\n"
" %s"
#: effects/NoiseRemoval.cpp:277
@@ -5639,11 +5354,9 @@ msgid "Step 1"
msgstr "ã¹ããã 1"
#: effects/NoiseRemoval.cpp:815
-msgid ""
-"Select a few seconds of just noise so Audacity knows what to filter out,\n"
+msgid "Select a few seconds of just noise so Audacity knows what to filter out,\n"
"then click Get Noise Profile:"
-msgstr ""
-"Audacity ãä½ããã£ã«ã¿ã§é¤å»ããã¹ããã夿ããããã«, ã¾ããã¤ãºãä½ç§ã鏿ãã¾ã\n"
+msgstr "Audacity ãä½ããã£ã«ã¿ã§é¤å»ããã¹ããã夿ããããã«, ã¾ããã¤ãºãä½ç§ã鏿ãã¾ã\n"
"次ã«ã¯ãªãã¯ãããã¨ã§ãã¤ãºã®ãããã¡ã¤ã«ãå¾ã¾ã:"
#: effects/NoiseRemoval.cpp:816
@@ -5651,11 +5364,9 @@ msgid "Step 2"
msgstr "ã¹ããã 2"
#: effects/NoiseRemoval.cpp:817
-msgid ""
-"Select all of the audio you want filtered, choose how much noise you want\n"
+msgid "Select all of the audio you want filtered, choose how much noise you want\n"
"filtered out, and then click 'OK' to remove noise.\n"
-msgstr ""
-"ãã£ã«ã¿ãªã³ã°ããããªã¼ãã£ãªãå
¨ã¦é¸æã,ã©ã®ç¨åº¦ãã£ã«ã¿ã§é¤å»ãããããã鏿,\n"
+msgstr "ãã£ã«ã¿ãªã³ã°ããããªã¼ãã£ãªãå
¨ã¦é¸æã,ã©ã®ç¨åº¦ãã£ã«ã¿ã§é¤å»ãããããã鏿,\n"
"次ã«`OK'ã¯ãªãã¯ãããã¨ã§ãã¤ãºãé¤å»ãã¾ã.\n"
#: effects/NoiseRemoval.cpp:822
@@ -5709,15 +5420,9 @@ msgstr "ãã¤ãºã®é¤å»"
msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr "ä¸ãã广: %s DCãªãã»ããã®é¤å» = %s, åºæºåãããæ¯å¹
= %s"
-#: effects/Normalize.cpp:74
-#: effects/Normalize.cpp:75
-msgid "false"
-msgstr "å½"
-
#. i18n-hint: true here means that the option was
#. * selected. Opposite false if not selected
-#: effects/Normalize.cpp:74
-#: effects/Normalize.cpp:75
+#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
msgid "true"
msgstr "ç"
@@ -5730,8 +5435,7 @@ msgstr ", æå¤§æ¯å¹
= %.1f dB"
msgid "Normalize"
msgstr "æ£è¦å"
-#: effects/Normalize.cpp:351
-#: effects/Normalize.cpp:352
+#: effects/Normalize.cpp:351 effects/Normalize.cpp:352
msgid "Remove any DC offset (center on 0.0 vertically)"
msgstr "ã©ã㪠DC ãªãã»ãããåé¤ãã¾ã (ã»ã³ã¿ã¼ã 0 ã«ãã¾ã)"
@@ -5776,23 +5480,19 @@ msgstr "ãã©ã¤/ã¦ã§ãã"
msgid "Dry Wet"
msgstr "ãã©ã¤ ã¦ã§ãã"
-#: effects/Phaser.cpp:236
-#: effects/Wahwah.cpp:221
+#: effects/Phaser.cpp:236 effects/Wahwah.cpp:221
msgid "LFO Frequency (Hz):"
msgstr "LFO 卿³¢æ° (Hz):"
-#: effects/Phaser.cpp:239
-#: effects/Wahwah.cpp:224
+#: effects/Phaser.cpp:239 effects/Wahwah.cpp:224
msgid "LFO frequency in hertz"
msgstr "LFO 卿³¢æ° (Hz)"
-#: effects/Phaser.cpp:241
-#: effects/Wahwah.cpp:226
+#: effects/Phaser.cpp:241 effects/Wahwah.cpp:226
msgid "LFO Start Phase (deg.):"
msgstr "LFO åæä½ç¸ (è§åº¦):"
-#: effects/Phaser.cpp:244
-#: effects/Wahwah.cpp:229
+#: effects/Phaser.cpp:244 effects/Wahwah.cpp:229
msgid "LFO start phase in degrees"
msgstr "LFO åæä½ç¸ (è§åº¦):"
@@ -5800,8 +5500,7 @@ msgstr "LFO åæä½ç¸ (è§åº¦):"
msgid "Depth:"
msgstr "深度:"
-#: effects/Phaser.cpp:249
-#: effects/Wahwah.cpp:234
+#: effects/Phaser.cpp:249 effects/Wahwah.cpp:234
msgid "Depth in percent"
msgstr "ãã¼ã»ã³ã表è¨ã«ããæ·±ã"
@@ -5822,25 +5521,21 @@ msgid "Applying Phaser"
msgstr "ãã§ã¼ã¶ã¼ã¨ãã§ã¯ããé©ç¨..."
#: effects/Repair.cpp:99
-msgid ""
-"The Repair effect is intended to be used on very short sections of damaged audio (up to 128 samples).\n"
+msgid "The Repair effect is intended to be used on very short sections of damaged audio (up to 128 samples).\n"
"\n"
"Zoom in and select a tiny fraction of a second to repair."
-msgstr ""
-"ä¿®å¾©å¹æã¯ãæå·ãããªã¼ãã£ãªãã¼ã¿ã®ã¨ã¦ãçãé å(128ãµã³ãã«ã¾ã§)\n"
+msgstr "ä¿®å¾©å¹æã¯ãæå·ãããªã¼ãã£ãªãã¼ã¿ã®ã¨ã¦ãçãé å(128ãµã³ãã«ã¾ã§)\n"
"ã«å¯¾ãã¦ä½¿ç¨ãããã¨ãæå³ããã¦ãã¾ãã\n"
"\n"
"ãºã¼ã ãã¦ã1ç§ãããã£ã¨çã修復ãããé¨åãé¸ãã§ãã ããã"
#: effects/Repair.cpp:105
-msgid ""
-"Repair works by using audio data outside the selection region.\n"
+msgid "Repair works by using audio data outside the selection region.\n"
"\n"
"Please select a region that has audio touching at least one side of it.\n"
"\n"
"The more surrounding audio, the better it performs."
-msgstr ""
-"鏿ç¯å²å¤ã®ãªã¼ãã£ãªãã¼ã¿ã使ã£ã¦ä¿®å¾©ãã¾ã.\n"
+msgstr "鏿ç¯å²å¤ã®ãªã¼ãã£ãªãã¼ã¿ã使ã£ã¦ä¿®å¾©ãã¾ã.\n"
"\n"
"ãªã¼ãã£ãªãã¼ã¿ãæ¥ç¶ããæä½çæ¹å´ã®ãã¼ã¿é åã鏿ãã¦ãã ãã\n"
"\n"
@@ -5859,8 +5554,7 @@ msgstr "%d åãªãã¼ãããã¾ãã"
msgid "Tracks are too long to repeat the selection."
msgstr "ãã©ãã¯ãé·ããããã鏿ç¯å²ããªãã¼ããããã¨ãã§ãã¾ãã."
-#: effects/Repeat.cpp:77
-#: effects/Repeat.cpp:187
+#: effects/Repeat.cpp:77 effects/Repeat.cpp:187
msgid "Repeat"
msgstr "ãªãã¼ã"
@@ -5878,8 +5572,7 @@ msgstr "æ°ãã鏿ç¯å²:"
#. i18n-hint: Name of time display format that shows time in hours, minutes
#. * and seconds
-#: effects/Repeat.cpp:262
-#: widgets/TimeTextCtrl.cpp:270
+#: effects/Repeat.cpp:262 widgets/TimeTextCtrl.cpp:270
msgid "hh:mm:ss"
msgstr "æ:å:ç§"
@@ -5929,11 +5622,9 @@ msgid "SpikeCleaner by Lynn Allan"
msgstr "Lynn Allan ã®çªçºé³é¤å»"
#: effects/SpikeCleaner.cpp:165
-msgid ""
-"Max Spike Duration (milliseconds): \n"
+msgid "Max Spike Duration (milliseconds): \n"
"(99999 or greater is off)"
-msgstr ""
-"çªçºé³ã®æå¤§ã®æç¶æé(ããªç§): \n"
+msgstr "çªçºé³ã®æå¤§ã®æç¶æé(ããªç§): \n"
"(99999 ããã以ä¸ã¯ãªãï¼"
#: effects/SpikeCleaner.cpp:178
@@ -6005,8 +5696,7 @@ msgstr "ãã³ã/ãããã®å¤æ´"
msgid "Applied effect: Generate %s wave %s, frequency = %.2f Hz, amplitude = %.2f, %.6lf seconds"
msgstr "ã¨ãã§ã¯ãã®é©ç¨: %s %s wave,çæã 卿³¢æ° = %.2f Hz, æ¯å¹
= %.2f, %6lf ç§"
-#: effects/ToneGen.cpp:69
-#: widgets/Meter.cpp:416
+#: effects/ToneGen.cpp:69 widgets/Meter.cpp:416
msgid "Linear"
msgstr "ãªãã¢"
@@ -6038,8 +5728,7 @@ msgstr "ã®ãããæ³¢"
msgid "Square, no alias"
msgstr "ç©å½¢æ³¢ãã¨ãªã¢ã¹æåãªã"
-#: effects/ToneGen.cpp:321
-#: effects/ToneGen.cpp:357
+#: effects/ToneGen.cpp:321 effects/ToneGen.cpp:357
msgid "Frequency (Hz)"
msgstr "卿³¢æ° (Hz):"
@@ -6087,30 +5776,44 @@ msgstr "ãã¼ã³ã®ä½æ"
msgid "All tracks must have the same sample rate"
msgstr "鏿ããããã©ãã¯ã¯ãã¹ã¦ãåä¸ã®ãµã³ãã«ã¬ã¼ãã§ãªããã°ãªãã¾ãã."
-#: effects/TruncSilence.cpp:113
-#: effects/TruncSilence.cpp:321
+#: effects/TruncSilence.cpp:113 effects/TruncSilence.cpp:321
msgid "Truncate Silence"
msgstr "ç¡é³ã®ç縮"
-#: effects/TruncSilence.cpp:345
-msgid "Max silence duration:"
-msgstr "æå¤§ã®ç¡é³æç¶æé:"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr ""
+
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
+msgstr ""
-#: effects/TruncSilence.cpp:348
-#: prefs/AudioIOPrefs.cpp:196
-#: prefs/AudioIOPrefs.cpp:199
-#: prefs/MidiIOPrefs.cpp:174
+#: effects/TruncSilence.cpp:348 prefs/AudioIOPrefs.cpp:196
+#: prefs/AudioIOPrefs.cpp:199 prefs/MidiIOPrefs.cpp:174
#: prefs/MidiIOPrefs.cpp:177
msgid "milliseconds"
msgstr "ããªç§"
+#: effects/TruncSilence.cpp:345
+msgid "Max silence duration:"
+msgstr "æå¤§ã®ç¡é³æç¶æé:"
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ""
+
#: effects/TruncSilence.cpp:350
msgid "Threshold for silence:"
msgstr "ç¡é³ã®ããã®é¾å¤:"
-#: effects/TruncSilence.cpp:374
-msgid " Duration must be at least 1 millisecond"
-msgstr "æç¶æéã¯æä½ã§ã1ããªç§ã¯å¿
è¦ã§ãã"
+#: effects/TruncSilence.cpp:506
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
+msgstr ""
#: effects/TruncSilence.h:28
msgid "Truncate Silence..."
@@ -6120,17 +5823,55 @@ msgstr "ç¡é³ãç縮"
msgid "Truncating Silence..."
msgstr "ç¡é³ã®ç縮"
-#: effects/VST/VSTEffect.cpp:172
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "VST ã®å¹æã¯åã
ã®ãã£ã³ãã«ãä¸è´ããªãã¹ãã¬ãªãã©ãã¯ä¸ã§ã¯å®è¡ã§ãã¾ãã."
+#: effects/ladspa/LadspaEffect.cpp:615 effects/lv2/LV2Effect.cpp:823
+msgid "Effect Settings"
+msgstr "ã¨ãã§ã¯ãã»ããã£ã³ã°"
+
+#: effects/ladspa/LadspaEffect.cpp:580 effects/ladspa/LadspaEffect.cpp:588
+#: prefs/GUIPrefs.cpp:51 prefs/QualityPrefs.cpp:72
+msgid "None"
+msgstr "ç¡ã"
+
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
-#: effects/VST/VSTEffect.cpp:187
-msgid "Can't process replacing"
-msgstr "ãªãã¬ã¼ã¹ã§ãã¾ãã"
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
-#: effects/VST/VSTEffect.cpp:410
-msgid "VST Plug-in parameters:"
-msgstr "VST ãã©ã°ã¤ã³ã®ãã©ã¡ã¼ã¿:"
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr ""
#: effects/Wahwah.cpp:61
#, c-format
@@ -6170,54 +5911,34 @@ msgid "Applying Wahwah"
msgstr "ã¯ã¦ã¯ã¦ ãé©ç¨"
#: effects/audiounits/AudioUnitEffect.cpp:138
-#: effects/ladspa/LadspaEffect.cpp:176
-#: effects/lv2/LV2Effect.cpp:191
+#: effects/ladspa/LadspaEffect.cpp:176 effects/lv2/LV2Effect.cpp:191
#, c-format
msgid "Performing Effect: %s"
msgstr "广ã®é©ç¨: %s"
-#: effects/ladspa/LadspaEffect.cpp:196
-#: effects/lv2/LV2Effect.cpp:211
+#: effects/ladspa/LadspaEffect.cpp:196 effects/lv2/LV2Effect.cpp:211
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr "ãã©ã°ã¤ã³ã®å¹æã¯åã
ã®ãã£ã³ãã«ãä¸è´ããªãã¹ãã¬ãªãã©ãã¯ä¸ã§ã¯å®è¡ã§ãã¾ãã."
-#: effects/ladspa/LadspaEffect.cpp:580
-#: effects/ladspa/LadspaEffect.cpp:588
-#: prefs/GUIPrefs.cpp:51
-#: prefs/QualityPrefs.cpp:72
-msgid "None"
-msgstr "ç¡ã"
-
-#: effects/ladspa/LadspaEffect.cpp:582
-#: effects/lv2/LV2Effect.cpp:798
+#: effects/ladspa/LadspaEffect.cpp:582 effects/lv2/LV2Effect.cpp:798
#: effects/vamp/VampEffect.cpp:395
msgid "Author: "
msgstr "製ä½è
:"
-#: effects/ladspa/LadspaEffect.cpp:615
-#: effects/lv2/LV2Effect.cpp:823
-msgid "Effect Settings"
-msgstr "ã¨ãã§ã¯ãã»ããã£ã³ã°"
-
-#: effects/ladspa/LadspaEffect.cpp:710
-#: effects/ladspa/LadspaEffect.cpp:713
-#: effects/lv2/LV2Effect.cpp:834
-#: effects/lv2/LV2Effect.cpp:837
+#: effects/ladspa/LadspaEffect.cpp:710 effects/ladspa/LadspaEffect.cpp:713
+#: effects/lv2/LV2Effect.cpp:834 effects/lv2/LV2Effect.cpp:837
msgid "Length (seconds)"
msgstr "é·ã (ç§)"
-#: effects/lv2/LV2Effect.cpp:849
-#: effects/lv2/LV2Effect.cpp:852
+#: effects/lv2/LV2Effect.cpp:849 effects/lv2/LV2Effect.cpp:852
msgid "Note length (seconds)"
msgstr "é³ã®é·ã (ç§)"
-#: effects/lv2/LV2Effect.cpp:860
-#: effects/lv2/LV2Effect.cpp:863
+#: effects/lv2/LV2Effect.cpp:860 effects/lv2/LV2Effect.cpp:863
msgid "Note velocity"
msgstr "é³ã®å¼·ã"
-#: effects/lv2/LV2Effect.cpp:871
-#: effects/lv2/LV2Effect.cpp:874
+#: effects/lv2/LV2Effect.cpp:871 effects/lv2/LV2Effect.cpp:874
msgid "Note key"
msgstr "é³ã®èª¿æ§"
@@ -6225,8 +5946,7 @@ msgstr "é³ã®èª¿æ§"
msgid "Applying Nyquist Effect..."
msgstr "ãã¤ãã¹ãã¨ãã§ã¯ããé©ç¨..."
-#: effects/nyquist/Nyquist.cpp:264
-#: effects/nyquist/Nyquist.cpp:326
+#: effects/nyquist/Nyquist.cpp:264 effects/nyquist/Nyquist.cpp:326
msgid "Nyquist Prompt..."
msgstr "Nyquist ããã³ãã..."
@@ -6246,8 +5966,7 @@ msgstr "Nyquist"
msgid "Nyquist Output: "
msgstr "Nyquist åºå"
-#: effects/nyquist/Nyquist.cpp:603
-#: effects/nyquist/Nyquist.cpp:614
+#: effects/nyquist/Nyquist.cpp:603 effects/nyquist/Nyquist.cpp:614
msgid "Nyquist returned the value:"
msgstr "Nyquist ãè¿ããå¤: "
@@ -6284,8 +6003,7 @@ msgstr "- Vamp ãªã¼ãã£ãªåæãã©ã°ã¤ã³"
msgid "Plugin Settings"
msgstr "ãã©ã°ã¤ã³ã®è¨å®"
-#: effects/vamp/VampEffect.cpp:442
-#: effects/vamp/VampEffect.cpp:448
+#: effects/vamp/VampEffect.cpp:442 effects/vamp/VampEffect.cpp:448
msgid "Program"
msgstr "ããã°ã©ã "
@@ -6311,14 +6029,12 @@ msgstr "æ¬å½ã«ä¿åãã¾ãã \""
#: export/Export.cpp:591
#, c-format
-msgid ""
-"You are about to save a %s file with the name \"%s\".\n"
+msgid "You are about to save a %s file with the name \"%s\".\n"
"\n"
"Normally these files end in \".%s\", and some programs will not open files with nonstandard extensions.\n"
"\n"
"Are you sure you want to save the file under this name?"
-msgstr ""
-"%s ãã¡ã¤ã«ãæ¡å¼µå %s ã§ä¿åãããã¨ãã¦ãã¾ã.\n"
+msgstr "%s ãã¡ã¤ã«ãæ¡å¼µå %s ã§ä¿åãããã¨ãã¦ãã¾ã.\n"
"ãã®æ¡å¼µå %s ã¯æ¨æºçãªæ¡å¼µåã§ã¯ãªããã, ä»ã®ããã°ã©ã ã§ã¯éããªãã§ããã.\n"
"æ¬å½ã«ãã®æ¡å¼µåã§ãã¡ã¤ã«ãä¿åãã¾ããï¼"
@@ -6356,8 +6072,7 @@ msgstr "å³"
msgid "Mixer Panel"
msgstr "ãããµããã«"
-#: export/Export.cpp:1078
-#: export/Export.cpp:1125
+#: export/Export.cpp:1078 export/Export.cpp:1125
#, c-format
msgid "Output Channels: %2d"
msgstr "åºåãã£ã³ãã«: %2d"
@@ -6387,8 +6102,7 @@ msgstr "ãã¼ã¿ã¯æ¨æºå
¥åã«ãã¤ããããã§ãããã\"%f\" ã¯
msgid "(external program)"
msgstr "(å¤é¨ããã°ã©ã )"
-#: export/ExportCL.cpp:253
-#: export/ExportPCM.cpp:457
+#: export/ExportCL.cpp:253 export/ExportPCM.cpp:457
#, c-format
msgid "Cannot export audio to %s"
msgstr "%s ã¨ãããã¡ã¤ã«åã§ãªã¼ãã£ãªãæ¸ãåºããã¨ãã§ãã¾ãã"
@@ -6405,21 +6119,28 @@ msgstr "ããã¸ã§ã¯ãå
¨ä½ãã³ãã³ãã©ã¤ã³ã¨ã³ã³ã¼ãã使ã£
msgid "Command Output"
msgstr "ã³ãã³ãåºå"
-#: export/ExportFFmpeg.cpp:59
-msgid ""
-"Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+#: export/ExportFFmpeg.cpp:61
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
-"ç¶ããã«ã¯æ£ããè¨å®ãããFFmpegãå¿
è¦ã§ãã\n"
-"è¨å®->èªã¿è¾¼ã¿/æ¸ãåºãã«ã¦è¨å®ã§ãã¾ãã"
#: export/ExportFFmpeg.cpp:394
#, c-format
-msgid ""
-"FFmpeg cannot find audio codec 0x%x.\n"
+msgid "FFmpeg cannot find audio codec 0x%x.\n"
"Support for this codec is probably not compiled in."
-msgstr ""
-"FFmpegã¯ãªã¼ãã£ãªã³ã¼ãã㯠0x%x ãçºè¦ã§ãã¾ããã§ããã\n"
+msgstr "FFmpegã¯ãªã¼ãã£ãªã³ã¼ãã㯠0x%x ãçºè¦ã§ãã¾ããã§ããã\n"
"ãã®ã³ã¼ããã¯ã®å¯¾å¿ã¯ããããã³ã³ãã¤ã«ããã¦ãã¾ããã"
#: export/ExportFFmpeg.cpp:614
@@ -6437,36 +6158,29 @@ msgstr "鏿ãããªã¼ãã£ãªã %s ã¨ãããã¡ã¤ã«åã§æ¸ãåº
msgid "Exporting entire file as %s"
msgstr "ãã¡ã¤ã«å
¨ä½ã %s ã§æ¸ãåºã"
-#: export/ExportFFmpeg.cpp:702
-#: export/ExportMP3.cpp:1920
+#: export/ExportFFmpeg.cpp:702 export/ExportMP3.cpp:1920
msgid "Invalid sample rate"
msgstr "ç¡å¹ãªã¬ã¼ãã§ã"
#: export/ExportFFmpeg.cpp:715
#, c-format
-msgid ""
-"The project sample rate (%d) is not supported by the current output\n"
+msgid "The project sample rate (%d) is not supported by the current output\n"
"file format. "
-msgstr ""
-"ããã¸ã§ã¯ãã®ãµã³ããªã³ã°å¨æ³¢æ° (%d)ãã¯ç¾å¨ã®åºåãã¡ã¤ã«å½¢å¼ã§ã¯\n"
+msgstr "ããã¸ã§ã¯ãã®ãµã³ããªã³ã°å¨æ³¢æ° (%d)ãã¯ç¾å¨ã®åºåãã¡ã¤ã«å½¢å¼ã§ã¯\n"
"ãµãã¼ãããã¦ãã¾ãã."
#: export/ExportFFmpeg.cpp:718
#, c-format
-msgid ""
-"The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
+msgid "The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
"supported by the current output file format. "
-msgstr ""
-"ããã¸ã§ã¯ãã®ãµã³ããªã³ã°å¨æ³¢æ° (%d) ã¨ãããã¬ã¼ã (%d kbps)ãã®çµã¿åããã¯\n"
+msgstr "ããã¸ã§ã¯ãã®ãµã³ããªã³ã°å¨æ³¢æ° (%d) ã¨ãããã¬ã¼ã (%d kbps)ãã®çµã¿åããã¯\n"
"ç¾å¨ã®ãã¡ã¤ã«å½¢å¼ã§ã¯ãµãã¼ãããã¦ãã¾ããã"
-#: export/ExportFFmpeg.cpp:721
-#: export/ExportMP3.cpp:1939
+#: export/ExportFFmpeg.cpp:721 export/ExportMP3.cpp:1939
msgid "You may resample to one of the rates below."
msgstr "以ä¸ã®ãµã³ããªã³ã°å¨æ³¢æ°ã®ãã¡ã®ä¸ã¤ã¸ãªãµã³ãã«ãã¾ãããã"
-#: export/ExportFFmpeg.cpp:749
-#: export/ExportMP3.cpp:1962
+#: export/ExportFFmpeg.cpp:749 export/ExportMP3.cpp:1962
msgid "Sample Rates"
msgstr "ãµã³ãã«ã¬ã¼ã"
@@ -6478,12 +6192,9 @@ msgstr "AC3ãªãã·ã§ã³ã®ç¹å®"
msgid "AC3 Export Setup"
msgstr "AC3æ¸ãåºãè¨å®"
-#: export/ExportFFmpegDialogs.cpp:121
-#: export/ExportFFmpegDialogs.cpp:245
-#: export/ExportFFmpegDialogs.cpp:314
-#: export/ExportFFmpegDialogs.cpp:385
-#: export/ExportFFmpegDialogs.cpp:937
-#: export/ExportMP2.cpp:133
+#: export/ExportFFmpegDialogs.cpp:121 export/ExportFFmpegDialogs.cpp:245
+#: export/ExportFFmpegDialogs.cpp:314 export/ExportFFmpegDialogs.cpp:385
+#: export/ExportFFmpegDialogs.cpp:937 export/ExportMP2.cpp:133
msgid "Bit Rate:"
msgstr "ãããã¬ã¼ã:"
@@ -6495,6 +6206,10 @@ msgstr "AACãªãã·ã§ã³ã®ç¹å®"
msgid "AAC Export Setup"
msgstr "AACæ¸ãåºãè¨å®"
+#: export/ExportFFmpegDialogs.cpp:940 export/ExportOGG.cpp:86
+msgid "Quality:"
+msgstr "å質:"
+
#: export/ExportFFmpegDialogs.cpp:217
msgid "Specify AMR-NB Options"
msgstr "AMR-NB ãªãã·ã§ã³ãæå®"
@@ -6601,18 +6316,15 @@ msgstr "ãã¹ã¦ã®ã³ã¼ããã¯ã表示"
msgid "Options"
msgstr "ãªãã·ã§ã³"
-#: export/ExportFFmpegDialogs.cpp:931
-#: prefs/GUIPrefs.cpp:166
+#: export/ExportFFmpegDialogs.cpp:931 prefs/GUIPrefs.cpp:166
msgid "Language:"
msgstr "è¨èª:"
#: export/ExportFFmpegDialogs.cpp:932
-msgid ""
-"ISO 639 3-letter language code\n"
+msgid "ISO 639 3-letter language code\n"
"Optional\n"
"empty - automatic"
-msgstr ""
-"ISO 639 3æåè¨èªã³ã¼ã\n"
+msgstr "ISO 639 3æåè¨èªã³ã¼ã\n"
"ãªãã·ã§ã³\n"
"空 - èªå"
@@ -6621,40 +6333,30 @@ msgid "Tag:"
msgstr "ã¿ã°:"
#: export/ExportFFmpegDialogs.cpp:935
-msgid ""
-"Codec tag (FOURCC)\n"
+msgid "Codec tag (FOURCC)\n"
"Optional\n"
"empty - automatic"
-msgstr ""
-"ã³ã¼ããã¯ã¿ã° (FOURCC)\n"
+msgstr "ã³ã¼ããã¯ã¿ã° (FOURCC)\n"
"ãªãã·ã§ã³\n"
"空 - èªå"
#: export/ExportFFmpegDialogs.cpp:938
-msgid ""
-"Bit Rate (bits/second) - influences the resulting file size and quality\n"
+msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n"
"Some codecs may only accept specific values (128k, 192k, 256k etc)\n"
"0 - automatic\n"
"Recommended - 192000"
-msgstr ""
-"ãããã¬ã¼ã (bits/ç§) - çæããããã¡ã¤ã«ã®ãã¡ã¤ã«ãµã¤ãºã¨å質ã«å½±é¿\n"
+msgstr "ãããã¬ã¼ã (bits/ç§) - çæããããã¡ã¤ã«ã®ãã¡ã¤ã«ãµã¤ãºã¨å質ã«å½±é¿\n"
"ããã¤ãã®ã³ã¼ããã¯ã¯ç¹å®ã®å¤(128k, 192k, 256k ãªã©)ã®ã¿å¯è½\n"
"0 - èªå\n"
"æ¨å¥¨ - 192000"
-#: export/ExportFFmpegDialogs.cpp:940
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr "å質:"
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid ""
-"Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+#, fuzzy
+msgid "Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
-msgstr ""
-"å
¨ä½ã®å質ãç°ãªãã³ã¼ããã¯ã«ãã£ã¦ç°ãªã\n"
+msgstr "å
¨ä½ã®å質ãç°ãªãã³ã¼ããã¯ã«ãã£ã¦ç°ãªã\n"
"vorbis ã«è¦æ±ããã\n"
"0 - èªå\n"
"-1 - ãªã (ãããã¬ã¼ãã代ããã«ä½¿ç¨ããã)"
@@ -6664,38 +6366,33 @@ msgid "Sample Rate:"
msgstr "ãµã³ãã«ã¬ã¼ã:"
#: export/ExportFFmpegDialogs.cpp:944
-msgid ""
-"Sample rate (Hz)\n"
+msgid "Sample rate (Hz)\n"
"0 - don't change sample rate"
-msgstr ""
-"ãµã³ãã«ã¬ã¼ã (Hz)\n"
+msgstr "ãµã³ãã«ã¬ã¼ã (Hz)\n"
"0 - ãµã³ãã«ã¬ã¼ãã夿´ããªãã§ãã ãã."
#: export/ExportFFmpegDialogs.cpp:946
msgid "Cutoff Bandwidth:"
msgstr "ã«ãããªã帯åå¹
:"
-#: export/ExportFFmpegDialogs.cpp:947
-msgid ""
-"Audio cutoff bandwidth (Hz)\n"
+#: export/ExportFFmpegDialogs.cpp:936
+#, fuzzy
+msgid "Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
-msgstr ""
-"ã«ãããªã帯åå¹
(Hz)\n"
+"0 - automatic"
+msgstr "ã«ãããªã帯åå¹
(Hz)\n"
"ãªãã·ã§ã³\n"
-"0 - èªå\n"
+"0 - èªå"
#: export/ExportFFmpegDialogs.cpp:949
msgid "Profile:"
msgstr "ãããã¡ã¤ã«:"
#: export/ExportFFmpegDialogs.cpp:951
-msgid ""
-"AAC Profile\n"
+msgid "AAC Profile\n"
"Low Complexity -default\n"
"Most players won't play anything other than LC"
-msgstr ""
-"AAC ãããã¡ã¤ã«\n"
+msgstr "AAC ãããã¡ã¤ã«\n"
"Low Complexity (LC)ä½è¤é度 æ¢å®å¤\n"
"ã»ã¨ãã©ã®ãã¬ã¼ã¤ã¯ãLC以å¤ã®ãã®ãåçã§ãã¾ãã"
@@ -6716,14 +6413,12 @@ msgid "Compression Level:"
msgstr "å§ç¸®ã¬ãã«:"
#: export/ExportFFmpegDialogs.cpp:966
-msgid ""
-"Compression level\n"
+msgid "Compression level\n"
"Required for FLAC\n"
"-1 - automatic\n"
"min - 0 (fast encoding, large output file)\n"
"max - 10 (slow encoding, small output file)"
-msgstr ""
-"å§ç¸®ã¬ãã«\n"
+msgstr "å§ç¸®ã¬ãã«\n"
"FLACãå¿
è¦ã¨ãã¾ã\n"
"-1 -èªå\n"
"æå° - 0 (é«éãªã¨ã³ã³ã¼ãã大ããåºåãã¡ã¤ã«)\n"
@@ -6734,14 +6429,12 @@ msgid "Frame Size:"
msgstr "ãã¬ã¼ã ãµã¤ãº:"
#: export/ExportFFmpegDialogs.cpp:969
-msgid ""
-"Frame size\n"
+msgid "Frame size\n"
"Optional\n"
"0 - default\n"
"min - 16\n"
"max - 65535"
-msgstr ""
-"ãã¬ã¼ã ãµã¤ãº\n"
+msgstr "ãã¬ã¼ã ãµã¤ãº\n"
"ãªãã·ã§ã³\n"
"0 - æ¢å®å¤\n"
"æå° - 16\n"
@@ -6752,14 +6445,12 @@ msgid "LPC coefficients precision"
msgstr "LPCä¿æ°ã®ç²¾åº¦"
#: export/ExportFFmpegDialogs.cpp:972
-msgid ""
-"LPC coefficients precision\n"
+msgid "LPC coefficients precision\n"
"Optional\n"
"0 - default\n"
"min - 1\n"
"max - 15"
-msgstr ""
-"LPCä¿æ°ã®ç²¾åº¦\n"
+msgstr "LPCä¿æ°ã®ç²¾åº¦\n"
"ãªãã·ã§ã³\n"
"0 - æ¢å®å¤\n"
"æå° - 1\n"
@@ -6770,14 +6461,12 @@ msgid "Minimal prediction order"
msgstr "æå¤§äºæ¸¬æ¬¡æ°"
#: export/ExportFFmpegDialogs.cpp:975
-msgid ""
-"Minimal prediction order\n"
+msgid "Minimal prediction order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 32 (with LPC) or 4 (without LPC)"
-msgstr ""
-"æå°äºæ¸¬æ¬¡æ°\n"
+msgstr "æå°äºæ¸¬æ¬¡æ°\n"
"ãªãã·ã§ã³\n"
"-1 - æ¢å®å¤\n"
"æå° - 0\n"
@@ -6788,14 +6477,12 @@ msgid "Maximal prediction order"
msgstr "æå¤§äºæ¸¬æ¬¡æ°"
#: export/ExportFFmpegDialogs.cpp:978
-msgid ""
-"Maximal prediction order\n"
+msgid "Maximal prediction order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 32 (with LPC) or 4 (without LPC)"
-msgstr ""
-"æå¤§äºæ¸¬æ¬¡æ°ãªãã·ã§ã³\n"
+msgstr "æå¤§äºæ¸¬æ¬¡æ°ãªãã·ã§ã³\n"
"1 - æ¢å®å¤\n"
"æå° - 0\n"
"æå¤§ - 32 (LPCãã) ããã㯠4 (LPCãªã)"
@@ -6805,13 +6492,11 @@ msgid "Prediction Order Method:"
msgstr "äºæ¸¬æ¬¡æ°ã®æ¹æ³:"
#: export/ExportFFmpegDialogs.cpp:982
-msgid ""
-"Prediction Order Method\n"
+msgid "Prediction Order Method\n"
"Estimate - fastest, lower compression\n"
"Log search - slowest, best compression\n"
"Full search - default"
-msgstr ""
-"äºæ¸¬æ¬¡æ°ã®æ¹æ³\n"
+msgstr "äºæ¸¬æ¬¡æ°ã®æ¹æ³\n"
"è©ä¾¡ - é«éã§ä½ãå§ç¸®\n"
"é·ãæ¢ç´¢ - ä½éã§é«åº¦ãªå§ç¸®\n"
"å
¨æ¢ç´¢ - æ¢å®å¤"
@@ -6821,14 +6506,12 @@ msgid "Minimal partition order"
msgstr "æå°äºæ¸¬æ¬¡æ°"
#: export/ExportFFmpegDialogs.cpp:985
-msgid ""
-"Minimal partition order\n"
+msgid "Minimal partition order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 8"
-msgstr ""
-"æå°å岿¬¡æ°\n"
+msgstr "æå°å岿¬¡æ°\n"
"ãªãã·ã§ã³\n"
"-1 - æ¢å®å¤\n"
"æå° - 0\n"
@@ -6839,14 +6522,12 @@ msgid "Maximal partition order"
msgstr "æå¤§å岿¬¡æ°"
#: export/ExportFFmpegDialogs.cpp:988
-msgid ""
-"Maximal partition order\n"
+msgid "Maximal partition order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 8"
-msgstr ""
-"æå¤§å岿¬¡æ°\n"
+msgstr "æå¤§å岿¬¡æ°\n"
"ãªãã·ã§ã³\n"
"-1 - æ¢å®å¤\n"
"æå° - 0\n"
@@ -6865,12 +6546,10 @@ msgid "Mux Rate:"
msgstr "æå¤§ã¬ã¼ã:"
#: export/ExportFFmpegDialogs.cpp:1002
-msgid ""
-"Maximum bit rate of the multiplexed stream\n"
+msgid "Maximum bit rate of the multiplexed stream\n"
"Optional\n"
"0 - default"
-msgstr ""
-"è¤æ°ã¹ããªã¼ã ã®æå¤§ãããã¬ã¼ã\n"
+msgstr "è¤æ°ã¹ããªã¼ã ã®æå¤§ãããã¬ã¼ã\n"
"ãªãã·ã§ã³\n"
"0 - æ¢å®å¤"
@@ -6879,12 +6558,10 @@ msgid "Packet Size:"
msgstr "ãã±ãããµã¤ãº:"
#: export/ExportFFmpegDialogs.cpp:1005
-msgid ""
-"Packet size\n"
+msgid "Packet size\n"
"Optional\n"
"0 - default"
-msgstr ""
-"ãã±ãã ãµã¤ãº\n"
+msgstr "ãã±ãã ãµã¤ãº\n"
"ãªãã·ã§ã³\n"
"0 - æ¢å®å¤"
@@ -6929,13 +6606,13 @@ msgstr "M4A (AAC) ãã¡ã¤ã« (FFmpeg)"
msgid "AC3 Files (FFmpeg)"
msgstr "AC3 ãã¡ã¤ã« (FFmpeg)"
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
-msgstr "AMR (ç帯å) ãã¡ã¤ã« (FFmpeg)"
-
#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
-msgstr "AMR (åºå¸¯å) ãã¡ã¤ã« (FFmpeg)"
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
+msgstr ""
#: export/ExportFFmpegDialogs.h:57
msgid "WMA (version 2) Files (FFmpeg)"
@@ -7045,6 +6722,17 @@ msgstr "éååãããæ°:"
msgid "FLAC Files"
msgstr "FLACãã¡ã¤ã«"
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
#: export/ExportFLAC.cpp:312
msgid "Exporting the selected audio as FLAC"
msgstr "鏿ãããªã¼ãã£ãªã FLACãã¡ã¤ã«ã«æ¸ãåºã"
@@ -7069,9 +6757,7 @@ msgstr "MP2ãã¡ã¤ã«"
msgid "Cannot export MP2 with this sample rate and bit rate"
msgstr "ãã®ãµã³ããªã³ã°å¨æ³¢æ°ã¨ãããã¬ã¼ãã§ã¯MP2ãã¡ã¤ã«ã¯æ¸ãåºãã§ãã¾ããã"
-#: export/ExportMP2.cpp:243
-#: export/ExportMP3.cpp:1771
-#: export/ExportOGG.cpp:186
+#: export/ExportMP2.cpp:243 export/ExportMP3.cpp:1771 export/ExportOGG.cpp:186
msgid "Unable to open target file for writing"
msgstr "æ¸ãè¾¼ãããã®ãã¡ã¤ã«ãéãã¾ãã"
@@ -7086,9 +6772,7 @@ msgid "Exporting entire file at %d kbps"
msgstr "ãã¡ã¤ã«å
¨ä½ã %d kbps ã§æ¸ãåºã"
# i18n-hint: kbps is the bitrate of the MP3 file, kilobits per second
-#: export/ExportMP3.cpp:221
-#: export/ExportMP3.cpp:239
-#: export/ExportMP3.cpp:253
+#: export/ExportMP3.cpp:221 export/ExportMP3.cpp:239 export/ExportMP3.cpp:253
msgid "kbps"
msgstr "kbps"
@@ -7104,9 +6788,7 @@ msgstr "(æå°ã®ãã¡ã¤ã«ãµã¤ãº)"
msgid "Fast"
msgstr "é«é"
-#: export/ExportMP3.cpp:244
-#: export/ExportMP3.cpp:250
-#: prefs/GUIPrefs.cpp:41
+#: export/ExportMP3.cpp:244 export/ExportMP3.cpp:250 prefs/GUIPrefs.cpp:41
#: prefs/GUIPrefs.cpp:49
msgid "Standard"
msgstr "æ¨æº"
@@ -7151,8 +6833,7 @@ msgstr "å¹³å"
msgid "Constant"
msgstr "ä¸å®"
-#: export/ExportMP3.cpp:373
-#: prefs/QualityPrefs.cpp:42
+#: export/ExportMP3.cpp:373 prefs/QualityPrefs.cpp:42
#: prefs/QualityPrefs.cpp:43
msgid "Quality"
msgstr "å質"
@@ -7188,11 +6869,9 @@ msgstr "Lame ã®ç¡æã³ãã¼ãå
¥æããã«ã¯ããããã¯ãªã㯠-->
#: export/ExportMP3.cpp:1070
#, c-format
-msgid ""
-"You are linking to lame_enc.dll v%d.%d. This version is not compatible with Audacity %d.%d.%d.\n"
+msgid "You are linking to lame_enc.dll v%d.%d. This version is not compatible with Audacity %d.%d.%d.\n"
"Please download the latest version of the LAME MP3 library."
-msgstr ""
-"lame_enc.dll v%d.%d ã¨ãªã³ã¯ãããã¨ãã¦ãã¾ãã ãã®ãã¼ã¸ã§ã³ã¯Audacity %d.%d.%dã¨ã¯ã³ã³ãããã«ã§ã¯ããã¾ããã\n"
+msgstr "lame_enc.dll v%d.%d ã¨ãªã³ã¯ãããã¨ãã¦ãã¾ãã ãã®ãã¼ã¸ã§ã³ã¯Audacity %d.%d.%dã¨ã¯ã³ã³ãããã«ã§ã¯ããã¾ããã\n"
"LAME MP3ã©ã¤ãã©ãªã®ææ°çããã¦ã³ãã¼ããã¦ãã ããã"
#: export/ExportMP3.cpp:1094
@@ -7260,39 +6939,32 @@ msgstr "MP3ã¨ã³ã³ã¼ãã«ããã¦ãã¨ã©ã¼ %d ãè¿ããã¾ããã"
#: export/ExportMP3.cpp:1933
#, c-format
-msgid ""
-"The project sample rate (%d) is not supported by the MP3\n"
+msgid "The project sample rate (%d) is not supported by the MP3\n"
"file format. "
msgstr "ããã¸ã§ã¯ãã®ãµã³ããªã³ã°å¨æ³¢æ° (%d)ãã¯MP3ã§ã¯ãµãã¼ãããã¦ãã¾ããã"
#: export/ExportMP3.cpp:1936
#, c-format
-msgid ""
-"The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
+msgid "The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
"supported by the MP3 file format. "
-msgstr ""
-"ããã¸ã§ã¯ãã®ãµã³ããªã³ã°å¨æ³¢æ° (%d) ã¨ãããã¬ã¼ã (%d kbps)ãã®çµã¿åããã¯\n"
+msgstr "ããã¸ã§ã¯ãã®ãµã³ããªã³ã°å¨æ³¢æ° (%d) ã¨ãããã¬ã¼ã (%d kbps)ãã®çµã¿åããã¯\n"
"MP3ãã¡ã¤ã«å½¢å¼ã§ã¯ãµãã¼ãããã¦ãã¾ããã"
#: export/ExportMP3.cpp:1965
msgid "MP3 export library not found"
msgstr "MP3æ¸ãåºãã©ã¤ãã©ãªãè¦ã¤ããã¾ããã§ããã"
-#: export/ExportMultiple.cpp:96
-#: export/ExportMultiple.cpp:426
-#: export/ExportMultiple.cpp:667
-#: export/ExportMultiple.cpp:834
+#: export/ExportMultiple.cpp:96 export/ExportMultiple.cpp:426
+#: export/ExportMultiple.cpp:667 export/ExportMultiple.cpp:834
msgid "Export Multiple"
msgstr "è¤æ°ãã¡ã¤ã«ã®æ¸ãåºã"
#: export/ExportMultiple.cpp:166
-msgid ""
-"If you have more than one Audio Track, you can export each track as a separate file,\n"
+msgid "If you have more than one Audio Track, you can export each track as a separate file,\n"
"or if you have a Label Track, you can export a new file for each label.\n"
"\n"
"This project does not have multiple tracks or a Label Track, so you cannot export multiple files."
-msgstr ""
-"ããè¤æ°ã®ãªã¼ãã£ãªãã©ãã¯ãããå ´åãããããã®ãã©ãã¯ãå¥ã
ã®ãã¡ã¤ã«ã«æ¸ãåºãå¯è½ã§ã.\n"
+msgstr "ããè¤æ°ã®ãªã¼ãã£ãªãã©ãã¯ãããå ´åãããããã®ãã©ãã¯ãå¥ã
ã®ãã¡ã¤ã«ã«æ¸ãåºãå¯è½ã§ã.\n"
"ãããã¯ãããã©ãã«ã¤ããã©ãã¯ãããå ´åãããããã®ã©ãã«ãæ°ãããã¡ã¤ã«ã¨ãã¦æ¸ãåºãå¯è½ã§ã.\n"
"\n"
"ãã®ããã¸ã§ã¯ãã«ã¯è¤æ°ã®ãã©ãã¯ãã©ãã«ã¤ããã©ãã¯ãç¡ãã®ã§ãè¤æ°ã®ãã¡ã¤ã«ã«æ¸ãåºãã¯ã§ãã¾ãã."
@@ -7313,11 +6985,6 @@ msgstr "ãªãã·ã§ã³..."
msgid "Export location:"
msgstr "æ¸ãåºãå ´æ"
-#: export/ExportMultiple.cpp:245
-#: prefs/DirectoriesPrefs.cpp:92
-msgid "Choose..."
-msgstr "鏿..."
-
#: export/ExportMultiple.cpp:246
msgid "Create"
msgstr "使"
@@ -7326,8 +6993,7 @@ msgstr "使"
msgid "Split files based on:"
msgstr "ãã¡ã¤ã«åé¢åºæº: "
-#: export/ExportMultiple.cpp:262
-#: export/ExportMultiple.cpp:264
+#: export/ExportMultiple.cpp:262 export/ExportMultiple.cpp:264
msgid "Labels"
msgstr "ã©ãã«"
@@ -7343,22 +7009,15 @@ msgstr "æåã®ãã¡ã¤ã«å"
msgid "First file name"
msgstr "æåã®ãã¡ã¤ã«å"
-#: export/ExportMultiple.cpp:288
-#: export/ExportMultiple.cpp:290
-msgid "Tracks"
-msgstr "ãã©ãã¯"
-
#: export/ExportMultiple.cpp:297
msgid "Name files:"
msgstr "ãã¡ã¤ã«ã®å½å"
-#: export/ExportMultiple.cpp:306
-#: export/ExportMultiple.cpp:308
+#: export/ExportMultiple.cpp:306 export/ExportMultiple.cpp:308
msgid "Using Label/Track Name"
msgstr "ã©ãã«/ãã©ãã¯åã®ä½¿ç¨"
-#: export/ExportMultiple.cpp:314
-#: export/ExportMultiple.cpp:316
+#: export/ExportMultiple.cpp:314 export/ExportMultiple.cpp:316
msgid "Numbering consecutively"
msgstr "é£ç¶ããçªå·ã¥ã"
@@ -7383,41 +7042,53 @@ msgstr "\"%s\" ã¯æ£å¸¸ã«çæããã¾ããã"
msgid "Choose a location to save the exported files"
msgstr "æ¸ãåºãã¦ä¿åãããã¡ã¤ã«ã®å ´æãé¸ãã§ãã ãã"
+#: export/ExportMultiple.cpp:524
+#, c-format
+msgid "Successfully exported the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:527
+#, c-format
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr ""
+
#: export/ExportMultiple.cpp:539
#, c-format
-msgid ""
-"\"%s\" doesn't exist.\n"
+msgid "\"%s\" doesn't exist.\n"
"\n"
"Would you like to create it?"
-msgstr ""
-"\"%s\"ãã¯åå¨ãã¾ããã.\n"
+msgstr "\"%s\"ãã¯åå¨ãã¾ããã.\n"
"\n"
"使ãã¾ããï¼"
-#: export/ExportMultiple.cpp:637
-#: export/ExportMultiple.cpp:772
+#: export/ExportMultiple.cpp:637 export/ExportMultiple.cpp:772
msgid "Edit metadata"
msgstr "ã¡ã¿ãã¼ã¿ãç·¨é"
-#: export/ExportMultiple.cpp:664
-#: export/ExportMultiple.cpp:831
-#, c-format
-msgid "Successfully exported %d file(s)."
-msgstr "%d åã®ãã¡ã¤ã«ã®æ¸ãåºãã«æå"
-
-#: export/ExportMultiple.cpp:665
-#: export/ExportMultiple.cpp:832
-#, c-format
-msgid "Something went wrong after exporting %d file(s)."
-msgstr "%d åã®ãã¡ã¤ã«ãåºåããå¾ã«ãä½ãããã¾ããããªããªãã¾ããã"
-
#: export/ExportMultiple.cpp:881
#, c-format
-msgid ""
-"Label %s is not a legal file name. You cannot use any of: %s\n"
+msgid "Label %s is not a legal file name. You cannot use any of: %s\n"
"Use..."
-msgstr ""
-"ã©ãã« %s ã¯æ£å½ãªãã¡ã¤ã«åã§ã¯ããã¾ãã. %s ã®ãããã使ãã¾ãã.\n"
+msgstr "ã©ãã« %s ã¯æ£å½ãªãã¡ã¤ã«åã§ã¯ããã¾ãã. %s ã®ãããã使ãã¾ãã.\n"
"以ä¸ã使ãããã«..."
#: export/ExportOGG.cpp:64
@@ -7452,8 +7123,7 @@ msgstr "éå§ç¸®æ¸ãåºãè¨å®"
msgid "Header:"
msgstr "ããã:"
-#: export/ExportPCM.cpp:195
-#: import/ImportRaw.cpp:366
+#: export/ExportPCM.cpp:195 import/ImportRaw.cpp:366
msgid "Encoding:"
msgstr "ã¨ã³ã³ã¼ãã£ã³ã°:"
@@ -7521,8 +7191,7 @@ msgstr "ãã¡ã¤ã«ã¯16-bit WAV (Microsoft) å½¢å¼ã§æ¸ãåºããã¾ãã\
msgid "Your file will be exported as a GSM 6.10 WAV file.\n"
msgstr "ãã¡ã¤ã«ã¯ GSM 6.10 WAV å½¢å¼ã§æ¸ãåºããã¾ãã\n"
-#: import/Import.cpp:156
-#: import/ImportMP3.cpp:47
+#: import/Import.cpp:156 import/ImportMP3.cpp:47
msgid "MP3 files"
msgstr "MP3 ãã¡ã¤ã«"
@@ -7537,73 +7206,61 @@ msgstr "ãã® Audacity ã®ãã¼ã¸ã§ã³ã¯ %s ãµãã¼ãæ©è½ã¨ä¸ç·ã«
#: import/Import.cpp:240
#, c-format
-msgid ""
-"\"%s\" \n"
+msgid "\"%s\" \n"
"is a MIDI file, not an audio file. \n"
"Audacity cannot open this type of file for playing, but you can\n"
"edit it by clicking File > Import > MIDI."
-msgstr ""
-"\"%s\" 㯠MIDI ãã¡ã¤ã«ã§ããããªã¼ãã£ãªãã¡ã¤ã«ã§ã¯ããã¾ããã\n"
+msgstr "\"%s\" 㯠MIDI ãã¡ã¤ã«ã§ããããªã¼ãã£ãªãã¡ã¤ã«ã§ã¯ããã¾ããã\n"
"Audacity ã¯ãã®ç¨®ã®ãã¡ã¤ã«ããåçã®ããéããã¨ã¯ã§ãã¾ãããã\n"
"ãã¡ã¤ã« > èªã¿è¾¼ã¿ > MIDI ãã¯ãªãã¯ãããã¨ã«ãããç·¨éã¯ã§ãã¾ãã"
#. i18n-hint: %s will be the filename
#: import/Import.cpp:250
#, c-format
-msgid ""
-"\"%s\" is an audio CD track. \n"
+msgid "\"%s\" is an audio CD track. \n"
"Audacity cannot open audio CDs directly. \n"
"Extract (rip) the CD tracks to an audio format that \n"
"Audacity can import, such as WAV or AIFF."
-msgstr ""
-"\"%s\" ã¯ãªã¼ãã£ãªï¼£ï¼¤ãã©ãã¯ã§ã.\n"
+msgstr "\"%s\" ã¯ãªã¼ãã£ãªï¼£ï¼¤ãã©ãã¯ã§ã.\n"
"Audacity ã¯ãã®å½¢å¼ã®ãã¡ã¤ã«ããªã¼ãã³ã§ãã¾ãã.\n"
"CDãã©ãã¯ããªãã(æ½åº)ãã¦ãAudacity ã§ã®èªã¿è¾¼ã¿ãå¯è½ãªå½¢å¼\n"
"WAV ã AIFF ã«ãã¦ã¿ã¦ãã ãã."
#: import/Import.cpp:256
#, c-format
-msgid ""
-"\"%s\" is a playlist file. \n"
+msgid "\"%s\" is a playlist file. \n"
"Audacity cannot open this file because it only contains links to other files. \n"
"You may be able to open it in a text editor and download the actual audio files."
-msgstr ""
-"\"%s\" ã¯ãã¬ã¤ãªã¹ããã¡ã¤ã«ã§ãã\n"
+msgstr "\"%s\" ã¯ãã¬ã¤ãªã¹ããã¡ã¤ã«ã§ãã\n"
"ä»ã®ãã¡ã¤ã«ã¸ã®ãªã³ã¯ãå«ãã§ãããããAudacity ã¯ãã®ãã¡ã¤ã«ãéããã¨ãã§ãã¾ããã\n"
"ããã¹ãã¨ãã£ã¿ã§éãããæ¬æ¥ã®ãªã¼ãã£ãªãã¡ã¤ã«ããã¦ã³ãã¼ããã¦éããã¨ã¯å¯è½ã§ãããã"
#: import/Import.cpp:261
#, c-format
-msgid ""
-"\"%s\" is a Windows Media Audio file. \n"
+msgid "\"%s\" is a Windows Media Audio file. \n"
"Audacity cannot open this type of file due to patent restrictions. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr ""
-"\"%s\" 㯠Windows Media ãªã¼ãã£ãªãã¡ã¤ã«ã§ãã\n"
+msgstr "\"%s\" 㯠Windows Media ãªã¼ãã£ãªãã¡ã¤ã«ã§ãã\n"
"ç¹è¨±ä¸ã®å¶éã«ãããAudacity ã¯ãã®ç¨®ã®ãã¡ã¤ã«ãéããã¨ã¯ã§ãã¾ããã\n"
"ãµãã¼ããã¦ãããªã¼ãã£ãªãã¡ã¤ã«å½¢å¼ãWAV ã AIFF ãªã©ã«å¤æããå¿
è¦ãããã¾ãã"
#: import/Import.cpp:266
#, c-format
-msgid ""
-"\"%s\" is an Advanced Audio Coding file. \n"
+msgid "\"%s\" is an Advanced Audio Coding file. \n"
"Audacity cannot open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr ""
-"\"%s\" ã¯å
é²çãªãªã¼ãã£ãªã³ã¼ããã¯ã®ãã¡ã¤ã«ã§ã.\n"
+msgstr "\"%s\" ã¯å
é²çãªãªã¼ãã£ãªã³ã¼ããã¯ã®ãã¡ã¤ã«ã§ã.\n"
"Audacity ã¯ãã®å½¢å¼ã®ãã¡ã¤ã«ããªã¼ãã³ã§ãã¾ãã.\n"
"ãµãã¼ããã¦ãããªã¼ãã£ãªãã¡ã¤ã«å½¢å¼ãWAV ã AIFF ãªã©ã«å¤æããå¿
è¦ãããã¾ãã"
#: import/Import.cpp:271
#, c-format
-msgid ""
-"\"%s\" is an encrypted audio file. \n"
+msgid "\"%s\" is an encrypted audio file. \n"
"These typically are from an online music store. \n"
"Audacity cannot open this type of file due to the encryption. \n"
"Try recording the file into Audacity, or burn it to audio CD then \n"
"extract the CD track to a supported audio format such as WAV or AIFF."
-msgstr ""
-"\"%s\" ã¯ãæå·åããããªã¼ãã£ãªãã¡ã¤ã«ã§ã.\n"
+msgstr "\"%s\" ã¯ãæå·åããããªã¼ãã£ãªãã¡ã¤ã«ã§ã.\n"
"ãããã¯å
¸åçã«ã¯ãªã³ã©ã¤ã³é³æ¥½ã·ã§ããããã®ãã®ã§ã.\n"
"æå·åã®ãã Audacity ã¯ãã®ç¨®ã®ãã¡ã¤ã«ãéããã¨ãã§ãã¾ãã.\n"
"Audacity ã§é²é³ã試ã¿ããããªã¼ãã£ãªCDã¨ãã¦ä½æããå¾ã\n"
@@ -7611,37 +7268,31 @@ msgstr ""
#: import/Import.cpp:276
#, c-format
-msgid ""
-"\"%s\" is a RealPlayer media file. \n"
+msgid "\"%s\" is a RealPlayer media file. \n"
"Audacity cannot open this proprietary format. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr ""
-"\"%s\" 㯠RealPlayer ç¨ã®ã¡ãã£ã¢ãã¡ã¤ã«ã§ãã\n"
+msgstr "\"%s\" 㯠RealPlayer ç¨ã®ã¡ãã£ã¢ãã¡ã¤ã«ã§ãã\n"
"ãã®åæ¥ãã©ã¼ãããã Audacity ã¯éããã¨ãã§ãã¾ããã\n"
"ãµãã¼ãããã¦ãã WAV ã AIFF ãªã©ã®ãªã¼ãã£ãªãã¡ã¤ã«å½¢å¼ã«å¤æããå¿
è¦ãããã¾ãã"
#: import/Import.cpp:282
#, c-format
-msgid ""
-"\"%s\" is a notes-based file, not an audio file. \n"
+msgid "\"%s\" is a notes-based file, not an audio file. \n"
"Audacity cannot open this type of file. \n"
"Try converting it to an audio file such as WAV or AIFF and \n"
"then import it, or record it into Audacity."
-msgstr ""
-"\"%s\" ã¯é³ç¬¦ã«åºã¥ããã¡ã¤ã«ã§ããããªã¼ãã£ãªãã¡ã¤ã«ã§ããã¾ãã.\n"
+msgstr "\"%s\" ã¯é³ç¬¦ã«åºã¥ããã¡ã¤ã«ã§ããããªã¼ãã£ãªãã¡ã¤ã«ã§ããã¾ãã.\n"
"Audacity ã¯ãã®å½¢å¼ã®ãã¡ã¤ã«ããªã¼ãã³ã§ãã¾ãã.\n"
"ãµãã¼ããã¦ãããªã¼ãã£ãªãã¡ã¤ã«å½¢å¼ãWAV ã AIFF ãªã©ã«å¤æããå¿
è¦ãããã¾ãã"
#: import/Import.cpp:288
#, c-format
-msgid ""
-"\"%s\" is a Musepack audio file. \n"
+msgid "\"%s\" is a Musepack audio file. \n"
"Audacity cannot open this type of file. \n"
"If you think it might be an mp3 file, rename it to end with \".mp3\" \n"
"and try importing it again. Otherwise you need to convert it to a supported audio \n"
"format, such as WAV or AIFF."
-msgstr ""
-"\"%s\" 㯠Musepack ãªã¼ãã£ãªãã¡ã¤ã«ã§ãã\n"
+msgstr "\"%s\" 㯠Musepack ãªã¼ãã£ãªãã¡ã¤ã«ã§ãã\n"
"Audacity ã¯ãã®ç¨®ã®ãã¡ã¤ã«ãéããã¨ã¯ã§ãã¾ããã\n"
"ãããããã mp3 ãããããªãã¨æããªãï¼æå¾ã\".mp3\" ã§çµãããã\n"
"ãã¡ã¤ã«åãæ¸ãæãã¦ããå度èªã¿è¾¼ã¿ã試ãã¦ãã ããã\n"
@@ -7649,64 +7300,52 @@ msgstr ""
#: import/Import.cpp:294
#, c-format
-msgid ""
-"\"%s\" is a Wavpack audio file. \n"
+msgid "\"%s\" is a Wavpack audio file. \n"
"Audacity cannot open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr ""
-"\"%s\" 㯠Wavpackãªã¼ãã£ãªãã¡ã¤ã«ã§ã.\n"
+msgstr "\"%s\" 㯠Wavpackãªã¼ãã£ãªãã¡ã¤ã«ã§ã.\n"
"Audacity ã¯ãã®å½¢å¼ã®ãã¡ã¤ã«ããªã¼ãã³ã§ãã¾ãã.\n"
"ãµãã¼ããã¦ãããªã¼ãã£ãªãã¡ã¤ã«å½¢å¼ãWAV ã AIFF ãªã©ã«å¤æããå¿
è¦ãããã¾ãã"
#: import/Import.cpp:300
#, c-format
-msgid ""
-"\"%s\" is a Dolby Digital audio file. \n"
+msgid "\"%s\" is a Dolby Digital audio file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr ""
-"\"%s\" 㯠Dolby Digital ãªã¼ãã£ãªãã¡ã¤ã«ã§ã.\n"
+msgstr "\"%s\" 㯠Dolby Digital ãªã¼ãã£ãªãã¡ã¤ã«ã§ã.\n"
"Audacity ã¯ãã®å½¢å¼ã®ãã¡ã¤ã«ããªã¼ãã³ã§ãã¾ãã.\n"
"ãµãã¼ããã¦ãããªã¼ãã£ãªãã¡ã¤ã«å½¢å¼ãWAV ã AIFF ãªã©ã«å¤æããå¿
è¦ãããã¾ãã"
#: import/Import.cpp:306
#, c-format
-msgid ""
-"\"%s\" is an Ogg Speex audio file. \n"
+msgid "\"%s\" is an Ogg Speex audio file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr ""
-"\"%s\" 㯠Ogg Speex ãªã¼ãã£ãªãã¡ã¤ã«ã§ã.\n"
+msgstr "\"%s\" 㯠Ogg Speex ãªã¼ãã£ãªãã¡ã¤ã«ã§ã.\n"
"Audacity ã¯ãã®å½¢å¼ã®ãã¡ã¤ã«ããªã¼ãã³ã§ãã¾ãã.\n"
"ãµãã¼ããã¦ãããªã¼ãã£ãªãã¡ã¤ã«å½¢å¼ãWAV ã AIFF ãªã©ã«å¤æããå¿
è¦ãããã¾ãã"
#: import/Import.cpp:312
#, c-format
-msgid ""
-"\"%s\" is a video file. \n"
+msgid "\"%s\" is a video file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to extract the audio to a supported format, such as WAV or AIFF."
-msgstr ""
-"\"%s\" ã¯æ åãã¡ã¤ã«ã§ã.\n"
+msgstr "\"%s\" ã¯æ åãã¡ã¤ã«ã§ã.\n"
"Audacity ã¯ãã®å½¢å¼ã®ãã¡ã¤ã«ããªã¼ãã³ã§ãã¾ãã.\n"
"ãµãã¼ããã¦ãããªã¼ãã£ãªãã¡ã¤ã«å½¢å¼ããã¨ãã° WAV ã AIFF ãªã©ãæ½åºããå¿
è¦ãããã¾ã."
#: import/Import.cpp:317
#, c-format
-msgid ""
-"Audacity did not recognize the type of the file '%s'.\n"
+msgid "Audacity did not recognize the type of the file '%s'.\n"
"If it is uncompressed, try importing it using \"Import Raw\"."
-msgstr ""
-"Audacity ã¯ãã®ãã¡ã¤ã«'%s'ã®ç¨®é¡ãèªèã§ãã¾ããã§ãã.\n"
+msgstr "Audacity ã¯ãã®ãã¡ã¤ã«'%s'ã®ç¨®é¡ãèªèã§ãã¾ããã§ãã.\n"
"ãã®ãã¡ã¤ã«ãéå§ç¸®ãã¡ã¤ã«ã®å ´åã\"Raw ãã¡ã¤ã«ã®èªã¿è¾¼ã¿\" ã試ãã¦ã¿ã¦ä¸ãã."
#: import/Import.cpp:322
#, c-format
-msgid ""
-"Audacity recognized the type of the file '%s',\n"
+msgid "Audacity recognized the type of the file '%s',\n"
"but was unable to import it."
-msgstr ""
-"Audacity ã¯ãã®ãã¡ã¤ã«'%s'ã®ç¨®é¡ãèªèãã¾ããã\n"
+msgstr "Audacity ã¯ãã®ãã¡ã¤ã«'%s'ã®ç¨®é¡ãèªèãã¾ããã\n"
"èªã¿è¾¼ããã¨ãã§ãã¾ããã§ãã."
#: import/ImportFFmpeg.cpp:34
@@ -7722,6 +7361,10 @@ msgstr "ã¤ã³ããã¯ã¹[%02x] ã³ã¼ããã¯[%S], è¨èª[%S], ãããã¬
msgid "FLAC files"
msgstr "FLACãã¡ã¤ã«"
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr ""
+
#: import/ImportLOF.cpp:95
msgid "List of Files in basic text format"
msgstr "åºæ¬çãªããã¹ããã©ã¼ãããã«ãããã¡ã¤ã«ãªã¹ã"
@@ -7736,9 +7379,7 @@ msgstr "LOF ãã¡ã¤ã«ä¸ã®ã¦ã£ã³ãã¦ãªãã»ããã¯ç¡å¹ã§ã."
# i18n-hint: You do not need to translate "LOF"
# i18n-hint: You do not need to translate "LOF"
#. i18n-hint: You do not need to translate "LOF"
-#: import/ImportLOF.cpp:316
-#: import/ImportLOF.cpp:337
-#: import/ImportLOF.cpp:418
+#: import/ImportLOF.cpp:316 import/ImportLOF.cpp:337 import/ImportLOF.cpp:418
#: import/ImportLOF.cpp:439
msgid "LOF Error"
msgstr "LOF ã¨ã©ã¼"
@@ -7765,9 +7406,7 @@ msgstr "LOF ãã¡ã¤ã«ä¸ã®ãã©ãã¯ãªãã»ããã¯ç¡å¹ã§ã."
msgid ": Filename too short."
msgstr ": ãã¡ã¤ã«åãçããã¾ã."
-#: import/ImportMIDI.cpp:31
-#: import/ImportMIDI.cpp:39
-#: import/ImportMIDI.cpp:45
+#: import/ImportMIDI.cpp:31 import/ImportMIDI.cpp:39 import/ImportMIDI.cpp:45
#: import/ImportMIDI.cpp:53
msgid "Could not open file "
msgstr "ãã¡ã¤ã«ãéãã¾ãã"
@@ -7804,8 +7443,7 @@ msgstr "å
é¨å¦çã¨ã©ã¼"
msgid "WAV, AIFF, and other uncompressed types"
msgstr "WAV, AIFF ã¨ä»ã®éå§ç¸®å½¢å¼"
-#: import/ImportPlugin.h:142
-#: import/ImportRaw.cpp:203
+#: import/ImportPlugin.h:142 import/ImportRaw.cpp:203
#, c-format
msgid "Importing %s"
msgstr "'%s' ãã¡ã¤ã«ãåãè¾¼ã"
@@ -7904,159 +7542,59 @@ msgstr "波形ã復å·å"
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr "%s %2.0f%% å®äº. å¦çãã¤ã³ãã夿´ããã«ã¯ã¯ãªãã¯."
-#: prefs/AudioIOPrefs.cpp:41
-#: prefs/AudioIOPrefs.cpp:42
-#: prefs/MidiIOPrefs.cpp:44
-#: prefs/MidiIOPrefs.cpp:45
-msgid "Audio I/O"
-msgstr "ãªã¼ãã£ãª I/O"
+#: prefs/BatchPrefs.cpp:55 prefs/BatchPrefs.cpp:56
+msgid "Batch"
+msgstr "èªåå®è¡"
-#: prefs/AudioIOPrefs.cpp:102
-#: prefs/MidiIOPrefs.cpp:99
-msgid "1 (Mono)"
-msgstr "1 (ã¢ãã©ã«)"
+#: prefs/BatchPrefs.cpp:77 prefs/GUIPrefs.cpp:92
+msgid "Behaviors"
+msgstr "ãµãã¾ã"
-#: prefs/AudioIOPrefs.cpp:103
-#: prefs/MidiIOPrefs.cpp:100
-msgid "2 (Stereo)"
-msgstr "2 (ã¹ãã¬ãª)"
+#: prefs/BatchPrefs.cpp:80
+msgid "&Don't apply effects in batch mode"
+msgstr "èªåå®è¡ã¢ã¼ãã§ã¯ãã¨ãã§ã¯ããé©ç¨ããªã (&D)"
-#: prefs/AudioIOPrefs.cpp:117
-#: prefs/MidiIOPrefs.cpp:114
-msgid "Playback"
-msgstr "ãã¬ã¤ããã¯"
+#: prefs/BatchPrefs.cpp:83 prefs/GUIPrefs.cpp:132
+msgid "Cl&eanSpeech Mode (Customized GUI)"
+msgstr "ã¯ãªã¼ã³ã¹ãã¼ãã¢ã¼ã (ã«ã¹ã¿ãã¤ãºãããGUI) (&e)"
-#: prefs/AudioIOPrefs.cpp:121
-#: prefs/AudioIOPrefs.cpp:139
-#: prefs/MidiIOPrefs.cpp:118
-#: prefs/MidiIOPrefs.cpp:136
-#: toolbars/DeviceToolBar.cpp:57
-msgid "Device"
-msgstr "ããã¤ã¹:"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:34 prefs/GUIPrefs.cpp:35
+msgid "Interface"
+msgstr "ã¤ã³ã¿ãã§ã¤ã¹"
+
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
+msgstr ""
-#: prefs/AudioIOPrefs.cpp:124
-#: prefs/MidiIOPrefs.cpp:121
+#: prefs/AudioIOPrefs.cpp:124 prefs/MidiIOPrefs.cpp:121
msgid "Using:"
msgstr "å©ç¨ä¸:"
-#: prefs/AudioIOPrefs.cpp:125
-#: prefs/MidiIOPrefs.cpp:122
-msgid "Portaudio v"
-msgstr "ãã¼ããªã¼ãã£ãª v"
+#: prefs/AudioIOPrefs.cpp:117 prefs/MidiIOPrefs.cpp:114
+msgid "Playback"
+msgstr "ãã¬ã¤ããã¯"
-#: prefs/AudioIOPrefs.cpp:135
-#: prefs/MidiIOPrefs.cpp:132
+#: prefs/AudioIOPrefs.cpp:135 prefs/MidiIOPrefs.cpp:132
msgid "Recording"
msgstr "ã¬ã³ã¼ãã£ã³ã°"
-#: prefs/AudioIOPrefs.cpp:141
-#: prefs/MidiIOPrefs.cpp:138
+#: prefs/AudioIOPrefs.cpp:141 prefs/MidiIOPrefs.cpp:138
msgid "Channels"
msgstr "ãã£ã³ãã«:"
-#: prefs/AudioIOPrefs.cpp:147
-#: prefs/MidiIOPrefs.cpp:144
-msgid "Playthrough"
-msgstr "ã¹ã«ã¼åç"
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr "ãªã¼ãã¼ãã: æ°ããã¬ã³ã¼ãã£ã³ã°ããªããä»ã®ãã©ãã¯ãåç (&P)"
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr "ãã¼ãã¦ã§ã¢ã«ããã¹ã«ã¼åç (é²é³ä¸ã«ãã®æ°ãããã©ãã¯ãåç) (&H)"
-
-#: prefs/AudioIOPrefs.cpp:154
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr "ã½ããã¦ã§ã¢ã«ããã¹ã«ã¼åç (é²é³ä¸ã«ãã®æ°ãããã©ãã¯ãåç) (&S)"
-
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr "ã½ããã¦ã§ã¢ã«ããã¹ã«ã¼åç (é²é³ä¸ã«ãã®æ°ãããã©ãã¯ãåç) (&S)"
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr "(\"stereo mix\"ãé²é³ããå ´åã¯ãã§ãã¯ãã¯ããã¦ãã ããã)"
-
-#: prefs/AudioIOPrefs.cpp:168
-#: prefs/MidiIOPrefs.cpp:193
-msgid "Effects Preview"
-msgstr "ã¨ãã§ã¯ããã¬ãã¥ã¼"
-
-#: prefs/AudioIOPrefs.cpp:171
-msgid "Length of preview:"
-msgstr "ãã¬ãã¥ã¼ã®é·ã:"
-
-#: prefs/AudioIOPrefs.cpp:176
-#: prefs/MidiIOPrefs.cpp:157
-msgid "Cut Preview"
-msgstr "ã«ãããã¬ãã¥ã¼"
-
-#: prefs/AudioIOPrefs.cpp:179
-msgid "Preview before cut region:"
-msgstr "ã«ããé åã®åã«ãã¬ãã¥ã¼"
-
-#: prefs/AudioIOPrefs.cpp:181
-msgid "Preview after cut region:"
-msgstr "ã«ããé åã®å¾ã«ãã¬ãã¥ã¼:"
-
-#: prefs/AudioIOPrefs.cpp:189
-#: prefs/MidiIOPrefs.cpp:167
-msgid "Latency"
-msgstr "ã¬ã¤ãã³ã·ã¼"
-
-#: prefs/AudioIOPrefs.cpp:195
-msgid ""
-"Audio to buffer:\n"
-"(higher = more latency)"
-msgstr ""
-"ãªã¼ãã£ãªããããã¡ã¸éãæé: \n"
-"(大ããã¨ããé
ãã¾ã)"
-
-#: prefs/AudioIOPrefs.cpp:198
-msgid ""
-"Latency correction:\n"
-"(negative = backwards)"
-msgstr ""
-"ã¬ã¤ãã³ã·ã¼è£æ£:\n"
-"(è² ã®å¤ã¯éå»ãæå³ãã)"
-
-#: prefs/AudioIOPrefs.cpp:203
-msgid "Seek Time when playing"
-msgstr "åçæã«æéãè¦ã:"
-
-#: prefs/AudioIOPrefs.cpp:206
-#: prefs/MidiIOPrefs.cpp:186
-msgid "Short period:"
-msgstr "çãæé:"
-
-#: prefs/AudioIOPrefs.cpp:208
-#: prefs/MidiIOPrefs.cpp:188
-msgid "Long period:"
-msgstr "é·ãæé:"
-
-#: prefs/BatchPrefs.cpp:55
-#: prefs/BatchPrefs.cpp:56
-msgid "Batch"
-msgstr "èªåå®è¡"
-
-#: prefs/BatchPrefs.cpp:77
-#: prefs/GUIPrefs.cpp:92
-msgid "Behaviors"
-msgstr "ãµãã¾ã"
-
-#: prefs/BatchPrefs.cpp:80
-msgid "&Don't apply effects in batch mode"
-msgstr "èªåå®è¡ã¢ã¼ãã§ã¯ãã¨ãã§ã¯ããé©ç¨ããªã (&D)"
+#: prefs/AudioIOPrefs.cpp:102 prefs/MidiIOPrefs.cpp:99
+msgid "1 (Mono)"
+msgstr "1 (ã¢ãã©ã«)"
-#: prefs/BatchPrefs.cpp:83
-#: prefs/GUIPrefs.cpp:132
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr "ã¯ãªã¼ã³ã¹ãã¼ãã¢ã¼ã (ã«ã¹ã¿ãã¤ãºãããGUI) (&e)"
+#: prefs/AudioIOPrefs.cpp:103 prefs/MidiIOPrefs.cpp:100
+msgid "2 (Stereo)"
+msgstr "2 (ã¹ãã¬ãª)"
-#: prefs/DirectoriesPrefs.cpp:55
-#: prefs/DirectoriesPrefs.cpp:56
+#: prefs/DirectoriesPrefs.cpp:55 prefs/DirectoriesPrefs.cpp:56
#: prefs/PrefsDialog.cpp:267
msgid "Directories"
msgstr "ãã£ã¬ã¯ããª"
@@ -8073,34 +7611,31 @@ msgstr "ä½ç½®:"
msgid "Free Space:"
msgstr "空ã容é:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr "èªåä¿å"
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr "åå²ãããã©ã«ãã«ããã¸ã§ã¯ãã®ã³ãã¼ãèªåä¿å"
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
-msgstr "èªåä¿åé »åº¦:"
-
-#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
-msgstr "å"
-
#: prefs/DirectoriesPrefs.cpp:110
msgid "Audio cache"
msgstr "ãªã¼ãã£ãªãã£ãã·ã¥"
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
-msgstr "RAM (é常ã¯é
ãããã¤ã¹ããããé·ããã¡ã¤ã«ãé²é³ã§ç ´æ»
ãããã¨ããã)ãç¨ããåçãããã¯é²é³"
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "Play and/or record using RAM (useful for slow drives)"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
+msgstr ""
#: prefs/DirectoriesPrefs.cpp:121
msgid "Choose a location to place the temporary directory"
msgstr "ãã³ãã©ãªãã£ã¬ã¯ããªã®æå®"
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: prefs/DirectoriesPrefs.cpp:166
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -8119,107 +7654,6 @@ msgstr "ãã£ã¬ã¯ã㪠%s ã¯æ¸ãè¾¼ã¿ã§ãã¾ãã"
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "夿´ããããã³ãã©ãªãã£ã¬ã¯ããªã¯ Audacity ãåèµ·åããã¾ã§æå¹ã«ãªãã¾ãã"
-#: prefs/FileFormatPrefs.cpp:53
-#: prefs/FileFormatPrefs.cpp:54
-msgid "Import / Export"
-msgstr "èªã¿è¾¼ã¿ã¨æ¸ãåºã"
-
-#: prefs/FileFormatPrefs.cpp:84
-msgid "MP3 Export Library"
-msgstr "MP3 æ¸ãåºãã©ã¤ãã©ãª"
-
-#: prefs/FileFormatPrefs.cpp:87
-msgid "MP3 Library Version:"
-msgstr "MP3 ã©ã¤ãã©ãªãã¼ã¸ã§ã³:"
-
-#: prefs/FileFormatPrefs.cpp:93
-msgid "MP3 Library:"
-msgstr "MP3 ã©ã¤ãã©ãª:"
-
-#: prefs/FileFormatPrefs.cpp:96
-#: prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
-msgstr "ä½ç½®ã¥ãã(&L)"
-
-#: prefs/FileFormatPrefs.cpp:98
-msgid "LAME MP3 Library:"
-msgstr "LAME MP3 ã©ã¤ãã©ãª:"
-
-#: prefs/FileFormatPrefs.cpp:101
-#: prefs/FileFormatPrefs.cpp:125
-msgid "&Download"
-msgstr "ãã¦ã³ãã¼ã (&D)"
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
-msgstr "FFmpeg èªã¿è¾¼ã¿/æ¸ãåºãã©ã¤ãã©ãª"
-
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
-msgstr "FFmpeg ã©ã¤ãã©ãªãã¼ã¸ã§ã³:"
-
-#: prefs/FileFormatPrefs.cpp:118
-#: prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
-msgstr "FFmpeg ã©ã¤ãã©ãª:"
-
-#: prefs/FileFormatPrefs.cpp:136
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr "注æ: æ¸ãåºãå質ãªãã·ã§ã³ã¯æ¸ãåºãç»é¢ã§ãªãã·ã§ã³ãã¿ã³ãã¯ãªãã¯ãã¦é¸ã¶ãã¨ãã§ãã¾ãã\n"
-
-#: prefs/FileFormatPrefs.cpp:137
-msgid "When importing audio files"
-msgstr "éå§ç¸®ãªã¼ãã£ãªãã¡ã¤ã«ãåãè¾¼ãå ´å"
-
-#: prefs/FileFormatPrefs.cpp:140
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
-msgstr "ç·¨éã®åã«éå§ç¸®ã®ãªã¼ãã£ãªãã¡ã¤ã«ãã³ãã¼ãã (ããå®å
¨ã§ã) (&M)"
-
-#: prefs/FileFormatPrefs.cpp:141
-msgid "&Read uncompressed audio files directly from the original (faster)"
-msgstr "éå§ç¸®ã®ãªã¼ãã£ãªãã¡ã¤ã«ããç´æ¥èªã¿è¾¼ã¿ã¾ã (é«é) (&R)"
-
-#: prefs/FileFormatPrefs.cpp:143
-msgid "&Normalize all tracks in project"
-msgstr "å
¨ã¦ã®ãã©ãã¯ãåºæºåãã (&N)"
-
-#: prefs/FileFormatPrefs.cpp:148
-msgid "When saving a project that depends on other audio files"
-msgstr "ä»ã®ãªã¼ãã£ãªãã¡ã¤ã«ã«ä¾åããããã¸ã§ã¯ããä¿åããã¨ã"
-
-#: prefs/FileFormatPrefs.cpp:151
-msgid "Always © all audio into project (safest)"
-msgstr "常ã«å
¨ã¦ã®ãªã¼ãã£ãªãããã¸ã§ã¯ãã«ã³ãã¼ãã(æãå®å
¨) (&c)"
-
-#: prefs/FileFormatPrefs.cpp:152
-msgid "&Do not copy any audio"
-msgstr "ãããªããªã¼ãã£ãªãã³ãã¼ãã¾ãã (&D)"
-
-#: prefs/FileFormatPrefs.cpp:153
-msgid "&Ask user"
-msgstr "ã¦ã¼ã¶ã«ç¢ºèªãã (&A)"
-
-#: prefs/FileFormatPrefs.cpp:157
-msgid "When exporting tracks to an audio file"
-msgstr "ãã©ãã¯ã®æ¸ãåºãæ"
-
-#: prefs/FileFormatPrefs.cpp:160
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
-msgstr "常ã«å
¨ã¦ã®ãã©ãã¯ãã¹ãã¬ãªãããã¯ã¢ãã©ã«ãã£ã³ãã«ã«ããã¯ã¹ãã¦ã³ãã (&l)"
-
-#: prefs/FileFormatPrefs.cpp:161
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
-msgstr "ã«ã¹ã¿ã ããã¯ã¹ãä½¿ç¨ (ä¾ãã°5.1ãã«ããã£ã³ãã«ãã¡ã¤ã«ã¸ã®åºå) (&U)"
-
-#: prefs/FileFormatPrefs.cpp:163
-msgid "S&how Metadata Editor prior to export step"
-msgstr "ã¡ã¿ãã¼ã¿ã¨ãã£ã¿ãæ¸ãåºãã®åã«è¡¨ç¤º (&h)"
-
-#: prefs/GUIPrefs.cpp:34
-#: prefs/GUIPrefs.cpp:35
-msgid "Interface"
-msgstr "ã¤ã³ã¿ãã§ã¤ã¹"
-
#: prefs/GUIPrefs.cpp:42
msgid "In Browser"
msgstr "ãã©ã¦ãºã¶ä¸"
@@ -8228,77 +7662,29 @@ msgstr "ãã©ã¦ãºã¶ä¸"
msgid "From Internet"
msgstr "ã¤ã³ã¿ã¼ããããã"
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
-msgstr "åç´"
-
-#: prefs/GUIPrefs.cpp:94
-msgid "&Update display while playing"
-msgstr "åçããªããè¡¨ç¤ºãæ´æ°ã(&U)"
-
-#: prefs/GUIPrefs.cpp:96
-msgid "Cl&osing last window quits Audacity"
-msgstr "æå¾ã®ã¦ã£ã³ãã¦ãéãã㨠Audacity ãå®å
¨ã«çµäºãã¾ã (&o)"
-
-#: prefs/GUIPrefs.cpp:98
-msgid "Enable &dragging of left and right selection edges"
-msgstr "鏿é åã®å·¦å³ä¸¡ç«¯ã®ãã©ãã°ãå¯è½ (&d)"
-
-#: prefs/GUIPrefs.cpp:100
-msgid "Er&gonomic order of audio I/O buttons"
-msgstr "ãªã¼ãã£ãª I/O ãã¿ã³ã人éå·¥å¦çé åºã¨ãã (&g)"
-
-#: prefs/GUIPrefs.cpp:102
-msgid "Automatically &fit tracks vertically zoomed"
-msgstr "ãã©ãã¯ã縦ã«ãºã¼ã ãã¦èªåçã«åããã (&f)"
-
-#: prefs/GUIPrefs.cpp:104
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
-msgstr "\"ãã©ãã¯ã®ãã©ã¼ã«ã¹ãç§»å\" ãã©ãã¯ãç°ç¶ã«ç¹°ãè¿ãã¦ç§»å (&y)"
-
-#: prefs/GUIPrefs.cpp:106
-msgid "Editing a &clip can move other clips"
-msgstr "ããã¯ãªãããç·¨éãããã¨ã§ãä»ã®ã¯ãªãããç§»åãããã¨ãå¯è½ (&c)"
-
-#: prefs/GUIPrefs.cpp:108
-msgid "&Select all audio in project, if none selected"
-msgstr "ããå
¨ã鏿ããã¦ããªããªããå
¨ã¦ã®ãªã¼ãã£ãªã鏿 (&S)"
-
-#: prefs/GUIPrefs.cpp:110
-msgid "&Beep on completion of longer activities"
-msgstr "é·ãå¦çãå®äºããã¨ãã«ãã¼ããé³´ãã (&B)"
-
-#: prefs/GUIPrefs.cpp:114
-msgid "Show / Hide"
-msgstr "表示/é ã"
-
-#: prefs/GUIPrefs.cpp:116
-msgid "Enable cut &lines"
-msgstr "ç·ãåããããã«ãã(&l)"
-
-#: prefs/GUIPrefs.cpp:118
-msgid "Show warnings about &temp files"
-msgstr "ãã³ãã©ãªãã¡ã¤ã«ã«é¢ããè¦åã表示 (&t)"
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
+msgstr ""
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
-msgstr "ããããã¸ã§ã¯ãã空ã§ãã£ã¦ããä¿åã®éã«ããã³ããã表示 (&v)"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
+msgstr ""
-#: prefs/GUIPrefs.cpp:122
-msgid "Show &Welcome Message at program start up"
-msgstr "ããã°ã©ã éå§æã«ããããç»é¢ã表示 (&W)"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
+msgstr ""
-#: prefs/GUIPrefs.cpp:126
-msgid "Modes"
-msgstr "ã¢ã¼ã"
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
+msgstr ""
-#: prefs/GUIPrefs.cpp:129
-msgid "Don't a&pply effects in batch mode"
-msgstr "èªåå®è¡ã¢ã¼ãã§ã¯ãã¨ãã§ã¯ããé©ç¨ããªã (&p)"
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
+msgstr ""
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
-msgstr "波形(dB)表示ã«ããã表示ç¯å²ã®æå°"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
+msgstr ""
#: prefs/GUIPrefs.cpp:141
msgid "-36 dB (shallow range for high-amplitude editing)"
@@ -8324,29 +7710,89 @@ msgstr "-120dB (å¯è´ç¯å²ã®éçä»è¿)"
msgid "-145 dB (PCM range of 24 bit samples)"
msgstr "-145 dB (PCM 24bit ãµã³ããªã³ã°ã®ç¯å²)"
-# i18n-hint: Refers to byte-order. Don't translate "endianness" if you don't
-# know the correct technical word.
-# i18n-hint: Refers to byte-order. Don't translate "endianness" if you don't
-# know the correct technical word.
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
-msgstr "æ¢å®ã®è¡¨ç¤ºã¢ã¼ã"
+#: prefs/SpectrumPrefs.cpp:140
+msgid "Display"
+msgstr "表示"
-#: prefs/GUIPrefs.cpp:164
-msgid "Other interface choices"
-msgstr "ãã®ä»ã®ã¤ã³ã¿ãã§ã¼ã¹ã®é¸æ"
+#: prefs/GUIPrefs.cpp:100
+msgid "Er&gonomic order of audio I/O buttons"
+msgstr "ãªã¼ãã£ãª I/O ãã¿ã³ã人éå·¥å¦çé åºã¨ãã (&g)"
+
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
+msgstr ""
# i18n-hint: The name of the Help menu
#: prefs/GUIPrefs.cpp:167
msgid "Help:"
msgstr "ãã«ã:"
-#: prefs/GUIPrefs.cpp:168
-msgid "Solo Button:"
-msgstr "ã½ããã¿ã³:"
+#: prefs/GUIPrefs.cpp:96
+msgid "Cl&osing last window quits Audacity"
+msgstr "æå¾ã®ã¦ã£ã³ãã¦ãéãã㨠Audacity ãå®å
¨ã«çµäºãã¾ã (&o)"
+
+#: prefs/GUIPrefs.cpp:110
+msgid "&Beep on completion of longer activities"
+msgstr "é·ãå¦çãå®äºããã¨ãã«ãã¼ããé³´ãã (&B)"
+
+#: prefs/GUIPrefs.cpp:126
+msgid "Modes"
+msgstr "ã¢ã¼ã"
+
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:129
+msgid "Don't a&pply effects in batch mode"
+msgstr "èªåå®è¡ã¢ã¼ãã§ã¯ãã¨ãã§ã¯ããé©ç¨ããªã (&p)"
+
+#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
+msgid "Import / Export"
+msgstr "èªã¿è¾¼ã¿ã¨æ¸ãåºã"
+
+#: prefs/FileFormatPrefs.cpp:137
+msgid "When importing audio files"
+msgstr "éå§ç¸®ãªã¼ãã£ãªãã¡ã¤ã«ãåãè¾¼ãå ´å"
+
+#: prefs/FileFormatPrefs.cpp:140
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
+msgstr "ç·¨éã®åã«éå§ç¸®ã®ãªã¼ãã£ãªãã¡ã¤ã«ãã³ãã¼ãã (ããå®å
¨ã§ã) (&M)"
+
+#: prefs/FileFormatPrefs.cpp:141
+msgid "&Read uncompressed audio files directly from the original (faster)"
+msgstr "éå§ç¸®ã®ãªã¼ãã£ãªãã¡ã¤ã«ããç´æ¥èªã¿è¾¼ã¿ã¾ã (é«é) (&R)"
+
+#: prefs/FileFormatPrefs.cpp:143
+msgid "&Normalize all tracks in project"
+msgstr "å
¨ã¦ã®ãã©ãã¯ãåºæºåãã (&N)"
+
+#: prefs/FileFormatPrefs.cpp:157
+msgid "When exporting tracks to an audio file"
+msgstr "ãã©ãã¯ã®æ¸ãåºãæ"
+
+#: prefs/FileFormatPrefs.cpp:160
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+msgstr "常ã«å
¨ã¦ã®ãã©ãã¯ãã¹ãã¬ãªãããã¯ã¢ãã©ã«ãã£ã³ãã«ã«ããã¯ã¹ãã¦ã³ãã (&l)"
-#: prefs/KeyConfigPrefs.cpp:64
-#: prefs/KeyConfigPrefs.cpp:65
+#: prefs/FileFormatPrefs.cpp:161
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+msgstr "ã«ã¹ã¿ã ããã¯ã¹ãä½¿ç¨ (ä¾ãã°5.1ãã«ããã£ã³ãã«ãã¡ã¤ã«ã¸ã®åºå) (&U)"
+
+#: prefs/FileFormatPrefs.cpp:163
+msgid "S&how Metadata Editor prior to export step"
+msgstr "ã¡ã¿ãã¼ã¿ã¨ãã£ã¿ãæ¸ãåºãã®åã«è¡¨ç¤º (&h)"
+
+#: prefs/ImportExportPrefs.cpp:84
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
+msgstr ""
+
+#: prefs/KeyConfigPrefs.cpp:64 prefs/KeyConfigPrefs.cpp:65
msgid "Keyboard"
msgstr "ãã¼ãã¼ã"
@@ -8370,22 +7816,26 @@ msgstr "ã»ãã (&e)"
msgid "Note: Pressing Cmd+Q will quit. All other keys are valid."
msgstr "ã¡ã¢: Cmd+Q ã§çµäº. ä»ã®ãã¼å
¨ã¦ã¯æå¹ã§ã."
-#: prefs/KeyConfigPrefs.cpp:124
-#: prefs/ThemePrefs.cpp:105
+#: prefs/KeyConfigPrefs.cpp:124 prefs/ThemePrefs.cpp:105
msgid "&Defaults"
msgstr "æ¢å®å¤ (&D)"
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr ""
+
#: prefs/KeyConfigPrefs.cpp:143
msgid "Key Combination"
msgstr "ãã¼ã®çµã¿åãã"
-#: prefs/KeyConfigPrefs.cpp:163
-msgid "Export Keyboard Shortcuts As:"
-msgstr "ãã¼ãã¼ãã·ã§ã¼ãã«ããã®æ¸ãåºã:"
+#: prefs/KeyConfigPrefs.cpp:369 toolbars/EditToolBar.cpp:144
+msgid "Undo"
+msgstr "ã¢ã³ãã¥"
-#: prefs/KeyConfigPrefs.cpp:183
-msgid "Error saving keyboard shortcuts"
-msgstr "ãã¼ãã¼ãã·ã§ã¼ãã«ããã®ä¿åæã«ã¨ã©ã¼ãçºçãã¾ãã"
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr ""
#: prefs/KeyConfigPrefs.cpp:198
msgid "Select an XML file containing Audacity keyboard shortcuts..."
@@ -8395,21 +7845,79 @@ msgstr "Audacty ã®ãã¼ãã¼ãã·ã§ã¼ãã«ãããå®ç¾©ããã¦ãã
msgid "Error loading keyboard shortcuts"
msgstr "ãã¼ãã¼ãã·ã§ã¼ãã«ããã®èªã¿è¾¼ã¿æã«ã¨ã©ã¼ãçºçãã¾ãã"
+#: prefs/KeyConfigPrefs.cpp:163
+msgid "Export Keyboard Shortcuts As:"
+msgstr "ãã¼ãã¼ãã·ã§ã¼ãã«ããã®æ¸ãåºã:"
+
+#: prefs/KeyConfigPrefs.cpp:183
+msgid "Error saving keyboard shortcuts"
+msgstr "ãã¼ãã¼ãã·ã§ã¼ãã«ããã®ä¿åæã«ã¨ã©ã¼ãçºçãã¾ãã"
+
#: prefs/KeyConfigPrefs.cpp:243
#, c-format
-msgid ""
-"The keyboard shortcut '%s' is already assigned to:\n"
+msgid "The keyboard shortcut '%s' is already assigned to:\n"
"\n"
"'%s'"
-msgstr ""
-"ãã¼ãã¼ãã·ã§ã¼ãã«ãã `%s' ã¯æ¢ã« \n"
+msgstr "ãã¼ãã¼ãã·ã§ã¼ãã«ãã `%s' ã¯æ¢ã« \n"
"\n"
"`%s'ãã«å²ãå½ã¦ããã¦ãã¾ãã"
-#: prefs/KeyConfigPrefs.cpp:369
-#: toolbars/EditToolBar.cpp:144
-msgid "Undo"
-msgstr "ã¢ã³ãã¥"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:84
+msgid "MP3 Export Library"
+msgstr "MP3 æ¸ãåºãã©ã¤ãã©ãª"
+
+#: prefs/FileFormatPrefs.cpp:87
+msgid "MP3 Library Version:"
+msgstr "MP3 ã©ã¤ãã©ãªãã¼ã¸ã§ã³:"
+
+#: prefs/FileFormatPrefs.cpp:93
+msgid "MP3 Library:"
+msgstr "MP3 ã©ã¤ãã©ãª:"
+
+#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr "ä½ç½®ã¥ãã(&L)"
+
+#: prefs/FileFormatPrefs.cpp:98
+msgid "LAME MP3 Library:"
+msgstr "LAME MP3 ã©ã¤ãã©ãª:"
+
+#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
+msgid "&Download"
+msgstr "ãã¦ã³ãã¼ã (&D)"
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr "FFmpeg èªã¿è¾¼ã¿/æ¸ãåºãã©ã¤ãã©ãª"
+
+#: prefs/FileFormatPrefs.cpp:109
+msgid "FFmpeg Library Version:"
+msgstr "FFmpeg ã©ã¤ãã©ãªãã¼ã¸ã§ã³:"
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
+msgid "FFmpeg Library:"
+msgstr "FFmpeg ã©ã¤ãã©ãª:"
+
+#: prefs/AudioIOPrefs.cpp:41 prefs/AudioIOPrefs.cpp:42
+#: prefs/MidiIOPrefs.cpp:44 prefs/MidiIOPrefs.cpp:45
+msgid "Audio I/O"
+msgstr "ãªã¼ãã£ãª I/O"
+
+#: prefs/AudioIOPrefs.cpp:125 prefs/MidiIOPrefs.cpp:122
+msgid "Portaudio v"
+msgstr "ãã¼ããªã¼ãã£ãª v"
+
+#: prefs/AudioIOPrefs.cpp:147 prefs/MidiIOPrefs.cpp:144
+msgid "Playthrough"
+msgstr "ã¹ã«ã¼åç"
#: prefs/MidiIOPrefs.cpp:146
msgid "&Play other tracks while recording new one"
@@ -8423,6 +7931,10 @@ msgstr "ãã¼ãã¦ã§ã¢ã«ããã¹ã«ã¼åç (é²é³ä¸ã«ãã®æ°ãã
msgid "&Software Playthrough (Play new track while recording it)"
msgstr "ã½ããã¦ã§ã¢ã«ããã¹ã«ã¼åç (é²é³ä¸ã«ãã®æ°ãããã©ãã¯ãåç) (&S)"
+#: prefs/AudioIOPrefs.cpp:176 prefs/MidiIOPrefs.cpp:157
+msgid "Cut Preview"
+msgstr "ã«ãããã¬ãã¥ã¼"
+
#: prefs/MidiIOPrefs.cpp:160
msgid "Play before cut region:"
msgstr "ã«ããé åã®åã«ããªãã¥ã¼:"
@@ -8431,6 +7943,10 @@ msgstr "ã«ããé åã®åã«ããªãã¥ã¼:"
msgid "Play after cut region:"
msgstr "ã«ããé åã®å¾ã«ããªãã¥ã¼:"
+#: prefs/AudioIOPrefs.cpp:189 prefs/MidiIOPrefs.cpp:167
+msgid "Latency"
+msgstr "ã¬ã¤ãã³ã·ã¼"
+
#: prefs/MidiIOPrefs.cpp:173
msgid "Audio to buffer:"
msgstr "ãªã¼ãã£ãªãããããã¡ã¸:"
@@ -8443,12 +7959,23 @@ msgstr "ã¬ã¤ãã³ã·ã¼è£æ£:"
msgid "Seek Time"
msgstr "æå»ã®æ¢ç´¢"
+#: prefs/AudioIOPrefs.cpp:206 prefs/MidiIOPrefs.cpp:186
+msgid "Short period:"
+msgstr "çãæé:"
+
+#: prefs/AudioIOPrefs.cpp:208 prefs/MidiIOPrefs.cpp:188
+msgid "Long period:"
+msgstr "é·ãæé:"
+
+#: prefs/AudioIOPrefs.cpp:168 prefs/MidiIOPrefs.cpp:193
+msgid "Effects Preview"
+msgstr "ã¨ãã§ã¯ããã¬ãã¥ã¼"
+
#: prefs/MidiIOPrefs.cpp:196
msgid "Play when previewing:"
msgstr "ãã¬ãã¥ã¼æã«åç:"
-#: prefs/MousePrefs.cpp:55
-#: prefs/MousePrefs.cpp:56
+#: prefs/MousePrefs.cpp:55 prefs/MousePrefs.cpp:56
msgid "Mouse"
msgstr "ãã¦ã¹"
@@ -8468,37 +7995,26 @@ msgstr "ã³ãã³ãã¢ã¯ã·ã§ã³"
msgid "Buttons"
msgstr "ãã¿ã³"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:117
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:117
#: prefs/MousePrefs.cpp:122
msgid "Left-Click"
msgstr "å·¦-ã¯ãªãã¯"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:100
-#: prefs/MousePrefs.cpp:101
-#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:101 prefs/MousePrefs.cpp:102
msgid "Select"
msgstr "鏿"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:122
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:122
msgid "Set Selection Point"
msgstr "鏿ä½ç½®ãè¨å®"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:115
-#: prefs/MousePrefs.cpp:119
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:115 prefs/MousePrefs.cpp:119 prefs/MousePrefs.cpp:123
msgid "Left-Drag"
msgstr "å·¦-ãã©ãã°"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:123
msgid "Set Selection Range"
msgstr "鏿ç¯å²ãè¨å®"
@@ -8526,12 +8042,8 @@ msgstr "Ctrl-Left-Click"
msgid "Set Selection Point and Play"
msgstr "鏿ä½ç½®ãè¨å®ãã¦åç"
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:108
-#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:106
+#: prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:108 prefs/MousePrefs.cpp:109
msgid "Zoom"
msgstr "æ¡å¤§"
@@ -8539,9 +8051,7 @@ msgstr "æ¡å¤§"
msgid "Zoom in on Point"
msgstr "ãã®ãã¤ã³ããæ¡å¤§"
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:125
msgid "Zoom in on a Range"
msgstr "ãã®ç¯å²ãæ¡å¤§"
@@ -8549,18 +8059,15 @@ msgstr "ãã®ç¯å²ãæ¡å¤§"
msgid "same as right-drag"
msgstr "å·¦ãã©ãã°ã¨åãã§ã"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:106 prefs/MousePrefs.cpp:124
msgid "Right-Click"
msgstr "å³ã¯ãªãã¯"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:106 prefs/MousePrefs.cpp:124
msgid "Zoom out one step"
msgstr "ï¼æ®µé縮å°"
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:125
msgid "Right-Drag"
msgstr "å³ãã©ãã°"
@@ -8596,8 +8103,7 @@ msgstr "ã·ãã-å·¦ãã¿ã³-ãã©ãã°"
msgid "Time shift all clips in track"
msgstr "ãã©ãã¯å
ã§ã®å
¨ã¦ã®ã¯ãªããã®æéãã·ãã"
-#: prefs/MousePrefs.cpp:113
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:113 prefs/MousePrefs.cpp:120
msgid "Ctrl-Left-Drag"
msgstr "ã³ã³ããã¼ã«-å·¦ãã¿ã³-ãã©ãã°"
@@ -8613,9 +8119,7 @@ msgstr "å¢å¹
åã夿´"
msgid "Change Sample"
msgstr "ãµã³ãã«ã®å¤æ´"
-#: prefs/MousePrefs.cpp:117
-#: prefs/MousePrefs.cpp:118
-#: prefs/MousePrefs.cpp:119
+#: prefs/MousePrefs.cpp:117 prefs/MousePrefs.cpp:118 prefs/MousePrefs.cpp:119
#: prefs/MousePrefs.cpp:120
msgid "Pencil"
msgstr "ãã³ã·ã«"
@@ -8636,26 +8140,20 @@ msgstr "ããã¤ãã®ãµã³ãã«ã夿´"
msgid "Change ONE Sample only"
msgstr "åä¸ãµã³ãã«ã®ã¿å¤æ´"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123 prefs/MousePrefs.cpp:124
#: prefs/MousePrefs.cpp:125
msgid "Multi"
msgstr "ãã«ã"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123
msgid "same as select tool"
msgstr "ã»ã¬ã¯ããã¼ã«ã¨åãã§ã"
-#: prefs/MousePrefs.cpp:124
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:124 prefs/MousePrefs.cpp:125
msgid "same as zoom tool"
msgstr "æ¡å¤§ãã¼ã«ã¨åãã§ã"
-#: prefs/MousePrefs.cpp:127
-#: prefs/MousePrefs.cpp:128
-#: prefs/MousePrefs.cpp:129
+#: prefs/MousePrefs.cpp:127 prefs/MousePrefs.cpp:128 prefs/MousePrefs.cpp:129
msgid "Any"
msgstr "ãããã§ã"
@@ -8683,10 +8181,62 @@ msgstr "ã³ã³ããã¼ã«-ãã¤ã¼ã«-å転"
msgid "Zoom in or out"
msgstr "æ¡å¤§ãããã¯ç¸®å°"
+#: prefs/AudioIOPrefs.cpp:171
+msgid "Length of preview:"
+msgstr "ãã¬ãã¥ã¼ã®é·ã:"
+
+#: prefs/AudioIOPrefs.cpp:179
+msgid "Preview before cut region:"
+msgstr "ã«ããé åã®åã«ãã¬ãã¥ã¼"
+
+#: prefs/AudioIOPrefs.cpp:181
+msgid "Preview after cut region:"
+msgstr "ã«ããé åã®å¾ã«ãã¬ãã¥ã¼:"
+
+#: prefs/AudioIOPrefs.cpp:203
+msgid "Seek Time when playing"
+msgstr "åçæã«æéãè¦ã:"
+
#: prefs/PrefsDialog.cpp:94
msgid "Audacity Preferences"
msgstr "Audacity ã®è¨å®"
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:148
+msgid "When saving a project that depends on other audio files"
+msgstr "ä»ã®ãªã¼ãã£ãªãã¡ã¤ã«ã«ä¾åããããã¸ã§ã¯ããä¿åããã¨ã"
+
+#: prefs/FileFormatPrefs.cpp:151
+msgid "Always © all audio into project (safest)"
+msgstr "常ã«å
¨ã¦ã®ãªã¼ãã£ãªãããã¸ã§ã¯ãã«ã³ãã¼ãã(æãå®å
¨) (&c)"
+
+#: prefs/FileFormatPrefs.cpp:152
+msgid "&Do not copy any audio"
+msgstr "ãããªããªã¼ãã£ãªãã³ãã¼ãã¾ãã (&D)"
+
+#: prefs/FileFormatPrefs.cpp:153
+msgid "&Ask user"
+msgstr "ã¦ã¼ã¶ã«ç¢ºèªãã (&A)"
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr "èªåä¿å"
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr "åå²ãããã©ã«ãã«ããã¸ã§ã¯ãã®ã³ãã¼ãèªåä¿å"
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr "èªåä¿åé »åº¦:"
+
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr "å"
+
#: prefs/QualityPrefs.cpp:73
msgid "Rectangle"
msgstr "ç©å½¢"
@@ -8711,49 +8261,48 @@ msgstr "æ¢å®ãµã³ãã«ã¬ã¼ã:"
msgid "Default Sample Format:"
msgstr "æ¢å®ãµã³ãã«ãã©ã¼ããã:"
-#: prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "ãªã¢ã«ã¿ã¤ã ãµã³ãã«ã¬ã¼ãã³ã³ãã¼ã¿ã¼:"
-
-#: prefs/QualityPrefs.cpp:139
-msgid "High-quality sample rate converter:"
-msgstr "髿§è½ãµã³ããªã³ã°ã¬ã¼ãã³ã³ãã¼ã¿ã¼:"
-
-#: prefs/QualityPrefs.cpp:142
-msgid "Real-time dither:"
-msgstr "ãªã¢ã«ã¿ã¤ã ãã£ã¶:"
-
-#: prefs/QualityPrefs.cpp:145
-msgid "High-quality dither:"
-msgstr "髿§è½ãã£ã¶"
-
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
-msgstr "夿"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+#, fuzzy
+msgid "Sample Rate Converter:"
msgstr "ãµã³ãã«ã¬ã¼ãã³ã³ãã¼ã¿ã¼:"
#: prefs/QualityPrefs.cpp:164
msgid "Dither"
msgstr "ãã£ã¶"
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
-msgstr "ãªã¢ã«ã¿ã¤ã :"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:149
+msgid "Overdub: &Play other tracks while recording new one"
+msgstr "ãªã¼ãã¼ãã: æ°ããã¬ã³ã¼ãã£ã³ã°ããªããä»ã®ãã©ãã¯ãåç (&P)"
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
-msgstr "髿§è½:"
+#: prefs/AudioIOPrefs.cpp:152
+msgid "&Hardware Playthrough: Play new track while recording it"
+msgstr "ãã¼ãã¦ã§ã¢ã«ããã¹ã«ã¼åç (é²é³ä¸ã«ãã®æ°ãããã©ãã¯ãåç) (&H)"
-#: prefs/SmartRecordPrefs.cpp:37
-#: prefs/SmartRecordPrefs.cpp:38
-msgid "Smart Recording"
-msgstr "è³¢ãé²é³"
+#: prefs/AudioIOPrefs.cpp:157
+msgid "&Software Playthrough: Play new track while recording or monitoring"
+msgstr "ã½ããã¦ã§ã¢ã«ããã¹ã«ã¼åç (é²é³ä¸ã«ãã®æ°ãããã©ãã¯ãåç) (&S)"
-#: prefs/SmartRecordPrefs.cpp:64
-#: prefs/SmartRecordPrefs.cpp:66
+#: prefs/AudioIOPrefs.cpp:160
+msgid "(uncheck when recording \"stereo mix\")"
+msgstr "(\"stereo mix\"ãé²é³ããå ´åã¯ãã§ãã¯ãã¯ããã¦ãã ããã)"
+
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
+msgstr ""
+
+#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
msgid "Sound Activated Recording"
msgstr "é³ãããã¨ãã«é²é³"
@@ -8761,23 +8310,58 @@ msgstr "é³ãããã¨ãã«é²é³"
msgid "Sound Activation Level (dB):"
msgstr "é³ãããã¨ãã®ã¬ãã« (dB):"
-#: prefs/SpectrumPrefs.cpp:41
-#: prefs/SpectrumPrefs.cpp:42
+#: prefs/SpectrumPrefs.cpp:41 prefs/SpectrumPrefs.cpp:42
msgid "Spectrograms"
msgstr "ã¹ãã¯ããã°ã©ã "
-#: prefs/SpectrumPrefs.cpp:91
-msgid "FFT Size"
-msgstr "FFT ãµã¤ãº"
-
#: prefs/SpectrumPrefs.cpp:94
msgid "8 - most wideband"
msgstr "8 - æãåºããã³ãå¹
"
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:99
msgid "256 - default"
msgstr "256 - ããã©ã«ã"
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:107
msgid "32768 - most narrowband"
msgstr "32768 - æãçããã³ãå¹
"
@@ -8786,21 +8370,26 @@ msgstr "32768 - æãçããã³ãå¹
"
msgid "4096 - most narrowband"
msgstr "4096 - çããã³ãå¹
"
-#: prefs/SpectrumPrefs.cpp:116
-msgid "Window type:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:93
+#, fuzzy
+msgid "Window type"
msgstr "çªé¢æ°ã®ç¨®é¡:"
#: prefs/SpectrumPrefs.cpp:125
msgid "FFT Skip Points"
msgstr "FFTã®èªã¿é£ã°ãç¹æ°"
-#: prefs/SpectrumPrefs.cpp:140
-msgid "Display"
-msgstr "表示"
-
-#: prefs/SpectrumPrefs.cpp:144
-msgid "&Grayscale"
-msgstr "ã°ã¬ã¤ã¹ã±ã¼ã«ã(&G)"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
+msgstr ""
#: prefs/SpectrumPrefs.cpp:147
msgid "Minimum Frequency (Hz):"
@@ -8810,17 +8399,17 @@ msgstr "æä½å¨æ³¢æ° (Hz):"
msgid "Maximum Frequency (Hz):"
msgstr "æé«å¨æ³¢æ° (Hz):"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
-msgstr "Yã°ãªãã (&Y)"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
+msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
-msgstr "é³ç¬¦ãè¦ä»ãã (&F)"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
+msgstr ""
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
-msgstr "é³ç¬¦ãéåå(ã¯ãªã³ã¿ã¤ãº) (&Q)"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
+msgstr ""
#: prefs/SpectrumPrefs.cpp:165
msgid "Minimum Amplitude (dB):"
@@ -8830,6 +8419,14 @@ msgstr "æå°æ¯å¹
(dB):"
msgid "Max. Number of Notes (1..128):"
msgstr "æå¤§ãã¼ãçªå·(1..128):"
+#: prefs/SpectrumPrefs.cpp:161
+msgid "&Find Notes"
+msgstr "é³ç¬¦ãè¦ä»ãã (&F)"
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Quantize Notes"
+msgstr "é³ç¬¦ãéåå(ã¯ãªã³ã¿ã¤ãº) (&Q)"
+
#: prefs/SpectrumPrefs.cpp:197
msgid "The maximum frequency must be an integer"
msgstr "æé«å¨æ³¢æ°ã¯æ´æ°ã«ããªãã¦ã¯ãªãã¾ãã"
@@ -8846,20 +8443,66 @@ msgstr "æä½å¨æ³¢æ°ã¯æ´æ°ã«ããªãã¦ã¯ãªãã¾ãã"
msgid "Minimum frequency must be at least 0 Hz"
msgstr "æä½å¨æ³¢æ°å°ãªãã¨ãã0Hzã§ãªããã°ãªãã¾ããã"
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr "æä½æ¯å¹
(dB)ã¯æ´æ°ã§ãªããã°ãªãã¾ãã"
#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
-msgstr "æå¤§ãã¼ãçªå·ã¯ 1ãã 128ã¾ã§ã®æ´æ°ã§ãªããã°ãªãã¾ãã"
+msgid "The maximum number of notes must be in the range 1..128"
+msgstr ""
-#: prefs/ThemePrefs.cpp:62
-#: prefs/ThemePrefs.cpp:63
+#: prefs/ThemePrefs.cpp:62 prefs/ThemePrefs.cpp:63
msgid "Theme"
msgstr "ãã¼ã"
+#: prefs/ThemePrefs.cpp:126
+msgid "Info"
+msgstr "æ
å ±"
+
+#: prefs/ThemePrefs.cpp:91
+#, fuzzy
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr "ãã¼ãã¯å®é¨çãªæ©è½ã§ãã\n"
+"\n"
+"使ã£ã¦ã¿ããªãã\"ãã¼ããã£ãã·ã¥ãä¿å\" ãã¯ãªãã¯ãã¦\n"
+"ãããGimpã®ãããªç»åã¨ãã£ã¿ã§ç»åã¨è²ãä¿®æ£ããå¾ã\n"
+"ImageCacheVxx.png ã¨ããååã§\n"
+"ä¿åãã¦ãã ããã\n"
+"\n"
+"\"ãã¼ããã£ãã·ã¥ã®ãã¼ã\"ãã¯ãªãã¯ããã¨ãè²ãç»åãä¿®æ£ããããã®ã\n"
+"Audacity ã®èæ¯ã¨ãã¦èªã¿è¾¼ã¿ã¾ãã"
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#. i18n-hint: && in here is an escape character to get a single & on screen,
#. * so keep it as is
#: prefs/ThemePrefs.cpp:93
@@ -8890,104 +8533,96 @@ msgstr "ãã¡ã¤ã«ä¿å"
msgid "Load Files"
msgstr "ãã¡ã¤ã«ã®èªã¿è¾¼ã¿"
-#: prefs/ThemePrefs.cpp:126
-msgid "Info"
-msgstr "æ
å ±"
+#: prefs/GUIPrefs.cpp:50
+msgid "Simple"
+msgstr "åç´"
-#: prefs/ThemePrefs.cpp:129
-msgid ""
-"Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
+#: prefs/GUIPrefs.cpp:94
+msgid "&Update display while playing"
+msgstr "åçããªããè¡¨ç¤ºãæ´æ°ã(&U)"
+
+#: prefs/GUIPrefs.cpp:102
+msgid "Automatically &fit tracks vertically zoomed"
+msgstr "ãã©ãã¯ã縦ã«ãºã¼ã ãã¦èªåçã«åããã (&f)"
+
+#: prefs/TracksPrefs.cpp:88
+#, fuzzy
+msgid "Default View Mode:"
+msgstr "æ¢å®ã®è¡¨ç¤ºã¢ã¼ã"
+
+#: prefs/GUIPrefs.cpp:108
+msgid "&Select all audio in project, if none selected"
+msgstr "ããå
¨ã鏿ããã¦ããªããªããå
¨ã¦ã®ãªã¼ãã£ãªã鏿 (&S)"
+
+#: prefs/GUIPrefs.cpp:116
+msgid "Enable cut &lines"
+msgstr "ç·ãåããããã«ãã(&l)"
+
+#: prefs/GUIPrefs.cpp:98
+msgid "Enable &dragging of left and right selection edges"
+msgstr "鏿é åã®å·¦å³ä¸¡ç«¯ã®ãã©ãã°ãå¯è½ (&d)"
+
+#: prefs/GUIPrefs.cpp:104
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+msgstr "\"ãã©ãã¯ã®ãã©ã¼ã«ã¹ãç§»å\" ãã©ãã¯ãç°ç¶ã«ç¹°ãè¿ãã¦ç§»å (&y)"
+
+#: prefs/GUIPrefs.cpp:106
+msgid "Editing a &clip can move other clips"
+msgstr "ããã¯ãªãããç·¨éãããã¨ã§ãä»ã®ã¯ãªãããç§»åãããã¨ãå¯è½ (&c)"
+
+#: prefs/GUIPrefs.cpp:168
+msgid "Solo Button:"
+msgstr "ã½ããã¿ã³:"
+
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
msgstr ""
-"ãã¼ãã¯å®é¨çãªæ©è½ã§ãã\n"
-"\n"
-"使ã£ã¦ã¿ããªãã\"ãã¼ããã£ãã·ã¥ãä¿å\" ãã¯ãªãã¯ãã¦\n"
-"ãããGimpã®ãããªç»åã¨ãã£ã¿ã§ç»åã¨è²ãä¿®æ£ããå¾ã\n"
-"ImageCacheVxx.png ã¨ããååã§\n"
-"ä¿åãã¦ãã ããã\n"
-"\n"
-"\"ãã¼ããã£ãã·ã¥ã®ãã¼ã\"ãã¯ãªãã¯ããã¨ãè²ãç»åãä¿®æ£ããããã®ã\n"
-"Audacity ã®èæ¯ã¨ãã¦èªã¿è¾¼ã¿ã¾ãã\n"
-#: prefs/ThemePrefs.cpp:134
-msgid ""
-"You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
msgstr ""
-"Audacity ã'Sourceryåºå'å¤é¨ãã¿ã³ã¤ãã§ã³ã³ãã¤ã«ãã¦ãã¾ãã\n"
-"ããã¯æåããå«ã¾ãã¦ããCãã¼ã¸ã§ã³ã®ã¤ã¡ã¼ã¸ãã£ãã·ã¥ã\n"
-"ä¿åãããã¨ã«ãªãã¾ãã\n"
-#: prefs/ThemePrefs.cpp:139
-msgid ""
-"If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
msgstr ""
-"ãã `èµ·åæã«ãã¼ããã£ãã·ã¥ãèªã¿è¾¼ã' ããã§ãã¯ããã¦ããå ´åã\n"
-"ãã¼ããã£ãã·ã¥ã¯ããã°ã©ã ãéå§ãããã¨ãã«\n"
-"èªã¿è¾¼ã¾ãã¾ãã\n"
-"\n"
-#: prefs/ThemePrefs.cpp:142
-msgid ""
-"Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
msgstr ""
-"åã
ã®ãã¼ããã¡ã¤ã«ãä¿åãããèªã¿è¾¼ããã¨ã¯ã\n"
-"ç»åã«ããããã®å¥åã®ãã¡ã¤ã«ãå¿
è¦ã¨ãã¾ãã\n"
-"ãããããã以å¤ã§ã¯åãèãæ¹ã§ãã\n"
-"\n"
-#: toolbars/ControlToolBar.cpp:175
-msgid "Pause"
-msgstr "ãã¼ãº"
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play"
-msgstr "åç"
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
-msgstr "åç (ã·ãããæ¼ãã¨ã«ã¼ãåç)"
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:183
+#: Menus.cpp:997
+msgid "Pause"
+msgstr "忢"
+
+#: Menus.cpp:996
msgid "Stop"
msgstr "忢"
-#: toolbars/ControlToolBar.cpp:186
-msgid "Skip to Start"
-msgstr "åãã¾ã§é²ãã"
+#: toolbars/ControlToolBar.cpp:195
+msgid "Clean Speech"
+msgstr "ã¯ãªã¼ã³ã¹ãã¼ã"
-#: toolbars/ControlToolBar.cpp:189
-msgid "Skip to End"
-msgstr "çµããã¾ã§é²ãã"
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play (Shift for Loop Play)"
+msgstr "åç (ã·ãããæ¼ãã¨ã«ã¼ãåç)"
#: toolbars/ControlToolBar.cpp:192
msgid "Record (Shift for Append Record)"
msgstr "é²é³ (追å é²é³ã®ããã«ã·ãã)"
-#: toolbars/ControlToolBar.cpp:195
-msgid "Clean Speech"
-msgstr "ã¯ãªã¼ã³ã¹ãã¼ã"
-
-#: toolbars/ControlToolBar.cpp:540
-#: toolbars/ControlToolBar.cpp:869
+#: toolbars/ControlToolBar.cpp:540 toolbars/ControlToolBar.cpp:869
msgid "Error while opening sound device. "
msgstr "é³ãã¡ã¤ã«ã®èªã¿è¾¼ã¿æã«ã¨ã©ã¼ãçºçãã¾ãã"
@@ -8999,13 +8634,11 @@ msgstr "æ¢ã«ã²ã¨ã¤ã®ãã©ãã¯ããããã¯ã²ã¨ã¤ä»¥ä¸ã®ããã¸
msgid "Recording not permitted"
msgstr "é²é³ã¯è¨±å¯ããã¦ãã¾ãã"
-#: toolbars/DeviceToolBar.cpp:113
-#: toolbars/DeviceToolBar.cpp:115
+#: toolbars/DeviceToolBar.cpp:113 toolbars/DeviceToolBar.cpp:115
msgid "Output Device"
msgstr "åçããã¤ã¹"
-#: toolbars/DeviceToolBar.cpp:134
-#: toolbars/DeviceToolBar.cpp:136
+#: toolbars/DeviceToolBar.cpp:134 toolbars/DeviceToolBar.cpp:136
msgid "Input Device"
msgstr "å
¥åããã¤ã¹"
@@ -9029,29 +8662,21 @@ msgstr "æ¡å¤§"
msgid "Zoom Out"
msgstr "縮å°"
-#: toolbars/EditToolBar.cpp:161
-msgid "Zoom Toggle"
-msgstr "æ¡å¤§åãæ¿ã"
-
-#: toolbars/EditToolBar.cpp:165
-msgid "Fit Selection"
-msgstr "鏿é¨åãåããã"
-
#: toolbars/EditToolBar.cpp:165
msgid "Fit selection in window"
msgstr "鏿ç¯å²ãã¦ã£ã³ãã¦ã«åããã"
#: toolbars/EditToolBar.cpp:167
-msgid "Fit Project"
-msgstr "ããã¸ã§ã¯ããåããã"
-
-#: toolbars/EditToolBar.cpp:167
msgid "Fit project in window"
msgstr "ããã¸ã§ã¯ããã¦ã£ã³ãã«åããã"
-#: toolbars/MeterToolBar.cpp:50
-msgid "Meter"
-msgstr "ã¡ã¼ã¿ã¼"
+#: toolbars/EditToolBar.cpp:165
+msgid "Fit Selection"
+msgstr "鏿é¨åãåããã"
+
+#: toolbars/EditToolBar.cpp:167
+msgid "Fit Project"
+msgstr "ããã¸ã§ã¯ããåããã"
#: toolbars/MeterToolBar.cpp:80
msgid "Play Meter"
@@ -9085,8 +8710,7 @@ msgstr "åºåããªã¥ã¼ã "
msgid "Slider Output"
msgstr "åºåã¹ã©ã¤ãã¼"
-#: toolbars/MixerToolBar.cpp:101
-#: widgets/Meter.cpp:874
+#: toolbars/MixerToolBar.cpp:101 widgets/Meter.cpp:874
msgid "Input Volume"
msgstr "ã¤ã³ãããããªã¥ã¼ã "
@@ -9098,22 +8722,27 @@ msgstr "å
¥åã¹ã©ã¤ãã¼"
msgid "Input Source"
msgstr "å
¥åã½ã¼ã¹"
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:86
msgid "Selection"
msgstr "鏿"
-#: toolbars/SelectionBar.cpp:135
-#: toolbars/SelectionBar.cpp:194
+#: toolbars/SelectionBar.cpp:135 toolbars/SelectionBar.cpp:194
msgid "Project Rate (Hz):"
msgstr "ããã¸ã§ã¯ãã®ãµã³ããªã³ã°å¨æ³¢æ° (Hz):"
-#: toolbars/SelectionBar.cpp:149
-#: toolbars/SelectionBar.cpp:255
+#: toolbars/SelectionBar.cpp:149 toolbars/SelectionBar.cpp:255
msgid "Selection Start:"
msgstr "鏿éå§:"
-#: toolbars/SelectionBar.cpp:163
-#: toolbars/SelectionBar.cpp:164
+#: toolbars/SelectionBar.cpp:163 toolbars/SelectionBar.cpp:164
#: toolbars/SelectionBar.cpp:261
msgid "Length"
msgstr "é·ã"
@@ -9122,15 +8751,13 @@ msgstr "é·ã"
msgid "hidden"
msgstr "é ããã"
-#: toolbars/SelectionBar.cpp:184
-#: toolbars/SelectionBar.cpp:272
+#: toolbars/SelectionBar.cpp:184 toolbars/SelectionBar.cpp:272
msgid "Audio Position:"
msgstr "åçä½ç½®"
# i18n-hint: Set snap-to mode on or off
# i18n-hint: Set snap-to mode on or off
-#: toolbars/SelectionBar.cpp:236
-#: toolbars/SelectionBar.cpp:241
+#: toolbars/SelectionBar.cpp:236 toolbars/SelectionBar.cpp:241
msgid "Snap To"
msgstr "ã¹ãããã¢ã¼ããæå¹"
@@ -9151,8 +8778,7 @@ msgstr "é¸æã®æå¾"
msgid "Audacity %s ToolBar"
msgstr "Audacity %s ãã¼ã«ãã¼"
-#: toolbars/ToolDock.cpp:74
-#: toolbars/ToolDock.cpp:75
+#: toolbars/ToolDock.cpp:74 toolbars/ToolDock.cpp:75
msgid "ToolDock"
msgstr "ãã¼ã«ããã¯"
@@ -9184,34 +8810,6 @@ msgstr "å·¦=æ¡å¤§, å³=縮å°, ä¸å¤®=é常"
msgid "Click and drag to move a track in time"
msgstr "ãã©ãã¯ã®æéãç§»åããããã«ã¯ã¯ãªãã¯ããå¾ã«ãã©ãã°ãã¦ä¸ãã"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr "ãã¼ã«"
-
-#: toolbars/ToolsToolBar.cpp:147
-#: toolbars/ToolsToolBar.cpp:182
-msgid "Selection Tool"
-msgstr "鏿ãã¼ã«"
-
-#: toolbars/ToolsToolBar.cpp:148
-msgid "Envelope Tool"
-msgstr "ã¨ã³ããã¼ããã¼ã«"
-
-#: toolbars/ToolsToolBar.cpp:149
-#: toolbars/ToolsToolBar.cpp:183
-msgid "Time Shift Tool"
-msgstr "ã¿ã¤ã ã·ãããã¼ã«"
-
-#: toolbars/ToolsToolBar.cpp:150
-#: toolbars/ToolsToolBar.cpp:185
-msgid "Zoom Tool"
-msgstr "æ¡å¤§ãã¼ã«"
-
-#: toolbars/ToolsToolBar.cpp:151
-#: toolbars/ToolsToolBar.cpp:184
-msgid "Draw Tool"
-msgstr "ããã¼ãã¼ã«"
-
#: toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
msgstr "ãã«ããã¼ã«ã¢ã¼ã"
@@ -9220,24 +8818,11 @@ msgstr "ãã«ããã¼ã«ã¢ã¼ã"
msgid "Slide Tool"
msgstr "ã¹ã©ã¤ããã¼ã«"
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr "ãã«ããã¼ã«"
-
-#: toolbars/TranscriptionToolBar.cpp:84
-msgid "Transcription"
-msgstr "ç·¨æ²"
-
#: toolbars/TranscriptionToolBar.cpp:171
msgid "Play at selected speed"
msgstr "鏿ããã¹ãã¼ãã§åç"
-#: toolbars/TranscriptionToolBar.cpp:172
-msgid "Play-at-speed"
-msgstr "ã¹ãã¼ããå¤ãã¦åç"
-
-#: toolbars/TranscriptionToolBar.cpp:178
-#: toolbars/TranscriptionToolBar.cpp:183
+#: toolbars/TranscriptionToolBar.cpp:178 toolbars/TranscriptionToolBar.cpp:183
msgid "Playback Speed"
msgstr "åçé度"
@@ -9245,74 +8830,38 @@ msgstr "åçé度"
msgid "Adjust left selection to next onset"
msgstr "å·¦å´ã®é¸æé¨åãæ¬¡ã®å§ã¾ãé¨åã«åããã"
-#: toolbars/TranscriptionToolBar.cpp:197
-msgid "Left-to-On"
-msgstr "å·¦ã§ãªã³"
-
#: toolbars/TranscriptionToolBar.cpp:199
msgid "Adjust right selection to previous offset"
msgstr "åã®ãªãã»ããã«å·¦ã®é¸æé¨åãåããã"
-#: toolbars/TranscriptionToolBar.cpp:200
-msgid "Right-to-Off"
-msgstr "å³ã§ãªã³"
-
#: toolbars/TranscriptionToolBar.cpp:202
msgid "Adjust left selection to next offset"
msgstr "åã®ãªãã»ããã«å³ã®é¸æé¨åãåããã"
-#: toolbars/TranscriptionToolBar.cpp:203
-msgid "Left-to-Off"
-msgstr "å·¦ã§ãªã"
-
#: toolbars/TranscriptionToolBar.cpp:205
msgid "Adjust right selection to previous onset"
msgstr "å³å´ã®é¸æé¨åãæ¬¡ã®å§ã¾ãé¨åã«åããã"
-#: toolbars/TranscriptionToolBar.cpp:206
-msgid "Right-to-On"
-msgstr "å³ã§ãªã³"
-
#: toolbars/TranscriptionToolBar.cpp:208
msgid "Select region of sound around cursor"
msgstr "ã«ã¼ã½ã«ä»è¿ã®é³ã®é åã鏿"
-#: toolbars/TranscriptionToolBar.cpp:209
-msgid "Select-Sound"
-msgstr "ãµã¦ã³ãã鏿"
-
#: toolbars/TranscriptionToolBar.cpp:211
msgid "Select region of silence around cursor"
msgstr "ã«ã¼ã½ã«ä»è¿ã®ç¡é³ã®é åã鏿"
-#: toolbars/TranscriptionToolBar.cpp:212
-msgid "Select-Silence"
-msgstr "ç¡é³ã鏿"
-
#: toolbars/TranscriptionToolBar.cpp:214
msgid "Automatically make labels from words"
msgstr "åèªããèªåçã«ã©ãã«ã使"
-#: toolbars/TranscriptionToolBar.cpp:215
-msgid "Make Labels"
-msgstr "ã©ãã«ãä»ãã"
-
#: toolbars/TranscriptionToolBar.cpp:217
msgid "Add label at selection"
msgstr "鏿ç¯å²ã«ã©ãã«ãä»ãã"
-#: toolbars/TranscriptionToolBar.cpp:218
-msgid "Add Label"
-msgstr "ã©ãã«ãä»ãã"
-
#: toolbars/TranscriptionToolBar.cpp:220
msgid "Calibrate voicekey"
msgstr "ãã¤ã¹ãã¼ã®æ ¡æ£"
-#: toolbars/TranscriptionToolBar.cpp:221
-msgid "Calibrate"
-msgstr "æ ¡æ£"
-
#: toolbars/TranscriptionToolBar.cpp:225
msgid "Adjust Sensitivity"
msgstr "æåº¦èª¿æ´"
@@ -9345,6 +8894,46 @@ msgstr "æ¹åã®å¤åï¼é«ãé¾å¤ï¼"
msgid "Key type"
msgstr "ãã¼ã¿ã¤ã"
+#: toolbars/TranscriptionToolBar.cpp:172
+msgid "Play-at-speed"
+msgstr "ã¹ãã¼ããå¤ãã¦åç"
+
+#: toolbars/TranscriptionToolBar.cpp:197
+msgid "Left-to-On"
+msgstr "å·¦ã§ãªã³"
+
+#: toolbars/TranscriptionToolBar.cpp:200
+msgid "Right-to-Off"
+msgstr "å³ã§ãªã³"
+
+#: toolbars/TranscriptionToolBar.cpp:203
+msgid "Left-to-Off"
+msgstr "å·¦ã§ãªã"
+
+#: toolbars/TranscriptionToolBar.cpp:206
+msgid "Right-to-On"
+msgstr "å³ã§ãªã³"
+
+#: toolbars/TranscriptionToolBar.cpp:209
+msgid "Select-Sound"
+msgstr "ãµã¦ã³ãã鏿"
+
+#: toolbars/TranscriptionToolBar.cpp:212
+msgid "Select-Silence"
+msgstr "ç¡é³ã鏿"
+
+#: toolbars/TranscriptionToolBar.cpp:215
+msgid "Make Labels"
+msgstr "ã©ãã«ãä»ãã"
+
+#: toolbars/TranscriptionToolBar.cpp:218
+msgid "Add Label"
+msgstr "ã©ãã«ãä»ãã"
+
+#: toolbars/TranscriptionToolBar.cpp:221
+msgid "Calibrate"
+msgstr "æ ¡æ£"
+
#: widgets/AButton.cpp:303
msgid " (disabled)"
msgstr "(ç¡å¹)"
@@ -9362,8 +8951,7 @@ msgstr "ãã¿ã³"
# i18n-hint: One-letter abbreviation for Left, in VU Meter
#. i18n-hint: One-letter abbreviation for Left, in VU Meter
#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
-#: widgets/ASlider.cpp:612
-#: widgets/Meter.cpp:248
+#: widgets/ASlider.cpp:612 widgets/Meter.cpp:248
msgid "L"
msgstr "L"
@@ -9372,8 +8960,7 @@ msgstr "L"
# i18n-hint: One-letter abbreviation for Right, in VU Meter
#. i18n-hint: One-letter abbreviation for Right, in VU Meter
#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
-#: widgets/ASlider.cpp:615
-#: widgets/Meter.cpp:250
+#: widgets/ASlider.cpp:615 widgets/Meter.cpp:250
msgid "R"
msgstr "R"
@@ -9423,8 +9010,7 @@ msgstr "ã°ã©ãã¼"
msgid "%d rows, %d columns"
msgstr "%d è¡, %d å"
-#: widgets/Grid.cpp:649
-#: widgets/Grid.cpp:776
+#: widgets/Grid.cpp:649 widgets/Grid.cpp:776
#, c-format
msgid "Row %d"
msgstr "%d è¡"
@@ -9466,13 +9052,11 @@ msgid "Mix Volume"
msgstr "ããã·ã³ã°ããªã¥ã¼ã "
#: widgets/Meter.cpp:1145
-msgid ""
-"This determines how often the meter is refreshed.\n"
+msgid "This determines how often the meter is refreshed.\n"
"If you have a slower PC you may want to select a\n"
"lower refresh rate (30 per second or lower), so that\n"
"audio qualtiy is not affected by the meter display."
-msgstr ""
-"ããã¯ãã©ãã ãé »ç¹ã«ã¡ã¼ã¿ã¼ãåæç»ãããããæ±ºå®ãã¾ãã\n"
+msgstr "ããã¯ãã©ãã ãé »ç¹ã«ã¡ã¼ã¿ã¼ãåæç»ãããããæ±ºå®ãã¾ãã\n"
"ãããé
ãPCã使ã£ã¦ããå ´åã¯ãä½ããªãã¬ãã·ã¥ã¬ã¼ã(1ç§ããã\n"
"30åããã以ä¸ï¼ã使ã£ã¦ããªã¼ãã£ãªã®å質ã«ã¡ã¼ã¿è¡¨ç¤ºãå½±é¿ã\n"
"ä¸ããªãããã«ããã¨ããã§ãããã"
@@ -9505,8 +9089,7 @@ msgstr "æ®ãæé:"
msgid "Cancel"
msgstr "ãã£ã³ã»ã«"
-#: widgets/Ruler.cpp:1445
-#: widgets/Ruler.cpp:1446
+#: widgets/Ruler.cpp:1445 widgets/Ruler.cpp:1446
msgid "Vertical Ruler"
msgstr "åç´æ¹å"
@@ -9765,3 +9348,15 @@ msgstr "ã¨ã©ã¼: %hs (%lu è¡ç®)"
msgid "Could not load file: \"%s\""
msgstr "ãã¡ã¤ã«ãéãã¾ãã: \"%s\""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
+
diff --git a/locale/ka.po b/locale/ka.po
index 5522e9f..4545366 100644
--- a/locale/ka.po
+++ b/locale/ka.po
@@ -17,9 +17,7 @@ msgstr "Project-Id-Version: AUDACITY.PO\n"
"X-Poedit-Bookmarks: -1,1872,-1,-1,-1,-1,-1,-1,-1,-1\n"
"X-Generator: KBabel 1.11.4\n"
-#: AboutDialog.cpp:143
-#: AudacityApp.cpp:807
-#: Menus.cpp:955
+#: AboutDialog.cpp:143 AudacityApp.cpp:807 Menus.cpp:955
msgid "&About Audacity..."
msgstr "Audacity-áá¡ &á¨áá¡áá®áá..."
@@ -32,12 +30,12 @@ msgid "Audacity is a free program written by a team of volunteer <a href=\"http:
msgstr "Audacity ááá®áááá¡ááá á¯áá£á¤áá¡ áááá ááá¬áá ááá á£á¤áá¡á áá ááá áááá <a href=\"http://audacity.sourceforge.net/community/developers\">developers</a>, á ááááá᪠áá¡áá¤áááá¡ ááá¡á¨á¢áááááá áááá áªááááá£áá <a href=\"http://sourceforge.net\">SourceForge.net</a>. Audacity áá£á¨áááá¡ 98 áá áááááááááá, Mac OS X, Linux áá á¡á®áá Unix áááá ááªáá£á á¡áá¡á¢áááááá. á£á¤á á á«áááá Audacity á®ááááá¡áá¬áááááá Mac OS 9."
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
-msgstr "áá¡ Beta áá ááá áááá¡ ááá¢á ááá á¡ááá. á¨ááá«áááá á¨áááªááááá¡ á®áá áááááá¡á áá ááá£ááááá áááá á¤á£áá¥áªáááá¡. á©ááá áá¥áááá¡ ááááá®ááá£á áááá¡ ááááá á®áá ááááááá¡á áá á¤á£áá¥áªááááááááá¡ áááá®ááááá: <b>feedback at audacityteam.org</b>. ááá®ááá áááá¡ááááá¡ áááááá®á£ááá <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgstr ""
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
-msgstr "áá¡ áá ááá áááá¡ á¡á¢ááááá£á á, ááá¡á á£áááá£áá ááá á¡ááá, áá£ááªá, áᣠá áááá á®áá áááá¡ áááááá, ááá®ááá ááááá¬áá áá:<b>feedback at audacityteam.org</b>. Audacity-áá¡ ááááá§áááááá¡ ááá¡á¢á á£á¥áªááá¡áááá¡,áááááá®á£ááá <a href=\"http://audacityteam.org/forum/\">á¤áá á£áá</a>."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgstr ""
#. i18n-hint: The translation of "translator_credits" will appear
#. in the credits in the About Audacity window. Use this to add
@@ -45,8 +43,7 @@ msgstr "áá¡ áá ááá áááá¡ á¡á¢ááááá£á á, áá
#.
#. For example: "English translation by Dominic Mazzoni."
#.
-#: AboutDialog.cpp:192
-#: AboutDialog.cpp:194
+#: AboutDialog.cpp:192 AboutDialog.cpp:194
msgid "translator_credits"
msgstr "áááá ááááááá¡_á¨áá¡áá®áá"
@@ -89,7 +86,8 @@ msgid "Special thanks:"
msgstr "áááá¡ááá£áá ááá£áá ááááááá:"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+#, fuzzy
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
msgstr "<b>Audacity®</b> áá ááá ááá copyright © 1999-2008 Audacity á¯áá£á¤á. <br>The name <b>Audacity®</b> Dominic Mazzoni-áá¡ á áááá¡á¢á áá ááá£áá á¡ááááá á ááá¨ááá."
#: AboutDialog.cpp:258
@@ -97,14 +95,11 @@ msgid "Audacity"
msgstr "Audacity"
#. i18n-hint: Information about when audacity was compiled
-#: AboutDialog.cpp:304
-#: AboutDialog.cpp:317
-#: AboutDialog.cpp:473
+#: AboutDialog.cpp:304 AboutDialog.cpp:317 AboutDialog.cpp:473
msgid "Build Information"
msgstr "áááááá¡ ááá¤áá áááªáá"
-#: AboutDialog.cpp:310
-#: effects/AvcCompressor.cpp:674
+#: AboutDialog.cpp:310 effects/AvcCompressor.cpp:674
msgid "Enabled"
msgstr "áááá¥á¢áá£á ááá£ááá"
@@ -117,33 +112,27 @@ msgid "File Format Support"
msgstr "á¤áááá¡á á¤áá ááá¢áá¡ áá®áá ááááá á"
#. i18n-hint: This is what the library (libmad) does - imports MP3 files
-#: AboutDialog.cpp:331
-#: AboutDialog.cpp:333
+#: AboutDialog.cpp:331 AboutDialog.cpp:333
msgid "MP3 Importing"
msgstr "MP3 ááááá á¢áá ááá"
-#: AboutDialog.cpp:340
-#: AboutDialog.cpp:343
+#: AboutDialog.cpp:340 AboutDialog.cpp:343
msgid "Ogg Vorbis Import and Export"
msgstr "Ogg Vorbis ááááá á¢á áá áá¥á¡ááá á¢á"
-#: AboutDialog.cpp:347
-#: AboutDialog.cpp:350
+#: AboutDialog.cpp:347 AboutDialog.cpp:350
msgid "ID3 tag support"
msgstr "ID3 ááááááá¡ áá®áá ááááá á"
-#: AboutDialog.cpp:357
-#: AboutDialog.cpp:360
+#: AboutDialog.cpp:357 AboutDialog.cpp:360
msgid "FLAC import and export"
msgstr "FLAC ááááá á¢á áá áá¥á¡ááá á¢á"
-#: AboutDialog.cpp:365
-#: AboutDialog.cpp:368
+#: AboutDialog.cpp:365 AboutDialog.cpp:368
msgid "MP2 export"
msgstr "MP2 áá¥á¡ááá á¢á"
-#: AboutDialog.cpp:373
-#: AboutDialog.cpp:376
+#: AboutDialog.cpp:373 AboutDialog.cpp:376
msgid "Import via QuickTime"
msgstr "ááááá á¢á QuickTime-áá"
@@ -152,15 +141,12 @@ msgstr "ááááá á¢á QuickTime-áá"
msgid "Core Libraries"
msgstr "á«áá ááááá áááááááááááá"
-#: AboutDialog.cpp:389
-#: AboutDialog.cpp:392
-#: AboutDialog.cpp:395
+#: AboutDialog.cpp:389 AboutDialog.cpp:392 AboutDialog.cpp:395
#: AboutDialog.cpp:397
msgid "Sample rate conversion"
msgstr "á¡ááááá£á¨á áááá¤ááªáááá¢áá¡ áááááá á¡áá"
-#: AboutDialog.cpp:402
-#: AboutDialog.cpp:405
+#: AboutDialog.cpp:402 AboutDialog.cpp:405
msgid "Audio playback and recording"
msgstr "áá£áááá¡ ááááá á áá á©áá¬áá á"
@@ -168,24 +154,17 @@ msgstr "áá£áááá¡ ááááá á áá á©áá¬áá á"
msgid "Features"
msgstr "á¤á£áá¥áªáááá"
-#: AboutDialog.cpp:422
-#: AboutDialog.cpp:425
-#: AboutDialog.cpp:430
-#: AboutDialog.cpp:433
-#: AboutDialog.cpp:438
-#: AboutDialog.cpp:441
-#: AboutDialog.cpp:446
-#: AboutDialog.cpp:449
+#: AboutDialog.cpp:422 AboutDialog.cpp:425 AboutDialog.cpp:430
+#: AboutDialog.cpp:433 AboutDialog.cpp:438 AboutDialog.cpp:441
+#: AboutDialog.cpp:446 AboutDialog.cpp:449
msgid "Plug-in support"
msgstr "áááá£ááá¡ áá®áá ááááá á"
-#: AboutDialog.cpp:454
-#: AboutDialog.cpp:457
+#: AboutDialog.cpp:454 AboutDialog.cpp:457
msgid "Sound card mixer support"
msgstr "á®ááá¡ ááá áááá¡ ááá¥á¡áá áá¡ áá®áá ááááá á"
-#: AboutDialog.cpp:462
-#: AboutDialog.cpp:465
+#: AboutDialog.cpp:462 AboutDialog.cpp:465
msgid "Pitch and Tempo Change support"
msgstr "Pitch áá Tempo á¨ááªáááá¡ áá®áá ááááá á"
@@ -193,8 +172,7 @@ msgstr "Pitch áá Tempo á¨ááªáááá¡ áá®áá ááááá á"
msgid "Program build date: "
msgstr "áá ááá áááá¡ áááááá¡ ááá áá¦á:"
-#: AboutDialog.cpp:480
-#: AboutDialog.cpp:482
+#: AboutDialog.cpp:480 AboutDialog.cpp:482
msgid "Build type:"
msgstr "áááááá¡ á¢ááá:"
@@ -219,16 +197,12 @@ msgstr "ááá áááá¢á áááá¡ á¡áá¥áá¦áááá:"
msgid "GPL License"
msgstr "GPL áááªááááá:"
-#: AudacityApp.cpp:507
-#: Project.cpp:1844
+#: AudacityApp.cpp:507 Project.cpp:1844
#, c-format
msgid "%s is already open in another window."
msgstr "%s á£ááá ááá®á¡ááááá á¡á®áá á¤ááá¯áá áá¨á."
-#: AudacityApp.cpp:509
-#: Project.cpp:1846
-#: Project.cpp:1951
-#: Project.cpp:2095
+#: AudacityApp.cpp:509 Project.cpp:1846 Project.cpp:1951 Project.cpp:2095
#: Project.cpp:2232
msgid "Error opening project"
msgstr "áá ááá¥á¢áá¡ ááá®á¡ááá¡ á¨ááªáááá"
@@ -254,19 +228,28 @@ msgstr "á¨áááá¢áááá¡ ááááááá"
msgid "Output Meter"
msgstr "ááááááá¢áááá¡ ááááááá"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
+#: Menus.cpp:196
+msgid "&New"
+msgstr "&áá®ááá"
+
+#: Menus.cpp:198
+msgid "&Open..."
+msgstr "&ááá®á¡áá..."
+
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
+
#: AudacityApp.cpp:809
-msgid "&Preferences...\tCtrl+,"
-msgstr "&ááá áááá¢á ááá...\tCtrl+,"
+msgid "&Preferences..."
+msgstr "&ááá áááá¢á ááá..."
-#: AudacityApp.cpp:901
-#: AudacityApp.cpp:978
+#: AudacityApp.cpp:901 AudacityApp.cpp:978
#, c-format
msgid "Using block size of %ld\n"
msgstr "%ld-áá¡ áááááá¡ ááááá¡ ááááá§ááááá\n"
-#: AudacityApp.cpp:923
-#: AudacityApp.cpp:993
+#: AudacityApp.cpp:923 AudacityApp.cpp:993
#, c-format
msgid "Unknown command line option: %s\n"
msgstr "áá á«áááááá¡ á¡á¢á áá¥áááá¡ á£áªáááá ááá áááá¢á á: %s\n"
@@ -383,18 +366,16 @@ msgstr "á¨ááªáááá: "
msgid "Error Initializing Audio"
msgstr "áá£áááá¡ ááá¬á§áááá¡ á¨ááªáááá"
+#: AudioIO.cpp:1225
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
+"Audacity has brought it back to start at zero.\n"
+"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
+msgstr ""
+
#: AudioIO.cpp:1375
msgid "Latency problem"
msgstr "ááá¢ááá¢á£á áááá¡ áá áááááá"
-#: AudioIO.cpp:1375
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
-"Audacity has brought it back to start at zero.\n"
-"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
-msgstr "Latency setting has caused the recorded audio to be hidden before zero.\n"
-"Audacity has brought it back to start at zero.\n"
-"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
-
#: AutoRecovery.cpp:54
msgid "Automatic Crash Recovery"
msgstr "ááá¢áááá¢á£á á áá¦ááááá ááá áªá®áá¡ ááá á"
@@ -409,8 +390,7 @@ msgstr "áááááá áá áá ááá¥á¢á áá á¨ááááá®
msgid "Recoverable projects"
msgstr "áá¦ááááááá áá ááá¥á¢ááá"
-#: AutoRecovery.cpp:78
-#: Tags.cpp:2041
+#: AutoRecovery.cpp:78 Tags.cpp:2041
msgid "Name"
msgstr "á¡áá®ááá"
@@ -440,42 +420,26 @@ msgstr "ááá á¬áá£áááá£áá á®áá á, á áá áá á
msgid "Confirm?"
msgstr "ááááááá¡á¢á£á á?"
-#: AutoRecovery.cpp:146
-#: AutoRecovery.cpp:183
+#: AutoRecovery.cpp:146 AutoRecovery.cpp:183
msgid "Could not enumerate files in auto save directory"
msgstr "á¨áá£á«ááááááá á¤ááááááá¡ áááááá ááá¢á á¨áááá®ááá¡ ááá áá¥á¢áá ááá¨á"
-#: AutoRecovery.cpp:147
-#: AutoRecovery.cpp:184
-#: Menus.cpp:3053
-#: Menus.cpp:3065
-#: Menus.cpp:5182
-#: Project.cpp:2054
-#: Project.cpp:3615
-#: Project.cpp:3694
-#: TrackPanel.cpp:6385
-#: WaveTrack.cpp:598
-#: WaveTrack.cpp:617
-#: WaveTrack.cpp:1058
-#: WaveTrack.cpp:1077
-#: WaveTrack.cpp:2087
-#: effects/Effect.cpp:513
-#: export/ExportMP2.cpp:233
-#: prefs/DirectoriesPrefs.cpp:189
-#: prefs/KeyConfigPrefs.cpp:247
-#: toolbars/ControlToolBar.cpp:542
+#: AutoRecovery.cpp:147 AutoRecovery.cpp:184 Menus.cpp:3053 Menus.cpp:3065
+#: Menus.cpp:5182 Project.cpp:2054 Project.cpp:3615 Project.cpp:3694
+#: TrackPanel.cpp:6385 WaveTrack.cpp:598 WaveTrack.cpp:617 WaveTrack.cpp:1058
+#: WaveTrack.cpp:1077 WaveTrack.cpp:2087 effects/Effect.cpp:513
+#: export/ExportMP2.cpp:233 prefs/DirectoriesPrefs.cpp:189
+#: prefs/KeyConfigPrefs.cpp:247 toolbars/ControlToolBar.cpp:542
#: toolbars/ControlToolBar.cpp:871
msgid "Error"
msgstr "á¨ááªáááá"
-#: BatchCommandDialog.cpp:57
-#: BatchCommandDialog.cpp:62
+#: BatchCommandDialog.cpp:57 BatchCommandDialog.cpp:62
#: BatchCommandDialog.cpp:63
msgid "Select Command"
msgstr "áá á«áááááá¡ áá á©ááá"
-#: BatchCommandDialog.cpp:82
-#: BatchProcessDialog.cpp:454
+#: BatchCommandDialog.cpp:82 BatchProcessDialog.cpp:454
#: prefs/KeyConfigPrefs.cpp:142
msgid "&Command"
msgstr "&áá á«ááááá"
@@ -484,8 +448,7 @@ msgstr "&áá á«ááááá"
msgid "&Edit Parameters"
msgstr "&ááá áááá¢á áááá¡ á áááá¥á¢áá ááá"
-#: BatchCommandDialog.cpp:91
-#: BatchProcessDialog.cpp:455
+#: BatchCommandDialog.cpp:91 BatchProcessDialog.cpp:455
msgid "&Parameters"
msgstr "&ááá áááá¢á ááá"
@@ -531,8 +494,7 @@ msgstr "%s-áá¡ áááá¥á¢áá£á ááá á¨áááááá áá
"\n"
"%s"
-#: BatchCommands.cpp:653
-#: BatchCommands.cpp:658
+#: BatchCommands.cpp:653 BatchCommands.cpp:658
msgid "Test Mode"
msgstr "á¢áá¡á¢áá áááá¡ á ááááá"
@@ -541,8 +503,7 @@ msgstr "á¢áá¡á¢áá áááá¡ á ááááá"
msgid "Apply %s"
msgstr "%s-áá¡ áááá¥á¢áá£á ááá"
-#: BatchProcessDialog.cpp:60
-#: BatchProcessDialog.cpp:70
+#: BatchProcessDialog.cpp:60 BatchProcessDialog.cpp:70
#: BatchProcessDialog.cpp:71
msgid "Apply Chain"
msgstr "á¯ááááá¡ áááá¥á¢áá£á ááá"
@@ -567,23 +528,15 @@ msgstr "áááááááá á &áá ááá¥á¢áá¡ áááá¥á¢á
msgid "Apply to &Files..."
msgstr "&á¤ááááááá áááá¥á¢áá£á ááá"
-#: BatchProcessDialog.cpp:108
-#: BatchProcessDialog.cpp:247
-#: Tags.cpp:2080
-#: Tags.cpp:2084
-#: Tags.cpp:2384
-#: Tags.cpp:2388
-#: UploadDialog.cpp:180
-#: effects/AvcCompressor.cpp:732
-#: effects/ChangeLength.cpp:183
-#: effects/SpikeCleaner.cpp:188
-#: effects/VST/VSTEffect.cpp:453
+#: BatchProcessDialog.cpp:108 BatchProcessDialog.cpp:247 Tags.cpp:2080
+#: Tags.cpp:2084 Tags.cpp:2384 Tags.cpp:2388 UploadDialog.cpp:180
+#: effects/AvcCompressor.cpp:732 effects/ChangeLength.cpp:183
+#: effects/SpikeCleaner.cpp:188 effects/VST/VSTEffect.cpp:453
#: effects/audiounits/AudioUnitEffect.cpp:887
msgid "&Cancel"
msgstr "&ááá£á¥áááá"
-#: BatchProcessDialog.cpp:146
-#: BatchProcessDialog.cpp:191
+#: BatchProcessDialog.cpp:146 BatchProcessDialog.cpp:191
msgid "No chain selected"
msgstr "á¯áááá áá áá ááááá¨áá£áá"
@@ -620,8 +573,7 @@ msgstr "áááá¥á¢áá£á ááá..."
msgid "File"
msgstr "á¤áááá"
-#: BatchProcessDialog.cpp:356
-#: BatchProcessDialog.cpp:360
+#: BatchProcessDialog.cpp:356 BatchProcessDialog.cpp:360
#: BatchProcessDialog.cpp:361
msgid "Edit Chains"
msgstr "á¯ááááááá¡ á áááá¥á¢áá ááá"
@@ -630,19 +582,12 @@ msgstr "á¯ááááááá¡ á áááá¥á¢áá ááá"
msgid "&Chains"
msgstr "&á¯áááááá"
-#: BatchProcessDialog.cpp:435
-#: Tags.cpp:826
-#: Tags.cpp:1465
-#: Tags.cpp:2064
+#: BatchProcessDialog.cpp:435 Tags.cpp:826 Tags.cpp:1465 Tags.cpp:2064
msgid "&Add"
msgstr "&ááááá¢ááá"
-#: BatchProcessDialog.cpp:436
-#: LabelDialog.cpp:128
-#: Tags.cpp:827
-#: Tags.cpp:1466
-#: Tags.cpp:2065
-#: TrackPanel.cpp:4176
+#: BatchProcessDialog.cpp:436 LabelDialog.cpp:128 Tags.cpp:827 Tags.cpp:1466
+#: Tags.cpp:2065 TrackPanel.cpp:4176
msgid "&Remove"
msgstr "&á¬áá¨áá"
@@ -656,8 +601,8 @@ msgstr "á¯áááá (áá á¯áá ááá£á¬áááá£ááá á
#. i18n-hint: This is the number of the command in the list
#: BatchProcessDialog.cpp:453
-msgid "No"
-msgstr "áá á"
+msgid "Num"
+msgstr ""
#: BatchProcessDialog.cpp:459
msgid "&Insert"
@@ -746,8 +691,7 @@ msgstr "ááá¡ááá¡ áááá"
msgid "Copy Selected Audio Into Project"
msgstr "ááááá¨áá£áá áá£áááááá ááááá ááá áá ááá¥á¢á¨á"
-#: Dependencies.cpp:308
-#: Dependencies.cpp:414
+#: Dependencies.cpp:308 Dependencies.cpp:414
msgid "Cancel Save"
msgstr "á¨áááá®ááá¡ ááá£á¥áááá"
@@ -759,8 +703,7 @@ msgstr "áá áááááááá áá áá áªáá áá áá£áá
msgid "Copy All Audio into Project (Safer)"
msgstr "á§áááá áá£ááá á¤ááááá¡ áá ááá¥á¢á¨á ááááá ááá (Safer)"
-#: Dependencies.cpp:321
-#: Dependencies.cpp:326
+#: Dependencies.cpp:321 Dependencies.cpp:326
msgid "Ask me"
msgstr "ááááá®á"
@@ -794,9 +737,7 @@ msgid "Warning: there is very little free disk space left on this volume.\n"
msgstr "ááá¤á áá®ááááá: á«ááááá ááªáá á á¡ááá áªáá ááá á©ááááá áá ááá¬áááá.\n"
"ááá®ááá ááááá¨ááá á¡á®áá áá áááááá ááá áá¥á¢áá áá áá¥áááá¡ ááá áááá¢á ááá¨á."
-#: DirManager.cpp:223
-#: DirManager.cpp:254
-#: DirManager.cpp:337
+#: DirManager.cpp:223 DirManager.cpp:254 DirManager.cpp:337
msgid "Progress"
msgstr "áááááááá áááá"
@@ -851,8 +792,7 @@ msgstr "á¨áá£á«ááááááá '%s'-áá¡ á¡áá®áááá¡ á
msgid "Changed block %s to new alias name\n"
msgstr ""
-#: DirManager.cpp:1224
-#: DirManager.cpp:1515
+#: DirManager.cpp:1224 DirManager.cpp:1515
msgid "Inspecting project file data..."
msgstr "á¤ááááááá¡ áááááªáááááá¡ áááááááááá.."
@@ -903,14 +843,9 @@ msgstr "á¬áá¨ááá¡ ááá áá¨á áááá á«ááááá;
msgid "Close project immediately with no changes"
msgstr "áá ááá¥á¢áá¡ áá§áá¡ááá á ááá®á£á áá áªáááááááááá¡ ááá áá¨á"
-#: DirManager.cpp:1340
-#: DirManager.cpp:1375
-#: DirManager.cpp:1421
-#: DirManager.cpp:1463
-#: export/Export.cpp:576
-#: export/Export.cpp:597
-#: export/Export.cpp:616
-#: widgets/Warning.cpp:55
+#: DirManager.cpp:1340 DirManager.cpp:1375 DirManager.cpp:1421
+#: DirManager.cpp:1463 export/Export.cpp:576 export/Export.cpp:597
+#: export/Export.cpp:616 widgets/Warning.cpp:55
msgid "Warning"
msgstr "ááá¤á áá®ááááá"
@@ -933,14 +868,11 @@ msgstr "áá ááá¥á¢áá¡ á¨áááá¬ááááá¡áá¡ áá¦á
msgid "Replace missing data with silence [permanent upon save]"
msgstr "ááááá£áá áááááªáááááá¡ á¡áá©á£ááá á©ááááªááááá [á¨áááá®ááá¡áá¡ áá£áááááá]"
-#: DirManager.cpp:1372
-#: DirManager.cpp:1460
+#: DirManager.cpp:1372 DirManager.cpp:1460
msgid "Temporarily replace missing data with silence [this session only]"
msgstr "ááááá£áá áááááªáááááá¡ á¡áá©á£ááá áá áááááá á©ááááªááááá [áá®áááá áá¡ á¡áá¡áá]"
-#: DirManager.cpp:1373
-#: DirManager.cpp:1419
-#: DirManager.cpp:1461
+#: DirManager.cpp:1373 DirManager.cpp:1419 DirManager.cpp:1461
msgid "Close project immediately with no further changes"
msgstr "áá ááá¥á¢áá¡ áá§áá¡ááá á ááá®á£á áá á¨ááááááá áªáááááááááá¡ ááá áá¨á"
@@ -1010,11 +942,11 @@ msgstr "ááá ááá£áá®ááá"
msgid "FFmpeg support not compiled in"
msgstr ""
-#: FFmpeg.cpp:101
+#: FFmpeg.cpp:103
msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
#: FFmpeg.cpp:104
@@ -1034,20 +966,17 @@ msgstr "FFmpeg áááááá ááááá¡ ááááááá"
msgid "Audacity needs the file %s to import and export audio via FFmpeg."
msgstr "Audacity-áá¡ á¡ááá áááá á¤áááá %s áá£áááá¡ ááááá á¢áá¡á áá áá¥á¡ááá á¢áá¡áááá¡ FFmpeg-áá¡ á¡áá¨á£áááááá."
-#: FFmpeg.cpp:196
-#: export/ExportMP3.cpp:562
+#: FFmpeg.cpp:196 export/ExportMP3.cpp:562
#, c-format
msgid "Location of %s:"
msgstr "%s'-áá¡ áááááá áááá:"
-#: FFmpeg.cpp:205
-#: export/ExportMP3.cpp:571
+#: FFmpeg.cpp:205 export/ExportMP3.cpp:571
#, c-format
msgid "To find %s, click here -->"
msgstr "%s'-áá¡ ááá¡áá«ááááá áᥠááá£á¬áááá£ááá -->"
-#: FFmpeg.cpp:211
-#: export/ExportMP3.cpp:577
+#: FFmpeg.cpp:211 export/ExportMP3.cpp:577
msgid "Browse..."
msgstr "áááá á©ááá..."
@@ -1062,8 +991,7 @@ msgstr ""
#. i18n-hint: It's asking for the location of a file, for
#. example, "Where is lame_enc.dll?" - you could translate
#. "Where would I find the file %s" instead if you want.
-#: FFmpeg.cpp:235
-#: export/ExportMP3.cpp:601
+#: FFmpeg.cpp:235 export/ExportMP3.cpp:601
#, c-format
msgid "Where is %s?"
msgstr "á¡áá áá áá¡ %s'?"
@@ -1076,11 +1004,12 @@ msgstr ""
msgid "FFmpeg not found"
msgstr "FFmpeg ááá áááá«áááá"
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
#: FFmpeg.h:109
@@ -1103,9 +1032,7 @@ msgstr ""
msgid "Frequency Analysis"
msgstr "á¡áá®á¨áá áá¡ ááááááá"
-#: FreqWindow.cpp:139
-#: TrackPanel.cpp:556
-#: prefs/GUIPrefs.cpp:156
+#: FreqWindow.cpp:139 TrackPanel.cpp:556 prefs/GUIPrefs.cpp:156
msgid "Spectrum"
msgstr "á¡ááá¥á¢á á"
@@ -1128,14 +1055,11 @@ msgstr "ááá£áá¯áááá¡ááá£áá ááá¢áááá áá¥
msgid "Cepstrum"
msgstr "Cepstrum"
-#: FreqWindow.cpp:150
-#: FreqWindow.cpp:154
+#: FreqWindow.cpp:150 FreqWindow.cpp:154
msgid "Algorithm"
msgstr "ááááá áááá"
-#: FreqWindow.cpp:169
-#: FreqWindow.cpp:173
-#: HistoryWindow.cpp:79
+#: FreqWindow.cpp:169 FreqWindow.cpp:173 HistoryWindow.cpp:79
msgid "Size"
msgstr "áááá"
@@ -1145,8 +1069,7 @@ msgstr "áááá"
msgid " window"
msgstr "á¤ááá¯áá á"
-#: FreqWindow.cpp:187
-#: FreqWindow.cpp:191
+#: FreqWindow.cpp:187 FreqWindow.cpp:191
msgid "Function"
msgstr "á¤á£áá¥áªáá"
@@ -1158,64 +1081,66 @@ msgstr "áááááá á£áá á¡áá®á¨áá á"
msgid "Log frequency"
msgstr "á©áááá¬áá áá¡ á¡áá®á¨áá á"
-#: FreqWindow.cpp:201
-#: FreqWindow.cpp:205
+#: FreqWindow.cpp:201 FreqWindow.cpp:205
msgid "Axis"
msgstr "á¦áá á«á"
-#: FreqWindow.cpp:212
-#: LabelDialog.cpp:130
-#: Menus.cpp:241
-#: Menus.cpp:276
+#: FreqWindow.cpp:212 LabelDialog.cpp:130 Menus.cpp:241 Menus.cpp:276
msgid "&Export..."
msgstr "&áá¥á¡ááá á¢á..."
-#: FreqWindow.cpp:213
-#: export/ExportCL.cpp:325
-#: export/ExportMultiple.cpp:347
+#: FreqWindow.cpp:213 export/ExportCL.cpp:325 export/ExportMultiple.cpp:347
msgid "Export"
msgstr "áá¥á¡ááá á¢á"
-#: FreqWindow.cpp:216
-#: FreqWindow.cpp:217
-#: widgets/ErrorDialog.cpp:161
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
+#: FreqWindow.cpp:216 FreqWindow.cpp:217 widgets/ErrorDialog.cpp:161
msgid "Close"
msgstr "ááá®á£á áá"
-#: FreqWindow.cpp:280
-#: FreqWindow.cpp:410
-#: effects/AutoDuck.cpp:489
-#: effects/AutoDuck.cpp:523
-#: effects/AutoDuck.cpp:792
-#: effects/Compressor.cpp:352
-#: effects/Compressor.cpp:360
-#: effects/Equalization.cpp:1123
-#: effects/Equalization.cpp:1125
-#: effects/Equalization.cpp:1133
-#: effects/Equalization.cpp:1199
-#: effects/Equalization.cpp:1408
-#: effects/Equalization.cpp:1419
-#: effects/Normalize.cpp:367
-#: widgets/Meter.cpp:417
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr ""
+
+#: FreqWindow.cpp:280 FreqWindow.cpp:410 effects/AutoDuck.cpp:489
+#: effects/AutoDuck.cpp:523 effects/AutoDuck.cpp:792
+#: effects/Compressor.cpp:352 effects/Compressor.cpp:360
+#: effects/Equalization.cpp:1123 effects/Equalization.cpp:1125
+#: effects/Equalization.cpp:1133 effects/Equalization.cpp:1199
+#: effects/Equalization.cpp:1408 effects/Equalization.cpp:1419
+#: effects/Normalize.cpp:367 widgets/Meter.cpp:417
msgid "dB"
msgstr "dB"
#. i18n-hint: This is the abbreviation for "Hertz", or
#. cycles per second.
-#: FreqWindow.cpp:295
-#: FreqWindow.cpp:450
-#: effects/Equalization.cpp:1164
-#: effects/Equalization.cpp:1195
-#: import/ImportRaw.cpp:399
+#: FreqWindow.cpp:295 FreqWindow.cpp:450 effects/Equalization.cpp:1164
+#: effects/Equalization.cpp:1195 import/ImportRaw.cpp:399
msgid "Hz"
msgstr "Hz"
+#: Menus.cpp:3969
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "á¡ááá¥á¢á áá¡ áááááá¡áááá¡ á§áááá ááááá¨áá£áá á¢á ááá¡ á£ááá á°á¥ááááá¡ á¡áááááá¡ ááááááá á áááá¤ááªáááá¢á."
+
+#: Menus.cpp:3995
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "áááááá¢á áá£ááá áá§á ááááá¨áá£áá. áá®áááá ááá áááá %.1f á¬áááá¡ ááááááá ááá®áááá."
+
#: FreqWindow.cpp:394
msgid "Not enough data selected."
msgstr "áá áá áá¡ á¡ááááá áá¡á áááááªááááá ááááá¨áá£áá."
-#: FreqWindow.cpp:458
-#: effects/AutoDuck.cpp:794
+#: FreqWindow.cpp:458 effects/AutoDuck.cpp:794
msgid "s"
msgstr "s"
@@ -1237,12 +1162,8 @@ msgstr "spectrum.txt"
msgid "Export Spectral Data As:"
msgstr "á¡ááá¥á¢á á£áá áááááªáááááá¡ áá¥á¡ááá á¢á á áááá áª:"
-#: FreqWindow.cpp:1087
-#: LabelDialog.cpp:603
-#: Menus.cpp:2555
-#: Project.cpp:2604
-#: Project.cpp:3667
-#: prefs/KeyConfigPrefs.cpp:182
+#: FreqWindow.cpp:1087 LabelDialog.cpp:603 Menus.cpp:2555 Project.cpp:2604
+#: Project.cpp:3667 prefs/KeyConfigPrefs.cpp:182
msgid "Couldn't write to file: "
msgstr "á¨áá£á«ááááááá á¤ááááá á©áá¬áá á:"
@@ -1254,6 +1175,21 @@ msgstr "á¡áá®á¨áá áá¡ (Hz)\táááá(dB)"
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "Lag (seconds)\tFrequency (Hz)\tLevel"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr ""
+
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr ""
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr "To [[welcome|Welcome screen]]"
@@ -1331,7 +1267,8 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr "<p><b>To record:</b> Set the recording device and input source, adjust the input level, then press the red Record button.</b></p><p> 1) [[inputdevice|Set Recording Device]] either in the <i>Audio I/O tab of Preferences</i> or in <i>Device Toolbar</i>. Audio I/O Preferences lets you choose stereo recording if required.<br> 2) [[inputsource|Set input source]] for that device (for example, microphone or line-in) in the dropdown selector of the <i>Mixer Toolbar</i>, or (on some systems) at Recording Device in the <i>Audio I/O tab of Preferences</i> or in <i>Device Toolbar</i>.<br> 3) [[inputlevel|Adjust input level]] using the right-hand slider on the <i>Mixer Toolbar</i>. Correct adjustment of level before recording is essential to avoid noise or distortion. </p><p> More help at: \"Recording\" <a href=\"http://audacity.sourceforge.net/help/faq\">FAQs</a>, our Tutorial <a href=\"http://www.audacityteam.org/manual/index.php?title=Tutorial_-_Your_First_Recording\"> Your First Recording</a> in the <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">Manual</a>, and our Wiki [[wiki:Recording_Tips|Recording Tips]] and [[wiki:Troubleshooting_Recordings|Troubleshooting Recordings]] pages. </p><br><br>"
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+#, fuzzy
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
msgstr "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
#: HelpText.cpp:244
@@ -1355,7 +1292,8 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr "To hear your work in other media programs, export it to an audio file such as WAV or MP3 (some formats are [[wma-proprietary|unsupported]]). [[save|Saving an Audacity project]] creates a project file (and linked _data folder) containing all your edited tracks, so you can return to your work later. However, other programs can't read Audacity projects. </p><p> To export, click <i>File > Export</i> then choose the file format you want to export to in the \"Save as type\" dropdown. To [[burncd|burn a CD]] for standalone CD players, choose WAV or AIFF. To export as MP3, the [[wiki:Lame_Installation|Lame Encoder]] must be installed. </p><p> <i>File > Export Selection</i> exports only a selected area of audio. <i>Use File > Export Multiple</i> to export multiple files at the same time, either one for each audio track, or one for each labeled area in a single track. <i>Tracks > Add Label At Selection</i> lets you [[wiki:Splitting_recordings_into_separate_tracks|split the tracks]] from an album for multiple export as separate files. </p><br><br>"
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+#, fuzzy
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
msgstr "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
#: HelpText.cpp:383
@@ -1390,13 +1328,8 @@ msgstr "ááá¡áá£á¥áááááá ááááááá"
msgid "&Discard"
msgstr "&ááá£á¥áááá"
-#: HistoryWindow.cpp:112
-#: Tags.cpp:2081
-#: Tags.cpp:2083
-#: Tags.cpp:2385
-#: Tags.cpp:2387
-#: effects/ChangeLength.cpp:186
-#: effects/SpikeCleaner.cpp:191
+#: HistoryWindow.cpp:112 Tags.cpp:2081 Tags.cpp:2083 Tags.cpp:2385
+#: Tags.cpp:2387 effects/ChangeLength.cpp:186 effects/SpikeCleaner.cpp:191
#: export/ExportCL.cpp:399
msgid "&OK"
msgstr "&áááá®"
@@ -1405,8 +1338,7 @@ msgstr "&áááá®"
msgid "Unable to determine"
msgstr "á¨áá£á«ááááááá ááááááá"
-#: Internat.cpp:195
-#: import/ImportRaw.cpp:385
+#: Internat.cpp:195 import/ImportRaw.cpp:385
msgid "bytes"
msgstr " áááá¢ááá"
@@ -1422,28 +1354,31 @@ msgstr "MB"
msgid "GB"
msgstr "GB"
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
#: LabelDialog.cpp:54
msgid "Track"
msgstr "á¢á ááá"
-#: LabelDialog.cpp:55
-#: Menus.cpp:4677
-#: Menus.cpp:4712
+#: LabelDialog.cpp:55 Menus.cpp:4677 Menus.cpp:4712
msgid "Label"
msgstr "ááá ááá§á"
-#: LabelDialog.cpp:56
-#: TimerRecordDialog.cpp:279
+#: LabelDialog.cpp:56 TimerRecordDialog.cpp:279
msgid "Start Time"
msgstr "á¡áá¬á§áá¡á áá á"
-#: LabelDialog.cpp:57
-#: TimerRecordDialog.cpp:298
+#: LabelDialog.cpp:57 TimerRecordDialog.cpp:298
msgid "End Time"
msgstr "ááá¡á á£ááááá¡ áá á"
-#: LabelDialog.cpp:100
-#: Menus.cpp:713
+#: LabelDialog.cpp:100 Menus.cpp:713
msgid "&Edit Labels"
msgstr "&ááá ááá§áááá¡ á áááá¥á¢áá ááá"
@@ -1481,20 +1416,15 @@ msgstr "ááá ááá§áá¡ á¡áá®ááááá áªáá áááá
msgid "Confirm"
msgstr "ááááá¡á¢á£á ááá"
-#: LabelDialog.cpp:516
-#: Menus.cpp:4101
+#: LabelDialog.cpp:516 Menus.cpp:4101
msgid "Select a text file containing labels..."
msgstr "ááááá¨ááá ááá ááá§áááá¡ á¨áááªáááá á¢áá¥á¡á¢á£á á á¤áááá..."
-#: LabelDialog.cpp:520
-#: Menus.cpp:4105
+#: LabelDialog.cpp:520 Menus.cpp:4105
msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
msgstr "á¢áá¥á¡á¢á£á á (*.txt)|*.txt|á§áááá á¤áááá(*.*)|*.*"
-#: LabelDialog.cpp:534
-#: Menus.cpp:4117
-#: Project.cpp:1914
-#: Project.cpp:1922
+#: LabelDialog.cpp:534 Menus.cpp:4117 Project.cpp:1914 Project.cpp:1922
msgid "Could not open file: "
msgstr "á¨áá£á«ááááááá á¤ááááá¡ ááá®á¡áá:"
@@ -1502,13 +1432,11 @@ msgstr "á¨áá£á«ááááááá á¤ááááá¡ ááá®á¡áá:
msgid "No labels to export."
msgstr "á¡ááá¥á¡ááá á¢á ááá ááá§ááá áá áááá«áááá."
-#: LabelDialog.cpp:566
-#: Menus.cpp:2518
+#: LabelDialog.cpp:566 Menus.cpp:2518
msgid "Export Labels As:"
msgstr "ááá ááá§áá¡ áá¥á¡ááá á¢á, á áááá áª:"
-#: LabelDialog.cpp:568
-#: Menus.cpp:2516
+#: LabelDialog.cpp:568 Menus.cpp:2516
msgid "labels.txt"
msgstr "labels.txt"
@@ -1520,10 +1448,7 @@ msgstr "áá®ááá ááá ááá§áá¡ á¢á ááá"
msgid "Enter track name"
msgstr "á¢á áááá¡ á¡áá®áááá¡ á¨áá§áááá"
-#: LabelDialog.cpp:705
-#: LabelDialog.h:52
-#: LabelTrack.cpp:89
-#: Menus.cpp:632
+#: LabelDialog.cpp:705 LabelDialog.h:52 LabelTrack.cpp:89 Menus.cpp:632
msgid "&Label Track"
msgstr "&ááá ááá§áá¡ á¢á ááá"
@@ -1550,24 +1475,15 @@ msgstr "Audacity áá ááá¥á¢áá¡ ááá®á¡áá"
msgid "&File"
msgstr "&á¤áááá"
-#: Menus.cpp:196
-msgid "&New\tCtrl+N"
-msgstr "&áá®ááá\tCtrl+N"
-
-#: Menus.cpp:198
-msgid "&Open...\tCtrl+O"
-msgstr "&ááá®á¡áá...\tCtrl+O"
-
#: Menus.cpp:203
-msgid "&Close\tCtrl+W"
-msgstr "&ááá®á£á áá\tCtrl+W"
+msgid "&Close"
+msgstr "&ááá®á£á áá"
#: Menus.cpp:206
-msgid "&Save Project\tCtrl+S"
-msgstr "&áá ááá¥á¢áá¡ á¨áááá®áá\tCtrl+S"
+msgid "&Save Project"
+msgstr "&áá ááá¥á¢áá¡ á¨áááá®áá"
-#: Menus.cpp:210
-#: Project.cpp:2896
+#: Menus.cpp:210 Project.cpp:2896
msgid "Save Project &As..."
msgstr "áá ááá¥á¢áá¡ á¨áááá®áá, &á áááá áª..."
@@ -1583,14 +1499,13 @@ msgstr "áááááááááá£ááááááá¡ &á¨áááá¬á
msgid "Open Me&tadata Editor..."
msgstr "ááá¢á%áááááªáááááá¡ á áááá¥á¢áá áá¡ ááá®á¡áá..."
-#: Menus.cpp:229
-#: import/ImportRaw.cpp:411
+#: Menus.cpp:229 import/ImportRaw.cpp:411
msgid "&Import"
msgstr "&ááááá á¢á"
#: Menus.cpp:231
-msgid "&Audio...\tCtrl+Shift+I"
-msgstr "&áá£ááá...\tCtrl+Shift+I"
+msgid "&Audio..."
+msgstr "&áá£ááá..."
#: Menus.cpp:232
msgid "&Labels..."
@@ -1604,8 +1519,7 @@ msgstr "&MIDI..."
msgid "&Raw Data..."
msgstr "&ááá£áá£á¨ááááááá áááááªááááá..."
-#: Menus.cpp:247
-#: Menus.cpp:282
+#: Menus.cpp:247 Menus.cpp:282
msgid "Expo&rt Selection..."
msgstr "áá¥á¡ááá á¢áá¡ áááá á©ááá..."
@@ -1621,12 +1535,11 @@ msgstr "áá ááááá¯áá ááá áá¥á¡ááá á¢á..."
msgid "Export MIDI..."
msgstr "MIDI áá¥á¡ááá á¢á..."
-#: Menus.cpp:290
-msgid "CleanSpeech C&hain..."
-msgstr "CleanSpeech á¯á&ááá..."
+#: Menus.cpp:303
+msgid "Appl&y Chain..."
+msgstr "á¯ááááá¡ áááá¥á¢áá£á ááá..."
-#: Menus.cpp:291
-#: Menus.cpp:305
+#: Menus.cpp:291 Menus.cpp:305
msgid "Edit C&hains..."
msgstr "á¯áá&ááááá¡ á áááá¥á¢áá ááá..."
@@ -1638,10 +1551,6 @@ msgstr "CleanSpeech &ááá áááá¢á áááá¡ áá¥á¡ááá á¢
msgid "I&mport CleanSpeech Presets..."
msgstr "CleanSpeech ááá áááá¢á áááá¡ &ááááá á¢á..."
-#: Menus.cpp:303
-msgid "Appl&y Chain..."
-msgstr "á¯ááááá¡ áááá¥á¢áá£á ááá..."
-
#: Menus.cpp:310
msgid "&Upload File..."
msgstr "á¤ááááá¡ &áá¢ááá ááá.."
@@ -1655,78 +1564,74 @@ msgid "&Print..."
msgstr "&ááááááááá..."
#: Menus.cpp:330
-msgid "E&xit\tCtrl+Q"
-msgstr "&ááááá¡ááá\tCtrl+Q"
+msgid "E&xit"
+msgstr "&ááááá¡ááá"
-#: Menus.cpp:338
-#: toolbars/EditToolBar.cpp:76
+#: Menus.cpp:338 toolbars/EditToolBar.cpp:76
msgid "&Edit"
msgstr "&á áááá¥á¢áá ááá"
#: Menus.cpp:342
-msgid "&Undo\tCtrl+Z"
-msgstr "&á£áá£á¡ááá\tCtrl+Z"
+msgid "&Undo"
+msgstr "&á£áá£á¡ááá"
-#: Menus.cpp:350
-#: prefs/KeyConfigPrefs.cpp:371
-#: toolbars/EditToolBar.cpp:146
+#: Menus.cpp:350 prefs/KeyConfigPrefs.cpp:371 toolbars/EditToolBar.cpp:146
msgid "&Redo"
msgstr "&áááááá ááá"
#: Menus.cpp:363
-msgid "Cu&t\tCtrl+X"
-msgstr "áá&ááá á\tCtrl+X"
+msgid "Cu&t"
+msgstr "áá&ááá á"
#: Menus.cpp:367
-msgid "Spl&it Cut\tCtrl+Alt+X"
-msgstr "ááá§&áá¤áá¡ ááááá á\tCtrl+Alt+X"
+msgid "Spl&it Cut"
+msgstr "ááá§&áá¤áá¡ ááááá á"
#: Menus.cpp:368
-msgid "&Copy\tCtrl+C"
-msgstr "&áááá ááá\tCtrl+C"
+msgid "&Copy"
+msgstr "&áááá ááá"
#: Menus.cpp:372
-msgid "&Paste\tCtrl+V"
-msgstr "&á©áá¡áá\tCtrl+V"
+msgid "&Paste"
+msgstr "&á©áá¡áá"
#: Menus.cpp:376
-msgid "Tri&m\tCtrl+T"
-msgstr "áááá &á á\tCtrl+T"
+msgid "Tri&m"
+msgstr "áááá &á á"
#: Menus.cpp:378
-msgid "&Delete\tCtrl+K"
-msgstr "&á¬áá¨áá\tCtrl+K"
+msgid "&Delete"
+msgstr "&á¬áá¨áá"
#: Menus.cpp:379
-msgid "Split D&elete\tCtrl+Alt+K"
-msgstr "ááá§áá¤áá¡ á¬áá¨áá\tCtrl+Alt+K"
+msgid "Split D&elete"
+msgstr "ááá§áá¤áá¡ á¬áá¨áá"
#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
-msgstr "áá£á&ááá¡ ááá©á£áááá\tCtrl+L"
+msgid "Silence Audi&o"
+msgstr "áá£á&ááá¡ ááá©á£áááá"
#: Menus.cpp:382
-msgid "Sp&lit\tCtrl+I"
-msgstr "ááá§áá¤á\tCtrl+I"
+msgid "Sp&lit"
+msgstr "ááá§áá¤á"
#: Menus.cpp:387
-msgid "Split Ne&w\tCtrl+Alt+I"
-msgstr "á&á®ááá¡ ááá§áá¤á\tCtrl+Alt+I"
+msgid "Split Ne&w"
+msgstr "á&á®ááá¡ ááá§áá¤á"
#: Menus.cpp:392
-msgid "&Join\tCtrl+J"
-msgstr "&á¨ááá áááá\tCtrl+J"
+msgid "&Join"
+msgstr "&á¨ááá áááá"
#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
-msgstr "á¡áá©á£ááááááá áá&áá áááá\tCtrl+Alt+J"
+msgid "Detac&h at Silences"
+msgstr "á¡áá©á£ááááááá áá&áá áááá"
#: Menus.cpp:394
-msgid "Duplic&ate\tCtrl+D"
-msgstr "áá£á&ááá ááá\tCtrl+D"
+msgid "Duplic&ate"
+msgstr "áá£á&ááá ááá"
-#: Menus.cpp:400
-#: Menus.cpp:639
+#: Menus.cpp:400 Menus.cpp:639
msgid "Stereo Trac&k to Mono"
msgstr "á¡á¢áá áá á¢á á&áá áááááá"
@@ -1736,80 +1641,65 @@ msgstr "áá&á®áá áá¡á®ááá£áá áá áááá"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:409
-msgid "&Cut\tAlt+X"
-msgstr "&ááááá á\tAlt+X"
+msgid "&Cut"
+msgstr "&ááááá á"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:414
-msgid "&Split Cut\tShift+Alt+X"
-msgstr "&ááá§áá¤áá¡ ááááá á\tShift+Alt+X"
+msgid "&Split Cut"
+msgstr "&ááá§áá¤áá¡ ááááá á"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:419
-msgid "Co&py\tShift+Alt+C"
-msgstr "áá&ááá ááá\tShift+Alt+C"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:425
-msgid "&Delete\tAlt+K"
-msgstr "&á¬áá¨áá\tAlt+K"
+msgid "Co&py"
+msgstr "áá&ááá ááá"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:430
-msgid "Sp&lit Delete\tShift+Alt+K"
-msgstr "áá&á§áá¤áá¡ á¬áá¨áá\tShift+Alt+K"
+msgid "Sp&lit Delete"
+msgstr "áá&á§áá¤áá¡ á¬áá¨áá"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:435
-msgid "Sile&nce\tAlt+L"
-msgstr "á¡áá©á£&áá\tAlt+L"
+msgid "Sile&nce"
+msgstr "á¡áá©á£&áá"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:441
-msgid "Spli&t\tAlt+I"
-msgstr "ááá§áá¤á\tAlt+I"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:446
-msgid "&Join\tAlt+J"
-msgstr "&á¨ááá áááá\tAlt+J"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
-msgstr "á¡áá©á£áááááá á¨ááá á&ááá\tShift+Alt+J"
+msgid "Spli&t"
+msgstr "ááá§áá¤á"
#: Menus.cpp:456
msgid "&Select"
msgstr "&Sáááá á©ááá"
#: Menus.cpp:457
-msgid "&All\tCtrl+A"
-msgstr "&All\tCtrl+A"
+msgid "&All"
+msgstr "&All"
#: Menus.cpp:458
-msgid "&None\tCtrl+Shift+A"
-msgstr "&áá áªáá áá\tCtrl+Shift+A"
+msgid "&None"
+msgstr "&áá áªáá áá"
#: Menus.cpp:462
-msgid "&Left at Playback Position\t["
-msgstr "ááááá áá¡ áááááªááá¡áá¡ &ááá áªá®ááá Position\t["
+msgid "&Left at Playback Position"
+msgstr "ááááá áá¡ áááááªááá¡áá¡ &ááá áªá®ááá Position"
#: Menus.cpp:463
-msgid "&Right at Playback Position\t]"
-msgstr "ááááá áá¡ áááááªááá¡áá¡ &ááá á¯áááá\t]"
+msgid "&Right at Playback Position"
+msgstr "ááááá áá¡ áááááªááá¡áá¡ &ááá á¯áááá"
#: Menus.cpp:467
-msgid "Track &Start to Cursor\tShift+J"
-msgstr "á¢á áááá¡ &á¡áá¬á§áá¡á áá£á á¡áá ááá\tShift+J"
+msgid "Track &Start to Cursor"
+msgstr "á¢á áááá¡ &á¡áá¬á§áá¡á áá£á á¡áá ááá"
#: Menus.cpp:468
-msgid "Cursor to Track &End\tShift+K"
-msgstr "áá£á á¡áá á á¢á áááá¡ &ááá¡áá¡á á£áááá\tShift+K"
+msgid "Cursor to Track &End"
+msgstr "áá£á á¡áá á á¢á áááá¡ &ááá¡áá¡á á£áááá"
#: Menus.cpp:474
-msgid "Find &Zero Crossings\tZ"
-msgstr "áá£áááááá á¯ááá áááááááá¡ ááá«áááá\tZ"
+msgid "Find &Zero Crossings"
+msgstr "áá£áááááá á¯ááá áááááááá¡ ááá«áááá"
#: Menus.cpp:476
msgid "Mo&ve Cursor"
@@ -1824,12 +1714,12 @@ msgid "to Selection En&d"
msgstr "ááááá¨áááá¡ ááá¡áá¡á á£ááááá"
#: Menus.cpp:483
-msgid "to Track &Start\tJ"
-msgstr "á¢á áááá¡ ááá¡áá¬á§áá¡áááá\tJ"
+msgid "to Track &Start"
+msgstr "á¢á áááá¡ ááá¡áá¬á§áá¡áááá"
#: Menus.cpp:484
-msgid "to Track &End\tK"
-msgstr "á¢á áááá¡ ááá¡áá¡á á£ááááá\tK"
+msgid "to Track &End"
+msgstr "á¢á áááá¡ ááá¡áá¡á á£ááááá"
#: Menus.cpp:491
msgid "Re&gion Save"
@@ -1851,66 +1741,45 @@ msgstr "&á©áááá¢áá"
msgid "&Unlock"
msgstr "&ááá®á¡áá"
-#: Menus.cpp:511
-msgid "Turn Snap-To On"
-msgstr "ááááá¦áááá¡ á©áá ááá"
-
-#: Menus.cpp:512
-msgid "Turn Snap-To Off"
-msgstr "ááááá¦áááá¡ ááááá ááá"
-
-#: Menus.cpp:513
-msgid "Turn Grid Snap On"
-msgstr "á£á¯á áááá¡ ááááá¦áááá¡ á©áá ááá"
-
-#: Menus.cpp:514
-msgid "Turn Grid Snap Off"
-msgstr "á£á¯á áááá¡ ááááá¦áááá¡ ááááá ááá"
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr "ááá á&ááá¢á ááá...\tCtrl+,"
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
-msgstr "ááá á&ááá¢á ááá...\tCtrl+P"
+msgid "Pre&ferences..."
+msgstr "ááá á&ááá¢á ááá..."
#: Menus.cpp:533
msgid "&View"
msgstr "&ááá®áá"
#: Menus.cpp:535
-msgid "Zoom &In\tCtrl+1"
-msgstr "á¨áááªáá ááá\tCtrl+1"
+msgid "Zoom &In"
+msgstr "á¨áááªáá ááá"
#: Menus.cpp:538
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "&ááá áááá£á áááááál\tCtrl+2"
+msgid "Zoom &Normal"
+msgstr "&ááá áááá£á áááááál"
#: Menus.cpp:539
-msgid "Zoom &Out\tCtrl+3"
-msgstr "áááááááá\tCtrl+3"
+msgid "Zoom &Out"
+msgstr "áááááááá"
#: Menus.cpp:542
-msgid "&Fit in Window\tCtrl+F"
-msgstr "á¤ááá¯áá ááá ááá áááá\tCtrl+F"
+msgid "&Fit in Window"
+msgstr "á¤ááá¯áá ááá ááá áááá"
#: Menus.cpp:543
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "&ááá á¢ááááá£á á ááá áááátCtrl+Shift+F"
+msgid "Fit &Vertically"
+msgstr "&ááá á¢ááááá£á á ááá áááá"
#: Menus.cpp:544
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "ááááá¨áááááá &áááááááá\tCtrl+E"
+msgid "&Zoom to Selection"
+msgstr "ááááá¨áááááá &áááááááá"
#: Menus.cpp:547
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
-msgstr "á§áááá á¢á áááá¡ &ááá¨áá\tCtrl+Shift+C"
+msgid "&Collapse All Tracks"
+msgstr "á§áááá á¢á áááá¡ &ááá¨áá"
#: Menus.cpp:548
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
-msgstr "á§áááá á¢á áááá¡ á&áá¨áá\tCtrl+Shift+X"
+msgid "E&xpand All Tracks"
+msgstr "á§áááá á¢á áááá¡ á&áá¨áá"
#: Menus.cpp:551
msgid "&Show Clipping"
@@ -1970,43 +1839,41 @@ msgstr "!ááááá á¢ááááá£áá á®ááá"
msgid "T&ransport"
msgstr "&ááááá¢ááá"
-#: Menus.cpp:591
-msgid "Play\tSpace"
-msgstr ""
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play"
+msgstr "ááááá á"
#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
+msgid "&Loop Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Pause\tP"
-msgstr "&á¨áá§áááááá\tP"
+msgid "&Pause"
+msgstr "&á¨áá§áááááá"
#: Menus.cpp:596
-msgid "&Stop\tSpace"
+msgid "&Stop"
msgstr ""
-#: Menus.cpp:595
-#: Menus.cpp:1010
-msgid "Skip to Start\tHome"
-msgstr "á¡áá¬á§áá¡áá ááááá¡ááá\tHome"
+#: Menus.cpp:595 Menus.cpp:1010
+msgid "Skip to Start"
+msgstr "á¡áá¬á§áá¡áá ááááá¡ááá"
-#: Menus.cpp:597
-#: Menus.cpp:1011
-msgid "Skip to End\tEnd"
-msgstr "ááááá¨á ááááá¡ááá\tEnd"
+#: Menus.cpp:597 Menus.cpp:1011
+msgid "Skip to End"
+msgstr "ááááá¨á ááááá¡ááá"
#: Menus.cpp:600
-msgid "&Record\tR"
-msgstr "&á©áá¬áá á\tR"
+msgid "&Record"
+msgstr "&á©áá¬áá á"
#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
-msgstr "&á¢ááááá áá¡ á©áá¬áá á...\tShift+T"
+msgid "&Timer Record..."
+msgstr "&á¢ááááá áá¡ á©áá¬áá á..."
#: Menus.cpp:604
-msgid "Append Record\tShift+R"
-msgstr "á©áá¬áá áá¡ ááááá¢ááá\tShift+R"
+msgid "Append Record"
+msgstr "á©áá¬áá áá¡ ááááá¢ááá"
#: Menus.cpp:607
msgid "Overdub (on/off)"
@@ -2033,15 +1900,14 @@ msgid "Add &New"
msgstr "&áá®ááá¡ ááááá¢ááá"
#: Menus.cpp:630
-msgid "&Audio Track\tCtrl+Shift+N"
-msgstr "&áá£ááá á¢á ááá\tCtrl+Shift+N"
+msgid "&Audio Track"
+msgstr "&áá£ááá á¢á ááá"
#: Menus.cpp:631
msgid "&Stereo Track"
msgstr "&á¡á¢áá áá á¢á ááá"
-#: Menus.cpp:633
-#: TimeTrack.cpp:44
+#: Menus.cpp:633 TimeTrack.cpp:44
msgid "&Time Track"
msgstr "&áá ááá¡ á¢á ááá"
@@ -2050,8 +1916,8 @@ msgid "Mi&x and Render"
msgstr "&á¨áá ááá áá á ááááá áááá"
#: Menus.cpp:647
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
-msgstr "áá®áá á¢á áááá á¨áá ááá áá á ááááá áááá\tCtrl+Shift+M"
+msgid "Mix and Render to New Track"
+msgstr "áá®áá á¢á áááá á¨áá ááá áá á ááááá áááá"
#: Menus.cpp:651
msgid "&Resample..."
@@ -2062,12 +1928,12 @@ msgid "Remo&ve Tracks"
msgstr "á¢á áááááá¡ á¬áá¨á&á"
#: Menus.cpp:667
-msgid "&Mute All Tracks\tCtrl+U"
-msgstr "á§áááá á¢á áááá¡ &á©áá©á£áááá\tCtrl+U"
+msgid "&Mute All Tracks"
+msgstr "á§áááá á¢á áááá¡ &á©áá©á£áááá"
#: Menus.cpp:668
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
-msgstr "á§áááá á¢á áááá¡ &á®ááá¡ áá¬ááá\tCtrl+Shift+U"
+msgid "&UnMute All Tracks"
+msgstr "á§áááá á¢á áááá¡ &á®ááá¡ áá¬ááá"
#: Menus.cpp:672
msgid "Align with &Zero"
@@ -2113,17 +1979,18 @@ msgstr "áá&á¡á¬áá ááá áá áá£á á¡áá áá¡ ááá
msgid "Synchronize MIDI with Audio"
msgstr "MIDI-áá¡ á¡ááá¥á ááááááªáá áá£áááá¡ááá"
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
+#: Menus.cpp:686
+#, fuzzy
+msgid "&Link Audio and Label Tracks"
msgstr "áá£ááá áá ááá ááá§áááá¡ á¢á áááááá¡ áááááá¨áá ááá"
-#: Menus.cpp:709
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "ááááá¨áááá¡áá¡ &ááá ááá§áá¡ ááááá¢ááá\tCtrl+B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr ""
#: Menus.cpp:710
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "ááá ááá§áá¡ ááááá¢ááá &ááááá áá¡ áááááªááá¡áá¡\tCtrl+M"
+msgid "Add Label At &Playback Position"
+msgstr "ááá ááá§áá¡ ááááá¢ááá &ááááá áá¡ áááááªááá¡áá¡"
#: Menus.cpp:716
msgid "S&ort tracks"
@@ -2141,9 +2008,7 @@ msgstr "&á¡áá®áááá"
msgid "&Generate"
msgstr "&ááááá ááªáá"
-#: Menus.cpp:776
-#: Menus.cpp:860
-#: Menus.cpp:922
+#: Menus.cpp:776 Menus.cpp:860 Menus.cpp:922
msgid "Unsorted"
msgstr "ááá£á®áá áá¡á®ááááá"
@@ -2151,20 +2016,19 @@ msgstr "ááá£á®áá áá¡á®ááááá"
msgid "Effe&ct"
msgstr "áá¤&áá¥á¢á"
-#: Menus.cpp:799
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "áááá áá¤áá¥á¢áá¡ áááááá ááá\tCtrl+R"
-
#: Menus.cpp:877
msgid "&Analyze"
msgstr "&ááááááá"
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
+
#: Menus.cpp:879
msgid "Plot Spectrum..."
msgstr "áááááá¡ á¡ááá¥á¢á á..."
-#: Menus.cpp:947
-#: Menus.cpp:950
+#: Menus.cpp:947 Menus.cpp:950
msgid "&Help"
msgstr "&ááá®ááá ááá"
@@ -2177,8 +2041,8 @@ msgid "&Show Welcome Message..."
msgstr "&ááá¡ááááááá¡ á¨áá¢á§áááááááá¡ &á©áááááá..."
#: Menus.cpp:958
-msgid "&Index..."
-msgstr "&ááááá¥á¡á..."
+msgid "&Help..."
+msgstr ""
#: Menus.cpp:959
msgid "Show &Log..."
@@ -2196,181 +2060,149 @@ msgstr "Benchmark-áá¡ &ááá¨áááá..."
msgid "&Audio Device Info..."
msgstr "&áá£ááá ááá¬á§áááááááá¡ ááá¤áá áááªáá..."
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
msgstr ""
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
msgstr ""
#: Menus.cpp:985
-msgid "Selection Tool\tF1"
-msgstr "ááááá¨áááá¡ á®ááá¡áá¬á§á\tF1"
+msgid "Selection Tool"
+msgstr "ááááá¨áááá¡ á®ááá¡áá¬á§á"
#: Menus.cpp:986
-msgid "Envelope Tool\tF2"
-msgstr "áááááá á¢áá¡ á®ááá¡áá¬á§á\tF2"
+msgid "Envelope Tool"
+msgstr "áááááá á¢áá¡ á®ááá¡áá¬á§á"
#: Menus.cpp:987
-msgid "Draw Tool\tF3"
-msgstr "ááá®áá¢ááá¡ á®ááá¡áá¬á§á\tF3"
+msgid "Draw Tool"
+msgstr "ááá®áá¢ááá¡ á®ááá¡áá¬á§á"
#: Menus.cpp:988
-msgid "Zoom Tool\tF4"
-msgstr "ááááááááá¡ á®ááá¡áá¬á§á\tF4"
+msgid "Zoom Tool"
+msgstr "ááááááááá¡ á®ááá¡áá¬á§á"
#: Menus.cpp:989
-msgid "Time Shift Tool\tF5"
-msgstr "áá ááá¡ áªáááá¡ á®ááá¡áá¬á§á\tF5"
+msgid "Time Shift Tool"
+msgstr "áá ááá¡ áªáááá¡ á®ááá¡áá¬á§á"
#: Menus.cpp:990
-msgid "Multi Tool\tF6"
-msgstr "áá ááááá¯áá ááá á®ááá¡áá¬á§á\tF6"
+msgid "Multi Tool"
+msgstr "áá ááááá¯áá ááá á®ááá¡áá¬á§á"
#: Menus.cpp:992
-msgid "Next Tool\tD"
-msgstr "á¨áááááá á®ááá¡áá¬á§á\tD"
+msgid "Next Tool"
+msgstr "á¨áááááá á®ááá¡áá¬á§á"
#: Menus.cpp:993
-msgid "Previous Tool\tA"
-msgstr "á¬ááá á®ááá¡áá¬á§á\tA"
+msgid "Previous Tool"
+msgstr "á¬ááá á®ááá¡áá¬á§á"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
+msgid "Play/Stop"
msgstr ""
-#: Menus.cpp:996
-msgid "Stop\tS"
-msgstr "ááá©áá ááá\tS"
-
-#: Menus.cpp:997
-msgid "Pause\tP"
-msgstr "á¨áá©áá ááá\tP"
-
-#: Menus.cpp:998
-msgid "Record\tR"
-msgstr "á©áá¬áá á\tR"
-
-#: Menus.cpp:999
-msgid "Record Append\tShift+R"
-msgstr "á©áá¬áá áá¡ ááááá¢ááá\tShift+R"
-
#: Menus.cpp:1001
-msgid "Play/Stop and Set Cursor\tShift+A"
-msgstr "ááááá á/ááá©áá áááá¡á áá ááááá áááá¡ áá£á á¡áá á\tShift+A"
+msgid "Play/Stop and Set Cursor"
+msgstr "ááááá á/ááá©áá áááá¡á áá ááááá áááá¡ áá£á á¡áá á"
#: Menus.cpp:1004
-msgid "Play One Second\t1"
-msgstr "áá áá á¬ááá ááááá á\t1"
+msgid "Play One Second"
+msgstr "áá áá á¬ááá ááááá á"
#: Menus.cpp:1005
-msgid "Play To Selection\tB"
-msgstr "ááááá¨ááááá ááááá á\tB"
-
-#: Menus.cpp:1006
-msgid "Play Looped\tL"
-msgstr "áªááááá¡ ááááá á\tL"
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
+msgid "Play To Selection"
+msgstr "ááááá¨ááááá ááááá á"
#: Menus.cpp:1008
-msgid "Play Cut Preview\tC"
-msgstr "ááááá ááá áá¡ááááá¡ ááááá á\tC"
+msgid "Play Cut Preview"
+msgstr "ááááá ááá áá¡ááááá¡ ááááá á"
#: Menus.cpp:1013
-msgid "Selection to Start\tShift+Home"
-msgstr "ááá¡áá¬á§áá¡áá ááááá¨ááá\tShift+Home"
+msgid "Selection to Start"
+msgstr "ááá¡áá¬á§áá¡áá ááááá¨ááá"
#: Menus.cpp:1014
-msgid "Selection to End\tShift+End"
-msgstr "ááá¡áá á£ááá ááááá¨ááá\tShift+End"
+msgid "Selection to End"
+msgstr "ááá¡áá á£ááá ááááá¨ááá"
#: Menus.cpp:1016
-msgid "DeleteKey\tBackspace"
-msgstr "ááá¡áá¦áááá¡ á¬áá¨áá\tBackspace"
+msgid "DeleteKey"
+msgstr "ááá¡áá¦áááá¡ á¬áá¨áá"
#: Menus.cpp:1021
-msgid "DeleteKey2\tDelete"
-msgstr "ááá¡áá¦áááá¡ á¬áá¨áá2\tDelete"
+msgid "DeleteKey2"
+msgstr "ááá¡áá¦áááá¡ á¬áá¨áá2"
-#: Menus.cpp:1027
-msgid "Seek left short period during playback\tLeft"
-msgstr "ááááá áá¡áá¡ ááá áªá®ááá ááááá ááá ááááá¡ á«áááá\tLeft"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
+msgstr ""
-#: Menus.cpp:1028
-msgid "Seek right short period during playback\tRight"
-msgstr "ááááá áá¡áá¡ ááá á¯áááá ááááá ááá ááááá¡ á«áááá\tRight"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
+msgstr ""
-#: Menus.cpp:1029
-msgid "Seek left long period during playback\tShift+Left"
-msgstr "ááááá áá¡áá¡ ááá áªá®ááá áá á«ááá ááá ááááá¡ á«áááá\tShift+Left"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
+msgstr ""
-#: Menus.cpp:1030
-msgid "Seek right long period during playback\tShift+Right"
-msgstr "ááááá áá¡áá¡ááá á¯áááá áá á«ááá ááá ááááá¡ á«áááá\tShift+Right"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
+msgstr ""
#: Menus.cpp:1034
-msgid "Move Focus to Previous Track\tUp"
-msgstr "á¤ááá£á¡áá¡ á¬ááá á¢á áááá ááááá¢ááá\tUp"
+msgid "Move Focus to Previous Track"
+msgstr "á¤ááá£á¡áá¡ á¬ááá á¢á áááá ááááá¢ááá"
-#: Menus.cpp:1035
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
-msgstr "á¤ááá£á¡áá¡ á¬ááá á¢á áááá ááááá¢ááá áá ááááá¨áááá¡ á¨ááªááá\tShift+Up"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
+msgstr ""
#: Menus.cpp:1036
-msgid "Move Focus to Next Track\tDown"
-msgstr "á¤ááá£á¡áá¡ á¨ááááá á¢á áááá ááááá¢ááá\tDown"
+msgid "Move Focus to Next Track"
+msgstr "á¤ááá£á¡áá¡ á¨ááááá á¢á áááá ááááá¢ááá"
-#: Menus.cpp:1037
-msgid "Move Focus to Next and Change Selection\tShift+Down"
-msgstr "á¤ááá£á¡áá¡ á¨ááááá á¢á áááá ááááá¢ááá áá ááááá¨áááá¡ á¨ááªááá\tShift+Down"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
+msgstr ""
#: Menus.cpp:1038
-msgid "Toggle Focused Track\tReturn"
-msgstr "á¤ááá£á¡áá ááá£áá á¢á áááá¡ á©áá ááá\tReturn"
-
-#: Menus.cpp:1039
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr "á¤ááá£á¡áá ááá£áá á¢á áááá¡ á©áá ááá\tNUMPAD_ENTER"
-
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
-msgstr ""
+msgid "Toggle Focused Track"
+msgstr "á¤ááá£á¡áá ááá£áá á¢á áááá¡ á©áá ááá"
#: Menus.cpp:1042
-msgid "Cursor Left\tLeft"
-msgstr "áá£á á¡áá á ááá áªá®ááá\tLeft"
+msgid "Cursor Left"
+msgstr "áá£á á¡áá á ááá áªá®ááá"
#: Menus.cpp:1043
-msgid "Cursor Right\tRight"
-msgstr "áá£á á¡áá á ááá á¯áááá\tRight"
+msgid "Cursor Right"
+msgstr "áá£á á¡áá á ááá á¯áááá"
#: Menus.cpp:1044
-msgid "Cursor Short Jump Left\t,"
-msgstr "áá£á á¡áá áá¡ ááááá ááááá¡ááá ááá áªá®ááá\t,"
+msgid "Cursor Short Jump Left"
+msgstr "áá£á á¡áá áá¡ ááááá ááááá¡ááá ááá áªá®ááá"
#: Menus.cpp:1045
-msgid "Cursor Short Jump Right\t."
-msgstr "áá£á á¡áá áá¡ ááááá ááááá¡ááá ááá á¯áááá\t."
+msgid "Cursor Short Jump Right"
+msgstr "áá£á á¡áá áá¡ ááááá ááááá¡ááá ááá á¯áááá"
#: Menus.cpp:1046
-msgid "Cursor Long Jump Left\tShift+,"
-msgstr "áá£á á¡áá áá¡ áá á«ááá ááááá¡ááá ááá áªá®ááá\tShift+,"
+msgid "Cursor Long Jump Left"
+msgstr "áá£á á¡áá áá¡ áá á«ááá ááááá¡ááá ááá áªá®ááá"
#: Menus.cpp:1047
-msgid "Cursor Long Jump Right\tShift+."
-msgstr "áá£á á¡áá áá¡ áá á«ááá ááááá¡ááá ááá á¯áááá\tShift+."
+msgid "Cursor Long Jump Right"
+msgstr "áá£á á¡áá áá¡ áá á«ááá ááááá¡ááá ááá á¯áááá"
#: Menus.cpp:1049
-msgid "Selection Extend Left\tShift+Left"
-msgstr "ááááá¨áááá¡ ááá¤áá ááááá ááá áªá®ááá\tShift+Left"
+msgid "Selection Extend Left"
+msgstr "ááááá¨áááá¡ ááá¤áá ááááá ááá áªá®ááá"
#: Menus.cpp:1050
-msgid "Selection Extend Right\tShift+Right"
-msgstr "ááááá¨áááá¡ ááá¤áá ááááá ááá á¯áááá\tShift+Right"
+msgid "Selection Extend Right"
+msgstr "ááááá¨áááá¡ ááá¤áá ááááá ááá á¯áááá"
#: Menus.cpp:1052
msgid "Set (or Extend) Left Selection"
@@ -2381,52 +2213,52 @@ msgid "Set (or Extend) Right Selection"
msgstr "ááá á¯ááááááááá¨áááá¡ ááááá ááá (áá ááá¤áá ááááá) "
#: Menus.cpp:1055
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "áááá¢á áá¡á¢áá¡ ááá áªá®ááá ááááá¨ááá\tCtrl+Shift+Right"
+msgid "Selection Contract Left"
+msgstr "áááá¢á áá¡á¢áá¡ ááá áªá®ááá ááááá¨ááá"
#: Menus.cpp:1056
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "áááá¢á áá¡á¢áá¡ ááá á¯áááá ááááá¨ááá\tCtrl+Shift+Left"
+msgid "Selection Contract Right"
+msgstr "áááá¢á áá¡á¢áá¡ ááá á¯áááá ááááá¨ááá"
#: Menus.cpp:1058
-msgid "Change pan on focused track\tShift+P"
-msgstr "áá áá¡ á¨ááªááá á¤ááá£á¡áá ááá£á á¢á áááá\tShift+P"
+msgid "Change pan on focused track"
+msgstr "áá áá¡ á¨ááªááá á¤ááá£á¡áá ááá£á á¢á áááá"
#: Menus.cpp:1059
-msgid "Pan left on focused track\tAlt+Shift+Left"
-msgstr "á¤ááá£á¡áá ááá£á á¢á áááá ááá áªá®ááá ááá¢á áááááá\tAlt+Shift+Left"
+msgid "Pan left on focused track"
+msgstr "á¤ááá£á¡áá ááá£á á¢á áááá ááá áªá®ááá ááá¢á áááááá"
#: Menus.cpp:1060
-msgid "Pan right on focused track\tAlt+Shift+Right"
-msgstr "á¤ááá£á¡áá ááá£á á¢á áááá ááá á¯áááá ááá¢á áááááá\tAlt+Shift+Right"
+msgid "Pan right on focused track"
+msgstr "á¤ááá£á¡áá ááá£á á¢á áááá ááá á¯áááá ááá¢á áááááá"
#: Menus.cpp:1061
-msgid "Change gain on focused track\tShift+G"
-msgstr "gain -áá¡ á¨ááªááá á¤ááá£á¡áá ááá£á á¢á áááá\tShift+G"
+msgid "Change gain on focused track"
+msgstr "gain -áá¡ á¨ááªááá á¤ááá£á¡áá ááá£á á¢á áááá"
#: Menus.cpp:1062
-msgid "Increase gain on focused track\tAlt+Shift+Up"
-msgstr "gain-áá¡ áá¬ááá á¤ááá£á¡áá ááá£á á¢á áááá\tAlt+Shift+Up"
+msgid "Increase gain on focused track"
+msgstr "gain-áá¡ áá¬ááá á¤ááá£á¡áá ááá£á á¢á áááá"
#: Menus.cpp:1063
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
-msgstr "gain-áá¡ ááá¬ááá á¤ááá£á¡áá ááá£á á¢á áááá\tAlt+Shift+Down"
+msgid "Decrease gain on focused track"
+msgstr "gain-áá¡ ááá¬ááá á¤ááá£á¡áá ááá£á á¢á áááá"
#: Menus.cpp:1064
-msgid "Open menu on focused track\tShift+M"
-msgstr "ááááá£á¡ ááá®á¡áá á¤ááá£á¡áá ááá£á á¢á áááá\tShift+M"
+msgid "Open menu on focused track"
+msgstr "ááááá£á¡ ááá®á¡áá á¤ááá£á¡áá ááá£á á¢á áááá"
#: Menus.cpp:1065
-msgid "Mute/Unmute focused track\tShift+U"
-msgstr "á¤ááá£á¡áá ááá£áá á¢á áááá¡ áááá£áááá/á®ááá¡ áá¬ááá\tShift+U"
+msgid "Mute/Unmute focused track"
+msgstr "á¤ááá£á¡áá ááá£áá á¢á áááá¡ áááá£áááá/á®ááá¡ áá¬ááá"
#: Menus.cpp:1066
-msgid "Solo/Unsolo focused track\tShift+S"
-msgstr "á¡ááá/áá áá¡ááá á¤ááá£á¡áá ááá£áá á¢á ááá\tShift+S"
+msgid "Solo/Unsolo focused track"
+msgstr "á¡ááá/áá áá¡ááá á¤ááá£á¡áá ááá£áá á¢á ááá"
#: Menus.cpp:1067
-msgid "Close focused track\tShift+C"
-msgstr "á¤ááá£á¡áá ááá£áá á¢á áááá¡ ááá®á£á áá\tShift+C"
+msgid "Close focused track"
+msgstr "á¤ááá£á¡áá ááá£áá á¢á áááá¡ ááá®á£á áá"
#: Menus.cpp:1069
msgid "Snap To On"
@@ -2437,7 +2269,35 @@ msgid "Snap To Off"
msgstr "ááááá¦áááá¡ ááááá ááá"
#: Menus.cpp:1073
-msgid "Full screen on/off\tF11"
+msgid "Full screen on/off"
+msgstr ""
+
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr ""
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr ""
+
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr ""
+
+#: Menus.cpp:1074
+msgid "Adjust input source"
msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
@@ -2498,8 +2358,8 @@ msgstr "á¯áá á£ááá ááááá á©ááá á¢á ááá"
#: Menus.cpp:2369
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "áááááá ááá %s\tCtrl+R"
+msgid "Repeat %s"
+msgstr "áááááá ááá %s"
#: Menus.cpp:2512
msgid "There are no label tracks to export."
@@ -2531,9 +2391,7 @@ msgstr "ááá¡ááá á£áááááá ááá¥áááááá á
msgid "Nothing to redo"
msgstr "ááá¡ááááá ááááá ááá¥áááááá áá áá á¡ááááá¡"
-#: Menus.cpp:2809
-#: TrackPanel.cpp:596
-#: toolbars/EditToolBar.cpp:133
+#: Menus.cpp:2809 TrackPanel.cpp:596 toolbars/EditToolBar.cpp:133
msgid "Cut"
msgstr "ááááá á"
@@ -2549,10 +2407,7 @@ msgstr "ááá§áá¤áá¡ ááááá á"
msgid "Split-cut to the clipboard"
msgstr "ááá§áá¤á-ááááá á áá áááªáááá¡ áá£á¤áá á¨á á¨áááá®áá"
-#: Menus.cpp:2914
-#: Menus.cpp:2986
-#: Menus.cpp:3178
-#: TrackPanel.cpp:598
+#: Menus.cpp:2914 Menus.cpp:2986 Menus.cpp:3178 TrackPanel.cpp:598
#: toolbars/EditToolBar.cpp:137
msgid "Paste"
msgstr "á©áá¡áá"
@@ -2561,8 +2416,7 @@ msgstr "á©áá¡áá"
msgid "Pasted text from the clipboard"
msgstr "áááªáááá¡ áá£á¤áá áááá á©áá¡áá£áá á¢áá¥á¡á¢á"
-#: Menus.cpp:2986
-#: Menus.cpp:3178
+#: Menus.cpp:2986 Menus.cpp:3178
msgid "Pasted from the clipboard"
msgstr "áááªáááá¡ áá£á¤áá áááá á©áá¡áá£áá"
@@ -2574,8 +2428,7 @@ msgstr "áá áá á¢áááá¡ á¢á áááá¡ áááá áá¨á
msgid "Copying stereo audio into a mono track is not allowed."
msgstr "á¡á¢áá áá áá£áááááá áááá á¢á áááá ááááá ááá ááá£á¨ááááááá."
-#: Menus.cpp:3214
-#: toolbars/EditToolBar.cpp:139
+#: Menus.cpp:3214 toolbars/EditToolBar.cpp:139
msgid "Trim"
msgstr "Trim"
@@ -2615,8 +2468,7 @@ msgstr "á¨ááá áááá"
msgid "Silenced selected tracks for %.2f seconds at %.2f"
msgstr "ááá©á£áááá£áá áááá£á¨áá£áá á¢á ááááá %.2f-áá¡áááá¡.2f á¬ááá %.2f"
-#: Menus.cpp:3315
-#: toolbars/EditToolBar.cpp:141
+#: Menus.cpp:3315 toolbars/EditToolBar.cpp:141
msgid "Silence"
msgstr "ááá©á£áááá"
@@ -2700,8 +2552,7 @@ msgstr "ááá ááá§áááá¡ á¨ááá áááá"
msgid "Disjoined labeled regions"
msgstr "ááááªáááááááá£áá ááá ááá§áááááá£áá áá áááá"
-#: Menus.cpp:3491
-#: TrackPanel.cpp:6134
+#: Menus.cpp:3491 TrackPanel.cpp:6134
msgid "Split"
msgstr "ááá§áá¤á"
@@ -2717,15 +2568,6 @@ msgstr "áá®áá á¢á áááá ááá§áá¤á"
msgid "Split at labels"
msgstr "ááá ááá§áááá ááá§áá¤á"
-#: Menus.cpp:3969
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "á¡ááá¥á¢á áá¡ áááááá¡áááá¡ á§áááá ááááá¨áá£áá á¢á ááá¡ á£ááá á°á¥ááááá¡ á¡áááááá¡ ááááááá á áááá¤ááªáááá¢á."
-
-#: Menus.cpp:3995
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "áááááá¢á áá£ááá áá§á ááááá¨áá£áá. áá®áááá ááá áááá %.1f á¬áááá¡ ááááááá ááá®áááá."
-
#: Menus.cpp:4130
#, c-format
msgid "Imported labels from '%s'"
@@ -2764,8 +2606,7 @@ msgstr "á§áááá á¤áááá(*)|*"
msgid "Edit the metadata tags"
msgstr "ááá¢ááááááªáááááá¡ ááááááá¡ á áááá¥á¢áá ááá"
-#: Menus.cpp:4206
-#: export/Export.cpp:353
+#: Menus.cpp:4206 export/Export.cpp:353
msgid "Edit Metadata"
msgstr "ááá¢ááááááªáááááá¡ á áááá¥á¢áá ááá"
@@ -2792,8 +2633,7 @@ msgstr "%d á¢á áááááá¡ áá á áá®áá á¡á¢áá áá
msgid "Mixed and rendered %d tracks into one new mono track"
msgstr "%d á¢á áááááá¡ áá á áá®áá áááá á¢á ááá¨á áá ááá áá á ááááá á "
-#: Menus.cpp:4273
-#: Mix.cpp:121
+#: Menus.cpp:4273 Mix.cpp:121
msgid "&Mix and Render"
msgstr "&áá ááá áá á ááááá á"
@@ -2845,10 +2685,7 @@ msgstr "ááá¡á¬áá ááá ááá¡á á£áááá£ááá."
msgid "Created new audio track"
msgstr "á¨áá¥áááááá áá®ááá áá£ááá á¢á ááá"
-#: Menus.cpp:4564
-#: Menus.cpp:4587
-#: Menus.cpp:4602
-#: Menus.cpp:4622
+#: Menus.cpp:4564 Menus.cpp:4587 Menus.cpp:4602 Menus.cpp:4622
msgid "New Track"
msgstr "áá®ááá á¢á ááá"
@@ -2884,8 +2721,7 @@ msgstr "CleanSpeech ááá áááá¢á áá¡ á¤ááááá¡ á¨áá
msgid "CleanSpeech Presets (*.csp)|*.csp"
msgstr "CleanSpeech ááá áááá¢á ááá(*.csp)|*.csp"
-#: Menus.cpp:4750
-#: export/Export.cpp:605
+#: Menus.cpp:4750 export/Export.cpp:605
msgid "Sorry, pathnames longer than 256 characters not supported."
msgstr "áá¬á£á®ááá á, 256 á¡áááááááá áá á«ááá ááááá¡ á¡áá®ááááá áá áá áá¡ áá®áá ááááá ááá."
@@ -2893,8 +2729,7 @@ msgstr "áá¬á£á®ááá á, 256 á¡áááááááá áá á«á
msgid "Problem encountered exporting presets."
msgstr "ááá áááá¢á áááá¡ áá¥á¡ááá á¢áá¡áá¡ á¬áá áááá¥ááá áá áááááá."
-#: Menus.cpp:4797
-#: export/Export.cpp:468
+#: Menus.cpp:4797 export/Export.cpp:468
msgid "Unable to export"
msgstr "á¨áá£á«ááááááá áá¡ááá á¢áá ááá"
@@ -2906,20 +2741,16 @@ msgstr "á¢á áááá¡ á¬áá¨áá"
msgid "Removed audio track(s)"
msgstr "á¬áá¨áááá áá£ááá á¢á áá(á)á"
-#: Menus.cpp:5138
-#: Menus.cpp:5193
-#: export/ExportFFmpeg.cpp:710
+#: Menus.cpp:5138 Menus.cpp:5193 export/ExportFFmpeg.cpp:710
#: export/ExportMP3.cpp:1928
msgid "Resample"
msgstr "á áá¡áááááá ááá"
-#: Menus.cpp:5158
-#: TrackPanel.cpp:6361
+#: Menus.cpp:5158 TrackPanel.cpp:6361
msgid "New sample rate (Hz):"
msgstr "á¡áááááá¡ áá®ááá áááá¤ááªáááá¢á (Hz):"
-#: Menus.cpp:5182
-#: TrackPanel.cpp:6385
+#: Menus.cpp:5182 TrackPanel.cpp:6385
msgid "The entered value is invalid"
msgstr "á¨áá§áááááá áááá¨ááááááá áá áá¡á¬áá áá"
@@ -2936,8 +2767,7 @@ msgstr "á¢á áááá¡ á áá¡áááááá ááá"
msgid "Resampled audio track(s)"
msgstr "á áá¡áááááá ááá£áá áá£ááá á¢á áá(áá)á"
-#: Mix.cpp:95
-#: Mix.cpp:102
+#: Mix.cpp:95 Mix.cpp:102
msgid "Mix"
msgstr "áá ááá"
@@ -2957,6 +2787,10 @@ msgstr "áááááááááá¡ á¨ááªáááá."
msgid "Print"
msgstr "ááááááááá"
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr ""
+
#: Project.cpp:673
msgid "Main Mix"
msgstr "á«áá ááááá áá ááá"
@@ -2970,14 +2804,11 @@ msgstr "ááááá¡ááááááá Audacity-áá¡ ááá á¡áá
msgid "(Recovered)"
msgstr "(áá¦áááááááá)"
-#: Project.cpp:1546
-#: TrackPanel.cpp:796
-#: toolbars/ControlToolBar.cpp:192
+#: Menus.cpp:998
msgid "Record"
msgstr "á©áá¬áá á"
-#: Project.cpp:1546
-#: TrackPanel.cpp:796
+#: Project.cpp:1546 TrackPanel.cpp:796
msgid "Recorded Audio"
msgstr "á©áá¬áá ááá áá£ááá"
@@ -3003,9 +2834,9 @@ msgstr "\n"
msgid "Save changes?"
msgstr "á¨áááááá®á áªááááááááá?"
-#: Project.cpp:1772
-msgid "All files|*.*|All supported files|"
-msgstr "á§áááá á¤áááá|*.*|á§áááá áá®áá ááááá ááá á¤áááá|"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
+msgstr ""
#: Project.cpp:1802
msgid "Select one or more audio files..."
@@ -3015,8 +2846,7 @@ msgstr "áá áá áá ááá¢á áá£ááá á¤ááááá¡ á
msgid "Audacity projects|*.aup|"
msgstr "Audacity áá ááá¥á¢ááá|*.aup|"
-#: Project.cpp:1882
-#: Project.cpp:2304
+#: Project.cpp:1882 Project.cpp:2304
#, c-format
msgid "This file was saved by Audacity %s, a much\n"
"older version. The format has changed.\n"
@@ -3037,13 +2867,22 @@ msgstr "áá¡ á¤áááá á¨áááá®á£ááá Audacity %s'-áá¡,
msgid "1.0 or earlier"
msgstr "1.0 áá á£á¤á á ááá áá£áá"
-#: Project.cpp:1889
-#: Project.cpp:2316
+#: Project.cpp:1889 Project.cpp:2316
msgid "Opening old project file"
msgstr "á«áááá áá ááá¥á¢áá¡ á¤ááááá¡ ááá®á¡áá"
-#: Project.cpp:1915
-#: Project.cpp:1923
+#: Project.cpp:2073
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr ""
+
+#: Project.cpp:1915 Project.cpp:1923
msgid "Error opening file"
msgstr "á¤ááááá¡ ááá®á¡ááá¡ á¨ááªáááá"
@@ -3078,8 +2917,7 @@ msgstr "áá¦ááááá"
msgid "Project checker repaired file"
msgstr "áá ááá¥á¢áá¡ á¨ááááá¬ááááááá áá¦áááááá á¤áááá"
-#: Project.cpp:2084
-#: effects/Repair.h:29
+#: Project.cpp:2084 effects/Repair.h:29
msgid "Repair"
msgstr "áá¦áááá"
@@ -3101,16 +2939,15 @@ msgstr "áá¡ á¤áááá á¨ááááá®á£áá áá§á Audacity %s
msgid "Can't open project file"
msgstr "á¨áá£á«ááááááá áá ááá¥á¢áá¡ á¤ááááá¡ ááá®á¡áá"
-#: Project.cpp:2311
+#: Project.cpp:2484
#, c-format
msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
"\n"
-"Open this file now?"
-msgstr "áá¡ á¤áááá á¨áááá®á£áá áá§á Audacity %s.áá¡ áááá \n"
-"áá á¤ááááá¡ Audacity áá ááá á¡ááá ááá®á¡áá á¨áá¡áá«ááááááá, áááá áá áᣠááá¡ áá ááá á¡ááá á¨ááááá®ááá, á«áááá ááá á¡ááá ááá¡á ááá®á¡áá á¨áá£á«áááááá ááá®áááá.\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
-"áááá®á¡áá á¤áááá?"
+"Open this file now?"
+msgstr ""
#: Project.cpp:2537
msgid "Your project is now empty.\n"
@@ -3127,18 +2964,24 @@ msgstr ""
msgid "Warning empty project"
msgstr ""
-#: Project.cpp:2588
+#: Project.cpp:2792
#, c-format
+#, fuzzy
msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+"is not writable or the disk is full."
msgstr "á¨áá£á«ááááááá áá ááá¥á¢áá¡ ááá®á¡áá. á¨áá¡áá«ááá%s \n"
"áá áá áá¡ á©áá¬áá ááá áá ááá¡ááá áááááá¡ááá£áá."
-#: Project.cpp:2590
-#: Project.cpp:2605
+#: Project.cpp:2590 Project.cpp:2605
msgid "Error saving project"
msgstr "áá ááá¥á¢áá¡ á¨áááá®ááá¡ á¨ááªáááá"
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
#: Project.cpp:2680
#, c-format
msgid "Saved %s"
@@ -3149,14 +2992,11 @@ msgstr "á¨áááá®á£ááá %s"
msgid "Imported '%s'"
msgstr "ááááá á¢áá ááá£ááá '%s'"
-#: Project.cpp:2807
-#: import/ImportPCM.cpp:483
-#: import/ImportPCM.cpp:527
+#: Project.cpp:2807 import/ImportPCM.cpp:483 import/ImportPCM.cpp:527
msgid "Import"
msgstr "ááááá á¢á"
-#: Project.cpp:2840
-#: Project.cpp:2848
+#: Project.cpp:2840 Project.cpp:2848
msgid "Error importing"
msgstr "ááááá á¢áá¡ á¨ááªáááá"
@@ -3209,8 +3049,7 @@ msgstr "áá®ááá á¨áá¥ááááá áá ááá¥á¢á"
msgid "Deleted %.2f seconds at t=%.2f"
msgstr "á¬áá¨ááááá %.2f á¬ááá t=%.2f"
-#: Project.cpp:3114
-#: effects/Equalization.cpp:1276
+#: Project.cpp:3114 effects/Equalization.cpp:1276
#: effects/Equalization.cpp:2607
msgid "Delete"
msgstr "á¬áá¨áá"
@@ -3291,8 +3130,7 @@ msgstr "Libsamplerate Erik de Castro Lopo áááá "
msgid "Libsamplerate error: %d\n"
msgstr "Libsamplerate á¨ááªáááá: %d\n"
-#: Resample.cpp:240
-#: Resample.cpp:250
+#: Resample.cpp:240 Resample.cpp:250
msgid "Resampling disabled."
msgstr "á áá¡áááááááá ááá£á¥áááá£ááá."
@@ -3311,6 +3149,164 @@ msgstr "24-ááá¢áááá PCM"
msgid "32-bit float"
msgstr "32-ááá¢áááá ááªááªááá"
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
+
+#: export/ExportMultiple.cpp:245 prefs/DirectoriesPrefs.cpp:92
+msgid "Choose..."
+msgstr "áá á©ááá..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
+
+#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
+msgid "false"
+msgstr "á§áááá"
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr "á®ááá¡áá¬á§áááá"
+
+#: toolbars/ControlToolBar.cpp:83
+msgid "Control"
+msgstr "áááá¢á ááá"
+
+#: effects/LoadEffects.cpp:114 toolbars/MixerToolBar.cpp:60
+msgid "Mixer"
+msgstr "ááá¥á¡áá á"
+
+#: toolbars/MeterToolBar.cpp:50
+msgid "Meter"
+msgstr "ááááááá"
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:121 prefs/AudioIOPrefs.cpp:139
+#: prefs/MidiIOPrefs.cpp:118 prefs/MidiIOPrefs.cpp:136
+#: toolbars/DeviceToolBar.cpp:57
+msgid "Device"
+msgstr "ááá¬á§ááááááá"
+
+#: toolbars/TranscriptionToolBar.cpp:84
+msgid "Transcription"
+msgstr "á¢á ááá¡áá áááªáá"
+
+#: TrackPanel.cpp:457 TrackPanel.cpp:458
+msgid "Track Panel"
+msgstr "á¢á áááá¡ áááá"
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: export/ExportMultiple.cpp:288 export/ExportMultiple.cpp:290
+msgid "Tracks"
+msgstr "á¢á ááááá"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
#: Screenshot.cpp:384
msgid "Saved "
msgstr "á¨áááá®á£ááá"
@@ -3319,14 +3315,15 @@ msgstr "á¨áááá®á£ááá"
msgid "Error trying to save file: "
msgstr "á¤ááááá¡ á¨áááá®ááá¡ á¨ááªáááá:"
-#: Sequence.cpp:804
-#: Sequence.cpp:814
-#: Sequence.cpp:821
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
+#: Sequence.cpp:804 Sequence.cpp:814 Sequence.cpp:821
msgid "Gap detected in project file\n"
msgstr "áá ááá¥á¢áá¡ á¤áááá¨á á¨áááá©áááá á á¦áááá\n"
-#: ShuttleGui.cpp:1972
-#: effects/Effect.cpp:417
+#: ShuttleGui.cpp:1972 effects/Effect.cpp:417
#: effects/audiounits/AudioUnitEffect.cpp:877
msgid "Pre&view"
msgstr "áá¡&áááá"
@@ -3367,8 +3364,7 @@ msgstr "ááááááá¡ á¡áá®ááá"
msgid "Track Number"
msgstr "á¢á áááá¡ ááááá á"
-#: Tags.cpp:644
-#: Tags.cpp:2147
+#: Tags.cpp:644 Tags.cpp:2147
msgid "Year"
msgstr "á¬ááá"
@@ -3376,9 +3372,7 @@ msgstr "á¬ááá"
msgid "Genre"
msgstr "áááá á"
-#: Tags.cpp:646
-#: Tags.cpp:2157
-#: prefs/MousePrefs.cpp:96
+#: Tags.cpp:646 Tags.cpp:2157 prefs/MousePrefs.cpp:96
msgid "Comments"
msgstr "áááááá¢áá ááá"
@@ -3394,9 +3388,7 @@ msgstr "áááá¡ á¡áá®ááá"
msgid "Tag Value"
msgstr "áááá¡ áááá¨ááááááá"
-#: Tags.cpp:829
-#: Tags.cpp:1486
-#: prefs/KeyConfigPrefs.cpp:116
+#: Tags.cpp:829 Tags.cpp:1486 prefs/KeyConfigPrefs.cpp:116
msgid "&Clear"
msgstr "&ááá¬ááááá"
@@ -3412,71 +3404,42 @@ msgstr ""
msgid "Rese&t..."
msgstr ""
-#: Tags.cpp:845
-#: Tags.cpp:1470
-#: Tags.cpp:1997
+#: Tags.cpp:845 Tags.cpp:1470 Tags.cpp:1997
msgid "Template"
msgstr "á¨áááááá"
-#: Tags.cpp:849
-#: Tags.cpp:1474
-#: Tags.cpp:2001
-#: prefs/KeyConfigPrefs.cpp:126
+#: Tags.cpp:849 Tags.cpp:1474 Tags.cpp:2001 prefs/KeyConfigPrefs.cpp:126
msgid "&Load..."
msgstr "&á©áá¢ááá ááá..."
-#: Tags.cpp:850
-#: Tags.cpp:1475
-#: Tags.cpp:2002
-#: prefs/KeyConfigPrefs.cpp:125
+#: Tags.cpp:850 Tags.cpp:1475 Tags.cpp:2002 prefs/KeyConfigPrefs.cpp:125
msgid "&Save..."
msgstr "&á¨áááá®áá..."
-#: Tags.cpp:852
-#: Tags.cpp:1477
-#: Tags.cpp:2004
+#: Tags.cpp:852 Tags.cpp:1477 Tags.cpp:2004
msgid "S&et Default"
msgstr "áááá£ááá¡á®áááá ááá áááá¢á áááá¡ ááá§ááááá"
-#: Tags.cpp:1002
-#: Tags.cpp:1640
-#: Tags.cpp:2368
+#: Tags.cpp:1002 Tags.cpp:1640 Tags.cpp:2368
msgid "Edit Genres"
msgstr "áááá áááá¡ á áááá¥á¢áá ááá"
-#: Tags.cpp:1035
-#: Tags.cpp:1047
-#: Tags.cpp:1062
-#: Tags.cpp:1075
-#: Tags.cpp:1678
-#: Tags.cpp:1690
-#: Tags.cpp:1705
-#: Tags.cpp:1718
-#: Tags.cpp:2411
-#: Tags.cpp:2423
-#: Tags.cpp:2438
-#: Tags.cpp:2451
+#: Tags.cpp:1035 Tags.cpp:1047 Tags.cpp:1062 Tags.cpp:1075 Tags.cpp:1678
+#: Tags.cpp:1690 Tags.cpp:1705 Tags.cpp:1718 Tags.cpp:2411 Tags.cpp:2423
+#: Tags.cpp:2438 Tags.cpp:2451
msgid "Reset Genres"
msgstr "áááá áááá¡ áááá£ááá¡á®ááá ááá áááá¢á áááááá ááá§áááá"
-#: Tags.cpp:1035
-#: Tags.cpp:1075
-#: Tags.cpp:1678
-#: Tags.cpp:1718
-#: Tags.cpp:2411
+#: Tags.cpp:1035 Tags.cpp:1075 Tags.cpp:1678 Tags.cpp:1718 Tags.cpp:2411
#: Tags.cpp:2451
msgid "Unable to save genre file."
msgstr "á¨áá£á«ááááááá áááá áá¡ á¤ááááá¡ á¨áááá®áá."
-#: Tags.cpp:1046
-#: Tags.cpp:1689
-#: Tags.cpp:2422
+#: Tags.cpp:1046 Tags.cpp:1689 Tags.cpp:2422
msgid "Are you sure you want to reset the genre list to defaults?"
msgstr "ááá ááá áá¡á£á á áááá áááá¡ áá£á¡á®áá¡ áááá£ááá¡á®ááá ááá áááá¢á áááááá ááá§áááá?"
-#: Tags.cpp:1062
-#: Tags.cpp:1705
-#: Tags.cpp:2438
+#: Tags.cpp:1062 Tags.cpp:1705 Tags.cpp:2438
msgid "Unable to open genre file."
msgstr "á¨áá£á«ááááááá áááá áá¡ á¤ááááá¡ á¨áááá®áá."
@@ -3484,21 +3447,19 @@ msgstr "á¨áá£á«ááááááá áááá áá¡ á¤ááááá¡
msgid "Load Metadata As:"
msgstr ""
-#: Tags.cpp:1122
-#: Tags.cpp:1772
-#: Tags.cpp:2494
+#: Tags.cpp:1122 Tags.cpp:1772 Tags.cpp:2494
msgid "Error loading metadata"
msgstr "ááá¢ááááááªáááááá¡ á©áá¢ááá áááá¡ á¨ááªáááá"
-#: Tags.cpp:1097
-#: Tags.cpp:1151
-#: Tags.cpp:1751
-#: Tags.cpp:1787
-#: Tags.cpp:2473
+#: Tags.cpp:1097 Tags.cpp:1151 Tags.cpp:1751 Tags.cpp:1787 Tags.cpp:2473
#: Tags.cpp:2509
msgid "Save Metadata As:"
msgstr "ááá¢ááááááªáááááá¡ á¨áááá®áá á áááá áª:"
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
#: Theme.cpp:638
#, c-format
msgid "Audacity could not write file:\n"
@@ -3531,8 +3492,7 @@ msgstr "Audacity-áá ááá ááá®á¡áá á¤áááá:\n"
" %s.\n"
"áááá áá á©áá¢ááá áá£áá."
-#: Theme.cpp:807
-#: Theme.cpp:896
+#: Theme.cpp:807 Theme.cpp:896
#, c-format
msgid "Audacity could not load file:\n"
" %s.\n"
@@ -3556,8 +3516,7 @@ msgstr "ááááá¡ ááááááááá¢áááá¡ á¤áááá
" ááá áááá«áááá:\n"
" %s."
-#: Theme.cpp:942
-#: effects/NoiseRemoval.cpp:173
+#: Theme.cpp:942 effects/NoiseRemoval.cpp:173
#, c-format
msgid "Could not create directory:\n"
" %s"
@@ -3580,12 +3539,8 @@ msgstr "á§áááá áááá®áááááá á¤áááááá:\n"
" %s\n"
"á£ááá áá á¡ááááá¡."
-#: TimeDialog.cpp:53
-#: TimerRecordDialog.cpp:227
-#: TimerRecordDialog.cpp:305
-#: TimerRecordDialog.cpp:309
-#: effects/Noise.cpp:243
-#: effects/ToneGen.cpp:323
+#: TimeDialog.cpp:53 TimerRecordDialog.cpp:227 TimerRecordDialog.cpp:305
+#: TimerRecordDialog.cpp:309 effects/Noise.cpp:243 effects/ToneGen.cpp:323
#: effects/ToneGen.cpp:366
msgid "Duration"
msgstr "á®áááá á«áááááá"
@@ -3594,6 +3549,14 @@ msgstr "á®áááá á«áááááá"
msgid "Audacity Timer Record"
msgstr "Audacity á¢ááááá áá¡ á©áá¬áá á"
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
#: TimerRecordDialog.cpp:224
msgid "Recording start"
msgstr "á©áá¬áá áá¡ ááá¬á§ááá"
@@ -3633,74 +3596,51 @@ msgstr "ááááá áááá¡ ááá¬á§áááá¡ áááááá
msgid "Audacity Timer Record - Waiting for Start"
msgstr "Audacity á¢ááááá áá¡ á©áá¬áá á - ááá¬á§áááá¡ áááááááá"
-#: TrackPanel.cpp:457
-#: TrackPanel.cpp:458
-msgid "Track Panel"
-msgstr "á¢á áááá¡ áááá"
-
-#: TrackPanel.cpp:541
-#: prefs/QualityPrefs.cpp:97
+#: TrackPanel.cpp:541 prefs/QualityPrefs.cpp:97
msgid "Other..."
msgstr "á¡á®áá..."
-#: TrackPanel.cpp:549
-#: TrackPanel.cpp:571
-#: TrackPanel.cpp:580
-#: TrackPanel.cpp:588
+#: TrackPanel.cpp:549 TrackPanel.cpp:571 TrackPanel.cpp:580 TrackPanel.cpp:588
#: TrackPanel.cpp:5793
msgid "Name..."
msgstr "á¡áá®ááá..."
-#: TrackPanel.cpp:551
-#: TrackPanel.cpp:573
-#: TrackPanel.cpp:584
-#: TrackPanel.cpp:590
+#: TrackPanel.cpp:551 TrackPanel.cpp:573 TrackPanel.cpp:584 TrackPanel.cpp:590
#: TrackPanel.cpp:5797
msgid "Move Track Up"
msgstr "á¢á áááá¡ áá¢ááá"
-#: TrackPanel.cpp:552
-#: TrackPanel.cpp:574
-#: TrackPanel.cpp:585
-#: TrackPanel.cpp:591
+#: TrackPanel.cpp:552 TrackPanel.cpp:574 TrackPanel.cpp:585 TrackPanel.cpp:591
#: TrackPanel.cpp:5798
msgid "Move Track Down"
msgstr "á¢á áááá¡ á©áááá¢ááá"
-#: TrackPanel.cpp:554
-#: effects/ToneGen.cpp:319
-#: prefs/GUIPrefs.cpp:154
+#: TrackPanel.cpp:554 effects/ToneGen.cpp:319 prefs/GUIPrefs.cpp:154
msgid "Waveform"
msgstr "á¢ááá¦ááááá"
-#: TrackPanel.cpp:555
-#: prefs/GUIPrefs.cpp:155
+#: TrackPanel.cpp:555 prefs/GUIPrefs.cpp:155
msgid "Waveform (dB)"
msgstr "á¢ááá¦ááááá (dB)"
-#: TrackPanel.cpp:557
-#: prefs/GUIPrefs.cpp:157
+#: TrackPanel.cpp:557 prefs/GUIPrefs.cpp:157
msgid "Spectrum log(f)"
msgstr "á¡ááá¥á¢á áá¡ á©áááá¬áá á(f)"
#. i18n-hint: short form of 'logarithm'
-#: TrackPanel.cpp:558
-#: prefs/GUIPrefs.cpp:158
+#: TrackPanel.cpp:558 prefs/GUIPrefs.cpp:158
msgid "Pitch (EAC)"
msgstr "Pitch (EAC)"
-#: TrackPanel.cpp:560
-#: TrackPanel.cpp:6096
+#: TrackPanel.cpp:560 TrackPanel.cpp:6096
msgid "Mono"
msgstr "áááá"
-#: TrackPanel.cpp:561
-#: TrackPanel.cpp:6095
+#: TrackPanel.cpp:561 TrackPanel.cpp:6095
msgid "Left Channel"
msgstr "ááá áªá®ááá áá á®á"
-#: TrackPanel.cpp:562
-#: TrackPanel.cpp:6095
+#: TrackPanel.cpp:562 TrackPanel.cpp:6095
msgid "Right Channel"
msgstr "ááá á¯áááá áá á®á"
@@ -3712,12 +3652,15 @@ msgstr "á¡á¢áá áá á¢á áááá¡ á¨áá¥ááá"
msgid "Split Stereo Track"
msgstr "á¡á¢áá áá á¢á áááá¡ ááá§áá¤á"
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr ""
+
#: TrackPanel.cpp:566
msgid "Set Sample Format"
msgstr "á¡áááááá¡ á¤áá ááá¢áá¡ ááááá ááá"
-#: TrackPanel.cpp:568
-#: TrackPanel.cpp:6341
+#: TrackPanel.cpp:568 TrackPanel.cpp:6341
msgid "Set Rate"
msgstr "áááá¤ááªáááá¢áá¡ ááááá ááá"
@@ -3729,8 +3672,7 @@ msgstr "áá¥á¢áááá ááá¦áá"
msgid "Down Octave"
msgstr "áá¥á¢áááá ááááá"
-#: TrackPanel.cpp:582
-#: TrackPanel.cpp:5795
+#: TrackPanel.cpp:582 TrackPanel.cpp:5795
msgid "Font..."
msgstr "á¨á áá¤á¢á..."
@@ -3738,8 +3680,7 @@ msgstr "á¨á áá¤á¢á..."
msgid "Set Range..."
msgstr "áááááááááá¡ ááááá ááá..."
-#: TrackPanel.cpp:597
-#: toolbars/EditToolBar.cpp:135
+#: TrackPanel.cpp:597 toolbars/EditToolBar.cpp:135
msgid "Copy"
msgstr "ááááá ááá"
@@ -3785,21 +3726,13 @@ msgstr "ááá£á¬áááá£ááá áá ááááááá ááá
msgid "Click and drag to move right selection boundary."
msgstr "ááá£á¬áááá£ááá áá ááááááá ááá ááááá¨áááá¡ á¡ááá¦áá áá¡ ááá á¯áááá ááááá¢áááá¡áááá¡."
-#: TrackPanel.cpp:1730
-#: TrackPanel.cpp:3959
-#: TrackPanel.cpp:3991
-#: TrackPanel.cpp:4255
-#: TrackPanel.cpp:6490
-#: TrackPanel.cpp:6510
+#: TrackPanel.cpp:1730 TrackPanel.cpp:3959 TrackPanel.cpp:3991
+#: TrackPanel.cpp:4255 TrackPanel.cpp:6490 TrackPanel.cpp:6510
msgid "Modified Label"
msgstr "á¨ááªááááá ááá ááá§á"
-#: TrackPanel.cpp:1731
-#: TrackPanel.cpp:3960
-#: TrackPanel.cpp:3992
-#: TrackPanel.cpp:4256
-#: TrackPanel.cpp:6491
-#: TrackPanel.cpp:6511
+#: TrackPanel.cpp:1731 TrackPanel.cpp:3960 TrackPanel.cpp:3992
+#: TrackPanel.cpp:4256 TrackPanel.cpp:6491 TrackPanel.cpp:6511
msgid "Label Edit"
msgstr "ááá ááá§áá¡ á áááá¥á¢áá ááá"
@@ -3807,8 +3740,7 @@ msgstr "ááá ááá§áá¡ á áááá¥á¢áá ááá"
msgid "Adjusted envelope."
msgstr "ááá áááá£áá áááááá á¢á."
-#: TrackPanel.cpp:1972
-#: prefs/MousePrefs.cpp:115
+#: TrackPanel.cpp:1972 prefs/MousePrefs.cpp:115
msgid "Envelope"
msgstr "áááááá á¢á"
@@ -3830,9 +3762,7 @@ msgstr "ááá á¯áááá"
msgid "Time shifted tracks/clips %s %.02f seconds"
msgstr "áá á á¨ááááªááááá£áá á¢á ááááá/ááááááá %s %.02f á¬ááá"
-#: TrackPanel.cpp:2133
-#: prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:112
+#: TrackPanel.cpp:2133 prefs/MousePrefs.cpp:111 prefs/MousePrefs.cpp:112
#: prefs/MousePrefs.cpp:113
msgid "Time-Shift"
msgstr "áá á-áªááá"
@@ -3871,37 +3801,29 @@ msgid "Moved pan slider"
msgstr "áááááááááááá£áá pan áªááªáá"
#. i18n-hint: Title of the Gain slider, used to adjust the volume
-#: TrackPanel.cpp:3449
-#: TrackPanel.cpp:5703
-#: TrackPanel.cpp:7244
+#: TrackPanel.cpp:3449 TrackPanel.cpp:5703 TrackPanel.cpp:7244
msgid "Gain"
msgstr "Gain"
#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: TrackPanel.cpp:3449
-#: TrackPanel.cpp:5641
-#: TrackPanel.cpp:7251
+#: TrackPanel.cpp:3449 TrackPanel.cpp:5641 TrackPanel.cpp:7251
msgid "Pan"
msgstr "Pan"
-#: TrackPanel.cpp:3576
-#: TrackPanel.cpp:6441
+#: TrackPanel.cpp:3576 TrackPanel.cpp:6441
msgid "up"
msgstr "ááááá"
-#: TrackPanel.cpp:3580
-#: TrackPanel.cpp:6442
+#: TrackPanel.cpp:3580 TrackPanel.cpp:6442
msgid "down"
msgstr "á¥ááááá"
-#: TrackPanel.cpp:3587
-#: TrackPanel.cpp:6437
+#: TrackPanel.cpp:3587 TrackPanel.cpp:6437
#, c-format
msgid "Moved '%s' %s"
msgstr "áááááááááááá£áá '%s' %s"
-#: TrackPanel.cpp:3590
-#: TrackPanel.cpp:6443
+#: TrackPanel.cpp:3590 TrackPanel.cpp:6443
msgid "Move Track"
msgstr "á¢á áááá¡ áááááááááááá"
@@ -3933,14 +3855,6 @@ msgstr "ááá áááá£áá Pan"
msgid "Adjusted gain"
msgstr " ááá áááá£áá gain"
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr "Wave á¢á áááá¡ ááá®ááááá ááá¯áá£áááá"
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr "ááá¯áá£á¤áááááá¡ ááá¬ááááá"
-
#: TrackPanel.cpp:5923
msgid "Can't delete track with active audio"
msgstr "áá¥á¢áá£á á áá£áááá¡ áá¥ááá á¢á áááá¡ á¬áá¨áá á¨áá£á«ááááááá"
@@ -3961,8 +3875,7 @@ msgstr "ááá áªá®ááá,"
msgid "Right, "
msgstr "ááá á¯áááá,"
-#: TrackPanel.cpp:6105
-#: TrackPanel.cpp:6251
+#: TrackPanel.cpp:6105 TrackPanel.cpp:6251
#, c-format
msgid "Changed '%s' to %s"
msgstr "á¨ááªááááá '%s'-ááá %s-áá"
@@ -3976,6 +3889,11 @@ msgstr "áá á®á"
msgid "Split stereo track '%s'"
msgstr "á¡á¢áá á á¢á áááá¡ ááá§áá¤á '%s'"
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
#: TrackPanel.cpp:6169
#, c-format
msgid "Made '%s' a stereo track"
@@ -4002,8 +3920,7 @@ msgstr "á¤áá ááá¢áá¡ á¨ááªááá"
msgid "Change lower speed limit (%) to:"
msgstr "áááááá á¡áá©á¥áá áá¡ ááááá¢áá¡ á¨ááªááá (%):"
-#: TrackPanel.cpp:6406
-#: TrackPanel.cpp:6407
+#: TrackPanel.cpp:6406 TrackPanel.cpp:6407
msgid "Lower speed limit"
msgstr "áááááá á¡áá©á¥áá áá¡ ááááá¢á"
@@ -4011,8 +3928,7 @@ msgstr "áááááá á¡áá©á¥áá áá¡ ááááá¢á"
msgid "Change upper speed limit (%) to:"
msgstr "ááá¦ááá á¡áá©á¥áá áá¡ ááááá¢áá¡ á¨ááªááá (%):"
-#: TrackPanel.cpp:6413
-#: TrackPanel.cpp:6414
+#: TrackPanel.cpp:6413 TrackPanel.cpp:6414
msgid "Upper speed limit"
msgstr "ááá¦ááá á¡áá©á¥áá áá¡ ááááá¢á"
@@ -4046,16 +3962,18 @@ msgstr "á¡áá®áááá¡ á¨ááªááá"
msgid "Label Track Font"
msgstr "á¢á áááá¡ á¨á áá¤á¢áá¡ ááá ááá§á"
-#: TrackPanel.cpp:6592
-#: TrackPanel.cpp:6598
+#: TrackPanel.cpp:6592 TrackPanel.cpp:6598
msgid "Face name"
msgstr "á¡áá®áá¡ á¡áá®ááá"
-#: TrackPanel.cpp:6602
-#: TrackPanel.cpp:6609
+#: TrackPanel.cpp:6602 TrackPanel.cpp:6609
msgid "Face size"
msgstr "á¡áá®áá¡ áááá"
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr ""
+
#: TrackPanel.cpp:7171
msgid "Mute"
msgstr "áááá£áááá"
@@ -4089,10 +4007,7 @@ msgstr "á¡ááá á©áá áá£ááá"
msgid " Select On"
msgstr "ááááá¨ááá á©áá áá£ááá"
-#: VoiceKey.cpp:88
-#: VoiceKey.cpp:238
-#: VoiceKey.cpp:376
-#: VoiceKey.cpp:517
+#: VoiceKey.cpp:88 VoiceKey.cpp:238 VoiceKey.cpp:376 VoiceKey.cpp:517
msgid "Selection is too small to use voice key."
msgstr "á®ááá¡ ááá¡áá¦áááá¡ ááááá¡áá§ááááááá ááááá¨ááá á«ááááá ááªáá áá."
@@ -4119,10 +4034,7 @@ msgstr "ááááá áá£ááááá¡ áªááááááááá --
msgid "Audio Track"
msgstr "áá£ááá á¢á ááá"
-#: WaveTrack.cpp:597
-#: WaveTrack.cpp:616
-#: WaveTrack.cpp:1057
-#: WaveTrack.cpp:1076
+#: WaveTrack.cpp:597 WaveTrack.cpp:616 WaveTrack.cpp:1057 WaveTrack.cpp:1076
msgid "There is not enough room available to paste the selection"
msgstr "ááááá¨áááá¡ á©áá¡áá¡ááááá áá áá áá¡ á¡ááááá áá¡á á¡ááá áªá"
@@ -4140,10 +4052,10 @@ msgstr "áááá£áááá 1-ááá %i-ááá"
msgid "Plugins %i to %i"
msgstr "áááá£áááá %i-ááá %i-ááá"
-#: commands/CommandManager.cpp:857
-#, fuzzy
-msgid "Disallowed for some reason. Try selecting some audio first?"
-msgstr "ááá£á¥áááá£ááá á áá¦á᪠ááááááá. áá¥ááá á áááá áá£áááá¡ áááá á©ááá á¡áªáááá á¯áá ?"
+#: commands/CommandManager.cpp:923
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
+msgstr ""
#: commands/CommandManager.cpp:892
msgid "You can only do this when playing and recording are\n"
@@ -4189,8 +4101,7 @@ msgstr "áááá¥á¢áá£á ááá£áá áá¤áá¥á¢á: %s %.1f dB"
msgid "Amplify"
msgstr "ááá«áááá ááá"
-#: effects/Amplify.cpp:155
-#: effects/Compressor.cpp:476
+#: effects/Amplify.cpp:155 effects/Compressor.cpp:476
#: effects/Normalize.cpp:337
msgid "by Dominic Mazzoni"
msgstr "Dominic Mazzoni-áá¡ áááá "
@@ -4211,9 +4122,7 @@ msgstr "áááááá¢á£ááá¡ áá®ááá áááá (dB):"
msgid "Allow clipping"
msgstr "á¡áááá¨ááááá¡ ááá¨áááá"
-#: effects/Amplify.cpp:222
-#: effects/Amplify.cpp:279
-#: effects/Amplify.cpp:323
+#: effects/Amplify.cpp:222 effects/Amplify.cpp:279 effects/Amplify.cpp:323
msgid "-Infinity"
msgstr "-á£á¡áá¡á á£áááá"
@@ -4229,9 +4138,7 @@ msgstr "ááá«áááá ááá"
msgid "You selected a track which does not contain audio. AutoDuck can only process audio tracks."
msgstr "ááááá¨áá£áá ááá¥áá á¢á ááá, á ááááá᪠áá á¨áááªááá¡ áá£áááá¡. AutoDuck-á¡ áá®áááá áá£ááá á¢á áááááá¡ áááá£á¨ááááá á¨áá£á«ááá."
-#: effects/AutoDuck.cpp:126
-#: effects/AutoDuck.cpp:138
-#: effects/AutoDuck.cpp:453
+#: effects/AutoDuck.cpp:126 effects/AutoDuck.cpp:138 effects/AutoDuck.cpp:453
#: effects/AutoDuck.cpp:570
msgid "Auto Duck"
msgstr "Auto Duck"
@@ -4253,24 +4160,14 @@ msgid "Maximum pause:"
msgstr "ááá¥á¡ááááá£á á ááá£áá:"
#. i18n-hint: Name of time display format that shows time in seconds
-#: effects/AutoDuck.cpp:494
-#: effects/AutoDuck.cpp:499
-#: effects/AutoDuck.cpp:504
-#: effects/AutoDuck.cpp:509
-#: effects/AutoDuck.cpp:514
-#: effects/Contrast.cpp:263
-#: effects/Contrast.cpp:286
-#: prefs/AudioIOPrefs.cpp:172
-#: prefs/AudioIOPrefs.cpp:180
-#: prefs/AudioIOPrefs.cpp:182
-#: prefs/AudioIOPrefs.cpp:207
-#: prefs/AudioIOPrefs.cpp:209
-#: prefs/MidiIOPrefs.cpp:161
-#: prefs/MidiIOPrefs.cpp:163
-#: prefs/MidiIOPrefs.cpp:187
-#: prefs/MidiIOPrefs.cpp:189
-#: prefs/MidiIOPrefs.cpp:197
-#: widgets/TimeTextCtrl.cpp:263
+#: effects/AutoDuck.cpp:494 effects/AutoDuck.cpp:499 effects/AutoDuck.cpp:504
+#: effects/AutoDuck.cpp:509 effects/AutoDuck.cpp:514 effects/Contrast.cpp:263
+#: effects/Contrast.cpp:286 prefs/AudioIOPrefs.cpp:172
+#: prefs/AudioIOPrefs.cpp:180 prefs/AudioIOPrefs.cpp:182
+#: prefs/AudioIOPrefs.cpp:207 prefs/AudioIOPrefs.cpp:209
+#: prefs/MidiIOPrefs.cpp:161 prefs/MidiIOPrefs.cpp:163
+#: prefs/MidiIOPrefs.cpp:187 prefs/MidiIOPrefs.cpp:189
+#: prefs/MidiIOPrefs.cpp:197 widgets/TimeTextCtrl.cpp:263
msgid "seconds"
msgstr "á¬ááááá"
@@ -4290,8 +4187,7 @@ msgstr "á¨ááá áááááááááá¡ á¡ááá á«á:"
msgid "Inner fade up length:"
msgstr "á¨ááá á®ááá¡ áá¬áááá¡ á¡ááá á«á:"
-#: effects/AutoDuck.cpp:521
-#: effects/Compressor.cpp:494
+#: effects/AutoDuck.cpp:521 effects/Compressor.cpp:494
msgid "Threshold:"
msgstr "áá¦ááá á:"
@@ -4311,10 +4207,8 @@ msgstr "Auto Duck..."
msgid "Processing Auto Duck..."
msgstr "Auto Duck áááá£á¨ááááá..."
-#: effects/AvcCompressor.cpp:738
-#: effects/VST/VSTEffect.cpp:455
-#: effects/audiounits/AudioUnitEffect.cpp:882
-#: effects/nyquist/Nyquist.cpp:1053
+#: effects/AvcCompressor.cpp:738 effects/VST/VSTEffect.cpp:455
+#: effects/audiounits/AudioUnitEffect.cpp:882 effects/nyquist/Nyquist.cpp:1053
#: widgets/ErrorDialog.cpp:101
msgid "OK"
msgstr "áááá®"
@@ -4328,14 +4222,11 @@ msgstr "áááá¥á¢áá£á ááá£áá áá¤áá¥á¢á: %s á¡áá®
msgid "Bass Boost"
msgstr "Bass Boost"
-#: effects/BassBoost.cpp:182
-#: effects/Phaser.cpp:219
-#: effects/Wahwah.cpp:214
+#: effects/BassBoost.cpp:182 effects/Phaser.cpp:219 effects/Wahwah.cpp:214
msgid "by Nasca Octavian Paul"
msgstr "Nasca Octavian Paul-áá¡ áááá "
-#: effects/BassBoost.cpp:196
-#: effects/ChangePitch.cpp:322
+#: effects/BassBoost.cpp:196 effects/ChangePitch.cpp:322
msgid "Frequency (Hz):"
msgstr "á¡áá®á¨áá á (Hz):"
@@ -4380,14 +4271,12 @@ msgstr "Pitch á¨ááªááá"
msgid "Change Pitch without Changing Tempo"
msgstr "Pitch á¨ááªááá Tempo-á¡ á¨ááªáááá¡ ááá áá¨á"
-#: effects/ChangePitch.cpp:258
-#: effects/ChangeSpeed.cpp:336
+#: effects/ChangePitch.cpp:258 effects/ChangeSpeed.cpp:336
#: effects/ChangeTempo.cpp:173
msgid "by Vaughan Johnson && Dominic Mazzoni"
msgstr "Vaughan Johnson && Dominic Mazzoni áááá "
-#: effects/ChangePitch.cpp:260
-#: effects/ChangeTempo.cpp:175
+#: effects/ChangePitch.cpp:260 effects/ChangeTempo.cpp:175
msgid "using SoundTouch, by Olli Parviainen"
msgstr "SoundTouch-áá¡ ááááá§áááááá, Olli Parviainen-áá¡ áááá "
@@ -4427,10 +4316,8 @@ msgstr "ááá®áááá á¢ááááá (ááá®áááá -ááá
msgid "Semitones in half-steps"
msgstr "ááá®áááá á¢ááááá ááá®áááá ááááá¯ááá¨á"
-#: effects/ChangePitch.cpp:326
-#: effects/ChangeSpeed.cpp:369
-#: effects/ChangeTempo.cpp:206
-#: effects/ChangeTempo.cpp:219
+#: effects/ChangePitch.cpp:326 effects/ChangeSpeed.cpp:369
+#: effects/ChangeTempo.cpp:206 effects/ChangeTempo.cpp:219
msgid "from"
msgstr "ááá"
@@ -4438,10 +4325,8 @@ msgstr "ááá"
msgid "From frequency in hertz"
msgstr "á¡áá®á¨áá á hertz-ááá¨á"
-#: effects/ChangePitch.cpp:331
-#: effects/ChangeSpeed.cpp:374
-#: effects/ChangeTempo.cpp:211
-#: effects/ChangeTempo.cpp:224
+#: effects/ChangePitch.cpp:331 effects/ChangeSpeed.cpp:374
+#: effects/ChangeTempo.cpp:211 effects/ChangeTempo.cpp:224
msgid "to"
msgstr "ááá"
@@ -4449,16 +4334,13 @@ msgstr "ááá"
msgid "To frequency in seconds"
msgstr "á¡áá®á¨áá ááá á¬ááááá¨á"
-#: effects/ChangePitch.cpp:338
-#: effects/ChangeSpeed.cpp:347
+#: effects/ChangePitch.cpp:338 effects/ChangeSpeed.cpp:347
#: effects/ChangeTempo.cpp:184
msgid "Percent Change:"
msgstr "áá ááªááá¢áá¡ á¨ááªááá:"
-#: effects/ChangePitch.cpp:343
-#: effects/ChangePitch.cpp:356
-#: effects/ChangeSpeed.cpp:358
-#: effects/ChangeTempo.cpp:195
+#: effects/ChangePitch.cpp:343 effects/ChangePitch.cpp:356
+#: effects/ChangeSpeed.cpp:358 effects/ChangeTempo.cpp:195
msgid "Percent Change"
msgstr "áá ááªááá¢áá¡ á¨ááªááá"
@@ -4470,8 +4352,7 @@ msgstr "Pitch-áá¡ á¨ááªááá..."
msgid "Changing Pitch"
msgstr "Pitch-áá¡ á¨ááªááá..."
-#: effects/ChangeSpeed.cpp:54
-#: effects/ChangeTempo.cpp:55
+#: effects/ChangeSpeed.cpp:54 effects/ChangeTempo.cpp:55
#, c-format
msgid "Applied effect: %s %.1f%%"
msgstr "ááááá§ááááá£áá áá¤áá¥á¢á: %s %.1f%%"
@@ -4618,9 +4499,9 @@ msgstr "ááá¬áááá¡ áá á:"
msgid "Decay Time"
msgstr "ááá¬áááá¡ áá á"
-#: effects/Compressor.cpp:530
-msgid "Normalize to 0dB after compressing"
-msgstr "0dB-ááá ááá áááááááªáá ááááá áá¡áá áááá¡ á¨ááááá"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
+msgstr ""
#: effects/Compressor.cpp:563
#, c-format
@@ -4657,8 +4538,7 @@ msgstr "%.1f:1"
msgid "Attack Time %.1f secs"
msgstr "á¨áá¢áááá¡ áá á %.1f á¬ááá"
-#: effects/Compressor.cpp:576
-#: effects/Compressor.cpp:579
+#: effects/Compressor.cpp:576 effects/Compressor.cpp:579
#, c-format
msgid "%.1f secs"
msgstr "%.1f á¬ááá"
@@ -4676,6 +4556,10 @@ msgstr "ááááá áá¡áá á"
msgid "Applying Dynamic Range Compression..."
msgstr "ááááááá£á á áááááááááá¡ ááááá áá¡ááá¡ áááá¥á¢áá£á ááá..."
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
msgstr ""
@@ -4695,21 +4579,6 @@ msgid "Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr "ááááá á¯ááá.\n"
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:193
-#: effects/Contrast.cpp:204
-#: effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr "áááááááá"
-
#: effects/Contrast.cpp:231
msgid "Contrast Analyzer"
msgstr "áááá¢á áá¡á¢áá¡ áááááááá¢áá á"
@@ -4718,18 +4587,14 @@ msgstr "áááá¢á áá¡á¢áá¡ áááááááá¢áá á"
msgid "Parameters"
msgstr "ááá áááá¢á ááá"
-#: effects/Contrast.cpp:242
-#: effects/ToneGen.cpp:355
+#: effects/Contrast.cpp:242 effects/ToneGen.cpp:355
#: toolbars/ControlToolBar.cpp:186
msgid "Start"
msgstr "ááá¬á§ááá"
-#: effects/Contrast.cpp:243
-#: effects/ToneGen.cpp:356
-#: toolbars/ControlToolBar.cpp:189
-#: toolbars/SelectionBar.cpp:156
-#: toolbars/SelectionBar.cpp:159
-#: toolbars/SelectionBar.cpp:262
+#: effects/Contrast.cpp:243 effects/ToneGen.cpp:356
+#: toolbars/ControlToolBar.cpp:189 toolbars/SelectionBar.cpp:156
+#: toolbars/SelectionBar.cpp:159 toolbars/SelectionBar.cpp:262
msgid "End"
msgstr "ááá¡áá¡á á£áá"
@@ -4749,6 +4614,11 @@ msgstr ""
msgid "Foreground end time"
msgstr ""
+#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
+#: effects/Contrast.cpp:289
+msgid "Measured"
+msgstr "áááááááá"
+
#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
msgid "Use selection"
msgstr ""
@@ -4773,8 +4643,7 @@ msgstr "á¨ááááá"
msgid "Contrast Result:"
msgstr "áááá¢á áá¡á¢áá¡ á¨ááááá:"
-#: Tags.cpp:840
-#: Tags.cpp:1990
+#: Tags.cpp:840 Tags.cpp:1990
msgid "Reset"
msgstr "ááá áááá¢á áááá¡ ááá ááá¥ááá"
@@ -4794,21 +4663,11 @@ msgstr ""
msgid "Help for WCAG2 Audio Contrast Analyzer"
msgstr ""
-#: toolbars/ControlToolBar.cpp:83
-msgid "Control"
-msgstr "áááá¢á ááá"
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
msgstr ""
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
-msgstr ""
-
-#: effects/Contrast.cpp:328
-#: effects/Contrast.cpp:336
-#: effects/Contrast.cpp:344
+#: effects/Contrast.cpp:328 effects/Contrast.cpp:336 effects/Contrast.cpp:344
#: effects/Contrast.cpp:352
msgid "Measure"
msgstr "ááááááá"
@@ -4821,8 +4680,7 @@ msgstr ""
msgid "Measured foreground level"
msgstr ""
-#: effects/Contrast.cpp:191
-#: effects/Contrast.cpp:202
+#: effects/Contrast.cpp:191 effects/Contrast.cpp:202
#, c-format
msgid "%.1f dB"
msgstr "%.1f dB"
@@ -4917,18 +4775,6 @@ msgstr ""
msgid "Data gathered"
msgstr ""
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr "á¤áááá¡ ááááááá"
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr "á¬ááá áááááá¡ ááááááá"
-
#: effects/DtmfGen.cpp:56
msgid "DTMF Tone Generator"
msgstr "DTMF á¢áááá¡ ááááá áá¢áá á"
@@ -4941,9 +4787,7 @@ msgstr "Salvo Ventura (2006)"
msgid "DTMF sequence:"
msgstr "DTMF áááá¡ááá ááá:"
-#: effects/DtmfGen.cpp:463
-#: effects/Noise.cpp:242
-#: effects/ToneGen.cpp:322
+#: effects/DtmfGen.cpp:463 effects/Noise.cpp:242 effects/ToneGen.cpp:322
#: effects/ToneGen.cpp:359
msgid "Amplitude (0-1)"
msgstr "áááááá¢á£áá (0-1)"
@@ -4964,9 +4808,7 @@ msgstr "áá£á¨ááááá¡ áªáááá:"
msgid "Tone duration:"
msgstr "á¢áááá¡ á®áááá á«áááááá:"
-#: effects/DtmfGen.cpp:499
-#: effects/DtmfGen.cpp:501
-#: effects/DtmfGen.cpp:577
+#: effects/DtmfGen.cpp:499 effects/DtmfGen.cpp:501 effects/DtmfGen.cpp:577
#: effects/DtmfGen.cpp:578
msgid "ms"
msgstr "ms"
@@ -4999,8 +4841,7 @@ msgstr "áá¥á"
#. i18n-hint: && in here is an escape character to get a single & on
#. * screen, so keep it as is
-#: effects/Echo.cpp:195
-#: effects/Repeat.cpp:200
+#: effects/Echo.cpp:195 effects/Repeat.cpp:200
msgid "by Dominic Mazzoni && Vaughan Johnson"
msgstr "Dominic Mazzoni && Vaughan Johnson"
@@ -5049,8 +4890,7 @@ msgstr "Cosine"
msgid "Cubic"
msgstr "áá£áá£á á"
-#: effects/Equalization.cpp:367
-#: effects/Equalization.cpp:416
+#: effects/Equalization.cpp:367 effects/Equalization.cpp:416
msgid "Equalization"
msgstr "áááááááááªáá"
@@ -5062,6 +4902,10 @@ msgstr "EQ á®ááá£ááá¡ á©áá¢ááá áááá¡ á¨ááªáá
msgid "custom"
msgstr "áááááááá£ááá£á á"
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr ""
+
#. i18n-hint: && in here is an escape character to get a single &
#. * on screen, so keep it as is
#: effects/Equalization.cpp:1101
@@ -5100,8 +4944,7 @@ msgstr "á¤ááá¢á áá¡ á¡ááá á«á:"
msgid "Select curve:"
msgstr "á®ááá£ááá¡ áááá á©ááá:"
-#: effects/Equalization.cpp:1273
-#: effects/Equalization.cpp:2512
+#: effects/Equalization.cpp:1273 effects/Equalization.cpp:2512
#: export/ExportMultiple.cpp:882
msgid "Save As..."
msgstr "á¨áááá®áá, á áááá áª..."
@@ -5114,8 +4957,7 @@ msgstr "áá á¢á§ááá"
msgid "Enter the desired name of the curve"
msgstr "á¨ááá§ááááá á®ááá£ááá¡ á¡áá¡á£á áááá á¡áá®ááá"
-#: effects/Equalization.cpp:2611
-#: export/ExportFFmpegDialogs.cpp:1220
+#: effects/Equalization.cpp:2611 export/ExportFFmpegDialogs.cpp:1220
msgid "Confirm Deletion"
msgstr "á¬áá¨ááá¡ ááááá¡á¢á£á ááá"
@@ -5215,8 +5057,7 @@ msgstr "á£á¤á á áá«ááá"
msgid "Heaviest"
msgstr "á£áá«áááá¡á"
-#: effects/Leveller.cpp:212
-#: effects/TruncSilence.cpp:331
+#: effects/Leveller.cpp:212 effects/TruncSilence.cpp:331
msgid "by Lynn Allan"
msgstr "Lynn Allan-áá¡ áááá "
@@ -5268,11 +5109,6 @@ msgstr "áááááá á¢áá á"
msgid "Analyser"
msgstr "áááááááá¢áá á"
-#: effects/LoadEffects.cpp:114
-#: toolbars/MixerToolBar.cpp:60
-msgid "Mixer"
-msgstr "ááá¥á¡áá á"
-
#: effects/LoadEffects.cpp:116
msgid "Simulator"
msgstr "á¡ááá£ááá¢áá á"
@@ -5289,8 +5125,7 @@ msgstr "áááá£ááá¢áá á"
msgid "Reverb"
msgstr "áá¥á"
-#: effects/LoadEffects.cpp:124
-#: effects/Phaser.cpp:208
+#: effects/LoadEffects.cpp:124 effects/Phaser.cpp:208
msgid "Phaser"
msgstr "á¤ááááá á"
@@ -5378,8 +5213,7 @@ msgstr "ááááá¢áá á"
msgid "Gate"
msgstr "ááááá"
-#: effects/LoadEffects.cpp:199
-#: effects/NoiseRemoval.cpp:725
+#: effects/LoadEffects.cpp:199 effects/NoiseRemoval.cpp:725
msgid "Noise Removal"
msgstr "á®áá ááááááá¡ ááá¬ááááá"
@@ -5514,15 +5348,9 @@ msgstr "á®áá ááááá¡ á¬áá¨áá"
msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr "áááá¥á¢áá£á ááá£áá áá¤áá¥á¢á: %s dc áá¤á¡áá¢áá¡ á¬áá¨áá = %s, áááááá¢á£ááá¡ ááá áááááááªáá = %s"
-#: effects/Normalize.cpp:74
-#: effects/Normalize.cpp:75
-msgid "false"
-msgstr "á§áááá"
-
#. i18n-hint: true here means that the option was
#. * selected. Opposite false if not selected
-#: effects/Normalize.cpp:74
-#: effects/Normalize.cpp:75
+#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
msgid "true"
msgstr "á¡á¬áá á"
@@ -5535,8 +5363,7 @@ msgstr ", ááá¥á¡ááááá£á á áááááá¢á£áá = %.1f d
msgid "Normalize"
msgstr "ááá áááááááªáá"
-#: effects/Normalize.cpp:351
-#: effects/Normalize.cpp:352
+#: effects/Normalize.cpp:351 effects/Normalize.cpp:352
msgid "Remove any DC offset (center on 0.0 vertically)"
msgstr "ááááá¡áááá á DC áá¤á¡áá¢áá¡ á¬áá¨áá (áªááá¢á áá ááá 0.0 ááá á¢ááááá£á áá)"
@@ -5581,23 +5408,19 @@ msgstr "áá¨á ááá/ááá¢áá"
msgid "Dry Wet"
msgstr "áá¨á ááá ááá¢áá"
-#: effects/Phaser.cpp:236
-#: effects/Wahwah.cpp:221
+#: effects/Phaser.cpp:236 effects/Wahwah.cpp:221
msgid "LFO Frequency (Hz):"
msgstr "LFO á¡áá®á¨áá á (Hz):"
-#: effects/Phaser.cpp:239
-#: effects/Wahwah.cpp:224
+#: effects/Phaser.cpp:239 effects/Wahwah.cpp:224
msgid "LFO frequency in hertz"
msgstr "LFO á¡áá®á¨áá á á°áá áªááá¨á"
-#: effects/Phaser.cpp:241
-#: effects/Wahwah.cpp:226
+#: effects/Phaser.cpp:241 effects/Wahwah.cpp:226
msgid "LFO Start Phase (deg.):"
msgstr "LFO á¤áááá¡ ááá¬á§ááá (deg.):"
-#: effects/Phaser.cpp:244
-#: effects/Wahwah.cpp:229
+#: effects/Phaser.cpp:244 effects/Wahwah.cpp:229
msgid "LFO start phase in degrees"
msgstr "LFO á¡áá¬á§áá¡á á¤ááá áá ááá£á¡ááá¨á"
@@ -5605,8 +5428,7 @@ msgstr "LFO á¡áá¬á§áá¡á á¤ááá áá ááá£á¡ááá¨á"
msgid "Depth:"
msgstr "á¡áá¦á áá"
-#: effects/Phaser.cpp:249
-#: effects/Wahwah.cpp:234
+#: effects/Phaser.cpp:249 effects/Wahwah.cpp:234
msgid "Depth in percent"
msgstr "á¡áá¦á áá áá ááªááá¢á£ááá"
@@ -5659,8 +5481,7 @@ msgstr "áááááá áá %d-á¯áá "
msgid "Tracks are too long to repeat the selection."
msgstr "á¢á ááááá á«ááááá áá á«áááá ááááá¨áááá¡ ááá¡ááááá ááááá."
-#: effects/Repeat.cpp:77
-#: effects/Repeat.cpp:187
+#: effects/Repeat.cpp:77 effects/Repeat.cpp:187
msgid "Repeat"
msgstr "áááááá ááá"
@@ -5678,8 +5499,7 @@ msgstr "áá®ááá ááááá¨áááá¡ á¡ááá á«á:"
#. i18n-hint: Name of time display format that shows time in hours, minutes
#. * and seconds
-#: effects/Repeat.cpp:262
-#: widgets/TimeTextCtrl.cpp:270
+#: effects/Repeat.cpp:262 widgets/TimeTextCtrl.cpp:270
msgid "hh:mm:ss"
msgstr "á¡á¡:á¬á¬:á¬á¬"
@@ -5803,8 +5623,7 @@ msgstr ""
msgid "Applied effect: Generate %s wave %s, frequency = %.2f Hz, amplitude = %.2f, %.6lf seconds"
msgstr "ááááá¢ááá£áá áá¤áá¥á¢á: ááááá ááªáá %s á¢ááá¦á %s, á¡áá®á¨áá á = %.2f Hz,áááááá¢á£áá = %.2f, %.6lf á¬ááááá"
-#: effects/ToneGen.cpp:69
-#: widgets/Meter.cpp:416
+#: effects/ToneGen.cpp:69 widgets/Meter.cpp:416
msgid "Linear"
msgstr "áááááá á£áá"
@@ -5836,8 +5655,7 @@ msgstr "ááááááááá á¢ááá¦á"
msgid "Square, no alias"
msgstr "ááááá áá¢á, ááá¡á¬áá áááá¡ ááá áá¨á"
-#: effects/ToneGen.cpp:321
-#: effects/ToneGen.cpp:357
+#: effects/ToneGen.cpp:321 effects/ToneGen.cpp:357
msgid "Frequency (Hz)"
msgstr "á¡áá®á¨áá á (Hz)"
@@ -5885,30 +5703,44 @@ msgstr "á¢áááá¡ ááááá ááªáá"
msgid "All tracks must have the same sample rate"
msgstr "á§áááá á¢á ááá¡ á¡áááááá¡ ááááááá á áááá¤ááªáááá¢á á£ááá áááá©áááá¡"
-#: effects/TruncSilence.cpp:113
-#: effects/TruncSilence.cpp:321
+#: effects/TruncSilence.cpp:113 effects/TruncSilence.cpp:321
msgid "Truncate Silence"
msgstr "á¡áá©á£ááá¡ ááááá á"
-#: effects/TruncSilence.cpp:345
-msgid "Max silence duration:"
-msgstr "á¡áá©á£ááá¡ ááá¥á¡ á®áááá á«áááááá:"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr ""
+
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
+msgstr ""
-#: effects/TruncSilence.cpp:348
-#: prefs/AudioIOPrefs.cpp:196
-#: prefs/AudioIOPrefs.cpp:199
-#: prefs/MidiIOPrefs.cpp:174
+#: effects/TruncSilence.cpp:348 prefs/AudioIOPrefs.cpp:196
+#: prefs/AudioIOPrefs.cpp:199 prefs/MidiIOPrefs.cpp:174
#: prefs/MidiIOPrefs.cpp:177
msgid "milliseconds"
msgstr "ááááá¬ááááá"
+#: effects/TruncSilence.cpp:345
+msgid "Max silence duration:"
+msgstr "á¡áá©á£ááá¡ ááá¥á¡ á®áááá á«áááááá:"
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ""
+
#: effects/TruncSilence.cpp:350
msgid "Threshold for silence:"
msgstr "á¡áá©á£ááá¡ áá¦ááá á:"
-#: effects/TruncSilence.cpp:374
-msgid " Duration must be at least 1 millisecond"
-msgstr "á®áááá á«áááááá á£ááá áá§áá¡ 1 ááááá¬ááá áááááª"
+#: effects/TruncSilence.cpp:506
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
+msgstr ""
#: effects/TruncSilence.h:28
msgid "Truncate Silence..."
@@ -5918,17 +5750,55 @@ msgstr "á¡áá©á£ááá¡ ááááá á..."
msgid "Truncating Silence..."
msgstr "á¡áá©á£ááá¡ ááááá á..."
-#: effects/VST/VSTEffect.cpp:172
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "áá¬á£á®ááá á, VST áá¤áá¥á¢áá¡ á¨áá¡á á£áááá á¨áá£á«ááááááá á¡á¢áá áá á¢á áááááá, á áááá¡á᪠áááááááá£ááá£á á áá á®ááá áá á¢á ááááá ááá ááá®áááá."
+#: effects/ladspa/LadspaEffect.cpp:615 effects/lv2/LV2Effect.cpp:823
+msgid "Effect Settings"
+msgstr "áá¤áá¥á¢áá¡ ááá áááá¢á ááá"
+
+#: effects/ladspa/LadspaEffect.cpp:580 effects/ladspa/LadspaEffect.cpp:588
+#: prefs/GUIPrefs.cpp:51 prefs/QualityPrefs.cpp:72
+msgid "None"
+msgstr "áá áªáá ááá"
+
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
-#: effects/VST/VSTEffect.cpp:187
-msgid "Can't process replacing"
-msgstr "á¨áá£á«ááááááá á©ááááªáááááá¡ áááá£á¨ááááá"
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
-#: effects/VST/VSTEffect.cpp:410
-msgid "VST Plug-in parameters:"
-msgstr "VST áááá£ááá¡ ááá áááá¢á ááá:"
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr ""
#: effects/Wahwah.cpp:61
#, c-format
@@ -5968,54 +5838,34 @@ msgid "Applying Wahwah"
msgstr "Wahwah-áá¡ áááá¥á¢áá£á ááá"
#: effects/audiounits/AudioUnitEffect.cpp:138
-#: effects/ladspa/LadspaEffect.cpp:176
-#: effects/lv2/LV2Effect.cpp:191
+#: effects/ladspa/LadspaEffect.cpp:176 effects/lv2/LV2Effect.cpp:191
#, c-format
msgid "Performing Effect: %s"
msgstr "áá¤áá¡á¢áá¡ á¨áá¡á á£áááá: %s"
-#: effects/ladspa/LadspaEffect.cpp:196
-#: effects/lv2/LV2Effect.cpp:211
+#: effects/ladspa/LadspaEffect.cpp:196 effects/lv2/LV2Effect.cpp:211
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr "áá¬á£á®ááá á, áááá£ááá¡ áá¤áá¥á¢áá¡ á¨áá¡á£áááá á¨áá£á«ááááááá á¡á¢áá áá á¢á áááááá, á¡ááá᪠á¢á áááá¡ áááááááá£ááá£á á áá á®ááá áá áááá®áááá."
-#: effects/ladspa/LadspaEffect.cpp:580
-#: effects/ladspa/LadspaEffect.cpp:588
-#: prefs/GUIPrefs.cpp:51
-#: prefs/QualityPrefs.cpp:72
-msgid "None"
-msgstr "áá áªáá ááá"
-
-#: effects/ladspa/LadspaEffect.cpp:582
-#: effects/lv2/LV2Effect.cpp:798
+#: effects/ladspa/LadspaEffect.cpp:582 effects/lv2/LV2Effect.cpp:798
#: effects/vamp/VampEffect.cpp:395
msgid "Author: "
msgstr "ááá¢áá á:"
-#: effects/ladspa/LadspaEffect.cpp:615
-#: effects/lv2/LV2Effect.cpp:823
-msgid "Effect Settings"
-msgstr "áá¤áá¥á¢áá¡ ááá áááá¢á ááá"
-
-#: effects/ladspa/LadspaEffect.cpp:710
-#: effects/ladspa/LadspaEffect.cpp:713
-#: effects/lv2/LV2Effect.cpp:834
-#: effects/lv2/LV2Effect.cpp:837
+#: effects/ladspa/LadspaEffect.cpp:710 effects/ladspa/LadspaEffect.cpp:713
+#: effects/lv2/LV2Effect.cpp:834 effects/lv2/LV2Effect.cpp:837
msgid "Length (seconds)"
msgstr "á¡ááá á«á (á¬ááááá)"
-#: effects/lv2/LV2Effect.cpp:849
-#: effects/lv2/LV2Effect.cpp:852
+#: effects/lv2/LV2Effect.cpp:849 effects/lv2/LV2Effect.cpp:852
msgid "Note length (seconds)"
msgstr "á¨áááá¨áááá¡ á¡ááá á«á (á¬ááááá)"
-#: effects/lv2/LV2Effect.cpp:860
-#: effects/lv2/LV2Effect.cpp:863
+#: effects/lv2/LV2Effect.cpp:860 effects/lv2/LV2Effect.cpp:863
msgid "Note velocity"
msgstr "á¨áááá¨áááá¡ á¡áá©á¥áá á"
-#: effects/lv2/LV2Effect.cpp:871
-#: effects/lv2/LV2Effect.cpp:874
+#: effects/lv2/LV2Effect.cpp:871 effects/lv2/LV2Effect.cpp:874
msgid "Note key"
msgstr "á¨áááá¨áááá¡ ááá¡áá¦ááá"
@@ -6023,8 +5873,7 @@ msgstr "á¨áááá¨áááá¡ ááá¡áá¦ááá"
msgid "Applying Nyquist Effect..."
msgstr "Nyquist áá¤áá¥á¢áá¡ áááá¥á¢áá£á ááá..."
-#: effects/nyquist/Nyquist.cpp:264
-#: effects/nyquist/Nyquist.cpp:326
+#: effects/nyquist/Nyquist.cpp:264 effects/nyquist/Nyquist.cpp:326
msgid "Nyquist Prompt..."
msgstr "Nyquist Prompt..."
@@ -6044,8 +5893,7 @@ msgstr "Nyquist"
msgid "Nyquist Output: "
msgstr "Nyquist ááááááá¢ááá: "
-#: effects/nyquist/Nyquist.cpp:603
-#: effects/nyquist/Nyquist.cpp:614
+#: effects/nyquist/Nyquist.cpp:603 effects/nyquist/Nyquist.cpp:614
msgid "Nyquist returned the value:"
msgstr "Nyquist-áá ááááá á£áá áááá¨ááááááá:"
@@ -6082,8 +5930,7 @@ msgstr " - Vamp áá£ááá áááááááá¡ áááá£áá"
msgid "Plugin Settings"
msgstr "áááá£ááá¡ ááá áááá¢á ááá"
-#: effects/vamp/VampEffect.cpp:442
-#: effects/vamp/VampEffect.cpp:448
+#: effects/vamp/VampEffect.cpp:442 effects/vamp/VampEffect.cpp:448
msgid "Program"
msgstr "áá ááá ááá"
@@ -6154,8 +6001,7 @@ msgstr "- ááá á¯áááá"
msgid "Mixer Panel"
msgstr "ááá¥á¡áá áá¡ áááá"
-#: export/Export.cpp:1078
-#: export/Export.cpp:1125
+#: export/Export.cpp:1078 export/Export.cpp:1125
#, c-format
msgid "Output Channels: %2d"
msgstr "ááááááá¢ááá áá á®ááá: %2d"
@@ -6185,8 +6031,7 @@ msgstr "áááááªááááá ááá£áááá¨áá áááá
msgid "(external program)"
msgstr "(ááá á áá ááá ááá)"
-#: export/ExportCL.cpp:253
-#: export/ExportPCM.cpp:457
+#: export/ExportCL.cpp:253 export/ExportPCM.cpp:457
#, c-format
msgid "Cannot export audio to %s"
msgstr "á¨áá£á«ááááááá áá£áááá¡ áá¥á¡ááá á¢á %s-áá"
@@ -6203,9 +6048,21 @@ msgstr "ááááááá áá ááá¥á¢áá¡ áá á«ááááá
msgid "Command Output"
msgstr "áá á«áááááá¡ ááááááá¢ááá"
-#: export/ExportFFmpeg.cpp:59
+#: export/ExportFFmpeg.cpp:61
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
#: export/ExportFFmpeg.cpp:394
@@ -6229,8 +6086,7 @@ msgstr "ááááá¨áá£áá áá£áááá¡ áá¥á¡ááá á¢á
msgid "Exporting entire file as %s"
msgstr "ááááááá á¤ááááá¡ áá¥á¡ááá á¢á á áá¤áá ᪠%s"
-#: export/ExportFFmpeg.cpp:702
-#: export/ExportMP3.cpp:1920
+#: export/ExportFFmpeg.cpp:702 export/ExportMP3.cpp:1920
msgid "Invalid sample rate"
msgstr "á¡áááááá¡ áá áá¡á¬áá á áááá¤ááªáááá¢á"
@@ -6248,13 +6104,11 @@ msgid "The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
msgstr "áá ááá¥á¢áá¡ á¡áááááá¡á (%d) áá ááá¢á£á á áááá¤ááªáááá¢áá¡ (%d kbps) ááááááááªáá áá®áá ááááá ááá áá áá áá¡\n"
"áááááááá á ááááááá¢áááá¡ á¤ááááá¡ á¤áá ááá¢áá."
-#: export/ExportFFmpeg.cpp:721
-#: export/ExportMP3.cpp:1939
+#: export/ExportFFmpeg.cpp:721 export/ExportMP3.cpp:1939
msgid "You may resample to one of the rates below."
msgstr "á¨áááá«áááá áááá®áááááá áá á-áá áá áááá¤ááªáááá¢áá¡ á áá¡áááááá ááá."
-#: export/ExportFFmpeg.cpp:749
-#: export/ExportMP3.cpp:1962
+#: export/ExportFFmpeg.cpp:749 export/ExportMP3.cpp:1962
msgid "Sample Rates"
msgstr "á¡áááááá¡ á0ááá¤ááªáááá¢ááá"
@@ -6266,12 +6120,9 @@ msgstr "AC3 ááá áááá¢á áááá¡ áááá¡áááá á"
msgid "AC3 Export Setup"
msgstr "AC3 áá¥á¡ááá á¢áá¡ ááááá ááá"
-#: export/ExportFFmpegDialogs.cpp:121
-#: export/ExportFFmpegDialogs.cpp:245
-#: export/ExportFFmpegDialogs.cpp:314
-#: export/ExportFFmpegDialogs.cpp:385
-#: export/ExportFFmpegDialogs.cpp:937
-#: export/ExportMP2.cpp:133
+#: export/ExportFFmpegDialogs.cpp:121 export/ExportFFmpegDialogs.cpp:245
+#: export/ExportFFmpegDialogs.cpp:314 export/ExportFFmpegDialogs.cpp:385
+#: export/ExportFFmpegDialogs.cpp:937 export/ExportMP2.cpp:133
msgid "Bit Rate:"
msgstr "ááá¢á£á á áááá¤ááªáááá¢á:"
@@ -6283,6 +6134,10 @@ msgstr "AAC ááá áááá¢á áááá¡ áááá¡ááá¦áá á"
msgid "AAC Export Setup"
msgstr "AAC áá¥á¡ááá á¢áá¡ ááááá ááá"
+#: export/ExportFFmpegDialogs.cpp:940 export/ExportOGG.cpp:86
+msgid "Quality:"
+msgstr "á®áá áá¡á®á"
+
#: export/ExportFFmpegDialogs.cpp:217
msgid "Specify AMR-NB Options"
msgstr "AMR-NB ááá áááá¢á áááá¡ áááá¡ááá¦áá á"
@@ -6389,8 +6244,7 @@ msgstr "á§áááá ááááááá¡ á©áááááá"
msgid "Options"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:931
-#: prefs/GUIPrefs.cpp:166
+#: export/ExportFFmpegDialogs.cpp:931 prefs/GUIPrefs.cpp:166
msgid "Language:"
msgstr "ááá:"
@@ -6424,13 +6278,9 @@ msgstr "ááá¢á£á á áááá¤ááªáááá¢á (ááá¢ááá
"0 -ááá¢áááá¢á£á á\n"
"á áááááááááá£áá - 19200"
-#: export/ExportFFmpegDialogs.cpp:940
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr "á®áá áá¡á®á"
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+#, fuzzy
+msgid "Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
@@ -6453,13 +6303,14 @@ msgstr "á¡áááááá¡ áááá¤ááªáááá¢á (Hz)\n"
msgid "Cutoff Bandwidth:"
msgstr "Cutoff Bandwidth:"
-#: export/ExportFFmpegDialogs.cpp:947
+#: export/ExportFFmpegDialogs.cpp:936
+#, fuzzy
msgid "Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr "áá£áááá¡ áááá áá¡ á¡áá®á¨áá áá¡ ááá¨ááááá¡ á¡ááá á¢á§á (Hz)\n"
"ááááá§áá¤áááááál\n"
-"0 - ááá¢áááá¢á£á á\n"
+"0 - ááá¢áááá¢á£á á"
#: export/ExportFFmpegDialogs.cpp:949
msgid "Profile:"
@@ -6681,13 +6532,13 @@ msgstr "M4A (AAC) á¤áááááá (FFmpeg)"
msgid "AC3 Files (FFmpeg)"
msgstr "AC3 Fá¤áááááá (FFmpeg)"
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
-msgstr "AMR (narrow band) á¤áááááá (FFmpeg)"
-
#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
-msgstr "AMR (wide band) á¤áááááá (FFmpeg)"
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
+msgstr ""
#: export/ExportFFmpegDialogs.h:57
msgid "WMA (version 2) Files (FFmpeg)"
@@ -6797,6 +6648,17 @@ msgstr "ááá¢á£á á á¡áá¦á áá:"
msgid "FLAC Files"
msgstr "FLAC á¤áááááá"
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
#: export/ExportFLAC.cpp:312
msgid "Exporting the selected audio as FLAC"
msgstr "ááááá¨áá£áá áá£áááá¡ áá¥á¡ááá á¢á FLAC á¤áá ááá¢á¨á"
@@ -6821,9 +6683,7 @@ msgstr "MP2 á¤áááááá"
msgid "Cannot export MP2 with this sample rate and bit rate"
msgstr "á¨áá£á«ááááááá MP2 áá¥á¡ááá á¢á ááááááá á á¡áááááá¡á áá ááá¢áá¡ áááá¤ááªáááá¢áá"
-#: export/ExportMP2.cpp:243
-#: export/ExportMP3.cpp:1771
-#: export/ExportOGG.cpp:186
+#: export/ExportMP2.cpp:243 export/ExportMP3.cpp:1771 export/ExportOGG.cpp:186
msgid "Unable to open target file for writing"
msgstr "á¨áá£á«ááááááá á¡áááááá á¤ááááá¡ ááá®á¡áá á©áá¡áá¬áá áá"
@@ -6837,9 +6697,7 @@ msgstr "ááááá¨áá£áá áá£áááá¡ áá¥á¡ááá á¢á
msgid "Exporting entire file at %d kbps"
msgstr "ááááááá á¤ááááá¡ áá¥á¡ááá á¢á %d ááá¬áá"
-#: export/ExportMP3.cpp:221
-#: export/ExportMP3.cpp:239
-#: export/ExportMP3.cpp:253
+#: export/ExportMP3.cpp:221 export/ExportMP3.cpp:239 export/ExportMP3.cpp:253
msgid "kbps"
msgstr "ááá¬"
@@ -6855,9 +6713,7 @@ msgstr "(ááá¢áá á á¤áááááá)"
msgid "Fast"
msgstr "á¡á¬á áá¤á"
-#: export/ExportMP3.cpp:244
-#: export/ExportMP3.cpp:250
-#: prefs/GUIPrefs.cpp:41
+#: export/ExportMP3.cpp:244 export/ExportMP3.cpp:250 prefs/GUIPrefs.cpp:41
#: prefs/GUIPrefs.cpp:49
msgid "Standard"
msgstr "á¡á¢ááááá á¢á£áá"
@@ -6902,8 +6758,7 @@ msgstr "á¡áá¨á£ááá"
msgid "Constant"
msgstr "áááá¡á¢ááá¢á"
-#: export/ExportMP3.cpp:373
-#: prefs/QualityPrefs.cpp:42
+#: export/ExportMP3.cpp:373 prefs/QualityPrefs.cpp:42
#: prefs/QualityPrefs.cpp:43
msgid "Quality"
msgstr "á®áá áá¡á®á"
@@ -7024,10 +6879,8 @@ msgstr "áá ááá¥á¢áá¡ á¡áááááá¡ (%d) áá ááá¢á
msgid "MP3 export library not found"
msgstr ""
-#: export/ExportMultiple.cpp:96
-#: export/ExportMultiple.cpp:426
-#: export/ExportMultiple.cpp:667
-#: export/ExportMultiple.cpp:834
+#: export/ExportMultiple.cpp:96 export/ExportMultiple.cpp:426
+#: export/ExportMultiple.cpp:667 export/ExportMultiple.cpp:834
msgid "Export Multiple"
msgstr "áá ááááá¯áá ááá áá¥á¡ááá á¢á"
@@ -7057,11 +6910,6 @@ msgstr "ááá áááá¢á ááá..."
msgid "Export location:"
msgstr "áááááá ááááá¡ áá¥á¡ááá á¢áá ááá:"
-#: export/ExportMultiple.cpp:245
-#: prefs/DirectoriesPrefs.cpp:92
-msgid "Choose..."
-msgstr "áá á©ááá..."
-
#: export/ExportMultiple.cpp:246
msgid "Create"
msgstr "á¨áá¥ááá"
@@ -7070,8 +6918,7 @@ msgstr "á¨áá¥ááá"
msgid "Split files based on:"
msgstr "á¤ááááááá¡ ááá§áá¤á:"
-#: export/ExportMultiple.cpp:262
-#: export/ExportMultiple.cpp:264
+#: export/ExportMultiple.cpp:262 export/ExportMultiple.cpp:264
msgid "Labels"
msgstr "ááá ááá§áááá¡ ááá®ááááá"
@@ -7087,22 +6934,15 @@ msgstr "ááá áááá á¤ááááá¡ á¡áá®ááá:"
msgid "First file name"
msgstr "ááá áááá á¤ááááá¡ á¡áá®ááá:"
-#: export/ExportMultiple.cpp:288
-#: export/ExportMultiple.cpp:290
-msgid "Tracks"
-msgstr "á¢á ááááá"
-
#: export/ExportMultiple.cpp:297
msgid "Name files:"
msgstr "á¤ááááááá¡ á¡áá®áááááá¡ ááá á¥áááá:"
-#: export/ExportMultiple.cpp:306
-#: export/ExportMultiple.cpp:308
+#: export/ExportMultiple.cpp:306 export/ExportMultiple.cpp:308
msgid "Using Label/Track Name"
msgstr "ááá ááá§áá¡/á¢á áááá¡ á¡áá®áááá¡ ááááá§ááááá"
-#: export/ExportMultiple.cpp:314
-#: export/ExportMultiple.cpp:316
+#: export/ExportMultiple.cpp:314 export/ExportMultiple.cpp:316
msgid "Numbering consecutively"
msgstr "ááááááá áááá áááááá áá"
@@ -7127,6 +6967,35 @@ msgstr "\"%s\" á¬áá ááá¢áááá á¨ááá¥ááá."
msgid "Choose a location to save the exported files"
msgstr "áá¥á¡ááá á¢áá ááá£áá á¤ááááááá¡ á¨áá¡áááá®á áááááá ááááá¡ áá á©ááá"
+#: export/ExportMultiple.cpp:524
+#, c-format
+msgid "Successfully exported the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:527
+#, c-format
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr ""
+
#: export/ExportMultiple.cpp:539
#, c-format
msgid "\"%s\" doesn't exist.\n"
@@ -7136,23 +7005,10 @@ msgstr "\"%s\" áá áá á¡ááááá¡\n"
"\n"
"áá¡á£á á á¨áá¥ááá?"
-#: export/ExportMultiple.cpp:637
-#: export/ExportMultiple.cpp:772
+#: export/ExportMultiple.cpp:637 export/ExportMultiple.cpp:772
msgid "Edit metadata"
msgstr "ááá¢ááááááªáááááá¡ á áááá¥á¢áá ááá"
-#: export/ExportMultiple.cpp:664
-#: export/ExportMultiple.cpp:831
-#, c-format
-msgid "Successfully exported %d file(s)."
-msgstr "%d á¤ááááááá¡ á¬áá ááá¢ááá£áá áá¥á¡ááá á¢á."
-
-#: export/ExportMultiple.cpp:665
-#: export/ExportMultiple.cpp:832
-#, c-format
-msgid "Something went wrong after exporting %d file(s)."
-msgstr "%d á¤ááá(áá)áá¡ áá¥á¡ááá á¢áá¡áá¡ á áá¦á᪠áááááááá."
-
#: export/ExportMultiple.cpp:881
#, c-format
msgid "Label %s is not a legal file name. You cannot use any of: %s\n"
@@ -7192,8 +7048,7 @@ msgstr "áá áááááá áá¡áá ááá£áá áá¥á¡ááá
msgid "Header:"
msgstr "á°áááá á:"
-#: export/ExportPCM.cpp:195
-#: import/ImportRaw.cpp:366
+#: export/ExportPCM.cpp:195 import/ImportRaw.cpp:366
msgid "Encoding:"
msgstr "ááááá ááá:"
@@ -7261,8 +7116,7 @@ msgstr ""
msgid "Your file will be exported as a GSM 6.10 WAV file.\n"
msgstr ""
-#: import/Import.cpp:156
-#: import/ImportMP3.cpp:47
+#: import/Import.cpp:156 import/ImportMP3.cpp:47
msgid "MP3 files"
msgstr "MP3 á¤áááááá"
@@ -7434,6 +7288,10 @@ msgstr ""
msgid "FLAC files"
msgstr "FLAC á¤áááááá"
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr ""
+
#: import/ImportLOF.cpp:95
msgid "List of Files in basic text format"
msgstr "á«áá ááááá á¢áá¥á¡á¢á£á á á¤áá ááá¢áá¡ á¤ááááá á¡áá"
@@ -7444,9 +7302,7 @@ msgid "Invalid window offset in LOF file."
msgstr "LOF á¤áááá¨á áá áá¡á¬áá á á¤ááá¯á áá¡ áá¤á¡áá¢áá."
#. i18n-hint: You do not need to translate "LOF"
-#: import/ImportLOF.cpp:316
-#: import/ImportLOF.cpp:337
-#: import/ImportLOF.cpp:418
+#: import/ImportLOF.cpp:316 import/ImportLOF.cpp:337 import/ImportLOF.cpp:418
#: import/ImportLOF.cpp:439
msgid "LOF Error"
msgstr "LOF á¨ááªáááá"
@@ -7469,9 +7325,7 @@ msgstr "LOF á¤áááá¨á áá áá¡á¬áá á á¢á áááá¡ á
msgid ": Filename too short."
msgstr ": á¤ááááá¡ á¡áá®ááá á«ááááá áááááá."
-#: import/ImportMIDI.cpp:31
-#: import/ImportMIDI.cpp:39
-#: import/ImportMIDI.cpp:45
+#: import/ImportMIDI.cpp:31 import/ImportMIDI.cpp:39 import/ImportMIDI.cpp:45
#: import/ImportMIDI.cpp:53
msgid "Could not open file "
msgstr "á¨áá£á«ááááááá á¤ááááá¡ ááá®á¡áá"
@@ -7508,8 +7362,7 @@ msgstr "á¨ááá áááááá£á á á¨ááªáááá"
msgid "WAV, AIFF, and other uncompressed types"
msgstr "WAV, AIFF, áá á¡á®áá áá áááááá áá¡áá ááá£áá á¢ááááá"
-#: import/ImportPlugin.h:142
-#: import/ImportRaw.cpp:203
+#: import/ImportPlugin.h:142 import/ImportRaw.cpp:203
#, c-format
msgid "Importing %s"
msgstr "%s ááááá á¢áá ááá"
@@ -7596,155 +7449,59 @@ msgstr "Waveform ááááááá ááá"
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr "%s %2.0f%% ááá¡á á£áááá£ááá. ááá£á¬áááá£ááá ááááááááá¡ á¤ááá£á¡áá¡ á¬áá á¢áááá¡ á¨áá¡ááªáááááá."
-#: prefs/AudioIOPrefs.cpp:41
-#: prefs/AudioIOPrefs.cpp:42
-#: prefs/MidiIOPrefs.cpp:44
-#: prefs/MidiIOPrefs.cpp:45
-msgid "Audio I/O"
-msgstr "áá£ááá I/O"
+#: prefs/BatchPrefs.cpp:55 prefs/BatchPrefs.cpp:56
+msgid "Batch"
+msgstr "á¯áá£á¤á£á á"
-#: prefs/AudioIOPrefs.cpp:102
-#: prefs/MidiIOPrefs.cpp:99
-msgid "1 (Mono)"
-msgstr "1 (áááá)"
+#: prefs/BatchPrefs.cpp:77 prefs/GUIPrefs.cpp:92
+msgid "Behaviors"
+msgstr "á¥áªááá"
-#: prefs/AudioIOPrefs.cpp:103
-#: prefs/MidiIOPrefs.cpp:100
-msgid "2 (Stereo)"
-msgstr "2 (á¡á¢áá áá)"
+#: prefs/BatchPrefs.cpp:80
+msgid "&Don't apply effects in batch mode"
+msgstr "áá áááá¥á¢áá£á á áá¤áá¥á¢ááá á¯áá£á¤á£á á ááááá¨á"
-#: prefs/AudioIOPrefs.cpp:117
-#: prefs/MidiIOPrefs.cpp:114
-msgid "Playback"
-msgstr "ááááá á"
+#: prefs/BatchPrefs.cpp:83 prefs/GUIPrefs.cpp:132
+msgid "Cl&eanSpeech Mode (Customized GUI)"
+msgstr "Cl&eanSpeech á ááááá (ááá áááá£áá GUI)"
-#: prefs/AudioIOPrefs.cpp:121
-#: prefs/AudioIOPrefs.cpp:139
-#: prefs/MidiIOPrefs.cpp:118
-#: prefs/MidiIOPrefs.cpp:136
-#: toolbars/DeviceToolBar.cpp:57
-msgid "Device"
-msgstr "ááá¬á§ááááááá"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:34 prefs/GUIPrefs.cpp:35
+msgid "Interface"
+msgstr "ááá¢áá á¤ááá¡á"
+
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
+msgstr ""
-#: prefs/AudioIOPrefs.cpp:124
-#: prefs/MidiIOPrefs.cpp:121
+#: prefs/AudioIOPrefs.cpp:124 prefs/MidiIOPrefs.cpp:121
msgid "Using:"
msgstr "ááááá§áááááá:"
-#: prefs/AudioIOPrefs.cpp:125
-#: prefs/MidiIOPrefs.cpp:122
-msgid "Portaudio v"
-msgstr "Portaudio v"
+#: prefs/AudioIOPrefs.cpp:117 prefs/MidiIOPrefs.cpp:114
+msgid "Playback"
+msgstr "ááááá á"
-#: prefs/AudioIOPrefs.cpp:135
-#: prefs/MidiIOPrefs.cpp:132
+#: prefs/AudioIOPrefs.cpp:135 prefs/MidiIOPrefs.cpp:132
msgid "Recording"
msgstr "á©áá¬áá á"
-#: prefs/AudioIOPrefs.cpp:141
-#: prefs/MidiIOPrefs.cpp:138
+#: prefs/AudioIOPrefs.cpp:141 prefs/MidiIOPrefs.cpp:138
msgid "Channels"
msgstr "áá á®ááá"
-#: prefs/AudioIOPrefs.cpp:147
-#: prefs/MidiIOPrefs.cpp:144
-msgid "Playthrough"
-msgstr "ááááá á"
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr "áááá áá£ááááááªáá: á¡á®áá á¢á áááááá¡ &ááááá á áá®ááá¡ á©áá¬áá áá¡ ááá ááááá£á áá"
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr "&ááá¬á§áááááááá¡ ááááá á: áá®ááá á¢á áááá¡ ááááá á áá á©áá¬áá á"
-
-#: prefs/AudioIOPrefs.cpp:154
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr "&ááá¬á§áááááááá¡ ááááá á: áá®ááá á¢á áááá¡ ááááá á áá á©áá¬áá á"
-
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr "&ááá¬á§áááááááá¡ ááááá á: áá®ááá á¢á áááá¡ ááááá á áá á©áá¬áá á áá ááááá¢áá áááá"
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr "(áááá ááá á©áá¬áá áá¡áá¡ \"á¡á¢áá áá á¨áá ááá\")"
-
-#: prefs/AudioIOPrefs.cpp:168
-#: prefs/MidiIOPrefs.cpp:193
-msgid "Effects Preview"
-msgstr "áá¤áá¥á¢áá¡ ááááááááá ááá"
-
-#: prefs/AudioIOPrefs.cpp:171
-msgid "Length of preview:"
-msgstr "ááááááááá áááá¡ á áááááá¡ á¡ááá á«á:"
-
-#: prefs/AudioIOPrefs.cpp:176
-#: prefs/MidiIOPrefs.cpp:157
-msgid "Cut Preview"
-msgstr "áá¡ááááá¡ ááááá á"
-
-#: prefs/AudioIOPrefs.cpp:179
-msgid "Preview before cut region:"
-msgstr "áá áá¡ ááááá áááá ááááááááá ááá:"
-
-#: prefs/AudioIOPrefs.cpp:181
-msgid "Preview after cut region:"
-msgstr "ááááá áá¡ ááá á ááááááááá ááá:"
-
-#: prefs/AudioIOPrefs.cpp:189
-#: prefs/MidiIOPrefs.cpp:167
-msgid "Latency"
-msgstr "ááá¢áááªáá"
-
-#: prefs/AudioIOPrefs.cpp:195
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
-msgstr "ááá¡ááªááááá áá£ááá:\n"
-"(á á᪠ááá¦áááá = ááá¢áá ááá¢áááªáá)"
-
-#: prefs/AudioIOPrefs.cpp:198
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr "ááá¢áááªááá¡ ááá¡á¬áá ááá\n"
-"(ááááá¢áá£á á = á£ááá)"
-
-#: prefs/AudioIOPrefs.cpp:203
-msgid "Seek Time when playing"
-msgstr "áá ááá¡ á«áááá ááááá áá¡áá¡"
-
-#: prefs/AudioIOPrefs.cpp:206
-#: prefs/MidiIOPrefs.cpp:186
-msgid "Short period:"
-msgstr "ááááá ááá áááá:"
-
-#: prefs/AudioIOPrefs.cpp:208
-#: prefs/MidiIOPrefs.cpp:188
-msgid "Long period:"
-msgstr "áá á«ááá ááá áááá:"
-
-#: prefs/BatchPrefs.cpp:55
-#: prefs/BatchPrefs.cpp:56
-msgid "Batch"
-msgstr "á¯áá£á¤á£á á"
-
-#: prefs/BatchPrefs.cpp:77
-#: prefs/GUIPrefs.cpp:92
-msgid "Behaviors"
-msgstr "á¥áªááá"
-
-#: prefs/BatchPrefs.cpp:80
-msgid "&Don't apply effects in batch mode"
-msgstr "áá áááá¥á¢áá£á á áá¤áá¥á¢ááá á¯áá£á¤á£á á ááááá¨á"
+#: prefs/AudioIOPrefs.cpp:102 prefs/MidiIOPrefs.cpp:99
+msgid "1 (Mono)"
+msgstr "1 (áááá)"
-#: prefs/BatchPrefs.cpp:83
-#: prefs/GUIPrefs.cpp:132
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr "Cl&eanSpeech á ááááá (ááá áááá£áá GUI)"
+#: prefs/AudioIOPrefs.cpp:103 prefs/MidiIOPrefs.cpp:100
+msgid "2 (Stereo)"
+msgstr "2 (á¡á¢áá áá)"
-#: prefs/DirectoriesPrefs.cpp:55
-#: prefs/DirectoriesPrefs.cpp:56
+#: prefs/DirectoriesPrefs.cpp:55 prefs/DirectoriesPrefs.cpp:56
#: prefs/PrefsDialog.cpp:267
msgid "Directories"
msgstr "ááá áá¥á¢áá áááá"
@@ -7761,34 +7518,31 @@ msgstr "áááááá áááá:"
msgid "Free Space:"
msgstr "ááááá¡á£á¤ááá á¡ááá áªá:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr "ááá¢áá¨áááá®áá"
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr "áá ááá¥á¢áá¡ áá¡ááá¡ áªáááá á¡áá¥áá¦ááááá¨á ááá¢áá¨áááá®áá"
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
-msgstr "ááá¢áá¨áááá®ááá¡ ááá¢áá áááá:"
-
-#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
-msgstr "á¬á£áááá"
-
#: prefs/DirectoriesPrefs.cpp:110
msgid "Audio cache"
msgstr "áá£ááá á¥áá¨á"
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
-msgstr "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "Play and/or record using RAM (useful for slow drives)"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
+msgstr ""
#: prefs/DirectoriesPrefs.cpp:121
msgid "Choose a location to place the temporary directory"
msgstr "áá áááááá ááá áá¥á¢áá ááá¡ ááá¡ááááá¡ááááá áááááá ááááá¡ á¨áá á©ááá"
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: prefs/DirectoriesPrefs.cpp:166
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -7807,228 +7561,144 @@ msgstr "%s ááá áá¥á¢áá áá áá áá©áá¬áá áááá"
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "áá ááááá ááá áá¥á¢áá ááá¨á á¨áá¢ááááá᪠áªááááááááá áá áááá¥á¢áá£á áááá Audacity-áá¡ ááááá¢ááá áááááá"
-#: prefs/FileFormatPrefs.cpp:53
-#: prefs/FileFormatPrefs.cpp:54
-msgid "Import / Export"
-msgstr "ááááá á¢á / áá¥á¡ááá á¢á"
-
-#: prefs/FileFormatPrefs.cpp:84
-msgid "MP3 Export Library"
-msgstr "MP3 áá¥á¡ááá á¢áá¡ áááááááááá"
-
-#: prefs/FileFormatPrefs.cpp:87
-msgid "MP3 Library Version:"
-msgstr "MP3 ááááááááááá¡ ááá á¡áá:"
+#: prefs/GUIPrefs.cpp:42
+msgid "In Browser"
+msgstr "áá áá£ááá á¨á"
-#: prefs/FileFormatPrefs.cpp:93
-msgid "MP3 Library:"
-msgstr "MP3 áááááááááá:"
+#: prefs/GUIPrefs.cpp:43
+msgid "From Internet"
+msgstr "ááá¢áá ááá¢áááá"
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:98
-msgid "LAME MP3 Library:"
-msgstr "LAME MP3 áááááááááá:"
-
-#: prefs/FileFormatPrefs.cpp:101
-#: prefs/FileFormatPrefs.cpp:125
-msgid "&Download"
-msgstr "&á©áááá¢ááá ááá"
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
-msgstr "FFmpeg ááááá á¢á/áá¥á¡ááá á¢áá¡ áááááááááá"
-
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
-msgstr "FFmpeg ááááááááááá¡ ááá á¡áá:"
-
-#: prefs/FileFormatPrefs.cpp:118
-#: prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
-msgstr "FFmpeg áááááááááá:"
-
-#: prefs/FileFormatPrefs.cpp:136
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr "á¨áááá¨ááá: á®áá áá¡á®áá¡ ááá áááá¢á áááá¡ áá¥á¡ááá á¢áá¡ áááá á©ááá á¨ááá«áááá ááá áááá¢á áááá¡ á¦áááááá ááá¬áááá£ááááá áá¥á¡ááá á¢áá¡ ááááááá£á á¡áá ááááá¨á.\n"
-
-#: prefs/FileFormatPrefs.cpp:137
-msgid "When importing audio files"
-msgstr "áá£áááá¡ á¤ááááááá¡ ááááá á¢áá¡áá¡ "
-
-#: prefs/FileFormatPrefs.cpp:140
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
-msgstr "&á¨áá¥ááááá áá áááááá áá¡áá ááá£áá áá£ááá á¤ááááááá¡ áá¡áá á áááá¥á¢áá áááááá (á£á¡áá¤á áá®áá)"
-
-#: prefs/FileFormatPrefs.cpp:141
-msgid "&Read uncompressed audio files directly from the original (faster)"
-msgstr "áá áááááá áá¡áá ááá£áá á¤ááááááá¡ &á¬ááááá®áá ááá ááááá áá áááááááááá (á£á¤á á á¡á¬á áá¤áá)"
-
-#: prefs/FileFormatPrefs.cpp:143
-msgid "&Normalize all tracks in project"
-msgstr "á§áááá á¢á áááá¡ &ááá áááááááªáá áá ááá¥á¢á¨á"
-
-#: prefs/FileFormatPrefs.cpp:148
-msgid "When saving a project that depends on other audio files"
-msgstr "áá ááá¥á¢áá¡ á¨áááá®ááá¡áá¡, á ááááá᪠áááááááááá£ááá á¡á®áá áá£ááá á¤ááááááá"
-
-#: prefs/FileFormatPrefs.cpp:151
-msgid "Always © all audio into project (safest)"
-msgstr "á§áááááááá¡ &áááááááá á á§áááá áá£ááá áá ááá¥á¢á¨á (á£á¡áá¤á áá®á)"
-
-#: prefs/FileFormatPrefs.cpp:152
-msgid "&Do not copy any audio"
-msgstr "&áá áááááááá á áá áªáá áá áá£ááá"
-
-#: prefs/FileFormatPrefs.cpp:153
-msgid "&Ask user"
-msgstr "áááá®ááá ááááá¡áááá¡ áááá®áá"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
+msgstr ""
-#: prefs/FileFormatPrefs.cpp:157
-msgid "When exporting tracks to an audio file"
-msgstr "á¢á áááááá¡ áá¥á¡ááá á¢áá¡áá¡ áá£ááá á¤áááá¨á"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
+msgstr ""
-#: prefs/FileFormatPrefs.cpp:160
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
-msgstr "&á§áááááááá¡ áááá§áááá á§áááá á¢á ááá á¡á¢áá áá áá áááá áá á®áááá."
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
+msgstr ""
-#: prefs/FileFormatPrefs.cpp:161
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
-msgstr "&áááááááá£ááá£á á ááá¥á¡ááááá¡ ááááá§ááááá (ááá. 5.1 áá£áá¢ááá á®ááááá á¤ááááá¡ áá¥á¡ááá á¢áá áááá¡áááá¡)"
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
+msgstr ""
-#: prefs/FileFormatPrefs.cpp:163
-msgid "S&how Metadata Editor prior to export step"
-msgstr "ááá¢ááááááªáááááá¡ á áááá¥á¢áá áá¡ á©áááááá áá¥á¡ááá á¢áááá"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
+msgstr ""
-#: prefs/GUIPrefs.cpp:34
-#: prefs/GUIPrefs.cpp:35
-msgid "Interface"
-msgstr "ááá¢áá á¤ááá¡á"
+#: prefs/GUIPrefs.cpp:141
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 dB (ááá©á®áá á ááááááááá ááá¦ááá áááááá¢á£ááá¡ á áááá¥á¢áá áááá¡áááá¡)"
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
-msgstr "áá áá£ááá á¨á"
+#: prefs/GUIPrefs.cpp:142
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 dB (PCM ááááááááá 8 ááá¢áááá á¡áááááááá¡áááá¡)"
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
-msgstr "ááá¢áá ááá¢áááá"
+#: prefs/GUIPrefs.cpp:143
+msgid "-60 dB (PCM range of 10 bit samples)"
+msgstr "-60 dB (PCM ááááááááá 10 ááá¢áááá á¡áááááááá¡áááá¡)"
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
-msgstr "ááá á¢ááá"
+#: prefs/GUIPrefs.cpp:144
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 dB (PCM ááááááááá 16 ááá¢áááá á¡áááááááá¡áááá¡)"
-#: prefs/GUIPrefs.cpp:94
-msgid "&Update display while playing"
-msgstr "&ááá áááá¡ ááááá®áááá ááááá áá¡áá¡"
+#: prefs/GUIPrefs.cpp:145
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 dB (áááá®ááááááá ááááá¢á ááááááááá¡ á¡ááááááááá¡áááá¡)"
-#: prefs/GUIPrefs.cpp:96
-msgid "Cl&osing last window quits Audacity"
-msgstr "á£ááááá¡ááááá á¤ááá¯á áá¡ ááá®á£á áá áá¬áááá¡ Audacity-áá¡ ááá®á£á ááá¡"
+#: prefs/GUIPrefs.cpp:146
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB (PCM ááááááááá 24 ááá¢áááá á¡áááááááá¡áááá¡)"
-#: prefs/GUIPrefs.cpp:98
-msgid "Enable &dragging of left and right selection edges"
-msgstr "ááá áªá®ááá áá ááá á¯áááá ááááá¨áááá¡ áááááááá¡ áááááá áááá¡ áááá¥á¢áá£á ááá"
+#: prefs/SpectrumPrefs.cpp:140
+msgid "Display"
+msgstr "ááá ááá"
#: prefs/GUIPrefs.cpp:100
msgid "Er&gonomic order of audio I/O buttons"
msgstr "áá£ááá I/O á¦áááááááá¡ áá &ááááááá£áá ááááááááá"
-#: prefs/GUIPrefs.cpp:102
-msgid "Automatically &fit tracks vertically zoomed"
-msgstr "ááá á¢ááááá£á áá áááááááá£áá á¢á áááááá¡ ááá¢áááá¢á£á á ááá áááá"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
+msgstr ""
-#: prefs/GUIPrefs.cpp:104
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
-msgstr "\"á¢á áááá¡ á¤ááá£á¡áá¡ áªááááááá¡ áááááááááááá\" ááááááá áááááá á¢á áááááá"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
+msgstr ""
-#: prefs/GUIPrefs.cpp:106
-msgid "Editing a &clip can move other clips"
-msgstr "áááááá¡ á áááá¥á¢áá ááá áááááá¬áááá¡ á¡á®áá áááááááá¡ ááááááááááááá¡"
+#: prefs/GUIPrefs.cpp:167
+msgid "Help:"
+msgstr "ááá®ááá ááá:"
-#: prefs/GUIPrefs.cpp:108
-msgid "&Select all audio in project, if none selected"
-msgstr "á§áááá áá£áááá¡ ááááá¨ááá áá ááá¥á¢á¨á, áᣠáá áªáá áá áá áá ááááá¨áá£áá"
+#: prefs/GUIPrefs.cpp:96
+msgid "Cl&osing last window quits Audacity"
+msgstr "á£ááááá¡ááááá á¤ááá¯á áá¡ ááá®á£á áá áá¬áááá¡ Audacity-áá¡ ááá®á£á ááá¡"
#: prefs/GUIPrefs.cpp:110
msgid "&Beep on completion of longer activities"
msgstr "áááá á®áááá á«ááááááá¡ ááá¥ááááááááá¡ ááá¡á á£ááááá¡áá¡ á¡áááááá"
-#: prefs/GUIPrefs.cpp:114
-msgid "Show / Hide"
-msgstr "á©áááááá / ááááááá"
-
-#: prefs/GUIPrefs.cpp:116
-msgid "Enable cut &lines"
-msgstr "á®áááááá¡ áááá áá¡ áááá¥á¢áá£á ááá"
-
-#: prefs/GUIPrefs.cpp:118
-msgid "Show warnings about &temp files"
-msgstr "áá áááááá á¤ááááááá¡ ááá¤á áá®áááááááá¡ á©áááááá"
-
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
-msgstr "á¨áááá®ááá¡ á¨ááááá®ááá¡ á©áááááá, ááá¨ááá᪠áᣠáá ááá¥á¢á áªáá ááááá"
-
-#: prefs/GUIPrefs.cpp:122
-msgid "Show &Welcome Message at program start up"
-msgstr "ááá¡ááááááá¡ &á¨áá¢á§áááááááá¡ á©áááááá áá ááá áááá¡ ááá¡áá¬á§áá¡á¨á"
-
#: prefs/GUIPrefs.cpp:126
msgid "Modes"
msgstr "á ááááááá"
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
+msgstr ""
+
#: prefs/GUIPrefs.cpp:129
msgid "Don't a&pply effects in batch mode"
msgstr "áá áááá¥á¢áá£á á áá¤áá¥á¢ááá á¯áá£á¤á£á á áááá£á¨áááááá¡ á ááááá¨á"
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
-msgstr "áááááááááá¡ áááááá£ááá¡ á©áááááá: ááááááá áá 'Waveform (dB)'"
-
-#: prefs/GUIPrefs.cpp:141
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 dB (ááá©á®áá á ááááááááá ááá¦ááá áááááá¢á£ááá¡ á áááá¥á¢áá áááá¡áááá¡)"
+#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
+msgid "Import / Export"
+msgstr "ááááá á¢á / áá¥á¡ááá á¢á"
-#: prefs/GUIPrefs.cpp:142
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 dB (PCM ááááááááá 8 ááá¢áááá á¡áááááááá¡áááá¡)"
+#: prefs/FileFormatPrefs.cpp:137
+msgid "When importing audio files"
+msgstr "áá£áááá¡ á¤ááááááá¡ ááááá á¢áá¡áá¡ "
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
-msgstr "-60 dB (PCM ááááááááá 10 ááá¢áááá á¡áááááááá¡áááá¡)"
+#: prefs/FileFormatPrefs.cpp:140
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
+msgstr "&á¨áá¥ááááá áá áááááá áá¡áá ááá£áá áá£ááá á¤ááááááá¡ áá¡áá á áááá¥á¢áá áááááá (á£á¡áá¤á áá®áá)"
-#: prefs/GUIPrefs.cpp:144
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 dB (PCM ááááááááá 16 ááá¢áááá á¡áááááááá¡áááá¡)"
+#: prefs/FileFormatPrefs.cpp:141
+msgid "&Read uncompressed audio files directly from the original (faster)"
+msgstr "áá áááááá áá¡áá ááá£áá á¤ááááááá¡ &á¬ááááá®áá ááá ááááá áá áááááááááá (á£á¤á á á¡á¬á áá¤áá)"
-#: prefs/GUIPrefs.cpp:145
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 dB (áááá®ááááááá ááááá¢á ááááááááá¡ á¡ááááááááá¡áááá¡)"
+#: prefs/FileFormatPrefs.cpp:143
+msgid "&Normalize all tracks in project"
+msgstr "á§áááá á¢á áááá¡ &ááá áááááááªáá áá ááá¥á¢á¨á"
-#: prefs/GUIPrefs.cpp:146
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB (PCM ááááááááá 24 ááá¢áááá á¡áááááááá¡áááá¡)"
+#: prefs/FileFormatPrefs.cpp:157
+msgid "When exporting tracks to an audio file"
+msgstr "á¢á áááááá¡ áá¥á¡ááá á¢áá¡áá¡ áá£ááá á¤áááá¨á"
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
-msgstr "áááá£ááá¡á®áááá ááááááááá áááá¡ á ááááá"
+#: prefs/FileFormatPrefs.cpp:160
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+msgstr "&á§áááááááá¡ áááá§áááá á§áááá á¢á ááá á¡á¢áá áá áá áááá áá á®áááá."
-#: prefs/GUIPrefs.cpp:164
-msgid "Other interface choices"
-msgstr "ááá¢áá á¤ááá¡áá¡ á¡á®áá áá á©ááááá"
+#: prefs/FileFormatPrefs.cpp:161
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+msgstr "&áááááááá£ááá£á á ááá¥á¡ááááá¡ ááááá§ááááá (ááá. 5.1 áá£áá¢ááá á®ááááá á¤ááááá¡ áá¥á¡ááá á¢áá áááá¡áááá¡)"
-#: prefs/GUIPrefs.cpp:167
-msgid "Help:"
-msgstr "ááá®ááá ááá:"
+#: prefs/FileFormatPrefs.cpp:163
+msgid "S&how Metadata Editor prior to export step"
+msgstr "ááá¢ááááááªáááááá¡ á áááá¥á¢áá áá¡ á©áááááá áá¥á¡ááá á¢áááá"
-#: prefs/GUIPrefs.cpp:168
-msgid "Solo Button:"
-msgstr "á¡ááá á¦ááááá:"
+#: prefs/ImportExportPrefs.cpp:84
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
+msgstr ""
-#: prefs/KeyConfigPrefs.cpp:64
-#: prefs/KeyConfigPrefs.cpp:65
+#: prefs/KeyConfigPrefs.cpp:64 prefs/KeyConfigPrefs.cpp:65
msgid "Keyboard"
msgstr "ááááááá¢á£á á"
@@ -8052,22 +7722,26 @@ msgstr "á&áá áááá"
msgid "Note: Pressing Cmd+Q will quit. All other keys are valid."
msgstr "á¨áááá¨ááá: Cmd+Q-áá ááááá á ááááá¬áááá¡ ááá®á£á ááá¡. á§áááá á¡á®áá áááááá¨á ááá¡áá¨ááááá."
-#: prefs/KeyConfigPrefs.cpp:124
-#: prefs/ThemePrefs.cpp:105
+#: prefs/KeyConfigPrefs.cpp:124 prefs/ThemePrefs.cpp:105
msgid "&Defaults"
msgstr "&áááá£ááá¡á®áááá ááá áááá¢á ááá"
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr ""
+
#: prefs/KeyConfigPrefs.cpp:143
msgid "Key Combination"
msgstr "áááááá¨áá ááááááááªáá"
-#: prefs/KeyConfigPrefs.cpp:163
-msgid "Export Keyboard Shortcuts As:"
-msgstr "áááááá¨áááá¡ áááá¡áá®ááááááá¡ áá¥á¡ááá á¢á á áááá áª:"
+#: prefs/KeyConfigPrefs.cpp:369 toolbars/EditToolBar.cpp:144
+msgid "Undo"
+msgstr "áááá á£áááá"
-#: prefs/KeyConfigPrefs.cpp:183
-msgid "Error saving keyboard shortcuts"
-msgstr "áááááá¨áááá¡ áááá¡áá®áááááá á¨áááá®ááá¡ á¨ááªáááá"
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr ""
#: prefs/KeyConfigPrefs.cpp:198
msgid "Select an XML file containing Audacity keyboard shortcuts..."
@@ -8077,6 +7751,14 @@ msgstr "ááááá¨ááá XML á¤áááá, á ááááá᪠á¨
msgid "Error loading keyboard shortcuts"
msgstr "áááááá¨áááá¡ áááá¡áá®áááááá á©áá¢ááá áááá¡ á¨ááªáááá"
+#: prefs/KeyConfigPrefs.cpp:163
+msgid "Export Keyboard Shortcuts As:"
+msgstr "áááááá¨áááá¡ áááá¡áá®ááááááá¡ áá¥á¡ááá á¢á á áááá áª:"
+
+#: prefs/KeyConfigPrefs.cpp:183
+msgid "Error saving keyboard shortcuts"
+msgstr "áááááá¨áááá¡ áááá¡áá®áááááá á¨áááá®ááá¡ á¨ááªáááá"
+
#: prefs/KeyConfigPrefs.cpp:243
#, c-format
msgid "The keyboard shortcut '%s' is already assigned to:\n"
@@ -8086,10 +7768,62 @@ msgstr "áááááá¨áá¡ '%s' áááá¡áá®áááá¡ á£áá
"\n"
"'%s'"
-#: prefs/KeyConfigPrefs.cpp:369
-#: toolbars/EditToolBar.cpp:144
-msgid "Undo"
-msgstr "áááá á£áááá"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:84
+msgid "MP3 Export Library"
+msgstr "MP3 áá¥á¡ááá á¢áá¡ áááááááááá"
+
+#: prefs/FileFormatPrefs.cpp:87
+msgid "MP3 Library Version:"
+msgstr "MP3 ááááááááááá¡ ááá á¡áá:"
+
+#: prefs/FileFormatPrefs.cpp:93
+msgid "MP3 Library:"
+msgstr "MP3 áááááááááá:"
+
+#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:98
+msgid "LAME MP3 Library:"
+msgstr "LAME MP3 áááááááááá:"
+
+#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
+msgid "&Download"
+msgstr "&á©áááá¢ááá ááá"
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr "FFmpeg ááááá á¢á/áá¥á¡ááá á¢áá¡ áááááááááá"
+
+#: prefs/FileFormatPrefs.cpp:109
+msgid "FFmpeg Library Version:"
+msgstr "FFmpeg ááááááááááá¡ ááá á¡áá:"
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
+msgid "FFmpeg Library:"
+msgstr "FFmpeg áááááááááá:"
+
+#: prefs/AudioIOPrefs.cpp:41 prefs/AudioIOPrefs.cpp:42
+#: prefs/MidiIOPrefs.cpp:44 prefs/MidiIOPrefs.cpp:45
+msgid "Audio I/O"
+msgstr "áá£ááá I/O"
+
+#: prefs/AudioIOPrefs.cpp:125 prefs/MidiIOPrefs.cpp:122
+msgid "Portaudio v"
+msgstr "Portaudio v"
+
+#: prefs/AudioIOPrefs.cpp:147 prefs/MidiIOPrefs.cpp:144
+msgid "Playthrough"
+msgstr "ááááá á"
#: prefs/MidiIOPrefs.cpp:146
msgid "&Play other tracks while recording new one"
@@ -8103,6 +7837,10 @@ msgstr "&ááá¬á§áááááááá¡ áááá ááááá á (
msgid "&Software Playthrough (Play new track while recording it)"
msgstr "&áá ááá ááá£áá ááááá á (áá®ááá á¢á áááá¡ ááááá á á©áá¬áá áá¡áá¡)"
+#: prefs/AudioIOPrefs.cpp:176 prefs/MidiIOPrefs.cpp:157
+msgid "Cut Preview"
+msgstr "áá¡ááááá¡ ááááá á"
+
#: prefs/MidiIOPrefs.cpp:160
msgid "Play before cut region:"
msgstr "áá áá¡ ááááá áááá ááááá á:"
@@ -8111,6 +7849,10 @@ msgstr "áá áá¡ ááááá áááá ááááá á:"
msgid "Play after cut region:"
msgstr "áá áá¡ ááááá áá¡ á¨ááááá ááááá á:"
+#: prefs/AudioIOPrefs.cpp:189 prefs/MidiIOPrefs.cpp:167
+msgid "Latency"
+msgstr "ááá¢áááªáá"
+
#: prefs/MidiIOPrefs.cpp:173
msgid "Audio to buffer:"
msgstr "ááá¡ááªááááá áá£ááá:"
@@ -8123,12 +7865,23 @@ msgstr "ááá¢áááªááá¡ ááá áá¥áªáá:"
msgid "Seek Time"
msgstr "á«ááááá¡ áá á"
+#: prefs/AudioIOPrefs.cpp:206 prefs/MidiIOPrefs.cpp:186
+msgid "Short period:"
+msgstr "ááááá ááá áááá:"
+
+#: prefs/AudioIOPrefs.cpp:208 prefs/MidiIOPrefs.cpp:188
+msgid "Long period:"
+msgstr "áá á«ááá ááá áááá:"
+
+#: prefs/AudioIOPrefs.cpp:168 prefs/MidiIOPrefs.cpp:193
+msgid "Effects Preview"
+msgstr "áá¤áá¥á¢áá¡ ááááááááá ááá"
+
#: prefs/MidiIOPrefs.cpp:196
msgid "Play when previewing:"
msgstr "ááááá á ááááááááá áááá¡áá¡:"
-#: prefs/MousePrefs.cpp:55
-#: prefs/MousePrefs.cpp:56
+#: prefs/MousePrefs.cpp:55 prefs/MousePrefs.cpp:56
msgid "Mouse"
msgstr "ááá£á¡á"
@@ -8148,37 +7901,26 @@ msgstr "áá á«áááááá¡ á¥áááááá"
msgid "Buttons"
msgstr "á¦ááááááá"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:117
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:117
#: prefs/MousePrefs.cpp:122
msgid "Left-Click"
msgstr "ááá áªá®ááá-á¬áááá"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:100
-#: prefs/MousePrefs.cpp:101
-#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:101 prefs/MousePrefs.cpp:102
msgid "Select"
msgstr "ááááá¨ááá"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:122
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:122
msgid "Set Selection Point"
msgstr "ááááá¨áááá¡ á¬áá á¢áááá¡ ááá§ááááá"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:115
-#: prefs/MousePrefs.cpp:119
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:115 prefs/MousePrefs.cpp:119 prefs/MousePrefs.cpp:123
msgid "Left-Drag"
msgstr "ááá áªá®ááá áááááá ááá"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:123
msgid "Set Selection Range"
msgstr "ááááá¨áááá¡ áááááááááá¡ ááááá ááá"
@@ -8206,12 +7948,8 @@ msgstr "Ctrl-ááá áªá®ááá á¬áááá"
msgid "Set Selection Point and Play"
msgstr "ááááá¨áááá¡ á¬áá áááá¡á áá ááááá áá¡ ááááá áá"
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:108
-#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:106
+#: prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:108 prefs/MousePrefs.cpp:109
msgid "Zoom"
msgstr "áááááááá"
@@ -8219,9 +7957,7 @@ msgstr "áááááááá"
msgid "Zoom in on Point"
msgstr "á¬áá á¢áááá ááá¡á¨á¢áááá ááá"
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:125
msgid "Zoom in on a Range"
msgstr "áááááááááá ááá¡á¨á¢áááá ááá"
@@ -8229,18 +7965,15 @@ msgstr "áááááááááá ááá¡á¨á¢áááá ááá"
msgid "same as right-drag"
msgstr "ááááá, á á᪠ááá á¯áááá áááááá ááá"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:106 prefs/MousePrefs.cpp:124
msgid "Right-Click"
msgstr "ááá á¯áááá á¬áááá"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:106 prefs/MousePrefs.cpp:124
msgid "Zoom out one step"
msgstr "áá áá ááááá¯áá¡ á¨áááªáá ááá"
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:125
msgid "Right-Drag"
msgstr "ááá á¯áááá áááááá ááá"
@@ -8276,8 +8009,7 @@ msgstr "Shift-ááá áªá®ááá-áááááá ááá"
msgid "Time shift all clips in track"
msgstr "á§áááá á¡áááá¨ááá¡ áá ááá¡ áªááá á¢á ááá¨á"
-#: prefs/MousePrefs.cpp:113
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:113 prefs/MousePrefs.cpp:120
msgid "Ctrl-Left-Drag"
msgstr "Ctrl-ááá áªá®ááá-áááááá ááá"
@@ -8293,9 +8025,7 @@ msgstr "ááá«áááá áááá¡ áááááá á¢áá¡ á¨ááª
msgid "Change Sample"
msgstr "á¡áááááá¡ á¨ááªááá"
-#: prefs/MousePrefs.cpp:117
-#: prefs/MousePrefs.cpp:118
-#: prefs/MousePrefs.cpp:119
+#: prefs/MousePrefs.cpp:117 prefs/MousePrefs.cpp:118 prefs/MousePrefs.cpp:119
#: prefs/MousePrefs.cpp:120
msgid "Pencil"
msgstr "á¤ááá¥áá á"
@@ -8316,26 +8046,20 @@ msgstr "á áááááááá á¡áááááá¡ á¨ááªááá"
msgid "Change ONE Sample only"
msgstr "áá®áááá áá áá á¡áááááá¡ á¨ááªááá"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123 prefs/MousePrefs.cpp:124
#: prefs/MousePrefs.cpp:125
msgid "Multi"
msgstr "áá ááááá"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123
msgid "same as select tool"
msgstr "ááááá á á᪠ááááá¨áááá¡ á®ááá¡áá¬á§á"
-#: prefs/MousePrefs.cpp:124
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:124 prefs/MousePrefs.cpp:125
msgid "same as zoom tool"
msgstr "ááááá á á᪠ááá¡á¨á¢áááá áááá¡ á®ááá¡áá¬á§á"
-#: prefs/MousePrefs.cpp:127
-#: prefs/MousePrefs.cpp:128
-#: prefs/MousePrefs.cpp:129
+#: prefs/MousePrefs.cpp:127 prefs/MousePrefs.cpp:128 prefs/MousePrefs.cpp:129
msgid "Any"
msgstr "ááááá¡áááá á"
@@ -8363,10 +8087,62 @@ msgstr "Ctrl-ááá áááá-á¢á áááá"
msgid "Zoom in or out"
msgstr "áááááááá áá á¨áááªáá ááá"
+#: prefs/AudioIOPrefs.cpp:171
+msgid "Length of preview:"
+msgstr "ááááááááá áááá¡ á áááááá¡ á¡ááá á«á:"
+
+#: prefs/AudioIOPrefs.cpp:179
+msgid "Preview before cut region:"
+msgstr "áá áá¡ ááááá áááá ááááááááá ááá:"
+
+#: prefs/AudioIOPrefs.cpp:181
+msgid "Preview after cut region:"
+msgstr "ááááá áá¡ ááá á ááááááááá ááá:"
+
+#: prefs/AudioIOPrefs.cpp:203
+msgid "Seek Time when playing"
+msgstr "áá ááá¡ á«áááá ááááá áá¡áá¡"
+
#: prefs/PrefsDialog.cpp:94
msgid "Audacity Preferences"
msgstr "Audacity ááá áááá¢á ááá"
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:148
+msgid "When saving a project that depends on other audio files"
+msgstr "áá ááá¥á¢áá¡ á¨áááá®ááá¡áá¡, á ááááá᪠áááááááááá£ááá á¡á®áá áá£ááá á¤ááááááá"
+
+#: prefs/FileFormatPrefs.cpp:151
+msgid "Always © all audio into project (safest)"
+msgstr "á§áááááááá¡ &áááááááá á á§áááá áá£ááá áá ááá¥á¢á¨á (á£á¡áá¤á áá®á)"
+
+#: prefs/FileFormatPrefs.cpp:152
+msgid "&Do not copy any audio"
+msgstr "&áá áááááááá á áá áªáá áá áá£ááá"
+
+#: prefs/FileFormatPrefs.cpp:153
+msgid "&Ask user"
+msgstr "áááá®ááá ááááá¡áááá¡ áááá®áá"
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr "ááá¢áá¨áááá®áá"
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr "áá ááá¥á¢áá¡ áá¡ááá¡ áªáááá á¡áá¥áá¦ááááá¨á ááá¢áá¨áááá®áá"
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr "ááá¢áá¨áááá®ááá¡ ááá¢áá áááá:"
+
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr "á¬á£áááá"
+
#: prefs/QualityPrefs.cpp:73
msgid "Rectangle"
msgstr "ááá ááá£áá®ááá"
@@ -8391,49 +8167,48 @@ msgstr "áááá£ááá¡á®áááá á¡áááááá¡ áááá¤
msgid "Default Sample Format:"
msgstr "á¡áááááá¡ áááá£ááá¡á®áááá á¤áá ááá¢á:"
-#: prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "á áááá£á áá áá¨á á¡áááááá¡ áááá¤ááªáááá¢áá¡ áááááá á¢áá á:"
-
-#: prefs/QualityPrefs.cpp:139
-msgid "High-quality sample rate converter:"
-msgstr "ááá¦ááá-á®áá áá¡á®áá¡ á¡áááááá¡ áááá¤ááªáááá¢áá¡ áááááá á¢áá á:"
-
-#: prefs/QualityPrefs.cpp:142
-msgid "Real-time dither:"
-msgstr "á áááá£á á áá ááá¡ ááááá á:"
-
-#: prefs/QualityPrefs.cpp:145
-msgid "High-quality dither:"
-msgstr "ááá¦ááá á®áá áá¡á®áá¡ ááááá á:"
-
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
-msgstr "áááááá á¡áá"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+#, fuzzy
+msgid "Sample Rate Converter:"
msgstr "á¡áááááá¡ áááá¤ááªáááá¢áá¡ áááááá á¢áá á"
#: prefs/QualityPrefs.cpp:164
msgid "Dither"
msgstr "ááááá á"
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
-msgstr "á áááá£á á-áá á:"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:149
+msgid "Overdub: &Play other tracks while recording new one"
+msgstr "áááá áá£ááááááªáá: á¡á®áá á¢á áááááá¡ &ááááá á áá®ááá¡ á©áá¬áá áá¡ ááá ááááá£á áá"
+
+#: prefs/AudioIOPrefs.cpp:152
+msgid "&Hardware Playthrough: Play new track while recording it"
+msgstr "&ááá¬á§áááááááá¡ ááááá á: áá®ááá á¢á áááá¡ ááááá á áá á©áá¬áá á"
+
+#: prefs/AudioIOPrefs.cpp:157
+msgid "&Software Playthrough: Play new track while recording or monitoring"
+msgstr "&ááá¬á§áááááááá¡ ááááá á: áá®ááá á¢á áááá¡ ááááá á áá á©áá¬áá á áá ááááá¢áá áááá"
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
-msgstr "ááá¦ááá-á®áá áá¡á®á:"
+#: prefs/AudioIOPrefs.cpp:160
+msgid "(uncheck when recording \"stereo mix\")"
+msgstr "(áááá ááá á©áá¬áá áá¡áá¡ \"á¡á¢áá áá á¨áá ááá\")"
-#: prefs/SmartRecordPrefs.cpp:37
-#: prefs/SmartRecordPrefs.cpp:38
-msgid "Smart Recording"
-msgstr "á¡á®áá á¢á á©áá¬áá á"
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
+msgstr ""
-#: prefs/SmartRecordPrefs.cpp:64
-#: prefs/SmartRecordPrefs.cpp:66
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
+msgstr ""
+
+#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
msgid "Sound Activated Recording"
msgstr "á®ááá¡ áááá¥á¢áá£á ááá£áá á©áá¬áá á"
@@ -8441,23 +8216,58 @@ msgstr "á®ááá¡ áááá¥á¢áá£á ááá£áá á©áá¬áá á"
msgid "Sound Activation Level (dB):"
msgstr "á®ááá¡ áááá¥á¢áá£á áááá¡ áááá(dB):"
-#: prefs/SpectrumPrefs.cpp:41
-#: prefs/SpectrumPrefs.cpp:42
+#: prefs/SpectrumPrefs.cpp:41 prefs/SpectrumPrefs.cpp:42
msgid "Spectrograms"
msgstr "á¡ááá¥á¢ááá ááááá"
-#: prefs/SpectrumPrefs.cpp:91
-msgid "FFT Size"
-msgstr "FFT áááá"
-
#: prefs/SpectrumPrefs.cpp:94
msgid "8 - most wideband"
msgstr "8 - most wideband"
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:99
msgid "256 - default"
msgstr "256 - áááá£ááá¡á®áááá"
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:107
msgid "32768 - most narrowband"
msgstr "32768 - á§áááááá ááá¬á á"
@@ -8466,21 +8276,26 @@ msgstr "32768 - á§áááááá ááá¬á á"
msgid "4096 - most narrowband"
msgstr "4096 - á§áááááá ááá¬á á"
-#: prefs/SpectrumPrefs.cpp:116
-msgid "Window type:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:93
+#, fuzzy
+msgid "Window type"
msgstr "á¤ááá¯á áá¡ á¢ááá"
#: prefs/SpectrumPrefs.cpp:125
msgid "FFT Skip Points"
msgstr "FFT á¬áá á¢áááááá¡ ááááá¢ááááá"
-#: prefs/SpectrumPrefs.cpp:140
-msgid "Display"
-msgstr "ááá ááá"
-
-#: prefs/SpectrumPrefs.cpp:144
-msgid "&Grayscale"
-msgstr "&áááªá áá¡á¤áá á¢ááááá"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
+msgstr ""
#: prefs/SpectrumPrefs.cpp:147
msgid "Minimum Frequency (Hz):"
@@ -8490,17 +8305,17 @@ msgstr "áááááááá£á á á¡áá®á¨áá á (Hz):"
msgid "Maximum Frequency (Hz):"
msgstr "ááá¥á¡ááááá£á á á¡áá®á¨áá á (Hz):"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
-msgstr "&Y-á£á¯á ááá"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
+msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
-msgstr "&á¨áááá¨áááááá¡ á«ááá"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
+msgstr ""
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
-msgstr "&ááááá¢áááááªááá¡ á¨áááá¨áááá"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
+msgstr ""
#: prefs/SpectrumPrefs.cpp:165
msgid "Minimum Amplitude (dB):"
@@ -8510,6 +8325,14 @@ msgstr "áááááááá£á á áááááá¢á£áá (dB):"
msgid "Max. Number of Notes (1..128):"
msgstr "á¨áááá¨áááááá¡ ááá¥á¡ááááá£á á á áááááááá (1..128):"
+#: prefs/SpectrumPrefs.cpp:161
+msgid "&Find Notes"
+msgstr "&á¨áááá¨áááááá¡ á«ááá"
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Quantize Notes"
+msgstr "&ááááá¢áááááªááá¡ á¨áááá¨áááá"
+
#: prefs/SpectrumPrefs.cpp:197
msgid "The maximum frequency must be an integer"
msgstr "ááá¥á¡ááááá£á á á¡áá®á¨áá á ááá¢ááá ááá á£ááá áá§áá¡"
@@ -8526,20 +8349,70 @@ msgstr "áááááááá£á á á¡áá®á¨áá á ááá¢ááá
msgid "Minimum frequency must be at least 0 Hz"
msgstr "áááááááá£á á á¡áá®á¨áá á 0 Hz áááá᪠á£ááá áá§áá¡"
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr "áááááááá£á á áááááá¢á£áá (dB) á£ááá áá§áá¡ ááá¢ááá ááá"
#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
-msgstr "á¨áááá¨áááááá¡ ááá¥á¡ááááá£á á á áááááááá á£ááá áá§áá¡ áááááááááá¡ ááá¢ááá ááá 1..128"
+msgid "The maximum number of notes must be in the range 1..128"
+msgstr ""
-#: prefs/ThemePrefs.cpp:62
-#: prefs/ThemePrefs.cpp:63
+#: prefs/ThemePrefs.cpp:62 prefs/ThemePrefs.cpp:63
msgid "Theme"
msgstr "áááá"
+#: prefs/ThemePrefs.cpp:126
+msgid "Info"
+msgstr "ááá¤á"
+
+#: prefs/ThemePrefs.cpp:91
+#, fuzzy
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then\n"
+"find and modify the images and colors in \n"
+"ImageCacheVxx.png using an image editor such \n"
+"as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images\n"
+"and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the \n"
+"wavetrack are currently affected, even though the\n"
+"image file shows other icons too.]"
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#. i18n-hint: && in here is an escape character to get a single & on screen,
#. * so keep it as is
#: prefs/ThemePrefs.cpp:93
@@ -8570,100 +8443,96 @@ msgstr "á¤ááááááá¡ á¨áááá®áá"
msgid "Load Files"
msgstr "á¤ááááááá¡ á©áá¢ááá ááá"
-#: prefs/ThemePrefs.cpp:126
-msgid "Info"
-msgstr "ááá¤á"
+#: prefs/GUIPrefs.cpp:50
+msgid "Simple"
+msgstr "ááá á¢ááá"
-#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
-msgstr "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
-
-#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
-msgstr "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
-
-#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
-msgstr "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:94
+msgid "&Update display while playing"
+msgstr "&ááá áááá¡ ááááá®áááá ááááá áá¡áá¡"
-#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
-msgstr "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:102
+msgid "Automatically &fit tracks vertically zoomed"
+msgstr "ááá á¢ááááá£á áá áááááááá£áá á¢á áááááá¡ ááá¢áááá¢á£á á ááá áááá"
-#: toolbars/ControlToolBar.cpp:175
-msgid "Pause"
-msgstr "ááá£áá"
+#: prefs/TracksPrefs.cpp:88
+#, fuzzy
+msgid "Default View Mode:"
+msgstr "áááá£ááá¡á®áááá ááááááááá áááá¡ á ááááá"
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play"
-msgstr "ááááá á"
+#: prefs/GUIPrefs.cpp:108
+msgid "&Select all audio in project, if none selected"
+msgstr "á§áááá áá£áááá¡ ááááá¨ááá áá ááá¥á¢á¨á, áᣠáá áªáá áá áá áá ááááá¨áá£áá"
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
-msgstr "ááááá á (áªáááá£á á ááááá áá¡áááá¡ áááááá áá Shift)"
+#: prefs/GUIPrefs.cpp:116
+msgid "Enable cut &lines"
+msgstr "á®áááááá¡ áááá áá¡ áááá¥á¢áá£á ááá"
+
+#: prefs/GUIPrefs.cpp:98
+msgid "Enable &dragging of left and right selection edges"
+msgstr "ááá áªá®ááá áá ááá á¯áááá ááááá¨áááá¡ áááááááá¡ áááááá áááá¡ áááá¥á¢áá£á ááá"
+
+#: prefs/GUIPrefs.cpp:104
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+msgstr "\"á¢á áááá¡ á¤ááá£á¡áá¡ áªááááááá¡ áááááááááááá\" ááááááá áááááá á¢á áááááá"
+
+#: prefs/GUIPrefs.cpp:106
+msgid "Editing a &clip can move other clips"
+msgstr "áááááá¡ á áááá¥á¢áá ááá áááááá¬áááá¡ á¡á®áá áááááááá¡ ááááááááááááá¡"
+
+#: prefs/GUIPrefs.cpp:168
+msgid "Solo Button:"
+msgstr "á¡ááá á¦ááááá:"
+
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:183
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr ""
+
+#: Menus.cpp:997
+msgid "Pause"
+msgstr "á¨áá©áá ááá"
+
+#: Menus.cpp:996
msgid "Stop"
msgstr "ááá©áá ááá"
-#: toolbars/ControlToolBar.cpp:186
-msgid "Skip to Start"
-msgstr "ááá¡áá¬á§áá¡áá ááááá¡ááá"
+#: toolbars/ControlToolBar.cpp:195
+msgid "Clean Speech"
+msgstr "Clean Speech"
-#: toolbars/ControlToolBar.cpp:189
-msgid "Skip to End"
-msgstr "ááá¡áá¡á á£ááá ááááá¡ááá"
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play (Shift for Loop Play)"
+msgstr "ááááá á (áªáááá£á á ááááá áá¡áááá¡ áááááá áá Shift)"
#: toolbars/ControlToolBar.cpp:192
msgid "Record (Shift for Append Record)"
msgstr "á©áá¬áá á (á©áá¬áá áá¡ ááááá¢ááááá ááááá¡ááá)"
-#: toolbars/ControlToolBar.cpp:195
-msgid "Clean Speech"
-msgstr "Clean Speech"
-
-#: toolbars/ControlToolBar.cpp:540
-#: toolbars/ControlToolBar.cpp:869
+#: toolbars/ControlToolBar.cpp:540 toolbars/ControlToolBar.cpp:869
msgid "Error while opening sound device. "
msgstr "á®ááá¡ ááá¬á§áááááááá¡ ááá®á¡ááá¡ á¨ááªáááá"
@@ -8675,13 +8544,11 @@ msgstr "CleanSpeech áá¡ á ááááá¨á á©áá¬áá á á¨áá£á«
msgid "Recording not permitted"
msgstr "á©áá¬áá á áá áá áá¡ ááááááá áá£áá"
-#: toolbars/DeviceToolBar.cpp:113
-#: toolbars/DeviceToolBar.cpp:115
+#: toolbars/DeviceToolBar.cpp:113 toolbars/DeviceToolBar.cpp:115
msgid "Output Device"
msgstr "ááááááá¢áááá¡ ááá¬á§ááááááá"
-#: toolbars/DeviceToolBar.cpp:134
-#: toolbars/DeviceToolBar.cpp:136
+#: toolbars/DeviceToolBar.cpp:134 toolbars/DeviceToolBar.cpp:136
msgid "Input Device"
msgstr "á¨áááá¢ááá ááá¬á§ááááááá"
@@ -8705,29 +8572,21 @@ msgstr "á¨áááªáá ááá"
msgid "Zoom Out"
msgstr "áááááááá"
-#: toolbars/EditToolBar.cpp:161
-msgid "Zoom Toggle"
-msgstr "áááááááá¡ áááááááá"
-
-#: toolbars/EditToolBar.cpp:165
-msgid "Fit Selection"
-msgstr "ááááá¨áááá¡ ááá áááá"
-
#: toolbars/EditToolBar.cpp:165
msgid "Fit selection in window"
msgstr "ááááá¨áááá¡ á¤ááá¯áá áá¨á ááá áááá"
#: toolbars/EditToolBar.cpp:167
-msgid "Fit Project"
-msgstr "áá ááá¥á¢áá¡ ááá áááá"
-
-#: toolbars/EditToolBar.cpp:167
msgid "Fit project in window"
msgstr "áá ááá¥á¢áá¡ á¤ááá¯áá áá¨á ááá áááá"
-#: toolbars/MeterToolBar.cpp:50
-msgid "Meter"
-msgstr "ááááááá"
+#: toolbars/EditToolBar.cpp:165
+msgid "Fit Selection"
+msgstr "ááááá¨áááá¡ ááá áááá"
+
+#: toolbars/EditToolBar.cpp:167
+msgid "Fit Project"
+msgstr "áá ááá¥á¢áá¡ ááá áááá"
#: toolbars/MeterToolBar.cpp:80
msgid "Play Meter"
@@ -8761,8 +8620,7 @@ msgstr "ááááááá¢áááá¡ á®áá"
msgid "Slider Output"
msgstr "áªááªááá¡ ááááááá¢ááá"
-#: toolbars/MixerToolBar.cpp:101
-#: widgets/Meter.cpp:874
+#: toolbars/MixerToolBar.cpp:101 widgets/Meter.cpp:874
msgid "Input Volume"
msgstr "á¨áááá¢áááá¡ á®áá"
@@ -8774,22 +8632,27 @@ msgstr "áªááªááá¡ á¨áááá¢ááá"
msgid "Input Source"
msgstr "á¨áááá¢ááá á¬á§áá á"
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:86
msgid "Selection"
msgstr "ááááá¨ááá"
-#: toolbars/SelectionBar.cpp:135
-#: toolbars/SelectionBar.cpp:194
+#: toolbars/SelectionBar.cpp:135 toolbars/SelectionBar.cpp:194
msgid "Project Rate (Hz):"
msgstr "áá ááá¥á¢áá¡ áááá¤ááªáááá¢á (Hz):"
-#: toolbars/SelectionBar.cpp:149
-#: toolbars/SelectionBar.cpp:255
+#: toolbars/SelectionBar.cpp:149 toolbars/SelectionBar.cpp:255
msgid "Selection Start:"
msgstr "ááááá¨áááá¡ ááá¬á§ááá"
-#: toolbars/SelectionBar.cpp:163
-#: toolbars/SelectionBar.cpp:164
+#: toolbars/SelectionBar.cpp:163 toolbars/SelectionBar.cpp:164
#: toolbars/SelectionBar.cpp:261
msgid "Length"
msgstr "á¡ááá á«á"
@@ -8798,13 +8661,11 @@ msgstr "á¡ááá á«á"
msgid "hidden"
msgstr "ááá¤áá á£áá"
-#: toolbars/SelectionBar.cpp:184
-#: toolbars/SelectionBar.cpp:272
+#: toolbars/SelectionBar.cpp:184 toolbars/SelectionBar.cpp:272
msgid "Audio Position:"
msgstr "áá£áááá¡ áááááªáá"
-#: toolbars/SelectionBar.cpp:236
-#: toolbars/SelectionBar.cpp:241
+#: toolbars/SelectionBar.cpp:236 toolbars/SelectionBar.cpp:241
msgid "Snap To"
msgstr "ááááá¦ááá"
@@ -8825,8 +8686,7 @@ msgstr "ááááá¨áááá¡ ááá¡áá¡á á£áá"
msgid "Audacity %s ToolBar"
msgstr "Audacity %s á®ááá¡áá¬á§ááá áááá"
-#: toolbars/ToolDock.cpp:74
-#: toolbars/ToolDock.cpp:75
+#: toolbars/ToolDock.cpp:74 toolbars/ToolDock.cpp:75
msgid "ToolDock"
msgstr "á®ááá¡áá¬á§ááá áááááá ááá"
@@ -8858,34 +8718,6 @@ msgstr "ááá áªá®ááá=áááááááá, ááá á¯ááá
msgid "Click and drag to move a track in time"
msgstr "ááá£á¬áááá£ááá áá ááááááá ááá á¢á áááá¡ áá áá¨á ááááá¡ááááááááááá"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr "á®ááá¡áá¬á§áááá"
-
-#: toolbars/ToolsToolBar.cpp:147
-#: toolbars/ToolsToolBar.cpp:182
-msgid "Selection Tool"
-msgstr "ááááá¨áááá¡ á®ááá¡áá¬á§á"
-
-#: toolbars/ToolsToolBar.cpp:148
-msgid "Envelope Tool"
-msgstr "áááááá á¢áá¡ á®ááá¡áá¬á§á"
-
-#: toolbars/ToolsToolBar.cpp:149
-#: toolbars/ToolsToolBar.cpp:183
-msgid "Time Shift Tool"
-msgstr "áá ááá¡ áªáááá¡ á®ááá¡áá¬á§á"
-
-#: toolbars/ToolsToolBar.cpp:150
-#: toolbars/ToolsToolBar.cpp:185
-msgid "Zoom Tool"
-msgstr "ááááááááá¡ á®ááá¡áá¬á§á"
-
-#: toolbars/ToolsToolBar.cpp:151
-#: toolbars/ToolsToolBar.cpp:184
-msgid "Draw Tool"
-msgstr "á®ááá¡áá¬á§áá¡ ááááá"
-
#: toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
msgstr "áá ááááá-á®ááá¡áá¬á§áá¡ á ááááá"
@@ -8894,24 +8726,11 @@ msgstr "áá ááááá-á®ááá¡áá¬á§áá¡ á ááááá"
msgid "Slide Tool"
msgstr "áªááªááá¡ á®ááá¡áá¬á§á"
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr "áá áááááá®ááá¡áá¬á§á"
-
-#: toolbars/TranscriptionToolBar.cpp:84
-msgid "Transcription"
-msgstr "á¢á ááá¡áá áááªáá"
-
#: toolbars/TranscriptionToolBar.cpp:171
msgid "Play at selected speed"
msgstr "ááááá¨áá£áá á¡áá©á¥áá áá ááááá á"
-#: toolbars/TranscriptionToolBar.cpp:172
-msgid "Play-at-speed"
-msgstr "ááááá á á¡áá©á¥áá áá"
-
-#: toolbars/TranscriptionToolBar.cpp:178
-#: toolbars/TranscriptionToolBar.cpp:183
+#: toolbars/TranscriptionToolBar.cpp:178 toolbars/TranscriptionToolBar.cpp:183
msgid "Playback Speed"
msgstr "ááááá áá¡ á¡áá©á¥áá á"
@@ -8919,74 +8738,38 @@ msgstr "ááááá áá¡ á¡áá©á¥áá á"
msgid "Adjust left selection to next onset"
msgstr "ááá á¯áááá ááááá¨áááá¡ á¨ááááá ááá¡áá¢áá ááá áááá"
-#: toolbars/TranscriptionToolBar.cpp:197
-msgid "Left-to-On"
-msgstr "ááá áªá®ááá"
-
#: toolbars/TranscriptionToolBar.cpp:199
msgid "Adjust right selection to previous offset"
msgstr "ááá á¯áááá ááááá¨áááá¡ á¬ááá áá¤á¡áá¢áá ááá áááá"
-#: toolbars/TranscriptionToolBar.cpp:200
-msgid "Right-to-Off"
-msgstr "ááá á¯áááá"
-
#: toolbars/TranscriptionToolBar.cpp:202
msgid "Adjust left selection to next offset"
msgstr "ááá á¯áááá ááááá¨áááá¡ á¬ááá áá¤á¡áá¢áá ááá áááá"
-#: toolbars/TranscriptionToolBar.cpp:203
-msgid "Left-to-Off"
-msgstr "ááá áªá®ááá"
-
#: toolbars/TranscriptionToolBar.cpp:205
msgid "Adjust right selection to previous onset"
msgstr "ááá á¯áááá ááááá¨áááá¡ á¬ááá ááá¡áá¢áá ááá áááá"
-#: toolbars/TranscriptionToolBar.cpp:206
-msgid "Right-to-On"
-msgstr "ááá á¯áááá"
-
#: toolbars/TranscriptionToolBar.cpp:208
msgid "Select region of sound around cursor"
msgstr "á®ááá¡ áá áá¡ ááááá¨ááá áá£á á¡áá áá¡ ááá á¨ááá"
-#: toolbars/TranscriptionToolBar.cpp:209
-msgid "Select-Sound"
-msgstr "ááááá¨ááá - á®áá"
-
#: toolbars/TranscriptionToolBar.cpp:211
msgid "Select region of silence around cursor"
msgstr "á¡áá©á£ááá¡ áá áá¡ ááááá¨ááá áá£á á¡áá áá¡ ááá á¨ááá"
-#: toolbars/TranscriptionToolBar.cpp:212
-msgid "Select-Silence"
-msgstr "ááááá¨ááá - á¡áá©á£áá"
-
#: toolbars/TranscriptionToolBar.cpp:214
msgid "Automatically make labels from words"
msgstr "ááá ááá§áááá¡ ááá¢áááá¢á£á á á¨áá¥ááá á¡áá¢á§áááá£ááá"
-#: toolbars/TranscriptionToolBar.cpp:215
-msgid "Make Labels"
-msgstr "ááá ááá§áááá¡ á¨áá¥ááá"
-
#: toolbars/TranscriptionToolBar.cpp:217
msgid "Add label at selection"
msgstr "ááá ááá§áá¡ ááááá¢ááá ááááá¨áááá¡áá¡"
-#: toolbars/TranscriptionToolBar.cpp:218
-msgid "Add Label"
-msgstr "ááá ááá§áá¡ ááááá¢ááá"
-
#: toolbars/TranscriptionToolBar.cpp:220
msgid "Calibrate voicekey"
msgstr "á®ááá¡ ááá¡áá¦áááá¡ áááááá ááªáá"
-#: toolbars/TranscriptionToolBar.cpp:221
-msgid "Calibrate"
-msgstr "áááááá ááªáá"
-
#: toolbars/TranscriptionToolBar.cpp:225
msgid "Adjust Sensitivity"
msgstr "ááá á«ááááááááá¡ ááá áááá"
@@ -9019,6 +8802,46 @@ msgstr "ááááá áá£ááááá¡ áªááááááááá (á
msgid "Key type"
msgstr "ááá¡áá¦áááá¡ á¢ááá"
+#: toolbars/TranscriptionToolBar.cpp:172
+msgid "Play-at-speed"
+msgstr "ááááá á á¡áá©á¥áá áá"
+
+#: toolbars/TranscriptionToolBar.cpp:197
+msgid "Left-to-On"
+msgstr "ááá áªá®ááá"
+
+#: toolbars/TranscriptionToolBar.cpp:200
+msgid "Right-to-Off"
+msgstr "ááá á¯áááá"
+
+#: toolbars/TranscriptionToolBar.cpp:203
+msgid "Left-to-Off"
+msgstr "ááá áªá®ááá"
+
+#: toolbars/TranscriptionToolBar.cpp:206
+msgid "Right-to-On"
+msgstr "ááá á¯áááá"
+
+#: toolbars/TranscriptionToolBar.cpp:209
+msgid "Select-Sound"
+msgstr "ááááá¨ááá - á®áá"
+
+#: toolbars/TranscriptionToolBar.cpp:212
+msgid "Select-Silence"
+msgstr "ááááá¨ááá - á¡áá©á£áá"
+
+#: toolbars/TranscriptionToolBar.cpp:215
+msgid "Make Labels"
+msgstr "ááá ááá§áááá¡ á¨áá¥ááá"
+
+#: toolbars/TranscriptionToolBar.cpp:218
+msgid "Add Label"
+msgstr "ááá ááá§áá¡ ááááá¢ááá"
+
+#: toolbars/TranscriptionToolBar.cpp:221
+msgid "Calibrate"
+msgstr "áááááá ááªáá"
+
#: widgets/AButton.cpp:303
msgid " (disabled)"
msgstr "(ááá£á¥áááá£ááá)"
@@ -9033,15 +8856,13 @@ msgstr "á¦ááááá¡"
#. i18n-hint: One-letter abbreviation for Left, in VU Meter
#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
-#: widgets/ASlider.cpp:612
-#: widgets/Meter.cpp:248
+#: widgets/ASlider.cpp:612 widgets/Meter.cpp:248
msgid "L"
msgstr "ááá áªá®"
#. i18n-hint: One-letter abbreviation for Right, in VU Meter
#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
-#: widgets/ASlider.cpp:615
-#: widgets/Meter.cpp:250
+#: widgets/ASlider.cpp:615 widgets/Meter.cpp:250
msgid "R"
msgstr "ááá á¯"
@@ -9090,8 +8911,7 @@ msgstr "Grabber"
msgid "%d rows, %d columns"
msgstr "%d á ááá, %d á¡ááá¢á"
-#: widgets/Grid.cpp:649
-#: widgets/Grid.cpp:776
+#: widgets/Grid.cpp:649 widgets/Grid.cpp:776
#, c-format
msgid "Row %d"
msgstr "á ááá %d"
@@ -9170,8 +8990,7 @@ msgstr "ááá á©ááááá áá á"
msgid "Cancel"
msgstr "ááá£á¥áááá"
-#: widgets/Ruler.cpp:1445
-#: widgets/Ruler.cpp:1446
+#: widgets/Ruler.cpp:1445 widgets/Ruler.cpp:1446
msgid "Vertical Ruler"
msgstr "ááá á¢ááááá£á á á¡áá®ááááá"
@@ -9415,3 +9234,15 @@ msgstr "á¨ááªáááá: %hs at line %lu"
msgid "Could not load file: \"%s\""
msgstr "á¨áá£á«ááááááá á¤ááááá¡ á©áá¢ááá ááá: \"%s\""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
+
diff --git a/locale/km.po b/locale/km.po
index 2d17c18..3c053f9 100644
--- a/locale/km.po
+++ b/locale/km.po
@@ -28,11 +28,11 @@ msgid "Audacity is a free program written by a team of volunteer <a href=\"http:
msgstr ""
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#. i18n-hint: The translation of "translator_credits" will appear
@@ -84,7 +84,7 @@ msgid "Special thanks:"
msgstr "á¢ááá»áâáá¶âáá·áááâ á"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
msgstr ""
#: AboutDialog.cpp:320
@@ -225,11 +225,21 @@ msgstr "á
á¼á"
msgid "Output Meter"
msgstr "á
áá"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
+#: Menus.cpp:164
+msgid "&New"
+msgstr "áááá¸"
+
+#: Menus.cpp:166
+msgid "&Open..."
+msgstr "áá¾á..."
+
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
+
#: AudacityApp.cpp:728 Menus.cpp:470
-msgid "&Preferences...\tCtrl+,"
-msgstr "á
ááá¼áâá
á·ááá...\tCtrl+,"
+msgid "&Preferences..."
+msgstr "á
ááá¼áâá
á·ááá..."
#: AudacityApp.cpp:810 AudacityApp.cpp:887
#, c-format
@@ -353,18 +363,16 @@ msgstr "ááá á»á á "
msgid "Error Initializing Audio"
msgstr "ááá á»áâáááá»áâáá¶âáá
á¶áááááá¾áâá¢á¼áá¸ááá¼"
+#: AudioIO.cpp:1225
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
+"Audacity has brought it back to start at zero.\n"
+"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
+msgstr ""
+
#: AudioIO.cpp:1236
msgid "Latency problem"
msgstr "áááá á¶ââáá¶ááááááá"
-#: AudioIO.cpp:1236
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
-"Audacity has brought it back to start at zero.\n"
-"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
-msgstr "áá¶áâááááááá¶áááááááâáá¶áááááá¶áâá²ááâá¢á¼áá¸ááá¼âáááâáá¶áááâáá¶ááâáá»áâáá¼ááá á\n"
-"Audacity áá¶áâáá¶ááá¶âáááá¡áááá¾áááá¸âá
á¶áááááá¾áâáá
âáá¼ááá á\n"
-"á¢áááâá¢á¶á
âáááá¼áâáááá¾á§áááááâáááá¼áâááááááá¶ (Time Shift Tool) (<---> ᬠF5) áá¾áááá¸âá¢á¼áâááâáá
âááááááâáááâáááá¹ááááá¼á á"
-
#: AutoRecovery.cpp:54
msgid "Automatic Crash Recovery"
msgstr "ááááááááâáá¶ááá¶ááâáááâáááááâáááááááá·"
@@ -590,8 +598,8 @@ msgstr "á
áááá¶áá (á
á»á
ááááâáá á¬âá
á»á
â
#. i18n-hint: This is the number of the command in the list
#: BatchProcessDialog.cpp:453
-msgid "No"
-msgstr "áááâááá"
+msgid "Num"
+msgstr ""
#: BatchProcessDialog.cpp:459
msgid "&Insert"
@@ -930,11 +938,11 @@ msgstr "á
áá»áááááá"
msgid "FFmpeg support not compiled in"
msgstr ""
-#: FFmpeg.cpp:101
+#: FFmpeg.cpp:103
msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
#: FFmpeg.cpp:104
@@ -992,11 +1000,12 @@ msgstr ""
msgid "FFmpeg not found"
msgstr ""
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
#: FFmpeg.h:109
@@ -1081,11 +1090,24 @@ msgstr "áá¶áá
áá..."
msgid "Export"
msgstr "áá¶áá
áá"
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
#: AboutDialog.cpp:688 Dependencies.cpp:308 FreqWindow.cpp:209
#: widgets/ErrorDialog.cpp:135
msgid "Close"
msgstr "áá·á"
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr ""
+
#: FreqWindow.cpp:272 FreqWindow.cpp:402 effects/AutoDuck.cpp:487
#: effects/AutoDuck.cpp:521 effects/AutoDuck.cpp:789
#: effects/Compressor.cpp:349 effects/Compressor.cpp:357
@@ -1103,6 +1125,15 @@ msgstr "dB"
msgid "Hz"
msgstr "Hz"
+#: Menus.cpp:3394
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "áá¾áááá¸ââáááááââáá·áá¶ááá ááââáááââáááá¾áââáá¶ááá¢ááâáááá¼áâááâáá¶áâá¢áááá¶ââáááá¼ââáá¼á
âáááá¶ á"
+
+#: Menus.cpp:3420
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "áá¶áââá¢á¼áá¸ááá¼ââá
ááá¾áââáááââáááá¼áââáá¶áââáááá¾á á áá¶áâââáá %.1f áá·áá¶áḠáááá¼áââáá¹áââáááá¼áâáá¶áââáá·áá¶á á"
+
#: FreqWindow.cpp:386
msgid "Not enough data selected."
msgstr "áá·áâáá¶áââáááá¾áââáá·ááááááââááááááááá¶áá á"
@@ -1142,6 +1173,21 @@ msgstr "ááááááá (Hz)\tááááá·á (dB)"
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "ááááááââáá»áâáááá¶ (áá·áá¶áá¸)\tááááááá (Hz)\tááááá·á"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr ""
+
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr ""
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr ""
@@ -1220,7 +1266,7 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr ""
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
msgstr ""
#: HelpText.cpp:244
@@ -1244,7 +1290,7 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr ""
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
msgstr ""
#: HelpText.cpp:383
@@ -1305,6 +1351,14 @@ msgstr "áááá¶áá"
msgid "GB"
msgstr "áá¸áá¶áá"
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
#: LabelDialog.cpp:52
msgid "Track"
msgstr "áá"
@@ -1419,21 +1473,13 @@ msgstr "áá¾áââáááááá Audacity"
msgid "&File"
msgstr "á¯ááá¶á"
-#: Menus.cpp:164
-msgid "&New\tCtrl+N"
-msgstr "áááá¸\tááááá¶(Ctrl)+N"
-
-#: Menus.cpp:166
-msgid "&Open...\tCtrl+O"
-msgstr "áá¾á...\tááááá¶(Ctrl)+O"
-
#: Menus.cpp:171
-msgid "&Close\tCtrl+W"
-msgstr "áá·á\tááááá¶(Ctrl)+W"
+msgid "&Close"
+msgstr "áá·á"
#: Menus.cpp:174
-msgid "&Save Project\tCtrl+S"
-msgstr "ááááá¶áá»áâáááááá\tááááá¶(Ctrl)+S"
+msgid "&Save Project"
+msgstr "ááááá¶áá»áâáááááá"
#: Menus.cpp:178 Project.cpp:2628
msgid "Save Project &As..."
@@ -1456,8 +1502,8 @@ msgid "&Import"
msgstr "áá¶áá
á¼á"
#: Menus.cpp:194
-msgid "&Audio...\tCtrl+Shift+I"
-msgstr "á¢á¼áá¸ááá¼...\tááááá¶(Ctrl)+áááá¼á(Shift)+I"
+msgid "&Audio..."
+msgstr "á¢á¼áá¸ááá¼..."
#: Menus.cpp:195
msgid "&Labels..."
@@ -1487,9 +1533,9 @@ msgstr "áá¶áá
ááâá
ááá¾á..."
msgid "Export MIDI..."
msgstr ""
-#: Menus.cpp:291
-msgid "CleanSpeech C&hain..."
-msgstr ""
+#: Menus.cpp:258
+msgid "Appl&y Chain..."
+msgstr "á¢áá»ááááâá
áááá¶áá..."
#: Menus.cpp:246 Menus.cpp:260
msgid "Edit C&hains..."
@@ -1503,10 +1549,6 @@ msgstr ""
msgid "I&mport CleanSpeech Presets..."
msgstr ""
-#: Menus.cpp:258
-msgid "Appl&y Chain..."
-msgstr "á¢áá»ááááâá
áááá¶áá..."
-
#: Menus.cpp:265
msgid "&Upload File..."
msgstr "áááá»áâá¯ááá¶áâá¡á¾á..."
@@ -1520,72 +1562,72 @@ msgid "&Print..."
msgstr "ááááá»ááá..."
#: Menus.cpp:285
-msgid "E&xit\tCtrl+Q"
-msgstr "á
áá\tááááá¶(Ctrl)+Q"
+msgid "E&xit"
+msgstr "á
áá"
#: Menus.cpp:293 toolbars/EditToolBar.cpp:76
msgid "&Edit"
msgstr "ááááááá½á"
#: Menus.cpp:297
-msgid "&Undo\tCtrl+Z"
-msgstr "áá·áâáááá¾âáá·á\tááááá¶(Ctrl)+Z"
+msgid "&Undo"
+msgstr "áá·áâáááá¾âáá·á"
#: Menus.cpp:305 prefs/KeyConfigPrefs.cpp:369 toolbars/EditToolBar.cpp:146
msgid "&Redo"
msgstr "áááá¾âáá·á"
#: Menus.cpp:318
-msgid "Cu&t\tCtrl+X"
-msgstr "áá¶áá\tááááá¶(Ctrl)+X"
+msgid "Cu&t"
+msgstr "áá¶áá"
#: Menus.cpp:322
-msgid "Spl&it Cut\tCtrl+Alt+X"
-msgstr "áááááâáá¶ááá¶áá\tááááá¶(Ctrl)+áááá½á(Alt)+X"
+msgid "Spl&it Cut"
+msgstr "áááááâáá¶ááá¶áá"
#: Menus.cpp:323
-msgid "&Copy\tCtrl+C"
-msgstr "á
áááá\tááááá¶(Ctrl)+C"
+msgid "&Copy"
+msgstr "á
áááá"
#: Menus.cpp:327
-msgid "&Paste\tCtrl+V"
-msgstr "áá·ááááá¶áá\tááááá¶(Ctrl)+V"
+msgid "&Paste"
+msgstr "áá·ááááá¶áá"
#: Menus.cpp:331
-msgid "Tri&m\tCtrl+T"
-msgstr "áá¶ááâááááá¹á\tááááá¶(Ctrl)+T"
+msgid "Tri&m"
+msgstr "áá¶ááâááááá¹á"
#: Menus.cpp:333
-msgid "&Delete\tCtrl+K"
-msgstr "áá»á\tááááá¶(Ctrl)+K"
+msgid "&Delete"
+msgstr "áá»á"
#: Menus.cpp:334
-msgid "Split D&elete\tCtrl+Alt+K"
-msgstr "áááááâáá¶áâáá»á\tááááá¶(Ctrl)+áááá½á(Alt)+K"
+msgid "Split D&elete"
+msgstr "áááááâáá¶áâáá»á"
#: Menus.cpp:381
-msgid "Silence Audi&o\tCtrl+L"
+msgid "Silence Audi&o"
msgstr ""
#: Menus.cpp:337
-msgid "Sp&lit\tCtrl+I"
-msgstr "ááááá\tááááá¶(Ctrl)+I"
+msgid "Sp&lit"
+msgstr "ááááá"
#: Menus.cpp:342
-msgid "Split Ne&w\tCtrl+Alt+I"
-msgstr "áááááâáááá¸\tááááá¶(Ctrl)+áááá½á(Alt)+I"
+msgid "Split Ne&w"
+msgstr "áááááâáááá¸"
#: Menus.cpp:347
-msgid "&Join\tCtrl+J"
-msgstr "áááá¶áá\tááááá¶(Ctrl)+J"
+msgid "&Join"
+msgstr "áááá¶áá"
#: Menus.cpp:394
-msgid "Detac&h at Silences\tCtrl+Alt+J"
+msgid "Detac&h at Silences"
msgstr ""
#: Menus.cpp:350
-msgid "Duplic&ate\tCtrl+D"
-msgstr "áááá½á\tááááá¶(Ctrl)+D"
+msgid "Duplic&ate"
+msgstr "áááá½á"
#: Menus.cpp:401 Menus.cpp:641
msgid "Stereo Trac&k to Mono"
@@ -1597,82 +1639,67 @@ msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:365
-msgid "&Cut\tAlt+X"
-msgstr "áá¶áá\táááá½á(Alt)+X"
+msgid "&Cut"
+msgstr "áá¶áá"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:370
-msgid "&Split Cut\tShift+Alt+X"
-msgstr "áááááâáá¶áâáá¶áá\táááá¼á(Shift)+áááá½á(Alt)+X"
+msgid "&Split Cut"
+msgstr "áááááâáá¶áâáá¶áá"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:375
-msgid "Co&py\tShift+Alt+C"
-msgstr "á
áááá\táááá¼á(Shift)+áááá½á(Alt)+C"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:381
-msgid "&Delete\tAlt+K"
-msgstr "áá»á\táááá½á(Alt)+K"
+msgid "Co&py"
+msgstr "á
áááá"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:386
-msgid "Sp&lit Delete\tShift+Alt+K"
-msgstr "áááááâáá¶âááá»á\táááá¼á(Shift)+áááá½á(Alt)+K"
+msgid "Sp&lit Delete"
+msgstr "áááááâáá¶âááá»á"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:391
-msgid "Sile&nce\tAlt+L"
-msgstr "áááá¶áá\táááá½á(Alt)+L"
+msgid "Sile&nce"
+msgstr "áááá¶áá"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:397
-msgid "Spli&t\tAlt+I"
-msgstr "ááááá\táááá½á(Alt)+I"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:402
-msgid "&Join\tAlt+J"
-msgstr "áááá¶áá\táááá½á(Alt)+J"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:452
-msgid "Detac&h at Silences\tShift+Alt+J"
-msgstr ""
+msgid "Spli&t"
+msgstr "ááááá"
#: Menus.cpp:457
msgid "&Select"
msgstr ""
#: Menus.cpp:414
-msgid "&All\tCtrl+A"
-msgstr "áá¶ááá¢áá\tááááá¶(Ctrl)+A"
+msgid "&All"
+msgstr "áá¶ááá¢áá"
#: Menus.cpp:415
-msgid "&None\tCtrl+Shift+A"
-msgstr "áááá¶á\tááááá¶(Ctrl)+áááá¼á(Shift)+A"
+msgid "&None"
+msgstr "áááá¶á"
#: Menus.cpp:463
#, fuzzy
-msgid "&Left at Playback Position\t["
-msgstr "áá»áâáá
âáá¸áá¶ááâá
á¶ááâá¡á¾áâáá·á\t["
+msgid "&Left at Playback Position"
+msgstr "áá»áâáá
âáá¸áá¶ááâá
á¶ááâá¡á¾áâáá·á"
#: Menus.cpp:464
#, fuzzy
-msgid "&Right at Playback Position\t]"
-msgstr "áá¶áâáááá¶áââáá¸áá¶ááâá
á¶ááâá¡á¾áâáá·á\t]"
+msgid "&Right at Playback Position"
+msgstr "áá¶áâáááá¶áââáá¸áá¶ááâá
á¶ááâá¡á¾áâáá·á"
#: Menus.cpp:468
-msgid "Track &Start to Cursor\tShift+J"
+msgid "Track &Start to Cursor"
msgstr ""
#: Menus.cpp:469
-msgid "Cursor to Track &End\tShift+K"
+msgid "Cursor to Track &End"
msgstr ""
#: Menus.cpp:431
-msgid "Find &Zero Crossings\tZ"
-msgstr "ááâáá¶âáâáááááââáá¼ááá\tZ"
+msgid "Find &Zero Crossings"
+msgstr "ááâáá¶âáâáááááââáá¼ááá"
#: Menus.cpp:478
msgid "Mo&ve Cursor"
@@ -1689,11 +1716,11 @@ msgid "to Selection En&d"
msgstr "áá
âá
á»áââááááá¾á"
#: Menus.cpp:485
-msgid "to Track &Start\tJ"
+msgid "to Track &Start"
msgstr ""
#: Menus.cpp:486
-msgid "to Track &End\tK"
+msgid "to Track &End"
msgstr ""
#: Menus.cpp:493
@@ -1716,29 +1743,8 @@ msgstr ""
msgid "&Unlock"
msgstr ""
-#: Menus.cpp:462
-msgid "Turn Snap-To On"
-msgstr "áá¾áâáá¶áââáááá¶áá"
-
-#: Menus.cpp:463
-msgid "Turn Snap-To Off"
-msgstr "áá·áâáá¶âáâáááá¶áá"
-
-#: Menus.cpp:464
-msgid "Turn Grid Snap On"
-msgstr "áá¾áâáá¶âáââáááá¶ááââââáááá¡á¶á
áááááá"
-
-#: Menus.cpp:465
-msgid "Turn Grid Snap Off"
-msgstr "áá·áâáá¶áâáááá¶ááââáááá¡á¶á
áááááá"
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
#: Menus.cpp:521
-msgid "Pre&ferences...\tCtrl+,"
-msgstr ""
-
-#: Menus.cpp:525
-msgid "Pre&ferences...\tCtrl+P"
+msgid "Pre&ferences..."
msgstr ""
#: Menus.cpp:484
@@ -1746,36 +1752,36 @@ msgid "&View"
msgstr "áá¾á"
#: Menus.cpp:486
-msgid "Zoom &In\tCtrl+1"
-msgstr "ááááá¸á\tááááá¶(Ctrl)+1"
+msgid "Zoom &In"
+msgstr "ááááá¸á"
#: Menus.cpp:489
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "ááááá¸áâáááááá¶\tááááá¶(Ctrl)+2"
+msgid "Zoom &Normal"
+msgstr "ááááá¸áâáááááá¶"
#: Menus.cpp:490
-msgid "Zoom &Out\tCtrl+3"
-msgstr "ááááá½áâ\tááááá¶(Ctrl)+3"
+msgid "Zoom &Out"
+msgstr "ááááá½áâ"
#: Menus.cpp:493
-msgid "&Fit in Window\tCtrl+F"
-msgstr "ááâáá¹áâáááá¢á½á
\tááááá¶(Ctrl)+F"
+msgid "&Fit in Window"
+msgstr "ááâáá¹áâáááá¢á½á
"
#: Menus.cpp:494
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "ááâáá¹áâááááá\tááááá¶(Ctrl)+áááá¼á(Shift)+F"
+msgid "Fit &Vertically"
+msgstr "ááâáá¹áâááááá"
#: Menus.cpp:495
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "ááááá¸áâááâáá¹áâááááá¾á\tááááá¶(Ctrl)+E"
+msgid "&Zoom to Selection"
+msgstr "ááááá¸áâááâáá¹áâááááá¾á"
#: Menus.cpp:498
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
-msgstr "áááââááâáá¶ááá¢áá\tááááá¶(Ctrl)+áááá¼á(Shift)+C"
+msgid "&Collapse All Tracks"
+msgstr "áááââááâáá¶ááá¢áá"
#: Menus.cpp:499
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
-msgstr "ááááá¸áââááââáá¶ááâá¢áá\tááááá¶(Ctrl)+áááá¼á(Shift)+X"
+msgid "E&xpand All Tracks"
+msgstr "ááááá¸áââááââáá¶ááâá¢áá"
#: Menus.cpp:553
#, fuzzy
@@ -1845,40 +1851,40 @@ msgstr ""
msgid "T&ransport"
msgstr ""
-#: Menus.cpp:591
-msgid "Play\tSpace"
-msgstr ""
+#: toolbars/ControlToolBar.cpp:177
+msgid "Play"
+msgstr "á
á¶áá"
#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
+msgid "&Loop Play"
msgstr ""
#: Menus.cpp:595
-msgid "&Pause\tP"
+msgid "&Pause"
msgstr ""
#: Menus.cpp:596
-msgid "&Stop\tSpace"
+msgid "&Stop"
msgstr ""
#: Menus.cpp:786
-msgid "Skip to Start\tHome"
+msgid "Skip to Start"
msgstr "ááááâáá¾áááá¸âá
á¶áááááá¾á áá¾á"
#: Menus.cpp:787
-msgid "Skip to End\tEnd"
+msgid "Skip to End"
msgstr "ááááââáá¾áááá¸âáááá
áá á
á»á"
#: Menus.cpp:602
-msgid "&Record\tR"
+msgid "&Record"
msgstr ""
#: Menus.cpp:604
-msgid "&Timer Record...\tShift+T"
+msgid "&Timer Record..."
msgstr ""
#: Menus.cpp:606
-msgid "Append Record\tShift+R"
+msgid "Append Record"
msgstr ""
#: Menus.cpp:609
@@ -1906,8 +1912,8 @@ msgid "Add &New"
msgstr ""
#: Menus.cpp:545
-msgid "&Audio Track\tCtrl+Shift+N"
-msgstr "ááâá¢á¼áá¸ááá¼\tááááá¶(Ctrl)+áááá¼á(Shift)+N"
+msgid "&Audio Track"
+msgstr "ááâá¢á¼áá¸ááá¼"
#: Menus.cpp:546
msgid "&Stereo Track"
@@ -1922,8 +1928,8 @@ msgid "Mi&x and Render"
msgstr ""
#: Menus.cpp:564
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
-msgstr "áá¶á áá·áââáááá á¶áââáá
ââááâáááá¸\tááááá¶(Ctrl)+áááá¼á(Shift)+M"
+msgid "Mix and Render to New Track"
+msgstr "áá¶á áá·áââáááá á¶áââáá
ââááâáááá¸"
#: Menus.cpp:568
msgid "&Resample..."
@@ -1934,11 +1940,11 @@ msgid "Remo&ve Tracks"
msgstr "ááâááââá
áá"
#: Menus.cpp:669
-msgid "&Mute All Tracks\tCtrl+U"
+msgid "&Mute All Tracks"
msgstr ""
#: Menus.cpp:670
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
+msgid "&UnMute All Tracks"
msgstr ""
#: Menus.cpp:585
@@ -1989,17 +1995,17 @@ msgstr ""
msgid "Synchronize MIDI with Audio"
msgstr ""
-#: Menus.cpp:708
-msgid "Link Audio and Label Tracks"
+#: Menus.cpp:686
+msgid "&Link Audio and Label Tracks"
msgstr ""
-#: Menus.cpp:611
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "ááááááââáááá¶áââáá
ââááááá¾á\tááááá¶ (Ctrl) + B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr ""
#: Menus.cpp:612
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "ááááááââáááá¶áâââáá
âáá¸áá¶ááâá
á¶ááââá¡á¾áâáá·á\tááááá¶(Ctrl)+M"
+msgid "Add Label At &Playback Position"
+msgstr "ááááááââáááá¶áâââáá
âáá¸áá¶ááâá
á¶ááââá¡á¾áâáá·á"
#: Menus.cpp:718
msgid "S&ort tracks"
@@ -2025,14 +2031,14 @@ msgstr ""
msgid "Effe&ct"
msgstr "áááááá"
-#: Menus.cpp:658
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "áááá¾ââááááááââá
á»áâáááááââááááââááá\tááááá¶(Ctrl)+R"
-
#: Menus.cpp:690
msgid "&Analyze"
msgstr "áááá¾ââáá·áá¶á"
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
+
#: Menus.cpp:692
msgid "Plot Spectrum..."
msgstr "áá·áá¶áááââááááá..."
@@ -2049,9 +2055,9 @@ msgstr "á¢ááḠAudacity CleanSpeech..."
msgid "&Show Welcome Message..."
msgstr "áááá á¶áââáá¶áâáááá¶áááá..."
-#: Menus.cpp:736
-msgid "&Index..."
-msgstr "áá·áá·áááá..."
+#: Menus.cpp:958
+msgid "&Help..."
+msgstr ""
#: Menus.cpp:961
msgid "Show &Log..."
@@ -2069,180 +2075,148 @@ msgstr "ááá Benchmark..."
msgid "&Audio Device Info..."
msgstr "áááááá¶áââá§áááááââá¢á¼áá¸ááá¼..."
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
msgstr ""
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
msgstr ""
#: Menus.cpp:762
-msgid "Selection Tool\tF1"
+msgid "Selection Tool"
msgstr "á§áááááââáááá¾á F1"
#: Menus.cpp:763
-msgid "Envelope Tool\tF2"
+msgid "Envelope Tool"
msgstr "á§áááááââáááááââáááá»ááá F2"
#: Menus.cpp:764
-msgid "Draw Tool\tF3"
+msgid "Draw Tool"
msgstr "á§áááááâáá¼á F3"
#: Menus.cpp:765
-msgid "Zoom Tool\tF4"
+msgid "Zoom Tool"
msgstr "á§áááááâááááá¸á F4"
#: Menus.cpp:766
-msgid "Time Shift Tool\tF5"
+msgid "Time Shift Tool"
msgstr "á§áááááâáááá¼áâáááâáááá¶ F5"
#: Menus.cpp:767
-msgid "Multi Tool\tF6"
-msgstr "á§áááááââá
ááá¾á\t F6"
+msgid "Multi Tool"
+msgstr "á§áááááââá
ááá¾á"
#: Menus.cpp:769
-msgid "Next Tool\tD"
+msgid "Next Tool"
msgstr "á§áááááâââááááá¶áá D"
#: Menus.cpp:770
-msgid "Previous Tool\tA"
+msgid "Previous Tool"
msgstr "á§áááááââáá»á A"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
-msgstr ""
-
-#: Menus.cpp:773
-msgid "Stop\tS"
-msgstr "áááááá S"
-
-#: Menus.cpp:774
-msgid "Pause\tP"
-msgstr "ááá¢á¶á P"
-
-#: Menus.cpp:775
-msgid "Record\tR"
-msgstr "áá R"
-
-#: Menus.cpp:1001
-msgid "Record Append\tShift+R"
+msgid "Play/Stop"
msgstr ""
#: Menus.cpp:1003
-msgid "Play/Stop and Set Cursor\tShift+A"
+msgid "Play/Stop and Set Cursor"
msgstr ""
#: Menus.cpp:780
-msgid "Play One Second\t1"
-msgstr "á
á¶ááââáá½áââáá·áá¶áá¸\tá¡"
+msgid "Play One Second"
+msgstr "á
á¶ááââáá½áââáá·áá¶áá¸"
#: Menus.cpp:781
-msgid "Play To Selection\tB"
+msgid "Play To Selection"
msgstr "á
á¶ááâáááââááááááââáááá¾á B"
-#: Menus.cpp:782
-msgid "Play Looped\tL"
-msgstr "á
á¶ááâááááá·áâáá»á L"
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
-
#: Menus.cpp:784
-msgid "Play Cut Preview\tC"
+msgid "Play Cut Preview"
msgstr "ááá áá¶áá áá¾áâáá¶áá»á C"
#: Menus.cpp:789
-msgid "Selection to Start\tShift+Home"
+msgid "Selection to Start"
msgstr "ááááá¾áâáá¾áááá¸âá
á¶áááááá¾á áááá¼á(Shift)+áá¾á(Home)"
#: Menus.cpp:790
-msgid "Selection to End\tShift+End"
+msgid "Selection to End"
msgstr "ááááá¾áâáá
âá
á»á áááá¼á(Shift)+á
á»á(End)"
#: Menus.cpp:792
-msgid "DeleteKey\tBackspace"
-msgstr "áááá¶ááâá
á»á
âáá»á (Delete)\táá»áâááâááááá (Backspace)"
+msgid "DeleteKey"
+msgstr "áááá¶ááâá
á»á
âáá»á (Delete)"
#: Menus.cpp:797
-msgid "DeleteKey2\tDelete"
+msgid "DeleteKey2"
msgstr "áááá¶ááâá
á»á
âáá»á ᢠáá»á (Delete)"
-#: Menus.cpp:803
-msgid "Seek left short period during playback\tLeft"
-msgstr "áááááááâáááâáááâáááá¸ââáá
âáááááâááá¡á»áâáááâá
á¶ááâá¡á¾áâáá·á ááááá"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
+msgstr ""
-#: Menus.cpp:804
-msgid "Seek right short period during playback\tRight"
-msgstr "áááááááâáááâáááâáááá¸âáá
ââáááá¶áâááá¡á»áâáááâá
á¶ááâá¡á¾áâáá·á áááá¶á"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
+msgstr ""
-#: Menus.cpp:805
-msgid "Seek left long period during playback\tShift+Left"
-msgstr "áááááááââáááâáááââáááâáá
ââáááááâááá¡á»áâáááâá
á¶ááâá¡á¾áâáá·á áááá¼á(Shift)+ááááá"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
+msgstr ""
-#: Menus.cpp:806
-msgid "Seek right long period during playback\tShift+Right"
-msgstr "áááááááâáááâáááâáááâáá
ââáááá¶áâááá¡á»áâáááâá
á¶ááâá¡á¾áâáá·á áááá¼á(Shift)+áááá¶á"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
+msgstr ""
#: Menus.cpp:810
-msgid "Move Focus to Previous Track\tUp"
+msgid "Move Focus to Previous Track"
msgstr "áááá¶áááá¸ââáá¶áââáááááââáá
âááââáá»á á¡á¾áââáá¾"
-#: Menus.cpp:811
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
-msgstr "áááá¶áááá¸âáá¶áâáááááâáá
âááâáá»á á á¾áâáááá¶áááááá¼áâááááá¾á áááá¼á(Shift)+á¡á¾áâáá¾"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
+msgstr ""
#: Menus.cpp:812
-msgid "Move Focus to Next Track\tDown"
-msgstr "áááá¶áááá¸ââáá¶áââáááááââáá
ââááââááááá¶áá\tá
á»áââááááá"
+msgid "Move Focus to Next Track"
+msgstr "áááá¶áááá¸ââáá¶áââáááááââáá
ââááââááááá¶áá"
-#: Menus.cpp:813
-msgid "Move Focus to Next and Change Selection\tShift+Down"
-msgstr "áááá¶áááá¸ââáá¶áââáááááââáá
ââááâááááá¶áá áá·áâáááá¶áááááá¼áâááááá¾áâ áááá¼á(Shift)+á
á»áâááááá"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
+msgstr ""
#: Menus.cpp:814
-msgid "Toggle Focused Track\tReturn"
-msgstr "áá·áââáá¾áâááââáááââááááá\táááá¡áá"
-
-#: Menus.cpp:815
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr "áá·áâáá¾áââááââáááâááááá\tNUMPAD_ENTER"
-
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
-msgstr ""
+msgid "Toggle Focused Track"
+msgstr "áá·áââáá¾áâááââáááââááááá"
#: Menus.cpp:818
-msgid "Cursor Left\tLeft"
+msgid "Cursor Left"
msgstr "ááááááââááááá·á
âááááá ááááá"
#: Menus.cpp:819
-msgid "Cursor Right\tRight"
+msgid "Cursor Right"
msgstr "ááááááâááááá·á
ââáááá¶á áááá¶á"
#: Menus.cpp:820
-msgid "Cursor Short Jump Left\t,"
-msgstr "ááááááâááááá·á
ââáááá¸ââáááââáá
âááááá\t,"
+msgid "Cursor Short Jump Left"
+msgstr "ááááááâááááá·á
ââáááá¸ââáááââáá
âááááá"
#: Menus.cpp:821
-msgid "Cursor Short Jump Right\t."
-msgstr "ááááááâááááá·á
âáááá¸áááâáá
âáááá¶á\t."
+msgid "Cursor Short Jump Right"
+msgstr "ááááááâááááá·á
âáááá¸áááâáá
âáááá¶á"
#: Menus.cpp:822
-msgid "Cursor Long Jump Left\tShift+,"
+msgid "Cursor Long Jump Left"
msgstr "ááááááâááááá·á
âáááââáááââáá
âááááá áááá¼áâ(Shift)+"
#: Menus.cpp:823
-msgid "Cursor Long Jump Right\tShift+."
-msgstr "ááááááâááááá·á
ââáááââáááââáá
âáááá¶á\táááá¼á(Shift)+ á"
+msgid "Cursor Long Jump Right"
+msgstr "ááááááâááááá·á
ââáááââáááââáá
âáááá¶á"
#: Menus.cpp:825
-msgid "Selection Extend Left\tShift+Left"
+msgid "Selection Extend Left"
msgstr "ááááá¸áâááááá¾áââáá
âááááá áááá¼á(Shift)+ááááá"
#: Menus.cpp:826
-msgid "Selection Extend Right\tShift+Right"
+msgid "Selection Extend Right"
msgstr "ááááá¸áââááááá¾áââáá
âáááá¶á áááá¼á(Shift)+áááá¶á"
#: Menus.cpp:828
@@ -2254,51 +2228,51 @@ msgid "Set (or Extend) Right Selection"
msgstr "ááááá (á¬âááááá¸á) ááááá¾áâââáááá¶á"
#: Menus.cpp:831
-msgid "Selection Contract Left\tCtrl+Shift+Right"
+msgid "Selection Contract Left"
msgstr "ááááá½áââááááá¾áâáá
âááááá ááááá¶(Ctrl)+áááá¼á(Shift)+áááá¶á"
#: Menus.cpp:832
-msgid "Selection Contract Right\tCtrl+Shift+Left"
+msgid "Selection Contract Right"
msgstr "ááááá½áâááááá¾áâáá
âáááá¶á ááááá¶(Ctrl)+áááá¼á(Shift)+ááááá"
#: Menus.cpp:834
-msgid "Change pan on focused track\tShift+P"
+msgid "Change pan on focused track"
msgstr "áááá¶áááááá¼áââáááááââáá¾ââááââáááââááááá áááá¼á(Shift)+P"
#: Menus.cpp:835
-msgid "Pan left on focused track\tAlt+Shift+Left"
+msgid "Pan left on focused track"
msgstr "áááááââáááááââáá¾ââááââáááââááááá áááá½á(Alt)+áááá¼á(Shift)+ááááá"
#: Menus.cpp:836
-msgid "Pan right on focused track\tAlt+Shift+Right"
+msgid "Pan right on focused track"
msgstr "áááááââáááá¶áââáá¾âááââáááââááááá áááá½á(Alt)+áááá¼á(Shift)+áááá¶á"
#: Menus.cpp:837
-msgid "Change gain on focused track\tShift+G"
+msgid "Change gain on focused track"
msgstr "áááá¶áááááá¼áââáááá¾áââááââáááââáááááââáá¾ áááá¼á(Shift)+G"
#: Menus.cpp:838
-msgid "Increase gain on focused track\tAlt+Shift+Up"
+msgid "Increase gain on focused track"
msgstr "ááááá¾áââáá¶áââááá½áââáá¾âááâáááââááááá áááá½á(Alt)+áááá¼á(Shift)+áá¾"
#: Menus.cpp:839
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
+msgid "Decrease gain on focused track"
msgstr "áááááââáá¶áââááá½áââáá¾ââááââáááââááááá áááá½áâ(Alt)+áááá¼á(Shift)+á
á»á"
#: Menus.cpp:840
-msgid "Open menu on focused track\tShift+M"
+msgid "Open menu on focused track"
msgstr "áá¾áââáááºáá»áââáá¾ââááââáááââááááá áááá¼á(Shift)+M"
#: Menus.cpp:841
-msgid "Mute/Unmute focused track\tShift+U"
+msgid "Mute/Unmute focused track"
msgstr "áááá¶áá/ááºâááâáááââááááá áááá¼á(Shift)+U"
#: Menus.cpp:842
-msgid "Solo/Unsolo focused track\tShift+S"
+msgid "Solo/Unsolo focused track"
msgstr "áá¼á¡á¼/áááâáá¼á¡á¼ ááâáááâááááá áááá¼á(Shift)+S"
#: Menus.cpp:843
-msgid "Close focused track\tShift+C"
+msgid "Close focused track"
msgstr "áá·áâááââááááá¶áââááááá áááá¼á(Shift)+C"
#: Menus.cpp:845
@@ -2310,7 +2284,35 @@ msgid "Snap To Off"
msgstr "áá·áâáá¶âááááá¶áá"
#: Menus.cpp:1073
-msgid "Full screen on/off\tF11"
+msgid "Full screen on/off"
+msgstr ""
+
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr ""
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr ""
+
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr ""
+
+#: Menus.cpp:1074
+msgid "Adjust input source"
msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
@@ -2371,7 +2373,7 @@ msgstr "á¢áááâáááá¼áââááâáááá¾áââáá
#: Menus.cpp:2005
#, c-format
-msgid "Repeat %s\tCtrl+R"
+msgid "Repeat %s"
msgstr "áááá¾ %s ááááâááá ááááá¶(Ctrl)+R"
#: Menus.cpp:2136
@@ -2580,15 +2582,6 @@ msgstr "áá»áââáá
ââááââáááá¸"
msgid "Split at labels"
msgstr "áá»áââáá
âáááá¶á"
-#: Menus.cpp:3394
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "áá¾áááá¸ââáááááââáá·áá¶ááá ááââáááââáááá¾áââáá¶ááá¢ááâáááá¼áâááâáá¶áâá¢áááá¶ââáááá¼ââáá¼á
âáááá¶ á"
-
-#: Menus.cpp:3420
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "áá¶áââá¢á¼áá¸ááá¼ââá
ááá¾áââáááââáááá¼áââáá¶áââáááá¾á á áá¶áâââáá %.1f áá·áá¶áḠáááá¼áââáá¹áââáááá¼áâáá¶áââáá·áá¶á á"
-
#: Menus.cpp:3546
#, c-format
msgid "Imported labels from '%s'"
@@ -2807,6 +2800,10 @@ msgstr "áá¶áâáááá á¶âáááá»áâáá¶áâáááá
msgid "Print"
msgstr "ááááá»ááá"
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr ""
+
#: Project.cpp:635
msgid "Main Mix"
msgstr "áá¶áâáá"
@@ -2820,9 +2817,9 @@ msgstr "áá¼áâáááá¶ááááâááâáá¶áá Audacity
msgid "(Recovered)"
msgstr "(áá¶áâááááááááâá¯ááá¶á)"
-#: Project.cpp:1472 TrackPanel.cpp:772 toolbars/ControlToolBar.cpp:191
+#: Menus.cpp:775
msgid "Record"
-msgstr "áá"
+msgstr "áá R"
#: Project.cpp:1472 TrackPanel.cpp:772
msgid "Recorded Audio"
@@ -2845,9 +2842,9 @@ msgstr ""
msgid "Save changes?"
msgstr "ááááá¶âáá»áâáá¶áâáááá¶áááááá¼á ?"
-#: Project.cpp:1684
-msgid "All files|*.*|All supported files|"
-msgstr "á¯ááá¶áâáá¶ááá¢ááâ|*.*|âá¯ááá¶áâáááâáá¶ááááâáá¶ááá¢áá|"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
+msgstr ""
#: Project.cpp:1709
msgid "Select one or more audio files..."
@@ -2876,6 +2873,17 @@ msgstr ""
msgid "Opening old project file"
msgstr "áá¾áâá¯ááá¶áâááááááâá
á¶áá"
+#: Project.cpp:2073
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr ""
+
#: Project.cpp:1801 Project.cpp:1809
msgid "Error opening file"
msgstr "ááá á»áâáááá»áâáá¶áâáá¾áâá¯ááá¶á"
@@ -2933,10 +2941,12 @@ msgstr "á¯ááá¶áâáááâáááá¼áâáá¶áâáááá
msgid "Can't open project file"
msgstr "áá·áâá¢á¶á
âáá¾áâá¯ááá¶áâáááááá"
-#: Project.cpp:2357
+#: Project.cpp:2484
#, c-format
msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
msgstr ""
@@ -2956,16 +2966,22 @@ msgstr ""
msgid "Warning empty project"
msgstr ""
-#: Project.cpp:2647
+#: Project.cpp:2792
#, c-format
msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+"is not writable or the disk is full."
msgstr ""
#: Project.cpp:2366 Project.cpp:2380
msgid "Error saving project"
msgstr "ááá á»áâáááá»áâáá¶áâááááá¶âáá»áâáááááá"
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
#: Project.cpp:2442
#, c-format
msgid "Saved %s"
@@ -3124,6 +3140,163 @@ msgstr "á¢á¤ ááá¸á PCM"
msgid "32-bit float"
msgstr "á£á¢ ááá¸á float"
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
+
+#: export/ExportMultiple.cpp:204 prefs/DirectoriesPrefs.cpp:92
+msgid "Choose..."
+msgstr "áááá¾á..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
+
+#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
+msgid "false"
+msgstr "áá·ááá·á"
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr "á§ááááá"
+
+#: toolbars/ControlToolBar.cpp:82
+msgid "Control"
+msgstr "áááá½ááá·áá·ááá"
+
+#: toolbars/MixerToolBar.cpp:58
+msgid "Mixer"
+msgstr "á§áááááâáá¶á"
+
+#: toolbars/MeterToolBar.cpp:50
+msgid "Meter"
+msgstr "áááááá"
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
+#: toolbars/DeviceToolBar.cpp:54
+msgid "Device"
+msgstr "á§ááááá"
+
+#: toolbars/TranscriptionToolBar.cpp:82
+msgid "Transcription"
+msgstr "áá¶áâá
áááá"
+
+#: TrackPanel.cpp:448 TrackPanel.cpp:449
+msgid "Track Panel"
+msgstr "áááááâáá"
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: export/ExportMultiple.cpp:246
+msgid "Tracks"
+msgstr "áá"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
#: Screenshot.cpp:384
msgid "Saved "
msgstr "áá¶áâááááá¶áá»á "
@@ -3132,6 +3305,10 @@ msgstr "áá¶áâááááá¶áá»á "
msgid "Error trying to save file: "
msgstr "ááá á»áâáááá»áâáá¶áâáááá¶áá¶áâááááá¶âáá»áâá¯ááá¶á á "
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
#: Sequence.cpp:732 Sequence.cpp:742 Sequence.cpp:749
msgid "Gap detected in project file\n"
msgstr "á
áááááâááâáá¾áâáááá»áâáááááâáááááá\n"
@@ -3270,6 +3447,10 @@ msgstr "ááá á»áâáááá»áâáá¶áâáááá»áâáá·
msgid "Save Metadata As:"
msgstr "ááááá¶áá»áâáá·ááááááâáááá¶âáá¶Â á"
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
#: Theme.cpp:638
#, c-format
msgid "Audacity could not write file:\n"
@@ -3357,6 +3538,14 @@ msgstr "áá·ááááá¶"
msgid "Audacity Timer Record"
msgstr "á§áááááâáááááâáááâááâáááá Audacity"
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
#: TimerRecordDialog.cpp:225
msgid "Recording start"
msgstr ""
@@ -3396,10 +3585,6 @@ msgstr ""
msgid "Audacity Timer Record - Waiting for Start"
msgstr ""
-#: TrackPanel.cpp:448 TrackPanel.cpp:449
-msgid "Track Panel"
-msgstr "áááááâáá"
-
#: TrackPanel.cpp:492 export/ExportPCM.cpp:133 prefs/QualityPrefs.cpp:97
msgid "Other..."
msgstr "ááááááááá..."
@@ -3452,6 +3637,10 @@ msgstr "ááááá¾áâááâáááááááá¢á¼"
msgid "Split Stereo Track"
msgstr "áá»áâááâáááááááá¢á¼"
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr ""
+
#: TrackPanel.cpp:516
msgid "Set Sample Format"
msgstr "áááááâááááááááá¶áâáááá¼"
@@ -3651,14 +3840,6 @@ msgstr "áááááâáááâáá¶áâááááááá¼á"
msgid "Adjusted gain"
msgstr "áááá¾áâáááâáá¶áâááááááá¼á"
-#: TrackPanel.cpp:5796
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5797
-msgid "Clear any grouping"
-msgstr ""
-
#: TrackPanel.cpp:5658
msgid "Can't delete track with active audio"
msgstr "áá·áâá¢á¶á
âáá»áâááâáááâáá¶áâá¢á¼áá¸ááá¼âááááá"
@@ -3693,6 +3874,11 @@ msgstr "áá¶ááá"
msgid "Split stereo track '%s'"
msgstr "áá»áâááâáááááááá¢á¼ '%s'"
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
#: TrackPanel.cpp:5879
#, c-format
msgid "Made '%s' a stereo track"
@@ -3769,6 +3955,10 @@ msgstr "áááááâáá»á"
msgid "Face size"
msgstr "ááá áâáá»á"
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr ""
+
#: TrackPanel.cpp:6756
msgid "Mute"
msgstr "áááá¶áá"
@@ -3847,10 +4037,10 @@ msgstr "áááááá·áá¸âáááá½áâáḠ1 ááá %i"
msgid "Plugins %i to %i"
msgstr "áááááá·áá¸âáááá½ááḠ%i ááá %i"
-#: commands/CommandManager.cpp:857
-#, fuzzy
-msgid "Disallowed for some reason. Try selecting some audio first?"
-msgstr "áá·áâá¢áá»áááá¶áâá
ááááâá ááá»ááâáá½áâá
ááá½á á áááá¶áá¶áâáááá¾áâá¢á¼áá¸ááá¼âááááâáá¶áá»á ?"
+#: commands/CommandManager.cpp:923
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
+msgstr ""
#: commands/CommandManager.cpp:724
msgid "You can only do this when playing and recording are\n"
@@ -4296,12 +4486,11 @@ msgstr ""
msgid "Decay Time"
msgstr ""
-#: effects/Compressor.cpp:504
-msgid "Normalize to 0dB after compressing"
-msgstr "áááá¾á²ááâáá
âáá¶ 0dB áááááá¶áâááááá¶ááâáá¸âáâáááá á¶ááâ"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
+msgstr ""
#: effects/Compressor.cpp:563
-#, c-format
#, fuzzy
msgid "Threshold %d dB"
msgstr "ááááá·áâáááááºÂ á %d dB"
@@ -4332,7 +4521,6 @@ msgid "%.1f:1"
msgstr ""
#: effects/Compressor.cpp:575
-#, c-format
#, fuzzy
msgid "Attack Time %.1f secs"
msgstr "áááâáááá¶âáá¶á á %.1f áá·áá¶áá¸"
@@ -4355,6 +4543,10 @@ msgstr "á§áááááâáááá á¶áá..."
msgid "Applying Dynamic Range Compression..."
msgstr "áááá»áââá¢áá»ááááââáá¶áââáááá á¶ááââáá½áââáá¶ááááá..."
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
msgstr ""
@@ -4374,19 +4566,6 @@ msgid "Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
-#: effects/Contrast.cpp:190
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:277 effects/Contrast.cpp:288 effects/Contrast.cpp:371
-#: effects/Contrast.cpp:415
-msgid "Measured"
-msgstr ""
-
#: effects/Contrast.cpp:318
msgid "Contrast Analyzer"
msgstr ""
@@ -4420,6 +4599,11 @@ msgstr ""
msgid "Foreground end time"
msgstr ""
+#: effects/Contrast.cpp:277 effects/Contrast.cpp:288 effects/Contrast.cpp:371
+#: effects/Contrast.cpp:415
+msgid "Measured"
+msgstr ""
+
#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
msgid "Use selection"
msgstr ""
@@ -4464,16 +4648,8 @@ msgstr ""
msgid "Help for WCAG2 Audio Contrast Analyzer"
msgstr ""
-#: toolbars/ControlToolBar.cpp:82
-msgid "Control"
-msgstr "áááá½ááá·áá·ááá"
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
msgstr ""
#: effects/Contrast.cpp:466 effects/Contrast.cpp:472 effects/Contrast.cpp:478
@@ -4584,18 +4760,6 @@ msgstr ""
msgid "Data gathered"
msgstr ""
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:52
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:54
-msgid "Measuring foreground"
-msgstr ""
-
#: effects/DtmfGen.cpp:47
msgid "DTMF Tone Generator"
msgstr "áááááá·áá¸ââááááá¾áâââááá¡áá DTMF"
@@ -4720,6 +4884,10 @@ msgstr "ááá á»áââáááá»áâáá¶áâáááá»áââ
msgid "custom"
msgstr "áááá¶ááâáááá½á"
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr ""
+
#: effects/Equalization.cpp:1064
msgid "Equalization, by Martyn Shaw && Mitch Golden"
msgstr "á¢áá ááá»áâááá Martyn Shaw áá·á Mitch Golden"
@@ -4921,10 +5089,6 @@ msgstr ""
msgid "Analyser"
msgstr ""
-#: toolbars/MixerToolBar.cpp:58
-msgid "Mixer"
-msgstr "á§áááááâáá¶á"
-
#: effects/LoadEffects.cpp:117
msgid "Simulator"
msgstr ""
@@ -5161,10 +5325,6 @@ msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr "ááááááâáááâáá¶áâá¢áá»áááá á %s ááâá¢á»á áááá·á dc = %sâ á
áá áááá¾âá²ááâá¢á¶ááááá¸âáááááá¶ = %s"
#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
-msgid "false"
-msgstr "áá·ááá·á"
-
-#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
msgid "true"
msgstr "áá·á"
@@ -5519,22 +5679,39 @@ msgstr "ááâáá¶ááá¢ááâáááá¼áâááâáá¶áâ
msgid "Truncate Silence"
msgstr "áá¶ááâáááá¶ááâá²ááâáááá¸"
-#: effects/TruncSilence.cpp:342
-msgid "Max silence duration:"
-msgstr "áá·ááááá¶âáááá¶ááâá¢áá·. á"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr ""
+
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
+msgstr ""
#: effects/TruncSilence.cpp:345 prefs/AudioIOPrefs.cpp:190
#: prefs/AudioIOPrefs.cpp:193
msgid "milliseconds"
msgstr "áá¸áááá¸áá·áá¶áá¸"
+#: effects/TruncSilence.cpp:342
+msgid "Max silence duration:"
+msgstr "áá·ááááá¶âáááá¶ááâá¢áá·. á"
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ""
+
#: effects/TruncSilence.cpp:347
msgid "Threshold for silence:"
msgstr "ááááá·áââáááááºâááááá¶ááâáááá¶áá á"
-#: effects/TruncSilence.cpp:371
-msgid " Duration must be at least 1 millisecond"
-msgstr " áá·ááááá¶âáááá¼áâááâáá·á
âáááá»á á¡â áá¸áááá¸áá·áá¶áá¸"
+#: effects/TruncSilence.cpp:506
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
+msgstr ""
#: effects/TruncSilence.h:28
msgid "Truncate Silence..."
@@ -5544,17 +5721,55 @@ msgstr "áá¶ááâáááá¶ááâá²ááâáááá¸..."
msgid "Truncating Silence..."
msgstr "áááá»áâáá¶ááâáááá¶ááâá²ááâáááá¸..."
-#: effects/VST/VSTEffect.cpp:165
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "áá¼áâá¢ááááá áááááá VST áá·áá¢á¶á
âáááá¼áâáá¶áâá¢áá»ááááâáá
âáá¾âááâáááááááá¢á¼âáá¶ááá áááâáá¶áááâáá¸áá½ááâááááâááâáá·ááááá¼ááááâáááá¶âáá á"
+#: effects/ladspa/LadspaEffect.cpp:607
+msgid "Effect Settings"
+msgstr "áá¶áâáááááâáááááá"
+
+#: effects/ladspa/LadspaEffect.cpp:572 effects/ladspa/LadspaEffect.cpp:580
+#: prefs/QualityPrefs.cpp:72
+msgid "None"
+msgstr "áááá¶á"
+
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
-#: effects/VST/VSTEffect.cpp:180
-msgid "Can't process replacing"
-msgstr "áá·áá¢á¶á
âáááá¾ááá¶áâáááá½áâáá¶ááá"
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
-#: effects/VST/VSTEffect.cpp:394
-msgid "VST Plug-in parameters:"
-msgstr "ááá¶ááá¶ááááááâáááááá·áá¸âáááá½á VST  á"
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr ""
#: effects/Wahwah.cpp:61
#, c-format
@@ -5603,19 +5818,10 @@ msgstr "á¢áá»ááááâáááááá á %s"
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr "áá¼áâá¢áááâááá ááááááâáááááá·áá¸âáááá½áââáá·áá¢á¶á
âáááá¼áâáá¶áâá¢áá»ááááâáá
âáá¾âááâáááááááá¢á¼âáá¶ááá áááâáá¶áááâáá¸áá½ááâááááâááâáá·ááááá¼ááááâáááá¶Â á"
-#: effects/ladspa/LadspaEffect.cpp:572 effects/ladspa/LadspaEffect.cpp:580
-#: prefs/QualityPrefs.cpp:72
-msgid "None"
-msgstr "áááá¶á"
-
#: effects/ladspa/LadspaEffect.cpp:574 effects/vamp/VampEffect.cpp:384
msgid "Author: "
msgstr "á¢ááááá·áááá á"
-#: effects/ladspa/LadspaEffect.cpp:607
-msgid "Effect Settings"
-msgstr "áá¶áâáááááâáááááá"
-
#: effects/ladspa/LadspaEffect.cpp:698
msgid "Length (seconds)"
msgstr "áááááá (áá·áá¶áá¸)"
@@ -5811,9 +6017,21 @@ msgstr "áááá»áâáá¶áá
ááâááááááâáá¶áá
msgid "Command Output"
msgstr "ááááááâáá¶áááááááá¶"
-#: export/ExportFFmpeg.cpp:59
+#: export/ExportFFmpeg.cpp:61
msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
#: export/ExportFFmpeg.cpp:394
@@ -5881,6 +6099,10 @@ msgstr ""
msgid "AAC Export Setup"
msgstr ""
+#: export/ExportOGG.cpp:86
+msgid "Quality:"
+msgstr "áá»ááá¶á á"
+
#: export/ExportFFmpegDialogs.cpp:211
msgid "Specify AMR-NB Options"
msgstr ""
@@ -6014,12 +6236,8 @@ msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n
"Recommended - 192000"
msgstr ""
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr "áá»ááá¶á á"
-
-#: export/ExportFFmpegDialogs.cpp:928
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid "Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
@@ -6038,10 +6256,10 @@ msgstr ""
msgid "Cutoff Bandwidth:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:934
+#: export/ExportFFmpegDialogs.cpp:936
msgid "Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:936
@@ -6230,12 +6448,12 @@ msgstr ""
msgid "AC3 Files (FFmpeg)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:56
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:57
@@ -6346,6 +6564,17 @@ msgstr "ááááá
âááá¸á á"
msgid "FLAC Files"
msgstr "á¯ááá¶á FLAC"
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
#: export/ExportFLAC.cpp:310
msgid "Exporting the selected audio as FLAC"
msgstr "áááá»áâáá¶áâá¢á¼áá¸ááá¼âáááâáá¶áâáááá¾áâá
ááâáá¶ FLAC"
@@ -6600,10 +6829,6 @@ msgstr "ááááá¾á..."
msgid "Export location:"
msgstr "áá¸áá¶ááâáá¶áá
áá á"
-#: export/ExportMultiple.cpp:204 prefs/DirectoriesPrefs.cpp:92
-msgid "Choose..."
-msgstr "áááá¾á..."
-
#: export/ExportMultiple.cpp:205
msgid "Create"
msgstr "ááááá¾á"
@@ -6628,10 +6853,6 @@ msgstr "áááááâá¯ááá¶áâáááá¼á á"
msgid "First file name"
msgstr ""
-#: export/ExportMultiple.cpp:246
-msgid "Tracks"
-msgstr "áá"
-
#: export/ExportMultiple.cpp:253
msgid "Name files:"
msgstr "áááááâá¯ááá¶á á"
@@ -6665,6 +6886,35 @@ msgstr "\"%s\" áá¶áâááááá¾áââáááâááááá
msgid "Choose a location to save the exported files"
msgstr "áááá¾áâáá¸áá¶ááâáá¾áááá¸âááááá¶âáá»áâá¯ááá¶áâáááââááááá¶ááá¶áá
áá"
+#: export/ExportMultiple.cpp:524
+#, c-format
+msgid "Successfully exported the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:527
+#, c-format
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr ""
+
#: export/ExportMultiple.cpp:480
#, c-format
msgid "\"%s\" doesn't exist.\n"
@@ -6678,16 +6928,6 @@ msgstr "\"%s\" áá·áâáá¶ááâáá¶á\n"
msgid "Edit metadata"
msgstr ""
-#: export/ExportMultiple.cpp:606 export/ExportMultiple.cpp:714
-#, c-format
-msgid "Successfully exported %d file(s)."
-msgstr "áá¶áâá
ááâá¯ááá¶áâ %d áááâáááááá á"
-
-#: export/ExportMultiple.cpp:607 export/ExportMultiple.cpp:715
-#, c-format
-msgid "Something went wrong after exporting %d file(s)."
-msgstr "áááá á¶âááááâáá¶áâáá¾áâá¡á¾áâááááá¶ááâáá¸âáá¶áâá
ááâá¯ááá¶á %d á"
-
#: export/ExportMultiple.cpp:898
#, c-format
msgid "Label %s is not a legal file name. You cannot use any of: %s\n"
@@ -6766,7 +7006,6 @@ msgstr "áááá»áâáá¶áá
ááâááááááâáá¶áá
#. i18n-hint: %s will be the error message from libsndfile
#: export/ExportPCM.cpp:556
-#, c-format
#, fuzzy
msgid "Error (file may not have been written): %s"
msgstr "ááá á»á (á¯ááá¶áâá¢á¶á
âáá·áâáá¶ááâáááá¼áâáá¶áâááááá) á %hs"
@@ -6932,6 +7171,10 @@ msgstr ""
msgid "FLAC files"
msgstr "á¯ááá¶á FLAC"
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr ""
+
#: import/ImportLOF.cpp:92
msgid "List of Files in basic text format"
msgstr "ááááá¸âá¯ááá¶áâáá
âáááá»áâááááááááá¶áâá¢áááááâáá¼ááááá¶á"
@@ -7089,34 +7332,41 @@ msgstr ""
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr ""
-#: prefs/AudioIOPrefs.cpp:41 prefs/AudioIOPrefs.cpp:42
-msgid "Audio I/O"
-msgstr "á¢á¼áá¸ááá¼ I/O"
+#: prefs/BatchPrefs.cpp:55 prefs/BatchPrefs.cpp:56
+msgid "Batch"
+msgstr "áá¶á
á"
-#: prefs/AudioIOPrefs.cpp:100
-msgid "1 (Mono)"
-msgstr "á¡â (ááá¼áá¼)"
+#: prefs/BatchPrefs.cpp:77 prefs/GUIPrefs.cpp:70
+msgid "Behaviors"
+msgstr "á¥áá·áá¶áá"
-#: prefs/AudioIOPrefs.cpp:101
-msgid "2 (Stereo)"
-msgstr "ᢠ(áááááááá¢á¼)"
+#: prefs/BatchPrefs.cpp:80
+msgid "&Don't apply effects in batch mode"
+msgstr "áá»áâá¢áá»ááááâááááááâáááá»áâááááâáá¶á
á"
-#: prefs/AudioIOPrefs.cpp:115
-msgid "Playback"
-msgstr "á
á¶ááá¡á¾ááá·á"
+#: prefs/BatchPrefs.cpp:85
+msgid "Cl&eanSpeech Mode (Customized GUI)"
+msgstr "ááááâ CleanSpeech (GUI áááâáá¶áâáááá¼ááá¶áâáááá)"
-#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
-#: toolbars/DeviceToolBar.cpp:54
-msgid "Device"
-msgstr "á§ááááá"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:33 prefs/GUIPrefs.cpp:34
+msgid "Interface"
+msgstr "á
ááá»á
âááááá¶áá"
+
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
+msgstr ""
#: prefs/AudioIOPrefs.cpp:122
msgid "Using:"
msgstr "áá¶áâáááá¾Â á"
-#: prefs/AudioIOPrefs.cpp:123
-msgid "Portaudio v"
-msgstr "á
áááâá¢á¼áá¸ááá¼ v"
+#: prefs/AudioIOPrefs.cpp:115
+msgid "Playback"
+msgstr "á
á¶ááá¡á¾ááá·á"
#: prefs/AudioIOPrefs.cpp:133
msgid "Recording"
@@ -7126,91 +7376,13 @@ msgstr "áá"
msgid "Channels"
msgstr "áá¶ááá"
-#: prefs/AudioIOPrefs.cpp:145
-msgid "Playthrough"
-msgstr "á
á¶áááá¶á"
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr "á
á¶áááá¶áâáááááâáá¹áâ á á
á¶ááááâáááá¸âááááááâáááá»áâááâáá¶"
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr "á
á¶áááá¶áâáááááâáááâ á á
á¶ááááâáááá¸ââááááááââáááá»áâááâáá¶"
-
-#: prefs/AudioIOPrefs.cpp:158
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:161
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:162
-msgid "Effects Preview"
-msgstr "áá¾áâááááááâáá¶áá»á"
-
-#: prefs/AudioIOPrefs.cpp:165
-msgid "Length of preview:"
-msgstr "ááááááâááâáá¶áââáá¾áâáá¶áá»á"
-
-#: prefs/AudioIOPrefs.cpp:170
-msgid "Cut Preview"
-msgstr "áá¶ááâáá¾ááá¶áá»á"
-
-#: prefs/AudioIOPrefs.cpp:173
-msgid "Preview before cut region:"
-msgstr "áá¾áâáá¶âáá»áâ áá»ááá¹áââáá¶ááâááááá á"
-
-#: prefs/AudioIOPrefs.cpp:175
-msgid "Preview after cut region:"
-msgstr "áá¾áâáá¶âáá»áâ ááááá¶ááâáá¸âáá¶ááâááááá á"
-
-#: prefs/AudioIOPrefs.cpp:183
-msgid "Latency"
-msgstr "ááááá¶áâááá"
-
-#: prefs/AudioIOPrefs.cpp:196
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:199
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:197
-msgid "Seek Time when playing"
-msgstr "áááááááâááááááá¶âáááâáááá»áâá
á¶áá"
-
-#: prefs/AudioIOPrefs.cpp:200
-msgid "Short period:"
-msgstr "ááá¡á»áâáááâáááá¸Â á"
-
-#: prefs/AudioIOPrefs.cpp:202
-msgid "Long period:"
-msgstr "ááá¡á»áâáááâááá á"
-
-#: prefs/BatchPrefs.cpp:55 prefs/BatchPrefs.cpp:56
-msgid "Batch"
-msgstr "áá¶á
á"
-
-#: prefs/BatchPrefs.cpp:77 prefs/GUIPrefs.cpp:70
-msgid "Behaviors"
-msgstr "á¥áá·áá¶áá"
-
-#: prefs/BatchPrefs.cpp:80
-msgid "&Don't apply effects in batch mode"
-msgstr "áá»áâá¢áá»ááááâááááááâáááá»áâááááâáá¶á
á"
+#: prefs/AudioIOPrefs.cpp:100
+msgid "1 (Mono)"
+msgstr "á¡â (ááá¼áá¼)"
-#: prefs/BatchPrefs.cpp:85
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr "ááááâ CleanSpeech (GUI áááâáá¶áâáááá¼ááá¶áâáááá)"
+#: prefs/AudioIOPrefs.cpp:101
+msgid "2 (Stereo)"
+msgstr "ᢠ(áááááááá¢á¼)"
#: prefs/DirectoriesPrefs.cpp:55 prefs/DirectoriesPrefs.cpp:56
#: prefs/PrefsDialog.cpp:279
@@ -7229,34 +7401,31 @@ msgstr "áá¸áá¶áá á"
msgid "Free Space:"
msgstr "ááá áááááá á"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr "ááááá¶áá»áâáááâááááááááááááá·"
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr "ááááá¶áá»áâáááââááááááááááááá·âá
ááá¶ááá
ááááâááâááááááâáááá»áâááâáá¶á
áâáááâá¡áá"
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
-msgstr ""
-
-#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
-msgstr "áá¶áá¸"
-
#: prefs/DirectoriesPrefs.cpp:110
msgid "Audio cache"
msgstr "áááá¶ááâááááá¶ááâá¢á¼áá¸ááá¼"
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "Play and/or record using RAM (useful for slow drives)"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
#: prefs/DirectoriesPrefs.cpp:121
msgid "Choose a location to place the temporary directory"
msgstr "áááá¾áâáá¸áá¶ááâáááá¼áâáá¶ááâááâááááááá¢á¶áááá"
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: prefs/DirectoriesPrefs.cpp:166
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -7275,220 +7444,141 @@ msgstr "áá %s áá·áá¢á¶á
âáááááâáá¶á"
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "áááá¶áááááá¼áâáá
âááâááááááá¢á¶áááá áá¹áâáááá¶áâááááá·ááááá¶áâáá áá á¼áâááá Audacity áááá¼áâáá¶áâá
á¶áááááá¾áâá¡á¾áâáá·á"
-#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
-msgid "Import / Export"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:84
-msgid "MP3 Export Library"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:104
-msgid "MP3 Library Version:"
-msgstr "ááááâááááá¶ááá MP3Â á"
-
-#: prefs/FileFormatPrefs.cpp:93
-msgid "MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:98
-msgid "LAME MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
-msgid "&Download"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
+#: prefs/GUIPrefs.cpp:42
+msgid "In Browser"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
+#: prefs/GUIPrefs.cpp:43
+msgid "From Internet"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:136
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:137
-msgid "When importing audio files"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:140
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:141
-msgid "&Read uncompressed audio files directly from the original (faster)"
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:143
-msgid "&Normalize all tracks in project"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:84
-msgid "When saving a project that depends on other audio files"
-msgstr "áá
âáááâááááá¶áá»áâáááááá áááâá¢á¶áááááâáá¾âá¯ááá¶áâá¢á¼áá¸ááá¼âááááááâááá"
+#: prefs/GUIPrefs.cpp:115
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-á£á¦ dB (áá½áâáá¶ááâááááá¶ááâáá¶áâááááááá½áâá¢á¶ááááá¸âááááá)"
-#: prefs/FileFormatPrefs.cpp:151
-msgid "Always © all audio into project (safest)"
-msgstr ""
+#: prefs/GUIPrefs.cpp:116
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-á¤á¨ dB (áá½á PCM áááááἠᨠááá¸á)"
-#: prefs/FileFormatPrefs.cpp:152
-msgid "&Do not copy any audio"
+#: prefs/GUIPrefs.cpp:143
+msgid "-60 dB (PCM range of 10 bit samples)"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:87
-msgid "&Ask user"
-msgstr "áá½áâá¢áááâáááá¾"
+#: prefs/GUIPrefs.cpp:117
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-á©á¦ dB (áá½á PCM áá áááá¼ á¡á¦ ááá¸á)"
-#: prefs/FileFormatPrefs.cpp:157
-msgid "When exporting tracks to an audio file"
-msgstr ""
+#: prefs/GUIPrefs.cpp:118
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-á¡á¢á dB (áááááááâáááá ááâááâáá¶ááááá¶ááâááááâááá»ááá)"
-#: prefs/FileFormatPrefs.cpp:96
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
-msgstr "áááááâáá¶áââááâáá¶ááá¢ááââáá
áá¶áá¶áááââáááááááá¢á¼ á¬âááá¼áá¼Â á"
+#: prefs/GUIPrefs.cpp:119
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB (áá½á PCM áá áááá¼ á¢á¤ ááá¸á)"
-#: prefs/FileFormatPrefs.cpp:97
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
-msgstr "áááá¾áá¶áââáá¶áââáááá¶áááááá½âá (á§áá¶á ááá áá¶áá
ááâá¯ááá¶áâáá á»âáá¶ááá á¥.á¡)"
+#: prefs/SpectrumPrefs.cpp:96
+msgid "Display"
+msgstr "áááá á¶á"
-#: prefs/FileFormatPrefs.cpp:163
-msgid "S&how Metadata Editor prior to export step"
+#: prefs/GUIPrefs.cpp:100
+msgid "Er&gonomic order of audio I/O buttons"
msgstr ""
-#: prefs/GUIPrefs.cpp:33 prefs/GUIPrefs.cpp:34
-msgid "Interface"
-msgstr "á
ááá»á
âááááá¶áá"
-
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
msgstr ""
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
msgstr ""
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
+#: prefs/GUIPrefs.cpp:167
+msgid "Help:"
msgstr ""
-#: prefs/GUIPrefs.cpp:72
-msgid "&Update display while playing"
-msgstr "áááá¾âá²ááâáá¶áâáááá á¶áâáá¶ááááááâ ááááááâá
á¶áá"
-
#: prefs/GUIPrefs.cpp:96
msgid "Cl&osing last window quits Audacity"
msgstr ""
-#: prefs/GUIPrefs.cpp:98
-msgid "Enable &dragging of left and right selection edges"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:100
-msgid "Er&gonomic order of audio I/O buttons"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:102
-msgid "Automatically &fit tracks vertically zoomed"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:104
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:86
-msgid "Editing a &clip can move other clips"
-msgstr "áá¶áâááááááá½áâáá»áâá¢á¶á
áááá¶áááá¸âáá»áâáááâááá"
-
-#: prefs/GUIPrefs.cpp:108
-msgid "&Select all audio in project, if none selected"
-msgstr ""
-
#: prefs/GUIPrefs.cpp:90
msgid "&Beep on completion of longer activities"
msgstr "áááááºâááá¡ááâááá¸áâáá
âáááââáááá
ááâááááááá¶áâáááá"
-#: prefs/BatchPrefs.cpp:89 prefs/GUIPrefs.cpp:94
-msgid "Show / Hide"
-msgstr "áááá á¶á/áá¶áá"
-
-#: prefs/GUIPrefs.cpp:96
-msgid "Enable cut &lines"
-msgstr "á¢áá»áááá¶áâá²ááâáá¶ááâááááá¶áá"
-
-#: prefs/GUIPrefs.cpp:98
-msgid "Show warnings about &temp files"
-msgstr "áááá á¶áâáá¶áááááá¶áâá¢ááá¸âá¯ááá¶áâááááááâá¢á¶áááá"
-
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:122
-msgid "Show &Welcome Message at program start up"
-msgstr ""
-
#: prefs/GUIPrefs.cpp:126
msgid "Modes"
msgstr ""
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
+msgstr ""
+
#: prefs/GUIPrefs.cpp:129
msgid "Don't a&pply effects in batch mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
+#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
+msgid "Import / Export"
msgstr ""
-#: prefs/GUIPrefs.cpp:115
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-á£á¦ dB (áá½áâáá¶ááâááááá¶ááâáá¶áâááááááá½áâá¢á¶ááááá¸âááááá)"
-
-#: prefs/GUIPrefs.cpp:116
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-á¤á¨ dB (áá½á PCM áááááἠᨠááá¸á)"
-
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
+#: prefs/FileFormatPrefs.cpp:137
+msgid "When importing audio files"
msgstr ""
-#: prefs/GUIPrefs.cpp:117
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-á©á¦ dB (áá½á PCM áá áááá¼ á¡á¦ ááá¸á)"
-
-#: prefs/GUIPrefs.cpp:118
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-á¡á¢á dB (áááááááâáááá ááâááâáá¶ááááá¶ááâááááâááá»ááá)"
+#: prefs/FileFormatPrefs.cpp:140
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
+msgstr ""
-#: prefs/GUIPrefs.cpp:119
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB (áá½á PCM áá áááá¼ á¢á¤ ááá¸á)"
+#: prefs/FileFormatPrefs.cpp:141
+msgid "&Read uncompressed audio files directly from the original (faster)"
+msgstr ""
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
+#: prefs/FileFormatPrefs.cpp:143
+msgid "&Normalize all tracks in project"
msgstr ""
-#: prefs/GUIPrefs.cpp:164
-msgid "Other interface choices"
+#: prefs/FileFormatPrefs.cpp:157
+msgid "When exporting tracks to an audio file"
msgstr ""
-#: prefs/GUIPrefs.cpp:167
-msgid "Help:"
+#: prefs/FileFormatPrefs.cpp:96
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+msgstr "áááááâáá¶áââááâáá¶ááá¢ááââáá
áá¶áá¶áááââáááááááá¢á¼ á¬âááá¼áá¼Â á"
+
+#: prefs/FileFormatPrefs.cpp:97
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+msgstr "áááá¾áá¶áââáá¶áââáááá¶áááááá½âá (á§áá¶á ááá áá¶áá
ááâá¯ááá¶áâáá á»âáá¶ááá á¥.á¡)"
+
+#: prefs/FileFormatPrefs.cpp:163
+msgid "S&how Metadata Editor prior to export step"
msgstr ""
-#: prefs/GUIPrefs.cpp:168
-msgid "Solo Button:"
+#: prefs/ImportExportPrefs.cpp:84
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
msgstr ""
#: prefs/KeyConfigPrefs.cpp:64 prefs/KeyConfigPrefs.cpp:65
@@ -7519,17 +7609,22 @@ msgstr "á
ááá¶á á á
á»á
Cmd+Q áá¹áá
áá á ááá
msgid "&Defaults"
msgstr "áááá¶ááá¾á"
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr ""
+
#: prefs/KeyConfigPrefs.cpp:143
msgid "Key Combination"
msgstr "áááááâáááá¶ááá
á»á
"
-#: prefs/KeyConfigPrefs.cpp:163
-msgid "Export Keyboard Shortcuts As:"
-msgstr "áá¶áá
ááâáááá¼ááá¶ááâáááá¶áá
á»á
âáá¶Â á"
+#: prefs/KeyConfigPrefs.cpp:367 toolbars/EditToolBar.cpp:144
+msgid "Undo"
+msgstr "áá·áâáááá¾âáá·á"
-#: prefs/KeyConfigPrefs.cpp:181
-msgid "Error saving keyboard shortcuts"
-msgstr "ááá á»áâáááá»ááá¶áâááááá¶áá»áâáááá¼ááá¶ááâáááá¶áá
á»á
"
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr ""
#: prefs/KeyConfigPrefs.cpp:196
msgid "Select an XML file containing Audacity keyboard shortcuts..."
@@ -7539,6 +7634,14 @@ msgstr "áááá¾áâá¯ááá¶á XML áááâáá¶áâááá
msgid "Error loading keyboard shortcuts"
msgstr "ááá á»áâáááá»áâáá¶ááááá»áâáááá¼ááá¶ááâáááá¶áá
á»á
"
+#: prefs/KeyConfigPrefs.cpp:163
+msgid "Export Keyboard Shortcuts As:"
+msgstr "áá¶áá
ááâáááá¼ááá¶ááâáááá¶áá
á»á
âáá¶Â á"
+
+#: prefs/KeyConfigPrefs.cpp:181
+msgid "Error saving keyboard shortcuts"
+msgstr "ááá á»áâáááá»ááá¶áâááááá¶áá»áâáááá¼ááá¶ááâáááá¶áá
á»á
"
+
#: prefs/KeyConfigPrefs.cpp:241
#, c-format
msgid "The keyboard shortcut '%s' is already assigned to:\n"
@@ -7548,9 +7651,61 @@ msgstr "áááá¼ááá¶ááâáááá¶áá
á»á
'%s' áááá¼
"\n"
"'%s' áá½á
âá á¾á"
-#: prefs/KeyConfigPrefs.cpp:367 toolbars/EditToolBar.cpp:144
-msgid "Undo"
-msgstr "áá·áâáááá¾âáá·á"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:84
+msgid "MP3 Export Library"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:104
+msgid "MP3 Library Version:"
+msgstr "ááááâááááá¶ááá MP3Â á"
+
+#: prefs/FileFormatPrefs.cpp:93
+msgid "MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:98
+msgid "LAME MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
+msgid "&Download"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:109
+msgid "FFmpeg Library Version:"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
+msgid "FFmpeg Library:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:41 prefs/AudioIOPrefs.cpp:42
+msgid "Audio I/O"
+msgstr "á¢á¼áá¸ááá¼ I/O"
+
+#: prefs/AudioIOPrefs.cpp:123
+msgid "Portaudio v"
+msgstr "á
áááâá¢á¼áá¸ááá¼ v"
+
+#: prefs/AudioIOPrefs.cpp:145
+msgid "Playthrough"
+msgstr "á
á¶áááá¶á"
#: prefs/AudioIOPrefs.cpp:147
msgid "&Play other tracks while recording new one"
@@ -7564,6 +7719,10 @@ msgstr ""
msgid "&Software Playthrough (Play new track while recording it)"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:170
+msgid "Cut Preview"
+msgstr "áá¶ááâáá¾ááá¶áá»á"
+
#: prefs/MidiIOPrefs.cpp:160
msgid "Play before cut region:"
msgstr ""
@@ -7572,6 +7731,10 @@ msgstr ""
msgid "Play after cut region:"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:183
+msgid "Latency"
+msgstr "ááááá¶áâááá"
+
#: prefs/AudioIOPrefs.cpp:189
msgid "Audio to buffer:"
msgstr "á¢á¼áá¸ááá¼âáá
âááá·ââááááááâá¢á¶áááá"
@@ -7584,6 +7747,18 @@ msgstr "ááááááá¼áâááááá¶áâááá á"
msgid "Seek Time"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:200
+msgid "Short period:"
+msgstr "ááá¡á»áâáááâáááá¸Â á"
+
+#: prefs/AudioIOPrefs.cpp:202
+msgid "Long period:"
+msgstr "ááá¡á»áâáááâááá á"
+
+#: prefs/AudioIOPrefs.cpp:162
+msgid "Effects Preview"
+msgstr "áá¾áâááááááâáá¶áá»á"
+
#: prefs/MidiIOPrefs.cpp:196
msgid "Play when previewing:"
msgstr ""
@@ -7794,10 +7969,62 @@ msgstr "ááááá¶(Ctrl) áááâááááá·á"
msgid "Zoom in or out"
msgstr "ááááá¸á á¬âááááá½á"
+#: prefs/AudioIOPrefs.cpp:165
+msgid "Length of preview:"
+msgstr "ááááááâááâáá¶áââáá¾áâáá¶áá»á"
+
+#: prefs/AudioIOPrefs.cpp:173
+msgid "Preview before cut region:"
+msgstr "áá¾áâáá¶âáá»áâ áá»ááá¹áââáá¶ááâááááá á"
+
+#: prefs/AudioIOPrefs.cpp:175
+msgid "Preview after cut region:"
+msgstr "áá¾áâáá¶âáá»áâ ááááá¶ááâáá¸âáá¶ááâááááá á"
+
+#: prefs/AudioIOPrefs.cpp:197
+msgid "Seek Time when playing"
+msgstr "áááááááâááááááá¶âáááâáááá»áâá
á¶áá"
+
#: prefs/PrefsDialog.cpp:89
msgid "Audacity Preferences"
msgstr "á
ááá¼áâá
á·ááá Audacity"
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:84
+msgid "When saving a project that depends on other audio files"
+msgstr "áá
âáááâááááá¶áá»áâáááááá áááâá¢á¶áááááâáá¾âá¯ááá¶áâá¢á¼áá¸ááá¼âááááááâááá"
+
+#: prefs/FileFormatPrefs.cpp:151
+msgid "Always © all audio into project (safest)"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:152
+msgid "&Do not copy any audio"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:87
+msgid "&Ask user"
+msgstr "áá½áâá¢áááâáááá¾"
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr "ááááá¶áá»áâáááâááááááááááááá·"
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr "ááááá¶áá»áâáááââááááááááááááá·âá
ááá¶ááá
ááááâááâááááááâáááá»áâááâáá¶á
áâáááâá¡áá"
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr "áá¶áá¸"
+
#: prefs/QualityPrefs.cpp:73
msgid "Rectangle"
msgstr "á
áá»áááááá"
@@ -7822,45 +8049,46 @@ msgstr "á¢áááá¶âáááá¼âáááá¶ááá¾á á"
msgid "Default Sample Format:"
msgstr "ááááááááá¶áâáááá¼âáááá¶ááá¾á á"
-#: prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "áááááá·áá¸âááááááâá¢áááá¶âáááá¼âááááááá¶áá·á á"
-
-#: prefs/QualityPrefs.cpp:139
-msgid "High-quality sample rate converter:"
-msgstr "áááááá·áá¸âááááááâá¢áááá¶áááá¼âáá»ááá¶áâááááá á"
-
-#: prefs/QualityPrefs.cpp:142
-msgid "Real-time dither:"
-msgstr "áááááááá½áâááááááá¶âáá·á á"
-
-#: prefs/QualityPrefs.cpp:145
-msgid "High-quality dither:"
-msgstr "áááááááá½áâáá»ááá¶áááááá á"
-
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
-msgstr "áá¶áâáááááá"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+#, fuzzy
+msgid "Sample Rate Converter:"
msgstr "áááááá·áá¸âááááááâá¢áááá¶âáááá¼"
#: prefs/QualityPrefs.cpp:164
msgid "Dither"
msgstr "áááááááá½á"
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
-msgstr "ááááááá¶áá·á á"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
-msgstr "áá»ááá¶áâááááá á"
+#: prefs/AudioIOPrefs.cpp:150
+msgid "Overdub: &Play other tracks while recording new one"
+msgstr ""
-#: prefs/SmartRecordPrefs.cpp:54 prefs/SmartRecordPrefs.cpp:55
-msgid "Smart Recording"
-msgstr "áá¶áâááâááâáááá¶á"
+#: prefs/AudioIOPrefs.cpp:150
+msgid "&Hardware Playthrough: Play new track while recording it"
+msgstr "á
á¶áááá¶áâáááááâáá¹áâ á á
á¶ááááâáááá¸âááááááâáááá»áâááâáá¶"
+
+#: prefs/AudioIOPrefs.cpp:158
+msgid "&Software Playthrough: Play new track while recording or monitoring"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:161
+msgid "(uncheck when recording \"stereo mix\")"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
+msgstr ""
#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
msgid "Sound Activated Recording"
@@ -7874,18 +8102,54 @@ msgstr ""
msgid "Spectrograms"
msgstr "áááá¶á ááá·áâáá·áá¶ááá"
-#: prefs/SpectrumPrefs.cpp:72
-msgid "FFT Size"
-msgstr "ááá á FFT"
-
#: prefs/SpectrumPrefs.cpp:75
msgid "8 - most wideband"
msgstr "ᨠ- áááá»áâáá¼áá¶áâáááá»á"
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:80
msgid "256 - default"
msgstr "á¢á¥á¦ - áááá¶ááá¾á"
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:107
msgid "32768 - most narrowband"
msgstr ""
@@ -7894,21 +8158,26 @@ msgstr ""
msgid "4096 - most narrowband"
msgstr "á¤á á©á¦ - áááá»áâá
ááá¢ááââáááá»á"
-#: prefs/SpectrumPrefs.cpp:90
-msgid "Window type:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:93
+#, fuzzy
+msgid "Window type"
msgstr "ááááááâáááá¢á½á
 á"
#: prefs/SpectrumPrefs.cpp:125
msgid "FFT Skip Points"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:96
-msgid "Display"
-msgstr "áááá á¶á"
-
-#: prefs/SpectrumPrefs.cpp:100
-msgid "&Grayscale"
-msgstr "áá¶ááááááá¶áâáááááá"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
+msgstr ""
#: prefs/SpectrumPrefs.cpp:103
msgid "Minimum Frequency (Hz):"
@@ -7918,16 +8187,16 @@ msgstr "áááááááâá¢ááááááá¶ (Hz) á"
msgid "Maximum Frequency (Hz):"
msgstr "áááááááâá¢áá·áááá¶ (Hz) á"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
msgstr ""
#: prefs/SpectrumPrefs.cpp:165
@@ -7938,6 +8207,14 @@ msgstr ""
msgid "Max. Number of Notes (1..128):"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:161
+msgid "&Find Notes"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Quantize Notes"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:134
msgid "The maximum frequency must be an integer"
msgstr "áááááááâá¢áá·áááá¶âáááá¼áááâáá¶âáááâááá"
@@ -7954,18 +8231,70 @@ msgstr "áááááááâá¢ááááááá¶âáááá¼ááá
msgid "Minimum frequency must be at least 0 Hz"
msgstr "áááááááâá¢ááááááá¶âáááá¼áááâáá¶áâáááááâáá¼á
áááá»á á Hz"
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:226 prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
+#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:230
+msgid "The maximum number of notes must be in the range 1..128"
msgstr ""
#: prefs/ThemePrefs.cpp:62 prefs/ThemePrefs.cpp:63
msgid "Theme"
msgstr "ááááá"
+#: prefs/ThemePrefs.cpp:124
+msgid "Info"
+msgstr "áááááá¶á"
+
+#: prefs/ThemePrefs.cpp:91
+#, fuzzy
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr "Themability ááºâáá¶âáááááááá·áááâáá·ááááá á\n"
+"\n"
+"áá¾áááá¸âáá¶áááááâáá¶ á
á»á
\"ááááá¶âáá»áââáááá¶ááâááááá¶ááâááááá\" ááááá¶ááâáá\n"
+"ááâ áá·áâááááááâáá¼ááá¶áâ áá·áâáááâáá
âáááá»á \n"
+"ImageCacheVxx.png áááâáááá¾âáááááá·áá¸âááááááá½áâáá¼ááá¶áâáá¼á
áá¶ \n"
+"Gimp.\n"
+"\n"
+"á
á»á
\"áááá»áâáááá¶ááâááááá¶ááâááááá\" áá¾áááá¸âáááá»áâáá¼ááá¶áâáááâáá¶áâáááá¶áááááá¼á\n"
+"áá·áâáááâáááá¡ááâáá
âáááá»á Audacity á\n"
+"\n"
+"[áá¶áâááâááá¶áâá§áááááââáááá½ááá·áá·ááá áá·áâáááâáá
âáá¾ \n"
+"áá¶áâáááâáááá¼áâáá¶áâááááá¶ááâáá
áá
á»ááááááâááá áááâáá¸áá¶\n"
+"á¯ááá¶áâáá¼ááá¶áâáááá á¶áâáá¼ááááá¶áâáááááâááâááá á]"
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#: prefs/ThemePrefs.cpp:91
msgid "Theme Cache - Images && Color"
msgstr "áááá¶ááááááá¶ááááááá - áá¼ááá¶á áá·áâááá"
@@ -7994,98 +8323,94 @@ msgstr "ááááá¶áá»áâá¯ááá¶á"
msgid "Load Files"
msgstr "áááá»áâá¯ááá¶á"
-#: prefs/ThemePrefs.cpp:124
-msgid "Info"
-msgstr "áááááá¶á"
+#: prefs/GUIPrefs.cpp:50
+msgid "Simple"
+msgstr ""
-#: prefs/ThemePrefs.cpp:127
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
-msgstr "Themability ááºâáá¶âáááááááá·áááâáá·ááááá á\n"
-"\n"
-"áá¾áááá¸âáá¶áááááâáá¶ á
á»á
\"ááááá¶âáá»áââáááá¶ááâááááá¶ááâááááá\" ááááá¶ááâáá\n"
-"ááâ áá·áâááááááâáá¼ááá¶áâ áá·áâáááâáá
âáááá»á \n"
-"ImageCacheVxx.png áááâáááá¾âáááááá·áá¸âááááááá½áâáá¼ááá¶áâáá¼á
áá¶ \n"
-"Gimp.\n"
-"\n"
-"á
á»á
\"áááá»áâáááá¶ááâááááá¶ááâááááá\" áá¾áááá¸âáááá»áâáá¼ááá¶áâáááâáá¶áâáááá¶áááááá¼á\n"
-"áá·áâáááâáááá¡ááâáá
âáááá»á Audacity á\n"
-"\n"
-"[áá¶áâááâááá¶áâá§áááááââáááá½ááá·áá·ááá áá·áâáááâáá
âáá¾ \n"
-"áá¶áâáááâáááá¼áâáá¶áâááááá¶ááâáá
áá
á»ááááááâááá áááâáá¸áá¶\n"
-"á¯ááá¶áâáá¼ááá¶áâáááá á¶áâáá¼ááááá¶áâáááááâááâááá á]\n"
-
-#: prefs/ThemePrefs.cpp:132
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
-msgstr "á¢áááâáá¶áâá
áâááááâ Audacity áá¶áá½áááá¼áá»áâááááááâ \n"
-"'áááááâáááááá' á ááááá¹áááááá¶âáá»áâááááâ C áááá \n"
-"áááá¶ááááááá¶ááââáá¼ááá¶áââáááââá¢á¶á
ââáááá¼áâáá¶áâá
áááááâáá¶âáááá¶ááá¾á á\n"
-
-#: prefs/ThemePrefs.cpp:137
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
-msgstr "ááááá·áâáá¾ââáá¶áââáá¼ááá¸á 'áááá»áâáááá¶ááááááá¶ááâáááááâáá
áááâá
á¶áááááá¾á' ááááá¶ááâáá \n"
-"áááá¶ááâááááá¶ááâáááááâáá¹áâáááá¼áâáá¶áâáááá»áââ áá
âáááâáááááá·áḠ\n"
-"á
á¶áááááá¾á á\n"
-"\n"
+#: prefs/GUIPrefs.cpp:72
+msgid "&Update display while playing"
+msgstr "áááá¾âá²ááâáá¶áâáááá á¶áâáá¶ááááááâ ááááááâá
á¶áá"
-#: prefs/ThemePrefs.cpp:140
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
-msgstr "ááááá¶áá»áâ áá·áâáááá»áâá¯ááá¶áâáááááâáá¸áá½ááâ áááâáááá¾ \n"
-"á¯ááá¶áâáááááâááááá¶ááâáá¼ááá¶áâáá¸áá½áá ááá»ááááâááááá¶ááá·áâááá \n"
-"áá¶áâáááá·áâáá¼á
áááá¶Â á\n"
-"\n"
+#: prefs/GUIPrefs.cpp:102
+msgid "Automatically &fit tracks vertically zoomed"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:174
-msgid "Pause"
-msgstr "ááá¢á¶á"
+#: prefs/TracksPrefs.cpp:88
+msgid "Default View Mode:"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:177
-msgid "Play"
-msgstr "á
á¶áá"
+#: prefs/GUIPrefs.cpp:108
+msgid "&Select all audio in project, if none selected"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
+#: prefs/GUIPrefs.cpp:96
+msgid "Enable cut &lines"
+msgstr "á¢áá»áááá¶áâá²ááâáá¶ááâááááá¶áá"
+
+#: prefs/GUIPrefs.cpp:98
+msgid "Enable &dragging of left and right selection edges"
msgstr ""
-#: toolbars/ControlToolBar.cpp:182
-msgid "Stop"
-msgstr "áááááá"
+#: prefs/GUIPrefs.cpp:104
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:185
-msgid "Skip to Start"
-msgstr "ááááâáá
âáá¾á"
+#: prefs/GUIPrefs.cpp:86
+msgid "Editing a &clip can move other clips"
+msgstr "áá¶áâááááááá½áâáá»áâá¢á¶á
áááá¶áááá¸âáá»áâáááâááá"
-#: toolbars/ControlToolBar.cpp:188
-msgid "Skip to End"
-msgstr "ááááâáá
âá
á»á"
+#: prefs/GUIPrefs.cpp:168
+msgid "Solo Button:"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:192
-msgid "Record (Shift for Append Record)"
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
msgstr ""
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr ""
+
+#: Menus.cpp:774
+msgid "Pause"
+msgstr "ááá¢á¶á P"
+
+#: Menus.cpp:773
+msgid "Stop"
+msgstr "áááááá S"
+
#: toolbars/ControlToolBar.cpp:194
msgid "Clean Speech"
msgstr "Clean Speech"
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play (Shift for Loop Play)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:192
+msgid "Record (Shift for Append Record)"
+msgstr ""
+
#: toolbars/ControlToolBar.cpp:530 toolbars/ControlToolBar.cpp:838
msgid "Error while opening sound device. "
msgstr "ááá á»áâááááááââáá¾áâá§áááááâááá¡áá á "
@@ -8126,29 +8451,21 @@ msgstr "ááááá¸á"
msgid "Zoom Out"
msgstr "ááááá½á"
-#: toolbars/EditToolBar.cpp:156
-msgid "Zoom Toggle"
-msgstr "áá·á/áá¾ááá¶áâááááá¸á"
-
-#: toolbars/EditToolBar.cpp:160
-msgid "Fit Selection"
-msgstr "áááá¾âá²ááâááâáá¹áâááááá¾á"
-
#: toolbars/EditToolBar.cpp:160
msgid "Fit selection in window"
msgstr "áááá¾âá²ááâááááá¾áâááâáá¹áâáááá¢á½á
"
#: toolbars/EditToolBar.cpp:162
-msgid "Fit Project"
-msgstr "áááá¾âá²ááâááâáá¹áââââáááááá"
-
-#: toolbars/EditToolBar.cpp:162
msgid "Fit project in window"
msgstr "áááá¾âá²ááâááááááâááââáá
âáááá»áâáááá¢á½á
"
-#: toolbars/MeterToolBar.cpp:50
-msgid "Meter"
-msgstr "áááááá"
+#: toolbars/EditToolBar.cpp:160
+msgid "Fit Selection"
+msgstr "áááá¾âá²ááâááâáá¹áâááááá¾á"
+
+#: toolbars/EditToolBar.cpp:162
+msgid "Fit Project"
+msgstr "áááá¾âá²ááâááâáá¹áââââáááááá"
#: toolbars/MeterToolBar.cpp:80
msgid "Play Meter"
@@ -8196,6 +8513,14 @@ msgstr "áááá¶ááâáááá·áâáááá
á¼á"
msgid "Input Source"
msgstr "áááááâá
á¼á"
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:80
msgid "Selection"
msgstr "ááááá¾á"
@@ -8274,30 +8599,6 @@ msgstr "ááááá=ááááá¸á áááá¶á=ááááá½á
msgid "Click and drag to move a track in time"
msgstr "á
á»á
áá·áâá¢á¼áâáá¾áááá¸âáááá¶áááá¸âááâáá
âáááá»áâááááááá¶"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr "á§ááááá"
-
-#: toolbars/ToolsToolBar.cpp:147 toolbars/ToolsToolBar.cpp:182
-msgid "Selection Tool"
-msgstr "á§áááááâááááá¾á"
-
-#: toolbars/ToolsToolBar.cpp:148
-msgid "Envelope Tool"
-msgstr "á§áááááâááááááááá»ááá"
-
-#: toolbars/ToolsToolBar.cpp:149 toolbars/ToolsToolBar.cpp:183
-msgid "Time Shift Tool"
-msgstr "á§áááááâáááá¼áâááááááá¶"
-
-#: toolbars/ToolsToolBar.cpp:150 toolbars/ToolsToolBar.cpp:185
-msgid "Zoom Tool"
-msgstr "á§áááááâááááá¸á"
-
-#: toolbars/ToolsToolBar.cpp:151 toolbars/ToolsToolBar.cpp:184
-msgid "Draw Tool"
-msgstr "á§áááááâáá¼á"
-
#: toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
msgstr "ááááâáá á»âá§ááááá"
@@ -8306,22 +8607,10 @@ msgstr "ááááâáá á»âá§ááááá"
msgid "Slide Tool"
msgstr "á§áááááâáááá·á"
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr "áá á»âá§ááááá"
-
-#: toolbars/TranscriptionToolBar.cpp:82
-msgid "Transcription"
-msgstr "áá¶áâá
áááá"
-
#: toolbars/TranscriptionToolBar.cpp:163
msgid "Play at selected speed"
msgstr "á
á¶ááâáá
âáááá¿áâáááâáá¶áâáááá¾á"
-#: toolbars/TranscriptionToolBar.cpp:164
-msgid "Play-at-speed"
-msgstr "á
á¶ááâáá
âáááá¿á"
-
#: toolbars/TranscriptionToolBar.cpp:170 toolbars/TranscriptionToolBar.cpp:175
msgid "Playback Speed"
msgstr "áááá¿áâá
á¶ááâá¡á¾ááá·á"
@@ -8330,74 +8619,38 @@ msgstr "áááá¿áâá
á¶ááâá¡á¾ááá·á"
msgid "Adjust left selection to next onset"
msgstr "âááááááá¼áâááááá¾áâáááááâáá
áá¹áâá¢ááá·áââááááá¶áá"
-#: toolbars/TranscriptionToolBar.cpp:181
-msgid "Left-to-On"
-msgstr "áááááâáá¾áááá¸âáá¾á"
-
#: toolbars/TranscriptionToolBar.cpp:183
msgid "Adjust right selection to previous offset"
msgstr "ááááááá¼áâááááá¾áâáááá¶áâáá
áá¹áâá¢á»á áááá·áâáá»á"
-#: toolbars/TranscriptionToolBar.cpp:184
-msgid "Right-to-Off"
-msgstr "áááá¶áâáá¾áááá¸âáá·á"
-
#: toolbars/TranscriptionToolBar.cpp:186
msgid "Adjust left selection to next offset"
msgstr "ááááááá¼áâááááá¾áâáááááâáá
áá¹áâá¢á»á áááá·áâááááá¶áá"
-#: toolbars/TranscriptionToolBar.cpp:187
-msgid "Left-to-Off"
-msgstr "áááááâáá¾áááá¸âáá·á"
-
#: toolbars/TranscriptionToolBar.cpp:189
msgid "Adjust right selection to previous onset"
msgstr "ááááááá¼áâááááá¾áâáááá¶áâáá
áá¹áâá¢ááá·áâáá»á"
-#: toolbars/TranscriptionToolBar.cpp:190
-msgid "Right-to-On"
-msgstr "áááá¶áâáá¾áááá¸âáá¾á"
-
#: toolbars/TranscriptionToolBar.cpp:192
msgid "Select region of sound around cursor"
msgstr "áááá¾áâáááááâááá¡ááâáá
âáá»ááá·áâááááááááááá·á
"
-#: toolbars/TranscriptionToolBar.cpp:193
-msgid "Select-Sound"
-msgstr "áááá¾áâááá¡áá"
-
#: toolbars/TranscriptionToolBar.cpp:195
msgid "Select region of silence around cursor"
msgstr "áááá¾áâáááááâáááá¶ááâáá
âáá»ááá·áâááááááâááááá·á
"
-#: toolbars/TranscriptionToolBar.cpp:196
-msgid "Select-Silence"
-msgstr "áááá¾áâáááá¶áá"
-
#: toolbars/TranscriptionToolBar.cpp:198
msgid "Automatically make labels from words"
msgstr "ááááá¾áââáááá¶áâáááâáááááâáááááááá·âáá¸âáá¶ááá"
-#: toolbars/TranscriptionToolBar.cpp:199
-msgid "Make Labels"
-msgstr "ááááá¾áâáááá¶á"
-
#: toolbars/TranscriptionToolBar.cpp:201
msgid "Add label at selection"
msgstr "ááááááâáááá¶áâáá
âááááá¾á"
-#: toolbars/TranscriptionToolBar.cpp:202
-msgid "Add Label"
-msgstr "ááááááâáááá¶á"
-
#: toolbars/TranscriptionToolBar.cpp:204
msgid "Calibrate voicekey"
msgstr "áááá·áââáá¼ááááâááá¡ááâáá¶áâáááá¶áâ"
-#: toolbars/TranscriptionToolBar.cpp:205
-msgid "Calibrate"
-msgstr "áááá·áâáá¶áâáááá¶á"
-
#: toolbars/TranscriptionToolBar.cpp:209
msgid "Adjust Sensitivity"
msgstr "ááááááá¼áâáá¶áâááááá¹á"
@@ -8430,6 +8683,46 @@ msgstr "áá·ááááá¶áááááá¼á (ááááá·áâáá
msgid "Key type"
msgstr "ááááááâáááá¶ááá
á»á
"
+#: toolbars/TranscriptionToolBar.cpp:164
+msgid "Play-at-speed"
+msgstr "á
á¶ááâáá
âáááá¿á"
+
+#: toolbars/TranscriptionToolBar.cpp:181
+msgid "Left-to-On"
+msgstr "áááááâáá¾áááá¸âáá¾á"
+
+#: toolbars/TranscriptionToolBar.cpp:184
+msgid "Right-to-Off"
+msgstr "áááá¶áâáá¾áááá¸âáá·á"
+
+#: toolbars/TranscriptionToolBar.cpp:187
+msgid "Left-to-Off"
+msgstr "áááááâáá¾áááá¸âáá·á"
+
+#: toolbars/TranscriptionToolBar.cpp:190
+msgid "Right-to-On"
+msgstr "áááá¶áâáá¾áááá¸âáá¾á"
+
+#: toolbars/TranscriptionToolBar.cpp:193
+msgid "Select-Sound"
+msgstr "áááá¾áâááá¡áá"
+
+#: toolbars/TranscriptionToolBar.cpp:196
+msgid "Select-Silence"
+msgstr "áááá¾áâáááá¶áá"
+
+#: toolbars/TranscriptionToolBar.cpp:199
+msgid "Make Labels"
+msgstr "ááááá¾áâáááá¶á"
+
+#: toolbars/TranscriptionToolBar.cpp:202
+msgid "Add Label"
+msgstr "ááááááâáááá¶á"
+
+#: toolbars/TranscriptionToolBar.cpp:205
+msgid "Calibrate"
+msgstr "áááá·áâáá¶áâáááá¶á"
+
#: widgets/AButton.cpp:302
msgid " (disabled)"
msgstr " (áá·á)"
@@ -8739,3 +9032,15 @@ msgstr ""
msgid "Could not load file: \"%s\""
msgstr "áá·áá¢á¶á
âáááá»áâá¯ááá¶á á \"%s\""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
+
diff --git a/locale/ko.po b/locale/ko.po
index e70df8d..78db488 100644
--- a/locale/ko.po
+++ b/locale/ko.po
@@ -16,9 +16,7 @@ msgstr "Project-Id-Version: Audacity 1.3.3\n"
"X-Poedit-Language: Korean\n"
"X-Poedit-Country: KOREA, REPUBLIC OF\n"
-#: AboutDialog.cpp:139
-#: AudacityApp.cpp:674
-#: Menus.cpp:783
+#: AboutDialog.cpp:139 AudacityApp.cpp:674 Menus.cpp:783
msgid "&About Audacity..."
msgstr "Audacity ì ë³´(&A)..."
@@ -34,11 +32,11 @@ msgid "Audacity is a free program written by a team of volunteer <a href=\"http:
msgstr ""
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#. i18n-hint: The translation of "translator_credits" will appear
@@ -47,8 +45,7 @@ msgstr ""
#.
#. For example: "English translation by Dominic Mazzoni."
#.
-#: AboutDialog.cpp:232
-#: AboutDialog.cpp:234
+#: AboutDialog.cpp:232 AboutDialog.cpp:234
msgid "translator_credits"
msgstr "ë²ì"
@@ -91,7 +88,7 @@ msgid "Special thanks:"
msgstr "í¹ë³í ê°ì¬í ë¶:"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
msgstr ""
#: AboutDialog.cpp:320
@@ -103,8 +100,7 @@ msgstr ""
msgid "Build Information"
msgstr ""
-#: AboutDialog.cpp:148
-#: effects/AvcCompressor.cpp:674
+#: AboutDialog.cpp:148 effects/AvcCompressor.cpp:674
msgid "Enabled"
msgstr "ì¬ì©"
@@ -202,16 +198,12 @@ msgstr "í´ë ì¤ì : "
msgid "GPL License"
msgstr ""
-#: AudacityApp.cpp:418
-#: Project.cpp:1654
+#: AudacityApp.cpp:418 Project.cpp:1654
#, c-format
msgid "%s is already open in another window."
msgstr "%s ì(ë) ì´ë¯¸ ë¤ë¥¸ ì°½ìì ì¬ì© ì¤ì
ëë¤."
-#: AudacityApp.cpp:420
-#: Project.cpp:1656
-#: Project.cpp:1737
-#: Project.cpp:1881
+#: AudacityApp.cpp:420 Project.cpp:1656 Project.cpp:1737 Project.cpp:1881
#: Project.cpp:1983
msgid "Error opening project"
msgstr "íë¡ì í¸ë¥¼ ì¬ë ì¤ ì¤ë¥"
@@ -237,21 +229,28 @@ msgstr "ì
ë ¥ 미í°"
msgid "Output Meter"
msgstr "ì¶ë ¥ 미í°"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
-#: AudacityApp.cpp:676
-#: Menus.cpp:531
-msgid "&Preferences...\tCtrl+,"
-msgstr "ì¤ì (&P)...\tCtrl+,"
+#: Menus.cpp:201
+msgid "&New"
+msgstr "ìë¡ ë§ë¤ê¸°(&N)"
+
+#: Menus.cpp:203
+msgid "&Open..."
+msgstr "ì´ê¸°(&O)..."
+
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
-#: AudacityApp.cpp:759
-#: AudacityApp.cpp:844
+#: AudacityApp.cpp:676 Menus.cpp:531
+msgid "&Preferences..."
+msgstr "ì¤ì (&P)..."
+
+#: AudacityApp.cpp:759 AudacityApp.cpp:844
#, c-format
msgid "Using block size of %ld\n"
msgstr "ì¬ì© ì¤ì¸ ë¸ë¡ í¬ê¸°: %ld\n"
-#: AudacityApp.cpp:781
-#: AudacityApp.cpp:859
+#: AudacityApp.cpp:781 AudacityApp.cpp:859
#, c-format
msgid "Unknown command line option: %s\n"
msgstr "ì ì ìë ëª
ë ¹ ë¼ì¸ ì¤ì : %s\n"
@@ -368,14 +367,14 @@ msgstr "ì¤ë¥: "
msgid "Error Initializing Audio"
msgstr "ì¤ëì¤ ì´ê¸°í ì¤ ì¤ë¥"
-#: AudioIO.cpp:1236
-msgid "Latency problem"
+#: AudioIO.cpp:1225
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
+"Audacity has brought it back to start at zero.\n"
+"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
msgstr ""
#: AudioIO.cpp:1236
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
-"Audacity has brought it back to start at zero.\n"
-"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
+msgid "Latency problem"
msgstr ""
#: AutoRecovery.cpp:40
@@ -422,38 +421,25 @@ msgstr ""
msgid "Confirm?"
msgstr ""
-#: AutoRecovery.cpp:132
-#: AutoRecovery.cpp:169
+#: AutoRecovery.cpp:132 AutoRecovery.cpp:169
msgid "Could not enumerate files in auto save directory"
msgstr "ìë ì ì¥ í´ëìì íì¼ì ê³ì°í ì ìì"
-#: AutoRecovery.cpp:133
-#: AutoRecovery.cpp:170
-#: Menus.cpp:2551
-#: Menus.cpp:4386
-#: Project.cpp:1840
-#: Project.cpp:3162
-#: Project.cpp:3237
-#: WaveTrack.cpp:519
-#: WaveTrack.cpp:538
-#: WaveTrack.cpp:1600
-#: effects/Effect.cpp:346
-#: export/ExportMP2.cpp:83
-#: prefs/DirectoriesPrefs.cpp:188
-#: prefs/KeyConfigPrefs.cpp:245
-#: toolbars/ControlToolBar.cpp:530
+#: AutoRecovery.cpp:133 AutoRecovery.cpp:170 Menus.cpp:2551 Menus.cpp:4386
+#: Project.cpp:1840 Project.cpp:3162 Project.cpp:3237 WaveTrack.cpp:519
+#: WaveTrack.cpp:538 WaveTrack.cpp:1600 effects/Effect.cpp:346
+#: export/ExportMP2.cpp:83 prefs/DirectoriesPrefs.cpp:188
+#: prefs/KeyConfigPrefs.cpp:245 toolbars/ControlToolBar.cpp:530
#: toolbars/ControlToolBar.cpp:817
msgid "Error"
msgstr "ì¤ë¥"
-#: BatchCommandDialog.cpp:56
-#: BatchCommandDialog.cpp:60
+#: BatchCommandDialog.cpp:56 BatchCommandDialog.cpp:60
#: BatchCommandDialog.cpp:61
msgid "Select Command"
msgstr "ëª
ë ¹ ì í"
-#: BatchCommandDialog.cpp:80
-#: BatchProcessDialog.cpp:454
+#: BatchCommandDialog.cpp:80 BatchProcessDialog.cpp:454
#: prefs/KeyConfigPrefs.cpp:142
msgid "&Command"
msgstr "ëª
ë ¹(&C)"
@@ -462,8 +448,7 @@ msgstr "ëª
ë ¹(&C)"
msgid "&Edit Parameters"
msgstr "ì¸ì í¸ì§(&E)"
-#: BatchCommandDialog.cpp:89
-#: BatchProcessDialog.cpp:455
+#: BatchCommandDialog.cpp:89 BatchProcessDialog.cpp:455
msgid "&Parameters"
msgstr "ì¸ì(&P)"
@@ -510,8 +495,7 @@ msgstr "%s ì ì©, ì¸ì\n"
"\n"
"%s"
-#: BatchCommands.cpp:667
-#: BatchCommands.cpp:672
+#: BatchCommands.cpp:667 BatchCommands.cpp:672
msgid "Test Mode"
msgstr "ìí 모ë"
@@ -520,8 +504,7 @@ msgstr "ìí 모ë"
msgid "Apply %s"
msgstr "%s ì ì©"
-#: BatchProcessDialog.cpp:60
-#: BatchProcessDialog.cpp:70
+#: BatchProcessDialog.cpp:60 BatchProcessDialog.cpp:70
#: BatchProcessDialog.cpp:71
msgid "Apply Chain"
msgstr "ì²´ì¸ ì ì©"
@@ -546,61 +529,31 @@ msgstr "íì¬ íë¡ì í¸ì ì ì©(&P)"
msgid "Apply to &Files..."
msgstr "íì¼ì ì ì©(&F)..."
-#: BatchProcessDialog.cpp:108
-#: BatchProcessDialog.cpp:247
-#: LabelDialog.cpp:136
-#: LabelDialog.cpp:140
-#: UploadDialog.cpp:180
-#: effects/Amplify.cpp:209
-#: effects/AutoDuck.cpp:528
-#: effects/AutoDuck.cpp:532
-#: effects/AvcCompressor.cpp:732
-#: effects/ChangeLength.cpp:184
-#: effects/ChangePitch.cpp:393
-#: effects/ChangeSpeed.cpp:393
-#: effects/ChangeTempo.cpp:295
-#: effects/ClickRemoval.cpp:429
-#: effects/Compressor.cpp:516
-#: effects/Effect.cpp:399
-#: effects/Effect.cpp:405
-#: effects/Equalization.cpp:1218
-#: effects/Leveller.cpp:249
-#: effects/Normalize.cpp:353
-#: effects/Phaser.cpp:600
-#: effects/Repeat.cpp:271
-#: effects/SpikeCleaner.cpp:188
-#: effects/TruncSilence.cpp:278
-#: effects/VST/VSTEffect.cpp:95
-#: effects/VST/VSTEffect.cpp:451
-#: effects/Wahwah.cpp:587
-#: effects/audiounits/AudioUnitEffect.cpp:882
-#: effects/ladspa/LadspaEffect.cpp:609
-#: effects/nyquist/Nyquist.cpp:823
-#: effects/nyquist/Nyquist.cpp:987
-#: export/Export.cpp:952
-#: export/ExportCL.cpp:328
-#: export/ExportCL.cpp:332
-#: export/ExportFLAC.cpp:226
-#: export/ExportFLAC.cpp:230
-#: export/ExportMP2.cpp:236
-#: export/ExportMP2.cpp:240
-#: export/ExportMP3.cpp:984
-#: export/ExportMP3.cpp:988
-#: export/ExportMP3.cpp:1524
-#: export/ExportMP3.cpp:1528
-#: export/ExportMultiple.cpp:302
-#: export/ExportMultiple.cpp:306
-#: export/ExportOGG.cpp:237
-#: export/ExportOGG.cpp:241
-#: export/ExportPCM.cpp:267
-#: export/ExportPCM.cpp:271
-#: import/ImportRaw.cpp:443
-#: prefs/PrefsDialog.cpp:169
+#: BatchProcessDialog.cpp:108 BatchProcessDialog.cpp:247 LabelDialog.cpp:136
+#: LabelDialog.cpp:140 UploadDialog.cpp:180 effects/Amplify.cpp:209
+#: effects/AutoDuck.cpp:528 effects/AutoDuck.cpp:532
+#: effects/AvcCompressor.cpp:732 effects/ChangeLength.cpp:184
+#: effects/ChangePitch.cpp:393 effects/ChangeSpeed.cpp:393
+#: effects/ChangeTempo.cpp:295 effects/ClickRemoval.cpp:429
+#: effects/Compressor.cpp:516 effects/Effect.cpp:399 effects/Effect.cpp:405
+#: effects/Equalization.cpp:1218 effects/Leveller.cpp:249
+#: effects/Normalize.cpp:353 effects/Phaser.cpp:600 effects/Repeat.cpp:271
+#: effects/SpikeCleaner.cpp:188 effects/TruncSilence.cpp:278
+#: effects/VST/VSTEffect.cpp:95 effects/VST/VSTEffect.cpp:451
+#: effects/Wahwah.cpp:587 effects/audiounits/AudioUnitEffect.cpp:882
+#: effects/ladspa/LadspaEffect.cpp:609 effects/nyquist/Nyquist.cpp:823
+#: effects/nyquist/Nyquist.cpp:987 export/Export.cpp:952
+#: export/ExportCL.cpp:328 export/ExportCL.cpp:332 export/ExportFLAC.cpp:226
+#: export/ExportFLAC.cpp:230 export/ExportMP2.cpp:236 export/ExportMP2.cpp:240
+#: export/ExportMP3.cpp:984 export/ExportMP3.cpp:988 export/ExportMP3.cpp:1524
+#: export/ExportMP3.cpp:1528 export/ExportMultiple.cpp:302
+#: export/ExportMultiple.cpp:306 export/ExportOGG.cpp:237
+#: export/ExportOGG.cpp:241 export/ExportPCM.cpp:267 export/ExportPCM.cpp:271
+#: import/ImportRaw.cpp:443 prefs/PrefsDialog.cpp:169
msgid "&Cancel"
msgstr "ì·¨ì(&C)"
-#: BatchProcessDialog.cpp:146
-#: BatchProcessDialog.cpp:191
+#: BatchProcessDialog.cpp:146 BatchProcessDialog.cpp:191
msgid "No chain selected"
msgstr "ì²´ì¸ì´ ì íëì§ ìì"
@@ -637,8 +590,7 @@ msgstr "ì ì© ì¤..."
msgid "File"
msgstr "íì¼"
-#: BatchProcessDialog.cpp:356
-#: BatchProcessDialog.cpp:360
+#: BatchProcessDialog.cpp:356 BatchProcessDialog.cpp:360
#: BatchProcessDialog.cpp:361
msgid "Edit Chains"
msgstr "ì²´ì¸ í¸ì§"
@@ -651,9 +603,7 @@ msgstr "ì²´ì¸(&C)"
msgid "&Add"
msgstr "ì¶ê°(&A)"
-#: BatchProcessDialog.cpp:436
-#: LabelDialog.cpp:128
-#: TrackPanel.cpp:3937
+#: BatchProcessDialog.cpp:436 LabelDialog.cpp:128 TrackPanel.cpp:3937
msgid "&Remove"
msgstr "ì ê±°(&R)"
@@ -667,8 +617,8 @@ msgstr "ì²´ì¸(&h) (í¸ì§íë ¤ë©´ ëë¸í´ë¦ ëë SPACE를 ë르ììì¤
#. i18n-hint: This is the number of the command in the list
#: BatchProcessDialog.cpp:453
-msgid "No"
-msgstr "ë²í¸"
+msgid "Num"
+msgstr ""
#: BatchProcessDialog.cpp:459
msgid "&Insert"
@@ -757,8 +707,7 @@ msgstr "ëì¤í¬ ê³µê°"
msgid "Copy Selected Audio Into Project"
msgstr "ì íë ì¤ëì¤ë¥¼ íë¡ì í¸ë¡ ë³µì¬"
-#: Dependencies.cpp:304
-#: Dependencies.cpp:413
+#: Dependencies.cpp:304 Dependencies.cpp:413
msgid "Cancel Save"
msgstr "ì ì¥ ì·¨ì"
@@ -770,8 +719,7 @@ msgstr ""
msgid "Copy All Audio into Project (Safer)"
msgstr ""
-#: Dependencies.cpp:320
-#: Dependencies.cpp:325
+#: Dependencies.cpp:320 Dependencies.cpp:325
msgid "Ask me"
msgstr "물ì´ë³´ê¸°"
@@ -805,9 +753,7 @@ msgid "Warning: there is very little free disk space left on this volume.\n"
msgstr "ê²½ê³ : ëì¤í¬ ê³µê°ì´ ì¼ë§ ë¨ì§ ìììµëë¤.\n"
"ì¤ì ìì ë¤ë¥¸ ìì í´ë를 ì§ì í´ ì£¼ììì¤."
-#: DirManager.cpp:221
-#: DirManager.cpp:251
-#: DirManager.cpp:332
+#: DirManager.cpp:221 DirManager.cpp:251 DirManager.cpp:332
msgid "Progress"
msgstr "ì§íë¥ "
@@ -862,8 +808,7 @@ msgstr "'%s' ìì '%s'(ì¼)ë¡ ì´ë¦ì ë³ê²½í ì ììµëë¤"
msgid "Changed block %s to new alias name\n"
msgstr ""
-#: DirManager.cpp:1115
-#: DirManager.cpp:1403
+#: DirManager.cpp:1115 DirManager.cpp:1403
msgid "Inspecting project file data..."
msgstr "íë¡ì í¸ ë°ì´í° íì¼ ê²ì¬ ì¤..."
@@ -914,14 +859,9 @@ msgstr "ìì íì§ ìê³ ê³ì; 무ìíê³ ë³´ì¡° íì¼ ìì
ìí"
msgid "Close project immediately with no changes"
msgstr "ë³ê²½ìì´ ë°ë¡ íë¡ì í¸ ë«ê¸°"
-#: DirManager.cpp:1228
-#: DirManager.cpp:1263
-#: DirManager.cpp:1309
-#: DirManager.cpp:1351
-#: export/Export.cpp:458
-#: export/Export.cpp:475
-#: export/Export.cpp:494
-#: widgets/Warning.cpp:55
+#: DirManager.cpp:1228 DirManager.cpp:1263 DirManager.cpp:1309
+#: DirManager.cpp:1351 export/Export.cpp:458 export/Export.cpp:475
+#: export/Export.cpp:494 widgets/Warning.cpp:55
msgid "Warning"
msgstr "ê²½ê³ "
@@ -944,14 +884,11 @@ msgstr "íë¡ì í¸ê° ('ë³ì¹ íì¼') ìì ì¬ì©ëë ì
ë ¥ íì¼ %d
msgid "Replace missing data with silence [permanent upon save]"
msgstr "무ìì¼ë¡ ìì¤ ë°ì´í° ëì²´ [ì구ì ì ì¥]"
-#: DirManager.cpp:1260
-#: DirManager.cpp:1348
+#: DirManager.cpp:1260 DirManager.cpp:1348
msgid "Temporarily replace missing data with silence [this session only]"
msgstr "ììì ì¼ë¡ 무ìì¼ë¡ ìì¤ ë°ì´í° ëì²´ [ì´ ì¸ì
ë§]"
-#: DirManager.cpp:1261
-#: DirManager.cpp:1307
-#: DirManager.cpp:1349
+#: DirManager.cpp:1261 DirManager.cpp:1307 DirManager.cpp:1349
msgid "Close project immediately with no further changes"
msgstr "ë ì´ì ë³ê²½ìì´ ë°ë¡ íë¡ì í¸ ë«ê¸°"
@@ -1021,11 +958,11 @@ msgstr "ì§ì¬ê°í"
msgid "FFmpeg support not compiled in"
msgstr ""
-#: FFmpeg.cpp:101
+#: FFmpeg.cpp:103
msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
#: FFmpeg.cpp:104
@@ -1083,11 +1020,12 @@ msgstr ""
msgid "FFmpeg not found"
msgstr ""
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
#: FFmpeg.h:109
@@ -1110,8 +1048,7 @@ msgstr ""
msgid "Frequency Analysis"
msgstr "주íì ë¶ì"
-#: FreqWindow.cpp:140
-#: TrackPanel.cpp:511
+#: FreqWindow.cpp:140 TrackPanel.cpp:511
msgid "Spectrum"
msgstr "ì¤íí¸ë¼"
@@ -1139,8 +1076,7 @@ msgstr "캡ì¤í¸ë¼"
msgid "Algorithm"
msgstr "ìê³ ë¦¬ì¦:"
-#: FreqWindow.cpp:168
-#: HistoryWindow.cpp:79
+#: FreqWindow.cpp:168 HistoryWindow.cpp:79
msgid "Size"
msgstr "í¬ê¸°"
@@ -1166,58 +1102,62 @@ msgstr "ë¡ê·¸ 주íì"
msgid "Axis"
msgstr ""
-#: FreqWindow.cpp:206
-#: LabelDialog.cpp:130
-#: Menus.cpp:245
-#: Menus.cpp:274
+#: FreqWindow.cpp:206 LabelDialog.cpp:130 Menus.cpp:245 Menus.cpp:274
msgid "&Export..."
msgstr "ë´ë³´ë´ê¸°(&E)..."
-#: export/ExportCL.cpp:188
-#: export/ExportOGG.cpp:121
-#: export/ExportPCM.cpp:114
+#: export/ExportCL.cpp:188 export/ExportOGG.cpp:121 export/ExportPCM.cpp:114
msgid "Export"
msgstr "ë´ë³´ë´ê¸°"
-#: Dependencies.cpp:308
-#: FreqWindow.cpp:209
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
+#: Dependencies.cpp:308 FreqWindow.cpp:209
msgid "Close"
msgstr "ë«ê¸°"
-#: FreqWindow.cpp:272
-#: FreqWindow.cpp:395
-#: effects/AutoDuck.cpp:487
-#: effects/AutoDuck.cpp:521
-#: effects/AutoDuck.cpp:799
-#: effects/Compressor.cpp:348
-#: effects/Compressor.cpp:356
-#: effects/Equalization.cpp:1045
-#: effects/Equalization.cpp:1047
-#: effects/Equalization.cpp:1055
-#: effects/Equalization.cpp:1147
-#: effects/Equalization.cpp:1333
-#: effects/Equalization.cpp:1344
-#: effects/Normalize.cpp:340
-#: widgets/Meter.cpp:357
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr ""
+
+#: FreqWindow.cpp:272 FreqWindow.cpp:395 effects/AutoDuck.cpp:487
+#: effects/AutoDuck.cpp:521 effects/AutoDuck.cpp:799
+#: effects/Compressor.cpp:348 effects/Compressor.cpp:356
+#: effects/Equalization.cpp:1045 effects/Equalization.cpp:1047
+#: effects/Equalization.cpp:1055 effects/Equalization.cpp:1147
+#: effects/Equalization.cpp:1333 effects/Equalization.cpp:1344
+#: effects/Normalize.cpp:340 widgets/Meter.cpp:357
msgid "dB"
msgstr "dB"
#. i18n-hint: This is the abbreviation for "Hertz", or
#. cycles per second.
-#: FreqWindow.cpp:287
-#: FreqWindow.cpp:435
-#: effects/Equalization.cpp:1086
-#: effects/Equalization.cpp:1143
-#: import/ImportRaw.cpp:416
+#: FreqWindow.cpp:287 FreqWindow.cpp:435 effects/Equalization.cpp:1086
+#: effects/Equalization.cpp:1143 import/ImportRaw.cpp:416
msgid "Hz"
msgstr "Hz"
+#: Menus.cpp:3390
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "ì¤íí¸ë¼ì íë¡í¸íë ¤ë©´, ì íë 모ë í¸ëì ìíë§ ë¹ì¨ì´ ëì¼í´ì¼ í©ëë¤."
+
+#: Menus.cpp:3416
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "ì¤ëì¤ê° ë무 ë§ì´ ì íëììµëë¤. ì²ì ì¤ëì¤ì %.1f ì´ ë§ì´ ë¶ìë©ëë¤."
+
#: FreqWindow.cpp:379
msgid "Not enough data selected."
msgstr "ë°ì´í°ê° ì¶©ë¶í ì íëì§ ìììµëë¤."
-#: FreqWindow.cpp:443
-#: effects/AutoDuck.cpp:801
+#: FreqWindow.cpp:443 effects/AutoDuck.cpp:801
msgid "s"
msgstr "s"
@@ -1239,12 +1179,8 @@ msgstr "spectrum.txt"
msgid "Export Spectral Data As:"
msgstr "ë¤ìì¼ë¡ ì¤íí¸ë¼ ë°ì´í° ë´ë³´ë´ê¸°:"
-#: FreqWindow.cpp:1069
-#: LabelDialog.cpp:590
-#: Menus.cpp:2160
-#: Project.cpp:2273
-#: Project.cpp:3214
-#: prefs/KeyConfigPrefs.cpp:180
+#: FreqWindow.cpp:1069 LabelDialog.cpp:590 Menus.cpp:2160 Project.cpp:2273
+#: Project.cpp:3214 prefs/KeyConfigPrefs.cpp:180
msgid "Couldn't write to file: "
msgstr "íì¼ì ì¸ ì ìì: "
@@ -1256,6 +1192,21 @@ msgstr "주íì (Hz)\të 벨 (dB)"
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "ëê·¸ (ì´)\t주íì (Hz)\të 벨"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr ""
+
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr ""
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr ""
@@ -1333,7 +1284,7 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr ""
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
msgstr ""
#: HelpText.cpp:244
@@ -1357,7 +1308,7 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr ""
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
msgstr ""
#: HelpText.cpp:383
@@ -1392,46 +1343,22 @@ msgstr "무ìí ë¨ê³"
msgid "&Discard"
msgstr "무ì(&D)"
-#: HistoryWindow.cpp:111
-#: LabelDialog.cpp:137
-#: LabelDialog.cpp:139
-#: effects/Amplify.cpp:214
-#: effects/AutoDuck.cpp:529
-#: effects/AutoDuck.cpp:531
-#: effects/ChangeLength.cpp:187
-#: effects/ChangePitch.cpp:397
-#: effects/ChangeSpeed.cpp:397
-#: effects/ChangeTempo.cpp:299
-#: effects/Compressor.cpp:519
-#: effects/Effect.cpp:401
-#: effects/Effect.cpp:403
-#: effects/Equalization.cpp:1221
-#: effects/Leveller.cpp:252
-#: effects/Normalize.cpp:356
-#: effects/Phaser.cpp:605
-#: effects/Repeat.cpp:274
-#: effects/SpikeCleaner.cpp:191
-#: effects/VST/VSTEffect.cpp:98
-#: effects/Wahwah.cpp:592
-#: effects/ladspa/LadspaEffect.cpp:612
-#: effects/nyquist/Nyquist.cpp:829
-#: export/Export.cpp:955
-#: export/ExportCL.cpp:264
-#: export/ExportCL.cpp:329
-#: export/ExportCL.cpp:331
-#: export/ExportFLAC.cpp:227
-#: export/ExportFLAC.cpp:229
-#: export/ExportMP2.cpp:237
-#: export/ExportMP2.cpp:239
-#: export/ExportMP3.cpp:985
-#: export/ExportMP3.cpp:987
-#: export/ExportMP3.cpp:1525
-#: export/ExportMP3.cpp:1527
-#: export/ExportOGG.cpp:238
-#: export/ExportOGG.cpp:240
-#: export/ExportPCM.cpp:268
-#: export/ExportPCM.cpp:270
-#: prefs/PrefsDialog.cpp:164
+#: HistoryWindow.cpp:111 LabelDialog.cpp:137 LabelDialog.cpp:139
+#: effects/Amplify.cpp:214 effects/AutoDuck.cpp:529 effects/AutoDuck.cpp:531
+#: effects/ChangeLength.cpp:187 effects/ChangePitch.cpp:397
+#: effects/ChangeSpeed.cpp:397 effects/ChangeTempo.cpp:299
+#: effects/Compressor.cpp:519 effects/Effect.cpp:401 effects/Effect.cpp:403
+#: effects/Equalization.cpp:1221 effects/Leveller.cpp:252
+#: effects/Normalize.cpp:356 effects/Phaser.cpp:605 effects/Repeat.cpp:274
+#: effects/SpikeCleaner.cpp:191 effects/VST/VSTEffect.cpp:98
+#: effects/Wahwah.cpp:592 effects/ladspa/LadspaEffect.cpp:612
+#: effects/nyquist/Nyquist.cpp:829 export/Export.cpp:955
+#: export/ExportCL.cpp:264 export/ExportCL.cpp:329 export/ExportCL.cpp:331
+#: export/ExportFLAC.cpp:227 export/ExportFLAC.cpp:229
+#: export/ExportMP2.cpp:237 export/ExportMP2.cpp:239 export/ExportMP3.cpp:985
+#: export/ExportMP3.cpp:987 export/ExportMP3.cpp:1525
+#: export/ExportMP3.cpp:1527 export/ExportOGG.cpp:238 export/ExportOGG.cpp:240
+#: export/ExportPCM.cpp:268 export/ExportPCM.cpp:270 prefs/PrefsDialog.cpp:164
msgid "&OK"
msgstr "íì¸(&O)"
@@ -1439,8 +1366,7 @@ msgstr "íì¸(&O)"
msgid "Unable to determine"
msgstr "ì¸ìí ì ìì"
-#: Internat.cpp:180
-#: import/ImportRaw.cpp:392
+#: Internat.cpp:180 import/ImportRaw.cpp:392
msgid "bytes"
msgstr "ë°ì´í¸"
@@ -1456,13 +1382,19 @@ msgstr "MB"
msgid "GB"
msgstr "GB"
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
#: LabelDialog.cpp:52
msgid "Track"
msgstr "í¸ë"
-#: LabelDialog.cpp:53
-#: Menus.cpp:4006
-#: Menus.cpp:4034
+#: LabelDialog.cpp:53 Menus.cpp:4006 Menus.cpp:4034
msgid "Label"
msgstr "ë¼ë²¨"
@@ -1475,8 +1407,7 @@ msgstr "ìì ìê°(&S)"
msgid "End Time"
msgstr "ì¢
ë£ ìê°"
-#: LabelDialog.cpp:100
-#: Menus.cpp:665
+#: LabelDialog.cpp:100 Menus.cpp:665
msgid "&Edit Labels"
msgstr "ë¼ë²¨ í¸ì§(&E)"
@@ -1492,8 +1423,7 @@ msgstr "ë¤ì ë¤ì ì½ì
(&A)"
msgid "Insert &Before"
msgstr "ë¤ì ìì ì½ì
(&B)"
-#: LabelDialog.cpp:129
-#: Menus.cpp:235
+#: LabelDialog.cpp:129 Menus.cpp:235
msgid "&Import..."
msgstr "ê°ì ¸ì¤ê¸°(&I)..."
@@ -1515,20 +1445,15 @@ msgstr "ë¼ë²¨ ì´ë¦ì´ ë¹ì´ ììµëë¤.\n"
msgid "Confirm"
msgstr "íì¸"
-#: LabelDialog.cpp:505
-#: Menus.cpp:3522
+#: LabelDialog.cpp:505 Menus.cpp:3522
msgid "Select a text file containing labels..."
msgstr "ë¼ë²¨ì í¬í¨íê³ ìë í
ì¤í¸ íì¼ ì í..."
-#: LabelDialog.cpp:509
-#: Menus.cpp:3526
+#: LabelDialog.cpp:509 Menus.cpp:3526
msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
msgstr "í
ì¤í¸ íì¼ (*.txt)|*.txt|모ë íì¼ (*.*)|*.*"
-#: LabelDialog.cpp:523
-#: Menus.cpp:3538
-#: Project.cpp:1703
-#: Project.cpp:1711
+#: LabelDialog.cpp:523 Menus.cpp:3538 Project.cpp:1703 Project.cpp:1711
#: import/ImportMIDI.cpp:31
msgid "Could not open file: "
msgstr "íì¼ì ì´ ì ìì: "
@@ -1537,13 +1462,11 @@ msgstr "íì¼ì ì´ ì ìì: "
msgid "No labels to export."
msgstr "ë´ë³´ë¼ ë¼ë²¨ì´ ììµëë¤."
-#: LabelDialog.cpp:555
-#: Menus.cpp:2125
+#: LabelDialog.cpp:555 Menus.cpp:2125
msgid "Export Labels As:"
msgstr "ë¼ë²¨ì ë¤ìì¼ë¡ ë´ë³´ë´ê¸°:"
-#: LabelDialog.cpp:557
-#: Menus.cpp:2123
+#: LabelDialog.cpp:557 Menus.cpp:2123
msgid "labels.txt"
msgstr "labels.txt"
@@ -1555,10 +1478,7 @@ msgstr "ì ë¼ë²¨ í¸ë"
msgid "Enter track name"
msgstr "í¸ëëª
ì
ë ¥"
-#: LabelDialog.cpp:692
-#: LabelDialog.h:50
-#: LabelTrack.cpp:88
-#: Menus.cpp:601
+#: LabelDialog.cpp:692 LabelDialog.h:50 LabelTrack.cpp:88 Menus.cpp:601
msgid "&Label Track"
msgstr "ë¼ë²¨ í¸ë(&L)"
@@ -1585,24 +1505,15 @@ msgstr "Audacity íë¡ì í¸ ì¬ë ì¤"
msgid "&File"
msgstr "íì¼(&F)"
-#: Menus.cpp:201
-msgid "&New\tCtrl+N"
-msgstr "ìë¡ ë§ë¤ê¸°(&N)\tCtrl+N"
-
-#: Menus.cpp:203
-msgid "&Open...\tCtrl+O"
-msgstr "ì´ê¸°(&O)...\tCtrl+O"
-
#: Menus.cpp:214
-msgid "&Close\tCtrl+W"
-msgstr "ë«ê¸°(&C)\tCtrl+W"
+msgid "&Close"
+msgstr "ë«ê¸°(&C)"
#: Menus.cpp:217
-msgid "&Save Project\tCtrl+S"
-msgstr "íë¡ì í¸ ì ì¥(&S)\tCtrl+S"
+msgid "&Save Project"
+msgstr "íë¡ì í¸ ì ì¥(&S)"
-#: Menus.cpp:221
-#: Project.cpp:2508
+#: Menus.cpp:221 Project.cpp:2508
msgid "Save Project &As..."
msgstr "ë¤ë¥¸ ì´ë¦ì¼ë¡ íë¡ì í¸ ì ì¥(&A)..."
@@ -1623,8 +1534,8 @@ msgid "&Import"
msgstr ""
#: Menus.cpp:237
-msgid "&Audio...\tCtrl+Shift+I"
-msgstr "ì¤ëì¤(&A)...\tCtrl+Shift+I"
+msgid "&Audio..."
+msgstr "ì¤ëì¤(&A)..."
#: Menus.cpp:238
msgid "&Labels..."
@@ -1638,8 +1549,7 @@ msgstr "미ë(&M)..."
msgid "&Raw Data..."
msgstr "ë¡ì° ë°ì´í°(&R)..."
-#: Menus.cpp:251
-#: Menus.cpp:280
+#: Menus.cpp:251 Menus.cpp:280
msgid "Expo&rt Selection..."
msgstr "ì í ë¶ë¶ ë´ë³´ë´ê¸°(&r)..."
@@ -1655,12 +1565,11 @@ msgstr "ë¤ì¤ì¼ë¡ ë´ë³´ë´ê¸°(&M)..."
msgid "Export MIDI..."
msgstr ""
-#: Menus.cpp:290
-msgid "CleanSpeech C&hain..."
-msgstr ""
+#: Menus.cpp:301
+msgid "Appl&y Chain..."
+msgstr "ì²´ì¸ ì ì©(&y)..."
-#: Menus.cpp:289
-#: Menus.cpp:303
+#: Menus.cpp:289 Menus.cpp:303
msgid "Edit C&hains..."
msgstr "ì²´ì¸ í¸ì§(&h)..."
@@ -1672,10 +1581,6 @@ msgstr ""
msgid "I&mport CleanSpeech Presets..."
msgstr ""
-#: Menus.cpp:301
-msgid "Appl&y Chain..."
-msgstr "ì²´ì¸ ì ì©(&y)..."
-
#: Menus.cpp:307
msgid "&Upload File..."
msgstr "íì¼ ì
ë¡ë(&U)..."
@@ -1688,77 +1593,73 @@ msgstr "íì´ì§ ì¤ì (&g)..."
msgid "&Print..."
msgstr "ì¸ì(&P)..."
-#: Menus.cpp:331
-#: Menus.cpp:334
-msgid "E&xit\tCtrl+Q"
-msgstr "ì¢
ë£(&x)\tCtrl+Q"
+#: Menus.cpp:331 Menus.cpp:334
+msgid "E&xit"
+msgstr "ì¢
ë£(&x)"
-#: Menus.cpp:343
-#: toolbars/EditToolBar.cpp:76
+#: Menus.cpp:343 toolbars/EditToolBar.cpp:76
msgid "&Edit"
msgstr "í¸ì§(&E)"
#: Menus.cpp:347
-msgid "&Undo\tCtrl+Z"
-msgstr "ëë리기(&U)\tCtrl+Z"
+msgid "&Undo"
+msgstr "ëë리기(&U)"
-#: Menus.cpp:355
-#: prefs/KeyConfigPrefs.cpp:369
-#: toolbars/EditToolBar.cpp:146
+#: Menus.cpp:355 prefs/KeyConfigPrefs.cpp:369 toolbars/EditToolBar.cpp:146
msgid "&Redo"
msgstr "ë¤ì ì¤í(&R)"
#: Menus.cpp:368
-msgid "Cu&t\tCtrl+X"
-msgstr "ìë¼ë´ê¸°(&t)\tCtrl+X"
+msgid "Cu&t"
+msgstr "ìë¼ë´ê¸°(&t)"
#: Menus.cpp:372
-msgid "Spl&it Cut\tCtrl+Alt+X"
-msgstr "ë¶í ìë¼ë´ê¸°(&i)\tCtrl+Alt+X"
+msgid "Spl&it Cut"
+msgstr "ë¶í ìë¼ë´ê¸°(&i)"
#: Menus.cpp:373
-msgid "&Copy\tCtrl+C"
-msgstr "ë³µì¬(&C)\tCtrl+C"
+msgid "&Copy"
+msgstr "ë³µì¬(&C)"
#: Menus.cpp:377
-msgid "&Paste\tCtrl+V"
-msgstr "ë¶ì¬ë£ê¸°(&P)\tCtrl+V"
+msgid "&Paste"
+msgstr "ë¶ì¬ë£ê¸°(&P)"
#: Menus.cpp:381
-msgid "Tri&m\tCtrl+T"
-msgstr "í¸ë¦¼(&m)\tCtrl+T"
+msgid "Tri&m"
+msgstr "í¸ë¦¼(&m)"
#: Menus.cpp:383
-msgid "&Delete\tCtrl+K"
-msgstr "ìì (&D)\tCtrl+K"
+msgid "&Delete"
+msgstr "ìì (&D)"
#: Menus.cpp:384
-msgid "Split D&elete\tCtrl+Alt+K"
-msgstr "ë¶í ìì (&e)\tCtrl+Alt+K"
+msgid "Split D&elete"
+msgstr "ë¶í ìì (&e)"
#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
+msgid "Silence Audi&o"
msgstr ""
#: Menus.cpp:387
-msgid "Sp&lit\tCtrl+I"
-msgstr "ë¶í (&l)\tCtrl+I"
+msgid "Sp&lit"
+msgstr "ë¶í (&l)"
#: Menus.cpp:392
-msgid "Split Ne&w\tCtrl+Alt+I"
-msgstr "ì ë¶í (&w)\tCtrl+Alt+I"
+msgid "Split Ne&w"
+msgstr "ì ë¶í (&w)"
#: Menus.cpp:397
-msgid "&Join\tCtrl+J"
-msgstr "í©ì¹ê¸°(&J)\tCtrl+J"
+msgid "&Join"
+msgstr "í©ì¹ê¸°(&J)"
#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
+msgid "Detac&h at Silences"
msgstr ""
#: Menus.cpp:400
-msgid "Duplic&ate\tCtrl+D"
-msgstr "ì¬ë³¸ ìì±(&a)\tCtrl+D"
+msgid "Duplic&ate"
+msgstr "ì¬ë³¸ ìì±(&a)"
#: Menus.cpp:400 Menus.cpp:639
msgid "Stereo Trac&k to Mono"
@@ -1770,82 +1671,67 @@ msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:415
-msgid "&Cut\tAlt+X"
-msgstr "ìë¼ë´ê¸°(&C)\tAlt+X"
+msgid "&Cut"
+msgstr "ìë¼ë´ê¸°(&C)"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:420
-msgid "&Split Cut\tShift+Alt+X"
-msgstr "ë¶í ìë¼ë´ê¸°(&S)\tShift+Alt+X"
+msgid "&Split Cut"
+msgstr "ë¶í ìë¼ë´ê¸°(&S)"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:425
-msgid "Co&py\tShift+Alt+C"
-msgstr "ë³µì¬(&p)\tShift+Alt+C"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:431
-msgid "&Delete\tAlt+K"
-msgstr "ìì (&D)\tAlt+K"
+msgid "Co&py"
+msgstr "ë³µì¬(&p)"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:436
-msgid "Sp&lit Delete\tShift+Alt+K"
-msgstr "ë¶í ìì (&l)\tShift+Alt+K"
+msgid "Sp&lit Delete"
+msgstr "ë¶í ìì (&l)"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:441
-msgid "Sile&nce\tAlt+L"
-msgstr "무ì(&n)\tAlt+L"
+msgid "Sile&nce"
+msgstr "무ì(&n)"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:447
-msgid "Spli&t\tAlt+I"
-msgstr "ë¶í (&t)\tAlt+I"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:452
-msgid "&Join\tAlt+J"
-msgstr "ê²°í©(&J)\tAlt+J"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
-msgstr ""
+msgid "Spli&t"
+msgstr "ë¶í (&t)"
#: Menus.cpp:456
msgid "&Select"
msgstr ""
#: Menus.cpp:464
-msgid "&All\tCtrl+A"
-msgstr "모ë ì í(&A)\tCtrl+A"
+msgid "&All"
+msgstr "모ë ì í(&A)"
#: Menus.cpp:465
-msgid "&None\tCtrl+Shift+A"
-msgstr "ì í ìì(&N)\tCtrl+Shift+A"
+msgid "&None"
+msgstr "ì í ìì(&N)"
#: Menus.cpp:462
#, fuzzy
-msgid "&Left at Playback Position\t["
-msgstr "íì¬ ì»¤ì ìì¹ìì ì¼ìª½ ê²½ê³ ì§ì \t["
+msgid "&Left at Playback Position"
+msgstr "íì¬ ì»¤ì ìì¹ìì ì¼ìª½ ê²½ê³ ì§ì "
#: Menus.cpp:463
#, fuzzy
-msgid "&Right at Playback Position\t]"
-msgstr "íì¬ ì»¤ì ìì¹ìì ì¤ë¥¸ìª½ ê²½ê³ ì§ì \t]"
+msgid "&Right at Playback Position"
+msgstr "íì¬ ì»¤ì ìì¹ìì ì¤ë¥¸ìª½ ê²½ê³ ì§ì "
#: Menus.cpp:467
-msgid "Track &Start to Cursor\tShift+J"
+msgid "Track &Start to Cursor"
msgstr ""
#: Menus.cpp:468
-msgid "Cursor to Track &End\tShift+K"
+msgid "Cursor to Track &End"
msgstr ""
#: Menus.cpp:481
-msgid "Find &Zero Crossings\tZ"
-msgstr "0 êµì°¨ 찾기(&Z)\tZ"
+msgid "Find &Zero Crossings"
+msgstr "0 êµì°¨ 찾기(&Z)"
#: Menus.cpp:476
msgid "Mo&ve Cursor"
@@ -1862,11 +1748,11 @@ msgid "to Selection En&d"
msgstr "ì í ë¶ë¶ì ì¢
ë£ ìì¹"
#: Menus.cpp:483
-msgid "to Track &Start\tJ"
+msgid "to Track &Start"
msgstr ""
#: Menus.cpp:484
-msgid "to Track &End\tK"
+msgid "to Track &End"
msgstr ""
#: Menus.cpp:491
@@ -1889,29 +1775,8 @@ msgstr ""
msgid "&Unlock"
msgstr ""
-#: Menus.cpp:523
-msgid "Turn Snap-To On"
-msgstr "ì¤ë
ì¼ê¸°"
-
-#: Menus.cpp:524
-msgid "Turn Snap-To Off"
-msgstr "ì¤ë
ë기"
-
-#: Menus.cpp:525
-msgid "Turn Grid Snap On"
-msgstr "그리ë ì¤ë
ì¼ê¸°"
-
-#: Menus.cpp:526
-msgid "Turn Grid Snap Off"
-msgstr "그리ë ì¤ë
ë기"
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr ""
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
+msgid "Pre&ferences..."
msgstr ""
#: Menus.cpp:545
@@ -1919,36 +1784,36 @@ msgid "&View"
msgstr "보기(&V)"
#: Menus.cpp:547
-msgid "Zoom &In\tCtrl+1"
-msgstr "íë©´ íë(&I)\tCtrl+1"
+msgid "Zoom &In"
+msgstr "íë©´ íë(&I)"
#: Menus.cpp:550
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "íì¤ í¬ê¸°(&N)\tCtrl+2"
+msgid "Zoom &Normal"
+msgstr "íì¤ í¬ê¸°(&N)"
#: Menus.cpp:551
-msgid "Zoom &Out\tCtrl+3"
-msgstr "íë©´ ì¶ì(&O)\tCtrl+3"
+msgid "Zoom &Out"
+msgstr "íë©´ ì¶ì(&O)"
#: Menus.cpp:554
-msgid "&Fit in Window\tCtrl+F"
-msgstr "ì°½ í¬ê¸°ì ë§ì¶ê¸°(&F)\tCtrl+F"
+msgid "&Fit in Window"
+msgstr "ì°½ í¬ê¸°ì ë§ì¶ê¸°(&F)"
#: Menus.cpp:555
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "ìì§ì¼ë¡ ë§ì¶ê¸°(&V)\tCtrl+Shift+F"
+msgid "Fit &Vertically"
+msgstr "ìì§ì¼ë¡ ë§ì¶ê¸°(&V)"
#: Menus.cpp:556
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "ì í ë¶ë¶ íë(&Z)\tCtrl+E"
+msgid "&Zoom to Selection"
+msgstr "ì í ë¶ë¶ íë(&Z)"
#: Menus.cpp:559
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
-msgstr "모ë í¸ë ê°ì¶ê¸°(&C)\tCtrl+Shift+C"
+msgid "&Collapse All Tracks"
+msgstr "모ë í¸ë ê°ì¶ê¸°(&C)"
#: Menus.cpp:560
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
-msgstr "모ë í¸ë ë³´ì´ê¸°(&x)\tCtrl+Shift+X"
+msgid "E&xpand All Tracks"
+msgstr "모ë í¸ë ë³´ì´ê¸°(&x)"
#: Menus.cpp:551
msgid "&Show Clipping"
@@ -2016,40 +1881,40 @@ msgstr ""
msgid "T&ransport"
msgstr ""
-#: Menus.cpp:591
-msgid "Play\tSpace"
-msgstr ""
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play"
+msgstr "ì¬ì"
#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
+msgid "&Loop Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Pause\tP"
+msgid "&Pause"
msgstr ""
#: Menus.cpp:596
-msgid "&Stop\tSpace"
+msgid "&Stop"
msgstr ""
#: Menus.cpp:827
-msgid "Skip to Start\tHome"
-msgstr "ììê¹ì§ ê±´ëë°ê¸°\tHome"
+msgid "Skip to Start"
+msgstr "ììê¹ì§ ê±´ëë°ê¸°"
#: Menus.cpp:828
-msgid "Skip to End\tEnd"
-msgstr "ì¢
ë£ê¹ì§ ê±´ëë°ê¸°\tEnd"
+msgid "Skip to End"
+msgstr "ì¢
ë£ê¹ì§ ê±´ëë°ê¸°"
#: Menus.cpp:600
-msgid "&Record\tR"
+msgid "&Record"
msgstr ""
#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
+msgid "&Timer Record..."
msgstr ""
#: Menus.cpp:604
-msgid "Append Record\tShift+R"
+msgid "Append Record"
msgstr ""
#: Menus.cpp:607
@@ -2077,15 +1942,14 @@ msgid "Add &New"
msgstr ""
#: Menus.cpp:599
-msgid "&Audio Track\tCtrl+Shift+N"
-msgstr "ì¤ëì¤ í¸ë(&A)\tCtrl+Shift+N"
+msgid "&Audio Track"
+msgstr "ì¤ëì¤ í¸ë(&A)"
#: Menus.cpp:600
msgid "&Stereo Track"
msgstr "ì¤í
ë ì¤ í¸ë(&S)"
-#: Menus.cpp:602
-#: TimeTrack.cpp:44
+#: Menus.cpp:602 TimeTrack.cpp:44
msgid "&Time Track"
msgstr "ìê° í¸ë(&T)"
@@ -2094,7 +1958,7 @@ msgid "Mi&x and Render"
msgstr ""
#: Menus.cpp:564
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
+msgid "Mix and Render to New Track"
msgstr ""
#: Menus.cpp:618
@@ -2106,11 +1970,11 @@ msgid "Remo&ve Tracks"
msgstr "í¸ë ì ê±°(&v)"
#: Menus.cpp:667
-msgid "&Mute All Tracks\tCtrl+U"
+msgid "&Mute All Tracks"
msgstr ""
#: Menus.cpp:668
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
+msgid "&UnMute All Tracks"
msgstr ""
#: Menus.cpp:635
@@ -2161,17 +2025,17 @@ msgstr ""
msgid "Synchronize MIDI with Audio"
msgstr ""
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
+#: Menus.cpp:686
+msgid "&Link Audio and Label Tracks"
msgstr ""
-#: Menus.cpp:661
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "ì í ë¶ë¶ì ë¼ë²¨ ì¶ê°(&L)\tCtrl+B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr ""
#: Menus.cpp:662
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "ì¬ì ìì¹ì ë¼ë²¨ ì¶ê°(&P)\tCtrl+M"
+msgid "Add Label At &Playback Position"
+msgstr "ì¬ì ìì¹ì ë¼ë²¨ ì¶ê°(&P)"
#: Menus.cpp:716
msgid "S&ort tracks"
@@ -2197,21 +2061,20 @@ msgstr ""
msgid "Effe&ct"
msgstr "í¨ê³¼(&c)"
-#: Menus.cpp:708
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "ë§ì§ë§ í¨ê³¼ ë°ë³µ\tCtrl+R"
-
#: Menus.cpp:740
msgid "&Analyze"
msgstr "ë¶ì(&A)"
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
+
#: Menus.cpp:692
#, fuzzy
msgid "Plot Spectrum..."
msgstr "ì¤íí¸ë¼ íë¡í¸(&P)..."
-#: Menus.cpp:775
-#: Menus.cpp:778
+#: Menus.cpp:775 Menus.cpp:778
msgid "&Help"
msgstr "ëìë§(&H)"
@@ -2223,8 +2086,8 @@ msgstr "Audacity CleanSpeech ì ë³´(&A)..."
msgid "&Show Welcome Message..."
msgstr ""
-#: Menus.cpp:736
-msgid "&Index..."
+#: Menus.cpp:958
+msgid "&Help..."
msgstr ""
#: Menus.cpp:959
@@ -2243,181 +2106,149 @@ msgstr "벤ì¹ë§í¬ ì¤í(&R)..."
msgid "&Audio Device Info..."
msgstr ""
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
msgstr ""
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
msgstr ""
#: Menus.cpp:804
-msgid "Selection Tool\tF1"
-msgstr "ì í ë구\tF1"
+msgid "Selection Tool"
+msgstr "ì í ë구"
#: Menus.cpp:805
-msgid "Envelope Tool\tF2"
-msgstr "ê°ì¸ê¸° ë구\tF2"
+msgid "Envelope Tool"
+msgstr "ê°ì¸ê¸° ë구"
#: Menus.cpp:806
-msgid "Draw Tool\tF3"
-msgstr "그리기 ë구\tF3"
+msgid "Draw Tool"
+msgstr "그리기 ë구"
#: Menus.cpp:807
-msgid "Zoom Tool\tF4"
-msgstr "íë ë구\tF4"
+msgid "Zoom Tool"
+msgstr "íë ë구"
#: Menus.cpp:808
-msgid "Time Shift Tool\tF5"
-msgstr "ìê° ì´ë ë구\tF5"
+msgid "Time Shift Tool"
+msgstr "ìê° ì´ë ë구"
#: Menus.cpp:809
-msgid "Multi Tool\tF6"
-msgstr "ë¤ì¤ ë구\tF6"
+msgid "Multi Tool"
+msgstr "ë¤ì¤ ë구"
#: Menus.cpp:811
-msgid "Next Tool\tD"
-msgstr "ë¤ì ë구\tD"
+msgid "Next Tool"
+msgstr "ë¤ì ë구"
#: Menus.cpp:812
-msgid "Previous Tool\tA"
-msgstr "ì´ì ë구\tA"
+msgid "Previous Tool"
+msgstr "ì´ì ë구"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
-msgstr ""
-
-#: Menus.cpp:815
-msgid "Stop\tS"
-msgstr "ì¤ì§\tS"
-
-#: Menus.cpp:816
-msgid "Pause\tP"
-msgstr "ì¼ì ë©ì¶¤\tP"
-
-#: Menus.cpp:817
-msgid "Record\tR"
-msgstr "ë
¹ì\tR"
-
-#: Menus.cpp:999
-msgid "Record Append\tShift+R"
+msgid "Play/Stop"
msgstr ""
#: Menus.cpp:1001
-msgid "Play/Stop and Set Cursor\tShift+A"
+msgid "Play/Stop and Set Cursor"
msgstr ""
#: Menus.cpp:821
-msgid "Play One Second\t1"
-msgstr "1ì´ ì¬ì\t1"
+msgid "Play One Second"
+msgstr "1ì´ ì¬ì"
#: Menus.cpp:822
-msgid "Play To Selection\tB"
-msgstr "ì í ë¶ë¶ê¹ì§ ì¬ì\tB"
-
-#: Menus.cpp:823
-msgid "Play Looped\tL"
-msgstr "êµ¬ê° ì¬ì\tL"
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
+msgid "Play To Selection"
+msgstr "ì í ë¶ë¶ê¹ì§ ì¬ì"
#: Menus.cpp:825
-msgid "Play Cut Preview\tC"
-msgstr "ìë¼ë´ê¸° 미리 ë£ê¸° ì¬ì\tC"
+msgid "Play Cut Preview"
+msgstr "ìë¼ë´ê¸° 미리 ë£ê¸° ì¬ì"
#: Menus.cpp:830
-msgid "Selection to Start\tShift+Home"
-msgstr "ìì ì í ë¶ë¶\tShift+Home"
+msgid "Selection to Start"
+msgstr "ìì ì í ë¶ë¶"
#: Menus.cpp:831
-msgid "Selection to End\tShift+End"
-msgstr "ì¢
ë£ ì í ë¶ë¶\tShift+End"
+msgid "Selection to End"
+msgstr "ì¢
ë£ ì í ë¶ë¶"
#: Menus.cpp:833
-msgid "DeleteKey\tBackspace"
-msgstr "ìì í¤\tBackspace"
+msgid "DeleteKey"
+msgstr "ìì í¤"
#: Menus.cpp:838
-msgid "DeleteKey2\tDelete"
-msgstr "ìì í¤2\tDelete"
+msgid "DeleteKey2"
+msgstr "ìì í¤2"
-#: Menus.cpp:844
-msgid "Seek left short period during playback\tLeft"
-msgstr "ì¬ìíë ëì ì¼ìª½ ì§§ì êµ¬ê° íì\tLeft"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
+msgstr ""
-#: Menus.cpp:845
-msgid "Seek right short period during playback\tRight"
-msgstr "ì¬ìíë ëì ì¤ë¥¸ìª½ ì§§ì êµ¬ê° íì\tRight"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
+msgstr ""
-#: Menus.cpp:846
-msgid "Seek left long period during playback\tShift+Left"
-msgstr "ì¬ìíë ëì ì¼ìª½ 긴 êµ¬ê° íì\tShift+Left"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
+msgstr ""
-#: Menus.cpp:847
-msgid "Seek right long period during playback\tShift+Right"
-msgstr "ì¬ìíë ëì ì¤ë¥¸ìª½ 긴 êµ¬ê° íì\tShift+Right"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
+msgstr ""
#: Menus.cpp:851
-msgid "Move Focus to Previous Track\tUp"
-msgstr "ì´ì í¸ëì¼ë¡ ì´ì ì´ë\tUp"
+msgid "Move Focus to Previous Track"
+msgstr "ì´ì í¸ëì¼ë¡ ì´ì ì´ë"
-#: Menus.cpp:852
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
-msgstr "ì´ì í¸ëì¼ë¡ ì´ì ì´ë í ì í ë¶ë¶ ë³ê²½\tShift+Up"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
+msgstr ""
#: Menus.cpp:853
-msgid "Move Focus to Next Track\tDown"
-msgstr "ë¤ì í¸ëì¼ë¡ ì´ì ì´ë\tDown"
+msgid "Move Focus to Next Track"
+msgstr "ë¤ì í¸ëì¼ë¡ ì´ì ì´ë"
-#: Menus.cpp:854
-msgid "Move Focus to Next and Change Selection\tShift+Down"
-msgstr "ë¤ì í¸ëì¼ë¡ ì´ì ì´ë í ì í ë¶ë¶ ë³ê²½\tShift+Down"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
+msgstr ""
#: Menus.cpp:855
-msgid "Toggle Focused Track\tReturn"
-msgstr "ì í í¸ë í ê¸\tReturn"
-
-#: Menus.cpp:856
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr "ì í í¸ë í ê¸\tNUMPAD_ENTER"
-
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
-msgstr ""
+msgid "Toggle Focused Track"
+msgstr "ì í í¸ë í ê¸"
#: Menus.cpp:859
-msgid "Cursor Left\tLeft"
-msgstr "커ì ì¼ìª½\tLeft"
+msgid "Cursor Left"
+msgstr "커ì ì¼ìª½"
#: Menus.cpp:860
-msgid "Cursor Right\tRight"
-msgstr "커ì ì¤ë¥¸ìª½\tRight"
+msgid "Cursor Right"
+msgstr "커ì ì¤ë¥¸ìª½"
#: Menus.cpp:820
-msgid "Cursor Short Jump Left\t,"
+msgid "Cursor Short Jump Left"
msgstr ""
#: Menus.cpp:821
-msgid "Cursor Short Jump Right\t."
+msgid "Cursor Short Jump Right"
msgstr ""
#: Menus.cpp:822
-msgid "Cursor Long Jump Left\tShift+,"
+msgid "Cursor Long Jump Left"
msgstr ""
#: Menus.cpp:823
-msgid "Cursor Long Jump Right\tShift+."
+msgid "Cursor Long Jump Right"
msgstr ""
#: Menus.cpp:861
-msgid "Selection Extend Left\tShift+Left"
-msgstr "ì í ë¶ë¶ ì¼ìª½ì¼ë¡ íì¥\tShift+Left"
+msgid "Selection Extend Left"
+msgstr "ì í ë¶ë¶ ì¼ìª½ì¼ë¡ íì¥"
#: Menus.cpp:862
-msgid "Selection Extend Right\tShift+Right"
-msgstr "ì í ë¶ë¶ ì¤ë¥¸ìª½ì¼ë¡ íì¥\tShift+Right"
+msgid "Selection Extend Right"
+msgstr "ì í ë¶ë¶ ì¤ë¥¸ìª½ì¼ë¡ íì¥"
#: Menus.cpp:828
msgid "Set (or Extend) Left Selection"
@@ -2428,52 +2259,52 @@ msgid "Set (or Extend) Right Selection"
msgstr ""
#: Menus.cpp:864
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "ì í ë¶ë¶ ì¼ìª½ì¼ë¡ ì¶ì\tCtrl+Shift+Right"
+msgid "Selection Contract Left"
+msgstr "ì í ë¶ë¶ ì¼ìª½ì¼ë¡ ì¶ì"
#: Menus.cpp:865
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "ì í ë¶ë¶ ì¤ë¥¸ìª½ì¼ë¡ ì¶ì\tCtrl+Shift+Left"
+msgid "Selection Contract Right"
+msgstr "ì í ë¶ë¶ ì¤ë¥¸ìª½ì¼ë¡ ì¶ì"
#: Menus.cpp:867
-msgid "Change pan on focused track\tShift+P"
-msgstr "ì í í¸ë í¬ ë³ê²½\tShift+P"
+msgid "Change pan on focused track"
+msgstr "ì í í¸ë í¬ ë³ê²½"
#: Menus.cpp:868
-msgid "Pan left on focused track\tAlt+Shift+Left"
-msgstr "ì í í¸ë ì¼ìª½ì¼ë¡ í¬\tAlt+Shift+Left"
+msgid "Pan left on focused track"
+msgstr "ì í í¸ë ì¼ìª½ì¼ë¡ í¬"
#: Menus.cpp:869
-msgid "Pan right on focused track\tAlt+Shift+Right"
-msgstr "ì í í¸ë ì¤ë¥¸ìª½ì¼ë¡ í¬\tAlt+Shift+Right"
+msgid "Pan right on focused track"
+msgstr "ì í í¸ë ì¤ë¥¸ìª½ì¼ë¡ í¬"
#: Menus.cpp:870
-msgid "Change gain on focused track\tShift+G"
-msgstr "ì í í¸ë ê²ì¸ ë³ê²½\tShift+G"
+msgid "Change gain on focused track"
+msgstr "ì í í¸ë ê²ì¸ ë³ê²½"
#: Menus.cpp:871
-msgid "Increase gain on focused track\tAlt+Shift+Up"
-msgstr "ì í í¸ë ê²ì¸ ì¦ê°\tAlt+Shift+Up"
+msgid "Increase gain on focused track"
+msgstr "ì í í¸ë ê²ì¸ ì¦ê°"
#: Menus.cpp:872
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
-msgstr "ì í í¸ë ê²ì¸ ê°ì\tAlt+Shift+Down"
+msgid "Decrease gain on focused track"
+msgstr "ì í í¸ë ê²ì¸ ê°ì"
#: Menus.cpp:873
-msgid "Open menu on focused track\tShift+M"
-msgstr "ì í í¸ë ë©ë´ ì´ê¸°\tShift+M"
+msgid "Open menu on focused track"
+msgstr "ì í í¸ë ë©ë´ ì´ê¸°"
#: Menus.cpp:874
-msgid "Mute/Unmute focused track\tShift+U"
-msgstr "ì í í¸ë ììê±° ì¼ê¸°/ë기\tShift+U"
+msgid "Mute/Unmute focused track"
+msgstr "ì í í¸ë ììê±° ì¼ê¸°/ë기"
#: Menus.cpp:875
-msgid "Solo/Unsolo focused track\tShift+S"
-msgstr "ì í í¸ë ìë¡ ì¼ê¸°/ë기\tShift+S"
+msgid "Solo/Unsolo focused track"
+msgstr "ì í í¸ë ìë¡ ì¼ê¸°/ë기"
#: Menus.cpp:876
-msgid "Close focused track\tShift+C"
-msgstr "ì í í¸ë ë«ê¸°\tShift+C"
+msgid "Close focused track"
+msgstr "ì í í¸ë ë«ê¸°"
#: Menus.cpp:845
msgid "Snap To On"
@@ -2484,7 +2315,35 @@ msgid "Snap To Off"
msgstr ""
#: Menus.cpp:1071
-msgid "Full screen on/off\tF11"
+msgid "Full screen on/off"
+msgstr ""
+
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr ""
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr ""
+
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr ""
+
+#: Menus.cpp:1074
+msgid "Adjust input source"
msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
@@ -2545,8 +2404,8 @@ msgstr "먼ì í¸ëì ì íí´ì¼ í©ëë¤."
#: Menus.cpp:1988
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "%s ë°ë³µ\tCtrl+R"
+msgid "Repeat %s"
+msgstr "%s ë°ë³µ"
#: Menus.cpp:2119
msgid "There are no label tracks to export."
@@ -2577,9 +2436,7 @@ msgstr "ëë리기 ëì ìì"
msgid "Nothing to redo"
msgstr "ë¤ì ì¤í ëì ìì"
-#: Menus.cpp:2344
-#: TrackPanel.cpp:550
-#: toolbars/EditToolBar.cpp:133
+#: Menus.cpp:2344 TrackPanel.cpp:550 toolbars/EditToolBar.cpp:133
msgid "Cut"
msgstr "ìë¼ë´ê¸°"
@@ -2595,10 +2452,7 @@ msgstr "ë¶í ìë¼ë´ê¸°"
msgid "Split-cut to the clipboard"
msgstr "í´ë¦½ë³´ëë¡ ë¶í ìë¼ë´ê¸°"
-#: Menus.cpp:2445
-#: Menus.cpp:2520
-#: Menus.cpp:2607
-#: TrackPanel.cpp:552
+#: Menus.cpp:2445 Menus.cpp:2520 Menus.cpp:2607 TrackPanel.cpp:552
#: toolbars/EditToolBar.cpp:137
msgid "Paste"
msgstr "ë¶ì¬ë£ê¸°"
@@ -2607,8 +2461,7 @@ msgstr "ë¶ì¬ë£ê¸°"
msgid "Pasted text from the clipboard"
msgstr "í´ë¦½ë³´ëë¡ë¶í° í
ì¤í¸ ë¶ì¬ë£ê¸°"
-#: Menus.cpp:2520
-#: Menus.cpp:2607
+#: Menus.cpp:2520 Menus.cpp:2607
msgid "Pasted from the clipboard"
msgstr "í´ë¦½ë³´ëë¡ë¶í° ë¶ì¬ë£ê¸°"
@@ -2620,8 +2473,7 @@ msgstr ""
msgid "Copying stereo audio into a mono track is not allowed."
msgstr "ì¤í
ë ì¤ ì¤ëì¤ë 모ë
¸ í¸ëì¼ë¡ ë³µì¬í ì ììµëë¤."
-#: Menus.cpp:2640
-#: toolbars/EditToolBar.cpp:139
+#: Menus.cpp:2640 toolbars/EditToolBar.cpp:139
msgid "Trim"
msgstr "í¸ë¦¼"
@@ -2661,8 +2513,7 @@ msgstr "ê²°í©"
msgid "Silenced selected tracks for %.2f seconds at %.2f"
msgstr "ì íë í¸ë ì¤ %.2f ì´ ë¬´ìë¨ ìì¹ %.2f"
-#: Menus.cpp:2741
-#: toolbars/EditToolBar.cpp:141
+#: Menus.cpp:2741 toolbars/EditToolBar.cpp:141
msgid "Silence"
msgstr "무ì"
@@ -2746,8 +2597,7 @@ msgstr "ë¼ë²¨ ë¶ë¦¬"
msgid "Disjoined labeled regions"
msgstr "ë¼ë²¨ ìì ë¶ë¦¬ë¨"
-#: Menus.cpp:2917
-#: TrackPanel.cpp:5636
+#: Menus.cpp:2917 TrackPanel.cpp:5636
msgid "Split"
msgstr "ë¶í "
@@ -2763,15 +2613,6 @@ msgstr "ì í¸ëì¼ë¡ ë¶í "
msgid "Split at labels"
msgstr "ë¼ë²¨ìì ë¶í "
-#: Menus.cpp:3390
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "ì¤íí¸ë¼ì íë¡í¸íë ¤ë©´, ì íë 모ë í¸ëì ìíë§ ë¹ì¨ì´ ëì¼í´ì¼ í©ëë¤."
-
-#: Menus.cpp:3416
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "ì¤ëì¤ê° ë무 ë§ì´ ì íëììµëë¤. ì²ì ì¤ëì¤ì %.1f ì´ ë§ì´ ë¶ìë©ëë¤."
-
#: Menus.cpp:3551
#, c-format
msgid "Imported labels from '%s'"
@@ -2837,9 +2678,7 @@ msgstr "íëì ì ì¤í
ë ì¤ í¸ëì¼ë¡ %d í¸ëì´ ë¯¹ì¤ ë° ëë
msgid "Mixed and rendered %d tracks into one new mono track"
msgstr "íëì ì 모ë
¸ í¸ëì¼ë¡ %d í¸ëì´ ë¯¹ì¤ ë° ëëë§ ë¨"
-#: Menus.cpp:614
-#: Menus.cpp:3698
-#: Mix.cpp:119
+#: Menus.cpp:614 Menus.cpp:3698 Mix.cpp:119
msgid "&Mix and Render"
msgstr "ë¯¹ì¤ ë° ë ë(&M)"
@@ -2891,10 +2730,7 @@ msgstr ""
msgid "Created new audio track"
msgstr "ì ì¤ëì¤ í¸ë ìì±ë¨"
-#: Menus.cpp:3899
-#: Menus.cpp:3922
-#: Menus.cpp:3937
-#: Menus.cpp:3957
+#: Menus.cpp:3899 Menus.cpp:3922 Menus.cpp:3937 Menus.cpp:3957
msgid "New Track"
msgstr "ì í¸ë"
@@ -2930,8 +2766,7 @@ msgstr "ë¤ë¥¸ ì´ë¦ì¼ë¡ CleanSpeech í리ì
íì¼ ì ì¥:"
msgid "CleanSpeech Presets (*.csp)|*.csp"
msgstr "CleanSpeech í리ì
(*.csp)|*.csp"
-#: Menus.cpp:4072
-#: export/Export.cpp:483
+#: Menus.cpp:4072 export/Export.cpp:483
msgid "Sorry, pathnames longer than 256 characters not supported."
msgstr "ê²½ë¡ëª
ì ìµë 256ìê¹ì§ë§ ì§ìí©ëë¤."
@@ -2939,8 +2774,7 @@ msgstr "ê²½ë¡ëª
ì ìµë 256ìê¹ì§ë§ ì§ìí©ëë¤."
msgid "Problem encountered exporting presets."
msgstr "í리ì
ì ë´ë³´ë´ë ì¤ ë¬¸ì ê° ë°ìíìµëë¤."
-#: Menus.cpp:4119
-#: export/Export.cpp:371
+#: Menus.cpp:4119 export/Export.cpp:371
msgid "Unable to export"
msgstr "ë´ë³´ë¼ ì ìì"
@@ -2952,8 +2786,7 @@ msgstr "í¸ë ì ê±°"
msgid "Removed audio track(s)"
msgstr "ê°ì ì¤ëì¤ í¸ë ì ê±°ë¨"
-#: Menus.cpp:4380
-#: Menus.cpp:4399
+#: Menus.cpp:4380 Menus.cpp:4399
msgid "Resample"
msgstr "리ìíë§"
@@ -2978,8 +2811,7 @@ msgstr "í¸ë 리ìíë§"
msgid "Resampled audio track(s)"
msgstr "ê°ì ì¤ëì¤ í¸ëì´ ë¦¬ìíë§ë¨"
-#: Mix.cpp:93
-#: Mix.cpp:100
+#: Mix.cpp:93 Mix.cpp:100
msgid "Mix"
msgstr "믹ì¤"
@@ -2999,6 +2831,10 @@ msgstr "ì¸ìì 문ì ê° ììµëë¤."
msgid "Print"
msgstr "ì¸ì"
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr ""
+
#: Project.cpp:656
msgid "Main Mix"
msgstr "주 믹ì¤"
@@ -3012,14 +2848,11 @@ msgstr "íìí©ëë¤. Audacity ë²ì %s ì
ëë¤"
msgid "(Recovered)"
msgstr "(복구ë¨)"
-#: Project.cpp:1439
-#: TrackPanel.cpp:776
-#: toolbars/ControlToolBar.cpp:192
+#: Menus.cpp:817
msgid "Record"
msgstr "ë
¹ì"
-#: Project.cpp:1439
-#: TrackPanel.cpp:776
+#: Project.cpp:1439 TrackPanel.cpp:776
msgid "Recorded Audio"
msgstr "ë
¹ìë ì¤ëì¤"
@@ -3040,12 +2873,11 @@ msgstr ""
msgid "Save changes?"
msgstr "ë³ê²½ ë´ì© ì ì¥?"
-#: Project.cpp:1684
-msgid "All files|*.*|All supported files|"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
msgstr ""
-#: Menus.cpp:3489
-#: Project.cpp:1626
+#: Menus.cpp:3489 Project.cpp:1626
msgid "Select one or more audio files..."
msgstr "íë ëë ì¬ë¬ ì¤ëì¤ íì¼ ì í..."
@@ -3072,8 +2904,18 @@ msgstr ""
msgid "Opening old project file"
msgstr "구 íë¡ì í¸ íì¼ì ì¬ë ì¤"
-#: Project.cpp:1704
-#: Project.cpp:1712
+#: Project.cpp:2073
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr ""
+
+#: Project.cpp:1704 Project.cpp:1712
msgid "Error opening file"
msgstr "íì¼ ì¬ë ì¤ ì¤ë¥"
@@ -3108,8 +2950,7 @@ msgstr "복구"
msgid "Project checker repaired file"
msgstr "íë¡ì í¸ê° íì¼ì 복구í¨"
-#: Project.cpp:1870
-#: effects/Repair.h:29
+#: Project.cpp:1870 effects/Repair.h:29
msgid "Repair"
msgstr "복구"
@@ -3131,10 +2972,12 @@ msgstr "ì´ íì¼ì Audacity %s (ì¼)ë¡ ì ì¥ëììµëë¤.\n"
msgid "Can't open project file"
msgstr "íë¡ì í¸ íì¼ì ì´ ì ìì"
-#: Project.cpp:2314
+#: Project.cpp:2484
#, c-format
msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
msgstr ""
@@ -3154,17 +2997,22 @@ msgstr ""
msgid "Warning empty project"
msgstr ""
-#: Project.cpp:2591
+#: Project.cpp:2792
#, c-format
msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+"is not writable or the disk is full."
msgstr ""
-#: Project.cpp:2260
-#: Project.cpp:2274
+#: Project.cpp:2260 Project.cpp:2274
msgid "Error saving project"
msgstr "íë¡ì í¸ ì ì¥ ì¤ ì¤ë¥"
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
#: Project.cpp:2336
#, c-format
msgid "Saved %s"
@@ -3175,12 +3023,8 @@ msgstr "%s ì ì¥ë¨"
msgid "Imported '%s'"
msgstr "'%s' ê°ì ¸ì´"
-#: Menus.cpp:3616
-#: Project.cpp:2419
-#: Project.cpp:2444
-#: import/ImportPCM.cpp:405
-#: import/ImportPCM.cpp:449
-#: import/ImportRaw.cpp:446
+#: Menus.cpp:3616 Project.cpp:2419 Project.cpp:2444 import/ImportPCM.cpp:405
+#: import/ImportPCM.cpp:449 import/ImportRaw.cpp:446
msgid "Import"
msgstr "ê°ì ¸ì¤ê¸°"
@@ -3227,8 +3071,7 @@ msgstr "ì íë¡ì í¸ ìì±ë¨"
msgid "Deleted %.2f seconds at t=%.2f"
msgstr "%.2f ì´ ìì ë¨ ìì¹ t=%.2f"
-#: Project.cpp:2679
-#: effects/Equalization.cpp:1113
+#: Project.cpp:2679 effects/Equalization.cpp:1113
#: effects/Equalization.cpp:2417
msgid "Delete"
msgstr "ìì "
@@ -3284,7 +3127,6 @@ msgid "Could not create autosave file: "
msgstr "ìë ì ì¥ íì¼ì ìì±í ì ìì: "
#: Project.cpp:3385
-#, c-format
#, fuzzy
msgid "Actual Rate: %d"
msgstr "ì¤ì ë¹ì¨ %d"
@@ -3310,8 +3152,7 @@ msgstr "Libsamplerate ì ì: Erik de Castro Lopo"
msgid "Libsamplerate error: %d\n"
msgstr "Libsamplerate ì¤ë¥: %d\n"
-#: Resample.cpp:240
-#: Resample.cpp:250
+#: Resample.cpp:240 Resample.cpp:250
msgid "Resampling disabled."
msgstr "리ì
íë§ ì¬ì©í ì ìì."
@@ -3330,6 +3171,163 @@ msgstr "24-bit PCM"
msgid "32-bit float"
msgstr "32-bit ë¶ë ììì "
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
+
+#: export/ExportMultiple.cpp:203 prefs/DirectoriesPrefs.cpp:92
+msgid "Choose..."
+msgstr "ì í..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
+
+#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
+msgid "false"
+msgstr ""
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr "ë구"
+
+#: toolbars/ControlToolBar.cpp:82
+msgid "Control"
+msgstr "ì ì´"
+
+#: toolbars/MixerToolBar.cpp:58
+msgid "Mixer"
+msgstr "믹ì"
+
+#: toolbars/MeterToolBar.cpp:49
+msgid "Meter"
+msgstr "미í°"
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
+#: toolbars/DeviceToolBar.cpp:54
+msgid "Device"
+msgstr "ì¥ì¹"
+
+#: toolbars/TranscriptionToolBar.cpp:82
+msgid "Transcription"
+msgstr "í¸ê³¡"
+
+#: TrackPanel.cpp:452 TrackPanel.cpp:453
+msgid "Track Panel"
+msgstr "í¸ë íë¬"
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: export/ExportMultiple.cpp:246
+msgid "Tracks"
+msgstr "í¸ë"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
#: Screenshot.cpp:384
msgid "Saved "
msgstr ""
@@ -3338,22 +3336,20 @@ msgstr ""
msgid "Error trying to save file: "
msgstr ""
-#: Sequence.cpp:732
-#: Sequence.cpp:742
-#: Sequence.cpp:749
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
+#: Sequence.cpp:732 Sequence.cpp:742 Sequence.cpp:749
msgid "Gap detected in project file\n"
msgstr "íë¡ì í¸ íì¼ìì ê³µë°±ì´ ê°ì§ëììµëë¤.\n"
-#: effects/Effect.cpp:255
-#: effects/Effect.cpp:382
-#: effects/Phaser.cpp:595
-#: effects/Wahwah.cpp:582
-#: effects/audiounits/AudioUnitEffect.cpp:872
+#: effects/Effect.cpp:255 effects/Effect.cpp:382 effects/Phaser.cpp:595
+#: effects/Wahwah.cpp:582 effects/audiounits/AudioUnitEffect.cpp:872
msgid "Pre&view"
msgstr "미리 ë£ê¸°(&v)"
-#: effects/nyquist/Nyquist.cpp:826
-#: effects/nyquist/Nyquist.cpp:990
+#: effects/nyquist/Nyquist.cpp:826 effects/nyquist/Nyquist.cpp:990
msgid "&Debug"
msgstr "ëë²ê·¸(&D)"
@@ -3389,8 +3385,7 @@ msgstr ""
msgid "Track Number"
msgstr "í¸ë ë²í¸"
-#: Tags.cpp:737
-#: Tags.cpp:963
+#: Tags.cpp:737 Tags.cpp:963
msgid "Year"
msgstr "ì°ë"
@@ -3398,9 +3393,7 @@ msgstr "ì°ë"
msgid "Genre"
msgstr "ì¥ë¥´"
-#: Tags.cpp:747
-#: Tags.cpp:996
-#: prefs/MousePrefs.cpp:96
+#: Tags.cpp:747 Tags.cpp:996 prefs/MousePrefs.cpp:96
msgid "Comments"
msgstr "주ì"
@@ -3436,13 +3429,11 @@ msgstr ""
msgid "Template"
msgstr "í¬í릿"
-#: Tags.cpp:1073
-#: prefs/KeyConfigPrefs.cpp:126
+#: Tags.cpp:1073 prefs/KeyConfigPrefs.cpp:126
msgid "&Load..."
msgstr "ë¶ë¬ì¤ê¸°(&L)..."
-#: Tags.cpp:1078
-#: prefs/KeyConfigPrefs.cpp:125
+#: Tags.cpp:1078 prefs/KeyConfigPrefs.cpp:125
msgid "&Save..."
msgstr "ì ì¥(&S)..."
@@ -3487,6 +3478,10 @@ msgstr ""
msgid "Save Metadata As:"
msgstr ""
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
#: Theme.cpp:628
#, c-format
msgid "Audacity could not write file:\n"
@@ -3519,8 +3514,7 @@ msgstr "íì¼ì ì°¾ì ì ììµëë¤:\n"
" %s.\n"
"í
ë§ë¥¼ ë¶ë¬ì¤ì§ 못íìµëë¤."
-#: Theme.cpp:797
-#: Theme.cpp:885
+#: Theme.cpp:797 Theme.cpp:885
#, c-format
msgid "Audacity could not load file:\n"
" %s.\n"
@@ -3575,6 +3569,14 @@ msgstr "길ì´"
msgid "Audacity Timer Record"
msgstr "Audacity íì´ë¨¸ 기ë¡"
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
#: SmartRecordDialog.cpp:223
msgid "Recording start"
msgstr ""
@@ -3614,40 +3616,23 @@ msgstr ""
msgid "Audacity Timer Record - Waiting for Start"
msgstr ""
-#: TrackPanel.cpp:452
-#: TrackPanel.cpp:453
-msgid "Track Panel"
-msgstr "í¸ë íë¬"
-
-#: TrackPanel.cpp:496
-#: export/ExportPCM.cpp:201
-#: prefs/QualityPrefs.cpp:97
+#: TrackPanel.cpp:496 export/ExportPCM.cpp:201 prefs/QualityPrefs.cpp:97
msgid "Other..."
msgstr "기í..."
-#: TrackPanel.cpp:504
-#: TrackPanel.cpp:525
-#: TrackPanel.cpp:534
-#: TrackPanel.cpp:542
+#: TrackPanel.cpp:504 TrackPanel.cpp:525 TrackPanel.cpp:534 TrackPanel.cpp:542
msgid "Name..."
msgstr "ì´ë¦..."
-#: TrackPanel.cpp:506
-#: TrackPanel.cpp:527
-#: TrackPanel.cpp:538
-#: TrackPanel.cpp:544
+#: TrackPanel.cpp:506 TrackPanel.cpp:527 TrackPanel.cpp:538 TrackPanel.cpp:544
msgid "Move Track Up"
msgstr "í¸ë ìë¡ ì´ë"
-#: TrackPanel.cpp:507
-#: TrackPanel.cpp:528
-#: TrackPanel.cpp:539
-#: TrackPanel.cpp:545
+#: TrackPanel.cpp:507 TrackPanel.cpp:528 TrackPanel.cpp:539 TrackPanel.cpp:545
msgid "Move Track Down"
msgstr "í¸ë ìëë¡ ì´ë"
-#: TrackPanel.cpp:509
-#: effects/ToneGen.cpp:292
+#: TrackPanel.cpp:509 effects/ToneGen.cpp:292
msgid "Waveform"
msgstr "íí"
@@ -3663,18 +3648,15 @@ msgstr ""
msgid "Pitch (EAC)"
msgstr "í¼ì¹ (EAC)"
-#: TrackPanel.cpp:514
-#: TrackPanel.cpp:5606
+#: TrackPanel.cpp:514 TrackPanel.cpp:5606
msgid "Mono"
msgstr "모ë
¸"
-#: TrackPanel.cpp:515
-#: TrackPanel.cpp:5605
+#: TrackPanel.cpp:515 TrackPanel.cpp:5605
msgid "Left Channel"
msgstr "ì¼ìª½ ì±ë"
-#: TrackPanel.cpp:516
-#: TrackPanel.cpp:5605
+#: TrackPanel.cpp:516 TrackPanel.cpp:5605
msgid "Right Channel"
msgstr "ì¤ë¥¸ìª½ ì±ë"
@@ -3686,12 +3668,15 @@ msgstr "ì¤í
ë ì¤ í¸ë ë§ë¤ê¸°"
msgid "Split Stereo Track"
msgstr "ì¤í
ë ì¤ í¸ë ë¶í "
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr ""
+
#: TrackPanel.cpp:520
msgid "Set Sample Format"
msgstr "ìíë§ íì ì¤ì "
-#: TrackPanel.cpp:522
-#: TrackPanel.cpp:5823
+#: TrackPanel.cpp:522 TrackPanel.cpp:5823
msgid "Set Rate"
msgstr "ìíë§ ìë ì¤ì "
@@ -3711,8 +3696,7 @@ msgstr "ê¸ê¼´..."
msgid "Set Range..."
msgstr "ë²ì ì¤ì ..."
-#: TrackPanel.cpp:551
-#: toolbars/EditToolBar.cpp:135
+#: TrackPanel.cpp:551 toolbars/EditToolBar.cpp:135
msgid "Copy"
msgstr "ë³µì¬"
@@ -3758,21 +3742,13 @@ msgstr "ì´ëíë ¤ë©´ ì¼ìª½ ì í ê²½ê³ë¥¼ í´ë¦í í ëëê·¸ íì
msgid "Click and drag to move right selection boundary."
msgstr "ì´ëíë ¤ë©´ ì¤ë¥¸ìª½ ì í ê²½ê³ë¥¼ í´ë¦í í ëëê·¸ íììì¤."
-#: TrackPanel.cpp:1669
-#: TrackPanel.cpp:3736
-#: TrackPanel.cpp:3768
-#: TrackPanel.cpp:4013
-#: TrackPanel.cpp:5935
-#: TrackPanel.cpp:5955
+#: TrackPanel.cpp:1669 TrackPanel.cpp:3736 TrackPanel.cpp:3768
+#: TrackPanel.cpp:4013 TrackPanel.cpp:5935 TrackPanel.cpp:5955
msgid "Modified Label"
msgstr "ìì ë ë¼ë²¨"
-#: TrackPanel.cpp:1670
-#: TrackPanel.cpp:3737
-#: TrackPanel.cpp:3769
-#: TrackPanel.cpp:4014
-#: TrackPanel.cpp:5936
-#: TrackPanel.cpp:5956
+#: TrackPanel.cpp:1670 TrackPanel.cpp:3737 TrackPanel.cpp:3769
+#: TrackPanel.cpp:4014 TrackPanel.cpp:5936 TrackPanel.cpp:5956
msgid "Label Edit"
msgstr "ë¼ë²¨ í¸ì§"
@@ -3780,8 +3756,7 @@ msgstr "ë¼ë²¨ í¸ì§"
msgid "Adjusted envelope."
msgstr "ì¡°ì ë ê°ì¸ê¸°."
-#: TrackPanel.cpp:1898
-#: prefs/MousePrefs.cpp:111
+#: TrackPanel.cpp:1898 prefs/MousePrefs.cpp:111
msgid "Envelope"
msgstr "ê°ì¸ê¸°"
@@ -3803,9 +3778,7 @@ msgstr "ì¤ë¥¸ìª½"
msgid "Time shifted tracks/clips %s %.02f seconds"
msgstr "ìê°ì´ %s %.02f ì´ì í¸ë/í´ë¦½ì¼ë¡ ì´ëë¨"
-#: TrackPanel.cpp:2044
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:108
+#: TrackPanel.cpp:2044 prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:108
#: prefs/MousePrefs.cpp:109
msgid "Time-Shift"
msgstr "ìê°-ì´ë"
@@ -3844,39 +3817,29 @@ msgid "Moved pan slider"
msgstr "ì´ëë í¬ ì¬ë¼ì´ë"
#. i18n-hint: Title of the Gain slider, used to adjust the volume
-#: TrackPanel.cpp:3232
-#: TrackPanel.cpp:5276
-#: TrackPanel.cpp:6492
+#: TrackPanel.cpp:3232 TrackPanel.cpp:5276 TrackPanel.cpp:6492
msgid "Gain"
msgstr "ê²ì¸"
#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: TrackPanel.cpp:3232
-#: TrackPanel.cpp:5214
-#: TrackPanel.cpp:6499
+#: TrackPanel.cpp:3232 TrackPanel.cpp:5214 TrackPanel.cpp:6499
msgid "Pan"
msgstr "í¬"
-#: TrackPanel.cpp:3357
-#: TrackPanel.cpp:5888
-#: effects/ChangePitch.cpp:281
+#: TrackPanel.cpp:3357 TrackPanel.cpp:5888 effects/ChangePitch.cpp:281
msgid "up"
msgstr "ìë¡"
-#: TrackPanel.cpp:3361
-#: TrackPanel.cpp:5889
-#: effects/ChangePitch.cpp:281
+#: TrackPanel.cpp:3361 TrackPanel.cpp:5889 effects/ChangePitch.cpp:281
msgid "down"
msgstr "ìëë¡"
-#: TrackPanel.cpp:3366
-#: TrackPanel.cpp:5884
+#: TrackPanel.cpp:3366 TrackPanel.cpp:5884
#, c-format
msgid "Moved '%s' %s"
msgstr "ì´ëë¨ '%s' %s"
-#: TrackPanel.cpp:3369
-#: TrackPanel.cpp:5890
+#: TrackPanel.cpp:3369 TrackPanel.cpp:5890
msgid "Move Track"
msgstr "í¸ë ì´ë"
@@ -3908,14 +3871,6 @@ msgstr "ì¡°ì ë í¬"
msgid "Adjusted gain"
msgstr "ì¡°ì ë ê²ì¸"
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr ""
-
#: TrackPanel.cpp:5432
msgid "Can't delete track with active audio"
msgstr "íì± ì¤ëì¤ í¸ëì ìì í ì ìì"
@@ -3936,8 +3891,7 @@ msgstr "ì¼ìª½, "
msgid "Right, "
msgstr "ì¤ë¥¸ìª½, "
-#: TrackPanel.cpp:5615
-#: TrackPanel.cpp:5728
+#: TrackPanel.cpp:5615 TrackPanel.cpp:5728
#, c-format
msgid "Changed '%s' to %s"
msgstr "'%s' ìì %s (ì¼)ë¡ ë³ê²½ë¨"
@@ -3951,6 +3905,11 @@ msgstr "ì±ë"
msgid "Split stereo track '%s'"
msgstr "'%s' ì¤í
ë ì¤ í¸ë ë¶í "
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
#: TrackPanel.cpp:5654
#, c-format
msgid "Made '%s' a stereo track"
@@ -3977,8 +3936,7 @@ msgstr "íì ë³ê²½"
msgid "Change lower speed limit (%) to:"
msgstr "ë¤ìì¼ë¡ íì ìë ì í (%) ë³ê²½:"
-#: TrackPanel.cpp:5853
-#: TrackPanel.cpp:5854
+#: TrackPanel.cpp:5853 TrackPanel.cpp:5854
msgid "Lower speed limit"
msgstr "íì ìë ì í"
@@ -3986,8 +3944,7 @@ msgstr "íì ìë ì í"
msgid "Change upper speed limit (%) to:"
msgstr "ë¤ìì¼ë¡ ìì ìë ì í (%) ë³ê²½:"
-#: TrackPanel.cpp:5860
-#: TrackPanel.cpp:5861
+#: TrackPanel.cpp:5860 TrackPanel.cpp:5861
msgid "Upper speed limit"
msgstr "ìì ìë ì í"
@@ -4029,6 +3986,10 @@ msgstr ""
msgid "Face size"
msgstr ""
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr ""
+
#: TrackPanel.cpp:6427
msgid "Mute"
msgstr "ììê±°"
@@ -4062,10 +4023,7 @@ msgstr " ìë¡ ì¼ê¸°"
msgid " Select On"
msgstr " ì í ì¼ê¸°"
-#: VoiceKey.cpp:88
-#: VoiceKey.cpp:238
-#: VoiceKey.cpp:376
-#: VoiceKey.cpp:517
+#: VoiceKey.cpp:88 VoiceKey.cpp:238 VoiceKey.cpp:376 VoiceKey.cpp:517
msgid "Selection is too small to use voice key."
msgstr "ì í ë¶ë¶ì´ ë³´ì´ì¤ í¤ë¡ ì¬ì©í기ì ë무 ììµëë¤."
@@ -4092,8 +4050,7 @@ msgstr "ë°©í¥ ë³ê²½ -- ì미: %1.4f sd: (%1.4f)\n"
msgid "Audio Track"
msgstr "ì¤ëì¤ í¸ë"
-#: WaveTrack.cpp:518
-#: WaveTrack.cpp:537
+#: WaveTrack.cpp:518 WaveTrack.cpp:537
msgid "There is not enough room available to paste the selection"
msgstr "ì í ë¶ë¶ì ë¶ì¬ë£ê¸°ì ê³µê°ì´ ì¶©ë¶íì§ ììµëë¤"
@@ -4111,8 +4068,9 @@ msgstr "íë¬ê·¸ì¸ 1 to %i"
msgid "Plugins %i to %i"
msgstr "íë¬ê·¸ì¸ %i to %i"
-#: commands/CommandManager.cpp:857
-msgid "Disallowed for some reason. Try selecting some audio first?"
+#: commands/CommandManager.cpp:923
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
msgstr ""
#: commands/CommandManager.cpp:724
@@ -4193,9 +4151,7 @@ msgstr "ì¦í ì¤"
msgid "You selected a track which does not contain audio. AutoDuck can only process audio tracks."
msgstr "ì íë í¸ëì ì¤ëì¤ê° ììµëë¤. AutoDuckì´ ë¨ì§ ì¤ëì¤ í¸ëì ì²ë¦¬í ì ììµëë¤."
-#: effects/AutoDuck.cpp:126
-#: effects/AutoDuck.cpp:138
-#: effects/AutoDuck.cpp:451
+#: effects/AutoDuck.cpp:126 effects/AutoDuck.cpp:138 effects/AutoDuck.cpp:451
#: effects/AutoDuck.cpp:578
msgid "Auto Duck"
msgstr "Auto Duck"
@@ -4216,17 +4172,11 @@ msgstr "Duck ì´ê³:"
msgid "Maximum pause:"
msgstr "ìµë ì¼ì ë©ì¶¤:"
-#: effects/AutoDuck.cpp:492
-#: effects/AutoDuck.cpp:497
-#: effects/AutoDuck.cpp:502
-#: effects/AutoDuck.cpp:507
-#: effects/AutoDuck.cpp:512
-#: prefs/AudioIOPrefs.cpp:162
-#: prefs/AudioIOPrefs.cpp:164
-#: prefs/AudioIOPrefs.cpp:188
-#: prefs/AudioIOPrefs.cpp:190
-#: prefs/AudioIOPrefs.cpp:198
-#: widgets/TimeTextCtrl.cpp:197
+#: effects/AutoDuck.cpp:492 effects/AutoDuck.cpp:497 effects/AutoDuck.cpp:502
+#: effects/AutoDuck.cpp:507 effects/AutoDuck.cpp:512
+#: prefs/AudioIOPrefs.cpp:162 prefs/AudioIOPrefs.cpp:164
+#: prefs/AudioIOPrefs.cpp:188 prefs/AudioIOPrefs.cpp:190
+#: prefs/AudioIOPrefs.cpp:198 widgets/TimeTextCtrl.cpp:197
msgid "seconds"
msgstr "ì´"
@@ -4246,8 +4196,7 @@ msgstr "ë´ë¶ íì´ë ë¤ì´ 길ì´:"
msgid "Inner fade up length:"
msgstr "ë´ë¶ íì´ë ì
길ì´:"
-#: effects/AutoDuck.cpp:519
-#: effects/Compressor.cpp:479
+#: effects/AutoDuck.cpp:519 effects/Compressor.cpp:479
msgid "Threshold:"
msgstr "ì¤ë ì¬íë:"
@@ -4267,14 +4216,10 @@ msgstr "Auto Duck..."
msgid "Processing Auto Duck..."
msgstr "Auto Duck ìì
ì¤..."
-#: LangChoice.cpp:103
-#: effects/AvcCompressor.cpp:738
-#: effects/TruncSilence.cpp:281
-#: effects/VST/VSTEffect.cpp:453
-#: effects/audiounits/AudioUnitEffect.cpp:877
-#: effects/nyquist/Nyquist.cpp:993
-#: effects/nyquist/Nyquist.cpp:1059
-#: widgets/Warning.cpp:67
+#: LangChoice.cpp:103 effects/AvcCompressor.cpp:738
+#: effects/TruncSilence.cpp:281 effects/VST/VSTEffect.cpp:453
+#: effects/audiounits/AudioUnitEffect.cpp:877 effects/nyquist/Nyquist.cpp:993
+#: effects/nyquist/Nyquist.cpp:1059 widgets/Warning.cpp:67
msgid "OK"
msgstr "íì¸"
@@ -4336,14 +4281,12 @@ msgstr "í¼ì¹ ë³ê²½"
msgid "Change Pitch without Changing Tempo"
msgstr "í
í¬ ë³ê²½ìì´ í¼ì¹ë¥¼ ë³ê²½í©ëë¤."
-#: effects/ChangePitch.cpp:251
-#: effects/ChangeSpeed.cpp:305
+#: effects/ChangePitch.cpp:251 effects/ChangeSpeed.cpp:305
#: effects/ChangeTempo.cpp:179
msgid "by Vaughan Johnson && Dominic Mazzoni"
msgstr "ì ì: Vaughan Johnson && Dominic Mazzoni"
-#: effects/ChangePitch.cpp:256
-#: effects/ChangeTempo.cpp:184
+#: effects/ChangePitch.cpp:256 effects/ChangeTempo.cpp:184
msgid "using SoundTouch, by Olli Parviainen"
msgstr "ë구: SoundTouch, by Olli Parviainen"
@@ -4392,10 +4335,8 @@ msgstr ""
msgid "From frequency in hertz"
msgstr ""
-#: effects/ChangePitch.cpp:288
-#: effects/ChangePitch.cpp:334
-#: effects/ChangeSpeed.cpp:369
-#: effects/ChangeTempo.cpp:238
+#: effects/ChangePitch.cpp:288 effects/ChangePitch.cpp:334
+#: effects/ChangeSpeed.cpp:369 effects/ChangeTempo.cpp:238
#: effects/ChangeTempo.cpp:269
msgid "to"
msgstr "ì¢
ë£ê°"
@@ -4404,8 +4345,7 @@ msgstr "ì¢
ë£ê°"
msgid "To frequency in seconds"
msgstr ""
-#: effects/ChangePitch.cpp:357
-#: effects/ChangeSpeed.cpp:323
+#: effects/ChangePitch.cpp:357 effects/ChangeSpeed.cpp:323
#: effects/ChangeTempo.cpp:197
msgid "Percent Change:"
msgstr "í¼ì¼í¸ ë³ê²½:"
@@ -4423,8 +4363,7 @@ msgstr "í¼ì¹ ë³ê²½..."
msgid "Changing Pitch"
msgstr "í¼ì¹ ë³ê²½ ì¤"
-#: effects/ChangeSpeed.cpp:52
-#: effects/ChangeTempo.cpp:53
+#: effects/ChangeSpeed.cpp:52 effects/ChangeTempo.cpp:53
#, c-format
msgid "Applied effect: %s %.1f%%"
msgstr "ì ì©ë í¨ê³¼: %s %.1f%%"
@@ -4574,12 +4513,11 @@ msgstr ""
msgid "Decay Time"
msgstr ""
-#: effects/Compressor.cpp:504
-msgid "Normalize to 0dB after compressing"
-msgstr "ìì¶ í 0dBë¡ íê· í"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
+msgstr ""
#: effects/Compressor.cpp:563
-#, c-format
#, fuzzy
msgid "Threshold %d dB"
msgstr "ì¤ë ì¬íë: %d dB"
@@ -4610,7 +4548,6 @@ msgid "%.1f:1"
msgstr ""
#: effects/Compressor.cpp:575
-#, c-format
#, fuzzy
msgid "Attack Time %.1f secs"
msgstr "ì´í ìê°: %.1f ì´"
@@ -4633,6 +4570,10 @@ msgstr "ìì¶ê¸°..."
msgid "Applying Dynamic Range Compression..."
msgstr "ëì ë²ì ìì¶ ì ì© ì¤..."
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
msgstr ""
@@ -4652,19 +4593,6 @@ msgid "Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr ""
-
#: effects/Contrast.cpp:231
msgid "Contrast Analyzer"
msgstr ""
@@ -4673,15 +4601,12 @@ msgstr ""
msgid "Parameters"
msgstr ""
-#: effects/ToneGen.cpp:324
-#: toolbars/ControlToolBar.cpp:186
+#: effects/ToneGen.cpp:324 toolbars/ControlToolBar.cpp:186
msgid "Start"
msgstr "ìì ìì¹"
-#: effects/ToneGen.cpp:325
-#: toolbars/ControlToolBar.cpp:189
-#: toolbars/SelectionBar.cpp:130
-#: toolbars/SelectionBar.cpp:228
+#: effects/ToneGen.cpp:325 toolbars/ControlToolBar.cpp:189
+#: toolbars/SelectionBar.cpp:130 toolbars/SelectionBar.cpp:228
msgid "End"
msgstr "ì¢
ë£ ìì¹"
@@ -4701,6 +4626,11 @@ msgstr ""
msgid "Foreground end time"
msgstr ""
+#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
+#: effects/Contrast.cpp:289
+msgid "Measured"
+msgstr ""
+
#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
msgid "Use selection"
msgstr ""
@@ -4745,16 +4675,8 @@ msgstr ""
msgid "Help for WCAG2 Audio Contrast Analyzer"
msgstr ""
-#: toolbars/ControlToolBar.cpp:82
-msgid "Control"
-msgstr "ì ì´"
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
msgstr ""
#: effects/Contrast.cpp:328 effects/Contrast.cpp:336 effects/Contrast.cpp:344
@@ -4865,18 +4787,6 @@ msgstr ""
msgid "Data gathered"
msgstr ""
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr ""
-
#: effects/DtmfGen.cpp:47
msgid "DTMF Tone Generator"
msgstr "DTMF í¤ ìì±ê¸°"
@@ -4889,8 +4799,7 @@ msgstr "ì ì: Salvo Ventura (2006)"
msgid "DTMF sequence:"
msgstr "DTMF ìì:"
-#: effects/ToneGen.cpp:295
-#: effects/ToneGen.cpp:328
+#: effects/ToneGen.cpp:295 effects/ToneGen.cpp:328
msgid "Amplitude (0-1)"
msgstr "ì§í (0-1)"
@@ -4910,9 +4819,7 @@ msgstr "ëí° ì¸ì´í´:"
msgid "Tone duration:"
msgstr "í¤ ê¸¸ì´:"
-#: effects/DtmfGen.cpp:425
-#: effects/DtmfGen.cpp:427
-#: effects/DtmfGen.cpp:498
+#: effects/DtmfGen.cpp:425 effects/DtmfGen.cpp:427 effects/DtmfGen.cpp:498
#: effects/DtmfGen.cpp:499
msgid "ms"
msgstr "ë°ë¦¬ì´"
@@ -4993,8 +4900,7 @@ msgstr "ì½ì¬ì¸"
msgid "Cubic"
msgstr "íë¹
"
-#: effects/Equalization.cpp:332
-#: effects/Equalization.cpp:367
+#: effects/Equalization.cpp:332 effects/Equalization.cpp:367
msgid "Equalization"
msgstr "íê· í"
@@ -5007,6 +4913,10 @@ msgstr "EQ 커ë¸ë¥¼ ë¶ë¬ì¤ë ì¤ ì¤ë¥"
msgid "custom"
msgstr "ì¬ì©ì ì¤ì "
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr ""
+
#: effects/Equalization.cpp:1023
msgid "Equalization, by Martyn Shaw && Mitch Golden"
msgstr "ì ì: Martyn Shaw && Mitch Golden"
@@ -5043,8 +4953,7 @@ msgstr "íí° ê¸¸ì´:"
msgid "Select curve:"
msgstr "ì»¤ë¸ ì í:"
-#: effects/Equalization.cpp:1110
-#: effects/Equalization.cpp:2322
+#: effects/Equalization.cpp:1110 effects/Equalization.cpp:2322
msgid "Save As..."
msgstr "ë¤ë¥¸ ì´ë¦ì¼ë¡ ì ì¥..."
@@ -5160,8 +5069,7 @@ msgstr "ê°ì¥ 무ê²ê²"
msgid "by Lynn Allan"
msgstr ""
-#: effects/Leveller.cpp:219
-#: effects/Leveller.cpp:224
+#: effects/Leveller.cpp:219 effects/Leveller.cpp:224
msgid "Degree of Leveling"
msgstr "ë ë²¨ë§ ê°ë"
@@ -5210,10 +5118,6 @@ msgstr ""
msgid "Analyser"
msgstr ""
-#: toolbars/MixerToolBar.cpp:58
-msgid "Mixer"
-msgstr "믹ì"
-
#: effects/LoadEffects.cpp:116
msgid "Simulator"
msgstr ""
@@ -5454,10 +5358,6 @@ msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr ""
#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
-msgid "false"
-msgstr ""
-
-#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
msgid "true"
msgstr ""
@@ -5515,8 +5415,7 @@ msgstr ""
msgid "Dry Wet"
msgstr ""
-#: effects/Phaser.cpp:526
-#: effects/Wahwah.cpp:497
+#: effects/Phaser.cpp:526 effects/Wahwah.cpp:497
msgid "LFO Frequency (Hz):"
msgstr "LFO 주íì (Hz):"
@@ -5524,8 +5423,7 @@ msgstr "LFO 주íì (Hz):"
msgid "LFO frequency in hertz"
msgstr ""
-#: effects/Phaser.cpp:542
-#: effects/Wahwah.cpp:513
+#: effects/Phaser.cpp:542 effects/Wahwah.cpp:513
msgid "LFO Start Phase (deg.):"
msgstr "LFO ìì ìì (ë):"
@@ -5586,8 +5484,7 @@ msgstr "%d ë² ë³µêµ¬ë¨"
msgid "Tracks are too long to repeat the selection."
msgstr "ì í ë¶ë¶ì ë°ë³µí기ì í¸ëì´ ë무 ê¹ëë¤."
-#: effects/Repeat.cpp:75
-#: effects/Repeat.cpp:79
+#: effects/Repeat.cpp:75 effects/Repeat.cpp:79
msgid "Repeat"
msgstr "ë°ë³µ"
@@ -5600,8 +5497,7 @@ msgstr "ë°ë³µ íì: "
msgid "New selection length: hh:mm:ss"
msgstr ""
-#: effects/Repeat.cpp:264
-#: effects/Repeat.cpp:302
+#: effects/Repeat.cpp:264 effects/Repeat.cpp:302
msgid "New selection length: "
msgstr "ì ì í ë¶ë¶ 길ì´: "
@@ -5662,8 +5558,7 @@ msgid "Max Spike Duration (milliseconds): \n"
msgstr "ìµë ì¤íì´í¬ ê¸¸ì´ (ë°ë¦¬ì´): \n"
"(99999 ì´ìì ì¤í)"
-#: effects/SpikeCleaner.cpp:178
-#: effects/TruncSilence.cpp:269
+#: effects/SpikeCleaner.cpp:178 effects/TruncSilence.cpp:269
msgid "Theshold for silence: "
msgstr "무ì ì¤ë ì¬íë: "
@@ -5818,25 +5713,40 @@ msgstr ""
msgid "Truncate Silence"
msgstr ""
-#: effects/TruncSilence.cpp:346
-msgid "Max silence duration:"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:175
-#: prefs/AudioIOPrefs.cpp:178
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:175 prefs/AudioIOPrefs.cpp:178
msgid "milliseconds"
msgstr "ë°ë¦¬ì´"
+#: effects/TruncSilence.cpp:346
+msgid "Max silence duration:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ""
+
#: effects/TruncSilence.cpp:351
msgid "Threshold for silence:"
msgstr ""
-#: effects/TruncSilence.cpp:375
-msgid " Duration must be at least 1 millisecond"
+#: effects/TruncSilence.cpp:506
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
msgstr ""
-#: effects/TruncSilence.cpp:84
-#: effects/TruncSilence.h:29
+#: effects/TruncSilence.cpp:84 effects/TruncSilence.h:29
msgid "Truncate Silence..."
msgstr "무ì ì 리..."
@@ -5844,17 +5754,55 @@ msgstr "무ì ì 리..."
msgid "Truncating Silence..."
msgstr "무ì ì 리 ì¤..."
-#: effects/VST/VSTEffect.cpp:179
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "VST í¨ê³¼ë ì¼ì¹íì§ ìë í¸ëì ê°ë³ í¸ëì ì¤í
ë ì¤ í¸ë ìììë ìíë ì ììµëë¤."
+#: effects/ladspa/LadspaEffect.cpp:621
+msgid "Effect Settings"
+msgstr "í¨ê³¼ ì¤ì "
-#: effects/VST/VSTEffect.cpp:194
-msgid "Can't process replacing"
-msgstr "êµì²´í ì ìì"
+#: effects/ladspa/LadspaEffect.cpp:573 effects/ladspa/LadspaEffect.cpp:581
+#: prefs/QualityPrefs.cpp:72
+msgid "None"
+msgstr "ìì"
-#: effects/VST/VSTEffect.cpp:408
-msgid "VST Plug-in parameters:"
-msgstr "VST íë¬ê·¸ì¸ ì¸ì:"
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr ""
#: effects/Wahwah.cpp:60
#, c-format
@@ -5903,20 +5851,10 @@ msgstr "ìí ì¤ì¸ í¨ê³¼: %s"
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr "íë¬ê·¸ì¸ í¨ê³¼ë ì¼ì¹íì§ ìë í¸ëì ê°ë³ í¸ëì ì¤í
ë ì¤ í¸ë ìììë ìíë ì ììµëë¤."
-#: effects/ladspa/LadspaEffect.cpp:573
-#: effects/ladspa/LadspaEffect.cpp:581
-#: prefs/QualityPrefs.cpp:72
-msgid "None"
-msgstr "ìì"
-
#: effects/ladspa/LadspaEffect.cpp:575
msgid "Author: "
msgstr "ì ì: "
-#: effects/ladspa/LadspaEffect.cpp:621
-msgid "Effect Settings"
-msgstr "í¨ê³¼ ì¤ì "
-
#: effects/ladspa/LadspaEffect.cpp:712
msgid "Length (seconds)"
msgstr "ê¸¸ì´ (ì´)"
@@ -5937,8 +5875,7 @@ msgstr ""
msgid "Applying Nyquist Effect..."
msgstr "Nyquist Effect ì ì© ì¤..."
-#: effects/nyquist/Nyquist.cpp:260
-#: effects/nyquist/Nyquist.cpp:322
+#: effects/nyquist/Nyquist.cpp:260 effects/nyquist/Nyquist.cpp:322
msgid "Nyquist Prompt..."
msgstr "Nyquist Prompt..."
@@ -5958,8 +5895,7 @@ msgstr "Nyquist"
msgid "Nyquist Output: "
msgstr "Nyquist ì¶ë ¥: "
-#: effects/nyquist/Nyquist.cpp:594
-#: effects/nyquist/Nyquist.cpp:605
+#: effects/nyquist/Nyquist.cpp:594 effects/nyquist/Nyquist.cpp:605
msgid "Nyquist returned the value:"
msgstr "Nyquist 리í´ê°:"
@@ -6067,8 +6003,7 @@ msgstr " - ì¤ë¥¸ìª½"
msgid "Mixer Panel"
msgstr ""
-#: export/Export.cpp:939
-#: export/Export.cpp:993
+#: export/Export.cpp:939 export/Export.cpp:993
#, c-format
msgid "Output Channels: %2d"
msgstr "ì¶ë ¥ ì±ë: %2d"
@@ -6098,8 +6033,7 @@ msgstr ""
msgid "(external program)"
msgstr "(ì¸ë¶ ìì© íë¡ê·¸ë¨)"
-#: export/ExportCL.cpp:116
-#: export/ExportPCM.cpp:90
+#: export/ExportCL.cpp:116 export/ExportPCM.cpp:90
#, c-format
msgid "Cannot export audio to %s"
msgstr "%s (ì¼)ë¡ ì¤ëì¤ë¥¼ ë´ë³´ë¼ ì ìì"
@@ -6116,9 +6050,21 @@ msgstr "ëª
ë ¹ë¼ì¸ ì¸ì½ë를 ì´ì©íì¬ ì ì²´ íë¡ì í¸ ë´ë³´ë´ê¸°
msgid "Command Output"
msgstr "ëª
ë ¹ ì¶ë ¥"
-#: export/ExportFFmpeg.cpp:59
+#: export/ExportFFmpeg.cpp:61
msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
#: export/ExportFFmpeg.cpp:394
@@ -6186,6 +6132,10 @@ msgstr ""
msgid "AAC Export Setup"
msgstr ""
+#: export/ExportOGG.cpp:227
+msgid "Quality:"
+msgstr "íì§:"
+
#: export/ExportFFmpegDialogs.cpp:217
msgid "Specify AMR-NB Options"
msgstr ""
@@ -6319,12 +6269,8 @@ msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n
"Recommended - 192000"
msgstr ""
-#: export/ExportOGG.cpp:227
-msgid "Quality:"
-msgstr "íì§:"
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid "Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
@@ -6343,10 +6289,10 @@ msgstr ""
msgid "Cutoff Bandwidth:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:947
+#: export/ExportFFmpegDialogs.cpp:936
msgid "Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:949
@@ -6535,12 +6481,12 @@ msgstr ""
msgid "AC3 Files (FFmpeg)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:56
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:57
@@ -6651,6 +6597,17 @@ msgstr "ë¹í¸ ê¹ì´:"
msgid "FLAC Files"
msgstr "FLAC íì¼"
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
#: export/ExportFLAC.cpp:134
msgid "Exporting the selected audio as FLAC"
msgstr "ì íë ì¤ëì¤ë¥¼ FLACì¼ë¡ ë´ë³´ë´ë ì¤"
@@ -6675,20 +6632,16 @@ msgstr "MP2 íì¼"
msgid "Cannot export MP2 with this sample rate and bit rate"
msgstr "íì¬ ìíë§ ìëì ë¹í¸ì¨ë¡ë MP2ë¡ ë´ë³´ë¼ ì ìì"
-#: export/ExportMP2.cpp:102
-#: export/ExportMP3.cpp:1249
-#: export/ExportOGG.cpp:53
+#: export/ExportMP2.cpp:102 export/ExportMP3.cpp:1249 export/ExportOGG.cpp:53
msgid "Unable to open target file for writing"
msgstr "ì°ê¸° ìí 목ì íì¼ì ì´ ì ìì"
-#: export/ExportMP2.cpp:132
-#: export/ExportMP3.cpp:1337
+#: export/ExportMP2.cpp:132 export/ExportMP3.cpp:1337
#, c-format
msgid "Exporting selected audio at %d kbps"
msgstr "ì íë ì¤ëì¤ë¥¼ %d kbpsë¡ ë´ë³´ë´ë ì¤"
-#: export/ExportMP2.cpp:133
-#: export/ExportMP3.cpp:1338
+#: export/ExportMP2.cpp:133 export/ExportMP3.cpp:1338
#, c-format
msgid "Exporting entire file at %d kbps"
msgstr "ì ì²´ íì¼ì %d kbpsë¡ ë´ë³´ë´ë ì¤"
@@ -6735,8 +6688,7 @@ msgstr ""
msgid "Specify MP3 Options"
msgstr "MP3 ìµì
ì§ì "
-#: export/ExportMP3.cpp:1431
-#: prefs/FileFormatPrefs.cpp:101
+#: export/ExportMP3.cpp:1431 prefs/FileFormatPrefs.cpp:101
msgid "MP3 Export Setup"
msgstr "MP3 ë´ë³´ë´ê¸° ì¤ì "
@@ -6760,8 +6712,7 @@ msgstr "íê· "
msgid "Constant"
msgstr "ìì"
-#: prefs/QualityPrefs.cpp:42
-#: prefs/QualityPrefs.cpp:43
+#: prefs/QualityPrefs.cpp:42 prefs/QualityPrefs.cpp:43
msgid "Quality"
msgstr "íì§"
@@ -6880,10 +6831,8 @@ msgstr ""
msgid "MP3 export library not found"
msgstr ""
-#: export/ExportMultiple.cpp:88
-#: export/ExportMultiple.cpp:371
-#: export/ExportMultiple.cpp:620
-#: export/ExportMultiple.cpp:728
+#: export/ExportMultiple.cpp:88 export/ExportMultiple.cpp:371
+#: export/ExportMultiple.cpp:620 export/ExportMultiple.cpp:728
msgid "Export Multiple"
msgstr "ë¤ì¤ì¼ë¡ ë´ë³´ë´ê¸°"
@@ -6913,11 +6862,6 @@ msgstr "ì¤ì ..."
msgid "Export location:"
msgstr "ë´ë³´ë´ê¸° ìì¹:"
-#: export/ExportMultiple.cpp:203
-#: prefs/DirectoriesPrefs.cpp:92
-msgid "Choose..."
-msgstr "ì í..."
-
#: export/ExportMultiple.cpp:204
msgid "Create"
msgstr "ë§ë¤ê¸°"
@@ -6942,10 +6886,6 @@ msgstr "첫ë²ì§¸ íì¼ëª
:"
msgid "First file name"
msgstr ""
-#: export/ExportMultiple.cpp:246
-msgid "Tracks"
-msgstr "í¸ë"
-
#: export/ExportMultiple.cpp:253
msgid "Name files:"
msgstr "ì´ë¦ íì¼:"
@@ -6979,6 +6919,35 @@ msgstr "\"%s\" ì´(ê°) ì±ê³µì ì¼ë¡ ìì±ëììµëë¤."
msgid "Choose a location to save the exported files"
msgstr "ë´ë³´ë¸ íì¼ì´ ì ì¥ë ìì¹ ì í"
+#: export/ExportMultiple.cpp:524
+#, c-format
+msgid "Successfully exported the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:527
+#, c-format
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr ""
+
#: export/ExportMultiple.cpp:491
#, c-format
msgid "\"%s\" doesn't exist.\n"
@@ -6992,18 +6961,6 @@ msgstr "\"%s\" ì´(ê°) ì¡´ì¬íì§ ììµëë¤.\n"
msgid "Edit metadata"
msgstr ""
-#: export/ExportMultiple.cpp:617
-#: export/ExportMultiple.cpp:725
-#, c-format
-msgid "Successfully exported %d file(s)."
-msgstr "ì±ê³µì ì¼ë¡ %d ê° íì¼ì ë´ë³´ëìµëë¤."
-
-#: export/ExportMultiple.cpp:618
-#: export/ExportMultiple.cpp:726
-#, c-format
-msgid "Something went wrong after exporting %d file(s)."
-msgstr "%d ê° íì¼ì ë´ë³´ë´ë ì¤ ì ì ìë ì¤ë¥ê° ë°ìíìµëë¤."
-
#: export/ExportMultiple.cpp:881
#, c-format
msgid "Label %s is not a legal file name. You cannot use any of: %s\n"
@@ -7082,7 +7039,6 @@ msgstr ""
#. i18n-hint: %s will be the error message from libsndfile
#: export/ExportPCM.cpp:436
-#, c-format
#, fuzzy
msgid "Error (file may not have been written): %s"
msgstr "ì¤ë¥ (íì¼ì 기ë¡ëì§ ìì): %hs"
@@ -7142,7 +7098,6 @@ msgid "\"%s\" is an audio CD track. \n"
msgstr ""
#: import/Import.cpp:173
-#, c-format
#, fuzzy
msgid "\"%s\" is a playlist file. \n"
"Audacity cannot open this file because it only contains links to other files. \n"
@@ -7251,8 +7206,11 @@ msgstr ""
msgid "FLAC files"
msgstr ""
-#: import/ImportLOF.cpp:172
-#: import/ImportLOF.cpp:222
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr ""
+
+#: import/ImportLOF.cpp:172 import/ImportLOF.cpp:222
msgid "List of Files in basic text format"
msgstr "기본 í
ì¤í¸ íìì ëª©ë¡ íì¼"
@@ -7262,9 +7220,7 @@ msgid "Invalid window offset in LOF file."
msgstr "LOF íì¼ ë´ì ìëì°ì¦ ìµì
ì´ ì í¨íì§ ììµëë¤."
#. i18n-hint: You do not need to translate "LOF"
-#: import/ImportLOF.cpp:321
-#: import/ImportLOF.cpp:342
-#: import/ImportLOF.cpp:414
+#: import/ImportLOF.cpp:321 import/ImportLOF.cpp:342 import/ImportLOF.cpp:414
#: import/ImportLOF.cpp:434
msgid "LOF Error"
msgstr "LOF ì¤ë¥"
@@ -7411,36 +7367,41 @@ msgstr ""
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr ""
-#: prefs/AudioIOPrefs.cpp:41
-#: prefs/AudioIOPrefs.cpp:42
-msgid "Audio I/O"
-msgstr "ì¤ëì¤ I/O"
+#: prefs/BatchPrefs.cpp:53 prefs/BatchPrefs.cpp:54
+msgid "Batch"
+msgstr "ì¼ê´ ìì
"
-#: prefs/AudioIOPrefs.cpp:100
-msgid "1 (Mono)"
-msgstr "1 (모ë
¸)"
+#: prefs/BatchPrefs.cpp:75 prefs/GUIPrefs.cpp:70
+msgid "Behaviors"
+msgstr "ëì"
-#: prefs/AudioIOPrefs.cpp:101
-msgid "2 (Stereo)"
-msgstr "2 (ì¤í
ë ì¤)"
+#: prefs/BatchPrefs.cpp:80
+msgid "&Don't apply effects in batch mode"
+msgstr ""
-#: prefs/AudioIOPrefs.cpp:115
-msgid "Playback"
-msgstr "ì¬ì"
+#: prefs/BatchPrefs.cpp:83
+msgid "Cl&eanSpeech Mode (Customized GUI)"
+msgstr "Cl&eanSpeech 모ë (ì¬ì©ì GUI)"
-#: prefs/AudioIOPrefs.cpp:119
-#: prefs/AudioIOPrefs.cpp:137
-#: toolbars/DeviceToolBar.cpp:54
-msgid "Device"
-msgstr "ì¥ì¹"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:33 prefs/GUIPrefs.cpp:34
+msgid "Interface"
+msgstr "ì¸í°íì´ì¤"
+
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
+msgstr ""
#: prefs/AudioIOPrefs.cpp:122
msgid "Using:"
msgstr "ë구:"
-#: prefs/AudioIOPrefs.cpp:123
-msgid "Portaudio v"
-msgstr "Portaudio v"
+#: prefs/AudioIOPrefs.cpp:115
+msgid "Playback"
+msgstr "ì¬ì"
#: prefs/AudioIOPrefs.cpp:133
msgid "Recording"
@@ -7450,96 +7411,15 @@ msgstr "ë
¹ì"
msgid "Channels"
msgstr "ì±ë"
-#: prefs/AudioIOPrefs.cpp:145
-msgid "Playthrough"
-msgstr "ì°ì ì¬ì"
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:194
-msgid "Effects Preview"
-msgstr "í¨ê³¼ 미리 ë£ê¸°"
-
-#: prefs/AudioIOPrefs.cpp:165
-msgid "Length of preview:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:158
-msgid "Cut Preview"
-msgstr "ìë¼ë´ê¸° 미리 ë£ê¸°"
-
-#: prefs/AudioIOPrefs.cpp:173
-msgid "Preview before cut region:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:175
-msgid "Preview after cut region:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:168
-msgid "Latency"
-msgstr "ì§ì°"
-
-#: prefs/AudioIOPrefs.cpp:195
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:198
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:197
-msgid "Seek Time when playing"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:187
-msgid "Short period:"
-msgstr "ì§§ì ìê°:"
-
-#: prefs/AudioIOPrefs.cpp:189
-msgid "Long period:"
-msgstr "긴 ìê°:"
-
-#: prefs/BatchPrefs.cpp:53
-#: prefs/BatchPrefs.cpp:54
-msgid "Batch"
-msgstr "ì¼ê´ ìì
"
-
-#: prefs/BatchPrefs.cpp:75
-#: prefs/GUIPrefs.cpp:70
-msgid "Behaviors"
-msgstr "ëì"
-
-#: prefs/BatchPrefs.cpp:80
-msgid "&Don't apply effects in batch mode"
-msgstr ""
+#: prefs/AudioIOPrefs.cpp:100
+msgid "1 (Mono)"
+msgstr "1 (모ë
¸)"
-#: prefs/BatchPrefs.cpp:83
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr "Cl&eanSpeech 모ë (ì¬ì©ì GUI)"
+#: prefs/AudioIOPrefs.cpp:101
+msgid "2 (Stereo)"
+msgstr "2 (ì¤í
ë ì¤)"
-#: prefs/DirectoriesPrefs.cpp:55
-#: prefs/DirectoriesPrefs.cpp:56
+#: prefs/DirectoriesPrefs.cpp:55 prefs/DirectoriesPrefs.cpp:56
#: prefs/PrefsDialog.cpp:276
msgid "Directories"
msgstr "í´ë"
@@ -7556,34 +7436,31 @@ msgstr "ì ì¥ ìì¹:"
msgid "Free Space:"
msgstr "ë¨ì ê³µê°:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr "ìë ì ì¥"
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr "ë³ëì í´ëì íë¡ì í¸ ì¬ë³¸ì ìëì¼ë¡ ì ì¥"
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
-msgstr ""
-
-#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
-msgstr "ë¶ ë§ë¤ ìë ì ì¥"
-
#: prefs/DirectoriesPrefs.cpp:110
msgid "Audio cache"
msgstr "ì¤ëì¤ ìºì"
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "Play and/or record using RAM (useful for slow drives)"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
#: prefs/DirectoriesPrefs.cpp:121
msgid "Choose a location to place the temporary directory"
msgstr "ìì í´ë ìì¹ ì í"
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: prefs/DirectoriesPrefs.cpp:165
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -7602,226 +7479,144 @@ msgstr "%s í´ëë ì°ê¸° ë¶ê° ìí"
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "Audacityê° ì¬ììí í ë³ê²½ë ìì í´ë ì ì©"
-#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
-msgid "Import / Export"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:84
-msgid "MP3 Export Library"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:104
-msgid "MP3 Library Version:"
-msgstr "MP3 ë¼ì´ë¸ë¬ë¦¬ ë²ì :"
-
-#: prefs/FileFormatPrefs.cpp:93
-msgid "MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:98
-msgid "LAME MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
-msgid "&Download"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
+#: prefs/GUIPrefs.cpp:42
+msgid "In Browser"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
+#: prefs/GUIPrefs.cpp:43
+msgid "From Internet"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:136
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:137
-msgid "When importing audio files"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:140
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:141
-msgid "&Read uncompressed audio files directly from the original (faster)"
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:143
-msgid "&Normalize all tracks in project"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:84
-msgid "When saving a project that depends on other audio files"
-msgstr "ë¤ë¥¸ ì¤ëì¤ íì¼ì ìì¡´íë íë¡ì í¸ë¥¼ ì ì¥í ë"
-
-#: prefs/FileFormatPrefs.cpp:87
-msgid "Always © all audio into project (safest)"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:88
-msgid "&Do not copy any audio"
-msgstr ""
+#: prefs/GUIPrefs.cpp:111
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 dB (ê³ ì§í í¸ì§ì ë§¤ì° ìì ë²ì)"
-#: prefs/FileFormatPrefs.cpp:87
-msgid "&Ask user"
-msgstr "물ì´ë³´ê¸°(&A)"
+#: prefs/GUIPrefs.cpp:112
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 dB (8ë¹í¸ ìí PCM ë²ì)"
-#: prefs/FileFormatPrefs.cpp:93
-msgid "When exporting tracks to an audio file"
+#: prefs/GUIPrefs.cpp:143
+msgid "-60 dB (PCM range of 10 bit samples)"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:96
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
-msgstr "íì ì¤í
ë ì¤ ëë 모ë
¸ ì±ëë¡ ëª¨ë í¸ë ë¯¹ì¤ ë¤ì´(&l)"
+#: prefs/GUIPrefs.cpp:113
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 dB (16ë¹í¸ ìí PCM ë²ì)"
-#: prefs/FileFormatPrefs.cpp:97
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
-msgstr ""
+#: prefs/GUIPrefs.cpp:114
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 dB (ì¸ê° ê°ì² íê³)"
-#: prefs/BatchPrefs.cpp:91
-msgid "S&how Metadata Editor prior to export step"
-msgstr ""
+#: prefs/GUIPrefs.cpp:115
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB (24ë¹í¸ ìí PCM ë²ì)"
-#: prefs/GUIPrefs.cpp:33
-#: prefs/GUIPrefs.cpp:34
-msgid "Interface"
-msgstr "ì¸í°íì´ì¤"
+#: prefs/SpectrumPrefs.cpp:96
+msgid "Display"
+msgstr "íì"
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
+#: prefs/GUIPrefs.cpp:100
+msgid "Er&gonomic order of audio I/O buttons"
msgstr ""
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
msgstr ""
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
msgstr ""
-#: prefs/GUIPrefs.cpp:72
-msgid "&Update display while playing"
+#: prefs/GUIPrefs.cpp:167
+msgid "Help:"
msgstr ""
#: prefs/GUIPrefs.cpp:96
msgid "Cl&osing last window quits Audacity"
msgstr ""
-#: prefs/GUIPrefs.cpp:76
-msgid "Enable &dragging of left and right selection edges"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:100
-msgid "Er&gonomic order of audio I/O buttons"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:80
-msgid "Automatically &fit tracks vertically zoomed"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:104
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:90
-msgid "Editing a &clip can move other clips"
-msgstr "í´ë¦½ í¸ì§ì ë¤ë¥¸ í´ë¦½ ì´ë ê°ë¥(&c)"
-
-#: prefs/GUIPrefs.cpp:88
-msgid "&Select all audio in project, if none selected"
-msgstr ""
-
#: prefs/GUIPrefs.cpp:90
msgid "&Beep on completion of longer activities"
msgstr ""
-#: prefs/BatchPrefs.cpp:87
-#: prefs/GUIPrefs.cpp:94
-msgid "Show / Hide"
-msgstr "ë³´ì´ê¸° / ì¨ê¸°ê¸°"
-
-#: prefs/GUIPrefs.cpp:96
-msgid "Enable cut &lines"
-msgstr "커í¸ë¼ì¸ ì¬ì©(&l)"
-
-#: prefs/GUIPrefs.cpp:98
-msgid "Show warnings about &temp files"
-msgstr "ìì íì¼ì ëí´ ê²½ê³ ë³´ì´ê¸°(&t)"
-
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:122
-msgid "Show &Welcome Message at program start up"
-msgstr ""
-
#: prefs/GUIPrefs.cpp:126
msgid "Modes"
msgstr ""
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
+msgstr ""
+
#: prefs/GUIPrefs.cpp:129
msgid "Don't a&pply effects in batch mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
+#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
+msgid "Import / Export"
msgstr ""
-#: prefs/GUIPrefs.cpp:111
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 dB (ê³ ì§í í¸ì§ì ë§¤ì° ìì ë²ì)"
-
-#: prefs/GUIPrefs.cpp:112
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 dB (8ë¹í¸ ìí PCM ë²ì)"
-
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
+#: prefs/FileFormatPrefs.cpp:137
+msgid "When importing audio files"
msgstr ""
-#: prefs/GUIPrefs.cpp:113
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 dB (16ë¹í¸ ìí PCM ë²ì)"
+#: prefs/FileFormatPrefs.cpp:140
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
+msgstr ""
-#: prefs/GUIPrefs.cpp:114
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 dB (ì¸ê° ê°ì² íê³)"
+#: prefs/FileFormatPrefs.cpp:141
+msgid "&Read uncompressed audio files directly from the original (faster)"
+msgstr ""
-#: prefs/GUIPrefs.cpp:115
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB (24ë¹í¸ ìí PCM ë²ì)"
+#: prefs/FileFormatPrefs.cpp:143
+msgid "&Normalize all tracks in project"
+msgstr ""
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
+#: prefs/FileFormatPrefs.cpp:93
+msgid "When exporting tracks to an audio file"
msgstr ""
-#: prefs/GUIPrefs.cpp:164
-msgid "Other interface choices"
+#: prefs/FileFormatPrefs.cpp:96
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+msgstr "íì ì¤í
ë ì¤ ëë 모ë
¸ ì±ëë¡ ëª¨ë í¸ë ë¯¹ì¤ ë¤ì´(&l)"
+
+#: prefs/FileFormatPrefs.cpp:97
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
msgstr ""
-#: prefs/GUIPrefs.cpp:167
-msgid "Help:"
+#: prefs/BatchPrefs.cpp:91
+msgid "S&how Metadata Editor prior to export step"
msgstr ""
-#: prefs/GUIPrefs.cpp:168
-msgid "Solo Button:"
+#: prefs/ImportExportPrefs.cpp:84
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
msgstr ""
-#: prefs/KeyConfigPrefs.cpp:64
-#: prefs/KeyConfigPrefs.cpp:65
+#: prefs/KeyConfigPrefs.cpp:64 prefs/KeyConfigPrefs.cpp:65
msgid "Keyboard"
msgstr "í¤ë³´ë"
@@ -7845,22 +7640,26 @@ msgstr "ì¤ì (&e)"
msgid "Note: Pressing Cmd+Q will quit. All other keys are valid."
msgstr "ë
¸í¸: Cmd+Q 를 ë르면 ì¢
ë£ë©ëë¤. ë¤ë¥¸ í¤ë¤ë ì í¨í©ëë¤."
-#: prefs/KeyConfigPrefs.cpp:124
-#: prefs/ThemePrefs.cpp:102
+#: prefs/KeyConfigPrefs.cpp:124 prefs/ThemePrefs.cpp:102
msgid "&Defaults"
msgstr "기본ê°(&D)"
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr ""
+
#: prefs/KeyConfigPrefs.cpp:143
msgid "Key Combination"
msgstr "í¤ ì¡°í©"
-#: prefs/KeyConfigPrefs.cpp:163
-msgid "Export Keyboard Shortcuts As:"
-msgstr "ë¤ìì¼ë¡ í¤ë³´ë ë°ë¡ ê°ê¸° ë´ë³´ë´ê¸°:"
+#: prefs/KeyConfigPrefs.cpp:367 toolbars/EditToolBar.cpp:144
+msgid "Undo"
+msgstr "ëë리기"
-#: prefs/KeyConfigPrefs.cpp:181
-msgid "Error saving keyboard shortcuts"
-msgstr "í¤ë³´ë ë°ë¡ ê°ê¸° ì ì¥ ì¤ ì¤ë¥"
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr ""
#: prefs/KeyConfigPrefs.cpp:196
msgid "Select an XML file containing Audacity keyboard shortcuts..."
@@ -7870,6 +7669,14 @@ msgstr "Audacity í¤ë³´ë ë°ë¡ ê°ê¸°ê° í¬í¨ë XML íì¼ ì í..."
msgid "Error loading keyboard shortcuts"
msgstr "í¤ë³´ë ë°ë¡ ê°ê¸°ë¥¼ ë¶ë¬ì¤ë ì¤ ì¤ë¥"
+#: prefs/KeyConfigPrefs.cpp:163
+msgid "Export Keyboard Shortcuts As:"
+msgstr "ë¤ìì¼ë¡ í¤ë³´ë ë°ë¡ ê°ê¸° ë´ë³´ë´ê¸°:"
+
+#: prefs/KeyConfigPrefs.cpp:181
+msgid "Error saving keyboard shortcuts"
+msgstr "í¤ë³´ë ë°ë¡ ê°ê¸° ì ì¥ ì¤ ì¤ë¥"
+
#: prefs/KeyConfigPrefs.cpp:241
#, c-format
msgid "The keyboard shortcut '%s' is already assigned to:\n"
@@ -7879,10 +7686,61 @@ msgstr "í¤ë³´ë ë°ë¡ ê°ê¸° '%s' ì(ë) ì´ë¯¸ ë¤ìì í ë¹ëì´ ì
"\n"
"'%s'"
-#: prefs/KeyConfigPrefs.cpp:367
-#: toolbars/EditToolBar.cpp:144
-msgid "Undo"
-msgstr "ëë리기"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:84
+msgid "MP3 Export Library"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:104
+msgid "MP3 Library Version:"
+msgstr "MP3 ë¼ì´ë¸ë¬ë¦¬ ë²ì :"
+
+#: prefs/FileFormatPrefs.cpp:93
+msgid "MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:98
+msgid "LAME MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
+msgid "&Download"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:109
+msgid "FFmpeg Library Version:"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
+msgid "FFmpeg Library:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:41 prefs/AudioIOPrefs.cpp:42
+msgid "Audio I/O"
+msgstr "ì¤ëì¤ I/O"
+
+#: prefs/AudioIOPrefs.cpp:123
+msgid "Portaudio v"
+msgstr "Portaudio v"
+
+#: prefs/AudioIOPrefs.cpp:145
+msgid "Playthrough"
+msgstr "ì°ì ì¬ì"
#: prefs/AudioIOPrefs.cpp:147
msgid "&Play other tracks while recording new one"
@@ -7896,6 +7754,10 @@ msgstr ""
msgid "&Software Playthrough (Play new track while recording it)"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:158
+msgid "Cut Preview"
+msgstr "ìë¼ë´ê¸° 미리 ë£ê¸°"
+
#: prefs/MidiIOPrefs.cpp:160
msgid "Play before cut region:"
msgstr ""
@@ -7904,6 +7766,10 @@ msgstr ""
msgid "Play after cut region:"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:168
+msgid "Latency"
+msgstr "ì§ì°"
+
#: prefs/AudioIOPrefs.cpp:174
msgid "Audio to buffer:"
msgstr "ë²í¼ ì§ì°:"
@@ -7916,12 +7782,23 @@ msgstr "ì§ì° ì ì :"
msgid "Seek Time"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:187
+msgid "Short period:"
+msgstr "ì§§ì ìê°:"
+
+#: prefs/AudioIOPrefs.cpp:189
+msgid "Long period:"
+msgstr "긴 ìê°:"
+
+#: prefs/AudioIOPrefs.cpp:194
+msgid "Effects Preview"
+msgstr "í¨ê³¼ 미리 ë£ê¸°"
+
#: prefs/MidiIOPrefs.cpp:196
msgid "Play when previewing:"
msgstr ""
-#: prefs/MousePrefs.cpp:55
-#: prefs/MousePrefs.cpp:56
+#: prefs/MousePrefs.cpp:55 prefs/MousePrefs.cpp:56
msgid "Mouse"
msgstr "ë§ì°ì¤"
@@ -7941,35 +7818,25 @@ msgstr "ëª
ë ¹ ëì"
msgid "Buttons"
msgstr "ë²í¼"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:102
-#: prefs/MousePrefs.cpp:113
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:102 prefs/MousePrefs.cpp:113
#: prefs/MousePrefs.cpp:118
msgid "Left-Click"
msgstr "ì¼ìª½-í´ë¦"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:100
msgid "Select"
msgstr "ì í"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:118
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:118
msgid "Set Selection Point"
msgstr "ì í í¬ì¸í¸ ì¤ì "
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:103
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:115
-#: prefs/MousePrefs.cpp:119
+#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:103 prefs/MousePrefs.cpp:107
+#: prefs/MousePrefs.cpp:111 prefs/MousePrefs.cpp:115 prefs/MousePrefs.cpp:119
msgid "Left-Drag"
msgstr "ì¼ìª½-ëëê·¸"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:119
+#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:119
msgid "Set Selection Range"
msgstr "ì í ë²ì ì¤ì "
@@ -7997,9 +7864,7 @@ msgstr ""
msgid "Set Selection Point and Play"
msgstr ""
-#: prefs/MousePrefs.cpp:102
-#: prefs/MousePrefs.cpp:103
-#: prefs/MousePrefs.cpp:104
+#: prefs/MousePrefs.cpp:102 prefs/MousePrefs.cpp:103 prefs/MousePrefs.cpp:104
#: prefs/MousePrefs.cpp:105
msgid "Zoom"
msgstr "íë"
@@ -8008,9 +7873,7 @@ msgstr "íë"
msgid "Zoom in on Point"
msgstr "í¬ì¸í¸ íë"
-#: prefs/MousePrefs.cpp:103
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:121
+#: prefs/MousePrefs.cpp:103 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:121
msgid "Zoom in on a Range"
msgstr "ë²ì íë"
@@ -8018,18 +7881,15 @@ msgstr "ë²ì íë"
msgid "same as right-drag"
msgstr "ì¤ë¥¸ìª½-ëëê·¸ì ëì¼"
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:120
msgid "Right-Click"
msgstr "ì¤ë¥¸ìª½-í´ë¦"
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:120
msgid "Zoom out one step"
msgstr "í ë¨ê³ ì¶ì"
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:121
+#: prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:121
msgid "Right-Drag"
msgstr "ì¤ë¥¸ìª½-ëëê·¸"
@@ -8065,8 +7925,7 @@ msgstr "Shift-ì¼ìª½-ëëê·¸"
msgid "Time shift all clips in track"
msgstr "ìê°ì í¸ëì¼ë¡ 모ë í´ë¦½ ì´ë"
-#: prefs/MousePrefs.cpp:109
-#: prefs/MousePrefs.cpp:116
+#: prefs/MousePrefs.cpp:109 prefs/MousePrefs.cpp:116
msgid "Ctrl-Left-Drag"
msgstr "Ctrl-ì¼ìª½-ëëê·¸"
@@ -8082,9 +7941,7 @@ msgstr "ì¦í ê°ì¸ê¸° ë³ê²½"
msgid "Change Sample"
msgstr "ìí ë³ê²½"
-#: prefs/MousePrefs.cpp:113
-#: prefs/MousePrefs.cpp:114
-#: prefs/MousePrefs.cpp:115
+#: prefs/MousePrefs.cpp:113 prefs/MousePrefs.cpp:114 prefs/MousePrefs.cpp:115
#: prefs/MousePrefs.cpp:116
msgid "Pencil"
msgstr "ì°í"
@@ -8105,25 +7962,20 @@ msgstr "ì¬ë¬ ìí ë³ê²½"
msgid "Change ONE Sample only"
msgstr "í ìíë§ ë³ê²½"
-#: prefs/MousePrefs.cpp:118
-#: prefs/MousePrefs.cpp:119
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:118 prefs/MousePrefs.cpp:119 prefs/MousePrefs.cpp:120
#: prefs/MousePrefs.cpp:121
msgid "Multi"
msgstr "ë¤ì¤"
-#: prefs/MousePrefs.cpp:118
-#: prefs/MousePrefs.cpp:119
+#: prefs/MousePrefs.cpp:118 prefs/MousePrefs.cpp:119
msgid "same as select tool"
msgstr "ì í ë구ì ëì¼"
-#: prefs/MousePrefs.cpp:120
-#: prefs/MousePrefs.cpp:121
+#: prefs/MousePrefs.cpp:120 prefs/MousePrefs.cpp:121
msgid "same as zoom tool"
msgstr "íë ë구ì ëì¼"
-#: prefs/MousePrefs.cpp:123
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:123 prefs/MousePrefs.cpp:124
msgid "Any"
msgstr "모ë"
@@ -8151,10 +8003,62 @@ msgstr "Ctrl-í -íì "
msgid "Zoom in or out"
msgstr "íë ëë ì¶ì"
+#: prefs/AudioIOPrefs.cpp:165
+msgid "Length of preview:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:173
+msgid "Preview before cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:175
+msgid "Preview after cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:197
+msgid "Seek Time when playing"
+msgstr ""
+
#: prefs/PrefsDialog.cpp:97
msgid "Audacity Preferences"
msgstr "Audacity ì¤ì "
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:84
+msgid "When saving a project that depends on other audio files"
+msgstr "ë¤ë¥¸ ì¤ëì¤ íì¼ì ìì¡´íë íë¡ì í¸ë¥¼ ì ì¥í ë"
+
+#: prefs/FileFormatPrefs.cpp:87
+msgid "Always © all audio into project (safest)"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:88
+msgid "&Do not copy any audio"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:87
+msgid "&Ask user"
+msgstr "물ì´ë³´ê¸°(&A)"
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr "ìë ì ì¥"
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr "ë³ëì í´ëì íë¡ì í¸ ì¬ë³¸ì ìëì¼ë¡ ì ì¥"
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr "ë¶ ë§ë¤ ìë ì ì¥"
+
#: prefs/QualityPrefs.cpp:73
msgid "Rectangle"
msgstr "ì§ì¬ê°í"
@@ -8179,44 +8083,45 @@ msgstr "기본 ìíë§ ìë:"
msgid "Default Sample Format:"
msgstr "기본 ìíë§ íì:"
-#: prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "ì¤ìê° ìíë§ ìë ë³í기:"
-
-#: prefs/QualityPrefs.cpp:139
-msgid "High-quality sample rate converter:"
-msgstr "ê³ íì§ ìíë§ ìë ë³í기:"
-
-#: prefs/QualityPrefs.cpp:142
-msgid "Real-time dither:"
-msgstr "ì¤ìê° ëëë§:"
-
-#: prefs/QualityPrefs.cpp:145
-msgid "High-quality dither:"
-msgstr "ê³ íì§ ëëë§:"
-
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
-msgstr "ë³í"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+#, fuzzy
+msgid "Sample Rate Converter:"
msgstr "ìí ìë ë³í기"
#: prefs/QualityPrefs.cpp:164
msgid "Dither"
msgstr "ëëë§"
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
-msgstr "ì¤ìê°:"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
-msgstr "ê³ íì§:"
+#: prefs/AudioIOPrefs.cpp:149
+msgid "Overdub: &Play other tracks while recording new one"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:150
+msgid "&Hardware Playthrough: Play new track while recording it"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:157
+msgid "&Software Playthrough: Play new track while recording or monitoring"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:160
+msgid "(uncheck when recording \"stereo mix\")"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
+msgstr ""
-#: prefs/SmartRecordPrefs.cpp:54 prefs/SmartRecordPrefs.cpp:55
-msgid "Smart Recording"
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
msgstr ""
#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
@@ -8227,23 +8132,58 @@ msgstr ""
msgid "Sound Activation Level (dB):"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:36
-#: prefs/SpectrumPrefs.cpp:37
+#: prefs/SpectrumPrefs.cpp:36 prefs/SpectrumPrefs.cpp:37
msgid "Spectrograms"
msgstr "ì¤íí¸ë¡ê·¸ë¨"
-#: prefs/SpectrumPrefs.cpp:72
-msgid "FFT Size"
-msgstr "FFT í¬ê¸°"
-
#: prefs/SpectrumPrefs.cpp:75
msgid "8 - most wideband"
msgstr "8 - ê°ì¥ ëì ë°´ë"
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:80
msgid "256 - default"
msgstr "256 - 기본ê°"
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:107
msgid "32768 - most narrowband"
msgstr ""
@@ -8252,21 +8192,26 @@ msgstr ""
msgid "4096 - most narrowband"
msgstr "4096 - ê°ì¥ ì¢ì ë°´ë"
-#: prefs/SpectrumPrefs.cpp:90
-msgid "Window type:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:93
+#, fuzzy
+msgid "Window type"
msgstr "ì°½ íì:"
#: prefs/SpectrumPrefs.cpp:125
msgid "FFT Skip Points"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:96
-msgid "Display"
-msgstr "íì"
-
-#: prefs/SpectrumPrefs.cpp:100
-msgid "&Grayscale"
-msgstr "ê·¸ë ì´ ì¤ì¼ì¼(&G)"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
+msgstr ""
#: prefs/SpectrumPrefs.cpp:103
msgid "Minimum Frequency (Hz):"
@@ -8276,16 +8221,16 @@ msgstr "ìµì 주íì (Hz):"
msgid "Maximum Frequency (Hz):"
msgstr "ìµë 주íì (Hz):"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
msgstr ""
#: prefs/SpectrumPrefs.cpp:165
@@ -8296,6 +8241,14 @@ msgstr ""
msgid "Max. Number of Notes (1..128):"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:161
+msgid "&Find Notes"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Quantize Notes"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:134
msgid "The maximum frequency must be an integer"
msgstr "ìµë 주íìê°ì ì ìì´ì´ì¼ í¨"
@@ -8312,19 +8265,69 @@ msgstr "ìµì 주íìê°ì ì ìì´ì´ì¼ í¨"
msgid "Minimum frequency must be at least 0 Hz"
msgstr "ìµì 주íìê°ì ì ì´ë 0 Hz ì´ì´ì¼ í¨"
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:226 prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
+#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
msgstr ""
-#: prefs/ThemePrefs.cpp:61
-#: prefs/ThemePrefs.cpp:62
+#: prefs/SpectrumPrefs.cpp:230
+msgid "The maximum number of notes must be in the range 1..128"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:61 prefs/ThemePrefs.cpp:62
msgid "Theme"
msgstr "í
ë§"
+#: prefs/ThemePrefs.cpp:123
+msgid "Info"
+msgstr "ì ë³´"
+
+#: prefs/ThemePrefs.cpp:91
+#, fuzzy
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr "í
ë§ë ìì§ ì¤íì 기ë¥ì
ëë¤.\n"
+"\n"
+"ìíí´ ë³´ìë ¤ë©´ \"í
ë§ ìºì ì ì¥\"ì ë른 í\n"
+"Gimpì ê°ì ì´ë¯¸ì§ í¸ì§ê¸°ë¡ ImageCacheVxx.pngì\n"
+"ì´ë¯¸ì§ì ììì ìì íììì¤.\n"
+"\n"
+"Audacityë¡ ë³ê²½ë ì´ë¯¸ì§ì ììì ë¶ë¬ì¤ë ¤ë©´\n"
+"\"í
ë§ ìºì ë¶ë¬ì¤ê¸°\" 를 ë르ììì¤.\n"
+"\n"
+"[ì´ë¯¸ì§ íì¼ì´ ë¤ë¥¸ ìì´ì½ì¼ë¡ ë³´ì´ëë¼ë\n"
+"íì¬ë ì ì´ ë구 모ìê³¼ íí í¸ë ìì ë§ì´\n"
+"ìí¥ì ë°ìµëë¤.]"
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#: prefs/ThemePrefs.cpp:90
msgid "Theme Cache - Images && Color"
msgstr "í
ë§ ìºì - ì´ë¯¸ì§ ë° ìì"
@@ -8353,95 +8356,95 @@ msgstr "íì¼ ì ì¥"
msgid "Load Files"
msgstr "íì¼ ë¶ë¬ì¤ê¸°"
-#: prefs/ThemePrefs.cpp:123
-msgid "Info"
-msgstr "ì ë³´"
+#: prefs/GUIPrefs.cpp:50
+msgid "Simple"
+msgstr ""
-#: prefs/ThemePrefs.cpp:126
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
-msgstr "í
ë§ë ìì§ ì¤íì 기ë¥ì
ëë¤.\n"
-"\n"
-"ìíí´ ë³´ìë ¤ë©´ \"í
ë§ ìºì ì ì¥\"ì ë른 í\n"
-"Gimpì ê°ì ì´ë¯¸ì§ í¸ì§ê¸°ë¡ ImageCacheVxx.pngì\n"
-"ì´ë¯¸ì§ì ììì ìì íììì¤.\n"
-"\n"
-"Audacityë¡ ë³ê²½ë ì´ë¯¸ì§ì ììì ë¶ë¬ì¤ë ¤ë©´\n"
-"\"í
ë§ ìºì ë¶ë¬ì¤ê¸°\" 를 ë르ììì¤.\n"
-"\n"
-"[ì´ë¯¸ì§ íì¼ì´ ë¤ë¥¸ ìì´ì½ì¼ë¡ ë³´ì´ëë¼ë\n"
-"íì¬ë ì ì´ ë구 모ìê³¼ íí í¸ë ìì ë§ì´\n"
-"ìí¥ì ë°ìµëë¤.]\n"
-
-#: prefs/ThemePrefs.cpp:131
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
-msgstr "'Output Sourcery' ë³´ì¡° ë²í¼ì´ í¬í¨ë Audacity ì
ëë¤.\n"
-"ì´ê²ì 기본ê°ì¼ë¡ ì»´íì¼ë ì ìë ì´ë¯¸ì§ ìºìì\n"
-"C ë²ì ì ì ì¥í©ëë¤.\n"
-
-#: prefs/ThemePrefs.cpp:136
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
-msgstr "ë§ì½ 'ììí ë í
ë§ ìºì ë¶ë¬ì¤ê¸°' í목ì ì ííë©´\n"
-"íë¡ê·¸ë¨ì´ ììë ë í
ë§ ìºì를 ë¶ë¬ìµëë¤.\n"
+#: prefs/GUIPrefs.cpp:72
+msgid "&Update display while playing"
+msgstr ""
-#: prefs/ThemePrefs.cpp:139
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
-msgstr "ê°ë³ í
ë§ íì¼ì ì ì¥íê³ ë¶ë¬ì¬ ëìë\n"
-"ê°ê°ì ì´ë¯¸ì§ë§ë¤ ë³ëì íì¼ì ì¬ì©í©ëë¤.\n"
+#: prefs/GUIPrefs.cpp:80
+msgid "Automatically &fit tracks vertically zoomed"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:175
-msgid "Pause"
-msgstr "ì¼ì ë©ì¶¤"
+#: prefs/TracksPrefs.cpp:88
+msgid "Default View Mode:"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play"
-msgstr "ì¬ì"
+#: prefs/GUIPrefs.cpp:88
+msgid "&Select all audio in project, if none selected"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
+#: prefs/GUIPrefs.cpp:96
+msgid "Enable cut &lines"
+msgstr "커í¸ë¼ì¸ ì¬ì©(&l)"
+
+#: prefs/GUIPrefs.cpp:76
+msgid "Enable &dragging of left and right selection edges"
msgstr ""
-#: toolbars/ControlToolBar.cpp:183
-msgid "Stop"
-msgstr "ì¤ì§"
+#: prefs/GUIPrefs.cpp:104
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:186
-msgid "Skip to Start"
-msgstr "ìì ë¶ë¶ì¼ë¡ ê°ê¸°"
+#: prefs/GUIPrefs.cpp:90
+msgid "Editing a &clip can move other clips"
+msgstr "í´ë¦½ í¸ì§ì ë¤ë¥¸ í´ë¦½ ì´ë ê°ë¥(&c)"
-#: toolbars/ControlToolBar.cpp:189
-msgid "Skip to End"
-msgstr "ì¢
ë£ ë¶ë¶ì¼ë¡ ê°ê¸°"
+#: prefs/GUIPrefs.cpp:168
+msgid "Solo Button:"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:192
-msgid "Record (Shift for Append Record)"
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
msgstr ""
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr ""
+
+#: Menus.cpp:816
+msgid "Pause"
+msgstr "ì¼ì ë©ì¶¤"
+
+#: Menus.cpp:815
+msgid "Stop"
+msgstr "ì¤ì§"
+
#: toolbars/ControlToolBar.cpp:195
msgid "Clean Speech"
msgstr "Clean Speech"
-#: toolbars/ControlToolBar.cpp:528
-#: toolbars/ControlToolBar.cpp:815
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play (Shift for Loop Play)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:192
+msgid "Record (Shift for Append Record)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:528 toolbars/ControlToolBar.cpp:815
msgid "Error while opening sound device. "
msgstr "ìì± ì¥ì¹ ì¬ë ì¤ ì¤ë¥"
@@ -8453,13 +8456,11 @@ msgstr ""
msgid "Recording not permitted"
msgstr "ë
¹ìì´ íê°ëì§ ìì"
-#: toolbars/DeviceToolBar.cpp:113
-#: toolbars/DeviceToolBar.cpp:115
+#: toolbars/DeviceToolBar.cpp:113 toolbars/DeviceToolBar.cpp:115
msgid "Output Device"
msgstr "ì¶ë ¥ ì¥ì¹"
-#: toolbars/DeviceToolBar.cpp:134
-#: toolbars/DeviceToolBar.cpp:136
+#: toolbars/DeviceToolBar.cpp:134 toolbars/DeviceToolBar.cpp:136
msgid "Input Device"
msgstr "ì
ë ¥ ì¥ì¹"
@@ -8483,29 +8484,21 @@ msgstr "íë"
msgid "Zoom Out"
msgstr "ì¶ì"
-#: toolbars/EditToolBar.cpp:156
-msgid "Zoom Toggle"
-msgstr "íë í ê¸"
-
-#: toolbars/EditToolBar.cpp:160
-msgid "Fit Selection"
-msgstr "ì í ë¶ë¶ íë"
-
#: toolbars/EditToolBar.cpp:160
msgid "Fit selection in window"
msgstr "ì°½ í¬ê¸°ì ì í ë¶ë¶ì ë§ì¶¥ëë¤."
#: toolbars/EditToolBar.cpp:162
-msgid "Fit Project"
-msgstr "íë¡ì í¸ì ë§ì¶ê¸°"
-
-#: toolbars/EditToolBar.cpp:162
msgid "Fit project in window"
msgstr "ì°½ í¬ê¸°ì íë¡ì í¸ë¥¼ ë§ì¶¥ëë¤."
-#: toolbars/MeterToolBar.cpp:49
-msgid "Meter"
-msgstr "미í°"
+#: toolbars/EditToolBar.cpp:160
+msgid "Fit Selection"
+msgstr "ì í ë¶ë¶ íë"
+
+#: toolbars/EditToolBar.cpp:162
+msgid "Fit Project"
+msgstr "íë¡ì í¸ì ë§ì¶ê¸°"
#: toolbars/MeterToolBar.cpp:79
msgid "Play Meter"
@@ -8553,24 +8546,28 @@ msgstr "ì¬ë¼ì´ë-ì
ë ¥"
msgid "Input Source"
msgstr "ì
ë ¥ ìì¤"
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:76
msgid "Selection"
msgstr "ì í"
-#: toolbars/SelectionBar.cpp:116
-#: toolbars/SelectionBar.cpp:169
+#: toolbars/SelectionBar.cpp:116 toolbars/SelectionBar.cpp:169
msgid "Project Rate (Hz):"
msgstr "íë¡ì í¸ ì£¼íì (Hz):"
-#: toolbars/SelectionBar.cpp:121
-#: toolbars/SelectionBar.cpp:213
+#: toolbars/SelectionBar.cpp:121 toolbars/SelectionBar.cpp:213
msgid "Selection Start:"
msgstr "ì í ìì ìì¹:"
-#: effects/ToneGen.cpp:296
-#: effects/ToneGen.cpp:334
-#: toolbars/SelectionBar.cpp:136
-#: toolbars/SelectionBar.cpp:227
+#: effects/ToneGen.cpp:296 effects/ToneGen.cpp:334
+#: toolbars/SelectionBar.cpp:136 toolbars/SelectionBar.cpp:227
msgid "Length"
msgstr "길ì´"
@@ -8578,8 +8575,7 @@ msgstr "길ì´"
msgid "hidden"
msgstr "ì¨ê¹"
-#: toolbars/SelectionBar.cpp:156
-#: toolbars/SelectionBar.cpp:241
+#: toolbars/SelectionBar.cpp:156 toolbars/SelectionBar.cpp:241
msgid "Audio Position:"
msgstr "ì¤ëì¤ ìì¹:"
@@ -8604,8 +8600,7 @@ msgstr "ì í ì¢
ë£ ìì¹"
msgid "Audacity %s ToolBar"
msgstr "Audacity %s ë구 모ì"
-#: toolbars/ToolDock.cpp:74
-#: toolbars/ToolDock.cpp:75
+#: toolbars/ToolDock.cpp:74 toolbars/ToolDock.cpp:75
msgid "ToolDock"
msgstr "ToolDock"
@@ -8637,34 +8632,6 @@ msgstr "ì¼ìª½=íë, ì¤ë¥¸ìª½-ì¶ì, ê°ì´ë°=íì¤ í¬ê¸°"
msgid "Click and drag to move a track in time"
msgstr "ìê°ì¼ë¡ í¸ëì ì®ê¸°ë ¤ë©´ í´ë¦ í ëëê·¸ íììì¤."
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr "ë구"
-
-#: toolbars/ToolsToolBar.cpp:147
-#: toolbars/ToolsToolBar.cpp:182
-msgid "Selection Tool"
-msgstr "ì í ë구"
-
-#: toolbars/ToolsToolBar.cpp:148
-msgid "Envelope Tool"
-msgstr "ê°ì¸ê¸° ë구"
-
-#: toolbars/ToolsToolBar.cpp:149
-#: toolbars/ToolsToolBar.cpp:183
-msgid "Time Shift Tool"
-msgstr "ìê° ì´ë ë구"
-
-#: toolbars/ToolsToolBar.cpp:150
-#: toolbars/ToolsToolBar.cpp:185
-msgid "Zoom Tool"
-msgstr "íë ë구"
-
-#: toolbars/ToolsToolBar.cpp:151
-#: toolbars/ToolsToolBar.cpp:184
-msgid "Draw Tool"
-msgstr "그리기 ë구"
-
#: toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
msgstr "ë¤ì¤-ë구 모ë"
@@ -8673,24 +8640,11 @@ msgstr "ë¤ì¤-ë구 모ë"
msgid "Slide Tool"
msgstr "ì¬ë¼ì´ë ë구"
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr "ë¤ì¤ ë구"
-
-#: toolbars/TranscriptionToolBar.cpp:82
-msgid "Transcription"
-msgstr "í¸ê³¡"
-
#: toolbars/TranscriptionToolBar.cpp:163
msgid "Play at selected speed"
msgstr "ì íë ìëë¡ í¸ëì ì¬ìí©ëë¤."
-#: toolbars/TranscriptionToolBar.cpp:164
-msgid "Play-at-speed"
-msgstr "ì íë ìëë¡ ì¬ì"
-
-#: toolbars/TranscriptionToolBar.cpp:170
-#: toolbars/TranscriptionToolBar.cpp:175
+#: toolbars/TranscriptionToolBar.cpp:170 toolbars/TranscriptionToolBar.cpp:175
msgid "Playback Speed"
msgstr "ì¬ì ìë"
@@ -8698,74 +8652,38 @@ msgstr "ì¬ì ìë"
msgid "Adjust left selection to next onset"
msgstr "ë¤ì ì¼ê¸° ì¤ì ì¼ë¡ ì¼ìª½ ì í ë¶ë¶ì ì¡°ì íììì¤."
-#: toolbars/TranscriptionToolBar.cpp:181
-msgid "Left-to-On"
-msgstr "ì¼ìª½-ì¼ê¸°"
-
#: toolbars/TranscriptionToolBar.cpp:183
msgid "Adjust right selection to previous offset"
msgstr "ë¤ì ë기 ì¤ì ì¼ë¡ ì¤ë¥¸ìª½ ì í ë¶ë¶ì ì¡°ì íììì¤."
-#: toolbars/TranscriptionToolBar.cpp:184
-msgid "Right-to-Off"
-msgstr "ì¤ë¥¸ìª½-ë기"
-
#: toolbars/TranscriptionToolBar.cpp:186
msgid "Adjust left selection to next offset"
msgstr "ë¤ì ë기 ì¤ì ì¼ë¡ ì¼ìª½ ì í ë¶ë¶ì ì¡°ì íììì¤."
-#: toolbars/TranscriptionToolBar.cpp:187
-msgid "Left-to-Off"
-msgstr "ì¼ìª½-ë기"
-
#: toolbars/TranscriptionToolBar.cpp:189
msgid "Adjust right selection to previous onset"
msgstr "ë¤ì ì¼ê¸° ì¤ì ì¼ë¡ ì¤ë¥¸ìª½ ì í ë¶ë¶ì ì¡°ì íììì¤."
-#: toolbars/TranscriptionToolBar.cpp:190
-msgid "Right-to-On"
-msgstr "ì¤ë¥¸ìª½-ì¼ê¸°"
-
#: toolbars/TranscriptionToolBar.cpp:192
msgid "Select region of sound around cursor"
msgstr "커ì ê·¼ì²ì ìì± ììì ì ííììì¤."
-#: toolbars/TranscriptionToolBar.cpp:193
-msgid "Select-Sound"
-msgstr "ìì±-ì í"
-
#: toolbars/TranscriptionToolBar.cpp:195
msgid "Select region of silence around cursor"
msgstr "커ì ê·¼ì²ì 무ì ììì ì ííììì¤."
-#: toolbars/TranscriptionToolBar.cpp:196
-msgid "Select-Silence"
-msgstr "무ì-ì í"
-
#: toolbars/TranscriptionToolBar.cpp:198
msgid "Automatically make labels from words"
msgstr "ë¨ì´ë¡ë¶í° ìëì¼ë¡ ë¼ë²¨ì ìì±í©ëë¤."
-#: toolbars/TranscriptionToolBar.cpp:199
-msgid "Make Labels"
-msgstr "ë¼ë²¨ ë§ë¤ê¸°"
-
#: toolbars/TranscriptionToolBar.cpp:201
msgid "Add label at selection"
msgstr "ì í ë¶ë¶ì ë¼ë²¨ ì¶ê°"
-#: toolbars/TranscriptionToolBar.cpp:202
-msgid "Add Label"
-msgstr "ë¼ë²¨ ì¶ê°"
-
#: toolbars/TranscriptionToolBar.cpp:204
msgid "Calibrate voicekey"
msgstr "ìì±í¤ ê³ì°"
-#: toolbars/TranscriptionToolBar.cpp:205
-msgid "Calibrate"
-msgstr "ê³ì°"
-
#: toolbars/TranscriptionToolBar.cpp:209
msgid "Adjust Sensitivity"
msgstr "ê°ë ì¡°ì "
@@ -8798,6 +8716,46 @@ msgstr "ë°©í¥ ë³ê²½ (ëì ì¤ë ì¬íë)"
msgid "Key type"
msgstr "í¤ íì"
+#: toolbars/TranscriptionToolBar.cpp:164
+msgid "Play-at-speed"
+msgstr "ì íë ìëë¡ ì¬ì"
+
+#: toolbars/TranscriptionToolBar.cpp:181
+msgid "Left-to-On"
+msgstr "ì¼ìª½-ì¼ê¸°"
+
+#: toolbars/TranscriptionToolBar.cpp:184
+msgid "Right-to-Off"
+msgstr "ì¤ë¥¸ìª½-ë기"
+
+#: toolbars/TranscriptionToolBar.cpp:187
+msgid "Left-to-Off"
+msgstr "ì¼ìª½-ë기"
+
+#: toolbars/TranscriptionToolBar.cpp:190
+msgid "Right-to-On"
+msgstr "ì¤ë¥¸ìª½-ì¼ê¸°"
+
+#: toolbars/TranscriptionToolBar.cpp:193
+msgid "Select-Sound"
+msgstr "ìì±-ì í"
+
+#: toolbars/TranscriptionToolBar.cpp:196
+msgid "Select-Silence"
+msgstr "무ì-ì í"
+
+#: toolbars/TranscriptionToolBar.cpp:199
+msgid "Make Labels"
+msgstr "ë¼ë²¨ ë§ë¤ê¸°"
+
+#: toolbars/TranscriptionToolBar.cpp:202
+msgid "Add Label"
+msgstr "ë¼ë²¨ ì¶ê°"
+
+#: toolbars/TranscriptionToolBar.cpp:205
+msgid "Calibrate"
+msgstr "ê³ì°"
+
#: widgets/AButton.cpp:298
msgid " (disabled)"
msgstr " (ë¶ê°ë¨)"
@@ -8812,15 +8770,13 @@ msgstr "ë²í¼"
#. i18n-hint: One-letter abbreviation for Left, in VU Meter
#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
-#: widgets/ASlider.cpp:540
-#: widgets/Meter.cpp:205
+#: widgets/ASlider.cpp:540 widgets/Meter.cpp:205
msgid "L"
msgstr "L"
#. i18n-hint: One-letter abbreviation for Right, in VU Meter
#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
-#: widgets/ASlider.cpp:543
-#: widgets/Meter.cpp:207
+#: widgets/ASlider.cpp:543 widgets/Meter.cpp:207
msgid "R"
msgstr "R"
@@ -8869,8 +8825,7 @@ msgstr "ê·¸ëë²"
msgid "%d rows, %d columns"
msgstr "%d í, %d ì´"
-#: widgets/Grid.cpp:622
-#: widgets/Grid.cpp:749
+#: widgets/Grid.cpp:622 widgets/Grid.cpp:749
#, c-format
msgid "Row %d"
msgstr "%d í"
@@ -8949,8 +8904,7 @@ msgstr ""
msgid "Cancel"
msgstr ""
-#: widgets/Ruler.cpp:1110
-#: widgets/Ruler.cpp:1111
+#: widgets/Ruler.cpp:1110 widgets/Ruler.cpp:1111
msgid "Vertical Ruler"
msgstr "ìì§ ëê¸"
@@ -9108,3 +9062,15 @@ msgstr ""
msgid "Could not load file: \"%s\""
msgstr ""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
+
diff --git a/locale/lt.po b/locale/lt.po
index 257e620..fb968ba 100644
--- a/locale/lt.po
+++ b/locale/lt.po
@@ -29,11 +29,11 @@ msgid "Audacity is a free program written by a team of volunteer <a href=\"http:
msgstr ""
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
# i18n-hint: The translation of "translator_credits" will appear
@@ -41,8 +41,7 @@ msgstr ""
# your own name(s) to the credits.
# For example: "English translation by Dominic Mazzoni."
#. i18n-hint: The translation of "translator_credits" will appear
-#: ../src/AboutDialog.cpp:127
-#: ../src/AboutDialog.cpp:129
+#: ../src/AboutDialog.cpp:127 ../src/AboutDialog.cpp:129
msgid "translator_credits"
msgstr "Lithuanian translation by Šarūnas Gliebus"
@@ -85,7 +84,7 @@ msgid "Special thanks:"
msgstr "YpaÄ aÄiÅ«"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
msgstr ""
#: AboutDialog.cpp:320
@@ -196,18 +195,13 @@ msgstr ""
msgid "GPL License"
msgstr ""
-#: ../src/AudacityApp.cpp:304
-#: ../src/Project.cpp:1770
+#: ../src/AudacityApp.cpp:304 ../src/Project.cpp:1770
#, c-format
msgid "%s is already open in another window."
msgstr "%s jau atidarytas kitame lange."
-#: ../src/AudacityApp.cpp:306
-#: ../src/Project.cpp:1772
-#: ../src/Project.cpp:1843
-#: ../src/Project.cpp:1894
-#: ../src/Project.cpp:1905
-#: ../src/Project.cpp:1943
+#: ../src/AudacityApp.cpp:306 ../src/Project.cpp:1772 ../src/Project.cpp:1843
+#: ../src/Project.cpp:1894 ../src/Project.cpp:1905 ../src/Project.cpp:1943
msgid "Error opening project"
msgstr "Klaida atidarant projektÄ
"
@@ -232,20 +226,28 @@ msgstr "Įvesties Matuoklis"
msgid "Output Meter"
msgstr "Sujungti Išvestį"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
+#: ../src/Menus.cpp:141
+msgid "&New"
+msgstr "&Naujas"
+
+#: ../src/Menus.cpp:143
+msgid "&Open..."
+msgstr "&Atidaryti..."
+
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
+
#: AudacityApp.cpp:534 Menus.cpp:575
-msgid "&Preferences...\tCtrl+,"
+msgid "&Preferences..."
msgstr ""
-#: ../src/AudacityApp.cpp:626
-#: ../src/AudacityApp.cpp:696
+#: ../src/AudacityApp.cpp:626 ../src/AudacityApp.cpp:696
#, c-format
msgid "Using block size of %ld\n"
msgstr "Naudojatis bloko dydžiu %ld\n"
-#: ../src/AudacityApp.cpp:641
-#: ../src/AudacityApp.cpp:711
+#: ../src/AudacityApp.cpp:641 ../src/AudacityApp.cpp:711
#, c-format
msgid "Unknown command line option: %s\n"
msgstr "Nežinomas komandinÄs eilutÄs jungtukas %s\n"
@@ -358,14 +360,14 @@ msgstr "Klaida:"
msgid "Error Initializing Audio"
msgstr "Klaida Kraunant Audio"
-#: AudioIO.cpp:1236
-msgid "Latency problem"
+#: AudioIO.cpp:1225
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
+"Audacity has brought it back to start at zero.\n"
+"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
msgstr ""
#: AudioIO.cpp:1236
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
-"Audacity has brought it back to start at zero.\n"
-"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
+msgid "Latency problem"
msgstr ""
#: AutoRecovery.cpp:40
@@ -414,10 +416,8 @@ msgstr ""
msgid "Could not enumerate files in auto save directory"
msgstr ""
-#: ../src/ControlToolBar.cpp:723
-#: ../src/ControlToolBar.cpp:884
-#: ../src/effects/Effect.cpp:331
-#: ../src/prefs/DirectoriesPrefs.cpp:204
+#: ../src/ControlToolBar.cpp:723 ../src/ControlToolBar.cpp:884
+#: ../src/effects/Effect.cpp:331 ../src/prefs/DirectoriesPrefs.cpp:204
msgid "Error"
msgstr "Klaida"
@@ -593,8 +593,9 @@ msgstr ""
msgid "C&hain (Double-Click or press SPACE to edit)"
msgstr ""
-#: BatchProcessDialog.cpp:450
-msgid "No"
+#. i18n-hint: This is the number of the command in the list
+#: BatchProcessDialog.cpp:453
+msgid "Num"
msgstr ""
#: BatchProcessDialog.cpp:456
@@ -915,11 +916,11 @@ msgstr "StaÄiakampis"
msgid "FFmpeg support not compiled in"
msgstr ""
-#: FFmpeg.cpp:101
+#: FFmpeg.cpp:103
msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
#: FFmpeg.cpp:104
@@ -978,11 +979,12 @@ msgstr ""
msgid "FFmpeg not found"
msgstr ""
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
#: FFmpeg.h:109
@@ -1005,8 +1007,7 @@ msgstr ""
msgid "Frequency Analysis"
msgstr "Dažnio AnalizÄ"
-#: ../src/FreqWindow.cpp:129
-#: ../src/TrackPanel.cpp:837
+#: ../src/FreqWindow.cpp:129 ../src/TrackPanel.cpp:837
msgid "Spectrum"
msgstr "Spektras"
@@ -1069,15 +1070,25 @@ msgstr ""
msgid "Export"
msgstr ""
-#: ../src/Benchmark.cpp:223
-#: ../src/FreqWindow.cpp:123
-#: ../src/effects/ClickRemoval.cpp:371
-#: ../src/effects/NoiseRemoval.cpp:463
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
+#: ../src/Benchmark.cpp:223 ../src/FreqWindow.cpp:123
+#: ../src/effects/ClickRemoval.cpp:371 ../src/effects/NoiseRemoval.cpp:463
msgid "Close"
msgstr "Uždaryti"
-#: ../src/effects/Compressor.cpp:385
-#: ../src/effects/Compressor.cpp:393
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr ""
+
+#: ../src/effects/Compressor.cpp:385 ../src/effects/Compressor.cpp:393
#: ../src/widgets/Meter.cpp:293
msgid "dB"
msgstr "dB"
@@ -1089,6 +1100,15 @@ msgstr "dB"
msgid "Hz"
msgstr "Hz"
+#: ../src/Menus.cpp:2369
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "Kad galÄÄiau nupieÅ¡ti grafikÄ
, visi pasirinkti takeliai turi bÅ«ti to paÄio dažnio."
+
+#: ../src/Menus.cpp:2395
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "Per daug audio pasirinkta. Tik %.1f sekundÄs bus iÅ¡analizuotos."
+
#: ../src/FreqWindow.cpp:463
msgid "Not enough data selected."
msgstr "Pasirinkta per mažai duomenų"
@@ -1115,9 +1135,7 @@ msgstr "spektras.txt"
msgid "Export Spectral Data As:"
msgstr "Eksportuoti Spektro Duomenis Kaip:"
-#: ../src/FreqWindow.cpp:1014
-#: ../src/Menus.cpp:1393
-#: ../src/Project.cpp:2159
+#: ../src/FreqWindow.cpp:1014 ../src/Menus.cpp:1393 ../src/Project.cpp:2159
#: ../src/prefs/KeyConfigPrefs.cpp:173
msgid "Couldn't write to file: "
msgstr "Negaliu raÅ¡yti į failÄ
:"
@@ -1130,6 +1148,21 @@ msgstr "Dažnis (Hz)\tLygis (dB)"
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "Atsilikimas (sek)\tDažnis (Hz)\tLygis"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr ""
+
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr ""
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr ""
@@ -1207,7 +1240,7 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr ""
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
msgstr ""
#: HelpText.cpp:244
@@ -1231,7 +1264,7 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr ""
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
msgstr ""
#: HelpText.cpp:383
@@ -1300,6 +1333,14 @@ msgstr ""
msgid "GB"
msgstr ""
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
#: LabelDialog.cpp:50
msgid "Track"
msgstr ""
@@ -1359,9 +1400,7 @@ msgstr "Pasirinkite tekstinį failÄ
kuriame yra pavadinimai..."
msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
msgstr "Tekstiniai failai (*.txt)|*.txt|Visi failai (*.*)|*.*"
-#: ../src/Menus.cpp:2647
-#: ../src/Project.cpp:1820
-#: ../src/Project.cpp:1828
+#: ../src/Menus.cpp:2647 ../src/Project.cpp:1820 ../src/Project.cpp:1828
#: ../src/import/ImportMIDI.cpp:31
msgid "Could not open file: "
msgstr "Negaliu atidaryti failo:"
@@ -1415,21 +1454,13 @@ msgstr "Atidaromas Audacity Projektas"
msgid "&File"
msgstr "&Failas"
-#: ../src/Menus.cpp:141
-msgid "&New\tCtrl+N"
-msgstr "&Naujas\tCtrl+N"
-
-#: ../src/Menus.cpp:143
-msgid "&Open...\tCtrl+O"
-msgstr "&Atidaryti...\tCtrl+O"
-
#: ../src/Menus.cpp:145
-msgid "&Close\tCtrl+W"
-msgstr "&Uždaryti\tCtrl+W"
+msgid "&Close"
+msgstr "&Uždaryti"
#: ../src/Menus.cpp:146
-msgid "&Save Project\tCtrl+S"
-msgstr "&IÅ¡saugoti projektÄ
\tCtrl+S"
+msgid "&Save Project"
+msgstr "&IÅ¡saugoti projektÄ
"
#: ../src/Menus.cpp:150
msgid "Save Project &As..."
@@ -1452,7 +1483,7 @@ msgid "&Import"
msgstr ""
#: Menus.cpp:236
-msgid "&Audio...\tCtrl+Shift+I"
+msgid "&Audio..."
msgstr ""
#: Menus.cpp:237
@@ -1483,8 +1514,8 @@ msgstr "Daugialypis eksportavi&mas..."
msgid "Export MIDI..."
msgstr ""
-#: Menus.cpp:290
-msgid "CleanSpeech C&hain..."
+#: Menus.cpp:352
+msgid "Appl&y Chain..."
msgstr ""
#: Menus.cpp:340 Menus.cpp:354
@@ -1499,10 +1530,6 @@ msgstr ""
msgid "I&mport CleanSpeech Presets..."
msgstr ""
-#: Menus.cpp:352
-msgid "Appl&y Chain..."
-msgstr ""
-
#: Menus.cpp:358
msgid "&Upload File..."
msgstr ""
@@ -1517,7 +1544,7 @@ msgid "&Print..."
msgstr ""
#: Menus.cpp:382 Menus.cpp:385
-msgid "E&xit\tCtrl+Q"
+msgid "E&xit"
msgstr ""
#: ../src/Menus.cpp:227
@@ -1525,63 +1552,63 @@ msgid "&Edit"
msgstr "R&edaguoti"
#: ../src/Menus.cpp:231
-msgid "&Undo\tCtrl+Z"
-msgstr "&Atšaukti\tCtrl+Z"
+msgid "&Undo"
+msgstr "&Atšaukti"
#: ../src/Menus.cpp:239
msgid "&Redo"
msgstr "Sug&rÄ
žinti"
#: ../src/Menus.cpp:252
-msgid "Cu&t\tCtrl+X"
-msgstr "Iškirp&t\tCtrl+X"
+msgid "Cu&t"
+msgstr "Iškirp&t"
#: Menus.cpp:420
-msgid "Spl&it Cut\tCtrl+Alt+X"
+msgid "Spl&it Cut"
msgstr ""
#: ../src/Menus.cpp:253
-msgid "&Copy\tCtrl+C"
-msgstr "&Kopijuoti\tCtrl+C"
+msgid "&Copy"
+msgstr "&Kopijuoti"
#: ../src/Menus.cpp:254
-msgid "&Paste\tCtrl+V"
-msgstr "&Ä®dÄti\tCtrl+V"
+msgid "&Paste"
+msgstr "&Ä®dÄti"
#: Menus.cpp:426
-msgid "Tri&m\tCtrl+T"
+msgid "Tri&m"
msgstr ""
#: ../src/Menus.cpp:260
-msgid "&Delete\tCtrl+K"
-msgstr "&Trinti\tCtrl+K"
+msgid "&Delete"
+msgstr "&Trinti"
#: Menus.cpp:429
-msgid "Split D&elete\tCtrl+Alt+K"
+msgid "Split D&elete"
msgstr ""
#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
+msgid "Silence Audi&o"
msgstr ""
#: Menus.cpp:432
-msgid "Sp&lit\tCtrl+I"
+msgid "Sp&lit"
msgstr ""
#: Menus.cpp:342
-msgid "Split Ne&w\tCtrl+Alt+I"
+msgid "Split Ne&w"
msgstr ""
#: Menus.cpp:442
-msgid "&Join\tCtrl+J"
+msgid "&Join"
msgstr ""
#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
+msgid "Detac&h at Silences"
msgstr ""
#: Menus.cpp:445
-msgid "Duplic&ate\tCtrl+D"
+msgid "Duplic&ate"
msgstr ""
#: Menus.cpp:400 Menus.cpp:639
@@ -1594,47 +1621,32 @@ msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:460
-msgid "&Cut\tAlt+X"
+msgid "&Cut"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:465
-msgid "&Split Cut\tShift+Alt+X"
+msgid "&Split Cut"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:470
-msgid "Co&py\tShift+Alt+C"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:476
-msgid "&Delete\tAlt+K"
+msgid "Co&py"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:481
-msgid "Sp&lit Delete\tShift+Alt+K"
+msgid "Sp&lit Delete"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:486
-msgid "Sile&nce\tAlt+L"
+msgid "Sile&nce"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:492
-msgid "Spli&t\tAlt+I"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:497
-msgid "&Join\tAlt+J"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
+msgid "Spli&t"
msgstr ""
#: Menus.cpp:456
@@ -1642,33 +1654,33 @@ msgid "&Select"
msgstr ""
#: ../src/Menus.cpp:269
-msgid "&All\tCtrl+A"
-msgstr "&ViskÄ
\tCtrl+A"
+msgid "&All"
+msgstr "&ViskÄ
"
#: Menus.cpp:415
-msgid "&None\tCtrl+Shift+A"
+msgid "&None"
msgstr ""
#: Menus.cpp:462
-msgid "&Left at Playback Position\t["
+msgid "&Left at Playback Position"
msgstr ""
#: Menus.cpp:463
-msgid "&Right at Playback Position\t]"
+msgid "&Right at Playback Position"
msgstr ""
#: Menus.cpp:467
-msgid "Track &Start to Cursor\tShift+J"
+msgid "Track &Start to Cursor"
msgstr ""
#: Menus.cpp:468
-msgid "Cursor to Track &End\tShift+K"
+msgid "Cursor to Track &End"
msgstr ""
#: Menus.cpp:525
#, fuzzy
-msgid "Find &Zero Crossings\tZ"
-msgstr "Rasti Susikirtimus ties Nuliu \tZ"
+msgid "Find &Zero Crossings"
+msgstr "Rasti Susikirtimus ties Nuliu "
#: Menus.cpp:476
msgid "Mo&ve Cursor"
@@ -1685,11 +1697,11 @@ msgid "to Selection En&d"
msgstr "į Apibraukimo PabaigÄ
"
#: Menus.cpp:483
-msgid "to Track &Start\tJ"
+msgid "to Track &Start"
msgstr ""
#: Menus.cpp:484
-msgid "to Track &End\tK"
+msgid "to Track &End"
msgstr ""
#: Menus.cpp:491
@@ -1712,29 +1724,8 @@ msgstr ""
msgid "&Unlock"
msgstr ""
-#: ../src/Menus.cpp:311
-msgid "Turn Snap-To On"
-msgstr "Ä®jungti PrikibimÄ
"
-
-#: ../src/Menus.cpp:312
-msgid "Turn Snap-To Off"
-msgstr "IÅ¡jungti PrikibimÄ
"
-
-#: ../src/Menus.cpp:313
-msgid "Turn Grid Snap On"
-msgstr "Ä®jungti Grotelų PrikibimÄ
"
-
-#: ../src/Menus.cpp:314
-msgid "Turn Grid Snap Off"
-msgstr "IÅ¡jungti Grotelų PrikibimÄ
"
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr ""
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
+msgid "Pre&ferences..."
msgstr ""
#: ../src/Menus.cpp:345
@@ -1742,35 +1733,35 @@ msgid "&View"
msgstr "&Vaizdas"
#: ../src/Menus.cpp:347
-msgid "Zoom &In\tCtrl+1"
-msgstr "Pr&iartinti\tCtrl+1"
+msgid "Zoom &In"
+msgstr "Pr&iartinti"
#: ../src/Menus.cpp:350
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "&Normaliai priartinti\tCtrl+2"
+msgid "Zoom &Normal"
+msgstr "&Normaliai priartinti"
#: ../src/Menus.cpp:351
-msgid "Zoom &Out\tCtrl+3"
-msgstr "Sumažinti\tCtrl+3"
+msgid "Zoom &Out"
+msgstr "Sumažinti"
#: ../src/Menus.cpp:354
-msgid "&Fit in Window\tCtrl+F"
-msgstr "&Pritaikyti lange\tCtrl+F"
+msgid "&Fit in Window"
+msgstr "&Pritaikyti lange"
#: ../src/Menus.cpp:355
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "Pritaikyti &Vertikaliai\tCtrl+Shift+F"
+msgid "Fit &Vertically"
+msgstr "Pritaikyti &Vertikaliai"
#: ../src/Menus.cpp:356
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "&Priartinti apibraukimÄ
\tCtrl+E"
+msgid "&Zoom to Selection"
+msgstr "&Priartinti apibraukimÄ
"
#: Menus.cpp:603
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
+msgid "&Collapse All Tracks"
msgstr ""
#: Menus.cpp:604
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
+msgid "E&xpand All Tracks"
msgstr ""
#: Menus.cpp:551
@@ -1832,39 +1823,39 @@ msgid "T&ransport"
msgstr ""
#: Menus.cpp:591
-msgid "Play\tSpace"
+msgid "Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
+msgid "&Loop Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Pause\tP"
+msgid "&Pause"
msgstr ""
#: Menus.cpp:596
-msgid "&Stop\tSpace"
+msgid "&Stop"
msgstr ""
#: ../src/Menus.cpp:569
-msgid "Skip to Start\tHome"
-msgstr "Perkelti į PradžiÄ
\tHome"
+msgid "Skip to Start"
+msgstr "Perkelti į PradžiÄ
"
#: ../src/Menus.cpp:570
-msgid "Skip to End\tEnd"
-msgstr "Perkelti į Pabaiga\tEnd"
+msgid "Skip to End"
+msgstr "Perkelti į Pabaiga"
#: Menus.cpp:600
-msgid "&Record\tR"
+msgid "&Record"
msgstr ""
#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
+msgid "&Timer Record..."
msgstr ""
#: Menus.cpp:604
-msgid "Append Record\tShift+R"
+msgid "Append Record"
msgstr ""
#: Menus.cpp:607
@@ -1892,7 +1883,7 @@ msgid "Add &New"
msgstr ""
#: Menus.cpp:643
-msgid "&Audio Track\tCtrl+Shift+N"
+msgid "&Audio Track"
msgstr ""
#: Menus.cpp:644
@@ -1909,7 +1900,7 @@ msgid "Mi&x and Render"
msgstr ""
#: Menus.cpp:564
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
+msgid "Mix and Render to New Track"
msgstr ""
#: Menus.cpp:662
@@ -1921,11 +1912,11 @@ msgid "Remo&ve Tracks"
msgstr "P&ašalinti Takelius"
#: Menus.cpp:667
-msgid "&Mute All Tracks\tCtrl+U"
+msgid "&Mute All Tracks"
msgstr ""
#: Menus.cpp:668
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
+msgid "&UnMute All Tracks"
msgstr ""
#: ../src/Menus.cpp:405
@@ -1976,19 +1967,18 @@ msgstr ""
msgid "Synchronize MIDI with Audio"
msgstr ""
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
+#: Menus.cpp:686
+msgid "&Link Audio and Label Tracks"
msgstr ""
-#: Menus.cpp:705
-#, fuzzy
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "PridÄti PavadinimÄ
Apibraukime\tCtrl+B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr ""
#: Menus.cpp:706
#, fuzzy
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "PridÄti PavadinimÄ
Grojimo Vietoje\tCtrl+M"
+msgid "Add Label At &Playback Position"
+msgstr "PridÄti PavadinimÄ
Grojimo Vietoje"
#: Menus.cpp:716
msgid "S&ort tracks"
@@ -2014,22 +2004,21 @@ msgstr ""
msgid "Effe&ct"
msgstr "Efe&ktai"
-#: ../src/Menus.cpp:468
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "Kartoti Buvusį EfektÄ
\tCtrl+R"
-
#: ../src/Menus.cpp:494
msgid "&Analyze"
msgstr "&Analizuoti"
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
+
#: Menus.cpp:692
msgid "Plot Spectrum..."
msgstr ""
# i18n-hint: The name of the Help menu
# i18n-hint: The name of the Help menu
-#: ../src/Menus.cpp:524
-#: ../src/Menus.cpp:540
+#: ../src/Menus.cpp:524 ../src/Menus.cpp:540
msgid "&Help"
msgstr "&Pagalba"
@@ -2041,8 +2030,8 @@ msgstr ""
msgid "&Show Welcome Message..."
msgstr ""
-#: Menus.cpp:736
-msgid "&Index..."
+#: Menus.cpp:958
+msgid "&Help..."
msgstr ""
#: Menus.cpp:959
@@ -2061,181 +2050,149 @@ msgstr "&Paleisti BandymÄ
..."
msgid "&Audio Device Info..."
msgstr ""
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
msgstr ""
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
msgstr ""
#: ../src/Menus.cpp:549
-msgid "Selection Tool\tF1"
-msgstr "Apibraukimo Įrankis\tF1"
+msgid "Selection Tool"
+msgstr "Apibraukimo Įrankis"
#: ../src/Menus.cpp:550
-msgid "Envelope Tool\tF2"
-msgstr "AmplitudÄs Korektorius\tF2"
+msgid "Envelope Tool"
+msgstr "AmplitudÄs Korektorius"
#: ../src/Menus.cpp:551
-msgid "Draw Tool\tF3"
-msgstr "Piešimo įrankis\tF3"
+msgid "Draw Tool"
+msgstr "Piešimo įrankis"
#: ../src/Menus.cpp:552
-msgid "Zoom Tool\tF4"
-msgstr "Priartinimo įrankis\tF4"
+msgid "Zoom Tool"
+msgstr "Priartinimo įrankis"
#: ../src/Menus.cpp:553
-msgid "Time Shift Tool\tF5"
-msgstr "Laiko perkÄlimo įrankis\tF5"
+msgid "Time Shift Tool"
+msgstr "Laiko perkÄlimo įrankis"
#: ../src/Menus.cpp:554
-msgid "Multi Tool\tF6"
-msgstr "Multi Įrankis\tF6"
+msgid "Multi Tool"
+msgstr "Multi Įrankis"
#: ../src/Menus.cpp:556
-msgid "Next Tool\tD"
-msgstr "Kitas įrankis\tD"
+msgid "Next Tool"
+msgstr "Kitas įrankis"
#: ../src/Menus.cpp:557
-msgid "Previous Tool\tA"
-msgstr "BuvÄs Ä®rankis\tA"
+msgid "Previous Tool"
+msgstr "BuvÄs Ä®rankis"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
-msgstr ""
-
-#: ../src/Menus.cpp:560
-msgid "Stop\tS"
-msgstr "Stop\tS"
-
-#: ../src/Menus.cpp:561
-msgid "Pause\tP"
-msgstr "PauzÄ\tP"
-
-#: ../src/Menus.cpp:562
-msgid "Record\tR"
-msgstr "Įrašyti\tR"
-
-#: Menus.cpp:999
-msgid "Record Append\tShift+R"
+msgid "Play/Stop"
msgstr ""
#: Menus.cpp:1001
-msgid "Play/Stop and Set Cursor\tShift+A"
+msgid "Play/Stop and Set Cursor"
msgstr ""
#: ../src/Menus.cpp:564
-msgid "Play One Second\t1"
-msgstr "Pagroti vienÄ
sekundÄ\t1"
+msgid "Play One Second"
+msgstr "Pagroti vienÄ
sekundÄ"
#: ../src/Menus.cpp:565
-msgid "Play To Selection\tB"
-msgstr "Pagroti iki Apibraukimo\tB"
-
-#: ../src/Menus.cpp:566
-msgid "Play Looped\tL"
-msgstr "Kartojamas Grojimas\tL"
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
+msgid "Play To Selection"
+msgstr "Pagroti iki Apibraukimo"
#: Menus.cpp:873
-msgid "Play Cut Preview\tC"
+msgid "Play Cut Preview"
msgstr ""
#: ../src/Menus.cpp:572
-msgid "Selection to Start\tShift+Home"
-msgstr "Apibraukti iki Pradžios\tShift+Home"
+msgid "Selection to Start"
+msgstr "Apibraukti iki Pradžios"
#: ../src/Menus.cpp:573
-msgid "Selection to End\tShift+End"
-msgstr "Apibraukti iki Pabaigos\tShift+End"
+msgid "Selection to End"
+msgstr "Apibraukti iki Pabaigos"
#: ../src/Menus.cpp:575
-msgid "DeleteKey\tBackspace"
-msgstr "Trynimo mygtukas\tBackspace"
+msgid "DeleteKey"
+msgstr "Trynimo mygtukas"
#: ../src/Menus.cpp:580
-msgid "DeleteKey2\tDelete"
-msgstr "Trynimo mygtukas2\tDelete"
+msgid "DeleteKey2"
+msgstr "Trynimo mygtukas2"
-#: Menus.cpp:892
-msgid "Seek left short period during playback\tLeft"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
msgstr ""
-#: Menus.cpp:893
-msgid "Seek right short period during playback\tRight"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
msgstr ""
-#: Menus.cpp:894
-msgid "Seek left long period during playback\tShift+Left"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
msgstr ""
-#: Menus.cpp:895
-msgid "Seek right long period during playback\tShift+Right"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
msgstr ""
#: Menus.cpp:899
-msgid "Move Focus to Previous Track\tUp"
+msgid "Move Focus to Previous Track"
msgstr ""
-#: Menus.cpp:900
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
msgstr ""
#: Menus.cpp:901
-msgid "Move Focus to Next Track\tDown"
+msgid "Move Focus to Next Track"
msgstr ""
-#: Menus.cpp:902
-msgid "Move Focus to Next and Change Selection\tShift+Down"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
msgstr ""
#: Menus.cpp:903
-msgid "Toggle Focused Track\tReturn"
-msgstr ""
-
-#: Menus.cpp:904
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr ""
-
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
+msgid "Toggle Focused Track"
msgstr ""
#: ../src/Menus.cpp:585
-msgid "Cursor Left\tLeft"
-msgstr "PelÄ Ä¯ kairÄ \tLeft"
+msgid "Cursor Left"
+msgstr "PelÄ Ä¯ kairÄ "
#: ../src/Menus.cpp:586
-msgid "Cursor Right\tRight"
-msgstr "PelÄ Ä¯ deÅ¡inÄ\tRight"
+msgid "Cursor Right"
+msgstr "PelÄ Ä¯ deÅ¡inÄ"
#: Menus.cpp:820
-msgid "Cursor Short Jump Left\t,"
+msgid "Cursor Short Jump Left"
msgstr ""
#: Menus.cpp:821
-msgid "Cursor Short Jump Right\t."
+msgid "Cursor Short Jump Right"
msgstr ""
#: Menus.cpp:822
-msgid "Cursor Long Jump Left\tShift+,"
+msgid "Cursor Long Jump Left"
msgstr ""
#: Menus.cpp:823
-msgid "Cursor Long Jump Right\tShift+."
+msgid "Cursor Long Jump Right"
msgstr ""
#: ../src/Menus.cpp:587
-msgid "Selection Extend Left\tShift+Left"
-msgstr "ApibraukimÄ
pratÄsti į kairÄ\tShift+Left"
+msgid "Selection Extend Left"
+msgstr "ApibraukimÄ
pratÄsti į kairÄ"
#: ../src/Menus.cpp:588
-msgid "Selection Extend Right\tShift+Right"
-msgstr "ApibraukimÄ
pratÄsti į deÅ¡inÄ\tShift+Right"
+msgid "Selection Extend Right"
+msgstr "ApibraukimÄ
pratÄsti į deÅ¡inÄ"
#: Menus.cpp:828
msgid "Set (or Extend) Left Selection"
@@ -2246,51 +2203,51 @@ msgid "Set (or Extend) Right Selection"
msgstr ""
#: ../src/Menus.cpp:589
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "Sumažinti apibraukimÄ
į deÅ¡inÄ\tCtrl+Shift+Right"
+msgid "Selection Contract Left"
+msgstr "Sumažinti apibraukimÄ
į deÅ¡inÄ"
#: ../src/Menus.cpp:590
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "Sumažinti apibraukimÄ
į kairÄ\tCtrl+Shift+Left"
+msgid "Selection Contract Right"
+msgstr "Sumažinti apibraukimÄ
į kairÄ"
#: Menus.cpp:916
-msgid "Change pan on focused track\tShift+P"
+msgid "Change pan on focused track"
msgstr ""
#: Menus.cpp:917
-msgid "Pan left on focused track\tAlt+Shift+Left"
+msgid "Pan left on focused track"
msgstr ""
#: Menus.cpp:918
-msgid "Pan right on focused track\tAlt+Shift+Right"
+msgid "Pan right on focused track"
msgstr ""
#: Menus.cpp:919
-msgid "Change gain on focused track\tShift+G"
+msgid "Change gain on focused track"
msgstr ""
#: Menus.cpp:920
-msgid "Increase gain on focused track\tAlt+Shift+Up"
+msgid "Increase gain on focused track"
msgstr ""
#: Menus.cpp:921
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
+msgid "Decrease gain on focused track"
msgstr ""
#: Menus.cpp:922
-msgid "Open menu on focused track\tShift+M"
+msgid "Open menu on focused track"
msgstr ""
#: Menus.cpp:923
-msgid "Mute/Unmute focused track\tShift+U"
+msgid "Mute/Unmute focused track"
msgstr ""
#: Menus.cpp:924
-msgid "Solo/Unsolo focused track\tShift+S"
+msgid "Solo/Unsolo focused track"
msgstr ""
#: Menus.cpp:925
-msgid "Close focused track\tShift+C"
+msgid "Close focused track"
msgstr ""
#: Menus.cpp:845
@@ -2302,7 +2259,35 @@ msgid "Snap To Off"
msgstr ""
#: Menus.cpp:1071
-msgid "Full screen on/off\tF11"
+msgid "Full screen on/off"
+msgstr ""
+
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr ""
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr ""
+
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr ""
+
+#: Menus.cpp:1074
+msgid "Adjust input source"
msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
@@ -2363,8 +2348,8 @@ msgstr "Pirma turite pasirinkti takelį."
#: ../src/Menus.cpp:1248
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "Kartoti %s\tCtrl+R"
+msgid "Repeat %s"
+msgstr "Kartoti %s"
#: ../src/Menus.cpp:1352
msgid "There are no label tracks to export."
@@ -2395,8 +2380,7 @@ msgstr "NÄra ko atÅ¡aukti"
msgid "Nothing to redo"
msgstr "NÄra ko sugrÄ
žinti"
-#: ../src/EditToolBar.cpp:148
-#: ../src/Menus.cpp:1713
+#: ../src/EditToolBar.cpp:148 ../src/Menus.cpp:1713
msgid "Cut"
msgstr "Iškirpti"
@@ -2412,9 +2396,7 @@ msgstr ""
msgid "Split-cut to the clipboard"
msgstr ""
-#: ../src/EditToolBar.cpp:152
-#: ../src/Menus.cpp:1818
-#: ../src/Menus.cpp:1862
+#: ../src/EditToolBar.cpp:152 ../src/Menus.cpp:1818 ../src/Menus.cpp:1862
msgid "Paste"
msgstr "Įkelti"
@@ -2422,8 +2404,7 @@ msgstr "Įkelti"
msgid "Pasted text from the clipboard"
msgstr ""
-#: ../src/Menus.cpp:1818
-#: ../src/Menus.cpp:1862
+#: ../src/Menus.cpp:1818 ../src/Menus.cpp:1862
msgid "Pasted from the clipboard"
msgstr "Ä®terpta iÅ¡ iÅ¡kirptinÄs"
@@ -2475,8 +2456,7 @@ msgstr ""
msgid "Silenced selected tracks for %.2f seconds at %.2f"
msgstr "Nutildyti pasirinkti takeliai %.2f sekundÄm %.2f ruože"
-#: ../src/Menus.cpp:1928
-#: ../src/effects/Silence.h:33
+#: ../src/Menus.cpp:1928 ../src/effects/Silence.h:33
msgid "Silence"
msgstr "Tyla"
@@ -2560,8 +2540,7 @@ msgstr ""
msgid "Disjoined labeled regions"
msgstr ""
-#: ../src/Menus.cpp:2009
-#: ../src/TrackPanel.cpp:4134
+#: ../src/Menus.cpp:2009 ../src/TrackPanel.cpp:4134
msgid "Split"
msgstr "Suskaldyti"
@@ -2577,15 +2556,6 @@ msgstr ""
msgid "Split at labels"
msgstr "Išskirti pavadinimuose"
-#: ../src/Menus.cpp:2369
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "Kad galÄÄiau nupieÅ¡ti grafikÄ
, visi pasirinkti takeliai turi bÅ«ti to paÄio dažnio."
-
-#: ../src/Menus.cpp:2395
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "Per daug audio pasirinkta. Tik %.1f sekundÄs bus iÅ¡analizuotos."
-
#: ../src/Menus.cpp:2660
#, c-format
msgid "Imported labels from '%s'"
@@ -2703,9 +2673,7 @@ msgstr ""
msgid "Created new audio track"
msgstr "Sukurtas naujas audio takelis"
-#: ../src/Menus.cpp:2977
-#: ../src/Menus.cpp:3001
-#: ../src/Menus.cpp:3016
+#: ../src/Menus.cpp:2977 ../src/Menus.cpp:3001 ../src/Menus.cpp:3016
#: ../src/Menus.cpp:3052
msgid "New Track"
msgstr "Naujas Takelis"
@@ -2787,8 +2755,7 @@ msgstr ""
msgid "Resampled audio track(s)"
msgstr ""
-#: ../src/Mix.cpp:74
-#: ../src/Mix.cpp:82
+#: ../src/Mix.cpp:74 ../src/Mix.cpp:82
msgid "Mix"
msgstr "Sujungti"
@@ -2808,6 +2775,10 @@ msgstr "Spauzdinant iškilo problemų."
msgid "Print"
msgstr "Spauzdinti"
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr ""
+
#: Project.cpp:573
msgid "Main Mix"
msgstr ""
@@ -2821,14 +2792,11 @@ msgstr ""
msgid "(Recovered)"
msgstr ""
-#: ../src/ControlToolBar.cpp:469
-#: ../src/Project.cpp:1707
-#: ../src/TrackPanel.cpp:1208
+#: ../src/Menus.cpp:562
msgid "Record"
msgstr "Įrašyti"
-#: ../src/Project.cpp:1707
-#: ../src/TrackPanel.cpp:1208
+#: ../src/Project.cpp:1707 ../src/TrackPanel.cpp:1208
msgid "Recorded Audio"
msgstr "Įrašytas Audio"
@@ -2849,12 +2817,11 @@ msgstr ""
msgid "Save changes?"
msgstr "Išsaugoti pakeitimus?"
-#: Project.cpp:1684
-msgid "All files|*.*|All supported files|"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
msgstr ""
-#: ../src/Menus.cpp:2595
-#: ../src/Project.cpp:1738
+#: ../src/Menus.cpp:2595 ../src/Project.cpp:1738
msgid "Select one or more audio files..."
msgstr "Pasirinkite vienÄ
ar daugiau audio failų..."
@@ -2881,8 +2848,18 @@ msgstr ""
msgid "Opening old project file"
msgstr ""
-#: ../src/Project.cpp:1821
-#: ../src/Project.cpp:1829
+#: Project.cpp:2073
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr ""
+
+#: ../src/Project.cpp:1821 ../src/Project.cpp:1829
msgid "Error opening file"
msgstr "Klaida atidarant failÄ
"
@@ -2938,10 +2915,12 @@ msgstr "Šis failas buvo išsaugotas naudojantis Audacity %s.\n"
msgid "Can't open project file"
msgstr "Negaliu atidaryti projekto failo."
-#: Project.cpp:2314
+#: Project.cpp:2484
#, c-format
msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
msgstr ""
@@ -2961,17 +2940,22 @@ msgstr ""
msgid "Warning empty project"
msgstr ""
-#: Project.cpp:2591
+#: Project.cpp:2792
#, c-format
msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+"is not writable or the disk is full."
msgstr ""
-#: ../src/Project.cpp:2148
-#: ../src/Project.cpp:2160
+#: ../src/Project.cpp:2148 ../src/Project.cpp:2160
msgid "Error saving project"
msgstr "Klaida iÅ¡saugant projektÄ
"
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
#: ../src/Project.cpp:2200
#, c-format
msgid "Saved %s"
@@ -2982,10 +2966,8 @@ msgstr "Išsaugotas %s"
msgid "Imported '%s'"
msgstr "Importuota '%s'"
-#: ../src/Project.cpp:2236
-#: ../src/Project.cpp:2283
-#: ../src/import/ImportPCM.cpp:403
-#: ../src/import/ImportPCM.cpp:488
+#: ../src/Project.cpp:2236 ../src/Project.cpp:2283
+#: ../src/import/ImportPCM.cpp:403 ../src/import/ImportPCM.cpp:488
#: ../src/import/ImportRaw.cpp:408
msgid "Import"
msgstr "Importuoti"
@@ -3113,8 +3095,7 @@ msgstr "Libsamplerate by Erik de Castro Lopo"
msgid "Libsamplerate error: %d\n"
msgstr "Libsamplerate klaida: %d\n"
-#: ../src/Resample.cpp:233
-#: ../src/Resample.cpp:243
+#: ../src/Resample.cpp:233 ../src/Resample.cpp:243
msgid "Resampling disabled."
msgstr "Perdarymas išjungtas"
@@ -3133,6 +3114,163 @@ msgstr ""
msgid "32-bit float"
msgstr ""
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
+
+#: ../src/export/ExportMultiple.cpp:600 ../src/prefs/DirectoriesPrefs.cpp:82
+msgid "Choose..."
+msgstr "Nurodyti..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
+
+#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
+msgid "false"
+msgstr ""
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:82
+msgid "Control"
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:58
+msgid "Mixer"
+msgstr ""
+
+#: toolbars/MeterToolBar.cpp:49
+msgid "Meter"
+msgstr ""
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
+#: toolbars/DeviceToolBar.cpp:54
+msgid "Device"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:81
+msgid "Transcription"
+msgstr ""
+
+#: TrackPanel.cpp:452 TrackPanel.cpp:453
+msgid "Track Panel"
+msgstr ""
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: ../src/export/ExportMultiple.cpp:636
+msgid "Tracks"
+msgstr "Takelius"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
#: Screenshot.cpp:384
msgid "Saved "
msgstr ""
@@ -3141,6 +3279,10 @@ msgstr ""
msgid "Error trying to save file: "
msgstr ""
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
#: Sequence.cpp:732 Sequence.cpp:742 Sequence.cpp:749
msgid "Gap detected in project file\n"
msgstr ""
@@ -3279,6 +3421,10 @@ msgstr ""
msgid "Save Metadata As:"
msgstr ""
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
#: Theme.cpp:629
#, c-format
msgid "Audacity could not write file:\n"
@@ -3351,6 +3497,14 @@ msgstr ""
msgid "Audacity Timer Record"
msgstr ""
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
#: SmartRecordDialog.cpp:223
msgid "Recording start"
msgstr ""
@@ -3390,35 +3544,23 @@ msgstr ""
msgid "Audacity Timer Record - Waiting for Start"
msgstr ""
-#: TrackPanel.cpp:452 TrackPanel.cpp:453
-msgid "Track Panel"
-msgstr ""
-
-#: ../src/AStatus.cpp:81
-#: ../src/TrackPanel.cpp:822
-#: ../src/prefs/FileFormatPrefs.cpp:105
-#: ../src/prefs/QualityPrefs.cpp:91
+#: ../src/AStatus.cpp:81 ../src/TrackPanel.cpp:822
+#: ../src/prefs/FileFormatPrefs.cpp:105 ../src/prefs/QualityPrefs.cpp:91
msgid "Other..."
msgstr "Kitas..."
-#: ../src/TrackPanel.cpp:830
-#: ../src/TrackPanel.cpp:851
-#: ../src/TrackPanel.cpp:860
-#: ../src/TrackPanel.cpp:868
+#: ../src/TrackPanel.cpp:830 ../src/TrackPanel.cpp:851
+#: ../src/TrackPanel.cpp:860 ../src/TrackPanel.cpp:868
msgid "Name..."
msgstr "Pavadinimas..."
-#: ../src/TrackPanel.cpp:832
-#: ../src/TrackPanel.cpp:853
-#: ../src/TrackPanel.cpp:864
-#: ../src/TrackPanel.cpp:870
+#: ../src/TrackPanel.cpp:832 ../src/TrackPanel.cpp:853
+#: ../src/TrackPanel.cpp:864 ../src/TrackPanel.cpp:870
msgid "Move Track Up"
msgstr "Pakelti takelį"
-#: ../src/TrackPanel.cpp:833
-#: ../src/TrackPanel.cpp:854
-#: ../src/TrackPanel.cpp:865
-#: ../src/TrackPanel.cpp:871
+#: ../src/TrackPanel.cpp:833 ../src/TrackPanel.cpp:854
+#: ../src/TrackPanel.cpp:865 ../src/TrackPanel.cpp:871
msgid "Move Track Down"
msgstr "Nuleisti takelį"
@@ -3458,13 +3600,15 @@ msgstr "Paversti Stereo Takeliu"
msgid "Split Stereo Track"
msgstr "Suskaldyti Stereo Takelį"
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr ""
+
#: ../src/TrackPanel.cpp:846
msgid "Set Sample Format"
msgstr "Nustatyti Pavyzdžio FormatÄ
"
-#: ../src/AStatus.cpp:352
-#: ../src/TrackPanel.cpp:848
-#: ../src/TrackPanel.cpp:4322
+#: ../src/AStatus.cpp:352 ../src/TrackPanel.cpp:848 ../src/TrackPanel.cpp:4322
msgid "Set Rate"
msgstr "Nustatyti tempÄ
"
@@ -3540,8 +3684,7 @@ msgstr "Pavadinimo Redagavimas"
msgid "Adjusted envelope."
msgstr "Nustatyta amplitudÄ."
-#: ../src/TrackPanel.cpp:1905
-#: ../src/prefs/MousePrefs.cpp:98
+#: ../src/TrackPanel.cpp:1905 ../src/prefs/MousePrefs.cpp:98
msgid "Envelope"
msgstr "AmplitudÄ"
@@ -3602,25 +3745,21 @@ msgstr "Pajudinta balanso slinktis"
# i18n-hint: Title of the Gain slider, used to adjust the volume
# i18n-hint: Title of the Gain slider, used to adjust the volume
-#: ../src/TrackPanel.cpp:2807
-#: ../src/TrackPanel.cpp:4726
+#: ../src/TrackPanel.cpp:2807 ../src/TrackPanel.cpp:4726
msgid "Gain"
msgstr "Garsumas"
# i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
# i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: ../src/TrackPanel.cpp:2807
-#: ../src/TrackPanel.cpp:4733
+#: ../src/TrackPanel.cpp:2807 ../src/TrackPanel.cpp:4733
msgid "Pan"
msgstr "Balansas"
-#: ../src/TrackPanel.cpp:4387
-#: ../src/effects/ChangePitch.cpp:277
+#: ../src/TrackPanel.cpp:4387 ../src/effects/ChangePitch.cpp:277
msgid "up"
msgstr "viršun"
-#: ../src/TrackPanel.cpp:4388
-#: ../src/effects/ChangePitch.cpp:277
+#: ../src/TrackPanel.cpp:4388 ../src/effects/ChangePitch.cpp:277
msgid "down"
msgstr "apaÄion"
@@ -3661,14 +3800,6 @@ msgstr ""
msgid "Adjusted gain"
msgstr ""
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr ""
-
#: TrackPanel.cpp:5428
msgid "Can't delete track with active audio"
msgstr ""
@@ -3689,8 +3820,7 @@ msgstr "Kairysis,"
msgid "Right, "
msgstr "Kairysis,"
-#: ../src/TrackPanel.cpp:4116
-#: ../src/TrackPanel.cpp:4225
+#: ../src/TrackPanel.cpp:4116 ../src/TrackPanel.cpp:4225
#, c-format
msgid "Changed '%s' to %s"
msgstr "Pakeista '%s' į %s"
@@ -3704,6 +3834,11 @@ msgstr "Kanalas"
msgid "Split stereo track '%s'"
msgstr "Išskirti stereo takelį '%s'"
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
#: ../src/TrackPanel.cpp:4153
#, c-format
msgid "Made '%s' a stereo track"
@@ -3730,8 +3865,7 @@ msgstr "Formato Pakeitimas"
msgid "Change lower speed limit (%) to:"
msgstr "Pakeisti mažesnio greiÄio limitÄ
(%) į:"
-#: ../src/TrackPanel.cpp:4352
-#: ../src/TrackPanel.cpp:4353
+#: ../src/TrackPanel.cpp:4352 ../src/TrackPanel.cpp:4353
msgid "Lower speed limit"
msgstr "Žemesnis greiÄio limitas"
@@ -3739,8 +3873,7 @@ msgstr "Žemesnis greiÄio limitas"
msgid "Change upper speed limit (%) to:"
msgstr "Pakeisti didesnio greiÄio limitÄ
(%) į:"
-#: ../src/TrackPanel.cpp:4359
-#: ../src/TrackPanel.cpp:4360
+#: ../src/TrackPanel.cpp:4359 ../src/TrackPanel.cpp:4360
msgid "Upper speed limit"
msgstr "Didesnio greiÄio limitas"
@@ -3782,6 +3915,10 @@ msgstr ""
msgid "Face size"
msgstr ""
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr ""
+
#: ../src/TrackPanel.cpp:4701
msgid "Mute"
msgstr "Begarso"
@@ -3860,8 +3997,9 @@ msgstr "Priedas 1 iš %i"
msgid "Plugins %i to %i"
msgstr "Priedai %i iš %i"
-#: commands/CommandManager.cpp:857
-msgid "Disallowed for some reason. Try selecting some audio first?"
+#: commands/CommandManager.cpp:923
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
msgstr ""
#: commands/CommandManager.cpp:724
@@ -4008,31 +4146,19 @@ msgstr ""
msgid "Processing Auto Duck..."
msgstr ""
-#: ../src/LangChoice.cpp:94
-#: ../src/Tags.cpp:721
-#: ../src/effects/Amplify.cpp:187
-#: ../src/effects/AvcCompressor.cpp:716
-#: ../src/effects/BassBoost.cpp:332
-#: ../src/effects/ChangePitch.cpp:393
-#: ../src/effects/ChangeSpeed.cpp:379
-#: ../src/effects/ChangeTempo.cpp:284
-#: ../src/effects/Compressor.cpp:484
-#: ../src/effects/Echo.cpp:242
-#: ../src/effects/Equalization.cpp:731
-#: ../src/effects/Filter.cpp:482
-#: ../src/effects/Normalize.cpp:258
-#: ../src/effects/Phaser.cpp:576
-#: ../src/effects/Repeat.cpp:251
-#: ../src/effects/VST/VSTEffect.cpp:98
-#: ../src/effects/VST/VSTEffect.cpp:455
-#: ../src/effects/Wahwah.cpp:563
-#: ../src/effects/ladspa/LadspaEffect.cpp:498
+#: ../src/LangChoice.cpp:94 ../src/Tags.cpp:721 ../src/effects/Amplify.cpp:187
+#: ../src/effects/AvcCompressor.cpp:716 ../src/effects/BassBoost.cpp:332
+#: ../src/effects/ChangePitch.cpp:393 ../src/effects/ChangeSpeed.cpp:379
+#: ../src/effects/ChangeTempo.cpp:284 ../src/effects/Compressor.cpp:484
+#: ../src/effects/Echo.cpp:242 ../src/effects/Equalization.cpp:731
+#: ../src/effects/Filter.cpp:482 ../src/effects/Normalize.cpp:258
+#: ../src/effects/Phaser.cpp:576 ../src/effects/Repeat.cpp:251
+#: ../src/effects/VST/VSTEffect.cpp:98 ../src/effects/VST/VSTEffect.cpp:455
+#: ../src/effects/Wahwah.cpp:563 ../src/effects/ladspa/LadspaEffect.cpp:498
#: ../src/effects/nyquist/Nyquist.cpp:736
#: ../src/effects/nyquist/Nyquist.cpp:883
-#: ../src/effects/nyquist/Nyquist.cpp:949
-#: ../src/prefs/FileFormatPrefs.cpp:471
-#: ../src/prefs/PrefsDialog.cpp:100
-#: ../src/widgets/Warning.cpp:56
+#: ../src/effects/nyquist/Nyquist.cpp:949 ../src/prefs/FileFormatPrefs.cpp:471
+#: ../src/prefs/PrefsDialog.cpp:100 ../src/widgets/Warning.cpp:56
msgid "OK"
msgstr "OK"
@@ -4095,14 +4221,12 @@ msgstr "Keisti SkardumÄ
"
msgid "Change Pitch without Changing Tempo"
msgstr "Pakeisti SkardumÄ
NekeiÄiant Tempo"
-#: ../src/effects/ChangePitch.cpp:247
-#: ../src/effects/ChangeSpeed.cpp:287
+#: ../src/effects/ChangePitch.cpp:247 ../src/effects/ChangeSpeed.cpp:287
#: ../src/effects/ChangeTempo.cpp:164
msgid "by Vaughan Johnson && Dominic Mazzoni"
msgstr "by Vaughan Johnson && Dominic Mazzoni"
-#: ../src/effects/ChangePitch.cpp:252
-#: ../src/effects/ChangeTempo.cpp:169
+#: ../src/effects/ChangePitch.cpp:252 ../src/effects/ChangeTempo.cpp:169
msgid "using SoundTouch, by Olli Parviainen"
msgstr "naudojant SoundTouch, by Olli Parviainen"
@@ -4151,10 +4275,8 @@ msgstr ""
msgid "From frequency in hertz"
msgstr ""
-#: ../src/effects/ChangePitch.cpp:284
-#: ../src/effects/ChangePitch.cpp:330
-#: ../src/effects/ChangeSpeed.cpp:351
-#: ../src/effects/ChangeTempo.cpp:223
+#: ../src/effects/ChangePitch.cpp:284 ../src/effects/ChangePitch.cpp:330
+#: ../src/effects/ChangeSpeed.cpp:351 ../src/effects/ChangeTempo.cpp:223
#: ../src/effects/ChangeTempo.cpp:254
msgid "to"
msgstr "į"
@@ -4163,8 +4285,7 @@ msgstr "į"
msgid "To frequency in seconds"
msgstr ""
-#: ../src/effects/ChangePitch.cpp:353
-#: ../src/effects/ChangeSpeed.cpp:305
+#: ../src/effects/ChangePitch.cpp:353 ../src/effects/ChangeSpeed.cpp:305
#: ../src/effects/ChangeTempo.cpp:182
msgid "Percent Change:"
msgstr "Procentinis Pakeitimas:"
@@ -4182,8 +4303,7 @@ msgstr "Keisti SkardumÄ
..."
msgid "Changing Pitch"
msgstr "KeiÄiamas Skardumas"
-#: ../src/effects/ChangeSpeed.cpp:40
-#: ../src/effects/ChangeTempo.cpp:43
+#: ../src/effects/ChangeSpeed.cpp:40 ../src/effects/ChangeTempo.cpp:43
#, c-format
msgid "Applied effect: %s %.1f%%"
msgstr "Priimtas efektas: %s %.1f%%"
@@ -4334,12 +4454,11 @@ msgstr ""
msgid "Decay Time"
msgstr ""
-#: ../src/effects/Compressor.cpp:469
-msgid "Normalize to 0dB after compressing"
-msgstr "Normalizuoti iki 0dB po suspaudimao"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
+msgstr ""
#: effects/Compressor.cpp:563
-#, c-format
#, fuzzy
msgid "Threshold %d dB"
msgstr "Riba: %d dB"
@@ -4370,7 +4489,6 @@ msgid "%.1f:1"
msgstr ""
#: effects/Compressor.cpp:575
-#, c-format
#, fuzzy
msgid "Attack Time %.1f secs"
msgstr "Iki Pilno Garso: %.1f sek"
@@ -4393,6 +4511,10 @@ msgstr "Kompresorius..."
msgid "Applying Dynamic Range Compression..."
msgstr "Pritaikomas Dinaminis Dažnio Kompresorius..."
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
msgstr ""
@@ -4412,19 +4534,6 @@ msgid "Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr ""
-
#: effects/Contrast.cpp:231
msgid "Contrast Analyzer"
msgstr ""
@@ -4458,6 +4567,11 @@ msgstr ""
msgid "Foreground end time"
msgstr ""
+#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
+#: effects/Contrast.cpp:289
+msgid "Measured"
+msgstr ""
+
#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
msgid "Use selection"
msgstr ""
@@ -4502,16 +4616,8 @@ msgstr ""
msgid "Help for WCAG2 Audio Contrast Analyzer"
msgstr ""
-#: toolbars/ControlToolBar.cpp:82
-msgid "Control"
-msgstr ""
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
msgstr ""
#: effects/Contrast.cpp:328 effects/Contrast.cpp:336 effects/Contrast.cpp:344
@@ -4622,18 +4728,6 @@ msgstr ""
msgid "Data gathered"
msgstr ""
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr ""
-
#: effects/DtmfGen.cpp:47
msgid "DTMF Tone Generator"
msgstr ""
@@ -4693,8 +4787,7 @@ msgstr ""
msgid "Applied effect: %s delay = %f seconds, decay factor = %f"
msgstr "Priimtas efektas: %s uždelsimas = %f sekundÄs, nykimo faktorius = %f"
-#: ../src/effects/Echo.cpp:39
-#: ../src/effects/Echo.cpp:177
+#: ../src/effects/Echo.cpp:39 ../src/effects/Echo.cpp:177
msgid "Echo"
msgstr "Aidas"
@@ -4726,8 +4819,7 @@ msgstr ""
msgid "Previewing"
msgstr ""
-#: ../src/ControlToolBar.cpp:721
-#: ../src/effects/Effect.cpp:329
+#: ../src/ControlToolBar.cpp:721 ../src/effects/Effect.cpp:329
msgid "Error while opening sound device. Please check the output device settings and the project sample rate."
msgstr "Klaida atidarinÄjant garso tvarkykles. PraÅ¡au pasitikrinkite iÅ¡vesties įrenginio nuostatas ir projekto modelio dažnį."
@@ -4760,6 +4852,10 @@ msgstr ""
msgid "custom"
msgstr ""
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr ""
+
#: effects/Equalization.cpp:971
msgid "Equalization, by Martyn Shaw && Mitch Golden"
msgstr ""
@@ -4960,10 +5056,6 @@ msgstr ""
msgid "Analyser"
msgstr ""
-#: toolbars/MixerToolBar.cpp:58
-msgid "Mixer"
-msgstr ""
-
#: effects/LoadEffects.cpp:116
msgid "Simulator"
msgstr ""
@@ -5199,10 +5291,6 @@ msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr ""
#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
-msgid "false"
-msgstr ""
-
-#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
msgid "true"
msgstr ""
@@ -5260,8 +5348,7 @@ msgstr ""
msgid "Dry Wet"
msgstr ""
-#: ../src/effects/Phaser.cpp:497
-#: ../src/effects/Wahwah.cpp:468
+#: ../src/effects/Phaser.cpp:497 ../src/effects/Wahwah.cpp:468
msgid "LFO Frequency (Hz):"
msgstr "LFO Dažnis (Hz):"
@@ -5269,8 +5356,7 @@ msgstr "LFO Dažnis (Hz):"
msgid "LFO frequency in hertz"
msgstr ""
-#: ../src/effects/Phaser.cpp:513
-#: ../src/effects/Wahwah.cpp:484
+#: ../src/effects/Phaser.cpp:513 ../src/effects/Wahwah.cpp:484
msgid "LFO Start Phase (deg.):"
msgstr "LFO Pradžios FazÄ (laipsn.):"
@@ -5329,8 +5415,7 @@ msgstr "Pakartota %d kartus"
msgid "Tracks are too long to repeat the selection."
msgstr "Takeliai per ilgi, kad bÅ«tų galima pakartoti apibraukimÄ
."
-#: ../src/effects/Repeat.cpp:58
-#: ../src/effects/Repeat.cpp:62
+#: ../src/effects/Repeat.cpp:58 ../src/effects/Repeat.cpp:62
msgid "Repeat"
msgstr "Kartoti"
@@ -5343,8 +5428,7 @@ msgstr "Kiek kartų kartoti:"
msgid "New selection length: hh:mm:ss"
msgstr ""
-#: ../src/effects/Repeat.cpp:241
-#: ../src/effects/Repeat.cpp:280
+#: ../src/effects/Repeat.cpp:241 ../src/effects/Repeat.cpp:280
msgid "New selection length: "
msgstr "Naujas apibraukimo ilgis:"
@@ -5555,20 +5639,37 @@ msgstr ""
msgid "Truncate Silence"
msgstr ""
-#: effects/TruncSilence.cpp:346
-msgid "Max silence duration:"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr ""
+
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
msgstr ""
#: prefs/AudioIOPrefs.cpp:175 prefs/AudioIOPrefs.cpp:178
msgid "milliseconds"
msgstr ""
+#: effects/TruncSilence.cpp:346
+msgid "Max silence duration:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ""
+
#: effects/TruncSilence.cpp:351
msgid "Threshold for silence:"
msgstr ""
-#: effects/TruncSilence.cpp:375
-msgid " Duration must be at least 1 millisecond"
+#: effects/TruncSilence.cpp:506
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
msgstr ""
#: BatchCommands.cpp:236 effects/TruncSilence.cpp:84 effects/TruncSilence.h:29
@@ -5579,17 +5680,56 @@ msgstr ""
msgid "Truncating Silence..."
msgstr ""
-#: ../src/effects/VST/VSTEffect.cpp:180
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "Atsiprašome, bet VST Efektai negali būti vygdomi stereo takeluose, kur individualūs kanalai nesutampa."
+#: ../src/effects/ladspa/LadspaEffect.cpp:452
+msgid "Effect Settings"
+msgstr "Efektų nustatymai"
+
+#: ../src/effects/ladspa/LadspaEffect.cpp:435
+#: ../src/effects/ladspa/LadspaEffect.cpp:443
+#: ../src/prefs/QualityPrefs.cpp:160
+msgid "None"
+msgstr "Nieko"
+
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
-#: ../src/effects/VST/VSTEffect.cpp:196
-msgid "Can't process replacing"
-msgstr "Negaliu pradÄti pakeitimo"
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
-#: ../src/effects/VST/VSTEffect.cpp:410
-msgid "VST Plug-in parameters:"
-msgstr "VST Priedų parametrai:"
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr ""
#: ../src/effects/Wahwah.cpp:41
#, c-format
@@ -5637,22 +5777,11 @@ msgstr "Vykdomas Efektas: %s"
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr ""
-#: ../src/effects/ladspa/LadspaEffect.cpp:435
-#: ../src/effects/ladspa/LadspaEffect.cpp:443
-#: ../src/prefs/QualityPrefs.cpp:160
-msgid "None"
-msgstr "Nieko"
-
#: ../src/effects/ladspa/LadspaEffect.cpp:437
msgid "Author: "
msgstr "Autorius:"
-#: ../src/effects/ladspa/LadspaEffect.cpp:452
-msgid "Effect Settings"
-msgstr "Efektų nustatymai"
-
-#: ../src/effects/Silence.cpp:127
-#: ../src/effects/ToneGen.cpp:306
+#: ../src/effects/Silence.cpp:127 ../src/effects/ToneGen.cpp:306
msgid "Length (seconds)"
msgstr "Ilgis (sekundÄmis)"
@@ -5843,9 +5972,21 @@ msgstr "Visas projektas eksportuojamas naudojantis komandinÄs eilutÄs dekoder
msgid "Command Output"
msgstr ""
-#: export/ExportFFmpeg.cpp:59
+#: export/ExportFFmpeg.cpp:61
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
#: export/ExportFFmpeg.cpp:394
@@ -5913,6 +6054,10 @@ msgstr ""
msgid "AAC Export Setup"
msgstr ""
+#: export/ExportOGG.cpp:86
+msgid "Quality:"
+msgstr ""
+
#: export/ExportFFmpegDialogs.cpp:217
msgid "Specify AMR-NB Options"
msgstr ""
@@ -6046,12 +6191,8 @@ msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n
"Recommended - 192000"
msgstr ""
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr ""
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid "Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
@@ -6070,10 +6211,10 @@ msgstr ""
msgid "Cutoff Bandwidth:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:947
+#: export/ExportFFmpegDialogs.cpp:936
msgid "Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:949
@@ -6262,12 +6403,12 @@ msgstr ""
msgid "AC3 Files (FFmpeg)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:56
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:57
@@ -6378,6 +6519,17 @@ msgstr ""
msgid "FLAC Files"
msgstr ""
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
#: export/ExportFLAC.cpp:93
msgid "Exporting the selected audio as FLAC"
msgstr ""
@@ -6402,8 +6554,7 @@ msgstr ""
msgid "Cannot export MP2 with this sample rate and bit rate"
msgstr ""
-#: ../src/export/ExportMP3.cpp:1345
-#: ../src/export/ExportOGG.cpp:53
+#: ../src/export/ExportMP3.cpp:1345 ../src/export/ExportOGG.cpp:53
msgid "Unable to open target file for writing"
msgstr "Negaliu atidaryti failo įrašymui"
@@ -6602,8 +6753,7 @@ msgstr ""
msgid "MP3 export library not found"
msgstr ""
-#: ../src/export/ExportMultiple.cpp:367
-#: ../src/export/ExportMultiple.cpp:474
+#: ../src/export/ExportMultiple.cpp:367 ../src/export/ExportMultiple.cpp:474
#: ../src/export/ExportMultiple.cpp:562
msgid "Export Multiple"
msgstr "Daugialypis Eksportavimas"
@@ -6634,11 +6784,6 @@ msgstr ""
msgid "Export location:"
msgstr "Eksportavimo vieta:"
-#: ../src/export/ExportMultiple.cpp:600
-#: ../src/prefs/DirectoriesPrefs.cpp:82
-msgid "Choose..."
-msgstr "Nurodyti..."
-
#: export/ExportMultiple.cpp:205
msgid "Create"
msgstr ""
@@ -6663,10 +6808,6 @@ msgstr "Pirmo failo vardas:"
msgid "First file name"
msgstr ""
-#: ../src/export/ExportMultiple.cpp:636
-msgid "Tracks"
-msgstr "Takelius"
-
#: ../src/export/ExportMultiple.cpp:646
msgid "Name files:"
msgstr "Pervadinti failai:"
@@ -6700,25 +6841,44 @@ msgstr ""
msgid "Choose a location to save the exported files"
msgstr "Pasirinkite vietÄ
eksportuotiems failams išsaugoti"
-#: export/ExportMultiple.cpp:480
+#: export/ExportMultiple.cpp:524
#, c-format
-msgid "\"%s\" doesn't exist.\n"
-"\n"
-"Would you like to create it?"
+msgid "Successfully exported the following %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:637 export/ExportMultiple.cpp:772
-msgid "Edit metadata"
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:590
+#: export/ExportMultiple.cpp:527
#, c-format
-msgid "Successfully exported %d file(s)."
+msgid "Export stopped after exporting the following %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:597
+#: export/ExportMultiple.cpp:528
#, c-format
-msgid "Something went wrong after exporting %d file(s)."
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr ""
+
+#: export/ExportMultiple.cpp:480
+#, c-format
+msgid "\"%s\" doesn't exist.\n"
+"\n"
+"Would you like to create it?"
+msgstr ""
+
+#: export/ExportMultiple.cpp:637 export/ExportMultiple.cpp:772
+msgid "Edit metadata"
msgstr ""
#: export/ExportMultiple.cpp:881
@@ -6802,7 +6962,6 @@ msgstr ""
#. i18n-hint: %s will be the error message from libsndfile
#: export/ExportPCM.cpp:436
-#, c-format
#, fuzzy
msgid "Error (file may not have been written): %s"
msgstr "Klaida (failas gali būti neįrašytas): %s"
@@ -6968,8 +7127,11 @@ msgstr ""
msgid "FLAC files"
msgstr ""
-#: ../src/import/ImportLOF.cpp:151
-#: ../src/import/ImportLOF.cpp:177
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr ""
+
+#: ../src/import/ImportLOF.cpp:151 ../src/import/ImportLOF.cpp:177
msgid "List of Files in basic text format"
msgstr "Failų sÄ
rašas teksto formatu"
@@ -6981,10 +7143,8 @@ msgstr "Blogas lango ofsetas LOF faile."
# i18n-hint: You do not need to translate "LOF"
# i18n-hint: You do not need to translate "LOF"
-#: ../src/import/ImportLOF.cpp:270
-#: ../src/import/ImportLOF.cpp:291
-#: ../src/import/ImportLOF.cpp:364
-#: ../src/import/ImportLOF.cpp:384
+#: ../src/import/ImportLOF.cpp:270 ../src/import/ImportLOF.cpp:291
+#: ../src/import/ImportLOF.cpp:364 ../src/import/ImportLOF.cpp:384
msgid "LOF Error"
msgstr "LOF Klaida"
@@ -7137,131 +7297,59 @@ msgstr ""
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr ""
-#: ../src/prefs/PrefsDialog.cpp:84
-msgid "Audio I/O"
-msgstr "Audio I/O"
-
-#: ../src/prefs/AudioIOPrefs.cpp:212
-msgid "1 (Mono)"
-msgstr "1 (Mono)"
-
-#: ../src/prefs/AudioIOPrefs.cpp:213
-msgid "2 (Stereo)"
-msgstr "2 (Stereo)"
-
-#: ../src/prefs/AudioIOPrefs.cpp:80
-msgid "Playback"
-msgstr "Atkūrimas"
-
-#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
-#: toolbars/DeviceToolBar.cpp:54
-msgid "Device"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:122
-msgid "Using:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:123
-msgid "Portaudio v"
-msgstr ""
-
-#: ../src/prefs/AudioIOPrefs.cpp:148
-msgid "Recording"
-msgstr "Įrašymas"
-
-#: prefs/AudioIOPrefs.cpp:139
-msgid "Channels"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:145
-msgid "Playthrough"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:194
-msgid "Effects Preview"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:165
-msgid "Length of preview:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:158
-msgid "Cut Preview"
+#: prefs/BatchPrefs.cpp:53 prefs/BatchPrefs.cpp:54
+msgid "Batch"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:173
-msgid "Preview before cut region:"
+#: prefs/BatchPrefs.cpp:75 prefs/GUIPrefs.cpp:70
+msgid "Behaviors"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:175
-msgid "Preview after cut region:"
+#: prefs/BatchPrefs.cpp:80
+msgid "&Don't apply effects in batch mode"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:168
-msgid "Latency"
+#: prefs/BatchPrefs.cpp:83
+msgid "Cl&eanSpeech Mode (Customized GUI)"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:195
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:198
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr ""
+#: ../src/prefs/PrefsDialog.cpp:89
+msgid "Interface"
+msgstr "Interfeisas"
-#: prefs/AudioIOPrefs.cpp:197
-msgid "Seek Time when playing"
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:187
-msgid "Short period:"
+#: prefs/AudioIOPrefs.cpp:122
+msgid "Using:"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:189
-msgid "Long period:"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:80
+msgid "Playback"
+msgstr "Atkūrimas"
-#: prefs/BatchPrefs.cpp:53 prefs/BatchPrefs.cpp:54
-msgid "Batch"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:148
+msgid "Recording"
+msgstr "Įrašymas"
-#: prefs/BatchPrefs.cpp:75 prefs/GUIPrefs.cpp:70
-msgid "Behaviors"
+#: prefs/AudioIOPrefs.cpp:139
+msgid "Channels"
msgstr ""
-#: prefs/BatchPrefs.cpp:80
-msgid "&Don't apply effects in batch mode"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:212
+msgid "1 (Mono)"
+msgstr "1 (Mono)"
-#: prefs/BatchPrefs.cpp:83
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:213
+msgid "2 (Stereo)"
+msgstr "2 (Stereo)"
-#: ../src/prefs/PrefsDialog.cpp:88
-#: ../src/prefs/PrefsDialog.cpp:216
+#: ../src/prefs/PrefsDialog.cpp:88 ../src/prefs/PrefsDialog.cpp:216
msgid "Directories"
msgstr "Vietos"
@@ -7277,34 +7365,31 @@ msgstr "Vieta:"
msgid "Free Space:"
msgstr "Laisva Vieta:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr ""
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr ""
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
+#: prefs/DirectoriesPrefs.cpp:110
+msgid "Audio cache"
msgstr ""
#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
+msgid "Play and/or record using RAM (useful for slow drives)"
msgstr ""
-#: prefs/DirectoriesPrefs.cpp:110
-msgid "Audio cache"
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
msgstr ""
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
#: ../src/prefs/DirectoriesPrefs.cpp:135
msgid "Choose a location to place the temporary directory"
msgstr "Pasirinkite kur dÄti laikinus failus"
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: ../src/prefs/DirectoriesPrefs.cpp:181
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -7323,220 +7408,141 @@ msgstr "Vieta yra %s neįrašoma"
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "Laikinos vietos keitimas bus priimtas tik perkrovus Audacity"
-#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
-msgid "Import / Export"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:84
-msgid "MP3 Export Library"
-msgstr ""
-
-#: ../src/prefs/FileFormatPrefs.cpp:180
-msgid "MP3 Library Version:"
-msgstr "MP3 Bibliotekos Versija:"
-
-#: prefs/FileFormatPrefs.cpp:93
-msgid "MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:98
-msgid "LAME MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
-msgid "&Download"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:136
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:137
-msgid "When importing audio files"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:140
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:141
-msgid "&Read uncompressed audio files directly from the original (faster)"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:143
-msgid "&Normalize all tracks in project"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:132
-msgid "When saving a project that depends on other audio files"
+#: prefs/GUIPrefs.cpp:42
+msgid "In Browser"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:87
-msgid "Always © all audio into project (safest)"
+#: prefs/GUIPrefs.cpp:43
+msgid "From Internet"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:88
-msgid "&Do not copy any audio"
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:135
-msgid "&Ask user"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:93
-msgid "When exporting tracks to an audio file"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:144
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:97
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
msgstr ""
-#: prefs/BatchPrefs.cpp:91
-msgid "S&how Metadata Editor prior to export step"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
msgstr ""
-#: ../src/prefs/PrefsDialog.cpp:89
-msgid "Interface"
-msgstr "Interfeisas"
+#: ../src/prefs/GUIPrefs.cpp:150
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 dB (negilus ruožas aukÅ¡tos amplitudÄs redagavimui)"
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:157
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 dB (PCM diapazonas 8 bitų modeliams)"
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
+#: prefs/GUIPrefs.cpp:143
+msgid "-60 dB (PCM range of 10 bit samples)"
msgstr ""
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:164
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 dB (PCM diapazonas 16 bitų medeliams)"
-#: prefs/GUIPrefs.cpp:72
-msgid "&Update display while playing"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:171
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 dB (apytikris žmogaus klausos limitas)"
-#: prefs/GUIPrefs.cpp:96
-msgid "Cl&osing last window quits Audacity"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:178
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB (PCM diapazonas 24 bitų modeliams)"
-#: prefs/GUIPrefs.cpp:76
-msgid "Enable &dragging of left and right selection edges"
+#: prefs/SpectrumPrefs.cpp:96
+msgid "Display"
msgstr ""
#: prefs/GUIPrefs.cpp:100
msgid "Er&gonomic order of audio I/O buttons"
msgstr ""
-#: prefs/GUIPrefs.cpp:80
-msgid "Automatically &fit tracks vertically zoomed"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
msgstr ""
-#: prefs/GUIPrefs.cpp:104
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
msgstr ""
-#: prefs/GUIPrefs.cpp:90
-msgid "Editing a &clip can move other clips"
+#: prefs/GUIPrefs.cpp:167
+msgid "Help:"
msgstr ""
-#: prefs/GUIPrefs.cpp:88
-msgid "&Select all audio in project, if none selected"
+#: prefs/GUIPrefs.cpp:96
+msgid "Cl&osing last window quits Audacity"
msgstr ""
#: prefs/GUIPrefs.cpp:90
msgid "&Beep on completion of longer activities"
msgstr ""
-#: prefs/BatchPrefs.cpp:87 prefs/GUIPrefs.cpp:94
-msgid "Show / Hide"
+#: prefs/GUIPrefs.cpp:126
+msgid "Modes"
msgstr ""
-#: prefs/GUIPrefs.cpp:96
-msgid "Enable cut &lines"
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:98
-msgid "Show warnings about &temp files"
+#: prefs/GUIPrefs.cpp:129
+msgid "Don't a&pply effects in batch mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
+#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
+msgid "Import / Export"
msgstr ""
-#: prefs/GUIPrefs.cpp:122
-msgid "Show &Welcome Message at program start up"
+#: prefs/FileFormatPrefs.cpp:137
+msgid "When importing audio files"
msgstr ""
-#: prefs/GUIPrefs.cpp:126
-msgid "Modes"
+#: prefs/FileFormatPrefs.cpp:140
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
msgstr ""
-#: prefs/GUIPrefs.cpp:129
-msgid "Don't a&pply effects in batch mode"
+#: prefs/FileFormatPrefs.cpp:141
+msgid "&Read uncompressed audio files directly from the original (faster)"
msgstr ""
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
+#: prefs/FileFormatPrefs.cpp:143
+msgid "&Normalize all tracks in project"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:150
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 dB (negilus ruožas aukÅ¡tos amplitudÄs redagavimui)"
-
-#: ../src/prefs/GUIPrefs.cpp:157
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 dB (PCM diapazonas 8 bitų modeliams)"
-
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
+#: prefs/FileFormatPrefs.cpp:93
+msgid "When exporting tracks to an audio file"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:164
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 dB (PCM diapazonas 16 bitų medeliams)"
-
-#: ../src/prefs/GUIPrefs.cpp:171
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 dB (apytikris žmogaus klausos limitas)"
-
-#: ../src/prefs/GUIPrefs.cpp:178
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB (PCM diapazonas 24 bitų modeliams)"
-
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
+#: prefs/FileFormatPrefs.cpp:144
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
msgstr ""
-#: prefs/GUIPrefs.cpp:164
-msgid "Other interface choices"
+#: prefs/FileFormatPrefs.cpp:97
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
msgstr ""
-#: prefs/GUIPrefs.cpp:167
-msgid "Help:"
+#: prefs/BatchPrefs.cpp:91
+msgid "S&how Metadata Editor prior to export step"
msgstr ""
-#: prefs/GUIPrefs.cpp:168
-msgid "Solo Button:"
+#: prefs/ImportExportPrefs.cpp:84
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
msgstr ""
#: ../src/prefs/PrefsDialog.cpp:90
@@ -7567,17 +7573,22 @@ msgstr "Pranešimas: Paspaudus Cmd+Q išeisite. Visi kiti mygtukai galioja."
msgid "&Defaults"
msgstr ""
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr ""
+
#: ../src/prefs/KeyConfigPrefs.cpp:79
msgid "Key Combination"
msgstr "Klavišų Kombinacija"
-#: ../src/prefs/KeyConfigPrefs.cpp:159
-msgid "Export Keyboard Shortcuts As:"
-msgstr "Eksportuoti SparÄiuosius KlaviÅ¡us Kaip:"
+#: ../src/EditToolBar.cpp:159
+msgid "Undo"
+msgstr "Atšaukti"
-#: ../src/prefs/KeyConfigPrefs.cpp:174
-msgid "Error saving keyboard shortcuts"
-msgstr "Klaida iÅ¡saugant sparÄuosius klaviÅ¡us"
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr ""
#: ../src/prefs/KeyConfigPrefs.cpp:188
msgid "Select an XML file containing Audacity keyboard shortcuts..."
@@ -7587,6 +7598,14 @@ msgstr "Pasirinkite XML failÄ
kuriame laikote Audacity klavetÅ«ros sparÄuosius
msgid "Error loading keyboard shortcuts"
msgstr "Klaida kraunant sparÄuosius klaviÅ¡us"
+#: ../src/prefs/KeyConfigPrefs.cpp:159
+msgid "Export Keyboard Shortcuts As:"
+msgstr "Eksportuoti SparÄiuosius KlaviÅ¡us Kaip:"
+
+#: ../src/prefs/KeyConfigPrefs.cpp:174
+msgid "Error saving keyboard shortcuts"
+msgstr "Klaida iÅ¡saugant sparÄuosius klaviÅ¡us"
+
#: prefs/KeyConfigPrefs.cpp:239
#, c-format
msgid "The keyboard shortcut '%s' is already assigned to:\n"
@@ -7594,9 +7613,61 @@ msgid "The keyboard shortcut '%s' is already assigned to:\n"
"'%s'"
msgstr ""
-#: ../src/EditToolBar.cpp:159
-msgid "Undo"
-msgstr "Atšaukti"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:84
+msgid "MP3 Export Library"
+msgstr ""
+
+#: ../src/prefs/FileFormatPrefs.cpp:180
+msgid "MP3 Library Version:"
+msgstr "MP3 Bibliotekos Versija:"
+
+#: prefs/FileFormatPrefs.cpp:93
+msgid "MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:98
+msgid "LAME MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
+msgid "&Download"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:109
+msgid "FFmpeg Library Version:"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
+msgid "FFmpeg Library:"
+msgstr ""
+
+#: ../src/prefs/PrefsDialog.cpp:84
+msgid "Audio I/O"
+msgstr "Audio I/O"
+
+#: prefs/AudioIOPrefs.cpp:123
+msgid "Portaudio v"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:145
+msgid "Playthrough"
+msgstr ""
#: prefs/AudioIOPrefs.cpp:147
#, fuzzy
@@ -7611,6 +7682,10 @@ msgstr ""
msgid "&Software Playthrough (Play new track while recording it)"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:158
+msgid "Cut Preview"
+msgstr ""
+
#: prefs/MidiIOPrefs.cpp:160
msgid "Play before cut region:"
msgstr ""
@@ -7619,6 +7694,10 @@ msgstr ""
msgid "Play after cut region:"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:168
+msgid "Latency"
+msgstr ""
+
#: prefs/AudioIOPrefs.cpp:174
msgid "Audio to buffer:"
msgstr ""
@@ -7631,6 +7710,18 @@ msgstr ""
msgid "Seek Time"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:187
+msgid "Short period:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:189
+msgid "Long period:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:194
+msgid "Effects Preview"
+msgstr ""
+
#: prefs/MidiIOPrefs.cpp:196
msgid "Play when previewing:"
msgstr ""
@@ -7655,14 +7746,12 @@ msgstr "Komandos Veiksmas"
msgid "Buttons"
msgstr "Mygtukai"
-#: ../src/prefs/MousePrefs.cpp:88
-#: ../src/prefs/MousePrefs.cpp:92
+#: ../src/prefs/MousePrefs.cpp:88 ../src/prefs/MousePrefs.cpp:92
#: ../src/prefs/MousePrefs.cpp:100
msgid "Left-Click"
msgstr "Kairysis-Paspaudimas"
-#: ../src/prefs/MousePrefs.cpp:88
-#: ../src/prefs/MousePrefs.cpp:89
+#: ../src/prefs/MousePrefs.cpp:88 ../src/prefs/MousePrefs.cpp:89
#: ../src/prefs/MousePrefs.cpp:90
msgid "Select"
msgstr "Pasirinkti"
@@ -7671,10 +7760,8 @@ msgstr "Pasirinkti"
msgid "Set Selection Point"
msgstr "Nustatyti Pasirinkimo TaÅ¡kÄ
"
-#: ../src/prefs/MousePrefs.cpp:89
-#: ../src/prefs/MousePrefs.cpp:93
-#: ../src/prefs/MousePrefs.cpp:97
-#: ../src/prefs/MousePrefs.cpp:98
+#: ../src/prefs/MousePrefs.cpp:89 ../src/prefs/MousePrefs.cpp:93
+#: ../src/prefs/MousePrefs.cpp:97 ../src/prefs/MousePrefs.cpp:98
#: ../src/prefs/MousePrefs.cpp:102
msgid "Left-Drag"
msgstr "Kairysis-Tempimas"
@@ -7707,10 +7794,8 @@ msgstr ""
msgid "Set Selection Point and Play"
msgstr ""
-#: ../src/prefs/MousePrefs.cpp:92
-#: ../src/prefs/MousePrefs.cpp:93
-#: ../src/prefs/MousePrefs.cpp:94
-#: ../src/prefs/MousePrefs.cpp:95
+#: ../src/prefs/MousePrefs.cpp:92 ../src/prefs/MousePrefs.cpp:93
+#: ../src/prefs/MousePrefs.cpp:94 ../src/prefs/MousePrefs.cpp:95
msgid "Zoom"
msgstr "Keist Mastelį"
@@ -7786,10 +7871,8 @@ msgstr "Keisti Stiprinimo AmplitudÄ"
msgid "Change Sample"
msgstr "Keisti pavyzdį"
-#: ../src/prefs/MousePrefs.cpp:100
-#: ../src/prefs/MousePrefs.cpp:101
-#: ../src/prefs/MousePrefs.cpp:102
-#: ../src/prefs/MousePrefs.cpp:103
+#: ../src/prefs/MousePrefs.cpp:100 ../src/prefs/MousePrefs.cpp:101
+#: ../src/prefs/MousePrefs.cpp:102 ../src/prefs/MousePrefs.cpp:103
msgid "Pencil"
msgstr "Parkelis"
@@ -7809,10 +7892,8 @@ msgstr "Keisti kelis pavyzdžius"
msgid "Change ONE Sample only"
msgstr "Pakeisti tik VIENÄ Modelį"
-#: ../src/prefs/MousePrefs.cpp:105
-#: ../src/prefs/MousePrefs.cpp:106
-#: ../src/prefs/MousePrefs.cpp:107
-#: ../src/prefs/MousePrefs.cpp:108
+#: ../src/prefs/MousePrefs.cpp:105 ../src/prefs/MousePrefs.cpp:106
+#: ../src/prefs/MousePrefs.cpp:107 ../src/prefs/MousePrefs.cpp:108
msgid "Multi"
msgstr "Multi"
@@ -7826,8 +7907,7 @@ msgstr "Tas pat kaip ir apibraukimo įrankis"
msgid "same as zoom tool"
msgstr "Tas pat kaip ir Priartinimo įrankis"
-#: ../src/prefs/MousePrefs.cpp:110
-#: ../src/prefs/MousePrefs.cpp:111
+#: ../src/prefs/MousePrefs.cpp:110 ../src/prefs/MousePrefs.cpp:111
msgid "Any"
msgstr "Bet kuris"
@@ -7855,10 +7935,62 @@ msgstr "Ctrl-Ratukas-Pasukimas"
msgid "Zoom in or out"
msgstr "Priartinti arba Tolinti"
+#: prefs/AudioIOPrefs.cpp:165
+msgid "Length of preview:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:173
+msgid "Preview before cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:175
+msgid "Preview after cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:197
+msgid "Seek Time when playing"
+msgstr ""
+
#: ../src/prefs/PrefsDialog.cpp:52
msgid "Audacity Preferences"
msgstr "Audacity Nuostatos"
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:132
+msgid "When saving a project that depends on other audio files"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:87
+msgid "Always © all audio into project (safest)"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:88
+msgid "&Do not copy any audio"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:135
+msgid "&Ask user"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr ""
+
#: ../src/prefs/QualityPrefs.cpp:161
msgid "Rectangle"
msgstr "StaÄiakampis"
@@ -7883,44 +8015,44 @@ msgstr "Įprastas Modelio Dažnis:"
msgid "Default Sample Format:"
msgstr "Įprastas Modelio Formatas:"
-#: ../src/prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "Esamo laiko pavyzdžio dažnio konverteris:"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:147
-msgid "High-quality sample rate converter:"
-msgstr "AukÅ¡tos kokybÄs pavyzdžio dažnio konverteris:"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+msgid "Sample Rate Converter:"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:171
-msgid "Real-time dither:"
-msgstr "Esamo laiko virpesiai:"
+#: prefs/QualityPrefs.cpp:164
+msgid "Dither"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:186
-msgid "High-quality dither:"
-msgstr "AukÅ¡tos kokybÄs virpesiai:"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
+#: prefs/AudioIOPrefs.cpp:149
+msgid "Overdub: &Play other tracks while recording new one"
msgstr ""
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
+#: prefs/AudioIOPrefs.cpp:150
+msgid "&Hardware Playthrough: Play new track while recording it"
msgstr ""
-#: prefs/QualityPrefs.cpp:164
-msgid "Dither"
+#: prefs/AudioIOPrefs.cpp:157
+msgid "&Software Playthrough: Play new track while recording or monitoring"
msgstr ""
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
+#: prefs/AudioIOPrefs.cpp:160
+msgid "(uncheck when recording \"stereo mix\")"
msgstr ""
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
msgstr ""
-#: prefs/SmartRecordPrefs.cpp:54 prefs/SmartRecordPrefs.cpp:55
-msgid "Smart Recording"
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
msgstr ""
#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
@@ -7935,18 +8067,54 @@ msgstr ""
msgid "Spectrograms"
msgstr "Spektograma"
-#: ../src/prefs/SpectrumPrefs.cpp:70
-msgid "FFT Size"
-msgstr "FFT Dydis"
-
#: prefs/SpectrumPrefs.cpp:75
msgid "8 - most wideband"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
#: ../src/prefs/SpectrumPrefs.cpp:40
msgid "256 - default"
msgstr "256 - įprastas"
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:107
msgid "32768 - most narrowband"
msgstr ""
@@ -7955,20 +8123,24 @@ msgstr ""
msgid "4096 - most narrowband"
msgstr "4096 - pats siauriausias ruožas"
-#: prefs/SpectrumPrefs.cpp:90
-msgid "Window type:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:125
-msgid "FFT Skip Points"
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:96
-msgid "Display"
+#: prefs/SpectrumPrefs.cpp:93
+msgid "Window type"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:100
-msgid "&Grayscale"
+#: prefs/SpectrumPrefs.cpp:125
+msgid "FFT Skip Points"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
msgstr ""
#: prefs/SpectrumPrefs.cpp:103
@@ -7979,16 +8151,16 @@ msgstr ""
msgid "Maximum Frequency (Hz):"
msgstr "Didžiausias Dažnis (Hz):"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
msgstr ""
#: prefs/SpectrumPrefs.cpp:165
@@ -7999,6 +8171,14 @@ msgstr ""
msgid "Max. Number of Notes (1..128):"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:161
+msgid "&Find Notes"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Quantize Notes"
+msgstr ""
+
#: ../src/prefs/SpectrumPrefs.cpp:148
msgid "The maximum frequency must be an integer"
msgstr "Didžiausias dažnis turi bÅ«ti sveikasis skaiÄius"
@@ -8015,18 +8195,57 @@ msgstr ""
msgid "Minimum frequency must be at least 0 Hz"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:226 prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
+#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:230
+msgid "The maximum number of notes must be in the range 1..128"
msgstr ""
#: prefs/ThemePrefs.cpp:61 prefs/ThemePrefs.cpp:62
msgid "Theme"
msgstr ""
+#: prefs/ThemePrefs.cpp:123
+msgid "Info"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:91
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#: prefs/ThemePrefs.cpp:90
msgid "Theme Cache - Images && Color"
msgstr ""
@@ -8055,78 +8274,94 @@ msgstr ""
msgid "Load Files"
msgstr ""
-#: prefs/ThemePrefs.cpp:123
-msgid "Info"
+#: prefs/GUIPrefs.cpp:50
+msgid "Simple"
msgstr ""
-#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
+#: prefs/GUIPrefs.cpp:72
+msgid "&Update display while playing"
msgstr ""
-#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
+#: prefs/GUIPrefs.cpp:80
+msgid "Automatically &fit tracks vertically zoomed"
msgstr ""
-#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
+#: prefs/TracksPrefs.cpp:88
+msgid "Default View Mode:"
msgstr ""
-#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:88
+msgid "&Select all audio in project, if none selected"
msgstr ""
-#: ../src/ControlToolBar.cpp:470
-msgid "Pause"
-msgstr "PauzÄ"
+#: prefs/GUIPrefs.cpp:96
+msgid "Enable cut &lines"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play"
+#: prefs/GUIPrefs.cpp:76
+msgid "Enable &dragging of left and right selection edges"
msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
+#: prefs/GUIPrefs.cpp:104
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
msgstr ""
-#: ../src/ControlToolBar.cpp:471
-msgid "Stop"
-msgstr "Stop"
+#: prefs/GUIPrefs.cpp:90
+msgid "Editing a &clip can move other clips"
+msgstr ""
-#: ../src/ControlToolBar.cpp:467
-msgid "Skip to Start"
-msgstr "Perkelti į PradžiÄ
"
+#: prefs/GUIPrefs.cpp:168
+msgid "Solo Button:"
+msgstr ""
-#: ../src/ControlToolBar.cpp:472
-msgid "Skip to End"
-msgstr "Perkelti į PabaigÄ
"
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:192
-msgid "Record (Shift for Append Record)"
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
msgstr ""
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr ""
+
+#: ../src/Menus.cpp:561
+msgid "Pause"
+msgstr "PauzÄ"
+
+#: ../src/Menus.cpp:560
+msgid "Stop"
+msgstr "Stop"
+
#: toolbars/ControlToolBar.cpp:195
msgid "Clean Speech"
msgstr ""
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play (Shift for Loop Play)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:192
+msgid "Record (Shift for Append Record)"
+msgstr ""
+
#: toolbars/ControlToolBar.cpp:524 toolbars/ControlToolBar.cpp:776
msgid "Error while opening sound device. "
msgstr ""
@@ -8167,28 +8402,20 @@ msgstr "Artinti"
msgid "Zoom Out"
msgstr "Tolinti"
-#: ../src/EditToolBar.cpp:170
-msgid "Zoom Toggle"
-msgstr "Mastelio Keitimas"
-
-#: toolbars/EditToolBar.cpp:160
-msgid "Fit Selection"
-msgstr ""
-
#: ../src/EditToolBar.cpp:174
msgid "Fit selection in window"
msgstr "IÅ¡plÄsti apibraukimÄ
lange"
-#: toolbars/EditToolBar.cpp:162
-msgid "Fit Project"
-msgstr ""
-
#: ../src/EditToolBar.cpp:176
msgid "Fit project in window"
msgstr "Pritaikyti projektÄ
lange"
-#: toolbars/MeterToolBar.cpp:49
-msgid "Meter"
+#: toolbars/EditToolBar.cpp:160
+msgid "Fit Selection"
+msgstr ""
+
+#: toolbars/EditToolBar.cpp:162
+msgid "Fit Project"
msgstr ""
#: toolbars/MeterToolBar.cpp:79
@@ -8235,6 +8462,14 @@ msgstr ""
msgid "Input Source"
msgstr ""
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:75
msgid "Selection"
msgstr ""
@@ -8313,30 +8548,6 @@ msgstr "Kairys=Priartinti, Dešinysis=Tolinti, Vidurinis=Normaus"
msgid "Click and drag to move a track in time"
msgstr "Temti ir mesti takelių laiko perkÄlimui"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr ""
-
-#: ../src/ControlToolBar.cpp:355
-msgid "Selection Tool"
-msgstr "Apibraukimo Įrankis"
-
-#: ../src/ControlToolBar.cpp:356
-msgid "Envelope Tool"
-msgstr "AmplitudÄs Korektorius"
-
-#: ../src/ControlToolBar.cpp:357
-msgid "Time Shift Tool"
-msgstr "Laiko perkÄlimo įrankis"
-
-#: ../src/ControlToolBar.cpp:358
-msgid "Zoom Tool"
-msgstr "Priartinimo įrankis"
-
-#: ../src/ControlToolBar.cpp:359
-msgid "Draw Tool"
-msgstr "Piešimo įrankis"
-
#: ../src/ControlToolBar.cpp:360
msgid "Multi-Tool Mode"
msgstr "Multi Įrankio režimas"
@@ -8345,22 +8556,10 @@ msgstr "Multi Įrankio režimas"
msgid "Slide Tool"
msgstr ""
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr ""
-
-#: toolbars/TranscriptionToolBar.cpp:81
-msgid "Transcription"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:183
msgid "Play at selected speed"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:184
-msgid "Play-at-speed"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:190 toolbars/TranscriptionToolBar.cpp:195
msgid "Playback Speed"
msgstr ""
@@ -8369,74 +8568,38 @@ msgstr ""
msgid "Adjust left selection to next onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:201
-msgid "Left-to-On"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:203
msgid "Adjust right selection to previous offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:204
-msgid "Right-to-Off"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:206
msgid "Adjust left selection to next offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:207
-msgid "Left-to-Off"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:209
msgid "Adjust right selection to previous onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:210
-msgid "Right-to-On"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:212
msgid "Select region of sound around cursor"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:213
-msgid "Select-Sound"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:215
msgid "Select region of silence around cursor"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:216
-msgid "Select-Silence"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:218
msgid "Automatically make labels from words"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:219
-msgid "Make Labels"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:221
msgid "Add label at selection"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:222
-msgid "Add Label"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:224
msgid "Calibrate voicekey"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:225
-msgid "Calibrate"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:229
msgid "Adjust Sensitivity"
msgstr ""
@@ -8469,6 +8632,46 @@ msgstr ""
msgid "Key type"
msgstr ""
+#: toolbars/TranscriptionToolBar.cpp:184
+msgid "Play-at-speed"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:201
+msgid "Left-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:204
+msgid "Right-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:207
+msgid "Left-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:210
+msgid "Right-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:213
+msgid "Select-Sound"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:216
+msgid "Select-Silence"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:219
+msgid "Make Labels"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:222
+msgid "Add Label"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:225
+msgid "Calibrate"
+msgstr ""
+
#: ../src/widgets/AButton.cpp:181
msgid " (disabled)"
msgstr " (išjungtas)"
@@ -8484,16 +8687,14 @@ msgstr ""
# i18n-hint: One-letter abbreviation for Left, in the Pan slider
# i18n-hint: One-letter abbreviation for Left, in VU Meter
# i18n-hint: One-letter abbreviation for Left, in the Pan slider
-#: ../src/widgets/ASlider.cpp:329
-#: ../src/widgets/Meter.cpp:165
+#: ../src/widgets/ASlider.cpp:329 ../src/widgets/Meter.cpp:165
msgid "L"
msgstr "K"
# i18n-hint: One-letter abbreviation for Right, in the Pan slider
# i18n-hint: One-letter abbreviation for Right, in VU Meter
#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
-#: ../src/widgets/ASlider.cpp:332
-#: ../src/widgets/Meter.cpp:167
+#: ../src/widgets/ASlider.cpp:332 ../src/widgets/Meter.cpp:167
msgid "R"
msgstr "D"
@@ -8776,3 +8977,15 @@ msgstr ""
msgid "Could not load file: \"%s\""
msgstr ""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
+
diff --git a/locale/mk.po b/locale/mk.po
index 9cfcb13..30e1f0e 100644
--- a/locale/mk.po
+++ b/locale/mk.po
@@ -32,11 +32,11 @@ msgid "Audacity is a free program written by a team of volunteer <a href=\"http:
msgstr ""
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#. i18n-hint: The translation of "translator_credits" will appear
@@ -88,7 +88,7 @@ msgid "Special thanks:"
msgstr "ÐоÑебна благодаÑноÑÑ:"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
msgstr ""
#: AboutDialog.cpp:320
@@ -228,10 +228,20 @@ msgstr ""
msgid "Output Meter"
msgstr ""
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
+#: ../src/Menus.cpp:141
+msgid "&New"
+msgstr "&Ðов"
+
+#: ../src/Menus.cpp:143
+msgid "&Open..."
+msgstr "&ÐÑвоÑи..."
+
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
+
#: AudacityApp.cpp:534 Menus.cpp:575
-msgid "&Preferences...\tCtrl+,"
+msgid "&Preferences..."
msgstr ""
#: ../src/AudacityApp.cpp:626 ../src/AudacityApp.cpp:696
@@ -354,14 +364,14 @@ msgstr "ÐÑеÑка"
msgid "Error Initializing Audio"
msgstr ""
-#: AudioIO.cpp:1236
-msgid "Latency problem"
+#: AudioIO.cpp:1225
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
+"Audacity has brought it back to start at zero.\n"
+"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
msgstr ""
#: AudioIO.cpp:1236
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
-"Audacity has brought it back to start at zero.\n"
-"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
+msgid "Latency problem"
msgstr ""
#: AutoRecovery.cpp:40
@@ -587,8 +597,9 @@ msgstr ""
msgid "C&hain (Double-Click or press SPACE to edit)"
msgstr ""
-#: BatchProcessDialog.cpp:450
-msgid "No"
+#. i18n-hint: This is the number of the command in the list
+#: BatchProcessDialog.cpp:453
+msgid "Num"
msgstr ""
#: BatchProcessDialog.cpp:456
@@ -908,11 +919,11 @@ msgstr "ÐÑавоаголно"
msgid "FFmpeg support not compiled in"
msgstr ""
-#: FFmpeg.cpp:101
+#: FFmpeg.cpp:103
msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
#: FFmpeg.cpp:104
@@ -970,11 +981,12 @@ msgstr ""
msgid "FFmpeg not found"
msgstr ""
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
#: FFmpeg.h:109
@@ -1058,11 +1070,24 @@ msgstr ""
msgid "Export"
msgstr ""
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
#: ../src/Benchmark.cpp:223 ../src/FreqWindow.cpp:123
#: ../src/effects/NoiseRemoval.cpp:463 ../src/effects/ClickRemoval.cpp:371
msgid "Close"
msgstr "ÐаÑвоÑи"
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr ""
+
#: ../src/widgets/Meter.cpp:293
msgid "dB"
msgstr ""
@@ -1073,6 +1098,15 @@ msgstr ""
msgid "Hz"
msgstr "Hz"
+#: ../src/Menus.cpp:2369
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "Ðа ÑÑÑаÑе на ÑпекÑÐ°Ñ ÑиÑе ÑелекÑиÑани нÑмеÑи ÑÑеба да Ñе Ñо иÑÑа ÑаÑа."
+
+#: ../src/Menus.cpp:2395
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "ÐÑÐµÐ¼Ð½Ð¾Ð³Ñ Ð°Ñдио Ñе ÑелекÑиÑани. Само пÑвиÑе %.1f ÑекÑнди од аÑдиоÑо Ñе Ð±Ð¸Ð´Ð°Ñ Ð°Ð½Ð°Ð»Ð¸Ð·Ð¸Ñани."
+
#: ../src/FreqWindow.cpp:463
msgid "Not enough data selected."
msgstr "Ðедоволно ÑелекÑиÑани подаÑоÑи."
@@ -1112,6 +1146,21 @@ msgstr "ФÑекÑенÑиÑа (Hz)\tÐиво (dB)"
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "Lag (ÑекÑнди)\tФÑекÑенÑиÑа (Hz)\tÐиво"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr ""
+
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr ""
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr ""
@@ -1189,7 +1238,7 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr ""
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
msgstr ""
#: HelpText.cpp:244
@@ -1213,7 +1262,7 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr ""
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
msgstr ""
#: HelpText.cpp:383
@@ -1282,6 +1331,14 @@ msgstr ""
msgid "GB"
msgstr ""
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
#: LabelDialog.cpp:50
msgid "Track"
msgstr ""
@@ -1396,21 +1453,13 @@ msgstr "ÐÑвоÑам Audacity пÑоекÑ"
msgid "&File"
msgstr "&ÐаÑоÑека"
-#: ../src/Menus.cpp:141
-msgid "&New\tCtrl+N"
-msgstr "&Ðов\tCtrl+N"
-
-#: ../src/Menus.cpp:143
-msgid "&Open...\tCtrl+O"
-msgstr "&ÐÑвоÑи...\tCtrl+O"
-
#: ../src/Menus.cpp:145
-msgid "&Close\tCtrl+W"
-msgstr "&ÐаÑвоÑи\tCtrl+W"
+msgid "&Close"
+msgstr "&ÐаÑвоÑи"
#: ../src/Menus.cpp:146
-msgid "&Save Project\tCtrl+S"
-msgstr "&Сними пÑоекÑ\tCtrl+S"
+msgid "&Save Project"
+msgstr "&Сними пÑоекÑ"
#: ../src/Menus.cpp:150
msgid "Save Project &As..."
@@ -1433,7 +1482,7 @@ msgid "&Import"
msgstr ""
#: Menus.cpp:236
-msgid "&Audio...\tCtrl+Shift+I"
+msgid "&Audio..."
msgstr ""
#: Menus.cpp:237
@@ -1465,8 +1514,8 @@ msgstr "ÐкÑпоÑÑ Ð½Ð° наÑ&лови..."
msgid "Export MIDI..."
msgstr ""
-#: Menus.cpp:290
-msgid "CleanSpeech C&hain..."
+#: Menus.cpp:352
+msgid "Appl&y Chain..."
msgstr ""
#: Menus.cpp:340 Menus.cpp:354
@@ -1481,10 +1530,6 @@ msgstr ""
msgid "I&mport CleanSpeech Presets..."
msgstr ""
-#: Menus.cpp:352
-msgid "Appl&y Chain..."
-msgstr ""
-
#: Menus.cpp:358
msgid "&Upload File..."
msgstr ""
@@ -1499,7 +1544,7 @@ msgid "&Print..."
msgstr ""
#: Menus.cpp:382 Menus.cpp:385
-msgid "E&xit\tCtrl+Q"
+msgid "E&xit"
msgstr ""
#: ../src/Menus.cpp:227
@@ -1507,8 +1552,8 @@ msgid "&Edit"
msgstr "&УÑеди"
#: ../src/Menus.cpp:231
-msgid "&Undo\tCtrl+Z"
-msgstr "&ÐÑаÑи\tCtrl+Z"
+msgid "&Undo"
+msgstr "&ÐÑаÑи"
#: ../src/Menus.cpp:239
#, fuzzy
@@ -1516,55 +1561,55 @@ msgid "&Redo"
msgstr "ÐÑаÑи"
#: ../src/Menus.cpp:252
-msgid "Cu&t\tCtrl+X"
-msgstr "С&еÑи\tCtrl+X"
+msgid "Cu&t"
+msgstr "С&еÑи"
#: Menus.cpp:420
-msgid "Spl&it Cut\tCtrl+Alt+X"
+msgid "Spl&it Cut"
msgstr ""
#: ../src/Menus.cpp:253
-msgid "&Copy\tCtrl+C"
-msgstr "&ÐопиÑаÑ\tCtrl+C"
+msgid "&Copy"
+msgstr "&ÐопиÑаÑ"
#: ../src/Menus.cpp:254
-msgid "&Paste\tCtrl+V"
-msgstr "&Ðалепи\tCtrl+V"
+msgid "&Paste"
+msgstr "&Ðалепи"
#: Menus.cpp:426
-msgid "Tri&m\tCtrl+T"
+msgid "Tri&m"
msgstr ""
#: ../src/Menus.cpp:260
-msgid "&Delete\tCtrl+K"
-msgstr "&ÐÑиÑи\tCtrl+K"
+msgid "&Delete"
+msgstr "&ÐÑиÑи"
#: Menus.cpp:429
-msgid "Split D&elete\tCtrl+Alt+K"
+msgid "Split D&elete"
msgstr ""
#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
+msgid "Silence Audi&o"
msgstr ""
#: Menus.cpp:432
-msgid "Sp&lit\tCtrl+I"
+msgid "Sp&lit"
msgstr ""
#: Menus.cpp:342
-msgid "Split Ne&w\tCtrl+Alt+I"
+msgid "Split Ne&w"
msgstr ""
#: Menus.cpp:442
-msgid "&Join\tCtrl+J"
+msgid "&Join"
msgstr ""
#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
+msgid "Detac&h at Silences"
msgstr ""
#: Menus.cpp:445
-msgid "Duplic&ate\tCtrl+D"
+msgid "Duplic&ate"
msgstr ""
#: Menus.cpp:400 Menus.cpp:639
@@ -1577,47 +1622,32 @@ msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:460
-msgid "&Cut\tAlt+X"
+msgid "&Cut"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:465
-msgid "&Split Cut\tShift+Alt+X"
+msgid "&Split Cut"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:470
-msgid "Co&py\tShift+Alt+C"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:476
-msgid "&Delete\tAlt+K"
+msgid "Co&py"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:481
-msgid "Sp&lit Delete\tShift+Alt+K"
+msgid "Sp&lit Delete"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:486
-msgid "Sile&nce\tAlt+L"
+msgid "Sile&nce"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:492
-msgid "Spli&t\tAlt+I"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:497
-msgid "&Join\tAlt+J"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
+msgid "Spli&t"
msgstr ""
#: Menus.cpp:456
@@ -1626,31 +1656,31 @@ msgstr ""
#: ../src/Menus.cpp:269
#, fuzzy
-msgid "&All\tCtrl+A"
-msgstr "ÐзнаÑи &Ñе\tCtrl+A"
+msgid "&All"
+msgstr "ÐзнаÑи &Ñе"
#: Menus.cpp:415
-msgid "&None\tCtrl+Shift+A"
+msgid "&None"
msgstr ""
#: Menus.cpp:462
-msgid "&Left at Playback Position\t["
+msgid "&Left at Playback Position"
msgstr ""
#: Menus.cpp:463
-msgid "&Right at Playback Position\t]"
+msgid "&Right at Playback Position"
msgstr ""
#: Menus.cpp:467
-msgid "Track &Start to Cursor\tShift+J"
+msgid "Track &Start to Cursor"
msgstr ""
#: Menus.cpp:468
-msgid "Cursor to Track &End\tShift+K"
+msgid "Cursor to Track &End"
msgstr ""
#: Menus.cpp:525
-msgid "Find &Zero Crossings\tZ"
+msgid "Find &Zero Crossings"
msgstr ""
#: Menus.cpp:476
@@ -1668,11 +1698,11 @@ msgid "to Selection En&d"
msgstr "ÐокажÑÐ²Ð°Ñ Ð½Ð° кÑÐ°Ñ Ð¾Ð´ ÑелекÑиÑаÑа"
#: Menus.cpp:483
-msgid "to Track &Start\tJ"
+msgid "to Track &Start"
msgstr ""
#: Menus.cpp:484
-msgid "to Track &End\tK"
+msgid "to Track &End"
msgstr ""
#: Menus.cpp:491
@@ -1695,29 +1725,8 @@ msgstr ""
msgid "&Unlock"
msgstr ""
-#: ../src/Menus.cpp:311
-msgid "Turn Snap-To On"
-msgstr ""
-
-#: ../src/Menus.cpp:312
-msgid "Turn Snap-To Off"
-msgstr ""
-
-#: ../src/Menus.cpp:313
-msgid "Turn Grid Snap On"
-msgstr ""
-
-#: ../src/Menus.cpp:314
-msgid "Turn Grid Snap Off"
-msgstr ""
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr ""
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
+msgid "Pre&ferences..."
msgstr ""
#: ../src/Menus.cpp:345
@@ -1725,35 +1734,35 @@ msgid "&View"
msgstr "&Ðоглед"
#: ../src/Menus.cpp:347
-msgid "Zoom &In\tCtrl+1"
-msgstr "ÐÑм &во\tCtrl+1"
+msgid "Zoom &In"
+msgstr "ÐÑм &во"
#: ../src/Menus.cpp:350
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "ÐÑм &ноÑмален\tCtrl+2"
+msgid "Zoom &Normal"
+msgstr "ÐÑм &ноÑмален"
#: ../src/Menus.cpp:351
-msgid "Zoom &Out\tCtrl+3"
-msgstr "ÐÑм &од\tCtrl+3"
+msgid "Zoom &Out"
+msgstr "ÐÑм &од"
#: ../src/Menus.cpp:354
-msgid "&Fit in Window\tCtrl+F"
-msgstr "&Ðо пÑозоÑеÑ\tCtrl+F"
+msgid "&Fit in Window"
+msgstr "&Ðо пÑозоÑеÑ"
#: ../src/Menus.cpp:355
-msgid "Fit &Vertically\tCtrl+Shift+F"
+msgid "Fit &Vertically"
msgstr ""
#: ../src/Menus.cpp:356
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "ÐÑм во &ÑелекÑиÑа\tCtrl+E"
+msgid "&Zoom to Selection"
+msgstr "ÐÑм во &ÑелекÑиÑа"
#: Menus.cpp:603
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
+msgid "&Collapse All Tracks"
msgstr ""
#: Menus.cpp:604
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
+msgid "E&xpand All Tracks"
msgstr ""
#: Menus.cpp:551
@@ -1815,39 +1824,39 @@ msgid "T&ransport"
msgstr ""
#: Menus.cpp:591
-msgid "Play\tSpace"
+msgid "Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
+msgid "&Loop Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Pause\tP"
+msgid "&Pause"
msgstr ""
#: Menus.cpp:596
-msgid "&Stop\tSpace"
+msgid "&Stop"
msgstr ""
#: ../src/Menus.cpp:569
-msgid "Skip to Start\tHome"
-msgstr "Скокни до поÑеÑок\tHome"
+msgid "Skip to Start"
+msgstr "Скокни до поÑеÑок"
#: ../src/Menus.cpp:570
-msgid "Skip to End\tEnd"
-msgstr "Скокни до кÑаÑ\tEnd"
+msgid "Skip to End"
+msgstr "Скокни до кÑаÑ"
#: Menus.cpp:600
-msgid "&Record\tR"
+msgid "&Record"
msgstr ""
#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
+msgid "&Timer Record..."
msgstr ""
#: Menus.cpp:604
-msgid "Append Record\tShift+R"
+msgid "Append Record"
msgstr ""
#: Menus.cpp:607
@@ -1875,7 +1884,7 @@ msgid "Add &New"
msgstr ""
#: Menus.cpp:643
-msgid "&Audio Track\tCtrl+Shift+N"
+msgid "&Audio Track"
msgstr ""
#: Menus.cpp:644
@@ -1892,7 +1901,7 @@ msgid "Mi&x and Render"
msgstr ""
#: Menus.cpp:564
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
+msgid "Mix and Render to New Track"
msgstr ""
#: Menus.cpp:662
@@ -1904,11 +1913,11 @@ msgid "Remo&ve Tracks"
msgstr "&ТÑгни нÑмеÑи"
#: Menus.cpp:667
-msgid "&Mute All Tracks\tCtrl+U"
+msgid "&Mute All Tracks"
msgstr ""
#: Menus.cpp:668
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
+msgid "&UnMute All Tracks"
msgstr ""
#: ../src/Menus.cpp:405
@@ -1959,19 +1968,18 @@ msgstr ""
msgid "Synchronize MIDI with Audio"
msgstr ""
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
+#: Menus.cpp:686
+msgid "&Link Audio and Label Tracks"
msgstr ""
-#: Menus.cpp:705
-#, fuzzy
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "ÐÐ°Ñ Ð½Ð°Ñлов на ÑелекÑиÑа\tCtrl+B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr ""
#: Menus.cpp:706
#, fuzzy
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "ÐÐ°Ñ Ð½Ð°Ñлов на ÑелекÑиÑа\tCtrl+B"
+msgid "Add Label At &Playback Position"
+msgstr "ÐÐ°Ñ Ð½Ð°Ñлов на ÑелекÑиÑа"
#: Menus.cpp:716
msgid "S&ort tracks"
@@ -1998,14 +2006,14 @@ msgstr ""
msgid "Effe&ct"
msgstr "&ÐÑекÑ"
-#: ../src/Menus.cpp:468
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr ""
-
#: ../src/Menus.cpp:494
msgid "&Analyze"
msgstr "&Ðнализа"
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
+
#: Menus.cpp:692
msgid "Plot Spectrum..."
msgstr ""
@@ -2023,8 +2031,8 @@ msgstr ""
msgid "&Show Welcome Message..."
msgstr ""
-#: Menus.cpp:736
-msgid "&Index..."
+#: Menus.cpp:958
+msgid "&Help..."
msgstr ""
#: Menus.cpp:959
@@ -2043,190 +2051,153 @@ msgstr "ÐоÑни &бÑзинаÑ..."
msgid "&Audio Device Info..."
msgstr ""
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
msgstr ""
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
msgstr ""
-#: ../src/Menus.cpp:549
-#, fuzzy
-msgid "Selection Tool\tF1"
+#: ../src/ControlToolBar.cpp:355
+msgid "Selection Tool"
msgstr "ÐзбоÑни алаÑки"
-#: ../src/Menus.cpp:550
-#, fuzzy
-msgid "Envelope Tool\tF2"
+#: ../src/ControlToolBar.cpp:356
+msgid "Envelope Tool"
msgstr "ÐÑива алаÑки"
-#: ../src/Menus.cpp:551
-#, fuzzy
-msgid "Draw Tool\tF3"
+#: ../src/ControlToolBar.cpp:359
+msgid "Draw Tool"
msgstr "ЦÑÑаÑки алаÑки"
-#: ../src/Menus.cpp:552
-#, fuzzy
-msgid "Zoom Tool\tF4"
+#: ../src/ControlToolBar.cpp:358
+msgid "Zoom Tool"
msgstr "ÐÑм алаÑка"
-#: ../src/Menus.cpp:553
-#, fuzzy
-msgid "Time Shift Tool\tF5"
+#: ../src/ControlToolBar.cpp:357
+msgid "Time Shift Tool"
msgstr "ÐÑеменÑка алаÑка"
#: ../src/Menus.cpp:554
#, fuzzy
-msgid "Multi Tool\tF6"
+msgid "Multi Tool"
msgstr "ÐÑлÑи алаÑки"
#: ../src/Menus.cpp:556
-msgid "Next Tool\tD"
+msgid "Next Tool"
msgstr ""
#: ../src/Menus.cpp:557
-msgid "Previous Tool\tA"
+msgid "Previous Tool"
msgstr ""
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
-msgstr ""
-
-#: ../src/Menus.cpp:560
-msgid "Stop\tS"
-msgstr "СÑоп\tS"
-
-#: ../src/Menus.cpp:561
-msgid "Pause\tP"
-msgstr "ÐаÑза\tP"
-
-#: ../src/Menus.cpp:562
-msgid "Record\tR"
-msgstr "СнимаÑ\tR"
-
-#: Menus.cpp:999
-msgid "Record Append\tShift+R"
+msgid "Play/Stop"
msgstr ""
#: Menus.cpp:1001
-msgid "Play/Stop and Set Cursor\tShift+A"
+msgid "Play/Stop and Set Cursor"
msgstr ""
#: ../src/Menus.cpp:564
-msgid "Play One Second\t1"
-msgstr "СвиÑи една ÑекÑнда\t1"
+msgid "Play One Second"
+msgstr "СвиÑи една ÑекÑнда"
#: ../src/Menus.cpp:565
#, fuzzy
-msgid "Play To Selection\tB"
-msgstr "СвиÑи една ÑекÑнда\t1"
-
-#: ../src/Menus.cpp:566
-msgid "Play Looped\tL"
-msgstr ""
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
+msgid "Play To Selection"
+msgstr "СвиÑи една ÑекÑнда"
#: Menus.cpp:873
-msgid "Play Cut Preview\tC"
+msgid "Play Cut Preview"
msgstr ""
#: ../src/Menus.cpp:572
-msgid "Selection to Start\tShift+Home"
-msgstr "СелекÑиÑа на поÑеÑок\tShift+Home"
+msgid "Selection to Start"
+msgstr "СелекÑиÑа на поÑеÑок"
#: ../src/Menus.cpp:573
-msgid "Selection to End\tShift+End"
-msgstr "СелекÑиÑа на кÑаÑ\tShift+End"
+msgid "Selection to End"
+msgstr "СелекÑиÑа на кÑаÑ"
#: ../src/Menus.cpp:575
#, fuzzy
-msgid "DeleteKey\tBackspace"
-msgstr "Delete копÑе\tÐÑиÑи"
+msgid "DeleteKey"
+msgstr "Delete копÑе"
#: ../src/Menus.cpp:580
#, fuzzy
-msgid "DeleteKey2\tDelete"
-msgstr "Delete копÑе\tÐÑиÑи"
+msgid "DeleteKey2"
+msgstr "Delete копÑе"
-#: Menus.cpp:892
-msgid "Seek left short period during playback\tLeft"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
msgstr ""
-#: Menus.cpp:893
-msgid "Seek right short period during playback\tRight"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
msgstr ""
-#: Menus.cpp:894
-msgid "Seek left long period during playback\tShift+Left"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
msgstr ""
-#: Menus.cpp:895
-msgid "Seek right long period during playback\tShift+Right"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
msgstr ""
#: Menus.cpp:899
-msgid "Move Focus to Previous Track\tUp"
+msgid "Move Focus to Previous Track"
msgstr ""
-#: Menus.cpp:900
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
msgstr ""
#: Menus.cpp:901
-msgid "Move Focus to Next Track\tDown"
+msgid "Move Focus to Next Track"
msgstr ""
-#: Menus.cpp:902
-msgid "Move Focus to Next and Change Selection\tShift+Down"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
msgstr ""
#: Menus.cpp:903
-msgid "Toggle Focused Track\tReturn"
-msgstr ""
-
-#: Menus.cpp:904
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr ""
-
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
+msgid "Toggle Focused Track"
msgstr ""
#: ../src/Menus.cpp:585
-msgid "Cursor Left\tLeft"
-msgstr "ÐокажÑÐ²Ð°Ñ Ð»ÐµÐ²Ð¾\tÐево"
+msgid "Cursor Left"
+msgstr "ÐокажÑÐ²Ð°Ñ Ð»ÐµÐ²Ð¾"
#: ../src/Menus.cpp:586
-msgid "Cursor Right\tRight"
-msgstr "ÐокажÑÐ²Ð°Ñ Ð´ÐµÑно\tÐеÑно"
+msgid "Cursor Right"
+msgstr "ÐокажÑÐ²Ð°Ñ Ð´ÐµÑно"
#: Menus.cpp:820
-msgid "Cursor Short Jump Left\t,"
+msgid "Cursor Short Jump Left"
msgstr ""
#: Menus.cpp:821
-msgid "Cursor Short Jump Right\t."
+msgid "Cursor Short Jump Right"
msgstr ""
#: Menus.cpp:822
-msgid "Cursor Long Jump Left\tShift+,"
+msgid "Cursor Long Jump Left"
msgstr ""
#: Menus.cpp:823
-msgid "Cursor Long Jump Right\tShift+."
+msgid "Cursor Long Jump Right"
msgstr ""
#: ../src/Menus.cpp:587
-msgid "Selection Extend Left\tShift+Left"
-msgstr "СелекÑиÑа извлеÑи лево\tShift+Left"
+msgid "Selection Extend Left"
+msgstr "СелекÑиÑа извлеÑи лево"
#: ../src/Menus.cpp:588
-msgid "Selection Extend Right\tShift+Right"
-msgstr "СелекÑиÑа извлеÑи деÑно\tShift+Right"
+msgid "Selection Extend Right"
+msgstr "СелекÑиÑа извлеÑи деÑно"
#: Menus.cpp:828
msgid "Set (or Extend) Left Selection"
@@ -2237,51 +2208,51 @@ msgid "Set (or Extend) Right Selection"
msgstr ""
#: ../src/Menus.cpp:589
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "СелекÑиÑа Ð·Ð±Ð¸Ñ Ð»ÐµÐ²Ð¾\tCtrl+Shift+Right"
+msgid "Selection Contract Left"
+msgstr "СелекÑиÑа Ð·Ð±Ð¸Ñ Ð»ÐµÐ²Ð¾"
#: ../src/Menus.cpp:590
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "СелекÑиÑа Ð·Ð±Ð¸Ñ Ð´ÐµÑно\tCtrl+Shift+Left"
+msgid "Selection Contract Right"
+msgstr "СелекÑиÑа Ð·Ð±Ð¸Ñ Ð´ÐµÑно"
#: Menus.cpp:916
-msgid "Change pan on focused track\tShift+P"
+msgid "Change pan on focused track"
msgstr ""
#: Menus.cpp:917
-msgid "Pan left on focused track\tAlt+Shift+Left"
+msgid "Pan left on focused track"
msgstr ""
#: Menus.cpp:918
-msgid "Pan right on focused track\tAlt+Shift+Right"
+msgid "Pan right on focused track"
msgstr ""
#: Menus.cpp:919
-msgid "Change gain on focused track\tShift+G"
+msgid "Change gain on focused track"
msgstr ""
#: Menus.cpp:920
-msgid "Increase gain on focused track\tAlt+Shift+Up"
+msgid "Increase gain on focused track"
msgstr ""
#: Menus.cpp:921
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
+msgid "Decrease gain on focused track"
msgstr ""
#: Menus.cpp:922
-msgid "Open menu on focused track\tShift+M"
+msgid "Open menu on focused track"
msgstr ""
#: Menus.cpp:923
-msgid "Mute/Unmute focused track\tShift+U"
+msgid "Mute/Unmute focused track"
msgstr ""
#: Menus.cpp:924
-msgid "Solo/Unsolo focused track\tShift+S"
+msgid "Solo/Unsolo focused track"
msgstr ""
#: Menus.cpp:925
-msgid "Close focused track\tShift+C"
+msgid "Close focused track"
msgstr ""
#: Menus.cpp:845
@@ -2293,7 +2264,35 @@ msgid "Snap To Off"
msgstr ""
#: Menus.cpp:1071
-msgid "Full screen on/off\tF11"
+msgid "Full screen on/off"
+msgstr ""
+
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr ""
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr ""
+
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr ""
+
+#: Menus.cpp:1074
+msgid "Adjust input source"
msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
@@ -2354,8 +2353,8 @@ msgstr "ÐоÑаÑе пÑво да ознаÑиÑе нÑмеÑа."
#: ../src/Menus.cpp:1248
#, fuzzy, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "&ÐÑаÑи\tCtrl+R"
+msgid "Repeat %s"
+msgstr "&ÐÑаÑи"
#: ../src/Menus.cpp:1352
msgid "There are no label tracks to export."
@@ -2563,15 +2562,6 @@ msgstr ""
msgid "Split at labels"
msgstr "Ðодели на наÑлови"
-#: ../src/Menus.cpp:2369
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "Ðа ÑÑÑаÑе на ÑпекÑÐ°Ñ ÑиÑе ÑелекÑиÑани нÑмеÑи ÑÑеба да Ñе Ñо иÑÑа ÑаÑа."
-
-#: ../src/Menus.cpp:2395
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "ÐÑÐµÐ¼Ð½Ð¾Ð³Ñ Ð°Ñдио Ñе ÑелекÑиÑани. Само пÑвиÑе %.1f ÑекÑнди од аÑдиоÑо Ñе Ð±Ð¸Ð´Ð°Ñ Ð°Ð½Ð°Ð»Ð¸Ð·Ð¸Ñани."
-
#: ../src/Menus.cpp:2660
#, c-format
msgid "Imported labels from '%s'"
@@ -2798,6 +2788,10 @@ msgstr ""
msgid "Print"
msgstr "деÑно"
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr ""
+
#: Project.cpp:573
msgid "Main Mix"
msgstr ""
@@ -2811,8 +2805,7 @@ msgstr ""
msgid "(Recovered)"
msgstr ""
-#: ../src/ControlToolBar.cpp:469 ../src/Project.cpp:1707
-#: ../src/TrackPanel.cpp:1208
+#: ../src/Menus.cpp:562
msgid "Record"
msgstr "СнимаÑ"
@@ -2838,8 +2831,8 @@ msgstr ""
msgid "Save changes?"
msgstr "Ðа Ñнимам пÑомени?"
-#: Project.cpp:1684
-msgid "All files|*.*|All supported files|"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
msgstr ""
#: ../src/Menus.cpp:2595 ../src/Project.cpp:1738
@@ -2870,6 +2863,17 @@ msgstr ""
msgid "Opening old project file"
msgstr ""
+#: Project.cpp:2073
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr ""
+
#: ../src/Project.cpp:1821 ../src/Project.cpp:1829
msgid "Error opening file"
msgstr "ÐÑеÑка пÑи вÑиÑÑваÑе даÑоÑека."
@@ -2925,10 +2929,12 @@ msgstr ""
msgid "Can't open project file"
msgstr "Ðеможно да Ñе оÑвоÑи пÑоекÑоÑ."
-#: Project.cpp:2314
+#: Project.cpp:2484
#, c-format
msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
msgstr ""
@@ -2948,16 +2954,22 @@ msgstr ""
msgid "Warning empty project"
msgstr ""
-#: Project.cpp:2591
+#: Project.cpp:2792
#, c-format
msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+"is not writable or the disk is full."
msgstr ""
#: ../src/Project.cpp:2148 ../src/Project.cpp:2160
msgid "Error saving project"
msgstr "ÐÑеÑка пÑи ÑнимаÑе пÑоекÑ"
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
#: ../src/Project.cpp:2200
#, c-format
msgid "Saved %s"
@@ -3121,6 +3133,164 @@ msgstr ""
msgid "32-bit float"
msgstr ""
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
+
+#: ../src/export/ExportMultiple.cpp:600 ../src/prefs/DirectoriesPrefs.cpp:82
+msgid "Choose..."
+msgstr "ÐдбеÑи..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
+
+#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
+msgid "false"
+msgstr ""
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:82
+msgid "Control"
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:58
+msgid "Mixer"
+msgstr ""
+
+#: toolbars/MeterToolBar.cpp:49
+msgid "Meter"
+msgstr ""
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
+#: toolbars/DeviceToolBar.cpp:54
+msgid "Device"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:81
+msgid "Transcription"
+msgstr ""
+
+#: TrackPanel.cpp:452 TrackPanel.cpp:453
+msgid "Track Panel"
+msgstr ""
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: ../src/export/ExportMultiple.cpp:636
+#, fuzzy
+msgid "Tracks"
+msgstr "Ðбележи нÑмеÑа"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
#: Screenshot.cpp:384
msgid "Saved "
msgstr ""
@@ -3129,6 +3299,10 @@ msgstr ""
msgid "Error trying to save file: "
msgstr ""
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
#: Sequence.cpp:732 Sequence.cpp:742 Sequence.cpp:749
msgid "Gap detected in project file\n"
msgstr ""
@@ -3269,6 +3443,10 @@ msgstr ""
msgid "Save Metadata As:"
msgstr ""
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
#: Theme.cpp:629
#, c-format
msgid "Audacity could not write file:\n"
@@ -3341,6 +3519,14 @@ msgstr ""
msgid "Audacity Timer Record"
msgstr ""
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
#: SmartRecordDialog.cpp:223
msgid "Recording start"
msgstr ""
@@ -3380,10 +3566,6 @@ msgstr ""
msgid "Audacity Timer Record - Waiting for Start"
msgstr ""
-#: TrackPanel.cpp:452 TrackPanel.cpp:453
-msgid "Track Panel"
-msgstr ""
-
#: ../src/AStatus.cpp:81 ../src/TrackPanel.cpp:822
#: ../src/prefs/FileFormatPrefs.cpp:105 ../src/prefs/QualityPrefs.cpp:91
msgid "Other..."
@@ -3440,6 +3622,10 @@ msgstr "ÐапÑави ÑÑеÑео нÑмеÑа"
msgid "Split Stereo Track"
msgstr "Ðодели ÑÑеÑео нÑмеÑа"
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr ""
+
#: ../src/TrackPanel.cpp:846
msgid "Set Sample Format"
msgstr "ÐоÑÑави ÑоÑÐ¼Ð°Ñ Ð½Ð° Ñемпл"
@@ -3642,14 +3828,6 @@ msgstr ""
msgid "Adjusted gain"
msgstr ""
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr ""
-
#: TrackPanel.cpp:5428
msgid "Can't delete track with active audio"
msgstr ""
@@ -3685,6 +3863,11 @@ msgstr "Ðанали:"
msgid "Split stereo track '%s'"
msgstr "Ðодели Ñа ÑÑеÑео нÑмеÑаÑа '%s'"
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
#: ../src/TrackPanel.cpp:4153
#, c-format
msgid "Made '%s' a stereo track"
@@ -3767,6 +3950,10 @@ msgstr ""
msgid "Face size"
msgstr ""
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr ""
+
#: ../src/TrackPanel.cpp:4701
msgid "Mute"
msgstr "Ðнеми"
@@ -3845,8 +4032,9 @@ msgstr "Ðодавка 1 за %i"
msgid "Plugins %i to %i"
msgstr "Ðодавки %i за %i"
-#: commands/CommandManager.cpp:857
-msgid "Disallowed for some reason. Try selecting some audio first?"
+#: commands/CommandManager.cpp:923
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
msgstr ""
#: commands/CommandManager.cpp:724
@@ -4304,12 +4492,11 @@ msgstr ""
msgid "Decay Time"
msgstr ""
-#: effects/Compressor.cpp:504
-msgid "Normalize to 0dB after compressing"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
msgstr ""
#: effects/Compressor.cpp:563
-#, c-format
#, fuzzy
msgid "Threshold %d dB"
msgstr "ÐогаÑÑÑво: %d dB"
@@ -4340,7 +4527,6 @@ msgid "%.1f:1"
msgstr ""
#: effects/Compressor.cpp:575
-#, c-format
#, fuzzy
msgid "Attack Time %.1f secs"
msgstr "УдаÑно вÑеме: %.1f Ñек"
@@ -4363,6 +4549,10 @@ msgstr "ÐбиваÑ..."
msgid "Applying Dynamic Range Compression..."
msgstr "ÐÑименеÑа динамиÑка компÑеÑиÑа"
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
msgstr ""
@@ -4382,19 +4572,6 @@ msgid "Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr ""
-
#: effects/Contrast.cpp:231
msgid "Contrast Analyzer"
msgstr ""
@@ -4428,6 +4605,11 @@ msgstr ""
msgid "Foreground end time"
msgstr ""
+#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
+#: effects/Contrast.cpp:289
+msgid "Measured"
+msgstr ""
+
#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
msgid "Use selection"
msgstr ""
@@ -4472,16 +4654,8 @@ msgstr ""
msgid "Help for WCAG2 Audio Contrast Analyzer"
msgstr ""
-#: toolbars/ControlToolBar.cpp:82
-msgid "Control"
-msgstr ""
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
msgstr ""
#: effects/Contrast.cpp:328 effects/Contrast.cpp:336 effects/Contrast.cpp:344
@@ -4592,18 +4766,6 @@ msgstr ""
msgid "Data gathered"
msgstr ""
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr ""
-
#: effects/DtmfGen.cpp:47
msgid "DTMF Tone Generator"
msgstr ""
@@ -4730,6 +4892,10 @@ msgstr ""
msgid "custom"
msgstr ""
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr ""
+
#: effects/Equalization.cpp:971
msgid "Equalization, by Martyn Shaw && Mitch Golden"
msgstr ""
@@ -4930,10 +5096,6 @@ msgstr ""
msgid "Analyser"
msgstr ""
-#: toolbars/MixerToolBar.cpp:58
-msgid "Mixer"
-msgstr ""
-
#: effects/LoadEffects.cpp:116
msgid "Simulator"
msgstr ""
@@ -5169,10 +5331,6 @@ msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr ""
#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
-msgid "false"
-msgstr ""
-
-#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
msgid "true"
msgstr ""
@@ -5526,20 +5684,37 @@ msgstr ""
msgid "Truncate Silence"
msgstr ""
-#: effects/TruncSilence.cpp:346
-msgid "Max silence duration:"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr ""
+
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
msgstr ""
#: prefs/AudioIOPrefs.cpp:175 prefs/AudioIOPrefs.cpp:178
msgid "milliseconds"
msgstr ""
+#: effects/TruncSilence.cpp:346
+msgid "Max silence duration:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ""
+
#: effects/TruncSilence.cpp:351
msgid "Threshold for silence:"
msgstr ""
-#: effects/TruncSilence.cpp:375
-msgid " Duration must be at least 1 millisecond"
+#: effects/TruncSilence.cpp:506
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
msgstr ""
#: BatchCommands.cpp:236 effects/TruncSilence.cpp:84 effects/TruncSilence.h:29
@@ -5550,17 +5725,56 @@ msgstr ""
msgid "Truncating Silence..."
msgstr ""
-#: ../src/effects/VST/VSTEffect.cpp:180
+#: ../src/effects/ladspa/LadspaEffect.cpp:452
#, fuzzy
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "ÐÑоÑÑи, Ladspa еÑекÑиÑе не може да биде пÑÐ¸Ð¼ÐµÐ½ÐµÑ Ð½Ð° ÑÑеÑео нÑмеÑи каде каналиÑе од нÑмеÑиÑе не ÑоодвеÑÑÑвÑвааÑ."
+msgid "Effect Settings"
+msgstr "Ladspa еÑÐµÐºÑ Ð¿Ð¾ÑÑавки"
+
+#: ../src/effects/ladspa/LadspaEffect.cpp:435
+#: ../src/effects/ladspa/LadspaEffect.cpp:443
+#: ../src/prefs/QualityPrefs.cpp:160
+msgid "None"
+msgstr "ÐиÑÑо"
+
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
-#: ../src/effects/VST/VSTEffect.cpp:196
-msgid "Can't process replacing"
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
msgstr ""
-#: ../src/effects/VST/VSTEffect.cpp:410
-msgid "VST Plug-in parameters:"
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
msgstr ""
#: ../src/effects/Wahwah.cpp:41
@@ -5609,21 +5823,10 @@ msgstr "ÐодгоÑвÑвам Ladspa еÑекÑ: %s"
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr ""
-#: ../src/effects/ladspa/LadspaEffect.cpp:435
-#: ../src/effects/ladspa/LadspaEffect.cpp:443
-#: ../src/prefs/QualityPrefs.cpp:160
-msgid "None"
-msgstr "ÐиÑÑо"
-
#: ../src/effects/ladspa/LadspaEffect.cpp:437
msgid "Author: "
msgstr "ÐвÑоÑ:"
-#: ../src/effects/ladspa/LadspaEffect.cpp:452
-#, fuzzy
-msgid "Effect Settings"
-msgstr "Ladspa еÑÐµÐºÑ Ð¿Ð¾ÑÑавки"
-
#: ../src/effects/Silence.cpp:127 ../src/effects/ToneGen.cpp:306
#, fuzzy
msgid "Length (seconds)"
@@ -5821,9 +6024,21 @@ msgstr "ÐкÑпоÑÑ Ð½Ð° пÑоекÑÐ¾Ñ ÐºÐ°ÐºÐ¾ mp3"
msgid "Command Output"
msgstr ""
-#: export/ExportFFmpeg.cpp:59
+#: export/ExportFFmpeg.cpp:61
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
#: export/ExportFFmpeg.cpp:394
@@ -5891,6 +6106,10 @@ msgstr ""
msgid "AAC Export Setup"
msgstr ""
+#: export/ExportOGG.cpp:86
+msgid "Quality:"
+msgstr ""
+
#: export/ExportFFmpegDialogs.cpp:217
msgid "Specify AMR-NB Options"
msgstr ""
@@ -6024,12 +6243,8 @@ msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n
"Recommended - 192000"
msgstr ""
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr ""
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid "Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
@@ -6048,10 +6263,10 @@ msgstr ""
msgid "Cutoff Bandwidth:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:947
+#: export/ExportFFmpegDialogs.cpp:936
msgid "Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:949
@@ -6240,12 +6455,12 @@ msgstr ""
msgid "AC3 Files (FFmpeg)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:56
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:57
@@ -6356,6 +6571,17 @@ msgstr ""
msgid "FLAC Files"
msgstr ""
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
#: export/ExportFLAC.cpp:93
msgid "Exporting the selected audio as FLAC"
msgstr ""
@@ -6611,10 +6837,6 @@ msgstr ""
msgid "Export location:"
msgstr "ÐокаÑиÑа:"
-#: ../src/export/ExportMultiple.cpp:600 ../src/prefs/DirectoriesPrefs.cpp:82
-msgid "Choose..."
-msgstr "ÐдбеÑи..."
-
#: export/ExportMultiple.cpp:205
msgid "Create"
msgstr ""
@@ -6640,11 +6862,6 @@ msgstr ""
msgid "First file name"
msgstr ""
-#: ../src/export/ExportMultiple.cpp:636
-#, fuzzy
-msgid "Tracks"
-msgstr "Ðбележи нÑмеÑа"
-
#: ../src/export/ExportMultiple.cpp:646
msgid "Name files:"
msgstr ""
@@ -6680,25 +6897,44 @@ msgstr ""
msgid "Choose a location to save the exported files"
msgstr "ÐдбеÑи локаÑиÑа за ÑмеÑÑÑваÑе на пÑивÑÐµÐ¼ÐµÐ½Ð¸Ð¾Ñ Ð¸Ð¼ÐµÐ½Ð¸Ðº"
-#: export/ExportMultiple.cpp:480
+#: export/ExportMultiple.cpp:524
#, c-format
-msgid "\"%s\" doesn't exist.\n"
-"\n"
-"Would you like to create it?"
+msgid "Successfully exported the following %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:637 export/ExportMultiple.cpp:772
-msgid "Edit metadata"
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:590
+#: export/ExportMultiple.cpp:527
#, c-format
-msgid "Successfully exported %d file(s)."
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
msgstr ""
-#: export/ExportMultiple.cpp:597
+#: export/ExportMultiple.cpp:480
#, c-format
-msgid "Something went wrong after exporting %d file(s)."
+msgid "\"%s\" doesn't exist.\n"
+"\n"
+"Would you like to create it?"
+msgstr ""
+
+#: export/ExportMultiple.cpp:637 export/ExportMultiple.cpp:772
+msgid "Edit metadata"
msgstr ""
#: export/ExportMultiple.cpp:881
@@ -6782,7 +7018,6 @@ msgstr ""
#. i18n-hint: %s will be the error message from libsndfile
#: export/ExportPCM.cpp:436
-#, c-format
#, fuzzy
msgid "Error (file may not have been written): %s"
msgstr "ÐÑеÑка (даÑоÑекаÑа можеби не е Ñнимена): %s"
@@ -6948,6 +7183,10 @@ msgstr ""
msgid "FLAC files"
msgstr ""
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr ""
+
#: ../src/import/ImportLOF.cpp:151 ../src/import/ImportLOF.cpp:177
msgid "List of Files in basic text format"
msgstr "ÐиÑÑа на даÑоÑеки во оÑновен ÑекÑÑ ÑоÑмаÑ"
@@ -7108,128 +7347,57 @@ msgstr ""
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr ""
-#: ../src/prefs/PrefsDialog.cpp:84
-msgid "Audio I/O"
-msgstr "ÐÑдио Ð/Ð"
-
-#: ../src/prefs/AudioIOPrefs.cpp:212
-msgid "1 (Mono)"
-msgstr "1 (Ðоно)"
-
-#: ../src/prefs/AudioIOPrefs.cpp:213
-msgid "2 (Stereo)"
-msgstr "2 (СÑеÑео)"
-
-#: ../src/prefs/AudioIOPrefs.cpp:80
-msgid "Playback"
-msgstr "ÐлеÑбек"
-
-#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
-#: toolbars/DeviceToolBar.cpp:54
-msgid "Device"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:122
-msgid "Using:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:123
-msgid "Portaudio v"
-msgstr ""
-
-#: ../src/prefs/AudioIOPrefs.cpp:148
-msgid "Recording"
-msgstr "СнимаÑе"
-
-#: prefs/AudioIOPrefs.cpp:139
-msgid "Channels"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:145
-msgid "Playthrough"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:194
-msgid "Effects Preview"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:165
-msgid "Length of preview:"
+#: prefs/BatchPrefs.cpp:53 prefs/BatchPrefs.cpp:54
+msgid "Batch"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:158
-msgid "Cut Preview"
+#: prefs/BatchPrefs.cpp:75 prefs/GUIPrefs.cpp:70
+msgid "Behaviors"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:173
-msgid "Preview before cut region:"
+#: prefs/BatchPrefs.cpp:80
+msgid "&Don't apply effects in batch mode"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:175
-msgid "Preview after cut region:"
+#: prefs/BatchPrefs.cpp:83
+msgid "Cl&eanSpeech Mode (Customized GUI)"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:168
-msgid "Latency"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:195
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
-msgstr ""
+#: ../src/prefs/PrefsDialog.cpp:89
+msgid "Interface"
+msgstr "ÐнÑеÑÑеÑÑ"
-#: prefs/AudioIOPrefs.cpp:198
-msgid "Latency correction:\n"
-"(negative = backwards)"
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:197
-msgid "Seek Time when playing"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:187
-msgid "Short period:"
+#: prefs/AudioIOPrefs.cpp:122
+msgid "Using:"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:189
-msgid "Long period:"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:80
+msgid "Playback"
+msgstr "ÐлеÑбек"
-#: prefs/BatchPrefs.cpp:53 prefs/BatchPrefs.cpp:54
-msgid "Batch"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:148
+msgid "Recording"
+msgstr "СнимаÑе"
-#: prefs/BatchPrefs.cpp:75 prefs/GUIPrefs.cpp:70
-msgid "Behaviors"
+#: prefs/AudioIOPrefs.cpp:139
+msgid "Channels"
msgstr ""
-#: prefs/BatchPrefs.cpp:80
-msgid "&Don't apply effects in batch mode"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:212
+msgid "1 (Mono)"
+msgstr "1 (Ðоно)"
-#: prefs/BatchPrefs.cpp:83
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:213
+msgid "2 (Stereo)"
+msgstr "2 (СÑеÑео)"
#: ../src/prefs/PrefsDialog.cpp:88 ../src/prefs/PrefsDialog.cpp:216
msgid "Directories"
@@ -7247,34 +7415,31 @@ msgstr "ÐокаÑиÑа:"
msgid "Free Space:"
msgstr "Слободен пÑоÑÑоÑ:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr ""
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr ""
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
+#: prefs/DirectoriesPrefs.cpp:110
+msgid "Audio cache"
msgstr ""
#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
+msgid "Play and/or record using RAM (useful for slow drives)"
msgstr ""
-#: prefs/DirectoriesPrefs.cpp:110
-msgid "Audio cache"
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
msgstr ""
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
#: ../src/prefs/DirectoriesPrefs.cpp:135
msgid "Choose a location to place the temporary directory"
msgstr "ÐдбеÑи локаÑиÑа за ÑмеÑÑÑваÑе на пÑивÑÐµÐ¼ÐµÐ½Ð¸Ð¾Ñ Ð¸Ð¼ÐµÐ½Ð¸Ðº"
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: ../src/prefs/DirectoriesPrefs.cpp:181
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -7293,220 +7458,141 @@ msgstr "ÐÐ¼ÐµÐ½Ð¸ÐºÐ¾Ñ %s не е Ñнимлив"
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "ÐÑомениÑе во пÑивÑÐµÐ¼ÐµÐ½Ð¸Ð¾Ñ Ð¸Ð¼ÐµÐ½Ð¸Ðº нема да Ð¸Ð¼Ð°Ð°Ñ ÐµÑÐµÐºÑ Ñе додека Audacity не Ñе пÑевклÑÑи."
-#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
-msgid "Import / Export"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:84
-msgid "MP3 Export Library"
-msgstr ""
-
-#: ../src/prefs/FileFormatPrefs.cpp:180
-msgid "MP3 Library Version:"
-msgstr "ÐеÑзиÑа на MP3 библиоÑека:"
-
-#: prefs/FileFormatPrefs.cpp:93
-msgid "MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:98
-msgid "LAME MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
-msgid "&Download"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:136
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:137
-msgid "When importing audio files"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:140
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:141
-msgid "&Read uncompressed audio files directly from the original (faster)"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:143
-msgid "&Normalize all tracks in project"
+#: prefs/GUIPrefs.cpp:42
+msgid "In Browser"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:132
-msgid "When saving a project that depends on other audio files"
+#: prefs/GUIPrefs.cpp:43
+msgid "From Internet"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:87
-msgid "Always © all audio into project (safest)"
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:88
-msgid "&Do not copy any audio"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:135
-msgid "&Ask user"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:93
-msgid "When exporting tracks to an audio file"
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:144
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:97
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
msgstr ""
-#: prefs/BatchPrefs.cpp:91
-msgid "S&how Metadata Editor prior to export step"
+#: ../src/prefs/GUIPrefs.cpp:150
+msgid "-36 dB (shallow range for high-amplitude editing)"
msgstr ""
-#: ../src/prefs/PrefsDialog.cpp:89
-msgid "Interface"
-msgstr "ÐнÑеÑÑеÑÑ"
-
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
+#: ../src/prefs/GUIPrefs.cpp:157
+msgid "-48 dB (PCM range of 8 bit samples)"
msgstr ""
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
+#: prefs/GUIPrefs.cpp:143
+msgid "-60 dB (PCM range of 10 bit samples)"
msgstr ""
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
+#: ../src/prefs/GUIPrefs.cpp:164
+msgid "-96 dB (PCM range of 16 bit samples)"
msgstr ""
-#: prefs/GUIPrefs.cpp:72
-msgid "&Update display while playing"
+#: ../src/prefs/GUIPrefs.cpp:171
+msgid "-120 dB (approximate limit of human hearing)"
msgstr ""
-#: prefs/GUIPrefs.cpp:96
-msgid "Cl&osing last window quits Audacity"
+#: ../src/prefs/GUIPrefs.cpp:178
+msgid "-145 dB (PCM range of 24 bit samples)"
msgstr ""
-#: prefs/GUIPrefs.cpp:76
-msgid "Enable &dragging of left and right selection edges"
+#: prefs/SpectrumPrefs.cpp:96
+msgid "Display"
msgstr ""
#: prefs/GUIPrefs.cpp:100
msgid "Er&gonomic order of audio I/O buttons"
msgstr ""
-#: prefs/GUIPrefs.cpp:80
-msgid "Automatically &fit tracks vertically zoomed"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
msgstr ""
-#: prefs/GUIPrefs.cpp:104
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
msgstr ""
-#: prefs/GUIPrefs.cpp:90
-msgid "Editing a &clip can move other clips"
+#: prefs/GUIPrefs.cpp:167
+msgid "Help:"
msgstr ""
-#: prefs/GUIPrefs.cpp:88
-msgid "&Select all audio in project, if none selected"
+#: prefs/GUIPrefs.cpp:96
+msgid "Cl&osing last window quits Audacity"
msgstr ""
#: prefs/GUIPrefs.cpp:90
msgid "&Beep on completion of longer activities"
msgstr ""
-#: prefs/BatchPrefs.cpp:87 prefs/GUIPrefs.cpp:94
-msgid "Show / Hide"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:96
-msgid "Enable cut &lines"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:98
-msgid "Show warnings about &temp files"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:122
-msgid "Show &Welcome Message at program start up"
-msgstr ""
-
#: prefs/GUIPrefs.cpp:126
msgid "Modes"
msgstr ""
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
+msgstr ""
+
#: prefs/GUIPrefs.cpp:129
msgid "Don't a&pply effects in batch mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
+#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
+msgid "Import / Export"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:150
-msgid "-36 dB (shallow range for high-amplitude editing)"
+#: prefs/FileFormatPrefs.cpp:137
+msgid "When importing audio files"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:157
-msgid "-48 dB (PCM range of 8 bit samples)"
+#: prefs/FileFormatPrefs.cpp:140
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
msgstr ""
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
+#: prefs/FileFormatPrefs.cpp:141
+msgid "&Read uncompressed audio files directly from the original (faster)"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:164
-msgid "-96 dB (PCM range of 16 bit samples)"
+#: prefs/FileFormatPrefs.cpp:143
+msgid "&Normalize all tracks in project"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:171
-msgid "-120 dB (approximate limit of human hearing)"
+#: prefs/FileFormatPrefs.cpp:93
+msgid "When exporting tracks to an audio file"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:178
-msgid "-145 dB (PCM range of 24 bit samples)"
+#: prefs/FileFormatPrefs.cpp:144
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
msgstr ""
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
+#: prefs/FileFormatPrefs.cpp:97
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
msgstr ""
-#: prefs/GUIPrefs.cpp:164
-msgid "Other interface choices"
+#: prefs/BatchPrefs.cpp:91
+msgid "S&how Metadata Editor prior to export step"
msgstr ""
-#: prefs/GUIPrefs.cpp:167
-msgid "Help:"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:168
-msgid "Solo Button:"
+#: prefs/ImportExportPrefs.cpp:84
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
msgstr ""
#: ../src/prefs/PrefsDialog.cpp:90
@@ -7537,17 +7623,22 @@ msgstr ""
msgid "&Defaults"
msgstr ""
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr ""
+
#: ../src/prefs/KeyConfigPrefs.cpp:79
msgid "Key Combination"
msgstr "ÐомбинаÑиÑа на Ñипки"
-#: ../src/prefs/KeyConfigPrefs.cpp:159
-msgid "Export Keyboard Shortcuts As:"
-msgstr "ÐкÑпоÑÑ ÐºÑаÑенки како:"
+#: ../src/EditToolBar.cpp:159
+msgid "Undo"
+msgstr "ÐÑаÑи"
-#: ../src/prefs/KeyConfigPrefs.cpp:174
-msgid "Error saving keyboard shortcuts"
-msgstr "ÐÑеÑка пÑи ÑнимаÑе кÑаÑенка"
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr ""
#: ../src/prefs/KeyConfigPrefs.cpp:188
msgid "Select an XML file containing Audacity keyboard shortcuts..."
@@ -7557,6 +7648,14 @@ msgstr "СелекÑиÑаÑÑе XML даÑоÑека коÑа ÑодÑжи Auda
msgid "Error loading keyboard shortcuts"
msgstr "ÐÑеÑка пÑи Ð²Ð½ÐµÑ Ð½Ð° кÑаÑенка"
+#: ../src/prefs/KeyConfigPrefs.cpp:159
+msgid "Export Keyboard Shortcuts As:"
+msgstr "ÐкÑпоÑÑ ÐºÑаÑенки како:"
+
+#: ../src/prefs/KeyConfigPrefs.cpp:174
+msgid "Error saving keyboard shortcuts"
+msgstr "ÐÑеÑка пÑи ÑнимаÑе кÑаÑенка"
+
#: prefs/KeyConfigPrefs.cpp:239
#, c-format
msgid "The keyboard shortcut '%s' is already assigned to:\n"
@@ -7564,9 +7663,61 @@ msgid "The keyboard shortcut '%s' is already assigned to:\n"
"'%s'"
msgstr ""
-#: ../src/EditToolBar.cpp:159
-msgid "Undo"
-msgstr "ÐÑаÑи"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:84
+msgid "MP3 Export Library"
+msgstr ""
+
+#: ../src/prefs/FileFormatPrefs.cpp:180
+msgid "MP3 Library Version:"
+msgstr "ÐеÑзиÑа на MP3 библиоÑека:"
+
+#: prefs/FileFormatPrefs.cpp:93
+msgid "MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:98
+msgid "LAME MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
+msgid "&Download"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:109
+msgid "FFmpeg Library Version:"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
+msgid "FFmpeg Library:"
+msgstr ""
+
+#: ../src/prefs/PrefsDialog.cpp:84
+msgid "Audio I/O"
+msgstr "ÐÑдио Ð/Ð"
+
+#: prefs/AudioIOPrefs.cpp:123
+msgid "Portaudio v"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:145
+msgid "Playthrough"
+msgstr ""
#: prefs/AudioIOPrefs.cpp:147
#, fuzzy
@@ -7581,6 +7732,10 @@ msgstr ""
msgid "&Software Playthrough (Play new track while recording it)"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:158
+msgid "Cut Preview"
+msgstr ""
+
#: prefs/MidiIOPrefs.cpp:160
msgid "Play before cut region:"
msgstr ""
@@ -7589,6 +7744,10 @@ msgstr ""
msgid "Play after cut region:"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:168
+msgid "Latency"
+msgstr ""
+
#: prefs/AudioIOPrefs.cpp:174
msgid "Audio to buffer:"
msgstr ""
@@ -7601,6 +7760,18 @@ msgstr ""
msgid "Seek Time"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:187
+msgid "Short period:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:189
+msgid "Long period:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:194
+msgid "Effects Preview"
+msgstr ""
+
#: prefs/MidiIOPrefs.cpp:196
msgid "Play when previewing:"
msgstr ""
@@ -7814,10 +7985,62 @@ msgstr "Ctrl-ÐÑÑливо ÑвÑе"
msgid "Zoom in or out"
msgstr "ÐÑм во или од"
+#: prefs/AudioIOPrefs.cpp:165
+msgid "Length of preview:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:173
+msgid "Preview before cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:175
+msgid "Preview after cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:197
+msgid "Seek Time when playing"
+msgstr ""
+
#: ../src/prefs/PrefsDialog.cpp:52
msgid "Audacity Preferences"
msgstr "Ðudacity поÑÑавки"
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:132
+msgid "When saving a project that depends on other audio files"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:87
+msgid "Always © all audio into project (safest)"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:88
+msgid "&Do not copy any audio"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:135
+msgid "&Ask user"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr ""
+
#: ../src/prefs/QualityPrefs.cpp:161
msgid "Rectangle"
msgstr "ÐÑавоаголник"
@@ -7842,44 +8065,44 @@ msgstr "СÑандаÑдна ÑаÑа на Ñемпл:"
msgid "Default Sample Format:"
msgstr "СÑандаÑден ÑоÑÐ¼Ð°Ñ Ð½Ð° Ñемпл:"
-#: ../src/prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "ÐонвеÑÑÐ¾Ñ Ð½Ð° ÑаÑа во Ñеално вÑеме:"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:147
-msgid "High-quality sample rate converter:"
-msgstr "ÐиÑококвалиÑеÑен конвеÑÑÐ¾Ñ Ð½Ð° ÑаÑи:"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+msgid "Sample Rate Converter:"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:171
-msgid "Real-time dither:"
-msgstr "ÐÐµÐ»Ð°Ñ Ð²Ð¾ Ñеално вÑеме:"
+#: prefs/QualityPrefs.cpp:164
+msgid "Dither"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:186
-msgid "High-quality dither:"
-msgstr "ÐиÑококвалиÑеÑен делаÑ:"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
+#: prefs/AudioIOPrefs.cpp:149
+msgid "Overdub: &Play other tracks while recording new one"
msgstr ""
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
+#: prefs/AudioIOPrefs.cpp:150
+msgid "&Hardware Playthrough: Play new track while recording it"
msgstr ""
-#: prefs/QualityPrefs.cpp:164
-msgid "Dither"
+#: prefs/AudioIOPrefs.cpp:157
+msgid "&Software Playthrough: Play new track while recording or monitoring"
msgstr ""
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
+#: prefs/AudioIOPrefs.cpp:160
+msgid "(uncheck when recording \"stereo mix\")"
msgstr ""
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
msgstr ""
-#: prefs/SmartRecordPrefs.cpp:54 prefs/SmartRecordPrefs.cpp:55
-msgid "Smart Recording"
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
msgstr ""
#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
@@ -7894,18 +8117,54 @@ msgstr ""
msgid "Spectrograms"
msgstr "СпекÑÑогÑам"
-#: ../src/prefs/SpectrumPrefs.cpp:70
-msgid "FFT Size"
-msgstr "FFT големина"
-
#: prefs/SpectrumPrefs.cpp:75
msgid "8 - most wideband"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
#: ../src/prefs/SpectrumPrefs.cpp:40
msgid "256 - default"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:107
msgid "32768 - most narrowband"
msgstr ""
@@ -7914,20 +8173,24 @@ msgstr ""
msgid "4096 - most narrowband"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:90
-msgid "Window type:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:125
-msgid "FFT Skip Points"
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:96
-msgid "Display"
+#: prefs/SpectrumPrefs.cpp:93
+msgid "Window type"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:125
+msgid "FFT Skip Points"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:100
-msgid "&Grayscale"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
msgstr ""
#: prefs/SpectrumPrefs.cpp:103
@@ -7938,16 +8201,16 @@ msgstr ""
msgid "Maximum Frequency (Hz):"
msgstr "ÐакÑимална ÑÑекÑенÑиÑа (Hz):"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
msgstr ""
#: prefs/SpectrumPrefs.cpp:165
@@ -7958,6 +8221,14 @@ msgstr ""
msgid "Max. Number of Notes (1..128):"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:161
+msgid "&Find Notes"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Quantize Notes"
+msgstr ""
+
#: ../src/prefs/SpectrumPrefs.cpp:148
msgid "The maximum frequency must be an integer"
msgstr "ÐакÑималнаÑа ÑÑекÑенÑиÑа моÑа да биде делива"
@@ -7974,18 +8245,57 @@ msgstr ""
msgid "Minimum frequency must be at least 0 Hz"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:226 prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
+#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:230
+msgid "The maximum number of notes must be in the range 1..128"
msgstr ""
#: prefs/ThemePrefs.cpp:61 prefs/ThemePrefs.cpp:62
msgid "Theme"
msgstr ""
+#: prefs/ThemePrefs.cpp:123
+msgid "Info"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:91
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#: prefs/ThemePrefs.cpp:90
msgid "Theme Cache - Images && Color"
msgstr ""
@@ -8014,78 +8324,94 @@ msgstr ""
msgid "Load Files"
msgstr ""
-#: prefs/ThemePrefs.cpp:123
-msgid "Info"
+#: prefs/GUIPrefs.cpp:50
+msgid "Simple"
msgstr ""
-#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
+#: prefs/GUIPrefs.cpp:72
+msgid "&Update display while playing"
msgstr ""
-#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
+#: prefs/GUIPrefs.cpp:80
+msgid "Automatically &fit tracks vertically zoomed"
msgstr ""
-#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
+#: prefs/TracksPrefs.cpp:88
+msgid "Default View Mode:"
msgstr ""
-#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:88
+msgid "&Select all audio in project, if none selected"
msgstr ""
-#: ../src/ControlToolBar.cpp:470
-msgid "Pause"
-msgstr "ÐаÑза"
+#: prefs/GUIPrefs.cpp:96
+msgid "Enable cut &lines"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play"
+#: prefs/GUIPrefs.cpp:76
+msgid "Enable &dragging of left and right selection edges"
msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
+#: prefs/GUIPrefs.cpp:104
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
msgstr ""
-#: ../src/ControlToolBar.cpp:471
-msgid "Stop"
-msgstr "СÑоп"
+#: prefs/GUIPrefs.cpp:90
+msgid "Editing a &clip can move other clips"
+msgstr ""
-#: ../src/ControlToolBar.cpp:467
-msgid "Skip to Start"
-msgstr "Скокни до поÑеÑок"
+#: prefs/GUIPrefs.cpp:168
+msgid "Solo Button:"
+msgstr ""
-#: ../src/ControlToolBar.cpp:472
-msgid "Skip to End"
-msgstr "Скокни до кÑаÑ"
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:192
-msgid "Record (Shift for Append Record)"
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
msgstr ""
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr ""
+
+#: ../src/Menus.cpp:561
+msgid "Pause"
+msgstr "ÐаÑза"
+
+#: ../src/Menus.cpp:560
+msgid "Stop"
+msgstr "СÑоп"
+
#: toolbars/ControlToolBar.cpp:195
msgid "Clean Speech"
msgstr ""
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play (Shift for Loop Play)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:192
+msgid "Record (Shift for Append Record)"
+msgstr ""
+
#: toolbars/ControlToolBar.cpp:524 toolbars/ControlToolBar.cpp:776
msgid "Error while opening sound device. "
msgstr ""
@@ -8127,30 +8453,21 @@ msgstr "ÐÑм во"
msgid "Zoom Out"
msgstr "ÐÑм од"
-#: ../src/EditToolBar.cpp:170
-#, fuzzy
-msgid "Zoom Toggle"
-msgstr "ÐÑм алаÑка"
-
-#: toolbars/EditToolBar.cpp:160
-msgid "Fit Selection"
-msgstr ""
-
#: ../src/EditToolBar.cpp:174
msgid "Fit selection in window"
msgstr "СобеÑи ÑелекÑиÑа во пÑозоÑеÑ"
-#: toolbars/EditToolBar.cpp:162
-msgid "Fit Project"
-msgstr ""
-
#: ../src/EditToolBar.cpp:176
#, fuzzy
msgid "Fit project in window"
msgstr "СобеÑи Ñел пÑÐ¾ÐµÐºÑ Ð²Ð¾ пÑозоÑеÑ"
-#: toolbars/MeterToolBar.cpp:49
-msgid "Meter"
+#: toolbars/EditToolBar.cpp:160
+msgid "Fit Selection"
+msgstr ""
+
+#: toolbars/EditToolBar.cpp:162
+msgid "Fit Project"
msgstr ""
#: toolbars/MeterToolBar.cpp:79
@@ -8197,6 +8514,14 @@ msgstr ""
msgid "Input Source"
msgstr ""
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:75
msgid "Selection"
msgstr ""
@@ -8275,30 +8600,6 @@ msgstr "Left=ÐÑм во, Right=ÐÑм од, Middle=ÐоÑмално"
msgid "Click and drag to move a track in time"
msgstr "Ðликни и пÑÑÑи за движеÑе на нÑмеÑаÑа вÑеменÑки"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr ""
-
-#: ../src/ControlToolBar.cpp:355
-msgid "Selection Tool"
-msgstr "ÐзбоÑни алаÑки"
-
-#: ../src/ControlToolBar.cpp:356
-msgid "Envelope Tool"
-msgstr "ÐÑива алаÑки"
-
-#: ../src/ControlToolBar.cpp:357
-msgid "Time Shift Tool"
-msgstr "ÐÑеменÑка алаÑка"
-
-#: ../src/ControlToolBar.cpp:358
-msgid "Zoom Tool"
-msgstr "ÐÑм алаÑка"
-
-#: ../src/ControlToolBar.cpp:359
-msgid "Draw Tool"
-msgstr "ЦÑÑаÑки алаÑки"
-
#: ../src/ControlToolBar.cpp:360
msgid "Multi-Tool Mode"
msgstr "ÐÑлÑи алаÑки"
@@ -8307,22 +8608,10 @@ msgstr "ÐÑлÑи алаÑки"
msgid "Slide Tool"
msgstr ""
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr ""
-
-#: toolbars/TranscriptionToolBar.cpp:81
-msgid "Transcription"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:183
msgid "Play at selected speed"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:184
-msgid "Play-at-speed"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:190 toolbars/TranscriptionToolBar.cpp:195
msgid "Playback Speed"
msgstr ""
@@ -8331,74 +8620,38 @@ msgstr ""
msgid "Adjust left selection to next onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:201
-msgid "Left-to-On"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:203
msgid "Adjust right selection to previous offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:204
-msgid "Right-to-Off"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:206
msgid "Adjust left selection to next offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:207
-msgid "Left-to-Off"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:209
msgid "Adjust right selection to previous onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:210
-msgid "Right-to-On"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:212
msgid "Select region of sound around cursor"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:213
-msgid "Select-Sound"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:215
msgid "Select region of silence around cursor"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:216
-msgid "Select-Silence"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:218
msgid "Automatically make labels from words"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:219
-msgid "Make Labels"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:221
msgid "Add label at selection"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:222
-msgid "Add Label"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:224
msgid "Calibrate voicekey"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:225
-msgid "Calibrate"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:229
msgid "Adjust Sensitivity"
msgstr ""
@@ -8431,6 +8684,46 @@ msgstr ""
msgid "Key type"
msgstr ""
+#: toolbars/TranscriptionToolBar.cpp:184
+msgid "Play-at-speed"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:201
+msgid "Left-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:204
+msgid "Right-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:207
+msgid "Left-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:210
+msgid "Right-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:213
+msgid "Select-Sound"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:216
+msgid "Select-Silence"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:219
+msgid "Make Labels"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:222
+msgid "Add Label"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:225
+msgid "Calibrate"
+msgstr ""
+
#: ../src/widgets/AButton.cpp:181
msgid " (disabled)"
msgstr " (оÑкажана)"
@@ -8735,3 +9028,15 @@ msgstr ""
msgid "Could not load file: \"%s\""
msgstr ""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
+
diff --git a/locale/nb.po b/locale/nb.po
index 59c42f0..34e707e 100644
--- a/locale/nb.po
+++ b/locale/nb.po
@@ -7,7 +7,7 @@ msgid ""
msgstr "Project-Id-Version: Audacity 1.3.3\n"
"Report-Msgid-Bugs-To: audacity-translation at lists.sourceforge.net\n"
"POT-Creation-Date: 2008-04-28 22:24+0100\n"
-"PO-Revision-Date: 2008-05-10 15:35+0200\n"
+"PO-Revision-Date: 2009-01-27 22:11+0100\n"
"Last-Translator: Kevin Brubeck Unhammer <unhammer at gmail.com>\n"
"Language-Team: Translators-Norway <unhammer at gmail.com>\n"
"MIME-Version: 1.0\n"
@@ -25,14 +25,14 @@ msgstr "OK... Audacious!"
#: AboutDialog.cpp:175
msgid "Audacity is a free program written by a team of volunteer <a href=\"http://audacity.sourceforge.net/community/developers\">developers</a> around the world. We are grateful to <a href=\"http://sourceforge.net\">SourceForge.net</a> for our project hosting. Audacity is available for Windows 98 and later, Mac OS X, Linux and other Unix-like operating systems. Older versions of Audacity are available for Mac OS 9."
-msgstr ""
+msgstr "Audacity er et gratis program skrevet av en gruppe med frivillige <a href=\"http://audacity.sourceforge.net/community/developers\">utviklere</a> fra hele verden. Samarbeidet er mulig takket være <a href=\"http://sourceforge.net\">SourceForge.net</a>. Audacity finnes for Windows 98 og nyere, Mac OS X, Linux og andre Unix-lignende operativsystemer. Eldre versjoner av Audacity er tilgjengelige for Mac OS 9."
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
# i18n-hint: The translation of "translator_credits" will appear
@@ -51,7 +51,7 @@ msgstr "Norwegian (bokm
#: AboutDialog.cpp:207
msgid "A Free Digital Audio Editor<br>"
-msgstr ""
+msgstr "Et gratis digitalt lydredigeringsprogram<br>"
#: AboutDialog.cpp:211
msgid "Credits"
@@ -88,8 +88,9 @@ msgid "Special thanks:"
msgstr "Særlig takk til:"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
-msgstr ""
+#, fuzzy
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgstr "Opphavsretten til <b>Audacity®</b>-programvaren er tilhører © 1999-2008 Audacity Team. <br>Navnet <b>Audacity®</b> er et registrert varemerke tilhørende Dominic Mazzoni."
#: AboutDialog.cpp:254
msgid "Audacity"
@@ -229,11 +230,21 @@ msgstr "Indatam
msgid "Output Meter"
msgstr "Utdatamåler"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
+#: Menus.cpp:164
+msgid "&New"
+msgstr "&Ny"
+
+#: Menus.cpp:166
+msgid "&Open..."
+msgstr "&Åpne..."
+
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
+
#: AudacityApp.cpp:751 Menus.cpp:478
-msgid "&Preferences...\tCtrl+,"
-msgstr "&Preferences...\tCtrl+,"
+msgid "&Preferences..."
+msgstr "&Preferences..."
#: AudacityApp.cpp:833 AudacityApp.cpp:910
#, c-format
@@ -357,18 +368,16 @@ msgstr "Feil:"
msgid "Error Initializing Audio"
msgstr "Feil ved initialisering av lyd"
+#: AudioIO.cpp:1225
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
+"Audacity has brought it back to start at zero.\n"
+"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
+msgstr ""
+
#: AudioIO.cpp:1208
msgid "Latency problem"
msgstr "Latensproblem"
-#: AudioIO.cpp:1208
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
-"Audacity has brought it back to start at zero.\n"
-"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
-msgstr "En latensinnstilling skjulte lydopptaket foran nullpunktet.\n"
-"Audacity flyttet det tilbake så det starter på null.\n"
-"Du må kanskje bruke tidsforskyvningsverktøyet (<---> eller F5) for å dra sporet til korrekt sted."
-
#: AutoRecovery.cpp:54
msgid "Automatic Crash Recovery"
msgstr "Automatisk krasjgjenoppretting"
@@ -502,7 +511,7 @@ msgstr "Anvend kjede"
#: BatchProcessDialog.cpp:67
msgid "CleanSpeech Batch Processing"
-msgstr ""
+msgstr "CleanSpeech satsvis prosessering"
#: BatchProcessDialog.cpp:94
msgid "&Select chain"
@@ -543,7 +552,7 @@ msgstr "Vennligst lagre og lukk dette prosjektet f
#: BatchProcessDialog.cpp:206
msgid "Select vocal file(s) for batch CleanSpeech Chain..."
-msgstr ""
+msgstr "Velg vokalfil(er) for satsvis CleanSpeech-kjede..."
#: BatchProcessDialog.cpp:207
msgid "Select file(s) for batch processing..."
@@ -551,7 +560,7 @@ msgstr "Velg fil(er) for satsvis prosessering..."
#: BatchProcessDialog.cpp:209
msgid "Vocal files (*.wav;*.mp3)|*.wav;*.mp3|WAV files (*.wav)|*.wav|MP3 files (*.mp3)|*.mp3"
-msgstr ""
+msgstr "Vokalfiler (*.wav;*.mp3)|*.wav;*.mp3|WAV-filer (*.wav)|*.wav|MP3-filer (*.mp3)|*.mp3"
#: BatchProcessDialog.cpp:210
msgid "All files (*.*)|*.*|WAV files (*.wav)|*.wav|AIFF files (*.aif)|*.aif|AU files (*.au)|*.au|MP3 files (*.mp3)|*.mp3|Ogg Vorbis files (*.ogg)|*.ogg|FLAC files (*.flac)|*.flac"
@@ -593,9 +602,8 @@ msgstr "K&jeder (dobbeltklikk eller trykk MELLOMROM for
#. i18n-hint: This is the number of the command in the list
#: BatchProcessDialog.cpp:453
-#, fuzzy
-msgid "No"
-msgstr "Nr/Nei"
+msgid "Num"
+msgstr ""
#: BatchProcessDialog.cpp:459
msgid "&Insert"
@@ -732,7 +740,7 @@ msgstr "Advarsel: det er veldig lite ledig diskplass p
#: DirManager.cpp:221 DirManager.cpp:251 DirManager.cpp:332
msgid "Progress"
-msgstr "Fremskritt"
+msgstr "Framgang"
#: DirManager.cpp:285
msgid "Cleaning up temporary files"
@@ -789,7 +797,7 @@ msgstr "Klarte ikke omd
#: DirManager.cpp:1183
#, c-format
msgid "Changed block %s to new alias name\n"
-msgstr ""
+msgstr "Endret blokk %s til nytt aliasnavn\n"
#: DirManager.cpp:1115 DirManager.cpp:1403
msgid "Inspecting project file data..."
@@ -940,31 +948,31 @@ msgstr "Rektangul
#: FFmpeg.cpp:36
msgid "FFmpeg support not compiled in"
-msgstr ""
+msgstr "FFmpeg-støtte ikke kompilert"
-#: FFmpeg.cpp:101
+#: FFmpeg.cpp:103
msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
#: FFmpeg.cpp:104
msgid "FFmpeg startup failed"
-msgstr ""
+msgstr "Feil ved start av FFmpeg"
#: FFmpeg.cpp:115
msgid "FFmpeg library not found"
-msgstr ""
+msgstr "Fant ikke FFmpeg-biblioteket"
#: FFmpeg.cpp:170
msgid "Locate FFmpeg"
-msgstr ""
+msgstr "Finn FFmpeg"
#: FFmpeg.cpp:190
#, c-format
msgid "Audacity needs the file %s to import and export audio via FFmpeg."
-msgstr ""
+msgstr "Audacity trenger fila %s for å importere og eksportere via FFmpeg."
#: export/ExportMP3.cpp:562
#, c-format
@@ -982,11 +990,11 @@ msgstr "Bla gjennom..."
#: FFmpeg.cpp:212
msgid "To get a free copy of FFmpeg, click here -->"
-msgstr ""
+msgstr "For å få en gratis kopi av FFmpeg, klikk her -->"
#: FFmpeg.cpp:215 export/ExportMP3.cpp:579
msgid "Download"
-msgstr ""
+msgstr "Last ned"
# i18n-hint: It's asking for the location of a file, for
# example, "Where is lame_enc.dll?" - you could translate
@@ -1001,34 +1009,35 @@ msgstr "Hvor finnes filen %s?"
#: FFmpeg.cpp:407
msgid "Failed to find compatible FFmpeg libraries"
-msgstr ""
+msgstr "Fant ingen kompatible FFmpeg-bibliotek"
#: FFmpeg.h:95
msgid "FFmpeg not found"
-msgstr ""
+msgstr "Fant ikke FFmpeg"
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
#: FFmpeg.h:109
msgid "Do not show this warning again"
-msgstr ""
+msgstr "Ikke vis denne advarselen igjen"
#: FFmpeg.h:251
msgid "Only avformat.dll|*avformat*.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
-msgstr ""
+msgstr "Bare avformat.dll|*avformat*.dll|Dynamisk lenkede bibliotek (*.dll)|*.dll|Alle filer (*.*)|*"
#: FFmpeg.h:268
msgid "Dynamic Libraries (*.dylib)|*.dylib|All Files (*)|*"
-msgstr ""
+msgstr "Dynamiske bibliotek (*.dylib)|*.dylib|Alle filer (*)|*"
#: FFmpeg.h:266
msgid "Only libavformat.so|libavformat.so*|Dynamically Linked Libraries (*.so*)|*.so*|All Files (*)|*"
-msgstr ""
+msgstr "Bare libavformat.so|libavformat.so*|Dynamisk lenkede bibliotek (*.so*)|*.so*|Alle filer (*)|*"
#: FreqWindow.cpp:104
msgid "Frequency Analysis"
@@ -1081,7 +1090,7 @@ msgstr " vindu"
#: FreqWindow.cpp:187 FreqWindow.cpp:191
msgid "Function"
-msgstr ""
+msgstr "Funksjon"
#: FreqWindow.cpp:192
msgid "Linear frequency"
@@ -1093,7 +1102,7 @@ msgstr "Logaritmisk frekvens"
#: FreqWindow.cpp:201 FreqWindow.cpp:205
msgid "Axis"
-msgstr ""
+msgstr "Akse"
#: FreqWindow.cpp:206 LabelDialog.cpp:128 Menus.cpp:204 Menus.cpp:233
msgid "&Export..."
@@ -1104,10 +1113,23 @@ msgstr "&Eksporter..."
msgid "Export"
msgstr "Eksport"
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
#: FreqWindow.cpp:209 widgets/ErrorDialog.cpp:159
msgid "Close"
msgstr "Lukk"
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr ""
+
#: FreqWindow.cpp:272 FreqWindow.cpp:402 effects/AutoDuck.cpp:489
#: effects/AutoDuck.cpp:523 effects/AutoDuck.cpp:791
#: effects/Compressor.cpp:352 effects/Compressor.cpp:360
@@ -1127,6 +1149,15 @@ msgstr "dB"
msgid "Hz"
msgstr "Hz"
+#: Menus.cpp:3425
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "For å tegne spektrumet må alle markerte spor være samme datarate."
+
+#: Menus.cpp:3451
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "For mye lyd ble markert. Bare de første %.1f sekundene med lyd vil bli analysert."
+
#: FreqWindow.cpp:386
msgid "Not enough data selected."
msgstr "Ikke nok data valgt."
@@ -1167,6 +1198,21 @@ msgstr "Frekvens (Hz)\tNiv
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "Forsinkelse (sekunder)\tFrekvens (Hz)\tNivå"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr ""
+
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr ""
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr "Til [[welcome|velkomstsiden]]"
@@ -1253,7 +1299,8 @@ msgstr "<p><b>For
"på wikien. </p><br><br>"
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+#, fuzzy
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
msgstr "<p>Inndataenheten er den fysiske lydenheten som du spiller inn fra. Dette velger du under \"Opptaksenhet\" i <i>Lyd I/O-fanen i Innstillinger</i>. På Windows og Linux er innstillingene nederst i <i>Rediger</i>-menyen. På Mac er de i <i>Audacity</i>-menyen. Du kan også enkelt velge opptaksenhet under <i>Enhetsverktøylinjen</i>, som du skrur på i <i>Vis > Verktøylinjer...</i>. </p><p> Standardvalget er at Audacity bruker den enheten som systemet benytter nå (vanligvis den innebygde lydenheten), så det er ofte unødvendig å endre enhet. På Windows er den nåværende systemenheten angitt som \"Microsoft lydtilordning\". Hvis du spiller inn fra en ekstern USB- eller Firewire-enhet, f.eks. en USB-platespiller, kan du velge denne som opptaksenhet ved navn etter at du har koplet den til.</p><p>\n"
"Tilbake til [[record|Spille inn lyd]] <br></p>"
@@ -1278,7 +1325,8 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr "Hvis du vil høre arbeidet ditt i andre mediaprogram kan du eksportere det til en lydfil, f.eks. WAV eller MP3 (visse format er [[wma-proprietary|ikke støttet]]). Ved å [[save|lagre et Audacity-prosjekt]] lager du en prosjekt-fil (lenket til en _data-mappe) som inneholder alle dine redigerte spor, slik at du kan gå tilbake til arbeidet på et senere tidspunkt. Men, andre program kan ikke lese Audacity-prosjekt. </p><p> For å eksportere klikker du <i>Fil > Eksporter</i> og velger filformatet du ønsker å eksportere til i nedtrekksmenyen «Format». Vil du [[burncd|brenne CD]] som skal spilles av i vanlige CD-spillere, velger du WAV eller AIFF. For å eksportere til MP3 må du ha installert [[wiki:Lame_Installation|Lame-omkoderen]]. </p><p> <i>Fil > Eksporter markering</i> eksporterer bare et markert lydområde. <i>Bruk Fil > Eksporter flere filer</i> for å eksportere multiple filer samtidig, enten en for hvert lydspor eller en for hvert kommenterte område i et enkeltspor.<i>Spor > Legg til kommentar ved markering</i> lar deg [[wiki:Splitting_recordings_into_separate_tracks|dele opp sporene]] fra et album for å eksportere flere spor som ulike filer. </p><br><br>"
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+#, fuzzy
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
msgstr "<p>Audacity <b>kan ikke</b> [[play|spille av]] eller [[export|eksportere til]] formatene <b>WMA, RealAudio, Shorten (SHN)</b> eller de fleste andre proprietære format, pga. lisens- og patentbegrensninger. På en Mac kan du importere ubeskyttede <b>AAC</b>-format, f.eks. <b>M4A</b>. Visse åpne format er ennå ikke støttet, dette inkluderer <b>Ogg Speex</b> og <b>Musepack</b>. Filer som er beskyttet av en form for digital rettighetsadministrasjon (DRA/DRM), inkludert de fleste filer kjøpt på nettet fra iTunes, Napster ol., <b>kan ikke</b> importeres.</p><p> Hvis du ikke kan importere filen din til Audacity, og den ikke er beskyttet med DRM, kan du likevel bruke iTunes eller <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> for å konvertere den til WAV eller AIFF. Hvis den er beskyttet kan du brenne til lyd-CD med programmet som er lisensiert til å spille den av, og så trekke ut CD-sporet til WAV eller AIFF med iTunes eller (på Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> eller Windows Media Player 11. Du kan også <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">spille inn</a> CD-en til datamaskinen din. <i>Vil du eksportere til et ustøttet format kan du først eksportere til WAV eller AIFF og så konvertere til det ønskede formatet i iTunes eller <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
#: HelpText.cpp:383
@@ -1287,7 +1335,7 @@ msgstr "<p>For
#: HelpText.cpp:403
msgid "<p>Help for Audacity Beta is currently unfinished. For now, a draft manual is available <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">online</a>. Alternatively, click <a href=\"http://www.audacityteam.org/manual/index.php?title=Temporary_HTML_Manual_Export\">here</a> to download a single-page version of the manual which can be viewed in this window."
-msgstr ""
+msgstr "<p>Hjelp for Audacity Beta er ennå uferdig. Foreløpig finnes et utkast til en manual <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">på nettet</a>. Du kan også klikke <a href=\"http://www.audacityteam.org/manual/index.php?title=Temporary_HTML_Manual_Export\">her</a> for å laste ned hele manualen i en enkeltfil som kan leses i dette vinduet."
#: HistoryWindow.cpp:53
msgid "Undo History"
@@ -1339,6 +1387,14 @@ msgstr "MB"
msgid "GB"
msgstr "GB"
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
#: LabelDialog.cpp:52
msgid "Track"
msgstr "Spor"
@@ -1455,21 +1511,13 @@ msgstr "
msgid "&File"
msgstr "&Fil"
-#: Menus.cpp:164
-msgid "&New\tCtrl+N"
-msgstr "&Ny\tCtrl+N"
-
-#: Menus.cpp:166
-msgid "&Open...\tCtrl+O"
-msgstr "&Åpne...\tCtrl+O"
-
#: Menus.cpp:171
-msgid "&Close\tCtrl+W"
-msgstr "&Lukk\tCtrl+W"
+msgid "&Close"
+msgstr "&Lukk"
#: Menus.cpp:174
-msgid "&Save Project\tCtrl+S"
-msgstr "Lagre &prosjekt\tCtrl+S"
+msgid "&Save Project"
+msgstr "Lagre &prosjekt"
#: Menus.cpp:178 Project.cpp:2690
msgid "Save Project &As..."
@@ -1477,7 +1525,7 @@ msgstr "Lagre prosjekt &som..."
#: Menus.cpp:212
msgid "Save Compressed Copy of Project..."
-msgstr ""
+msgstr "Lagre komprimert kopi av prosjekt..."
#: Menus.cpp:181
msgid "Chec&k Dependencies..."
@@ -1492,8 +1540,8 @@ msgid "&Import"
msgstr "&Importer"
#: Menus.cpp:196
-msgid "&Audio...\tCtrl+Shift+I"
-msgstr "&Lyd...\tCtrl+Shift+I"
+msgid "&Audio..."
+msgstr "&Lyd..."
#: Menus.cpp:197
msgid "&Labels..."
@@ -1521,11 +1569,11 @@ msgstr "Eksporter &flere filer..."
#: Menus.cpp:257
msgid "Export MIDI..."
-msgstr ""
+msgstr "Eksporter MIDI..."
-#: Menus.cpp:247
-msgid "CleanSpeech C&hain..."
-msgstr "&CleanSpeech-kjede..."
+#: Menus.cpp:260
+msgid "Appl&y Chain..."
+msgstr "&Anvend kjede... "
#: Menus.cpp:248 Menus.cpp:262
msgid "Edit C&hains..."
@@ -1539,10 +1587,6 @@ msgstr "&Eksporter CleanSpeech-innstillinger..."
msgid "I&mport CleanSpeech Presets..."
msgstr "I&mporter CleanSpeech-innstillinger..."
-#: Menus.cpp:260
-msgid "Appl&y Chain..."
-msgstr "&Anvend kjede... "
-
#: Menus.cpp:267
msgid "&Upload File..."
msgstr "Last &opp fil..."
@@ -1556,161 +1600,146 @@ msgid "&Print..."
msgstr "Skriv &ut..."
#: Menus.cpp:287
-msgid "E&xit\tCtrl+Q"
-msgstr "A&vslutt\tCtrl+Q"
+msgid "E&xit"
+msgstr "A&vslutt"
#: Menus.cpp:295 toolbars/EditToolBar.cpp:76
msgid "&Edit"
msgstr "&Rediger"
#: Menus.cpp:299
-msgid "&Undo\tCtrl+Z"
-msgstr "&Angre\tCtrl+Z"
+msgid "&Undo"
+msgstr "&Angre"
#: Menus.cpp:307 prefs/KeyConfigPrefs.cpp:369 toolbars/EditToolBar.cpp:146
msgid "&Redo"
msgstr "&Gjør om"
#: Menus.cpp:320
-msgid "Cu&t\tCtrl+X"
-msgstr "Klipp &ut\tCtrl+X"
+msgid "Cu&t"
+msgstr "Klipp &ut"
#: Menus.cpp:324
-msgid "Spl&it Cut\tCtrl+Alt+X"
-msgstr "Kløyv og klipp u&t\tCtrl+Alt+X"
+msgid "Spl&it Cut"
+msgstr "Kløyv og klipp u&t"
#: Menus.cpp:325
-msgid "&Copy\tCtrl+C"
-msgstr "&Kopier\tCtrl+C"
+msgid "&Copy"
+msgstr "&Kopier"
#: Menus.cpp:329
-msgid "&Paste\tCtrl+V"
-msgstr "&Lim inn\tCtrl+V"
+msgid "&Paste"
+msgstr "&Lim inn"
#: Menus.cpp:333
-msgid "Tri&m\tCtrl+T"
-msgstr "Beskj&ær\tCtrl+T"
+msgid "Tri&m"
+msgstr "Beskj&ær"
#: Menus.cpp:335
-msgid "&Delete\tCtrl+K"
-msgstr "&Slett\tCtrl+K"
+msgid "&Delete"
+msgstr "&Slett"
#: Menus.cpp:336
-msgid "Split D&elete\tCtrl+Alt+K"
-msgstr "Kløy&v og slett\tCtrl+Alt+K"
+msgid "Split D&elete"
+msgstr "Kløy&v og slett"
#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
-msgstr ""
+msgid "Silence Audi&o"
+msgstr "Demp l&yd"
#: Menus.cpp:339
-msgid "Sp&lit\tCtrl+I"
-msgstr "Kl&øyv\tCtrl+I"
+msgid "Sp&lit"
+msgstr "Kl&øyv"
#: Menus.cpp:344
-msgid "Split Ne&w\tCtrl+Alt+I"
-msgstr "Kløyv n&y\tCtrl+Alt+I"
+msgid "Split Ne&w"
+msgstr "Kløyv n&y"
#: Menus.cpp:349
-msgid "&Join\tCtrl+J"
-msgstr "Sammen&føy\tCtrl+J"
+msgid "&Join"
+msgstr "Sammen&føy"
#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
-msgstr ""
+msgid "Detac&h at Silences"
+msgstr "Adsk&ill ved stillhet"
#: Menus.cpp:352
-msgid "Duplic&ate\tCtrl+D"
-msgstr "Du&pliser\tCtrl+D"
+msgid "Duplic&ate"
+msgstr "Du&pliser"
#: Menus.cpp:400 Menus.cpp:639
msgid "Stereo Trac&k to Mono"
-msgstr ""
+msgstr "&Stereospor til mono"
#: Menus.cpp:407
msgid "La&beled Regions"
-msgstr ""
+msgstr "Kommenterte re&gioner"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:367
-msgid "&Cut\tAlt+X"
-msgstr "&Klipp ut\tAlt+X"
+msgid "&Cut"
+msgstr "&Klipp ut"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:372
-msgid "&Split Cut\tShift+Alt+X"
-msgstr "Kløyv og klipp u&t\tShift+Alt+X"
+msgid "&Split Cut"
+msgstr "Kløyv og klipp u&t"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:377
-msgid "Co&py\tShift+Alt+C"
-msgstr "Ko&pier\tShift+Alt+C"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:383
-msgid "&Delete\tAlt+K"
-msgstr "S&lett\tAlt+K"
+msgid "Co&py"
+msgstr "Ko&pier"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:388
-msgid "Sp&lit Delete\tShift+Alt+K"
-msgstr "Kløy&v og slett\tShift+Alt+K"
+msgid "Sp&lit Delete"
+msgstr "Kløy&v og slett"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:393
-msgid "Sile&nce\tAlt+L"
-msgstr "Still&het\tAlt+L"
+msgid "Sile&nce"
+msgstr "Still&het"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:399
-msgid "Spli&t\tAlt+I"
-msgstr "Kl&øyv\tAlt+I"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:404
-msgid "&Join\tAlt+J"
-msgstr "Sammen&føy\tAlt+J"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
-msgstr ""
+msgid "Spli&t"
+msgstr "Kl&øyv"
#: Menus.cpp:456
msgid "&Select"
-msgstr ""
+msgstr "&Velg"
#: Menus.cpp:416
-msgid "&All\tCtrl+A"
-msgstr "&Alt\tCtrl+A"
+msgid "&All"
+msgstr "&Alt"
#: Menus.cpp:417
-msgid "&None\tCtrl+Shift+A"
-msgstr "&Ingenting\tCtrl+Shift+A"
+msgid "&None"
+msgstr "&Ingenting"
#: Menus.cpp:421
-msgid "&Left at Playback Position\t["
-msgstr "&Venstregrense til gitt avspillingsposisjon\t["
+msgid "&Left at Playback Position"
+msgstr "&Venstregrense til gitt avspillingsposisjon"
#: Menus.cpp:422
-msgid "&Right at Playback Position\t]"
-msgstr "&Høyregrense til gitt avspillingsposisjon\t]"
+msgid "&Right at Playback Position"
+msgstr "&Høyregrense til gitt avspillingsposisjon"
#: Menus.cpp:426
-msgid "Track &Start to Cursor\tShift+J"
+msgid "Track &Start to Cursor"
msgstr "Fra &start til markør"
#: Menus.cpp:427
-msgid "Cursor to Track &End\tShift+K"
+msgid "Cursor to Track &End"
msgstr "Fra &markør til slutt"
#: Menus.cpp:433
-msgid "Find &Zero Crossings\tZ"
-msgstr "Finn &nullpunkt\tZ"
+msgid "Find &Zero Crossings"
+msgstr "Finn &nullpunkt"
#: Menus.cpp:476
msgid "Mo&ve Cursor"
-msgstr ""
+msgstr "Fl&ytt markør"
#: Menus.cpp:437
msgid "to Selection Star&t"
@@ -1721,11 +1750,11 @@ msgid "to Selection En&d"
msgstr "til s&lutt av markering"
#: Menus.cpp:442
-msgid "to Track &Start\tJ"
+msgid "to Track &Start"
msgstr "til sta&rt av spor"
#: Menus.cpp:443
-msgid "to Track &End\tK"
+msgid "to Track &End"
msgstr "til sl&utt av spor"
#: Menus.cpp:450
@@ -1738,7 +1767,7 @@ msgstr "Gjen&opprett markering"
#: Menus.cpp:503
msgid "Pla&y Region"
-msgstr ""
+msgstr "Avspill ®ion"
#: Menus.cpp:463
msgid "&Lock"
@@ -1748,66 +1777,45 @@ msgstr "&L
msgid "&Unlock"
msgstr "Lås &opp"
-#: Menus.cpp:470
-msgid "Turn Snap-To On"
-msgstr "Slå Smett-på-plass på"
-
-#: Menus.cpp:471
-msgid "Turn Snap-To Off"
-msgstr "Slå Smett-på-plass av"
-
-#: Menus.cpp:472
-msgid "Turn Grid Snap On"
-msgstr "Slå Smett-til-Gitter på"
-
-#: Menus.cpp:473
-msgid "Turn Grid Snap Off"
-msgstr "Slå Smett-til-Gitter av"
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr ""
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
-msgstr ""
+msgid "Pre&ferences..."
+msgstr "&Innstillinger..."
#: Menus.cpp:492
msgid "&View"
msgstr "&Vis"
#: Menus.cpp:494
-msgid "Zoom &In\tCtrl+1"
-msgstr "Zoom &inn\tCtrl+1"
+msgid "Zoom &In"
+msgstr "Zoom &inn"
#: Menus.cpp:497
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "Zoom &normalt\tCtrl+2"
+msgid "Zoom &Normal"
+msgstr "Zoom &normalt"
#: Menus.cpp:498
-msgid "Zoom &Out\tCtrl+3"
-msgstr "Zoom &ut\tCtrl+3"
+msgid "Zoom &Out"
+msgstr "Zoom &ut"
#: Menus.cpp:501
-msgid "&Fit in Window\tCtrl+F"
-msgstr "&Tilpass vindu\tCtrl+F"
+msgid "&Fit in Window"
+msgstr "&Tilpass vindu"
#: Menus.cpp:502
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "Tilpass &loddrett\tCtrl+Shift+F"
+msgid "Fit &Vertically"
+msgstr "Tilpass &loddrett"
#: Menus.cpp:503
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "&Zoom til markering\tCtrl+E"
+msgid "&Zoom to Selection"
+msgstr "&Zoom til markering"
#: Menus.cpp:506
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
-msgstr "&Skjul alle spor\tCtrl+Shift+C"
+msgid "&Collapse All Tracks"
+msgstr "&Skjul alle spor"
#: Menus.cpp:507
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
-msgstr "&Vis alle spor\tCtrl+Shift+X"
+msgid "E&xpand All Tracks"
+msgstr "&Vis alle spor"
#: Menus.cpp:510
msgid "&Show Clipping"
@@ -1819,7 +1827,7 @@ msgstr "&Historie..."
#: Menus.cpp:566
msgid "&Toolbars"
-msgstr ""
+msgstr "Verkt&øylinjer"
#: Menus.cpp:526
msgid "&Control Toolbar"
@@ -1868,56 +1876,58 @@ msgid "T&ransport"
msgstr ""
#: Menus.cpp:591
-msgid "Play\tSpace"
-msgstr ""
+msgid "Play"
+msgstr "Spill av"
#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
-msgstr ""
+msgid "&Loop Play"
+msgstr "&Spill av i løkke"
#: Menus.cpp:593
-msgid "&Pause\tP"
-msgstr ""
+msgid "&Pause"
+msgstr "&Pause"
#: Menus.cpp:596
-msgid "&Stop\tSpace"
-msgstr ""
+msgid "&Stop"
+msgstr "&Stopp"
#: Menus.cpp:799
-msgid "Skip to Start\tHome"
-msgstr "Gå til begynnelse\tHome"
+msgid "Skip to Start"
+msgstr "Gå til begynnelse"
#: Menus.cpp:800
-msgid "Skip to End\tEnd"
-msgstr "Gå til slutt\tEnd"
+msgid "Skip to End"
+msgstr "Gå til slutt"
#: Menus.cpp:600
-msgid "&Record\tR"
-msgstr ""
+msgid "&Record"
+msgstr "&Ta opp"
#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
-msgstr ""
+msgid "&Timer Record..."
+msgstr "Ned&tellingsopptak..."
#: Menus.cpp:604
-msgid "Append Record\tShift+R"
-msgstr ""
+msgid "Append Record"
+msgstr "Spill inn etter"
#: Menus.cpp:607
msgid "Overdub (on/off)"
-msgstr ""
+msgstr "Overdub (av/på)"
#: Menus.cpp:609
msgid "Software Playthrough (on/off)"
-msgstr ""
+msgstr "Spill gjennom med programvare (av/på)"
#: Menus.cpp:612
+#, fuzzy
msgid "Sound Activated Recording (on/off)"
-msgstr ""
+msgstr "Lydaktivert opptak (av/på)"
#: Menus.cpp:614
+#, fuzzy
msgid "Sound Activation Level..."
-msgstr ""
+msgstr "Lydaktiveringsnivå..."
#: Menus.cpp:545
msgid "&Tracks"
@@ -1925,11 +1935,11 @@ msgstr "&Spor"
#: Menus.cpp:629
msgid "Add &New"
-msgstr ""
+msgstr "Legg til &nytt"
#: Menus.cpp:553
-msgid "&Audio Track\tCtrl+Shift+N"
-msgstr "&Lydspor\tCtrl+Shift+N"
+msgid "&Audio Track"
+msgstr "&Lydspor"
#: Menus.cpp:554
msgid "&Stereo Track"
@@ -1944,8 +1954,8 @@ msgid "Mi&x and Render"
msgstr "&Miks og rendre"
#: Menus.cpp:572
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
-msgstr "Miks og rendre til nytt spor\tCtrl+Shift+M"
+msgid "Mix and Render to New Track"
+msgstr "Miks og rendre til nytt spor"
#: Menus.cpp:576
msgid "&Resample..."
@@ -1956,12 +1966,12 @@ msgid "Remo&ve Tracks"
msgstr "&Fjern spor"
#: Menus.cpp:592
-msgid "&Mute All Tracks\tCtrl+U"
-msgstr "&Demp alle spor\tCtrl+U"
+msgid "&Mute All Tracks"
+msgstr "&Demp alle spor"
#: Menus.cpp:593
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
-msgstr "&Udemp alle spor\tCtrl+Shift+U"
+msgid "&UnMute All Tracks"
+msgstr "&Udemp alle spor"
#: Menus.cpp:597
msgid "Align with &Zero"
@@ -1997,39 +2007,40 @@ msgstr "Koordiner s&por sammen"
#: Menus.cpp:681
msgid "&Align Tracks"
-msgstr ""
+msgstr "K&oordiner spor"
#: Menus.cpp:690
msgid "Ali&gn and Move Cursor"
-msgstr ""
+msgstr "&Koordiner og flytt markør"
#: Menus.cpp:697
msgid "Synchronize MIDI with Audio"
-msgstr ""
+msgstr "Synkroniser MIDI med lyd"
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
-msgstr ""
+#: Menus.cpp:686
+#, fuzzy
+msgid "&Link Audio and Label Tracks"
+msgstr "Sammenkople lyd- og kommentarspor"
-#: Menus.cpp:623
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "&Legg til kommentar ved markering\tCtrl+B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr ""
#: Menus.cpp:624
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "Legg til kommentar ved a&vspillingsmarkering\tCtrl+M"
+msgid "Add Label At &Playback Position"
+msgstr "Legg til kommentar ved a&vspillingsmarkering"
#: Menus.cpp:716
msgid "S&ort tracks"
-msgstr ""
+msgstr "&Sorter spor"
#: Menus.cpp:717
msgid "by &Start time"
-msgstr ""
+msgstr "etter &starttidspunkt"
#: Menus.cpp:719
msgid "by &Name"
-msgstr ""
+msgstr "etter &navn"
#: Menus.cpp:643
msgid "&Generate"
@@ -2037,20 +2048,20 @@ msgstr "&Lag"
#: Menus.cpp:776 Menus.cpp:860 Menus.cpp:922
msgid "Unsorted"
-msgstr ""
+msgstr "Usortert"
#: Menus.cpp:666
msgid "Effe&ct"
msgstr "&Effekt"
-#: Menus.cpp:670
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "Repeter siste effekt\tCtrl+R"
-
#: Menus.cpp:702
msgid "&Analyze"
msgstr "&Analyser"
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
+
#: Menus.cpp:704
msgid "Plot Spectrum..."
msgstr "Plott spektrum..."
@@ -2067,17 +2078,17 @@ msgstr "&Om Audacity CleanSpeech..."
msgid "&Show Welcome Message..."
msgstr "Vi&s velkomstmelding..."
-#: Menus.cpp:748
-msgid "&Index..."
-msgstr "Ho&vedmeny..."
+#: Menus.cpp:958
+msgid "&Help..."
+msgstr ""
#: Menus.cpp:959
msgid "Show &Log..."
-msgstr ""
+msgstr "Vis &logg..."
#: Menus.cpp:756
msgid "&Screenshot Tools..."
-msgstr "&Skjermbildeverktøy..."
+msgstr "Skjerm&bildeverktøy..."
#: Menus.cpp:759
msgid "&Run Benchmark..."
@@ -2085,185 +2096,153 @@ msgstr "&Kj
#: Menus.cpp:761
msgid "&Audio Device Info..."
-msgstr "&Lydenhetsinformasjon..."
+msgstr "L&ydenhetsinformasjon..."
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
msgstr ""
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
msgstr ""
#: Menus.cpp:774
-msgid "Selection Tool\tF1"
-msgstr "Markeringsverktøy\tF1"
+msgid "Selection Tool"
+msgstr "Markeringsverktøy"
#: Menus.cpp:775
-msgid "Envelope Tool\tF2"
-msgstr "Omhyllingskurveverktøy\tF2"
+msgid "Envelope Tool"
+msgstr "Omhyllingskurveverktøy"
#: Menus.cpp:776
-msgid "Draw Tool\tF3"
-msgstr "Tegneverktøy\tF3"
+msgid "Draw Tool"
+msgstr "Tegneverktøy"
#: Menus.cpp:777
-msgid "Zoom Tool\tF4"
-msgstr "Zoomverktøy\tF4"
+msgid "Zoom Tool"
+msgstr "Zoomverktøy"
#: Menus.cpp:778
-msgid "Time Shift Tool\tF5"
-msgstr "Tidsforskyvningsverktøy\tF5"
+msgid "Time Shift Tool"
+msgstr "Tidsforskyvningsverktøy"
#: Menus.cpp:779
-msgid "Multi Tool\tF6"
-msgstr "Multiverktøy\tF6"
+msgid "Multi Tool"
+msgstr "Multiverktøy"
#: Menus.cpp:781
-msgid "Next Tool\tD"
-msgstr "Neste verktøy\tD"
+msgid "Next Tool"
+msgstr "Neste verktøy"
#: Menus.cpp:782
-msgid "Previous Tool\tA"
-msgstr "Forrige verktøy\tA"
+msgid "Previous Tool"
+msgstr "Forrige verktøy"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
-msgstr ""
-
-#: Menus.cpp:785
-msgid "Stop\tS"
-msgstr "Stopp\tS"
-
-#: Menus.cpp:786
-msgid "Pause\tP"
-msgstr "Pause\tP"
-
-#: Menus.cpp:787
-msgid "Record\tR"
-msgstr "Spill inn\tR"
-
-#: Menus.cpp:788
-msgid "Record Append\tShift+R"
-msgstr "Spill inn etter\tShift+R"
+msgid "Play/Stop"
+msgstr "Spill/Stopp"
#: Menus.cpp:790
-msgid "Play/Stop and Set Cursor\tShift+A"
-msgstr "Spill/stopp og plasser markør\tShift+A"
+msgid "Play/Stop and Set Cursor"
+msgstr "Spill/stopp og plasser markør"
#: Menus.cpp:793
-msgid "Play One Second\t1"
-msgstr "Spill ett sekund\t1"
+msgid "Play One Second"
+msgstr "Spill ett sekund"
#: Menus.cpp:794
-msgid "Play To Selection\tB"
-msgstr "Spill til markering\tB"
-
-#: Menus.cpp:795
-msgid "Play Looped\tL"
-msgstr "Spill i løkke\tL"
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
+msgid "Play To Selection"
+msgstr "Spill til markering"
#: Menus.cpp:797
-msgid "Play Cut Preview\tC"
-msgstr "Forhåndsvis utklipping\tC"
+msgid "Play Cut Preview"
+msgstr "Forhåndsvis utklipping"
# "Home" something else on Norwegian keyboards?
#: Menus.cpp:802
-msgid "Selection to Start\tShift+Home"
-msgstr "Markering til start\tShift+Home"
+msgid "Selection to Start"
+msgstr "Markering til start"
#: Menus.cpp:803
-msgid "Selection to End\tShift+End"
-msgstr "Markering til slutt\tShift+End"
+msgid "Selection to End"
+msgstr "Markering til slutt"
# "Tilbakepil", norm?
#: Menus.cpp:805
-msgid "DeleteKey\tBackspace"
-msgstr "Slettetast\tBackspace"
+msgid "DeleteKey"
+msgstr "Slettetast"
#: Menus.cpp:810
-msgid "DeleteKey2\tDelete"
-msgstr "Slettetast2\tDelete"
+msgid "DeleteKey2"
+msgstr "Slettetast2"
-#: Menus.cpp:816
-msgid "Seek left short period during playback\tLeft"
-msgstr "Søk mot venstre en kort periode under avspilling\tLeft"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
+msgstr ""
-#: Menus.cpp:817
-msgid "Seek right short period during playback\tRight"
-msgstr "Søk mot høyre en kort periode under avspilling\tRight"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
+msgstr ""
-#: Menus.cpp:818
-msgid "Seek left long period during playback\tShift+Left"
-msgstr "Søk mot venstre en lang periode under avspilling\tShift+Left"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
+msgstr ""
-#: Menus.cpp:819
-msgid "Seek right long period during playback\tShift+Right"
-msgstr "Søk mot høyre en lang periode under avspilling\tShift+Left"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
+msgstr ""
#: Menus.cpp:823
-msgid "Move Focus to Previous Track\tUp"
-msgstr "Flytt fokus til forrige spor\tUp"
+msgid "Move Focus to Previous Track"
+msgstr "Flytt fokus til forrige spor"
-#: Menus.cpp:824
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
-msgstr "Flytt fokus til forrige spor og endre markering\tShift+Up"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
+msgstr ""
#: Menus.cpp:825
-msgid "Move Focus to Next Track\tDown"
-msgstr "Flytt fokus til neste spor\tDown"
+msgid "Move Focus to Next Track"
+msgstr "Flytt fokus til neste spor"
-#: Menus.cpp:826
-msgid "Move Focus to Next and Change Selection\tShift+Down"
-msgstr "Flytt fokus til neste spor og endre markering\tShift+Down"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
+msgstr ""
#: Menus.cpp:827
-msgid "Toggle Focused Track\tReturn"
-msgstr "Fokusert spor av/på\tLinjeskift"
-
-#: Menus.cpp:828
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr "Fokusert spor av/på\tNUMPAD_ENTER"
-
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
-msgstr ""
+msgid "Toggle Focused Track"
+msgstr "Fokusert spor av/på"
#: Menus.cpp:831
-msgid "Cursor Left\tLeft"
-msgstr "Markør venstre\tLeft"
+msgid "Cursor Left"
+msgstr "Markør venstre"
#: Menus.cpp:832
-msgid "Cursor Right\tRight"
-msgstr "Markør høyre\tRight"
+msgid "Cursor Right"
+msgstr "Markør høyre"
#: Menus.cpp:833
-msgid "Cursor Short Jump Left\t,"
-msgstr "Markør kort hopp venstre\t,"
+msgid "Cursor Short Jump Left"
+msgstr "Markør kort hopp venstre"
#: Menus.cpp:834
-msgid "Cursor Short Jump Right\t."
-msgstr "Markør kort hopp høyre\t."
+msgid "Cursor Short Jump Right"
+msgstr "Markør kort hopp høyre"
#: Menus.cpp:835
-msgid "Cursor Long Jump Left\tShift+,"
-msgstr "Markør langt hopp venstre\tShift+,"
+msgid "Cursor Long Jump Left"
+msgstr "Markør langt hopp venstre"
#: Menus.cpp:836
-msgid "Cursor Long Jump Right\tShift+."
-msgstr "Markør langt hopp høyre\tShift+."
+msgid "Cursor Long Jump Right"
+msgstr "Markør langt hopp høyre"
#: Menus.cpp:838
-msgid "Selection Extend Left\tShift+Left"
-msgstr "Utvid markering mot venstre\tShift+Left"
+msgid "Selection Extend Left"
+msgstr "Utvid markering mot venstre"
#: Menus.cpp:839
-msgid "Selection Extend Right\tShift+Right"
-msgstr "Utvid markering mot høyre\tShift+Right"
+msgid "Selection Extend Right"
+msgstr "Utvid markering mot høyre"
#: Menus.cpp:841
msgid "Set (or Extend) Left Selection"
@@ -2274,52 +2253,52 @@ msgid "Set (or Extend) Right Selection"
msgstr "Velg (eller utvid) høyre markering"
#: Menus.cpp:844
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "Forminsk markering fra venstre\tCtrl+Shift+Right"
+msgid "Selection Contract Left"
+msgstr "Forminsk markering fra venstre"
#: Menus.cpp:845
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "Forminsk markering fra høyre\tCtrl+Shift+Left"
+msgid "Selection Contract Right"
+msgstr "Forminsk markering fra høyre"
#: Menus.cpp:847
-msgid "Change pan on focused track\tShift+P"
-msgstr "Endre panorering på fokusert spor\tShift+P"
+msgid "Change pan on focused track"
+msgstr "Endre panorering på fokusert spor"
#: Menus.cpp:848
-msgid "Pan left on focused track\tAlt+Shift+Left"
-msgstr "Panorer til venstre på fokusert spor\tAlt+Shift+Left"
+msgid "Pan left on focused track"
+msgstr "Panorer til venstre på fokusert spor"
#: Menus.cpp:849
-msgid "Pan right on focused track\tAlt+Shift+Right"
-msgstr "Panorer til høyre på fokusert spor\tAlt+Shift+Right"
+msgid "Pan right on focused track"
+msgstr "Panorer til høyre på fokusert spor"
#: Menus.cpp:850
-msgid "Change gain on focused track\tShift+G"
-msgstr "Endre volum på fokusert spor\tShift+G"
+msgid "Change gain on focused track"
+msgstr "Endre volum på fokusert spor"
#: Menus.cpp:851
-msgid "Increase gain on focused track\tAlt+Shift+Up"
-msgstr "Øk volum på fokusert spor\tAlt+Shift+Up"
+msgid "Increase gain on focused track"
+msgstr "Øk volum på fokusert spor"
#: Menus.cpp:852
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
-msgstr "Senk volum på fokusert spor\tAlt+Shift+Down"
+msgid "Decrease gain on focused track"
+msgstr "Senk volum på fokusert spor"
#: Menus.cpp:853
-msgid "Open menu on focused track\tShift+M"
-msgstr "Åpne meny for fokusert spor\tShift+M"
+msgid "Open menu on focused track"
+msgstr "Åpne meny for fokusert spor"
#: Menus.cpp:854
-msgid "Mute/Unmute focused track\tShift+U"
-msgstr "Demp/ikke demp fokusert spor\tShift+U"
+msgid "Mute/Unmute focused track"
+msgstr "Demp/ikke demp fokusert spor"
#: Menus.cpp:855
-msgid "Solo/Unsolo focused track\tShift+S"
-msgstr "Solo/ikke-solo for fokusert spor\tShift+S"
+msgid "Solo/Unsolo focused track"
+msgstr "Solo/ikke-solo for fokusert spor"
#: Menus.cpp:856
-msgid "Close focused track\tShift+C"
-msgstr "Lukk fokusert spor\tShift+C"
+msgid "Close focused track"
+msgstr "Lukk fokusert spor"
#: Menus.cpp:858
msgid "Snap To On"
@@ -2330,7 +2309,35 @@ msgid "Snap To Off"
msgstr "Smett-på-plass av"
#: Menus.cpp:1071
-msgid "Full screen on/off\tF11"
+msgid "Full screen on/off"
+msgstr "Fullskjerm av/på"
+
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr ""
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr ""
+
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr ""
+
+#: Menus.cpp:1074
+msgid "Adjust input source"
msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
@@ -2391,8 +2398,8 @@ msgstr "Du m
#: Menus.cpp:2035
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "Repeter %s\tCtrl+R"
+msgid "Repeat %s"
+msgstr "Repeter %s"
#: Menus.cpp:2166
msgid "There are no label tracks to export."
@@ -2400,20 +2407,21 @@ msgstr "Det er ingen kommentarspor
#: Menus.cpp:2608
msgid "Export MIDI As:"
-msgstr ""
+msgstr "Eksporter MIDI som:"
#: Menus.cpp:2612
msgid "MIDI file (*.mid)|*.mid|Allegro file (*.gro)|*.gro"
-msgstr ""
+msgstr "MIDI-fil (*.mid)|*.mid|Allegro-fil (*.gro)|*.gro"
#: Menus.cpp:2644
msgid "You have selected a filename with an unrecognized file extension.\n"
"Do you want to continue?"
-msgstr ""
+msgstr "Du har valgt et filnavn med en filendelse som ikke ble gjenkjent.\n"
+"Vil du fortsette?"
#: Menus.cpp:2645
msgid "Export MIDI"
-msgstr ""
+msgstr "Eksporter MIDI"
#: Menus.cpp:2271
msgid "Nothing to undo"
@@ -2454,7 +2462,7 @@ msgstr "Limt inn fra utklippstavlen"
#: Menus.cpp:3053
msgid "Pasting one type of track into another is not allowed."
-msgstr ""
+msgstr "Det går ikke an å lime inn mellom ulike typer spor."
#: Menus.cpp:2574
msgid "Copying stereo audio into a mono track is not allowed."
@@ -2600,15 +2608,6 @@ msgstr "Kl
msgid "Split at labels"
msgstr "Del opp ved kommentarer"
-#: Menus.cpp:3425
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "For å tegne spektrumet må alle markerte spor være samme datarate."
-
-#: Menus.cpp:3451
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "For mye lyd ble markert. Bare de første %.1f sekundene med lyd vil bli analysert."
-
#: Menus.cpp:3584
#, c-format
msgid "Imported labels from '%s'"
@@ -2624,7 +2623,7 @@ msgstr "Velg en MIDI fil..."
#: Menus.cpp:4147
msgid "MIDI and Allegro files (*.mid;*.midi;*.gro)|*.mid;*.midi;*.gro|MIDI files (*.mid;*.midi)|*.mid;*.midi|Allegro files (*.gro)|*.gro|All files (*.*)|*.*"
-msgstr ""
+msgstr "MIDI- og Allegro-filer (*.mid;*.midi;*.gro)|*.mid;*.midi;*.gro|MIDI-filer (*.mid;*.midi)|*.mid;*.midi|Allegro-filer (*.gro)|*.gro|Alle filer (*.*)|*.*"
#: Menus.cpp:3615
#, c-format
@@ -2716,11 +2715,11 @@ msgstr "Koordiner"
#: Menus.cpp:4550
msgid "Sync MIDI with Audio"
-msgstr ""
+msgstr "Synkroniser MIDI med lyd"
#: Menus.cpp:4554
msgid "Alignment completed."
-msgstr ""
+msgstr "Koordinering fullført."
#: Menus.cpp:3950
msgid "Created new audio track"
@@ -2827,6 +2826,10 @@ msgstr "Det skjedde en feil ved utskrift."
msgid "Print"
msgstr "Skriv ut"
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr ""
+
#: Project.cpp:636
msgid "Main Mix"
msgstr "Hovedmiks"
@@ -2840,8 +2843,7 @@ msgstr "Velkommen til Audacity versjon %s"
msgid "(Recovered)"
msgstr "(Gjenopprettet)"
-# "ta opp"?
-#: Project.cpp:1482 TrackPanel.cpp:804 toolbars/ControlToolBar.cpp:191
+#: Menus.cpp:787
msgid "Record"
msgstr "Spill inn"
@@ -2871,9 +2873,9 @@ msgstr "\n"
msgid "Save changes?"
msgstr "Lagre endringer?"
-#: Project.cpp:1694
-msgid "All files|*.*|All supported files|"
-msgstr "Alle filer|*.*|Alle støttede filer|"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
+msgstr ""
#: Project.cpp:1719
msgid "Select one or more audio files..."
@@ -2908,6 +2910,17 @@ msgstr "1.0 eller tidligere"
msgid "Opening old project file"
msgstr "Åpner gammel prosjektfil"
+#: Project.cpp:2073
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr ""
+
#: Project.cpp:1832 Project.cpp:1840
msgid "Error opening file"
msgstr "Feil ved åpning av fil"
@@ -2965,16 +2978,15 @@ msgstr "Denne filen ble lagret vha. Audacity %s.\n"
msgid "Can't open project file"
msgstr "Kan ikke åpne prosjektfile"
-#: Project.cpp:2193
+#: Project.cpp:2484
#, c-format
msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
"\n"
-"Open this file now?"
-msgstr "Denne filen ble lagret av Audacity %s.\n"
-"Du kan åpne filen med denne versjonen av Audacity, men hvis du lagrer i denne versjonen kan du ikke lenger åpne filen i eldre versjoner.\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
-"Åpne denne filen nå?"
+"Open this file now?"
+msgstr ""
#: Project.cpp:2537
msgid "Your project is now empty.\n"
@@ -2985,22 +2997,37 @@ msgid "Your project is now empty.\n"
"are open, then File > Save Project.\n"
"\n"
"Save anyway?"
-msgstr ""
+msgstr "Prosjektet ditt er nå tomt.\n"
+"Ved lagring vil ikke prosjektet ha noen spor.\n"
+"\n"
+"For å lagre tidligere åpnede spor:\n"
+"Klikk 'Nei', Rediger > Angre helt til alle \n"
+"spor er åpne, så Fil > Lagre prosjekt.\n"
+"\n"
+"Lagre uansett?"
#: Project.cpp:2538
msgid "Warning empty project"
-msgstr ""
+msgstr "Advarsel: tomt prosjekt"
-#: Project.cpp:2591
+#: Project.cpp:2792
#, c-format
+#, fuzzy
msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
-msgstr ""
+"is not writable or the disk is full."
+msgstr "Klarte ikke å lagre prosjektet. Kanskje %s\n"
+"ikke kan skrives til, eller disken er full."
#: Project.cpp:2428 Project.cpp:2442
msgid "Error saving project"
msgstr "Feil ved lagring av prosjekt"
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
#: Project.cpp:2504
#, c-format
msgid "Saved %s"
@@ -3036,7 +3063,13 @@ msgid "Audacity compressed project files (.aup) save your work in a smaller, com
"Most other programs can't open Audacity project files.\n"
"When you want to save a file that can be opened by other programs, select one of the\n"
"Export commands."
-msgstr ""
+msgstr "Audacitys komprimerte prosjektfiler (.aup) lagrer arbeidet ditt i et mindre, komprimert format (.ogg).\n"
+"Komprimerte prosjektfiler gjør det lett å sende prosjektet over nettet, siden de tar mye mindre plass.\n"
+"Å åpne et komprimert prosjekt tar mer tid enn vanlig, siden hvert komprimerte spor må importeres.\n"
+"\n"
+"De fleste andre programmer kan ikke åpne Audacity prosjektfiler.\n"
+"Når du vil lagre en fil som kan åpnes med andre programmer, velg en av\n"
+"Eksport-kommandoene."
#: Project.cpp:2897
msgid "You are saving an Audacity project file (.aup).\n"
@@ -3044,7 +3077,11 @@ msgid "You are saving an Audacity project file (.aup).\n"
"Saving a project creates a file that only Audacity can open.\n"
"\n"
"To save an audio file for other programs, use one of the \"File > Export\" commands.\n"
-msgstr ""
+msgstr "Du lagrer en Audacity prosjektfil (.aup).\n"
+"\n"
+"Når du lagrer et prosjekt får du en fil som bare Audacity kan åpne.\n"
+"\n"
+"Hvis vil lagre en fil som kan åpnes med andre programmer, velg en av \"Fil > Eksport\"-kommandoene.\n"
#: Project.cpp:2692
msgid "Audacity projects (*.aup)|*.aup"
@@ -3091,12 +3128,12 @@ msgstr "Tom for diskplass"
#: Project.cpp:3336
#, c-format
msgid "Import(s) complete. Running %d on-demand waveform calculations. Overall %2.0f%% complete."
-msgstr ""
+msgstr "Importering fullført. Kjører %d bølgeformutregninger etter behov. Totalt %2.0f%% fullført."
#: Project.cpp:3339
#, c-format
msgid "Import complete. Running an on-demand waveform calculation. %2.0f%% complete."
-msgstr ""
+msgstr "Importering fullført. Kjører en bølgeformutregning etter behov. %2.0f%% fullført."
#: Project.cpp:3342
msgid "Could not remove old autosave file: "
@@ -3159,6 +3196,163 @@ msgstr "24-bit PCM"
msgid "32-bit float"
msgstr "32-bit flyttall"
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
+
+#: export/ExportMultiple.cpp:216 prefs/DirectoriesPrefs.cpp:92
+msgid "Choose..."
+msgstr "Velg..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
+
+#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
+msgid "false"
+msgstr "usann"
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr "Verktøy"
+
+#: toolbars/ControlToolBar.cpp:82
+msgid "Control"
+msgstr "Kontroll"
+
+#: toolbars/MixerToolBar.cpp:60
+msgid "Mixer"
+msgstr "Mikser"
+
+#: toolbars/MeterToolBar.cpp:50
+msgid "Meter"
+msgstr "Lydnivå"
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
+#: toolbars/DeviceToolBar.cpp:57
+msgid "Device"
+msgstr "Enhet"
+
+#: toolbars/TranscriptionToolBar.cpp:84
+msgid "Transcription"
+msgstr "Transkribering"
+
+#: TrackPanel.cpp:464 TrackPanel.cpp:465
+msgid "Track Panel"
+msgstr "Sporpanel"
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: export/ExportMultiple.cpp:258
+msgid "Tracks"
+msgstr "Spor"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
#: Screenshot.cpp:384
msgid "Saved "
msgstr "Lagret "
@@ -3167,6 +3361,10 @@ msgstr "Lagret "
msgid "Error trying to save file: "
msgstr "Feil ved lagring til fil: "
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
#: Sequence.cpp:732 Sequence.cpp:742 Sequence.cpp:749
msgid "Gap detected in project file\n"
msgstr "Gap funnet i prosjektfilen\n"
@@ -3182,11 +3380,11 @@ msgstr "&Feils
#: SoundActivatedRecord.cpp:36
msgid "Sound Activated Record"
-msgstr ""
+msgstr "Lydaktivert opptak"
#: SoundActivatedRecord.cpp:58
msgid "Activation level (dB):"
-msgstr ""
+msgstr "Aktiveringsnivå (dB):"
#: SplashDialog.cpp:60
msgid "&Welcome to Audacity!"
@@ -3226,7 +3424,7 @@ msgstr "Kommentarer"
#: Tags.cpp:777
msgid "Use arrow keys (or RETURN key after editing) to navigate fields."
-msgstr ""
+msgstr "Bruk piltastene (eller linjeskift etter redigering) for å navigere gjennom felt."
#: Tags.cpp:802
msgid "Tag Name"
@@ -3246,11 +3444,11 @@ msgstr "Sjangere"
#: Tags.cpp:826
msgid "E&dit..."
-msgstr ""
+msgstr "Re&diger..."
#: Tags.cpp:827
msgid "Rese&t..."
-msgstr ""
+msgstr "Nulls&till..."
#: Tags.cpp:834 Tags.cpp:1460 Tags.cpp:1988
msgid "Template"
@@ -3293,7 +3491,7 @@ msgstr "Klarte ikke
#: Tags.cpp:1084
msgid "Load Metadata As:"
-msgstr ""
+msgstr "Last inn metadata som:"
#: Tags.cpp:1112 Tags.cpp:1763 Tags.cpp:2486
msgid "Error loading metadata"
@@ -3304,6 +3502,10 @@ msgstr "Feil ved innlasting av metadata"
msgid "Save Metadata As:"
msgstr "Lagre metadata som:"
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
#: Theme.cpp:638
#, c-format
msgid "Audacity could not write file:\n"
@@ -3392,6 +3594,14 @@ msgstr "Varighet"
msgid "Audacity Timer Record"
msgstr "Audacity nedtellingsopptak"
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
#: SmartRecordDialog.cpp:223
msgid "Recording start"
msgstr "Opptaksstart"
@@ -3402,7 +3612,7 @@ msgstr "Opptaksslutt"
#: TimerRecordDialog.cpp:230
msgid "Audacity Timer Record Progress"
-msgstr ""
+msgstr "Framgang for Audacity nedtellingsopptak"
#: SmartRecordDialog.cpp:273
msgid "Start Date and Time"
@@ -3410,7 +3620,7 @@ msgstr "Startdato og tidspunkt"
#: TimerRecordDialog.cpp:274
msgid "Start Date"
-msgstr ""
+msgstr "Startdato"
#: SmartRecordDialog.cpp:290
msgid "End Date and Time"
@@ -3418,7 +3628,7 @@ msgstr "Sluttdato og tidspunkt"
#: TimerRecordDialog.cpp:294
msgid "End Date"
-msgstr ""
+msgstr "Sluttdato"
#. i18n-hint: A time specification like "Sunday 28th October 2007 15:16:17 GMT"
#. * but hopefully translated by wxwidgets will be inserted into this
@@ -3428,12 +3638,9 @@ msgid "Waiting to start recording at %s.\n"
msgstr "Venter på å begynnelse innspilling %s.\n"
#: TimerRecordDialog.cpp:382
+#, fuzzy
msgid "Audacity Timer Record - Waiting for Start"
-msgstr ""
-
-#: TrackPanel.cpp:464 TrackPanel.cpp:465
-msgid "Track Panel"
-msgstr "Sporpanel"
+msgstr "Audacity nedtellingsopptak - Venter på å starte"
#: TrackPanel.cpp:548 export/ExportPCM.cpp:133 prefs/QualityPrefs.cpp:97
msgid "Other..."
@@ -3487,6 +3694,10 @@ msgstr "Lag stereospor"
msgid "Split Stereo Track"
msgstr "Del opp stereospor"
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr ""
+
#: TrackPanel.cpp:575
msgid "Set Sample Format"
msgstr "Sett innspillingsformat"
@@ -3689,14 +3900,6 @@ msgstr "Justerte panorering"
msgid "Adjusted gain"
msgstr "Justerte sporvolum"
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr ""
-
#: TrackPanel.cpp:5918
msgid "Can't delete track with active audio"
msgstr "Kan ikke slette spor med aktiv lyd"
@@ -3731,6 +3934,11 @@ msgstr "Kanal"
msgid "Split stereo track '%s'"
msgstr "Del opp stereosporet '%s'"
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
#: TrackPanel.cpp:6139
#, c-format
msgid "Made '%s' a stereo track"
@@ -3807,6 +4015,10 @@ msgstr "Skriftnavn"
msgid "Face size"
msgstr "Skriftstørrelse"
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr ""
+
#: TrackPanel.cpp:7076
msgid "Mute"
msgstr "Demp"
@@ -3885,10 +4097,10 @@ msgstr "Programtillegg 1 til %i"
msgid "Plugins %i to %i"
msgstr "Programtillegg %i til %i"
-#: commands/CommandManager.cpp:857
-#, fuzzy
-msgid "Disallowed for some reason. Try selecting some audio first?"
-msgstr "Dette gikk ikke. Hva med å markere noe lyd først?"
+#: commands/CommandManager.cpp:923
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
+msgstr ""
#: commands/CommandManager.cpp:781
msgid "You can only do this when playing and recording are\n"
@@ -3913,8 +4125,9 @@ msgstr "Du m
" [Det går ikke å velge andre typer spor.]"
#: commands/CommandManager.cpp:903
+#, fuzzy
msgid "Disallowed"
-msgstr ""
+msgstr "Ulovlig"
#: commands/CommandManager.cpp:972
#, c-format
@@ -4276,7 +4489,6 @@ msgid "Changing Tempo"
msgstr "Endrer tempo"
#: effects/ClickRemoval.cpp:314
-#, fuzzy
msgid "Click Removal"
msgstr "Klikkfjerning"
@@ -4290,7 +4502,7 @@ msgstr "Velg terskel (lavere er mer
#: effects/ClickRemoval.cpp:350
msgid "Select threshold"
-msgstr ""
+msgstr "Velg terskel"
#: effects/ClickRemoval.cpp:362
msgid "Max spike width (higher is more sensitive):"
@@ -4298,7 +4510,7 @@ msgstr "Breieste spike (h
#: effects/ClickRemoval.cpp:363
msgid "Max spike width"
-msgstr ""
+msgstr "Breieste spike"
#: effects/ClickRemoval.h:42
msgid "Click Removal..."
@@ -4314,83 +4526,78 @@ msgstr "Dynamisk omr
#: effects/Compressor.cpp:498
msgid "Threshold"
-msgstr ""
+msgstr "Terskel"
#: effects/Compressor.cpp:502
msgid "Ratio:"
-msgstr ""
+msgstr "Forhold:"
#: effects/Compressor.cpp:506
msgid "Ratio"
-msgstr ""
+msgstr "Forhold"
#: effects/Compressor.cpp:510
-#, fuzzy
msgid "Attack Time:"
msgstr "Reaksjonstid: "
#: effects/Compressor.cpp:514
msgid "Attack Time"
-msgstr ""
+msgstr "Reaksjonstid"
#: effects/Compressor.cpp:518
-#, fuzzy
msgid "Decay Time:"
msgstr "Falltid: "
#: effects/Compressor.cpp:522
msgid "Decay Time"
-msgstr ""
+msgstr "Falltid"
-#: effects/Compressor.cpp:516
-msgid "Normalize to 0dB after compressing"
-msgstr "Normaliser til 0dB etter komprimering"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
+msgstr ""
#: effects/Compressor.cpp:563
#, c-format
-#, fuzzy
msgid "Threshold %d dB"
msgstr "Terskel: %d dB"
#: effects/Compressor.cpp:564
#, c-format
msgid "%3d dB"
-msgstr ""
+msgstr "%3d dB"
#: effects/Compressor.cpp:567
#, c-format
msgid "Ratio %.0f to 1"
-msgstr ""
+msgstr "Forhold: %.0f til 1"
#: effects/Compressor.cpp:568
#, c-format
msgid "%.0f:1"
-msgstr ""
+msgstr "%.0f:1"
#: effects/Compressor.cpp:571
#, c-format
msgid "Ratio %.1f to 1"
-msgstr ""
+msgstr "Forhold: %.1f til 1"
#: effects/Compressor.cpp:572
#, c-format
msgid "%.1f:1"
-msgstr ""
+msgstr "%.1f:1"
#: effects/Compressor.cpp:575
#, c-format
-#, fuzzy
msgid "Attack Time %.1f secs"
msgstr "Reaksjonstid: %.1f sek"
#: effects/Compressor.cpp:576 effects/Compressor.cpp:579
#, c-format
msgid "%.1f secs"
-msgstr ""
+msgstr "%.1f sek"
#: effects/Compressor.cpp:578
#, c-format
-#, fuzzy
msgid "Decay Time %.1f secs"
msgstr "Falltid: %.1f sek"
@@ -4402,6 +4609,10 @@ msgstr "Komprimering..."
msgid "Applying Dynamic Range Compression..."
msgstr "Anvender Dynamisk områdekomprimering"
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
msgstr ""
@@ -4421,19 +4632,6 @@ msgid "Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr ""
-
#: effects/Contrast.cpp:231
msgid "Contrast Analyzer"
msgstr ""
@@ -4467,6 +4665,11 @@ msgstr ""
msgid "Foreground end time"
msgstr ""
+#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
+#: effects/Contrast.cpp:289
+msgid "Measured"
+msgstr ""
+
#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
msgid "Use selection"
msgstr ""
@@ -4511,16 +4714,8 @@ msgstr ""
msgid "Help for WCAG2 Audio Contrast Analyzer"
msgstr ""
-#: toolbars/ControlToolBar.cpp:82
-msgid "Control"
-msgstr "Kontroll"
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
msgstr ""
#: effects/Contrast.cpp:328 effects/Contrast.cpp:336 effects/Contrast.cpp:344
@@ -4631,18 +4826,6 @@ msgstr ""
msgid "Data gathered"
msgstr ""
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr ""
-
#: effects/DtmfGen.cpp:48
msgid "DTMF Tone Generator"
msgstr "DTMF-tonegenerator"
@@ -4771,6 +4954,10 @@ msgstr "Feil ved lasting av EQ-kurve"
msgid "custom"
msgstr "egendefinert"
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr ""
+
#. i18n-hint: && in here is an escape character to get a single &
#. * on screen, so keep it as is
#: effects/Equalization.cpp:1087
@@ -4939,7 +5126,6 @@ msgid "Noise Threshold (Hiss/Hum/Ambient Noise)"
msgstr "Støyterskel (Visling/Summing/Bakgrunnsstøy)"
#: effects/Leveller.cpp:238
-#, fuzzy
msgid "Threshold for Noise:"
msgstr "Støyterskel:"
@@ -4975,10 +5161,6 @@ msgstr ""
msgid "Analyser"
msgstr ""
-#: toolbars/MixerToolBar.cpp:60
-msgid "Mixer"
-msgstr "Mikser"
-
#: effects/LoadEffects.cpp:116
msgid "Simulator"
msgstr ""
@@ -5097,7 +5279,7 @@ msgstr ""
#: effects/LoadEffects.cpp:205
msgid "Time"
-msgstr ""
+msgstr "Tid"
#: effects/LoadEffects.cpp:207
msgid "Onsets"
@@ -5181,7 +5363,7 @@ msgstr "St
#: effects/NoiseRemoval.cpp:850
msgid "Noise reduction"
-msgstr ""
+msgstr "Støyreduksjon"
#: effects/NoiseRemoval.cpp:848
msgid "Frequency smoothing (Hz):"
@@ -5197,7 +5379,7 @@ msgstr "Reaksjonstid / falltid (sekunder):"
#: effects/NoiseRemoval.cpp:868
msgid "Attach/decay time"
-msgstr ""
+msgstr "Reaksjonstid / falltid"
#: effects/NoiseRemoval.h:35
msgid "Noise Removal..."
@@ -5218,10 +5400,6 @@ msgstr "Fjerner st
msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr "Anvendt effekt: %s fjern dc startposisjon = %s, normaliser amplitude = %s"
-#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
-msgid "false"
-msgstr "usann"
-
#. i18n-hint: true here means that the option was
#. * selected. Opposite false if not selected
#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
@@ -5357,13 +5535,12 @@ msgid "Repeat"
msgstr "Repeter"
#: effects/Repeat.cpp:212
-#, fuzzy
msgid "Number of times to repeat:"
msgstr "Antall ganger å repetere:"
#: effects/Repeat.cpp:221
msgid "New selection length: hh:mm:ss"
-msgstr ""
+msgstr "Ny lengde på markering: tt:mm:ss"
#: effects/Repeat.cpp:207 effects/Repeat.cpp:237
msgid "New selection length: "
@@ -5448,47 +5625,47 @@ msgstr "Anvender Stereo til mono"
#: effects/TimeScale.cpp:140
msgid "Time Scale"
-msgstr ""
+msgstr "Tidsskalering"
#: effects/TimeScale.cpp:176
msgid "Sliding Time Scale/Pitch Shift"
-msgstr ""
+msgstr "Glidende tidsskalering/toneskifte"
#: effects/TimeScale.cpp:178
msgid "using SBSMS, by Clayton Otey"
-msgstr ""
+msgstr "vha. SBSMS, av Clayton Otey"
#: effects/TimeScale.cpp:187
msgid "Initial Tempo Change (%):"
-msgstr ""
+msgstr "Innledende endring i tempo (%):"
#: effects/TimeScale.cpp:191
msgid "Final Tempo Change (%):"
-msgstr ""
+msgstr "Endelig endring i tempo (%):"
#: effects/TimeScale.cpp:202
msgid "Initial Tempo Change (%)"
-msgstr ""
+msgstr "Innledende endring i tempo (%)"
#: effects/TimeScale.cpp:211
msgid "Final Tempo Change (%)"
-msgstr ""
+msgstr "Endelig endring i tempo (%)"
#: effects/TimeScale.cpp:219
msgid "Initial Pitch Shift (semitones) [-12 to 12]:"
-msgstr ""
+msgstr "Innledende endring i tonehøyde (halvtoner) [-12 til 12]:"
#: effects/TimeScale.cpp:223
msgid "Final Pitch Shift (semitones) [-12 to 12]:"
-msgstr ""
+msgstr "Endelig endring i tonehøyde (halvtoner) [-12 til 12]:"
#: effects/TimeScale.h:33
msgid "Sliding Time Scale/Pitch Shift..."
-msgstr ""
+msgstr "Glidende tidsskalering/toneskifte"
#: effects/TimeScale.h:47
msgid "Changing Tempo/Pitch"
-msgstr ""
+msgstr "Endrer tempo/tonehøyde"
#: effects/ToneGen.cpp:66
#, c-format
@@ -5536,20 +5713,24 @@ msgid "Waveform:"
msgstr "Bølgeform:"
#: effects/ToneGen.cpp:358
+#, fuzzy
msgid "Frequency Hertz Start"
-msgstr ""
+msgstr "Frekvens hertz start"
#: effects/ToneGen.cpp:359
+#, fuzzy
msgid "Frequency Hertz End"
-msgstr ""
+msgstr "Frekvens hertz slutt"
#: effects/ToneGen.cpp:360
+#, fuzzy
msgid "Amplitude Start"
-msgstr ""
+msgstr "Amplitude start"
#: effects/ToneGen.cpp:361
+#, fuzzy
msgid "Amplitude End"
-msgstr ""
+msgstr "Amplitude slutt"
#: effects/ToneGen.cpp:372
msgid "Interpolation:"
@@ -5579,22 +5760,39 @@ msgstr "Alle spor m
msgid "Truncate Silence"
msgstr "Fjern stillhet"
-#: effects/TruncSilence.cpp:346
-msgid "Max silence duration:"
-msgstr "Maksimal lengde på stillhet:"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr ""
+
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
+msgstr ""
#: effects/TruncSilence.cpp:349 prefs/AudioIOPrefs.cpp:190
#: prefs/AudioIOPrefs.cpp:193
msgid "milliseconds"
msgstr "millisekunder"
+#: effects/TruncSilence.cpp:346
+msgid "Max silence duration:"
+msgstr "Maksimal lengde på stillhet:"
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ""
+
#: effects/TruncSilence.cpp:351
msgid "Threshold for silence:"
msgstr "Stillhetsterskel:"
-#: effects/TruncSilence.cpp:376
-msgid " Duration must be at least 1 millisecond"
-msgstr " Varighet må være minst 1 millisekund"
+#: effects/TruncSilence.cpp:506
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
+msgstr ""
#: effects/TruncSilence.h:28
msgid "Truncate Silence..."
@@ -5604,17 +5802,55 @@ msgstr "Fjern stillhet..."
msgid "Truncating Silence..."
msgstr "Fjerner stillhet..."
-#: effects/VST/VSTEffect.cpp:165
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "Beklager, VST-effekter kan ikke utføres på stereospor hvor de enkelte kanalene ikke passer sammen."
+#: effects/ladspa/LadspaEffect.cpp:608
+msgid "Effect Settings"
+msgstr "Effektinnstillinger"
+
+#: effects/ladspa/LadspaEffect.cpp:573 effects/ladspa/LadspaEffect.cpp:581
+#: prefs/GUIPrefs.cpp:51 prefs/QualityPrefs.cpp:72
+msgid "None"
+msgstr "Ingen"
+
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
-#: effects/VST/VSTEffect.cpp:180
-msgid "Can't process replacing"
-msgstr "Kan ikke utføre erstatning"
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
-#: effects/VST/VSTEffect.cpp:403
-msgid "VST Plug-in parameters:"
-msgstr "VST-programtillegg, parametere:"
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr ""
#: effects/Wahwah.cpp:61
#, c-format
@@ -5663,19 +5899,10 @@ msgstr "Utf
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr "Beklager, tilleggseffekter kan ikke benyttes på stereospor hvor de enkelte sporkanalene ikke passer sammen."
-#: effects/ladspa/LadspaEffect.cpp:573 effects/ladspa/LadspaEffect.cpp:581
-#: prefs/GUIPrefs.cpp:51 prefs/QualityPrefs.cpp:72
-msgid "None"
-msgstr "Ingen"
-
#: effects/ladspa/LadspaEffect.cpp:575 effects/vamp/VampEffect.cpp:384
msgid "Author: "
msgstr "Forfatter:"
-#: effects/ladspa/LadspaEffect.cpp:608
-msgid "Effect Settings"
-msgstr "Effektinnstillinger"
-
#: effects/ladspa/LadspaEffect.cpp:699
msgid "Length (seconds)"
msgstr "Lengde (sekund)"
@@ -5871,9 +6098,21 @@ msgstr "Eksporterer hele prosjektet med kommandolinjeomkoder"
msgid "Command Output"
msgstr "Utdata fra kommando"
-#: export/ExportFFmpeg.cpp:59
+#: export/ExportFFmpeg.cpp:61
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
#: export/ExportFFmpeg.cpp:394
@@ -5941,6 +6180,10 @@ msgstr ""
msgid "AAC Export Setup"
msgstr ""
+#: export/ExportOGG.cpp:86
+msgid "Quality:"
+msgstr "Kvalitet:"
+
#: export/ExportFFmpegDialogs.cpp:217
msgid "Specify AMR-NB Options"
msgstr ""
@@ -6074,12 +6317,8 @@ msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n
"Recommended - 192000"
msgstr ""
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr "Kvalitet:"
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid "Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
@@ -6098,10 +6337,10 @@ msgstr ""
msgid "Cutoff Bandwidth:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:947
+#: export/ExportFFmpegDialogs.cpp:936
msgid "Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:949
@@ -6290,12 +6529,12 @@ msgstr ""
msgid "AC3 Files (FFmpeg)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:56
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:57
@@ -6406,6 +6645,17 @@ msgstr "Bit-dybde:"
msgid "FLAC Files"
msgstr "FLAC-filer"
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
#: export/ExportFLAC.cpp:310
msgid "Exporting the selected audio as FLAC"
msgstr "Eksporter den markerte lyden som FLAC"
@@ -6657,10 +6907,6 @@ msgstr "Valg..."
msgid "Export location:"
msgstr "Eksporter til:"
-#: export/ExportMultiple.cpp:216 prefs/DirectoriesPrefs.cpp:92
-msgid "Choose..."
-msgstr "Velg..."
-
#: export/ExportMultiple.cpp:217
msgid "Create"
msgstr "Opprett"
@@ -6685,10 +6931,6 @@ msgstr "F
msgid "First file name"
msgstr ""
-#: export/ExportMultiple.cpp:258
-msgid "Tracks"
-msgstr "Spor"
-
#: export/ExportMultiple.cpp:265
msgid "Name files:"
msgstr "Gi navn til filer:"
@@ -6722,6 +6964,35 @@ msgstr "\"%s\" opprettet."
msgid "Choose a location to save the exported files"
msgstr "Velg en plassering for å lagre eksporterte filer"
+#: export/ExportMultiple.cpp:524
+#, c-format
+msgid "Successfully exported the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:527
+#, c-format
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr ""
+
#: export/ExportMultiple.cpp:470
#, c-format
msgid "\"%s\" doesn't exist.\n"
@@ -6735,16 +7006,6 @@ msgstr "\"%s\" eksisterer ikke.\n"
msgid "Edit metadata"
msgstr "Rediger metadata"
-#: export/ExportMultiple.cpp:595 export/ExportMultiple.cpp:762
-#, c-format
-msgid "Successfully exported %d file(s)."
-msgstr "Eksporterte %d fil(er)."
-
-#: export/ExportMultiple.cpp:596 export/ExportMultiple.cpp:763
-#, c-format
-msgid "Something went wrong after exporting %d file(s)."
-msgstr "Noe gikk galt ved eksportering av %d fil(er)."
-
#: export/ExportMultiple.cpp:825
#, c-format
msgid "Label %s is not a legal file name. You cannot use any of: %s\n"
@@ -6914,16 +7175,16 @@ msgstr "\"%s\" er en Advanced Audio Coding-fil. \n"
#: import/Import.cpp:271
#, c-format
-#, fuzzy
msgid "\"%s\" is an encrypted audio file. \n"
"These typically are from an online music store. \n"
"Audacity cannot open this type of file due to the encryption. \n"
"Try recording the file into Audacity, or burn it to audio CD then \n"
"extract the CD track to a supported audio format such as WAV or AIFF."
-msgstr "\"%s\" er en kryptert lydfil. Disse er ofte fra musikkbutikker på nettet. \n"
+msgstr "\"%s\" er en kryptert lydfil. \n"
+"Disse kommer ofte fra musikkbutikker på nettet. \n"
"Audacity kan ikke åpne denne filtypen grunnet krypteringen. \n"
"Prøv å spille inn filen til Audacity, eller brenn den til en lyd-CD, \n"
-"for så å trekke ut CD-sporet til et støttet filformat, f.eks. WAV eller AIFF."
+"for så å trekke ut (rippe) CD-sporet til et støttet filformat, f.eks. WAV eller AIFF."
#: import/Import.cpp:194
#, c-format
@@ -6987,33 +7248,41 @@ msgstr "\"%s\" er en Ogg Speex-lydfil.\n"
msgid "\"%s\" is a video file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to extract the audio to a supported format, such as WAV or AIFF."
-msgstr ""
+msgstr "\"%s\" er en videofil.\n"
+"Audacity kan foreløpig ikke åpne denne filtypen.\n"
+"Du må trekke ut lyden til et støttet format, som WAV eller AIFF."
#: import/Import.cpp:317
#, c-format
msgid "Audacity did not recognize the type of the file '%s'.\n"
"If it is uncompressed, try importing it using \"Import Raw\"."
-msgstr ""
+msgstr "Audacity gjenkjente ikke filtypen til filen '%s'.\n"
+"Hvis den er ukomprimert kan du prøve å importere vha. «Importer rå»."
#: import/Import.cpp:322
#, c-format
msgid "Audacity recognized the type of the file '%s',\n"
"but was unable to import it."
-msgstr ""
+msgstr "Audacity gjenkjente filtypen til filen '%s',\n"
+"men klarte ikke å importere den."
#: import/ImportFFmpeg.cpp:34
msgid "FFmpeg-compatible files"
-msgstr ""
+msgstr "FFmpeg-kompatible filer"
#: import/ImportFFmpeg.cpp:431
#, c-format
msgid "Index[%02x] Codec[%S], Language[%S], Bitrate[%S], Channels[%d], Duration[%d]"
-msgstr ""
+msgstr "Indeks[%02x] Kodek[%S], Språk[%S], Bitrate[%S], Kanaler[%d], Varighet[%d]"
#: import/ImportFLAC.cpp:35
msgid "FLAC files"
msgstr "FLAC-filer"
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr ""
+
#: import/ImportLOF.cpp:92
msgid "List of Files in basic text format"
msgstr "Liste av Filer i rent tekstformat"
@@ -7049,16 +7318,16 @@ msgstr "Sporet har feil startposisjon i LOF-filen"
#: import/ImportMIDI.cpp:31
msgid ": Filename too short."
-msgstr ""
+msgstr ": For kort filnavn."
#: import/ImportMIDI.cpp:31 import/ImportMIDI.cpp:39 import/ImportMIDI.cpp:45
#: import/ImportMIDI.cpp:53
msgid "Could not open file "
-msgstr ""
+msgstr "Klarte ikke å åpne fil "
#: import/ImportMIDI.cpp:39
msgid ": Incorrect filetype."
-msgstr ""
+msgstr ": Feil filtype."
#: import/ImportOGG.cpp:36
msgid "Ogg Vorbis files"
@@ -7091,7 +7360,7 @@ msgstr "WAV, AIFF og andre ukomprimerte filtyper"
#: import/ImportPlugin.h:142 import/ImportRaw.cpp:203
#, c-format
msgid "Importing %s"
-msgstr ""
+msgstr "Importerer %s"
#: import/ImportQT.cpp:21
msgid "QuickTime files"
@@ -7099,7 +7368,7 @@ msgstr "QuickTime-filer"
#: import/ImportRaw.cpp:205
msgid "Import Raw"
-msgstr ""
+msgstr "Importer rå"
#: import/ImportRaw.cpp:278
msgid "Import Raw Data"
@@ -7154,11 +7423,11 @@ msgstr "%d kanaler"
#: import/ImportRaw.cpp:369
msgid "Byte order:"
-msgstr ""
+msgstr "Byte-rekkefølge:"
#: import/ImportRaw.cpp:372
msgid "Channels:"
-msgstr ""
+msgstr "Kanaler:"
#: import/ImportRaw.cpp:386
msgid "Start offset:"
@@ -7174,46 +7443,52 @@ msgstr "Datapunktrate:"
#: ondemand/ODComputeSummaryTask.h:47
msgid "Import complete. Calculating waveform"
-msgstr ""
+msgstr "Importering fullført. Beregner bølgeform"
#: ondemand/ODDecodeTask.h:61
msgid "Decoding Waveform"
-msgstr ""
+msgstr "Avkoder bølgeform"
#: ondemand/ODWaveTrackTaskQueue.cpp:327
#, c-format
msgid "%s %2.0f%% complete. Click to change task focal point."
-msgstr ""
+msgstr "%s %2.0f%% fullført. Klikk for å endre oppgavefokus."
-#: prefs/AudioIOPrefs.cpp:41 prefs/AudioIOPrefs.cpp:42
-msgid "Audio I/O"
-msgstr "Lyd-I/O"
+#: prefs/BatchPrefs.cpp:55 prefs/BatchPrefs.cpp:56
+msgid "Batch"
+msgstr "Satsvis"
-#: prefs/AudioIOPrefs.cpp:100
-msgid "1 (Mono)"
-msgstr "1 (Mono)"
+#: prefs/BatchPrefs.cpp:77 prefs/GUIPrefs.cpp:92
+msgid "Behaviors"
+msgstr "Oppførsler"
-#: prefs/AudioIOPrefs.cpp:101
-msgid "2 (Stereo)"
-msgstr "2 (Stereo)"
+#: prefs/BatchPrefs.cpp:80 prefs/GUIPrefs.cpp:129
+msgid "&Don't apply effects in batch mode"
+msgstr "&Ikke anvend effekter i satsvis modus"
-#: prefs/AudioIOPrefs.cpp:115
-msgid "Playback"
-msgstr "Avspilling"
+#: prefs/BatchPrefs.cpp:83 prefs/GUIPrefs.cpp:132
+msgid "Cl&eanSpeech Mode (Customized GUI)"
+msgstr "&CleanSpeech-modus (tilpasset brukergrensesnitt)"
-#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
-#: toolbars/DeviceToolBar.cpp:57
-msgid "Device"
-msgstr "Enhet"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:34 prefs/GUIPrefs.cpp:35
+msgid "Interface"
+msgstr "Grensesnitt"
+
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
+msgstr ""
#: prefs/AudioIOPrefs.cpp:122
msgid "Using:"
msgstr "Bruker:"
-#: prefs/AudioIOPrefs.cpp:123
-#, fuzzy
-msgid "Portaudio v"
-msgstr "Portaudio v"
+#: prefs/AudioIOPrefs.cpp:115
+msgid "Playback"
+msgstr "Avspilling"
#: prefs/AudioIOPrefs.cpp:133
msgid "Recording"
@@ -7223,93 +7498,13 @@ msgstr "Opptak"
msgid "Channels"
msgstr "Kanaler"
-#: prefs/AudioIOPrefs.cpp:145
-msgid "Playthrough"
-msgstr "Spill gjennom"
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr "Spill gjennom med &maskinvare: Spill av nytt spor under innspilling"
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr "Spill gjennom med &programvare: Spill av nytt spor under innspilling"
-
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:162
-msgid "Effects Preview"
-msgstr "Effektforhåndsvisning"
-
-#: prefs/AudioIOPrefs.cpp:165
-msgid "Length of preview:"
-msgstr "Lengde på forhåndsvisning:"
-
-#: prefs/AudioIOPrefs.cpp:170
-msgid "Cut Preview"
-msgstr "Forhåndsvisning av utklipping"
-
-#: prefs/AudioIOPrefs.cpp:173
-msgid "Preview before cut region:"
-msgstr "Forhåndsvis før utklippsregion:"
-
-#: prefs/AudioIOPrefs.cpp:175
-msgid "Preview after cut region:"
-msgstr "Forhåndsvis etter utklippsregion:"
-
-#: prefs/AudioIOPrefs.cpp:183
-msgid "Latency"
-msgstr "Latens"
-
-#: prefs/AudioIOPrefs.cpp:189
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
-msgstr "Lyd til buffer:\n"
-"(høyere = mer latens)"
-
-#: prefs/AudioIOPrefs.cpp:192
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr "Latenskorreksjon:\n"
-"(negativ = baklengs)"
-
-#: prefs/AudioIOPrefs.cpp:197
-msgid "Seek Time when playing"
-msgstr "Søketid under avspilling"
-
-#: prefs/AudioIOPrefs.cpp:200
-msgid "Short period:"
-msgstr "Kort periode:"
-
-#: prefs/AudioIOPrefs.cpp:202
-msgid "Long period:"
-msgstr "Lang periode:"
-
-#: prefs/BatchPrefs.cpp:55 prefs/BatchPrefs.cpp:56
-msgid "Batch"
-msgstr "Satsvis"
-
-#: prefs/BatchPrefs.cpp:77 prefs/GUIPrefs.cpp:92
-msgid "Behaviors"
-msgstr "Oppførsler"
-
-#: prefs/BatchPrefs.cpp:80 prefs/GUIPrefs.cpp:129
-msgid "&Don't apply effects in batch mode"
-msgstr "&Ikke anvend effekter i satsvis modus"
+#: prefs/AudioIOPrefs.cpp:100
+msgid "1 (Mono)"
+msgstr "1 (Mono)"
-#: prefs/BatchPrefs.cpp:83 prefs/GUIPrefs.cpp:132
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr "&CleanSpeech-modus (tilpasset brukergrensesnitt)"
+#: prefs/AudioIOPrefs.cpp:101
+msgid "2 (Stereo)"
+msgstr "2 (Stereo)"
#: prefs/DirectoriesPrefs.cpp:55 prefs/DirectoriesPrefs.cpp:56
#: prefs/PrefsDialog.cpp:279
@@ -7328,34 +7523,31 @@ msgstr "Plassering:"
msgid "Free Space:"
msgstr "Ledig plass:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr "Autolagre"
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr "Autolagre en kopi av prosjektet i en egen mappe"
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
-msgstr "Intervall for autolagring:"
-
-#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
-msgstr "minutter"
-
#: prefs/DirectoriesPrefs.cpp:110
msgid "Audio cache"
msgstr "Lydmellomlager"
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "Play and/or record using RAM (useful for slow drives)"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
#: prefs/DirectoriesPrefs.cpp:121
msgid "Choose a location to place the temporary directory"
msgstr "Velg en plassering for den midlertidige mappen"
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: prefs/DirectoriesPrefs.cpp:166
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -7374,50 +7566,106 @@ msgstr "Mappen %s er ikke skrivbar"
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "Endringer til den midlertidige mappen trer først i kraft når Audacity startes på nytt"
-#: prefs/FileFormatPrefs.cpp:48 prefs/FileFormatPrefs.cpp:49
-msgid "Import / Export"
-msgstr "Importer / Eksporter"
+#: prefs/GUIPrefs.cpp:42
+msgid "In Browser"
+msgstr "I nettleser"
-#: prefs/FileFormatPrefs.cpp:77
-msgid "MP3 Export Library"
-msgstr "Bibliotek for MP3-eksport"
+#: prefs/GUIPrefs.cpp:43
+msgid "From Internet"
+msgstr "Fra nettet"
-#: prefs/FileFormatPrefs.cpp:80
-msgid "MP3 Library Version:"
-msgstr "MP3-bibliotek versjon:"
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
+msgstr ""
-#: prefs/FileFormatPrefs.cpp:86
-msgid "MP3 Library:"
-msgstr "MP3-bibliotek:"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
+msgstr ""
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:91
-msgid "LAME MP3 Library:"
-msgstr "LAME MP3-bibliotek:"
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
+msgstr ""
-#: prefs/FileFormatPrefs.cpp:94
-msgid "&Download"
-msgstr "Last ne&d"
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
+msgstr ""
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
+#: prefs/GUIPrefs.cpp:141
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 dB (smalt område for redigering av høy amplitude)"
+
+#: prefs/GUIPrefs.cpp:142
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 dB (PCM-område for 8 bit datapunkter)"
+
+#: prefs/GUIPrefs.cpp:143
+msgid "-60 dB (PCM range of 10 bit samples)"
+msgstr "-60 dB (PCM-område for 10 bit datapunkter)"
+
+#: prefs/GUIPrefs.cpp:144
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 dB (PCM-område for 16 bit datapunkter)"
+
+#: prefs/GUIPrefs.cpp:145
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 dB (omtrentlig grense for menneskets hørsel)"
+
+#: prefs/GUIPrefs.cpp:146
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB (PCM-område for 24 bits datapunkter)"
+
+#: prefs/SpectrumPrefs.cpp:140
+msgid "Display"
+msgstr "Visning"
+
+#: prefs/GUIPrefs.cpp:100
+msgid "Er&gonomic order of audio I/O buttons"
+msgstr "Er&gonomisk rekkefølge på lyd I/O-knapper"
+
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:136
+#: prefs/GUIPrefs.cpp:169
+msgid "Help:"
+msgstr "Hjelp:"
+
+#: prefs/GUIPrefs.cpp:96
#, fuzzy
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr "Merk: Du kan endre innstillingene for eksportkvalitet ved å klikke Valg-knappen i eksport-dialogen.\n"
+msgid "Cl&osing last window quits Audacity"
+msgstr "Avslutt Audacity ved lukking av siste vindu"
+
+#: prefs/GUIPrefs.cpp:110
+msgid "&Beep on completion of longer activities"
+msgstr "&Lydsignal ved fullføring av større oppgaver"
+
+#: prefs/GUIPrefs.cpp:126
+msgid "Modes"
+msgstr "Modi"
+
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:129
+msgid "Don't a&pply effects in batch mode"
+msgstr "I&kke anvend effekter i satsvis modus"
+
+#: prefs/FileFormatPrefs.cpp:48 prefs/FileFormatPrefs.cpp:49
+msgid "Import / Export"
+msgstr "Importer / Eksporter"
#: prefs/FileFormatPrefs.cpp:100
msgid "When importing audio files"
@@ -7435,22 +7683,6 @@ msgstr "&Les ukomprimerte lydfiler direkte fra originalen (raskere)"
msgid "&Normalize all tracks in project"
msgstr "&Normaliser alle spor i prosjektet"
-#: prefs/FileFormatPrefs.cpp:111
-msgid "When saving a project that depends on other audio files"
-msgstr "Ved lagring av prosjekter som avhenger av andre lydfiler"
-
-#: prefs/FileFormatPrefs.cpp:114
-msgid "Always © all audio into project (safest)"
-msgstr "Alltid &kopier all lyd inn i prosjektet (tryggest)"
-
-#: prefs/FileFormatPrefs.cpp:115
-msgid "&Do not copy any audio"
-msgstr "&Ikke kopier noe lyd"
-
-#: prefs/FileFormatPrefs.cpp:116
-msgid "&Ask user"
-msgstr "&Spør bruker"
-
#: prefs/FileFormatPrefs.cpp:120
msgid "When exporting tracks to an audio file"
msgstr "Ved eksportering av spor til en lydfil"
@@ -7467,146 +7699,22 @@ msgstr "&Bruk en egendefinert miks (f.eks. for
msgid "S&how Metadata Editor prior to export step"
msgstr "&Vis metadata-redigering før eksport-trinnet"
-#: prefs/GUIPrefs.cpp:34 prefs/GUIPrefs.cpp:35
-msgid "Interface"
-msgstr "Grensesnitt"
-
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
-msgstr "I nettleser"
-
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
-msgstr "Fra nettet"
-
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
-msgstr "Enkel"
-
-#: prefs/GUIPrefs.cpp:94
-msgid "&Update display while playing"
-msgstr "&Oppdater grensesnitt under avspilling"
-
-#: prefs/GUIPrefs.cpp:96
-#, fuzzy
-msgid "Cl&osing last window quits Audacity"
-msgstr "Avslutt Audacity ved lukking av siste vindu"
-
-#: prefs/GUIPrefs.cpp:98
-msgid "Enable &dragging of left and right selection edges"
-msgstr "&Venstre og høyre markeringskanter kan dras"
-
-#: prefs/GUIPrefs.cpp:100
-msgid "Er&gonomic order of audio I/O buttons"
-msgstr ""
-
-# bedre formulering?
-#: prefs/GUIPrefs.cpp:102
-msgid "Automatically &fit tracks vertically zoomed"
-msgstr "Vertikalt zoom og tilpass spor automatisk"
-
-#: prefs/GUIPrefs.cpp:104
-#, fuzzy
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
-msgstr "«Flytt sporfokus» &veksler gjennom spor gjentatte ganger"
-
-#: prefs/GUIPrefs.cpp:106
-msgid "Editing a &clip can move other clips"
-msgstr "Redigering av &klipp kan flytte andre klipp"
-
-#: prefs/GUIPrefs.cpp:108
-msgid "&Select all audio in project, if none selected"
-msgstr "&Marker all lyd i prosjektet, hvis ingenting er markert"
-
-#: prefs/GUIPrefs.cpp:110
-msgid "&Beep on completion of longer activities"
-msgstr "&Lydsignal ved fullføring av større oppgaver"
-
-#: prefs/GUIPrefs.cpp:114
-msgid "Show / Hide"
-msgstr "Vis / Gjem"
-
-#: prefs/GUIPrefs.cpp:116
-msgid "Enable cut &lines"
-msgstr "Vis utklippslinjer"
-
-#: prefs/GUIPrefs.cpp:118
-msgid "Show warnings about &temp files"
-msgstr "Vis advarsler om midler&tidige filer"
-
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:122
-#, fuzzy
-msgid "Show &Welcome Message at program start up"
-msgstr "Vis velkomstmelding når programmet starter"
-
-#: prefs/GUIPrefs.cpp:126
-msgid "Modes"
-msgstr "Modi"
-
-#: prefs/GUIPrefs.cpp:129
-msgid "Don't a&pply effects in batch mode"
+#: prefs/ImportExportPrefs.cpp:84
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
msgstr ""
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
-msgstr "Minste rekkevidde for visningene Lydnivåmåler og 'Bølgeform (dB)'"
-
-#: prefs/GUIPrefs.cpp:141
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 dB (smalt område for redigering av høy amplitude)"
-
-#: prefs/GUIPrefs.cpp:142
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 dB (PCM-område for 8 bit datapunkter)"
-
-#: prefs/GUIPrefs.cpp:143
-#, fuzzy
-msgid "-60 dB (PCM range of 10 bit samples)"
-msgstr "4096"
-
-#: prefs/GUIPrefs.cpp:144
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "4096"
-
-#: prefs/GUIPrefs.cpp:145
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 dB (omtrentlig grense for menneskets hørsel)"
-
-#: prefs/GUIPrefs.cpp:146
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB (PCM-område for 24 bits datapunkter)"
-
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
-msgstr "Standard visningsmodus"
-
-#: prefs/GUIPrefs.cpp:166
-msgid "Other interface choices"
-msgstr "Andre grensesnittvalg"
-
-#: prefs/GUIPrefs.cpp:169
-msgid "Help:"
-msgstr "Hjelp:"
-
-#: prefs/GUIPrefs.cpp:170
-msgid "Solo Button:"
-msgstr "Solo-knapp:"
-
#: prefs/KeyConfigPrefs.cpp:64 prefs/KeyConfigPrefs.cpp:65
msgid "Keyboard"
msgstr "Tastatur"
#: prefs/KeyConfigPrefs.cpp:86
msgid "Keyboard preferences currently unavailable."
-msgstr ""
+msgstr "Tastaturinstillinger er for tiden utilgjengelige."
#: prefs/KeyConfigPrefs.cpp:87
msgid "Open a new project to modify keyboard shortcuts."
-msgstr ""
+msgstr "Åpne et nytt prosjekt for å endre tastatursnarveiene."
#: prefs/KeyConfigPrefs.cpp:95
msgid "Key Bindings"
@@ -7624,25 +7732,38 @@ msgstr "Merk: Trykk Cmd+Q for
msgid "&Defaults"
msgstr "Stan&darder"
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr ""
+
#: prefs/KeyConfigPrefs.cpp:143
msgid "Key Combination"
msgstr "Tastekombinasjon"
-#: prefs/KeyConfigPrefs.cpp:163
-msgid "Export Keyboard Shortcuts As:"
-msgstr "Eksporter tastatur-snarveier som:"
+#: prefs/KeyConfigPrefs.cpp:367 toolbars/EditToolBar.cpp:144
+msgid "Undo"
+msgstr "Angre"
-#: prefs/KeyConfigPrefs.cpp:181
-msgid "Error saving keyboard shortcuts"
-msgstr "Feil ved lagring av tastatur-snarveier"
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr ""
#: prefs/KeyConfigPrefs.cpp:196
msgid "Select an XML file containing Audacity keyboard shortcuts..."
-msgstr "Velg en XML-fil som inneholder Audacity tastatur-snarveier..."
+msgstr "Velg en XML-fil som inneholder Audacity tastatursnarveier..."
#: prefs/KeyConfigPrefs.cpp:213
msgid "Error loading keyboard shortcuts"
-msgstr "Feil ved lasting av tastatur-snarveier"
+msgstr "Feil ved lasting av tastatursnarveier"
+
+#: prefs/KeyConfigPrefs.cpp:163
+msgid "Export Keyboard Shortcuts As:"
+msgstr "Eksporter tastatursnarveier som:"
+
+#: prefs/KeyConfigPrefs.cpp:181
+msgid "Error saving keyboard shortcuts"
+msgstr "Feil ved lagring av tastatursnarveier"
#: prefs/KeyConfigPrefs.cpp:241
#, c-format
@@ -7653,9 +7774,62 @@ msgstr "Tastatursnarveien '%s' er allerede tilegnet:\n"
"\n"
"'%s'"
-#: prefs/KeyConfigPrefs.cpp:367 toolbars/EditToolBar.cpp:144
-msgid "Undo"
-msgstr "Angre"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:77
+msgid "MP3 Export Library"
+msgstr "Bibliotek for MP3-eksport"
+
+#: prefs/FileFormatPrefs.cpp:80
+msgid "MP3 Library Version:"
+msgstr "MP3-bibliotek versjon:"
+
+#: prefs/FileFormatPrefs.cpp:86
+msgid "MP3 Library:"
+msgstr "MP3-bibliotek:"
+
+#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr "&Finn..."
+
+#: prefs/FileFormatPrefs.cpp:91
+msgid "LAME MP3 Library:"
+msgstr "LAME MP3-bibliotek:"
+
+#: prefs/FileFormatPrefs.cpp:94
+msgid "&Download"
+msgstr "Last ne&d"
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr "FFmpeg import/eksportbibliotek"
+
+#: prefs/FileFormatPrefs.cpp:109
+msgid "FFmpeg Library Version:"
+msgstr "FFmpeg-bibliotekversjon:"
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
+msgid "FFmpeg Library:"
+msgstr "FFmpeg-bibliotek:"
+
+#: prefs/AudioIOPrefs.cpp:41 prefs/AudioIOPrefs.cpp:42
+msgid "Audio I/O"
+msgstr "Lyd-I/O"
+
+#: prefs/AudioIOPrefs.cpp:123
+#, fuzzy
+msgid "Portaudio v"
+msgstr "Portaudio v"
+
+#: prefs/AudioIOPrefs.cpp:145
+msgid "Playthrough"
+msgstr "Spill gjennom"
#: prefs/AudioIOPrefs.cpp:147
msgid "&Play other tracks while recording new one"
@@ -7663,35 +7837,55 @@ msgstr "S&pill andre spor samtidig med innspilling av nytt"
#: prefs/MidiIOPrefs.cpp:149
msgid "&Hardware Playthrough (Play new track while recording it)"
-msgstr ""
+msgstr "Spill gjennom med &maskinvare (Spill av nytt spor under innspilling)"
#: prefs/MidiIOPrefs.cpp:152
msgid "&Software Playthrough (Play new track while recording it)"
-msgstr ""
+msgstr "Spill gjennom med &programvare (Spill av nytt spor under innspilling)"
+
+#: prefs/AudioIOPrefs.cpp:170
+msgid "Cut Preview"
+msgstr "Forhåndsvisning av utklipping"
#: prefs/MidiIOPrefs.cpp:160
msgid "Play before cut region:"
-msgstr ""
+msgstr "Spill før utklippsregionen:"
#: prefs/MidiIOPrefs.cpp:162
msgid "Play after cut region:"
-msgstr ""
+msgstr "Spill etter utklippsregionen:"
+
+#: prefs/AudioIOPrefs.cpp:183
+msgid "Latency"
+msgstr "Latens"
#: prefs/MidiIOPrefs.cpp:173
msgid "Audio to buffer:"
-msgstr ""
+msgstr "Lyd til buffer:"
#: prefs/MidiIOPrefs.cpp:176
msgid "Latency correction:"
-msgstr ""
+msgstr "Latenskorreksjon:"
#: prefs/MidiIOPrefs.cpp:183
msgid "Seek Time"
-msgstr ""
+msgstr "Søketid"
+
+#: prefs/AudioIOPrefs.cpp:200
+msgid "Short period:"
+msgstr "Kort periode:"
+
+#: prefs/AudioIOPrefs.cpp:202
+msgid "Long period:"
+msgstr "Lang periode:"
+
+#: prefs/AudioIOPrefs.cpp:162
+msgid "Effects Preview"
+msgstr "Effektforhåndsvisning"
#: prefs/MidiIOPrefs.cpp:196
msgid "Play when previewing:"
-msgstr ""
+msgstr "Spill av ved forhåndsvisning:"
#: prefs/MousePrefs.cpp:55 prefs/MousePrefs.cpp:56
msgid "Mouse"
@@ -7903,10 +8097,62 @@ msgstr "Ctrl-hjul-roter"
msgid "Zoom in or out"
msgstr "Zoom inn eller ut"
+#: prefs/AudioIOPrefs.cpp:165
+msgid "Length of preview:"
+msgstr "Lengde på forhåndsvisning:"
+
+#: prefs/AudioIOPrefs.cpp:173
+msgid "Preview before cut region:"
+msgstr "Forhåndsvis før utklippsregion:"
+
+#: prefs/AudioIOPrefs.cpp:175
+msgid "Preview after cut region:"
+msgstr "Forhåndsvis etter utklippsregion:"
+
+#: prefs/AudioIOPrefs.cpp:197
+msgid "Seek Time when playing"
+msgstr "Søketid under avspilling"
+
#: prefs/PrefsDialog.cpp:89
msgid "Audacity Preferences"
msgstr "Audacity innstillinger"
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:111
+msgid "When saving a project that depends on other audio files"
+msgstr "Ved lagring av prosjekter som avhenger av andre lydfiler"
+
+#: prefs/FileFormatPrefs.cpp:114
+msgid "Always © all audio into project (safest)"
+msgstr "Alltid &kopier all lyd inn i prosjektet (tryggest)"
+
+#: prefs/FileFormatPrefs.cpp:115
+msgid "&Do not copy any audio"
+msgstr "&Ikke kopier noe lyd"
+
+#: prefs/FileFormatPrefs.cpp:116
+msgid "&Ask user"
+msgstr "&Spør bruker"
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr "Autolagre"
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr "Autolagre en kopi av prosjektet i en egen mappe"
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr "Intervall for autolagring:"
+
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr "minutter"
+
#: prefs/QualityPrefs.cpp:73
msgid "Rectangle"
msgstr "Rektangel"
@@ -7931,70 +8177,107 @@ msgstr "Standard datarate:"
msgid "Default Sample Format:"
msgstr "Standard datapunktformat:"
-#: prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "Sanntidskonverterer for datapunktrate:"
-
-#: prefs/QualityPrefs.cpp:139
-msgid "High-quality sample rate converter:"
-msgstr "Høykvalitets dataratekonvertering:"
-
-#: prefs/QualityPrefs.cpp:142
-msgid "Real-time dither:"
-msgstr "Sanntidsdither:"
-
-#: prefs/QualityPrefs.cpp:145
-msgid "High-quality dither:"
-msgstr "Høykvalitetsdither:"
-
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
-msgstr "Konvertering"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+#, fuzzy
+msgid "Sample Rate Converter:"
msgstr "Dataratekonverterer"
#: prefs/QualityPrefs.cpp:164
msgid "Dither"
msgstr "Dither"
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
-msgstr "Sanntid:"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
-msgstr "Høykvalitet:"
+#: prefs/AudioIOPrefs.cpp:149
+msgid "Overdub: &Play other tracks while recording new one"
+msgstr "Overdub: S&pill andre spor samtidig med opptak av et nytt ett"
+
+#: prefs/AudioIOPrefs.cpp:150
+msgid "&Hardware Playthrough: Play new track while recording it"
+msgstr "Spill gjennom med &maskinvare: Spill av nytt spor under innspilling"
+
+#: prefs/AudioIOPrefs.cpp:157
+msgid "&Software Playthrough: Play new track while recording or monitoring"
+msgstr "Spill gjennom med &programvare: Spill av nytt spor under innspilling eller overvåking"
+
+#: prefs/AudioIOPrefs.cpp:160
+msgid "(uncheck when recording \"stereo mix\")"
+msgstr "(ikke huk av ved opptak av «stereomiks»)"
+
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
+msgstr ""
-#: prefs/SmartRecordPrefs.cpp:54 prefs/SmartRecordPrefs.cpp:55
-msgid "Smart Recording"
-msgstr "Smartopptak"
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
+msgstr ""
#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
msgid "Sound Activated Recording"
-msgstr ""
+msgstr "Lydaktivert opptak"
#: prefs/SmartRecordPrefs.cpp:71
msgid "Sound Activation Level (dB):"
-msgstr ""
+msgstr "Lydaktiveringsnivå (dB):"
#: prefs/SpectrumPrefs.cpp:41 prefs/SpectrumPrefs.cpp:42
msgid "Spectrograms"
msgstr "Spektrogram"
-#: prefs/SpectrumPrefs.cpp:91
-msgid "FFT Size"
-msgstr "FFT-størrelse"
-
#: prefs/SpectrumPrefs.cpp:94
msgid "8 - most wideband"
msgstr "8 - mest båndbredde"
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:99
msgid "256 - default"
msgstr "256 - standard"
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:107
msgid "32768 - most narrowband"
msgstr "32768 - minst båndbredde"
@@ -8003,8 +8286,17 @@ msgstr "32768 - minst b
msgid "4096 - most narrowband"
msgstr "4096 - minst båndbredde"
-#: prefs/SpectrumPrefs.cpp:116
-msgid "Window type:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:93
+#, fuzzy
+msgid "Window type"
msgstr "Vindustype"
#: prefs/SpectrumPrefs.cpp:125
@@ -8012,13 +8304,9 @@ msgstr "Vindustype"
msgid "FFT Skip Points"
msgstr "FFT Skip-punkt"
-#: prefs/SpectrumPrefs.cpp:140
-msgid "Display"
-msgstr "Visning"
-
-#: prefs/SpectrumPrefs.cpp:144
-msgid "&Grayscale"
-msgstr "&Gråskala"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
+msgstr ""
#: prefs/SpectrumPrefs.cpp:147
msgid "Minimum Frequency (Hz):"
@@ -8028,17 +8316,17 @@ msgstr "Minimumsfrekvens (Hz):"
msgid "Maximum Frequency (Hz):"
msgstr "Maksimal frekvens (Hz):"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
-msgstr "&Y-gitter"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
+msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
-msgstr "&Finn noter"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
+msgstr ""
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
-msgstr "&Kvantiser noter"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
+msgstr ""
#: prefs/SpectrumPrefs.cpp:165
msgid "Minimum Amplitude (dB):"
@@ -8048,6 +8336,14 @@ msgstr "Minimumsamplitude (dB):"
msgid "Max. Number of Notes (1..128):"
msgstr "Maksimalt antall noter (1..128):"
+#: prefs/SpectrumPrefs.cpp:161
+msgid "&Find Notes"
+msgstr "&Finn noter"
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Quantize Notes"
+msgstr "&Kvantiser noter"
+
#: prefs/SpectrumPrefs.cpp:197
msgid "The maximum frequency must be an integer"
msgstr "Maksimalfrekvensen må være et heltall"
@@ -8064,18 +8360,70 @@ msgstr "Minimumsfrekvensen m
msgid "Minimum frequency must be at least 0 Hz"
msgstr "Minimumsfrekvensen må være minst 0 Hz"
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr "Minimumsamplituden (dB) må være et heltall"
-#: prefs/SpectrumPrefs.cpp:226 prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
-msgstr "Maksimumsantallet noter må være et heltall mellom 1 og 128"
+#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:230
+msgid "The maximum number of notes must be in the range 1..128"
+msgstr ""
#: prefs/ThemePrefs.cpp:62 prefs/ThemePrefs.cpp:63
msgid "Theme"
msgstr "Tema"
+#: prefs/ThemePrefs.cpp:126
+msgid "Info"
+msgstr "Info"
+
+#: prefs/ThemePrefs.cpp:91
+#, fuzzy
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr "Tema er en eksperimentell funksjon.\n"
+"\n"
+"For å prøve det, klikk \"Lagre tema-\n"
+"mellomlager\", finn så fram og modifiser\n"
+"bildene og fargene i ImageCacheVxx.png\n"
+"vha. et bilderedigeringsprogram, som Gimp.\n"
+"\n"
+"Klikk \"Åpne tema-mellomlager\" for å laste\n"
+"inn de endrede bildene og fargene i Audacity.\n"
+"\n"
+"[Bare kontrollverktøylinjen og fargene på\n"
+"lydbølgesporet blir påvirket foreløpig, selv om\n"
+"bildefilen viser andre ikon også.]"
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#. i18n-hint: && in here is an escape character to get a single & on screen,
#. * so keep it as is
#: prefs/ThemePrefs.cpp:93
@@ -8106,96 +8454,96 @@ msgstr "Lagre filer"
msgid "Load Files"
msgstr "Åpne filer"
-#: prefs/ThemePrefs.cpp:126
-msgid "Info"
-msgstr "Info"
+#: prefs/GUIPrefs.cpp:50
+msgid "Simple"
+msgstr "Enkel"
-#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
-msgstr "Tema er en eksperimentell funksjon.\n"
-"\n"
-"For å prøve det, klikk \"Lagre tema-\n"
-"mellomlager\", finn så fram og modifiser\n"
-"bildene og fargene i ImageCacheVxx.png\n"
-"vha. et bilderedigeringsprogram, som Gimp.\n"
-"\n"
-"Klikk \"Åpne tema-mellomlager\" for å laste\n"
-"inn de endrede bildene og fargene i Audacity.\n"
-"\n"
-"[Bare kontrollverktøylinjen og fargene på\n"
-"lydbølgesporet blir påvirket foreløpig, selv om\n"
-"bildefilen viser andre ikon også.]\n"
-
-#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
-msgstr "Du har kompilert Audacity med en ekstra knapp, \n"
-"'Output Sourcery'. Dette vil lagre en C-versjon av\n"
-"bildemellomlageret som kan kompileres inn som standard.\n"
-
-#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
-msgstr "Hvis 'Åpne tema-mellomlager ved oppstart' er huket av, så \n"
-"vil tema-mellomlageret lastes inn når programmet starter\n"
-"\n"
+#: prefs/GUIPrefs.cpp:94
+msgid "&Update display while playing"
+msgstr "&Oppdater grensesnitt under avspilling"
-#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
-msgstr "Lagring og åpning av individuelle temafiler bruker\n"
-"en adskilt fil for hvert bilde, men er ellers likt.\n"
-"\n"
+# bedre formulering?
+#: prefs/GUIPrefs.cpp:102
+msgid "Automatically &fit tracks vertically zoomed"
+msgstr "Vertikalt &zoom og tilpass spor automatisk"
-#: toolbars/ControlToolBar.cpp:174
-msgid "Pause"
-msgstr "Pause"
+#: prefs/TracksPrefs.cpp:88
+#, fuzzy
+msgid "Default View Mode:"
+msgstr "Standard visningsmodus"
-#: toolbars/ControlToolBar.cpp:177
-msgid "Play"
-msgstr "Spill av"
+#: prefs/GUIPrefs.cpp:108
+msgid "&Select all audio in project, if none selected"
+msgstr "&Marker all lyd i prosjektet, hvis ingenting er markert"
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
+#: prefs/GUIPrefs.cpp:116
+msgid "Enable cut &lines"
+msgstr "Vis utklippslinjer"
+
+#: prefs/GUIPrefs.cpp:98
+msgid "Enable &dragging of left and right selection edges"
+msgstr "&Venstre og høyre markeringskanter kan dras"
+
+#: prefs/GUIPrefs.cpp:104
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+msgstr "«&Flytt sporfokus» veksler gjennom spor gjentatte ganger"
+
+#: prefs/GUIPrefs.cpp:106
+msgid "Editing a &clip can move other clips"
+msgstr "Redigering av &klipp kan flytte andre klipp"
+
+#: prefs/GUIPrefs.cpp:170
+msgid "Solo Button:"
+msgstr "Solo-knapp:"
+
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
msgstr ""
-#: toolbars/ControlToolBar.cpp:182
-msgid "Stop"
-msgstr "Stopp"
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:185
-msgid "Skip to Start"
-msgstr "Gå til begynnelse"
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:188
-msgid "Skip to End"
-msgstr "Gå til slutt"
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:192
-msgid "Record (Shift for Append Record)"
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
msgstr ""
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr ""
+
+#: Menus.cpp:786
+msgid "Pause"
+msgstr "Pause"
+
+#: Menus.cpp:785
+msgid "Stop"
+msgstr "Stopp"
+
#: toolbars/ControlToolBar.cpp:194
msgid "Clean Speech"
msgstr "Clean Speech"
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play (Shift for Loop Play)"
+msgstr "Spill av (skift for å spille i løkke)"
+
+#: toolbars/ControlToolBar.cpp:192
+msgid "Record (Shift for Append Record)"
+msgstr "Ta opp (skift for å føye til opptaket på slutten)"
+
#: toolbars/ControlToolBar.cpp:530 toolbars/ControlToolBar.cpp:844
msgid "Error while opening sound device. "
msgstr "Feil ved åpning av lydenhet."
@@ -8226,7 +8574,7 @@ msgstr "Stillhetsmarkering"
#: toolbars/EditToolBar.cpp:150
msgid "Link Tracks"
-msgstr ""
+msgstr "Forbind spor"
#: toolbars/EditToolBar.cpp:150
msgid "Zoom In"
@@ -8236,29 +8584,21 @@ msgstr "Zoom Inn"
msgid "Zoom Out"
msgstr "Zoom ut"
-#: toolbars/EditToolBar.cpp:156
-msgid "Zoom Toggle"
-msgstr "Zoom av/på"
-
-#: toolbars/EditToolBar.cpp:160
-msgid "Fit Selection"
-msgstr "Tilpass markering"
-
#: toolbars/EditToolBar.cpp:160
msgid "Fit selection in window"
msgstr "Tilpass markering til vindu"
#: toolbars/EditToolBar.cpp:162
-msgid "Fit Project"
-msgstr "Tilpass prosjekt"
-
-#: toolbars/EditToolBar.cpp:162
msgid "Fit project in window"
msgstr "Tilpass prosjekt til vindu"
-#: toolbars/MeterToolBar.cpp:50
-msgid "Meter"
-msgstr "Lydnivå"
+#: toolbars/EditToolBar.cpp:160
+msgid "Fit Selection"
+msgstr "Tilpass markering"
+
+#: toolbars/EditToolBar.cpp:162
+msgid "Fit Project"
+msgstr "Tilpass prosjekt"
#: toolbars/MeterToolBar.cpp:80
msgid "Play Meter"
@@ -8306,6 +8646,14 @@ msgstr "Glidebryter-input"
msgid "Input Source"
msgstr "Input-kilde"
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:80
msgid "Selection"
msgstr "Markering"
@@ -8383,30 +8731,6 @@ msgstr "Venstre=Zoom inn, H
msgid "Click and drag to move a track in time"
msgstr "Klikk og dra for å flytte et spor i tid"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr "Verktøy"
-
-#: toolbars/ToolsToolBar.cpp:147 toolbars/ToolsToolBar.cpp:182
-msgid "Selection Tool"
-msgstr "Markeringsverktøy"
-
-#: toolbars/ToolsToolBar.cpp:148
-msgid "Envelope Tool"
-msgstr "Omhyllingskurveverktøy"
-
-#: toolbars/ToolsToolBar.cpp:149 toolbars/ToolsToolBar.cpp:183
-msgid "Time Shift Tool"
-msgstr "Tidsforskyvningsverktøy"
-
-#: toolbars/ToolsToolBar.cpp:150 toolbars/ToolsToolBar.cpp:185
-msgid "Zoom Tool"
-msgstr "Zoomverktøy"
-
-#: toolbars/ToolsToolBar.cpp:151 toolbars/ToolsToolBar.cpp:184
-msgid "Draw Tool"
-msgstr "Tegneverktøy"
-
#: toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
msgstr "Multiverktøysmodus"
@@ -8415,22 +8739,10 @@ msgstr "Multiverkt
msgid "Slide Tool"
msgstr "Glidebryter"
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr "Multiverktøy"
-
-#: toolbars/TranscriptionToolBar.cpp:84
-msgid "Transcription"
-msgstr "Transkribering"
-
#: toolbars/TranscriptionToolBar.cpp:171
msgid "Play at selected speed"
msgstr "Spill av med valgt hastighet"
-#: toolbars/TranscriptionToolBar.cpp:172
-msgid "Play-at-speed"
-msgstr "Spill med gitt hastighet"
-
#: toolbars/TranscriptionToolBar.cpp:178 toolbars/TranscriptionToolBar.cpp:183
msgid "Playback Speed"
msgstr "Avspillingshastighet"
@@ -8439,74 +8751,38 @@ msgstr "Avspillingshastighet"
msgid "Adjust left selection to next onset"
msgstr "Juster venstremarkering til neste start"
-#: toolbars/TranscriptionToolBar.cpp:197
-msgid "Left-to-On"
-msgstr "Venstre-til-start"
-
#: toolbars/TranscriptionToolBar.cpp:199
msgid "Adjust right selection to previous offset"
msgstr "Juster høyremarkering til forrige slutt"
-#: toolbars/TranscriptionToolBar.cpp:200
-msgid "Right-to-Off"
-msgstr "Høyre-til-slutt"
-
#: toolbars/TranscriptionToolBar.cpp:202
msgid "Adjust left selection to next offset"
msgstr "Juster venstremarkering til neste slutt"
-#: toolbars/TranscriptionToolBar.cpp:203
-msgid "Left-to-Off"
-msgstr "Venstre-til-slutt"
-
#: toolbars/TranscriptionToolBar.cpp:205
msgid "Adjust right selection to previous onset"
msgstr "Juster høyremarkering til forrige start"
-#: toolbars/TranscriptionToolBar.cpp:206
-msgid "Right-to-On"
-msgstr "Høyre-til-start"
-
#: toolbars/TranscriptionToolBar.cpp:208
msgid "Select region of sound around cursor"
msgstr "Velg en region med lyd rundt markøren"
-#: toolbars/TranscriptionToolBar.cpp:209
-msgid "Select-Sound"
-msgstr "Velg lyd"
-
#: toolbars/TranscriptionToolBar.cpp:211
msgid "Select region of silence around cursor"
msgstr "Velg en region med stillhet rundt markøren"
-#: toolbars/TranscriptionToolBar.cpp:212
-msgid "Select-Silence"
-msgstr "Velg stillhet"
-
#: toolbars/TranscriptionToolBar.cpp:214
msgid "Automatically make labels from words"
msgstr "Lag kommentarer automatisk fra ord"
-#: toolbars/TranscriptionToolBar.cpp:215
-msgid "Make Labels"
-msgstr "Lag kommentarer"
-
#: toolbars/TranscriptionToolBar.cpp:217
msgid "Add label at selection"
msgstr "Legg til kommentar ved markering"
-#: toolbars/TranscriptionToolBar.cpp:218
-msgid "Add Label"
-msgstr "Legg til kommentar"
-
#: toolbars/TranscriptionToolBar.cpp:220
msgid "Calibrate voicekey"
msgstr "Kalibrer stemmenøkkel"
-#: toolbars/TranscriptionToolBar.cpp:221
-msgid "Calibrate"
-msgstr "Kalibrer"
-
#: toolbars/TranscriptionToolBar.cpp:225
msgid "Adjust Sensitivity"
msgstr "Juster ømfintlighet"
@@ -8539,6 +8815,46 @@ msgstr "Retningsendringer (h
msgid "Key type"
msgstr "Nøkkeltype"
+#: toolbars/TranscriptionToolBar.cpp:172
+msgid "Play-at-speed"
+msgstr "Spill med gitt hastighet"
+
+#: toolbars/TranscriptionToolBar.cpp:197
+msgid "Left-to-On"
+msgstr "Venstre-til-start"
+
+#: toolbars/TranscriptionToolBar.cpp:200
+msgid "Right-to-Off"
+msgstr "Høyre-til-slutt"
+
+#: toolbars/TranscriptionToolBar.cpp:203
+msgid "Left-to-Off"
+msgstr "Venstre-til-slutt"
+
+#: toolbars/TranscriptionToolBar.cpp:206
+msgid "Right-to-On"
+msgstr "Høyre-til-start"
+
+#: toolbars/TranscriptionToolBar.cpp:209
+msgid "Select-Sound"
+msgstr "Velg lyd"
+
+#: toolbars/TranscriptionToolBar.cpp:212
+msgid "Select-Silence"
+msgstr "Velg stillhet"
+
+#: toolbars/TranscriptionToolBar.cpp:215
+msgid "Make Labels"
+msgstr "Lag kommentarer"
+
+#: toolbars/TranscriptionToolBar.cpp:218
+msgid "Add Label"
+msgstr "Legg til kommentar"
+
+#: toolbars/TranscriptionToolBar.cpp:221
+msgid "Calibrate"
+msgstr "Kalibrer"
+
#: widgets/AButton.cpp:302
msgid " (disabled)"
msgstr " (deaktivert)"
@@ -8651,7 +8967,7 @@ msgstr "Innstillinger..."
#: widgets/Meter.cpp:876
msgid "Mix Volume"
-msgstr ""
+msgstr "Miksvolum"
#: widgets/Meter.cpp:1078
msgid "This determines how often the meter is refreshed.\n"
@@ -8677,7 +8993,7 @@ msgstr " Vennligst velg en handling "
#: widgets/MultiDialog.cpp:86
msgid "Please select an action"
-msgstr ""
+msgstr "Vennligst velg en handling"
#: widgets/ProgressDialog.cpp:97
msgid "Elapsed Time:"
@@ -8689,7 +9005,7 @@ msgstr ""
#: widgets/ProgressDialog.cpp:134
msgid "Cancel"
-msgstr ""
+msgstr "Avbryt"
#: widgets/Ruler.cpp:1478 widgets/Ruler.cpp:1479
msgid "Vertical Ruler"
@@ -8935,3 +9251,15 @@ msgstr ""
msgid "Could not load file: \"%s\""
msgstr "Klarte ikke å laste fil: \"%s\""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
+
diff --git a/locale/nl.po b/locale/nl.po
index 73b164c..8a920bc 100644
--- a/locale/nl.po
+++ b/locale/nl.po
@@ -17,38 +17,37 @@
# TODO:
# specify xx options - xx opties kiezen/specificeren
msgid ""
-msgstr "Project-Id-Version: Audacity 1.3\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2005-10-31 15:03+0100\n"
-"PO-Revision-Date: 2008-05-04 08:28+0200\n"
-"Last-Translator: Tino Meinen <a.t.meinen at chello.nl>\n"
+msgstr ""
+"Project-Id-Version: Audacity 1.3\n"
+"Report-Msgid-Bugs-To: audacity-translation at lists.sourceforge.net\n"
+"POT-Creation-Date: 2009-06-30 22:14+0100\n"
+"PO-Revision-Date: 2009-07-01 12:28+0100\n"
+"Last-Translator: Thomas De Rocker <thomasderocker at yahoo.com>\n"
"Language-Team: Dutch <vertaling at vrijschrift.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Poedit-Language: Dutch\n"
-#: ../src/Menus.cpp:526
-msgid "&About Audacity..."
-msgstr "&Over Audacityâ¦"
+#: AboutDialog.cpp:143
+msgid "About Audacity..."
+msgstr "Over Audacityâ¦"
-#. i18n-hint: Rather than a literal translation, consider adding the
-#. appropriate suffix or prefix to create a word meaning 'something which
-#. has Audacity'
-#: AboutDialog.cpp:340 AboutDialog.cpp:371 SplashDialog.cpp:111
+#: AboutDialog.cpp:157
msgid "OK... Audacious!"
msgstr "OK⦠Audacieus!"
#: AboutDialog.cpp:175
msgid "Audacity is a free program written by a team of volunteer <a href=\"http://audacity.sourceforge.net/community/developers\">developers</a> around the world. We are grateful to <a href=\"http://sourceforge.net\">SourceForge.net</a> for our project hosting. Audacity is available for Windows 98 and later, Mac OS X, Linux and other Unix-like operating systems. Older versions of Audacity are available for Mac OS 9."
-msgstr ""
+msgstr "Audacity is een vrij programma, geschreven door een team van vrijwillige <a href=\"http://audacity.sourceforge.net/community/developers\">ontwikkelaars</a> van over heel de wereld. We zijn <a href=\"http://sourceforge.net\">SourceForge.net</a> dankbaar voor het hosten van ons project. Audacity is beschikbaar voor Windows 98 en hoger, MacOS X, Linux, en andere Unix-achtige systemen. Voor Mac OS 9 zijn oudere versies van Audacity beschikbaar."
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
-msgstr ""
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgstr "Dit is een beta-versie van het programma. Het kan fouten en onafgewerkte functies bevatten. We zijn afhankelijk van uw feedback: zend a.u.b. bugrapporten en functie-aanvragen naar ons <a href=\"mailto:feedback at audacityteam.org\">feedback</a>-adres. Voor hulp bij het gebruik van Audacity kan u ons <a href=\"http://audacityteam.org/forum/\">Forum</a> bezoeken."
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
-msgstr ""
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgstr "Dit is een stabiele en voltooide versie van Audacity. Mocht u onverhoops toch een fout ontdekken, of u heeft een suggestie, dan kan u mailen naar ons <a href=\"mailto:feedback at audacityteam.org\">feedback</a>-adres. Voor hulp bij het gebruik van Audacity kan u ons <a href=\"http://audacityteam.org/forum/\">Forum</a> bezoeken."
#. i18n-hint: The translation of "translator_credits" will appear
#. in the credits in the About Audacity window. Use this to add
@@ -56,115 +55,127 @@ msgstr ""
#.
#. For example: "English translation by Dominic Mazzoni."
#.
-#: ../src/AboutDialog.cpp:127 ../src/AboutDialog.cpp:129
+#: AboutDialog.cpp:192
+#: AboutDialog.cpp:194
msgid "translator_credits"
-msgstr "Nederlandse vertaling door Tino Meinen <a.t.meinen at chello.nl>"
+msgstr "Nederlandse vertaling door Tino Meinen <a.t.meinen at chello.nl>, Thomas De Rocker <thomasderocker at yahoo.com>, Leo Clijsen <Clijsen.Leo at orange.fr>"
#: AboutDialog.cpp:207
msgid "A Free Digital Audio Editor<br>"
-msgstr ""
+msgstr "Een vrije editor voor digitale audio"
-#: ../src/AboutDialog.cpp:154
+#: AboutDialog.cpp:211
msgid "Credits"
msgstr "Met dank aan"
# team van ontwikkelaars/ontwikkelaarsteam/ontwikkelaars
-#: AboutDialog.cpp:256
+#: AboutDialog.cpp:215
#, c-format
msgid "Audacity %s Development Team"
msgstr "Audacity %s Ontwikkelaars"
-#: AboutDialog.cpp:261
+#: AboutDialog.cpp:220
#, c-format
msgid "Audacity %s Support Team"
msgstr "Audacity %s Ondersteuningsteam"
-#: AboutDialog.cpp:266
+#: AboutDialog.cpp:225
msgid "Emeritus Developers"
msgstr "Ontwikkelaars in ruste"
-#: AboutDialog.cpp:271
+#: AboutDialog.cpp:230
msgid "Other Emeritus Team Members"
msgstr "Overige teamleden in ruste"
-#: AboutDialog.cpp:276
+#: AboutDialog.cpp:235
msgid "Other Contributors"
msgstr "Overige bijdragen"
-#: AboutDialog.cpp:281
+#: AboutDialog.cpp:240
msgid "Audacity is based on code from the following projects:"
msgstr "Audacity maakt gebruik van computercode van de volgende projecten:"
# met name dank aan/speciale dank/bijzondere dank
-#: ../src/AboutDialog.cpp:237
+#: AboutDialog.cpp:245
msgid "Special thanks:"
msgstr "Bijzondere dank aan:"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
-msgstr ""
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgstr "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>De naam <b>Audacity®</b> is een geregistreerd handelsmerk van Dominic Mazzoni."
-#: AboutDialog.cpp:314
+#: AboutDialog.cpp:258
msgid "Audacity"
msgstr "Audacity"
# dit is een tabbladtitel
# het is geen info of het bouwen, maar over het programma
#. i18n-hint: Information about when audacity was compiled
-#: AboutDialog.cpp:299 AboutDialog.cpp:312 AboutDialog.cpp:468
+#: AboutDialog.cpp:304
+#: AboutDialog.cpp:317
+#: AboutDialog.cpp:468
msgid "Build Information"
msgstr "Programma-informatie"
# geactiveerd/ingeschakeld/aan
-#: ../src/effects/AvcCompressor.cpp:652
+#: AboutDialog.cpp:310
+#: effects/AvcCompressor.cpp:674
msgid "Enabled"
msgstr "Ingeschakeld"
# gedeactiveerd/uitgeschakeld/uit
-#: AboutDialog.cpp:148
+#: AboutDialog.cpp:311
msgid "Disabled"
msgstr "Uitgeschakeld"
-#: AboutDialog.cpp:316
+#: AboutDialog.cpp:321
msgid "File Format Support"
msgstr "Bestandsindelingen"
#. i18n-hint: This is what the library (libmad) does - imports MP3 files
-#: AboutDialog.cpp:326 AboutDialog.cpp:328
+#: AboutDialog.cpp:331
+#: AboutDialog.cpp:333
msgid "MP3 Importing"
-msgstr "Mp3-import"
+msgstr "MP3-import"
-#: AboutDialog.cpp:335 AboutDialog.cpp:338
+#: AboutDialog.cpp:340
+#: AboutDialog.cpp:343
msgid "Ogg Vorbis Import and Export"
msgstr "Ogg Vorbis-import en export"
-#: AboutDialog.cpp:342 AboutDialog.cpp:345
+#: AboutDialog.cpp:347
+#: AboutDialog.cpp:350
msgid "ID3 tag support"
msgstr "Id3-tag ondersteuning"
-#: AboutDialog.cpp:352 AboutDialog.cpp:355
+#: AboutDialog.cpp:357
+#: AboutDialog.cpp:360
msgid "FLAC import and export"
msgstr "FLAC-import en export"
-#: AboutDialog.cpp:360 AboutDialog.cpp:363
+#: AboutDialog.cpp:365
+#: AboutDialog.cpp:368
msgid "MP2 export"
msgstr "MP2-export"
-#: AboutDialog.cpp:368 AboutDialog.cpp:371
+#: AboutDialog.cpp:373
+#: AboutDialog.cpp:376
msgid "Import via QuickTime"
msgstr "Import via QuickTime"
#. i18n-hint: Libraries that are essential to audacity
-#: AboutDialog.cpp:378
+#: AboutDialog.cpp:383
msgid "Core Libraries"
msgstr "Basis-bibliotheken"
-#: AboutDialog.cpp:384 AboutDialog.cpp:387 AboutDialog.cpp:390
+#: AboutDialog.cpp:389
#: AboutDialog.cpp:392
+#: AboutDialog.cpp:395
+#: AboutDialog.cpp:397
msgid "Sample rate conversion"
msgstr "Samplefequentie omzetten"
-#: AboutDialog.cpp:397 AboutDialog.cpp:400
+#: AboutDialog.cpp:401
msgid "Audio playback and recording"
msgstr "Geluidsweergave en opname"
@@ -172,25 +183,33 @@ msgstr "Geluidsweergave en opname"
msgid "Features"
msgstr "Functies"
-#: AboutDialog.cpp:417 AboutDialog.cpp:420 AboutDialog.cpp:425
-#: AboutDialog.cpp:428 AboutDialog.cpp:433 AboutDialog.cpp:436
-#: AboutDialog.cpp:441 AboutDialog.cpp:444
+#: AboutDialog.cpp:417
+#: AboutDialog.cpp:420
+#: AboutDialog.cpp:425
+#: AboutDialog.cpp:428
+#: AboutDialog.cpp:433
+#: AboutDialog.cpp:436
+#: AboutDialog.cpp:441
+#: AboutDialog.cpp:444
msgid "Plug-in support"
msgstr "Plugins"
-#: AboutDialog.cpp:449 AboutDialog.cpp:452
+#: AboutDialog.cpp:449
+#: AboutDialog.cpp:452
msgid "Sound card mixer support"
msgstr "Geluidskaart mixer"
-#: AboutDialog.cpp:457 AboutDialog.cpp:460
+#: AboutDialog.cpp:457
+#: AboutDialog.cpp:460
msgid "Pitch and Tempo Change support"
msgstr "Toonhoogte- en tempowijzigingen"
-#: AboutDialog.cpp:204
+#: AboutDialog.cpp:472
msgid "Program build date: "
msgstr "Bouwdatum van het programma: "
-#: AboutDialog.cpp:475 AboutDialog.cpp:477
+#: AboutDialog.cpp:475
+#: AboutDialog.cpp:477
msgid "Build type:"
msgstr "Bouwtype:"
@@ -205,129 +224,162 @@ msgstr "Aangekondigde versie"
#. i18n-hint: The directory audacity is installed into (on *nix systems)
#: AboutDialog.cpp:482
msgid "Installation Prefix: "
-msgstr ""
+msgstr "Alvorens te installeren:"
-#: AboutDialog.cpp:209
+#: AboutDialog.cpp:486
msgid "Settings folder: "
msgstr "Instellingenmap: "
-#: AboutDialog.cpp:376
+#: AboutDialog.cpp:501
msgid "GPL License"
msgstr "GPL-licentie"
-#: ../src/AudacityApp.cpp:304 ../src/Project.cpp:1770
+#: AudacityApp.cpp:677
+#: Project.cpp:2031
#, c-format
msgid "%s is already open in another window."
msgstr "%s is reeds geopend in een ander venster."
-#: ../src/AudacityApp.cpp:306 ../src/Project.cpp:1772 ../src/Project.cpp:1843
-#: ../src/Project.cpp:1894 ../src/Project.cpp:1905 ../src/Project.cpp:1943
+#: AudacityApp.cpp:679
+#: Project.cpp:2033
+#: Project.cpp:2153
+#: Project.cpp:2301
+#: Project.cpp:2433
msgid "Error opening project"
msgstr "Fout bij openen project"
-#: ../src/AudacityApp.cpp:338
+#: AudacityApp.cpp:705
#, c-format
-msgid "%s does not exist and could not be opened.\n"
+msgid ""
+"%s does not exist and could not be opened.\n"
"\n"
"It has been removed from the history list."
-msgstr "%s bestaat niet en kon niet worden geopend.\n"
+msgstr ""
+"%s bestaat niet en kon niet worden geopend.\n"
"\n"
"Het is van de geschiedenislijst verwijderd."
-#: ../src/AudacityApp.cpp:367
+#: AudacityApp.cpp:812
msgid "Master Gain Control"
msgstr "Hoofdvolumebediening"
-#: ../src/AudacityApp.cpp:368
+#: AudacityApp.cpp:813
msgid "Input Meter"
msgstr "Ingangsmeter"
-#: ../src/AudacityApp.cpp:369
+#: AudacityApp.cpp:814
msgid "Output Meter"
msgstr "Uitgangsmeter"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
-#: AudacityApp.cpp:534 Menus.cpp:575
-msgid "&Preferences...\tCtrl+,"
-msgstr "&Voorkeurenâ¦\tCtrl+,"
+#: AudacityApp.cpp:973
+#: Menus.cpp:199
+msgid "&New"
+msgstr "&Nieuw"
+
+#: AudacityApp.cpp:974
+#: Menus.cpp:203
+msgid "&Open..."
+msgstr "&Openâ¦"
-#: ../src/AudacityApp.cpp:626 ../src/AudacityApp.cpp:696
+#: AudacityApp.cpp:975
+msgid "Open &Recent..."
+msgstr "Open &recent..."
+
+#: AudacityApp.cpp:976
+#: Menus.cpp:955
+msgid "&About Audacity..."
+msgstr "&Over Audacityâ¦"
+
+#: AudacityApp.cpp:977
+msgid "&Preferences..."
+msgstr "&Voorkeurenâ¦"
+
+#: AudacityApp.cpp:1068
+#: AudacityApp.cpp:1145
#, c-format
msgid "Using block size of %ld\n"
msgstr "Gebruik blokgrootte van %ld\n"
-#: ../src/AudacityApp.cpp:641 ../src/AudacityApp.cpp:711
+#: AudacityApp.cpp:1090
+#: AudacityApp.cpp:1160
#, c-format
msgid "Unknown command line option: %s\n"
msgstr "Onbekende opdrachtregel-optie: %s\n"
-#: ../src/AudacityApp.cpp:773
-msgid "Audacity could not find a place to store temporary files.\n"
+#: AudacityApp.cpp:1314
+msgid ""
+"Audacity could not find a place to store temporary files.\n"
"Please enter an appropriate directory in the preferences dialog."
-msgstr "Audacity kon geen plek vinden om tijdelijke bestanden op te slaan.\n"
+msgstr ""
+"Audacity kon geen plek vinden om tijdelijke bestanden op te slaan.\n"
"Selecteer hiervoor een geschikte map in het voorkeuren-dialoogvenster."
-#: AudacityApp.cpp:845
+#: AudacityApp.cpp:1320
msgid "Audacity is now going to exit. Please launch Audacity again to use the new temporary directory."
msgstr "Audacity zal nu worden afgesloten. Start Audacity opnieuw om de nieuwe tijdelijke map te gebruiken."
-#: AudacityApp.cpp:877
-msgid "Running two copies of Audacity simultaneously may cause\n"
+#: AudacityApp.cpp:1352
+msgid ""
+"Running two copies of Audacity simultaneously may cause\n"
"data loss or cause your system to crash.\n"
"\n"
-msgstr "Het gelijktijdig in werking hebben van twee versie van Audacity\n"
+msgstr ""
+"Het gelijktijdig in werking hebben van twee versie van Audacity\n"
"kan leiden tot gegevensverlies of het doen crashen van uw computer.\n"
"\n"
-#: AudacityApp.cpp:884
-msgid "Audacity was not able to lock the temporary files directory.\n"
+#: AudacityApp.cpp:1359
+msgid ""
+"Audacity was not able to lock the temporary files directory.\n"
"This folder may be in use by another copy of Audacity.\n"
-msgstr "Audacity kon de map met tijdelijke bestanden niet in bezit nemen.\n"
+msgstr ""
+"Audacity kon de map met tijdelijke bestanden niet in bezit nemen.\n"
"Deze map is mogelijk in gebruik bij een andere kopie van Audacity.\n"
-#: AudacityApp.cpp:886
+#: AudacityApp.cpp:1361
msgid "Do you still want to start Audacity?"
msgstr "Wilt u Audacity toch opstarten?"
-#: ../src/AudacityApp.cpp:829
+#: AudacityApp.cpp:1363
msgid "Error locking temporary folder"
msgstr "Fout bij vergrendelen van tijdelijke map"
-#: AudacityApp.cpp:900
+#: AudacityApp.cpp:1401
msgid "The system has detected that another copy of Audacity is running.\n"
msgstr "Er is ontdekt dat er al een kopie van Audacity is opgestart.\n"
-#: AudacityApp.cpp:902
-msgid "Use the New or Open commands in the currently running Audacity\n"
+#: AudacityApp.cpp:1403
+msgid ""
+"Use the New or Open commands in the currently running Audacity\n"
"process to open multiple projects simultaneously.\n"
-msgstr "Om aan meerdere projecten gelijktijdig te werken gebruikt u de\n"
+msgstr ""
+"Om aan meerdere projecten gelijktijdig te werken gebruikt u de\n"
"menuopdrachten âNieuwâ of âOpenenâ in het Audacity-programma\n"
"dat momenteel loopt.\n"
-#: ../src/AudacityApp.cpp:846
+#: AudacityApp.cpp:1404
msgid "Audacity is already running"
msgstr "Audacity is al opgestart"
-#: AudacityApp.cpp:1128
+#: AudacityApp.cpp:1421
msgid "Command-line options supported:"
msgstr "Mogelijke opties voor de opdrachtregel:"
#. i18n-hint: '-help' is the option and needs to stay in
#. * English. This displays a list of available options
-#: AudacityApp.cpp:1131
+#: AudacityApp.cpp:1424
msgid "\t-help (this message)"
msgstr "\t-help (deze hulptekst)"
#. i18n-hint '-version' needs to stay in English.
-#: AudacityApp.cpp:1133
+#: AudacityApp.cpp:1426
msgid "\t-version (display Audacity version)"
msgstr "\t-version (Toon de versie van Audacity)"
#. i18n-hint '-test' is the option and needs to stay in
#. * English. This runs a set of automatic tests on audacity
#. * itself
-#: AudacityApp.cpp:1137
+#: AudacityApp.cpp:1430
msgid "\t-test (run self diagnostics)"
msgstr "\t-test (diagnosetesten uitvoeren)"
@@ -335,83 +387,108 @@ msgstr "\t-test (diagnosetesten uitvoeren)"
#. * English. 'nnn' is any integer number. This controls the
#. * size pieces that audacity uses when writing files to the
#. * disk
-#: AudacityApp.cpp:1142
+#: AudacityApp.cpp:1435
msgid "\t-blocksize nnn (set max disk block size in bytes)"
msgstr "\t-blocksize nnn (max blokgrootte in bytes instellen)"
-#: AudacityApp.cpp:1143
+#: AudacityApp.cpp:1436
msgid "In addition, specify the name of an audio file or Audacity project to open it."
msgstr "Geef daarnaast de naam van een audiobestand of Audacity-project om te openen."
-#: ../src/AudacityApp.cpp:1099
-msgid "Audacity project (.AUP) files are not currently \n"
+#: AudacityApp.cpp:1747
+msgid ""
+"Audacity project (.AUP) files are not currently \n"
"associated with Audacity. \n"
"\n"
"Associate them, so they open on double-click?"
-msgstr "Audacity projectbestanden (.AUP) zijn momenteel\n"
+msgstr ""
+"Audacity projectbestanden (.AUP) zijn momenteel\n"
"niet geassocieerd met Audacity. \n"
"\n"
"Wilt u ze associëren zodat ze worden geopend bij dubbelklikken?"
-#: ../src/AudacityApp.cpp:1100
+#: AudacityApp.cpp:1748
msgid "Audacity Project Files"
msgstr "Audacity projectbestanden"
-#: AudioIO.cpp:214
+#: AudioIO.cpp:261
msgid "Could not find any audio devices.\n"
msgstr "Kon geen enkel audioapparaat ontdekken.\n"
-#: ../src/AudioIO.cpp:167
-msgid "You will not be able to play or record audio.\n"
+#: AudioIO.cpp:262
+msgid ""
+"You will not be able to play or record audio.\n"
"\n"
-msgstr "U zult geen audio kunnen opnemen of afspelen.\n"
+msgstr ""
+"U zult geen audio kunnen opnemen of afspelen.\n"
"\n"
-#: ../src/AudioIO.cpp:170
+#: AudioIO.cpp:265
+#: AudioIO.cpp:285
msgid "Error: "
msgstr "Fout: "
-#: ../src/AudioIO.cpp:173
+#: AudioIO.cpp:268
msgid "Error Initializing Audio"
msgstr "Fout bij het initialiseren van Audio"
-# tijdsvertraging/geluidsvertraging
-#: AudioIO.cpp:1236
-msgid "Latency problem"
-msgstr "Probleem met tijdsvertraging"
+#: AudioIO.cpp:281
+msgid "There was an error initializing the midi i/o layer.\n"
+msgstr "Er trad een fout op bij het initialiseren van de midi invoer/uitvoer-layer.\n"
+
+#: AudioIO.cpp:282
+msgid ""
+"You will not be able to play midi.\n"
+"\n"
+msgstr ""
+"U zult geen midi kunnen afspelen.\n"
+"\n"
-#: AudioIO.cpp:1236
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
+#: AudioIO.cpp:288
+msgid "Error Initializing Midi"
+msgstr "Fout bij initialiseren van midi"
+
+#: AudioIO.cpp:1300
+msgid ""
+"Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
"Audacity has brought it back to start at zero.\n"
"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
-msgstr "De instelling voor tijdsvertraging veroorzaakt dat de opgenomen audio verborgen is voor het tijdpunt nul.\n"
+msgstr ""
+"De instelling voor tijdsvertraging veroorzaakt dat de opgenomen audio verborgen is voor het tijdpunt nul.\n"
"Audacity heeft het teruggehaald zodat het bij nul begint.\n"
"Mogelijk moet u de Tijdverschuiving (<---> of F5) gebruiken om het spoor naar de juiste plaats te slepen."
-#: AutoRecovery.cpp:40
+# tijdsvertraging/geluidsvertraging
+#: AudioIO.cpp:1301
+msgid "Latency problem"
+msgstr "Probleem met tijdsvertraging"
+
+#: AutoRecovery.cpp:54
msgid "Automatic Crash Recovery"
msgstr "Automatisch herstel na crash"
-#: AutoRecovery.cpp:59
-msgid "Some projects were not saved properly the last time Audacity was run.\n"
+#: AutoRecovery.cpp:73
+msgid ""
+"Some projects were not saved properly the last time Audacity was run.\n"
"Fortunately, the following projects can automatically be recovered:"
-msgstr "Een aantal projecten zijn niet correct opgeslagen tijdens de laatste Audacity-sessie.\n"
+msgstr ""
+"Een aantal projecten zijn niet correct opgeslagen tijdens de laatste Audacity-sessie.\n"
"Gelukkig kunnen de volgende projecten automatisch worden hersteld:"
-#: AutoRecovery.cpp:61
+#: AutoRecovery.cpp:75
msgid "Recoverable projects"
msgstr "Herstelbare projecten"
-#: AutoRecovery.cpp:64
+#: AutoRecovery.cpp:78
msgid "Name"
msgstr "Naam"
# vrij vertaald
-#: AutoRecovery.cpp:70
+#: AutoRecovery.cpp:84
msgid "Recovering a project will not change any files on disk before you save it."
msgstr "Bij het herstellen van een project zullen de bestanden op de harde schijf pas worden gewijzigd wanneer u het project opslaat."
-#: AutoRecovery.cpp:74
+#: AutoRecovery.cpp:88
msgid "Quit Audacity"
msgstr "Audacity afsluiten"
@@ -424,146 +501,166 @@ msgid "Recover Projects"
msgstr "Projecten herstellen"
#: AutoRecovery.cpp:127
-msgid "Are you sure you don't want to recover any projects?\n"
+msgid ""
+"Are you sure you don't want to recover any projects?\n"
"They can't be recovered later."
-msgstr "Weet u zeker dat u geen projecten wilt herstellen?\n"
+msgstr ""
+"Weet u zeker dat u geen projecten wilt herstellen?\n"
"Ze kunnen niet later nog hersteld worden."
#: AutoRecovery.cpp:128
msgid "Confirm?"
msgstr "Bevestigen?"
-#: AutoRecovery.cpp:132 AutoRecovery.cpp:169
+#: AutoRecovery.cpp:146
+#: AutoRecovery.cpp:183
msgid "Could not enumerate files in auto save directory"
msgstr "Kon de bestanden in de autosave-map niet nummeren"
-#: ../src/ControlToolBar.cpp:723 ../src/ControlToolBar.cpp:884
-#: ../src/effects/Effect.cpp:331 ../src/prefs/DirectoriesPrefs.cpp:204
+#: AutoRecovery.cpp:147
+#: AutoRecovery.cpp:184
+#: Menus.cpp:3278
+#: Menus.cpp:3290
+#: Menus.cpp:5359
+#: Project.cpp:2260
+#: Project.cpp:3882
+#: Project.cpp:3968
+#: TrackPanel.cpp:6505
+#: WaveTrack.cpp:977
+#: WaveTrack.cpp:996
+#: WaveTrack.cpp:2022
+#: effects/Contrast.cpp:144
+#: effects/Contrast.cpp:154
+#: effects/Effect.cpp:546
+#: export/ExportFFmpeg.cpp:655
+#: export/ExportMP2.cpp:231
+#: prefs/DirectoriesPrefs.cpp:195
+#: prefs/KeyConfigPrefs.cpp:372
+#: toolbars/ControlToolBar.cpp:581
+#: toolbars/ControlToolBar.cpp:916
msgid "Error"
msgstr "Fout"
# venstertitel bij het bewerken van een opdracht uit Edit Chains.
-#: BatchCommandDialog.cpp:56 BatchCommandDialog.cpp:60
-#: BatchCommandDialog.cpp:61
+#: BatchCommandDialog.cpp:57
+#: BatchCommandDialog.cpp:62
+#: BatchCommandDialog.cpp:63
msgid "Select Command"
msgstr "Opdracht selecteren"
-#: BatchCommandDialog.cpp:80 BatchProcessDialog.cpp:451
-#: prefs/KeyConfigPrefs.cpp:140
+#: BatchCommandDialog.cpp:82
msgid "&Command"
msgstr "&Opdracht"
-#: BatchCommandDialog.cpp:82
+#: BatchCommandDialog.cpp:84
msgid "&Edit Parameters"
msgstr "Parameters be&werken"
-#: BatchCommandDialog.cpp:89 BatchProcessDialog.cpp:452
+#: BatchCommandDialog.cpp:91
msgid "&Parameters"
msgstr "&Parameters"
-#: BatchCommandDialog.cpp:93
+#: BatchCommandDialog.cpp:96
msgid "C&hoose command"
msgstr "Opdracht &selecteren"
-#: BatchCommands.cpp:477
+#: BatchCommands.cpp:455
msgid "Stereo to Mono Effect not found"
msgstr "Het effect âstereo naar monoâ is niet gevonden"
-#: BatchCommands.cpp:490
+#: BatchCommands.cpp:475
msgid "Ogg Vorbis support is not included in this build of Audacity"
msgstr "Er is in deze versie van Audacity geen ondersteuning voor Ogg Vorbis"
-#: BatchCommands.cpp:501
+#: BatchCommands.cpp:487
msgid "FLAC support is not included in this build of Audacity"
msgstr "Er is in deze versie van Audacity geen ondersteuning voor Flac"
-#: BatchCommands.cpp:505
+#: BatchCommands.cpp:491
#, c-format
msgid "Command %s not implemented yet"
msgstr "Opdracht %s is nog niet geïmplementeerd"
-#: BatchCommands.cpp:521
+#: BatchCommands.cpp:507
#, c-format
-msgid "Could not set parameters of effect %s\n"
+msgid ""
+"Could not set parameters of effect %s\n"
" to %s."
-msgstr "Kon de parameters van effect %s niet instellen\n"
+msgstr ""
+"Kon de parameters van effect %s niet instellen\n"
"op %s."
# fuzzy: vertaling kan beter
-#: BatchCommands.cpp:575
+#: BatchCommands.cpp:560
#, c-format
msgid "Your batch command of %s was not recognised."
msgstr "Uw opdrachtenreeks %s werd niet herkend."
-#: BatchCommands.cpp:666
+#: BatchCommands.cpp:651
#, c-format
-msgid "Apply %s with parameter(s)\n"
+msgid ""
+"Apply %s with parameter(s)\n"
"\n"
"%s"
-msgstr "%s toepassen met parameter(s)\n"
+msgstr ""
+"%s toepassen met parameter(s)\n"
"\n"
"%s"
-#: BatchCommands.cpp:667 BatchCommands.cpp:672
+#: BatchCommands.cpp:652
+#: BatchCommands.cpp:657
msgid "Test Mode"
msgstr "Testmodus"
-#: BatchCommands.cpp:671
+#: BatchCommands.cpp:656
#, c-format
msgid "Apply %s"
msgstr "%s toepassen"
# keten/ketting/opdrachtenreeks/batch/
-#: BatchProcessDialog.cpp:58 BatchProcessDialog.cpp:68
-#: BatchProcessDialog.cpp:69
+#: BatchProcessDialog.cpp:60
+#: BatchProcessDialog.cpp:70
+#: BatchProcessDialog.cpp:71
msgid "Apply Chain"
msgstr "Opdrachtenreeks toepassen"
#: BatchProcessDialog.cpp:67
msgid "CleanSpeech Batch Processing"
-msgstr ""
+msgstr "Instructies voor het gebruik van het batchprogramma"
-#: BatchProcessDialog.cpp:92
+#: BatchProcessDialog.cpp:94
msgid "&Select chain"
msgstr "Opdrachtenreeks &selecteren"
-#: BatchProcessDialog.cpp:97
+#: BatchProcessDialog.cpp:99
msgid "Chain"
msgstr "Opdrachtenreeks"
-#: BatchProcessDialog.cpp:104
+#: BatchProcessDialog.cpp:106
msgid "Apply to Current &Project"
msgstr "Opdrachtenreeks op huidige &project toepassen"
-#: BatchProcessDialog.cpp:105
+#: BatchProcessDialog.cpp:107
msgid "Apply to &Files..."
msgstr "Toepassen op &bestandenâ¦"
-#: BatchProcessDialog.cpp:106 BatchProcessDialog.cpp:245 LabelDialog.cpp:134
-#: LabelDialog.cpp:138 UploadDialog.cpp:178 effects/Amplify.cpp:209
-#: effects/AutoDuck.cpp:528 effects/AutoDuck.cpp:532
-#: effects/AvcCompressor.cpp:732 effects/ChangeLength.cpp:184
-#: effects/ChangePitch.cpp:395 effects/ChangeSpeed.cpp:393
-#: effects/ChangeTempo.cpp:297 effects/ClickRemoval.cpp:429
-#: effects/Compressor.cpp:516 effects/Effect.cpp:387 effects/Effect.cpp:393
-#: effects/Equalization.cpp:1166 effects/Leveller.cpp:266
-#: effects/Normalize.cpp:353 effects/Phaser.cpp:600 effects/Repeat.cpp:271
-#: effects/SpikeCleaner.cpp:188 effects/TruncSilence.cpp:278
-#: effects/VST/VSTEffect.cpp:95 effects/VST/VSTEffect.cpp:452
-#: effects/Wahwah.cpp:587 effects/audiounits/AudioUnitEffect.cpp:862
-#: effects/ladspa/LadspaEffect.cpp:589 effects/nyquist/Nyquist.cpp:823
-#: effects/nyquist/Nyquist.cpp:987 export/Export.cpp:788
-#: export/ExportMultiple.cpp:844 import/ImportRaw.cpp:443
-#: prefs/FileFormatPrefs.cpp:407 prefs/PrefsDialog.cpp:169
+#: BatchProcessDialog.cpp:108
+#: BatchProcessDialog.cpp:245
+#: UploadDialog.cpp:180
+#: effects/AvcCompressor.cpp:732
+#: effects/ChangeLength.cpp:183
+#: effects/SpikeCleaner.cpp:188
+#: effects/audiounits/AudioUnitEffect.cpp:861
msgid "&Cancel"
msgstr "&Annuleren"
-#: BatchProcessDialog.cpp:144 BatchProcessDialog.cpp:189
+#: BatchProcessDialog.cpp:146
+#: BatchProcessDialog.cpp:189
msgid "No chain selected"
msgstr "Geen opdrachtenreeks geselecteerd"
# statusmelding
-#: BatchProcessDialog.cpp:157
+#: BatchProcessDialog.cpp:159
#, c-format
msgid "Applying '%s' to current project"
msgstr "â%sâ wordt toegepast op het huidige project"
@@ -572,22 +669,23 @@ msgstr "â%sâ wordt toegepast op het huidige project"
msgid "Please save and close the current project first."
msgstr "Sla eerst het huidige project op en sluit het af."
-#: BatchProcessDialog.cpp:206
+# in meervoud gehouden
+#: BatchProcessDialog.cpp:204
msgid "Select vocal file(s) for batch CleanSpeech Chain..."
-msgstr ""
+msgstr "Selecteer stembestand(en) voor batch CleanSpeech Chainâ¦"
# in meervoud gehouden
#: BatchProcessDialog.cpp:205
msgid "Select file(s) for batch processing..."
msgstr "Selecteer de bestand die verwerkt moeten wordenâ¦"
-#: BatchProcessDialog.cpp:209
+#: BatchProcessDialog.cpp:207
msgid "Vocal files (*.wav;*.mp3)|*.wav;*.mp3|WAV files (*.wav)|*.wav|MP3 files (*.mp3)|*.mp3"
-msgstr ""
+msgstr "geluidsbestanden (*.wav;*.mp3)|*.wav;*.mp3|WAV files (*.wav)|*.wav|MP3 files (*.mp3)|*.mp3"
#: BatchProcessDialog.cpp:208
msgid "All files (*.*)|*.*|WAV files (*.wav)|*.wav|AIFF files (*.aif)|*.aif|AU files (*.au)|*.au|MP3 files (*.mp3)|*.mp3|Ogg Vorbis files (*.ogg)|*.ogg|FLAC files (*.flac)|*.flac"
-msgstr "Alle bestanden (*.*)|*.*|Wav-bestanden (*.wav)|*.wav|Aiff-bestanden (*.aif)|*.aif|Au-bestanden (*.au)|*.au|Mp3-bestanden (*.mp3)|*.mp3|Ogg Vorbis-bestanden (*.ogg)|*.ogg|Flac-bestanden (*.flac)|*.flac"
+msgstr "Alle bestanden (*.*)|*.*|Wav-bestanden (*.wav)|*.wav|Aiff-bestanden (*.aif)|*.aif|Au-bestanden (*.au)|*.au|MP3-bestanden (*.mp3)|*.mp3|Ogg Vorbis-bestanden (*.ogg)|*.ogg|Flac-bestanden (*.flac)|*.flac"
#: BatchProcessDialog.cpp:229
msgid "Applying..."
@@ -597,86 +695,101 @@ msgstr "Toepassenâ¦"
msgid "File"
msgstr "Bestand"
-#: BatchProcessDialog.cpp:354 BatchProcessDialog.cpp:358
-#: BatchProcessDialog.cpp:359
+#: BatchProcessDialog.cpp:352
+#: BatchProcessDialog.cpp:356
+#: BatchProcessDialog.cpp:357
msgid "Edit Chains"
msgstr "Opdrachtenreeksen bewerken"
-#: BatchProcessDialog.cpp:414
+#: BatchProcessDialog.cpp:412
msgid "&Chains"
msgstr "&Opdrachtenreeksen"
-#: BatchProcessDialog.cpp:433
+#: BatchProcessDialog.cpp:431
+#: Tags.cpp:825
msgid "&Add"
msgstr "&Toevoegen"
-#: BatchProcessDialog.cpp:434 LabelDialog.cpp:126 TrackPanel.cpp:3925
+#: BatchProcessDialog.cpp:432
+#: LabelDialog.cpp:128
+#: Tags.cpp:826
msgid "&Remove"
msgstr "&Verwijderen"
-#: BatchProcessDialog.cpp:435
+#: BatchProcessDialog.cpp:433
msgid "Re&name"
msgstr "&Hernoemen"
-#: BatchProcessDialog.cpp:441
+#: BatchProcessDialog.cpp:439
msgid "C&hain (Double-Click or press SPACE to edit)"
msgstr "O&pdrachtenreeks (dubbelklikken of SPATIE om te bewerken)"
-# afkorting voor number: Nr of Numero
+#. i18n-hint: This is the number of the command in the list
+#: BatchProcessDialog.cpp:449
+msgid "Num"
+msgstr "Num"
+
#: BatchProcessDialog.cpp:450
-msgid "No"
-msgstr "Nr"
+#: commands/CommandManager.cpp:108
+#: prefs/KeyConfigPrefs.cpp:180
+msgid "Command"
+msgstr "Opdracht"
-#: BatchProcessDialog.cpp:456
+#: BatchProcessDialog.cpp:451
+#: effects/Contrast.cpp:279
+msgid "Parameters"
+msgstr "Parameters"
+
+#: BatchProcessDialog.cpp:455
msgid "&Insert"
msgstr "I&nvoegen"
-#: BatchProcessDialog.cpp:457
+#: BatchProcessDialog.cpp:456
msgid "De&lete"
msgstr "&Verwijderen"
-#: BatchProcessDialog.cpp:458
+#: BatchProcessDialog.cpp:457
msgid "Move &Up"
msgstr "Naar &boven"
-#: BatchProcessDialog.cpp:459
+#: BatchProcessDialog.cpp:458
msgid "Move &Down"
msgstr "Naar B&eneden"
-#: BatchProcessDialog.cpp:460
+#: BatchProcessDialog.cpp:459
msgid "De&faults"
msgstr "&Standaarden"
# mag dit vertaald worden?
-#: BatchProcessDialog.cpp:504
+#: BatchProcessDialog.cpp:503
msgid "- END -"
msgstr "- EINDE -"
-#: BatchProcessDialog.cpp:531
+#: BatchProcessDialog.cpp:536
#, c-format
msgid "%s changed"
msgstr "%s is gewijzigd"
-#: BatchProcessDialog.cpp:532
+#: BatchProcessDialog.cpp:537
msgid "Do you want to save the changes?"
msgstr "Wilt u de wijzigingen opslaan?"
-#: BatchProcessDialog.cpp:614
+#: BatchProcessDialog.cpp:619
msgid "Enter name of new chain"
msgstr "Geef een naar voor de nieuwe opdrachtenreeks"
# u moet een naam opgeven/u heeft geen naam opgegeven.
# (het verschijnt als een foutmelding
-#: BatchProcessDialog.cpp:625
+#: BatchProcessDialog.cpp:630
msgid "Name must not be blank"
msgstr "U heeft geen naam opgegeven"
-#: BatchProcessDialog.cpp:634
+#: BatchProcessDialog.cpp:639
#, c-format
msgid "Names may not contain '%c' and '%c'"
msgstr "Een naam mag geen teken â%câ of â%câ bevatten"
-#: BatchProcessDialog.cpp:664
+#: BatchProcessDialog.cpp:669
#, c-format
msgid "Are you sure you want to delete %s?"
msgstr "Weet u zeker dat u %s wilt verwijderen?"
@@ -690,255 +803,286 @@ msgid "Copying audio data into project..."
msgstr "Audiogegevens worden naar het project gekopieerdâ¦"
# onafhankelijk/zelfomvattend/zelfstandig
-#: Dependencies.cpp:219
-msgid "Your project currently depends on the presence of other files.\n"
+#: Dependencies.cpp:226
+msgid ""
+"Your project currently depends on the presence of other files.\n"
"Copy audio from the following files into your project to make it self-contained?\n"
"This will need more disc space but is safer."
-msgstr "Uw project hangt momenteel af van het aanwezig zijn van andere bestanden.\n"
+msgstr ""
+"Uw project hangt momenteel af van het aanwezig zijn van andere bestanden.\n"
"Wilt u de audio van de volgende bestanden naar uw project kopiëren om het zelfstandig te maken?\n"
"Dit vereist meer schijfruimte maar is wel veiliger."
-#: Dependencies.cpp:266
+#: Dependencies.cpp:273
msgid "Project depends on other audio files"
msgstr "Het project hangt af van andere audiobestanden"
-#: Dependencies.cpp:287
+#: Dependencies.cpp:294
msgid "Project Dependencies"
msgstr "Projectafhankelijkheden"
-#: Dependencies.cpp:290
+#: Dependencies.cpp:297
msgid "Audio file"
msgstr "Audiobestand"
-#: Dependencies.cpp:292
+#: Dependencies.cpp:299
msgid "Disk space"
msgstr "Schijfruimte"
-#: Dependencies.cpp:297
+#: Dependencies.cpp:304
msgid "Copy Selected Audio Into Project"
msgstr "Geselecteerde audio naar het project kopiëren"
-#: Dependencies.cpp:304 Dependencies.cpp:413
+#: Dependencies.cpp:311
+#: Dependencies.cpp:417
msgid "Cancel Save"
msgstr "Opslaan annuleren"
-#: Dependencies.cpp:306
+#: Dependencies.cpp:313
msgid "Do Not Copy Any Audio"
msgstr "Geen audio kopiëren"
-#: Dependencies.cpp:308
+#: Dependencies.cpp:315
msgid "Copy All Audio into Project (Safer)"
msgstr "Alle audio naar het project kopiëren (veiliger)"
-#: Dependencies.cpp:320 Dependencies.cpp:325
+#: Dependencies.cpp:324
+#: Dependencies.cpp:329
msgid "Ask me"
msgstr "Vragen"
-#: Dependencies.cpp:321
+#: Dependencies.cpp:325
msgid "Always copy all audio (safest)"
msgstr "Altijd alle audio kopiëren (veiligst)"
-#: Dependencies.cpp:322
+#: Dependencies.cpp:326
msgid "Never copy any audio"
msgstr "Nooit audio kopiëren"
# afhankelijk is/afhangt
-#: Dependencies.cpp:324
+#: Dependencies.cpp:328
msgid "Whenever a project depends on other files:"
msgstr "Wanneer een project van andere bestanden afhangt:"
# worden opgeslagen/opgeslagen worden
-#: Dependencies.cpp:412
+#: Dependencies.cpp:416
msgid "If you proceed, your project will not be saved to disk. Is this what you want?"
msgstr "Wanneer u doorgaat zal uw project niet op de schijf worden opgeslagen. Is dat wat u wilt?"
# onafhankelijk/zelfstandig/zelfomschrijvend/zelfbeschrijvend/zelfomvattend
# er zijn geen externe audiobestanden benodigd-nodig
-#: Dependencies.cpp:452
+#: Dependencies.cpp:456
msgid "Your project is self-contained; it does not depend on any external audio files."
msgstr "Uw project is zelfstandig; het hangt niet af van externe audiobestanden."
-#: Dependencies.cpp:453
+#: Dependencies.cpp:457
msgid "Dependency check"
msgstr "Afhankelijkheidscontrole"
#: DirManager.cpp:136
-msgid "Warning: there is very little free disk space left on this volume.\n"
-"Please select another temporary directory in your preferences."
-msgstr "Waarschuwing: Er is erg weinig vrije ruimte over op deze partitie. Kies liever een andere tijdelijke map bij âVoorkeurenâ."
+msgid ""
+"There is very little free disk space left on this volume.\n"
+"Please select another temporary directory in Preferences."
+msgstr ""
+"Er is erg weinig vrije ruimte over op deze partitie.\n"
+"Gelieve een andere tijdelijke map bij âVoorkeurenâ te kiezen."
-#: ../src/DirManager.cpp:157
+#: DirManager.cpp:221
+#: DirManager.cpp:252
+#: DirManager.cpp:335
msgid "Progress"
msgstr "Voortgang"
-#: DirManager.cpp:285
+#: DirManager.cpp:286
msgid "Cleaning up temporary files"
msgstr "Opruimen van tijdelijek bestanden"
-#: DirManager.cpp:333
+#: DirManager.cpp:336
msgid "Saving project data files"
msgstr "Opslaan van projectdatabestanden"
# tijdelije opslagmappen/cache
-#: DirManager.cpp:406
+#: DirManager.cpp:408
msgid "Cleaning up cache directories"
msgstr "Opruimen van cachemappen"
# verdwaald/los/vrij/vondeling/zwevend/ongebonden/losgelaten/weesbestand
-#: DirManager.cpp:493
+#: DirManager.cpp:503
#, c-format
-msgid "Audacity found an orphaned blockfile %s! \n"
+msgid ""
+"Audacity found an orphaned blockfile %s! \n"
"Please consider saving and reloading the project to perform a complete project check.\n"
-msgstr "Audacity heeft een verdwaald blokbestand gevonden %s! \n"
+msgstr ""
+"Audacity heeft een verdwaald blokbestand gevonden %s! \n"
"U kunt overwegen om het project op te slaan en opnieuw te laden zodat het project volledig wordt nagekeken.\n"
#. i18n-hint: This is the pattern for filenames that are created
#. when a file needs to be backed up to a different name. For
#. example, mysong would become mysong-old1, mysong-old2, etc.
-#: ../src/DirManager.cpp:627
+#: DirManager.cpp:1092
#, c-format
msgid "%s-old%d"
msgstr "%s-oud%d"
-#: DirManager.cpp:993
+#: DirManager.cpp:1100
msgid "Unable to open/create test file"
msgstr "Kon geen testbestand openen of aanmaken"
-#: DirManager.cpp:1002
+#: DirManager.cpp:1109
#, c-format
msgid "Unable to remove '%s'"
msgstr "Kon â%sâ niet verwijderen"
-#: ../src/DirManager.cpp:643
+#: DirManager.cpp:1114
#, c-format
msgid "Renamed file: %s\n"
msgstr "Bestand hernoemd: %s\n"
-#: DirManager.cpp:1051
+#: DirManager.cpp:1164
#, c-format
msgid "Unable to rename '%s' to '%s'"
msgstr "Kon â%sâ niet naar â%sâ hernoemen"
-#: DirManager.cpp:1183
+#: DirManager.cpp:1181
#, c-format
msgid "Changed block %s to new alias name\n"
-msgstr ""
+msgstr "Gewijzigd blok %s naar nieuw pseudoniem\n"
# vrij vertaald
-#: DirManager.cpp:1115 DirManager.cpp:1403
+#: DirManager.cpp:1247
+#: DirManager.cpp:1538
msgid "Inspecting project file data..."
msgstr "Projectbestanden worden geïnspecteerdâ¦"
-#: DirManager.cpp:1128
+#: DirManager.cpp:1263
#, c-format
msgid "Orphaned blockfile: (%s)"
msgstr "Verdwaald blokbestand: (%s)"
-#: DirManager.cpp:1153
+#: DirManager.cpp:1288
#, c-format
msgid "Missing alias file: (%s)"
msgstr "Ontbrekend alias-bestand: (%s)"
-#: DirManager.cpp:1173
+#: DirManager.cpp:1308
#, c-format
msgid "Missing summary file: (%s.auf)"
msgstr "Ontbrekend overzichtbestand: (%s.auf)"
-#: DirManager.cpp:1193
+#: DirManager.cpp:1328
#, c-format
msgid "Missing data file: (%s.au)"
msgstr "Ontbrekend databestand: (%s.au)"
# de newlines zijn niet nodig in dit dialoog, regels wordt uitmatisch afgebroken
-#: DirManager.cpp:1207
-msgid "Project check found inconsistencies inspecting the loaded project data;\n"
+#: DirManager.cpp:1342
+msgid ""
+"Project check found inconsistencies inspecting the loaded project data;\n"
"click 'Details' for a complete list of errors, or 'OK' to proceed to more options."
msgstr "De projectcontrole heeft inconsistenties aangetroffen tijdens de inspectie van de ingeladen projectdata. Klik op âDetailsâ voor een volledige lijst met de fouten, of op âOKâ om door te gaan naar meer opties."
# disk contention niet vertaald (schijfstrijd?)
-#: DirManager.cpp:1219
+#: DirManager.cpp:1354
#, c-format
-msgid "Project check found %d orphaned blockfile[s]. These files are\n"
+msgid ""
+"Project check found %d orphaned blockfile[s]. These files are\n"
"unused and probably left over from a crash or some other bug.\n"
"They should be deleted to avoid disk contention."
-msgstr "De projectcontrole heeft %d verdwaalde blokbestanden aangetroffen. Deze bestanden\n"
+msgstr ""
+"De projectcontrole heeft %d verdwaalde blokbestanden aangetroffen. Deze bestanden\n"
"zijn ongebruikt en zijn waarschijnlijk achtergebleven na een crash of een andere\n"
"fout. Ze kunnen het beste verwijderd worden."
-#: DirManager.cpp:1224
+#: DirManager.cpp:1359
msgid "Delete orphaned files [safe and recommended]"
msgstr "Verdwaalde bestanden verwijderen [veilig en wordt aangeraden]"
# geruisloos om de extra bestanden heen werken/langs de bestanden gaan
# eromheen gaan
-#: DirManager.cpp:1225
+#: DirManager.cpp:1360
msgid "Continue without deleting; silently work around the extra files"
msgstr "Doorgaan zonder te verwijderen; geruisloos eromheen gaan"
-#: DirManager.cpp:1226
+#: DirManager.cpp:1361
msgid "Close project immediately with no changes"
msgstr "Sluit het project onmiddelijk zonder wijzigingen"
# =venstertitel
-#: ../src/widgets/Warning.cpp:45
+#: DirManager.cpp:1363
+#: DirManager.cpp:1398
+#: DirManager.cpp:1444
+#: DirManager.cpp:1486
+#: export/Export.cpp:581
+#: export/Export.cpp:602
+#: export/Export.cpp:621
+#: widgets/Warning.cpp:53
msgid "Warning"
msgstr "Let op"
-#: DirManager.cpp:1254
+#: DirManager.cpp:1389
#, c-format
-msgid "Project check detected %d input file[s] being used in place\n"
+msgid ""
+"Project check detected %d input file[s] being used in place\n"
"('alias files') are now missing. There is no way for Audacity\n"
"to recover these files automatically; you may choose to\n"
"permanently fill in silence for the missing files, temporarily\n"
"fill in silence for this session only, or close the project now\n"
"and try to restore the missing files by hand."
-msgstr "De projectcontrole heeft %d ontbrekende invoerbestanden ontdekt.\n"
+msgstr ""
+"De projectcontrole heeft %d ontbrekende invoerbestanden ontdekt.\n"
"Audacity heeft geen mogelijkheid deze bestanden automatisch te\n"
"redden. U kunt kiezen om voor deze bestanden stilte te gebruiken,\n"
"of tijdelijk stilte te gebruiken alleen voor deze sessie, of het\n"
"project nu te sluiten en de ontbrekende bestanden handmatig te\n"
"herstellen."
-#: DirManager.cpp:1259
+#: DirManager.cpp:1394
msgid "Replace missing data with silence [permanent upon save]"
msgstr "Ontbrekende data vervangen door stilte [wordt definitief bij opslaan]"
-#: DirManager.cpp:1260 DirManager.cpp:1348
+#: DirManager.cpp:1395
+#: DirManager.cpp:1483
msgid "Temporarily replace missing data with silence [this session only]"
msgstr "Tijdelijk ontbrekende data vervangen door stilte [alleen deze sessie]"
-#: DirManager.cpp:1261 DirManager.cpp:1307 DirManager.cpp:1349
+#: DirManager.cpp:1396
+#: DirManager.cpp:1442
+#: DirManager.cpp:1484
msgid "Close project immediately with no further changes"
msgstr "Project onmiddellijk sluiten zonder verdere wijzigingen"
-#: DirManager.cpp:1300
+#: DirManager.cpp:1435
#, c-format
-msgid "Project check detected %d missing summary file[s] (.auf).\n"
+msgid ""
+"Project check detected %d missing summary file[s] (.auf).\n"
"Audacity can fully regenerate these summary files from the\n"
"original audio data in the project."
-msgstr "Tijdens de controle zijn er %d ontbrekende overzichtbestand(en) ontdekt (.auf).\n"
+msgstr ""
+"Tijdens de controle zijn er %d ontbrekende overzichtbestand(en) ontdekt (.auf).\n"
"Audacity kan deze overzichtbestanden volledig regenereren vanuit de\n"
"oorspronkelijke audiodata van het project."
-#: DirManager.cpp:1305
+#: DirManager.cpp:1440
msgid "Regenerate summary files [safe and recommended]"
msgstr "Overzichtbestanden opnieuw genereren [veilig en wordt aangeraden]"
# een aanrader/aangeraden
-#: DirManager.cpp:1306
+#: DirManager.cpp:1441
msgid "Fill in silence for missing display data [this session only]"
msgstr "Ontbrekende data met stilte opvullen [alleen deze sessie]"
-#: DirManager.cpp:1342
+#: DirManager.cpp:1477
#, c-format
-msgid "Project check detected %d missing audio data blockfile[s] (.au), \n"
+msgid ""
+"Project check detected %d missing audio data blockfile[s] (.au), \n"
"probably due to a bug, system crash or accidental deletion.\n"
"There is no way for Audacity to recover this lost data\n"
"automatically; you may choose to permanently fill in silence\n"
"for the missing data, temporarily fill in silence for this\n"
"session only, or close the project now and try to restore the\n"
"missing data by hand."
-msgstr "De projectcontrole heeft %d ontbrekende audio-blokbestanden\n"
+msgstr ""
+"De projectcontrole heeft %d ontbrekende audio-blokbestanden\n"
"ontdekt (.au). Dit komt waarschijnlijk door een bug, een systeemcrash\n"
"of omdat de bestanden per ongeluk verwijderd zijn.\n"
"Audacity heeft geen mogelijkheid deze verloren data automatisch te\n"
@@ -946,157 +1090,180 @@ msgstr "De projectcontrole heeft %d ontbrekende audio-blokbestanden\n"
"of tijdelijk stilte te gebruiken alleen voor deze sessie, of het\n"
"project nu te sluiten en de ontbrekende data handmatig te herstellen."
-#: DirManager.cpp:1347
+#: DirManager.cpp:1482
msgid "Replace missing data with silence [permanent immediately]"
msgstr "Ontbrekende data upvullen met stilte [definitief onmiddellijk]"
-#: DirManager.cpp:1375
+#: DirManager.cpp:1510
msgid "Cleaning up unused directories in project data..."
msgstr "Ongebruikte mappen in project-data worden opgeruimdâ¦"
-#: DirManager.cpp:1448
+#: DirManager.cpp:1587
msgid "Caching audio"
msgstr "Audio bufferen"
-#: DirManager.cpp:1449
+#: DirManager.cpp:1588
msgid "Caching audio into memory..."
msgstr "Audio bufferen naar het geheugenâ¦"
# vrij vertaald
-#: DirManager.cpp:1486
+#: DirManager.cpp:1623
msgid "Saving recorded audio"
msgstr "Opname wordt opgeslagen"
-#: DirManager.cpp:1487
+#: DirManager.cpp:1624
msgid "Saving recorded audio to disk..."
msgstr "Opname wordt op de harde schijf opgeslagenâ¦"
-#: ../src/FFT.cpp:364
+#: FFT.cpp:389
msgid "Rectangular"
msgstr "Rechthoekig"
-#: FFmpeg.cpp:36
+#: FFmpeg.cpp:38
msgid "FFmpeg support not compiled in"
-msgstr ""
+msgstr "FFmpeg-ondersteuning niet gecompileerd in"
-#: FFmpeg.cpp:101
-msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
+#: FFmpeg.cpp:103
+msgid ""
+"FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
+"FFmpeg werd geconfigureerd in Voorkeuren en eerder met succes geladen, \n"
+"maar deze keer lukte het Audacity niet om het te laden bij het opstarten. \n"
+"\n"
+"U kunt teruggaan naar de Voorkeuren > Bibliotheken en het opnieuw configureren."
-#: FFmpeg.cpp:104
+#: FFmpeg.cpp:106
msgid "FFmpeg startup failed"
-msgstr ""
+msgstr "FFmpeg kon niet opstarten"
-#: FFmpeg.cpp:115
+#: FFmpeg.cpp:114
msgid "FFmpeg library not found"
-msgstr ""
+msgstr "FFmpeg database niet gevonden"
-#: FFmpeg.cpp:170
+#: FFmpeg.cpp:408
msgid "Locate FFmpeg"
-msgstr ""
+msgstr "FFmpeg opzoeken"
-#: FFmpeg.cpp:190
+#: FFmpeg.cpp:428
#, c-format
msgid "Audacity needs the file %s to import and export audio via FFmpeg."
-msgstr ""
+msgstr "Audacity heeft het bestand %s nodig om audio te importeren en exporteren via FFmpeg."
-#: export/ExportMP3.cpp:639
+#: FFmpeg.cpp:434
+#: export/ExportMP3.cpp:562
#, c-format
msgid "Location of %s:"
msgstr "Locatie van %s:"
-#: export/ExportMP3.cpp:648
+#: FFmpeg.cpp:443
+#: export/ExportMP3.cpp:571
#, c-format
msgid "To find %s, click here -->"
msgstr "Om %s op te zoeken, klik hier -->"
-#: export/ExportMP3.cpp:654
+#: FFmpeg.cpp:449
+#: export/ExportMP3.cpp:577
msgid "Browse..."
msgstr "Bladerenâ¦"
-#: FFmpeg.cpp:212
+#: FFmpeg.cpp:450
msgid "To get a free copy of FFmpeg, click here -->"
-msgstr ""
+msgstr "Voor een gratis kopie van FFmpeg, klik hier -->"
-#: FFmpeg.cpp:215 export/ExportMP3.cpp:579
+#: FFmpeg.cpp:451
+#: export/ExportMP3.cpp:579
msgid "Download"
-msgstr ""
+msgstr "Downloaden"
#. i18n-hint: It's asking for the location of a file, for
#. example, "Where is lame_enc.dll?" - you could translate
#. "Where would I find the file %s" instead if you want.
-#: ../src/export/ExportMP3.cpp:113
+#: FFmpeg.cpp:473
+#: export/ExportMP3.cpp:601
#, c-format
msgid "Where is %s?"
msgstr "Waar is %s?"
-#: FFmpeg.cpp:407
+#: FFmpeg.cpp:643
msgid "Failed to find compatible FFmpeg libraries"
-msgstr ""
+msgstr "Kon geen compatibele FFmpeg-bibliotheken vinden"
-#: FFmpeg.h:95
+#: FFmpeg.h:97
msgid "FFmpeg not found"
-msgstr ""
+msgstr "FFmpeg niet gevonden"
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid ""
+"Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
+"Audacity probeerde FFmpeg te gebruiken om een geluidsbestand te importeren,\n"
+"maar de bibliotheken konden niet worden gevonden.\n"
+"\n"
+"Als U de FFmpeg-importeerfunctie wilt gebruiken, ga dan naar Voorkeuren > Bibliotheken\n"
+"om de FFmpeg-bibliotheken te downloaden of lokaliseren."
-#: FFmpeg.h:109
+# melding ipv waarschuwing.
+# dit is een vinkje
+#: FFmpeg.h:119
msgid "Do not show this warning again"
-msgstr ""
+msgstr "Deze melding niet meer tonen"
-#: FFmpeg.h:251
+#: FFmpeg.h:264
msgid "Only avformat.dll|*avformat*.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
-msgstr ""
+msgstr "Enkel avformat.dll|*avformat*.dll|Dynamically linked libraries (*.dll)|*.dll|Alle bestanden (*.*)|*"
-#: FFmpeg.h:268
+#: FFmpeg.h:297
msgid "Dynamic Libraries (*.dylib)|*.dylib|All Files (*)|*"
-msgstr ""
+msgstr "Dynamic libraries (*.dylib)|*.dylib|Alle bestanden (*)|*"
-#: FFmpeg.h:266
+#: FFmpeg.h:324
msgid "Only libavformat.so|libavformat.so*|Dynamically Linked Libraries (*.so*)|*.so*|All Files (*)|*"
-msgstr ""
+msgstr "Enkel libavformat.so|libavformat.so*|Dynamically Linked Libraries (*.so*)|*.so*|Alle bestanden (*)|*"
-#: ../src/FreqWindow.cpp:68
+#: FreqWindow.cpp:107
msgid "Frequency Analysis"
msgstr "Frequentieanalyse"
-#: ../src/FreqWindow.cpp:129 ../src/TrackPanel.cpp:837
+#: FreqWindow.cpp:163
+#: TrackPanel.cpp:611
+#: prefs/TracksPrefs.cpp:58
msgid "Spectrum"
msgstr "Spectrum"
-#: ../src/FreqWindow.cpp:130
+#: FreqWindow.cpp:164
msgid "Standard Autocorrelation"
msgstr "Standaard autocorrelatie"
-#: ../src/FreqWindow.cpp:131
+#: FreqWindow.cpp:165
msgid "Cuberoot Autocorrelation"
msgstr "Derdemachtswortel autocorrelatie"
-#: ../src/FreqWindow.cpp:132
+#: FreqWindow.cpp:166
msgid "Enhanced Autocorrelation"
msgstr "Verhoogde autocorrelatie"
#. i18n-hint: This is a technical term, derived from the word
#. "spectrum". Do not translate it unless you are sure you
#. know the correct technical word in your language.
-#: ../src/FreqWindow.cpp:136
+#: FreqWindow.cpp:170
msgid "Cepstrum"
msgstr "Cepstrum"
-#: FreqWindow.cpp:150 FreqWindow.cpp:154
-#, fuzzy
+#: FreqWindow.cpp:174
+#: FreqWindow.cpp:178
msgid "Algorithm"
-msgstr "Algoritme:"
+msgstr "Algoritme"
-#: ../src/HistoryWindow.cpp:58
+#: FreqWindow.cpp:193
+#: FreqWindow.cpp:197
+#: HistoryWindow.cpp:79
msgid "Size"
msgstr "Grootte"
@@ -1105,119 +1272,196 @@ msgstr "Grootte"
# Dus 'window' moet slechts vertaald worden als een spatie.
#. i18n-hint: This refers to a "window function", used in the
#. Frequency analyze dialog box.
-#: ../src/FreqWindow.cpp:167
+#: FreqWindow.cpp:207
msgid " window"
msgstr " "
-#: FreqWindow.cpp:187 FreqWindow.cpp:191
+# het is hier een wiskundige functie, geen gebruikersfunctie
+# venstertype ipv functie is beter
+#: FreqWindow.cpp:211
+#: FreqWindow.cpp:215
msgid "Function"
-msgstr ""
+msgstr "Venstertype"
# Frequentieas [Linear]/[Logaritmisch]
-#: ../src/FreqWindow.cpp:177
+#: FreqWindow.cpp:220
msgid "Linear frequency"
msgstr "Lineair"
# Frequentieas [Linear]/[Logaritmisch]
-#: ../src/FreqWindow.cpp:178
+#: FreqWindow.cpp:221
msgid "Log frequency"
msgstr "Logaritmisch"
-#: FreqWindow.cpp:201 FreqWindow.cpp:205
+# frequentie-as
+#: FreqWindow.cpp:225
+#: FreqWindow.cpp:229
msgid "Axis"
-msgstr ""
+msgstr "Frequentie-as"
-#: FreqWindow.cpp:204 LabelDialog.cpp:128
+#: FreqWindow.cpp:236
+#: LabelDialog.cpp:130
+#: Menus.cpp:256
msgid "&Export..."
msgstr "&Exporterenâ¦"
-#: export/ExportCL.cpp:188 export/ExportOGG.cpp:121 export/ExportPCM.cpp:114
+#: FreqWindow.cpp:237
+#: effects/Contrast.cpp:395
+#: export/ExportCL.cpp:358
+#: export/ExportMultiple.cpp:344
msgid "Export"
msgstr "Exporteren"
-#: ../src/Benchmark.cpp:223 ../src/FreqWindow.cpp:123
-#: ../src/effects/ClickRemoval.cpp:371 ../src/effects/NoiseRemoval.cpp:463
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr "Opnieuw gene&reren"
+
+# Resetten/herstellen
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr "Opnieuw genereren"
+
+#: FreqWindow.cpp:244
+#: FreqWindow.cpp:245
+#: widgets/ErrorDialog.cpp:190
msgid "Close"
msgstr "Sluiten"
-#: ../src/effects/Compressor.cpp:385 ../src/effects/Compressor.cpp:393
-#: ../src/widgets/Meter.cpp:293
+#: FreqWindow.cpp:247
+#: FreqWindow.cpp:250
+#: effects/Equalization.cpp:1300
+#: effects/Equalization.cpp:1303
+msgid "Grids"
+msgstr "Raster"
+
+#: FreqWindow.cpp:314
+#: FreqWindow.cpp:516
+#: effects/AutoDuck.cpp:503
+#: effects/AutoDuck.cpp:537
+#: effects/AutoDuck.cpp:806
+#: effects/Compressor.cpp:360
+#: effects/Compressor.cpp:368
+#: effects/Equalization.cpp:1142
+#: effects/Equalization.cpp:1144
+#: effects/Equalization.cpp:1152
+#: effects/Equalization.cpp:1218
+#: effects/Equalization.cpp:1434
+#: effects/Equalization.cpp:1445
+#: effects/Normalize.cpp:372
+#: widgets/Meter.cpp:406
msgid "dB"
msgstr "dB"
#. i18n-hint: This is the abbreviation for "Hertz", or
#. cycles per second.
-#: ../src/import/ImportRaw.cpp:378
+#: FreqWindow.cpp:330
+#: FreqWindow.cpp:556
+#: effects/Equalization.cpp:1183
+#: effects/Equalization.cpp:1214
+#: import/ImportRaw.cpp:409
msgid "Hz"
msgstr "Hz"
-#: ../src/FreqWindow.cpp:463
+#: FreqWindow.cpp:422
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "Om het spectrum te tekenen moeten alle sporen dezelfde samplefrequentie hebben."
+
+#: FreqWindow.cpp:449
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "Er was teveel audio geselecteerd. Alleen de eerste %.1f seconden audio worden geanaliseerd."
+
+#: FreqWindow.cpp:500
msgid "Not enough data selected."
msgstr "Niet genoeg data geselecteerd."
# seconden?
-#: FreqWindow.cpp:441 effects/AutoDuck.cpp:801
+#: FreqWindow.cpp:564
+#: effects/AutoDuck.cpp:808
msgid "s"
msgstr "s"
-#: FreqWindow.cpp:769
+#: FreqWindow.cpp:898
#, c-format
msgid "Cursor: %d Hz (%s) = %d dB Peak: %d Hz (%s) = %.1f dB"
msgstr "Cursor: %d Hz (%s) = %d dB Piek: %d Hz (%s) = %.1f dB"
-#: FreqWindow.cpp:778
+#: FreqWindow.cpp:907
#, c-format
msgid "Cursor: %.4f sec (%d Hz) (%s) = %f, Peak: %.4f sec (%d Hz) (%s) = %.3f"
msgstr "Cursor: %.4f sec (%d Hz) (%s) = %f, Piek: %.4f sec (%d Hz) (%s) = %.3f"
-#: ../src/FreqWindow.cpp:996
+#: FreqWindow.cpp:1198
msgid "spectrum.txt"
msgstr "spectrum.txt"
-#: ../src/FreqWindow.cpp:998
+#: FreqWindow.cpp:1200
msgid "Export Spectral Data As:"
msgstr "Spectrale gegevens exporteren als:"
-#: ../src/FreqWindow.cpp:1014 ../src/Menus.cpp:1390 ../src/Project.cpp:2159
-#: ../src/prefs/KeyConfigPrefs.cpp:173
+#: FreqWindow.cpp:1216
+#: LabelDialog.cpp:603
+#: Menus.cpp:2663
+#: effects/Contrast.cpp:587
+#: prefs/KeyConfigPrefs.cpp:319
msgid "Couldn't write to file: "
msgstr "Kon niet naar bestand schrijven:"
-#: ../src/FreqWindow.cpp:1019
+#: FreqWindow.cpp:1221
msgid "Frequency (Hz)\tLevel (dB)"
msgstr "Frequentie (Hz)\tGeluidsniveau (dB)"
-#: ../src/FreqWindow.cpp:1025
+#: FreqWindow.cpp:1227
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
-msgstr "Vertraging (seconden)\tFrequentie (Hz) Niveau"
+msgstr "Vertraging (seconden)\tFrequentie (Hz)\tNiveau"
+
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr "GStreamer %s: %s"
+
+#: GStreamerLoader.cpp:212
+msgid ""
+"GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+"GStreamer werd geconfigureerd in Voorkeuren en eerder met succes geladen,\n"
+"maar deze keer lukte het Audacity niet om het te laden bij het opstarten.\n"
+"\n"
+"U kunt teruggaan naar Voorkeuren > Bibliotheken en het opnieuw configureren."
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr "GStreamer kon niet opstarten"
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
-msgstr ""
+msgstr "Terug naar [[welcome|het welkomstscherm]]"
-#: HelpText.cpp:60
+#: HelpText.cpp:92
msgid "Welcome!"
msgstr "Welkom!"
-#: HelpText.cpp:65
+#: HelpText.cpp:97
msgid "Playing Audio"
msgstr "Audio afspelen"
-#: HelpText.cpp:69
+#: HelpText.cpp:101
msgid "Recording Audio"
msgstr "Audio opnemen"
#: HelpText.cpp:105
msgid "Recording - Choosing the Input Device"
-msgstr ""
+msgstr "Opname - Kies het opname-apparaat"
#: HelpText.cpp:109
msgid "Recording - Choosing the Input Source"
-msgstr ""
+msgstr "Opname - Kies de opnamebron"
#: HelpText.cpp:113
msgid "Recording - Setting the Input Level"
-msgstr ""
+msgstr "Opname - Opnameniveau instellen"
# Bewerken en onbruikbare grijze menu's
#: HelpText.cpp:117
@@ -1235,78 +1479,78 @@ msgstr "Opslaan van een audacity-project"
# formats/formaten/bestandsindelingen
#: HelpText.cpp:129
msgid "Unsupported Formats"
-msgstr "Niet ondersteunde bestandsindelingen"
+msgstr "Niet-ondersteunde bestandsindelingen"
-#: HelpText.cpp:85
+#: HelpText.cpp:133
msgid "Burn to CD"
msgstr "Naar cd branden"
-#: HelpText.cpp:85
+#: HelpText.cpp:137
msgid "No Local Help"
msgstr "Geen lokale hulp"
#: HelpText.cpp:148
msgid "</p><center><h3>Getting Started</h3></center><br>"
-msgstr ""
+msgstr "</p><center><h3>Om te beginnen</h3></center><br>"
#: HelpText.cpp:150
msgid "Welcome to Audacity "
-msgstr "Welkom bij Audacity"
+msgstr "Welkom bij Audacity "
#: HelpText.cpp:151
msgid "Learn how to: <ul><li>[[play|play]] an existing audio file <li>[[record|record]] your voice, LP or tape <li>[[edit|edit]] sounds <li>[[save|save or open an Audacity project]] <li>[[export|export]] to an MP3 or other audio file, or [[burncd|burn to a CD]] </ul></p><p>"
-msgstr ""
+msgstr "Leer hoe u: <ul><li> een bestaand audiobestand [[play|afspeelt]]<li> uw stem, een LP of tape [[record|opneemt]] <li> geluid [[edit|bewerkt]]<li>een [[save|Audacity-project opent of opslaat]] <li>naar een MP3- of ander audiobestand [[export|exporteert]] of [[burncd|brandt naar een cd]] </ul></p><p>"
#: HelpText.cpp:159
msgid "This screen can be viewed at any time by clicking the <i>Help</i> menu, then <i>Show Welcome Message</i>. For a detailed guide to all the Audacity menus and controls, click <i>Help</i> menu then <i>Index</i>, or download our <a href=\"http://audacity.sourceforge.net/help/documentation/manual_1.4.pdf\">full Manual</a> in PDF format.</p>"
-msgstr ""
+msgstr "Dit scherm kan op elk moment worden bekeken door op het <i>Help</i>-menu te klikken, en vervolgens op <i>Welkomstbericht tonen</i>. Voor een gedetailleerde uitleg over alle Audacity-menu's en -mogelijkheden, klik op het <i>Help</i>-menu, en daarna op <i>Index</i>, of download onze <a href=\"http://audacity.sourceforge.net/help/documentation/manual_1.4.pdf\">complete handleiding</a> in pdf-formaat.</p>"
#: HelpText.cpp:172
msgid "<p><b>Opening audio files:</b> Either drag the files into the current project window, or click <i>File > Import > Audio</i>. Files can be opened into a new project window with <i>File > Open</i>. The main formats Audacity plays are <b>AIFF, AU, FLAC, M4A</b> (only on a Mac), <b>MP2/MP3, OGG Vorbis</b> and <b>WAV</b>. Click [[wma-proprietary|here]] if your file is in some other format. <b>To import a CD:</b> extract it to WAV or AIFF using iTunes, Windows Media Player 11 or similar. See our online guide: [[wiki:How_to_import_CDs|importing CDs]].</p><p> <p><b>Playing audio:</b> Press the green Play button to start playback. Press the blue Pause button once to pause playback, and again to resume. To stop, press the yellow Stop button. Spacebar can be used to either play or stop. After stopping, playback resumes from its last starting point. To change the starting point, click in the track at your desired starting point. The <b>|<<</b> and <b>>>|</b> buttons can be used to skip to the start or end of the track respectively. </p><br><br>"
-msgstr ""
+msgstr "<p><b>Audio-bestanden openen:</b> Sleep de bestanden in het huidige projectvenster, of klik <i>Bestand > Importeren > Audio</i>. Bestanden kunnen in een nieuw projectvenster worden geopend door <i>Bestand > Openen...</i>. De belangrijkste geluidsbestanden die Audacity afspeelt zijn <b>AIFF, AU, FLAC, M4A</b> (alleen op een Mac), <b>MP2/MP3, OGG Vorbis</b> en <b>WAV</b>. Klik [[wma-proprietary|hier]] als je een ander soort geluidsbestand hebt. <b>Om een cd te importeren:</b> zet hem om in WAV of AIFF met behulp van iTunes, Windows Media Player 11 of iets soortgelijks. Zie onze online handleiding: [[wiki:How_to_import_CDs|Cd's importeren]].</p><p> <p><b>Audio afspelen:</b> Druk op de groene Afspelen-knop om afspelen te starten. Druk één keer op de blauwe Pauzeren-knop om afspelen te onderbreken, en nog een keer om verder te gaan. Druk op de gele Stoppen-knop om te stoppen. De spatiebalk kan worden gebruikt om af te spelen of the stoppen. Na een stop gaat Afspelen door vanaf het laatste beginpunt. Klik in het spoor op het gewenste beginpunt om het laatste beginpunt te veranderen. De <b>|<<</b>- en <b>>>|</b>-knoppen kunnen gebruikt worden om direct naar het begin- of eindpunt van het spoor te gaan. </p><br><br>"
#: HelpText.cpp:194
msgid "<p><b>To record:</b> Set the recording device and input source, adjust the input level, then press the red Record button.</b></p><p> 1) [[inputdevice|Set Recording Device]] either in the <i>Audio I/O tab of Preferences</i> or in <i>Device Toolbar</i>. Audio I/O Preferences lets you choose stereo recording if required.<br> 2) [[inputsource|Set input source]] for that device (for example, microphone or line-in) in the dropdown selector of the <i>Mixer Toolbar</i>, or (on some systems) at Recording Device in the <i>Audio I/O tab of Preferences</i> or in <i>Device Toolbar</i>.<br> 3) [[inputlevel|Adjust input level]] using the right-hand slider on the <i>Mixer Toolbar</i>. Correct adjustment of level before recording is essential to avoid noise or distortion. </p><p> More help at: \"Recording\" <a href=\"http://audacity.sourceforge.net/help/faq\">FAQs</a>, our Tutorial <a href=\"http://www.audacityteam.org/manual/index.php?title=Tutorial_-_Your_First_Recording\"> Your First Recording</a> in the <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">Manual</a>, and our Wiki [[wiki:Recording_Tips|Recording Tips]] and [[wiki:Troubleshooting_Recordings|Troubleshooting Recordings]] pages. </p><br><br>"
-msgstr ""
+msgstr "<p><b>Om op te nemen:</b> stel het opname-apparaat en de invoerbron in, pas het ingangsvolume aan en druk daarna op de rode Opnemen-knop.</b></p><p> 1) [[inputdevice|Stel het opname-apparaat in]] bij de <i>Audio I/O tab in Voorkeuren</i> of in de <i>In/uitvoerapparaten-werkbalk</i>. In Audio I/O Voorkeuren kan u indien nodig kiezen voor stereo-opname.<br> 2) [[inputsource|Stel de invoerbron in]] voor het betreffende apparaat (bijvoorbeeld microfoon of line-in) in het uitklapmenu van de <i>Mixer-werkbalk</i>, of (op sommige systemen) bij Opname-apparaat in de <i>Audio I/O-tab in Voorkeuren</i> of in de <i>In/uitvoerapparaten-werkbalk</i>.<br> 3) [[inputlevel|Aanpassen van het ingangsvolume]] kan met behulp van de rechter schuifknop in de <i>Mixer-werkbalk</i>. Om ruis en vervorming te voorkomen is het essentieel om het niveau voor een opname te corrigeren. </p><p> Meer hulp vindt u in: \"Opnemen\"-<a href=\"http://audacity.sourceforge.net/help/faq\">FAQs</a>, onze gids <a href=\"http://www.audacityteam.org/manual/index.php?title=Tutorial_-_Your_First_Recording\"> uw eerste opname</a> in de <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">handleiding</a>, en onze Wiki [[wiki:Recording_Tips|opname-tips]] en [[wiki:Troubleshooting_Recordings|opnameproblemen oplossen]]-pagina's. </p><br><br>"
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
-msgstr ""
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgstr "<p>Het invoer-apparaat is het feitelijke opname-apparaat vanwaar u opneemt. Dit wordt gekozen in \"Opname-apparaat\" in <i>Audio I/O-tab > Voorkeuren</i>. In Windows en Linux, staan Voorkeuren onderaan in het <i>Bewerken</i>-menu. Op een Mac staan ze in het <i>Audacity</i>-menu. U kan het Opname-apparaat ook gemakkelijk kiezen in de <i>Apparaten-werkbalk</i>, die u kan activeren met <i>Beeld > Werkbalken...</i>. </p><p> Standaard gebruikt Audacity het apparaat dat op dit moment door het systeem wordt gebruikt (normaal het ingebouwde apparaat), dus is het vaak nodig om het invoer-apparaat te veranderen. In Windows kan het standaard-apparaat worden gekozen door \"Microsoft Geluidsvoorziening\". Als u opneemt via een extern USB- of Firewire-apparaat, zoals een USB-draaitafel, kies dan het specifieke opname-apparaat nadat u het heeft aangesloten. </p><p> Terug naar [[record|Audio opnemen]] <br></p>"
#: HelpText.cpp:244
msgid "<p>Select the input source (such as microphone or line-in) for your [[inputdevice|recording device]]:<br> - <b>On Windows (except Vista)</b> and <b>Linux</b>, in the dropdown selector on the right of the <i>Mixer Toolbar</i>.<br> - <b>On Windows Vista</b> and <b>Mac</b>, at Recording Device on the <i>Audio I/O tab of Preferences</i>, or in <i>Device Toolbar</i>. The source will be shown as part of the parent device (for example, <i>High Def Audio Card: Microphone</i>). If necessary, Mac users can choose the input source at Apple Audio MIDI Setup. <br><i><b>Note:</b> many USB or Firewire recording devices don't have a choice of inputs, so this step is not necessary. If in doubt, see the documentation for your device. </i></p><p> <b>Tip:</b> To <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record audio playing on the computer</a>, Windows and Linux users can choose the \"Stereo Mix\", \"Wave Out\", \"Sum\" or comparable input source. </p><p> Back to [[record|Recording Audio]] <br></p>"
-msgstr ""
+msgstr "<p>Kies de Input bron (zoals een microfoon of line-in) voor uw [[inputdevice|Opname apparaat]]:<br> - <b>in Windows (behalve Vista)</b> en <b>Linux</b>, in het uitval menu aan de rechterkant van de <i>Mixer werktuigbalk</i>.<br> - <b>In Windows Vista</b> en <b>Mac</b>, onder Opname apparaat in de <i>Audio I/O tab Voorkeuren</i>, of in de <i>Apparaten werktuigbalk</i>. De bron wordt getoond als deel van kernapparaat (bijvoorbeeld),<i>High Def Audio Card: Microfoon</i>). Indien nodig kunnen mac gebruikers de Onput bron kiezen bij Apple Audio MIDI instellingen. <br><i><b>Noot:</b> bij veel USB en Firewire opname apparatuur kan de input niet worden gekozen en is deze stap dus niet nodig. In geval van twijfel, controleer de documentatie, die bij Uw apparatuur hoort. </i></p><p> <b>Tip:</b> om <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">geluid op te nemen dat op de computer speelt</a>, kunnen Windows en Linux gebruikers kiezen voor de \"Stereo Mix\", \"Golf Uit\", \"Som\" of een vergelijkbare Input bron. </p><p> Terug naar [[record|Audio opnemen]] <br></p>"
#: HelpText.cpp:267
msgid "<p>The input level must be set correctly. If the level is too low, there will be background noise. If the level is too high, there will be distortion in the loud parts. </p><p>To set the level, either see this [[wiki:Recording_levels|illustrated online guide]] or follow these steps: <ol><li>Turn on <b>monitoring</b>. Double-click the right-hand of the two <i>VU Meters</i> (or right-click over it) and click \"Start Monitoring\". If the meters are not visible, click <i>View > Toolbars</i> and check \"Meter Toolbar\". </li><li>Adjust the input slider on the <i>Mixer Toolbar</i> (by the microphone symbol), so that the red bars in the meter come close to <b>but do not touch</b> the right edge of the scale. If you can't hear the monitored audio, go to the <i>Audio I/O tab of Preferences</i> and check \"Software Playthrough\". </li></ol></p><p> Back to [[record|Recording Audio]] <br></p>"
-msgstr ""
+msgstr "<p>Het ingangsniveau moet juist zijn ingesteld. Als het niveau te laag is, hoor je achtergrondgeluid. Als het niveau te hoog is worden de harde gedeeltes vervormd. </p><p>Om het niveau in te stellen, lees de [[wiki:Recording_levels|geïllustreerde online handleiding]] of doe het volgende: <ol><li>Zet <b>meten</b>aan. Dubbelklik op de rechtse van de twee <i>VU Meters</i> (of klik erop met de rechtermuisknop) en klik \"Meten starten\". Als de meters niet te zien zijn, klikt u op <i>View > Werkbalken</i> en vink \"Werkbalk VU-meters\" aan. </li><li>Pas het ingangsvolume in de <i>Mixerwerkbalk</i> (naast het microfoon-symbool) zo aan, dat de rode balken in de meter uitslaan maar de rechterkant van de schaal <b>niet raken.</b> Als u het gemeten geluid niet hoort, ga dan naar <i>Audio I/O-tab > Voorkeuren</i> en vink \"Softwarematig afspelen\" aan. </li></ol></p><p> Terug naar [[record|Audio opnemen]] <br></p>"
#: HelpText.cpp:292
msgid "<p>The main commands for editing audio are under the <i>Edit</i> menu (such as cut, copy and paste) and the <i>Effect</i> menu (you can do things like boost the bass, change pitch or tempo, or remove noise). </p><p> Audacity applies edits to selected areas of the audio track. To select a particular area, click in the track and drag the shaded area with the mouse. If no audio is selected, Audacity selects all the audio in the project window.</p><p> When playing or recording, the Edit and Effect menus will appear greyed out, because a moving track can't be edited. Commands can sometimes be unavailable for other reasons too. For example, you can't run effects until you have audio on the screen, and you can't paste audio until you've cut or copied it to Audacity's clipboard. </p><br><br>"
-msgstr ""
+msgstr "<p>De belangrijkste commando's om audio te bewerken zijn te vinden in het menu <i>Bewerken</i> (zoals knippen, kopiëren en plakken) en het <i>Effect</i> menu (daarmee kun je dingen doen als: versterken van de bass, veranderen van de toonhoogte of het tempo of ruis verwijderen). </p><p> Audacity past de bewerkingen toe op de geselecteerde delen van het audiospoor. Om een bepaald deel te kiezen, klik in het spoor en sleep het donkere gebied met de muis. Als er geen audio is geselecteerd kiest Audacity alle audio in het project scherm.</p><p> Tijdens afspelen of opnemen zijn de menu's Bewerken en Effecten grijs gemaakt omdat een bewegend spoor niet kan worden bewerkt. Soms kunnen commando's ook om andere redenen niet beschikbaar zijn. U kan bijvoorbeeld pas effecten toepassen als er audio zichtbaar is op het scherm, en u kan geen audio plakken voordat u het geknipt en gekopieerd hebt naar het klembord van Audacity. </p><br><br>"
#: HelpText.cpp:311
msgid "<p>To return later to your unfinished work in Audacity with all tracks and edits as you left them, save an Audacity project. To play your current work in other media programs or send it to others, [[export|export]] an audio file such as WAV or MP3. </p><p> <i>File > Save Project</i> saves an <b>.aup</b> project file and a <b>_data</b> folder containing the actual audio. To re-open a saved project, click <i>File > Open</i> and open the .aup file. If you save and exit more than once, an .aup.bak backup file is created, but the .aup file should always be opened if present. When your final exported file is exactly as you want, delete the project files and _data folder to save disc space. </p><p><i>File > Save Project As...</i> is for saving an empty project. It also lets you save an existing Project to a <b> new</b> name. This is the only safe way to rename a project. The .aup file and _data folder should not be moved or renamed manually. </p><p>"
-msgstr ""
+msgstr "<p>Sla een Audacity project op om er, als het nog niet af is, later verder aan te kunnen werken én alle sporen en bewerkingen te behouden. Om uw huidige werk te kunnen afspelen met behulp van andere programma's of het naar anderen te sturen, [[export|exporteer]] dan een audiobestand als WAV of MP3. </p><p> Door <i>Bestand > Project opslaan</i>wordt een <b>.aup</b> projectbestand en een <b>_data</b> map met actueel geluid opgeslagen. Om een opgeslagen project te openen, klik op <i>Bestand > Openen</i> en open het .aup bestand. Als u een bestand vaker opslaat en afsluit wordt een .aup.bak backupbestand aangemaakt, maar u opent best het .aup-bestand indien het aanwezig is. Als het uiteindelijk geëxporteerde bestand precies is als gewenst, verwijder dan de projectbestanden en _data-map om schijfruimte te besparen. </p><p><i>Bestand > Opslaan als...</i> wordt gebruikt om een leeg project op te slaan. Hiermee kan ook een al eerder opgeslagen project een <b>nieuwe</b> naam worden gegeven. Dit is de enige veilige manier om een project te herbenoemen. Het .aup-bestand en de _data-map mogen niet handmatig verplaatst of herbenoemd worden. </p><p>"
#: HelpText.cpp:335
msgid "To hear your work in other media programs, export it to an audio file such as WAV or MP3 (some formats are [[wma-proprietary|unsupported]]). [[save|Saving an Audacity project]] creates a project file (and linked _data folder) containing all your edited tracks, so you can return to your work later. However, other programs can't read Audacity projects. </p><p> To export, click <i>File > Export</i> then choose the file format you want to export to in the \"Save as type\" dropdown. To [[burncd|burn a CD]] for standalone CD players, choose WAV or AIFF. To export as MP3, the [[wiki:Lame_Installation|Lame Encoder]] must be installed. </p><p> <i>File > Export Selection</i> exports only a selected area of audio. <i>Use File > Export Multiple</i> to export multiple files at the same time, either one for each audio track, or one for each labeled area in a single track. <i>Tracks > Add Label At Selection</i> lets you [[wiki:Splitting_recordings_into_separate_tracks|split the tracks]] from an album for multiple export as separate files. </p><br><br>"
-msgstr ""
+msgstr "Exporteer je werk naar een geluidsbestand zoals WAV of MP3, om je werk met andere programma's te kunnen beluisteren (sommige formats worden [[wma-proprietary|niuet ondersteund]]). [[save|Een Audacity project opslaan]] creëert een project bestand (en daaraan gekoppelde _data map) met daarin alle bewerkte sporen, zodat je je werk makkelijk kan terugvinden. Echter, andere programma's kunnen geen Audacity projecten openen. </p><p> Om te exporteren, klik <i>Bestand > Exporteer</i> en kies het bestandsformaat waarnaar U wil exporteren in het \"Opslaan als type\" uitrol menu. Om een [[burncd|CD te branden]] voor op zichzelfstaande CD spelers, kies WAV of AIFF. Om naar MP3 te exporteren, moet de [[wiki:Lame_Installation|Lame Encoder]] zijn geïnstalleerd. </p><p> <i>Bestand > Exporteer Selectie</i> exporteert slechts een deel van het geluidsbestand. <i>Gebruik Bestand > Meervoudig exporteren</i> om meerdere bestanden tegelijkertijd te exporteren, of één voor elk geluidspoor, of één van elk gelabeld deel in een enkel spoor. Door <i>Sporen > Voeg label toe aan Selectie</i> kunt U [[wiki:Splitting_recordings_into_separate_tracks|sporen splitsen]] van een album voor een meervoudig export als afzonderlijke bestanden. </p><br><br>"
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
-msgstr ""
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgstr "<p>Audacity <b>kan geen</b> WMA, RealAudio, Shorten (SHN)</b> of de meeste andere beschermde bestanden, [[play|afspelen]] of [[export|exporteren]] <b>als gevolg van beschermde licensies en patenten. Op een Mac computer kunnen onbeschermde <b>AAC</b> formats zoals <b>M4A</b> worden geïmporteerd. Sommige open formats worden nog niet ondersteund, inclusief <b>Ogg Speex</b> en <b>Musepack</b>. Bestanden, die op grond van Digitale Rechten Management (DRM) worden beschermd, inclusief de meeste die via het internet worden aangeschaft zoals via iTunes of Napster, <b>kunnen niet</b> worden geïmporteerd.</p><p> Als U een bestand niet in Audacity kunt importeren, en het is niet DRM-beschermd, gebruik dan iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> om het om te zetten in een WAV of AIFF bestand. Als het wel beschermd is, brand het op een geluids-CD in het programma met de licentie om het af te spelen, splits en knip het CD-spoor vervolgens met behulp van iTunes of (in Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> of Windows Media Player 11, naar WAV of AIFF. U kunt ook de CD op Uw computer <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">opnemen</a>. <i>Om een bestand naar een niet ondersteund format te exporteren, exporteer het eerst naar WAV of AIFF en zet het om in het gewenste format met behulp van iTunes of <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
#: HelpText.cpp:383
msgid "<p>To burn your work to an audio CD for standalone CD players, first [[export|export]] it as WAV or AIFF. The exported file should be stereo, 44100 Hz (set in the \"Project Rate\" button bottom left) and 16 bit (set in the \"Options\" button in the file export dialog). These are Audacity's default settings, so normally you will not need to change these before exporting. <p>Burn the exported file to an \"audio CD\" - not a \"data CD\" or \"MP3 CD\" - with a CD burning program like iTunes or Windows Media Player. For more help, see [[wiki:How_to_burn_CDs|How to burn CDs]] online. </p><p>"
-msgstr ""
+msgstr "<p>Om je werk naar een geluids-cd te branden, te grbuiken met een op zichzelf staande cd-speler, [[export|exporteert]] U het eerst als een WAV of AIFF bestand. Het geëxporteerde bestand moet dan voldoen aan: stereo, 44100 Hz (instellen in de \"Projectfrequentie\" knop linksonder) en 16-bit (instellen in de \"Opties\"-knop in het venster van bestand exporteren). Dit zijn de standaardinstellingen van Audacity, dus normaal zal u deze niet moeten aanpassen voordat u exporteert. <p>Brand het geëxporteerde bestand naar een \"audio-cd\" - geen \"data-cd\" of \"MP3-cd\" - met een cd-brandprogramma zoals iTunes of Windows Media Player. Voor meer hulp, zie [[wiki:How_to_burn_CDs|How to burn CDs]] online. </p><p>"
#: HelpText.cpp:403
msgid "<p>Help for Audacity Beta is currently unfinished. For now, a draft manual is available <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">online</a>. Alternatively, click <a href=\"http://www.audacityteam.org/manual/index.php?title=Temporary_HTML_Manual_Export\">here</a> to download a single-page version of the manual which can be viewed in this window."
-msgstr ""
+msgstr "<p>De Help functie voor Audacity Beta is nog niet klaar. Voorlopig is een klad-handleiding <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">online</a> beschikbaar. Als alternatief, klikt u <a href=\"http://www.audacityteam.org/manual/index.php?title=Temporary_HTML_Manual_Export\">hier</a> om een één-pagina-grote versie te downloaden die u in dit venster kunt lezen."
# Actiegeschiedenis hier duidelijker dan Herstelgeschiedenis
-#: ../src/HistoryWindow.cpp:44
+#: HistoryWindow.cpp:53
msgid "Undo History"
msgstr "Bewerkingsgeschiedenis"
@@ -1315,7 +1559,7 @@ msgid "Manage History"
msgstr "Bewerkingsgeschiedenis beheren"
# kolomkop van bewerkingsgeschiedenis
-#: ../src/HistoryWindow.cpp:57
+#: HistoryWindow.cpp:78
msgid "Action"
msgstr "Bewerking"
@@ -1331,428 +1575,422 @@ msgid "Levels To Discard"
msgstr "De eerste"
# verwerpen/wegwerpen
-#: HistoryWindow.cpp:102
+#: HistoryWindow.cpp:103
msgid "&Discard"
msgstr "bewerkingen &verwerpen"
-#: HistoryWindow.cpp:111 LabelDialog.cpp:135 LabelDialog.cpp:137
-#: effects/Amplify.cpp:214 effects/AutoDuck.cpp:529 effects/AutoDuck.cpp:531
-#: effects/ChangeLength.cpp:187 effects/ChangePitch.cpp:399
-#: effects/ChangeSpeed.cpp:397 effects/ChangeTempo.cpp:301
-#: effects/Compressor.cpp:519 effects/Effect.cpp:389 effects/Effect.cpp:391
-#: effects/Equalization.cpp:1169 effects/Leveller.cpp:269
-#: effects/Normalize.cpp:356 effects/Phaser.cpp:605 effects/Repeat.cpp:274
-#: effects/SpikeCleaner.cpp:191 effects/VST/VSTEffect.cpp:98
-#: effects/Wahwah.cpp:592 effects/ladspa/LadspaEffect.cpp:592
-#: effects/nyquist/Nyquist.cpp:829 export/Export.cpp:791
-#: prefs/FileFormatPrefs.cpp:408 prefs/PrefsDialog.cpp:164
+#: HistoryWindow.cpp:112
+#: effects/ChangeLength.cpp:186
+#: effects/SpikeCleaner.cpp:191
+#: export/ExportCL.cpp:432
msgid "&OK"
msgstr "&OK"
-#: ../src/prefs/DirectoriesPrefs.cpp:114
+#: Internat.cpp:143
msgid "Unable to determine"
msgstr "Niet te bepalen"
# bytes vertalen met byte is wel erg cru dus gewoon bytes (sander)
# In nl zeggen we 5 byte 5 Megabyte en niet 5 bytes of 5 Megabytes (tino)
-#: ../src/import/ImportRaw.cpp:354
+#: Internat.cpp:147
+#: import/ImportRaw.cpp:395
msgid "bytes"
msgstr "byte"
-#: Internat.cpp:182
+#: Internat.cpp:149
msgid "KB"
msgstr "KB"
-#: Internat.cpp:185
+#: Internat.cpp:152
msgid "MB"
msgstr "MB"
-#: Internat.cpp:188
+#: Internat.cpp:155
msgid "GB"
msgstr "GB"
-#: LabelDialog.cpp:50
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr "De ingevoerde bestandsnaam kon niet geconverteerd worden doordat Unicode-tekens gebruikt zijn."
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr "Voer nieuwe bestandsnaam in:"
+
+#: LabelDialog.cpp:54
msgid "Track"
msgstr "Spoor"
-#: ../src/Menus.cpp:3085
+#: LabelDialog.cpp:55
+#: Menus.cpp:4855
+#: Menus.cpp:4890
msgid "Label"
msgstr "Label"
# begintijd/starttijd
-#: LabelDialog.cpp:54
+#: LabelDialog.cpp:56
+#: TimerRecordDialog.cpp:328
msgid "Start Time"
msgstr "Begintijd"
-#: LabelDialog.cpp:53
+#: LabelDialog.cpp:57
+#: TimerRecordDialog.cpp:347
msgid "End Time"
msgstr "Eindtijd"
-#: LabelDialog.cpp:98 Menus.cpp:709
-msgid "&Edit Labels"
-msgstr "Labels be&werken"
+#: LabelDialog.cpp:100
+msgid "Edit Labels"
+msgstr "Labels bewerken"
# F2/op F2
-#: LabelDialog.cpp:113
+#: LabelDialog.cpp:115
msgid "Press F2 or double click to edit cell contents."
msgstr "Toets F2 of dubbelklik om de inhoud van de cel te bewerken."
-#: LabelDialog.cpp:124
+#: LabelDialog.cpp:126
msgid "Insert &After"
msgstr "&Achteraan invoegen"
-#: LabelDialog.cpp:125
+#: LabelDialog.cpp:127
msgid "Insert &Before"
msgstr "&Vooraan invoegen"
# niet ideaal om de _i te gebruiken, maar het is even niet anders.
-#: LabelDialog.cpp:127 Menus.cpp:234
+#: LabelDialog.cpp:129
msgid "&Import..."
msgstr "&Importerenâ¦"
-#: LabelDialog.cpp:163
+#: LabelDialog.cpp:157
msgid "New..."
msgstr "Nieuwâ¦"
-#: LabelDialog.cpp:347
-msgid "You have left blank label names. These will be\n"
+#: LabelDialog.cpp:354
+msgid ""
+"You have left blank label names. These will be\n"
"skipped when repopulating the Label Tracks.\n"
"\n"
"Would you like to go back and provide names?"
-msgstr "Er zijn nog blanco labelnamen. Deze zullen worden\n"
+msgstr ""
+"Er zijn nog blanco labelnamen. Deze zullen worden\n"
"overgeslagen bij het opnieuw vullen van de labelsporen.\n"
"\n"
"Wilt u teruggaan en labelnamen invullen?"
-#: LabelDialog.cpp:350
+#: LabelDialog.cpp:355
+#: LangChoice.cpp:130
msgid "Confirm"
msgstr "Bevestigen"
-#: ../src/Menus.cpp:2628
+#: LabelDialog.cpp:516
+#: Menus.cpp:4273
msgid "Select a text file containing labels..."
msgstr "Selecteer een tekstbestand met labelsâ¦"
-#: ../src/Menus.cpp:2632
+#: LabelDialog.cpp:520
+#: Menus.cpp:4277
msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
msgstr "Tekstbestanden (*.txt)|*.txt|Alle bestanden (*.*)|*.*"
-#: ../src/Menus.cpp:2644 ../src/Project.cpp:1820 ../src/Project.cpp:1828
-#: ../src/import/ImportMIDI.cpp:31
+#: LabelDialog.cpp:534
+#: Menus.cpp:4289
+#: Project.cpp:2116
+#: Project.cpp:2124
msgid "Could not open file: "
msgstr "Kon bestand niet openen:"
-#: LabelDialog.cpp:549
+#: LabelDialog.cpp:560
msgid "No labels to export."
msgstr "Geen labels om te exporteren."
# Venstertitel
-#: ../src/Menus.cpp:1355
+#: LabelDialog.cpp:566
+#: Menus.cpp:2626
msgid "Export Labels As:"
msgstr "Labels exporteren als:"
-#: ../src/Menus.cpp:1353
+#: LabelDialog.cpp:568
+#: Menus.cpp:2624
msgid "labels.txt"
msgstr "labels.txt"
-#: LabelDialog.cpp:690
+#: LabelDialog.cpp:703
msgid "New Label Track"
msgstr "Nieuw labelspoor"
# voer de naam van het spoor in
-#: LabelDialog.cpp:691
+#: LabelDialog.cpp:704
msgid "Enter track name"
msgstr "Naam van het spoor invoeren"
-#: LabelDialog.cpp:692 LabelDialog.h:50 LabelTrack.cpp:87 Menus.cpp:645
-msgid "&Label Track"
-msgstr "&Labelspoor"
+#: LabelDialog.cpp:705
+#: LabelDialog.h:52
+#: LabelTrack.cpp:92
+msgid "Label Track"
+msgstr "Labelspoor"
-#: ../src/LangChoice.cpp:47
+#: LangChoice.cpp:58
msgid "Audacity First Run"
msgstr "Audacity eerste keer opgestart"
-#: ../src/LangChoice.cpp:74
+#: LangChoice.cpp:90
msgid "Choose Language for Audacity to use:"
msgstr "Kies de taal die Audacity moet gebruiken:"
-#: ../src/Legacy.cpp:337
+#: LangChoice.cpp:125
+#, c-format
+msgid "The language you have chosen, %s (%s), is not the same as the system language, %s (%s)."
+msgstr "De taal die u gekozen heeft, %s (%s), is niet dezelfde als de taal van het systeem, %s (%s)."
+
+#: Legacy.cpp:372
#, c-format
-msgid "Converted a 1.0 project file to the new format.\n"
+msgid ""
+"Converted a 1.0 project file to the new format.\n"
"The old file has been saved as '%s'"
-msgstr "Een versie 1.0 projectbestand is omgezet naar het nieuwe format.\n"
+msgstr ""
+"Een versie 1.0 projectbestand is omgezet naar het nieuwe format.\n"
"Het oude bestand is opgeslagen als â%sâ"
-#: ../src/Legacy.cpp:338
+#: Legacy.cpp:373
msgid "Opening Audacity Project"
msgstr "Audacity-project wordt geopend"
-#: ../src/Menus.cpp:139
+#: Menus.cpp:196
msgid "&File"
msgstr "&Bestand"
-#: ../src/Menus.cpp:141
-msgid "&New\tCtrl+N"
-msgstr "&Nieuw\tCtrl+N"
+#: Menus.cpp:215
+msgid "&Close"
+msgstr "&Sluiten"
-#: ../src/Menus.cpp:143
-msgid "&Open...\tCtrl+O"
-msgstr "&Openenâ¦\tCtrl+O"
-
-# de 's' werd al gebruikt voor op_slaan
-#: ../src/Menus.cpp:145
-msgid "&Close\tCtrl+W"
-msgstr "Sl&uiten\tCtrl+W"
+#: Menus.cpp:218
+msgid "&Save Project"
+msgstr "Project op&slaan"
-#: ../src/Menus.cpp:146
-msgid "&Save Project\tCtrl+S"
-msgstr "Project op&slaan\tCtrl+S"
-
-#: ../src/Menus.cpp:150
+#: Menus.cpp:221
msgid "Save Project &As..."
msgstr "Project opslaan &alsâ¦"
-#: Menus.cpp:212
+#: Menus.cpp:223
msgid "Save Compressed Copy of Project..."
-msgstr ""
+msgstr "Gecomprimeerde kopie van project opslaan"
-#: Menus.cpp:223
+#: Menus.cpp:227
msgid "Chec&k Dependencies..."
msgstr "Afhankelijkheids&controleâ¦"
-#: Menus.cpp:183
+#: Menus.cpp:231
msgid "Open Me&tadata Editor..."
msgstr "Me&tadata-editor openenâ¦"
-#: import/ImportRaw.cpp:447
+#: Menus.cpp:239
+#: import/ImportRaw.cpp:421
msgid "&Import"
msgstr "I&mporteren"
-#: Menus.cpp:236
-msgid "&Audio...\tCtrl+Shift+I"
-msgstr "&Audioâ¦\tCtrl+Shift+I"
+#: Menus.cpp:241
+msgid "&Audio..."
+msgstr "&Audio..."
-#: Menus.cpp:237
+#: Menus.cpp:242
msgid "&Labels..."
msgstr "&Labelsâ¦"
-#: Menus.cpp:238
+#: Menus.cpp:244
msgid "&MIDI..."
msgstr "&MIDIâ¦"
-#: Menus.cpp:239
+#: Menus.cpp:246
msgid "&Raw Data..."
msgstr "&Raw dataâ¦"
-#: Menus.cpp:251 Menus.cpp:280
+#: Menus.cpp:261
msgid "Expo&rt Selection..."
msgstr "Selectie expo&rterenâ¦"
-#: ../src/Menus.cpp:173
+#: Menus.cpp:269
msgid "Export &Labels..."
msgstr "&Labels exporterenâ¦"
# meerdere sporen tegelijk exporteren naar verschillende bestanden.
-#: ../src/Menus.cpp:174
+#: Menus.cpp:272
msgid "Export &Multiple..."
msgstr "&Meervoudig exporterenâ¦"
-#: Menus.cpp:257
+#: Menus.cpp:276
msgid "Export MIDI..."
-msgstr ""
+msgstr "MIDI &Exporteren..."
-#: Menus.cpp:247
-msgid "CleanSpeech C&hain..."
-msgstr ""
+#: Menus.cpp:282
+msgid "Appl&y Chain..."
+msgstr "Opdrachtenreeks toe&passenâ¦"
-#: Menus.cpp:340 Menus.cpp:354
+#: Menus.cpp:285
msgid "Edit C&hains..."
msgstr "Opdrachtenreeksen be&werkenâ¦"
-#: Menus.cpp:249
+#: Menus.cpp:288
msgid "Export CleanSpeech &Presets..."
-msgstr ""
+msgstr "CleanSpeech &presets exporteren..."
-#: Menus.cpp:250
+#: Menus.cpp:289
msgid "I&mport CleanSpeech Presets..."
-msgstr ""
-
-#: Menus.cpp:352
-msgid "Appl&y Chain..."
-msgstr "Opdrachtenreeks toe&passenâ¦"
+msgstr "CleanSpeech presets i&mporteren..."
-#: Menus.cpp:358
+#: Menus.cpp:296
msgid "&Upload File..."
msgstr "&Bestand uploadenâ¦"
-#: Menus.cpp:363
+#: Menus.cpp:301
msgid "Pa&ge Setup..."
msgstr "Pa&ginainstellingâ¦"
-#: Menus.cpp:364
+#: Menus.cpp:304
msgid "&Print..."
msgstr "Af&drukkenâ¦"
-#: Menus.cpp:382 Menus.cpp:385
-msgid "E&xit\tCtrl+Q"
-msgstr "A&fsluiten\tCtrl+Q"
+#: Menus.cpp:313
+msgid "E&xit"
+msgstr "&Sluiten"
-#: ../src/Menus.cpp:227
+#: Menus.cpp:323
msgid "&Edit"
msgstr "Be&werken"
-#: ../src/Menus.cpp:231
-msgid "&Undo\tCtrl+Z"
-msgstr "&Herstellen\tCtrl+Z"
+# ongedaan maken/herstellen
+#: Menus.cpp:328
+msgid "&Undo"
+msgstr "&Herstellen"
-#: ../src/Menus.cpp:239
+#: Menus.cpp:340
msgid "&Redo"
msgstr "&Opnieuw"
-#: ../src/Menus.cpp:252
-msgid "Cu&t\tCtrl+X"
-msgstr "K&nippen\tCtrl+X"
+#: Menus.cpp:346
+msgid "Cu&t"
+msgstr "&Knippen"
-#: Menus.cpp:420
-msgid "Spl&it Cut\tCtrl+Alt+X"
-msgstr "Spl&itsen+knippen\tCtrl+Alt+X"
+#: Menus.cpp:349
+msgid "Spl&it Cut"
+msgstr "Spl&itsen+knippen"
-#: ../src/Menus.cpp:253
-msgid "&Copy\tCtrl+C"
-msgstr "&Kopiëren\tCtrl+C"
+#: Menus.cpp:350
+msgid "&Copy"
+msgstr "&Kopiëren"
-#: ../src/Menus.cpp:254
-msgid "&Paste\tCtrl+V"
-msgstr "&Plakken\tCtrl+V"
+#: Menus.cpp:353
+msgid "&Paste"
+msgstr "&Plakken"
-# uitknippen, alles wat niet geselecteerd is, wordt afgeknipt
-#: Menus.cpp:426
-msgid "Tri&m\tCtrl+T"
-msgstr "&Uitknippen\tCtrl+T"
+# dit bericht verschijnt oa bij Undo/Redo en de geschiedenis.
+#: Menus.cpp:356
+msgid "Tri&m"
+msgstr "Tri&m"
-#: ../src/Menus.cpp:260
-msgid "&Delete\tCtrl+K"
-msgstr "&Verwijderen\tCtrl+K"
+#: Menus.cpp:360
+#: Menus.cpp:399
+msgid "&Delete"
+msgstr "&Verwijderen"
-#: Menus.cpp:429
-msgid "Split D&elete\tCtrl+Alt+K"
-msgstr "Splitsen+v&erwijderen\tCtrl+Alt+K"
+#: Menus.cpp:361
+msgid "Split D&elete"
+msgstr "Splitsen+v&erwijderen"
-#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
-msgstr ""
+# staat in het menu Bewerken
+#: Menus.cpp:362
+msgid "Silence Audi&o"
+msgstr "Audi&o stil maken"
-#: Menus.cpp:432
-msgid "Sp&lit\tCtrl+I"
-msgstr "Sp&litsen\tCtrl+I"
+#: Menus.cpp:366
+msgid "Sp&lit"
+msgstr "Sp&litsen"
-#: Menus.cpp:443
-msgid "Split Ne&w\tCtrl+Alt+I"
-msgstr "A&fsplitsen\tCtrl+Alt+I"
+#: Menus.cpp:370
+msgid "Split Ne&w"
+msgstr "Nieu&w splitsen"
-# samenvoegen/voegen
-#: Menus.cpp:442
-msgid "&Join\tCtrl+J"
-msgstr "S&amenvoegen\tCtrl+J"
+#: Menus.cpp:374
+#: Menus.cpp:406
+msgid "&Join"
+msgstr "&Samenvoegen"
-#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
-msgstr ""
+# staat in het menu Bewerken
+#: Menus.cpp:375
+#: Menus.cpp:407
+msgid "Detac&h at Silences"
+msgstr "&Losmaken bij stiltes"
-#: Menus.cpp:445
-msgid "Duplic&ate\tCtrl+D"
-msgstr "&Dupliceren\tCtrl+D"
+#: Menus.cpp:376
+msgid "Duplic&ate"
+msgstr "Duplic&eren"
-#: Menus.cpp:400 Menus.cpp:639
+#: Menus.cpp:381
+#: Menus.cpp:617
msgid "Stereo Trac&k to Mono"
-msgstr ""
+msgstr "&Van stereo naar mono"
-#: Menus.cpp:407
+#: Menus.cpp:390
msgid "La&beled Regions"
-msgstr ""
+msgstr "&Gelabelde gebieden"
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:460
-msgid "&Cut\tAlt+X"
-msgstr "K&nippen\tAlt+X"
+#: Menus.cpp:393
+msgid "&Cut"
+msgstr "&Knippen"
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:465
-msgid "&Split Cut\tShift+Alt+X"
-msgstr "&Splitsen+knippen\tShift+Alt+X"
+#: Menus.cpp:394
+msgid "&Split Cut"
+msgstr "&Splitsen+knippen"
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:470
-msgid "Co&py\tShift+Alt+C"
-msgstr "&Kopiëren\tShift+Alt+C"
+#: Menus.cpp:395
+msgid "Co&py"
+msgstr "Ko&piëren"
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:476
-msgid "&Delete\tAlt+K"
-msgstr "&Verwijderen\tAlt+K"
+#: Menus.cpp:400
+msgid "Sp&lit Delete"
+msgstr "Sp&litsen+verwijderen"
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:481
-msgid "Sp&lit Delete\tShift+Alt+K"
-msgstr "Sp&litsen+verwijderen\tShift+Alt+K"
+#: Menus.cpp:401
+msgid "Sile&nce"
+msgstr "Sti<e"
-# Stilmaken voor gelabelde gebieden
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:486
-msgid "Sile&nce\tAlt+L"
-msgstr "S&tilmaken\tAlt+L"
+#: Menus.cpp:405
+msgid "Spli&t"
+msgstr "Spli&tsen"
-# vergelijk Sp&litsen in het editmenu
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:492
-msgid "Spli&t\tAlt+I"
-msgstr "Spli&tsen\tAlt+I"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:497
-msgid "&Join\tAlt+J"
-msgstr "S&amenvoegen\tAlt+J"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
-msgstr ""
-
-#: Menus.cpp:456
+#: Menus.cpp:413
msgid "&Select"
-msgstr ""
+msgstr "&Selecteren"
-#: ../src/Menus.cpp:269
-msgid "&All\tCtrl+A"
-msgstr "&Alles\tCtrl+A"
+#: Menus.cpp:416
+msgid "&All"
+msgstr "&Alles"
-# geen/niets
-#: Menus.cpp:465
-msgid "&None\tCtrl+Shift+A"
-msgstr "&Niets\tCtrl+Shift+A"
+#: Menus.cpp:417
+msgid "&None"
+msgstr "Gee&n"
-#: Menus.cpp:421
-msgid "&Left at Playback Position\t["
-msgstr "Van afspeelpositie naar &links\t["
+#: Menus.cpp:419
+msgid "&Left at Playback Position"
+msgstr "Van afspeelpositie naar &links"
-#: Menus.cpp:422
-msgid "&Right at Playback Position\t]"
-msgstr "Van afspeelpositie naar &rechts\t]"
+#: Menus.cpp:420
+msgid "&Right at Playback Position"
+msgstr "Van afspeelpositie naar &rechts"
-#: Menus.cpp:426
-msgid "Track &Start to Cursor\tShift+J"
-msgstr "Van het begin tot de cursorpositie\tShift+J"
+#: Menus.cpp:424
+msgid "Track &Start to Cursor"
+msgstr "Van het begin tot de cur&sorpositie"
-#: Menus.cpp:427
-msgid "Cursor to Track &End\tShift+K"
-msgstr "Van de cursorpositie tot het einde\tShift+K"
+#: Menus.cpp:425
+msgid "Cursor to Track &End"
+msgstr "Van de cursorpositie tot het &einde"
-#: Menus.cpp:525
-msgid "Find &Zero Crossings\tZ"
-msgstr "Nulpunten &zoeken\tZ"
+#: Menus.cpp:431
+msgid "Find &Zero Crossings"
+msgstr "Nulpunten &zoeken"
-#: Menus.cpp:476
+#: Menus.cpp:435
msgid "Mo&ve Cursor"
-msgstr ""
+msgstr "&Cursor verplaatsen"
#: Menus.cpp:437
msgid "to Selection Star&t"
@@ -1763,1222 +2001,1285 @@ msgid "to Selection En&d"
msgstr "naar ei&nde selectie"
# naar het begin van het spoor/naar begin spoor/naar het begin
-#: Menus.cpp:442
-msgid "to Track &Start\tJ"
-msgstr "naar het &begin\tJ"
+#: Menus.cpp:440
+msgid "to Track &Start"
+msgstr "naar het &begin"
-#: Menus.cpp:443
-msgid "to Track &End\tK"
-msgstr "naar het &einde\tK"
+#: Menus.cpp:441
+msgid "to Track &End"
+msgstr "naar het &einde"
# region=selectie?
# gebied opslaan/bewaren/onthouden. (is ws. meer het laatste)
-#: Menus.cpp:450
+#: Menus.cpp:449
msgid "Re&gion Save"
msgstr "&Gebied opslaan"
-#: Menus.cpp:451
+#: Menus.cpp:452
msgid "Regio&n Restore"
msgstr "Gebied &herstellen"
-#: Menus.cpp:503
+# play region > [lock][unlock]
+#: Menus.cpp:460
msgid "Pla&y Region"
-msgstr ""
+msgstr "Gebied afspelen"
-#: Menus.cpp:463
+#: Menus.cpp:462
msgid "&Lock"
msgstr "&Vastzetten"
-#: Menus.cpp:464
+#: Menus.cpp:465
msgid "&Unlock"
msgstr "&Losmaken"
-#: ../src/Menus.cpp:311
-msgid "Turn Snap-To On"
-msgstr "Raster (Snap-To) aanzetten"
-
-#: ../src/Menus.cpp:312
-msgid "Turn Snap-To Off"
-msgstr "Raster (Snap-To) uitzetten"
-
-#: ../src/Menus.cpp:313
-msgid "Turn Grid Snap On"
-msgstr "Raster aanzetten"
-
-#: ../src/Menus.cpp:314
-msgid "Turn Grid Snap Off"
-msgstr "Raster uitzetten"
+#: Menus.cpp:485
+msgid "Pre&ferences..."
+msgstr "&Voorkeurenâ¦"
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
-#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr ""
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
-msgstr ""
-
-#: ../src/Menus.cpp:345
+#: Menus.cpp:495
msgid "&View"
msgstr "Beel&d"
-#: ../src/Menus.cpp:347
-msgid "Zoom &In\tCtrl+1"
-msgstr "In&zoomen\tCtrl+1"
+#: Menus.cpp:498
+msgid "Zoom &In"
+msgstr "&Inzoomen"
-#: ../src/Menus.cpp:350
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "&Normale weergave\tCtrl+2"
+#: Menus.cpp:501
+msgid "Zoom &Normal"
+msgstr "&Normale weergave"
-#: ../src/Menus.cpp:351
-msgid "Zoom &Out\tCtrl+3"
-msgstr "&Uitzoomen\tCtrl+3"
+#: Menus.cpp:502
+msgid "Zoom &Out"
+msgstr "Uitz&oomen"
# in overeenstemming met het Fit Vertically
-#: ../src/Menus.cpp:354
-msgid "&Fit in Window\tCtrl+F"
-msgstr "&Horizontaal inpassen\tCtrl+F"
+#: Menus.cpp:506
+msgid "&Fit in Window"
+msgstr "&Horizontaal inpassen"
-#: ../src/Menus.cpp:355
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "&Verticaal inpassen\tCtrl+Shift+F"
+#: Menus.cpp:507
+msgid "Fit &Vertically"
+msgstr "&Verticaal inpassen"
-#: ../src/Menus.cpp:356
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "&Inzoomen op de selectie\tCtrl+E"
+#: Menus.cpp:508
+msgid "&Zoom to Selection"
+msgstr "&Inzoomen op de selectie"
-#: Menus.cpp:603
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
-msgstr "&Alle sporen opvouwen\tCtrl+Shift+C"
+#: Menus.cpp:512
+msgid "&Collapse All Tracks"
+msgstr "&Alle sporen opvouwen"
-#: Menus.cpp:604
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
-msgstr "Alle &sporen uitvouwen\tCtrl+Shift+X"
+#: Menus.cpp:513
+msgid "E&xpand All Tracks"
+msgstr "Alle &sporen uitvouwen"
-#: Menus.cpp:510
+#: Menus.cpp:517
msgid "&Show Clipping"
msgstr "&Oversturing opsporen"
# Bewerkingen/bewerkingsgeschiedenis/geschiedenis
-#: ../src/Menus.cpp:364
+#: Menus.cpp:522
msgid "&History..."
msgstr "&Geschiedenisâ¦"
-#: Menus.cpp:566
+#: Menus.cpp:530
msgid "&Toolbars"
-msgstr ""
+msgstr "&Werkbalken"
-#: Menus.cpp:526
+#: Menus.cpp:532
msgid "&Control Toolbar"
msgstr "&Bedieningsknoppen"
-#: Menus.cpp:527
+#: Menus.cpp:533
msgid "&Device Toolbar"
msgstr "In/&uitvoerapparaten"
-#: Menus.cpp:528
+#: Menus.cpp:534
msgid "&Edit Toolbar"
msgstr "Be&werkingsknoppen"
-#: Menus.cpp:529
+#: Menus.cpp:535
msgid "&Meter Toolbar"
msgstr "&Vu-meters"
-#: Menus.cpp:530
+#: Menus.cpp:536
msgid "Mi&xer Toolbar"
msgstr "Mi&xer"
-#: Menus.cpp:531
+#: Menus.cpp:537
msgid "&Selection Toolbar"
msgstr "&Selectiebalk"
-#: Menus.cpp:532
+#: Menus.cpp:538
msgid "T&ools Toolbar"
msgstr "&Tools-werkbalk"
-#: Menus.cpp:533
+#: Menus.cpp:539
msgid "Transcri&ption Toolbar"
msgstr "S&nelheidsinstellingen"
# terugzetten/herstellen
-#: Menus.cpp:535
+#: Menus.cpp:543
msgid "&Reset Toolbars"
msgstr "We&rkbalken herstellen"
-#: Menus.cpp:537
+#: Menus.cpp:551
msgid "!Simplified View"
-msgstr ""
+msgstr "!Vereenvoudigd beeld"
+# het hoger of lager afspelen
+# Snelheidsschuif/afspeelsnelheid/transcriptie
+# dit wordt: Audacity %s-werkbalk.
#. i18n-hint: 'Transport' is the name given to the set of controls that
#. play, record, pause etc.
-#: Menus.cpp:587
+#: Menus.cpp:562
msgid "T&ransport"
-msgstr ""
+msgstr "Afspeelsnelheid"
-#: Menus.cpp:591
-msgid "Play\tSpace"
-msgstr ""
+# afspelen/spelen/play
+#: Menus.cpp:565
+#: toolbars/ControlToolBar.cpp:173
+msgid "Play"
+msgstr "Afspelen"
-#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
-msgstr ""
+#: Menus.cpp:566
+msgid "&Loop Play"
+msgstr "Herhaa&ldelijk afspelen"
-#: Menus.cpp:593
-msgid "&Pause\tP"
-msgstr ""
+#: Menus.cpp:567
+msgid "&Pause"
+msgstr "&Pauzeren"
-#: Menus.cpp:596
-msgid "&Stop\tSpace"
-msgstr ""
+#: Menus.cpp:570
+msgid "&Stop"
+msgstr "&Stoppen"
-#: ../src/Menus.cpp:566
-msgid "Skip to Start\tHome"
-msgstr "Naar begin springen\tHome"
+#: Menus.cpp:573
+#: toolbars/ControlToolBar.cpp:208
+msgid "Skip to Start"
+msgstr "Naar begin springen"
-#: ../src/Menus.cpp:567
-msgid "Skip to End\tEnd"
-msgstr "Naar einde springen\tEnd"
+#: Menus.cpp:574
+#: toolbars/ControlToolBar.cpp:209
+msgid "Skip to End"
+msgstr "Naar einde springen"
-#: Menus.cpp:600
-msgid "&Record\tR"
-msgstr ""
+#: Menus.cpp:578
+msgid "&Record"
+msgstr "&Opnemen"
-#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
-msgstr ""
+# Opname tijdsklok/inplannen/plannen/timer/inplannen
+#: Menus.cpp:579
+msgid "&Timer Record..."
+msgstr "&Opname inplannenâ¦"
-#: Menus.cpp:604
-msgid "Append Record\tShift+R"
-msgstr ""
+# append = aansluiten
+# Opname wordt begonnen vanaf het einde van de vorige opname (einde van vorige track)
+#: Menus.cpp:580
+msgid "Append Record"
+msgstr "Aansluitend opnemen"
-#: Menus.cpp:607
+#: Menus.cpp:584
msgid "Overdub (on/off)"
-msgstr ""
+msgstr "Overdub (aan/uit)"
-#: Menus.cpp:609
+#: Menus.cpp:585
msgid "Software Playthrough (on/off)"
-msgstr ""
+msgstr "Softwarematig Playthrough (aan/uit)"
-#: Menus.cpp:612
+#: Menus.cpp:588
msgid "Sound Activated Recording (on/off)"
-msgstr ""
+msgstr "Geluidsgeactiveerd opnemen (aan/uit)"
-#: Menus.cpp:614
+#: Menus.cpp:589
msgid "Sound Activation Level..."
-msgstr ""
+msgstr "Geluidsactivatie-volume..."
-#: Menus.cpp:635
+#: Menus.cpp:597
msgid "&Tracks"
msgstr "&Sporen"
-#: Menus.cpp:629
+# menu: Tracks->Add new... ->Audio track/Label track/Stereo track
+# Sporen->Toevoegen... -> audiospoor/labelspoor/stereospoor
+#: Menus.cpp:602
msgid "Add &New"
-msgstr ""
+msgstr "&Toevoegenâ¦"
-#: Menus.cpp:643
-msgid "&Audio Track\tCtrl+Shift+N"
-msgstr "&Audiospoor\tCtrl+Shift+N"
+#: Menus.cpp:604
+msgid "&Audio Track"
+msgstr "&Audiospoor"
-#: Menus.cpp:644
+#: Menus.cpp:605
msgid "&Stereo Track"
msgstr "&Stereospoor"
-#: Menus.cpp:646 TimeTrack.cpp:44
+#: Menus.cpp:606
+msgid "&Label Track"
+msgstr "&Labelspoor"
+
+#: Menus.cpp:607
msgid "&Time Track"
msgstr "&Tijdspoor"
-#: Menus.cpp:568
+#: Menus.cpp:620
msgid "Mi&x and Render"
msgstr "Mi&xen en doorrekenen"
-#: Menus.cpp:564
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
-msgstr "Mixen en doorrekenen naar nieuw spoor\tCtrl+Shift+M"
+#: Menus.cpp:623
+msgid "Mix and Render to New Track"
+msgstr "Mixen en doorrekenen naar nieuw spoor"
# resampelen
-#: Menus.cpp:662
+#: Menus.cpp:626
msgid "&Resample..."
msgstr "&Resampelenâ¦"
-#: ../src/Menus.cpp:398
+#: Menus.cpp:632
msgid "Remo&ve Tracks"
msgstr "Sporen &verwijderen"
-#: Menus.cpp:592
-msgid "&Mute All Tracks\tCtrl+U"
-msgstr "&Alle sporen dempen\tCtrl+U"
+#: Menus.cpp:638
+msgid "&Mute All Tracks"
+msgstr "&Alle sporen dempen"
-#: Menus.cpp:593
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
-msgstr "All&e sporen afspelen\tCtrl+Shift+U"
+# niets dempen
+# dempen ongedaan maken van alle sporen (veel te lang!)
+#: Menus.cpp:639
+msgid "&UnMute All Tracks"
+msgstr "&Niets dempen"
-#: ../src/Menus.cpp:405
+#: Menus.cpp:644
msgid "Align with &Zero"
msgstr "Op &Nulpunt uitlijnen"
-#: ../src/Menus.cpp:406
+#: Menus.cpp:645
msgid "Align with &Cursor"
msgstr "Uitlijnen op &Cursor"
-#: ../src/Menus.cpp:407
+#: Menus.cpp:646
msgid "Align with Selection &Start"
msgstr "Uitlijnen op &Begin Selectie"
-#: ../src/Menus.cpp:408
+#: Menus.cpp:647
msgid "Align with Selection &End"
msgstr "Uitlijnen op &Einde Selectie"
-#: Menus.cpp:601
+#: Menus.cpp:648
msgid "Align End with Cu&rsor"
msgstr "Einde uitlijnen op &Cursor"
-#: Menus.cpp:602
+#: Menus.cpp:649
msgid "Align End with Selection Star&t"
msgstr "Einde uitlijnen op &Begin Selectie"
-#: Menus.cpp:603
+#: Menus.cpp:650
msgid "Align End with Selection En&d"
msgstr "Einde uitlijnen op &Einde Selectie"
-#: Menus.cpp:604
+#: Menus.cpp:651
msgid "Align Tracks To&gether"
msgstr "&Sporen op elkaar uitlijnen"
-#: Menus.cpp:681
+#: Menus.cpp:653
msgid "&Align Tracks"
-msgstr ""
+msgstr "Sporen &uitlijnen"
-#: Menus.cpp:690
+#: Menus.cpp:668
msgid "Ali&gn and Move Cursor"
-msgstr ""
+msgstr "Uitlijnen en &cursor verplaatsen"
-#: Menus.cpp:697
+#: Menus.cpp:680
msgid "Synchronize MIDI with Audio"
-msgstr ""
+msgstr "Synchroniseer MIDI met audio"
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
-msgstr ""
+#: Menus.cpp:687
+msgid "&Link Audio and Label Tracks"
+msgstr "Audio- en labeltracks koppe&len"
-#: Menus.cpp:705
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "&Label toevoegen bij selectie\tCtrl+B"
+#: Menus.cpp:691
+msgid "Add Label At &Selection"
+msgstr "Label toevoegen bij &selectie"
+
+#: Menus.cpp:694
+msgid "Add Label At &Playback Position"
+msgstr "Label toevoegen bij afs&peelpositie"
-#: Menus.cpp:706
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "Label toevoegen bij afs&peelpositie\tCtrl+M"
+#: Menus.cpp:697
+msgid "&Edit Labels"
+msgstr "Labels be&werken"
-#: Menus.cpp:716
+#: Menus.cpp:703
msgid "S&ort tracks"
-msgstr ""
+msgstr "Sp&oren sorteren op"
-#: Menus.cpp:717
+#: Menus.cpp:705
msgid "by &Start time"
-msgstr ""
+msgstr "op &begintijd"
-#: Menus.cpp:719
+#: Menus.cpp:708
msgid "by &Name"
-msgstr ""
+msgstr "op &naam"
-#: ../src/Menus.cpp:441
+#: Menus.cpp:722
msgid "&Generate"
msgstr "&Genereren"
-#: Menus.cpp:776 Menus.cpp:860 Menus.cpp:922
+#: Menus.cpp:767
+#: Menus.cpp:852
+#: Menus.cpp:922
msgid "Unsorted"
-msgstr ""
+msgstr "Ongesorteerd"
# meervoud is mooier/beter
-#: ../src/Menus.cpp:464
+#: Menus.cpp:789
msgid "Effe&ct"
msgstr "&Effecten"
-#: ../src/Menus.cpp:468
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "Laatste effect herhalen\tCtrl+R"
-
-#: ../src/Menus.cpp:494
+#: Menus.cpp:873
msgid "&Analyze"
msgstr "&Analyseren"
+#: Menus.cpp:875
+msgid "Contrast..."
+msgstr "Contrast..."
+
# berekenen/tonen
-#: Menus.cpp:686
+#: Menus.cpp:878
msgid "Plot Spectrum..."
msgstr "Spectrum tonenâ¦"
-#. i18n-hint: The name of the Help menu
-#: ../src/Menus.cpp:521 ../src/Menus.cpp:537
+#: Menus.cpp:945
+#: Menus.cpp:948
msgid "&Help"
-msgstr "&Hulp"
+msgstr "&Help"
-#: Menus.cpp:829
+#: Menus.cpp:952
msgid "&About Audacity CleanSpeech..."
msgstr "&Informatie over Audacity CleanSpeechâ¦"
-#: Menus.cpp:735
+#: Menus.cpp:958
msgid "&Show Welcome Message..."
msgstr "&Welkomstbericht tonenâ¦"
-#: Menus.cpp:736
-msgid "&Index..."
-msgstr "&Indexâ¦"
-
#: Menus.cpp:959
+msgid "&Help..."
+msgstr "&Help..."
+
+#: Menus.cpp:960
msgid "Show &Log..."
-msgstr ""
+msgstr "Toon &log..."
-#: Menus.cpp:790
+#: Menus.cpp:966
msgid "&Screenshot Tools..."
msgstr "&Schermafdrukkenâ¦"
# prestatietest/benchmark uitvoeren
-#: ../src/Menus.cpp:530
+#: Menus.cpp:971
msgid "&Run Benchmark..."
msgstr "&Prestaties testenâ¦"
-#: Menus.cpp:737
+#: Menus.cpp:976
msgid "&Audio Device Info..."
msgstr "&Audio-apparaat infoâ¦"
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
-msgstr ""
+#: Menus.cpp:987
+msgid "Move backward from toolbars to tracks"
+msgstr "Achterwaarts doorlopen van werkbalken naar sporen"
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
-msgstr ""
+#: Menus.cpp:988
+msgid "Move forward from toolbars to tracks"
+msgstr "Voorwaarts doorlopen van werkbalken naar sporen"
# overal Tool (functie) weglaten en werkwoord gebruiken
-#: ../src/Menus.cpp:546
-msgid "Selection Tool\tF1"
-msgstr "Selecteren\tF1"
+#: Menus.cpp:990
+#: toolbars/ToolsToolBar.cpp:147
+#: toolbars/ToolsToolBar.cpp:186
+msgid "Selection Tool"
+msgstr "Selecteren"
# Tool (functie) weglaten en werkwoord gebruiken
-#: ../src/Menus.cpp:547
-msgid "Envelope Tool\tF2"
-msgstr "Verloop\tF2"
+#: Menus.cpp:991
+#: toolbars/ToolsToolBar.cpp:148
+#: toolbars/ToolsToolBar.cpp:187
+msgid "Envelope Tool"
+msgstr "Verloop"
# Overal tool weglaten en werkwoord gebruiken
-#: ../src/Menus.cpp:548
-msgid "Draw Tool\tF3"
-msgstr "Tekenen\tF3"
+#: Menus.cpp:992
+#: toolbars/ToolsToolBar.cpp:151
+#: toolbars/ToolsToolBar.cpp:188
+msgid "Draw Tool"
+msgstr "Tekenen"
# het woord Tool niet vertalen hier
-#: ../src/Menus.cpp:549
-msgid "Zoom Tool\tF4"
-msgstr "Zoomen\tF4"
+#: Menus.cpp:993
+#: toolbars/ToolsToolBar.cpp:150
+#: toolbars/ToolsToolBar.cpp:189
+msgid "Zoom Tool"
+msgstr "Zoomen"
# Dit is de tooltip en de tekst van de statusbalk.
# Bij alle andere tools wordt ook het hele werkwoord
# gebruikt, vandaar dus geen: Tijdverschuiving.
# Ook het woord Tool is hier met reden niet meevertaald.
-#: ../src/Menus.cpp:550
-msgid "Time Shift Tool\tF5"
-msgstr "Tijd verschuiven\tF5"
-
-# combinatie modus/stand
-#: ../src/Menus.cpp:551
-msgid "Multi Tool\tF6"
-msgstr "Combinatiestand\tF6"
-
-#: ../src/Menus.cpp:553
-msgid "Next Tool\tD"
-msgstr "Volgende tool\tD"
+#: Menus.cpp:994
+#: toolbars/ToolsToolBar.cpp:149
+msgid "Time Shift Tool"
+msgstr "Tijd verschuiven"
-#: ../src/Menus.cpp:554
-msgid "Previous Tool\tA"
-msgstr "Vorige tool\tA"
+#: Menus.cpp:995
+#: toolbars/ToolsToolBar.cpp:191
+msgid "Multi Tool"
+msgstr "Combinatietool"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
-msgstr ""
+msgid "Next Tool"
+msgstr "Volgende tool"
-#: ../src/Menus.cpp:557
-msgid "Stop\tS"
-msgstr "Stoppen\tS"
+#: Menus.cpp:998
+msgid "Previous Tool"
+msgstr "Vorige tool"
-#: ../src/Menus.cpp:558
-msgid "Pause\tP"
-msgstr "Pauzeren\tP"
+#: Menus.cpp:1000
+msgid "Play/Stop"
+msgstr "Afspelen/Stoppen"
-#: ../src/Menus.cpp:559
-msgid "Record\tR"
-msgstr "Opnemen\tR"
+#: Menus.cpp:1001
+msgid "Play/Stop and Set Cursor"
+msgstr "Afspelen/stoppen en op cursor zetten"
-#: Menus.cpp:788
-msgid "Record Append\tShift+R"
-msgstr ""
-
-#: Menus.cpp:790
-msgid "Play/Stop and Set Cursor\tShift+A"
-msgstr ""
-
-#: ../src/Menus.cpp:561
-msgid "Play One Second\t1"
-msgstr "Een seconde afspelen\t1"
+#: Menus.cpp:1002
+msgid "Play One Second"
+msgstr "Een seconde afspelen"
# wat doet dit precies? (tino)
-#: ../src/Menus.cpp:562
-msgid "Play To Selection\tB"
-msgstr "Afspelen op selectie\tB"
+#: Menus.cpp:1003
+msgid "Play To Selection"
+msgstr "Afspelen op selectie"
-#: ../src/Menus.cpp:563
-msgid "Play Looped\tL"
-msgstr "Herhaaldelijk afspelen\tL"
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
-
-#: Menus.cpp:873
-msgid "Play Cut Preview\tC"
-msgstr "Luistervoorbeeld snijpunt\tC"
+#: Menus.cpp:1004
+msgid "Play Cut Preview"
+msgstr "Luistervoorbeeld snijpunt"
-#: ../src/Menus.cpp:569
-msgid "Selection to Start\tShift+Home"
-msgstr "Selecteren vanaf Begin\tShift+Home"
+#: Menus.cpp:1006
+msgid "Selection to Start"
+msgstr "Selectie naar begin"
-#: ../src/Menus.cpp:570
-msgid "Selection to End\tShift+End"
-msgstr "Selecteren tot Einde\tCtrl+End"
+#: Menus.cpp:1007
+msgid "Selection to End"
+msgstr "Selectie naar einde"
-#: ../src/Menus.cpp:572
-msgid "DeleteKey\tBackspace"
-msgstr "DeleteKey\tBackspace"
+#: Menus.cpp:1009
+msgid "DeleteKey"
+msgstr "Verwijderen"
-#: ../src/Menus.cpp:577
-msgid "DeleteKey2\tDelete"
-msgstr "DeleteKey2\tDelete"
+#: Menus.cpp:1013
+msgid "DeleteKey2"
+msgstr "Verwijderen2"
-#: Menus.cpp:892
-msgid "Seek left short period during playback\tLeft"
-msgstr "Tijdens afspelen klein stapje terug spoelen\tLeft"
+#: Menus.cpp:1019
+msgid "Short seek left during playback"
+msgstr "Tijdens afspelen klein stapje terugspoelen"
-#: Menus.cpp:893
-msgid "Seek right short period during playback\tRight"
-msgstr "Tijdens afspelen klein stapje vooruit spoelen\tRight"
+#: Menus.cpp:1020
+msgid "Short seek right during playback"
+msgstr "Tijdens afspelen klein stapje vooruitspoelen"
-#: Menus.cpp:894
-msgid "Seek left long period during playback\tShift+Left"
-msgstr "Tijdens afspelen grote stap terug spoelen\tShift+Left"
+#: Menus.cpp:1021
+msgid "Long seek left during playback"
+msgstr "Tijdens afspelen grote stap terugspoelen"
-#: Menus.cpp:895
-msgid "Seek right long period during playback\tShift+Right"
-msgstr "Tijdens afspelen grote stap vooruit spoelen\tShift+Right"
+#: Menus.cpp:1022
+msgid "Long Seek right during playback"
+msgstr "Tijdens afspelen grote stap vooruitspoelen"
# bovenliggend/onderliggend vorige/volgende
-#: Menus.cpp:899
-msgid "Move Focus to Previous Track\tUp"
-msgstr "Focus naar vorige spoor\tUp"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous Track"
+msgstr "Focus naar vorige spoor"
-#: Menus.cpp:900
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
-msgstr "Focus naar vorige spoor en wijzig selectie\tShift+Up"
+#: Menus.cpp:1028
+msgid "Move Focus to Previous and Select"
+msgstr "Focus naar vorige spoor en selecteren"
-#: Menus.cpp:901
-msgid "Move Focus to Next Track\tDown"
-msgstr "Focus naar volgende spoor\tDown"
+#: Menus.cpp:1029
+msgid "Move Focus to Next Track"
+msgstr "Focus naar volgende spoor"
-#: Menus.cpp:902
-msgid "Move Focus to Next and Change Selection\tShift+Down"
-msgstr "Focus naar volgende spoor en wijzig selectie\tShift+Down"
+#: Menus.cpp:1030
+msgid "Move Focus to Next and Select"
+msgstr "Focus naar volgende spoor en selecteren"
# return = enter
-#: Menus.cpp:903
-msgid "Toggle Focused Track\tReturn"
-msgstr "Focus op spoor aan/uit\tReturn"
-
-#: Menus.cpp:904
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr "Focus op spoor aan/uit\tNUMPAD_ENTER"
-
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
-msgstr ""
+#: Menus.cpp:1031
+#: Menus.cpp:1032
+msgid "Toggle Focused Track"
+msgstr "Focus op spoor aan/uit"
-#: ../src/Menus.cpp:582
-msgid "Cursor Left\tLeft"
-msgstr "Cursor links\tLeft"
+#: Menus.cpp:1034
+msgid "Cursor Left"
+msgstr "Cursor links"
-#: ../src/Menus.cpp:583
-msgid "Cursor Right\tRight"
-msgstr "Cursor rechts\tRight"
+#: Menus.cpp:1035
+msgid "Cursor Right"
+msgstr "Cursor rechts"
-#: Menus.cpp:820
-msgid "Cursor Short Jump Left\t,"
-msgstr "Cursor korte sprong links\t,"
+#: Menus.cpp:1036
+msgid "Cursor Short Jump Left"
+msgstr "Cursor korte sprong links"
-#: Menus.cpp:821
-msgid "Cursor Short Jump Right\t."
-msgstr "Cursor korte sprong rechts\t."
+#: Menus.cpp:1037
+msgid "Cursor Short Jump Right"
+msgstr "Cursor korte sprong rechts"
-#: Menus.cpp:822
-msgid "Cursor Long Jump Left\tShift+,"
-msgstr "Cursor grote sprong links\tShift+,"
+#: Menus.cpp:1038
+msgid "Cursor Long Jump Left"
+msgstr "Cursor grote sprong links"
-#: Menus.cpp:823
-msgid "Cursor Long Jump Right\tShift+."
-msgstr "Cursor grote sprong rechts\tShift+."
+#: Menus.cpp:1039
+msgid "Cursor Long Jump Right"
+msgstr "Cursor grote sprong rechts"
-# uitbreiden/vergroten
-#: ../src/Menus.cpp:584
-msgid "Selection Extend Left\tShift+Left"
-msgstr "Selectie naar links vergroten\tShift+Left"
+#: Menus.cpp:1041
+msgid "Selection Extend Left"
+msgstr "Selectie uitbreiden naar links"
-# uitbreiden/vergroten
-#: ../src/Menus.cpp:585
-msgid "Selection Extend Right\tShift+Right"
-msgstr "Selectie naar rechts vergroten\tShift+Right"
+#: Menus.cpp:1042
+msgid "Selection Extend Right"
+msgstr "Selectie uitbreiden naar rechts"
-# (or extend) weggelaten om dat je de rand niet kunt uitbreiden,
+# (or extend) weggelaten om dat je de rand niet kunt uitbreiden,
# de selectie zelf wel.
-#: Menus.cpp:828
+#: Menus.cpp:1044
msgid "Set (or Extend) Left Selection"
msgstr "Linker selectierand instellen"
-#: Menus.cpp:829
+#: Menus.cpp:1045
msgid "Set (or Extend) Right Selection"
msgstr "Rechter selectierand instellen"
-#: ../src/Menus.cpp:586
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "Selectie naar links verkleinen\tCtrl+Shift+Right"
+#: Menus.cpp:1047
+msgid "Selection Contract Left"
+msgstr "Selectie naar links verkleinen"
-#: ../src/Menus.cpp:587
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "Selectie naar rechts verkleinen\tCtrl+Shift+Left"
+#: Menus.cpp:1048
+msgid "Selection Contract Right"
+msgstr "Selectie naar links verkleinen"
-#: Menus.cpp:916
-msgid "Change pan on focused track\tShift+P"
-msgstr "Balans wijzigen op spoor met focus\tShift+P"
+#: Menus.cpp:1050
+msgid "Change pan on focused track"
+msgstr "Balans wijzigen op spoor met focus"
-#: Menus.cpp:917
-msgid "Pan left on focused track\tAlt+Shift+Left"
-msgstr "Balans naar links op spoor met focus\tAlt+Shift+Left"
+#: Menus.cpp:1051
+msgid "Pan left on focused track"
+msgstr "Balans naar links op spoor met focus"
-#: Menus.cpp:918
-msgid "Pan right on focused track\tAlt+Shift+Right"
-msgstr "Balans naar rechts op spoor met focus\tAlt+Shift+Right"
+#: Menus.cpp:1052
+msgid "Pan right on focused track"
+msgstr "Balans naar rechts op spoor met focus"
-#: Menus.cpp:919
-msgid "Change gain on focused track\tShift+G"
-msgstr "Versterking wijzigen op spoor met focus\tShift+G"
+#: Menus.cpp:1053
+msgid "Change gain on focused track"
+msgstr "Versterking wijzigen op spoor met focus"
-#: Menus.cpp:920
-msgid "Increase gain on focused track\tAlt+Shift+Up"
-msgstr "Meer versterking op spoor met focus\tAlt+Shift+Up"
+#: Menus.cpp:1054
+msgid "Increase gain on focused track"
+msgstr "Meer versterking op spoor met focus"
-#: Menus.cpp:921
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
-msgstr "Minder versterking op spoor met focus\tAlt+Shift+Down"
+#: Menus.cpp:1055
+msgid "Decrease gain on focused track"
+msgstr "Minder versterking op spoor met focus"
-#: Menus.cpp:922
-msgid "Open menu on focused track\tShift+M"
-msgstr "Open het menu op het spoor met focus\tShift+M"
+#: Menus.cpp:1056
+msgid "Open menu on focused track"
+msgstr "Open het menu op het spoor met focus"
# maak het spoor met focus stil of niet
-#: Menus.cpp:923
-msgid "Mute/Unmute focused track\tShift+U"
-msgstr "Zet âstilâ uit/aan op het spoor met focus\tShift+U"
+#: Menus.cpp:1057
+msgid "Mute/Unmute focused track"
+msgstr "Zet âstilâ aan/uit op het spoor met focus"
-#: Menus.cpp:924
-msgid "Solo/Unsolo focused track\tShift+S"
-msgstr "Zet âsoloâ aan/uit op het spoor met focus\tShift+S"
+#: Menus.cpp:1058
+msgid "Solo/Unsolo focused track"
+msgstr "Zet âsoloâ aan/uit op het spoor met focus"
-#: Menus.cpp:925
-msgid "Close focused track\tShift+C"
-msgstr "Sluit het spoor met focus\tShift+C"
+#: Menus.cpp:1059
+msgid "Close focused track"
+msgstr "Sluit het spoor met focus"
-#: Menus.cpp:824
+#: Menus.cpp:1061
msgid "Snap To On"
msgstr "Raster (Snap-To) aanzetten"
-#: Menus.cpp:825
+#: Menus.cpp:1062
msgid "Snap To Off"
msgstr "Raster (Snap-To) uitzetten"
+#: Menus.cpp:1066
+msgid "Full screen on/off"
+msgstr "Volledig scherm aan/uit"
+
+#: Menus.cpp:1068
+msgid "Adjust output gain"
+msgstr "Uitvoerversterking aanpassen"
+
+#: Menus.cpp:1069
+msgid "Increase output gain"
+msgstr "Uitvoerversterking verhogen"
+
+#: Menus.cpp:1070
+msgid "Decrease output gain"
+msgstr "Uitvoerversterking verlagen"
+
#: Menus.cpp:1071
-msgid "Full screen on/off\tF11"
-msgstr ""
+msgid "Adjust input gain"
+msgstr "Invoerversterking aanpassen"
+
+#: Menus.cpp:1072
+msgid "Increase input gain"
+msgstr "Invoerversterking verhogen"
+
+#: Menus.cpp:1073
+msgid "Decrease input gain"
+msgstr "Invoerversterking verlagen"
+
+#: Menus.cpp:1075
+msgid "Adjust input source"
+msgstr "Invoerbron wijzigen"
+
+# op tempo afspelen
+#: Menus.cpp:1079
+msgid "Play at speed"
+msgstr "Afspelen met snelheid"
+
+#: Menus.cpp:1080
+msgid "Adjust playback speed"
+msgstr "Afspeelsnelheid wijzigen"
+
+#: Menus.cpp:1081
+msgid "Increase playback speed"
+msgstr "Afspeelsnelheid verhogen"
+
+#: Menus.cpp:1082
+msgid "Decrease playback speed"
+msgstr "Afspeelsnelheid verlagen"
#. i18n-hint: This is the name of the menu item on Mac OS X only
-#: Menus.cpp:939
+#: Menus.cpp:1167
msgid "Open Recent"
msgstr "Recent project openen"
#. i18n-hint: This is the name of the menu item on Windows and Linux
-#: Menus.cpp:1161
+#: Menus.cpp:1170
msgid "Recent &Files"
-msgstr ""
+msgstr "&Recente bestanden"
-#: ../src/Menus.cpp:617
+#: Menus.cpp:1188
#, c-format
msgid "&Undo %s"
msgstr "%s &ongedaan maken"
# Kan de bewerking niet ongedaan maken
# (voorstel van Sander J. Alkemade)
-#: ../src/Menus.cpp:623
+#: Menus.cpp:1214
msgid "Can't Undo"
msgstr "Kan het niet herstellen"
-#: ../src/Menus.cpp:630
+#: Menus.cpp:1223
#, c-format
msgid "&Redo %s"
msgstr "%s &opnieuw doen"
-#: ../src/Menus.cpp:636
+#: Menus.cpp:1229
msgid "Can't Redo"
msgstr "Kan het niet opnieuw doen"
-#: Menus.cpp:1557
+#: Menus.cpp:1874
msgid "Sort By Time"
msgstr "Sorteren op tijd"
-#: Menus.cpp:1557
+#: Menus.cpp:1874
msgid "Tracks sorted by time"
msgstr "Sporen gesorteerd op tijd"
-#: Menus.cpp:1583
+#: Menus.cpp:1900
msgid "Sort By Name"
msgstr "Sorteren op naam"
-#: Menus.cpp:1583
+#: Menus.cpp:1900
msgid "Tracks sorted by name"
msgstr "Sporen gesorteerd op naam"
-#: Menus.cpp:1710
-msgid "Set Left Selection Bound"
-msgstr "Stel de linker selectiegrens in"
+#: Menus.cpp:2051
+#: Menus.cpp:2087
+msgid "Position"
+msgstr "Positie"
+
+#: Menus.cpp:2051
+msgid "Set Left Selection Boundary"
+msgstr "Linker selectiegrens instellen"
-#: Menus.cpp:1744
-msgid "Set Right Selection Bound"
-msgstr "Stel de rechter selectiegrens in"
+#: Menus.cpp:2087
+msgid "Set Right Selection Boundary"
+msgstr "Rechter selectiegrens instellen"
-#: ../src/Menus.cpp:1222
+#: Menus.cpp:2444
msgid "You must select a track first."
msgstr "U moet eerst een spoor selecteren"
-# laatste effect herhalen
-#: ../src/Menus.cpp:1245
+#: Menus.cpp:2479
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "%s herhalen\tCtrl+R"
+msgid "Repeat %s"
+msgstr "Herhalen %s"
-#: ../src/Menus.cpp:1349
+#: Menus.cpp:2620
msgid "There are no label tracks to export."
msgstr "Er zijn geen labelsporen om te exporteren."
-#: Menus.cpp:2608
+#: Menus.cpp:2715
msgid "Export MIDI As:"
-msgstr ""
+msgstr "MIDI exporteren als:"
-#: Menus.cpp:2612
+#: Menus.cpp:2719
msgid "MIDI file (*.mid)|*.mid|Allegro file (*.gro)|*.gro"
-msgstr ""
+msgstr "MIDI-bestanden (*.mid)|*.mid|Allegro-bestanden (*.gro)|*.gro"
-#: Menus.cpp:2644
-msgid "You have selected a filename with an unrecognized file extension.\n"
+#: Menus.cpp:2751
+msgid ""
+"You have selected a filename with an unrecognized file extension.\n"
"Do you want to continue?"
msgstr ""
+"U hebt een bestandsnaam gekozen met een niet-herkende extensie.\n"
+"Wilt u doorgaan?"
-#: Menus.cpp:2645
+#: Menus.cpp:2752
msgid "Export MIDI"
-msgstr ""
+msgstr "MIDI exporteren"
-#: ../src/Menus.cpp:1633
+#: Menus.cpp:2830
msgid "Nothing to undo"
msgstr "Niets te herstellen"
-#: ../src/Menus.cpp:1652
+#: Menus.cpp:2851
msgid "Nothing to redo"
msgstr "Niets te herhalen"
-#: ../src/EditToolBar.cpp:148 ../src/Menus.cpp:1710
+#: Menus.cpp:2958
+#: TrackPanel.cpp:652
+#: toolbars/EditToolBar.cpp:130
+#: toolbars/EditToolBar.cpp:190
msgid "Cut"
msgstr "Knippen"
-#: ../src/Menus.cpp:1710
+#: Menus.cpp:2958
msgid "Cut to the clipboard"
msgstr "Knippen naar het klembord"
-#: Menus.cpp:2468
+#: Menus.cpp:2997
msgid "Split Cut"
msgstr "Splitsen+knippen"
-#: Menus.cpp:2468
+#: Menus.cpp:2997
msgid "Split-cut to the clipboard"
msgstr "Splitsen+knippen naar het klembord"
-#: ../src/EditToolBar.cpp:152 ../src/Menus.cpp:1815 ../src/Menus.cpp:1859
+#: Menus.cpp:3063
+#: Menus.cpp:3128
+#: Menus.cpp:3209
+#: Menus.cpp:3408
+#: TrackPanel.cpp:654
+#: toolbars/EditToolBar.cpp:134
+#: toolbars/EditToolBar.cpp:192
msgid "Paste"
msgstr "Plakken"
# tekst uit/van het klembord geplakt
# tekst geplakt van het klembord
-#: Menus.cpp:2530
+#: Menus.cpp:3063
msgid "Pasted text from the clipboard"
msgstr "Tekst van het klembord geplakt"
-#: ../src/Menus.cpp:1815 ../src/Menus.cpp:1859
+#: Menus.cpp:3128
+#: Menus.cpp:3209
+#: Menus.cpp:3408
msgid "Pasted from the clipboard"
msgstr "Geplakt van het klembord"
-#: Menus.cpp:3053
+#: Menus.cpp:3277
msgid "Pasting one type of track into another is not allowed."
-msgstr ""
+msgstr "Kopiëren van het ene type spoor naar het ander is niet toegestaan."
-#: Menus.cpp:2628
+#: Menus.cpp:3289
msgid "Copying stereo audio into a mono track is not allowed."
msgstr "Stereogeluid kopiëren naar een monospoor is niet toegestaan."
# dit bericht verschijnt oa bij Undo/Redo en de geschiedenis.
-#: ../src/Menus.cpp:1899
+#: Menus.cpp:3444
+#: toolbars/EditToolBar.cpp:193
msgid "Trim"
msgstr "Uitknippen"
-#: ../src/Menus.cpp:1899
+#: Menus.cpp:3444
msgid "Trim file to selection"
msgstr "Selectie uitknippen"
-#: Menus.cpp:2747
+#: Menus.cpp:3473
#, c-format
msgid "Split-deleted %.2f seconds at t=%.2f"
msgstr "Gesplitst+verwijderd: %.2f seconden bij t=%.2f"
-#: Menus.cpp:2750
+#: Menus.cpp:3476
msgid "Split Delete"
msgstr "Splitsen+verwijderen"
-#: Menus.cpp:2771
+#: Menus.cpp:3497
#, c-format
msgid "Disjoined %.2f seconds at t=%.2f"
msgstr "Losgemaakt: %.2f seconden bij t=%.2f"
-#: Menus.cpp:2774
+#: Menus.cpp:3500
msgid "Disjoin"
msgstr "Losmaken"
-#: Menus.cpp:2795
+#: Menus.cpp:3521
#, c-format
msgid "Joined %.2f seconds at t=%.2f"
msgstr "Samengevoegd: %.2f seconden bij t=%.2f seconden"
-#: Menus.cpp:2798
+#: Menus.cpp:3524
msgid "Join"
msgstr "Samenvoegen"
# BUG Engels is inconsistent, formulering is zonder "t="
# stil gemaakt/geluidloos gemaakt
# beginnend bij t=/beginnend op
-#: ../src/Menus.cpp:1923
+#: Menus.cpp:3543
#, c-format
msgid "Silenced selected tracks for %.2f seconds at %.2f"
msgstr "Geselecteerde sporen stil gemaakt gedurende %.2f seconden bij t=%.2f"
-#: ../src/Menus.cpp:1925
+#: Menus.cpp:3545
+#: toolbars/EditToolBar.cpp:194
msgid "Silence"
msgstr "Stilte"
-#: ../src/Menus.cpp:1959
+#: Menus.cpp:3575
msgid "Duplicate"
msgstr "Dupliceren"
-#: ../src/Menus.cpp:1959
+#: Menus.cpp:3575
msgid "Duplicated"
msgstr "Gedupliceerd"
-#: Menus.cpp:2872
+#: Menus.cpp:3594
msgid "Cut Labels"
msgstr "Labels knippen"
-#: Menus.cpp:2872
+#: Menus.cpp:3594
msgid "Cut labeled regions to the clipboard"
msgstr "Gelabelde gebieden geknipt naar het klembord"
-#: Menus.cpp:2886
+#: Menus.cpp:3608
msgid "SplitCut labeled regions to the clipboard"
msgstr "Gelabelde gebieden gesplitst+geknipt naar het klembord"
-#: Menus.cpp:2887
+#: Menus.cpp:3609
msgid "Split Cut Labels"
msgstr "Labels splitsen+knippen"
-#: Menus.cpp:2901
+#: Menus.cpp:3623
msgid "Copied labeled regions to the clipboard"
msgstr "Gelabelde gebieden gekopieerd naar het klembord"
-#: Menus.cpp:2901
+#: Menus.cpp:3623
msgid "Copy Labels"
msgstr "Labels kopiëren"
-#: Menus.cpp:2913
+#: Menus.cpp:3635
msgid "Delete Labels"
msgstr "Labels verwijderen"
-#: Menus.cpp:2913
+#: Menus.cpp:3635
msgid "Deleted labeled regions"
msgstr "Gelabelde gebieden verwijderd"
-#: Menus.cpp:2925
+#: Menus.cpp:3647
msgid "Split Delete Labels"
msgstr "Labels splitsen+verwijderen"
-#: Menus.cpp:2925
+#: Menus.cpp:3647
msgid "Split Deleted labeled regions"
msgstr "Gelabelde gebieden gesplitst+verwijderd"
# labels stil/stil maken/stiltelabels/
-#: Menus.cpp:2937
+#: Menus.cpp:3659
msgid "Silence Labels"
msgstr "Labels stil maken"
-#: Menus.cpp:2937
+#: Menus.cpp:3659
msgid "Silenced labeled regions"
msgstr "Gelabelde gebieden stil gemaakt"
# wordt gebruikt bij: 'Labels splitsen' ongedaan maken
-#: Menus.cpp:2949
+#: Menus.cpp:3671
msgid "Split Labels"
msgstr "Labels splitsen"
-#: Menus.cpp:2949
+#: Menus.cpp:3671
msgid "Split labeled regions"
msgstr "Gelabelde gebieden gesplitst"
-#: Menus.cpp:2961
+#: Menus.cpp:3683
msgid "Join Labels"
msgstr "Labels samenvoegen"
-#: Menus.cpp:2961
+#: Menus.cpp:3683
msgid "Joined labeled regions"
msgstr "Gelabelde gebieden samengevoegd"
-#: Menus.cpp:2973
+#: Menus.cpp:3695
msgid "Disjoin Labels"
msgstr "Labels losmaken"
-#: Menus.cpp:2973
+#: Menus.cpp:3695
msgid "Disjoined labeled regions"
msgstr "Gelabelde gebieden losgemaakt"
-#: ../src/Menus.cpp:2006 ../src/TrackPanel.cpp:4134
+#: Menus.cpp:3717
+#: TrackPanel.cpp:6257
msgid "Split"
msgstr "Splitsen"
-#: Menus.cpp:3089
+#: Menus.cpp:3806
msgid "Split New"
msgstr "Afsplitsen"
-#: Menus.cpp:3089
+#: Menus.cpp:3806
msgid "Split to new track"
msgstr "Afsplitsen naar nieuw spoor"
-#: ../src/Menus.cpp:2089
+#: Menus.cpp:3888
msgid "Split at labels"
msgstr "Splitsen bij labels"
-#: ../src/Menus.cpp:2366
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "Om het spectrum te tekenen moeten alle sporen dezelfde samplefrequentie hebben."
-
-#: ../src/Menus.cpp:2392
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "Er was teveel audio geselecteerd. Alleen de eerste %.1f seconden audio worden geanaliseerd."
-
-#: ../src/Menus.cpp:2657
+#: Menus.cpp:4302
#, c-format
msgid "Imported labels from '%s'"
msgstr "Labels van â%sâ is geïmporteerd"
-#: ../src/Menus.cpp:2658
+#: Menus.cpp:4303
msgid "Import Labels"
msgstr "Labels importeren"
-#: ../src/Menus.cpp:2669
+#: Menus.cpp:4314
msgid "Select a MIDI file..."
msgstr "Selecteer een MIDI-bestandâ¦"
-#: Menus.cpp:4147
+#: Menus.cpp:4318
msgid "MIDI and Allegro files (*.mid;*.midi;*.gro)|*.mid;*.midi;*.gro|MIDI files (*.mid;*.midi)|*.mid;*.midi|Allegro files (*.gro)|*.gro|All files (*.*)|*.*"
-msgstr ""
+msgstr "MIDI- en Allegro-bestanden (*.mid;*.midi;*.gro)|*.mid;*.midi;*.gro|MIDI-bestanden (*.mid;*.midi)|*.mid;*.midi|Allegro-bestanden (*.gro)|*.gro|Alle bestanden (*.*)|*.*"
-#: ../src/Menus.cpp:2691
+#: Menus.cpp:4334
#, c-format
msgid "Imported MIDI from '%s'"
msgstr "MIDI van â%sâ is geïmporteerd"
-#: ../src/Menus.cpp:2693
+#: Menus.cpp:4335
msgid "Import MIDI"
msgstr "MIDI importeren"
-#: ../src/Menus.cpp:2706
+#: Menus.cpp:4349
msgid "Select any uncompressed audio file..."
msgstr "Selecteer een audiobestand zonder compressieâ¦"
-#: ../src/Menus.cpp:2710
+#: Menus.cpp:4353
msgid "All files (*)|*"
msgstr "Alle bestanden (*)|*"
-#: Menus.cpp:3547
+#: Menus.cpp:4377
msgid "Edit the metadata tags"
msgstr "De metadata-tags bewerken"
-#: Menus.cpp:3548
+#: Menus.cpp:4378
+#: export/Export.cpp:348
msgid "Edit Metadata"
msgstr "Metadata bewerken"
-#: Menus.cpp:3548
+#: Menus.cpp:4378
msgid "Edit Metadata tags"
msgstr "Metadata-tags bewerken"
# doorgerekend/berekend
-#: Menus.cpp:3749
+#: Menus.cpp:4433
#, c-format
msgid "Rendered all audio in track '%s'"
msgstr "Alle audio in spoor â%sâ is doorgerekend"
# Tekenen/berekenen/opmaken/maken/aanmaken/afmaken
-#: Menus.cpp:3750
+#: Menus.cpp:4434
msgid "Render"
msgstr "Doorrekenen"
-#: Menus.cpp:3755
+#: Menus.cpp:4439
#, c-format
msgid "Mixed and rendered %d tracks into one new stereo track"
msgstr "%d sporen gemixed en doorgerekend naar één nieuw stereospoor"
-#: Menus.cpp:3758
+#: Menus.cpp:4442
#, c-format
msgid "Mixed and rendered %d tracks into one new mono track"
msgstr "%d sporen gemixed en doorgerekend naar één nieuw monospoor"
-# Mixen/mix uitvoeren/mixen en berekenen/mixen en opmaken
-# mixen en wegschrijven/mixen en doorrekenen
-#: Menus.cpp:658 Menus.cpp:3760 Mix.cpp:119
-msgid "&Mix and Render"
-msgstr "&Mixen en doorrekenen"
+#: Menus.cpp:4444
+#: Mix.cpp:120
+msgid "Mix and Render"
+msgstr "Mixen en doorrekenen"
-#: ../src/Menus.cpp:2889
+#: Menus.cpp:4576
msgid "Aligned with zero"
msgstr "Op nulpunt uitgelijnd"
# Dit is niet een strikte vertaling, maar wel wat er gebeurd
# De tekst verschijnt in de Bewerkingsgeschiedenis
-#: ../src/Menus.cpp:2893
+#: Menus.cpp:4580
msgid "Aligned cursor"
msgstr "Op cursor uitgelijnd"
-#: ../src/Menus.cpp:2897
+#: Menus.cpp:4584
msgid "Aligned with selection start"
msgstr "Uitgelijnd op begin selectie"
-#: ../src/Menus.cpp:2901
+#: Menus.cpp:4588
msgid "Aligned with selection end"
msgstr "Uitgelijnd op einde selectie"
-#: ../src/Menus.cpp:2905
+#: Menus.cpp:4592
msgid "Aligned end with cursor"
msgstr "Einde uitgelijnd op cursor"
-#: ../src/Menus.cpp:2909
+#: Menus.cpp:4596
msgid "Aligned end with selection start"
msgstr "Einde uitgelijnd op begin selectie"
-#: ../src/Menus.cpp:2913
+#: Menus.cpp:4600
msgid "Aligned end with selection end"
msgstr "Einde uitgelijnd op einde selectie"
-#: ../src/Menus.cpp:2917
+#: Menus.cpp:4604
msgid "Aligned"
msgstr "Uitgelijnd"
-#: ../src/Menus.cpp:2950
+#: Menus.cpp:4637
msgid "Align"
msgstr "Uitlijnen"
-#: Menus.cpp:4550
+#: Menus.cpp:4723
msgid "Sync MIDI with Audio"
-msgstr ""
+msgstr "MIDI met Audio Synchroniseren"
-#: Menus.cpp:4554
+#: Menus.cpp:4727
msgid "Alignment completed."
-msgstr ""
+msgstr "Uitlijning voltooid."
-#: ../src/Menus.cpp:2974
+#: Menus.cpp:4738
msgid "Created new audio track"
msgstr "Nieuw audiospoor aangemaakt"
-#: ../src/Menus.cpp:2974 ../src/Menus.cpp:2998 ../src/Menus.cpp:3013
-#: ../src/Menus.cpp:3049
+#: Menus.cpp:4738
+#: Menus.cpp:4760
+#: Menus.cpp:4775
+#: Menus.cpp:4795
msgid "New Track"
msgstr "Nieuw spoor"
-#: ../src/Menus.cpp:2998
+#: Menus.cpp:4760
msgid "Created new stereo audio track"
msgstr "Nieuw stereo audiospoor aangemaakt"
-#: ../src/Menus.cpp:3013
+#: Menus.cpp:4775
msgid "Created new label track"
msgstr "Een nieuw labelspoor aangemaakt"
-#: ../src/Menus.cpp:3038
+#: Menus.cpp:4784
msgid "The version of Audacity you are using does not support multiple time tracks."
msgstr "Deze versie van Audacity heeft geen ondersteuning voor meerdere tijdsporen."
-#: ../src/Menus.cpp:3049
+#: Menus.cpp:4795
msgid "Created new time track"
msgstr "Nieuw tijdspoor aangemaakt"
-#: ../src/Menus.cpp:3085
+#: Menus.cpp:4855
msgid "Added label"
msgstr "Label toegevoegd"
-#: Menus.cpp:4119
+#: Menus.cpp:4890
msgid "Edited labels"
msgstr "Bewerkte labels"
-#: Menus.cpp:4146
+#: Menus.cpp:4917
msgid "Save CleanSpeech Preset File As:"
msgstr "CleanSpeech voorinstellingenbestand opslaan als:"
-#: Menus.cpp:4150
+#: Menus.cpp:4921
msgid "CleanSpeech Presets (*.csp)|*.csp"
msgstr "CleanSpeech voorinstellingen (*.csp)|*.csp"
-#: ../src/export/Export.cpp:185
+#: Menus.cpp:4928
+#: export/Export.cpp:610
msgid "Sorry, pathnames longer than 256 characters not supported."
msgstr "Sorry, padnamen die langer zijn dan 256 tekens worden niet ondersteund."
-#: Menus.cpp:4203
+#: Menus.cpp:4974
msgid "Problem encountered exporting presets."
msgstr "Probleem bij het exporteren van voorinstellingen."
# exporteren was niet mogelijk
-#: Menus.cpp:4204 export/Export.cpp:136
+#: Menus.cpp:4975
+#: export/Export.cpp:472
msgid "Unable to export"
msgstr "Kon niet exporteren"
-#: ../src/Menus.cpp:3119
+#: Menus.cpp:5158
msgid "Remove Track"
msgstr "Spoor verwijderen"
-#: ../src/Menus.cpp:3119
+#: Menus.cpp:5158
msgid "Removed audio track(s)"
msgstr "Audiosporen verwijderd"
-#: Menus.cpp:4480 Menus.cpp:4499
+#: Menus.cpp:5314
+#: Menus.cpp:5370
+#: export/ExportFFmpeg.cpp:756
+#: export/ExportMP3.cpp:1785
msgid "Resample"
msgstr "Resampelen"
-#: Menus.cpp:4508
+#: Menus.cpp:5335
+#: TrackPanel.cpp:6481
msgid "New sample rate (Hz):"
msgstr "Nieuwe samplefrequentie (Hz):"
# ongeldige waarde!
-#: Menus.cpp:4486
+#: Menus.cpp:5359
+#: TrackPanel.cpp:6505
msgid "The entered value is invalid"
msgstr "De ingevoerde waarde is ongeldig"
-#: Menus.cpp:4497
+#: Menus.cpp:5368
#, c-format
msgid "Resampling track %d"
msgstr "Spoor %d resampelen"
-#: Menus.cpp:4508
+#: Menus.cpp:5377
msgid "Resample Track"
msgstr "Spoor resampelen"
-#: Menus.cpp:4508
+#: Menus.cpp:5377
msgid "Resampled audio track(s)"
msgstr "Geluidsporen geresampeled"
-#: ../src/Mix.cpp:74 ../src/Mix.cpp:82
+#: Mix.cpp:95
+#: Mix.cpp:102
msgid "Mix"
msgstr "Mixen"
-#: Mix.cpp:120
+#: Mix.cpp:121
msgid "Mixing and rendering tracks"
msgstr "Sporen mixen en doorrekenen"
# notenbalk (sander)
-#: ../src/NoteTrack.cpp:30
+#: NoteTrack.cpp:43
msgid "Note Track"
msgstr "Notenbalk"
-#: ../src/Menus.cpp:1614
+#: Printing.cpp:160
msgid "There was a problem printing."
msgstr "Er was een probleem bij het afdrukken."
-#: ../src/Menus.cpp:1615
+#: Printing.cpp:161
msgid "Print"
msgstr "Afdrukken"
-#: Project.cpp:573
+#: Project.cpp:671
+msgid "Repeat Last Effect"
+msgstr "Laatste effect herhalen"
+
+#: Project.cpp:776
msgid "Main Mix"
msgstr "Hoofdmix"
-#: Project.cpp:693
+#: Project.cpp:894
#, c-format
msgid "Welcome to Audacity version %s"
msgstr "Welkom bij Audacity versie %s"
-#: Project.cpp:831
+#: Project.cpp:1049
msgid "(Recovered)"
msgstr "(Hersteld)"
-#: ../src/ControlToolBar.cpp:469 ../src/Project.cpp:1707
-#: ../src/TrackPanel.cpp:1208
+#: Project.cpp:1718
+#: TrackPanel.cpp:846
+#: toolbars/ControlToolBar.cpp:187
msgid "Record"
msgstr "Opnemen"
# Dit komt in het geschiedenis-venster en moet dus een actie zijn:
# Wat is er gedaan? Geluid opgenomen
-#: ../src/Project.cpp:1707 ../src/TrackPanel.cpp:1208
+#: Project.cpp:1718
+#: TrackPanel.cpp:846
msgid "Recorded Audio"
msgstr "Geluid opgenomen"
-#: ../src/Project.cpp:1716
+#: Project.cpp:1736
msgid "Save changes before closing?"
msgstr "Wijzigingen opslaan voor afsluiten?"
-#: Project.cpp:1503
-msgid "\n"
+#: Project.cpp:1739
+msgid ""
+"\n"
"If saved, the project will have no tracks.\n"
"\n"
"To save any previously open tracks:\n"
"Cancel, Edit > Undo until all tracks\n"
"are open, then File > Save Project."
msgstr ""
+"\n"
+"Indien opgeslagen, zal het project geen sporen hebben.\n"
+"\n"
+"Om eerdere open sporen op te slaan:\n"
+"Annuleren, Bewerken > Herstellen tot alle sporen\n"
+"geopend zijn, dan Bestand > Project opslaan."
-#: ../src/Project.cpp:1717
+#: Project.cpp:1742
msgid "Save changes?"
msgstr "Wijzigingen opslaan?"
# alle ondersteunde bestanden/bestandsformaten
-#: Project.cpp:1648
-msgid "All files|*.*|All supported files|"
-msgstr "Alle bestanden|*.*|Alle ondersteunde bestanden|"
+#: Project.cpp:1954
+msgid "All files|*|All supported files|"
+msgstr "Alle bestanden|*|Alle ondersteunde bestanden|"
-#: ../src/Menus.cpp:2592 ../src/Project.cpp:1738
+#: Project.cpp:1984
msgid "Select one or more audio files..."
msgstr "Selecteer een of meerdere audiobestandenâ¦"
-#: Project.cpp:1700
+#: Project.cpp:2011
msgid "Audacity projects|*.aup|"
msgstr "Audacity-projecten|*.aup|"
-#: Project.cpp:1799 Project.cpp:2186
+#: Project.cpp:2071
+#: Project.cpp:2506
#, c-format
-msgid "This file was saved by Audacity %s, a much\n"
+msgid ""
+"This file was saved by Audacity %s, a much\n"
"older version. The format has changed.\n"
"\n"
"Audacity could corrupt the file in opening\n"
"it, so you must back it up first.\n"
"\n"
"Open this file now?"
-msgstr "Dit bestand is opgeslagen met Audacity %s, een veel\n"
+msgstr ""
+"Dit bestand is opgeslagen met Audacity %s, een veel\n"
"oudere versie. De bestandsindeling is inmiddels \n"
"gewijzigd.\n"
"\n"
@@ -2988,82 +3289,116 @@ msgstr "Dit bestand is opgeslagen met Audacity %s, een veel\n"
"Dit bestand nu openen?"
# eerder/ouder
-#: Project.cpp:1800
+#: Project.cpp:2072
msgid "1.0 or earlier"
msgstr "1.0 of ouder"
-#: Project.cpp:1902
+#: Project.cpp:2078
+#: Project.cpp:2518
msgid "Opening old project file"
msgstr "Oud projectbestand wordt geopend"
-#: ../src/Project.cpp:1821 ../src/Project.cpp:1829
+#: Project.cpp:2102
+msgid ""
+"You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+"U probeert een automatisch gegenereerd backupbestand te openen.\n"
+"Dit kan resulteren in zwaar verlies van gegevens.\n"
+"\n"
+"Gelieve in plaats daarvan het eingenlijke Audacity-projectbestand te openen."
+
+#: Project.cpp:2103
+msgid "Backup file detected"
+msgstr "Backupbestand gedetecteerd"
+
+#: Project.cpp:2117
+#: Project.cpp:2125
+#: xml/XMLWriter.cpp:306
msgid "Error opening file"
msgstr "Fout bij openen bestand"
-#: Project.cpp:1585
+#: Project.cpp:2131
#, c-format
-msgid "File may be invalid or corrupted: \n"
+msgid ""
+"File may be invalid or corrupted: \n"
"%s"
-msgstr "Bestand is mogelijk ongeldig of beschadigd: \n"
+msgstr ""
+"Bestand is mogelijk ongeldig of beschadigd: \n"
"%s"
-#: Project.cpp:1586
+#: Project.cpp:2132
msgid "Error opening file or project"
msgstr "Fout bij openen van bestand of project"
-#: ../src/Project.cpp:1842
+#: Project.cpp:2152
msgid "Audacity was unable to convert an Audacity 1.0 project to the new project format."
msgstr "Audacity was niet in staat een Audacity 1.0 project om te zetten naar het nieuwe projectformat."
-#: Project.cpp:1706
+#: Project.cpp:2259
msgid "Could not remove old auto save file"
msgstr "Kon het oude autosavebestand niet verwijderen"
-#: Project.cpp:1708
+#: Project.cpp:2261
msgid "Project was recovered"
msgstr "Project is hersteld"
-#: Project.cpp:1708
+#: Project.cpp:2261
msgid "Recover"
msgstr "Herstellen"
-#: Project.cpp:1737
+#: Project.cpp:2290
msgid "Project checker repaired file"
msgstr "Projectcontrole heeft bestand gerepareerd"
-#: Project.cpp:1737 effects/Repair.h:29
+#: Project.cpp:2290
+#: effects/Repair.h:29
msgid "Repair"
msgstr "Repareren"
-#: ../src/Project.cpp:1941
+#: Project.cpp:2431
#, c-format
msgid "Couldn't find the project data folder: \"%s\""
msgstr "Kon de map met projectdata niet vinden: â%sâ"
-#: ../src/Project.cpp:1985
+#: Project.cpp:2475
#, c-format
-msgid "This file was saved using Audacity %s.\n"
+msgid ""
+"This file was saved using Audacity %s.\n"
"You are using Audacity %s - you need to upgrade to\n"
"a newer version to open this file."
-msgstr "Dit bestand is opgeslagen met Audacity %s.\n"
+msgstr ""
+"Dit bestand is opgeslagen met Audacity %s.\n"
"U maakt echter gebruik van Audacity versie %s.\n"
"U moet upgraden naar een nieuwere versie om dit\n"
"bestand te kunnen openen."
-#: ../src/Project.cpp:1991
+#: Project.cpp:2479
msgid "Can't open project file"
msgstr "Kan projectbestand niet openen"
-#: Project.cpp:2193
+#: Project.cpp:2513
#, c-format
-msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+msgid ""
+"This file was saved by Audacity %s.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
msgstr ""
+"Dit bestand werd opgeslagen door Audacity %s.\n"
+"\n"
+"Audacity kan dit bestand openen en opslaan, maar als u het met deze versie opslaat\n"
+"kunt u het niet meer openen met versie 1.2 of ouder.\n"
+"\n"
+"Dit bestand nu openen?"
-#: Project.cpp:2537
-msgid "Your project is now empty.\n"
+#: Project.cpp:2711
+msgid ""
+"Your project is now empty.\n"
"If saved, the project will have no tracks.\n"
"\n"
"To save any previously open tracks:\n"
@@ -3072,51 +3407,73 @@ msgid "Your project is now empty.\n"
"\n"
"Save anyway?"
msgstr ""
+"Uw project is nu leeg.\n"
+"Indien opgeslagen, zal het project geen sporen hebben.\n"
+"\n"
+"Om eerder geopende sporen op te slaan:\n"
+"Klik 'Nee', Bewerken > Herstellen tot alle sporen\n"
+"geopend zijn, dan Bestand > Project opslaan.\n"
+"\n"
+"Toch opslaan?"
-#: Project.cpp:2538
+#: Project.cpp:2712
msgid "Warning empty project"
-msgstr ""
+msgstr "Waarschuwing leeg project"
-#: Project.cpp:2591
+#: Project.cpp:2821
#, c-format
-msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+msgid ""
+"Could not save project. Perhaps %s \n"
+"is not writable or the disk is full."
msgstr ""
+"Het project kon niet opslagen worden. Misschien \n"
+"is %s niet beschrijfbaar of is de schijf vol."
-#: ../src/Project.cpp:2148 ../src/Project.cpp:2160
+#: Project.cpp:2823
+#: Project.cpp:2849
msgid "Error saving project"
msgstr "Fout bij opslaan project"
-#: ../src/Project.cpp:2200
+#: Project.cpp:2847
+#: Project.cpp:3950
+#: Tags.cpp:1203
+#: effects/Equalization.cpp:1095
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr "Kon niet schrijven naar bestand \"%s\": %s"
+
+#: Project.cpp:2927
#, c-format
msgid "Saved %s"
msgstr "%s Opgeslagen"
-#: ../src/Project.cpp:2282
+#: Project.cpp:3080
#, c-format
msgid "Imported '%s'"
msgstr "â%sâ is geïmporteerd"
-#: ../src/Project.cpp:2236 ../src/Project.cpp:2283
-#: ../src/import/ImportPCM.cpp:403 ../src/import/ImportPCM.cpp:488
-#: ../src/import/ImportRaw.cpp:408
+#: Project.cpp:3081
msgid "Import"
msgstr "Importeren"
-#: ../src/Project.cpp:2340
+#: Project.cpp:3116
msgid "Error importing"
msgstr "Fout bij importeren"
-#: Project.cpp:2365
+#: Project.cpp:3163
msgid "Save Speech As:"
msgstr "Spraak opslaan als:"
-#: Project.cpp:2399
+#: Project.cpp:3165
msgid "Windows PCM Audio file (*.wav)|*.wav"
msgstr "Windows PCM-audiobestand *.wav)|*.wav"
-#: Project.cpp:2894
-msgid "Audacity compressed project files (.aup) save your work in a smaller, compressed (.ogg) format. \n"
+# Een beetje vrij vertaald, maar de boodschap is zo wel duidelijk
+# LET OP! dit bericht mag maximaal 5 regels bevatten, alle overige regels
+# worden niet in het dialoog getoond.
+#: Project.cpp:3172
+msgid ""
+"Audacity compressed project files (.aup) save your work in a smaller, compressed (.ogg) format. \n"
"Compressed project files are a good way to transmit your project online, because they are much smaller. \n"
"To open a compressed project takes longer than usual, as it imports each compressed track. \n"
"\n"
@@ -3124,570 +3481,881 @@ msgid "Audacity compressed project files (.aup) save your work in a smaller, com
"When you want to save a file that can be opened by other programs, select one of the\n"
"Export commands."
msgstr ""
+"In Audacity-projectbestanden (.aup) wordt alle informatie opgeslagen, precies zoals die op het scherm\n"
+"te zien is. Andere programma's kunnen echter de projectbestanden van Audacity vaak niet openen.\n"
+"\n"
+"Als u het bestand ook in andere programma's wilt kunnen openen moet u âExporteren alsâ¦â gebruiken."
-#: Project.cpp:2897
-msgid "You are saving an Audacity project file (.aup).\n"
+#: Project.cpp:3175
+msgid ""
+"You are saving an Audacity project file (.aup).\n"
"\n"
"Saving a project creates a file that only Audacity can open.\n"
"\n"
"To save an audio file for other programs, use one of the \"File > Export\" commands.\n"
msgstr ""
+"U wilt een Audacity project opslaan (.aup).\n"
+"\n"
+"Als u een project opslaat wordt een bestand aangemaakt dat alleen Audacity kan openen.\n"
+"\n"
+"Om een geluidsbestand voor een ander programma op te slaan, gebruik dan een van de \"Bestand > Exporteren\"- commando's.\n"
-#: ../src/Project.cpp:2378
+#: Project.cpp:3177
+msgid "Save Project As..."
+msgstr "Project opslaan alsâ¦"
+
+#: Project.cpp:3179
msgid "Audacity projects (*.aup)|*.aup"
msgstr "Audacity-projecten (*.aup)|*.aup"
-#: ../src/Project.cpp:2414
+#: Project.cpp:3228
msgid "Created new project"
msgstr "Nieuw project aangemaakt"
-#: ../src/Project.cpp:2527
+#: Project.cpp:3372
#, c-format
msgid "Deleted %.2f seconds at t=%.2f"
msgstr "%.2f seconden verwijderd bij t=%.2f"
-#: ../src/Project.cpp:2530
+#: Project.cpp:3375
+#: effects/Equalization.cpp:1295
+#: effects/Equalization.cpp:2647
msgid "Delete"
msgstr "Verwijderen"
-#: Project.cpp:2738
+#: Project.cpp:3569
#, c-format
msgid "Disk space remains for recording %d hours and %d minutes."
msgstr "Vrije schijfruimte voor opname van %d uur en %d minuten."
-#: Project.cpp:2741
+#: Project.cpp:3572
#, c-format
msgid "Disk space remains for recording 1 hour and %d minutes."
msgstr "Vrije schijfruimte voor opname van 1 uur en %d minuten."
-#: Project.cpp:2744
+#: Project.cpp:3575
#, c-format
msgid "Disk space remains for recording %d minutes."
msgstr "Vrije schijfruimte voor opname van %d minuten."
-#: Project.cpp:2747
+#: Project.cpp:3578
#, c-format
msgid "Disk space remains for recording %d seconds."
msgstr "Vrije schijfruimte voor opname van %d seconden."
-#: ../src/Project.cpp:2706
+#: Project.cpp:3581
msgid "Out of disk space"
msgstr "Geen vrije schijfruimte over"
-#: Project.cpp:3336
+#: Project.cpp:3594
#, c-format
msgid "Import(s) complete. Running %d on-demand waveform calculations. Overall %2.0f%% complete."
-msgstr ""
+msgstr "Import(s) compleet. Bezig met %d golfvorm-berekeningen op aanvraag. %2.0f%% voltooid van totaal."
-#: Project.cpp:3339
+#: Project.cpp:3597
#, c-format
msgid "Import complete. Running an on-demand waveform calculation. %2.0f%% complete."
-msgstr ""
+msgstr "Importeren compleet. Bezig met golfvorm-berekening op aanvraag. %2.0f%% voltooid."
-#: Project.cpp:3027
+#: Project.cpp:3881
msgid "Could not remove old autosave file: "
msgstr "Kon oud autosavebestand niet verwijderen: "
-#: Project.cpp:3068
+#: Project.cpp:3922
msgid "New Project"
msgstr "Nieuw project"
-#: Project.cpp:3081
+#: Project.cpp:3952
msgid "Error writing autosave file"
msgstr "Fout bij het schrijven van het autosave-bestand"
-#: Project.cpp:3102
+#: Project.cpp:3967
msgid "Could not create autosave file: "
msgstr "Kon het autosave-bestand niet aanmaken: "
# =statusbalkmelding
# feitelijke/werkelijke/daadwerkelijke snelheid/frequentie
# het gaat hier om de samplefrequentie
-#: Project.cpp:3320
+#: Project.cpp:3993
#, c-format
msgid "Actual Rate: %d"
-msgstr "Werkelijke frequentie: %d"
+msgstr "Werkelijke rate: %d"
-#: ../src/Resample.cpp:35
+#: Resample.cpp:62
msgid "Libresample by Dominic Mazzoni and Julius Smith"
msgstr "Libresample door Dominic Mazzoni en Julius Smith"
-#: ../src/Resample.cpp:46
+#: Resample.cpp:73
msgid "High-quality Sinc Interpolation"
msgstr "Hoge kwaliteit sinc-interpolatie"
# sync/sinc
-#: ../src/Resample.cpp:48
+#: Resample.cpp:75
msgid "Fast Sinc Interpolation"
msgstr "Snelle sinc-interpolatie"
-#: ../src/Resample.cpp:118
+#: Resample.cpp:141
msgid "Libsamplerate by Erik de Castro Lopo"
msgstr "Libsamplerate door Erik de Castro Lopo"
-#: ../src/Resample.cpp:211
+#: Resample.cpp:230
#, c-format
msgid "Libsamplerate error: %d\n"
msgstr "Libsamplerate fout: %d\n"
-#: ../src/Resample.cpp:233 ../src/Resample.cpp:243
+#: Resample.cpp:252
+#: Resample.cpp:262
msgid "Resampling disabled."
msgstr "Resampling is uitgeschakeld."
-#. i18n-hint: Audio data bit depth (precison): 16-bit integers
+#. i18n-hint: Audio data bit depth (precision): 16-bit integers
#: SampleFormat.cpp:66
msgid "16-bit PCM"
msgstr "16-bit PCM"
-#. i18n-hint: Audio data bit depth (precison): 24-bit integers
+#. i18n-hint: Audio data bit depth (precision): 24-bit integers
#: SampleFormat.cpp:69
msgid "24-bit PCM"
msgstr "24-bit PCM"
-#. i18n-hint: Audio data bit depth (precison): 32-bit floating point
+#. i18n-hint: Audio data bit depth (precision): 32-bit floating point
#: SampleFormat.cpp:72
msgid "32-bit float"
msgstr "32-bit float"
-#: Screenshot.cpp:186
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr "Schermopname-venster"
+
+# letterlijk:
+# voor het opslaan van de geexporteerde bestanden
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr "Kies een locatie voor het opslaan van bestanden"
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr "Afbeeldingen opslaan in:"
+
+#: Screenshot.cpp:328
+#: export/ExportMultiple.cpp:242
+#: prefs/DirectoriesPrefs.cpp:94
+msgid "Choose..."
+msgstr "Kiezenâ¦"
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr "Volledig venster of scherm opnemen"
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr "Herschaal klein"
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr "Herschaal groot"
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr "Blauwe Achtergond"
+
+# witte (ruis)
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr "Witte Achtergrond"
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr "Alleen venster opnemen"
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr "Volledig scherm opnemen"
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr "Opnemen van venster plus"
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr "Volledig scherm opnemen"
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr "5 seconden wachten en voorste venster/dialoog opnemen"
+
+# mag dit vertaald worden?
+#: Screenshot.cpp:369
+#: effects/Normalize.cpp:74
+#: effects/Normalize.cpp:75
+msgid "false"
+msgstr "false"
+
+# of: ... in het venster (laten) passen
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr "Een gedeelte van het projectvenster capturen"
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr "Alle werkbalken"
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr "Selectiebalk"
+
+#: Screenshot.cpp:381
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr "tools"
+
+# dit wordt: Audacity bedienings-werkbalk/bedieningsknoppen-werkbalk
+# Audacity %s-werkbalk
+#: Screenshot.cpp:382
+#: effects/Contrast.cpp:410
+#: toolbars/ControlToolBar.cpp:83
+#: toolbars/ControlToolBar.cpp:243
+msgid "Control"
+msgstr "bedieningsknoppen"
+
+#: Screenshot.cpp:388
+#: effects/LoadEffects.cpp:114
+#: toolbars/MixerToolBar.cpp:59
+#: toolbars/MixerToolBar.cpp:245
+msgid "Mixer"
+msgstr "Mixer"
+
+# volumemeter+opnamemeter/vu-meter
+#: Screenshot.cpp:389
+#: toolbars/MeterToolBar.cpp:50
+#: toolbars/MeterToolBar.cpp:114
+msgid "Meter"
+msgstr "Vu-meter"
+
+#: Screenshot.cpp:390
+#: toolbars/EditToolBar.cpp:76
+#: toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr "Bewerken"
+
+# dit wordt: Audacity %s-werkbalk. maar is ook te zien
+# bij de voorkeuren
+#: Screenshot.cpp:391
+#: prefs/DevicePrefs.cpp:131
+#: prefs/DevicePrefs.cpp:144
+#: prefs/MidiIOPrefs.cpp:137
+#: prefs/MidiIOPrefs.cpp:150
+#: toolbars/DeviceToolBar.cpp:57
+#: toolbars/DeviceToolBar.cpp:196
+msgid "Device"
+msgstr "apparaten"
+
+# het hoger of lager afspelen
+# Snelheidsschuif/afspeelsnelheid/transcriptie
+# dit wordt: Audacity %s-werkbalk.
+#: Screenshot.cpp:392
+#: toolbars/TranscriptionToolBar.cpp:84
+#: toolbars/TranscriptionToolBar.cpp:253
+msgid "Transcription"
+msgstr "afspeelsnelheid"
+
+# sporenpaneel
+#: Screenshot.cpp:398
+#: TrackPanel.cpp:442
+#: TrackPanel.cpp:443
+msgid "Track Panel"
+msgstr "Sporenpaneel"
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr "Liniaal"
+
+#: Screenshot.cpp:400
+#: export/ExportMultiple.cpp:285
+#: export/ExportMultiple.cpp:287
+#: prefs/TracksPrefs.cpp:31
+msgid "Tracks"
+msgstr "Sporen"
+
+# notenbalk (sander)
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr "Eerste spoor"
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr "Tweede spoor"
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr "Schaal"
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr "Een sec"
+
+# tooltip bij de CleenSpeech knop
+# erop klikken brengt het 'apply chain' dialoog naar voren
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr "Tien seconden"
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr "Een min"
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr "Vijf min"
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr "Een uur"
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr "Korte sporen"
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr "Medium sporen"
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr "Lange sporen"
+
+#: Screenshot.cpp:599
msgid "Saved "
msgstr "Opgeslagen"
-#: Screenshot.cpp:189
+#: Screenshot.cpp:602
msgid "Error trying to save file: "
msgstr "Fout bij het opslaan van het bestand: "
-#: Sequence.cpp:732 Sequence.cpp:742 Sequence.cpp:749
+# letterlijk:
+# voor het opslaan van de geexporteerde bestanden
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr "Kies een locatie om screenshot-afbeeldingen op te slaan"
+
+#: Sequence.cpp:799
+#: Sequence.cpp:809
+#: Sequence.cpp:816
msgid "Gap detected in project file\n"
msgstr "Gat ontdekt in projectbestand\n"
-#: effects/Effect.cpp:254 effects/Effect.cpp:370 effects/Phaser.cpp:595
-#: effects/Wahwah.cpp:582 effects/audiounits/AudioUnitEffect.cpp:852
+#: ShuttleGui.cpp:2034
+#: effects/Effect.cpp:436
+#: effects/audiounits/AudioUnitEffect.cpp:851
msgid "Pre&view"
msgstr "&Voorbeeld"
-#: effects/nyquist/Nyquist.cpp:826 effects/nyquist/Nyquist.cpp:990
+#: ShuttleGui.cpp:2041
msgid "&Debug"
msgstr "&Debuggen"
+# =venstertitel
#: SoundActivatedRecord.cpp:36
msgid "Sound Activated Record"
-msgstr ""
+msgstr "Geluidsgeactiveerde opname"
+# labels stil/stil maken/stiltelabels/
#: SoundActivatedRecord.cpp:58
msgid "Activation level (dB):"
-msgstr ""
+msgstr "Activatieniveau (dB):"
-#: SplashDialog.cpp:57
-msgid "&Welcome to Audacity!"
-msgstr "&Welkom bij Audacity!"
+#: SplashDialog.cpp:60
+msgid "Welcome to Audacity!"
+msgstr "Welkom bij Audacity!"
# dit niet meer tonen/verberg dit
-#: SplashDialog.cpp:94
+#: SplashDialog.cpp:112
msgid "Don't show this again at start up"
msgstr "Dit niet meer tonen bij het opstarten"
-#: Tags.cpp:621
+#: Tags.cpp:629
msgid "Artist Name"
msgstr "Naam artiest"
-#: Tags.cpp:622
+#: Tags.cpp:630
msgid "Track Title"
msgstr "Songtitel"
-#: Tags.cpp:623
+#: Tags.cpp:631
msgid "Album Title"
msgstr "Album"
-#: Tags.cpp:953
+#: Tags.cpp:632
msgid "Track Number"
msgstr "Spoornummer"
-#: ../src/Tags.cpp:465
+#: Tags.cpp:633
msgid "Year"
msgstr "Jaar"
-#: Tags.cpp:979
+#: Tags.cpp:634
msgid "Genre"
msgstr "Genre"
-#: ../src/Tags.cpp:475
+#: Tags.cpp:635
+#: prefs/MousePrefs.cpp:100
msgid "Comments"
msgstr "Opmerkingen"
-#: Tags.cpp:777
+#: Tags.cpp:788
msgid "Use arrow keys (or RETURN key after editing) to navigate fields."
-msgstr ""
+msgstr "Gebruik de pijltjestoetsen (of de ENTER-toets na het bewerken) om te navigeren door velden."
-#: Tags.cpp:769
-msgid "Tag Name"
-msgstr "Tagnaam"
+#: Tags.cpp:812
+msgid "Tag"
+msgstr "Label"
-#: Tags.cpp:770
-msgid "Tag Value"
-msgstr "Tagwaarde"
+# bitrate is variabel of contstant
+#: Tags.cpp:813
+msgid "Value"
+msgstr "Waarde"
-#: prefs/KeyConfigPrefs.cpp:114
-msgid "&Clear"
-msgstr "&Wissen"
+#: Tags.cpp:828
+msgid "Cl&ear"
+msgstr "Wiss&en"
-#: Tags.cpp:791
+#: Tags.cpp:834
msgid "Genres"
msgstr "Genres"
-#: Tags.cpp:826
+#: Tags.cpp:838
msgid "E&dit..."
-msgstr ""
+msgstr "Wijzigenâ¦"
-#: Tags.cpp:827
+#: Tags.cpp:839
msgid "Rese&t..."
-msgstr ""
+msgstr "Hers&tellenâ¦"
-#: Tags.cpp:1070
+#: Tags.cpp:844
msgid "Template"
msgstr "Sjabloon"
-#: Tags.cpp:1073 prefs/KeyConfigPrefs.cpp:124
+#: Tags.cpp:848
+#: prefs/KeyConfigPrefs.cpp:167
msgid "&Load..."
msgstr "&Ladenâ¦"
-#: Tags.cpp:1078 prefs/KeyConfigPrefs.cpp:123
+#: Tags.cpp:849
+#: prefs/KeyConfigPrefs.cpp:168
msgid "&Save..."
msgstr "Op&slaanâ¦"
-#: Tags.cpp:808 Tags.cpp:1434 Tags.cpp:1962
-msgid "S&et Default"
+#: Tags.cpp:851
+msgid "Set De&fault"
msgstr "&Standaard instellen"
-#: Tags.cpp:958 Tags.cpp:1597 Tags.cpp:2326
+#: Tags.cpp:1001
msgid "Edit Genres"
msgstr "Genres bewerken"
-#: Tags.cpp:991 Tags.cpp:1003 Tags.cpp:1019 Tags.cpp:1032 Tags.cpp:1635
-#: Tags.cpp:1647 Tags.cpp:1663 Tags.cpp:1676 Tags.cpp:2369 Tags.cpp:2381
-#: Tags.cpp:2397 Tags.cpp:2410
+#: Tags.cpp:1034
+#: Tags.cpp:1046
+#: Tags.cpp:1061
+#: Tags.cpp:1074
msgid "Reset Genres"
msgstr "Genres herstellen"
-#: Tags.cpp:991 Tags.cpp:1032 Tags.cpp:1635 Tags.cpp:1676 Tags.cpp:2369
-#: Tags.cpp:2410
+#: Tags.cpp:1034
+#: Tags.cpp:1074
msgid "Unable to save genre file."
msgstr "Niet in staat het genrebestand op te slaan."
-#: Tags.cpp:1002 Tags.cpp:1646 Tags.cpp:2380
+#: Tags.cpp:1045
msgid "Are you sure you want to reset the genre list to defaults?"
msgstr "Weet u zeker dat u de genrelijst naar de standaardlijst wilt herstellen?"
-#: Tags.cpp:1019 Tags.cpp:1663 Tags.cpp:2397
+#: Tags.cpp:1061
msgid "Unable to open genre file."
msgstr "Niet in staat het genrebestand te openen."
-#: Tags.cpp:1084
+#: Tags.cpp:1096
msgid "Load Metadata As:"
-msgstr ""
+msgstr "Metadata laden als:"
-#: Tags.cpp:1079 Tags.cpp:1730 Tags.cpp:2453
+#: Tags.cpp:1121
msgid "Error loading metadata"
msgstr "Fout bij het laden van de metadata"
-#: Tags.cpp:1054 Tags.cpp:1108 Tags.cpp:1709 Tags.cpp:1745 Tags.cpp:2432
-#: Tags.cpp:2468
+#: Tags.cpp:1150
msgid "Save Metadata As:"
msgstr "Metadata opslaan als:"
-#: Theme.cpp:629
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr "Fout bij opslaan van tag-bestand"
+
+#: Theme.cpp:638
#, c-format
-msgid "Audacity could not write file:\n"
+msgid ""
+"Audacity could not write file:\n"
" %s."
-msgstr "Audacity kon het bestand:\n"
+msgstr ""
+"Audacity kon het bestand:\n"
" %s\n"
"niet schrijven."
-#: Theme.cpp:647
+#: Theme.cpp:656
#, c-format
-msgid "Audacity could not open file:\n"
+msgid ""
+"Audacity could not open file:\n"
" %s\n"
"for writing."
-msgstr "Audacity kon het bestand:\n"
+msgstr ""
+"Audacity kon het bestand:\n"
" %s\n"
"niet openen voor schrijven."
-#: Theme.cpp:655
+#: Theme.cpp:664
#, c-format
-msgid "Audacity could not write images to file:\n"
+msgid ""
+"Audacity could not write images to file:\n"
" %s."
-msgstr "Audacity kon de afbeeldingen niet naar het bestand:\n"
+msgstr ""
+"Audacity kon de afbeeldingen niet naar het bestand:\n"
" %s\n"
"schrijven."
-#: Theme.cpp:790
+#: Theme.cpp:799
#, c-format
-msgid "Audacity could not find file:\n"
+msgid ""
+"Audacity could not find file:\n"
" %s.\n"
"Theme not loaded."
-msgstr "Audacity kon het bestand:\n"
+msgstr ""
+"Audacity kon het bestand:\n"
" %s\n"
"niet vinden. Thema is niet geladen."
-#: Theme.cpp:798 Theme.cpp:886
+#: Theme.cpp:807
+#: Theme.cpp:896
#, c-format
-msgid "Audacity could not load file:\n"
+msgid ""
+"Audacity could not load file:\n"
" %s.\n"
"Bad png format perhaps?"
-msgstr "Audacity kon het bestand:\n"
+msgstr ""
+"Audacity kon het bestand:\n"
" %s\n"
"niet inladen. Wellicht een foutief png-format?"
-#: Theme.cpp:814
-msgid "Audacity could not read its default theme.\n"
+#: Theme.cpp:823
+msgid ""
+"Audacity could not read its default theme.\n"
"Please report the problem."
-msgstr "Audacity kon het standaardthema niet lezen.\n"
+msgstr ""
+"Audacity kon het standaardthema niet lezen.\n"
"Gelieve dit probleem te rapporteren."
-#: Theme.cpp:908
+#: Theme.cpp:918
#, c-format
-msgid "None of the expected theme component files\n"
+msgid ""
+"None of the expected theme component files\n"
" were found in:\n"
" %s."
-msgstr "Geen van de verwachte thema componentbestanden\n"
+msgstr ""
+"Geen van de verwachte thema componentbestanden\n"
" zijn aangetroffen in:\n"
" %s."
-#: Theme.cpp:932
+#: Theme.cpp:942
+#: effects/NoiseRemoval.cpp:172
#, c-format
-msgid "Could not create directory:\n"
+msgid ""
+"Could not create directory:\n"
" %s"
-msgstr "Kon map niet aanmaken:\n"
+msgstr ""
+"Kon map niet aanmaken:\n"
" %s"
-#: Theme.cpp:953
+#: Theme.cpp:963
#, c-format
-msgid "Audacity could not save file:\n"
+msgid ""
+"Audacity could not save file:\n"
" %s"
-msgstr "Audacity kon het bestand:\n"
+msgstr ""
+"Audacity kon het bestand:\n"
" %s\n"
"niet opslaan"
-#: Theme.cpp:965
+#: Theme.cpp:975
#, c-format
-msgid "All required files in:\n"
+msgid ""
+"All required files in:\n"
" %s\n"
"were already present."
-msgstr "Alle vereiste bestanden in:\n"
+msgstr ""
+"Alle vereiste bestanden in:\n"
" %s\n"
"waren al aanwezig."
# tijdsduur
-#: SmartRecordDialog.cpp:285
+#: TimeDialog.h:29
+#: TimerRecordDialog.cpp:233
+#: TimerRecordDialog.cpp:354
+#: TimerRecordDialog.cpp:358
+#: effects/DtmfGen.cpp:446
+#: effects/Noise.cpp:191
+#: effects/Noise.cpp:207
+#: effects/ToneGen.cpp:279
+#: effects/ToneGen.cpp:291
+#: effects/ToneGen.cpp:323
+#: effects/ToneGen.cpp:335
msgid "Duration"
msgstr "Tijdsduur"
+#: TimeTrack.cpp:44
+msgid "Time Track"
+msgstr "Tijdspoor"
+
# =venstertitel
-#: SmartRecordDialog.cpp:68
+#: TimerRecordDialog.cpp:69
msgid "Audacity Timer Record"
msgstr "Audacity opname inplannen"
-#: SmartRecordDialog.cpp:223
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr "Tijdsduur is nul. Er zal niets opgenomen worden."
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr "Fout in tijdsduur"
+
+#: TimerRecordDialog.cpp:230
msgid "Recording start"
-msgstr ""
+msgstr "Opname-begin"
-#: SmartRecordDialog.cpp:224
+#: TimerRecordDialog.cpp:231
msgid "Recording end"
-msgstr ""
+msgstr "Opname-einde"
-#: TimerRecordDialog.cpp:230
+#: TimerRecordDialog.cpp:237
msgid "Audacity Timer Record Progress"
-msgstr ""
+msgstr "Voortgang van Audacity ingeplande opname"
-#: SmartRecordDialog.cpp:251
+#: TimerRecordDialog.cpp:316
msgid "Start Date and Time"
msgstr "Begindatum en tijd"
-#: TimerRecordDialog.cpp:274
+#: TimerRecordDialog.cpp:323
msgid "Start Date"
-msgstr ""
+msgstr "Startdatum"
-#: SmartRecordDialog.cpp:268
+#: TimerRecordDialog.cpp:335
msgid "End Date and Time"
msgstr "Einddatum en tijd"
-#: TimerRecordDialog.cpp:294
+#: TimerRecordDialog.cpp:343
msgid "End Date"
-msgstr ""
+msgstr "Einddatum"
#. i18n-hint: A time specification like "Sunday 28th October 2007 15:16:17 GMT"
#. * but hopefully translated by wxwidgets will be inserted into this
-#: SmartRecordDialog.cpp:380
+#: TimerRecordDialog.cpp:430
#, c-format
msgid "Waiting to start recording at %s.\n"
msgstr "Wachten voor opname op %s.\n"
-#: TimerRecordDialog.cpp:382
+#: TimerRecordDialog.cpp:436
msgid "Audacity Timer Record - Waiting for Start"
-msgstr ""
-
-# sporenpaneel
-#: TrackPanel.cpp:452 TrackPanel.cpp:453
-msgid "Track Panel"
-msgstr "Sporenpaneel"
+msgstr "Audacity ingeplande opname - Wachten op begin opname"
# Anders/overige/andere
# bijvoorbeed: Audiospoor->frequentie instellen->[8000][11025][44100][Anders}
-#: ../src/AStatus.cpp:81 ../src/TrackPanel.cpp:822
-#: ../src/prefs/FileFormatPrefs.cpp:105 ../src/prefs/QualityPrefs.cpp:91
+#: TrackPanel.cpp:596
+#: prefs/QualityPrefs.cpp:99
msgid "Other..."
msgstr "Andereâ¦"
# Benoemen/Titel/Naam/Benaming/Nieuwe naam
# het brengt een dialoog op waarin je een spoor een naam/titel kunt geven
-#: ../src/TrackPanel.cpp:830 ../src/TrackPanel.cpp:851
-#: ../src/TrackPanel.cpp:860 ../src/TrackPanel.cpp:868
+#: TrackPanel.cpp:604
+#: TrackPanel.cpp:627
+#: TrackPanel.cpp:636
+#: TrackPanel.cpp:644
msgid "Name..."
msgstr "Nieuwe naamâ¦"
-#: ../src/TrackPanel.cpp:832 ../src/TrackPanel.cpp:853
-#: ../src/TrackPanel.cpp:864 ../src/TrackPanel.cpp:870
+#: TrackPanel.cpp:606
+#: TrackPanel.cpp:629
+#: TrackPanel.cpp:640
+#: TrackPanel.cpp:646
msgid "Move Track Up"
msgstr "Spoor naar boven verplaatsen"
-#: ../src/TrackPanel.cpp:833 ../src/TrackPanel.cpp:854
-#: ../src/TrackPanel.cpp:865 ../src/TrackPanel.cpp:871
+#: TrackPanel.cpp:607
+#: TrackPanel.cpp:630
+#: TrackPanel.cpp:641
+#: TrackPanel.cpp:647
msgid "Move Track Down"
msgstr "Spoor naar beneden verplaatsen"
-#: ../src/TrackPanel.cpp:835
+#: TrackPanel.cpp:609
+#: effects/ToneGen.cpp:275
+#: prefs/TracksPrefs.cpp:56
msgid "Waveform"
msgstr "Golfvorm"
-#: ../src/TrackPanel.cpp:836
+#: TrackPanel.cpp:610
+#: prefs/TracksPrefs.cpp:57
msgid "Waveform (dB)"
msgstr "Golfvorm (dB)"
-#: TrackPanel.cpp:565
+#: TrackPanel.cpp:612
+#: prefs/TracksPrefs.cpp:59
msgid "Spectrum log(f)"
msgstr "Spectrum log(f)"
-#: ../src/TrackPanel.cpp:838
+#. i18n-hint: short form of 'logarithm'
+#: TrackPanel.cpp:613
+#: prefs/TracksPrefs.cpp:60
msgid "Pitch (EAC)"
msgstr "Toonhoogte (EAC)"
-#: ../src/TrackPanel.cpp:840
+#: TrackPanel.cpp:615
+#: TrackPanel.cpp:6200
msgid "Mono"
msgstr "Mono"
-#: ../src/TrackPanel.cpp:841
+#: TrackPanel.cpp:616
+#: TrackPanel.cpp:6199
msgid "Left Channel"
msgstr "Linker kanaal"
-#: ../src/TrackPanel.cpp:842
+#: TrackPanel.cpp:617
+#: TrackPanel.cpp:6199
msgid "Right Channel"
msgstr "Rechter kanaal"
-#: ../src/TrackPanel.cpp:843
+#: TrackPanel.cpp:618
msgid "Make Stereo Track"
msgstr "Stereospoor maken"
-#: ../src/TrackPanel.cpp:844
+#: TrackPanel.cpp:619
msgid "Split Stereo Track"
msgstr "Stereospoor splitsen"
-#: ../src/TrackPanel.cpp:846
+#: TrackPanel.cpp:620
+msgid "Split Stereo to Mono"
+msgstr "Van stereo naar mono splitsen"
+
+#: TrackPanel.cpp:622
msgid "Set Sample Format"
-msgstr "Sampleformat instellen"
+msgstr "Sampleformaat instellen"
-#: ../src/AStatus.cpp:352 ../src/TrackPanel.cpp:848 ../src/TrackPanel.cpp:4322
+#: TrackPanel.cpp:624
+#: TrackPanel.cpp:6461
msgid "Set Rate"
msgstr "Frequentie instellen"
-#: ../src/TrackPanel.cpp:856
+#: TrackPanel.cpp:632
msgid "Up Octave"
msgstr "Octaaf naar boven"
-#: ../src/TrackPanel.cpp:857
+#: TrackPanel.cpp:633
msgid "Down Octave"
msgstr "Octaaf naar beneden"
-#: ../src/TrackPanel.cpp:862
+#: TrackPanel.cpp:638
msgid "Font..."
msgstr "Lettertypeâ¦"
-#: ../src/TrackPanel.cpp:873
+#: TrackPanel.cpp:649
msgid "Set Range..."
msgstr "Bereik instellenâ¦"
-#: ../src/EditToolBar.cpp:150
+#: TrackPanel.cpp:653
+#: toolbars/EditToolBar.cpp:132
+#: toolbars/EditToolBar.cpp:191
msgid "Copy"
msgstr "Kopiëren"
-#: ../src/TrackPanel.cpp:1513
+#: TrackPanel.cpp:1302
msgid "Click to vertically zoom in, Shift-click to zoom out, Drag to create a particular zoom region."
msgstr "Klikken om verticaal in te zoomen. Shift-klikken om uit te zoomen. Slepen om op een bepaald gebied te zoomen."
-#: ../src/TrackPanel.cpp:1519
+#: TrackPanel.cpp:1307
msgid "Drag the label vertically to change the order of the tracks."
msgstr "Sleep het label verticaal om de volgorde van de sporen aan te passen."
-#: ../src/TrackPanel.cpp:1616
+#: TrackPanel.cpp:1327
msgid "Click and drag to adjust relative size of stereo tracks."
msgstr "Klik en sleep om de relatieve afmeting van de stereo-sporen aan te passen."
-#: ../src/TrackPanel.cpp:1621
+#: TrackPanel.cpp:1330
msgid "Click and drag to resize the track."
msgstr "Klik en sleep om de grootte van het spoor aan te passen."
-#: TrackPanel.cpp:1298
+#: TrackPanel.cpp:1361
msgid "Drag one or more label boundaries"
msgstr "Versleep een of meer grenzen van het label"
# statusbalkmelding
-#: TrackPanel.cpp:1299
+#: TrackPanel.cpp:1362
msgid "Drag label boundary"
msgstr "Versleep de grens van het label"
-#: ../src/TrackPanel.cpp:1541
+#. i18n-hint: This string is for the Mac OS, which uses Command-, as the shortcut for Preferences
+#: TrackPanel.cpp:1378
msgid "Multi-Tool Mode: Cmd-, for Mouse and Keyboard Preferences"
msgstr "Combinatiestand: Cmd- voor muis en toetsenbord voorkeuren"
-#: ../src/TrackPanel.cpp:1543
+#. i18n-hint: This string is for Windows and Linux, which uses Control-P as the shortcut for Preferences
+#: TrackPanel.cpp:1381
msgid "Multi-Tool Mode: Ctrl-P for Mouse and Keyboard Preferences"
msgstr "Combinatiestand: Ctrl-P voor muis en toetsenbord voorkeuren"
-#: ../src/TrackPanel.cpp:1574
+#: TrackPanel.cpp:1427
msgid "Click and drag to move left selection boundary."
msgstr "Klik en sleep om de linker selectiegrens te verplaatsen."
-#: ../src/TrackPanel.cpp:1579
+#: TrackPanel.cpp:1432
msgid "Click and drag to move right selection boundary."
msgstr "Klik en sleep om de rechter selectiegrens te verplaatsen."
-#: ../src/TrackPanel.cpp:3314
+#: TrackPanel.cpp:1770
+#: TrackPanel.cpp:4054
+#: TrackPanel.cpp:4086
+#: TrackPanel.cpp:4348
+#: TrackPanel.cpp:6610
+#: TrackPanel.cpp:6630
msgid "Modified Label"
msgstr "Label aangepast"
-#: ../src/TrackPanel.cpp:3315
+#: TrackPanel.cpp:1771
+#: TrackPanel.cpp:4055
+#: TrackPanel.cpp:4087
+#: TrackPanel.cpp:4349
+#: TrackPanel.cpp:6611
+#: TrackPanel.cpp:6631
msgid "Label Edit"
msgstr "Label bewerken"
# begrensing aangepast
-#: ../src/TrackPanel.cpp:1904
+#: TrackPanel.cpp:2009
msgid "Adjusted envelope."
msgstr "Verloop aangepast."
# the envelope tool in muis-voorkeuren
-#: ../src/TrackPanel.cpp:1905 ../src/prefs/MousePrefs.cpp:98
+#: TrackPanel.cpp:2010
+#: prefs/MousePrefs.cpp:119
msgid "Envelope"
msgstr "Verloop"
-#: TrackPanel.cpp:2033
+#: TrackPanel.cpp:2160
msgid "Moved clip to another track"
msgstr "Clip is naar ander spoor verplaatst"
# naar links/links
-#: ../src/TrackPanel.cpp:2012
+#: TrackPanel.cpp:2164
msgid "left"
msgstr "links"
-#: ../src/TrackPanel.cpp:2012
+#: TrackPanel.cpp:2164
msgid "right"
msgstr "rechts"
@@ -3696,277 +4364,301 @@ msgstr "rechts"
# Sporen/clips %2$.02f seconden naar %1$s verschoven<
# Sporen/clips %.02f seconden naar %s verschoven
#. i18n-hint: %s is a direction like left or right
-#: TrackPanel.cpp:2039
+#: TrackPanel.cpp:2166
#, c-format
msgid "Time shifted tracks/clips %s %.02f seconds"
msgstr "Sporen/clips %s verschoven over %.02f seconden"
-#: ../src/prefs/MousePrefs.cpp:97
+#: TrackPanel.cpp:2170
+#: prefs/MousePrefs.cpp:115
+#: prefs/MousePrefs.cpp:116
+#: prefs/MousePrefs.cpp:117
msgid "Time-Shift"
msgstr "Tijd verschuiven"
-#: TrackPanel.cpp:2953
+#: TrackPanel.cpp:2964
msgid "To use Draw, choose 'Waveform' in the Track Drop-down Menu."
-msgstr ""
+msgstr "Om te Tekenen, kies 'Golfvorm' in het Sporen-dropdownmenu."
-#: TrackPanel.cpp:2970
+#: TrackPanel.cpp:2981
msgid "To use Draw, zoom in further until you can see the individual samples."
-msgstr ""
+msgstr "Om te Tekenen, zoom zover in dat U de afzonderlijke samples kunt zien."
-#: ../src/TrackPanel.cpp:2637
+#: TrackPanel.cpp:3255
msgid "Moved Sample"
msgstr "Sample verplaatst"
-#: ../src/TrackPanel.cpp:2638
+#: TrackPanel.cpp:3256
msgid "Sample Edit"
msgstr "Sample bewerken"
-#: ../src/TrackPanel.cpp:2703
+#: TrackPanel.cpp:3349
#, c-format
msgid "Removed track '%s.'"
msgstr "Spoor â%sâ verwijderd."
-#: ../src/TrackPanel.cpp:2705
+#: TrackPanel.cpp:3351
msgid "Track Remove"
msgstr "Spoor verwijderen"
-#: ../src/TrackPanel.cpp:2806
+#: TrackPanel.cpp:3497
msgid "Moved gain slider"
msgstr "Hoofdvolumeschuif verplaatst"
-#: ../src/TrackPanel.cpp:2806
+#: TrackPanel.cpp:3497
msgid "Moved pan slider"
msgstr "Balansschuif verplaatst"
# onvertaald laten?
#. i18n-hint: Title of the Gain slider, used to adjust the volume
-#: ../src/TrackPanel.cpp:2807 ../src/TrackPanel.cpp:4726
+#: TrackPanel.cpp:3498
+#: TrackPanel.cpp:5801
+#: TrackPanel.cpp:7254
msgid "Gain"
msgstr "Versterking"
#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: ../src/TrackPanel.cpp:2807 ../src/TrackPanel.cpp:4733
+#: TrackPanel.cpp:3498
+#: TrackPanel.cpp:5749
+#: TrackPanel.cpp:7262
msgid "Pan"
msgstr "Balans"
# boven/naar boven
# vergelijk links/naar links etc.
-#: ../src/TrackPanel.cpp:4387 ../src/effects/ChangePitch.cpp:277
+#: TrackPanel.cpp:3664
+#: TrackPanel.cpp:6561
msgid "up"
msgstr "naar boven"
-#: ../src/TrackPanel.cpp:4388 ../src/effects/ChangePitch.cpp:277
+#: TrackPanel.cpp:3668
+#: TrackPanel.cpp:6562
msgid "down"
msgstr "naar beneden"
# tweede %s is links/rechts/beneden/boven
-#: ../src/TrackPanel.cpp:4383
+#: TrackPanel.cpp:3675
+#: TrackPanel.cpp:6557
#, c-format
msgid "Moved '%s' %s"
msgstr "â%sâ naar %s verplaatst"
-#: ../src/TrackPanel.cpp:4389
+#: TrackPanel.cpp:3678
+#: TrackPanel.cpp:6563
msgid "Move Track"
msgstr "Spoor verplaatsen"
-#: TrackPanel.cpp:3905
+#: TrackPanel.cpp:4249
msgid "Expand"
msgstr "Uitvouwen"
-#: TrackPanel.cpp:3905
+#: TrackPanel.cpp:4249
msgid "Expanded Cut Line"
msgstr "Snijlijn uitgebreid"
# vastplakken/samenvoegen
-#: TrackPanel.cpp:3975
+#: TrackPanel.cpp:4258
msgid "Merge"
msgstr "Samenvoegen"
-#: TrackPanel.cpp:3975
+#: TrackPanel.cpp:4258
msgid "Merged Clips"
msgstr "Samengevoegde clips"
-#: TrackPanel.cpp:3925
+#: TrackPanel.cpp:4269
+msgid "Remove"
+msgstr "Verwijderen"
+
+#: TrackPanel.cpp:4269
msgid "Removed Cut Line"
msgstr "Snijlijn verwijderd"
-#: TrackPanel.cpp:5210
+#: TrackPanel.cpp:5749
msgid "Adjusted Pan"
msgstr "Balans aangepast"
-#: TrackPanel.cpp:5272
+#: TrackPanel.cpp:5801
msgid "Adjusted gain"
msgstr "Versterking aangepast"
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr ""
-
# actieve audio/terwijl audio nog bewerkt wordt?
-#: TrackPanel.cpp:5428
+#: TrackPanel.cpp:6030
msgid "Can't delete track with active audio"
msgstr "Kan spoor niet verwijderen met actieve audio"
-#: ../src/TrackPanel.cpp:4087
+#: TrackPanel.cpp:6180
msgid "Stereo, "
msgstr "Stereo, "
-#: ../src/TrackPanel.cpp:4090
+#: TrackPanel.cpp:6183
msgid "Mono, "
msgstr "Mono, "
-#: ../src/TrackPanel.cpp:4092
+#: TrackPanel.cpp:6185
msgid "Left, "
msgstr "Links, "
-#: ../src/TrackPanel.cpp:4094
+#: TrackPanel.cpp:6187
msgid "Right, "
msgstr "Rechts, "
# veranderd/gewijzigd
-#: ../src/TrackPanel.cpp:4116 ../src/TrackPanel.cpp:4225
+#: TrackPanel.cpp:6209
+#: TrackPanel.cpp:6371
#, c-format
msgid "Changed '%s' to %s"
msgstr "â%sâ gewijzigd in %s"
-#: ../src/TrackPanel.cpp:4121
+#: TrackPanel.cpp:6212
msgid "Channel"
msgstr "Kanaal"
-#: ../src/TrackPanel.cpp:4131
+#: TrackPanel.cpp:6253
#, c-format
msgid "Split stereo track '%s'"
msgstr "Stereospoor â%sâ gedeeld"
-#: ../src/TrackPanel.cpp:4153
+#: TrackPanel.cpp:6255
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr "Van stereo naar mono splitsen '%s'"
+
+#: TrackPanel.cpp:6287
#, c-format
msgid "Made '%s' a stereo track"
msgstr "â%sâ omgezet in een stereospoor"
# naar stereo omzetten
-#: ../src/TrackPanel.cpp:4156
+#: TrackPanel.cpp:6290
msgid "Make Stereo"
msgstr "Stereo maken"
-#: ../src/TrackPanel.cpp:4189
+#: TrackPanel.cpp:6335
#, c-format
msgid "Changed '%s' to %d Hz"
msgstr "â%sâ omgezet naar %d Hz"
# wijziging/verandering
-#: ../src/TrackPanel.cpp:4191
+#: TrackPanel.cpp:6337
msgid "Rate Change"
msgstr "Snelheidsverandering"
# format/formaat wijziging/verandering
-#: ../src/TrackPanel.cpp:4229
+#: TrackPanel.cpp:6375
msgid "Format Change"
msgstr "Formatwijziging"
-#: ../src/TrackPanel.cpp:4351
+#: TrackPanel.cpp:6525
msgid "Change lower speed limit (%) to:"
msgstr "Onderlimiet snelheidspercentage wijzigen naar:"
-#: ../src/TrackPanel.cpp:4352 ../src/TrackPanel.cpp:4353
+#: TrackPanel.cpp:6526
+#: TrackPanel.cpp:6527
msgid "Lower speed limit"
msgstr "Onderlimiet snelheid"
-#: ../src/TrackPanel.cpp:4358
+#: TrackPanel.cpp:6532
msgid "Change upper speed limit (%) to:"
msgstr "Bovenlimiet snelheidspercentage wijzigen naar:"
-#: ../src/TrackPanel.cpp:4359 ../src/TrackPanel.cpp:4360
+#: TrackPanel.cpp:6533
+#: TrackPanel.cpp:6534
msgid "Upper speed limit"
msgstr "Bovenlimiet snelheid"
# geen strikte vertaling, maar het is zo duidelijker.
# Tekst verschijnt in Bewerkingsgeschiedenis
# (rapporteren aan developers)
-#: ../src/TrackPanel.cpp:4368
+#: TrackPanel.cpp:6542
#, c-format
msgid "Set range to '%d' - '%d'"
msgstr "Snelheidsbereik ingesteld op â%dâ - â%dâ"
-#: ../src/TrackPanel.cpp:4371
+#: TrackPanel.cpp:6545
msgid "Set Range"
msgstr "Bereik instellen"
# geef het spoor een nieuwe naam/titel
# wijzig/verander
-#: ../src/TrackPanel.cpp:4416
+#: TrackPanel.cpp:6592
msgid "Change track name to:"
msgstr "Verander de naam van het spoor naar:"
# Dit is de titel van het dialoogvenster als je een spoor gaat hernoemen
-#: ../src/TrackPanel.cpp:4417
+#: TrackPanel.cpp:6593
msgid "Track Name"
msgstr "Spoornaam"
-#: ../src/TrackPanel.cpp:4420
+#: TrackPanel.cpp:6596
#, c-format
msgid "Renamed '%s' to '%s'"
msgstr "â%sâ is hernoemd naar â%sâ"
# naamsverandering/naamwijziging
-#: ../src/TrackPanel.cpp:4423
+#: TrackPanel.cpp:6599
msgid "Name Change"
msgstr "Naamwijziging"
# Labelspoor lettertype
-#: ../src/TrackPanel.cpp:4454
+#: TrackPanel.cpp:6665
msgid "Label Track Font"
msgstr "Lettertype labelspoor"
# typeface?
-#: TrackPanel.cpp:6038
+#: TrackPanel.cpp:6677
+#: TrackPanel.cpp:6683
msgid "Face name"
msgstr "Lettertype"
-#: TrackPanel.cpp:6047
+#: TrackPanel.cpp:6687
+#: TrackPanel.cpp:6694
msgid "Face size"
msgstr "Grootte"
+#: TrackPanel.cpp:6943
+msgid "Stereo, 999999Hz"
+msgstr "Stereo, 999999Hz"
+
# Dimmen is net iets te lang voor het label
-#: ../src/TrackPanel.cpp:4701
+#: TrackPanel.cpp:7203
msgid "Mute"
msgstr "Stil"
-#: ../src/TrackPanel.cpp:4701
+#: TrackPanel.cpp:7203
msgid "Solo"
msgstr "Solo"
# moet ws niet vertaald worden omdat het een commandname is in
# CamelStyle.
-#: TrackPanelAx.cpp:266
+#: TrackPanelAx.cpp:285
msgid "TrackView"
msgstr "TrackView"
-#: TrackPanelAx.cpp:274
+#: TrackPanelAx.cpp:293
msgid "Track Accessible out of sync"
msgstr "Track Accessible niet gesynchroniseerd"
-#: TrackPanelAx.cpp:282
+#: TrackPanelAx.cpp:301
#, c-format
msgid "Track %d"
msgstr "Spoor %d"
-#: TrackPanelAx.cpp:288
+#: TrackPanelAx.cpp:307
msgid " Mute On"
msgstr " Stil aan"
-#: TrackPanelAx.cpp:293
+#: TrackPanelAx.cpp:312
msgid " Solo On"
msgstr " Solo aan"
-#: TrackPanelAx.cpp:297
+#: TrackPanelAx.cpp:316
msgid " Select On"
msgstr " Selectie aan"
-#: VoiceKey.cpp:88 VoiceKey.cpp:238 VoiceKey.cpp:376 VoiceKey.cpp:517
+#: VoiceKey.cpp:88
+#: VoiceKey.cpp:238
+#: VoiceKey.cpp:376
+#: VoiceKey.cpp:517
msgid "Selection is too small to use voice key."
msgstr "Selectie is te klein om de 'voice key' te gebruiken"
@@ -3989,205 +4681,229 @@ msgstr "Tekenwisselingen -- gemiddeld: %1.4f sd: (%1.4f)\n"
msgid "Direction Changes -- mean: %1.4f sd: (%1.4f)\n"
msgstr "Richtingwisselingen -- gemiddeld: %1.4f sd: (%1.4f)\n"
-#: ../src/WaveTrack.cpp:128
+#: WaveTrack.cpp:87
msgid "Audio Track"
msgstr "Audiospoor"
# ruimte beschikbaar/ruimte
-#: WaveTrack.cpp:515 WaveTrack.cpp:534
+#: WaveTrack.cpp:976
+#: WaveTrack.cpp:995
msgid "There is not enough room available to paste the selection"
msgstr "Er is te weinig ruimte om de selectie te plakken"
-#: WaveTrack.cpp:1583
+#: WaveTrack.cpp:2021
msgid "There is not enough room available to expand the cut line"
msgstr "Er is te weinig ruimte om de snijlijn uit te breiden"
-#: ../src/commands/CommandManager.cpp:323
+#: commands/CommandManager.cpp:549
#, c-format
msgid "Plugins 1 to %i"
msgstr "Plugins 1 tot %i"
-#: ../src/commands/CommandManager.cpp:337
+#: commands/CommandManager.cpp:563
#, c-format
msgid "Plugins %i to %i"
msgstr "Plugins %i tot %i"
-#: commands/CommandManager.cpp:857
-#, fuzzy
-msgid "Disallowed for some reason. Try selecting some audio first?"
-msgstr "Niet toegestaan door een of andere oorzaak. Probeer eerst wat audio te selecteren."
+#: commands/CommandManager.cpp:928
+msgid ""
+"There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
+msgstr ""
+"Er was een probleem bij uw laatste handeling. Als u denkt\n"
+"dat dit een bug is, vertel ons exact waar hij zich voordeed."
-#: commands/CommandManager.cpp:724
-msgid "You can only do this when playing and recording are\n"
+#: commands/CommandManager.cpp:932
+msgid ""
+"You can only do this when playing and recording are\n"
" stopped. [Pausing is not sufficient.]"
-msgstr "Dit kunt u alleen doen wanneer afspelen en opname\n"
+msgstr ""
+"Dit kunt u alleen doen wanneer afspelen en opname\n"
"gestopt zijn. [Pauzeren is niet voldoende]"
-#: commands/CommandManager.cpp:726
-msgid "You must first select some stereo audio for this\n"
+#: commands/CommandManager.cpp:934
+msgid ""
+"You must first select some stereo audio for this\n"
" to use. [You can't use this with mono.]"
-msgstr "U moet hiervoor eerst wat stereo-geluid selecteren.\n"
+msgstr ""
+"U moet hiervoor eerst wat stereo-geluid selecteren.\n"
"[U kunt dit niet gebruiken met mono-geluid]"
-#: commands/CommandManager.cpp:728
+#: commands/CommandManager.cpp:936
msgid "You must first select some audio for this to use."
msgstr "U moet hiervoor eerst wat audio selecteren"
-#: commands/CommandManager.cpp:730
-msgid "You must first select some audio for this\n"
+#: commands/CommandManager.cpp:938
+msgid ""
+"You must first select some audio for this\n"
" to use. [Selecting other kinds of track won't work.]"
-msgstr "U moet hiervoor eerst wat audio selecteren.\n"
+msgstr ""
+"U moet hiervoor eerst wat audio selecteren.\n"
"[U kunt dit niet bij andere soorten tracks gebruiken.]"
-#: commands/CommandManager.cpp:903
+# gedeactiveerd/uitgeschakeld/uit
+#: commands/CommandManager.cpp:943
msgid "Disallowed"
-msgstr ""
+msgstr "Uitgeschakeld"
-#: ../src/commands/CommandManager.cpp:640
+#: commands/CommandManager.cpp:1167
#, c-format
msgid "Loaded %d keyboard shortcuts\n"
msgstr "%d sneltoetsen geladen\n"
-#: ../src/commands/CommandManager.cpp:643
+#: commands/CommandManager.cpp:1169
msgid "Loading keyboard shortcuts"
msgstr "Sneltoetsen worden geladen"
-#: ../src/effects/Amplify.cpp:34
+#: effects/Amplify.cpp:53
#, c-format
msgid "Applied effect: %s %.1f dB"
msgstr "Effect toegepast: %s %.1f dB"
-#: ../src/effects/Amplify.cpp:63
+#: effects/Amplify.cpp:136
msgid "Amplify"
msgstr "Versterken"
-#: effects/Amplify.cpp:155 effects/Compressor.cpp:476
-#: effects/Normalize.cpp:337
+#: effects/Amplify.cpp:152
+#: effects/Compressor.cpp:487
+#: effects/Normalize.cpp:341
msgid "by Dominic Mazzoni"
-msgstr ""
+msgstr "door Dominic Mazzoni"
-#: ../src/effects/Amplify.cpp:132
+#: effects/Amplify.cpp:165
msgid "Amplification (dB):"
msgstr "Versterking (dB):"
-#: effects/Amplify.cpp:183
+#: effects/Amplify.cpp:180
msgid "Amplification dB"
-msgstr ""
+msgstr "Versterking (dB)"
-#: ../src/effects/Amplify.cpp:152
+#: effects/Amplify.cpp:187
msgid "New Peak Amplitude (dB):"
msgstr "Nieuwe piekamplitude (dB):"
# Sta geen oversturing toe (S. Alkemade)
-#: ../src/effects/Amplify.cpp:164
+#: effects/Amplify.cpp:197
msgid "Allow clipping"
msgstr "Oversturing toestaan"
-#: effects/Amplify.cpp:237 effects/Amplify.cpp:287 effects/Amplify.cpp:353
+#: effects/Amplify.cpp:219
+#: effects/Amplify.cpp:276
+#: effects/Amplify.cpp:320
msgid "-Infinity"
msgstr "-Oneindig"
-#: ../src/effects/Amplify.h:47
+#: effects/Amplify.h:37
msgid "Amplify..."
msgstr "Versterkenâ¦"
# bezig met
-#: ../src/effects/Amplify.h:51
+#: effects/Amplify.h:51
msgid "Amplifying"
msgstr "Bezig met versterken"
-#: effects/AutoDuck.cpp:125
+#: effects/AutoDuck.cpp:140
msgid "You selected a track which does not contain audio. AutoDuck can only process audio tracks."
msgstr "U heeft een spoor geselecteerd dat geen audio bevat. âAutomatisch dempenâ kan alleen van audiosporen gebruik maken."
# duiken/onderduiken/terugnemen (in volume)/zachter/dempen
-#: effects/AutoDuck.cpp:126 effects/AutoDuck.cpp:138 effects/AutoDuck.cpp:451
-#: effects/AutoDuck.cpp:578
+#: effects/AutoDuck.cpp:141
+#: effects/AutoDuck.cpp:153
+#: effects/AutoDuck.cpp:467
+#: effects/AutoDuck.cpp:584
msgid "Auto Duck"
msgstr "Automatisch dempen"
# het tweede audiospoor 'bepaalt' wanneer het eerste spoor zachter wordt gemaakt.
# een bedieningsspoor dus.
-#: effects/AutoDuck.cpp:137
+#: effects/AutoDuck.cpp:152
msgid "Auto Duck needs a control track which must be placed below the selected track(s)."
msgstr "âAutomatisch dempenâ heeft een tweede audiospoor nodig dat onder het geselecteerde spoor of sporen geplaatst moet worden."
-#: effects/AutoDuck.cpp:463
+#: effects/AutoDuck.cpp:479
msgid "Auto Duck by Markus Meyer"
msgstr "Automatisch dempen door Markus Meyer"
-#: effects/AutoDuck.cpp:485
+#: effects/AutoDuck.cpp:501
msgid "Duck amount:"
msgstr "Hoeveelheid demping:"
-#: effects/AutoDuck.cpp:490
+#: effects/AutoDuck.cpp:506
msgid "Maximum pause:"
msgstr "Maximum pauze:"
-#: effects/AutoDuck.cpp:492 effects/AutoDuck.cpp:497 effects/AutoDuck.cpp:502
-#: effects/AutoDuck.cpp:507 effects/AutoDuck.cpp:512
-#: prefs/AudioIOPrefs.cpp:162 prefs/AudioIOPrefs.cpp:164
-#: prefs/AudioIOPrefs.cpp:188 prefs/AudioIOPrefs.cpp:190
-#: prefs/AudioIOPrefs.cpp:198 widgets/TimeTextCtrl.cpp:197
+#. i18n-hint: Name of time display format that shows time in seconds
+#: effects/AutoDuck.cpp:508
+#: effects/AutoDuck.cpp:513
+#: effects/AutoDuck.cpp:518
+#: effects/AutoDuck.cpp:523
+#: effects/AutoDuck.cpp:528
+#: prefs/MidiIOPrefs.cpp:185
+#: prefs/MidiIOPrefs.cpp:187
+#: prefs/MidiIOPrefs.cpp:209
+#: prefs/MidiIOPrefs.cpp:211
+#: prefs/MidiIOPrefs.cpp:219
+#: prefs/PlaybackPrefs.cpp:65
+#: prefs/PlaybackPrefs.cpp:66
+#: prefs/PlaybackPrefs.cpp:80
+#: prefs/PlaybackPrefs.cpp:81
+#: prefs/PlaybackPrefs.cpp:87
+#: prefs/PlaybackPrefs.cpp:88
+#: prefs/PlaybackPrefs.cpp:102
+#: prefs/PlaybackPrefs.cpp:103
+#: prefs/PlaybackPrefs.cpp:109
+#: prefs/PlaybackPrefs.cpp:110
+#: widgets/TimeTextCtrl.cpp:265
msgid "seconds"
msgstr "seconden"
# voortijdig/natijdig (inner/outer)
# binnen/buiten is minder duidelijk
-#: effects/AutoDuck.cpp:495
+#: effects/AutoDuck.cpp:511
msgid "Outer fade down length:"
msgstr "Voortijdige fade-down:"
-#: effects/AutoDuck.cpp:500
+#: effects/AutoDuck.cpp:516
msgid "Outer fade up length:"
msgstr "Natijdige fade-up:"
-#: effects/AutoDuck.cpp:505
+#: effects/AutoDuck.cpp:521
msgid "Inner fade down length:"
msgstr "Natijdige fade-down:"
-#: effects/AutoDuck.cpp:510
+#: effects/AutoDuck.cpp:526
msgid "Inner fade up length:"
msgstr "Voortijdige fade-up:"
-#: effects/AutoDuck.cpp:519 effects/Compressor.cpp:479
+#: effects/AutoDuck.cpp:535
+#: effects/Compressor.cpp:506
msgid "Threshold:"
msgstr "Drempelwaarde:"
-#: effects/AutoDuck.cpp:578
+#: effects/AutoDuck.cpp:584
msgid "Please enter valid values."
msgstr "Voer geldige waardes in."
-#: effects/AutoDuck.cpp:712
+#: effects/AutoDuck.cpp:719
msgid "Preview not available"
msgstr "Luistervoorbeeld niet beschikbaar"
-#: effects/AutoDuck.h:97
+#: effects/AutoDuck.h:98
msgid "Auto Duck..."
msgstr "Automatsch dempenâ¦"
-#: effects/AutoDuck.h:102
+#: effects/AutoDuck.h:115
msgid "Processing Auto Duck..."
msgstr "Automatisch dempen verwerkenâ¦"
-#: ../src/LangChoice.cpp:94 ../src/Tags.cpp:721
-#: ../src/effects/VST/VSTEffect.cpp:98 ../src/effects/VST/VSTEffect.cpp:455
-#: ../src/effects/Amplify.cpp:187 ../src/effects/AvcCompressor.cpp:716
-#: ../src/effects/BassBoost.cpp:332 ../src/effects/ChangePitch.cpp:393
-#: ../src/effects/ChangeSpeed.cpp:379 ../src/effects/ChangeTempo.cpp:284
-#: ../src/effects/Compressor.cpp:484 ../src/effects/Echo.cpp:242
-#: ../src/effects/Equalization.cpp:731 ../src/effects/Filter.cpp:482
-#: ../src/effects/Normalize.cpp:258 ../src/effects/Phaser.cpp:576
-#: ../src/effects/Repeat.cpp:251 ../src/effects/Wahwah.cpp:563
-#: ../src/effects/ladspa/LadspaEffect.cpp:498
-#: ../src/effects/nyquist/Nyquist.cpp:736
-#: ../src/effects/nyquist/Nyquist.cpp:883
-#: ../src/effects/nyquist/Nyquist.cpp:949 ../src/prefs/FileFormatPrefs.cpp:471
-#: ../src/prefs/PrefsDialog.cpp:100 ../src/widgets/Warning.cpp:56
+#: effects/AvcCompressor.cpp:738
+#: effects/audiounits/AudioUnitEffect.cpp:856
+#: effects/nyquist/Nyquist.cpp:1237
+#: widgets/ErrorDialog.cpp:99
msgid "OK"
msgstr "OK"
-#: ../src/effects/BassBoost.cpp:36
+#: effects/BassBoost.cpp:52
#, c-format
msgid "Applied effect: %s frequency = %.0f Hz, boost = %.0f dB"
msgstr "Effect toegepast: %s frequentie = %.0f Hz, boost = %.0f dB"
@@ -4198,25 +4914,29 @@ msgid "Bass Boost"
msgstr "Bassen versterken"
#: effects/BassBoost.cpp:182
+#: effects/Phaser.cpp:219
+#: effects/Wahwah.cpp:214
msgid "by Nasca Octavian Paul"
msgstr "door Nasca Octavian Paul"
-#: ../src/effects/BassBoost.cpp:286
+#: effects/BassBoost.cpp:196
+#: effects/ChangePitch.cpp:322
msgid "Frequency (Hz):"
msgstr "Frequentie (Hz):"
#: effects/BassBoost.cpp:205
msgid "Frequency Hertz"
-msgstr ""
+msgstr "Frequentie (Hz)"
# versterking/boost
-#: ../src/effects/BassBoost.cpp:302
+#: effects/BassBoost.cpp:209
msgid "Boost (dB):"
msgstr "Boost (dB):"
+# versterking/boost
#: effects/BassBoost.cpp:218
msgid "Boost dB"
-msgstr ""
+msgstr "Boost (dB)"
# bassen versterken
#: effects/BassBoost.h:35
@@ -4224,7 +4944,7 @@ msgid "BassBoost..."
msgstr "Bassen versterkenâ¦"
# bezig met
-#: ../src/effects/BassBoost.h:48
+#: effects/BassBoost.h:49
msgid "Boosting Bass Frequencies"
msgstr "Basfrequenties worden opgepept"
@@ -4234,117 +4954,127 @@ msgid "Change Length..."
msgstr "Lengte wijzigenâ¦"
# bezig met
-#: effects/ChangeLength.h:30
+#: effects/ChangeLength.h:34
msgid "Changing Length..."
msgstr "Lengte wordt gewijzigdâ¦"
# moet eigenlijk omgekeerd:
# %.2f halve tonen %s (%s = naar boven/naar beneden)
-#: ../src/effects/ChangePitch.cpp:56
+#: effects/ChangePitch.cpp:55
#, c-format
msgid "Applied effect: %s %.2f semitones"
msgstr "Effect toegepast: %s %.2f halve tonen"
-#: ../src/effects/ChangePitch.cpp:119
+#: effects/ChangePitch.cpp:198
msgid "Change Pitch"
msgstr "Toonhoogte wijzigen"
-#: ../src/effects/ChangePitch.cpp:242
+#: effects/ChangePitch.cpp:256
msgid "Change Pitch without Changing Tempo"
msgstr "Toonhoogte wijzigen, tempo blijft gelijk"
-#: ../src/effects/ChangePitch.cpp:247 ../src/effects/ChangeSpeed.cpp:287
-#: ../src/effects/ChangeTempo.cpp:164
+#: effects/ChangePitch.cpp:258
+#: effects/ChangeSpeed.cpp:337
+#: effects/ChangeTempo.cpp:176
msgid "by Vaughan Johnson && Dominic Mazzoni"
msgstr "van Vaughan Johnson && Dominic Mazzoni"
-#: ../src/effects/ChangePitch.cpp:252 ../src/effects/ChangeTempo.cpp:169
+#: effects/ChangePitch.cpp:260
+#: effects/ChangeTempo.cpp:178
msgid "using SoundTouch, by Olli Parviainen"
msgstr "gebruik makend van SoundTouch, van Olli Parviainen"
#: effects/ChangePitch.cpp:269
msgid "Pitch:"
-msgstr ""
+msgstr "Toonhoogte:"
#: effects/ChangePitch.cpp:274
msgid "From:"
-msgstr ""
+msgstr "Van:"
#: effects/ChangePitch.cpp:275
msgid "From Pitch"
-msgstr ""
+msgstr "Van toonhoogte"
#: effects/ChangePitch.cpp:286
msgid "Up"
-msgstr ""
+msgstr "Omhoog"
#: effects/ChangePitch.cpp:289
msgid "Down"
-msgstr ""
+msgstr "Naar beneden"
#: effects/ChangePitch.cpp:299
msgid "To:"
-msgstr ""
+msgstr "Naar:"
#: effects/ChangePitch.cpp:300
msgid "To Pitch"
-msgstr ""
+msgstr "Naar-toonhoogte"
-#: ../src/effects/ChangePitch.cpp:299
+#: effects/ChangePitch.cpp:311
msgid "Semitones (half-steps):"
msgstr "Halve tonen:"
#: effects/ChangePitch.cpp:316
msgid "Semitones in half-steps"
-msgstr ""
+msgstr "Halve tonen in half-stappen"
-#: effects/ChangePitch.cpp:326 effects/ChangeSpeed.cpp:369
-#: effects/ChangeTempo.cpp:209 effects/ChangeTempo.cpp:222
+#: effects/ChangePitch.cpp:326
+#: effects/ChangeSpeed.cpp:370
+#: effects/ChangeTempo.cpp:209
+#: effects/ChangeTempo.cpp:222
msgid "from"
-msgstr ""
+msgstr "van"
#: effects/ChangePitch.cpp:327
msgid "From frequency in hertz"
-msgstr ""
+msgstr "Van frequentie in hertz"
# van A naar B
-#: ../src/effects/ChangePitch.cpp:284 ../src/effects/ChangePitch.cpp:330
-#: ../src/effects/ChangeSpeed.cpp:351 ../src/effects/ChangeTempo.cpp:223
-#: ../src/effects/ChangeTempo.cpp:254
+#: effects/ChangePitch.cpp:331
+#: effects/ChangeSpeed.cpp:375
+#: effects/ChangeTempo.cpp:214
+#: effects/ChangeTempo.cpp:227
msgid "to"
msgstr "naar"
#: effects/ChangePitch.cpp:332
msgid "To frequency in seconds"
-msgstr ""
+msgstr "Naar frequentie in seconden"
# verandering/wijziging/aanpassing
-#: ../src/effects/ChangePitch.cpp:353 ../src/effects/ChangeSpeed.cpp:305
-#: ../src/effects/ChangeTempo.cpp:182
+#: effects/ChangePitch.cpp:338
+#: effects/ChangeSpeed.cpp:348
+#: effects/ChangeTempo.cpp:187
msgid "Percent Change:"
msgstr "Percentage verandering:"
-#: effects/ChangePitch.cpp:343 effects/ChangePitch.cpp:356
-#: effects/ChangeSpeed.cpp:358 effects/ChangeTempo.cpp:198
+# verandering/wijziging/aanpassing
+#: effects/ChangePitch.cpp:343
+#: effects/ChangePitch.cpp:356
+#: effects/ChangeSpeed.cpp:359
+#: effects/ChangeTempo.cpp:198
msgid "Percent Change"
-msgstr ""
+msgstr "Percentage verandering"
# aanpassen/wijzigen (aanpassen hier mooier)
-#: ../src/effects/ChangePitch.h:31
+#: effects/ChangePitch.h:31
msgid "Change Pitch..."
msgstr "Toonhoogte aanpassenâ¦"
# bezig met/toonhoogte aanpassen/wijzigen/wordt gewijzigd
-#: ../src/effects/ChangePitch.h:35
+#: effects/ChangePitch.h:46
msgid "Changing Pitch"
msgstr "Toonhoogte wordt aangepast"
-#: ../src/effects/ChangeSpeed.cpp:40 ../src/effects/ChangeTempo.cpp:43
+#: effects/ChangeSpeed.cpp:54
+#: effects/ChangeTempo.cpp:55
#, c-format
msgid "Applied effect: %s %.1f%%"
msgstr "Effect toegepast: %s %.1f%%"
-#: ../src/effects/ChangeSpeed.cpp:47
+#: effects/ChangeSpeed.cpp:299
msgid "Change Speed"
msgstr "Snelheid wijzigen"
@@ -4353,488 +5083,493 @@ msgstr "Snelheid wijzigen"
# n/b is een bekende term die ook in bijv. excel wordt gebruikt.
# Not available wordt met 'niet beschikbaar' vertaald
# n/a met n/b
-#. i18n-hint: n/a is an English
-#. abbreviation meaning "not
-#. applicable" (in other words,
-#. unimportant, not relevant).
-#: ../src/effects/ChangeSpeed.cpp:338
+#. i18n-hint: n/a is an English abbreviation meaning "not applicable"
+#. (in other words, unimportant, not relevant).
+#: effects/ChangeSpeed.cpp:330
msgid "n/a"
msgstr "n/b"
-#: ../src/effects/ChangeSpeed.cpp:282
+#: effects/ChangeSpeed.cpp:335
msgid "Change Speed, affecting both Tempo and Pitch"
msgstr "Snelheid wijzigen, zowel tempo als toonhoogte worden beïnvloed"
-#: ../src/effects/ChangeSpeed.cpp:292
+#: effects/ChangeSpeed.cpp:339
msgid "using SampleRate, by Erik de Castro Lopo"
msgstr "gebruik makend van SampleRate, van Erik de Castro Lopo"
-#: effects/ChangeSpeed.cpp:366
+# consequentie , als je kiest voor BPM in NL dan ook RPM in NL (sander)
+# BPM Beats per minuut, TPM toeren per minuut. (Revolutions per minute)
+#: effects/ChangeSpeed.cpp:367
msgid "Standard Vinyl RPM:"
-msgstr ""
+msgstr "Standaard vinyl RPM:"
-#: effects/ChangeSpeed.cpp:370
+#: effects/ChangeSpeed.cpp:371
msgid "From RPM"
-msgstr ""
+msgstr "Van RPM"
-#: effects/ChangeSpeed.cpp:375
+#: effects/ChangeSpeed.cpp:376
msgid "To RPM"
-msgstr ""
+msgstr "Naar RPM"
-#: ../src/effects/ChangeSpeed.h:37
+#: effects/ChangeSpeed.h:32
msgid "Change Speed..."
msgstr "Snelheid wijzigenâ¦"
# bezig met
-#: ../src/effects/ChangeSpeed.h:40
+#: effects/ChangeSpeed.h:46
msgid "Changing Speed"
msgstr "Snelheid wordt aangepast"
-#: ../src/effects/ChangeTempo.cpp:62
+#: effects/ChangeTempo.cpp:141
msgid "Change Tempo"
msgstr "Tempo wijzigen"
-#: ../src/effects/ChangeTempo.cpp:159
+#: effects/ChangeTempo.cpp:174
msgid "Change Tempo without Changing Pitch"
msgstr "Tempo wijzigen, toonhoogte blijft gelijk"
#: effects/ChangeTempo.cpp:206
msgid "Beats per minute:"
-msgstr ""
+msgstr "Beats per Minuut (BPM):"
#: effects/ChangeTempo.cpp:210
msgid "From beats per minute"
-msgstr ""
+msgstr "Van beats per minuut"
#: effects/ChangeTempo.cpp:215
msgid "To beats per minute"
-msgstr ""
+msgstr "Naar beats per minuut"
#: effects/ChangeTempo.cpp:219
msgid "Length (seconds):"
-msgstr ""
+msgstr "Lengte (seconden):"
#: effects/ChangeTempo.cpp:223
msgid "From length in seconds"
-msgstr ""
+msgstr "Van lengte in seconden"
#: effects/ChangeTempo.cpp:228
msgid "To length in seconds"
-msgstr ""
+msgstr "Naar lengte in seconden"
-#: ../src/effects/ChangeTempo.h:40
+#: effects/ChangeTempo.h:35
msgid "Change Tempo..."
msgstr "Tempo wijzigenâ¦"
# bezig met
-#: ../src/effects/ChangeTempo.h:44
+#: effects/ChangeTempo.h:49
msgid "Changing Tempo"
msgstr "Tempo wordt aangepast"
#: effects/ClickRemoval.cpp:314
-#, fuzzy
msgid "Click Removal"
-msgstr "ClickRemoval"
+msgstr "Klik-verwijdering"
-#: ../src/effects/ClickRemoval.cpp:317
+#: effects/ClickRemoval.cpp:327
msgid "Click and Pop Removal by Craig DeForest"
msgstr "Click en pop verwijderen door Craig DeForest"
-#: effects/ClickRemoval.cpp:343
+#: effects/ClickRemoval.cpp:341
msgid "Select threshold (lower is more sensitive):"
msgstr "Drempelwaarde selecteren (lager is gevoeliger):"
#: effects/ClickRemoval.cpp:350
msgid "Select threshold"
-msgstr ""
+msgstr "Selecteer drempelwaarde"
-#: effects/ClickRemoval.cpp:355
+#: effects/ClickRemoval.cpp:358
msgid "Max spike width (higher is more sensitive):"
msgstr "Maximum piekbreedte (hoger is gevoeliger):"
-#: effects/ClickRemoval.cpp:363
+#: effects/ClickRemoval.cpp:367
msgid "Max spike width"
-msgstr ""
+msgstr "Maximum piekbreedte"
# betere vertaling?
# tikken, geknetter, butsen, statische electriciteit
# knarsen, kliks, klikken, clicks ...
-#: ../src/effects/ClickRemoval.h:42
+#: effects/ClickRemoval.h:42
msgid "Click Removal..."
msgstr "Click verwijderenâ¦"
-#: ../src/effects/ClickRemoval.h:46
+#: effects/ClickRemoval.h:56
msgid "Removing clicks and pops..."
msgstr "Clicks en pops worden verwijderdâ¦"
# Was eerst: Dynamische bereik-compressor
-# Ik zou deze niet vertalen, het betekent namelijk zoiets als
-# 'super multiband compresor", waar een gewone compressor enkele
+# Ik zou deze niet vertalen, het betekent namelijk zoiets als
+# 'super multiband compresor", waar een gewone compressor enkele
# frequenties comprimeert (sander)
-#: ../src/effects/Compressor.cpp:43
+#: effects/Compressor.cpp:472
msgid "Dynamic Range Compressor"
msgstr "Dynamisch bereik compressor"
-#: effects/Compressor.cpp:498
+#: effects/Compressor.cpp:510
msgid "Threshold"
-msgstr ""
+msgstr "Drempelwaarde"
-#: effects/Compressor.cpp:502
+#: effects/Compressor.cpp:514
msgid "Ratio:"
-msgstr ""
+msgstr "Verhouding: "
-#: effects/Compressor.cpp:506
+#: effects/Compressor.cpp:518
msgid "Ratio"
-msgstr ""
+msgstr "Verhouding"
-#: effects/Compressor.cpp:510
-#, fuzzy
+# attack/invaltijd/invalstijd
+#: effects/Compressor.cpp:522
msgid "Attack Time:"
msgstr "Invalstijd: "
-#: effects/Compressor.cpp:514
+# attack/invaltijd/invalstijd
+#: effects/Compressor.cpp:526
msgid "Attack Time"
-msgstr ""
+msgstr "Invalstijd"
-#: effects/Compressor.cpp:518
-#, fuzzy
+# decay/uitvalstijd
+#: effects/Compressor.cpp:530
msgid "Decay Time:"
-msgstr "Uitvalstijd: "
+msgstr "Uitvalstijd:"
-#: effects/Compressor.cpp:522
+# decay/uitvalstijd
+#: effects/Compressor.cpp:534
msgid "Decay Time"
-msgstr ""
+msgstr "Uitvalstijd"
-#: ../src/effects/Compressor.cpp:469
-msgid "Normalize to 0dB after compressing"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
msgstr "Normaliseren op 0dB na compressie"
-#: effects/Compressor.cpp:563
+#: effects/Compressor.cpp:575
#, c-format
-#, fuzzy
msgid "Threshold %d dB"
-msgstr "Drempelwaarde: %d dB"
+msgstr "Drempelwaarde %d dB"
-#: effects/Compressor.cpp:564
+#: effects/Compressor.cpp:576
#, c-format
msgid "%3d dB"
-msgstr ""
+msgstr "%3d dB"
-#: effects/Compressor.cpp:567
+#: effects/Compressor.cpp:579
#, c-format
msgid "Ratio %.0f to 1"
-msgstr ""
+msgstr "Verhouding: %.0f op 1"
-#: effects/Compressor.cpp:568
+#: effects/Compressor.cpp:580
#, c-format
msgid "%.0f:1"
-msgstr ""
+msgstr "%.0f:1"
-#: effects/Compressor.cpp:571
+#: effects/Compressor.cpp:583
#, c-format
msgid "Ratio %.1f to 1"
-msgstr ""
+msgstr "Verhouding %.1f op 1"
-#: effects/Compressor.cpp:572
+#: effects/Compressor.cpp:584
#, c-format
msgid "%.1f:1"
-msgstr ""
+msgstr "%.1f:1"
-#: effects/Compressor.cpp:575
+# Wanneer de compressie in werking treedt?
+#: effects/Compressor.cpp:587
#, c-format
-#, fuzzy
msgid "Attack Time %.1f secs"
-msgstr "Invalstijd: %.1f sec"
+msgstr "Invalstijd %.1f sec"
-#: effects/Compressor.cpp:576 effects/Compressor.cpp:579
+#: effects/Compressor.cpp:588
+#: effects/Compressor.cpp:591
#, c-format
msgid "%.1f secs"
-msgstr ""
+msgstr "%.1f seconden"
-#: effects/Compressor.cpp:578
+# hoelang het duurt voordat (besloten wordt dat) er niet meer
+# gecomprimeerd wordt
+#: effects/Compressor.cpp:590
#, c-format
-#, fuzzy
msgid "Decay Time %.1f secs"
-msgstr "Uitvalstijd: %.1f sec"
+msgstr "Uitvalstijd %.1f sec"
-#: ../src/effects/Compressor.h:36
+#: effects/Compressor.h:37
msgid "Compressor..."
msgstr "Compressorâ¦"
# bezig met
-#: ../src/effects/Compressor.h:40
+#: effects/Compressor.h:51
msgid "Applying Dynamic Range Compression..."
msgstr "Dynamische bereik-compressie wordt toegepastâ¦"
-#: effects/Contrast.cpp:79
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr "Contrast-analyse"
+
+#: effects/Contrast.cpp:88
msgid "Contrast Tool Foreground"
-msgstr ""
+msgstr "Contrast-gereedschap voorgrondsd"
-#: effects/Contrast.cpp:79
-msgid "Foreground times selected.\n"
+#: effects/Contrast.cpp:88
+msgid ""
+"Foreground times selected.\n"
"Now select background and use Ctrl+Shift+T or menu again."
msgstr ""
+"Voorgrondtijden geselecteerd.\n"
+"Selecteer nu de achtergrond en gebruik Ctrl+Shift+T of normaals het menu."
-#: effects/Contrast.cpp:127
-msgid "Start time after after end time!\n"
+#: effects/Contrast.cpp:144
+msgid ""
+"Start time after after end time!\n"
"Please enter reasonable times."
msgstr ""
+"Begintijd na eindtijd!\n"
+"Geef a.u.b. redelijke tijden op."
-#: effects/Contrast.cpp:137
-msgid "Times are not reasonable!\n"
+#: effects/Contrast.cpp:154
+msgid ""
+"Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
+"Opgegeven tijden zijn niet redelijk!\n"
+"Geef a.u.b. redelijke tijden op."
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr ""
-
-#: effects/Contrast.cpp:231
+#: effects/Contrast.cpp:276
msgid "Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:235
-msgid "Parameters"
-msgstr ""
+msgstr "Contrast Analyzer"
# begin en eind/start en einde
-#: effects/ToneGen.cpp:328 toolbars/ControlToolBar.cpp:186
+#: effects/Contrast.cpp:286
+#: effects/ToneGen.cpp:312
+#: toolbars/ControlToolBar.cpp:181
msgid "Start"
msgstr "Begin"
# eind/einde
-#: effects/ToneGen.cpp:329 toolbars/ControlToolBar.cpp:189
-#: toolbars/SelectionBar.cpp:129 toolbars/SelectionBar.cpp:226
+#: effects/Contrast.cpp:287
+#: effects/ToneGen.cpp:313
+#: toolbars/ControlToolBar.cpp:184
+#: toolbars/SelectionBar.cpp:156
+#: toolbars/SelectionBar.cpp:159
+#: toolbars/SelectionBar.cpp:262
msgid "End"
msgstr "Einde"
-#: effects/Contrast.cpp:332
+#: effects/Contrast.cpp:290
msgid "Volume "
-msgstr ""
+msgstr "Volume "
-#: effects/Contrast.cpp:248
+#: effects/Contrast.cpp:293
msgid "Foreground:"
-msgstr ""
+msgstr "Voorgrond:"
-#: effects/Contrast.cpp:347
+#: effects/Contrast.cpp:305
msgid "Foreground start time"
-msgstr ""
+msgstr "Voorgrond starttijd"
-#: effects/Contrast.cpp:365
+#: effects/Contrast.cpp:323
msgid "Foreground end time"
-msgstr ""
+msgstr "Voorgrond eindtijd"
+
+#: effects/Contrast.cpp:329
+#: effects/Contrast.cpp:373
+#: effects/Contrast.cpp:437
+#: effects/Contrast.cpp:448
+msgid "Measured"
+msgstr "Gemeten"
-#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
+#: effects/Contrast.cpp:331
+#: effects/Contrast.cpp:375
msgid "Use selection"
-msgstr ""
+msgstr "Selectie gebruiken"
-#: effects/Contrast.cpp:271
+#: effects/Contrast.cpp:336
msgid "Background:"
-msgstr ""
+msgstr "Achtergrond"
-#: effects/Contrast.cpp:391
+#: effects/Contrast.cpp:349
msgid "Background start time"
-msgstr ""
+msgstr "Achtergrond starttijd"
-#: effects/Contrast.cpp:409
+#: effects/Contrast.cpp:367
msgid "Background end time"
-msgstr ""
+msgstr "Achtergrond eindtijd"
-#: effects/Contrast.cpp:298
+# Resetten/herstellen
+#: effects/Contrast.cpp:384
msgid "Result"
-msgstr ""
+msgstr "Resultaat"
-#: effects/Contrast.cpp:302
+#: effects/Contrast.cpp:388
msgid "Contrast Result:"
-msgstr ""
+msgstr "Contrast-resultaat:"
# Resetten/herstellen
-#: Tags.cpp:796 Tags.cpp:1948
+#: effects/Contrast.cpp:391
msgid "Reset"
msgstr "Herstellen"
-#: effects/Contrast.cpp:304
+#: effects/Contrast.cpp:392
msgid "Difference:"
-msgstr ""
+msgstr "Verschil:"
-#: effects/Contrast.cpp:313
+# dit is een tabbladtitel
+# het is geen info of het bouwen, maar over het programma
+#: effects/Contrast.cpp:403
msgid "Information"
-msgstr ""
+msgstr "Programma-informatie"
-#: effects/Contrast.cpp:447
+#: effects/Contrast.cpp:405
msgid "For measuring rms volume differences between two selections of audio."
-msgstr ""
+msgstr "Om rms-volumeverschillen tussen twee geluidsselecties te meten."
-#: effects/Contrast.cpp:448
+#: effects/Contrast.cpp:406
msgid "Help for WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-# dit wordt: Audacity bedienings-werkbalk/bedieningsknoppen-werkbalk
-# Audacity %s-werkbalk
-#: toolbars/ControlToolBar.cpp:82
-msgid "Control"
-msgstr "bedieningsknoppen"
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
+msgstr "Hulp voor de WCAG2 audio contrast analyzer"
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
-msgstr ""
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
+msgstr "Sluiten (tijden behouden)"
-#: effects/Contrast.cpp:328 effects/Contrast.cpp:336 effects/Contrast.cpp:344
-#: effects/Contrast.cpp:352
+#: effects/Contrast.cpp:474
+#: effects/Contrast.cpp:480
+#: effects/Contrast.cpp:486
+#: effects/Contrast.cpp:492
msgid "Measure"
-msgstr ""
+msgstr "Meten"
-#: effects/Contrast.cpp:511
+#: effects/Contrast.cpp:531
msgid "No foreground to measure"
-msgstr ""
+msgstr "Geen voorgrond om te meten"
-#: effects/Contrast.cpp:516
+#: effects/Contrast.cpp:536
msgid "Measured foreground level"
-msgstr ""
+msgstr "Gemeten voorgrondniveau"
-#: effects/Contrast.cpp:191 effects/Contrast.cpp:202
+#: effects/Contrast.cpp:537
+#: effects/Contrast.cpp:547
#, c-format
msgid "%.1f dB"
-msgstr ""
+msgstr "%.1f dB"
-#: effects/Contrast.cpp:521
+#: effects/Contrast.cpp:541
msgid "No background to measure"
-msgstr ""
+msgstr "Geen achtergrond om te meten"
-#: effects/Contrast.cpp:526
+#: effects/Contrast.cpp:546
msgid "Measured background level"
-msgstr ""
+msgstr "Gemeten achtergrondniveau"
-#: effects/Contrast.cpp:358
+#: effects/Contrast.cpp:552
msgid "WCAG2 Pass"
-msgstr ""
+msgstr "WCAG2 Oké"
-#: effects/Contrast.cpp:360
+#: effects/Contrast.cpp:554
msgid "WCAG2 Fail"
-msgstr ""
+msgstr "WCAG2 mislukt"
-#: effects/Contrast.cpp:535
+#: effects/Contrast.cpp:555
msgid "Current difference"
-msgstr ""
+msgstr "Huidig verschil"
-#: effects/Contrast.cpp:536
+#: effects/Contrast.cpp:556
#, c-format
msgid "%.1f dB Average rms"
-msgstr ""
+msgstr "%.1f dB Gemiddelde rms"
-#: effects/Contrast.cpp:541
+#: effects/Contrast.cpp:561
msgid "Please enter valid times."
-msgstr ""
+msgstr "Voer geldige tijdwaarden in."
-#: effects/Contrast.cpp:551
+#: effects/Contrast.cpp:571
msgid "Export Contrast Result As:"
-msgstr ""
+msgstr "Contrast-resultaat exporteren als:"
-#: effects/Contrast.cpp:572
+#: effects/Contrast.cpp:592
msgid "WCAG 2.0 Success Criteria 1.4.7 Contrast Results"
-msgstr ""
+msgstr "WCAG 2.0 Success Criteria 1.4.7 Contrast-resultaten"
-#: effects/Contrast.cpp:574
+#: effects/Contrast.cpp:594
#, c-format
msgid "Filename = %s."
-msgstr ""
+msgstr "Bestandsnaam = %s."
-#: effects/Contrast.cpp:576
+#: effects/Contrast.cpp:596
msgid "Foreground"
-msgstr ""
+msgstr "Voorgrond"
-#: effects/Contrast.cpp:581 effects/Contrast.cpp:598
+#: effects/Contrast.cpp:601
+#: effects/Contrast.cpp:618
#, c-format
msgid "Time started = %2d hour(s), %2d minute(s), %.2f seconds."
-msgstr ""
+msgstr "Starttijd = %2d uur, %2d minute(n), %.2f seconden."
-#: effects/Contrast.cpp:586 effects/Contrast.cpp:603
+#: effects/Contrast.cpp:606
+#: effects/Contrast.cpp:623
#, c-format
msgid "Time ended = %2d hour(s), %2d minute(s), %.2f seconds."
-msgstr ""
+msgstr "Eindtijd = %2d uur, %2d minute(n), %.2f seconden."
-#: effects/Contrast.cpp:588 effects/Contrast.cpp:605
+#: effects/Contrast.cpp:608
+#: effects/Contrast.cpp:625
#, c-format
msgid "Average rms = %.1f dB."
-msgstr ""
+msgstr "Gemiddelde rms = %.1f dB."
-#: effects/Contrast.cpp:590 effects/Contrast.cpp:607
+#: effects/Contrast.cpp:610
+#: effects/Contrast.cpp:627
msgid "Average rms = dB."
-msgstr ""
+msgstr "Gemiddelde rms = dB."
-#: effects/Contrast.cpp:593
+# Achteruit/achterwaarts/naar achteren/terug
+#: effects/Contrast.cpp:613
msgid "Background"
-msgstr ""
+msgstr "Achtergrond"
-#: effects/Contrast.cpp:609
+# Resetten/herstellen
+#: effects/Contrast.cpp:629
msgid "Results"
-msgstr ""
+msgstr "Resultaten"
-#: effects/Contrast.cpp:611
+#: effects/Contrast.cpp:631
#, c-format
msgid "Difference = %.1f Average rms dB."
-msgstr ""
+msgstr "Verschil = %.1f Gemiddelde rms dB."
-#: effects/Contrast.cpp:613
+#: effects/Contrast.cpp:633
msgid "Success Criteria 1.4.7 of WCAG 2.0: Pass"
-msgstr ""
+msgstr "Succes-criteria 1.4.7 voor WCAG 2.0: Oké"
-#: effects/Contrast.cpp:615
+#: effects/Contrast.cpp:635
msgid "Success Criteria 1.4.7 of WCAG 2.0: Fail"
-msgstr ""
+msgstr "Succes-criteria 1.4.7 voor WCAG 2.0: Mislukt"
-#: effects/Contrast.cpp:618
+#: effects/Contrast.cpp:638
msgid "Data gathered"
-msgstr ""
-
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr ""
+msgstr "Data verzameld"
-#: effects/DtmfGen.cpp:47
+#: effects/DtmfGen.cpp:56
msgid "DTMF Tone Generator"
msgstr "DTMF-geluidstonen genereren"
-#: effects/DtmfGen.cpp:382
+#: effects/DtmfGen.cpp:421
msgid "by Salvo Ventura (2006)"
msgstr "door Salvo Ventura (2006)"
# Telefoontonen (Dual Tone Multi Frequency)
# ook wel Toonkiezen genoemd
-#: effects/DtmfGen.cpp:386
+#: effects/DtmfGen.cpp:425
msgid "DTMF sequence:"
msgstr "DTMF reeks:"
-#: ../src/effects/ToneGen.cpp:293
+#: effects/DtmfGen.cpp:428
+#: effects/Noise.cpp:190
+#: effects/ToneGen.cpp:278
+#: effects/ToneGen.cpp:316
msgid "Amplitude (0-1)"
msgstr "Amplitude (0-1)"
-#: effects/DtmfGen.cpp:448
+#: effects/DtmfGen.cpp:430
msgid "Duration:"
msgstr "Tijdsduur:"
-#: effects/DtmfGen.cpp:407
+#: effects/DtmfGen.cpp:452
msgid "Tone/silence ratio:"
msgstr "Geluid/stilte verhouding:"
@@ -4843,219 +5578,235 @@ msgstr "Geluid/stilte verhouding:"
# dus 100 % wil zeggen geen stilte tussen de pulsen
# 0% wil zeggen extreem korte pulsen lange stiltes
# Verhouding in percentage/Bedrijfscyclus
-#: effects/DtmfGen.cpp:418
+#: effects/DtmfGen.cpp:462
msgid "Duty cycle:"
msgstr "Bedrijfscyclus:"
-#: effects/DtmfGen.cpp:420
+#: effects/DtmfGen.cpp:464
msgid "Tone duration:"
msgstr "Tijdsduur geluidstonen:"
-#: effects/DtmfGen.cpp:421 effects/DtmfGen.cpp:423 effects/DtmfGen.cpp:494
-#: effects/DtmfGen.cpp:495
+#: effects/DtmfGen.cpp:465
+#: effects/DtmfGen.cpp:467
+#: effects/DtmfGen.cpp:543
+#: effects/DtmfGen.cpp:544
msgid "ms"
msgstr "ms"
-#: effects/DtmfGen.cpp:422
+#: effects/DtmfGen.cpp:466
msgid "Silence duration:"
msgstr "Tijdsduur stilte:"
-#: effects/DtmfGen.h:41
+#: effects/DtmfGen.h:40
msgid "DTMF Tones..."
msgstr "DTMF geluidstonenâ¦"
-#: effects/DtmfGen.h:45
+#: effects/DtmfGen.h:54
#, c-format
msgid "Applied effect: Generate DTMF tones, %.6lf seconds"
msgstr "Effect toegepast: DTMF-tonen genereren, %.6lf seconden"
-#: effects/DtmfGen.h:49
+#: effects/DtmfGen.h:58
msgid "Generating DTMF tones"
msgstr "DTMF-tonen genereren"
# Decay Factor kan je vertalen als 'verloop' (sander)
-#: ../src/effects/Echo.cpp:33
+#: effects/Echo.cpp:48
#, c-format
msgid "Applied effect: %s delay = %f seconds, decay factor = %f"
msgstr "Effect toegepast: %s vertraging = %f seconden, dempingsfactor = %f"
-#: ../src/effects/Echo.cpp:39 ../src/effects/Echo.cpp:177
+#: effects/Echo.cpp:174
msgid "Echo"
msgstr "Echo"
-#: ../src/effects/Echo.cpp:182
+#. i18n-hint: && in here is an escape character to get a single & on
+#. * screen, so keep it as is
+#: effects/Echo.cpp:199
+#: effects/Repeat.cpp:199
msgid "by Dominic Mazzoni && Vaughan Johnson"
msgstr "door Dominic Mazzoni && Vaughan Johnson"
-#: ../src/effects/Echo.cpp:192
+#: effects/Echo.cpp:211
msgid "Delay time (seconds):"
msgstr "Vertraging (seconden):"
-#: ../src/effects/Echo.cpp:211
+#: effects/Echo.cpp:216
msgid "Decay factor:"
msgstr "Dempingsfactor:"
-#: ../src/effects/Echo.h:36
+#: effects/Echo.h:34
msgid "Echo..."
msgstr "Echoâ¦"
# bezig met echo
-#: ../src/effects/Echo.h:40
+#: effects/Echo.h:48
msgid "Performing Echo"
msgstr "Echo wordt uitgevoerd"
-#: effects/Effect.cpp:303
+#: effects/Effect.cpp:498
msgid "Preparing preview"
msgstr "Voorbeeld voorbereiden"
# voorbeeld tonen/voorbeeld/voorbeeld afspelen
-#: effects/Effect.cpp:329
+#: effects/Effect.cpp:530
msgid "Previewing"
msgstr "Voorbeeld"
-#: ../src/ControlToolBar.cpp:721 ../src/effects/Effect.cpp:329
+#: effects/Effect.cpp:545
msgid "Error while opening sound device. Please check the output device settings and the project sample rate."
msgstr "Fout bij het openen van het geluidsapparaat. Controleer de uitgangs-instellingen van het apparaat en de samplefrequentie van het project."
-#: ../src/effects/Effect.h:84
+#: effects/Effect.h:96
+#: effects/TimeScale.cpp:52
#, c-format
msgid "Applied effect: %s"
msgstr "Effect toegepast: %s"
-#: effects/Equalization.cpp:1119
+#: effects/Equalization.cpp:338
msgid "B-spline"
msgstr "B-spline"
-#: effects/Equalization.cpp:1119
+#: effects/Equalization.cpp:339
msgid "Cosine"
msgstr "Cosinus"
-#: effects/Equalization.cpp:1119
+#: effects/Equalization.cpp:340
msgid "Cubic"
msgstr "Kubisch"
-#: ../src/effects/Equalization.cpp:156
+#: effects/Equalization.cpp:379
+#: effects/Equalization.cpp:430
msgid "Equalization"
msgstr "Toonregeling"
-#: effects/Equalization.cpp:865
+#: effects/Equalization.cpp:1009
msgid "Error loading EQ curve"
msgstr "Fout bij het laden van de toonregelingscurve"
# zelfgemaakt/aangepast
-#: effects/Equalization.cpp:998
+#: effects/Equalization.cpp:1048
msgid "custom"
msgstr "zelfgemaakt"
+#: effects/Equalization.cpp:1097
+msgid "Error saving equalization curves"
+msgstr "Fout bij opslaan van equalisatiecurves"
+
# equaliseren
-#: effects/Equalization.cpp:971
+#. i18n-hint: && in here is an escape character to get a single &
+#. * on screen, so keep it as is
+#: effects/Equalization.cpp:1120
msgid "Equalization, by Martyn Shaw && Mitch Golden"
msgstr "Toonregeling, door Martyn Shaw && Mitch Golden"
-#: effects/Equalization.cpp:992
+#: effects/Equalization.cpp:1141
msgid "Max dB"
msgstr "Max dB"
-#: effects/Equalization.cpp:994
+#: effects/Equalization.cpp:1143
msgid "Min dB"
msgstr "Min dB"
-#: effects/Equalization.cpp:1093
+#: effects/Equalization.cpp:1216
msgid "kHz"
msgstr "kHz"
# lijnen tekenen
-#: effects/Equalization.cpp:1110
+#: effects/Equalization.cpp:1233
msgid "Draw curves"
msgstr "Lijnen tonen"
# toont schuiven en een grafiek
-#: effects/Equalization.cpp:1115
+#: effects/Equalization.cpp:1238
msgid "Graphic EQ"
msgstr "Schuifjes"
-#: effects/Equalization.cpp:1131
+#: effects/Equalization.cpp:1252
msgid "Linear frequency scale"
msgstr "Lineaire frequentieschaal"
# breedte/lengte
-#: effects/Equalization.cpp:1140
+#: effects/Equalization.cpp:1261
msgid "Length of filter:"
msgstr "Breedte van het filter:"
-#: effects/Equalization.cpp:1048
+#: effects/Equalization.cpp:1282
msgid "Select curve:"
msgstr "Curve selecteren:"
-#: effects/Equalization.cpp:1058 effects/Equalization.cpp:2244
+#: effects/Equalization.cpp:1292
+#: effects/Equalization.cpp:2552
+#: export/ExportMultiple.cpp:924
msgid "Save As..."
msgstr "Opslaan alsâ¦"
-#: effects/Equalization.cpp:1064
+#: effects/Equalization.cpp:1298
msgid "Flat"
msgstr "Vlak"
-#: effects/Equalization.cpp:2243
+#: effects/Equalization.cpp:2551
msgid "Enter the desired name of the curve"
msgstr "Geef een naam aan de curve"
-#: effects/Equalization.cpp:2343
+#: effects/Equalization.cpp:2651
+#: export/ExportFFmpegDialogs.cpp:1214
msgid "Confirm Deletion"
msgstr "Verwijderen bevestigen"
# toon bijregeling (sander)
-#: ../src/effects/Equalization.h:38
+#: effects/Equalization.h:82
msgid "Equalization..."
msgstr "Toonregelingâ¦"
-#: ../src/effects/Equalization.h:42
+#: effects/Equalization.h:96
msgid "Performing Equalization"
msgstr "Bezig met toonregeling"
-#: ../src/effects/Fade.h:23
+#: effects/Fade.h:24
msgid "Fade In"
msgstr "Fade-in"
# Fade-in wordt uitgevoerd
-#: ../src/effects/Fade.h:27
+#: effects/Fade.h:38
msgid "Fading In"
msgstr "Bezig met Fade-in"
-#: ../src/effects/Fade.h:43
+#: effects/Fade.h:54
msgid "Fade Out"
msgstr "Fade-out"
# Fade-out wordt uitgevoerd
-#: ../src/effects/Fade.h:47
+#: effects/Fade.h:68
msgid "Fading Out"
msgstr "Bezig met Fade-out"
# opsporen/detecteren
-#: effects/FindClipping.cpp:49
+#: effects/FindClipping.cpp:50
msgid "Detect clipping"
msgstr "Oversturing detecteren"
-#: effects/FindClipping.cpp:86
+#: effects/FindClipping.cpp:93
msgid "Clipping"
msgstr "Oversturing"
-#: effects/FindClipping.cpp:199
+#: effects/FindClipping.cpp:213
msgid "Find Clipping"
msgstr "Oversturing opsporen"
-#: effects/FindClipping.cpp:210
+#: effects/FindClipping.cpp:224
msgid "by Leland Lucius"
msgstr "door Leland Lucius"
-#: effects/FindClipping.cpp:222
+#: effects/FindClipping.cpp:236
msgid "Start threshold (samples):"
msgstr "Start drempelwaarde (samples):"
-#: effects/FindClipping.cpp:226
+#: effects/FindClipping.cpp:240
msgid "Stop threshold (samples):"
msgstr "Stop drempelwaarde (samples):"
-#: effects/FindClipping.cpp:250
+#: effects/FindClipping.cpp:252
msgid "Start and stop must be greater than 0."
msgstr "Start en stop moeten groter zijn dan 0."
@@ -5063,231 +5814,238 @@ msgstr "Start en stop moeten groter zijn dan 0."
msgid "Find Clipping..."
msgstr "Oversturing opsporenâ¦"
-#: effects/FindClipping.h:47
+#: effects/FindClipping.h:54
msgid "Detecting clipping"
msgstr "Oversturing detecteren"
# dit is spiegelen in de x-as in tegenstelling tot spiegelen in de de y-as
# wat vertaald wordt met omkeren (vertaling voor reverse)
-#: ../src/effects/Invert.h:27
+#: effects/Invert.h:27
msgid "Invert"
msgstr "Spiegelen"
-#: ../src/effects/Invert.h:31
+#: effects/Invert.h:41
msgid "Inverting"
msgstr "Bezig met spiegelen"
# de extremen eruit halen/nivelleren
-#: BatchCommands.cpp:237 effects/Leveller.cpp:129
+#: effects/Leveller.cpp:192
msgid "Leveller"
msgstr "Nivelleren"
-#: effects/Leveller.cpp:47
+#: effects/Leveller.cpp:205
msgid "None-Skip"
msgstr "Niet-overslaand"
-#: effects/Leveller.cpp:47
+#: effects/Leveller.cpp:206
msgid "Light"
msgstr "Licht"
-#: effects/Leveller.cpp:47
+#: effects/Leveller.cpp:207
msgid "Moderate"
msgstr "Gematigd"
-#: effects/Leveller.cpp:47
+#: effects/Leveller.cpp:208
msgid "Heavy"
msgstr "Zwaar"
-#: effects/Leveller.cpp:47
+#: effects/Leveller.cpp:209
msgid "Heavier"
msgstr "Zwaarder"
-#: effects/Leveller.cpp:47
+#: effects/Leveller.cpp:210
msgid "Heaviest"
msgstr "Zwaarst"
# egaliseren/nivelleren
-#: effects/TruncSilence.cpp:320
+#: effects/Leveller.cpp:214
msgid "by Lynn Allan"
msgstr "door Lynn Allan"
-#: effects/Leveller.cpp:220 effects/Leveller.cpp:233
+#: effects/Leveller.cpp:224
msgid "Degree of Leveling"
msgstr "Mate van nivellering"
-#: effects/Leveller.cpp:226
+#: effects/Leveller.cpp:228
msgid "Degree of Leveling:"
-msgstr ""
+msgstr "Mate van nivellering:"
-#: effects/Leveller.cpp:244
+#: effects/Leveller.cpp:236
msgid "Noise Threshold (Hiss/Hum/Ambient Noise)"
msgstr "Ruisdrempelwaarde"
-#: effects/Leveller.cpp:238
-#, fuzzy
+#: effects/Leveller.cpp:240
msgid "Threshold for Noise:"
-msgstr "Drempelwaarde voor ruis: "
+msgstr "Drempelwaarde voor ruis:"
#: effects/Leveller.h:28
msgid "Leveller..."
msgstr "Nivellerenâ¦"
# toepassen kan hier weggelaten worden
-#: effects/Leveller.h:32
+#: effects/Leveller.h:42
msgid "Applying Leveller..."
msgstr "Nivellerenâ¦"
#: effects/LoadEffects.cpp:102
msgid "Generator"
-msgstr ""
+msgstr "Generator"
#: effects/LoadEffects.cpp:104
msgid "Instrument"
-msgstr ""
+msgstr "Instrument"
#: effects/LoadEffects.cpp:106
msgid "Oscillator"
-msgstr ""
+msgstr "Oscillator"
#: effects/LoadEffects.cpp:108
msgid "Utility"
-msgstr ""
+msgstr "Gereedschap"
+# dit is spiegelen in de x-as in tegenstelling tot spiegelen in de y-as
+# wat vertaald wordt met omkeren (vertaling voor reverse)
#: effects/LoadEffects.cpp:110
msgid "Converter"
-msgstr ""
+msgstr "Converter"
+# letterlijk vertalen?
#: effects/LoadEffects.cpp:112
msgid "Analyser"
-msgstr ""
-
-#: toolbars/MixerToolBar.cpp:58
-msgid "Mixer"
-msgstr "Mixer"
+msgstr "Analyser"
#: effects/LoadEffects.cpp:116
msgid "Simulator"
-msgstr ""
+msgstr "Simulator"
#: effects/LoadEffects.cpp:118
msgid "Delay"
-msgstr ""
+msgstr "Delay"
#: effects/LoadEffects.cpp:120
msgid "Modulator"
-msgstr ""
+msgstr "Modulator"
#: effects/LoadEffects.cpp:122
msgid "Reverb"
-msgstr ""
+msgstr "Galm"
-#: ../src/effects/Phaser.cpp:59
+#: effects/LoadEffects.cpp:124
+#: effects/Phaser.cpp:208
msgid "Phaser"
msgstr "Phaser"
#: effects/LoadEffects.cpp:126
msgid "Flanger"
-msgstr ""
+msgstr "Flanger"
#: effects/LoadEffects.cpp:128
msgid "Chorus"
-msgstr ""
+msgstr "Chorus"
#: effects/LoadEffects.cpp:130
msgid "Filter"
-msgstr ""
+msgstr "Filter"
#: effects/LoadEffects.cpp:132
msgid "Lowpass"
-msgstr ""
+msgstr "Lowpass"
#: effects/LoadEffects.cpp:134
msgid "Bandpass"
-msgstr ""
+msgstr "Bandpass"
#: effects/LoadEffects.cpp:136
msgid "Highpass"
-msgstr ""
+msgstr "Highpass"
#: effects/LoadEffects.cpp:138
msgid "Comb"
-msgstr ""
+msgstr "Kamfilter"
#: effects/LoadEffects.cpp:140
msgid "Allpass"
-msgstr ""
+msgstr "Allpass"
#: effects/LoadEffects.cpp:142
msgid "Equaliser"
-msgstr ""
+msgstr "Equalizer"
#: effects/LoadEffects.cpp:144
msgid "Parametric"
-msgstr ""
+msgstr "Parametrisch"
#: effects/LoadEffects.cpp:146
msgid "Multiband"
-msgstr ""
+msgstr "Multiband"
#: effects/LoadEffects.cpp:148
msgid "Spectral Processor"
-msgstr ""
+msgstr "Spectrale processor"
#: effects/LoadEffects.cpp:150
msgid "Pitch Shifter"
-msgstr ""
+msgstr "Toonhoogte wijzigen"
#: effects/LoadEffects.cpp:152
msgid "Amplifier"
-msgstr ""
+msgstr "Versterken"
#: effects/LoadEffects.cpp:154
msgid "Distortion"
-msgstr ""
+msgstr "Vervorming"
#: effects/LoadEffects.cpp:156
msgid "Waveshaper"
-msgstr ""
+msgstr "Golf-vormgeving"
+# Was eerst: Dynamische bereik-compressor
+# Ik zou deze niet vertalen, het betekent namelijk zoiets als
+# 'super multiband compresor", waar een gewone compressor enkele
+# frequenties comprimeert (sander)
#: effects/LoadEffects.cpp:158
msgid "Dynamics Processor"
-msgstr ""
+msgstr "Dynamics Processor"
#: effects/LoadEffects.cpp:160
msgid "Compressor"
-msgstr ""
+msgstr "Compressor"
#: effects/LoadEffects.cpp:162
msgid "Expander"
-msgstr ""
+msgstr "Expander"
+# Interpolatie: [lineair]
#: effects/LoadEffects.cpp:164
msgid "Limiter"
-msgstr ""
+msgstr "Limiter"
#: effects/LoadEffects.cpp:166
msgid "Gate"
-msgstr ""
+msgstr "Gate"
-#: ../src/effects/NoiseRemoval.cpp:69
+#: effects/LoadEffects.cpp:199
+#: effects/NoiseRemoval.cpp:738
msgid "Noise Removal"
msgstr "Ruis verwijderen"
#: effects/LoadEffects.cpp:201
msgid "Pitch and Tempo"
-msgstr ""
+msgstr "Toonhoogte en tempo"
+# naamsverandering/naamwijziging
#: effects/LoadEffects.cpp:203
msgid "Timeline Changer"
-msgstr ""
+msgstr "Tijdslijn aanpassen"
#: effects/LoadEffects.cpp:205
msgid "Time"
-msgstr ""
+msgstr "Tijd"
+# Onsets betekent in de medische wereld "insertie"...
#: effects/LoadEffects.cpp:207
msgid "Onsets"
-msgstr ""
+msgstr "Inserties"
# witte (ruis)
#: effects/Noise.cpp:37
@@ -5308,280 +6066,305 @@ msgstr "Bruin"
msgid "Noise Generator"
msgstr "Ruis genereren"
-#: effects/Noise.cpp:246
+#: effects/Noise.cpp:189
msgid "Noise type"
msgstr "Type ruis"
-#: effects/Noise.h:41
+#: effects/Noise.h:42
msgid "Noise..."
msgstr "Ruisâ¦"
-#: effects/Noise.h:45
+#: effects/Noise.h:56
#, c-format
msgid "Applied effect: Generate Noise, %.6lf seconds"
msgstr "Effect toegepast: Ruis genereren, %.6lf seconden"
-#: effects/Noise.h:49
+#: effects/Noise.h:60
msgid "Generating Noise"
msgstr "Ruis genereren"
-#: effects/NoiseRemoval.cpp:192
+#: effects/NoiseRemoval.cpp:191
#, c-format
-msgid "Could not open file:\n"
+msgid ""
+"Could not open file:\n"
" %s"
msgstr "Kon bestand: â%sâ niet openen"
# ruisonderdrukking/ruis verwijderen
-#: effects/NoiseRemoval.cpp:275
+#: effects/NoiseRemoval.cpp:276
msgid "Attempt to run Noise Removal without a noise profile.\n"
msgstr "Probeer ruis te verwijderen zonder een ruisprofiel.\n"
-#: ../src/effects/NoiseRemoval.cpp:410
+#: effects/NoiseRemoval.cpp:827
msgid "Step 1"
msgstr "Stap 1"
-#: effects/NoiseRemoval.cpp:765
-msgid "Select a few seconds of just noise so Audacity knows what to filter out,\n"
+#: effects/NoiseRemoval.cpp:828
+msgid ""
+"Select a few seconds of just noise so Audacity knows what to filter out,\n"
"then click Get Noise Profile:"
-msgstr "Selecteer een aantal seconden met alleen ruis zodat Audacity weet wat gefilterd moet worden.\n"
+msgstr ""
+"Selecteer een aantal seconden met alleen ruis zodat Audacity weet wat gefilterd moet worden.\n"
"Klik daarna op âRuisprofiel verkrijgenâ:"
-#: ../src/effects/NoiseRemoval.cpp:427
+#: effects/NoiseRemoval.cpp:829
msgid "Step 2"
msgstr "Stap 2"
-#: effects/NoiseRemoval.cpp:767
-msgid "Select all of the audio you want filtered, choose how much noise you want\n"
+#: effects/NoiseRemoval.cpp:830
+msgid ""
+"Select all of the audio you want filtered, choose how much noise you want\n"
"filtered out, and then click 'OK' to remove noise.\n"
-msgstr "Selecteer de audio die u gefilterd wilt hebben, kies hoeveel ruis u wilt\n"
+msgstr ""
+"Selecteer de audio die u gefilterd wilt hebben, kies hoeveel ruis u wilt\n"
"wegfilteren, en klik dan op âOKâ om de ruis te verwijderen.\n"
# ruis onderdrukken
-#: ../src/effects/NoiseRemoval.cpp:403
+#: effects/NoiseRemoval.cpp:835
msgid "Noise Removal by Dominic Mazzoni"
msgstr "Ruis verwijderen door: Dominic Mazzoni"
-#: ../src/effects/NoiseRemoval.cpp:419
+#: effects/NoiseRemoval.cpp:843
msgid "Get Noise Profile"
msgstr "Ruisprofiel verkrijgen"
-#: effects/NoiseRemoval.cpp:791
+#: effects/NoiseRemoval.cpp:854
msgid "Noise reduction (dB):"
msgstr "Ruisonderdrukking (dB):"
-#: effects/NoiseRemoval.cpp:850
+#: effects/NoiseRemoval.cpp:859
msgid "Noise reduction"
-msgstr ""
+msgstr "Ruisonderdrukking"
# verloop/gladheid/gladstrijken/gladmaken/uitsmeren/uitvlakken
-#: effects/NoiseRemoval.cpp:799
+#: effects/NoiseRemoval.cpp:863
msgid "Frequency smoothing (Hz):"
msgstr "Frequenties uitsmeren (Hz):"
-#: effects/NoiseRemoval.cpp:859
+# verloop/gladheid/gladstrijken/gladmaken/uitsmeren/uitvlakken
+#: effects/NoiseRemoval.cpp:868
msgid "Frequency smoothing"
-msgstr ""
+msgstr "Frequenties uitsmeren"
# Attack/decay wordt niet vertaald?
# inval/uitval?
-#: effects/NoiseRemoval.cpp:807
+#: effects/NoiseRemoval.cpp:872
msgid "Attack/decay time (secs):"
msgstr "Attack/decay tijd (seconden):"
-#: effects/NoiseRemoval.cpp:868
+# Attack/decay wordt niet vertaald?
+# inval/uitval?
+#: effects/NoiseRemoval.cpp:877
msgid "Attach/decay time"
-msgstr ""
+msgstr "In-/uitvalstijd"
# ruis onderdrukken
# noise suppression/reduction
-#: ../src/effects/NoiseRemoval.h:38
+#: effects/NoiseRemoval.h:37
msgid "Noise Removal..."
msgstr "Ruis verwijderenâ¦"
-#: ../src/effects/NoiseRemoval.h:43
+#: effects/NoiseRemoval.h:52
msgid "Creating Noise Profile"
msgstr "Bezig met het maken van een ruisprofiel"
-#: ../src/effects/NoiseRemoval.h:45
+#: effects/NoiseRemoval.h:54
msgid "Removing Noise"
msgstr "Ruis wordt verwijderd"
-#: effects/Normalize.cpp:68
+#. i18n-hint: First %s is the effect name, 2nd and 3rd are either true or
+#. * false (translated below) if those options were selected
+#: effects/Normalize.cpp:70
#, c-format
msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr "Effect toegepast: %s dc offset verwijderen = %s, genormaliseerde amplitude = %s"
-# mag dit vertaald worden?
-#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
-msgid "false"
-msgstr ""
-
-#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
+#. i18n-hint: true here means that the option was
+#. * selected. Opposite false if not selected
+#: effects/Normalize.cpp:74
+#: effects/Normalize.cpp:75
msgid "true"
-msgstr ""
+msgstr "true"
-#: effects/Normalize.cpp:73
+#: effects/Normalize.cpp:77
#, c-format
msgid ", maximum amplitude = %.1f dB"
msgstr ", maximum amplitude = %.1f dB"
# Volume maximaliseren zonder clippen (sander)
# is helaas te lang voor de vertaling van een menuonderdeel
-#: ../src/effects/Normalize.cpp:29
+#: effects/Normalize.cpp:327
msgid "Normalize"
msgstr "Normaliseren"
-#: effects/Normalize.cpp:351 effects/Normalize.cpp:352
+#: effects/Normalize.cpp:355
msgid "Remove any DC offset (center on 0.0 vertically)"
-msgstr ""
+msgstr "DC-offset verwijderen (verticaal op 0.0 centreren)"
-#: effects/Normalize.cpp:357
+# normaliseren op
+#: effects/Normalize.cpp:358
msgid "Normalize maximum amplitude to:"
-msgstr ""
+msgstr "Maximum amplitude normaliseren naar:"
-#: effects/Normalize.cpp:336
+#: effects/Normalize.cpp:366
msgid "-"
msgstr "-"
-#: effects/Normalize.cpp:367
+#: effects/Normalize.cpp:371
msgid "Maximum amplitude dB"
-msgstr ""
+msgstr "Minimum amplitude dB"
-#: ../src/effects/Normalize.h:34
+#: effects/Normalize.h:33
msgid "Normalize..."
msgstr "Normaliserenâ¦"
-#: ../src/effects/Normalize.h:38
+#: effects/Normalize.h:49
msgid "Normalizing..."
msgstr "Normaliserenâ¦"
-#: ../src/effects/Phaser.cpp:47
+#: effects/Phaser.cpp:65
#, c-format
msgid "Applied effect: %s %d stages, %.0f%% wet, frequency = %.1f Hz, start phase = %.0f deg, depth = %d, feedback = %.0f%%"
msgstr "Effect toegepast: %s %d stappen, %.0f%% wet, frequentie = %.1f Hz, beginfase = %.0f deg, bereik = %d, feedback = %.0f%%"
-#: ../src/effects/Phaser.cpp:455
+#: effects/Phaser.cpp:228
msgid "Stages:"
msgstr "Stappen:"
-#: effects/Phaser.cpp:229
+#: effects/Phaser.cpp:231
msgid "Stages"
-msgstr ""
+msgstr "Stappen"
-#: effects/Phaser.cpp:231
+#: effects/Phaser.cpp:236
msgid "Dry/Wet:"
-msgstr ""
+msgstr "Dry/Wet:"
-#: effects/Phaser.cpp:234
+#: effects/Phaser.cpp:239
msgid "Dry Wet"
-msgstr ""
+msgstr "Dry Wet"
-#: ../src/effects/Phaser.cpp:497 ../src/effects/Wahwah.cpp:468
+#: effects/Phaser.cpp:244
+#: effects/Wahwah.cpp:222
msgid "LFO Frequency (Hz):"
msgstr "LFO-frequentie (Hz):"
-#: effects/Phaser.cpp:239 effects/Wahwah.cpp:224
+#: effects/Phaser.cpp:247
+#: effects/Wahwah.cpp:225
msgid "LFO frequency in hertz"
-msgstr ""
+msgstr "LFO-frequentie in hertz"
-#: ../src/effects/Phaser.cpp:513 ../src/effects/Wahwah.cpp:484
+#: effects/Phaser.cpp:252
+#: effects/Wahwah.cpp:230
msgid "LFO Start Phase (deg.):"
msgstr "LFO beginfase (graden):"
-#: effects/Phaser.cpp:244 effects/Wahwah.cpp:229
+#: effects/Phaser.cpp:255
+#: effects/Wahwah.cpp:233
msgid "LFO start phase in degrees"
-msgstr ""
+msgstr "LFO beginfase in graden"
# diepte/bereik
-#: ../src/effects/Phaser.cpp:529
+#: effects/Phaser.cpp:260
msgid "Depth:"
msgstr "Bereik:"
-#: effects/Phaser.cpp:249 effects/Wahwah.cpp:234
+#: effects/Phaser.cpp:263
+#: effects/Wahwah.cpp:241
msgid "Depth in percent"
-msgstr ""
+msgstr "Diepte in procent"
-#: ../src/effects/Phaser.cpp:545
+#: effects/Phaser.cpp:268
msgid "Feedback (%):"
msgstr "Feedback (%):"
-#: effects/Phaser.cpp:254
+#: effects/Phaser.cpp:271
msgid "Feedback in percent"
-msgstr ""
+msgstr "Feedback in procent"
-#: ../src/effects/Phaser.h:41
+#: effects/Phaser.h:45
msgid "Phaser..."
msgstr "Phaserâ¦"
# Phaser wordt nu toegepast
-#: ../src/effects/Phaser.h:45
+#: effects/Phaser.h:59
msgid "Applying Phaser"
msgstr "Phaser wordt toegepast"
-#: effects/Repair.cpp:94
-msgid "The Repair effect is intended to be used on very short sections of damaged audio (up to 128 samples).\n"
+#: effects/Repair.cpp:99
+msgid ""
+"The Repair effect is intended to be used on very short sections of damaged audio (up to 128 samples).\n"
"\n"
"Zoom in and select a tiny fraction of a second to repair."
-msgstr "âReparerenâ is bedoeld voor zeer korte stukjes beschadigde audio (maximaal 128 samples).\n"
+msgstr ""
+"âReparerenâ is bedoeld voor zeer korte stukjes beschadigde audio (maximaal 128 samples).\n"
"\n"
"Zoom in en selecteer een fractie van een seconde om te repareren."
#: effects/Repair.cpp:105
-msgid "Repair works by using audio data outside the selection region.\n"
+msgid ""
+"Repair works by using audio data outside the selection region.\n"
"\n"
"Please select a region that has audio touching at least one side of it.\n"
"\n"
"The more surrounding audio, the better it performs."
msgstr ""
+"Hestellen werkt door geluidsdata te gebruiken van buiten het selectiegebied.\n"
+"\n"
+"Kies a.u.b. een gebied waaraan audio minstens aan één kant grenst.\n"
+"\n"
+"Hoe meer omringend geluid, hoe beter het werkt."
-#: effects/Repair.h:33
+#: effects/Repair.h:43
msgid "Repairing damaged audio"
msgstr "Beschadigde audio wordt gerepareerd"
-#: ../src/effects/Repeat.cpp:31
+#: effects/Repeat.cpp:50
#, c-format
msgid "Repeated %d times"
msgstr "%d keer herhaald"
-#: ../src/effects/Repeat.cpp:57
+#: effects/Repeat.cpp:76
msgid "Tracks are too long to repeat the selection."
msgstr "Sporen zijn te lang om de selectie te herhalen."
-#: ../src/effects/Repeat.cpp:58 ../src/effects/Repeat.cpp:62
+#: effects/Repeat.cpp:77
+#: effects/Repeat.cpp:186
msgid "Repeat"
msgstr "Herhalen"
-#: effects/Repeat.cpp:212
-#, fuzzy
+#: effects/Repeat.cpp:211
msgid "Number of times to repeat:"
-msgstr "Aantal herhalingen: "
+msgstr "Aantal herhalingen:"
-#: effects/Repeat.cpp:221
+#: effects/Repeat.cpp:220
msgid "New selection length: hh:mm:ss"
-msgstr ""
+msgstr "Nieuwe selectielengte: hh:mm:ss"
-#: ../src/effects/Repeat.cpp:241 ../src/effects/Repeat.cpp:280
+#: effects/Repeat.cpp:252
msgid "New selection length: "
msgstr "Nieuwe selectielengte: "
-#: widgets/TimeTextCtrl.cpp:199
+#. i18n-hint: Name of time display format that shows time in hours, minutes
+#. * and seconds
+#: effects/Repeat.cpp:261
+#: widgets/TimeTextCtrl.cpp:272
msgid "hh:mm:ss"
msgstr "uu:mm:ss"
-#: ../src/effects/Repeat.h:34
+#: effects/Repeat.h:33
msgid "Repeat..."
msgstr "Herhalenâ¦"
# bezig met herhalen
-#: ../src/effects/Repeat.h:38
+#: effects/Repeat.h:47
msgid "Performing Repeat"
msgstr "Herhalen wordt uitgevoerd"
-#: ../src/effects/Reverse.h:30
+#: effects/Reverse.h:30
msgid "Reverse"
msgstr "Omkeren"
-#: ../src/effects/Reverse.h:34
+#: effects/Reverse.h:44
msgid "Reversing"
msgstr "Bezig met omkeren"
@@ -5594,16 +6377,16 @@ msgstr "Stilte genereren"
msgid "Silence..."
msgstr "Stilteâ¦"
-#: ../src/effects/Silence.h:37
+#: effects/Silence.h:48
msgid "Generating Silence"
msgstr "Stilte wordt gegenereerd"
-#: ../src/effects/Silence.h:42
+#: effects/Silence.h:53
#, c-format
msgid "Applied effect: Generate Silence, %.6lf seconds"
msgstr "Effect toegepast: Stilte genereren, %.6lf seconden"
-#: effects/SimplePairedTwoTrack.h:120
+#: effects/SimplePairedTwoTrack.h:115
msgid "Sorry, this effect cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr "Sorry, dit effect kan niet toegepast worden op stereosporen waarvan de afzonderlijke kanalen van het spoor niet overeenkomen."
@@ -5618,12 +6401,14 @@ msgid "SpikeCleaner by Lynn Allan"
msgstr "Pieken verwijderen door Lynn Allan"
#: effects/SpikeCleaner.cpp:165
-msgid "Max Spike Duration (milliseconds): \n"
+msgid ""
+"Max Spike Duration (milliseconds): \n"
"(99999 or greater is off)"
-msgstr "Maximale tijdsduur van piek (milliseconden): \n"
+msgstr ""
+"Maximale tijdsduur van piek (milliseconden): \n"
"(99999 of groter betekent: uit)"
-#: effects/SpikeCleaner.cpp:178 effects/TruncSilence.cpp:269
+#: effects/SpikeCleaner.cpp:178
msgid "Theshold for silence: "
msgstr "Drempelwaarde voor stilte: "
@@ -5631,407 +6416,483 @@ msgstr "Drempelwaarde voor stilte: "
msgid "Spike Cleaner..."
msgstr "Pieken verwijderenâ¦"
-#: effects/SpikeCleaner.h:31
+#: effects/SpikeCleaner.h:35
msgid "Applying Spike Cleaner..."
msgstr "âPieken verwijderenâ toepassenâ¦"
-#: Menus.cpp:358 Menus.cpp:564 effects/StereoToMono.h:23
-msgid "&Stereo to Mono"
-msgstr "&Van stereo naar mono"
+#: effects/StereoToMono.h:23
+msgid "Stereo to Mono"
+msgstr "Stereo naar mono"
-#: effects/StereoToMono.h:32
+#: effects/StereoToMono.h:38
msgid "Applying Stereo to Mono"
msgstr "Van stereo naar mono toepassen"
#: effects/TimeScale.cpp:140
msgid "Time Scale"
-msgstr ""
+msgstr "Tijdsnotatie"
#: effects/TimeScale.cpp:176
msgid "Sliding Time Scale/Pitch Shift"
-msgstr ""
+msgstr "Glijdende tijdschaal/toonhoogte"
#: effects/TimeScale.cpp:178
msgid "using SBSMS, by Clayton Otey"
-msgstr ""
+msgstr "SBSMS gebruiken, door Clayton Otey"
#: effects/TimeScale.cpp:187
msgid "Initial Tempo Change (%):"
-msgstr ""
+msgstr "Initiële tempowijziging (%):"
#: effects/TimeScale.cpp:191
msgid "Final Tempo Change (%):"
-msgstr ""
+msgstr "Uiteindelijke tempowijziging (%):"
#: effects/TimeScale.cpp:202
msgid "Initial Tempo Change (%)"
-msgstr ""
+msgstr "Initiële tempowijziging (%)"
#: effects/TimeScale.cpp:211
msgid "Final Tempo Change (%)"
-msgstr ""
+msgstr "Uiteindelijke tempowijziging (%)"
#: effects/TimeScale.cpp:219
msgid "Initial Pitch Shift (semitones) [-12 to 12]:"
-msgstr ""
+msgstr "Begin-toonhoogte (semitonen) [-12 tot 12]:"
#: effects/TimeScale.cpp:223
msgid "Final Pitch Shift (semitones) [-12 to 12]:"
-msgstr ""
+msgstr "Eind-toonhoogte (semitonen) [-12 tot 12]:"
#: effects/TimeScale.h:33
msgid "Sliding Time Scale/Pitch Shift..."
-msgstr ""
+msgstr "Glijdende Tijdschaal/Toonhoogte..."
+# bezig met/toonhoogte aanpassen/wijzigen/wordt gewijzigd
#: effects/TimeScale.h:47
msgid "Changing Tempo/Pitch"
-msgstr ""
+msgstr "Tempo/toonhoogte wordt aangepast"
-#: effects/ToneGen.cpp:59
+#: effects/ToneGen.cpp:61
#, c-format
msgid "Applied effect: Generate %s wave %s, frequency = %.2f Hz, amplitude = %.2f, %.6lf seconds"
msgstr "Effect toegepast: Toon genereren %s wave %s, frequentie = %.2f Hz, amplitude = %.2f, %.6lf seconden"
# Interpolatie: [lineair]
-#: ../src/widgets/Meter.cpp:292
+#: effects/ToneGen.cpp:69
+#: widgets/Meter.cpp:405
msgid "Linear"
msgstr "Lineair"
# Logaritmische schaal/logaritmisch
-#: effects/ToneGen.cpp:76
+#: effects/ToneGen.cpp:70
msgid "Logarithmic"
msgstr "Logaritmisch"
-#: effects/ToneGen.cpp:66
+#: effects/ToneGen.cpp:71
msgid "Chirp Generator"
-msgstr "Tjirp genereren"
+msgstr "Chirp genereren"
-#: ../src/effects/ToneGen.cpp:43
+#: effects/ToneGen.cpp:71
msgid "Tone Generator"
msgstr "Toongenerator"
-#: ../src/effects/ToneGen.cpp:48
+#: effects/ToneGen.cpp:72
msgid "Sine"
msgstr "Sinus"
-#: ../src/effects/ToneGen.cpp:49
+#: effects/ToneGen.cpp:73
msgid "Square"
msgstr "Vierkant"
-#: ../src/effects/ToneGen.cpp:50
+#: effects/ToneGen.cpp:74
msgid "Sawtooth"
msgstr "Zaagtand"
-#: effects/ToneGen.cpp:70
+#: effects/ToneGen.cpp:75
msgid "Square, no alias"
msgstr "Vierkant, geen alias"
-#: effects/ToneGen.cpp:298
+#: effects/ToneGen.cpp:277
+#: effects/ToneGen.cpp:314
msgid "Frequency (Hz)"
msgstr "Frequentie (Hz)"
-#: ../src/effects/ToneGen.cpp:263
+#: effects/ToneGen.cpp:305
msgid "Waveform:"
msgstr "Golfvorm:"
-#: effects/ToneGen.cpp:358
+#: effects/ToneGen.cpp:314
msgid "Frequency Hertz Start"
-msgstr ""
+msgstr "Frequentie (Hz) van begin"
-#: effects/ToneGen.cpp:359
+#: effects/ToneGen.cpp:315
msgid "Frequency Hertz End"
-msgstr ""
+msgstr "Frequentie (Hz) van einde"
-#: effects/ToneGen.cpp:360
+#: effects/ToneGen.cpp:316
msgid "Amplitude Start"
-msgstr ""
+msgstr "Amplitude begin"
-#: effects/ToneGen.cpp:361
+#: effects/ToneGen.cpp:317
msgid "Amplitude End"
-msgstr ""
+msgstr "Amplitude einde"
-#: effects/ToneGen.cpp:372
+#: effects/ToneGen.cpp:322
msgid "Interpolation:"
msgstr "Interpolatie:"
# Chirp/Tjirp
-#: effects/ToneGen.h:39
+#: effects/ToneGen.h:40
msgid "Chirp..."
msgstr "Chirptoonâ¦"
-#: effects/ToneGen.h:39
+#: effects/ToneGen.h:40
msgid "Tone..."
msgstr "Geluidstoonâ¦"
-#: effects/ToneGen.h:43
+#: effects/ToneGen.h:54
msgid "Generating Chirp"
msgstr "Chirptoon genereren"
-#: ../src/effects/ToneGen.h:44
+#: effects/ToneGen.h:54
msgid "Generating Tone"
msgstr "Geluidstoon wordt gegenereerd"
-#: effects/TruncSilence.cpp:113
+#: effects/TruncSilence.cpp:133
msgid "All tracks must have the same sample rate"
msgstr "Alle sporen moeten dezelfde samplefrequentie hebben"
-#: effects/TruncSilence.cpp:113 effects/TruncSilence.cpp:310
+#: effects/TruncSilence.cpp:133
+#: effects/TruncSilence.cpp:444
msgid "Truncate Silence"
msgstr "Stilte afkappen"
+#: effects/TruncSilence.cpp:454
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr "door Lynn Allan && Philip Van Baren"
+
+# maximale tijdsduur/lengte stilte
+#: effects/TruncSilence.cpp:468
+msgid "Min silence duration:"
+msgstr "Min. tijdsduur stilte:"
+
+#: effects/TruncSilence.cpp:471
+#: effects/TruncSilence.cpp:475
+#: prefs/MidiIOPrefs.cpp:197
+#: prefs/MidiIOPrefs.cpp:199
+msgid "milliseconds"
+msgstr "milliseconden"
+
# maximale tijdsduur/lengte stilte
-#: effects/TruncSilence.cpp:342
+#: effects/TruncSilence.cpp:472
msgid "Max silence duration:"
msgstr "Max. tijdsduur stilte:"
-#: prefs/AudioIOPrefs.cpp:175 prefs/AudioIOPrefs.cpp:178
-msgid "milliseconds"
-msgstr "milliseconden"
+#: effects/TruncSilence.cpp:476
+msgid "Silence compression:"
+msgstr "Stiltecompressie:"
+
+#: effects/TruncSilence.cpp:479
+msgid ":1"
+msgstr ":1"
-#: effects/TruncSilence.cpp:338
+#: effects/TruncSilence.cpp:481
msgid "Threshold for silence:"
msgstr "Drempelwaarde voor stilte:"
-#: effects/TruncSilence.cpp:371
-msgid " Duration must be at least 1 millisecond"
-msgstr " Tijdsduur moet minstens 1 milliseconde zijn"
+#: effects/TruncSilence.cpp:507
+msgid ""
+" Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
+msgstr ""
+" Tijdsduur moet minstens 1 milliseconde zijn\n"
+" Compressieverhouding moet tenminste 1:1 zijn"
-#: BatchCommands.cpp:236 effects/TruncSilence.cpp:84 effects/TruncSilence.h:29
+#: effects/TruncSilence.h:29
msgid "Truncate Silence..."
msgstr "Stilte afkappenâ¦"
-#: effects/TruncSilence.h:33
+#: effects/TruncSilence.h:43
msgid "Truncating Silence..."
msgstr "Stilte afkappenâ¦"
-# waarvan/waarin
-#: ../src/effects/VST/VSTEffect.cpp:180
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "Sorry, VST-effecten kunnen niet worden toegepast op stereosporen waarvan de individuele kanalen van het spoor niet overeenkomen."
+#: effects/VST/VSTEffect.cpp:256
+#: effects/ladspa/LadspaEffect.cpp:590
+#: effects/lv2/LV2Effect.cpp:798
+msgid "Effect Settings"
+msgstr "Effect-instellingen"
-#: ../src/effects/VST/VSTEffect.cpp:196
-msgid "Can't process replacing"
-msgstr "Kan vervanging niet verwerken"
+#: effects/VST/VSTEffect.cpp:336
+#: effects/ladspa/LadspaEffect.cpp:555
+#: effects/ladspa/LadspaEffect.cpp:563
+#: prefs/QualityPrefs.cpp:74
+#: prefs/TracksPrefs.cpp:48
+msgid "None"
+msgstr "Geen"
-# ipv parameters gewoon instellingen (sander)
-# er staat parameters in het engels, geen settings, maar ik vind
-# instellingen ook beter (tino) Misschien een BUGrapport schrijven?
-#: ../src/effects/VST/VSTEffect.cpp:410
-msgid "VST Plug-in parameters:"
-msgstr "VST-plugin instellingen:"
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr "Presets:"
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr "Laden"
-#: ../src/effects/Wahwah.cpp:41
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr "Opslaan"
+
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr "VST-programma laden:"
+
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr "Fout bij laden van het programma"
+
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr "VST-programma opslaan als:"
+
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr "Het parameterbestand werd opgeslagen vanuit %s. Doorgaan?"
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr "Bezig met effect: "
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr "Beide kanalen van een stereospoor moeten dezelfde samplefrequentie hebben."
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr "Beide kanalen van een stereospoor moeten dezelfde lengte hebben."
+
+#: effects/Wahwah.cpp:61
#, c-format
msgid "Applied effect: %s frequency = %.1f Hz, start phase = %.0f deg, depth = %.0f%%, resonance = %.1f, frequency offset = %.0f%%"
msgstr "Effect toegepast: %s frequentie = %.1f Hz, beginfase = %.0f deg, bereik = %.0f%%, resonantie = %.1f, frequentieverschuiving = %.0f%%"
-#: ../src/effects/Wahwah.cpp:52
+#: effects/Wahwah.cpp:203
msgid "Wahwah"
msgstr "Wahwah"
-#: ../src/effects/Wahwah.cpp:500
+#: effects/Wahwah.cpp:238
msgid "Depth (%):"
msgstr "Bereik (%):"
-#: ../src/effects/Wahwah.cpp:516
+#: effects/Wahwah.cpp:246
msgid "Resonance:"
msgstr "Resonantie:"
-#: effects/Wahwah.cpp:239
+#: effects/Wahwah.cpp:249
msgid "Resonance"
-msgstr ""
+msgstr "Resonantie"
-#: ../src/effects/Wahwah.cpp:532
+#: effects/Wahwah.cpp:254
msgid "Wah Frequency Offset (%):"
msgstr "Wahwah Frequentieverschuiving (%):"
-#: effects/Wahwah.cpp:244
+#: effects/Wahwah.cpp:257
msgid "Wah frequency offset in percent"
-msgstr ""
+msgstr "Wahwah-frequentieverschuiving in procent"
-#: ../src/effects/Wahwah.h:39
+#: effects/Wahwah.h:41
msgid "Wahwah..."
msgstr "Wahwahâ¦"
-#: ../src/effects/Wahwah.h:43
+#: effects/Wahwah.h:55
msgid "Applying Wahwah"
msgstr "Bezig met toepassen Wahwah"
-#: ../src/effects/ladspa/LadspaEffect.cpp:137
+#: effects/audiounits/AudioUnitEffect.cpp:139
+#: effects/ladspa/LadspaEffect.cpp:178
+#: effects/lv2/LV2Effect.cpp:193
#, c-format
msgid "Performing Effect: %s"
msgstr "Bezig met effect: %s"
-#: effects/ladspa/LadspaEffect.cpp:173
+#: effects/ladspa/LadspaEffect.cpp:198
+#: effects/lv2/LV2Effect.cpp:213
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr "Sorry, Plugin-effecten kunnen niet worden toegepast op stereosporen waarvan de individuele kanalen van het spoor niet overeenkomen."
-#: ../src/effects/ladspa/LadspaEffect.cpp:435
-#: ../src/effects/ladspa/LadspaEffect.cpp:443
-#: ../src/prefs/QualityPrefs.cpp:160
-msgid "None"
-msgstr "Geen"
-
-#: ../src/effects/ladspa/LadspaEffect.cpp:437
+#: effects/ladspa/LadspaEffect.cpp:557
+#: effects/lv2/LV2Effect.cpp:773
+#: effects/vamp/VampEffect.cpp:371
msgid "Author: "
msgstr "Auteur: "
-#: ../src/effects/ladspa/LadspaEffect.cpp:452
-msgid "Effect Settings"
-msgstr "Effect-instellingen"
-
-#: ../src/effects/Silence.cpp:127 ../src/effects/ToneGen.cpp:306
+#: effects/ladspa/LadspaEffect.cpp:685
+#: effects/ladspa/LadspaEffect.cpp:688
+#: effects/lv2/LV2Effect.cpp:809
+#: effects/lv2/LV2Effect.cpp:812
msgid "Length (seconds)"
msgstr "Lengte (seconden)"
-#: effects/lv2/LV2Effect.cpp:849 effects/lv2/LV2Effect.cpp:852
+#: effects/lv2/LV2Effect.cpp:824
+#: effects/lv2/LV2Effect.cpp:827
msgid "Note length (seconds)"
-msgstr ""
+msgstr "Noot-lengte (seconden)"
-#: effects/lv2/LV2Effect.cpp:860 effects/lv2/LV2Effect.cpp:863
+#: effects/lv2/LV2Effect.cpp:835
+#: effects/lv2/LV2Effect.cpp:838
msgid "Note velocity"
-msgstr ""
+msgstr "Let op snelheid"
-#: effects/lv2/LV2Effect.cpp:871 effects/lv2/LV2Effect.cpp:874
+# notenbalk (sander)
+#: effects/lv2/LV2Effect.cpp:846
+#: effects/lv2/LV2Effect.cpp:849
msgid "Note key"
-msgstr ""
+msgstr "Notenbalk"
-#: ../src/effects/nyquist/Nyquist.cpp:217
+#: effects/nyquist/Nyquist.cpp:73
msgid "Applying Nyquist Effect..."
msgstr "Nyquist-effect toepassenâ¦."
-#: ../src/effects/nyquist/Nyquist.cpp:224
+#: effects/nyquist/Nyquist.cpp:91
+#: effects/nyquist/Nyquist.cpp:401
msgid "Nyquist Prompt..."
msgstr "Nyquist promptâ¦"
-#: ../src/effects/nyquist/Nyquist.cpp:282
+#: effects/nyquist/Nyquist.cpp:402
msgid "Enter Nyquist Command: "
msgstr "Nyquist opdracht invoeren:"
-#: ../src/effects/nyquist/Nyquist.cpp:370
+#: effects/nyquist/Nyquist.cpp:515
msgid "Sorry, cannot apply effect on stereo tracks where the tracks don't match."
msgstr "Sorry, effect kan niet worden toegepast op stereosporen waarbij de sporen niet overeenkomen."
-#: ../src/effects/nyquist/Nyquist.cpp:397
+#: effects/nyquist/Nyquist.cpp:557
msgid "Nyquist"
msgstr "Nyquist"
-#: ../src/effects/nyquist/Nyquist.cpp:398
+#: effects/nyquist/Nyquist.cpp:558
msgid "Nyquist Output: "
msgstr "Nyquist uitvoer: "
# waarde/waarde terug
-#: effects/nyquist/Nyquist.cpp:594 effects/nyquist/Nyquist.cpp:605
+#: effects/nyquist/Nyquist.cpp:656
+#: effects/nyquist/Nyquist.cpp:665
msgid "Nyquist returned the value:"
msgstr "Nyquist gaf de volgende waarde:"
-#: ../src/effects/nyquist/Nyquist.cpp:594
+#: effects/nyquist/Nyquist.cpp:702
msgid "Nyquist did not return audio.\n"
msgstr "Nyquist gaf geen audio terug.\n"
-#: ../src/effects/nyquist/Nyquist.cpp:604
+#: effects/nyquist/Nyquist.cpp:711
msgid "Nyquist returned too many audio channels.\n"
msgstr "Nyquist gaf te veel audiokanalen terug.\n"
-#: effects/vamp/VampEffect.cpp:75
+#: effects/vamp/VampEffect.cpp:81
#, c-format
msgid "Extracting features: %s"
msgstr "Uitpakken van functies: %s"
-#: effects/vamp/VampEffect.cpp:106
+#: effects/vamp/VampEffect.cpp:107
msgid "Sorry, Vamp Plug-ins cannot be run on stereo tracks where the individual channels of the track do not match."
msgstr "Sorry, Vamp plugins kunnen niet toegepast worden op stereosporen waarbij de individuele kanalen van het spoor niet overeenkomen."
-#: effects/vamp/VampEffect.cpp:120
+#: effects/vamp/VampEffect.cpp:121
msgid "Sorry, failed to load Vamp Plug-in."
msgstr "Sorry, kon Vamp plugin niet laden."
-#: effects/vamp/VampEffect.cpp:228
+#: effects/vamp/VampEffect.cpp:207
msgid "Sorry, Vamp Plug-in failed to initialize."
msgstr "Sorry, Vamp Plugin is niet geïnitialiseerd."
-#: effects/vamp/VampEffect.cpp:376
+#: effects/vamp/VampEffect.cpp:363
msgid " - Vamp audio analysis plugin"
msgstr " - Vamp audio-analyseplugin"
-#: effects/vamp/VampEffect.cpp:423
+#: effects/vamp/VampEffect.cpp:399
msgid "Plugin Settings"
msgstr "Plugin-instellingen"
# programmeren/programma
-#: effects/vamp/VampEffect.cpp:446
+#: effects/vamp/VampEffect.cpp:418
+#: effects/vamp/VampEffect.cpp:424
msgid "Program"
msgstr "Programma"
-#: export/Export.cpp:469
+#: export/Export.cpp:468
msgid "All the selected audio is muted."
-msgstr ""
+msgstr "Alle geselecteerde audio is stilgemaakt."
-#: export/Export.cpp:471
+#: export/Export.cpp:470
msgid "All the audio is muted."
-msgstr ""
+msgstr "Al het geluid is stilgemaakt"
-#: export/Export.cpp:333
+#: export/Export.cpp:526
msgid "Export File"
msgstr "Bestand exporteren"
-#: export/Export.cpp:427
+#: export/Export.cpp:535
msgid "&Options..."
msgstr "&Optiesâ¦"
-#: ../src/export/Export.cpp:202
+#: export/Export.cpp:576
msgid "Are you sure you want to save the file as \""
msgstr "Weet u zeker dat u het bestand wilt opslaan als \""
-#: export/Export.cpp:394
+#: export/Export.cpp:596
#, c-format
-msgid "You are about to save a %s file with the name \"%s\".\n"
+msgid ""
+"You are about to save a %s file with the name \"%s\".\n"
"\n"
"Normally these files end in \".%s\", and some programs will not open files with nonstandard extensions.\n"
"\n"
"Are you sure you want to save the file under this name?"
-msgstr "U wilt een %s-bestand opslaan onder de naam â%sâ.\n"
+msgstr ""
+"U wilt een %s-bestand opslaan onder de naam â%sâ.\n"
"\n"
"Gewoonlijk eindigen deze bestanden in â.%sâ, en sommige programma's zullen geen bestanden openen waarvan de extensie niet standaard is.\n"
"\n"
"Weet u zeker dat u het bestand onder deze naam wilt opslaan?"
-#: export/Export.cpp:495
+#: export/Export.cpp:617
#, c-format
msgid "A file named \"%s\" already exists. Replace?"
msgstr "Het bestand â%sâ bestaat al. Wilt u het vervangen?"
-#: ../src/export/Export.cpp:142
+#: export/Export.cpp:719
msgid "Your tracks will be mixed down to two stereo channels in the exported file."
msgstr "Uw sporen zullen naar twee stereokanalen worden gemixed in het geexporteerde bestand."
-#: ../src/export/Export.cpp:147
+#: export/Export.cpp:724
msgid "Your tracks will be mixed down to a single mono channel in the exported file."
msgstr "Uw sporen zullen naar een enkel monokanaal worden gemixed in het geexporteerde bestand."
-#: export/Export.cpp:171
+#: export/Export.cpp:735
msgid "Advanced Mixing Options"
msgstr "Geavanceerde mix-opties"
-#: export/Export.cpp:632
+#: export/Export.cpp:943
#, c-format
msgid "Channel: %2d"
msgstr "Kanaal: %2d"
-#: export/Export.cpp:755
+#: export/Export.cpp:1058
msgid " - Left"
msgstr " - Links"
-#: export/Export.cpp:756
+#: export/Export.cpp:1060
msgid " - Right"
msgstr " - Rechts"
-#: export/Export.cpp:1072
+# sporenpaneel
+#: export/Export.cpp:1082
msgid "Mixer Panel"
-msgstr ""
+msgstr "Sporenpaneel"
# uitgangskanalen/uitgang/uitvoerkanalen
-#: export/Export.cpp:775 export/Export.cpp:829
+#: export/Export.cpp:1088
+#: export/Export.cpp:1135
#, c-format
msgid "Output Channels: %2d"
msgstr "Uitgangskanalen: %2d"
@@ -6040,946 +6901,1127 @@ msgstr "Uitgangskanalen: %2d"
msgid "Specify Command Line Encoder"
msgstr "Coderingsprogramma specificeren"
-#: export/ExportCL.cpp:303
+#: export/ExportCL.cpp:68
msgid "Command Line Export Setup"
msgstr "Exportinstellingen voor de opdrachtregel"
-#: export/ExportCL.cpp:308
+#: export/ExportCL.cpp:73
msgid "Command:"
msgstr "Opdracht:"
-#: export/ExportCL.cpp:313
+#: export/ExportCL.cpp:78
msgid "Show output"
msgstr "Uitvoer tonen"
-#: export/ExportCL.cpp:87
+#: export/ExportCL.cpp:85
#, c-format
msgid "Data will be piped to standard in. \"%f\" will be replaced with output filename selected."
msgstr "Data zal naar de standaard invoer worden gevoerd. â%fâ zal vervangen worden door de naam van het uitvoerbestand."
-#: export/Export.cpp:264
+#: export/ExportCL.cpp:220
msgid "(external program)"
msgstr "(extern programma)"
-#: ../src/export/ExportPCM.cpp:79
+#: export/ExportCL.cpp:286
+#: export/ExportPCM.cpp:492
#, c-format
msgid "Cannot export audio to %s"
msgstr "Kan audio niet exporteren naar %s"
-#: ../src/export/ExportCL.cpp:144
+#: export/ExportCL.cpp:360
msgid "Exporting the selected audio using command-line encoder"
msgstr "De geselecteerde audio wordt met codeerprogramma op de opdrachtregel geëxporteerd"
-#: ../src/export/ExportCL.cpp:146
+#: export/ExportCL.cpp:361
msgid "Exporting the entire project using command-line encoder"
msgstr "Het gehele project wordt met codeerprogramma op de opdrachtregel geëxporteerd"
# de uitvoer van de opdrachtregel (= titel van het venster)
-#: export/ExportCL.cpp:255
+#: export/ExportCL.cpp:423
msgid "Command Output"
msgstr "Opdrachtregel uitvoer"
-#: export/ExportFFmpeg.cpp:59
-msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+#: export/ExportFFmpeg.cpp:61
+msgid ""
+"Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries."
msgstr ""
+"FFmpeg moet juist geconfigureerd zijn om te kunnen doorgaan.\n"
+"U kan het configureren in Voorkeuren > Bibliotheken."
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr "AMR-ondersteuning is niet verdeelbaar"
-#: export/ExportFFmpeg.cpp:394
+#: export/ExportFFmpeg.cpp:232
+msgid ""
+"Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
+msgstr ""
+"FFmpeg moet juist geconfigureerd zijn om te kunnen doorgaan.\n"
+"U kan het configureren in Voorkeuren > Bibliotheken.\n"
+"\n"
+"AMR-ondersteuning is echter niet beschikbaar bij onze FFmpeg-installer,\n"
+"maar het vereist dat u FFmpeg zelf compileert."
+
+#: export/ExportFFmpeg.cpp:433
#, c-format
-msgid "FFmpeg cannot find audio codec 0x%x.\n"
+msgid ""
+"FFmpeg cannot find audio codec 0x%x.\n"
"Support for this codec is probably not compiled in."
msgstr ""
+"FFmpeg kan geluidscodec 0x%x niet vinden.\n"
+"Waarschijnlijk is er geen ondersteuning voor deze codec ingecompileerd."
-#: export/ExportFFmpeg.cpp:614
+#: export/ExportFFmpeg.cpp:655
#, c-format
msgid "Attempted to export %d channels, but max. channels for selected output format is %d"
-msgstr ""
+msgstr "Poging tot exporteren van %d sporen, maar het max. aantal sporen voor geselecteerd uitvoerformaat is %d"
-#: export/ExportFFmpeg.cpp:638
+#: export/ExportFFmpeg.cpp:684
#, c-format
msgid "Exporting selected audio as %s"
-msgstr ""
+msgstr "Geselecteerde audio exporteren als %s"
-#: export/ExportFFmpeg.cpp:639
+#: export/ExportFFmpeg.cpp:685
#, c-format
msgid "Exporting entire file as %s"
-msgstr ""
+msgstr "Volledig bestand exporteren als %s"
-#: export/ExportMP3.cpp:1860
+#: export/ExportFFmpeg.cpp:748
+#: export/ExportMP3.cpp:1777
msgid "Invalid sample rate"
msgstr "Ongeldige samplefrequentie"
-#: export/ExportFFmpeg.cpp:715
+#: export/ExportFFmpeg.cpp:761
#, c-format
-msgid "The project sample rate (%d) is not supported by the current output\n"
+msgid ""
+"The project sample rate (%d) is not supported by the current output\n"
"file format. "
msgstr ""
+"De project-samplefrequentie (%d) is niet mogelijk in het huidige\n"
+"uitvoer-bestandsformaat."
-#: export/ExportFFmpeg.cpp:718
+#: export/ExportFFmpeg.cpp:764
#, c-format
-msgid "The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
+msgid ""
+"The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
"supported by the current output file format. "
msgstr ""
+"De combinatie van samplefrequentie (%d) en bitrate (%d kbps) binnen \n"
+"het project is niet mogelijk in het huidige uitvoerbestandsformaat."
-#: export/ExportMP3.cpp:1879
+#: export/ExportFFmpeg.cpp:767
+#: export/ExportMP3.cpp:1796
msgid "You may resample to one of the rates below."
msgstr "U kunt een van de onderstaande samplefrequenties kiezen."
-#: export/ExportMP3.cpp:1902
+#: export/ExportFFmpeg.cpp:795
+#: export/ExportMP3.cpp:1819
msgid "Sample Rates"
msgstr "Samplefrequenties"
#: export/ExportFFmpegDialogs.cpp:93
msgid "Specify AC3 Options"
-msgstr ""
+msgstr "AC3-opties specificeren"
-#: export/ExportFFmpegDialogs.cpp:117
+#: export/ExportFFmpegDialogs.cpp:112
msgid "AC3 Export Setup"
-msgstr ""
-
-#: ../src/prefs/FileFormatPrefs.cpp:197
+msgstr "AC3-export instellingen"
+
+#: export/ExportFFmpegDialogs.cpp:116
+#: export/ExportFFmpegDialogs.cpp:234
+#: export/ExportFFmpegDialogs.cpp:298
+#: export/ExportFFmpegDialogs.cpp:364
+#: export/ExportFFmpegDialogs.cpp:926
+#: export/ExportMP2.cpp:131
msgid "Bit Rate:"
msgstr "Bitrate:"
-#: export/ExportFFmpegDialogs.cpp:162
+#: export/ExportFFmpegDialogs.cpp:157
msgid "Specify AAC Options"
-msgstr ""
+msgstr "AAC-opties specificeren"
-#: export/ExportFFmpegDialogs.cpp:178
+#: export/ExportFFmpegDialogs.cpp:168
msgid "AAC Export Setup"
-msgstr ""
+msgstr "AAC-export instellingen"
+
+#: export/ExportFFmpegDialogs.cpp:172
+#: export/ExportFFmpegDialogs.cpp:929
+#: export/ExportOGG.cpp:84
+msgid "Quality:"
+msgstr "Kwaliteit:"
-#: export/ExportFFmpegDialogs.cpp:217
+#: export/ExportFFmpegDialogs.cpp:211
msgid "Specify AMR-NB Options"
-msgstr ""
+msgstr "AMR-NB-opties specificeren"
-#: export/ExportFFmpegDialogs.cpp:241
+#: export/ExportFFmpegDialogs.cpp:230
msgid "AMR-NB Export Setup"
-msgstr ""
+msgstr "AMR-NB-export instellingen"
-#: export/ExportFFmpegDialogs.cpp:286
+#: export/ExportFFmpegDialogs.cpp:275
msgid "Specify AMR-WB Options"
-msgstr ""
+msgstr "AMR-WB-opties specificeren"
-#: export/ExportFFmpegDialogs.cpp:310
+#: export/ExportFFmpegDialogs.cpp:294
msgid "AMR-WB Export Setup"
-msgstr ""
+msgstr "AMR-WB-export instellingen"
-#: export/ExportFFmpegDialogs.cpp:357
+#: export/ExportFFmpegDialogs.cpp:341
msgid "Specify WMA Options"
-msgstr ""
+msgstr "WMA-opties specificeren"
-#: export/ExportFFmpegDialogs.cpp:381
+#: export/ExportFFmpegDialogs.cpp:360
msgid "WMA Export Setup"
-msgstr ""
+msgstr "WMA-export instellingen"
-#: export/ExportFFmpegDialogs.cpp:509
+#: export/ExportFFmpegDialogs.cpp:491
#, c-format
msgid "Overwrite preset '%s'?"
-msgstr ""
+msgstr "Preset '%s' overschrijven?"
-#: export/ExportFFmpegDialogs.cpp:510
+#: export/ExportFFmpegDialogs.cpp:492
msgid "Confirm Overwrite"
-msgstr ""
+msgstr "Overschrijven bevestigen"
-#: export/ExportFFmpegDialogs.cpp:501
+#: export/ExportFFmpegDialogs.cpp:504
msgid "Please select format before saving a profile"
-msgstr ""
+msgstr "Selecteer een formaat voordat u een profiel opslaat"
-#: export/ExportFFmpegDialogs.cpp:509
+#: export/ExportFFmpegDialogs.cpp:512
msgid "Please select codec before saving a profile"
-msgstr ""
+msgstr "Kies een codec voordat u een profiel opslaat"
-#: export/ExportFFmpegDialogs.cpp:580
+#: export/ExportFFmpegDialogs.cpp:582
#, c-format
msgid "Preset '%s' does not exist."
-msgstr ""
+msgstr "Preset '%s' bestaat niet."
-#: export/ExportFFmpegDialogs.cpp:803
+#: export/ExportFFmpegDialogs.cpp:797
msgid "Specify Other Options"
-msgstr ""
+msgstr "Andere opties specificeren"
-#: export/ExportFFmpegDialogs.cpp:897
+#: export/ExportFFmpegDialogs.cpp:886
msgid "Preset:"
-msgstr ""
+msgstr "Preset:"
-#: export/ExportFFmpegDialogs.cpp:898
+#: export/ExportFFmpegDialogs.cpp:887
msgid "Load Preset"
-msgstr ""
+msgstr "Preset laden"
-#: export/ExportFFmpegDialogs.cpp:899
+#: export/ExportFFmpegDialogs.cpp:888
msgid "Save Preset"
-msgstr ""
+msgstr "Preset opslaan"
-#: export/ExportFFmpegDialogs.cpp:900
+#: export/ExportFFmpegDialogs.cpp:889
msgid "Delete Preset"
-msgstr ""
+msgstr "Preset wissen"
-#: export/ExportFFmpegDialogs.cpp:901
+#: export/ExportFFmpegDialogs.cpp:890
msgid "Import Presets"
-msgstr ""
+msgstr "Presets importeren"
-#: export/ExportFFmpegDialogs.cpp:902
+# Venstertitel
+#: export/ExportFFmpegDialogs.cpp:891
msgid "Export Presets"
-msgstr ""
+msgstr "Presets exporteren"
-#: export/ExportPCM.cpp:246
+#: export/ExportFFmpegDialogs.cpp:896
msgid "Format:"
msgstr "Format:"
-#: export/ExportFFmpegDialogs.cpp:909
+#: export/ExportFFmpegDialogs.cpp:898
msgid "Codec:"
-msgstr ""
+msgstr "Codec:"
-#: export/ExportFFmpegDialogs.cpp:913
+#: export/ExportFFmpegDialogs.cpp:902
msgid "Not all formats and codecs are compatible. Some parameters (such as bitrate and samplerate) combinations are not compatible with some codecs too."
-msgstr ""
+msgstr "Niet alle formaten en codecs zijn compatibel. Sommige parametercombinaties (zoals bit- en samplefrequentie) zijn ook niet compatibel met sommige codecs."
-#: export/ExportFFmpegDialogs.cpp:916
+#: export/ExportFFmpegDialogs.cpp:905
msgid "Format selector:"
-msgstr ""
+msgstr "Formaat-selector:"
-#: export/ExportFFmpegDialogs.cpp:917
+#: export/ExportFFmpegDialogs.cpp:906
msgid "Codec selector:"
-msgstr ""
+msgstr "Codec-selector:"
-#: export/ExportFFmpegDialogs.cpp:919
+#: export/ExportFFmpegDialogs.cpp:908
msgid "Show All Formats"
-msgstr ""
+msgstr "Alle formaten weergeven"
-#: export/ExportFFmpegDialogs.cpp:920
+#: export/ExportFFmpegDialogs.cpp:909
msgid "Show All Codecs"
-msgstr ""
+msgstr "Alle codecs weergeven"
-#: export/ExportFFmpegDialogs.cpp:914
+#: export/ExportFFmpegDialogs.cpp:916
msgid "Options"
-msgstr ""
+msgstr "Opties"
-#: ../src/prefs/GUIPrefs.cpp:134
+#: export/ExportFFmpegDialogs.cpp:920
+#: prefs/GUIPrefs.cpp:116
msgid "Language:"
msgstr "Taal:"
-#: export/ExportFFmpegDialogs.cpp:932
-msgid "ISO 639 3-letter language code\n"
+#: export/ExportFFmpegDialogs.cpp:921
+msgid ""
+"ISO 639 3-letter language code\n"
"Optional\n"
"empty - automatic"
msgstr ""
+"ISO 639 3-letter taalcode\n"
+"Optioneel\n"
+"leeg - automatisch"
-#: export/ExportFFmpegDialogs.cpp:934
+#: export/ExportFFmpegDialogs.cpp:923
msgid "Tag:"
-msgstr ""
+msgstr "Label:"
-#: export/ExportFFmpegDialogs.cpp:935
-msgid "Codec tag (FOURCC)\n"
+#: export/ExportFFmpegDialogs.cpp:924
+msgid ""
+"Codec tag (FOURCC)\n"
"Optional\n"
"empty - automatic"
msgstr ""
+"Codec label (FOURCC)\n"
+"Optioneel\n"
+"leeg - automatisch"
-#: export/ExportFFmpegDialogs.cpp:938
-msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n"
+#: export/ExportFFmpegDialogs.cpp:927
+msgid ""
+"Bit Rate (bits/second) - influences the resulting file size and quality\n"
"Some codecs may only accept specific values (128k, 192k, 256k etc)\n"
"0 - automatic\n"
"Recommended - 192000"
msgstr ""
+"Bitrate (bits/seconde) - beinvloedt de resulterende bestandsgrootte en -kwaliteit\n"
+"Sommige codecs kunnen alleen bepaalde waardes accepteren (128k, 192k, 256k enz.)\n"
+"0 - automatisch\n"
+"Aanbevolen - 192000"
-#: prefs/FileFormatPrefs.cpp:219
-msgid "Quality:"
-msgstr "Kwaliteit:"
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid ""
+"Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
msgstr ""
+"Globale kwaliteit, wordt verschillend gebruikt door verschillende codecs\n"
+"Vereist voor vorbis\n"
+" 0 - automatisch\n"
+"-1 - uit (gebruik in plaats de bitrate)"
-#: export/ExportFFmpegDialogs.cpp:943
+#: export/ExportFFmpegDialogs.cpp:932
msgid "Sample Rate:"
-msgstr ""
+msgstr "Samplefrequentie:"
-#: export/ExportFFmpegDialogs.cpp:944
-msgid "Sample rate (Hz)\n"
+#: export/ExportFFmpegDialogs.cpp:933
+msgid ""
+"Sample rate (Hz)\n"
"0 - don't change sample rate"
msgstr ""
+"Samplerate (Hz)\n"
+"0 - samplerate niet aanpassen"
-#: export/ExportFFmpegDialogs.cpp:946
+#: export/ExportFFmpegDialogs.cpp:935
msgid "Cutoff Bandwidth:"
-msgstr ""
+msgstr "Begrenzingsbandbreedte:"
-#: export/ExportFFmpegDialogs.cpp:947
-msgid "Audio cutoff bandwidth (Hz)\n"
+#: export/ExportFFmpegDialogs.cpp:936
+msgid ""
+"Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
+"Audiobegrenzingsbandbreedte (Hz)\n"
+"Optioneel\n"
+"0 - automatisch"
-#: export/ExportFFmpegDialogs.cpp:949
+#: export/ExportFFmpegDialogs.cpp:938
msgid "Profile:"
-msgstr ""
+msgstr "Profiel:"
-#: export/ExportFFmpegDialogs.cpp:951
-msgid "AAC Profile\n"
+#: export/ExportFFmpegDialogs.cpp:940
+msgid ""
+"AAC Profile\n"
"Low Complexity -default\n"
"Most players won't play anything other than LC"
msgstr ""
+"AAC-profiel\n"
+"Lage complexiteit -standaard\n"
+"De meeste spelers zullen niets anders dan LC spelen"
-#: export/ExportFFmpegDialogs.cpp:940
+#: export/ExportFFmpegDialogs.cpp:942
msgid "Use Bit Reservoir"
-msgstr ""
+msgstr "Gebruik bit-reservoir"
-#: export/ExportFFmpegDialogs.cpp:943
+#: export/ExportFFmpegDialogs.cpp:945
msgid "Use Variable Block Length"
-msgstr ""
+msgstr "Gebruik variabele bloklengte"
-#: export/ExportFFmpegDialogs.cpp:948
+#: export/ExportFFmpegDialogs.cpp:950
msgid "FLAC options"
-msgstr ""
+msgstr "FLAC-opties"
-#: export/ExportFFmpegDialogs.cpp:965
+#: export/ExportFFmpegDialogs.cpp:954
msgid "Compression Level:"
-msgstr ""
+msgstr "Compressieniveau:"
-#: export/ExportFFmpegDialogs.cpp:966
-msgid "Compression level\n"
+#: export/ExportFFmpegDialogs.cpp:955
+msgid ""
+"Compression level\n"
"Required for FLAC\n"
"-1 - automatic\n"
"min - 0 (fast encoding, large output file)\n"
"max - 10 (slow encoding, small output file)"
msgstr ""
+"Compressieniveau\n"
+"Vereist voor FLAC\n"
+"-1 - automatisch\n"
+"min - 0 (snelle codering, groot uitvoerbestand)\n"
+"max - 10 (trage codering, klein uitvoerbestand)"
-#: export/ExportFFmpegDialogs.cpp:968
+#: export/ExportFFmpegDialogs.cpp:957
msgid "Frame Size:"
-msgstr ""
+msgstr "Venstergrootte:"
-#: export/ExportFFmpegDialogs.cpp:969
-msgid "Frame size\n"
+#: export/ExportFFmpegDialogs.cpp:958
+msgid ""
+"Frame size\n"
"Optional\n"
"0 - default\n"
"min - 16\n"
"max - 65535"
msgstr ""
+"Beeldgrootte\n"
+"Optioneel\n"
+"0 - standaard\n"
+"min - 16\n"
+"max - 65535"
-#: export/ExportFFmpegDialogs.cpp:971
+#: export/ExportFFmpegDialogs.cpp:960
msgid "LPC coefficients precision"
-msgstr ""
+msgstr "Precisie LPC-coëfficiënten"
-#: export/ExportFFmpegDialogs.cpp:972
-msgid "LPC coefficients precision\n"
+#: export/ExportFFmpegDialogs.cpp:961
+msgid ""
+"LPC coefficients precision\n"
"Optional\n"
"0 - default\n"
"min - 1\n"
"max - 15"
msgstr ""
+"Precisie LPC-coëfficiënten\n"
+"Optioneel\n"
+"0 - standaard\n"
+"min - 1\n"
+"max - 15"
-#: export/ExportFFmpegDialogs.cpp:974
+#: export/ExportFFmpegDialogs.cpp:963
msgid "Minimal prediction order"
-msgstr ""
+msgstr "Minimale voorspellingsvolgorde"
-#: export/ExportFFmpegDialogs.cpp:975
-msgid "Minimal prediction order\n"
+#: export/ExportFFmpegDialogs.cpp:964
+msgid ""
+"Minimal prediction order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 32 (with LPC) or 4 (without LPC)"
msgstr ""
+"Minimale voorspellingsvolgorde\n"
+"Optioneel\n"
+"-1 - standaard\n"
+"min - 0\n"
+"max - 32 (met LPC) of 4 (zonder LPC)"
-#: export/ExportFFmpegDialogs.cpp:977
+#: export/ExportFFmpegDialogs.cpp:966
msgid "Maximal prediction order"
-msgstr ""
+msgstr "Maximale voorspellingsvolgorde"
-#: export/ExportFFmpegDialogs.cpp:978
-msgid "Maximal prediction order\n"
+#: export/ExportFFmpegDialogs.cpp:967
+msgid ""
+"Maximal prediction order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 32 (with LPC) or 4 (without LPC)"
msgstr ""
+"Maximale voorspellingsvolgorde\n"
+"Optioneel\n"
+"-1 - standaard\n"
+"min - 0\n"
+"max - 32 (met LPC) of 4 (zonder LPC)"
-#: export/ExportFFmpegDialogs.cpp:980
+#: export/ExportFFmpegDialogs.cpp:969
msgid "Prediction Order Method:"
-msgstr ""
+msgstr "Methode voorspellingsvolgorde:"
-#: export/ExportFFmpegDialogs.cpp:982
-msgid "Prediction Order Method\n"
+#: export/ExportFFmpegDialogs.cpp:971
+msgid ""
+"Prediction Order Method\n"
"Estimate - fastest, lower compression\n"
"Log search - slowest, best compression\n"
"Full search - default"
msgstr ""
+"Methode voorspellingsvolgorde\n"
+"Schatting - snelste, lage compressie\n"
+"Log doorzoeken - langzaamste, optimale compressie\n"
+"Volledig doorzoeken - standaard"
-#: export/ExportFFmpegDialogs.cpp:984
+#: export/ExportFFmpegDialogs.cpp:973
msgid "Minimal partition order"
-msgstr ""
+msgstr "Minimale verdelingsvolgorde"
-#: export/ExportFFmpegDialogs.cpp:985
-msgid "Minimal partition order\n"
+#: export/ExportFFmpegDialogs.cpp:974
+msgid ""
+"Minimal partition order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 8"
msgstr ""
+"Minimale verdelingsvolgorde\n"
+"Optioneel\n"
+"-1 - standaard\n"
+"min - 0\n"
+"max - 8"
-#: export/ExportFFmpegDialogs.cpp:987
+#: export/ExportFFmpegDialogs.cpp:976
msgid "Maximal partition order"
-msgstr ""
+msgstr "Maximale verdelingsvolgorde"
-#: export/ExportFFmpegDialogs.cpp:988
-msgid "Maximal partition order\n"
+#: export/ExportFFmpegDialogs.cpp:977
+msgid ""
+"Maximal partition order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 8"
msgstr ""
+"Maximale verdelingsvolgorde\n"
+"Optioneel\n"
+"-1 - standaard\n"
+"min - 0\n"
+"max - 8"
-#: export/ExportFFmpegDialogs.cpp:977
+#: export/ExportFFmpegDialogs.cpp:979
msgid "Use LPC"
-msgstr ""
+msgstr "Gebruik LPC"
-#: export/ExportFFmpegDialogs.cpp:984
+#: export/ExportFFmpegDialogs.cpp:986
msgid "MPEG container options"
-msgstr ""
+msgstr "MPEG container opties"
-#: export/ExportFFmpegDialogs.cpp:1001
+#: export/ExportFFmpegDialogs.cpp:990
msgid "Mux Rate:"
-msgstr ""
+msgstr "Mux-verhouding:"
-#: export/ExportFFmpegDialogs.cpp:1002
-msgid "Maximum bit rate of the multiplexed stream\n"
+#: export/ExportFFmpegDialogs.cpp:991
+msgid ""
+"Maximum bit rate of the multiplexed stream\n"
"Optional\n"
"0 - default"
msgstr ""
+"Maximale bitrate van de gemultiplexte stream\n"
+"Optioneel\n"
+"0 - standaard"
-#: export/ExportFFmpegDialogs.cpp:1004
+#: export/ExportFFmpegDialogs.cpp:993
msgid "Packet Size:"
-msgstr ""
+msgstr "Packet-grootte:"
-#: export/ExportFFmpegDialogs.cpp:1005
-msgid "Packet size\n"
+#: export/ExportFFmpegDialogs.cpp:994
+msgid ""
+"Packet size\n"
"Optional\n"
"0 - default"
msgstr ""
+"Grootte pakket\n"
+"Optioneel\n"
+"0 - standaard"
-#: export/ExportFFmpegDialogs.cpp:1207
+#: export/ExportFFmpegDialogs.cpp:1209
msgid "You can't delete a preset without name"
-msgstr ""
+msgstr "U kunt een preset zonder naam niet verwijderen"
-#: export/ExportFFmpegDialogs.cpp:1219
+#: export/ExportFFmpegDialogs.cpp:1213
#, c-format
msgid "Delete preset '%s'?"
-msgstr ""
+msgstr "Preset '%s' wissen?"
-#: export/ExportFFmpegDialogs.cpp:1238
+#: export/ExportFFmpegDialogs.cpp:1232
msgid "You can't save a preset without name"
-msgstr ""
+msgstr "U kunt een preset zonder naam niet opslaan"
-#: export/ExportFFmpegDialogs.cpp:1277
+#: export/ExportFFmpegDialogs.cpp:1272
msgid "Select xml file with presets to import"
-msgstr ""
+msgstr "Selecteer xml-bestand met voorinstellingen om te importeren"
-#: ../src/prefs/KeyConfigPrefs.cpp:192
+#: export/ExportFFmpegDialogs.cpp:1275
+#: export/ExportFFmpegDialogs.cpp:1295
+#: prefs/KeyConfigPrefs.cpp:267
+#: prefs/KeyConfigPrefs.cpp:298
msgid "XML files (*.xml)|*.xml|All files (*.*)|*.*"
msgstr "Xml-bestanden (*.xml)|*.xml|Alle bestanden (*.*)|*.*"
+# in meervoud gehouden
#: export/ExportFFmpegDialogs.cpp:1292
msgid "Select xml file to export presets into"
-msgstr ""
+msgstr "Selecteer het xml-bestand om presets te exporteren"
-#: export/ExportFFmpegDialogs.cpp:1361
+#: export/ExportFFmpegDialogs.cpp:1363
msgid "Failed to guess format"
-msgstr ""
+msgstr "Formaat kon niet worden vastgesteld"
-#: export/ExportFFmpegDialogs.cpp:1403
+#: export/ExportFFmpegDialogs.cpp:1405
msgid "Failed to find the codec"
-msgstr ""
-
-#: export/ExportFFmpegDialogs.h:53
-msgid "M4A (AAC) Files (FFmpeg)"
-msgstr ""
+msgstr "Codec kon niet worden gevonden"
#: export/ExportFFmpegDialogs.h:54
-msgid "AC3 Files (FFmpeg)"
-msgstr ""
+msgid "M4A (AAC) Files (FFmpeg)"
+msgstr "M4A (AAC)-bestanden (FFmpeg)"
#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
-msgstr ""
+msgid "AC3 Files (FFmpeg)"
+msgstr "AC3-bestanden (FFmpeg)"
#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
-msgstr ""
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
+msgstr "AMR (smalband)-bestanden (FFmpeg, onverdeelbaar)"
#: export/ExportFFmpegDialogs.h:57
-msgid "WMA (version 2) Files (FFmpeg)"
-msgstr ""
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
+msgstr "AMR (breedband)-bestanden (FFmpeg, onverdeelbaar)"
#: export/ExportFFmpegDialogs.h:58
+msgid "WMA (version 2) Files (FFmpeg)"
+msgstr "WMA (versie 2)-bestanden (FFmpeg)"
+
+#: export/ExportFFmpegDialogs.h:59
msgid "Custom FFmpeg Export"
-msgstr ""
+msgstr "Gebruik FFmpeg exporteren"
-#: export/ExportFFmpegDialogs.h:373
+#: export/ExportFFmpegDialogs.h:374
msgid "LTP"
-msgstr ""
+msgstr "LTP"
-#: export/ExportFFmpegDialogs.h:373
+#: export/ExportFFmpegDialogs.h:374
msgid "Low Complexity"
-msgstr ""
+msgstr "Weinig complex"
-#: export/ExportFFmpegDialogs.h:373
+#: export/ExportFFmpegDialogs.h:374
msgid "Main profile"
-msgstr ""
+msgstr "Hoofdprofiel"
-#: export/ExportFFmpegDialogs.h:676
+# niveau/level/waarde
+#: export/ExportFFmpegDialogs.h:677
msgid "2-level"
-msgstr ""
+msgstr "2-level"
-#: export/ExportFFmpegDialogs.h:676
+# niveau/level/waarde
+#: export/ExportFFmpegDialogs.h:677
msgid "4-level"
-msgstr ""
+msgstr "4-level"
-#: export/ExportFFmpegDialogs.h:676
+# niveau/level/waarde
+#: export/ExportFFmpegDialogs.h:677
msgid "8-level"
-msgstr ""
+msgstr "8-level"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "Estimate"
-msgstr ""
+msgstr "Schatting"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "Full search"
-msgstr ""
+msgstr "Volledig doorzoeken"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "Log search"
-msgstr ""
+msgstr "Log doorzoeken"
-#: export/ExportFLAC.cpp:139
+#: export/ExportFLAC.cpp:67
msgid "Specify FLAC Options"
msgstr "FLAC-opties specificeren"
-#: export/ExportFLAC.cpp:193
+#: export/ExportFLAC.cpp:79
msgid "0 (fastest)"
msgstr "0 (snelste)"
-#: export/ExportFLAC.cpp:194
+#: export/ExportFLAC.cpp:80
msgid "1"
msgstr "1"
-#: export/ExportFLAC.cpp:195
+#: export/ExportFLAC.cpp:81
msgid "2"
msgstr "2"
-#: export/ExportFLAC.cpp:196
+#: export/ExportFLAC.cpp:82
msgid "3"
msgstr "3"
-#: export/ExportFLAC.cpp:197
+#: export/ExportFLAC.cpp:83
msgid "4"
msgstr "4"
-#: export/ExportFLAC.cpp:198
+#: export/ExportFLAC.cpp:84
msgid "5"
msgstr "5"
-#: export/ExportFLAC.cpp:199
+#: export/ExportFLAC.cpp:85
msgid "6"
msgstr "6"
-#: export/ExportFLAC.cpp:200
+#: export/ExportFLAC.cpp:86
msgid "7"
msgstr "7"
-#: export/ExportFLAC.cpp:201
+#: export/ExportFLAC.cpp:87
msgid "8 (best)"
msgstr "8 (beste)"
-#: prefs/FileFormatPrefs.cpp:193
+#: export/ExportFLAC.cpp:90
msgid "16 bit"
msgstr "16-bit"
-#: prefs/FileFormatPrefs.cpp:194
+#: export/ExportFLAC.cpp:91
msgid "24 bit"
msgstr "24-bit"
-#: prefs/FileFormatPrefs.cpp:190
+#: export/ExportFLAC.cpp:95
msgid "FLAC Export Setup"
msgstr "FLAC-export instellingen"
# niveau/level/waarde
-#: export/ExportFLAC.cpp:213
+#: export/ExportFLAC.cpp:99
msgid "Level:"
msgstr "Level:"
# bitdiepte
-#: prefs/FileFormatPrefs.cpp:197
+#: export/ExportFLAC.cpp:101
msgid "Bit depth:"
msgstr "Aantal bits:"
-#: export/Export.cpp:254
+#: export/ExportFLAC.cpp:207
msgid "FLAC Files"
msgstr "Flac-bestanden"
-#: export/ExportFLAC.cpp:93
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr "FLAC exporteren kon %s niet openen"
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid ""
+"FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+"Initialiseren van FLAC-encoder mislukt\n"
+"Status: %d"
+
+#: export/ExportFLAC.cpp:324
msgid "Exporting the selected audio as FLAC"
msgstr "De geselecteerde audio wordt geëxporteerd als FLAC"
-#: export/ExportFLAC.cpp:94
+#: export/ExportFLAC.cpp:325
msgid "Exporting the entire project as FLAC"
msgstr "Het gehele project wordt geëxporteerd als FLAC"
-#: export/ExportMP2.cpp:228 export/ExportOGG.cpp:207
+#: export/ExportMP2.cpp:108
msgid "Specify MP2 Options"
msgstr "MP2-opties specificeren"
-#: prefs/FileFormatPrefs.cpp:204
+#: export/ExportMP2.cpp:127
msgid "MP2 Export Setup"
msgstr "MP2-export instellingen"
-#: export/Export.cpp:259
+#: export/ExportMP2.cpp:200
msgid "MP2 Files"
msgstr "Mp2-bestanden"
-#: export/ExportMP2.cpp:94
+#: export/ExportMP2.cpp:230
msgid "Cannot export MP2 with this sample rate and bit rate"
msgstr "Kan niet naar MP2 exporteren met deze samplefrequentie en bitrate"
-#: ../src/export/ExportMP3.cpp:1345 ../src/export/ExportOGG.cpp:53
+#: export/ExportMP2.cpp:241
+#: export/ExportMP3.cpp:1619
+#: export/ExportOGG.cpp:184
msgid "Unable to open target file for writing"
msgstr "Niet in staat het doelbestand te openen voor schrijven"
-#: export/ExportMP2.cpp:144 export/ExportMP3.cpp:1680
+#: export/ExportMP2.cpp:273
#, c-format
msgid "Exporting selected audio at %d kbps"
msgstr "Geselecteerde audio exporteren in %d kbps"
-#: export/ExportMP2.cpp:145 export/ExportMP3.cpp:1681
+#: export/ExportMP2.cpp:274
#, c-format
msgid "Exporting entire file at %d kbps"
msgstr "Hele bestand exporteren in %d kbps"
-#. i18n-hint: kbps is the bitrate of the MP3 file, kilobits per second
-#: export/ExportMP3.cpp:142 export/ExportMP3.cpp:143 export/ExportMP3.cpp:144
-#: export/ExportMP3.cpp:145 export/ExportMP3.cpp:146 export/ExportMP3.cpp:147
-#: export/ExportMP3.cpp:148 export/ExportMP3.cpp:149 export/ExportMP3.cpp:150
-#: export/ExportMP3.cpp:151 export/ExportMP3.cpp:152 export/ExportMP3.cpp:153
-#: export/ExportMP3.cpp:154 export/ExportMP3.cpp:155 export/ExportMP3.cpp:156
-#: export/ExportMP3.cpp:157 export/ExportMP3.cpp:158 export/ExportMP3.cpp:159
+#: export/ExportMP3.cpp:223
+#: export/ExportMP3.cpp:241
+#: export/ExportMP3.cpp:255
msgid "kbps"
msgstr "kbps"
-#: export/ExportMP3.cpp:240
+#: export/ExportMP3.cpp:242
msgid "(Best Quality)"
msgstr "(Beste kwaliteit)"
-#: export/ExportMP3.cpp:241
+#: export/ExportMP3.cpp:243
msgid "(Smaller files)"
msgstr "(Kleinere bestanden)"
-#: export/ExportMP3.cpp:175
+#: export/ExportMP3.cpp:245
msgid "Fast"
msgstr "Snel"
-#: export/ExportMP3.cpp:176
+#: export/ExportMP3.cpp:246
+#: export/ExportMP3.cpp:252
+#: prefs/GUIPrefs.cpp:50
+#: prefs/TracksPrefs.cpp:46
msgid "Standard"
msgstr "Standaard"
# belachelijk hoog/Waanzinnig/Gestoord
-#: export/ExportMP3.cpp:248
+#: export/ExportMP3.cpp:250
msgid "Insane"
msgstr "Waanzinnig"
-#: export/ExportMP3.cpp:249
+#: export/ExportMP3.cpp:251
msgid "Extreme"
msgstr "Extreem"
-#: export/ExportMP3.cpp:251
+#: export/ExportMP3.cpp:253
msgid "Medium"
msgstr "Gemiddeld"
-#: export/ExportMP3.cpp:1135
+#: export/ExportMP3.cpp:305
msgid "Specify MP3 Options"
msgstr "MP3-opties specificeren"
-#: ../src/prefs/FileFormatPrefs.cpp:172
+#: export/ExportMP3.cpp:319
msgid "MP3 Export Setup"
msgstr "MP3-export instellingen"
-#: export/ExportMP3.cpp:1438
+#: export/ExportMP3.cpp:326
msgid "Bit Rate Mode:"
msgstr "Bitrate-modus:"
-#: export/ExportMP3.cpp:1443
+#: export/ExportMP3.cpp:331
msgid "Preset"
msgstr "Voorinstelling"
# bitrate is variabel of contstant
-#: prefs/FileFormatPrefs.cpp:195
+#: export/ExportMP3.cpp:332
msgid "Variable"
msgstr "Variabel"
-#: export/ExportMP3.cpp:1445
+#: export/ExportMP3.cpp:333
msgid "Average"
msgstr "Gemiddeld"
-#: prefs/FileFormatPrefs.cpp:196
+#: export/ExportMP3.cpp:334
msgid "Constant"
msgstr "Constant"
-#: ../src/prefs/PrefsDialog.cpp:85
+#: export/ExportMP3.cpp:373
+#: prefs/QualityPrefs.cpp:38
msgid "Quality"
msgstr "Kwaliteit"
-#: export/ExportMP3.cpp:1491
+#: export/ExportMP3.cpp:379
msgid "Variable Speed:"
msgstr "Variabele snelheid:"
-#: export/ExportMP3.cpp:1498
+#: export/ExportMP3.cpp:386
msgid "Channel Mode:"
msgstr "Kanaalmodus:"
# mp3 export setup
# modus: []joint stereo []stereo
-#: prefs/FileFormatPrefs.cpp:224
+#: export/ExportMP3.cpp:391
msgid "Joint Stereo"
msgstr "Stereo samengevoegd"
-#: prefs/FileFormatPrefs.cpp:225
+#: export/ExportMP3.cpp:392
msgid "Stereo"
msgstr "Stereo"
-#: export/ExportMP3.cpp:613
+#: export/ExportMP3.cpp:536
msgid "Locate Lame"
msgstr "Lame opzoeken"
-#: export/ExportMP3.cpp:633
+#: export/ExportMP3.cpp:556
#, c-format
msgid "Audacity needs the file %s to create MP3s."
msgstr "Audacity heeft het bestand %s nodig om MP3S aan te kunnen maken."
-#: export/ExportMP3.cpp:655
+#: export/ExportMP3.cpp:578
msgid "To get a free copy of Lame, click here -->"
msgstr "Voor een gratis kopie van Lame, klik hier -->"
#: export/ExportMP3.cpp:1070
#, c-format
-msgid "You are linking to lame_enc.dll v%d.%d. This version is not compatible with Audacity %d.%d.%d.\n"
+msgid ""
+"You are linking to lame_enc.dll v%d.%d. This version is not compatible with Audacity %d.%d.%d.\n"
"Please download the latest version of the LAME MP3 library."
msgstr ""
+"U linkt naar lame_enc.dll v%d.%d. Deze versie is niet compatibel met Audacity %d.%d.%d.\n"
+"Download a.u.b. de laatste versie van de LAME MP3-bibliotheek."
-#: ../src/export/ExportMP3.cpp:1116
+#: export/ExportMP3.cpp:1328
msgid "Only lame_enc.dll|lame_enc.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
msgstr "Enkel lame_enc.dll|lame_enc.dll|Dynamically linked libraries (*.dll)|*.dll|Alle bestanden (*.*)|*"
-#: export/ExportMP3.cpp:600
+#: export/ExportMP3.cpp:1346
msgid "Only libmp3lame.dylib|libmp3lame.dylib|Dynamic Libraries (*.dylib)|*.dylib|All Files (*)|*"
msgstr "Enkel libmp3lame.dylib|libmp3lame.dylib|Dynamische bibliotheken (*.dylib)|*.dylib|Alle bestanden (*)|*"
-#: export/ExportMP3.cpp:1567
+#: export/ExportMP3.cpp:1364
msgid "Only libmp3lame.so.0|libmp3lame.so.0|Primary Shared Object files (*.so)|*.so|Extended Libraries (*.so*)|*.so*|All Files (*)|*"
msgstr "Enkel libmp3lame.so.0|libmp3lame.so.0|Primary Shared Object bestanden (*.so)|*.so|Uitgebreide bibliotheken (*.so*)|*.so*|Alle bestanden (*)|*"
-#: export/Export.cpp:245
+#: export/ExportMP3.cpp:1500
msgid "MP3 Files"
msgstr "Mp3-bestanden"
-#: ../src/export/ExportMP3.cpp:1328
+#: export/ExportMP3.cpp:1524
msgid "Could not open MP3 encoding library!"
msgstr "Kon de MP3-coderingsbibliotheek niet openen!"
-#: ../src/export/ExportMP3.cpp:1335
+#: export/ExportMP3.cpp:1531
msgid "Not a valid or supported MP3 encoding library!"
msgstr "Geen geldige of ondersteunde MP3-coderingsbibliotheek!"
-#: export/ExportMP3.cpp:1696
+#: export/ExportMP3.cpp:1608
msgid "Unable to initialize MP3 stream"
msgstr "Niet is staat de MP3-stroom te initialiseren"
-#: export/ExportMP3.cpp:1684
+#: export/ExportMP3.cpp:1652
#, c-format
msgid "Exporting selected audio with %s preset"
msgstr "De geselecteerde audio exporteren met %s voorinstelling"
-#: export/ExportMP3.cpp:1685
+#: export/ExportMP3.cpp:1653
#, c-format
msgid "Exporting entire file with %s preset"
msgstr "Het gehele bestand exporteren met %s voorinstelling"
-#: export/ExportMP3.cpp:1690
+#: export/ExportMP3.cpp:1658
#, c-format
msgid "Exporting selected audio with VBR quality %s"
msgstr "De geselecteerde audio exporteren met vbr-kwaliteit %s"
-#: export/ExportMP3.cpp:1691
+#: export/ExportMP3.cpp:1659
#, c-format
msgid "Exporting entire file with VBR quality %s"
msgstr "Het gehele bestand exporteren met vbr-kwaliteit %s"
-#: export/ExportMP3.cpp:1696
+#: export/ExportMP3.cpp:1664
#, c-format
msgid "Exporting selected audio at %d Kbps"
msgstr "De geselecteerde audio exporteren met %d Kbps"
-#: export/ExportMP3.cpp:1697
+#: export/ExportMP3.cpp:1665
#, c-format
msgid "Exporting entire file at %d Kbps"
msgstr "Het gehele bestand exporteren met %d Kbps"
-#: export/ExportMP3.cpp:1787
+#: export/ExportMP3.cpp:1699
#, c-format
msgid "Error %d returned from MP3 encoder"
msgstr "Foutmelding %d teruggekregen van mp3-codeerprogramma"
-#: export/ExportMP3.cpp:1873
+#: export/ExportMP3.cpp:1790
#, c-format
-msgid "The project sample rate (%d) is not supported by the MP3\n"
+msgid ""
+"The project sample rate (%d) is not supported by the MP3\n"
"file format. "
-msgstr "De project-samplefrequentie (%d) is niet mogelijk in het mp3\n"
+msgstr ""
+"De project-samplefrequentie (%d) is niet mogelijk in het mp3\n"
"bestandsformaat"
-#: export/ExportMP3.cpp:1876
+#: export/ExportMP3.cpp:1793
#, c-format
-msgid "The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
+msgid ""
+"The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
"supported by the MP3 file format. "
-msgstr "De combinatie van samplefrequentie (%d) en bit-rate (%d kbps) binnen \n"
+msgstr ""
+"De combinatie van samplefrequentie (%d) en bit-rate (%d kbps) binnen \n"
"het project is niet mogelijk in het mp3-bestandsformaat."
-#: export/ExportMP3.cpp:1965
+# exportplugin/export plugin
+#: export/ExportMP3.cpp:1970
msgid "MP3 export library not found"
-msgstr ""
+msgstr "MP3-export-bibliotheek niet gevonden"
# meerdere exorteren
-#: ../src/export/ExportMultiple.cpp:367 ../src/export/ExportMultiple.cpp:474
-#: ../src/export/ExportMultiple.cpp:562
+#: export/ExportMultiple.cpp:93
+#: export/ExportMultiple.cpp:424
msgid "Export Multiple"
msgstr "Meervoudig exporteren"
# Indien u meerdere geluidssporen heeft...
# Als je vertaalt: Indien er meer dan één geluidsspoor is, enz.
# dan wordt deze zin niet weergegeven als de LANG op C staat.
-# (vanwege de e met accent die wx nog niet goed kan verwerken)
-#: ../src/export/ExportMultiple.cpp:487
-msgid "If you have more than one Audio Track, you can export each track as a separate file,\n"
+# (vanwege de e met accent die wx nog niet goed kan verwerken)
+#: export/ExportMultiple.cpp:163
+msgid ""
+"If you have more than one Audio Track, you can export each track as a separate file,\n"
"or if you have a Label Track, you can export a new file for each label.\n"
"\n"
"This project does not have multiple tracks or a Label Track, so you cannot export multiple files."
-msgstr "Indien er meerdere geluidssporen zijn, kunt u elk spoor afzonderlijk in een bestand opslaan. \n"
+msgstr ""
+"Indien er meerdere geluidssporen zijn, kunt u elk spoor afzonderlijk in een bestand opslaan. \n"
"Indien er een labelspoor is, kunt u ook voor elk label een afzonderlijk bestand exporteren.\n"
"Dit project bevat geen meerdere geluidssporen of een labelspoor, dus u kunt het niet\n"
"naar meerdere bestanden exporteren."
-#: ../src/export/ExportMultiple.cpp:493
+#: export/ExportMultiple.cpp:164
msgid "Can't export multiple files"
msgstr "Kan niet meerdere bestanden exporteren"
-#: ../src/export/ExportMultiple.cpp:576
+#: export/ExportMultiple.cpp:229
msgid "Export format:"
msgstr "Exportformat:"
-#: export/Export.cpp:341 export/ExportMultiple.cpp:725
+#: export/ExportMultiple.cpp:234
msgid "Options..."
msgstr "Optiesâ¦"
-#: ../src/export/ExportMultiple.cpp:594
+#: export/ExportMultiple.cpp:238
msgid "Export location:"
msgstr "Exportlocatie:"
-#: ../src/export/ExportMultiple.cpp:600 ../src/prefs/DirectoriesPrefs.cpp:82
-msgid "Choose..."
-msgstr "Kiezenâ¦"
-
-#: export/ExportMultiple.cpp:204
+#: export/ExportMultiple.cpp:243
msgid "Create"
msgstr "Aanmaken"
-#: ../src/export/ExportMultiple.cpp:612
+#: export/ExportMultiple.cpp:250
msgid "Split files based on:"
msgstr "Bestanden splitsen gebaseerd op:"
-#: ../src/export/ExportMultiple.cpp:615
+#: export/ExportMultiple.cpp:259
+#: export/ExportMultiple.cpp:261
msgid "Labels"
msgstr "Labels"
# geluid dat zich voor het eerste label bevind bijvoegen
-#: ../src/export/ExportMultiple.cpp:623
+#: export/ExportMultiple.cpp:266
msgid "Include audio before first label"
msgstr "Audio die voor het eerste label zit ook meenemen"
-#: ../src/export/ExportMultiple.cpp:629
+#: export/ExportMultiple.cpp:272
msgid "First file name:"
msgstr "Eerste bestandsnaam:"
-#: export/ExportMultiple.cpp:280
+#: export/ExportMultiple.cpp:277
msgid "First file name"
-msgstr ""
+msgstr "Eerste bestandsnaam"
-#: ../src/export/ExportMultiple.cpp:636
-msgid "Tracks"
-msgstr "Sporen"
-
-#: ../src/export/ExportMultiple.cpp:646
+#: export/ExportMultiple.cpp:294
msgid "Name files:"
msgstr "Bestanden benoemen:"
# zal de naam van Label/Spoor gebruiken
# gebruik makend van label/spoor naam
# naam van Label/spoor wordt gebruikt
-#: ../src/export/ExportMultiple.cpp:649
+#: export/ExportMultiple.cpp:303
+#: export/ExportMultiple.cpp:305
msgid "Using Label/Track Name"
msgstr "Gebruik de naam van het label of het spoor"
# opvolgend/opeenvolgend/oplopend nummeren/nummering
-#: ../src/export/ExportMultiple.cpp:655
+#: export/ExportMultiple.cpp:311
+#: export/ExportMultiple.cpp:313
msgid "Numbering consecutively"
msgstr "Oplopend nummeren"
-#: ../src/export/ExportMultiple.cpp:660
+#: export/ExportMultiple.cpp:319
msgid "File name prefix:"
msgstr "Bestandsnaam voorzetsel:"
-#: export/ExportMultiple.cpp:327
+#: export/ExportMultiple.cpp:324
msgid "File name prefix"
-msgstr ""
+msgstr "Bestandsnaam-voorzetsel"
-#: ../src/export/ExportMultiple.cpp:677
+#: export/ExportMultiple.cpp:338
msgid "Overwrite existing files"
msgstr "Bestaande bestanden overschrijven"
-#: export/ExportMultiple.cpp:369
+#: export/ExportMultiple.cpp:422
#, c-format
msgid "\"%s\" successfully created."
msgstr "â%sâ is succesvol aangemaakt."
# letterlijk:
# voor het opslaan van de geexporteerde bestanden
-#: ../src/export/ExportMultiple.cpp:766
+#: export/ExportMultiple.cpp:431
msgid "Choose a location to save the exported files"
msgstr "Kies een locatie voor de geëxporteerde bestanden"
-#: export/ExportMultiple.cpp:491
+#: export/ExportMultiple.cpp:524
+#, c-format
+msgid "Successfully exported the following %ld file(s)."
+msgstr "%ld bestand(en) met succes geëxporteerd."
+
+# Dit is misschien best altijd meervoud, omdat de haakjes niet zo goed staan in het programma.
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the following %ld file(s)."
+msgstr "Er ging iets mis na het exporteren van volgende %ld-bestanden."
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
+msgstr "Exporteren geannuleerd na het exporteren van de volgende %ld bestanden."
+
+#: export/ExportMultiple.cpp:527
+#, c-format
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr "Exporteren stopte na het exporteren van de volgende %ld bestanden."
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr "Er ging iets serieus mis na het exporteren van de volgende %ld bestanden."
+
+# meerdere exorteren
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr "Meervoudig exporteren"
+
+#: export/ExportMultiple.cpp:570
#, c-format
-msgid "\"%s\" doesn't exist.\n"
+msgid ""
+"\"%s\" doesn't exist.\n"
"\n"
"Would you like to create it?"
-msgstr "â%sâ bestaat niet.\n"
+msgstr ""
+"â%sâ bestaat niet.\n"
"\n"
"Wilt u het aanmaken?"
-#: export/ExportMultiple.cpp:568 export/ExportMultiple.cpp:703
+#: export/ExportMultiple.cpp:667
+#: export/ExportMultiple.cpp:804
msgid "Edit metadata"
msgstr "Metadata bewerken"
-#: export/ExportMultiple.cpp:590
-#, c-format
-msgid "Successfully exported %d file(s)."
-msgstr "%d bestanden zijn met succes geëxporteerd."
-
-#: export/ExportMultiple.cpp:597
+#: export/ExportMultiple.cpp:923
#, c-format
-msgid "Something went wrong after exporting %d file(s)."
-msgstr "Er ging iets mis nadat %d bestanden geëxporteerd waren."
-
-#: export/ExportMultiple.cpp:825
-#, c-format
-msgid "Label %s is not a legal file name. You cannot use any of: %s\n"
+msgid ""
+"Label %s is not a legal file name. You cannot use any of: %s\n"
"Use..."
-msgstr "Label %s is geen geldige bestandsnaam. U kunt het volgende gebruiken: %s\n"
+msgstr ""
+"Label %s is geen geldige bestandsnaam. U kunt het volgende gebruiken: %s\n"
"Gebruikâ¦"
# aangeven/specificeren
@@ -6987,1992 +8029,2217 @@ msgstr "Label %s is geen geldige bestandsnaam. U kunt het volgende gebruiken: %
msgid "Specify Ogg Vorbis Options"
msgstr "Ogg Vorbis-opties specificeren"
-#: export/ExportOGG.cpp:81
+#: export/ExportOGG.cpp:79
msgid "Ogg Vorbis Export Setup"
msgstr "Ogg Vorbis exportinstellingen"
-#: export/ExportOGG.cpp:154
+#: export/ExportOGG.cpp:155
msgid "Ogg Vorbis Files"
msgstr "Ogg Vorbis-bestanden"
-#: ../src/export/ExportOGG.cpp:191
+#: export/ExportOGG.cpp:256
msgid "Exporting the selected audio as Ogg Vorbis"
msgstr "De geselecteerde audio wordt als Ogg Vorbis geëxporteerd"
-#: ../src/export/ExportOGG.cpp:192
+#: export/ExportOGG.cpp:257
msgid "Exporting the entire project as Ogg Vorbis"
msgstr "Het gehele project wordt als Ogg Vorbis geëxporteerd"
-#: export/ExportPCM.cpp:115
+#: export/ExportPCM.cpp:119
msgid "Specify Uncompressed Options"
-msgstr ""
+msgstr "Opties voor ongecomprimeerde bestanden specificeren"
-#: export/ExportPCM.cpp:240
+#: export/ExportPCM.cpp:189
msgid "Uncompressed Export Setup"
msgstr "Exportinstellingen voor bestanden zonder compressie"
-#: export/ExportPCM.cpp:250
+#: export/ExportPCM.cpp:195
msgid "Header:"
msgstr "Header:"
-#: export/ExportPCM.cpp:254
+#: export/ExportPCM.cpp:199
+#: import/ImportRaw.cpp:376
msgid "Encoding:"
msgstr "Codering:"
-#: export/ExportPCM.cpp:259
+#: export/ExportPCM.cpp:204
msgid "(Not all combinations of headers and encodings are possible.)"
-msgstr "(Niet alle combinaties van headers en coderingen zijn mogelijk.)"
+msgstr "(Niet alle combinaties van headers en coderingen zijn mogelijk)"
-#: export/ExportPCM.cpp:369
+#: export/ExportPCM.cpp:359
msgid "Other uncompressed files"
-msgstr ""
+msgstr "Andere bestanden zonder compressie"
-#: export/ExportPCM.cpp:361
+#: export/ExportPCM.cpp:377
msgid "AIFF (Apple) signed 16 bit PCM"
-msgstr ""
+msgstr "AIFF (Apple) signed 16 bit PCM"
-#: export/ExportPCM.cpp:351
+#: export/ExportPCM.cpp:388
msgid "WAV (Microsoft) signed 16 bit PCM"
-msgstr ""
+msgstr "WAV (Microsoft) signed 16 bit PCM"
-#: export/ExportPCM.cpp:387
+#: export/ExportPCM.cpp:399
msgid "GSM 6.10 WAV (mobile)"
-msgstr ""
+msgstr "GSM 6.10 WAV (mobile)"
-#: ../src/export/ExportPCM.cpp:73
+#: export/ExportPCM.cpp:476
msgid "Cannot export audio in this format."
msgstr "Kan audio niet in dit format exporteren."
-#: export/ExportPCM.cpp:400
+#: export/ExportPCM.cpp:526
#, c-format
msgid "Exporting the selected audio as %s"
msgstr "De geselecteerde audio exporteren als %s"
-#: export/ExportPCM.cpp:402
+#: export/ExportPCM.cpp:528
#, c-format
msgid "Exporting the entire project as %s"
msgstr "Het gehele project exporteren als %s"
#. i18n-hint: %s will be the error message from libsndfile
-#: export/ExportPCM.cpp:436
+#: export/ExportPCM.cpp:564
#, c-format
msgid "Error (file may not have been written): %s"
msgstr "Fout (bestand is mogelijk nog niet geschreven): %s"
-#: export/ExportPCM.cpp:723
+#: export/ExportPCM.cpp:735
msgid "There are no options for this format.\n"
-msgstr ""
+msgstr "Er zijn geen opties voor dit formaat.\n"
#. i18n-hint: This is pointing users at another possible export format in
#. * the list. So you should translate the quoted string
#. * 'Other uncompressed files' exactly the same as you do the same string
#. * when it comes up on it's own.
-#: export/ExportPCM.cpp:728
+#: export/ExportPCM.cpp:740
msgid "If you need more control over the export format please use the 'Other uncompressed files' format."
-msgstr ""
+msgstr "Als U meer controle wilt over het exporteerformaat, gebruik dan a.u.b. het 'Andere niet gecomprimeerde bestanden'-formaat."
-#: export/ExportPCM.cpp:733
+#: export/ExportPCM.cpp:745
msgid "Your file will be exported as a 16-bit AIFF (Apple/SGI) file.\n"
-msgstr ""
+msgstr "Uw bestand zal geëxporteerd worden als een 16-bit AIFF (Apple/SGI) bestand.\n"
-#: export/ExportPCM.cpp:738
+#: export/ExportPCM.cpp:750
msgid "Your file will be exported as a 16-bit WAV (Microsoft) file.\n"
-msgstr ""
+msgstr "Uw bestand zal geëxporteerd worden als een 16-bit WAV (Microsoft) bestand.\n"
-#: export/ExportPCM.cpp:743
+#: export/ExportPCM.cpp:755
msgid "Your file will be exported as a GSM 6.10 WAV file.\n"
-msgstr ""
+msgstr "Uw bestand zal geëxporteerd worden als een GSM 6.10 WAV bestand.\n"
-#: import/ImportMP3.cpp:78
+#: import/Import.cpp:162
+#: import/ImportMP3.cpp:47
msgid "MP3 files"
msgstr "MP3-bestanden"
-#: import/Import.cpp:175
+#: import/Import.cpp:181
msgid "Select stream(s) to import"
-msgstr ""
+msgstr "Selecteer te importeren stream(s)"
# is er geen ondersteuning voor %s
-#: ../src/import/Import.cpp:159
+#: import/Import.cpp:234
#, c-format
msgid "This version of Audacity was not compiled with %s support."
msgstr "In deze versie van Audacity is ondersteuning voor %s niet meegecompileerd."
-#: import/Import.cpp:240
+#: import/Import.cpp:247
#, c-format
-msgid "\"%s\" \n"
+msgid ""
+"\"%s\" \n"
"is a MIDI file, not an audio file. \n"
"Audacity cannot open this type of file for playing, but you can\n"
"edit it by clicking File > Import > MIDI."
msgstr ""
+"â%sâ \n"
+"is een MIDI-bestand, geen audiobestand. \n"
+"Audacity kan dit type bestand niet afspelen of bewerken, maar u kunt het wel \n"
+"bewerken via Bestand > Importeren > MIDI."
#. i18n-hint: %s will be the filename
-#: import/Import.cpp:167
+#: import/Import.cpp:257
#, c-format
-msgid "\"%s\" is an audio CD track. \n"
+msgid ""
+"\"%s\" is an audio CD track. \n"
"Audacity cannot open audio CDs directly. \n"
"Extract (rip) the CD tracks to an audio format that \n"
"Audacity can import, such as WAV or AIFF."
-msgstr "â%sâ is een audio-cd bestand.\n"
+msgstr ""
+"â%sâ is een audio-cd bestand.\n"
"Audacity kan audio-cd's niet rechtstreeks openen.\n"
"U moet nummers op de cd rippen naar een audioformaat\n"
"dat Audacity kan importeren zoals wav or aiff."
-#: import/Import.cpp:173
+#: import/Import.cpp:263
#, c-format
-msgid "\"%s\" is a playlist file. \n"
+msgid ""
+"\"%s\" is a playlist file. \n"
"Audacity cannot open this file because it only contains links to other files. \n"
"You may be able to open it in a text editor and download the actual audio files."
-msgstr "â%sâ is een afspeellijst-bestand.\n"
+msgstr ""
+"â%sâ is een afspeellijst-bestand.\n"
"Audacity kan dit soort bestanden niet openen omdat het enkel verwijzigen naar\n"
"andere bestanden bevat. Misschien kunt u het openen in een teksteditor en \n"
"zelf de eigenlijke audiobestanden downloaden."
-#: import/Import.cpp:178
+#: import/Import.cpp:268
#, c-format
-msgid "\"%s\" is a Windows Media Audio file. \n"
+msgid ""
+"\"%s\" is a Windows Media Audio file. \n"
"Audacity cannot open this type of file due to patent restrictions. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr "â%sâ is een Windows Media audio-bestand.\n"
+msgstr ""
+"â%sâ is een Windows Media audio-bestand.\n"
"Audacity kan dit type bestand niet openen vanwege octrooirechten.\n"
"U moet het omzetten naar een ondersteund audioformaat zoals wav or aiff."
-#: import/Import.cpp:183
+#: import/Import.cpp:273
#, c-format
-msgid "\"%s\" is an Advanced Audio Coding file. \n"
+msgid ""
+"\"%s\" is an Advanced Audio Coding file. \n"
"Audacity cannot open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr "â%sâ is een Advanced Audio Coding bestand. \n"
+msgstr ""
+"â%sâ is een Advanced Audio Coding bestand. \n"
"Audacity kan dit soort bestanden niet openen. \n"
"U moet het omzetten naar een ondersteund audioformaat zoals wav of aiff."
-#: import/Import.cpp:271
+#: import/Import.cpp:278
#, c-format
-#, fuzzy
-msgid "\"%s\" is an encrypted audio file. \n"
+msgid ""
+"\"%s\" is an encrypted audio file. \n"
"These typically are from an online music store. \n"
"Audacity cannot open this type of file due to the encryption. \n"
"Try recording the file into Audacity, or burn it to audio CD then \n"
"extract the CD track to a supported audio format such as WAV or AIFF."
-msgstr "â%sâ is een versleuteld audio-bestand.\n"
-"Deze gewoonlijk afkomstig van een on-line muziekwinkel. \n"
+msgstr ""
+"\"%s\" is een versleuteld audio-bestand.\n"
+"Deze zijn gewoonlijk afkomstig van een online muziekwinkel. \n"
"Audacity kan dit type bestanden niet openen vanwege de versleuteling.\n"
"U kunt proberen een opname van het bestand te maken met Audacity, of \n"
"het naar een cd te branden en de cd vervolgens te rippen naar een\n"
-"ondersteund bestandsformaat zoals wav of aiff."
+"ondersteund bestandsformaat zoals WAV of AIFF."
-#: import/Import.cpp:193
+#: import/Import.cpp:283
#, c-format
-msgid "\"%s\" is a RealPlayer media file. \n"
+msgid ""
+"\"%s\" is a RealPlayer media file. \n"
"Audacity cannot open this proprietary format. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr "â%sâ is een RealPlayer media-bestand.\n"
+msgstr ""
+"â%sâ is een RealPlayer media-bestand.\n"
"Audacity kan dit bedrijfseigen formaat niet openen.\n"
"U moet het omzetten naar een ondersteund audioformaat zoals wav or aiff."
-#: import/Import.cpp:206
+#: import/Import.cpp:289
#, c-format
-msgid "\"%s\" is a notes-based file, not an audio file. \n"
+msgid ""
+"\"%s\" is a notes-based file, not an audio file. \n"
"Audacity cannot open this type of file. \n"
"Try converting it to an audio file such as WAV or AIFF and \n"
"then import it, or record it into Audacity."
msgstr ""
+"\"%s\" is een op noten gebaseerd bestand, geen geluidsbestand. \n"
+"Audacity kan dit type bestand niet openen. \n"
+"probeer het om te zetten in een geluidsbestand zoals WAV of AIFF en \n"
+"importeer het dan, of neem het op in Audacity."
-#: import/Import.cpp:212
+#: import/Import.cpp:295
#, c-format
-msgid "\"%s\" is a Musepack audio file. \n"
+msgid ""
+"\"%s\" is a Musepack audio file. \n"
"Audacity cannot open this type of file. \n"
"If you think it might be an mp3 file, rename it to end with \".mp3\" \n"
"and try importing it again. Otherwise you need to convert it to a supported audio \n"
"format, such as WAV or AIFF."
msgstr ""
+"\"%s\" is een Musepack geluidsbestand. \n"
+"Audacity kan dit type bestand niet openen. \n"
+"Als u denkt dat het een MP3-bestand is, herbenoem het met de uitgang \".mp3\" \n"
+"en probeer het opnieuw te importeren. Anders moet u het omzetten in een ondersteund audioformaat\n"
+"zoals WAV of AIFF."
-#: import/Import.cpp:218
+#: import/Import.cpp:301
#, c-format
-msgid "\"%s\" is a Wavpack audio file. \n"
+msgid ""
+"\"%s\" is a Wavpack audio file. \n"
"Audacity cannot open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
msgstr ""
+"\"%s\" is een Wavpack geluidsbestand. \n"
+"Audacity kan dit type bestand niet openen. \n"
+"U dient het om te zetten in een ondersteund audioformaat zoals WAV of AIFF."
-#: import/Import.cpp:224
+#: import/Import.cpp:307
#, c-format
-msgid "\"%s\" is a Dolby Digital audio file. \n"
+msgid ""
+"\"%s\" is a Dolby Digital audio file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
msgstr ""
+"\"%s\" is een Dolby Digital geluidsbestand. \n"
+"Audacity kan dit type bestand momenteel niet openen. \n"
+"U dient het om te zetten in een ondersteund audioformaat zoals WAV of AIFF."
-#: import/Import.cpp:230
+#: import/Import.cpp:313
#, c-format
-msgid "\"%s\" is an Ogg Speex audio file. \n"
+msgid ""
+"\"%s\" is an Ogg Speex audio file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
msgstr ""
+"\"%s\" is een Ogg Speex geluidsbestand. \n"
+"Audacity kan dit type bestand momenteel niet openen. \n"
+"U dient het om te zetten in een ondersteund audioformaat zoals WAV of AIFF."
-#: import/Import.cpp:312
+#: import/Import.cpp:319
#, c-format
-msgid "\"%s\" is a video file. \n"
+msgid ""
+"\"%s\" is a video file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to extract the audio to a supported format, such as WAV or AIFF."
msgstr ""
+"\"%s\" is een videobestand. \n"
+"Audacity kan dit soort bestanden op dit moment niet openen. \n"
+"U moet de audio extracten naar een ondersteund formaat zoals WAV of AIFF."
-#: import/Import.cpp:317
+#: import/Import.cpp:324
#, c-format
-msgid "Audacity did not recognize the type of the file '%s'.\n"
+msgid ""
+"Audacity did not recognize the type of the file '%s'.\n"
"If it is uncompressed, try importing it using \"Import Raw\"."
msgstr ""
+"Audacity herkende het type bestand van '%s' niet.\n"
+"Als het geen compressie-bestand is, probeer het dan te importeren met \"Raw importeren\"."
-#: import/Import.cpp:322
+#: import/Import.cpp:329
#, c-format
-msgid "Audacity recognized the type of the file '%s',\n"
+msgid ""
+"Audacity recognized the type of the file '%s',\n"
"but was unable to import it."
msgstr ""
+"Audacity herkende het bestandstype van bestand '%s'\n"
+"maar kon het niet importeren."
#: import/ImportFFmpeg.cpp:34
msgid "FFmpeg-compatible files"
-msgstr ""
+msgstr "FFmpeg-compatibele bestanden"
-#: import/ImportFFmpeg.cpp:431
+#: import/ImportFFmpeg.cpp:438
#, c-format
msgid "Index[%02x] Codec[%S], Language[%S], Bitrate[%S], Channels[%d], Duration[%d]"
-msgstr ""
+msgstr "Index[%02x] Codec[%S], Taal[%S], Bitfrequentie[%S], Kanalen[%d], Duur[%d]"
-#: import/ImportFLAC.cpp:35
+#: import/ImportFLAC.cpp:45
msgid "FLAC files"
msgstr "Flac-bestanden"
-#: ../src/import/ImportLOF.cpp:151 ../src/import/ImportLOF.cpp:177
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr "GStreamer-compatibele bestanden"
+
+#: import/ImportLOF.cpp:95
msgid "List of Files in basic text format"
msgstr "Bestandenlijst in gewone tekst"
#. i18n-hint: You do not need to translate "LOF"
-#: ../src/import/ImportLOF.cpp:268
+#: import/ImportLOF.cpp:314
msgid "Invalid window offset in LOF file."
msgstr "Ongeldige verschuiving van venster in LOF-bestand."
#. i18n-hint: You do not need to translate "LOF"
-#: ../src/import/ImportLOF.cpp:270 ../src/import/ImportLOF.cpp:291
-#: ../src/import/ImportLOF.cpp:364 ../src/import/ImportLOF.cpp:384
+#: import/ImportLOF.cpp:316
+#: import/ImportLOF.cpp:337
+#: import/ImportLOF.cpp:418
+#: import/ImportLOF.cpp:439
msgid "LOF Error"
msgstr "LOF-fout"
#. i18n-hint: You do not need to translate "LOF"
-#: ../src/import/ImportLOF.cpp:289
+#: import/ImportLOF.cpp:335
msgid "Invalid duration in LOF file."
msgstr "Ongeldige lengte in LOF-bestand."
-#: import/ImportLOF.cpp:407
+#: import/ImportLOF.cpp:417
msgid "MIDI tracks cannot be offset individually, only audio files can be."
msgstr "MIDI-sporen kunnen niet afzonderlijk worden verschoven. Dat kan alleen bij audiosporen."
#. i18n-hint: You do not need to translate "LOF"
-#: ../src/import/ImportLOF.cpp:383
+#: import/ImportLOF.cpp:438
msgid "Invalid track offset in LOF file."
msgstr "Ongeldige verschuiving van spoor in LOF-bestand."
#: import/ImportMIDI.cpp:31
msgid ": Filename too short."
-msgstr ""
+msgstr ": Bestandsnaam te kort."
-#: import/ImportMIDI.cpp:31 import/ImportMIDI.cpp:39 import/ImportMIDI.cpp:45
+#: import/ImportMIDI.cpp:31
+#: import/ImportMIDI.cpp:39
+#: import/ImportMIDI.cpp:45
#: import/ImportMIDI.cpp:53
msgid "Could not open file "
-msgstr ""
+msgstr "Kon bestand niet openen"
#: import/ImportMIDI.cpp:39
msgid ": Incorrect filetype."
-msgstr ""
+msgstr ": Onjuist bestandstype."
-#: import/ImportOGG.cpp:35
+#: import/ImportOGG.cpp:44
msgid "Ogg Vorbis files"
msgstr "Ogg Vorbis-bestanden"
-#: ../src/import/ImportOGG.cpp:124
+#: import/ImportOGG.cpp:184
msgid "Media read error"
msgstr "Media leesfout"
-#: ../src/import/ImportOGG.cpp:127
+#: import/ImportOGG.cpp:187
msgid "Not an Ogg Vorbis file"
msgstr "Geen Ogg Vorbis-bestand"
-#: ../src/import/ImportOGG.cpp:130
+#: import/ImportOGG.cpp:190
msgid "Vorbis version mismatch"
msgstr "Vorbis versie-ongelijkheid"
-#: ../src/import/ImportOGG.cpp:133
+#: import/ImportOGG.cpp:193
msgid "Invalid Vorbis bitstream header"
msgstr "Ongeldige Vorbis bitstream header"
-#: ../src/import/ImportOGG.cpp:136
+#: import/ImportOGG.cpp:196
msgid "Internal logic fault"
msgstr "Interne logische fout"
-#: export/Export.cpp:242
+#: import/ImportPCM.cpp:66
msgid "WAV, AIFF, and other uncompressed types"
msgstr "Wav, Aiff, en andere types zonder compressie"
-#: import/ImportPlugin.h:142 import/ImportRaw.cpp:203
+#: import/ImportPlugin.h:135
+#: import/ImportRaw.cpp:210
#, c-format
msgid "Importing %s"
-msgstr ""
+msgstr "Importeren van %s"
-#: import/ImportQT.cpp:21
+#: import/ImportQT.cpp:18
msgid "QuickTime files"
msgstr "QuickTime-bestanden"
-#: import/ImportRaw.cpp:205
+#: import/ImportRaw.cpp:212
msgid "Import Raw"
-msgstr ""
+msgstr "Raw data importeren"
-#: ../src/import/ImportRaw.cpp:256
+#: import/ImportRaw.cpp:292
msgid "Import Raw Data"
msgstr "Raw data importeren"
#. i18n-hint: Refers to byte-order. Don't translate "endianness" if you don't
#. know the correct technical word.
-#: ../src/import/ImportRaw.cpp:299
+#: import/ImportRaw.cpp:337
msgid "No endianness"
msgstr "Geen endianness"
#. i18n-hint: Refers to byte-order. Don't translate this if you don't
#. know the correct technical word.
-#: ../src/import/ImportRaw.cpp:302
+#: import/ImportRaw.cpp:340
msgid "Little-endian"
msgstr "Normale byte-volgorde"
#. i18n-hint: Refers to byte-order. Don't translate this if you don't
#. know the correct technical word.
-#: ../src/import/ImportRaw.cpp:305
+#: import/ImportRaw.cpp:343
msgid "Big-endian"
msgstr "Byte-volgorde andersom"
#. i18n-hint: Refers to byte-order. Don't translate "endianness" if you don't
#. know the correct technical word.
-#: ../src/import/ImportRaw.cpp:308
+#: import/ImportRaw.cpp:346
msgid "Default endianness"
msgstr "Standaard byte-volgorde"
-#: ../src/import/ImportRaw.cpp:332
+#: import/ImportRaw.cpp:365
msgid "1 Channel (Mono)"
msgstr "1 kanaal (Mono)"
-#: ../src/import/ImportRaw.cpp:333
+#: import/ImportRaw.cpp:366
msgid "2 Channels (Stereo)"
msgstr "2 kanalen (Stereo)"
-#: ../src/import/ImportRaw.cpp:335
+#: import/ImportRaw.cpp:368
#, c-format
msgid "%d Channels"
msgstr "%d kanalen"
-#: import/ImportRaw.cpp:369
+#: import/ImportRaw.cpp:379
msgid "Byte order:"
-msgstr ""
+msgstr "Byte-volgorde:"
-#: import/ImportRaw.cpp:372
+#: import/ImportRaw.cpp:382
msgid "Channels:"
-msgstr ""
+msgstr "Kanalen:"
-#: ../src/import/ImportRaw.cpp:348
+#: import/ImportRaw.cpp:392
msgid "Start offset:"
msgstr "Beginverschuiving:"
-#: ../src/import/ImportRaw.cpp:359
+#: import/ImportRaw.cpp:398
msgid "Amount to import:"
msgstr "Hoeveelheid te importeren:"
-#: ../src/import/ImportRaw.cpp:370
+#: import/ImportRaw.cpp:404
msgid "Sample rate:"
msgstr "Samplefrequentie:"
#: ondemand/ODComputeSummaryTask.h:47
msgid "Import complete. Calculating waveform"
-msgstr ""
+msgstr "Importeren voltooid. Golfvorm berekenen"
#: ondemand/ODDecodeTask.h:61
msgid "Decoding Waveform"
-msgstr ""
+msgstr "Golfvorm decoderen"
#: ondemand/ODWaveTrackTaskQueue.cpp:327
#, c-format
msgid "%s %2.0f%% complete. Click to change task focal point."
-msgstr ""
+msgstr "%s %2.0f%% voltooid. Klik om de focus van de taak te veranderen."
-#: ../src/prefs/PrefsDialog.cpp:84
-msgid "Audio I/O"
-msgstr "Audio in/uit"
+# opdrachtenreeks/serie/opdrachtenreeksen/series
+#: prefs/BatchPrefs.cpp:53
+msgid "Batch"
+msgstr "Opdrachtenreeksen"
-#: ../src/prefs/AudioIOPrefs.cpp:212
-msgid "1 (Mono)"
-msgstr "1 (Mono)"
+# Engels BUG: Moet enkelvoud zijn
+#: prefs/BatchPrefs.cpp:75
+#: prefs/GUIPrefs.cpp:134
+#: prefs/TracksPrefs.cpp:99
+msgid "Behaviors"
+msgstr "Gedrag"
-#: ../src/prefs/AudioIOPrefs.cpp:213
-msgid "2 (Stereo)"
-msgstr "2 (Stereo)"
+#: prefs/BatchPrefs.cpp:78
+msgid "&Don't apply effects in batch mode"
+msgstr "&Effecten niet toepassen in batch-modus"
-# Dit is de titel van een label in het voorkeursvenster
-#: ../src/prefs/AudioIOPrefs.cpp:80
-msgid "Playback"
-msgstr "Afspelen"
+#: prefs/BatchPrefs.cpp:81
+#: prefs/GUIPrefs.cpp:147
+msgid "Cl&eanSpeech Mode (Customized GUI)"
+msgstr "Cl&eanSpeech modus (aangepaste bediening)"
-# dit wordt: Audacity %s-werkbalk. maar is ook te zien
+# dit wordt: Audacity %s-werkbalk. maar is ook te zien
# bij de voorkeuren
-#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
-#: toolbars/DeviceToolBar.cpp:54
-msgid "Device"
-msgstr "apparaten"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
+msgstr "Apparaten"
+
+#: prefs/DevicePrefs.cpp:107
+#: prefs/GUIPrefs.cpp:32
+#: prefs/MidiIOPrefs.cpp:113
+msgid "Interface"
+msgstr "Interface"
+
+# letterlijk vertalen: "host" in plaats van "gastheer"
+#: prefs/DevicePrefs.cpp:112
+#: prefs/MidiIOPrefs.cpp:118
+msgid "Host"
+msgstr "Host"
# gebruik makend van:/gebruikend:/gebruik:
# met gebruik van: portaudio v19
-#: prefs/AudioIOPrefs.cpp:122
+#: prefs/DevicePrefs.cpp:119
+#: prefs/MidiIOPrefs.cpp:125
msgid "Using:"
msgstr "met:"
-#: prefs/AudioIOPrefs.cpp:123
-msgid "Portaudio v"
-msgstr "Portaudio v"
+# Dit is de titel van een label in het voorkeursvenster
+#: prefs/DevicePrefs.cpp:126
+#: prefs/MidiIOPrefs.cpp:132
+#: prefs/PlaybackPrefs.cpp:31
+msgid "Playback"
+msgstr "Afspelen"
# Dit is de titel van een label in het voorkeursvenster
-#: ../src/prefs/AudioIOPrefs.cpp:148
+#: prefs/DevicePrefs.cpp:139
+#: prefs/MidiIOPrefs.cpp:145
+#: prefs/RecordingPrefs.cpp:34
msgid "Recording"
msgstr "Opnemen"
-#: prefs/AudioIOPrefs.cpp:139
+#: prefs/DevicePrefs.cpp:149
msgid "Channels"
msgstr "kanalen"
-#: prefs/AudioIOPrefs.cpp:145
-msgid "Playthrough"
-msgstr "Playthrough"
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr "&Hardwarematig playthrough: Nieuw spoor afspelen tijdens opname"
+#: prefs/DevicePrefs.cpp:165
+msgid "No audio interfaces"
+msgstr "Geen audio-interfaces"
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr "&Softwarematig playthrough: Nieuw spoor afspelen tijdens opname"
+#: prefs/DevicePrefs.cpp:201
+#: prefs/DevicePrefs.cpp:206
+#: prefs/MidiIOPrefs.cpp:295
+#: prefs/MidiIOPrefs.cpp:300
+msgid "No devices found"
+msgstr "Geen apparaten gevonden"
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-# luistervoorbeeld/luisterproeve
-#: prefs/AudioIOPrefs.cpp:194
-msgid "Effects Preview"
-msgstr "Luistervoorbeeld bij effecten"
-
-#: prefs/AudioIOPrefs.cpp:165
-msgid "Length of preview:"
-msgstr "Tijdsduur van luistervoorbeeld"
-
-# Dit is de titel van het kader.
-# snede/snijpunt/snijlijn luistervoorbeeld/luisterproeve/hoorproeve
-#: prefs/AudioIOPrefs.cpp:158
-msgid "Cut Preview"
-msgstr "Luistervoorbeeld bij knippen"
-
-#: prefs/AudioIOPrefs.cpp:173
-msgid "Preview before cut region:"
-msgstr "Tijdsduur voor snijpunt:"
-
-#: prefs/AudioIOPrefs.cpp:175
-msgid "Preview after cut region:"
-msgstr "Tijdsduur na snijpunt:"
-
-# vertraging/latentie/geluidsvertraging/tijdsvertraging.
-# (de waardes worden in milliseconden gegeven)
-#: prefs/AudioIOPrefs.cpp:168
-msgid "Latency"
-msgstr "Tijdsvertraging (Latency)"
-
-#: prefs/AudioIOPrefs.cpp:189
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
-msgstr "Audio bufferen:\n"
-"(hoger = meer vertraging)"
-
-#: prefs/AudioIOPrefs.cpp:192
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr "Vertragingscorrectie:\n"
-"(negatief = achterwaarts)"
-
-# dit is de titel van het kader
-# letterlijk zoektijd, maar het gaat om het springen door het audiobestand
-# in grote of kleine stappen.
-#: prefs/AudioIOPrefs.cpp:197
-msgid "Seek Time when playing"
-msgstr "Zoektijdssprong bij afspelen"
-
-# kopje='snel vooruit/achteruit spoelen' ->
-# Short period: 1 sec, long period 15 sec.
-# tijd/tijdsduur/duur/stapjes
-#: prefs/AudioIOPrefs.cpp:187
-msgid "Short period:"
-msgstr "Kleine stappen:"
-
-#: prefs/AudioIOPrefs.cpp:189
-msgid "Long period:"
-msgstr "Grote stappen:"
-
-# opdrachtenreeks/serie/opdrachtenreeksen/series
-#: prefs/BatchPrefs.cpp:53 prefs/BatchPrefs.cpp:54
-msgid "Batch"
-msgstr "Opdrachtenreeksen"
-
-# Engels BUG: Moet enkelvoud zijn
-#: prefs/BatchPrefs.cpp:75 prefs/GUIPrefs.cpp:70
-msgid "Behaviors"
-msgstr "Gedrag"
-
-#: prefs/BatchPrefs.cpp:80
-msgid "&Don't apply effects in batch mode"
-msgstr "&Effecten niet toepassen in batch-modus"
+#: prefs/DevicePrefs.cpp:264
+msgid "1 (Mono)"
+msgstr "1 (Mono)"
-#: prefs/BatchPrefs.cpp:83
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr "Cl&eanSpeech modus (aangepaste bediening)"
+#: prefs/DevicePrefs.cpp:267
+msgid "2 (Stereo)"
+msgstr "2 (Stereo)"
-#: ../src/prefs/PrefsDialog.cpp:88 ../src/prefs/PrefsDialog.cpp:216
+#: prefs/DirectoriesPrefs.cpp:52
+#: prefs/PrefsDialog.cpp:210
msgid "Directories"
msgstr "Mappen"
-#: prefs/DirectoriesPrefs.cpp:87
+#: prefs/DirectoriesPrefs.cpp:82
msgid "Temporary files directory"
msgstr "Map voor tijdelijke bestanden"
-#: ../src/prefs/DirectoriesPrefs.cpp:57
+#: prefs/DirectoriesPrefs.cpp:89
msgid "Location:"
msgstr "Locatie:"
-#: ../src/prefs/DirectoriesPrefs.cpp:78
+#: prefs/DirectoriesPrefs.cpp:96
msgid "Free Space:"
msgstr "Vrije ruimte:"
-# titel van het kader
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr "Automatische opslag"
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr "Automatisch een kopie van het project opslaan in een afzonderlijke map"
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
-msgstr ""
-
-#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
-msgstr "minuten"
-
# geluidsbuffer/audio-buffer/audio bufferen
# dit is een kopje bij de voorkeuren
-#: prefs/DirectoriesPrefs.cpp:110
+#: prefs/DirectoriesPrefs.cpp:103
msgid "Audio cache"
msgstr "Audio-buffer"
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "Play and/or record using RAM (useful for slow drives)"
+msgstr "RAM gebruiken bij afspelen en/of opnemen (geschikt voor langzame spelers)"
+
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
+msgstr "Minimaal vrij geheugen (MB):"
+
+#: prefs/DirectoriesPrefs.cpp:118
+msgid ""
+"If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
+"Indien het beschikbare systeemgeheugen onder deze waarde komt, zal audio niet langer\n"
+"in het geheugen bewaard worden maar naar de schijf geschreven worden."
-#: ../src/prefs/DirectoriesPrefs.cpp:135
+#: prefs/DirectoriesPrefs.cpp:126
msgid "Choose a location to place the temporary directory"
msgstr "Kies een map voor tijdelijke bestanden"
-#: ../src/prefs/DirectoriesPrefs.cpp:181
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr "niet beschikbaar - bovenstaande locatie bestaat niet"
+
+#: prefs/DirectoriesPrefs.cpp:173
#, c-format
msgid "Directory %s does not exist. Create it?"
msgstr "De map %s bestaat niet. Aanmaken?"
-#: ../src/prefs/DirectoriesPrefs.cpp:183
+#: prefs/DirectoriesPrefs.cpp:175
msgid "New Temporary Directory"
msgstr "Nieuwe tijdelijke map"
-#: ../src/prefs/DirectoriesPrefs.cpp:202
+#: prefs/DirectoriesPrefs.cpp:193
#, c-format
msgid "Directory %s is not writable"
msgstr "De map %s is niet beschrijfbaar"
-#: ../src/prefs/DirectoriesPrefs.cpp:214
+#: prefs/DirectoriesPrefs.cpp:207
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "Wijziging van de tijdelijke map zal pas van kracht zijn nadat Audacity herstart is."
-#: prefs/FileFormatPrefs.cpp:48 prefs/FileFormatPrefs.cpp:49
-msgid "Import / Export"
-msgstr "Importeren / Exporteren"
-
-#: prefs/FileFormatPrefs.cpp:77
-msgid "MP3 Export Library"
-msgstr "Mp3 export-bibliotheek"
-
-#: ../src/prefs/FileFormatPrefs.cpp:180
-msgid "MP3 Library Version:"
-msgstr "Mp3-bibliotheekversie:"
-
-#: prefs/FileFormatPrefs.cpp:86
-msgid "MP3 Library:"
-msgstr "Mp3-bibliotheek:"
-
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:91
-msgid "LAME MP3 Library:"
-msgstr "LAME mp3-bibliotheek:"
-
-#: prefs/FileFormatPrefs.cpp:94
-msgid "&Download"
-msgstr "&Downloaden"
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:136
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:100
-msgid "When importing audio files"
-msgstr "Bij importeren van audiobestanden"
-
-#: prefs/FileFormatPrefs.cpp:103
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:104
-msgid "&Read uncompressed audio files directly from the original (faster)"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "&Normalize all tracks in project"
-msgstr "Alle sporen in het project &normaliseren"
+#: prefs/GUIPrefs.cpp:51
+msgid "In Browser"
+msgstr "In browser"
-#: prefs/FileFormatPrefs.cpp:132
-msgid "When saving a project that depends on other audio files"
-msgstr "Bij het opslaan van een project dat van andere audiobestanden afhangt"
+#: prefs/GUIPrefs.cpp:52
+msgid "From Internet"
+msgstr "Van het internet"
-#: prefs/FileFormatPrefs.cpp:87
-msgid "Always © all audio into project (safest)"
-msgstr "Altijd alle audio &kopiëren naar het project (veiligst)"
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
+msgstr "36"
-#: prefs/FileFormatPrefs.cpp:88
-msgid "&Do not copy any audio"
-msgstr "Gee&n audio kopiëren"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
+msgstr "48"
-#: prefs/FileFormatPrefs.cpp:135
-msgid "&Ask user"
-msgstr "&Gebruiker vragen"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
+msgstr "60"
-#: prefs/FileFormatPrefs.cpp:93
-msgid "When exporting tracks to an audio file"
-msgstr "Bij het exporteren tot een audiobestand"
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
+msgstr "96"
-#: prefs/FileFormatPrefs.cpp:144
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
-msgstr "Altijd alle sporen &downmixen naar stereo of monokanalen."
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
+msgstr "120"
-#: prefs/FileFormatPrefs.cpp:97
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
-msgstr "&Aangepaste mix (voor bijv. export naar 5.1 kanaals geluid)"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
+msgstr "145"
-#: prefs/BatchPrefs.cpp:91
-msgid "S&how Metadata Editor prior to export step"
-msgstr ""
+# ondiep/klein/oppervlakkig
+#: prefs/GUIPrefs.cpp:61
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 dB (een oppervlakkig bereik voor hoog-amplitude bewerkingen)"
-#: ../src/prefs/PrefsDialog.cpp:89
-msgid "Interface"
-msgstr "Bediening"
+#: prefs/GUIPrefs.cpp:62
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 dB (het PCM-bereik bij 8-bit samples)"
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
-msgstr "In browser"
+#: prefs/GUIPrefs.cpp:63
+msgid "-60 dB (PCM range of 10 bit samples)"
+msgstr "-60 dB (het PCM-bereik bij 10-bit samples)"
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
-msgstr "Van het interent"
+#: prefs/GUIPrefs.cpp:64
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 dB (het PCM-bereik bij 16-bit samples)"
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
-msgstr "Eenvoudig"
+#: prefs/GUIPrefs.cpp:65
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 dB (de grens van het menselijk hoorvermogen)"
-#: prefs/GUIPrefs.cpp:72
-msgid "&Update display while playing"
-msgstr "&Meeschuiven tijdens afspelen"
+#: prefs/GUIPrefs.cpp:66
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB (het PCM-bereik bij 24-bit samples)"
+# scherm/weergeven/tonen/monitor/weergave
+# het is hier de weergavevoorkeuren van het spectrum
#: prefs/GUIPrefs.cpp:96
-#, fuzzy
-msgid "Cl&osing last window quits Audacity"
-msgstr "Sluiten van het laatste venster sluit Audacity af"
-
-#: prefs/GUIPrefs.cpp:76
-msgid "Enable &dragging of left and right selection edges"
-msgstr "&Selectieranden mogen worden versleept"
+#: prefs/SpectrumPrefs.cpp:129
+#: prefs/TracksPrefs.cpp:75
+msgid "Display"
+msgstr "Weergave"
-#: prefs/GUIPrefs.cpp:100
+# het gaat niet specifiek om de i/o knoppen, maar ook de bedieningsknoppen
+# zoals 'naar het begin/einde'
+#: prefs/GUIPrefs.cpp:98
msgid "Er&gonomic order of audio I/O buttons"
-msgstr ""
+msgstr "Er&gonomische volgorde van de bedieningsknoppen"
-#: prefs/GUIPrefs.cpp:80
-msgid "Automatically &fit tracks vertically zoomed"
-msgstr "Automatisch &zoomen tot sporen verticaal in venster passen"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
+msgstr "&Welkomstbericht tonen bij opstarten van programma"
-#: prefs/GUIPrefs.cpp:104
-#, fuzzy
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
-msgstr "Focus verplaatst zich &circulair door de sporen"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
+msgstr "Meter/golfvorm dB-gebied:"
-# verplaatsen/verschuiven/doen verschuiven
-#: prefs/GUIPrefs.cpp:90
-msgid "Editing a &clip can move other clips"
-msgstr "Het bewerken van een &clip kan andere clips verschuiven"
+#: prefs/GUIPrefs.cpp:123
+msgid "Help:"
+msgstr "Help:"
-#: prefs/GUIPrefs.cpp:88
-msgid "&Select all audio in project, if none selected"
-msgstr "Bij geen &selectie, alle audio in een project selecteren"
+#: prefs/GUIPrefs.cpp:136
+msgid "Cl&osing last window quits Audacity"
+msgstr "Sluiten van het laatste venster zal Audacity afsluiten"
-#: prefs/GUIPrefs.cpp:90
+#: prefs/GUIPrefs.cpp:139
msgid "&Beep on completion of longer activities"
-msgstr "\"&Piepje geven bij voltooien van opdrachten die lang duren"
-
-#: prefs/BatchPrefs.cpp:87 prefs/GUIPrefs.cpp:94
-msgid "Show / Hide"
-msgstr "Tonen / Verbergen"
-
-#: prefs/GUIPrefs.cpp:96
-msgid "Enable cut &lines"
-msgstr "S&nijlijnen inschakelen"
-
-#: prefs/GUIPrefs.cpp:98
-msgid "Show warnings about &temp files"
-msgstr "&Waarschuwen voor tijdelijke bestanden"
-
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:122
-#, fuzzy
-msgid "Show &Welcome Message at program start up"
-msgstr "Welkomstbericht tonen bij opstarten"
+msgstr "&Piepje geven bij voltooien van opdrachten die lang duren"
# er is maar 1 optie hier: cleanspeech modus
-#: prefs/GUIPrefs.cpp:126
+#: prefs/GUIPrefs.cpp:145
msgid "Modes"
msgstr "Weergavemodus"
-#: prefs/GUIPrefs.cpp:129
-msgid "Don't a&pply effects in batch mode"
-msgstr ""
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
+msgstr "VST-effecten weergeven in GUI-modus"
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
-msgstr "Ondergrens weergave bij Vu-meters en âGolfvorm (dB)â"
+#: prefs/GUIPrefs.cpp:156
+msgid "Don't a&pply effects in batch mode"
+msgstr "&Effecten niet toepassen in batch-modus"
-# ondiep/klein/oppervlakkig
-#: ../src/prefs/GUIPrefs.cpp:150
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 dB (een oppervlakkig bereik voor hoog-amplitude bewerkingen)"
+#: prefs/ImportExportPrefs.cpp:28
+msgid "Import / Export"
+msgstr "Importeren / Exporteren"
-#: ../src/prefs/GUIPrefs.cpp:157
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 dB (het PCM-bereik bij 8-bit samples)"
+#: prefs/ImportExportPrefs.cpp:53
+msgid "When importing audio files"
+msgstr "Bij importeren van audiobestanden"
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
-msgstr "-60 dB (het PCM-bereik bij 10-bit samples)"
+#: prefs/ImportExportPrefs.cpp:57
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
+msgstr "&Maak een kopie van ongecomprimeerde geluidsbestanden alvorens ze te bewerken (veiliger)"
-#: ../src/prefs/GUIPrefs.cpp:164
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 dB (het PCM-bereik bij 16-bit samples)"
+#: prefs/ImportExportPrefs.cpp:59
+msgid "&Read uncompressed audio files directly from the original (faster)"
+msgstr "&Lees ongecomprimeerde geluidsbestanden direct van het origineel (sneller)"
-#: ../src/prefs/GUIPrefs.cpp:171
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 dB (de grens van het menselijk hoorvermogen)"
+#: prefs/ImportExportPrefs.cpp:64
+msgid "&Normalize all tracks in project"
+msgstr "Alle sporen in het project &normaliseren"
-#: ../src/prefs/GUIPrefs.cpp:178
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB (het PCM-bereik bij 24-bit samples)"
+#: prefs/ImportExportPrefs.cpp:70
+msgid "When exporting tracks to an audio file"
+msgstr "Bij het exporteren tot een audiobestand"
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
-msgstr "Standaard weergavemodus"
+#: prefs/ImportExportPrefs.cpp:74
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+msgstr "Altijd alle sporen &downmixen naar stereo of monokanalen."
-#: prefs/GUIPrefs.cpp:166
-msgid "Other interface choices"
-msgstr "Andere interface opties"
+#: prefs/ImportExportPrefs.cpp:76
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+msgstr "&Aangepaste mix (voor bijv. export naar 5.1 kanaals geluid)"
-#: prefs/GUIPrefs.cpp:169
-msgid "Help:"
-msgstr "Hulp:"
+#: prefs/ImportExportPrefs.cpp:81
+msgid "S&how Metadata Editor prior to export step"
+msgstr "&Toon bij exporteren eerst de Metadata-editor"
-# solo-knop weergeven of niet.
-# Solo Button: [Standaard][Eenvoudig][geen]
-#: prefs/GUIPrefs.cpp:170
-msgid "Solo Button:"
-msgstr "Solo-knop:"
+#: prefs/ImportExportPrefs.cpp:84
+msgid ""
+"Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
+msgstr ""
+"Opmerking: kwaliteitsopties voor exporteren kunnen gekozen worden door\n"
+"de Opties-knop aan te klikken in het Exporteren-venster."
-#: ../src/prefs/PrefsDialog.cpp:90
+#: prefs/KeyConfigPrefs.cpp:72
msgid "Keyboard"
msgstr "Toetsenbord"
-#: prefs/KeyConfigPrefs.cpp:86
+#: prefs/KeyConfigPrefs.cpp:96
msgid "Keyboard preferences currently unavailable."
-msgstr ""
+msgstr "Toetsenbordvoorkeuren op dit moment niet beschikbaar."
-#: prefs/KeyConfigPrefs.cpp:87
+#: prefs/KeyConfigPrefs.cpp:97
msgid "Open a new project to modify keyboard shortcuts."
-msgstr ""
+msgstr "Open een nieuw project om sneltoetsen te wijzigen."
+
+#: prefs/KeyConfigPrefs.cpp:108
+#: prefs/KeyConfigPrefs.cpp:224
+msgid "All"
+msgstr "Alles"
-#: prefs/KeyConfigPrefs.cpp:93
+#: prefs/KeyConfigPrefs.cpp:124
msgid "Key Bindings"
msgstr "Toetsbindingen"
-#: prefs/KeyConfigPrefs.cpp:113
+#: prefs/KeyConfigPrefs.cpp:129
+msgid "Category:"
+msgstr "Categorie:"
+
+#: prefs/KeyConfigPrefs.cpp:156
msgid "S&et"
msgstr "I&nstellen"
-#: ../src/prefs/KeyConfigPrefs.cpp:115
+#: prefs/KeyConfigPrefs.cpp:157
+#: widgets/FileHistory.cpp:174
+msgid "&Clear"
+msgstr "&Wissen"
+
+#: prefs/KeyConfigPrefs.cpp:162
msgid "Note: Pressing Cmd+Q will quit. All other keys are valid."
msgstr "Let op: Met Cmd+Q sluit u af. Alle andere toetsen zijn wel geldig."
-#: prefs/KeyConfigPrefs.cpp:122 prefs/ThemePrefs.cpp:102
+#: prefs/KeyConfigPrefs.cpp:169
+#: prefs/ThemePrefs.cpp:125
msgid "&Defaults"
msgstr "&Standaarden"
-#: ../src/prefs/KeyConfigPrefs.cpp:79
+#: prefs/KeyConfigPrefs.cpp:181
msgid "Key Combination"
msgstr "Toetscombinatie"
-#: ../src/prefs/KeyConfigPrefs.cpp:159
-msgid "Export Keyboard Shortcuts As:"
-msgstr "Sneltoetsen exporteren als:"
+# ongedaan maken/herstellen
+#: prefs/KeyConfigPrefs.cpp:234
+#: toolbars/EditToolBar.cpp:143
+#: toolbars/EditToolBar.cpp:195
+msgid "Undo"
+msgstr "Herstellen"
-#: ../src/prefs/KeyConfigPrefs.cpp:174
-msgid "Error saving keyboard shortcuts"
-msgstr "Fout bij opslaan sneltoetsen"
+#: prefs/KeyConfigPrefs.cpp:237
+#: toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr "Opnieuw"
# dit is de titel van het dialoogvenster
-#: ../src/prefs/KeyConfigPrefs.cpp:188
+#: prefs/KeyConfigPrefs.cpp:263
msgid "Select an XML file containing Audacity keyboard shortcuts..."
msgstr "Een XML-bestand selecteren dat de sneltoets-configuratie voor Audacity bevat."
-#: ../src/prefs/KeyConfigPrefs.cpp:206
+#: prefs/KeyConfigPrefs.cpp:281
msgid "Error loading keyboard shortcuts"
msgstr "Fout bij laden van sneltoetsen"
-#: prefs/KeyConfigPrefs.cpp:239
+#: prefs/KeyConfigPrefs.cpp:294
+msgid "Export Keyboard Shortcuts As:"
+msgstr "Sneltoetsen exporteren als:"
+
+#: prefs/KeyConfigPrefs.cpp:320
+msgid "Error saving keyboard shortcuts"
+msgstr "Fout bij opslaan sneltoetsen"
+
+#: prefs/KeyConfigPrefs.cpp:368
#, c-format
-msgid "The keyboard shortcut '%s' is already assigned to:\n"
+msgid ""
+"The keyboard shortcut '%s' is already assigned to:\n"
"\n"
"'%s'"
-msgstr "De sneltoets â%sâ is al toegekend aan:\n"
+msgstr ""
+"De sneltoets â%sâ is al toegekend aan:\n"
"\n"
"â%sâ"
-# ongedaan maken/herstellen
-#: ../src/EditToolBar.cpp:159
-msgid "Undo"
-msgstr "Herstellen"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr "Bibliotheken"
+
+#: prefs/LibraryPrefs.cpp:79
+msgid "MP3 Export Library"
+msgstr "Mp3 export-bibliotheek"
+
+#: prefs/LibraryPrefs.cpp:83
+msgid "MP3 Library Version:"
+msgstr "Mp3-bibliotheekversie:"
+
+#: prefs/LibraryPrefs.cpp:89
+msgid "MP3 Library:"
+msgstr "Mp3-bibliotheek:"
+
+#: prefs/LibraryPrefs.cpp:92
+#: prefs/LibraryPrefs.cpp:124
+msgid "&Locate..."
+msgstr "&Ladenâ¦"
+
+#: prefs/LibraryPrefs.cpp:94
+msgid "LAME MP3 Library:"
+msgstr "LAME MP3-bibliotheek:"
+
+#: prefs/LibraryPrefs.cpp:97
+#: prefs/LibraryPrefs.cpp:130
+msgid "&Download"
+msgstr "&Downloaden"
+
+#: prefs/LibraryPrefs.cpp:104
+msgid "FFmpeg Import/Export Library"
+msgstr "FFmpeg import/export-bibliotheek"
+
+#: prefs/LibraryPrefs.cpp:108
+msgid "FFmpeg Library Version:"
+msgstr "FFmpeg-bibliotheekversie:"
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr "Geen compatibele FFmpeg-bibliotheek gevonden"
+
+#: prefs/LibraryPrefs.cpp:120
+#: prefs/LibraryPrefs.cpp:126
+msgid "FFmpeg Library:"
+msgstr "FFmpeg-bibliotheek:"
+
+#: prefs/MidiIOPrefs.cpp:58
+msgid "MIDI Devices"
+msgstr "MIDI-apparaten"
+
+#: prefs/MidiIOPrefs.cpp:168
+#: prefs/RecordingPrefs.cpp:60
+msgid "Playthrough"
+msgstr "Playthrough"
# gelijktijdig/tegelijkertijd
-#: prefs/AudioIOPrefs.cpp:147
+#: prefs/MidiIOPrefs.cpp:170
msgid "&Play other tracks while recording new one"
msgstr "&Bij het opnemen van een spoor, gelijktijdig de andere sporen afspelen"
-#: prefs/MidiIOPrefs.cpp:149
+#: prefs/MidiIOPrefs.cpp:173
msgid "&Hardware Playthrough (Play new track while recording it)"
-msgstr ""
+msgstr "&Hardwarematig playthrough (nieuw spoor afspelen tijdens opname)"
-#: prefs/MidiIOPrefs.cpp:152
+#: prefs/MidiIOPrefs.cpp:176
msgid "&Software Playthrough (Play new track while recording it)"
-msgstr ""
+msgstr "&Softwarematig playthrough (nieuw spoor afspelen tijdens opname)"
+
+# Dit is de titel van het kader.
+# snede/snijpunt/snijlijn luistervoorbeeld/luisterproeve/hoorproeve
+#: prefs/MidiIOPrefs.cpp:181
+#: prefs/PlaybackPrefs.cpp:72
+msgid "Cut Preview"
+msgstr "Luistervoorbeeld bij knippen"
-#: prefs/MidiIOPrefs.cpp:160
+#: prefs/MidiIOPrefs.cpp:184
msgid "Play before cut region:"
-msgstr ""
+msgstr "Tijdsduur voor snijpunt:"
-#: prefs/MidiIOPrefs.cpp:162
+#: prefs/MidiIOPrefs.cpp:186
msgid "Play after cut region:"
-msgstr ""
+msgstr "Tijdsduur na snijpunt:"
-#: prefs/MidiIOPrefs.cpp:173
+# vertraging/latentie/geluidsvertraging/tijdsvertraging.
+# (de waardes worden in milliseconden gegeven)
+#: prefs/MidiIOPrefs.cpp:191
+#: prefs/RecordingPrefs.cpp:79
+msgid "Latency"
+msgstr "Tijdsvertraging (Latency)"
+
+#: prefs/MidiIOPrefs.cpp:196
+#: prefs/RecordingPrefs.cpp:85
msgid "Audio to buffer:"
-msgstr ""
+msgstr "Te bufferen audio:"
-#: prefs/MidiIOPrefs.cpp:176
+# Vertragingscorrectie:\n
+# (negatief = achterwaarts
+# (oude vertaling!)
+#: prefs/MidiIOPrefs.cpp:198
+#: prefs/RecordingPrefs.cpp:92
msgid "Latency correction:"
-msgstr ""
+msgstr "Vertragingscorrectie:"
-#: prefs/MidiIOPrefs.cpp:183
+# begintijd/starttijd
+#: prefs/MidiIOPrefs.cpp:205
msgid "Seek Time"
-msgstr ""
+msgstr "Zoektijd"
-#: prefs/MidiIOPrefs.cpp:196
+# kopje='snel vooruit/achteruit spoelen' ->
+# Short period: 1 sec, long period 15 sec.
+# tijd/tijdsduur/duur/stapjes
+#: prefs/MidiIOPrefs.cpp:208
+#: prefs/PlaybackPrefs.cpp:98
+msgid "Short period:"
+msgstr "Kleine stappen:"
+
+#: prefs/MidiIOPrefs.cpp:210
+#: prefs/PlaybackPrefs.cpp:105
+msgid "Long period:"
+msgstr "Grote stappen:"
+
+# luistervoorbeeld/luisterproeve
+#: prefs/MidiIOPrefs.cpp:215
+#: prefs/PlaybackPrefs.cpp:57
+msgid "Effects Preview"
+msgstr "Luistervoorbeeld bij effecten"
+
+# voorbeeld tonen/voorbeeld/voorbeeld afspelen
+#: prefs/MidiIOPrefs.cpp:218
msgid "Play when previewing:"
-msgstr ""
+msgstr "Afspelen bij preview:"
-#: ../src/prefs/PrefsDialog.cpp:91
+#: prefs/MidiIOPrefs.cpp:256
+msgid "No MIDI interfaces"
+msgstr "Geen MIDI-interfaces"
+
+#: prefs/MousePrefs.cpp:57
msgid "Mouse"
msgstr "Muis"
-#: ../src/prefs/MousePrefs.cpp:71
+#: prefs/MousePrefs.cpp:84
msgid "Mouse Bindings (default values, not configurable)"
msgstr "Muis-bindingen (standaard waarden, niet configureerbaar)"
# dit is het label bij de muisvoorkeuren
-#: ../src/prefs/MousePrefs.cpp:84
+#: prefs/MousePrefs.cpp:97
msgid "Tool"
msgstr "Functieknop"
# Wat er gebeurd als je iets met de muis doet
-#: ../src/prefs/MousePrefs.cpp:85
+#: prefs/MousePrefs.cpp:98
msgid "Command Action"
msgstr "Resultaat"
-#: ../src/prefs/MousePrefs.cpp:86
+#: prefs/MousePrefs.cpp:99
msgid "Buttons"
msgstr "Muisgebruik"
-#: ../src/prefs/MousePrefs.cpp:88 ../src/prefs/MousePrefs.cpp:92
-#: ../src/prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:121
+#: prefs/MousePrefs.cpp:126
msgid "Left-Click"
msgstr "Links-klikken"
-#: ../src/prefs/MousePrefs.cpp:88 ../src/prefs/MousePrefs.cpp:89
-#: ../src/prefs/MousePrefs.cpp:90
+#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:103
+#: prefs/MousePrefs.cpp:104
+#: prefs/MousePrefs.cpp:105
+#: prefs/MousePrefs.cpp:106
msgid "Select"
msgstr "Selecteren"
-#: ../src/prefs/MousePrefs.cpp:88
+#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:126
msgid "Set Selection Point"
msgstr "Selectiepunt plaatsen"
-#: ../src/prefs/MousePrefs.cpp:89 ../src/prefs/MousePrefs.cpp:93
-#: ../src/prefs/MousePrefs.cpp:97 ../src/prefs/MousePrefs.cpp:98
-#: ../src/prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:103
+#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:115
+#: prefs/MousePrefs.cpp:119
+#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:127
msgid "Left-Drag"
msgstr "Links-slepen"
-#: ../src/prefs/MousePrefs.cpp:89
+#: prefs/MousePrefs.cpp:103
+#: prefs/MousePrefs.cpp:127
msgid "Set Selection Range"
msgstr "Selectie maken"
-#: ../src/prefs/MousePrefs.cpp:90
+#: prefs/MousePrefs.cpp:104
msgid "Extend Selection Range"
msgstr "Selectie vergroten"
-#: ../src/prefs/MousePrefs.cpp:90
+#: prefs/MousePrefs.cpp:104
msgid "Shift-Left-Click"
msgstr "Shift-links-klikken"
-#: prefs/MousePrefs.cpp:101
+#: prefs/MousePrefs.cpp:105
msgid "Left-Double-Click"
msgstr "Links-dubbelklikken"
-#: prefs/MousePrefs.cpp:101
+#: prefs/MousePrefs.cpp:105
msgid "Select Clip or Entire Track"
msgstr "Een clip of een geheel spoor selecteren"
-#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:106
msgid "Ctrl-Left-Click"
msgstr "Ctrl-links-dubbelklikken"
-#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:106
msgid "Set Selection Point and Play"
msgstr "Selectiepunt plaatsen en afspelen"
-#: ../src/prefs/MousePrefs.cpp:92 ../src/prefs/MousePrefs.cpp:93
-#: ../src/prefs/MousePrefs.cpp:94 ../src/prefs/MousePrefs.cpp:95
+#: prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:110
+#: prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:112
+#: prefs/MousePrefs.cpp:113
msgid "Zoom"
msgstr "Zoomen"
-#: ../src/prefs/MousePrefs.cpp:92
+#: prefs/MousePrefs.cpp:108
msgid "Zoom in on Point"
msgstr "Inzoomen op punt"
# bereik, selectie
-#: ../src/prefs/MousePrefs.cpp:93
+#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:129
msgid "Zoom in on a Range"
msgstr "Inzoomen op gebied"
-#: prefs/MousePrefs.cpp:103
+#: prefs/MousePrefs.cpp:109
msgid "same as right-drag"
msgstr "hetzelfde als rechts-slepen"
-#: ../src/prefs/MousePrefs.cpp:94
+#: prefs/MousePrefs.cpp:110
+#: prefs/MousePrefs.cpp:128
msgid "Right-Click"
msgstr "Rechts-klikken"
-#: ../src/prefs/MousePrefs.cpp:94
+#: prefs/MousePrefs.cpp:110
+#: prefs/MousePrefs.cpp:128
msgid "Zoom out one step"
msgstr "Een stap uitzoomen"
-#: ../src/prefs/MousePrefs.cpp:95
+#: prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:129
msgid "Right-Drag"
msgstr "Rechts-slepen"
-#: prefs/MousePrefs.cpp:105
+#: prefs/MousePrefs.cpp:111
msgid "same as left-drag"
msgstr "hetzelfde als links-slepen"
-#: prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:112
msgid "Shift-Drag"
msgstr "Shift-slepen"
# bereik, selectie
-#: prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:112
msgid "Zoom out on a Range"
msgstr "Uitzoomen op gebied"
# midden/middel
-#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:113
msgid "Middle-Click"
msgstr "Middel-klikken"
-#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:113
msgid "Zoom default"
msgstr "Standaard zoom"
-#: prefs/MousePrefs.cpp:107
+#: prefs/MousePrefs.cpp:115
msgid "Time shift clip or move up/down between tracks"
msgstr "Clip in tijd, of naar ander spoor verplaatsen"
-#: prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:116
msgid "Shift-Left-Drag"
msgstr "Shift-links-slepen"
-#: prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:116
msgid "Time shift all clips in track"
msgstr "Alle clips van het spoor in tijd verplaatsen"
-#: ../src/prefs/MousePrefs.cpp:103
+#: prefs/MousePrefs.cpp:117
+#: prefs/MousePrefs.cpp:124
msgid "Ctrl-Left-Drag"
msgstr "Ctrl-links-slepen"
-#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:117
msgid "Move clip up/down between tracks"
msgstr "Clip naar ander spoor verplaatsen"
-#: ../src/prefs/MousePrefs.cpp:98
+#: prefs/MousePrefs.cpp:119
msgid "Change Amplification Envelope"
msgstr "Versterkingsverloop wijzigen"
-#: ../src/prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:121
msgid "Change Sample"
msgstr "Sample-waarde wijzigen"
# de naam van de knop is tekenen
-#: ../src/prefs/MousePrefs.cpp:100 ../src/prefs/MousePrefs.cpp:101
-#: ../src/prefs/MousePrefs.cpp:102 ../src/prefs/MousePrefs.cpp:103
+#: prefs/MousePrefs.cpp:121
+#: prefs/MousePrefs.cpp:122
+#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:124
msgid "Pencil"
msgstr "Tekenen"
-#: ../src/prefs/MousePrefs.cpp:101
+#: prefs/MousePrefs.cpp:122
msgid "Alt-Left-Click"
msgstr "Alt-Links-klikken"
# het gaat om de tekenfunctie
-#: ../src/prefs/MousePrefs.cpp:101
+#: prefs/MousePrefs.cpp:122
msgid "Smooth at Sample"
msgstr "Gladmaken"
-#: ../src/prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:123
msgid "Change Several Samples"
msgstr "Meerdere samples wijzigen"
-#: ../src/prefs/MousePrefs.cpp:103
+#: prefs/MousePrefs.cpp:124
msgid "Change ONE Sample only"
msgstr "Slechts één sample wijzigen"
# de naam van de functieknop is combinatiestand
-#: ../src/prefs/MousePrefs.cpp:105 ../src/prefs/MousePrefs.cpp:106
-#: ../src/prefs/MousePrefs.cpp:107 ../src/prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:126
+#: prefs/MousePrefs.cpp:127
+#: prefs/MousePrefs.cpp:128
+#: prefs/MousePrefs.cpp:129
msgid "Multi"
msgstr "Combinatiestand"
-#: prefs/MousePrefs.cpp:118 prefs/MousePrefs.cpp:119
+#: prefs/MousePrefs.cpp:126
+#: prefs/MousePrefs.cpp:127
msgid "same as select tool"
msgstr "hetzelfde als bij selecteren"
-#: prefs/MousePrefs.cpp:120 prefs/MousePrefs.cpp:121
+#: prefs/MousePrefs.cpp:128
+#: prefs/MousePrefs.cpp:129
msgid "same as zoom tool"
msgstr "hetzelfde als bij zoomen"
-#: ../src/prefs/MousePrefs.cpp:110 ../src/prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:131
+#: prefs/MousePrefs.cpp:132
+#: prefs/MousePrefs.cpp:133
msgid "Any"
msgstr "Elke"
-#: ../src/prefs/MousePrefs.cpp:110
+#: prefs/MousePrefs.cpp:131
msgid "Scroll up or down"
msgstr "Naar boven of onderen schuiven"
-#: ../src/prefs/MousePrefs.cpp:110
+#: prefs/MousePrefs.cpp:131
msgid "Wheel-Rotate"
msgstr "Wiel-draaien"
-#: prefs/MousePrefs.cpp:128
+#: prefs/MousePrefs.cpp:132
msgid "Scroll left or right"
msgstr "Naar links of rechts schuiven"
-#: prefs/MousePrefs.cpp:128
+#: prefs/MousePrefs.cpp:132
msgid "Shift-Wheel-Rotate"
msgstr "Shift-wiel-draaien"
-#: ../src/prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:133
msgid "Ctrl-Wheel-Rotate"
msgstr "Ctrl-wiel-draaien"
-#: ../src/prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:133
msgid "Zoom in or out"
msgstr "In of uitzoomen"
-#: ../src/prefs/PrefsDialog.cpp:52
+#: prefs/PlaybackPrefs.cpp:61
+msgid "Length of preview:"
+msgstr "Tijdsduur van luistervoorbeeld"
+
+#: prefs/PlaybackPrefs.cpp:76
+msgid "Preview before cut region:"
+msgstr "Tijdsduur voor snijpunt:"
+
+#: prefs/PlaybackPrefs.cpp:83
+msgid "Preview after cut region:"
+msgstr "Tijdsduur na snijpunt:"
+
+# dit is de titel van het kader
+# letterlijk zoektijd, maar het gaat om het springen door het audiobestand
+# in grote of kleine stappen.
+#: prefs/PlaybackPrefs.cpp:94
+msgid "Seek Time when playing"
+msgstr "Zoektijdssprong bij afspelen"
+
+#: prefs/PrefsDialog.cpp:72
msgid "Audacity Preferences"
msgstr "Audacity voorkeuren"
-#: ../src/prefs/QualityPrefs.cpp:161
+#: prefs/ProjectsPrefs.cpp:32
+msgid "Projects"
+msgstr "Projecten"
+
+#: prefs/ProjectsPrefs.cpp:59
+msgid "When saving a project that depends on other audio files"
+msgstr "Bij het opslaan van een project dat van andere audiobestanden afhangt"
+
+#: prefs/ProjectsPrefs.cpp:63
+msgid "Always © all audio into project (safest)"
+msgstr "Altijd alle audio &kopiëren naar het project (veiligst)"
+
+#: prefs/ProjectsPrefs.cpp:65
+msgid "&Do not copy any audio"
+msgstr "Gee&n audio kopiëren"
+
+#: prefs/ProjectsPrefs.cpp:67
+msgid "&Ask user"
+msgstr "&Gebruiker vragen"
+
+# titel van het kader
+#: prefs/ProjectsPrefs.cpp:74
+msgid "Auto save"
+msgstr "Automatische opslag"
+
+#: prefs/ProjectsPrefs.cpp:76
+msgid "Auto save a copy of the project in a separate folder"
+msgstr "Automatisch een kopie van het project opslaan in een afzonderlijke map"
+
+#: prefs/ProjectsPrefs.cpp:82
+msgid "Auto save interval:"
+msgstr "Auto-opslaan interval:"
+
+#: prefs/ProjectsPrefs.cpp:86
+#: prefs/ProjectsPrefs.cpp:87
+msgid "minutes"
+msgstr "minuten"
+
+#: prefs/QualityPrefs.cpp:75
msgid "Rectangle"
msgstr "Rechthoek"
-#: ../src/prefs/QualityPrefs.cpp:162
+#: prefs/QualityPrefs.cpp:76
msgid "Triangle"
msgstr "Driehoek"
# het gaat om de dither: geen, rechthoek, driehoek, shaped
-#: ../src/prefs/QualityPrefs.cpp:163
+#: prefs/QualityPrefs.cpp:77
msgid "Shaped"
msgstr "Flexibel"
# samples nemen/samples
-#: prefs/QualityPrefs.cpp:122
+#: prefs/QualityPrefs.cpp:125
msgid "Sampling"
msgstr "Samples"
-#: ../src/prefs/QualityPrefs.cpp:80
+#: prefs/QualityPrefs.cpp:129
msgid "Default Sample Rate:"
msgstr "Standaard samplefrequentie:"
-#: ../src/prefs/QualityPrefs.cpp:114
+#: prefs/QualityPrefs.cpp:154
msgid "Default Sample Format:"
-msgstr "Standaard sampleformat:"
+msgstr "Standaard sampleformaat:"
-#: ../src/prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "Real-time conversie van samplefrequentie:"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr "Realtime omzetten"
-#: ../src/prefs/QualityPrefs.cpp:147
-msgid "High-quality sample rate converter:"
-msgstr "Hoge kwaliteit conversie van samplefrequentie:"
+#: prefs/QualityPrefs.cpp:171
+#: prefs/QualityPrefs.cpp:193
+msgid "Sample Rate Converter:"
+msgstr "Samplerate omzetter:"
-# dither vertaling?
-#: ../src/prefs/QualityPrefs.cpp:171
-msgid "Real-time dither:"
-msgstr "Real-time dither:"
+# interpolatie
+#: prefs/QualityPrefs.cpp:178
+#: prefs/QualityPrefs.cpp:200
+msgid "Dither"
+msgstr "Interpolatie"
-# vertaling van dither?
-# afronding (sander)
-#: ../src/prefs/QualityPrefs.cpp:186
-msgid "High-quality dither:"
-msgstr "Hoge kwaliteit afronding:"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr "Hoge kwaliteit conversie"
+
+# gelijktijdig/tegelijkertijd
+#: prefs/RecordingPrefs.cpp:62
+msgid "Overdub: &Play other tracks while recording new one"
+msgstr "Overdub: &bij het opnemen van een spoor gelijktijdig de andere sporen afspelen"
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
-msgstr "Conversie"
+#: prefs/RecordingPrefs.cpp:66
+msgid "&Hardware Playthrough: Play new track while recording it"
+msgstr "&Hardwarematig playthrough: Nieuw spoor afspelen tijdens opname"
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
-msgstr "Samplerate omzetten"
+#: prefs/RecordingPrefs.cpp:70
+msgid "&Software Playthrough: Play new track while recording or monitoring"
+msgstr "&Softwarematig playthrough: nieuw spoor afspelen tijdens opname of monitoring"
-# interpolatie
-#: prefs/QualityPrefs.cpp:164
-msgid "Dither"
-msgstr "Interpolatie"
+#: prefs/RecordingPrefs.cpp:74
+msgid "(uncheck when recording \"stereo mix\")"
+msgstr "(uitvinken als u opneemt\"stereo mix\")"
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
-msgstr "Real-time:"
+#: prefs/RecordingPrefs.cpp:89
+#: prefs/RecordingPrefs.cpp:90
+msgid "milliseconds (higher = more latency)"
+msgstr "milliseconden (hoger = meer vertraging)"
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
-msgstr "Hoge-kwaliteit:"
+#: prefs/RecordingPrefs.cpp:96
+#: prefs/RecordingPrefs.cpp:97
+msgid "milliseconds (negative = backwards)"
+msgstr "milliseconden (negatief = achterwaarts)"
# slimme opname/slim opnemen/exclusief opnemen/intelligent opnemen
-#: prefs/SmartRecordPrefs.cpp:54 prefs/SmartRecordPrefs.cpp:55
-msgid "Smart Recording"
-msgstr "Slim opnemen"
-
-#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
+#: prefs/RecordingPrefs.cpp:103
+#: prefs/RecordingPrefs.cpp:105
msgid "Sound Activated Recording"
-msgstr ""
+msgstr "Geluidsgeactiveerd opnemen"
-#: prefs/SmartRecordPrefs.cpp:71
+#: prefs/RecordingPrefs.cpp:114
msgid "Sound Activation Level (dB):"
-msgstr ""
+msgstr "Geluid-activeringsniveau (dB):"
-#: ../src/prefs/PrefsDialog.cpp:87
+#: prefs/SpectrumPrefs.cpp:30
msgid "Spectrograms"
msgstr "Spectrogrammen"
-#: ../src/prefs/SpectrumPrefs.cpp:70
-msgid "FFT Size"
-msgstr "FFT-grootte"
-
# verste/breedste/uiterste breedband
-#: prefs/SpectrumPrefs.cpp:75
+#: prefs/SpectrumPrefs.cpp:41
msgid "8 - most wideband"
msgstr "8 - breedband"
-#: ../src/prefs/SpectrumPrefs.cpp:40
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr "16"
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr "32"
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr "64"
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr "128"
+
+#: prefs/SpectrumPrefs.cpp:46
msgid "256 - default"
msgstr "256 - standaard"
-#: prefs/SpectrumPrefs.cpp:107
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr "512"
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr "1024"
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr "2048"
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr "4096"
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr "8192"
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr "16384"
+
+#: prefs/SpectrumPrefs.cpp:54
msgid "32768 - most narrowband"
msgstr "32768 - smalband"
# meeste smalband is niet echt mooi.
-#: ../src/prefs/SpectrumPrefs.cpp:44
+#: prefs/SpectrumPrefs.cpp:56
msgid "4096 - most narrowband"
msgstr "4096 - smalband"
-#: prefs/SpectrumPrefs.cpp:90
-msgid "Window type:"
-msgstr "Venstertype:"
+# Function: [hamming]/[square] window
+# Venster-functie: [hamming]/[rechthoekig]
+# Dus 'window' moet slechts vertaald worden als een spatie.
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
+msgstr "FFT-venster"
-#: prefs/SpectrumPrefs.cpp:125
-msgid "FFT Skip Points"
-msgstr ""
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
+msgstr "Venstergrootte"
-# scherm/weergeven/tonen/monitor/weergave
-# het is hier de weergavevoorkeuren van het spectrum
-#: prefs/SpectrumPrefs.cpp:96
-msgid "Display"
-msgstr "Weergave"
+#: prefs/SpectrumPrefs.cpp:93
+msgid "Window type"
+msgstr "Venstertype"
+
+#: prefs/SpectrumPrefs.cpp:113
+msgid "FFT Skip Points"
+msgstr "FFT Skip-points"
-#: prefs/SpectrumPrefs.cpp:100
-msgid "&Grayscale"
-msgstr "&Grijswaarden"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
+msgstr "Skip-points"
-#: prefs/SpectrumPrefs.cpp:103
+#: prefs/SpectrumPrefs.cpp:134
msgid "Minimum Frequency (Hz):"
msgstr "Minimumfrequentie (Hz):"
-#: ../src/prefs/SpectrumPrefs.cpp:104
+#: prefs/SpectrumPrefs.cpp:140
msgid "Maximum Frequency (Hz):"
msgstr "Maximumfrequentie (Hz):"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
-msgstr ""
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
+msgstr "Maak gebruik van &grijswaarden voor het spectrum"
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
-msgstr ""
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
+msgstr "Toon raster langs de Y-as"
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
-msgstr ""
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
+msgstr "FFT Vind Noten"
#: prefs/SpectrumPrefs.cpp:165
msgid "Minimum Amplitude (dB):"
msgstr "Minimum amplitude (dB):"
-#: prefs/SpectrumPrefs.cpp:170
+#: prefs/SpectrumPrefs.cpp:171
msgid "Max. Number of Notes (1..128):"
-msgstr ""
+msgstr "Max. aantal noten (1..128):"
+
+#: prefs/SpectrumPrefs.cpp:178
+msgid "&Find Notes"
+msgstr "&Vind noten"
+
+#: prefs/SpectrumPrefs.cpp:182
+msgid "&Quantize Notes"
+msgstr "Noten &quantiseren"
-#: ../src/prefs/SpectrumPrefs.cpp:148
+#: prefs/SpectrumPrefs.cpp:194
msgid "The maximum frequency must be an integer"
msgstr "De maximumfrequentie moet een geheel getal zijn"
-#: ../src/prefs/SpectrumPrefs.cpp:152
+#: prefs/SpectrumPrefs.cpp:198
msgid "Maximum frequency must be in the range 100 Hz - 100,000 Hz"
msgstr "Maximumfrequentie moet liggen in het bereik 100 Hz - 100.000 Hz"
-#: prefs/SpectrumPrefs.cpp:146
+#: prefs/SpectrumPrefs.cpp:204
msgid "The minimum frequency must be an integer"
msgstr "De mininumfrequentie moet een geheel getal zijn"
-#: prefs/SpectrumPrefs.cpp:150
+#: prefs/SpectrumPrefs.cpp:208
msgid "Minimum frequency must be at least 0 Hz"
msgstr "De minimumfrequentie moet groter zijn dan 0 Hz"
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr "De minimumfrequentie moet kleiner zijn dan de maximumfrequentie"
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr "De minimum amplitude (dB) moet een geheel getal zijn"
-#: prefs/SpectrumPrefs.cpp:226 prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
-msgstr ""
+#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr "Het maximaal aantal noten moet een geheel getal zijn"
+
+#: prefs/SpectrumPrefs.cpp:230
+msgid "The maximum number of notes must be in the range 1..128"
+msgstr "Het maximaal aantal noten moet zich tussen 1 en 128 bevinden"
# meervoud is beter
-#: prefs/ThemePrefs.cpp:61 prefs/ThemePrefs.cpp:62
+#: prefs/ThemePrefs.cpp:60
msgid "Theme"
msgstr "Thema's"
-#: prefs/ThemePrefs.cpp:90
+#: prefs/ThemePrefs.cpp:88
+msgid "Info"
+msgstr "Informatie"
+
+#: prefs/ThemePrefs.cpp:91
+msgid ""
+"Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr ""
+"Het gebruik van thema's is experimenteel.\n"
+"\n"
+"Om het uit te proberen klikt u op \"Thema-cache opslaan\" waarna u met een beeldbewerkingsprogramma zoals âThe Gimpâ de\n"
+"afbeeldingen en kleuren in ImageCacheVxx.png kunt bewerken.\n"
+"\n"
+"Klik op \"Thema-cache laden\" om de gewijzigde afbeeldingen weer in Audacity te laden.\n"
+"\n"
+"[Momenteel worden alleen de bedieningsknoppen en de kleuren van de golfvorm beïnvloed, ondanks\n"
+"het feit dat het afbeeldingenbestand ook andere pictogrammen toont.]"
+
+#: prefs/ThemePrefs.cpp:96
+msgid ""
+"You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+"U heeft Audacity gecompileerd met een extra knop: 'Output Sourceryâ. Dat zal een C-versie van de\n"
+"afbeeldingsbuffer opslaan die vervolgens standaard meegecompileerd kan worden."
+
+# duh!
+#: prefs/ThemePrefs.cpp:101
+msgid ""
+"If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+"Indien âThema-cache laden bij opstartenâ aangevinkt is, zal de thema-cache geladen worden\n"
+"wanneer het programma opstart."
+
+#: prefs/ThemePrefs.cpp:104
+msgid ""
+"Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+"Bij het opslaan en laden van afzonderlijke themabestanden wordt voor elke afbeelding een apart bestand gebruikt.\n"
+"Voor het overige is het hetzelfde idee."
+
+#. i18n-hint: && in here is an escape character to get a single & on screen,
+#. * so keep it as is
+#: prefs/ThemePrefs.cpp:111
msgid "Theme Cache - Images && Color"
msgstr "Thema-cache - Afbeeldingen && kleuren"
-#: prefs/ThemePrefs.cpp:92
+#: prefs/ThemePrefs.cpp:115
msgid "Save Theme Cache"
msgstr "Thema-cache opslaan"
-#: prefs/ThemePrefs.cpp:93
+#: prefs/ThemePrefs.cpp:116
msgid "Load Theme Cache"
msgstr "Thema-cache laden"
-#: prefs/ThemePrefs.cpp:103
+#: prefs/ThemePrefs.cpp:131
msgid "Load Theme Cache At Startup"
msgstr "Thema-cache laden bij opstarten"
-#: prefs/ThemePrefs.cpp:115
+#: prefs/ThemePrefs.cpp:146
msgid "Individual Theme Files"
msgstr "Individuele themabestanden"
-#: prefs/ThemePrefs.cpp:117
+#: prefs/ThemePrefs.cpp:150
msgid "Save Files"
msgstr "Bestanden opslaan"
# laden/inladen
-#: prefs/ThemePrefs.cpp:118
+#: prefs/ThemePrefs.cpp:151
msgid "Load Files"
msgstr "Bestanden inladen"
-#: prefs/ThemePrefs.cpp:123
-msgid "Info"
-msgstr "Informatie"
+#: prefs/TracksPrefs.cpp:47
+msgid "Simple"
+msgstr "Eenvoudig"
-#: prefs/ThemePrefs.cpp:126
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
-msgstr "Het gebruik van thema's is experimenteel.\n"
-"\n"
-"Om het uit te proberen klikt u op âThema-cache opslaanâ\n"
-"waarna u met een bewerkingsprogramma zoals âThe Gimpâ de\n"
-"afbeeldingen en kleuren in ImageCacheVxx.png kunt bewerken.\n"
-"\n"
-"Klik op âThema-cache ladenâ om de gewijzigde afbeeldingen\n"
-"weer in Audacity te laden.\n"
-"\n"
-"[Momenteel worden alleen de bedieningsknoppen en de kleuren\n"
-"van de golfvorm beïnvloed, ondanks dat het afbeeldingenbestand\n"
-"ook andere pictogrammen toont.]\n"
+#: prefs/TracksPrefs.cpp:77
+msgid "&Update display while playing"
+msgstr "&Meeschuiven tijdens afspelen"
-#: prefs/ThemePrefs.cpp:131
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
-msgstr "U heeft Audacity gecompileerd met een extra knop: \n"
-"'Output Sourceryâ. Dat zal een C-versie van de afbeeldings-\n"
-"buffer opslaan die vervolgens standaard meegecompileerd\n"
-"kan worden.\n"
+#: prefs/TracksPrefs.cpp:80
+msgid "Automatically &fit tracks vertically zoomed"
+msgstr "Automatisch &zoomen tot sporen verticaal in venster passen"
-# duh!
-#: prefs/ThemePrefs.cpp:136
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
-msgstr "Indien âThema-cache laden bij opstartenâ aangevinkt is,\n"
-"zal de thema-cache geladen worden wanneer het programma\n"
-"opstart.\n"
-
-#: prefs/ThemePrefs.cpp:139
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
-msgstr "Bij het opslaan en laden van afzonderlijke themabestanden wordt\n"
-"voor elke afbeelding een apart bestand gebruikt. Voor het overige\n"
-"is het hetzelfde idee.\n"
-"\n"
+#: prefs/TracksPrefs.cpp:88
+msgid "Default View Mode:"
+msgstr "Standaard weergavemodus:"
-#: ../src/ControlToolBar.cpp:470
-msgid "Pause"
-msgstr "Pauzeren"
+#: prefs/TracksPrefs.cpp:101
+msgid "&Select all audio in project, if none selected"
+msgstr "Bij geen &selectie, alle audio in een project selecteren"
-# afspelen/spelen/play
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play"
-msgstr "Afspelen"
+#: prefs/TracksPrefs.cpp:104
+msgid "Enable cut &lines"
+msgstr "S&nijlijnen inschakelen"
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
-msgstr ""
+#: prefs/TracksPrefs.cpp:107
+msgid "Enable &dragging of left and right selection edges"
+msgstr "&Selectieranden mogen worden versleept"
-#: ../src/ControlToolBar.cpp:471
-msgid "Stop"
-msgstr "Stoppen"
+#: prefs/TracksPrefs.cpp:110
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+msgstr "\"Track-focus verplaatsen\" &circuleert herhaaldelijk door sporen"
-#: ../src/ControlToolBar.cpp:467
-msgid "Skip to Start"
-msgstr "Naar begin springen"
+# verplaatsen/verschuiven/doen verschuiven
+#: prefs/TracksPrefs.cpp:113
+msgid "Editing a &clip can move other clips"
+msgstr "Het bewerken van een &clip kan andere clips verschuiven"
-#: ../src/ControlToolBar.cpp:472
-msgid "Skip to End"
-msgstr "Naar einde springen"
+# solo-knop weergeven of niet.
+# Solo Button: [Standaard][Eenvoudig][geen]
+#: prefs/TracksPrefs.cpp:121
+msgid "Solo Button:"
+msgstr "Solo-knop:"
-#: toolbars/ControlToolBar.cpp:192
-msgid "Record (Shift for Append Record)"
-msgstr ""
+# =venstertitel
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
+msgstr "Waarschuwingen"
+
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr "Toon waarschuwingsvensters"
+
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr "Bij opslaan van een project"
+
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr "Bij opslaan van een leeg project"
+
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr "Wanneer schijfruimte afneemt"
+
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr "Bij downmixen naar &stereo tijdens het exporteren"
+
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr "Bij downmixen naar &mono tijdens het exporteren"
+
+#: toolbars/ControlToolBar.cpp:170
+#: toolbars/ControlToolBar.cpp:205
+msgid "Pause"
+msgstr "Pauzeren"
+
+#: toolbars/ControlToolBar.cpp:178
+#: toolbars/ControlToolBar.cpp:207
+#: widgets/ProgressDialog.cpp:1108
+msgid "Stop"
+msgstr "Stoppen"
# tooltip bij de CleenSpeech knop
# erop klikken brengt het 'apply chain' dialoog naar voren
-#: toolbars/ControlToolBar.cpp:195
+#: toolbars/ControlToolBar.cpp:190
+#: toolbars/ControlToolBar.cpp:211
msgid "Clean Speech"
msgstr "Clean Speech"
-#: toolbars/ControlToolBar.cpp:524 toolbars/ControlToolBar.cpp:776
+# doorlopend afspelen (tino)
+# herhalend afspelen (sander)
+# afspelen in lus? (Thomas)
+#: toolbars/ControlToolBar.cpp:206
+msgid "Play (Shift for Loop Play)"
+msgstr "Afspelen (Shift voor herhaaldelijk afspelen)"
+
+# append = aansluiten
+# Opname wordt begonnen vanaf het einde van de vorige opname (einde van vorige track)
+#: toolbars/ControlToolBar.cpp:210
+msgid "Record (Shift for Append Record)"
+msgstr "Opnemen (Shift voor aansluitend opnemen)"
+
+#: toolbars/ControlToolBar.cpp:579
+#: toolbars/ControlToolBar.cpp:914
msgid "Error while opening sound device. "
msgstr "Fout bij het openen van het geluidsapparaat."
-#: toolbars/ControlToolBar.cpp:696
+#: toolbars/ControlToolBar.cpp:749
msgid "Recording in CleanSpeech mode is not possible when a track, or more than one project, is already open."
msgstr "Opname in CleanSpeech modus is niet mogelijk wanneer een spoor, of meer dan één project, al geopend is."
# niet mogelijk/toegestaan
# opnemen/opname
-#: toolbars/ControlToolBar.cpp:685
+#: toolbars/ControlToolBar.cpp:750
msgid "Recording not permitted"
msgstr "Opname niet toegestaan"
# uitgang/uitgangskanaal
-#: toolbars/DeviceToolBar.cpp:113 toolbars/DeviceToolBar.cpp:115
+#: toolbars/DeviceToolBar.cpp:109
+#: toolbars/DeviceToolBar.cpp:205
msgid "Output Device"
msgstr "Uitgangskanaal"
# ingangskanaal/invoerapparaat/ingang
-#: toolbars/DeviceToolBar.cpp:134 toolbars/DeviceToolBar.cpp:136
+#: toolbars/DeviceToolBar.cpp:127
+#: toolbars/DeviceToolBar.cpp:206
msgid "Input Device"
msgstr "Ingangskanaal"
-#: ../src/EditToolBar.cpp:154
+#: toolbars/EditToolBar.cpp:136
msgid "Trim outside selection"
msgstr "Alles buiten de selectie wegknippen"
-#: ../src/EditToolBar.cpp:156
+#: toolbars/EditToolBar.cpp:138
msgid "Silence selection"
msgstr "De selectie geluidloos maken"
#: toolbars/EditToolBar.cpp:150
+#: toolbars/EditToolBar.cpp:197
msgid "Link Tracks"
-msgstr ""
+msgstr "Sporen koppelen"
-#: ../src/EditToolBar.cpp:164
+#: toolbars/EditToolBar.cpp:155
+#: toolbars/EditToolBar.cpp:198
msgid "Zoom In"
msgstr "Inzoomen"
-#: ../src/EditToolBar.cpp:166
+#: toolbars/EditToolBar.cpp:157
+#: toolbars/EditToolBar.cpp:199
msgid "Zoom Out"
msgstr "Uitzoomen"
-#: ../src/EditToolBar.cpp:170
-msgid "Zoom Toggle"
-msgstr "Zoomschakelaar"
-
#: toolbars/EditToolBar.cpp:160
-msgid "Fit Selection"
-msgstr "Selectie inpassen"
-
-#: ../src/EditToolBar.cpp:174
msgid "Fit selection in window"
msgstr "Alleen de selectie weergeven"
-#: toolbars/EditToolBar.cpp:162
-msgid "Fit Project"
-msgstr "Project inpassen"
-
# of: ... in het venster (laten) passen
-#: ../src/EditToolBar.cpp:176
+#: toolbars/EditToolBar.cpp:162
msgid "Fit project in window"
msgstr "Het gehele project weergeven"
-# volumemeter+opnamemeter/vu-meter
-#: toolbars/MeterToolBar.cpp:49
-msgid "Meter"
-msgstr "Vu-meter"
+#: toolbars/EditToolBar.cpp:200
+msgid "Fit Selection"
+msgstr "Selectie inpassen"
+
+#: toolbars/EditToolBar.cpp:201
+msgid "Fit Project"
+msgstr "Project inpassen"
# weergavevolume/afspeelvolume
-#: toolbars/MeterToolBar.cpp:79
+#: toolbars/MeterToolBar.cpp:80
msgid "Play Meter"
msgstr "Afspeelvolume"
-#: toolbars/MeterToolBar.cpp:80
+#: toolbars/MeterToolBar.cpp:81
msgid "Meter-Play"
msgstr "Vu-meter voor afspelen"
# opnamevolume/opnamevolumemeter
-#: toolbars/MeterToolBar.cpp:88
+#: toolbars/MeterToolBar.cpp:89
msgid "Record Meter"
msgstr "Opnamevolume"
-#: toolbars/MeterToolBar.cpp:89
+#: toolbars/MeterToolBar.cpp:90
msgid "Meter-Record"
msgstr "Vu-meter voor opname"
# afspeelvolume/weergavevolume
-#: ../src/MeterToolBar.cpp:66
+#: toolbars/MeterToolBar.cpp:123
msgid "Output level meter"
msgstr "Weergavevolume"
# NB Dit is een bericht in de statusbalk + tooltip
# klikken om de ingang te monitoren
# opnamevolume/ingangsmeter
-#: ../src/MeterToolBar.cpp:67
+#: toolbars/MeterToolBar.cpp:124
msgid "Input level meter - click to monitor input"
msgstr "Opnamevolume - klik op de meter om het ingangssignaal te meten"
# Uitgansvolume/weergavevolume/afspeelvolume
-#: ../src/MixerToolBar.cpp:135
+#: toolbars/MixerToolBar.cpp:90
msgid "Output Volume"
msgstr "Weergavevolume"
#: toolbars/MixerToolBar.cpp:92
-#, fuzzy
msgid "Slider Output"
msgstr "Uitgang-schuif"
# opnamevolume
-#: ../src/MixerToolBar.cpp:138
+#: toolbars/MixerToolBar.cpp:101
+#: widgets/Meter.cpp:862
msgid "Input Volume"
msgstr "Ingangsvolume"
#: toolbars/MixerToolBar.cpp:103
-#, fuzzy
msgid "Slider Input"
msgstr "Ingang-schuif"
-#: toolbars/MixerToolBar.cpp:119
+#: toolbars/MixerToolBar.cpp:139
msgid "Input Source"
msgstr "Ingangsbron"
-#: toolbars/SelectionBar.cpp:75
+#: toolbars/MixerToolBar.cpp:304
+msgid "Input source information is not available."
+msgstr "Er is geen informatie beschikbaar over de invoerbron."
+
+#: toolbars/MixerToolBar.cpp:311
+msgid "Select Input Source"
+msgstr "Invoerbron selecteren"
+
+#: toolbars/MixerToolBar.cpp:319
+msgid "Input Source:"
+msgstr "Invoerbron:"
+
+#: toolbars/SelectionBar.cpp:86
+#: toolbars/SelectionBar.cpp:292
msgid "Selection"
msgstr "Selectie"
-#: toolbars/SelectionBar.cpp:115 toolbars/SelectionBar.cpp:168
+#: toolbars/SelectionBar.cpp:135
+#: toolbars/SelectionBar.cpp:194
msgid "Project Rate (Hz):"
msgstr "Projectfrequentie (Hz):"
-#: toolbars/SelectionBar.cpp:120 toolbars/SelectionBar.cpp:211
+#: toolbars/SelectionBar.cpp:149
+#: toolbars/SelectionBar.cpp:255
msgid "Selection Start:"
msgstr "Selectie begin:"
# tijdsduur/lengte
-#: effects/ToneGen.cpp:300 effects/ToneGen.cpp:338
-#: toolbars/SelectionBar.cpp:135 toolbars/SelectionBar.cpp:225
+#: toolbars/SelectionBar.cpp:163
+#: toolbars/SelectionBar.cpp:164
+#: toolbars/SelectionBar.cpp:261
msgid "Length"
msgstr "Tijdsduur"
-#: toolbars/SelectionBar.cpp:145
+#: toolbars/SelectionBar.cpp:174
msgid "hidden"
msgstr "verborgen"
-#: toolbars/SelectionBar.cpp:155 toolbars/SelectionBar.cpp:239
+#: toolbars/SelectionBar.cpp:184
+#: toolbars/SelectionBar.cpp:272
msgid "Audio Position:"
msgstr "Audiopositie:"
-#: toolbars/SelectionBar.cpp:222
+#: toolbars/SelectionBar.cpp:236
+#: toolbars/SelectionBar.cpp:241
msgid "Snap To"
msgstr "Raster"
# dit wordt: Audacity %s-werkbalk.
-#: toolbars/SelectionBar.cpp:224
+#: toolbars/SelectionBar.cpp:260
msgid "Selection "
msgstr "selectie"
-#: toolbars/SelectionBar.cpp:289
+#: toolbars/SelectionBar.cpp:340
msgid "Selection Length"
msgstr "Tijdsduur selectie"
-#: toolbars/SelectionBar.cpp:297
+#: toolbars/SelectionBar.cpp:348
msgid "Selection End"
msgstr "Selectie einde"
# tooltip bij de verschillende werkbalken
-#: toolbars/ToolBar.cpp:96
+#: toolbars/ToolBar.cpp:120
#, c-format
msgid "Audacity %s ToolBar"
msgstr "Audacity %s-werkbalk"
-#: toolbars/ToolDock.cpp:74 toolbars/ToolDock.cpp:75
+#: toolbars/ToolDock.cpp:75
+#: toolbars/ToolDock.cpp:76
msgid "ToolDock"
msgstr "ToolDock"
-#: ../src/ControlToolBar.cpp:76
+#: toolbars/ToolsToolBar.cpp:63
msgid "Click and drag to select audio"
msgstr "Klik en sleep om audio te selecteren"
# Versterkingsverloop (S Alkemade)
# Amplitude envelope is anders dan Amplification envelope? (tino)
-#: ../src/ControlToolBar.cpp:77
+#: toolbars/ToolsToolBar.cpp:64
msgid "Click and drag to edit the amplitude envelope"
msgstr "Klik en sleep om de amplitudeverloop te bewerken."
-#: ../src/ControlToolBar.cpp:78
+#: toolbars/ToolsToolBar.cpp:65
msgid "Click and drag to edit the samples"
msgstr "Klik en sleep om de samples te bewerken"
-#: ../src/ControlToolBar.cpp:80
+#: toolbars/ToolsToolBar.cpp:67
msgid "Click to Zoom In, Shift-Click to Zoom Out"
msgstr "Klik voor Inzoomen, Shift-Klik voor Uitzoomen."
-#: ../src/ControlToolBar.cpp:82
+#: toolbars/ToolsToolBar.cpp:69
msgid "Drag to Zoom Into Region, Right-Click to Zoom Out"
msgstr "Slepen om in te zoomen, Rechts-klikken om uit te zoomen"
# midden/middel
-#: ../src/ControlToolBar.cpp:84
+#: toolbars/ToolsToolBar.cpp:71
msgid "Left=Zoom In, Right=Zoom Out, Middle=Normal"
msgstr "Links=Inzoomen, Rechts=Uitzoomen, Middel=Normaal"
-#: ../src/ControlToolBar.cpp:86
+#: toolbars/ToolsToolBar.cpp:73
msgid "Click and drag to move a track in time"
msgstr "Klik en sleep om een spoor in tijd te verplaatsen"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr "tools"
-
-# overal Tool (functie) weglaten en werkwoord gebruiken
-#: ../src/ControlToolBar.cpp:355
-msgid "Selection Tool"
-msgstr "Selecteren"
-
-# Tool (functie) weglaten en werkwoord gebruiken
-#: ../src/ControlToolBar.cpp:356
-msgid "Envelope Tool"
-msgstr "Verloop"
-
-# Dit is de tooltip en de tekst van de statusbalk.
-# Bij alle andere tools wordt ook het hele werkwoord
-# gebruikt, vandaar dus geen: Tijdverschuiving.
-# Ook het woord Tool is hier met reden niet meevertaald.
-#: ../src/ControlToolBar.cpp:357
-msgid "Time Shift Tool"
-msgstr "Tijd verschuiven"
-
-# het woord Tool niet vertalen hier
-#: ../src/ControlToolBar.cpp:358
-msgid "Zoom Tool"
-msgstr "Zoomen"
-
-# Overal tool weglaten en werkwoord gebruiken
-#: ../src/ControlToolBar.cpp:359
-msgid "Draw Tool"
-msgstr "Tekenen"
-
# combinatie modus/stand/tool
-#: ../src/ControlToolBar.cpp:360
+#: toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
msgstr "Combinatietool"
# schuiven/verschuiven
-#: toolbars/ToolsToolBar.cpp:186
+#: toolbars/ToolsToolBar.cpp:190
msgid "Slide Tool"
msgstr "Verschuiven"
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr "Combinatietool"
-
-# het hoger of lager afspelen
-# Snelheidsschuif/afspeelsnelheid/transcriptie
-# dit wordt: Audacity %s-werkbalk.
-#: toolbars/TranscriptionToolBar.cpp:81
-msgid "Transcription"
-msgstr "afspeelsnelheid"
-
# afspelen in het aangegeven tempo
-#: toolbars/TranscriptionToolBar.cpp:183
+#: toolbars/TranscriptionToolBar.cpp:170
msgid "Play at selected speed"
msgstr "Afspelen in het aangegeven tempo"
-# op tempo afspelen
-#: toolbars/TranscriptionToolBar.cpp:184
-msgid "Play-at-speed"
-msgstr "Afspelen-met-snelheid"
-
-#: toolbars/TranscriptionToolBar.cpp:190 toolbars/TranscriptionToolBar.cpp:195
+#: toolbars/TranscriptionToolBar.cpp:176
+#: toolbars/TranscriptionToolBar.cpp:181
+#: toolbars/TranscriptionToolBar.cpp:263
msgid "Playback Speed"
msgstr "Afspeelsnelheid"
# onset=aangezet worden/geluid aan?
# linkerkant selectie naar plaats van aanzetten
-#: toolbars/TranscriptionToolBar.cpp:200
+#: toolbars/TranscriptionToolBar.cpp:195
msgid "Adjust left selection to next onset"
msgstr "Linkerkant selectie naar volgende plaats van aanzetten"
-# links/linkerkant
-# selectie naar links uitbreiden totdat de 'aan' bereikt is.
-#: toolbars/TranscriptionToolBar.cpp:201
-msgid "Left-to-On"
-msgstr "Van-links-naar-aan"
-
# offset=uitgezet worden/geluid uit?
-#: toolbars/TranscriptionToolBar.cpp:203
+#: toolbars/TranscriptionToolBar.cpp:197
msgid "Adjust right selection to previous offset"
msgstr "Rechterkant selectie naar vorige plaats van uitzetten"
-#: toolbars/TranscriptionToolBar.cpp:204
-msgid "Right-to-Off"
-msgstr "Van-rechts-naar-uit"
-
-#: toolbars/TranscriptionToolBar.cpp:206
+#: toolbars/TranscriptionToolBar.cpp:199
msgid "Adjust left selection to next offset"
msgstr "Linkerkant selectie naar volgende plaats van uitzetten"
-#: toolbars/TranscriptionToolBar.cpp:207
-msgid "Left-to-Off"
-msgstr "Van-links-naar-uit"
-
-#: toolbars/TranscriptionToolBar.cpp:209
+#: toolbars/TranscriptionToolBar.cpp:201
msgid "Adjust right selection to previous onset"
msgstr "Rechterkant selectie naar vorige plaats van aanzetten"
-#: toolbars/TranscriptionToolBar.cpp:210
-msgid "Right-to-On"
-msgstr "Van-rechts-naar-aan"
-
-#: toolbars/TranscriptionToolBar.cpp:212
+#: toolbars/TranscriptionToolBar.cpp:203
msgid "Select region of sound around cursor"
msgstr "Selecteer gebied met geluid rond de cursor"
-#: toolbars/TranscriptionToolBar.cpp:213
-msgid "Select-Sound"
-msgstr "Selecteer-geluid"
-
-#: toolbars/TranscriptionToolBar.cpp:215
+#: toolbars/TranscriptionToolBar.cpp:205
msgid "Select region of silence around cursor"
msgstr "Selecteer gebied met stilte rond de cursor"
-#: toolbars/TranscriptionToolBar.cpp:216
-msgid "Select-Silence"
-msgstr "Selecteer-stilte"
-
-#: toolbars/TranscriptionToolBar.cpp:218
+#: toolbars/TranscriptionToolBar.cpp:207
msgid "Automatically make labels from words"
msgstr "Automatisch labels maken van woorden"
-#: toolbars/TranscriptionToolBar.cpp:219
-msgid "Make Labels"
-msgstr "Labels maken"
-
-#: toolbars/TranscriptionToolBar.cpp:221
+#: toolbars/TranscriptionToolBar.cpp:209
msgid "Add label at selection"
msgstr "Label bij selectie toevoegen"
-#: toolbars/TranscriptionToolBar.cpp:222
-msgid "Add Label"
-msgstr "Label toevoegen"
-
-#: toolbars/TranscriptionToolBar.cpp:224
+#: toolbars/TranscriptionToolBar.cpp:211
msgid "Calibrate voicekey"
msgstr "Voicekey kalibreren"
-#: toolbars/TranscriptionToolBar.cpp:225
-msgid "Calibrate"
-msgstr "Kalibreren"
-
-#: toolbars/TranscriptionToolBar.cpp:229
+#: toolbars/TranscriptionToolBar.cpp:215
msgid "Adjust Sensitivity"
msgstr "Gevoeligheid aanpassen"
-#: toolbars/TranscriptionToolBar.cpp:234
+#: toolbars/TranscriptionToolBar.cpp:220
+#: toolbars/TranscriptionToolBar.cpp:276
msgid "Sensitivity"
msgstr "Gevoeligheid"
-#: toolbars/TranscriptionToolBar.cpp:239
+#: toolbars/TranscriptionToolBar.cpp:225
msgid "Energy"
msgstr "Energie"
# drempel/drempelwaarde
-#: toolbars/TranscriptionToolBar.cpp:240
+#: toolbars/TranscriptionToolBar.cpp:226
msgid "Sign Changes (Low Threshold)"
msgstr "Tekenwisselingen (lage drempel)"
-#: toolbars/TranscriptionToolBar.cpp:241
+#: toolbars/TranscriptionToolBar.cpp:227
msgid "Sign Changes (High Threshold)"
msgstr "Tekenwisselingen (hoge drempel)"
-#: toolbars/TranscriptionToolBar.cpp:242
+#: toolbars/TranscriptionToolBar.cpp:228
msgid "Direction Changes (Low Threshold)"
msgstr "Richtingwisselingen (lage drempel)"
-#: toolbars/TranscriptionToolBar.cpp:243
+#: toolbars/TranscriptionToolBar.cpp:229
msgid "Direction Changes (High Threshold)"
msgstr "Richtingwisselingen (hoge drempel)"
# soort/type
# muzieksleutel?
-#: toolbars/TranscriptionToolBar.cpp:251
+#: toolbars/TranscriptionToolBar.cpp:237
+#: toolbars/TranscriptionToolBar.cpp:277
msgid "Key type"
msgstr "Sleuteltype"
-#: ../src/widgets/AButton.cpp:181
+# op tempo afspelen
+#: toolbars/TranscriptionToolBar.cpp:262
+msgid "Play-at-speed"
+msgstr "Afspelen-met-snelheid"
+
+# links/linkerkant
+# selectie naar links uitbreiden totdat de 'aan' bereikt is.
+#: toolbars/TranscriptionToolBar.cpp:266
+msgid "Left-to-On"
+msgstr "Van-links-naar-aan"
+
+#: toolbars/TranscriptionToolBar.cpp:267
+msgid "Right-to-Off"
+msgstr "Van-rechts-naar-uit"
+
+#: toolbars/TranscriptionToolBar.cpp:268
+msgid "Left-to-Off"
+msgstr "Van-links-naar-uit"
+
+#: toolbars/TranscriptionToolBar.cpp:269
+msgid "Right-to-On"
+msgstr "Van-rechts-naar-aan"
+
+#: toolbars/TranscriptionToolBar.cpp:270
+msgid "Select-Sound"
+msgstr "Selecteer-geluid"
+
+#: toolbars/TranscriptionToolBar.cpp:271
+msgid "Select-Silence"
+msgstr "Selecteer-stilte"
+
+#: toolbars/TranscriptionToolBar.cpp:272
+msgid "Make Labels"
+msgstr "Labels maken"
+
+#: toolbars/TranscriptionToolBar.cpp:273
+msgid "Add Label"
+msgstr "Label toevoegen"
+
+#: toolbars/TranscriptionToolBar.cpp:274
+msgid "Calibrate"
+msgstr "Kalibreren"
+
+#: widgets/AButton.cpp:300
msgid " (disabled)"
msgstr " (kan nu niet gebruikt worden)"
-#: widgets/AButton.cpp:443
+#: widgets/AButton.cpp:458
msgid "Press"
msgstr "Klikken"
-#: widgets/AButton.cpp:522
+#: widgets/AButton.cpp:537
msgid "Button"
msgstr "Knop"
-#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
#. i18n-hint: One-letter abbreviation for Left, in VU Meter
-#: ../src/widgets/ASlider.cpp:329 ../src/widgets/Meter.cpp:165
+#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
+#: widgets/ASlider.cpp:642
+#: widgets/Meter.cpp:241
msgid "L"
msgstr "L"
-#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
#. i18n-hint: One-letter abbreviation for Right, in VU Meter
-#: ../src/widgets/ASlider.cpp:332 ../src/widgets/Meter.cpp:167
+#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
+#: widgets/ASlider.cpp:645
+#: widgets/Meter.cpp:243
msgid "R"
msgstr "R"
# Het centrum tussen het linker en rechter kanaal (Balans)
-#: ../src/widgets/ASlider.cpp:484
+#: widgets/ASlider.cpp:708
msgid "Center"
msgstr "Centrum"
-#: ../src/widgets/ASlider.cpp:488
+#: widgets/ASlider.cpp:712
msgid "Left"
msgstr "Links"
-#: ../src/widgets/ASlider.cpp:491
+#: widgets/ASlider.cpp:715
msgid "Right"
msgstr "Rechts"
-#: widgets/ErrorDialog.cpp:69 widgets/ErrorDialog.cpp:93
+#: widgets/ErrorDialog.cpp:96
msgid "Help"
-msgstr "Hulp"
+msgstr "Help"
-#: widgets/ErrorDialog.cpp:137
+#: widgets/ErrorDialog.cpp:166
msgid "<"
msgstr "<"
-#: widgets/ErrorDialog.cpp:138
+#: widgets/ErrorDialog.cpp:167
msgid ">"
msgstr ">"
# Vooruit/voorwaarts/naar voren
-#: widgets/ErrorDialog.cpp:142
+#: widgets/ErrorDialog.cpp:171
msgid "Forwards"
msgstr "Voorwaarts"
# Achteruit/achterwaarts/naar achteren/terug
-#: widgets/ErrorDialog.cpp:143
+#: widgets/ErrorDialog.cpp:172
msgid "Backwards"
msgstr "Achterwaarts"
-#: widgets/ErrorDialog.cpp:190
+#: widgets/ErrorDialog.cpp:275
msgid "Help on the Internet"
msgstr "Hulp op het internet"
# aangrijpen/greep
-#: widgets/Grabber.cpp:61
+#: widgets/Grabber.cpp:62
msgid "Grabber"
msgstr "Greep"
-#: widgets/Grid.cpp:616
-#, c-format
-msgid "%d rows, %d columns"
-msgstr "%d rijen, %d kolommen"
-
-#: widgets/Grid.cpp:622 widgets/Grid.cpp:749
-#, c-format
-msgid "Row %d"
-msgstr "Rij %d"
-
-#: widgets/Grid.cpp:764
+#: widgets/Grid.cpp:723
msgid "Empty"
msgstr "Leeg"
# meter aan/aanzetten/inschakelen/meten
-#: widgets/Meter.cpp:336
+#: widgets/Meter.cpp:385
msgid "Enable Meter"
msgstr "Vu-meter aanzetten"
-#: widgets/Meter.cpp:338
+#: widgets/Meter.cpp:387
msgid "Disable Meter"
msgstr "Vu-meter uitzetten"
# uitmeten/opmeten/meten
-#: widgets/Meter.cpp:341
+#: widgets/Meter.cpp:390
msgid "Stop Monitoring"
msgstr "Meten stoppen"
-#: widgets/Meter.cpp:343
+#: widgets/Meter.cpp:392
msgid "Start Monitoring"
msgstr "Meten starten"
-#: ../src/widgets/Meter.cpp:285
+#: widgets/Meter.cpp:396
msgid "Horizontal Stereo"
msgstr "Stereo horizontaal"
-#: ../src/widgets/Meter.cpp:286
+#: widgets/Meter.cpp:397
msgid "Vertical Stereo"
msgstr "Stereo verticaal"
-#: widgets/Meter.cpp:365
+#: widgets/Meter.cpp:414
msgid "Preferences..."
msgstr "Voorkeurenâ¦"
-#: widgets/Meter.cpp:876
+# opnamevolume
+#: widgets/Meter.cpp:864
msgid "Mix Volume"
-msgstr ""
+msgstr "Mix-volume"
# engels BUG: qualtiy moet quality zijn
-#: widgets/Meter.cpp:1037
-msgid "This determines how often the meter is refreshed.\n"
+#: widgets/Meter.cpp:1133
+msgid ""
+"This determines how often the meter is refreshed.\n"
"If you have a slower PC you may want to select a\n"
"lower refresh rate (30 per second or lower), so that\n"
"audio qualtiy is not affected by the meter display."
-msgstr "Dit bepaalt hoe vaak de vu-meters een meting doen.\n"
+msgstr ""
+"Dit bepaalt hoe vaak de vu-meters een meting doen.\n"
"Wanneer uw computer wat oud en langzaam is, is verstandig\n"
"om de meetfrequentie niet te hoog te maken (30 keer per\n"
"seconde of minder). Op die manier wordt de geluidskwaliteit\n"
"niet beïnvloed door het weergeven van de vu-meters."
# vu-meters/volumemeters
-#: widgets/Meter.cpp:1038
+#: widgets/Meter.cpp:1134
msgid "Meter refresh rate per second [1-100]: "
msgstr "Verversingsfrequentie voor de vu-meters [1-100 Hz]: "
-#: widgets/Meter.cpp:1039
+#: widgets/Meter.cpp:1135
msgid "Meter Preferences"
msgstr "Vu-meter voorkeuren"
@@ -8982,170 +10249,251 @@ msgstr " Selecteer een actie "
#: widgets/MultiDialog.cpp:86
msgid "Please select an action"
-msgstr ""
+msgstr "Selecteer een actie"
-#: widgets/ProgressDialog.cpp:97
+#: widgets/ProgressDialog.cpp:1067
msgid "Elapsed Time:"
-msgstr ""
+msgstr "Verstreken tijd:"
-#: widgets/ProgressDialog.cpp:117
+#: widgets/ProgressDialog.cpp:1087
msgid "Remaining Time:"
-msgstr ""
+msgstr "Resterende tijd:"
-#: widgets/ProgressDialog.cpp:134
+#: widgets/ProgressDialog.cpp:1115
msgid "Cancel"
-msgstr ""
+msgstr "Annuleren"
# lineaal/meetlat/meetlint
-#: widgets/Ruler.cpp:1110 widgets/Ruler.cpp:1111
+#: widgets/Ruler.cpp:1588
+#: widgets/Ruler.cpp:1589
msgid "Vertical Ruler"
msgstr "Verticale lineaal"
-#: widgets/TimeTextCtrl.cpp:198
+#. i18n-hint: Format string for displaying time in seconds. Change the comma
+#. * in the middle to the 1000s separator for your locale, and the 'seconds'
+#. * on the end to the word for seconds. Don't change the numbers.
+#: widgets/TimeTextCtrl.cpp:269
msgid "01000,01000 seconds"
msgstr "01000,01000 seconden"
-#: widgets/TimeTextCtrl.cpp:200
+#. i18n-hint: Format string for displaying time in hours, minutes and
+#. * seconds. Change the 'h' to the abbreviation for hours, 'm' to the
+#. * abbreviation for minutes and 's' to the abbreviation for seconds. Don't
+#. * change the numbers unless there aren't 60 seconds in a minute in your
+#. * locale
+#: widgets/TimeTextCtrl.cpp:278
msgid "0100 h 060 m 060 s"
msgstr "0100 u 060 m 060 s"
-#: widgets/TimeTextCtrl.cpp:201
+#. i18n-hint: Name of time display format that shows time in days, hours,
+#. * minutes and seconds
+#: widgets/TimeTextCtrl.cpp:281
msgid "dd:hh:mm:ss"
msgstr "dd:uu:mm:ss"
-#: widgets/TimeTextCtrl.cpp:202
+#. i18n-hint: Format string for displaying time in days, hours, minutes and
+#. * seconds. Change the 'days' to the word for days, 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes and 's' to the
+#. * abbreviation for seconds. Don't change the numbers unless there aren't
+#. * 24 hours in a day in your locale
+#: widgets/TimeTextCtrl.cpp:287
msgid "0100 days 024 h 060 m 060 s"
msgstr "0100 dagen 024 u 060 m 060 s"
#. i18n-hint: Name of time display format that shows time in hours,
-#. * minutes, seconds and hundreths of a second (1/100 second)
-#: widgets/TimeTextCtrl.cpp:288
+#. * minutes, seconds and hundredths of a second (1/100 second)
+#: widgets/TimeTextCtrl.cpp:290
msgid "hh:mm:ss + hundredths"
-msgstr ""
+msgstr "uu:mm:ss + honderdsten"
#. i18n-hint: Format string for displaying time in hours, minutes, seconds
#. * and hundredths of a second. Change the 'h' to the abbreviation for hours,
#. * 'm' to the abbreviation for minutes and 's' to the abbreviation for seconds (the
#. * hundredths are shown as decimal seconds) . Don't change the numbers
#. * unless there aren't 60 minutes in an hour in your locale
-#: widgets/TimeTextCtrl.cpp:294
+#: widgets/TimeTextCtrl.cpp:296
msgid "0100 h 060 m 060.0100 s"
-msgstr ""
+msgstr "0100 u 060 m 060.0100 s"
-#: widgets/TimeTextCtrl.cpp:203
+#. i18n-hint: Name of time display format that shows time in hours,
+#. * minutes, seconds and milliseconds (1/1000 second)
+#: widgets/TimeTextCtrl.cpp:299
msgid "hh:mm:ss + milliseconds"
msgstr "uu:mm:ss + milliseconden"
-#: widgets/TimeTextCtrl.cpp:204
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and milliseconds. Change the 'h' to the abbreviation for hours, 'm' to the
+#. * abbreviation for minutes and 's' to the abbreviation for seconds (the
+#. * milliseconds are shown as decimal seconds) . Don't change the numbers
+#. * unless there aren't 60 minutes in an hour in your locale
+#: widgets/TimeTextCtrl.cpp:305
msgid "0100 h 060 m 060.01000 s"
msgstr "0100 u 060 m 060.01000 s"
-#: widgets/TimeTextCtrl.cpp:205
+#. i18n-hint: Name of time display format that shows time in hours,
+#. * minutes, seconds and samples (at the current project sample rate)
+#: widgets/TimeTextCtrl.cpp:308
msgid "hh:mm:ss + samples"
msgstr "uu:mm:ss + samples"
-#: widgets/TimeTextCtrl.cpp:206
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and samples. Change the 'h' to the abbreviation for hours, 'm' to the
+#. * abbreviation for minutes, 's' to the abbreviation for seconds and
+#. * translate samples . Don't change the numbers
+#. * unless there aren't 60 seconds in a minute in your locale
+#: widgets/TimeTextCtrl.cpp:314
msgid "0100 h 060 m 060 s+.# samples"
msgstr "0100 u 060 m 060 s+.# samples"
-#: widgets/TimeTextCtrl.cpp:207
+#. i18n-hint: Name of time display format that shows time in samples (at the
+#. * current project sample rate)
+#: widgets/TimeTextCtrl.cpp:317
msgid "samples"
msgstr "samples"
-#: widgets/TimeTextCtrl.cpp:208
+#. i18n-hint: Format string for displaying time in samples (lots of samples).
+#. * Change the ',' to the 1000s separator for your locale, and translate
+#. * samples. If 1000s aren't a base multiple for your number system, then you
+#. * can change the numbers to an appropriate one, and put a 0 on the front
+#: widgets/TimeTextCtrl.cpp:322
msgid "01000,01000,01000 samples|#"
msgstr "01000,01000,01000 samples|#"
-#: widgets/TimeTextCtrl.cpp:209
+#. i18n-hint: Name of time display format that shows time in hours, minutes,
+#. * seconds and frames at 24 frames per second (commonly used for films)
+#: widgets/TimeTextCtrl.cpp:325
msgid "hh:mm:ss + film frames (24 fps)"
msgstr "uu:mm:ss + film-frames (24 fps)"
-#: widgets/TimeTextCtrl.cpp:210
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and frames at 24 frames per second. Change the 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
+#. * for seconds and translate 'frames' . Don't change the numbers
+#. * unless there aren't 60 seconds in a minute in your locale
+#: widgets/TimeTextCtrl.cpp:331
msgid "0100 h 060 m 060 s+.24 frames"
msgstr "0100 u 060 m 060 s+.24 frames"
-#: widgets/TimeTextCtrl.cpp:211
+#. i18n-hint: Name of time display format that shows time in frames (lots of
+#. * frames) at 24 frames per second (commonly used for films)
+#: widgets/TimeTextCtrl.cpp:334
msgid "film frames (24 fps)"
msgstr "film-frames (24 fps)"
-#: widgets/TimeTextCtrl.cpp:212
+#. i18n-hint: Format string for displaying time in frames at 24 frames per
+#. * second. Translate 'frames' and leave the rest alone
+#: widgets/TimeTextCtrl.cpp:337
msgid "01000,01000 frames|24"
msgstr "01000,01000 frames|24"
-#: widgets/TimeTextCtrl.cpp:213
+#. i18n-hint: Name of time display format that shows time in hours, minutes,
+#. * seconds and frames at NTSC TV drop-frame rate (used for American /
+#. * Japanese TV, and very odd)
+#: widgets/TimeTextCtrl.cpp:341
msgid "hh:mm:ss + NTSC drop frames"
msgstr "uu:mm:ss + NTSC drop-frames"
-#: widgets/TimeTextCtrl.cpp:214
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and frames with NTSC drop frames. Change the 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
+#. * for seconds and translate 'frames'. Leave the |N alone, it's important!
+#: widgets/TimeTextCtrl.cpp:346
msgid "0100 h 060 m 060 s+.30 frames|N"
msgstr "0100 u 060 m 060 s+.30 frames|N"
-#: widgets/TimeTextCtrl.cpp:215
+#. i18n-hint: Name of time display format that shows time in hours, minutes,
+#. * seconds and frames at NTSC TV non-drop-frame rate (used for American /
+#. * Japanese TV, and doesn't quite match wall time
+#: widgets/TimeTextCtrl.cpp:350
msgid "hh:mm:ss + NTSC non-drop frames"
msgstr "uu:mm:ss + NTSC non-drop frames"
-#: widgets/TimeTextCtrl.cpp:216
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and frames with NTSC drop frames. Change the 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
+#. * for seconds and translate 'frames'. Leave the | .999000999 alone,
+#. * the whole things really is slightly off-speed!
+#: widgets/TimeTextCtrl.cpp:356
msgid "0100 h 060 m 060 s+.030 frames| .999000999"
msgstr "0100 u 060 m 060 s+.030 frames| .999000999"
-#: widgets/TimeTextCtrl.cpp:217
+#. i18n-hint: Name of time display format that shows time in frames at NTSC
+#. * TV frame rate (used for American / Japanese TV
+#: widgets/TimeTextCtrl.cpp:359
msgid "NTSC frames"
msgstr "NTSC-frames"
-#: widgets/TimeTextCtrl.cpp:218
+#. i18n-hint: Format string for displaying time in frames with NTSC frames.
+#. * Translate 'frames' and leave the rest alone. That really is the frame
+#. * rate!
+#: widgets/TimeTextCtrl.cpp:363
msgid "01000,01000 frames|29.97002997"
msgstr "01000,01000 frames|29.97002997"
-#: widgets/TimeTextCtrl.cpp:219
+#. i18n-hint: Name of time display format that shows time in hours, minutes,
+#. * seconds and frames at PAL TV frame rate (used for European TV)
+#: widgets/TimeTextCtrl.cpp:366
msgid "hh:mm:ss + PAL frames (25 fps)"
msgstr "uu:mm:ss + PAL-frames (25 fps)"
-#: widgets/TimeTextCtrl.cpp:220
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and frames with PAL TV frames. Change the 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
+#. * for seconds and translate 'frames'. Nice simple time code!
+#: widgets/TimeTextCtrl.cpp:371
msgid "0100 h 060 m 060 s+.25 frames"
msgstr "0100 u 060 m 060 s+.25 frames"
-#: widgets/TimeTextCtrl.cpp:221
+#. i18n-hint: Name of time display format that shows time in frames at PAL
+#. * TV frame rate (used for European TV
+#: widgets/TimeTextCtrl.cpp:374
msgid "PAL frames (25 fps)"
msgstr "PAL-frames (25 fps)"
-#: widgets/TimeTextCtrl.cpp:222
+#. i18n-hint: Format string for displaying time in frames with NTSC frames.
+#. * Translate 'frames' and leave the rest alone.
+#: widgets/TimeTextCtrl.cpp:377
msgid "01000,01000 frames|25"
msgstr "01000,01000 frames|25"
-#: widgets/TimeTextCtrl.cpp:223
+#. i18n-hint: Name of time display format that shows time in hours, minutes,
+#. * seconds and frames at CD Audio frame rate (75 frames per second)
+#: widgets/TimeTextCtrl.cpp:380
msgid "hh:mm:ss + CDDA frames (75 fps)"
msgstr "uu:mm:ss + CDDA-frames (75 fps)"
-#: widgets/TimeTextCtrl.cpp:224
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and frames with CD Audio frames. Change the 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
+#. * for seconds and translate 'frames'.
+#: widgets/TimeTextCtrl.cpp:385
msgid "0100 h 060 m 060 s+.75 frames"
msgstr "0100 u 060 m 060 s+.75 frames"
-#: widgets/TimeTextCtrl.cpp:225
+#. i18n-hint: Name of time display format that shows time in frames at CD
+#. * Audio frame rate (75 frames per second)
+#: widgets/TimeTextCtrl.cpp:388
msgid "CDDA frames (75 fps)"
msgstr "CDDA-frames (75 fps)"
-#: widgets/TimeTextCtrl.cpp:226
+#. i18n-hint: Format string for displaying time in frames with CD Audio
+#. * frames. Translate 'frames' and leave the rest alone
+#: widgets/TimeTextCtrl.cpp:391
msgid "01000,01000 frames|75"
msgstr "01000,01000 frames|75"
# contextkey is het kleine zwarte driehoekje rechts naast het format
-#: widgets/TimeTextCtrl.cpp:363
+#: widgets/TimeTextCtrl.cpp:470
msgid "Use right mouse button or context key to change format"
msgstr "Gebruik de rechter muisknop of klik op het pijltje om het format te wijzigen"
-# waar wordt dit getoond?
-# tijdbediening/tijdcontrolepaneel/tijdinspectie
-#: widgets/TimeTextCtrl.cpp:1376
-msgid "Time Control"
-msgstr "Tijdsbediening"
-
# melding ipv waarschuwing.
# dit is een vinkje
-#: ../src/widgets/Warning.cpp:53
+#: widgets/Warning.cpp:61
msgid "Don't show this warning again"
msgstr "Deze melding niet meer tonen"
-#: ../src/xml/XMLFileReader.cpp:45
+#: xml/XMLFileReader.cpp:49
#, c-format
msgid "Could not open file: \"%s\""
msgstr "Kon bestand â%sâ niet openen"
@@ -9153,10 +10501,349 @@ msgstr "Kon bestand â%sâ niet openen"
#: xml/XMLFileReader.cpp:63
#, c-format
msgid "Error: %hs at line %lu"
-msgstr ""
+msgstr "Fout: %hs op regel %lu"
#: xml/XMLFileReader.cpp:79
#, c-format
msgid "Could not load file: \"%s\""
msgstr "Kon het bestand: â%sâ niet laden"
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr "Fout bij flushen van bestand"
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr "Fout bij sluiten bestand"
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr "Fout bij schrijven naar bestand"
+
+# Mixen/mix uitvoeren/mixen en berekenen/mixen en opmaken
+# mixen en wegschrijven/mixen en doorrekenen
+#~ msgid "&Mix and Render"
+#~ msgstr "&Mixen en doorrekenen"
+#~ msgid "Tag Name"
+#~ msgstr "Tagnaam"
+#~ msgid "Tag Value"
+#~ msgstr "Tagwaarde"
+#~ msgid "Audio I/O"
+#~ msgstr "Audio in/uit"
+#~ msgid "Portaudio v"
+#~ msgstr "Portaudio v"
+#~ msgid "%d rows, %d columns"
+#~ msgstr "%d rijen, %d kolommen"
+#~ msgid "Row %d"
+#~ msgstr "Rij %d"
+# waar wordt dit getoond?
+# tijdbediening/tijdcontrolepaneel/tijdinspectie
+#~ msgid "Time Control"
+#~ msgstr "Tijdsbediening"
+#~ msgid "&Preferences...\tCtrl+,"
+#~ msgstr "&Voorkeurenâ¦\tCtrl+,"
+#~ msgid "&New\tCtrl+N"
+#~ msgstr "&Nieuw\tCtrl+N"
+#~ msgid "&Open...\tCtrl+O"
+#~ msgstr "&Openenâ¦\tCtrl+O"
+# de 's' werd al gebruikt voor op_slaan
+#~ msgid "&Close\tCtrl+W"
+#~ msgstr "Sl&uiten\tCtrl+W"
+#~ msgid "&Audio...\tCtrl+Shift+I"
+#~ msgstr "&Audioâ¦\tCtrl+Shift+I"
+#~ msgid "CleanSpeech C&hain..."
+#~ msgstr "CleanSpeech C&hain..."
+#~ msgid "E&xit\tCtrl+Q"
+#~ msgstr "A&fsluiten\tCtrl+Q"
+#~ msgid "&Undo\tCtrl+Z"
+#~ msgstr "&Herstellen\tCtrl+Z"
+#~ msgid "Cu&t\tCtrl+X"
+#~ msgstr "K&nippen\tCtrl+X"
+#~ msgid "Spl&it Cut\tCtrl+Alt+X"
+#~ msgstr "Spl&itsen + knippen\tCtrl+Alt+X"
+#~ msgid "&Copy\tCtrl+C"
+#~ msgstr "&Kopiëren\tCtrl+C"
+#~ msgid "&Paste\tCtrl+V"
+#~ msgstr "&Plakken\tCtrl+V"
+# uitknippen, alles wat niet geselecteerd is, wordt afgeknipt
+#~ msgid "Tri&m\tCtrl+T"
+#~ msgstr "&Uitknippen\tCtrl+T"
+#~ msgid "&Delete\tCtrl+K"
+#~ msgstr "&Verwijderen\tCtrl+K"
+#~ msgid "Split D&elete\tCtrl+Alt+K"
+#~ msgstr "Splitsen+v&erwijderen\tCtrl+Alt+K"
+#~ msgid "Sp&lit\tCtrl+I"
+#~ msgstr "Sp&litsen\tCtrl+I"
+#~ msgid "Split Ne&w\tCtrl+Alt+I"
+#~ msgstr "A&fsplitsen\tCtrl+Alt+I"
+# samenvoegen/voegen
+#~ msgid "&Join\tCtrl+J"
+#~ msgstr "S&amenvoegen\tCtrl+J"
+#~ msgid "Duplic&ate\tCtrl+D"
+#~ msgstr "&Dupliceren\tCtrl+D"
+#~ msgid "&Cut\tAlt+X"
+#~ msgstr "K&nippen\tAlt+X"
+#~ msgid "&Split Cut\tShift+Alt+X"
+#~ msgstr "&Splitsen+knippen\tShift+Alt+X"
+#~ msgid "Co&py\tShift+Alt+C"
+#~ msgstr "&Kopiëren\tShift+Alt+C"
+#~ msgid "&Delete\tAlt+K"
+#~ msgstr "&Verwijderen\tAlt+K"
+#~ msgid "Sp&lit Delete\tShift+Alt+K"
+#~ msgstr "Sp&litsen+verwijderen\tShift+Alt+K"
+# Stilmaken voor gelabelde gebieden
+#~ msgid "Sile&nce\tAlt+L"
+#~ msgstr "S&tilmaken\tAlt+L"
+# vergelijk Sp&litsen in het editmenu
+#~ msgid "Spli&t\tAlt+I"
+#~ msgstr "Spli&tsen\tAlt+I"
+#~ msgid "&Join\tAlt+J"
+#~ msgstr "S&amenvoegen\tAlt+J"
+#~ msgid "Detac&h at Silences\tShift+Alt+J"
+#~ msgstr "&Losmaken bij stiltes\tShift+Alt+J"
+#~ msgid "&All\tCtrl+A"
+#~ msgstr "&Alles\tCtrl+A"
+# geen/niets
+#~ msgid "&None\tCtrl+Shift+A"
+#~ msgstr "&Niets\tCtrl+Shift+A"
+#~ msgid "Turn Snap-To On"
+#~ msgstr "Raster (Snap-To) aanzetten"
+#~ msgid "Turn Snap-To Off"
+#~ msgstr "Raster (Snap-To) uitzetten"
+#~ msgid "Turn Grid Snap On"
+#~ msgstr "Raster aanzetten"
+#~ msgid "Turn Grid Snap Off"
+#~ msgstr "Raster uitzetten"
+#~ msgid "Pre&ferences...\tCtrl+,"
+#~ msgstr "&Voorkeurenâ¦\tCtrl+,"
+#~ msgid "Pre&ferences...\tCtrl+P"
+#~ msgstr "&Voorkeurenâ¦\tCtrl+P"
+#~ msgid "Zoom &In\tCtrl+1"
+#~ msgstr "In&zoomen\tCtrl+1"
+#~ msgid "Zoom &Out\tCtrl+3"
+#~ msgstr "&Uitzoomen\tCtrl+3"
+#~ msgid "&Pause\tP"
+#~ msgstr "&Pauzeren\tP"
+#~ msgid "Skip to Start\tHome"
+#~ msgstr "Naar begin springen\tHome"
+#~ msgid "Skip to End\tEnd"
+#~ msgstr "Naar einde springen\tEnd"
+#~ msgid "&Record\tR"
+#~ msgstr "Opnemen\tR"
+#~ msgid "&Audio Track\tCtrl+Shift+N"
+#~ msgstr "&Audiospoor\tCtrl+Shift+N"
+#~ msgid "&UnMute All Tracks\tCtrl+Shift+U"
+#~ msgstr "All&e sporen afspelen\tCtrl+Shift+U"
+#~ msgid "Contrast...\tCtrl+Shift+T"
+#~ msgstr "Contrast...\tCtrl+Shift+T"
+#~ msgid "&Index..."
+#~ msgstr "&Indexâ¦"
+# overal Tool (functie) weglaten en werkwoord gebruiken
+#~ msgid "Selection Tool\tF1"
+#~ msgstr "Selecteren\tF1"
+# Tool (functie) weglaten en werkwoord gebruiken
+#~ msgid "Envelope Tool\tF2"
+#~ msgstr "Verloop\tF2"
+# Overal tool weglaten en werkwoord gebruiken
+#~ msgid "Draw Tool\tF3"
+#~ msgstr "Tekenen\tF3"
+# het woord Tool niet vertalen hier
+#~ msgid "Zoom Tool\tF4"
+#~ msgstr "Zoomen\tF4"
+# Dit is de tooltip en de tekst van de statusbalk.
+# Bij alle andere tools wordt ook het hele werkwoord
+# gebruikt, vandaar dus geen: Tijdverschuiving.
+# Ook het woord Tool is hier met reden niet meevertaald.
+#~ msgid "Time Shift Tool\tF5"
+#~ msgstr "Tijd verschuiven\tF5"
+# combinatie modus/stand
+#~ msgid "Multi Tool\tF6"
+#~ msgstr "Combinatiestand\tF6"
+#~ msgid "Selection to Start\tShift+Home"
+#~ msgstr "Selecteren vanaf Begin\tShift+Home"
+#~ msgid "Selection to End\tShift+End"
+#~ msgstr "Selecteren tot Einde\tCtrl+End"
+#~ msgid "DeleteKey\tBackspace"
+#~ msgstr "DeleteKey\tBackspace"
+#~ msgid "DeleteKey2\tDelete"
+#~ msgstr "DeleteKey2\tDelete"
+#~ msgid "Toggle Focused Track\tNUMPAD_ENTER"
+#~ msgstr "Focus op spoor aan/uit\tNUMPAD_ENTER"
+#~ msgid "Cursor Left\tLeft\tallowdup"
+#~ msgstr "Cursor links\tLeft\tallowdup"
+#~ msgid "Cursor Right\tRight\tallowdup"
+#~ msgstr "Cursor rechts\tRight\tallowdup"
+# uitbreiden/vergroten
+#~ msgid "Selection Extend Left\tShift+Left\tallowdup"
+#~ msgstr "Selectie naar links vergroten\tShift+Left\tallowdup"
+# uitbreiden/vergroten
+#~ msgid "Selection Extend Right\tShift+Right\tallowdup"
+#~ msgstr "Selectie naar rechts vergroten\tShift+Right\tallowdup"
+#~ msgid "Selection Contract Right\tCtrl+Shift+Left"
+#~ msgstr "Selectie naar rechts verkleinen\tCtrl+Shift+Left"
+# laatste effect herhalen
+#~ msgid "Repeat %s\tCtrl+R"
+#~ msgstr "%s herhalen\tCtrl+R"
+# waarvan/waarin
+#~ msgid ""
+#~ "Sorry, VST Effects cannot be performed on stereo tracks where the "
+#~ "individual channels of the track do not match."
+#~ msgstr ""
+#~ "Sorry, VST-effecten kunnen niet worden toegepast op stereosporen waarvan "
+#~ "de individuele kanalen van het spoor niet overeenkomen."
+#~ msgid "Can't process replacing"
+#~ msgstr "Kan vervanging niet verwerken"
+# ipv parameters gewoon instellingen (sander)
+# er staat parameters in het engels, geen settings, maar ik vind
+# instellingen ook beter (tino) Misschien een BUGrapport schrijven?
+#~ msgid "VST Plug-in parameters:"
+#~ msgstr "VST-plugin instellingen:"
+# slimme opname/slim opnemen/exclusief opnemen/intelligent opnemen
+#~ msgid "Smart Recording"
+#~ msgstr "Slim opnemen"
+#~ msgid "Zoom Toggle"
+#~ msgstr "Zoomschakelaar"
+#~ msgid "Play\tSpace"
+#~ msgstr "Afspelen\tSpatie"
+#~ msgid "&Stop\tSpace"
+#~ msgstr "&Stoppen\tSpatie"
+#~ msgid "Stop\tS"
+#~ msgstr "Stoppen\tS"
+#~ msgid "Pause\tP"
+#~ msgstr "Pauzeren\tP"
+#~ msgid "Record\tR"
+#~ msgstr "Opnemen\tR"
+# append = aansluiten
+# Opname wordt begonnen vanaf het einde van de vorige opname (einde van vorige track)
+#~ msgid "Record Append\tShift+R"
+#~ msgstr "Aansluitend opnemen\tShift+R"
+#~ msgid "Play Looped\tL"
+#~ msgstr "Herhaaldelijk afspelen\tL"
+#~ msgid "Play Looped\tShift+Space"
+#~ msgstr "Herhaaldelijk afspelen\tShift+Spatie"
+#~ msgid "Toggle Focused Track\tCtrl+Space"
+#~ msgstr "Focus op spoor aan/uit\tCtrl+Spatie"
+#~ msgid "Soloed track"
+#~ msgstr "Enkele track"
+# notenbalk (sander)
+#~ msgid "Muted track"
+#~ msgstr "Gedempte track"
+#~ msgid "Disallowed for some reason. Try selecting some audio first?"
+#~ msgstr ""
+#~ "Uitgeschakeld om een of andere reden. Probeer eerst wat audio te "
+#~ "selecteren."
+#~ msgid "Hello.\n"
+#~ msgstr "Hallo.\n"
+#~ msgid "WCAG2 Audio Contrast Analyzer"
+#~ msgstr "WCAG2 audio-contrast-analyzer"
+#~ msgid "Note: The 'OK' button resets time values."
+#~ msgstr "Opmerking: de 'OK'-knop zet de tijdswaarden terug op nul."
+#~ msgid "Measuring background"
+#~ msgstr "Achtergrond meten"
+#~ msgid "Measuring foreground"
+#~ msgstr "Voorgrond meten"
+#~ msgid "&Software Playthrough: Play new track while recording it"
+#~ msgstr "&Softwarematig playthrough: Nieuw spoor afspelen tijdens opname"
+#~ msgid ""
+#~ "Playback and Recording device must use the same type, i.e., MME, "
+#~ "DirectSound, etc."
+#~ msgstr ""
+#~ "Afspeel- en opname-apparaat moet van hetzelfde type zijn, zoals MME, "
+#~ "DirectSound, enz."
+#~ msgid "Show / Hide"
+#~ msgstr "Tonen / Verbergen"
+#~ msgid "Show prompt to sa&ve, even if project is empty"
+#~ msgstr "Zelfs bij le&ge projecten prompt tonen om op te slaan"
+#~ msgid "Display range minimum: meters and 'Waveform (dB)'"
+#~ msgstr "Ondergrens weergave bij Vu-meters en âGolfvorm (dB)â"
+#~ msgid "Other interface choices"
+#~ msgstr "Andere interface opties"
+#~ msgid "Conversion"
+#~ msgstr "Conversie"
+#~ msgid "Real-time:"
+#~ msgstr "Real-time:"
+#~ msgid "High-quality:"
+#~ msgstr "Hoge-kwaliteit:"
+#~ msgid "FFT Size"
+#~ msgstr "FFT-grootte"
+#~ msgid "&Grayscale"
+#~ msgstr "&Grijswaarden"
+# afkorting voor number: Nr of Numero
+#~ msgid "No"
+#~ msgstr "Nr"
+#~ msgid "Group with Wave Track"
+#~ msgstr "Groepeer met geluidstrack"
+#~ msgid "Clear any grouping"
+#~ msgstr "Herstel alles wat gegroepeerd is"
+#~ msgid "Real-time sample rate converter:"
+#~ msgstr "Real-time conversie van samplefrequentie:"
+#~ msgid "High-quality sample rate converter:"
+#~ msgstr "Hoge kwaliteit conversie van samplefrequentie:"
+# dither vertaling?
+#~ msgid "Real-time dither:"
+#~ msgstr "Real-time dither:"
+# vertaling van dither?
+# afronding (sander)
+#~ msgid "High-quality dither:"
+#~ msgstr "Hoge kwaliteit afronding:"
+#~ msgid "Changing block %s\n"
+#~ msgstr "Aanpassen van blok %s\n"
+#~ msgid "Download..."
+#~ msgstr "Downloadenâ¦"
+# F2/op F2
+# om de inhoud van de cel te bewerken/om te bewerken
+#~ msgid "Press F2 or double click to edit."
+#~ msgstr "Toets F2 of dubbelklik om te bewerken."
+#~ msgid "Title:"
+#~ msgstr "Titel:"
+#~ msgid "Artist:"
+#~ msgstr "Artiest:"
+#~ msgid "Album:"
+#~ msgstr "Album:"
+#~ msgid "Composer:"
+#~ msgstr "Componist:"
+#~ msgid "Lyricist:"
+#~ msgstr "Tekstschrijver:"
+#~ msgid "Comments:"
+#~ msgstr "Opmerkingen:"
+#~ msgid "Encoded By:"
+#~ msgstr "Gecodeerd met:"
+#~ msgid "Copyright:"
+#~ msgstr "Copyright:"
+#~ msgid "Track Number:"
+#~ msgstr "Spoornummer:"
+#~ msgid "Year:"
+#~ msgstr "Jaar:"
+#~ msgid "Genre:"
+#~ msgstr "Genre:"
+#~ msgid "No Genres"
+#~ msgstr "Geen genres"
+#~ msgid "Reset to Defaults"
+#~ msgstr "H&erstellen naar standaardlijst"
+# eenvoudig/simpel
+#~ msgid "Basic"
+#~ msgstr "Eenvoudig"
+# extra/geavanceerd
+#~ msgid "Advanced"
+#~ msgstr "Geavanceerd"
+#~ msgid "Clea&r"
+#~ msgstr "&Wissen"
+#~ msgid ""
+#~ "Maximum length of attribute '%s' is %d characters. Data was truncated."
+#~ msgstr "Maximumlengte van attribuut â%sâ is %d tekens. Data afgekapt."
+#~ msgid "Title"
+#~ msgstr "Titel"
+#~ msgid "Artist"
+#~ msgstr "Artiest"
+#~ msgid "Album"
+#~ msgstr "Album"
+#, fuzzy
+#~ msgid "Fail"
+#~ msgstr "Bestand"
+
+# dit is een tabbladtitel
+# het is geen info of het bouwen, maar over het programma
+#, fuzzy
+#~ msgid "WCAG Information on web"
+#~ msgstr "Programma-informatie"
+
diff --git a/locale/oc.po b/locale/oc.po
index 32d8087..5f09c2e 100644
--- a/locale/oc.po
+++ b/locale/oc.po
@@ -25,11 +25,11 @@ msgid "Audacity is a free program written by a team of volunteer <a href=\"http:
msgstr ""
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#. i18n-hint: The translation of "translator_credits" will appear
@@ -81,7 +81,7 @@ msgid "Special thanks:"
msgstr "Mercejaments particulièrs :"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
msgstr ""
#: AboutDialog.cpp:320
@@ -192,18 +192,13 @@ msgstr ""
msgid "GPL License"
msgstr ""
-#: ../src/AudacityApp.cpp:304
-#: ../src/Project.cpp:1770
+#: ../src/AudacityApp.cpp:304 ../src/Project.cpp:1770
#, c-format
msgid "%s is already open in another window."
msgstr "%s est déjà ouvert dans une autre fenêtre."
-#: ../src/AudacityApp.cpp:306
-#: ../src/Project.cpp:1772
-#: ../src/Project.cpp:1843
-#: ../src/Project.cpp:1894
-#: ../src/Project.cpp:1905
-#: ../src/Project.cpp:1943
+#: ../src/AudacityApp.cpp:306 ../src/Project.cpp:1772 ../src/Project.cpp:1843
+#: ../src/Project.cpp:1894 ../src/Project.cpp:1905 ../src/Project.cpp:1943
msgid "Error opening project"
msgstr "Error de dubèrtura de projècte"
@@ -228,10 +223,20 @@ msgstr "Vistm
msgid "Output Meter"
msgstr "Vistmètre de sortida"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
+#: ../src/Menus.cpp:141
+msgid "&New"
+msgstr "&Novèl"
+
+#: ../src/Menus.cpp:143
+msgid "&Open..."
+msgstr "&Dubrir..."
+
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
+
#: AudacityApp.cpp:534 Menus.cpp:575
-msgid "&Preferences...\tCtrl+,"
+msgid "&Preferences..."
msgstr ""
#: AudacityApp.cpp:617 AudacityApp.cpp:702
@@ -352,14 +357,14 @@ msgstr "Error :"
msgid "Error Initializing Audio"
msgstr "Error d'initialisacion audio"
-#: AudioIO.cpp:1236
-msgid "Latency problem"
+#: AudioIO.cpp:1225
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
+"Audacity has brought it back to start at zero.\n"
+"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
msgstr ""
#: AudioIO.cpp:1236
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
-"Audacity has brought it back to start at zero.\n"
-"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
+msgid "Latency problem"
msgstr ""
#: AutoRecovery.cpp:40
@@ -408,10 +413,8 @@ msgstr ""
msgid "Could not enumerate files in auto save directory"
msgstr ""
-#: ../src/ControlToolBar.cpp:723
-#: ../src/ControlToolBar.cpp:884
-#: ../src/effects/Effect.cpp:331
-#: ../src/prefs/DirectoriesPrefs.cpp:204
+#: ../src/ControlToolBar.cpp:723 ../src/ControlToolBar.cpp:884
+#: ../src/effects/Effect.cpp:331 ../src/prefs/DirectoriesPrefs.cpp:204
msgid "Error"
msgstr "Error"
@@ -587,8 +590,9 @@ msgstr ""
msgid "C&hain (Double-Click or press SPACE to edit)"
msgstr ""
-#: BatchProcessDialog.cpp:450
-msgid "No"
+#. i18n-hint: This is the number of the command in the list
+#: BatchProcessDialog.cpp:453
+msgid "Num"
msgstr ""
#: BatchProcessDialog.cpp:456
@@ -909,11 +913,11 @@ msgstr "Rectangular"
msgid "FFmpeg support not compiled in"
msgstr ""
-#: FFmpeg.cpp:101
+#: FFmpeg.cpp:103
msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
#: FFmpeg.cpp:104
@@ -971,11 +975,12 @@ msgstr ""
msgid "FFmpeg not found"
msgstr ""
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
#: FFmpeg.h:109
@@ -1059,13 +1064,24 @@ msgstr ""
msgid "Export"
msgstr ""
-#: ../src/Benchmark.cpp:223
-#: ../src/FreqWindow.cpp:123
-#: ../src/effects/ClickRemoval.cpp:371
-#: ../src/effects/NoiseRemoval.cpp:463
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
+#: ../src/Benchmark.cpp:223 ../src/FreqWindow.cpp:123
+#: ../src/effects/ClickRemoval.cpp:371 ../src/effects/NoiseRemoval.cpp:463
msgid "Close"
msgstr "Barrar"
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr ""
+
#: FreqWindow.cpp:270 FreqWindow.cpp:393 effects/AutoDuck.cpp:487
#: effects/AutoDuck.cpp:521 effects/AutoDuck.cpp:799
#: effects/Compressor.cpp:348 effects/Compressor.cpp:356
@@ -1081,6 +1097,15 @@ msgstr ""
msgid "Hz"
msgstr "Hz"
+#: Menus.cpp:3452
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr ""
+
+#: Menus.cpp:3478
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr ""
+
#: ../src/FreqWindow.cpp:463
msgid "Not enough data selected."
msgstr "Pas pro de donadas seleccionadas"
@@ -1107,9 +1132,7 @@ msgstr ""
msgid "Export Spectral Data As:"
msgstr "Exportar las donadas espectralas jos :"
-#: ../src/FreqWindow.cpp:1014
-#: ../src/Menus.cpp:1393
-#: ../src/Project.cpp:2159
+#: ../src/FreqWindow.cpp:1014 ../src/Menus.cpp:1393 ../src/Project.cpp:2159
#: ../src/prefs/KeyConfigPrefs.cpp:173
msgid "Couldn't write to file: "
msgstr "Impossible d'enregistrar lo fichièr : "
@@ -1122,6 +1145,21 @@ msgstr "Frequ
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "Desencalatge (segondas)\tFrequéncia (Hz)\tNivèl"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr ""
+
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr ""
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr ""
@@ -1199,7 +1237,7 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr ""
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
msgstr ""
#: HelpText.cpp:244
@@ -1223,7 +1261,7 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr ""
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
msgstr ""
#: HelpText.cpp:383
@@ -1292,6 +1330,14 @@ msgstr ""
msgid "GB"
msgstr ""
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
#: LabelDialog.cpp:50
msgid "Track"
msgstr ""
@@ -1351,9 +1397,7 @@ msgstr "Causir un fichi
msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
msgstr ""
-#: ../src/Menus.cpp:2647
-#: ../src/Project.cpp:1820
-#: ../src/Project.cpp:1828
+#: ../src/Menus.cpp:2647 ../src/Project.cpp:1820 ../src/Project.cpp:1828
#: ../src/import/ImportMIDI.cpp:31
msgid "Could not open file: "
msgstr "Impossible de dubrir lo fichièr : "
@@ -1407,21 +1451,13 @@ msgstr "Dubertura d'un proj
msgid "&File"
msgstr "&Fichièr"
-#: ../src/Menus.cpp:141
-msgid "&New\tCtrl+N"
-msgstr "&Novèl\tCtrl+N"
-
-#: ../src/Menus.cpp:143
-msgid "&Open...\tCtrl+O"
-msgstr "&Dubrir...\tCtrl+O"
-
#: ../src/Menus.cpp:145
-msgid "&Close\tCtrl+W"
-msgstr "&Barrar\tCtrl+W"
+msgid "&Close"
+msgstr "&Barrar"
#: ../src/Menus.cpp:146
-msgid "&Save Project\tCtrl+S"
-msgstr "&Enregistrar lo projècte\tCtrl+S"
+msgid "&Save Project"
+msgstr "&Enregistrar lo projècte"
#: ../src/Menus.cpp:150
msgid "Save Project &As..."
@@ -1444,7 +1480,7 @@ msgid "&Import"
msgstr ""
#: Menus.cpp:236
-msgid "&Audio...\tCtrl+Shift+I"
+msgid "&Audio..."
msgstr ""
#: Menus.cpp:237
@@ -1475,8 +1511,8 @@ msgstr "Exp
msgid "Export MIDI..."
msgstr ""
-#: Menus.cpp:290
-msgid "CleanSpeech C&hain..."
+#: Menus.cpp:352
+msgid "Appl&y Chain..."
msgstr ""
#: Menus.cpp:340 Menus.cpp:354
@@ -1491,10 +1527,6 @@ msgstr ""
msgid "I&mport CleanSpeech Presets..."
msgstr ""
-#: Menus.cpp:352
-msgid "Appl&y Chain..."
-msgstr ""
-
#: Menus.cpp:358
msgid "&Upload File..."
msgstr ""
@@ -1509,7 +1541,7 @@ msgid "&Print..."
msgstr ""
#: Menus.cpp:382 Menus.cpp:385
-msgid "E&xit\tCtrl+Q"
+msgid "E&xit"
msgstr ""
#: ../src/Menus.cpp:227
@@ -1517,63 +1549,63 @@ msgid "&Edit"
msgstr "&Edicion"
#: ../src/Menus.cpp:231
-msgid "&Undo\tCtrl+Z"
-msgstr "&Anullar\tCtrl+Z"
+msgid "&Undo"
+msgstr "&Anullar"
#: ../src/Menus.cpp:239
msgid "&Redo"
msgstr "&Tornar far"
#: ../src/Menus.cpp:252
-msgid "Cu&t\tCtrl+X"
-msgstr "Co&par\tCtrl+X"
+msgid "Cu&t"
+msgstr "Co&par"
#: Menus.cpp:420
-msgid "Spl&it Cut\tCtrl+Alt+X"
+msgid "Spl&it Cut"
msgstr ""
#: ../src/Menus.cpp:253
-msgid "&Copy\tCtrl+C"
-msgstr "&Copiar\tCtrl+C"
+msgid "&Copy"
+msgstr "&Copiar"
#: ../src/Menus.cpp:254
-msgid "&Paste\tCtrl+V"
-msgstr "&Empegar\tCtrl+V"
+msgid "&Paste"
+msgstr "&Empegar"
#: Menus.cpp:426
-msgid "Tri&m\tCtrl+T"
+msgid "Tri&m"
msgstr ""
#: ../src/Menus.cpp:260
-msgid "&Delete\tCtrl+K"
-msgstr "&Escafar\tCtrl+K"
+msgid "&Delete"
+msgstr "&Escafar"
#: Menus.cpp:429
-msgid "Split D&elete\tCtrl+Alt+K"
+msgid "Split D&elete"
msgstr ""
#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
+msgid "Silence Audi&o"
msgstr ""
#: Menus.cpp:432
-msgid "Sp&lit\tCtrl+I"
+msgid "Sp&lit"
msgstr ""
#: Menus.cpp:342
-msgid "Split Ne&w\tCtrl+Alt+I"
+msgid "Split Ne&w"
msgstr ""
#: Menus.cpp:442
-msgid "&Join\tCtrl+J"
+msgid "&Join"
msgstr ""
#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
+msgid "Detac&h at Silences"
msgstr ""
#: Menus.cpp:445
-msgid "Duplic&ate\tCtrl+D"
+msgid "Duplic&ate"
msgstr ""
#: Menus.cpp:400 Menus.cpp:639
@@ -1586,47 +1618,32 @@ msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:460
-msgid "&Cut\tAlt+X"
+msgid "&Cut"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:465
-msgid "&Split Cut\tShift+Alt+X"
+msgid "&Split Cut"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:470
-msgid "Co&py\tShift+Alt+C"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:476
-msgid "&Delete\tAlt+K"
+msgid "Co&py"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:481
-msgid "Sp&lit Delete\tShift+Alt+K"
+msgid "Sp&lit Delete"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:486
-msgid "Sile&nce\tAlt+L"
+msgid "Sile&nce"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:492
-msgid "Spli&t\tAlt+I"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:497
-msgid "&Join\tAlt+J"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
+msgid "Spli&t"
msgstr ""
#: Menus.cpp:456
@@ -1634,33 +1651,33 @@ msgid "&Select"
msgstr ""
#: ../src/Menus.cpp:269
-msgid "&All\tCtrl+A"
-msgstr "&Tot selectionar\tCtrl+A"
+msgid "&All"
+msgstr "&Tot selectionar"
#: Menus.cpp:415
-msgid "&None\tCtrl+Shift+A"
+msgid "&None"
msgstr ""
#: Menus.cpp:462
-msgid "&Left at Playback Position\t["
+msgid "&Left at Playback Position"
msgstr ""
#: Menus.cpp:463
-msgid "&Right at Playback Position\t]"
+msgid "&Right at Playback Position"
msgstr ""
#: Menus.cpp:467
-msgid "Track &Start to Cursor\tShift+J"
+msgid "Track &Start to Cursor"
msgstr ""
#: Menus.cpp:468
-msgid "Cursor to Track &End\tShift+K"
+msgid "Cursor to Track &End"
msgstr ""
#: Menus.cpp:525
#, fuzzy
-msgid "Find &Zero Crossings\tZ"
-msgstr "Cercar las crosadas amb lo zerò\tZ"
+msgid "Find &Zero Crossings"
+msgstr "Cercar las crosadas amb lo zerò"
#: Menus.cpp:476
msgid "Mo&ve Cursor"
@@ -1675,11 +1692,11 @@ msgid "to Selection En&d"
msgstr ""
#: Menus.cpp:483
-msgid "to Track &Start\tJ"
+msgid "to Track &Start"
msgstr ""
#: Menus.cpp:484
-msgid "to Track &End\tK"
+msgid "to Track &End"
msgstr ""
#: Menus.cpp:491
@@ -1702,29 +1719,8 @@ msgstr ""
msgid "&Unlock"
msgstr ""
-#: Menus.cpp:567
-msgid "Turn Snap-To On"
-msgstr ""
-
-#: Menus.cpp:568
-msgid "Turn Snap-To Off"
-msgstr ""
-
-#: Menus.cpp:569
-msgid "Turn Grid Snap On"
-msgstr ""
-
-#: Menus.cpp:570
-msgid "Turn Grid Snap Off"
-msgstr ""
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr ""
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
+msgid "Pre&ferences..."
msgstr ""
#: ../src/Menus.cpp:345
@@ -1732,35 +1728,35 @@ msgid "&View"
msgstr "&Afichatge"
#: Menus.cpp:591
-msgid "Zoom &In\tCtrl+1"
+msgid "Zoom &In"
msgstr ""
#: Menus.cpp:594
-msgid "Zoom &Normal\tCtrl+2"
+msgid "Zoom &Normal"
msgstr ""
#: Menus.cpp:595
-msgid "Zoom &Out\tCtrl+3"
+msgid "Zoom &Out"
msgstr ""
#: ../src/Menus.cpp:354
-msgid "&Fit in Window\tCtrl+F"
-msgstr "&Ajustar a la fenèstra\tCtrl+F"
+msgid "&Fit in Window"
+msgstr "&Ajustar a la fenèstra"
#: ../src/Menus.cpp:355
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "Afichar totas las pistas\tCtrl+Maj+F"
+msgid "Fit &Vertically"
+msgstr "Afichar totas las pistas"
#: ../src/Menus.cpp:356
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "&Zoom de la seleccion\tCtrl+E"
+msgid "&Zoom to Selection"
+msgstr "&Zoom de la seleccion"
#: Menus.cpp:603
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
+msgid "&Collapse All Tracks"
msgstr ""
#: Menus.cpp:604
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
+msgid "E&xpand All Tracks"
msgstr ""
#: Menus.cpp:551
@@ -1822,39 +1818,39 @@ msgid "T&ransport"
msgstr ""
#: Menus.cpp:591
-msgid "Play\tSpace"
+msgid "Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
+msgid "&Loop Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Pause\tP"
+msgid "&Pause"
msgstr ""
#: Menus.cpp:596
-msgid "&Stop\tSpace"
+msgid "&Stop"
msgstr ""
#: ../src/Menus.cpp:569
-msgid "Skip to Start\tHome"
-msgstr "Enrèire a la començança\tComençança"
+msgid "Skip to Start"
+msgstr "Enrèire a la començança"
#: ../src/Menus.cpp:570
-msgid "Skip to End\tEnd"
-msgstr "Anar a la fin\tFin"
+msgid "Skip to End"
+msgstr "Anar a la fin"
#: Menus.cpp:600
-msgid "&Record\tR"
+msgid "&Record"
msgstr ""
#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
+msgid "&Timer Record..."
msgstr ""
#: Menus.cpp:604
-msgid "Append Record\tShift+R"
+msgid "Append Record"
msgstr ""
#: Menus.cpp:607
@@ -1882,7 +1878,7 @@ msgid "Add &New"
msgstr ""
#: Menus.cpp:643
-msgid "&Audio Track\tCtrl+Shift+N"
+msgid "&Audio Track"
msgstr ""
#: Menus.cpp:644
@@ -1898,7 +1894,7 @@ msgid "Mi&x and Render"
msgstr ""
#: Menus.cpp:564
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
+msgid "Mix and Render to New Track"
msgstr ""
#: Menus.cpp:662
@@ -1910,11 +1906,11 @@ msgid "Remo&ve Tracks"
msgstr "Suprimir la (las) pista(s)"
#: Menus.cpp:667
-msgid "&Mute All Tracks\tCtrl+U"
+msgid "&Mute All Tracks"
msgstr ""
#: Menus.cpp:668
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
+msgid "&UnMute All Tracks"
msgstr ""
#: ../src/Menus.cpp:405
@@ -1965,19 +1961,18 @@ msgstr ""
msgid "Synchronize MIDI with Audio"
msgstr ""
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
+#: Menus.cpp:686
+msgid "&Link Audio and Label Tracks"
msgstr ""
-#: Menus.cpp:705
-#, fuzzy
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "Apondre una marca a la seleccion\tCtrl+B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr ""
#: Menus.cpp:706
#, fuzzy
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "Apondre una marca al punt de lectura\tCtrl+M"
+msgid "Add Label At &Playback Position"
+msgstr "Apondre una marca al punt de lectura"
#: Menus.cpp:716
msgid "S&ort tracks"
@@ -2003,21 +1998,20 @@ msgstr ""
msgid "Effe&ct"
msgstr "Efiè&ch"
-#: ../src/Menus.cpp:468
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "Repetir lo darrièr efièch\tCtrl+R"
-
#: ../src/Menus.cpp:494
msgid "&Analyze"
msgstr "&Analisi"
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
+
#: Menus.cpp:692
msgid "Plot Spectrum..."
msgstr ""
#. i18n-hint: The name of the Help menu
-#: ../src/Menus.cpp:524
-#: ../src/Menus.cpp:540
+#: ../src/Menus.cpp:524 ../src/Menus.cpp:540
msgid "&Help"
msgstr "&Ajuda"
@@ -2029,8 +2023,8 @@ msgstr ""
msgid "&Show Welcome Message..."
msgstr ""
-#: Menus.cpp:736
-msgid "&Index..."
+#: Menus.cpp:958
+msgid "&Help..."
msgstr ""
#: Menus.cpp:959
@@ -2049,181 +2043,149 @@ msgstr "&Lan
msgid "&Audio Device Info..."
msgstr ""
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
msgstr ""
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
msgstr ""
#: ../src/Menus.cpp:549
-msgid "Selection Tool\tF1"
-msgstr "Aisina·de·seleccion\tF1"
+msgid "Selection Tool"
+msgstr "Aisina·de·seleccion"
#: ../src/Menus.cpp:550
-msgid "Envelope Tool\tF2"
-msgstr "Aisina·de·nivèl·(envolopa)\tF2"
+msgid "Envelope Tool"
+msgstr "Aisina·de·nivèl·(envolopa)"
#: ../src/Menus.cpp:551
-msgid "Draw Tool\tF3"
-msgstr "Aisina·de·dessenh·d'ondas\tF3"
+msgid "Draw Tool"
+msgstr "Aisina·de·dessenh·d'ondas"
#: Menus.cpp:855
-msgid "Zoom Tool\tF4"
+msgid "Zoom Tool"
msgstr ""
#: Menus.cpp:856
-msgid "Time Shift Tool\tF5"
+msgid "Time Shift Tool"
msgstr ""
#: ../src/Menus.cpp:554
-msgid "Multi Tool\tF6"
-msgstr "Mòde·multi-aisinas\tF6"
+msgid "Multi Tool"
+msgstr "Mòde·multi-aisinas"
#: ../src/Menus.cpp:556
-msgid "Next Tool\tD"
-msgstr "Aisina seguenta\tD"
+msgid "Next Tool"
+msgstr "Aisina seguenta"
#: ../src/Menus.cpp:557
-msgid "Previous Tool\tA"
-msgstr "Aisina precedenta\tA"
+msgid "Previous Tool"
+msgstr "Aisina precedenta"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
-msgstr ""
-
-#: Menus.cpp:863
-msgid "Stop\tS"
-msgstr ""
-
-#: ../src/Menus.cpp:561
-msgid "Pause\tP"
-msgstr "Pausa\tP"
-
-#: ../src/Menus.cpp:562
-msgid "Record\tR"
-msgstr "Enregistrar\tR"
-
-#: Menus.cpp:999
-msgid "Record Append\tShift+R"
+msgid "Play/Stop"
msgstr ""
#: Menus.cpp:1001
-msgid "Play/Stop and Set Cursor\tShift+A"
+msgid "Play/Stop and Set Cursor"
msgstr ""
#: ../src/Menus.cpp:564
-msgid "Play One Second\t1"
-msgstr "Legir una segonda\t1"
+msgid "Play One Second"
+msgstr "Legir una segonda"
#: ../src/Menus.cpp:565
-msgid "Play To Selection\tB"
-msgstr "Legir fins a la seleccion\tB"
-
-#: ../src/Menus.cpp:566
-msgid "Play Looped\tL"
-msgstr "Lectura en bocla\tL"
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
+msgid "Play To Selection"
+msgstr "Legir fins a la seleccion"
#: Menus.cpp:873
-msgid "Play Cut Preview\tC"
+msgid "Play Cut Preview"
msgstr ""
#: ../src/Menus.cpp:572
-msgid "Selection to Start\tShift+Home"
-msgstr "Seleccionar dempuèi la començança\tMaj.t+Començança"
+msgid "Selection to Start"
+msgstr "Seleccionar dempuèi la començança"
#: ../src/Menus.cpp:573
-msgid "Selection to End\tShift+End"
-msgstr "Seleccionar fins a la fin\tMaj.+Fin"
+msgid "Selection to End"
+msgstr "Seleccionar fins a la fin"
#: ../src/Menus.cpp:575
-msgid "DeleteKey\tBackspace"
-msgstr "Clau d'escafament\tTornar en arrièr"
+msgid "DeleteKey"
+msgstr "Clau d'escafament"
#: ../src/Menus.cpp:580
-msgid "DeleteKey2\tDelete"
-msgstr "Clau d'escafament2\tSupprimir"
+msgid "DeleteKey2"
+msgstr "Clau d'escafament2"
-#: Menus.cpp:892
-msgid "Seek left short period during playback\tLeft"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
msgstr ""
-#: Menus.cpp:893
-msgid "Seek right short period during playback\tRight"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
msgstr ""
-#: Menus.cpp:894
-msgid "Seek left long period during playback\tShift+Left"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
msgstr ""
-#: Menus.cpp:895
-msgid "Seek right long period during playback\tShift+Right"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
msgstr ""
#: Menus.cpp:899
-msgid "Move Focus to Previous Track\tUp"
+msgid "Move Focus to Previous Track"
msgstr ""
-#: Menus.cpp:900
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
msgstr ""
#: Menus.cpp:901
-msgid "Move Focus to Next Track\tDown"
+msgid "Move Focus to Next Track"
msgstr ""
-#: Menus.cpp:902
-msgid "Move Focus to Next and Change Selection\tShift+Down"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
msgstr ""
#: Menus.cpp:903
-msgid "Toggle Focused Track\tReturn"
-msgstr ""
-
-#: Menus.cpp:904
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr ""
-
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
+msgid "Toggle Focused Track"
msgstr ""
#: ../src/Menus.cpp:585
-msgid "Cursor Left\tLeft"
-msgstr "Cursor Esquèrra\tEsquèrra"
+msgid "Cursor Left"
+msgstr "Cursor Esquèrra"
#: ../src/Menus.cpp:586
-msgid "Cursor Right\tRight"
-msgstr "Cursor Drecha\tDrecha"
+msgid "Cursor Right"
+msgstr "Cursor Drecha"
#: Menus.cpp:820
-msgid "Cursor Short Jump Left\t,"
+msgid "Cursor Short Jump Left"
msgstr ""
#: Menus.cpp:821
-msgid "Cursor Short Jump Right\t."
+msgid "Cursor Short Jump Right"
msgstr ""
#: Menus.cpp:822
-msgid "Cursor Long Jump Left\tShift+,"
+msgid "Cursor Long Jump Left"
msgstr ""
#: Menus.cpp:823
-msgid "Cursor Long Jump Right\tShift+."
+msgid "Cursor Long Jump Right"
msgstr ""
#: ../src/Menus.cpp:587
-msgid "Selection Extend Left\tShift+Left"
-msgstr "Ampliar la seleccion a esquèrra\tMaj+esquèrra"
+msgid "Selection Extend Left"
+msgstr "Ampliar la seleccion a esquèrra"
#: ../src/Menus.cpp:588
-msgid "Selection Extend Right\tShift+Right"
-msgstr "Ampliar la seleccion a drecha\tMaj+Drecha"
+msgid "Selection Extend Right"
+msgstr "Ampliar la seleccion a drecha"
#: Menus.cpp:828
msgid "Set (or Extend) Left Selection"
@@ -2234,51 +2196,51 @@ msgid "Set (or Extend) Right Selection"
msgstr ""
#: ../src/Menus.cpp:589
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "Reduire la seleccion a esquèrra\tCtrl+Maj+Drecha"
+msgid "Selection Contract Left"
+msgstr "Reduire la seleccion a esquèrra"
#: ../src/Menus.cpp:590
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "Reduire la seleccion a drecha\tCtrl+Maj+Esquèrra"
+msgid "Selection Contract Right"
+msgstr "Reduire la seleccion a drecha"
#: Menus.cpp:916
-msgid "Change pan on focused track\tShift+P"
+msgid "Change pan on focused track"
msgstr ""
#: Menus.cpp:917
-msgid "Pan left on focused track\tAlt+Shift+Left"
+msgid "Pan left on focused track"
msgstr ""
#: Menus.cpp:918
-msgid "Pan right on focused track\tAlt+Shift+Right"
+msgid "Pan right on focused track"
msgstr ""
#: Menus.cpp:919
-msgid "Change gain on focused track\tShift+G"
+msgid "Change gain on focused track"
msgstr ""
#: Menus.cpp:920
-msgid "Increase gain on focused track\tAlt+Shift+Up"
+msgid "Increase gain on focused track"
msgstr ""
#: Menus.cpp:921
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
+msgid "Decrease gain on focused track"
msgstr ""
#: Menus.cpp:922
-msgid "Open menu on focused track\tShift+M"
+msgid "Open menu on focused track"
msgstr ""
#: Menus.cpp:923
-msgid "Mute/Unmute focused track\tShift+U"
+msgid "Mute/Unmute focused track"
msgstr ""
#: Menus.cpp:924
-msgid "Solo/Unsolo focused track\tShift+S"
+msgid "Solo/Unsolo focused track"
msgstr ""
#: Menus.cpp:925
-msgid "Close focused track\tShift+C"
+msgid "Close focused track"
msgstr ""
#: Menus.cpp:845
@@ -2290,7 +2252,35 @@ msgid "Snap To Off"
msgstr ""
#: Menus.cpp:1071
-msgid "Full screen on/off\tF11"
+msgid "Full screen on/off"
+msgstr ""
+
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr ""
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr ""
+
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr ""
+
+#: Menus.cpp:1074
+msgid "Adjust input source"
msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
@@ -2351,8 +2341,8 @@ msgstr ""
#: ../src/Menus.cpp:1248
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "Répéter %s\tCtrl+R"
+msgid "Repeat %s"
+msgstr "Répéter %s"
#: Menus.cpp:2171
msgid "There are no label tracks to export."
@@ -2383,8 +2373,7 @@ msgstr "Ren d'anullar"
msgid "Nothing to redo"
msgstr "Ren de tornar far"
-#: ../src/EditToolBar.cpp:148
-#: ../src/Menus.cpp:1713
+#: ../src/EditToolBar.cpp:148 ../src/Menus.cpp:1713
msgid "Cut"
msgstr "Copar"
@@ -2400,9 +2389,7 @@ msgstr ""
msgid "Split-cut to the clipboard"
msgstr ""
-#: ../src/EditToolBar.cpp:152
-#: ../src/Menus.cpp:1818
-#: ../src/Menus.cpp:1862
+#: ../src/EditToolBar.cpp:152 ../src/Menus.cpp:1818 ../src/Menus.cpp:1862
msgid "Paste"
msgstr "Empegar"
@@ -2410,8 +2397,7 @@ msgstr "Empegar"
msgid "Pasted text from the clipboard"
msgstr ""
-#: ../src/Menus.cpp:1818
-#: ../src/Menus.cpp:1862
+#: ../src/Menus.cpp:1818 ../src/Menus.cpp:1862
msgid "Pasted from the clipboard"
msgstr "Empegar dins del pòrtapapièr"
@@ -2463,8 +2449,7 @@ msgstr ""
msgid "Silenced selected tracks for %.2f seconds at %.2f"
msgstr "Pistas seleccionadas tornadas mudas de %.2f segondas a %.2f"
-#: ../src/Menus.cpp:1928
-#: ../src/effects/Silence.h:33
+#: ../src/Menus.cpp:1928 ../src/effects/Silence.h:33
msgid "Silence"
msgstr "Silenci"
@@ -2564,15 +2549,6 @@ msgstr ""
msgid "Split at labels"
msgstr ""
-#: Menus.cpp:3452
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr ""
-
-#: Menus.cpp:3478
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr ""
-
#: ../src/Menus.cpp:2660
#, c-format
msgid "Imported labels from '%s'"
@@ -2690,9 +2666,7 @@ msgstr ""
msgid "Created new audio track"
msgstr "Novèla·pista audiò creada"
-#: ../src/Menus.cpp:2977
-#: ../src/Menus.cpp:3001
-#: ../src/Menus.cpp:3016
+#: ../src/Menus.cpp:2977 ../src/Menus.cpp:3001 ../src/Menus.cpp:3016
#: ../src/Menus.cpp:3052
msgid "New Track"
msgstr "Novèla pista"
@@ -2774,8 +2748,7 @@ msgstr ""
msgid "Resampled audio track(s)"
msgstr ""
-#: ../src/Mix.cpp:74
-#: ../src/Mix.cpp:82
+#: ../src/Mix.cpp:74 ../src/Mix.cpp:82
msgid "Mix"
msgstr "Mescla"
@@ -2795,6 +2768,10 @@ msgstr ""
msgid "Print"
msgstr "Estampar"
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr ""
+
#: Project.cpp:573
msgid "Main Mix"
msgstr ""
@@ -2808,14 +2785,11 @@ msgstr ""
msgid "(Recovered)"
msgstr ""
-#: ../src/ControlToolBar.cpp:469
-#: ../src/Project.cpp:1707
-#: ../src/TrackPanel.cpp:1208
+#: ../src/Menus.cpp:562
msgid "Record"
-msgstr "Enregistrament"
+msgstr "Enregistrar"
-#: ../src/Project.cpp:1707
-#: ../src/TrackPanel.cpp:1208
+#: ../src/Project.cpp:1707 ../src/TrackPanel.cpp:1208
msgid "Recorded Audio"
msgstr "Audio gravat"
@@ -2836,12 +2810,11 @@ msgstr ""
msgid "Save changes?"
msgstr "Enregistrar las modificacions ?"
-#: Project.cpp:1684
-msgid "All files|*.*|All supported files|"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
msgstr ""
-#: ../src/Menus.cpp:2595
-#: ../src/Project.cpp:1738
+#: ../src/Menus.cpp:2595 ../src/Project.cpp:1738
msgid "Select one or more audio files..."
msgstr "Causir un o mantun fichièrs audio..."
@@ -2868,8 +2841,18 @@ msgstr ""
msgid "Opening old project file"
msgstr ""
-#: ../src/Project.cpp:1821
-#: ../src/Project.cpp:1829
+#: Project.cpp:2073
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr ""
+
+#: ../src/Project.cpp:1821 ../src/Project.cpp:1829
msgid "Error opening file"
msgstr "Error de dubèrtura de fichièr"
@@ -2923,10 +2906,12 @@ msgstr ""
msgid "Can't open project file"
msgstr "Impossible de dubrir lo fichièr projècte"
-#: Project.cpp:2314
+#: Project.cpp:2484
#, c-format
msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
msgstr ""
@@ -2946,17 +2931,22 @@ msgstr ""
msgid "Warning empty project"
msgstr ""
-#: Project.cpp:2591
+#: Project.cpp:2792
#, c-format
msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+"is not writable or the disk is full."
msgstr ""
-#: ../src/Project.cpp:2148
-#: ../src/Project.cpp:2160
+#: ../src/Project.cpp:2148 ../src/Project.cpp:2160
msgid "Error saving project"
msgstr "Error d'enregistrament del projècte"
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
#: ../src/Project.cpp:2200
#, c-format
msgid "Saved %s"
@@ -2967,10 +2957,8 @@ msgstr " %s enregistr
msgid "Imported '%s'"
msgstr " '%s' importat"
-#: ../src/Project.cpp:2236
-#: ../src/Project.cpp:2283
-#: ../src/import/ImportPCM.cpp:403
-#: ../src/import/ImportPCM.cpp:488
+#: ../src/Project.cpp:2236 ../src/Project.cpp:2283
+#: ../src/import/ImportPCM.cpp:403 ../src/import/ImportPCM.cpp:488
#: ../src/import/ImportRaw.cpp:408
msgid "Import"
msgstr "Importar"
@@ -3098,8 +3086,7 @@ msgstr "LibsampleRate, d'Erik de Castro Lopo"
msgid "Libsamplerate error: %d\n"
msgstr "Error LibSampleRate : %d\n"
-#: ../src/Resample.cpp:233
-#: ../src/Resample.cpp:243
+#: ../src/Resample.cpp:233 ../src/Resample.cpp:243
msgid "Resampling disabled."
msgstr "Reescandalhatge desactivat."
@@ -3118,6 +3105,163 @@ msgstr ""
msgid "32-bit float"
msgstr ""
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
+
+#: ../src/export/ExportMultiple.cpp:600 ../src/prefs/DirectoriesPrefs.cpp:82
+msgid "Choose..."
+msgstr "Causir..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
+
+#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
+msgid "false"
+msgstr ""
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:82
+msgid "Control"
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:58
+msgid "Mixer"
+msgstr ""
+
+#: toolbars/MeterToolBar.cpp:49
+msgid "Meter"
+msgstr ""
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
+#: toolbars/DeviceToolBar.cpp:54
+msgid "Device"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:81
+msgid "Transcription"
+msgstr ""
+
+#: TrackPanel.cpp:452 TrackPanel.cpp:453
+msgid "Track Panel"
+msgstr ""
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: export/ExportMultiple.cpp:784
+msgid "Tracks"
+msgstr ""
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
#: Screenshot.cpp:384
msgid "Saved "
msgstr ""
@@ -3126,6 +3270,10 @@ msgstr ""
msgid "Error trying to save file: "
msgstr ""
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
#: Sequence.cpp:732 Sequence.cpp:742 Sequence.cpp:749
msgid "Gap detected in project file\n"
msgstr ""
@@ -3263,6 +3411,10 @@ msgstr ""
msgid "Save Metadata As:"
msgstr ""
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
#: Theme.cpp:629
#, c-format
msgid "Audacity could not write file:\n"
@@ -3335,6 +3487,14 @@ msgstr ""
msgid "Audacity Timer Record"
msgstr ""
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
#: SmartRecordDialog.cpp:223
msgid "Recording start"
msgstr ""
@@ -3374,35 +3534,23 @@ msgstr ""
msgid "Audacity Timer Record - Waiting for Start"
msgstr ""
-#: TrackPanel.cpp:452 TrackPanel.cpp:453
-msgid "Track Panel"
-msgstr ""
-
-#: ../src/AStatus.cpp:81
-#: ../src/TrackPanel.cpp:822
-#: ../src/prefs/FileFormatPrefs.cpp:105
-#: ../src/prefs/QualityPrefs.cpp:91
+#: ../src/AStatus.cpp:81 ../src/TrackPanel.cpp:822
+#: ../src/prefs/FileFormatPrefs.cpp:105 ../src/prefs/QualityPrefs.cpp:91
msgid "Other..."
msgstr "Autre..."
-#: ../src/TrackPanel.cpp:830
-#: ../src/TrackPanel.cpp:851
-#: ../src/TrackPanel.cpp:860
-#: ../src/TrackPanel.cpp:868
+#: ../src/TrackPanel.cpp:830 ../src/TrackPanel.cpp:851
+#: ../src/TrackPanel.cpp:860 ../src/TrackPanel.cpp:868
msgid "Name..."
msgstr "Nom..."
-#: ../src/TrackPanel.cpp:832
-#: ../src/TrackPanel.cpp:853
-#: ../src/TrackPanel.cpp:864
-#: ../src/TrackPanel.cpp:870
+#: ../src/TrackPanel.cpp:832 ../src/TrackPanel.cpp:853
+#: ../src/TrackPanel.cpp:864 ../src/TrackPanel.cpp:870
msgid "Move Track Up"
msgstr "Bolegar la pista cap en naut"
-#: ../src/TrackPanel.cpp:833
-#: ../src/TrackPanel.cpp:854
-#: ../src/TrackPanel.cpp:865
-#: ../src/TrackPanel.cpp:871
+#: ../src/TrackPanel.cpp:833 ../src/TrackPanel.cpp:854
+#: ../src/TrackPanel.cpp:865 ../src/TrackPanel.cpp:871
msgid "Move Track Down"
msgstr "Bolegar la pista cap en bas"
@@ -3442,13 +3590,15 @@ msgstr "Transformar en pista estereofonica"
msgid "Split Stereo Track"
msgstr ""
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr ""
+
#: ../src/TrackPanel.cpp:846
msgid "Set Sample Format"
msgstr "Causir un format d'escandilh"
-#: ../src/AStatus.cpp:352
-#: ../src/TrackPanel.cpp:848
-#: ../src/TrackPanel.cpp:4322
+#: ../src/AStatus.cpp:352 ../src/TrackPanel.cpp:848 ../src/TrackPanel.cpp:4322
msgid "Set Rate"
msgstr "Reglar lo taus"
@@ -3524,8 +3674,7 @@ msgstr "Edicion de marcador"
msgid "Adjusted envelope."
msgstr "Envolopa ajustada."
-#: ../src/TrackPanel.cpp:1905
-#: ../src/prefs/MousePrefs.cpp:98
+#: ../src/TrackPanel.cpp:1905 ../src/prefs/MousePrefs.cpp:98
msgid "Envelope"
msgstr "Aisina de nivèl (envolopa)"
@@ -3586,14 +3735,12 @@ msgid "Moved pan slider"
msgstr "Cursor de panoramic desplaçat"
#. i18n-hint: Title of the Gain slider, used to adjust the volume
-#: ../src/TrackPanel.cpp:2807
-#: ../src/TrackPanel.cpp:4726
+#: ../src/TrackPanel.cpp:2807 ../src/TrackPanel.cpp:4726
msgid "Gain"
msgstr "Ganh"
#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: ../src/TrackPanel.cpp:2807
-#: ../src/TrackPanel.cpp:4733
+#: ../src/TrackPanel.cpp:2807 ../src/TrackPanel.cpp:4733
msgid "Pan"
msgstr "Panoramic"
@@ -3642,14 +3789,6 @@ msgstr ""
msgid "Adjusted gain"
msgstr ""
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr ""
-
#: TrackPanel.cpp:5428
msgid "Can't delete track with active audio"
msgstr ""
@@ -3670,8 +3809,7 @@ msgstr "Esqu
msgid "Right, "
msgstr "Drecha,"
-#: ../src/TrackPanel.cpp:4116
-#: ../src/TrackPanel.cpp:4225
+#: ../src/TrackPanel.cpp:4116 ../src/TrackPanel.cpp:4225
#, c-format
msgid "Changed '%s' to %s"
msgstr " '%s' cambiat en %s"
@@ -3685,6 +3823,11 @@ msgstr "Canal"
msgid "Split stereo track '%s'"
msgstr ""
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
#: ../src/TrackPanel.cpp:4153
#, c-format
msgid "Made '%s' a stereo track"
@@ -3711,8 +3854,7 @@ msgstr "Format :"
msgid "Change lower speed limit (%) to:"
msgstr "Passar la velocitat minimala de (%) a :"
-#: ../src/TrackPanel.cpp:4352
-#: ../src/TrackPanel.cpp:4353
+#: ../src/TrackPanel.cpp:4352 ../src/TrackPanel.cpp:4353
msgid "Lower speed limit"
msgstr "Velocitat limita bassa"
@@ -3762,6 +3904,10 @@ msgstr ""
msgid "Face size"
msgstr ""
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr ""
+
#: ../src/TrackPanel.cpp:4701
msgid "Mute"
msgstr "Mut"
@@ -3840,8 +3986,9 @@ msgstr "Moduls de 1 a %i"
msgid "Plugins %i to %i"
msgstr "Moduls de %i a %i"
-#: commands/CommandManager.cpp:857
-msgid "Disallowed for some reason. Try selecting some audio first?"
+#: commands/CommandManager.cpp:923
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
msgstr ""
#: commands/CommandManager.cpp:724
@@ -3987,31 +4134,19 @@ msgstr ""
msgid "Processing Auto Duck..."
msgstr ""
-#: ../src/LangChoice.cpp:94
-#: ../src/Tags.cpp:721
-#: ../src/effects/Amplify.cpp:187
-#: ../src/effects/AvcCompressor.cpp:716
-#: ../src/effects/BassBoost.cpp:332
-#: ../src/effects/ChangePitch.cpp:393
-#: ../src/effects/ChangeSpeed.cpp:379
-#: ../src/effects/ChangeTempo.cpp:284
-#: ../src/effects/Compressor.cpp:484
-#: ../src/effects/Echo.cpp:242
-#: ../src/effects/Equalization.cpp:731
-#: ../src/effects/Filter.cpp:482
-#: ../src/effects/Normalize.cpp:258
-#: ../src/effects/Phaser.cpp:576
-#: ../src/effects/Repeat.cpp:251
-#: ../src/effects/VST/VSTEffect.cpp:98
-#: ../src/effects/VST/VSTEffect.cpp:455
-#: ../src/effects/Wahwah.cpp:563
-#: ../src/effects/ladspa/LadspaEffect.cpp:498
+#: ../src/LangChoice.cpp:94 ../src/Tags.cpp:721 ../src/effects/Amplify.cpp:187
+#: ../src/effects/AvcCompressor.cpp:716 ../src/effects/BassBoost.cpp:332
+#: ../src/effects/ChangePitch.cpp:393 ../src/effects/ChangeSpeed.cpp:379
+#: ../src/effects/ChangeTempo.cpp:284 ../src/effects/Compressor.cpp:484
+#: ../src/effects/Echo.cpp:242 ../src/effects/Equalization.cpp:731
+#: ../src/effects/Filter.cpp:482 ../src/effects/Normalize.cpp:258
+#: ../src/effects/Phaser.cpp:576 ../src/effects/Repeat.cpp:251
+#: ../src/effects/VST/VSTEffect.cpp:98 ../src/effects/VST/VSTEffect.cpp:455
+#: ../src/effects/Wahwah.cpp:563 ../src/effects/ladspa/LadspaEffect.cpp:498
#: ../src/effects/nyquist/Nyquist.cpp:736
#: ../src/effects/nyquist/Nyquist.cpp:883
-#: ../src/effects/nyquist/Nyquist.cpp:949
-#: ../src/prefs/FileFormatPrefs.cpp:471
-#: ../src/prefs/PrefsDialog.cpp:100
-#: ../src/widgets/Warning.cpp:56
+#: ../src/effects/nyquist/Nyquist.cpp:949 ../src/prefs/FileFormatPrefs.cpp:471
+#: ../src/prefs/PrefsDialog.cpp:100 ../src/widgets/Warning.cpp:56
msgid "OK"
msgstr "OK"
@@ -4138,8 +4273,7 @@ msgstr ""
msgid "To frequency in seconds"
msgstr ""
-#: ../src/effects/ChangePitch.cpp:353
-#: ../src/effects/ChangeSpeed.cpp:305
+#: ../src/effects/ChangePitch.cpp:353 ../src/effects/ChangeSpeed.cpp:305
#: ../src/effects/ChangeTempo.cpp:182
msgid "Percent Change:"
msgstr "Percentatge de modificacion :"
@@ -4157,8 +4291,7 @@ msgstr "Cambiament la nautor..."
msgid "Changing Pitch"
msgstr "Cambiament de nautor"
-#: ../src/effects/ChangeSpeed.cpp:40
-#: ../src/effects/ChangeTempo.cpp:43
+#: ../src/effects/ChangeSpeed.cpp:40 ../src/effects/ChangeTempo.cpp:43
#, c-format
msgid "Applied effect: %s %.1f%%"
msgstr "Efièch·aplicat·: %s %.1f%%"
@@ -4308,9 +4441,9 @@ msgstr ""
msgid "Decay Time"
msgstr ""
-#: ../src/effects/Compressor.cpp:469
-msgid "Normalize to 0dB after compressing"
-msgstr "Normalizar a 0dB aprèp la compression."
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
+msgstr ""
#: effects/Compressor.cpp:563
#, c-format
@@ -4343,7 +4476,6 @@ msgid "%.1f:1"
msgstr ""
#: effects/Compressor.cpp:575
-#, c-format
#, fuzzy
msgid "Attack Time %.1f secs"
msgstr "Atac : %.1i/s"
@@ -4366,6 +4498,10 @@ msgstr "Compressor..."
msgid "Applying Dynamic Range Compression..."
msgstr "Aplicacion de compression dinamica..."
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
msgstr ""
@@ -4385,19 +4521,6 @@ msgid "Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr ""
-
#: effects/Contrast.cpp:231
msgid "Contrast Analyzer"
msgstr ""
@@ -4431,6 +4554,11 @@ msgstr ""
msgid "Foreground end time"
msgstr ""
+#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
+#: effects/Contrast.cpp:289
+msgid "Measured"
+msgstr ""
+
#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
msgid "Use selection"
msgstr ""
@@ -4475,16 +4603,8 @@ msgstr ""
msgid "Help for WCAG2 Audio Contrast Analyzer"
msgstr ""
-#: toolbars/ControlToolBar.cpp:82
-msgid "Control"
-msgstr ""
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
msgstr ""
#: effects/Contrast.cpp:328 effects/Contrast.cpp:336 effects/Contrast.cpp:344
@@ -4595,18 +4715,6 @@ msgstr ""
msgid "Data gathered"
msgstr ""
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr ""
-
#: effects/DtmfGen.cpp:47
msgid "DTMF Tone Generator"
msgstr ""
@@ -4666,8 +4774,7 @@ msgstr ""
msgid "Applied effect: %s delay = %f seconds, decay factor = %f"
msgstr "Efièch·aplicat·: %s sosta = %f segondas, factor de decreissença = %f"
-#: ../src/effects/Echo.cpp:39
-#: ../src/effects/Echo.cpp:177
+#: ../src/effects/Echo.cpp:39 ../src/effects/Echo.cpp:177
msgid "Echo"
msgstr "Ecò"
@@ -4699,8 +4806,7 @@ msgstr ""
msgid "Previewing"
msgstr ""
-#: ../src/ControlToolBar.cpp:721
-#: ../src/effects/Effect.cpp:329
+#: ../src/ControlToolBar.cpp:721 ../src/effects/Effect.cpp:329
msgid "Error while opening sound device. Please check the output device settings and the project sample rate."
msgstr "Error a la dubèrtura del periferic son. Verificatz los reglatges del periferic e l'escandalhatge del projècte"
@@ -4733,6 +4839,10 @@ msgstr ""
msgid "custom"
msgstr ""
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr ""
+
#: effects/Equalization.cpp:971
msgid "Equalization, by Martyn Shaw && Mitch Golden"
msgstr ""
@@ -4933,10 +5043,6 @@ msgstr ""
msgid "Analyser"
msgstr ""
-#: toolbars/MixerToolBar.cpp:58
-msgid "Mixer"
-msgstr ""
-
#: effects/LoadEffects.cpp:116
msgid "Simulator"
msgstr ""
@@ -5172,10 +5278,6 @@ msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr ""
#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
-msgid "false"
-msgstr ""
-
-#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
msgid "true"
msgstr ""
@@ -5233,8 +5335,7 @@ msgstr ""
msgid "Dry Wet"
msgstr ""
-#: ../src/effects/Phaser.cpp:497
-#: ../src/effects/Wahwah.cpp:468
+#: ../src/effects/Phaser.cpp:497 ../src/effects/Wahwah.cpp:468
msgid "LFO Frequency (Hz):"
msgstr "Frequéncia LFO (Hz) :"
@@ -5242,8 +5343,7 @@ msgstr "Frequ
msgid "LFO frequency in hertz"
msgstr ""
-#: ../src/effects/Phaser.cpp:513
-#: ../src/effects/Wahwah.cpp:484
+#: ../src/effects/Phaser.cpp:513 ../src/effects/Wahwah.cpp:484
msgid "LFO Start Phase (deg.):"
msgstr "Fasa de començança LFO (deg.) :"
@@ -5302,8 +5402,7 @@ msgstr "Repetir %d c
msgid "Tracks are too long to repeat the selection."
msgstr ""
-#: ../src/effects/Repeat.cpp:58
-#: ../src/effects/Repeat.cpp:62
+#: ../src/effects/Repeat.cpp:58 ../src/effects/Repeat.cpp:62
msgid "Repeat"
msgstr "Repetir"
@@ -5316,8 +5415,7 @@ msgstr "Nombre de repeticions :"
msgid "New selection length: hh:mm:ss"
msgstr ""
-#: ../src/effects/Repeat.cpp:241
-#: ../src/effects/Repeat.cpp:280
+#: ../src/effects/Repeat.cpp:241 ../src/effects/Repeat.cpp:280
msgid "New selection length: "
msgstr "Longor de la seleccion novèla :"
@@ -5528,20 +5626,37 @@ msgstr ""
msgid "Truncate Silence"
msgstr ""
-#: effects/TruncSilence.cpp:346
-msgid "Max silence duration:"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr ""
+
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
msgstr ""
#: prefs/AudioIOPrefs.cpp:175 prefs/AudioIOPrefs.cpp:178
msgid "milliseconds"
msgstr ""
+#: effects/TruncSilence.cpp:346
+msgid "Max silence duration:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ""
+
#: effects/TruncSilence.cpp:351
msgid "Threshold for silence:"
msgstr ""
-#: effects/TruncSilence.cpp:375
-msgid " Duration must be at least 1 millisecond"
+#: effects/TruncSilence.cpp:506
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
msgstr ""
#: BatchCommands.cpp:236 effects/TruncSilence.cpp:84 effects/TruncSilence.h:29
@@ -5552,16 +5667,55 @@ msgstr ""
msgid "Truncating Silence..."
msgstr ""
-#: ../src/effects/VST/VSTEffect.cpp:180
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "Desolat, los efèctes VST pòdon·pas·èsser·realizats·que·las·pistas·estereofonicas·an·de·canals·individuals·que·correspondon·pas."
+#: ../src/effects/ladspa/LadspaEffect.cpp:452
+msgid "Effect Settings"
+msgstr "Reglatges de l'efièch"
+
+#: ../src/effects/ladspa/LadspaEffect.cpp:435
+#: ../src/effects/ladspa/LadspaEffect.cpp:443
+#: ../src/prefs/QualityPrefs.cpp:160
+msgid "None"
+msgstr "Pas cap"
+
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
-#: ../src/effects/VST/VSTEffect.cpp:196
-msgid "Can't process replacing"
-msgstr "Impossible de remplaçar"
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
-#: effects/VST/VSTEffect.cpp:409
-msgid "VST Plug-in parameters:"
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
msgstr ""
#: ../src/effects/Wahwah.cpp:41
@@ -5610,22 +5764,11 @@ msgstr "Efi
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr ""
-#: ../src/effects/ladspa/LadspaEffect.cpp:435
-#: ../src/effects/ladspa/LadspaEffect.cpp:443
-#: ../src/prefs/QualityPrefs.cpp:160
-msgid "None"
-msgstr "Pas cap"
-
#: ../src/effects/ladspa/LadspaEffect.cpp:437
msgid "Author: "
msgstr "Autor :"
-#: ../src/effects/ladspa/LadspaEffect.cpp:452
-msgid "Effect Settings"
-msgstr "Reglatges de l'efièch"
-
-#: ../src/effects/Silence.cpp:127
-#: ../src/effects/ToneGen.cpp:306
+#: ../src/effects/Silence.cpp:127 ../src/effects/ToneGen.cpp:306
msgid "Length (seconds)"
msgstr "Durada (segondas)"
@@ -5816,9 +5959,21 @@ msgstr "Exportacion del proj
msgid "Command Output"
msgstr ""
-#: export/ExportFFmpeg.cpp:59
+#: export/ExportFFmpeg.cpp:61
msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
#: export/ExportFFmpeg.cpp:394
@@ -5886,6 +6041,10 @@ msgstr ""
msgid "AAC Export Setup"
msgstr ""
+#: export/ExportOGG.cpp:86
+msgid "Quality:"
+msgstr ""
+
#: export/ExportFFmpegDialogs.cpp:217
msgid "Specify AMR-NB Options"
msgstr ""
@@ -6019,12 +6178,8 @@ msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n
"Recommended - 192000"
msgstr ""
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr ""
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid "Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
@@ -6043,10 +6198,10 @@ msgstr ""
msgid "Cutoff Bandwidth:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:947
+#: export/ExportFFmpegDialogs.cpp:936
msgid "Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:949
@@ -6235,12 +6390,12 @@ msgstr ""
msgid "AC3 Files (FFmpeg)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:56
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:57
@@ -6351,6 +6506,17 @@ msgstr ""
msgid "FLAC Files"
msgstr ""
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
#: export/ExportFLAC.cpp:93
msgid "Exporting the selected audio as FLAC"
msgstr ""
@@ -6574,8 +6740,7 @@ msgstr ""
msgid "MP3 export library not found"
msgstr ""
-#: ../src/export/ExportMultiple.cpp:367
-#: ../src/export/ExportMultiple.cpp:474
+#: ../src/export/ExportMultiple.cpp:367 ../src/export/ExportMultiple.cpp:474
#: ../src/export/ExportMultiple.cpp:562
msgid "Export Multiple"
msgstr "Expòrt Multiple"
@@ -6606,11 +6771,6 @@ msgstr ""
msgid "Export location:"
msgstr "Emplaçament de l'expòrt :"
-#: ../src/export/ExportMultiple.cpp:600
-#: ../src/prefs/DirectoriesPrefs.cpp:82
-msgid "Choose..."
-msgstr "Causir..."
-
#: export/ExportMultiple.cpp:205
msgid "Create"
msgstr ""
@@ -6635,10 +6795,6 @@ msgstr "Primi
msgid "First file name"
msgstr ""
-#: export/ExportMultiple.cpp:784
-msgid "Tracks"
-msgstr ""
-
#: ../src/export/ExportMultiple.cpp:646
msgid "Name files:"
msgstr "TornarRenommar lo fichièr :"
@@ -6672,25 +6828,44 @@ msgstr ""
msgid "Choose a location to save the exported files"
msgstr "Causir un luòc per salvagardar los fichièrs exportats"
-#: export/ExportMultiple.cpp:480
+#: export/ExportMultiple.cpp:524
#, c-format
-msgid "\"%s\" doesn't exist.\n"
-"\n"
-"Would you like to create it?"
+msgid "Successfully exported the following %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:637 export/ExportMultiple.cpp:772
-msgid "Edit metadata"
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:590
+#: export/ExportMultiple.cpp:526
#, c-format
-msgid "Successfully exported %d file(s)."
+msgid "Export canceled after exporting the following %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:597
+#: export/ExportMultiple.cpp:527
#, c-format
-msgid "Something went wrong after exporting %d file(s)."
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr ""
+
+#: export/ExportMultiple.cpp:480
+#, c-format
+msgid "\"%s\" doesn't exist.\n"
+"\n"
+"Would you like to create it?"
+msgstr ""
+
+#: export/ExportMultiple.cpp:637 export/ExportMultiple.cpp:772
+msgid "Edit metadata"
msgstr ""
#: export/ExportMultiple.cpp:881
@@ -6775,7 +6950,6 @@ msgstr ""
#. i18n-hint: %s will be the error message from libsndfile
#: export/ExportPCM.cpp:436
-#, c-format
#, fuzzy
msgid "Error (file may not have been written): %s"
msgstr "Error (lo fichièr pòt èsser pas estat escrich) : %s"
@@ -6941,8 +7115,11 @@ msgstr ""
msgid "FLAC files"
msgstr ""
-#: ../src/import/ImportLOF.cpp:151
-#: ../src/import/ImportLOF.cpp:177
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr ""
+
+#: ../src/import/ImportLOF.cpp:151 ../src/import/ImportLOF.cpp:177
msgid "List of Files in basic text format"
msgstr "Lista dels fichièrs en format tèxt"
@@ -6953,10 +7130,8 @@ msgstr ""
# i18n-hint: You do not need to translate "LOF"
#. i18n-hint: You do not need to translate "LOF"
-#: ../src/import/ImportLOF.cpp:270
-#: ../src/import/ImportLOF.cpp:291
-#: ../src/import/ImportLOF.cpp:364
-#: ../src/import/ImportLOF.cpp:384
+#: ../src/import/ImportLOF.cpp:270 ../src/import/ImportLOF.cpp:291
+#: ../src/import/ImportLOF.cpp:364 ../src/import/ImportLOF.cpp:384
msgid "LOF Error"
msgstr "Error de LOF"
@@ -7102,131 +7277,59 @@ msgstr ""
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr ""
-#: ../src/prefs/PrefsDialog.cpp:84
-msgid "Audio I/O"
-msgstr "E/S audio "
-
-#: ../src/prefs/AudioIOPrefs.cpp:212
-msgid "1 (Mono)"
-msgstr "1 (Mono)"
-
-#: ../src/prefs/AudioIOPrefs.cpp:213
-msgid "2 (Stereo)"
-msgstr "2 (Estereofonic)"
-
-#: ../src/prefs/AudioIOPrefs.cpp:80
-msgid "Playback"
-msgstr "Lectura"
-
-#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
-#: toolbars/DeviceToolBar.cpp:54
-msgid "Device"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:122
-msgid "Using:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:123
-msgid "Portaudio v"
-msgstr ""
-
-#: ../src/prefs/AudioIOPrefs.cpp:148
-msgid "Recording"
-msgstr "Enregistrament"
-
-#: prefs/AudioIOPrefs.cpp:139
-msgid "Channels"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:145
-msgid "Playthrough"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:194
-msgid "Effects Preview"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:165
-msgid "Length of preview:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:158
-msgid "Cut Preview"
+#: prefs/BatchPrefs.cpp:53 prefs/BatchPrefs.cpp:54
+msgid "Batch"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:173
-msgid "Preview before cut region:"
+#: prefs/BatchPrefs.cpp:75 prefs/GUIPrefs.cpp:70
+msgid "Behaviors"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:175
-msgid "Preview after cut region:"
+#: prefs/BatchPrefs.cpp:80
+msgid "&Don't apply effects in batch mode"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:168
-msgid "Latency"
+#: prefs/BatchPrefs.cpp:83
+msgid "Cl&eanSpeech Mode (Customized GUI)"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:195
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:198
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr ""
+#: ../src/prefs/PrefsDialog.cpp:89
+msgid "Interface"
+msgstr "Interfàcia"
-#: prefs/AudioIOPrefs.cpp:197
-msgid "Seek Time when playing"
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:187
-msgid "Short period:"
+#: prefs/AudioIOPrefs.cpp:122
+msgid "Using:"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:189
-msgid "Long period:"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:80
+msgid "Playback"
+msgstr "Lectura"
-#: prefs/BatchPrefs.cpp:53 prefs/BatchPrefs.cpp:54
-msgid "Batch"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:148
+msgid "Recording"
+msgstr "Enregistrament"
-#: prefs/BatchPrefs.cpp:75 prefs/GUIPrefs.cpp:70
-msgid "Behaviors"
+#: prefs/AudioIOPrefs.cpp:139
+msgid "Channels"
msgstr ""
-#: prefs/BatchPrefs.cpp:80
-msgid "&Don't apply effects in batch mode"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:212
+msgid "1 (Mono)"
+msgstr "1 (Mono)"
-#: prefs/BatchPrefs.cpp:83
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:213
+msgid "2 (Stereo)"
+msgstr "2 (Estereofonic)"
-#: ../src/prefs/PrefsDialog.cpp:88
-#: ../src/prefs/PrefsDialog.cpp:216
+#: ../src/prefs/PrefsDialog.cpp:88 ../src/prefs/PrefsDialog.cpp:216
msgid "Directories"
msgstr "Repertòris"
@@ -7242,34 +7345,31 @@ msgstr "Empla
msgid "Free Space:"
msgstr "Espaci liure :"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr ""
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr ""
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
+#: prefs/DirectoriesPrefs.cpp:110
+msgid "Audio cache"
msgstr ""
#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
+msgid "Play and/or record using RAM (useful for slow drives)"
msgstr ""
-#: prefs/DirectoriesPrefs.cpp:110
-msgid "Audio cache"
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
msgstr ""
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
#: ../src/prefs/DirectoriesPrefs.cpp:135
msgid "Choose a location to place the temporary directory"
msgstr "Causir un luòc per plaçar lo repertòri temporari"
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: ../src/prefs/DirectoriesPrefs.cpp:181
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -7288,220 +7388,141 @@ msgstr "Lo repert
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "Los cambiaments de dorsièr temporari prendràn efièch sonque aprèp aveire demarat Audacity tornamai "
-#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
-msgid "Import / Export"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:84
-msgid "MP3 Export Library"
-msgstr ""
-
-#: ../src/prefs/FileFormatPrefs.cpp:180
-msgid "MP3 Library Version:"
-msgstr "Version de la libraria MP3 :"
-
-#: prefs/FileFormatPrefs.cpp:93
-msgid "MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:98
-msgid "LAME MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
-msgid "&Download"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:136
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:137
-msgid "When importing audio files"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:140
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:141
-msgid "&Read uncompressed audio files directly from the original (faster)"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:143
-msgid "&Normalize all tracks in project"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:132
-msgid "When saving a project that depends on other audio files"
+#: prefs/GUIPrefs.cpp:42
+msgid "In Browser"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:87
-msgid "Always © all audio into project (safest)"
+#: prefs/GUIPrefs.cpp:43
+msgid "From Internet"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:88
-msgid "&Do not copy any audio"
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:135
-msgid "&Ask user"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:93
-msgid "When exporting tracks to an audio file"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:144
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:97
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
msgstr ""
-#: prefs/BatchPrefs.cpp:91
-msgid "S&how Metadata Editor prior to export step"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
msgstr ""
-#: ../src/prefs/PrefsDialog.cpp:89
-msgid "Interface"
-msgstr "Interfàcia"
+#: ../src/prefs/GUIPrefs.cpp:150
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 dB (per edicion d'amplitud bèla)"
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:157
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 dB (amplitud PCM en escandalhatge 8 bits)"
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
+#: prefs/GUIPrefs.cpp:143
+msgid "-60 dB (PCM range of 10 bit samples)"
msgstr ""
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:164
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 dB (amplitud PCM en escandalhatge 16 bits)"
-#: prefs/GUIPrefs.cpp:72
-msgid "&Update display while playing"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:171
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 dB (limit aproximativa de l'audicion umana)"
-#: prefs/GUIPrefs.cpp:96
-msgid "Cl&osing last window quits Audacity"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:178
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB (amplitud PCM en escandalhatge 24 bits)"
-#: prefs/GUIPrefs.cpp:76
-msgid "Enable &dragging of left and right selection edges"
+#: prefs/SpectrumPrefs.cpp:96
+msgid "Display"
msgstr ""
#: prefs/GUIPrefs.cpp:100
msgid "Er&gonomic order of audio I/O buttons"
msgstr ""
-#: prefs/GUIPrefs.cpp:80
-msgid "Automatically &fit tracks vertically zoomed"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
msgstr ""
-#: prefs/GUIPrefs.cpp:104
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
msgstr ""
-#: prefs/GUIPrefs.cpp:90
-msgid "Editing a &clip can move other clips"
+#: prefs/GUIPrefs.cpp:167
+msgid "Help:"
msgstr ""
-#: prefs/GUIPrefs.cpp:88
-msgid "&Select all audio in project, if none selected"
+#: prefs/GUIPrefs.cpp:96
+msgid "Cl&osing last window quits Audacity"
msgstr ""
#: prefs/GUIPrefs.cpp:90
msgid "&Beep on completion of longer activities"
msgstr ""
-#: prefs/BatchPrefs.cpp:87 prefs/GUIPrefs.cpp:94
-msgid "Show / Hide"
+#: prefs/GUIPrefs.cpp:126
+msgid "Modes"
msgstr ""
-#: prefs/GUIPrefs.cpp:96
-msgid "Enable cut &lines"
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:98
-msgid "Show warnings about &temp files"
+#: prefs/GUIPrefs.cpp:129
+msgid "Don't a&pply effects in batch mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
+#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
+msgid "Import / Export"
msgstr ""
-#: prefs/GUIPrefs.cpp:122
-msgid "Show &Welcome Message at program start up"
+#: prefs/FileFormatPrefs.cpp:137
+msgid "When importing audio files"
msgstr ""
-#: prefs/GUIPrefs.cpp:126
-msgid "Modes"
+#: prefs/FileFormatPrefs.cpp:140
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
msgstr ""
-#: prefs/GUIPrefs.cpp:129
-msgid "Don't a&pply effects in batch mode"
+#: prefs/FileFormatPrefs.cpp:141
+msgid "&Read uncompressed audio files directly from the original (faster)"
msgstr ""
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
+#: prefs/FileFormatPrefs.cpp:143
+msgid "&Normalize all tracks in project"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:150
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 dB (per edicion d'amplitud bèla)"
-
-#: ../src/prefs/GUIPrefs.cpp:157
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 dB (amplitud PCM en escandalhatge 8 bits)"
-
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
+#: prefs/FileFormatPrefs.cpp:93
+msgid "When exporting tracks to an audio file"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:164
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 dB (amplitud PCM en escandalhatge 16 bits)"
-
-#: ../src/prefs/GUIPrefs.cpp:171
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 dB (limit aproximativa de l'audicion umana)"
-
-#: ../src/prefs/GUIPrefs.cpp:178
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB (amplitud PCM en escandalhatge 24 bits)"
-
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
+#: prefs/FileFormatPrefs.cpp:144
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
msgstr ""
-#: prefs/GUIPrefs.cpp:164
-msgid "Other interface choices"
+#: prefs/FileFormatPrefs.cpp:97
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
msgstr ""
-#: prefs/GUIPrefs.cpp:167
-msgid "Help:"
+#: prefs/BatchPrefs.cpp:91
+msgid "S&how Metadata Editor prior to export step"
msgstr ""
-#: prefs/GUIPrefs.cpp:168
-msgid "Solo Button:"
+#: prefs/ImportExportPrefs.cpp:84
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
msgstr ""
#: ../src/prefs/PrefsDialog.cpp:90
@@ -7532,17 +7553,22 @@ msgstr "Bremba-te : Picar Cmd+Q per sortir. Totas las autras claus son validas."
msgid "&Defaults"
msgstr ""
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr ""
+
#: ../src/prefs/KeyConfigPrefs.cpp:79
msgid "Key Combination"
msgstr "Combinason de clau"
-#: ../src/prefs/KeyConfigPrefs.cpp:159
-msgid "Export Keyboard Shortcuts As:"
-msgstr "Exportar las acorchas clavièr jos :"
+#: prefs/KeyConfigPrefs.cpp:339 toolbars/EditToolBar.cpp:144
+msgid "Undo"
+msgstr ""
-#: ../src/prefs/KeyConfigPrefs.cpp:174
-msgid "Error saving keyboard shortcuts"
-msgstr "Error d'enregistrament de las acorchas clavièr"
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr ""
#: ../src/prefs/KeyConfigPrefs.cpp:188
msgid "Select an XML file containing Audacity keyboard shortcuts..."
@@ -7552,6 +7578,14 @@ msgstr "Causir un fichi
msgid "Error loading keyboard shortcuts"
msgstr "Error de cargament de las acorchas clavièr"
+#: ../src/prefs/KeyConfigPrefs.cpp:159
+msgid "Export Keyboard Shortcuts As:"
+msgstr "Exportar las acorchas clavièr jos :"
+
+#: ../src/prefs/KeyConfigPrefs.cpp:174
+msgid "Error saving keyboard shortcuts"
+msgstr "Error d'enregistrament de las acorchas clavièr"
+
#: prefs/KeyConfigPrefs.cpp:239
#, c-format
msgid "The keyboard shortcut '%s' is already assigned to:\n"
@@ -7559,8 +7593,60 @@ msgid "The keyboard shortcut '%s' is already assigned to:\n"
"'%s'"
msgstr ""
-#: prefs/KeyConfigPrefs.cpp:339 toolbars/EditToolBar.cpp:144
-msgid "Undo"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:84
+msgid "MP3 Export Library"
+msgstr ""
+
+#: ../src/prefs/FileFormatPrefs.cpp:180
+msgid "MP3 Library Version:"
+msgstr "Version de la libraria MP3 :"
+
+#: prefs/FileFormatPrefs.cpp:93
+msgid "MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:98
+msgid "LAME MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
+msgid "&Download"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:109
+msgid "FFmpeg Library Version:"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
+msgid "FFmpeg Library:"
+msgstr ""
+
+#: ../src/prefs/PrefsDialog.cpp:84
+msgid "Audio I/O"
+msgstr "E/S audio "
+
+#: prefs/AudioIOPrefs.cpp:123
+msgid "Portaudio v"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:145
+msgid "Playthrough"
msgstr ""
#: prefs/AudioIOPrefs.cpp:147
@@ -7576,6 +7662,10 @@ msgstr ""
msgid "&Software Playthrough (Play new track while recording it)"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:158
+msgid "Cut Preview"
+msgstr ""
+
#: prefs/MidiIOPrefs.cpp:160
msgid "Play before cut region:"
msgstr ""
@@ -7584,6 +7674,10 @@ msgstr ""
msgid "Play after cut region:"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:168
+msgid "Latency"
+msgstr ""
+
#: prefs/AudioIOPrefs.cpp:174
msgid "Audio to buffer:"
msgstr ""
@@ -7596,6 +7690,18 @@ msgstr ""
msgid "Seek Time"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:187
+msgid "Short period:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:189
+msgid "Long period:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:194
+msgid "Effects Preview"
+msgstr ""
+
#: prefs/MidiIOPrefs.cpp:196
msgid "Play when previewing:"
msgstr ""
@@ -7621,14 +7727,12 @@ msgstr "Commande"
msgid "Buttons"
msgstr "Botons"
-#: ../src/prefs/MousePrefs.cpp:88
-#: ../src/prefs/MousePrefs.cpp:92
+#: ../src/prefs/MousePrefs.cpp:88 ../src/prefs/MousePrefs.cpp:92
#: ../src/prefs/MousePrefs.cpp:100
msgid "Left-Click"
msgstr "Clic d'esquèrra"
-#: ../src/prefs/MousePrefs.cpp:88
-#: ../src/prefs/MousePrefs.cpp:89
+#: ../src/prefs/MousePrefs.cpp:88 ../src/prefs/MousePrefs.cpp:89
#: ../src/prefs/MousePrefs.cpp:90
msgid "Select"
msgstr "Seleccion"
@@ -7637,10 +7741,8 @@ msgstr "Seleccion"
msgid "Set Selection Point"
msgstr "Definir un punt de seleccion"
-#: ../src/prefs/MousePrefs.cpp:89
-#: ../src/prefs/MousePrefs.cpp:93
-#: ../src/prefs/MousePrefs.cpp:97
-#: ../src/prefs/MousePrefs.cpp:98
+#: ../src/prefs/MousePrefs.cpp:89 ../src/prefs/MousePrefs.cpp:93
+#: ../src/prefs/MousePrefs.cpp:97 ../src/prefs/MousePrefs.cpp:98
#: ../src/prefs/MousePrefs.cpp:102
msgid "Left-Drag"
msgstr "Limpar a esquèrra"
@@ -7750,10 +7852,8 @@ msgstr "Cambiar l'amplificacion"
msgid "Change Sample"
msgstr "Modificar l'escandilh"
-#: ../src/prefs/MousePrefs.cpp:100
-#: ../src/prefs/MousePrefs.cpp:101
-#: ../src/prefs/MousePrefs.cpp:102
-#: ../src/prefs/MousePrefs.cpp:103
+#: ../src/prefs/MousePrefs.cpp:100 ../src/prefs/MousePrefs.cpp:101
+#: ../src/prefs/MousePrefs.cpp:102 ../src/prefs/MousePrefs.cpp:103
msgid "Pencil"
msgstr "Gredon"
@@ -7773,10 +7873,8 @@ msgstr "Cambiar mantuns escandilhs"
msgid "Change ONE Sample only"
msgstr "Cambiar un sol escandilh :"
-#: ../src/prefs/MousePrefs.cpp:105
-#: ../src/prefs/MousePrefs.cpp:106
-#: ../src/prefs/MousePrefs.cpp:107
-#: ../src/prefs/MousePrefs.cpp:108
+#: ../src/prefs/MousePrefs.cpp:105 ../src/prefs/MousePrefs.cpp:106
+#: ../src/prefs/MousePrefs.cpp:107 ../src/prefs/MousePrefs.cpp:108
msgid "Multi"
msgstr "Multi"
@@ -7790,8 +7888,7 @@ msgstr "Coma l'aisina de seleccion"
msgid "same as zoom tool"
msgstr "Coma l'aisina zoom"
-#: ../src/prefs/MousePrefs.cpp:110
-#: ../src/prefs/MousePrefs.cpp:111
+#: ../src/prefs/MousePrefs.cpp:110 ../src/prefs/MousePrefs.cpp:111
msgid "Any"
msgstr "Totes"
@@ -7819,10 +7916,62 @@ msgstr "Ctrl-Rodeta de la mirga"
msgid "Zoom in or out"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:165
+msgid "Length of preview:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:173
+msgid "Preview before cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:175
+msgid "Preview after cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:197
+msgid "Seek Time when playing"
+msgstr ""
+
#: ../src/prefs/PrefsDialog.cpp:52
msgid "Audacity Preferences"
msgstr "Preferéncias d'Audacity"
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:132
+msgid "When saving a project that depends on other audio files"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:87
+msgid "Always © all audio into project (safest)"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:88
+msgid "&Do not copy any audio"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:135
+msgid "&Ask user"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr ""
+
#: ../src/prefs/QualityPrefs.cpp:161
msgid "Rectangle"
msgstr "Rectangular"
@@ -7847,44 +7996,44 @@ msgstr "Frequ
msgid "Default Sample Format:"
msgstr "Format d'escandalhatge per defaut :"
-#: ../src/prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "Convertidor·d'escandilh· en temps real :"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:147
-msgid "High-quality sample rate converter:"
-msgstr "Convertidor d'escandilh de qualitat nauta :"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+msgid "Sample Rate Converter:"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:171
-msgid "Real-time dither:"
-msgstr "Alisatge en temps real :"
+#: prefs/QualityPrefs.cpp:164
+msgid "Dither"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:186
-msgid "High-quality dither:"
-msgstr "Alisatge de qualitat nauta."
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
+#: prefs/AudioIOPrefs.cpp:149
+msgid "Overdub: &Play other tracks while recording new one"
msgstr ""
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
+#: prefs/AudioIOPrefs.cpp:150
+msgid "&Hardware Playthrough: Play new track while recording it"
msgstr ""
-#: prefs/QualityPrefs.cpp:164
-msgid "Dither"
+#: prefs/AudioIOPrefs.cpp:157
+msgid "&Software Playthrough: Play new track while recording or monitoring"
msgstr ""
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
+#: prefs/AudioIOPrefs.cpp:160
+msgid "(uncheck when recording \"stereo mix\")"
msgstr ""
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
msgstr ""
-#: prefs/SmartRecordPrefs.cpp:54 prefs/SmartRecordPrefs.cpp:55
-msgid "Smart Recording"
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
msgstr ""
#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
@@ -7899,18 +8048,54 @@ msgstr ""
msgid "Spectrograms"
msgstr "Espectrograms"
-#: ../src/prefs/SpectrumPrefs.cpp:70
-msgid "FFT Size"
-msgstr "Talha FFT"
-
#: prefs/SpectrumPrefs.cpp:75
msgid "8 - most wideband"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
#: ../src/prefs/SpectrumPrefs.cpp:40
msgid "256 - default"
msgstr "256 - per defaut"
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:107
msgid "32768 - most narrowband"
msgstr ""
@@ -7919,20 +8104,24 @@ msgstr ""
msgid "4096 - most narrowband"
msgstr "4096 - benda mai estrecha"
-#: prefs/SpectrumPrefs.cpp:90
-msgid "Window type:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:125
-msgid "FFT Skip Points"
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:96
-msgid "Display"
+#: prefs/SpectrumPrefs.cpp:93
+msgid "Window type"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:125
+msgid "FFT Skip Points"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:100
-msgid "&Grayscale"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
msgstr ""
#: prefs/SpectrumPrefs.cpp:103
@@ -7943,16 +8132,16 @@ msgstr ""
msgid "Maximum Frequency (Hz):"
msgstr "Frequéncia maximum (Hz) :"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
msgstr ""
#: prefs/SpectrumPrefs.cpp:165
@@ -7963,6 +8152,14 @@ msgstr ""
msgid "Max. Number of Notes (1..128):"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:161
+msgid "&Find Notes"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Quantize Notes"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:134
msgid "The maximum frequency must be an integer"
msgstr ""
@@ -7979,18 +8176,57 @@ msgstr ""
msgid "Minimum frequency must be at least 0 Hz"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:226 prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
+#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:230
+msgid "The maximum number of notes must be in the range 1..128"
msgstr ""
#: prefs/ThemePrefs.cpp:61 prefs/ThemePrefs.cpp:62
msgid "Theme"
msgstr ""
+#: prefs/ThemePrefs.cpp:123
+msgid "Info"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:91
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#: prefs/ThemePrefs.cpp:90
msgid "Theme Cache - Images && Color"
msgstr ""
@@ -8019,78 +8255,94 @@ msgstr ""
msgid "Load Files"
msgstr ""
-#: prefs/ThemePrefs.cpp:123
-msgid "Info"
+#: prefs/GUIPrefs.cpp:50
+msgid "Simple"
msgstr ""
-#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
+#: prefs/GUIPrefs.cpp:72
+msgid "&Update display while playing"
msgstr ""
-#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
+#: prefs/GUIPrefs.cpp:80
+msgid "Automatically &fit tracks vertically zoomed"
msgstr ""
-#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
+#: prefs/TracksPrefs.cpp:88
+msgid "Default View Mode:"
msgstr ""
-#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:88
+msgid "&Select all audio in project, if none selected"
msgstr ""
-#: ../src/ControlToolBar.cpp:470
-msgid "Pause"
-msgstr "Pausa"
+#: prefs/GUIPrefs.cpp:96
+msgid "Enable cut &lines"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play"
+#: prefs/GUIPrefs.cpp:76
+msgid "Enable &dragging of left and right selection edges"
msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
+#: prefs/GUIPrefs.cpp:104
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
msgstr ""
-#: toolbars/ControlToolBar.cpp:183
-msgid "Stop"
+#: prefs/GUIPrefs.cpp:90
+msgid "Editing a &clip can move other clips"
msgstr ""
-#: ../src/ControlToolBar.cpp:467
-msgid "Skip to Start"
-msgstr "Enrèire a la començança"
+#: prefs/GUIPrefs.cpp:168
+msgid "Solo Button:"
+msgstr ""
-#: ../src/ControlToolBar.cpp:472
-msgid "Skip to End"
-msgstr "Anar a la fin"
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:192
-msgid "Record (Shift for Append Record)"
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr ""
+
+#: ../src/Menus.cpp:561
+msgid "Pause"
+msgstr "Pausa"
+
+#: Menus.cpp:863
+msgid "Stop"
msgstr ""
#: toolbars/ControlToolBar.cpp:195
msgid "Clean Speech"
msgstr ""
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play (Shift for Loop Play)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:192
+msgid "Record (Shift for Append Record)"
+msgstr ""
+
#: toolbars/ControlToolBar.cpp:524 toolbars/ControlToolBar.cpp:776
msgid "Error while opening sound device. "
msgstr ""
@@ -8131,28 +8383,20 @@ msgstr ""
msgid "Zoom Out"
msgstr ""
-#: toolbars/EditToolBar.cpp:156
-msgid "Zoom Toggle"
-msgstr ""
-
-#: toolbars/EditToolBar.cpp:160
-msgid "Fit Selection"
-msgstr ""
-
#: ../src/EditToolBar.cpp:174
msgid "Fit selection in window"
msgstr "Ajustar la seleccion a la fenèstra"
-#: toolbars/EditToolBar.cpp:162
-msgid "Fit Project"
-msgstr ""
-
#: ../src/EditToolBar.cpp:176
msgid "Fit project in window"
msgstr "Afichar lo projècte tot dins la fenèstra"
-#: toolbars/MeterToolBar.cpp:49
-msgid "Meter"
+#: toolbars/EditToolBar.cpp:160
+msgid "Fit Selection"
+msgstr ""
+
+#: toolbars/EditToolBar.cpp:162
+msgid "Fit Project"
msgstr ""
#: toolbars/MeterToolBar.cpp:79
@@ -8199,6 +8443,14 @@ msgstr ""
msgid "Input Source"
msgstr ""
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:75
msgid "Selection"
msgstr ""
@@ -8277,30 +8529,6 @@ msgstr "Esqu
msgid "Click and drag to move a track in time"
msgstr "Clicar-rossegar per calar temporalament una pista"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr ""
-
-#: ../src/ControlToolBar.cpp:355
-msgid "Selection Tool"
-msgstr "Aisina de seleccion"
-
-#: ../src/ControlToolBar.cpp:356
-msgid "Envelope Tool"
-msgstr "Aisina·de·nivèl·(envolopa)"
-
-#: toolbars/ToolsToolBar.cpp:149 toolbars/ToolsToolBar.cpp:183
-msgid "Time Shift Tool"
-msgstr ""
-
-#: toolbars/ToolsToolBar.cpp:150 toolbars/ToolsToolBar.cpp:185
-msgid "Zoom Tool"
-msgstr ""
-
-#: ../src/ControlToolBar.cpp:359
-msgid "Draw Tool"
-msgstr "Aisina de dessenh d'ondas"
-
#: ../src/ControlToolBar.cpp:360
msgid "Multi-Tool Mode"
msgstr "Mòde multi aisinas"
@@ -8309,22 +8537,10 @@ msgstr "M
msgid "Slide Tool"
msgstr ""
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr ""
-
-#: toolbars/TranscriptionToolBar.cpp:81
-msgid "Transcription"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:183
msgid "Play at selected speed"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:184
-msgid "Play-at-speed"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:190 toolbars/TranscriptionToolBar.cpp:195
msgid "Playback Speed"
msgstr ""
@@ -8333,74 +8549,38 @@ msgstr ""
msgid "Adjust left selection to next onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:201
-msgid "Left-to-On"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:203
msgid "Adjust right selection to previous offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:204
-msgid "Right-to-Off"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:206
msgid "Adjust left selection to next offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:207
-msgid "Left-to-Off"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:209
msgid "Adjust right selection to previous onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:210
-msgid "Right-to-On"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:212
msgid "Select region of sound around cursor"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:213
-msgid "Select-Sound"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:215
msgid "Select region of silence around cursor"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:216
-msgid "Select-Silence"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:218
msgid "Automatically make labels from words"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:219
-msgid "Make Labels"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:221
msgid "Add label at selection"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:222
-msgid "Add Label"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:224
msgid "Calibrate voicekey"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:225
-msgid "Calibrate"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:229
msgid "Adjust Sensitivity"
msgstr ""
@@ -8433,6 +8613,46 @@ msgstr ""
msgid "Key type"
msgstr ""
+#: toolbars/TranscriptionToolBar.cpp:184
+msgid "Play-at-speed"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:201
+msgid "Left-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:204
+msgid "Right-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:207
+msgid "Left-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:210
+msgid "Right-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:213
+msgid "Select-Sound"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:216
+msgid "Select-Silence"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:219
+msgid "Make Labels"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:222
+msgid "Add Label"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:225
+msgid "Calibrate"
+msgstr ""
+
#: ../src/widgets/AButton.cpp:181
msgid " (disabled)"
msgstr " (desactivat)"
@@ -8446,14 +8666,12 @@ msgid "Button"
msgstr ""
#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
-#: ../src/widgets/ASlider.cpp:329
-#: ../src/widgets/Meter.cpp:165
+#: ../src/widgets/ASlider.cpp:329 ../src/widgets/Meter.cpp:165
msgid "L"
msgstr "G"
#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
-#: ../src/widgets/ASlider.cpp:332
-#: ../src/widgets/Meter.cpp:167
+#: ../src/widgets/ASlider.cpp:332 ../src/widgets/Meter.cpp:167
msgid "R"
msgstr "D"
@@ -8736,3 +8954,15 @@ msgstr ""
msgid "Could not load file: \"%s\""
msgstr ""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
+
diff --git a/locale/pl.po b/locale/pl.po
index 3d3937c..8140b09 100644
--- a/locale/pl.po
+++ b/locale/pl.po
@@ -7,18 +7,16 @@
msgid ""
msgstr "Project-Id-Version: pl\n"
"Report-Msgid-Bugs-To: audacity-translation at lists.sourceforge.net\n"
-"POT-Creation-Date: 2008-11-09 20:10+0000\n"
-"PO-Revision-Date: 2008-11-14 21:38+0100\n"
-"Last-Translator: Richard Ash <richard at audacityteam.org>\n"
+"POT-Creation-Date: 2009-02-15 17:27+0000\n"
+"PO-Revision-Date: 2009-04-23 23:13-0000\n"
+"Last-Translator: Marek Mularczyk <info at marekmularczyk.com>\n"
"Language-Team: <en at li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: KBabel 1.11.2\n"
-#: AboutDialog.cpp:143
-#: AudacityApp.cpp:807
-#: Menus.cpp:955
+#: AboutDialog.cpp:143 AudacityApp.cpp:789 Menus.cpp:953
msgid "&About Audacity..."
msgstr "&O Audacity..."
@@ -32,14 +30,12 @@ msgid "Audacity is a free program written by a team of volunteer <a href=\"http:
msgstr "Audacity jest programem darmowym pisanym przez grupÄ wolontariuszy na caÅym Åwiecie. DziÄkujemy SourceForge.net , serwisowi on-line za udostÄpnienie darmowych narzÄdzi open source. Audacity jest dostÄpne dla systemów Windows 98 i nowszych, Mac OS X, Linuks oraz pozostaÅych Unixowych systemów operacyjnych. Starsze wersje Audacity sÄ
dostÄpne dla systemu Mac OS 9."
#: AboutDialog.cpp:179
-#, fuzzy
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
-msgstr "To jest wersja beta programu Audacity. Może zawieraÄ bÅÄdy i niedokoÅczone funkcje. Modyfikacje zależÄ
również od sygnaÅów użytkowników. ProszÄ odwiedziÄ naszÄ
stronÄ i przekazaÄ nam informacjÄ o znalezionych bÅÄdach i spostrzeżeniach."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgstr ""
#: AboutDialog.cpp:182
-#, fuzzy
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
-msgstr "Jest to stabilna i peÅna wersja programu Audacity.Mimo to, jeżeli znajdziesz bÅÄ
d lub bÄdziesz mieÄ sugestie, proszÄ skontaktuj siÄ z nami. Rozwój i poprawa dziaÅania programu Audacity zależy od wspóÅdziaÅania z użytkownikami. Aby uzyskaÄ wiÄcej informacji, odwiedź naszÄ
stronÄ internetowÄ
."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgstr ""
# i18n-hint: The translation of "translator_credits" will appear
# in the credits in the About Audacity window. Use this to add
@@ -55,8 +51,7 @@ msgstr "Jest to stabilna i peÅna wersja programu Audacity.Mimo to, jeżeli znaj
#.
#. For example: "English translation by Dominic Mazzoni."
#.
-#: AboutDialog.cpp:192
-#: AboutDialog.cpp:194
+#: AboutDialog.cpp:192 AboutDialog.cpp:194
msgid "translator_credits"
msgstr "Polskie tÅumaczenie: Sebastian Pacholski,Tomasz BaÅdura.Marek Mularczyk"
@@ -100,23 +95,20 @@ msgid "Special thanks:"
msgstr "Specjalne podziÄkowania dla:"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
-msgstr ""
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgstr "<b>Audacity®</b> jest chronione prawem autorskim © 1999-2009 ZespóŠAudacity. <br>Nazwa <b>Audacity®</b> jest zarejestrowana przez Dominic'a Mazzoni."
#: AboutDialog.cpp:258
msgid "Audacity"
msgstr "Audacity"
#. i18n-hint: Information about when audacity was compiled
-#: AboutDialog.cpp:304
-#: AboutDialog.cpp:317
-#: AboutDialog.cpp:473
+#: AboutDialog.cpp:304 AboutDialog.cpp:317 AboutDialog.cpp:473
#, fuzzy
msgid "Build Information"
msgstr "Wprowadzenie"
-#: AboutDialog.cpp:310
-#: effects/AvcCompressor.cpp:674
+#: AboutDialog.cpp:310 effects/AvcCompressor.cpp:674
msgid "Enabled"
msgstr "Odblokowany"
@@ -126,108 +118,91 @@ msgstr "Zablokowany"
#: AboutDialog.cpp:321
msgid "File Format Support"
-msgstr ""
+msgstr "Wsparcie dla formatów plików"
#. i18n-hint: This is what the library (libmad) does - imports MP3 files
-#: AboutDialog.cpp:331
-#: AboutDialog.cpp:333
+#: AboutDialog.cpp:331 AboutDialog.cpp:333
#, fuzzy
msgid "MP3 Importing"
msgstr "Importowanie %s..."
-#: AboutDialog.cpp:340
-#: AboutDialog.cpp:343
+#: AboutDialog.cpp:340 AboutDialog.cpp:343
#, fuzzy
msgid "Ogg Vorbis Import and Export"
msgstr "Ustawienia Eksportu Ogg Vorbis"
-#: AboutDialog.cpp:347
-#: AboutDialog.cpp:350
+#: AboutDialog.cpp:347 AboutDialog.cpp:350
msgid "ID3 tag support"
-msgstr ""
+msgstr "Wsparcie dla tagów ID3"
-#: AboutDialog.cpp:357
-#: AboutDialog.cpp:360
+#: AboutDialog.cpp:357 AboutDialog.cpp:360
#, fuzzy
msgid "FLAC import and export"
msgstr "Ustawienia eksportu FLAC"
-#: AboutDialog.cpp:365
-#: AboutDialog.cpp:368
+#: AboutDialog.cpp:365 AboutDialog.cpp:368
#, fuzzy
msgid "MP2 export"
msgstr "Ustawienia eksportu MP2"
-#: AboutDialog.cpp:373
-#: AboutDialog.cpp:376
+#: AboutDialog.cpp:373 AboutDialog.cpp:376
msgid "Import via QuickTime"
-msgstr ""
+msgstr "Import poprzez QuickTime"
#. i18n-hint: Libraries that are essential to audacity
#: AboutDialog.cpp:383
msgid "Core Libraries"
-msgstr ""
+msgstr "GÅówne Biblioteki"
-#: AboutDialog.cpp:389
-#: AboutDialog.cpp:392
-#: AboutDialog.cpp:395
+#: AboutDialog.cpp:389 AboutDialog.cpp:392 AboutDialog.cpp:395
#: AboutDialog.cpp:397
#, fuzzy
msgid "Sample rate conversion"
msgstr "Konwerter próbkowania"
-#: AboutDialog.cpp:402
-#: AboutDialog.cpp:405
+#: AboutDialog.cpp:402 AboutDialog.cpp:405
msgid "Audio playback and recording"
-msgstr ""
+msgstr "Odtwarzanie i nagrywanie dźwiÄku"
#: AboutDialog.cpp:418
msgid "Features"
-msgstr ""
+msgstr "Funkcje"
-#: AboutDialog.cpp:422
-#: AboutDialog.cpp:425
-#: AboutDialog.cpp:430
-#: AboutDialog.cpp:433
-#: AboutDialog.cpp:438
-#: AboutDialog.cpp:441
-#: AboutDialog.cpp:446
-#: AboutDialog.cpp:449
+#: AboutDialog.cpp:422 AboutDialog.cpp:425 AboutDialog.cpp:430
+#: AboutDialog.cpp:433 AboutDialog.cpp:438 AboutDialog.cpp:441
+#: AboutDialog.cpp:446 AboutDialog.cpp:449
msgid "Plug-in support"
-msgstr ""
+msgstr "Wsparcie dla wtyczek"
-#: AboutDialog.cpp:454
-#: AboutDialog.cpp:457
+#: AboutDialog.cpp:454 AboutDialog.cpp:457
msgid "Sound card mixer support"
-msgstr ""
+msgstr "Wsparcie dla mikserów kart dźwiÄkowych"
-#: AboutDialog.cpp:462
-#: AboutDialog.cpp:465
+#: AboutDialog.cpp:462 AboutDialog.cpp:465
msgid "Pitch and Tempo Change support"
-msgstr ""
+msgstr "Wsparcie dla Zmiany Tempa"
#: AboutDialog.cpp:477
msgid "Program build date: "
msgstr "Data budowy programu:"
-#: AboutDialog.cpp:480
-#: AboutDialog.cpp:482
+#: AboutDialog.cpp:480 AboutDialog.cpp:482
#, fuzzy
msgid "Build type:"
msgstr "Rodzaj okna:"
#: AboutDialog.cpp:480
msgid "Debug build"
-msgstr ""
+msgstr "Wbudowane wyszukiwanie usterek"
#: AboutDialog.cpp:482
msgid "Release build"
-msgstr ""
+msgstr "Wydanie"
#. i18n-hint: The directory audacity is installed into (on *nix systems)
#: AboutDialog.cpp:487
msgid "Installation Prefix: "
-msgstr ""
+msgstr "Prefiks instalacyjny:"
#: AboutDialog.cpp:491
msgid "Settings folder: "
@@ -237,21 +212,17 @@ msgstr "Folder ustawieÅ:"
msgid "GPL License"
msgstr "Licencja GPL"
-#: AudacityApp.cpp:507
-#: Project.cpp:1844
+#: AudacityApp.cpp:498 Project.cpp:1948
#, c-format
msgid "%s is already open in another window."
msgstr "Projekt %s jest już otwarty w innym oknie."
-#: AudacityApp.cpp:509
-#: Project.cpp:1846
-#: Project.cpp:1951
-#: Project.cpp:2095
-#: Project.cpp:2232
+#: AudacityApp.cpp:500 Project.cpp:1950 Project.cpp:2055 Project.cpp:2199
+#: Project.cpp:2336
msgid "Error opening project"
msgstr "BÅÄ
d otwarcia projektu"
-#: AudacityApp.cpp:541
+#: AudacityApp.cpp:532
#, c-format
msgid "%s does not exist and could not be opened.\n"
"\n"
@@ -260,47 +231,56 @@ msgstr "%s nie istnieje i nie mógÅ zostaÄ otwarty.\n"
"\n"
"zostaÅ usuniÄty z listy historii."
-#: AudacityApp.cpp:643
+#: AudacityApp.cpp:634
msgid "Master Gain Control"
msgstr "GÅówna kontrola wzmocnienia"
-#: AudacityApp.cpp:644
+#: AudacityApp.cpp:635
msgid "Input Meter"
msgstr "Miernik wejÅciowy"
-#: AudacityApp.cpp:645
+#: AudacityApp.cpp:636
msgid "Output Meter"
msgstr "Miernik wyjÅciowy"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#: AudacityApp.cpp:809
-msgid "&Preferences...\tCtrl+,"
-msgstr "&Ustawienia...\tCtrl+,"
+#: Menus.cpp:197
+msgid "&New"
+msgstr "&Nowy"
+
+#: Menus.cpp:199
+msgid "&Open..."
+msgstr "&Otwórz..."
+
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
+
+#: AudacityApp.cpp:791
+msgid "&Preferences..."
+msgstr "&Ustawienia..."
-#: AudacityApp.cpp:901
-#: AudacityApp.cpp:978
+#: AudacityApp.cpp:878 AudacityApp.cpp:955
#, c-format
msgid "Using block size of %ld\n"
msgstr "Użycie bloku o rozmiarze %ld\n"
-#: AudacityApp.cpp:923
-#: AudacityApp.cpp:993
+#: AudacityApp.cpp:900 AudacityApp.cpp:970
#, c-format
msgid "Unknown command line option: %s\n"
msgstr "Nieznana opcja linii komend: %s\n"
-#: AudacityApp.cpp:1127
+#: AudacityApp.cpp:1104
msgid "Audacity could not find a place to store temporary files.\n"
"Please enter an appropriate directory in the preferences dialog."
msgstr "Audacity nie może znaleÅºÄ miejsca na przechowywanie\n"
"plików tymczasowych. ProszÄ podaÄ odpowiedni katalog w oknie dialogowym Ustawienia."
-#: AudacityApp.cpp:1133
+#: AudacityApp.cpp:1110
#, fuzzy
msgid "Audacity is now going to exit. Please launch Audacity again to use the new temporary directory."
msgstr "Audacity zakoÅczy swojÄ
pracÄ. ProszÄ uruchomiÄ Audacity ponownie, aby używaÄ nowego katalogu tymczasowego."
-#: AudacityApp.cpp:1165
+#: AudacityApp.cpp:1142
msgid "Running two copies of Audacity simultaneously may cause\n"
"data loss or cause your system to crash.\n"
"\n"
@@ -308,53 +288,53 @@ msgstr "Uruchamianie dwóch kopii Audacity równoczeÅnie może powodowaÄ \n"
"utratÄ danych albo zawieszenie siÄ systemu.\n"
"\n"
-#: AudacityApp.cpp:1172
+#: AudacityApp.cpp:1149
msgid "Audacity was not able to lock the temporary files directory.\n"
"This folder may be in use by another copy of Audacity.\n"
msgstr "Audacity nie byÅo w stanie zablokowaÄ katalogu z plikami tymczasowymi.\n"
"Ten katalog może byÄ używany przez innÄ
kopiÄ Audacity.\n"
-#: AudacityApp.cpp:1174
+#: AudacityApp.cpp:1151
msgid "Do you still want to start Audacity?"
msgstr "Czy nadal chcesz uruchomiÄ Audacity?"
-#: AudacityApp.cpp:1176
+#: AudacityApp.cpp:1153
msgid "Error locking temporary folder"
msgstr "BÅÄ
d podczas blokowania tymczasowego katalogu "
-#: AudacityApp.cpp:1214
+#: AudacityApp.cpp:1191
msgid "The system has detected that another copy of Audacity is running.\n"
msgstr "System wykryÅ, że uruchomiona jest jeszcze jedna kopia Audacity.\n"
-#: AudacityApp.cpp:1216
+#: AudacityApp.cpp:1193
msgid "Use the New or Open commands in the currently running Audacity\n"
"process to open multiple projects simultaneously.\n"
msgstr "Użyj poleceŠNowy lub Otwórz w aktualnie uruchomionym procesie Audacity,\n"
"aby otworzyÄ wiele projektów naraz.\n"
-#: AudacityApp.cpp:1217
+#: AudacityApp.cpp:1194
msgid "Audacity is already running"
msgstr "Audacity jest już uruchomione"
-#: AudacityApp.cpp:1234
+#: AudacityApp.cpp:1211
msgid "Command-line options supported:"
msgstr "Wspierane opcje linii poleceÅ"
#. i18n-hint: '-help' is the option and needs to stay in
#. * English. This displays a list of available options
-#: AudacityApp.cpp:1237
+#: AudacityApp.cpp:1214
msgid "\t-help (this message)"
msgstr "\t-help (ta wiadomoÅÄ)"
#. i18n-hint '-version' needs to stay in English.
-#: AudacityApp.cpp:1239
+#: AudacityApp.cpp:1216
msgid "\t-version (display Audacity version)"
msgstr "\t-version (wyÅwietl wersjÄ Audacity)"
#. i18n-hint '-test' is the option and needs to stay in
#. * English. This runs a set of automatic tests on audacity
#. * itself
-#: AudacityApp.cpp:1243
+#: AudacityApp.cpp:1220
msgid "\t-test (run self diagnostics)"
msgstr "\t-test (uruchom diagnostykÄ)"
@@ -362,15 +342,15 @@ msgstr "\t-test (uruchom diagnostykÄ)"
#. * English. 'nnn' is any integer number. This controls the
#. * size pieces that audacity uses when writing files to the
#. * disk
-#: AudacityApp.cpp:1248
+#: AudacityApp.cpp:1225
msgid "\t-blocksize nnn (set max disk block size in bytes)"
msgstr "\t-blocksize nnn (ustaw maksymalnÄ
wielkoÅÄ bloku dysku w bajtach)"
-#: AudacityApp.cpp:1249
+#: AudacityApp.cpp:1226
msgid "In addition, specify the name of an audio file or Audacity project to open it."
msgstr "Dodatkowo, ustal nazwÄ pliku dżwiÄkowego lub projektu Audacity, aby go otworzyÄ."
-#: AudacityApp.cpp:1529
+#: AudacityApp.cpp:1503
msgid "Audacity project (.AUP) files are not currently \n"
"associated with Audacity. \n"
"\n"
@@ -380,40 +360,41 @@ msgstr "Pliki projektu Audacity (.AUP) nie sÄ
\n"
"\n"
"Czy przypisaÄ je aby móc otworzyÄ program poprzez podwójne klikniÄcie myszy?"
-#: AudacityApp.cpp:1530
+#: AudacityApp.cpp:1504
msgid "Audacity Project Files"
msgstr "Pliki projektu Audacity"
-#: AudioIO.cpp:254
+#: AudioIO.cpp:268
msgid "Could not find any audio devices.\n"
msgstr "Nie znaleziono żadnych urzÄ
dzeÅ dźwiÄkowych.\n"
-#: AudioIO.cpp:255
+#: AudioIO.cpp:269
msgid "You will not be able to play or record audio.\n"
"\n"
msgstr "Nie bÄdzie można odtwarzaÄ/nagrywaÄ dźwieku.\n"
"\n"
-#: AudioIO.cpp:258
+#: AudioIO.cpp:272
msgid "Error: "
msgstr "BÅÄ
d."
-#: AudioIO.cpp:261
+#: AudioIO.cpp:275
msgid "Error Initializing Audio"
msgstr "BÅÄ
d podczas uruchamiania audio"
-#: AudioIO.cpp:1375
-msgid "Latency problem"
-msgstr "Problem z czasem oczekiwania"
-
-#: AudioIO.cpp:1375
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
+#: AudioIO.cpp:1389
+#, fuzzy
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
"Audacity has brought it back to start at zero.\n"
"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
msgstr "Ustawienie czasu oczekiwania spowodowaÅo, że nagrywany dźwiÄk zostaÅ ukryty.\n"
"Audacity zwróciÅo go z powrotem do pozycji startowej.\n"
"ByÄ może trzeba bÄdzie użyÄ NarzÄdzia do Przemieszczania Czasu (<---> lub F5) aby przesunÄ
Ä dźwiÄk w odpowiednie miejsce."
+#: AudioIO.cpp:1389
+msgid "Latency problem"
+msgstr "Problem z czasem oczekiwania"
+
#: AutoRecovery.cpp:54
msgid "Automatic Crash Recovery"
msgstr "Automatyczne odzysk po zawieszeniu siÄ"
@@ -429,7 +410,6 @@ msgid "Recoverable projects"
msgstr "Odzyskiwalne projekty"
#: AutoRecovery.cpp:78
-#: Tags.cpp:2041
msgid "Name"
msgstr "Nazwa"
@@ -452,50 +432,35 @@ msgstr "Odzyskaj Projekty"
#: AutoRecovery.cpp:127
msgid "Are you sure you don't want to recover any projects?\n"
"They can't be recovered later."
-msgstr ""
+msgstr "Czy napewno nie chcesz odzyskaÄ projektów?\n"
+"Nie bÄdziesz mógÅ ich odzyskaÄ później."
#: AutoRecovery.cpp:128
#, fuzzy
msgid "Confirm?"
msgstr "Potwierdź"
-#: AutoRecovery.cpp:146
-#: AutoRecovery.cpp:183
+#: AutoRecovery.cpp:146 AutoRecovery.cpp:183
msgid "Could not enumerate files in auto save directory"
msgstr "Pliki w katalogu zapisywalnym nie zostaÅy ponumerowane"
-#: AutoRecovery.cpp:147
-#: AutoRecovery.cpp:184
-#: Menus.cpp:3053
-#: Menus.cpp:3065
-#: Menus.cpp:5182
-#: Project.cpp:2054
-#: Project.cpp:3615
-#: Project.cpp:3694
-#: TrackPanel.cpp:6385
-#: WaveTrack.cpp:598
-#: WaveTrack.cpp:617
-#: WaveTrack.cpp:1058
-#: WaveTrack.cpp:1077
-#: WaveTrack.cpp:2087
-#: effects/Effect.cpp:513
-#: export/ExportMP2.cpp:233
-#: prefs/DirectoriesPrefs.cpp:189
-#: prefs/KeyConfigPrefs.cpp:247
-#: toolbars/ControlToolBar.cpp:542
-#: toolbars/ControlToolBar.cpp:871
+#: AutoRecovery.cpp:147 AutoRecovery.cpp:184 Menus.cpp:3096 Menus.cpp:3108
+#: Menus.cpp:5238 Project.cpp:2158 Project.cpp:3790 Project.cpp:3869
+#: TrackPanel.cpp:6392 WaveTrack.cpp:827 WaveTrack.cpp:846 WaveTrack.cpp:1864
+#: effects/Contrast.cpp:127 effects/Contrast.cpp:137 effects/Effect.cpp:515
+#: export/ExportFFmpeg.cpp:641 export/ExportMP2.cpp:231
+#: prefs/DirectoriesPrefs.cpp:189 prefs/KeyConfigPrefs.cpp:260
+#: toolbars/ControlToolBar.cpp:542 toolbars/ControlToolBar.cpp:871
msgid "Error"
msgstr "BÅÄ
d"
-#: BatchCommandDialog.cpp:57
-#: BatchCommandDialog.cpp:62
+#: BatchCommandDialog.cpp:57 BatchCommandDialog.cpp:62
#: BatchCommandDialog.cpp:63
msgid "Select Command"
msgstr "Wybierz Polecenie"
-#: BatchCommandDialog.cpp:82
-#: BatchProcessDialog.cpp:454
-#: prefs/KeyConfigPrefs.cpp:142
+#: BatchCommandDialog.cpp:82 BatchProcessDialog.cpp:454
+#: prefs/KeyConfigPrefs.cpp:158
msgid "&Command"
msgstr "&Polecenie"
@@ -503,8 +468,7 @@ msgstr "&Polecenie"
msgid "&Edit Parameters"
msgstr "&Edytuj parametry"
-#: BatchCommandDialog.cpp:91
-#: BatchProcessDialog.cpp:455
+#: BatchCommandDialog.cpp:91 BatchProcessDialog.cpp:455
msgid "&Parameters"
msgstr "&Parametry"
@@ -551,8 +515,7 @@ msgstr "Zastosuj %s z parametrem\n"
"\n"
"%s"
-#: BatchCommands.cpp:653
-#: BatchCommands.cpp:658
+#: BatchCommands.cpp:653 BatchCommands.cpp:658
msgid "Test Mode"
msgstr "Tryb testowy"
@@ -561,15 +524,14 @@ msgstr "Tryb testowy"
msgid "Apply %s"
msgstr "Zastosuj %s"
-#: BatchProcessDialog.cpp:60
-#: BatchProcessDialog.cpp:70
+#: BatchProcessDialog.cpp:60 BatchProcessDialog.cpp:70
#: BatchProcessDialog.cpp:71
msgid "Apply Chain"
msgstr "Zastosuj Tor"
#: BatchProcessDialog.cpp:67
msgid "CleanSpeech Batch Processing"
-msgstr ""
+msgstr "Przetwarzanie wsadowe CzystejMowy"
#: BatchProcessDialog.cpp:94
msgid "&Select chain"
@@ -587,23 +549,14 @@ msgstr "Zastosuj do aktualnego &Projektu"
msgid "Apply to &Files..."
msgstr "Zastosuj do &Plików..."
-#: BatchProcessDialog.cpp:108
-#: BatchProcessDialog.cpp:247
-#: Tags.cpp:2080
-#: Tags.cpp:2084
-#: Tags.cpp:2384
-#: Tags.cpp:2388
-#: UploadDialog.cpp:180
-#: effects/AvcCompressor.cpp:732
-#: effects/ChangeLength.cpp:183
-#: effects/SpikeCleaner.cpp:188
-#: effects/VST/VSTEffect.cpp:453
+#: BatchProcessDialog.cpp:108 BatchProcessDialog.cpp:247 UploadDialog.cpp:180
+#: effects/AvcCompressor.cpp:732 effects/ChangeLength.cpp:183
+#: effects/SpikeCleaner.cpp:188 effects/VST/VSTEffect.cpp:453
#: effects/audiounits/AudioUnitEffect.cpp:887
msgid "&Cancel"
msgstr "&Cofnij"
-#: BatchProcessDialog.cpp:146
-#: BatchProcessDialog.cpp:191
+#: BatchProcessDialog.cpp:146 BatchProcessDialog.cpp:191
msgid "No chain selected"
msgstr "Nie zaznaczono toru"
@@ -627,7 +580,7 @@ msgstr "Zaznacz plik(i) do przetwarzania wsadowego..."
#: BatchProcessDialog.cpp:209
msgid "Vocal files (*.wav;*.mp3)|*.wav;*.mp3|WAV files (*.wav)|*.wav|MP3 files (*.mp3)|*.mp3"
-msgstr ""
+msgstr "Pliki wokalowe (*.wav;*.mp3)|*.wav;*.mp3|WAV pliki (*.wav)|*.wav|MP3 pliki (*.mp3)|*.mp3"
#: BatchProcessDialog.cpp:210
msgid "All files (*.*)|*.*|WAV files (*.wav)|*.wav|AIFF files (*.aif)|*.aif|AU files (*.au)|*.au|MP3 files (*.mp3)|*.mp3|Ogg Vorbis files (*.ogg)|*.ogg|FLAC files (*.flac)|*.flac"
@@ -641,8 +594,7 @@ msgstr "Przetwarzanie..."
msgid "File"
msgstr "Plik"
-#: BatchProcessDialog.cpp:356
-#: BatchProcessDialog.cpp:360
+#: BatchProcessDialog.cpp:356 BatchProcessDialog.cpp:360
#: BatchProcessDialog.cpp:361
msgid "Edit Chains"
msgstr "Edytuj Tory"
@@ -651,19 +603,12 @@ msgstr "Edytuj Tory"
msgid "&Chains"
msgstr "&Tory"
-#: BatchProcessDialog.cpp:435
-#: Tags.cpp:826
-#: Tags.cpp:1465
-#: Tags.cpp:2064
+#: BatchProcessDialog.cpp:435 Tags.cpp:813
msgid "&Add"
msgstr "&Dodaj"
-#: BatchProcessDialog.cpp:436
-#: LabelDialog.cpp:128
-#: Tags.cpp:827
-#: Tags.cpp:1466
-#: Tags.cpp:2065
-#: TrackPanel.cpp:4176
+#: BatchProcessDialog.cpp:436 LabelDialog.cpp:128 Tags.cpp:814
+#: TrackPanel.cpp:4186
msgid "&Remove"
msgstr "&UsuÅ"
@@ -677,8 +622,8 @@ msgstr "T&or (Kliknij dwukrotnie lub naciÅnij spacjÄ, aby edytowaÄ)"
#. i18n-hint: This is the number of the command in the list
#: BatchProcessDialog.cpp:453
-msgid "No"
-msgstr "Nie"
+msgid "Num"
+msgstr "Numer"
#: BatchProcessDialog.cpp:459
msgid "&Insert"
@@ -739,7 +684,7 @@ msgstr "Usuwanie zależnoÅci"
msgid "Copying audio data into project..."
msgstr "Kopiowanie danych dźwiÄkowych do projektu..."
-#: Dependencies.cpp:223
+#: Dependencies.cpp:226
msgid "Your project currently depends on the presence of other files.\n"
"Copy audio from the following files into your project to make it self-contained?\n"
"This will need more disc space but is safer."
@@ -747,65 +692,63 @@ msgstr "Twój projekt zależy od obecnoÅci innych plików. \n"
"KopiowaÄ dźwiÄk z tych plików do projektu, aby zawieraÅy siÄ w projekcie?\n"
"Wymagana jest do tego wiÄksza przestrzeÅ dyskowa, lecz jest to bezpieczniejsze."
-#: Dependencies.cpp:270
+#: Dependencies.cpp:273
msgid "Project depends on other audio files"
msgstr "Projekt zależy od innych plików dźwiÄkowych"
-#: Dependencies.cpp:291
+#: Dependencies.cpp:294
msgid "Project Dependencies"
msgstr "ZależnoÅci peojektowe"
-#: Dependencies.cpp:294
+#: Dependencies.cpp:297
msgid "Audio file"
msgstr "Plik dźwiÄkowy"
-#: Dependencies.cpp:296
+#: Dependencies.cpp:299
msgid "Disk space"
msgstr "PrzestrzeÅ dyskowa"
-#: Dependencies.cpp:301
+#: Dependencies.cpp:304
msgid "Copy Selected Audio Into Project"
msgstr "Skopiuj zaznaczone dźwiÄki do projektu"
-#: Dependencies.cpp:308
-#: Dependencies.cpp:414
+#: Dependencies.cpp:311 Dependencies.cpp:417
msgid "Cancel Save"
msgstr "Cofnij Zapisz"
-#: Dependencies.cpp:310
+#: Dependencies.cpp:313
msgid "Do Not Copy Any Audio"
msgstr "Nie kopiuj dźwiÄku"
-#: Dependencies.cpp:312
+#: Dependencies.cpp:315
msgid "Copy All Audio into Project (Safer)"
msgstr "Skopiuj caÅy dźwiÄk do projektu (Bezpieczniejsze)"
-#: Dependencies.cpp:321
-#: Dependencies.cpp:326
+#: Dependencies.cpp:324 Dependencies.cpp:329
msgid "Ask me"
msgstr "Zapytaj mnie"
-#: Dependencies.cpp:322
+#: Dependencies.cpp:325
msgid "Always copy all audio (safest)"
msgstr "Zawsze kopiuj caÅy dźwiÄk (Najbezpieczniejsze)"
-#: Dependencies.cpp:323
+#: Dependencies.cpp:326
msgid "Never copy any audio"
msgstr "Nigdy nie kopiuj żadnego dźwiÄku"
-#: Dependencies.cpp:325
+#: Dependencies.cpp:328
msgid "Whenever a project depends on other files:"
msgstr "Gdy projekt jest zależny od innych plików:"
-#: Dependencies.cpp:413
+#: Dependencies.cpp:416
msgid "If you proceed, your project will not be saved to disk. Is this what you want?"
msgstr "JeÅli bÄdziesz kontynuowaÅ, twój projekt nie zostanie zapisany na dysku. Czy tego chcesz?"
-#: Dependencies.cpp:453
+#: Dependencies.cpp:456
msgid "Your project is self-contained; it does not depend on any external audio files."
msgstr "Twój projekt jest niezależny od żadnych zawnÄtrznych plików dźwiÄkowych."
-#: Dependencies.cpp:454
+#: Dependencies.cpp:457
msgid "Dependency check"
msgstr "Sprawdzanie zależnoÅci"
@@ -815,9 +758,7 @@ msgid "Warning: there is very little free disk space left on this volume.\n"
msgstr "Ostrzeżenie: PozostaÅo bardzo maÅo miejsca w tym katalogu.\n"
"ProszÄ wybraÄ jeszcze jeden tymczasowy katalog w ustawieniach programu."
-#: DirManager.cpp:223
-#: DirManager.cpp:254
-#: DirManager.cpp:337
+#: DirManager.cpp:223 DirManager.cpp:254 DirManager.cpp:337
msgid "Progress"
msgstr "PostÄp"
@@ -868,7 +809,7 @@ msgstr "Nie można usunÄ
Ä %s'"
msgid "Renamed file: %s\n"
msgstr "Zmieniono nazwÄ plku: %s\n"
-#: DirManager.cpp:1160
+#: DirManager.cpp:1166
#, c-format
msgid "Unable to rename '%s' to '%s'"
msgstr "Nie można zmieniÄ nazwy %s na %s'"
@@ -876,40 +817,39 @@ msgstr "Nie można zmieniÄ nazwy %s na %s'"
#: DirManager.cpp:1183
#, c-format
msgid "Changed block %s to new alias name\n"
-msgstr ""
+msgstr "ZmieÅ blok %s na nowÄ
nazwÄ \n"
-#: DirManager.cpp:1224
-#: DirManager.cpp:1515
+#: DirManager.cpp:1249 DirManager.cpp:1540
msgid "Inspecting project file data..."
msgstr "Sprawdzanie plików projektu..."
-#: DirManager.cpp:1240
+#: DirManager.cpp:1265
#, c-format
msgid "Orphaned blockfile: (%s)"
msgstr "Odosobniony plik blokowy: (%s)"
-#: DirManager.cpp:1265
+#: DirManager.cpp:1290
#, c-format
msgid "Missing alias file: (%s)"
msgstr "BrakujÄ
cy plik aliasowy: (%s)"
-#: DirManager.cpp:1285
+#: DirManager.cpp:1310
#, c-format
msgid "Missing summary file: (%s.auf)"
msgstr "BrakujÄ
cy plik podsumowujÄ
cy: (%s.auf)"
-#: DirManager.cpp:1305
+#: DirManager.cpp:1330
#, c-format
msgid "Missing data file: (%s.au)"
msgstr "BrakujÄ
cy plik danych: (%s.au)"
-#: DirManager.cpp:1319
+#: DirManager.cpp:1344
msgid "Project check found inconsistencies inspecting the loaded project data;\n"
"click 'Details' for a complete list of errors, or 'OK' to proceed to more options."
msgstr "Test projektu znalazÅ niespójnoÅci w danych projektu;\n"
"kliknij na 'SzczegóÅy', aby uzyskaÄ peÅnÄ
listÄ bÅÄdów, lub kliknij'OK', aby kontynuowaÄ i uzyskaÄ wiÄcej opcji."
-#: DirManager.cpp:1331
+#: DirManager.cpp:1356
#, c-format
msgid "Project check found %d orphaned blockfile[s]. These files are\n"
"unused and probably left over from a crash or some other bug.\n"
@@ -918,30 +858,25 @@ msgstr "Test projektu znalazÅ %d odosbniony plik[i]. Pliki te\n"
"sÄ
nieużywane i sÄ
prawdopodobnie pozostaÅoÅciami po zawieszeniu siÄ lub innym bÅÄdzie.\n"
"Powinny zostaÄ usuniÄte, aby uniknÄ
Ä ryzyka konfliktu."
-#: DirManager.cpp:1336
+#: DirManager.cpp:1361
msgid "Delete orphaned files [safe and recommended]"
msgstr "UsuÅ odosobnione pliki [bezpieczne i zalecane]"
-#: DirManager.cpp:1337
+#: DirManager.cpp:1362
msgid "Continue without deleting; silently work around the extra files"
msgstr "Kontynuuj bez usuwania, pracuj z dodatkowymi plikami"
-#: DirManager.cpp:1338
+#: DirManager.cpp:1363
msgid "Close project immediately with no changes"
msgstr "Natychmiast zamknij projekt bez bez zmian"
-#: DirManager.cpp:1340
-#: DirManager.cpp:1375
-#: DirManager.cpp:1421
-#: DirManager.cpp:1463
-#: export/Export.cpp:576
-#: export/Export.cpp:597
-#: export/Export.cpp:616
-#: widgets/Warning.cpp:55
+#: DirManager.cpp:1365 DirManager.cpp:1400 DirManager.cpp:1446
+#: DirManager.cpp:1488 export/Export.cpp:582 export/Export.cpp:603
+#: export/Export.cpp:622 widgets/Warning.cpp:55
msgid "Warning"
msgstr "Ostrzeżenie"
-#: DirManager.cpp:1366
+#: DirManager.cpp:1391
#, c-format
msgid "Project check detected %d input file[s] being used in place\n"
"('alias files') are now missing. There is no way for Audacity\n"
@@ -954,22 +889,19 @@ msgstr "Test projektu wykryŠ%d, że brakuje plików wsadowych używanych\n"
"automatycznie, możesz wstawiÄ ciszÄ w miejsce brakujÄ
cych\n"
"plików lub zamknÄ
Ä projekt i próbowaÄ odzyskaÄ brakujÄ
ce pliki rÄcznie."
-#: DirManager.cpp:1371
+#: DirManager.cpp:1396
msgid "Replace missing data with silence [permanent upon save]"
msgstr "UzupeÅnij brakujÄ
ce dane ciszÄ
[nie do cofniÄcia po zapisaniu]"
-#: DirManager.cpp:1372
-#: DirManager.cpp:1460
+#: DirManager.cpp:1397 DirManager.cpp:1485
msgid "Temporarily replace missing data with silence [this session only]"
msgstr "Tymczasowo uzupeÅnij brakujÄ
ce dane ciszÄ
[tylko w tej sesji]"
-#: DirManager.cpp:1373
-#: DirManager.cpp:1419
-#: DirManager.cpp:1461
+#: DirManager.cpp:1398 DirManager.cpp:1444 DirManager.cpp:1486
msgid "Close project immediately with no further changes"
msgstr "Natychmiast zamknij projekt bez dalszych zmian"
-#: DirManager.cpp:1412
+#: DirManager.cpp:1437
#, c-format
msgid "Project check detected %d missing summary file[s] (.auf).\n"
"Audacity can fully regenerate these summary files from the\n"
@@ -978,15 +910,15 @@ msgstr "Test projektu wykryÅ %d brakujÄ
ce pliki (.auf).\n"
"Audacity może je w peÅni odzyskaÄ z oryginalnych\n"
"danych z projektu."
-#: DirManager.cpp:1417
+#: DirManager.cpp:1442
msgid "Regenerate summary files [safe and recommended]"
msgstr "Odzyskaj pliki [bezpieczne i zalecane]"
-#: DirManager.cpp:1418
+#: DirManager.cpp:1443
msgid "Fill in silence for missing display data [this session only]"
msgstr "WypeÅnij ciszÄ
brakujÄ
ce dane [tylko w tej sesji]"
-#: DirManager.cpp:1454
+#: DirManager.cpp:1479
#, c-format
msgid "Project check detected %d missing audio data blockfile[s] (.au), \n"
"probably due to a bug, system crash or accidental deletion.\n"
@@ -1001,27 +933,27 @@ msgstr "Test projektu wykryÅ %d brakujÄ
ce bloki dźwiÄku (.au), \n"
"możesz wstawiÄ ciszÄ w miejsce brakujÄ
cych danych na zawsze lub\n"
"tylko chwilowo, lub zamknÄ
Ä projekt i spróbowaÄ odzyskaÄ dane rÄcznie."
-#: DirManager.cpp:1459
+#: DirManager.cpp:1484
msgid "Replace missing data with silence [permanent immediately]"
msgstr "ZastÄ
p brakujÄ
ce dane ciszÄ
[na zawsze]"
-#: DirManager.cpp:1487
+#: DirManager.cpp:1512
msgid "Cleaning up unused directories in project data..."
msgstr "Czyszczenie nieużywanych katalogów w danych projektu..."
-#: DirManager.cpp:1558
+#: DirManager.cpp:1583
msgid "Caching audio"
msgstr "Przechowywanie dźwiÄku w pamiÄci cache"
-#: DirManager.cpp:1559
+#: DirManager.cpp:1584
msgid "Caching audio into memory..."
msgstr "Przechowywanie dźwiÄku w pamiÄci..."
-#: DirManager.cpp:1592
+#: DirManager.cpp:1617
msgid "Saving recorded audio"
msgstr "Zapisywanie nagranego dźwiÄku"
-#: DirManager.cpp:1593
+#: DirManager.cpp:1618
msgid "Saving recorded audio to disk..."
msgstr "Zapisywanie nagranego dźwiÄku na dysk..."
@@ -1031,58 +963,55 @@ msgstr "ProstokÄ
t"
#: FFmpeg.cpp:36
msgid "FFmpeg support not compiled in"
-msgstr ""
+msgstr "Wsparcie dla FFmpeg nieskompilowane"
-#: FFmpeg.cpp:101
+#: FFmpeg.cpp:103
msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
#: FFmpeg.cpp:104
msgid "FFmpeg startup failed"
-msgstr ""
+msgstr "ZaÅadowanie FFmpeg nie powiodÅo siÄ"
-#: FFmpeg.cpp:115
+#: FFmpeg.cpp:112
msgid "FFmpeg library not found"
-msgstr ""
+msgstr "Nie znaleziono biblioteki FFmpeg"
-#: FFmpeg.cpp:170
+#: FFmpeg.cpp:172
#, fuzzy
msgid "Locate FFmpeg"
msgstr "Zlokalizuj Lame"
-#: FFmpeg.cpp:190
+#: FFmpeg.cpp:192
#, fuzzy, c-format
msgid "Audacity needs the file %s to import and export audio via FFmpeg."
msgstr "Audacity potrzebuje pliku %s do stworzenia pliku MP3."
-#: FFmpeg.cpp:196
-#: export/ExportMP3.cpp:562
+#: FFmpeg.cpp:198 export/ExportMP3.cpp:562
#, c-format
msgid "Location of %s:"
msgstr "Lokalizacja %s:"
-#: FFmpeg.cpp:205
-#: export/ExportMP3.cpp:571
+#: FFmpeg.cpp:207 export/ExportMP3.cpp:571
#, c-format
msgid "To find %s, click here -->"
msgstr "Aby znaleÅºÄ %s, kliknij tutaj -->"
-#: FFmpeg.cpp:211
-#: export/ExportMP3.cpp:577
+#: FFmpeg.cpp:213 export/ExportMP3.cpp:577
msgid "Browse..."
msgstr "Wybierz..."
-#: FFmpeg.cpp:212
+#: FFmpeg.cpp:214
#, fuzzy
msgid "To get a free copy of FFmpeg, click here -->"
msgstr "Aby otrzymaÄ darmowÄ
kopiÄ Lame, kliknij tutaj -->"
#: FFmpeg.cpp:215 export/ExportMP3.cpp:579
msgid "Download"
-msgstr ""
+msgstr "Pobierz"
# i18n-hint: It's asking for the location of a file, for
# example, "Where is lame_enc.dll?" - you could translate
@@ -1090,51 +1019,49 @@ msgstr ""
#. i18n-hint: It's asking for the location of a file, for
#. example, "Where is lame_enc.dll?" - you could translate
#. "Where would I find the file %s" instead if you want.
-#: FFmpeg.cpp:235
-#: export/ExportMP3.cpp:601
+#: FFmpeg.cpp:237 export/ExportMP3.cpp:601
#, c-format
msgid "Where is %s?"
msgstr "Gdzie jest %s?"
#: FFmpeg.cpp:407
msgid "Failed to find compatible FFmpeg libraries"
-msgstr ""
+msgstr "Nie znaleziono kompatybilnych bibliotek FFmpeg"
-#: FFmpeg.h:95
+#: FFmpeg.h:87
msgid "FFmpeg not found"
-msgstr ""
+msgstr "Nie znaleziono FFmpeg"
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
#: FFmpeg.h:109
msgid "Do not show this warning again"
-msgstr ""
+msgstr "Nie pokazuj wiÄcej tego ostrzeżenia"
-#: FFmpeg.h:251
+#: FFmpeg.h:242
#, fuzzy
msgid "Only avformat.dll|*avformat*.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
msgstr "Tylko lame_enc.dll|lame_enc.dll|Biblioteki dynamiczne (*.dll)|*.dll|All Files (*.*)|*"
-#: FFmpeg.h:268
+#: FFmpeg.h:275
msgid "Dynamic Libraries (*.dylib)|*.dylib|All Files (*)|*"
-msgstr ""
+msgstr "Biblioteki Dynamiczne (*.dylib)|*.dylib|All Files (*)|*"
-#: FFmpeg.h:266
+#: FFmpeg.h:302
msgid "Only libavformat.so|libavformat.so*|Dynamically Linked Libraries (*.so*)|*.so*|All Files (*)|*"
-msgstr ""
+msgstr "Tylko libavformat.so|libavformat.so*|Dynamicznie ÅÄ
czone Biblioteki (*.so*)|*.so*|Wszystkie Pliki (*)|*"
#: FreqWindow.cpp:103
msgid "Frequency Analysis"
msgstr "Analiza widma"
-#: FreqWindow.cpp:139
-#: TrackPanel.cpp:556
-#: prefs/GUIPrefs.cpp:156
+#: FreqWindow.cpp:139 TrackPanel.cpp:553 prefs/GUIPrefs.cpp:156
msgid "Spectrum"
msgstr "Spektrum"
@@ -1157,15 +1084,12 @@ msgstr "Ulepszona autokorelacja"
msgid "Cepstrum"
msgstr "Cepstrum"
-#: FreqWindow.cpp:150
-#: FreqWindow.cpp:154
+#: FreqWindow.cpp:150 FreqWindow.cpp:154
#, fuzzy
msgid "Algorithm"
msgstr "Algorytm:"
-#: FreqWindow.cpp:169
-#: FreqWindow.cpp:173
-#: HistoryWindow.cpp:79
+#: FreqWindow.cpp:169 FreqWindow.cpp:173 HistoryWindow.cpp:79
msgid "Size"
msgstr "Rozmiar"
@@ -1179,8 +1103,7 @@ msgstr "Rozmiar"
msgid " window"
msgstr " (okno)"
-#: FreqWindow.cpp:187
-#: FreqWindow.cpp:191
+#: FreqWindow.cpp:187 FreqWindow.cpp:191
#, fuzzy
msgid "Function"
msgstr "Funkcja:"
@@ -1193,65 +1116,68 @@ msgstr "Skala liniowa"
msgid "Log frequency"
msgstr "Skala logarytmiczna"
-#: FreqWindow.cpp:201
-#: FreqWindow.cpp:205
+#: FreqWindow.cpp:201 FreqWindow.cpp:205
#, fuzzy
msgid "Axis"
msgstr "OÅ:"
-#: FreqWindow.cpp:212
-#: LabelDialog.cpp:130
-#: Menus.cpp:241
-#: Menus.cpp:276
+#: FreqWindow.cpp:212 LabelDialog.cpp:130 Menus.cpp:242 Menus.cpp:277
msgid "&Export..."
msgstr "&Eksportuj..."
-#: FreqWindow.cpp:213
-#: export/ExportCL.cpp:325
-#: export/ExportMultiple.cpp:347
+#: FreqWindow.cpp:213 effects/Contrast.cpp:437 export/ExportCL.cpp:358
+#: export/ExportMultiple.cpp:344
msgid "Export"
msgstr "Eksportuj"
-#: FreqWindow.cpp:216
-#: FreqWindow.cpp:217
-#: widgets/ErrorDialog.cpp:161
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
+#: FreqWindow.cpp:216 FreqWindow.cpp:217 widgets/ErrorDialog.cpp:161
msgid "Close"
msgstr "Zamknij"
-#: FreqWindow.cpp:280
-#: FreqWindow.cpp:410
-#: effects/AutoDuck.cpp:489
-#: effects/AutoDuck.cpp:523
-#: effects/AutoDuck.cpp:792
-#: effects/Compressor.cpp:352
-#: effects/Compressor.cpp:360
-#: effects/Equalization.cpp:1123
-#: effects/Equalization.cpp:1125
-#: effects/Equalization.cpp:1133
-#: effects/Equalization.cpp:1199
-#: effects/Equalization.cpp:1408
-#: effects/Equalization.cpp:1419
-#: effects/Normalize.cpp:367
-#: widgets/Meter.cpp:417
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr ""
+
+#: FreqWindow.cpp:280 FreqWindow.cpp:410 effects/AutoDuck.cpp:489
+#: effects/AutoDuck.cpp:523 effects/AutoDuck.cpp:792
+#: effects/Compressor.cpp:352 effects/Compressor.cpp:360
+#: effects/Equalization.cpp:1121 effects/Equalization.cpp:1123
+#: effects/Equalization.cpp:1131 effects/Equalization.cpp:1197
+#: effects/Equalization.cpp:1406 effects/Equalization.cpp:1417
+#: effects/Normalize.cpp:368 widgets/Meter.cpp:413
msgid "dB"
msgstr "dB"
#. i18n-hint: This is the abbreviation for "Hertz", or
#. cycles per second.
-#: FreqWindow.cpp:295
-#: FreqWindow.cpp:450
-#: effects/Equalization.cpp:1164
-#: effects/Equalization.cpp:1195
-#: import/ImportRaw.cpp:399
+#: FreqWindow.cpp:295 FreqWindow.cpp:450 effects/Equalization.cpp:1162
+#: effects/Equalization.cpp:1193 import/ImportRaw.cpp:402
msgid "Hz"
msgstr "Hz"
+#: Menus.cpp:4012
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "Aby wykreÅliÄ widmo, wszystkie Åcieżki muszÄ
mieÄ tÄ samÄ
czÄstotliwoÅÄ próbkowania."
+
+#: Menus.cpp:4038
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "Zaznaczono zbyt dużÄ
próbkÄ audio. Tylko pierwsze %.1f sekund zostanie przeanalizowane."
+
#: FreqWindow.cpp:394
msgid "Not enough data selected."
msgstr "Za maÅo zaznaczonych danych."
-#: FreqWindow.cpp:458
-#: effects/AutoDuck.cpp:794
+#: FreqWindow.cpp:458 effects/AutoDuck.cpp:794
msgid "s"
msgstr "s"
@@ -1273,12 +1199,8 @@ msgstr "spectrum.txt"
msgid "Export Spectral Data As:"
msgstr "Eksportuj dane widma jako:"
-#: FreqWindow.cpp:1087
-#: LabelDialog.cpp:603
-#: Menus.cpp:2555
-#: Project.cpp:2604
-#: Project.cpp:3667
-#: prefs/KeyConfigPrefs.cpp:182
+#: FreqWindow.cpp:1087 LabelDialog.cpp:603 Menus.cpp:2563 Project.cpp:2737
+#: Project.cpp:3842 effects/Contrast.cpp:567 prefs/KeyConfigPrefs.cpp:195
msgid "Couldn't write to file: "
msgstr "Nie można zapisaÄ do pliku: "
@@ -1290,6 +1212,21 @@ msgstr "CzÄstotliwoÅÄ (Hz)\tPoziom (dB)"
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "Lag (sekundy)\tCzÄstotliwoÅÄ (Hz)\tPoziom"
+#: GStreamerLoader.cpp:220
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr "GStreamer %s: %s"
+
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:240
+msgid "GStreamer startup failed"
+msgstr "ZaÅadowanie GStreamera nie powiodÅo siÄ"
+
#: HelpText.cpp:85
#, fuzzy
msgid "To [[welcome|Welcome screen]]"
@@ -1309,15 +1246,15 @@ msgstr "Nagrywanie dźwiÄku"
#: HelpText.cpp:105
msgid "Recording - Choosing the Input Device"
-msgstr ""
+msgstr "Nagrywanie - Wybór UrzÄ
dzenia"
#: HelpText.cpp:109
msgid "Recording - Choosing the Input Source"
-msgstr ""
+msgstr "Nagrywanie - Wybór ŹródÅa"
#: HelpText.cpp:113
msgid "Recording - Setting the Input Level"
-msgstr ""
+msgstr "Nagrywanie - Ustawianie Poziomu Wysterowania"
#: HelpText.cpp:117
#, fuzzy
@@ -1349,7 +1286,7 @@ msgstr "Brak lokalnej pomocy"
#: HelpText.cpp:148
msgid "</p><center><h3>Getting Started</h3></center><br>"
-msgstr ""
+msgstr "</p><center><h3>Dla poczÄ
tkujÄ
cych</h3></center><br>"
#: HelpText.cpp:150
#, fuzzy
@@ -1358,11 +1295,11 @@ msgstr "<p>Witaj w Audacity"
#: HelpText.cpp:151
msgid "Learn how to: <ul><li>[[play|play]] an existing audio file <li>[[record|record]] your voice, LP or tape <li>[[edit|edit]] sounds <li>[[save|save or open an Audacity project]] <li>[[export|export]] to an MP3 or other audio file, or [[burncd|burn to a CD]] </ul></p><p>"
-msgstr ""
+msgstr "Naucz siÄ jak: <ul><li>[[odtwarzaÄ|odtwarzaÄ]] istniejÄ
cy plik dźwiÄkowy <li>[[nagrywaÄ|nagrywaÄ]] swój gÅos, <li>[[edytowaÄ|edytowaÄ]] dźwiÄki <li>[[zapisywaÄ|zapisywaÄ lub otwieraÄ projekt Audacity]] <li>[[eksport|eksport]] do formatu MP3 lub innego pliku dźwiÄkowego, lub [[wypalaÄ|wypalaÄ CD]] </ul></p><p>"
#: HelpText.cpp:159
msgid "This screen can be viewed at any time by clicking the <i>Help</i> menu, then <i>Show Welcome Message</i>. For a detailed guide to all the Audacity menus and controls, click <i>Help</i> menu then <i>Index</i>, or download our <a href=\"http://audacity.sourceforge.net/help/documentation/manual_1.4.pdf\">full Manual</a> in PDF format.</p>"
-msgstr ""
+msgstr "Możesz wywoÅaÄ to okno w każdej chwili klikajÄ
c na menu <i>Pomoc</i>, a nastÄpnie <i>Pokaż wiadomoÅÄ powitalnÄ
</i>. Aby uzyskaÄ informacje na temat wszystkich menu Audacity, kliknij na <i>Help</i> menu i nastÄpnie na <i>Index</i>, lub pobierz nasz <a href=\"http://audacity.sourceforge.net/help/documentation/manual_1.4.pdf\">PodrÄcznik</a> w formacie PDF.</p>"
#: HelpText.cpp:172
#, fuzzy
@@ -1371,19 +1308,19 @@ msgstr "Możesz przenieÅÄ istniejÄ
ce pliki do Audacity, lub użyj polecenia <
#: HelpText.cpp:194
msgid "<p><b>To record:</b> Set the recording device and input source, adjust the input level, then press the red Record button.</b></p><p> 1) [[inputdevice|Set Recording Device]] either in the <i>Audio I/O tab of Preferences</i> or in <i>Device Toolbar</i>. Audio I/O Preferences lets you choose stereo recording if required.<br> 2) [[inputsource|Set input source]] for that device (for example, microphone or line-in) in the dropdown selector of the <i>Mixer Toolbar</i>, or (on some systems) at Recording Device in the <i>Audio I/O tab of Preferences</i> or in <i>Device Toolbar</i>.<br> 3) [[inputlevel|Adjust input level]] using the right-hand slider on the <i>Mixer Toolbar</i>. Correct adjustment of level before recording is essential to avoid noise or distortion. </p><p> More help at: \"Recording\" <a href=\"http://audacity.sourceforge.net/help/faq\">FAQs</a>, our Tutorial <a href=\"http://www.audacityteam.org/manual/index.php?title=Tutorial_-_Your_First_Recording\"> Your First Recording</a> in the <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">Manual</a>, and our Wiki [[wiki:Recording_Tips|Recording Tips]] and [[wiki:Troubleshooting_Recordings|Troubleshooting Recordings]] pages. </p><br><br>"
-msgstr ""
+msgstr "<p><b>Aby nagrywaÄ:</b> Ustaw urzÄ
dzenie nagrywajÄ
ce i źródÅo dźwiÄku, sprawdź poziom wysterowania, a nastÄpnie naciÅnij czerwony przycisk Nagrywaj.</b></p><p> 1) [[inputdevice|Ustaw urzÄ
dzenie nagrywajÄ
ce]] albo w <i>zakÅadce We/Wy DźwiÄku w Ustawieniach</i> albo w <i>Kolumnie UrzÄ
dzenia</i>. Ustawienia We/Wy DźwiÄku pozwalajÄ
ci na wybranie nagrywania w stereo jeÅli chcesz.<br> 2) [[inputsource|Ustaw źródÅo]] dla urzÄ
dzenia (na przykÅad, mikrofon lub wejÅcie liniowe) w menu w >Kolumnie Miksera</i>, lub (w niektórych systemach) w UrzÄ
dzeniu NagrywajÄ
cym w <i>We/Wy DźwiÄku w Ustawieniach</i> lub w <i>Kolumnie UrzÄ
dzenia</i>.<br> 3) [[inputlevel|Wyreguluj poziom wysterowania]] używajÄ
c prawego suwaka na <i>Kolumnie Miksera</i>. PrawidÅowe ustawienie poziomu przed rozpoczÄciem nagrywania jest bardzo ważne, aby uniknÄ
Ä zakÅóceÅ lub znieksztaÅceÅ. </p><p> WiÄcej informacji na: \"Nagrywanie\" <a href=\"http://audacity.sourceforge.net/help/faq\">FAQs</a>, nasz Tutorial <a href=\"http://www.audacityteam.org/manual/index.php?title=Tutorial_-_Your_First_Recording\"> Twoje Pierwsze Nagranie</a> w <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">PodrÄczniku</a>, oraz nasze Wiki [[wiki:Recording_Tips|Porady w nagrywaniu]] i [[wiki:Troubleshooting_Recordings|Problemy z Nagrywaniem]]. </p><br><br>"
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
-msgstr ""
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgstr "<p>UrzÄ
dzenie wejÅciowe jest fizycznym urzÄ
dzeniem, którego używasz do nagrywania. Możesz je wybraÄ w \"UrzÄ
dzenie NagrywajÄ
ce\" w <i>zakÅadce We/Wy DźwiÄku w Ustawieniach</i>, Na Windows i Linux, Ustawienia sÄ
na dole menu <i>Edycja</i>. Na Mac, w menu <i>Audacity(/i>. Możesz również wybraÄ UrzÄ
dzenie NagrywajÄ
ce w <i>Kolumnie UrzÄ
dzenia</i>, która jest w <i>Pokaż > Kolumny...</i>. </p><p> Audacity używa automatycznie urzÄ
dzenia, którego używa system, (zazwyczaj wbudowanego urzÄ
dzenia dźwiÄkowego), wiÄc w wiÄkszoÅci przypadków nie trzeba nic zmieniaÄ. W Windows, urzÄ
dzenie to może zostaÄ wybrane jako \"Microsoft Sound Mapper\". JeÅli nagrywasz z zewnÄtrznego urzÄ
dzenia USB lub Firewire jak np. adapteru USB, wybierz jego nazwÄ jako urzÄ
dzenia nagrywajÄ
cego po podÅÄ
czeniu go.</p><p> Powrót do [[record|Nagrywanie dźwiÄku]] <br></p>"
#: HelpText.cpp:244
msgid "<p>Select the input source (such as microphone or line-in) for your [[inputdevice|recording device]]:<br> - <b>On Windows (except Vista)</b> and <b>Linux</b>, in the dropdown selector on the right of the <i>Mixer Toolbar</i>.<br> - <b>On Windows Vista</b> and <b>Mac</b>, at Recording Device on the <i>Audio I/O tab of Preferences</i>, or in <i>Device Toolbar</i>. The source will be shown as part of the parent device (for example, <i>High Def Audio Card: Microphone</i>). If necessary, Mac users can choose the input source at Apple Audio MIDI Setup. <br><i><b>Note:</b> many USB or Firewire recording devices don't have a choice of inputs, so this step is not necessary. If in doubt, see the documentation for your device. </i></p><p> <b>Tip:</b> To <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record audio playing on the computer</a>, Windows and Linux users can choose the \"Stereo Mix\", \"Wave Out\", \"Sum\" or comparable input source. </p><p> Back to [[record|Recording Audio]] <br></p>"
-msgstr ""
+msgstr "<p>Wybierz źródÅo (na przykÅad mikrofon lub wejÅcie liniowe) dla twojego [[inputdevice|urzÄ
dzenia nagrywajÄ
cego]]:<br> - <b>W Windows (poza VistÄ
)</b> i <b>Linux</b>, w menu po prawej stronie <i>Kolumny Miksera</i>.<br> - <b>W Windows Vista</b> i <b>Mac</b>, w UrzÄ
dzeniu NagrywajÄ
cym w <i>zakÅadce We/Wy DźwiÄku w Ustawieniach</i>, lub w <i>Kolumnie UrzÄ
dzenia</i>. ŹródÅo pokaże siÄ jako czÄÅÄ urzÄ
dzenia nadrzÄdnego (na przykÅad, <i>Karta DźwiÄkowa Wysokiej JakoÅci: Mikrofon</i>). JeÅli trzeba, użytkownicy Mac-a mogÄ
wybraÄ ÅºródÅo w Ustawieniach Apple Audio MIDI. <br><i><b>Notatka:</b> wiele urzÄ
dzeÅ nagrywajÄ
cych USB lub Firewire nie ma możliwoÅci wyboru wejÅÄ, wiÄc krok ten nie jest potrzebny. W razie wÄ
tpliwoÅci, zajrzyj do dokumentacji swojego urzÄ
dzenia. </i></p><p> <b>Porada:</b> <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">Nagrywanie dźwiÄku grajÄ
cego w komputerze</a>, użytkownicy Windows-a i Linux-a mogÄ
wybraÄ \"Stereo Mix\", \"Wave Out\", \"Sum\" lub inne źródÅa. </p><p> Powrót do [[record|Nagrywanie DźwiÄku]] <br></p>"
#: HelpText.cpp:267
msgid "<p>The input level must be set correctly. If the level is too low, there will be background noise. If the level is too high, there will be distortion in the loud parts. </p><p>To set the level, either see this [[wiki:Recording_levels|illustrated online guide]] or follow these steps: <ol><li>Turn on <b>monitoring</b>. Double-click the right-hand of the two <i>VU Meters</i> (or right-click over it) and click \"Start Monitoring\". If the meters are not visible, click <i>View > Toolbars</i> and check \"Meter Toolbar\". </li><li>Adjust the input slider on the <i>Mixer Toolbar</i> (by the microphone symbol), so that the red bars in the meter come close to <b>but do not touch</b> the right edge of the scale. If you can't hear the monitored audio, go to the <i>Audio I/O tab of Preferences</i> and check \"Software Playthrough\". </li></ol></p><p> Back to [[record|Recording Audio]] <br></p>"
-msgstr ""
+msgstr "<p>Poziom wysterowania powinien byÄ odpowiednio ustawiony. JeÅli jest zbyt niski, pojawi siÄ haÅas w tle. JeÅli jest zbyt wysoki, pojawiÄ
siÄ znieksztaÅcenia w wysokich partiach. </p><p>Aby ustawiÄ poziom, zajrzyj na [[wiki:Recording_levels|ilustrowany przewodnik online]] lub postÄpuj wedÅug podanych kroków: <ol><li>WÅÄ
cz <b>monitorowanie</b>. Kliknij dwukrotnie na prawej stronie dwóch <i>Mierników VU</i> (lub kliknij prawych przyciskiem) i kliknij \"Zacznij MonitorowaÄ\". JeÅli nie widzisz mierników, kliknij <i>Widok > Okno NarzÄdzi</i> i sprawdź \"Okno NarzÄdzi Miernika\". </li><li>Ustaw poziom wysterowania w <i>Oknie NarzÄdzi Miksera</i> (obok symbolu mikrofonu), aby czerowone paski w mierniku pojawiÅy siÄ blisko <b>ale nie dotykaÅy</b> prawej krawÄdzi skali. JeÅli nie sÅyszysz monitorowanego dźwiÄku, zajrzyj do <i>zakÅadki We/Wy DźwiÄku w Ustawieniach</i> i zaznacz \"Odtwarzanie podczas Nagrywania\". </li></ol></p><p> Powrót do [[record|Nagrywanie DźwiÄku]] <br></p>"
#: HelpText.cpp:292
#, fuzzy
@@ -1392,23 +1329,23 @@ msgstr "Edytowanie: Audacity jest potÄżnym edytorem, wiÄc zapewne chciaÅbyÅ
#: HelpText.cpp:311
msgid "<p>To return later to your unfinished work in Audacity with all tracks and edits as you left them, save an Audacity project. To play your current work in other media programs or send it to others, [[export|export]] an audio file such as WAV or MP3. </p><p> <i>File > Save Project</i> saves an <b>.aup</b> project file and a <b>_data</b> folder containing the actual audio. To re-open a saved project, click <i>File > Open</i> and open the .aup file. If you save and exit more than once, an .aup.bak backup file is created, but the .aup file should always be opened if present. When your final exported file is exactly as you want, delete the project files and _data folder to save disc space. </p><p><i>File > Save Project As...</i> is for saving an empty project. It also lets you save an existing Project to a <b> new</b> name. This is the only safe way to rename a project. The .aup file and _data folder should not be moved or renamed manually. </p><p>"
-msgstr ""
+msgstr "<p>Aby powróciÄ później do nieskoÅczonego projektu w Audacity z wszystkimi Åcieżkami i edycjÄ
, jakich dokonaÅeÅ, zapisz projekt Audacity. Aby odtworzyÄ aktualny projekt w innym programie lub aby go wysÅaÄ do innych, [[export|wyeksportuj]] plik dźwiÄkowy taki jak WAV lub MP3. </p><p> <i>Plik > Zapisz Projekt</i> zapisuje plik projektu <b>.aup</b> oraz folder<b>_data</b> zawierajÄ
cy dźwiÄk. Aby otworzyÄ ponownie zapisany projekt, kliknij <i>Plik > Otwórz</i> i otwórz plik .aup. JeÅli zapiszesz i zamkniesz wielokrotnie, plik zabezpieczajÄ
cy .aup.bak jest tworzony, lecz plik .aup powinien zawsze byÄ otwarty, jeÅli to możliwe. JeÅli twój plik finalny jest taki jaki powinien byÄ, usuÅ pliki projektu oraz folder _data aby zwiÄkszyÄ iloÅÄ miejsca na dysku. </p><p><i>Plik > Zapisz Projekt jako...</i> sÅuży do zapisywania pustego projektu. Pozwala ci również na zapisanie istniejÄ
cego projektu z <b> nowÄ
</b> nazwÄ
. Jest to jedyny bezpieczny sposób na zmianÄ nazwy projektu. Plik .aup oraz folder _data nie powinny byÄ przemieszczane rÄcznie. </p><p>"
#: HelpText.cpp:335
msgid "To hear your work in other media programs, export it to an audio file such as WAV or MP3 (some formats are [[wma-proprietary|unsupported]]). [[save|Saving an Audacity project]] creates a project file (and linked _data folder) containing all your edited tracks, so you can return to your work later. However, other programs can't read Audacity projects. </p><p> To export, click <i>File > Export</i> then choose the file format you want to export to in the \"Save as type\" dropdown. To [[burncd|burn a CD]] for standalone CD players, choose WAV or AIFF. To export as MP3, the [[wiki:Lame_Installation|Lame Encoder]] must be installed. </p><p> <i>File > Export Selection</i> exports only a selected area of audio. <i>Use File > Export Multiple</i> to export multiple files at the same time, either one for each audio track, or one for each labeled area in a single track. <i>Tracks > Add Label At Selection</i> lets you [[wiki:Splitting_recordings_into_separate_tracks|split the tracks]] from an album for multiple export as separate files. </p><br><br>"
-msgstr ""
+msgstr "Aby usÅyszeÄ twój projekt w innym programie, wyeksportuj go do pliku WAV lub MP3 (niektóre formaty sÄ
[[wma-zabezpieczone|niewspierane]]). [[zapisz|Zapisywanie projektu Audacity]] tworzy plik projektu (i folder _data) zawierajÄ
cy wszystkie twoje Åcieżki, abyÅ mógÅ powróciÄ do swojego projektu później. Jednakże, inne programy nie odczytujÄ
projektów Audacity. </p><p> Aby wyeksportowaÄ, kliknij <i>Plik > Eksport</i> i wybierz format pliku w jakim chcesz wyeksportowaÄ w liÅcie \"Zapisz jako rodzaj\". Aby [[wypalcd|wypaliÄ na pÅycie CD]] dla odtwarzaczy pÅyt CD, wybierz WAV lub AIFF. Aby wyeksportowaÄ jako MP3, [[wiki:Instalowanie Lame|Enkoder Lame]] musi byÄ zainstalowany. </p><p> <i>Plik > Eksport Zaznaczenia</i> eksportuje tylko zaznaczonÄ
czÄÅÄ dźwiÄku. <i>Użyj Plik > Eksportuj Wiele</i> aby wyeksportowaÄ wiele plików w tym samym czasie, albo jeden dla każdej Åcieżki, albo jeden dla każdego obszaru Åcieżki. <i>Åcieżki > Dodaj EtykietÄ do Zaznaczenia</i> pozwala na [[wiki:Dzielenie_nagraÅ_w_osobne_Åcieżki|rozdzielanie Åcieżek]] z albumu do wielu osobnych plików. </p><br><br>"
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
-msgstr ""
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgstr "<p>Audacity <b>nie</b> [[odtwarza|odtwarza]] ani [[eksportuje|eksportuje]] plików w formatach <b>WMA, RealAudio, Shorten (SHN)</b> z powodów licencji i patentów. Na komputerach Mac, niechronione formaty <b>AAC</b> takie jak na przykÅad <b>M4A</b> mogÄ
byÄ importowane. Niektóre otwarte formaty nie sÄ
jeszcze wspierane, wliczajÄ
c w to <b>Ogg Speex</b> i <b>Musepack</b>. Pliki chronione przez jakiekolwiek Prawa Autorskie (DRM), wliczajÄ
c w to te zakupione poprzez internet na iTunes lub Napster, <b>nie mogÄ
</b> byÄ importowane.</p><p> JeÅli nie możesz zimportowaÄ twojego pliku do Audacity, wtedy jeÅli nie jest chroniony przez DRM, użyj iTunes lub <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> do przekonwertowania go do WAV lub AIFF. JeÅli jest chroniony, wypal go na pÅytÄ CD w programie licencjonowanym do odtwarzania go, a nastÄpnie wypakuj ÅcieżkÄ CD do WAV lub AIFF używajÄ
c iTunes lub (na Windows'ie) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> lub Windows Media Player 11. Możesz również <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">zgraÄ</a> CD na komputer. <i>Aby wyeksportowaÄ do niewspieranego formatu, wyeksportuj do WAV lub AIFF i przekonwertuj do pożÄ
danego formatu w iTunes lub <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
#: HelpText.cpp:383
msgid "<p>To burn your work to an audio CD for standalone CD players, first [[export|export]] it as WAV or AIFF. The exported file should be stereo, 44100 Hz (set in the \"Project Rate\" button bottom left) and 16 bit (set in the \"Options\" button in the file export dialog). These are Audacity's default settings, so normally you will not need to change these before exporting. <p>Burn the exported file to an \"audio CD\" - not a \"data CD\" or \"MP3 CD\" - with a CD burning program like iTunes or Windows Media Player. For more help, see [[wiki:How_to_burn_CDs|How to burn CDs]] online. </p><p>"
-msgstr ""
+msgstr "<p>Aby wypaliÄ twój projekt na pÅytÄ audio do odtwarzania na odtwarzaczach pÅyt, najpierw [[wyeksportuj|wyeksportuj]] go jako WAV lub AIFF. Wyeksportowany plik powinien byÄ w stereo, 44100 Hz (ustawione w \"Project Rate\"przycisk u doÅu po lewej) i 16 bit'ów (ustawione w \"Opcje\" przycisk w oknie eksportu pliku). To sÄ
oryginalne ustawienia Audacity, wiÄc zazwyczaj nie bÄdziesz musiaÅ nic zmieniaÄ przed eksportowaniem. <p>Wypal wyeksportowany plik jako \"pÅytÄ audio\" - nie \"pÅytÄ z danymi\" lub \"MP3 CD\" - w programie takim jak iTunes lub Windows Media Player. Aby uzyskaÄ wiÄcej informacji, zajrzyj na [[wiki:Jak_wypalaÄ_pÅyty_CD|Jak wypalaÄ pÅyty CD]]. </p><p>"
#: HelpText.cpp:403
msgid "<p>Help for Audacity Beta is currently unfinished. For now, a draft manual is available <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">online</a>. Alternatively, click <a href=\"http://www.audacityteam.org/manual/index.php?title=Temporary_HTML_Manual_Export\">here</a> to download a single-page version of the manual which can be viewed in this window."
-msgstr ""
+msgstr "<p>Pomoc dla Audacity Beta jest jeszcze nieukoÅczona. W tej chwili, można pobieraÄ wstÄpnÄ
wersjÄ podrÄcznika <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">na internecie</a>. Ewentualnie, kliknij <a href=\"http://www.audacityteam.org/manual/index.php?title=Temporary_HTML_Manual_Export\">tutaj</a> aby pobraÄ jednostronnÄ
wersjÄ podrÄczika, która może byÄ wyÅwietlona w tym oknie."
#: HistoryWindow.cpp:53
msgid "Undo History"
@@ -1434,14 +1371,8 @@ msgstr "Poziomy do zredukowania"
msgid "&Discard"
msgstr "&Zredukuj"
-#: HistoryWindow.cpp:112
-#: Tags.cpp:2081
-#: Tags.cpp:2083
-#: Tags.cpp:2385
-#: Tags.cpp:2387
-#: effects/ChangeLength.cpp:186
-#: effects/SpikeCleaner.cpp:191
-#: export/ExportCL.cpp:399
+#: HistoryWindow.cpp:112 effects/ChangeLength.cpp:186
+#: effects/SpikeCleaner.cpp:191 export/ExportCL.cpp:432
msgid "&OK"
msgstr "&OK"
@@ -1449,8 +1380,7 @@ msgstr "&OK"
msgid "Unable to determine"
msgstr "Niezdolny do okreÅlenia"
-#: Internat.cpp:195
-#: import/ImportRaw.cpp:385
+#: Internat.cpp:195 import/ImportRaw.cpp:388
msgid "bytes"
msgstr "bajtów"
@@ -1466,28 +1396,31 @@ msgstr "MB"
msgid "GB"
msgstr "GB"
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
#: LabelDialog.cpp:54
msgid "Track"
msgstr "Åcieżka"
-#: LabelDialog.cpp:55
-#: Menus.cpp:4677
-#: Menus.cpp:4712
+#: LabelDialog.cpp:55 Menus.cpp:4733 Menus.cpp:4768
msgid "Label"
msgstr "Etykieta"
-#: LabelDialog.cpp:56
-#: TimerRecordDialog.cpp:279
+#: LabelDialog.cpp:56 TimerRecordDialog.cpp:340
msgid "Start Time"
msgstr "Czas startu"
-#: LabelDialog.cpp:57
-#: TimerRecordDialog.cpp:298
+#: LabelDialog.cpp:57 TimerRecordDialog.cpp:359
msgid "End Time"
msgstr "Czas zakoÅczenia"
-#: LabelDialog.cpp:100
-#: Menus.cpp:713
+#: LabelDialog.cpp:100 Menus.cpp:711
msgid "&Edit Labels"
msgstr "&Edytuj etykiety"
@@ -1525,20 +1458,15 @@ msgstr "ZostawiÅeÅ puste etykiety. ZostanÄ
one\n"
msgid "Confirm"
msgstr "Potwierdź"
-#: LabelDialog.cpp:516
-#: Menus.cpp:4101
+#: LabelDialog.cpp:516 Menus.cpp:4152
msgid "Select a text file containing labels..."
msgstr "Zaznacz plik tekstowy zawierajÄ
cy etykiety..."
-#: LabelDialog.cpp:520
-#: Menus.cpp:4105
+#: LabelDialog.cpp:520 Menus.cpp:4156
msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
msgstr "Pliki tekstowe (*.txt)|*.txt|Wszystkie pliki (*.*)|*.*"
-#: LabelDialog.cpp:534
-#: Menus.cpp:4117
-#: Project.cpp:1914
-#: Project.cpp:1922
+#: LabelDialog.cpp:534 Menus.cpp:4168 Project.cpp:2018 Project.cpp:2026
msgid "Could not open file: "
msgstr "Nie można otworzyÄ pliku:"
@@ -1546,13 +1474,11 @@ msgstr "Nie można otworzyÄ pliku:"
msgid "No labels to export."
msgstr "Brak etykiet do eksportu."
-#: LabelDialog.cpp:566
-#: Menus.cpp:2518
+#: LabelDialog.cpp:566 Menus.cpp:2526
msgid "Export Labels As:"
msgstr "Eksportuj etykiety jako:"
-#: LabelDialog.cpp:568
-#: Menus.cpp:2516
+#: LabelDialog.cpp:568 Menus.cpp:2524
msgid "labels.txt"
msgstr "labels.txt"
@@ -1564,10 +1490,7 @@ msgstr "Nowa Etykieta Åcieżki"
msgid "Enter track name"
msgstr "Wprowadź nazwÄ Åcieżki"
-#: LabelDialog.cpp:705
-#: LabelDialog.h:52
-#: LabelTrack.cpp:89
-#: Menus.cpp:632
+#: LabelDialog.cpp:705 LabelDialog.h:52 LabelTrack.cpp:89 Menus.cpp:634
msgid "&Label Track"
msgstr "&Etykieta Åcieżki"
@@ -1590,1460 +1513,1362 @@ msgstr "Przekonwertowano projekt w formacie 1.0 do nowego formatu.\n"
msgid "Opening Audacity Project"
msgstr "Otwieranie projektu Audacity"
-#: Menus.cpp:194
+#: Menus.cpp:195
msgid "&File"
msgstr "&Plik"
-#: Menus.cpp:196
-msgid "&New\tCtrl+N"
-msgstr "&Nowy\tCtrl+N"
-
-#: Menus.cpp:198
-msgid "&Open...\tCtrl+O"
-msgstr "&Otwórz...\tCtrl+O"
-
-#: Menus.cpp:203
-msgid "&Close\tCtrl+W"
-msgstr "&Zamknij\tCtrl+W"
+#: Menus.cpp:204
+msgid "&Close"
+msgstr "&Zamknij"
-#: Menus.cpp:206
-msgid "&Save Project\tCtrl+S"
-msgstr "&Zapisz projekt\tCtrl+S"
+#: Menus.cpp:207
+msgid "&Save Project"
+msgstr "&Zapisz projekt"
-#: Menus.cpp:210
-#: Project.cpp:2896
+#: Menus.cpp:211 Project.cpp:3071
msgid "Save Project &As..."
msgstr "Zapisz projekt &jako..."
-#: Menus.cpp:212
+#: Menus.cpp:213
msgid "Save Compressed Copy of Project..."
-msgstr ""
+msgstr "Zapisz SkompresowanÄ
KopiÄ Projektu..."
-#: Menus.cpp:216
+#: Menus.cpp:217
msgid "Chec&k Dependencies..."
msgstr "Sprawd&ź ZależnoÅci..."
-#: Menus.cpp:222
+#: Menus.cpp:223
msgid "Open Me&tadata Editor..."
msgstr "Otwórz Edytor Me&tadanych..."
-#: Menus.cpp:229
-#: import/ImportRaw.cpp:411
+#: Menus.cpp:230 import/ImportRaw.cpp:414
msgid "&Import"
msgstr "&Importuj"
-#: Menus.cpp:231
-msgid "&Audio...\tCtrl+Shift+I"
-msgstr "&Audio...\tCtrl+Shift+I"
-
#: Menus.cpp:232
+msgid "&Audio..."
+msgstr "&Audio..."
+
+#: Menus.cpp:233
msgid "&Labels..."
msgstr "&Etykiety..."
-#: Menus.cpp:234
+#: Menus.cpp:235
msgid "&MIDI..."
msgstr "&MIDI..."
-#: Menus.cpp:236
+#: Menus.cpp:237
msgid "&Raw Data..."
msgstr "&Surowe dane..."
-#: Menus.cpp:247
-#: Menus.cpp:282
+#: Menus.cpp:248 Menus.cpp:283
msgid "Expo&rt Selection..."
msgstr "Ekspo&rtuj zaznaczenie..."
-#: Menus.cpp:254
+#: Menus.cpp:255
msgid "Export &Labels..."
msgstr "Eksportuj &Etykiety..."
-#: Menus.cpp:255
+#: Menus.cpp:256
msgid "Export &Multiple..."
msgstr "Eksportuj &Wiele plików..."
-#: Menus.cpp:257
+#: Menus.cpp:258
#, fuzzy
msgid "Export MIDI..."
msgstr "&Eksportuj..."
-#: Menus.cpp:290
-#, fuzzy
-msgid "CleanSpeech C&hain..."
-msgstr "Czysta mowa"
+#: Menus.cpp:304
+msgid "Appl&y Chain..."
+msgstr "Zasto&suj Tor..."
-#: Menus.cpp:291
-#: Menus.cpp:305
+#: Menus.cpp:292 Menus.cpp:306
msgid "Edit C&hains..."
msgstr "Edytuj T&ory..."
-#: Menus.cpp:292
+#: Menus.cpp:293
#, fuzzy
msgid "Export CleanSpeech &Presets..."
msgstr "Ustawienia CzystejMowy (*.csp)|*.csp"
-#: Menus.cpp:293
+#: Menus.cpp:294
#, fuzzy
msgid "I&mport CleanSpeech Presets..."
msgstr "Ustawienia CzystejMowy (*.csp)|*.csp"
-#: Menus.cpp:303
-msgid "Appl&y Chain..."
-msgstr "Zasto&suj Tor..."
-
-#: Menus.cpp:310
+#: Menus.cpp:311
msgid "&Upload File..."
msgstr "&ZaÅaduj plik..."
-#: Menus.cpp:316
+#: Menus.cpp:317
msgid "Pa&ge Setup..."
msgstr "Us&tawienia strony..."
-#: Menus.cpp:317
+#: Menus.cpp:318
msgid "&Print..."
msgstr "&Drukuj..."
-#: Menus.cpp:330
-msgid "E&xit\tCtrl+Q"
-msgstr "W&yjÅcie\tCtrl+Q"
+#: Menus.cpp:331
+msgid "E&xit"
+msgstr "W&yjÅcie"
-#: Menus.cpp:338
-#: toolbars/EditToolBar.cpp:76
+#: Menus.cpp:339 toolbars/EditToolBar.cpp:76
msgid "&Edit"
msgstr "&Edytuj"
-#: Menus.cpp:342
-msgid "&Undo\tCtrl+Z"
-msgstr "&Cofnij\tCtrl+Z"
+#: Menus.cpp:343
+msgid "&Undo"
+msgstr "&Cofnij"
-#: Menus.cpp:350
-#: prefs/KeyConfigPrefs.cpp:371
-#: toolbars/EditToolBar.cpp:146
+#: Menus.cpp:351 prefs/KeyConfigPrefs.cpp:384 toolbars/EditToolBar.cpp:146
msgid "&Redo"
msgstr "&PrzywróÄ"
-#: Menus.cpp:363
-msgid "Cu&t\tCtrl+X"
-msgstr "Wy&tnij\tCtrl+X"
-
-#: Menus.cpp:367
-msgid "Spl&it Cut\tCtrl+Alt+X"
-msgstr "Rozdz&iel Wytnij\tCtrl+Alt+X"
+#: Menus.cpp:364
+msgid "Cu&t"
+msgstr "Wy&tnij"
#: Menus.cpp:368
-msgid "&Copy\tCtrl+C"
-msgstr "&Kopiuj\tCtrl+C"
+msgid "Spl&it Cut"
+msgstr "Rozdz&iel Wytnij"
-#: Menus.cpp:372
-msgid "&Paste\tCtrl+V"
-msgstr "&Wstaw\tCtrl+V"
+#: Menus.cpp:369
+msgid "&Copy"
+msgstr "&Kopiuj"
-#: Menus.cpp:376
-msgid "Tri&m\tCtrl+T"
-msgstr "Przy&tnij\tCtrl+T"
+#: Menus.cpp:373
+msgid "&Paste"
+msgstr "&Wstaw"
-#: Menus.cpp:378
-msgid "&Delete\tCtrl+K"
-msgstr "&Kasuj\tCtrl+K"
+#: Menus.cpp:377
+msgid "Tri&m"
+msgstr "Przy&tnij"
#: Menus.cpp:379
-msgid "Split D&elete\tCtrl+Alt+K"
-msgstr "Rozdziel U&suÅ\tCtrl+Alt+K"
+msgid "&Delete"
+msgstr "&Kasuj"
#: Menus.cpp:380
-#, fuzzy
-msgid "Silence Audi&o\tCtrl+L"
-msgstr "&Cisza\tCtrl+L"
+msgid "Split D&elete"
+msgstr "Rozdziel U&suÅ"
-#: Menus.cpp:382
-msgid "Sp&lit\tCtrl+I"
-msgstr "Rozdz&iel\tCtrl+I"
+#: Menus.cpp:381
+#, fuzzy
+msgid "Silence Audi&o"
+msgstr "&Cisza"
-#: Menus.cpp:387
-msgid "Split Ne&w\tCtrl+Alt+I"
-msgstr "Rozdziel No&wy\tCtrl+Alt+I"
+#: Menus.cpp:383
+msgid "Sp&lit"
+msgstr "Rozdz&iel"
-#: Menus.cpp:392
-msgid "&Join\tCtrl+J"
-msgstr "&PoÅÄ
cz\tCtrl+J"
+#: Menus.cpp:388
+msgid "Split Ne&w"
+msgstr "Rozdziel No&wy"
#: Menus.cpp:393
-#, fuzzy
-msgid "Detac&h at Silences\tCtrl+Alt+J"
-msgstr "&Cisza\tCtrl+L"
+msgid "&Join"
+msgstr "&PoÅÄ
cz"
#: Menus.cpp:394
-msgid "Duplic&ate\tCtrl+D"
-msgstr "Dupli&kuj\tCtrl+D"
+#, fuzzy
+msgid "Detac&h at Silences"
+msgstr "&Cisza"
+
+#: Menus.cpp:395
+msgid "Duplic&ate"
+msgstr "Dupli&kuj"
-#: Menus.cpp:400
-#: Menus.cpp:639
+#: Menus.cpp:401 Menus.cpp:641
#, fuzzy
msgid "Stereo Trac&k to Mono"
msgstr "& Stereo do Mono"
-#: Menus.cpp:407
+#: Menus.cpp:408
#, fuzzy
msgid "La&beled Regions"
msgstr "Zaznaczone Re&giony..."
#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:409
-msgid "&Cut\tAlt+X"
-msgstr "&Wytnij\tAlt+X"
+#: Menus.cpp:410
+msgid "&Cut"
+msgstr "&Wytnij"
#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:414
-msgid "&Split Cut\tShift+Alt+X"
-msgstr "&Rozdziel Wytnij\tShift+Alt+X"
+#: Menus.cpp:415
+msgid "&Split Cut"
+msgstr "&Rozdziel Wytnij"
#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:419
-msgid "Co&py\tShift+Alt+C"
-msgstr "Kop&iuj\tShift+Alt+C"
+#: Menus.cpp:420
+msgid "Co&py"
+msgstr "Kop&iuj"
#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:425
-msgid "&Delete\tAlt+K"
-msgstr "&UsuÅ\tAlt+K"
+#: Menus.cpp:431
+msgid "Sp&lit Delete"
+msgstr "Rozdz&iel UsuÅ"
#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:430
-msgid "Sp&lit Delete\tShift+Alt+K"
-msgstr "Rozdz&iel UsuÅ\tShift+Alt+K"
+#: Menus.cpp:436
+msgid "Sile&nce"
+msgstr "Cisz&a"
#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:435
-msgid "Sile&nce\tAlt+L"
-msgstr "Cisz&a\tAlt+L"
+#: Menus.cpp:442
+msgid "Spli&t"
+msgstr "Rozdz&iel"
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:441
-msgid "Spli&t\tAlt+I"
-msgstr "Rozdz&iel\tAlt+I"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:446
-msgid "&Join\tAlt+J"
-msgstr "&PoÅÄ
cz\tAlt+J"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-#, fuzzy
-msgid "Detac&h at Silences\tShift+Alt+J"
-msgstr "Roz&dziel\tShift+Alt+J"
-
-#: Menus.cpp:456
+#: Menus.cpp:457
#, fuzzy
msgid "&Select"
msgstr "Zaznacz "
-#: Menus.cpp:457
-msgid "&All\tCtrl+A"
-msgstr "&Wszystko\tCtrl+A"
-
#: Menus.cpp:458
-msgid "&None\tCtrl+Shift+A"
-msgstr "&Żaden\tCtrl+Shift+A"
+msgid "&All"
+msgstr "&Wszystko"
-#: Menus.cpp:462
-#, fuzzy
-msgid "&Left at Playback Position\t["
-msgstr "Na lewo od miejsca odtwarzania\t["
+#: Menus.cpp:459
+msgid "&None"
+msgstr "&Żaden"
#: Menus.cpp:463
#, fuzzy
-msgid "&Right at Playback Position\t]"
-msgstr "Na prawo od miejsca odtwarzania\t["
+msgid "&Left at Playback Position"
+msgstr "Na lewo od miejsca odtwarzania"
-#: Menus.cpp:467
+#: Menus.cpp:464
#, fuzzy
-msgid "Track &Start to Cursor\tShift+J"
-msgstr "Od poczÄ
tku do kursora"
+msgid "&Right at Playback Position"
+msgstr "Na prawo od miejsca odtwarzania"
#: Menus.cpp:468
#, fuzzy
-msgid "Cursor to Track &End\tShift+K"
+msgid "Track &Start to Cursor"
+msgstr "Od poczÄ
tku do kursora"
+
+#: Menus.cpp:469
+#, fuzzy
+msgid "Cursor to Track &End"
msgstr "Kursor do koÅca"
-#: Menus.cpp:474
-msgid "Find &Zero Crossings\tZ"
-msgstr "Znajdź &PrzejÅcie przez zero\tZ"
+#: Menus.cpp:475
+msgid "Find &Zero Crossings"
+msgstr "Znajdź &PrzejÅcie przez zero"
-#: Menus.cpp:476
+#: Menus.cpp:478
#, fuzzy
msgid "Mo&ve Cursor"
msgstr "Prze&suÅ kursor..."
-#: Menus.cpp:478
+#: Menus.cpp:480
#, fuzzy
msgid "to Selection Star&t"
msgstr "do poczÄ
tku zaznaczenia"
-#: Menus.cpp:479
+#: Menus.cpp:481
#, fuzzy
msgid "to Selection En&d"
msgstr "do koÅca zaznaczenia"
-#: Menus.cpp:483
+#: Menus.cpp:485
#, fuzzy
-msgid "to Track &Start\tJ"
+msgid "to Track &Start"
msgstr "do poczÄ
tku Åcieżki"
-#: Menus.cpp:484
+#: Menus.cpp:486
#, fuzzy
-msgid "to Track &End\tK"
+msgid "to Track &End"
msgstr "do koÅca Åcieżki"
-#: Menus.cpp:491
+#: Menus.cpp:493
#, fuzzy
msgid "Re&gion Save"
msgstr "Zapisz zaznaczenie"
-#: Menus.cpp:492
+#: Menus.cpp:494
#, fuzzy
msgid "Regio&n Restore"
msgstr "Odzyskaj zaznaczenie"
-#: Menus.cpp:503
+#: Menus.cpp:505
#, fuzzy
msgid "Pla&y Region"
msgstr "Odtwarzaj &Region..."
-#: Menus.cpp:504
+#: Menus.cpp:506
#, fuzzy
msgid "&Lock"
msgstr "Zablokuj"
-#: Menus.cpp:505
+#: Menus.cpp:507
#, fuzzy
msgid "&Unlock"
msgstr "Odblokuj"
-#: Menus.cpp:511
-msgid "Turn Snap-To On"
-msgstr "Aktywuj przyciÄ
ganie"
-
-#: Menus.cpp:512
-msgid "Turn Snap-To Off"
-msgstr "Zablokuj przyciÄ
ganie"
-
-#: Menus.cpp:513
-msgid "Turn Grid Snap On"
-msgstr "WÅÄ
cz przyciÄ
ganie do siatki"
-
-#: Menus.cpp:514
-msgid "Turn Grid Snap Off"
-msgstr "WyÅÄ
cz przyciÄ
ganie do siatki"
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
-#: Menus.cpp:519
-#, fuzzy
-msgid "Pre&ferences...\tCtrl+,"
-msgstr "&Ustawienia...\tCtrl+,"
-
-#: Menus.cpp:523
+#: Menus.cpp:521
#, fuzzy
-msgid "Pre&ferences...\tCtrl+P"
-msgstr "&Ustawienia...\tCtrl+P"
+msgid "Pre&ferences..."
+msgstr "&Ustawienia..."
-#: Menus.cpp:533
+#: Menus.cpp:535
msgid "&View"
msgstr "&Widok"
-#: Menus.cpp:535
-msgid "Zoom &In\tCtrl+1"
-msgstr "Po&wiÄksz\tCtrl+!"
+#: Menus.cpp:537
+msgid "Zoom &In"
+msgstr "Po&wiÄksz"
-#: Menus.cpp:538
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "&Normalny rozmiar\tCtrl+2"
+#: Menus.cpp:540
+msgid "Zoom &Normal"
+msgstr "&Normalny rozmiar"
-#: Menus.cpp:539
-msgid "Zoom &Out\tCtrl+3"
-msgstr "P&omniejsz\tCtrl+3"
+#: Menus.cpp:541
+msgid "Zoom &Out"
+msgstr "P&omniejsz"
-#: Menus.cpp:542
-msgid "&Fit in Window\tCtrl+F"
-msgstr "&Dopasuj do okna\tCtrl+F"
+#: Menus.cpp:544
+msgid "&Fit in Window"
+msgstr "&Dopasuj do okna"
-#: Menus.cpp:543
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "Dopasuj w &pionie\tCtrl+Shift+F"
+#: Menus.cpp:545
+msgid "Fit &Vertically"
+msgstr "Dopasuj w &pionie"
-#: Menus.cpp:544
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "&PowiÄksz zaznaczenie\tCtrl+E"
+#: Menus.cpp:546
+msgid "&Zoom to Selection"
+msgstr "&PowiÄksz zaznaczenie"
-#: Menus.cpp:547
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
-msgstr "&ZwiÅ wszystkie Åcieżki\tCtrl+Shift+C"
+#: Menus.cpp:549
+msgid "&Collapse All Tracks"
+msgstr "&ZwiÅ wszystkie Åcieżki"
-#: Menus.cpp:548
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
-msgstr "R&ozwiÅ wszystkie Åcieżki\tCtrl+Shift+X"
+#: Menus.cpp:550
+msgid "E&xpand All Tracks"
+msgstr "R&ozwiÅ wszystkie Åcieżki"
-#: Menus.cpp:551
+#: Menus.cpp:553
#, fuzzy
msgid "&Show Clipping"
msgstr "Pokaż obciÄcie"
-#: Menus.cpp:560
+#: Menus.cpp:562
msgid "&History..."
msgstr "&Historia"
-#: Menus.cpp:566
+#: Menus.cpp:568
#, fuzzy
msgid "&Toolbars"
msgstr "&Paski narzÄdzi..."
-#: Menus.cpp:567
+#: Menus.cpp:569
#, fuzzy
msgid "&Control Toolbar"
msgstr "Pasek narzÄdzi kontrolnych"
-#: Menus.cpp:568
+#: Menus.cpp:570
#, fuzzy
msgid "&Device Toolbar"
msgstr "Pasek narzÄdzi urzÄ
dzeÅ"
-#: Menus.cpp:569
+#: Menus.cpp:571
#, fuzzy
msgid "&Edit Toolbar"
msgstr "Pasek narzÄdzi edycji"
-#: Menus.cpp:570
+#: Menus.cpp:572
#, fuzzy
msgid "&Meter Toolbar"
msgstr "Pasek narzÄdzi pomiaru"
-#: Menus.cpp:571
+#: Menus.cpp:573
#, fuzzy
msgid "Mi&xer Toolbar"
msgstr "Pasek narzÄdzi miksera"
-#: Menus.cpp:572
+#: Menus.cpp:574
#, fuzzy
msgid "&Selection Toolbar"
msgstr "Pasek narzÄdzi selekcji"
-#: Menus.cpp:573
+#: Menus.cpp:575
#, fuzzy
msgid "T&ools Toolbar"
msgstr "Pasek narzÄdzi"
-#: Menus.cpp:574
+#: Menus.cpp:576
#, fuzzy
msgid "Transcri&ption Toolbar"
msgstr "Pasek narzÄdzi transkrypcji"
-#: Menus.cpp:576
+#: Menus.cpp:578
#, fuzzy
msgid "&Reset Toolbars"
msgstr "Zresetuj Paski NarzÄdzi"
-#: Menus.cpp:578
+#: Menus.cpp:580
msgid "!Simplified View"
-msgstr ""
+msgstr "!Uproszczony Widok"
#. i18n-hint: 'Transport' is the name given to the set of controls that
#. play, record, pause etc.
-#: Menus.cpp:587
+#: Menus.cpp:589
#, fuzzy
msgid "T&ransport"
msgstr "Transkrypcja"
#: Menus.cpp:591
-msgid "Play\tSpace"
-msgstr ""
+msgid "Play"
+msgstr "Odtwarzaj"
#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
-msgstr ""
+msgid "&Loop Play"
+msgstr "&PÄtla Odtwarzaj"
-#: Menus.cpp:593
+#: Menus.cpp:595
#, fuzzy
-msgid "&Pause\tP"
-msgstr "Pauza\tP"
+msgid "&Pause"
+msgstr "Pauza"
#: Menus.cpp:596
-msgid "&Stop\tSpace"
-msgstr ""
+msgid "&Stop"
+msgstr "&Zatrzymaj"
-#: Menus.cpp:595
-#: Menus.cpp:1010
-msgid "Skip to Start\tHome"
-msgstr "Skocz do poczÄ
tku\tHome"
+#: Menus.cpp:597 Menus.cpp:1008
+msgid "Skip to Start"
+msgstr "Skocz do poczÄ
tku"
-#: Menus.cpp:597
-#: Menus.cpp:1011
-msgid "Skip to End\tEnd"
-msgstr "Skocz do koÅca\tEnd"
+#: Menus.cpp:599 Menus.cpp:1009
+msgid "Skip to End"
+msgstr "Skocz do koÅca"
-#: Menus.cpp:600
+#: Menus.cpp:602
#, fuzzy
-msgid "&Record\tR"
-msgstr "Nagrywanie\tR"
+msgid "&Record"
+msgstr "Nagrywanie"
-#: Menus.cpp:602
+#: Menus.cpp:604
#, fuzzy
-msgid "&Timer Record...\tShift+T"
+msgid "&Timer Record..."
msgstr "&Nagrywanie czasowe..."
-#: Menus.cpp:604
-msgid "Append Record\tShift+R"
-msgstr ""
+#: Menus.cpp:606
+msgid "Append Record"
+msgstr "Dodaj Nagranie"
-#: Menus.cpp:607
+#: Menus.cpp:609
msgid "Overdub (on/off)"
-msgstr ""
+msgstr "Ponad Poziomem (wÅ/wyÅ)"
-#: Menus.cpp:609
+#: Menus.cpp:611
msgid "Software Playthrough (on/off)"
-msgstr ""
+msgstr "Odtwarzanie podczas Nagrywania(wÅ/wyÅ)"
-#: Menus.cpp:612
+#: Menus.cpp:614
msgid "Sound Activated Recording (on/off)"
-msgstr ""
+msgstr "Nagrywanie DźwiÄku Aktywne (wÅ/wyÅ)"
-#: Menus.cpp:614
+#: Menus.cpp:616
msgid "Sound Activation Level..."
-msgstr ""
+msgstr "Poziom DźwiÄku Aktywnego..."
-#: Menus.cpp:622
+#: Menus.cpp:624
msgid "&Tracks"
msgstr "&Åcieżki"
-#: Menus.cpp:629
+#: Menus.cpp:631
#, fuzzy
msgid "Add &New"
msgstr "Dodaj &NowÄ
..."
-#: Menus.cpp:630
-msgid "&Audio Track\tCtrl+Shift+N"
-msgstr "&Åcieżka dźwiÄkowa\tCtrl+Shift+N"
+#: Menus.cpp:632
+msgid "&Audio Track"
+msgstr "&Åcieżka dźwiÄkowa"
-#: Menus.cpp:631
+#: Menus.cpp:633
msgid "&Stereo Track"
msgstr "&Åcieżka stereo"
-#: Menus.cpp:633
-#: TimeTrack.cpp:44
+#: Menus.cpp:635 TimeTrack.cpp:44
msgid "&Time Track"
msgstr "&Åcieżka czasowa"
-#: Menus.cpp:643
+#: Menus.cpp:645
#, fuzzy
msgid "Mi&x and Render"
msgstr "&Miksuj i renderuj"
-#: Menus.cpp:647
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
-msgstr "Miksuj i przetwarzaj do Nowej Åcieżki\tCtrl+Shift+M"
+#: Menus.cpp:649
+msgid "Mix and Render to New Track"
+msgstr "Miksuj i przetwarzaj do Nowej Åcieżki"
-#: Menus.cpp:651
+#: Menus.cpp:653
msgid "&Resample..."
msgstr "&Resampluj"
-#: Menus.cpp:661
+#: Menus.cpp:663
msgid "Remo&ve Tracks"
msgstr "&UsuÅ Åcieżki"
-#: Menus.cpp:667
+#: Menus.cpp:669
#, fuzzy
-msgid "&Mute All Tracks\tCtrl+U"
-msgstr "&ZwiÅ wszystkie Åcieżki\tCtrl+Shift+C"
+msgid "&Mute All Tracks"
+msgstr "&ZwiÅ wszystkie Åcieżki"
-#: Menus.cpp:668
+#: Menus.cpp:670
#, fuzzy
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
-msgstr "R&ozwiÅ wszystkie Åcieżki\tCtrl+Shift+X"
+msgid "&UnMute All Tracks"
+msgstr "R&ozwiÅ wszystkie Åcieżki"
-#: Menus.cpp:672
+#: Menus.cpp:674
msgid "Align with &Zero"
msgstr "Wyrównaj do &zera"
-#: Menus.cpp:673
+#: Menus.cpp:675
msgid "Align with &Cursor"
msgstr "Wyrównaj do &Kursora"
-#: Menus.cpp:674
+#: Menus.cpp:676
msgid "Align with Selection &Start"
msgstr "Wyrównaj z poczÄ
tkiem &zaznaczenia"
-#: Menus.cpp:675
+#: Menus.cpp:677
msgid "Align with Selection &End"
msgstr "Wyrównaj z koÅcem zaznacz&enia"
-#: Menus.cpp:676
+#: Menus.cpp:678
#, fuzzy
msgid "Align End with Cu&rsor"
msgstr "Wyrównaj koniec do kursora"
-#: Menus.cpp:677
+#: Menus.cpp:679
#, fuzzy
msgid "Align End with Selection Star&t"
msgstr "Wyrównaj koniec z poczÄ
tkiem zaznaczenia"
-#: Menus.cpp:678
+#: Menus.cpp:680
#, fuzzy
msgid "Align End with Selection En&d"
msgstr "Wyrównaj koniec do koÅca zaznaczenia"
-#: Menus.cpp:679
+#: Menus.cpp:681
#, fuzzy
msgid "Align Tracks To&gether"
msgstr "Wyrównaj Åcieżki "
-#: Menus.cpp:681
+#: Menus.cpp:683
#, fuzzy
msgid "&Align Tracks"
msgstr "&Wyrównaj Åcieżki..."
-#: Menus.cpp:690
+#: Menus.cpp:692
#, fuzzy
msgid "Ali&gn and Move Cursor"
msgstr "Wyró&wnaj i rusz kursor"
-#: Menus.cpp:697
+#: Menus.cpp:699
msgid "Synchronize MIDI with Audio"
-msgstr ""
+msgstr "Zsynchronizuj MIDI z DźwiÄkiem"
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
+#: Menus.cpp:686
+msgid "&Link Audio and Label Tracks"
msgstr ""
-#: Menus.cpp:709
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "Dodaj &EtykietÄ do zaznaczenia\tCtrl+B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr ""
-#: Menus.cpp:710
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "Dodaj etykietÄ w pozycji &Odtwarzania\tCtrl+M"
+#: Menus.cpp:708
+msgid "Add Label At &Playback Position"
+msgstr "Dodaj etykietÄ w pozycji &Odtwarzania"
-#: Menus.cpp:716
+#: Menus.cpp:714
#, fuzzy
msgid "S&ort tracks"
msgstr "Sort&uj Åcieżki..."
-#: Menus.cpp:717
+#: Menus.cpp:715
#, fuzzy
msgid "by &Start time"
msgstr "&Czas startu"
-#: Menus.cpp:719
+#: Menus.cpp:717
#, fuzzy
msgid "by &Name"
msgstr "&Nazwa"
-#: Menus.cpp:730
+#: Menus.cpp:728
msgid "&Generate"
msgstr "&Generowanie Tonu"
-#: Menus.cpp:776
-#: Menus.cpp:860
-#: Menus.cpp:922
+#: Menus.cpp:774 Menus.cpp:858 Menus.cpp:920
msgid "Unsorted"
-msgstr ""
+msgstr "Nieposortowane"
-#: Menus.cpp:795
+#: Menus.cpp:793
msgid "Effe&ct"
msgstr "Efe&kty"
-#: Menus.cpp:799
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "Powtórz ostatni efekt\tCtrl+R"
-
-#: Menus.cpp:877
+#: Menus.cpp:875
msgid "&Analyze"
msgstr "&Analiza"
-#: Menus.cpp:879
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
+
+#: Menus.cpp:877
msgid "Plot Spectrum..."
msgstr "Wykres spektrum..."
-#: Menus.cpp:947
-#: Menus.cpp:950
+#: Menus.cpp:945 Menus.cpp:948
msgid "&Help"
msgstr "&Pomoc"
-#: Menus.cpp:953
+#: Menus.cpp:951
msgid "&About Audacity CleanSpeech..."
msgstr "&O czystoÅci wymowy Audacity..."
-#: Menus.cpp:957
+#: Menus.cpp:955
msgid "&Show Welcome Message..."
msgstr "&Pokaż wiadomoÅÄ powitalnÄ
..."
#: Menus.cpp:958
-msgid "&Index..."
-msgstr "&Index..."
+msgid "&Help..."
+msgstr ""
-#: Menus.cpp:959
+#: Menus.cpp:957
#, fuzzy
msgid "Show &Log..."
msgstr "&Åaduj..."
-#: Menus.cpp:967
+#: Menus.cpp:965
msgid "&Screenshot Tools..."
msgstr "&NarzÄdzia do zrzutu ekranu..."
-#: Menus.cpp:970
+#: Menus.cpp:968
msgid "&Run Benchmark..."
msgstr "U&ruchom Benchmark"
-#: Menus.cpp:972
+#: Menus.cpp:970
msgid "&Audio Device Info..."
msgstr "&Informacja o UrzÄ
dzeniu DźwiÄkowym..."
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
msgstr ""
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
msgstr ""
+#: Menus.cpp:983
+msgid "Selection Tool"
+msgstr "Zaznaczanie"
+
+#: Menus.cpp:984
+msgid "Envelope Tool"
+msgstr "NarzÄdzie obwiedni"
+
#: Menus.cpp:985
-msgid "Selection Tool\tF1"
-msgstr "Zaznaczanie\tF1"
+msgid "Draw Tool"
+msgstr "NarzÄdzie rysowania"
#: Menus.cpp:986
-msgid "Envelope Tool\tF2"
-msgstr "NarzÄdzie obwiedni\tF2"
+msgid "Zoom Tool"
+msgstr "Lupa"
#: Menus.cpp:987
-msgid "Draw Tool\tF3"
-msgstr "NarzÄdzie rysowania\tF3"
+msgid "Time Shift Tool"
+msgstr "NarzÄdzie do przesuwania w czasie"
#: Menus.cpp:988
-msgid "Zoom Tool\tF4"
-msgstr "Lupa\tF4"
-
-#: Menus.cpp:989
-msgid "Time Shift Tool\tF5"
-msgstr "NarzÄdzie do przesuwania w czasie\tF5"
+msgid "Multi Tool"
+msgstr "Multi narzÄdzie"
#: Menus.cpp:990
-msgid "Multi Tool\tF6"
-msgstr "Multi narzÄdzie\tF6"
+msgid "Next Tool"
+msgstr "NastÄpne narzÄdzie"
-#: Menus.cpp:992
-msgid "Next Tool\tD"
-msgstr "NastÄpne narzÄdzie\tD"
+#: Menus.cpp:991
+msgid "Previous Tool"
+msgstr "Poprzednie narzÄdzie"
#: Menus.cpp:993
-msgid "Previous Tool\tA"
-msgstr "Poprzednie narzÄdzie\tA"
-
-#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
-msgstr ""
-
-#: Menus.cpp:996
-msgid "Stop\tS"
-msgstr "Stop\tS"
-
-#: Menus.cpp:997
-msgid "Pause\tP"
-msgstr "Pauza\tP"
-
-#: Menus.cpp:998
-msgid "Record\tR"
-msgstr "Nagrywanie\tR"
+msgid "Play/Stop"
+msgstr "Odtwarzaj/Zatrzymaj"
#: Menus.cpp:999
-msgid "Record Append\tShift+R"
-msgstr ""
-
-#: Menus.cpp:1001
#, fuzzy
-msgid "Play/Stop and Set Cursor\tShift+A"
-msgstr "Odtwarzaj/Zatrzymaj i Zaznacz\tShift+Return"
+msgid "Play/Stop and Set Cursor"
+msgstr "Odtwarzaj/Zatrzymaj i Zaznacz"
-#: Menus.cpp:1004
-msgid "Play One Second\t1"
+#: Menus.cpp:1002
+msgid "Play One Second"
msgstr "Odtwarzaj 1 sekundÄ"
-#: Menus.cpp:1005
-msgid "Play To Selection\tB"
-msgstr "Odtwarzaj do zaznaczenia\tB"
+#: Menus.cpp:1003
+msgid "Play To Selection"
+msgstr "Odtwarzaj do zaznaczenia"
#: Menus.cpp:1006
-msgid "Play Looped\tL"
-msgstr "Odtwarzaj zapÄtlone\tL"
+msgid "Play Cut Preview"
+msgstr "Odtwarzaj Wytnij PodglÄ
d"
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
-
-#: Menus.cpp:1008
-msgid "Play Cut Preview\tC"
-msgstr "Odtwarzaj Wytnij PodglÄ
d\tC"
+#: Menus.cpp:1011
+msgid "Selection to Start"
+msgstr "Zaznaczenie do PoczÄ
tku"
-#: Menus.cpp:1013
-msgid "Selection to Start\tShift+Home"
-msgstr "Zaznaczenie do PoczÄ
tku\tShift+Home"
+#: Menus.cpp:1012
+msgid "Selection to End"
+msgstr "Zaznaczenie do koÅca"
#: Menus.cpp:1014
-msgid "Selection to End\tShift+End"
-msgstr "Zaznaczenie do koÅca\tShift+End"
+msgid "DeleteKey"
+msgstr "Klawisz kasowaniaÂ"
-#: Menus.cpp:1016
-msgid "DeleteKey\tBackspace"
-msgstr "Klawisz kasowaniaÂ\tBackspace"
+#: Menus.cpp:1019
+msgid "DeleteKey2"
+msgstr "Klawisz kasowania 2"
-#: Menus.cpp:1021
-msgid "DeleteKey2\tDelete"
-msgstr "Klawisz kasowania 2\tDelete"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
+msgstr ""
-#: Menus.cpp:1027
-msgid "Seek left short period during playback\tLeft"
-msgstr "Krótkie przeszukiwanie w lewo podczas odtwarzania\tLewa strzaÅka"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
+msgstr ""
-#: Menus.cpp:1028
-msgid "Seek right short period during playback\tRight"
-msgstr "Krótkie przeszukiwanie w prawo podczas odtwarzania\tPrawa strzaÅka"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
+msgstr ""
-#: Menus.cpp:1029
-msgid "Seek left long period during playback\tShift+Left"
-msgstr "DÅugie przeszukiwanie w lewo podczas odtwarzania\tShift+Lewa strzaÅka"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
+msgstr ""
+
+#: Menus.cpp:1032
+msgid "Move Focus to Previous Track"
+msgstr "PrzesuÅ do poprzedniej Åcieżki"
-#: Menus.cpp:1030
-msgid "Seek right long period during playback\tShift+Right"
-msgstr "DÅugie przeszukiwanie w prawo podczas odtwarzania\tShift+Prawa strzaÅka"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
+msgstr ""
#: Menus.cpp:1034
-msgid "Move Focus to Previous Track\tUp"
-msgstr "PrzesuÅ do poprzedniej Åcieżki\tStrzaÅka w górÄ"
+msgid "Move Focus to Next Track"
+msgstr "PrzesuÅ do nastÄpnej Åcieżki"
-#: Menus.cpp:1035
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
-msgstr "PrzesuÅ do poprzedniej i zmieÅ zaznaczenie\tShift+StrzaÅka do góry"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
+msgstr ""
#: Menus.cpp:1036
-msgid "Move Focus to Next Track\tDown"
-msgstr "PrzesuÅ do nastÄpnej Åcieżki\tStrzaÅka w dóÅ"
-
-#: Menus.cpp:1037
-msgid "Move Focus to Next and Change Selection\tShift+Down"
-msgstr "PrzesuÅ do nastÄpnej i zmieÅ zaznaczenie\tShift+StrzaÅka w dóÅ"
+msgid "Toggle Focused Track"
+msgstr "Przemieszczaj siÄ pomiÄdzy Åcieżkami"
-#: Menus.cpp:1038
-msgid "Toggle Focused Track\tReturn"
-msgstr "Przemieszczaj siÄ pomiÄdzy Åcieżkami\tReturn"
+#: Menus.cpp:1040
+msgid "Cursor Left"
+msgstr "Kursor Lewy"
-#: Menus.cpp:1039
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr "Przemieszczaj siÄ pomiÄdzy Åcieżkami\tNUMPAD_ENTER"
+#: Menus.cpp:1041
+msgid "Cursor Right"
+msgstr "Kursor Prawy"
#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
-msgstr ""
-
-#: Menus.cpp:1042
-msgid "Cursor Left\tLeft"
-msgstr "Kursor Lewy\tLewy"
+msgid "Cursor Short Jump Left"
+msgstr "Kursor lekko w lewo"
#: Menus.cpp:1043
-msgid "Cursor Right\tRight"
-msgstr "Kursor Prawy\tPrawy"
+msgid "Cursor Short Jump Right"
+msgstr "Kursor lekko w prawo"
#: Menus.cpp:1044
-msgid "Cursor Short Jump Left\t,"
-msgstr "Kursor lekko w lewo\t,"
+msgid "Cursor Long Jump Left"
+msgstr "Kursor mocno w lewo"
#: Menus.cpp:1045
-msgid "Cursor Short Jump Right\t."
-msgstr "Kursor lekko w prawo\t."
-
-#: Menus.cpp:1046
-msgid "Cursor Long Jump Left\tShift+,"
-msgstr "Kursor mocno w lewo\tShift+,"
+msgid "Cursor Long Jump Right"
+msgstr "Kursor mocno w prawo"
#: Menus.cpp:1047
-msgid "Cursor Long Jump Right\tShift+."
-msgstr "Kursor mocno w prawo\tShift+."
+msgid "Selection Extend Left"
+msgstr "PowiÄksz zaznaczenie w Lewo"
-#: Menus.cpp:1049
-msgid "Selection Extend Left\tShift+Left"
-msgstr "PowiÄksz zaznaczenie w Lewo\tShift+Lewo"
+#: Menus.cpp:1048
+msgid "Selection Extend Right"
+msgstr "PowiÄksz zaznaczenie w prawo"
#: Menus.cpp:1050
-msgid "Selection Extend Right\tShift+Right"
-msgstr "PowiÄksz zaznaczenie w prawo\tShift+Prawo"
-
-#: Menus.cpp:1052
msgid "Set (or Extend) Left Selection"
msgstr "Ustaw (lub Rozszerz) Lewe Zaznaczenie"
-#: Menus.cpp:1053
+#: Menus.cpp:1051
msgid "Set (or Extend) Right Selection"
msgstr "Ustaw (lub Rozszerz) Prawe Zaznaczenie"
-#: Menus.cpp:1055
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "Zmniejszenie zaznaczenia od lewej\tCtrl+Shift+Prawa strzaÅka"
+#: Menus.cpp:1053
+msgid "Selection Contract Left"
+msgstr "Zmniejszenie zaznaczenia od lewej"
+
+#: Menus.cpp:1054
+msgid "Selection Contract Right"
+msgstr "Zmniejszenie zaznaczenia z prawej strony"
#: Menus.cpp:1056
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "Zmniejszenie zaznaczenia z prawej strony\tCtrl+Shift+Lewa strzaÅka"
+msgid "Change pan on focused track"
+msgstr "ZmieÅ przesuniÄcie na zaznaczonej Åcieżce"
+
+#: Menus.cpp:1057
+msgid "Pan left on focused track"
+msgstr "PrzesuÅ w lewo na zaznaczonej Åcieżce"
#: Menus.cpp:1058
-msgid "Change pan on focused track\tShift+P"
-msgstr "ZmieÅ przesuniÄcie na zaznaczonej Åcieżce\tShift+P"
+msgid "Pan right on focused track"
+msgstr "PrzesuÅ w prawo na zaznaczonej Åcieżce"
#: Menus.cpp:1059
-msgid "Pan left on focused track\tAlt+Shift+Left"
-msgstr "PrzesuÅ w lewo na zaznaczonej Åcieżce\tAlt+Shift+Lewa strzaÅka"
+msgid "Change gain on focused track"
+msgstr "ZmieÅ moc sygnaÅu na zaznaczonej Åcieżce"
#: Menus.cpp:1060
-msgid "Pan right on focused track\tAlt+Shift+Right"
-msgstr "PrzesuÅ w prawo na zaznaczonej Åcieżce\tAlt+Shift+Prawa strzaÅka"
+msgid "Increase gain on focused track"
+msgstr "PodnieÅ moc sygnaÅu na zaznaczonej Åcieżce"
#: Menus.cpp:1061
-msgid "Change gain on focused track\tShift+G"
-msgstr "ZmieÅ moc sygnaÅu na zaznaczonej Åcieżce\tShift+G"
+msgid "Decrease gain on focused track"
+msgstr "ObniżyÄ moc sygnaÅu na zaznaczonej Åcieżce"
#: Menus.cpp:1062
-msgid "Increase gain on focused track\tAlt+Shift+Up"
-msgstr "PodnieÅ moc sygnaÅu na zaznaczonej Åcieżce\tAlt+Shift+StrzaÅka w górÄ"
+msgid "Open menu on focused track"
+msgstr "Otwórz menu na zaznaczonej Åcieżce"
#: Menus.cpp:1063
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
-msgstr "ObniżyÄ moc sygnaÅu na zaznaczonej Åcieżce\tAlt+Shift+StrzaÅka w dóÅ"
+msgid "Mute/Unmute focused track"
+msgstr "Wycisz/ZgÅoÅnij zaznaczonÄ
ÅcieżkÄ"
#: Menus.cpp:1064
-msgid "Open menu on focused track\tShift+M"
-msgstr "Otwórz menu na zaznaczonej Åcieżce\tShift+M"
+msgid "Solo/Unsolo focused track"
+msgstr "Oddziel/Rozdziel zaznaczonÄ
ÅcieżkÄ"
#: Menus.cpp:1065
-msgid "Mute/Unmute focused track\tShift+U"
-msgstr "Wycisz/ZgÅoÅnij zaznaczonÄ
ÅcieżkÄ\tShift+U"
-
-#: Menus.cpp:1066
-msgid "Solo/Unsolo focused track\tShift+S"
-msgstr "Oddziel/Rozdziel zaznaczonÄ
ÅcieżkÄ\tShift+S"
+msgid "Close focused track"
+msgstr "Zamknij zaznaczonÄ
ÅcieżkÄ"
#: Menus.cpp:1067
-msgid "Close focused track\tShift+C"
-msgstr "Zamknij zaznaczonÄ
ÅcieżkÄ\tShift+C"
-
-#: Menus.cpp:1069
msgid "Snap To On"
msgstr "WÅÄ
cz"
-#: Menus.cpp:1070
+#: Menus.cpp:1068
msgid "Snap To Off"
msgstr "WyÅÄ
cz"
+#: Menus.cpp:1069
+msgid "Full screen on/off"
+msgstr "PeÅny ekran wÅ/wyÅ"
+
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr ""
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr ""
+
#: Menus.cpp:1071
-msgid "Full screen on/off\tF11"
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr ""
+
+#: Menus.cpp:1074
+msgid "Adjust input source"
msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
-#: Menus.cpp:1157
+#: Menus.cpp:1151
msgid "Open Recent"
msgstr "Otwórz niedawne"
#. i18n-hint: This is the name of the menu item on Windows and Linux
-#: Menus.cpp:1160
+#: Menus.cpp:1154
#, fuzzy
msgid "Recent &Files"
msgstr "Niedawne &Pliki..."
-#: Menus.cpp:1209
+#: Menus.cpp:1203
#, c-format
msgid "&Undo %s"
msgstr "&Cofnij %s"
-#: Menus.cpp:1235
+#: Menus.cpp:1229
msgid "Can't Undo"
msgstr "Nie można cofnÄ
Ä"
-#: Menus.cpp:1244
+#: Menus.cpp:1238
#, c-format
msgid "&Redo %s"
msgstr "&PrzywrÃ³Ä %s"
-#: Menus.cpp:1250
+#: Menus.cpp:1244
msgid "Can't Redo"
msgstr "Nie można przywróciÄ"
-#: Menus.cpp:1856
+#: Menus.cpp:1859
msgid "Sort By Time"
msgstr "Sortuj wedÅug czasu"
-#: Menus.cpp:1856
+#: Menus.cpp:1859
msgid "Tracks sorted by time"
msgstr "Åcieżki posortowane wedÅug czasu"
-#: Menus.cpp:1882
+#: Menus.cpp:1885
msgid "Sort By Name"
msgstr "Sortuj wedÅug nazw"
-#: Menus.cpp:1882
+#: Menus.cpp:1885
msgid "Tracks sorted by name"
msgstr "Åcieżki posortowane wedÅug nazwy"
-#: Menus.cpp:2033
+#: Menus.cpp:2036
msgid "Set Left Selection Bound"
msgstr "Wyznacz lewÄ
granicÄ zaznaczenia"
-#: Menus.cpp:2068
+#: Menus.cpp:2072
msgid "Set Right Selection Bound"
msgstr "Wyznacz prawÄ
granicÄ zaznaczenia"
-#: Menus.cpp:2337
+#: Menus.cpp:2342
msgid "You must select a track first."
msgstr "ProszÄ najpierw zaznaczyÄ ÅcieżkÄ."
-#: Menus.cpp:2369
+#: Menus.cpp:2377
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "Powtórz %s\tCtrl+R"
+msgid "Repeat %s"
+msgstr "Powtórz %s"
-#: Menus.cpp:2512
+#: Menus.cpp:2520
msgid "There are no label tracks to export."
msgstr "Nie ma Åcieżek z etykietÄ
do eksportu."
-#: Menus.cpp:2607
+#: Menus.cpp:2615
#, fuzzy
msgid "Export MIDI As:"
msgstr "Importuj MIDI..."
-#: Menus.cpp:2611
+#: Menus.cpp:2619
#, fuzzy
msgid "MIDI file (*.mid)|*.mid|Allegro file (*.gro)|*.gro"
msgstr "Wszystkie pliki (*.*)|*.*|Pliki MIDI (*.mid)|*.mid|Pliki Allegro (*.gro)|*.gro"
-#: Menus.cpp:2643
+#: Menus.cpp:2651
msgid "You have selected a filename with an unrecognized file extension.\n"
"Do you want to continue?"
-msgstr ""
+msgstr "ZaznaczyÅeÅ nazwÄ pliku z nierozpoznawalnym rozszerzeniem.\n"
+"Czy chcesz kontynuowaÄ?"
-#: Menus.cpp:2644
+#: Menus.cpp:2652
#, fuzzy
msgid "Export MIDI"
msgstr "Importuj MIDI..."
-#: Menus.cpp:2702
+#: Menus.cpp:2722
msgid "Nothing to undo"
msgstr "Nic do cofniÄcia"
-#: Menus.cpp:2722
+#: Menus.cpp:2742
msgid "Nothing to redo"
msgstr "Nic do przywrócenia"
-#: Menus.cpp:2809
-#: TrackPanel.cpp:596
-#: toolbars/EditToolBar.cpp:133
+#: Menus.cpp:2847 TrackPanel.cpp:593 toolbars/EditToolBar.cpp:133
msgid "Cut"
msgstr "Wytnij"
-#: Menus.cpp:2809
+#: Menus.cpp:2847
msgid "Cut to the clipboard"
msgstr "Wytnij do schowka"
-#: Menus.cpp:2849
+#: Menus.cpp:2887
msgid "Split Cut"
msgstr "Rozdziel ciÄcie"
-#: Menus.cpp:2849
+#: Menus.cpp:2887
msgid "Split-cut to the clipboard"
msgstr "Rozdziel ciÄcie do schowka"
-#: Menus.cpp:2914
-#: Menus.cpp:2986
-#: Menus.cpp:3178
-#: TrackPanel.cpp:598
+#: Menus.cpp:2953 Menus.cpp:3027 Menus.cpp:3221 TrackPanel.cpp:595
#: toolbars/EditToolBar.cpp:137
msgid "Paste"
msgstr "Wklej"
-#: Menus.cpp:2914
+#: Menus.cpp:2953
msgid "Pasted text from the clipboard"
msgstr "Wklejony tekst ze schowka"
-#: Menus.cpp:2986
-#: Menus.cpp:3178
+#: Menus.cpp:3027 Menus.cpp:3221
msgid "Pasted from the clipboard"
msgstr "Wklejone ze schowka"
-#: Menus.cpp:3052
+#: Menus.cpp:3095
#, fuzzy
msgid "Pasting one type of track into another is not allowed."
msgstr "Nie wolno kopiowaÄ dźwiÄku stereo do Åcieżki mono."
-#: Menus.cpp:3064
+#: Menus.cpp:3107
msgid "Copying stereo audio into a mono track is not allowed."
msgstr "Nie wolno kopiowaÄ dźwiÄku stereo do Åcieżki mono."
-#: Menus.cpp:3214
-#: toolbars/EditToolBar.cpp:139
+#: Menus.cpp:3257 toolbars/EditToolBar.cpp:139
msgid "Trim"
msgstr "Przytnij"
-#: Menus.cpp:3214
+#: Menus.cpp:3257
msgid "Trim file to selection"
msgstr "Przytnij plik do zaznaczenia"
-#: Menus.cpp:3243
+#: Menus.cpp:3286
#, c-format
msgid "Split-deleted %.2f seconds at t=%.2f"
msgstr "Rozdziel-usuniÄte %.2f seconds at t=%.2f"
-#: Menus.cpp:3246
+#: Menus.cpp:3289
msgid "Split Delete"
msgstr "Rozdziel UsuÅ"
-#: Menus.cpp:3267
+#: Menus.cpp:3310
#, c-format
msgid "Disjoined %.2f seconds at t=%.2f"
msgstr "Rozdzielone %.2f sekundy w t=%.2f"
-#: Menus.cpp:3270
+#: Menus.cpp:3313
msgid "Disjoin"
msgstr "Rozdziel"
-#: Menus.cpp:3291
+#: Menus.cpp:3334
#, c-format
msgid "Joined %.2f seconds at t=%.2f"
msgstr "PoÅÄ
czone %.2f sekundy w t=%.2f"
-#: Menus.cpp:3294
+#: Menus.cpp:3337
msgid "Join"
msgstr "PoÅÄ
cz"
-#: Menus.cpp:3313
+#: Menus.cpp:3356
#, c-format
msgid "Silenced selected tracks for %.2f seconds at %.2f"
msgstr "Wyciszono zaznaczone Åcieżki o dÅugoÅci %.2f sekund od pozycji %.2f"
-#: Menus.cpp:3315
-#: toolbars/EditToolBar.cpp:141
+#: Menus.cpp:3358 toolbars/EditToolBar.cpp:141
msgid "Silence"
msgstr "Cisza"
-#: Menus.cpp:3349
+#: Menus.cpp:3392
msgid "Duplicate"
msgstr "Duplikuj"
-#: Menus.cpp:3349
+#: Menus.cpp:3392
msgid "Duplicated"
msgstr "Zduplikowane"
-#: Menus.cpp:3368
+#: Menus.cpp:3411
msgid "Cut Labels"
msgstr "Wytnij Etykiety"
-#: Menus.cpp:3368
+#: Menus.cpp:3411
msgid "Cut labeled regions to the clipboard"
msgstr "Wytnij zaznaczone obszary do schowka"
-#: Menus.cpp:3382
+#: Menus.cpp:3425
msgid "SplitCut labeled regions to the clipboard"
msgstr "Rozdziel WyciÄte zaznaczone obszary do schowka"
-#: Menus.cpp:3383
+#: Menus.cpp:3426
msgid "Split Cut Labels"
msgstr "Rozdziel WyciÄte Etykiety"
-#: Menus.cpp:3397
+#: Menus.cpp:3440
msgid "Copied labeled regions to the clipboard"
msgstr "Skopiowane zaznaczone obszary do schowka"
-#: Menus.cpp:3397
+#: Menus.cpp:3440
msgid "Copy Labels"
msgstr "Kopiuj etykiety"
-#: Menus.cpp:3409
+#: Menus.cpp:3452
msgid "Delete Labels"
msgstr "UsuÅ etykiety"
-#: Menus.cpp:3409
+#: Menus.cpp:3452
msgid "Deleted labeled regions"
msgstr "UsuniÄte zaznaczone obszary "
-#: Menus.cpp:3421
+#: Menus.cpp:3464
msgid "Split Delete Labels"
msgstr "Rozdziel UsuÅ Etykiety"
-#: Menus.cpp:3421
+#: Menus.cpp:3464
msgid "Split Deleted labeled regions"
msgstr "Rozdziel UsuniÄte obszary etykiet"
-#: Menus.cpp:3433
+#: Menus.cpp:3476
msgid "Silence Labels"
msgstr "Cisza Etykiety"
-#: Menus.cpp:3433
+#: Menus.cpp:3476
msgid "Silenced labeled regions"
msgstr "Wyciszone zaznaczone obszary"
-#: Menus.cpp:3445
+#: Menus.cpp:3488
msgid "Split Labels"
msgstr "Rozdziel Etykiety"
-#: Menus.cpp:3445
+#: Menus.cpp:3488
msgid "Split labeled regions"
msgstr "Rozdziel zaznaczone obszary"
-#: Menus.cpp:3457
+#: Menus.cpp:3500
msgid "Join Labels"
msgstr "PoÅÄ
cz Etykiety"
-#: Menus.cpp:3457
+#: Menus.cpp:3500
msgid "Joined labeled regions"
msgstr "PoÅÄ
czone zaznaczone obszary"
-#: Menus.cpp:3469
+#: Menus.cpp:3512
msgid "Disjoin Labels"
msgstr "Rozdziel etykiety"
-#: Menus.cpp:3469
+#: Menus.cpp:3512
msgid "Disjoined labeled regions"
msgstr "Rozdzielone zaznaczone obszary"
-#: Menus.cpp:3491
-#: TrackPanel.cpp:6134
+#: Menus.cpp:3534 TrackPanel.cpp:6141
msgid "Split"
msgstr "Rozdziel"
-#: Menus.cpp:3585
+#: Menus.cpp:3628
msgid "Split New"
msgstr "Rozdziel Nowy"
-#: Menus.cpp:3585
+#: Menus.cpp:3628
msgid "Split to new track"
msgstr "Rozdziel do nowej Åcieżki"
-#: Menus.cpp:3668
+#: Menus.cpp:3711
msgid "Split at labels"
msgstr "Rozdziel przy etykietach"
-#: Menus.cpp:3969
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "Aby wykreÅliÄ widmo, wszystkie Åcieżki muszÄ
mieÄ tÄ samÄ
czÄstotliwoÅÄ próbkowania."
-
-#: Menus.cpp:3995
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "Zaznaczono zbyt dużÄ
próbkÄ audio. Tylko pierwsze %.1f sekund zostanie przeanalizowane."
-
-#: Menus.cpp:4130
+#: Menus.cpp:4181
#, c-format
msgid "Imported labels from '%s'"
msgstr "Zaimportowano etykiety z '%s'"
-#: Menus.cpp:4131
+#: Menus.cpp:4182
msgid "Import Labels"
msgstr "Importuj Etykiety"
-#: Menus.cpp:4142
+#: Menus.cpp:4193
msgid "Select a MIDI file..."
msgstr "Zaznacz plik MIDI..."
-#: Menus.cpp:4146
+#: Menus.cpp:4197
#, fuzzy
msgid "MIDI and Allegro files (*.mid;*.midi;*.gro)|*.mid;*.midi;*.gro|MIDI files (*.mid;*.midi)|*.mid;*.midi|Allegro files (*.gro)|*.gro|All files (*.*)|*.*"
msgstr "Wszystkie pliki (*.*)|*.*|Pliki MIDI (*.mid)|*.mid|Pliki Allegro (*.gro)|*.gro"
-#: Menus.cpp:4162
+#: Menus.cpp:4213
#, c-format
msgid "Imported MIDI from '%s'"
msgstr "Zaimportowano MIDI z '%s'"
-#: Menus.cpp:4163
+#: Menus.cpp:4214
msgid "Import MIDI"
msgstr "Importuj MIDI..."
-#: Menus.cpp:4177
+#: Menus.cpp:4228
msgid "Select any uncompressed audio file..."
msgstr "Zaznacz jakiÅ niezkompresowany plik audio..."
-#: Menus.cpp:4181
+#: Menus.cpp:4232
msgid "All files (*)|*"
msgstr "Wszystkie pliki (*.*)|*.*"
-#: Menus.cpp:4205
+#: Menus.cpp:4256
msgid "Edit the metadata tags"
msgstr "Edytuj tagi metadanych"
-#: Menus.cpp:4206
-#: export/Export.cpp:353
+#: Menus.cpp:4257 export/Export.cpp:349
msgid "Edit Metadata"
msgstr "Edytuj Metadane"
-#: Menus.cpp:4206
+#: Menus.cpp:4257
msgid "Edit Metadata tags"
msgstr "Edytuj tagi Metadanych"
-#: Menus.cpp:4262
+#: Menus.cpp:4313
#, c-format
msgid "Rendered all audio in track '%s'"
msgstr "Wszystkie dźwiÄki renderowane w Åcieżce'%s'"
-#: Menus.cpp:4263
+#: Menus.cpp:4314
msgid "Render"
msgstr "Renderuj"
-#: Menus.cpp:4268
+#: Menus.cpp:4319
#, c-format
msgid "Mixed and rendered %d tracks into one new stereo track"
msgstr "Wymieszane i renderowane %d Åcieżki w jednÄ
nowÄ
ÅcieżkÄ stereo"
-#: Menus.cpp:4271
+#: Menus.cpp:4322
#, c-format
msgid "Mixed and rendered %d tracks into one new mono track"
msgstr "Wymieszane i renderowane %d Åcieżki w jednÄ
nowÄ
ÅcieżkÄ mono"
-#: Menus.cpp:4273
-#: Mix.cpp:121
+#: Menus.cpp:4324 Mix.cpp:121
msgid "&Mix and Render"
msgstr "&Miksuj i renderuj"
-#: Menus.cpp:4403
+#: Menus.cpp:4454
msgid "Aligned with zero"
msgstr "Wyrównane do zera"
-#: Menus.cpp:4407
+#: Menus.cpp:4458
msgid "Aligned cursor"
msgstr "Wyrównane do kursora"
-#: Menus.cpp:4411
+#: Menus.cpp:4462
msgid "Aligned with selection start"
msgstr "Wyrównano z poczÄ
tkiem zaznaczenia"
-#: Menus.cpp:4415
+#: Menus.cpp:4466
msgid "Aligned with selection end"
msgstr "Wyrównano z koÅcem zaznaczenia"
-#: Menus.cpp:4419
+#: Menus.cpp:4470
msgid "Aligned end with cursor"
msgstr "Wyrównano koniec z kursorem"
-#: Menus.cpp:4423
+#: Menus.cpp:4474
msgid "Aligned end with selection start"
msgstr "Wyrównano koniec z poczÄ
tkiem zaznaczenia"
-#: Menus.cpp:4427
+#: Menus.cpp:4478
msgid "Aligned end with selection end"
msgstr "Wyrównano koniec z koÅcem zaznaczenia"
-#: Menus.cpp:4431
+#: Menus.cpp:4482
msgid "Aligned"
msgstr "Wyrównane"
-#: Menus.cpp:4464
+#: Menus.cpp:4515
msgid "Align"
msgstr "Wyrównaj"
-#: Menus.cpp:4549
+#: Menus.cpp:4600
msgid "Sync MIDI with Audio"
-msgstr ""
+msgstr "Zsynchronizuj MIDI z Audio"
-#: Menus.cpp:4553
+#: Menus.cpp:4604
msgid "Alignment completed."
-msgstr ""
+msgstr "Wyrównanie zakoÅczone."
-#: Menus.cpp:4564
+#: Menus.cpp:4615
msgid "Created new audio track"
msgstr "Utworzono nowÄ
ÅcieżkÄ audio"
-#: Menus.cpp:4564
-#: Menus.cpp:4587
-#: Menus.cpp:4602
-#: Menus.cpp:4622
+#: Menus.cpp:4615 Menus.cpp:4638 Menus.cpp:4653 Menus.cpp:4673
msgid "New Track"
msgstr "Nowa Åcieżka"
-#: Menus.cpp:4587
+#: Menus.cpp:4638
msgid "Created new stereo audio track"
msgstr "Utworzono nowÄ
stereofonicznÄ
ÅcieżkÄ audio"
-#: Menus.cpp:4602
+#: Menus.cpp:4653
msgid "Created new label track"
msgstr "Utworzono nowÄ
etykietÄ Åcieżki"
-#: Menus.cpp:4611
+#: Menus.cpp:4662
msgid "The version of Audacity you are using does not support multiple time tracks."
msgstr "Wersja Audacity, której używasz, nie wspiera wielu utworów naraz"
-#: Menus.cpp:4622
+#: Menus.cpp:4673
msgid "Created new time track"
msgstr "Utworzono nowÄ
ÅcieżkÄ"
-#: Menus.cpp:4677
+#: Menus.cpp:4733
msgid "Added label"
msgstr "Dodaj etykietÄ"
-#: Menus.cpp:4712
+#: Menus.cpp:4768
msgid "Edited labels"
msgstr "Edytowane etykiety"
-#: Menus.cpp:4739
+#: Menus.cpp:4795
msgid "Save CleanSpeech Preset File As:"
msgstr "Zapisz Ustawienie CzystejMowy jako:"
-#: Menus.cpp:4743
+#: Menus.cpp:4799
msgid "CleanSpeech Presets (*.csp)|*.csp"
msgstr "Ustawienia CzystejMowy (*.csp)|*.csp"
-#: Menus.cpp:4750
-#: export/Export.cpp:605
+#: Menus.cpp:4806 export/Export.cpp:611
msgid "Sorry, pathnames longer than 256 characters not supported."
msgstr "Przykro mi ale Åcieżki do plików dÅuższe niż 256 znaków nie sÄ
obsÅugiwane."
-#: Menus.cpp:4796
+#: Menus.cpp:4852
msgid "Problem encountered exporting presets."
msgstr "Problem podczas eksportowania ustawieÅ."
-#: Menus.cpp:4797
-#: export/Export.cpp:468
+#: Menus.cpp:4853 export/Export.cpp:473
msgid "Unable to export"
msgstr "Nie można wyeskportowaÄ"
-#: Menus.cpp:4981
+#: Menus.cpp:5037
msgid "Remove Track"
msgstr "UsuÅ ÅcieżkÄ "
-#: Menus.cpp:4981
+#: Menus.cpp:5037
msgid "Removed audio track(s)"
msgstr "UsuniÄta(e) Åcieżki(a) audio"
-#: Menus.cpp:5138
-#: Menus.cpp:5193
-#: export/ExportFFmpeg.cpp:710
-#: export/ExportMP3.cpp:1928
+#: Menus.cpp:5194 Menus.cpp:5249 export/ExportFFmpeg.cpp:741
+#: export/ExportMP3.cpp:1780
msgid "Resample"
msgstr "Resampluj"
-#: Menus.cpp:5158
-#: TrackPanel.cpp:6361
+#: Menus.cpp:5214 TrackPanel.cpp:6368
#, fuzzy
msgid "New sample rate (Hz):"
msgstr "Wprowadź nowÄ
czÄstotliwoÅÄ próbkowania:"
-#: Menus.cpp:5182
-#: TrackPanel.cpp:6385
+#: Menus.cpp:5238 TrackPanel.cpp:6392
msgid "The entered value is invalid"
msgstr "Wprowadzona wartoÅÄ jest nieprawidÅowa"
-#: Menus.cpp:5191
+#: Menus.cpp:5247
#, c-format
msgid "Resampling track %d"
msgstr "Resamplowanie Åcieżki %d"
-#: Menus.cpp:5200
+#: Menus.cpp:5256
msgid "Resample Track"
msgstr "Resampluj ÅcieżkÄ"
-#: Menus.cpp:5200
+#: Menus.cpp:5256
msgid "Resampled audio track(s)"
msgstr "Resamplowane Åcieżki dźwiÄkowe"
-#: Mix.cpp:95
-#: Mix.cpp:102
+#: Mix.cpp:95 Mix.cpp:102
msgid "Mix"
msgstr "Mikser"
@@ -3063,35 +2888,36 @@ msgstr "WystÄ
piŠproblem przy próbie wydruku"
msgid "Print"
msgstr "Drukuj"
-#: Project.cpp:673
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr ""
+
+#: Project.cpp:741
msgid "Main Mix"
msgstr "GÅowny mikser"
-#: Project.cpp:797
+#: Project.cpp:865
#, c-format
msgid "Welcome to Audacity version %s"
msgstr "Witamy w wersji %s Audacity"
-#: Project.cpp:957
+#: Project.cpp:1045
msgid "(Recovered)"
msgstr "(Odzyskane)"
-#: Project.cpp:1546
-#: TrackPanel.cpp:796
-#: toolbars/ControlToolBar.cpp:192
+#: Menus.cpp:996
msgid "Record"
msgstr "Nagrywanie"
-#: Project.cpp:1546
-#: TrackPanel.cpp:796
+#: Project.cpp:1639 TrackPanel.cpp:793
msgid "Recorded Audio"
msgstr "Nagrano audio"
-#: Project.cpp:1564
+#: Project.cpp:1657
msgid "Save changes before closing?"
msgstr "ZapisaÄ zmiany przed zamkniÄciem?"
-#: Project.cpp:1567
+#: Project.cpp:1660
#, fuzzy
msgid "\n"
"If saved, the project will have no tracks.\n"
@@ -3107,24 +2933,23 @@ msgstr "\n"
"otwarte, kliknij Anuluj, Edytuj > Cofnij aż wszystkie \n"
"Åcieżki bÄdÄ
otwarte i wybierz Plik > Zapisz Projekt."
-#: Project.cpp:1570
+#: Project.cpp:1663
msgid "Save changes?"
msgstr "ZapisaÄ zmiany?"
-#: Project.cpp:1772
-msgid "All files|*.*|All supported files|"
-msgstr "Wszystkie pliki|*.*|Wszystkie wspierane pliki|"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
+msgstr ""
-#: Project.cpp:1802
+#: Project.cpp:1900
msgid "Select one or more audio files..."
msgstr "Zaznacz jeden lub wiÄcej plików audio..."
-#: Project.cpp:1829
+#: Project.cpp:1927
msgid "Audacity projects|*.aup|"
msgstr "Projekty Audacity|*.aup|"
-#: Project.cpp:1882
-#: Project.cpp:2304
+#: Project.cpp:1986 Project.cpp:2408
#, fuzzy, c-format
msgid "This file was saved by Audacity %s, a much\n"
"older version. The format has changed.\n"
@@ -3142,62 +2967,70 @@ msgstr "Plik zostaÅ zapisany przez Audacity %s, o wiele\n"
"Czy chciaÅbyÅ spróbowaÄ otworzyÄ plik\n"
"mimo wszystko?"
-#: Project.cpp:1883
+#: Project.cpp:1987
msgid "1.0 or earlier"
-msgstr ""
+msgstr "1.0 lub wczeÅniejsze"
-#: Project.cpp:1889
-#: Project.cpp:2316
+#: Project.cpp:1993 Project.cpp:2420
msgid "Opening old project file"
msgstr "Otwieranie starego pliku projektu"
-#: Project.cpp:1915
-#: Project.cpp:1923
+#: Project.cpp:2073
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr ""
+
+#: Project.cpp:2019 Project.cpp:2027
msgid "Error opening file"
msgstr "BÅÄ
d otwarcia pliku"
-#: Project.cpp:1929
+#: Project.cpp:2033
#, c-format
msgid "File may be invalid or corrupted: \n"
"%s"
msgstr "Plik może byÄ skorumpowany \n"
"%s"
-#: Project.cpp:1930
+#: Project.cpp:2034
msgid "Error opening file or project"
msgstr "BÅÄ
d podczas otwierania pliku lub projektu"
-#: Project.cpp:1950
+#: Project.cpp:2054
msgid "Audacity was unable to convert an Audacity 1.0 project to the new project format."
msgstr "Audacity nie mogÅo przekonwertowaÄ plików projektu Audacity 1.0 do nowego formatu."
-#: Project.cpp:2053
+#: Project.cpp:2157
msgid "Could not remove old auto save file"
msgstr "Nie można usunÄ
Ä starego, zachowanego pliku"
-#: Project.cpp:2055
+#: Project.cpp:2159
msgid "Project was recovered"
msgstr "Projekt zostaÅ odzyskany"
-#: Project.cpp:2055
+#: Project.cpp:2159
msgid "Recover"
msgstr "Odzyskaj"
-#: Project.cpp:2084
+#: Project.cpp:2188
msgid "Project checker repaired file"
msgstr "Tester projektu odzyskaÅ plik"
-#: Project.cpp:2084
-#: effects/Repair.h:29
+#: Project.cpp:2188 effects/Repair.h:29
msgid "Repair"
msgstr "Napraw"
-#: Project.cpp:2230
+#: Project.cpp:2334
#, c-format
msgid "Couldn't find the project data folder: \"%s\""
msgstr "Nie można odnaleÅºÄ katalogu projektu: \"%s\""
-#: Project.cpp:2273
+#: Project.cpp:2377
#, c-format
msgid "This file was saved using Audacity %s.\n"
"You are using Audacity %s - you need to upgrade to\n"
@@ -3206,27 +3039,21 @@ msgstr "Plik zostaÅ zapisany używajÄ
c Audacity %s. \n"
"Używasz Audacity %s - powinieneÅ uaktualniÄ do \n"
"nowszej wersji, aby otworzyÄ ten plik."
-#: Project.cpp:2277
+#: Project.cpp:2381
msgid "Can't open project file"
msgstr "Nie można otworzyÄ pliku projektu"
-#: Project.cpp:2311
-#, fuzzy, c-format
+#: Project.cpp:2484
+#, c-format
msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
"\n"
-"Open this file now?"
-msgstr "Plik zostaÅ zapisany przez Audacity %s i format siÄ\n"
-"zmieniÅ. Ta wersja Audacity może spróbowaÄ\n"
-"go otworzyÄ, ale mogÄ
pojawiÄ siÄ problemy. PowinieneÅ\n"
-"stworzyÄ kopiÄ.\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
-"Po zapisaniu pliku w tej wersji Audacity,\n"
-"nie bÄdziesz mógÅ już go otworzyÄ w starszej\n"
-"wersji. Czy chciaÅbyÅ otworzyÄ plik\n"
-"mimo wszystko?"
+"Open this file now?"
+msgstr ""
-#: Project.cpp:2537
+#: Project.cpp:2611
msgid "Your project is now empty.\n"
"If saved, the project will have no tracks.\n"
"\n"
@@ -3235,54 +3062,63 @@ msgid "Your project is now empty.\n"
"are open, then File > Save Project.\n"
"\n"
"Save anyway?"
-msgstr ""
+msgstr "Twój projekt jest pusty.\n"
+"JeÅli go zapiszesz, nie bÄdzie miaŠżadnych Åcieżek.\n"
+"\n"
+"Aby zapisaÄ poprzednio otwarte Åcieżki:\n"
+"Kliknij 'Nie', Edytuj > Cofnij aż wszystkie Åcieżki\n"
+"bÄdÄ
otwarte, nastÄpnie Plik > Zapisz Projekt. \n"
+"\n"
+"Czy zapisaÄ mimo wszystko?"
-#: Project.cpp:2538
+#: Project.cpp:2612
msgid "Warning empty project"
-msgstr ""
+msgstr "Uwaga pusty projekt"
-#: Project.cpp:2588
+#: Project.cpp:2721
#, fuzzy, c-format
msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+"is not writable or the disk is full."
msgstr "Nie można zapisaÄ projektu. Może %s nie jest zapisywalny,\n"
" lub dysk jest zapeÅniony."
-#: Project.cpp:2590
-#: Project.cpp:2605
+#: Project.cpp:2723 Project.cpp:2738
msgid "Error saving project"
msgstr "BÅÄ
d zapisu projektu"
-#: Project.cpp:2680
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
+#: Project.cpp:2808
#, c-format
msgid "Saved %s"
msgstr "Zapisany %s7"
-#: Project.cpp:2806
+#: Project.cpp:2974
#, c-format
msgid "Imported '%s'"
msgstr "Zaimportowano '%s'"
-#: Project.cpp:2807
-#: import/ImportPCM.cpp:483
-#: import/ImportPCM.cpp:527
+#: Project.cpp:2975
msgid "Import"
msgstr "Importuj"
-#: Project.cpp:2840
-#: Project.cpp:2848
+#: Project.cpp:3009 Project.cpp:3017
msgid "Error importing"
msgstr "BÅÄ
d podczas importu"
-#: Project.cpp:2882
+#: Project.cpp:3057
msgid "Save Speech As:"
msgstr "Zapisz mowÄ jako:"
-#: Project.cpp:2884
+#: Project.cpp:3059
msgid "Windows PCM Audio file (*.wav)|*.wav"
msgstr "Plik dżwiÄkowy Windows PCM (*.wav)|*.wav"
-#: Project.cpp:2891
+#: Project.cpp:3066
#, fuzzy
msgid "Audacity compressed project files (.aup) save your work in a smaller, compressed (.ogg) format. \n"
"Compressed project files are a good way to transmit your project online, because they are much smaller. \n"
@@ -3296,129 +3132,289 @@ msgstr "Plik projektu programu Audacity (.aup) zapamiÄtuje caÅÄ
TwojÄ
pracÄ
"\n"
"Jeżeli chcesz zapisaÄ plik tak żeby można go byÅo otworzyÄ przy pomocy innych progamów, wybierz jednÄ
z dostÄpnych opcji Eksportu."
-#: Project.cpp:2894
+#: Project.cpp:3069
msgid "You are saving an Audacity project file (.aup).\n"
"\n"
"Saving a project creates a file that only Audacity can open.\n"
"\n"
"To save an audio file for other programs, use one of the \"File > Export\" commands.\n"
-msgstr ""
+msgstr "Zapisujesz plik projektu Audacity (.aup).\n"
+"\n"
+"Zapisanie projektu stworzy plik, który może byÄ otwarty tylko w Audacity. \n"
+"\n"
+"Aby zapisaÄ plik dźwiÄkowy dla innych programów, użyj \"Plik > Eksportuj\".\n"
-#: Project.cpp:2898
+#: Project.cpp:3073
msgid "Audacity projects (*.aup)|*.aup"
msgstr "Projekty Audacity (*.aup)|*.aup"
-#: Project.cpp:2952
+#: Project.cpp:3127
msgid "Created new project"
msgstr "Utworzono nowy projekt"
-#: Project.cpp:3111
+#: Project.cpp:3286
#, c-format
msgid "Deleted %.2f seconds at t=%.2f"
msgstr "Skasowane %.2f sekund przy t=%.2f"
-#: Project.cpp:3114
-#: effects/Equalization.cpp:1276
-#: effects/Equalization.cpp:2607
+#: Project.cpp:3289 effects/Equalization.cpp:1274
+#: effects/Equalization.cpp:2605
msgid "Delete"
msgstr "Kasuj"
-#: Project.cpp:3308
+#: Project.cpp:3483
#, c-format
msgid "Disk space remains for recording %d hours and %d minutes."
msgstr "PozostaÅa iloÅÄ przestrzeni dyskowej %d godzin i %d minut."
-#: Project.cpp:3311
+#: Project.cpp:3486
#, c-format
msgid "Disk space remains for recording 1 hour and %d minutes."
msgstr "PozostaÅa przestrzeÅ dyskowa 1 godzina i %d minut."
-#: Project.cpp:3314
+#: Project.cpp:3489
#, c-format
msgid "Disk space remains for recording %d minutes."
msgstr "PozostaÅa przestrzeÄ dyskowa %d minut."
-#: Project.cpp:3317
+#: Project.cpp:3492
#, c-format
msgid "Disk space remains for recording %d seconds."
msgstr "PozostaÅa przestrzeÄ dyskowa %d sekund."
-#: Project.cpp:3320
+#: Project.cpp:3495
msgid "Out of disk space"
msgstr "Za maÅo miejsca na dysku"
-#: Project.cpp:3333
+#: Project.cpp:3508
#, c-format
msgid "Import(s) complete. Running %d on-demand waveform calculations. Overall %2.0f%% complete."
-msgstr ""
+msgstr "Import(y) niepeÅny. Pracuje %d kalkulacji. Skompletowane %2.0f%%."
-#: Project.cpp:3336
+#: Project.cpp:3511
#, c-format
msgid "Import complete. Running an on-demand waveform calculation. %2.0f%% complete."
-msgstr ""
+msgstr "ZakoÅczono importowanie. Uruchomiono kalkulacje. ZakoÅczono %2.0f%%."
-#: Project.cpp:3614
+#: Project.cpp:3789
msgid "Could not remove old autosave file: "
msgstr "Nie można usunÄ
Ä starych plików"
-#: Project.cpp:3655
+#: Project.cpp:3830
msgid "New Project"
msgstr "Nowy projekt"
-#: Project.cpp:3668
+#: Project.cpp:3843
msgid "Error writing autosave file"
msgstr "BÅÄ
d podczas automatycznego zapisu pliku"
-#: Project.cpp:3693
+#: Project.cpp:3868
msgid "Could not create autosave file: "
msgstr "Nie można stworzyÄ pliku automatycznego zapisu"
-#: Project.cpp:3719
+#: Project.cpp:3894
#, c-format
msgid "Actual Rate: %d"
msgstr "Aktualna czÄstotliwoÅÄ %d"
-#: Resample.cpp:42
+#: Resample.cpp:62
msgid "Libresample by Dominic Mazzoni and Julius Smith"
msgstr "Libresample ( autorzy: Dominic Mazzoni & Julius Smith)"
-#: Resample.cpp:53
+#: Resample.cpp:73
msgid "High-quality Sinc Interpolation"
msgstr "Wysokiej jakoÅci Sinc Interpolation "
-#: Resample.cpp:55
+#: Resample.cpp:75
msgid "Fast Sinc Interpolation"
msgstr "Fast Sinc Interpolation"
-#: Resample.cpp:125
+#: Resample.cpp:141
msgid "Libsamplerate by Erik de Castro Lopo"
msgstr "Libsamplerate (autor: Erik de Castro Lopo)"
-#: Resample.cpp:218
+#: Resample.cpp:230
#, c-format
msgid "Libsamplerate error: %d\n"
msgstr "BÅÄ
d Libsamplerate: %d\n"
-#: Resample.cpp:240
-#: Resample.cpp:250
+#: Resample.cpp:252 Resample.cpp:262
msgid "Resampling disabled."
msgstr "Zmiana czÄstotliwoÅci próbkowania zablokowana."
-#. i18n-hint: Audio data bit depth (precison): 16-bit integers
+#. i18n-hint: Audio data bit depth (precision): 16-bit integers
#: SampleFormat.cpp:66
msgid "16-bit PCM"
msgstr "16-bitowe PCM"
-#. i18n-hint: Audio data bit depth (precison): 24-bit integers
+#. i18n-hint: Audio data bit depth (precision): 24-bit integers
#: SampleFormat.cpp:69
msgid "24-bit PCM"
msgstr "24-bitowe PCM"
-#. i18n-hint: Audio data bit depth (precison): 32-bit floating point
+#. i18n-hint: Audio data bit depth (precision): 32-bit floating point
#: SampleFormat.cpp:72
msgid "32-bit float"
msgstr "32-bitowe zmienne"
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
+
+#: export/ExportMultiple.cpp:242 prefs/DirectoriesPrefs.cpp:92
+msgid "Choose..."
+msgstr "Wybierz..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
+
+#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
+msgid "false"
+msgstr "faÅsz"
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr "NarzÄdzia"
+
+#: effects/Contrast.cpp:452 toolbars/ControlToolBar.cpp:83
+msgid "Control"
+msgstr "Kontrola"
+
+#: effects/LoadEffects.cpp:115 toolbars/MixerToolBar.cpp:60
+msgid "Mixer"
+msgstr "Mikser"
+
+#: toolbars/MeterToolBar.cpp:50
+msgid "Meter"
+msgstr "Miernik"
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:123 prefs/AudioIOPrefs.cpp:141
+#: prefs/MidiIOPrefs.cpp:118 prefs/MidiIOPrefs.cpp:136
+#: toolbars/DeviceToolBar.cpp:57
+msgid "Device"
+msgstr "UrzÄ
dzenie"
+
+#: toolbars/TranscriptionToolBar.cpp:84
+msgid "Transcription"
+msgstr "Transkrypcja"
+
+#: TrackPanel.cpp:454 TrackPanel.cpp:455
+msgid "Track Panel"
+msgstr "Panel ÅledzÄ
cy"
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: export/ExportMultiple.cpp:285 export/ExportMultiple.cpp:287
+msgid "Tracks"
+msgstr "Åcieżki"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
#: Screenshot.cpp:384
msgid "Saved "
msgstr "Zapisane"
@@ -3427,14 +3423,15 @@ msgstr "Zapisane"
msgid "Error trying to save file: "
msgstr "BÅÄ
d zapisu pliku:"
-#: Sequence.cpp:804
-#: Sequence.cpp:814
-#: Sequence.cpp:821
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
+#: Sequence.cpp:804 Sequence.cpp:814 Sequence.cpp:821
msgid "Gap detected in project file\n"
msgstr "W projekcie wykryto przerwÄ\n"
-#: ShuttleGui.cpp:1972
-#: effects/Effect.cpp:417
+#: ShuttleGui.cpp:1972 effects/Effect.cpp:419
#: effects/audiounits/AudioUnitEffect.cpp:877
msgid "Pre&view"
msgstr "Pod&glÄ
d"
@@ -3461,154 +3458,114 @@ msgstr "&Witamy w Audacity!"
msgid "Don't show this again at start up"
msgstr "Nie pokazuj tego wiÄcej na starcie"
-#: Tags.cpp:640
+#: Tags.cpp:628
msgid "Artist Name"
msgstr "Nazwisko Artysty"
-#: Tags.cpp:641
+#: Tags.cpp:629
msgid "Track Title"
msgstr "TytuÅ utworu"
-#: Tags.cpp:642
+#: Tags.cpp:630
msgid "Album Title"
msgstr "TytuÅ albumu"
-#: Tags.cpp:643
+#: Tags.cpp:631
msgid "Track Number"
msgstr "Numer Åcieżki"
-#: Tags.cpp:644
-#: Tags.cpp:2147
+#: Tags.cpp:632
msgid "Year"
msgstr "Rok"
-#: Tags.cpp:645
+#: Tags.cpp:633
msgid "Genre"
msgstr "Gatunek"
-#: Tags.cpp:646
-#: Tags.cpp:2157
-#: prefs/MousePrefs.cpp:96
+#: Tags.cpp:634 prefs/MousePrefs.cpp:96
msgid "Comments"
msgstr "Komentarze"
#: Tags.cpp:777
msgid "Use arrow keys (or RETURN key after editing) to navigate fields."
-msgstr ""
+msgstr "Użyj klawiszy ze strzaÅkami (lub klawisza RETURN po edycji) aby poruszaÄ siÄ po polach."
-#: Tags.cpp:813
+#: Tags.cpp:800
msgid "Tag Name"
msgstr "Nazwa Tagu"
-#: Tags.cpp:814
+#: Tags.cpp:801
msgid "Tag Value"
msgstr "WartoÅÄ Tagu"
-#: Tags.cpp:829
-#: Tags.cpp:1486
-#: prefs/KeyConfigPrefs.cpp:116
+#: Tags.cpp:816 prefs/KeyConfigPrefs.cpp:130
msgid "&Clear"
msgstr "&WyczyÅÄ"
-#: Tags.cpp:835
+#: Tags.cpp:822
msgid "Genres"
msgstr "Rodzaje"
#: Tags.cpp:826
msgid "E&dit..."
-msgstr ""
+msgstr "E&dytuj..."
#: Tags.cpp:827
msgid "Rese&t..."
-msgstr ""
+msgstr "Zrese&tuj..."
-#: Tags.cpp:845
-#: Tags.cpp:1470
-#: Tags.cpp:1997
+#: Tags.cpp:832
msgid "Template"
msgstr "Wzór"
-#: Tags.cpp:849
-#: Tags.cpp:1474
-#: Tags.cpp:2001
-#: prefs/KeyConfigPrefs.cpp:126
+#: Tags.cpp:836 prefs/KeyConfigPrefs.cpp:142
msgid "&Load..."
msgstr "&Åaduj..."
-#: Tags.cpp:850
-#: Tags.cpp:1475
-#: Tags.cpp:2002
-#: prefs/KeyConfigPrefs.cpp:125
+#: Tags.cpp:837 prefs/KeyConfigPrefs.cpp:141
msgid "&Save..."
msgstr "&Zapisz"
-#: Tags.cpp:852
-#: Tags.cpp:1477
-#: Tags.cpp:2004
+#: Tags.cpp:839
msgid "S&et Default"
msgstr "U&staw domyÅlne"
-#: Tags.cpp:1002
-#: Tags.cpp:1640
-#: Tags.cpp:2368
+#: Tags.cpp:989
msgid "Edit Genres"
msgstr "Edytuj Rodzaje"
-#: Tags.cpp:1035
-#: Tags.cpp:1047
-#: Tags.cpp:1062
-#: Tags.cpp:1075
-#: Tags.cpp:1678
-#: Tags.cpp:1690
-#: Tags.cpp:1705
-#: Tags.cpp:1718
-#: Tags.cpp:2411
-#: Tags.cpp:2423
-#: Tags.cpp:2438
-#: Tags.cpp:2451
+#: Tags.cpp:1022 Tags.cpp:1034 Tags.cpp:1049 Tags.cpp:1062
msgid "Reset Genres"
msgstr "Resetuj Rodzaje"
-#: Tags.cpp:1035
-#: Tags.cpp:1075
-#: Tags.cpp:1678
-#: Tags.cpp:1718
-#: Tags.cpp:2411
-#: Tags.cpp:2451
+#: Tags.cpp:1022 Tags.cpp:1062
msgid "Unable to save genre file."
msgstr "Nie można zapisaÄ pliku rodzaju."
-#: Tags.cpp:1046
-#: Tags.cpp:1689
-#: Tags.cpp:2422
+#: Tags.cpp:1033
msgid "Are you sure you want to reset the genre list to defaults?"
msgstr "Czy jesteÅ pewny, że chcesz zresetowaÄ listÄ rodzajów?"
-#: Tags.cpp:1062
-#: Tags.cpp:1705
-#: Tags.cpp:2438
+#: Tags.cpp:1049
msgid "Unable to open genre file."
msgstr "Nie można otworzyÄ pliku z rodzajami."
#: Tags.cpp:1084
msgid "Load Metadata As:"
-msgstr ""
+msgstr "ZaÅaduj Metadane jako:"
-#: Tags.cpp:1122
-#: Tags.cpp:1772
-#: Tags.cpp:2494
+#: Tags.cpp:1109
msgid "Error loading metadata"
msgstr "BÅÄ
d podczas Åadowania metadanych"
-#: Tags.cpp:1097
-#: Tags.cpp:1151
-#: Tags.cpp:1751
-#: Tags.cpp:1787
-#: Tags.cpp:2473
-#: Tags.cpp:2509
+#: Tags.cpp:1138
msgid "Save Metadata As:"
msgstr "Zapisz Metadane jako:"
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
#: Theme.cpp:638
#, c-format
msgid "Audacity could not write file:\n"
@@ -3641,8 +3598,7 @@ msgstr "Audacity nie mogÅa znaleźc pliku:\n"
" %s.\n"
"Temat nie zaÅadowany."
-#: Theme.cpp:807
-#: Theme.cpp:896
+#: Theme.cpp:807 Theme.cpp:896
#, c-format
msgid "Audacity could not load file:\n"
" %s.\n"
@@ -3666,8 +3622,7 @@ msgstr "Nie znaleziono żadnego z \n"
" elementów tematu w:\n"
" %s."
-#: Theme.cpp:942
-#: effects/NoiseRemoval.cpp:173
+#: Theme.cpp:942 effects/NoiseRemoval.cpp:173
#, c-format
msgid "Could not create directory:\n"
" %s"
@@ -3690,494 +3645,451 @@ msgstr "Wszystkie wymagane pliki w:\n"
" %s\n"
"byÅy juz obecne."
-#: TimeDialog.cpp:53
-#: TimerRecordDialog.cpp:227
-#: TimerRecordDialog.cpp:305
-#: TimerRecordDialog.cpp:309
-#: effects/Noise.cpp:243
-#: effects/ToneGen.cpp:323
-#: effects/ToneGen.cpp:366
+#: TimeDialog.cpp:53 TimeDialog.cpp:64 TimerRecordDialog.cpp:235
+#: TimerRecordDialog.cpp:366 TimerRecordDialog.cpp:370 effects/DtmfGen.cpp:479
+#: effects/Noise.cpp:241 effects/Noise.cpp:257 effects/ToneGen.cpp:321
+#: effects/ToneGen.cpp:333 effects/ToneGen.cpp:365 effects/ToneGen.cpp:377
msgid "Duration"
msgstr "Czas trwania"
-#: TimerRecordDialog.cpp:68
+#: TimerRecordDialog.cpp:69
msgid "Audacity Timer Record"
msgstr "Nagrywanie czasowe Audacity"
-#: TimerRecordDialog.cpp:224
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
+#: TimerRecordDialog.cpp:232
msgid "Recording start"
msgstr "PoczÄ
tek nagrywania"
-#: TimerRecordDialog.cpp:225
+#: TimerRecordDialog.cpp:233
msgid "Recording end"
msgstr "Koniec nagrywania"
-#: TimerRecordDialog.cpp:230
+#: TimerRecordDialog.cpp:238
#, fuzzy
msgid "Audacity Timer Record Progress"
msgstr "PostÄp nagrywania Audacity"
-#: TimerRecordDialog.cpp:267
+#: TimerRecordDialog.cpp:328
msgid "Start Date and Time"
msgstr "Data i czas poczÄ
tku"
-#: TimerRecordDialog.cpp:274
+#: TimerRecordDialog.cpp:335
#, fuzzy
msgid "Start Date"
msgstr "&Czas startu"
-#: TimerRecordDialog.cpp:286
+#: TimerRecordDialog.cpp:347
msgid "End Date and Time"
msgstr "Data i czas koÅca"
-#: TimerRecordDialog.cpp:294
+#: TimerRecordDialog.cpp:355
#, fuzzy
msgid "End Date"
msgstr "Data i czas koÅca"
#. i18n-hint: A time specification like "Sunday 28th October 2007 15:16:17 GMT"
#. * but hopefully translated by wxwidgets will be inserted into this
-#: TimerRecordDialog.cpp:381
+#: TimerRecordDialog.cpp:442
#, c-format
msgid "Waiting to start recording at %s.\n"
msgstr "Oczekiwanie na rozpoczÄcie nagrywania o %s.\n"
-#: TimerRecordDialog.cpp:382
+#: TimerRecordDialog.cpp:443
#, fuzzy
msgid "Audacity Timer Record - Waiting for Start"
msgstr "Nagrywanie Audacity - Oczekiwanie na rozpoczÄcie"
-#: TrackPanel.cpp:457
-#: TrackPanel.cpp:458
-msgid "Track Panel"
-msgstr "Panel ÅledzÄ
cy"
-
-#: TrackPanel.cpp:541
-#: prefs/QualityPrefs.cpp:97
+#: TrackPanel.cpp:538 prefs/QualityPrefs.cpp:97
msgid "Other..."
msgstr "Inne..."
-#: TrackPanel.cpp:549
-#: TrackPanel.cpp:571
-#: TrackPanel.cpp:580
-#: TrackPanel.cpp:588
-#: TrackPanel.cpp:5793
+#: TrackPanel.cpp:546 TrackPanel.cpp:568 TrackPanel.cpp:577 TrackPanel.cpp:585
msgid "Name..."
msgstr "Nazwa..."
-#: TrackPanel.cpp:551
-#: TrackPanel.cpp:573
-#: TrackPanel.cpp:584
-#: TrackPanel.cpp:590
-#: TrackPanel.cpp:5797
+#: TrackPanel.cpp:548 TrackPanel.cpp:570 TrackPanel.cpp:581 TrackPanel.cpp:587
msgid "Move Track Up"
msgstr "PrzesuÅ ÅcieżkÄ w górÄ"
-#: TrackPanel.cpp:552
-#: TrackPanel.cpp:574
-#: TrackPanel.cpp:585
-#: TrackPanel.cpp:591
-#: TrackPanel.cpp:5798
+#: TrackPanel.cpp:549 TrackPanel.cpp:571 TrackPanel.cpp:582 TrackPanel.cpp:588
msgid "Move Track Down"
msgstr "PrzesuÅ ÅcieżkÄ w dóÅ"
-#: TrackPanel.cpp:554
-#: effects/ToneGen.cpp:319
-#: prefs/GUIPrefs.cpp:154
+#: TrackPanel.cpp:551 effects/ToneGen.cpp:317 prefs/GUIPrefs.cpp:154
msgid "Waveform"
msgstr "Przebieg czasowy"
-#: TrackPanel.cpp:555
-#: prefs/GUIPrefs.cpp:155
+#: TrackPanel.cpp:552 prefs/GUIPrefs.cpp:155
msgid "Waveform (dB)"
msgstr "Przebieg czasowy (dB)"
-#: TrackPanel.cpp:557
-#: prefs/GUIPrefs.cpp:157
+#: TrackPanel.cpp:554 prefs/GUIPrefs.cpp:157
#, fuzzy
msgid "Spectrum log(f)"
msgstr "Spektrum"
#. i18n-hint: short form of 'logarithm'
-#: TrackPanel.cpp:558
-#: prefs/GUIPrefs.cpp:158
+#: TrackPanel.cpp:555 prefs/GUIPrefs.cpp:158
msgid "Pitch (EAC)"
msgstr "WysokoÅci (EAC)"
-#: TrackPanel.cpp:560
-#: TrackPanel.cpp:6096
+#: TrackPanel.cpp:557 TrackPanel.cpp:6103
msgid "Mono"
msgstr "Mono"
-#: TrackPanel.cpp:561
-#: TrackPanel.cpp:6095
+#: TrackPanel.cpp:558 TrackPanel.cpp:6102
msgid "Left Channel"
msgstr "Lewy kanaÅ"
-#: TrackPanel.cpp:562
-#: TrackPanel.cpp:6095
+#: TrackPanel.cpp:559 TrackPanel.cpp:6102
msgid "Right Channel"
msgstr "Prawy kanaÅ"
-#: TrackPanel.cpp:563
+#: TrackPanel.cpp:560
msgid "Make Stereo Track"
msgstr "Utwórz ÅcieżkÄ stereo"
-#: TrackPanel.cpp:564
+#: TrackPanel.cpp:561
msgid "Split Stereo Track"
msgstr "Podziel ÅcieżkÄ stereo"
-#: TrackPanel.cpp:566
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr ""
+
+#: TrackPanel.cpp:563
msgid "Set Sample Format"
msgstr "Ustaw rozdzielczoÅÄ"
-#: TrackPanel.cpp:568
-#: TrackPanel.cpp:6341
+#: TrackPanel.cpp:565 TrackPanel.cpp:6348
msgid "Set Rate"
msgstr "Ustaw czÄstotliwoÅÄ"
-#: TrackPanel.cpp:576
+#: TrackPanel.cpp:573
msgid "Up Octave"
msgstr "Oktawa w GórÄ"
-#: TrackPanel.cpp:577
+#: TrackPanel.cpp:574
msgid "Down Octave"
msgstr "OktawÄ w dóÅ"
-#: TrackPanel.cpp:582
-#: TrackPanel.cpp:5795
+#: TrackPanel.cpp:579
msgid "Font..."
msgstr "Font..."
-#: TrackPanel.cpp:593
+#: TrackPanel.cpp:590
msgid "Set Range..."
msgstr "Ustaw zakres..."
-#: TrackPanel.cpp:597
-#: toolbars/EditToolBar.cpp:135
+#: TrackPanel.cpp:594 toolbars/EditToolBar.cpp:135
msgid "Copy"
msgstr "Kopiuj"
-#: TrackPanel.cpp:1258
+#: TrackPanel.cpp:1263
msgid "Click to vertically zoom in, Shift-click to zoom out, Drag to create a particular zoom region."
msgstr "Kliknij aby powiÄkszyÄ w pionie.Kliknij z shift'em aby pomniejszyÄ. PrzeciÄ
gnij aby powiÄkszyÄ konkretny obszar."
-#: TrackPanel.cpp:1263
+#: TrackPanel.cpp:1268
msgid "Drag the label vertically to change the order of the tracks."
msgstr "PrzesuÅ etykietÄ pionowo aby zmieniÄ kolejnoÅÄ Åcieżek."
-#: TrackPanel.cpp:1283
+#: TrackPanel.cpp:1288
msgid "Click and drag to adjust relative size of stereo tracks."
msgstr "Kliknij i przeciÄ
gnij aby okreÅliÄ relatywny rozmiar Åcieżek stereo."
-#: TrackPanel.cpp:1286
+#: TrackPanel.cpp:1291
msgid "Click and drag to resize the track."
msgstr "Kliknij i przeciÄ
gnij aby zmieniÄ rozmiar Åcieżki."
-#: TrackPanel.cpp:1317
+#: TrackPanel.cpp:1322
msgid "Drag one or more label boundaries"
msgstr "PociÄ
gnij za jednÄ
lub wiÄcej granic etykiety"
-#: TrackPanel.cpp:1318
+#: TrackPanel.cpp:1323
msgid "Drag label boundary"
msgstr "PociÄ
gnij za granicÄ etykiety"
#. i18n-hint: This string is for the Mac OS, which uses Command-, as the shortcut for Preferences
-#: TrackPanel.cpp:1334
+#: TrackPanel.cpp:1339
msgid "Multi-Tool Mode: Cmd-, for Mouse and Keyboard Preferences"
msgstr "Tryb multi narzÄdzia: naciÅnij :Cmd-, aby toworzyÄ preferencje myszy i klawiatury"
#. i18n-hint: This string is for Windows and Linux, which uses Control-P as the shortcut for Preferences
-#: TrackPanel.cpp:1337
+#: TrackPanel.cpp:1342
msgid "Multi-Tool Mode: Ctrl-P for Mouse and Keyboard Preferences"
msgstr "Tryb multi narzÄdzia: naciÅnij Ctrl+P aby toworzyÄ preferencje myszy i klawiatury"
-#: TrackPanel.cpp:1383
+#: TrackPanel.cpp:1388
msgid "Click and drag to move left selection boundary."
msgstr "Kliknij i przeciÄ
gnij aby przesunÄ
Ä lewÄ
granicÄ zaznaczenia."
-#: TrackPanel.cpp:1388
+#: TrackPanel.cpp:1393
msgid "Click and drag to move right selection boundary."
msgstr "Kliknij i przeciÄ
gnij aby przesunÄ
Ä prawÄ
granicÄ zaznaczenia."
-#: TrackPanel.cpp:1730
-#: TrackPanel.cpp:3959
-#: TrackPanel.cpp:3991
-#: TrackPanel.cpp:4255
-#: TrackPanel.cpp:6490
-#: TrackPanel.cpp:6510
+#: TrackPanel.cpp:1735 TrackPanel.cpp:3969 TrackPanel.cpp:4001
+#: TrackPanel.cpp:4265 TrackPanel.cpp:6497 TrackPanel.cpp:6517
msgid "Modified Label"
msgstr "Zmodyfikowana etykieta"
-#: TrackPanel.cpp:1731
-#: TrackPanel.cpp:3960
-#: TrackPanel.cpp:3992
-#: TrackPanel.cpp:4256
-#: TrackPanel.cpp:6491
-#: TrackPanel.cpp:6511
+#: TrackPanel.cpp:1736 TrackPanel.cpp:3970 TrackPanel.cpp:4002
+#: TrackPanel.cpp:4266 TrackPanel.cpp:6498 TrackPanel.cpp:6518
msgid "Label Edit"
msgstr "Etykieta edycji"
-#: TrackPanel.cpp:1971
+#: TrackPanel.cpp:1976
msgid "Adjusted envelope."
msgstr "Wyrównana obwiednia."
-#: TrackPanel.cpp:1972
-#: prefs/MousePrefs.cpp:115
+#: TrackPanel.cpp:1977 prefs/MousePrefs.cpp:115
msgid "Envelope"
msgstr "Obwiednia"
-#: TrackPanel.cpp:2123
+#: TrackPanel.cpp:2128
msgid "Moved clip to another track"
msgstr "Klip przeniesiony do innej Åcieżki"
-#: TrackPanel.cpp:2127
+#: TrackPanel.cpp:2132
msgid "left"
msgstr "lewy"
-#: TrackPanel.cpp:2127
+#: TrackPanel.cpp:2132
msgid "right"
msgstr "prawy"
#. i18n-hint: %s is a direction like left or right
-#: TrackPanel.cpp:2129
+#: TrackPanel.cpp:2134
#, c-format
msgid "Time shifted tracks/clips %s %.02f seconds"
msgstr "Åcieżki/klipy z przesuniÄciem czasu %s %.02f sekund"
-#: TrackPanel.cpp:2133
-#: prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:112
+#: TrackPanel.cpp:2138 prefs/MousePrefs.cpp:111 prefs/MousePrefs.cpp:112
#: prefs/MousePrefs.cpp:113
msgid "Time-Shift"
msgstr "PrzesuniÄcie fazowe"
-#: TrackPanel.cpp:2916
+#: TrackPanel.cpp:2921
msgid "To use Draw, choose 'Waveform' in the Track Drop-down Menu."
-msgstr ""
+msgstr "Aby użyÄ Rysuj, wybierz 'FormaFali' w menu Åcieżka."
-#: TrackPanel.cpp:2933
+#: TrackPanel.cpp:2938
#, fuzzy
msgid "To use Draw, zoom in further until you can see the individual samples."
msgstr "Brak wystarczajÄ
cego powiÄkszenia.PowiÄksz aż zobaczysz pojedyncze próbki."
-#: TrackPanel.cpp:3205
+#: TrackPanel.cpp:3210
msgid "Moved Sample"
msgstr "PrzesuniÄto próbkÄ"
-#: TrackPanel.cpp:3206
+#: TrackPanel.cpp:3211
msgid "Sample Edit"
msgstr "Edycja próbki"
-#: TrackPanel.cpp:3305
+#: TrackPanel.cpp:3310
#, c-format
msgid "Removed track '%s.'"
msgstr "UsuniÄta Åcieżka '%s'"
-#: TrackPanel.cpp:3307
+#: TrackPanel.cpp:3312
msgid "Track Remove"
msgstr "UsuniÄcie Åcieżki"
-#: TrackPanel.cpp:3448
+#: TrackPanel.cpp:3458
msgid "Moved gain slider"
msgstr "PrzesuniÄto suwak czuÅoÅci"
-#: TrackPanel.cpp:3448
+#: TrackPanel.cpp:3458
msgid "Moved pan slider"
msgstr "PrzesuniÄto suwak panoramiczny"
#. i18n-hint: Title of the Gain slider, used to adjust the volume
-#: TrackPanel.cpp:3449
-#: TrackPanel.cpp:5703
-#: TrackPanel.cpp:7244
+#: TrackPanel.cpp:3459 TrackPanel.cpp:5705 TrackPanel.cpp:7221
msgid "Gain"
msgstr "CzuÅoÅÄ"
# i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: TrackPanel.cpp:3449
-#: TrackPanel.cpp:5641
-#: TrackPanel.cpp:7251
+#: TrackPanel.cpp:3459 TrackPanel.cpp:5643 TrackPanel.cpp:7228
msgid "Pan"
msgstr "Pan"
-#: TrackPanel.cpp:3576
-#: TrackPanel.cpp:6441
+#: TrackPanel.cpp:3586 TrackPanel.cpp:6448
msgid "up"
msgstr "góra"
-#: TrackPanel.cpp:3580
-#: TrackPanel.cpp:6442
+#: TrackPanel.cpp:3590 TrackPanel.cpp:6449
msgid "down"
msgstr "dóÅ"
-#: TrackPanel.cpp:3587
-#: TrackPanel.cpp:6437
+#: TrackPanel.cpp:3597 TrackPanel.cpp:6444
#, c-format
msgid "Moved '%s' %s"
msgstr "PrzesuniÄty '%s' %s"
-#: TrackPanel.cpp:3590
-#: TrackPanel.cpp:6443
+#: TrackPanel.cpp:3600 TrackPanel.cpp:6450
msgid "Move Track"
msgstr "PrzesuÅ ÅcieżkÄ"
-#: TrackPanel.cpp:4155
+#: TrackPanel.cpp:4165
msgid "Expand"
msgstr "Rozszerz"
-#: TrackPanel.cpp:4155
+#: TrackPanel.cpp:4165
msgid "Expanded Cut Line"
msgstr "Rozszerzona linia ciÄcia"
-#: TrackPanel.cpp:4164
+#: TrackPanel.cpp:4174
msgid "Merge"
msgstr "PoÅÄ
cz"
-#: TrackPanel.cpp:4164
+#: TrackPanel.cpp:4174
msgid "Merged Clips"
msgstr "PoÅÄ
czone klipy"
-#: TrackPanel.cpp:4176
+#: TrackPanel.cpp:4186
msgid "Removed Cut Line"
msgstr "UsuniÄta linia ciÄcia"
-#: TrackPanel.cpp:5641
+#: TrackPanel.cpp:5643
msgid "Adjusted Pan"
msgstr "Dostrojone przesuniÄcie"
-#: TrackPanel.cpp:5703
+#: TrackPanel.cpp:5705
msgid "Adjusted gain"
msgstr "Dostrojone wzmocnienie"
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr ""
-
-#: TrackPanel.cpp:5923
+#: TrackPanel.cpp:5930
msgid "Can't delete track with active audio"
msgstr "Nie można usunÄ
Ä Åcieżki z aktywnym dźwiÄkiem"
-#: TrackPanel.cpp:6076
+#: TrackPanel.cpp:6083
msgid "Stereo, "
msgstr "Stereo, "
-#: TrackPanel.cpp:6079
+#: TrackPanel.cpp:6086
msgid "Mono, "
msgstr "Mono, "
-#: TrackPanel.cpp:6081
+#: TrackPanel.cpp:6088
msgid "Left, "
msgstr "Lewy, "
-#: TrackPanel.cpp:6083
+#: TrackPanel.cpp:6090
msgid "Right, "
msgstr "Prawy, "
-#: TrackPanel.cpp:6105
-#: TrackPanel.cpp:6251
+#: TrackPanel.cpp:6112 TrackPanel.cpp:6258
#, c-format
msgid "Changed '%s' to %s"
msgstr "Zmieniono '%s' na %s"
-#: TrackPanel.cpp:6110
+#: TrackPanel.cpp:6117
msgid "Channel"
msgstr "KanaÅ"
-#: TrackPanel.cpp:6131
+#: TrackPanel.cpp:6138
#, c-format
msgid "Split stereo track '%s'"
msgstr "Podziel ÅcieżkÄ stereo '%s'"
-#: TrackPanel.cpp:6169
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
+#: TrackPanel.cpp:6176
#, c-format
msgid "Made '%s' a stereo track"
msgstr "Utwórz '%s' ÅcieżkÄ stereo"
-#: TrackPanel.cpp:6172
+#: TrackPanel.cpp:6179
msgid "Make Stereo"
msgstr "Utwórz stereo "
-#: TrackPanel.cpp:6215
+#: TrackPanel.cpp:6222
#, c-format
msgid "Changed '%s' to %d Hz"
msgstr "Zmieniono '%s' na %d Hz"
-#: TrackPanel.cpp:6217
+#: TrackPanel.cpp:6224
msgid "Rate Change"
msgstr "Zmiana stosunku"
-#: TrackPanel.cpp:6255
+#: TrackPanel.cpp:6262
msgid "Format Change"
msgstr "ZmieÅ format"
-#: TrackPanel.cpp:6405
+#: TrackPanel.cpp:6412
msgid "Change lower speed limit (%) to:"
msgstr "ZmieÅ minimalnÄ
prÄdkoÅÄ (%) do:"
-#: TrackPanel.cpp:6406
-#: TrackPanel.cpp:6407
+#: TrackPanel.cpp:6413 TrackPanel.cpp:6414
msgid "Lower speed limit"
msgstr "Minimalna prÄdkoÅÄ "
-#: TrackPanel.cpp:6412
+#: TrackPanel.cpp:6419
msgid "Change upper speed limit (%) to:"
msgstr "ZmieÅ maksymalnÄ
prÄdkoÅÄ (%) do:"
-#: TrackPanel.cpp:6413
-#: TrackPanel.cpp:6414
+#: TrackPanel.cpp:6420 TrackPanel.cpp:6421
msgid "Upper speed limit"
msgstr "SzybkoÅÄ maksymalna"
-#: TrackPanel.cpp:6422
+#: TrackPanel.cpp:6429
#, c-format
msgid "Set range to '%d' - '%d'"
msgstr "Ustaw zakres: '%d' - '%d'"
-#: TrackPanel.cpp:6425
+#: TrackPanel.cpp:6432
msgid "Set Range"
msgstr "Ustaw zakres"
-#: TrackPanel.cpp:6472
+#: TrackPanel.cpp:6479
msgid "Change track name to:"
msgstr "ZmieÅ nazwÄ Åcieżki na:"
-#: TrackPanel.cpp:6473
+#: TrackPanel.cpp:6480
msgid "Track Name"
msgstr "Nazwa Åcieżki"
-#: TrackPanel.cpp:6476
+#: TrackPanel.cpp:6483
#, c-format
msgid "Renamed '%s' to '%s'"
msgstr "Zmiana nazwy z '%s' na '%s'"
-#: TrackPanel.cpp:6479
+#: TrackPanel.cpp:6486
msgid "Name Change"
msgstr "Zmiana nazwy"
-#: TrackPanel.cpp:6580
+#: TrackPanel.cpp:6587
msgid "Label Track Font"
msgstr "Fonty Åcieżki etykiet"
-#: TrackPanel.cpp:6592
-#: TrackPanel.cpp:6598
+#: TrackPanel.cpp:6599 TrackPanel.cpp:6605
msgid "Face name"
msgstr "Nazwa pÅaszczyzny"
-#: TrackPanel.cpp:6602
-#: TrackPanel.cpp:6609
+#: TrackPanel.cpp:6609 TrackPanel.cpp:6616
msgid "Face size"
msgstr "Rozmiar pÅaszczyzny"
-#: TrackPanel.cpp:7171
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr ""
+
+#: TrackPanel.cpp:3382 TrackPanel.cpp:7148
msgid "Mute"
msgstr "Cisza"
-#: TrackPanel.cpp:7171
+#: TrackPanel.cpp:3377 TrackPanel.cpp:7148
msgid "Solo"
msgstr "Solo"
@@ -4206,10 +4118,7 @@ msgstr "WÅÄ
czone solo"
msgid " Select On"
msgstr "WÅÄ
czone zaznaczenie"
-#: VoiceKey.cpp:88
-#: VoiceKey.cpp:238
-#: VoiceKey.cpp:376
-#: VoiceKey.cpp:517
+#: VoiceKey.cpp:88 VoiceKey.cpp:238 VoiceKey.cpp:376 VoiceKey.cpp:517
msgid "Selection is too small to use voice key."
msgstr "Zaznaczenie jest zbyt maÅe, aby użyÄ klucza gÅosowego."
@@ -4236,65 +4145,62 @@ msgstr "Zmiany kierunku -- znaczy: %1.4f sd: (%1.4f)\n"
msgid "Audio Track"
msgstr "Åcieżka audio"
-#: WaveTrack.cpp:597
-#: WaveTrack.cpp:616
-#: WaveTrack.cpp:1057
-#: WaveTrack.cpp:1076
+#: WaveTrack.cpp:826 WaveTrack.cpp:845
msgid "There is not enough room available to paste the selection"
msgstr "Nie ma wystarczajÄ
co miejsca, aby wkleiÄ zaznaczenie"
-#: WaveTrack.cpp:2086
+#: WaveTrack.cpp:1863
msgid "There is not enough room available to expand the cut line"
msgstr "Nie ma wystarczajÄ
co miejsca, aby rozszerzyÄ liniÄ ciÄcia"
-#: commands/CommandManager.cpp:555
+#: commands/CommandManager.cpp:518
#, c-format
msgid "Plugins 1 to %i"
msgstr "Wtyczki 1do %i"
-#: commands/CommandManager.cpp:569
+#: commands/CommandManager.cpp:532
#, c-format
msgid "Plugins %i to %i"
msgstr "Wtyczki %i do %i"
-#: commands/CommandManager.cpp:857
-#, fuzzy
-msgid "Disallowed for some reason. Try selecting some audio first?"
-msgstr "Zakazane z pewnego powodu. Czy chcesz najpierw spróbowaÄ zaznaczyÄ dźwiÄk?"
+#: commands/CommandManager.cpp:923
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
+msgstr ""
-#: commands/CommandManager.cpp:892
+#: commands/CommandManager.cpp:861
msgid "You can only do this when playing and recording are\n"
" stopped. [Pausing is not sufficient.]"
msgstr "Możesz to zrobiÄ tylko, gdy nagrywanie lub odtwarzanie sÄ
\n"
"zatrzymane. [Pauza nie jest wystarczajÄ
ca.]"
-#: commands/CommandManager.cpp:894
+#: commands/CommandManager.cpp:863
msgid "You must first select some stereo audio for this\n"
" to use. [You can't use this with mono.]"
msgstr "Najpierw trzeba zaznaczyÄ dźwiÄk stereo.\n"
"[Nie można uÅ¼Ä tego z mono.]"
-#: commands/CommandManager.cpp:896
+#: commands/CommandManager.cpp:865
msgid "You must first select some audio for this to use."
msgstr "Najpierw trzeba zaznaczyÄ dźwiÄk."
-#: commands/CommandManager.cpp:898
+#: commands/CommandManager.cpp:867
msgid "You must first select some audio for this\n"
" to use. [Selecting other kinds of track won't work.]"
msgstr "Najpierw trzeba zaznaczyÄ dźwiÄk. \n"
"[Zaznaczanie innych rodzajów Åcieżki nie zadziaÅa.]"
-#: commands/CommandManager.cpp:903
+#: commands/CommandManager.cpp:872
#, fuzzy
msgid "Disallowed"
msgstr "Zablokowany"
-#: commands/CommandManager.cpp:1083
+#: commands/CommandManager.cpp:1054
#, c-format
msgid "Loaded %d keyboard shortcuts\n"
msgstr "ZaÅadowano %d skróty klawiaturowe\n"
-#: commands/CommandManager.cpp:1085
+#: commands/CommandManager.cpp:1056
msgid "Loading keyboard shortcuts"
msgstr "Åadowanie skrótów klawiaturowych"
@@ -4307,8 +4213,7 @@ msgstr "Dodano efekt: %s %.1f dB"
msgid "Amplify"
msgstr "Wzmacniaj"
-#: effects/Amplify.cpp:155
-#: effects/Compressor.cpp:476
+#: effects/Amplify.cpp:155 effects/Compressor.cpp:476
#: effects/Normalize.cpp:337
#, fuzzy
msgid "by Dominic Mazzoni"
@@ -4320,7 +4225,7 @@ msgstr "Wzmocnienie (dB):"
#: effects/Amplify.cpp:183
msgid "Amplification dB"
-msgstr ""
+msgstr "Wzmocnienie dB"
#: effects/Amplify.cpp:190
msgid "New Peak Amplitude (dB):"
@@ -4330,11 +4235,9 @@ msgstr "Nowy Szczyt Amplitudy (dB):"
msgid "Allow clipping"
msgstr "Pozwól na obcinanie"
-#: effects/Amplify.cpp:222
-#: effects/Amplify.cpp:279
-#: effects/Amplify.cpp:323
+#: effects/Amplify.cpp:222 effects/Amplify.cpp:279 effects/Amplify.cpp:323
msgid "-Infinity"
-msgstr ""
+msgstr "-NieskoÅczonoÅÄ"
#: effects/Amplify.h:37
msgid "Amplify..."
@@ -4348,9 +4251,7 @@ msgstr "Wzmocnienie"
msgid "You selected a track which does not contain audio. AutoDuck can only process audio tracks."
msgstr "ZaznaczyÅeÅ ÅcieżkÄ, która nie zawiera dźwiÄku. AutoDuck może tylko przetwarzaÄ Åcieżki dźwiÄkowe."
-#: effects/AutoDuck.cpp:126
-#: effects/AutoDuck.cpp:138
-#: effects/AutoDuck.cpp:453
+#: effects/AutoDuck.cpp:126 effects/AutoDuck.cpp:138 effects/AutoDuck.cpp:453
#: effects/AutoDuck.cpp:570
msgid "Auto Duck"
msgstr "Auto Duck"
@@ -4372,23 +4273,13 @@ msgid "Maximum pause:"
msgstr "Maksymalna pauza:"
#. i18n-hint: Name of time display format that shows time in seconds
-#: effects/AutoDuck.cpp:494
-#: effects/AutoDuck.cpp:499
-#: effects/AutoDuck.cpp:504
-#: effects/AutoDuck.cpp:509
-#: effects/AutoDuck.cpp:514
-#: effects/Contrast.cpp:263
-#: effects/Contrast.cpp:286
-#: prefs/AudioIOPrefs.cpp:172
-#: prefs/AudioIOPrefs.cpp:180
-#: prefs/AudioIOPrefs.cpp:182
-#: prefs/AudioIOPrefs.cpp:207
-#: prefs/AudioIOPrefs.cpp:209
-#: prefs/MidiIOPrefs.cpp:161
-#: prefs/MidiIOPrefs.cpp:163
-#: prefs/MidiIOPrefs.cpp:187
-#: prefs/MidiIOPrefs.cpp:189
-#: prefs/MidiIOPrefs.cpp:197
+#: effects/AutoDuck.cpp:494 effects/AutoDuck.cpp:499 effects/AutoDuck.cpp:504
+#: effects/AutoDuck.cpp:509 effects/AutoDuck.cpp:514
+#: prefs/AudioIOPrefs.cpp:174 prefs/AudioIOPrefs.cpp:182
+#: prefs/AudioIOPrefs.cpp:184 prefs/AudioIOPrefs.cpp:211
+#: prefs/AudioIOPrefs.cpp:213 prefs/MidiIOPrefs.cpp:161
+#: prefs/MidiIOPrefs.cpp:163 prefs/MidiIOPrefs.cpp:187
+#: prefs/MidiIOPrefs.cpp:189 prefs/MidiIOPrefs.cpp:197
#: widgets/TimeTextCtrl.cpp:263
msgid "seconds"
msgstr "sekund"
@@ -4409,8 +4300,7 @@ msgstr "DÅugoÅÄ wewnÄtrznego Åciszenia:"
msgid "Inner fade up length:"
msgstr "DÅugoÅÄ wewnÄtrznego zgÅoÅnienia:"
-#: effects/AutoDuck.cpp:521
-#: effects/Compressor.cpp:494
+#: effects/AutoDuck.cpp:521 effects/Compressor.cpp:494
msgid "Threshold:"
msgstr "Próg:"
@@ -4430,10 +4320,8 @@ msgstr "Auto Duck..."
msgid "Processing Auto Duck..."
msgstr "Przetwarzanie Auto Duck..."
-#: effects/AvcCompressor.cpp:738
-#: effects/VST/VSTEffect.cpp:455
-#: effects/audiounits/AudioUnitEffect.cpp:882
-#: effects/nyquist/Nyquist.cpp:1053
+#: effects/AvcCompressor.cpp:738 effects/VST/VSTEffect.cpp:455
+#: effects/audiounits/AudioUnitEffect.cpp:882 effects/nyquist/Nyquist.cpp:1214
#: widgets/ErrorDialog.cpp:101
msgid "OK"
msgstr "OK"
@@ -4447,28 +4335,25 @@ msgstr "Dodano efekt: %s czÄstotliwoÅÄ = %.0f Hz, podbicie = %.0f dB"
msgid "Bass Boost"
msgstr "Podbicie basów"
-#: effects/BassBoost.cpp:182
-#: effects/Phaser.cpp:219
-#: effects/Wahwah.cpp:214
+#: effects/BassBoost.cpp:182 effects/Phaser.cpp:219 effects/Wahwah.cpp:214
msgid "by Nasca Octavian Paul"
msgstr "autorstwa Nasca Octavian Paul"
-#: effects/BassBoost.cpp:196
-#: effects/ChangePitch.cpp:322
+#: effects/BassBoost.cpp:196 effects/ChangePitch.cpp:322
msgid "Frequency (Hz):"
msgstr "CzÄstotliwoÅÄ (Hz):"
#: effects/BassBoost.cpp:205
msgid "Frequency Hertz"
-msgstr ""
+msgstr "CzÄstotliwoÅÄ w Hertzach"
-#: effects/BassBoost.cpp:208
+#: effects/BassBoost.cpp:209
msgid "Boost (dB):"
msgstr "Wzmocnienie (dB):"
#: effects/BassBoost.cpp:218
msgid "Boost dB"
-msgstr ""
+msgstr "Podbicie w dB"
#: effects/BassBoost.h:35
msgid "BassBoost..."
@@ -4499,14 +4384,12 @@ msgstr "ZmieÅ wysokoÅÄ"
msgid "Change Pitch without Changing Tempo"
msgstr "ZmieÅ wysokoÅÄ bez zmiany tempa"
-#: effects/ChangePitch.cpp:258
-#: effects/ChangeSpeed.cpp:336
-#: effects/ChangeTempo.cpp:173
+#: effects/ChangePitch.cpp:258 effects/ChangeSpeed.cpp:334
+#: effects/ChangeTempo.cpp:176
msgid "by Vaughan Johnson && Dominic Mazzoni"
msgstr "autorzy: Vaughan Johnson i Dominic Mazzoni"
-#: effects/ChangePitch.cpp:260
-#: effects/ChangeTempo.cpp:175
+#: effects/ChangePitch.cpp:260 effects/ChangeTempo.cpp:178
msgid "using SoundTouch, by Olli Parviainen"
msgstr "używa SoundTouch ( autor : Olli Parviainen)"
@@ -4522,11 +4405,11 @@ msgstr "Format:"
#: effects/ChangePitch.cpp:275
msgid "From Pitch"
-msgstr ""
+msgstr "Z Poziomu"
#: effects/ChangePitch.cpp:286
msgid "Up"
-msgstr ""
+msgstr "Do"
#: effects/ChangePitch.cpp:289
#, fuzzy
@@ -4535,7 +4418,7 @@ msgstr "dóÅ"
#: effects/ChangePitch.cpp:299
msgid "To:"
-msgstr ""
+msgstr "Do:"
#: effects/ChangePitch.cpp:300
#, fuzzy
@@ -4551,22 +4434,18 @@ msgstr "PóÅtony"
msgid "Semitones in half-steps"
msgstr "PóÅtony"
-#: effects/ChangePitch.cpp:326
-#: effects/ChangeSpeed.cpp:369
-#: effects/ChangeTempo.cpp:206
-#: effects/ChangeTempo.cpp:219
+#: effects/ChangePitch.cpp:326 effects/ChangeSpeed.cpp:367
+#: effects/ChangeTempo.cpp:209 effects/ChangeTempo.cpp:222
msgid "from"
-msgstr ""
+msgstr "od"
#: effects/ChangePitch.cpp:327
#, fuzzy
msgid "From frequency in hertz"
msgstr "Skala logarytmiczna"
-#: effects/ChangePitch.cpp:331
-#: effects/ChangeSpeed.cpp:374
-#: effects/ChangeTempo.cpp:211
-#: effects/ChangeTempo.cpp:224
+#: effects/ChangePitch.cpp:331 effects/ChangeSpeed.cpp:372
+#: effects/ChangeTempo.cpp:214 effects/ChangeTempo.cpp:227
msgid "to"
msgstr "do"
@@ -4575,16 +4454,13 @@ msgstr "do"
msgid "To frequency in seconds"
msgstr "Skala logarytmiczna"
-#: effects/ChangePitch.cpp:338
-#: effects/ChangeSpeed.cpp:347
-#: effects/ChangeTempo.cpp:184
+#: effects/ChangePitch.cpp:338 effects/ChangeSpeed.cpp:345
+#: effects/ChangeTempo.cpp:187
msgid "Percent Change:"
msgstr "Procentowa zmiana:"
-#: effects/ChangePitch.cpp:343
-#: effects/ChangePitch.cpp:356
-#: effects/ChangeSpeed.cpp:358
-#: effects/ChangeTempo.cpp:195
+#: effects/ChangePitch.cpp:343 effects/ChangePitch.cpp:356
+#: effects/ChangeSpeed.cpp:356 effects/ChangeTempo.cpp:198
#, fuzzy
msgid "Percent Change"
msgstr "Procentowa zmiana:"
@@ -4597,13 +4473,12 @@ msgstr "ZmieÅ wysokoÅÄ..."
msgid "Changing Pitch"
msgstr "Zmiana wysokoÅci"
-#: effects/ChangeSpeed.cpp:54
-#: effects/ChangeTempo.cpp:55
+#: effects/ChangeSpeed.cpp:54 effects/ChangeTempo.cpp:55
#, c-format
msgid "Applied effect: %s %.1f%%"
msgstr "Dodano efekt %s %.1f%%"
-#: effects/ChangeSpeed.cpp:298
+#: effects/ChangeSpeed.cpp:296
msgid "Change Speed"
msgstr "ZmieÅ prÄdkoÅÄ"
@@ -4613,30 +4488,30 @@ msgstr "ZmieÅ prÄdkoÅÄ"
# unimportant, not relevant).
#. i18n-hint: n/a is an English abbreviation meaning "not applicable"
#. (in other words, unimportant, not relevant).
-#: effects/ChangeSpeed.cpp:329
+#: effects/ChangeSpeed.cpp:327
msgid "n/a"
msgstr "niedostÄpne"
-#: effects/ChangeSpeed.cpp:334
+#: effects/ChangeSpeed.cpp:332
msgid "Change Speed, affecting both Tempo and Pitch"
msgstr "Zmiana prÄdkoÅci ze zmianÄ
tempa i wysokoÅci"
-#: effects/ChangeSpeed.cpp:338
+#: effects/ChangeSpeed.cpp:336
msgid "using SampleRate, by Erik de Castro Lopo"
msgstr "używa SampleRate (autor: Erik de Castro Lopo)"
-#: effects/ChangeSpeed.cpp:366
+#: effects/ChangeSpeed.cpp:364
#, fuzzy
msgid "Standard Vinyl RPM:"
msgstr "\"Czarna\" pÅyta -obrotów na minutÄ: z"
-#: effects/ChangeSpeed.cpp:370
+#: effects/ChangeSpeed.cpp:368
msgid "From RPM"
-msgstr ""
+msgstr "Od RPM"
-#: effects/ChangeSpeed.cpp:375
+#: effects/ChangeSpeed.cpp:373
msgid "To RPM"
-msgstr ""
+msgstr "Do RPM"
#: effects/ChangeSpeed.h:32
msgid "Change Speed..."
@@ -4646,38 +4521,38 @@ msgstr "ZmieÅ prÄdkoÅÄ..."
msgid "Changing Speed"
msgstr "Zmiana prÄdkoÅci"
-#: effects/ChangeTempo.cpp:138
+#: effects/ChangeTempo.cpp:141
msgid "Change Tempo"
msgstr "ZmieÅ tempo"
-#: effects/ChangeTempo.cpp:171
+#: effects/ChangeTempo.cpp:174
msgid "Change Tempo without Changing Pitch"
msgstr "ZmieÅ tempo bez zmiany czÄstotliwoÅci"
-#: effects/ChangeTempo.cpp:203
+#: effects/ChangeTempo.cpp:206
#, fuzzy
msgid "Beats per minute:"
msgstr "UderzeÅ na minutÄ (BPM): od"
-#: effects/ChangeTempo.cpp:207
+#: effects/ChangeTempo.cpp:210
msgid "From beats per minute"
-msgstr ""
+msgstr "Od bitów na minutÄ"
-#: effects/ChangeTempo.cpp:212
+#: effects/ChangeTempo.cpp:215
msgid "To beats per minute"
-msgstr ""
+msgstr "Do bitów na minutÄ"
-#: effects/ChangeTempo.cpp:216
+#: effects/ChangeTempo.cpp:219
#, fuzzy
msgid "Length (seconds):"
msgstr "DÅugoÅÄ (sekund)"
-#: effects/ChangeTempo.cpp:220
+#: effects/ChangeTempo.cpp:223
#, fuzzy
msgid "From length in seconds"
msgstr "DÅugoÅÄ (sekund)"
-#: effects/ChangeTempo.cpp:225
+#: effects/ChangeTempo.cpp:228
#, fuzzy
msgid "To length in seconds"
msgstr "DÅugoÅÄ (sekund)"
@@ -4705,15 +4580,15 @@ msgstr "Zaznacz próg (niższy jest bardziej wrażliwy):"
#: effects/ClickRemoval.cpp:350
msgid "Select threshold"
-msgstr ""
+msgstr "Zaznacz próg"
-#: effects/ClickRemoval.cpp:353
+#: effects/ClickRemoval.cpp:354
msgid "Max spike width (higher is more sensitive):"
msgstr "Maksymalna wartoÅÄ szczytowa (wyższa jest bardziej wrażliwa):"
#: effects/ClickRemoval.cpp:363
msgid "Max spike width"
-msgstr ""
+msgstr "Maksymalna szerokoÅÄ wartoÅci szczytowej"
#: effects/ClickRemoval.h:42
msgid "Click Removal..."
@@ -4763,7 +4638,8 @@ msgid "Decay Time"
msgstr "Czas zanikania progu:"
#: effects/Compressor.cpp:530
-msgid "Normalize to 0dB after compressing"
+#, fuzzy
+msgid "Make-up gain for 0dB after compressing"
msgstr "Normalizuj do 0dB po kompresji"
#: effects/Compressor.cpp:563
@@ -4774,7 +4650,7 @@ msgstr "Próg: %d dB"
#: effects/Compressor.cpp:564
#, c-format
msgid "%3d dB"
-msgstr ""
+msgstr "%3d dB"
#: effects/Compressor.cpp:567
#, fuzzy, c-format
@@ -4801,8 +4677,7 @@ msgstr "Stosunek: %.1f:1"
msgid "Attack Time %.1f secs"
msgstr "Czas narastania: %.1f sek."
-#: effects/Compressor.cpp:576
-#: effects/Compressor.cpp:579
+#: effects/Compressor.cpp:576 effects/Compressor.cpp:579
#, fuzzy, c-format
msgid "%.1f secs"
msgstr "%d sekund"
@@ -4820,308 +4695,273 @@ msgstr "Kompresor..."
msgid "Applying Dynamic Range Compression..."
msgstr "Dodano kompresjÄ dynamiki"
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
-msgstr ""
+msgstr "NarzÄdzi Kontrastu Pierwszego Planu"
#: effects/Contrast.cpp:79
msgid "Foreground times selected.\n"
"Now select background and use Ctrl+Shift+T or menu again."
-msgstr ""
+msgstr "Czasy pierwszego planu zaznaczone.\n"
+"Zaznacz teraz tÅo i użyj Ctrl+Shift+T lub menu."
#: effects/Contrast.cpp:127
msgid "Start time after after end time!\n"
"Please enter reasonable times."
-msgstr ""
+msgstr "PoczÄ
tek czasu za koÅcem czasu!\n"
+"ProszÄ wpisaÄ wÅaÅciwe czasy."
#: effects/Contrast.cpp:137
msgid "Times are not reasonable!\n"
"Please enter reasonable times."
-msgstr ""
+msgstr "Czasy niewÅaÅciwe!\n"
+"ProszÄ wpisaÄ wÅaÅciwe czasy."
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:193
-#: effects/Contrast.cpp:204
-#: effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-#, fuzzy
-msgid "Measured"
-msgstr "PoÅÄ
cz"
-
-#: effects/Contrast.cpp:231
+#: effects/Contrast.cpp:318
msgid "Contrast Analyzer"
-msgstr ""
+msgstr "Analizator Kontrastu"
-#: effects/Contrast.cpp:235
+#: effects/Contrast.cpp:321
#, fuzzy
msgid "Parameters"
msgstr "&Parametry"
-#: effects/Contrast.cpp:242
-#: effects/ToneGen.cpp:355
+#: effects/Contrast.cpp:328 effects/ToneGen.cpp:354
#: toolbars/ControlToolBar.cpp:186
msgid "Start"
msgstr "PoczÄ
tek"
-#: effects/Contrast.cpp:243
-#: effects/ToneGen.cpp:356
-#: toolbars/ControlToolBar.cpp:189
-#: toolbars/SelectionBar.cpp:156
-#: toolbars/SelectionBar.cpp:159
-#: toolbars/SelectionBar.cpp:262
+#: effects/Contrast.cpp:329 effects/ToneGen.cpp:355
+#: toolbars/ControlToolBar.cpp:189 toolbars/SelectionBar.cpp:156
+#: toolbars/SelectionBar.cpp:159 toolbars/SelectionBar.cpp:262
msgid "End"
msgstr "Koniec"
#: effects/Contrast.cpp:332
msgid "Volume "
-msgstr ""
+msgstr "GÅoÅnoÅÄ"
-#: effects/Contrast.cpp:248
+#: effects/Contrast.cpp:335
msgid "Foreground:"
-msgstr ""
+msgstr "Pierwszy Plan:"
#: effects/Contrast.cpp:347
msgid "Foreground start time"
-msgstr ""
+msgstr "Czas rozpoczÄcia pierwszego planu."
#: effects/Contrast.cpp:365
msgid "Foreground end time"
-msgstr ""
+msgstr "Czas zakoÅczenia pierwszego planu."
+
+#: effects/Contrast.cpp:277 effects/Contrast.cpp:288 effects/Contrast.cpp:371
+#: effects/Contrast.cpp:415
+#, fuzzy
+msgid "Measured"
+msgstr "PoÅÄ
cz"
#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
msgid "Use selection"
-msgstr ""
+msgstr "Użyj zaznaczenia"
-#: effects/Contrast.cpp:271
+#: effects/Contrast.cpp:378
msgid "Background:"
-msgstr ""
+msgstr "TÅo:"
#: effects/Contrast.cpp:391
msgid "Background start time"
-msgstr ""
+msgstr "Czas rozpoczÄcia tÅa"
#: effects/Contrast.cpp:409
msgid "Background end time"
-msgstr ""
+msgstr "Czas zakoÅczenia tÅa"
-#: effects/Contrast.cpp:298
+#: effects/Contrast.cpp:426
#, fuzzy
msgid "Result"
msgstr "Resetuj"
-#: effects/Contrast.cpp:302
+#: effects/Contrast.cpp:430
#, fuzzy
msgid "Contrast Result:"
msgstr "Wyniki kalibracji"
-#: Tags.cpp:840
-#: Tags.cpp:1990
+#: effects/Contrast.cpp:433
msgid "Reset"
msgstr "Resetuj"
-#: effects/Contrast.cpp:304
+#: effects/Contrast.cpp:434
msgid "Difference:"
-msgstr ""
+msgstr "Różnice:"
-#: effects/Contrast.cpp:313
+#: effects/Contrast.cpp:445
msgid "Information"
msgstr "Wprowadzenie"
#: effects/Contrast.cpp:447
msgid "For measuring rms volume differences between two selections of audio."
-msgstr ""
+msgstr "Do mierzenia różnic gÅoÅnoÅci pomiÄdzy dwoma zaznaczeniami dźwiÄku."
#: effects/Contrast.cpp:448
msgid "Help for WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: toolbars/ControlToolBar.cpp:83
-msgid "Control"
-msgstr "Kontrola"
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
+msgstr "Pomoc dla Analizatora Kontrastu WCAG2"
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
msgstr ""
-#: effects/Contrast.cpp:328
-#: effects/Contrast.cpp:336
-#: effects/Contrast.cpp:344
-#: effects/Contrast.cpp:352
+#: effects/Contrast.cpp:466 effects/Contrast.cpp:472 effects/Contrast.cpp:478
+#: effects/Contrast.cpp:484
#, fuzzy
msgid "Measure"
msgstr "PoÅÄ
cz"
#: effects/Contrast.cpp:511
msgid "No foreground to measure"
-msgstr ""
+msgstr "Brak pierwszego planu do zmierzenia"
#: effects/Contrast.cpp:516
msgid "Measured foreground level"
-msgstr ""
+msgstr "Pierwszy plan zmierzony"
-#: effects/Contrast.cpp:191
-#: effects/Contrast.cpp:202
+#: effects/Contrast.cpp:517 effects/Contrast.cpp:527
#, c-format
msgid "%.1f dB"
-msgstr ""
+msgstr "%.1f dB"
#: effects/Contrast.cpp:521
msgid "No background to measure"
-msgstr ""
+msgstr "Brak tÅa do zmierzenia"
#: effects/Contrast.cpp:526
msgid "Measured background level"
-msgstr ""
+msgstr "TÅo zmierzone"
-#: effects/Contrast.cpp:358
+#: effects/Contrast.cpp:532
msgid "WCAG2 Pass"
-msgstr ""
+msgstr "WCAG2 zdane"
-#: effects/Contrast.cpp:360
+#: effects/Contrast.cpp:534
msgid "WCAG2 Fail"
-msgstr ""
+msgstr "WCAG2 niezdane"
#: effects/Contrast.cpp:535
msgid "Current difference"
-msgstr ""
+msgstr "Aktualna różnica"
#: effects/Contrast.cpp:536
#, c-format
msgid "%.1f dB Average rms"
-msgstr ""
+msgstr "Årednia %.1f dB"
#: effects/Contrast.cpp:541
msgid "Please enter valid times."
-msgstr ""
+msgstr "ProszÄ wpisaÄ ważne czasy."
#: effects/Contrast.cpp:551
msgid "Export Contrast Result As:"
-msgstr ""
+msgstr "Wyeksportuj rezultaty Kontrastu jako:"
#: effects/Contrast.cpp:572
msgid "WCAG 2.0 Success Criteria 1.4.7 Contrast Results"
-msgstr ""
+msgstr "Kryteria Sukcesu WCAG 2.0 Rezultaty Kontrastu 1.4.7"
#: effects/Contrast.cpp:574
#, c-format
msgid "Filename = %s."
-msgstr ""
+msgstr "Nazwa Pliku = %s."
#: effects/Contrast.cpp:576
msgid "Foreground"
-msgstr ""
+msgstr "Pierwszy Plan"
#: effects/Contrast.cpp:581 effects/Contrast.cpp:598
#, c-format
msgid "Time started = %2d hour(s), %2d minute(s), %.2f seconds."
-msgstr ""
+msgstr "Czas poczÄ
tku = %2d godzina(y), %2d minuta(y), %.2f sekund."
#: effects/Contrast.cpp:586 effects/Contrast.cpp:603
#, c-format
msgid "Time ended = %2d hour(s), %2d minute(s), %.2f seconds."
-msgstr ""
+msgstr "Czas zakoÅczenia = %2d godzina(y), %2d minuta(y), %.2f sekundy."
#: effects/Contrast.cpp:588 effects/Contrast.cpp:605
#, c-format
msgid "Average rms = %.1f dB."
-msgstr ""
+msgstr "Årednia rms = %.1f dB."
#: effects/Contrast.cpp:590 effects/Contrast.cpp:607
msgid "Average rms = dB."
-msgstr ""
+msgstr "Årednia rms = dB."
#: effects/Contrast.cpp:593
msgid "Background"
-msgstr ""
+msgstr "TÅo"
#: effects/Contrast.cpp:609
msgid "Results"
-msgstr ""
+msgstr "Wyniki"
#: effects/Contrast.cpp:611
#, c-format
msgid "Difference = %.1f Average rms dB."
-msgstr ""
+msgstr "Różnica = %.1f Årednia rms dB."
#: effects/Contrast.cpp:613
msgid "Success Criteria 1.4.7 of WCAG 2.0: Pass"
-msgstr ""
+msgstr "Kryteria Sukcesu 1.4.7 WCAG 2.0: Zdane"
#: effects/Contrast.cpp:615
msgid "Success Criteria 1.4.7 of WCAG 2.0: Fail"
-msgstr ""
+msgstr "Kryteria Sukcesu 1.4.7 WCAG 2.0: Niezdane"
#: effects/Contrast.cpp:618
msgid "Data gathered"
-msgstr ""
-
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr ""
+msgstr "Dane zebrane"
#: effects/DtmfGen.cpp:56
msgid "DTMF Tone Generator"
msgstr "Generator dźwiÄku DTMF"
-#: effects/DtmfGen.cpp:456
+#: effects/DtmfGen.cpp:454
msgid "by Salvo Ventura (2006)"
msgstr "autorstwa Salvo Ventury (2006)"
-#: effects/DtmfGen.cpp:460
+#: effects/DtmfGen.cpp:458
msgid "DTMF sequence:"
msgstr "sekwencja DTMF:"
-#: effects/DtmfGen.cpp:463
-#: effects/Noise.cpp:242
-#: effects/ToneGen.cpp:322
-#: effects/ToneGen.cpp:359
+#: effects/DtmfGen.cpp:461 effects/Noise.cpp:240 effects/ToneGen.cpp:320
+#: effects/ToneGen.cpp:358
msgid "Amplitude (0-1)"
msgstr "Amplituda (0-1)"
-#: effects/DtmfGen.cpp:465
+#: effects/DtmfGen.cpp:463
#, fuzzy
msgid "Duration:"
msgstr "Czas trwania"
-#: effects/DtmfGen.cpp:486
+#: effects/DtmfGen.cpp:485
msgid "Tone/silence ratio:"
msgstr "WspóÅczynnik dźwiÄk/cisza"
-#: effects/DtmfGen.cpp:496
+#: effects/DtmfGen.cpp:495
msgid "Duty cycle:"
msgstr "Cykl:"
-#: effects/DtmfGen.cpp:498
+#: effects/DtmfGen.cpp:497
msgid "Tone duration:"
msgstr "Czas trwania dźwiÄku:"
-#: effects/DtmfGen.cpp:499
-#: effects/DtmfGen.cpp:501
+#: effects/DtmfGen.cpp:498 effects/DtmfGen.cpp:500 effects/DtmfGen.cpp:576
#: effects/DtmfGen.cpp:577
-#: effects/DtmfGen.cpp:578
msgid "ms"
msgstr "ms"
-#: effects/DtmfGen.cpp:500
+#: effects/DtmfGen.cpp:499
msgid "Silence duration:"
msgstr "Czas trwania ciszy:"
@@ -5143,22 +4983,21 @@ msgstr "Generowanie dźwiÄków DTMF"
msgid "Applied effect: %s delay = %f seconds, decay factor = %f"
msgstr "Dodano efekt: %s opóźnienie = %f sekund, wsp. zaniku = %f"
-#: effects/Echo.cpp:170
+#: effects/Echo.cpp:174
msgid "Echo"
msgstr "Echo"
#. i18n-hint: && in here is an escape character to get a single & on
#. * screen, so keep it as is
-#: effects/Echo.cpp:195
-#: effects/Repeat.cpp:200
+#: effects/Echo.cpp:199 effects/Repeat.cpp:199
msgid "by Dominic Mazzoni && Vaughan Johnson"
msgstr "autorzy: Dominia Mazzoni && Vaughan Johnson"
-#: effects/Echo.cpp:207
+#: effects/Echo.cpp:211
msgid "Delay time (seconds):"
msgstr "Czas opóźnienia (sekund):"
-#: effects/Echo.cpp:212
+#: effects/Echo.cpp:216
msgid "Decay factor:"
msgstr "WspóÅczynnik zaniku (decay):"
@@ -5170,102 +5009,103 @@ msgstr "Echo..."
msgid "Performing Echo"
msgstr "Tworzenie echa"
-#: effects/Effect.cpp:467
+#: effects/Effect.cpp:469
msgid "Preparing preview"
msgstr "Przygotowywanie podglÄ
du"
-#: effects/Effect.cpp:497
+#: effects/Effect.cpp:499
msgid "Previewing"
msgstr "PodglÄ
d"
-#: effects/Effect.cpp:512
+#: effects/Effect.cpp:514
msgid "Error while opening sound device. Please check the output device settings and the project sample rate."
msgstr "BÅÄ
d podczas otwarcia urzÄ
dzenia audio. ProszÄ sprawdziÄ ustawienia urzÄ
dzenia wyjÅciowego audio i czÄstotliwoÅÄ próbkowania projektu."
-#: effects/Effect.h:100
+#: effects/Effect.h:97 effects/TimeScale.cpp:52
#, c-format
msgid "Applied effect: %s"
msgstr "Dodano efekt %s"
-#: effects/Equalization.cpp:329
+#: effects/Equalization.cpp:334
msgid "B-spline"
msgstr "Klin-B"
-#: effects/Equalization.cpp:330
+#: effects/Equalization.cpp:335
msgid "Cosine"
msgstr "Cosinus"
-#: effects/Equalization.cpp:331
+#: effects/Equalization.cpp:336
msgid "Cubic"
msgstr "SzeÅcienny"
-#: effects/Equalization.cpp:367
-#: effects/Equalization.cpp:416
+#: effects/Equalization.cpp:369 effects/Equalization.cpp:417
msgid "Equalization"
msgstr "Korekcja graficzna"
-#: effects/Equalization.cpp:994
+#: effects/Equalization.cpp:992
msgid "Error loading EQ curve"
msgstr "BÅÄ
d podczas Åadowania krzywej EQ"
-#: effects/Equalization.cpp:1033
+#: effects/Equalization.cpp:1031
msgid "custom"
msgstr "na zamówienie"
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr ""
+
#. i18n-hint: && in here is an escape character to get a single &
#. * on screen, so keep it as is
-#: effects/Equalization.cpp:1101
+#: effects/Equalization.cpp:1099
msgid "Equalization, by Martyn Shaw && Mitch Golden"
msgstr "Korekcja autorstwa Martyn Shaw && Mitcha Golden"
-#: effects/Equalization.cpp:1122
+#: effects/Equalization.cpp:1120
msgid "Max dB"
msgstr "Maks dB"
-#: effects/Equalization.cpp:1124
+#: effects/Equalization.cpp:1122
msgid "Min dB"
msgstr "MIn dB"
-#: effects/Equalization.cpp:1197
+#: effects/Equalization.cpp:1195
msgid "kHz"
msgstr "kHz"
-#: effects/Equalization.cpp:1214
+#: effects/Equalization.cpp:1212
msgid "Draw curves"
msgstr "Twórz krzywe"
-#: effects/Equalization.cpp:1219
+#: effects/Equalization.cpp:1217
msgid "Graphic EQ"
msgstr "Korektor graficzny"
-#: effects/Equalization.cpp:1233
+#: effects/Equalization.cpp:1231
msgid "Linear frequency scale"
msgstr "Linearna skala czÄstotliwoÅci"
-#: effects/Equalization.cpp:1242
+#: effects/Equalization.cpp:1240
msgid "Length of filter:"
msgstr "DÅugoÅÄ filtra:"
-#: effects/Equalization.cpp:1263
+#: effects/Equalization.cpp:1261
msgid "Select curve:"
msgstr "Zaznacz krzywÄ
:"
-#: effects/Equalization.cpp:1273
-#: effects/Equalization.cpp:2512
-#: export/ExportMultiple.cpp:882
+#: effects/Equalization.cpp:1271 effects/Equalization.cpp:2510
+#: export/ExportMultiple.cpp:900
msgid "Save As..."
msgstr "Zapisz jako..."
-#: effects/Equalization.cpp:1279
+#: effects/Equalization.cpp:1277
msgid "Flat"
msgstr "PÅaskie"
-#: effects/Equalization.cpp:2511
+#: effects/Equalization.cpp:2509
msgid "Enter the desired name of the curve"
msgstr "Wprowadź nazwÄ dla "
-#: effects/Equalization.cpp:2611
-#: export/ExportFFmpegDialogs.cpp:1220
+#: effects/Equalization.cpp:2609 export/ExportFFmpegDialogs.cpp:1211
msgid "Confirm Deletion"
msgstr "Potwierdź UsuniÄcie"
@@ -5341,49 +5181,48 @@ msgstr "Odwracanie"
msgid "Leveller"
msgstr "Wyrównywacz"
-#: effects/Leveller.cpp:203
+#: effects/Leveller.cpp:205
msgid "None-Skip"
msgstr "Bez-przeskoku"
-#: effects/Leveller.cpp:204
+#: effects/Leveller.cpp:206
msgid "Light"
msgstr "Lekki"
-#: effects/Leveller.cpp:205
+#: effects/Leveller.cpp:207
msgid "Moderate"
msgstr "Åredni"
-#: effects/Leveller.cpp:206
+#: effects/Leveller.cpp:208
msgid "Heavy"
msgstr "CiÄżki"
-#: effects/Leveller.cpp:207
+#: effects/Leveller.cpp:209
msgid "Heavier"
msgstr "CiÄższy"
-#: effects/Leveller.cpp:208
+#: effects/Leveller.cpp:210
msgid "Heaviest"
msgstr "NajciÄższy"
-#: effects/Leveller.cpp:212
-#: effects/TruncSilence.cpp:331
+#: effects/Leveller.cpp:214 effects/TruncSilence.cpp:331
msgid "by Lynn Allan"
msgstr "Lynn Allan"
-#: effects/Leveller.cpp:222
+#: effects/Leveller.cpp:224
msgid "Degree of Leveling"
msgstr "Poziom wysterowania"
-#: effects/Leveller.cpp:226
+#: effects/Leveller.cpp:228
#, fuzzy
msgid "Degree of Leveling:"
msgstr "Poziom wysterowania"
-#: effects/Leveller.cpp:234
+#: effects/Leveller.cpp:236
msgid "Noise Threshold (Hiss/Hum/Ambient Noise)"
msgstr "Próg haÅasu"
-#: effects/Leveller.cpp:238
+#: effects/Leveller.cpp:240
#, fuzzy
msgid "Threshold for Noise:"
msgstr "Próg dla haÅasu: "
@@ -5396,177 +5235,170 @@ msgstr "Wyrównywacz..."
msgid "Applying Leveller..."
msgstr "Stosowanie Wyrównywacza..."
-#: effects/LoadEffects.cpp:102
+#: effects/LoadEffects.cpp:103
#, fuzzy
msgid "Generator"
msgstr "Generator tonu"
-#: effects/LoadEffects.cpp:104
+#: effects/LoadEffects.cpp:105
msgid "Instrument"
-msgstr ""
+msgstr "Instrument"
-#: effects/LoadEffects.cpp:106
+#: effects/LoadEffects.cpp:107
msgid "Oscillator"
-msgstr ""
+msgstr "Oscylator"
-#: effects/LoadEffects.cpp:108
+#: effects/LoadEffects.cpp:109
msgid "Utility"
-msgstr ""
+msgstr "UżytecznoÅÄ"
-#: effects/LoadEffects.cpp:110
+#: effects/LoadEffects.cpp:111
#, fuzzy
msgid "Converter"
msgstr "OdwrÃ³Ä w pionie"
-#: effects/LoadEffects.cpp:112
+#: effects/LoadEffects.cpp:113
#, fuzzy
msgid "Analyser"
msgstr "&Analiza"
-#: effects/LoadEffects.cpp:114
-#: toolbars/MixerToolBar.cpp:60
-msgid "Mixer"
-msgstr "Mikser"
-
-#: effects/LoadEffects.cpp:116
+#: effects/LoadEffects.cpp:117
msgid "Simulator"
-msgstr ""
+msgstr "Symulator"
-#: effects/LoadEffects.cpp:118
+#: effects/LoadEffects.cpp:119
#, fuzzy
msgid "Delay"
msgstr "WyÅwietlacz"
-#: effects/LoadEffects.cpp:120
+#: effects/LoadEffects.cpp:121
msgid "Modulator"
-msgstr ""
+msgstr "Modulator"
-#: effects/LoadEffects.cpp:122
+#: effects/LoadEffects.cpp:123
#, fuzzy
msgid "Reverb"
msgstr "Odzyskaj"
-#: effects/LoadEffects.cpp:124
-#: effects/Phaser.cpp:208
+#: effects/LoadEffects.cpp:125 effects/Phaser.cpp:208
msgid "Phaser"
msgstr "Fazer"
-#: effects/LoadEffects.cpp:126
+#: effects/LoadEffects.cpp:127
msgid "Flanger"
-msgstr ""
+msgstr "Flanger"
-#: effects/LoadEffects.cpp:128
+#: effects/LoadEffects.cpp:129
msgid "Chorus"
-msgstr ""
+msgstr "Chór"
-#: effects/LoadEffects.cpp:130
+#: effects/LoadEffects.cpp:131
#, fuzzy
msgid "Filter"
msgstr "Plik"
-#: effects/LoadEffects.cpp:132
+#: effects/LoadEffects.cpp:133
msgid "Lowpass"
-msgstr ""
+msgstr "Filtr dolnoprzepustowy"
-#: effects/LoadEffects.cpp:134
+#: effects/LoadEffects.cpp:135
msgid "Bandpass"
-msgstr ""
+msgstr "Filtr Årodkowoprzepustowy"
-#: effects/LoadEffects.cpp:136
+#: effects/LoadEffects.cpp:137
msgid "Highpass"
-msgstr ""
+msgstr "Filtr Górnoprzepustowy"
-#: effects/LoadEffects.cpp:138
+#: effects/LoadEffects.cpp:139
msgid "Comb"
-msgstr ""
+msgstr "GrzebieÅ"
-#: effects/LoadEffects.cpp:140
+#: effects/LoadEffects.cpp:141
msgid "Allpass"
-msgstr ""
+msgstr "Filtr Przepustowy"
-#: effects/LoadEffects.cpp:142
+#: effects/LoadEffects.cpp:143
msgid "Equaliser"
-msgstr ""
+msgstr "Korektor"
-#: effects/LoadEffects.cpp:144
+#: effects/LoadEffects.cpp:145
#, fuzzy
msgid "Parametric"
msgstr "&Parametry"
-#: effects/LoadEffects.cpp:146
+#: effects/LoadEffects.cpp:147
#, fuzzy
msgid "Multiband"
msgstr "Multi"
-#: effects/LoadEffects.cpp:148
+#: effects/LoadEffects.cpp:149
msgid "Spectral Processor"
-msgstr ""
+msgstr "Procesor Spektrum"
-#: effects/LoadEffects.cpp:150
+#: effects/LoadEffects.cpp:151
#, fuzzy
msgid "Pitch Shifter"
msgstr "WysokoÅÄ z"
-#: effects/LoadEffects.cpp:152
+#: effects/LoadEffects.cpp:153
#, fuzzy
msgid "Amplifier"
msgstr "Wzmacniaj"
-#: effects/LoadEffects.cpp:154
+#: effects/LoadEffects.cpp:155
#, fuzzy
msgid "Distortion"
msgstr "Rozdziel"
-#: effects/LoadEffects.cpp:156
+#: effects/LoadEffects.cpp:157
msgid "Waveshaper"
-msgstr ""
+msgstr "Tworzenie Fali"
-#: effects/LoadEffects.cpp:158
+#: effects/LoadEffects.cpp:159
#, fuzzy
msgid "Dynamics Processor"
msgstr "Kompresor dynamiki"
-#: effects/LoadEffects.cpp:160
+#: effects/LoadEffects.cpp:161
#, fuzzy
msgid "Compressor"
msgstr "Kompresor..."
-#: effects/LoadEffects.cpp:162
+#: effects/LoadEffects.cpp:163
#, fuzzy
msgid "Expander"
msgstr "Rozszerz"
-#: effects/LoadEffects.cpp:164
+#: effects/LoadEffects.cpp:165
#, fuzzy
msgid "Limiter"
msgstr "Wahania"
-#: effects/LoadEffects.cpp:166
+#: effects/LoadEffects.cpp:167
#, fuzzy
msgid "Gate"
msgstr "Wklej"
-#: effects/LoadEffects.cpp:199
-#: effects/NoiseRemoval.cpp:725
+#: effects/LoadEffects.cpp:200 effects/NoiseRemoval.cpp:729
msgid "Noise Removal"
msgstr "Odszumiacz"
-#: effects/LoadEffects.cpp:201
+#: effects/LoadEffects.cpp:202
#, fuzzy
msgid "Pitch and Tempo"
msgstr "ZmieÅ tempo"
-#: effects/LoadEffects.cpp:203
+#: effects/LoadEffects.cpp:204
#, fuzzy
msgid "Timeline Changer"
msgstr "Zmiana nazwy"
-#: effects/LoadEffects.cpp:205
+#: effects/LoadEffects.cpp:206
#, fuzzy
msgid "Time"
msgstr "Przytnij"
-#: effects/LoadEffects.cpp:207
+#: effects/LoadEffects.cpp:208
#, fuzzy
msgid "Onsets"
msgstr "&Wstaw"
@@ -5587,7 +5419,7 @@ msgstr "BrÄ
zowy"
msgid "Noise Generator"
msgstr "Generator haÅasu"
-#: effects/Noise.cpp:241
+#: effects/Noise.cpp:239
msgid "Noise type"
msgstr "Rodzaj haÅasu"
@@ -5615,57 +5447,57 @@ msgstr "Nie można otworzyÄ pliku:\n"
msgid "Attempt to run Noise Removal without a noise profile.\n"
msgstr "Próba zastosowania Usuwania HaÅasu bez profilu haÅasu.\n"
-#: effects/NoiseRemoval.cpp:814
+#: effects/NoiseRemoval.cpp:818
msgid "Step 1"
msgstr "Krok 1"
-#: effects/NoiseRemoval.cpp:815
+#: effects/NoiseRemoval.cpp:819
msgid "Select a few seconds of just noise so Audacity knows what to filter out,\n"
"then click Get Noise Profile:"
msgstr "Zaznacz kilka sekund szumu, aby Audacity wiedziaÅo co odfiltrowaÄ,\n"
"nastÄpnie kliknij na Pobierz profil haÅasu:"
-#: effects/NoiseRemoval.cpp:816
+#: effects/NoiseRemoval.cpp:820
msgid "Step 2"
msgstr "Krok 2"
-#: effects/NoiseRemoval.cpp:817
+#: effects/NoiseRemoval.cpp:821
msgid "Select all of the audio you want filtered, choose how much noise you want\n"
"filtered out, and then click 'OK' to remove noise.\n"
msgstr "Zaznacz caÅy dźwiÄk, który chcesz przefiltrowaÄ, wybierz iloÅÄ szumów do\n"
"przefiltrowania i kliknij na OK, aby usunÄ
Ä szumy.\n"
-#: effects/NoiseRemoval.cpp:822
+#: effects/NoiseRemoval.cpp:826
msgid "Noise Removal by Dominic Mazzoni"
msgstr "Usuwanie szumu (Dominic Mazzoni)"
-#: effects/NoiseRemoval.cpp:830
+#: effects/NoiseRemoval.cpp:834
msgid "Get Noise Profile"
msgstr "Pobierz próbkÄ szumu"
-#: effects/NoiseRemoval.cpp:841
+#: effects/NoiseRemoval.cpp:845
msgid "Noise reduction (dB):"
msgstr "Redukcja szumów (dB):"
#: effects/NoiseRemoval.cpp:850
msgid "Noise reduction"
-msgstr ""
+msgstr "Redukcja haÅasu"
-#: effects/NoiseRemoval.cpp:849
+#: effects/NoiseRemoval.cpp:854
msgid "Frequency smoothing (Hz):"
msgstr "WygÅadzanie czÄstotliwoÅci (Hz):"
#: effects/NoiseRemoval.cpp:859
msgid "Frequency smoothing"
-msgstr ""
+msgstr "WygÅadzanie czÄstotliwoÅci"
-#: effects/NoiseRemoval.cpp:857
+#: effects/NoiseRemoval.cpp:863
msgid "Attack/decay time (secs):"
msgstr "Czas reakcji (sekund):"
#: effects/NoiseRemoval.cpp:868
msgid "Attach/decay time"
-msgstr ""
+msgstr "Czas przyÅÄ
czenia/odÅÄ
czenia"
#: effects/NoiseRemoval.h:35
msgid "Noise Removal..."
@@ -5686,15 +5518,9 @@ msgstr "Usuwanie szumu"
msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr "Zastosowany efekt: %s usuÅ offset = %s, normalizuj amplitudÄ = %s"
-#: effects/Normalize.cpp:74
-#: effects/Normalize.cpp:75
-msgid "false"
-msgstr "faÅsz"
-
#. i18n-hint: true here means that the option was
#. * selected. Opposite false if not selected
-#: effects/Normalize.cpp:74
-#: effects/Normalize.cpp:75
+#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
msgid "true"
msgstr "prawda"
@@ -5708,12 +5534,11 @@ msgid "Normalize"
msgstr "Normalizacja "
#: effects/Normalize.cpp:351
-#: effects/Normalize.cpp:352
#, fuzzy
msgid "Remove any DC offset (center on 0.0 vertically)"
msgstr "Usuwanie skÅadowej staÅej"
-#: effects/Normalize.cpp:357
+#: effects/Normalize.cpp:354
#, fuzzy
msgid "Normalize maximum amplitude to:"
msgstr "Znormalizuj maksymalnÄ
amplitudÄ do"
@@ -5724,7 +5549,7 @@ msgstr "-"
#: effects/Normalize.cpp:367
msgid "Maximum amplitude dB"
-msgstr ""
+msgstr "Maksimum dB"
#: effects/Normalize.h:33
msgid "Normalize..."
@@ -5750,30 +5575,26 @@ msgstr "Plany:"
#: effects/Phaser.cpp:231
msgid "Dry/Wet:"
-msgstr ""
+msgstr "Suchy/Mokry:"
#: effects/Phaser.cpp:234
msgid "Dry Wet"
-msgstr ""
+msgstr "Suchy Mokry"
-#: effects/Phaser.cpp:236
-#: effects/Wahwah.cpp:221
+#: effects/Phaser.cpp:236 effects/Wahwah.cpp:221
msgid "LFO Frequency (Hz):"
msgstr "CzÄstotliwoÅÄ LFO (Hz)"
-#: effects/Phaser.cpp:239
-#: effects/Wahwah.cpp:224
+#: effects/Phaser.cpp:239 effects/Wahwah.cpp:224
#, fuzzy
msgid "LFO frequency in hertz"
msgstr "CzÄstotliwoÅÄ LFO (Hz)"
-#: effects/Phaser.cpp:241
-#: effects/Wahwah.cpp:226
+#: effects/Phaser.cpp:241 effects/Wahwah.cpp:226
msgid "LFO Start Phase (deg.):"
msgstr "PoczÄ
tkowe PrzesuniÄcie LFO (deg.):"
-#: effects/Phaser.cpp:244
-#: effects/Wahwah.cpp:229
+#: effects/Phaser.cpp:244 effects/Wahwah.cpp:229
#, fuzzy
msgid "LFO start phase in degrees"
msgstr "PoczÄ
tkowe PrzesuniÄcie LFO (deg.):"
@@ -5782,10 +5603,9 @@ msgstr "PoczÄ
tkowe PrzesuniÄcie LFO (deg.):"
msgid "Depth:"
msgstr "GÅÄbokoÅÄ:"
-#: effects/Phaser.cpp:249
-#: effects/Wahwah.cpp:234
+#: effects/Phaser.cpp:249 effects/Wahwah.cpp:234
msgid "Depth in percent"
-msgstr ""
+msgstr "GÅÄbokoÅÄ w procentach"
#: effects/Phaser.cpp:251
msgid "Feedback (%):"
@@ -5793,7 +5613,7 @@ msgstr "SprzÄżenie (%):"
#: effects/Phaser.cpp:254
msgid "Feedback in percent"
-msgstr ""
+msgstr "SprzÄżenie zwrotne w procentach"
#: effects/Phaser.h:45
msgid "Phaser..."
@@ -5817,7 +5637,11 @@ msgid "Repair works by using audio data outside the selection region.\n"
"Please select a region that has audio touching at least one side of it.\n"
"\n"
"The more surrounding audio, the better it performs."
-msgstr ""
+msgstr "Napraw dźwiÄk używajÄ
c danych dźwiÄkowych spoza zaznaczonego regionu.\n"
+"\n"
+"Zaznacz region dotykajÄ
cy dźwiÄku przynajmniej z jednej strony.\n"
+"\n"
+"Im wiÄcej otaczajÄ
cego dźwiÄku, tym lepiej."
#: effects/Repair.h:43
msgid "Repairing damaged audio"
@@ -5832,29 +5656,27 @@ msgstr "Powtórzono %d-razy"
msgid "Tracks are too long to repeat the selection."
msgstr "Åcieżki sÄ
zbyt dÅugie aby powtórnie wstawiÄ zaznaczenie."
-#: effects/Repeat.cpp:77
-#: effects/Repeat.cpp:187
+#: effects/Repeat.cpp:77 effects/Repeat.cpp:186
msgid "Repeat"
msgstr "Powtórz"
-#: effects/Repeat.cpp:212
+#: effects/Repeat.cpp:211
#, fuzzy
msgid "Number of times to repeat:"
msgstr "IloÅÄ powtórzeÅ :"
-#: effects/Repeat.cpp:221
+#: effects/Repeat.cpp:220
#, fuzzy
msgid "New selection length: hh:mm:ss"
msgstr "Nowa dÅugoÅÄ zaznaczenia:"
-#: effects/Repeat.cpp:253
+#: effects/Repeat.cpp:252
msgid "New selection length: "
msgstr "Nowa dÅugoÅÄ zaznaczenia:"
#. i18n-hint: Name of time display format that shows time in hours, minutes
#. * and seconds
-#: effects/Repeat.cpp:262
-#: widgets/TimeTextCtrl.cpp:270
+#: effects/Repeat.cpp:261 widgets/TimeTextCtrl.cpp:270
msgid "hh:mm:ss"
msgstr "gg:mm:ss"
@@ -5933,61 +5755,60 @@ msgstr "Stosowanie stereo do mono"
#: effects/TimeScale.cpp:140
msgid "Time Scale"
-msgstr ""
+msgstr "Skala czasu"
#: effects/TimeScale.cpp:176
msgid "Sliding Time Scale/Pitch Shift"
-msgstr ""
+msgstr "Czas obniżania/PrzesuniÄcie WysokoÅci DźwiÄku"
#: effects/TimeScale.cpp:178
msgid "using SBSMS, by Clayton Otey"
-msgstr ""
+msgstr "używajÄ
c SBSMS, Claytona Otey"
#: effects/TimeScale.cpp:187
msgid "Initial Tempo Change (%):"
-msgstr ""
+msgstr "WstÄpna Zmiana Tempa (%):"
#: effects/TimeScale.cpp:191
msgid "Final Tempo Change (%):"
-msgstr ""
+msgstr "KoÅcowa Zmiana Tempa (%):"
#: effects/TimeScale.cpp:202
msgid "Initial Tempo Change (%)"
-msgstr ""
+msgstr "WstÄpna Zmiana Tempa (%):"
#: effects/TimeScale.cpp:211
msgid "Final Tempo Change (%)"
-msgstr ""
+msgstr "KoÅcowa Zmiana Tempa (%):"
#: effects/TimeScale.cpp:219
msgid "Initial Pitch Shift (semitones) [-12 to 12]:"
-msgstr ""
+msgstr "WstÄpna Zmiana WysokoÅci (tony Årednie) [-12 do 12]:"
#: effects/TimeScale.cpp:223
msgid "Final Pitch Shift (semitones) [-12 to 12]:"
-msgstr ""
+msgstr "KoÅcowa Zmiana WysokoÅci (tony Årednie) [-12 do 12]:"
#: effects/TimeScale.h:33
msgid "Sliding Time Scale/Pitch Shift..."
-msgstr ""
+msgstr "Czas obniżania/PrzesuniÄcie WysokoÅci DźwiÄku..."
#: effects/TimeScale.h:47
msgid "Changing Tempo/Pitch"
-msgstr ""
+msgstr "Zmiana Tempa/WysokoÅci"
#: effects/ToneGen.cpp:61
#, c-format
msgid "Applied effect: Generate %s wave %s, frequency = %.2f Hz, amplitude = %.2f, %.6lf seconds"
msgstr "Zastosowany efekt: Generuj %s falÄ %s, czÄstotliwoÅÄ = %.2f Hz, amplituda = %.2f, %.6lf sekund"
-#: effects/ToneGen.cpp:69
-#: widgets/Meter.cpp:416
+#: effects/ToneGen.cpp:69 widgets/Meter.cpp:412
msgid "Linear"
msgstr "Liniowy"
#: effects/ToneGen.cpp:70
msgid "Logarithmic"
-msgstr ""
+msgstr "Logarytmiczny"
#: effects/ToneGen.cpp:71
msgid "Chirp Generator"
@@ -6013,32 +5834,31 @@ msgstr "PiÅoksztaÅtny"
msgid "Square, no alias"
msgstr "Kwadratowy, bez aliasów"
-#: effects/ToneGen.cpp:321
-#: effects/ToneGen.cpp:357
+#: effects/ToneGen.cpp:319 effects/ToneGen.cpp:356
msgid "Frequency (Hz)"
msgstr "CzÄstotliwoÅÄ (Hz)"
-#: effects/ToneGen.cpp:348
+#: effects/ToneGen.cpp:347
msgid "Waveform:"
msgstr "Przebieg czasowy:"
-#: effects/ToneGen.cpp:358
+#: effects/ToneGen.cpp:356
msgid "Frequency Hertz Start"
-msgstr ""
+msgstr "PoczÄ
tek CzÄstotliwoÅci Hertz"
-#: effects/ToneGen.cpp:359
+#: effects/ToneGen.cpp:357
msgid "Frequency Hertz End"
-msgstr ""
+msgstr "Koniec CzÄstotliwoÅci Hertz"
-#: effects/ToneGen.cpp:360
+#: effects/ToneGen.cpp:358
msgid "Amplitude Start"
-msgstr ""
+msgstr "PoczÄ
tek Amplitudy"
-#: effects/ToneGen.cpp:361
+#: effects/ToneGen.cpp:359
msgid "Amplitude End"
-msgstr ""
+msgstr "Koniec Amplitudy"
-#: effects/ToneGen.cpp:365
+#: effects/ToneGen.cpp:364
#, fuzzy
msgid "Interpolation:"
msgstr "Fast Sinc Interpolation"
@@ -6063,30 +5883,44 @@ msgstr "Generowanie Tonu"
msgid "All tracks must have the same sample rate"
msgstr "Wszystkie Åcieżki powinny mieÄ tÄ
samÄ
czÄstotliwoÅÄ próbkowania"
-#: effects/TruncSilence.cpp:113
-#: effects/TruncSilence.cpp:321
+#: effects/TruncSilence.cpp:113 effects/TruncSilence.cpp:321
msgid "Truncate Silence"
msgstr "Wyciszenie"
-#: effects/TruncSilence.cpp:345
-msgid "Max silence duration:"
-msgstr "Maksymalna dÅugoÅÄ wyciszenia:"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr ""
-#: effects/TruncSilence.cpp:348
-#: prefs/AudioIOPrefs.cpp:196
-#: prefs/AudioIOPrefs.cpp:199
-#: prefs/MidiIOPrefs.cpp:174
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:348 prefs/AudioIOPrefs.cpp:199
+#: prefs/AudioIOPrefs.cpp:203 prefs/MidiIOPrefs.cpp:174
#: prefs/MidiIOPrefs.cpp:177
msgid "milliseconds"
msgstr "milisekundy"
+#: effects/TruncSilence.cpp:345
+msgid "Max silence duration:"
+msgstr "Maksymalna dÅugoÅÄ wyciszenia:"
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ""
+
#: effects/TruncSilence.cpp:350
msgid "Threshold for silence:"
msgstr "Próg dla wyciszenia:"
-#: effects/TruncSilence.cpp:374
-msgid " Duration must be at least 1 millisecond"
-msgstr "DÅugoÅÄ minimum 1 milisekunda"
+#: effects/TruncSilence.cpp:506
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
+msgstr ""
#: effects/TruncSilence.h:28
msgid "Truncate Silence..."
@@ -6096,17 +5930,55 @@ msgstr "Wytnij CiszÄ"
msgid "Truncating Silence..."
msgstr "Skracanie ciszy..."
-#: effects/VST/VSTEffect.cpp:172
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "Przykro nam, efekty VST nie mogÄ
zostaÄ użyte do Åcieżek stereo jeżeli Åcieżki skÅadowe do siebie nie pasujÄ
."
+#: effects/ladspa/LadspaEffect.cpp:615 effects/lv2/LV2Effect.cpp:824
+msgid "Effect Settings"
+msgstr "Ustawienia efektu"
+
+#: effects/ladspa/LadspaEffect.cpp:580 effects/ladspa/LadspaEffect.cpp:588
+#: prefs/GUIPrefs.cpp:51 prefs/QualityPrefs.cpp:72
+msgid "None"
+msgstr "Żaden"
-#: effects/VST/VSTEffect.cpp:187
-msgid "Can't process replacing"
-msgstr "Nie można dokonaÄ zamiany"
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
-#: effects/VST/VSTEffect.cpp:410
-msgid "VST Plug-in parameters:"
-msgstr "Parametry wtyczek VST"
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr ""
#: effects/Wahwah.cpp:61
#, c-format
@@ -6148,148 +6020,125 @@ msgid "Applying Wahwah"
msgstr "Dodawanie Wahwah"
#: effects/audiounits/AudioUnitEffect.cpp:138
-#: effects/ladspa/LadspaEffect.cpp:176
-#: effects/lv2/LV2Effect.cpp:191
+#: effects/ladspa/LadspaEffect.cpp:176 effects/lv2/LV2Effect.cpp:192
#, c-format
msgid "Performing Effect: %s"
msgstr "Tworzenie efektu: %s"
-#: effects/ladspa/LadspaEffect.cpp:196
-#: effects/lv2/LV2Effect.cpp:211
+#: effects/ladspa/LadspaEffect.cpp:196 effects/lv2/LV2Effect.cpp:212
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr "Niestety, Efekty wtyczek nie dziaÅajÄ
na Åcieżkach stereo, gdzie poszczególne kanaÅy nie pasujÄ
."
-#: effects/ladspa/LadspaEffect.cpp:580
-#: effects/ladspa/LadspaEffect.cpp:588
-#: prefs/GUIPrefs.cpp:51
-#: prefs/QualityPrefs.cpp:72
-msgid "None"
-msgstr "Żaden"
-
-#: effects/ladspa/LadspaEffect.cpp:582
-#: effects/lv2/LV2Effect.cpp:798
-#: effects/vamp/VampEffect.cpp:395
+#: effects/ladspa/LadspaEffect.cpp:582 effects/lv2/LV2Effect.cpp:799
+#: effects/vamp/VampEffect.cpp:397
msgid "Author: "
msgstr "Autor: "
-#: effects/ladspa/LadspaEffect.cpp:615
-#: effects/lv2/LV2Effect.cpp:823
-msgid "Effect Settings"
-msgstr "Ustawienia efektu"
-
-#: effects/ladspa/LadspaEffect.cpp:710
-#: effects/ladspa/LadspaEffect.cpp:713
-#: effects/lv2/LV2Effect.cpp:834
-#: effects/lv2/LV2Effect.cpp:837
+#: effects/ladspa/LadspaEffect.cpp:710 effects/ladspa/LadspaEffect.cpp:713
+#: effects/lv2/LV2Effect.cpp:835 effects/lv2/LV2Effect.cpp:838
msgid "Length (seconds)"
msgstr "DÅugoÅÄ (sekund)"
-#: effects/lv2/LV2Effect.cpp:849
-#: effects/lv2/LV2Effect.cpp:852
+#: effects/lv2/LV2Effect.cpp:850 effects/lv2/LV2Effect.cpp:853
#, fuzzy
msgid "Note length (seconds)"
msgstr "DÅugoÅÄ (sekund)"
-#: effects/lv2/LV2Effect.cpp:860
-#: effects/lv2/LV2Effect.cpp:863
+#: effects/lv2/LV2Effect.cpp:861 effects/lv2/LV2Effect.cpp:864
msgid "Note velocity"
-msgstr ""
+msgstr "Zaznacz szybkoÅÄ"
-#: effects/lv2/LV2Effect.cpp:871
-#: effects/lv2/LV2Effect.cpp:874
+#: effects/lv2/LV2Effect.cpp:872 effects/lv2/LV2Effect.cpp:875
#, fuzzy
msgid "Note key"
msgstr "Note Track"
-#: effects/nyquist/Nyquist.cpp:257
+#: effects/nyquist/Nyquist.cpp:302
msgid "Applying Nyquist Effect..."
msgstr "Dodano efekt Nyquist'a"
-#: effects/nyquist/Nyquist.cpp:264
-#: effects/nyquist/Nyquist.cpp:326
+#: effects/nyquist/Nyquist.cpp:320 effects/nyquist/Nyquist.cpp:403
msgid "Nyquist Prompt..."
msgstr "Nyquist Prompt..."
-#: effects/nyquist/Nyquist.cpp:327
+#: effects/nyquist/Nyquist.cpp:404
msgid "Enter Nyquist Command: "
msgstr "Wprowadź instrukcjÄ Nyquist'a:"
-#: effects/nyquist/Nyquist.cpp:417
+#: effects/nyquist/Nyquist.cpp:504
msgid "Sorry, cannot apply effect on stereo tracks where the tracks don't match."
msgstr "Przykro mi ale nie można używaÄ efektu na Åcieżkach stereo jeżeli Åcieżki do siebie nie pasujÄ
."
-#: effects/nyquist/Nyquist.cpp:445
+#: effects/nyquist/Nyquist.cpp:535
msgid "Nyquist"
msgstr "Nyquist"
-#: effects/nyquist/Nyquist.cpp:446
+#: effects/nyquist/Nyquist.cpp:536
msgid "Nyquist Output: "
msgstr "WyjÅcie Nyquist: "
-#: effects/nyquist/Nyquist.cpp:603
-#: effects/nyquist/Nyquist.cpp:614
+#: effects/nyquist/Nyquist.cpp:747 effects/nyquist/Nyquist.cpp:758
msgid "Nyquist returned the value:"
msgstr "Nyquist zwróciÅ wartoÅÄ:"
-#: effects/nyquist/Nyquist.cpp:656
+#: effects/nyquist/Nyquist.cpp:800
msgid "Nyquist did not return audio.\n"
msgstr "Nyquist nie zwróciŠaudio.\n"
-#: effects/nyquist/Nyquist.cpp:667
+#: effects/nyquist/Nyquist.cpp:811
msgid "Nyquist returned too many audio channels.\n"
msgstr "Nyquist zwróciÅ zbyt dużo kanaÅów audio.\n"
-#: effects/vamp/VampEffect.cpp:86
+#: effects/vamp/VampEffect.cpp:80
#, c-format
msgid "Extracting features: %s"
msgstr "Cechy ekstrakcji: %s"
-#: effects/vamp/VampEffect.cpp:117
+#: effects/vamp/VampEffect.cpp:111
msgid "Sorry, Vamp Plug-ins cannot be run on stereo tracks where the individual channels of the track do not match."
msgstr "Niestety, Wtyczka Vamp nie dziaÅa na Åcieżkach stereo, gdzie poszczególne kanaÅy nie pasujÄ
."
-#: effects/vamp/VampEffect.cpp:131
+#: effects/vamp/VampEffect.cpp:125
msgid "Sorry, failed to load Vamp Plug-in."
msgstr "Niestety, bÅÄ
d przy Åadowaniu Wtyczki Vamp."
-#: effects/vamp/VampEffect.cpp:239
+#: effects/vamp/VampEffect.cpp:233
msgid "Sorry, Vamp Plug-in failed to initialize."
msgstr "Niestety, bÅÄ
d przy uruchamianiu Wtyczki Vamp."
-#: effects/vamp/VampEffect.cpp:387
+#: effects/vamp/VampEffect.cpp:389
msgid " - Vamp audio analysis plugin"
msgstr " - wtyczka analizowania dźwiÄku Vamp"
-#: effects/vamp/VampEffect.cpp:423
+#: effects/vamp/VampEffect.cpp:425
msgid "Plugin Settings"
msgstr "Ustawienia Wtyczki"
-#: effects/vamp/VampEffect.cpp:442
-#: effects/vamp/VampEffect.cpp:448
+#: effects/vamp/VampEffect.cpp:444 effects/vamp/VampEffect.cpp:450
msgid "Program"
msgstr "Program"
#: export/Export.cpp:469
msgid "All the selected audio is muted."
-msgstr ""
+msgstr "CaÅy zaznaczony dźwiÄk jest wyciszony."
#: export/Export.cpp:471
msgid "All the audio is muted."
-msgstr ""
+msgstr "CaÅy dźwiÄk jest wyciszony."
-#: export/Export.cpp:522
+#: export/Export.cpp:527
msgid "Export File"
msgstr "Eksportuj Plik"
-#: export/Export.cpp:530
+#: export/Export.cpp:536
msgid "&Options..."
msgstr "&Opcje..."
-#: export/Export.cpp:571
+#: export/Export.cpp:577
msgid "Are you sure you want to save the file as \""
msgstr "Czy jesteÅ pewien że chcesz zapisaÄ plik jako \""
-#: export/Export.cpp:591
+#: export/Export.cpp:597
#, c-format
msgid "You are about to save a %s file with the name \"%s\".\n"
"\n"
@@ -6302,43 +6151,42 @@ msgstr "Plik %s zostanie zapisany z nazwÄ
\"%s\".\n"
"\n"
"Czy jesteÅ pewny, że chcesz zapisaÄ ten plik z tÄ
nazwÄ
?"
-#: export/Export.cpp:612
+#: export/Export.cpp:618
#, c-format
msgid "A file named \"%s\" already exists. Replace?"
msgstr "Plik o nazwie \"%s\" już istnieje. ZastÄ
piÄ?"
-#: export/Export.cpp:710
+#: export/Export.cpp:720
msgid "Your tracks will be mixed down to two stereo channels in the exported file."
msgstr "Twoje Åcieżki bÄdÄ
zmiksowane do dwóch kanaÅów stereo w wyeksportowanym pliku."
-#: export/Export.cpp:715
+#: export/Export.cpp:725
msgid "Your tracks will be mixed down to a single mono channel in the exported file."
msgstr "Twoje Åcieżki bÄdÄ
zmiksowane do pojedynczego kanaÅu mono w wyeksportowanym pliku."
-#: export/Export.cpp:726
+#: export/Export.cpp:736
msgid "Advanced Mixing Options"
msgstr "Zaawansowane opcje miksowania"
-#: export/Export.cpp:930
+#: export/Export.cpp:940
#, c-format
msgid "Channel: %2d"
msgstr "KanaÅ: %2d"
-#: export/Export.cpp:1046
+#: export/Export.cpp:1056
msgid " - Left"
msgstr " - Lewy"
-#: export/Export.cpp:1047
+#: export/Export.cpp:1057
msgid " - Right"
msgstr " - Prawy"
-#: export/Export.cpp:1072
+#: export/Export.cpp:1082
#, fuzzy
msgid "Mixer Panel"
msgstr "Panel ÅledzÄ
cy"
-#: export/Export.cpp:1078
-#: export/Export.cpp:1125
+#: export/Export.cpp:1088 export/Export.cpp:1135
#, c-format
msgid "Output Channels: %2d"
msgstr "KanaÅy wyjÅciowe: %2d"
@@ -6347,97 +6195,106 @@ msgstr "KanaÅy wyjÅciowe: %2d"
msgid "Specify Command Line Encoder"
msgstr "Sprecyzuj Enkoder Linii PoleceÅ"
-#: export/ExportCL.cpp:70
+#: export/ExportCL.cpp:68
msgid "Command Line Export Setup"
msgstr "Ustawienia eksportu Linii PoleceÅ"
-#: export/ExportCL.cpp:75
+#: export/ExportCL.cpp:73
msgid "Command:"
msgstr "Polecenie:"
-#: export/ExportCL.cpp:80
+#: export/ExportCL.cpp:78
msgid "Show output"
msgstr "Pokaż efekt wyjÅciowy"
-#: export/ExportCL.cpp:87
+#: export/ExportCL.cpp:85
#, c-format
msgid "Data will be piped to standard in. \"%f\" will be replaced with output filename selected."
msgstr "Dane zostanÄ
podane standardowo.\"%f\" zostanie zastÄ
pione plikiem zaznaczonym."
-#: export/ExportCL.cpp:222
+#: export/ExportCL.cpp:220
msgid "(external program)"
msgstr "(program zewnÄtrzny)"
-#: export/ExportCL.cpp:253
-#: export/ExportPCM.cpp:457
+#: export/ExportCL.cpp:286 export/ExportPCM.cpp:484
#, c-format
msgid "Cannot export audio to %s"
msgstr "Nie można eksportowaÄ audio do %s"
-#: export/ExportCL.cpp:327
+#: export/ExportCL.cpp:360
msgid "Exporting the selected audio using command-line encoder"
msgstr "Eksportuj zaznaczenie przy użyciu komendy z wiersza poleceÅ"
-#: export/ExportCL.cpp:328
+#: export/ExportCL.cpp:361
msgid "Exporting the entire project using command-line encoder"
msgstr "Eksportowanie caÅego projektu przy użyciu enkodera z lini poleceÅ"
-#: export/ExportCL.cpp:390
+#: export/ExportCL.cpp:423
msgid "Command Output"
msgstr "Polecenie WyjÅciowe"
-#: export/ExportFFmpeg.cpp:59
+#: export/ExportFFmpeg.cpp:61
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
-#: export/ExportFFmpeg.cpp:394
+#: export/ExportFFmpeg.cpp:410
#, c-format
msgid "FFmpeg cannot find audio codec 0x%x.\n"
"Support for this codec is probably not compiled in."
-msgstr ""
+msgstr "FFmpeg nie znalazÅ kodeka dźwiÄku 0x%x.\n"
+"Prawdopodobnie brak wsparcia dla tego kodeka."
-#: export/ExportFFmpeg.cpp:614
+#: export/ExportFFmpeg.cpp:641
#, c-format
msgid "Attempted to export %d channels, but max. channels for selected output format is %d"
-msgstr ""
+msgstr "UsiÅowano wyeksportowaÄ %d kanaÅów, lecz maksymalna iloÅÄ kanaÅów dal zaznaczonego formatu jest %d"
-#: export/ExportFFmpeg.cpp:638
+#: export/ExportFFmpeg.cpp:669
#, fuzzy, c-format
msgid "Exporting selected audio as %s"
msgstr "Eksportowanie zaznaczonego dźwiÄku jako %s"
-#: export/ExportFFmpeg.cpp:639
+#: export/ExportFFmpeg.cpp:670
#, fuzzy, c-format
msgid "Exporting entire file as %s"
msgstr "Eksportowanie caÅego pliku %d kbps"
-#: export/ExportFFmpeg.cpp:702
-#: export/ExportMP3.cpp:1920
+#: export/ExportFFmpeg.cpp:733 export/ExportMP3.cpp:1772
msgid "Invalid sample rate"
msgstr "NiewÅaÅciwa czÄstotliwoÅÄ próbkowania"
-#: export/ExportFFmpeg.cpp:715
+#: export/ExportFFmpeg.cpp:746
#, fuzzy, c-format
msgid "The project sample rate (%d) is not supported by the current output\n"
"file format. "
msgstr "CzÄstotliwoÅÄ próbkowania (%d) nie jest wspierana przez format\n"
"plików MP3."
-#: export/ExportFFmpeg.cpp:718
+#: export/ExportFFmpeg.cpp:749
#, fuzzy, c-format
msgid "The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
"supported by the current output file format. "
msgstr "CzÄstotliwoÅÄ próbkowania (%d) nie jest wspierana przez format\n"
"plików MP3."
-#: export/ExportFFmpeg.cpp:721
-#: export/ExportMP3.cpp:1939
+#: export/ExportFFmpeg.cpp:752 export/ExportMP3.cpp:1791
msgid "You may resample to one of the rates below."
msgstr "Możesz resamplowaÄ do jednej z czÄstotliwoÅci poniżej."
-#: export/ExportFFmpeg.cpp:749
-#: export/ExportMP3.cpp:1962
+#: export/ExportFFmpeg.cpp:780 export/ExportMP3.cpp:1814
msgid "Sample Rates"
msgstr "CzÄstotliwoÅci Próbkowania"
@@ -6446,529 +6303,587 @@ msgstr "CzÄstotliwoÅci Próbkowania"
msgid "Specify AC3 Options"
msgstr "Sprecyzuj Opcje FLAC"
-#: export/ExportFFmpegDialogs.cpp:117
+#: export/ExportFFmpegDialogs.cpp:112
#, fuzzy
msgid "AC3 Export Setup"
msgstr "Ustawienia eksportu FLAC"
-#: export/ExportFFmpegDialogs.cpp:121
-#: export/ExportFFmpegDialogs.cpp:245
-#: export/ExportFFmpegDialogs.cpp:314
-#: export/ExportFFmpegDialogs.cpp:385
-#: export/ExportFFmpegDialogs.cpp:937
-#: export/ExportMP2.cpp:133
+#: export/ExportFFmpegDialogs.cpp:116 export/ExportFFmpegDialogs.cpp:234
+#: export/ExportFFmpegDialogs.cpp:298 export/ExportFFmpegDialogs.cpp:364
+#: export/ExportFFmpegDialogs.cpp:923 export/ExportMP2.cpp:131
msgid "Bit Rate:"
msgstr "CzÄstotliwoÅÄ próbkowania:"
-#: export/ExportFFmpegDialogs.cpp:162
+#: export/ExportFFmpegDialogs.cpp:157
#, fuzzy
msgid "Specify AAC Options"
msgstr "Sprecyzuj Opcje FLAC"
-#: export/ExportFFmpegDialogs.cpp:178
+#: export/ExportFFmpegDialogs.cpp:168
#, fuzzy
msgid "AAC Export Setup"
msgstr "Ustawienia eksportu FLAC"
-#: export/ExportFFmpegDialogs.cpp:217
+#: export/ExportFFmpegDialogs.cpp:926 export/ExportOGG.cpp:84
+msgid "Quality:"
+msgstr "JakoÅÄ:"
+
+#: export/ExportFFmpegDialogs.cpp:211
#, fuzzy
msgid "Specify AMR-NB Options"
msgstr "Sprecyzuj Opcje MP2"
-#: export/ExportFFmpegDialogs.cpp:241
+#: export/ExportFFmpegDialogs.cpp:230
#, fuzzy
msgid "AMR-NB Export Setup"
msgstr "Ustawienia eksportu MP2"
-#: export/ExportFFmpegDialogs.cpp:286
+#: export/ExportFFmpegDialogs.cpp:275
#, fuzzy
msgid "Specify AMR-WB Options"
msgstr "Sprecyzuj Opcje MP2"
-#: export/ExportFFmpegDialogs.cpp:310
+#: export/ExportFFmpegDialogs.cpp:294
#, fuzzy
msgid "AMR-WB Export Setup"
msgstr "Ustawienia eksportu MP2"
-#: export/ExportFFmpegDialogs.cpp:357
+#: export/ExportFFmpegDialogs.cpp:341
#, fuzzy
msgid "Specify WMA Options"
msgstr "Sprecyzuj Opcje MP2"
-#: export/ExportFFmpegDialogs.cpp:381
+#: export/ExportFFmpegDialogs.cpp:360
#, fuzzy
msgid "WMA Export Setup"
msgstr "Ustawienia eksportu MP2"
-#: export/ExportFFmpegDialogs.cpp:509
+#: export/ExportFFmpegDialogs.cpp:488
#, fuzzy, c-format
msgid "Overwrite preset '%s'?"
msgstr "Nadpisz istniejÄ
ce pliki"
-#: export/ExportFFmpegDialogs.cpp:510
+#: export/ExportFFmpegDialogs.cpp:489
#, fuzzy
msgid "Confirm Overwrite"
msgstr "Potwierdź UsuniÄcie"
#: export/ExportFFmpegDialogs.cpp:501
msgid "Please select format before saving a profile"
-msgstr ""
+msgstr "Wybierz format zanim zapiszesz profil"
#: export/ExportFFmpegDialogs.cpp:509
msgid "Please select codec before saving a profile"
-msgstr ""
+msgstr "Wybierz kodek zanim zapiszesz profil"
-#: export/ExportFFmpegDialogs.cpp:580
+#: export/ExportFFmpegDialogs.cpp:579
#, c-format
msgid "Preset '%s' does not exist."
-msgstr ""
+msgstr "Ustawienie '%s' nie istnieje."
-#: export/ExportFFmpegDialogs.cpp:803
+#: export/ExportFFmpegDialogs.cpp:794
#, fuzzy
msgid "Specify Other Options"
msgstr "Sprecyzuj Opcje MP2"
-#: export/ExportFFmpegDialogs.cpp:897
+#: export/ExportFFmpegDialogs.cpp:883
#, fuzzy
msgid "Preset:"
msgstr "Ustawienie"
-#: export/ExportFFmpegDialogs.cpp:898
+#: export/ExportFFmpegDialogs.cpp:884
#, fuzzy
msgid "Load Preset"
msgstr "Ustawienie"
-#: export/ExportFFmpegDialogs.cpp:899
+#: export/ExportFFmpegDialogs.cpp:885
#, fuzzy
msgid "Save Preset"
msgstr "Ustawienie"
-#: export/ExportFFmpegDialogs.cpp:900
+#: export/ExportFFmpegDialogs.cpp:886
#, fuzzy
msgid "Delete Preset"
msgstr "UsuÅ etykiety"
-#: export/ExportFFmpegDialogs.cpp:901
+#: export/ExportFFmpegDialogs.cpp:887
#, fuzzy
msgid "Import Presets"
msgstr "Importuj Etykiety"
-#: export/ExportFFmpegDialogs.cpp:902
+#: export/ExportFFmpegDialogs.cpp:888
#, fuzzy
msgid "Export Presets"
msgstr "Eksportuj etykiety jako:"
-#: export/ExportFFmpegDialogs.cpp:907
+#: export/ExportFFmpegDialogs.cpp:893
msgid "Format:"
msgstr "Format:"
-#: export/ExportFFmpegDialogs.cpp:909
+#: export/ExportFFmpegDialogs.cpp:895
msgid "Codec:"
-msgstr ""
+msgstr "Kodek:"
-#: export/ExportFFmpegDialogs.cpp:913
+#: export/ExportFFmpegDialogs.cpp:899
msgid "Not all formats and codecs are compatible. Some parameters (such as bitrate and samplerate) combinations are not compatible with some codecs too."
-msgstr ""
+msgstr "Nie wszystkie formaty i kodeki sÄ
kompatybilne. Niektóre parametry (jak np czÄstotliwoÅÄ próbkowania) nie sÄ
kompatybilne z niektórymi kodekami."
-#: export/ExportFFmpegDialogs.cpp:916
+#: export/ExportFFmpegDialogs.cpp:902
#, fuzzy
msgid "Format selector:"
msgstr "Dopasuj zaznaczenie"
-#: export/ExportFFmpegDialogs.cpp:917
+#: export/ExportFFmpegDialogs.cpp:903
#, fuzzy
msgid "Codec selector:"
msgstr "Wycisz zaznaczenie"
-#: export/ExportFFmpegDialogs.cpp:919
+#: export/ExportFFmpegDialogs.cpp:905
#, fuzzy
msgid "Show All Formats"
msgstr "Wspierane formaty"
-#: export/ExportFFmpegDialogs.cpp:920
+#: export/ExportFFmpegDialogs.cpp:906
#, fuzzy
msgid "Show All Codecs"
msgstr "Pokaż/Ukryj"
-#: export/ExportFFmpegDialogs.cpp:914
+#: export/ExportFFmpegDialogs.cpp:913
msgid "Options"
-msgstr ""
+msgstr "Opcje"
-#: export/ExportFFmpegDialogs.cpp:931
-#: prefs/GUIPrefs.cpp:166
+#: export/ExportFFmpegDialogs.cpp:917 prefs/GUIPrefs.cpp:166
msgid "Language:"
msgstr "JÄzyk:"
-#: export/ExportFFmpegDialogs.cpp:932
+#: export/ExportFFmpegDialogs.cpp:918
msgid "ISO 639 3-letter language code\n"
"Optional\n"
"empty - automatic"
-msgstr ""
+msgstr "ISO 639 3-literowy kod jÄzyka\n"
+"Opcjonalny\n"
+"pustyempty - automatic"
-#: export/ExportFFmpegDialogs.cpp:934
+#: export/ExportFFmpegDialogs.cpp:920
msgid "Tag:"
-msgstr ""
+msgstr "Tag:"
-#: export/ExportFFmpegDialogs.cpp:935
+#: export/ExportFFmpegDialogs.cpp:921
msgid "Codec tag (FOURCC)\n"
"Optional\n"
"empty - automatic"
-msgstr ""
+msgstr "Tag kodeka (FOURCC)\n"
+"Opcjonalnyl\n"
+"pusty - automatyczny"
-#: export/ExportFFmpegDialogs.cpp:938
+#: export/ExportFFmpegDialogs.cpp:924
msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n"
"Some codecs may only accept specific values (128k, 192k, 256k etc)\n"
"0 - automatic\n"
"Recommended - 192000"
-msgstr ""
-
-#: export/ExportFFmpegDialogs.cpp:940
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr "JakoÅÄ:"
+msgstr "CzÄstotliwoÅÄ próbkowania (bity/na sekundÄ) - wpÅywa na rozmiar pliku i jakoÅÄ\n"
+"Niektóre kodeki akceptujÄ
tylko niektóre wartoÅci (128k, 192k, 256k itp)\n"
+"0 - automatycznie\n"
+"Zalecane - 192000"
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:927
+msgid "Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
-msgstr ""
+msgstr "Ogólna jakoÅÄ, używana różnie przez różne kodeki\n"
+"Wymagane dla vorbis\n"
+"0 - automatycznie\n"
+"-1 - wyÅÄ
czone(użyj czÄstotliwoÅci)"
-#: export/ExportFFmpegDialogs.cpp:943
+#: export/ExportFFmpegDialogs.cpp:929
#, fuzzy
msgid "Sample Rate:"
msgstr "CzÄstotliwoÅci Próbkowania"
-#: export/ExportFFmpegDialogs.cpp:944
+#: export/ExportFFmpegDialogs.cpp:930
msgid "Sample rate (Hz)\n"
"0 - don't change sample rate"
-msgstr ""
+msgstr "CzÄstotliwoÅÄ próbkowania (Hz)\n"
+"0 - nie zmieniaj czÄstotliwoÅci próbkowania"
-#: export/ExportFFmpegDialogs.cpp:946
+#: export/ExportFFmpegDialogs.cpp:932
msgid "Cutoff Bandwidth:"
-msgstr ""
+msgstr "SzerokoÅÄ pasma:"
-#: export/ExportFFmpegDialogs.cpp:947
+#: export/ExportFFmpegDialogs.cpp:936
+#, fuzzy
msgid "Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
-msgstr ""
+"0 - automatic"
+msgstr "SzerokoÅÄ pasma dźwiÄku (Hz)\n"
+"Opcjonalna\n"
+"0 - automatyczna"
-#: export/ExportFFmpegDialogs.cpp:949
+#: export/ExportFFmpegDialogs.cpp:935
msgid "Profile:"
-msgstr ""
+msgstr "Profil:"
-#: export/ExportFFmpegDialogs.cpp:951
+#: export/ExportFFmpegDialogs.cpp:937
msgid "AAC Profile\n"
"Low Complexity -default\n"
"Most players won't play anything other than LC"
-msgstr ""
+msgstr "Profil AAC\n"
+"Niska zÅożonoÅÄ - domyÅlna\n"
+"WiÄkszoÅÄ odtwarzaczy nie odtwarza nic poza LC"
-#: export/ExportFFmpegDialogs.cpp:940
+#: export/ExportFFmpegDialogs.cpp:939
msgid "Use Bit Reservoir"
-msgstr ""
+msgstr "Użyj KawaÅka Rezerwuaru"
-#: export/ExportFFmpegDialogs.cpp:943
+#: export/ExportFFmpegDialogs.cpp:942
msgid "Use Variable Block Length"
-msgstr ""
+msgstr "Użyj Zróżnicowanej DÅugoÅci Bloku"
-#: export/ExportFFmpegDialogs.cpp:948
+#: export/ExportFFmpegDialogs.cpp:947
msgid "FLAC options"
-msgstr ""
+msgstr "Opcje FLAC"
-#: export/ExportFFmpegDialogs.cpp:965
+#: export/ExportFFmpegDialogs.cpp:951
msgid "Compression Level:"
-msgstr ""
+msgstr "Poziom Kompresji:"
-#: export/ExportFFmpegDialogs.cpp:966
+#: export/ExportFFmpegDialogs.cpp:952
msgid "Compression level\n"
"Required for FLAC\n"
"-1 - automatic\n"
"min - 0 (fast encoding, large output file)\n"
"max - 10 (slow encoding, small output file)"
-msgstr ""
+msgstr "Poziom Kompresji\n"
+"Wymagany dla FLAC\n"
+"-1 - automatyczny\n"
+"min - 0 (szybkie odkodowanie, duży plik)\n"
+"max - 10 (wolne odkodowanie, maÅy plik)"
-#: export/ExportFFmpegDialogs.cpp:968
+#: export/ExportFFmpegDialogs.cpp:954
#, fuzzy
msgid "Frame Size:"
msgstr "Rozmiar pÅaszczyzny"
-#: export/ExportFFmpegDialogs.cpp:969
+#: export/ExportFFmpegDialogs.cpp:955
msgid "Frame size\n"
"Optional\n"
"0 - default\n"
"min - 16\n"
"max - 65535"
-msgstr ""
+msgstr "Rozmiar klatki\n"
+"Opcjonalny\n"
+"0 - domyÅlny\n"
+"min - 16\n"
+"max - 65535"
-#: export/ExportFFmpegDialogs.cpp:971
+#: export/ExportFFmpegDialogs.cpp:957
msgid "LPC coefficients precision"
-msgstr ""
+msgstr "Precyzja LPC"
-#: export/ExportFFmpegDialogs.cpp:972
+#: export/ExportFFmpegDialogs.cpp:958
msgid "LPC coefficients precision\n"
"Optional\n"
"0 - default\n"
"min - 1\n"
"max - 15"
-msgstr ""
+msgstr "Precyzja LPC\n"
+"Opcjonalna\n"
+"0 - domyÅlne\n"
+"min - 1\n"
+"max - 15"
-#: export/ExportFFmpegDialogs.cpp:974
+#: export/ExportFFmpegDialogs.cpp:960
msgid "Minimal prediction order"
-msgstr ""
+msgstr "Minimalne zlecenie"
-#: export/ExportFFmpegDialogs.cpp:975
+#: export/ExportFFmpegDialogs.cpp:961
msgid "Minimal prediction order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 32 (with LPC) or 4 (without LPC)"
-msgstr ""
+msgstr "Minimalne zlecenie\n"
+"Opcjonalne\n"
+"-1 - domyÅlne\n"
+"min - 0\n"
+"max - 32 (z LPC) lub 4 (bez LPC)"
-#: export/ExportFFmpegDialogs.cpp:977
+#: export/ExportFFmpegDialogs.cpp:963
msgid "Maximal prediction order"
-msgstr ""
+msgstr "Maksymalne zlecenie"
-#: export/ExportFFmpegDialogs.cpp:978
+#: export/ExportFFmpegDialogs.cpp:964
msgid "Maximal prediction order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 32 (with LPC) or 4 (without LPC)"
-msgstr ""
+msgstr "Maksymalne zlecenie\n"
+"Opcjonalne\n"
+"-1 - domyÅlne\n"
+"min - 0\n"
+"max - 32 (z LPC) lub 4 (bez LPC)"
-#: export/ExportFFmpegDialogs.cpp:980
+#: export/ExportFFmpegDialogs.cpp:966
msgid "Prediction Order Method:"
-msgstr ""
+msgstr "Metoda Zlecenia:"
-#: export/ExportFFmpegDialogs.cpp:982
+#: export/ExportFFmpegDialogs.cpp:968
msgid "Prediction Order Method\n"
"Estimate - fastest, lower compression\n"
"Log search - slowest, best compression\n"
"Full search - default"
-msgstr ""
+msgstr "Metoda Zlecenia\n"
+"Oszacowana - najszybsza, niska kompresja\n"
+"Szukany rejestr - najwolniejsza, najlepsza kompresja\n"
+"PeÅny rejestr - domyÅlna"
-#: export/ExportFFmpegDialogs.cpp:984
+#: export/ExportFFmpegDialogs.cpp:970
msgid "Minimal partition order"
-msgstr ""
+msgstr "Minimalne zlecenie partycji"
-#: export/ExportFFmpegDialogs.cpp:985
+#: export/ExportFFmpegDialogs.cpp:971
msgid "Minimal partition order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 8"
-msgstr ""
+msgstr "Minimalne zlecenie partycji\n"
+"Opcjonalne\n"
+"-1 - domyÅlne\n"
+"min - 0\n"
+"max - 8"
-#: export/ExportFFmpegDialogs.cpp:987
+#: export/ExportFFmpegDialogs.cpp:973
msgid "Maximal partition order"
-msgstr ""
+msgstr "Maksymalne zlecenie partycji"
-#: export/ExportFFmpegDialogs.cpp:988
+#: export/ExportFFmpegDialogs.cpp:974
msgid "Maximal partition order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 8"
-msgstr ""
+msgstr "Maksymalne zlecenie partycji\n"
+"Opcjonalne\n"
+"-1 - domyÅlne\n"
+"min - 0\n"
+"max - 8"
-#: export/ExportFFmpegDialogs.cpp:977
+#: export/ExportFFmpegDialogs.cpp:976
msgid "Use LPC"
-msgstr ""
+msgstr "Użyj LPC"
-#: export/ExportFFmpegDialogs.cpp:984
+#: export/ExportFFmpegDialogs.cpp:983
msgid "MPEG container options"
-msgstr ""
+msgstr "Opcje kontenera MPEG"
-#: export/ExportFFmpegDialogs.cpp:1001
+#: export/ExportFFmpegDialogs.cpp:987
#, fuzzy
msgid "Mux Rate:"
msgstr "CzÄstotliwoÅÄ próbkowania:"
-#: export/ExportFFmpegDialogs.cpp:1002
+#: export/ExportFFmpegDialogs.cpp:988
msgid "Maximum bit rate of the multiplexed stream\n"
"Optional\n"
"0 - default"
-msgstr ""
+msgstr "Maksymalna czÄstotliwoÅÄ próbkowania\n"
+"Opcjonalna\n"
+"0 - domyÅlna"
-#: export/ExportFFmpegDialogs.cpp:1004
+#: export/ExportFFmpegDialogs.cpp:990
#, fuzzy
msgid "Packet Size:"
msgstr "Rozmiar pÅaszczyzny"
-#: export/ExportFFmpegDialogs.cpp:1005
+#: export/ExportFFmpegDialogs.cpp:991
msgid "Packet size\n"
"Optional\n"
"0 - default"
-msgstr ""
+msgstr "Rozmiar paczki \n"
+"Opcjonalny\n"
+"0 - domyÅlny"
-#: export/ExportFFmpegDialogs.cpp:1207
+#: export/ExportFFmpegDialogs.cpp:1206
msgid "You can't delete a preset without name"
-msgstr ""
+msgstr "Nie możesz usunÄ
Ä ustawienia bez nazwy"
-#: export/ExportFFmpegDialogs.cpp:1219
+#: export/ExportFFmpegDialogs.cpp:1210
#, fuzzy, c-format
msgid "Delete preset '%s'?"
msgstr "Nie można usunÄ
Ä %s'"
-#: export/ExportFFmpegDialogs.cpp:1238
+#: export/ExportFFmpegDialogs.cpp:1229
msgid "You can't save a preset without name"
-msgstr ""
+msgstr "Nie możesz zapisaÄ ustawienia bez nazwy"
-#: export/ExportFFmpegDialogs.cpp:1277
+#: export/ExportFFmpegDialogs.cpp:1269
msgid "Select xml file with presets to import"
-msgstr ""
+msgstr "Zaznacz plik xml z ustawieniem do importu"
-#: prefs/KeyConfigPrefs.cpp:202
+#: export/ExportFFmpegDialogs.cpp:1272 export/ExportFFmpegDialogs.cpp:1292
+#: prefs/KeyConfigPrefs.cpp:215
msgid "XML files (*.xml)|*.xml|All files (*.*)|*.*"
msgstr "Pliki xml (*.xml)|*.xml|Wszystkie pliki (*.*)|*.*"
-#: export/ExportFFmpegDialogs.cpp:1292
+#: export/ExportFFmpegDialogs.cpp:1289
#, fuzzy
msgid "Select xml file to export presets into"
msgstr "Zaznacz plik(i) do przetwarzania wsadowego..."
-#: export/ExportFFmpegDialogs.cpp:1361
+#: export/ExportFFmpegDialogs.cpp:1360
msgid "Failed to guess format"
-msgstr ""
+msgstr "Nie odgadniÄto formatu"
-#: export/ExportFFmpegDialogs.cpp:1403
+#: export/ExportFFmpegDialogs.cpp:1402
msgid "Failed to find the codec"
-msgstr ""
-
-#: export/ExportFFmpegDialogs.h:53
-msgid "M4A (AAC) Files (FFmpeg)"
-msgstr ""
+msgstr "Nie znaleziono kodeku"
#: export/ExportFFmpegDialogs.h:54
-msgid "AC3 Files (FFmpeg)"
-msgstr ""
+msgid "M4A (AAC) Files (FFmpeg)"
+msgstr "Pliki M4A (AAC) (FFmpeg)"
#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
-msgstr ""
+msgid "AC3 Files (FFmpeg)"
+msgstr "Pliki AC3 (FFmpeg)"
#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:57
-msgid "WMA (version 2) Files (FFmpeg)"
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:58
+msgid "WMA (version 2) Files (FFmpeg)"
+msgstr "Pliki WMA (wersja 2) (FFmpeg)"
+
+#: export/ExportFFmpegDialogs.h:59
msgid "Custom FFmpeg Export"
-msgstr ""
+msgstr "Eksport FFmpeg"
-#: export/ExportFFmpegDialogs.h:373
+#: export/ExportFFmpegDialogs.h:374
msgid "LTP"
-msgstr ""
+msgstr "LTP"
-#: export/ExportFFmpegDialogs.h:373
+#: export/ExportFFmpegDialogs.h:374
msgid "Low Complexity"
-msgstr ""
+msgstr "Niska zÅożonoÅÄ"
-#: export/ExportFFmpegDialogs.h:373
+#: export/ExportFFmpegDialogs.h:374
#, fuzzy
msgid "Main profile"
msgstr "GÅowny mikser"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
#, fuzzy
msgid "2-level"
msgstr "Poziom:"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
#, fuzzy
msgid "4-level"
msgstr "Poziom:"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
#, fuzzy
msgid "8-level"
msgstr "Poziom:"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "Estimate"
-msgstr ""
+msgstr "Oszacuj"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "Full search"
-msgstr ""
+msgstr "PeÅne szukanie"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "Log search"
-msgstr ""
+msgstr "Szukanie rejestru"
#: export/ExportFLAC.cpp:67
msgid "Specify FLAC Options"
msgstr "Sprecyzuj Opcje FLAC"
-#: export/ExportFLAC.cpp:81
+#: export/ExportFLAC.cpp:79
msgid "0 (fastest)"
msgstr "0 (Najszybsze)"
-#: export/ExportFLAC.cpp:82
+#: export/ExportFLAC.cpp:80
msgid "1"
msgstr "1"
-#: export/ExportFLAC.cpp:83
+#: export/ExportFLAC.cpp:81
msgid "2"
msgstr "2"
-#: export/ExportFLAC.cpp:84
+#: export/ExportFLAC.cpp:82
msgid "3"
msgstr "3"
-#: export/ExportFLAC.cpp:85
+#: export/ExportFLAC.cpp:83
msgid "4"
msgstr "3"
-#: export/ExportFLAC.cpp:86
+#: export/ExportFLAC.cpp:84
msgid "5"
msgstr "5"
-#: export/ExportFLAC.cpp:87
+#: export/ExportFLAC.cpp:85
msgid "6"
msgstr "6"
-#: export/ExportFLAC.cpp:88
+#: export/ExportFLAC.cpp:86
msgid "7"
msgstr "7"
-#: export/ExportFLAC.cpp:89
+#: export/ExportFLAC.cpp:87
msgid "8 (best)"
msgstr "8 (Najlepsze)"
-#: export/ExportFLAC.cpp:92
+#: export/ExportFLAC.cpp:90
msgid "16 bit"
msgstr "16 bitów"
-#: export/ExportFLAC.cpp:93
+#: export/ExportFLAC.cpp:91
msgid "24 bit"
msgstr "24 bity"
-#: export/ExportFLAC.cpp:97
+#: export/ExportFLAC.cpp:95
msgid "FLAC Export Setup"
msgstr "Ustawienia eksportu FLAC"
-#: export/ExportFLAC.cpp:101
+#: export/ExportFLAC.cpp:99
msgid "Level:"
msgstr "Poziom:"
-#: export/ExportFLAC.cpp:103
+#: export/ExportFLAC.cpp:101
msgid "Bit depth:"
msgstr "IloÅÄ bitów:"
-#: export/ExportFLAC.cpp:209
+#: export/ExportFLAC.cpp:207
msgid "FLAC Files"
msgstr "Pliki FLAC"
-#: export/ExportFLAC.cpp:312
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
+#: export/ExportFLAC.cpp:310
msgid "Exporting the selected audio as FLAC"
msgstr "Eksportowanie zaznaczonych dźwiÄków jako FLAC"
-#: export/ExportFLAC.cpp:313
+#: export/ExportFLAC.cpp:311
msgid "Exporting the entire project as FLAC"
msgstr "Eksportowanie caÅego projektu jako FLAC"
@@ -6976,75 +6891,69 @@ msgstr "Eksportowanie caÅego projektu jako FLAC"
msgid "Specify MP2 Options"
msgstr "Sprecyzuj Opcje MP2"
-#: export/ExportMP2.cpp:129
+#: export/ExportMP2.cpp:127
msgid "MP2 Export Setup"
msgstr "Ustawienia eksportu MP2"
-#: export/ExportMP2.cpp:202
+#: export/ExportMP2.cpp:200
msgid "MP2 Files"
msgstr "Pliki MP2"
-#: export/ExportMP2.cpp:232
+#: export/ExportMP2.cpp:230
msgid "Cannot export MP2 with this sample rate and bit rate"
msgstr "Nie można eksportowaÄ MP2 z tÄ
czÄstotliwoÅciÄ
próbkowania"
-#: export/ExportMP2.cpp:243
-#: export/ExportMP3.cpp:1771
-#: export/ExportOGG.cpp:186
+#: export/ExportMP2.cpp:241 export/ExportMP3.cpp:1618 export/ExportOGG.cpp:184
msgid "Unable to open target file for writing"
msgstr "Nie można otworzyÄ pliku do zapisu"
-#: export/ExportMP2.cpp:274
+#: export/ExportMP2.cpp:272
#, c-format
msgid "Exporting selected audio at %d kbps"
msgstr "Eksportowanie zaznaczonego dźwiÄku %d kbps"
-#: export/ExportMP2.cpp:275
+#: export/ExportMP2.cpp:273
#, c-format
msgid "Exporting entire file at %d kbps"
msgstr "Eksportowanie caÅego pliku %d kbps"
-#: export/ExportMP3.cpp:221
-#: export/ExportMP3.cpp:239
-#: export/ExportMP3.cpp:253
+#: export/ExportMP3.cpp:223 export/ExportMP3.cpp:241 export/ExportMP3.cpp:255
msgid "kbps"
msgstr "kbps"
-#: export/ExportMP3.cpp:240
+#: export/ExportMP3.cpp:242
#, fuzzy
msgid "(Best Quality)"
msgstr "JakoÅÄ"
-#: export/ExportMP3.cpp:241
+#: export/ExportMP3.cpp:243
#, fuzzy
msgid "(Smaller files)"
msgstr "9, 45-85 kbps (Mniejsze pliki)"
-#: export/ExportMP3.cpp:243
+#: export/ExportMP3.cpp:245
msgid "Fast"
msgstr "Szybkie"
-#: export/ExportMP3.cpp:244
-#: export/ExportMP3.cpp:250
-#: prefs/GUIPrefs.cpp:41
+#: export/ExportMP3.cpp:246 export/ExportMP3.cpp:252 prefs/GUIPrefs.cpp:41
#: prefs/GUIPrefs.cpp:49
msgid "Standard"
msgstr "Standard"
-#: export/ExportMP3.cpp:248
+#: export/ExportMP3.cpp:250
#, fuzzy
msgid "Insane"
msgstr "&Wstaw"
-#: export/ExportMP3.cpp:249
+#: export/ExportMP3.cpp:251
msgid "Extreme"
-msgstr ""
+msgstr "Ekstremalny"
-#: export/ExportMP3.cpp:251
+#: export/ExportMP3.cpp:253
msgid "Medium"
-msgstr ""
+msgstr "Åredni"
-#: export/ExportMP3.cpp:303
+#: export/ExportMP3.cpp:305
msgid "Specify MP3 Options"
msgstr "Sprecyzuj Opcje MP3"
@@ -7072,8 +6981,7 @@ msgstr "Årednia"
msgid "Constant"
msgstr "StaÅa"
-#: export/ExportMP3.cpp:373
-#: prefs/QualityPrefs.cpp:42
+#: export/ExportMP3.cpp:373 prefs/QualityPrefs.cpp:42
#: prefs/QualityPrefs.cpp:43
msgid "Quality"
msgstr "JakoÅÄ"
@@ -7111,80 +7019,81 @@ msgstr "Aby otrzymaÄ darmowÄ
kopiÄ Lame, kliknij tutaj -->"
#, c-format
msgid "You are linking to lame_enc.dll v%d.%d. This version is not compatible with Audacity %d.%d.%d.\n"
"Please download the latest version of the LAME MP3 library."
-msgstr ""
+msgstr "ÅÄ
czysz do lame_enc.dll v%d.%d. Ta wersja nie wspóÅpracuje z Audacity %d.%d.%d.\n"
+"Pobierz najnowszÄ
wersjÄ biblioteki LAME MP3."
-#: export/ExportMP3.cpp:1094
+#: export/ExportMP3.cpp:1327
msgid "Only lame_enc.dll|lame_enc.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
msgstr "Tylko lame_enc.dll|lame_enc.dll|Biblioteki dynamiczne (*.dll)|*.dll|All Files (*.*)|*"
-#: export/ExportMP3.cpp:1550
+#: export/ExportMP3.cpp:1345
msgid "Only libmp3lame.dylib|libmp3lame.dylib|Dynamic Libraries (*.dylib)|*.dylib|All Files (*)|*"
msgstr "Tylko libmp3lame.dylib|libmp3lame.dylib|Biblioteki dynamiczne (*.dylib)|*.dylib|Wszystkie pliki (*)|*"
-#: export/ExportMP3.cpp:1567
+#: export/ExportMP3.cpp:1363
#, fuzzy
msgid "Only libmp3lame.so.0|libmp3lame.so.0|Primary Shared Object files (*.so)|*.so|Extended Libraries (*.so*)|*.so*|All Files (*)|*"
msgstr "Tylko libmp3lame.so|libmp3lame.so|Podstawowe biblioteki wspóÅdzielone (*.so)|*.so|Biblioteki rozszerzajÄ
ce (*.so*)|*.so*|All Files (*)|*"
-#: export/ExportMP3.cpp:1652
+#: export/ExportMP3.cpp:1499
msgid "MP3 Files"
msgstr "Pliki MP3"
-#: export/ExportMP3.cpp:1676
+#: export/ExportMP3.cpp:1523
msgid "Could not open MP3 encoding library!"
msgstr "Nie można otworzyÄ biblioteki kodeka MP3!"
-#: export/ExportMP3.cpp:1683
+#: export/ExportMP3.cpp:1530
msgid "Not a valid or supported MP3 encoding library!"
msgstr "Nieaktualna lub niewspierana biblioteka MP3!"
-#: export/ExportMP3.cpp:1760
+#: export/ExportMP3.cpp:1607
msgid "Unable to initialize MP3 stream"
msgstr "Nie można zainicjowaÄ strumienia MP3"
-#: export/ExportMP3.cpp:1802
+#: export/ExportMP3.cpp:1650
#, c-format
msgid "Exporting selected audio with %s preset"
msgstr "Eksportowanie zaznaczonego dźwiÄku z ustawieniem %s"
-#: export/ExportMP3.cpp:1803
+#: export/ExportMP3.cpp:1651
#, c-format
msgid "Exporting entire file with %s preset"
msgstr "Eksportowanie caÅego pliku z ustawieniem %s"
-#: export/ExportMP3.cpp:1808
+#: export/ExportMP3.cpp:1656
#, c-format
msgid "Exporting selected audio with VBR quality %s"
msgstr "Eksportowanie zaznaczonego dźwiÄku z jakoÅciÄ
VBR %s"
-#: export/ExportMP3.cpp:1809
+#: export/ExportMP3.cpp:1657
#, c-format
msgid "Exporting entire file with VBR quality %s"
msgstr "Eksportowanie caÅego pliku z jakoÅciÄ
VBR %s"
-#: export/ExportMP3.cpp:1814
+#: export/ExportMP3.cpp:1662
#, c-format
msgid "Exporting selected audio at %d Kbps"
msgstr "Eksportowanie zaznaczonego dźwiÄku %d Kbps"
-#: export/ExportMP3.cpp:1815
+#: export/ExportMP3.cpp:1663
#, c-format
msgid "Exporting entire file at %d Kbps"
msgstr "Eksportowanie caÅego pliku %d Kbps"
-#: export/ExportMP3.cpp:1849
+#: export/ExportMP3.cpp:1697
#, c-format
msgid "Error %d returned from MP3 encoder"
msgstr "BÅÄ
d %d zwrócony z enkodera MP3"
-#: export/ExportMP3.cpp:1933
+#: export/ExportMP3.cpp:1785
#, c-format
msgid "The project sample rate (%d) is not supported by the MP3\n"
"file format. "
msgstr "CzÄstotliwoÅÄ próbkowania (%d) nie jest wspierana przez format\n"
"plików MP3."
-#: export/ExportMP3.cpp:1936
+#: export/ExportMP3.cpp:1788
#, c-format
msgid "The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
"supported by the MP3 file format. "
@@ -7193,16 +7102,14 @@ msgstr "CzÄstotliwoÅÄ próbkowania (%d) nie jest wspierana przez format\n"
#: export/ExportMP3.cpp:1965
msgid "MP3 export library not found"
-msgstr ""
+msgstr "Nie znaleziono biblioteki eksportu MP3"
-#: export/ExportMultiple.cpp:96
-#: export/ExportMultiple.cpp:426
-#: export/ExportMultiple.cpp:667
-#: export/ExportMultiple.cpp:834
+#: export/ExportMultiple.cpp:93 export/ExportMultiple.cpp:424
+#: export/ExportMultiple.cpp:670 export/ExportMultiple.cpp:847
msgid "Export Multiple"
msgstr "Wielokrotny eksport"
-#: export/ExportMultiple.cpp:166
+#: export/ExportMultiple.cpp:163
msgid "If you have more than one Audio Track, you can export each track as a separate file,\n"
"or if you have a Label Track, you can export a new file for each label.\n"
"\n"
@@ -7212,95 +7119,111 @@ msgstr "Jeżeli masz wiÄcej niż jednÄ
ÅcieżkÄ audio, możesz eksportowaÄ
"\n"
"Ten projekt nie ma wiÄcej niż jedna Åcieżka lub nie posiada Åcieżki etykiet, stÄ
d nie można "
-#: export/ExportMultiple.cpp:167
+#: export/ExportMultiple.cpp:164
msgid "Can't export multiple files"
msgstr "Nie można eksportowaÄ wielu plików"
-#: export/ExportMultiple.cpp:232
+#: export/ExportMultiple.cpp:229
msgid "Export format:"
msgstr "Format eksportu:"
-#: export/ExportMultiple.cpp:237
+#: export/ExportMultiple.cpp:234
msgid "Options..."
msgstr "Opcje..."
-#: export/ExportMultiple.cpp:241
+#: export/ExportMultiple.cpp:238
msgid "Export location:"
msgstr "Lokalizacja eksportu:"
-#: export/ExportMultiple.cpp:245
-#: prefs/DirectoriesPrefs.cpp:92
-msgid "Choose..."
-msgstr "Wybierz..."
-
-#: export/ExportMultiple.cpp:246
+#: export/ExportMultiple.cpp:243
msgid "Create"
msgstr "Twórz"
-#: export/ExportMultiple.cpp:253
+#: export/ExportMultiple.cpp:250
msgid "Split files based on:"
msgstr "Podziel pliki na podstawie:"
-#: export/ExportMultiple.cpp:262
-#: export/ExportMultiple.cpp:264
+#: export/ExportMultiple.cpp:259 export/ExportMultiple.cpp:261
msgid "Labels"
msgstr "Etykiety"
-#: export/ExportMultiple.cpp:269
+#: export/ExportMultiple.cpp:266
msgid "Include audio before first label"
msgstr "DoÅÄ
cz audio przed pierwszÄ
etykietÄ
"
-#: export/ExportMultiple.cpp:275
+#: export/ExportMultiple.cpp:272
msgid "First file name:"
msgstr "Nazwa pierwszego pliku:"
-#: export/ExportMultiple.cpp:280
+#: export/ExportMultiple.cpp:277
#, fuzzy
msgid "First file name"
msgstr "Nazwa pierwszego pliku:"
-#: export/ExportMultiple.cpp:288
-#: export/ExportMultiple.cpp:290
-msgid "Tracks"
-msgstr "Åcieżki"
-
-#: export/ExportMultiple.cpp:297
+#: export/ExportMultiple.cpp:294
msgid "Name files:"
msgstr "Nazwij pliki:"
-#: export/ExportMultiple.cpp:306
-#: export/ExportMultiple.cpp:308
+#: export/ExportMultiple.cpp:303 export/ExportMultiple.cpp:305
msgid "Using Label/Track Name"
msgstr "Użyj Etykiety/Nazwy Åcieżki"
-#: export/ExportMultiple.cpp:314
-#: export/ExportMultiple.cpp:316
+#: export/ExportMultiple.cpp:311 export/ExportMultiple.cpp:313
msgid "Numbering consecutively"
msgstr "Numeracja narastajÄ
ca"
-#: export/ExportMultiple.cpp:322
+#: export/ExportMultiple.cpp:319
msgid "File name prefix:"
msgstr "Rozszerzenie pliku:"
-#: export/ExportMultiple.cpp:327
+#: export/ExportMultiple.cpp:324
#, fuzzy
msgid "File name prefix"
msgstr "Rozszerzenie pliku:"
-#: export/ExportMultiple.cpp:341
+#: export/ExportMultiple.cpp:338
msgid "Overwrite existing files"
msgstr "Nadpisz istniejÄ
ce pliki"
-#: export/ExportMultiple.cpp:424
+#: export/ExportMultiple.cpp:422
#, c-format
msgid "\"%s\" successfully created."
msgstr "\"%s\" utworzone."
-#: export/ExportMultiple.cpp:433
+#: export/ExportMultiple.cpp:431
msgid "Choose a location to save the exported files"
msgstr "OkreÅl lokalizacjÄ dla eksportowanych plików"
-#: export/ExportMultiple.cpp:539
+#: export/ExportMultiple.cpp:524
+#, c-format
+msgid "Successfully exported the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:527
+#, c-format
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr ""
+
+#: export/ExportMultiple.cpp:538
#, c-format
msgid "\"%s\" doesn't exist.\n"
"\n"
@@ -7309,113 +7232,100 @@ msgstr "\"%s\" nie istnieje.\n"
"\n"
"Czy chcesz go stworzyÄ?"
-#: export/ExportMultiple.cpp:637
-#: export/ExportMultiple.cpp:772
+#: export/ExportMultiple.cpp:640 export/ExportMultiple.cpp:785
#, fuzzy
msgid "Edit metadata"
msgstr "Edytuj Metadane"
-#: export/ExportMultiple.cpp:664
-#: export/ExportMultiple.cpp:831
-#, c-format
-msgid "Successfully exported %d file(s)."
-msgstr "Eksport zakoÅczyÅ siÄ %d sukcesem."
-
-#: export/ExportMultiple.cpp:665
-#: export/ExportMultiple.cpp:832
-#, c-format
-msgid "Something went wrong after exporting %d file(s)."
-msgstr "Po eksporcie %d pliku(ów) nastÄ
piÅ nieoczekiwany bÅÄ
d."
-
-#: export/ExportMultiple.cpp:881
+#: export/ExportMultiple.cpp:899
#, c-format
msgid "Label %s is not a legal file name. You cannot use any of: %s\n"
"Use..."
-msgstr ""
+msgstr "Etykieta %s jest niewÅaÅciwÄ
nazwÄ
pliku. Nie możesz użyÄ Å¼adnych z: %s\n"
+"Uzyj..."
#: export/ExportOGG.cpp:64
msgid "Specify Ogg Vorbis Options"
msgstr "Sprecyzuj Opcje Ogg Vorbis"
-#: export/ExportOGG.cpp:81
+#: export/ExportOGG.cpp:79
msgid "Ogg Vorbis Export Setup"
msgstr "Ustawienia Eksportu Ogg Vorbis"
-#: export/ExportOGG.cpp:157
+#: export/ExportOGG.cpp:155
msgid "Ogg Vorbis Files"
msgstr "Pliki Ogg Vorbis"
-#: export/ExportOGG.cpp:257
+#: export/ExportOGG.cpp:255
msgid "Exporting the selected audio as Ogg Vorbis"
msgstr "Eksportuj zaznaczenie jako Ogg Vorbis"
-#: export/ExportOGG.cpp:258
+#: export/ExportOGG.cpp:256
msgid "Exporting the entire project as Ogg Vorbis"
msgstr "Eksportuj caÅy projekt jako Ogg Vorbis"
-#: export/ExportPCM.cpp:116
+#: export/ExportPCM.cpp:119
#, fuzzy
msgid "Specify Uncompressed Options"
msgstr "Sprecyzuj Opcje Ogg Vorbis"
-#: export/ExportPCM.cpp:185
+#: export/ExportPCM.cpp:189
msgid "Uncompressed Export Setup"
msgstr "Ustawienia eksportu nieskompresowanego"
-#: export/ExportPCM.cpp:191
+#: export/ExportPCM.cpp:195
msgid "Header:"
msgstr "NagÅówek:"
-#: export/ExportPCM.cpp:195
-#: import/ImportRaw.cpp:366
+#: export/ExportPCM.cpp:199 import/ImportRaw.cpp:369
#, fuzzy
msgid "Encoding:"
msgstr "Kodowanie: "
-#: export/ExportPCM.cpp:200
+#: export/ExportPCM.cpp:204
msgid "(Not all combinations of headers and encodings are possible.)"
msgstr "(Nie wszystkie kombinacje nagÅówkówi kodowaÅ sÄ
możliwe.)"
-#: export/ExportPCM.cpp:369
+#: export/ExportPCM.cpp:359
#, fuzzy
msgid "Other uncompressed files"
msgstr "Podczas importowania nieskompresowanych plików audio"
-#: export/ExportPCM.cpp:361
+#: export/ExportPCM.cpp:377
msgid "AIFF (Apple) signed 16 bit PCM"
-msgstr ""
+msgstr "16 bitowe PCM AIFF (Apple)"
-#: export/ExportPCM.cpp:351
+#: export/ExportPCM.cpp:388
msgid "WAV (Microsoft) signed 16 bit PCM"
-msgstr ""
+msgstr "16 bitowe PCM WAV (Microsoft)"
-#: export/ExportPCM.cpp:387
+#: export/ExportPCM.cpp:399
msgid "GSM 6.10 WAV (mobile)"
-msgstr ""
+msgstr "GSM 6.10 WAV (mobilne)"
-#: export/ExportPCM.cpp:449
+#: export/ExportPCM.cpp:476
msgid "Cannot export audio in this format."
msgstr "Nie można eksportowaÄ danych w tym formacie."
-#: export/ExportPCM.cpp:491
+#: export/ExportPCM.cpp:518
#, c-format
msgid "Exporting the selected audio as %s"
msgstr "Eksportowanie zaznaczonego dźwiÄku jako %s"
-#: export/ExportPCM.cpp:493
+#: export/ExportPCM.cpp:520
#, c-format
msgid "Exporting the entire project as %s"
msgstr "Eksportowanie caÅego projektu jako %s"
#. i18n-hint: %s will be the error message from libsndfile
-#: export/ExportPCM.cpp:531
+#: export/ExportPCM.cpp:556
#, c-format
msgid "Error (file may not have been written): %s"
msgstr "BÅÄ
d (możliwe że plik nie zostaŠzapisany): %hs"
#: export/ExportPCM.cpp:723
msgid "There are no options for this format.\n"
-msgstr ""
+msgstr "Nie ma żadnych opcji dla tego formatu.\n"
#. i18n-hint: This is pointing users at another possible export format in
#. * the list. So you should translate the quoted string
@@ -7423,35 +7333,34 @@ msgstr ""
#. * when it comes up on it's own.
#: export/ExportPCM.cpp:728
msgid "If you need more control over the export format please use the 'Other uncompressed files' format."
-msgstr ""
+msgstr "JeÅli potrzebujesz wiÄcej kontroli nad formatem eksportu użyj 'Innego nieskompresowanego' formatu plików."
#: export/ExportPCM.cpp:733
msgid "Your file will be exported as a 16-bit AIFF (Apple/SGI) file.\n"
-msgstr ""
+msgstr "Twój plik zostanie wyeksportowany jako 16-bitowy plik AIFF (Apple/SGI).\n"
#: export/ExportPCM.cpp:738
msgid "Your file will be exported as a 16-bit WAV (Microsoft) file.\n"
-msgstr ""
+msgstr "Twój plik zostanie wyeksportowany jako 16-bitowy plik WAV (Microsoft).\n"
#: export/ExportPCM.cpp:743
msgid "Your file will be exported as a GSM 6.10 WAV file.\n"
-msgstr ""
+msgstr "Twój plik zostanie wyeksportowany jako plik GSM 6.10 WAV).\n"
-#: import/Import.cpp:156
-#: import/ImportMP3.cpp:47
+#: import/Import.cpp:162 import/ImportMP3.cpp:47
msgid "MP3 files"
msgstr "Pliki MP3"
-#: import/Import.cpp:175
+#: import/Import.cpp:181
msgid "Select stream(s) to import"
-msgstr ""
+msgstr "Zaznacz żródÅo(a) do importu"
-#: import/Import.cpp:227
+#: import/Import.cpp:234
#, c-format
msgid "This version of Audacity was not compiled with %s support."
msgstr "Ta wersja Audacity nie byÅa kompilowane ze wsparciem %s."
-#: import/Import.cpp:240
+#: import/Import.cpp:247
#, fuzzy, c-format
msgid "\"%s\" \n"
"is a MIDI file, not an audio file. \n"
@@ -7462,7 +7371,7 @@ msgstr "\"%s\" jesy plikiem Advanced Audio Coding. \n"
"PowinieneÅ je przekonwertowaÄ do wspieranych formatów takich jak WAV lub AIFF."
#. i18n-hint: %s will be the filename
-#: import/Import.cpp:250
+#: import/Import.cpp:257
#, c-format
msgid "\"%s\" is an audio CD track. \n"
"Audacity cannot open audio CDs directly. \n"
@@ -7473,7 +7382,7 @@ msgstr "\"%s\" jest ÅcieżkÄ
audio. \n"
"Wypakuj Åcieżki do formatu, który \n"
"Audacity może importowaÄ, jak na przykÅad WAV lub AIFF."
-#: import/Import.cpp:256
+#: import/Import.cpp:263
#, c-format
msgid "\"%s\" is a playlist file. \n"
"Audacity cannot open this file because it only contains links to other files. \n"
@@ -7482,7 +7391,7 @@ msgstr "jest plikiem listy.\n"
"Audacity nie może otworzyÄ tego pliku, ponieważ zawiera on tylko linki do innych plików.\n"
"Możesz go otworzyÄ w edytorze tekstowym i pobraÄ wÅaÅciwe pliki dźwiÄkowe."
-#: import/Import.cpp:261
+#: import/Import.cpp:268
#, c-format
msgid "\"%s\" is a Windows Media Audio file. \n"
"Audacity cannot open this type of file due to patent restrictions. \n"
@@ -7491,7 +7400,7 @@ msgstr "\"%s\" jest plikiem Windows Media Audio. \n"
"Audacity nie otwiera tych plików z powodów patentowych. \n"
"PowinieneÅ przekonwertowaÄ ten plik do formatu takiego jak WAV lub AIFF."
-#: import/Import.cpp:266
+#: import/Import.cpp:273
#, c-format
msgid "\"%s\" is an Advanced Audio Coding file. \n"
"Audacity cannot open this type of file. \n"
@@ -7500,7 +7409,7 @@ msgstr "\"%s\" jesy plikiem Advanced Audio Coding. \n"
"Audacity nie otwiera tych plików. \n"
"PowinieneÅ je przekonwertowaÄ do wspieranych formatów takich jak WAV lub AIFF."
-#: import/Import.cpp:271
+#: import/Import.cpp:278
#, fuzzy, c-format
msgid "\"%s\" is an encrypted audio file. \n"
"These typically are from an online music store. \n"
@@ -7512,7 +7421,7 @@ msgstr "\"%s\" jest zakodowanym plikiem. Pliki te pochodzÄ
zazwyczaj z internet
"Spróbuj zgraÄ plik w Audacity lub wypal go na pÅytÄ, a nastÄpnie \n"
"wypakuj ÅcieżkÄ do formatu wspieranego takiego jak WAV lub AIFF."
-#: import/Import.cpp:276
+#: import/Import.cpp:283
#, c-format
msgid "\"%s\" is a RealPlayer media file. \n"
"Audacity cannot open this proprietary format. \n"
@@ -7521,7 +7430,7 @@ msgstr "\"%s\" jest plikiem RealPlayer. \n"
"Audacity nie może otworzyÄ tego pliku. \n"
"PowinieneÅ go przekonwertowaÄ do wspieranego formatu, takiego jak WAV lub AIFF."
-#: import/Import.cpp:282
+#: import/Import.cpp:289
#, fuzzy, c-format
msgid "\"%s\" is a notes-based file, not an audio file. \n"
"Audacity cannot open this type of file. \n"
@@ -7531,7 +7440,7 @@ msgstr "\"%s\" jesy plikiem Advanced Audio Coding. \n"
"Audacity nie otwiera tych plików. \n"
"PowinieneÅ je przekonwertowaÄ do wspieranych formatów takich jak WAV lub AIFF."
-#: import/Import.cpp:288
+#: import/Import.cpp:295
#, fuzzy, c-format
msgid "\"%s\" is a Musepack audio file. \n"
"Audacity cannot open this type of file. \n"
@@ -7542,7 +7451,7 @@ msgstr "\"%s\" jest plikiem Windows Media Audio. \n"
"Audacity nie otwiera tych plików z powodów patentowych. \n"
"PowinieneÅ przekonwertowaÄ ten plik do formatu takiego jak WAV lub AIFF."
-#: import/Import.cpp:294
+#: import/Import.cpp:301
#, fuzzy, c-format
msgid "\"%s\" is a Wavpack audio file. \n"
"Audacity cannot open this type of file. \n"
@@ -7551,7 +7460,7 @@ msgstr "\"%s\" jesy plikiem Advanced Audio Coding. \n"
"Audacity nie otwiera tych plików. \n"
"PowinieneÅ je przekonwertowaÄ do wspieranych formatów takich jak WAV lub AIFF."
-#: import/Import.cpp:300
+#: import/Import.cpp:307
#, fuzzy, c-format
msgid "\"%s\" is a Dolby Digital audio file. \n"
"Audacity cannot currently open this type of file. \n"
@@ -7560,7 +7469,7 @@ msgstr "\"%s\" jesy plikiem Advanced Audio Coding. \n"
"Audacity nie otwiera tych plików. \n"
"PowinieneÅ je przekonwertowaÄ do wspieranych formatów takich jak WAV lub AIFF."
-#: import/Import.cpp:306
+#: import/Import.cpp:313
#, fuzzy, c-format
msgid "\"%s\" is an Ogg Speex audio file. \n"
"Audacity cannot currently open this type of file. \n"
@@ -7569,7 +7478,7 @@ msgstr "\"%s\" jesy plikiem Advanced Audio Coding. \n"
"Audacity nie otwiera tych plików. \n"
"PowinieneÅ je przekonwertowaÄ do wspieranych formatów takich jak WAV lub AIFF."
-#: import/Import.cpp:312
+#: import/Import.cpp:319
#, fuzzy, c-format
msgid "\"%s\" is a video file. \n"
"Audacity cannot currently open this type of file. \n"
@@ -7578,14 +7487,14 @@ msgstr "\"%s\" jesy plikiem Advanced Audio Coding. \n"
"Audacity nie otwiera tych plików. \n"
"PowinieneÅ je przekonwertowaÄ do wspieranych formatów takich jak WAV lub AIFF."
-#: import/Import.cpp:317
+#: import/Import.cpp:324
#, fuzzy, c-format
msgid "Audacity did not recognize the type of the file '%s'.\n"
"If it is uncompressed, try importing it using \"Import Raw\"."
msgstr "Audacity nie rozpoznaÅo formatu tego pliku.\n"
"Jeżeli jest nieskopresowany, to spróbuj opcji \"Importuj RAW\""
-#: import/Import.cpp:322
+#: import/Import.cpp:329
#, fuzzy, c-format
msgid "Audacity recognized the type of the file '%s',\n"
"but was unable to import it."
@@ -7594,17 +7503,21 @@ msgstr "Audacity nie rozpoznaÅo formatu tego pliku.\n"
#: import/ImportFFmpeg.cpp:34
msgid "FFmpeg-compatible files"
-msgstr ""
+msgstr "Pliki kompatybilne z FFmpeg"
-#: import/ImportFFmpeg.cpp:431
+#: import/ImportFFmpeg.cpp:438
#, c-format
msgid "Index[%02x] Codec[%S], Language[%S], Bitrate[%S], Channels[%d], Duration[%d]"
-msgstr ""
+msgstr "Indeks[%02x] Kodek[%S], JÄzyk[%S], CzÄstotliwoÅÄ próbkowania[%S], KanaÅy[%d], DÅugoÅÄ[%d]"
#: import/ImportFLAC.cpp:43
msgid "FLAC files"
msgstr "Pliki FLAC"
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr "Pliki kompatybilne z GStreamer"
+
#: import/ImportLOF.cpp:95
msgid "List of Files in basic text format"
msgstr "Lista plików w podstawowym formacie tekstowym"
@@ -7616,9 +7529,7 @@ msgstr "NieprawidÅowe przesuniÄcie okna w pliku LOF."
# i18n-hint: You do not need to translate "LOF"
#. i18n-hint: You do not need to translate "LOF"
-#: import/ImportLOF.cpp:316
-#: import/ImportLOF.cpp:337
-#: import/ImportLOF.cpp:418
+#: import/ImportLOF.cpp:316 import/ImportLOF.cpp:337 import/ImportLOF.cpp:418
#: import/ImportLOF.cpp:439
msgid "LOF Error"
msgstr "BÅÄ
d LOF"
@@ -7642,11 +7553,9 @@ msgstr "NieprawidÅowe przesuniÄcie Åcieżki w pliku LOF."
#: import/ImportMIDI.cpp:31
msgid ": Filename too short."
-msgstr ""
+msgstr ": Nazwa pliku zbyt krótka"
-#: import/ImportMIDI.cpp:31
-#: import/ImportMIDI.cpp:39
-#: import/ImportMIDI.cpp:45
+#: import/ImportMIDI.cpp:31 import/ImportMIDI.cpp:39 import/ImportMIDI.cpp:45
#: import/ImportMIDI.cpp:53
#, fuzzy
msgid "Could not open file "
@@ -7654,7 +7563,7 @@ msgstr "Nie można otworzyÄ pliku:"
#: import/ImportMIDI.cpp:39
msgid ": Incorrect filetype."
-msgstr ""
+msgstr ": Niepoprawny rodzaj pliku."
#: import/ImportOGG.cpp:44
msgid "Ogg Vorbis files"
@@ -7680,17 +7589,16 @@ msgstr "ZÅy nagÅówek strumienia Vorbis"
msgid "Internal logic fault"
msgstr "WewnÄtrzny bÅÄ
d logiczny"
-#: import/ImportPCM.cpp:54
+#: import/ImportPCM.cpp:66
msgid "WAV, AIFF, and other uncompressed types"
msgstr "WAV, AIFF i inne nieskompresowane rodzaje"
-#: import/ImportPlugin.h:142
-#: import/ImportRaw.cpp:203
+#: import/ImportPlugin.h:135 import/ImportRaw.cpp:203
#, fuzzy, c-format
msgid "Importing %s"
msgstr "Importowanie %s..."
-#: import/ImportQT.cpp:21
+#: import/ImportQT.cpp:18
msgid "QuickTime files"
msgstr "Pliki QuickTime"
@@ -7699,7 +7607,7 @@ msgstr "Pliki QuickTime"
msgid "Import Raw"
msgstr "Importuj Surowe Dane"
-#: import/ImportRaw.cpp:282
+#: import/ImportRaw.cpp:285
msgid "Import Raw Data"
msgstr "Importuj Surowe Dane"
@@ -7707,66 +7615,66 @@ msgstr "Importuj Surowe Dane"
# know the correct technical word.
#. i18n-hint: Refers to byte-order. Don't translate "endianness" if you don't
#. know the correct technical word.
-#: import/ImportRaw.cpp:327
+#: import/ImportRaw.cpp:330
msgid "No endianness"
msgstr "Bez endianness"
#. i18n-hint: Refers to byte-order. Don't translate this if you don't
#. know the correct technical word.
-#: import/ImportRaw.cpp:330
+#: import/ImportRaw.cpp:333
msgid "Little-endian"
msgstr "Little-endian"
#. i18n-hint: Refers to byte-order. Don't translate this if you don't
#. know the correct technical word.
-#: import/ImportRaw.cpp:333
+#: import/ImportRaw.cpp:336
msgid "Big-endian"
msgstr "Big-endian"
#. i18n-hint: Refers to byte-order. Don't translate "endianness" if you don't
#. know the correct technical word.
-#: import/ImportRaw.cpp:336
+#: import/ImportRaw.cpp:339
msgid "Default endianness"
msgstr "Standardowy endianess"
-#: import/ImportRaw.cpp:355
+#: import/ImportRaw.cpp:358
msgid "1 Channel (Mono)"
msgstr "1 kanaÅ (Mono)"
-#: import/ImportRaw.cpp:356
+#: import/ImportRaw.cpp:359
msgid "2 Channels (Stereo)"
msgstr "2 kanaÅy (Stereo)"
-#: import/ImportRaw.cpp:358
+#: import/ImportRaw.cpp:361
#, c-format
msgid "%d Channels"
msgstr "%d kanaÅów"
-#: import/ImportRaw.cpp:369
+#: import/ImportRaw.cpp:372
#, fuzzy
msgid "Byte order:"
msgstr "Tryb CzÄstotliwoÅci Próbkowania"
-#: import/ImportRaw.cpp:372
+#: import/ImportRaw.cpp:375
#, fuzzy
msgid "Channels:"
msgstr "KanaÅy"
-#: import/ImportRaw.cpp:382
+#: import/ImportRaw.cpp:385
msgid "Start offset:"
msgstr "PoczÄ
tek przesuniÄcia:"
-#: import/ImportRaw.cpp:388
+#: import/ImportRaw.cpp:391
msgid "Amount to import:"
msgstr "WielkoÅÄ do importu:"
-#: import/ImportRaw.cpp:394
+#: import/ImportRaw.cpp:397
msgid "Sample rate:"
msgstr "CzÄstotliwoÅÄ próbkowania:"
#: ondemand/ODComputeSummaryTask.h:47
msgid "Import complete. Calculating waveform"
-msgstr ""
+msgstr "Import niekompletny."
#: ondemand/ODDecodeTask.h:61
#, fuzzy
@@ -7776,158 +7684,61 @@ msgstr "Przebieg czasowy"
#: ondemand/ODWaveTrackTaskQueue.cpp:327
#, c-format
msgid "%s %2.0f%% complete. Click to change task focal point."
-msgstr ""
+msgstr "%s %2.0f%% kompletne. Kliknij aby zmieniÄ punkt centralny."
-#: prefs/AudioIOPrefs.cpp:41
-#: prefs/AudioIOPrefs.cpp:42
-#: prefs/MidiIOPrefs.cpp:44
-#: prefs/MidiIOPrefs.cpp:45
-msgid "Audio I/O"
-msgstr "Audio I/O"
+#: prefs/BatchPrefs.cpp:55 prefs/BatchPrefs.cpp:56
+msgid "Batch"
+msgstr "Wsad"
-#: prefs/AudioIOPrefs.cpp:102
-#: prefs/MidiIOPrefs.cpp:99
-msgid "1 (Mono)"
-msgstr "1 (Mono)"
+#: prefs/BatchPrefs.cpp:77 prefs/GUIPrefs.cpp:92
+msgid "Behaviors"
+msgstr "Zachowania"
-#: prefs/AudioIOPrefs.cpp:103
-#: prefs/MidiIOPrefs.cpp:100
-msgid "2 (Stereo)"
-msgstr "2 (Stereo)"
+#: prefs/BatchPrefs.cpp:80
+msgid "&Don't apply effects in batch mode"
+msgstr "&Nie stosuje efektów w trybie wsadowym"
-#: prefs/AudioIOPrefs.cpp:117
-#: prefs/MidiIOPrefs.cpp:114
-msgid "Playback"
-msgstr "Odtwarzanie"
+#: prefs/BatchPrefs.cpp:83 prefs/GUIPrefs.cpp:132
+msgid "Cl&eanSpeech Mode (Customized GUI)"
+msgstr "Tryb czystej mowy"
-#: prefs/AudioIOPrefs.cpp:121
-#: prefs/AudioIOPrefs.cpp:139
-#: prefs/MidiIOPrefs.cpp:118
-#: prefs/MidiIOPrefs.cpp:136
-#: toolbars/DeviceToolBar.cpp:57
-msgid "Device"
-msgstr "UrzÄ
dzenie"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:34 prefs/GUIPrefs.cpp:35
+msgid "Interface"
+msgstr "WyglÄ
d"
+
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
+msgstr ""
-#: prefs/AudioIOPrefs.cpp:124
-#: prefs/MidiIOPrefs.cpp:121
+#: prefs/AudioIOPrefs.cpp:126 prefs/MidiIOPrefs.cpp:121
msgid "Using:"
msgstr "UżywajÄ
c:"
-#: prefs/AudioIOPrefs.cpp:125
-#: prefs/MidiIOPrefs.cpp:122
-msgid "Portaudio v"
-msgstr "Port dźwiÄkowy v"
+#: prefs/AudioIOPrefs.cpp:119 prefs/MidiIOPrefs.cpp:114
+msgid "Playback"
+msgstr "Odtwarzanie"
-#: prefs/AudioIOPrefs.cpp:135
-#: prefs/MidiIOPrefs.cpp:132
+#: prefs/AudioIOPrefs.cpp:137 prefs/MidiIOPrefs.cpp:132
msgid "Recording"
msgstr "Nagrywanie"
-#: prefs/AudioIOPrefs.cpp:141
-#: prefs/MidiIOPrefs.cpp:138
+#: prefs/AudioIOPrefs.cpp:143 prefs/MidiIOPrefs.cpp:138
msgid "Channels"
msgstr "KanaÅy"
-#: prefs/AudioIOPrefs.cpp:147
-#: prefs/MidiIOPrefs.cpp:144
-msgid "Playthrough"
-msgstr "Odtwarzanie"
-
-#: prefs/AudioIOPrefs.cpp:149
-#, fuzzy
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr "&Odtwarzaj inne Åcieżki podczas nagrywania nowej"
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr "&Odtwarzanie sprzÄtowe: Odtwarzaj ÅcieżkÄ podczas nagrywania jej"
-
-#: prefs/AudioIOPrefs.cpp:154
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr "&Odtwarzanie programowe: Odtwarzaj ÅcieżkÄ podczas nagrywania jej"
-
-#: prefs/AudioIOPrefs.cpp:157
-#, fuzzy
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr "&Odtwarzanie programowe: Odtwarzaj ÅcieżkÄ podczas nagrywania jej"
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:168
-#: prefs/MidiIOPrefs.cpp:193
-msgid "Effects Preview"
-msgstr "PodglÄ
d efektów"
-
-#: prefs/AudioIOPrefs.cpp:171
-msgid "Length of preview:"
-msgstr "DÅugoÅÄ podglÄ
du:"
-
-#: prefs/AudioIOPrefs.cpp:176
-#: prefs/MidiIOPrefs.cpp:157
-msgid "Cut Preview"
-msgstr "Wytnij PodglÄ
d"
-
-#: prefs/AudioIOPrefs.cpp:179
-msgid "Preview before cut region:"
-msgstr "PodglÄ
d przed obszarem obciÄcia:"
-
-#: prefs/AudioIOPrefs.cpp:181
-msgid "Preview after cut region:"
-msgstr "PodglÄ
d po obszarze obciÄcia:"
-
-#: prefs/AudioIOPrefs.cpp:189
-#: prefs/MidiIOPrefs.cpp:167
-msgid "Latency"
-msgstr "BezczynnoÅÄ"
-
-#: prefs/AudioIOPrefs.cpp:195
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:198
-#, fuzzy
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr "Korekcja bezczynnoÅci"
-
-#: prefs/AudioIOPrefs.cpp:203
-msgid "Seek Time when playing"
-msgstr "Przeszukuj podczas odtwarzania"
-
-#: prefs/AudioIOPrefs.cpp:206
-#: prefs/MidiIOPrefs.cpp:186
-msgid "Short period:"
-msgstr "Krótka przerwa:"
-
-#: prefs/AudioIOPrefs.cpp:208
-#: prefs/MidiIOPrefs.cpp:188
-msgid "Long period:"
-msgstr "DÅuga przerwa:"
-
-#: prefs/BatchPrefs.cpp:55
-#: prefs/BatchPrefs.cpp:56
-msgid "Batch"
-msgstr "Wsad"
-
-#: prefs/BatchPrefs.cpp:77
-#: prefs/GUIPrefs.cpp:92
-msgid "Behaviors"
-msgstr "Zachowania"
-
-#: prefs/BatchPrefs.cpp:80
-msgid "&Don't apply effects in batch mode"
-msgstr "&Nie stosuje efektów w trybie wsadowym"
+#: prefs/AudioIOPrefs.cpp:104 prefs/MidiIOPrefs.cpp:99
+msgid "1 (Mono)"
+msgstr "1 (Mono)"
-#: prefs/BatchPrefs.cpp:83
-#: prefs/GUIPrefs.cpp:132
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr "Tryb czystej mowy"
+#: prefs/AudioIOPrefs.cpp:105 prefs/MidiIOPrefs.cpp:100
+msgid "2 (Stereo)"
+msgstr "2 (Stereo)"
-#: prefs/DirectoriesPrefs.cpp:55
-#: prefs/DirectoriesPrefs.cpp:56
+#: prefs/DirectoriesPrefs.cpp:55 prefs/DirectoriesPrefs.cpp:56
#: prefs/PrefsDialog.cpp:267
msgid "Directories"
msgstr "Katalogi"
@@ -7944,34 +7755,31 @@ msgstr "PoÅożenie:"
msgid "Free Space:"
msgstr "Wolna przestrzeÅ:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr "Zapisz automatycznie"
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr "Zapisz automatycznie kopiÄ projektu w osobnym folderze"
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
-msgstr "Przerwa w zapisie:"
-
-#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
-msgstr "minut"
-
#: prefs/DirectoriesPrefs.cpp:110
msgid "Audio cache"
msgstr "PamiÄÄ cache dźwiÄku"
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "Play and/or record using RAM (useful for slow drives)"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
#: prefs/DirectoriesPrefs.cpp:121
msgid "Choose a location to place the temporary directory"
msgstr "OkreÅl lokalizacjÄ dla katalogu tymczasowego"
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: prefs/DirectoriesPrefs.cpp:166
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -7990,60 +7798,114 @@ msgstr "Nie da siÄ zapisaÄ do katalogu %s"
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "Zmiana katalogu tymczasowego bÄdzie nieaktywna aż do zrestartowania programu Audacity."
-#: prefs/FileFormatPrefs.cpp:53
-#: prefs/FileFormatPrefs.cpp:54
+#: prefs/GUIPrefs.cpp:42
#, fuzzy
-msgid "Import / Export"
-msgstr "Importuj Surowe Dane"
+msgid "In Browser"
+msgstr "Wybierz..."
-#: prefs/FileFormatPrefs.cpp:84
+#: prefs/GUIPrefs.cpp:43
#, fuzzy
-msgid "MP3 Export Library"
-msgstr "Lokalizacja biblioteki MP3"
+msgid "From Internet"
+msgstr "Pomoc w Internecie"
-#: prefs/FileFormatPrefs.cpp:87
-msgid "MP3 Library Version:"
-msgstr "Wersja biblioteki MP3:"
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
+msgstr ""
-#: prefs/FileFormatPrefs.cpp:93
-#, fuzzy
-msgid "MP3 Library:"
-msgstr "Wersja biblioteki MP3:"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
+msgstr ""
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:98
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:141
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 dB (\"pÅytki\" zakres do edycji przy dużych amplitudach)"
+
+#: prefs/GUIPrefs.cpp:142
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 dB (PCM zakres 8 bitowych próbek)"
+
+#: prefs/GUIPrefs.cpp:143
#, fuzzy
-msgid "LAME MP3 Library:"
-msgstr "Wersja biblioteki MP3:"
+msgid "-60 dB (PCM range of 10 bit samples)"
+msgstr "-96 dB (PCM zakres 16 bitowych próbek)"
+
+#: prefs/GUIPrefs.cpp:144
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 dB (PCM zakres 16 bitowych próbek)"
-#: prefs/FileFormatPrefs.cpp:101
-#: prefs/FileFormatPrefs.cpp:125
+#: prefs/GUIPrefs.cpp:145
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 dB (przybliżony zakres sÅyszenia czÅowieka)"
+
+#: prefs/GUIPrefs.cpp:146
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB (PCM zakres 24 bitowych próbek)"
+
+#: prefs/SpectrumPrefs.cpp:141
+msgid "Display"
+msgstr "WyÅwietlacz"
+
+#: prefs/GUIPrefs.cpp:100
#, fuzzy
-msgid "&Download"
-msgstr "Pobierz..."
+msgid "Er&gonomic order of audio I/O buttons"
+msgstr "&Ergonomiczny ukÅad guzików We/Wy"
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:109
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:167
#, fuzzy
-msgid "FFmpeg Library Version:"
-msgstr "Wersja biblioteki MP3:"
+msgid "Help:"
+msgstr "Pomoc"
+
+#: prefs/GUIPrefs.cpp:96
+msgid "Cl&osing last window quits Audacity"
+msgstr "Za&mkniÄcie ostatniego okna zamyka Audacity"
+
+#: prefs/GUIPrefs.cpp:110
+msgid "&Beep on completion of longer activities"
+msgstr "&Daj sygnaÅ dźwiÄkowy po zakoÅczeniu czynnoÅci"
-#: prefs/FileFormatPrefs.cpp:118
-#: prefs/FileFormatPrefs.cpp:122
+#: prefs/GUIPrefs.cpp:126
#, fuzzy
-msgid "FFmpeg Library:"
-msgstr "&Znajdź BibliotekÄ"
+msgid "Modes"
+msgstr "Åredni"
-#: prefs/FileFormatPrefs.cpp:136
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
msgstr ""
+#: prefs/GUIPrefs.cpp:129
+#, fuzzy
+msgid "Don't a&pply effects in batch mode"
+msgstr "&Nie stosuje efektów w trybie wsadowym"
+
+#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
+#, fuzzy
+msgid "Import / Export"
+msgstr "Importuj Surowe Dane"
+
#: prefs/FileFormatPrefs.cpp:137
#, fuzzy
msgid "When importing audio files"
@@ -8064,22 +7926,6 @@ msgstr "&Czytaj bezpoÅredno z oryginalnego pliku (szybsze)"
msgid "&Normalize all tracks in project"
msgstr "&Podczas importowania dźwiÄku, normalizuj wszystkie Åcieżki w projekcie"
-#: prefs/FileFormatPrefs.cpp:148
-msgid "When saving a project that depends on other audio files"
-msgstr "Podczas zapisywania projektu, który jest zależny od innych plików dźwiÄkowych"
-
-#: prefs/FileFormatPrefs.cpp:151
-msgid "Always © all audio into project (safest)"
-msgstr "Zawsze &kopiuj caÅy dźwiÄk do projektu (najbezpieczniejsze)"
-
-#: prefs/FileFormatPrefs.cpp:152
-msgid "&Do not copy any audio"
-msgstr "&Nie kopiuj dźwiÄku"
-
-#: prefs/FileFormatPrefs.cpp:153
-msgid "&Ask user"
-msgstr "&Zapytaj użytkownika"
-
#: prefs/FileFormatPrefs.cpp:157
msgid "When exporting tracks to an audio file"
msgstr "Podczas eksportowania Åcieżek do pliku audio"
@@ -8096,195 +7942,73 @@ msgstr "&Użyj miksowania (na przykÅad eksportuj do pliku wielokanaÅowego 5.1)
msgid "S&how Metadata Editor prior to export step"
msgstr "P&okaż Edytor Metadanych przed ustawieniami eksportu"
-#: prefs/GUIPrefs.cpp:34
-#: prefs/GUIPrefs.cpp:35
-msgid "Interface"
-msgstr "WyglÄ
d"
-
-#: prefs/GUIPrefs.cpp:42
-#, fuzzy
-msgid "In Browser"
-msgstr "Wybierz..."
-
-#: prefs/GUIPrefs.cpp:43
-#, fuzzy
-msgid "From Internet"
-msgstr "Pomoc w Internecie"
-
-#: prefs/GUIPrefs.cpp:50
-#, fuzzy
-msgid "Simple"
-msgstr "Cisza"
-
-#: prefs/GUIPrefs.cpp:94
-msgid "&Update display while playing"
-msgstr "&Uaktualnia wyÅwietlacz poczas odtwarzania"
-
-#: prefs/GUIPrefs.cpp:96
-msgid "Cl&osing last window quits Audacity"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:98
-msgid "Enable &dragging of left and right selection edges"
-msgstr "Uaktywnia &przeciÄ
ganie krawÄdzi zaznaczenia w lewo lub w prawo"
-
-#: prefs/GUIPrefs.cpp:100
-#, fuzzy
-msgid "Er&gonomic order of audio I/O buttons"
-msgstr "&Ergonomiczny ukÅad guzików We/Wy"
-
-#: prefs/GUIPrefs.cpp:102
-msgid "Automatically &fit tracks vertically zoomed"
-msgstr "Automatycznie &wpasowuje Åcieżki"
-
-#: prefs/GUIPrefs.cpp:104
-#, fuzzy
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
-msgstr "\"PrzesuÅ po Åcieżce\" &przesuwa siÄ po Åcieżce"
-
-#: prefs/GUIPrefs.cpp:106
-msgid "Editing a &clip can move other clips"
-msgstr "Edytowanie &klipu może przesunÄ
Ä inne klipy"
-
-#: prefs/GUIPrefs.cpp:108
-msgid "&Select all audio in project, if none selected"
-msgstr "&Zaznacz caÅy dźwiÄk w projekcie, jeÅli nic nie jest zaznaczone"
-
-#: prefs/GUIPrefs.cpp:110
-msgid "&Beep on completion of longer activities"
-msgstr "&Daj sygnaÅ dźwiÄkowy po zakoÅczeniu czynnoÅci"
-
-#: prefs/GUIPrefs.cpp:114
-msgid "Show / Hide"
-msgstr "Pokaż/Ukryj"
-
-#: prefs/GUIPrefs.cpp:116
-msgid "Enable cut &lines"
-msgstr "Umożliw ciÄcie & liÅ"
-
-#: prefs/GUIPrefs.cpp:118
-msgid "Show warnings about &temp files"
-msgstr "Pokaż ostrzeżenia o &plikach tymczasowych"
-
-#: prefs/GUIPrefs.cpp:120
-#, fuzzy
-msgid "Show prompt to sa&ve, even if project is empty"
-msgstr "&Pokaż okno zapisu, nawet jeÅli projekt jest pusty"
-
-#: prefs/GUIPrefs.cpp:122
-#, fuzzy
-msgid "Show &Welcome Message at program start up"
-msgstr "Pokaż WiadomoÅÄ PowitalnÄ
przy starcie programu"
-
-#: prefs/GUIPrefs.cpp:126
-#, fuzzy
-msgid "Modes"
-msgstr "Åredni"
-
-#: prefs/GUIPrefs.cpp:129
-#, fuzzy
-msgid "Don't a&pply effects in batch mode"
-msgstr "&Nie stosuje efektów w trybie wsadowym"
-
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
+#: prefs/ImportExportPrefs.cpp:84
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
msgstr ""
-#: prefs/GUIPrefs.cpp:141
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 dB (\"pÅytki\" zakres do edycji przy dużych amplitudach)"
-
-#: prefs/GUIPrefs.cpp:142
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 dB (PCM zakres 8 bitowych próbek)"
-
-#: prefs/GUIPrefs.cpp:143
-#, fuzzy
-msgid "-60 dB (PCM range of 10 bit samples)"
-msgstr "-96 dB (PCM zakres 16 bitowych próbek)"
-
-#: prefs/GUIPrefs.cpp:144
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 dB (PCM zakres 16 bitowych próbek)"
-
-#: prefs/GUIPrefs.cpp:145
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 dB (przybliżony zakres sÅyszenia czÅowieka)"
-
-#: prefs/GUIPrefs.cpp:146
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB (PCM zakres 24 bitowych próbek)"
-
-#: prefs/GUIPrefs.cpp:151
-#, fuzzy
-msgid "Default View Mode"
-msgstr "Standardowy endianess"
-
-#: prefs/GUIPrefs.cpp:164
-msgid "Other interface choices"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:167
-#, fuzzy
-msgid "Help:"
-msgstr "Pomoc"
-
-#: prefs/GUIPrefs.cpp:168
-#, fuzzy
-msgid "Solo Button:"
-msgstr "przycisk"
-
-#: prefs/KeyConfigPrefs.cpp:64
-#: prefs/KeyConfigPrefs.cpp:65
+#: prefs/KeyConfigPrefs.cpp:64 prefs/KeyConfigPrefs.cpp:65
msgid "Keyboard"
msgstr "Klawiatura"
#: prefs/KeyConfigPrefs.cpp:86
msgid "Keyboard preferences currently unavailable."
-msgstr ""
+msgstr "Ustawienia klawiatury chwilowo nieosiÄ
galne"
#: prefs/KeyConfigPrefs.cpp:87
msgid "Open a new project to modify keyboard shortcuts."
-msgstr ""
+msgstr "Otwórz nowy projekt aby zmodyfikowaÄ skróty klawiaturowe."
-#: prefs/KeyConfigPrefs.cpp:95
+#: prefs/KeyConfigPrefs.cpp:109
msgid "Key Bindings"
msgstr "PowiÄ
zania klawiaturowe"
-#: prefs/KeyConfigPrefs.cpp:115
+#: prefs/KeyConfigPrefs.cpp:129
msgid "S&et"
msgstr "U&staw"
-#: prefs/KeyConfigPrefs.cpp:120
+#: prefs/KeyConfigPrefs.cpp:135
msgid "Note: Pressing Cmd+Q will quit. All other keys are valid."
msgstr "Uwaga: NaciÅniÄcie Cmd+Q spowoduje wyjÅcie. PozostaÅe klawisze sÄ
prawidÅowe."
-#: prefs/KeyConfigPrefs.cpp:124
-#: prefs/ThemePrefs.cpp:105
+#: prefs/KeyConfigPrefs.cpp:140 prefs/ThemePrefs.cpp:105
msgid "&Defaults"
msgstr "&DomyÅlne"
-#: prefs/KeyConfigPrefs.cpp:143
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr ""
+
+#: prefs/KeyConfigPrefs.cpp:159
msgid "Key Combination"
msgstr "Kombinacja klawiszy"
-#: prefs/KeyConfigPrefs.cpp:163
-msgid "Export Keyboard Shortcuts As:"
-msgstr "Eksportuj skróty klawiszowe jako:"
+#: prefs/KeyConfigPrefs.cpp:382 toolbars/EditToolBar.cpp:144
+msgid "Undo"
+msgstr "Cofnij"
-#: prefs/KeyConfigPrefs.cpp:183
-msgid "Error saving keyboard shortcuts"
-msgstr "BÅÄ
d zapisu skrótów klawiszowych"
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr ""
-#: prefs/KeyConfigPrefs.cpp:198
+#: prefs/KeyConfigPrefs.cpp:211
msgid "Select an XML file containing Audacity keyboard shortcuts..."
msgstr "Zaznacz plik XML zawierajÄ
cy skróty klawiszowe programu Audacity..."
-#: prefs/KeyConfigPrefs.cpp:215
+#: prefs/KeyConfigPrefs.cpp:228
msgid "Error loading keyboard shortcuts"
msgstr "BÅÄ
d podczas wczytywania skrótów klawiszowych"
-#: prefs/KeyConfigPrefs.cpp:243
+#: prefs/KeyConfigPrefs.cpp:176
+msgid "Export Keyboard Shortcuts As:"
+msgstr "Eksportuj skróty klawiszowe jako:"
+
+#: prefs/KeyConfigPrefs.cpp:196
+msgid "Error saving keyboard shortcuts"
+msgstr "BÅÄ
d zapisu skrótów klawiszowych"
+
+#: prefs/KeyConfigPrefs.cpp:256
#, c-format
msgid "The keyboard shortcut '%s' is already assigned to:\n"
"\n"
@@ -8293,10 +8017,68 @@ msgstr "Skrót klawiaturowy %s jest już przypisany do:\n"
"\n"
" %s'"
-#: prefs/KeyConfigPrefs.cpp:369
-#: toolbars/EditToolBar.cpp:144
-msgid "Undo"
-msgstr "Cofnij"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:84
+#, fuzzy
+msgid "MP3 Export Library"
+msgstr "Lokalizacja biblioteki MP3"
+
+#: prefs/FileFormatPrefs.cpp:87
+msgid "MP3 Library Version:"
+msgstr "Wersja biblioteki MP3:"
+
+#: prefs/FileFormatPrefs.cpp:93
+#, fuzzy
+msgid "MP3 Library:"
+msgstr "Wersja biblioteki MP3:"
+
+#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr "&Lokalizuj..."
+
+#: prefs/FileFormatPrefs.cpp:98
+#, fuzzy
+msgid "LAME MP3 Library:"
+msgstr "Wersja biblioteki MP3:"
+
+#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
+#, fuzzy
+msgid "&Download"
+msgstr "Pobierz..."
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr "Biblioteka Importu/Eksportu FFmpeg"
+
+#: prefs/FileFormatPrefs.cpp:109
+#, fuzzy
+msgid "FFmpeg Library Version:"
+msgstr "Wersja biblioteki MP3:"
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
+#, fuzzy
+msgid "FFmpeg Library:"
+msgstr "&Znajdź BibliotekÄ"
+
+#: prefs/AudioIOPrefs.cpp:42 prefs/AudioIOPrefs.cpp:43
+#: prefs/MidiIOPrefs.cpp:44 prefs/MidiIOPrefs.cpp:45
+msgid "Audio I/O"
+msgstr "Audio I/O"
+
+#: prefs/AudioIOPrefs.cpp:127 prefs/MidiIOPrefs.cpp:122
+msgid "Portaudio v"
+msgstr "Port dźwiÄkowy v"
+
+#: prefs/AudioIOPrefs.cpp:149 prefs/MidiIOPrefs.cpp:144
+msgid "Playthrough"
+msgstr "Odtwarzanie"
#: prefs/MidiIOPrefs.cpp:146
msgid "&Play other tracks while recording new one"
@@ -8312,6 +8094,10 @@ msgstr "&Odtwarzanie sprzÄtowe: Odtwarzaj ÅcieżkÄ podczas nagrywania jej"
msgid "&Software Playthrough (Play new track while recording it)"
msgstr "&Odtwarzanie programowe: Odtwarzaj ÅcieżkÄ podczas nagrywania jej"
+#: prefs/AudioIOPrefs.cpp:178 prefs/MidiIOPrefs.cpp:157
+msgid "Cut Preview"
+msgstr "Wytnij PodglÄ
d"
+
#: prefs/MidiIOPrefs.cpp:160
#, fuzzy
msgid "Play before cut region:"
@@ -8322,6 +8108,10 @@ msgstr "PodglÄ
d przed obszarem obciÄcia:"
msgid "Play after cut region:"
msgstr "PodglÄ
d po obszarze obciÄcia:"
+#: prefs/AudioIOPrefs.cpp:191 prefs/MidiIOPrefs.cpp:167
+msgid "Latency"
+msgstr "BezczynnoÅÄ"
+
#: prefs/MidiIOPrefs.cpp:173
msgid "Audio to buffer:"
msgstr "DźwiÄk do bufora:"
@@ -8335,13 +8125,24 @@ msgstr "Korekcja bezczynnoÅci"
msgid "Seek Time"
msgstr "OkreÅl czas"
+#: prefs/AudioIOPrefs.cpp:210 prefs/MidiIOPrefs.cpp:186
+msgid "Short period:"
+msgstr "Krótka przerwa:"
+
+#: prefs/AudioIOPrefs.cpp:212 prefs/MidiIOPrefs.cpp:188
+msgid "Long period:"
+msgstr "DÅuga przerwa:"
+
+#: prefs/AudioIOPrefs.cpp:170 prefs/MidiIOPrefs.cpp:193
+msgid "Effects Preview"
+msgstr "PodglÄ
d efektów"
+
#: prefs/MidiIOPrefs.cpp:196
#, fuzzy
msgid "Play when previewing:"
msgstr "PodglÄ
d"
-#: prefs/MousePrefs.cpp:55
-#: prefs/MousePrefs.cpp:56
+#: prefs/MousePrefs.cpp:55 prefs/MousePrefs.cpp:56
msgid "Mouse"
msgstr "Mysz"
@@ -8361,37 +8162,26 @@ msgstr "Komenda"
msgid "Buttons"
msgstr "Klawisze"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:117
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:117
#: prefs/MousePrefs.cpp:122
msgid "Left-Click"
msgstr "Lewy klawisz myszy"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:100
-#: prefs/MousePrefs.cpp:101
-#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:101 prefs/MousePrefs.cpp:102
msgid "Select"
msgstr "Zaznacz "
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:122
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:122
msgid "Set Selection Point"
msgstr "Ustaw punkt zaznaczenia"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:115
-#: prefs/MousePrefs.cpp:119
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:115 prefs/MousePrefs.cpp:119 prefs/MousePrefs.cpp:123
msgid "Left-Drag"
msgstr "Lewy klawisz - przeciÄ
gnij"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:123
msgid "Set Selection Range"
msgstr "Ustaw zakres zaznaczenia"
@@ -8419,12 +8209,8 @@ msgstr "Ctrl-Lewe-KlikniÄcie"
msgid "Set Selection Point and Play"
msgstr "Ustaw punkt zaznaczenia i Odtwarzaj"
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:108
-#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:106
+#: prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:108 prefs/MousePrefs.cpp:109
msgid "Zoom"
msgstr "PowiÄksz"
@@ -8432,9 +8218,7 @@ msgstr "PowiÄksz"
msgid "Zoom in on Point"
msgstr "PowiÄksz w punkcie"
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:125
msgid "Zoom in on a Range"
msgstr "PowiÄksz zakres"
@@ -8442,18 +8226,15 @@ msgstr "PowiÄksz zakres"
msgid "same as right-drag"
msgstr "tak jak przesuniÄcie w prawo"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:106 prefs/MousePrefs.cpp:124
msgid "Right-Click"
msgstr "Prawy klawisz myszy"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:106 prefs/MousePrefs.cpp:124
msgid "Zoom out one step"
msgstr "Pomniejsz "
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:125
msgid "Right-Drag"
msgstr "PrzeciÄ
gnij prawym klawiszem myszy"
@@ -8489,8 +8270,7 @@ msgstr "Shift-PrzesuÅ w lewo"
msgid "Time shift all clips in track"
msgstr "PrzesuÅ w czasie wszystkie klipy w Åcieżce"
-#: prefs/MousePrefs.cpp:113
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:113 prefs/MousePrefs.cpp:120
msgid "Ctrl-Left-Drag"
msgstr "Ctrl- Lewy-przeciÄ
gnij"
@@ -8506,9 +8286,7 @@ msgstr "ZmieÅ obwiedniÄ wzmocnienia"
msgid "Change Sample"
msgstr "ZmieÅ próbkÄ"
-#: prefs/MousePrefs.cpp:117
-#: prefs/MousePrefs.cpp:118
-#: prefs/MousePrefs.cpp:119
+#: prefs/MousePrefs.cpp:117 prefs/MousePrefs.cpp:118 prefs/MousePrefs.cpp:119
#: prefs/MousePrefs.cpp:120
msgid "Pencil"
msgstr "Pióro"
@@ -8529,26 +8307,20 @@ msgstr "Zmiana kilku próbek"
msgid "Change ONE Sample only"
msgstr "Zmiana tylko JEDNEJ próbki"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123 prefs/MousePrefs.cpp:124
#: prefs/MousePrefs.cpp:125
msgid "Multi"
msgstr "Multi"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123
msgid "same as select tool"
msgstr "to samo co narzÄdzie do zaznaczania"
-#: prefs/MousePrefs.cpp:124
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:124 prefs/MousePrefs.cpp:125
msgid "same as zoom tool"
msgstr "tak samo jak narzÄdzie do powiÄkszania"
-#: prefs/MousePrefs.cpp:127
-#: prefs/MousePrefs.cpp:128
-#: prefs/MousePrefs.cpp:129
+#: prefs/MousePrefs.cpp:127 prefs/MousePrefs.cpp:128 prefs/MousePrefs.cpp:129
msgid "Any"
msgstr "Dowolny"
@@ -8576,10 +8348,62 @@ msgstr "Ctrl-kóÅko myszy"
msgid "Zoom in or out"
msgstr "PowiÄksz lub pomniejsz"
+#: prefs/AudioIOPrefs.cpp:173
+msgid "Length of preview:"
+msgstr "DÅugoÅÄ podglÄ
du:"
+
+#: prefs/AudioIOPrefs.cpp:181
+msgid "Preview before cut region:"
+msgstr "PodglÄ
d przed obszarem obciÄcia:"
+
+#: prefs/AudioIOPrefs.cpp:183
+msgid "Preview after cut region:"
+msgstr "PodglÄ
d po obszarze obciÄcia:"
+
+#: prefs/AudioIOPrefs.cpp:207
+msgid "Seek Time when playing"
+msgstr "Przeszukuj podczas odtwarzania"
+
#: prefs/PrefsDialog.cpp:94
msgid "Audacity Preferences"
msgstr "WÅaÅciwoÅci Audacity"
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:148
+msgid "When saving a project that depends on other audio files"
+msgstr "Podczas zapisywania projektu, który jest zależny od innych plików dźwiÄkowych"
+
+#: prefs/FileFormatPrefs.cpp:151
+msgid "Always © all audio into project (safest)"
+msgstr "Zawsze &kopiuj caÅy dźwiÄk do projektu (najbezpieczniejsze)"
+
+#: prefs/FileFormatPrefs.cpp:152
+msgid "&Do not copy any audio"
+msgstr "&Nie kopiuj dźwiÄku"
+
+#: prefs/FileFormatPrefs.cpp:153
+msgid "&Ask user"
+msgstr "&Zapytaj użytkownika"
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr "Zapisz automatycznie"
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr "Zapisz automatycznie kopiÄ projektu w osobnym folderze"
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr "Przerwa w zapisie:"
+
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr "minut"
+
#: prefs/QualityPrefs.cpp:73
msgid "Rectangle"
msgstr "ProstokÄ
tny"
@@ -8604,160 +8428,258 @@ msgstr "Standardowa czÄstotliwoÅÄ:"
msgid "Default Sample Format:"
msgstr "Standardowa rozdzielczoÅÄ:"
-#: prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "Konwerter czÄstotl. próbkowania ( w czasie rzeczywistym)"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:139
-msgid "High-quality sample rate converter:"
-msgstr "Wysokiej jakoÅci konwerter czÄstotliwoÅci próbkowania:"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+#, fuzzy
+msgid "Sample Rate Converter:"
+msgstr "Konwerter próbkowania"
-#: prefs/QualityPrefs.cpp:142
-msgid "Real-time dither:"
-msgstr "Dithering w czasie rzeczywistym"
+#: prefs/QualityPrefs.cpp:141
+msgid "Dither"
+msgstr "Wahania"
-#: prefs/QualityPrefs.cpp:145
-msgid "High-quality dither:"
-msgstr "Wysokiej jakoÅci dither:"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
-msgstr "Konwersja"
+#: prefs/AudioIOPrefs.cpp:151
+#, fuzzy
+msgid "Overdub: &Play other tracks while recording new one"
+msgstr "&Odtwarzaj inne Åcieżki podczas nagrywania nowej"
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
-msgstr "Konwerter próbkowania"
+#: prefs/AudioIOPrefs.cpp:154
+msgid "&Hardware Playthrough: Play new track while recording it"
+msgstr "&Odtwarzanie sprzÄtowe: Odtwarzaj ÅcieżkÄ podczas nagrywania jej"
-#: prefs/QualityPrefs.cpp:164
-msgid "Dither"
-msgstr "Wahania"
+#: prefs/AudioIOPrefs.cpp:159
+#, fuzzy
+msgid "&Software Playthrough: Play new track while recording or monitoring"
+msgstr "&Odtwarzanie programowe: Odtwarzaj ÅcieżkÄ podczas nagrywania jej"
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
-msgstr "Czas rzeczywisty:"
+#: prefs/AudioIOPrefs.cpp:162
+msgid "(uncheck when recording \"stereo mix\")"
+msgstr "(odznacz podczas nagrywania\"stereo mix\")"
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
-msgstr "Wysoka jakoÅÄ:"
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
+msgstr ""
-#: prefs/SmartRecordPrefs.cpp:37
-#: prefs/SmartRecordPrefs.cpp:38
-msgid "Smart Recording"
-msgstr "MÄ
dre Nagrywanie"
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
+msgstr ""
-#: prefs/SmartRecordPrefs.cpp:64
-#: prefs/SmartRecordPrefs.cpp:66
+#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
#, fuzzy
msgid "Sound Activated Recording"
msgstr "MÄ
dre Nagrywanie"
#: prefs/SmartRecordPrefs.cpp:71
msgid "Sound Activation Level (dB):"
-msgstr ""
+msgstr "Poziom Aktywacji DźwiÄku (dB):"
-#: prefs/SpectrumPrefs.cpp:41
-#: prefs/SpectrumPrefs.cpp:42
+#: prefs/SpectrumPrefs.cpp:42 prefs/SpectrumPrefs.cpp:43
msgid "Spectrograms"
msgstr "Spektrogramy"
-#: prefs/SpectrumPrefs.cpp:91
-msgid "FFT Size"
-msgstr "Rozmiar FFT"
-
-#: prefs/SpectrumPrefs.cpp:94
+#: prefs/SpectrumPrefs.cpp:95
msgid "8 - most wideband"
msgstr "8 - najszersze"
-#: prefs/SpectrumPrefs.cpp:99
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:100
msgid "256 - default"
msgstr "256 - domyÅlnie"
-#: prefs/SpectrumPrefs.cpp:107
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:108
#, fuzzy
msgid "32768 - most narrowband"
msgstr "4096 - najwiÄksza rozdzielczoÅÄ"
-#: prefs/SpectrumPrefs.cpp:109
+#: prefs/SpectrumPrefs.cpp:110
msgid "4096 - most narrowband"
msgstr "4096 - najwiÄksza rozdzielczoÅÄ"
-#: prefs/SpectrumPrefs.cpp:116
-msgid "Window type:"
-msgstr "Rodzaj okna:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
+msgstr ""
-#: prefs/SpectrumPrefs.cpp:125
-msgid "FFT Skip Points"
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:140
-msgid "Display"
-msgstr "WyÅwietlacz"
+#: prefs/SpectrumPrefs.cpp:93
+#, fuzzy
+msgid "Window type"
+msgstr "Rodzaj okna:"
-#: prefs/SpectrumPrefs.cpp:144
-msgid "&Grayscale"
-msgstr "&Skala szaroÅci"
+#: prefs/SpectrumPrefs.cpp:126
+msgid "FFT Skip Points"
+msgstr "Punkty Opuszczenia FFT"
-#: prefs/SpectrumPrefs.cpp:147
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:148
msgid "Minimum Frequency (Hz):"
msgstr "Minimalna czÄstotliwoÅÄ (Hz):"
-#: prefs/SpectrumPrefs.cpp:152
+#: prefs/SpectrumPrefs.cpp:153
msgid "Maximum Frequency (Hz):"
msgstr "Maksymalna czÄstotliwoÅÄ (Hz):"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:165
+#: prefs/SpectrumPrefs.cpp:166
#, fuzzy
msgid "Minimum Amplitude (dB):"
msgstr "Nowy Szczyt Amplitudy (dB):"
-#: prefs/SpectrumPrefs.cpp:170
+#: prefs/SpectrumPrefs.cpp:171
msgid "Max. Number of Notes (1..128):"
-msgstr ""
+msgstr "Mak. iloÅÄ Notatek (1..128):"
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Find Notes"
+msgstr "&Znajdź Notatki"
+
+#: prefs/SpectrumPrefs.cpp:163
+msgid "&Quantize Notes"
+msgstr "&Kwantyzacja Notatek"
-#: prefs/SpectrumPrefs.cpp:197
+#: prefs/SpectrumPrefs.cpp:198
msgid "The maximum frequency must be an integer"
msgstr "Maksymalna czÄstotliwoÅÄ musi byÄ liczbÄ
caÅkowitÄ
"
-#: prefs/SpectrumPrefs.cpp:201
+#: prefs/SpectrumPrefs.cpp:202
msgid "Maximum frequency must be in the range 100 Hz - 100,000 Hz"
msgstr "Maksymalna czÄstotliwoÅÄ musi byÅ w przedziale 100 Hz - 100,000 Hz"
-#: prefs/SpectrumPrefs.cpp:209
+#: prefs/SpectrumPrefs.cpp:210
msgid "The minimum frequency must be an integer"
msgstr "Minimalna czÄstotliwoÅÄ musi byÄ liczbÄ
caÅkowitÄ
"
-#: prefs/SpectrumPrefs.cpp:213
+#: prefs/SpectrumPrefs.cpp:214
msgid "Minimum frequency must be at least 0 Hz"
msgstr "MInimalna czÄstotliwoÅÄ musi byÄ przynajmniej 0 Hz"
-#: prefs/SpectrumPrefs.cpp:220
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:221
#, fuzzy
msgid "The minimum amplitude (dB) must be an integer"
msgstr "Minimalna czÄstotliwoÅÄ musi byÄ liczbÄ
caÅkowitÄ
"
#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:230
-#, fuzzy
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
-msgstr "Maksymalna czÄstotliwoÅÄ musi byÄ liczbÄ
caÅkowitÄ
"
+msgid "The maximum number of notes must be in the range 1..128"
+msgstr ""
-#: prefs/ThemePrefs.cpp:62
-#: prefs/ThemePrefs.cpp:63
+#: prefs/ThemePrefs.cpp:62 prefs/ThemePrefs.cpp:63
msgid "Theme"
msgstr "Temat"
+#: prefs/ThemePrefs.cpp:126
+msgid "Info"
+msgstr "Info"
+
+#: prefs/ThemePrefs.cpp:91
+#, fuzzy
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr "TematycznoÅÄ jest w fazie eksperymentów.\n"
+"\n"
+"Aby wypróbowaÄ, kliknij nak \"Zapisz Temat\" nastÄpnie\n"
+"znajdź i zmodyfikuj obrazy i kolory \n"
+"PamiÄÄObrazuVxx.png używajÄ
c edytora takiego jak \n"
+"Gimp.\n"
+"\n"
+"Kliknij \"ZaÅadujTemat\" aby zaÅadowaÄ zmienione obrazy\n"
+"i kolory z powrotem do Audacity.\n"
+"\n"
+"[Można zmieniÄ tylko pasek narzÄdzi i kolory na \n"
+"Åcieżce, nawet mimo tego, że\n"
+"plik obrazu pokazuje również inne ikony.]"
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#. i18n-hint: && in here is an escape character to get a single & on screen,
#. * so keep it as is
#: prefs/ThemePrefs.cpp:93
@@ -8788,101 +8710,100 @@ msgstr "Zapisz pliki"
msgid "Load Files"
msgstr "ZaÅaduj pliki"
-#: prefs/ThemePrefs.cpp:126
-msgid "Info"
-msgstr "Info"
+#: prefs/GUIPrefs.cpp:50
+#, fuzzy
+msgid "Simple"
+msgstr "Cisza"
-#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
-msgstr "TematycznoÅÄ jest w fazie eksperymentów.\n"
-"\n"
-"Aby wypróbowaÄ, kliknij nak \"Zapisz Temat\" nastÄpnie\n"
-"znajdź i zmodyfikuj obrazy i kolory \n"
-"PamiÄÄObrazuVxx.png używajÄ
c edytora takiego jak \n"
-"Gimp.\n"
-"\n"
-"Kliknij \"ZaÅadujTemat\" aby zaÅadowaÄ zmienione obrazy\n"
-"i kolory z powrotem do Audacity.\n"
-"\n"
-"[Można zmieniÄ tylko pasek narzÄdzi i kolory na \n"
-"Åcieżce, nawet mimo tego, że\n"
-"plik obrazu pokazuje również inne ikony.]\n"
-
-#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
-msgstr "SkompilowaÅeÅ Audacity z dodatkowym przyciskiem, \n"
-"'Å»ródÅo WyjÅciowe'. To zapisze wersjÄ C \n"
-"pamiÄci obrazu, która może zostaÄ skompilowana.\n"
-
-#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
-msgstr "JeÅli zaznaczysz 'ZaÅaduj PamiÄÄ Tematu przy starcie', \n"
-"PamiÄÄ Tematu zostanie zaÅadowana przy uruchamianiu \n"
-"programu.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:94
+msgid "&Update display while playing"
+msgstr "&Uaktualnia wyÅwietlacz poczas odtwarzania"
-#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
-msgstr "Zapisywanie i Åadowanie plików tematu używa \n"
-"osobnych plików do każdego obrazu, ale poza tym jest to ten sam \n"
-"pomysÅ.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:102
+msgid "Automatically &fit tracks vertically zoomed"
+msgstr "Automatycznie &wpasowuje Åcieżki"
-#: toolbars/ControlToolBar.cpp:175
-msgid "Pause"
-msgstr "Pauza"
+#: prefs/TracksPrefs.cpp:88
+#, fuzzy
+msgid "Default View Mode:"
+msgstr "Standardowy endianess"
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play"
-msgstr "Odtwarzaj"
+#: prefs/GUIPrefs.cpp:108
+msgid "&Select all audio in project, if none selected"
+msgstr "&Zaznacz caÅy dźwiÄk w projekcie, jeÅli nic nie jest zaznaczone"
-#: toolbars/ControlToolBar.cpp:178
+#: prefs/GUIPrefs.cpp:116
+msgid "Enable cut &lines"
+msgstr "Umożliw ciÄcie & liÅ"
+
+#: prefs/GUIPrefs.cpp:98
+msgid "Enable &dragging of left and right selection edges"
+msgstr "Uaktywnia &przeciÄ
ganie krawÄdzi zaznaczenia w lewo lub w prawo"
+
+#: prefs/GUIPrefs.cpp:104
#, fuzzy
-msgid "Play (Shift for Loop Play)"
-msgstr "Odtwórz (odtwarzanie w pÄtli: z klawiszem Shift)"
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+msgstr "\"PrzesuÅ po Åcieżce\" &przesuwa siÄ po Åcieżce"
-#: toolbars/ControlToolBar.cpp:183
-msgid "Stop"
-msgstr "Stop"
+#: prefs/GUIPrefs.cpp:106
+msgid "Editing a &clip can move other clips"
+msgstr "Edytowanie &klipu może przesunÄ
Ä inne klipy"
-#: toolbars/ControlToolBar.cpp:186
-msgid "Skip to Start"
-msgstr "Skocz do poczÄ
tku"
+#: prefs/GUIPrefs.cpp:168
+#, fuzzy
+msgid "Solo Button:"
+msgstr "przycisk"
-#: toolbars/ControlToolBar.cpp:189
-msgid "Skip to End"
-msgstr "Skocz do koÅca"
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:192
-msgid "Record (Shift for Append Record)"
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
msgstr ""
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr ""
+
+#: Menus.cpp:995
+msgid "Pause"
+msgstr "Pauza"
+
+#: Menus.cpp:994
+msgid "Stop"
+msgstr "Stop"
+
#: toolbars/ControlToolBar.cpp:195
msgid "Clean Speech"
msgstr "Czysta mowa"
-#: toolbars/ControlToolBar.cpp:540
-#: toolbars/ControlToolBar.cpp:869
+#: toolbars/ControlToolBar.cpp:178
+#, fuzzy
+msgid "Play (Shift for Loop Play)"
+msgstr "Odtwórz (odtwarzanie w pÄtli: z klawiszem Shift)"
+
+#: toolbars/ControlToolBar.cpp:192
+msgid "Record (Shift for Append Record)"
+msgstr "Nagrywaj (Shift do doÅÄ
czania nagrywania)"
+
+#: toolbars/ControlToolBar.cpp:540 toolbars/ControlToolBar.cpp:869
msgid "Error while opening sound device. "
msgstr "BÅÄ
d podczas otwierania urzÄ
dzenia dźwiÄkowego. "
@@ -8894,13 +8815,11 @@ msgstr "Nagrywanie w trybie CzystaMowa nie jest możliwe, gdy jedna Åcieżka lu
msgid "Recording not permitted"
msgstr "Nagrywanie zabronione"
-#: toolbars/DeviceToolBar.cpp:113
-#: toolbars/DeviceToolBar.cpp:115
+#: toolbars/DeviceToolBar.cpp:113 toolbars/DeviceToolBar.cpp:115
msgid "Output Device"
msgstr "UrzÄ
dzenie wyjÅcia"
-#: toolbars/DeviceToolBar.cpp:134
-#: toolbars/DeviceToolBar.cpp:136
+#: toolbars/DeviceToolBar.cpp:134 toolbars/DeviceToolBar.cpp:136
msgid "Input Device"
msgstr "UrzÄ
dzenie wejÅcia"
@@ -8925,29 +8844,21 @@ msgstr "PowiÄksz"
msgid "Zoom Out"
msgstr "Pomniejsz"
-#: toolbars/EditToolBar.cpp:161
-msgid "Zoom Toggle"
-msgstr "NarzÄdzie powiÄkszania"
-
-#: toolbars/EditToolBar.cpp:165
-msgid "Fit Selection"
-msgstr "Dopasuj zaznaczenie"
-
#: toolbars/EditToolBar.cpp:165
msgid "Fit selection in window"
msgstr "Dopasuj zaznaczenie do okna"
#: toolbars/EditToolBar.cpp:167
-msgid "Fit Project"
-msgstr "Dopasuj projekt"
-
-#: toolbars/EditToolBar.cpp:167
msgid "Fit project in window"
msgstr "Pokaż caÅy projekt w oknie"
-#: toolbars/MeterToolBar.cpp:50
-msgid "Meter"
-msgstr "Miernik"
+#: toolbars/EditToolBar.cpp:165
+msgid "Fit Selection"
+msgstr "Dopasuj zaznaczenie"
+
+#: toolbars/EditToolBar.cpp:167
+msgid "Fit Project"
+msgstr "Dopasuj projekt"
#: toolbars/MeterToolBar.cpp:80
msgid "Play Meter"
@@ -8982,8 +8893,7 @@ msgstr "Wzmocnienie wyjÅciowe"
msgid "Slider Output"
msgstr "Suwak do wyjÅcia"
-#: toolbars/MixerToolBar.cpp:101
-#: widgets/Meter.cpp:874
+#: toolbars/MixerToolBar.cpp:101 widgets/Meter.cpp:870
msgid "Input Volume"
msgstr "Wzmocnienie wejÅciowe"
@@ -8996,22 +8906,27 @@ msgstr "Suwak do wejÅcia"
msgid "Input Source"
msgstr "Å»ródÅo wejÅcia"
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:86
msgid "Selection"
msgstr "Zaznaczenie"
-#: toolbars/SelectionBar.cpp:135
-#: toolbars/SelectionBar.cpp:194
+#: toolbars/SelectionBar.cpp:135 toolbars/SelectionBar.cpp:194
msgid "Project Rate (Hz):"
msgstr "CzÄstotliwoÅÄ projektu (Hz)"
-#: toolbars/SelectionBar.cpp:149
-#: toolbars/SelectionBar.cpp:255
+#: toolbars/SelectionBar.cpp:149 toolbars/SelectionBar.cpp:255
msgid "Selection Start:"
msgstr "PoczÄ
tek zaznaczenia:"
-#: toolbars/SelectionBar.cpp:163
-#: toolbars/SelectionBar.cpp:164
+#: toolbars/SelectionBar.cpp:163 toolbars/SelectionBar.cpp:164
#: toolbars/SelectionBar.cpp:261
msgid "Length"
msgstr "DÅugoÅÄ"
@@ -9020,13 +8935,11 @@ msgstr "DÅugoÅÄ"
msgid "hidden"
msgstr "ukryty"
-#: toolbars/SelectionBar.cpp:184
-#: toolbars/SelectionBar.cpp:272
+#: toolbars/SelectionBar.cpp:184 toolbars/SelectionBar.cpp:272
msgid "Audio Position:"
msgstr "Pozycja dźwiÄku"
-#: toolbars/SelectionBar.cpp:236
-#: toolbars/SelectionBar.cpp:241
+#: toolbars/SelectionBar.cpp:236 toolbars/SelectionBar.cpp:241
msgid "Snap To"
msgstr "Przyczep do"
@@ -9047,8 +8960,7 @@ msgstr "Koniec zaznaczenia"
msgid "Audacity %s ToolBar"
msgstr "Pasek %s Audacity"
-#: toolbars/ToolDock.cpp:74
-#: toolbars/ToolDock.cpp:75
+#: toolbars/ToolDock.cpp:74 toolbars/ToolDock.cpp:75
msgid "ToolDock"
msgstr "Dok z narzÄdziami"
@@ -9080,34 +8992,6 @@ msgstr "Lewy=PowiÄksz, Prawy=Pomniejsz, Årodek=Normalny"
msgid "Click and drag to move a track in time"
msgstr "Kliknij i przeciÄ
gnij aby przesunÄ
Ä ÅcieżkÄ w odniesieniu do czasu"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr "NarzÄdzia"
-
-#: toolbars/ToolsToolBar.cpp:147
-#: toolbars/ToolsToolBar.cpp:182
-msgid "Selection Tool"
-msgstr "Zaznaczanie"
-
-#: toolbars/ToolsToolBar.cpp:148
-msgid "Envelope Tool"
-msgstr "NarzÄdzie obwiedni"
-
-#: toolbars/ToolsToolBar.cpp:149
-#: toolbars/ToolsToolBar.cpp:183
-msgid "Time Shift Tool"
-msgstr "NarzÄdzie do przesuwania w czasie"
-
-#: toolbars/ToolsToolBar.cpp:150
-#: toolbars/ToolsToolBar.cpp:185
-msgid "Zoom Tool"
-msgstr "Lupa"
-
-#: toolbars/ToolsToolBar.cpp:151
-#: toolbars/ToolsToolBar.cpp:184
-msgid "Draw Tool"
-msgstr "NarzÄdzie rysowaniaÂ"
-
#: toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
msgstr "Tryb multi narzÄdzia"
@@ -9116,24 +9000,11 @@ msgstr "Tryb multi narzÄdzia"
msgid "Slide Tool"
msgstr "NarzÄdzie Przesuwania"
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr "Wielofunkcyjne NarzÄdzie"
-
-#: toolbars/TranscriptionToolBar.cpp:84
-msgid "Transcription"
-msgstr "Transkrypcja"
-
#: toolbars/TranscriptionToolBar.cpp:171
msgid "Play at selected speed"
msgstr "Odtwarzaj z podanÄ
prÄdkoÅciÄ
"
-#: toolbars/TranscriptionToolBar.cpp:172
-msgid "Play-at-speed"
-msgstr "Odtwarzaj z prÄdkoÅciÄ
"
-
-#: toolbars/TranscriptionToolBar.cpp:178
-#: toolbars/TranscriptionToolBar.cpp:183
+#: toolbars/TranscriptionToolBar.cpp:178 toolbars/TranscriptionToolBar.cpp:183
msgid "Playback Speed"
msgstr "PrÄdkoÅÄ odtwarzania"
@@ -9142,74 +9013,38 @@ msgstr "PrÄdkoÅÄ odtwarzania"
msgid "Adjust left selection to next onset"
msgstr "Koryguj lewe zaznaczenie do nastÄpnego poczÄ
tku"
-#: toolbars/TranscriptionToolBar.cpp:197
-msgid "Left-to-On"
-msgstr "Lewe wÅÄ
czone"
-
#: toolbars/TranscriptionToolBar.cpp:199
msgid "Adjust right selection to previous offset"
msgstr "Koryguj prawe zaznaczenie do poprzedniego offsetu"
-#: toolbars/TranscriptionToolBar.cpp:200
-msgid "Right-to-Off"
-msgstr "Prawe wyÅÄ
czone"
-
#: toolbars/TranscriptionToolBar.cpp:202
msgid "Adjust left selection to next offset"
msgstr "Koryguj lewe zaznaczenie do nastÄpnego offsetu"
-#: toolbars/TranscriptionToolBar.cpp:203
-msgid "Left-to-Off"
-msgstr "Lewe wyÅÄ
czone"
-
#: toolbars/TranscriptionToolBar.cpp:205
msgid "Adjust right selection to previous onset"
msgstr "Koryguj prawe zaznaczenie do poprzedniego poczÄ
tku"
-#: toolbars/TranscriptionToolBar.cpp:206
-msgid "Right-to-On"
-msgstr "Prawe wÅÄ
czone"
-
#: toolbars/TranscriptionToolBar.cpp:208
msgid "Select region of sound around cursor"
msgstr "Zaznacz obszar dźwiÄku naokoÅo kursora"
-#: toolbars/TranscriptionToolBar.cpp:209
-msgid "Select-Sound"
-msgstr "Zaznacz dźwiÄk"
-
#: toolbars/TranscriptionToolBar.cpp:211
msgid "Select region of silence around cursor"
msgstr "Zaznacz obszar ciszy naokoÅo kursora"
-#: toolbars/TranscriptionToolBar.cpp:212
-msgid "Select-Silence"
-msgstr "Zaznacz ciszÄ"
-
#: toolbars/TranscriptionToolBar.cpp:214
msgid "Automatically make labels from words"
msgstr "Stwórz automatycznie etykiety z wyrazów"
-#: toolbars/TranscriptionToolBar.cpp:215
-msgid "Make Labels"
-msgstr "Stwórz etykiety"
-
#: toolbars/TranscriptionToolBar.cpp:217
msgid "Add label at selection"
msgstr "Dodaj etykietÄ do zaznaczenia"
-#: toolbars/TranscriptionToolBar.cpp:218
-msgid "Add Label"
-msgstr "Dodaj etykietÄ"
-
#: toolbars/TranscriptionToolBar.cpp:220
msgid "Calibrate voicekey"
msgstr "Skalibruj czujnik natÄżenia dźwiÄku"
-#: toolbars/TranscriptionToolBar.cpp:221
-msgid "Calibrate"
-msgstr "Kalibruj"
-
#: toolbars/TranscriptionToolBar.cpp:225
msgid "Adjust Sensitivity"
msgstr "Skoryguj czuÅoÅÄ"
@@ -9242,6 +9077,46 @@ msgstr "Zmiany kierunku (Wysoki próg)"
msgid "Key type"
msgstr "Rodzaj klawisza"
+#: toolbars/TranscriptionToolBar.cpp:172
+msgid "Play-at-speed"
+msgstr "Odtwarzaj z prÄdkoÅciÄ
"
+
+#: toolbars/TranscriptionToolBar.cpp:197
+msgid "Left-to-On"
+msgstr "Lewe wÅÄ
czone"
+
+#: toolbars/TranscriptionToolBar.cpp:200
+msgid "Right-to-Off"
+msgstr "Prawe wyÅÄ
czone"
+
+#: toolbars/TranscriptionToolBar.cpp:203
+msgid "Left-to-Off"
+msgstr "Lewe wyÅÄ
czone"
+
+#: toolbars/TranscriptionToolBar.cpp:206
+msgid "Right-to-On"
+msgstr "Prawe wÅÄ
czone"
+
+#: toolbars/TranscriptionToolBar.cpp:209
+msgid "Select-Sound"
+msgstr "Zaznacz dźwiÄk"
+
+#: toolbars/TranscriptionToolBar.cpp:212
+msgid "Select-Silence"
+msgstr "Zaznacz ciszÄ"
+
+#: toolbars/TranscriptionToolBar.cpp:215
+msgid "Make Labels"
+msgstr "Stwórz etykiety"
+
+#: toolbars/TranscriptionToolBar.cpp:218
+msgid "Add Label"
+msgstr "Dodaj etykietÄ"
+
+#: toolbars/TranscriptionToolBar.cpp:221
+msgid "Calibrate"
+msgstr "Kalibruj"
+
#: widgets/AButton.cpp:303
msgid " (disabled)"
msgstr " (nieaktywny)"
@@ -9256,8 +9131,7 @@ msgstr "przycisk"
#. i18n-hint: One-letter abbreviation for Left, in VU Meter
#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
-#: widgets/ASlider.cpp:612
-#: widgets/Meter.cpp:248
+#: widgets/ASlider.cpp:612 widgets/Meter.cpp:248
msgid "L"
msgstr "L"
@@ -9265,8 +9139,7 @@ msgstr "L"
# i18n-hint: One-letter abbreviation for Right, in VU Meter
#. i18n-hint: One-letter abbreviation for Right, in VU Meter
#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
-#: widgets/ASlider.cpp:615
-#: widgets/Meter.cpp:250
+#: widgets/ASlider.cpp:615 widgets/Meter.cpp:250
msgid "R"
msgstr "P"
@@ -9288,19 +9161,19 @@ msgstr "Pomoc"
#: widgets/ErrorDialog.cpp:137
msgid "<"
-msgstr ""
+msgstr "<"
#: widgets/ErrorDialog.cpp:138
msgid ">"
-msgstr ""
+msgstr ">"
#: widgets/ErrorDialog.cpp:142
msgid "Forwards"
-msgstr ""
+msgstr "Do przodu"
#: widgets/ErrorDialog.cpp:143
msgid "Backwards"
-msgstr ""
+msgstr "Do tyÅu"
#: widgets/ErrorDialog.cpp:255
msgid "Help on the Internet"
@@ -9310,55 +9183,54 @@ msgstr "Pomoc w Internecie"
msgid "Grabber"
msgstr "Uchwyt"
-#: widgets/Grid.cpp:643
+#: widgets/Grid.cpp:703
#, c-format
msgid "%d rows, %d columns"
msgstr "%d rzÄdów, %d kolumn"
-#: widgets/Grid.cpp:649
-#: widgets/Grid.cpp:776
+#: widgets/Grid.cpp:709 widgets/Grid.cpp:836
#, c-format
msgid "Row %d"
msgstr "RzÄ
d %d"
-#: widgets/Grid.cpp:791
+#: widgets/Grid.cpp:851
msgid "Empty"
msgstr "Pusty"
-#: widgets/Meter.cpp:396
+#: widgets/Meter.cpp:392
msgid "Enable Meter"
msgstr "Uruchom miernik"
-#: widgets/Meter.cpp:398
+#: widgets/Meter.cpp:394
msgid "Disable Meter"
msgstr "WyÅÄ
cz miernik"
-#: widgets/Meter.cpp:401
+#: widgets/Meter.cpp:397
msgid "Stop Monitoring"
msgstr "PrzestaÅ monitorowaÄ"
-#: widgets/Meter.cpp:403
+#: widgets/Meter.cpp:399
msgid "Start Monitoring"
msgstr "Rozpocznij monitorowaÄ"
-#: widgets/Meter.cpp:407
+#: widgets/Meter.cpp:403
msgid "Horizontal Stereo"
msgstr "Stereo poziomo"
-#: widgets/Meter.cpp:408
+#: widgets/Meter.cpp:404
msgid "Vertical Stereo"
msgstr "Stereo pionowo"
-#: widgets/Meter.cpp:425
+#: widgets/Meter.cpp:421
msgid "Preferences..."
msgstr "Preferencje..."
-#: widgets/Meter.cpp:876
+#: widgets/Meter.cpp:872
#, fuzzy
msgid "Mix Volume"
msgstr "Wzmocnienie wejÅciowe"
-#: widgets/Meter.cpp:1145
+#: widgets/Meter.cpp:1141
msgid "This determines how often the meter is refreshed.\n"
"If you have a slower PC you may want to select a\n"
"lower refresh rate (30 per second or lower), so that\n"
@@ -9368,11 +9240,11 @@ msgstr "OkreÅla to, jak czÄsto odbywa siÄ odÅwieżanie miernika.\n"
"wolniejsze odÅwieżanie (30 razy na sekundÄ lub wolniej), aby\n"
"wyÅwietlacz miernika nie wpÅywaÅ na jakoÅÄ dźwiÄku."
-#: widgets/Meter.cpp:1146
+#: widgets/Meter.cpp:1142
msgid "Meter refresh rate per second [1-100]: "
msgstr "CzÄstotliwoÅÄ odÅwieżania miernika na sekundÄ [1-100]:"
-#: widgets/Meter.cpp:1147
+#: widgets/Meter.cpp:1143
msgid "Meter Preferences"
msgstr "Ustawienia Miernika"
@@ -9385,23 +9257,22 @@ msgstr "Wybierz akcjÄ "
msgid "Please select an action"
msgstr "Wybierz akcjÄ "
-#: widgets/ProgressDialog.cpp:97
+#: widgets/ProgressDialog.cpp:1052
#, fuzzy
msgid "Elapsed Time:"
msgstr "Czas zakoÅczenia"
-#: widgets/ProgressDialog.cpp:117
+#: widgets/ProgressDialog.cpp:1072
#, fuzzy
msgid "Remaining Time:"
msgstr "Usuwanie szumu"
-#: widgets/ProgressDialog.cpp:134
+#: widgets/ProgressDialog.cpp:1100
#, fuzzy
msgid "Cancel"
msgstr "&Cofnij"
-#: widgets/Ruler.cpp:1445
-#: widgets/Ruler.cpp:1446
+#: widgets/Ruler.cpp:1316 widgets/Ruler.cpp:1317
msgid "Vertical Ruler"
msgstr "Pionowa linijka"
@@ -9437,10 +9308,10 @@ msgid "0100 days 024 h 060 m 060 s"
msgstr "0100 dni 024 g 060 m 060 s"
#. i18n-hint: Name of time display format that shows time in hours,
-#. * minutes, seconds and hundreths of a second (1/100 second)
+#. * minutes, seconds and hundredths of a second (1/100 second)
#: widgets/TimeTextCtrl.cpp:288
msgid "hh:mm:ss + hundredths"
-msgstr ""
+msgstr "hh:mm:ss + setne"
#. i18n-hint: Format string for displaying time in hours, minutes, seconds
#. * and hundredths of a second. Change the 'h' to the abbreviation for hours,
@@ -9449,11 +9320,11 @@ msgstr ""
#. * unless there aren't 60 minutes in an hour in your locale
#: widgets/TimeTextCtrl.cpp:294
msgid "0100 h 060 m 060.0100 s"
-msgstr ""
+msgstr "0100 h 060 m 060.0100 s"
#. i18n-hint: Name of time display format that shows time in hours,
#. * minutes, seconds and milliseconds (1/1000 second)
-#: widgets/TimeTextCtrl.cpp:288
+#: widgets/TimeTextCtrl.cpp:297
msgid "hh:mm:ss + milliseconds"
msgstr "gg:mm:ss + milisekund"
@@ -9462,13 +9333,13 @@ msgstr "gg:mm:ss + milisekund"
#. * abbreviation for minutes and 's' to the abbreviation for seconds (the
#. * milliseconds are shown as decimal seconds) . Don't change the numbers
#. * unless there aren't 60 minutes in an hour in your locale
-#: widgets/TimeTextCtrl.cpp:294
+#: widgets/TimeTextCtrl.cpp:303
msgid "0100 h 060 m 060.01000 s"
msgstr "0100 g 060 m 060.01000 s"
#. i18n-hint: Name of time display format that shows time in hours,
#. * minutes, seconds and samples (at the current project sample rate)
-#: widgets/TimeTextCtrl.cpp:297
+#: widgets/TimeTextCtrl.cpp:306
msgid "hh:mm:ss + samples"
msgstr "gg:mm:ss + próbki"
@@ -9477,13 +9348,13 @@ msgstr "gg:mm:ss + próbki"
#. * abbreviation for minutes, 's' to the abbreviation for seconds and
#. * translate samples . Don't change the numbers
#. * unless there aren't 60 seconds in a minute in your locale
-#: widgets/TimeTextCtrl.cpp:303
+#: widgets/TimeTextCtrl.cpp:312
msgid "0100 h 060 m 060 s+.# samples"
msgstr "0100 g 060 m 060 s+.# próbki"
#. i18n-hint: Name of time display format that shows time in samples (at the
#. * current project sample rate)
-#: widgets/TimeTextCtrl.cpp:306
+#: widgets/TimeTextCtrl.cpp:315
msgid "samples"
msgstr "próbki"
@@ -9491,13 +9362,13 @@ msgstr "próbki"
#. * Change the ',' to the 1000s separator for your locale, and translate
#. * samples. If 1000s aren't a base multiple for your number system, then you
#. * can change the numbers to an appropriate one, and put a 0 on the front
-#: widgets/TimeTextCtrl.cpp:311
+#: widgets/TimeTextCtrl.cpp:320
msgid "01000,01000,01000 samples|#"
msgstr "01000,01000,01000 próbki|#"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
#. * seconds and frames at 24 frames per second (commonly used for films)
-#: widgets/TimeTextCtrl.cpp:314
+#: widgets/TimeTextCtrl.cpp:323
msgid "hh:mm:ss + film frames (24 fps)"
msgstr "gg:mm:ss + klatek filmu (24 fps)"
@@ -9506,26 +9377,26 @@ msgstr "gg:mm:ss + klatek filmu (24 fps)"
#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
#. * for seconds and translate 'frames' . Don't change the numbers
#. * unless there aren't 60 seconds in a minute in your locale
-#: widgets/TimeTextCtrl.cpp:320
+#: widgets/TimeTextCtrl.cpp:329
msgid "0100 h 060 m 060 s+.24 frames"
msgstr "0100 g 060 m 060 s+.24 klatek"
#. i18n-hint: Name of time display format that shows time in frames (lots of
#. * frames) at 24 frames per second (commonly used for films)
-#: widgets/TimeTextCtrl.cpp:323
+#: widgets/TimeTextCtrl.cpp:332
msgid "film frames (24 fps)"
msgstr "klatek filmu (24 fps)"
#. i18n-hint: Format string for displaying time in frames at 24 frames per
#. * second. Translate 'frames' and leave the rest alone
-#: widgets/TimeTextCtrl.cpp:326
+#: widgets/TimeTextCtrl.cpp:335
msgid "01000,01000 frames|24"
msgstr "0100 g 060 m 060 s+.24 klatek"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
#. * seconds and frames at NTSC TV drop-frame rate (used for American /
-#. * Japananese TV, and very odd)
-#: widgets/TimeTextCtrl.cpp:330
+#. * Japanese TV, and very odd)
+#: widgets/TimeTextCtrl.cpp:339
msgid "hh:mm:ss + NTSC drop frames"
msgstr "gg:mm:ss + odpadniÄtych klatek NTSC "
@@ -9533,14 +9404,14 @@ msgstr "gg:mm:ss + odpadniÄtych klatek NTSC "
#. * and frames with NTSC drop frames. Change the 'h' to the abbreviation
#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
#. * for seconds and translate 'frames'. Leave the |N alone, it's important!
-#: widgets/TimeTextCtrl.cpp:335
+#: widgets/TimeTextCtrl.cpp:344
msgid "0100 h 060 m 060 s+.30 frames|N"
msgstr "0100 g 060 m 060 s+.30 klatek|N"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
#. * seconds and frames at NTSC TV non-drop-frame rate (used for American /
-#. * Japananese TV, and doesn't quite match wall time
-#: widgets/TimeTextCtrl.cpp:339
+#. * Japanese TV, and doesn't quite match wall time
+#: widgets/TimeTextCtrl.cpp:348
msgid "hh:mm:ss + NTSC non-drop frames"
msgstr "ggf:mm:ss + nie-odpadniÄtych klatek NTSC"
@@ -9549,26 +9420,26 @@ msgstr "ggf:mm:ss + nie-odpadniÄtych klatek NTSC"
#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
#. * for seconds and translate 'frames'. Leave the | .999000999 alone,
#. * the whole things really is slightly off-speed!
-#: widgets/TimeTextCtrl.cpp:345
+#: widgets/TimeTextCtrl.cpp:354
msgid "0100 h 060 m 060 s+.030 frames| .999000999"
msgstr "0100 g 060 m 060 s+.030 klatek| .999000999"
#. i18n-hint: Name of time display format that shows time in frames at NTSC
-#. * TV frame rate (used for American / Japananese TV
-#: widgets/TimeTextCtrl.cpp:348
+#. * TV frame rate (used for American / Japanese TV
+#: widgets/TimeTextCtrl.cpp:357
msgid "NTSC frames"
msgstr "klatek NTSC"
#. i18n-hint: Format string for displaying time in frames with NTSC frames.
#. * Translate 'frames' and leave the rest alone. That really is the frame
#. * rate!
-#: widgets/TimeTextCtrl.cpp:352
+#: widgets/TimeTextCtrl.cpp:361
msgid "01000,01000 frames|29.97002997"
msgstr "01000,01000 klatek|29.97002997"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
#. * seconds and frames at PAL TV frame rate (used for European TV)
-#: widgets/TimeTextCtrl.cpp:355
+#: widgets/TimeTextCtrl.cpp:364
msgid "hh:mm:ss + PAL frames (25 fps)"
msgstr "gg:mm:ss + klatek PAL (25 fps)"
@@ -9576,25 +9447,25 @@ msgstr "gg:mm:ss + klatek PAL (25 fps)"
#. * and frames with PAL TV frames. Change the 'h' to the abbreviation
#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
#. * for seconds and translate 'frames'. Nice simple time code!
-#: widgets/TimeTextCtrl.cpp:360
+#: widgets/TimeTextCtrl.cpp:369
msgid "0100 h 060 m 060 s+.25 frames"
msgstr "0100 g 060 m 060 s+.25 klatek"
#. i18n-hint: Name of time display format that shows time in frames at PAL
#. * TV frame rate (used for European TV
-#: widgets/TimeTextCtrl.cpp:363
+#: widgets/TimeTextCtrl.cpp:372
msgid "PAL frames (25 fps)"
msgstr "klatek PAL (25 fps)"
#. i18n-hint: Format string for displaying time in frames with NTSC frames.
#. * Translate 'frames' and leave the rest alone.
-#: widgets/TimeTextCtrl.cpp:366
+#: widgets/TimeTextCtrl.cpp:375
msgid "01000,01000 frames|25"
msgstr "01000,01000 klatek|25"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
#. * seconds and frames at CD Audio frame rate (75 frames per second)
-#: widgets/TimeTextCtrl.cpp:369
+#: widgets/TimeTextCtrl.cpp:378
msgid "hh:mm:ss + CDDA frames (75 fps)"
msgstr "gg:mm:ss + klatek CDDA (75 fps)"
@@ -9602,27 +9473,27 @@ msgstr "gg:mm:ss + klatek CDDA (75 fps)"
#. * and frames with CD Audio frames. Change the 'h' to the abbreviation
#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
#. * for seconds and translate 'frames'.
-#: widgets/TimeTextCtrl.cpp:374
+#: widgets/TimeTextCtrl.cpp:383
msgid "0100 h 060 m 060 s+.75 frames"
msgstr "0100 g 060 m 060 s+.75 klatek"
#. i18n-hint: Name of time display format that shows time in frames at CD
#. * Audio frame rate (75 frames per second)
-#: widgets/TimeTextCtrl.cpp:377
+#: widgets/TimeTextCtrl.cpp:386
msgid "CDDA frames (75 fps)"
msgstr "klatek CDDA (75 fps)"
#. i18n-hint: Format string for displaying time in frames with CD Audio
#. * frames. Translate 'frames' and leave the rest alone
-#: widgets/TimeTextCtrl.cpp:380
+#: widgets/TimeTextCtrl.cpp:389
msgid "01000,01000 frames|75"
msgstr "01000,01000 klatek|75"
-#: widgets/TimeTextCtrl.cpp:451
+#: widgets/TimeTextCtrl.cpp:461
msgid "Use right mouse button or context key to change format"
msgstr "Użyj prawego klawisza myszy lub klawisza kontekstowego, aby zmieniÄ format"
-#: widgets/TimeTextCtrl.cpp:1485
+#: widgets/TimeTextCtrl.cpp:1495
msgid "Time Control"
msgstr "Kontrola czasu"
@@ -9645,3 +9516,15 @@ msgstr "BÅÄ
d: %hs w lini %d"
msgid "Could not load file: \"%s\""
msgstr "Nie można zaÅadowaÄ pliku: \"%s\""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
+
diff --git a/locale/pt.po b/locale/pt.po
index f03fd4d..d64d6ec 100644
--- a/locale/pt.po
+++ b/locale/pt.po
@@ -17,14 +17,11 @@ msgstr ""
"X-Poedit-Country: BRAZIL\n"
"X-Poedit-SourceCharset: iso-8859-1\n"
-#: AboutDialog.cpp:141
-#: AudacityApp.cpp:732
-#: Menus.cpp:733
+#: AboutDialog.cpp:141 AudacityApp.cpp:732 Menus.cpp:733
msgid "&About Audacity..."
msgstr "&Sobre..."
-#: AboutDialog.cpp:165
-#: effects/AvcCompressor.cpp:674
+#: AboutDialog.cpp:165 effects/AvcCompressor.cpp:674
msgid "Enabled"
msgstr "Ligado"
@@ -41,16 +38,40 @@ msgid "Settings folder: "
msgstr "Pasta de configurações"
#: AboutDialog.cpp:239
-msgid "Audacity is a free program written by a team of volunteer developers around the world. Coordination happens thanks to SourceForge.net, an online service that provides free tools to open-source software projects. Audacity is available for Windows 98 and newer, Mac OS X, Linux, and other Unix-like operating systems. Older versions of Audacity are available for Mac OS 9."
-msgstr "O Audacity é um programa gratuito escrito por um time de desenvolvedores utilizando recursos do Sourceforge, um serviço online para projetos de código-fonte aberto. Está baseado no wxWindows e está disponível para MS-Windows, MacOS X e Linux."
+msgid ""
+"Audacity is a free program written by a team of volunteer developers around "
+"the world. Coordination happens thanks to SourceForge.net, an online service "
+"that provides free tools to open-source software projects. Audacity is "
+"available for Windows 98 and newer, Mac OS X, Linux, and other Unix-like "
+"operating systems. Older versions of Audacity are available for Mac OS 9."
+msgstr ""
+"O Audacity é um programa gratuito escrito por um time de desenvolvedores "
+"utilizando recursos do Sourceforge, um serviço online para projetos de "
+"código-fonte aberto. Está baseado no wxWindows e está disponível para MS-"
+"Windows, MacOS X e Linux."
#: AboutDialog.cpp:243
-msgid "This is a beta version of the program. It may contain bugs and unfinished features. We depend on your feedback, so please visit our website and give us your bug reports and feature requests."
-msgstr "Esta é uma versão beta do programa, para testes. Podem haver problemas ou recursos não implementados. Dependemos de sua ajuda para tornar este programa cada vez melhor. Visite nosso site e reporte qualquer problema que possa ter."
+msgid ""
+"This is a beta version of the program. It may contain bugs and unfinished "
+"features. We depend on your feedback, so please visit our website and give "
+"us your bug reports and feature requests."
+msgstr ""
+"Esta é uma versão beta do programa, para testes. Podem haver problemas ou "
+"recursos não implementados. Dependemos de sua ajuda para tornar este "
+"programa cada vez melhor. Visite nosso site e reporte qualquer problema que "
+"possa ter."
#: AboutDialog.cpp:246
-msgid "This is a stable, completed release of Audacity. However, if you find a bug or have a suggestion, please contact us. We depend on feedback from users in order to continue to improve Audacity. For more information, visit our website."
-msgstr "Esta é uma versão estável e completa do Audacity. No entanto, se você encontrar alguma falha ou se tiver uma sugestão, por favor entre em contato. Este projeto depende do retorno dos usuários para melhorar cada vez mais. Visite nosso site."
+msgid ""
+"This is a stable, completed release of Audacity. However, if you find a bug "
+"or have a suggestion, please contact us. We depend on feedback from users in "
+"order to continue to improve Audacity. For more information, visit our "
+"website."
+msgstr ""
+"Esta é uma versão estável e completa do Audacity. No entanto, se você "
+"encontrar alguma falha ou se tiver uma sugestão, por favor entre em contato. "
+"Este projeto depende do retorno dos usuários para melhorar cada vez mais. "
+"Visite nosso site."
#. i18n-hint: The translation of "translator_credits" will appear
#. in the credits in the About Audacity window. Use this to add
@@ -58,8 +79,7 @@ msgstr "Esta
#.
#. For example: "English translation by Dominic Mazzoni."
#.
-#: AboutDialog.cpp:256
-#: AboutDialog.cpp:258
+#: AboutDialog.cpp:256 AboutDialog.cpp:258
msgid "translator_credits"
msgstr "Tradução ao português brasileiro (pt_BR) por Cleber Tavano"
@@ -112,9 +132,7 @@ msgstr "Audacity"
#. i18n-hint: Rather than a literal translation, consider adding the
#. appropriate suffix or prefix to create a word meaning 'something which
#. has Audacity'
-#: AboutDialog.cpp:340
-#: AboutDialog.cpp:371
-#: SplashDialog.cpp:113
+#: AboutDialog.cpp:340 AboutDialog.cpp:371 SplashDialog.cpp:113
msgid "OK... Audacious!"
msgstr "OK... Audacioso!!"
@@ -122,22 +140,16 @@ msgstr "OK... Audacioso!!"
msgid "GPL License"
msgstr "Licença GPL"
-#: AboutDialog.cpp:688
-#: FreqWindow.cpp:209
-#: widgets/ErrorDialog.cpp:135
+#: AboutDialog.cpp:688 FreqWindow.cpp:209 widgets/ErrorDialog.cpp:135
msgid "Close"
msgstr "Fechar"
-#: AudacityApp.cpp:458
-#: Project.cpp:1751
+#: AudacityApp.cpp:458 Project.cpp:1751
#, c-format
msgid "%s is already open in another window."
msgstr "%s já está aberto em outra janela."
-#: AudacityApp.cpp:460
-#: Project.cpp:1753
-#: Project.cpp:1834
-#: Project.cpp:1978
+#: AudacityApp.cpp:460 Project.cpp:1753 Project.cpp:1834 Project.cpp:1978
#: Project.cpp:2080
msgid "Error opening project"
msgstr "Erro abrindo projeto"
@@ -165,21 +177,16 @@ msgstr "Medidor de entrada"
msgid "Output Meter"
msgstr "Medidor de saída"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
-#: AudacityApp.cpp:734
-#: Menus.cpp:470
-msgid "&Preferences...\tCtrl+,"
-msgstr "&Preferências...\tCtrl+,"
+#: AudacityApp.cpp:734 Menus.cpp:470
+msgid "&Preferences..."
+msgstr "&Preferências..."
-#: AudacityApp.cpp:816
-#: AudacityApp.cpp:893
+#: AudacityApp.cpp:816 AudacityApp.cpp:893
#, c-format
msgid "Using block size of %ld\n"
msgstr "Usando blocos de %ld de tamanho\n"
-#: AudacityApp.cpp:838
-#: AudacityApp.cpp:908
+#: AudacityApp.cpp:838 AudacityApp.cpp:908
#, c-format
msgid "Unknown command line option: %s\n"
msgstr "Comando não-reconhecido: %s\n"
@@ -189,12 +196,18 @@ msgid ""
"Audacity could not find a place to store temporary files.\n"
"Please enter an appropriate directory in the preferences dialog."
msgstr ""
-"Audacity não conseguiu encontrar uma pasta para guardar os arquivos temporários. \n"
-"Por favor, digite um nome de pasta apropriado na caixa de diálogos \"Preferências\"."
+"Audacity não conseguiu encontrar uma pasta para guardar os arquivos "
+"temporários. \n"
+"Por favor, digite um nome de pasta apropriado na caixa de diálogos "
+"\"Preferências\"."
#: AudacityApp.cpp:1033
-msgid "Audacity is now going to exit. Please launch Audacity again to use the new temporary directory."
-msgstr "Audacity irá se encerrar agora. Abra o programa novamente para utilizar a nova pasta temporária."
+msgid ""
+"Audacity is now going to exit. Please launch Audacity again to use the new "
+"temporary directory."
+msgstr ""
+"Audacity irá se encerrar agora. Abra o programa novamente para utilizar a "
+"nova pasta temporária."
#: AudacityApp.cpp:1065
msgid ""
@@ -268,11 +281,16 @@ msgstr "\t-test (executa os testes de diagn
#. * disk
#: AudacityApp.cpp:1148
msgid "\t-blocksize nnn (set max disk block size in bytes)"
-msgstr "\t-blocksize nnn (ajusta o tamanho máximo das unidades de alocação do disco rígido)"
+msgstr ""
+"\t-blocksize nnn (ajusta o tamanho máximo das unidades de alocação do disco "
+"rígido)"
#: AudacityApp.cpp:1149
-msgid "In addition, specify the name of an audio file or Audacity project to open it."
-msgstr "Especifique o nome do arquivo ou projeto que deverá ser aberto pelo Audacity"
+msgid ""
+"In addition, specify the name of an audio file or Audacity project to open "
+"it."
+msgstr ""
+"Especifique o nome do arquivo ou projeto que deverá ser aberto pelo Audacity"
#: AudacityApp.cpp:1421
msgid ""
@@ -319,11 +337,14 @@ msgstr "Problemas de lat
msgid ""
"Latency setting has caused the recorded audio to be hidden before zero.\n"
"Audacity has brought it back to start at zero.\n"
-"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
+"You may have to use the Time Shift Tool (<---> or F5) to drag the track to "
+"the right place."
msgstr ""
-"A latência atual fez com que o áudio fosse colocado antes da posição zero inicial.\n"
+"A latência atual fez com que o áudio fosse colocado antes da posição zero "
+"inicial.\n"
"O Audacity ajustou o áudio de volta à posição zero inicial.\n"
-"Pode ser necessário usar a ferramenta Deslizar para arrastar a faixa de áudio para o local adequado."
+"Pode ser necessário usar a ferramenta Deslizar para arrastar a faixa de "
+"áudio para o local adequado."
#: AutoRecovery.cpp:54
msgid "Automatic Crash Recovery"
@@ -334,21 +355,24 @@ msgid ""
"Some projects were not saved properly the last time Audacity was run.\n"
"Fortunately, the following projects can automatically be recovered:"
msgstr ""
-"Alguns arquivos de projeto não foram salvos corretamente desde a última execução do Audacity.\n"
+"Alguns arquivos de projeto não foram salvos corretamente desde a última "
+"execução do Audacity.\n"
"Os seguintes arquivos puderam ser recuperados automaticamente:"
#: AutoRecovery.cpp:75
msgid "Recoverable projects"
msgstr "Projetos recuperáveis"
-#: AutoRecovery.cpp:78
-#: Tags.cpp:1999
+#: AutoRecovery.cpp:78 Tags.cpp:1999
msgid "Name"
msgstr "Nome"
#: AutoRecovery.cpp:84
-msgid "Recovering a project will not change any files on disk before you save it."
-msgstr "Recuperar um arquivo de projeto não o altera até que seja salvo em disco novamente."
+msgid ""
+"Recovering a project will not change any files on disk before you save it."
+msgstr ""
+"Recuperar um arquivo de projeto não o altera até que seja salvo em disco "
+"novamente."
#: AutoRecovery.cpp:88
msgid "Quit Audacity"
@@ -363,45 +387,38 @@ msgid "Recover Projects"
msgstr "Recuperar Projetos"
#: AutoRecovery.cpp:127
-msgid "You have chosen not to recover any projects. You will not be able to recover those projects later if you change your mind. Do you really want to continue without recovering?"
-msgstr "Você escolheu por não recuperar os arquivos de projeto. Não será possível recuperá-los em outra oportunidade. Você tem certeza de que deseja continuar sem recuperar os arquivos?"
+msgid ""
+"You have chosen not to recover any projects. You will not be able to recover "
+"those projects later if you change your mind. Do you really want to continue "
+"without recovering?"
+msgstr ""
+"Você escolheu por não recuperar os arquivos de projeto. Não será possível "
+"recuperá-los em outra oportunidade. Você tem certeza de que deseja continuar "
+"sem recuperar os arquivos?"
#: AutoRecovery.cpp:128
msgid "Really not recover projects?"
msgstr "Deseja não recuperar o projeto?"
-#: AutoRecovery.cpp:146
-#: AutoRecovery.cpp:183
+#: AutoRecovery.cpp:146 AutoRecovery.cpp:183
msgid "Could not enumerate files in auto save directory"
msgstr "Não foi possível enumerar os arquivos na pasta de auto-recuperação"
-#: AutoRecovery.cpp:147
-#: AutoRecovery.cpp:184
-#: Menus.cpp:2545
-#: Menus.cpp:4445
-#: Project.cpp:1937
-#: Project.cpp:3296
-#: Project.cpp:3375
-#: WaveTrack.cpp:548
-#: WaveTrack.cpp:567
-#: WaveTrack.cpp:1656
-#: effects/Effect.cpp:433
-#: export/ExportMP2.cpp:230
-#: prefs/DirectoriesPrefs.cpp:189
-#: prefs/KeyConfigPrefs.cpp:245
-#: toolbars/ControlToolBar.cpp:532
+#: AutoRecovery.cpp:147 AutoRecovery.cpp:184 Menus.cpp:2545 Menus.cpp:4445
+#: Project.cpp:1937 Project.cpp:3296 Project.cpp:3375 WaveTrack.cpp:548
+#: WaveTrack.cpp:567 WaveTrack.cpp:1656 effects/Effect.cpp:433
+#: export/ExportMP2.cpp:230 prefs/DirectoriesPrefs.cpp:189
+#: prefs/KeyConfigPrefs.cpp:245 toolbars/ControlToolBar.cpp:532
#: toolbars/ControlToolBar.cpp:841
msgid "Error"
msgstr "Erro"
-#: BatchCommandDialog.cpp:56
-#: BatchCommandDialog.cpp:60
+#: BatchCommandDialog.cpp:56 BatchCommandDialog.cpp:60
#: BatchCommandDialog.cpp:61
msgid "Select Command"
msgstr "Selecione Comando"
-#: BatchCommandDialog.cpp:80
-#: BatchProcessDialog.cpp:454
+#: BatchCommandDialog.cpp:80 BatchProcessDialog.cpp:454
#: prefs/KeyConfigPrefs.cpp:142
msgid "&Command"
msgstr "&Comando"
@@ -410,8 +427,7 @@ msgstr "&Comando"
msgid "&Edit Parameters"
msgstr "&Editar Parâmetros"
-#: BatchCommandDialog.cpp:89
-#: BatchProcessDialog.cpp:455
+#: BatchCommandDialog.cpp:89 BatchProcessDialog.cpp:455
msgid "&Parameters"
msgstr "&Parâmetros"
@@ -461,8 +477,7 @@ msgstr ""
"\n"
"%s"
-#: BatchCommands.cpp:675
-#: BatchCommands.cpp:680
+#: BatchCommands.cpp:675 BatchCommands.cpp:680
msgid "Test Mode"
msgstr "Modo de teste"
@@ -471,8 +486,7 @@ msgstr "Modo de teste"
msgid "Apply %s"
msgstr "Aplicar %s"
-#: BatchProcessDialog.cpp:60
-#: BatchProcessDialog.cpp:70
+#: BatchProcessDialog.cpp:60 BatchProcessDialog.cpp:70
#: BatchProcessDialog.cpp:71
msgid "Apply Chain"
msgstr "Aplicar arquivo de lote"
@@ -493,24 +507,15 @@ msgstr "Aplicar ao &projeto atual"
msgid "Apply to &Files..."
msgstr "Aplicar aos ar&quivos..."
-#: BatchProcessDialog.cpp:108
-#: BatchProcessDialog.cpp:247
-#: Tags.cpp:2038
-#: Tags.cpp:2042
-#: Tags.cpp:2342
-#: Tags.cpp:2346
-#: UploadDialog.cpp:180
-#: effects/AvcCompressor.cpp:732
-#: effects/ChangeLength.cpp:183
-#: effects/SpikeCleaner.cpp:188
-#: effects/VST/VSTEffect.cpp:446
-#: effects/audiounits/AudioUnitEffect.cpp:882
-#: effects/vamp/VampEffect.cpp:411
+#: BatchProcessDialog.cpp:108 BatchProcessDialog.cpp:247 Tags.cpp:2038
+#: Tags.cpp:2042 Tags.cpp:2342 Tags.cpp:2346 UploadDialog.cpp:180
+#: effects/AvcCompressor.cpp:732 effects/ChangeLength.cpp:183
+#: effects/SpikeCleaner.cpp:188 effects/VST/VSTEffect.cpp:446
+#: effects/audiounits/AudioUnitEffect.cpp:882 effects/vamp/VampEffect.cpp:411
msgid "&Cancel"
msgstr "&Cancelar"
-#: BatchProcessDialog.cpp:146
-#: BatchProcessDialog.cpp:191
+#: BatchProcessDialog.cpp:146 BatchProcessDialog.cpp:191
msgid "No chain selected"
msgstr "Nenhum arquivo de lote selecionado"
@@ -528,8 +533,14 @@ msgid "Select file(s) for batch processing..."
msgstr "Selecione os arquivos para processamento em lote..."
#: BatchProcessDialog.cpp:210
-msgid "All files (*.*)|*.*|WAV files (*.wav)|*.wav|AIFF files (*.aif)|*.aif|AU files (*.au)|*.au|MP3 files (*.mp3)|*.mp3|Ogg Vorbis files (*.ogg)|*.ogg|FLAC files (*.flac)|*.flac"
-msgstr "Todos os arquivos (*.*)|*.*|Arquivos WAV (*.wav)|*.wav|Arquivos AIFF (*.aif)|*.aif|Arquivos AU (*.au)|*.au|Arquivos MP3 (*.mp3)|*.mp3|Arquivos Ogg Vorbis (*.ogg)|*.ogg|Arquivos FLAC (*.flac)|*.flac"
+msgid ""
+"All files (*.*)|*.*|WAV files (*.wav)|*.wav|AIFF files (*.aif)|*.aif|AU "
+"files (*.au)|*.au|MP3 files (*.mp3)|*.mp3|Ogg Vorbis files (*.ogg)|*.ogg|"
+"FLAC files (*.flac)|*.flac"
+msgstr ""
+"Todos os arquivos (*.*)|*.*|Arquivos WAV (*.wav)|*.wav|Arquivos AIFF (*.aif)|"
+"*.aif|Arquivos AU (*.au)|*.au|Arquivos MP3 (*.mp3)|*.mp3|Arquivos Ogg Vorbis "
+"(*.ogg)|*.ogg|Arquivos FLAC (*.flac)|*.flac"
#: BatchProcessDialog.cpp:231
msgid "Applying..."
@@ -539,8 +550,7 @@ msgstr "Aplicando..."
msgid "File"
msgstr "Arquivo"
-#: BatchProcessDialog.cpp:356
-#: BatchProcessDialog.cpp:360
+#: BatchProcessDialog.cpp:356 BatchProcessDialog.cpp:360
#: BatchProcessDialog.cpp:361
msgid "Edit Chains"
msgstr "Editar arquivos de lote"
@@ -549,19 +559,12 @@ msgstr "Editar arquivos de lote"
msgid "&Chains"
msgstr "Arquivos de &lote"
-#: BatchProcessDialog.cpp:435
-#: Tags.cpp:782
-#: Tags.cpp:1422
-#: Tags.cpp:2022
+#: BatchProcessDialog.cpp:435 Tags.cpp:782 Tags.cpp:1422 Tags.cpp:2022
msgid "&Add"
msgstr "&Adicionar"
-#: BatchProcessDialog.cpp:436
-#: LabelDialog.cpp:126
-#: Tags.cpp:783
-#: Tags.cpp:1423
-#: Tags.cpp:2023
-#: TrackPanel.cpp:3985
+#: BatchProcessDialog.cpp:436 LabelDialog.cpp:126 Tags.cpp:783 Tags.cpp:1423
+#: Tags.cpp:2023 TrackPanel.cpp:3985
msgid "&Remove"
msgstr "&Remover"
@@ -642,11 +645,13 @@ msgstr "Copiando dados de
#: Dependencies.cpp:219
msgid ""
"Your project currently depends on the presence of other files.\n"
-"Copy audio from the following files into your project to make it self-contained?\n"
+"Copy audio from the following files into your project to make it self-"
+"contained?\n"
"This will need more disc space but is safer."
msgstr ""
"Seu projeto depende de áudio de arquivos externos.\n"
-"Deseja copiar o áudio dos seguintes arquivos para esta pasta de projeto para torná-lo auto suficiente?\n"
+"Deseja copiar o áudio dos seguintes arquivos para esta pasta de projeto para "
+"torná-lo auto suficiente?\n"
"Esta ação requer mais espaço em disco, mas garante a integridade do projeto."
#: Dependencies.cpp:266
@@ -669,8 +674,7 @@ msgstr "Espa
msgid "Copy Selected Audio Into Project"
msgstr "Copiar áudio selecionado para o projeto"
-#: Dependencies.cpp:304
-#: Dependencies.cpp:410
+#: Dependencies.cpp:304 Dependencies.cpp:410
msgid "Cancel Save"
msgstr "Cancelar operação"
@@ -682,8 +686,7 @@ msgstr "N
msgid "Copy All Audio into Project (Safer)"
msgstr "Copiar todo o áudio para o projeto (Seguro)"
-#: Dependencies.cpp:317
-#: Dependencies.cpp:322
+#: Dependencies.cpp:317 Dependencies.cpp:322
msgid "Ask me"
msgstr "Perguntar"
@@ -700,12 +703,19 @@ msgid "Whenever a project depends on other files:"
msgstr "Quando um projeto depender de outros arquivos:"
#: Dependencies.cpp:409
-msgid "If you proceed, your project will not be saved to disk. Is this what you want?"
-msgstr "Ao prosseguir, seu projeto não será salvo em disco. Tem certeza de que deseja continuar?"
+msgid ""
+"If you proceed, your project will not be saved to disk. Is this what you "
+"want?"
+msgstr ""
+"Ao prosseguir, seu projeto não será salvo em disco. Tem certeza de que "
+"deseja continuar?"
#: Dependencies.cpp:449
-msgid "Your project is self-contained; it does not depend on any external audio files."
-msgstr "Seu projeto é auto-suficiente, não dependendo de áudio de arquivos externos."
+msgid ""
+"Your project is self-contained; it does not depend on any external audio "
+"files."
+msgstr ""
+"Seu projeto é auto-suficiente, não dependendo de áudio de arquivos externos."
# ou é Checar dependencias?
#: Dependencies.cpp:450
@@ -720,9 +730,7 @@ msgstr ""
"Aviso: Há pouco espaço disponível nesta unidade. \n"
"Selecione outra pasta em outra unidade para os arquivos temporários."
-#: DirManager.cpp:221
-#: DirManager.cpp:251
-#: DirManager.cpp:332
+#: DirManager.cpp:221 DirManager.cpp:251 DirManager.cpp:332
msgid "Progress"
msgstr "Progresso"
@@ -742,10 +750,12 @@ msgstr "Removendo diret
#, c-format
msgid ""
"Audacity found an orphaned blockfile %s! \n"
-"Please consider saving and reloading the project to perform a complete project check.\n"
+"Please consider saving and reloading the project to perform a complete "
+"project check.\n"
msgstr ""
"O Audacity encontrou um arquivo sem procedência %s! \n"
-"Por favor, encerre e abra novamente o projeto para uma verificação completa dos arquivos.\n"
+"Por favor, encerre e abra novamente o projeto para uma verificação completa "
+"dos arquivos.\n"
# i18n-hint: This is the pattern for filenames that are created
# when a file needs to be backed up to a different name. For
@@ -782,8 +792,7 @@ msgstr "Alterando bloco %s\n"
msgid "Unable to rename '%s' to '%s'"
msgstr "Não foi possível renomear '%s' para '%s'"
-#: DirManager.cpp:1115
-#: DirManager.cpp:1403
+#: DirManager.cpp:1115 DirManager.cpp:1403
msgid "Inspecting project file data..."
msgstr "Inspecionando os dados do projeto..."
@@ -811,10 +820,13 @@ msgstr "Arquivo n
#: DirManager.cpp:1207
msgid ""
"Project check found inconsistencies inspecting the loaded project data;\n"
-"click 'Details' for a complete list of errors, or 'OK' to proceed to more options."
+"click 'Details' for a complete list of errors, or 'OK' to proceed to more "
+"options."
msgstr ""
-"A Verificação Automática de Projeto encontrou problemas ao inspecionar os dados salvos;\n"
-"clique em 'Detalhes' para a lista completa dos erros ou 'OK' para mais opções."
+"A Verificação Automática de Projeto encontrou problemas ao inspecionar os "
+"dados salvos;\n"
+"clique em 'Detalhes' para a lista completa dos erros ou 'OK' para mais "
+"opções."
#: DirManager.cpp:1219
#, c-format
@@ -840,14 +852,9 @@ msgstr "Continuar sem apagar, lidando com os arquivos sem aviso"
msgid "Close project immediately with no changes"
msgstr "Fechar projeto sem alterações"
-#: DirManager.cpp:1228
-#: DirManager.cpp:1263
-#: DirManager.cpp:1309
-#: DirManager.cpp:1351
-#: export/Export.cpp:484
-#: export/Export.cpp:501
-#: export/Export.cpp:520
-#: widgets/Warning.cpp:55
+#: DirManager.cpp:1228 DirManager.cpp:1263 DirManager.cpp:1309
+#: DirManager.cpp:1351 export/Export.cpp:484 export/Export.cpp:501
+#: export/Export.cpp:520 widgets/Warning.cpp:55
msgid "Warning"
msgstr "Aviso"
@@ -863,23 +870,25 @@ msgid ""
msgstr ""
"A Verificação Automática de Projetos detectou que\n"
"%d arquivos não estão mais acessíveis. É impossível \n"
-"recuperá-los automaticamente. Você pode inserir silêncios nas posições ocupadas por \n"
+"recuperá-los automaticamente. Você pode inserir silêncios nas posições "
+"ocupadas por \n"
"estes arquivos permanentemente ou apenas para \n"
"esta sessão, ou ainda fechar o projeto e tentar \n"
"localizar manualmente os arquivos faltantes."
#: DirManager.cpp:1259
msgid "Replace missing data with silence [permanent upon save]"
-msgstr "Substituir os arquivos não encontrados por silêncio (permanente após salvar o projeto)"
+msgstr ""
+"Substituir os arquivos não encontrados por silêncio (permanente após salvar "
+"o projeto)"
-#: DirManager.cpp:1260
-#: DirManager.cpp:1348
+#: DirManager.cpp:1260 DirManager.cpp:1348
msgid "Temporarily replace missing data with silence [this session only]"
-msgstr "Temporariamente substituir os arquivos não encontrados por silêncio (apeans para esta sessão)"
+msgstr ""
+"Temporariamente substituir os arquivos não encontrados por silêncio (apeans "
+"para esta sessão)"
-#: DirManager.cpp:1261
-#: DirManager.cpp:1307
-#: DirManager.cpp:1349
+#: DirManager.cpp:1261 DirManager.cpp:1307 DirManager.cpp:1349
msgid "Close project immediately with no further changes"
msgstr "Fechar projeto sem alterações"
@@ -954,8 +963,7 @@ msgstr "Retangular"
msgid "Frequency Analysis"
msgstr "Análise de freqüência"
-#: FreqWindow.cpp:140
-#: TrackPanel.cpp:507
+#: FreqWindow.cpp:140 TrackPanel.cpp:507
msgid "Spectrum"
msgstr "Espectro"
@@ -982,8 +990,7 @@ msgstr "Cepstro"
msgid "Algorithm:"
msgstr "Algoritmo:"
-#: FreqWindow.cpp:168
-#: HistoryWindow.cpp:79
+#: FreqWindow.cpp:168 HistoryWindow.cpp:79
msgid "Size"
msgstr "Tamanho"
@@ -1009,38 +1016,24 @@ msgstr "Freq
msgid "Axis:"
msgstr "Eixo:"
-#: FreqWindow.cpp:206
-#: LabelDialog.cpp:128
-#: Menus.cpp:202
-#: Menus.cpp:231
+#: FreqWindow.cpp:206 LabelDialog.cpp:128 Menus.cpp:202 Menus.cpp:231
msgid "&Export..."
msgstr "&Exportar..."
-#: FreqWindow.cpp:272
-#: FreqWindow.cpp:402
-#: effects/AutoDuck.cpp:489
-#: effects/AutoDuck.cpp:523
-#: effects/AutoDuck.cpp:791
-#: effects/Compressor.cpp:352
-#: effects/Compressor.cpp:360
-#: effects/Equalization.cpp:1103
-#: effects/Equalization.cpp:1105
-#: effects/Equalization.cpp:1113
-#: effects/Equalization.cpp:1179
-#: effects/Equalization.cpp:1388
-#: effects/Equalization.cpp:1399
-#: effects/Normalize.cpp:365
-#: widgets/Meter.cpp:363
+#: FreqWindow.cpp:272 FreqWindow.cpp:402 effects/AutoDuck.cpp:489
+#: effects/AutoDuck.cpp:523 effects/AutoDuck.cpp:791
+#: effects/Compressor.cpp:352 effects/Compressor.cpp:360
+#: effects/Equalization.cpp:1103 effects/Equalization.cpp:1105
+#: effects/Equalization.cpp:1113 effects/Equalization.cpp:1179
+#: effects/Equalization.cpp:1388 effects/Equalization.cpp:1399
+#: effects/Normalize.cpp:365 widgets/Meter.cpp:363
msgid "dB"
msgstr "dB"
#. i18n-hint: This is the abbreviation for "Hertz", or
#. cycles per second.
-#: FreqWindow.cpp:287
-#: FreqWindow.cpp:442
-#: effects/Equalization.cpp:1144
-#: effects/Equalization.cpp:1175
-#: import/ImportRaw.cpp:416
+#: FreqWindow.cpp:287 FreqWindow.cpp:442 effects/Equalization.cpp:1144
+#: effects/Equalization.cpp:1175 import/ImportRaw.cpp:416
msgid "Hz"
msgstr "Hz"
@@ -1048,8 +1041,7 @@ msgstr "Hz"
msgid "Not enough data selected."
msgstr "Não há dados suficientes na seleção."
-#: FreqWindow.cpp:450
-#: effects/AutoDuck.cpp:793
+#: FreqWindow.cpp:450 effects/AutoDuck.cpp:793
msgid "s"
msgstr "s"
@@ -1060,8 +1052,10 @@ msgstr "Cursor: %d Hz (%s) = %d dB Pico: %d Hz (%s) = %.1f dB"
#: FreqWindow.cpp:788
#, c-format
-msgid "Cursor: %.4f sec (%d Hz) (%s) = %f, Peak: %.4f sec (%d Hz) (%s) = %.3f"
-msgstr "Cursor: %.4f seg (%d Hz) (%s) = %f, Pico: %.4f seg (%d Hz) (%s) = %.3f"
+msgid ""
+"Cursor: %.4f sec (%d Hz) (%s) = %f, Peak: %.4f sec (%d Hz) (%s) = %.3f"
+msgstr ""
+"Cursor: %.4f seg (%d Hz) (%s) = %f, Pico: %.4f seg (%d Hz) (%s) = %.3f"
#: FreqWindow.cpp:1059
msgid "spectrum.txt"
@@ -1071,12 +1065,8 @@ msgstr "spectrum.txt"
msgid "Export Spectral Data As:"
msgstr "Exportar dados espectrais como:"
-#: FreqWindow.cpp:1077
-#: LabelDialog.cpp:599
-#: Menus.cpp:2177
-#: Project.cpp:2394
-#: Project.cpp:3348
-#: prefs/KeyConfigPrefs.cpp:180
+#: FreqWindow.cpp:1077 LabelDialog.cpp:599 Menus.cpp:2177 Project.cpp:2394
+#: Project.cpp:3348 prefs/KeyConfigPrefs.cpp:180
msgid "Couldn't write to file: "
msgstr "Não foi possível gravar no arquivo:"
@@ -1129,36 +1119,282 @@ msgid "<p>Welcome to Audacity "
msgstr "<p>Bem-vindo ao Audacity"
#: HelpText.cpp:134
-msgid "Let's get started!</p><p>You can click on the links below to learn how to:<ul><li>[[play|play back]] an existing sound file.<li>How to [[record|record]] a new sound file.<li>How to [[edit|edit]] sound and [[export|export]] to a sound file like MP3.</ul><br><br>Those links will help if you find a problem such as a [[grey|menu option greyed out]] or that Audacity [[norecord|isn't recording properly]] or that you can't [[burncd|burn to a CD]]. You can always get back to these instructions by clicking the 'Help' menu, then 'Show Welcome Message.' For more detailed reading, please read our full Help by clicking the 'Help' menu, then 'Index', or <a href=\"http://audacity.sourceforge.net/help/documentation\">download our Manual</a> in PDF format.<br><br>Welcome again to Audacity."
-msgstr "Vamos começar:</p><br><br>Você pode clicar nos links abaixo para aprender mais sobre:<ul><li>[[play|Reproduzir]] um arquivo de áudio.<li>Como [[record|gravar]] um novo arquivo de áudio.<li>Como [[edit|editar]] áudio e [[export|exportar]] para um arquivo MP3.</ul><br><br>Estes links ajudarão a entender porque alguns [[grey|itens do menu estão desabilitados]], porque o Audacity parece [[norecord|não gravar corretamente]] ou porque não é possível [[burncd|gravar CDs de áudio]]. Você pode retornar a esta janela novamente, selecionando 'Exibir mensagem inicial' no menu 'Ajuda' do programa. <br><br>Para mais informações, leia a Ajuda acessível pelo menu 'Índice da Ajuda' ou <a href=\"http://audacity.sourceforge.net/help/documentation\">copie o manual </a> em formato PDF."
+msgid ""
+"Let's get started!</p><p>You can click on the links below to learn how to:"
+"<ul><li>[[play|play back]] an existing sound file.<li>How to [[record|"
+"record]] a new sound file.<li>How to [[edit|edit]] sound and [[export|"
+"export]] to a sound file like MP3.</ul><br><br>Those links will help if you "
+"find a problem such as a [[grey|menu option greyed out]] or that Audacity "
+"[[norecord|isn't recording properly]] or that you can't [[burncd|burn to a "
+"CD]]. You can always get back to these instructions by clicking the 'Help' "
+"menu, then 'Show Welcome Message.' For more detailed reading, please read "
+"our full Help by clicking the 'Help' menu, then 'Index', or <a href=\"http://"
+"audacity.sourceforge.net/help/documentation\">download our Manual</a> in PDF "
+"format.<br><br>Welcome again to Audacity."
+msgstr ""
+"Vamos começar:</p><br><br>Você pode clicar nos links abaixo para aprender "
+"mais sobre:<ul><li>[[play|Reproduzir]] um arquivo de áudio.<li>Como [[record|"
+"gravar]] um novo arquivo de áudio.<li>Como [[edit|editar]] áudio e [[export|"
+"exportar]] para um arquivo MP3.</ul><br><br>Estes links ajudarão a entender "
+"porque alguns [[grey|itens do menu estão desabilitados]], porque o Audacity "
+"parece [[norecord|não gravar corretamente]] ou porque não é possível "
+"[[burncd|gravar CDs de áudio]]. Você pode retornar a esta janela novamente, "
+"selecionando 'Exibir mensagem inicial' no menu 'Ajuda' do programa. "
+"<br><br>Para mais informações, leia a Ajuda acessível pelo menu 'Índice da "
+"Ajuda' ou <a href=\"http://audacity.sourceforge.net/help/documentation"
+"\">copie o manual </a> em formato PDF."
#: HelpText.cpp:158
-msgid "You can either drag existing files into Audacity, or use the <b>File > Import > Audio</b> command. <b>File > Open</b> does the same, but opens a new Audacity window for any file after the first.<br/><br/>These are the main formats Audacity will play: <b>AIFF, AU, FLAC, M4A</b> (only on a Mac), <b>MP2/MP3, OGG Vorbis, WAV</b>. If your file is in some other format see (format help). If you want to import an audio CD, see [[wiki:How to import CDs|How to import CDs]]<br><br>To start playing your audio, press the green Play button. To stop, press the yellow Stop button. You can also use spacebar to either play or stop. When you start playing again after stopping, playback resumes from its previous starting point. To change the starting point, use the <b>|<<</b> and <b>>>|</b> buttons to skip to the start or end respectively, or click anywhere in the track to restart from that point.<br><br>"
-msgstr "Você pode simplesmente arrastar seus arquivos de áudio para a janela do Audacity, ou usar o comando <b>Arquivo > Importar > Áudio</b>.<br><br>Estes são os formatos principais que o Audacity pode ler: <b>AIFF, AU, FLAC, M4A</b> (na versão para Mac), <b>MP2/MP3, OGG Vorbis e WAV</b>. <br><br>Para importar uma faixa de um CD de áudio, veja a página em inglês [[wiki:How to import CDs|How to import CDs]]<br><br> Para iniciar a reprodução, pressione o botão verde Reproduzir. Para parar, pressione o botão amarelo. A barra de espaço também pode ser usada. Ao parar, a reprodução reinicia no mesmo ponto de parada. Para alterar o ponto de início da reprodução, use os botões <b>|<<</b> e <b>>>|</b> para adiantar para o ponto inicial e final da música ou clique em algum ponto da faixa de áudio para iniciar a reprodução deste ponto.<br><br>"
+msgid ""
+"You can either drag existing files into Audacity, or use the <b>File > "
+"Import > Audio</b> command. <b>File > Open</b> does the same, but opens a "
+"new Audacity window for any file after the first.<br/><br/>These are the "
+"main formats Audacity will play: <b>AIFF, AU, FLAC, M4A</b> (only on a Mac), "
+"<b>MP2/MP3, OGG Vorbis, WAV</b>. If your file is in some other format see "
+"(format help). If you want to import an audio CD, see [[wiki:How to import "
+"CDs|How to import CDs]]<br><br>To start playing your audio, press the green "
+"Play button. To stop, press the yellow Stop button. You can also use "
+"spacebar to either play or stop. When you start playing again after "
+"stopping, playback resumes from its previous starting point. To change the "
+"starting point, use the <b>|<<</b> and <b>>>|</b> buttons to "
+"skip to the start or end respectively, or click anywhere in the track to "
+"restart from that point.<br><br>"
+msgstr ""
+"Você pode simplesmente arrastar seus arquivos de áudio para a janela do "
+"Audacity, ou usar o comando <b>Arquivo > Importar > Áudio</b>.<br><br>Estes "
+"são os formatos principais que o Audacity pode ler: <b>AIFF, AU, FLAC, M4A</"
+"b> (na versão para Mac), <b>MP2/MP3, OGG Vorbis e WAV</b>. <br><br>Para "
+"importar uma faixa de um CD de áudio, veja a página em inglês [[wiki:How to "
+"import CDs|How to import CDs]]<br><br> Para iniciar a reprodução, pressione "
+"o botão verde Reproduzir. Para parar, pressione o botão amarelo. A barra de "
+"espaço também pode ser usada. Ao parar, a reprodução reinicia no mesmo "
+"ponto de parada. Para alterar o ponto de início da reprodução, use os botões "
+"<b>|<<</b> e <b>>>|</b> para adiantar para o ponto inicial e "
+"final da música ou clique em algum ponto da faixa de áudio para iniciar a "
+"reprodução deste ponto.<br><br>"
#: HelpText.cpp:181
-msgid "<b>To start recording, press the red Record button</b>. Before doing so however, there are three crucial settings you must check:<br><br>(1) The <b>Recording Device</b>, set in the Audio I/O tab of Preferences. By default Audacity will use the current system device, which is usually your inbuilt sound device, so you may not need to set this. But if you're using an external USB or Firewire device such as a USB turntable, make sure this device is selected as your recording device. <br><br>(2) The <b>input source</b> for your device, such as microphone or line-in. <ul><li><b>On Windows</b>, you normally choose your input in the dropdown selector on the right of the <b>Mixer Toolbar<b> <i>note: on Vista, you must do so at Recording Device on the Audio I/O Preferences tab.</i></li><li><b>On a Mac</b>, you normally choose input sources outside Audacity, in Apple Audio-MIDI Setup.</li></ul><i>Note: many USB or Firewire devices don't have a choice of inputs, so you can ignore this step - see the documentation for your device. <br><br>(3) <b>Input volume</b>. Before recording for real, make a test recording to set the input level, so that it's neither too soft or too loud.To do this, see this [[wiki:Recording levels|illustrated guide]] or follow these two steps: <ol><li>Turn on <b>monitoring</b>, by either double-clicking over the right-hand of the two VU Meters, or right-clicking over it and choosing \"Start Monitoring\". If you do not see the meters, click View > Toolbars and check \"Meter Toolbar\". <li>Press Record, and adjust the input volume slider on the Mixer Toolbar (by the microphone symbol), so that the red bars in the meter come close to (but do not touch) the right edge of the scale. If you can't hear the sound, go to the Audio I/O tab of Preferences and check \"Software Playthrough\". </ol><br><br>There is more help if you're stuck: our Recording FAQs, our Tutorial <b>Your First Recording </b> in the Manual, and our Wiki [[wiki:Recording Tips|Recording Tips]], especially the [[wiki:Troubleshooting Recordings|Troubleshooting Recordings]] section. <br><br>"
-msgstr "<b>Para iniciar a gravação, pressione o botão vermelho Gravar</b>. Antes de iniciar no entanto, há três ajustes que devem ser feitos:<br><br>(1) O <b>Dispositivo de Gravação</b>, configurado nas Preferências, na aba Dispositivos. Por padrão, o Audacity usa o dispositivo padrão de áudio, o que na maioria dos casos não necessita de ajuste. No entanto, caso você tenha mais de uma placa de som ou um dispositivo de áudio externo USB, certifique-se de que este dispositivo está selecionado em \"Gravação\". <br><br>(2) A <b>fonte de entrada</b> para o seu dispositivo, como o microfone ou entrada de linha. <ul><li><b>No Windows</b>, seleciona-se a fonte de entrada no menu de seleção à direita da <b>Barra de Dispositivos</b>. <i>nota: no Vista, você deve selecionar os dispositivos pelas Preferências do programa, na aba Dispositivos.</i></li><li><b>No Mac</b>, selecionam-se os dispositivos pelo Apple Audio-MIDI Setup.</li></ul><i>Nota: muitos dispositivos USB ou Firewire não oferecem opção de entrada, e este passo pode ser ignorado.<br><br>(3) <b>Volume de Entrada</b>. Antes de prosseguir a gravação, teste o nível do volume de entrada, para garantir que ele não está alto ou baixo demais. Para ajustar, veja o wiki em inglês [[wiki:Recording levels|Recording Levels]] ou siga estes dois passos: <ol><li>Ligue o <b>monitoramento</b>, clicando com o botão direito sobre a Barra de Medição e selecionando \"Iniciar monitoramento\". Caso a barra não esteja disponível, selecione o menu Exibir > Barras de Ferramentas > Barra de medição . <li>Pressione Gravar e ajuste o controle de volume na Barra de medição até que as barras vermelhas cheguem próximas ao lado direito do medidor, sem no entanto tocá-las. Caso não consiga ouvir nenhum som, configure as Preferências do programa, na aba Dispositivos e ligue a opção \"Reprodução simultânea via software\".</ol><br><br>Há outras fontes de ajuda: as Perguntas Freqüentes no site do Audacity, o Tutorial <b>Sua primeira gravação</b> disponível no Manual e o nosso wiki em inglês [[wiki:Recording Tips|Recording Tips]], especialmente a sessão [[wiki:Troubleshooting Recordings|Troubleshooting Recordings]].<br><br>"
+msgid ""
+"<b>To start recording, press the red Record button</b>. Before doing so "
+"however, there are three crucial settings you must check:<br><br>(1) The "
+"<b>Recording Device</b>, set in the Audio I/O tab of Preferences. By default "
+"Audacity will use the current system device, which is usually your inbuilt "
+"sound device, so you may not need to set this. But if you're using an "
+"external USB or Firewire device such as a USB turntable, make sure this "
+"device is selected as your recording device. <br><br>(2) The <b>input "
+"source</b> for your device, such as microphone or line-in. <ul><li><b>On "
+"Windows</b>, you normally choose your input in the dropdown selector on the "
+"right of the <b>Mixer Toolbar<b> <i>note: on Vista, you must do so at "
+"Recording Device on the Audio I/O Preferences tab.</i></li><li><b>On a Mac</"
+"b>, you normally choose input sources outside Audacity, in Apple Audio-MIDI "
+"Setup.</li></ul><i>Note: many USB or Firewire devices don't have a choice of "
+"inputs, so you can ignore this step - see the documentation for your device. "
+"<br><br>(3) <b>Input volume</b>. Before recording for real, make a test "
+"recording to set the input level, so that it's neither too soft or too loud."
+"To do this, see this [[wiki:Recording levels|illustrated guide]] or follow "
+"these two steps: <ol><li>Turn on <b>monitoring</b>, by either double-"
+"clicking over the right-hand of the two VU Meters, or right-clicking over it "
+"and choosing \"Start Monitoring\". If you do not see the meters, click View "
+"> Toolbars and check \"Meter Toolbar\". <li>Press Record, and adjust the "
+"input volume slider on the Mixer Toolbar (by the microphone symbol), so that "
+"the red bars in the meter come close to (but do not touch) the right edge of "
+"the scale. If you can't hear the sound, go to the Audio I/O tab of "
+"Preferences and check \"Software Playthrough\". </ol><br><br>There is more "
+"help if you're stuck: our Recording FAQs, our Tutorial <b>Your First "
+"Recording </b> in the Manual, and our Wiki [[wiki:Recording Tips|Recording "
+"Tips]], especially the [[wiki:Troubleshooting Recordings|Troubleshooting "
+"Recordings]] section. <br><br>"
+msgstr ""
+"<b>Para iniciar a gravação, pressione o botão vermelho Gravar</b>. Antes de "
+"iniciar no entanto, há três ajustes que devem ser feitos:<br><br>(1) O "
+"<b>Dispositivo de Gravação</b>, configurado nas Preferências, na aba "
+"Dispositivos. Por padrão, o Audacity usa o dispositivo padrão de áudio, o "
+"que na maioria dos casos não necessita de ajuste. No entanto, caso você "
+"tenha mais de uma placa de som ou um dispositivo de áudio externo USB, "
+"certifique-se de que este dispositivo está selecionado em \"Gravação\". "
+"<br><br>(2) A <b>fonte de entrada</b> para o seu dispositivo, como o "
+"microfone ou entrada de linha. <ul><li><b>No Windows</b>, seleciona-se a "
+"fonte de entrada no menu de seleção à direita da <b>Barra de Dispositivos</"
+"b>. <i>nota: no Vista, você deve selecionar os dispositivos pelas "
+"Preferências do programa, na aba Dispositivos.</i></li><li><b>No Mac</b>, "
+"selecionam-se os dispositivos pelo Apple Audio-MIDI Setup.</li></ul><i>Nota: "
+"muitos dispositivos USB ou Firewire não oferecem opção de entrada, e este "
+"passo pode ser ignorado.<br><br>(3) <b>Volume de Entrada</b>. Antes de "
+"prosseguir a gravação, teste o nível do volume de entrada, para garantir que "
+"ele não está alto ou baixo demais. Para ajustar, veja o wiki em inglês "
+"[[wiki:Recording levels|Recording Levels]] ou siga estes dois passos: "
+"<ol><li>Ligue o <b>monitoramento</b>, clicando com o botão direito sobre a "
+"Barra de Medição e selecionando \"Iniciar monitoramento\". Caso a barra não "
+"esteja disponível, selecione o menu Exibir > Barras de Ferramentas > Barra "
+"de medição . <li>Pressione Gravar e ajuste o controle de volume na Barra de "
+"medição até que as barras vermelhas cheguem próximas ao lado direito do "
+"medidor, sem no entanto tocá-las. Caso não consiga ouvir nenhum som, "
+"configure as Preferências do programa, na aba Dispositivos e ligue a opção "
+"\"Reprodução simultânea via software\".</ol><br><br>Há outras fontes de "
+"ajuda: as Perguntas Freqüentes no site do Audacity, o Tutorial <b>Sua "
+"primeira gravação</b> disponível no Manual e o nosso wiki em inglês [[wiki:"
+"Recording Tips|Recording Tips]], especialmente a sessão [[wiki:"
+"Troubleshooting Recordings|Troubleshooting Recordings]].<br><br>"
#: HelpText.cpp:223
-msgid "Editing: Audacity is a powerful editor, so you'll want to see what it can do with your imported file or recording. The main commands you will use are under the <b>Edit</b> menu (such as cut, copy and paste) and under the <b>Effect</b> menu (you can do things like boost the bass, change pitch or tempo, or remove noise). <br><br>Audacity applies edits to areas of the audio track. You can select a particular area of audio by clicking in the track and dragging the shaded area with your mouse. If you don't select any audio, Audacity will select all that you have on the screen.<br><br>Two important points when editing:<br><br>(1) If you're still playing or recording, use the yellow Stop button, because you can't edit or export a moving track! <br><br>(2) On occasion, some of the menus or buttons are greyed out or say \"Disabled\" - this is normal. For example, because you can't edit audio while playing or recording, we grey out or disable commands until you press Stop. Commands can sometimes be unavailable for other reasons - for example you can't run effects until you have audio on the screen, and you obviously can't paste audio until you've cut or copied it to Audacity's clipboard. <br><br>"
-msgstr "Editando: O Audacity é um editor de áudio poderoso, é sempre bom conhecer seus recursos. Os comandos principais serão os do menu <b>Editar</b> (como Copiar e Colar), e no menu <b>Efeitos</b> (onde você pode, por exemplo, reforçar os graves, alterar o tempo ou remover ruídos). <br><br>O Audacity aplica os efeitos às areas selecionadas das faixas. Você pode selecionar o trecho desejado clicando na faixa e arrastando a área sombreada. Se você não fizer uma seleção, o efeito é aplicado à todo o áudio que estiver na tela.<br><br>Dois pontos importantes ao editar: <BR><BR>(1) Se você estiver reproduzindo ou gravando, clique no botão Parar, ou não será possível salvar ou exportar o projeto. <BR><BR>(2) Alguns menus podem estar desabilitados ou não acessíveis. Isto é normal, já que alguns comandos não podem ser utilizados em determinadas operações. Por exemplo, o menu Efeitos só está disponível quando há áudio disponível para ser aplicado e só é possível Colar após Recortar ou Copiar áudio. <br><br>"
+msgid ""
+"Editing: Audacity is a powerful editor, so you'll want to see what it can do "
+"with your imported file or recording. The main commands you will use are "
+"under the <b>Edit</b> menu (such as cut, copy and paste) and under the "
+"<b>Effect</b> menu (you can do things like boost the bass, change pitch or "
+"tempo, or remove noise). <br><br>Audacity applies edits to areas of the "
+"audio track. You can select a particular area of audio by clicking in the "
+"track and dragging the shaded area with your mouse. If you don't select any "
+"audio, Audacity will select all that you have on the screen.<br><br>Two "
+"important points when editing:<br><br>(1) If you're still playing or "
+"recording, use the yellow Stop button, because you can't edit or export a "
+"moving track! <br><br>(2) On occasion, some of the menus or buttons are "
+"greyed out or say \"Disabled\" - this is normal. For example, because you "
+"can't edit audio while playing or recording, we grey out or disable commands "
+"until you press Stop. Commands can sometimes be unavailable for other "
+"reasons - for example you can't run effects until you have audio on the "
+"screen, and you obviously can't paste audio until you've cut or copied it to "
+"Audacity's clipboard. <br><br>"
+msgstr ""
+"Editando: O Audacity é um editor de áudio poderoso, é sempre bom conhecer "
+"seus recursos. Os comandos principais serão os do menu <b>Editar</b> (como "
+"Copiar e Colar), e no menu <b>Efeitos</b> (onde você pode, por exemplo, "
+"reforçar os graves, alterar o tempo ou remover ruídos). <br><br>O Audacity "
+"aplica os efeitos às areas selecionadas das faixas. Você pode selecionar o "
+"trecho desejado clicando na faixa e arrastando a área sombreada. Se você não "
+"fizer uma seleção, o efeito é aplicado à todo o áudio que estiver na tela."
+"<br><br>Dois pontos importantes ao editar: <BR><BR>(1) Se você estiver "
+"reproduzindo ou gravando, clique no botão Parar, ou não será possível salvar "
+"ou exportar o projeto. <BR><BR>(2) Alguns menus podem estar desabilitados ou "
+"não acessíveis. Isto é normal, já que alguns comandos não podem ser "
+"utilizados em determinadas operações. Por exemplo, o menu Efeitos só está "
+"disponível quando há áudio disponível para ser aplicado e só é possível "
+"Colar após Recortar ou Copiar áudio. <br><br>"
#: HelpText.cpp:254
-msgid "Exporting and Saving have different purposes.You \"save\" an Audacity project file when you want to return to your work in Audacity later.This means you don't then have to re-import or re-record audio, or redo editing you have done so far.When you want to listen to your work in other computer programs you \"export\" it as an audio file such as a WAV, AIFF or MP3. When burning to CD, you export as WAV or AIFF.<br><br>To save an Audacity project, use <b>File > Save Project</b>. This will save an <b>.aup</b> Project file, plus a <b>_data</b> folder containing the actual audio. Make sure you don't rename or move either of these, because Audacity needs to refer to both.Only use File > Save Project As... when you either need to save an empty Project, or if you want to save an existing Project to a <i> new</i> name. When you want to re-open a saved Project, simply click File > Open and open the .aup file. <br><br>When you want to export your work to an audio file, use <b>File > Export</b> and choose your desired format in the \"Save as type\" dropdown.Click the Options button for advanced choices, such as the bit rate to use for MP3 export.There are two other Export commands under the File menu.\"Export Selection\" exports only a selected area of audio.\"Export Multiple\" exports multiple files, for example where you have more than one track on screen and want to export each as a separate file. If exporting tracks from a recorded LP or tape to multiple files, use [[wiki:Splitting recordings into separate tracks|labels with Export Multiple]]. <br><br>Before you can export as <b>MP3</b>, you may need to add the LAME MP3 encoder to your computer.For help with LAME, see [[wiki:Lame_Installation|Lame Installation]]. There is also some help on how to [[burncd|burn to a CD]].<br><br>"
-msgstr "Exportar e Salvar tem propósitos diferentes. Você \"salva\" um projeto do Audacity quando pretende retomá-lo depois. Ou seja, não é necessário importar todo o áudio novamente e refazer a edição já feita. Quando você quer ouvir o trabalho em outro programa de áudio, deve \"Exportar\" para um arquivo WAV ou AIFF. <br> <br> Para salvar como um projeto do Audacity, use <b>Arquivo > Salvar Projeto</b>. Assim, o projeto será salvo como um arquivo <b>.AUP</b> e mais uma pasta com o nome <b>_data</b> contendo todo o áudio do projeto. Assegure-se de não apagar ou renomear nenhum dos dois, ou o Audacity não irá encontrar os arquivos necessários para editar seu projeto novamente. Use <b>Arquivo > Salvar projeto como</b> para alterar o nome de um projeto já salvo ou para salvar um projeto vazio. Para abrir novamente um projeto já salvo, clique em <b>Arquivo > Abrir</b> e selecione o arquivo .AUP. <br><br> Para exportar seu projeto em um arquivo de áudio, use <b>Arquivo > Exportar...</b> e selecione o formato desejado na janela \"Exportar como\". Clique no botão Opções para selecionar as opções avançadas, como a taxa do arquivo MP3. Há outros dois comandos de Exportar: \"Exportar seleção como\", que exporta apenas a área selecionada, e \"Exportar múltiplos\" que exporta em diferentes arquivos, para por exemplo quando você tem mais de uma faixa num mesmo projeto e deseja exportar cada faixa separadamente. Ao exportar partes de uma gravação longa, como as faixas de um cassete ou LP, veja as instruções em inglês na wiki [[wiki:Splitting recordings into separate tracks|labels with Export Multiple]]. <br><br>Antes de exportar arquivos como <b>MP3</b>, você precisará instalar a biblioteca LAME MP3 em seu computador. Para ajuda em como proceder a instalação, veja a nossa página em inglês no wiki [[wiki:Lame_Installation|Lame Installation]]. Há também algumas dicas sobre [[burncd|como gravar em um CD]].<br><br>"
+msgid ""
+"Exporting and Saving have different purposes.You \"save\" an Audacity "
+"project file when you want to return to your work in Audacity later.This "
+"means you don't then have to re-import or re-record audio, or redo editing "
+"you have done so far.When you want to listen to your work in other computer "
+"programs you \"export\" it as an audio file such as a WAV, AIFF or MP3. When "
+"burning to CD, you export as WAV or AIFF.<br><br>To save an Audacity "
+"project, use <b>File > Save Project</b>. This will save an <b>.aup</b> "
+"Project file, plus a <b>_data</b> folder containing the actual audio. Make "
+"sure you don't rename or move either of these, because Audacity needs to "
+"refer to both.Only use File > Save Project As... when you either need to "
+"save an empty Project, or if you want to save an existing Project to a <i> "
+"new</i> name. When you want to re-open a saved Project, simply click File > "
+"Open and open the .aup file. <br><br>When you want to export your work to an "
+"audio file, use <b>File > Export</b> and choose your desired format in the "
+"\"Save as type\" dropdown.Click the Options button for advanced choices, "
+"such as the bit rate to use for MP3 export.There are two other Export "
+"commands under the File menu.\"Export Selection\" exports only a selected "
+"area of audio.\"Export Multiple\" exports multiple files, for example where "
+"you have more than one track on screen and want to export each as a separate "
+"file. If exporting tracks from a recorded LP or tape to multiple files, use "
+"[[wiki:Splitting recordings into separate tracks|labels with Export "
+"Multiple]]. <br><br>Before you can export as <b>MP3</b>, you may need to add "
+"the LAME MP3 encoder to your computer.For help with LAME, see [[wiki:"
+"Lame_Installation|Lame Installation]]. There is also some help on how to "
+"[[burncd|burn to a CD]].<br><br>"
+msgstr ""
+"Exportar e Salvar tem propósitos diferentes. Você \"salva\" um projeto do "
+"Audacity quando pretende retomá-lo depois. Ou seja, não é necessário "
+"importar todo o áudio novamente e refazer a edição já feita. Quando você "
+"quer ouvir o trabalho em outro programa de áudio, deve \"Exportar\" para um "
+"arquivo WAV ou AIFF. <br> <br> Para salvar como um projeto do Audacity, use "
+"<b>Arquivo > Salvar Projeto</b>. Assim, o projeto será salvo como um arquivo "
+"<b>.AUP</b> e mais uma pasta com o nome <b>_data</b> contendo todo o áudio "
+"do projeto. Assegure-se de não apagar ou renomear nenhum dos dois, ou o "
+"Audacity não irá encontrar os arquivos necessários para editar seu projeto "
+"novamente. Use <b>Arquivo > Salvar projeto como</b> para alterar o nome de "
+"um projeto já salvo ou para salvar um projeto vazio. Para abrir novamente um "
+"projeto já salvo, clique em <b>Arquivo > Abrir</b> e selecione o arquivo ."
+"AUP. <br><br> Para exportar seu projeto em um arquivo de áudio, use "
+"<b>Arquivo > Exportar...</b> e selecione o formato desejado na janela "
+"\"Exportar como\". Clique no botão Opções para selecionar as opções "
+"avançadas, como a taxa do arquivo MP3. Há outros dois comandos de Exportar: "
+"\"Exportar seleção como\", que exporta apenas a área selecionada, e "
+"\"Exportar múltiplos\" que exporta em diferentes arquivos, para por exemplo "
+"quando você tem mais de uma faixa num mesmo projeto e deseja exportar cada "
+"faixa separadamente. Ao exportar partes de uma gravação longa, como as "
+"faixas de um cassete ou LP, veja as instruções em inglês na wiki [[wiki:"
+"Splitting recordings into separate tracks|labels with Export Multiple]]. "
+"<br><br>Antes de exportar arquivos como <b>MP3</b>, você precisará instalar "
+"a biblioteca LAME MP3 em seu computador. Para ajuda em como proceder a "
+"instalação, veja a nossa página em inglês no wiki [[wiki:Lame_Installation|"
+"Lame Installation]]. Há também algumas dicas sobre [[burncd|como gravar em "
+"um CD]].<br><br>"
#: HelpText.cpp:289
-msgid "<h2>Can Audacity import file formats like WMA, AAC, RealAudio etc.?</h2> <p>Audacity cannot import or export files in <b>WMA, RealAudio, Shorten (SHN)</b>, ormost other proprietary formats, because of licensing and patent restrictions. Audacity also cannot import any kind of Digital Rights Management (DRM) protected file, including most purchased online such as from iTunes or Napster.If you are on a Mac, you can import <b>AAC</b> encoded files (such as <b>M4A</b>) as long as they are not DRM protected, but you cannot export to these formats.</p> <p>Some open formats are not yet supported by Audacity, including <b>Ogg Speex</b> and <b>Musepack</b>.We hope to support these formats in future versions of Audacity.</p> <p>If you cannot import your file into Audacity, you can as a workround convert it to WAV or AIFF.As long as it's not a DRM-protected file, you could do this with iTunes or with <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> player.If it's a DRM-protected file, you can burn it to an audio CD in the application that is licensed to play it, then extract (rip) the CD track to WAV or AIFF.You can use iTunes to extract to WAV or AIFF, plus Windows Media Player 11 or <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> on Windows.Or you can play the file on your computer and record it - see <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">."
-msgstr "<h2>O Audacity pode importar formato como WMA, AAC, RealAudio etc.?</h2> <p>O Audacity não pode importar ou exportar arquivos em formatos <b>WMA, RealAudio, Shorten (SHN)</b>, ou outros formatos proprietários devido à restrições de patentes. O Audacity também não pode importar arquivos protegidos por DRM (Direitos de Cópia), o que inclui a maioria das músicas compradas em lojas on-line de música. Na versão para Macintosh, é possível importar áudio em formato <b>AAC</b> não protegido (como os com extensão <b>M4A</B>).</p><p>Alguns formatos não-proprietários ainda não estão disponível no Audacity, como <b>Ogg Speex</b> e <b>Musepack</b>. Estes formatos serão disponibilizados em versões futuras do programa.</p><p>Se não for possível importar arquivos de áudio para o Audacity, você pode contornar esta restrição convertendo o arquivo em um formato não compactado como WAV ou AIFF. Para arquivos não protegidos, o iTunes ou o <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> player podem ajudar na conversão. No caso de arquivos protegidos por DRM, você pode tentar gravá-lo num CD de áudio e extraí-lo novamente do CD em formato WAV ou AIFF, utilizando o iTunes no Macintosh e Windows Media Player ou <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> no Windows.</P><p>Como alternativa, você pode reproduzir o arquivo em seu computador e gravar o fluxo de áudio. Veja a <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">página em inglês</a>."
+msgid ""
+"<h2>Can Audacity import file formats like WMA, AAC, RealAudio etc.?</h2> "
+"<p>Audacity cannot import or export files in <b>WMA, RealAudio, Shorten (SHN)"
+"</b>, ormost other proprietary formats, because of licensing and patent "
+"restrictions. Audacity also cannot import any kind of Digital Rights "
+"Management (DRM) protected file, including most purchased online such as "
+"from iTunes or Napster.If you are on a Mac, you can import <b>AAC</b> "
+"encoded files (such as <b>M4A</b>) as long as they are not DRM protected, "
+"but you cannot export to these formats.</p> <p>Some open formats are not yet "
+"supported by Audacity, including <b>Ogg Speex</b> and <b>Musepack</b>.We "
+"hope to support these formats in future versions of Audacity.</p> <p>If you "
+"cannot import your file into Audacity, you can as a workround convert it to "
+"WAV or AIFF.As long as it's not a DRM-protected file, you could do this with "
+"iTunes or with <a href=\"http://www.erightsoft.com/SUPER.html#Dnload"
+"\">SUPER</a> player.If it's a DRM-protected file, you can burn it to an "
+"audio CD in the application that is licensed to play it, then extract (rip) "
+"the CD track to WAV or AIFF.You can use iTunes to extract to WAV or AIFF, "
+"plus Windows Media Player 11 or <a href=\"http://cdexos.sourceforge.net/?"
+"q=download\">CDex</a> on Windows.Or you can play the file on your computer "
+"and record it - see <a href=\"http://audacity.sourceforge.net/help/faq?"
+"s=recording&i=streaming\">."
+msgstr ""
+"<h2>O Audacity pode importar formato como WMA, AAC, RealAudio etc.?</h2> "
+"<p>O Audacity não pode importar ou exportar arquivos em formatos <b>WMA, "
+"RealAudio, Shorten (SHN)</b>, ou outros formatos proprietários devido à "
+"restrições de patentes. O Audacity também não pode importar arquivos "
+"protegidos por DRM (Direitos de Cópia), o que inclui a maioria das músicas "
+"compradas em lojas on-line de música. Na versão para Macintosh, é possível "
+"importar áudio em formato <b>AAC</b> não protegido (como os com extensão "
+"<b>M4A</B>).</p><p>Alguns formatos não-proprietários ainda não estão "
+"disponível no Audacity, como <b>Ogg Speex</b> e <b>Musepack</b>. Estes "
+"formatos serão disponibilizados em versões futuras do programa.</p><p>Se não "
+"for possível importar arquivos de áudio para o Audacity, você pode contornar "
+"esta restrição convertendo o arquivo em um formato não compactado como WAV "
+"ou AIFF. Para arquivos não protegidos, o iTunes ou o <a href=\"http://www."
+"erightsoft.com/SUPER.html#Dnload\">SUPER</a> player podem ajudar na "
+"conversão. No caso de arquivos protegidos por DRM, você pode tentar gravá-lo "
+"num CD de áudio e extraí-lo novamente do CD em formato WAV ou AIFF, "
+"utilizando o iTunes no Macintosh e Windows Media Player ou <a href=\"http://"
+"cdexos.sourceforge.net/?q=download\">CDex</a> no Windows.</P><p>Como "
+"alternativa, você pode reproduzir o arquivo em seu computador e gravar o "
+"fluxo de áudio. Veja a <a href=\"http://audacity.sourceforge.net/help/faq?"
+"s=recording&i=streaming\">página em inglês</a>."
#: HelpText.cpp:316
-msgid "If you want to burn your work to an audio CD, you must first [[export|export as WAV or AIFF]] and then burn that file to CD with a CD burning program like iTunes - for more help, see [[wiki:How to burn CDs|How to burn CDs]].<br><br>"
-msgstr "Se você deseja gravar seu projeto em um CD de áudio, você deve primeiro [[export|exportá-lo como WAV ou AIFF]] e então gravar o CD com um programa apropriado. Para maiores informações, veja o wiki em inglês [[wiki:How to burn CDs|How to burn CDs]].<br><br>"
+msgid ""
+"If you want to burn your work to an audio CD, you must first [[export|export "
+"as WAV or AIFF]] and then burn that file to CD with a CD burning program "
+"like iTunes - for more help, see [[wiki:How to burn CDs|How to burn CDs]]."
+"<br><br>"
+msgstr ""
+"Se você deseja gravar seu projeto em um CD de áudio, você deve primeiro "
+"[[export|exportá-lo como WAV ou AIFF]] e então gravar o CD com um programa "
+"apropriado. Para maiores informações, veja o wiki em inglês [[wiki:How to "
+"burn CDs|How to burn CDs]].<br><br>"
#: HelpText.cpp:331
-msgid "<p>You don't appear to have Audacity help files on your machine. You can <a href=\"http://audacity.sourceforge.net/help/documentation\">download</a> the help files and then access them from Audacity as you have just attempted, or you can click <a href=\"*URL*\">here</a> to read the help online."
-msgstr "<p>Os arquivos de ajuda do Audacity não estão instalados. Você pode <a href=\"http://audacity.sourceforge.net/help/documentation\">copiá-los da Internet </a> e eles estarão disponíveis pelo menu Índice da Ajuda ou <a href=\"*URL*\">clique aqui</a> para ler a ajuda online."
+msgid ""
+"<p>You don't appear to have Audacity help files on your machine. You can <a "
+"href=\"http://audacity.sourceforge.net/help/documentation\">download</a> the "
+"help files and then access them from Audacity as you have just attempted, or "
+"you can click <a href=\"*URL*\">here</a> to read the help online."
+msgstr ""
+"<p>Os arquivos de ajuda do Audacity não estão instalados. Você pode <a href="
+"\"http://audacity.sourceforge.net/help/documentation\">copiá-los da Internet "
+"</a> e eles estarão disponíveis pelo menu Índice da Ajuda ou <a href=\"*URL*"
+"\">clique aqui</a> para ler a ajuda online."
#: HistoryWindow.cpp:53
msgid "Undo History"
@@ -1184,15 +1420,9 @@ msgstr "N
msgid "&Discard"
msgstr "&Apagar"
-#: HistoryWindow.cpp:111
-#: Tags.cpp:2039
-#: Tags.cpp:2041
-#: Tags.cpp:2343
-#: Tags.cpp:2345
-#: effects/ChangeLength.cpp:186
-#: effects/SpikeCleaner.cpp:191
-#: effects/vamp/VampEffect.cpp:414
-#: export/ExportCL.cpp:396
+#: HistoryWindow.cpp:111 Tags.cpp:2039 Tags.cpp:2041 Tags.cpp:2343
+#: Tags.cpp:2345 effects/ChangeLength.cpp:186 effects/SpikeCleaner.cpp:191
+#: effects/vamp/VampEffect.cpp:414 export/ExportCL.cpp:396
msgid "&OK"
msgstr "&OK"
@@ -1200,8 +1430,7 @@ msgstr "&OK"
msgid "Unable to determine"
msgstr "Não foi possível determinar"
-#: Internat.cpp:180
-#: import/ImportRaw.cpp:392
+#: Internat.cpp:180 import/ImportRaw.cpp:392
msgid "bytes"
msgstr "bytes"
@@ -1221,9 +1450,7 @@ msgstr "GB"
msgid "Track"
msgstr "Faixa"
-#: LabelDialog.cpp:53
-#: Menus.cpp:4019
-#: Menus.cpp:4047
+#: LabelDialog.cpp:53 Menus.cpp:4019 Menus.cpp:4047
msgid "Label"
msgstr "Título"
@@ -1235,8 +1462,7 @@ msgstr "Te&mpo inicial"
msgid "End Time"
msgstr "Tempo final"
-#: LabelDialog.cpp:98
-#: Menus.cpp:615
+#: LabelDialog.cpp:98 Menus.cpp:615
msgid "&Edit Labels"
msgstr "&Editar títulos"
@@ -1252,8 +1478,7 @@ msgstr "Inserir &Ap
msgid "Insert &Before"
msgstr "Inserir An&tes"
-#: LabelDialog.cpp:127
-#: Menus.cpp:192
+#: LabelDialog.cpp:127 Menus.cpp:192
msgid "&Import..."
msgstr "&Importar"
@@ -1277,20 +1502,15 @@ msgstr ""
msgid "Confirm"
msgstr "Confirmar"
-#: LabelDialog.cpp:514
-#: Menus.cpp:3517
+#: LabelDialog.cpp:514 Menus.cpp:3517
msgid "Select a text file containing labels..."
msgstr "Selecione o arquivo de texto contendo os títulos...."
-#: LabelDialog.cpp:518
-#: Menus.cpp:3521
+#: LabelDialog.cpp:518 Menus.cpp:3521
msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
msgstr "Arquivos de texto (*.txt)|*.txt|Todos os arquivos (*.*)|*.*"
-#: LabelDialog.cpp:532
-#: Menus.cpp:3533
-#: Project.cpp:1800
-#: Project.cpp:1808
+#: LabelDialog.cpp:532 Menus.cpp:3533 Project.cpp:1800 Project.cpp:1808
#: import/ImportMIDI.cpp:31
msgid "Could not open file: "
msgstr "Não foi possível abrir o arquivo:"
@@ -1299,13 +1519,11 @@ msgstr "N
msgid "No labels to export."
msgstr "Não há títulos para exportar."
-#: LabelDialog.cpp:564
-#: Menus.cpp:2142
+#: LabelDialog.cpp:564 Menus.cpp:2142
msgid "Export Labels As:"
msgstr "Exportar títulos como:"
-#: LabelDialog.cpp:566
-#: Menus.cpp:2140
+#: LabelDialog.cpp:566 Menus.cpp:2140
msgid "labels.txt"
msgstr "títulos.txt"
@@ -1317,10 +1535,7 @@ msgstr "Nova faixa de &t
msgid "Enter track name"
msgstr "Digite o nome da faixa"
-#: LabelDialog.cpp:701
-#: LabelDialog.h:52
-#: LabelTrack.cpp:88
-#: Menus.cpp:547
+#: LabelDialog.cpp:701 LabelDialog.h:52 LabelTrack.cpp:88 Menus.cpp:547
msgid "&Label Track"
msgstr "Faixa de Títu&lo"
@@ -1350,23 +1565,22 @@ msgid "&File"
msgstr "&Arquivo"
#: Menus.cpp:164
-msgid "&New\tCtrl+N"
-msgstr "&Novo\tCtrl+N"
+msgid "&New"
+msgstr "&Novo"
#: Menus.cpp:166
-msgid "&Open...\tCtrl+O"
-msgstr "&Abrir...\tCtrl+O"
+msgid "&Open..."
+msgstr "&Abrir..."
#: Menus.cpp:171
-msgid "&Close\tCtrl+W"
-msgstr "&Fechar\tCtrl+W"
+msgid "&Close"
+msgstr "&Fechar"
#: Menus.cpp:174
-msgid "&Save Project\tCtrl+S"
-msgstr "&Salvar projeto\tCtrl+S"
+msgid "&Save Project"
+msgstr "&Salvar projeto"
-#: Menus.cpp:178
-#: Project.cpp:2643
+#: Menus.cpp:178 Project.cpp:2643
msgid "Save Project &As..."
msgstr "Salvar &projeto como..."
@@ -1379,8 +1593,8 @@ msgid "Open Me&tadata Editor..."
msgstr "Abrir editor de Me&tadados..."
#: Menus.cpp:194
-msgid "&Audio...\tCtrl+Shift+I"
-msgstr "Áu&dio...\tCtrl+Shift+I"
+msgid "&Audio..."
+msgstr "Áu&dio..."
#: Menus.cpp:195
msgid "&Labels..."
@@ -1394,8 +1608,7 @@ msgstr "&MIDI..."
msgid "&Raw Data..."
msgstr "Dados sem &formatação..."
-#: Menus.cpp:208
-#: Menus.cpp:237
+#: Menus.cpp:208 Menus.cpp:237
msgid "Expo&rt Selection..."
msgstr "E&xportar seleção como"
@@ -1407,8 +1620,7 @@ msgstr "Exportar t
msgid "Export &Multiple..."
msgstr "Exportar &múltiplos..."
-#: Menus.cpp:246
-#: Menus.cpp:260
+#: Menus.cpp:246 Menus.cpp:260
msgid "Edit C&hains..."
msgstr "Editar arquivos de &lote..."
@@ -1429,79 +1641,74 @@ msgid "&Print..."
msgstr "&Imprimir..."
#: Menus.cpp:285
-msgid "E&xit\tCtrl+Q"
-msgstr "Sai&r\tCtrl+Q"
+msgid "E&xit"
+msgstr "Sai&r"
-#: Menus.cpp:293
-#: toolbars/EditToolBar.cpp:76
+#: Menus.cpp:293 toolbars/EditToolBar.cpp:76
msgid "&Edit"
msgstr "&Editar"
#: Menus.cpp:297
-msgid "&Undo\tCtrl+Z"
-msgstr "Des&fazer\tCtrl+Z"
+msgid "&Undo"
+msgstr "Des&fazer"
-#: Menus.cpp:305
-#: prefs/KeyConfigPrefs.cpp:369
-#: toolbars/EditToolBar.cpp:146
+#: Menus.cpp:305 prefs/KeyConfigPrefs.cpp:369 toolbars/EditToolBar.cpp:146
msgid "&Redo"
msgstr "&Refazer"
#: Menus.cpp:318
-msgid "Cu&t\tCtrl+X"
-msgstr "Rec&ortar\tCtrl+X"
+msgid "Cu&t"
+msgstr "Rec&ortar"
#: Menus.cpp:322
-msgid "Spl&it Cut\tCtrl+Alt+X"
-msgstr "&Separar e Recortar\tCtrl+Alt+X"
+msgid "Spl&it Cut"
+msgstr "&Separar e Recortar"
#: Menus.cpp:323
-msgid "&Copy\tCtrl+C"
-msgstr "&Copiar\tCtrl+C"
+msgid "&Copy"
+msgstr "&Copiar"
#: Menus.cpp:327
-msgid "&Paste\tCtrl+V"
-msgstr "Co&lar\tCtrl+V"
+msgid "&Paste"
+msgstr "Co&lar"
#: Menus.cpp:331
-msgid "Tri&m\tCtrl+T"
-msgstr "S&ilenciar fora da Seleção\tCtrl+T"
+msgid "Tri&m"
+msgstr "S&ilenciar fora da Seleção"
#: Menus.cpp:333
-msgid "&Delete\tCtrl+K"
-msgstr "&Apagar\tCtrl+K"
+msgid "&Delete"
+msgstr "&Apagar"
#: Menus.cpp:334
-msgid "Split D&elete\tCtrl+Alt+K"
-msgstr "S&eparar e Deletar\tCtrl+Alt+K"
+msgid "Split D&elete"
+msgstr "S&eparar e Deletar"
#: Menus.cpp:335
-msgid "&Silence\tCtrl+L"
-msgstr "S&ilenciar\tCtrl+L"
+msgid "&Silence"
+msgstr "S&ilenciar"
#: Menus.cpp:337
-msgid "Sp&lit\tCtrl+I"
-msgstr "Se¶r\tCtrl+I"
+msgid "Sp&lit"
+msgstr "Se¶r"
#: Menus.cpp:342
-msgid "Split Ne&w\tCtrl+Alt+I"
-msgstr "Separar e criar no&vo\tCtrl+Alt+I"
+msgid "Split Ne&w"
+msgstr "Separar e criar no&vo"
#: Menus.cpp:347
-msgid "&Join\tCtrl+J"
-msgstr "&Unir\tCtrl+J"
+msgid "&Join"
+msgstr "&Unir"
#: Menus.cpp:348
-msgid "Disj&oin\tCtrl+Alt+J"
-msgstr "Desu&nir\tCtrl+Alt+J"
+msgid "Disj&oin"
+msgstr "Desu&nir"
#: Menus.cpp:350
-msgid "Duplic&ate\tCtrl+D"
-msgstr "&Duplicar\tCtrl+D"
+msgid "Duplic&ate"
+msgstr "&Duplicar"
-#: Menus.cpp:356
-#: Menus.cpp:556
-#: effects/StereoToMono.h:23
+#: Menus.cpp:356 Menus.cpp:556 effects/StereoToMono.h:23
msgid "&Stereo To Mono"
msgstr "E&stéreo para Mono"
@@ -1511,68 +1718,53 @@ msgstr "
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:365
-msgid "&Cut\tAlt+X"
-msgstr "Re&cortar\tAlt+X"
+msgid "&Cut"
+msgstr "Re&cortar"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:370
-msgid "&Split Cut\tShift+Alt+X"
-msgstr "Separar e Rec&ortar\tShift+Alt+X"
+msgid "&Split Cut"
+msgstr "Separar e Rec&ortar"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:375
-msgid "Co&py\tShift+Alt+C"
-msgstr "Co&piar\tShift+Alt+C"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:381
-msgid "&Delete\tAlt+K"
-msgstr "&Apagar\tAlt+K"
+msgid "Co&py"
+msgstr "Co&piar"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:386
-msgid "Sp&lit Delete\tShift+Alt+K"
-msgstr "Separar e Apa&gar\tShift+Alt+K"
+msgid "Sp&lit Delete"
+msgstr "Separar e Apa&gar"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:391
-msgid "Sile&nce\tAlt+L"
-msgstr "Sile&nciar\tAlt+L"
+msgid "Sile&nce"
+msgstr "Sile&nciar"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:397
-msgid "Spli&t\tAlt+I"
-msgstr "Se¶r\tAlt+I"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:402
-msgid "&Join\tAlt+J"
-msgstr "&Unir\tAlt+J"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:407
-msgid "Disj&oin\tShift+Alt+J"
-msgstr "Desu&nir\tShift+Alt+J"
+msgid "Spli&t"
+msgstr "Se¶r"
#: Menus.cpp:413
msgid "&Select..."
msgstr "&Selecionar"
#: Menus.cpp:414
-msgid "&All\tCtrl+A"
-msgstr "Selecionar &Tudo\tCtrl+A"
+msgid "&All"
+msgstr "Selecionar &Tudo"
#: Menus.cpp:415
-msgid "&None\tCtrl+Shift+A"
-msgstr "&Nenhum\tCtrl+Shift+A"
+msgid "&None"
+msgstr "&Nenhum"
#: Menus.cpp:419
-msgid "Left at Playback Position\t["
-msgstr "À esquerda do cursor\t["
+msgid "Left at Playback Position"
+msgstr "À esquerda do cursor"
#: Menus.cpp:420
-msgid "Right at Playback Position\t]"
-msgstr "À direita do cursor\t]"
+msgid "Right at Playback Position"
+msgstr "À direita do cursor"
#: Menus.cpp:424
msgid "Start to Cursor"
@@ -1583,8 +1775,8 @@ msgid "Cursor to End"
msgstr "Selecionar do cursor até o final"
#: Menus.cpp:431
-msgid "Find &Zero Crossings\tZ"
-msgstr "Encontrar cruzamentos em &zero\tZ"
+msgid "Find &Zero Crossings"
+msgstr "Encontrar cruzamentos em &zero"
#: Menus.cpp:433
msgid "Mo&ve Cursor..."
@@ -1642,45 +1834,41 @@ msgstr "Ligar rede da antecipa
msgid "Turn Grid Snap Off"
msgstr "Desligar rede da antecipação"
-#: Menus.cpp:474
-msgid "&Preferences...\tCtrl+P"
-msgstr "&Preferências...\tCtrl+P"
-
#: Menus.cpp:484
msgid "&View"
msgstr "E&xibir"
#: Menus.cpp:486
-msgid "Zoom &In\tCtrl+1"
-msgstr "&Mais zoom\tCtrl+1"
+msgid "Zoom &In"
+msgstr "&Mais zoom"
#: Menus.cpp:489
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "Zoom &normal\tCtrl+2"
+msgid "Zoom &Normal"
+msgstr "Zoom &normal"
#: Menus.cpp:490
-msgid "Zoom &Out\tCtrl+3"
-msgstr "Men&os zoom\tCtrl+3"
+msgid "Zoom &Out"
+msgstr "Men&os zoom"
#: Menus.cpp:493
-msgid "&Fit in Window\tCtrl+F"
-msgstr "&Ajustar à janela\tCtrl+F"
+msgid "&Fit in Window"
+msgstr "&Ajustar à janela"
#: Menus.cpp:494
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "Ajustar &verticalmente\tCtrl+Shift+F"
+msgid "Fit &Vertically"
+msgstr "Ajustar &verticalmente"
#: Menus.cpp:495
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "&Zoom na seleção\tCtrl+E"
+msgid "&Zoom to Selection"
+msgstr "&Zoom na seleção"
#: Menus.cpp:498
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
-msgstr "&Recolher todas as faixas\tCtrl+Shift+C"
+msgid "&Collapse All Tracks"
+msgstr "&Recolher todas as faixas"
#: Menus.cpp:499
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
-msgstr "&Expandir todas as faixas\tCtrl+Shift+X"
+msgid "E&xpand All Tracks"
+msgstr "&Expandir todas as faixas"
#: Menus.cpp:502
msgid "Show Clipping"
@@ -1739,15 +1927,14 @@ msgid "Add &New..."
msgstr "&Nova faixa"
#: Menus.cpp:545
-msgid "&Audio Track\tCtrl+Shift+N"
-msgstr "Faix&a de Áudio\tCtrl+Shift+N"
+msgid "&Audio Track"
+msgstr "Faix&a de Áudio"
#: Menus.cpp:546
msgid "&Stereo Track"
msgstr "Faixa E&stéreo"
-#: Menus.cpp:548
-#: TimeTrack.cpp:44
+#: Menus.cpp:548 TimeTrack.cpp:44
msgid "&Time Track"
msgstr "Faixa de &Tempo"
@@ -1756,15 +1943,13 @@ msgstr "Faixa de &Tempo"
msgid "&Timer Record..."
msgstr "&Gravação programada..."
-#: Menus.cpp:560
-#: Menus.cpp:3698
-#: Mix.cpp:120
+#: Menus.cpp:560 Menus.cpp:3698 Mix.cpp:120
msgid "&Mix and Render"
msgstr "&Mixar"
#: Menus.cpp:564
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
-msgstr "Mixar e gerar áudio para nova faixa\tCtrl+Shift+M"
+msgid "Mix and Render to New Track"
+msgstr "Mixar e gerar áudio para nova faixa"
#: Menus.cpp:568
msgid "&Resample..."
@@ -1815,12 +2000,12 @@ msgid "Ali&gn And Move Cursor..."
msgstr "A&linhar e mover o cursor"
#: Menus.cpp:611
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "Adicionar &título à seleção\tCtrl+B"
+msgid "Add &Label At Selection"
+msgstr "Adicionar &título à seleção"
#: Menus.cpp:612
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "Adicionar título à &posição atual\tCtrl+M"
+msgid "Add Label At &Playback Position"
+msgstr "Adicionar título à &posição atual"
#: Menus.cpp:618
msgid "S&ort tracks by..."
@@ -1843,8 +2028,8 @@ msgid "Effe&ct"
msgstr "Efeito&s"
#: Menus.cpp:658
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "Repetir último efeito\tCtrl+R"
+msgid "Repeat Last Effect"
+msgstr "Repetir último efeito"
#: Menus.cpp:690
msgid "&Analyze"
@@ -1854,8 +2039,7 @@ msgstr "A&nalisar"
msgid "Plot Spectrum..."
msgstr "&Espectro de freqüência..."
-#: Menus.cpp:725
-#: Menus.cpp:728
+#: Menus.cpp:725 Menus.cpp:728
msgid "&Help"
msgstr "Aj&uda"
@@ -1884,188 +2068,176 @@ msgid "&Audio Device Info..."
msgstr "&Dispositivos de áudio..."
#: Menus.cpp:758
-msgid "Cycle backward through Dock, Track View, and Selection Bar\tCtrl+Shift+F6"
-msgstr "Alternar entre o Dock, Visualização de Faixas e Barra de Seleção\tCtrl+Shift+F6"
+msgid "Cycle backward through Dock, Track View, and Selection Bar"
+msgstr "Alternar entre o Dock, Visualização de Faixas e Barra de Seleção"
#: Menus.cpp:759
-msgid "Cycle forward through Dock, Track View, and Selection Bar\tCtrl+F6"
-msgstr "Alternar entre Barra de Seleção, Visualização de Faixas e Dock\tCtrl+F6"
+msgid "Cycle forward through Dock, Track View, and Selection Bar"
+msgstr "Alternar entre Barra de Seleção, Visualização de Faixas e Dock"
#: Menus.cpp:762
-msgid "Selection Tool\tF1"
-msgstr "Ferramenta de seleção\tF1"
+msgid "Selection Tool"
+msgstr "Ferramenta de seleção"
#: Menus.cpp:763
-msgid "Envelope Tool\tF2"
-msgstr "Ferramenta Envelope\tF2"
+msgid "Envelope Tool"
+msgstr "Ferramenta Envelope"
#: Menus.cpp:764
-msgid "Draw Tool\tF3"
-msgstr "Ferramenta de desenho\tF3"
+msgid "Draw Tool"
+msgstr "Ferramenta de desenho"
#: Menus.cpp:765
-msgid "Zoom Tool\tF4"
-msgstr "Ferramenta de Zoom\tF4"
+msgid "Zoom Tool"
+msgstr "Ferramenta de Zoom"
#: Menus.cpp:766
-msgid "Time Shift Tool\tF5"
-msgstr "Ferramenta Deslizar\tF5"
+msgid "Time Shift Tool"
+msgstr "Ferramenta Deslizar"
#: Menus.cpp:767
-msgid "Multi Tool\tF6"
-msgstr "Multi-ferramenta\tF6"
+msgid "Multi Tool"
+msgstr "Multi-ferramenta"
#: Menus.cpp:769
-msgid "Next Tool\tD"
-msgstr "Próxima ferramenta\tD"
+msgid "Next Tool"
+msgstr "Próxima ferramenta"
#: Menus.cpp:770
-msgid "Previous Tool\tA"
-msgstr "Ferramenta anterior\tA"
+msgid "Previous Tool"
+msgstr "Ferramenta anterior"
#: Menus.cpp:772
-msgid "Play/Stop\tSpacebar"
-msgstr "Reproduzir/Parar\tBarra de Espaço"
+msgid "Play/Stop"
+msgstr "Reproduzir/Parar"
#: Menus.cpp:773
-msgid "Stop\tS"
-msgstr "Parar\tS"
+msgid "Stop"
+msgstr "Parar"
#: Menus.cpp:774
-msgid "Pause\tP"
-msgstr "Pausar\tP"
+msgid "Pause"
+msgstr "Pausar"
#: Menus.cpp:775
-msgid "Record\tR"
-msgstr "Gravar\tR"
+msgid "Record"
+msgstr "Gravar"
#: Menus.cpp:777
-msgid "Play/Stop and Select\tShift+Return"
-msgstr "Reproduzir/Parar e Selecionar\tShift+Enter"
+msgid "Play/Stop and Select"
+msgstr "Reproduzir/Parar e Selecionar"
#: Menus.cpp:778
-msgid "Stop and Select\tShift+A"
-msgstr "Parar e Selecionar\tShift+A"
+msgid "Stop and Select"
+msgstr "Parar e Selecionar"
#: Menus.cpp:780
-msgid "Play One Second\t1"
-msgstr "Reproduzir um segundo\t1"
+msgid "Play One Second"
+msgstr "Reproduzir um segundo"
#: Menus.cpp:781
-msgid "Play To Selection\tB"
-msgstr "Reproduzir seleção\tB"
+msgid "Play To Selection"
+msgstr "Reproduzir seleção"
#: Menus.cpp:782
-msgid "Play Looped\tL"
-msgstr "Reproduzir continuamente\tL"
-
-#: Menus.cpp:783
-msgid "Play Looped\tShift+Spacebar"
-msgstr "Reprodução contínua\tShift+Barra de Espaço"
+msgid "Play Looped"
+msgstr "Reproduzir continuamente"
#: Menus.cpp:784
-msgid "Play Cut Preview\tC"
-msgstr "Reproduzir recorte da previsão\tC"
+msgid "Play Cut Preview"
+msgstr "Reproduzir recorte da previsão"
#: Menus.cpp:786
-msgid "Skip to Start\tHome"
-msgstr "Ir para o início\tHome"
+msgid "Skip to Start"
+msgstr "Ir para o início"
#: Menus.cpp:787
-msgid "Skip to End\tEnd"
-msgstr "Ir para o final\tEnd"
+msgid "Skip to End"
+msgstr "Ir para o final"
#: Menus.cpp:789
-msgid "Selection to Start\tShift+Home"
-msgstr "Seleção desde o início\tShift+Home"
+msgid "Selection to Start"
+msgstr "Seleção desde o início"
#: Menus.cpp:790
-msgid "Selection to End\tShift+End"
-msgstr "Selecionar do cursor para o fim\tShift+End"
+msgid "Selection to End"
+msgstr "Selecionar do cursor para o fim"
#: Menus.cpp:792
-msgid "DeleteKey\tBackspace"
-msgstr "Apagar\tBackspace"
+msgid "DeleteKey"
+msgstr "Apagar"
#: Menus.cpp:797
-msgid "DeleteKey2\tDelete"
-msgstr "Apagar\tDelete"
+msgid "DeleteKey2"
+msgstr "Apagar"
#: Menus.cpp:803
-msgid "Seek left short period during playback\tLeft"
-msgstr "Alterar posição do cursor pouco à esquerda\tSeta para Esquerda"
+msgid "Seek left short period during playback"
+msgstr "Alterar posição do cursor pouco à esquerda"
#: Menus.cpp:804
-msgid "Seek right short period during playback\tRight"
-msgstr "Alterar posição do cursor pouco à direita\tSeta para Direita"
+msgid "Seek right short period during playback"
+msgstr "Alterar posição do cursor pouco à direita"
#: Menus.cpp:805
-msgid "Seek left long period during playback\tShift+Left"
-msgstr "Alterar posição do cursor mais à esquerda\tShift+Seta para Esquerda"
+msgid "Seek left long period during playback"
+msgstr "Alterar posição do cursor mais à esquerda"
#: Menus.cpp:806
-msgid "Seek right long period during playback\tShift+Right"
-msgstr "Alterar posição do cursor mais à direita\tShift+Seta para Direita"
+msgid "Seek right long period during playback"
+msgstr "Alterar posição do cursor mais à direita"
#: Menus.cpp:810
-msgid "Move Focus to Previous Track\tUp"
-msgstr "Mover foco para a faixa anterior\tSeta para Cima"
+msgid "Move Focus to Previous Track"
+msgstr "Mover foco para a faixa anterior"
#: Menus.cpp:811
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
-msgstr "Mover foco para a faixa anterior e alterar seleção\tShift+Seta para Cima"
+msgid "Move Focus to Previous and Change Selection"
+msgstr "Mover foco para a faixa anterior e alterar seleção"
#: Menus.cpp:812
-msgid "Move Focus to Next Track\tDown"
-msgstr "Mover foco para a faixa posterior\tSeta para Baixo"
+msgid "Move Focus to Next Track"
+msgstr "Mover foco para a faixa posterior"
#: Menus.cpp:813
-msgid "Move Focus to Next and Change Selection\tShift+Down"
-msgstr "Mover foco para a faixa posterior e alterar seleção\tShift+Seta para Baixo"
+msgid "Move Focus to Next and Change Selection"
+msgstr "Mover foco para a faixa posterior e alterar seleção"
#: Menus.cpp:814
-msgid "Toggle Focused Track\tReturn"
-msgstr "Alterar foco sobre a faixa\tEnter"
-
-#: Menus.cpp:815
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr "Alterar foco sobre a faixa\tEnter do teclado numérico"
-
-#: Menus.cpp:816
-msgid "Toggle Focused Track\tCtrl+Spacebar"
-msgstr "Alterar foco sobre a faixa\tCtrl+Barra de espaços"
+msgid "Toggle Focused Track"
+msgstr "Alterar foco sobre a faixa"
#: Menus.cpp:818
-msgid "Cursor Left\tLeft"
-msgstr "Cursor à Esquerda\tSeta Esquerda"
+msgid "Cursor Left"
+msgstr "Cursor à Esquerda"
#: Menus.cpp:819
-msgid "Cursor Right\tRight"
-msgstr "Cursor à Direita\tSeta Direita"
+msgid "Cursor Right"
+msgstr "Cursor à Direita"
#: Menus.cpp:820
-msgid "Cursor Short Jump Left\t,"
-msgstr "Movimento curto do Cursor à esquerda\t,"
+msgid "Cursor Short Jump Left"
+msgstr "Movimento curto do Cursor à esquerda"
#: Menus.cpp:821
-msgid "Cursor Short Jump Right\t."
-msgstr "Movimento curto do Cursor à direita\t."
+msgid "Cursor Short Jump Right"
+msgstr "Movimento curto do Cursor à direita"
#: Menus.cpp:822
-msgid "Cursor Long Jump Left\tShift+,"
-msgstr "Movimento longo do Cursor à esquerda\tShift+,"
+msgid "Cursor Long Jump Left"
+msgstr "Movimento longo do Cursor à esquerda"
#: Menus.cpp:823
-msgid "Cursor Long Jump Right\tShift+."
-msgstr "Movimento longo do Cursor à direita\tShift+."
+msgid "Cursor Long Jump Right"
+msgstr "Movimento longo do Cursor à direita"
#: Menus.cpp:825
-msgid "Selection Extend Left\tShift+Left"
-msgstr "Extender seleção à esquerda\tShift+Seta Esq."
+msgid "Selection Extend Left"
+msgstr "Extender seleção à esquerda"
#: Menus.cpp:826
-msgid "Selection Extend Right\tShift+Right"
-msgstr "Extender seleção à direita\tShift+Seta Dir."
+msgid "Selection Extend Right"
+msgstr "Extender seleção à direita"
#: Menus.cpp:828
msgid "Set (or Extend) Left Selection"
@@ -2076,52 +2248,52 @@ msgid "Set (or Extend) Right Selection"
msgstr "Ajustar (ou extender) seleção à direita"
#: Menus.cpp:831
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "Contarir seleção à esquerda\tCtrl+Shift+Seta Dir."
+msgid "Selection Contract Left"
+msgstr "Contarir seleção à esquerda"
#: Menus.cpp:832
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "Contarir seleção à direita\tCtrl+Shift+Seta Esq."
+msgid "Selection Contract Right"
+msgstr "Contarir seleção à direita"
#: Menus.cpp:834
-msgid "Change pan on focused track\tShift+P"
-msgstr "Alterar balanço da faixa selecionada\tShift+P"
+msgid "Change pan on focused track"
+msgstr "Alterar balanço da faixa selecionada"
#: Menus.cpp:835
-msgid "Pan left on focused track\tAlt+Shift+Left"
-msgstr "Balanço à esquerda nas faixas selecionadas\tAlt+Shift+Seta Esq"
+msgid "Pan left on focused track"
+msgstr "Balanço à esquerda nas faixas selecionadas"
#: Menus.cpp:836
-msgid "Pan right on focused track\tAlt+Shift+Right"
-msgstr "Balanço à direita na faixa selecionada\tAlt+Shift+Seta Dir"
+msgid "Pan right on focused track"
+msgstr "Balanço à direita na faixa selecionada"
#: Menus.cpp:837
-msgid "Change gain on focused track\tShift+G"
-msgstr "Alterar ganho na faixa selecionada\tShift+G"
+msgid "Change gain on focused track"
+msgstr "Alterar ganho na faixa selecionada"
#: Menus.cpp:838
-msgid "Increase gain on focused track\tAlt+Shift+Up"
-msgstr "Aumentar ganho na faixa selecionada\tAlt+Shift+Seta acima"
+msgid "Increase gain on focused track"
+msgstr "Aumentar ganho na faixa selecionada"
#: Menus.cpp:839
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
-msgstr "Diminuir ganho na faixa selecionada\tAlt+Shift+Seta abaixo"
+msgid "Decrease gain on focused track"
+msgstr "Diminuir ganho na faixa selecionada"
#: Menus.cpp:840
-msgid "Open menu on focused track\tShift+M"
+msgid "Open menu on focused track"
msgstr "Abrir menu da faixa selecionada"
#: Menus.cpp:841
-msgid "Mute/Unmute focused track\tShift+U"
-msgstr "Mudo/não-Mudo na faixa selecionada\tShift+U"
+msgid "Mute/Unmute focused track"
+msgstr "Mudo/não-Mudo na faixa selecionada"
#: Menus.cpp:842
-msgid "Solo/Unsolo focused track\tShift+S"
-msgstr "Solo/não-Solo na faixa selecionada\tShift+S"
+msgid "Solo/Unsolo focused track"
+msgstr "Solo/não-Solo na faixa selecionada"
#: Menus.cpp:843
-msgid "Close focused track\tShift+C"
-msgstr "Fechar faixa selecionada\tShift+C"
+msgid "Close focused track"
+msgstr "Fechar faixa selecionada"
#: Menus.cpp:845
msgid "Snap To On"
@@ -2190,8 +2362,8 @@ msgstr "Voc
#: Menus.cpp:2005
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "Repetir %s\tCtrl+R"
+msgid "Repeat %s"
+msgstr "Repetir %s"
#: Menus.cpp:2136
msgid "There are no label tracks to export."
@@ -2205,9 +2377,7 @@ msgstr "N
msgid "Nothing to redo"
msgstr "Não há mais o que refazer"
-#: Menus.cpp:2336
-#: TrackPanel.cpp:546
-#: toolbars/EditToolBar.cpp:133
+#: Menus.cpp:2336 TrackPanel.cpp:546 toolbars/EditToolBar.cpp:133
msgid "Cut"
msgstr "Cortar"
@@ -2223,10 +2393,7 @@ msgstr "Separar e Recortar"
msgid "Split-cut to the clipboard"
msgstr "Separar e Recortar para a Área de Transferência"
-#: Menus.cpp:2439
-#: Menus.cpp:2510
-#: Menus.cpp:2604
-#: TrackPanel.cpp:548
+#: Menus.cpp:2439 Menus.cpp:2510 Menus.cpp:2604 TrackPanel.cpp:548
#: toolbars/EditToolBar.cpp:137
msgid "Paste"
msgstr "Colar"
@@ -2235,8 +2402,7 @@ msgstr "Colar"
msgid "Pasted text from the clipboard"
msgstr "Texto copiado para a Área de Transferência"
-#: Menus.cpp:2510
-#: Menus.cpp:2604
+#: Menus.cpp:2510 Menus.cpp:2604
msgid "Pasted from the clipboard"
msgstr "Colado da área de transferência"
@@ -2244,8 +2410,7 @@ msgstr "Colado da
msgid "Copying stereo audio into a mono track is not allowed."
msgstr "Não é possível copiar áudio estéreo em faixas mono"
-#: Menus.cpp:2640
-#: toolbars/EditToolBar.cpp:139
+#: Menus.cpp:2640 toolbars/EditToolBar.cpp:139
msgid "Trim"
msgstr "Silenciar fora da seleção"
@@ -2285,8 +2450,7 @@ msgstr "Unir"
msgid "Silenced selected tracks for %.2f seconds at %.2f"
msgstr "Faixas silenciadas por %.2f segundo em %.2f"
-#: Menus.cpp:2741
-#: toolbars/EditToolBar.cpp:141
+#: Menus.cpp:2741 toolbars/EditToolBar.cpp:141
msgid "Silence"
msgstr "Silenciar"
@@ -2370,8 +2534,7 @@ msgstr "Separar t
msgid "Disjoined labeled regions"
msgstr "Regiões com títulos desunidas"
-#: Menus.cpp:2917
-#: TrackPanel.cpp:5861
+#: Menus.cpp:2917 TrackPanel.cpp:5861
msgid "Split"
msgstr "Dividir seleção"
@@ -2389,12 +2552,17 @@ msgstr "Dividir nos t
#: Menus.cpp:3394
msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "Para desenhar o espectro, todas as faixas devem ter a mesma taxa de amostragem."
+msgstr ""
+"Para desenhar o espectro, todas as faixas devem ter a mesma taxa de "
+"amostragem."
#: Menus.cpp:3420
#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "Foi selecionado áudio demais. Só os primeiros %1f segundos serão analizados."
+msgid ""
+"Too much audio was selected. Only the first %.1f seconds of audio will be "
+"analyzed."
+msgstr ""
+"Foi selecionado áudio demais. Só os primeiros %1f segundos serão analizados."
#: Menus.cpp:3546
#, c-format
@@ -2410,8 +2578,11 @@ msgid "Select a MIDI file..."
msgstr "Selecione um arquivo MIDI..."
#: Menus.cpp:3561
-msgid "All files (*.*)|*.*|MIDI files (*.mid)|*.mid|Allegro files (*.gro)|*.gro"
-msgstr "Todos os arquivos (*.*)|*.*|Arquivos MIDI (*.mid)|*.mid|Arquivos Allegro (*.gro)|*.gro"
+msgid ""
+"All files (*.*)|*.*|MIDI files (*.mid)|*.mid|Allegro files (*.gro)|*.gro"
+msgstr ""
+"Todos os arquivos (*.*)|*.*|Arquivos MIDI (*.mid)|*.mid|Arquivos Allegro (*."
+"gro)|*.gro"
#: Menus.cpp:3577
#, c-format
@@ -2430,10 +2601,7 @@ msgstr "Selecione um arquivo de
msgid "All files (*)|*"
msgstr "Todos os arquivos (*)|*"
-#: Menus.cpp:3611
-#: Project.cpp:2540
-#: Project.cpp:2565
-#: import/ImportPCM.cpp:440
+#: Menus.cpp:3611 Project.cpp:2540 Project.cpp:2565 import/ImportPCM.cpp:440
#: import/ImportPCM.cpp:484
msgid "Import"
msgstr "Importar"
@@ -2509,10 +2677,7 @@ msgstr "Alinhar"
msgid "Created new audio track"
msgstr "Criada nova faixa de áudio"
-#: Menus.cpp:3912
-#: Menus.cpp:3935
-#: Menus.cpp:3950
-#: Menus.cpp:3970
+#: Menus.cpp:3912 Menus.cpp:3935 Menus.cpp:3950 Menus.cpp:3970
msgid "New Track"
msgstr "Nova faixa"
@@ -2525,8 +2690,10 @@ msgid "Created new label track"
msgstr "Criado novo título"
#: Menus.cpp:3959
-msgid "The version of Audacity you are using does not support multiple time tracks."
-msgstr "The version of Audacity you are using does not support multiple time tracks."
+msgid ""
+"The version of Audacity you are using does not support multiple time tracks."
+msgstr ""
+"The version of Audacity you are using does not support multiple time tracks."
#: Menus.cpp:3970
msgid "Created new time track"
@@ -2548,8 +2715,7 @@ msgstr "Salvar configura
msgid "CleanSpeech Presets (*.csp)|*.csp"
msgstr "Ajustes do CleanSpeech (*.csp)|*.csp"
-#: Menus.cpp:4085
-#: export/Export.cpp:509
+#: Menus.cpp:4085 export/Export.cpp:509
msgid "Sorry, pathnames longer than 256 characters not supported."
msgstr "Desculpe, nomes com mais de 256 caracteres não são aceitos."
@@ -2557,8 +2723,7 @@ msgstr "Desculpe, nomes com mais de 256 caracteres n
msgid "Problem encountered exporting presets."
msgstr "Houve um problema ao exportar as configurações;"
-#: Menus.cpp:4132
-#: export/Export.cpp:402
+#: Menus.cpp:4132 export/Export.cpp:402
msgid "Unable to export"
msgstr "Não foi possível exportar"
@@ -2574,9 +2739,7 @@ msgstr "Remover faixas de
msgid "Enter new samplerate:"
msgstr "Digite a nova taxa de amostragem:"
-#: Menus.cpp:4439
-#: Menus.cpp:4458
-#: export/ExportMP3.cpp:1871
+#: Menus.cpp:4439 Menus.cpp:4458 export/ExportMP3.cpp:1871
msgid "Resample"
msgstr "Reamostrar"
@@ -2597,8 +2760,7 @@ msgstr "Reamostrar faixa"
msgid "Resampled audio track(s)"
msgstr "Reamostrar faixa de áudio"
-#: Mix.cpp:94
-#: Mix.cpp:101
+#: Mix.cpp:94 Mix.cpp:101
msgid "Mix"
msgstr "Mix"
@@ -2631,14 +2793,7 @@ msgstr "Bem-vindo ao Audacity vers
msgid "(Recovered)"
msgstr "(Recuperado)"
-#: Project.cpp:1472
-#: TrackPanel.cpp:772
-#: toolbars/ControlToolBar.cpp:191
-msgid "Record"
-msgstr "Gravar"
-
-#: Project.cpp:1472
-#: TrackPanel.cpp:772
+#: Project.cpp:1472 TrackPanel.cpp:772
msgid "Recorded Audio"
msgstr "Áudio gravado"
@@ -2681,8 +2836,7 @@ msgstr "Selecionar arquivo de
msgid "Audacity projects|*.aup|"
msgstr "Projetos do Audacity|*.aup|"
-#: Project.cpp:1801
-#: Project.cpp:1809
+#: Project.cpp:1801 Project.cpp:1809
msgid "Error opening file"
msgstr "Erro abrindo arquivo"
@@ -2700,7 +2854,9 @@ msgid "Error opening file or project"
msgstr "Erro ao abrir arquivo ou projeto"
#: Project.cpp:1833
-msgid "Audacity was unable to convert an Audacity 1.0 project to the new project format."
+msgid ""
+"Audacity was unable to convert an Audacity 1.0 project to the new project "
+"format."
msgstr "O Audacity não pôde converter o arquivo da versão 1.0."
#: Project.cpp:1936
@@ -2719,8 +2875,7 @@ msgstr "Recuperar"
msgid "Project checker repaired file"
msgstr "A Verificação Automática de Projeto reparou o arquivo"
-#: Project.cpp:1967
-#: effects/Repair.h:29
+#: Project.cpp:1967 effects/Repair.h:29
msgid "Repair"
msgstr "Reparar"
@@ -2806,8 +2961,7 @@ msgstr ""
"O disco %s pode estar cheio ou protegido\n"
"contra gravação."
-#: Project.cpp:2381
-#: Project.cpp:2395
+#: Project.cpp:2381 Project.cpp:2395
msgid "Error saving project"
msgstr "Erro salvando projeto"
@@ -2832,8 +2986,7 @@ msgstr "Importando %s..."
msgid "Imported '%s'"
msgstr "Importado: '%s'"
-#: Project.cpp:2592
-#: Project.cpp:2600
+#: Project.cpp:2592 Project.cpp:2600
msgid "Error importing"
msgstr "Erro importando "
@@ -2847,16 +3000,22 @@ msgstr "Arquivo de
#: Project.cpp:2642
msgid ""
-"Audacity project files (.aup) let you save everything you're working on exactly as it\n"
-"appears on the screen, but most other programs can't open Audacity project files.\n"
+"Audacity project files (.aup) let you save everything you're working on "
+"exactly as it\n"
+"appears on the screen, but most other programs can't open Audacity project "
+"files.\n"
"\n"
-"When you want to save a file that can be opened by other programs, select one of the\n"
+"When you want to save a file that can be opened by other programs, select "
+"one of the\n"
"Export commands."
msgstr ""
-"Arquivos de projeto do Audacity (.AUP) permitem que se salve todo o projeto exatamente\n"
-"como aparecem na tela. No entanto, a maioria dos programas de edição de áudio não\n"
+"Arquivos de projeto do Audacity (.AUP) permitem que se salve todo o projeto "
+"exatamente\n"
+"como aparecem na tela. No entanto, a maioria dos programas de edição de "
+"áudio não\n"
"é capaz de abrir estes arquivos. \n"
-"Para salvar em um formato executável por outros programas de edição, selecione Exportar."
+"Para salvar em um formato executável por outros programas de edição, "
+"selecione Exportar."
#: Project.cpp:2645
msgid "Audacity projects (*.aup)|*.aup"
@@ -2871,8 +3030,7 @@ msgstr "Criado novo projeto"
msgid "Deleted %.2f seconds at t=%.2f"
msgstr "Apagados %.2f segundos em t=%.2f"
-#: Project.cpp:2812
-#: effects/Equalization.cpp:1256
+#: Project.cpp:2812 effects/Equalization.cpp:1256
#: effects/Equalization.cpp:2511
msgid "Delete"
msgstr "Apagar"
@@ -2943,8 +3101,7 @@ msgstr "Libsamplerate por Erik de Castro Lopo"
msgid "Libsamplerate error: %d\n"
msgstr "Erro em LibSampleRate: %d\n"
-#: Resample.cpp:240
-#: Resample.cpp:250
+#: Resample.cpp:240 Resample.cpp:250
msgid "Resampling disabled."
msgstr "Reamostragem desabilitada."
@@ -2971,14 +3128,11 @@ msgstr "Salvo"
msgid "Error trying to save file: "
msgstr "Erro ao abrir o arquivo: "
-#: Sequence.cpp:732
-#: Sequence.cpp:742
-#: Sequence.cpp:749
+#: Sequence.cpp:732 Sequence.cpp:742 Sequence.cpp:749
msgid "Gap detected in project file\n"
msgstr "Interrupção detectada no arquivo de projeto\n"
-#: ShuttleGui.cpp:1852
-#: effects/Effect.cpp:339
+#: ShuttleGui.cpp:1852 effects/Effect.cpp:339
#: effects/audiounits/AudioUnitEffect.cpp:872
msgid "Pre&view"
msgstr "&Testar"
@@ -2999,8 +3153,7 @@ msgstr "In
msgid "Recording end"
msgstr "Final da gravação"
-#: SmartRecordDialog.cpp:226
-#: SmartRecordDialog.cpp:304
+#: SmartRecordDialog.cpp:226 SmartRecordDialog.cpp:304
msgid "Duration"
msgstr "Duração"
@@ -3051,8 +3204,7 @@ msgstr "Nome do
msgid "Track Number"
msgstr "Número da faixa"
-#: Tags.cpp:625
-#: Tags.cpp:2105
+#: Tags.cpp:625 Tags.cpp:2105
msgid "Year"
msgstr "Ano"
@@ -3060,14 +3212,11 @@ msgstr "Ano"
msgid "Genre"
msgstr "Gênero"
-#: Tags.cpp:627
-#: Tags.cpp:2115
-#: prefs/MousePrefs.cpp:96
+#: Tags.cpp:627 Tags.cpp:2115 prefs/MousePrefs.cpp:96
msgid "Comments"
msgstr "Comentários"
-#: Tags.cpp:745
-#: Tags.cpp:1985
+#: Tags.cpp:745 Tags.cpp:1985
msgid "Press F2 or double click to edit."
msgstr "Pressione F2 ou clique duplo para editar."
@@ -3079,9 +3228,7 @@ msgstr "Nome da Tag"
msgid "Tag Value"
msgstr "Valor da Tag"
-#: Tags.cpp:785
-#: Tags.cpp:1443
-#: prefs/KeyConfigPrefs.cpp:116
+#: Tags.cpp:785 Tags.cpp:1443 prefs/KeyConfigPrefs.cpp:116
msgid "&Clear"
msgstr "&Limpar"
@@ -3089,112 +3236,71 @@ msgstr "&Limpar"
msgid "Genres"
msgstr "Gêneros"
-#: Tags.cpp:795
-#: Tags.cpp:1406
-#: Tags.cpp:1947
+#: Tags.cpp:795 Tags.cpp:1406 Tags.cpp:1947
msgid "Edit"
msgstr "Editar"
-#: Tags.cpp:796
-#: Tags.cpp:1948
+#: Tags.cpp:796 Tags.cpp:1948
msgid "Reset"
msgstr "Reiniciar"
-#: Tags.cpp:801
-#: Tags.cpp:1427
-#: Tags.cpp:1955
+#: Tags.cpp:801 Tags.cpp:1427 Tags.cpp:1955
msgid "Template"
msgstr "Modelo"
-#: Tags.cpp:805
-#: Tags.cpp:1431
-#: Tags.cpp:1959
-#: prefs/KeyConfigPrefs.cpp:126
+#: Tags.cpp:805 Tags.cpp:1431 Tags.cpp:1959 prefs/KeyConfigPrefs.cpp:126
msgid "&Load..."
msgstr "&Carregar..."
-#: Tags.cpp:806
-#: Tags.cpp:1432
-#: Tags.cpp:1960
-#: prefs/KeyConfigPrefs.cpp:125
+#: Tags.cpp:806 Tags.cpp:1432 Tags.cpp:1960 prefs/KeyConfigPrefs.cpp:125
msgid "&Save..."
msgstr "&Salvar"
-#: Tags.cpp:808
-#: Tags.cpp:1434
-#: Tags.cpp:1962
+#: Tags.cpp:808 Tags.cpp:1434 Tags.cpp:1962
msgid "S&et Default"
msgstr "A&juste padrão"
-#: Tags.cpp:958
-#: Tags.cpp:1597
-#: Tags.cpp:2326
+#: Tags.cpp:958 Tags.cpp:1597 Tags.cpp:2326
msgid "Edit Genres"
msgstr "Editar Gêneros"
-#: Tags.cpp:991
-#: Tags.cpp:1003
-#: Tags.cpp:1019
-#: Tags.cpp:1032
-#: Tags.cpp:1635
-#: Tags.cpp:1647
-#: Tags.cpp:1663
-#: Tags.cpp:1676
-#: Tags.cpp:2369
-#: Tags.cpp:2381
-#: Tags.cpp:2397
-#: Tags.cpp:2410
+#: Tags.cpp:991 Tags.cpp:1003 Tags.cpp:1019 Tags.cpp:1032 Tags.cpp:1635
+#: Tags.cpp:1647 Tags.cpp:1663 Tags.cpp:1676 Tags.cpp:2369 Tags.cpp:2381
+#: Tags.cpp:2397 Tags.cpp:2410
msgid "Reset Genres"
msgstr "Reiniciar Gêneros"
-#: Tags.cpp:991
-#: Tags.cpp:1032
-#: Tags.cpp:1635
-#: Tags.cpp:1676
-#: Tags.cpp:2369
+#: Tags.cpp:991 Tags.cpp:1032 Tags.cpp:1635 Tags.cpp:1676 Tags.cpp:2369
#: Tags.cpp:2410
msgid "Unable to save genre file."
msgstr "Não foi possível salvar o arquivo de Gêneros."
-#: Tags.cpp:1002
-#: Tags.cpp:1646
-#: Tags.cpp:2380
+#: Tags.cpp:1002 Tags.cpp:1646 Tags.cpp:2380
msgid "Are you sure you want to reset the genre list to defaults?"
msgstr "Tem certeza que deseja reiniciar a lista de Gêneros para padrão?"
-#: Tags.cpp:1019
-#: Tags.cpp:1663
-#: Tags.cpp:2397
+#: Tags.cpp:1019 Tags.cpp:1663 Tags.cpp:2397
msgid "Unable to open genre file."
msgstr "Não foi possível abrir o arquivo de Gêneros."
-#: Tags.cpp:1054
-#: Tags.cpp:1108
-#: Tags.cpp:1709
-#: Tags.cpp:1745
-#: Tags.cpp:2432
+#: Tags.cpp:1054 Tags.cpp:1108 Tags.cpp:1709 Tags.cpp:1745 Tags.cpp:2432
#: Tags.cpp:2468
msgid "Save Metadata As:"
msgstr "Salvar metadados como:"
-#: Tags.cpp:1079
-#: Tags.cpp:1730
-#: Tags.cpp:2453
+#: Tags.cpp:1079 Tags.cpp:1730 Tags.cpp:2453
msgid "Error loading metadata"
msgstr "Erro ao carregar metadados"
-#: Tags.cpp:1376
-#: Tags.cpp:1935
+#: Tags.cpp:1376 Tags.cpp:1935
msgid "Title:"
msgstr "Título:"
-#: Tags.cpp:1377
-#: Tags.cpp:1936
+#: Tags.cpp:1377 Tags.cpp:1936
msgid "Artist:"
msgstr "Artista:"
-#: Tags.cpp:1378
-#: Tags.cpp:1937
+#: Tags.cpp:1378 Tags.cpp:1937
msgid "Album:"
msgstr "Álbum:"
@@ -3206,8 +3312,7 @@ msgstr "Compositor:"
msgid "Lyricist:"
msgstr "Letras:"
-#: Tags.cpp:1381
-#: Tags.cpp:1940
+#: Tags.cpp:1381 Tags.cpp:1940
msgid "Comments:"
msgstr "Comentários:"
@@ -3219,23 +3324,19 @@ msgstr "Codificado por:"
msgid "Copyright:"
msgstr "Diretos de cópia:"
-#: Tags.cpp:1391
-#: Tags.cpp:1938
+#: Tags.cpp:1391 Tags.cpp:1938
msgid "Track Number:"
msgstr "Número da faixa:"
-#: Tags.cpp:1395
-#: Tags.cpp:1939
+#: Tags.cpp:1395 Tags.cpp:1939
msgid "Year:"
msgstr "Ano:"
-#: Tags.cpp:1399
-#: Tags.cpp:1941
+#: Tags.cpp:1399 Tags.cpp:1941
msgid "Genre:"
msgstr "Gênero:"
-#: Tags.cpp:1457
-#: Tags.cpp:2056
+#: Tags.cpp:1457 Tags.cpp:2056
msgid "No Genres"
msgstr "Sem gêneros"
@@ -3262,7 +3363,8 @@ msgstr "Limpa&r"
#: Tags.cpp:2069
#, c-format
msgid "Maximum length of attribute '%s' is %d characters. Data was truncated."
-msgstr "Tamanho máximo do atributo '%s' é %d caracteres. Os dados foram excluídos."
+msgstr ""
+"Tamanho máximo do atributo '%s' é %d caracteres. Os dados foram excluídos."
#: Tags.cpp:2075
msgid "Title"
@@ -3316,8 +3418,7 @@ msgstr ""
" %s.\n"
"Tema não carregado."
-#: Theme.cpp:807
-#: Theme.cpp:896
+#: Theme.cpp:807 Theme.cpp:896
#, c-format
msgid ""
"Audacity could not load file:\n"
@@ -3347,8 +3448,7 @@ msgstr ""
" foi encontrado em:\n"
" %s."
-#: Theme.cpp:942
-#: effects/NoiseRemoval.cpp:173
+#: Theme.cpp:942 effects/NoiseRemoval.cpp:173
#, c-format
msgid ""
"Could not create directory:\n"
@@ -3381,40 +3481,27 @@ msgstr ""
msgid "Specify Time"
msgstr "Especificar tempo"
-#: TrackPanel.cpp:448
-#: TrackPanel.cpp:449
+#: TrackPanel.cpp:448 TrackPanel.cpp:449
msgid "Track Panel"
msgstr "Painel de Faixas"
-#: TrackPanel.cpp:492
-#: export/ExportPCM.cpp:133
-#: prefs/QualityPrefs.cpp:97
+#: TrackPanel.cpp:492 export/ExportPCM.cpp:133 prefs/QualityPrefs.cpp:97
msgid "Other..."
msgstr "Outra..."
-#: TrackPanel.cpp:500
-#: TrackPanel.cpp:521
-#: TrackPanel.cpp:530
-#: TrackPanel.cpp:538
+#: TrackPanel.cpp:500 TrackPanel.cpp:521 TrackPanel.cpp:530 TrackPanel.cpp:538
msgid "Name..."
msgstr "Nome..."
-#: TrackPanel.cpp:502
-#: TrackPanel.cpp:523
-#: TrackPanel.cpp:534
-#: TrackPanel.cpp:540
+#: TrackPanel.cpp:502 TrackPanel.cpp:523 TrackPanel.cpp:534 TrackPanel.cpp:540
msgid "Move Track Up"
msgstr "Mover faixa acima"
-#: TrackPanel.cpp:503
-#: TrackPanel.cpp:524
-#: TrackPanel.cpp:535
-#: TrackPanel.cpp:541
+#: TrackPanel.cpp:503 TrackPanel.cpp:524 TrackPanel.cpp:535 TrackPanel.cpp:541
msgid "Move Track Down"
msgstr "Mover faixa abaixo"
-#: TrackPanel.cpp:505
-#: effects/ToneGen.cpp:303
+#: TrackPanel.cpp:505 effects/ToneGen.cpp:303
msgid "Waveform"
msgstr "Forma de onda"
@@ -3426,18 +3513,15 @@ msgstr "Forma de onda (dB)"
msgid "Pitch (EAC)"
msgstr "Altura (EAC)"
-#: TrackPanel.cpp:510
-#: TrackPanel.cpp:5831
+#: TrackPanel.cpp:510 TrackPanel.cpp:5831
msgid "Mono"
msgstr "Mono"
-#: TrackPanel.cpp:511
-#: TrackPanel.cpp:5830
+#: TrackPanel.cpp:511 TrackPanel.cpp:5830
msgid "Left Channel"
msgstr "Canal esquerdo"
-#: TrackPanel.cpp:512
-#: TrackPanel.cpp:5830
+#: TrackPanel.cpp:512 TrackPanel.cpp:5830
msgid "Right Channel"
msgstr "Canal direito"
@@ -3453,8 +3537,7 @@ msgstr "Separar faixas de est
msgid "Set Sample Format"
msgstr "Taxa de bits da amostragem"
-#: TrackPanel.cpp:518
-#: TrackPanel.cpp:6048
+#: TrackPanel.cpp:518 TrackPanel.cpp:6048
msgid "Set Rate"
msgstr "Taxa de amostragem"
@@ -3474,14 +3557,17 @@ msgstr "Fonte..."
msgid "Set Range..."
msgstr "Ajuste da taxa..."
-#: TrackPanel.cpp:547
-#: toolbars/EditToolBar.cpp:135
+#: TrackPanel.cpp:547 toolbars/EditToolBar.cpp:135
msgid "Copy"
msgstr "Copiar"
#: TrackPanel.cpp:1239
-msgid "Click to vertically zoom in, Shift-click to zoom out, Drag to create a particular zoom region."
-msgstr "Clique para aumentar o zoom verticalmente, Shift+clique para diminuir o zoom e Arrastar para aumentar o zoom na área selecionada."
+msgid ""
+"Click to vertically zoom in, Shift-click to zoom out, Drag to create a "
+"particular zoom region."
+msgstr ""
+"Clique para aumentar o zoom verticalmente, Shift+clique para diminuir o zoom "
+"e Arrastar para aumentar o zoom na área selecionada."
#: TrackPanel.cpp:1244
msgid "Drag the label vertically to change the order of the tracks."
@@ -3506,12 +3592,15 @@ msgstr "Arrasta as bordas do t
#. i18n-hint: This string is for the Mac OS, which uses Command-, as the shortcut for Preferences
#: TrackPanel.cpp:1315
msgid "Multi-Tool Mode: Cmd-, for Mouse and Keyboard Preferences"
-msgstr "Modo multi-ferramenta: Cmd- para acessar as preferências de teclado e mouse."
+msgstr ""
+"Modo multi-ferramenta: Cmd- para acessar as preferências de teclado e mouse."
#. i18n-hint: This string is for Windows and Linux, which uses Control-P as the shortcut for Preferences
#: TrackPanel.cpp:1318
msgid "Multi-Tool Mode: Ctrl-P for Mouse and Keyboard Preferences"
-msgstr "Modo multi-ferramenta: Ctrl-P para acessar as preferências do mouse e teclado."
+msgstr ""
+"Modo multi-ferramenta: Ctrl-P para acessar as preferências do mouse e "
+"teclado."
#: TrackPanel.cpp:1338
msgid "Click and drag to move left selection boundary."
@@ -3521,21 +3610,13 @@ msgstr "Clique e arraste para mover a sele
msgid "Click and drag to move right selection boundary."
msgstr "Clique e arraste para mover a seleção à direita"
-#: TrackPanel.cpp:1669
-#: TrackPanel.cpp:3777
-#: TrackPanel.cpp:3809
-#: TrackPanel.cpp:4064
-#: TrackPanel.cpp:6160
-#: TrackPanel.cpp:6180
+#: TrackPanel.cpp:1669 TrackPanel.cpp:3777 TrackPanel.cpp:3809
+#: TrackPanel.cpp:4064 TrackPanel.cpp:6160 TrackPanel.cpp:6180
msgid "Modified Label"
msgstr "Título modificado."
-#: TrackPanel.cpp:1670
-#: TrackPanel.cpp:3778
-#: TrackPanel.cpp:3810
-#: TrackPanel.cpp:4065
-#: TrackPanel.cpp:6161
-#: TrackPanel.cpp:6181
+#: TrackPanel.cpp:1670 TrackPanel.cpp:3778 TrackPanel.cpp:3810
+#: TrackPanel.cpp:4065 TrackPanel.cpp:6161 TrackPanel.cpp:6181
msgid "Label Edit"
msgstr "Editar faixa de título"
@@ -3543,8 +3624,7 @@ msgstr "Editar faixa de t
msgid "Adjusted envelope."
msgstr "Envelope ajustado."
-#: TrackPanel.cpp:1898
-#: prefs/MousePrefs.cpp:115
+#: TrackPanel.cpp:1898 prefs/MousePrefs.cpp:115
msgid "Envelope"
msgstr "Envelope"
@@ -3566,9 +3646,7 @@ msgstr "direita"
msgid "Time shifted tracks/clips %s %.02f seconds"
msgstr "Faixas deslizadas à %s em %.02f segundos"
-#: TrackPanel.cpp:2044
-#: prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:112
+#: TrackPanel.cpp:2044 prefs/MousePrefs.cpp:111 prefs/MousePrefs.cpp:112
#: prefs/MousePrefs.cpp:113
msgid "Time-Shift"
msgstr "Deslizar"
@@ -3578,8 +3656,12 @@ msgid "Draw currently only works with linear-view waveforms."
msgstr "Desenhar só funciona em formas de onda lineares."
#: TrackPanel.cpp:2754
-msgid "You are not zoomed in enough. Zoom in until you can see the individual samples."
-msgstr "O nível de zoom não é suficiente. Aumente o zoom até visualizar as amostras individualmente."
+msgid ""
+"You are not zoomed in enough. Zoom in until you can see the individual "
+"samples."
+msgstr ""
+"O nível de zoom não é suficiente. Aumente o zoom até visualizar as amostras "
+"individualmente."
#: TrackPanel.cpp:3025
msgid "Moved Sample"
@@ -3610,39 +3692,29 @@ msgid "Moved pan slider"
msgstr "Ajuste de balanço alterado"
#. i18n-hint: Title of the Gain slider, used to adjust the volume
-#: TrackPanel.cpp:3269
-#: TrackPanel.cpp:5478
-#: TrackPanel.cpp:6829
+#: TrackPanel.cpp:3269 TrackPanel.cpp:5478 TrackPanel.cpp:6829
msgid "Gain"
msgstr "Ganho"
#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: TrackPanel.cpp:3269
-#: TrackPanel.cpp:5416
-#: TrackPanel.cpp:6836
+#: TrackPanel.cpp:3269 TrackPanel.cpp:5416 TrackPanel.cpp:6836
msgid "Pan"
msgstr "Bal"
-#: TrackPanel.cpp:3394
-#: TrackPanel.cpp:6113
-#: effects/ChangePitch.cpp:284
+#: TrackPanel.cpp:3394 TrackPanel.cpp:6113 effects/ChangePitch.cpp:284
msgid "up"
msgstr "acima"
-#: TrackPanel.cpp:3398
-#: TrackPanel.cpp:6114
-#: effects/ChangePitch.cpp:284
+#: TrackPanel.cpp:3398 TrackPanel.cpp:6114 effects/ChangePitch.cpp:284
msgid "down"
msgstr "abaixo"
-#: TrackPanel.cpp:3405
-#: TrackPanel.cpp:6109
+#: TrackPanel.cpp:3405 TrackPanel.cpp:6109
#, c-format
msgid "Moved '%s' %s"
msgstr "Movido '%s' %s"
-#: TrackPanel.cpp:3408
-#: TrackPanel.cpp:6115
+#: TrackPanel.cpp:3408 TrackPanel.cpp:6115
msgid "Move Track"
msgstr "Mover faixa "
@@ -3694,8 +3766,7 @@ msgstr "Esquerdo,"
msgid "Right, "
msgstr "Direito"
-#: TrackPanel.cpp:5840
-#: TrackPanel.cpp:5953
+#: TrackPanel.cpp:5840 TrackPanel.cpp:5953
#, c-format
msgid "Changed '%s' to %s"
msgstr "Alterado '%s' para %s"
@@ -3743,8 +3814,7 @@ msgstr "Taxa inv
msgid "Change lower speed limit (%) to:"
msgstr "Alterar limite mínimo de velocidade (%) para:"
-#: TrackPanel.cpp:6078
-#: TrackPanel.cpp:6079
+#: TrackPanel.cpp:6078 TrackPanel.cpp:6079
msgid "Lower speed limit"
msgstr "Limite inferior de velocidade"
@@ -3752,8 +3822,7 @@ msgstr "Limite inferior de velocidade"
msgid "Change upper speed limit (%) to:"
msgstr "Alterar limite máximo de velocidade (%) para:"
-#: TrackPanel.cpp:6085
-#: TrackPanel.cpp:6086
+#: TrackPanel.cpp:6085 TrackPanel.cpp:6086
msgid "Upper speed limit"
msgstr "Limite máximo de velocidade"
@@ -3829,10 +3898,7 @@ msgid " Select On"
msgstr " Selecionar Lig."
# voice key? usei timbre.. vai saber o q é
-#: VoiceKey.cpp:88
-#: VoiceKey.cpp:238
-#: VoiceKey.cpp:376
-#: VoiceKey.cpp:517
+#: VoiceKey.cpp:88 VoiceKey.cpp:238 VoiceKey.cpp:376 VoiceKey.cpp:517
msgid "Selection is too small to use voice key."
msgstr "A seleção é muito curta para determinar o timbre da voz."
@@ -3859,8 +3925,7 @@ msgstr "Alter. de Dire
msgid "Audio Track"
msgstr "Áudio"
-#: WaveTrack.cpp:547
-#: WaveTrack.cpp:566
+#: WaveTrack.cpp:547 WaveTrack.cpp:566
msgid "There is not enough room available to paste the selection"
msgstr "Não há espaço suficiente para colar a seleção"
@@ -3880,7 +3945,9 @@ msgstr "Plugins %i a %i"
#: commands/CommandManager.cpp:720
msgid "Disallowed for some reason. Try selecting some Audio first?"
-msgstr "Desabilitado. Experimente selecionar um trecho de áudio antes de executar o comando."
+msgstr ""
+"Desabilitado. Experimente selecionar um trecho de áudio antes de executar o "
+"comando."
#: commands/CommandManager.cpp:724
msgid ""
@@ -3957,19 +4024,25 @@ msgid "Amplifying"
msgstr "Amplificando"
#: effects/AutoDuck.cpp:125
-msgid "You selected a track which does not contain audio. AutoDuck can only process audio tracks."
-msgstr "Foi selecionada uma faixa sem áudio. O AutoDuck só pode processar faixas contendo áudio."
+msgid ""
+"You selected a track which does not contain audio. AutoDuck can only process "
+"audio tracks."
+msgstr ""
+"Foi selecionada uma faixa sem áudio. O AutoDuck só pode processar faixas "
+"contendo áudio."
-#: effects/AutoDuck.cpp:126
-#: effects/AutoDuck.cpp:138
-#: effects/AutoDuck.cpp:453
+#: effects/AutoDuck.cpp:126 effects/AutoDuck.cpp:138 effects/AutoDuck.cpp:453
#: effects/AutoDuck.cpp:570
msgid "Auto Duck"
msgstr "Auto Duck"
#: effects/AutoDuck.cpp:137
-msgid "Auto Duck needs a control track which must be placed below the selected track(s)."
-msgstr "O AutoDuck requer uma faixa de controle logo abaixo da(s) faixa(s) selecionada(s)."
+msgid ""
+"Auto Duck needs a control track which must be placed below the selected track"
+"(s)."
+msgstr ""
+"O AutoDuck requer uma faixa de controle logo abaixo da(s) faixa(s) "
+"selecionada(s)."
#: effects/AutoDuck.cpp:465
msgid "Auto Duck by Markus Meyer"
@@ -3983,17 +4056,11 @@ msgstr "Quantidade de Duck:"
msgid "Maximum pause:"
msgstr "Pausa máxima:"
-#: effects/AutoDuck.cpp:494
-#: effects/AutoDuck.cpp:499
-#: effects/AutoDuck.cpp:504
-#: effects/AutoDuck.cpp:509
-#: effects/AutoDuck.cpp:514
-#: prefs/AudioIOPrefs.cpp:166
-#: prefs/AudioIOPrefs.cpp:174
-#: prefs/AudioIOPrefs.cpp:176
-#: prefs/AudioIOPrefs.cpp:201
-#: prefs/AudioIOPrefs.cpp:203
-#: widgets/TimeTextCtrl.cpp:197
+#: effects/AutoDuck.cpp:494 effects/AutoDuck.cpp:499 effects/AutoDuck.cpp:504
+#: effects/AutoDuck.cpp:509 effects/AutoDuck.cpp:514
+#: prefs/AudioIOPrefs.cpp:166 prefs/AudioIOPrefs.cpp:174
+#: prefs/AudioIOPrefs.cpp:176 prefs/AudioIOPrefs.cpp:201
+#: prefs/AudioIOPrefs.cpp:203 widgets/TimeTextCtrl.cpp:197
msgid "seconds"
msgstr "segundos"
@@ -4017,8 +4084,7 @@ msgstr "Tamanho da queda do fade inicial:"
msgid "Inner fade up length:"
msgstr "Tamanho da subida do fade inicial:"
-#: effects/AutoDuck.cpp:521
-#: effects/Compressor.cpp:484
+#: effects/AutoDuck.cpp:521 effects/Compressor.cpp:484
msgid "Threshold:"
msgstr "Limiar: "
@@ -4038,12 +4104,9 @@ msgstr "Auto Duck..."
msgid "Processing Auto Duck..."
msgstr "Processando Auto Duck..."
-#: effects/AvcCompressor.cpp:738
-#: effects/VST/VSTEffect.cpp:448
-#: effects/audiounits/AudioUnitEffect.cpp:877
-#: effects/nyquist/Nyquist.cpp:1040
-#: widgets/ErrorDialog.cpp:74
-#: widgets/ErrorDialog.cpp:100
+#: effects/AvcCompressor.cpp:738 effects/VST/VSTEffect.cpp:448
+#: effects/audiounits/AudioUnitEffect.cpp:877 effects/nyquist/Nyquist.cpp:1040
+#: widgets/ErrorDialog.cpp:74 widgets/ErrorDialog.cpp:100
#: widgets/Warning.cpp:67
msgid "OK"
msgstr "OK"
@@ -4100,14 +4163,12 @@ msgstr "Alterar altura sem altera
#. i18n-hint: && in here is an escape character to get a single & on
#. * screen, so keep it as is
-#: effects/ChangePitch.cpp:254
-#: effects/ChangeSpeed.cpp:313
+#: effects/ChangePitch.cpp:254 effects/ChangeSpeed.cpp:313
#: effects/ChangeTempo.cpp:180
msgid "by Vaughan Johnson && Dominic Mazzoni"
msgstr "por Vaughan Johnson && Dominic Mazzoni"
-#: effects/ChangePitch.cpp:259
-#: effects/ChangeTempo.cpp:185
+#: effects/ChangePitch.cpp:259 effects/ChangeTempo.cpp:185
msgid "using SoundTouch, by Olli Parviainen"
msgstr "usando SoundTouch, por Olli Parviainen"
@@ -4115,10 +4176,8 @@ msgstr "usando SoundTouch, por Olli Parviainen"
msgid "Pitch: from"
msgstr "Altura: de"
-#: effects/ChangePitch.cpp:291
-#: effects/ChangePitch.cpp:337
-#: effects/ChangeSpeed.cpp:377
-#: effects/ChangeTempo.cpp:239
+#: effects/ChangePitch.cpp:291 effects/ChangePitch.cpp:337
+#: effects/ChangeSpeed.cpp:377 effects/ChangeTempo.cpp:239
#: effects/ChangeTempo.cpp:270
msgid "to"
msgstr "a "
@@ -4131,8 +4190,7 @@ msgstr "Semitons (meio-passos):"
msgid "Frequency (Hz): from"
msgstr "Freqüência (Hz): de"
-#: effects/ChangePitch.cpp:360
-#: effects/ChangeSpeed.cpp:331
+#: effects/ChangePitch.cpp:360 effects/ChangeSpeed.cpp:331
#: effects/ChangeTempo.cpp:198
msgid "Percent Change:"
msgstr "Percentagem de alteração:"
@@ -4145,8 +4203,7 @@ msgstr "Alterar altura..."
msgid "Changing Pitch"
msgstr "Alterando altura "
-#: effects/ChangeSpeed.cpp:53
-#: effects/ChangeTempo.cpp:55
+#: effects/ChangeSpeed.cpp:53 effects/ChangeTempo.cpp:55
#, c-format
msgid "Applied effect: %s %.1f%%"
msgstr "Efeito aplicado: %s %.1f%%"
@@ -4301,9 +4358,7 @@ msgstr "por Salvo Ventura (2006)"
msgid "DTMF sequence:"
msgstr "Sequência DTMF:"
-#: effects/DtmfGen.cpp:444
-#: effects/Noise.cpp:255
-#: effects/ToneGen.cpp:306
+#: effects/DtmfGen.cpp:444 effects/Noise.cpp:255 effects/ToneGen.cpp:306
#: effects/ToneGen.cpp:342
msgid "Amplitude (0-1)"
msgstr "Amplitude (0-1)"
@@ -4324,9 +4379,7 @@ msgstr "Intervalo entre tons:"
msgid "Tone duration:"
msgstr "Duração do tom:"
-#: effects/DtmfGen.cpp:478
-#: effects/DtmfGen.cpp:480
-#: effects/DtmfGen.cpp:556
+#: effects/DtmfGen.cpp:478 effects/DtmfGen.cpp:480 effects/DtmfGen.cpp:556
#: effects/DtmfGen.cpp:557
msgid "ms"
msgstr "ms"
@@ -4390,8 +4443,12 @@ msgid "Previewing"
msgstr "Testando"
#: effects/Effect.cpp:432
-msgid "Error while opening sound device. Please check the output device settings and the project sample rate."
-msgstr "Erro ao acessar o dispositivo de som. Por favor, cheque as configurações do dispositivo e a taxa de amostragem do projeto."
+msgid ""
+"Error while opening sound device. Please check the output device settings "
+"and the project sample rate."
+msgstr ""
+"Erro ao acessar o dispositivo de som. Por favor, cheque as configurações do "
+"dispositivo e a taxa de amostragem do projeto."
#: effects/Effect.h:107
#, c-format
@@ -4410,8 +4467,7 @@ msgstr "Co-seno"
msgid "Cubic"
msgstr "Cúbico"
-#: effects/Equalization.cpp:353
-#: effects/Equalization.cpp:404
+#: effects/Equalization.cpp:353 effects/Equalization.cpp:404
msgid "Equalization"
msgstr "Equalização"
@@ -4461,8 +4517,7 @@ msgstr "Tamanho do filtro:"
msgid "Select curve:"
msgstr "Selecionar curva:"
-#: effects/Equalization.cpp:1253
-#: effects/Equalization.cpp:2416
+#: effects/Equalization.cpp:1253 effects/Equalization.cpp:2416
msgid "Save As..."
msgstr "Salvar como..."
@@ -4582,8 +4637,7 @@ msgstr "Nivelador por Lynn Allan"
msgid "Equalize soft and loud sections"
msgstr "Equalizar sessões altas e baixas"
-#: effects/Leveller.cpp:219
-#: effects/Leveller.cpp:224
+#: effects/Leveller.cpp:219 effects/Leveller.cpp:224
msgid "Degree of Leveling"
msgstr "Grau de nivelação"
@@ -4652,7 +4706,8 @@ msgstr ""
#: effects/NoiseRemoval.cpp:277
msgid "Attempt to run Noise Removal without a noise profile.\n"
-msgstr "Tentou-se executar a Remoção de Ruído sem um perfil de ruído definido.\n"
+msgstr ""
+"Tentou-se executar a Remoção de Ruído sem um perfil de ruído definido.\n"
#: effects/NoiseRemoval.cpp:723
msgid "Noise Removal"
@@ -4667,7 +4722,8 @@ msgid ""
"Select a few seconds of just noise so Audacity knows what to filter out,\n"
"then click Get Noise Profile:"
msgstr ""
-"Selecione alguns segundos de áudio contendo apenas os ruídos que devem ser filtrados.\n"
+"Selecione alguns segundos de áudio contendo apenas os ruídos que devem ser "
+"filtrados.\n"
"Quando estiver pronto, clique em \"Perceber perfil de ruído\":"
#: effects/NoiseRemoval.cpp:814
@@ -4719,17 +4775,17 @@ msgstr "Removendo ru
#: effects/Normalize.cpp:70
#, c-format
msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
-msgstr "Efeito aplicado: %s, %s remoção de compensação DC, %s normalização de amplitude "
+msgstr ""
+"Efeito aplicado: %s, %s remoção de compensação DC, %s normalização de "
+"amplitude "
-#: effects/Normalize.cpp:74
-#: effects/Normalize.cpp:75
+#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
msgid "false"
msgstr "sem"
#. i18n-hint: true here means that the option was
#. * selected. Opposite false if not selected
-#: effects/Normalize.cpp:74
-#: effects/Normalize.cpp:75
+#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
msgid "true"
msgstr "com"
@@ -4768,8 +4824,12 @@ msgstr "Normalizando"
#: effects/Phaser.cpp:65
#, c-format
-msgid "Applied effect: %s %d stages, %.0f%% wet, frequency = %.1f Hz, start phase = %.0f deg, depth = %d, feedback = %.0f%%"
-msgstr "Efeito aplicado: %s %d estágios, %.0f%% wet, freqüência = %.1f Hz, fase inicial = %.0f graus, prof. = %d, retorno = %.0f%%"
+msgid ""
+"Applied effect: %s %d stages, %.0f%% wet, frequency = %.1f Hz, start phase = "
+"%.0f deg, depth = %d, feedback = %.0f%%"
+msgstr ""
+"Efeito aplicado: %s %d estágios, %.0f%% wet, freqüência = %.1f Hz, fase "
+"inicial = %.0f graus, prof. = %d, retorno = %.0f%%"
#: effects/Phaser.cpp:77
msgid "Phaser"
@@ -4791,13 +4851,11 @@ msgstr "DRY"
msgid "WET"
msgstr "WET"
-#: effects/Phaser.cpp:264
-#: effects/Wahwah.cpp:221
+#: effects/Phaser.cpp:264 effects/Wahwah.cpp:221
msgid "LFO Frequency (Hz):"
msgstr "Freqüência LFO (Hz):"
-#: effects/Phaser.cpp:280
-#: effects/Wahwah.cpp:237
+#: effects/Phaser.cpp:280 effects/Wahwah.cpp:237
msgid "LFO Start Phase (deg.):"
msgstr "Fase inicial LFO (Graus):"
@@ -4819,14 +4877,17 @@ msgstr "Aplicando Phaser"
#: effects/Repair.cpp:99
msgid ""
-"The Repair effect is intended to be used on very short sections of damaged audio (up to 128 samples).\n"
+"The Repair effect is intended to be used on very short sections of damaged "
+"audio (up to 128 samples).\n"
"\n"
"Zoom in and select a tiny fraction of a second to repair."
msgstr ""
-"O efeito Reparar foi desenvolvido para ser usado apenas em partes pequenas de áudio danificado \n"
+"O efeito Reparar foi desenvolvido para ser usado apenas em partes pequenas "
+"de áudio danificado \n"
"(até 128 amostras).\n"
"\n"
-"Aumente o nível de Zoom e selecione apenas uma pequena fração de segundo para reparar."
+"Aumente o nível de Zoom e selecione apenas uma pequena fração de segundo "
+"para reparar."
#: effects/Repair.h:37
msgid "Repairing damaged audio"
@@ -4841,8 +4902,7 @@ msgstr "Repetido %d vezes"
msgid "Tracks are too long to repeat the selection."
msgstr "Faixas longas demais para repetir a seleção."
-#: effects/Repeat.cpp:76
-#: effects/Repeat.cpp:80
+#: effects/Repeat.cpp:76 effects/Repeat.cpp:80
msgid "Repeat"
msgstr "Repetir"
@@ -4856,8 +4916,7 @@ msgstr "Repeat por Dominic Mazzoni && Vaughan Johnson"
msgid "Number of times to repeat: "
msgstr "Número de vezes a repetir:"
-#: effects/Repeat.cpp:207
-#: effects/Repeat.cpp:237
+#: effects/Repeat.cpp:207 effects/Repeat.cpp:237
msgid "New selection length: "
msgstr "Novo tamanho da seleção:"
@@ -4905,8 +4964,12 @@ msgid "Applied effect: Generate Silence, %.6lf seconds"
msgstr "Efeito aplicado: Inserir silêncio, %.6lf segundos"
#: effects/SimplePairedTwoTrack.h:120
-msgid "Sorry, this effect cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "Desculpe, este efeito não pode ser executado em faixas estéreo onde os canais tem conteúdos diferentes entre si."
+msgid ""
+"Sorry, this effect cannot be performed on stereo tracks where the individual "
+"channels of the track do not match."
+msgstr ""
+"Desculpe, este efeito não pode ser executado em faixas estéreo onde os "
+"canais tem conteúdos diferentes entre si."
#: effects/SpikeCleaner.cpp:69
msgid "Spike Cleaner"
@@ -4942,8 +5005,12 @@ msgstr "Aplicando Est
#: effects/ToneGen.cpp:59
#, c-format
-msgid "Applied effect: Generate %s wave %s, frequency = %.2f Hz, amplitude = %.2f, %.6lf seconds"
-msgstr "Efeito aplicado: Gerada %s onda %s, freqüência = %.2f Hz, amplitude = %.2f, %.6lf segundos"
+msgid ""
+"Applied effect: Generate %s wave %s, frequency = %.2f Hz, amplitude = %.2f, "
+"%.6lf seconds"
+msgstr ""
+"Efeito aplicado: Gerada %s onda %s, freqüência = %.2f Hz, amplitude = %.2f, "
+"%.6lf segundos"
# chirp=trilo. no audacity ficou 'tons programaveis'
#: effects/ToneGen.cpp:66
@@ -4970,15 +5037,12 @@ msgstr "Dente-de-serra"
msgid "Square, no alias"
msgstr "Quadrado, sem graduação"
-#: effects/ToneGen.cpp:305
-#: effects/ToneGen.cpp:340
+#: effects/ToneGen.cpp:305 effects/ToneGen.cpp:340
msgid "Frequency (Hz)"
msgstr "Frequência (Hz)"
-#: effects/ToneGen.cpp:307
-#: effects/ToneGen.cpp:348
-#: toolbars/SelectionBar.cpp:147
-#: toolbars/SelectionBar.cpp:241
+#: effects/ToneGen.cpp:307 effects/ToneGen.cpp:348
+#: toolbars/SelectionBar.cpp:147 toolbars/SelectionBar.cpp:241
msgid "Length"
msgstr "Tamanho"
@@ -4986,15 +5050,12 @@ msgstr "Tamanho"
msgid "Waveform:"
msgstr "Formato:"
-#: effects/ToneGen.cpp:338
-#: toolbars/ControlToolBar.cpp:185
+#: effects/ToneGen.cpp:338 toolbars/ControlToolBar.cpp:185
msgid "Start"
msgstr "Inícial"
-#: effects/ToneGen.cpp:339
-#: toolbars/ControlToolBar.cpp:188
-#: toolbars/SelectionBar.cpp:141
-#: toolbars/SelectionBar.cpp:242
+#: effects/ToneGen.cpp:339 toolbars/ControlToolBar.cpp:188
+#: toolbars/SelectionBar.cpp:141 toolbars/SelectionBar.cpp:242
msgid "End"
msgstr "Final"
@@ -5020,8 +5081,7 @@ msgstr "Gerando tom"
msgid "All tracks must have the same sample rate"
msgstr "Todas as faixas devem ter a mesma taxa de amostragem"
-#: effects/TruncSilence.cpp:113
-#: effects/TruncSilence.cpp:322
+#: effects/TruncSilence.cpp:113 effects/TruncSilence.cpp:322
msgid "Truncate Silence"
msgstr "Excluir silêncio"
@@ -5033,8 +5093,7 @@ msgstr "por Lynn Allan"
msgid "Max silence duration:"
msgstr "Duração máxima do silêncio:"
-#: effects/TruncSilence.cpp:349
-#: prefs/AudioIOPrefs.cpp:190
+#: effects/TruncSilence.cpp:349 prefs/AudioIOPrefs.cpp:190
#: prefs/AudioIOPrefs.cpp:193
msgid "milliseconds"
msgstr "millisegundos"
@@ -5056,8 +5115,12 @@ msgid "Truncating Silence..."
msgstr "Diminuindo silêncio"
#: effects/VST/VSTEffect.cpp:165
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "Desculpe, os efeitos VST não podem ser executados em faixas estéreo onde cada canal tem um conteúdo diferente do outro."
+msgid ""
+"Sorry, VST Effects cannot be performed on stereo tracks where the individual "
+"channels of the track do not match."
+msgstr ""
+"Desculpe, os efeitos VST não podem ser executados em faixas estéreo onde "
+"cada canal tem um conteúdo diferente do outro."
#: effects/VST/VSTEffect.cpp:180
msgid "Can't process replacing"
@@ -5069,8 +5132,12 @@ msgstr "Par
#: effects/Wahwah.cpp:61
#, c-format
-msgid "Applied effect: %s frequency = %.1f Hz, start phase = %.0f deg, depth = %.0f%%, resonance = %.1f, frequency offset = %.0f%%"
-msgstr "Efeito aplicado: %s freqüência = %.1f Hz, fase inicial = %.0f graus, prof. = %.0f%%, ressonância = %.1f, freqüência de compensação = %.0f%%"
+msgid ""
+"Applied effect: %s frequency = %.1f Hz, start phase = %.0f deg, depth = %.0f%"
+"%, resonance = %.1f, frequency offset = %.0f%%"
+msgstr ""
+"Efeito aplicado: %s freqüência = %.1f Hz, fase inicial = %.0f graus, prof. = "
+"%.0f%%, ressonância = %.1f, freqüência de compensação = %.0f%%"
#: effects/Wahwah.cpp:72
msgid "Wahwah"
@@ -5107,17 +5174,19 @@ msgid "Performing Effect: %s"
msgstr "Executando efeito: %s"
#: effects/ladspa/LadspaEffect.cpp:189
-msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "Desculpe, os efeitos VST não podem ser executados em faixas estéreo onde cada canal tem um conteúdo diferente do outro."
+msgid ""
+"Sorry, Plug-in Effects cannot be performed on stereo tracks where the "
+"individual channels of the track do not match."
+msgstr ""
+"Desculpe, os efeitos VST não podem ser executados em faixas estéreo onde "
+"cada canal tem um conteúdo diferente do outro."
-#: effects/ladspa/LadspaEffect.cpp:573
-#: effects/ladspa/LadspaEffect.cpp:581
+#: effects/ladspa/LadspaEffect.cpp:573 effects/ladspa/LadspaEffect.cpp:581
#: prefs/QualityPrefs.cpp:72
msgid "None"
msgstr "Nenhum"
-#: effects/ladspa/LadspaEffect.cpp:575
-#: effects/vamp/VampEffect.cpp:384
+#: effects/ladspa/LadspaEffect.cpp:575 effects/vamp/VampEffect.cpp:384
msgid "Author: "
msgstr "Autor: "
@@ -5133,8 +5202,7 @@ msgstr "Tamanho (segundos)"
msgid "Applying Nyquist Effect..."
msgstr "Aplicando efeito Nyquist..."
-#: effects/nyquist/Nyquist.cpp:259
-#: effects/nyquist/Nyquist.cpp:321
+#: effects/nyquist/Nyquist.cpp:259 effects/nyquist/Nyquist.cpp:321
msgid "Nyquist Prompt..."
msgstr "Digitar comando Nyquist..."
@@ -5143,8 +5211,11 @@ msgid "Enter Nyquist Command: "
msgstr "Digite comando Nyquist: "
#: effects/nyquist/Nyquist.cpp:412
-msgid "Sorry, cannot apply effect on stereo tracks where the tracks don't match."
-msgstr "Desculpe, os efeitos não podem ser executados em faixas estéreo com conteúdos diferentes em cada canal."
+msgid ""
+"Sorry, cannot apply effect on stereo tracks where the tracks don't match."
+msgstr ""
+"Desculpe, os efeitos não podem ser executados em faixas estéreo com "
+"conteúdos diferentes em cada canal."
#: effects/nyquist/Nyquist.cpp:440
msgid "Nyquist"
@@ -5154,8 +5225,7 @@ msgstr "Nyquist"
msgid "Nyquist Output: "
msgstr "Saída do Nyquist:"
-#: effects/nyquist/Nyquist.cpp:596
-#: effects/nyquist/Nyquist.cpp:607
+#: effects/nyquist/Nyquist.cpp:596 effects/nyquist/Nyquist.cpp:607
msgid "Nyquist returned the value:"
msgstr "O Nyquist retornou o seguinte valor:"
@@ -5173,8 +5243,12 @@ msgid "Extracting features: %s"
msgstr "Extraindo pontos: %s"
#: effects/vamp/VampEffect.cpp:106
-msgid "Sorry, Vamp Plug-ins cannot be run on stereo tracks where the individual channels of the track do not match."
-msgstr "O plug-in Vamp não pode ser executado em faixas estéreo com áudio diferente entre os canais."
+msgid ""
+"Sorry, Vamp Plug-ins cannot be run on stereo tracks where the individual "
+"channels of the track do not match."
+msgstr ""
+"O plug-in Vamp não pode ser executado em faixas estéreo com áudio diferente "
+"entre os canais."
#: effects/vamp/VampEffect.cpp:120
msgid "Sorry, failed to load Vamp Plug-in."
@@ -5221,12 +5295,14 @@ msgstr "Deseja salvar arquivo como \""
msgid ""
"You are about to save a %s file with the name \"%s\".\n"
"\n"
-"Normally these files end in \".%s\", and some programs will not open files with nonstandard extensions.\n"
+"Normally these files end in \".%s\", and some programs will not open files "
+"with nonstandard extensions.\n"
"\n"
"Are you sure you want to save the file under this name?"
msgstr ""
"O Audacity salvará o arquivo do tipo %s com o nome %s.\n"
-"Normalmente estes arquivos terminam com a extensão %s e alguns programas podem não reconhecer\n"
+"Normalmente estes arquivos terminam com a extensão %s e alguns programas "
+"podem não reconhecer\n"
"este arquivo como válido.\n"
"Deseja salvar o arquivo com este nome?"
@@ -5236,12 +5312,18 @@ msgid "A file named \"%s\" already exists. Replace?"
msgstr "O arquivo de nome \"%s\" já existe. Deseja substituí-lo?"
#: export/Export.cpp:598
-msgid "Your tracks will be mixed down to two stereo channels in the exported file."
-msgstr "Todas as faixas serão convertidas em duas faixas estéreo no arquivo exportado."
+msgid ""
+"Your tracks will be mixed down to two stereo channels in the exported file."
+msgstr ""
+"Todas as faixas serão convertidas em duas faixas estéreo no arquivo "
+"exportado."
#: export/Export.cpp:603
-msgid "Your tracks will be mixed down to a single mono channel in the exported file."
-msgstr "Todas as faixas serão convertidas em um único canal mono no arquivo exportado."
+msgid ""
+"Your tracks will be mixed down to a single mono channel in the exported file."
+msgstr ""
+"Todas as faixas serão convertidas em um único canal mono no arquivo "
+"exportado."
#: export/Export.cpp:613
msgid "Advanced Mixing Options"
@@ -5260,8 +5342,7 @@ msgstr " - Esquerdo"
msgid " - Right"
msgstr " - Direito"
-#: export/Export.cpp:961
-#: export/Export.cpp:1006
+#: export/Export.cpp:961 export/Export.cpp:1006
#, c-format
msgid "Output Channels: %2d"
msgstr "Canais de saída: %2d"
@@ -5284,15 +5365,18 @@ msgstr "Exibir sa
#: export/ExportCL.cpp:87
#, c-format
-msgid "Data will be piped to standard in. \"%f\" will be replaced with output filename selected."
-msgstr "Dados serão direcionados para a entrada padrão. \"%f\" será substituído pelo nome de arquivo selecionado."
+msgid ""
+"Data will be piped to standard in. \"%f\" will be replaced with output "
+"filename selected."
+msgstr ""
+"Dados serão direcionados para a entrada padrão. \"%f\" será substituído pelo "
+"nome de arquivo selecionado."
#: export/ExportCL.cpp:219
msgid "(external program)"
msgstr "(programa externo)"
-#: export/ExportCL.cpp:248
-#: export/ExportPCM.cpp:367
+#: export/ExportCL.cpp:248 export/ExportPCM.cpp:367
#, c-format
msgid "Cannot export audio to %s"
msgstr "Não é possível exportar áudio como %s."
@@ -5303,7 +5387,8 @@ msgstr "Exportar"
#: export/ExportCL.cpp:322
msgid "Exporting the selected audio using command-line encoder"
-msgstr "Exportando o trecho selecionado usando o intepretador de linha de comando"
+msgstr ""
+"Exportando o trecho selecionado usando o intepretador de linha de comando"
#: export/ExportCL.cpp:323
msgid "Exporting the entire project using command-line encoder"
@@ -5407,15 +5492,14 @@ msgstr "Arquivos MP2"
#: export/ExportMP2.cpp:229
msgid "Cannot export MP2 with this sample rate and bit rate"
-msgstr "Não é possível exportar o arquivo MP2 com esta taxa de bits e de amostragem"
+msgstr ""
+"Não é possível exportar o arquivo MP2 com esta taxa de bits e de amostragem"
#: export/ExportMP2.cpp:237
msgid "Edit the ID3 tags for the MP2 file"
msgstr "Editar metadados para o arquivo MP2"
-#: export/ExportMP2.cpp:243
-#: export/ExportMP3.cpp:1713
-#: export/ExportOGG.cpp:183
+#: export/ExportMP2.cpp:243 export/ExportMP3.cpp:1713 export/ExportOGG.cpp:183
msgid "Unable to open target file for writing"
msgstr "Não foi possível abrir o arquivo de destino para gravação."
@@ -5430,24 +5514,12 @@ msgid "Exporting entire file at %d kbps"
msgstr "Exportando todo o arquivo a %d kbps."
#. i18n-hint: kbps is the bitrate of the MP3 file, kilobits per second
-#: export/ExportMP3.cpp:142
-#: export/ExportMP3.cpp:143
-#: export/ExportMP3.cpp:144
-#: export/ExportMP3.cpp:145
-#: export/ExportMP3.cpp:146
-#: export/ExportMP3.cpp:147
-#: export/ExportMP3.cpp:148
-#: export/ExportMP3.cpp:149
-#: export/ExportMP3.cpp:150
-#: export/ExportMP3.cpp:151
-#: export/ExportMP3.cpp:152
-#: export/ExportMP3.cpp:153
-#: export/ExportMP3.cpp:154
-#: export/ExportMP3.cpp:155
-#: export/ExportMP3.cpp:156
-#: export/ExportMP3.cpp:157
-#: export/ExportMP3.cpp:158
-#: export/ExportMP3.cpp:159
+#: export/ExportMP3.cpp:142 export/ExportMP3.cpp:143 export/ExportMP3.cpp:144
+#: export/ExportMP3.cpp:145 export/ExportMP3.cpp:146 export/ExportMP3.cpp:147
+#: export/ExportMP3.cpp:148 export/ExportMP3.cpp:149 export/ExportMP3.cpp:150
+#: export/ExportMP3.cpp:151 export/ExportMP3.cpp:152 export/ExportMP3.cpp:153
+#: export/ExportMP3.cpp:154 export/ExportMP3.cpp:155 export/ExportMP3.cpp:156
+#: export/ExportMP3.cpp:157 export/ExportMP3.cpp:158 export/ExportMP3.cpp:159
msgid "kbps"
msgstr "kbps"
@@ -5599,16 +5671,28 @@ msgid "Where is %s?"
msgstr "Onde se localiza o arquivo %s ?"
#: export/ExportMP3.cpp:1038
-msgid "Only lame_enc.dll|lame_enc.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
-msgstr "Apenas lame_enc.dll|lame_enc.dll|DLLs do sistema (*.dll)|*.dll|Todos os arquivos (*.*)|*"
+msgid ""
+"Only lame_enc.dll|lame_enc.dll|Dynamically Linked Libraries (*.dll)|*.dll|"
+"All Files (*.*)|*"
+msgstr ""
+"Apenas lame_enc.dll|lame_enc.dll|DLLs do sistema (*.dll)|*.dll|Todos os "
+"arquivos (*.*)|*"
#: export/ExportMP3.cpp:1493
-msgid "Only libmp3lame.dylib|libmp3lame.dylib|Dynamic Libraries (*.dylib)|*.dylib|All Files (*)|*"
-msgstr "Apenas libmp3lame.dylib|libmp3lame.dylib|Bibliotecas dinâmicas (*.dylib)|*.dylib|Todos os arquivos (*)|*"
+msgid ""
+"Only libmp3lame.dylib|libmp3lame.dylib|Dynamic Libraries (*.dylib)|*.dylib|"
+"All Files (*)|*"
+msgstr ""
+"Apenas libmp3lame.dylib|libmp3lame.dylib|Bibliotecas dinâmicas (*.dylib)|*."
+"dylib|Todos os arquivos (*)|*"
#: export/ExportMP3.cpp:1510
-msgid "Only libmp3lame.so|libmp3lame.so|Primary Shared Object files (*.so)|*.so|Extended Libraries (*.so*)|*.so*|All Files (*)|*"
-msgstr "Apenas libmp3lame.so|libmp3lame.so|Arquivos Primary Shared Object (*.so)|*.so|Arquivos Extended Libraries (*.so*)|*.so*|Todos os arquivos (*)|*"
+msgid ""
+"Only libmp3lame.so|libmp3lame.so|Primary Shared Object files (*.so)|*.so|"
+"Extended Libraries (*.so*)|*.so*|All Files (*)|*"
+msgstr ""
+"Apenas libmp3lame.so|libmp3lame.so|Arquivos Primary Shared Object (*.so)|*."
+"so|Arquivos Extended Libraries (*.so*)|*.so*|Todos os arquivos (*)|*"
#: export/ExportMP3.cpp:1592
msgid "MP3 Files"
@@ -5681,7 +5765,9 @@ msgstr "A taxa de amostragem (%d) n
msgid ""
"The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
"supported by the MP3 file format. "
-msgstr "A taxa de amostragem (%d) e o bit rate (%d kbps) não são suportados pelo formato MP3. "
+msgstr ""
+"A taxa de amostragem (%d) e o bit rate (%d kbps) não são suportados pelo "
+"formato MP3. "
#: export/ExportMP3.cpp:1882
msgid "You may resample to one of the rates below."
@@ -5695,24 +5781,27 @@ msgstr "Taxas de amostragem "
msgid "MP3 exporting plugin not found"
msgstr "Biblioteca de exportação em MP3 não encontrada!"
-#: export/ExportMultiple.cpp:88
-#: export/ExportMultiple.cpp:362
-#: export/ExportMultiple.cpp:609
-#: export/ExportMultiple.cpp:717
+#: export/ExportMultiple.cpp:88 export/ExportMultiple.cpp:362
+#: export/ExportMultiple.cpp:609 export/ExportMultiple.cpp:717
msgid "Export Multiple"
msgstr "Exportar múltiplos"
#: export/ExportMultiple.cpp:152
msgid ""
-"If you have more than one Audio Track, you can export each track as a separate file,\n"
+"If you have more than one Audio Track, you can export each track as a "
+"separate file,\n"
"or if you have a Label Track, you can export a new file for each label.\n"
"\n"
-"This project does not have multiple tracks or a Label Track, so you cannot export multiple files."
+"This project does not have multiple tracks or a Label Track, so you cannot "
+"export multiple files."
msgstr ""
-"Se você tiver várias faixas de áudio, é possível exportá-las em arquivos separados,\n"
-"ou se houverem faixas de título, é possível exportar um novo arquivo para cada título.\n"
+"Se você tiver várias faixas de áudio, é possível exportá-las em arquivos "
+"separados,\n"
+"ou se houverem faixas de título, é possível exportar um novo arquivo para "
+"cada título.\n"
"\n"
-"Este projeto não pode ser exportado em múltiplos arquivos por conter apenas uma faixa de áudio e nenhuma faixa de título."
+"Este projeto não pode ser exportado em múltiplos arquivos por conter apenas "
+"uma faixa de áudio e nenhuma faixa de título."
#: export/ExportMultiple.cpp:153
msgid "Can't export multiple files"
@@ -5730,8 +5819,7 @@ msgstr "Op
msgid "Export location:"
msgstr "Exportar em:"
-#: export/ExportMultiple.cpp:204
-#: prefs/DirectoriesPrefs.cpp:92
+#: export/ExportMultiple.cpp:204 prefs/DirectoriesPrefs.cpp:92
msgid "Choose..."
msgstr "Selecionar..."
@@ -5807,14 +5895,12 @@ msgstr ""
"\n"
"Deseja criá-lo?"
-#: export/ExportMultiple.cpp:606
-#: export/ExportMultiple.cpp:714
+#: export/ExportMultiple.cpp:606 export/ExportMultiple.cpp:714
#, c-format
msgid "Successfully exported %d file(s)."
msgstr "%d arquivo(s) exportado(s) com êxito."
-#: export/ExportMultiple.cpp:607
-#: export/ExportMultiple.cpp:715
+#: export/ExportMultiple.cpp:607 export/ExportMultiple.cpp:715
#, c-format
msgid "Something went wrong after exporting %d file(s)."
msgstr "Erro ao exportar %d arquivo(s),"
@@ -5869,10 +5955,10 @@ msgstr "Encodifica
#: export/ExportPCM.cpp:190
msgid "(Not all combinations of headers and encodings are possible.)"
-msgstr "(Nem todas as possibilidades entre tipos e formatos estão disponíveis.)"
+msgstr ""
+"(Nem todas as possibilidades entre tipos e formatos estão disponíveis.)"
-#: export/ExportPCM.cpp:320
-#: import/ImportPCM.cpp:47
+#: export/ExportPCM.cpp:320 import/ImportPCM.cpp:47
msgid "WAV, AIFF, and other uncompressed types"
msgstr "WAV, AIFF, e outros arquivos não-compactados"
@@ -5923,12 +6009,16 @@ msgstr ""
#, c-format
msgid ""
"\"%s\" is a playlist file. \n"
-"Audacity cannot open this file because it only contains links to other files. \n"
-"You may be able to open it in a text editor and download the actual audio files."
+"Audacity cannot open this file because it only contains links to other "
+"files. \n"
+"You may be able to open it in a text editor and download the actual audio "
+"files."
msgstr ""
"\"%s\" é um arquivo de lista de músicas.\n"
-"O Audacity não pode abrir este arquivo porque existem apenas links para outros arquivos.\n"
-"Você pode editar este arquivo em um editor de textos e localizar manualmente os arquivos de áudio reais."
+"O Audacity não pode abrir este arquivo porque existem apenas links para "
+"outros arquivos.\n"
+"Você pode editar este arquivo em um editor de textos e localizar manualmente "
+"os arquivos de áudio reais."
#: import/Import.cpp:178
#, c-format
@@ -5958,7 +6048,8 @@ msgstr ""
#: import/Import.cpp:188
#, c-format
msgid ""
-"\"%s\" is an encrypted audio file. These typically are from an online music store. \n"
+"\"%s\" is an encrypted audio file. These typically are from an online music "
+"store. \n"
"Audacity cannot open this type of file due to the encryption. \n"
"Try recording the file into Audacity, or burn it to audio CD then \n"
"extract the CD track to a supported audio format such as WAV or AIFF."
@@ -6021,9 +6112,7 @@ msgid "Invalid window offset in LOF file."
msgstr "Janela com compensação inválida no arquivo LOF."
#. i18n-hint: You do not need to translate "LOF"
-#: import/ImportLOF.cpp:320
-#: import/ImportLOF.cpp:341
-#: import/ImportLOF.cpp:415
+#: import/ImportLOF.cpp:320 import/ImportLOF.cpp:341 import/ImportLOF.cpp:415
#: import/ImportLOF.cpp:435
msgid "LOF Error"
msgstr "Erro LOF"
@@ -6035,7 +6124,9 @@ msgstr "Dura
#: import/ImportLOF.cpp:414
msgid "MIDI tracks cannot be offset individually, only audio files can be."
-msgstr "Faixas MIDI não podem ser compensadas individualmente, disponível apenas em arquivos de áudio."
+msgstr ""
+"Faixas MIDI não podem ser compensadas individualmente, disponível apenas em "
+"arquivos de áudio."
#. i18n-hint: You do not need to translate "LOF"
#: import/ImportLOF.cpp:434
@@ -6146,8 +6237,7 @@ msgstr "Taxa de amostragem:"
msgid "&Import"
msgstr "&Importar"
-#: prefs/AudioIOPrefs.cpp:41
-#: prefs/AudioIOPrefs.cpp:42
+#: prefs/AudioIOPrefs.cpp:41 prefs/AudioIOPrefs.cpp:42
msgid "Audio I/O"
msgstr "Dispositivos"
@@ -6163,8 +6253,7 @@ msgstr "2 (Est
msgid "Playback"
msgstr "Reprodução"
-#: prefs/AudioIOPrefs.cpp:119
-#: prefs/AudioIOPrefs.cpp:137
+#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
#: toolbars/DeviceToolBar.cpp:57
msgid "Device"
msgstr "Dispositivo"
@@ -6202,7 +6291,9 @@ msgid "&Software Playthrough: Play new track while recording it"
msgstr "Reprodução simultânea via &software"
#: prefs/AudioIOPrefs.cpp:155
-msgid "&Software Playthrough: Play new track while recording it (uncheck when recording \"stereo mix\")"
+msgid ""
+"&Software Playthrough: Play new track while recording it (uncheck when "
+"recording \"stereo mix\")"
msgstr "Reprodução simultânea via s&oftware (desabilite ao gravar em estéreo)"
#: prefs/AudioIOPrefs.cpp:162
@@ -6249,13 +6340,11 @@ msgstr "Per
msgid "Long period:"
msgstr "Período longo:"
-#: prefs/BatchPrefs.cpp:55
-#: prefs/BatchPrefs.cpp:56
+#: prefs/BatchPrefs.cpp:55 prefs/BatchPrefs.cpp:56
msgid "Batch"
msgstr "Lote"
-#: prefs/BatchPrefs.cpp:77
-#: prefs/GUIPrefs.cpp:70
+#: prefs/BatchPrefs.cpp:77 prefs/GUIPrefs.cpp:70
msgid "Behaviors"
msgstr "Opções"
@@ -6271,8 +6360,7 @@ msgstr "&Ao importar, normalizar
msgid "Cl&eanSpeech Mode (Customized GUI)"
msgstr "Modo Cl&eanSpeech (interface personalizada)"
-#: prefs/BatchPrefs.cpp:89
-#: prefs/GUIPrefs.cpp:94
+#: prefs/BatchPrefs.cpp:89 prefs/GUIPrefs.cpp:94
msgid "Show / Hide"
msgstr "Exibir / Ocultar"
@@ -6280,8 +6368,7 @@ msgstr "Exibir / Ocultar"
msgid "S&how Metadata Editor prior to export step"
msgstr "&Exibir Editor de metadados antes de exportar arquivos"
-#: prefs/DirectoriesPrefs.cpp:55
-#: prefs/DirectoriesPrefs.cpp:56
+#: prefs/DirectoriesPrefs.cpp:55 prefs/DirectoriesPrefs.cpp:56
#: prefs/PrefsDialog.cpp:279
msgid "Directories"
msgstr "Pastas"
@@ -6341,11 +6428,14 @@ msgid "Directory %s is not writable"
msgstr "Pasta %s não pode ser gravada"
#: prefs/DirectoriesPrefs.cpp:199
-msgid "Changes to temporary directory will not take effect until Audacity is restarted"
-msgstr "Alterações na pasta temporária só terão efeito na próxima vez que o Audacity for executado."
+msgid ""
+"Changes to temporary directory will not take effect until Audacity is "
+"restarted"
+msgstr ""
+"Alterações na pasta temporária só terão efeito na próxima vez que o Audacity "
+"for executado."
-#: prefs/FileFormatPrefs.cpp:47
-#: prefs/FileFormatPrefs.cpp:48
+#: prefs/FileFormatPrefs.cpp:47 prefs/FileFormatPrefs.cpp:48
msgid "Audio Files"
msgstr "Arquivos de áudio"
@@ -6405,8 +6495,7 @@ msgstr "Localizar &Biblioteca"
msgid "&Download Free Copy of LAME"
msgstr "Copiar &LAME gratuitamente"
-#: prefs/GUIPrefs.cpp:33
-#: prefs/GUIPrefs.cpp:34
+#: prefs/GUIPrefs.cpp:33 prefs/GUIPrefs.cpp:34
msgid "Interface"
msgstr "Interface"
@@ -6499,8 +6588,7 @@ msgstr "-120 dB (limite m
msgid "-145 dB (PCM range of 24 bit samples)"
msgstr "-145 dB (extensão PCM para amostras de 24 bit)"
-#: prefs/KeyConfigPrefs.cpp:64
-#: prefs/KeyConfigPrefs.cpp:65
+#: prefs/KeyConfigPrefs.cpp:64 prefs/KeyConfigPrefs.cpp:65
msgid "Keyboard"
msgstr "Teclado"
@@ -6514,10 +6602,11 @@ msgstr "A&justar"
#: prefs/KeyConfigPrefs.cpp:120
msgid "Note: Pressing Cmd+Q will quit. All other keys are valid."
-msgstr "Nota: Pressionar Cmd+Q fecha a janela. Todas as outras combinações são válidas."
+msgstr ""
+"Nota: Pressionar Cmd+Q fecha a janela. Todas as outras combinações são "
+"válidas."
-#: prefs/KeyConfigPrefs.cpp:124
-#: prefs/ThemePrefs.cpp:105
+#: prefs/KeyConfigPrefs.cpp:124 prefs/ThemePrefs.cpp:105
msgid "&Defaults"
msgstr "&Padrões"
@@ -6556,13 +6645,11 @@ msgstr ""
"\n"
"'%s'"
-#: prefs/KeyConfigPrefs.cpp:367
-#: toolbars/EditToolBar.cpp:144
+#: prefs/KeyConfigPrefs.cpp:367 toolbars/EditToolBar.cpp:144
msgid "Undo"
msgstr "Desfazer"
-#: prefs/MousePrefs.cpp:55
-#: prefs/MousePrefs.cpp:56
+#: prefs/MousePrefs.cpp:55 prefs/MousePrefs.cpp:56
msgid "Mouse"
msgstr "Mouse"
@@ -6583,37 +6670,26 @@ msgstr "A
msgid "Buttons"
msgstr "Botões"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:117
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:117
#: prefs/MousePrefs.cpp:122
msgid "Left-Click"
msgstr "Clicar com o botão esquerdo"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:100
-#: prefs/MousePrefs.cpp:101
-#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:101 prefs/MousePrefs.cpp:102
msgid "Select"
msgstr "Selecionar"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:122
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:122
msgid "Set Selection Point"
msgstr "Ajuste do início da seleção"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:115
-#: prefs/MousePrefs.cpp:119
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:115 prefs/MousePrefs.cpp:119 prefs/MousePrefs.cpp:123
msgid "Left-Drag"
msgstr "Arrastar com o botão esquerdo"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:123
msgid "Set Selection Range"
msgstr "Ajuste da extensão da seleção"
@@ -6641,12 +6717,8 @@ msgstr "Ctrl + Clicar com bot
msgid "Set Selection Point and Play"
msgstr "Ajustar ponto de seleção ou reprodução"
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:108
-#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:106
+#: prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:108 prefs/MousePrefs.cpp:109
msgid "Zoom"
msgstr "Zoom"
@@ -6654,9 +6726,7 @@ msgstr "Zoom"
msgid "Zoom in on Point"
msgstr "Aumentar zoom no ponto"
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:125
msgid "Zoom in on a Range"
msgstr "Aumentar zoom na extensão"
@@ -6664,18 +6734,15 @@ msgstr "Aumentar zoom na extens
msgid "same as right-drag"
msgstr "O mesmo que arrastar com o botão direito"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:106 prefs/MousePrefs.cpp:124
msgid "Right-Click"
msgstr "Clicar com o botão direito"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:106 prefs/MousePrefs.cpp:124
msgid "Zoom out one step"
msgstr "Diminuir zoom um ponto"
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:125
msgid "Right-Drag"
msgstr "Arrastar com o botão direito"
@@ -6711,8 +6778,7 @@ msgstr "Shift + Arrastar com bot
msgid "Time shift all clips in track"
msgstr "Deslizar todos os clipes da faixa"
-#: prefs/MousePrefs.cpp:113
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:113 prefs/MousePrefs.cpp:120
msgid "Ctrl-Left-Drag"
msgstr "Ctrl + Arrastar com o botão esquerdo"
@@ -6728,9 +6794,7 @@ msgstr "Alterar envelope da amplifica
msgid "Change Sample"
msgstr "Alterar amostra"
-#: prefs/MousePrefs.cpp:117
-#: prefs/MousePrefs.cpp:118
-#: prefs/MousePrefs.cpp:119
+#: prefs/MousePrefs.cpp:117 prefs/MousePrefs.cpp:118 prefs/MousePrefs.cpp:119
#: prefs/MousePrefs.cpp:120
msgid "Pencil"
msgstr "Lápis"
@@ -6751,26 +6815,20 @@ msgstr "Alterar m
msgid "Change ONE Sample only"
msgstr "Alterar UMA amostra apenas"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123 prefs/MousePrefs.cpp:124
#: prefs/MousePrefs.cpp:125
msgid "Multi"
msgstr "Multi"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123
msgid "same as select tool"
msgstr "Similar à ferramenta de seleção"
-#: prefs/MousePrefs.cpp:124
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:124 prefs/MousePrefs.cpp:125
msgid "same as zoom tool"
msgstr "Similar à ferramenta de zoom"
-#: prefs/MousePrefs.cpp:127
-#: prefs/MousePrefs.cpp:128
-#: prefs/MousePrefs.cpp:129
+#: prefs/MousePrefs.cpp:127 prefs/MousePrefs.cpp:128 prefs/MousePrefs.cpp:129
msgid "Any"
msgstr "Qualquer"
@@ -6802,8 +6860,7 @@ msgstr "Mais ou menos zoom"
msgid "Audacity Preferences"
msgstr "Preferências do Audacity"
-#: prefs/QualityPrefs.cpp:42
-#: prefs/QualityPrefs.cpp:43
+#: prefs/QualityPrefs.cpp:42 prefs/QualityPrefs.cpp:43
msgid "Quality"
msgstr "Qualidade"
@@ -6869,13 +6926,11 @@ msgid "High-quality:"
msgstr "De alta-qualidade:"
# smart rec = grav programada! (igual aos VCR)
-#: prefs/SmartRecordPrefs.cpp:54
-#: prefs/SmartRecordPrefs.cpp:55
+#: prefs/SmartRecordPrefs.cpp:54 prefs/SmartRecordPrefs.cpp:55
msgid "Smart Recording"
msgstr "Gravação programada"
-#: prefs/SmartRecordPrefs.cpp:81
-#: prefs/SmartRecordPrefs.cpp:83
+#: prefs/SmartRecordPrefs.cpp:81 prefs/SmartRecordPrefs.cpp:83
msgid "Pause Recording on Silence"
msgstr "Pausar gravação ao detectar silêncio"
@@ -6883,8 +6938,7 @@ msgstr "Pausar grava
msgid "Silence level (dB):"
msgstr "Nível de silêncio (dB):"
-#: prefs/SpectrumPrefs.cpp:36
-#: prefs/SpectrumPrefs.cpp:37
+#: prefs/SpectrumPrefs.cpp:36 prefs/SpectrumPrefs.cpp:37
msgid "Spectrograms"
msgstr "Espectrograma"
@@ -6940,8 +6994,7 @@ msgstr "A freq
msgid "Minimum frequency must be at least 0 Hz"
msgstr "A freqüência mínima deve ser no mínimo 0 Hz"
-#: prefs/ThemePrefs.cpp:62
-#: prefs/ThemePrefs.cpp:63
+#: prefs/ThemePrefs.cpp:62 prefs/ThemePrefs.cpp:63
msgid "Theme"
msgstr "Tema"
@@ -7047,10 +7100,6 @@ msgstr ""
msgid "Control"
msgstr "Controle"
-#: toolbars/ControlToolBar.cpp:174
-msgid "Pause"
-msgstr "Pausar"
-
#: toolbars/ControlToolBar.cpp:177
msgid "Play"
msgstr "Reproduzir"
@@ -7059,42 +7108,31 @@ msgstr "Reproduzir"
msgid "Play (Shift for loop-play)"
msgstr "Executar (Shift para reprodução contínua)"
-#: toolbars/ControlToolBar.cpp:182
-msgid "Stop"
-msgstr "Parar"
-
-#: toolbars/ControlToolBar.cpp:185
-msgid "Skip to Start"
-msgstr "Ir para o início"
-
-#: toolbars/ControlToolBar.cpp:188
-msgid "Skip to End"
-msgstr "Ir para o final"
-
#: toolbars/ControlToolBar.cpp:194
msgid "Clean Speech"
msgstr "Clean Speech"
-#: toolbars/ControlToolBar.cpp:530
-#: toolbars/ControlToolBar.cpp:839
+#: toolbars/ControlToolBar.cpp:530 toolbars/ControlToolBar.cpp:839
msgid "Error while opening sound device. "
msgstr "Erro ao abrir o dispositivo de áudio."
#: toolbars/ControlToolBar.cpp:696
-msgid "Recording in CleanSpeech mode is not possible when a track, or more than one project, is already open."
-msgstr "Não é possível gravar no modo CleanSpeech com mais de uma faixa ou projeto abertos."
+msgid ""
+"Recording in CleanSpeech mode is not possible when a track, or more than one "
+"project, is already open."
+msgstr ""
+"Não é possível gravar no modo CleanSpeech com mais de uma faixa ou projeto "
+"abertos."
#: toolbars/ControlToolBar.cpp:697
msgid "Recording not permitted"
msgstr "Gravação não permitida"
-#: toolbars/DeviceToolBar.cpp:113
-#: toolbars/DeviceToolBar.cpp:115
+#: toolbars/DeviceToolBar.cpp:113 toolbars/DeviceToolBar.cpp:115
msgid "Output Device"
msgstr "Dispositivo de Saída"
-#: toolbars/DeviceToolBar.cpp:134
-#: toolbars/DeviceToolBar.cpp:136
+#: toolbars/DeviceToolBar.cpp:134 toolbars/DeviceToolBar.cpp:136
msgid "Input Device"
msgstr "Dispositivo de Entrada"
@@ -7192,13 +7230,11 @@ msgstr "Fonte de entrada"
msgid "Selection"
msgstr "Seleção"
-#: toolbars/SelectionBar.cpp:120
-#: toolbars/SelectionBar.cpp:177
+#: toolbars/SelectionBar.cpp:120 toolbars/SelectionBar.cpp:177
msgid "Project Rate (Hz):"
msgstr "Taxa do Projeto (Hz):"
-#: toolbars/SelectionBar.cpp:134
-#: toolbars/SelectionBar.cpp:235
+#: toolbars/SelectionBar.cpp:134 toolbars/SelectionBar.cpp:235
msgid "Selection Start:"
msgstr "Inicio da Seleção:"
@@ -7206,13 +7242,11 @@ msgstr "Inicio da Sele
msgid "hidden"
msgstr "oculto"
-#: toolbars/SelectionBar.cpp:167
-#: toolbars/SelectionBar.cpp:252
+#: toolbars/SelectionBar.cpp:167 toolbars/SelectionBar.cpp:252
msgid "Audio Position:"
msgstr "Posição do áudio:"
-#: toolbars/SelectionBar.cpp:217
-#: toolbars/SelectionBar.cpp:222
+#: toolbars/SelectionBar.cpp:217 toolbars/SelectionBar.cpp:222
msgid "Snap To"
msgstr "Adiantar para"
@@ -7234,8 +7268,7 @@ msgstr "Final da sele
msgid "Audacity %s ToolBar"
msgstr "Barra de %s do Audacity"
-#: toolbars/ToolDock.cpp:74
-#: toolbars/ToolDock.cpp:75
+#: toolbars/ToolDock.cpp:74 toolbars/ToolDock.cpp:75
msgid "ToolDock"
msgstr "Barra de ferramentas"
@@ -7271,30 +7304,6 @@ msgstr "Clique e arraste para mover uma faixa no tempo"
msgid "Tools"
msgstr "Ferramentas"
-#: toolbars/ToolsToolBar.cpp:147
-#: toolbars/ToolsToolBar.cpp:182
-msgid "Selection Tool"
-msgstr "Ferramenta de seleção"
-
-#: toolbars/ToolsToolBar.cpp:148
-msgid "Envelope Tool"
-msgstr "Ferramenta Envelope"
-
-#: toolbars/ToolsToolBar.cpp:149
-#: toolbars/ToolsToolBar.cpp:183
-msgid "Time Shift Tool"
-msgstr "Ferramenta Deslizar"
-
-#: toolbars/ToolsToolBar.cpp:150
-#: toolbars/ToolsToolBar.cpp:185
-msgid "Zoom Tool"
-msgstr "Ferramenta de Zoom"
-
-#: toolbars/ToolsToolBar.cpp:151
-#: toolbars/ToolsToolBar.cpp:184
-msgid "Draw Tool"
-msgstr "Ferramenta de desenho"
-
#: toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
msgstr "Modo multi-ferramenta"
@@ -7303,10 +7312,6 @@ msgstr "Modo multi-ferramenta"
msgid "Slide Tool"
msgstr "Ferramenta deslizar"
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr "Multi ferrramenta"
-
#: toolbars/TranscriptionToolBar.cpp:84
msgid "Transcription"
msgstr "Transcrição"
@@ -7319,8 +7324,7 @@ msgstr "Executar na "
msgid "Play-at-speed"
msgstr "Executar-em-velocidade"
-#: toolbars/TranscriptionToolBar.cpp:172
-#: toolbars/TranscriptionToolBar.cpp:177
+#: toolbars/TranscriptionToolBar.cpp:172 toolbars/TranscriptionToolBar.cpp:177
msgid "Playback Speed"
msgstr "Velocidade de reprodução"
@@ -7446,15 +7450,13 @@ msgstr "Bot
#. i18n-hint: One-letter abbreviation for Left, in VU Meter
#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
-#: widgets/ASlider.cpp:604
-#: widgets/Meter.cpp:211
+#: widgets/ASlider.cpp:604 widgets/Meter.cpp:211
msgid "L"
msgstr "E"
#. i18n-hint: One-letter abbreviation for Right, in VU Meter
#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
-#: widgets/ASlider.cpp:607
-#: widgets/Meter.cpp:213
+#: widgets/ASlider.cpp:607 widgets/Meter.cpp:213
msgid "R"
msgstr "D"
@@ -7470,8 +7472,7 @@ msgstr "Esquerdo"
msgid "Right"
msgstr "Direito"
-#: widgets/ErrorDialog.cpp:73
-#: widgets/ErrorDialog.cpp:97
+#: widgets/ErrorDialog.cpp:73 widgets/ErrorDialog.cpp:97
msgid "Help"
msgstr "Ajuda"
@@ -7488,8 +7489,7 @@ msgstr "Grabber"
msgid "%d rows, %d columns"
msgstr "%d linhas, %d colunas"
-#: widgets/Grid.cpp:641
-#: widgets/Grid.cpp:768
+#: widgets/Grid.cpp:641 widgets/Grid.cpp:768
#, c-format
msgid "Row %d"
msgstr "Linha %d"
@@ -7554,8 +7554,7 @@ msgstr "Prefer
msgid " Please select an action "
msgstr "Por favor, selecione uma ação"
-#: widgets/Ruler.cpp:1138
-#: widgets/Ruler.cpp:1139
+#: widgets/Ruler.cpp:1138 widgets/Ruler.cpp:1139
msgid "Vertical Ruler"
msgstr "Régua Vertical"
@@ -7680,7 +7679,8 @@ msgstr "01000,01000 quadros|75"
#: widgets/TimeTextCtrl.cpp:366
msgid "Use right mouse button or context key to change format"
-msgstr "Use o botão direito do mouse ou a tecla de contexto para alterar o formato"
+msgstr ""
+"Use o botão direito do mouse ou a tecla de contexto para alterar o formato"
#: widgets/TimeTextCtrl.cpp:1380
msgid "Time Control"
@@ -7704,4 +7704,3 @@ msgstr "Erro %s na linha %d"
#, c-format
msgid "Could not load file: \"%s\""
msgstr "Não foi possível carregar o arquivo: \"%s\""
-
diff --git a/locale/pt_BR.po b/locale/pt_BR.po
index c90babf..46b14a2 100644
--- a/locale/pt_BR.po
+++ b/locale/pt_BR.po
@@ -3,10 +3,11 @@
# FIRST AUTHOR <EMAIL at ADDRESS>, YEAR.
#
msgid ""
-msgstr "Project-Id-Version: Audacity 1.3\n"
+msgstr ""
+"Project-Id-Version: Audacity 1.3\n"
"Report-Msgid-Bugs-To: audacity-translation at lists.sourceforge.net\n"
-"POT-Creation-Date: 2008-04-28 22:24+0100\n"
-"PO-Revision-Date: 2008-05-03 01:48-0300\n"
+"POT-Creation-Date: 2009-06-30 22:14+0100\n"
+"PO-Revision-Date: 2009-07-08 22:11-0300\n"
"Last-Translator: Cleber Tavano <clebertavano at gmail.com>\n"
"Language-Team: Cleber Tavano <clebertavano at gmail.com>\n"
"MIME-Version: 1.0\n"
@@ -16,27 +17,25 @@ msgstr "Project-Id-Version: Audacity 1.3\n"
"X-Poedit-Country: BRAZIL\n"
"X-Poedit-SourceCharset: iso-8859-1\n"
-#: AboutDialog.cpp:142
-#: AudacityApp.cpp:749
-#: Menus.cpp:745
-msgid "&About Audacity..."
-msgstr "&Sobre..."
+#: AboutDialog.cpp:143
+msgid "About Audacity..."
+msgstr "Sobre o Audacity..."
-#: AboutDialog.cpp:156
+#: AboutDialog.cpp:157
msgid "OK... Audacious!"
-msgstr "OK... Audacioso!!"
+msgstr "OK... Audacioso!"
#: AboutDialog.cpp:175
msgid "Audacity is a free program written by a team of volunteer <a href=\"http://audacity.sourceforge.net/community/developers\">developers</a> around the world. We are grateful to <a href=\"http://sourceforge.net\">SourceForge.net</a> for our project hosting. Audacity is available for Windows 98 and later, Mac OS X, Linux and other Unix-like operating systems. Older versions of Audacity are available for Mac OS 9."
-msgstr ""
+msgstr "O Audacity é um programa livre escrito por um time de <a href=\"http://audacity.sourceforge.net/community/developers\">desenvolvedores</a> voluntários de todo o mundo. Nós somos gratos a <a href=\"http://sourceforge.net\">SourceForge.net</a> pela hospedagem do nosso projeto. O Audacity está disponÃvel para Windows 98 e posteriores, Mac OS X, Linux e outros sistemas operacionais baseados em Unix. Versões anteriores do Audacity estão disponÃveis para Mac OS 9."
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
-msgstr ""
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgstr "Esta é uma versão beta do programa, para testes. Podem haver problemas ou recursos não implementados. Dependemos de sua ajuda para tornar este programa cada vez melhor: envie os erros encontrados e quais recursos gostaria de ver nas próximas versões para <b>feedback at audacityteam.org</b>. Visite nosso site e reporte qualquer problema que possa ter em nosso <a href=\"http://audacityteam.org/forum/\">Fórum</a>."
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
-msgstr ""
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgstr "Esta é uma versão estável e completa do Audacity. No entanto, se você encontrar alguma falha ou se tiver uma sugestão, por favor entre em contato pelo <b>feedback at audacityteam.org</b>. Este projeto depende do retorno dos usuários para melhorar cada vez mais. Visite nosso site e nosso <a href=\"http://audacityteam.org/forum/\">Fórum</a>."
#. i18n-hint: The translation of "translator_credits" will appear
#. in the credits in the About Audacity window. Use this to add
@@ -47,11 +46,11 @@ msgstr ""
#: AboutDialog.cpp:192
#: AboutDialog.cpp:194
msgid "translator_credits"
-msgstr "Tradução ao português brasileiro (pt_BR) por Cleber Tavano"
+msgstr "Tradução ao português brasileiro (pt_BR) por Cleber Tavano, com contribuições e revisões de Victor Westmann"
#: AboutDialog.cpp:207
msgid "A Free Digital Audio Editor<br>"
-msgstr ""
+msgstr "O Editor de Ãudio Digital Livre<br>"
#: AboutDialog.cpp:211
msgid "Credits"
@@ -69,11 +68,11 @@ msgstr "Time de suporte do Audacity %s"
#: AboutDialog.cpp:225
msgid "Emeritus Developers"
-msgstr "Desenvolvedores eméritos"
+msgstr "Desenvolvedores Eméritos"
#: AboutDialog.cpp:230
msgid "Other Emeritus Team Members"
-msgstr "Outros membros eméritos"
+msgstr "Outros Membros Eméritos"
#: AboutDialog.cpp:235
msgid "Other Contributors"
@@ -88,78 +87,77 @@ msgid "Special thanks:"
msgstr "Agradecimentos + q Especiais:"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
-msgstr ""
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgstr "O programa <b>Audacity®</b> tem direitos reservados para © 1999-2009 Audacity Team. <br>O nome <b>Audacity®</b> é marca registrada por Dominic Mazzoni."
-#: AboutDialog.cpp:254
+#: AboutDialog.cpp:258
msgid "Audacity"
msgstr "Audacity"
#. i18n-hint: Information about when audacity was compiled
-#: AboutDialog.cpp:299
-#: AboutDialog.cpp:312
+#: AboutDialog.cpp:304
+#: AboutDialog.cpp:317
#: AboutDialog.cpp:468
msgid "Build Information"
-msgstr "Informação do build"
+msgstr "Informação da compilação"
-#: AboutDialog.cpp:305
+#: AboutDialog.cpp:310
#: effects/AvcCompressor.cpp:674
msgid "Enabled"
-msgstr "Ligado"
+msgstr "Habilitado"
-#: AboutDialog.cpp:306
+#: AboutDialog.cpp:311
msgid "Disabled"
msgstr "Desabilitado"
-#: AboutDialog.cpp:316
+#: AboutDialog.cpp:321
msgid "File Format Support"
msgstr "Suporte a arquivos nos formatos"
#. i18n-hint: This is what the library (libmad) does - imports MP3 files
-#: AboutDialog.cpp:326
-#: AboutDialog.cpp:328
+#: AboutDialog.cpp:331
+#: AboutDialog.cpp:333
msgid "MP3 Importing"
msgstr "Importação de MP3"
-#: AboutDialog.cpp:335
-#: AboutDialog.cpp:338
+#: AboutDialog.cpp:340
+#: AboutDialog.cpp:343
msgid "Ogg Vorbis Import and Export"
msgstr "Importação e exportação em Ogg Vorbis"
-#: AboutDialog.cpp:342
-#: AboutDialog.cpp:345
+#: AboutDialog.cpp:347
+#: AboutDialog.cpp:350
msgid "ID3 tag support"
msgstr "Suporte a tags ID3"
-#: AboutDialog.cpp:352
-#: AboutDialog.cpp:355
+#: AboutDialog.cpp:357
+#: AboutDialog.cpp:360
msgid "FLAC import and export"
msgstr "Importação e exportação em FLAC"
-#: AboutDialog.cpp:360
-#: AboutDialog.cpp:363
+#: AboutDialog.cpp:365
+#: AboutDialog.cpp:368
msgid "MP2 export"
-msgstr "Importação e exportação em MP2"
+msgstr "Exportação em MP2"
-#: AboutDialog.cpp:368
-#: AboutDialog.cpp:371
+#: AboutDialog.cpp:373
+#: AboutDialog.cpp:376
msgid "Import via QuickTime"
msgstr "Importar via QuickTime"
#. i18n-hint: Libraries that are essential to audacity
-#: AboutDialog.cpp:378
+#: AboutDialog.cpp:383
msgid "Core Libraries"
msgstr "Bibliotecas de núcleo"
-#: AboutDialog.cpp:384
-#: AboutDialog.cpp:387
-#: AboutDialog.cpp:390
+#: AboutDialog.cpp:389
#: AboutDialog.cpp:392
+#: AboutDialog.cpp:395
+#: AboutDialog.cpp:397
msgid "Sample rate conversion"
msgstr "Conversão de taxa de amostragem"
-#: AboutDialog.cpp:397
-#: AboutDialog.cpp:400
+#: AboutDialog.cpp:401
msgid "Audio playback and recording"
msgstr "Execução de áudio e gravação"
@@ -195,15 +193,15 @@ msgstr "Data de compilação:"
#: AboutDialog.cpp:475
#: AboutDialog.cpp:477
msgid "Build type:"
-msgstr "Tipo de build:"
+msgstr "Tipo de compilação:"
#: AboutDialog.cpp:475
msgid "Debug build"
-msgstr "Build para debug"
+msgstr "Compilação para debug"
#: AboutDialog.cpp:477
msgid "Release build"
-msgstr "Build da versão"
+msgstr "Compilação da versão"
#. i18n-hint: The directory audacity is installed into (on *nix systems)
#: AboutDialog.cpp:482
@@ -218,127 +216,153 @@ msgstr "Pasta de configurações"
msgid "GPL License"
msgstr "Licença GPL"
-#: AudacityApp.cpp:468
-#: Project.cpp:1761
+#: AudacityApp.cpp:677
+#: Project.cpp:2031
#, c-format
msgid "%s is already open in another window."
msgstr "%s já está aberto em outra janela."
-#: AudacityApp.cpp:470
-#: Project.cpp:1763
-#: Project.cpp:1868
-#: Project.cpp:2012
-#: Project.cpp:2114
+#: AudacityApp.cpp:679
+#: Project.cpp:2033
+#: Project.cpp:2153
+#: Project.cpp:2301
+#: Project.cpp:2433
msgid "Error opening project"
msgstr "Erro abrindo projeto"
-#: AudacityApp.cpp:502
+#: AudacityApp.cpp:705
#, c-format
-msgid "%s does not exist and could not be opened.\n"
+msgid ""
+"%s does not exist and could not be opened.\n"
"\n"
"It has been removed from the history list."
-msgstr "%s não existe e não pôde ser aberto. \n"
+msgstr ""
+"%s não existe e não pôde ser aberto.\n"
"\n"
"Esta entrada foi removida do histórico."
-#: AudacityApp.cpp:581
+#: AudacityApp.cpp:812
msgid "Master Gain Control"
msgstr "Controle de volume principal"
-#: AudacityApp.cpp:582
+#: AudacityApp.cpp:813
msgid "Input Meter"
msgstr "Medidor de entrada"
-#: AudacityApp.cpp:583
+#: AudacityApp.cpp:814
msgid "Output Meter"
msgstr "Medidor de saÃda"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
-#: AudacityApp.cpp:751
-#: Menus.cpp:478
-msgid "&Preferences...\tCtrl+,"
-msgstr "&Preferências...\tCtrl+,"
+#: AudacityApp.cpp:973
+#: Menus.cpp:199
+msgid "&New"
+msgstr "&Novo"
+
+#: AudacityApp.cpp:974
+#: Menus.cpp:203
+msgid "&Open..."
+msgstr "&Abrir..."
+
+#: AudacityApp.cpp:975
+msgid "Open &Recent..."
+msgstr "Abrir &recente..."
+
+#: AudacityApp.cpp:976
+#: Menus.cpp:955
+msgid "&About Audacity..."
+msgstr "&Sobre Audacity..."
+
+#: AudacityApp.cpp:977
+msgid "&Preferences..."
+msgstr "&Preferências..."
-#: AudacityApp.cpp:833
-#: AudacityApp.cpp:910
+#: AudacityApp.cpp:1068
+#: AudacityApp.cpp:1145
#, c-format
msgid "Using block size of %ld\n"
msgstr "Usando blocos de %ld de tamanho\n"
-#: AudacityApp.cpp:855
-#: AudacityApp.cpp:925
+#: AudacityApp.cpp:1090
+#: AudacityApp.cpp:1160
#, c-format
msgid "Unknown command line option: %s\n"
msgstr "Comando não-reconhecido: %s\n"
-#: AudacityApp.cpp:1044
-msgid "Audacity could not find a place to store temporary files.\n"
+#: AudacityApp.cpp:1314
+msgid ""
+"Audacity could not find a place to store temporary files.\n"
"Please enter an appropriate directory in the preferences dialog."
-msgstr "Audacity não conseguiu encontrar uma pasta para guardar os arquivos temporários. \n"
+msgstr ""
+"Audacity não conseguiu encontrar uma pasta para guardar os arquivos temporários. \n"
"Por favor, digite um nome de pasta apropriado na caixa de diálogos \"Preferências\"."
-#: AudacityApp.cpp:1050
+#: AudacityApp.cpp:1320
msgid "Audacity is now going to exit. Please launch Audacity again to use the new temporary directory."
msgstr "Audacity irá se encerrar agora. Abra o programa novamente para utilizar a nova pasta temporária."
-#: AudacityApp.cpp:1082
-msgid "Running two copies of Audacity simultaneously may cause\n"
+#: AudacityApp.cpp:1352
+msgid ""
+"Running two copies of Audacity simultaneously may cause\n"
"data loss or cause your system to crash.\n"
"\n"
-msgstr "Executar duas cópias do Audacity simultaneamente \n"
+msgstr ""
+"Executar duas cópias do Audacity simultaneamente \n"
"pode causar perda de dados e tornar o sistema instável.\n"
"\n"
-#: AudacityApp.cpp:1089
-msgid "Audacity was not able to lock the temporary files directory.\n"
+#: AudacityApp.cpp:1359
+msgid ""
+"Audacity was not able to lock the temporary files directory.\n"
"This folder may be in use by another copy of Audacity.\n"
-msgstr "Não foi possÃvel estabelecer o vÃnculo exclusivo \n"
+msgstr ""
+"Não foi possÃvel estabelecer o vÃnculo exclusivo \n"
"com os arquivos temporários.\n"
"A pasta pode estar em uso por outra cópia \n"
"do Audacity em execução.\n"
-#: AudacityApp.cpp:1091
+#: AudacityApp.cpp:1361
msgid "Do you still want to start Audacity?"
msgstr "Tem certeza de que deseja iniciar o Audacity?"
-#: AudacityApp.cpp:1093
+#: AudacityApp.cpp:1363
msgid "Error locking temporary folder"
msgstr "Erro ajustando pasta de arquivos temporários como acesso exclusivo"
-#: AudacityApp.cpp:1131
+#: AudacityApp.cpp:1401
msgid "The system has detected that another copy of Audacity is running.\n"
msgstr "O sistema detectou que outra cópia do Audacity está sendo executada.\n"
-#: AudacityApp.cpp:1133
-msgid "Use the New or Open commands in the currently running Audacity\n"
+#: AudacityApp.cpp:1403
+msgid ""
+"Use the New or Open commands in the currently running Audacity\n"
"process to open multiple projects simultaneously.\n"
-msgstr "Use o comando Novo ou Abrir na janela existente do Audacity\n"
+msgstr ""
+"Use o comando Novo ou Abrir na janela existente do Audacity\n"
"para abrir outros arquivos de projeto simultaneamente.\n"
-#: AudacityApp.cpp:1134
+#: AudacityApp.cpp:1404
msgid "Audacity is already running"
msgstr "O Audacity já está aberto"
-#: AudacityApp.cpp:1151
+#: AudacityApp.cpp:1421
msgid "Command-line options supported:"
msgstr "Opções de linha de comando disponÃveis:"
#. i18n-hint: '-help' is the option and needs to stay in
#. * English. This displays a list of available options
-#: AudacityApp.cpp:1154
+#: AudacityApp.cpp:1424
msgid "\t-help (this message)"
msgstr "\t-help (exibe esta mensagem)"
#. i18n-hint '-version' needs to stay in English.
-#: AudacityApp.cpp:1156
+#: AudacityApp.cpp:1426
msgid "\t-version (display Audacity version)"
msgstr "\t-version (exibe a versão instalada do Audacity)"
#. i18n-hint '-test' is the option and needs to stay in
#. * English. This runs a set of automatic tests on audacity
#. * itself
-#: AudacityApp.cpp:1160
+#: AudacityApp.cpp:1430
msgid "\t-test (run self diagnostics)"
msgstr "\t-test (executa os testes de diagnóstico)"
@@ -346,67 +370,92 @@ msgstr "\t-test (executa os testes de diagnóstico)"
#. * English. 'nnn' is any integer number. This controls the
#. * size pieces that audacity uses when writing files to the
#. * disk
-#: AudacityApp.cpp:1165
+#: AudacityApp.cpp:1435
msgid "\t-blocksize nnn (set max disk block size in bytes)"
msgstr "\t-blocksize nnn (ajusta o tamanho máximo das unidades de alocação do disco rÃgido)"
-#: AudacityApp.cpp:1166
+#: AudacityApp.cpp:1436
msgid "In addition, specify the name of an audio file or Audacity project to open it."
msgstr "Especifique o nome do arquivo ou projeto que deverá ser aberto pelo Audacity"
-#: AudacityApp.cpp:1443
-msgid "Audacity project (.AUP) files are not currently \n"
+#: AudacityApp.cpp:1747
+msgid ""
+"Audacity project (.AUP) files are not currently \n"
"associated with Audacity. \n"
"\n"
"Associate them, so they open on double-click?"
-msgstr "Os arquivos de projeto do Audacity (.AUP) \n"
+msgstr ""
+"Os arquivos de projeto do Audacity (.AUP) \n"
"não estão associados ao programa. \n"
"\n"
"Deseja associá-los ao Audacity, permitindo que\n"
"sejam abertos com um clique-duplo?"
-#: AudacityApp.cpp:1444
+#: AudacityApp.cpp:1748
msgid "Audacity Project Files"
msgstr "Arquivos de Projeto do Audacity"
-#: AudioIO.cpp:241
+#: AudioIO.cpp:261
msgid "Could not find any audio devices.\n"
msgstr "Não foi possÃvel localizar um dispositivo de áudio.\n"
-#: AudioIO.cpp:242
-msgid "You will not be able to play or record audio.\n"
+#: AudioIO.cpp:262
+msgid ""
+"You will not be able to play or record audio.\n"
"\n"
-msgstr "Não será possÃvel ler ou gravar áudio\n"
+msgstr ""
+"Não será possÃvel ler ou gravar áudio\n"
"\n"
-#: AudioIO.cpp:245
+#: AudioIO.cpp:265
+#: AudioIO.cpp:285
msgid "Error: "
msgstr "Erro:"
-#: AudioIO.cpp:248
+#: AudioIO.cpp:268
msgid "Error Initializing Audio"
msgstr "Erro inicializando áudio"
-#: AudioIO.cpp:1208
-msgid "Latency problem"
-msgstr "Problemas de latência"
+#: AudioIO.cpp:281
+msgid "There was an error initializing the midi i/o layer.\n"
+msgstr "Houve um erro ao inicializar a E/S de Midi.\n"
-#: AudioIO.cpp:1208
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
+#: AudioIO.cpp:282
+msgid ""
+"You will not be able to play midi.\n"
+"\n"
+msgstr ""
+"Não será possÃvel reproduzir Midi\n"
+"\n"
+
+#: AudioIO.cpp:288
+msgid "Error Initializing Midi"
+msgstr "Erro inicializando Midi"
+
+#: AudioIO.cpp:1300
+msgid ""
+"Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
"Audacity has brought it back to start at zero.\n"
"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
-msgstr "A latência atual fez com que o áudio fosse colocado antes da posição zero inicial.\n"
+msgstr ""
+"A latência atual fez com que o áudio fosse colocado antes da posição zero inicial.\n"
"O Audacity ajustou o áudio de volta à posição zero inicial.\n"
"Pode ser necessário usar a ferramenta Deslizar para arrastar a faixa de áudio para o local adequado."
+#: AudioIO.cpp:1301
+msgid "Latency problem"
+msgstr "Problemas de latência"
+
#: AutoRecovery.cpp:54
msgid "Automatic Crash Recovery"
msgstr "Recuperação automática de falhas"
#: AutoRecovery.cpp:73
-msgid "Some projects were not saved properly the last time Audacity was run.\n"
+msgid ""
+"Some projects were not saved properly the last time Audacity was run.\n"
"Fortunately, the following projects can automatically be recovered:"
-msgstr "Alguns arquivos de projeto não foram salvos corretamente desde a última execução do Audacity.\n"
+msgstr ""
+"Alguns arquivos de projeto não foram salvos corretamente desde a última execução do Audacity.\n"
"Os seguintes arquivos puderam ser recuperados automaticamente:"
#: AutoRecovery.cpp:75
@@ -414,7 +463,6 @@ msgid "Recoverable projects"
msgstr "Projetos recuperáveis"
#: AutoRecovery.cpp:78
-#: Tags.cpp:2032
msgid "Name"
msgstr "Nome"
@@ -435,9 +483,11 @@ msgid "Recover Projects"
msgstr "Recuperar Projetos"
#: AutoRecovery.cpp:127
-msgid "Are you sure you don't want to recover any projects?\n"
+msgid ""
+"Are you sure you don't want to recover any projects?\n"
"They can't be recovered later."
-msgstr "Tem certeza que não deseja recuperar nenhum dos projetos?\n"
+msgstr ""
+"Tem certeza que não deseja recuperar nenhum dos projetos?\n"
"Não será possÃvel recuperá-los mais tarde."
#: AutoRecovery.cpp:128
@@ -451,92 +501,98 @@ msgstr "Não foi possÃvel enumerar os arquivos na pasta de auto-recuperação"
#: AutoRecovery.cpp:147
#: AutoRecovery.cpp:184
-#: Menus.cpp:2575
-#: Menus.cpp:4514
-#: Project.cpp:1971
-#: Project.cpp:3343
-#: Project.cpp:3422
-#: WaveTrack.cpp:556
-#: WaveTrack.cpp:575
-#: WaveTrack.cpp:1689
-#: effects/Effect.cpp:436
-#: export/ExportMP2.cpp:230
-#: prefs/DirectoriesPrefs.cpp:189
-#: prefs/KeyConfigPrefs.cpp:245
-#: toolbars/ControlToolBar.cpp:532
-#: toolbars/ControlToolBar.cpp:846
+#: Menus.cpp:3278
+#: Menus.cpp:3290
+#: Menus.cpp:5359
+#: Project.cpp:2260
+#: Project.cpp:3882
+#: Project.cpp:3968
+#: TrackPanel.cpp:6505
+#: WaveTrack.cpp:977
+#: WaveTrack.cpp:996
+#: WaveTrack.cpp:2022
+#: effects/Contrast.cpp:144
+#: effects/Contrast.cpp:154
+#: effects/Effect.cpp:546
+#: export/ExportFFmpeg.cpp:655
+#: export/ExportMP2.cpp:231
+#: prefs/DirectoriesPrefs.cpp:195
+#: prefs/KeyConfigPrefs.cpp:372
+#: toolbars/ControlToolBar.cpp:581
+#: toolbars/ControlToolBar.cpp:916
msgid "Error"
msgstr "Erro"
-#: BatchCommandDialog.cpp:56
-#: BatchCommandDialog.cpp:60
-#: BatchCommandDialog.cpp:61
+#: BatchCommandDialog.cpp:57
+#: BatchCommandDialog.cpp:62
+#: BatchCommandDialog.cpp:63
msgid "Select Command"
msgstr "Selecione Comando"
-#: BatchCommandDialog.cpp:80
-#: BatchProcessDialog.cpp:454
-#: prefs/KeyConfigPrefs.cpp:142
+#: BatchCommandDialog.cpp:82
msgid "&Command"
msgstr "&Comando"
-#: BatchCommandDialog.cpp:82
+#: BatchCommandDialog.cpp:84
msgid "&Edit Parameters"
msgstr "&Editar Parâmetros"
-#: BatchCommandDialog.cpp:89
-#: BatchProcessDialog.cpp:455
+#: BatchCommandDialog.cpp:91
msgid "&Parameters"
msgstr "&Parâmetros"
-#: BatchCommandDialog.cpp:94
+#: BatchCommandDialog.cpp:96
msgid "C&hoose command"
msgstr "Escol&ha comando"
-#: BatchCommands.cpp:477
+#: BatchCommands.cpp:455
msgid "Stereo to Mono Effect not found"
msgstr "Efeito Estéreo para Mono não encontrado"
-#: BatchCommands.cpp:497
+#: BatchCommands.cpp:475
msgid "Ogg Vorbis support is not included in this build of Audacity"
msgstr "Suporte a Ogg Vorbis não é parte desta versão do Audacity"
-#: BatchCommands.cpp:509
+#: BatchCommands.cpp:487
msgid "FLAC support is not included in this build of Audacity"
msgstr "Suporte a FLAC não é parte desta versão do Audacity"
-#: BatchCommands.cpp:513
+#: BatchCommands.cpp:491
#, c-format
msgid "Command %s not implemented yet"
msgstr "Comando %s ainda não implementado"
-#: BatchCommands.cpp:529
+#: BatchCommands.cpp:507
#, c-format
-msgid "Could not set parameters of effect %s\n"
+msgid ""
+"Could not set parameters of effect %s\n"
" to %s."
-msgstr "Não foi possÃvel ajustar os parâmetros do efeito %s\n"
+msgstr ""
+"Não foi possÃvel ajustar os parâmetros do efeito %s\n"
" para %s."
-#: BatchCommands.cpp:583
+#: BatchCommands.cpp:560
#, c-format
msgid "Your batch command of %s was not recognised."
msgstr "Seu arquivo de lote de %s não foi reconhecido."
-#: BatchCommands.cpp:674
+#: BatchCommands.cpp:651
#, c-format
-msgid "Apply %s with parameter(s)\n"
+msgid ""
+"Apply %s with parameter(s)\n"
"\n"
"%s"
-msgstr "Aplicar %s com os parâmetro(s)\n"
+msgstr ""
+"Aplicar %s com os parâmetro(s)\n"
"\n"
"%s"
-#: BatchCommands.cpp:675
-#: BatchCommands.cpp:680
+#: BatchCommands.cpp:652
+#: BatchCommands.cpp:657
msgid "Test Mode"
msgstr "Modo de teste"
-#: BatchCommands.cpp:679
+#: BatchCommands.cpp:656
#, c-format
msgid "Apply %s"
msgstr "Aplicar %s"
@@ -549,7 +605,7 @@ msgstr "Aplicar arquivo de lote"
#: BatchProcessDialog.cpp:67
msgid "CleanSpeech Batch Processing"
-msgstr ""
+msgstr "Processamento em lote do ClearSpeec&h..."
#: BatchProcessDialog.cpp:94
msgid "&Select chain"
@@ -568,23 +624,17 @@ msgid "Apply to &Files..."
msgstr "Aplicar aos ar&quivos..."
#: BatchProcessDialog.cpp:108
-#: BatchProcessDialog.cpp:247
-#: Tags.cpp:2071
-#: Tags.cpp:2075
-#: Tags.cpp:2375
-#: Tags.cpp:2379
+#: BatchProcessDialog.cpp:245
#: UploadDialog.cpp:180
#: effects/AvcCompressor.cpp:732
#: effects/ChangeLength.cpp:183
#: effects/SpikeCleaner.cpp:188
-#: effects/VST/VSTEffect.cpp:446
-#: effects/audiounits/AudioUnitEffect.cpp:882
-#: effects/vamp/VampEffect.cpp:411
+#: effects/audiounits/AudioUnitEffect.cpp:861
msgid "&Cancel"
msgstr "&Cancelar"
#: BatchProcessDialog.cpp:146
-#: BatchProcessDialog.cpp:191
+#: BatchProcessDialog.cpp:189
msgid "No chain selected"
msgstr "Nenhum arquivo de lote selecionado"
@@ -593,122 +643,127 @@ msgstr "Nenhum arquivo de lote selecionado"
msgid "Applying '%s' to current project"
msgstr "Aplicando '%s' no projeto atual"
-#: BatchProcessDialog.cpp:200
+#: BatchProcessDialog.cpp:198
msgid "Please save and close the current project first."
msgstr "Por favor, salve e encerre o projeto atual primeiro."
-#: BatchProcessDialog.cpp:206
+#: BatchProcessDialog.cpp:204
msgid "Select vocal file(s) for batch CleanSpeech Chain..."
-msgstr ""
+msgstr "Selecione os arquivos para processamento em lote do ClearSpeech..."
-#: BatchProcessDialog.cpp:207
+#: BatchProcessDialog.cpp:205
msgid "Select file(s) for batch processing..."
msgstr "Selecione os arquivos para processamento em lote..."
-#: BatchProcessDialog.cpp:209
+#: BatchProcessDialog.cpp:207
msgid "Vocal files (*.wav;*.mp3)|*.wav;*.mp3|WAV files (*.wav)|*.wav|MP3 files (*.mp3)|*.mp3"
-msgstr ""
+msgstr "Arquivos de Vocais (*.wav;*.mp3)|*.wav;*.mp3|Arquivs WAV (*.wav)|*.wav|Arquivos MP3 (*.mp3)|*.mp3"
-#: BatchProcessDialog.cpp:210
+#: BatchProcessDialog.cpp:208
msgid "All files (*.*)|*.*|WAV files (*.wav)|*.wav|AIFF files (*.aif)|*.aif|AU files (*.au)|*.au|MP3 files (*.mp3)|*.mp3|Ogg Vorbis files (*.ogg)|*.ogg|FLAC files (*.flac)|*.flac"
msgstr "Todos os arquivos (*.*)|*.*|Arquivos WAV (*.wav)|*.wav|Arquivos AIFF (*.aif)|*.aif|Arquivos AU (*.au)|*.au|Arquivos MP3 (*.mp3)|*.mp3|Arquivos Ogg Vorbis (*.ogg)|*.ogg|Arquivos FLAC (*.flac)|*.flac"
-#: BatchProcessDialog.cpp:231
+#: BatchProcessDialog.cpp:229
msgid "Applying..."
msgstr "Aplicando..."
-#: BatchProcessDialog.cpp:241
+#: BatchProcessDialog.cpp:239
msgid "File"
msgstr "Arquivo"
+#: BatchProcessDialog.cpp:352
#: BatchProcessDialog.cpp:356
-#: BatchProcessDialog.cpp:360
-#: BatchProcessDialog.cpp:361
+#: BatchProcessDialog.cpp:357
msgid "Edit Chains"
msgstr "Editar arquivos de lote"
-#: BatchProcessDialog.cpp:416
+#: BatchProcessDialog.cpp:412
msgid "&Chains"
msgstr "Arquivos de &lote"
-#: BatchProcessDialog.cpp:435
-#: Tags.cpp:815
-#: Tags.cpp:1455
-#: Tags.cpp:2055
+#: BatchProcessDialog.cpp:431
+#: Tags.cpp:825
msgid "&Add"
msgstr "&Adicionar"
-#: BatchProcessDialog.cpp:436
-#: LabelDialog.cpp:126
-#: Tags.cpp:816
-#: Tags.cpp:1456
-#: Tags.cpp:2056
-#: TrackPanel.cpp:4201
+#: BatchProcessDialog.cpp:432
+#: LabelDialog.cpp:128
+#: Tags.cpp:826
msgid "&Remove"
msgstr "&Remover"
-#: BatchProcessDialog.cpp:437
+#: BatchProcessDialog.cpp:433
msgid "Re&name"
msgstr "Re&nomear"
# chain - arquivos de lote
-#: BatchProcessDialog.cpp:443
+#: BatchProcessDialog.cpp:439
msgid "C&hain (Double-Click or press SPACE to edit)"
msgstr "Arquivos de &lote (Clique duplo ou pressione Espaço para editar)"
-# abreviação de numero!!
#. i18n-hint: This is the number of the command in the list
-#: BatchProcessDialog.cpp:453
-msgid "No"
+#: BatchProcessDialog.cpp:449
+msgid "Num"
msgstr "Num"
-#: BatchProcessDialog.cpp:459
+#: BatchProcessDialog.cpp:450
+#: commands/CommandManager.cpp:108
+#: prefs/KeyConfigPrefs.cpp:180
+msgid "Command"
+msgstr "Comando"
+
+#: BatchProcessDialog.cpp:451
+#: effects/Contrast.cpp:279
+msgid "Parameters"
+msgstr "Parâmetros"
+
+#: BatchProcessDialog.cpp:455
msgid "&Insert"
msgstr "&Inserir"
-#: BatchProcessDialog.cpp:460
+#: BatchProcessDialog.cpp:456
msgid "De&lete"
msgstr "Apa&gar"
-#: BatchProcessDialog.cpp:461
+#: BatchProcessDialog.cpp:457
msgid "Move &Up"
msgstr "Mover &acima"
-#: BatchProcessDialog.cpp:462
+#: BatchProcessDialog.cpp:458
msgid "Move &Down"
msgstr "Mover abai&xo"
-#: BatchProcessDialog.cpp:463
+#: BatchProcessDialog.cpp:459
msgid "De&faults"
msgstr "Pa&drões"
-#: BatchProcessDialog.cpp:507
+#: BatchProcessDialog.cpp:503
msgid "- END -"
msgstr "- FIM - "
-#: BatchProcessDialog.cpp:540
+#: BatchProcessDialog.cpp:536
#, c-format
msgid "%s changed"
msgstr "%s alterado"
-#: BatchProcessDialog.cpp:541
+#: BatchProcessDialog.cpp:537
msgid "Do you want to save the changes?"
msgstr "Deseja salvar alterações?"
-#: BatchProcessDialog.cpp:623
+#: BatchProcessDialog.cpp:619
msgid "Enter name of new chain"
msgstr "Digite o nome do novo arquivo de lote"
-#: BatchProcessDialog.cpp:634
+#: BatchProcessDialog.cpp:630
msgid "Name must not be blank"
msgstr "O nome não pode ficar em branco"
-#: BatchProcessDialog.cpp:643
+#: BatchProcessDialog.cpp:639
#, c-format
msgid "Names may not contain '%c' and '%c'"
msgstr "Os nomes não podem conter '%c' e '%c'"
-#: BatchProcessDialog.cpp:673
+#: BatchProcessDialog.cpp:669
#, c-format
msgid "Are you sure you want to delete %s?"
msgstr "Tem certeza de que deseja excluir %s?"
@@ -721,106 +776,112 @@ msgstr "Removendo dependências"
msgid "Copying audio data into project..."
msgstr "Copiando dados de áudio para o arquivo de projeto..."
-#: Dependencies.cpp:219
-msgid "Your project currently depends on the presence of other files.\n"
+#: Dependencies.cpp:226
+msgid ""
+"Your project currently depends on the presence of other files.\n"
"Copy audio from the following files into your project to make it self-contained?\n"
"This will need more disc space but is safer."
-msgstr "Seu projeto depende de áudio de arquivos externos.\n"
+msgstr ""
+"Seu projeto depende de áudio de arquivos externos.\n"
"Deseja copiar o áudio dos seguintes arquivos para esta pasta de projeto para torná-lo auto suficiente?\n"
"Esta ação requer mais espaço em disco, mas garante a integridade do projeto."
-#: Dependencies.cpp:266
+#: Dependencies.cpp:273
msgid "Project depends on other audio files"
msgstr "Dependência de arquivos externos"
-#: Dependencies.cpp:287
+#: Dependencies.cpp:294
msgid "Project Dependencies"
msgstr "Dependências de projeto"
-#: Dependencies.cpp:290
+#: Dependencies.cpp:297
msgid "Audio file"
msgstr "Arquivo de áudio"
-#: Dependencies.cpp:292
+#: Dependencies.cpp:299
msgid "Disk space"
msgstr "Espaço em disco"
-#: Dependencies.cpp:297
+#: Dependencies.cpp:304
msgid "Copy Selected Audio Into Project"
msgstr "Copiar áudio selecionado para o projeto"
-#: Dependencies.cpp:304
-#: Dependencies.cpp:410
+#: Dependencies.cpp:311
+#: Dependencies.cpp:417
msgid "Cancel Save"
msgstr "Cancelar operação"
-#: Dependencies.cpp:306
+#: Dependencies.cpp:313
msgid "Do Not Copy Any Audio"
msgstr "Não copiar áudio"
-#: Dependencies.cpp:308
+#: Dependencies.cpp:315
msgid "Copy All Audio into Project (Safer)"
msgstr "Copiar todo o áudio para o projeto (Seguro)"
-#: Dependencies.cpp:317
-#: Dependencies.cpp:322
+#: Dependencies.cpp:324
+#: Dependencies.cpp:329
msgid "Ask me"
msgstr "Perguntar"
-#: Dependencies.cpp:318
+#: Dependencies.cpp:325
msgid "Always copy all audio (safest)"
msgstr "Sempre copiar todo o áudio disponÃvel (Mais seguro)"
-#: Dependencies.cpp:319
+#: Dependencies.cpp:326
msgid "Never copy any audio"
msgstr "Nunca copiar áudio disponÃvel"
-#: Dependencies.cpp:321
+#: Dependencies.cpp:328
msgid "Whenever a project depends on other files:"
msgstr "Quando um projeto depender de outros arquivos:"
-#: Dependencies.cpp:409
+#: Dependencies.cpp:416
msgid "If you proceed, your project will not be saved to disk. Is this what you want?"
msgstr "Ao prosseguir, seu projeto não será salvo em disco. Tem certeza de que deseja continuar?"
-#: Dependencies.cpp:449
+#: Dependencies.cpp:456
msgid "Your project is self-contained; it does not depend on any external audio files."
msgstr "Seu projeto é auto-suficiente, não dependendo de áudio de arquivos externos."
# ou é Checar dependencias?
-#: Dependencies.cpp:450
+#: Dependencies.cpp:457
msgid "Dependency check"
msgstr "Verificar dependências"
#: DirManager.cpp:136
-msgid "Warning: there is very little free disk space left on this volume.\n"
-"Please select another temporary directory in your preferences."
-msgstr "Aviso: Há pouco espaço disponÃvel nesta unidade. \n"
+msgid ""
+"There is very little free disk space left on this volume.\n"
+"Please select another temporary directory in Preferences."
+msgstr ""
+"Aviso: Há pouco espaço disponÃvel nesta unidade. \n"
"Selecione outra pasta em outra unidade para os arquivos temporários."
#: DirManager.cpp:221
-#: DirManager.cpp:251
-#: DirManager.cpp:332
+#: DirManager.cpp:252
+#: DirManager.cpp:335
msgid "Progress"
msgstr "Progresso"
-#: DirManager.cpp:285
+#: DirManager.cpp:286
msgid "Cleaning up temporary files"
msgstr "Removendo arquivos temporários"
-#: DirManager.cpp:333
+#: DirManager.cpp:336
msgid "Saving project data files"
msgstr "Salvando dados de projeto"
-#: DirManager.cpp:406
+#: DirManager.cpp:408
msgid "Cleaning up cache directories"
msgstr "Removendo diretórios temporários"
-#: DirManager.cpp:493
+#: DirManager.cpp:503
#, c-format
-msgid "Audacity found an orphaned blockfile %s! \n"
+msgid ""
+"Audacity found an orphaned blockfile %s! \n"
"Please consider saving and reloading the project to perform a complete project check.\n"
-msgstr "O Audacity encontrou um arquivo sem procedência %s! \n"
+msgstr ""
+"O Audacity encontrou um arquivo sem procedência %s! \n"
"Por favor, encerre e abra novamente o projeto para uma verificação completa dos arquivos.\n"
# i18n-hint: This is the pattern for filenames that are created
@@ -829,157 +890,168 @@ msgstr "O Audacity encontrou um arquivo sem procedência %s! \n"
#. i18n-hint: This is the pattern for filenames that are created
#. when a file needs to be backed up to a different name. For
#. example, mysong would become mysong-old1, mysong-old2, etc.
-#: DirManager.cpp:985
+#: DirManager.cpp:1092
#, c-format
msgid "%s-old%d"
msgstr "%s-copia%d"
-#: DirManager.cpp:993
+#: DirManager.cpp:1100
msgid "Unable to open/create test file"
msgstr "Não foi possÃvel criar ou abrir o arquivo de teste"
-#: DirManager.cpp:1002
+#: DirManager.cpp:1109
#, c-format
msgid "Unable to remove '%s'"
msgstr "Não foi possÃvel remover '%s'"
-#: DirManager.cpp:1007
+#: DirManager.cpp:1114
#, c-format
msgid "Renamed file: %s\n"
msgstr "Arquivo renomeado: %s\n"
-#: DirManager.cpp:1051
+#: DirManager.cpp:1164
#, c-format
msgid "Unable to rename '%s' to '%s'"
msgstr "Não foi possÃvel renomear '%s' para '%s'"
-#: DirManager.cpp:1183
+#: DirManager.cpp:1181
#, c-format
msgid "Changed block %s to new alias name\n"
-msgstr ""
+msgstr "Alterado o bloco %s para o novo nome\n"
-#: DirManager.cpp:1115
-#: DirManager.cpp:1403
+#: DirManager.cpp:1247
+#: DirManager.cpp:1538
msgid "Inspecting project file data..."
msgstr "Inspecionando os dados do projeto..."
# orphaned sem procedencia
-#: DirManager.cpp:1128
+#: DirManager.cpp:1263
#, c-format
msgid "Orphaned blockfile: (%s)"
msgstr "Arquivo sem procedência: (%s)"
-#: DirManager.cpp:1153
+#: DirManager.cpp:1288
#, c-format
msgid "Missing alias file: (%s)"
msgstr "Atalho não encontrado: (%s)"
-#: DirManager.cpp:1173
+#: DirManager.cpp:1308
#, c-format
msgid "Missing summary file: (%s.auf)"
msgstr "Arquivo de sumário não encontrado: (%s.auf)"
-#: DirManager.cpp:1193
+#: DirManager.cpp:1328
#, c-format
msgid "Missing data file: (%s.au)"
msgstr "Arquivo não encontrado: (%s.au)"
-#: DirManager.cpp:1207
-msgid "Project check found inconsistencies inspecting the loaded project data;\n"
+#: DirManager.cpp:1342
+msgid ""
+"Project check found inconsistencies inspecting the loaded project data;\n"
"click 'Details' for a complete list of errors, or 'OK' to proceed to more options."
-msgstr "A Verificação Automática de Projeto encontrou problemas ao inspecionar os dados salvos;\n"
+msgstr ""
+"A Verificação Automática de Projeto encontrou problemas ao inspecionar os dados salvos;\n"
"clique em 'Detalhes' para a lista completa dos erros ou 'OK' para mais opções."
-#: DirManager.cpp:1219
+#: DirManager.cpp:1354
#, c-format
-msgid "Project check found %d orphaned blockfile[s]. These files are\n"
+msgid ""
+"Project check found %d orphaned blockfile[s]. These files are\n"
"unused and probably left over from a crash or some other bug.\n"
"They should be deleted to avoid disk contention."
-msgstr "A Verificação Automática de Projeto encontrou %d arquivos sem procedência.\n"
+msgstr ""
+"A Verificação Automática de Projeto encontrou %d arquivos sem procedência.\n"
"Estes arquivos não tem uso e provavelmente restaram de uma falha anterior\n"
"no sistema.\n"
"Estes arquivos devem ser apagados para liberar espaço em disco."
-#: DirManager.cpp:1224
+#: DirManager.cpp:1359
msgid "Delete orphaned files [safe and recommended]"
msgstr "Apagar arquivos sem procedência (Seguro e recomendável)"
-#: DirManager.cpp:1225
+#: DirManager.cpp:1360
msgid "Continue without deleting; silently work around the extra files"
msgstr "Continuar sem apagar, lidando com os arquivos sem aviso"
-#: DirManager.cpp:1226
+#: DirManager.cpp:1361
msgid "Close project immediately with no changes"
msgstr "Fechar projeto sem alterações"
-#: DirManager.cpp:1228
-#: DirManager.cpp:1263
-#: DirManager.cpp:1309
-#: DirManager.cpp:1351
-#: export/Export.cpp:490
-#: export/Export.cpp:507
-#: export/Export.cpp:526
-#: widgets/Warning.cpp:55
+#: DirManager.cpp:1363
+#: DirManager.cpp:1398
+#: DirManager.cpp:1444
+#: DirManager.cpp:1486
+#: export/Export.cpp:581
+#: export/Export.cpp:602
+#: export/Export.cpp:621
+#: widgets/Warning.cpp:53
msgid "Warning"
msgstr "Aviso"
-#: DirManager.cpp:1254
+#: DirManager.cpp:1389
#, c-format
-msgid "Project check detected %d input file[s] being used in place\n"
+msgid ""
+"Project check detected %d input file[s] being used in place\n"
"('alias files') are now missing. There is no way for Audacity\n"
"to recover these files automatically; you may choose to\n"
"permanently fill in silence for the missing files, temporarily\n"
"fill in silence for this session only, or close the project now\n"
"and try to restore the missing files by hand."
-msgstr "A Verificação Automática de Projetos detectou que\n"
+msgstr ""
+"A Verificação Automática de Projetos detectou que\n"
"%d arquivos não estão mais acessÃveis. à impossÃvel \n"
-"recuperá-los automaticamente. Você pode inserir silêncios nas posições ocupadas por \n"
+"recuperá-los automaticamente. \n"
+"Você pode inserir silêncios nas posições ocupadas por \n"
"estes arquivos permanentemente ou apenas para \n"
"esta sessão, ou ainda fechar o projeto e tentar \n"
"localizar manualmente os arquivos faltantes."
-#: DirManager.cpp:1259
+#: DirManager.cpp:1394
msgid "Replace missing data with silence [permanent upon save]"
msgstr "Substituir os arquivos não encontrados por silêncio (permanente após salvar o projeto)"
-#: DirManager.cpp:1260
-#: DirManager.cpp:1348
+#: DirManager.cpp:1395
+#: DirManager.cpp:1483
msgid "Temporarily replace missing data with silence [this session only]"
msgstr "Temporariamente substituir os arquivos não encontrados por silêncio (apeans para esta sessão)"
-#: DirManager.cpp:1261
-#: DirManager.cpp:1307
-#: DirManager.cpp:1349
+#: DirManager.cpp:1396
+#: DirManager.cpp:1442
+#: DirManager.cpp:1484
msgid "Close project immediately with no further changes"
msgstr "Fechar projeto sem alterações"
-#: DirManager.cpp:1300
+#: DirManager.cpp:1435
#, c-format
-msgid "Project check detected %d missing summary file[s] (.auf).\n"
+msgid ""
+"Project check detected %d missing summary file[s] (.auf).\n"
"Audacity can fully regenerate these summary files from the\n"
"original audio data in the project."
-msgstr "Foi detectada a falta de %d arquivo(s) de sumário (.auf).\n"
+msgstr ""
+"Foi detectada a falta de %d arquivo(s) de sumário (.auf).\n"
"O Audacity pode recuperá-los automaticamente a partir\n"
"dos arquivos de áudio originais."
-#: DirManager.cpp:1305
+#: DirManager.cpp:1440
msgid "Regenerate summary files [safe and recommended]"
msgstr "Recuperar arquivos de sumário (seguro e recomendado)"
-#: DirManager.cpp:1306
+#: DirManager.cpp:1441
msgid "Fill in silence for missing display data [this session only]"
msgstr "Preencher dados não encontrados com silêncio (apenas para esta sessão)"
-#: DirManager.cpp:1342
+#: DirManager.cpp:1477
#, c-format
-msgid "Project check detected %d missing audio data blockfile[s] (.au), \n"
+msgid ""
+"Project check detected %d missing audio data blockfile[s] (.au), \n"
"probably due to a bug, system crash or accidental deletion.\n"
"There is no way for Audacity to recover this lost data\n"
"automatically; you may choose to permanently fill in silence\n"
"for the missing data, temporarily fill in silence for this\n"
"session only, or close the project now and try to restore the\n"
"missing data by hand."
-msgstr "A Verificação Automática de Projetos detectou que %d arquivos\n"
+msgstr ""
+"A Verificação Automática de Projetos detectou que %d arquivos\n"
"de áudio não estão mais acessÃveis. \n"
"Ã impossÃvel recuperar estes arquivos automaticamente. \n"
"Você pode inserir silêncios nas posições ocupadas por estes \n"
@@ -987,28 +1059,28 @@ msgstr "A Verificação Automática de Projetos detectou que %d arquivos\n"
"ou ainda fechar o projeto e tentar localizar manualmente\n"
"os arquivos faltantes."
-#: DirManager.cpp:1347
+#: DirManager.cpp:1482
msgid "Replace missing data with silence [permanent immediately]"
msgstr "Substituir os arquivos não encontrados por silêncio (permanentemente)"
-#: DirManager.cpp:1375
+#: DirManager.cpp:1510
msgid "Cleaning up unused directories in project data..."
msgstr "Limpando pastas não utilizadas nos arquivos de projeto..."
# caching - armazenar na memoria cache?
-#: DirManager.cpp:1448
+#: DirManager.cpp:1587
msgid "Caching audio"
msgstr "Armazenando audio"
-#: DirManager.cpp:1449
+#: DirManager.cpp:1588
msgid "Caching audio into memory..."
msgstr "Armazenando áudio na memória temporária..."
-#: DirManager.cpp:1486
+#: DirManager.cpp:1623
msgid "Saving recorded audio"
msgstr "Salvando áudio gravado"
-#: DirManager.cpp:1487
+#: DirManager.cpp:1624
msgid "Saving recorded audio to disk..."
msgstr "Salvando áudio gravado em disco ..."
@@ -1016,242 +1088,311 @@ msgstr "Salvando áudio gravado em disco ..."
msgid "Rectangular"
msgstr "Retangular"
-#: FFmpeg.cpp:36
+#: FFmpeg.cpp:38
msgid "FFmpeg support not compiled in"
-msgstr ""
+msgstr "Suporte a FFmpeg não compilado "
-#: FFmpeg.cpp:101
-msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
+#: FFmpeg.cpp:103
+msgid ""
+"FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
+"O FFmpeg foi configurado corretamente da última vez,\n"
+"mas o Audacity não conseguiu carregá-lo ao iniciar agora.\n"
+"\n"
+"Você deve retornar ao menu Preferências > Importar/Exportar\n"
+"para reconfigurá-lo. "
-#: FFmpeg.cpp:104
+#: FFmpeg.cpp:106
msgid "FFmpeg startup failed"
-msgstr ""
+msgstr "Falha ao iniciar FFmpeg"
-#: FFmpeg.cpp:115
+#: FFmpeg.cpp:114
msgid "FFmpeg library not found"
-msgstr ""
+msgstr "Biblioteca FFmpeg não encontrada"
-#: FFmpeg.cpp:170
+#: FFmpeg.cpp:408
msgid "Locate FFmpeg"
-msgstr ""
+msgstr "Localizar FFmpeg"
-#: FFmpeg.cpp:190
+#: FFmpeg.cpp:428
#, c-format
msgid "Audacity needs the file %s to import and export audio via FFmpeg."
-msgstr ""
+msgstr "O Audacity precisa do arquivo %s para importar e exportar áudio via FFmpeg."
+#: FFmpeg.cpp:434
#: export/ExportMP3.cpp:562
#, c-format
msgid "Location of %s:"
msgstr "Localização de %s:"
+#: FFmpeg.cpp:443
#: export/ExportMP3.cpp:571
#, c-format
msgid "To find %s, click here -->"
msgstr "Para localizar %s, clique aqui -->"
+#: FFmpeg.cpp:449
#: export/ExportMP3.cpp:577
msgid "Browse..."
msgstr "Localizar..."
-#: FFmpeg.cpp:212
+#: FFmpeg.cpp:450
msgid "To get a free copy of FFmpeg, click here -->"
-msgstr ""
+msgstr "Para salvar uma cópia gratuita do FFmpeg, clique aqui -->"
-#: FFmpeg.cpp:215 export/ExportMP3.cpp:579
+#: FFmpeg.cpp:451
+#: export/ExportMP3.cpp:579
msgid "Download"
-msgstr ""
+msgstr "Baixar"
#. i18n-hint: It's asking for the location of a file, for
#. example, "Where is lame_enc.dll?" - you could translate
#. "Where would I find the file %s" instead if you want.
+#: FFmpeg.cpp:473
#: export/ExportMP3.cpp:601
#, c-format
msgid "Where is %s?"
msgstr "Onde se localiza o arquivo %s ?"
-#: FFmpeg.cpp:407
+#: FFmpeg.cpp:643
msgid "Failed to find compatible FFmpeg libraries"
-msgstr ""
+msgstr "ImpossÃvel achar bibliotecas FFmpeg compatÃveis"
-#: FFmpeg.h:95
+#: FFmpeg.h:97
msgid "FFmpeg not found"
-msgstr ""
+msgstr "FFmpeg não encontrado"
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid ""
+"Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
+"Audacity tentou utilizar o FFmpeg para importar um arquivo de áudio,\n"
+"mas as bibliotecas necessárias não foram encontradas.\n"
+"Para utilizar a importação via FFmpeg, vá até o menu \n"
+"Preferências->Importar/Exportar e selecione a pasta\n"
+"contendo os arquivos necessários."
-#: FFmpeg.h:109
+#: FFmpeg.h:119
msgid "Do not show this warning again"
-msgstr ""
+msgstr "Não exibir este aviso novamente"
-#: FFmpeg.h:251
+#: FFmpeg.h:264
msgid "Only avformat.dll|*avformat*.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
-msgstr ""
+msgstr "Apenas avformat.dll|*avformat*.dll|DLLs do sistema (*.dll)|*.dll|Todos os arquivos (*.*)|*"
-#: FFmpeg.h:268
+#: FFmpeg.h:297
msgid "Dynamic Libraries (*.dylib)|*.dylib|All Files (*)|*"
-msgstr ""
+msgstr "Bibliotecas dinâmicas (*.dylib)|*.dylib|Todos os arquivos (*)|*"
-#: FFmpeg.h:266
+#: FFmpeg.h:324
msgid "Only libavformat.so|libavformat.so*|Dynamically Linked Libraries (*.so*)|*.so*|All Files (*)|*"
-msgstr ""
+msgstr "Apenas libavformat.so|libavformat.so*|DLLs do sistema (*.dll)|*.dll|Todos os arquivos (*.*)|*"
-#: FreqWindow.cpp:104
+#: FreqWindow.cpp:107
msgid "Frequency Analysis"
-msgstr "Análise de freqüência"
+msgstr "Análise de frequência"
-#: FreqWindow.cpp:140
-#: TrackPanel.cpp:563
+#: FreqWindow.cpp:163
+#: TrackPanel.cpp:611
+#: prefs/TracksPrefs.cpp:58
msgid "Spectrum"
msgstr "Espectro"
-#: FreqWindow.cpp:141
+#: FreqWindow.cpp:164
msgid "Standard Autocorrelation"
msgstr "Autocorrelação padrão"
-#: FreqWindow.cpp:142
+#: FreqWindow.cpp:165
msgid "Cuberoot Autocorrelation"
msgstr "Autocorrelação de raÃz cúbica"
-#: FreqWindow.cpp:143
+#: FreqWindow.cpp:166
msgid "Enhanced Autocorrelation"
msgstr "Autocorrelação melhorada"
#. i18n-hint: This is a technical term, derived from the word
#. "spectrum". Do not translate it unless you are sure you
#. know the correct technical word in your language.
-#: FreqWindow.cpp:147
+#: FreqWindow.cpp:170
msgid "Cepstrum"
msgstr "Cepstro"
-#: FreqWindow.cpp:150 FreqWindow.cpp:154
-#, fuzzy
+#: FreqWindow.cpp:174
+#: FreqWindow.cpp:178
msgid "Algorithm"
-msgstr "Algoritmo:"
+msgstr "Algoritmo"
-#: FreqWindow.cpp:168
+#: FreqWindow.cpp:193
+#: FreqWindow.cpp:197
#: HistoryWindow.cpp:79
msgid "Size"
msgstr "Tamanho"
#. i18n-hint: This refers to a "window function", used in the
#. Frequency analyze dialog box.
-#: FreqWindow.cpp:181
+#: FreqWindow.cpp:207
msgid " window"
-msgstr " "
+msgstr " janela"
-#: FreqWindow.cpp:187 FreqWindow.cpp:191
+#: FreqWindow.cpp:211
+#: FreqWindow.cpp:215
msgid "Function"
-msgstr ""
+msgstr "Função"
-#: FreqWindow.cpp:192
+#: FreqWindow.cpp:220
msgid "Linear frequency"
-msgstr "Freqüência linear"
+msgstr "Frequência linear"
-#: FreqWindow.cpp:193
+#: FreqWindow.cpp:221
msgid "Log frequency"
-msgstr "Freqüência logarÃtmica"
+msgstr "Frequência logarÃtmica"
-#: FreqWindow.cpp:201 FreqWindow.cpp:205
+#: FreqWindow.cpp:225
+#: FreqWindow.cpp:229
msgid "Axis"
-msgstr ""
+msgstr "Eixo"
-#: FreqWindow.cpp:206
-#: LabelDialog.cpp:128
-#: Menus.cpp:204
-#: Menus.cpp:233
+#: FreqWindow.cpp:236
+#: LabelDialog.cpp:130
+#: Menus.cpp:256
msgid "&Export..."
msgstr "&Exportar..."
-#: export/ExportCL.cpp:322
+#: FreqWindow.cpp:237
+#: effects/Contrast.cpp:395
+#: export/ExportCL.cpp:358
+#: export/ExportMultiple.cpp:344
msgid "Export"
msgstr "Exportar"
-#: FreqWindow.cpp:209
-#: widgets/ErrorDialog.cpp:159
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr "&Recriar"
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr "Recriar"
+
+#: FreqWindow.cpp:244
+#: FreqWindow.cpp:245
+#: widgets/ErrorDialog.cpp:190
msgid "Close"
msgstr "Fechar"
-#: FreqWindow.cpp:272
-#: FreqWindow.cpp:402
-#: effects/AutoDuck.cpp:489
-#: effects/AutoDuck.cpp:523
-#: effects/AutoDuck.cpp:791
-#: effects/Compressor.cpp:352
+#: FreqWindow.cpp:247
+#: FreqWindow.cpp:250
+#: effects/Equalization.cpp:1300
+#: effects/Equalization.cpp:1303
+msgid "Grids"
+msgstr "Grids"
+
+#: FreqWindow.cpp:314
+#: FreqWindow.cpp:516
+#: effects/AutoDuck.cpp:503
+#: effects/AutoDuck.cpp:537
+#: effects/AutoDuck.cpp:806
#: effects/Compressor.cpp:360
-#: effects/Equalization.cpp:1109
-#: effects/Equalization.cpp:1111
-#: effects/Equalization.cpp:1119
-#: effects/Equalization.cpp:1185
-#: effects/Equalization.cpp:1394
-#: effects/Equalization.cpp:1405
-#: effects/Normalize.cpp:365
-#: widgets/Meter.cpp:380
+#: effects/Compressor.cpp:368
+#: effects/Equalization.cpp:1142
+#: effects/Equalization.cpp:1144
+#: effects/Equalization.cpp:1152
+#: effects/Equalization.cpp:1218
+#: effects/Equalization.cpp:1434
+#: effects/Equalization.cpp:1445
+#: effects/Normalize.cpp:372
+#: widgets/Meter.cpp:406
msgid "dB"
msgstr "dB"
#. i18n-hint: This is the abbreviation for "Hertz", or
#. cycles per second.
-#: FreqWindow.cpp:287
-#: FreqWindow.cpp:442
-#: effects/Equalization.cpp:1150
-#: effects/Equalization.cpp:1181
-#: import/ImportRaw.cpp:416
+#: FreqWindow.cpp:330
+#: FreqWindow.cpp:556
+#: effects/Equalization.cpp:1183
+#: effects/Equalization.cpp:1214
+#: import/ImportRaw.cpp:409
msgid "Hz"
msgstr "Hz"
-#: FreqWindow.cpp:386
+#: FreqWindow.cpp:422
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "Para desenhar o espectro, todas as faixas devem ter a mesma taxa de amostragem."
+
+#: FreqWindow.cpp:449
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "Foi selecionado áudio demais. Só os primeiros %1f segundos serão analizados."
+
+#: FreqWindow.cpp:500
msgid "Not enough data selected."
msgstr "Não há dados suficientes na seleção."
-#: FreqWindow.cpp:450
-#: effects/AutoDuck.cpp:793
+#: FreqWindow.cpp:564
+#: effects/AutoDuck.cpp:808
msgid "s"
msgstr "s"
-#: FreqWindow.cpp:779
+#: FreqWindow.cpp:898
#, c-format
msgid "Cursor: %d Hz (%s) = %d dB Peak: %d Hz (%s) = %.1f dB"
msgstr "Cursor: %d Hz (%s) = %d dB Pico: %d Hz (%s) = %.1f dB"
-#: FreqWindow.cpp:788
+#: FreqWindow.cpp:907
#, c-format
msgid "Cursor: %.4f sec (%d Hz) (%s) = %f, Peak: %.4f sec (%d Hz) (%s) = %.3f"
msgstr "Cursor: %.4f seg (%d Hz) (%s) = %f, Pico: %.4f seg (%d Hz) (%s) = %.3f"
-#: FreqWindow.cpp:1061
+#: FreqWindow.cpp:1198
msgid "spectrum.txt"
msgstr "spectrum.txt"
-#: FreqWindow.cpp:1063
+#: FreqWindow.cpp:1200
msgid "Export Spectral Data As:"
msgstr "Exportar dados espectrais como:"
-#: FreqWindow.cpp:1079
-#: LabelDialog.cpp:599
-#: Menus.cpp:2207
-#: Project.cpp:2441
-#: Project.cpp:3395
-#: prefs/KeyConfigPrefs.cpp:180
+#: FreqWindow.cpp:1216
+#: LabelDialog.cpp:603
+#: Menus.cpp:2663
+#: effects/Contrast.cpp:587
+#: prefs/KeyConfigPrefs.cpp:319
msgid "Couldn't write to file: "
msgstr "Não foi possÃvel gravar no arquivo:"
-#: FreqWindow.cpp:1084
+#: FreqWindow.cpp:1221
msgid "Frequency (Hz)\tLevel (dB)"
-msgstr "Freqüência (Hz)\tNÃvel (dB)"
+msgstr "Frequência (Hz)\tNÃvel (dB)"
-#: FreqWindow.cpp:1090
+#: FreqWindow.cpp:1227
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
-msgstr "Atraso (seg.)\tFreqüência (Hz)\tNÃvel"
+msgstr "Atraso (seg.)\tFrequência (Hz)\tNÃvel"
+
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr "GStreamer %s: %s"
+
+#: GStreamerLoader.cpp:212
+msgid ""
+"GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+"O GStreamer foi configurado corretamente da última vez,\n"
+"mas o Audacity não conseguiu carregá-lo ao iniciar agora.\n"
+"\n"
+"Você deve retornar ao menu Preferências > Bibliotecas\n"
+"para reconfigurá-lo. "
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr "Falha ao iniciar GStreamer"
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
@@ -1331,8 +1472,8 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr "<p><b>Para gravar:</b> Ajuste o dispositivo de gravação, a fonte de entrada, os nÃveis de áudio e pressione o botão vermelho <i>Gravar</i> </b>:</p><p> 1) [[inputdevice|Ajustar dispositivo de gravação]]</b> na aba <i>Dispositivos</i> no menu <i>Preferências</i> ou na <i>Barra de dispositivos</i>. As preferências de áudio permitem escolher a gravação em estéreo se necessário. <br> 2) [[inputsource|Ajustar a fonte de entrada]] para o dispositivo (por exemplo o microfone ou a entrada de linha) no menu da <i>Barra de Mixagem</i> ou na opção<i> Gravação</i> da aba <i>Dispositivos</i> no menu <i>Preferências</i>.<br> 3) [[inputlevel|Ajustar o nÃvel de entrada]] usando o controle à direita na <i>Barra de Mixagem</i>. O ajuste correto é necessário para evitar distorções ou ruÃdos na gravação.</p><p> Mais ajuda está disponÃvel online em português: <a href=\"http://audacity.sourceforge.net/help/faq\">FAQs</a> de Gravação, ou em inglês no nosso Tutorial <a href=\"http://www.audacityteam.org/manual/index.php?title=Tutorial_-_Your_First_Recording\">Your First Recording</a>, no <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">Manual</a> e na nossa Wiki em [[wiki:Recording_Tips|Dicas de gravação]] e em [[wiki:Troubleshooting_Recordings|Resolvendo problemas de gravação]]. </p><br><br>"
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
-msgstr "<p>O dispositivo de entrada é o dispositivo de som conectado ao seu computador. à escolhido a partir da lista na área \"Gravação\" na aba <i>Dispositivos do menu Preferências</i>, No Windows e Linux, o menu Preferências está na parte de baixo do menu <i>Editar</i>. No MAcintosh, no menu <i>Audacity</i>. Você também pode selecionar o dispositivo de gravação na <i>Barra de Dispositivos</i>, que pode ser habilitada no menu <i>Visualizar > Barras de Ferramentas...</i>. </p><p> Por padrão, o Audacity usa o dispositivo atual do sistema (normalmente a placa de som instalada), sendo que normalmente não é necessário configurar. No Windows, o dispositivo padrão costuma ser \"Microsoft Sound Mapper\". Ao gravar áudio de um dispositivo USB ou Firewire externo como um toca discos digital, selecione seu nome como dispositivo de gravação. </p><p> Voltar para [[record|Gravação de Ãudio]] <br></p>"
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgstr "<p>O dispositivo de entrada é o dispositivo de som conectado ao seu computador. à escolhido a partir da lista na área \"Gravação\" na aba <i>Dispositivos do menu Preferências</i>, No Windows e Linux, o menu Preferências está na parte de baixo do menu <i>Editar</i>. No Macintosh, no menu <i>Audacity</i>. Você também pode selecionar o dispositivo de gravação na <i>Barra de Dispositivos</i>, que pode ser habilitada no menu <i>Visualizar > Barras de Ferramentas...</i>. </p><p> Por padrão, o Audacity usa o dispositivo atual do sistema (normalmente a placa de som instalada), sendo que normalmente não é necessário configurar. No Windows, o dispositivo padrão costuma ser \"Microsoft Sound Mapper\". Ao gravar áudio de um dispositivo USB ou Firewire externo como um toca discos digital, selecione seu nome como dispositivo de gravação. </p><p> Voltar para [[record|Gravação de Ãudio]] <br></p>"
#: HelpText.cpp:244
msgid "<p>Select the input source (such as microphone or line-in) for your [[inputdevice|recording device]]:<br> - <b>On Windows (except Vista)</b> and <b>Linux</b>, in the dropdown selector on the right of the <i>Mixer Toolbar</i>.<br> - <b>On Windows Vista</b> and <b>Mac</b>, at Recording Device on the <i>Audio I/O tab of Preferences</i>, or in <i>Device Toolbar</i>. The source will be shown as part of the parent device (for example, <i>High Def Audio Card: Microphone</i>). If necessary, Mac users can choose the input source at Apple Audio MIDI Setup. <br><i><b>Note:</b> many USB or Firewire recording devices don't have a choice of inputs, so this step is not necessary. If in doubt, see the documentation for your device. </i></p><p> <b>Tip:</b> To <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record audio playing on the computer</a>, Windows and Linux users can choose the \"Stereo Mix\", \"Wave Out\", \"Sum\" or comparable input source. </p><p> Back to [[record|Recording Audio]] <br></p>"
@@ -1344,7 +1485,7 @@ msgstr "<p>O nÃvel de entrada deve ser ajustado corretamente. Um nÃvel muito b
#: HelpText.cpp:292
msgid "<p>The main commands for editing audio are under the <i>Edit</i> menu (such as cut, copy and paste) and the <i>Effect</i> menu (you can do things like boost the bass, change pitch or tempo, or remove noise). </p><p> Audacity applies edits to selected areas of the audio track. To select a particular area, click in the track and drag the shaded area with the mouse. If no audio is selected, Audacity selects all the audio in the project window.</p><p> When playing or recording, the Edit and Effect menus will appear greyed out, because a moving track can't be edited. Commands can sometimes be unavailable for other reasons too. For example, you can't run effects until you have audio on the screen, and you can't paste audio until you've cut or copied it to Audacity's clipboard. </p><br><br>"
-msgstr "<p> O Audacity é um editor de áudio poderoso, e é sempre bom conhecer seus recursos. Os comandos principais serão os do menu <i>Editar</i> (como Copiar e Colar), e do menu <i>Efeitos</i> (onde você pode, por exemplo, reforçar os graves, alterar o tempo ou remover ruÃdos). </p><p>O Audacity aplica os efeitos à s areas selecionadas das faixas. Você pode selecionar o trecho desejado clicando na faixa e arrastando a área sombreada. Se você não fizer uma seleção, o efeito é aplicado à todo o áudio que estiver na tela.<br><br>Dois pontos importantes ao editar:</p><p>(1) Se você estiver reproduzindo ou gravando, clique no botão Parar, ou não será possÃvel salvar ou exportar o projeto. </p><p>(2) Alguns menus podem estar desabilitados ou não acessÃveis. Isto é normal, já que alguns comandos não podem ser utilizados em determinadas operações. Por exemplo, o menu Efeitos só está disponÃvel quando há áudio disponÃvel para ser aplicado e só é possÃvel Colar após Recortar ou Copiar áudio.</p> <br><br>"
+msgstr "<p> O Audacity é um editor de áudio poderoso, e é sempre bom conhecer seus recursos. Os comandos principais serão os do menu <i>Editar</i> (como Copiar e Colar), e do menu <i>Efeitos</i> (onde você pode, por exemplo, reforçar os graves, alterar o tempo ou remover ruÃdos). </p><p>O Audacity aplica os efeitos à s áreas selecionadas das faixas. Você pode selecionar o trecho desejado clicando na faixa e arrastando a área sombreada. Se você não fizer uma seleção, o efeito é aplicado à todo o áudio que estiver na tela.<br><br>Dois pontos importantes ao editar:</p><p>(1) Se você estiver reproduzindo ou gravando, clique no botão Parar, ou não será possÃvel salvar ou exportar o projeto. </p><p>(2) Alguns menus podem estar desabilitados ou não acessÃveis. Isto é normal, já que alguns comandos não podem ser utilizados em determinadas operações. Por exemplo, o menu Efeitos só está disponÃvel quando há áudio disponÃvel para ser aplicado e só é possÃvel Colar após Recortar ou Copiar áudio.</p> <br><br>"
#: HelpText.cpp:311
msgid "<p>To return later to your unfinished work in Audacity with all tracks and edits as you left them, save an Audacity project. To play your current work in other media programs or send it to others, [[export|export]] an audio file such as WAV or MP3. </p><p> <i>File > Save Project</i> saves an <b>.aup</b> project file and a <b>_data</b> folder containing the actual audio. To re-open a saved project, click <i>File > Open</i> and open the .aup file. If you save and exit more than once, an .aup.bak backup file is created, but the .aup file should always be opened if present. When your final exported file is exactly as you want, delete the project files and _data folder to save disc space. </p><p><i>File > Save Project As...</i> is for saving an empty project. It also lets you save an existing Project to a <b> new</b> name. This is the only safe way to rename a project. The .aup file and _data folder should not be moved or renamed manually. </p><p>"
@@ -1355,8 +1496,8 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr "Quando você quer ouvir o trabalho em outro programa de áudio, deve \"Exportar\" para um arquivo WAV ou MP3 (não há suporte a [[wma-proprietary|determinados formatos]]). Para salvar como um projeto do Audacity, use <b>Arquivo > Salvar Projeto</b>. Assim, o projeto será salvo como um arquivo <b>.AUP</b> e mais uma pasta com o nome <b>_data</b> contendo todo o áudio do projeto. Assegure-se de não apagar ou renomear nenhum dos dois, ou o Audacity não irá encontrar os arquivos necessários para editar seu projeto novamente. </p><p> Use <b>Arquivo > Salvar projeto como</b> para alterar o nome de um projeto já salvo ou para salvar um projeto vazio. Para abrir novamente um projeto já salvo, clique em <b>Arquivo > Abrir</b> e selecione o arquivo .AUP. </p><p> Para exportar seu projeto em um arquivo de áudio, use <b>Arquivo > Exportar...</b> e selecione o formato desejado na janela \"Exportar como\". Clique no botão Opções para selecionar as opções avançadas, como a taxa do arquivo MP3. Há outros dois comandos de Exportar: \"Exportar seleção como\", que exporta apenas a área selecionada, e \"Exportar múltiplos\" que exporta em diferentes arquivos, para por exemplo quando você tem mais de uma faixa num mesmo projeto e deseja exportar cada faixa separadamente. Ao exportar partes de uma gravação longa, como as faixas de um cassete ou LP, veja as instruções em inglês na wiki [[wiki:Splitting recordings into separate tracks|Exportar múltiplos arquivos através dos rótulos]]. </p><p>Antes de exportar arquivos como <b>MP3</b>, você precisará instalar a biblioteca LAME MP3 em seu computador. Para ajuda em como proceder a instalação, veja a nossa página em inglês na wiki [[wiki:Lame_Installation|Instalação do Lame]]. Veja também as dicas sobre [[burncd|como gravar em um CD]] aqui nesta ajuda.</p><br><br>"
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
-msgstr "<p>O Audacity não pode [[play|reproduzir]] ou [[export|exportar]] em formatos <b>WMA, RealAudio, Shorten (SHN)</b>, ou outros formatos proprietários devido à restrições de patentes, assim como também não pode importar arquivos protegidos por DRM (Direitos de Cópia), o que inclui a maioria das músicas compradas em lojas on-line de música. </p><p>Na versão para Macintosh, é possÃvel importar áudio em formato <b>AAC</b> não protegido (como os com extensão <b>M4A</B>).</p><p>Alguns formatos não-proprietários ainda não estão disponÃveis no Audacity, como <b>Ogg Speex</b> e <b>Musepack</b>. Estes formatos serão disponibilizados em versões futuras do programa.</p><p>Se não for possÃvel importar arquivos de áudio, você pode tentar contornar esta restrição convertendo o arquivo em um formato não compactado como WAV ou AIFF. Para arquivos não protegidos, o iTunes ou o <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> player podem ajudar na conversão. No caso de arquivos protegidos por DRM, você pode tentar gravá-lo num CD de áudio e extraÃ-lo novamente do CD em formato WAV ou AIFF, utilizando o iTunes no Macintosh e Windows Media Player ou <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> no Windows.</P><p>Como alternativa, você pode reproduzir o arquivo em seu computador e <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">gravar o fluxo de áudio</a>. <i>Para exportar para um formato não suportado pelo Audacity, exporte o projeto como WAV ou AIFF e converta-o para o formato desejado utilizando o iTunes ou o <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> player.</i></p><p>"
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgstr "<p>O Audacity não pode [[play|reproduzir]] ou [[export|exportar]] em formatos <b>WMA, RealAudio, Shorten (SHN)</b>, ou outros formatos proprietários devido a restrições de patentes, assim como também não pode importar arquivos protegidos por DRM (Direitos de Cópia), o que inclui a maioria das músicas compradas em lojas on-line de música. </p><p>Na versão para Macintosh, é possÃvel importar áudio em formato <b>AAC</b> não protegido (como os com extensão <b>M4A</B>).</p><p>Alguns formatos não-proprietários ainda não estão disponÃveis no Audacity, como <b>Ogg Speex</b> e <b>Musepack</b>. Estes formatos serão disponibilizados em versões futuras do programa.</p><p>Se não for possÃvel importar arquivos de áudio, você pode tentar contornar esta restrição convertendo o arquivo em um formato não compactado como WAV ou AIFF. Para arquivos não protegidos, o iTunes ou o <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> player podem ajudar na conversão. No caso de arquivos protegidos por DRM, você pode tentar gravá-lo num CD de áudio e extraÃ-lo novamente do CD em formato WAV ou AIFF, utilizando o iTunes no Macintosh e Windows Media Player ou <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> no Windows.</P><p>Como alternativa, você pode reproduzir o arquivo em seu computador e <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">gravar o fluxo de áudio</a>. <i>Para exportar para um formato não suportado pelo Audacity, exporte o projeto como WAV ou AIFF e converta-o para o formato desejado utilizando o iTunes ou o <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> player.</i></p><p>"
#: HelpText.cpp:383
msgid "<p>To burn your work to an audio CD for standalone CD players, first [[export|export]] it as WAV or AIFF. The exported file should be stereo, 44100 Hz (set in the \"Project Rate\" button bottom left) and 16 bit (set in the \"Options\" button in the file export dialog). These are Audacity's default settings, so normally you will not need to change these before exporting. <p>Burn the exported file to an \"audio CD\" - not a \"data CD\" or \"MP3 CD\" - with a CD burning program like iTunes or Windows Media Player. For more help, see [[wiki:How_to_burn_CDs|How to burn CDs]] online. </p><p>"
@@ -1364,7 +1505,7 @@ msgstr "<p>Se você deseja gravar seu projeto em um CD de áudio, você deve pri
#: HelpText.cpp:403
msgid "<p>Help for Audacity Beta is currently unfinished. For now, a draft manual is available <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">online</a>. Alternatively, click <a href=\"http://www.audacityteam.org/manual/index.php?title=Temporary_HTML_Manual_Export\">here</a> to download a single-page version of the manual which can be viewed in this window."
-msgstr ""
+msgstr "<p>A ajuda para o Audacity Beta está incompleta. Por enquanto, um rascunho pode ser acessado <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">online</a>. Como alternativa, clique <a href=\"http://www.audacityteam.org/manual/index.php?title=Temporary_HTML_Manual_Export\">aqui</a> para baixar a versão do manual de página-única, que pode ser vista nesta janela."
#: HistoryWindow.cpp:53
msgid "Undo History"
@@ -1386,433 +1527,410 @@ msgstr "NÃveis de des&fazer disponÃveis"
msgid "Levels To Discard"
msgstr "NÃveis para apagar"
-#: HistoryWindow.cpp:102
+#: HistoryWindow.cpp:103
msgid "&Discard"
msgstr "&Apagar"
-#: HistoryWindow.cpp:111
-#: Tags.cpp:2072
-#: Tags.cpp:2074
-#: Tags.cpp:2376
-#: Tags.cpp:2378
+#: HistoryWindow.cpp:112
#: effects/ChangeLength.cpp:186
#: effects/SpikeCleaner.cpp:191
-#: effects/vamp/VampEffect.cpp:414
-#: export/ExportCL.cpp:398
+#: export/ExportCL.cpp:432
msgid "&OK"
msgstr "&OK"
-#: Internat.cpp:191
+#: Internat.cpp:143
msgid "Unable to determine"
msgstr "Não foi possÃvel determinar"
-#: Internat.cpp:195
-#: import/ImportRaw.cpp:392
+#: Internat.cpp:147
+#: import/ImportRaw.cpp:395
msgid "bytes"
msgstr "bytes"
-#: Internat.cpp:197
+#: Internat.cpp:149
msgid "KB"
msgstr "KB"
-#: Internat.cpp:200
+#: Internat.cpp:152
msgid "MB"
msgstr "MB"
-#: Internat.cpp:203
+#: Internat.cpp:155
msgid "GB"
msgstr "GB"
-#: LabelDialog.cpp:52
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr "O nome de arquivo especificado não pôde ser convertido devido ao esquema de Unicode."
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr "Especifique o nome do arquivo:"
+
+#: LabelDialog.cpp:54
msgid "Track"
msgstr "Faixa"
-#: LabelDialog.cpp:53
-#: Menus.cpp:4057
-#: Menus.cpp:4085
+#: LabelDialog.cpp:55
+#: Menus.cpp:4855
+#: Menus.cpp:4890
msgid "Label"
msgstr "TÃtulo"
-#: LabelDialog.cpp:54
+#: LabelDialog.cpp:56
+#: TimerRecordDialog.cpp:328
msgid "Start Time"
msgstr "Te&mpo inicial"
-#: LabelDialog.cpp:55
+#: LabelDialog.cpp:57
+#: TimerRecordDialog.cpp:347
msgid "End Time"
msgstr "Tempo final"
-#: LabelDialog.cpp:98
-#: Menus.cpp:627
-msgid "&Edit Labels"
-msgstr "&Editar tÃtulos"
+#: LabelDialog.cpp:100
+msgid "Edit Labels"
+msgstr "Editar tÃtulos"
-#: LabelDialog.cpp:113
+#: LabelDialog.cpp:115
msgid "Press F2 or double click to edit cell contents."
msgstr "Clique duplo ou pressione F2 para editar o conteúdo das células."
-#: LabelDialog.cpp:124
+#: LabelDialog.cpp:126
msgid "Insert &After"
msgstr "Inserir &Após"
-#: LabelDialog.cpp:125
+#: LabelDialog.cpp:127
msgid "Insert &Before"
msgstr "Inserir An&tes"
-#: LabelDialog.cpp:127
-#: Menus.cpp:194
+#: LabelDialog.cpp:129
msgid "&Import..."
msgstr "&Importar"
-#: LabelDialog.cpp:155
+#: LabelDialog.cpp:157
msgid "New..."
msgstr "Novo..."
-#: LabelDialog.cpp:352
-msgid "You have left blank label names. These will be\n"
+#: LabelDialog.cpp:354
+msgid ""
+"You have left blank label names. These will be\n"
"skipped when repopulating the Label Tracks.\n"
"\n"
"Would you like to go back and provide names?"
-msgstr "Alguns tÃtulos foram deixados em branco.\n"
+msgstr ""
+"Alguns tÃtulos foram deixados em branco.\n"
"Estes tÃtulos serão ignorados ao continuar.\n"
"\n"
"Deseja retornar e preencher os campos em branco?"
-#: LabelDialog.cpp:353
+#: LabelDialog.cpp:355
+#: LangChoice.cpp:130
msgid "Confirm"
msgstr "Confirmar"
-#: LabelDialog.cpp:514
-#: Menus.cpp:3555
+#: LabelDialog.cpp:516
+#: Menus.cpp:4273
msgid "Select a text file containing labels..."
msgstr "Selecione o arquivo de texto contendo os tÃtulos...."
-#: LabelDialog.cpp:518
-#: Menus.cpp:3559
+#: LabelDialog.cpp:520
+#: Menus.cpp:4277
msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
msgstr "Arquivos de texto (*.txt)|*.txt|Todos os arquivos (*.*)|*.*"
-#: LabelDialog.cpp:532
-#: Menus.cpp:3571
-#: Project.cpp:1831
-#: Project.cpp:1839
-#: import/ImportMIDI.cpp:31
+#: LabelDialog.cpp:534
+#: Menus.cpp:4289
+#: Project.cpp:2116
+#: Project.cpp:2124
msgid "Could not open file: "
msgstr "Não foi possÃvel abrir o arquivo:"
-#: LabelDialog.cpp:558
+#: LabelDialog.cpp:560
msgid "No labels to export."
msgstr "Não há tÃtulos para exportar."
-#: LabelDialog.cpp:564
-#: Menus.cpp:2172
+#: LabelDialog.cpp:566
+#: Menus.cpp:2626
msgid "Export Labels As:"
msgstr "Exportar tÃtulos como:"
-#: LabelDialog.cpp:566
-#: Menus.cpp:2170
+#: LabelDialog.cpp:568
+#: Menus.cpp:2624
msgid "labels.txt"
msgstr "tÃtulos.txt"
-#: LabelDialog.cpp:699
+#: LabelDialog.cpp:703
msgid "New Label Track"
msgstr "Nova faixa de &tÃtulo"
-#: LabelDialog.cpp:700
+#: LabelDialog.cpp:704
msgid "Enter track name"
msgstr "Digite o nome da faixa"
-#: LabelDialog.cpp:701
+#: LabelDialog.cpp:705
#: LabelDialog.h:52
-#: LabelTrack.cpp:89
-#: Menus.cpp:555
-msgid "&Label Track"
-msgstr "Faixa de TÃtu&lo"
+#: LabelTrack.cpp:92
+msgid "Label Track"
+msgstr "Faixa de TÃtulo"
-#: LangChoice.cpp:57
+#: LangChoice.cpp:58
msgid "Audacity First Run"
msgstr "Primeira execução do Audacity"
-#: LangChoice.cpp:84
+#: LangChoice.cpp:90
msgid "Choose Language for Audacity to use:"
msgstr "Escolha o idioma dos menus do Audacity:"
-#: Legacy.cpp:356
+#: LangChoice.cpp:125
+#, c-format
+msgid "The language you have chosen, %s (%s), is not the same as the system language, %s (%s)."
+msgstr "O idioma escolhido, %s (%s), não é o mesmo do idioma do sistema, %s (%s)."
+
+#: Legacy.cpp:372
#, c-format
-msgid "Converted a 1.0 project file to the new format.\n"
+msgid ""
+"Converted a 1.0 project file to the new format.\n"
"The old file has been saved as '%s'"
-msgstr "Foi convertido o arquivo de projeto da versão 1.0 para o novo formato.\n"
+msgstr ""
+"Foi convertido o arquivo de projeto da versão 1.0 para o novo formato.\n"
"Uma cópia foi salva como '%s'"
-#: Legacy.cpp:357
+#: Legacy.cpp:373
msgid "Opening Audacity Project"
msgstr "Lendo Projeto do Audacity"
-#: Menus.cpp:162
+#: Menus.cpp:196
msgid "&File"
msgstr "&Arquivo"
-#: Menus.cpp:164
-msgid "&New\tCtrl+N"
-msgstr "&Novo\tCtrl+N"
-
-#: Menus.cpp:166
-msgid "&Open...\tCtrl+O"
-msgstr "&Abrir...\tCtrl+O"
+#: Menus.cpp:215
+msgid "&Close"
+msgstr "&Fechar"
-#: Menus.cpp:171
-msgid "&Close\tCtrl+W"
-msgstr "&Fechar\tCtrl+W"
-
-#: Menus.cpp:174
-msgid "&Save Project\tCtrl+S"
-msgstr "&Salvar projeto\tCtrl+S"
+#: Menus.cpp:218
+msgid "&Save Project"
+msgstr "&Salvar projeto"
-#: Menus.cpp:178
-#: Project.cpp:2690
+#: Menus.cpp:221
msgid "Save Project &As..."
msgstr "Salvar &projeto como..."
-#: Menus.cpp:212
+#: Menus.cpp:223
msgid "Save Compressed Copy of Project..."
-msgstr ""
+msgstr "Salvar cópia do Projeto Comprimido"
-#: Menus.cpp:181
+#: Menus.cpp:227
msgid "Chec&k Dependencies..."
msgstr "Verificar De&pendências..."
-#: Menus.cpp:187
+#: Menus.cpp:231
msgid "Open Me&tadata Editor..."
msgstr "Abrir editor de Me&tadados..."
-#: import/ImportRaw.cpp:447
+#: Menus.cpp:239
+#: import/ImportRaw.cpp:421
msgid "&Import"
msgstr "&Importar"
-#: Menus.cpp:196
-msgid "&Audio...\tCtrl+Shift+I"
-msgstr "Ãu&dio...\tCtrl+Shift+I"
+#: Menus.cpp:241
+msgid "&Audio..."
+msgstr "Ãu&dio..."
-#: Menus.cpp:197
+#: Menus.cpp:242
msgid "&Labels..."
msgstr "&TÃtulos..."
-#: Menus.cpp:198
+#: Menus.cpp:244
msgid "&MIDI..."
msgstr "&MIDI..."
-#: Menus.cpp:199
+#: Menus.cpp:246
msgid "&Raw Data..."
msgstr "Dados sem &formatação..."
-#: Menus.cpp:210
-#: Menus.cpp:239
+#: Menus.cpp:261
msgid "Expo&rt Selection..."
msgstr "E&xportar seleção como"
-#: Menus.cpp:217
+#: Menus.cpp:269
msgid "Export &Labels..."
msgstr "Exportar tÃtulos"
-#: Menus.cpp:218
+#: Menus.cpp:272
msgid "Export &Multiple..."
msgstr "Exportar &múltiplos..."
-#: Menus.cpp:257
+#: Menus.cpp:276
msgid "Export MIDI..."
-msgstr ""
+msgstr "Exportar MIDI..."
-#: Menus.cpp:247
-msgid "CleanSpeech C&hain..."
-msgstr "Cadeias do Clean Speec&h..."
+#: Menus.cpp:282
+msgid "Appl&y Chain..."
+msgstr "Apli&car arquivo de lote..."
-#: Menus.cpp:248
-#: Menus.cpp:262
+#: Menus.cpp:285
msgid "Edit C&hains..."
msgstr "Editar arquivos de &lote..."
-#: Menus.cpp:249
+#: Menus.cpp:288
msgid "Export CleanSpeech &Presets..."
msgstr "E&xportar ajustes do CleanSpeech..."
-#: Menus.cpp:250
+#: Menus.cpp:289
msgid "I&mport CleanSpeech Presets..."
msgstr "Im&portar ajustes do CleanSpeech..."
-#: Menus.cpp:260
-msgid "Appl&y Chain..."
-msgstr "Apli&car arquivo de lote..."
-
-#: Menus.cpp:267
+#: Menus.cpp:296
msgid "&Upload File..."
msgstr "Enviar arqui&vo..."
-#: Menus.cpp:273
+#: Menus.cpp:301
msgid "Pa&ge Setup..."
msgstr "Confi&gurar página..."
-#: Menus.cpp:274
+#: Menus.cpp:304
msgid "&Print..."
msgstr "&Imprimir..."
-#: Menus.cpp:287
-msgid "E&xit\tCtrl+Q"
-msgstr "Sai&r\tCtrl+Q"
+#: Menus.cpp:313
+msgid "E&xit"
+msgstr "Sai&r"
-#: Menus.cpp:295
-#: toolbars/EditToolBar.cpp:76
+#: Menus.cpp:323
msgid "&Edit"
msgstr "&Editar"
-#: Menus.cpp:299
-msgid "&Undo\tCtrl+Z"
-msgstr "Des&fazer\tCtrl+Z"
+#: Menus.cpp:328
+msgid "&Undo"
+msgstr "Des&fazer"
-#: Menus.cpp:307
-#: prefs/KeyConfigPrefs.cpp:369
-#: toolbars/EditToolBar.cpp:146
+#: Menus.cpp:340
msgid "&Redo"
msgstr "&Refazer"
-#: Menus.cpp:320
-msgid "Cu&t\tCtrl+X"
-msgstr "Rec&ortar\tCtrl+X"
+#: Menus.cpp:346
+msgid "Cu&t"
+msgstr "Rec&ortar"
-#: Menus.cpp:324
-msgid "Spl&it Cut\tCtrl+Alt+X"
-msgstr "&Separar e Recortar\tCtrl+Alt+X"
+#: Menus.cpp:349
+msgid "Spl&it Cut"
+msgstr "&Separar e Recortar"
-#: Menus.cpp:325
-msgid "&Copy\tCtrl+C"
-msgstr "&Copiar\tCtrl+C"
+#: Menus.cpp:350
+msgid "&Copy"
+msgstr "&Copiar"
-#: Menus.cpp:329
-msgid "&Paste\tCtrl+V"
-msgstr "Co&lar\tCtrl+V"
+#: Menus.cpp:353
+msgid "&Paste"
+msgstr "Co&lar"
-#: Menus.cpp:333
-msgid "Tri&m\tCtrl+T"
-msgstr "S&ilenciar fora da Seleção\tCtrl+T"
+#: Menus.cpp:356
+msgid "Tri&m"
+msgstr "S&ilenciar fora da Seleção"
-#: Menus.cpp:335
-msgid "&Delete\tCtrl+K"
-msgstr "&Apagar\tCtrl+K"
+#: Menus.cpp:360
+#: Menus.cpp:399
+msgid "&Delete"
+msgstr "&Apagar"
-#: Menus.cpp:336
-msgid "Split D&elete\tCtrl+Alt+K"
-msgstr "S&eparar e Deletar\tCtrl+Alt+K"
+#: Menus.cpp:361
+msgid "Split D&elete"
+msgstr "S&eparar e Apagar"
-#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
-msgstr ""
+#: Menus.cpp:362
+msgid "Silence Audi&o"
+msgstr "S&ilenciar áudio"
-#: Menus.cpp:339
-msgid "Sp&lit\tCtrl+I"
-msgstr "Se¶r\tCtrl+I"
+#: Menus.cpp:366
+msgid "Sp&lit"
+msgstr "Se¶r"
-#: Menus.cpp:344
-msgid "Split Ne&w\tCtrl+Alt+I"
-msgstr "Separar e criar no&vo\tCtrl+Alt+I"
+#: Menus.cpp:370
+msgid "Split Ne&w"
+msgstr "Separar e criar no&vo"
-#: Menus.cpp:349
-msgid "&Join\tCtrl+J"
-msgstr "&Unir\tCtrl+J"
+#: Menus.cpp:374
+#: Menus.cpp:406
+msgid "&Join"
+msgstr "&Unir"
-#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
-msgstr ""
+#: Menus.cpp:375
+#: Menus.cpp:407
+msgid "Detac&h at Silences"
+msgstr "Desu&nir nos silêncios"
-#: Menus.cpp:352
-msgid "Duplic&ate\tCtrl+D"
-msgstr "&Duplicar\tCtrl+D"
+#: Menus.cpp:376
+msgid "Duplic&ate"
+msgstr "&Duplicar"
-#: Menus.cpp:400 Menus.cpp:639
+#: Menus.cpp:381
+#: Menus.cpp:617
msgid "Stereo Trac&k to Mono"
-msgstr ""
+msgstr "Faixa E&stéreo para Mono"
-#: Menus.cpp:407
+#: Menus.cpp:390
msgid "La&beled Regions"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:367
-msgid "&Cut\tAlt+X"
-msgstr "Re&cortar\tAlt+X"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:372
-msgid "&Split Cut\tShift+Alt+X"
-msgstr "Separar e Rec&ortar\tShift+Alt+X"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:377
-msgid "Co&py\tShift+Alt+C"
-msgstr "Co&piar\tShift+Alt+C"
+msgstr "Ãreas com &tÃtulos"
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:383
-msgid "&Delete\tAlt+K"
-msgstr "&Apagar\tAlt+K"
+#: Menus.cpp:393
+msgid "&Cut"
+msgstr "Re&cortar"
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:388
-msgid "Sp&lit Delete\tShift+Alt+K"
-msgstr "Separar e Apa&gar\tShift+Alt+K"
+#: Menus.cpp:394
+msgid "&Split Cut"
+msgstr "Separar e Rec&ortar"
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:393
-msgid "Sile&nce\tAlt+L"
-msgstr "Sile&nciar\tAlt+L"
+#: Menus.cpp:395
+msgid "Co&py"
+msgstr "Co&piar"
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:399
-msgid "Spli&t\tAlt+I"
-msgstr "Se¶r\tAlt+I"
+#: Menus.cpp:400
+msgid "Sp&lit Delete"
+msgstr "Separar e Apa&gar"
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:404
-msgid "&Join\tAlt+J"
-msgstr "&Unir\tAlt+J"
+#: Menus.cpp:401
+msgid "Sile&nce"
+msgstr "Sile&nciar"
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
-msgstr ""
+#: Menus.cpp:405
+msgid "Spli&t"
+msgstr "Se¶r"
-#: Menus.cpp:456
+#: Menus.cpp:413
msgid "&Select"
-msgstr ""
+msgstr "&Selecionar"
#: Menus.cpp:416
-msgid "&All\tCtrl+A"
-msgstr "Selecionar &Tudo\tCtrl+A"
+msgid "&All"
+msgstr "Selecionar &Tudo"
#: Menus.cpp:417
-msgid "&None\tCtrl+Shift+A"
-msgstr "&Nenhum\tCtrl+Shift+A"
+msgid "&None"
+msgstr "&Nenhum"
-#: Menus.cpp:421
-msgid "&Left at Playback Position\t["
-msgstr "Ã &esquerda do cursor\t["
+#: Menus.cpp:419
+msgid "&Left at Playback Position"
+msgstr "Ã &esquerda do cursor"
-#: Menus.cpp:422
-msgid "&Right at Playback Position\t]"
-msgstr "Ã &direita do cursor\t]"
+#: Menus.cpp:420
+msgid "&Right at Playback Position"
+msgstr "Ã &direita do cursor"
-#: Menus.cpp:426
-msgid "Track &Start to Cursor\tShift+J"
-msgstr "Selecionar do &inÃcio até o cursor\tShift+J"
+#: Menus.cpp:424
+msgid "Track &Start to Cursor"
+msgstr "Selecionar do &inÃcio até o cursor"
-#: Menus.cpp:427
-msgid "Cursor to Track &End\tShift+K"
-msgstr "Selecionar do cursor até o &final\tShift+K"
+#: Menus.cpp:425
+msgid "Cursor to Track &End"
+msgstr "Selecionar do cursor até o &final"
-#: Menus.cpp:433
-msgid "Find &Zero Crossings\tZ"
-msgstr "Encontrar cruzamentos em &zero\tZ"
+#: Menus.cpp:431
+msgid "Find &Zero Crossings"
+msgstr "Encontrar cruzamentos em &zero"
-#: Menus.cpp:476
+#: Menus.cpp:435
msgid "Mo&ve Cursor"
-msgstr ""
+msgstr "Mo&ver Cursor"
#: Menus.cpp:437
msgid "to Selection Star&t"
@@ -1822,1113 +1940,1137 @@ msgstr "Cursor no inÃcio da &seleção"
msgid "to Selection En&d"
msgstr "Cursor no final da s&eleção"
-#: Menus.cpp:442
-msgid "to Track &Start\tJ"
-msgstr "Cursor no inÃcio da f&aixa\tJ"
+#: Menus.cpp:440
+msgid "to Track &Start"
+msgstr "Cursor no inÃcio da f&aixa"
-#: Menus.cpp:443
-msgid "to Track &End\tK"
-msgstr "Cursor no final da fai&xa\tK"
+#: Menus.cpp:441
+msgid "to Track &End"
+msgstr "Cursor no final da fai&xa"
-#: Menus.cpp:450
+#: Menus.cpp:449
msgid "Re&gion Save"
msgstr "Salva&r seleção"
-#: Menus.cpp:451
+#: Menus.cpp:452
msgid "Regio&n Restore"
msgstr "Res&taurar seleção"
-#: Menus.cpp:503
+#: Menus.cpp:460
msgid "Pla&y Region"
-msgstr ""
+msgstr "Ãrea de reprodu&ção"
-#: Menus.cpp:463
+#: Menus.cpp:462
msgid "&Lock"
msgstr "&Travar"
-#: Menus.cpp:464
+#: Menus.cpp:465
msgid "&Unlock"
msgstr "&Destravar"
-#: Menus.cpp:470
-msgid "Turn Snap-To On"
-msgstr "Ligar antecipação"
+#: Menus.cpp:485
+msgid "Pre&ferences..."
+msgstr "&Preferências..."
-#: Menus.cpp:471
-msgid "Turn Snap-To Off"
-msgstr "Desligar antecipação"
-
-#: Menus.cpp:472
-msgid "Turn Grid Snap On"
-msgstr "Ligar rede da antecipação"
-
-#: Menus.cpp:473
-msgid "Turn Grid Snap Off"
-msgstr "Desligar rede da antecipação"
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
-#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr ""
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
-msgstr ""
-
-#: Menus.cpp:492
+#: Menus.cpp:495
msgid "&View"
msgstr "E&xibir"
-#: Menus.cpp:494
-msgid "Zoom &In\tCtrl+1"
-msgstr "&Mais zoom\tCtrl+1"
-
-#: Menus.cpp:497
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "Zoom &normal\tCtrl+2"
-
#: Menus.cpp:498
-msgid "Zoom &Out\tCtrl+3"
-msgstr "Men&os zoom\tCtrl+3"
+msgid "Zoom &In"
+msgstr "&Mais zoom"
#: Menus.cpp:501
-msgid "&Fit in Window\tCtrl+F"
-msgstr "&Ajustar à janela\tCtrl+F"
+msgid "Zoom &Normal"
+msgstr "Zoom &normal"
#: Menus.cpp:502
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "Ajustar &verticalmente\tCtrl+Shift+F"
-
-#: Menus.cpp:503
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "&Zoom na seleção\tCtrl+E"
+msgid "Zoom &Out"
+msgstr "Men&os zoom"
#: Menus.cpp:506
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
-msgstr "&Recolher todas as faixas\tCtrl+Shift+C"
+msgid "&Fit in Window"
+msgstr "&Ajustar à janela"
#: Menus.cpp:507
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
-msgstr "&Expandir todas as faixas\tCtrl+Shift+X"
+msgid "Fit &Vertically"
+msgstr "Ajustar &verticalmente"
+
+#: Menus.cpp:508
+msgid "&Zoom to Selection"
+msgstr "&Zoom na seleção"
+
+#: Menus.cpp:512
+msgid "&Collapse All Tracks"
+msgstr "&Recolher todas as faixas"
-#: Menus.cpp:510
+#: Menus.cpp:513
+msgid "E&xpand All Tracks"
+msgstr "&Expandir todas as faixas"
+
+#: Menus.cpp:517
msgid "&Show Clipping"
msgstr "E&xibir Clipping"
-#: Menus.cpp:519
+#: Menus.cpp:522
msgid "&History..."
msgstr "&Histórico..."
-#: Menus.cpp:566
+#: Menus.cpp:530
msgid "&Toolbars"
-msgstr ""
+msgstr "&Barras de Ferramentas"
-#: Menus.cpp:526
+#: Menus.cpp:532
msgid "&Control Toolbar"
msgstr "Barra de &Controle"
-#: Menus.cpp:527
+#: Menus.cpp:533
msgid "&Device Toolbar"
msgstr "Barra de &Dispositivos"
-#: Menus.cpp:528
+#: Menus.cpp:534
msgid "&Edit Toolbar"
msgstr "Barra de &Edição"
-#: Menus.cpp:529
+#: Menus.cpp:535
msgid "&Meter Toolbar"
msgstr "Barra de &Medição"
-#: Menus.cpp:530
+#: Menus.cpp:536
msgid "Mi&xer Toolbar"
msgstr "Barra de Mi&xagem"
-#: Menus.cpp:531
+#: Menus.cpp:537
msgid "&Selection Toolbar"
msgstr "Barra de &Seleção"
-#: Menus.cpp:532
+#: Menus.cpp:538
msgid "T&ools Toolbar"
msgstr "Barra de &Ferramentas"
-#: Menus.cpp:533
+#: Menus.cpp:539
msgid "Transcri&ption Toolbar"
msgstr "Barra de Tra&nscrição"
-#: Menus.cpp:535
+#: Menus.cpp:543
msgid "&Reset Toolbars"
msgstr "&Reiniciar barras de ferramentas"
-#: Menus.cpp:537
+#: Menus.cpp:551
msgid "!Simplified View"
msgstr "!Visualização simples"
+# nao tenho certeza desta tradução. CT
#. i18n-hint: 'Transport' is the name given to the set of controls that
#. play, record, pause etc.
-#: Menus.cpp:587
+#: Menus.cpp:562
msgid "T&ransport"
-msgstr ""
+msgstr "&Controle"
-#: Menus.cpp:591
-msgid "Play\tSpace"
-msgstr ""
+#: Menus.cpp:565
+#: toolbars/ControlToolBar.cpp:173
+msgid "Play"
+msgstr "Reproduzir"
-#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
-msgstr ""
+#: Menus.cpp:566
+msgid "&Loop Play"
+msgstr "Reprodução &contÃnua"
-#: Menus.cpp:593
-msgid "&Pause\tP"
-msgstr ""
+#: Menus.cpp:567
+msgid "&Pause"
+msgstr "&Pausar"
-#: Menus.cpp:596
-msgid "&Stop\tSpace"
-msgstr ""
+#: Menus.cpp:570
+msgid "&Stop"
+msgstr "P&arar"
-#: Menus.cpp:799
-msgid "Skip to Start\tHome"
-msgstr "Ir para o inÃcio\tHome"
+#: Menus.cpp:573
+#: toolbars/ControlToolBar.cpp:208
+msgid "Skip to Start"
+msgstr "Ir para o inÃcio"
-#: Menus.cpp:800
-msgid "Skip to End\tEnd"
-msgstr "Ir para o final\tEnd"
+#: Menus.cpp:574
+#: toolbars/ControlToolBar.cpp:209
+msgid "Skip to End"
+msgstr "Ir para o final"
-#: Menus.cpp:600
-msgid "&Record\tR"
-msgstr ""
+#: Menus.cpp:578
+msgid "&Record"
+msgstr "Grava&r"
-#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
-msgstr ""
+# Gravação programada
+#: Menus.cpp:579
+msgid "&Timer Record..."
+msgstr "&Gravação programada..."
-#: Menus.cpp:604
-msgid "Append Record\tShift+R"
-msgstr ""
+#: Menus.cpp:580
+msgid "Append Record"
+msgstr "Gravar ao final"
-#: Menus.cpp:607
+#: Menus.cpp:584
msgid "Overdub (on/off)"
-msgstr ""
+msgstr "Overdub (lig/desl)"
-#: Menus.cpp:609
+#: Menus.cpp:585
msgid "Software Playthrough (on/off)"
-msgstr ""
+msgstr "Reprodução simultânea via software (lig/desl)"
-#: Menus.cpp:612
+#: Menus.cpp:588
msgid "Sound Activated Recording (on/off)"
-msgstr ""
+msgstr "Gravação ativada por som (lig/desl)"
-#: Menus.cpp:614
+#: Menus.cpp:589
msgid "Sound Activation Level..."
-msgstr ""
+msgstr "NÃvel de ativação do som..."
-#: Menus.cpp:545
+#: Menus.cpp:597
msgid "&Tracks"
msgstr "&Faixas"
-#: Menus.cpp:629
+#: Menus.cpp:602
msgid "Add &New"
-msgstr ""
+msgstr "&Nova faixa"
-#: Menus.cpp:553
-msgid "&Audio Track\tCtrl+Shift+N"
-msgstr "Faix&a de Ãudio\tCtrl+Shift+N"
+#: Menus.cpp:604
+msgid "&Audio Track"
+msgstr "Faix&a de Ãudio"
-#: Menus.cpp:554
+#: Menus.cpp:605
msgid "&Stereo Track"
msgstr "Faixa E&stéreo"
-#: Menus.cpp:556
-#: TimeTrack.cpp:44
+#: Menus.cpp:606
+msgid "&Label Track"
+msgstr "Faixa de TÃtu&lo"
+
+#: Menus.cpp:607
msgid "&Time Track"
msgstr "Faixa de &Tempo"
-#: Menus.cpp:568
+#: Menus.cpp:620
msgid "Mi&x and Render"
msgstr "&Mixar e renderizar"
-#: Menus.cpp:572
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
-msgstr "Mixar e gerar áudio para nova faixa\tCtrl+Shift+M"
+#: Menus.cpp:623
+msgid "Mix and Render to New Track"
+msgstr "Mixar e gerar áudio para nova faixa"
-#: Menus.cpp:576
+#: Menus.cpp:626
msgid "&Resample..."
msgstr "&Reamostrar..."
-#: Menus.cpp:586
+#: Menus.cpp:632
msgid "Remo&ve Tracks"
msgstr "Remo&ver faixa(s)"
-#: Menus.cpp:592
-msgid "&Mute All Tracks\tCtrl+U"
-msgstr "&Emudecer todas as faixas\tCtrl+U"
+#: Menus.cpp:638
+msgid "&Mute All Tracks"
+msgstr "&Emudecer todas as faixas"
-#: Menus.cpp:593
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
-msgstr "&Desemudecer todas as faixas\tCtrl+Shift+U"
+#: Menus.cpp:639
+msgid "&UnMute All Tracks"
+msgstr "&Desemudecer todas as faixas"
-#: Menus.cpp:597
+#: Menus.cpp:644
msgid "Align with &Zero"
msgstr "Com o tempo &Zero"
-#: Menus.cpp:598
+#: Menus.cpp:645
msgid "Align with &Cursor"
msgstr "Com o &cursor"
-#: Menus.cpp:599
+#: Menus.cpp:646
msgid "Align with Selection &Start"
msgstr "Com o inÃcio da &seleção"
-#: Menus.cpp:600
+#: Menus.cpp:647
msgid "Align with Selection &End"
msgstr "Com o final da s&eleção"
-#: Menus.cpp:601
+#: Menus.cpp:648
msgid "Align End with Cu&rsor"
msgstr "Alinhar término com o cu&rsor"
-#: Menus.cpp:602
+#: Menus.cpp:649
msgid "Align End with Selection Star&t"
msgstr "Alinhar &término com o inÃcio da seleção"
-#: Menus.cpp:603
+#: Menus.cpp:650
msgid "Align End with Selection En&d"
msgstr "Alinhar término com o final &da seleção"
-#: Menus.cpp:604
+#: Menus.cpp:651
msgid "Align Tracks To&gether"
msgstr "Alinhar faixas &juntas"
-#: Menus.cpp:681
+#: Menus.cpp:653
msgid "&Align Tracks"
-msgstr ""
+msgstr "&Alinhar faixas"
-#: Menus.cpp:690
+#: Menus.cpp:668
msgid "Ali&gn and Move Cursor"
-msgstr ""
+msgstr "A&linhar e mover o cursor"
-#: Menus.cpp:697
+#: Menus.cpp:680
msgid "Synchronize MIDI with Audio"
-msgstr ""
+msgstr "Sincronizar MIDI com áudio"
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
-msgstr ""
+#: Menus.cpp:687
+msgid "&Link Audio and Label Tracks"
+msgstr "&Vincular faixas de Ãudio e TÃtulo"
-#: Menus.cpp:623
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "Adicionar &tÃtulo à seleção\tCtrl+B"
+#: Menus.cpp:691
+msgid "Add Label At &Selection"
+msgstr "Adicionar tÃtulo à &seleção"
-#: Menus.cpp:624
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "Adicionar tÃtulo à &posição atual\tCtrl+M"
+#: Menus.cpp:694
+msgid "Add Label At &Playback Position"
+msgstr "Adicionar tÃtulo à &posição atual"
-#: Menus.cpp:716
+#: Menus.cpp:697
+msgid "&Edit Labels"
+msgstr "&Editar tÃtulos"
+
+#: Menus.cpp:703
msgid "S&ort tracks"
-msgstr ""
+msgstr "&Organizar faixas por"
-#: Menus.cpp:717
+# &Organizar faixas por
+#: Menus.cpp:705
msgid "by &Start time"
-msgstr ""
+msgstr "&Tempo inicial"
-#: Menus.cpp:719
+#: Menus.cpp:708
msgid "by &Name"
-msgstr ""
+msgstr "&Nome"
-#: Menus.cpp:643
+#: Menus.cpp:722
msgid "&Generate"
msgstr "&Inserir"
-#: Menus.cpp:776 Menus.cpp:860 Menus.cpp:922
+#: Menus.cpp:767
+#: Menus.cpp:852
+#: Menus.cpp:922
msgid "Unsorted"
-msgstr ""
+msgstr "Não-organizado"
-#: Menus.cpp:666
+#: Menus.cpp:789
msgid "Effe&ct"
msgstr "Efeito&s"
-#: Menus.cpp:670
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "Repetir último efeito\tCtrl+R"
-
-#: Menus.cpp:702
+#: Menus.cpp:873
msgid "&Analyze"
msgstr "A&nalisar"
-#: Menus.cpp:704
+#: Menus.cpp:875
+msgid "Contrast..."
+msgstr "Contraste..."
+
+#: Menus.cpp:878
msgid "Plot Spectrum..."
-msgstr "&Espectro de freqüência..."
+msgstr "&Espectro de frequência..."
-#: Menus.cpp:737
-#: Menus.cpp:740
+#: Menus.cpp:945
+#: Menus.cpp:948
msgid "&Help"
msgstr "Aj&uda"
-#: Menus.cpp:743
+#: Menus.cpp:952
msgid "&About Audacity CleanSpeech..."
msgstr "&Sobre o Audacity CleanSpeech..."
-#: Menus.cpp:747
+#: Menus.cpp:958
msgid "&Show Welcome Message..."
msgstr "&Exibir tela de boas-vindas..."
-#: Menus.cpp:748
-msgid "&Index..."
-msgstr "Ãnd&ice da Ajuda..."
-
#: Menus.cpp:959
+msgid "&Help..."
+msgstr "Aj&uda..."
+
+#: Menus.cpp:960
msgid "Show &Log..."
-msgstr ""
+msgstr "Exibir &Log..."
-#: Menus.cpp:756
+#: Menus.cpp:966
msgid "&Screenshot Tools..."
msgstr "&Fotos de tela..."
-#: Menus.cpp:759
+#: Menus.cpp:971
msgid "&Run Benchmark..."
msgstr "E&xecutar diagnóstico..."
-#: Menus.cpp:761
+#: Menus.cpp:976
msgid "&Audio Device Info..."
msgstr "&Dispositivos de áudio..."
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
-msgstr ""
-
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
-msgstr ""
+#: Menus.cpp:987
+msgid "Move backward from toolbars to tracks"
+msgstr "Mover de volta das barras de ferramentas para as faixas"
-#: Menus.cpp:774
-msgid "Selection Tool\tF1"
-msgstr "Ferramenta de seleção\tF1"
+#: Menus.cpp:988
+msgid "Move forward from toolbars to tracks"
+msgstr "Alternar entre Barra de Seleção, Visualização de Faixas e Dock\tCtrl+F6"
-#: Menus.cpp:775
-msgid "Envelope Tool\tF2"
-msgstr "Ferramenta Envelope\tF2"
-
-#: Menus.cpp:776
-msgid "Draw Tool\tF3"
-msgstr "Ferramenta de desenho\tF3"
+#: Menus.cpp:990
+#: toolbars/ToolsToolBar.cpp:147
+#: toolbars/ToolsToolBar.cpp:186
+msgid "Selection Tool"
+msgstr "Ferramenta de seleção"
-#: Menus.cpp:777
-msgid "Zoom Tool\tF4"
-msgstr "Ferramenta de Zoom\tF4"
+#: Menus.cpp:991
+#: toolbars/ToolsToolBar.cpp:148
+#: toolbars/ToolsToolBar.cpp:187
+msgid "Envelope Tool"
+msgstr "Ferramenta Envelope"
-#: Menus.cpp:778
-msgid "Time Shift Tool\tF5"
-msgstr "Ferramenta Deslizar\tF5"
+#: Menus.cpp:992
+#: toolbars/ToolsToolBar.cpp:151
+#: toolbars/ToolsToolBar.cpp:188
+msgid "Draw Tool"
+msgstr "Ferramenta Desenhar"
-#: Menus.cpp:779
-msgid "Multi Tool\tF6"
-msgstr "Multi-ferramenta\tF6"
+#: Menus.cpp:993
+#: toolbars/ToolsToolBar.cpp:150
+#: toolbars/ToolsToolBar.cpp:189
+msgid "Zoom Tool"
+msgstr "Ferramenta de Zoom"
-#: Menus.cpp:781
-msgid "Next Tool\tD"
-msgstr "Próxima ferramenta\tD"
+#: Menus.cpp:994
+#: toolbars/ToolsToolBar.cpp:149
+msgid "Time Shift Tool"
+msgstr "Ferramenta Deslizar"
-#: Menus.cpp:782
-msgid "Previous Tool\tA"
-msgstr "Ferramenta anterior\tA"
+#: Menus.cpp:995
+#: toolbars/ToolsToolBar.cpp:191
+msgid "Multi Tool"
+msgstr "Multi-ferramenta"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
-msgstr ""
+msgid "Next Tool"
+msgstr "Próxima ferramenta"
-#: Menus.cpp:785
-msgid "Stop\tS"
-msgstr "Parar\tS"
+#: Menus.cpp:998
+msgid "Previous Tool"
+msgstr "Ferramenta anterior"
-#: Menus.cpp:786
-msgid "Pause\tP"
-msgstr "Pausar\tP"
+#: Menus.cpp:1000
+msgid "Play/Stop"
+msgstr "Reproduzir/Parar"
-#: Menus.cpp:787
-msgid "Record\tR"
-msgstr "Gravar\tR"
+#: Menus.cpp:1001
+msgid "Play/Stop and Set Cursor"
+msgstr "Reproduzir/Parar e Selecionar"
-#: Menus.cpp:788
-msgid "Record Append\tShift+R"
-msgstr "Gravar ao final\tShift+R"
+#: Menus.cpp:1002
+msgid "Play One Second"
+msgstr "Reproduzir um segundo"
-#: Menus.cpp:790
-msgid "Play/Stop and Set Cursor\tShift+A"
-msgstr "Reproduzir/Parar e Selecionar\tShift+A"
+#: Menus.cpp:1003
+msgid "Play To Selection"
+msgstr "Reproduzir seleção"
-#: Menus.cpp:793
-msgid "Play One Second\t1"
-msgstr "Reproduzir um segundo\t1"
+#: Menus.cpp:1004
+msgid "Play Cut Preview"
+msgstr "Reproduzir recorte da previsão"
-#: Menus.cpp:794
-msgid "Play To Selection\tB"
-msgstr "Reproduzir seleção\tB"
+#: Menus.cpp:1006
+msgid "Selection to Start"
+msgstr "Selecionar desde o inÃcio"
-#: Menus.cpp:795
-msgid "Play Looped\tL"
-msgstr "Reproduzir continuamente\tL"
+#: Menus.cpp:1007
+msgid "Selection to End"
+msgstr "Selecionar do cursor para o fim"
#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
-
-#: Menus.cpp:797
-msgid "Play Cut Preview\tC"
-msgstr "Reproduzir recorte da previsão\tC"
-
-#: Menus.cpp:802
-msgid "Selection to Start\tShift+Home"
-msgstr "Seleção desde o inÃcio\tShift+Home"
-
-#: Menus.cpp:803
-msgid "Selection to End\tShift+End"
-msgstr "Selecionar do cursor para o fim\tShift+End"
-
-#: Menus.cpp:805
-msgid "DeleteKey\tBackspace"
-msgstr "Apagar\tBackspace"
-
-#: Menus.cpp:810
-msgid "DeleteKey2\tDelete"
-msgstr "Apagar\tDelete"
-
-#: Menus.cpp:816
-msgid "Seek left short period during playback\tLeft"
-msgstr "Alterar posição do cursor pouco à esquerda\tLeft"
+msgid "DeleteKey"
+msgstr "Apagar"
-#: Menus.cpp:817
-msgid "Seek right short period during playback\tRight"
-msgstr "Alterar posição do cursor pouco à direita\tRight"
+#: Menus.cpp:1013
+msgid "DeleteKey2"
+msgstr "Apagar2"
-#: Menus.cpp:818
-msgid "Seek left long period during playback\tShift+Left"
-msgstr "Alterar posição do cursor mais à esquerda\tShift+Left"
+#: Menus.cpp:1019
+msgid "Short seek left during playback"
+msgstr "Alterar posição do cursor pouco à esquerda"
-#: Menus.cpp:819
-msgid "Seek right long period during playback\tShift+Right"
-msgstr "Alterar posição do cursor mais à direita\tShift+Right"
+#: Menus.cpp:1020
+msgid "Short seek right during playback"
+msgstr "Alterar posição do cursor pouco à direita"
-#: Menus.cpp:823
-msgid "Move Focus to Previous Track\tUp"
-msgstr "Mover foco para a faixa anterior\tUp"
+#: Menus.cpp:1021
+msgid "Long seek left during playbk"
+msgstr "Alterar posição do cursor à esquerda"
-#: Menus.cpp:824
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
-msgstr "Mover foco para a faixa anterior e alterar seleção\tShift+Up"
+#: Menus.cpp:1022
+msgid "Long Seek right during playback"
+msgstr "Alterar posição do cursor à direita"
-#: Menus.cpp:825
-msgid "Move Focus to Next Track\tDown"
-msgstr "Mover foco para a faixa posterior\tDown"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous Track"
+msgstr "Mover foco para a faixa anterior"
-#: Menus.cpp:826
-msgid "Move Focus to Next and Change Selection\tShift+Down"
-msgstr "Mover foco para a faixa posterior e alterar seleção\tShift+Down"
+#: Menus.cpp:1028
+msgid "Move Focus to Previous and Select"
+msgstr "Mover foco para a faixa anterior e e alterar seleção"
-#: Menus.cpp:827
-msgid "Toggle Focused Track\tReturn"
-msgstr "Alterar foco sobre a faixa\tReturn"
+#: Menus.cpp:1029
+msgid "Move Focus to Next Track"
+msgstr "Mover foco para a faixa posterior"
-#: Menus.cpp:828
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr "Alterar foco sobre a faixa\tNUMPAD_ENTER"
+#: Menus.cpp:1030
+msgid "Move Focus to Next and Select"
+msgstr "Mover foco para a faixa posterior e alterar seleção"
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
-msgstr ""
+#: Menus.cpp:1031
+#: Menus.cpp:1032
+msgid "Toggle Focused Track"
+msgstr "Alterar foco sobre a faixa"
-#: Menus.cpp:831
-msgid "Cursor Left\tLeft"
-msgstr "Cursor à Esquerda\tLeft"
+#: Menus.cpp:1034
+msgid "Cursor Left"
+msgstr "Cursor à Esquerda"
-#: Menus.cpp:832
-msgid "Cursor Right\tRight"
-msgstr "Cursor à Direita\tRight"
+#: Menus.cpp:1035
+msgid "Cursor Right"
+msgstr "Cursor à Direita"
-#: Menus.cpp:833
-msgid "Cursor Short Jump Left\t,"
-msgstr "Movimento curto do Cursor à esquerda\t,"
+#: Menus.cpp:1036
+msgid "Cursor Short Jump Left"
+msgstr "Movimento curto do Cursor à esquerda"
-#: Menus.cpp:834
-msgid "Cursor Short Jump Right\t."
-msgstr "Movimento curto do Cursor à direita\t."
+#: Menus.cpp:1037
+msgid "Cursor Short Jump Right"
+msgstr "Movimento curto do Cursor à direita"
-#: Menus.cpp:835
-msgid "Cursor Long Jump Left\tShift+,"
-msgstr "Movimento longo do Cursor à esquerda\tShift+,"
+#: Menus.cpp:1038
+msgid "Cursor Long Jump Left"
+msgstr "Movimento longo do Cursor à esquerda"
-#: Menus.cpp:836
-msgid "Cursor Long Jump Right\tShift+."
-msgstr "Movimento longo do Cursor à direita\tShift+."
+#: Menus.cpp:1039
+msgid "Cursor Long Jump Right"
+msgstr "Movimento longo do Cursor à direita"
-#: Menus.cpp:838
-msgid "Selection Extend Left\tShift+Left"
-msgstr "Extender seleção à esquerda\tShift+Left"
+#: Menus.cpp:1041
+msgid "Selection Extend Left"
+msgstr "Extender seleção à esquerda"
-#: Menus.cpp:839
-msgid "Selection Extend Right\tShift+Right"
-msgstr "Extender seleção à direita\tShift+Right"
+#: Menus.cpp:1042
+msgid "Selection Extend Right"
+msgstr "Extender seleção à direita"
-#: Menus.cpp:841
+#: Menus.cpp:1044
msgid "Set (or Extend) Left Selection"
msgstr "Ajustar (ou extender) seleção à esquerda"
-#: Menus.cpp:842
+#: Menus.cpp:1045
msgid "Set (or Extend) Right Selection"
msgstr "Ajustar (ou extender) seleção à direita"
-#: Menus.cpp:844
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "Contarir seleção à esquerda\tCtrl+Shift+Right"
+#: Menus.cpp:1047
+msgid "Selection Contract Left"
+msgstr "Contarir seleção à esquerda"
-#: Menus.cpp:845
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "Contarir seleção à direita\tCtrl+Shift+Left"
+#: Menus.cpp:1048
+msgid "Selection Contract Right"
+msgstr "Contarir seleção à esquerda"
-#: Menus.cpp:847
-msgid "Change pan on focused track\tShift+P"
-msgstr "Alterar balanço da faixa selecionada\tShift+P"
+#: Menus.cpp:1050
+msgid "Change pan on focused track"
+msgstr "Alterar balanço da faixa selecionada"
-#: Menus.cpp:848
-msgid "Pan left on focused track\tAlt+Shift+Left"
-msgstr "Balanço à esquerda nas faixas selecionadas\tAlt+Shift+Left"
+#: Menus.cpp:1051
+msgid "Pan left on focused track"
+msgstr "Balanço à esquerda nas faixas selecionadas"
-#: Menus.cpp:849
-msgid "Pan right on focused track\tAlt+Shift+Right"
-msgstr "Balanço à direita na faixa selecionada\tAlt+Shift+Right"
+#: Menus.cpp:1052
+msgid "Pan right on focused track"
+msgstr "Balanço à direita na faixa selecionada"
-#: Menus.cpp:850
-msgid "Change gain on focused track\tShift+G"
-msgstr "Alterar ganho na faixa selecionada\tShift+G"
+#: Menus.cpp:1053
+msgid "Change gain on focused track"
+msgstr "Alterar ganho na faixa selecionada"
-#: Menus.cpp:851
-msgid "Increase gain on focused track\tAlt+Shift+Up"
-msgstr "Aumentar ganho na faixa selecionada\tAlt+Shift+Up"
+#: Menus.cpp:1054
+msgid "Increase gain on focused track"
+msgstr "Aumentar ganho na faixa selecionada"
-#: Menus.cpp:852
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
-msgstr "Diminuir ganho na faixa selecionada\tAlt+Shift+Down"
+#: Menus.cpp:1055
+msgid "Decrease gain on focused track"
+msgstr "Diminuir ganho na faixa selecionada"
-#: Menus.cpp:853
-msgid "Open menu on focused track\tShift+M"
+#: Menus.cpp:1056
+msgid "Open menu on focused track"
msgstr "Abrir menu da faixa selecionada"
-#: Menus.cpp:854
-msgid "Mute/Unmute focused track\tShift+U"
-msgstr "Mudo/não-Mudo na faixa selecionada\tShift+U"
+#: Menus.cpp:1057
+msgid "Mute/Unmute focused track"
+msgstr "Mudo/não-Mudo na faixa selecionada"
-#: Menus.cpp:855
-msgid "Solo/Unsolo focused track\tShift+S"
-msgstr "Solo/não-Solo na faixa selecionada\tShift+S"
+#: Menus.cpp:1058
+msgid "Solo/Unsolo focused track"
+msgstr "Solo/não-Solo na faixa selecionada"
-#: Menus.cpp:856
-msgid "Close focused track\tShift+C"
-msgstr "Fechar faixa selecionada\tShift+C"
+#: Menus.cpp:1059
+msgid "Close focused track"
+msgstr "Fechar faixa selecionada"
-#: Menus.cpp:858
+#: Menus.cpp:1061
msgid "Snap To On"
msgstr "Antecipação ligada"
-#: Menus.cpp:859
+#: Menus.cpp:1062
msgid "Snap To Off"
msgstr "Antecipação desligada"
+#: Menus.cpp:1066
+msgid "Full screen on/off"
+msgstr "Tela cheia li/desl"
+
+#: Menus.cpp:1068
+msgid "Adjust output gain"
+msgstr "Controle de volume principal"
+
+#: Menus.cpp:1069
+msgid "Increase output gain"
+msgstr "Aumentar ganho de volume"
+
+#: Menus.cpp:1070
+msgid "Decrease output gain"
+msgstr "Diminuir ganho de volume"
+
#: Menus.cpp:1071
-msgid "Full screen on/off\tF11"
-msgstr ""
+msgid "Adjust input gain"
+msgstr "Controle de volume de entrada"
+
+#: Menus.cpp:1072
+msgid "Increase input gain"
+msgstr "Aumentar ganho de entrada"
+
+#: Menus.cpp:1073
+msgid "Decrease input gain"
+msgstr "Diminuir ganho de entrada"
+
+#: Menus.cpp:1075
+msgid "Adjust input source"
+msgstr "Ajustar fonte de entrada"
+
+#: Menus.cpp:1079
+msgid "Play at speed"
+msgstr "Executar-em-velocidade"
+
+#: Menus.cpp:1080
+msgid "Adjust playback speed"
+msgstr "Ajustar velocidade de reprodução"
+
+#: Menus.cpp:1081
+msgid "Increase playback speed"
+msgstr "Aumentar velocidade de reprodução"
+
+#: Menus.cpp:1082
+msgid "Decrease playback speed"
+msgstr "Diminuir velocidade de reprodução"
#. i18n-hint: This is the name of the menu item on Mac OS X only
-#: Menus.cpp:873
+#: Menus.cpp:1167
msgid "Open Recent"
msgstr "Abrir recente"
+# ver a questao do atalho d teclado
#. i18n-hint: This is the name of the menu item on Windows and Linux
-#: Menus.cpp:1161
+#: Menus.cpp:1170
msgid "Recent &Files"
-msgstr ""
+msgstr "Ar&quivos recentes"
-#: Menus.cpp:925
+#: Menus.cpp:1188
#, c-format
msgid "&Undo %s"
msgstr "Des&fazer %s"
-#: Menus.cpp:951
+#: Menus.cpp:1214
msgid "Can't Undo"
msgstr "ImpossÃvel desfazer"
-#: Menus.cpp:960
+#: Menus.cpp:1223
#, c-format
msgid "&Redo %s"
msgstr "&Refazer %s"
-#: Menus.cpp:966
+#: Menus.cpp:1229
msgid "Can't Redo"
msgstr "ImpossÃvel refazer"
-#: Menus.cpp:1528
+#: Menus.cpp:1874
msgid "Sort By Time"
msgstr "Organizar por tempo"
-#: Menus.cpp:1528
+#: Menus.cpp:1874
msgid "Tracks sorted by time"
msgstr "Faixas organizadas por tempo"
-#: Menus.cpp:1554
+#: Menus.cpp:1900
msgid "Sort By Name"
msgstr "Organizar por Nome"
-#: Menus.cpp:1554
+#: Menus.cpp:1900
msgid "Tracks sorted by name"
msgstr "Faixas organizadas por nome"
-#: Menus.cpp:1705
-msgid "Set Left Selection Bound"
+#: Menus.cpp:2051
+#: Menus.cpp:2087
+msgid "Position"
+msgstr "Posição"
+
+#: Menus.cpp:2051
+msgid "Set Left Selection Boundary"
msgstr "Ajustar limite esquerdo da seleção"
-#: Menus.cpp:1739
-msgid "Set Right Selection Bound"
+#: Menus.cpp:2087
+msgid "Set Right Selection Boundary"
msgstr "Ajustar limite direito da seleção"
-#: Menus.cpp:2006
+#: Menus.cpp:2444
msgid "You must select a track first."
msgstr "Você deve selecionar uma faixa antes."
-#: Menus.cpp:2035
+#: Menus.cpp:2479
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "Repetir %s\tCtrl+R"
+msgid "Repeat %s"
+msgstr "Repetir %s"
-#: Menus.cpp:2166
+#: Menus.cpp:2620
msgid "There are no label tracks to export."
msgstr "Não há tÃtulos para exportar."
-#: Menus.cpp:2608
+#: Menus.cpp:2715
msgid "Export MIDI As:"
-msgstr ""
+msgstr "Exportar MIDI como:"
-#: Menus.cpp:2612
+#: Menus.cpp:2719
msgid "MIDI file (*.mid)|*.mid|Allegro file (*.gro)|*.gro"
-msgstr ""
+msgstr "Arquivos MIDI (*.mid)|*.mid|Arquivos Allegro (*.gro)|*.gro"
-#: Menus.cpp:2644
-msgid "You have selected a filename with an unrecognized file extension.\n"
+#: Menus.cpp:2751
+msgid ""
+"You have selected a filename with an unrecognized file extension.\n"
"Do you want to continue?"
msgstr ""
+"Você selecionou um arquivo com uma extensão descnhecida.\n"
+"Deseja continuar?"
-#: Menus.cpp:2645
+#: Menus.cpp:2752
msgid "Export MIDI"
-msgstr ""
+msgstr "Exportar MIDI"
-#: Menus.cpp:2271
+#: Menus.cpp:2830
msgid "Nothing to undo"
msgstr "Não há mais o que desfazer"
-#: Menus.cpp:2291
+#: Menus.cpp:2851
msgid "Nothing to redo"
msgstr "Não há mais o que refazer"
-#: Menus.cpp:2366
-#: TrackPanel.cpp:605
-#: toolbars/EditToolBar.cpp:133
+#: Menus.cpp:2958
+#: TrackPanel.cpp:652
+#: toolbars/EditToolBar.cpp:130
+#: toolbars/EditToolBar.cpp:190
msgid "Cut"
msgstr "Cortar"
-#: Menus.cpp:2366
+#: Menus.cpp:2958
msgid "Cut to the clipboard"
msgstr "Cortar para a Ãrea de Transferência"
-#: Menus.cpp:2404
+#: Menus.cpp:2997
msgid "Split Cut"
msgstr "Separar e Recortar"
-#: Menus.cpp:2404
+#: Menus.cpp:2997
msgid "Split-cut to the clipboard"
msgstr "Separar e Recortar para a Ãrea de Transferência"
-#: Menus.cpp:2469
-#: Menus.cpp:2540
-#: Menus.cpp:2634
-#: TrackPanel.cpp:607
-#: toolbars/EditToolBar.cpp:137
+#: Menus.cpp:3063
+#: Menus.cpp:3128
+#: Menus.cpp:3209
+#: Menus.cpp:3408
+#: TrackPanel.cpp:654
+#: toolbars/EditToolBar.cpp:134
+#: toolbars/EditToolBar.cpp:192
msgid "Paste"
msgstr "Colar"
-#: Menus.cpp:2469
+#: Menus.cpp:3063
msgid "Pasted text from the clipboard"
msgstr "Texto copiado para a Ãrea de Transferência"
-#: Menus.cpp:2540
-#: Menus.cpp:2634
+#: Menus.cpp:3128
+#: Menus.cpp:3209
+#: Menus.cpp:3408
msgid "Pasted from the clipboard"
msgstr "Colado da área de transferência"
-#: Menus.cpp:3053
+#: Menus.cpp:3277
msgid "Pasting one type of track into another is not allowed."
-msgstr ""
+msgstr "Não é possÃvel misturar diferentes tipos de em uma mesma faixas."
-#: Menus.cpp:2574
+#: Menus.cpp:3289
msgid "Copying stereo audio into a mono track is not allowed."
msgstr "Não é possÃvel copiar áudio estéreo em faixas mono"
-#: Menus.cpp:2670
-#: toolbars/EditToolBar.cpp:139
+#: Menus.cpp:3444
+#: toolbars/EditToolBar.cpp:193
msgid "Trim"
msgstr "Silenciar fora da seleção"
-#: Menus.cpp:2670
+#: Menus.cpp:3444
msgid "Trim file to selection"
msgstr "Cortar arquivo para seleção"
-#: Menus.cpp:2699
+#: Menus.cpp:3473
#, c-format
msgid "Split-deleted %.2f seconds at t=%.2f"
msgstr "Separados e copiados %.2f segundos a t=%.2f"
-#: Menus.cpp:2702
+#: Menus.cpp:3476
msgid "Split Delete"
msgstr "Separar e Apagar"
-#: Menus.cpp:2723
+#: Menus.cpp:3497
#, c-format
msgid "Disjoined %.2f seconds at t=%.2f"
msgstr "Desunidos %.2f segundos a t=%.2f"
-#: Menus.cpp:2726
+#: Menus.cpp:3500
msgid "Disjoin"
msgstr "Separar"
-#: Menus.cpp:2747
+#: Menus.cpp:3521
#, c-format
msgid "Joined %.2f seconds at t=%.2f"
msgstr "Unidos %.2f segundos a t=%.2f"
-#: Menus.cpp:2750
+#: Menus.cpp:3524
msgid "Join"
msgstr "Unir"
-#: Menus.cpp:2769
+#: Menus.cpp:3543
#, c-format
msgid "Silenced selected tracks for %.2f seconds at %.2f"
-msgstr "Faixas silenciadas por %.2f segundo em %.2f"
+msgstr "Faixas silenciadas por %.2f segundos em %.2f"
-#: Menus.cpp:2771
-#: toolbars/EditToolBar.cpp:141
+#: Menus.cpp:3545
+#: toolbars/EditToolBar.cpp:194
msgid "Silence"
msgstr "Silenciar"
-#: Menus.cpp:2805
+#: Menus.cpp:3575
msgid "Duplicate"
msgstr "Duplicar"
-#: Menus.cpp:2805
+#: Menus.cpp:3575
msgid "Duplicated"
msgstr "Duplicado"
-#: Menus.cpp:2824
+#: Menus.cpp:3594
msgid "Cut Labels"
msgstr "Recortar tÃtulos"
-#: Menus.cpp:2824
+#: Menus.cpp:3594
msgid "Cut labeled regions to the clipboard"
msgstr "Recortar áreas com tÃtulos para a Ãrea de Transferência"
-#: Menus.cpp:2838
+#: Menus.cpp:3608
msgid "SplitCut labeled regions to the clipboard"
msgstr "Separar e Recortar as áreas com tÃtulo para a Ãrea de Transferência"
-#: Menus.cpp:2839
+#: Menus.cpp:3609
msgid "Split Cut Labels"
msgstr "Separar e Recortar tÃtulos"
-#: Menus.cpp:2853
+#: Menus.cpp:3623
msgid "Copied labeled regions to the clipboard"
msgstr "Ãreas com tÃtulos copiadas para a Ãrea de Transferência"
-#: Menus.cpp:2853
+#: Menus.cpp:3623
msgid "Copy Labels"
msgstr "Copiar tÃtulos"
-#: Menus.cpp:2865
+#: Menus.cpp:3635
msgid "Delete Labels"
msgstr "Apagar tÃtulos"
-#: Menus.cpp:2865
+#: Menus.cpp:3635
msgid "Deleted labeled regions"
msgstr "Ãreas com tÃtulos apagadas"
-#: Menus.cpp:2877
+#: Menus.cpp:3647
msgid "Split Delete Labels"
msgstr "Separar e Apagar tÃtulos"
-#: Menus.cpp:2877
+#: Menus.cpp:3647
msgid "Split Deleted labeled regions"
msgstr "Separar e Apagar áreas com tÃtulos"
-#: Menus.cpp:2889
+#: Menus.cpp:3659
msgid "Silence Labels"
msgstr "Silenciar tÃtulos"
-#: Menus.cpp:2889
+#: Menus.cpp:3659
msgid "Silenced labeled regions"
msgstr "Ãreas com tÃtulos silenciadas"
-#: Menus.cpp:2901
+#: Menus.cpp:3671
msgid "Split Labels"
msgstr "Separar tÃtulos"
-#: Menus.cpp:2901
+#: Menus.cpp:3671
msgid "Split labeled regions"
msgstr "Separar áreas com tÃtulos"
-#: Menus.cpp:2913
+#: Menus.cpp:3683
msgid "Join Labels"
msgstr "Unir tÃtulos"
-#: Menus.cpp:2913
+#: Menus.cpp:3683
msgid "Joined labeled regions"
msgstr "Ãreas com tÃtulos unidas"
-#: Menus.cpp:2925
+#: Menus.cpp:3695
msgid "Disjoin Labels"
msgstr "Separar tÃtulos"
-#: Menus.cpp:2925
+#: Menus.cpp:3695
msgid "Disjoined labeled regions"
msgstr "Regiões com tÃtulos desunidas"
-#: Menus.cpp:2947
-#: TrackPanel.cpp:6121
+#: Menus.cpp:3717
+#: TrackPanel.cpp:6257
msgid "Split"
msgstr "Dividir seleção"
-#: Menus.cpp:3041
+#: Menus.cpp:3806
msgid "Split New"
msgstr "Separar para nova"
-#: Menus.cpp:3041
+#: Menus.cpp:3806
msgid "Split to new track"
msgstr "Separar para nova faixa"
-#: Menus.cpp:3124
+#: Menus.cpp:3888
msgid "Split at labels"
msgstr "Dividir nos tÃtulos"
-#: Menus.cpp:3425
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "Para desenhar o espectro, todas as faixas devem ter a mesma taxa de amostragem."
-
-#: Menus.cpp:3451
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "Foi selecionado áudio demais. Só os primeiros %1f segundos serão analizados."
-
-#: Menus.cpp:3584
+#: Menus.cpp:4302
#, c-format
msgid "Imported labels from '%s'"
msgstr "TÃtulos importados de '%s'"
-#: Menus.cpp:3585
+#: Menus.cpp:4303
msgid "Import Labels"
msgstr "Importar tÃtulos"
-#: Menus.cpp:3595
+#: Menus.cpp:4314
msgid "Select a MIDI file..."
msgstr "Selecione um arquivo MIDI..."
-#: Menus.cpp:4147
+#: Menus.cpp:4318
msgid "MIDI and Allegro files (*.mid;*.midi;*.gro)|*.mid;*.midi;*.gro|MIDI files (*.mid;*.midi)|*.mid;*.midi|Allegro files (*.gro)|*.gro|All files (*.*)|*.*"
-msgstr ""
+msgstr "Arquivos MIDI e Allegro (*.mid;*.midi;*.gro)|*.mid;*.midi;*.gro|Arquivos MIDI (*.mid;*.midi)|*.mid;*.midi|Arquivos Allegro (*.gro)|*.gro|Todos os arquivos (*.*)|*.*"
-#: Menus.cpp:3615
+#: Menus.cpp:4334
#, c-format
msgid "Imported MIDI from '%s'"
msgstr "MIDI importado de '%s'"
-#: Menus.cpp:3617
+#: Menus.cpp:4335
msgid "Import MIDI"
msgstr "Importar MIDI"
-#: Menus.cpp:3630
+#: Menus.cpp:4349
msgid "Select any uncompressed audio file..."
msgstr "Selecione um arquivo de áudio não-comprimido..."
-#: Menus.cpp:3634
+#: Menus.cpp:4353
msgid "All files (*)|*"
msgstr "Todos os arquivos (*)|*"
-#: Menus.cpp:3668
+#: Menus.cpp:4377
msgid "Edit the metadata tags"
msgstr "Editar tags de metadados"
-#: Menus.cpp:3669
-#: export/Export.cpp:298
+#: Menus.cpp:4378
+#: export/Export.cpp:348
msgid "Edit Metadata"
msgstr "Editar metadados"
-#: Menus.cpp:3669
+#: Menus.cpp:4378
msgid "Edit Metadata tags"
msgstr "Editar tags de metadados"
-#: Menus.cpp:3725
+#: Menus.cpp:4433
#, c-format
msgid "Rendered all audio in track '%s'"
msgstr "Gerado todo o áudio da faixa '%s'"
-#: Menus.cpp:3726
+#: Menus.cpp:4434
msgid "Render"
msgstr "Gerar"
-#: Menus.cpp:3731
+#: Menus.cpp:4439
#, c-format
msgid "Mixed and rendered %d tracks into one new stereo track"
msgstr "Geradas e mixadas %d faixas em uma faixa estéreo"
-#: Menus.cpp:3734
+#: Menus.cpp:4442
#, c-format
msgid "Mixed and rendered %d tracks into one new mono track"
msgstr "Geradas e mixadas %d faixas em uma faixa mono"
-#: Menus.cpp:3736
+#: Menus.cpp:4444
#: Mix.cpp:120
-msgid "&Mix and Render"
-msgstr "&Mixar"
+msgid "Mix and Render"
+msgstr "Mixar"
-#: Menus.cpp:3866
+#: Menus.cpp:4576
msgid "Aligned with zero"
msgstr "Alinhar com o zero"
-#: Menus.cpp:3870
+#: Menus.cpp:4580
msgid "Aligned cursor"
msgstr "Cursor alinhado"
-#: Menus.cpp:3874
+#: Menus.cpp:4584
msgid "Aligned with selection start"
msgstr "Com o inÃcio da seleção"
-#: Menus.cpp:3878
+#: Menus.cpp:4588
msgid "Aligned with selection end"
msgstr "Com o final da seleção"
-#: Menus.cpp:3882
+#: Menus.cpp:4592
msgid "Aligned end with cursor"
msgstr "Término com o cursor"
-#: Menus.cpp:3886
+#: Menus.cpp:4596
msgid "Aligned end with selection start"
msgstr "Término com o inÃcio da seleção"
-#: Menus.cpp:3890
+#: Menus.cpp:4600
msgid "Aligned end with selection end"
msgstr "Término com o final da seleção"
-#: Menus.cpp:3894
+#: Menus.cpp:4604
msgid "Aligned"
msgstr "Alinhado"
-#: Menus.cpp:3927
+#: Menus.cpp:4637
msgid "Align"
msgstr "Alinhar"
-#: Menus.cpp:4550
+#: Menus.cpp:4723
msgid "Sync MIDI with Audio"
-msgstr ""
+msgstr "Sincronizar MIDI vom Ãudio"
-#: Menus.cpp:4554
+#: Menus.cpp:4727
msgid "Alignment completed."
-msgstr ""
+msgstr "Alinhamento completado."
-#: Menus.cpp:3950
+#: Menus.cpp:4738
msgid "Created new audio track"
msgstr "Criada nova faixa de áudio"
-#: Menus.cpp:3950
-#: Menus.cpp:3973
-#: Menus.cpp:3988
-#: Menus.cpp:4008
+#: Menus.cpp:4738
+#: Menus.cpp:4760
+#: Menus.cpp:4775
+#: Menus.cpp:4795
msgid "New Track"
msgstr "Nova faixa"
-#: Menus.cpp:3973
+#: Menus.cpp:4760
msgid "Created new stereo audio track"
msgstr "Criada nova faixa de áudio estéreo"
-#: Menus.cpp:3988
+#: Menus.cpp:4775
msgid "Created new label track"
msgstr "Criado novo tÃtulo"
-#: Menus.cpp:3997
+#: Menus.cpp:4784
msgid "The version of Audacity you are using does not support multiple time tracks."
msgstr "The version of Audacity you are using does not support multiple time tracks."
-#: Menus.cpp:4008
+#: Menus.cpp:4795
msgid "Created new time track"
msgstr "Criada nova faixa de tempo"
-#: Menus.cpp:4057
+#: Menus.cpp:4855
msgid "Added label"
msgstr "TÃtulo adicionado"
-#: Menus.cpp:4085
+#: Menus.cpp:4890
msgid "Edited labels"
msgstr "TÃtulos editados"
-#: Menus.cpp:4112
+#: Menus.cpp:4917
msgid "Save CleanSpeech Preset File As:"
msgstr "Salvar configurações do CleanSpeech como:"
-#: Menus.cpp:4116
+#: Menus.cpp:4921
msgid "CleanSpeech Presets (*.csp)|*.csp"
msgstr "Ajustes do CleanSpeech (*.csp)|*.csp"
-#: Menus.cpp:4123
-#: export/Export.cpp:515
+#: Menus.cpp:4928
+#: export/Export.cpp:610
msgid "Sorry, pathnames longer than 256 characters not supported."
msgstr "Desculpe, nomes com mais de 256 caracteres não são aceitos."
-#: Menus.cpp:4169
+#: Menus.cpp:4974
msgid "Problem encountered exporting presets."
-msgstr "Houve um problema ao exportar as configurações;"
+msgstr "Houve um problema ao exportar os ajustes."
-#: Menus.cpp:4170
-#: export/Export.cpp:408
+#: Menus.cpp:4975
+#: export/Export.cpp:472
msgid "Unable to export"
msgstr "Não foi possÃvel exportar"
-#: Menus.cpp:4354
+#: Menus.cpp:5158
msgid "Remove Track"
msgstr "Remover faixa"
-#: Menus.cpp:4354
+#: Menus.cpp:5158
msgid "Removed audio track(s)"
msgstr "Remover faixas de áudio"
-#: Menus.cpp:4508
-#: Menus.cpp:4527
-#: export/ExportMP3.cpp:1926
+#: Menus.cpp:5314
+#: Menus.cpp:5370
+#: export/ExportFFmpeg.cpp:756
+#: export/ExportMP3.cpp:1785
msgid "Resample"
msgstr "Reamostrar"
-#: Menus.cpp:4508
+#: Menus.cpp:5335
+#: TrackPanel.cpp:6481
msgid "New sample rate (Hz):"
msgstr "Nova taxa de amostragem (Hz):"
-#: Menus.cpp:4514
+#: Menus.cpp:5359
+#: TrackPanel.cpp:6505
msgid "The entered value is invalid"
msgstr "O valor digitado não é válido"
-#: Menus.cpp:4525
+#: Menus.cpp:5368
#, c-format
msgid "Resampling track %d"
msgstr "Reamostrando faixa %d"
-#: Menus.cpp:4536
+#: Menus.cpp:5377
msgid "Resample Track"
msgstr "Reamostrar faixa"
-#: Menus.cpp:4536
+#: Menus.cpp:5377
msgid "Resampled audio track(s)"
msgstr "Reamostrar faixa de áudio"
-#: Mix.cpp:94
-#: Mix.cpp:101
+#: Mix.cpp:95
+#: Mix.cpp:102
msgid "Mix"
msgstr "Mix"
@@ -2936,54 +3078,59 @@ msgstr "Mix"
msgid "Mixing and rendering tracks"
msgstr "Mixando e gerando faixas"
-#: NoteTrack.cpp:36
+#: NoteTrack.cpp:43
msgid "Note Track"
msgstr "Nota de faixa"
-#: Printing.cpp:198
+#: Printing.cpp:160
msgid "There was a problem printing."
msgstr "Houve um problema ao imprimir."
-#: Printing.cpp:199
+#: Printing.cpp:161
msgid "Print"
msgstr "Imprimir"
-#: Project.cpp:636
+#: Project.cpp:671
+msgid "Repeat Last Effect"
+msgstr "Repetir último efeito"
+
+#: Project.cpp:776
msgid "Main Mix"
msgstr "Mix principal"
-#: Project.cpp:761
+#: Project.cpp:894
#, c-format
msgid "Welcome to Audacity version %s"
msgstr "Bem-vindo ao Audacity versão %s"
-#: Project.cpp:922
+#: Project.cpp:1049
msgid "(Recovered)"
msgstr "(Recuperado)"
-#: Project.cpp:1482
-#: TrackPanel.cpp:804
-#: toolbars/ControlToolBar.cpp:191
+#: Project.cpp:1718
+#: TrackPanel.cpp:846
+#: toolbars/ControlToolBar.cpp:187
msgid "Record"
msgstr "Gravar"
-#: Project.cpp:1482
-#: TrackPanel.cpp:804
+#: Project.cpp:1718
+#: TrackPanel.cpp:846
msgid "Recorded Audio"
msgstr "Ãudio gravado"
-#: Project.cpp:1500
+#: Project.cpp:1736
msgid "Save changes before closing?"
msgstr "Deseja salvar as alterações no arquivo?"
-#: Project.cpp:1503
-msgid "\n"
+#: Project.cpp:1739
+msgid ""
+"\n"
"If saved, the project will have no tracks.\n"
"\n"
"To save any previously open tracks:\n"
"Cancel, Edit > Undo until all tracks\n"
"are open, then File > Save Project."
-msgstr "\n"
+msgstr ""
"\n"
"O projeto será salvo vazio!!\n"
"\n"
@@ -2992,33 +3139,35 @@ msgstr "\n"
"todas as faixas estejam novamente abertas,\n"
"só então selecione Arquivo > Salvar projeto."
-#: Project.cpp:1506
+#: Project.cpp:1742
msgid "Save changes?"
msgstr "Salvar alterações"
-#: Project.cpp:1694
-msgid "All files|*.*|All supported files|"
-msgstr "Todos os arquivos|*.*|Todos os arquivos suportados|"
+#: Project.cpp:1954
+msgid "All files|*|All supported files|"
+msgstr "Todos os arquivos|*|Todos os arquivos suportados|"
-#: Project.cpp:1719
+#: Project.cpp:1984
msgid "Select one or more audio files..."
msgstr "Selecionar arquivo de áudio..."
-#: Project.cpp:1746
+#: Project.cpp:2011
msgid "Audacity projects|*.aup|"
msgstr "Projetos do Audacity|*.aup|"
-#: Project.cpp:1799
-#: Project.cpp:2186
+#: Project.cpp:2071
+#: Project.cpp:2506
#, c-format
-msgid "This file was saved by Audacity %s, a much\n"
+msgid ""
+"This file was saved by Audacity %s, a much\n"
"older version. The format has changed.\n"
"\n"
"Audacity could corrupt the file in opening\n"
"it, so you must back it up first.\n"
"\n"
"Open this file now?"
-msgstr "Este arquivo foi salvo pelo Audacity %s, uma\n"
+msgstr ""
+"Este arquivo foi salvo pelo Audacity %s, uma\n"
"versão muito antiga do programa. O formato\n"
"de arquivo mudou desde então. \n"
"Tentar abrir este arquivo provavelmente o\n"
@@ -3028,81 +3177,108 @@ msgstr "Este arquivo foi salvo pelo Audacity %s, uma\n"
"\n"
"Tem certeza que deseja abrir este arquivo?"
-#: Project.cpp:1800
+#: Project.cpp:2072
msgid "1.0 or earlier"
msgstr "1.0 ou anterior"
-#: Project.cpp:1806
-#: Project.cpp:2198
+#: Project.cpp:2078
+#: Project.cpp:2518
msgid "Opening old project file"
msgstr "Abrindo arquivo de Projeto em formato antigo"
-#: Project.cpp:1832
-#: Project.cpp:1840
+#: Project.cpp:2102
+msgid ""
+"You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+"Você está tentando abrir um arquivo de backup\n"
+"gerado automaticamente. Continuar nesta operação\n"
+"pode resultar em perda de dados.\n"
+"\n"
+"Por favor, abra o Projeto do Audacity referente\n"
+"a este projeto."
+
+#: Project.cpp:2103
+msgid "Backup file detected"
+msgstr "Arquivo de backup detectado"
+
+#: Project.cpp:2117
+#: Project.cpp:2125
+#: xml/XMLWriter.cpp:306
msgid "Error opening file"
msgstr "Erro abrindo arquivo"
-#: Project.cpp:1846
+#: Project.cpp:2131
#, c-format
-msgid "File may be invalid or corrupted: \n"
+msgid ""
+"File may be invalid or corrupted: \n"
"%s"
-msgstr "O arquivo pode estar corrompido ou inválido: \n"
+msgstr ""
+"O arquivo pode estar corrompido ou inválido: \n"
"%s"
-#: Project.cpp:1847
+#: Project.cpp:2132
msgid "Error opening file or project"
msgstr "Erro ao abrir arquivo ou projeto"
-#: Project.cpp:1867
+#: Project.cpp:2152
msgid "Audacity was unable to convert an Audacity 1.0 project to the new project format."
msgstr "O Audacity não pôde converter o arquivo da versão 1.0."
-#: Project.cpp:1970
+#: Project.cpp:2259
msgid "Could not remove old auto save file"
msgstr "Não foi possÃvel recuperar os arquivos na pasta de auto-recuperação"
-#: Project.cpp:1972
+#: Project.cpp:2261
msgid "Project was recovered"
msgstr "O projeto foi recuperado"
-#: Project.cpp:1972
+#: Project.cpp:2261
msgid "Recover"
msgstr "Recuperar"
-#: Project.cpp:2001
+#: Project.cpp:2290
msgid "Project checker repaired file"
msgstr "A Verificação Automática de Projeto reparou o arquivo"
-#: Project.cpp:2001
+#: Project.cpp:2290
#: effects/Repair.h:29
msgid "Repair"
msgstr "Reparar"
-#: Project.cpp:2112
+#: Project.cpp:2431
#, c-format
msgid "Couldn't find the project data folder: \"%s\""
msgstr "Não foi encontrado o arquivo de projeto na pasta: \"%s\""
-#: Project.cpp:2155
+#: Project.cpp:2475
#, c-format
-msgid "This file was saved using Audacity %s.\n"
+msgid ""
+"This file was saved using Audacity %s.\n"
"You are using Audacity %s - you need to upgrade to\n"
"a newer version to open this file."
-msgstr "Este arquivo foi feito no Audacity versão %s.\n"
+msgstr ""
+"Este arquivo foi feito no Audacity versão %s.\n"
"Você está utilizando a versão %s do programa.\n"
"Visite http://audacity.sf.net e atualize o Audacity para abrir este arquivo."
-#: Project.cpp:2159
+#: Project.cpp:2479
msgid "Can't open project file"
msgstr "Não foi possÃvel abrir o arquivo de projeto"
-#: Project.cpp:2193
+#: Project.cpp:2513
#, c-format
-msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+msgid ""
+"This file was saved by Audacity %s.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
-msgstr "Este arquivo foi salvo pelo Audacity %s, e\n"
+msgstr ""
+"Este arquivo foi salvo pelo Audacity %s, e\n"
"o formato de arquivo mudou desde então. \n"
"O Audacity pode tentar abrir este arquivo\n"
"mas provavelmente haverão problemas.\n"
@@ -3115,8 +3291,9 @@ msgstr "Este arquivo foi salvo pelo Audacity %s, e\n"
"\n"
"Tem certeza que deseja abrir este arquivo?"
-#: Project.cpp:2537
-msgid "Your project is now empty.\n"
+#: Project.cpp:2711
+msgid ""
+"Your project is now empty.\n"
"If saved, the project will have no tracks.\n"
"\n"
"To save any previously open tracks:\n"
@@ -3125,55 +3302,70 @@ msgid "Your project is now empty.\n"
"\n"
"Save anyway?"
msgstr ""
+"O projeto será salvo vazio!!\n"
+"\n"
+"Para salvar as faixas abertas anteriormente,\n"
+"clique Cancelar, Editar > Desfazer até que\n"
+"todas as faixas estejam novamente abertas,\n"
+"só então selecione Arquivo > Salvar projeto.\n"
+"\n"
+"Deseja salvar assim mesmo?"
-#: Project.cpp:2538
+#: Project.cpp:2712
msgid "Warning empty project"
-msgstr ""
+msgstr "Aviso projeto em branco"
-#: Project.cpp:2591
+#: Project.cpp:2821
#, c-format
-msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+msgid ""
+"Could not save project. Perhaps %s \n"
+"is not writable or the disk is full."
msgstr ""
+"Não foi possÃvel salvar o projeto.\n"
+"O disco %s pode estar cheio ou protegido\n"
+"contra gravação."
-#: Project.cpp:2428
-#: Project.cpp:2442
+#: Project.cpp:2823
+#: Project.cpp:2849
msgid "Error saving project"
msgstr "Erro salvando projeto"
-#: Project.cpp:2504
+#: Project.cpp:2847
+#: Project.cpp:3950
+#: Tags.cpp:1203
+#: effects/Equalization.cpp:1095
+msgid "Couldn't write to file \"%s\": %s"
+msgstr "Não foi possÃvel gravar no arquivo \"%s\": %s"
+
+#: Project.cpp:2927
#, c-format
msgid "Saved %s"
msgstr "Salvo como %s"
-#: Project.cpp:2586
+#: Project.cpp:3080
#, c-format
msgid "Imported '%s'"
-msgstr "Importado: '%s'"
+msgstr "Importado '%s'"
-#: Menus.cpp:3649
-#: Project.cpp:2587
-#: Project.cpp:2612
-#: import/ImportPCM.cpp:440
-#: import/ImportPCM.cpp:484
+#: Project.cpp:3081
msgid "Import"
msgstr "Importar"
-#: Project.cpp:2639
-#: Project.cpp:2647
+#: Project.cpp:3116
msgid "Error importing"
msgstr "Erro importando "
-#: Project.cpp:2681
+#: Project.cpp:3163
msgid "Save Speech As:"
msgstr "Salvar Fala como:"
-#: Project.cpp:2683
+#: Project.cpp:3165
msgid "Windows PCM Audio file (*.wav)|*.wav"
msgstr "Arquivo de áudio Windows PCM (*.wav)|*.wav"
-#: Project.cpp:2894
-msgid "Audacity compressed project files (.aup) save your work in a smaller, compressed (.ogg) format. \n"
+#: Project.cpp:3172
+msgid ""
+"Audacity compressed project files (.aup) save your work in a smaller, compressed (.ogg) format. \n"
"Compressed project files are a good way to transmit your project online, because they are much smaller. \n"
"To open a compressed project takes longer than usual, as it imports each compressed track. \n"
"\n"
@@ -3181,165 +3373,370 @@ msgid "Audacity compressed project files (.aup) save your work in a smaller, com
"When you want to save a file that can be opened by other programs, select one of the\n"
"Export commands."
msgstr ""
+"Arquivos de projeto comprimidos do Audacity (.AUP) permitem que se salve todo o projeto\n"
+"em formato compactado (.OGG) e envie pela Internet, devido ao seu tamanho reduzido. \n"
+"A abertura de arquivos comprimidos demora mais tempo que o normal.\n"
+"No entanto, a maioria dos programas de edição de áudio não\n"
+"é capaz de abrir estes arquivos. \n"
+"Para salvar em um formato executável por outros programas de edição, selecione Exportar."
-#: Project.cpp:2897
-msgid "You are saving an Audacity project file (.aup).\n"
+#: Project.cpp:3175
+msgid ""
+"You are saving an Audacity project file (.aup).\n"
"\n"
"Saving a project creates a file that only Audacity can open.\n"
"\n"
"To save an audio file for other programs, use one of the \"File > Export\" commands.\n"
msgstr ""
+"Você está salvando um Arquivo de Projeto do Audacity (.aup)\n"
+"\n"
+"Salvar um projeto cria um arquivo que apenas o Audacity consegue abrir.\n"
+"\n"
+"Para salvar um arquivo de áudio que possa ser editado em outros programas,\n"
+"utilize um dos comandos disponÃveis em \"Arquivo > Exportar\".\n"
-#: Project.cpp:2692
+#: Project.cpp:3177
+msgid "Save Project As..."
+msgstr "Salvar projeto como..."
+
+#: Project.cpp:3179
msgid "Audacity projects (*.aup)|*.aup"
msgstr "Projeto do Audacity (*.aup)|*.aup"
-#: Project.cpp:2736
+#: Project.cpp:3228
msgid "Created new project"
msgstr "Criado novo projeto"
-#: Project.cpp:2856
+#: Project.cpp:3372
#, c-format
msgid "Deleted %.2f seconds at t=%.2f"
msgstr "Apagados %.2f segundos em t=%.2f"
-#: Project.cpp:2859
-#: effects/Equalization.cpp:1262
-#: effects/Equalization.cpp:2593
+#: Project.cpp:3375
+#: effects/Equalization.cpp:1295
+#: effects/Equalization.cpp:2647
msgid "Delete"
msgstr "Apagar"
-#: Project.cpp:3052
+#: Project.cpp:3569
#, c-format
msgid "Disk space remains for recording %d hours and %d minutes."
msgstr "Espaço em disco suficiente para %d horas e %d minutos."
-#: Project.cpp:3055
+#: Project.cpp:3572
#, c-format
msgid "Disk space remains for recording 1 hour and %d minutes."
msgstr "Espaço em disco suficiente para 1 hora e %d minutos."
-#: Project.cpp:3058
+#: Project.cpp:3575
#, c-format
msgid "Disk space remains for recording %d minutes."
msgstr "Espaço em disco suficiente para %d minutos."
-#: Project.cpp:3061
+#: Project.cpp:3578
#, c-format
msgid "Disk space remains for recording %d seconds."
msgstr "Espaço em disco suficiente para %d segundos."
-#: Project.cpp:3064
+#: Project.cpp:3581
msgid "Out of disk space"
msgstr "Disco cheio"
-#: Project.cpp:3336
+#: Project.cpp:3594
#, c-format
msgid "Import(s) complete. Running %d on-demand waveform calculations. Overall %2.0f%% complete."
-msgstr ""
+msgstr "Importação completa. Executando %d cálculos de formato de onde sob-demanda. Total de %2.0f%% completo."
-#: Project.cpp:3339
+#: Project.cpp:3597
#, c-format
msgid "Import complete. Running an on-demand waveform calculation. %2.0f%% complete."
-msgstr ""
+msgstr "Importação completa. Executando cálculo de forma de onda sob demanda. %2.0f%% completo."
-#: Project.cpp:3342
+#: Project.cpp:3881
msgid "Could not remove old autosave file: "
msgstr "Não foi possÃvel apagar o arquivo para salvar automaticamente:"
-#: Project.cpp:3383
+#: Project.cpp:3922
msgid "New Project"
msgstr "Novo projeto"
-#: Project.cpp:3396
+#: Project.cpp:3952
msgid "Error writing autosave file"
msgstr "Não foi possÃvel gravar no arquivo para salvar automaticamente"
-#: Project.cpp:3421
+#: Project.cpp:3967
msgid "Could not create autosave file: "
msgstr "Não foi possÃvel criar o arquivo para salvar automaticamente:"
-#: Project.cpp:3447
+#: Project.cpp:3993
#, c-format
msgid "Actual Rate: %d"
msgstr "Taxa atual %d"
-#: Resample.cpp:42
+#: Resample.cpp:62
msgid "Libresample by Dominic Mazzoni and Julius Smith"
msgstr "Libresample por Dominic Mazzoni e Julius Smith"
-#: Resample.cpp:53
+#: Resample.cpp:73
msgid "High-quality Sinc Interpolation"
msgstr "Interpol. sincron. de alta qualidade"
-#: Resample.cpp:55
+#: Resample.cpp:75
msgid "Fast Sinc Interpolation"
msgstr "Interpolação sincronizada rápida"
-#: Resample.cpp:125
+#: Resample.cpp:141
msgid "Libsamplerate by Erik de Castro Lopo"
msgstr "Libsamplerate por Erik de Castro Lopo"
-#: Resample.cpp:218
+#: Resample.cpp:230
#, c-format
msgid "Libsamplerate error: %d\n"
msgstr "Erro em LibSampleRate: %d\n"
-#: Resample.cpp:240
-#: Resample.cpp:250
+#: Resample.cpp:252
+#: Resample.cpp:262
msgid "Resampling disabled."
msgstr "Reamostragem desabilitada."
-#. i18n-hint: Audio data bit depth (precison): 16-bit integers
+#. i18n-hint: Audio data bit depth (precision): 16-bit integers
#: SampleFormat.cpp:66
msgid "16-bit PCM"
msgstr "16 bit PCM"
-#. i18n-hint: Audio data bit depth (precison): 24-bit integers
+#. i18n-hint: Audio data bit depth (precision): 24-bit integers
#: SampleFormat.cpp:69
msgid "24-bit PCM"
msgstr "24 bit PCM"
-#. i18n-hint: Audio data bit depth (precison): 32-bit floating point
+#. i18n-hint: Audio data bit depth (precision): 32-bit floating point
#: SampleFormat.cpp:72
msgid "32-bit float"
msgstr "32-bit flut"
-#: Screenshot.cpp:384
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr "Quadro de captura da janela"
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr "Escolha uma pasta para os arquivos exportados"
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr "Salvar imagens em:"
+
+#: Screenshot.cpp:328
+#: export/ExportMultiple.cpp:242
+#: prefs/DirectoriesPrefs.cpp:94
+msgid "Choose..."
+msgstr "Selecionar..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr "Capturar tela ou janela completas"
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr "Redimensionar a menor"
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr "Redimensionar a maior"
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr "Fundo azul"
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr "Fundo Branco"
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr "Capturar apenas janela "
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr "Capturar janela completa"
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr "Capturar janela extendida"
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr "Capturar tela cheia"
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr "Aguarde 5 segundos e capture a janela acima das outras"
+
+#: Screenshot.cpp:369
+#: effects/Normalize.cpp:74
+#: effects/Normalize.cpp:75
+msgid "false"
+msgstr "sem"
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr "Capturar parte da janela do projeto"
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr "Todas as barras de ferramentas"
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr "Barra de Seleção"
+
+#: Screenshot.cpp:381
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr "Ferramentas"
+
+#: Screenshot.cpp:382
+#: effects/Contrast.cpp:410
+#: toolbars/ControlToolBar.cpp:83
+#: toolbars/ControlToolBar.cpp:243
+msgid "Control"
+msgstr "Controle"
+
+#: Screenshot.cpp:388
+#: effects/LoadEffects.cpp:114
+#: toolbars/MixerToolBar.cpp:59
+#: toolbars/MixerToolBar.cpp:245
+msgid "Mixer"
+msgstr "Mixagem"
+
+#: Screenshot.cpp:389
+#: toolbars/MeterToolBar.cpp:50
+#: toolbars/MeterToolBar.cpp:114
+msgid "Meter"
+msgstr "Medição"
+
+#: Screenshot.cpp:390
+#: toolbars/EditToolBar.cpp:76
+#: toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr "Editar"
+
+#: Screenshot.cpp:391
+#: prefs/DevicePrefs.cpp:131
+#: prefs/DevicePrefs.cpp:144
+#: prefs/MidiIOPrefs.cpp:137
+#: prefs/MidiIOPrefs.cpp:150
+#: toolbars/DeviceToolBar.cpp:57
+#: toolbars/DeviceToolBar.cpp:196
+msgid "Device"
+msgstr "Dispositivo"
+
+#: Screenshot.cpp:392
+#: toolbars/TranscriptionToolBar.cpp:84
+#: toolbars/TranscriptionToolBar.cpp:253
+msgid "Transcription"
+msgstr "Transcrição"
+
+#: Screenshot.cpp:398
+#: TrackPanel.cpp:442
+#: TrackPanel.cpp:443
+msgid "Track Panel"
+msgstr "Painel de Faixas"
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr "Régua"
+
+#: Screenshot.cpp:400
+#: export/ExportMultiple.cpp:285
+#: export/ExportMultiple.cpp:287
+#: prefs/TracksPrefs.cpp:31
+msgid "Tracks"
+msgstr "Faixas"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr "Primeira faixa"
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr "Segunda faixa"
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr "Escala"
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr "Um segundo"
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr "Dez seg"
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr "Um min"
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr "Cinco min"
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr "Uma hora"
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr "Faixas menores"
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr "Faixas médias"
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr "Faixas altas"
+
+#: Screenshot.cpp:599
msgid "Saved "
msgstr "Salvo"
-#: Screenshot.cpp:387
+#: Screenshot.cpp:602
msgid "Error trying to save file: "
msgstr "Erro ao abrir o arquivo: "
-#: Sequence.cpp:732
-#: Sequence.cpp:742
-#: Sequence.cpp:749
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr "Escolha uma pasta para salvar as imagens de tela"
+
+#: Sequence.cpp:799
+#: Sequence.cpp:809
+#: Sequence.cpp:816
msgid "Gap detected in project file\n"
msgstr "Interrupção detectada no arquivo de projeto\n"
-#: ShuttleGui.cpp:1852
-#: effects/Effect.cpp:342
-#: effects/audiounits/AudioUnitEffect.cpp:872
+#: ShuttleGui.cpp:2034
+#: effects/Effect.cpp:436
+#: effects/audiounits/AudioUnitEffect.cpp:851
msgid "Pre&view"
msgstr "&Testar"
-#: ShuttleGui.cpp:1859
+#: ShuttleGui.cpp:2041
msgid "&Debug"
msgstr "&Debug"
#: SoundActivatedRecord.cpp:36
msgid "Sound Activated Record"
-msgstr ""
+msgstr "Gravação ativada por som"
#: SoundActivatedRecord.cpp:58
msgid "Activation level (dB):"
-msgstr ""
+msgstr "NÃvel de ativação (dB):"
#: SplashDialog.cpp:60
-msgid "&Welcome to Audacity!"
-msgstr "&Bem-vindo ao Audacity!"
+msgid "Welcome to Audacity!"
+msgstr "Bem-vindo ao Audacity!"
#: SplashDialog.cpp:112
msgid "Don't show this again at start up"
@@ -3362,7 +3759,6 @@ msgid "Track Number"
msgstr "Número da faixa"
#: Tags.cpp:633
-#: Tags.cpp:2138
msgid "Year"
msgstr "Ano"
@@ -3371,709 +3767,722 @@ msgid "Genre"
msgstr "Gênero"
#: Tags.cpp:635
-#: Tags.cpp:2148
-#: prefs/MousePrefs.cpp:96
+#: prefs/MousePrefs.cpp:100
msgid "Comments"
msgstr "Comentários"
-#: Tags.cpp:777
+#: Tags.cpp:788
msgid "Use arrow keys (or RETURN key after editing) to navigate fields."
-msgstr ""
+msgstr "Use as setas do teclado (ou Enter após editar) para navegar entre os campos."
-#: Tags.cpp:802
-msgid "Tag Name"
-msgstr "Nome da Tag"
+#: Tags.cpp:812
+msgid "Tag"
+msgstr "Tag:"
-#: Tags.cpp:803
-msgid "Tag Value"
+#: Tags.cpp:813
+msgid "Value"
msgstr "Valor da Tag"
-#: Tags.cpp:818
-#: Tags.cpp:1476
-#: prefs/KeyConfigPrefs.cpp:116
-msgid "&Clear"
+#: Tags.cpp:828
+msgid "Cl&ear"
msgstr "&Limpar"
-#: Tags.cpp:824
+#: Tags.cpp:834
msgid "Genres"
msgstr "Gêneros"
-#: Tags.cpp:826
+#: Tags.cpp:838
msgid "E&dit..."
-msgstr ""
+msgstr "E&ditar..."
-#: Tags.cpp:827
+#: Tags.cpp:839
msgid "Rese&t..."
-msgstr ""
+msgstr "Rese&t..."
-#: Tags.cpp:834
-#: Tags.cpp:1460
-#: Tags.cpp:1988
+#: Tags.cpp:844
msgid "Template"
msgstr "Modelo"
-#: Tags.cpp:838
-#: Tags.cpp:1464
-#: Tags.cpp:1992
-#: prefs/KeyConfigPrefs.cpp:126
+#: Tags.cpp:848
+#: prefs/KeyConfigPrefs.cpp:167
msgid "&Load..."
msgstr "&Carregar..."
-#: Tags.cpp:839
-#: Tags.cpp:1465
-#: Tags.cpp:1993
-#: prefs/KeyConfigPrefs.cpp:125
+#: Tags.cpp:849
+#: prefs/KeyConfigPrefs.cpp:168
msgid "&Save..."
msgstr "&Salvar"
-#: Tags.cpp:841
-#: Tags.cpp:1467
-#: Tags.cpp:1995
-msgid "S&et Default"
-msgstr "A&juste padrão"
+#: Tags.cpp:851
+msgid "Set De&fault"
+msgstr "Ajustar &padrão"
-#: Tags.cpp:991
-#: Tags.cpp:1630
-#: Tags.cpp:2359
+#: Tags.cpp:1001
msgid "Edit Genres"
msgstr "Editar Gêneros"
-#: Tags.cpp:1024
-#: Tags.cpp:1036
-#: Tags.cpp:1052
-#: Tags.cpp:1065
-#: Tags.cpp:1668
-#: Tags.cpp:1680
-#: Tags.cpp:1696
-#: Tags.cpp:1709
-#: Tags.cpp:2402
-#: Tags.cpp:2414
-#: Tags.cpp:2430
-#: Tags.cpp:2443
+#: Tags.cpp:1034
+#: Tags.cpp:1046
+#: Tags.cpp:1061
+#: Tags.cpp:1074
msgid "Reset Genres"
msgstr "Reiniciar Gêneros"
-#: Tags.cpp:1024
-#: Tags.cpp:1065
-#: Tags.cpp:1668
-#: Tags.cpp:1709
-#: Tags.cpp:2402
-#: Tags.cpp:2443
+#: Tags.cpp:1034
+#: Tags.cpp:1074
msgid "Unable to save genre file."
msgstr "Não foi possÃvel salvar o arquivo de Gêneros."
-#: Tags.cpp:1035
-#: Tags.cpp:1679
-#: Tags.cpp:2413
+#: Tags.cpp:1045
msgid "Are you sure you want to reset the genre list to defaults?"
msgstr "Tem certeza que deseja reiniciar a lista de Gêneros para padrão?"
-#: Tags.cpp:1052
-#: Tags.cpp:1696
-#: Tags.cpp:2430
+#: Tags.cpp:1061
msgid "Unable to open genre file."
msgstr "Não foi possÃvel abrir o arquivo de Gêneros."
-#: Tags.cpp:1084
+#: Tags.cpp:1096
msgid "Load Metadata As:"
-msgstr ""
+msgstr "Abrir metadados como:"
-#: Tags.cpp:1112
-#: Tags.cpp:1763
-#: Tags.cpp:2486
+#: Tags.cpp:1121
msgid "Error loading metadata"
msgstr "Erro ao carregar metadados"
-#: Tags.cpp:1087
-#: Tags.cpp:1141
-#: Tags.cpp:1742
-#: Tags.cpp:1778
-#: Tags.cpp:2465
-#: Tags.cpp:2501
+#: Tags.cpp:1150
msgid "Save Metadata As:"
msgstr "Salvar metadados como:"
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr "Erro ao salvar arquivo de tags"
+
#: Theme.cpp:638
#, c-format
-msgid "Audacity could not write file:\n"
+msgid ""
+"Audacity could not write file:\n"
" %s."
-msgstr "O Audacity não pode gravar o arquivo:\n"
+msgstr ""
+"O Audacity não pode gravar o arquivo:\n"
" %s."
#: Theme.cpp:656
#, c-format
-msgid "Audacity could not open file:\n"
+msgid ""
+"Audacity could not open file:\n"
" %s\n"
"for writing."
-msgstr "O Audacity não pode abrir o arquivo:\n"
+msgstr ""
+"O Audacity não pode abrir o arquivo:\n"
" %s\n"
"para gravação."
#: Theme.cpp:664
#, c-format
-msgid "Audacity could not write images to file:\n"
+msgid ""
+"Audacity could not write images to file:\n"
" %s."
-msgstr "O Audacity não pode gravar as imagens para o arquivo:\n"
+msgstr ""
+"O Audacity não pode gravar as imagens para o arquivo:\n"
" %s."
#: Theme.cpp:799
#, c-format
-msgid "Audacity could not find file:\n"
+msgid ""
+"Audacity could not find file:\n"
" %s.\n"
"Theme not loaded."
-msgstr "O Audacity não localizou o arquivo:\n"
+msgstr ""
+"O Audacity não localizou o arquivo:\n"
" %s.\n"
"Tema não carregado."
#: Theme.cpp:807
#: Theme.cpp:896
#, c-format
-msgid "Audacity could not load file:\n"
+msgid ""
+"Audacity could not load file:\n"
" %s.\n"
"Bad png format perhaps?"
-msgstr "O Audacity não pôde carregar o arquivo:\n"
+msgstr ""
+"O Audacity não pôde carregar o arquivo:\n"
" %s.\n"
"Provável problema no arquivo PNG. "
#: Theme.cpp:823
-msgid "Audacity could not read its default theme.\n"
+msgid ""
+"Audacity could not read its default theme.\n"
"Please report the problem."
-msgstr "O Audacity não pode ler o tema padrão.\n"
+msgstr ""
+"O Audacity não pode ler o tema padrão.\n"
"Por favor, relate este problema em nosso site."
#: Theme.cpp:918
#, c-format
-msgid "None of the expected theme component files\n"
+msgid ""
+"None of the expected theme component files\n"
" were found in:\n"
" %s."
-msgstr "Nenhum dos componentes de tema\n"
+msgstr ""
+"Nenhum dos componentes de tema\n"
" foi encontrado em:\n"
" %s."
#: Theme.cpp:942
-#: effects/NoiseRemoval.cpp:173
+#: effects/NoiseRemoval.cpp:172
#, c-format
-msgid "Could not create directory:\n"
+msgid ""
+"Could not create directory:\n"
" %s"
-msgstr "Não foi possÃvel criar a pasta:\n"
+msgstr ""
+"Não foi possÃvel criar a pasta:\n"
" %s"
#: Theme.cpp:963
#, c-format
-msgid "Audacity could not save file:\n"
+msgid ""
+"Audacity could not save file:\n"
" %s"
-msgstr "O Audacity não pôde salvar o arquivo:\n"
+msgstr ""
+"O Audacity não pôde salvar o arquivo:\n"
" %s"
#: Theme.cpp:975
#, c-format
-msgid "All required files in:\n"
+msgid ""
+"All required files in:\n"
" %s\n"
"were already present."
-msgstr "Todos os arquivos necessários em:\n"
+msgstr ""
+"Todos os arquivos necessários em:\n"
" %s\n"
"estão presentes."
-#: SmartRecordDialog.cpp:226
-#: SmartRecordDialog.cpp:307
-#: TimeDialog.cpp:53
-#: effects/Noise.cpp:235
-#: effects/ToneGen.cpp:329
-#: effects/ToneGen.cpp:374
+#: TimeDialog.h:29
+#: TimerRecordDialog.cpp:233
+#: TimerRecordDialog.cpp:354
+#: TimerRecordDialog.cpp:358
+#: effects/DtmfGen.cpp:446
+#: effects/Noise.cpp:191
+#: effects/Noise.cpp:207
+#: effects/ToneGen.cpp:279
+#: effects/ToneGen.cpp:291
+#: effects/ToneGen.cpp:323
+#: effects/ToneGen.cpp:335
msgid "Duration"
msgstr "Duração"
-#: SmartRecordDialog.cpp:68
+#: TimeTrack.cpp:44
+msgid "Time Track"
+msgstr "Faixa de Tempo"
+
+#: TimerRecordDialog.cpp:69
msgid "Audacity Timer Record"
msgstr "Gravação programada"
-#: SmartRecordDialog.cpp:223
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr "Duração é zero. Nada será gravado."
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr "Erro de duração"
+
+#: TimerRecordDialog.cpp:230
msgid "Recording start"
msgstr "InÃcio da gravação"
-#: SmartRecordDialog.cpp:224
+#: TimerRecordDialog.cpp:231
msgid "Recording end"
msgstr "Final da gravação"
-#: TimerRecordDialog.cpp:230
+#: TimerRecordDialog.cpp:237
msgid "Audacity Timer Record Progress"
-msgstr ""
+msgstr "Gravação programada do Audacity em progresso"
-#: SmartRecordDialog.cpp:273
+#: TimerRecordDialog.cpp:316
msgid "Start Date and Time"
msgstr "Data e hora de inÃcio"
-#: TimerRecordDialog.cpp:274
+#: TimerRecordDialog.cpp:323
msgid "Start Date"
-msgstr ""
+msgstr "Data inicial"
-#: SmartRecordDialog.cpp:290
+#: TimerRecordDialog.cpp:335
msgid "End Date and Time"
msgstr "Data e hora de término"
-#: TimerRecordDialog.cpp:294
+#: TimerRecordDialog.cpp:343
msgid "End Date"
-msgstr ""
+msgstr "Data de término"
#. i18n-hint: A time specification like "Sunday 28th October 2007 15:16:17 GMT"
#. * but hopefully translated by wxwidgets will be inserted into this
-#: SmartRecordDialog.cpp:383
+#: TimerRecordDialog.cpp:430
#, c-format
msgid "Waiting to start recording at %s.\n"
msgstr "Iniciando a gravação em %s .\n"
-#: TimerRecordDialog.cpp:382
+#: TimerRecordDialog.cpp:436
msgid "Audacity Timer Record - Waiting for Start"
-msgstr ""
+msgstr "Gravação progaramada do Audacity - Aguardando para iniciar"
-#: TrackPanel.cpp:464
-#: TrackPanel.cpp:465
-msgid "Track Panel"
-msgstr "Painel de Faixas"
-
-#: TrackPanel.cpp:548
-#: export/ExportPCM.cpp:133
-#: prefs/QualityPrefs.cpp:97
+#: TrackPanel.cpp:596
+#: prefs/QualityPrefs.cpp:99
msgid "Other..."
msgstr "Outra..."
-#: TrackPanel.cpp:556
-#: TrackPanel.cpp:580
-#: TrackPanel.cpp:589
-#: TrackPanel.cpp:597
+#: TrackPanel.cpp:604
+#: TrackPanel.cpp:627
+#: TrackPanel.cpp:636
+#: TrackPanel.cpp:644
msgid "Name..."
msgstr "Nome..."
-#: TrackPanel.cpp:558
-#: TrackPanel.cpp:582
-#: TrackPanel.cpp:593
-#: TrackPanel.cpp:599
+#: TrackPanel.cpp:606
+#: TrackPanel.cpp:629
+#: TrackPanel.cpp:640
+#: TrackPanel.cpp:646
msgid "Move Track Up"
msgstr "Mover faixa acima"
-#: TrackPanel.cpp:559
-#: TrackPanel.cpp:583
-#: TrackPanel.cpp:594
-#: TrackPanel.cpp:600
+#: TrackPanel.cpp:607
+#: TrackPanel.cpp:630
+#: TrackPanel.cpp:641
+#: TrackPanel.cpp:647
msgid "Move Track Down"
msgstr "Mover faixa abaixo"
-#: TrackPanel.cpp:561
-#: effects/ToneGen.cpp:325
+#: TrackPanel.cpp:609
+#: effects/ToneGen.cpp:275
+#: prefs/TracksPrefs.cpp:56
msgid "Waveform"
msgstr "Forma de onda"
-#: TrackPanel.cpp:562
+#: TrackPanel.cpp:610
+#: prefs/TracksPrefs.cpp:57
msgid "Waveform (dB)"
msgstr "Forma de onda (dB)"
-#: TrackPanel.cpp:565
+#: TrackPanel.cpp:612
+#: prefs/TracksPrefs.cpp:59
msgid "Spectrum log(f)"
msgstr "Log(f) do espectro"
-#: TrackPanel.cpp:567
+#. i18n-hint: short form of 'logarithm'
+#: TrackPanel.cpp:613
+#: prefs/TracksPrefs.cpp:60
msgid "Pitch (EAC)"
msgstr "Altura (EAC)"
-#: TrackPanel.cpp:569
-#: TrackPanel.cpp:6091
+#: TrackPanel.cpp:615
+#: TrackPanel.cpp:6200
msgid "Mono"
msgstr "Mono"
-#: TrackPanel.cpp:570
-#: TrackPanel.cpp:6090
+#: TrackPanel.cpp:616
+#: TrackPanel.cpp:6199
msgid "Left Channel"
msgstr "Canal esquerdo"
-#: TrackPanel.cpp:571
-#: TrackPanel.cpp:6090
+#: TrackPanel.cpp:617
+#: TrackPanel.cpp:6199
msgid "Right Channel"
msgstr "Canal direito"
-#: TrackPanel.cpp:572
+#: TrackPanel.cpp:618
msgid "Make Stereo Track"
msgstr "Criar faixa estéreo"
-#: TrackPanel.cpp:573
+#: TrackPanel.cpp:619
msgid "Split Stereo Track"
msgstr "Separar faixas de estéreo"
-#: TrackPanel.cpp:575
+#: TrackPanel.cpp:620
+msgid "Split Stereo to Mono"
+msgstr "Faixa Estéreo para Mono"
+
+#: TrackPanel.cpp:622
msgid "Set Sample Format"
msgstr "Taxa de bits da amostragem"
-#: TrackPanel.cpp:577
-#: TrackPanel.cpp:6320
+#: TrackPanel.cpp:624
+#: TrackPanel.cpp:6461
msgid "Set Rate"
msgstr "Taxa de amostragem"
-#: TrackPanel.cpp:585
+#: TrackPanel.cpp:632
msgid "Up Octave"
msgstr "Subir oitava"
-#: TrackPanel.cpp:586
+#: TrackPanel.cpp:633
msgid "Down Octave"
msgstr "Descer oitava"
-#: TrackPanel.cpp:591
+#: TrackPanel.cpp:638
msgid "Font..."
msgstr "Fonte..."
-#: TrackPanel.cpp:602
+#: TrackPanel.cpp:649
msgid "Set Range..."
msgstr "Ajuste da taxa..."
-#: TrackPanel.cpp:606
-#: toolbars/EditToolBar.cpp:135
+#: TrackPanel.cpp:653
+#: toolbars/EditToolBar.cpp:132
+#: toolbars/EditToolBar.cpp:191
msgid "Copy"
msgstr "Copiar"
-#: TrackPanel.cpp:1272
+#: TrackPanel.cpp:1302
msgid "Click to vertically zoom in, Shift-click to zoom out, Drag to create a particular zoom region."
msgstr "Clique para aumentar o zoom verticalmente, Shift+clique para diminuir o zoom e Arrastar para aumentar o zoom na área selecionada."
-#: TrackPanel.cpp:1277
+#: TrackPanel.cpp:1307
msgid "Drag the label vertically to change the order of the tracks."
msgstr "Arraste o tÃtulo verticalmente para alterar a ordem das faixas."
-#: TrackPanel.cpp:1297
+#: TrackPanel.cpp:1327
msgid "Click and drag to adjust relative size of stereo tracks."
msgstr "Clique e arraste para ajustar o tamanho de cada faixa em estéreo"
-#: TrackPanel.cpp:1300
+#: TrackPanel.cpp:1330
msgid "Click and drag to resize the track."
msgstr "Clique e arraste para ajustar o tamanho da faixa"
-#: TrackPanel.cpp:1331
+#: TrackPanel.cpp:1361
msgid "Drag one or more label boundaries"
msgstr "Arrasta as bordas de um ou mais tÃtulos"
-#: TrackPanel.cpp:1332
+#: TrackPanel.cpp:1362
msgid "Drag label boundary"
msgstr "Arrasta as bordas do tÃtulo"
#. i18n-hint: This string is for the Mac OS, which uses Command-, as the shortcut for Preferences
-#: TrackPanel.cpp:1348
+#: TrackPanel.cpp:1378
msgid "Multi-Tool Mode: Cmd-, for Mouse and Keyboard Preferences"
msgstr "Modo multi-ferramenta: Cmd- para acessar as preferências de teclado e mouse."
#. i18n-hint: This string is for Windows and Linux, which uses Control-P as the shortcut for Preferences
-#: TrackPanel.cpp:1351
+#: TrackPanel.cpp:1381
msgid "Multi-Tool Mode: Ctrl-P for Mouse and Keyboard Preferences"
msgstr "Modo multi-ferramenta: Ctrl-P para acessar as preferências do mouse e teclado."
-#: TrackPanel.cpp:1371
+#: TrackPanel.cpp:1427
msgid "Click and drag to move left selection boundary."
msgstr "Clique e arraste para mover a seleção à esquerda"
-#: TrackPanel.cpp:1376
+#: TrackPanel.cpp:1432
msgid "Click and drag to move right selection boundary."
msgstr "Clique e arraste para mover a seleção à direita"
-#: TrackPanel.cpp:1702
-#: TrackPanel.cpp:3993
-#: TrackPanel.cpp:4025
-#: TrackPanel.cpp:4280
-#: TrackPanel.cpp:6432
-#: TrackPanel.cpp:6452
+#: TrackPanel.cpp:1770
+#: TrackPanel.cpp:4054
+#: TrackPanel.cpp:4086
+#: TrackPanel.cpp:4348
+#: TrackPanel.cpp:6610
+#: TrackPanel.cpp:6630
msgid "Modified Label"
msgstr "TÃtulo modificado."
-#: TrackPanel.cpp:1703
-#: TrackPanel.cpp:3994
-#: TrackPanel.cpp:4026
-#: TrackPanel.cpp:4281
-#: TrackPanel.cpp:6433
-#: TrackPanel.cpp:6453
+#: TrackPanel.cpp:1771
+#: TrackPanel.cpp:4055
+#: TrackPanel.cpp:4087
+#: TrackPanel.cpp:4349
+#: TrackPanel.cpp:6611
+#: TrackPanel.cpp:6631
msgid "Label Edit"
msgstr "Editar faixa de tÃtulo"
-#: TrackPanel.cpp:1930
+#: TrackPanel.cpp:2009
msgid "Adjusted envelope."
msgstr "Envelope ajustado."
-#: TrackPanel.cpp:1931
-#: prefs/MousePrefs.cpp:115
+#: TrackPanel.cpp:2010
+#: prefs/MousePrefs.cpp:119
msgid "Envelope"
msgstr "Envelope"
-#: TrackPanel.cpp:2082
+#: TrackPanel.cpp:2160
msgid "Moved clip to another track"
msgstr "Clipe movido para outra faixa"
-#: TrackPanel.cpp:2086
+#: TrackPanel.cpp:2164
msgid "left"
msgstr "esquerda"
-#: TrackPanel.cpp:2086
+#: TrackPanel.cpp:2164
msgid "right"
msgstr "direita"
#. i18n-hint: %s is a direction like left or right
-#: TrackPanel.cpp:2088
+#: TrackPanel.cpp:2166
#, c-format
msgid "Time shifted tracks/clips %s %.02f seconds"
msgstr "Faixas deslizadas à %s em %.02f segundos"
-#: TrackPanel.cpp:2092
-#: prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:112
-#: prefs/MousePrefs.cpp:113
+#: TrackPanel.cpp:2170
+#: prefs/MousePrefs.cpp:115
+#: prefs/MousePrefs.cpp:116
+#: prefs/MousePrefs.cpp:117
msgid "Time-Shift"
msgstr "Deslizar"
-#: TrackPanel.cpp:2953
+#: TrackPanel.cpp:2964
msgid "To use Draw, choose 'Waveform' in the Track Drop-down Menu."
msgstr "Para usar a ferramenta de Desenho, selecione 'Formato de Onda' no menu da faixa selecionada."
-#: TrackPanel.cpp:2970
+#: TrackPanel.cpp:2981
msgid "To use Draw, zoom in further until you can see the individual samples."
msgstr "Para usar a ferramenta de desenho, aumente o zoom até visualizar as amostras individualmente."
-#: TrackPanel.cpp:3241
+#: TrackPanel.cpp:3255
msgid "Moved Sample"
msgstr "Amostragem movida"
-#: TrackPanel.cpp:3242
+#: TrackPanel.cpp:3256
msgid "Sample Edit"
msgstr "Editar amostra"
-#: TrackPanel.cpp:3341
+#: TrackPanel.cpp:3349
#, c-format
msgid "Removed track '%s.'"
msgstr "Removida faixa '%s.'"
-#: TrackPanel.cpp:3343
+#: TrackPanel.cpp:3351
msgid "Track Remove"
msgstr "Remover faixa"
# historico
-#: TrackPanel.cpp:3484
+#: TrackPanel.cpp:3497
msgid "Moved gain slider"
msgstr "Ajuste de ganho alterado"
# verifica se "moved" aparece qdo o usuario altera o valor no slider de balanço
# - aparece no historico!
-#: TrackPanel.cpp:3484
+#: TrackPanel.cpp:3497
msgid "Moved pan slider"
msgstr "Ajuste de balanço alterado"
#. i18n-hint: Title of the Gain slider, used to adjust the volume
-#: TrackPanel.cpp:3485
-#: TrackPanel.cpp:5726
-#: TrackPanel.cpp:7149
+#: TrackPanel.cpp:3498
+#: TrackPanel.cpp:5801
+#: TrackPanel.cpp:7254
msgid "Gain"
msgstr "Ganho"
#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: TrackPanel.cpp:3485
-#: TrackPanel.cpp:5664
-#: TrackPanel.cpp:7156
+#: TrackPanel.cpp:3498
+#: TrackPanel.cpp:5749
+#: TrackPanel.cpp:7262
msgid "Pan"
msgstr "Bal"
-#: TrackPanel.cpp:3610
-#: TrackPanel.cpp:6385
-#: effects/ChangePitch.cpp:284
+#: TrackPanel.cpp:3664
+#: TrackPanel.cpp:6561
msgid "up"
msgstr "acima"
-#: TrackPanel.cpp:3614
-#: TrackPanel.cpp:6386
-#: effects/ChangePitch.cpp:284
+#: TrackPanel.cpp:3668
+#: TrackPanel.cpp:6562
msgid "down"
msgstr "abaixo"
-#: TrackPanel.cpp:3621
-#: TrackPanel.cpp:6381
+#: TrackPanel.cpp:3675
+#: TrackPanel.cpp:6557
#, c-format
msgid "Moved '%s' %s"
msgstr "Movido '%s' %s"
-#: TrackPanel.cpp:3624
-#: TrackPanel.cpp:6387
+#: TrackPanel.cpp:3678
+#: TrackPanel.cpp:6563
msgid "Move Track"
msgstr "Mover faixa "
-#: TrackPanel.cpp:4180
+#: TrackPanel.cpp:4249
msgid "Expand"
msgstr "Expandir"
-#: TrackPanel.cpp:4180
+#: TrackPanel.cpp:4249
msgid "Expanded Cut Line"
msgstr "Linha de corte expandida"
-#: TrackPanel.cpp:4189
+#: TrackPanel.cpp:4258
msgid "Merge"
msgstr "Mesclar"
-#: TrackPanel.cpp:4189
+#: TrackPanel.cpp:4258
msgid "Merged Clips"
msgstr "Clipes mesclados"
-#: TrackPanel.cpp:4201
+#: TrackPanel.cpp:4269
+msgid "Remove"
+msgstr "Remover"
+
+#: TrackPanel.cpp:4269
msgid "Removed Cut Line"
msgstr "Removida linha de corte"
-#: TrackPanel.cpp:5664
+#: TrackPanel.cpp:5749
msgid "Adjusted Pan"
msgstr "Balanço ajustado"
-#: TrackPanel.cpp:5726
+#: TrackPanel.cpp:5801
msgid "Adjusted gain"
msgstr "Ganho ajustado"
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr ""
-
-#: TrackPanel.cpp:5918
+#: TrackPanel.cpp:6030
msgid "Can't delete track with active audio"
msgstr "Não é possÃvel deletar a faixa com o áudio ativo"
-#: TrackPanel.cpp:6071
+#: TrackPanel.cpp:6180
msgid "Stereo, "
msgstr "Estéreo, "
-#: TrackPanel.cpp:6074
+#: TrackPanel.cpp:6183
msgid "Mono, "
msgstr "Mono, "
-#: TrackPanel.cpp:6076
+#: TrackPanel.cpp:6185
msgid "Left, "
msgstr "Esquerdo,"
-#: TrackPanel.cpp:6078
+#: TrackPanel.cpp:6187
msgid "Right, "
msgstr "Direito"
-#: TrackPanel.cpp:6100
-#: TrackPanel.cpp:6225
+#: TrackPanel.cpp:6209
+#: TrackPanel.cpp:6371
#, c-format
msgid "Changed '%s' to %s"
msgstr "Alterado '%s' para %s"
-#: TrackPanel.cpp:6105
+#: TrackPanel.cpp:6212
msgid "Channel"
msgstr "Canal"
-#: TrackPanel.cpp:6118
+#: TrackPanel.cpp:6253
#, c-format
msgid "Split stereo track '%s'"
msgstr "Separar faixas de estéreo '%s'"
-#: TrackPanel.cpp:6139
+#: TrackPanel.cpp:6255
+msgid "Split Stereo to Mono '%s'"
+msgstr "Faixa Estéreo para Mono '%s'"
+
+#: TrackPanel.cpp:6287
#, c-format
msgid "Made '%s' a stereo track"
msgstr "Feito de '%s' uma faixa em estéreo"
-#: TrackPanel.cpp:6142
+#: TrackPanel.cpp:6290
msgid "Make Stereo"
msgstr "Criar faixa estéreo"
-#: TrackPanel.cpp:6189
+#: TrackPanel.cpp:6335
#, c-format
msgid "Changed '%s' to %d Hz"
msgstr "Alterado '%s' para %d Hz"
-#: TrackPanel.cpp:6191
+#: TrackPanel.cpp:6337
msgid "Rate Change"
msgstr "Alterar taxa"
-#: TrackPanel.cpp:6229
+#: TrackPanel.cpp:6375
msgid "Format Change"
msgstr "Alterar formato"
-#: TrackPanel.cpp:6349
+#: TrackPanel.cpp:6525
msgid "Change lower speed limit (%) to:"
msgstr "Alterar limite mÃnimo de velocidade (%) para:"
-#: TrackPanel.cpp:6350
-#: TrackPanel.cpp:6351
+#: TrackPanel.cpp:6526
+#: TrackPanel.cpp:6527
msgid "Lower speed limit"
msgstr "Limite inferior de velocidade"
-#: TrackPanel.cpp:6356
+#: TrackPanel.cpp:6532
msgid "Change upper speed limit (%) to:"
msgstr "Alterar limite máximo de velocidade (%) para:"
-#: TrackPanel.cpp:6357
-#: TrackPanel.cpp:6358
+#: TrackPanel.cpp:6533
+#: TrackPanel.cpp:6534
msgid "Upper speed limit"
msgstr "Limite máximo de velocidade"
-#: TrackPanel.cpp:6366
+#: TrackPanel.cpp:6542
#, c-format
msgid "Set range to '%d' - '%d'"
msgstr "Ajustar extensão para '%d' - '%d'"
-#: TrackPanel.cpp:6369
+#: TrackPanel.cpp:6545
msgid "Set Range"
msgstr "Ajuste da extensão"
-#: TrackPanel.cpp:6414
+#: TrackPanel.cpp:6592
msgid "Change track name to:"
msgstr "Alterar tÃtulo da faixa para:"
-#: TrackPanel.cpp:6415
+#: TrackPanel.cpp:6593
msgid "Track Name"
msgstr "Nome da faixa:"
-#: TrackPanel.cpp:6418
+#: TrackPanel.cpp:6596
#, c-format
msgid "Renamed '%s' to '%s'"
msgstr "Renaomeado o aqrquivo '%s' para '%s'"
-#: TrackPanel.cpp:6421
+#: TrackPanel.cpp:6599
msgid "Name Change"
msgstr "Alterar nome"
-#: TrackPanel.cpp:6487
+#: TrackPanel.cpp:6665
msgid "Label Track Font"
msgstr "Fonte da faixa de TÃtulo"
-#: TrackPanel.cpp:6499
+#: TrackPanel.cpp:6677
+#: TrackPanel.cpp:6683
msgid "Face name"
msgstr "Nome da fonte"
-#: TrackPanel.cpp:6508
+#: TrackPanel.cpp:6687
+#: TrackPanel.cpp:6694
msgid "Face size"
msgstr "Tamanho da fonte"
-#: TrackPanel.cpp:7076
+#: TrackPanel.cpp:6943
+msgid "Stereo, 999999Hz"
+msgstr "Estéreo, 999999Hz"
+
+#: TrackPanel.cpp:7203
msgid "Mute"
msgstr "Mudo"
-#: TrackPanel.cpp:7076
+#: TrackPanel.cpp:7203
msgid "Solo"
msgstr "Solo"
-#: TrackPanelAx.cpp:265
+#: TrackPanelAx.cpp:285
msgid "TrackView"
msgstr "VerFaixa"
-#: TrackPanelAx.cpp:273
+#: TrackPanelAx.cpp:293
msgid "Track Accessible out of sync"
msgstr "Faixa acessÃvel fora de sincronia"
-#: TrackPanelAx.cpp:281
+#: TrackPanelAx.cpp:301
#, c-format
msgid "Track %d"
msgstr "Faixa %d"
-#: TrackPanelAx.cpp:287
+#: TrackPanelAx.cpp:307
msgid " Mute On"
msgstr " Mudo Lig."
-#: TrackPanelAx.cpp:292
+#: TrackPanelAx.cpp:312
msgid " Solo On"
msgstr " Solo Lig."
-#: TrackPanelAx.cpp:296
+#: TrackPanelAx.cpp:316
msgid " Select On"
msgstr " Selecionar Lig."
@@ -4104,238 +4513,259 @@ msgstr "Alter. de sinal -- i.e.: %1.4f sd: (%1.4f)\n"
msgid "Direction Changes -- mean: %1.4f sd: (%1.4f)\n"
msgstr "Alter. de Direção -- i.e.: %1.4f sd: (%1.4f)\n"
-#: WaveTrack.cpp:85
+#: WaveTrack.cpp:87
msgid "Audio Track"
msgstr "Ãudio"
-#: WaveTrack.cpp:555
-#: WaveTrack.cpp:574
+#: WaveTrack.cpp:976
+#: WaveTrack.cpp:995
msgid "There is not enough room available to paste the selection"
msgstr "Não há espaço suficiente para colar a seleção"
-#: WaveTrack.cpp:1688
+#: WaveTrack.cpp:2021
msgid "There is not enough room available to expand the cut line"
msgstr "Não há espaço suficiente para expandir a linha de corte"
-#: commands/CommandManager.cpp:448
+#: commands/CommandManager.cpp:549
#, c-format
msgid "Plugins 1 to %i"
msgstr "Plugins 1a %i"
-#: commands/CommandManager.cpp:462
+#: commands/CommandManager.cpp:563
#, c-format
msgid "Plugins %i to %i"
msgstr "Plugins %i a %i"
-#: commands/CommandManager.cpp:857
-#, fuzzy
-msgid "Disallowed for some reason. Try selecting some audio first?"
-msgstr "Desabilitado. Experimente selecionar um trecho de áudio antes de executar o comando."
+#: commands/CommandManager.cpp:928
+msgid ""
+"There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
+msgstr ""
+"Houve um problema com a última operação executada.\n"
+"Caso ache que esta é uma falha, por favor, diga-nos\n"
+"exatamente o que ocorreu."
-#: commands/CommandManager.cpp:781
-msgid "You can only do this when playing and recording are\n"
+#: commands/CommandManager.cpp:932
+msgid ""
+"You can only do this when playing and recording are\n"
" stopped. [Pausing is not sufficient.]"
-msgstr "Só é possÃvel executar este comando com a reprodução parada,\n"
+msgstr ""
+"Só é possÃvel executar este comando com a reprodução parada,\n"
"não apenas em Pause."
-#: commands/CommandManager.cpp:783
-msgid "You must first select some stereo audio for this\n"
+#: commands/CommandManager.cpp:934
+msgid ""
+"You must first select some stereo audio for this\n"
" to use. [You can't use this with mono.]"
-msgstr "à necessário selecionar áudio estéreo para este comando.\n"
+msgstr ""
+"à necessário selecionar áudio estéreo para este comando.\n"
"[ImpossÃvel utilizar áudio mono]"
-#: commands/CommandManager.cpp:785
+#: commands/CommandManager.cpp:936
msgid "You must first select some audio for this to use."
msgstr "Você deve selecionar o áudio antes de executar este comando."
-#: commands/CommandManager.cpp:787
-msgid "You must first select some audio for this\n"
+#: commands/CommandManager.cpp:938
+msgid ""
+"You must first select some audio for this\n"
" to use. [Selecting other kinds of track won't work.]"
-msgstr "Você deve selecionar a faixa de áudio antes de executar este comando.\n"
+msgstr ""
+"Você deve selecionar a faixa de áudio antes de executar este comando.\n"
"[Outros tipos de faixas não podem ser utilizadas.]"
-#: commands/CommandManager.cpp:903
+#: commands/CommandManager.cpp:943
msgid "Disallowed"
-msgstr ""
+msgstr "Desabilitado"
-#: commands/CommandManager.cpp:972
+#: commands/CommandManager.cpp:1167
#, c-format
msgid "Loaded %d keyboard shortcuts\n"
msgstr "Carregados %d atalhos de teclado\n"
-#: commands/CommandManager.cpp:974
+#: commands/CommandManager.cpp:1169
msgid "Loading keyboard shortcuts"
msgstr "Carregando atalhos de teclado"
-#: effects/Amplify.cpp:52
+#: effects/Amplify.cpp:53
#, c-format
msgid "Applied effect: %s %.1f dB"
msgstr "Efeito aplicado: %s %.1f dB"
-#: effects/Amplify.cpp:87
+#: effects/Amplify.cpp:136
msgid "Amplify"
msgstr "Amplificar"
-#: effects/Amplify.cpp:155 effects/Compressor.cpp:476
-#: effects/Normalize.cpp:337
+#: effects/Amplify.cpp:152
+#: effects/Compressor.cpp:487
+#: effects/Normalize.cpp:341
msgid "by Dominic Mazzoni"
-msgstr ""
+msgstr "por Dominic Mazzoni"
-#: effects/Amplify.cpp:159
+#: effects/Amplify.cpp:165
msgid "Amplification (dB):"
msgstr "Amplificação (dB):"
-#: effects/Amplify.cpp:183
+#: effects/Amplify.cpp:180
msgid "Amplification dB"
-msgstr ""
+msgstr "Amplificação (dB)"
-#: effects/Amplify.cpp:179
+#: effects/Amplify.cpp:187
msgid "New Peak Amplitude (dB):"
msgstr "Novo pico de amplitude (dB):"
-#: effects/Amplify.cpp:191
+#: effects/Amplify.cpp:197
msgid "Allow clipping"
msgstr "Permitir clipping"
-#: effects/Amplify.cpp:237
-#: effects/Amplify.cpp:287
-#: effects/Amplify.cpp:353
+#: effects/Amplify.cpp:219
+#: effects/Amplify.cpp:276
+#: effects/Amplify.cpp:320
msgid "-Infinity"
msgstr "-Infinito"
-#: effects/Amplify.h:46
+#: effects/Amplify.h:37
msgid "Amplify..."
msgstr "Amplificar..."
-#: effects/Amplify.h:54
+#: effects/Amplify.h:51
msgid "Amplifying"
msgstr "Amplificando"
-#: effects/AutoDuck.cpp:125
+#: effects/AutoDuck.cpp:140
msgid "You selected a track which does not contain audio. AutoDuck can only process audio tracks."
msgstr "Foi selecionada uma faixa sem áudio. O AutoDuck só pode processar faixas contendo áudio."
-#: effects/AutoDuck.cpp:126
-#: effects/AutoDuck.cpp:138
-#: effects/AutoDuck.cpp:453
-#: effects/AutoDuck.cpp:570
+#: effects/AutoDuck.cpp:141
+#: effects/AutoDuck.cpp:153
+#: effects/AutoDuck.cpp:467
+#: effects/AutoDuck.cpp:584
msgid "Auto Duck"
msgstr "Auto Duck"
-#: effects/AutoDuck.cpp:137
+#: effects/AutoDuck.cpp:152
msgid "Auto Duck needs a control track which must be placed below the selected track(s)."
msgstr "O AutoDuck requer uma faixa de controle logo abaixo da(s) faixa(s) selecionada(s)."
-#: effects/AutoDuck.cpp:465
+#: effects/AutoDuck.cpp:479
msgid "Auto Duck by Markus Meyer"
msgstr "Auto Duck por Markus Meyer"
-#: effects/AutoDuck.cpp:487
+#: effects/AutoDuck.cpp:501
msgid "Duck amount:"
msgstr "Quantidade de Duck:"
-#: effects/AutoDuck.cpp:492
+#: effects/AutoDuck.cpp:506
msgid "Maximum pause:"
msgstr "Pausa máxima:"
#. i18n-hint: Name of time display format that shows time in seconds
-#: effects/AutoDuck.cpp:494
-#: effects/AutoDuck.cpp:499
-#: effects/AutoDuck.cpp:504
-#: effects/AutoDuck.cpp:509
-#: effects/AutoDuck.cpp:514
-#: prefs/AudioIOPrefs.cpp:166
-#: prefs/AudioIOPrefs.cpp:174
-#: prefs/AudioIOPrefs.cpp:176
-#: prefs/AudioIOPrefs.cpp:201
-#: prefs/AudioIOPrefs.cpp:203
-#: widgets/TimeTextCtrl.cpp:263
+#: effects/AutoDuck.cpp:508
+#: effects/AutoDuck.cpp:513
+#: effects/AutoDuck.cpp:518
+#: effects/AutoDuck.cpp:523
+#: effects/AutoDuck.cpp:528
+#: prefs/MidiIOPrefs.cpp:185
+#: prefs/MidiIOPrefs.cpp:187
+#: prefs/MidiIOPrefs.cpp:209
+#: prefs/MidiIOPrefs.cpp:211
+#: prefs/MidiIOPrefs.cpp:219
+#: prefs/PlaybackPrefs.cpp:65
+#: prefs/PlaybackPrefs.cpp:66
+#: prefs/PlaybackPrefs.cpp:80
+#: prefs/PlaybackPrefs.cpp:81
+#: prefs/PlaybackPrefs.cpp:87
+#: prefs/PlaybackPrefs.cpp:88
+#: prefs/PlaybackPrefs.cpp:102
+#: prefs/PlaybackPrefs.cpp:103
+#: prefs/PlaybackPrefs.cpp:109
+#: prefs/PlaybackPrefs.cpp:110
+#: widgets/TimeTextCtrl.cpp:265
msgid "seconds"
msgstr "segundos"
-#: effects/AutoDuck.cpp:497
+#: effects/AutoDuck.cpp:511
msgid "Outer fade down length:"
msgstr "Tamanho da queda do fade terminal:"
-#: effects/AutoDuck.cpp:502
+#: effects/AutoDuck.cpp:516
msgid "Outer fade up length:"
msgstr "Tamanho da subida do fade terminal:"
-#: effects/AutoDuck.cpp:507
+#: effects/AutoDuck.cpp:521
msgid "Inner fade down length:"
msgstr "Tamanho da queda do fade inicial:"
-#: effects/AutoDuck.cpp:512
+#: effects/AutoDuck.cpp:526
msgid "Inner fade up length:"
msgstr "Tamanho da subida do fade inicial:"
-#: effects/AutoDuck.cpp:521
-#: effects/Compressor.cpp:484
+#: effects/AutoDuck.cpp:535
+#: effects/Compressor.cpp:506
msgid "Threshold:"
msgstr "Limiar: "
-#: effects/AutoDuck.cpp:570
+#: effects/AutoDuck.cpp:584
msgid "Please enter valid values."
msgstr "Por favor, digite valores válidos."
-#: effects/AutoDuck.cpp:704
+#: effects/AutoDuck.cpp:719
msgid "Preview not available"
msgstr "Previsão não disponÃvel"
-#: effects/AutoDuck.h:97
+#: effects/AutoDuck.h:98
msgid "Auto Duck..."
msgstr "Auto Duck..."
-#: effects/AutoDuck.h:107
+#: effects/AutoDuck.h:115
msgid "Processing Auto Duck..."
msgstr "Processando Auto Duck..."
#: effects/AvcCompressor.cpp:738
-#: effects/VST/VSTEffect.cpp:448
-#: effects/audiounits/AudioUnitEffect.cpp:877
-#: effects/nyquist/Nyquist.cpp:1042
-#: widgets/ErrorDialog.cpp:79
-#: widgets/ErrorDialog.cpp:105
-#: widgets/Warning.cpp:67
+#: effects/audiounits/AudioUnitEffect.cpp:856
+#: effects/nyquist/Nyquist.cpp:1237
+#: widgets/ErrorDialog.cpp:99
msgid "OK"
msgstr "OK"
#: effects/BassBoost.cpp:52
#, c-format
msgid "Applied effect: %s frequency = %.0f Hz, boost = %.0f dB"
-msgstr "Efeito aplicado: %s freqüência = %.0f Hz, ganho = %.0f dB"
+msgstr "Efeito aplicado: %s frequência = %.0f Hz, ganho = %.0f dB"
#: effects/BassBoost.cpp:169
msgid "Bass Boost"
msgstr "Reforço de graves"
#: effects/BassBoost.cpp:182
+#: effects/Phaser.cpp:219
+#: effects/Wahwah.cpp:214
msgid "by Nasca Octavian Paul"
msgstr "por Nasca Octavian Paul"
#: effects/BassBoost.cpp:196
+#: effects/ChangePitch.cpp:322
msgid "Frequency (Hz):"
-msgstr "Freqüência (Hz):"
+msgstr "Frequência (Hz):"
#: effects/BassBoost.cpp:205
msgid "Frequency Hertz"
-msgstr ""
+msgstr "Frequência em Hz"
-#: effects/BassBoost.cpp:208
+#: effects/BassBoost.cpp:209
msgid "Boost (dB):"
msgstr "Ganho (dB):"
#: effects/BassBoost.cpp:218
msgid "Boost dB"
-msgstr ""
+msgstr "Ganho em dB"
#: effects/BassBoost.h:35
msgid "BassBoost..."
msgstr "Aumento de graves..."
-#: effects/BassBoost.h:43
+#: effects/BassBoost.h:49
msgid "Boosting Bass Frequencies"
-msgstr "Freqüência de ganho dos Graves"
+msgstr "Aumentando frequência dos graves"
#: effects/ChangeLength.h:26
msgid "Change Length..."
@@ -4350,757 +4780,756 @@ msgstr "Alterando tamanho..."
msgid "Applied effect: %s %.2f semitones"
msgstr "Efeito aplicado: %s %.2f semitons"
-#: effects/ChangePitch.cpp:118
+#: effects/ChangePitch.cpp:198
msgid "Change Pitch"
msgstr "Alterar altura"
-#: effects/ChangePitch.cpp:247
+#: effects/ChangePitch.cpp:256
msgid "Change Pitch without Changing Tempo"
msgstr "Alterar altura sem alteração no tempo"
-#. i18n-hint: && in here is an escape character to get a single & on
-#. * screen, so keep it as is
-#: effects/ChangePitch.cpp:254
-#: effects/ChangeSpeed.cpp:313
-#: effects/ChangeTempo.cpp:180
+#: effects/ChangePitch.cpp:258
+#: effects/ChangeSpeed.cpp:337
+#: effects/ChangeTempo.cpp:176
msgid "by Vaughan Johnson && Dominic Mazzoni"
msgstr "por Vaughan Johnson && Dominic Mazzoni"
-#: effects/ChangePitch.cpp:259
-#: effects/ChangeTempo.cpp:185
+#: effects/ChangePitch.cpp:260
+#: effects/ChangeTempo.cpp:178
msgid "using SoundTouch, by Olli Parviainen"
msgstr "usando SoundTouch, por Olli Parviainen"
#: effects/ChangePitch.cpp:269
msgid "Pitch:"
-msgstr ""
+msgstr "Altura:"
#: effects/ChangePitch.cpp:274
msgid "From:"
-msgstr ""
+msgstr "De:"
#: effects/ChangePitch.cpp:275
msgid "From Pitch"
-msgstr ""
+msgstr "Da altura"
#: effects/ChangePitch.cpp:286
msgid "Up"
-msgstr ""
+msgstr "acima"
#: effects/ChangePitch.cpp:289
msgid "Down"
-msgstr ""
+msgstr "abaixo"
+# altura de X (Acima|abaixo) ATÃ Y
#: effects/ChangePitch.cpp:299
msgid "To:"
-msgstr ""
+msgstr "até:"
#: effects/ChangePitch.cpp:300
msgid "To Pitch"
-msgstr ""
+msgstr "Para a altura"
-#: effects/ChangePitch.cpp:306
+#: effects/ChangePitch.cpp:311
msgid "Semitones (half-steps):"
msgstr "Semitons (meio-passos):"
#: effects/ChangePitch.cpp:316
msgid "Semitones in half-steps"
-msgstr ""
+msgstr "Semitons em meio-passos"
-#: effects/ChangePitch.cpp:326 effects/ChangeSpeed.cpp:369
-#: effects/ChangeTempo.cpp:209 effects/ChangeTempo.cpp:222
+#: effects/ChangePitch.cpp:326
+#: effects/ChangeSpeed.cpp:370
+#: effects/ChangeTempo.cpp:209
+#: effects/ChangeTempo.cpp:222
msgid "from"
-msgstr ""
+msgstr "de"
#: effects/ChangePitch.cpp:327
msgid "From frequency in hertz"
-msgstr ""
+msgstr "Da frequência em Hertz"
-#: effects/ChangePitch.cpp:291
-#: effects/ChangePitch.cpp:337
-#: effects/ChangeSpeed.cpp:377
-#: effects/ChangeTempo.cpp:239
-#: effects/ChangeTempo.cpp:270
+#: effects/ChangePitch.cpp:331
+#: effects/ChangeSpeed.cpp:375
+#: effects/ChangeTempo.cpp:214
+#: effects/ChangeTempo.cpp:227
msgid "to"
msgstr "a "
#: effects/ChangePitch.cpp:332
msgid "To frequency in seconds"
-msgstr ""
+msgstr "Para a frequência em segundos"
-#: effects/ChangePitch.cpp:360
-#: effects/ChangeSpeed.cpp:331
-#: effects/ChangeTempo.cpp:198
+#: effects/ChangePitch.cpp:338
+#: effects/ChangeSpeed.cpp:348
+#: effects/ChangeTempo.cpp:187
msgid "Percent Change:"
msgstr "Percentagem de alteração:"
-#: effects/ChangePitch.cpp:343 effects/ChangePitch.cpp:356
-#: effects/ChangeSpeed.cpp:358 effects/ChangeTempo.cpp:198
+#: effects/ChangePitch.cpp:343
+#: effects/ChangePitch.cpp:356
+#: effects/ChangeSpeed.cpp:359
+#: effects/ChangeTempo.cpp:198
msgid "Percent Change"
-msgstr ""
+msgstr "Percentagem de alteração"
#: effects/ChangePitch.h:31
msgid "Change Pitch..."
msgstr "Alterar altura..."
-#: effects/ChangePitch.h:39
+#: effects/ChangePitch.h:46
msgid "Changing Pitch"
msgstr "Alterando altura "
-#: effects/ChangeSpeed.cpp:53
+#: effects/ChangeSpeed.cpp:54
#: effects/ChangeTempo.cpp:55
#, c-format
msgid "Applied effect: %s %.1f%%"
msgstr "Efeito aplicado: %s %.1f%%"
-#: effects/ChangeSpeed.cpp:60
+#: effects/ChangeSpeed.cpp:299
msgid "Change Speed"
msgstr "Alterar velocidade"
-#. i18n-hint: n/a is an English
-#. abbreviation meaning "not
-#. applicable" (in other words,
-#. unimportant, not relevant).
-#: effects/ChangeSpeed.cpp:364
+#. i18n-hint: n/a is an English abbreviation meaning "not applicable"
+#. (in other words, unimportant, not relevant).
+#: effects/ChangeSpeed.cpp:330
msgid "n/a"
msgstr "n/d"
-#: effects/ChangeSpeed.cpp:308
+#: effects/ChangeSpeed.cpp:335
msgid "Change Speed, affecting both Tempo and Pitch"
msgstr "Alterar velocidade, afetando tempo e altura"
-#: effects/ChangeSpeed.cpp:318
+#: effects/ChangeSpeed.cpp:339
msgid "using SampleRate, by Erik de Castro Lopo"
msgstr "usando SampleRate, por Erik de Castro Lopo"
-#: effects/ChangeSpeed.cpp:366
+#: effects/ChangeSpeed.cpp:367
msgid "Standard Vinyl RPM:"
-msgstr ""
+msgstr "RPM padrão do vinil:"
-#: effects/ChangeSpeed.cpp:370
+#: effects/ChangeSpeed.cpp:371
msgid "From RPM"
-msgstr ""
+msgstr "De RPM"
-#: effects/ChangeSpeed.cpp:375
+#: effects/ChangeSpeed.cpp:376
msgid "To RPM"
-msgstr ""
+msgstr "Para RPM"
#: effects/ChangeSpeed.h:32
msgid "Change Speed..."
msgstr "Alterar velocidade..."
-#: effects/ChangeSpeed.h:40
+#: effects/ChangeSpeed.h:46
msgid "Changing Speed"
msgstr "Alterando velocidade"
-#: effects/ChangeTempo.cpp:74
+#: effects/ChangeTempo.cpp:141
msgid "Change Tempo"
msgstr "Alterar tempo"
-#: effects/ChangeTempo.cpp:175
+#: effects/ChangeTempo.cpp:174
msgid "Change Tempo without Changing Pitch"
msgstr "Alterar tempo sem alteração na altura"
#: effects/ChangeTempo.cpp:206
msgid "Beats per minute:"
-msgstr ""
+msgstr "Batidas por Minuto (BPM):"
#: effects/ChangeTempo.cpp:210
msgid "From beats per minute"
-msgstr ""
+msgstr "De batidas por minuto"
#: effects/ChangeTempo.cpp:215
msgid "To beats per minute"
-msgstr ""
+msgstr "Para batidas por minuto"
#: effects/ChangeTempo.cpp:219
msgid "Length (seconds):"
-msgstr ""
+msgstr "Tamanho (segundos):"
#: effects/ChangeTempo.cpp:223
msgid "From length in seconds"
-msgstr ""
+msgstr "Do tamanho em segundos"
#: effects/ChangeTempo.cpp:228
msgid "To length in seconds"
-msgstr ""
+msgstr "Para o tamanho em segundos"
#: effects/ChangeTempo.h:35
msgid "Change Tempo..."
msgstr "Alterar tempo..."
-#: effects/ChangeTempo.h:43
+#: effects/ChangeTempo.h:49
msgid "Changing Tempo"
msgstr "Alterando tempo"
#: effects/ClickRemoval.cpp:314
-#, fuzzy
msgid "Click Removal"
msgstr "Remoção de cliques"
-#: effects/ClickRemoval.cpp:336
+#: effects/ClickRemoval.cpp:327
msgid "Click and Pop Removal by Craig DeForest"
-msgstr "Remover Sons de Cliques por Craig deForest"
+msgstr "Remoção de Sons de Cliques por Craig deForest"
-#: effects/ClickRemoval.cpp:350
+#: effects/ClickRemoval.cpp:341
msgid "Select threshold (lower is more sensitive):"
msgstr "Selecione limiar (mais baixo, mais sensÃvel):"
#: effects/ClickRemoval.cpp:350
msgid "Select threshold"
-msgstr ""
+msgstr "Selecionar limiar"
-#: effects/ClickRemoval.cpp:362
+#: effects/ClickRemoval.cpp:358
msgid "Max spike width (higher is more sensitive):"
msgstr "Tam. max. de pico (quanto maior, mais sensÃvel):"
-#: effects/ClickRemoval.cpp:363
+#: effects/ClickRemoval.cpp:367
msgid "Max spike width"
-msgstr ""
+msgstr "Tamanho máximo do pico"
#: effects/ClickRemoval.h:42
msgid "Click Removal..."
msgstr "Remover cliques..."
-#: effects/ClickRemoval.h:50
+#: effects/ClickRemoval.h:56
msgid "Removing clicks and pops..."
msgstr "Removendo sons de cliques..."
-#: effects/Compressor.cpp:74
+#: effects/Compressor.cpp:472
msgid "Dynamic Range Compressor"
msgstr "Compressor de extensão dinâmica"
-#: effects/Compressor.cpp:498
+#: effects/Compressor.cpp:510
msgid "Threshold"
-msgstr ""
+msgstr "Limiar"
-#: effects/Compressor.cpp:502
+#: effects/Compressor.cpp:514
msgid "Ratio:"
-msgstr ""
+msgstr "Proporção (Ratio):"
-#: effects/Compressor.cpp:506
+#: effects/Compressor.cpp:518
msgid "Ratio"
-msgstr ""
+msgstr "Proporção (Ratio)"
-#: effects/Compressor.cpp:510
-#, fuzzy
+#: effects/Compressor.cpp:522
msgid "Attack Time:"
msgstr "Tempo de Ataque:"
-#: effects/Compressor.cpp:514
+#: effects/Compressor.cpp:526
msgid "Attack Time"
-msgstr ""
+msgstr "Tempo de Ataque"
-#: effects/Compressor.cpp:518
-#, fuzzy
+#: effects/Compressor.cpp:530
msgid "Decay Time:"
-msgstr "Tempo de caÃda:"
+msgstr "Tempo de decaimento:"
-#: effects/Compressor.cpp:522
+#: effects/Compressor.cpp:534
msgid "Decay Time"
-msgstr ""
+msgstr "Tempo de decaimento"
-#: effects/Compressor.cpp:516
-msgid "Normalize to 0dB after compressing"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
msgstr "Normalizar para 0dB após a compressão"
-#: effects/Compressor.cpp:563
+#: effects/Compressor.cpp:575
#, c-format
-#, fuzzy
msgid "Threshold %d dB"
-msgstr "Threshold: %d dB"
+msgstr "Limiar %d dB"
-#: effects/Compressor.cpp:564
+#: effects/Compressor.cpp:576
#, c-format
msgid "%3d dB"
-msgstr ""
+msgstr "%3d dB"
-#: effects/Compressor.cpp:567
+#: effects/Compressor.cpp:579
#, c-format
msgid "Ratio %.0f to 1"
-msgstr ""
+msgstr "Proporção %.0f para 1"
-#: effects/Compressor.cpp:568
+#: effects/Compressor.cpp:580
#, c-format
msgid "%.0f:1"
-msgstr ""
+msgstr "%.0f:1"
-#: effects/Compressor.cpp:571
+#: effects/Compressor.cpp:583
#, c-format
msgid "Ratio %.1f to 1"
-msgstr ""
+msgstr "Proporção: %.1f para 1"
-#: effects/Compressor.cpp:572
+#: effects/Compressor.cpp:584
#, c-format
msgid "%.1f:1"
-msgstr ""
+msgstr "%.1f:1"
-#: effects/Compressor.cpp:575
+#: effects/Compressor.cpp:587
#, c-format
-#, fuzzy
msgid "Attack Time %.1f secs"
-msgstr "Tempo decorrido: %.1f segs"
+msgstr "Tempo de ataque: %.1f segs"
-#: effects/Compressor.cpp:576 effects/Compressor.cpp:579
+#: effects/Compressor.cpp:588
+#: effects/Compressor.cpp:591
#, c-format
msgid "%.1f secs"
-msgstr ""
+msgstr "%.1f segs"
-#: effects/Compressor.cpp:578
+#: effects/Compressor.cpp:590
#, c-format
-#, fuzzy
msgid "Decay Time %.1f secs"
-msgstr "Tempo de caÃda: %.1f segs"
+msgstr "Tempo de decaimento: %.1f segs"
-#: effects/Compressor.h:36
+#: effects/Compressor.h:37
msgid "Compressor..."
msgstr "Compressor..."
# range = extensão
-#: effects/Compressor.h:44
+#: effects/Compressor.h:51
msgid "Applying Dynamic Range Compression..."
msgstr "Aplicando compressão de extensão dinâmica..."
-#: effects/Contrast.cpp:79
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr "Analizador de Contraste"
+
+#: effects/Contrast.cpp:88
msgid "Contrast Tool Foreground"
-msgstr ""
+msgstr "Primeiro plano da Ferramenta de Contraste"
-#: effects/Contrast.cpp:79
-msgid "Foreground times selected.\n"
+#: effects/Contrast.cpp:88
+msgid ""
+"Foreground times selected.\n"
"Now select background and use Ctrl+Shift+T or menu again."
msgstr ""
+"Tempos do primeiro plano selecionados.\n"
+"Selecione o plano de fundo e use Ctrl+Shift+T ou menu novamente."
-#: effects/Contrast.cpp:127
-msgid "Start time after after end time!\n"
+# a palavra 'after' está escrita 2x... é normal ou é um erro isso?
+#: effects/Contrast.cpp:144
+msgid ""
+"Start time after after end time!\n"
"Please enter reasonable times."
msgstr ""
+"Tempo inicial após tempo final!\n"
+"Por favor use valores adequados."
-#: effects/Contrast.cpp:137
-msgid "Times are not reasonable!\n"
+#: effects/Contrast.cpp:154
+msgid ""
+"Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
+"Tempos não são plausÃveis!\n"
+"Por favor use valores adequados."
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr ""
-
-#: effects/Contrast.cpp:231
+#: effects/Contrast.cpp:276
msgid "Contrast Analyzer"
-msgstr ""
+msgstr "Analisador de Contraste"
-#: effects/Contrast.cpp:235
-msgid "Parameters"
-msgstr ""
-
-#: effects/ToneGen.cpp:361
-#: toolbars/ControlToolBar.cpp:185
+#: effects/Contrast.cpp:286
+#: effects/ToneGen.cpp:312
+#: toolbars/ControlToolBar.cpp:181
msgid "Start"
-msgstr "InÃcial"
-
-#: effects/ToneGen.cpp:362
-#: toolbars/ControlToolBar.cpp:188
-#: toolbars/SelectionBar.cpp:149
-#: toolbars/SelectionBar.cpp:254
+msgstr "InÃcio"
+
+#: effects/Contrast.cpp:287
+#: effects/ToneGen.cpp:313
+#: toolbars/ControlToolBar.cpp:184
+#: toolbars/SelectionBar.cpp:156
+#: toolbars/SelectionBar.cpp:159
+#: toolbars/SelectionBar.cpp:262
msgid "End"
msgstr "Final"
-#: effects/Contrast.cpp:332
+#: effects/Contrast.cpp:290
msgid "Volume "
-msgstr ""
+msgstr "Volume "
-#: effects/Contrast.cpp:248
+# foreground = primeiro plano?? backgorund=fundo????
+#: effects/Contrast.cpp:293
msgid "Foreground:"
-msgstr ""
+msgstr "Primeiro plano:"
-#: effects/Contrast.cpp:347
+# foreground = primeiro plano?? backgorund=fundo????
+#: effects/Contrast.cpp:305
msgid "Foreground start time"
-msgstr ""
+msgstr "Tempo de inÃcio do primeiro plano"
-#: effects/Contrast.cpp:365
+# foreground = primeiro plano?? background=fundo????
+#: effects/Contrast.cpp:323
msgid "Foreground end time"
-msgstr ""
+msgstr "Tempo de término do primeiro plano"
+
+#: effects/Contrast.cpp:329
+#: effects/Contrast.cpp:373
+#: effects/Contrast.cpp:437
+#: effects/Contrast.cpp:448
+msgid "Measured"
+msgstr "Medido"
-#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
+#: effects/Contrast.cpp:331
+#: effects/Contrast.cpp:375
msgid "Use selection"
-msgstr ""
+msgstr "Usar seleção"
-#: effects/Contrast.cpp:271
+#: effects/Contrast.cpp:336
msgid "Background:"
-msgstr ""
+msgstr "Plano de fundo:"
-#: effects/Contrast.cpp:391
+#: effects/Contrast.cpp:349
msgid "Background start time"
-msgstr ""
+msgstr "Tempo de inÃcio do plano de fundo"
-#: effects/Contrast.cpp:409
+#: effects/Contrast.cpp:367
msgid "Background end time"
-msgstr ""
+msgstr "Tempo de término do plano de fundo"
-#: effects/Contrast.cpp:298
+#: effects/Contrast.cpp:384
msgid "Result"
-msgstr ""
+msgstr "Resultado"
-#: effects/Contrast.cpp:302
+#: effects/Contrast.cpp:388
msgid "Contrast Result:"
-msgstr ""
+msgstr "Resultado do contraste:"
-#: Tags.cpp:829
-#: Tags.cpp:1981
+#: effects/Contrast.cpp:391
msgid "Reset"
msgstr "Reiniciar"
-#: effects/Contrast.cpp:304
+#: effects/Contrast.cpp:392
msgid "Difference:"
-msgstr ""
+msgstr "Diferença:"
-#: effects/Contrast.cpp:313
+#: effects/Contrast.cpp:403
msgid "Information"
-msgstr ""
+msgstr "Informação"
-#: effects/Contrast.cpp:447
+#: effects/Contrast.cpp:405
msgid "For measuring rms volume differences between two selections of audio."
-msgstr ""
+msgstr "Para medir as diferenças de volume RMS entre dois trechos de áudio selecionados"
-#: effects/Contrast.cpp:448
+#: effects/Contrast.cpp:406
msgid "Help for WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: toolbars/ControlToolBar.cpp:82
-msgid "Control"
-msgstr "Controle"
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
+msgstr "Ajuda para Analisador de Contraste de Ãudio WCAG2 "
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
-msgstr ""
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
+msgstr "Fechar (vezes para manter)"
-#: effects/Contrast.cpp:328 effects/Contrast.cpp:336 effects/Contrast.cpp:344
-#: effects/Contrast.cpp:352
+#: effects/Contrast.cpp:474
+#: effects/Contrast.cpp:480
+#: effects/Contrast.cpp:486
+#: effects/Contrast.cpp:492
msgid "Measure"
-msgstr ""
+msgstr "Medir"
-#: effects/Contrast.cpp:511
+# foreground = primeiro plano?? backgorund=fundo????
+#: effects/Contrast.cpp:531
msgid "No foreground to measure"
-msgstr ""
+msgstr "Sem primeiro plano para medir"
-#: effects/Contrast.cpp:516
+#: effects/Contrast.cpp:536
msgid "Measured foreground level"
-msgstr ""
+msgstr "NÃvel medido do primeiro plano"
-#: effects/Contrast.cpp:191 effects/Contrast.cpp:202
+#: effects/Contrast.cpp:537
+#: effects/Contrast.cpp:547
#, c-format
msgid "%.1f dB"
-msgstr ""
+msgstr "%.1f dB"
-#: effects/Contrast.cpp:521
+#: effects/Contrast.cpp:541
msgid "No background to measure"
-msgstr ""
+msgstr "Não há plano de fundo a ser medido"
-#: effects/Contrast.cpp:526
+#: effects/Contrast.cpp:546
msgid "Measured background level"
-msgstr ""
+msgstr "NÃvel medido do plano de fundo"
-#: effects/Contrast.cpp:358
+#: effects/Contrast.cpp:552
msgid "WCAG2 Pass"
-msgstr ""
+msgstr "WCAG2 Passou"
-#: effects/Contrast.cpp:360
+#: effects/Contrast.cpp:554
msgid "WCAG2 Fail"
-msgstr ""
+msgstr "WCAG2 Falhou"
-#: effects/Contrast.cpp:535
+#: effects/Contrast.cpp:555
msgid "Current difference"
-msgstr ""
+msgstr "Diferença atual"
-#: effects/Contrast.cpp:536
+#: effects/Contrast.cpp:556
#, c-format
msgid "%.1f dB Average rms"
-msgstr ""
+msgstr "%.1f dB em média rms"
-#: effects/Contrast.cpp:541
+#: effects/Contrast.cpp:561
msgid "Please enter valid times."
-msgstr ""
+msgstr "Por favor, digite valores válidos."
-#: effects/Contrast.cpp:551
+#: effects/Contrast.cpp:571
msgid "Export Contrast Result As:"
-msgstr ""
+msgstr "Exportar resultados do contraste como:"
-#: effects/Contrast.cpp:572
+#: effects/Contrast.cpp:592
msgid "WCAG 2.0 Success Criteria 1.4.7 Contrast Results"
-msgstr ""
+msgstr "Resultados do Contraste WCAG 2.0 Success Criteria 1.4.7"
-#: effects/Contrast.cpp:574
+#: effects/Contrast.cpp:594
#, c-format
msgid "Filename = %s."
-msgstr ""
+msgstr "Nome do arquivo = %s."
-#: effects/Contrast.cpp:576
+#: effects/Contrast.cpp:596
msgid "Foreground"
-msgstr ""
+msgstr "Primeiro plano"
-#: effects/Contrast.cpp:581 effects/Contrast.cpp:598
+#: effects/Contrast.cpp:601
+#: effects/Contrast.cpp:618
#, c-format
msgid "Time started = %2d hour(s), %2d minute(s), %.2f seconds."
-msgstr ""
+msgstr "Tempo inicial = %2d hora(s), %2d minuto(s), %.2f segundos."
-#: effects/Contrast.cpp:586 effects/Contrast.cpp:603
+#: effects/Contrast.cpp:606
+#: effects/Contrast.cpp:623
#, c-format
msgid "Time ended = %2d hour(s), %2d minute(s), %.2f seconds."
-msgstr ""
+msgstr "Tempo final = %2d hora(s), %2d minuto(s), %.2f segundos."
-#: effects/Contrast.cpp:588 effects/Contrast.cpp:605
+#: effects/Contrast.cpp:608
+#: effects/Contrast.cpp:625
#, c-format
msgid "Average rms = %.1f dB."
-msgstr ""
+msgstr "Média rms = %.1f dB."
-#: effects/Contrast.cpp:590 effects/Contrast.cpp:607
+#: effects/Contrast.cpp:610
+#: effects/Contrast.cpp:627
msgid "Average rms = dB."
-msgstr ""
+msgstr "Média rms = dB."
-#: effects/Contrast.cpp:593
+#: effects/Contrast.cpp:613
msgid "Background"
-msgstr ""
+msgstr "Plano de fundo"
-#: effects/Contrast.cpp:609
+#: effects/Contrast.cpp:629
msgid "Results"
-msgstr ""
+msgstr "Resultados"
-#: effects/Contrast.cpp:611
+#: effects/Contrast.cpp:631
#, c-format
msgid "Difference = %.1f Average rms dB."
-msgstr ""
+msgstr "Diferença = %.1f Média rms dB."
-#: effects/Contrast.cpp:613
+#: effects/Contrast.cpp:633
msgid "Success Criteria 1.4.7 of WCAG 2.0: Pass"
-msgstr ""
+msgstr "Success Criteria 1.4.7 do WCAG 2.0: Bem-sucedido"
-#: effects/Contrast.cpp:615
+#: effects/Contrast.cpp:635
msgid "Success Criteria 1.4.7 of WCAG 2.0: Fail"
-msgstr ""
+msgstr "Success Criteria 1.4.7 do WCAG 2.0: Falha"
-#: effects/Contrast.cpp:618
+#: effects/Contrast.cpp:638
msgid "Data gathered"
-msgstr ""
+msgstr "Dados recolhidos"
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr ""
-
-#: effects/DtmfGen.cpp:48
+#: effects/DtmfGen.cpp:56
msgid "DTMF Tone Generator"
msgstr "Gerador de Tom DTMF"
-#: effects/DtmfGen.cpp:439
+#: effects/DtmfGen.cpp:421
msgid "by Salvo Ventura (2006)"
msgstr "por Salvo Ventura (2006)"
-#: effects/DtmfGen.cpp:443
+#: effects/DtmfGen.cpp:425
msgid "DTMF sequence:"
msgstr "Sequência DTMF:"
-#: effects/DtmfGen.cpp:446
-#: effects/Noise.cpp:255
-#: effects/ToneGen.cpp:328
-#: effects/ToneGen.cpp:365
+#: effects/DtmfGen.cpp:428
+#: effects/Noise.cpp:190
+#: effects/ToneGen.cpp:278
+#: effects/ToneGen.cpp:316
msgid "Amplitude (0-1)"
msgstr "Amplitude (0-1)"
-#: effects/DtmfGen.cpp:448
+#: effects/DtmfGen.cpp:430
msgid "Duration:"
msgstr "Duração:"
-#: effects/DtmfGen.cpp:469
+#: effects/DtmfGen.cpp:452
msgid "Tone/silence ratio:"
-msgstr "Proporção silêncio/tom:"
+msgstr "Proporção tom/silêncio:"
-#: effects/DtmfGen.cpp:479
+#: effects/DtmfGen.cpp:462
msgid "Duty cycle:"
msgstr "Intervalo entre tons:"
-#: effects/DtmfGen.cpp:481
+#: effects/DtmfGen.cpp:464
msgid "Tone duration:"
msgstr "Duração do tom:"
-#: effects/DtmfGen.cpp:482
-#: effects/DtmfGen.cpp:484
-#: effects/DtmfGen.cpp:560
-#: effects/DtmfGen.cpp:561
+#: effects/DtmfGen.cpp:465
+#: effects/DtmfGen.cpp:467
+#: effects/DtmfGen.cpp:543
+#: effects/DtmfGen.cpp:544
msgid "ms"
msgstr "ms"
-#: effects/DtmfGen.cpp:483
+#: effects/DtmfGen.cpp:466
msgid "Silence duration:"
msgstr "Duração do silêncio:"
-#: effects/DtmfGen.h:41
+#: effects/DtmfGen.h:40
msgid "DTMF Tones..."
msgstr "Tons &DTMF..."
-#: effects/DtmfGen.h:49
+#: effects/DtmfGen.h:54
#, c-format
msgid "Applied effect: Generate DTMF tones, %.6lf seconds"
msgstr "Efeito aplicado: Gerar tom DTMF, %.6lf segundos"
-#: effects/DtmfGen.h:53
+#: effects/DtmfGen.h:58
msgid "Generating DTMF tones"
-msgstr "Gerando tom DTMF"
+msgstr "Gerando tons DTMF"
#: effects/Echo.cpp:48
#, c-format
msgid "Applied effect: %s delay = %f seconds, decay factor = %f"
-msgstr "Efeito aplicado: %s atraso = %f segundos, fator de caÃda = %f"
+msgstr "Efeito aplicado: %s atraso = %f segundos, fator de decaimento = %f"
-#: effects/Echo.cpp:170
+#: effects/Echo.cpp:174
msgid "Echo"
msgstr "Eco"
#. i18n-hint: && in here is an escape character to get a single & on
#. * screen, so keep it as is
-#: effects/Echo.cpp:195
+#: effects/Echo.cpp:199
+#: effects/Repeat.cpp:199
msgid "by Dominic Mazzoni && Vaughan Johnson"
msgstr "por Dominic Mazzoni && Vaughan Johnson"
-#: effects/Echo.cpp:207
+#: effects/Echo.cpp:211
msgid "Delay time (seconds):"
msgstr "Atraso (segundos):"
-# decay, procurar!!!
-# decay=caÃda !
-#: effects/Echo.cpp:212
+# decay=decaimento
+#: effects/Echo.cpp:216
msgid "Decay factor:"
-msgstr "Fator de caÃda:"
+msgstr "Fator de decaimento:"
#: effects/Echo.h:34
msgid "Echo..."
msgstr "Eco..."
-#: effects/Echo.h:42
+#: effects/Echo.h:48
msgid "Performing Echo"
msgstr "Executando Eco"
-#: effects/Effect.cpp:390
+#: effects/Effect.cpp:498
msgid "Preparing preview"
msgstr "Preparando prévia"
-#: effects/Effect.cpp:419
+#: effects/Effect.cpp:530
msgid "Previewing"
msgstr "Testando"
-#: effects/Effect.cpp:435
+#: effects/Effect.cpp:545
msgid "Error while opening sound device. Please check the output device settings and the project sample rate."
msgstr "Erro ao acessar o dispositivo de som. Por favor, cheque as configurações do dispositivo e a taxa de amostragem do projeto."
-#: effects/Effect.h:107
+#: effects/Effect.h:96
+#: effects/TimeScale.cpp:52
#, c-format
msgid "Applied effect: %s"
msgstr "Efeito aplicado: %s"
-#: effects/Equalization.cpp:329
+#: effects/Equalization.cpp:338
msgid "B-spline"
msgstr "Spline-b"
-#: effects/Equalization.cpp:330
+#: effects/Equalization.cpp:339
msgid "Cosine"
-msgstr "Co-seno"
+msgstr "Cosseno"
-#: effects/Equalization.cpp:331
+#: effects/Equalization.cpp:340
msgid "Cubic"
msgstr "Cúbico"
-#: effects/Equalization.cpp:362
-#: effects/Equalization.cpp:412
+#: effects/Equalization.cpp:379
+#: effects/Equalization.cpp:430
msgid "Equalization"
msgstr "Equalização"
-#: effects/Equalization.cpp:980
+#: effects/Equalization.cpp:1009
msgid "Error loading EQ curve"
msgstr "Erro abrindo curva de EQ"
-#: effects/Equalization.cpp:1019
+#: effects/Equalization.cpp:1048
msgid "custom"
msgstr "personalizado"
+#: effects/Equalization.cpp:1097
+msgid "Error saving equalization curves"
+msgstr "Erro salvando curvas de equalização"
+
#. i18n-hint: && in here is an escape character to get a single &
#. * on screen, so keep it as is
-#: effects/Equalization.cpp:1087
+#: effects/Equalization.cpp:1120
msgid "Equalization, by Martyn Shaw && Mitch Golden"
msgstr "Equalização por Martyn Shaw && Mitch Golden"
-#: effects/Equalization.cpp:1108
+#: effects/Equalization.cpp:1141
msgid "Max dB"
-msgstr "Max dB"
+msgstr "Máx dB"
-#: effects/Equalization.cpp:1110
+#: effects/Equalization.cpp:1143
msgid "Min dB"
msgstr "MÃn dB"
-#: effects/Equalization.cpp:1183
+#: effects/Equalization.cpp:1216
msgid "kHz"
msgstr "kHz"
-#: effects/Equalization.cpp:1200
+#: effects/Equalization.cpp:1233
msgid "Draw curves"
msgstr "Desenhar curvas"
-#: effects/Equalization.cpp:1205
+#: effects/Equalization.cpp:1238
msgid "Graphic EQ"
msgstr "EQ Gráfico"
-#: effects/Equalization.cpp:1219
+#: effects/Equalization.cpp:1252
msgid "Linear frequency scale"
-msgstr "Escala de freqüencia linear"
+msgstr "Escala de frequência linear"
-#: effects/Equalization.cpp:1228
+#: effects/Equalization.cpp:1261
msgid "Length of filter:"
msgstr "Tamanho do filtro:"
-#: effects/Equalization.cpp:1249
+#: effects/Equalization.cpp:1282
msgid "Select curve:"
msgstr "Selecionar curva:"
-#: effects/Equalization.cpp:1259
-#: effects/Equalization.cpp:2498
-#: export/ExportMultiple.cpp:826
+#: effects/Equalization.cpp:1292
+#: effects/Equalization.cpp:2552
+#: export/ExportMultiple.cpp:924
msgid "Save As..."
msgstr "Salvar como..."
-#: effects/Equalization.cpp:1265
+#: effects/Equalization.cpp:1298
msgid "Flat"
msgstr "Plano"
-#: effects/Equalization.cpp:2497
+#: effects/Equalization.cpp:2551
msgid "Enter the desired name of the curve"
msgstr "Digite o nome para a curva"
-#: effects/Equalization.cpp:2597
+#: effects/Equalization.cpp:2651
+#: export/ExportFFmpegDialogs.cpp:1214
msgid "Confirm Deletion"
msgstr "Confirmar exclusão"
-#: effects/Equalization.h:87
+#: effects/Equalization.h:82
msgid "Equalization..."
msgstr "Equalização..."
-#: effects/Equalization.h:95
+#: effects/Equalization.h:96
msgid "Performing Equalization"
msgstr "Executando equalização"
@@ -5108,51 +5537,51 @@ msgstr "Executando equalização"
msgid "Fade In"
msgstr "Fade In"
-#: effects/Fade.h:32
+#: effects/Fade.h:38
msgid "Fading In"
msgstr "Fading In"
-#: effects/Fade.h:48
+#: effects/Fade.h:54
msgid "Fade Out"
msgstr "Fade Out"
-#: effects/Fade.h:56
+#: effects/Fade.h:68
msgid "Fading Out"
msgstr "Fading Out"
-#: effects/FindClipping.cpp:49
+#: effects/FindClipping.cpp:50
msgid "Detect clipping"
msgstr "Detectar clipping"
-#: effects/FindClipping.cpp:91
+#: effects/FindClipping.cpp:93
msgid "Clipping"
msgstr "Clipping"
-#: effects/FindClipping.cpp:211
+#: effects/FindClipping.cpp:213
msgid "Find Clipping"
msgstr "Encontrar clipping"
-#: effects/FindClipping.cpp:222
+#: effects/FindClipping.cpp:224
msgid "by Leland Lucius"
msgstr "por Leland Lucius"
-#: effects/FindClipping.cpp:234
+#: effects/FindClipping.cpp:236
msgid "Start threshold (samples):"
msgstr "Limiar inicial (amostras):"
-#: effects/FindClipping.cpp:238
+#: effects/FindClipping.cpp:240
msgid "Stop threshold (samples):"
msgstr "Limiar final (amostras):"
-#: effects/FindClipping.cpp:250
+#: effects/FindClipping.cpp:252
msgid "Start and stop must be greater than 0."
-msgstr "Inicio e final devem ser maiores que zero."
+msgstr "InÃcio e final devem ser maiores que zero."
#: effects/FindClipping.h:37
msgid "Find Clipping..."
msgstr "Encontrar clipping..."
-#: effects/FindClipping.h:47
+#: effects/FindClipping.h:54
msgid "Detecting clipping"
msgstr "Detectando clipping"
@@ -5160,58 +5589,56 @@ msgstr "Detectando clipping"
msgid "Invert"
msgstr "Inverter verticalmente"
-#: effects/Invert.h:35
+#: effects/Invert.h:41
msgid "Inverting"
msgstr "Invertendo"
-#: effects/Leveller.cpp:136
+#: effects/Leveller.cpp:192
msgid "Leveller"
msgstr "Nivelador"
-#: effects/Leveller.cpp:52
+#: effects/Leveller.cpp:205
msgid "None-Skip"
msgstr "Nenhum - omitir"
-#: effects/Leveller.cpp:53
+#: effects/Leveller.cpp:206
msgid "Light"
msgstr "Leve"
-#: effects/Leveller.cpp:54
+#: effects/Leveller.cpp:207
msgid "Moderate"
msgstr "Moderado"
-#: effects/Leveller.cpp:55
+#: effects/Leveller.cpp:208
msgid "Heavy"
msgstr "Pesado"
-#: effects/Leveller.cpp:56
+#: effects/Leveller.cpp:209
msgid "Heavier"
msgstr "Mais pesado"
-#: effects/Leveller.cpp:57
+#: effects/Leveller.cpp:210
msgid "Heaviest"
msgstr "Muito mais pesado"
-#: effects/TruncSilence.cpp:332
+#: effects/Leveller.cpp:214
msgid "by Lynn Allan"
msgstr "por Lynn Allan"
-#: effects/Leveller.cpp:226
-#: effects/Leveller.cpp:231
+#: effects/Leveller.cpp:224
msgid "Degree of Leveling"
-msgstr "Grau de nivelação"
+msgstr "Grau de nivelamento"
-#: effects/Leveller.cpp:226
+#: effects/Leveller.cpp:228
msgid "Degree of Leveling:"
-msgstr ""
+msgstr "Grau de nivelamento:"
# Limiar de ruÃdo (Chiado/Zunido/RuÃdo ambiente) nao ta cabendo na janela!
-#: effects/Leveller.cpp:242
+#: effects/Leveller.cpp:236
msgid "Noise Threshold (Hiss/Hum/Ambient Noise)"
-msgstr "Limiar de ruÃdo (Chiado/Zunido/RuÃdo ambiente)"
+msgstr "Limiar de ruÃdo (Chiado/Zunido/Ambiente)"
-#: effects/Leveller.cpp:238
-#, fuzzy
+#: effects/Leveller.cpp:240
msgid "Threshold for Noise:"
msgstr "Limiar de ruÃdo:"
@@ -5219,161 +5646,159 @@ msgstr "Limiar de ruÃdo:"
msgid "Leveller..."
msgstr "Nivelador..."
-#: effects/Leveller.h:36
+#: effects/Leveller.h:42
msgid "Applying Leveller..."
msgstr "Aplicando nivelador..."
#: effects/LoadEffects.cpp:102
msgid "Generator"
-msgstr ""
+msgstr "Gerador"
#: effects/LoadEffects.cpp:104
msgid "Instrument"
-msgstr ""
+msgstr "Instrumento"
#: effects/LoadEffects.cpp:106
msgid "Oscillator"
-msgstr ""
+msgstr "Oscilador"
#: effects/LoadEffects.cpp:108
msgid "Utility"
-msgstr ""
+msgstr "Utilitário"
#: effects/LoadEffects.cpp:110
msgid "Converter"
-msgstr ""
+msgstr "Conversor"
#: effects/LoadEffects.cpp:112
msgid "Analyser"
-msgstr ""
-
-#: toolbars/MixerToolBar.cpp:60
-msgid "Mixer"
-msgstr "Mixer"
+msgstr "Analisador"
#: effects/LoadEffects.cpp:116
msgid "Simulator"
-msgstr ""
+msgstr "Simulador"
#: effects/LoadEffects.cpp:118
msgid "Delay"
-msgstr ""
+msgstr "Delay"
#: effects/LoadEffects.cpp:120
msgid "Modulator"
-msgstr ""
+msgstr "Modulador"
#: effects/LoadEffects.cpp:122
msgid "Reverb"
-msgstr ""
+msgstr "Reverberador"
-#: effects/Phaser.cpp:77
+#: effects/LoadEffects.cpp:124
+#: effects/Phaser.cpp:208
msgid "Phaser"
msgstr "Phaser"
#: effects/LoadEffects.cpp:126
msgid "Flanger"
-msgstr ""
+msgstr "Flanger"
#: effects/LoadEffects.cpp:128
msgid "Chorus"
-msgstr ""
+msgstr "Refrão"
#: effects/LoadEffects.cpp:130
msgid "Filter"
-msgstr ""
+msgstr "Filtro"
#: effects/LoadEffects.cpp:132
msgid "Lowpass"
-msgstr ""
+msgstr "Passa-baixa"
#: effects/LoadEffects.cpp:134
msgid "Bandpass"
-msgstr ""
+msgstr "Passa-faixa"
#: effects/LoadEffects.cpp:136
msgid "Highpass"
-msgstr ""
+msgstr "Passa-alta"
#: effects/LoadEffects.cpp:138
msgid "Comb"
-msgstr ""
+msgstr "Comb"
#: effects/LoadEffects.cpp:140
msgid "Allpass"
-msgstr ""
+msgstr "Passa-tudo"
#: effects/LoadEffects.cpp:142
msgid "Equaliser"
-msgstr ""
+msgstr "Equalizador"
#: effects/LoadEffects.cpp:144
msgid "Parametric"
-msgstr ""
+msgstr "Paramétrico"
#: effects/LoadEffects.cpp:146
msgid "Multiband"
-msgstr ""
+msgstr "Multifaixas"
#: effects/LoadEffects.cpp:148
msgid "Spectral Processor"
-msgstr ""
+msgstr "Processador espectral "
#: effects/LoadEffects.cpp:150
msgid "Pitch Shifter"
-msgstr ""
+msgstr "Alterador de altura"
#: effects/LoadEffects.cpp:152
msgid "Amplifier"
-msgstr ""
+msgstr "Amplificador"
#: effects/LoadEffects.cpp:154
msgid "Distortion"
-msgstr ""
+msgstr "Distorção"
#: effects/LoadEffects.cpp:156
msgid "Waveshaper"
-msgstr ""
+msgstr "Alterador de onda"
#: effects/LoadEffects.cpp:158
msgid "Dynamics Processor"
-msgstr ""
+msgstr "Processador dinâmico"
#: effects/LoadEffects.cpp:160
msgid "Compressor"
-msgstr ""
+msgstr "Compressor"
#: effects/LoadEffects.cpp:162
msgid "Expander"
-msgstr ""
+msgstr "Expansor"
#: effects/LoadEffects.cpp:164
msgid "Limiter"
-msgstr ""
+msgstr "Limitador"
#: effects/LoadEffects.cpp:166
msgid "Gate"
-msgstr ""
+msgstr "Gate"
-#: effects/NoiseRemoval.cpp:723
+#: effects/LoadEffects.cpp:199
+#: effects/NoiseRemoval.cpp:738
msgid "Noise Removal"
msgstr "Remoção de ruÃdos"
#: effects/LoadEffects.cpp:201
msgid "Pitch and Tempo"
-msgstr ""
+msgstr "Tempo e Altura"
#: effects/LoadEffects.cpp:203
msgid "Timeline Changer"
-msgstr ""
+msgstr "Alterar linha do tempo"
#: effects/LoadEffects.cpp:205
msgid "Time"
-msgstr ""
+msgstr "Tempo"
#: effects/LoadEffects.cpp:207
msgid "Onsets"
-msgstr ""
+msgstr "Ataques silábicos"
#: effects/Noise.cpp:37
msgid "White"
@@ -5391,95 +5816,101 @@ msgstr "Marrom"
msgid "Noise Generator"
msgstr "Gerador de ruÃdo"
-#: effects/Noise.cpp:256
+#: effects/Noise.cpp:189
msgid "Noise type"
msgstr "Tipo de ruÃdo"
-#: effects/Noise.h:41
+#: effects/Noise.h:42
msgid "Noise..."
msgstr "RuÃdo..."
-#: effects/Noise.h:49
+#: effects/Noise.h:56
#, c-format
msgid "Applied effect: Generate Noise, %.6lf seconds"
msgstr "Efeito aplicado: Gerar RuÃdo, %.6lf segundos"
-#: effects/Noise.h:53
+#: effects/Noise.h:60
msgid "Generating Noise"
msgstr "Gerando ruÃdo"
-#: effects/NoiseRemoval.cpp:192
+#: effects/NoiseRemoval.cpp:191
#, c-format
-msgid "Could not open file:\n"
+msgid ""
+"Could not open file:\n"
" %s"
-msgstr "Não foi possÃvel abrir o arquivo:\n"
+msgstr ""
+"Não foi possÃvel abrir o arquivo:\n"
" %s"
-#: effects/NoiseRemoval.cpp:277
+#: effects/NoiseRemoval.cpp:276
msgid "Attempt to run Noise Removal without a noise profile.\n"
msgstr "Tentou-se executar a Remoção de RuÃdo sem um perfil de ruÃdo definido.\n"
-#: effects/NoiseRemoval.cpp:813
+#: effects/NoiseRemoval.cpp:827
msgid "Step 1"
msgstr "Passo 1"
-#: effects/NoiseRemoval.cpp:814
-msgid "Select a few seconds of just noise so Audacity knows what to filter out,\n"
+#: effects/NoiseRemoval.cpp:828
+msgid ""
+"Select a few seconds of just noise so Audacity knows what to filter out,\n"
"then click Get Noise Profile:"
-msgstr "Selecione alguns segundos de áudio contendo apenas os ruÃdos que devem ser filtrados.\n"
+msgstr ""
+"Selecione alguns segundos de áudio contendo apenas os ruÃdos que devem ser filtrados.\n"
"Quando estiver pronto, clique em \"Perceber perfil de ruÃdo\":"
-#: effects/NoiseRemoval.cpp:815
+#: effects/NoiseRemoval.cpp:829
msgid "Step 2"
msgstr "Passo 2"
-#: effects/NoiseRemoval.cpp:816
-msgid "Select all of the audio you want filtered, choose how much noise you want\n"
+#: effects/NoiseRemoval.cpp:830
+msgid ""
+"Select all of the audio you want filtered, choose how much noise you want\n"
"filtered out, and then click 'OK' to remove noise.\n"
-msgstr "Selecione todo o áudio que deverá ser filtrado, escolha a quantidade de\n"
+msgstr ""
+"Selecione todo o áudio que deverá ser filtrado, escolha a quantidade de\n"
"ruÃdo a ser filtrado e clique OK para remover o ruÃdo.\n"
-#: effects/NoiseRemoval.cpp:821
+#: effects/NoiseRemoval.cpp:835
msgid "Noise Removal by Dominic Mazzoni"
msgstr "Remoção de ruÃdos de Dominic Mazzoni"
-#: effects/NoiseRemoval.cpp:829
+#: effects/NoiseRemoval.cpp:843
msgid "Get Noise Profile"
msgstr "Perceber perfil de ruÃdo"
-#: effects/NoiseRemoval.cpp:840
+#: effects/NoiseRemoval.cpp:854
msgid "Noise reduction (dB):"
msgstr "Redução de ruÃdo (dB):"
-#: effects/NoiseRemoval.cpp:850
+#: effects/NoiseRemoval.cpp:859
msgid "Noise reduction"
-msgstr ""
+msgstr "Redução de ruÃdo"
-#: effects/NoiseRemoval.cpp:848
+#: effects/NoiseRemoval.cpp:863
msgid "Frequency smoothing (Hz):"
-msgstr "Suavização de freqüência (Hz):"
+msgstr "Suavização de frequência (Hz):"
-#: effects/NoiseRemoval.cpp:859
+#: effects/NoiseRemoval.cpp:868
msgid "Frequency smoothing"
-msgstr ""
+msgstr "Suavização de frequência"
-#: effects/NoiseRemoval.cpp:856
+#: effects/NoiseRemoval.cpp:872
msgid "Attack/decay time (secs):"
-msgstr "Tempo de ataque/caÃda (segs):"
+msgstr "Tempo de ataque/decaimento (segs):"
-#: effects/NoiseRemoval.cpp:868
+#: effects/NoiseRemoval.cpp:877
msgid "Attach/decay time"
-msgstr ""
+msgstr "Tempo de ataque/decaimento "
-#: effects/NoiseRemoval.h:35
+#: effects/NoiseRemoval.h:37
msgid "Noise Removal..."
msgstr "Remover ruÃdo..."
-#: effects/NoiseRemoval.h:44
+#: effects/NoiseRemoval.h:52
msgid "Creating Noise Profile"
-msgstr "Criando perfil de ruÃdos"
+msgstr "Criando perfil de ruÃdo"
-#: effects/NoiseRemoval.h:46
+#: effects/NoiseRemoval.h:54
msgid "Removing Noise"
msgstr "Removendo ruÃdos"
@@ -5490,11 +5921,6 @@ msgstr "Removendo ruÃdos"
msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr "Efeito aplicado: %s, %s remoção de compensação DC, %s normalização de amplitude "
-#: effects/Normalize.cpp:74
-#: effects/Normalize.cpp:75
-msgid "false"
-msgstr "sem"
-
#. i18n-hint: true here means that the option was
#. * selected. Opposite false if not selected
#: effects/Normalize.cpp:74
@@ -5507,157 +5933,167 @@ msgstr "com"
msgid ", maximum amplitude = %.1f dB"
msgstr ", amplitude máxima = %.1f dB"
-#: effects/Normalize.cpp:113
+#: effects/Normalize.cpp:327
msgid "Normalize"
msgstr "Normalizar"
-#: effects/Normalize.cpp:351 effects/Normalize.cpp:352
+#: effects/Normalize.cpp:355
msgid "Remove any DC offset (center on 0.0 vertically)"
-msgstr ""
+msgstr "Remover compensação DC (centralizar verticalmente em 0.0)"
-#: effects/Normalize.cpp:357
+#: effects/Normalize.cpp:358
msgid "Normalize maximum amplitude to:"
-msgstr ""
+msgstr "Normalizar a amplitude máxima para:"
-#: effects/Normalize.cpp:361
+#: effects/Normalize.cpp:366
msgid "-"
msgstr "-"
-#: effects/Normalize.cpp:367
+#: effects/Normalize.cpp:371
msgid "Maximum amplitude dB"
-msgstr ""
+msgstr "Amplitude máxima dB"
-#: effects/Normalize.h:32
+#: effects/Normalize.h:33
msgid "Normalize..."
msgstr "Normalizar..."
-#: effects/Normalize.h:41
+#: effects/Normalize.h:49
msgid "Normalizing..."
-msgstr "Normalizando"
+msgstr "Normalizando..."
#: effects/Phaser.cpp:65
#, c-format
msgid "Applied effect: %s %d stages, %.0f%% wet, frequency = %.1f Hz, start phase = %.0f deg, depth = %d, feedback = %.0f%%"
-msgstr "Efeito aplicado: %s %d estágios, %.0f%% wet, freqüência = %.1f Hz, fase inicial = %.0f graus, prof. = %d, retorno = %.0f%%"
+msgstr "Efeito aplicado: %s %d estágios, %.0f%% wet, frequência = %.1f Hz, fase inicial = %.0f graus, prof. = %d, retorno = %.0f%%"
-#: effects/Phaser.cpp:222
+#: effects/Phaser.cpp:228
msgid "Stages:"
msgstr "Estágios:"
-#: effects/Phaser.cpp:229
+#: effects/Phaser.cpp:231
msgid "Stages"
-msgstr ""
+msgstr "Estágios"
-#: effects/Phaser.cpp:231
+#: effects/Phaser.cpp:236
msgid "Dry/Wet:"
-msgstr ""
+msgstr "Dry/Wet:"
-#: effects/Phaser.cpp:234
+#: effects/Phaser.cpp:239
msgid "Dry Wet"
-msgstr ""
+msgstr "Dry Wet"
-#: effects/Phaser.cpp:264
-#: effects/Wahwah.cpp:221
+#: effects/Phaser.cpp:244
+#: effects/Wahwah.cpp:222
msgid "LFO Frequency (Hz):"
-msgstr "Freqüência LFO (Hz):"
+msgstr "Frequência LFO (Hz):"
-#: effects/Phaser.cpp:239 effects/Wahwah.cpp:224
+#: effects/Phaser.cpp:247
+#: effects/Wahwah.cpp:225
msgid "LFO frequency in hertz"
-msgstr ""
+msgstr "Frequência LFO (Hz)"
-#: effects/Phaser.cpp:280
-#: effects/Wahwah.cpp:237
+#: effects/Phaser.cpp:252
+#: effects/Wahwah.cpp:230
msgid "LFO Start Phase (deg.):"
msgstr "Fase inicial LFO (Graus):"
-#: effects/Phaser.cpp:244 effects/Wahwah.cpp:229
+#: effects/Phaser.cpp:255
+#: effects/Wahwah.cpp:233
msgid "LFO start phase in degrees"
-msgstr ""
+msgstr "Fase inicial LFO (Graus)"
-#: effects/Phaser.cpp:296
+#: effects/Phaser.cpp:260
msgid "Depth:"
msgstr "Profundidade:"
-#: effects/Phaser.cpp:249 effects/Wahwah.cpp:234
+#: effects/Phaser.cpp:263
+#: effects/Wahwah.cpp:241
msgid "Depth in percent"
-msgstr ""
+msgstr "Profundidade (%)"
-#: effects/Phaser.cpp:312
+#: effects/Phaser.cpp:268
msgid "Feedback (%):"
msgstr "Feedback (%):"
-#: effects/Phaser.cpp:254
+#: effects/Phaser.cpp:271
msgid "Feedback in percent"
-msgstr ""
+msgstr "Retorno (%)"
-#: effects/Phaser.h:38
+#: effects/Phaser.h:45
msgid "Phaser..."
msgstr "Phaser..."
-#: effects/Phaser.h:46
+#: effects/Phaser.h:59
msgid "Applying Phaser"
msgstr "Aplicando Phaser"
#: effects/Repair.cpp:99
-msgid "The Repair effect is intended to be used on very short sections of damaged audio (up to 128 samples).\n"
+msgid ""
+"The Repair effect is intended to be used on very short sections of damaged audio (up to 128 samples).\n"
"\n"
"Zoom in and select a tiny fraction of a second to repair."
-msgstr "O efeito Reparar foi desenvolvido para ser usado apenas em partes pequenas de áudio danificado \n"
+msgstr ""
+"O efeito Reparar foi desenvolvido para ser usado apenas em partes pequenas de áudio danificado.\n"
"(até 128 amostras).\n"
"\n"
"Aumente o nÃvel de Zoom e selecione apenas uma pequena fração de segundo para reparar."
#: effects/Repair.cpp:105
-msgid "Repair works by using audio data outside the selection region.\n"
+msgid ""
+"Repair works by using audio data outside the selection region.\n"
"\n"
"Please select a region that has audio touching at least one side of it.\n"
"\n"
"The more surrounding audio, the better it performs."
msgstr ""
+"Reparar funciona utilizando áudio de fora da área selecionada.\n"
+"\n"
+"Por favor, selecione uma área subjacente à desejada para reparar.\n"
+"\n"
+"Quanto mais áudio ao redor for selecionado, melhor o resultado."
-#: effects/Repair.h:37
+#: effects/Repair.h:43
msgid "Repairing damaged audio"
msgstr "Reparando áudio danificado"
-#: effects/Repeat.cpp:49
+#: effects/Repeat.cpp:50
#, c-format
msgid "Repeated %d times"
msgstr "Repetido %d vezes"
-#: effects/Repeat.cpp:75
+#: effects/Repeat.cpp:76
msgid "Tracks are too long to repeat the selection."
msgstr "Faixas longas demais para repetir a seleção."
-#: effects/Repeat.cpp:76
-#: effects/Repeat.cpp:80
+#: effects/Repeat.cpp:77
+#: effects/Repeat.cpp:186
msgid "Repeat"
msgstr "Repetir"
-#: effects/Repeat.cpp:212
-#, fuzzy
+#: effects/Repeat.cpp:211
msgid "Number of times to repeat:"
msgstr "Número de vezes a repetir:"
-#: effects/Repeat.cpp:221
+#: effects/Repeat.cpp:220
msgid "New selection length: hh:mm:ss"
-msgstr ""
+msgstr "Novo tamanho da seleção: hh:mm:ss"
-#: effects/Repeat.cpp:207
-#: effects/Repeat.cpp:237
+#: effects/Repeat.cpp:252
msgid "New selection length: "
msgstr "Novo tamanho da seleção:"
#. i18n-hint: Name of time display format that shows time in hours, minutes
#. * and seconds
-#: widgets/TimeTextCtrl.cpp:270
+#: effects/Repeat.cpp:261
+#: widgets/TimeTextCtrl.cpp:272
msgid "hh:mm:ss"
msgstr "hh:mm:ss"
-#: effects/Repeat.h:32
+#: effects/Repeat.h:33
msgid "Repeat..."
msgstr "Repetir..."
-#: effects/Repeat.h:40
+#: effects/Repeat.h:47
msgid "Performing Repeat"
msgstr "Executando 'repetir'"
@@ -5665,7 +6101,7 @@ msgstr "Executando 'repetir'"
msgid "Reverse"
msgstr "Inverter inÃcio e fim"
-#: effects/Reverse.h:38
+#: effects/Reverse.h:44
msgid "Reversing"
msgstr "Revertendo"
@@ -5677,31 +6113,33 @@ msgstr "Gerador de Silêncio"
msgid "Silence..."
msgstr "Silêncio..."
-#: effects/Silence.h:42
+#: effects/Silence.h:48
msgid "Generating Silence"
msgstr "Gerando silêncio"
-#: effects/Silence.h:47
+#: effects/Silence.h:53
#, c-format
msgid "Applied effect: Generate Silence, %.6lf seconds"
msgstr "Efeito aplicado: Inserir silêncio, %.6lf segundos"
-#: effects/SimplePairedTwoTrack.h:120
+#: effects/SimplePairedTwoTrack.h:115
msgid "Sorry, this effect cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "Desculpe, este efeito não pode ser executado em faixas estéreo onde os canais tem conteúdos diferentes entre si."
+msgstr "Desculpe, este efeito não pode ser executado em faixas estéreo onde os canais têm conteúdos diferentes entre si."
#: effects/SpikeCleaner.cpp:69
msgid "Spike Cleaner"
-msgstr "Limpador de arestas"
+msgstr "Limpador de surtos"
#: effects/SpikeCleaner.cpp:160
msgid "SpikeCleaner by Lynn Allan"
-msgstr "Limpador de arestas por Lynn Allan"
+msgstr "Limpador de surtos por Lynn Allan"
#: effects/SpikeCleaner.cpp:165
-msgid "Max Spike Duration (milliseconds): \n"
+msgid ""
+"Max Spike Duration (milliseconds): \n"
"(99999 or greater is off)"
-msgstr "Duração máxima do surto transiente (miliseg.):\n"
+msgstr ""
+"Duração máxima do surto transiente (milisseg.):\n"
"(99999 ou mais = desligado)"
#: effects/SpikeCleaner.cpp:178
@@ -5710,131 +6148,129 @@ msgstr "Limiar de silêncio:"
#: effects/SpikeCleaner.h:27
msgid "Spike Cleaner..."
-msgstr "Limpar arestas..."
+msgstr "Limpador de Surtos..."
#: effects/SpikeCleaner.h:35
msgid "Applying Spike Cleaner..."
-msgstr "Aplicando Limpar Arestas..."
+msgstr "Aplicando Limpador de Surtos..."
-#: Menus.cpp:358
-#: Menus.cpp:564
#: effects/StereoToMono.h:23
-msgid "&Stereo to Mono"
-msgstr "E&stéreo para Mono"
+msgid "Stereo to Mono"
+msgstr "Estéreo para Mono"
-#: effects/StereoToMono.h:32
+#: effects/StereoToMono.h:38
msgid "Applying Stereo to Mono"
msgstr "Aplicando Estéreo para Mono"
#: effects/TimeScale.cpp:140
msgid "Time Scale"
-msgstr ""
+msgstr "Escala de tempo"
#: effects/TimeScale.cpp:176
msgid "Sliding Time Scale/Pitch Shift"
-msgstr ""
+msgstr "Escala de tempo/Aumento de altura"
#: effects/TimeScale.cpp:178
msgid "using SBSMS, by Clayton Otey"
-msgstr ""
+msgstr "utilizando o SBSMS, por Clayton Otey"
#: effects/TimeScale.cpp:187
msgid "Initial Tempo Change (%):"
-msgstr ""
+msgstr "Alteração inicial no Tempo (%):"
#: effects/TimeScale.cpp:191
msgid "Final Tempo Change (%):"
-msgstr ""
+msgstr "Alteração final no Tempo (%):"
#: effects/TimeScale.cpp:202
msgid "Initial Tempo Change (%)"
-msgstr ""
+msgstr "Alteração inicial no Tempo (%)"
#: effects/TimeScale.cpp:211
msgid "Final Tempo Change (%)"
-msgstr ""
+msgstr "Alteração final no Tempo (%)"
#: effects/TimeScale.cpp:219
msgid "Initial Pitch Shift (semitones) [-12 to 12]:"
-msgstr ""
+msgstr "Aumento de altura inicial (semitons) [-12 to 12]:"
#: effects/TimeScale.cpp:223
msgid "Final Pitch Shift (semitones) [-12 to 12]:"
-msgstr ""
+msgstr "Aumento de altura final (semitons) [-12 to 12]:"
#: effects/TimeScale.h:33
msgid "Sliding Time Scale/Pitch Shift..."
-msgstr ""
+msgstr "Escala de tempo/Aumento de altura..."
#: effects/TimeScale.h:47
msgid "Changing Tempo/Pitch"
-msgstr ""
+msgstr "Alterando Tempo/Altura "
-#: effects/ToneGen.cpp:66
+#: effects/ToneGen.cpp:61
#, c-format
msgid "Applied effect: Generate %s wave %s, frequency = %.2f Hz, amplitude = %.2f, %.6lf seconds"
-msgstr "Efeito aplicado: Gerada %s onda %s, freqüência = %.2f Hz, amplitude = %.2f, %.6lf segundos"
+msgstr "Efeito aplicado: Gerada %s onda %s, frequência = %.2f Hz, amplitude = %.2f, %.6lf segundos"
-#: effects/ToneGen.cpp:75
-#: widgets/Meter.cpp:379
+#: effects/ToneGen.cpp:69
+#: widgets/Meter.cpp:405
msgid "Linear"
msgstr "Linear"
-#: effects/ToneGen.cpp:76
+#: effects/ToneGen.cpp:70
msgid "Logarithmic"
msgstr "LogarÃtmico"
# chirp=trilo. no audacity ficou 'tons programaveis'
-#: effects/ToneGen.cpp:78
+#: effects/ToneGen.cpp:71
msgid "Chirp Generator"
msgstr "Gerador de tons programáveis"
-#: effects/ToneGen.cpp:78
+#: effects/ToneGen.cpp:71
msgid "Tone Generator"
msgstr "Gerador de tom"
-#: effects/ToneGen.cpp:79
+#: effects/ToneGen.cpp:72
msgid "Sine"
msgstr "Senoidal"
-#: effects/ToneGen.cpp:80
+#: effects/ToneGen.cpp:73
msgid "Square"
msgstr "Quadrado"
-#: effects/ToneGen.cpp:81
+#: effects/ToneGen.cpp:74
msgid "Sawtooth"
msgstr "Dente-de-serra"
-#: effects/ToneGen.cpp:82
+#: effects/ToneGen.cpp:75
msgid "Square, no alias"
msgstr "Quadrado, sem graduação"
-#: effects/ToneGen.cpp:327
-#: effects/ToneGen.cpp:363
+#: effects/ToneGen.cpp:277
+#: effects/ToneGen.cpp:314
msgid "Frequency (Hz)"
msgstr "Frequência (Hz)"
-#: effects/ToneGen.cpp:354
+#: effects/ToneGen.cpp:305
msgid "Waveform:"
msgstr "Formato:"
-#: effects/ToneGen.cpp:358
+#: effects/ToneGen.cpp:314
msgid "Frequency Hertz Start"
-msgstr ""
+msgstr "Frequência inicial (Hz)"
-#: effects/ToneGen.cpp:359
+#: effects/ToneGen.cpp:315
msgid "Frequency Hertz End"
-msgstr ""
+msgstr "Frequência final (Hz)"
-#: effects/ToneGen.cpp:360
+#: effects/ToneGen.cpp:316
msgid "Amplitude Start"
-msgstr ""
+msgstr "Amplitude inicial"
-#: effects/ToneGen.cpp:361
+#: effects/ToneGen.cpp:317
msgid "Amplitude End"
-msgstr ""
+msgstr "Amplitude final"
-#: effects/ToneGen.cpp:372
+#: effects/ToneGen.cpp:322
msgid "Interpolation:"
msgstr "Interpolação:"
@@ -5848,275 +6284,341 @@ msgstr "Tom..."
# chirp=trilo
# no audacity tom programavel
-#: effects/ToneGen.h:48
+#: effects/ToneGen.h:54
msgid "Generating Chirp"
msgstr "Gerando tom programável"
-#: effects/ToneGen.h:48
+#: effects/ToneGen.h:54
msgid "Generating Tone"
msgstr "Gerando tom"
-#: effects/TruncSilence.cpp:113
+#: effects/TruncSilence.cpp:133
msgid "All tracks must have the same sample rate"
msgstr "Todas as faixas devem ter a mesma taxa de amostragem"
-#: effects/TruncSilence.cpp:113
-#: effects/TruncSilence.cpp:322
+#: effects/TruncSilence.cpp:133
+#: effects/TruncSilence.cpp:444
msgid "Truncate Silence"
msgstr "Excluir silêncio"
-#: effects/TruncSilence.cpp:346
+#: effects/TruncSilence.cpp:454
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr "by Lynn Allan && Philip Van Baren"
+
+#: effects/TruncSilence.cpp:468
+msgid "Min silence duration:"
+msgstr "Duração mÃnima do silêncio:"
+
+#: effects/TruncSilence.cpp:471
+#: effects/TruncSilence.cpp:475
+#: prefs/MidiIOPrefs.cpp:197
+#: prefs/MidiIOPrefs.cpp:199
+msgid "milliseconds"
+msgstr "milissegundos"
+
+#: effects/TruncSilence.cpp:472
msgid "Max silence duration:"
msgstr "Duração máxima do silêncio:"
-#: effects/TruncSilence.cpp:349
-#: prefs/AudioIOPrefs.cpp:190
-#: prefs/AudioIOPrefs.cpp:193
-msgid "milliseconds"
-msgstr "millisegundos"
+#: effects/TruncSilence.cpp:476
+msgid "Silence compression:"
+msgstr "Compressão do silêncio:"
-#: effects/TruncSilence.cpp:351
+#: effects/TruncSilence.cpp:479
+msgid ":1"
+msgstr ":1"
+
+#: effects/TruncSilence.cpp:481
msgid "Threshold for silence:"
msgstr "Limiar de silêncio:"
-#: effects/TruncSilence.cpp:376
-msgid " Duration must be at least 1 millisecond"
-msgstr " A duração deve ser de no mÃnimo 1 milisegundo"
+#: effects/TruncSilence.cpp:507
+msgid ""
+" Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
+msgstr ""
+" A duração deve ser de no mÃnimo 1 milissegundo\n"
+" Taxa de compressão deve ser de pelo menos 1:1"
-#: effects/TruncSilence.h:28
+#: effects/TruncSilence.h:29
msgid "Truncate Silence..."
msgstr "Excluir silêncio..."
-#: effects/TruncSilence.h:36
+#: effects/TruncSilence.h:43
msgid "Truncating Silence..."
-msgstr "Diminuindo silêncio"
+msgstr "Excluindo silêncio"
-#: effects/VST/VSTEffect.cpp:165
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "Desculpe, os efeitos VST não podem ser executados em faixas estéreo onde cada canal tem um conteúdo diferente do outro."
+#: effects/VST/VSTEffect.cpp:256
+#: effects/ladspa/LadspaEffect.cpp:590
+#: effects/lv2/LV2Effect.cpp:798
+msgid "Effect Settings"
+msgstr "Ajustes de Efeitos"
+
+#: effects/VST/VSTEffect.cpp:336
+#: effects/ladspa/LadspaEffect.cpp:555
+#: effects/ladspa/LadspaEffect.cpp:563
+#: prefs/QualityPrefs.cpp:74
+#: prefs/TracksPrefs.cpp:48
+msgid "None"
+msgstr "Nenhum"
+
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr "Ajustes:"
-#: effects/VST/VSTEffect.cpp:180
-msgid "Can't process replacing"
-msgstr "ImpossÃvel processar"
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr "Carregar"
-#: effects/VST/VSTEffect.cpp:403
-msgid "VST Plug-in parameters:"
-msgstr "Parâmetros do plug-in VST:"
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr "Salvar"
+
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr "Carregar programação VST:"
+
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr "Erro ao carregar programação"
+
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr "Salvar programação VST como:"
+
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr "Este parâmetro será salvo como %s. Continuar?"
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr "Executando efeito: "
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr "Todos os canais das faixas estéreo devem ter a mesma taxa de amostragem."
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr "Todos os canais das faixas estéreo devem ter o mesma tamanho."
#: effects/Wahwah.cpp:61
#, c-format
msgid "Applied effect: %s frequency = %.1f Hz, start phase = %.0f deg, depth = %.0f%%, resonance = %.1f, frequency offset = %.0f%%"
-msgstr "Efeito aplicado: %s freqüência = %.1f Hz, fase inicial = %.0f graus, prof. = %.0f%%, ressonância = %.1f, freqüência de compensação = %.0f%%"
+msgstr "Efeito aplicado: %s frequência = %.1f Hz, fase inicial = %.0f graus, prof. = %.0f%%, ressonância = %.1f, frequência de compensação = %.0f%%"
-#: effects/Wahwah.cpp:72
+#: effects/Wahwah.cpp:203
msgid "Wahwah"
msgstr "Wahwah"
-#: effects/Wahwah.cpp:253
+#: effects/Wahwah.cpp:238
msgid "Depth (%):"
msgstr "Profundidade (%):"
-#: effects/Wahwah.cpp:269
+#: effects/Wahwah.cpp:246
msgid "Resonance:"
msgstr "Ressonância:"
-#: effects/Wahwah.cpp:239
+#: effects/Wahwah.cpp:249
msgid "Resonance"
-msgstr ""
+msgstr "Ressonância"
-#: effects/Wahwah.cpp:285
+#: effects/Wahwah.cpp:254
msgid "Wah Frequency Offset (%):"
-msgstr "Freqüência de Compensação Offset (%):"
+msgstr "Frequência de Compensação Wah (%):"
-#: effects/Wahwah.cpp:244
+#: effects/Wahwah.cpp:257
msgid "Wah frequency offset in percent"
-msgstr ""
+msgstr "Frequência de Compensação Wah em percentagem"
-#: effects/Wahwah.h:34
+#: effects/Wahwah.h:41
msgid "Wahwah..."
msgstr "Wahwah..."
-#: effects/Wahwah.h:42
+#: effects/Wahwah.h:55
msgid "Applying Wahwah"
msgstr "Aplicando Wahwah"
-#: effects/audiounits/AudioUnitEffect.cpp:133
-#: effects/ladspa/LadspaEffect.cpp:169
+#: effects/audiounits/AudioUnitEffect.cpp:139
+#: effects/ladspa/LadspaEffect.cpp:178
+#: effects/lv2/LV2Effect.cpp:193
#, c-format
msgid "Performing Effect: %s"
msgstr "Executando efeito: %s"
-#: effects/ladspa/LadspaEffect.cpp:189
+#: effects/ladspa/LadspaEffect.cpp:198
+#: effects/lv2/LV2Effect.cpp:213
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr "Desculpe, os efeitos VST não podem ser executados em faixas estéreo onde cada canal tem um conteúdo diferente do outro."
-#: effects/ladspa/LadspaEffect.cpp:573
-#: effects/ladspa/LadspaEffect.cpp:581
-#: prefs/GUIPrefs.cpp:51
-#: prefs/QualityPrefs.cpp:72
-msgid "None"
-msgstr "Nenhum"
-
-#: effects/ladspa/LadspaEffect.cpp:575
-#: effects/vamp/VampEffect.cpp:384
+#: effects/ladspa/LadspaEffect.cpp:557
+#: effects/lv2/LV2Effect.cpp:773
+#: effects/vamp/VampEffect.cpp:371
msgid "Author: "
msgstr "Autor: "
-#: effects/ladspa/LadspaEffect.cpp:608
-msgid "Effect Settings"
-msgstr "Ajustes de Efeitos"
-
-#: effects/ladspa/LadspaEffect.cpp:699
+#: effects/ladspa/LadspaEffect.cpp:685
+#: effects/ladspa/LadspaEffect.cpp:688
+#: effects/lv2/LV2Effect.cpp:809
+#: effects/lv2/LV2Effect.cpp:812
msgid "Length (seconds)"
msgstr "Tamanho (segundos)"
-#: effects/lv2/LV2Effect.cpp:849 effects/lv2/LV2Effect.cpp:852
+#: effects/lv2/LV2Effect.cpp:824
+#: effects/lv2/LV2Effect.cpp:827
msgid "Note length (seconds)"
-msgstr ""
+msgstr "Tamanho da nota (segundos)"
-#: effects/lv2/LV2Effect.cpp:860 effects/lv2/LV2Effect.cpp:863
+# este 'note' eu não entendi se quer dizer 'anotação' ou 'perceber'. :(
+#: effects/lv2/LV2Effect.cpp:835
+#: effects/lv2/LV2Effect.cpp:838
msgid "Note velocity"
-msgstr ""
+msgstr "Velocidade da nota"
-#: effects/lv2/LV2Effect.cpp:871 effects/lv2/LV2Effect.cpp:874
+#: effects/lv2/LV2Effect.cpp:846
+#: effects/lv2/LV2Effect.cpp:849
msgid "Note key"
-msgstr ""
+msgstr "Chave da nota"
-#: effects/nyquist/Nyquist.cpp:252
+#: effects/nyquist/Nyquist.cpp:73
msgid "Applying Nyquist Effect..."
msgstr "Aplicando efeito Nyquist..."
-#: effects/nyquist/Nyquist.cpp:259
-#: effects/nyquist/Nyquist.cpp:321
+#: effects/nyquist/Nyquist.cpp:91
+#: effects/nyquist/Nyquist.cpp:401
msgid "Nyquist Prompt..."
msgstr "Digitar comando Nyquist..."
-#: effects/nyquist/Nyquist.cpp:322
+#: effects/nyquist/Nyquist.cpp:402
msgid "Enter Nyquist Command: "
msgstr "Digite comando Nyquist: "
-#: effects/nyquist/Nyquist.cpp:412
+#: effects/nyquist/Nyquist.cpp:515
msgid "Sorry, cannot apply effect on stereo tracks where the tracks don't match."
msgstr "Desculpe, os efeitos não podem ser executados em faixas estéreo com conteúdos diferentes em cada canal."
-#: effects/nyquist/Nyquist.cpp:440
+#: effects/nyquist/Nyquist.cpp:557
msgid "Nyquist"
msgstr "Nyquist"
-#: effects/nyquist/Nyquist.cpp:441
+#: effects/nyquist/Nyquist.cpp:558
msgid "Nyquist Output: "
msgstr "SaÃda do Nyquist:"
-#: effects/nyquist/Nyquist.cpp:598
-#: effects/nyquist/Nyquist.cpp:609
+#: effects/nyquist/Nyquist.cpp:656
+#: effects/nyquist/Nyquist.cpp:665
msgid "Nyquist returned the value:"
msgstr "O Nyquist retornou o seguinte valor:"
-#: effects/nyquist/Nyquist.cpp:651
+#: effects/nyquist/Nyquist.cpp:702
msgid "Nyquist did not return audio.\n"
msgstr "Nyquist não gerou áudio algum! \n"
-#: effects/nyquist/Nyquist.cpp:662
+#: effects/nyquist/Nyquist.cpp:711
msgid "Nyquist returned too many audio channels.\n"
msgstr "Nyquist gerou faixas de áudio demais para mixar! \n"
-#: effects/vamp/VampEffect.cpp:75
+#: effects/vamp/VampEffect.cpp:81
#, c-format
msgid "Extracting features: %s"
msgstr "Extraindo pontos: %s"
-#: effects/vamp/VampEffect.cpp:106
+#: effects/vamp/VampEffect.cpp:107
msgid "Sorry, Vamp Plug-ins cannot be run on stereo tracks where the individual channels of the track do not match."
msgstr "O plug-in Vamp não pode ser executado em faixas estéreo com áudio diferente entre os canais."
-#: effects/vamp/VampEffect.cpp:120
+#: effects/vamp/VampEffect.cpp:121
msgid "Sorry, failed to load Vamp Plug-in."
msgstr "Desculpe, não foi possÃvel carregar o plug-in Vamp."
-#: effects/vamp/VampEffect.cpp:228
+#: effects/vamp/VampEffect.cpp:207
msgid "Sorry, Vamp Plug-in failed to initialize."
msgstr "Desculpe, não foi possÃvel inicializar o plug-in Vamp."
-#: effects/vamp/VampEffect.cpp:376
+#: effects/vamp/VampEffect.cpp:363
msgid " - Vamp audio analysis plugin"
msgstr " - plug-in de análise de áudio Vamp"
-#: effects/vamp/VampEffect.cpp:423
+#: effects/vamp/VampEffect.cpp:399
msgid "Plugin Settings"
msgstr "Ajustes do plug-in"
-#: effects/vamp/VampEffect.cpp:446
+#: effects/vamp/VampEffect.cpp:418
+#: effects/vamp/VampEffect.cpp:424
msgid "Program"
msgstr "Programa"
-#: export/Export.cpp:469
+#: export/Export.cpp:468
msgid "All the selected audio is muted."
-msgstr ""
+msgstr "Todo áudio selecionado está mudo."
-#: export/Export.cpp:471
+#: export/Export.cpp:470
msgid "All the audio is muted."
-msgstr ""
+msgstr "Todo áudio está mudo."
-#: export/Export.cpp:451
+#: export/Export.cpp:526
msgid "Export File"
msgstr "Exportar arquivo"
-#: export/Export.cpp:459
+#: export/Export.cpp:535
msgid "&Options..."
msgstr "&Opções..."
-#: export/Export.cpp:485
+#: export/Export.cpp:576
msgid "Are you sure you want to save the file as \""
msgstr "Deseja salvar arquivo como \""
-#: export/Export.cpp:501
+#: export/Export.cpp:596
#, c-format
-msgid "You are about to save a %s file with the name \"%s\".\n"
+msgid ""
+"You are about to save a %s file with the name \"%s\".\n"
"\n"
"Normally these files end in \".%s\", and some programs will not open files with nonstandard extensions.\n"
"\n"
"Are you sure you want to save the file under this name?"
-msgstr "O Audacity salvará o arquivo do tipo %s com o nome %s.\n"
+msgstr ""
+"O Audacity salvará o arquivo do tipo %s com o nome %s.\n"
"Normalmente estes arquivos terminam com a extensão %s e alguns programas podem não reconhecer\n"
"este arquivo como válido.\n"
"Deseja salvar o arquivo com este nome?"
-#: export/Export.cpp:522
+#: export/Export.cpp:617
#, c-format
msgid "A file named \"%s\" already exists. Replace?"
msgstr "O arquivo de nome \"%s\" já existe. Deseja substituÃ-lo?"
-#: export/Export.cpp:604
+#: export/Export.cpp:719
msgid "Your tracks will be mixed down to two stereo channels in the exported file."
msgstr "Todas as faixas serão convertidas em duas faixas estéreo no arquivo exportado."
-#: export/Export.cpp:609
+#: export/Export.cpp:724
msgid "Your tracks will be mixed down to a single mono channel in the exported file."
msgstr "Todas as faixas serão convertidas em um único canal mono no arquivo exportado."
-#: export/Export.cpp:619
+#: export/Export.cpp:735
msgid "Advanced Mixing Options"
msgstr "Opções avançadas de mixagem"
-#: export/Export.cpp:821
+#: export/Export.cpp:943
#, c-format
msgid "Channel: %2d"
msgstr "Canal: %2d"
-#: export/Export.cpp:945
+#: export/Export.cpp:1058
msgid " - Left"
msgstr " - Esquerdo"
-#: export/Export.cpp:946
+#: export/Export.cpp:1060
msgid " - Right"
msgstr " - Direito"
-#: export/Export.cpp:1072
+#: export/Export.cpp:1082
msgid "Mixer Panel"
-msgstr ""
+msgstr "Painel de Mixagem"
-#: export/Export.cpp:976
-#: export/Export.cpp:1021
+#: export/Export.cpp:1088
+#: export/Export.cpp:1135
#, c-format
msgid "Output Channels: %2d"
msgstr "Canais de saÃda: %2d"
@@ -6125,19 +6627,19 @@ msgstr "Canais de saÃda: %2d"
msgid "Specify Command Line Encoder"
msgstr "Especifique o codificador para linha de comando"
-#: export/ExportCL.cpp:70
+#: export/ExportCL.cpp:68
msgid "Command Line Export Setup"
-msgstr "Configurações da exportação por linha-de-comando"
+msgstr "Configurações da exportação por linha de comando"
-#: export/ExportCL.cpp:75
+#: export/ExportCL.cpp:73
msgid "Command:"
msgstr "Comando:"
-#: export/ExportCL.cpp:80
+#: export/ExportCL.cpp:78
msgid "Show output"
msgstr "Exibir saÃda"
-#: export/ExportCL.cpp:87
+#: export/ExportCL.cpp:85
#, c-format
msgid "Data will be piped to standard in. \"%f\" will be replaced with output filename selected."
msgstr "Dados serão direcionados para a entrada padrão. \"%f\" será substituÃdo pelo nome de arquivo selecionado."
@@ -6146,564 +6648,705 @@ msgstr "Dados serão direcionados para a entrada padrão. \"%f\" será substitu
msgid "(external program)"
msgstr "(programa externo)"
-#: export/ExportCL.cpp:250
-#: export/ExportPCM.cpp:367
+#: export/ExportCL.cpp:286
+#: export/ExportPCM.cpp:492
#, c-format
msgid "Cannot export audio to %s"
msgstr "Não é possÃvel exportar áudio como %s."
-#: export/ExportCL.cpp:324
+#: export/ExportCL.cpp:360
msgid "Exporting the selected audio using command-line encoder"
msgstr "Exportando o trecho selecionado usando o intepretador de linha de comando"
-#: export/ExportCL.cpp:325
+#: export/ExportCL.cpp:361
msgid "Exporting the entire project using command-line encoder"
msgstr "Exportando todo o projeto usando o intepretador de linha de comando"
-#: export/ExportCL.cpp:389
+#: export/ExportCL.cpp:423
msgid "Command Output"
msgstr "SaÃda do Comando"
-#: export/ExportFFmpeg.cpp:59
-msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+#: export/ExportFFmpeg.cpp:61
+msgid ""
+"Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries."
+msgstr ""
+"à necessário configurar o FFmpeg para prosseguir.\n"
+"Você pode configurá-lo em Preferências -> Bibliotecas."
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr "Suporte a AMR não distribuÃvel"
+
+#: export/ExportFFmpeg.cpp:232
+msgid ""
+"Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
+"à necessário configurar o FFmpeg para prosseguir.\n"
+"Você pode configurá-lo em Preferências -> Bibliotecas.\n"
+"Note que o suporte a AMR não está disponÃvel para a\n"
+"instalação do FFMPEG. à necessário compilar o FFMPEG\n"
+"por conta própria."
-#: export/ExportFFmpeg.cpp:394
+#: export/ExportFFmpeg.cpp:433
#, c-format
-msgid "FFmpeg cannot find audio codec 0x%x.\n"
+msgid ""
+"FFmpeg cannot find audio codec 0x%x.\n"
"Support for this codec is probably not compiled in."
msgstr ""
+"FFmpeg não pode encontrar o codec de áudio 0x%x.\n"
+"O suporte a este codec provavelmente não foi compilado."
-#: export/ExportFFmpeg.cpp:614
+#: export/ExportFFmpeg.cpp:655
#, c-format
msgid "Attempted to export %d channels, but max. channels for selected output format is %d"
-msgstr ""
+msgstr "Tentou-se exportar %d canais, mas o número máximo de canais para este formato é %d"
-#: export/ExportFFmpeg.cpp:638
+#: export/ExportFFmpeg.cpp:684
#, c-format
msgid "Exporting selected audio as %s"
-msgstr ""
+msgstr "Exportando áudio selecionado como %s"
-#: export/ExportFFmpeg.cpp:639
+#: export/ExportFFmpeg.cpp:685
#, c-format
msgid "Exporting entire file as %s"
-msgstr ""
+msgstr "Exportando todo o arquivo como %s"
-#: export/ExportMP3.cpp:1918
+#: export/ExportFFmpeg.cpp:748
+#: export/ExportMP3.cpp:1777
msgid "Invalid sample rate"
msgstr "Taxa de amostragem inválida"
-#: export/ExportFFmpeg.cpp:715
+#: export/ExportFFmpeg.cpp:761
#, c-format
-msgid "The project sample rate (%d) is not supported by the current output\n"
+msgid ""
+"The project sample rate (%d) is not supported by the current output\n"
"file format. "
msgstr ""
+"A taxa de amostragem (%d) não é suportada pelo formato\n"
+"de arquivo atual."
-#: export/ExportFFmpeg.cpp:718
+#: export/ExportFFmpeg.cpp:764
#, c-format
-msgid "The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
+msgid ""
+"The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
"supported by the current output file format. "
msgstr ""
+"A combinação de taxa de amostragem (%d) e bit rate (%d kbps)\n"
+"não são suportados pelo formato atual."
-#: export/ExportMP3.cpp:1937
+#: export/ExportFFmpeg.cpp:767
+#: export/ExportMP3.cpp:1796
msgid "You may resample to one of the rates below."
msgstr "Você deve reamostrar para uma das taxas abaixo."
-#: export/ExportMP3.cpp:1960
+#: export/ExportFFmpeg.cpp:795
+#: export/ExportMP3.cpp:1819
msgid "Sample Rates"
msgstr "Taxas de amostragem "
#: export/ExportFFmpegDialogs.cpp:93
msgid "Specify AC3 Options"
-msgstr ""
+msgstr "Especificar as opções de AC3"
-#: export/ExportFFmpegDialogs.cpp:117
+#: export/ExportFFmpegDialogs.cpp:112
msgid "AC3 Export Setup"
-msgstr ""
-
-#: export/ExportMP2.cpp:133
+msgstr "Configurações de exportação AC3"
+
+#: export/ExportFFmpegDialogs.cpp:116
+#: export/ExportFFmpegDialogs.cpp:234
+#: export/ExportFFmpegDialogs.cpp:298
+#: export/ExportFFmpegDialogs.cpp:364
+#: export/ExportFFmpegDialogs.cpp:926
+#: export/ExportMP2.cpp:131
msgid "Bit Rate:"
msgstr "Taxa de Bits:"
-#: export/ExportFFmpegDialogs.cpp:162
+#: export/ExportFFmpegDialogs.cpp:157
msgid "Specify AAC Options"
-msgstr ""
+msgstr "Especificar as opções de AAC"
-#: export/ExportFFmpegDialogs.cpp:178
+#: export/ExportFFmpegDialogs.cpp:168
msgid "AAC Export Setup"
-msgstr ""
+msgstr "Configurações de exportação AAC"
-#: export/ExportFFmpegDialogs.cpp:217
+#: export/ExportFFmpegDialogs.cpp:172
+#: export/ExportFFmpegDialogs.cpp:929
+#: export/ExportOGG.cpp:84
+msgid "Quality:"
+msgstr "Qualidade:"
+
+#: export/ExportFFmpegDialogs.cpp:211
msgid "Specify AMR-NB Options"
-msgstr ""
+msgstr "Especificar as opções de AMR-NB"
-#: export/ExportFFmpegDialogs.cpp:241
+#: export/ExportFFmpegDialogs.cpp:230
msgid "AMR-NB Export Setup"
-msgstr ""
+msgstr "Configurações de exportação AMR-NB"
-#: export/ExportFFmpegDialogs.cpp:286
+#: export/ExportFFmpegDialogs.cpp:275
msgid "Specify AMR-WB Options"
-msgstr ""
+msgstr "Especificar as opções de AMR-WB"
-#: export/ExportFFmpegDialogs.cpp:310
+#: export/ExportFFmpegDialogs.cpp:294
msgid "AMR-WB Export Setup"
-msgstr ""
+msgstr "Configurações de exportação AMR-WB"
-#: export/ExportFFmpegDialogs.cpp:357
+#: export/ExportFFmpegDialogs.cpp:341
msgid "Specify WMA Options"
-msgstr ""
+msgstr "Especificar as opções de WMA"
-#: export/ExportFFmpegDialogs.cpp:381
+#: export/ExportFFmpegDialogs.cpp:360
msgid "WMA Export Setup"
-msgstr ""
+msgstr "Configurações de exportação WMA"
-#: export/ExportFFmpegDialogs.cpp:509
+#: export/ExportFFmpegDialogs.cpp:491
#, c-format
msgid "Overwrite preset '%s'?"
-msgstr ""
+msgstr "Sobregravar ajuste existente '%s'?"
-#: export/ExportFFmpegDialogs.cpp:510
+#: export/ExportFFmpegDialogs.cpp:492
msgid "Confirm Overwrite"
-msgstr ""
+msgstr "Confirmar sobregravação"
-#: export/ExportFFmpegDialogs.cpp:501
+#: export/ExportFFmpegDialogs.cpp:504
msgid "Please select format before saving a profile"
-msgstr ""
+msgstr "Por favor, selecione um formato antes de salvar o perfil"
-#: export/ExportFFmpegDialogs.cpp:509
+#: export/ExportFFmpegDialogs.cpp:512
msgid "Please select codec before saving a profile"
-msgstr ""
+msgstr "Por favor, selecione um codec antes de salvar o perfil"
-#: export/ExportFFmpegDialogs.cpp:580
+#: export/ExportFFmpegDialogs.cpp:582
#, c-format
msgid "Preset '%s' does not exist."
-msgstr ""
+msgstr "O ajuste '%s' não existe."
-#: export/ExportFFmpegDialogs.cpp:803
+#: export/ExportFFmpegDialogs.cpp:797
msgid "Specify Other Options"
-msgstr ""
+msgstr "Especificar outras opções "
-#: export/ExportFFmpegDialogs.cpp:897
+#: export/ExportFFmpegDialogs.cpp:886
msgid "Preset:"
-msgstr ""
+msgstr "Ajuste:"
-#: export/ExportFFmpegDialogs.cpp:898
+#: export/ExportFFmpegDialogs.cpp:887
msgid "Load Preset"
-msgstr ""
+msgstr "Carregar ajuste"
-#: export/ExportFFmpegDialogs.cpp:899
+#: export/ExportFFmpegDialogs.cpp:888
msgid "Save Preset"
-msgstr ""
+msgstr "Salvar ajuste"
-#: export/ExportFFmpegDialogs.cpp:900
+#: export/ExportFFmpegDialogs.cpp:889
msgid "Delete Preset"
-msgstr ""
+msgstr "Apagar ajuste"
-#: export/ExportFFmpegDialogs.cpp:901
+#: export/ExportFFmpegDialogs.cpp:890
msgid "Import Presets"
-msgstr ""
+msgstr "Importar ajustes"
-#: export/ExportFFmpegDialogs.cpp:902
+#: export/ExportFFmpegDialogs.cpp:891
msgid "Export Presets"
-msgstr ""
+msgstr "Exportar ajustes"
-#: export/ExportPCM.cpp:177
+#: export/ExportFFmpegDialogs.cpp:896
msgid "Format:"
-msgstr "Formato"
+msgstr "Formato:"
-#: export/ExportFFmpegDialogs.cpp:909
+#: export/ExportFFmpegDialogs.cpp:898
msgid "Codec:"
-msgstr ""
+msgstr "Codec:"
-#: export/ExportFFmpegDialogs.cpp:913
+#: export/ExportFFmpegDialogs.cpp:902
msgid "Not all formats and codecs are compatible. Some parameters (such as bitrate and samplerate) combinations are not compatible with some codecs too."
-msgstr ""
+msgstr "Nem todas as possibilidades entre codecs e formatos são compatÃveis. Alguns parâmetros (como taxa de bits e de amostragem) também não são compatÃveis com alguns codecs."
-#: export/ExportFFmpegDialogs.cpp:916
+#: export/ExportFFmpegDialogs.cpp:905
msgid "Format selector:"
-msgstr ""
+msgstr "Seletor de formato:"
-#: export/ExportFFmpegDialogs.cpp:917
+#: export/ExportFFmpegDialogs.cpp:906
msgid "Codec selector:"
-msgstr ""
+msgstr "Seletor de codec:"
-#: export/ExportFFmpegDialogs.cpp:919
+#: export/ExportFFmpegDialogs.cpp:908
msgid "Show All Formats"
-msgstr ""
+msgstr "Exibir todos os formatos"
-#: export/ExportFFmpegDialogs.cpp:920
+#: export/ExportFFmpegDialogs.cpp:909
msgid "Show All Codecs"
-msgstr ""
+msgstr "Exibir todos os codecs"
-#: export/ExportFFmpegDialogs.cpp:914
+#: export/ExportFFmpegDialogs.cpp:916
msgid "Options"
-msgstr ""
+msgstr "Opções"
-#: prefs/GUIPrefs.cpp:168
+#: export/ExportFFmpegDialogs.cpp:920
+#: prefs/GUIPrefs.cpp:116
msgid "Language:"
msgstr "Idioma da interface:"
-#: export/ExportFFmpegDialogs.cpp:932
-msgid "ISO 639 3-letter language code\n"
+#: export/ExportFFmpegDialogs.cpp:921
+msgid ""
+"ISO 639 3-letter language code\n"
"Optional\n"
"empty - automatic"
msgstr ""
+"Código de linguagem de 3 letras ISO 639\n"
+"Opcional\n"
+"em branco - automático"
-#: export/ExportFFmpegDialogs.cpp:934
+#: export/ExportFFmpegDialogs.cpp:923
msgid "Tag:"
-msgstr ""
+msgstr "Tag:"
-#: export/ExportFFmpegDialogs.cpp:935
-msgid "Codec tag (FOURCC)\n"
+#: export/ExportFFmpegDialogs.cpp:924
+msgid ""
+"Codec tag (FOURCC)\n"
"Optional\n"
"empty - automatic"
msgstr ""
+"Tag do Codec (FOURCC)\n"
+"Opcional\n"
+"em branco - automático"
-#: export/ExportFFmpegDialogs.cpp:938
-msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n"
+#: export/ExportFFmpegDialogs.cpp:927
+msgid ""
+"Bit Rate (bits/second) - influences the resulting file size and quality\n"
"Some codecs may only accept specific values (128k, 192k, 256k etc)\n"
"0 - automatic\n"
"Recommended - 192000"
msgstr ""
+"Taxa de Bits (bits/segundo) - influencia o tamanho e qualidade do arquivo final\n"
+"Alguns codecs podem aceitar apenas valores especÃficos (128k, 192k, 256k etc)\n"
+"0 - automático\n"
+"Recomendado - 192000"
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr "Qualidade:"
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid ""
+"Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
msgstr ""
+"Qualidade geral, usado de diferentes maneiras de acordo com o codec selecionado\n"
+"Necessário para o vorbis\n"
+"0 - automático\n"
+"-1 - desligado (utiliza a taxa de bits)"
-#: export/ExportFFmpegDialogs.cpp:943
+#: export/ExportFFmpegDialogs.cpp:932
msgid "Sample Rate:"
-msgstr ""
+msgstr "Taxa de amostragem:"
-#: export/ExportFFmpegDialogs.cpp:944
-msgid "Sample rate (Hz)\n"
+#: export/ExportFFmpegDialogs.cpp:933
+msgid ""
+"Sample rate (Hz)\n"
"0 - don't change sample rate"
msgstr ""
+"Taxa de amostragem (Hz)\n"
+"0 - não altera taxa de amostragem"
-#: export/ExportFFmpegDialogs.cpp:946
+#: export/ExportFFmpegDialogs.cpp:935
msgid "Cutoff Bandwidth:"
-msgstr ""
+msgstr "Tamanho máximo de banda:"
-#: export/ExportFFmpegDialogs.cpp:947
-msgid "Audio cutoff bandwidth (Hz)\n"
+#: export/ExportFFmpegDialogs.cpp:936
+msgid ""
+"Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
+"Tamanho máximo de banda do áudio (Hz)\n"
+"Opcional\n"
+"0 - automático"
-#: export/ExportFFmpegDialogs.cpp:949
+#: export/ExportFFmpegDialogs.cpp:938
msgid "Profile:"
-msgstr ""
+msgstr "Perfil:"
-#: export/ExportFFmpegDialogs.cpp:951
-msgid "AAC Profile\n"
+#: export/ExportFFmpegDialogs.cpp:940
+msgid ""
+"AAC Profile\n"
"Low Complexity -default\n"
"Most players won't play anything other than LC"
msgstr ""
+"Perfil AAC\n"
+"Baixa complexidade (LC) - padrão\n"
+"A maioria dos tocadores só reproduzem áudio em formato LC"
-#: export/ExportFFmpegDialogs.cpp:940
+#: export/ExportFFmpegDialogs.cpp:942
msgid "Use Bit Reservoir"
-msgstr ""
+msgstr "Usar reserva de bit"
-#: export/ExportFFmpegDialogs.cpp:943
+#: export/ExportFFmpegDialogs.cpp:945
msgid "Use Variable Block Length"
-msgstr ""
+msgstr "Usar tamanho variável de bloco"
-#: export/ExportFFmpegDialogs.cpp:948
+#: export/ExportFFmpegDialogs.cpp:950
msgid "FLAC options"
-msgstr ""
+msgstr "Opções de FLAC"
-#: export/ExportFFmpegDialogs.cpp:965
+#: export/ExportFFmpegDialogs.cpp:954
msgid "Compression Level:"
-msgstr ""
+msgstr "NÃvel de compressão:"
-#: export/ExportFFmpegDialogs.cpp:966
-msgid "Compression level\n"
+#: export/ExportFFmpegDialogs.cpp:955
+msgid ""
+"Compression level\n"
"Required for FLAC\n"
"-1 - automatic\n"
"min - 0 (fast encoding, large output file)\n"
"max - 10 (slow encoding, small output file)"
msgstr ""
+"NÃvel de compressão\n"
+"Necessário para o FLAC\n"
+"-1 - automático\n"
+"mÃn - 0 (compressão rápida, arquivos maiores)\n"
+"máx - 10 (compressão lenta, arquivos menores)"
-#: export/ExportFFmpegDialogs.cpp:968
+#: export/ExportFFmpegDialogs.cpp:957
msgid "Frame Size:"
-msgstr ""
+msgstr "Tamanho do quadro:"
-#: export/ExportFFmpegDialogs.cpp:969
-msgid "Frame size\n"
+#: export/ExportFFmpegDialogs.cpp:958
+msgid ""
+"Frame size\n"
"Optional\n"
"0 - default\n"
"min - 16\n"
"max - 65535"
msgstr ""
+"Tamanho do quadro\n"
+"Opcional\n"
+"0 - padrão\n"
+"min - 16\n"
+"máx - 65535"
-#: export/ExportFFmpegDialogs.cpp:971
+#: export/ExportFFmpegDialogs.cpp:960
msgid "LPC coefficients precision"
-msgstr ""
+msgstr "Precisão dos Coeficientes LPC"
-#: export/ExportFFmpegDialogs.cpp:972
-msgid "LPC coefficients precision\n"
+#: export/ExportFFmpegDialogs.cpp:961
+msgid ""
+"LPC coefficients precision\n"
"Optional\n"
"0 - default\n"
"min - 1\n"
"max - 15"
msgstr ""
+"Precisão dos Coeficientes LPC\n"
+"Opcional\n"
+"0 - padrão\n"
+"mÃn - 1\n"
+"máx - 15"
-#: export/ExportFFmpegDialogs.cpp:974
+#: export/ExportFFmpegDialogs.cpp:963
msgid "Minimal prediction order"
-msgstr ""
+msgstr "Ordem de predição mÃnima "
-#: export/ExportFFmpegDialogs.cpp:975
-msgid "Minimal prediction order\n"
+#: export/ExportFFmpegDialogs.cpp:964
+msgid ""
+"Minimal prediction order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 32 (with LPC) or 4 (without LPC)"
msgstr ""
+"Ordem de predição mÃnima\n"
+"Opcional\n"
+"-1 - padrão\n"
+"mÃn - 0\n"
+"máx - 32 (com LPC) ou 4 (sem LPC)"
-#: export/ExportFFmpegDialogs.cpp:977
+#: export/ExportFFmpegDialogs.cpp:966
msgid "Maximal prediction order"
-msgstr ""
+msgstr "Ordem de predição máxima "
-#: export/ExportFFmpegDialogs.cpp:978
-msgid "Maximal prediction order\n"
+#: export/ExportFFmpegDialogs.cpp:967
+msgid ""
+"Maximal prediction order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 32 (with LPC) or 4 (without LPC)"
msgstr ""
+"Ordem máxima de predição\n"
+"Opcional\n"
+"-1 - padrão\n"
+"mÃn - 0\n"
+"máx - 32 (com LPC) ou 4 (sem LPC)"
-#: export/ExportFFmpegDialogs.cpp:980
+#: export/ExportFFmpegDialogs.cpp:969
msgid "Prediction Order Method:"
-msgstr ""
+msgstr "Método da ordem de predição:"
-#: export/ExportFFmpegDialogs.cpp:982
-msgid "Prediction Order Method\n"
+#: export/ExportFFmpegDialogs.cpp:971
+msgid ""
+"Prediction Order Method\n"
"Estimate - fastest, lower compression\n"
"Log search - slowest, best compression\n"
"Full search - default"
msgstr ""
+"Método da ordem de predição\n"
+"Estimada - mais rápido, menor compressão\n"
+"Busca logaritmica - mais lento, melhor compressão\n"
+"Busca completa - padrão"
-#: export/ExportFFmpegDialogs.cpp:984
+#: export/ExportFFmpegDialogs.cpp:973
msgid "Minimal partition order"
-msgstr ""
+msgstr "Ordem de partição mÃnima "
-#: export/ExportFFmpegDialogs.cpp:985
-msgid "Minimal partition order\n"
+#: export/ExportFFmpegDialogs.cpp:974
+msgid ""
+"Minimal partition order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 8"
msgstr ""
+"Ordem mÃnima de partição\n"
+"Opcional\n"
+"-1 - padrão\n"
+"mÃn - 0\n"
+"máx - 8"
-#: export/ExportFFmpegDialogs.cpp:987
+#: export/ExportFFmpegDialogs.cpp:976
msgid "Maximal partition order"
-msgstr ""
+msgstr "Ordem de partição máxima"
-#: export/ExportFFmpegDialogs.cpp:988
-msgid "Maximal partition order\n"
+#: export/ExportFFmpegDialogs.cpp:977
+msgid ""
+"Maximal partition order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 8"
msgstr ""
+"Ordem máxima de partição\n"
+"Opcional\n"
+"-1 - padrão\n"
+"mÃn - 0\n"
+"máx - 8"
-#: export/ExportFFmpegDialogs.cpp:977
+#: export/ExportFFmpegDialogs.cpp:979
msgid "Use LPC"
-msgstr ""
+msgstr "Usar LPC"
-#: export/ExportFFmpegDialogs.cpp:984
+#: export/ExportFFmpegDialogs.cpp:986
msgid "MPEG container options"
-msgstr ""
+msgstr "Opções do arquivo MPEG"
-#: export/ExportFFmpegDialogs.cpp:1001
+#: export/ExportFFmpegDialogs.cpp:990
msgid "Mux Rate:"
-msgstr ""
+msgstr "Taxa de Mux:"
-#: export/ExportFFmpegDialogs.cpp:1002
-msgid "Maximum bit rate of the multiplexed stream\n"
+#: export/ExportFFmpegDialogs.cpp:991
+msgid ""
+"Maximum bit rate of the multiplexed stream\n"
"Optional\n"
"0 - default"
msgstr ""
+"Taxa de bits máximo para o fluxo multiplexado\n"
+"Opcional\n"
+"0 - padrão"
-#: export/ExportFFmpegDialogs.cpp:1004
+#: export/ExportFFmpegDialogs.cpp:993
msgid "Packet Size:"
-msgstr ""
+msgstr "Tamanho do pacote:"
-#: export/ExportFFmpegDialogs.cpp:1005
-msgid "Packet size\n"
+#: export/ExportFFmpegDialogs.cpp:994
+msgid ""
+"Packet size\n"
"Optional\n"
"0 - default"
msgstr ""
+"Tamanho do pacote\n"
+"Opcional\n"
+"0 - padrão"
-#: export/ExportFFmpegDialogs.cpp:1207
+#: export/ExportFFmpegDialogs.cpp:1209
msgid "You can't delete a preset without name"
-msgstr ""
+msgstr "Não é possÃvel apagar um ajuste sem nome"
-#: export/ExportFFmpegDialogs.cpp:1219
+#: export/ExportFFmpegDialogs.cpp:1213
#, c-format
msgid "Delete preset '%s'?"
-msgstr ""
+msgstr "Remover ajuste '%s'?"
-#: export/ExportFFmpegDialogs.cpp:1238
+#: export/ExportFFmpegDialogs.cpp:1232
msgid "You can't save a preset without name"
-msgstr ""
+msgstr "Não é possÃvel salvar um ajuste sem nome"
-#: export/ExportFFmpegDialogs.cpp:1277
+#: export/ExportFFmpegDialogs.cpp:1272
msgid "Select xml file with presets to import"
-msgstr ""
+msgstr "Selecione o arquivo XML para importar os ajustes"
-#: prefs/KeyConfigPrefs.cpp:200
+#: export/ExportFFmpegDialogs.cpp:1275
+#: export/ExportFFmpegDialogs.cpp:1295
+#: prefs/KeyConfigPrefs.cpp:267
+#: prefs/KeyConfigPrefs.cpp:298
msgid "XML files (*.xml)|*.xml|All files (*.*)|*.*"
-msgstr "XML Arquivos (*.xml)|*.xml|Todos os arquivos (*.*)|*.*"
+msgstr "Arquivos XML (*.xml)|*.xml|Todos os arquivos (*.*)|*.*"
#: export/ExportFFmpegDialogs.cpp:1292
msgid "Select xml file to export presets into"
-msgstr ""
+msgstr "Selecione o arquivo XML para exportar os ajustes"
-#: export/ExportFFmpegDialogs.cpp:1361
+#: export/ExportFFmpegDialogs.cpp:1363
msgid "Failed to guess format"
-msgstr ""
+msgstr "Não foi possÃvel compreender o formato"
-#: export/ExportFFmpegDialogs.cpp:1403
+#: export/ExportFFmpegDialogs.cpp:1405
msgid "Failed to find the codec"
-msgstr ""
-
-#: export/ExportFFmpegDialogs.h:53
-msgid "M4A (AAC) Files (FFmpeg)"
-msgstr ""
+msgstr "Não foi possÃvel encontrar o codec"
#: export/ExportFFmpegDialogs.h:54
-msgid "AC3 Files (FFmpeg)"
-msgstr ""
+msgid "M4A (AAC) Files (FFmpeg)"
+msgstr "Arquivos M4A (AAC) (FFmpeg)"
#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
-msgstr ""
+msgid "AC3 Files (FFmpeg)"
+msgstr "Arquivos AC3 (FFmpeg)"
#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
-msgstr ""
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
+msgstr "Arquivos AMR (banda estreita) (FFmpeg, não distribuÃveis)"
#: export/ExportFFmpegDialogs.h:57
-msgid "WMA (version 2) Files (FFmpeg)"
-msgstr ""
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
+msgstr "Arquivos AMR (banda larga) (FFmpeg, não distribuÃveis)"
#: export/ExportFFmpegDialogs.h:58
+msgid "WMA (version 2) Files (FFmpeg)"
+msgstr "Arquivos WMA (ver. 2) (FFmpeg)"
+
+#: export/ExportFFmpegDialogs.h:59
msgid "Custom FFmpeg Export"
-msgstr ""
+msgstr "Exportar personalizado FFmpeg"
-#: export/ExportFFmpegDialogs.h:373
+#: export/ExportFFmpegDialogs.h:374
msgid "LTP"
-msgstr ""
+msgstr "LTP"
-#: export/ExportFFmpegDialogs.h:373
+#: export/ExportFFmpegDialogs.h:374
msgid "Low Complexity"
-msgstr ""
+msgstr "Baixa complexidade"
-#: export/ExportFFmpegDialogs.h:373
+#: export/ExportFFmpegDialogs.h:374
msgid "Main profile"
-msgstr ""
+msgstr "Perfil principal"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "2-level"
-msgstr ""
+msgstr "2-NÃveis"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "4-level"
-msgstr ""
+msgstr "4-NÃveis"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "8-level"
-msgstr ""
+msgstr "8-NÃveis"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "Estimate"
-msgstr ""
+msgstr "Estimado"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "Full search"
-msgstr ""
+msgstr "Busca completa"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "Log search"
-msgstr ""
+msgstr "Busca log"
-#: export/ExportFLAC.cpp:68
+#: export/ExportFLAC.cpp:67
msgid "Specify FLAC Options"
msgstr "Especificar as opções de FLAC"
-#: export/ExportFLAC.cpp:82
+#: export/ExportFLAC.cpp:79
msgid "0 (fastest)"
msgstr "0 (mais rápido)"
-#: export/ExportFLAC.cpp:83
+#: export/ExportFLAC.cpp:80
msgid "1"
msgstr "1"
-#: export/ExportFLAC.cpp:84
+#: export/ExportFLAC.cpp:81
msgid "2"
msgstr "2"
-#: export/ExportFLAC.cpp:85
+#: export/ExportFLAC.cpp:82
msgid "3"
msgstr "3"
-#: export/ExportFLAC.cpp:86
+#: export/ExportFLAC.cpp:83
msgid "4"
msgstr "4"
-#: export/ExportFLAC.cpp:87
+#: export/ExportFLAC.cpp:84
msgid "5"
msgstr "5"
-#: export/ExportFLAC.cpp:88
+#: export/ExportFLAC.cpp:85
msgid "6"
msgstr "6"
-#: export/ExportFLAC.cpp:89
+#: export/ExportFLAC.cpp:86
msgid "7"
msgstr "7"
-#: export/ExportFLAC.cpp:90
+#: export/ExportFLAC.cpp:87
msgid "8 (best)"
msgstr "8 (melhor)"
-#: export/ExportFLAC.cpp:93
+#: export/ExportFLAC.cpp:90
msgid "16 bit"
msgstr "16 bit"
-#: export/ExportFLAC.cpp:94
+#: export/ExportFLAC.cpp:91
msgid "24 bit"
msgstr "24 bit"
-#: export/ExportFLAC.cpp:98
+#: export/ExportFLAC.cpp:95
msgid "FLAC Export Setup"
msgstr "Configurações de exportação FLAC"
-#: export/ExportFLAC.cpp:102
+#: export/ExportFLAC.cpp:99
msgid "Level:"
msgstr "NÃvel:"
-#: export/ExportFLAC.cpp:104
+#: export/ExportFLAC.cpp:101
msgid "Bit depth:"
msgstr "Taxa de bits:"
-#: export/ExportFLAC.cpp:208
+#: export/ExportFLAC.cpp:207
msgid "FLAC Files"
msgstr "Arquivos FLAC"
-#: export/ExportFLAC.cpp:310
+#: export/ExportFLAC.cpp:288
+msgid "FLAC export couldn't open %s"
+msgstr "Exportação em FLAC não pôde abrir %s"
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid ""
+"FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+"Codificador FLAC falhou ao inicializar\n"
+"Status: %d"
+
+#: export/ExportFLAC.cpp:324
msgid "Exporting the selected audio as FLAC"
msgstr "Exportando o áudio selecionado como FLAC"
-#: export/ExportFLAC.cpp:311
+#: export/ExportFLAC.cpp:325
msgid "Exporting the entire project as FLAC"
msgstr "Exportando todo o projeto como FLAC"
@@ -6711,7 +7354,7 @@ msgstr "Exportando todo o projeto como FLAC"
msgid "Specify MP2 Options"
msgstr "Especificar as opções de MP2"
-#: export/ExportMP2.cpp:129
+#: export/ExportMP2.cpp:127
msgid "MP2 Export Setup"
msgstr "Configurações de exportação MP2"
@@ -6719,64 +7362,64 @@ msgstr "Configurações de exportação MP2"
msgid "MP2 Files"
msgstr "Arquivos MP2"
-#: export/ExportMP2.cpp:229
+#: export/ExportMP2.cpp:230
msgid "Cannot export MP2 with this sample rate and bit rate"
msgstr "Não é possÃvel exportar o arquivo MP2 com esta taxa de bits e de amostragem"
-#: export/ExportMP2.cpp:240
-#: export/ExportMP3.cpp:1768
-#: export/ExportOGG.cpp:183
+#: export/ExportMP2.cpp:241
+#: export/ExportMP3.cpp:1619
+#: export/ExportOGG.cpp:184
msgid "Unable to open target file for writing"
msgstr "Não foi possÃvel abrir o arquivo de destino para gravação."
-#: export/ExportMP2.cpp:271
+#: export/ExportMP2.cpp:273
#, c-format
msgid "Exporting selected audio at %d kbps"
msgstr "Exportando áudio selecionado a %d kbps"
-#: export/ExportMP2.cpp:272
+#: export/ExportMP2.cpp:274
#, c-format
msgid "Exporting entire file at %d kbps"
msgstr "Exportando todo o arquivo a %d kbps."
-#: export/ExportMP3.cpp:221
-#: export/ExportMP3.cpp:239
-#: export/ExportMP3.cpp:253
+#: export/ExportMP3.cpp:223
+#: export/ExportMP3.cpp:241
+#: export/ExportMP3.cpp:255
msgid "kbps"
msgstr "kbps"
-#: export/ExportMP3.cpp:240
+#: export/ExportMP3.cpp:242
msgid "(Best Quality)"
msgstr "(Melhor qualidade)"
-#: export/ExportMP3.cpp:241
+#: export/ExportMP3.cpp:243
msgid "(Smaller files)"
msgstr "(Menor tamanho)"
-#: export/ExportMP3.cpp:243
+#: export/ExportMP3.cpp:245
msgid "Fast"
msgstr "Rápido"
-#: export/ExportMP3.cpp:244
-#: export/ExportMP3.cpp:250
-#: prefs/GUIPrefs.cpp:41
-#: prefs/GUIPrefs.cpp:49
+#: export/ExportMP3.cpp:246
+#: export/ExportMP3.cpp:252
+#: prefs/GUIPrefs.cpp:50
+#: prefs/TracksPrefs.cpp:46
msgid "Standard"
msgstr "Padrão"
-#: export/ExportMP3.cpp:248
+#: export/ExportMP3.cpp:250
msgid "Insane"
msgstr "Insano"
-#: export/ExportMP3.cpp:249
+#: export/ExportMP3.cpp:251
msgid "Extreme"
msgstr "Extremo"
-#: export/ExportMP3.cpp:251
+#: export/ExportMP3.cpp:253
msgid "Medium"
msgstr "Médio"
-#: export/ExportMP3.cpp:303
+#: export/ExportMP3.cpp:305
msgid "Specify MP3 Options"
msgstr "Especificar as opções de MP3"
@@ -6805,8 +7448,7 @@ msgid "Constant"
msgstr "Constante"
#: export/ExportMP3.cpp:373
-#: prefs/QualityPrefs.cpp:42
-#: prefs/QualityPrefs.cpp:43
+#: prefs/QualityPrefs.cpp:38
msgid "Quality"
msgstr "Qualidade"
@@ -6841,226 +7483,241 @@ msgstr "Para salvar uma cópia gratuita do Lame, clique aqui -->"
#: export/ExportMP3.cpp:1070
#, c-format
-msgid "You are linking to lame_enc.dll v%d.%d. This version is not compatible with Audacity %d.%d.%d.\n"
+msgid ""
+"You are linking to lame_enc.dll v%d.%d. This version is not compatible with Audacity %d.%d.%d.\n"
"Please download the latest version of the LAME MP3 library."
msgstr ""
+"Você está vinculando o lame_enc.dll v%d.%d. Esta versão não é compatÃvel com o Audacity %d.%d.%d.\n"
+"Por favor, baixe a última versão da biblioteca LAME MP3."
-#: export/ExportMP3.cpp:1094
+#: export/ExportMP3.cpp:1328
msgid "Only lame_enc.dll|lame_enc.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
msgstr "Apenas lame_enc.dll|lame_enc.dll|DLLs do sistema (*.dll)|*.dll|Todos os arquivos (*.*)|*"
-#: export/ExportMP3.cpp:1550
+#: export/ExportMP3.cpp:1346
msgid "Only libmp3lame.dylib|libmp3lame.dylib|Dynamic Libraries (*.dylib)|*.dylib|All Files (*)|*"
msgstr "Apenas libmp3lame.dylib|libmp3lame.dylib|Bibliotecas dinâmicas (*.dylib)|*.dylib|Todos os arquivos (*)|*"
-#: export/ExportMP3.cpp:1567
+#: export/ExportMP3.cpp:1364
msgid "Only libmp3lame.so.0|libmp3lame.so.0|Primary Shared Object files (*.so)|*.so|Extended Libraries (*.so*)|*.so*|All Files (*)|*"
-msgstr "Only libmp3lame.so.0|libmp3lame.so.0|Arquivos Primary Shared Object (*.so)|*.so|Arquivos Extended Libraries (*.so*)|*.so*|Todos os arquivos (*)|*"
+msgstr "Apenas libmp3lame.so.0|libmp3lame.so.0|Arquivos Primary Shared Object (*.so)|*.so|Extended Libraries (*.so*)|*.so*|Todos os arquivos (*)|*"
-#: export/ExportMP3.cpp:1650
+#: export/ExportMP3.cpp:1500
msgid "MP3 Files"
msgstr "Arquivos MP3"
-#: export/ExportMP3.cpp:1673
+#: export/ExportMP3.cpp:1524
msgid "Could not open MP3 encoding library!"
msgstr "Não foi possÃvel abrir a biblioteca de exportação em MP3!"
-#: export/ExportMP3.cpp:1680
+#: export/ExportMP3.cpp:1531
msgid "Not a valid or supported MP3 encoding library!"
msgstr "Não é uma biblioteca válida para exportação de MP3"
-#: export/ExportMP3.cpp:1757
+#: export/ExportMP3.cpp:1608
msgid "Unable to initialize MP3 stream"
msgstr "Não foi possÃvel inicializar o fluxo MP3"
-#: export/ExportMP3.cpp:1799
+#: export/ExportMP3.cpp:1652
#, c-format
msgid "Exporting selected audio with %s preset"
msgstr "Exportando áudio selecionado com o ajuste %s"
-#: export/ExportMP3.cpp:1800
+#: export/ExportMP3.cpp:1653
#, c-format
msgid "Exporting entire file with %s preset"
msgstr "Exportando arquivo completo com o ajuste %s"
-#: export/ExportMP3.cpp:1805
+#: export/ExportMP3.cpp:1658
#, c-format
msgid "Exporting selected audio with VBR quality %s"
msgstr "Exportando áudio selecionado com taxa VBR e qualidade %s"
-#: export/ExportMP3.cpp:1806
+#: export/ExportMP3.cpp:1659
#, c-format
msgid "Exporting entire file with VBR quality %s"
-msgstr "Exportando arquivo completo com taxa VBR e ajuste %s"
+msgstr "Exportando arquivo completo com taxa VBR e qualidade %s"
-#: export/ExportMP3.cpp:1811
+#: export/ExportMP3.cpp:1664
#, c-format
msgid "Exporting selected audio at %d Kbps"
-msgstr "Exportando áudio selecionado à %d Kbps"
+msgstr "Exportando áudio selecionado a %d Kbps"
-#: export/ExportMP3.cpp:1812
+#: export/ExportMP3.cpp:1665
#, c-format
msgid "Exporting entire file at %d Kbps"
-msgstr "Exportando arquivo completo à %d Kbps"
+msgstr "Exportando arquivo completo a %d Kbps"
-#: export/ExportMP3.cpp:1845
+#: export/ExportMP3.cpp:1699
#, c-format
msgid "Error %d returned from MP3 encoder"
msgstr "Erro retornado pelo codificador de MP3: %d "
-#: export/ExportMP3.cpp:1931
+#: export/ExportMP3.cpp:1790
#, c-format
-msgid "The project sample rate (%d) is not supported by the MP3\n"
+msgid ""
+"The project sample rate (%d) is not supported by the MP3\n"
"file format. "
msgstr "A taxa de amostragem (%d) não é suportada pelo formato MP3. "
-#: export/ExportMP3.cpp:1934
+#: export/ExportMP3.cpp:1793
#, c-format
-msgid "The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
+msgid ""
+"The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
"supported by the MP3 file format. "
msgstr "A taxa de amostragem (%d) e o bit rate (%d kbps) não são suportados pelo formato MP3. "
-#: export/ExportMP3.cpp:1965
+#: export/ExportMP3.cpp:1970
msgid "MP3 export library not found"
-msgstr ""
+msgstr "Biblioteca de exportação em MP3 não encontrada!"
-#: export/ExportMultiple.cpp:95
-#: export/ExportMultiple.cpp:374
-#: export/ExportMultiple.cpp:598
-#: export/ExportMultiple.cpp:765
+#: export/ExportMultiple.cpp:93
+#: export/ExportMultiple.cpp:424
msgid "Export Multiple"
msgstr "Exportar múltiplos"
-#: export/ExportMultiple.cpp:164
-msgid "If you have more than one Audio Track, you can export each track as a separate file,\n"
+#: export/ExportMultiple.cpp:163
+msgid ""
+"If you have more than one Audio Track, you can export each track as a separate file,\n"
"or if you have a Label Track, you can export a new file for each label.\n"
"\n"
"This project does not have multiple tracks or a Label Track, so you cannot export multiple files."
-msgstr "Se você tiver várias faixas de áudio, é possÃvel exportá-las em arquivos separados,\n"
+msgstr ""
+"Se você tiver várias faixas de áudio, é possÃvel exportá-las em arquivos separados,\n"
"ou se houverem faixas de tÃtulo, é possÃvel exportar um novo arquivo para cada tÃtulo.\n"
"\n"
"Este projeto não pode ser exportado em múltiplos arquivos por conter apenas uma faixa de áudio e nenhuma faixa de tÃtulo."
-#: export/ExportMultiple.cpp:165
+#: export/ExportMultiple.cpp:164
msgid "Can't export multiple files"
msgstr "Não é possÃvel exportar em múltiplos arquivos"
-#: export/ExportMultiple.cpp:200
+#: export/ExportMultiple.cpp:229
msgid "Export format:"
msgstr "Formato de exportação:"
-#: export/ExportMultiple.cpp:207
+#: export/ExportMultiple.cpp:234
msgid "Options..."
msgstr "Opções..."
-#: export/ExportMultiple.cpp:210
+#: export/ExportMultiple.cpp:238
msgid "Export location:"
msgstr "Exportar em:"
-#: export/ExportMultiple.cpp:216
-#: prefs/DirectoriesPrefs.cpp:92
-msgid "Choose..."
-msgstr "Selecionar..."
-
-#: export/ExportMultiple.cpp:217
+#: export/ExportMultiple.cpp:243
msgid "Create"
msgstr "Criar"
-#: export/ExportMultiple.cpp:224
+#: export/ExportMultiple.cpp:250
msgid "Split files based on:"
msgstr "Separar arquivos baseado em:"
-#: export/ExportMultiple.cpp:234
+#: export/ExportMultiple.cpp:259
+#: export/ExportMultiple.cpp:261
msgid "Labels"
msgstr "TÃtulos"
-#: export/ExportMultiple.cpp:239
+#: export/ExportMultiple.cpp:266
msgid "Include audio before first label"
msgstr "Incluir áudio antes da primeira faixa"
-#: export/ExportMultiple.cpp:245
+#: export/ExportMultiple.cpp:272
msgid "First file name:"
msgstr "Primeiro nome:"
-#: export/ExportMultiple.cpp:280
+#: export/ExportMultiple.cpp:277
msgid "First file name"
-msgstr ""
-
-#: export/ExportMultiple.cpp:258
-msgid "Tracks"
-msgstr "Faixas"
+msgstr "Primeiro nome de arquivo"
-#: export/ExportMultiple.cpp:265
+#: export/ExportMultiple.cpp:294
msgid "Name files:"
msgstr "Nomes de arquivo:"
-#: export/ExportMultiple.cpp:275
+#: export/ExportMultiple.cpp:303
+#: export/ExportMultiple.cpp:305
msgid "Using Label/Track Name"
msgstr "Utilizando TÃtulo/Nome da faixa"
-#: export/ExportMultiple.cpp:282
+#: export/ExportMultiple.cpp:311
+#: export/ExportMultiple.cpp:313
msgid "Numbering consecutively"
msgstr "Numerando consecutivamente"
-#: export/ExportMultiple.cpp:288
+#: export/ExportMultiple.cpp:319
msgid "File name prefix:"
msgstr "Prefixo do nome de arquivo:"
-#: export/ExportMultiple.cpp:327
+#: export/ExportMultiple.cpp:324
msgid "File name prefix"
-msgstr ""
+msgstr "Prefixo do nome de arquivo"
-#: export/ExportMultiple.cpp:306
+#: export/ExportMultiple.cpp:338
msgid "Overwrite existing files"
msgstr "Sobregravar arquivos existentes"
-#: export/ExportMultiple.cpp:372
+#: export/ExportMultiple.cpp:422
#, c-format
msgid "\"%s\" successfully created."
msgstr "\"%s\" criado com sucesso."
-#: export/ExportMultiple.cpp:381
+#: export/ExportMultiple.cpp:431
msgid "Choose a location to save the exported files"
msgstr "Escolha uma pasta para os arquivos exportados"
-#: export/ExportMultiple.cpp:470
+#: export/ExportMultiple.cpp:524
+msgid "Successfully exported the following %ld file(s)."
+msgstr "%ld arquivo(s) exportado(s) com êxito."
+
+#: export/ExportMultiple.cpp:525
+msgid "Something went wrong after exporting the following %ld file(s)."
+msgstr "Erro ao exportar os seguintes %ld arquivo(s),"
+
+#: export/ExportMultiple.cpp:526
+msgid "Export canceled after exporting the following %ld file(s)."
+msgstr "Exportação cancelada após exportar os seguintes %ld arquivo(s)."
+
+#: export/ExportMultiple.cpp:527
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr "Exportação parou após exportar os seguintes %ld arquivo(s)."
+
+#: export/ExportMultiple.cpp:528
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr "Erro fatal ao exportar os seguintes %ld arquivo(s),"
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr "Exportar múltiplos"
+
+#: export/ExportMultiple.cpp:570
#, c-format
-msgid "\"%s\" doesn't exist.\n"
+msgid ""
+"\"%s\" doesn't exist.\n"
"\n"
"Would you like to create it?"
-msgstr "\"%s\" não existe.\n"
+msgstr ""
+"\"%s\" não existe.\n"
"\n"
"Deseja criá-lo?"
-#: export/ExportMultiple.cpp:568
-#: export/ExportMultiple.cpp:703
+#: export/ExportMultiple.cpp:667
+#: export/ExportMultiple.cpp:804
msgid "Edit metadata"
msgstr "Editar metadados"
-#: export/ExportMultiple.cpp:595
-#: export/ExportMultiple.cpp:762
-#, c-format
-msgid "Successfully exported %d file(s)."
-msgstr "%d arquivo(s) exportado(s) com êxito."
-
-#: export/ExportMultiple.cpp:596
-#: export/ExportMultiple.cpp:763
-#, c-format
-msgid "Something went wrong after exporting %d file(s)."
-msgstr "Erro ao exportar %d arquivo(s),"
-
-#: export/ExportMultiple.cpp:825
+#: export/ExportMultiple.cpp:923
#, c-format
-msgid "Label %s is not a legal file name. You cannot use any of: %s\n"
+msgid ""
+"Label %s is not a legal file name. You cannot use any of: %s\n"
"Use..."
-msgstr "O tÃtulo %s não é um nome de arquivo válido. Não é possÃvel utilizar: %s\n"
+msgstr ""
+"O tÃtulo %s não é um nome de arquivo válido. Não é possÃvel utilizar: %s\n"
"Use..."
#: export/ExportOGG.cpp:64
msgid "Specify Ogg Vorbis Options"
msgstr "Especificar opções Ogg Vorbis"
-#: export/ExportOGG.cpp:81
+#: export/ExportOGG.cpp:79
msgid "Ogg Vorbis Export Setup"
msgstr "Configurações de exportação em Ogg Vorbis"
@@ -7068,166 +7725,182 @@ msgstr "Configurações de exportação em Ogg Vorbis"
msgid "Ogg Vorbis Files"
msgstr "Arquivos Ogg Vorbis"
-#: export/ExportOGG.cpp:254
+#: export/ExportOGG.cpp:256
msgid "Exporting the selected audio as Ogg Vorbis"
msgstr "Exportando o trecho selecionado como Ogg Vorbis"
-#: export/ExportOGG.cpp:255
+#: export/ExportOGG.cpp:257
msgid "Exporting the entire project as Ogg Vorbis"
msgstr "Exportando todo o projeto como Ogg Vorbis"
-#: export/ExportPCM.cpp:115
+#: export/ExportPCM.cpp:119
msgid "Specify Uncompressed Options"
msgstr "Especificar opções para não-compactado"
-#: export/ExportPCM.cpp:171
+#: export/ExportPCM.cpp:189
msgid "Uncompressed Export Setup"
msgstr "Configuração de exportação de arquivos sem compressão"
-#: export/ExportPCM.cpp:181
+#: export/ExportPCM.cpp:195
msgid "Header:"
msgstr "Cabeçalho:"
-#: export/ExportPCM.cpp:185
+#: export/ExportPCM.cpp:199
+#: import/ImportRaw.cpp:376
msgid "Encoding:"
msgstr "Encodificação:"
-#: export/ExportPCM.cpp:190
+#: export/ExportPCM.cpp:204
msgid "(Not all combinations of headers and encodings are possible.)"
msgstr "(Nem todas as possibilidades entre tipos e formatos estão disponÃveis.)"
-#: export/ExportPCM.cpp:369
+#: export/ExportPCM.cpp:359
msgid "Other uncompressed files"
-msgstr ""
+msgstr "Outros arquivos não-comprimidos"
-#: export/ExportPCM.cpp:361
+#: export/ExportPCM.cpp:377
msgid "AIFF (Apple) signed 16 bit PCM"
-msgstr ""
+msgstr "AIFF (Apple) 16 bit PCM assinado "
-#: export/ExportPCM.cpp:351
+#: export/ExportPCM.cpp:388
msgid "WAV (Microsoft) signed 16 bit PCM"
-msgstr ""
+msgstr "WAV (Microsoft) 16 bit PCM assinado"
-#: export/ExportPCM.cpp:387
+#: export/ExportPCM.cpp:399
msgid "GSM 6.10 WAV (mobile)"
-msgstr ""
+msgstr "GSM 6.10 WAV (celular)"
-#: export/ExportPCM.cpp:361
+#: export/ExportPCM.cpp:476
msgid "Cannot export audio in this format."
msgstr "Não é possÃvel exportar áudio neste formato."
-#: export/ExportPCM.cpp:401
+#: export/ExportPCM.cpp:526
#, c-format
msgid "Exporting the selected audio as %s"
msgstr "Exportando áudio selecionado como %s"
-#: export/ExportPCM.cpp:403
+#: export/ExportPCM.cpp:528
#, c-format
msgid "Exporting the entire project as %s"
-msgstr "Exportando arquivo completo como %s"
+msgstr "Exportando projeto inteiro como %s"
#. i18n-hint: %s will be the error message from libsndfile
-#: export/ExportPCM.cpp:437
+#: export/ExportPCM.cpp:564
#, c-format
msgid "Error (file may not have been written): %s"
msgstr "Erro %s. O arquivo pode não ter sido salvo corretamente."
-#: export/ExportPCM.cpp:723
+#: export/ExportPCM.cpp:735
msgid "There are no options for this format.\n"
-msgstr ""
+msgstr "Não há opções disponÃveis para este formato.\n"
#. i18n-hint: This is pointing users at another possible export format in
#. * the list. So you should translate the quoted string
#. * 'Other uncompressed files' exactly the same as you do the same string
#. * when it comes up on it's own.
-#: export/ExportPCM.cpp:728
+#: export/ExportPCM.cpp:740
msgid "If you need more control over the export format please use the 'Other uncompressed files' format."
-msgstr ""
+msgstr "Caso necessite de mais opções de exportação, utilize a opção 'Outros arquivos não-comprimidos'."
-#: export/ExportPCM.cpp:733
+#: export/ExportPCM.cpp:745
msgid "Your file will be exported as a 16-bit AIFF (Apple/SGI) file.\n"
-msgstr ""
+msgstr "O arquivo será exportado como 16-bit AIFF (Apple/SGI).\n"
-#: export/ExportPCM.cpp:738
+#: export/ExportPCM.cpp:750
msgid "Your file will be exported as a 16-bit WAV (Microsoft) file.\n"
-msgstr ""
+msgstr "O arquivo será exportado como 16-bit WAV (Microsoft).\n"
-#: export/ExportPCM.cpp:743
+#: export/ExportPCM.cpp:755
msgid "Your file will be exported as a GSM 6.10 WAV file.\n"
-msgstr ""
+msgstr "O arquivo será exportado como GSM 6.10 WAV.\n"
-#: import/ImportMP3.cpp:39
+#: import/Import.cpp:162
+#: import/ImportMP3.cpp:47
msgid "MP3 files"
msgstr "Arquivos MP3"
-#: import/Import.cpp:175
+#: import/Import.cpp:181
msgid "Select stream(s) to import"
-msgstr ""
+msgstr "Selecione fluxo(s) para importar"
-#: import/Import.cpp:155
+#: import/Import.cpp:234
#, c-format
msgid "This version of Audacity was not compiled with %s support."
msgstr "Esta versão do Audacity não foi criada com suporte para %s."
-#: import/Import.cpp:240
+#: import/Import.cpp:247
#, c-format
-msgid "\"%s\" \n"
+msgid ""
+"\"%s\" \n"
"is a MIDI file, not an audio file. \n"
"Audacity cannot open this type of file for playing, but you can\n"
"edit it by clicking File > Import > MIDI."
msgstr ""
+"O arquivo \"%s\" está em formato MIDI. \n"
+"O Audacity não executa ou edita estes arquivos\n"
+"diretamente, mas é possÃvel exibÃ-los pelo comando\n"
+"Arquivo > Importar > MIDI."
#. i18n-hint: %s will be the filename
-#: import/Import.cpp:168
+#: import/Import.cpp:257
#, c-format
-msgid "\"%s\" is an audio CD track. \n"
+msgid ""
+"\"%s\" is an audio CD track. \n"
"Audacity cannot open audio CDs directly. \n"
"Extract (rip) the CD tracks to an audio format that \n"
"Audacity can import, such as WAV or AIFF."
-msgstr "O arquivo \"%s\" é uma faixa de áudio de CD. \n"
+msgstr ""
+"O arquivo \"%s\" é uma faixa de áudio de CD. \n"
"O Audacity não abre arquivos diretamente de CDs. \n"
"Extraia o áudio das faixas do CD em um formato que\n"
"o Audacity possa importar, como WAV ou AIFF."
-#: import/Import.cpp:174
+#: import/Import.cpp:263
#, c-format
-msgid "\"%s\" is a playlist file. \n"
+msgid ""
+"\"%s\" is a playlist file. \n"
"Audacity cannot open this file because it only contains links to other files. \n"
"You may be able to open it in a text editor and download the actual audio files."
-msgstr "\"%s\" é um arquivo de lista de músicas.\n"
+msgstr ""
+"\"%s\" é um arquivo de lista de músicas.\n"
"O Audacity não pode abrir este arquivo porque existem apenas links para outros arquivos.\n"
"Você pode editar este arquivo em um editor de textos e localizar manualmente os arquivos de áudio reais."
-#: import/Import.cpp:179
+#: import/Import.cpp:268
#, c-format
-msgid "\"%s\" is a Windows Media Audio file. \n"
+msgid ""
+"\"%s\" is a Windows Media Audio file. \n"
"Audacity cannot open this type of file due to patent restrictions. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr "O arquivo \"%s\" está em formato Windows Media Audio. \n"
+msgstr ""
+"O arquivo \"%s\" está em formato Windows Media Audio. \n"
"O Audacity não abre estes arquivos diretamente por\n"
"restrições de patentes. \n"
"Converta o arquivo em um formato que o Audacity \n"
"possa importar, como WAV ou AIFF."
-#: import/Import.cpp:184
+#: import/Import.cpp:273
#, c-format
-msgid "\"%s\" is an Advanced Audio Coding file. \n"
+msgid ""
+"\"%s\" is an Advanced Audio Coding file. \n"
"Audacity cannot open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr "O arquivo \"%s\" está em formato Advanced Audio Coding. \n"
+msgstr ""
+"O arquivo \"%s\" está em formato Advanced Audio Coding. \n"
"O Audacity não abre estes arquivos diretamente.\n"
"Converta o arquivo em um formato que o Audacity \n"
"possa importar, como WAV ou AIFF."
-#: import/Import.cpp:271
+#: import/Import.cpp:278
#, c-format
-#, fuzzy
-msgid "\"%s\" is an encrypted audio file. \n"
+msgid ""
+"\"%s\" is an encrypted audio file. \n"
"These typically are from an online music store. \n"
"Audacity cannot open this type of file due to the encryption. \n"
"Try recording the file into Audacity, or burn it to audio CD then \n"
"extract the CD track to a supported audio format such as WAV or AIFF."
-msgstr "O arquivo \"%s\" está em encriptado e provavelmente\n"
+msgstr ""
+"O arquivo \"%s\" está em encriptado e provavelmente\n"
"tem sua origem em uma loja de músicas online. \n"
"O Audacity não abre estes arquivos diretamente pois\n"
"sua encriptação não permite. \n"
@@ -7235,189 +7908,218 @@ msgstr "O arquivo \"%s\" está em encriptado e provavelmente\n"
"converter a faixa em um formato que o Audacity \n"
"possa importar, como WAV ou AIFF."
-#: import/Import.cpp:194
+#: import/Import.cpp:283
#, c-format
-msgid "\"%s\" is a RealPlayer media file. \n"
+msgid ""
+"\"%s\" is a RealPlayer media file. \n"
"Audacity cannot open this proprietary format. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr "O arquivo \"%s\" está em formato Real Player. \n"
+msgstr ""
+"O arquivo \"%s\" está em formato Real Player. \n"
"O Audacity não abre diretamente arquivos em\n"
"formatos proprietários. \n"
"Converta o arquivo em um formato que o Audacity \n"
"possa importar, como WAV ou AIFF."
-#: import/Import.cpp:206
+#: import/Import.cpp:289
#, c-format
-msgid "\"%s\" is a notes-based file, not an audio file. \n"
+msgid ""
+"\"%s\" is a notes-based file, not an audio file. \n"
"Audacity cannot open this type of file. \n"
"Try converting it to an audio file such as WAV or AIFF and \n"
"then import it, or record it into Audacity."
-msgstr "\"%s\" é um arquivo de notas e não de áudio. \n"
+msgstr ""
+"\"%s\" é um arquivo de notas e não de áudio. \n"
"O Audacity não abre estes arquivos diretamente.\n"
"Converta o arquivo em um formato que o Audacity \n"
"possa importar, como WAV ou AIFF."
-#: import/Import.cpp:212
+#: import/Import.cpp:295
#, c-format
-msgid "\"%s\" is a Musepack audio file. \n"
+msgid ""
+"\"%s\" is a Musepack audio file. \n"
"Audacity cannot open this type of file. \n"
"If you think it might be an mp3 file, rename it to end with \".mp3\" \n"
"and try importing it again. Otherwise you need to convert it to a supported audio \n"
"format, such as WAV or AIFF."
-msgstr "O arquivo \"%s\" está em formato Musepack. \n"
+msgstr ""
+"O arquivo \"%s\" está em formato Musepack. \n"
"O Audacity não abre estes arquivos diretamente.\n"
"Caso se trate de um arquivo MP3, renomeie a sua\n"
"extensão para .MP3 ou converta-o em um formato\n"
"que o Audacity possa importar, como WAV ou AIFF."
-#: import/Import.cpp:218
+#: import/Import.cpp:301
#, c-format
-msgid "\"%s\" is a Wavpack audio file. \n"
+msgid ""
+"\"%s\" is a Wavpack audio file. \n"
"Audacity cannot open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr "O arquivo \"%s\" está em formato Wavpack. \n"
+msgstr ""
+"O arquivo \"%s\" está em formato Wavpack. \n"
"O Audacity não abre estes arquivos diretamente.\n"
"Converta o arquivo em um formato que o Audacity \n"
"possa importar, como WAV ou AIFF."
-#: import/Import.cpp:224
+#: import/Import.cpp:307
#, c-format
-msgid "\"%s\" is a Dolby Digital audio file. \n"
+msgid ""
+"\"%s\" is a Dolby Digital audio file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr "O arquivo \"%s\" está em formato Dolby Digital. \n"
+msgstr ""
+"O arquivo \"%s\" está em formato Dolby Digital. \n"
"O Audacity não abre estes arquivos diretamente.\n"
"Converta o arquivo em um formato que o Audacity \n"
"possa importar, como WAV ou AIFF."
-#: import/Import.cpp:230
+#: import/Import.cpp:313
#, c-format
-msgid "\"%s\" is an Ogg Speex audio file. \n"
+msgid ""
+"\"%s\" is an Ogg Speex audio file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr "O arquivo \"%s\" está em formato Ogg Speex. \n"
+msgstr ""
+"O arquivo \"%s\" está em formato Ogg Speex. \n"
"O Audacity não abre estes arquivos diretamente.\n"
"Converta o arquivo em um formato importável, como WAV ou AIFF."
-#: import/Import.cpp:312
+#: import/Import.cpp:319
#, c-format
-msgid "\"%s\" is a video file. \n"
+msgid ""
+"\"%s\" is a video file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to extract the audio to a supported format, such as WAV or AIFF."
msgstr ""
+"O arquivo \"%s\" é um vÃdeo. \n"
+"O Audacity não abre este arquivo diretamente.\n"
+"Converta o arquivo em um formato importável, como WAV ou AIFF."
-#: import/Import.cpp:317
+#: import/Import.cpp:324
#, c-format
-msgid "Audacity did not recognize the type of the file '%s'.\n"
+msgid ""
+"Audacity did not recognize the type of the file '%s'.\n"
"If it is uncompressed, try importing it using \"Import Raw\"."
msgstr ""
+"Audacity não reconhece o tipo do arquivo '%s'\n"
+"como válido. Se este som não estiver comprimido, tente importar\n"
+"como \"Arquivo RAW\"."
-#: import/Import.cpp:322
+#: import/Import.cpp:329
#, c-format
-msgid "Audacity recognized the type of the file '%s',\n"
+msgid ""
+"Audacity recognized the type of the file '%s',\n"
"but was unable to import it."
msgstr ""
+"Audacity reconhece o tipo do arquivo '%s'\n"
+"como válido, no entanto não pôde importá-lo."
#: import/ImportFFmpeg.cpp:34
msgid "FFmpeg-compatible files"
-msgstr ""
+msgstr "Arquivos compatÃveis com FFmpeg"
-#: import/ImportFFmpeg.cpp:431
+#: import/ImportFFmpeg.cpp:438
#, c-format
msgid "Index[%02x] Codec[%S], Language[%S], Bitrate[%S], Channels[%d], Duration[%d]"
-msgstr ""
+msgstr "Index[%02x] Codec[%S], Idioma[%S], Taxa de Bits[%S], Canais[%d], Duração[%d]"
-#: import/ImportFLAC.cpp:35
+#: import/ImportFLAC.cpp:45
msgid "FLAC files"
msgstr "Arquivos FLAC"
-#: import/ImportLOF.cpp:92
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr "Arquivos compatÃveis com GStreamer"
+
+#: import/ImportLOF.cpp:95
msgid "List of Files in basic text format"
msgstr "Lista de arquivos em formato de texto"
#. i18n-hint: You do not need to translate "LOF"
-#: import/ImportLOF.cpp:318
+#: import/ImportLOF.cpp:314
msgid "Invalid window offset in LOF file."
-msgstr "Janela com compensação inválida no arquivo LOF."
+msgstr "Compensação inválida de janela no arquivo LOF."
#. i18n-hint: You do not need to translate "LOF"
-#: import/ImportLOF.cpp:320
-#: import/ImportLOF.cpp:341
-#: import/ImportLOF.cpp:415
-#: import/ImportLOF.cpp:435
+#: import/ImportLOF.cpp:316
+#: import/ImportLOF.cpp:337
+#: import/ImportLOF.cpp:418
+#: import/ImportLOF.cpp:439
msgid "LOF Error"
msgstr "Erro LOF"
#. i18n-hint: You do not need to translate "LOF"
-#: import/ImportLOF.cpp:339
+#: import/ImportLOF.cpp:335
msgid "Invalid duration in LOF file."
msgstr "Duração inválida no arquivo LOF."
-#: import/ImportLOF.cpp:414
+#: import/ImportLOF.cpp:417
msgid "MIDI tracks cannot be offset individually, only audio files can be."
msgstr "Faixas MIDI não podem ser compensadas individualmente, disponÃvel apenas em arquivos de áudio."
#. i18n-hint: You do not need to translate "LOF"
-#: import/ImportLOF.cpp:434
+#: import/ImportLOF.cpp:438
msgid "Invalid track offset in LOF file."
msgstr "Faixa com compensação inválida no arquivo LOF."
#: import/ImportMIDI.cpp:31
msgid ": Filename too short."
-msgstr ""
+msgstr ": Nome de arquivo muito curto."
-#: import/ImportMIDI.cpp:31 import/ImportMIDI.cpp:39 import/ImportMIDI.cpp:45
+#: import/ImportMIDI.cpp:31
+#: import/ImportMIDI.cpp:39
+#: import/ImportMIDI.cpp:45
#: import/ImportMIDI.cpp:53
msgid "Could not open file "
-msgstr ""
+msgstr "Não foi possÃvel abrir o arquivo"
#: import/ImportMIDI.cpp:39
msgid ": Incorrect filetype."
-msgstr ""
+msgstr ": Tipo de arquivo incorreto."
-#: import/ImportOGG.cpp:36
+#: import/ImportOGG.cpp:44
msgid "Ogg Vorbis files"
msgstr "Arquivos Ogg Vorbis"
-#: import/ImportOGG.cpp:142
+#: import/ImportOGG.cpp:184
msgid "Media read error"
msgstr "Erro de leitura na mÃdia"
-#: import/ImportOGG.cpp:145
+#: import/ImportOGG.cpp:187
msgid "Not an Ogg Vorbis file"
msgstr "Não é um arquivo Ogg Vorbis"
-#: import/ImportOGG.cpp:148
+#: import/ImportOGG.cpp:190
msgid "Vorbis version mismatch"
msgstr "Versão do Vorbis não está correta."
-#: import/ImportOGG.cpp:151
+#: import/ImportOGG.cpp:193
msgid "Invalid Vorbis bitstream header"
msgstr "Cabeçalho bitstream inválido para o Vorbis"
-#: import/ImportOGG.cpp:154
+#: import/ImportOGG.cpp:196
msgid "Internal logic fault"
msgstr "Falha lógica interna!"
-#: export/ExportPCM.cpp:320
-#: import/ImportPCM.cpp:47
+#: import/ImportPCM.cpp:66
msgid "WAV, AIFF, and other uncompressed types"
msgstr "WAV, AIFF, e outros arquivos não-compactados"
-#: import/ImportPlugin.h:142 import/ImportRaw.cpp:203
+#: import/ImportPlugin.h:135
+#: import/ImportRaw.cpp:210
#, c-format
msgid "Importing %s"
-msgstr ""
+msgstr "Importando %s"
-#: import/ImportQT.cpp:21
+#: import/ImportQT.cpp:18
msgid "QuickTime files"
msgstr "Arquivos Quicktime"
-#: import/ImportRaw.cpp:205
+#: import/ImportRaw.cpp:212
msgid "Import Raw"
-msgstr ""
+msgstr "Importar dados Raw"
-#: import/ImportRaw.cpp:278
+#: import/ImportRaw.cpp:292
msgid "Import Raw Data"
msgstr "Importar dados Raw"
@@ -7447,1174 +8149,1306 @@ msgstr "big-endian"
msgid "Default endianness"
msgstr "Endianness padrão"
-#: import/ImportRaw.cpp:370
+#: import/ImportRaw.cpp:365
msgid "1 Channel (Mono)"
msgstr "1 Canal (Mono)"
-#: import/ImportRaw.cpp:371
+#: import/ImportRaw.cpp:366
msgid "2 Channels (Stereo)"
msgstr "2 Canais (Estéreo)"
-#: import/ImportRaw.cpp:373
+#: import/ImportRaw.cpp:368
#, c-format
msgid "%d Channels"
msgstr "%d Canais"
-#: import/ImportRaw.cpp:369
+#: import/ImportRaw.cpp:379
msgid "Byte order:"
-msgstr ""
+msgstr "Ordem de bits:"
-#: import/ImportRaw.cpp:372
+#: import/ImportRaw.cpp:382
msgid "Channels:"
-msgstr ""
+msgstr "Canais:"
-#: import/ImportRaw.cpp:386
+#: import/ImportRaw.cpp:392
msgid "Start offset:"
msgstr "Iniciar compensação:"
-#: import/ImportRaw.cpp:397
+#: import/ImportRaw.cpp:398
msgid "Amount to import:"
msgstr "Quantidade a importar:"
-#: import/ImportRaw.cpp:408
+#: import/ImportRaw.cpp:404
msgid "Sample rate:"
msgstr "Taxa de amostragem:"
#: ondemand/ODComputeSummaryTask.h:47
msgid "Import complete. Calculating waveform"
-msgstr ""
+msgstr "Importação completa. Calculando forma de onda."
#: ondemand/ODDecodeTask.h:61
msgid "Decoding Waveform"
-msgstr ""
+msgstr "Decoficando forma de onda"
#: ondemand/ODWaveTrackTaskQueue.cpp:327
#, c-format
msgid "%s %2.0f%% complete. Click to change task focal point."
-msgstr ""
+msgstr "%s %2.0f%% completo. Clique para mudar o ponto de foco da tarefa."
-#: prefs/AudioIOPrefs.cpp:41
-#: prefs/AudioIOPrefs.cpp:42
-msgid "Audio I/O"
-msgstr "Dispositivos"
+#: prefs/BatchPrefs.cpp:53
+msgid "Batch"
+msgstr "Lote"
-#: prefs/AudioIOPrefs.cpp:100
-msgid "1 (Mono)"
-msgstr "1 (Mono)"
+#: prefs/BatchPrefs.cpp:75
+#: prefs/GUIPrefs.cpp:134
+#: prefs/TracksPrefs.cpp:99
+msgid "Behaviors"
+msgstr "Opções"
-#: prefs/AudioIOPrefs.cpp:101
-msgid "2 (Stereo)"
-msgstr "2 (Estéreo)"
+#: prefs/BatchPrefs.cpp:78
+msgid "&Don't apply effects in batch mode"
+msgstr "Não aplicar efeitos no mo&do de processamento em lote"
-#: prefs/AudioIOPrefs.cpp:115
-msgid "Playback"
-msgstr "Reprodução"
+#: prefs/BatchPrefs.cpp:81
+#: prefs/GUIPrefs.cpp:147
+msgid "Cl&eanSpeech Mode (Customized GUI)"
+msgstr "Modo Cl&eanSpeech (interface personalizada)"
-#: prefs/AudioIOPrefs.cpp:119
-#: prefs/AudioIOPrefs.cpp:137
-#: toolbars/DeviceToolBar.cpp:57
-msgid "Device"
-msgstr "Dispositivo"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
+msgstr "Dispositivos"
-#: prefs/AudioIOPrefs.cpp:122
+#: prefs/DevicePrefs.cpp:107
+#: prefs/GUIPrefs.cpp:32
+#: prefs/MidiIOPrefs.cpp:113
+msgid "Interface"
+msgstr "Interface"
+
+#: prefs/DevicePrefs.cpp:112
+#: prefs/MidiIOPrefs.cpp:118
+msgid "Host"
+msgstr "Host"
+
+#: prefs/DevicePrefs.cpp:119
+#: prefs/MidiIOPrefs.cpp:125
msgid "Using:"
msgstr "Utilizando:"
-#: prefs/AudioIOPrefs.cpp:123
-msgid "Portaudio v"
-msgstr "Portaudio v"
+#: prefs/DevicePrefs.cpp:126
+#: prefs/MidiIOPrefs.cpp:132
+#: prefs/PlaybackPrefs.cpp:31
+msgid "Playback"
+msgstr "Reprodução"
-#: prefs/AudioIOPrefs.cpp:133
+#: prefs/DevicePrefs.cpp:139
+#: prefs/MidiIOPrefs.cpp:145
+#: prefs/RecordingPrefs.cpp:34
msgid "Recording"
msgstr "Gravação"
-#: prefs/AudioIOPrefs.cpp:139
+#: prefs/DevicePrefs.cpp:149
msgid "Channels"
msgstr "Canais"
-#: prefs/AudioIOPrefs.cpp:145
-msgid "Playthrough"
-msgstr "Gravação e reprodução simultâneas"
+#: prefs/DevicePrefs.cpp:165
+msgid "No audio interfaces"
+msgstr "Sem interfaces de áudio"
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr "Reprodução simultânea via &hardware"
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr "Reprodução simultânea via &software"
+#: prefs/DevicePrefs.cpp:201
+#: prefs/DevicePrefs.cpp:206
+#: prefs/MidiIOPrefs.cpp:295
+#: prefs/MidiIOPrefs.cpp:300
+msgid "No devices found"
+msgstr "Dispositivo não encontrado"
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:162
-msgid "Effects Preview"
-msgstr "Previsão de efeitos"
-
-#: prefs/AudioIOPrefs.cpp:165
-msgid "Length of preview:"
-msgstr "Tamanho da previsão:"
-
-#: prefs/AudioIOPrefs.cpp:170
-msgid "Cut Preview"
-msgstr "Previsão de recorte"
-
-#: prefs/AudioIOPrefs.cpp:173
-msgid "Preview before cut region:"
-msgstr "Prever antes da área recortada:"
-
-#: prefs/AudioIOPrefs.cpp:175
-msgid "Preview after cut region:"
-msgstr "Prever após a área recortada:"
-
-#: prefs/AudioIOPrefs.cpp:183
-msgid "Latency"
-msgstr "Latência"
-
-#: prefs/AudioIOPrefs.cpp:189
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
-msgstr "Cópiar áudio na memória:\n"
-"(maior = mais latência)"
-
-#: prefs/AudioIOPrefs.cpp:192
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr "Correção de latência:\n"
-"(negativo = retroativo)"
-
-#: prefs/AudioIOPrefs.cpp:197
-msgid "Seek Time when playing"
-msgstr "Intervalo de busca ao reproduzir"
-
-#: prefs/AudioIOPrefs.cpp:200
-msgid "Short period:"
-msgstr "PerÃodo curto:"
-
-#: prefs/AudioIOPrefs.cpp:202
-msgid "Long period:"
-msgstr "PerÃodo longo:"
-
-#: prefs/BatchPrefs.cpp:55
-#: prefs/BatchPrefs.cpp:56
-msgid "Batch"
-msgstr "Lote"
-
-#: prefs/BatchPrefs.cpp:77
-#: prefs/GUIPrefs.cpp:92
-msgid "Behaviors"
-msgstr "Opções"
-
-#: prefs/BatchPrefs.cpp:80
-#: prefs/GUIPrefs.cpp:129
-msgid "&Don't apply effects in batch mode"
-msgstr "Não aplicar efeitos no mo&do de processamento em lote"
+#: prefs/DevicePrefs.cpp:264
+msgid "1 (Mono)"
+msgstr "1 (Mono)"
-#: prefs/BatchPrefs.cpp:83
-#: prefs/GUIPrefs.cpp:132
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr "Modo Cl&eanSpeech (interface personalizada)"
+#: prefs/DevicePrefs.cpp:267
+msgid "2 (Stereo)"
+msgstr "2 (Estéreo)"
-#: prefs/DirectoriesPrefs.cpp:55
-#: prefs/DirectoriesPrefs.cpp:56
-#: prefs/PrefsDialog.cpp:279
+#: prefs/DirectoriesPrefs.cpp:52
+#: prefs/PrefsDialog.cpp:210
msgid "Directories"
msgstr "Pastas"
-#: prefs/DirectoriesPrefs.cpp:87
+#: prefs/DirectoriesPrefs.cpp:82
msgid "Temporary files directory"
msgstr "Pasta de arquivos temporários"
-#: prefs/DirectoriesPrefs.cpp:91
+#: prefs/DirectoriesPrefs.cpp:89
msgid "Location:"
msgstr "Localização:"
-#: prefs/DirectoriesPrefs.cpp:93
+#: prefs/DirectoriesPrefs.cpp:96
msgid "Free Space:"
msgstr "Espaço livre:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr "Auto-recuperação"
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr "Salvar informações de auto-recuperação em uma pasta separada"
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
-msgstr "Salvar automaticamente a cada "
+#: prefs/DirectoriesPrefs.cpp:103
+msgid "Audio cache"
+msgstr "Cache de áudio"
#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
-msgstr "minutos"
+msgid "Play and/or record using RAM (useful for slow drives)"
+msgstr "Reproduzir e/ou gravar utilizando a memória RAM (útil em drives lentos)"
-#: prefs/DirectoriesPrefs.cpp:110
-msgid "Audio cache"
-msgstr "Cache de áudio"
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
+msgstr "MÃnimo de memória livre (MB):"
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:118
+msgid ""
+"If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
+"Se a memória do sistema estiver abaixo do valor especificado, não será\n"
+"possÃvel guardar mais áudio na memória e os dados serão gravados em disco."
-#: prefs/DirectoriesPrefs.cpp:121
+#: prefs/DirectoriesPrefs.cpp:126
msgid "Choose a location to place the temporary directory"
msgstr "Escolha uma pasta para o arquivos temporários"
-#: prefs/DirectoriesPrefs.cpp:166
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr "não disponÃvel - o endereço acima não existe"
+
+#: prefs/DirectoriesPrefs.cpp:173
#, c-format
msgid "Directory %s does not exist. Create it?"
msgstr "A pasta %s não existe. Deseja criar uma nova pasta?"
-#: prefs/DirectoriesPrefs.cpp:168
+#: prefs/DirectoriesPrefs.cpp:175
msgid "New Temporary Directory"
msgstr "Nova pasta temporária"
-#: prefs/DirectoriesPrefs.cpp:187
+#: prefs/DirectoriesPrefs.cpp:193
#, c-format
msgid "Directory %s is not writable"
msgstr "Pasta %s não pode ser gravada"
-#: prefs/DirectoriesPrefs.cpp:199
+#: prefs/DirectoriesPrefs.cpp:207
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "Alterações na pasta temporária só terão efeito na próxima vez que o Audacity for executado."
-#: prefs/FileFormatPrefs.cpp:48
-#: prefs/FileFormatPrefs.cpp:49
-msgid "Import / Export"
-msgstr "Importar / Exportar"
-
-#: prefs/FileFormatPrefs.cpp:77
-msgid "MP3 Export Library"
-msgstr "Biblioteca de exportação em MP3"
-
-#: prefs/FileFormatPrefs.cpp:80
-msgid "MP3 Library Version:"
-msgstr "Versão da biblioteca:"
-
-#: prefs/FileFormatPrefs.cpp:86
-msgid "MP3 Library:"
-msgstr "Biblioteca MP3:"
-
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:91
-msgid "LAME MP3 Library:"
-msgstr "Biblioteca MP3 LAME:"
-
-#: prefs/FileFormatPrefs.cpp:94
-msgid "&Download"
-msgstr "&Copiar"
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:136
-#, fuzzy
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr "Aviso: As opções de qualidade da exportação podem ser configuradas pelo botão Opções na janela do comando Exportar.\n"
-
-#: prefs/FileFormatPrefs.cpp:100
-msgid "When importing audio files"
-msgstr "Ao importar arquivos de áudio"
-
-#: prefs/FileFormatPrefs.cpp:103
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
-msgstr "Copiar arquivo antes de começar a editar (co&m cópia de segurança)"
-
-#: prefs/FileFormatPrefs.cpp:104
-msgid "&Read uncompressed audio files directly from the original (faster)"
-msgstr "Le&r diretamente do arquivo original (mais rápido)"
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "&Normalize all tracks in project"
-msgstr "&Normalizar áudio de todas as faixas"
+#: prefs/GUIPrefs.cpp:51
+msgid "In Browser"
+msgstr "No navegador"
-#: prefs/FileFormatPrefs.cpp:111
-msgid "When saving a project that depends on other audio files"
-msgstr "Ao salvar projetos que dependem de áudio de outros arquivos"
+#: prefs/GUIPrefs.cpp:52
+msgid "From Internet"
+msgstr "Na Internet"
-#: prefs/FileFormatPrefs.cpp:114
-msgid "Always © all audio into project (safest)"
-msgstr "Sempre &copiar todo o áudio para o projeto (mais seguro)"
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
+msgstr "36"
-#: prefs/FileFormatPrefs.cpp:115
-msgid "&Do not copy any audio"
-msgstr "&Não copiar nenhum áudio"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
+msgstr "48"
-#: prefs/FileFormatPrefs.cpp:116
-msgid "&Ask user"
-msgstr "&Sempre perguntar"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
+msgstr "60"
-#: prefs/FileFormatPrefs.cpp:120
-msgid "When exporting tracks to an audio file"
-msgstr "Ao exportar faixas para um arquivo de áudio"
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
+msgstr "96"
-#: prefs/FileFormatPrefs.cpp:123
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
-msgstr "Sempre &mixar todas as faixas em canais estéreo ou mono"
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
+msgstr "120"
-#: prefs/FileFormatPrefs.cpp:124
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
-msgstr "&Usar mixagem personalizada (p. ex. ao exportar áudio em 5.1 canais)"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
+msgstr "145"
-#: prefs/FileFormatPrefs.cpp:126
-msgid "S&how Metadata Editor prior to export step"
-msgstr "&Exibir Editor de metadados antes de exportar arquivos"
+#: prefs/GUIPrefs.cpp:61
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 dB (pequena extensão)"
-#: prefs/GUIPrefs.cpp:34
-#: prefs/GUIPrefs.cpp:35
-msgid "Interface"
-msgstr "Interface"
+#: prefs/GUIPrefs.cpp:62
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 dB (extensão PCM para amostras de 8 bit)"
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
-msgstr "No navegador"
+#: prefs/GUIPrefs.cpp:63
+msgid "-60 dB (PCM range of 10 bit samples)"
+msgstr "-60 dB (extensão PCM para amostras de 10 bit)"
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
-msgstr "Na Internet"
+#: prefs/GUIPrefs.cpp:64
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 dB (extensão PCM para amostras de 16 bit)"
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
-msgstr "Simples"
+#: prefs/GUIPrefs.cpp:65
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 dB (limite médio da audição humana)"
-#: prefs/GUIPrefs.cpp:94
-msgid "&Update display while playing"
-msgstr "&Atualizar tela durante a reprodução"
+#: prefs/GUIPrefs.cpp:66
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB (extensão PCM para amostras de 24 bit)"
#: prefs/GUIPrefs.cpp:96
-#, fuzzy
-msgid "Cl&osing last window quits Audacity"
-msgstr "Fechar a última janela aberta descarrega o Audacity da memória"
+#: prefs/SpectrumPrefs.cpp:129
+#: prefs/TracksPrefs.cpp:75
+msgid "Display"
+msgstr "Exibição"
#: prefs/GUIPrefs.cpp:98
-msgid "Enable &dragging of left and right selection edges"
-msgstr "&Habilitar o arraste das bordas da seleção"
-
-#: prefs/GUIPrefs.cpp:100
msgid "Er&gonomic order of audio I/O buttons"
-msgstr ""
+msgstr "Ordem &ergonômica dos botões de E/S de áudio"
-#: prefs/GUIPrefs.cpp:102
-msgid "Automatically &fit tracks vertically zoomed"
-msgstr "Ajustar &zoom vertical das faixas automaticamente"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
+msgstr "Exibir tela de &boas-vindas ao iniciar"
-#: prefs/GUIPrefs.cpp:104
-#, fuzzy
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
-msgstr "Alterar foco entre as faixas de maneira circular"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
+msgstr "Medidor/extensão da onda em dB:"
-#: prefs/GUIPrefs.cpp:106
-msgid "Editing a &clip can move other clips"
-msgstr "Ao editar um &clipe, mover os outros clipes relacionados"
+#: prefs/GUIPrefs.cpp:123
+msgid "Help:"
+msgstr "Ajuda:"
-#: prefs/GUIPrefs.cpp:108
-msgid "&Select all audio in project, if none selected"
-msgstr "&Se nenhum áudio estiver selecionado, selecionar tudo"
+#: prefs/GUIPrefs.cpp:136
+msgid "Cl&osing last window quits Audacity"
+msgstr "F&echar a última janela aberta descarrega o Audacity da memória"
-#: prefs/GUIPrefs.cpp:110
+#: prefs/GUIPrefs.cpp:139
msgid "&Beep on completion of longer activities"
msgstr "Emitir &bip ao completar tarefas demoradas"
-#: prefs/GUIPrefs.cpp:114
-msgid "Show / Hide"
-msgstr "Exibir / Ocultar"
-
-#: prefs/GUIPrefs.cpp:116
-msgid "Enable cut &lines"
-msgstr "Habilitar &linhas de corte"
-
-#: prefs/GUIPrefs.cpp:118
-msgid "Show warnings about &temp files"
-msgstr "Exibir avisos sobre os arquivos &temporários"
-
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:122
-#, fuzzy
-msgid "Show &Welcome Message at program start up"
-msgstr "Exibir tela de boas-vindas ao iniciar"
-
-#: prefs/GUIPrefs.cpp:126
+#: prefs/GUIPrefs.cpp:145
msgid "Modes"
msgstr "Modos"
-#: prefs/GUIPrefs.cpp:129
-msgid "Don't a&pply effects in batch mode"
-msgstr ""
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
+msgstr "Exibir efeitos VST no modo GUI"
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
-msgstr "Extensão mÃnima para a visualização dos medidores e 'Formato de onda' (dB)"
+#: prefs/GUIPrefs.cpp:156
+msgid "Don't a&pply effects in batch mode"
+msgstr "Não aplicar efeitos no mo&do de processamento em lote"
-#: prefs/GUIPrefs.cpp:141
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 dB (pequena extensão)"
+#: prefs/ImportExportPrefs.cpp:28
+msgid "Import / Export"
+msgstr "Importar / Exportar"
-#: prefs/GUIPrefs.cpp:142
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 dB (extensão PCM para amostras de 8 bit)"
+#: prefs/ImportExportPrefs.cpp:53
+msgid "When importing audio files"
+msgstr "Ao importar arquivos de áudio"
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
-msgstr "-60 dB (extensão PCM para amostras de 10 bit)"
+#: prefs/ImportExportPrefs.cpp:57
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
+msgstr "Copiar arquivo antes de começar a editar (co&m cópia de segurança)"
-#: prefs/GUIPrefs.cpp:144
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 dB (extensão PCM para amostras de 16 bit)"
+#: prefs/ImportExportPrefs.cpp:59
+msgid "&Read uncompressed audio files directly from the original (faster)"
+msgstr "Le&r diretamente do arquivo original (mais rápido)"
-#: prefs/GUIPrefs.cpp:145
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 dB (limite médio da audição humana)"
+#: prefs/ImportExportPrefs.cpp:64
+msgid "&Normalize all tracks in project"
+msgstr "&Normalizar áudio de todas as faixas"
-#: prefs/GUIPrefs.cpp:146
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB (extensão PCM para amostras de 24 bit)"
+#: prefs/ImportExportPrefs.cpp:70
+msgid "When exporting tracks to an audio file"
+msgstr "Ao exportar faixas para um arquivo de áudio"
-# i18n-hint: Refers to byte-order. Don't translate "endianness" if you don't
-# know the correct technical word.
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
-msgstr "Modo de visualização padrão"
+#: prefs/ImportExportPrefs.cpp:74
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+msgstr "Sempre &mixar todas as faixas em canais estéreo ou mono"
-#: prefs/GUIPrefs.cpp:166
-msgid "Other interface choices"
-msgstr "Outras opções da interface"
+#: prefs/ImportExportPrefs.cpp:76
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+msgstr "&Usar mixagem personalizada (p. ex. ao exportar áudio em 5.1 canais)"
-#: prefs/GUIPrefs.cpp:169
-msgid "Help:"
-msgstr "Ajuda:"
+#: prefs/ImportExportPrefs.cpp:81
+msgid "S&how Metadata Editor prior to export step"
+msgstr "&Exibir Editor de metadados antes de exportar arquivos"
-#: prefs/GUIPrefs.cpp:170
-msgid "Solo Button:"
-msgstr "Botão solo:"
+#: prefs/ImportExportPrefs.cpp:84
+msgid ""
+"Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
+msgstr ""
+"Aviso: As opções de qualidade da exportação podem ser \n"
+"configuradas pelo botão Opções na janela do comando Exportar."
-#: prefs/KeyConfigPrefs.cpp:64
-#: prefs/KeyConfigPrefs.cpp:65
+#: prefs/KeyConfigPrefs.cpp:72
msgid "Keyboard"
msgstr "Teclado"
-#: prefs/KeyConfigPrefs.cpp:86
+#: prefs/KeyConfigPrefs.cpp:96
msgid "Keyboard preferences currently unavailable."
-msgstr ""
+msgstr "Preferência do teclado não disponÃveis no momento."
-#: prefs/KeyConfigPrefs.cpp:87
+#: prefs/KeyConfigPrefs.cpp:97
msgid "Open a new project to modify keyboard shortcuts."
-msgstr ""
+msgstr "Abrir um novo projeto ao modificar os atalhos de teclado."
-#: prefs/KeyConfigPrefs.cpp:95
+#: prefs/KeyConfigPrefs.cpp:108
+#: prefs/KeyConfigPrefs.cpp:224
+msgid "All"
+msgstr "Passa-tudo"
+
+#: prefs/KeyConfigPrefs.cpp:124
msgid "Key Bindings"
msgstr "Atalhos de teclado"
-#: prefs/KeyConfigPrefs.cpp:115
+#: prefs/KeyConfigPrefs.cpp:129
+msgid "Category:"
+msgstr "Categoria:"
+
+#: prefs/KeyConfigPrefs.cpp:156
msgid "S&et"
msgstr "A&justar"
-#: prefs/KeyConfigPrefs.cpp:120
+#: prefs/KeyConfigPrefs.cpp:157
+#: widgets/FileHistory.cpp:174
+msgid "&Clear"
+msgstr "&Limpar"
+
+#: prefs/KeyConfigPrefs.cpp:162
msgid "Note: Pressing Cmd+Q will quit. All other keys are valid."
msgstr "Nota: Pressionar Cmd+Q fecha a janela. Todas as outras combinações são válidas."
-#: prefs/KeyConfigPrefs.cpp:124
-#: prefs/ThemePrefs.cpp:105
+#: prefs/KeyConfigPrefs.cpp:169
+#: prefs/ThemePrefs.cpp:125
msgid "&Defaults"
msgstr "&Padrões"
-#: prefs/KeyConfigPrefs.cpp:143
+#: prefs/KeyConfigPrefs.cpp:181
msgid "Key Combination"
msgstr "Combinação de teclas"
-#: prefs/KeyConfigPrefs.cpp:163
-msgid "Export Keyboard Shortcuts As:"
-msgstr "Exportar atalhos de teclado como:"
+#: prefs/KeyConfigPrefs.cpp:234
+#: toolbars/EditToolBar.cpp:143
+#: toolbars/EditToolBar.cpp:195
+msgid "Undo"
+msgstr "Desfazer"
-#: prefs/KeyConfigPrefs.cpp:181
-msgid "Error saving keyboard shortcuts"
-msgstr "Erro salvando atalhos de teclado"
+#: prefs/KeyConfigPrefs.cpp:237
+#: toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr "Refazer"
-#: prefs/KeyConfigPrefs.cpp:196
+#: prefs/KeyConfigPrefs.cpp:263
msgid "Select an XML file containing Audacity keyboard shortcuts..."
msgstr "Selecionar arquivo XML contendo os atalhos de teclado do Audacity..."
-#: prefs/KeyConfigPrefs.cpp:213
+#: prefs/KeyConfigPrefs.cpp:281
msgid "Error loading keyboard shortcuts"
msgstr "Erro carregando atalhos de teclado"
-#: prefs/KeyConfigPrefs.cpp:241
+#: prefs/KeyConfigPrefs.cpp:294
+msgid "Export Keyboard Shortcuts As:"
+msgstr "Exportar atalhos de teclado como:"
+
+#: prefs/KeyConfigPrefs.cpp:320
+msgid "Error saving keyboard shortcuts"
+msgstr "Erro salvando atalhos de teclado"
+
+#: prefs/KeyConfigPrefs.cpp:368
#, c-format
-msgid "The keyboard shortcut '%s' is already assigned to:\n"
+msgid ""
+"The keyboard shortcut '%s' is already assigned to:\n"
"\n"
"'%s'"
-msgstr "O atalho de teclado '%s\" já está associado a:\n"
+msgstr ""
+"O atalho de teclado '%s\" já está associado a:\n"
"\n"
"'%s'"
-#: prefs/KeyConfigPrefs.cpp:367
-#: toolbars/EditToolBar.cpp:144
-msgid "Undo"
-msgstr "Desfazer"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr "Bibliotecas"
+
+#: prefs/LibraryPrefs.cpp:79
+msgid "MP3 Export Library"
+msgstr "Biblioteca de exportação em MP3"
-#: prefs/AudioIOPrefs.cpp:147
+#: prefs/LibraryPrefs.cpp:83
+msgid "MP3 Library Version:"
+msgstr "Versão da biblioteca:"
+
+#: prefs/LibraryPrefs.cpp:89
+msgid "MP3 Library:"
+msgstr "Biblioteca MP3:"
+
+#: prefs/LibraryPrefs.cpp:92
+#: prefs/LibraryPrefs.cpp:124
+msgid "&Locate..."
+msgstr "&Localizar..."
+
+#: prefs/LibraryPrefs.cpp:94
+msgid "LAME MP3 Library:"
+msgstr "Biblioteca MP3 LAME:"
+
+#: prefs/LibraryPrefs.cpp:97
+#: prefs/LibraryPrefs.cpp:130
+msgid "&Download"
+msgstr "&Copiar"
+
+#: prefs/LibraryPrefs.cpp:104
+msgid "FFmpeg Import/Export Library"
+msgstr "Biblioteca de importação/exportação FFmpeg"
+
+#: prefs/LibraryPrefs.cpp:108
+msgid "FFmpeg Library Version:"
+msgstr "Versão da biblioteca FFmpeg:"
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr "Biblioteca FFmpeg compatÃvel não encontrada"
+
+#: prefs/LibraryPrefs.cpp:120
+#: prefs/LibraryPrefs.cpp:126
+msgid "FFmpeg Library:"
+msgstr "Biblioteca FFmpeg:"
+
+#: prefs/MidiIOPrefs.cpp:58
+msgid "MIDI Devices"
+msgstr "Dispositivos MIDI"
+
+#: prefs/MidiIOPrefs.cpp:168
+#: prefs/RecordingPrefs.cpp:60
+msgid "Playthrough"
+msgstr "Gravação e reprodução simultâneas"
+
+#: prefs/MidiIOPrefs.cpp:170
msgid "&Play other tracks while recording new one"
msgstr "&Ao gravar, reproduzir outras faixas simultaneamente "
-#: prefs/MidiIOPrefs.cpp:149
+#: prefs/MidiIOPrefs.cpp:173
msgid "&Hardware Playthrough (Play new track while recording it)"
-msgstr ""
+msgstr "Reprodução simultânea via &hardware"
-#: prefs/MidiIOPrefs.cpp:152
+#: prefs/MidiIOPrefs.cpp:176
msgid "&Software Playthrough (Play new track while recording it)"
-msgstr ""
+msgstr "Reprodução simultânea via &software"
+
+#: prefs/MidiIOPrefs.cpp:181
+#: prefs/PlaybackPrefs.cpp:72
+msgid "Cut Preview"
+msgstr "Previsão de recorte"
-#: prefs/MidiIOPrefs.cpp:160
+#: prefs/MidiIOPrefs.cpp:184
msgid "Play before cut region:"
-msgstr ""
+msgstr "Reproduzir antes da área recortada:"
-#: prefs/MidiIOPrefs.cpp:162
+#: prefs/MidiIOPrefs.cpp:186
msgid "Play after cut region:"
-msgstr ""
+msgstr "Reproduzir após a área recortada:"
-#: prefs/MidiIOPrefs.cpp:173
+#: prefs/MidiIOPrefs.cpp:191
+#: prefs/RecordingPrefs.cpp:79
+msgid "Latency"
+msgstr "Latência"
+
+#: prefs/MidiIOPrefs.cpp:196
+#: prefs/RecordingPrefs.cpp:85
msgid "Audio to buffer:"
-msgstr ""
+msgstr "Cópiar áudio na memória:"
-#: prefs/MidiIOPrefs.cpp:176
+#: prefs/MidiIOPrefs.cpp:198
+#: prefs/RecordingPrefs.cpp:92
msgid "Latency correction:"
-msgstr ""
+msgstr "Correção de latência:"
-#: prefs/MidiIOPrefs.cpp:183
+#: prefs/MidiIOPrefs.cpp:205
msgid "Seek Time"
-msgstr ""
+msgstr "Tempo da busca"
-#: prefs/MidiIOPrefs.cpp:196
+#: prefs/MidiIOPrefs.cpp:208
+#: prefs/PlaybackPrefs.cpp:98
+msgid "Short period:"
+msgstr "PerÃodo curto:"
+
+#: prefs/MidiIOPrefs.cpp:210
+#: prefs/PlaybackPrefs.cpp:105
+msgid "Long period:"
+msgstr "PerÃodo longo:"
+
+#: prefs/MidiIOPrefs.cpp:215
+#: prefs/PlaybackPrefs.cpp:57
+msgid "Effects Preview"
+msgstr "Previsão de efeitos"
+
+#: prefs/MidiIOPrefs.cpp:218
msgid "Play when previewing:"
-msgstr ""
+msgstr "Reproduzir ao prever:"
-#: prefs/MousePrefs.cpp:55
-#: prefs/MousePrefs.cpp:56
+#: prefs/MidiIOPrefs.cpp:256
+msgid "No MIDI interfaces"
+msgstr "Sem interfaces MIDI"
+
+#: prefs/MousePrefs.cpp:57
msgid "Mouse"
msgstr "Mouse"
# bindingS???
-#: prefs/MousePrefs.cpp:78
+#: prefs/MousePrefs.cpp:84
msgid "Mouse Bindings (default values, not configurable)"
msgstr "Ações do mouse (valores padrão, não configuráveis)"
-#: prefs/MousePrefs.cpp:93
+#: prefs/MousePrefs.cpp:97
msgid "Tool"
msgstr "Ferramenta"
-#: prefs/MousePrefs.cpp:94
+#: prefs/MousePrefs.cpp:98
msgid "Command Action"
msgstr "Ação do Comando"
-#: prefs/MousePrefs.cpp:95
+#: prefs/MousePrefs.cpp:99
msgid "Buttons"
msgstr "Botões"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:117
-#: prefs/MousePrefs.cpp:122
+#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:121
+#: prefs/MousePrefs.cpp:126
msgid "Left-Click"
msgstr "Clicar com o botão esquerdo"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:100
-#: prefs/MousePrefs.cpp:101
#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:103
+#: prefs/MousePrefs.cpp:104
+#: prefs/MousePrefs.cpp:105
+#: prefs/MousePrefs.cpp:106
msgid "Select"
msgstr "Selecionar"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:122
+#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:126
msgid "Set Selection Point"
msgstr "Ajuste do inÃcio da seleção"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:103
+#: prefs/MousePrefs.cpp:109
#: prefs/MousePrefs.cpp:115
#: prefs/MousePrefs.cpp:119
#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:127
msgid "Left-Drag"
msgstr "Arrastar com o botão esquerdo"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:103
+#: prefs/MousePrefs.cpp:127
msgid "Set Selection Range"
msgstr "Ajuste da extensão da seleção"
-#: prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:104
msgid "Extend Selection Range"
msgstr "Extender área de seleção"
-#: prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:104
msgid "Shift-Left-Click"
msgstr "Shift + Clicar com botão esquerdo"
-#: prefs/MousePrefs.cpp:101
+#: prefs/MousePrefs.cpp:105
msgid "Left-Double-Click"
msgstr "Clicar duplo com botão esquerdo"
-#: prefs/MousePrefs.cpp:101
+#: prefs/MousePrefs.cpp:105
msgid "Select Clip or Entire Track"
msgstr "Selecionar clipe ou faixa inteira"
-#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:106
msgid "Ctrl-Left-Click"
msgstr "Ctrl + Clicar com botão esquerdo"
-#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:106
msgid "Set Selection Point and Play"
msgstr "Ajustar ponto de seleção ou reprodução"
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:107
#: prefs/MousePrefs.cpp:108
#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:110
+#: prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:112
+#: prefs/MousePrefs.cpp:113
msgid "Zoom"
msgstr "Zoom"
-#: prefs/MousePrefs.cpp:104
+#: prefs/MousePrefs.cpp:108
msgid "Zoom in on Point"
msgstr "Aumentar zoom no ponto"
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:129
msgid "Zoom in on a Range"
msgstr "Aumentar zoom na extensão"
-#: prefs/MousePrefs.cpp:105
+#: prefs/MousePrefs.cpp:109
msgid "same as right-drag"
msgstr "O mesmo que arrastar com o botão direito"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:110
+#: prefs/MousePrefs.cpp:128
msgid "Right-Click"
msgstr "Clicar com o botão direito"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:110
+#: prefs/MousePrefs.cpp:128
msgid "Zoom out one step"
msgstr "Diminuir zoom um ponto"
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:129
msgid "Right-Drag"
msgstr "Arrastar com o botão direito"
-#: prefs/MousePrefs.cpp:107
+#: prefs/MousePrefs.cpp:111
msgid "same as left-drag"
msgstr "O mesmo que arrastar com o botão esquerdo"
-#: prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:112
msgid "Shift-Drag"
msgstr "Shift + Arrastar com o botão esquerdo"
-#: prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:112
msgid "Zoom out on a Range"
msgstr "Diminuir zoom"
-#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:113
msgid "Middle-Click"
msgstr "Clique com o botão do meio"
-#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:113
msgid "Zoom default"
msgstr "Zoom padrão"
-#: prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:115
msgid "Time shift clip or move up/down between tracks"
msgstr "Deslizar clipes ou mover entre outras faixas"
-#: prefs/MousePrefs.cpp:112
+#: prefs/MousePrefs.cpp:116
msgid "Shift-Left-Drag"
msgstr "Shift + Arrastar com botão esquerdo"
-#: prefs/MousePrefs.cpp:112
+#: prefs/MousePrefs.cpp:116
msgid "Time shift all clips in track"
msgstr "Deslizar todos os clipes da faixa"
-#: prefs/MousePrefs.cpp:113
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:117
+#: prefs/MousePrefs.cpp:124
msgid "Ctrl-Left-Drag"
msgstr "Ctrl + Arrastar com o botão esquerdo"
-#: prefs/MousePrefs.cpp:113
+#: prefs/MousePrefs.cpp:117
msgid "Move clip up/down between tracks"
msgstr "Mover clipes entre faixas"
-#: prefs/MousePrefs.cpp:115
+#: prefs/MousePrefs.cpp:119
msgid "Change Amplification Envelope"
msgstr "Alterar envelope da amplificação"
-#: prefs/MousePrefs.cpp:117
+#: prefs/MousePrefs.cpp:121
msgid "Change Sample"
msgstr "Alterar amostra"
-#: prefs/MousePrefs.cpp:117
-#: prefs/MousePrefs.cpp:118
-#: prefs/MousePrefs.cpp:119
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:121
+#: prefs/MousePrefs.cpp:122
+#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:124
msgid "Pencil"
msgstr "Lápis"
-#: prefs/MousePrefs.cpp:118
+#: prefs/MousePrefs.cpp:122
msgid "Alt-Left-Click"
msgstr "Alt + Clicar com o botão esquerdo"
-#: prefs/MousePrefs.cpp:118
+#: prefs/MousePrefs.cpp:122
msgid "Smooth at Sample"
msgstr "Suavizar amostra"
-#: prefs/MousePrefs.cpp:119
+#: prefs/MousePrefs.cpp:123
msgid "Change Several Samples"
msgstr "Alterar múltiplas amostras"
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:124
msgid "Change ONE Sample only"
msgstr "Alterar UMA amostra apenas"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
-#: prefs/MousePrefs.cpp:124
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:126
+#: prefs/MousePrefs.cpp:127
+#: prefs/MousePrefs.cpp:128
+#: prefs/MousePrefs.cpp:129
msgid "Multi"
msgstr "Multi"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:126
+#: prefs/MousePrefs.cpp:127
msgid "same as select tool"
msgstr "Similar à ferramenta de seleção"
-#: prefs/MousePrefs.cpp:124
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:128
+#: prefs/MousePrefs.cpp:129
msgid "same as zoom tool"
msgstr "Similar à ferramenta de zoom"
-#: prefs/MousePrefs.cpp:127
-#: prefs/MousePrefs.cpp:128
-#: prefs/MousePrefs.cpp:129
+#: prefs/MousePrefs.cpp:131
+#: prefs/MousePrefs.cpp:132
+#: prefs/MousePrefs.cpp:133
msgid "Any"
msgstr "Qualquer"
-#: prefs/MousePrefs.cpp:127
+#: prefs/MousePrefs.cpp:131
msgid "Scroll up or down"
msgstr "Rolar para cima ou para baixo"
-#: prefs/MousePrefs.cpp:127
+#: prefs/MousePrefs.cpp:131
msgid "Wheel-Rotate"
msgstr "Girar a rodinha do mouse"
-#: prefs/MousePrefs.cpp:128
+#: prefs/MousePrefs.cpp:132
msgid "Scroll left or right"
msgstr "Rolar para esquerda ou para direita"
-#: prefs/MousePrefs.cpp:128
+#: prefs/MousePrefs.cpp:132
msgid "Shift-Wheel-Rotate"
msgstr "Shift + Girar rodinha do mouse"
-#: prefs/MousePrefs.cpp:129
+#: prefs/MousePrefs.cpp:133
msgid "Ctrl-Wheel-Rotate"
msgstr "Ctrl + Girar a rodinha do mouse"
-#: prefs/MousePrefs.cpp:129
+#: prefs/MousePrefs.cpp:133
msgid "Zoom in or out"
msgstr "Mais ou menos zoom"
-#: prefs/PrefsDialog.cpp:89
+#: prefs/PlaybackPrefs.cpp:61
+msgid "Length of preview:"
+msgstr "Tamanho da previsão:"
+
+#: prefs/PlaybackPrefs.cpp:76
+msgid "Preview before cut region:"
+msgstr "Prever antes da área recortada:"
+
+#: prefs/PlaybackPrefs.cpp:83
+msgid "Preview after cut region:"
+msgstr "Prever após a área recortada:"
+
+#: prefs/PlaybackPrefs.cpp:94
+msgid "Seek Time when playing"
+msgstr "Intervalo de busca ao reproduzir"
+
+#: prefs/PrefsDialog.cpp:72
msgid "Audacity Preferences"
msgstr "Preferências do Audacity"
-#: prefs/QualityPrefs.cpp:73
+#: prefs/ProjectsPrefs.cpp:32
+msgid "Projects"
+msgstr "Projetos"
+
+#: prefs/ProjectsPrefs.cpp:59
+msgid "When saving a project that depends on other audio files"
+msgstr "Ao salvar projetos que dependem de áudio de outros arquivos"
+
+#: prefs/ProjectsPrefs.cpp:63
+msgid "Always © all audio into project (safest)"
+msgstr "Sempre &copiar todo o áudio para o projeto (mais seguro)"
+
+#: prefs/ProjectsPrefs.cpp:65
+msgid "&Do not copy any audio"
+msgstr "&Não copiar nenhum áudio"
+
+#: prefs/ProjectsPrefs.cpp:67
+msgid "&Ask user"
+msgstr "&Sempre perguntar"
+
+#: prefs/ProjectsPrefs.cpp:74
+msgid "Auto save"
+msgstr "Auto-recuperação"
+
+#: prefs/ProjectsPrefs.cpp:76
+msgid "Auto save a copy of the project in a separate folder"
+msgstr "Salvar informações de auto-recuperação em uma pasta separada"
+
+#: prefs/ProjectsPrefs.cpp:82
+msgid "Auto save interval:"
+msgstr "Salvar automaticamente a cada "
+
+#: prefs/ProjectsPrefs.cpp:86
+#: prefs/ProjectsPrefs.cpp:87
+msgid "minutes"
+msgstr "minutos"
+
+#: prefs/QualityPrefs.cpp:75
msgid "Rectangle"
msgstr "Retangular"
-#: prefs/QualityPrefs.cpp:74
+#: prefs/QualityPrefs.cpp:76
msgid "Triangle"
msgstr "Triangular"
-#: prefs/QualityPrefs.cpp:75
+#: prefs/QualityPrefs.cpp:77
msgid "Shaped"
msgstr "Formatado"
-#: prefs/QualityPrefs.cpp:122
+#: prefs/QualityPrefs.cpp:125
msgid "Sampling"
msgstr "Amostragem"
-#: prefs/QualityPrefs.cpp:125
+#: prefs/QualityPrefs.cpp:129
msgid "Default Sample Rate:"
msgstr "Taxa padrão:"
-#: prefs/QualityPrefs.cpp:127
+#: prefs/QualityPrefs.cpp:154
msgid "Default Sample Format:"
msgstr "Formato padrão:"
-#: prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "Conversor de taxa de amostragem em tempo real:"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr "Conversão em tempo-real"
-#: prefs/QualityPrefs.cpp:139
-msgid "High-quality sample rate converter:"
-msgstr "Conversor de taxa de amostragem de alta qualidade:"
+#: prefs/QualityPrefs.cpp:171
+#: prefs/QualityPrefs.cpp:193
+msgid "Sample Rate Converter:"
+msgstr "Conversão de taxa de amostragem:"
-#: prefs/QualityPrefs.cpp:142
-msgid "Real-time dither:"
-msgstr "Suavização de ondas sonoras em tempo-real:"
+# Dithering is a mathematical process where a random noise is added to the least significant bit of a digital word. With very low level signals, the quantization error becomes correlated to the signal level. This creates a measurable amount of distortion. By adding dither, the correlation between the signal level and the quantization error is canceled, allowing the digital system to encode amplitudes smaller than the least significant bit.
+#: prefs/QualityPrefs.cpp:178
+#: prefs/QualityPrefs.cpp:200
+msgid "Dither"
+msgstr "Pontilhamento"
-#: prefs/QualityPrefs.cpp:145
-msgid "High-quality dither:"
-msgstr "Suavização de ondas sonoras em alta-qualidade:"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr "Conversão de alta qualidade"
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
-msgstr "Conversão"
+#: prefs/RecordingPrefs.cpp:62
+msgid "Overdub: &Play other tracks while recording new one"
+msgstr "Overdub: &Ao gravar, reproduzir outras faixas simultaneamente "
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
-msgstr "Conversor de taxa de amostragem"
+#: prefs/RecordingPrefs.cpp:66
+msgid "&Hardware Playthrough: Play new track while recording it"
+msgstr "Reprodução simultânea via &hardware"
-# Dithering is a mathematical process where a random noise is added to the least significant bit of a digital word. With very low level signals, the quantization error becomes correlated to the signal level. This creates a measurable amount of distortion. By adding dither, the correlation between the signal level and the quantization error is canceled, allowing the digital system to encode amplitudes smaller than the least significant bit.
-#: prefs/QualityPrefs.cpp:164
-msgid "Dither"
-msgstr "Pontilhamento"
+#: prefs/RecordingPrefs.cpp:70
+msgid "&Software Playthrough: Play new track while recording or monitoring"
+msgstr "Reprodução simultânea via &software: Reproduz a nova faixa ao gravar ou monitorar"
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
-msgstr "Em tempo-real:"
+#: prefs/RecordingPrefs.cpp:74
+msgid "(uncheck when recording \"stereo mix\")"
+msgstr "(desmarque ao gravar faixas mixadas em estéreo)"
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
-msgstr "De alta-qualidade:"
+#: prefs/RecordingPrefs.cpp:89
+#: prefs/RecordingPrefs.cpp:90
+msgid "milliseconds (higher = more latency)"
+msgstr "milissegundos (maior = mais latência)"
-# smart rec = grav programada! (igual aos VCR)
-#: prefs/SmartRecordPrefs.cpp:54
-#: prefs/SmartRecordPrefs.cpp:55
-msgid "Smart Recording"
-msgstr "Gravação programada"
+#: prefs/RecordingPrefs.cpp:96
+#: prefs/RecordingPrefs.cpp:97
+msgid "milliseconds (negative = backwards)"
+msgstr "milissegundos (negativo = retroativo)"
-#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
+# smart rec = grav programada! (igual aos VCR)
+#: prefs/RecordingPrefs.cpp:103
+#: prefs/RecordingPrefs.cpp:105
msgid "Sound Activated Recording"
-msgstr ""
+msgstr "Gravação ativada por som"
-#: prefs/SmartRecordPrefs.cpp:71
+#: prefs/RecordingPrefs.cpp:114
msgid "Sound Activation Level (dB):"
-msgstr ""
+msgstr "NÃvel de ativação do som (dB):"
-#: prefs/SpectrumPrefs.cpp:41
-#: prefs/SpectrumPrefs.cpp:42
+#: prefs/SpectrumPrefs.cpp:30
msgid "Spectrograms"
-msgstr "Espectrograma"
+msgstr "Espectrogramas"
-#: prefs/SpectrumPrefs.cpp:91
-msgid "FFT Size"
-msgstr "Tamanho FFT"
-
-#: prefs/SpectrumPrefs.cpp:94
+#: prefs/SpectrumPrefs.cpp:41
msgid "8 - most wideband"
msgstr "8 - mais amplo"
-#: prefs/SpectrumPrefs.cpp:99
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr "16"
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr "32"
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr "64"
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr "128"
+
+#: prefs/SpectrumPrefs.cpp:46
msgid "256 - default"
msgstr "256 - padrão"
-#: prefs/SpectrumPrefs.cpp:107
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr "512"
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr "1024"
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr "2048"
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr "4096"
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr "8192"
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr "16384"
+
+#: prefs/SpectrumPrefs.cpp:54
msgid "32768 - most narrowband"
msgstr "32768 - mais estreito"
-#: prefs/SpectrumPrefs.cpp:109
+#: prefs/SpectrumPrefs.cpp:56
msgid "4096 - most narrowband"
msgstr "4096 - mais estreito"
-#: prefs/SpectrumPrefs.cpp:116
-msgid "Window type:"
-msgstr "Tipo de janela:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
+msgstr "Janela FFT"
-#: prefs/SpectrumPrefs.cpp:125
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
+msgstr "Tamanho da janela"
+
+#: prefs/SpectrumPrefs.cpp:93
+msgid "Window type"
+msgstr "Tipo de janela"
+
+#: prefs/SpectrumPrefs.cpp:113
msgid "FFT Skip Points"
msgstr "Omitir pontos FFT"
-#: prefs/SpectrumPrefs.cpp:140
-msgid "Display"
-msgstr "Exibição"
-
-#: prefs/SpectrumPrefs.cpp:144
-msgid "&Grayscale"
-msgstr "&Escala de cinzas"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
+msgstr "Omitir pontos"
-#: prefs/SpectrumPrefs.cpp:147
+#: prefs/SpectrumPrefs.cpp:134
msgid "Minimum Frequency (Hz):"
-msgstr "Freqüência MÃnima (Hz):"
+msgstr "Frequência MÃnima (Hz):"
-#: prefs/SpectrumPrefs.cpp:152
+#: prefs/SpectrumPrefs.cpp:140
msgid "Maximum Frequency (Hz):"
-msgstr "Freqüência Máxima (Hz):"
+msgstr "Frequência Máxima (Hz):"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
-msgstr "Grid &Y"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
+msgstr "Exibir espectro com tons de cin&za"
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
-msgstr "&Encontrar notas"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
+msgstr "Exibir uma grade ao longo do eixo &Y"
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
-msgstr "&Quantificar notas"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
+msgstr "Encontrar notas FFT"
#: prefs/SpectrumPrefs.cpp:165
msgid "Minimum Amplitude (dB):"
msgstr "Amplitude mÃnima (dB):"
-#: prefs/SpectrumPrefs.cpp:170
+#: prefs/SpectrumPrefs.cpp:171
msgid "Max. Number of Notes (1..128):"
msgstr "Número máx. de notas (1-128):"
-#: prefs/SpectrumPrefs.cpp:197
+#: prefs/SpectrumPrefs.cpp:178
+msgid "&Find Notes"
+msgstr "&Encontrar notas"
+
+#: prefs/SpectrumPrefs.cpp:182
+msgid "&Quantize Notes"
+msgstr "&Quantificar notas"
+
+#: prefs/SpectrumPrefs.cpp:194
msgid "The maximum frequency must be an integer"
-msgstr "A freqüência máxima deve ser um valor inteiro."
+msgstr "A frequência máxima deve ser um valor inteiro."
-#: prefs/SpectrumPrefs.cpp:201
+#: prefs/SpectrumPrefs.cpp:198
msgid "Maximum frequency must be in the range 100 Hz - 100,000 Hz"
-msgstr "Freqüência máxima deve estar entre 100 Hz e 100.000 Hz"
+msgstr "Frequência máxima deve estar entre 100 Hz e 100.000 Hz"
-#: prefs/SpectrumPrefs.cpp:209
+#: prefs/SpectrumPrefs.cpp:204
msgid "The minimum frequency must be an integer"
-msgstr "A freqüência mÃnima deve ser um número inteiro"
+msgstr "A frequência mÃnima deve ser um número inteiro"
-#: prefs/SpectrumPrefs.cpp:213
+#: prefs/SpectrumPrefs.cpp:208
msgid "Minimum frequency must be at least 0 Hz"
-msgstr "A freqüência mÃnima deve ser no mÃnimo 0 Hz"
+msgstr "A frequência mÃnima deve ser no mÃnimo 0 Hz"
+
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr "A frequência mÃnima deve ser menor que a frequência máxima"
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr "A amplitude mÃnima (dB) deve ser um número inteiro"
#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr "A frequência máxima deve ser um valor inteiro."
+
#: prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
+msgid "The maximum number of notes must be in the range 1..128"
msgstr "O número máximo de notas deve estar entre 1 e 128."
-#: prefs/ThemePrefs.cpp:62
-#: prefs/ThemePrefs.cpp:63
+#: prefs/ThemePrefs.cpp:60
msgid "Theme"
msgstr "Tema"
+#: prefs/ThemePrefs.cpp:88
+msgid "Info"
+msgstr "Info"
+
+#: prefs/ThemePrefs.cpp:91
+msgid ""
+"Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr ""
+"O uso de temas é um recurso experimental\n"
+"\n"
+"Para utilizá-lo, clique em \"Salvar arquivo de temas\" \n"
+"e edite o arquivo de nome ImageCacheVxx.png\n"
+"em um editor de imagens.\n"
+"\n"
+"Clique em \"Abrir arquivo de temas\" para carregar\n"
+"as imagens alteradas para a interface do \n"
+"Audacity.\n"
+"\n"
+"(No momento, apenas a barra de controle e as\n"
+"cores das ondas sonoras serão alteradas, ainda \n"
+"que o arquivo apresente outros Ãcones.)"
+
+#: prefs/ThemePrefs.cpp:96
+msgid ""
+"You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+"O Audacity foi compilado com um botão extra, \n"
+"'Output Sourcery'. Ele irá salvar uma versão \n"
+"em C da imagem em cache que pode ser \n"
+"compilada como padrão."
+
+#: prefs/ThemePrefs.cpp:101
+msgid ""
+"If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+"Se 'Abrir pasta de temas na inicialização' estiver selecionado, \n"
+"o arquivo de temas será aberto ao iniciar o Audacity."
+
+#: prefs/ThemePrefs.cpp:104
+msgid ""
+"Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+"Salvar e abrir arquivos individuais usa o mesmo\n"
+"esquema de edição de arquivos, mas utilizando\n"
+"um arquivo diferente para cada imagem."
+
#. i18n-hint: && in here is an escape character to get a single & on screen,
#. * so keep it as is
-#: prefs/ThemePrefs.cpp:93
+#: prefs/ThemePrefs.cpp:111
msgid "Theme Cache - Images && Color"
msgstr "Arquivo de Temas - Imagens e Cores"
-#: prefs/ThemePrefs.cpp:95
+#: prefs/ThemePrefs.cpp:115
msgid "Save Theme Cache"
msgstr "Salvar arquivo de temas"
-#: prefs/ThemePrefs.cpp:96
+#: prefs/ThemePrefs.cpp:116
msgid "Load Theme Cache"
msgstr "Abrir arquivo de temas"
-#: prefs/ThemePrefs.cpp:106
+#: prefs/ThemePrefs.cpp:131
msgid "Load Theme Cache At Startup"
msgstr "Abrir arquivo de temas na inicialização"
-#: prefs/ThemePrefs.cpp:118
+#: prefs/ThemePrefs.cpp:146
msgid "Individual Theme Files"
msgstr "Arquivos individuais de tema"
-#: prefs/ThemePrefs.cpp:120
+#: prefs/ThemePrefs.cpp:150
msgid "Save Files"
msgstr "Salvar arquivos"
-#: prefs/ThemePrefs.cpp:121
+#: prefs/ThemePrefs.cpp:151
msgid "Load Files"
msgstr "Abrir arquivos"
-#: prefs/ThemePrefs.cpp:126
-msgid "Info"
-msgstr "Info"
+#: prefs/TracksPrefs.cpp:47
+msgid "Simple"
+msgstr "Simples"
-#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
-msgstr "O uso de temas é um recurso experimental\n"
-"\n"
-"Para utilizá-lo, clique em \"Salvar arquivo de temas\" \n"
-"e edite o arquivo de nome ImageCacheVxx.png\n"
-"em um editor de imagens.\n"
-"\n"
-"Clique em \"Abrir arquivo de temas\" para carregar\n"
-"as imagens alteradas para a interface do \n"
-"Audacity.\n"
-"\n"
-"(No momento, apenas a barra de controle e as\n"
-"cores das ondas sonoras serão alteradas, ainda \n"
-"que o arquivo apresente outros icones.)\n"
+#: prefs/TracksPrefs.cpp:77
+msgid "&Update display while playing"
+msgstr "&Atualizar tela durante a reprodução"
-#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
-msgstr "O Audacity foi compilado com um botão extra, \n"
-"'Output Sourcery'. Ele irá salvar uma versão \n"
-"em C da imagem em cache que pode ser \n"
-"compilada como padrão.\n"
+#: prefs/TracksPrefs.cpp:80
+msgid "Automatically &fit tracks vertically zoomed"
+msgstr "Ajustar &zoom vertical das faixas automaticamente"
-#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
-msgstr "Se 'Abrir pasta de temas na inicialização' estiver selecionado, \n"
-"o arquivo de temas será aberto ao iniciar o Audacity.\n"
-"\n"
+# i18n-hint: Refers to byte-order. Don't translate "endianness" if you don't
+# know the correct technical word.
+#: prefs/TracksPrefs.cpp:88
+msgid "Default View Mode:"
+msgstr "Modo de visualização padrão:"
-#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
-msgstr "Salvar e abrir arquivos individuais usa o mesmo\n"
-"esquema de edição de arquivos, mas utilizando\n"
-"um arquivo diferente para cada imagem.\n"
-"\n"
+#: prefs/TracksPrefs.cpp:101
+msgid "&Select all audio in project, if none selected"
+msgstr "&Se nenhum áudio estiver selecionado, selecionar tudo"
-#: toolbars/ControlToolBar.cpp:174
+#: prefs/TracksPrefs.cpp:104
+msgid "Enable cut &lines"
+msgstr "Habilitar &linhas de corte"
+
+#: prefs/TracksPrefs.cpp:107
+msgid "Enable &dragging of left and right selection edges"
+msgstr "&Habilitar o arraste das bordas da seleção"
+
+#: prefs/TracksPrefs.cpp:110
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+msgstr "Alterar foco entre as faixas de maneira circular"
+
+#: prefs/TracksPrefs.cpp:113
+msgid "Editing a &clip can move other clips"
+msgstr "Ao editar um &clipe, mover os outros clipes relacionados"
+
+#: prefs/TracksPrefs.cpp:121
+msgid "Solo Button:"
+msgstr "Botão solo:"
+
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
+msgstr "Avisar"
+
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr "Exibir avisos e prompts"
+
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr "Ao salvar &projetos"
+
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr "Ao salvar projetos em &branco"
+
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr "Quando houver pouco espaço em &disco"
+
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr "Quando mixar faixas como &estéreo ao exportar"
+
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr "Quando mixar faixas como &mono ao exportar"
+
+#: toolbars/ControlToolBar.cpp:170
+#: toolbars/ControlToolBar.cpp:205
msgid "Pause"
msgstr "Pausar"
-#: toolbars/ControlToolBar.cpp:177
-msgid "Play"
-msgstr "Reproduzir"
-
#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
-msgstr ""
-
-#: toolbars/ControlToolBar.cpp:182
+#: toolbars/ControlToolBar.cpp:207
+#: widgets/ProgressDialog.cpp:1108
msgid "Stop"
msgstr "Parar"
-#: toolbars/ControlToolBar.cpp:185
-msgid "Skip to Start"
-msgstr "Ir para o inÃcio"
+#: toolbars/ControlToolBar.cpp:190
+#: toolbars/ControlToolBar.cpp:211
+msgid "Clean Speech"
+msgstr "Discurso Limpo"
-#: toolbars/ControlToolBar.cpp:188
-msgid "Skip to End"
-msgstr "Ir para o final"
+#: toolbars/ControlToolBar.cpp:206
+msgid "Play (Shift for Loop Play)"
+msgstr "Executar (Shift para reprodução contÃnua)"
-#: toolbars/ControlToolBar.cpp:192
+#: toolbars/ControlToolBar.cpp:210
msgid "Record (Shift for Append Record)"
-msgstr ""
+msgstr "Gravar (Shift para iniciar gravação ao final da faixa)"
-#: toolbars/ControlToolBar.cpp:194
-msgid "Clean Speech"
-msgstr "Clean Speech"
-
-#: toolbars/ControlToolBar.cpp:530
-#: toolbars/ControlToolBar.cpp:844
+#: toolbars/ControlToolBar.cpp:579
+#: toolbars/ControlToolBar.cpp:914
msgid "Error while opening sound device. "
msgstr "Erro ao abrir o dispositivo de áudio."
-#: toolbars/ControlToolBar.cpp:696
+#: toolbars/ControlToolBar.cpp:749
msgid "Recording in CleanSpeech mode is not possible when a track, or more than one project, is already open."
-msgstr "Não é possÃvel gravar no modo CleanSpeech com mais de uma faixa ou projeto abertos."
+msgstr "Não é possÃvel gravar no modo DiscursoLimpo com mais de uma faixa ou projeto abertos."
-#: toolbars/ControlToolBar.cpp:697
+#: toolbars/ControlToolBar.cpp:750
msgid "Recording not permitted"
msgstr "Gravação não permitida"
-#: toolbars/DeviceToolBar.cpp:113
-#: toolbars/DeviceToolBar.cpp:115
+#: toolbars/DeviceToolBar.cpp:109
+#: toolbars/DeviceToolBar.cpp:205
msgid "Output Device"
msgstr "Dispositivo de SaÃda"
-#: toolbars/DeviceToolBar.cpp:134
-#: toolbars/DeviceToolBar.cpp:136
+#: toolbars/DeviceToolBar.cpp:127
+#: toolbars/DeviceToolBar.cpp:206
msgid "Input Device"
msgstr "Dispositivo de Entrada"
-#: toolbars/EditToolBar.cpp:139
+#: toolbars/EditToolBar.cpp:136
msgid "Trim outside selection"
msgstr "Silenciar fora da seleção"
-#: toolbars/EditToolBar.cpp:141
+#: toolbars/EditToolBar.cpp:138
msgid "Silence selection"
msgstr "Silenciar seleção"
#: toolbars/EditToolBar.cpp:150
+#: toolbars/EditToolBar.cpp:197
msgid "Link Tracks"
-msgstr ""
+msgstr "Vincular faixas"
-#: toolbars/EditToolBar.cpp:150
+#: toolbars/EditToolBar.cpp:155
+#: toolbars/EditToolBar.cpp:198
msgid "Zoom In"
msgstr "Mais Zoom"
-#: toolbars/EditToolBar.cpp:152
+#: toolbars/EditToolBar.cpp:157
+#: toolbars/EditToolBar.cpp:199
msgid "Zoom Out"
msgstr "Menos Zoom"
-#: toolbars/EditToolBar.cpp:156
-msgid "Zoom Toggle"
-msgstr "Alterar Zoom"
-
-#: toolbars/EditToolBar.cpp:160
-msgid "Fit Selection"
-msgstr "Ajustar zoom à seleção"
-
#: toolbars/EditToolBar.cpp:160
msgid "Fit selection in window"
msgstr "Ajustar seleção à janela"
#: toolbars/EditToolBar.cpp:162
-msgid "Fit Project"
-msgstr "Ajustar zoom ao projeto"
-
-#: toolbars/EditToolBar.cpp:162
msgid "Fit project in window"
msgstr "Ajustar todo projeto à janela"
-#: toolbars/MeterToolBar.cpp:50
-msgid "Meter"
-msgstr "Medição"
+#: toolbars/EditToolBar.cpp:200
+msgid "Fit Selection"
+msgstr "Ajustar zoom à seleção"
+
+#: toolbars/EditToolBar.cpp:201
+msgid "Fit Project"
+msgstr "Ajustar zoom ao projeto"
#: toolbars/MeterToolBar.cpp:80
msgid "Play Meter"
@@ -8632,11 +9466,11 @@ msgstr "Medidor de gravação"
msgid "Meter-Record"
msgstr "Mede-Gravação"
-#: toolbars/MeterToolBar.cpp:94
+#: toolbars/MeterToolBar.cpp:123
msgid "Output level meter"
msgstr "Medidor de nÃvel de saÃda"
-#: toolbars/MeterToolBar.cpp:95
+#: toolbars/MeterToolBar.cpp:124
msgid "Input level meter - click to monitor input"
msgstr "Medidor de nÃvel de entrada - clique para monitorar"
@@ -8645,76 +9479,89 @@ msgid "Output Volume"
msgstr "Volume de saÃda"
#: toolbars/MixerToolBar.cpp:92
-#, fuzzy
msgid "Slider Output"
msgstr "Sinal-SaÃda"
#: toolbars/MixerToolBar.cpp:101
+#: widgets/Meter.cpp:862
msgid "Input Volume"
msgstr "Volume de entrada"
#: toolbars/MixerToolBar.cpp:103
-#, fuzzy
msgid "Slider Input"
msgstr "Sinal-Entrada"
-#: toolbars/MixerToolBar.cpp:134
+#: toolbars/MixerToolBar.cpp:139
msgid "Input Source"
msgstr "Fonte de entrada"
-#: toolbars/SelectionBar.cpp:80
+#: toolbars/MixerToolBar.cpp:304
+msgid "Input source information is not available."
+msgstr "Informações sobre a fonte de entrada não disponÃveis"
+
+#: toolbars/MixerToolBar.cpp:311
+msgid "Select Input Source"
+msgstr "Escolher fonte de entrada"
+
+#: toolbars/MixerToolBar.cpp:319
+msgid "Input Source:"
+msgstr "Fonte de entrada:"
+
+#: toolbars/SelectionBar.cpp:86
+#: toolbars/SelectionBar.cpp:292
msgid "Selection"
msgstr "Seleção"
-#: toolbars/SelectionBar.cpp:128
-#: toolbars/SelectionBar.cpp:185
+#: toolbars/SelectionBar.cpp:135
+#: toolbars/SelectionBar.cpp:194
msgid "Project Rate (Hz):"
msgstr "Taxa do Projeto (Hz):"
-#: toolbars/SelectionBar.cpp:142
-#: toolbars/SelectionBar.cpp:247
+#: toolbars/SelectionBar.cpp:149
+#: toolbars/SelectionBar.cpp:255
msgid "Selection Start:"
-msgstr "Inicio da Seleção:"
+msgstr "InÃcio da seleção:"
-#: toolbars/SelectionBar.cpp:155
-#: toolbars/SelectionBar.cpp:253
+#: toolbars/SelectionBar.cpp:163
+#: toolbars/SelectionBar.cpp:164
+#: toolbars/SelectionBar.cpp:261
msgid "Length"
msgstr "Tamanho"
-#: toolbars/SelectionBar.cpp:165
+#: toolbars/SelectionBar.cpp:174
msgid "hidden"
msgstr "oculto"
-#: toolbars/SelectionBar.cpp:175
-#: toolbars/SelectionBar.cpp:264
+#: toolbars/SelectionBar.cpp:184
+#: toolbars/SelectionBar.cpp:272
msgid "Audio Position:"
msgstr "Posição do áudio:"
-#: toolbars/SelectionBar.cpp:225
-#: toolbars/SelectionBar.cpp:230
+#: toolbars/SelectionBar.cpp:236
+#: toolbars/SelectionBar.cpp:241
msgid "Snap To"
msgstr "Antecipação"
-#: toolbars/SelectionBar.cpp:252
+#: toolbars/SelectionBar.cpp:260
msgid "Selection "
msgstr "Seleção"
-#: toolbars/SelectionBar.cpp:317
+#: toolbars/SelectionBar.cpp:340
msgid "Selection Length"
msgstr "Tamanho da seleção"
-#: toolbars/SelectionBar.cpp:325
+#: toolbars/SelectionBar.cpp:348
msgid "Selection End"
msgstr "Final da seleção"
# Diz assim 'barra de dispositivo do audacity' 'barra de transcrição do audacity'
-#: toolbars/ToolBar.cpp:97
+#: toolbars/ToolBar.cpp:120
#, c-format
msgid "Audacity %s ToolBar"
msgstr "Barra de %s do Audacity"
-#: toolbars/ToolDock.cpp:74
#: toolbars/ToolDock.cpp:75
+#: toolbars/ToolDock.cpp:76
msgid "ToolDock"
msgstr "Barra de ferramentas"
@@ -8746,328 +9593,285 @@ msgstr "Esquerdo= Mais Zoom, Direito=Menos Zoom, Meio=Normal"
msgid "Click and drag to move a track in time"
msgstr "Clique e arraste para mover uma faixa no tempo"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr "Ferramentas"
-
-#: toolbars/ToolsToolBar.cpp:147
-#: toolbars/ToolsToolBar.cpp:182
-msgid "Selection Tool"
-msgstr "Ferramenta de seleção"
-
-#: toolbars/ToolsToolBar.cpp:148
-msgid "Envelope Tool"
-msgstr "Ferramenta Envelope"
-
-#: toolbars/ToolsToolBar.cpp:149
-#: toolbars/ToolsToolBar.cpp:183
-msgid "Time Shift Tool"
-msgstr "Ferramenta Deslizar"
-
-#: toolbars/ToolsToolBar.cpp:150
-#: toolbars/ToolsToolBar.cpp:185
-msgid "Zoom Tool"
-msgstr "Ferramenta de Zoom"
-
-#: toolbars/ToolsToolBar.cpp:151
-#: toolbars/ToolsToolBar.cpp:184
-msgid "Draw Tool"
-msgstr "Ferramenta de desenho"
-
#: toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
-msgstr "Modo multi-ferramenta"
+msgstr "Modo Multi-Ferramenta"
-#: toolbars/ToolsToolBar.cpp:186
+#: toolbars/ToolsToolBar.cpp:190
msgid "Slide Tool"
-msgstr "Ferramenta deslizar"
-
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr "Multi ferrramenta"
-
-#: toolbars/TranscriptionToolBar.cpp:84
-msgid "Transcription"
-msgstr "Transcrição"
+msgstr "Ferramenta Deslizar"
-#: toolbars/TranscriptionToolBar.cpp:171
+#: toolbars/TranscriptionToolBar.cpp:170
msgid "Play at selected speed"
-msgstr "Executar na "
+msgstr "Tocar na velocidade selecionada"
-#: toolbars/TranscriptionToolBar.cpp:172
-msgid "Play-at-speed"
-msgstr "Executar-em-velocidade"
-
-#: toolbars/TranscriptionToolBar.cpp:178
-#: toolbars/TranscriptionToolBar.cpp:183
+#: toolbars/TranscriptionToolBar.cpp:176
+#: toolbars/TranscriptionToolBar.cpp:181
+#: toolbars/TranscriptionToolBar.cpp:263
msgid "Playback Speed"
msgstr "Velocidade de reprodução"
-#: toolbars/TranscriptionToolBar.cpp:196
+#: toolbars/TranscriptionToolBar.cpp:195
msgid "Adjust left selection to next onset"
-msgstr "Ajustar seleção esquerda ao proximo ataque silábico"
+msgstr "Ajustar seleção esquerda ao próximo ataque silábico"
#: toolbars/TranscriptionToolBar.cpp:197
-msgid "Left-to-On"
-msgstr "Esquerda-para-entrada"
-
-#: toolbars/TranscriptionToolBar.cpp:199
msgid "Adjust right selection to previous offset"
msgstr "Ajustar seleção direita à coda silábica anterior"
-#: toolbars/TranscriptionToolBar.cpp:200
-msgid "Right-to-Off"
-msgstr "Direita-para-saÃda"
-
-#: toolbars/TranscriptionToolBar.cpp:202
+#: toolbars/TranscriptionToolBar.cpp:199
msgid "Adjust left selection to next offset"
-msgstr "Ajustar seleção esquerda à proxima coda"
-
-#: toolbars/TranscriptionToolBar.cpp:203
-msgid "Left-to-Off"
-msgstr "Esquerda-para-saÃda"
+msgstr "Ajustar seleção esquerda à próxima coda"
-#: toolbars/TranscriptionToolBar.cpp:205
+#: toolbars/TranscriptionToolBar.cpp:201
msgid "Adjust right selection to previous onset"
msgstr "Ajustar seleção direita ao ataque anterior"
-#: toolbars/TranscriptionToolBar.cpp:206
-msgid "Right-to-On"
-msgstr "Direita-para-entrada"
-
-#: toolbars/TranscriptionToolBar.cpp:208
+#: toolbars/TranscriptionToolBar.cpp:203
msgid "Select region of sound around cursor"
msgstr "Selecionar área em torno do cursor"
-#: toolbars/TranscriptionToolBar.cpp:209
-msgid "Select-Sound"
-msgstr "Selecionar som"
-
-#: toolbars/TranscriptionToolBar.cpp:211
+#: toolbars/TranscriptionToolBar.cpp:205
msgid "Select region of silence around cursor"
msgstr "Selecionar área de silêncio em torno do cursor"
-#: toolbars/TranscriptionToolBar.cpp:212
-msgid "Select-Silence"
-msgstr "Selecionar silêncio"
-
-#: toolbars/TranscriptionToolBar.cpp:214
+#: toolbars/TranscriptionToolBar.cpp:207
msgid "Automatically make labels from words"
msgstr "Automaticamente criar tÃtulos das palavras"
-#: toolbars/TranscriptionToolBar.cpp:215
-msgid "Make Labels"
-msgstr "Criar tÃtulos"
-
-#: toolbars/TranscriptionToolBar.cpp:217
+#: toolbars/TranscriptionToolBar.cpp:209
msgid "Add label at selection"
msgstr "Adicionar tÃtulo à seleção"
-#: toolbars/TranscriptionToolBar.cpp:218
-msgid "Add Label"
-msgstr "Adiiconar tÃtulo"
-
-#: toolbars/TranscriptionToolBar.cpp:220
+#: toolbars/TranscriptionToolBar.cpp:211
msgid "Calibrate voicekey"
msgstr "Calibrar voicekey"
-#: toolbars/TranscriptionToolBar.cpp:221
-msgid "Calibrate"
-msgstr "Calibrar"
-
-#: toolbars/TranscriptionToolBar.cpp:225
+#: toolbars/TranscriptionToolBar.cpp:215
msgid "Adjust Sensitivity"
-msgstr "Ajustar sensibilidade"
+msgstr "Ajustar Sensibilidade"
-#: toolbars/TranscriptionToolBar.cpp:230
+#: toolbars/TranscriptionToolBar.cpp:220
+#: toolbars/TranscriptionToolBar.cpp:276
msgid "Sensitivity"
msgstr "Sensibilidade"
-#: toolbars/TranscriptionToolBar.cpp:235
+#: toolbars/TranscriptionToolBar.cpp:225
msgid "Energy"
msgstr "Energia"
-#: toolbars/TranscriptionToolBar.cpp:236
+#: toolbars/TranscriptionToolBar.cpp:226
msgid "Sign Changes (Low Threshold)"
msgstr "Alterações de sinal (limiar baixo)"
-#: toolbars/TranscriptionToolBar.cpp:237
+#: toolbars/TranscriptionToolBar.cpp:227
msgid "Sign Changes (High Threshold)"
msgstr "Alterações de sinal (limiar elevado)"
-#: toolbars/TranscriptionToolBar.cpp:238
+#: toolbars/TranscriptionToolBar.cpp:228
msgid "Direction Changes (Low Threshold)"
msgstr "Alterações de direção (limiar baixo)"
-#: toolbars/TranscriptionToolBar.cpp:239
+#: toolbars/TranscriptionToolBar.cpp:229
msgid "Direction Changes (High Threshold)"
msgstr "Alterações de direção (limiar elevado)"
-#: toolbars/TranscriptionToolBar.cpp:247
+#: toolbars/TranscriptionToolBar.cpp:237
+#: toolbars/TranscriptionToolBar.cpp:277
msgid "Key type"
msgstr "Tipo de tecla"
-#: widgets/AButton.cpp:302
+#: toolbars/TranscriptionToolBar.cpp:262
+msgid "Play-at-speed"
+msgstr "Executar-em-velocidade"
+
+#: toolbars/TranscriptionToolBar.cpp:266
+msgid "Left-to-On"
+msgstr "Esquerda-para-entrada"
+
+#: toolbars/TranscriptionToolBar.cpp:267
+msgid "Right-to-Off"
+msgstr "Direita-para-SaÃda"
+
+#: toolbars/TranscriptionToolBar.cpp:268
+msgid "Left-to-Off"
+msgstr "Esquerda-para-SaÃda"
+
+#: toolbars/TranscriptionToolBar.cpp:269
+msgid "Right-to-On"
+msgstr "Direita-para-Entrada"
+
+#: toolbars/TranscriptionToolBar.cpp:270
+msgid "Select-Sound"
+msgstr "Selecionar-Som"
+
+#: toolbars/TranscriptionToolBar.cpp:271
+msgid "Select-Silence"
+msgstr "Selecionar-Silêncio"
+
+#: toolbars/TranscriptionToolBar.cpp:272
+msgid "Make Labels"
+msgstr "Criar etiquetas"
+
+#: toolbars/TranscriptionToolBar.cpp:273
+msgid "Add Label"
+msgstr "Adicionar Etiqueta"
+
+#: toolbars/TranscriptionToolBar.cpp:274
+msgid "Calibrate"
+msgstr "Calibrar"
+
+#: widgets/AButton.cpp:300
msgid " (disabled)"
msgstr " (desabilitado)"
-#: widgets/AButton.cpp:452
+#: widgets/AButton.cpp:458
msgid "Press"
msgstr "Pressione"
-#: widgets/AButton.cpp:531
+#: widgets/AButton.cpp:537
msgid "Button"
msgstr "Botão"
#. i18n-hint: One-letter abbreviation for Left, in VU Meter
#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
-#: widgets/ASlider.cpp:604
-#: widgets/Meter.cpp:212
+#: widgets/ASlider.cpp:642
+#: widgets/Meter.cpp:241
msgid "L"
msgstr "E"
#. i18n-hint: One-letter abbreviation for Right, in VU Meter
#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
-#: widgets/ASlider.cpp:607
-#: widgets/Meter.cpp:214
+#: widgets/ASlider.cpp:645
+#: widgets/Meter.cpp:243
msgid "R"
msgstr "D"
-#: widgets/ASlider.cpp:670
+#: widgets/ASlider.cpp:708
msgid "Center"
msgstr "Centro"
-#: widgets/ASlider.cpp:674
+#: widgets/ASlider.cpp:712
msgid "Left"
msgstr "Esquerdo"
-#: widgets/ASlider.cpp:677
+#: widgets/ASlider.cpp:715
msgid "Right"
msgstr "Direito"
-#: widgets/ErrorDialog.cpp:78
-#: widgets/ErrorDialog.cpp:102
+#: widgets/ErrorDialog.cpp:96
msgid "Help"
msgstr "Ajuda"
-#: widgets/ErrorDialog.cpp:137
+#: widgets/ErrorDialog.cpp:166
msgid "<"
msgstr "<"
-#: widgets/ErrorDialog.cpp:138
+#: widgets/ErrorDialog.cpp:167
msgid ">"
msgstr ">"
-#: widgets/ErrorDialog.cpp:142
+#: widgets/ErrorDialog.cpp:171
msgid "Forwards"
msgstr "Avançar"
-#: widgets/ErrorDialog.cpp:143
+#: widgets/ErrorDialog.cpp:172
msgid "Backwards"
msgstr "Voltar"
-#: widgets/ErrorDialog.cpp:249
+#: widgets/ErrorDialog.cpp:275
msgid "Help on the Internet"
msgstr "Ajuda na Internet"
#: widgets/Grabber.cpp:62
msgid "Grabber"
-msgstr "Grabber"
+msgstr "Pegador"
-#: widgets/Grid.cpp:643
-#, c-format
-msgid "%d rows, %d columns"
-msgstr "%d linhas, %d colunas"
-
-#: widgets/Grid.cpp:649
-#: widgets/Grid.cpp:776
-#, c-format
-msgid "Row %d"
-msgstr "Linha %d"
-
-#: widgets/Grid.cpp:791
+#: widgets/Grid.cpp:723
msgid "Empty"
msgstr "Vazio"
-#: widgets/Meter.cpp:359
+#: widgets/Meter.cpp:385
msgid "Enable Meter"
msgstr "Habilitar medidor"
-#: widgets/Meter.cpp:361
+#: widgets/Meter.cpp:387
msgid "Disable Meter"
msgstr "Desabilitar medidor"
-#: widgets/Meter.cpp:364
+#: widgets/Meter.cpp:390
msgid "Stop Monitoring"
msgstr "Parar monitoramento"
-#: widgets/Meter.cpp:366
+#: widgets/Meter.cpp:392
msgid "Start Monitoring"
msgstr "Iniciar monitoramento"
-#: widgets/Meter.cpp:370
+#: widgets/Meter.cpp:396
msgid "Horizontal Stereo"
-msgstr "Estéreo - horizontal"
+msgstr "Estéreo horizontal"
-#: widgets/Meter.cpp:371
+#: widgets/Meter.cpp:397
msgid "Vertical Stereo"
-msgstr "Estéreo - vertical"
+msgstr "Estéreo vertical"
-#: widgets/Meter.cpp:388
+#: widgets/Meter.cpp:414
msgid "Preferences..."
msgstr "Preferências..."
-#: widgets/Meter.cpp:876
+#: widgets/Meter.cpp:864
msgid "Mix Volume"
-msgstr ""
+msgstr "Volume da mixagem"
-#: widgets/Meter.cpp:1078
-msgid "This determines how often the meter is refreshed.\n"
+#: widgets/Meter.cpp:1133
+msgid ""
+"This determines how often the meter is refreshed.\n"
"If you have a slower PC you may want to select a\n"
"lower refresh rate (30 per second or lower), so that\n"
"audio qualtiy is not affected by the meter display."
-msgstr "Determina a freqüência com que o medidor de som é alterado.\n"
+msgstr ""
+"Determina a frequência com que o medidor de som é alterado.\n"
"Se você estiver em um PC mais lento, pode ser necessário \n"
-"diminuir esta freqüência (30 vezes por segundo ou menos),\n"
+"diminuir esta frequência (30 vezes por segundo ou menos),\n"
"para que o áudio não seja afetado pela exibição do medidor."
-#: widgets/Meter.cpp:1079
+#: widgets/Meter.cpp:1134
msgid "Meter refresh rate per second [1-100]: "
msgstr "Renovação do medidor, em vezes por segundo [1-100]:"
-#: widgets/Meter.cpp:1080
+#: widgets/Meter.cpp:1135
msgid "Meter Preferences"
msgstr "Preferências do Medidor"
#: widgets/MultiDialog.cpp:82
msgid " Please select an action "
-msgstr "Por favor, selecione uma ação"
+msgstr " Por favor, selecione uma ação"
#: widgets/MultiDialog.cpp:86
msgid "Please select an action"
-msgstr ""
+msgstr "Por favor, selecione uma ação"
-#: widgets/ProgressDialog.cpp:97
+#: widgets/ProgressDialog.cpp:1067
msgid "Elapsed Time:"
-msgstr ""
+msgstr "Tempo decorrido:"
-#: widgets/ProgressDialog.cpp:117
+#: widgets/ProgressDialog.cpp:1087
msgid "Remaining Time:"
-msgstr ""
+msgstr "Tempo restante:"
-#: widgets/ProgressDialog.cpp:134
+#: widgets/ProgressDialog.cpp:1115
msgid "Cancel"
-msgstr ""
+msgstr "Cancelar"
-#: widgets/Ruler.cpp:1478
-#: widgets/Ruler.cpp:1479
+#: widgets/Ruler.cpp:1588
+#: widgets/Ruler.cpp:1589
msgid "Vertical Ruler"
msgstr "Régua Vertical"
#. i18n-hint: Format string for displaying time in seconds. Change the comma
#. * in the middle to the 1000s separator for your locale, and the 'seconds'
#. * on the end to the word for seconds. Don't change the numbers.
-#: widgets/TimeTextCtrl.cpp:267
+#: widgets/TimeTextCtrl.cpp:269
msgid "01000,01000 seconds"
msgstr "01000,01000 segundos"
@@ -9076,13 +9880,13 @@ msgstr "01000,01000 segundos"
#. * abbreviation for minutes and 's' to the abbreviation for seconds. Don't
#. * change the numbers unless there aren't 60 seconds in a minute in your
#. * locale
-#: widgets/TimeTextCtrl.cpp:276
+#: widgets/TimeTextCtrl.cpp:278
msgid "0100 h 060 m 060 s"
msgstr "0100 h 060 m 060 s"
#. i18n-hint: Name of time display format that shows time in days, hours,
#. * minutes and seconds
-#: widgets/TimeTextCtrl.cpp:279
+#: widgets/TimeTextCtrl.cpp:281
msgid "dd:hh:mm:ss"
msgstr "dd:hh:mm:ss"
@@ -9091,43 +9895,43 @@ msgstr "dd:hh:mm:ss"
#. * for hours, 'm' to the abbreviation for minutes and 's' to the
#. * abbreviation for seconds. Don't change the numbers unless there aren't
#. * 24 hours in a day in your locale
-#: widgets/TimeTextCtrl.cpp:285
+#: widgets/TimeTextCtrl.cpp:287
msgid "0100 days 024 h 060 m 060 s"
msgstr "0100 dias 024 h 060 m 060 s"
#. i18n-hint: Name of time display format that shows time in hours,
-#. * minutes, seconds and hundreths of a second (1/100 second)
-#: widgets/TimeTextCtrl.cpp:288
+#. * minutes, seconds and hundredths of a second (1/100 second)
+#: widgets/TimeTextCtrl.cpp:290
msgid "hh:mm:ss + hundredths"
-msgstr ""
+msgstr "hh:mm:ss + centésimos"
#. i18n-hint: Format string for displaying time in hours, minutes, seconds
#. * and hundredths of a second. Change the 'h' to the abbreviation for hours,
#. * 'm' to the abbreviation for minutes and 's' to the abbreviation for seconds (the
#. * hundredths are shown as decimal seconds) . Don't change the numbers
#. * unless there aren't 60 minutes in an hour in your locale
-#: widgets/TimeTextCtrl.cpp:294
+#: widgets/TimeTextCtrl.cpp:296
msgid "0100 h 060 m 060.0100 s"
-msgstr ""
+msgstr "0100 h 060 m 060.0100 s"
#. i18n-hint: Name of time display format that shows time in hours,
#. * minutes, seconds and milliseconds (1/1000 second)
-#: widgets/TimeTextCtrl.cpp:288
+#: widgets/TimeTextCtrl.cpp:299
msgid "hh:mm:ss + milliseconds"
-msgstr "hh:mm:ss + millisegundos"
+msgstr "hh:mm:ss + milissegundos"
#. i18n-hint: Format string for displaying time in hours, minutes, seconds
#. * and milliseconds. Change the 'h' to the abbreviation for hours, 'm' to the
#. * abbreviation for minutes and 's' to the abbreviation for seconds (the
#. * milliseconds are shown as decimal seconds) . Don't change the numbers
#. * unless there aren't 60 minutes in an hour in your locale
-#: widgets/TimeTextCtrl.cpp:294
+#: widgets/TimeTextCtrl.cpp:305
msgid "0100 h 060 m 060.01000 s"
msgstr "0100 h 060 m 060.01000 s"
#. i18n-hint: Name of time display format that shows time in hours,
#. * minutes, seconds and samples (at the current project sample rate)
-#: widgets/TimeTextCtrl.cpp:297
+#: widgets/TimeTextCtrl.cpp:308
msgid "hh:mm:ss + samples"
msgstr "hh:mm:ss + amostras"
@@ -9136,13 +9940,13 @@ msgstr "hh:mm:ss + amostras"
#. * abbreviation for minutes, 's' to the abbreviation for seconds and
#. * translate samples . Don't change the numbers
#. * unless there aren't 60 seconds in a minute in your locale
-#: widgets/TimeTextCtrl.cpp:303
+#: widgets/TimeTextCtrl.cpp:314
msgid "0100 h 060 m 060 s+.# samples"
msgstr "0100 h 060 m 060 s+.# amostras"
#. i18n-hint: Name of time display format that shows time in samples (at the
#. * current project sample rate)
-#: widgets/TimeTextCtrl.cpp:306
+#: widgets/TimeTextCtrl.cpp:317
msgid "samples"
msgstr "amostras"
@@ -9150,13 +9954,13 @@ msgstr "amostras"
#. * Change the ',' to the 1000s separator for your locale, and translate
#. * samples. If 1000s aren't a base multiple for your number system, then you
#. * can change the numbers to an appropriate one, and put a 0 on the front
-#: widgets/TimeTextCtrl.cpp:311
+#: widgets/TimeTextCtrl.cpp:322
msgid "01000,01000,01000 samples|#"
msgstr "01000,01000,01000 amostras|#"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
#. * seconds and frames at 24 frames per second (commonly used for films)
-#: widgets/TimeTextCtrl.cpp:314
+#: widgets/TimeTextCtrl.cpp:325
msgid "hh:mm:ss + film frames (24 fps)"
msgstr "hh:mm:ss + quadros de filme (24 fps)"
@@ -9165,26 +9969,26 @@ msgstr "hh:mm:ss + quadros de filme (24 fps)"
#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
#. * for seconds and translate 'frames' . Don't change the numbers
#. * unless there aren't 60 seconds in a minute in your locale
-#: widgets/TimeTextCtrl.cpp:320
+#: widgets/TimeTextCtrl.cpp:331
msgid "0100 h 060 m 060 s+.24 frames"
msgstr "0100 h 060 m 060 s+.24 quadros"
#. i18n-hint: Name of time display format that shows time in frames (lots of
#. * frames) at 24 frames per second (commonly used for films)
-#: widgets/TimeTextCtrl.cpp:323
+#: widgets/TimeTextCtrl.cpp:334
msgid "film frames (24 fps)"
msgstr "quadros de filme (24 fps)"
#. i18n-hint: Format string for displaying time in frames at 24 frames per
#. * second. Translate 'frames' and leave the rest alone
-#: widgets/TimeTextCtrl.cpp:326
+#: widgets/TimeTextCtrl.cpp:337
msgid "01000,01000 frames|24"
msgstr "01000,01000 quadros|24"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
#. * seconds and frames at NTSC TV drop-frame rate (used for American /
-#. * Japananese TV, and very odd)
-#: widgets/TimeTextCtrl.cpp:330
+#. * Japanese TV, and very odd)
+#: widgets/TimeTextCtrl.cpp:341
msgid "hh:mm:ss + NTSC drop frames"
msgstr "hh:mm:ss + quadros NTSC drop"
@@ -9192,14 +9996,14 @@ msgstr "hh:mm:ss + quadros NTSC drop"
#. * and frames with NTSC drop frames. Change the 'h' to the abbreviation
#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
#. * for seconds and translate 'frames'. Leave the |N alone, it's important!
-#: widgets/TimeTextCtrl.cpp:335
+#: widgets/TimeTextCtrl.cpp:346
msgid "0100 h 060 m 060 s+.30 frames|N"
msgstr "0100 h 060 m 060 s+.30 quadros|N"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
#. * seconds and frames at NTSC TV non-drop-frame rate (used for American /
-#. * Japananese TV, and doesn't quite match wall time
-#: widgets/TimeTextCtrl.cpp:339
+#. * Japanese TV, and doesn't quite match wall time
+#: widgets/TimeTextCtrl.cpp:350
msgid "hh:mm:ss + NTSC non-drop frames"
msgstr "hh:mm:ss + quadros NTSC non-drop"
@@ -9208,26 +10012,26 @@ msgstr "hh:mm:ss + quadros NTSC non-drop"
#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
#. * for seconds and translate 'frames'. Leave the | .999000999 alone,
#. * the whole things really is slightly off-speed!
-#: widgets/TimeTextCtrl.cpp:345
+#: widgets/TimeTextCtrl.cpp:356
msgid "0100 h 060 m 060 s+.030 frames| .999000999"
msgstr "0100 h 060 m 060 s+.030 quadros| .999000999"
#. i18n-hint: Name of time display format that shows time in frames at NTSC
-#. * TV frame rate (used for American / Japananese TV
-#: widgets/TimeTextCtrl.cpp:348
+#. * TV frame rate (used for American / Japanese TV
+#: widgets/TimeTextCtrl.cpp:359
msgid "NTSC frames"
msgstr "quadros NTSC"
#. i18n-hint: Format string for displaying time in frames with NTSC frames.
#. * Translate 'frames' and leave the rest alone. That really is the frame
#. * rate!
-#: widgets/TimeTextCtrl.cpp:352
+#: widgets/TimeTextCtrl.cpp:363
msgid "01000,01000 frames|29.97002997"
msgstr "01000,01000 quadros|29.97002997"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
#. * seconds and frames at PAL TV frame rate (used for European TV)
-#: widgets/TimeTextCtrl.cpp:355
+#: widgets/TimeTextCtrl.cpp:366
msgid "hh:mm:ss + PAL frames (25 fps)"
msgstr "hh:mm:ss + quadros PAL (25 fps)"
@@ -9235,57 +10039,53 @@ msgstr "hh:mm:ss + quadros PAL (25 fps)"
#. * and frames with PAL TV frames. Change the 'h' to the abbreviation
#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
#. * for seconds and translate 'frames'. Nice simple time code!
-#: widgets/TimeTextCtrl.cpp:360
+#: widgets/TimeTextCtrl.cpp:371
msgid "0100 h 060 m 060 s+.25 frames"
msgstr "0100 h 060 m 060 s+.25 quadros"
#. i18n-hint: Name of time display format that shows time in frames at PAL
#. * TV frame rate (used for European TV
-#: widgets/TimeTextCtrl.cpp:363
+#: widgets/TimeTextCtrl.cpp:374
msgid "PAL frames (25 fps)"
msgstr "quadros PAL (25 fps)"
#. i18n-hint: Format string for displaying time in frames with NTSC frames.
#. * Translate 'frames' and leave the rest alone.
-#: widgets/TimeTextCtrl.cpp:366
+#: widgets/TimeTextCtrl.cpp:377
msgid "01000,01000 frames|25"
msgstr "01000,01000 quadros|25"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
#. * seconds and frames at CD Audio frame rate (75 frames per second)
-#: widgets/TimeTextCtrl.cpp:369
+#: widgets/TimeTextCtrl.cpp:380
msgid "hh:mm:ss + CDDA frames (75 fps)"
-msgstr "hh:mm:ss + quadrso CDDA (75 fps)"
+msgstr "hh:mm:ss + quadros CDDA (75 fps)"
#. i18n-hint: Format string for displaying time in hours, minutes, seconds
#. * and frames with CD Audio frames. Change the 'h' to the abbreviation
#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
#. * for seconds and translate 'frames'.
-#: widgets/TimeTextCtrl.cpp:374
+#: widgets/TimeTextCtrl.cpp:385
msgid "0100 h 060 m 060 s+.75 frames"
msgstr "0100 h 060 m 060 s+.75 quadros"
#. i18n-hint: Name of time display format that shows time in frames at CD
#. * Audio frame rate (75 frames per second)
-#: widgets/TimeTextCtrl.cpp:377
+#: widgets/TimeTextCtrl.cpp:388
msgid "CDDA frames (75 fps)"
msgstr "quadros CDDA (75 fps)"
#. i18n-hint: Format string for displaying time in frames with CD Audio
#. * frames. Translate 'frames' and leave the rest alone
-#: widgets/TimeTextCtrl.cpp:380
+#: widgets/TimeTextCtrl.cpp:391
msgid "01000,01000 frames|75"
msgstr "01000,01000 quadros|75"
-#: widgets/TimeTextCtrl.cpp:451
+#: widgets/TimeTextCtrl.cpp:470
msgid "Use right mouse button or context key to change format"
msgstr "Use o botão direito do mouse ou a tecla de contexto para alterar o formato"
-#: widgets/TimeTextCtrl.cpp:1485
-msgid "Time Control"
-msgstr "Controle de tempo"
-
-#: widgets/Warning.cpp:64
+#: widgets/Warning.cpp:61
msgid "Don't show this warning again"
msgstr "Não exibir este aviso novamente"
@@ -9297,10 +10097,221 @@ msgstr "Não foi possÃvel abrir o arquivo: \"%s\""
#: xml/XMLFileReader.cpp:63
#, c-format
msgid "Error: %hs at line %lu"
-msgstr ""
+msgstr "Erro %hs na linha %lu"
#: xml/XMLFileReader.cpp:79
#, c-format
msgid "Could not load file: \"%s\""
msgstr "Não foi possÃvel carregar o arquivo: \"%s\""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr "Erro ao apagar arquivo"
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr "Erro ao fechar arquivo"
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr "Erro na gravação do arquivo"
+
+#~ msgid "&Preferences...\tCtrl+,"
+#~ msgstr "&Preferências...\tCtrl+,"
+#~ msgid "&New\tCtrl+N"
+#~ msgstr "&Novo\tCtrl+N"
+#~ msgid "&Open...\tCtrl+O"
+#~ msgstr "&Abrir...\tCtrl+O"
+#~ msgid "&Close\tCtrl+W"
+#~ msgstr "&Fechar\tCtrl+W"
+#~ msgid "&Audio...\tCtrl+Shift+I"
+#~ msgstr "Ãu&dio...\tCtrl+Shift+I"
+#~ msgid "CleanSpeech C&hain..."
+#~ msgstr "Cadeias do Clean Speec&h..."
+#~ msgid "E&xit\tCtrl+Q"
+#~ msgstr "Sai&r\tCtrl+Q"
+#~ msgid "&Undo\tCtrl+Z"
+#~ msgstr "Des&fazer\tCtrl+Z"
+#~ msgid "Cu&t\tCtrl+X"
+#~ msgstr "Rec&ortar\tCtrl+X"
+#~ msgid "Spl&it Cut\tCtrl+Alt+X"
+#~ msgstr "&Separar e Recortar\tCtrl+Alt+X"
+#~ msgid "&Copy\tCtrl+C"
+#~ msgstr "&Copiar\tCtrl+C"
+#~ msgid "&Paste\tCtrl+V"
+#~ msgstr "Co&lar\tCtrl+V"
+#~ msgid "Tri&m\tCtrl+T"
+#~ msgstr "S&ilenciar fora da Seleção\tCtrl+T"
+#~ msgid "&Delete\tCtrl+K"
+#~ msgstr "&Apagar\tCtrl+K"
+#~ msgid "Split D&elete\tCtrl+Alt+K"
+#~ msgstr "S&eparar e Deletar\tCtrl+Alt+K"
+#~ msgid "Sp&lit\tCtrl+I"
+#~ msgstr "Se¶r\tCtrl+I"
+#~ msgid "Split Ne&w\tCtrl+Alt+I"
+#~ msgstr "Separar e criar no&vo\tCtrl+Alt+I"
+#~ msgid "&Join\tCtrl+J"
+#~ msgstr "&Unir\tCtrl+J"
+#~ msgid "Duplic&ate\tCtrl+D"
+#~ msgstr "&Duplicar\tCtrl+D"
+#~ msgid "&Cut\tAlt+X"
+#~ msgstr "Re&cortar\tAlt+X"
+#~ msgid "&Split Cut\tShift+Alt+X"
+#~ msgstr "Separar e Rec&ortar\tShift+Alt+X"
+#~ msgid "Co&py\tShift+Alt+C"
+#~ msgstr "Co&piar\tShift+Alt+C"
+#~ msgid "&Delete\tAlt+K"
+#~ msgstr "&Apagar\tAlt+K"
+#~ msgid "Sp&lit Delete\tShift+Alt+K"
+#~ msgstr "Separar e Apa&gar\tShift+Alt+K"
+#~ msgid "Sile&nce\tAlt+L"
+#~ msgstr "Sile&nciar\tAlt+L"
+#~ msgid "Spli&t\tAlt+I"
+#~ msgstr "Se¶r\tAlt+I"
+#~ msgid "&Join\tAlt+J"
+#~ msgstr "&Unir\tAlt+J"
+#~ msgid "Detac&h at Silences\tShift+Alt+J"
+#~ msgstr "Desu&nir nos silêncios\tShift+Alt+J"
+#~ msgid "&All\tCtrl+A"
+#~ msgstr "Selecionar &Tudo\tCtrl+A"
+#~ msgid "&None\tCtrl+Shift+A"
+#~ msgstr "&Nenhum\tCtrl+Shift+A"
+#~ msgid "Turn Snap-To On"
+#~ msgstr "Ligar antecipação"
+#~ msgid "Turn Snap-To Off"
+#~ msgstr "Desligar antecipação"
+#~ msgid "Turn Grid Snap On"
+#~ msgstr "Ligar rede da antecipação"
+#~ msgid "Turn Grid Snap Off"
+#~ msgstr "Desligar rede da antecipação"
+#~ msgid "Pre&ferences...\tCtrl+,"
+#~ msgstr "&Preferências...\tCtrl+,"
+#~ msgid "Pre&ferences...\tCtrl+P"
+#~ msgstr "&Preferências...\tCtrl+P"
+#~ msgid "Zoom &In\tCtrl+1"
+#~ msgstr "&Mais zoom\tCtrl+1"
+#~ msgid "Zoom &Out\tCtrl+3"
+#~ msgstr "Men&os zoom\tCtrl+3"
+#~ msgid "Play\tSpace"
+#~ msgstr "Reproduzir\tBarra de Espaço"
+#~ msgid "&Pause\tP"
+#~ msgstr "&Pausar\tP"
+#~ msgid "&Stop\tSpace"
+#~ msgstr "P&arar\tBarra de Espaço"
+#~ msgid "Skip to Start\tHome"
+#~ msgstr "Ir para o inÃcio\tHome"
+#~ msgid "Skip to End\tEnd"
+#~ msgstr "Ir para o final\tEnd"
+#~ msgid "&Record\tR"
+#~ msgstr "Grava&r\tR"
+#~ msgid "&Audio Track\tCtrl+Shift+N"
+#~ msgstr "Faix&a de Ãudio\tCtrl+Shift+N"
+#~ msgid "&UnMute All Tracks\tCtrl+Shift+U"
+#~ msgstr "&Desemudecer todas as faixas\tCtrl+Shift+U"
+#~ msgid "Add &Label At Selection\tCtrl+B"
+#~ msgstr "Adicionar &tÃtulo à seleção\tCtrl+B"
+#~ msgid "&Index..."
+#~ msgstr "Ãnd&ice da Ajuda..."
+#~ msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
+#~ msgstr ""
+#~ "Alternar entre o Dock, Visualização de Faixas e Barra de Seleção\tCtrl"
+#~ "+Shift+F6"
+#~ msgid "Selection Tool\tF1"
+#~ msgstr "Ferramenta de seleção\tF1"
+#~ msgid "Envelope Tool\tF2"
+#~ msgstr "Ferramenta Envelope\tF2"
+#~ msgid "Draw Tool\tF3"
+#~ msgstr "Ferramenta de desenho\tF3"
+#~ msgid "Zoom Tool\tF4"
+#~ msgstr "Ferramenta de Zoom\tF4"
+#~ msgid "Time Shift Tool\tF5"
+#~ msgstr "Ferramenta Deslizar\tF5"
+#~ msgid "Multi Tool\tF6"
+#~ msgstr "Multi-ferramenta\tF6"
+#~ msgid "Stop\tS"
+#~ msgstr "Parar\tS"
+#~ msgid "Pause\tP"
+#~ msgstr "Pausar\tP"
+#~ msgid "Record\tR"
+#~ msgstr "Gravar\tR"
+#~ msgid "Record Append\tShift+R"
+#~ msgstr "Gravar ao final\tShift+R"
+#~ msgid "Play Looped\tL"
+#~ msgstr "Reproduzir continuamente\tL"
+#~ msgid "Play Looped\tShift+Space"
+#~ msgstr "Reprodução contÃnua\tShift+Barra de Espaço"
+#~ msgid "Selection to Start\tShift+Home"
+#~ msgstr "Seleção desde o inÃcio\tShift+Home"
+#~ msgid "Selection to End\tShift+End"
+#~ msgstr "Selecionar do cursor para o fim\tShift+End"
+#~ msgid "DeleteKey\tBackspace"
+#~ msgstr "Apagar\tBackspace"
+#~ msgid "DeleteKey2\tDelete"
+#~ msgstr "Apagar\tDelete"
+#~ msgid "Seek left long period during playback\tShift+Left"
+#~ msgstr "Alterar posição do cursor mais à esquerda\tShift+Seta para Esquerda"
+#~ msgid "Seek right long period during playback\tShift+Right"
+#~ msgstr "Alterar posição do cursor mais à direita\tShift+Seta para Direita"
+#~ msgid "Move Focus to Previous and Change Selection\tShift+Up"
+#~ msgstr ""
+#~ "Mover foco para a faixa anterior e alterar seleção\tShift+Seta para Cima"
+#~ msgid "Toggle Focused Track\tNUMPAD_ENTER"
+#~ msgstr "Alterar foco sobre a faixa\tEnter do teclado numérico"
+#~ msgid "Toggle Focused Track\tCtrl+Space"
+#~ msgstr "Alterar foco sobre a faixa\tCtrl+Barra de espaços"
+#~ msgid "Selection Contract Right\tCtrl+Shift+Left"
+#~ msgstr "Contarir seleção à direita\tCtrl+Shift+Seta Esq."
+#~ msgid "Repeat %s\tCtrl+R"
+#~ msgstr "Repetir %s\tCtrl+R"
+#~ msgid "&Mix and Render"
+#~ msgstr "&Mixar"
+#~ msgid "Tag Name"
+#~ msgstr "Nome da Tag"
+#~ msgid "Soloed track"
+#~ msgstr "&Organizar faixas por"
+#~ msgid "Muted track"
+#~ msgstr "Nota de faixa"
+#~ msgid "Disallowed for some reason. Try selecting some audio first?"
+#~ msgstr ""
+#~ "Desabilitado. Experimente selecionar um trecho de áudio antes de executar "
+#~ "o comando."
+#~ msgid "Hello.\n"
+#~ msgstr "Ola.\n"
+#~ msgid "WCAG2 Audio Contrast Analyzer"
+#~ msgstr "Analizador de Contraste de Ãudio WCAG2 "
+#~ msgid "Note: The 'OK' button resets time values."
+#~ msgstr "Nota: O botão 'OK' reajusta os valores de tempo."
+#~ msgid "Contrast...\tCtrl+Shift+T"
+#~ msgstr "Contraste...\tCtrl+Shift+T"
+#~ msgid ""
+#~ "Sorry, VST Effects cannot be performed on stereo tracks where the "
+#~ "individual channels of the track do not match."
+#~ msgstr ""
+#~ "Desculpe, os efeitos VST não podem ser executados em faixas estéreo onde "
+#~ "cada canal tem um conteúdo diferente do outro."
+#~ msgid "Can't process replacing"
+#~ msgstr "ImpossÃvel processar"
+#~ msgid "VST Plug-in parameters:"
+#~ msgstr "Parâmetros do plug-in VST:"
+#~ msgid "Audio I/O"
+#~ msgstr "Dispositivos"
+#~ msgid "Portaudio v"
+#~ msgstr "Portaudio v"
+#~ msgid "&Software Playthrough: Play new track while recording it"
+#~ msgstr "Reprodução simultânea via &software"
+#~ msgid "Show / Hide"
+#~ msgstr "Exibir / Ocultar"
+#~ msgid "Show prompt to sa&ve, even if project is empty"
+#~ msgstr "&Pedir para salvar mesmo em projetos em branco"
+#~ msgid "Display range minimum: meters and 'Waveform (dB)'"
+#~ msgstr ""
+#~ "Extensão mÃnima para a visualização dos medidores e 'Formato de onda' (dB)"
+#~ msgid "Other interface choices"
+#~ msgstr "Outras opções da interface"
+#~ msgid "Conversion"
+#~ msgstr "Conversão"
+#~ msgid "Real-time:"
+#~ msgstr "Em tempo-real:"
+#~ msgid "High-quality:"
+#~ msgstr "De alta-qualidade:"
+
diff --git a/locale/ro.po b/locale/ro.po
index eeb74c3..aff4804 100644
--- a/locale/ro.po
+++ b/locale/ro.po
@@ -26,16 +26,15 @@ msgid "Audacity is a free program written by a team of volunteer <a href=\"http:
msgstr ""
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#. i18n-hint: The translation of "translator_credits" will appear
-#: ../src/AboutDialog.cpp:127
-#: ../src/AboutDialog.cpp:129
+#: ../src/AboutDialog.cpp:127 ../src/AboutDialog.cpp:129
msgid "translator_credits"
msgstr "creditele translatorilor"
@@ -78,7 +77,7 @@ msgid "Special thanks:"
msgstr "Mulţumiri speciale:"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
msgstr ""
#: AboutDialog.cpp:320
@@ -189,18 +188,13 @@ msgstr ""
msgid "GPL License"
msgstr ""
-#: ../src/AudacityApp.cpp:304
-#: ../src/Project.cpp:1770
+#: ../src/AudacityApp.cpp:304 ../src/Project.cpp:1770
#, c-format
msgid "%s is already open in another window."
msgstr "%s este deschis în altÄ fereastrÄ."
-#: ../src/AudacityApp.cpp:306
-#: ../src/Project.cpp:1772
-#: ../src/Project.cpp:1843
-#: ../src/Project.cpp:1894
-#: ../src/Project.cpp:1905
-#: ../src/Project.cpp:1943
+#: ../src/AudacityApp.cpp:306 ../src/Project.cpp:1772 ../src/Project.cpp:1843
+#: ../src/Project.cpp:1894 ../src/Project.cpp:1905 ../src/Project.cpp:1943
msgid "Error opening project"
msgstr "Eroare la deschiderea proiectului"
@@ -225,20 +219,28 @@ msgstr ""
msgid "Output Meter"
msgstr ""
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
+#: ../src/Menus.cpp:141
+msgid "&New"
+msgstr "&Nou"
+
+#: ../src/Menus.cpp:143
+msgid "&Open..."
+msgstr "&Deschide..."
+
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
+
#: AudacityApp.cpp:534 Menus.cpp:575
-msgid "&Preferences...\tCtrl+,"
+msgid "&Preferences..."
msgstr ""
-#: ../src/AudacityApp.cpp:626
-#: ../src/AudacityApp.cpp:696
+#: ../src/AudacityApp.cpp:626 ../src/AudacityApp.cpp:696
#, c-format
msgid "Using block size of %ld\n"
msgstr ""
-#: ../src/AudacityApp.cpp:641
-#: ../src/AudacityApp.cpp:711
+#: ../src/AudacityApp.cpp:641 ../src/AudacityApp.cpp:711
#, c-format
msgid "Unknown command line option: %s\n"
msgstr "OpÅ£iune pe linie de comandÄ necunoscutÄ: %s\n"
@@ -352,14 +354,14 @@ msgstr "Eroare:"
msgid "Error Initializing Audio"
msgstr "Eroare la iniţializarea Audacity"
-#: AudioIO.cpp:1236
-msgid "Latency problem"
+#: AudioIO.cpp:1225
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
+"Audacity has brought it back to start at zero.\n"
+"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
msgstr ""
#: AudioIO.cpp:1236
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
-"Audacity has brought it back to start at zero.\n"
-"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
+msgid "Latency problem"
msgstr ""
#: AutoRecovery.cpp:40
@@ -408,10 +410,8 @@ msgstr ""
msgid "Could not enumerate files in auto save directory"
msgstr ""
-#: ../src/ControlToolBar.cpp:723
-#: ../src/ControlToolBar.cpp:884
-#: ../src/effects/Effect.cpp:331
-#: ../src/prefs/DirectoriesPrefs.cpp:204
+#: ../src/ControlToolBar.cpp:723 ../src/ControlToolBar.cpp:884
+#: ../src/effects/Effect.cpp:331 ../src/prefs/DirectoriesPrefs.cpp:204
msgid "Error"
msgstr "Eroare"
@@ -587,8 +587,9 @@ msgstr ""
msgid "C&hain (Double-Click or press SPACE to edit)"
msgstr ""
-#: BatchProcessDialog.cpp:450
-msgid "No"
+#. i18n-hint: This is the number of the command in the list
+#: BatchProcessDialog.cpp:453
+msgid "Num"
msgstr ""
#: BatchProcessDialog.cpp:456
@@ -906,11 +907,11 @@ msgstr ""
msgid "FFmpeg support not compiled in"
msgstr ""
-#: FFmpeg.cpp:101
+#: FFmpeg.cpp:103
msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
#: FFmpeg.cpp:104
@@ -966,11 +967,12 @@ msgstr ""
msgid "FFmpeg not found"
msgstr ""
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
#: FFmpeg.h:109
@@ -993,8 +995,7 @@ msgstr ""
msgid "Frequency Analysis"
msgstr "Analiza frecvenţei"
-#: ../src/FreqWindow.cpp:129
-#: ../src/TrackPanel.cpp:837
+#: ../src/FreqWindow.cpp:129 ../src/TrackPanel.cpp:837
msgid "Spectrum"
msgstr ""
@@ -1052,15 +1053,25 @@ msgstr ""
msgid "Export"
msgstr ""
-#: ../src/Benchmark.cpp:223
-#: ../src/FreqWindow.cpp:123
-#: ../src/effects/ClickRemoval.cpp:371
-#: ../src/effects/NoiseRemoval.cpp:463
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
+#: ../src/Benchmark.cpp:223 ../src/FreqWindow.cpp:123
+#: ../src/effects/ClickRemoval.cpp:371 ../src/effects/NoiseRemoval.cpp:463
msgid "Close"
msgstr "Ãnchide"
-#: ../src/effects/Compressor.cpp:385
-#: ../src/effects/Compressor.cpp:393
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr ""
+
+#: ../src/effects/Compressor.cpp:385 ../src/effects/Compressor.cpp:393
#: ../src/widgets/Meter.cpp:293
msgid "dB"
msgstr "dB"
@@ -1070,6 +1081,15 @@ msgstr "dB"
msgid "Hz"
msgstr "Hz"
+#: ../src/Menus.cpp:2369
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr ""
+
+#: ../src/Menus.cpp:2395
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "Prea mult selectat. Numai primele %.1f secunde vor fi analizate."
+
#: ../src/FreqWindow.cpp:463
msgid "Not enough data selected."
msgstr "Insuficiente date selectate."
@@ -1096,9 +1116,7 @@ msgstr ""
msgid "Export Spectral Data As:"
msgstr ""
-#: ../src/FreqWindow.cpp:1014
-#: ../src/Menus.cpp:1393
-#: ../src/Project.cpp:2159
+#: ../src/FreqWindow.cpp:1014 ../src/Menus.cpp:1393 ../src/Project.cpp:2159
#: ../src/prefs/KeyConfigPrefs.cpp:173
msgid "Couldn't write to file: "
msgstr "Nu a putut fi scris fiÅierul:"
@@ -1111,6 +1129,21 @@ msgstr "Frecvenţa (Hz)\tNivel (dB)"
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr ""
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr ""
+
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr ""
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr ""
@@ -1188,7 +1221,7 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr ""
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
msgstr ""
#: HelpText.cpp:244
@@ -1212,7 +1245,7 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr ""
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
msgstr ""
#: HelpText.cpp:383
@@ -1281,6 +1314,14 @@ msgstr ""
msgid "GB"
msgstr ""
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
#: LabelDialog.cpp:50
msgid "Track"
msgstr ""
@@ -1340,9 +1381,7 @@ msgstr ""
msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
msgstr "FiÅiere text (*.txt)|*.txt|Toate fiÅierele(*.*)|*.*"
-#: ../src/Menus.cpp:2647
-#: ../src/Project.cpp:1820
-#: ../src/Project.cpp:1828
+#: ../src/Menus.cpp:2647 ../src/Project.cpp:1820 ../src/Project.cpp:1828
#: ../src/import/ImportMIDI.cpp:31
msgid "Could not open file: "
msgstr "Nu s-a putut deschide fiÅierul:"
@@ -1395,21 +1434,13 @@ msgstr "Se deschide proiectul Audacity"
msgid "&File"
msgstr "&FiÅier"
-#: ../src/Menus.cpp:141
-msgid "&New\tCtrl+N"
-msgstr "&Nou\tCtrl+N"
-
-#: ../src/Menus.cpp:143
-msgid "&Open...\tCtrl+O"
-msgstr "&Deschide...\tCtrl+O"
-
#: ../src/Menus.cpp:145
-msgid "&Close\tCtrl+W"
-msgstr "&IeÅire\tCtrl+W"
+msgid "&Close"
+msgstr "&IeÅire"
#: ../src/Menus.cpp:146
-msgid "&Save Project\tCtrl+S"
-msgstr "&SalveazÄ Proiect\tCtrl+S"
+msgid "&Save Project"
+msgstr "&SalveazÄ Proiect"
#: ../src/Menus.cpp:150
msgid "Save Project &As..."
@@ -1432,7 +1463,7 @@ msgid "&Import"
msgstr ""
#: Menus.cpp:236
-msgid "&Audio...\tCtrl+Shift+I"
+msgid "&Audio..."
msgstr ""
#: Menus.cpp:237
@@ -1463,8 +1494,8 @@ msgstr ""
msgid "Export MIDI..."
msgstr ""
-#: Menus.cpp:290
-msgid "CleanSpeech C&hain..."
+#: Menus.cpp:352
+msgid "Appl&y Chain..."
msgstr ""
#: Menus.cpp:340 Menus.cpp:354
@@ -1479,10 +1510,6 @@ msgstr ""
msgid "I&mport CleanSpeech Presets..."
msgstr ""
-#: Menus.cpp:352
-msgid "Appl&y Chain..."
-msgstr ""
-
#: Menus.cpp:358
msgid "&Upload File..."
msgstr ""
@@ -1497,7 +1524,7 @@ msgid "&Print..."
msgstr ""
#: Menus.cpp:382 Menus.cpp:385
-msgid "E&xit\tCtrl+Q"
+msgid "E&xit"
msgstr ""
#: ../src/Menus.cpp:227
@@ -1505,63 +1532,63 @@ msgid "&Edit"
msgstr "&Editare"
#: ../src/Menus.cpp:231
-msgid "&Undo\tCtrl+Z"
-msgstr "&DesfÄ\tCtrl+Z"
+msgid "&Undo"
+msgstr "&DesfÄ"
#: ../src/Menus.cpp:239
msgid "&Redo"
msgstr "&RefÄ"
#: ../src/Menus.cpp:252
-msgid "Cu&t\tCtrl+X"
-msgstr "&TÄiere\tCtrl+X"
+msgid "Cu&t"
+msgstr "&TÄiere"
#: Menus.cpp:420
-msgid "Spl&it Cut\tCtrl+Alt+X"
+msgid "Spl&it Cut"
msgstr ""
#: ../src/Menus.cpp:253
-msgid "&Copy\tCtrl+C"
-msgstr "&Copiere\tCtrl+C"
+msgid "&Copy"
+msgstr "&Copiere"
#: ../src/Menus.cpp:254
-msgid "&Paste\tCtrl+V"
-msgstr "&LipeÅte\tCtrl+V"
+msgid "&Paste"
+msgstr "&LipeÅte"
#: Menus.cpp:426
-msgid "Tri&m\tCtrl+T"
+msgid "Tri&m"
msgstr ""
#: ../src/Menus.cpp:260
-msgid "&Delete\tCtrl+K"
-msgstr "&Återgere\tCtrl+K"
+msgid "&Delete"
+msgstr "&Återgere"
#: Menus.cpp:429
-msgid "Split D&elete\tCtrl+Alt+K"
+msgid "Split D&elete"
msgstr ""
#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
+msgid "Silence Audi&o"
msgstr ""
#: Menus.cpp:432
-msgid "Sp&lit\tCtrl+I"
+msgid "Sp&lit"
msgstr ""
#: Menus.cpp:342
-msgid "Split Ne&w\tCtrl+Alt+I"
+msgid "Split Ne&w"
msgstr ""
#: Menus.cpp:442
-msgid "&Join\tCtrl+J"
+msgid "&Join"
msgstr ""
#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
+msgid "Detac&h at Silences"
msgstr ""
#: Menus.cpp:445
-msgid "Duplic&ate\tCtrl+D"
+msgid "Duplic&ate"
msgstr ""
#: Menus.cpp:400 Menus.cpp:639
@@ -1574,47 +1601,32 @@ msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:460
-msgid "&Cut\tAlt+X"
+msgid "&Cut"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:465
-msgid "&Split Cut\tShift+Alt+X"
+msgid "&Split Cut"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:470
-msgid "Co&py\tShift+Alt+C"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:476
-msgid "&Delete\tAlt+K"
+msgid "Co&py"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:481
-msgid "Sp&lit Delete\tShift+Alt+K"
+msgid "Sp&lit Delete"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:486
-msgid "Sile&nce\tAlt+L"
+msgid "Sile&nce"
msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:492
-msgid "Spli&t\tAlt+I"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:497
-msgid "&Join\tAlt+J"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
+msgid "Spli&t"
msgstr ""
#: Menus.cpp:456
@@ -1622,31 +1634,31 @@ msgid "&Select"
msgstr ""
#: ../src/Menus.cpp:269
-msgid "&All\tCtrl+A"
-msgstr "&Toate\tCtrl+A"
+msgid "&All"
+msgstr "&Toate"
#: Menus.cpp:415
-msgid "&None\tCtrl+Shift+A"
+msgid "&None"
msgstr ""
#: Menus.cpp:462
-msgid "&Left at Playback Position\t["
+msgid "&Left at Playback Position"
msgstr ""
#: Menus.cpp:463
-msgid "&Right at Playback Position\t]"
+msgid "&Right at Playback Position"
msgstr ""
#: Menus.cpp:467
-msgid "Track &Start to Cursor\tShift+J"
+msgid "Track &Start to Cursor"
msgstr ""
#: Menus.cpp:468
-msgid "Cursor to Track &End\tShift+K"
+msgid "Cursor to Track &End"
msgstr ""
#: Menus.cpp:525
-msgid "Find &Zero Crossings\tZ"
+msgid "Find &Zero Crossings"
msgstr ""
#: Menus.cpp:476
@@ -1664,11 +1676,11 @@ msgid "to Selection En&d"
msgstr "spre sfârÅitull SelecÅ£iei"
#: Menus.cpp:483
-msgid "to Track &Start\tJ"
+msgid "to Track &Start"
msgstr ""
#: Menus.cpp:484
-msgid "to Track &End\tK"
+msgid "to Track &End"
msgstr ""
#: Menus.cpp:491
@@ -1691,29 +1703,8 @@ msgstr ""
msgid "&Unlock"
msgstr ""
-#: ../src/Menus.cpp:311
-msgid "Turn Snap-To On"
-msgstr ""
-
-#: ../src/Menus.cpp:312
-msgid "Turn Snap-To Off"
-msgstr ""
-
-#: ../src/Menus.cpp:313
-msgid "Turn Grid Snap On"
-msgstr ""
-
-#: ../src/Menus.cpp:314
-msgid "Turn Grid Snap Off"
-msgstr ""
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr ""
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
+msgid "Pre&ferences..."
msgstr ""
#: ../src/Menus.cpp:345
@@ -1721,35 +1712,35 @@ msgid "&View"
msgstr "&Vizualizare"
#: ../src/Menus.cpp:347
-msgid "Zoom &In\tCtrl+1"
-msgstr "MÄreÅt&e\tCtrl+1"
+msgid "Zoom &In"
+msgstr "MÄreÅt&e"
#: ../src/Menus.cpp:350
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "MÄrime &normalÄ\tCtrl+2"
+msgid "Zoom &Normal"
+msgstr "MÄrime &normalÄ"
#: ../src/Menus.cpp:351
-msgid "Zoom &Out\tCtrl+3"
-msgstr "MicÅ&oreazÄ\tCtrl+3"
+msgid "Zoom &Out"
+msgstr "MicÅ&oreazÄ"
#: ../src/Menus.cpp:354
-msgid "&Fit in Window\tCtrl+F"
-msgstr "&PotriveÅte în FereastrÄ\tCtrl+F"
+msgid "&Fit in Window"
+msgstr "&PotriveÅte în FereastrÄ"
#: ../src/Menus.cpp:355
-msgid "Fit &Vertically\tCtrl+Shift+F"
+msgid "Fit &Vertically"
msgstr ""
#: ../src/Menus.cpp:356
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "&MÄreÅte selecÅ£ia\tCtrl+E"
+msgid "&Zoom to Selection"
+msgstr "&MÄreÅte selecÅ£ia"
#: Menus.cpp:603
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
+msgid "&Collapse All Tracks"
msgstr ""
#: Menus.cpp:604
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
+msgid "E&xpand All Tracks"
msgstr ""
#: Menus.cpp:551
@@ -1811,39 +1802,39 @@ msgid "T&ransport"
msgstr ""
#: Menus.cpp:591
-msgid "Play\tSpace"
+msgid "Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
+msgid "&Loop Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Pause\tP"
+msgid "&Pause"
msgstr ""
#: Menus.cpp:596
-msgid "&Stop\tSpace"
+msgid "&Stop"
msgstr ""
#: ../src/Menus.cpp:569
-msgid "Skip to Start\tHome"
-msgstr "Sari la Ãnceput\tHome"
+msgid "Skip to Start"
+msgstr "Sari la Ãnceput"
#: ../src/Menus.cpp:570
-msgid "Skip to End\tEnd"
-msgstr "Sari la SfârÅit\tEnd"
+msgid "Skip to End"
+msgstr "Sari la SfârÅit"
#: Menus.cpp:600
-msgid "&Record\tR"
+msgid "&Record"
msgstr ""
#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
+msgid "&Timer Record..."
msgstr ""
#: Menus.cpp:604
-msgid "Append Record\tShift+R"
+msgid "Append Record"
msgstr ""
#: Menus.cpp:607
@@ -1871,7 +1862,7 @@ msgid "Add &New"
msgstr ""
#: Menus.cpp:643
-msgid "&Audio Track\tCtrl+Shift+N"
+msgid "&Audio Track"
msgstr ""
#: Menus.cpp:644
@@ -1887,7 +1878,7 @@ msgid "Mi&x and Render"
msgstr ""
#: Menus.cpp:564
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
+msgid "Mix and Render to New Track"
msgstr ""
#: Menus.cpp:662
@@ -1899,11 +1890,11 @@ msgid "Remo&ve Tracks"
msgstr "EliminÄ Pie&sele"
#: Menus.cpp:667
-msgid "&Mute All Tracks\tCtrl+U"
+msgid "&Mute All Tracks"
msgstr ""
#: Menus.cpp:668
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
+msgid "&UnMute All Tracks"
msgstr ""
#: ../src/Menus.cpp:405
@@ -1950,19 +1941,18 @@ msgstr ""
msgid "Synchronize MIDI with Audio"
msgstr ""
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
+#: Menus.cpp:686
+msgid "&Link Audio and Label Tracks"
msgstr ""
-#: Menus.cpp:705
-#, fuzzy
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "AdaugÄ etichetÄ la selecÅ£ie\tCtrl+B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr ""
#: Menus.cpp:706
#, fuzzy
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "AdaugÄ etichetÄ la pozitia de redare\tCtrl+M"
+msgid "Add Label At &Playback Position"
+msgstr "AdaugÄ etichetÄ la pozitia de redare"
#: Menus.cpp:716
msgid "S&ort tracks"
@@ -1988,21 +1978,20 @@ msgstr ""
msgid "Effe&ct"
msgstr "Efe&ct"
-#: ../src/Menus.cpp:468
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "RepetÄ ultimul efect\tCtrl+R"
-
#: ../src/Menus.cpp:494
msgid "&Analyze"
msgstr "&AnalizeazÄ"
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
+
#: Menus.cpp:692
msgid "Plot Spectrum..."
msgstr ""
#. i18n-hint: The name of the Help menu
-#: ../src/Menus.cpp:524
-#: ../src/Menus.cpp:540
+#: ../src/Menus.cpp:524 ../src/Menus.cpp:540
msgid "&Help"
msgstr "&Ajutor"
@@ -2014,8 +2003,8 @@ msgstr ""
msgid "&Show Welcome Message..."
msgstr ""
-#: Menus.cpp:736
-msgid "&Index..."
+#: Menus.cpp:958
+msgid "&Help..."
msgstr ""
#: Menus.cpp:959
@@ -2034,180 +2023,148 @@ msgstr "&ExecutÄ Test"
msgid "&Audio Device Info..."
msgstr ""
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
msgstr ""
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
msgstr ""
#: ../src/Menus.cpp:549
-msgid "Selection Tool\tF1"
-msgstr "Unealta de selecţie\tF1"
+msgid "Selection Tool"
+msgstr "Unealta de selecţie"
#: ../src/Menus.cpp:550
-msgid "Envelope Tool\tF2"
+msgid "Envelope Tool"
msgstr ""
#: ../src/Menus.cpp:551
-msgid "Draw Tool\tF3"
-msgstr "Unealta de desenare\tF3"
+msgid "Draw Tool"
+msgstr "Unealta de desenare"
#: ../src/Menus.cpp:552
-msgid "Zoom Tool\tF4"
-msgstr "Unealta de mÄrire\tF4"
+msgid "Zoom Tool"
+msgstr "Unealta de mÄrire"
#: ../src/Menus.cpp:553
-msgid "Time Shift Tool\tF5"
+msgid "Time Shift Tool"
msgstr ""
#: ../src/Menus.cpp:554
-msgid "Multi Tool\tF6"
+msgid "Multi Tool"
msgstr ""
#: ../src/Menus.cpp:556
-msgid "Next Tool\tD"
-msgstr "Urmâtoare unealtÄ\tD"
+msgid "Next Tool"
+msgstr "Urmâtoare unealtÄ"
#: ../src/Menus.cpp:557
-msgid "Previous Tool\tA"
+msgid "Previous Tool"
msgstr "Unelata precedentÄ"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
-msgstr ""
-
-#: ../src/Menus.cpp:560
-msgid "Stop\tS"
-msgstr "Stop\tS"
-
-#: ../src/Menus.cpp:561
-msgid "Pause\tP"
-msgstr "PauzÄ\tP"
-
-#: ../src/Menus.cpp:562
-msgid "Record\tR"
-msgstr "ÃnregistreazÄ\tR"
-
-#: Menus.cpp:999
-msgid "Record Append\tShift+R"
+msgid "Play/Stop"
msgstr ""
#: Menus.cpp:1001
-msgid "Play/Stop and Set Cursor\tShift+A"
+msgid "Play/Stop and Set Cursor"
msgstr ""
#: ../src/Menus.cpp:564
-msgid "Play One Second\t1"
+msgid "Play One Second"
msgstr ""
#: ../src/Menus.cpp:565
-msgid "Play To Selection\tB"
-msgstr ""
-
-#: ../src/Menus.cpp:566
-msgid "Play Looped\tL"
-msgstr "RedÄ repetând"
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
+msgid "Play To Selection"
msgstr ""
#: Menus.cpp:873
-msgid "Play Cut Preview\tC"
+msgid "Play Cut Preview"
msgstr ""
#: ../src/Menus.cpp:572
-msgid "Selection to Start\tShift+Home"
+msgid "Selection to Start"
msgstr ""
#: ../src/Menus.cpp:573
-msgid "Selection to End\tShift+End"
+msgid "Selection to End"
msgstr ""
#: ../src/Menus.cpp:575
-msgid "DeleteKey\tBackspace"
-msgstr "Tasta de Återgere\tBackspace"
+msgid "DeleteKey"
+msgstr "Tasta de Återgere"
#: ../src/Menus.cpp:580
-msgid "DeleteKey2\tDelete"
-msgstr "Tasta de Återgere2\tDelete"
+msgid "DeleteKey2"
+msgstr "Tasta de Återgere2"
-#: Menus.cpp:892
-msgid "Seek left short period during playback\tLeft"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
msgstr ""
-#: Menus.cpp:893
-msgid "Seek right short period during playback\tRight"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
msgstr ""
-#: Menus.cpp:894
-msgid "Seek left long period during playback\tShift+Left"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
msgstr ""
-#: Menus.cpp:895
-msgid "Seek right long period during playback\tShift+Right"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
msgstr ""
#: Menus.cpp:899
-msgid "Move Focus to Previous Track\tUp"
+msgid "Move Focus to Previous Track"
msgstr ""
-#: Menus.cpp:900
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
msgstr ""
#: Menus.cpp:901
-msgid "Move Focus to Next Track\tDown"
+msgid "Move Focus to Next Track"
msgstr ""
-#: Menus.cpp:902
-msgid "Move Focus to Next and Change Selection\tShift+Down"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
msgstr ""
#: Menus.cpp:903
-msgid "Toggle Focused Track\tReturn"
-msgstr ""
-
-#: Menus.cpp:904
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr ""
-
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
+msgid "Toggle Focused Track"
msgstr ""
#: ../src/Menus.cpp:585
-msgid "Cursor Left\tLeft"
+msgid "Cursor Left"
msgstr ""
#: ../src/Menus.cpp:586
-msgid "Cursor Right\tRight"
+msgid "Cursor Right"
msgstr ""
#: Menus.cpp:820
-msgid "Cursor Short Jump Left\t,"
+msgid "Cursor Short Jump Left"
msgstr ""
#: Menus.cpp:821
-msgid "Cursor Short Jump Right\t."
+msgid "Cursor Short Jump Right"
msgstr ""
#: Menus.cpp:822
-msgid "Cursor Long Jump Left\tShift+,"
+msgid "Cursor Long Jump Left"
msgstr ""
#: Menus.cpp:823
-msgid "Cursor Long Jump Right\tShift+."
+msgid "Cursor Long Jump Right"
msgstr ""
#: ../src/Menus.cpp:587
-msgid "Selection Extend Left\tShift+Left"
+msgid "Selection Extend Left"
msgstr ""
#: ../src/Menus.cpp:588
-msgid "Selection Extend Right\tShift+Right"
+msgid "Selection Extend Right"
msgstr ""
#: Menus.cpp:828
@@ -2219,51 +2176,51 @@ msgid "Set (or Extend) Right Selection"
msgstr ""
#: ../src/Menus.cpp:589
-msgid "Selection Contract Left\tCtrl+Shift+Right"
+msgid "Selection Contract Left"
msgstr ""
#: ../src/Menus.cpp:590
-msgid "Selection Contract Right\tCtrl+Shift+Left"
+msgid "Selection Contract Right"
msgstr ""
#: Menus.cpp:916
-msgid "Change pan on focused track\tShift+P"
+msgid "Change pan on focused track"
msgstr ""
#: Menus.cpp:917
-msgid "Pan left on focused track\tAlt+Shift+Left"
+msgid "Pan left on focused track"
msgstr ""
#: Menus.cpp:918
-msgid "Pan right on focused track\tAlt+Shift+Right"
+msgid "Pan right on focused track"
msgstr ""
#: Menus.cpp:919
-msgid "Change gain on focused track\tShift+G"
+msgid "Change gain on focused track"
msgstr ""
#: Menus.cpp:920
-msgid "Increase gain on focused track\tAlt+Shift+Up"
+msgid "Increase gain on focused track"
msgstr ""
#: Menus.cpp:921
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
+msgid "Decrease gain on focused track"
msgstr ""
#: Menus.cpp:922
-msgid "Open menu on focused track\tShift+M"
+msgid "Open menu on focused track"
msgstr ""
#: Menus.cpp:923
-msgid "Mute/Unmute focused track\tShift+U"
+msgid "Mute/Unmute focused track"
msgstr ""
#: Menus.cpp:924
-msgid "Solo/Unsolo focused track\tShift+S"
+msgid "Solo/Unsolo focused track"
msgstr ""
#: Menus.cpp:925
-msgid "Close focused track\tShift+C"
+msgid "Close focused track"
msgstr ""
#: Menus.cpp:845
@@ -2275,7 +2232,35 @@ msgid "Snap To Off"
msgstr ""
#: Menus.cpp:1071
-msgid "Full screen on/off\tF11"
+msgid "Full screen on/off"
+msgstr ""
+
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr ""
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr ""
+
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr ""
+
+#: Menus.cpp:1074
+msgid "Adjust input source"
msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
@@ -2336,8 +2321,8 @@ msgstr "Trebuie sÄ selectaÅ£i o piesÄ mai întâi."
#: ../src/Menus.cpp:1248
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "RepetÄ %s\tCtrl+R"
+msgid "Repeat %s"
+msgstr "RepetÄ %s"
#: ../src/Menus.cpp:1352
msgid "There are no label tracks to export."
@@ -2368,8 +2353,7 @@ msgstr "Nu existÄ nimic de desfÄcut"
msgid "Nothing to redo"
msgstr "Nu existÄ nimic de refÄcut"
-#: ../src/EditToolBar.cpp:148
-#: ../src/Menus.cpp:1713
+#: ../src/EditToolBar.cpp:148 ../src/Menus.cpp:1713
msgid "Cut"
msgstr "Taie"
@@ -2385,9 +2369,7 @@ msgstr ""
msgid "Split-cut to the clipboard"
msgstr ""
-#: ../src/EditToolBar.cpp:152
-#: ../src/Menus.cpp:1818
-#: ../src/Menus.cpp:1862
+#: ../src/EditToolBar.cpp:152 ../src/Menus.cpp:1818 ../src/Menus.cpp:1862
msgid "Paste"
msgstr "LipeÅte"
@@ -2395,8 +2377,7 @@ msgstr "LipeÅte"
msgid "Pasted text from the clipboard"
msgstr ""
-#: ../src/Menus.cpp:1818
-#: ../src/Menus.cpp:1862
+#: ../src/Menus.cpp:1818 ../src/Menus.cpp:1862
msgid "Pasted from the clipboard"
msgstr "LipreÅte din Memoria Clipboard"
@@ -2448,8 +2429,7 @@ msgstr ""
msgid "Silenced selected tracks for %.2f seconds at %.2f"
msgstr ""
-#: ../src/Menus.cpp:1928
-#: ../src/effects/Silence.h:33
+#: ../src/Menus.cpp:1928 ../src/effects/Silence.h:33
msgid "Silence"
msgstr "LiniÅte"
@@ -2533,8 +2513,7 @@ msgstr ""
msgid "Disjoined labeled regions"
msgstr ""
-#: ../src/Menus.cpp:2009
-#: ../src/TrackPanel.cpp:4134
+#: ../src/Menus.cpp:2009 ../src/TrackPanel.cpp:4134
msgid "Split"
msgstr "Ãmparte"
@@ -2550,15 +2529,6 @@ msgstr ""
msgid "Split at labels"
msgstr ""
-#: ../src/Menus.cpp:2369
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr ""
-
-#: ../src/Menus.cpp:2395
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "Prea mult selectat. Numai primele %.1f secunde vor fi analizate."
-
#: ../src/Menus.cpp:2660
#, c-format
msgid "Imported labels from '%s'"
@@ -2676,9 +2646,7 @@ msgstr ""
msgid "Created new audio track"
msgstr "A fost creatÄ o nouÄ piesÄ audio"
-#: ../src/Menus.cpp:2977
-#: ../src/Menus.cpp:3001
-#: ../src/Menus.cpp:3016
+#: ../src/Menus.cpp:2977 ../src/Menus.cpp:3001 ../src/Menus.cpp:3016
#: ../src/Menus.cpp:3052
msgid "New Track"
msgstr "PiesÄ nouÄ"
@@ -2760,8 +2728,7 @@ msgstr ""
msgid "Resampled audio track(s)"
msgstr ""
-#: ../src/Mix.cpp:74
-#: ../src/Mix.cpp:82
+#: ../src/Mix.cpp:74 ../src/Mix.cpp:82
msgid "Mix"
msgstr "MixeazÄ"
@@ -2781,6 +2748,10 @@ msgstr "A apÄrut o problemÄ la printare."
msgid "Print"
msgstr "ImprimÄ"
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr ""
+
#: Project.cpp:573
msgid "Main Mix"
msgstr ""
@@ -2794,14 +2765,11 @@ msgstr ""
msgid "(Recovered)"
msgstr ""
-#: ../src/ControlToolBar.cpp:469
-#: ../src/Project.cpp:1707
-#: ../src/TrackPanel.cpp:1208
+#: ../src/Menus.cpp:562
msgid "Record"
msgstr "ÃnregistreazÄ"
-#: ../src/Project.cpp:1707
-#: ../src/TrackPanel.cpp:1208
+#: ../src/Project.cpp:1707 ../src/TrackPanel.cpp:1208
msgid "Recorded Audio"
msgstr "Sunete înregistrate"
@@ -2822,12 +2790,11 @@ msgstr ""
msgid "Save changes?"
msgstr "SalveazÄ modificÄrile?"
-#: Project.cpp:1684
-msgid "All files|*.*|All supported files|"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
msgstr ""
-#: ../src/Menus.cpp:2595
-#: ../src/Project.cpp:1738
+#: ../src/Menus.cpp:2595 ../src/Project.cpp:1738
msgid "Select one or more audio files..."
msgstr ""
@@ -2854,8 +2821,18 @@ msgstr ""
msgid "Opening old project file"
msgstr ""
-#: ../src/Project.cpp:1821
-#: ../src/Project.cpp:1829
+#: Project.cpp:2073
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr ""
+
+#: ../src/Project.cpp:1821 ../src/Project.cpp:1829
msgid "Error opening file"
msgstr "Eroare la deschiderea fiÅierului"
@@ -2911,10 +2888,12 @@ msgstr "FiÅierul a fost dalvat folosind Audacity %s.\n"
msgid "Can't open project file"
msgstr "Nu se poate deschide Proiectul"
-#: Project.cpp:2314
+#: Project.cpp:2484
#, c-format
msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
msgstr ""
@@ -2934,17 +2913,22 @@ msgstr ""
msgid "Warning empty project"
msgstr ""
-#: Project.cpp:2591
+#: Project.cpp:2792
#, c-format
msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+"is not writable or the disk is full."
msgstr ""
-#: ../src/Project.cpp:2148
-#: ../src/Project.cpp:2160
+#: ../src/Project.cpp:2148 ../src/Project.cpp:2160
msgid "Error saving project"
msgstr "Eroare la salvarea proiectului"
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
#: ../src/Project.cpp:2200
#, c-format
msgid "Saved %s"
@@ -2955,10 +2939,8 @@ msgstr "Salvat %s"
msgid "Imported '%s'"
msgstr "Importat '%s'"
-#: ../src/Project.cpp:2236
-#: ../src/Project.cpp:2283
-#: ../src/import/ImportPCM.cpp:403
-#: ../src/import/ImportPCM.cpp:488
+#: ../src/Project.cpp:2236 ../src/Project.cpp:2283
+#: ../src/import/ImportPCM.cpp:403 ../src/import/ImportPCM.cpp:488
#: ../src/import/ImportRaw.cpp:408
msgid "Import"
msgstr "ImporteazÄ"
@@ -3086,8 +3068,7 @@ msgstr ""
msgid "Libsamplerate error: %d\n"
msgstr ""
-#: ../src/Resample.cpp:233
-#: ../src/Resample.cpp:243
+#: ../src/Resample.cpp:233 ../src/Resample.cpp:243
msgid "Resampling disabled."
msgstr ""
@@ -3106,6 +3087,163 @@ msgstr ""
msgid "32-bit float"
msgstr ""
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
+
+#: ../src/export/ExportMultiple.cpp:600 ../src/prefs/DirectoriesPrefs.cpp:82
+msgid "Choose..."
+msgstr "Alegeţi..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
+
+#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
+msgid "false"
+msgstr ""
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:82
+msgid "Control"
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:58
+msgid "Mixer"
+msgstr ""
+
+#: toolbars/MeterToolBar.cpp:49
+msgid "Meter"
+msgstr ""
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
+#: toolbars/DeviceToolBar.cpp:54
+msgid "Device"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:81
+msgid "Transcription"
+msgstr ""
+
+#: TrackPanel.cpp:452 TrackPanel.cpp:453
+msgid "Track Panel"
+msgstr ""
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: ../src/export/ExportMultiple.cpp:636
+msgid "Tracks"
+msgstr "Piese"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
#: Screenshot.cpp:384
msgid "Saved "
msgstr ""
@@ -3114,6 +3252,10 @@ msgstr ""
msgid "Error trying to save file: "
msgstr ""
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
#: Sequence.cpp:732 Sequence.cpp:742 Sequence.cpp:749
msgid "Gap detected in project file\n"
msgstr ""
@@ -3252,6 +3394,10 @@ msgstr ""
msgid "Save Metadata As:"
msgstr ""
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
#: Theme.cpp:629
#, c-format
msgid "Audacity could not write file:\n"
@@ -3324,6 +3470,14 @@ msgstr ""
msgid "Audacity Timer Record"
msgstr ""
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
#: SmartRecordDialog.cpp:223
msgid "Recording start"
msgstr ""
@@ -3363,35 +3517,23 @@ msgstr ""
msgid "Audacity Timer Record - Waiting for Start"
msgstr ""
-#: TrackPanel.cpp:452 TrackPanel.cpp:453
-msgid "Track Panel"
-msgstr ""
-
-#: ../src/AStatus.cpp:81
-#: ../src/TrackPanel.cpp:822
-#: ../src/prefs/FileFormatPrefs.cpp:105
-#: ../src/prefs/QualityPrefs.cpp:91
+#: ../src/AStatus.cpp:81 ../src/TrackPanel.cpp:822
+#: ../src/prefs/FileFormatPrefs.cpp:105 ../src/prefs/QualityPrefs.cpp:91
msgid "Other..."
msgstr "Alt.."
-#: ../src/TrackPanel.cpp:830
-#: ../src/TrackPanel.cpp:851
-#: ../src/TrackPanel.cpp:860
-#: ../src/TrackPanel.cpp:868
+#: ../src/TrackPanel.cpp:830 ../src/TrackPanel.cpp:851
+#: ../src/TrackPanel.cpp:860 ../src/TrackPanel.cpp:868
msgid "Name..."
msgstr "Nume..."
-#: ../src/TrackPanel.cpp:832
-#: ../src/TrackPanel.cpp:853
-#: ../src/TrackPanel.cpp:864
-#: ../src/TrackPanel.cpp:870
+#: ../src/TrackPanel.cpp:832 ../src/TrackPanel.cpp:853
+#: ../src/TrackPanel.cpp:864 ../src/TrackPanel.cpp:870
msgid "Move Track Up"
msgstr ""
-#: ../src/TrackPanel.cpp:833
-#: ../src/TrackPanel.cpp:854
-#: ../src/TrackPanel.cpp:865
-#: ../src/TrackPanel.cpp:871
+#: ../src/TrackPanel.cpp:833 ../src/TrackPanel.cpp:854
+#: ../src/TrackPanel.cpp:865 ../src/TrackPanel.cpp:871
msgid "Move Track Down"
msgstr ""
@@ -3431,13 +3573,15 @@ msgstr "CreeazÄ o piesÄ stereo"
msgid "Split Stereo Track"
msgstr "Ãmparte piesa stereo"
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr ""
+
#: ../src/TrackPanel.cpp:846
msgid "Set Sample Format"
msgstr ""
-#: ../src/AStatus.cpp:352
-#: ../src/TrackPanel.cpp:848
-#: ../src/TrackPanel.cpp:4322
+#: ../src/AStatus.cpp:352 ../src/TrackPanel.cpp:848 ../src/TrackPanel.cpp:4322
msgid "Set Rate"
msgstr "SeteazÄ Rata"
@@ -3513,8 +3657,7 @@ msgstr "EditeazÄ eticheta"
msgid "Adjusted envelope."
msgstr ""
-#: ../src/TrackPanel.cpp:1905
-#: ../src/prefs/MousePrefs.cpp:98
+#: ../src/TrackPanel.cpp:1905 ../src/prefs/MousePrefs.cpp:98
msgid "Envelope"
msgstr ""
@@ -3574,24 +3717,20 @@ msgid "Moved pan slider"
msgstr ""
#. i18n-hint: Title of the Gain slider, used to adjust the volume
-#: ../src/TrackPanel.cpp:2807
-#: ../src/TrackPanel.cpp:4726
+#: ../src/TrackPanel.cpp:2807 ../src/TrackPanel.cpp:4726
msgid "Gain"
msgstr "CâÅtig"
#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: ../src/TrackPanel.cpp:2807
-#: ../src/TrackPanel.cpp:4733
+#: ../src/TrackPanel.cpp:2807 ../src/TrackPanel.cpp:4733
msgid "Pan"
msgstr ""
-#: ../src/TrackPanel.cpp:4387
-#: ../src/effects/ChangePitch.cpp:277
+#: ../src/TrackPanel.cpp:4387 ../src/effects/ChangePitch.cpp:277
msgid "up"
msgstr "sus"
-#: ../src/TrackPanel.cpp:4388
-#: ../src/effects/ChangePitch.cpp:277
+#: ../src/TrackPanel.cpp:4388 ../src/effects/ChangePitch.cpp:277
msgid "down"
msgstr "jos"
@@ -3632,14 +3771,6 @@ msgstr ""
msgid "Adjusted gain"
msgstr ""
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr ""
-
#: TrackPanel.cpp:5428
msgid "Can't delete track with active audio"
msgstr ""
@@ -3660,8 +3791,7 @@ msgstr "Stânga, "
msgid "Right, "
msgstr "Dreapta, "
-#: ../src/TrackPanel.cpp:4116
-#: ../src/TrackPanel.cpp:4225
+#: ../src/TrackPanel.cpp:4116 ../src/TrackPanel.cpp:4225
#, c-format
msgid "Changed '%s' to %s"
msgstr "A fost schimbat din '%s' în %s "
@@ -3675,6 +3805,11 @@ msgstr "Canal"
msgid "Split stereo track '%s'"
msgstr ""
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
#: ../src/TrackPanel.cpp:4153
#, c-format
msgid "Made '%s' a stereo track"
@@ -3701,8 +3836,7 @@ msgstr "Schimbare formatului"
msgid "Change lower speed limit (%) to:"
msgstr "SchimbÄ valoarea vitezei minime (%) la:"
-#: ../src/TrackPanel.cpp:4352
-#: ../src/TrackPanel.cpp:4353
+#: ../src/TrackPanel.cpp:4352 ../src/TrackPanel.cpp:4353
msgid "Lower speed limit"
msgstr ""
@@ -3710,8 +3844,7 @@ msgstr ""
msgid "Change upper speed limit (%) to:"
msgstr "SchimbÄ valoarea vitezei maxime (%) la:"
-#: ../src/TrackPanel.cpp:4359
-#: ../src/TrackPanel.cpp:4360
+#: ../src/TrackPanel.cpp:4359 ../src/TrackPanel.cpp:4360
msgid "Upper speed limit"
msgstr "Limita superioarÄ de vitezÄ"
@@ -3753,6 +3886,10 @@ msgstr ""
msgid "Face size"
msgstr ""
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr ""
+
#: ../src/TrackPanel.cpp:4701
msgid "Mute"
msgstr "Mut"
@@ -3831,8 +3968,9 @@ msgstr "Plug-in-urile de la 1 la %i"
msgid "Plugins %i to %i"
msgstr "Plug-in-urile de la %i la %i"
-#: commands/CommandManager.cpp:857
-msgid "Disallowed for some reason. Try selecting some audio first?"
+#: commands/CommandManager.cpp:923
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
msgstr ""
#: commands/CommandManager.cpp:724
@@ -3978,31 +4116,19 @@ msgstr ""
msgid "Processing Auto Duck..."
msgstr ""
-#: ../src/LangChoice.cpp:94
-#: ../src/Tags.cpp:721
-#: ../src/effects/Amplify.cpp:187
-#: ../src/effects/AvcCompressor.cpp:716
-#: ../src/effects/BassBoost.cpp:332
-#: ../src/effects/ChangePitch.cpp:393
-#: ../src/effects/ChangeSpeed.cpp:379
-#: ../src/effects/ChangeTempo.cpp:284
-#: ../src/effects/Compressor.cpp:484
-#: ../src/effects/Echo.cpp:242
-#: ../src/effects/Equalization.cpp:731
-#: ../src/effects/Filter.cpp:482
-#: ../src/effects/Normalize.cpp:258
-#: ../src/effects/Phaser.cpp:576
-#: ../src/effects/Repeat.cpp:251
-#: ../src/effects/VST/VSTEffect.cpp:98
-#: ../src/effects/VST/VSTEffect.cpp:455
-#: ../src/effects/Wahwah.cpp:563
-#: ../src/effects/ladspa/LadspaEffect.cpp:498
+#: ../src/LangChoice.cpp:94 ../src/Tags.cpp:721 ../src/effects/Amplify.cpp:187
+#: ../src/effects/AvcCompressor.cpp:716 ../src/effects/BassBoost.cpp:332
+#: ../src/effects/ChangePitch.cpp:393 ../src/effects/ChangeSpeed.cpp:379
+#: ../src/effects/ChangeTempo.cpp:284 ../src/effects/Compressor.cpp:484
+#: ../src/effects/Echo.cpp:242 ../src/effects/Equalization.cpp:731
+#: ../src/effects/Filter.cpp:482 ../src/effects/Normalize.cpp:258
+#: ../src/effects/Phaser.cpp:576 ../src/effects/Repeat.cpp:251
+#: ../src/effects/VST/VSTEffect.cpp:98 ../src/effects/VST/VSTEffect.cpp:455
+#: ../src/effects/Wahwah.cpp:563 ../src/effects/ladspa/LadspaEffect.cpp:498
#: ../src/effects/nyquist/Nyquist.cpp:736
#: ../src/effects/nyquist/Nyquist.cpp:883
-#: ../src/effects/nyquist/Nyquist.cpp:949
-#: ../src/prefs/FileFormatPrefs.cpp:471
-#: ../src/prefs/PrefsDialog.cpp:100
-#: ../src/widgets/Warning.cpp:56
+#: ../src/effects/nyquist/Nyquist.cpp:949 ../src/prefs/FileFormatPrefs.cpp:471
+#: ../src/prefs/PrefsDialog.cpp:100 ../src/widgets/Warning.cpp:56
msgid "OK"
msgstr "OK"
@@ -4065,14 +4191,12 @@ msgstr "Ajusteaza Inaltele"
msgid "Change Pitch without Changing Tempo"
msgstr "Ajusteaza Inaltele fara a schimba Tempoul"
-#: ../src/effects/ChangePitch.cpp:247
-#: ../src/effects/ChangeSpeed.cpp:287
+#: ../src/effects/ChangePitch.cpp:247 ../src/effects/ChangeSpeed.cpp:287
#: ../src/effects/ChangeTempo.cpp:164
msgid "by Vaughan Johnson && Dominic Mazzoni"
msgstr "de Vaughan Johnson && Dominic Mazzoni"
-#: ../src/effects/ChangePitch.cpp:252
-#: ../src/effects/ChangeTempo.cpp:169
+#: ../src/effects/ChangePitch.cpp:252 ../src/effects/ChangeTempo.cpp:169
msgid "using SoundTouch, by Olli Parviainen"
msgstr "FoloseÅte SoundTouch de Olli Parviainen"
@@ -4121,10 +4245,8 @@ msgstr ""
msgid "From frequency in hertz"
msgstr ""
-#: ../src/effects/ChangePitch.cpp:284
-#: ../src/effects/ChangePitch.cpp:330
-#: ../src/effects/ChangeSpeed.cpp:351
-#: ../src/effects/ChangeTempo.cpp:223
+#: ../src/effects/ChangePitch.cpp:284 ../src/effects/ChangePitch.cpp:330
+#: ../src/effects/ChangeSpeed.cpp:351 ../src/effects/ChangeTempo.cpp:223
#: ../src/effects/ChangeTempo.cpp:254
msgid "to"
msgstr "spre"
@@ -4133,8 +4255,7 @@ msgstr "spre"
msgid "To frequency in seconds"
msgstr ""
-#: ../src/effects/ChangePitch.cpp:353
-#: ../src/effects/ChangeSpeed.cpp:305
+#: ../src/effects/ChangePitch.cpp:353 ../src/effects/ChangeSpeed.cpp:305
#: ../src/effects/ChangeTempo.cpp:182
msgid "Percent Change:"
msgstr "Procent schimbat:"
@@ -4152,8 +4273,7 @@ msgstr "Ajusteaza Inaltele..."
msgid "Changing Pitch"
msgstr "Schimbarea Inaltelor"
-#: ../src/effects/ChangeSpeed.cpp:40
-#: ../src/effects/ChangeTempo.cpp:43
+#: ../src/effects/ChangeSpeed.cpp:40 ../src/effects/ChangeTempo.cpp:43
#, c-format
msgid "Applied effect: %s %.1f%%"
msgstr "Se aplicÄ efectul: %s %.1f%%"
@@ -4299,8 +4419,8 @@ msgstr ""
msgid "Decay Time"
msgstr ""
-#: ../src/effects/Compressor.cpp:469
-msgid "Normalize to 0dB after compressing"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
msgstr ""
#: effects/Compressor.cpp:563
@@ -4356,6 +4476,10 @@ msgstr "Compresor..."
msgid "Applying Dynamic Range Compression..."
msgstr ""
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
msgstr ""
@@ -4375,19 +4499,6 @@ msgid "Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr ""
-
#: effects/Contrast.cpp:231
msgid "Contrast Analyzer"
msgstr ""
@@ -4421,6 +4532,11 @@ msgstr ""
msgid "Foreground end time"
msgstr ""
+#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
+#: effects/Contrast.cpp:289
+msgid "Measured"
+msgstr ""
+
#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
msgid "Use selection"
msgstr ""
@@ -4465,16 +4581,8 @@ msgstr ""
msgid "Help for WCAG2 Audio Contrast Analyzer"
msgstr ""
-#: toolbars/ControlToolBar.cpp:82
-msgid "Control"
-msgstr ""
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
msgstr ""
#: effects/Contrast.cpp:328 effects/Contrast.cpp:336 effects/Contrast.cpp:344
@@ -4585,18 +4693,6 @@ msgstr ""
msgid "Data gathered"
msgstr ""
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr ""
-
#: effects/DtmfGen.cpp:47
msgid "DTMF Tone Generator"
msgstr ""
@@ -4656,8 +4752,7 @@ msgstr ""
msgid "Applied effect: %s delay = %f seconds, decay factor = %f"
msgstr ""
-#: ../src/effects/Echo.cpp:39
-#: ../src/effects/Echo.cpp:177
+#: ../src/effects/Echo.cpp:39 ../src/effects/Echo.cpp:177
msgid "Echo"
msgstr "Ecou"
@@ -4689,8 +4784,7 @@ msgstr ""
msgid "Previewing"
msgstr ""
-#: ../src/ControlToolBar.cpp:721
-#: ../src/effects/Effect.cpp:329
+#: ../src/ControlToolBar.cpp:721 ../src/effects/Effect.cpp:329
msgid "Error while opening sound device. Please check the output device settings and the project sample rate."
msgstr ""
@@ -4723,6 +4817,10 @@ msgstr ""
msgid "custom"
msgstr ""
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr ""
+
#: effects/Equalization.cpp:971
msgid "Equalization, by Martyn Shaw && Mitch Golden"
msgstr ""
@@ -4923,10 +5021,6 @@ msgstr ""
msgid "Analyser"
msgstr ""
-#: toolbars/MixerToolBar.cpp:58
-msgid "Mixer"
-msgstr ""
-
#: effects/LoadEffects.cpp:116
msgid "Simulator"
msgstr ""
@@ -5162,10 +5256,6 @@ msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr ""
#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
-msgid "false"
-msgstr ""
-
-#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
msgid "true"
msgstr ""
@@ -5223,8 +5313,7 @@ msgstr ""
msgid "Dry Wet"
msgstr ""
-#: ../src/effects/Phaser.cpp:497
-#: ../src/effects/Wahwah.cpp:468
+#: ../src/effects/Phaser.cpp:497 ../src/effects/Wahwah.cpp:468
msgid "LFO Frequency (Hz):"
msgstr ""
@@ -5232,8 +5321,7 @@ msgstr ""
msgid "LFO frequency in hertz"
msgstr ""
-#: ../src/effects/Phaser.cpp:513
-#: ../src/effects/Wahwah.cpp:484
+#: ../src/effects/Phaser.cpp:513 ../src/effects/Wahwah.cpp:484
msgid "LFO Start Phase (deg.):"
msgstr ""
@@ -5292,8 +5380,7 @@ msgstr "Repetat de %d ori"
msgid "Tracks are too long to repeat the selection."
msgstr "Piesele sunt prea lungi pentru a repeta selecţia"
-#: ../src/effects/Repeat.cpp:58
-#: ../src/effects/Repeat.cpp:62
+#: ../src/effects/Repeat.cpp:58 ../src/effects/Repeat.cpp:62
msgid "Repeat"
msgstr "RepetÄ"
@@ -5306,8 +5393,7 @@ msgstr "NumÄrul de repetiÅ£ii:"
msgid "New selection length: hh:mm:ss"
msgstr ""
-#: ../src/effects/Repeat.cpp:241
-#: ../src/effects/Repeat.cpp:280
+#: ../src/effects/Repeat.cpp:241 ../src/effects/Repeat.cpp:280
msgid "New selection length: "
msgstr ""
@@ -5518,20 +5604,37 @@ msgstr ""
msgid "Truncate Silence"
msgstr ""
-#: effects/TruncSilence.cpp:346
-msgid "Max silence duration:"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr ""
+
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
msgstr ""
#: prefs/AudioIOPrefs.cpp:175 prefs/AudioIOPrefs.cpp:178
msgid "milliseconds"
msgstr ""
+#: effects/TruncSilence.cpp:346
+msgid "Max silence duration:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ""
+
#: effects/TruncSilence.cpp:351
msgid "Threshold for silence:"
msgstr ""
-#: effects/TruncSilence.cpp:375
-msgid " Duration must be at least 1 millisecond"
+#: effects/TruncSilence.cpp:506
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
msgstr ""
#: BatchCommands.cpp:236 effects/TruncSilence.cpp:84 effects/TruncSilence.h:29
@@ -5542,17 +5645,56 @@ msgstr ""
msgid "Truncating Silence..."
msgstr ""
-#: ../src/effects/VST/VSTEffect.cpp:180
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "Ãmi pare rÄu, efectele VST nu pot fi aplicate pe piesele unde canalele individuale nu sunt la fel."
+#: ../src/effects/ladspa/LadspaEffect.cpp:452
+msgid "Effect Settings"
+msgstr "SetÄrile efectului"
+
+#: ../src/effects/ladspa/LadspaEffect.cpp:435
+#: ../src/effects/ladspa/LadspaEffect.cpp:443
+#: ../src/prefs/QualityPrefs.cpp:160
+msgid "None"
+msgstr "Nimic"
-#: ../src/effects/VST/VSTEffect.cpp:196
-msgid "Can't process replacing"
-msgstr "Nu se poate procesa înlocuirea"
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
-#: ../src/effects/VST/VSTEffect.cpp:410
-msgid "VST Plug-in parameters:"
-msgstr "Parametri Plug-in-ului VST:"
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr ""
#: ../src/effects/Wahwah.cpp:41
#, c-format
@@ -5600,22 +5742,11 @@ msgstr "se adaugÄ efectul: %s"
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr ""
-#: ../src/effects/ladspa/LadspaEffect.cpp:435
-#: ../src/effects/ladspa/LadspaEffect.cpp:443
-#: ../src/prefs/QualityPrefs.cpp:160
-msgid "None"
-msgstr "Nimic"
-
#: ../src/effects/ladspa/LadspaEffect.cpp:437
msgid "Author: "
msgstr "Autor:"
-#: ../src/effects/ladspa/LadspaEffect.cpp:452
-msgid "Effect Settings"
-msgstr "SetÄrile efectului"
-
-#: ../src/effects/Silence.cpp:127
-#: ../src/effects/ToneGen.cpp:306
+#: ../src/effects/Silence.cpp:127 ../src/effects/ToneGen.cpp:306
msgid "Length (seconds)"
msgstr "Lungime (secunde)"
@@ -5806,9 +5937,21 @@ msgstr "Se exportÄ Ã®ntregul fiÅier folosind un encoder linie de comandÄ"
msgid "Command Output"
msgstr ""
-#: export/ExportFFmpeg.cpp:59
+#: export/ExportFFmpeg.cpp:61
msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
#: export/ExportFFmpeg.cpp:394
@@ -5876,6 +6019,10 @@ msgstr ""
msgid "AAC Export Setup"
msgstr ""
+#: export/ExportOGG.cpp:86
+msgid "Quality:"
+msgstr ""
+
#: export/ExportFFmpegDialogs.cpp:217
msgid "Specify AMR-NB Options"
msgstr ""
@@ -6009,12 +6156,8 @@ msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n
"Recommended - 192000"
msgstr ""
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr ""
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid "Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
@@ -6033,10 +6176,10 @@ msgstr ""
msgid "Cutoff Bandwidth:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:947
+#: export/ExportFFmpegDialogs.cpp:936
msgid "Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:949
@@ -6225,12 +6368,12 @@ msgstr ""
msgid "AC3 Files (FFmpeg)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:56
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:57
@@ -6341,6 +6484,17 @@ msgstr ""
msgid "FLAC Files"
msgstr ""
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
#: export/ExportFLAC.cpp:93
msgid "Exporting the selected audio as FLAC"
msgstr ""
@@ -6365,8 +6519,7 @@ msgstr ""
msgid "Cannot export MP2 with this sample rate and bit rate"
msgstr ""
-#: ../src/export/ExportMP3.cpp:1345
-#: ../src/export/ExportOGG.cpp:53
+#: ../src/export/ExportMP3.cpp:1345 ../src/export/ExportOGG.cpp:53
msgid "Unable to open target file for writing"
msgstr "FiÅierul Å£intÄ nu a putut fi deschis pentru scriere"
@@ -6565,8 +6718,7 @@ msgstr ""
msgid "MP3 export library not found"
msgstr ""
-#: ../src/export/ExportMultiple.cpp:367
-#: ../src/export/ExportMultiple.cpp:474
+#: ../src/export/ExportMultiple.cpp:367 ../src/export/ExportMultiple.cpp:474
#: ../src/export/ExportMultiple.cpp:562
msgid "Export Multiple"
msgstr ""
@@ -6594,11 +6746,6 @@ msgstr ""
msgid "Export location:"
msgstr "Locaţia exportului:"
-#: ../src/export/ExportMultiple.cpp:600
-#: ../src/prefs/DirectoriesPrefs.cpp:82
-msgid "Choose..."
-msgstr "Alegeţi..."
-
#: export/ExportMultiple.cpp:205
msgid "Create"
msgstr ""
@@ -6623,10 +6770,6 @@ msgstr ""
msgid "First file name"
msgstr ""
-#: ../src/export/ExportMultiple.cpp:636
-msgid "Tracks"
-msgstr "Piese"
-
#: ../src/export/ExportMultiple.cpp:646
msgid "Name files:"
msgstr ""
@@ -6660,25 +6803,44 @@ msgstr ""
msgid "Choose a location to save the exported files"
msgstr "Alege o locaÅ£ie unde vor fi salvate fiÅierele exportate."
-#: export/ExportMultiple.cpp:480
+#: export/ExportMultiple.cpp:524
#, c-format
-msgid "\"%s\" doesn't exist.\n"
-"\n"
-"Would you like to create it?"
+msgid "Successfully exported the following %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:637 export/ExportMultiple.cpp:772
-msgid "Edit metadata"
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:590
+#: export/ExportMultiple.cpp:527
#, c-format
-msgid "Successfully exported %d file(s)."
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
msgstr ""
-#: export/ExportMultiple.cpp:597
+#: export/ExportMultiple.cpp:480
#, c-format
-msgid "Something went wrong after exporting %d file(s)."
+msgid "\"%s\" doesn't exist.\n"
+"\n"
+"Would you like to create it?"
+msgstr ""
+
+#: export/ExportMultiple.cpp:637 export/ExportMultiple.cpp:772
+msgid "Edit metadata"
msgstr ""
#: export/ExportMultiple.cpp:881
@@ -6762,7 +6924,6 @@ msgstr ""
#. i18n-hint: %s will be the error message from libsndfile
#: export/ExportPCM.cpp:436
-#, c-format
#, fuzzy
msgid "Error (file may not have been written): %s"
msgstr "Eroare (este posibil ca fiÅierul sÄ nu fi fost scris): %s"
@@ -6928,8 +7089,11 @@ msgstr ""
msgid "FLAC files"
msgstr ""
-#: ../src/import/ImportLOF.cpp:151
-#: ../src/import/ImportLOF.cpp:177
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr ""
+
+#: ../src/import/ImportLOF.cpp:151 ../src/import/ImportLOF.cpp:177
msgid "List of Files in basic text format"
msgstr ""
@@ -6939,10 +7103,8 @@ msgid "Invalid window offset in LOF file."
msgstr ""
#. i18n-hint: You do not need to translate "LOF"
-#: ../src/import/ImportLOF.cpp:270
-#: ../src/import/ImportLOF.cpp:291
-#: ../src/import/ImportLOF.cpp:364
-#: ../src/import/ImportLOF.cpp:384
+#: ../src/import/ImportLOF.cpp:270 ../src/import/ImportLOF.cpp:291
+#: ../src/import/ImportLOF.cpp:364 ../src/import/ImportLOF.cpp:384
msgid "LOF Error"
msgstr "Eroare LOF"
@@ -7084,131 +7246,59 @@ msgstr ""
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr ""
-#: ../src/prefs/PrefsDialog.cpp:84
-msgid "Audio I/O"
-msgstr "Audio I/O"
-
-#: ../src/prefs/AudioIOPrefs.cpp:212
-msgid "1 (Mono)"
-msgstr "1 (Mono)"
-
-#: ../src/prefs/AudioIOPrefs.cpp:213
-msgid "2 (Stereo)"
-msgstr "2 (Stereo)"
-
-#: ../src/prefs/AudioIOPrefs.cpp:80
-msgid "Playback"
-msgstr "Redare"
-
-#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
-#: toolbars/DeviceToolBar.cpp:54
-msgid "Device"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:122
-msgid "Using:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:123
-msgid "Portaudio v"
-msgstr ""
-
-#: ../src/prefs/AudioIOPrefs.cpp:148
-msgid "Recording"
-msgstr "Se înregistreazÄ"
-
-#: prefs/AudioIOPrefs.cpp:139
-msgid "Channels"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:145
-msgid "Playthrough"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:194
-msgid "Effects Preview"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:165
-msgid "Length of preview:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:158
-msgid "Cut Preview"
+#: prefs/BatchPrefs.cpp:53 prefs/BatchPrefs.cpp:54
+msgid "Batch"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:173
-msgid "Preview before cut region:"
+#: prefs/BatchPrefs.cpp:75 prefs/GUIPrefs.cpp:70
+msgid "Behaviors"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:175
-msgid "Preview after cut region:"
+#: prefs/BatchPrefs.cpp:80
+msgid "&Don't apply effects in batch mode"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:168
-msgid "Latency"
+#: prefs/BatchPrefs.cpp:83
+msgid "Cl&eanSpeech Mode (Customized GUI)"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:195
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:198
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr ""
+#: ../src/prefs/PrefsDialog.cpp:89
+msgid "Interface"
+msgstr "InterfaÅ£Ä"
-#: prefs/AudioIOPrefs.cpp:197
-msgid "Seek Time when playing"
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:187
-msgid "Short period:"
+#: prefs/AudioIOPrefs.cpp:122
+msgid "Using:"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:189
-msgid "Long period:"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:80
+msgid "Playback"
+msgstr "Redare"
-#: prefs/BatchPrefs.cpp:53 prefs/BatchPrefs.cpp:54
-msgid "Batch"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:148
+msgid "Recording"
+msgstr "Se înregistreazÄ"
-#: prefs/BatchPrefs.cpp:75 prefs/GUIPrefs.cpp:70
-msgid "Behaviors"
+#: prefs/AudioIOPrefs.cpp:139
+msgid "Channels"
msgstr ""
-#: prefs/BatchPrefs.cpp:80
-msgid "&Don't apply effects in batch mode"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:212
+msgid "1 (Mono)"
+msgstr "1 (Mono)"
-#: prefs/BatchPrefs.cpp:83
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr ""
+#: ../src/prefs/AudioIOPrefs.cpp:213
+msgid "2 (Stereo)"
+msgstr "2 (Stereo)"
-#: ../src/prefs/PrefsDialog.cpp:88
-#: ../src/prefs/PrefsDialog.cpp:216
+#: ../src/prefs/PrefsDialog.cpp:88 ../src/prefs/PrefsDialog.cpp:216
msgid "Directories"
msgstr "Directoare"
@@ -7224,34 +7314,31 @@ msgstr "Locaţia:"
msgid "Free Space:"
msgstr "Spaţiu liber:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr ""
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr ""
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
+#: prefs/DirectoriesPrefs.cpp:110
+msgid "Audio cache"
msgstr ""
#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
+msgid "Play and/or record using RAM (useful for slow drives)"
msgstr ""
-#: prefs/DirectoriesPrefs.cpp:110
-msgid "Audio cache"
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
msgstr ""
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
#: ../src/prefs/DirectoriesPrefs.cpp:135
msgid "Choose a location to place the temporary directory"
msgstr "Alege o locaÅ£ie unde vrei sa plasezi directorul fiÅierelor temporare."
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: ../src/prefs/DirectoriesPrefs.cpp:181
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -7270,220 +7357,141 @@ msgstr "Ãn directorul %s nu se poate scrie"
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "Schimbarile directorului temporar nu vor avea efect pana Audacity nu este restartat"
-#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
-msgid "Import / Export"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:84
-msgid "MP3 Export Library"
-msgstr ""
-
-#: ../src/prefs/FileFormatPrefs.cpp:180
-msgid "MP3 Library Version:"
-msgstr "Versiunea librÄriilor MP3:"
-
-#: prefs/FileFormatPrefs.cpp:93
-msgid "MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:98
-msgid "LAME MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
-msgid "&Download"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:136
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:137
-msgid "When importing audio files"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:140
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
+#: prefs/GUIPrefs.cpp:42
+msgid "In Browser"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:141
-msgid "&Read uncompressed audio files directly from the original (faster)"
+#: prefs/GUIPrefs.cpp:43
+msgid "From Internet"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:143
-msgid "&Normalize all tracks in project"
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:132
-msgid "When saving a project that depends on other audio files"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:87
-msgid "Always © all audio into project (safest)"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:88
-msgid "&Do not copy any audio"
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:135
-msgid "&Ask user"
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:93
-msgid "When exporting tracks to an audio file"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:144
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:97
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
-msgstr ""
-
-#: prefs/BatchPrefs.cpp:91
-msgid "S&how Metadata Editor prior to export step"
+#: ../src/prefs/GUIPrefs.cpp:150
+msgid "-36 dB (shallow range for high-amplitude editing)"
msgstr ""
-#: ../src/prefs/PrefsDialog.cpp:89
-msgid "Interface"
-msgstr "InterfaÅ£Ä"
-
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
+#: ../src/prefs/GUIPrefs.cpp:157
+msgid "-48 dB (PCM range of 8 bit samples)"
msgstr ""
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
+#: prefs/GUIPrefs.cpp:143
+msgid "-60 dB (PCM range of 10 bit samples)"
msgstr ""
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
+#: ../src/prefs/GUIPrefs.cpp:164
+msgid "-96 dB (PCM range of 16 bit samples)"
msgstr ""
-#: prefs/GUIPrefs.cpp:72
-msgid "&Update display while playing"
-msgstr ""
+#: ../src/prefs/GUIPrefs.cpp:171
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 dB (apozimativ limita auzului uman)"
-#: prefs/GUIPrefs.cpp:96
-msgid "Cl&osing last window quits Audacity"
+#: ../src/prefs/GUIPrefs.cpp:178
+msgid "-145 dB (PCM range of 24 bit samples)"
msgstr ""
-#: prefs/GUIPrefs.cpp:76
-msgid "Enable &dragging of left and right selection edges"
+#: prefs/SpectrumPrefs.cpp:96
+msgid "Display"
msgstr ""
#: prefs/GUIPrefs.cpp:100
msgid "Er&gonomic order of audio I/O buttons"
msgstr ""
-#: prefs/GUIPrefs.cpp:80
-msgid "Automatically &fit tracks vertically zoomed"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
msgstr ""
-#: prefs/GUIPrefs.cpp:104
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
msgstr ""
-#: prefs/GUIPrefs.cpp:90
-msgid "Editing a &clip can move other clips"
+#: prefs/GUIPrefs.cpp:167
+msgid "Help:"
msgstr ""
-#: prefs/GUIPrefs.cpp:88
-msgid "&Select all audio in project, if none selected"
+#: prefs/GUIPrefs.cpp:96
+msgid "Cl&osing last window quits Audacity"
msgstr ""
#: prefs/GUIPrefs.cpp:90
msgid "&Beep on completion of longer activities"
msgstr ""
-#: prefs/BatchPrefs.cpp:87 prefs/GUIPrefs.cpp:94
-msgid "Show / Hide"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:96
-msgid "Enable cut &lines"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:98
-msgid "Show warnings about &temp files"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:122
-msgid "Show &Welcome Message at program start up"
-msgstr ""
-
#: prefs/GUIPrefs.cpp:126
msgid "Modes"
msgstr ""
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
+msgstr ""
+
#: prefs/GUIPrefs.cpp:129
msgid "Don't a&pply effects in batch mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
+#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
+msgid "Import / Export"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:150
-msgid "-36 dB (shallow range for high-amplitude editing)"
+#: prefs/FileFormatPrefs.cpp:137
+msgid "When importing audio files"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:157
-msgid "-48 dB (PCM range of 8 bit samples)"
+#: prefs/FileFormatPrefs.cpp:140
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
msgstr ""
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
+#: prefs/FileFormatPrefs.cpp:141
+msgid "&Read uncompressed audio files directly from the original (faster)"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:164
-msgid "-96 dB (PCM range of 16 bit samples)"
+#: prefs/FileFormatPrefs.cpp:143
+msgid "&Normalize all tracks in project"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:171
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 dB (apozimativ limita auzului uman)"
-
-#: ../src/prefs/GUIPrefs.cpp:178
-msgid "-145 dB (PCM range of 24 bit samples)"
+#: prefs/FileFormatPrefs.cpp:93
+msgid "When exporting tracks to an audio file"
msgstr ""
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
+#: prefs/FileFormatPrefs.cpp:144
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
msgstr ""
-#: prefs/GUIPrefs.cpp:164
-msgid "Other interface choices"
+#: prefs/FileFormatPrefs.cpp:97
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
msgstr ""
-#: prefs/GUIPrefs.cpp:167
-msgid "Help:"
+#: prefs/BatchPrefs.cpp:91
+msgid "S&how Metadata Editor prior to export step"
msgstr ""
-#: prefs/GUIPrefs.cpp:168
-msgid "Solo Button:"
+#: prefs/ImportExportPrefs.cpp:84
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
msgstr ""
#: ../src/prefs/PrefsDialog.cpp:90
@@ -7514,17 +7522,22 @@ msgstr ""
msgid "&Defaults"
msgstr ""
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr ""
+
#: ../src/prefs/KeyConfigPrefs.cpp:79
msgid "Key Combination"
msgstr "Combinaţia de taste"
-#: ../src/prefs/KeyConfigPrefs.cpp:159
-msgid "Export Keyboard Shortcuts As:"
-msgstr "ExporteazÄ scurtÄturile din tastaturÄ ca Åi:"
+#: ../src/EditToolBar.cpp:159
+msgid "Undo"
+msgstr "DesfÄ"
-#: ../src/prefs/KeyConfigPrefs.cpp:174
-msgid "Error saving keyboard shortcuts"
-msgstr "Eroare la salvarea scurtÄturilor tastaturii"
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr ""
#: ../src/prefs/KeyConfigPrefs.cpp:188
msgid "Select an XML file containing Audacity keyboard shortcuts..."
@@ -7534,6 +7547,14 @@ msgstr "SelecteazÄ un fiÅier XML care conÅ£ine scurtÄturile din tastaturÄ al
msgid "Error loading keyboard shortcuts"
msgstr "eroare la încÄrcarea scurtÄturilor din tastaturÄ"
+#: ../src/prefs/KeyConfigPrefs.cpp:159
+msgid "Export Keyboard Shortcuts As:"
+msgstr "ExporteazÄ scurtÄturile din tastaturÄ ca Åi:"
+
+#: ../src/prefs/KeyConfigPrefs.cpp:174
+msgid "Error saving keyboard shortcuts"
+msgstr "Eroare la salvarea scurtÄturilor tastaturii"
+
#: prefs/KeyConfigPrefs.cpp:239
#, c-format
msgid "The keyboard shortcut '%s' is already assigned to:\n"
@@ -7541,9 +7562,61 @@ msgid "The keyboard shortcut '%s' is already assigned to:\n"
"'%s'"
msgstr ""
-#: ../src/EditToolBar.cpp:159
-msgid "Undo"
-msgstr "DesfÄ"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:84
+msgid "MP3 Export Library"
+msgstr ""
+
+#: ../src/prefs/FileFormatPrefs.cpp:180
+msgid "MP3 Library Version:"
+msgstr "Versiunea librÄriilor MP3:"
+
+#: prefs/FileFormatPrefs.cpp:93
+msgid "MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:98
+msgid "LAME MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
+msgid "&Download"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:109
+msgid "FFmpeg Library Version:"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
+msgid "FFmpeg Library:"
+msgstr ""
+
+#: ../src/prefs/PrefsDialog.cpp:84
+msgid "Audio I/O"
+msgstr "Audio I/O"
+
+#: prefs/AudioIOPrefs.cpp:123
+msgid "Portaudio v"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:145
+msgid "Playthrough"
+msgstr ""
#: prefs/AudioIOPrefs.cpp:147
#, fuzzy
@@ -7558,6 +7631,10 @@ msgstr ""
msgid "&Software Playthrough (Play new track while recording it)"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:158
+msgid "Cut Preview"
+msgstr ""
+
#: prefs/MidiIOPrefs.cpp:160
msgid "Play before cut region:"
msgstr ""
@@ -7566,6 +7643,10 @@ msgstr ""
msgid "Play after cut region:"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:168
+msgid "Latency"
+msgstr ""
+
#: prefs/AudioIOPrefs.cpp:174
msgid "Audio to buffer:"
msgstr ""
@@ -7578,6 +7659,18 @@ msgstr ""
msgid "Seek Time"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:187
+msgid "Short period:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:189
+msgid "Long period:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:194
+msgid "Effects Preview"
+msgstr ""
+
#: prefs/MidiIOPrefs.cpp:196
msgid "Play when previewing:"
msgstr ""
@@ -7602,14 +7695,12 @@ msgstr ""
msgid "Buttons"
msgstr "Butoane"
-#: ../src/prefs/MousePrefs.cpp:88
-#: ../src/prefs/MousePrefs.cpp:92
+#: ../src/prefs/MousePrefs.cpp:88 ../src/prefs/MousePrefs.cpp:92
#: ../src/prefs/MousePrefs.cpp:100
msgid "Left-Click"
msgstr ""
-#: ../src/prefs/MousePrefs.cpp:88
-#: ../src/prefs/MousePrefs.cpp:89
+#: ../src/prefs/MousePrefs.cpp:88 ../src/prefs/MousePrefs.cpp:89
#: ../src/prefs/MousePrefs.cpp:90
msgid "Select"
msgstr "SelecteazÄ"
@@ -7618,10 +7709,8 @@ msgstr "SelecteazÄ"
msgid "Set Selection Point"
msgstr ""
-#: ../src/prefs/MousePrefs.cpp:89
-#: ../src/prefs/MousePrefs.cpp:93
-#: ../src/prefs/MousePrefs.cpp:97
-#: ../src/prefs/MousePrefs.cpp:98
+#: ../src/prefs/MousePrefs.cpp:89 ../src/prefs/MousePrefs.cpp:93
+#: ../src/prefs/MousePrefs.cpp:97 ../src/prefs/MousePrefs.cpp:98
#: ../src/prefs/MousePrefs.cpp:102
msgid "Left-Drag"
msgstr ""
@@ -7655,10 +7744,8 @@ msgid "Set Selection Point and Play"
msgstr ""
# MÄrire
-#: ../src/prefs/MousePrefs.cpp:92
-#: ../src/prefs/MousePrefs.cpp:93
-#: ../src/prefs/MousePrefs.cpp:94
-#: ../src/prefs/MousePrefs.cpp:95
+#: ../src/prefs/MousePrefs.cpp:92 ../src/prefs/MousePrefs.cpp:93
+#: ../src/prefs/MousePrefs.cpp:94 ../src/prefs/MousePrefs.cpp:95
msgid "Zoom"
msgstr "Zoom"
@@ -7734,10 +7821,8 @@ msgstr ""
msgid "Change Sample"
msgstr ""
-#: ../src/prefs/MousePrefs.cpp:100
-#: ../src/prefs/MousePrefs.cpp:101
-#: ../src/prefs/MousePrefs.cpp:102
-#: ../src/prefs/MousePrefs.cpp:103
+#: ../src/prefs/MousePrefs.cpp:100 ../src/prefs/MousePrefs.cpp:101
+#: ../src/prefs/MousePrefs.cpp:102 ../src/prefs/MousePrefs.cpp:103
msgid "Pencil"
msgstr "Creion"
@@ -7757,10 +7842,8 @@ msgstr ""
msgid "Change ONE Sample only"
msgstr ""
-#: ../src/prefs/MousePrefs.cpp:105
-#: ../src/prefs/MousePrefs.cpp:106
-#: ../src/prefs/MousePrefs.cpp:107
-#: ../src/prefs/MousePrefs.cpp:108
+#: ../src/prefs/MousePrefs.cpp:105 ../src/prefs/MousePrefs.cpp:106
+#: ../src/prefs/MousePrefs.cpp:107 ../src/prefs/MousePrefs.cpp:108
msgid "Multi"
msgstr ""
@@ -7774,8 +7857,7 @@ msgstr "la fel cu unealta de selectare"
msgid "same as zoom tool"
msgstr "La fel cu unealta de mÄrire"
-#: ../src/prefs/MousePrefs.cpp:110
-#: ../src/prefs/MousePrefs.cpp:111
+#: ../src/prefs/MousePrefs.cpp:110 ../src/prefs/MousePrefs.cpp:111
msgid "Any"
msgstr "Orice"
@@ -7803,10 +7885,62 @@ msgstr ""
msgid "Zoom in or out"
msgstr "MÄreÅte sau MicÅoreazÄ"
+#: prefs/AudioIOPrefs.cpp:165
+msgid "Length of preview:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:173
+msgid "Preview before cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:175
+msgid "Preview after cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:197
+msgid "Seek Time when playing"
+msgstr ""
+
#: ../src/prefs/PrefsDialog.cpp:52
msgid "Audacity Preferences"
msgstr "SetÄri Audacity"
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:132
+msgid "When saving a project that depends on other audio files"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:87
+msgid "Always © all audio into project (safest)"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:88
+msgid "&Do not copy any audio"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:135
+msgid "&Ask user"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr ""
+
#: ../src/prefs/QualityPrefs.cpp:161
msgid "Rectangle"
msgstr ""
@@ -7831,44 +7965,44 @@ msgstr ""
msgid "Default Sample Format:"
msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:147
-msgid "High-quality sample rate converter:"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+msgid "Sample Rate Converter:"
msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:171
-msgid "Real-time dither:"
+#: prefs/QualityPrefs.cpp:164
+msgid "Dither"
msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:186
-msgid "High-quality dither:"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
msgstr ""
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
+#: prefs/AudioIOPrefs.cpp:149
+msgid "Overdub: &Play other tracks while recording new one"
msgstr ""
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
+#: prefs/AudioIOPrefs.cpp:150
+msgid "&Hardware Playthrough: Play new track while recording it"
msgstr ""
-#: prefs/QualityPrefs.cpp:164
-msgid "Dither"
+#: prefs/AudioIOPrefs.cpp:157
+msgid "&Software Playthrough: Play new track while recording or monitoring"
msgstr ""
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
+#: prefs/AudioIOPrefs.cpp:160
+msgid "(uncheck when recording \"stereo mix\")"
msgstr ""
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
msgstr ""
-#: prefs/SmartRecordPrefs.cpp:54 prefs/SmartRecordPrefs.cpp:55
-msgid "Smart Recording"
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
msgstr ""
#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
@@ -7883,18 +8017,54 @@ msgstr ""
msgid "Spectrograms"
msgstr "Spectrograme"
-#: ../src/prefs/SpectrumPrefs.cpp:70
-msgid "FFT Size"
-msgstr "MÄrimea FFT"
-
#: prefs/SpectrumPrefs.cpp:75
msgid "8 - most wideband"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
#: ../src/prefs/SpectrumPrefs.cpp:40
msgid "256 - default"
msgstr "256 - implicit"
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:107
msgid "32768 - most narrowband"
msgstr ""
@@ -7903,20 +8073,24 @@ msgstr ""
msgid "4096 - most narrowband"
msgstr "4096 - laÅ£imea de bandÄ cea mai îngustÄ"
-#: prefs/SpectrumPrefs.cpp:90
-msgid "Window type:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:125
-msgid "FFT Skip Points"
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:96
-msgid "Display"
+#: prefs/SpectrumPrefs.cpp:93
+msgid "Window type"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:125
+msgid "FFT Skip Points"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:100
-msgid "&Grayscale"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
msgstr ""
#: prefs/SpectrumPrefs.cpp:103
@@ -7927,16 +8101,16 @@ msgstr ""
msgid "Maximum Frequency (Hz):"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
msgstr ""
#: prefs/SpectrumPrefs.cpp:165
@@ -7947,6 +8121,14 @@ msgstr ""
msgid "Max. Number of Notes (1..128):"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:161
+msgid "&Find Notes"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Quantize Notes"
+msgstr ""
+
#: ../src/prefs/SpectrumPrefs.cpp:148
msgid "The maximum frequency must be an integer"
msgstr "FrecvenÅ£a maximÄ trebuie sÄ fie un numÄr mai mare ca 0."
@@ -7963,18 +8145,57 @@ msgstr ""
msgid "Minimum frequency must be at least 0 Hz"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:226 prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
+#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:230
+msgid "The maximum number of notes must be in the range 1..128"
msgstr ""
#: prefs/ThemePrefs.cpp:61 prefs/ThemePrefs.cpp:62
msgid "Theme"
msgstr ""
+#: prefs/ThemePrefs.cpp:123
+msgid "Info"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:91
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#: prefs/ThemePrefs.cpp:90
msgid "Theme Cache - Images && Color"
msgstr ""
@@ -8003,78 +8224,94 @@ msgstr ""
msgid "Load Files"
msgstr ""
-#: prefs/ThemePrefs.cpp:123
-msgid "Info"
+#: prefs/GUIPrefs.cpp:50
+msgid "Simple"
msgstr ""
-#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
+#: prefs/GUIPrefs.cpp:72
+msgid "&Update display while playing"
msgstr ""
-#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
+#: prefs/GUIPrefs.cpp:80
+msgid "Automatically &fit tracks vertically zoomed"
msgstr ""
-#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
+#: prefs/TracksPrefs.cpp:88
+msgid "Default View Mode:"
msgstr ""
-#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:88
+msgid "&Select all audio in project, if none selected"
msgstr ""
-#: ../src/ControlToolBar.cpp:470
-msgid "Pause"
-msgstr "PauzÄ"
+#: prefs/GUIPrefs.cpp:96
+msgid "Enable cut &lines"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play"
+#: prefs/GUIPrefs.cpp:76
+msgid "Enable &dragging of left and right selection edges"
msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
+#: prefs/GUIPrefs.cpp:104
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
msgstr ""
-#: ../src/ControlToolBar.cpp:471
-msgid "Stop"
-msgstr "Stop"
+#: prefs/GUIPrefs.cpp:90
+msgid "Editing a &clip can move other clips"
+msgstr ""
-#: ../src/ControlToolBar.cpp:467
-msgid "Skip to Start"
-msgstr "Sari la Ãnceput"
+#: prefs/GUIPrefs.cpp:168
+msgid "Solo Button:"
+msgstr ""
-#: ../src/ControlToolBar.cpp:472
-msgid "Skip to End"
-msgstr "Sari la SfârÅit"
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:192
-msgid "Record (Shift for Append Record)"
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
msgstr ""
+#: ../src/Menus.cpp:561
+msgid "Pause"
+msgstr "PauzÄ"
+
+#: ../src/Menus.cpp:560
+msgid "Stop"
+msgstr "Stop"
+
#: toolbars/ControlToolBar.cpp:195
msgid "Clean Speech"
msgstr ""
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play (Shift for Loop Play)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:192
+msgid "Record (Shift for Append Record)"
+msgstr ""
+
#: toolbars/ControlToolBar.cpp:524 toolbars/ControlToolBar.cpp:776
msgid "Error while opening sound device. "
msgstr ""
@@ -8115,28 +8352,20 @@ msgstr "Zoom In"
msgid "Zoom Out"
msgstr "Zoom afarÄ"
-#: ../src/EditToolBar.cpp:170
-msgid "Zoom Toggle"
-msgstr ""
-
-#: toolbars/EditToolBar.cpp:160
-msgid "Fit Selection"
-msgstr ""
-
#: ../src/EditToolBar.cpp:174
msgid "Fit selection in window"
msgstr ""
-#: toolbars/EditToolBar.cpp:162
-msgid "Fit Project"
-msgstr ""
-
#: ../src/EditToolBar.cpp:176
msgid "Fit project in window"
msgstr ""
-#: toolbars/MeterToolBar.cpp:49
-msgid "Meter"
+#: toolbars/EditToolBar.cpp:160
+msgid "Fit Selection"
+msgstr ""
+
+#: toolbars/EditToolBar.cpp:162
+msgid "Fit Project"
msgstr ""
#: toolbars/MeterToolBar.cpp:79
@@ -8183,6 +8412,14 @@ msgstr ""
msgid "Input Source"
msgstr ""
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:75
msgid "Selection"
msgstr ""
@@ -8261,30 +8498,6 @@ msgstr ""
msgid "Click and drag to move a track in time"
msgstr "Click and Drag pentru a muta o piesÄ Ã®n timp"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr ""
-
-#: ../src/ControlToolBar.cpp:355
-msgid "Selection Tool"
-msgstr "Unealta de selecţie"
-
-#: ../src/ControlToolBar.cpp:356
-msgid "Envelope Tool"
-msgstr ""
-
-#: ../src/ControlToolBar.cpp:357
-msgid "Time Shift Tool"
-msgstr ""
-
-#: ../src/ControlToolBar.cpp:358
-msgid "Zoom Tool"
-msgstr "unealta Zoom"
-
-#: ../src/ControlToolBar.cpp:359
-msgid "Draw Tool"
-msgstr "Unealta de desenare"
-
#: ../src/ControlToolBar.cpp:360
msgid "Multi-Tool Mode"
msgstr ""
@@ -8293,22 +8506,10 @@ msgstr ""
msgid "Slide Tool"
msgstr ""
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr ""
-
-#: toolbars/TranscriptionToolBar.cpp:81
-msgid "Transcription"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:183
msgid "Play at selected speed"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:184
-msgid "Play-at-speed"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:190 toolbars/TranscriptionToolBar.cpp:195
msgid "Playback Speed"
msgstr ""
@@ -8317,74 +8518,38 @@ msgstr ""
msgid "Adjust left selection to next onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:201
-msgid "Left-to-On"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:203
msgid "Adjust right selection to previous offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:204
-msgid "Right-to-Off"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:206
msgid "Adjust left selection to next offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:207
-msgid "Left-to-Off"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:209
msgid "Adjust right selection to previous onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:210
-msgid "Right-to-On"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:212
msgid "Select region of sound around cursor"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:213
-msgid "Select-Sound"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:215
msgid "Select region of silence around cursor"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:216
-msgid "Select-Silence"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:218
msgid "Automatically make labels from words"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:219
-msgid "Make Labels"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:221
msgid "Add label at selection"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:222
-msgid "Add Label"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:224
msgid "Calibrate voicekey"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:225
-msgid "Calibrate"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:229
msgid "Adjust Sensitivity"
msgstr ""
@@ -8417,6 +8582,46 @@ msgstr ""
msgid "Key type"
msgstr ""
+#: toolbars/TranscriptionToolBar.cpp:184
+msgid "Play-at-speed"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:201
+msgid "Left-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:204
+msgid "Right-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:207
+msgid "Left-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:210
+msgid "Right-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:213
+msgid "Select-Sound"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:216
+msgid "Select-Silence"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:219
+msgid "Make Labels"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:222
+msgid "Add Label"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:225
+msgid "Calibrate"
+msgstr ""
+
#: ../src/widgets/AButton.cpp:181
msgid " (disabled)"
msgstr "(dezactivat)"
@@ -8430,14 +8635,12 @@ msgid "Button"
msgstr ""
#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
-#: ../src/widgets/ASlider.cpp:329
-#: ../src/widgets/Meter.cpp:165
+#: ../src/widgets/ASlider.cpp:329 ../src/widgets/Meter.cpp:165
msgid "L"
msgstr "S"
#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
-#: ../src/widgets/ASlider.cpp:332
-#: ../src/widgets/Meter.cpp:167
+#: ../src/widgets/ASlider.cpp:332 ../src/widgets/Meter.cpp:167
msgid "R"
msgstr "D"
@@ -8720,3 +8923,15 @@ msgstr ""
msgid "Could not load file: \"%s\""
msgstr ""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
+
diff --git a/locale/ru.po b/locale/ru.po
index 6828ce0..feb444b 100644
--- a/locale/ru.po
+++ b/locale/ru.po
@@ -1,16 +1,17 @@
-# Russian translation of Audacity 1.3.6
+# Russian translation of Audacity 1.3.8
# Copyright (C) 2002,2003, 2004, 2005, 2006 Free Software Foundation, Inc.
-# Alexandre Prokoudine <avp at altlinux.ru>, 2002.#: ../src/ToolBar.cpp:419.
+# Alexandre Prokoudine <avp at altlinux.ru>, 2002.
# Alexandre Prokoudine <avp at altlinux.ru>, 2003, 2004.
# Alexandre Prokoudine <techwriter at land.ru>, 2004.
# Alexandre Prokoudine <alexandre.prokoudine at gmail.com>, 2005, 2006.
msgid ""
-msgstr "Project-Id-Version: ru\n"
+msgstr ""
+"Project-Id-Version: ru\n"
"Report-Msgid-Bugs-To: audacity-translation at lists.sourceforge.net\n"
"POT-Creation-Date: 2008-12-06 21:32+0300\n"
-"PO-Revision-Date: 2008-12-24 12:47+0300\n"
+"PO-Revision-Date: 2009-07-14 14:18+0300\n"
"Last-Translator: Alexandre Prokoudine <alexandre.prokoudine at gmail.com>\n"
-"Language-Team: Russian <gnome-cyr at gnome.org>\n"
+"Language-Team: Russian <gnome-cyr at lists.gnome.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -20,29 +21,24 @@ msgstr "Project-Id-Version: ru\n"
"X-Poedit-Country: RUSSIAN FEDERATION\n"
#: AboutDialog.cpp:143
-#: AudacityApp.cpp:812
-#: Menus.cpp:955
-msgid "&About Audacity..."
-msgstr "&РпÑогÑамме..."
+msgid "About Audacity..."
+msgstr "РпÑогÑамме"
#: AboutDialog.cpp:157
msgid "OK... Audacious!"
-msgstr "OK... Audacious!"
+msgstr "ÐÐ¾Ñ Ð¸ оÑлиÑно!"
#: AboutDialog.cpp:175
-#, fuzzy
msgid "Audacity is a free program written by a team of volunteer <a href=\"http://audacity.sourceforge.net/community/developers\">developers</a> around the world. We are grateful to <a href=\"http://sourceforge.net\">SourceForge.net</a> for our project hosting. Audacity is available for Windows 98 and later, Mac OS X, Linux and other Unix-like operating systems. Older versions of Audacity are available for Mac OS 9."
-msgstr "Audacity â ÑÑо ÑÐ²Ð¾Ð±Ð¾Ð´Ð½Ð°Ñ Ð¿ÑогÑамма, ÑÐ¾Ð·Ð´Ð°Ð½Ð½Ð°Ñ Ð³ÑÑппой пÑогÑаммиÑÑов на базе SourceForge â онлайнового ÑеÑвиÑа Ð´Ð»Ñ Ð¿ÑоекÑов Ñ Ð¾ÑкÑÑÑÑм иÑÑ
однÑм кодом. ÐÑогÑамма напиÑана на оÑнове кÑоÑÑплаÑÑоÑменной ÑеÑ
нологии wxWindows и доÑÑÑпна Ð´Ð»Ñ Ð¾Ð¿ÐµÑаÑионнÑÑ
ÑиÑÑем Windows 98 и новее, MacOS X, Linux и пÑоÑиÑ
Unix-подобнÑÑ
ÑиÑÑем. СÑÑеÑÑвÑÐµÑ Ð±Ð¾Ð»ÐµÐµ ÑÑаÑÐ°Ñ Ð²ÐµÑÑÐ¸Ñ Ð´Ð»Ñ Mac OS 9."
+msgstr "Audacity â ÑвободнÑй звÑковой ÑедакÑоÑ, ÑозданнÑй <a href=\"http://audacity.sourceforge.net/community/developers\">гÑÑппой пÑогÑаммиÑÑов</a> из ÑазнÑÑ
ÑÑÑан миÑа. ÐÑ Ð±Ð»Ð°Ð³Ð¾Ð´Ð°Ñим <a href=\"http://sourceforge.net\">SourceForge.net</a> за Ñ
оÑÑинг наÑего пÑоекÑа. ÐÑогÑамма доÑÑÑпна Ð´Ð»Ñ Ð¾Ð¿ÐµÑаÑионнÑÑ
ÑиÑÑем Windows 98 и новее, Mac OS X, Linux и пÑоÑиÑ
Unix-подобнÑÑ
ÑиÑÑем. СÑÑеÑÑвÑÐµÑ Ð±Ð¾Ð»ÐµÐµ ÑÑаÑÐ°Ñ Ð²ÐµÑÑÐ¸Ñ Ð´Ð»Ñ Mac OS 9."
#: AboutDialog.cpp:179
-#, fuzzy
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
-msgstr "ÐÑо беÑа-веÑÑÐ¸Ñ Ð¿ÑогÑаммÑ. Рней могÑÑ Ð±ÑÑÑ ÐºÐ°Ðº оÑибки, Ñак и невоплоÑеннÑе ÑÑнкÑии. ÐÑодÑкÑивноÑÑÑ Ð½Ð°Ñей ÑабоÑÑ Ð·Ð°Ð²Ð¸ÑÐ¸Ñ Ð¾Ñ Ð²Ð°ÑиÑ
оÑкликов, поÑÑÐ¾Ð¼Ñ Ð¼Ñ Ð¿ÑизнаÑелÑÐ½Ñ Ð·Ð° оÑÑавленнÑе на наÑем ÑайÑе ÑообÑÐµÐ½Ð¸Ñ Ð¾Ð± оÑибкаÑ
и ÑÑнкÑионалÑнÑе запÑоÑÑ."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgstr "ÐÑо беÑа-веÑÑÐ¸Ñ Ð¿ÑогÑаммÑ, коÑоÑÐ°Ñ Ð¼Ð¾Ð¶ÐµÑ ÑодеÑжаÑÑ Ð¾Ñибки и недоÑабоÑаннÑе ÑÑнкÑии. ÐÑÑекÑивноÑÑÑ Ð½Ð°Ñей ÑабоÑÑ Ð·Ð°Ð²Ð¸ÑÐ¸Ñ Ð¾Ñ Ð²Ð°ÑиÑ
оÑкликов: пÑиÑÑлайÑе нам ÑообÑÐµÐ½Ð¸Ñ Ð¾Ð± оÑибкаÑ
и Ð¿Ð¾Ð¶ÐµÐ»Ð°Ð½Ð¸Ñ Ð¿Ð¾ адÑеÑÑ Ð´Ð»Ñ <a href=\"mailto:feedback at audacityteam.org\">оÑкликов</a>. Ðа ÑпÑавкой по иÑполÑÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Audacity обÑаÑиÑеÑÑ Ð½Ð° Ð½Ð°Ñ <a href=\"http://audacityteam.org/forum/\">ÑоÑÑм</a>."
#: AboutDialog.cpp:182
-#, fuzzy
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
-msgstr "ÐÑо ÑÑабилÑÐ½Ð°Ñ Ð¸ завеÑÑÑÐ½Ð½Ð°Ñ Ð²ÐµÑÑÐ¸Ñ Audacity. Так или инаÑе, еÑли Ð²Ñ Ð¾Ð±Ð½Ð°ÑÑжиÑе оÑÐ¸Ð±ÐºÑ Ð¸Ð»Ð¸ заÑ
оÑиÑе пÑедложиÑÑ ÑÑо-либо, ÑвÑжиÑеÑÑ Ñ Ð½Ð°Ð¼Ð¸. ÐоÑÑоÑннÑй конÑÐ°ÐºÑ Ñ Ð¿Ð¾Ð»ÑзоваÑелÑми позволÑÐµÑ Ð½Ð°Ð¼ ÑлÑÑÑаÑÑ Audacity. ÐÐ»Ñ Ð¿Ð¾Ð»ÑÑÐµÐ½Ð¸Ñ Ð¿Ð¾Ð´Ñобной инÑоÑмаÑии поÑеÑиÑе Ð½Ð°Ñ Ð²ÐµÐ±-ÑайÑ."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgstr "ÐÑо ÑÑабилÑнаÑ, гоÑÐ¾Ð²Ð°Ñ Ðº повÑÐµÐ´Ð½ÐµÐ²Ð½Ð¾Ð¼Ñ Ð¸ÑполÑÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð²ÐµÑÑÐ¸Ñ Ð¿ÑогÑаммÑ. Тем не менее, Ð¼Ñ Ñ ÑадоÑÑÑÑ Ð¿Ñимем Ð¾Ñ Ð²Ð°Ñ ÑообÑÐµÐ½Ð¸Ñ Ð¾Ð± оÑибкаÑ
и Ð¿Ð¾Ð¶ÐµÐ»Ð°Ð½Ð¸Ñ Ð¿Ð¾ адÑеÑÑ Ð´Ð»Ñ <a href=\"mailto:feedback at audacityteam.org\">оÑкликов</a>. Ðа ÑпÑавкой по иÑполÑÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Audacity обÑаÑиÑеÑÑ Ð½Ð° Ð½Ð°Ñ <a href=\"http://audacityteam.org/forum/\">ÑоÑÑм</a>."
#. i18n-hint: The translation of "translator_credits" will appear
#. in the credits in the About Audacity window. Use this to add
@@ -53,12 +49,11 @@ msgstr "ÐÑо ÑÑабилÑÐ½Ð°Ñ Ð¸ завеÑÑÑÐ½Ð½Ð°Ñ Ð²ÐµÑÑÐ¸Ñ Audac
#: AboutDialog.cpp:192
#: AboutDialog.cpp:194
msgid "translator_credits"
-msgstr "Ð ÑÑÑÐºÐ°Ñ Ð»Ð¾ÐºÐ°Ð»Ð¸Ð·Ð°ÑÐ¸Ñ â Alexandre Prokoudine"
+msgstr "Ð ÑÑÑÐºÐ°Ñ Ð»Ð¾ÐºÐ°Ð»Ð¸Ð·Ð°ÑÐ¸Ñ â ÐлекÑÐ°Ð½Ð´Ñ ÐÑокÑдин"
#: AboutDialog.cpp:207
-#, fuzzy
msgid "A Free Digital Audio Editor<br>"
-msgstr "СвободнÑй ÑиÑÑовой ÑедакÑÐ¾Ñ Ð·Ð²ÑковÑÑ
Ñайлов"
+msgstr "СвободнÑй ÑедакÑÐ¾Ñ Ð·Ð²ÑковÑÑ
Ñайлов<br>"
#: AboutDialog.cpp:211
msgid "Credits"
@@ -95,8 +90,8 @@ msgid "Special thanks:"
msgstr "ÐÑобÑе благодаÑноÑÑи:"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
-msgstr ""
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgstr "ÐвÑоÑÑкие пÑава на <b>Audacity®</b> (© 1999-2009) пÑÐ¸Ð½Ð°Ð´Ð»ÐµÐ¶Ð°Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ðµ ÑазÑабоÑÑиков Audacity. <br>Ðазвание <b>Audacity®</b> ÑвлÑеÑÑÑ Ð·Ð°ÑегиÑÑÑиÑованной ÑоÑговой маÑкой Ðоминика ÐаÑÑони."
#: AboutDialog.cpp:258
msgid "Audacity"
@@ -241,10 +236,12 @@ msgstr "ÐÑибка пÑи оÑкÑÑÑии пÑоекÑа"
#: AudacityApp.cpp:546
#, c-format
-msgid "%s does not exist and could not be opened.\n"
+msgid ""
+"%s does not exist and could not be opened.\n"
"\n"
"It has been removed from the history list."
-msgstr "%s не ÑÑÑеÑÑвÑÐµÑ Ð¸ не Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð¾ÑкÑÑÑ.\n"
+msgstr ""
+"%s не ÑÑÑеÑÑвÑÐµÑ Ð¸ не Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð¾ÑкÑÑÑ.\n"
"\n"
"Файл ÑдалÑн из ÑпиÑка оÑкÑÑвавÑиÑ
ÑÑ Ñанее."
@@ -260,10 +257,27 @@ msgstr "ÐндикаÑÐ¾Ñ ÑÑÐ¾Ð²Ð½Ñ Ð½Ð° вÑ
оде"
msgid "Output Meter"
msgstr "ÐндикаÑÐ¾Ñ ÑÑÐ¾Ð²Ð½Ñ Ð½Ð° вÑÑ
оде"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
+#: Menus.cpp:196
+msgid "&New"
+msgstr "&СоздаÑÑ Ð¿ÑоекÑ"
+
+#: Menus.cpp:198
+msgid "&Open..."
+msgstr "&ÐÑкÑÑÑÑ..."
+
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
+
+#: AboutDialog.cpp:143
+#: AudacityApp.cpp:812
+#: Menus.cpp:955
+msgid "&About Audacity..."
+msgstr "&РпÑогÑамме..."
+
#: AudacityApp.cpp:814
-msgid "&Preferences...\tCtrl+,"
-msgstr "ÐаÑамеÑÑ&Ñ...\tCtrl+,"
+msgid "&Preferences..."
+msgstr "ÐаÑамеÑÑ&Ñ..."
#: AudacityApp.cpp:908
#: AudacityApp.cpp:985
@@ -278,9 +292,11 @@ msgid "Unknown command line option: %s\n"
msgstr "ÐеизвеÑÑÐ½Ð°Ñ Ð¾Ð¿ÑÐ¸Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð½Ð¾Ð¹ ÑÑÑоки: %s\n"
#: AudacityApp.cpp:1134
-msgid "Audacity could not find a place to store temporary files.\n"
+msgid ""
+"Audacity could not find a place to store temporary files.\n"
"Please enter an appropriate directory in the preferences dialog."
-msgstr "ÐÑогÑамма не Ð¼Ð¾Ð¶ÐµÑ Ð½Ð°Ð¹Ñи каÑалог Ð´Ð»Ñ Ñ
ÑÐ°Ð½ÐµÐ½Ð¸Ñ Ð²ÑеменнÑÑ
Ñайлов.\n"
+msgstr ""
+"ÐÑогÑамма не Ð¼Ð¾Ð¶ÐµÑ Ð½Ð°Ð¹Ñи каÑалог Ð´Ð»Ñ Ñ
ÑÐ°Ð½ÐµÐ½Ð¸Ñ Ð²ÑеменнÑÑ
Ñайлов.\n"
"УкажиÑе подÑ
одÑÑий каÑалог в диалоге паÑамеÑÑов пÑогÑаммÑ."
#: AudacityApp.cpp:1140
@@ -288,17 +304,21 @@ msgid "Audacity is now going to exit. Please launch Audacity again to use the ne
msgstr "Audacity гоÑовиÑÑÑ Ðº вÑÑ
одÑ. ÐовÑоÑно загÑÑзиÑе пÑогÑÐ°Ð¼Ð¼Ñ Ð´Ð»Ñ Ð¸ÑполÑÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ каÑалога Ð´Ð»Ñ Ð²ÑеменнÑÑ
Ñайлов."
#: AudacityApp.cpp:1172
-msgid "Running two copies of Audacity simultaneously may cause\n"
+msgid ""
+"Running two copies of Audacity simultaneously may cause\n"
"data loss or cause your system to crash.\n"
"\n"
-msgstr "ÐопÑÑка запÑÑÑиÑÑ Ð´Ð²Ðµ копии Audacity одновÑеменно\n"
+msgstr ""
+"ÐопÑÑка запÑÑÑиÑÑ Ð´Ð²Ðµ копии Audacity одновÑеменно\n"
"Ð¼Ð¾Ð¶ÐµÑ Ð¿ÑивеÑÑи к поÑеÑе даннÑÑ
или ÑÐ±Ð¾Ñ ÑиÑÑемÑ.\n"
"\n"
#: AudacityApp.cpp:1179
-msgid "Audacity was not able to lock the temporary files directory.\n"
+msgid ""
+"Audacity was not able to lock the temporary files directory.\n"
"This folder may be in use by another copy of Audacity.\n"
-msgstr "Audacity не ÑдалоÑÑ Ð·Ð°Ð±Ð»Ð¾ÐºÐ¸ÑоваÑÑ ÐºÐ°Ñалог Ñ Ð²ÑеменнÑми Ñайлами.\n"
+msgstr ""
+"Audacity не ÑдалоÑÑ Ð·Ð°Ð±Ð»Ð¾ÐºÐ¸ÑоваÑÑ ÐºÐ°Ñалог Ñ Ð²ÑеменнÑми Ñайлами.\n"
"Ðозможно, ÑÑÐ¾Ñ ÐºÐ°Ñалог иÑполÑзÑеÑÑÑ Ð´ÑÑгой копией Audacity.\n"
#: AudacityApp.cpp:1181
@@ -314,9 +334,11 @@ msgid "The system has detected that another copy of Audacity is running.\n"
msgstr "СиÑÑема обнаÑÑжила дÑÑгÑÑ Ð·Ð°Ð¿ÑÑеннÑÑ ÐºÐ¾Ð¿Ð¸Ñ Audacity.\n"
#: AudacityApp.cpp:1223
-msgid "Use the New or Open commands in the currently running Audacity\n"
+msgid ""
+"Use the New or Open commands in the currently running Audacity\n"
"process to open multiple projects simultaneously.\n"
-msgstr "ÐÑполÑзÑйÑе ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ Â«Ð¡Ð¾Ð·Ð´Ð°ÑÑ» или «ÐÑкÑÑÑÑ» в\n"
+msgstr ""
+"ÐÑполÑзÑйÑе ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ Â«Ð¡Ð¾Ð·Ð´Ð°ÑÑ» или «ÐÑкÑÑÑÑ» в\n"
"ÑекÑÑей копии Audacity Ð´Ð»Ñ Ð¾Ð´Ð½Ð¾Ð²Ñеменной ÑабоÑÑ\n"
"Ñ Ð½ÐµÑколÑкими пÑоекÑами.\n"
@@ -359,11 +381,13 @@ msgid "In addition, specify the name of an audio file or Audacity project to ope
msgstr "ÐÑоме Ñого, ÑкажиÑе Ð¸Ð¼Ñ Ð·Ð²Ñкового Ñайла или пÑоекÑа Audacity, коÑоÑÑй нÑжно оÑкÑÑÑÑ."
#: AudacityApp.cpp:1536
-msgid "Audacity project (.AUP) files are not currently \n"
+msgid ""
+"Audacity project (.AUP) files are not currently \n"
"associated with Audacity. \n"
"\n"
"Associate them, so they open on double-click?"
-msgstr "Ð¤Ð°Ð¹Ð»Ñ Ð¿ÑоекÑов Audacity (.AUP) ÑейÑÐ°Ñ Ð½Ðµ \n"
+msgstr ""
+"Ð¤Ð°Ð¹Ð»Ñ Ð¿ÑоекÑов Audacity (.AUP) ÑейÑÐ°Ñ Ð½Ðµ \n"
"аÑÑоÑииÑÐ¾Ð²Ð°Ð½Ñ Ñ Audacity. \n"
"\n"
"ÐÑÑоÑииÑоваÑÑ Ð¸Ñ
, ÑÑÐ¾Ð±Ñ Ð¾Ð½Ð¸ оÑкÑÑвалиÑÑ\n"
@@ -378,9 +402,11 @@ msgid "Could not find any audio devices.\n"
msgstr "Ðе ÑдалоÑÑ Ð½Ð°Ð¹Ñи звÑковÑе ÑÑÑÑойÑÑва.\n"
#: AudioIO.cpp:255
-msgid "You will not be able to play or record audio.\n"
+msgid ""
+"You will not be able to play or record audio.\n"
"\n"
-msgstr "ÐÑ Ð½Ðµ ÑможеÑе воÑпÑоизводиÑÑ Ð¸Ð»Ð¸ запиÑÑваÑÑ Ð·Ð²Ñк.\n"
+msgstr ""
+"ÐÑ Ð½Ðµ ÑможеÑе воÑпÑоизводиÑÑ Ð¸Ð»Ð¸ запиÑÑваÑÑ Ð·Ð²Ñк.\n"
"\n"
#: AudioIO.cpp:258
@@ -391,24 +417,41 @@ msgstr "ÐÑибка: "
msgid "Error Initializing Audio"
msgstr "ÐÑибки пÑи иниÑиализаÑии звÑка"
-#: AudioIO.cpp:1375
-msgid "Latency problem"
-msgstr "Ðеполадки Ñ Ð·Ð°Ð´ÐµÑжкой иÑгнала"
+#: AudioIO.cpp:281
+msgid "There was an error initializing the midi i/o layer.\n"
+msgstr ""
-#: AudioIO.cpp:1375
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
+#: AudioIO.cpp:282
+msgid ""
+"You will not be able to play midi.\n"
+"\n"
+msgstr ""
+
+#: AudioIO.cpp:288
+msgid "Error Initializing Midi"
+msgstr ""
+
+#: AudioIO.cpp:1223
+msgid ""
+"Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
"Audacity has brought it back to start at zero.\n"
"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
msgstr ""
+#: AudioIO.cpp:1375
+msgid "Latency problem"
+msgstr "Ðеполадки Ñ Ð·Ð°Ð´ÐµÑжкой иÑгнала"
+
#: AutoRecovery.cpp:54
msgid "Automatic Crash Recovery"
msgstr "ÐвÑомаÑиÑеÑкое воÑÑÑановление поÑле аваÑии"
#: AutoRecovery.cpp:73
-msgid "Some projects were not saved properly the last time Audacity was run.\n"
+msgid ""
+"Some projects were not saved properly the last time Audacity was run.\n"
"Fortunately, the following projects can automatically be recovered:"
-msgstr "ÐекоÑоÑÑе пÑоекÑÑ Ð½Ðµ бÑли коÑÑекÑно ÑоÑ
ÑÐ°Ð½ÐµÐ½Ñ ÐºÐ¾Ð³Ð´Ð° Ð²Ñ Ð² пÑедÑдÑÑий Ñаз \n"
+msgstr ""
+"ÐекоÑоÑÑе пÑоекÑÑ Ð½Ðµ бÑли коÑÑекÑно ÑоÑ
ÑÐ°Ð½ÐµÐ½Ñ ÐºÐ¾Ð³Ð´Ð° Ð²Ñ Ð² пÑедÑдÑÑий Ñаз \n"
"ÑабоÑали Ñ Audacity. Ð ÑÑаÑÑÑÑ, некоÑоÑÑе из ниÑ
можно воÑÑÑановиÑÑ:"
#: AutoRecovery.cpp:75
@@ -422,7 +465,8 @@ msgstr "ÐмÑ"
#: AutoRecovery.cpp:84
msgid "Recovering a project will not change any files on disk before you save it."
-msgstr "ÐÑи воÑÑÑановлении пÑоекÑа ни один Ñайл на диÑке не измениÑÑÑ, \n"
+msgstr ""
+"ÐÑи воÑÑÑановлении пÑоекÑа ни один Ñайл на диÑке не измениÑÑÑ, \n"
"пока Ð²Ñ Ð½Ðµ ÑоÑ
ÑаниÑе пÑоекÑ."
#: AutoRecovery.cpp:88
@@ -438,9 +482,11 @@ msgid "Recover Projects"
msgstr "ÐоÑÑÑановиÑÑ Ð¿ÑоекÑÑ"
#: AutoRecovery.cpp:127
-msgid "Are you sure you don't want to recover any projects?\n"
+msgid ""
+"Are you sure you don't want to recover any projects?\n"
"They can't be recovered later."
-msgstr "ÐÑ Ð´ÐµÐ¹ÑÑвиÑелÑно не Ñ
оÑиÑе воÑÑÑанавливаÑÑ Ð´Ð°Ð½Ð½Ñе пÑоекÑов?\n"
+msgstr ""
+"ÐÑ Ð´ÐµÐ¹ÑÑвиÑелÑно не Ñ
оÑиÑе воÑÑÑанавливаÑÑ Ð´Ð°Ð½Ð½Ñе пÑоекÑов?\n"
"СделаÑÑ ÑÑо позднее не полÑÑиÑÑÑ."
#: AutoRecovery.cpp:128
@@ -521,9 +567,11 @@ msgstr "Ðоманда %s пока не Ñеализована"
#: BatchCommands.cpp:508
#, c-format
-msgid "Could not set parameters of effect %s\n"
+msgid ""
+"Could not set parameters of effect %s\n"
" to %s."
-msgstr "Ðе ÑдалоÑÑ Ð·Ð°Ð³ÑÑзиÑÑ Ð¿Ð°ÑамеÑÑÑ ÑÑÑекÑа %s\n"
+msgstr ""
+"Ðе ÑдалоÑÑ Ð·Ð°Ð³ÑÑзиÑÑ Ð¿Ð°ÑамеÑÑÑ ÑÑÑекÑа %s\n"
"в %s."
#: BatchCommands.cpp:561
@@ -533,10 +581,12 @@ msgstr "Ðоманда пакеÑной обÑабоÑки %s не бÑла Ñа
#: BatchCommands.cpp:652
#, c-format
-msgid "Apply %s with parameter(s)\n"
+msgid ""
+"Apply %s with parameter(s)\n"
"\n"
"%s"
-msgstr "ÐÑимениÑÑ %s Ñ Ð¿Ð°ÑамеÑÑом (-ами)\n"
+msgstr ""
+"ÐÑимениÑÑ %s Ñ Ð¿Ð°ÑамеÑÑом (-ами)\n"
"\n"
"%s"
@@ -665,8 +715,16 @@ msgstr "&ЦепоÑка дейÑÑвий (измениÑÑ Ð´Ð²Ð¾Ð¹Ð½Ñм Ñел
#. i18n-hint: This is the number of the command in the list
#: BatchProcessDialog.cpp:453
-msgid "No"
-msgstr "ÐеÑ"
+msgid "Num"
+msgstr ""
+
+#: prefs/KeyConfigPrefs.cpp:167
+msgid "Command"
+msgstr "Ðоманда"
+
+#: effects/Contrast.cpp:323
+msgid "Parameters"
+msgstr "ÐаÑамеÑÑÑ"
#: BatchProcessDialog.cpp:459
msgid "&Insert"
@@ -728,10 +786,12 @@ msgid "Copying audio data into project..."
msgstr "ÐвÑковÑе ÑÐ°Ð¹Ð»Ñ ÐºÐ¾Ð¿Ð¸ÑÑÑÑÑÑ Ð² пÑоекÑ..."
#: Dependencies.cpp:223
-msgid "Your project currently depends on the presence of other files.\n"
+msgid ""
+"Your project currently depends on the presence of other files.\n"
"Copy audio from the following files into your project to make it self-contained?\n"
"This will need more disc space but is safer."
-msgstr "ÐÐ°Ñ Ð¿ÑÐ¾ÐµÐºÑ Ð·Ð°Ð²Ð¸ÑÐ¸Ñ Ð¾Ñ Ð¿ÑиÑÑÑÑÑÐ²Ð¸Ñ Ð² ÑиÑÑеме внеÑниÑ
Ñайлов.\n"
+msgstr ""
+"ÐÐ°Ñ Ð¿ÑÐ¾ÐµÐºÑ Ð·Ð°Ð²Ð¸ÑÐ¸Ñ Ð¾Ñ Ð¿ÑиÑÑÑÑÑÐ²Ð¸Ñ Ð² ÑиÑÑеме внеÑниÑ
Ñайлов.\n"
"ÐÑ Ñ
оÑиÑе, ÑÑÐ¾Ð±Ñ ÑÑи даннÑе бÑли вклÑÑÐµÐ½Ñ Ð² пÑоекÑ, ÑÑÐ¾Ð±Ñ ÑделаÑÑ ÐµÐ³Ð¾ ÑамодоÑÑаÑоÑнÑм?\n"
"ÐÑо пÑиведÑÑ Ðº ÑаÑÑ
Ð¾Ð´Ñ Ð¼ÐµÑÑа на диÑке, но обезопаÑÐ¸Ñ Ð¿ÑÐ¾ÐµÐºÑ Ð¾Ñ Ð¿Ð¾ÑеÑи даннÑÑ
."
@@ -797,11 +857,11 @@ msgstr "ÐÐ°Ñ Ð¿ÑÐ¾ÐµÐºÑ ÑамодоÑÑаÑоÑен и не вклÑÑае
msgid "Dependency check"
msgstr "ÐÑовеÑка завиÑимоÑÑей"
-#: DirManager.cpp:137
-msgid "Warning: there is very little free disk space left on this volume.\n"
-"Please select another temporary directory in your preferences."
-msgstr "ÐÑедÑпÑеждение: на данном Ñазделе оÑÑалоÑÑ Ð¾ÑÐµÐ½Ñ Ð¼Ð°Ð»Ð¾ Ñвободного меÑÑа.\n"
-"ÐÑбеÑиÑе дÑÑгой каÑалог Ð´Ð»Ñ Ð²ÑеменнÑÑ
Ñайлов в диалоге наÑÑÑоек пÑогÑаммÑ."
+#: DirManager.cpp:136
+msgid ""
+"There is very little free disk space left on this volume.\n"
+"Please select another temporary directory in Preferences."
+msgstr ""
#: DirManager.cpp:223
#: DirManager.cpp:254
@@ -823,9 +883,11 @@ msgstr "ÐÑполнÑеÑÑÑ Ð¾ÑиÑÑка каÑалогов Ñ ÐºÑÑем"
#: DirManager.cpp:505
#, c-format
-msgid "Audacity found an orphaned blockfile %s! \n"
+msgid ""
+"Audacity found an orphaned blockfile %s! \n"
"Please consider saving and reloading the project to perform a complete project check.\n"
-msgstr "ÐÑогÑамма наÑла оÑиÑоÑевÑий блоÑнÑй Ñайл %s! \n"
+msgstr ""
+"ÐÑогÑамма наÑла оÑиÑоÑевÑий блоÑнÑй Ñайл %s! \n"
"Ðам ÑÑÐ¾Ð¸Ñ ÑоÑ
ÑаниÑÑ Ð¸ пеÑезагÑÑзиÑÑ Ð¿ÑоекÑ, ÑÑÐ¾Ð±Ñ Ð¿ÑойÑи полнÑÑ Ð¿ÑовеÑÐºÑ Ð¿ÑоекÑа.\n"
#. i18n-hint: This is the pattern for filenames that are created
@@ -886,15 +948,18 @@ msgid "Missing data file: (%s.au)"
msgstr "ÐÑÑÑÑÑÑвÑÐµÑ Ñайл даннÑÑ
: (%s.au)"
#: DirManager.cpp:1319
-msgid "Project check found inconsistencies inspecting the loaded project data;\n"
+msgid ""
+"Project check found inconsistencies inspecting the loaded project data;\n"
"click 'Details' for a complete list of errors, or 'OK' to proceed to more options."
-msgstr "ÐÑовеÑка пÑоекÑа вÑÑвила неÑооÑвеÑÑÑÐ²Ð¸Ñ Ð¿Ñи загÑÑзке даннÑÑ
пÑоекÑа; \n"
+msgstr ""
+"ÐÑовеÑка пÑоекÑа вÑÑвила неÑооÑвеÑÑÑÐ²Ð¸Ñ Ð¿Ñи загÑÑзке даннÑÑ
пÑоекÑа; \n"
"ÑÑлкниÑе ÐºÐ½Ð¾Ð¿ÐºÑ Â«ÐодÑобноÑÑи» Ð´Ð»Ñ Ð¿Ð¾Ð»ÑÑÐµÐ½Ð¸Ñ Ð¿Ð¾Ð»Ð½Ð¾Ð³Ð¾ ÑпиÑка оÑибок, \n"
"либо «Ðл, ÑÑÐ¾Ð±Ñ Ð²ÑбÑаÑÑ ÑпоÑоб ÑеÑÐµÐ½Ð¸Ñ ÑÑо незадаÑи."
#: DirManager.cpp:1331
#, c-format
-msgid "Project check found %d orphaned blockfile[s]. These files are\n"
+msgid ""
+"Project check found %d orphaned blockfile[s]. These files are\n"
"unused and probably left over from a crash or some other bug.\n"
"They should be deleted to avoid disk contention."
msgstr ""
@@ -923,16 +988,21 @@ msgid "Warning"
msgstr "ÐÑедÑпÑеждение"
#: DirManager.cpp:1366
-#, fuzzy, c-format
-msgid "Project check detected %d input file[s] being used in place\n"
+#, c-format
+msgid ""
+"Project check detected %d input file[s] being used in place\n"
"('alias files') are now missing. There is no way for Audacity\n"
"to recover these files automatically; you may choose to\n"
"permanently fill in silence for the missing files, temporarily\n"
"fill in silence for this session only, or close the project now\n"
"and try to restore the missing files by hand."
-msgstr "ÐÑовеÑка пÑоекÑа вÑÑвила %d вÑ
одÑÑий Ñайл, иÑполÑзÑемÑй\n"
-"вмеÑÑо \"alias\" Ñайлов, коÑоÑÑе ÑепеÑÑ Ð¾ÑÑÑÑÑÑвÑÑÑ. files' неÑооÑвеÑÑÑÐ²Ð¸Ñ Ð¿Ñи загÑÑзке даннÑÑ
пÑоекÑа; ÑÑлкниÑе ÐºÐ½Ð¾Ð¿ÐºÑ Â«ÐодÑобноÑÑи» Ð´Ð»Ñ Ð¿Ð¾Ð»ÑÑÐµÐ½Ð¸Ñ Ð¿Ð¾Ð»Ð½Ð¾Ð³Ð¾ ÑпиÑка оÑибок, \n"
-"либо «Ðл, ÑÑÐ¾Ð±Ñ Ð²ÑбÑаÑÑ ÑпоÑоб ÑеÑÐµÐ½Ð¸Ñ ÑÑо незадаÑи."
+msgstr ""
+"ÐÑовеÑка пÑоекÑа вÑÑвила %d вÑ
одÑÑий Ñайл, иÑполÑзÑемÑй\n"
+"вмеÑÑо \"alias\" Ñайлов, коÑоÑÑе ÑепеÑÑ Ð¾ÑÑÑÑÑÑвÑÑÑ.\n"
+"Audacity не Ð¼Ð¾Ð¶ÐµÑ Ð°Ð²ÑомаÑиÑеÑки воÑÑÑановиÑÑ ÑÑи ÑайлÑ;\n"
+"Ð²Ñ Ð¼Ð¾Ð¶ÐµÑе вÑбÑаÑÑ Ð²Ñеменно или поÑÑоÑнно заполниÑÑ Ð¼ÐµÑÑо\n"
+"оÑÑÑÑÑÑвÑÑÑиÑ
Ñайлов ÑиÑиной, либо закÑÑÑÑ Ð¿ÑÐ¾ÐµÐºÑ Ð¸ попÑÑаÑÑÑÑ\n"
+"воÑÑÑановиÑÑ Ð¾ÑÑÑÑÑÑвÑÑÑие ÑÐ°Ð¹Ð»Ñ Ð²ÑÑÑнÑÑ."
#: DirManager.cpp:1371
msgid "Replace missing data with silence [permanent upon save]"
@@ -951,7 +1021,8 @@ msgstr "Ðемедленно закÑÑÑÑ Ð¿ÑоекÑ, не вноÑÑ Ð´Ð°Ð»
#: DirManager.cpp:1412
#, c-format
-msgid "Project check detected %d missing summary file[s] (.auf).\n"
+msgid ""
+"Project check detected %d missing summary file[s] (.auf).\n"
"Audacity can fully regenerate these summary files from the\n"
"original audio data in the project."
msgstr ""
@@ -966,7 +1037,8 @@ msgstr ""
#: DirManager.cpp:1454
#, c-format
-msgid "Project check detected %d missing audio data blockfile[s] (.au), \n"
+msgid ""
+"Project check detected %d missing audio data blockfile[s] (.au), \n"
"probably due to a bug, system crash or accidental deletion.\n"
"There is no way for Audacity to recover this lost data\n"
"automatically; you may choose to permanently fill in silence\n"
@@ -1005,21 +1077,21 @@ msgstr "Rectangular"
#: FFmpeg.cpp:36
msgid "FFmpeg support not compiled in"
-msgstr ""
+msgstr "ÐÑогÑамма ÑобÑана без поддеÑжки FFmpeg"
-#: FFmpeg.cpp:101
-msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
+#: FFmpeg.cpp:103
+msgid ""
+"FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
#: FFmpeg.cpp:104
msgid "FFmpeg startup failed"
-msgstr ""
+msgstr "Ðе ÑдалоÑÑ Ð·Ð°Ð¿ÑÑÑиÑÑ FFmpeg"
#: FFmpeg.cpp:112
-#, fuzzy
msgid "FFmpeg library not found"
msgstr "ÐиблиоÑека FFmpeg не найдена"
@@ -1030,7 +1102,7 @@ msgstr "УказаÑÑ FFmpeg"
#: FFmpeg.cpp:187
#, c-format
msgid "Audacity needs the file %s to import and export audio via FFmpeg."
-msgstr ""
+msgstr "Audacity необÑ
одим Ñайл %s Ð´Ð»Ñ Ð¸Ð¼Ð¿Ð¾ÑÑа и ÑкÑпоÑÑа пÑи помоÑи FFmpeg."
#: FFmpeg.cpp:193
#: export/ExportMP3.cpp:562
@@ -1053,9 +1125,10 @@ msgstr "ÐбзоÑ..."
msgid "To get a free copy of FFmpeg, click here -->"
msgstr "ЧÑÐ¾Ð±Ñ Ð¿Ð¾Ð»ÑÑиÑÑ ÐºÐ¾Ð¿Ð¸Ñ FFmpeg, ÑелкниÑе ÑÑÑ â"
-#: FFmpeg.cpp:215 export/ExportMP3.cpp:579
+#: FFmpeg.cpp:215
+#: export/ExportMP3.cpp:579
msgid "Download"
-msgstr ""
+msgstr "СкаÑаÑÑ"
#. i18n-hint: It's asking for the location of a file, for
#. example, "Where is lame_enc.dll?" - you could translate
@@ -1068,22 +1141,24 @@ msgstr "Ðде наÑ
одиÑÑÑ %s?"
#: FFmpeg.cpp:407
msgid "Failed to find compatible FFmpeg libraries"
-msgstr ""
+msgstr "Ðе ÑдалоÑÑ Ð½Ð°Ð¹Ñи ÑовмеÑÑимÑе библиоÑеки FFmpeg"
#: FFmpeg.h:102
msgid "FFmpeg not found"
msgstr "ÐиблиоÑека FFmpeg не найдена"
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid ""
+"Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
#: FFmpeg.h:109
msgid "Do not show this warning again"
-msgstr ""
+msgstr "ÐолÑÑе не показÑваÑÑ ÑÑо пÑедÑпÑеждение"
#: FFmpeg.h:257
msgid "Only avformat.dll|*avformat*.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
@@ -1091,12 +1166,11 @@ msgstr "ТолÑко avformat.dll|*avformat*.dll|ÐинамиÑеÑки Ñлин
#: FFmpeg.h:268
msgid "Dynamic Libraries (*.dylib)|*.dylib|All Files (*)|*"
-msgstr ""
+msgstr "ÐинамиÑеÑкие библиоÑеки (*.dylib)|*.dylib|ÐÑе ÑÐ°Ð¹Ð»Ñ (*)|*"
#: FFmpeg.h:311
-#, fuzzy
msgid "Only libavformat.so|libavformat.so*|Dynamically Linked Libraries (*.so*)|*.so*|All Files (*)|*"
-msgstr "ТолÑко avformat.sol|*avformat*.so|ÐинамиÑеÑки ÑлинкованнÑе библиоÑеки (*.so)|*.dll|ÐÑе ÑÐ°Ð¹Ð»Ñ (*.*)|*"
+msgstr "ТолÑко libavformat.so|libavformat.so*|ÐинамиÑеÑки ÑлинкованнÑе библиоÑеки (*.so)|*.so*|ÐÑе ÑÐ°Ð¹Ð»Ñ (*)|*"
#: FreqWindow.cpp:103
msgid "Frequency Analysis"
@@ -1176,12 +1250,27 @@ msgstr "&ÐкÑпоÑÑиÑоваÑÑ..."
msgid "Export"
msgstr "ÐкÑпоÑÑ"
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr "&Ðаново"
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr "ÐоÑÑÑоиÑÑ Ð³ÑаÑик заново"
+
#: FreqWindow.cpp:216
#: FreqWindow.cpp:217
#: widgets/ErrorDialog.cpp:161
msgid "Close"
msgstr "ÐакÑÑÑÑ"
+#: FreqWindow.cpp:247
+#: FreqWindow.cpp:250
+#: effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr "СеÑка"
+
#: FreqWindow.cpp:280
#: FreqWindow.cpp:410
#: effects/AutoDuck.cpp:489
@@ -1210,6 +1299,19 @@ msgstr "Ðб"
msgid "Hz"
msgstr "ÐÑ"
+#: Menus.cpp:3965
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr ""
+"ÐÐ»Ñ Ð¿Ð¾ÑÑÑÐ¾ÐµÐ½Ð¸Ñ ÑпекÑÑогÑÐ°Ð¼Ð¼Ñ Ð²Ñе вÑбÑаннÑе доÑожки\n"
+"Ð´Ð¾Ð»Ð¶Ð½Ñ Ð¸Ð¼ÐµÑÑ Ð¾Ð´Ð¸Ð½Ð°ÐºÐ¾Ð²ÑÑ ÑаÑÑоÑÑ"
+
+#: Menus.cpp:3991
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr ""
+"ÐÑделен ÑлиÑком болÑÑой звÑковой ÑÑагменÑ.\n"
+"ÐÑдÑÑ Ð¿ÑоанализиÑÐ¾Ð²Ð°Ð½Ñ ÑолÑко пеÑвÑе %.1f ÑекÑнд."
+
#: FreqWindow.cpp:394
msgid "Not enough data selected."
msgstr "ÐÑбÑано недоÑÑаÑоÑно даннÑÑ
"
@@ -1255,9 +1357,21 @@ msgstr "ЧаÑÑоÑа (ÐÑ)\tУÑÐ¾Ð²ÐµÐ½Ñ (Ðб)"
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "ÐÑÑÑавание (Ñ)\tЧаÑÑоÑа (ÐÑ)\tУÑовенÑ"
-#: HelpText.cpp:85
-msgid "To [[welcome|Welcome screen]]"
-msgstr "Ð [[welcome|наÑалÑной ÑÑÑаниÑе]]"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr "GStreamer %s: %s"
+
+#: GStreamerLoader.cpp:212
+msgid ""
+"GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr "Ðе ÑдалоÑÑ Ð·Ð°Ð¿ÑÑÑиÑÑ GStreamer"
#: HelpText.cpp:92
msgid "Welcome!"
@@ -1307,65 +1421,37 @@ msgstr "ÐапиÑÑ CD"
msgid "No Local Help"
msgstr "ÐокалÑÐ½Ð°Ñ ÑпÑавка оÑÑÑÑÑÑвÑеÑ"
-#: HelpText.cpp:148
-msgid "</p><center><h3>Getting Started</h3></center><br>"
-msgstr "</p><center><h3>ÐводнÑй кÑÑÑ</h3></center><br>"
+#: HelpText.cpp:176
+msgid "<center><h3>Getting Started</h3></center><br>"
+msgstr ""
#: HelpText.cpp:150
msgid "Welcome to Audacity "
msgstr "ÐобÑо пожаловаÑÑ Ð² Audacity"
-#: HelpText.cpp:151
-msgid "Learn how to: <ul><li>[[play|play]] an existing audio file <li>[[record|record]] your voice, LP or tape <li>[[edit|edit]] sounds <li>[[save|save or open an Audacity project]] <li>[[export|export]] to an MP3 or other audio file, or [[burncd|burn to a CD]] </ul></p><p>"
-msgstr "ÐзÑÑиÑе как: <ul><li>[[play|воÑпÑоизводиÑÑ]] ÑÑÑеÑÑвÑÑÑие звÑковÑе ÑÐ°Ð¹Ð»Ñ <li>[[record|запиÑÑваÑÑ]] голоÑ, гÑамплаÑÑÐ¸Ð½ÐºÑ Ð¸Ð»Ð¸ каÑÑеÑÑ <li>[[edit|ÑедакÑиÑоваÑÑ]] звÑки <li>[[save|ÑоÑ
ÑанÑÑÑ Ð¸ оÑкÑÑваÑÑ Ð¿ÑоекÑÑ Audacity]] <li>[[export|ÑкÑпоÑÑиÑоваÑÑ]] в MP3 или иной звÑковой Ñайл или [[burncd|запиÑÑваÑÑ CD]] </ul></p><p>"
-
-#: HelpText.cpp:159
-msgid "This screen can be viewed at any time by clicking the <i>Help</i> menu, then <i>Show Welcome Message</i>. For a detailed guide to all the Audacity menus and controls, click <i>Help</i> menu then <i>Index</i>, or download our <a href=\"http://audacity.sourceforge.net/help/documentation/manual_1.4.pdf\">full Manual</a> in PDF format.</p>"
-msgstr "ÐÑÑ ÐºÐ¾Ð¼Ð¿Ð°ÐºÑнÑÑ ÑпÑавоÑнÑÑ ÑиÑÑÐµÐ¼Ñ Ð²Ñегда можно вÑзваÑÑ ÑеÑез Ð¼ÐµÐ½Ñ <i>«СпÑавка â ÐводнÑй кÑÑÑ»</i>. ÐодÑобное ÑÑководÑÑво доÑÑÑпно ÑеÑез Ð¼ÐµÐ½Ñ <i>«СпÑавка â СодеÑжание»</i>. ÐÑ Ñакже можеÑе <a href=\"http://audacity.sourceforge.net/help/documentation/manual_1.4.pdf\">ÑкаÑаÑÑ ÑÑководÑÑво</a> в виде Ñайла PDF.</p>"
-
-#: HelpText.cpp:172
-msgid "<p><b>Opening audio files:</b> Either drag the files into the current project window, or click <i>File > Import > Audio</i>. Files can be opened into a new project window with <i>File > Open</i>. The main formats Audacity plays are <b>AIFF, AU, FLAC, M4A</b> (only on a Mac), <b>MP2/MP3, OGG Vorbis</b> and <b>WAV</b>. Click [[wma-proprietary|here]] if your file is in some other format. <b>To import a CD:</b> extract it to WAV or AIFF using iTunes, Windows Media Player 11 or similar. See our online guide: [[wiki:How_to_import_CDs|importing CDs]].</p><p> <p><b>Playing audio:</b> Press the green Play button to start playback. Press the blue Pause button once to pause playback, and again to resume. To stop, press the yellow Stop button. Spacebar can be used to either play or stop. After stopping, playback resumes from its last starting point. To change the starting point, click in the track at your desired starting point. The <b>|<<</b> and <b>>>|</b> buttons can be used to skip to the start or end of the track respectively. </p><br><br>"
-msgstr ""
-
-#: HelpText.cpp:194
-msgid "<p><b>To record:</b> Set the recording device and input source, adjust the input level, then press the red Record button.</b></p><p> 1) [[inputdevice|Set Recording Device]] either in the <i>Audio I/O tab of Preferences</i> or in <i>Device Toolbar</i>. Audio I/O Preferences lets you choose stereo recording if required.<br> 2) [[inputsource|Set input source]] for that device (for example, microphone or line-in) in the dropdown selector of the <i>Mixer Toolbar</i>, or (on some systems) at Recording Device in the <i>Audio I/O tab of Preferences</i> or in <i>Device Toolbar</i>.<br> 3) [[inputlevel|Adjust input level]] using the right-hand slider on the <i>Mixer Toolbar</i>. Correct adjustment of level before recording is essential to avoid noise or distortion. </p><p> More help at: \"Recording\" <a href=\"http://audacity.sourceforge.net/help/faq\">FAQs</a>, our Tutorial <a href=\"http://www.audacityteam.org/manual/index.php?title=Tutorial_-_Your_First_Recording\"> Your First Recording</a> in the <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">Manual</a>, and our Wiki [[wiki:Recording_Tips|Recording Tips]] and [[wiki:Troubleshooting_Recordings|Troubleshooting Recordings]] pages. </p><br><br>"
+#: HelpText.cpp:178
+msgid "These are our support methods:"
msgstr ""
-#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+#: HelpText.cpp:179
+msgid " A [[file:quick_help.html|quick guide]] (should be installed locally, <a href=\"http://audacityteam.org/manual/index.php?title=Quick_Help\">internet version if it isn't</a>)"
msgstr ""
-#: HelpText.cpp:244
-msgid "<p>Select the input source (such as microphone or line-in) for your [[inputdevice|recording device]]:<br> - <b>On Windows (except Vista)</b> and <b>Linux</b>, in the dropdown selector on the right of the <i>Mixer Toolbar</i>.<br> - <b>On Windows Vista</b> and <b>Mac</b>, at Recording Device on the <i>Audio I/O tab of Preferences</i>, or in <i>Device Toolbar</i>. The source will be shown as part of the parent device (for example, <i>High Def Audio Card: Microphone</i>). If necessary, Mac users can choose the input source at Apple Audio MIDI Setup. <br><i><b>Note:</b> many USB or Firewire recording devices don't have a choice of inputs, so this step is not necessary. If in doubt, see the documentation for your device. </i></p><p> <b>Tip:</b> To <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record audio playing on the computer</a>, Windows and Linux users can choose the \"Stereo Mix\", \"Wave Out\", \"Sum\" or comparable input source. </p><p> Back to [[record|Recording Audio]] <br></p>"
+#: HelpText.cpp:180
+msgid " Our [[file:index.html|Manual]] (should be installed locally, <a href=\"http://audacityteam.org/manual/index.php\">internet version if it isn't</a>)"
msgstr ""
-#: HelpText.cpp:267
-msgid "<p>The input level must be set correctly. If the level is too low, there will be background noise. If the level is too high, there will be distortion in the loud parts. </p><p>To set the level, either see this [[wiki:Recording_levels|illustrated online guide]] or follow these steps: <ol><li>Turn on <b>monitoring</b>. Double-click the right-hand of the two <i>VU Meters</i> (or right-click over it) and click \"Start Monitoring\". If the meters are not visible, click <i>View > Toolbars</i> and check \"Meter Toolbar\". </li><li>Adjust the input slider on the <i>Mixer Toolbar</i> (by the microphone symbol), so that the red bars in the meter come close to <b>but do not touch</b> the right edge of the scale. If you can't hear the monitored audio, go to the <i>Audio I/O tab of Preferences</i> and check \"Software Playthrough\". </li></ol></p><p> Back to [[record|Recording Audio]] <br></p>"
+#: HelpText.cpp:181
+msgid " Our [[http://audacityteam.org/wiki/index.php|Wiki]] (on the internet)"
msgstr ""
-#: HelpText.cpp:292
-msgid "<p>The main commands for editing audio are under the <i>Edit</i> menu (such as cut, copy and paste) and the <i>Effect</i> menu (you can do things like boost the bass, change pitch or tempo, or remove noise). </p><p> Audacity applies edits to selected areas of the audio track. To select a particular area, click in the track and drag the shaded area with the mouse. If no audio is selected, Audacity selects all the audio in the project window.</p><p> When playing or recording, the Edit and Effect menus will appear greyed out, because a moving track can't be edited. Commands can sometimes be unavailable for other reasons too. For example, you can't run effects until you have audio on the screen, and you can't paste audio until you've cut or copied it to Audacity's clipboard. </p><br><br>"
+#: HelpText.cpp:182
+msgid " Our <a href=\"http://audacityteam.org/forum/\">Forum</a> (on the internet)"
msgstr ""
-#: HelpText.cpp:311
-msgid "<p>To return later to your unfinished work in Audacity with all tracks and edits as you left them, save an Audacity project. To play your current work in other media programs or send it to others, [[export|export]] an audio file such as WAV or MP3. </p><p> <i>File > Save Project</i> saves an <b>.aup</b> project file and a <b>_data</b> folder containing the actual audio. To re-open a saved project, click <i>File > Open</i> and open the .aup file. If you save and exit more than once, an .aup.bak backup file is created, but the .aup file should always be opened if present. When your final exported file is exactly as you want, delete the project files and _data folder to save disc space. </p><p><i>File > Save Project As...</i> is for saving an empty project. It also lets you save an existing Project to a <b> new</b> name. This is the only safe way to rename a project. The .aup file and _data folder should not be moved or renamed manually. </p><p>"
-msgstr ""
-
-#: HelpText.cpp:335
-msgid "To hear your work in other media programs, export it to an audio file such as WAV or MP3 (some formats are [[wma-proprietary|unsupported]]). [[save|Saving an Audacity project]] creates a project file (and linked _data folder) containing all your edited tracks, so you can return to your work later. However, other programs can't read Audacity projects. </p><p> To export, click <i>File > Export</i> then choose the file format you want to export to in the \"Save as type\" dropdown. To [[burncd|burn a CD]] for standalone CD players, choose WAV or AIFF. To export as MP3, the [[wiki:Lame_Installation|Lame Encoder]] must be installed. </p><p> <i>File > Export Selection</i> exports only a selected area of audio. <i>Use File > Export Multiple</i> to export multiple files at the same time, either one for each audio track, or one for each labeled area in a single track. <i>Tracks > Add Label At Selection</i> lets you [[wiki:Splitting_recordings_into_separate_tracks|split the tracks]] from an album for multiple export as separate files. </p><br><br>"
-msgstr ""
-
-#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
-msgstr ""
-
-#: HelpText.cpp:383
-msgid "<p>To burn your work to an audio CD for standalone CD players, first [[export|export]] it as WAV or AIFF. The exported file should be stereo, 44100 Hz (set in the \"Project Rate\" button bottom left) and 16 bit (set in the \"Options\" button in the file export dialog). These are Audacity's default settings, so normally you will not need to change these before exporting. <p>Burn the exported file to an \"audio CD\" - not a \"data CD\" or \"MP3 CD\" - with a CD burning program like iTunes or Windows Media Player. For more help, see [[wiki:How_to_burn_CDs|How to burn CDs]] online. </p><p>"
-msgstr ""
-
-#: HelpText.cpp:403
-msgid "<p>Help for Audacity Beta is currently unfinished. For now, a draft manual is available <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">online</a>. Alternatively, click <a href=\"http://www.audacityteam.org/manual/index.php?title=Temporary_HTML_Manual_Export\">here</a> to download a single-page version of the manual which can be viewed in this window."
-msgstr "<p>СпÑавка к беÑа-веÑÑии Audacity пока ÑÑо не завеÑÑена. СейÑÐ°Ñ <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">доÑÑÑпен</a> лиÑÑ ÑеÑновик. ÐÑи желании Ð²Ñ Ð¼Ð¾Ð¶ÐµÑе пÑойÑи по <a href=\"http://www.audacityteam.org/manual/index.php?title=Temporary_HTML_Manual_Export\">ÑÑой ÑÑÑлке</a>, ÑÑÐ¾Ð±Ñ ÑкаÑаÑÑ Ð²ÐµÑÑÐ¸Ñ ÑÑководÑÑва, ÑвеÑÑÑаннÑÑ Ð² Ð¾Ð´Ð½Ñ ÑÑÑаниÑÑ, ÑÑÐ¾Ð±Ñ Ð·Ð°Ñем пÑоÑмаÑÑиваÑÑ ÐµÐµ в ÑÑом окне."
+#: HelpText.cpp:192
+msgid "<p>You do not appear to have 'help' installed on your computer.<br> Please try <a href=\"*URL*\">to view it online</a>."
+msgstr "<p>ÐоÑ
оже, ÑÑо ÑпÑавка в ваÑей ÑиÑÑеме не ÑÑÑановлена.<br> ÐопÑобÑйÑе <a href=\"*URL*\">пÑоÑиÑаÑÑ ÐµÑ Ð² ÐнÑеÑнеÑе</a>."
#: HistoryWindow.cpp:53
msgid "Undo History"
@@ -1423,6 +1509,14 @@ msgstr "ÐбайÑ"
msgid "GB"
msgstr "ÐбайÑ"
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr "УкажиÑе новое Ð¸Ð¼Ñ Ñайла:"
+
#: LabelDialog.cpp:54
msgid "Track"
msgstr "ÐоÑожка"
@@ -1444,9 +1538,8 @@ msgid "End Time"
msgstr "ÐÑÐµÐ¼Ñ Ð·Ð°Ð²ÐµÑÑениÑ"
#: LabelDialog.cpp:100
-#: Menus.cpp:713
-msgid "&Edit Labels"
-msgstr "&ÐзмениÑÑ Ð¿Ð¾Ð¼ÐµÑки"
+msgid "Edit Labels"
+msgstr ""
#: LabelDialog.cpp:115
msgid "Press F2 or double click to edit cell contents."
@@ -1469,7 +1562,8 @@ msgid "New..."
msgstr "ÐоваÑ..."
#: LabelDialog.cpp:354
-msgid "You have left blank label names. These will be\n"
+msgid ""
+"You have left blank label names. These will be\n"
"skipped when repopulating the Label Tracks.\n"
"\n"
"Would you like to go back and provide names?"
@@ -1520,10 +1614,9 @@ msgstr "ÐведиÑе название доÑожки"
#: LabelDialog.cpp:705
#: LabelDialog.h:52
-#: LabelTrack.cpp:89
-#: Menus.cpp:632
-msgid "&Label Track"
-msgstr "ÐоÑожка по&меÑок"
+#: LabelTrack.cpp:92
+msgid "Label Track"
+msgstr ""
#: LangChoice.cpp:57
msgid "Audacity First Run"
@@ -1533,41 +1626,53 @@ msgstr "ÐеÑвÑй запÑÑк Audacity"
msgid "Choose Language for Audacity to use:"
msgstr "ÐÑбеÑиÑе ÑзÑк инÑеÑÑейÑа Ð´Ð»Ñ Audacity:"
+#: LangChoice.cpp:125
+#, c-format
+msgid "The language you have chosen, %s (%s), is not the same as the system language, %s (%s)."
+msgstr ""
+
#: Legacy.cpp:356
#, c-format
-msgid "Converted a 1.0 project file to the new format.\n"
+msgid ""
+"Converted a 1.0 project file to the new format.\n"
"The old file has been saved as '%s'"
-msgstr "ÐÑÐ¾ÐµÐºÑ ÑоÑмаÑа 1.0 пÑеобÑазован в пÑÐ¾ÐµÐºÑ Ð½Ð¾Ð²Ð¾Ð³Ð¾ ÑоÑмаÑа.\n"
+msgstr ""
+"ÐÑÐ¾ÐµÐºÑ ÑоÑмаÑа 1.0 пÑеобÑазован в пÑÐ¾ÐµÐºÑ Ð½Ð¾Ð²Ð¾Ð³Ð¾ ÑоÑмаÑа.\n"
"СÑаÑÑй Ñайл ÑоÑ
ÑанÑн под именем '%s'"
#: Legacy.cpp:357
msgid "Opening Audacity Project"
msgstr "ÐÑкÑÑваеÑÑÑ Ð¿ÑÐ¾ÐµÐºÑ Audacity"
+#: LyricsWindow.cpp:45
+#, c-format
+msgid "Audacity Lyrics%s"
+msgstr "ÐибÑеÑÑо в Audacity %s"
+
+#: LyricsWindow.cpp:77
+msgid "Bouncing Ball"
+msgstr "ÐÑÑкакиваÑÑий мÑÑ"
+
+#: LyricsWindow.cpp:88
+msgid "Highlight"
+msgstr "ÐодÑвеÑка"
+
#: Menus.cpp:194
msgid "&File"
msgstr "&Файл"
-#: Menus.cpp:196
-msgid "&New\tCtrl+N"
-msgstr "&СоздаÑÑ Ð¿ÑоекÑ\tCtrl+N"
-
-#: Menus.cpp:198
-msgid "&Open...\tCtrl+O"
-msgstr "&ÐÑкÑÑÑÑ...\tCtrl+O"
-
#: Menus.cpp:203
-msgid "&Close\tCtrl+W"
-msgstr "&ÐакÑÑÑÑ\tCtrl+W"
+msgid "&Close"
+msgstr "&ÐакÑÑÑÑ"
#: Menus.cpp:206
-msgid "&Save Project\tCtrl+S"
-msgstr "&СоÑ
ÑаниÑÑ Ð¿ÑоекÑ\tCtrl+S"
+msgid "&Save Project"
+msgstr "&СоÑ
ÑаниÑÑ Ð¿ÑоекÑ"
#: Menus.cpp:210
#: Project.cpp:2899
msgid "Save Project &As..."
-msgstr "СоÑ
ÑаниÑÑ Ð¿ÑÐ¾ÐµÐºÑ &как...\tCtrl+Shift+S"
+msgstr "СоÑ
ÑаниÑÑ Ð¿ÑÐ¾ÐµÐºÑ &как..."
#: Menus.cpp:212
msgid "Save Compressed Copy of Project..."
@@ -1587,8 +1692,8 @@ msgid "&Import"
msgstr "&ÐмпоÑÑиÑоваÑÑ "
#: Menus.cpp:231
-msgid "&Audio...\tCtrl+Shift+I"
-msgstr "&ÐвÑковой Ñайл...\tCtrl+Shift+I"
+msgid "&Audio..."
+msgstr "&ÐвÑковой Ñайл..."
#: Menus.cpp:232
msgid "&Labels..."
@@ -1619,9 +1724,9 @@ msgstr "ÐкÑпоÑÑиÑоваÑÑ Ð² &неÑколÑко Ñайлов..."
msgid "Export MIDI..."
msgstr "ÐкÑпоÑÑиÑоваÑÑ MIDI..."
-#: Menus.cpp:290
-msgid "CleanSpeech C&hain..."
-msgstr "&ЦепоÑка CleanSpeech..."
+#: Menus.cpp:303
+msgid "Appl&y Chain..."
+msgstr "ÐÑимениÑÑ &ÑепоÑкÑ..."
#: Menus.cpp:291
#: Menus.cpp:305
@@ -1636,10 +1741,6 @@ msgstr "&ÐкÑпоÑÑиÑоваÑÑ Ð¿ÑедÑÑÑановки CleenSpeach..."
msgid "I&mport CleanSpeech Presets..."
msgstr "Ðм&поÑÑиÑоваÑÑ Ð¿ÑедÑÑÑановки CleanSpeech..."
-#: Menus.cpp:303
-msgid "Appl&y Chain..."
-msgstr "ÐÑимениÑÑ &ÑепоÑкÑ..."
-
#: Menus.cpp:310
msgid "&Upload File..."
msgstr "Ð&агÑÑзиÑÑ Ñайл на FTP-ÑеÑвеÑ..."
@@ -1653,8 +1754,8 @@ msgid "&Print..."
msgstr "Ð&еÑаÑÑ..."
#: Menus.cpp:330
-msgid "E&xit\tCtrl+Q"
-msgstr "Ð&ÑйÑи\tCtrl+Q"
+msgid "E&xit"
+msgstr "Ð&ÑÑ
од"
#: Menus.cpp:338
#: toolbars/EditToolBar.cpp:76
@@ -1662,8 +1763,8 @@ msgid "&Edit"
msgstr "&ÐÑавка"
#: Menus.cpp:342
-msgid "&Undo\tCtrl+Z"
-msgstr "Ð&ÑмениÑÑ\tCtrl+Z"
+msgid "&Undo"
+msgstr "Ð&ÑмениÑÑ"
#: Menus.cpp:350
#: prefs/KeyConfigPrefs.cpp:371
@@ -1672,56 +1773,56 @@ msgid "&Redo"
msgstr "&ÐовÑоÑиÑÑ"
#: Menus.cpp:363
-msgid "Cu&t\tCtrl+X"
-msgstr "ÐÑÑе&заÑÑ\tCtrl+X"
+msgid "Cu&t"
+msgstr "ÐÑÑе&заÑÑ"
#: Menus.cpp:367
-msgid "Spl&it Cut\tCtrl+Alt+X"
-msgstr "РазделиÑÑ Ð²&ÑÑезанием\tCtrl+Alt+X"
+msgid "Spl&it Cut"
+msgstr "РазделиÑÑ Ð²&ÑÑезанием"
#: Menus.cpp:368
-msgid "&Copy\tCtrl+C"
-msgstr "С&копиÑоваÑÑ\tCtrl+C"
+msgid "&Copy"
+msgstr "С&копиÑоваÑÑ"
#: Menus.cpp:372
-msgid "&Paste\tCtrl+V"
-msgstr "&ÐÑÑавиÑÑ\tCtrl+V"
+msgid "&Paste"
+msgstr "&ÐÑÑавиÑÑ"
#: Menus.cpp:376
-msgid "Tri&m\tCtrl+T"
-msgstr "Ðб&ÑезаÑÑ Ð¿Ð¾ кÑаÑм\tCtrl+T"
+msgid "Tri&m"
+msgstr "Ðб&ÑезаÑÑ Ð¿Ð¾ кÑаÑм"
#: Menus.cpp:378
-msgid "&Delete\tCtrl+K"
-msgstr "&УдалиÑÑ\tCtrl+K"
+msgid "&Delete"
+msgstr "&УдалиÑÑ"
#: Menus.cpp:379
-msgid "Split D&elete\tCtrl+Alt+K"
-msgstr "РазделиÑÑ &Ñдалением\tCtrl+Alt+K"
+msgid "Split D&elete"
+msgstr "РазделиÑÑ &Ñдалением"
#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
-msgstr "ÐаполниÑÑ Ñи&Ñиной\tCtrl+L"
+msgid "Silence Audi&o"
+msgstr "ÐаполниÑÑ Ñи&Ñиной"
#: Menus.cpp:382
-msgid "Sp&lit\tCtrl+I"
-msgstr "Раз&делиÑÑ\tCtrl+I"
+msgid "Sp&lit"
+msgstr "Раз&делиÑÑ"
#: Menus.cpp:387
-msgid "Split Ne&w\tCtrl+Alt+I"
-msgstr "РазделиÑÑ Ð² &новÑÑ Ð´Ð¾ÑожкÑ\tCtrl+Alt+I"
+msgid "Split Ne&w"
+msgstr "РазделиÑÑ Ð² &новÑÑ Ð´Ð¾ÑожкÑ"
#: Menus.cpp:392
-msgid "&Join\tCtrl+J"
-msgstr "Ð&бÑединиÑÑ\tCtrl+J"
+msgid "&Join"
+msgstr "Ð&бÑединиÑÑ"
#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
-msgstr "Раз&делиÑÑ Ð¿Ð¾ ÑиÑине\tCtrl+Alt+J"
+msgid "Detac&h at Silences"
+msgstr "Раз&делиÑÑ Ð¿Ð¾ ÑиÑине"
#: Menus.cpp:394
-msgid "Duplic&ate\tCtrl+D"
-msgstr "ÐÑо&дÑблиÑоваÑÑ\tCtrl+D"
+msgid "Duplic&ate"
+msgstr "ÐÑо&дÑблиÑоваÑÑ"
#: Menus.cpp:400
#: Menus.cpp:639
@@ -1734,80 +1835,65 @@ msgstr "Ðоме&ÑеннÑе облаÑÑи"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:409
-msgid "&Cut\tAlt+X"
-msgstr "ÐÑÑе&заÑÑ\tAlt+X"
+msgid "&Cut"
+msgstr "ÐÑÑе&заÑÑ"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:414
-msgid "&Split Cut\tShift+Alt+X"
-msgstr "РазделиÑÑ Ð²&ÑÑезанием\tShift+Alt+X"
+msgid "&Split Cut"
+msgstr "РазделиÑÑ Ð²&ÑÑезанием"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:419
-msgid "Co&py\tShift+Alt+C"
-msgstr "С&копиÑоваÑÑ\tShift+Alt+C"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:425
-msgid "&Delete\tAlt+K"
-msgstr "&УдалиÑÑ\tAlt+K"
+msgid "Co&py"
+msgstr "С&копиÑоваÑÑ"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:430
-msgid "Sp&lit Delete\tShift+Alt+K"
-msgstr "РазделиÑÑ &Ñдалением\tShift+Alt+K"
+msgid "Sp&lit Delete"
+msgstr "РазделиÑÑ &Ñдалением"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:435
-msgid "Sile&nce\tAlt+L"
-msgstr "&ÐаполниÑÑ ÑиÑиной\tAlt+L"
+msgid "Sile&nce"
+msgstr "&ÐаполниÑÑ ÑиÑиной"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:441
-msgid "Spli&t\tAlt+I"
-msgstr "&РазделиÑÑ\tAlt+I"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:446
-msgid "&Join\tAlt+J"
-msgstr "Ð&бÑединиÑÑ\tAlt+J"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
-msgstr "Ра&зделиÑÑ Ð¿Ð¾ ÑиÑине\tShift+Alt+J"
+msgid "Spli&t"
+msgstr "&РазделиÑÑ"
#: Menus.cpp:456
msgid "&Select"
msgstr "&ÐÑделиÑÑ"
#: Menus.cpp:457
-msgid "&All\tCtrl+A"
-msgstr "&ÐÑÑ\tCtrl+A"
+msgid "&All"
+msgstr "&ÐÑÑ"
#: Menus.cpp:458
-msgid "&None\tCtrl+Shift+A"
-msgstr "С&нÑÑÑ Ð²Ñделение\tCtrl+Shift+A"
+msgid "&None"
+msgstr "С&нÑÑÑ Ð²Ñделение"
#: Menus.cpp:462
-msgid "&Left at Playback Position\t["
-msgstr "&Слева Ð¾Ñ Ð¿Ð¾Ð·Ð¸Ñии воÑпÑоизведениÑ\t["
+msgid "&Left at Playback Position"
+msgstr "&Слева Ð¾Ñ Ð¿Ð¾Ð·Ð¸Ñии воÑпÑоизведениÑ"
#: Menus.cpp:463
-msgid "&Right at Playback Position\t]"
-msgstr "С&пÑава Ð¾Ñ ÑоÑки воÑпÑоизведениÑ\t]"
+msgid "&Right at Playback Position"
+msgstr "С&пÑава Ð¾Ñ ÑоÑки воÑпÑоизведениÑ"
#: Menus.cpp:467
-msgid "Track &Start to Cursor\tShift+J"
-msgstr "&ÐÑ Ð½Ð°Ñала доÑожки до кÑÑÑоÑа\tShift+J"
+msgid "Track &Start to Cursor"
+msgstr "&ÐÑ Ð½Ð°Ñала доÑожки до кÑÑÑоÑа"
#: Menus.cpp:468
-msgid "Cursor to Track &End\tShift+K"
-msgstr "ÐÑ &кÑÑÑоÑа до конÑа доÑожки\tShift+K"
+msgid "Cursor to Track &End"
+msgstr "ÐÑ &кÑÑÑоÑа до конÑа доÑожки"
#: Menus.cpp:474
-msgid "Find &Zero Crossings\tZ"
-msgstr "ÐайÑи бли&жайÑие нÑлевÑе ÑоÑки\tZ"
+msgid "Find &Zero Crossings"
+msgstr "ÐайÑи бли&жайÑие нÑлевÑе ÑоÑки"
#: Menus.cpp:476
msgid "Mo&ve Cursor"
@@ -1822,12 +1908,12 @@ msgid "to Selection En&d"
msgstr "к &конÑÑ Ð²ÑделениÑ"
#: Menus.cpp:483
-msgid "to Track &Start\tJ"
-msgstr "к наÑÐ°Ð»Ñ &доÑожки\tJ"
+msgid "to Track &Start"
+msgstr "к наÑÐ°Ð»Ñ &доÑожки"
#: Menus.cpp:484
-msgid "to Track &End\tK"
-msgstr "к &конÑÑ Ð´Ð¾Ñожки\tK"
+msgid "to Track &End"
+msgstr "к &конÑÑ Ð´Ð¾Ñожки"
#: Menus.cpp:491
msgid "Re&gion Save"
@@ -1849,66 +1935,45 @@ msgstr "&ÐапеÑеÑÑ"
msgid "&Unlock"
msgstr "&ÐÑпеÑеÑÑ"
-#: Menus.cpp:511
-msgid "Turn Snap-To On"
-msgstr "ÐклÑÑиÑÑ Ð¿ÑивÑзкÑ"
-
-#: Menus.cpp:512
-msgid "Turn Snap-To Off"
-msgstr "ÐÑклÑÑиÑÑ Ð¿ÑивÑзкÑ"
-
-#: Menus.cpp:513
-msgid "Turn Grid Snap On"
-msgstr "ÐклÑÑиÑÑ Ð¿ÑивÑÐ·ÐºÑ Ð¿Ð¾ ÑеÑке"
-
-#: Menus.cpp:514
-msgid "Turn Grid Snap Off"
-msgstr "ÐÑклÑÑиÑÑ Ð¿ÑивÑÐ·ÐºÑ Ð¿Ð¾ ÑеÑке"
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr "&ÐаÑамеÑÑÑ\tCtrl+,"
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
-msgstr "&ÐаÑамеÑÑÑ\tCtrl+P"
+msgid "Pre&ferences..."
+msgstr "&ÐаÑамеÑÑÑ"
#: Menus.cpp:533
msgid "&View"
msgstr "&Ðид"
#: Menus.cpp:535
-msgid "Zoom &In\tCtrl+1"
-msgstr "ÐÑи&близиÑÑ\tCtrl+1"
+msgid "Zoom &In"
+msgstr "ÐÑи&близиÑÑ"
#: Menus.cpp:538
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "ÐбÑ&ÑнÑй маÑÑÑаб\tCtrl+2"
+msgid "Zoom &Normal"
+msgstr "ÐбÑ&ÑнÑй маÑÑÑаб"
#: Menus.cpp:539
-msgid "Zoom &Out\tCtrl+3"
-msgstr "ÐÑ&далиÑÑ\tCtrl+3"
+msgid "Zoom &Out"
+msgstr "ÐÑ&далиÑÑ"
#: Menus.cpp:542
-msgid "&Fit in Window\tCtrl+F"
-msgstr "&УмеÑÑиÑÑ Ð² окне\tCtrl+F"
+msgid "&Fit in Window"
+msgstr "&УмеÑÑиÑÑ Ð² окне"
#: Menus.cpp:543
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "УмеÑÑиÑÑ Ð¿Ð¾ &веÑÑикали\tCtrl+Shift+F"
+msgid "Fit &Vertically"
+msgstr "УмеÑÑиÑÑ Ð¿Ð¾ &веÑÑикали"
#: Menus.cpp:544
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "ÐаÑÑÑабиÑоваÑÑ Ð² &вÑделение\tCtrl+E"
+msgid "&Zoom to Selection"
+msgstr "ÐаÑÑÑабиÑоваÑÑ Ð² &вÑделение"
#: Menus.cpp:547
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
-msgstr "&СвеÑнÑÑÑ Ð²Ñе доÑожки\tCtrl+Shift+C"
+msgid "&Collapse All Tracks"
+msgstr "&СвеÑнÑÑÑ Ð²Ñе доÑожки"
#: Menus.cpp:548
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
-msgstr "&РазвеÑнÑÑÑ Ð²Ñе доÑожки\tCtrl+Shift+X"
+msgid "E&xpand All Tracks"
+msgstr "&РазвеÑнÑÑÑ Ð²Ñе доÑожки"
#: Menus.cpp:551
msgid "&Show Clipping"
@@ -1918,6 +1983,10 @@ msgstr "&ÐоказÑваÑÑ Ð¿ÐµÑегÑÑзкÑ"
msgid "&History..."
msgstr "&ÐÑÑоÑÐ¸Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ð¹ в пÑоекÑе..."
+#: Menus.cpp:530
+msgid "&Lyrics..."
+msgstr "&ÐибÑеÑÑо..."
+
#: Menus.cpp:566
msgid "&Toolbars"
msgstr "&Ðанели"
@@ -1968,43 +2037,43 @@ msgstr "УпÑоÑеннÑй инÑеÑÑейÑ"
msgid "T&ransport"
msgstr "&УпÑавление"
-#: Menus.cpp:591
-msgid "Play\tSpace"
-msgstr ""
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play"
+msgstr "ÐоÑпÑоизвеÑÑи"
#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
-msgstr ""
+msgid "&Loop Play"
+msgstr "ÐоÑпÑоизвеÑÑи в &Ñикле"
#: Menus.cpp:593
-msgid "&Pause\tP"
-msgstr "&ÐÑиоÑÑановиÑÑ\tP"
+msgid "&Pause"
+msgstr "&ÐаÑза"
-#: Menus.cpp:596
-msgid "&Stop\tSpace"
-msgstr ""
+#: Menus.cpp:602
+msgid "&Stop"
+msgstr "&СÑоп"
#: Menus.cpp:595
#: Menus.cpp:1010
-msgid "Skip to Start\tHome"
-msgstr "ÐеÑейÑи к наÑÐ°Ð»Ñ Ð´Ð¾Ñожки\tHome"
+msgid "Skip to Start"
+msgstr "ÐеÑейÑи к наÑÐ°Ð»Ñ Ð´Ð¾Ñожки"
#: Menus.cpp:597
#: Menus.cpp:1011
-msgid "Skip to End\tEnd"
-msgstr "ÐеÑейÑи к конÑÑ Ð´Ð¾Ñожки\tEnd"
+msgid "Skip to End"
+msgstr "ÐеÑейÑи к конÑÑ Ð´Ð¾Ñожки"
#: Menus.cpp:600
-msgid "&Record\tR"
-msgstr "&ÐапиÑаÑÑ\tR"
+msgid "&Record"
+msgstr "&ÐапиÑаÑÑ"
#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
-msgstr "&Ð¢Ð°Ð¹Ð¼ÐµÑ Ð·Ð°Ð¿Ð¸Ñи...\tShift+T"
+msgid "&Timer Record..."
+msgstr "&Ð¢Ð°Ð¹Ð¼ÐµÑ Ð·Ð°Ð¿Ð¸Ñи..."
#: Menus.cpp:604
-msgid "Append Record\tShift+R"
-msgstr "ÐапиÑаÑÑ Ð² конеÑ\tShift+R"
+msgid "Append Record"
+msgstr "ÐапиÑаÑÑ Ð² конеÑ"
#: Menus.cpp:607
msgid "Overdub (on/off)"
@@ -2031,13 +2100,20 @@ msgid "Add &New"
msgstr "&СоздаÑÑ"
#: Menus.cpp:630
-msgid "&Audio Track\tCtrl+Shift+N"
-msgstr "&ÐоноÑониÑеÑÐºÐ°Ñ Ð´Ð¾Ñожка\tCtrl+Shift+N"
+msgid "&Audio Track"
+msgstr "&ÐоноÑониÑеÑÐºÐ°Ñ Ð´Ð¾Ñожка"
#: Menus.cpp:631
msgid "&Stereo Track"
msgstr "&СÑеÑеоÑониÑеÑÐºÐ°Ñ Ð´Ð¾Ñожка"
+#: LabelDialog.cpp:705
+#: LabelDialog.h:52
+#: LabelTrack.cpp:89
+#: Menus.cpp:632
+msgid "&Label Track"
+msgstr "ÐоÑожка по&меÑок"
+
#: Menus.cpp:633
#: TimeTrack.cpp:44
msgid "&Time Track"
@@ -2045,11 +2121,11 @@ msgstr "ÐоÑожка &вÑемени"
#: Menus.cpp:643
msgid "Mi&x and Render"
-msgstr "&СвеÑÑи в Ð¾Ð´Ð½Ñ Ð´Ð¾ÑожкÑ"
+msgstr "&СвеÑÑи в поÑледнÑÑ Ð´Ð¾ÑожкÑ"
#: Menus.cpp:647
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
-msgstr "СвеÑÑи в новÑÑ Ð´Ð¾ÑожкÑ\tCtrl+Shift+M"
+msgid "Mix and Render to New Track"
+msgstr "СвеÑÑи в новÑÑ Ð´Ð¾ÑожкÑ"
#: Menus.cpp:651
msgid "&Resample..."
@@ -2060,12 +2136,12 @@ msgid "Remo&ve Tracks"
msgstr "&УдалиÑÑ Ð´Ð¾Ñожки"
#: Menus.cpp:667
-msgid "&Mute All Tracks\tCtrl+U"
-msgstr "&ÐÑиглÑÑиÑÑ Ð²Ñе доÑожки\tCtrl+U"
+msgid "&Mute All Tracks"
+msgstr "&ÐÑиглÑÑиÑÑ Ð²Ñе доÑожки"
#: Menus.cpp:668
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
-msgstr "&ÐеÑнÑÑÑ Ð³ÑомкоÑÑÑ Ð²Ñем доÑожкам\tCtrl+Shift+U"
+msgid "&UnMute All Tracks"
+msgstr "&ÐеÑнÑÑÑ Ð³ÑомкоÑÑÑ Ð²Ñем доÑожкам"
#: Menus.cpp:672
msgid "Align with &Zero"
@@ -2111,17 +2187,22 @@ msgstr "ÐÑÑовнÑÑÑ Ð¸ пеÑемеÑÑиÑÑ &кÑÑÑоÑ"
msgid "Synchronize MIDI with Audio"
msgstr "СинÑ
ÑонизиÑоваÑÑ MIDI Ñо звÑком"
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
-msgstr "СвÑзÑваÑÑ Ð·Ð²ÑковÑе и помеÑоÑнÑе доÑожки"
+#: Menus.cpp:713
+msgid "&Link Audio and Label Tracks"
+msgstr "СвÑзÑваÑÑ &звÑковÑе и помеÑоÑнÑе доÑожки"
-#: Menus.cpp:709
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "Ðо&бавиÑÑ Ð¿Ð¾Ð¼ÐµÑÐºÑ Ðº вÑделениÑ\tCtrl+B"
+#: Menus.cpp:716
+msgid "Add Label At &Selection"
+msgstr "Ðо&бавиÑÑ Ð¿Ð¾Ð¼ÐµÑÐºÑ Ðº вÑделениÑ"
#: Menus.cpp:710
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "Ðоб&авиÑÑ Ð¿Ð¾Ð¼ÐµÑÐºÑ Ð² ÑоÑÐºÑ Ð²Ð¾ÑпÑоизведениÑ\tCtrl+M"
+msgid "Add Label At &Playback Position"
+msgstr "Ðоб&авиÑÑ Ð¿Ð¾Ð¼ÐµÑÐºÑ Ð² ÑоÑÐºÑ Ð²Ð¾ÑпÑоизведениÑ"
+
+#: LabelDialog.cpp:100
+#: Menus.cpp:713
+msgid "&Edit Labels"
+msgstr "&ÐзмениÑÑ Ð¿Ð¾Ð¼ÐµÑки"
#: Menus.cpp:716
msgid "S&ort tracks"
@@ -2149,14 +2230,14 @@ msgstr "Ðез ÑоÑÑиÑовки"
msgid "Effe&ct"
msgstr "ÐÑÑек&ÑÑ"
-#: Menus.cpp:799
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "ÐовÑоÑиÑÑ Ð¿Ð¾Ñледний ÑÑÑекÑ\tCtrl+R"
-
#: Menus.cpp:877
msgid "&Analyze"
msgstr "&Ðнализ"
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr "ÐонÑÑаÑÑ..."
+
#: Menus.cpp:879
msgid "Plot Spectrum..."
msgstr "ÐоÑÑÑоиÑÑ Ð³ÑаÑик ÑпекÑÑа..."
@@ -2170,13 +2251,13 @@ msgstr "&СпÑавка"
msgid "&About Audacity CleanSpeech..."
msgstr "&Ðб Audacity CleanSpeech..."
-#: Menus.cpp:957
-msgid "&Show Welcome Message..."
-msgstr "&ÐводнÑй кÑÑÑ..."
+#: Menus.cpp:965
+msgid "&Quick Help (in web browser)"
+msgstr "&ÐводнÑй кÑÑÑ (в бÑаÑзеÑе)"
-#: Menus.cpp:958
-msgid "&Index..."
-msgstr "&СодеÑжание..."
+#: Menus.cpp:966
+msgid "&Manual (in web browser)"
+msgstr "&Ð ÑководÑÑво полÑзоваÑÐµÐ»Ñ (в бÑаÑзеÑе)"
#: Menus.cpp:959
msgid "Show &Log..."
@@ -2195,180 +2276,148 @@ msgid "&Audio Device Info..."
msgstr "&ÐнÑоÑмаÑÐ¸Ñ Ð¾ звÑковом ÑÑÑÑойÑÑве..."
#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
+msgid "Move backward from toolbars to tracks"
msgstr ""
#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
+msgid "Move forward from toolbars to tracks"
msgstr ""
#: Menus.cpp:985
-msgid "Selection Tool\tF1"
-msgstr "ÐÑделение\tF1"
+msgid "Selection Tool"
+msgstr "ÐÑделение"
#: Menus.cpp:986
-msgid "Envelope Tool\tF2"
-msgstr "Ðзменение огибаÑÑей\tF2"
+msgid "Envelope Tool"
+msgstr "Ðзменение огибаÑÑей"
#: Menus.cpp:987
-msgid "Draw Tool\tF3"
-msgstr "Ðзменение огибаÑÑей\tF3"
+msgid "Draw Tool"
+msgstr "Ðзменение огибаÑÑей"
#: Menus.cpp:988
-msgid "Zoom Tool\tF4"
-msgstr "ÐаÑÑÑабиÑование\tF4"
+msgid "Zoom Tool"
+msgstr "ÐаÑÑÑабиÑование"
#: Menus.cpp:989
-msgid "Time Shift Tool\tF5"
-msgstr "ÐеÑемеÑение\tF5"
+msgid "Time Shift Tool"
+msgstr "ÐеÑемеÑение"
#: Menus.cpp:990
-msgid "Multi Tool\tF6"
-msgstr "УнивеÑÑалÑнÑй инÑÑÑÑменÑ\tF6"
+msgid "Multi Tool"
+msgstr "УнивеÑÑалÑнÑй инÑÑÑÑменÑ"
#: Menus.cpp:992
-msgid "Next Tool\tD"
-msgstr "СледÑÑÑий инÑÑÑÑменÑ\tD"
+msgid "Next Tool"
+msgstr "СледÑÑÑий инÑÑÑÑменÑ"
#: Menus.cpp:993
-msgid "Previous Tool\tA"
-msgstr "ÐÑедÑдÑÑий инÑÑÑÑменÑ\tA"
+msgid "Previous Tool"
+msgstr "ÐÑедÑдÑÑий инÑÑÑÑменÑ"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
+msgid "Play/Stop"
msgstr ""
-#: Menus.cpp:996
-msgid "Stop\tS"
-msgstr "ÐÑÑановиÑÑ\tS"
-
-#: Menus.cpp:997
-msgid "Pause\tP"
-msgstr "ÐÑиоÑÑановиÑÑ\tP"
-
-#: Menus.cpp:998
-msgid "Record\tR"
-msgstr "ÐапиÑаÑÑ\tR"
-
-#: Menus.cpp:999
-msgid "Record Append\tShift+R"
-msgstr "ÐапиÑаÑÑ Ð² ÐºÐ¾Ð½ÐµÑ Ð´Ð¾Ñожки\tShift+R"
-
#: Menus.cpp:1001
-msgid "Play/Stop and Set Cursor\tShift+A"
-msgstr "ÐоÑпÑоиÑÑи/ÐÑÑановиÑÑ Ð¸ ÑÑÑановиÑÑ ÐºÑÑÑоÑ\tShift+A"
+msgid "Play/Stop and Set Cursor"
+msgstr "ÐоÑпÑоиÑÑи/ÐÑÑановиÑÑ Ð¸ ÑÑÑановиÑÑ ÐºÑÑÑоÑ"
#: Menus.cpp:1004
-msgid "Play One Second\t1"
-msgstr "ÐоÑпÑоизвеÑÑи 1 Ñ\t1"
+msgid "Play One Second"
+msgstr "ÐоÑпÑоизвеÑÑи 1 Ñ"
#: Menus.cpp:1005
-msgid "Play To Selection\tB"
-msgstr "ÐоÑпÑоизвеÑÑи вÑделение\tB"
-
-#: Menus.cpp:1006
-msgid "Play Looped\tL"
-msgstr "ÐоÑпÑоизводиÑÑ Ð² Ñикле\tL"
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
+msgid "Play To Selection"
+msgstr "ÐоÑпÑоизвеÑÑи вÑделение"
#: Menus.cpp:1008
-msgid "Play Cut Preview\tC"
-msgstr "ÐÑоигÑаÑÑ ÑезÑлÑÑÐ°Ñ Ð²ÑÑезаниÑ\tC"
+msgid "Play Cut Preview"
+msgstr "ÐÑоигÑаÑÑ ÑезÑлÑÑÐ°Ñ Ð²ÑÑезаниÑ"
#: Menus.cpp:1013
-msgid "Selection to Start\tShift+Home"
-msgstr "ÐÑделиÑÑ Ð´Ð¾ наÑала доÑожки\tShift+Home"
+msgid "Selection to Start"
+msgstr "ÐÑделиÑÑ Ð´Ð¾ наÑала доÑожки"
#: Menus.cpp:1014
-msgid "Selection to End\tShift+End"
-msgstr "ÐÑделиÑÑ Ð¾Ñ ÐºÑÑÑоÑа до конÑа\tShift+End"
+msgid "Selection to End"
+msgstr "ÐÑделиÑÑ Ð¾Ñ ÐºÑÑÑоÑа до конÑа"
#: Menus.cpp:1016
-msgid "DeleteKey\tBackspace"
-msgstr "ÐлавиÑа ÑдалениÑ\tBackspace"
+msgid "DeleteKey"
+msgstr "ÐлавиÑа ÑдалениÑ"
#: Menus.cpp:1021
-msgid "DeleteKey2\tDelete"
-msgstr "ÐÑоÑÐ°Ñ ÐºÐ»Ð°Ð²Ð¸Ñа ÑдалениÑ\tDelete"
+msgid "DeleteKey2"
+msgstr "ÐÑоÑÐ°Ñ ÐºÐ»Ð°Ð²Ð¸Ñа ÑдалениÑ"
-#: Menus.cpp:1027
-msgid "Seek left short period during playback\tLeft"
+#: Menus.cpp:1019
+msgid "Short seek left during playback"
msgstr ""
-#: Menus.cpp:1028
-msgid "Seek right short period during playback\tRight"
+#: Menus.cpp:1020
+msgid "Short seek right during playback"
msgstr ""
-#: Menus.cpp:1029
-msgid "Seek left long period during playback\tShift+Left"
+#: Menus.cpp:1021
+msgid "Long seek left during playback"
msgstr ""
-#: Menus.cpp:1030
-msgid "Seek right long period during playback\tShift+Right"
+#: Menus.cpp:1022
+msgid "Long Seek right during playback"
msgstr ""
#: Menus.cpp:1034
-msgid "Move Focus to Previous Track\tUp"
-msgstr "ÐеÑейÑи на доÑÐ¾Ð¶ÐºÑ Ð²Ð²ÐµÑÑ
\tUp"
+msgid "Move Focus to Previous Track"
+msgstr "ÐеÑейÑи на доÑÐ¾Ð¶ÐºÑ Ð²Ð²ÐµÑÑ
"
-#: Menus.cpp:1035
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
-msgstr "ÐеÑейÑи на доÑÐ¾Ð¶ÐºÑ Ð²Ð²ÐµÑÑ
и ÑмениÑÑ Ð²Ñделение\tShift+Up"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
+msgstr ""
#: Menus.cpp:1036
-msgid "Move Focus to Next Track\tDown"
-msgstr "ÐеÑейÑи на доÑÐ¾Ð¶ÐºÑ Ð²Ð½Ð¸Ð·\tDown"
+msgid "Move Focus to Next Track"
+msgstr "ÐеÑейÑи на доÑÐ¾Ð¶ÐºÑ Ð²Ð½Ð¸Ð·"
-#: Menus.cpp:1037
-msgid "Move Focus to Next and Change Selection\tShift+Down"
-msgstr "ÐеÑейÑи на доÑÐ¾Ð¶ÐºÑ Ð²Ð½Ð¸Ð· и ÑмениÑÑ Ð²Ñделение\tShift+Down"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
+msgstr ""
#: Menus.cpp:1038
-msgid "Toggle Focused Track\tReturn"
-msgstr "ÐеÑеклÑÑиÑÑ ÑокÑÑ Ð´Ð¾Ñожки\tReturn"
-
-#: Menus.cpp:1039
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr "ÐеÑеклÑÑиÑÑ ÑокÑÑ Ð´Ð¾Ñожки\tNUMPAD_ENTER"
+msgid "Toggle Focused Track"
+msgstr "ÐеÑеклÑÑиÑÑ ÑокÑÑ Ð´Ð¾Ñожки"
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
+#: Menus.cpp:1033
+msgid "Cursor Left"
msgstr ""
-#: Menus.cpp:1042
-msgid "Cursor Left\tLeft"
-msgstr "ÐÑÑÑÐ¾Ñ Ð²Ð»ÐµÐ²Ð¾\tLeft"
-
-#: Menus.cpp:1043
-msgid "Cursor Right\tRight"
-msgstr "ÐÑÑÑÐ¾Ñ Ð²Ð¿Ñаво\tRight"
+#: Menus.cpp:1034
+msgid "Cursor Right"
+msgstr ""
#: Menus.cpp:1044
-msgid "Cursor Short Jump Left\t,"
+msgid "Cursor Short Jump Left"
msgstr ""
#: Menus.cpp:1045
-msgid "Cursor Short Jump Right\t."
+msgid "Cursor Short Jump Right"
msgstr ""
#: Menus.cpp:1046
-msgid "Cursor Long Jump Left\tShift+,"
+msgid "Cursor Long Jump Left"
msgstr ""
#: Menus.cpp:1047
-msgid "Cursor Long Jump Right\tShift+."
+msgid "Cursor Long Jump Right"
msgstr ""
-#: Menus.cpp:1049
-msgid "Selection Extend Left\tShift+Left"
-msgstr "РаÑÑÑнÑÑÑ Ð²Ñделение Ñлева\tShift+Left"
+#: Menus.cpp:1040
+msgid "Selection Extend Left"
+msgstr ""
-#: Menus.cpp:1050
-msgid "Selection Extend Right\tShift+Right"
-msgstr "РаÑÑÑнÑÑÑ Ð²Ñделение ÑпÑава\tShift+Right"
+#: Menus.cpp:1041
+msgid "Selection Extend Right"
+msgstr ""
#: Menus.cpp:1052
msgid "Set (or Extend) Left Selection"
@@ -2379,52 +2428,52 @@ msgid "Set (or Extend) Right Selection"
msgstr ""
#: Menus.cpp:1055
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "СÑÑнÑÑÑ Ð²Ñделение Ñлева\tCtrl+Shift+Right"
+msgid "Selection Contract Left"
+msgstr "СÑÑнÑÑÑ Ð²Ñделение Ñлева"
#: Menus.cpp:1056
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "СÑÑнÑÑÑ Ð²Ñделение ÑпÑава\tCtrl+Shift+Left"
+msgid "Selection Contract Right"
+msgstr "СÑÑнÑÑÑ Ð²Ñделение ÑпÑава"
#: Menus.cpp:1058
-msgid "Change pan on focused track\tShift+P"
-msgstr "ÐзмениÑÑ Ð¿Ð°Ð½Ð¾ÑÐ°Ð¼Ñ Ð°ÐºÑивной доÑожки\tShift+G"
+msgid "Change pan on focused track"
+msgstr "ÐзмениÑÑ Ð¿Ð°Ð½Ð¾ÑÐ°Ð¼Ñ Ð°ÐºÑивной доÑожки"
#: Menus.cpp:1059
-msgid "Pan left on focused track\tAlt+Shift+Left"
-msgstr "ÐаноÑамиÑование влево Ð´Ð»Ñ Ð°ÐºÑивной доÑожки\tCtrl+Shift+Left"
+msgid "Pan left on focused track"
+msgstr "ÐаноÑамиÑование влево Ð´Ð»Ñ Ð°ÐºÑивной доÑожки"
#: Menus.cpp:1060
-msgid "Pan right on focused track\tAlt+Shift+Right"
-msgstr "ÐаноÑамиÑование влево Ð´Ð»Ñ Ð°ÐºÑивной доÑожки\tCtrl+Shift+Right"
+msgid "Pan right on focused track"
+msgstr "ÐаноÑамиÑование влево Ð´Ð»Ñ Ð°ÐºÑивной доÑожки"
#: Menus.cpp:1061
-msgid "Change gain on focused track\tShift+G"
-msgstr "ÐзмениÑÑ ÑÑиление акÑивной доÑожки\tShift+G"
+msgid "Change gain on focused track"
+msgstr "ÐзмениÑÑ ÑÑиление акÑивной доÑожки"
#: Menus.cpp:1062
-msgid "Increase gain on focused track\tAlt+Shift+Up"
-msgstr "УвелиÑиÑÑ ÑÑиление акÑивной доÑожки\tAlt+Shift+Up"
+msgid "Increase gain on focused track"
+msgstr "УвелиÑиÑÑ ÑÑиление акÑивной доÑожки"
#: Menus.cpp:1063
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
-msgstr "УменÑÑиÑÑ ÑÑиление акÑивной доÑожки\tAlt+Shift+Down"
+msgid "Decrease gain on focused track"
+msgstr "УменÑÑиÑÑ ÑÑиление акÑивной доÑожки"
#: Menus.cpp:1064
-msgid "Open menu on focused track\tShift+M"
-msgstr "ÐÑкÑÑÑÑ Ð¼ÐµÐ½Ñ Ð°ÐºÑивной доÑожки\tShift+M"
+msgid "Open menu on focused track"
+msgstr "ÐÑкÑÑÑÑ Ð¼ÐµÐ½Ñ Ð°ÐºÑивной доÑожки"
#: Menus.cpp:1065
-msgid "Mute/Unmute focused track\tShift+U"
-msgstr "ÐÑиглÑÑиÑÑ/веÑнÑÑÑ Ð·Ð²Ñк доÑожке в ÑокÑÑе\tShift+U"
+msgid "Mute/Unmute focused track"
+msgstr "ÐÑиглÑÑиÑÑ/веÑнÑÑÑ Ð·Ð²Ñк доÑожке в ÑокÑÑе"
#: Menus.cpp:1066
-msgid "Solo/Unsolo focused track\tShift+S"
-msgstr "ÐклÑÑиÑÑ Ð¸Ð»Ð¸ оÑклÑÑиÑÑ Ñоло Ð´Ð»Ñ Ð°ÐºÑивной доÑожки\tShift+S"
+msgid "Solo/Unsolo focused track"
+msgstr "ÐклÑÑиÑÑ Ð¸Ð»Ð¸ оÑклÑÑиÑÑ Ñоло Ð´Ð»Ñ Ð°ÐºÑивной доÑожки"
#: Menus.cpp:1067
-msgid "Close focused track\tShift+C"
-msgstr "ÐакÑÑÑÑ Ð°ÐºÑивнÑÑ Ð´Ð¾ÑожкÑ\tShift+C"
+msgid "Close focused track"
+msgstr "ÐакÑÑÑÑ Ð°ÐºÑивнÑÑ Ð´Ð¾ÑожкÑ"
#: Menus.cpp:1069
msgid "Snap To On"
@@ -2435,7 +2484,51 @@ msgid "Snap To Off"
msgstr "ÐÑклÑÑиÑÑ Ð¿Ñилипание"
#: Menus.cpp:1071
-msgid "Full screen on/off\tF11"
+msgid "Full screen on/off"
+msgstr "ÐолноÑкÑаннÑй Ñежим"
+
+#: Menus.cpp:1066
+msgid "Adjust output gain"
+msgstr ""
+
+#: Menus.cpp:1067
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Decrease output gain"
+msgstr ""
+
+#: Menus.cpp:1069
+msgid "Adjust input gain"
+msgstr ""
+
+#: Menus.cpp:1070
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1071
+msgid "Decrease input gain"
+msgstr ""
+
+#: Menus.cpp:1073
+msgid "Adjust input source"
+msgstr ""
+
+#: Menus.cpp:1086
+msgid "Play at speed"
+msgstr ""
+
+#: Menus.cpp:1087
+msgid "Adjust playback speed"
+msgstr ""
+
+#: Menus.cpp:1088
+msgid "Increase playback speed"
+msgstr ""
+
+#: Menus.cpp:1089
+msgid "Decrease playback speed"
msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
@@ -2482,13 +2575,18 @@ msgstr "Ðо названиÑ"
msgid "Tracks sorted by name"
msgstr "ÐоÑожки вÑÑÑÑÐ¾ÐµÐ½Ñ Ð¿Ð¾ имени"
-#: Menus.cpp:2029
-msgid "Set Left Selection Bound"
-msgstr "УказаÑÑ Ð»ÐµÐ²Ñй кÑай вÑделениÑ"
+#: Menus.cpp:2058
+#: Menus.cpp:2094
+msgid "Position"
+msgstr "Ðоложение"
-#: Menus.cpp:2064
-msgid "Set Right Selection Bound"
-msgstr "УказаÑÑ Ð¿ÑавÑй кÑай вÑделениÑ"
+#: Menus.cpp:2058
+msgid "Set Left Selection Boundary"
+msgstr ""
+
+#: Menus.cpp:2094
+msgid "Set Right Selection Boundary"
+msgstr ""
#: Menus.cpp:2333
msgid "You must select a track first."
@@ -2496,8 +2594,8 @@ msgstr "ÐÑедваÑиÑелÑно вÑделиÑе доÑожкÑ."
#: Menus.cpp:2365
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "ÐовÑоÑиÑÑ %s\tCtrl+R"
+msgid "Repeat %s"
+msgstr "ÐовÑоÑиÑÑ %s"
#: Menus.cpp:2508
msgid "There are no label tracks to export."
@@ -2512,7 +2610,8 @@ msgid "MIDI file (*.mid)|*.mid|Allegro file (*.gro)|*.gro"
msgstr "Ð¤Ð°Ð¹Ð»Ñ MIDI (*.mid)|*.mid|Ð¤Ð°Ð¹Ð»Ñ Allegro (*.gro)|*.gro"
#: Menus.cpp:2639
-msgid "You have selected a filename with an unrecognized file extension.\n"
+msgid ""
+"You have selected a filename with an unrecognized file extension.\n"
"Do you want to continue?"
msgstr ""
@@ -2714,17 +2813,6 @@ msgstr "РазделиÑÑ Ð² новÑÑ Ð´Ð¾ÑожкÑ"
msgid "Split at labels"
msgstr "РазделиÑÑ Ð¿Ð¾ помеÑкам"
-#: Menus.cpp:3965
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "ÐÐ»Ñ Ð¿Ð¾ÑÑÑÐ¾ÐµÐ½Ð¸Ñ ÑпекÑÑогÑÐ°Ð¼Ð¼Ñ Ð²Ñе вÑбÑаннÑе доÑожки\n"
-"Ð´Ð¾Ð»Ð¶Ð½Ñ Ð¸Ð¼ÐµÑÑ Ð¾Ð´Ð¸Ð½Ð°ÐºÐ¾Ð²ÑÑ ÑаÑÑоÑÑ"
-
-#: Menus.cpp:3991
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "ÐÑделен ÑлиÑком болÑÑой звÑковой ÑÑагменÑ.\n"
-"ÐÑдÑÑ Ð¿ÑоанализиÑÐ¾Ð²Ð°Ð½Ñ ÑолÑко пеÑвÑе %.1f ÑекÑнд."
-
#: Menus.cpp:4126
#, c-format
msgid "Imported labels from '%s'"
@@ -2775,7 +2863,7 @@ msgstr "ÐÑавка меÑаданнÑÑ
"
#: Menus.cpp:4258
#, c-format
msgid "Rendered all audio in track '%s'"
-msgstr ""
+msgstr "ÐÑе доÑожки ÑÐ²ÐµÐ´ÐµÐ½Ñ Ð² '%s'"
#: Menus.cpp:4259
msgid "Render"
@@ -2791,10 +2879,10 @@ msgstr ""
msgid "Mixed and rendered %d tracks into one new mono track"
msgstr ""
-#: Menus.cpp:4269
-#: Mix.cpp:121
-msgid "&Mix and Render"
-msgstr "С&веÑÑи"
+#: Menus.cpp:4457
+#: Mix.cpp:120
+msgid "Mix and Render"
+msgstr "Сведение"
#: Menus.cpp:4399
msgid "Aligned with zero"
@@ -2861,7 +2949,8 @@ msgstr "Создан Ð½Ð¾Ð²Ð°Ñ Ð´Ð¾Ñожка Ð´Ð»Ñ Ð¿Ð¾Ð¼ÐµÑок"
#: Menus.cpp:4607
msgid "The version of Audacity you are using does not support multiple time tracks."
-msgstr "ÐагÑÑÐ¶ÐµÐ½Ð½Ð°Ñ Ð²ÐµÑÑÐ¸Ñ Audacity не Ð¼Ð¾Ð¶ÐµÑ Ð¸ÑполÑзоваÑÑ\n"
+msgstr ""
+"ÐагÑÑÐ¶ÐµÐ½Ð½Ð°Ñ Ð²ÐµÑÑÐ¸Ñ Audacity не Ð¼Ð¾Ð¶ÐµÑ Ð¸ÑполÑзоваÑÑ\n"
"неÑколÑко доÑожек вÑемени в одном пÑоекÑе."
#: Menus.cpp:4618
@@ -2957,6 +3046,10 @@ msgstr "ÐÑи пеÑаÑи возникла пÑоблема."
msgid "Print"
msgstr "ÐапеÑаÑаÑÑ"
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr "ÐовÑоÑиÑÑ Ð¿Ð¾Ñледний ÑÑÑекÑ"
+
#: Project.cpp:676
msgid "Main Mix"
msgstr ""
@@ -2986,13 +3079,15 @@ msgid "Save changes before closing?"
msgstr "СоÑ
ÑаниÑÑ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¿ÐµÑед закÑÑÑием?"
#: Project.cpp:1570
-msgid "\n"
+msgid ""
+"\n"
"If saved, the project will have no tracks.\n"
"\n"
"To save any previously open tracks:\n"
"Cancel, Edit > Undo until all tracks\n"
"are open, then File > Save Project."
-msgstr "\n"
+msgstr ""
+"\n"
"ÐÑли ÑоÑ
ÑаниÑÑ, в пÑоекÑе не бÑдеÑ\n"
"ни одной доÑожки.\n"
"\n"
@@ -3006,9 +3101,9 @@ msgstr "\n"
msgid "Save changes?"
msgstr "СоÑ
ÑаниÑÑ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ?"
-#: Project.cpp:1775
-msgid "All files|*.*|All supported files|"
-msgstr "ÐÑе ÑайлÑ|*.*|ÐÑе поддеÑживаемÑе ÑайлÑ|"
+#: Project.cpp:1949
+msgid "All files|*|All supported files|"
+msgstr "ÐÑе ÑайлÑ|*|ÐÑе поддеÑживаемÑе ÑайлÑ|"
#: Project.cpp:1805
msgid "Select one or more audio files..."
@@ -3021,14 +3116,16 @@ msgstr "ÐÑоекÑÑ Audacity|*.aup|"
#: Project.cpp:1885
#: Project.cpp:2307
#, c-format
-msgid "This file was saved by Audacity %s, a much\n"
+msgid ""
+"This file was saved by Audacity %s, a much\n"
"older version. The format has changed.\n"
"\n"
"Audacity could corrupt the file in opening\n"
"it, so you must back it up first.\n"
"\n"
"Open this file now?"
-msgstr "ÐÑÐ¾Ñ Ñайл бÑл ÑоÑ
Ñанен в Audacity %s â доÑÑаÑоÑно\n"
+msgstr ""
+"ÐÑÐ¾Ñ Ñайл бÑл ÑоÑ
Ñанен в Audacity %s â доÑÑаÑоÑно\n"
"ÑÑаÑой веÑÑии пÑогÑаммÑ. С ÑеÑ
Ð¿Ð¾Ñ ÑоÑÐ¼Ð°Ñ Ñайлов изменилÑÑ.\n"
"\n"
"Audacity Ð¼Ð¾Ð¶ÐµÑ Ð½ÐµÑаÑнно иÑпоÑÑиÑÑ Ð´Ð°Ð½Ð½Ñе пÑи оÑкÑÑÑии,\n"
@@ -3045,6 +3142,18 @@ msgstr "1.0 или Ñанее"
msgid "Opening old project file"
msgstr "ÐÑкÑÑваеÑÑÑ Ñайл ÑÑаÑого ÑоÑмаÑа пÑоекÑов"
+#: Project.cpp:2097
+msgid ""
+"You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2098
+msgid "Backup file detected"
+msgstr "Ðайден Ñайл ÑезеÑвной копии"
+
#: Project.cpp:1918
#: Project.cpp:1926
msgid "Error opening file"
@@ -3052,9 +3161,11 @@ msgstr "ÐÑибка пÑи ÑÑении Ñайла"
#: Project.cpp:1932
#, c-format
-msgid "File may be invalid or corrupted: \n"
+msgid ""
+"File may be invalid or corrupted: \n"
"%s"
-msgstr "Файл Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð½ÐµÐ¿Ð¾Ð´Ð´ÐµÑживаемого ÑоÑмаÑа или иÑпоÑÑен: \n"
+msgstr ""
+"Файл Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð½ÐµÐ¿Ð¾Ð´Ð´ÐµÑживаемого ÑоÑмаÑа или иÑпоÑÑен: \n"
"%s"
#: Project.cpp:1933
@@ -3093,10 +3204,12 @@ msgstr "Ðе ÑдалоÑÑ Ð½Ð°Ð¹Ñи Ð¿Ð°Ð¿ÐºÑ Ñ Ð´Ð°Ð½Ð½Ñми пÑоекÑ
#: Project.cpp:2276
#, c-format
-msgid "This file was saved using Audacity %s.\n"
+msgid ""
+"This file was saved using Audacity %s.\n"
"You are using Audacity %s - you need to upgrade to\n"
"a newer version to open this file."
-msgstr "ÐÑÐ¾Ñ Ñайл бÑл ÑоÑ
ÑанÑн в Audacity %s.\n"
+msgstr ""
+"ÐÑÐ¾Ñ Ñайл бÑл ÑоÑ
ÑанÑн в Audacity %s.\n"
"СейÑÐ°Ñ Ð²Ñ Ð¸ÑполÑзÑеÑе Audacity %s â вам нÑжно \n"
"ÑÑÑановиÑÑ Ð±Ð¾Ð»ÐµÐµ новÑÑ Ð²ÐµÑÑиÑ, ÑÑÐ¾Ð±Ñ Ð¾ÑкÑÑÑÑ ÑÑÐ¾Ñ Ñайл."
@@ -3104,16 +3217,20 @@ msgstr "ÐÑÐ¾Ñ Ñайл бÑл ÑоÑ
ÑанÑн в Audacity %s.\n"
msgid "Can't open project file"
msgstr "Ðевозможно оÑкÑÑÑÑ Ñайл пÑоекÑа"
-#: Project.cpp:2314
+#: Project.cpp:2508
#, c-format
-msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+msgid ""
+"This file was saved by Audacity %s.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
msgstr ""
-#: Project.cpp:2537
-msgid "Your project is now empty.\n"
+#: Project.cpp:2505
+msgid ""
+"Your project is now empty.\n"
"If saved, the project will have no tracks.\n"
"\n"
"To save any previously open tracks:\n"
@@ -3123,15 +3240,17 @@ msgid "Your project is now empty.\n"
"Save anyway?"
msgstr ""
-#: Project.cpp:2538
+#: Project.cpp:2506
msgid "Warning empty project"
msgstr ""
-#: Project.cpp:2591
+#: Project.cpp:2816
#, c-format
-msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
-msgstr "Ðе ÑдалоÑÑ ÑоÑ
ÑаниÑÑ Ð¿ÑоекÑ. Ðозможно, Ñ Ð²Ð°Ñ Ð½ÐµÑ Ð¿Ñав\n"
+msgid ""
+"Could not save project. Perhaps %s \n"
+"is not writable or the disk is full."
+msgstr ""
+"Ðе ÑдалоÑÑ ÑоÑ
ÑаниÑÑ Ð¿ÑоекÑ. Ðозможно, Ñ Ð²Ð°Ñ Ð½ÐµÑ Ð¿Ñав\n"
"на запиÑÑ Ð² %s, либо диÑк пеÑеполнен."
#: Project.cpp:2593
@@ -3139,6 +3258,14 @@ msgstr "Ðе ÑдалоÑÑ ÑоÑ
ÑаниÑÑ Ð¿ÑоекÑ. Ðозможно,
msgid "Error saving project"
msgstr "ÐÑибка пÑи ÑоÑ
Ñанении пÑоекÑа"
+#: Project.cpp:2842
+#: Project.cpp:3943
+#: Tags.cpp:1198
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
#: Project.cpp:2683
#, c-format
msgid "Saved %s"
@@ -3169,14 +3296,16 @@ msgid "Windows PCM Audio file (*.wav)|*.wav"
msgstr "Ð¤Ð°Ð¹Ð»Ñ Windows PCM Audio (*.wav)|*.wav"
#: Project.cpp:2894
-msgid "Audacity compressed project files (.aup) save your work in a smaller, compressed (.ogg) format. \n"
+msgid ""
+"Audacity compressed project files (.aup) save your work in a smaller, compressed (.ogg) format. \n"
"Compressed project files are a good way to transmit your project online, because they are much smaller. \n"
"To open a compressed project takes longer than usual, as it imports each compressed track. \n"
"\n"
"Most other programs can't open Audacity project files.\n"
"When you want to save a file that can be opened by other programs, select one of the\n"
"Export commands."
-msgstr "СжаÑÑе пÑоекÑнÑе ÑÐ°Ð¹Ð»Ñ Audacity (.aup) ÑоÑ
ÑанÑÑÑ Ð²Ð°ÑÑ ÑабоÑÑ Ð² неболÑÑиÑ
\n"
+msgstr ""
+"СжаÑÑе пÑоекÑнÑе ÑÐ°Ð¹Ð»Ñ Audacity (.aup) ÑоÑ
ÑанÑÑÑ Ð²Ð°ÑÑ ÑабоÑÑ Ð² неболÑÑиÑ
\n"
"ÑайлаÑ
ÑоÑмаÑа Ogg Vorbis (.ogg) Ñ Ð½ÐµÐºÐ¾ÑоÑой поÑеÑей в каÑеÑÑве звÑÑаниÑ.\n"
"Такой ваÑÐ¸Ð°Ð½Ñ Ñ
оÑоÑо подÑ
Ð¾Ð´Ð¸Ñ Ð´Ð»Ñ Ð¿ÐµÑедаÑи ваÑиÑ
пÑоекÑов по ÑеÑи.\n"
"ÐÑкÑÑÑие ÑжаÑого пÑоекÑа Ð·Ð°Ð½Ð¸Ð¼Ð°ÐµÑ Ð±Ð¾Ð»ÑÑе вÑемени Ñем обÑÑно, поÑколÑкÑ\n"
@@ -3187,18 +3316,24 @@ msgstr "СжаÑÑе пÑоекÑнÑе ÑÐ°Ð¹Ð»Ñ Audacity (.aup) ÑоÑ
Ñан
"подÑ
одÑÑий ÑоÑмаÑ, воÑполÑзовавÑиÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¾Ð¹ »Файл â ÐкÑпоÑÑиÑоваÑÑ»."
#: Project.cpp:2897
-msgid "You are saving an Audacity project file (.aup).\n"
+msgid ""
+"You are saving an Audacity project file (.aup).\n"
"\n"
"Saving a project creates a file that only Audacity can open.\n"
"\n"
"To save an audio file for other programs, use one of the \"File > Export\" commands.\n"
-msgstr "ÐÑ ÑоÑ
ÑанÑеÑе Ñайл пÑоекÑа Audacity (.aup).\n"
+msgstr ""
+"ÐÑ ÑоÑ
ÑанÑеÑе Ñайл пÑоекÑа Audacity (.aup).\n"
"\n"
"ÐолÑÑеннÑй Ñайл ÑÐ¼Ð¾Ð¶ÐµÑ Ð¾ÑкÑÑÑÑ ÑолÑко Audacity\n"
"\n"
"ЧÑÐ¾Ð±Ñ ÑоÑ
ÑаниÑÑ Ñайл в ÑоÑмаÑе, ÑиÑаемом извне, \n"
"иÑполÑзÑйÑе диалог ÑкÑпоÑÑа («Файл â ÐкÑпоÑÑиÑоваÑÑ»).\n"
+#: Project.cpp:3191
+msgid "Save Project As..."
+msgstr "СоÑ
ÑаниÑÑ Ð¿ÑÐ¾ÐµÐºÑ ÐºÐ°Ðº..."
+
#: Project.cpp:2901
msgid "Audacity projects (*.aup)|*.aup"
msgstr "ÐÑоекÑÑ Audacity (*.aup)|*.aup"
@@ -3245,12 +3380,12 @@ msgstr "Свободное пÑоÑÑÑанÑÑво на диÑке законÑ
#: Project.cpp:3336
#, c-format
msgid "Import(s) complete. Running %d on-demand waveform calculations. Overall %2.0f%% complete."
-msgstr ""
+msgstr "ÐмпоÑÑ Ð·Ð°Ð²ÐµÑÑен. ÐÑполнÑеÑÑÑ ÑаÑÑÐµÑ Ð²Ð¾Ð»Ð½Ð¾Ð²Ð¾Ð¹ ÑоÑÐ¼Ñ (в колиÑеÑÑве %d) на леÑÑ. ÐбÑÐ°Ñ Ð³Ð¾ÑовноÑÑÑ: %2.0f%%."
#: Project.cpp:3339
#, c-format
msgid "Import complete. Running an on-demand waveform calculation. %2.0f%% complete."
-msgstr ""
+msgstr "ÐмпоÑÑ Ð·Ð°Ð²ÐµÑÑен. ÐÑполнÑеÑÑÑ ÑаÑÑÐµÑ Ð²Ð¾Ð»Ð½Ð¾Ð²Ð¾Ð¹ ÑоÑÐ¼Ñ Ð½Ð° леÑÑ. ÐоÑовноÑÑÑ: %2.0f%%."
#: Project.cpp:3617
msgid "Could not remove old autosave file: "
@@ -3314,13 +3449,174 @@ msgstr "24-bit PCM"
msgid "32-bit float"
msgstr "32-bit float"
-#: Screenshot.cpp:384
-msgid "Saved "
-msgstr ""
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr "ÐаÑ
Ð²Ð°Ñ Ñнимков ÑкÑана"
-#: Screenshot.cpp:387
-msgid "Error trying to save file: "
-msgstr "ÐÑибка пÑи попÑÑке ÑоÑ
ÑаниÑÑ Ñайл: "
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr "ÐÑбеÑиÑе Ð¿Ð°Ð¿ÐºÑ Ð´Ð»Ñ Ñ
ÑÐ°Ð½ÐµÐ½Ð¸Ñ Ñнимков"
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr "СоÑ
ÑанÑÑÑ Ñнимки в:"
+
+#: export/ExportMultiple.cpp:245
+#: prefs/DirectoriesPrefs.cpp:92
+msgid "Choose..."
+msgstr "ÐÑбÑаÑÑ..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr "ÐаÑ
Ð²Ð°Ñ Ð¾ÐºÐ½Ð° или ÑкÑана Ñеликом"
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr "УменÑÑиÑÑ Ð¾ÐºÐ½Ð¾"
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr "УвелиÑиÑÑ Ð¾ÐºÐ½Ð¾"
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr "Синий Ñон"
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr "ÐелÑй Ñон"
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr "СнÑÑÑ Ð¾ÐºÐ½Ð¾ без декоÑаÑий"
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr "СнÑÑÑ Ð¾ÐºÐ½Ð¾ полноÑÑÑÑ"
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr "СнÑÑÑ Ð¾ÐºÐ½Ð¾ и вокÑÑг"
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr "СнÑÑÑ Ð²ÐµÑÑ ÑкÑан"
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr "ÐодождаÑÑ 5 ÑекÑнд и ÑнÑÑÑ Ð²ÐµÑÑ
нее окно или диалог"
+
+#: effects/Normalize.cpp:74
+#: effects/Normalize.cpp:75
+msgid "false"
+msgstr "да"
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr "СнÑÑÑ ÑаÑÑÑ Ð¾ÐºÐ½Ð° Ñ Ð¿ÑоекÑом"
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr "ÐÑе панели инÑÑÑÑменÑов"
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr "ÐÐ°Ð½ÐµÐ»Ñ Ð²ÑделениÑ"
+
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr "ÐнÑÑÑÑменÑÑ"
+
+#: toolbars/ControlToolBar.cpp:83
+msgid "Control"
+msgstr "УпÑавление"
+
+#: effects/LoadEffects.cpp:117
+#: toolbars/MixerToolBar.cpp:60
+msgid "Mixer"
+msgstr "ÐикÑеÑÑ"
+
+#: toolbars/MeterToolBar.cpp:50
+msgid "Meter"
+msgstr "ÐндикаÑоÑ"
+
+#: Screenshot.cpp:390
+msgid "Edit"
+msgstr "РедакÑиÑование"
+
+#: prefs/AudioIOPrefs.cpp:121
+#: prefs/AudioIOPrefs.cpp:139
+#: prefs/MidiIOPrefs.cpp:118
+#: prefs/MidiIOPrefs.cpp:136
+#: toolbars/DeviceToolBar.cpp:57
+msgid "Device"
+msgstr "УÑÑÑойÑÑво"
+
+#: toolbars/TranscriptionToolBar.cpp:84
+msgid "Transcription"
+msgstr "ТÑанÑкÑипÑиÑ"
+
+#: TrackPanel.cpp:457
+#: TrackPanel.cpp:458
+msgid "Track Panel"
+msgstr "ÐÐ°Ð½ÐµÐ»Ñ Ð´Ð¾Ñожки"
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr "Ðинейка"
+
+#: export/ExportMultiple.cpp:288
+#: export/ExportMultiple.cpp:290
+msgid "Tracks"
+msgstr "ÐоÑожки"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr "ÐеÑÐ²Ð°Ñ Ð´Ð¾Ñожка"
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr "ÐÑоÑÐ°Ñ Ð´Ð¾Ñожка"
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr "ÐÐ¸Ð´Ð¸Ð¼Ð°Ñ Ð² окне длиÑелÑноÑÑÑ"
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr "1 Ñ"
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr "10 Ñ"
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr "1 мин"
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr "5 мин"
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr "1 Ñ"
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr "Ðизкие доÑожки"
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr "СÑедние доÑожки"
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr "ÐÑÑокие доÑожки"
+
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr "ÐÑбеÑиÑе Ð¿Ð°Ð¿ÐºÑ Ð´Ð»Ñ Ñ
ÑÐ°Ð½ÐµÐ½Ð¸Ñ Ñнимков ÑкÑана"
#: Sequence.cpp:804
#: Sequence.cpp:814
@@ -3347,8 +3643,8 @@ msgid "Activation level (dB):"
msgstr "УÑÐ¾Ð²ÐµÐ½Ñ Ð³ÑомкоÑÑи Ð´Ð»Ñ Ð°ÐºÑиваÑии (Ðб):"
#: SplashDialog.cpp:60
-msgid "&Welcome to Audacity!"
-msgstr "&ÐобÑо пожаловаÑÑ Ð² Audacity!"
+msgid "Welcome to Audacity!"
+msgstr "ÐобÑо пожаловаÑÑ Ð² Audacity!"
#: SplashDialog.cpp:112
msgid "Don't show this again at start up"
@@ -3387,20 +3683,18 @@ msgstr "ÐомменÑаÑии"
#: Tags.cpp:777
msgid "Use arrow keys (or RETURN key after editing) to navigate fields."
-msgstr ""
+msgstr "ÐÑполÑзÑйÑе Ð´Ð»Ñ Ð¿ÐµÑемеÑÐµÐ½Ð¸Ñ Ð¿Ð¾ полÑм клавиÑи-ÑÑÑелки и ввод Ð´Ð»Ñ Ð·Ð°Ð²ÐµÑÑÐµÐ½Ð¸Ñ Ð¿Ñавки"
-#: Tags.cpp:813
-msgid "Tag Name"
+#: Tags.cpp:812
+msgid "Tag"
msgstr "Ðоле"
-#: Tags.cpp:814
-msgid "Tag Value"
+#: Tags.cpp:813
+msgid "Value"
msgstr "ÐнаÑение"
-#: Tags.cpp:829
-#: Tags.cpp:1486
-#: prefs/KeyConfigPrefs.cpp:116
-msgid "&Clear"
+#: Tags.cpp:828
+msgid "Cl&ear"
msgstr "Ð&ÑиÑÑиÑÑ"
#: Tags.cpp:835
@@ -3409,11 +3703,11 @@ msgstr "ÐанÑÑ"
#: Tags.cpp:826
msgid "E&dit..."
-msgstr ""
+msgstr "&ÐзмениÑÑ"
#: Tags.cpp:827
msgid "Rese&t..."
-msgstr ""
+msgstr "&СбÑоÑиÑÑ"
#: Tags.cpp:845
#: Tags.cpp:1470
@@ -3435,11 +3729,9 @@ msgstr "Ð&агÑÑзиÑÑ..."
msgid "&Save..."
msgstr "&СоÑ
ÑаниÑÑ..."
-#: Tags.cpp:852
-#: Tags.cpp:1477
-#: Tags.cpp:2004
-msgid "S&et Default"
-msgstr "&ÐÑполÑзоваÑÑ Ð²ÑÑдÑ"
+#: Tags.cpp:851
+msgid "Set De&fault"
+msgstr "ÐÑполÑзоваÑÑ &везде"
#: Tags.cpp:1002
#: Tags.cpp:1640
@@ -3485,7 +3777,7 @@ msgstr "Ðевозможно оÑкÑÑÑÑ Ñайл Ñ Ð¶Ð°Ð½Ñами."
#: Tags.cpp:1084
msgid "Load Metadata As:"
-msgstr ""
+msgstr "ÐагÑÑзиÑÑ Ð¼ÐµÑаданнÑе как:"
#: Tags.cpp:1122
#: Tags.cpp:1772
@@ -3502,84 +3794,108 @@ msgstr "ÐÑибка пÑи загÑÑзке меÑаданнÑÑ
"
msgid "Save Metadata As:"
msgstr "СоÑ
ÑаниÑÑ Ð¼ÐµÑаданнÑе как:"
+#: Tags.cpp:1200
+msgid "Error saving tags file"
+msgstr "ÐÑибка пÑи ÑоÑ
Ñанении Ñайла Ñ Ð¼ÐµÑаданнÑми"
+
#: Theme.cpp:638
#, c-format
-msgid "Audacity could not write file:\n"
+msgid ""
+"Audacity could not write file:\n"
" %s."
-msgstr "Audacity не ÑдалоÑÑ Ð·Ð°Ð¿Ð¸ÑаÑÑ Ñайл:\n"
+msgstr ""
+"Audacity не ÑдалоÑÑ Ð·Ð°Ð¿Ð¸ÑаÑÑ Ñайл:\n"
" %s."
#: Theme.cpp:656
#, c-format
-msgid "Audacity could not open file:\n"
+msgid ""
+"Audacity could not open file:\n"
" %s\n"
"for writing."
-msgstr "Audacity не ÑдалоÑÑ Ð¾ÑкÑÑÑÑ Ñайл:\n"
+msgstr ""
+"Audacity не ÑдалоÑÑ Ð¾ÑкÑÑÑÑ Ñайл:\n"
" %s\n"
"на запиÑÑ."
#: Theme.cpp:664
#, c-format
-msgid "Audacity could not write images to file:\n"
+msgid ""
+"Audacity could not write images to file:\n"
" %s."
-msgstr "Audacity не ÑдалоÑÑ Ð·Ð°Ð¿Ð¸ÑаÑÑ Ð¸Ð·Ð¾Ð±ÑÐ°Ð¶ÐµÐ½Ð¸Ñ Ð² Ñайл:\n"
+msgstr ""
+"Audacity не ÑдалоÑÑ Ð·Ð°Ð¿Ð¸ÑаÑÑ Ð¸Ð·Ð¾Ð±ÑÐ°Ð¶ÐµÐ½Ð¸Ñ Ð² Ñайл:\n"
" %s."
#: Theme.cpp:799
#, c-format
-msgid "Audacity could not find file:\n"
+msgid ""
+"Audacity could not find file:\n"
" %s.\n"
"Theme not loaded."
-msgstr "Audacity не ÑдалоÑÑ Ð½Ð°Ð¹Ñи Ñайл:\n"
+msgstr ""
+"Audacity не ÑдалоÑÑ Ð½Ð°Ð¹Ñи Ñайл:\n"
" %s.\n"
"Тема не загÑÑжена."
#: Theme.cpp:807
#: Theme.cpp:896
#, c-format
-msgid "Audacity could not load file:\n"
+msgid ""
+"Audacity could not load file:\n"
" %s.\n"
"Bad png format perhaps?"
-msgstr "Audacity не ÑдалоÑÑ Ð½Ð°Ð¹Ñи Ñайл:\n"
+msgstr ""
+"Audacity не ÑдалоÑÑ Ð½Ð°Ð¹Ñи Ñайл:\n"
" %s.\n"
"ÐÐ¾Ð¶ÐµÑ Ð±ÑÑÑ, непÑавилÑнÑй ÑоÑÐ¼Ð°Ñ PNG?"
#: Theme.cpp:823
-msgid "Audacity could not read its default theme.\n"
+msgid ""
+"Audacity could not read its default theme.\n"
"Please report the problem."
-msgstr "Audacity не Ñмог пÑоÑиÑаÑÑ ÑÐ²Ð¾Ñ Ð¸ÑÑ
однÑÑ ÑемÑ.\n"
+msgstr ""
+"Audacity не Ñмог пÑоÑиÑаÑÑ ÑÐ²Ð¾Ñ Ð¸ÑÑ
однÑÑ ÑемÑ.\n"
"СообÑиÑе ÑазÑабоÑÑикам о возникÑей пÑоблеме."
#: Theme.cpp:918
#, c-format
-msgid "None of the expected theme component files\n"
+msgid ""
+"None of the expected theme component files\n"
" were found in:\n"
" %s."
-msgstr "Ðи один из ожидаемÑÑ
компоненÑов ÑемÑ\n"
+msgstr ""
+"Ðи один из ожидаемÑÑ
компоненÑов ÑемÑ\n"
"не бÑл найден в:\n"
" %s."
#: Theme.cpp:942
#: effects/NoiseRemoval.cpp:173
#, c-format
-msgid "Could not create directory:\n"
+msgid ""
+"Could not create directory:\n"
" %s"
-msgstr "Ðе ÑдалоÑÑ ÑоздаÑÑ ÐºÐ°Ñалог:\n"
+msgstr ""
+"Ðе ÑдалоÑÑ ÑоздаÑÑ ÐºÐ°Ñалог:\n"
" %s"
#: Theme.cpp:963
#, c-format
-msgid "Audacity could not save file:\n"
+msgid ""
+"Audacity could not save file:\n"
" %s"
-msgstr "Audacity не ÑдалоÑÑ ÑоÑ
ÑаниÑÑ Ñайл:\n"
+msgstr ""
+"Audacity не ÑдалоÑÑ ÑоÑ
ÑаниÑÑ Ñайл:\n"
" %s"
#: Theme.cpp:975
#, c-format
-msgid "All required files in:\n"
+msgid ""
+"All required files in:\n"
" %s\n"
"were already present."
-msgstr "ÐÑе ÑÑебÑемÑе ÑайлÑ:\n"
+msgstr ""
+"ÐÑе ÑÑебÑемÑе ÑайлÑ:\n"
" %s\n"
"Ñже пÑиÑÑÑÑÑвÑÑÑ."
@@ -3593,10 +3909,22 @@ msgstr "ÐÑе ÑÑебÑемÑе ÑайлÑ:\n"
msgid "Duration"
msgstr "ÐлиÑелÑноÑÑÑ"
+#: TimeTrack.cpp:44
+msgid "Time Track"
+msgstr ""
+
#: TimerRecordDialog.cpp:68
msgid "Audacity Timer Record"
msgstr "Ð¢Ð°Ð¹Ð¼ÐµÑ Ð·Ð°Ð¿Ð¸Ñи Audacity"
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr "ÐлиÑелÑноÑÑÑ Ñавна нÑлÑ. ÐиÑего не бÑÐ´ÐµÑ Ð·Ð°Ð¿Ð¸Ñано."
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr "ÐÑибка длиÑелÑноÑÑи"
+
#: TimerRecordDialog.cpp:224
msgid "Recording start"
msgstr "ÐаÑало запиÑи"
@@ -3636,11 +3964,6 @@ msgstr "Ðжидание наÑала запиÑи %s.\n"
msgid "Audacity Timer Record - Waiting for Start"
msgstr ""
-#: TrackPanel.cpp:457
-#: TrackPanel.cpp:458
-msgid "Track Panel"
-msgstr "ÐÐ°Ð½ÐµÐ»Ñ Ð´Ð¾Ñожки"
-
#: TrackPanel.cpp:541
#: prefs/QualityPrefs.cpp:97
msgid "Other..."
@@ -3715,6 +4038,10 @@ msgstr "СделаÑÑ ÑÑеÑеоÑониÑеÑкой"
msgid "Split Stereo Track"
msgstr "РазделиÑÑ ÑÑеÑеодоÑожкÑ"
+#: TrackPanel.cpp:617
+msgid "Split Stereo to Mono"
+msgstr "РазделиÑÑ ÑÑеÑео на моно"
+
#: TrackPanel.cpp:566
msgid "Set Sample Format"
msgstr "РазÑÑдноÑÑÑ"
@@ -3924,6 +4251,10 @@ msgstr "ÐбÑединиÑÑ"
msgid "Merged Clips"
msgstr ""
+#: TrackPanel.cpp:4286
+msgid "Remove"
+msgstr ""
+
#: TrackPanel.cpp:4176
msgid "Removed Cut Line"
msgstr "Удалена Ð»Ð¸Ð½Ð¸Ñ Ð²ÑÑезаниÑ"
@@ -3936,14 +4267,6 @@ msgstr "ÐаноÑамиÑование ÑкоÑÑекÑиÑовано"
msgid "Adjusted gain"
msgstr "УÑиление ÑкоÑÑекÑиÑованно"
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr ""
-
#: TrackPanel.cpp:5923
msgid "Can't delete track with active audio"
msgstr "Ðевозможно ÑдалиÑÑ Ð´Ð¾ÑÐ¾Ð¶ÐºÑ Ñ Ð°ÐºÑивнÑм звÑком"
@@ -3979,6 +4302,11 @@ msgstr "Ðанал"
msgid "Split stereo track '%s'"
msgstr "РазделиÑÑ ÑÑеÑеодоÑÐ¾Ð¶ÐºÑ '%s'"
+#: TrackPanel.cpp:6241
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
#: TrackPanel.cpp:6169
#, c-format
msgid "Made '%s' a stereo track"
@@ -4059,6 +4387,10 @@ msgstr ""
msgid "Face size"
msgstr ""
+#: TrackPanel.cpp:6931
+msgid "Stereo, 999999Hz"
+msgstr "СÑеÑео, 999999 ÐÑ"
+
#: TrackPanel.cpp:7171
msgid "Mute"
msgstr "ТиÑ
о"
@@ -4097,7 +4429,8 @@ msgstr ""
#: VoiceKey.cpp:376
#: VoiceKey.cpp:517
msgid "Selection is too small to use voice key."
-msgstr "ÐÑделение ÑлиÑком мало Ð´Ð»Ñ \n"
+msgstr ""
+"ÐÑделение ÑлиÑком мало Ð´Ð»Ñ \n"
"иÑполÑÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð³Ð¾Ð»Ð¾Ñового клÑÑа."
#: VoiceKey.cpp:843
@@ -4144,20 +4477,26 @@ msgstr "РаÑÑиÑÐµÐ½Ð¸Ñ 1 до %i"
msgid "Plugins %i to %i"
msgstr "РаÑÑиÑÐµÐ½Ð¸Ñ Ð¾Ñ %i до %i"
-#: commands/CommandManager.cpp:857
-msgid "Disallowed for some reason. Try selecting some audio first?"
+#: commands/CommandManager.cpp:881
+msgid ""
+"There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
msgstr ""
#: commands/CommandManager.cpp:892
-msgid "You can only do this when playing and recording are\n"
+msgid ""
+"You can only do this when playing and recording are\n"
" stopped. [Pausing is not sufficient.]"
-msgstr "ÐÑ Ð¼Ð¾Ð¶ÐµÑе ÑделаÑÑ ÑÑо ÑолÑко пÑи оÑклÑÑенном\n"
+msgstr ""
+"ÐÑ Ð¼Ð¾Ð¶ÐµÑе ÑделаÑÑ ÑÑо ÑолÑко пÑи оÑклÑÑенном\n"
"воÑпÑоизведении/запиÑи. ÐаÑза не поможеÑ."
#: commands/CommandManager.cpp:894
-msgid "You must first select some stereo audio for this\n"
+msgid ""
+"You must first select some stereo audio for this\n"
" to use. [You can't use this with mono.]"
-msgstr "СнаÑала нÑжно вÑбÑаÑÑ ÑÑеÑеодоÑожкÑ\n"
+msgstr ""
+"СнаÑала нÑжно вÑбÑаÑÑ ÑÑеÑеодоÑожкÑ\n"
"(Ñ Ð¼Ð¾Ð½Ð¾ÑониÑеÑкой ÑÑо не ÑÑабоÑаеÑ)"
#: commands/CommandManager.cpp:896
@@ -4165,9 +4504,11 @@ msgid "You must first select some audio for this to use."
msgstr "СнаÑала пÑидÑÑÑÑ Ð²ÑделиÑÑ Ð¾Ð±Ð»Ð°ÑÑÑ Ð·Ð²Ñка."
#: commands/CommandManager.cpp:898
-msgid "You must first select some audio for this\n"
+msgid ""
+"You must first select some audio for this\n"
" to use. [Selecting other kinds of track won't work.]"
-msgstr "СнаÑала пÑидÑÑÑÑ Ð²ÑделиÑÑ Ð¾Ð±Ð»Ð°ÑÑÑ Ð·Ð²Ñка.\n"
+msgstr ""
+"СнаÑала пÑидÑÑÑÑ Ð²ÑделиÑÑ Ð¾Ð±Ð»Ð°ÑÑÑ Ð·Ð²Ñка.\n"
"ÐÑделение доÑожки иного Ñипа не годиÑÑÑ."
#: commands/CommandManager.cpp:903
@@ -4183,6 +4524,14 @@ msgstr "ÐагÑÑжено %d гоÑÑÑиÑ
клавиÑ\n"
msgid "Loading keyboard shortcuts"
msgstr "ÐагÑÑжаÑÑÑÑ Ð³Ð¾ÑÑÑие клавиÑи..."
+#: Screenshot.cpp:384
+msgid "Saved "
+msgstr "СоÑ
ÑанÑн Ñайл "
+
+#: Screenshot.cpp:387
+msgid "Error trying to save file: "
+msgstr "ÐÑибка пÑи попÑÑке ÑоÑ
ÑаниÑÑ Ñайл: "
+
#: effects/Amplify.cpp:52
#, c-format
msgid "Applied effect: %s %.1f dB"
@@ -4204,7 +4553,7 @@ msgstr "УÑиление (Ðб):"
#: effects/Amplify.cpp:183
msgid "Amplification dB"
-msgstr ""
+msgstr "УÑиление, Ðб"
#: effects/Amplify.cpp:190
msgid "New Peak Amplitude (dB):"
@@ -4212,7 +4561,7 @@ msgstr "ÐÐ¾Ð²Ð°Ñ Ð¿Ð¸ÐºÐ¾Ð²Ð°Ñ Ð°Ð¼Ð¿Ð»Ð¸ÑÑда (Ðб):"
#: effects/Amplify.cpp:200
msgid "Allow clipping"
-msgstr "РазÑеÑиÑÑ ÑÑезание Ñигнала"
+msgstr "РазÑеÑиÑÑ Ð¿ÐµÑегÑÑÐ·ÐºÑ Ñигнала"
#: effects/Amplify.cpp:222
#: effects/Amplify.cpp:279
@@ -4226,7 +4575,7 @@ msgstr "УÑиление Ñигнала..."
#: effects/Amplify.h:51
msgid "Amplifying"
-msgstr "ÐÑоизводиÑÑÑ ÑÑиление Ñигнала"
+msgstr "ÐÑполнÑеÑÑÑ ÑÑиление Ñигнала"
#: effects/AutoDuck.cpp:125
msgid "You selected a track which does not contain audio. AutoDuck can only process audio tracks."
@@ -4342,7 +4691,7 @@ msgstr "ЧаÑÑоÑа (ÐÑ):"
#: effects/BassBoost.cpp:205
msgid "Frequency Hertz"
-msgstr ""
+msgstr "ЧаÑÑоÑа в геÑÑаÑ
"
#: effects/BassBoost.cpp:208
msgid "Boost (dB):"
@@ -4350,7 +4699,7 @@ msgstr "ÐовÑÑение (Ðб):"
#: effects/BassBoost.cpp:218
msgid "Boost dB"
-msgstr ""
+msgstr "УÑиление в деÑибелаÑ
"
#: effects/BassBoost.h:35
msgid "BassBoost..."
@@ -4589,7 +4938,7 @@ msgstr "Удаление ÑелÑков и ÑÑеÑка..."
#: effects/ClickRemoval.h:56
msgid "Removing clicks and pops..."
-msgstr "ÐÑоизводиÑÑÑ Ñдаление ÑелÑков и ÑÑеÑка..."
+msgstr "ÐÑполнÑеÑÑÑ Ñдаление ÑелÑков и ÑÑеÑка..."
#: effects/Compressor.cpp:461
msgid "Dynamic Range Compressor"
@@ -4623,9 +4972,9 @@ msgstr "ÐÑÐµÐ¼Ñ Ð¿ÐµÑвиÑного заÑÑÑ
аниÑ:"
msgid "Decay Time"
msgstr "ÐÑÐµÐ¼Ñ Ð¿ÐµÑвиÑного заÑÑÑ
аниÑ"
-#: effects/Compressor.cpp:530
-msgid "Normalize to 0dB after compressing"
-msgstr "ÐоÑмализоваÑÑ Ð°Ð¼Ð¿Ð»Ð¸ÑÑÐ´Ñ Ð´Ð¾ 0 Ðб поÑле компÑеÑÑии"
+#: effects/Compressor.cpp:533
+msgid "Make-up gain for 0dB after compressing"
+msgstr "ÐодогнаÑÑ ÑÑиление под 0 Ðб поÑле компÑеÑÑии"
#: effects/Compressor.cpp:563
#, c-format
@@ -4681,49 +5030,38 @@ msgstr "ÐомпÑеÑÑоÑ..."
msgid "Applying Dynamic Range Compression..."
msgstr "ÐÑименÑеÑÑÑ ÐºÐ¾Ð¼Ð¿ÑеÑÑÐ¸Ñ Ð´Ð¸Ð½Ð°Ð¼Ð¸ÑеÑкого диапазона..."
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr "Ðнализ конÑÑаÑÑа"
+
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
-msgstr ""
+msgstr "ÐÑенка пеÑеднего плана Ð´Ð»Ñ Ð¸Ð·Ð¼ÐµÑиÑÐµÐ»Ñ ÐºÐ¾Ð½ÑÑаÑÑа"
#: effects/Contrast.cpp:79
-msgid "Foreground times selected.\n"
+msgid ""
+"Foreground times selected.\n"
"Now select background and use Ctrl+Shift+T or menu again."
msgstr ""
+"УÑаÑÑок запиÑи Ñ Ð¿ÐµÑедним планом (голоÑом) вÑделен.\n"
+"ТепеÑÑ Ð²ÑделиÑе задний план (мÑзÑкÑ) и Ñнова нажмиÑе\n"
+"Ctrl+Shift+T."
#: effects/Contrast.cpp:127
-msgid "Start time after after end time!\n"
+msgid ""
+"Start time after after end time!\n"
"Please enter reasonable times."
msgstr ""
#: effects/Contrast.cpp:137
-msgid "Times are not reasonable!\n"
+msgid ""
+"Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
-#: effects/Contrast.cpp:187
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:275
-#: effects/Contrast.cpp:296
-#: effects/Contrast.cpp:374
-#: effects/Contrast.cpp:417
-#, fuzzy
-msgid "Measured"
-msgstr "ÐозможноÑÑи"
-
#: effects/Contrast.cpp:319
msgid "Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:323
-#, fuzzy
-msgid "Parameters"
-msgstr "&ÐаÑамеÑÑÑ"
+msgstr "ÐнализаÑÐ¾Ñ ÐºÐ¾Ð½ÑÑаÑÑа:"
#: effects/Contrast.cpp:330
#: effects/ToneGen.cpp:355
@@ -4741,50 +5079,52 @@ msgid "End"
msgstr "ÐонеÑ"
#: effects/Contrast.cpp:334
-#, fuzzy
msgid "Volume "
-msgstr "ÐикÑ"
+msgstr "ÐÑомкоÑÑÑ"
#: effects/Contrast.cpp:337
msgid "Foreground:"
-msgstr ""
+msgstr "ÐеÑедний план:"
#: effects/Contrast.cpp:350
msgid "Foreground start time"
-msgstr ""
+msgstr "ÐÑÐµÐ¼Ñ Ð½Ð°Ñала ÑÑагменÑа заднего плана"
#: effects/Contrast.cpp:368
msgid "Foreground end time"
-msgstr ""
+msgstr "ÐÑÐµÐ¼Ñ Ð·Ð°Ð²ÐµÑÑÐµÐ½Ð¸Ñ ÑÑагменÑа заднего плана"
+
+#: effects/Contrast.cpp:275
+#: effects/Contrast.cpp:296
+#: effects/Contrast.cpp:374
+#: effects/Contrast.cpp:417
+msgid "Measured"
+msgstr "ÐзмеÑено"
#: effects/Contrast.cpp:376
#: effects/Contrast.cpp:419
-#, fuzzy
msgid "Use selection"
-msgstr "ÐаполниÑÑ ÑиÑиной"
+msgstr "ÐÑполÑзоваÑÑ Ð²Ñделение"
#: effects/Contrast.cpp:380
-#, fuzzy
msgid "Background:"
-msgstr "Ðазад"
+msgstr "Ðадний план:"
#: effects/Contrast.cpp:393
msgid "Background start time"
-msgstr ""
+msgstr "ÐÑÐµÐ¼Ñ Ð½Ð°Ñала ÑÑагменÑа пеÑеднего плана"
#: effects/Contrast.cpp:411
msgid "Background end time"
-msgstr ""
+msgstr "ÐÑÐµÐ¼Ñ Ð·Ð°Ð²ÐµÑÑÐµÐ½Ð¸Ñ ÑÑагменÑа пеÑеднего плана"
#: effects/Contrast.cpp:435
-#, fuzzy
msgid "Result"
-msgstr "СбÑоÑиÑÑ"
+msgstr "РезÑлÑÑаÑ"
#: effects/Contrast.cpp:439
-#, fuzzy
msgid "Contrast Result:"
-msgstr "РезÑлÑÑаÑÑ ÐºÐ°Ð»Ð¸Ð±Ñовки"
+msgstr "РезÑлÑÑаÑ:"
#: Tags.cpp:840
#: Tags.cpp:1990
@@ -4794,32 +5134,23 @@ msgstr "СбÑоÑиÑÑ"
#: effects/Contrast.cpp:442
msgid "Difference:"
-msgstr ""
+msgstr "РазниÑа:"
#: effects/Contrast.cpp:451
-#, fuzzy
msgid "Information"
-msgstr "ÐнÑоÑмаÑÐ¸Ñ Ð¾ ÑбоÑке"
+msgstr "ÐнÑоÑмаÑиÑ"
-#: effects/Contrast.cpp:447
+#: effects/Contrast.cpp:446
msgid "For measuring rms volume differences between two selections of audio."
msgstr ""
#: effects/Contrast.cpp:448
msgid "Help for WCAG2 Audio Contrast Analyzer"
-msgstr ""
+msgstr "СпÑавка по анализаÑоÑÑ ÐºÐ¾Ð½ÑÑаÑÑа звÑка WCAG2"
-#: toolbars/ControlToolBar.cpp:83
-msgid "Control"
-msgstr ""
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
-msgstr ""
+#: effects/Contrast.cpp:401
+msgid "Close (keeping times)"
+msgstr "ÐакÑÑÑÑ (ÑоÑ
Ñанив Ñайминг)"
#: effects/Contrast.cpp:463
#: effects/Contrast.cpp:469
@@ -4831,94 +5162,96 @@ msgstr "ÐозможноÑÑи"
#: effects/Contrast.cpp:266
msgid "No foreground to measure"
-msgstr ""
+msgstr "ÐÐµÑ Ð¸Ð·Ð¼ÐµÑÑемого пеÑеднего плана"
-#: effects/Contrast.cpp:516
+#: effects/Contrast.cpp:506
msgid "Measured foreground level"
-msgstr ""
+msgstr "ÐзмеÑеннÑй ÑÑÐ¾Ð²ÐµÐ½Ñ Ð¿ÐµÑеднего плана"
#: effects/Contrast.cpp:272
#: effects/Contrast.cpp:293
-#, fuzzy, c-format
+#, c-format
msgid "%.1f dB"
-msgstr "%.1f Ñ"
+msgstr "%.1f Ðб"
#: effects/Contrast.cpp:287
msgid "No background to measure"
-msgstr ""
+msgstr "ÐÐµÑ Ð¸Ð·Ð¼ÐµÑÑемого заднего плана"
-#: effects/Contrast.cpp:526
+#: effects/Contrast.cpp:516
msgid "Measured background level"
-msgstr ""
+msgstr "ÐзмеÑеннÑй ÑÑÐ¾Ð²ÐµÐ½Ñ Ð·Ð°Ð´Ð½ÐµÐ³Ð¾ плана"
#: effects/Contrast.cpp:510
#: effects/Contrast.cpp:511
msgid "WCAG2 Pass"
-msgstr ""
+msgstr "ТеÑÑ WCAG2 пÑойден"
#: effects/Contrast.cpp:515
#: effects/Contrast.cpp:516
msgid "WCAG2 Fail"
-msgstr ""
+msgstr "ТеÑÑ WCAG2 не пÑойден"
#: effects/Contrast.cpp:518
msgid "Current difference"
-msgstr ""
+msgstr "ÐкÑÑалÑнÑе ÑазлиÑиÑ"
#: effects/Contrast.cpp:536
#, c-format
msgid "%.1f dB Average rms"
-msgstr ""
+msgstr "СÑеднее оÑклонение %.1f Ðб"
-#: effects/Contrast.cpp:523
-#, fuzzy
+#: effects/Contrast.cpp:541
msgid "Please enter valid times."
-msgstr "ÐведиÑе коÑÑекÑнÑе знаÑениÑ."
+msgstr "ÐведиÑе коÑÑекÑнÑе даннÑе о вÑемени"
#: effects/Contrast.cpp:536
-#, fuzzy
msgid "Export Contrast Result As:"
-msgstr "ÐкÑпоÑÑиÑоваÑÑ Ð¿Ð¾Ð¼ÐµÑки как:"
+msgstr "ÐкÑпоÑÑиÑоваÑÑ ÑезÑлÑÑÐ°Ñ Ð¸Ð·Ð¼ÐµÑÐµÐ½Ð¸Ñ ÐºÐ¾Ð½ÑÑаÑÑа как:"
#: effects/Contrast.cpp:572
msgid "WCAG 2.0 Success Criteria 1.4.7 Contrast Results"
-msgstr ""
+msgstr "РезÑлÑÑаÑÑ Ð¸Ð·Ð¼ÐµÑений по кÑиÑеÑиÑм ÑÑпеÑноÑÑи 1.4.7 ÑоглаÑно WCAG 2.0"
#: effects/Contrast.cpp:574
#, c-format
msgid "Filename = %s."
-msgstr ""
+msgstr "ÐÐ¼Ñ Ñайла = %s."
#: effects/Contrast.cpp:576
msgid "Foreground"
-msgstr ""
+msgstr "ÐеÑедний план"
-#: effects/Contrast.cpp:581 effects/Contrast.cpp:598
+#: effects/Contrast.cpp:581
+#: effects/Contrast.cpp:598
#, c-format
msgid "Time started = %2d hour(s), %2d minute(s), %.2f seconds."
-msgstr ""
+msgstr "ÐÑÐµÐ¼Ñ Ð½Ð°Ñала = %2d ÑаÑов, %2d минÑÑ, %.2f ÑекÑнд."
-#: effects/Contrast.cpp:586 effects/Contrast.cpp:603
+#: effects/Contrast.cpp:586
+#: effects/Contrast.cpp:603
#, c-format
msgid "Time ended = %2d hour(s), %2d minute(s), %.2f seconds."
-msgstr ""
+msgstr "ÐÑÐµÐ¼Ñ Ð·Ð°Ð²ÐµÑÑÐµÐ½Ð¸Ñ = %2d ÑаÑов, %2d минÑÑ, %.2f ÑекÑнд."
-#: effects/Contrast.cpp:588 effects/Contrast.cpp:605
+#: effects/Contrast.cpp:588
+#: effects/Contrast.cpp:605
#, c-format
msgid "Average rms = %.1f dB."
msgstr ""
-#: effects/Contrast.cpp:590 effects/Contrast.cpp:607
+#: effects/Contrast.cpp:590
+#: effects/Contrast.cpp:607
msgid "Average rms = dB."
msgstr ""
#: effects/Contrast.cpp:593
msgid "Background"
-msgstr ""
+msgstr "Ðадний план"
#: effects/Contrast.cpp:609
msgid "Results"
-msgstr ""
+msgstr "РезÑлÑÑаÑÑ"
#: effects/Contrast.cpp:611
#, c-format
@@ -4927,28 +5260,15 @@ msgstr ""
#: effects/Contrast.cpp:578
msgid "Success Criteria 1.4.7 of WCAG 2.0: Pass"
-msgstr ""
+msgstr "ÐÑиÑеÑии ÑÑпеÑноÑÑи 1.4.7 по WCAG 2.0: ÑÑпеÑно"
#: effects/Contrast.cpp:580
msgid "Success Criteria 1.4.7 of WCAG 2.0: Fail"
-msgstr ""
+msgstr "ÐÑиÑеÑии ÑÑпеÑноÑÑи 1.4.7 по WCAG 2.0: неÑÑпеÑно"
#: effects/Contrast.cpp:618
msgid "Data gathered"
-msgstr ""
-
-#: effects/Contrast.h:33
-#, fuzzy
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr "&ÐвÑковой Ñайл...\tCtrl+Shift+I"
-
-#: effects/Contrast.h:52
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:54
-msgid "Measuring foreground"
-msgstr ""
+msgstr "ÐаннÑе ÑобÑанÑ"
#: effects/DtmfGen.cpp:56
msgid "DTMF Tone Generator"
@@ -5051,7 +5371,8 @@ msgstr "ÐÑедпÑоÑлÑÑивание"
#: effects/Effect.cpp:512
msgid "Error while opening sound device. Please check the output device settings and the project sample rate."
-msgstr "ÐÑибка пÑи оÑкÑÑÑии звÑкового ÑÑÑÑойÑÑва.\n"
+msgstr ""
+"ÐÑибка пÑи оÑкÑÑÑии звÑкового ÑÑÑÑойÑÑва.\n"
"ÐÑовеÑÑÑе паÑамеÑÑÑ ÑÑÑÑойÑÑва и ÑаÑÑоÑÑ ÑÑмплиÑованиÑ."
#: effects/Effect.h:100
@@ -5086,6 +5407,10 @@ msgstr "ÐÑибка пÑи загÑÑзке кÑивой ÑквалайзеÑа
msgid "custom"
msgstr "ÐÑÑгаÑ"
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr "ÐÑибка пÑи ÑоÑ
Ñанении кÑивой ÑквалайзеÑа"
+
#. i18n-hint: && in here is an escape character to get a single &
#. * on screen, so keep it as is
#: effects/Equalization.cpp:1101
@@ -5157,7 +5482,7 @@ msgstr "Ðлавное наÑаÑÑание"
#: effects/Fade.h:38
msgid "Fading In"
-msgstr "ÐÑименÑеÑÑÑ ÑÑÑÐµÐºÑ \"Ðлавное наÑаÑÑание\""
+msgstr "ÐÑполнÑеÑÑÑ Ð¿Ð»Ð°Ð²Ð½Ð¾Ðµ наÑаÑÑание Ñигнала"
#: effects/Fade.h:54
msgid "Fade Out"
@@ -5165,7 +5490,7 @@ msgstr "Ðлавное заÑÑÑ
ание"
#: effects/Fade.h:68
msgid "Fading Out"
-msgstr "ÐÑименÑеÑÑÑ ÑÑÑÐµÐºÑ \"Ðлавное заÑÑÑ
ание\""
+msgstr "ÐÑполнÑеÑÑÑ Ð¿Ð»Ð°Ð²Ð½Ð¾Ðµ заÑÑÑ
ание Ñигнала"
#: effects/FindClipping.cpp:49
msgid "Detect clipping"
@@ -5209,7 +5534,7 @@ msgstr "ÐнвеÑÑиÑование"
#: effects/Invert.h:41
msgid "Inverting"
-msgstr "ÐÑоизводиÑÑÑ Ð¸Ð½Ð²ÐµÑÑиÑование"
+msgstr "ÐÑполнÑеÑÑÑ Ð¸Ð½Ð²ÐµÑÑиÑование"
#: effects/Leveller.cpp:192
msgid "Leveller"
@@ -5286,17 +5611,12 @@ msgstr "ÐÑпомогаÑелÑнÑе"
#: effects/LoadEffects.cpp:113
msgid "Converter"
-msgstr ""
+msgstr "ÐонвеÑÑеÑ"
#: effects/LoadEffects.cpp:115
msgid "Analyser"
msgstr "Ðнализ"
-#: effects/LoadEffects.cpp:117
-#: toolbars/MixerToolBar.cpp:60
-msgid "Mixer"
-msgstr "ÐикÑеÑÑ"
-
#: effects/LoadEffects.cpp:119
msgid "Simulator"
msgstr "ÐмиÑаÑиÑ"
@@ -5458,9 +5778,11 @@ msgstr "СоздаÑÑÑÑ ÑÑм"
#: effects/NoiseRemoval.cpp:192
#, c-format
-msgid "Could not open file:\n"
+msgid ""
+"Could not open file:\n"
" %s"
-msgstr "Ðе ÑдалоÑÑ Ð¾ÑкÑÑÑÑ Ñайл:\n"
+msgstr ""
+"Ðе ÑдалоÑÑ Ð¾ÑкÑÑÑÑ Ñайл:\n"
" %s"
#: effects/NoiseRemoval.cpp:277
@@ -5472,9 +5794,11 @@ msgid "Step 1"
msgstr "ÐÑап 1"
#: effects/NoiseRemoval.cpp:815
-msgid "Select a few seconds of just noise so Audacity knows what to filter out,\n"
+msgid ""
+"Select a few seconds of just noise so Audacity knows what to filter out,\n"
"then click Get Noise Profile:"
-msgstr "ÐÑделиÑе неÑколÑко ÑекÑнд ÑолÑко ÑÑма, Ñак ÑÑÐ¾Ð±Ñ Ð¿ÑогÑамма знала, ÑÑо\n"
+msgstr ""
+"ÐÑделиÑе неÑколÑко ÑекÑнд ÑолÑко ÑÑма, Ñак ÑÑÐ¾Ð±Ñ Ð¿ÑогÑамма знала, ÑÑо\n"
"оÑÑилÑÑÑоваÑÑ, а заÑем ÑÑлкниÑе мÑÑкой по кнопке «СоздаÑÑ Ð¼Ð¾Ð´ÐµÐ»Ñ ÑÑма»:"
#: effects/NoiseRemoval.cpp:816
@@ -5482,9 +5806,11 @@ msgid "Step 2"
msgstr "ÐÑап 2"
#: effects/NoiseRemoval.cpp:817
-msgid "Select all of the audio you want filtered, choose how much noise you want\n"
+msgid ""
+"Select all of the audio you want filtered, choose how much noise you want\n"
"filtered out, and then click 'OK' to remove noise.\n"
-msgstr "ÐÑделиÑе ÑÑ ÑаÑÑÑ Ð´Ð¾Ñожки, к коÑоÑой Ñ
оÑиÑе пÑимениÑÑ ÑилÑÑÑ, ÑкажиÑе,\n"
+msgstr ""
+"ÐÑделиÑе ÑÑ ÑаÑÑÑ Ð´Ð¾Ñожки, к коÑоÑой Ñ
оÑиÑе пÑимениÑÑ ÑилÑÑÑ, ÑкажиÑе,\n"
"ÑколÑко ÑÑма оÑÑилÑÑÑоваÑÑ, а заÑем ÑÑлкниÑе мÑÑкой по кнопке «Ðл\n"
#: effects/NoiseRemoval.cpp:822
@@ -5501,7 +5827,7 @@ msgstr "Удаление ÑÑма (Ðб):"
#: effects/NoiseRemoval.cpp:850
msgid "Noise reduction"
-msgstr ""
+msgstr "Ðодавление ÑÑма"
#: effects/NoiseRemoval.cpp:849
#, fuzzy
@@ -5537,12 +5863,7 @@ msgstr "Удаление ÑÑма"
#: effects/Normalize.cpp:70
#, c-format
msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
-msgstr ""
-
-#: effects/Normalize.cpp:74
-#: effects/Normalize.cpp:75
-msgid "false"
-msgstr "да"
+msgstr "ÐÑименен ÑÑÑекÑ: %s. УбÑаÑÑ ÑмеÑÐµÐ½Ð¸Ñ Ñ Ð¾Ñи = %s, ноÑмализоваÑÑ Ð°Ð¼Ð¿Ð»Ð¸ÑÑÐ´Ñ = %s"
#. i18n-hint: true here means that the option was
#. * selected. Opposite false if not selected
@@ -5575,20 +5896,20 @@ msgstr "-"
#: effects/Normalize.cpp:367
msgid "Maximum amplitude dB"
-msgstr ""
+msgstr "ÐакÑималÑÐ½Ð°Ñ Ð°Ð¼Ð¿Ð»Ð¸ÑÑда, Ðб"
#: effects/Normalize.h:33
msgid "Normalize..."
-msgstr "ÐоÑмализоваÑÑ..."
+msgstr "ÐоÑмализаÑиÑ..."
#: effects/Normalize.h:49
msgid "Normalizing..."
-msgstr "ÐоÑмализаÑиÑ..."
+msgstr "ÐÑполнÑеÑÑÑ Ð½Ð¾ÑмализаÑиÑ..."
#: effects/Phaser.cpp:65
#, c-format
msgid "Applied effect: %s %d stages, %.0f%% wet, frequency = %.1f Hz, start phase = %.0f deg, depth = %d, feedback = %.0f%%"
-msgstr "ÐÑименÑн ÑÑÑекÑ: %s %d ÑÑапов, %.0f%% обÑабоÑано, ÑаÑÑоÑа = %.1f ÐÑ, наÑалÑÐ½Ð°Ñ Ñаза = %.0f deg, глÑбина = %d, оÑдаÑа = %.0f%%"
+msgstr "ÐÑименÑн ÑÑÑекÑ: %s. %d ÑÑапов, %.0f%% обÑабоÑано, ÑаÑÑоÑа = %.1f ÐÑ, наÑалÑÐ½Ð°Ñ Ñаза = %.0f deg, глÑбина = %d, оÑдаÑа = %.0f%%"
#: effects/Phaser.cpp:226
msgid "Stages:"
@@ -5652,15 +5973,18 @@ msgid "Applying Phaser"
msgstr "ÐÑименÑеÑÑÑ ÑÑÑÐµÐºÑ Â«Ð¤ÐµÐ¹Ð·ÐµÑ»"
#: effects/Repair.cpp:99
-msgid "The Repair effect is intended to be used on very short sections of damaged audio (up to 128 samples).\n"
+msgid ""
+"The Repair effect is intended to be used on very short sections of damaged audio (up to 128 samples).\n"
"\n"
"Zoom in and select a tiny fraction of a second to repair."
-msgstr "ÐÑÑÐµÐºÑ Ð²Ð¾ÑÑÑÐ°Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿ÑедназнаÑен Ð´Ð»Ñ Ð²Ð¾ÑÑÑÐ°Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ ÐºÐ¾ÑоÑкиÑ
ÑÑаÑÑков иÑпоÑÑенного звÑка (до 128 ÑÑмплов).\n"
+msgstr ""
+"ÐÑÑÐµÐºÑ Ð²Ð¾ÑÑÑÐ°Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿ÑедназнаÑен Ð´Ð»Ñ Ð²Ð¾ÑÑÑÐ°Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ ÐºÐ¾ÑоÑкиÑ
ÑÑаÑÑков иÑпоÑÑенного звÑка (до 128 ÑÑмплов).\n"
"\n"
"ÐÑиблизÑÑе оÑобÑÐ°Ð¶ÐµÐ½Ð¸Ñ Ð´Ð¾ макÑимÑма и вÑбеÑиÑе оÑÐµÐ½Ñ ÐºÐ¾ÑоÑкий оÑÑезок звÑковÑÑ
даннÑÑ
."
#: effects/Repair.cpp:105
-msgid "Repair works by using audio data outside the selection region.\n"
+msgid ""
+"Repair works by using audio data outside the selection region.\n"
"\n"
"Please select a region that has audio touching at least one side of it.\n"
"\n"
@@ -5691,7 +6015,7 @@ msgstr "ÐолиÑеÑÑво повÑоÑов: "
#: effects/Repeat.cpp:220
msgid "New selection length: hh:mm:ss"
-msgstr ""
+msgstr "ÐÐ¾Ð²Ð°Ñ Ð´Ð»Ð¸Ð½Ð° вÑделениÑ: ÑÑ:мм:ÑÑ"
#: effects/Repeat.cpp:252
msgid "New selection length: "
@@ -5750,7 +6074,8 @@ msgid "SpikeCleaner by Lynn Allan"
msgstr ""
#: effects/SpikeCleaner.cpp:165
-msgid "Max Spike Duration (milliseconds): \n"
+msgid ""
+"Max Spike Duration (milliseconds): \n"
"(99999 or greater is off)"
msgstr ""
@@ -5767,8 +6092,8 @@ msgid "Applying Spike Cleaner..."
msgstr ""
#: effects/StereoToMono.h:23
-msgid "&Stereo to Mono"
-msgstr "С&ÑеÑео в моно"
+msgid "Stereo to Mono"
+msgstr "СÑеÑео в моно"
#: effects/StereoToMono.h:38
msgid "Applying Stereo to Mono"
@@ -5776,52 +6101,47 @@ msgstr ""
#: effects/TimeScale.cpp:140
msgid "Time Scale"
-msgstr ""
+msgstr "ÐÐ»Ð°Ð²Ð½Ð°Ñ Ñмена Ñемпа и вÑÑоÑÑ Ñона"
#: effects/TimeScale.cpp:176
msgid "Sliding Time Scale/Pitch Shift"
-msgstr ""
+msgstr "ÐÐ»Ð°Ð²Ð½Ð°Ñ Ñмена Ñемпа и вÑÑоÑÑ Ñона"
#: effects/TimeScale.cpp:178
msgid "using SBSMS, by Clayton Otey"
-msgstr ""
+msgstr "пÑи помоÑи SBSMS, авÑÐ¾Ñ â Clayton Otey"
#: effects/TimeScale.cpp:187
-#, fuzzy
msgid "Initial Tempo Change (%):"
-msgstr "ÐоддеÑжка ÑÐ¼ÐµÐ½Ñ Ñемпа и вÑÑоÑÑ Ñона"
+msgstr "Ðзменение Ñемпа в наÑале (%):"
#: effects/TimeScale.cpp:191
-#, fuzzy
msgid "Final Tempo Change (%):"
-msgstr "ÐоддеÑжка ÑÐ¼ÐµÐ½Ñ Ñемпа и вÑÑоÑÑ Ñона"
+msgstr "Ðзменение Ñемпа в конÑе (%):"
#: effects/TimeScale.cpp:202
-#, fuzzy
msgid "Initial Tempo Change (%)"
-msgstr "ÐоддеÑжка ÑÐ¼ÐµÐ½Ñ Ñемпа и вÑÑоÑÑ Ñона"
+msgstr "Ðзменение Ñемпа в наÑале (%)"
#: effects/TimeScale.cpp:211
-#, fuzzy
msgid "Final Tempo Change (%)"
-msgstr "ÐоддеÑжка ÑÐ¼ÐµÐ½Ñ Ñемпа и вÑÑоÑÑ Ñона"
+msgstr "Ðзменение Ñемпа в конÑе (%)"
#: effects/TimeScale.cpp:219
msgid "Initial Pitch Shift (semitones) [-12 to 12]:"
-msgstr ""
+msgstr "Ðзменение вÑÑоÑÑ Ñона в наÑале (в полÑÑонаÑ
) [-12 to 12]:"
#: effects/TimeScale.cpp:223
msgid "Final Pitch Shift (semitones) [-12 to 12]:"
-msgstr ""
+msgstr "Ðзменение вÑÑоÑÑ Ñона в конÑе (в полÑÑонаÑ
) [-12 to 12]:"
#: effects/TimeScale.h:33
msgid "Sliding Time Scale/Pitch Shift..."
-msgstr ""
+msgstr "ÐÐ»Ð°Ð²Ð½Ð°Ñ Ñмена Ñемпа и вÑÑоÑÑ Ñона..."
#: effects/TimeScale.h:47
-#, fuzzy
msgid "Changing Tempo/Pitch"
-msgstr "ÐзменÑеÑÑÑ Ð²ÑÑоÑа Ñона"
+msgstr "ÐзменÑеÑÑÑ Ñемп/вÑÑоÑа Ñона"
#: effects/ToneGen.cpp:61
#, c-format
@@ -5915,9 +6235,13 @@ msgstr "У вÑеÑ
доÑожек должна бÑÑÑ Ð¾Ð´Ð¸Ð½Ð°ÐºÐ¾Ð²Ð°Ñ Ñ
msgid "Truncate Silence"
msgstr "ÐÑÑезание ÑиÑинÑ"
-#: effects/TruncSilence.cpp:345
-msgid "Max silence duration:"
-msgstr "ÐакÑ. длиÑелÑноÑÑÑ ÑиÑинÑ:"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr ""
+
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
+msgstr "Ðин. длиÑелÑноÑÑÑ ÑиÑинÑ:"
#: effects/TruncSilence.cpp:348
#: prefs/AudioIOPrefs.cpp:196
@@ -5927,12 +6251,26 @@ msgstr "ÐакÑ. длиÑелÑноÑÑÑ ÑиÑинÑ:"
msgid "milliseconds"
msgstr "мÑ"
+#: effects/TruncSilence.cpp:345
+msgid "Max silence duration:"
+msgstr "ÐакÑ. длиÑелÑноÑÑÑ ÑиÑинÑ:"
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr "СжаÑие ÑиÑинÑ:"
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ":1"
+
#: effects/TruncSilence.cpp:350
msgid "Threshold for silence:"
msgstr "ÐоÑог ÑиÑинÑ:"
-#: effects/TruncSilence.cpp:374
-msgid " Duration must be at least 1 millisecond"
+#: effects/TruncSilence.cpp:506
+msgid ""
+" Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
msgstr ""
#: effects/TruncSilence.h:28
@@ -5943,17 +6281,58 @@ msgstr "ÐÑÑезаÑÑ ÑиÑинÑ..."
msgid "Truncating Silence..."
msgstr "ÐÑÑезаеÑÑÑ ÑиÑина..."
-#: effects/VST/VSTEffect.cpp:172
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "ÐзвиниÑе, но VST-ÑÑÑекÑÑ Ð½Ðµ могÑÑ Ð¿ÑименÑÑÑÑÑ Ðº ÑÑеÑеодоÑожкам Ñ Ð½ÐµÑовпадаÑÑими индивидÑалÑнÑми доÑожками."
+#: effects/ladspa/LadspaEffect.cpp:615
+#: effects/lv2/LV2Effect.cpp:823
+msgid "Effect Settings"
+msgstr "ÐаÑамеÑÑÑ ÑÑÑекÑа"
-#: effects/VST/VSTEffect.cpp:187
-msgid "Can't process replacing"
-msgstr "Ðе ÑдаÑÑÑÑ Ð¿ÑоизвеÑÑи заменÑ"
+#: effects/ladspa/LadspaEffect.cpp:580
+#: effects/ladspa/LadspaEffect.cpp:588
+#: prefs/GUIPrefs.cpp:51
+#: prefs/QualityPrefs.cpp:72
+msgid "None"
+msgstr "ÐеÑ"
+
+#: effects/VST/VSTEffect.cpp:291
+msgid "Presets:"
+msgstr "ÐÑоÑили:"
+
+#: effects/VST/VSTEffect.cpp:303
+msgid "Load"
+msgstr "ÐагÑÑзиÑÑ"
+
+#: effects/VST/VSTEffect.cpp:306
+msgid "Save"
+msgstr "СоÑ
ÑаниÑÑ"
+
+#: effects/VST/VSTEffect.cpp:368
+msgid "Load VST Program:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:386
+msgid "Error loading program"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:401
+msgid "Save VST Program As:"
+msgstr ""
-#: effects/VST/VSTEffect.cpp:410
-msgid "VST Plug-in parameters:"
-msgstr "ÐаÑамеÑÑÑ ÑаÑÑиÑÐµÐ½Ð¸Ñ VST:"
+#: effects/VST/VSTEffect.cpp:516
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:719
+msgid "Performing Effect: "
+msgstr "ÐÑименÑеÑÑÑ ÑÑÑекÑ:"
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:745
+msgid "Both channels of a stereo track must be the same length."
+msgstr ""
#: effects/Wahwah.cpp:61
#, c-format
@@ -5974,7 +6353,7 @@ msgstr "РезонанÑ:"
#: effects/Wahwah.cpp:239
msgid "Resonance"
-msgstr ""
+msgstr "РезонанÑ"
#: effects/Wahwah.cpp:241
msgid "Wah Frequency Offset (%):"
@@ -6004,24 +6383,12 @@ msgstr "ÐÑименÑеÑÑÑ ÑÑÑекÑ: %s"
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr ""
-#: effects/ladspa/LadspaEffect.cpp:580
-#: effects/ladspa/LadspaEffect.cpp:588
-#: prefs/GUIPrefs.cpp:51
-#: prefs/QualityPrefs.cpp:72
-msgid "None"
-msgstr "ÐеÑ"
-
#: effects/ladspa/LadspaEffect.cpp:582
#: effects/lv2/LV2Effect.cpp:798
#: effects/vamp/VampEffect.cpp:395
msgid "Author: "
msgstr "ÐвÑоÑ: "
-#: effects/ladspa/LadspaEffect.cpp:615
-#: effects/lv2/LV2Effect.cpp:823
-msgid "Effect Settings"
-msgstr "ÐаÑамеÑÑÑ ÑÑÑекÑа"
-
#: effects/ladspa/LadspaEffect.cpp:710
#: effects/ladspa/LadspaEffect.cpp:713
#: effects/lv2/LV2Effect.cpp:834
@@ -6059,7 +6426,8 @@ msgstr "ÐведиÑе Nyquist-командÑ:"
#: effects/nyquist/Nyquist.cpp:417
msgid "Sorry, cannot apply effect on stereo tracks where the tracks don't match."
-msgstr "ÐзвиниÑе, но ÑÑÑÐµÐºÑ Ð½ÐµÐ²Ð¾Ð·Ð¼Ð¾Ð¶Ð½Ð¾ пÑимениÑÑ Ðº ÑÑеÑеодоÑожкам\n"
+msgstr ""
+"ÐзвиниÑе, но ÑÑÑÐµÐºÑ Ð½ÐµÐ²Ð¾Ð·Ð¼Ð¾Ð¶Ð½Ð¾ пÑимениÑÑ Ðº ÑÑеÑеодоÑожкам\n"
"Ñ Ð½ÐµÑовпадаÑÑими индивидÑалÑнÑми доÑожками"
#: effects/nyquist/Nyquist.cpp:445
@@ -6135,7 +6503,8 @@ msgstr "ÐÑ ÑвеÑенÑ, ÑÑо Ñ
оÑиÑе ÑоÑ
ÑаниÑÑ Ñайл к
#: export/Export.cpp:591
#, c-format
-msgid "You are about to save a %s file with the name \"%s\".\n"
+msgid ""
+"You are about to save a %s file with the name \"%s\".\n"
"\n"
"Normally these files end in \".%s\", and some programs will not open files with nonstandard extensions.\n"
"\n"
@@ -6174,7 +6543,7 @@ msgstr " â СпÑава"
#: export/Export.cpp:1072
msgid "Mixer Panel"
-msgstr ""
+msgstr "ÐÐ°Ð½ÐµÐ»Ñ Ð¼Ð¸ÐºÑеÑа"
#: export/Export.cpp:1078
#: export/Export.cpp:1125
@@ -6225,14 +6594,29 @@ msgstr "ÐеÑÑ Ð¿ÑÐ¾ÐµÐºÑ ÑкÑпоÑÑиÑÑеÑÑÑ ÑеÑез конÑо
msgid "Command Output"
msgstr ""
-#: export/ExportFFmpeg.cpp:59
-msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+#: export/ExportFFmpeg.cpp:61
+msgid ""
+"Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid ""
+"Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
#: export/ExportFFmpeg.cpp:394
#, c-format
-msgid "FFmpeg cannot find audio codec 0x%x.\n"
+msgid ""
+"FFmpeg cannot find audio codec 0x%x.\n"
"Support for this codec is probably not compiled in."
msgstr ""
@@ -6258,13 +6642,15 @@ msgstr "ÐекоÑÑекÑÐ½Ð°Ñ ÑаÑÑоÑа ÑÑмплиÑованиÑ"
#: export/ExportFFmpeg.cpp:715
#, c-format
-msgid "The project sample rate (%d) is not supported by the current output\n"
+msgid ""
+"The project sample rate (%d) is not supported by the current output\n"
"file format. "
msgstr ""
#: export/ExportFFmpeg.cpp:718
#, c-format
-msgid "The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
+msgid ""
+"The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
"supported by the current output file format. "
msgstr ""
@@ -6280,11 +6666,11 @@ msgstr "ЧаÑÑоÑÑ ÑÑмплиÑованиÑ"
#: export/ExportFFmpegDialogs.cpp:93
msgid "Specify AC3 Options"
-msgstr ""
+msgstr "УкажиÑе паÑамеÑÑÑ AC3"
#: export/ExportFFmpegDialogs.cpp:117
msgid "AC3 Export Setup"
-msgstr ""
+msgstr "ÐаÑамеÑÑÑ ÑкÑпоÑÑа в AC3"
#: export/ExportFFmpegDialogs.cpp:121
#: export/ExportFFmpegDialogs.cpp:245
@@ -6297,23 +6683,28 @@ msgstr "СкоÑоÑÑÑ Ð¿Ð¾Ñока:"
#: export/ExportFFmpegDialogs.cpp:162
msgid "Specify AAC Options"
-msgstr ""
+msgstr "УкажиÑе паÑамеÑÑÑ AAC"
#: export/ExportFFmpegDialogs.cpp:178
msgid "AAC Export Setup"
-msgstr ""
+msgstr "ÐаÑамеÑÑÑ ÑкÑпоÑÑа в AAC"
+
+#: export/ExportFFmpegDialogs.cpp:940
+#: export/ExportOGG.cpp:86
+msgid "Quality:"
+msgstr "ÐаÑеÑÑво:"
#: export/ExportFFmpegDialogs.cpp:217
msgid "Specify AMR-NB Options"
-msgstr ""
+msgstr "УкажиÑе паÑамеÑÑÑ AMR-NB"
#: export/ExportFFmpegDialogs.cpp:241
msgid "AMR-NB Export Setup"
-msgstr ""
+msgstr "ÐаÑамеÑÑÑ ÑкÑпоÑÑа в AMR-NB"
#: export/ExportFFmpegDialogs.cpp:286
msgid "Specify AMR-WB Options"
-msgstr ""
+msgstr "УкажиÑе паÑамеÑÑÑ AMR-WB"
#: export/ExportFFmpegDialogs.cpp:310
msgid "AMR-WB Export Setup"
@@ -6321,20 +6712,20 @@ msgstr ""
#: export/ExportFFmpegDialogs.cpp:357
msgid "Specify WMA Options"
-msgstr ""
+msgstr "УкажиÑе паÑамеÑÑÑ WMA"
#: export/ExportFFmpegDialogs.cpp:381
msgid "WMA Export Setup"
-msgstr ""
+msgstr "ÐаÑамеÑÑÑ ÑкÑпоÑÑа в WMA"
#: export/ExportFFmpegDialogs.cpp:509
#, c-format
msgid "Overwrite preset '%s'?"
-msgstr ""
+msgstr "ÐеÑезапиÑаÑÑ Ð¿ÑоÑÐ¸Ð»Ñ '%s'?"
#: export/ExportFFmpegDialogs.cpp:510
msgid "Confirm Overwrite"
-msgstr ""
+msgstr "ÐодÑвеÑждение пеÑезапиÑи"
#: export/ExportFFmpegDialogs.cpp:501
msgid "Please select format before saving a profile"
@@ -6355,15 +6746,15 @@ msgstr ""
#: export/ExportFFmpegDialogs.cpp:897
msgid "Preset:"
-msgstr ""
+msgstr "ÐÑедÑÑÑановка:"
#: export/ExportFFmpegDialogs.cpp:898
msgid "Load Preset"
-msgstr ""
+msgstr "ÐагÑÑзиÑÑ Ð¿ÑедÑÑÑановкÑ"
#: export/ExportFFmpegDialogs.cpp:899
msgid "Save Preset"
-msgstr ""
+msgstr "СоÑ
ÑаниÑÑ Ð¿ÑедÑÑÑановкÑ"
#: export/ExportFFmpegDialogs.cpp:900
msgid "Delete Preset"
@@ -6371,11 +6762,11 @@ msgstr "УдалиÑÑ Ð¿ÑедÑÑÑановкÑ"
#: export/ExportFFmpegDialogs.cpp:901
msgid "Import Presets"
-msgstr ""
+msgstr "ÐмпоÑÑиÑоваÑÑ Ð¿ÑедÑÑÑановки"
#: export/ExportFFmpegDialogs.cpp:902
msgid "Export Presets"
-msgstr ""
+msgstr "ÐкÑпоÑÑиÑоваÑÑ Ð¿ÑедÑÑÑановки"
#: export/ExportFFmpegDialogs.cpp:907
msgid "Format:"
@@ -6383,7 +6774,7 @@ msgstr "ФоÑмаÑ:"
#: export/ExportFFmpegDialogs.cpp:909
msgid "Codec:"
-msgstr ""
+msgstr "Ðодек:"
#: export/ExportFFmpegDialogs.cpp:913
msgid "Not all formats and codecs are compatible. Some parameters (such as bitrate and samplerate) combinations are not compatible with some codecs too."
@@ -6407,7 +6798,7 @@ msgstr "ÐоказаÑÑ Ð²Ñе кодеки"
#: export/ExportFFmpegDialogs.cpp:914
msgid "Options"
-msgstr ""
+msgstr "ÐаÑамеÑÑÑ"
#: export/ExportFFmpegDialogs.cpp:931
#: prefs/GUIPrefs.cpp:166
@@ -6415,35 +6806,34 @@ msgid "Language:"
msgstr "ЯзÑк:"
#: export/ExportFFmpegDialogs.cpp:932
-msgid "ISO 639 3-letter language code\n"
+msgid ""
+"ISO 639 3-letter language code\n"
"Optional\n"
"empty - automatic"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:934
msgid "Tag:"
-msgstr ""
+msgstr "ТÑг:"
#: export/ExportFFmpegDialogs.cpp:935
-msgid "Codec tag (FOURCC)\n"
+msgid ""
+"Codec tag (FOURCC)\n"
"Optional\n"
"empty - automatic"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:938
-msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n"
+msgid ""
+"Bit Rate (bits/second) - influences the resulting file size and quality\n"
"Some codecs may only accept specific values (128k, 192k, 256k etc)\n"
"0 - automatic\n"
"Recommended - 192000"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:940
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr "ÐаÑеÑÑво:"
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:929
+msgid ""
+"Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
@@ -6451,10 +6841,11 @@ msgstr ""
#: export/ExportFFmpegDialogs.cpp:943
msgid "Sample Rate:"
-msgstr ""
+msgstr "ЧаÑÑоÑа ÑÑмплиÑованиÑ:"
#: export/ExportFFmpegDialogs.cpp:944
-msgid "Sample rate (Hz)\n"
+msgid ""
+"Sample rate (Hz)\n"
"0 - don't change sample rate"
msgstr ""
@@ -6462,18 +6853,20 @@ msgstr ""
msgid "Cutoff Bandwidth:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:947
-msgid "Audio cutoff bandwidth (Hz)\n"
+#: export/ExportFFmpegDialogs.cpp:935
+msgid ""
+"Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:949
msgid "Profile:"
-msgstr ""
+msgstr "ÐÑоÑилÑ:"
#: export/ExportFFmpegDialogs.cpp:951
-msgid "AAC Profile\n"
+msgid ""
+"AAC Profile\n"
"Low Complexity -default\n"
"Most players won't play anything other than LC"
msgstr ""
@@ -6488,14 +6881,15 @@ msgstr ""
#: export/ExportFFmpegDialogs.cpp:948
msgid "FLAC options"
-msgstr ""
+msgstr "ÐаÑамеÑÑÑ FLAC"
#: export/ExportFFmpegDialogs.cpp:965
msgid "Compression Level:"
-msgstr ""
+msgstr "УÑÐ¾Ð²ÐµÐ½Ñ ÑжаÑиÑ:"
#: export/ExportFFmpegDialogs.cpp:966
-msgid "Compression level\n"
+msgid ""
+"Compression level\n"
"Required for FLAC\n"
"-1 - automatic\n"
"min - 0 (fast encoding, large output file)\n"
@@ -6507,7 +6901,8 @@ msgid "Frame Size:"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:969
-msgid "Frame size\n"
+msgid ""
+"Frame size\n"
"Optional\n"
"0 - default\n"
"min - 16\n"
@@ -6519,7 +6914,8 @@ msgid "LPC coefficients precision"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:972
-msgid "LPC coefficients precision\n"
+msgid ""
+"LPC coefficients precision\n"
"Optional\n"
"0 - default\n"
"min - 1\n"
@@ -6531,7 +6927,8 @@ msgid "Minimal prediction order"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:975
-msgid "Minimal prediction order\n"
+msgid ""
+"Minimal prediction order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
@@ -6543,7 +6940,8 @@ msgid "Maximal prediction order"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:978
-msgid "Maximal prediction order\n"
+msgid ""
+"Maximal prediction order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
@@ -6555,7 +6953,8 @@ msgid "Prediction Order Method:"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:982
-msgid "Prediction Order Method\n"
+msgid ""
+"Prediction Order Method\n"
"Estimate - fastest, lower compression\n"
"Log search - slowest, best compression\n"
"Full search - default"
@@ -6566,7 +6965,8 @@ msgid "Minimal partition order"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:985
-msgid "Minimal partition order\n"
+msgid ""
+"Minimal partition order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
@@ -6578,7 +6978,8 @@ msgid "Maximal partition order"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:988
-msgid "Maximal partition order\n"
+msgid ""
+"Maximal partition order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
@@ -6598,7 +6999,8 @@ msgid "Mux Rate:"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:1002
-msgid "Maximum bit rate of the multiplexed stream\n"
+msgid ""
+"Maximum bit rate of the multiplexed stream\n"
"Optional\n"
"0 - default"
msgstr ""
@@ -6608,7 +7010,8 @@ msgid "Packet Size:"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:1005
-msgid "Packet size\n"
+msgid ""
+"Packet size\n"
"Optional\n"
"0 - default"
msgstr ""
@@ -6620,11 +7023,11 @@ msgstr ""
#: export/ExportFFmpegDialogs.cpp:1219
#, c-format
msgid "Delete preset '%s'?"
-msgstr ""
+msgstr "УдалиÑÑ Ð¿ÑедÑÑÑÐ°Ð½Ð¾Ð²ÐºÑ '%s'?"
#: export/ExportFFmpegDialogs.cpp:1238
msgid "You can't save a preset without name"
-msgstr ""
+msgstr "ÐÑ Ð½Ðµ можеÑе ÑоÑ
ÑаниÑÑ Ð±ÐµÐ·ÑмÑннÑÑ Ð¿ÑедÑÑÑановкÑ"
#: export/ExportFFmpegDialogs.cpp:1277
msgid "Select xml file with presets to import"
@@ -6644,27 +7047,27 @@ msgstr ""
#: export/ExportFFmpegDialogs.cpp:1403
msgid "Failed to find the codec"
-msgstr ""
+msgstr "Ðе ÑдалоÑÑ Ð½Ð°Ð¹Ñи кодек"
#: export/ExportFFmpegDialogs.h:53
msgid "M4A (AAC) Files (FFmpeg)"
-msgstr ""
+msgstr "Ð¤Ð°Ð¹Ð»Ñ M4A (AAC) (FFmpeg)"
#: export/ExportFFmpegDialogs.h:54
msgid "AC3 Files (FFmpeg)"
-msgstr ""
+msgstr "Ð¤Ð°Ð¹Ð»Ñ AC3 (FFmpeg)"
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:56
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:57
msgid "WMA (version 2) Files (FFmpeg)"
-msgstr ""
+msgstr "Ð¤Ð°Ð¹Ð»Ñ WMA веÑÑии 2 (FFmpeg)"
#: export/ExportFFmpegDialogs.h:58
msgid "Custom FFmpeg Export"
@@ -6770,6 +7173,20 @@ msgstr "РазÑÑдноÑÑÑ:"
msgid "FLAC Files"
msgstr "Ð¤Ð°Ð¹Ð»Ñ FLAC"
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid ""
+"FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+"Ðе ÑдалоÑÑ Ð¸Ð½Ð¸ÑиализиÑоваÑÑ ÐºÐ¾Ð´Ð¸ÑовÑик FLAC\n"
+"СÑаÑÑÑ: %d"
+
#: export/ExportFLAC.cpp:312
msgid "Exporting the selected audio as FLAC"
msgstr "ÐÑделенное ÑкÑпоÑÑиÑÑеÑÑÑ Ð² Ñайл FLAC"
@@ -6912,7 +7329,8 @@ msgstr "ЧÑÐ¾Ð±Ñ ÑкаÑаÑÑ LAME, ÑелкниÑе ÑÑÑ -->"
#: export/ExportMP3.cpp:1070
#, c-format
-msgid "You are linking to lame_enc.dll v%d.%d. This version is not compatible with Audacity %d.%d.%d.\n"
+msgid ""
+"You are linking to lame_enc.dll v%d.%d. This version is not compatible with Audacity %d.%d.%d.\n"
"Please download the latest version of the LAME MP3 library."
msgstr ""
@@ -6981,19 +7399,21 @@ msgstr ""
#: export/ExportMP3.cpp:1933
#, c-format
-msgid "The project sample rate (%d) is not supported by the MP3\n"
+msgid ""
+"The project sample rate (%d) is not supported by the MP3\n"
"file format. "
msgstr ""
#: export/ExportMP3.cpp:1936
#, c-format
-msgid "The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
+msgid ""
+"The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
"supported by the MP3 file format. "
msgstr ""
#: export/ExportMP3.cpp:1965
msgid "MP3 export library not found"
-msgstr ""
+msgstr "ÐиблиоÑека Ð´Ð»Ñ ÑкÑпоÑÑа в MP3 не найдена"
#: export/ExportMultiple.cpp:96
#: export/ExportMultiple.cpp:426
@@ -7003,11 +7423,13 @@ msgid "Export Multiple"
msgstr "ÐкÑпоÑÑ Ð² неÑколÑко Ñайлов"
#: export/ExportMultiple.cpp:166
-msgid "If you have more than one Audio Track, you can export each track as a separate file,\n"
+msgid ""
+"If you have more than one Audio Track, you can export each track as a separate file,\n"
"or if you have a Label Track, you can export a new file for each label.\n"
"\n"
"This project does not have multiple tracks or a Label Track, so you cannot export multiple files."
-msgstr "ÐÑли в ваÑем пÑоекÑе болÑÑе одной звÑковой доÑожки,\n"
+msgstr ""
+"ÐÑли в ваÑем пÑоекÑе болÑÑе одной звÑковой доÑожки,\n"
"Ð²Ñ Ð¼Ð¾Ð¶ÐµÑе ÑкÑпоÑÑиÑоваÑÑ ÐºÐ°Ð¶Ð´ÑÑ Ð¸Ñ
ниÑ
в оÑделÑнÑй\n"
"Ñайл, а пÑи налиÑии доÑожки Ð´Ð»Ñ Ð¿Ð¾Ð¼ÐµÑок â\n"
"ÑкÑпоÑÑиÑоваÑÑ Ð¿Ð¾ Ð½Ð¾Ð²Ð¾Ð¼Ñ ÑÐ°Ð¹Ð»Ñ Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð¹ помеÑки.\n"
@@ -7032,11 +7454,6 @@ msgstr "ÐаÑамеÑÑÑ..."
msgid "Export location:"
msgstr "ÐаÑалог Ð´Ð»Ñ ÑкÑпоÑÑа:"
-#: export/ExportMultiple.cpp:245
-#: prefs/DirectoriesPrefs.cpp:92
-msgid "Choose..."
-msgstr "ÐÑбеÑиÑе..."
-
#: export/ExportMultiple.cpp:246
msgid "Create"
msgstr "СоздаÑÑ"
@@ -7062,11 +7479,6 @@ msgstr "ÐÐ¼Ñ Ð¿ÐµÑвого Ñайла:"
msgid "First file name"
msgstr "ÐÐ¼Ñ Ð¿ÐµÑвого Ñайла"
-#: export/ExportMultiple.cpp:288
-#: export/ExportMultiple.cpp:290
-msgid "Tracks"
-msgstr "ÐоÑожки"
-
#: export/ExportMultiple.cpp:297
msgid "Name files:"
msgstr "Ðменование Ñайлов:"
@@ -7102,9 +7514,39 @@ msgstr ""
msgid "Choose a location to save the exported files"
msgstr "ÐÑбеÑиÑе каÑалог Ð´Ð»Ñ ÑкÑпоÑÑиÑÑемÑÑ
Ñайлов"
+#: export/ExportMultiple.cpp:524
+#, c-format
+msgid "Successfully exported the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:527
+#, c-format
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr ""
+
#: export/ExportMultiple.cpp:539
#, c-format
-msgid "\"%s\" doesn't exist.\n"
+msgid ""
+"\"%s\" doesn't exist.\n"
"\n"
"Would you like to create it?"
msgstr ""
@@ -7112,23 +7554,12 @@ msgstr ""
#: export/ExportMultiple.cpp:637
#: export/ExportMultiple.cpp:772
msgid "Edit metadata"
-msgstr ""
-
-#: export/ExportMultiple.cpp:664
-#: export/ExportMultiple.cpp:831
-#, c-format
-msgid "Successfully exported %d file(s)."
-msgstr "УÑпеÑно ÑкÑпоÑÑиÑовано Ñайлов: %d."
-
-#: export/ExportMultiple.cpp:665
-#: export/ExportMultiple.cpp:832
-#, c-format
-msgid "Something went wrong after exporting %d file(s)."
-msgstr "ÐоÑле ÑкÑпоÑÑа %d Ñайла(-ов) ÑÑо-Ñо поÑло не Ñак."
+msgstr "ÐзмениÑÑ Ð¼ÐµÑаданнÑе"
#: export/ExportMultiple.cpp:881
#, c-format
-msgid "Label %s is not a legal file name. You cannot use any of: %s\n"
+msgid ""
+"Label %s is not a legal file name. You cannot use any of: %s\n"
"Use..."
msgstr ""
@@ -7179,15 +7610,15 @@ msgstr "ÐÑоÑие неÑжаÑÑе ÑайлÑ"
#: export/ExportPCM.cpp:361
msgid "AIFF (Apple) signed 16 bit PCM"
-msgstr ""
+msgstr "AIFF (Apple) signed 16 bit PCM"
#: export/ExportPCM.cpp:351
msgid "WAV (Microsoft) signed 16 bit PCM"
-msgstr ""
+msgstr "WAV (Microsoft) signed 16 bit PCM"
#: export/ExportPCM.cpp:387
msgid "GSM 6.10 WAV (mobile)"
-msgstr ""
+msgstr "GSM 6.10 WAV (mobile)"
#: export/ExportPCM.cpp:449
msgid "Cannot export audio in this format."
@@ -7209,7 +7640,7 @@ msgstr ""
msgid "Error (file may not have been written): %s"
msgstr "ÐÑибка (возможно, Ñайл не запиÑан): %hs"
-#: export/ExportPCM.cpp:723
+#: export/ExportPCM.cpp:599
msgid "There are no options for this format.\n"
msgstr ""
@@ -7217,21 +7648,21 @@ msgstr ""
#. * the list. So you should translate the quoted string
#. * 'Other uncompressed files' exactly the same as you do the same string
#. * when it comes up on it's own.
-#: export/ExportPCM.cpp:728
+#: export/ExportPCM.cpp:604
msgid "If you need more control over the export format please use the 'Other uncompressed files' format."
msgstr ""
-#: export/ExportPCM.cpp:733
+#: export/ExportPCM.cpp:609
msgid "Your file will be exported as a 16-bit AIFF (Apple/SGI) file.\n"
-msgstr ""
+msgstr "ÐÐ°Ñ Ñайл бÑÐ´ÐµÑ ÑкÑпоÑÑиÑован в Ñайл ÑоÑмаÑа 16-bit AIFF (Apple/SGI).\n"
-#: export/ExportPCM.cpp:738
+#: export/ExportPCM.cpp:614
msgid "Your file will be exported as a 16-bit WAV (Microsoft) file.\n"
-msgstr ""
+msgstr "ÐÐ°Ñ Ñайл бÑÐ´ÐµÑ ÑкÑпоÑÑиÑован в Ñайл ÑоÑмаÑа 16-bit WAV (Microsoft).\n"
#: export/ExportPCM.cpp:743
msgid "Your file will be exported as a GSM 6.10 WAV file.\n"
-msgstr ""
+msgstr "ÐÐ°Ñ Ñайл бÑÐ´ÐµÑ ÑкÑпоÑÑиÑован в Ñайл ÑоÑмаÑа GSM 6.10 WAV.\n"
#: import/Import.cpp:156
#: import/ImportMP3.cpp:47
@@ -7249,45 +7680,68 @@ msgstr "ÐÑа веÑÑÐ¸Ñ Audacity бÑла ÑкомпилиÑована бе
#: import/Import.cpp:240
#, c-format
-msgid "\"%s\" \n"
+msgid ""
+"\"%s\" \n"
"is a MIDI file, not an audio file. \n"
"Audacity cannot open this type of file for playing, but you can\n"
"edit it by clicking File > Import > MIDI."
msgstr ""
+"\"%s\" \n"
+"ÑвлÑеÑÑÑ Ñайлом MIDI, а не звÑковÑм. \n"
+"Audacity не Ð¼Ð¾Ð¶ÐµÑ Ð²Ð¾ÑпÑоизводиÑÑ Ñакие ÑайлÑ, \n"
+"но Ð²Ñ Ð¼Ð¾Ð¶ÐµÑе измениÑÑ Ð¸Ñ
, добавив ÑеÑез\n"
+" «Файл â ÐмпоÑÑиÑоваÑÑ â MIDI»."
#. i18n-hint: %s will be the filename
#: import/Import.cpp:250
#, c-format
-msgid "\"%s\" is an audio CD track. \n"
+msgid ""
+"\"%s\" is an audio CD track. \n"
"Audacity cannot open audio CDs directly. \n"
"Extract (rip) the CD tracks to an audio format that \n"
"Audacity can import, such as WAV or AIFF."
msgstr ""
+"\"%s\" ÑвлÑеÑÑÑ Ð´Ð¾Ñожкой звÑкового CD. \n"
+"Audacity не Ð¼Ð¾Ð¶ÐµÑ Ð¾ÑкÑÑÑÑ ÐµÑ Ð½Ð°Ð¿ÑÑмÑÑ. \n"
+"СкопиÑÑйÑе необÑ
одимÑе доÑожки пÑи помоÑи\n"
+"дÑÑгой пÑогÑÐ°Ð¼Ð¼Ñ Ð² понÑÑнÑй Audacity ÑоÑмаÑ\n"
+"наподобие WAV или AIFF."
#: import/Import.cpp:256
#, c-format
-msgid "\"%s\" is a playlist file. \n"
+msgid ""
+"\"%s\" is a playlist file. \n"
"Audacity cannot open this file because it only contains links to other files. \n"
"You may be able to open it in a text editor and download the actual audio files."
msgstr ""
#: import/Import.cpp:261
#, c-format
-msgid "\"%s\" is a Windows Media Audio file. \n"
+msgid ""
+"\"%s\" is a Windows Media Audio file. \n"
"Audacity cannot open this type of file due to patent restrictions. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
msgstr ""
+"\"%s\" ÑвлÑеÑÑÑ Ñайлом Windows Media Audio. \n"
+"Audacity не Ð¼Ð¾Ð¶ÐµÑ Ð¾ÑкÑÑÑÑ Ñайл ÑÑого ÑоÑмаÑа из-за огÑаниÑений,\n"
+"налагаемÑÑ
паÑенÑнÑм законодаÑелÑÑÑвом. Ðам пÑидеÑÑÑ ÑнаÑала\n"
+"пÑеобÑазоваÑÑ ÐµÐ³Ð¾ в понÑÑнÑй Audacity ÑоÑÐ¼Ð°Ñ Ð²Ñоде WAV or AIFF."
#: import/Import.cpp:266
#, c-format
-msgid "\"%s\" is an Advanced Audio Coding file. \n"
+msgid ""
+"\"%s\" is an Advanced Audio Coding file. \n"
"Audacity cannot open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
msgstr ""
+"\"%s\" ÑвлÑеÑÑÑ Ñайлом Advanced Audio Coding. \n"
+"Audacity не Ð¼Ð¾Ð¶ÐµÑ Ð¾ÑкÑÑÑÑ Ñайл ÑÑого ÑоÑмаÑа. Ðам пÑидеÑÑÑ ÑнаÑала\n"
+"пÑеобÑазоваÑÑ ÐµÐ³Ð¾ в понÑÑнÑй Audacity ÑоÑÐ¼Ð°Ñ Ð²Ñоде WAV or AIFF."
#: import/Import.cpp:271
#, c-format
-msgid "\"%s\" is an encrypted audio file. \n"
+msgid ""
+"\"%s\" is an encrypted audio file. \n"
"These typically are from an online music store. \n"
"Audacity cannot open this type of file due to the encryption. \n"
"Try recording the file into Audacity, or burn it to audio CD then \n"
@@ -7296,14 +7750,21 @@ msgstr ""
#: import/Import.cpp:276
#, c-format
-msgid "\"%s\" is a RealPlayer media file. \n"
+msgid ""
+"\"%s\" is a RealPlayer media file. \n"
"Audacity cannot open this proprietary format. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
msgstr ""
+"\"%s\" ÑвлÑеÑÑÑ Ñайлом Advanced Audio Coding. \n"
+"Audacity не Ð¼Ð¾Ð¶ÐµÑ Ð¾ÑкÑÑÑÑ Ñайл в ÑÑом\n"
+"ÑобÑÑвенниÑеÑком ÑоÑмаÑе. Ðам пÑидеÑÑÑ ÑнаÑала\n"
+"пÑеобÑазоваÑÑ ÐµÐ³Ð¾ в понÑÑнÑй Audacity ÑоÑмаÑ\n"
+"вÑоде WAV or AIFF."
#: import/Import.cpp:282
#, c-format
-msgid "\"%s\" is a notes-based file, not an audio file. \n"
+msgid ""
+"\"%s\" is a notes-based file, not an audio file. \n"
"Audacity cannot open this type of file. \n"
"Try converting it to an audio file such as WAV or AIFF and \n"
"then import it, or record it into Audacity."
@@ -7311,55 +7772,79 @@ msgstr ""
#: import/Import.cpp:288
#, c-format
-msgid "\"%s\" is a Musepack audio file. \n"
+msgid ""
+"\"%s\" is a Musepack audio file. \n"
"Audacity cannot open this type of file. \n"
"If you think it might be an mp3 file, rename it to end with \".mp3\" \n"
"and try importing it again. Otherwise you need to convert it to a supported audio \n"
"format, such as WAV or AIFF."
msgstr ""
+"\"%s\" ÑвлÑеÑÑÑ Ñайлом Musepack. \n"
+"Audacity не Ð¼Ð¾Ð¶ÐµÑ Ð¾ÑкÑÑÑÑ Ñайл ÑÑого ÑоÑмаÑа.ÐÑли Ð²Ñ ÑÑиÑаеÑе, ÑÑо ÑÑо Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ñайл MP3,\n"
+"попÑобÑйÑе поменÑÑÑ ÐµÐ³Ð¾ ÑаÑÑиÑение на .mp3 и\n"
+"попÑобоваÑÑ Ñнова. РпÑоÑивном ÑлÑÑае вам\n"
+"пÑидеÑÑÑ ÑнаÑала пÑеобÑазоваÑÑ ÐµÐ³Ð¾ в понÑÑнÑй\n"
+"Audacity ÑоÑÐ¼Ð°Ñ Ð²Ñоде WAV or AIFF."
#: import/Import.cpp:294
#, c-format
-msgid "\"%s\" is a Wavpack audio file. \n"
+msgid ""
+"\"%s\" is a Wavpack audio file. \n"
"Audacity cannot open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
msgstr ""
+"\"%s\" ÑвлÑеÑÑÑ Ñайлом Wavpack. \n"
+"Audacity не Ð¼Ð¾Ð¶ÐµÑ Ð¾ÑкÑÑÑÑ Ñайл ÑÑого ÑоÑмаÑа. Ðам пÑидеÑÑÑ ÑнаÑала\n"
+"пÑеобÑазоваÑÑ ÐµÐ³Ð¾ в понÑÑнÑй Audacity ÑоÑÐ¼Ð°Ñ Ð²Ñоде WAV or AIFF."
#: import/Import.cpp:300
#, c-format
-msgid "\"%s\" is a Dolby Digital audio file. \n"
+msgid ""
+"\"%s\" is a Dolby Digital audio file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
msgstr ""
+"\"%s\" ÑвлÑеÑÑÑ Ñайлом Dolby Digutal. \n"
+"Audacity не Ð¼Ð¾Ð¶ÐµÑ Ð¾ÑкÑÑÑÑ Ñайл ÑÑого ÑоÑмаÑа. Ðам пÑидеÑÑÑ ÑнаÑала\n"
+"пÑеобÑазоваÑÑ ÐµÐ³Ð¾ в понÑÑнÑй Audacity ÑоÑÐ¼Ð°Ñ Ð²Ñоде WAV or AIFF."
#: import/Import.cpp:306
#, c-format
-msgid "\"%s\" is an Ogg Speex audio file. \n"
+msgid ""
+"\"%s\" is an Ogg Speex audio file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
msgstr ""
+"\"%s\" ÑвлÑеÑÑÑ Ñайлом Ogg Speex.\n"
+"Audacity не Ð¼Ð¾Ð¶ÐµÑ Ð¾ÑкÑÑÑÑ Ñайл ÑÑого ÑоÑмаÑа. Ðам пÑидеÑÑÑ ÑнаÑала\n"
+"пÑеобÑазоваÑÑ ÐµÐ³Ð¾ в понÑÑнÑй Audacity ÑоÑÐ¼Ð°Ñ Ð²Ñоде WAV or AIFF."
#: import/Import.cpp:312
#, c-format
-msgid "\"%s\" is a video file. \n"
+msgid ""
+"\"%s\" is a video file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to extract the audio to a supported format, such as WAV or AIFF."
msgstr ""
#: import/Import.cpp:317
#, c-format
-msgid "Audacity did not recognize the type of the file '%s'.\n"
+msgid ""
+"Audacity did not recognize the type of the file '%s'.\n"
"If it is uncompressed, try importing it using \"Import Raw\"."
-msgstr "ÐÑогÑамма не ÑаÑпознала ÑоÑÐ¼Ð°Ñ Ñайла\n"
+msgstr ""
+"ÐÑогÑамма не ÑаÑпознала ÑоÑÐ¼Ð°Ñ Ñайла\n"
"'%s'.\n"
"ÐÑли он неÑжаÑÑй, попÑобÑйÑе импоÑÑиÑоваÑÑ\n"
"как беззаголовоÑнÑй."
#: import/Import.cpp:322
#, c-format
-msgid "Audacity recognized the type of the file '%s',\n"
+msgid ""
+"Audacity recognized the type of the file '%s',\n"
"but was unable to import it."
-msgstr "ÐÑогÑамма ÑаÑпознала ÑоÑÐ¼Ð°Ñ Ñайла,\n"
+msgstr ""
+"ÐÑогÑамма ÑаÑпознала ÑоÑÐ¼Ð°Ñ Ñайла,\n"
"'%s',\n"
"но не поддеÑÐ¶Ð¸Ð²Ð°ÐµÑ ÐµÐ³Ð¾."
@@ -7376,6 +7861,10 @@ msgstr ""
msgid "FLAC files"
msgstr "Ð¤Ð°Ð¹Ð»Ñ FLAC"
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr "СовмеÑÑимÑе Ñ GStreamer ÑайлÑ"
+
#: import/ImportLOF.cpp:95
msgid "List of Files in basic text format"
msgstr "СпиÑок Ñайлов в обÑÑном ÑекÑÑовом ÑоÑмаÑе"
@@ -7409,7 +7898,7 @@ msgstr "Ðайдено некоÑÑекÑное Ñазделение доÑож
#: import/ImportMIDI.cpp:31
msgid ": Filename too short."
-msgstr ""
+msgstr ": ÑлиÑком коÑоÑкое Ð¸Ð¼Ñ Ñайла."
#: import/ImportMIDI.cpp:31
#: import/ImportMIDI.cpp:39
@@ -7420,7 +7909,7 @@ msgstr "Ðе ÑдалоÑÑ Ð¾ÑкÑÑÑÑ Ñайл:"
#: import/ImportMIDI.cpp:39
msgid ": Incorrect filetype."
-msgstr ""
+msgstr ": некоÑÑекÑнÑй Ñип Ñайла."
#: import/ImportOGG.cpp:44
msgid "Ogg Vorbis files"
@@ -7536,154 +8025,80 @@ msgstr "ÐÑполнÑеÑÑÑ Ð´ÐµÐºÐ¾Ð´Ð¸Ñование волновой Ñо
#: ondemand/ODWaveTrackTaskQueue.cpp:327
#, c-format
msgid "%s %2.0f%% complete. Click to change task focal point."
-msgstr ""
+msgstr "%s %2.0f%% завеÑÑено. ЩелкниÑе мÑÑкой, ÑÑÐ¾Ð±Ñ ÑказаÑÑ Ð¸Ð½ÑÑ Ð¾Ð±Ð»Ð°ÑÑÑ Ð¾Ð±ÑабоÑки."
-#: prefs/AudioIOPrefs.cpp:41
-#: prefs/AudioIOPrefs.cpp:42
-#: prefs/MidiIOPrefs.cpp:44
-#: prefs/MidiIOPrefs.cpp:45
-msgid "Audio I/O"
-msgstr "Audio I/O"
+#: prefs/BatchPrefs.cpp:55
+#: prefs/BatchPrefs.cpp:56
+msgid "Batch"
+msgstr "ÐакеÑÐ½Ð°Ñ Ð¾Ð±ÑабоÑка"
-#: prefs/AudioIOPrefs.cpp:102
-#: prefs/MidiIOPrefs.cpp:99
-msgid "1 (Mono)"
-msgstr "1 (Ðоно)"
+#: prefs/BatchPrefs.cpp:77
+#: prefs/GUIPrefs.cpp:92
+msgid "Behaviors"
+msgstr "Ðоведение"
-#: prefs/AudioIOPrefs.cpp:103
-#: prefs/MidiIOPrefs.cpp:100
-msgid "2 (Stereo)"
-msgstr "2 (ÑÑеÑео)"
+#: prefs/BatchPrefs.cpp:80
+msgid "&Don't apply effects in batch mode"
+msgstr "&Ðе пÑименÑÑÑ ÑÑÑекÑÑ Ð² пакеÑном Ñежиме"
-#: prefs/AudioIOPrefs.cpp:117
-#: prefs/MidiIOPrefs.cpp:114
-msgid "Playback"
-msgstr "ÐоÑпÑоизведение"
+#: prefs/BatchPrefs.cpp:83
+#: prefs/GUIPrefs.cpp:132
+msgid "Cl&eanSpeech Mode (Customized GUI)"
+msgstr "Ре&жим CleanSpeech (ÑпеÑиализиÑованнÑй инÑеÑÑейÑ)"
-#: prefs/AudioIOPrefs.cpp:121
-#: prefs/AudioIOPrefs.cpp:139
-#: prefs/MidiIOPrefs.cpp:118
-#: prefs/MidiIOPrefs.cpp:136
-#: toolbars/DeviceToolBar.cpp:57
-msgid "Device"
-msgstr "УÑÑÑойÑÑво"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
+msgstr "УÑÑÑойÑÑва"
+
+#: prefs/GUIPrefs.cpp:34
+#: prefs/GUIPrefs.cpp:35
+msgid "Interface"
+msgstr "ÐнÑеÑÑейÑ"
+
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
+msgstr "ÐÑайвеÑ"
#: prefs/AudioIOPrefs.cpp:124
#: prefs/MidiIOPrefs.cpp:121
msgid "Using:"
msgstr "ÐÑполÑзÑеÑÑÑ:"
-#: prefs/AudioIOPrefs.cpp:125
-#: prefs/MidiIOPrefs.cpp:122
-msgid "Portaudio v"
-msgstr "Portaudio v"
+#: prefs/AudioIOPrefs.cpp:117
+#: prefs/MidiIOPrefs.cpp:114
+msgid "Playback"
+msgstr "ÐоÑпÑоизведение"
#: prefs/AudioIOPrefs.cpp:135
#: prefs/MidiIOPrefs.cpp:132
msgid "Recording"
-msgstr " ÐапиÑÑ "
+msgstr "ÐапиÑÑ"
#: prefs/AudioIOPrefs.cpp:141
#: prefs/MidiIOPrefs.cpp:138
msgid "Channels"
msgstr "Ðаналов"
-#: prefs/AudioIOPrefs.cpp:147
-#: prefs/MidiIOPrefs.cpp:144
-msgid "Playthrough"
-msgstr "ÐониÑоÑинг запиÑи"
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr "&Ðаложение: воÑпÑоизводиÑÑ Ð´ÑÑгие доÑожки пÑи запиÑи новой"
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr "&ÐппаÑаÑнÑй: воÑпÑоизводиÑÑ Ð½Ð¾Ð²Ñе доÑожки пÑи иÑ
запиÑи"
-
-#: prefs/AudioIOPrefs.cpp:154
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr "&ÐÑогÑаммнÑй: воÑпÑоизводиÑÑ Ð½Ð¾Ð²Ñе доÑожки пÑи иÑ
запиÑи"
-
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr "&ÐÑогÑаммнÑй мониÑоÑинг запиÑи: воÑпÑоизводиÑÑ Ð·Ð°Ð¿Ð¸ÑÑваемÑÑ/оÑÑлеживаемÑÑ Ð´Ð¾ÑожкÑ"
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr "(не иÑполÑзоваÑÑ Ð¿Ñи запиÑи ÑÑеÑеомикÑа)"
-
-#: prefs/AudioIOPrefs.cpp:168
-#: prefs/MidiIOPrefs.cpp:193
-msgid "Effects Preview"
-msgstr "ÐÑедпÑоÑлÑÑивание ÑÑÑекÑов"
-
-#: prefs/AudioIOPrefs.cpp:171
-msgid "Length of preview:"
-msgstr "ÐлиÑелÑноÑÑÑ Ð¿ÑоÑлÑÑиваниÑ:"
-
-#: prefs/AudioIOPrefs.cpp:176
-#: prefs/MidiIOPrefs.cpp:157
-msgid "Cut Preview"
-msgstr "ÐÑоÑлÑÑивание ÑезÑлÑÑаÑа вÑÑезаниÑ"
-
-#: prefs/AudioIOPrefs.cpp:179
-msgid "Preview before cut region:"
-msgstr "ÐеÑед вÑÑезаемой облаÑÑÑÑ:"
-
-#: prefs/AudioIOPrefs.cpp:181
-msgid "Preview after cut region:"
-msgstr "ÐоÑле вÑÑезаемой облаÑÑи:"
+#: prefs/DevicePrefs.cpp:165
+msgid "No audio interfaces"
+msgstr "ÐÐµÑ Ð·Ð²ÑковÑÑ
ÑÑÑÑойÑÑв"
-#: prefs/AudioIOPrefs.cpp:189
-#: prefs/MidiIOPrefs.cpp:167
-msgid "Latency"
-msgstr "ÐадеÑжка"
-
-#: prefs/AudioIOPrefs.cpp:195
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
-msgstr "ÐвÑк в бÑÑеÑе:\n"
-"(вÑÑе знаÑение â болÑÑе задеÑжка)"
-
-#: prefs/AudioIOPrefs.cpp:198
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr "ÐоÑÑекÑÐ¸Ñ Ð·Ð°Ð´ÐµÑжки:\n"
-"(оÑÑиÑаÑелÑÐ½Ð°Ñ = в обÑаÑнÑÑ ÑÑоÑонÑ)"
+#: prefs/DevicePrefs.cpp:201
+#: prefs/DevicePrefs.cpp:206
+#: prefs/MidiIOPrefs.cpp:295
+#: prefs/MidiIOPrefs.cpp:300
+msgid "No devices found"
+msgstr "УÑÑÑойÑÑва не обнаÑÑженÑ"
-#: prefs/AudioIOPrefs.cpp:203
-msgid "Seek Time when playing"
-msgstr "ÐÑокÑÑÑка пÑи воÑпÑоизведении"
-
-#: prefs/AudioIOPrefs.cpp:206
-#: prefs/MidiIOPrefs.cpp:186
-msgid "Short period:"
-msgstr "ÐоÑоÑÐºÐ°Ñ Ð¿ÑокÑÑÑка:"
-
-#: prefs/AudioIOPrefs.cpp:208
-#: prefs/MidiIOPrefs.cpp:188
-msgid "Long period:"
-msgstr "ÐÐ¾Ð»Ð³Ð°Ñ Ð¿ÑокÑÑÑка"
-
-#: prefs/BatchPrefs.cpp:55
-#: prefs/BatchPrefs.cpp:56
-msgid "Batch"
-msgstr "ÐакеÑÐ½Ð°Ñ Ð¾Ð±ÑабоÑка"
-
-#: prefs/BatchPrefs.cpp:77
-#: prefs/GUIPrefs.cpp:92
-msgid "Behaviors"
-msgstr "Ðоведение"
-
-#: prefs/BatchPrefs.cpp:80
-msgid "&Don't apply effects in batch mode"
-msgstr "&Ðе пÑименÑÑÑ ÑÑÑекÑÑ Ð² пакеÑном Ñежиме"
+#: prefs/AudioIOPrefs.cpp:102
+#: prefs/MidiIOPrefs.cpp:99
+msgid "1 (Mono)"
+msgstr "1 (Ðоно)"
-#: prefs/BatchPrefs.cpp:83
-#: prefs/GUIPrefs.cpp:132
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr "Ре&жим CleanSpeech (ÑпеÑиализиÑованнÑй инÑеÑÑейÑ)"
+#: prefs/AudioIOPrefs.cpp:103
+#: prefs/MidiIOPrefs.cpp:100
+msgid "2 (Stereo)"
+msgstr "2 (ÑÑеÑео)"
#: prefs/DirectoriesPrefs.cpp:55
#: prefs/DirectoriesPrefs.cpp:56
@@ -7703,35 +8118,34 @@ msgstr "ÐеÑÑоположение:"
msgid "Free Space:"
msgstr "Свободного меÑÑа:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr "ÐвÑоÑоÑ
Ñанение"
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr "ÐвÑомаÑиÑеÑки ÑоÑ
ÑанÑÑÑ ÐºÐ¾Ð¿Ð¸Ñ Ð¿ÑоекÑа в дÑÑгÑÑ Ð¿Ð°Ð¿ÐºÑ"
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
-msgstr "ÐнÑеÑвал авÑоÑоÑ
ÑанениÑ:"
-
-#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
-msgstr "минÑÑ"
-
#: prefs/DirectoriesPrefs.cpp:110
msgid "Audio cache"
msgstr "ÐÑÑиÑование даннÑÑ
"
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
-msgstr "ÐÑполÑзоваÑÑ ÐÐУ Ð´Ð»Ñ Ð²Ð¾ÑпÑÐ¾Ð¸Ð·Ð²ÐµÐ´ÐµÐ½Ð¸Ñ Ð¸ запиÑи\n"
-"(лÑÑÑе Ð´Ð»Ñ ÑÑаÑÑÑ
компÑÑÑеÑов, но опаÑно пÑи ÑабоÑе Ñ Ð´Ð»Ð¸ÑелÑнÑми запиÑÑми)"
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "Play and/or record using RAM (useful for slow drives)"
+msgstr "ÐоÑпÑоизводиÑÑ Ð¸ пиÑаÑÑ ÑеÑез RAM (пÑи медленнÑÑ
жеÑÑкиÑ
диÑкаÑ
)"
+
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
+msgstr "ÐинимÑм Ñвободной памÑÑи (ÐбайÑ):"
+
+#: prefs/DirectoriesPrefs.cpp:118
+msgid ""
+"If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
+msgstr ""
+"ÐÑли доÑÑÑпное колиÑеÑÑво Ñвободной виÑÑÑалÑной памÑÑи ниже ÑÑого знаÑениÑ,\n"
+"звÑк болÑÑе не бÑÐ´ÐµÑ ÐºÑÑиÑоваÑÑÑÑ Ð² памÑÑи и бÑÐ´ÐµÑ Ð¿Ð¸ÑаÑÑ Ð½Ð° жеÑÑкий диÑк."
#: prefs/DirectoriesPrefs.cpp:121
msgid "Choose a location to place the temporary directory"
msgstr "ÐÑбеÑиÑе ÑаÑположение каÑалога Ð´Ð»Ñ Ñ
ÑÐ°Ð½ÐµÐ½Ð¸Ñ Ð²ÑеменнÑÑ
Ñайлов"
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: prefs/DirectoriesPrefs.cpp:166
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -7748,228 +8162,150 @@ msgstr "У Ð²Ð°Ñ Ð½ÐµÑ Ð¿Ñав на запиÑÑ Ð² каÑалог %s"
#: prefs/DirectoriesPrefs.cpp:199
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
-msgstr "ÐÐ·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ ÐºÐ°ÑаÑелÑно каÑалога Ð´Ð»Ñ Ñ
ÑÐ°Ð½ÐµÐ½Ð¸Ñ Ð²ÑеменнÑÑ
Ñайлов \n"
-"не возÑмеÑÑ ÑÑÑекÑа, пока пÑогÑамма Audacity не бÑÐ´ÐµÑ Ð¿ÐµÑезагÑÑжена."
-
-#: prefs/FileFormatPrefs.cpp:53
-#: prefs/FileFormatPrefs.cpp:54
-msgid "Import / Export"
-msgstr "ÐмпоÑÑ/ÐкÑпоÑÑ"
-
-#: prefs/FileFormatPrefs.cpp:84
-msgid "MP3 Export Library"
-msgstr "ÐиблиоÑека Ð´Ð»Ñ ÑкÑпоÑÑа в MP3"
-
-#: prefs/FileFormatPrefs.cpp:87
-msgid "MP3 Library Version:"
-msgstr "ÐеÑÑÐ¸Ñ Ð±Ð¸Ð±Ð»Ð¸Ð¾Ñеки Ð´Ð»Ñ Ð¿Ð¾Ð´Ð´ÐµÑжки MP3:"
-
-#: prefs/FileFormatPrefs.cpp:93
-msgid "MP3 Library:"
-msgstr "ÐиблиоÑека Ð´Ð»Ñ Ð¿Ð¾Ð´Ð´ÐµÑжки MP3:"
-
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
msgstr ""
+"ÐÐ·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ ÐºÐ°ÑаÑелÑно каÑалога Ð´Ð»Ñ Ñ
ÑÐ°Ð½ÐµÐ½Ð¸Ñ Ð²ÑеменнÑÑ
Ñайлов \n"
+"не возÑмеÑÑ ÑÑÑекÑа, пока пÑогÑамма Audacity не бÑÐ´ÐµÑ Ð¿ÐµÑезагÑÑжена."
-#: prefs/FileFormatPrefs.cpp:98
-msgid "LAME MP3 Library:"
-msgstr "ÐиблиоÑека LAME (ÑоÑ
Ñанение MP3):"
-
-#: prefs/FileFormatPrefs.cpp:101
-#: prefs/FileFormatPrefs.cpp:125
-msgid "&Download"
-msgstr "&СкаÑаÑÑ"
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
-msgstr "ÐиблиоÑека Ð´Ð»Ñ Ð¸Ð¼Ð¿Ð¾ÑÑа/ÑкÑпоÑÑа Ñ FFmpeg"
-
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
-msgstr "ÐеÑÑÐ¸Ñ Ð±Ð¸Ð±Ð»Ð¸Ð¾Ñеки FFmpeg:"
-
-#: prefs/FileFormatPrefs.cpp:118
-#: prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
-msgstr "ÐиблиоÑека FFmpeg:"
-
-#: prefs/FileFormatPrefs.cpp:136
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr "ÐÑимеÑание: каÑеÑÑвеннÑе паÑамеÑÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ ÑказаÑÑ, ÑелкнÑв ÐºÐ½Ð¾Ð¿ÐºÑ Â«ÐаÑамеÑÑÑ...» в диалоге ÑкÑпоÑÑа.\n"
-
-#: prefs/FileFormatPrefs.cpp:137
-msgid "When importing audio files"
-msgstr "ÐÑи импоÑÑе звÑковÑÑ
Ñайлов"
-
-#: prefs/FileFormatPrefs.cpp:140
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
-msgstr "СоздаваÑÑ &ÐºÐ¾Ð¿Ð¸Ñ Ð½ÐµÑжаÑÑÑ
звÑковÑÑ
даннÑÑ
пеÑед ÑедакÑиÑование (безопаÑнее)"
-
-#: prefs/FileFormatPrefs.cpp:141
-msgid "&Read uncompressed audio files directly from the original (faster)"
-msgstr "&ЧиÑаÑÑ Ð½ÐµÑжаÑÑе звÑковÑе даннÑе напÑÑмÑÑ (бÑÑÑÑее)"
-
-#: prefs/FileFormatPrefs.cpp:143
-msgid "&Normalize all tracks in project"
-msgstr "&ÐоÑмализовÑваÑÑ Ð²Ñе доÑожки в пÑоекÑе"
-
-#: prefs/FileFormatPrefs.cpp:148
-msgid "When saving a project that depends on other audio files"
-msgstr "ÐÑи ÑоÑ
Ñанении пÑоекÑа,ÑодеÑжаÑего внеÑние ÑайлÑ"
+#: prefs/GUIPrefs.cpp:49
+msgid "Local"
+msgstr "ÐокалÑно"
-#: prefs/FileFormatPrefs.cpp:151
-msgid "Always © all audio into project (safest)"
-msgstr "ÐÑегда &копиÑоваÑÑ Ð²Ñе ÑÐ°Ð¹Ð»Ñ Ð² пÑÐ¾ÐµÐºÑ (безопаÑнее вÑего)"
+#: prefs/GUIPrefs.cpp:43
+msgid "From Internet"
+msgstr "Ð ÐнÑеÑнеÑе"
-#: prefs/FileFormatPrefs.cpp:152
-msgid "&Do not copy any audio"
-msgstr "&ÐиÑего не копиÑоваÑÑ"
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
+msgstr "36"
-#: prefs/FileFormatPrefs.cpp:153
-msgid "&Ask user"
-msgstr "СпÑа&ÑиваÑÑ Ð¿Ð¾Ð»ÑзоваÑелÑ"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
+msgstr "48"
-#: prefs/FileFormatPrefs.cpp:157
-msgid "When exporting tracks to an audio file"
-msgstr "ÐÑи ÑкÑпоÑÑе доÑожек в звÑковой Ñайл"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
+msgstr "60"
-#: prefs/FileFormatPrefs.cpp:160
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
-msgstr "&ÐÑегда ÑводиÑÑ Ð²Ñе доÑожки в ÑÑеÑео- или моноканал(Ñ)."
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
+msgstr "96"
-#: prefs/FileFormatPrefs.cpp:161
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
-msgstr "&ÐапÑаÑиваÑÑ ÑпоÑоб ÑÐ²ÐµÐ´ÐµÐ½Ð¸Ñ (напÑимеÑ, Ð´Ð»Ñ ÑкÑпоÑÑа многоканалÑного 5.1 Ñайла)"
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
+msgstr "120"
-#: prefs/FileFormatPrefs.cpp:163
-msgid "S&how Metadata Editor prior to export step"
-msgstr "ÐÑкÑÑваÑÑ ÑедакÑÐ¾Ñ &меÑаданнÑÑ
пеÑед ÑкÑпоÑÑом"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
+msgstr "145"
-#: prefs/GUIPrefs.cpp:34
-#: prefs/GUIPrefs.cpp:35
-msgid "Interface"
-msgstr "ÐнÑеÑÑейÑ"
+#: prefs/GUIPrefs.cpp:141
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 Ðб (не Ð´Ð»Ñ Ð¿Ñавки Ñигнала Ñ Ð±Ð¾Ð»ÑÑой амплиÑÑдой)"
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
-msgstr "РбÑаÑзеÑе"
+#: prefs/GUIPrefs.cpp:142
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 Ðб (диапазон PCM пÑи 8 ÑазÑÑдаÑ
)"
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
-msgstr "Ð ÐнÑеÑнеÑе"
+#: prefs/GUIPrefs.cpp:143
+msgid "-60 dB (PCM range of 10 bit samples)"
+msgstr "-60 Ðб (диапазон PCM пÑи 10-ÑазÑÑднÑÑ
вÑбоÑкаÑ
)"
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
-msgstr "ÐÑоÑÑаÑ"
+#: prefs/GUIPrefs.cpp:144
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 Ðб (диапазон PCM пÑи 16 ÑазÑÑдаÑ
)"
-#: prefs/GUIPrefs.cpp:94
-msgid "&Update display while playing"
-msgstr "Ðбновл&ÑÑÑ Ð²Ð¸Ð´ пÑи воÑпÑоизведении"
+#: prefs/GUIPrefs.cpp:145
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 Ðб (пÑедел ÑлÑÑимоÑÑи ÑеловеÑеÑкого ÑÑ
а)"
-#: prefs/GUIPrefs.cpp:96
-msgid "Cl&osing last window quits Audacity"
-msgstr "ÐÑи &закÑÑÑии поÑледнего окна закÑÑÑÑ Audacity"
+#: prefs/GUIPrefs.cpp:146
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 Ðб (диапазон PCM пÑи 24 ÑазÑÑдаÑ
)"
-#: prefs/GUIPrefs.cpp:98
-msgid "Enable &dragging of left and right selection edges"
-msgstr "&РазÑеÑиÑÑ Ð¿ÐµÑеÑаÑкивание кÑаев вÑделений"
+#: prefs/SpectrumPrefs.cpp:140
+msgid "Display"
+msgstr "ÐÑобÑажение"
#: prefs/GUIPrefs.cpp:100
msgid "Er&gonomic order of audio I/O buttons"
msgstr "&ÐÑгономиÑнÑй поÑÑдок конÑÑолÑнÑÑ
кнопок"
-#: prefs/GUIPrefs.cpp:102
-msgid "Automatically &fit tracks vertically zoomed"
-msgstr "&ÐвÑомаÑиÑеÑки ÑмеÑаÑÑ Ð´Ð¾Ñожки по веÑÑикали"
+#: prefs/GUIPrefs.cpp:99
+msgid "Show &support message at program start up"
+msgstr ""
-#: prefs/GUIPrefs.cpp:104
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
-msgstr "&ФокÑÑ Ð¿ÐµÑемеÑаеÑÑÑ Ð¿Ð¾ доÑожкам ÑиклиÑеÑки"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
+msgstr "Ðиапазон ÑÑеÑÑика/волновой ÑоÑÐ¼Ñ (Ðб):"
-#: prefs/GUIPrefs.cpp:106
-msgid "Editing a &clip can move other clips"
-msgstr "ÐÑи пÑавке облаÑÑи можно &двигаÑÑ Ð´ÑÑгие облаÑÑи"
+#: prefs/GUIPrefs.cpp:121
+msgid "Location of Manual:"
+msgstr "РаÑположение ÑÑководÑÑва:"
-#: prefs/GUIPrefs.cpp:108
-msgid "&Select all audio in project, if none selected"
-msgstr "ÐÑи оÑÑÑÑÑÑвии &вÑÐ´ÐµÐ»ÐµÐ½Ð¸Ñ Ð²ÑделÑÑÑ Ð²ÑÑ"
+#: prefs/GUIPrefs.cpp:96
+msgid "Cl&osing last window quits Audacity"
+msgstr "ÐÑи &закÑÑÑии поÑледнего окна закÑÑÑÑ Audacity"
#: prefs/GUIPrefs.cpp:110
msgid "&Beep on completion of longer activities"
msgstr "ÐзвеÑаÑÑ Ð·Ð²Ñком о завеÑÑении &длиÑелÑнÑÑ
опеÑаÑий"
-#: prefs/GUIPrefs.cpp:114
-msgid "Show / Hide"
-msgstr "ÐÑобÑажение панелей"
-
-#: prefs/GUIPrefs.cpp:116
-msgid "Enable cut &lines"
-msgstr "Ðоказ линий вÑÑе&заниÑ"
-
-#: prefs/GUIPrefs.cpp:118
-msgid "Show warnings about &temp files"
-msgstr "ÐоказÑваÑÑ Ð¿Ñ&едÑпÑÐµÐ¶Ð´ÐµÐ½Ð¸Ñ Ð¾ вÑеменнÑÑ
ÑайлаÑ
"
-
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
-msgstr "ÐÑед&лагаÑÑ ÑоÑ
Ñанение даже пÑÑÑого пÑоекÑа"
-
-#: prefs/GUIPrefs.cpp:122
-msgid "Show &Welcome Message at program start up"
-msgstr "Ðо&казÑваÑÑ Ð²Ð²Ð¾Ð´Ð½Ñй кÑÑÑ Ð¿Ñи ÑÑаÑÑе"
-
#: prefs/GUIPrefs.cpp:126
msgid "Modes"
msgstr "РежимÑ"
+#: prefs/GUIPrefs.cpp:147
+msgid "Display VST effects in GUI mode"
+msgstr "ÐагÑÑжаÑÑ ÑобÑÑвеннÑй инÑеÑÑÐµÐ¹Ñ ÑÑÑекÑов VST"
+
#: prefs/GUIPrefs.cpp:129
msgid "Don't a&pply effects in batch mode"
msgstr "&Ðе пÑименÑÑÑ ÑÑÑекÑÑ Ð² пакеÑном Ñежиме"
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
-msgstr "ÐинималÑнÑй оÑобÑажаемÑй диапазон"
-
-#: prefs/GUIPrefs.cpp:141
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 Ðб (не Ð´Ð»Ñ Ð¿Ñавки Ñигнала Ñ Ð±Ð¾Ð»ÑÑой амплиÑÑдой)"
+#: prefs/FileFormatPrefs.cpp:53
+#: prefs/FileFormatPrefs.cpp:54
+msgid "Import / Export"
+msgstr "ÐмпоÑÑ/ÐкÑпоÑÑ"
-#: prefs/GUIPrefs.cpp:142
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 Ðб (диапазон PCM пÑи 8 ÑазÑÑдаÑ
)"
+#: prefs/FileFormatPrefs.cpp:137
+msgid "When importing audio files"
+msgstr "ÐÑи импоÑÑе звÑковÑÑ
Ñайлов"
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
-msgstr "-60 Ðб (диапазон PCM пÑи 10-ÑазÑÑднÑÑ
вÑбоÑкаÑ
)"
+#: prefs/FileFormatPrefs.cpp:140
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
+msgstr "СоздаваÑÑ &ÐºÐ¾Ð¿Ð¸Ñ Ð½ÐµÑжаÑÑÑ
звÑковÑÑ
даннÑÑ
пеÑед ÑедакÑиÑование (безопаÑнее)"
-#: prefs/GUIPrefs.cpp:144
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 Ðб (диапазон PCM пÑи 16 ÑазÑÑдаÑ
)"
+#: prefs/FileFormatPrefs.cpp:141
+msgid "&Read uncompressed audio files directly from the original (faster)"
+msgstr "&ЧиÑаÑÑ Ð½ÐµÑжаÑÑе звÑковÑе даннÑе напÑÑмÑÑ (бÑÑÑÑее)"
-#: prefs/GUIPrefs.cpp:145
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 Ðб (пÑедел ÑлÑÑимоÑÑи ÑеловеÑеÑкого ÑÑ
а)"
+#: prefs/FileFormatPrefs.cpp:143
+msgid "&Normalize all tracks in project"
+msgstr "&ÐоÑмализовÑваÑÑ Ð²Ñе доÑожки в пÑоекÑе"
-#: prefs/GUIPrefs.cpp:146
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 Ðб (диапазон PCM пÑи 24 ÑазÑÑдаÑ
)"
+#: prefs/FileFormatPrefs.cpp:157
+msgid "When exporting tracks to an audio file"
+msgstr "ÐÑи ÑкÑпоÑÑе доÑожек в звÑковой Ñайл"
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
-msgstr "Режим оÑобÑÐ°Ð¶ÐµÐ½Ð¸Ñ Ð¿Ð¾ ÑмолÑаниÑ"
+#: prefs/FileFormatPrefs.cpp:160
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+msgstr "&ÐÑегда ÑводиÑÑ Ð²Ñе доÑожки в ÑÑеÑео- или моноканал(Ñ)."
-#: prefs/GUIPrefs.cpp:164
-msgid "Other interface choices"
-msgstr "ÐÑоÑие паÑамеÑÑÑ"
+#: prefs/FileFormatPrefs.cpp:161
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+msgstr "&ÐапÑаÑиваÑÑ ÑпоÑоб ÑÐ²ÐµÐ´ÐµÐ½Ð¸Ñ (напÑимеÑ, Ð´Ð»Ñ ÑкÑпоÑÑа многоканалÑного 5.1 Ñайла)"
-#: prefs/GUIPrefs.cpp:167
-msgid "Help:"
-msgstr "СпÑавка:"
+#: prefs/FileFormatPrefs.cpp:163
+msgid "S&how Metadata Editor prior to export step"
+msgstr "ÐÑкÑÑваÑÑ ÑедакÑÐ¾Ñ &меÑаданнÑÑ
пеÑед ÑкÑпоÑÑом"
-#: prefs/GUIPrefs.cpp:168
-msgid "Solo Button:"
-msgstr "Ðнопка «Соло»:"
+#: prefs/ImportExportPrefs.cpp:84
+msgid ""
+"Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
+msgstr ""
+"ÐÑимеÑание: паÑамеÑÑÑ ÐºÐ°ÑеÑÑва ÑкÑпоÑÑа могÑÑ Ð±ÑÑÑ Ð²ÑбÑанÑ\n"
+"ÑелÑком по кнопке «ÐаÑамеÑÑÑ» в диалоге ÑкÑпоÑÑа"
#: prefs/KeyConfigPrefs.cpp:64
#: prefs/KeyConfigPrefs.cpp:65
@@ -7984,14 +8320,29 @@ msgstr ""
msgid "Open a new project to modify keyboard shortcuts."
msgstr ""
+#: prefs/KeyConfigPrefs.cpp:108
+#: prefs/KeyConfigPrefs.cpp:224
+msgid "All"
+msgstr "ÐÑе"
+
#: prefs/KeyConfigPrefs.cpp:95
msgid "Key Bindings"
-msgstr "ÐоÑÑÑие клавиÑи"
+msgstr "ÐлавиаÑÑÑнÑе комбинаÑии"
+
+#: prefs/KeyConfigPrefs.cpp:129
+msgid "Category:"
+msgstr "ÐаÑегоÑиÑ:"
#: prefs/KeyConfigPrefs.cpp:115
msgid "S&et"
msgstr "У&ÑÑановиÑÑ"
+#: Tags.cpp:829
+#: Tags.cpp:1486
+#: prefs/KeyConfigPrefs.cpp:116
+msgid "&Clear"
+msgstr "Ð&ÑиÑÑиÑÑ"
+
#: prefs/KeyConfigPrefs.cpp:120
msgid "Note: Pressing Cmd+Q will quit. All other keys are valid."
msgstr "ÐÑимеÑание: нажаÑие комбинаÑии ÐºÐ»Ð°Ð²Ð¸Ñ Cmd+Q пÑиведÑÑ Ðº завеÑÑÐµÐ½Ð¸Ñ ÑабоÑÑ Ð¿ÑогÑаммÑ. ÐÑе оÑÑалÑнÑе комбинаÑии дейÑÑвиÑелÑнÑ.."
@@ -8005,13 +8356,14 @@ msgstr "&ÐÑÑ
однÑе паÑамеÑÑÑ"
msgid "Key Combination"
msgstr "ÐомбинаÑÐ¸Ñ ÐºÐ»Ð°Ð²Ð¸Ñ"
-#: prefs/KeyConfigPrefs.cpp:163
-msgid "Export Keyboard Shortcuts As:"
-msgstr "ÐкÑпоÑÑиÑоваÑÑ ÐºÐ»Ð°Ð²Ð¸Ð°ÑÑÑнÑе комбинаÑии как:"
+#: prefs/KeyConfigPrefs.cpp:369
+#: toolbars/EditToolBar.cpp:144
+msgid "Undo"
+msgstr "ÐÑмениÑÑ"
-#: prefs/KeyConfigPrefs.cpp:183
-msgid "Error saving keyboard shortcuts"
-msgstr "ÐÑибка пÑи ÑоÑ
Ñанении клавиаÑÑÑнÑÑ
комбинаÑий"
+#: prefs/KeyConfigPrefs.cpp:195
+msgid "Redo"
+msgstr "ÐеÑнÑÑÑ"
#: prefs/KeyConfigPrefs.cpp:198
msgid "Select an XML file containing Audacity keyboard shortcuts..."
@@ -8021,19 +8373,80 @@ msgstr "ÐÑбеÑиÑе XML-Ñайл, ÑодеÑжаÑий гоÑÑÑие кл
msgid "Error loading keyboard shortcuts"
msgstr "ÐÑибка пÑи загÑÑзке клавиаÑÑÑнÑÑ
комбинаÑий"
+#: prefs/KeyConfigPrefs.cpp:163
+msgid "Export Keyboard Shortcuts As:"
+msgstr "ÐкÑпоÑÑиÑоваÑÑ ÐºÐ»Ð°Ð²Ð¸Ð°ÑÑÑнÑе комбинаÑии как:"
+
+#: prefs/KeyConfigPrefs.cpp:183
+msgid "Error saving keyboard shortcuts"
+msgstr "ÐÑибка пÑи ÑоÑ
Ñанении клавиаÑÑÑнÑÑ
комбинаÑий"
+
#: prefs/KeyConfigPrefs.cpp:243
#, c-format
-msgid "The keyboard shortcut '%s' is already assigned to:\n"
+msgid ""
+"The keyboard shortcut '%s' is already assigned to:\n"
"\n"
"'%s'"
-msgstr "ÐлавиаÑÑÑÐ½Ð°Ñ ÐºÐ¾Ð¼Ð±Ð¸Ð½Ð°ÑÐ¸Ñ '%s' Ñже назнаÑена длÑ:\n"
+msgstr ""
+"ÐлавиаÑÑÑÐ½Ð°Ñ ÐºÐ¾Ð¼Ð±Ð¸Ð½Ð°ÑÐ¸Ñ '%s' Ñже назнаÑена длÑ:\n"
"\n"
"'%s'"
-#: prefs/KeyConfigPrefs.cpp:369
-#: toolbars/EditToolBar.cpp:144
-msgid "Undo"
-msgstr "ÐÑмениÑÑ"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr "ÐиблиоÑеки"
+
+#: prefs/FileFormatPrefs.cpp:84
+msgid "MP3 Export Library"
+msgstr "ÐиблиоÑека Ð´Ð»Ñ ÑкÑпоÑÑа в MP3"
+
+#: prefs/FileFormatPrefs.cpp:87
+msgid "MP3 Library Version:"
+msgstr "ÐеÑÑÐ¸Ñ Ð±Ð¸Ð±Ð»Ð¸Ð¾Ñеки Ð´Ð»Ñ Ð¿Ð¾Ð´Ð´ÐµÑжки MP3:"
+
+#: prefs/FileFormatPrefs.cpp:93
+msgid "MP3 Library:"
+msgstr "ÐиблиоÑека Ð´Ð»Ñ Ð¿Ð¾Ð´Ð´ÐµÑжки MP3:"
+
+#: prefs/FileFormatPrefs.cpp:96
+#: prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr "&УказаÑÑ"
+
+#: prefs/FileFormatPrefs.cpp:98
+msgid "LAME MP3 Library:"
+msgstr "ÐиблиоÑека LAME (ÑоÑ
Ñанение MP3):"
+
+#: prefs/FileFormatPrefs.cpp:101
+#: prefs/FileFormatPrefs.cpp:125
+msgid "&Download"
+msgstr "&СкаÑаÑÑ"
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr "ÐиблиоÑека Ð´Ð»Ñ Ð¸Ð¼Ð¿Ð¾ÑÑа/ÑкÑпоÑÑа Ñ FFmpeg"
+
+#: prefs/FileFormatPrefs.cpp:109
+msgid "FFmpeg Library Version:"
+msgstr "ÐеÑÑÐ¸Ñ Ð±Ð¸Ð±Ð»Ð¸Ð¾Ñеки FFmpeg:"
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr "СовмеÑÑÐ¸Ð¼Ð°Ñ Ð±Ð¸Ð±Ð»Ð¸Ð¾Ñека FFmpeg не найдена"
+
+#: prefs/FileFormatPrefs.cpp:118
+#: prefs/FileFormatPrefs.cpp:122
+msgid "FFmpeg Library:"
+msgstr "ÐиблиоÑека FFmpeg:"
+
+#: prefs/MidiIOPrefs.cpp:58
+msgid "MIDI Devices"
+msgstr "УÑÑÑойÑÑва MIDI"
+
+#: prefs/AudioIOPrefs.cpp:147
+#: prefs/MidiIOPrefs.cpp:144
+msgid "Playthrough"
+msgstr "ÐониÑоÑинг запиÑи"
#: prefs/MidiIOPrefs.cpp:146
msgid "&Play other tracks while recording new one"
@@ -8047,6 +8460,11 @@ msgstr "&ÐппаÑаÑное Ñквозное воÑпÑоизведение:
msgid "&Software Playthrough (Play new track while recording it)"
msgstr "&ÐÑогÑаммное Ñквозное воÑпÑоизведение: воÑпÑоизводиÑÑ Ð·Ð°Ð¿Ð¸ÑÑваемÑÑ Ð´Ð¾ÑожкÑ"
+#: prefs/AudioIOPrefs.cpp:176
+#: prefs/MidiIOPrefs.cpp:157
+msgid "Cut Preview"
+msgstr "ÐÑоÑлÑÑивание ÑезÑлÑÑаÑа вÑÑезаниÑ"
+
#: prefs/MidiIOPrefs.cpp:160
msgid "Play before cut region:"
msgstr ""
@@ -8055,22 +8473,46 @@ msgstr ""
msgid "Play after cut region:"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:189
+#: prefs/MidiIOPrefs.cpp:167
+msgid "Latency"
+msgstr "ÐадеÑжка"
+
#: prefs/MidiIOPrefs.cpp:173
msgid "Audio to buffer:"
-msgstr ""
+msgstr "ÐÑÑеÑизиÑÑемÑй звÑк:"
#: prefs/MidiIOPrefs.cpp:176
msgid "Latency correction:"
-msgstr ""
+msgstr "ÐоÑÑекÑÐ¸Ñ Ð·Ð°Ð´ÐµÑжки:"
#: prefs/MidiIOPrefs.cpp:183
msgid "Seek Time"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:206
+#: prefs/MidiIOPrefs.cpp:186
+msgid "Short period:"
+msgstr "ÐоÑоÑÐºÐ°Ñ Ð¿ÑокÑÑÑка:"
+
+#: prefs/AudioIOPrefs.cpp:208
+#: prefs/MidiIOPrefs.cpp:188
+msgid "Long period:"
+msgstr "ÐÐ¾Ð»Ð³Ð°Ñ Ð¿ÑокÑÑÑка"
+
+#: prefs/AudioIOPrefs.cpp:168
+#: prefs/MidiIOPrefs.cpp:193
+msgid "Effects Preview"
+msgstr "ÐÑедпÑоÑлÑÑивание ÑÑÑекÑов"
+
#: prefs/MidiIOPrefs.cpp:196
msgid "Play when previewing:"
msgstr ""
+#: prefs/MidiIOPrefs.cpp:256
+msgid "No MIDI interfaces"
+msgstr "ÐÐµÑ ÑÑÑÑойÑÑв MIDI"
+
#: prefs/MousePrefs.cpp:55
#: prefs/MousePrefs.cpp:56
msgid "Mouse"
@@ -8307,10 +8749,62 @@ msgstr "Ctrl-ÐовоÑоÑ-ÐолÑÑиком"
msgid "Zoom in or out"
msgstr "ÐаÑÑÑабиÑоваÑÑ Ð²Ð¸Ð´"
+#: prefs/AudioIOPrefs.cpp:171
+msgid "Length of preview:"
+msgstr "ÐлиÑелÑноÑÑÑ Ð¿ÑоÑлÑÑиваниÑ:"
+
+#: prefs/AudioIOPrefs.cpp:179
+msgid "Preview before cut region:"
+msgstr "ÐеÑед вÑÑезаемой облаÑÑÑÑ:"
+
+#: prefs/AudioIOPrefs.cpp:181
+msgid "Preview after cut region:"
+msgstr "ÐоÑле вÑÑезаемой облаÑÑи:"
+
+#: prefs/AudioIOPrefs.cpp:203
+msgid "Seek Time when playing"
+msgstr "ÐÑокÑÑÑка пÑи воÑпÑоизведении"
+
#: prefs/PrefsDialog.cpp:94
msgid "Audacity Preferences"
msgstr "ÐаÑамеÑÑÑ Audacity"
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr "ÐÑоекÑÑ"
+
+#: prefs/FileFormatPrefs.cpp:148
+msgid "When saving a project that depends on other audio files"
+msgstr "ÐÑи ÑоÑ
Ñанении пÑоекÑа,ÑодеÑжаÑего внеÑние ÑайлÑ"
+
+#: prefs/FileFormatPrefs.cpp:151
+msgid "Always © all audio into project (safest)"
+msgstr "ÐÑегда &копиÑоваÑÑ Ð²Ñе ÑÐ°Ð¹Ð»Ñ Ð² пÑÐ¾ÐµÐºÑ (безопаÑнее вÑего)"
+
+#: prefs/FileFormatPrefs.cpp:152
+msgid "&Do not copy any audio"
+msgstr "&ÐиÑего не копиÑоваÑÑ"
+
+#: prefs/FileFormatPrefs.cpp:153
+msgid "&Ask user"
+msgstr "СпÑа&ÑиваÑÑ Ð¿Ð¾Ð»ÑзоваÑелÑ"
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr "ÐвÑоÑоÑ
Ñанение"
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr "ÐвÑомаÑиÑеÑки ÑоÑ
ÑанÑÑÑ ÐºÐ¾Ð¿Ð¸Ñ Ð¿ÑоекÑа в дÑÑгÑÑ Ð¿Ð°Ð¿ÐºÑ"
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr "ÐнÑеÑвал авÑоÑоÑ
ÑанениÑ:"
+
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr "минÑÑ"
+
#: prefs/QualityPrefs.cpp:73
msgid "Rectangle"
msgstr "ÐÑÑмоÑголÑное"
@@ -8335,48 +8829,46 @@ msgstr "ЧаÑÑоÑа ÑÑмплиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¿Ð¾ ÑмолÑаниÑ:"
msgid "Default Sample Format:"
msgstr "РазÑÑдноÑÑÑ Ð¿Ð¾ ÑмолÑаниÑ:"
-#: prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "ÐÑеобÑазование ÑаÑÑоÑÑ ÑÑмплиÑÐ¾Ð²Ð°Ð½Ð¸Ñ \n"
-"в Ñежиме ÑеалÑного вÑемени:"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr "ÐÑеобÑазование в Ñежиме ÑеалÑного вÑемени"
-#: prefs/QualityPrefs.cpp:139
-msgid "High-quality sample rate converter:"
-msgstr "ÐÑÑококаÑеÑÑвенное пÑеобÑазование \n"
-"ÑаÑÑоÑÑ ÑÑмплиÑованиÑ:"
+#: prefs/QualityPrefs.cpp:171
+#: prefs/QualityPrefs.cpp:193
+msgid "Sample Rate Converter:"
+msgstr "ÐÑеобÑазование ÑаÑÑоÑÑ ÑÑмплиÑованиÑ:"
-#: prefs/QualityPrefs.cpp:142
-msgid "Real-time dither:"
-msgstr "Сглаживание в Ñежиме ÑеалÑного вÑемени:"
+#: prefs/QualityPrefs.cpp:164
+msgid "Dither"
+msgstr "ÐодмеÑивание ÑÑма"
-#: prefs/QualityPrefs.cpp:145
-msgid "High-quality dither:"
-msgstr "ÐÑÑококаÑеÑÑвеннÑй диÑеÑинг:"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr "ÐÑÑококаÑеÑÑвенное пÑеобÑазование"
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
-msgstr "ÐÑеобÑазование"
+#: prefs/AudioIOPrefs.cpp:149
+msgid "Overdub: &Play other tracks while recording new one"
+msgstr "&Ðаложение: воÑпÑоизводиÑÑ Ð´ÑÑгие доÑожки пÑи запиÑи новой"
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
-msgstr "ÐÑеобÑазование ÑаÑÑоÑÑ ÑÑмплиÑованиÑ"
+#: prefs/AudioIOPrefs.cpp:152
+msgid "&Hardware Playthrough: Play new track while recording it"
+msgstr "&ÐппаÑаÑнÑй: воÑпÑоизводиÑÑ Ð½Ð¾Ð²Ñе доÑожки пÑи иÑ
запиÑи"
-#: prefs/QualityPrefs.cpp:164
-msgid "Dither"
-msgstr "ÐодмеÑивание ÑÑма"
+#: prefs/AudioIOPrefs.cpp:157
+msgid "&Software Playthrough: Play new track while recording or monitoring"
+msgstr "&ÐÑогÑаммнÑй мониÑоÑинг запиÑи: воÑпÑоизводиÑÑ Ð·Ð°Ð¿Ð¸ÑÑваемÑÑ/оÑÑлеживаемÑÑ Ð´Ð¾ÑожкÑ"
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
-msgstr "Ð ÑеалÑном вÑемени:"
+#: prefs/AudioIOPrefs.cpp:160
+msgid "(uncheck when recording \"stereo mix\")"
+msgstr "(не иÑполÑзоваÑÑ Ð¿Ñи запиÑи ÑÑеÑеомикÑа)"
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
-msgstr "ÐÑÑокое каÑеÑÑво:"
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
+msgstr "миллиÑекÑнд (Ñем вÑÑе знаÑение, Ñем болÑÑе задеÑжка оÑклика)"
-#: prefs/SmartRecordPrefs.cpp:37
-#: prefs/SmartRecordPrefs.cpp:38
-msgid "Smart Recording"
-msgstr "ÐкÑиваÑÐ¸Ñ Ð·Ð°Ð¿Ð¸Ñи"
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
+msgstr "миллиÑекÑнд (оÑÑиÑаÑелÑное знаÑение â коÑÑекÑÐ¸Ñ Ð² минÑÑ)"
#: prefs/SmartRecordPrefs.cpp:64
#: prefs/SmartRecordPrefs.cpp:66
@@ -8392,18 +8884,54 @@ msgstr "УÑÐ¾Ð²ÐµÐ½Ñ Ð³ÑомкоÑÑи (Ðб):"
msgid "Spectrograms"
msgstr "СпекÑÑогÑаммÑ"
-#: prefs/SpectrumPrefs.cpp:91
-msgid "FFT Size"
-msgstr "Ð Ð°Ð·Ð¼ÐµÑ FFT"
-
#: prefs/SpectrumPrefs.cpp:94
msgid "8 - most wideband"
msgstr "8 â наиболее ÑиÑокополоÑнÑй"
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr "16"
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr "32"
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr "64"
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr "128"
+
#: prefs/SpectrumPrefs.cpp:99
msgid "256 - default"
msgstr "256 â по ÑмолÑаниÑ"
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr "512"
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr "1024"
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr "2048"
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr "4096"
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr "8192"
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr "16384"
+
#: prefs/SpectrumPrefs.cpp:107
msgid "32768 - most narrowband"
msgstr "32768 â наиболее ÑзкополоÑнÑй"
@@ -8412,21 +8940,25 @@ msgstr "32768 â наиболее ÑзкополоÑнÑй"
msgid "4096 - most narrowband"
msgstr "4096 â наиболее ÑзкополоÑнÑй"
-#: prefs/SpectrumPrefs.cpp:116
-msgid "Window type:"
-msgstr "Тип оконной ÑÑнкÑии:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
+msgstr "ÐÑÑÑÑÑе пÑеобÑÐ°Ð·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¤ÑÑÑе"
+
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
+msgstr "Ð Ð°Ð·Ð¼ÐµÑ Ð¾ÐºÐ¾Ð½Ð½Ð¾Ð¹ ÑÑнкÑии"
+
+#: prefs/SpectrumPrefs.cpp:93
+msgid "Window type"
+msgstr "Тип оконной ÑÑнкÑии"
#: prefs/SpectrumPrefs.cpp:125
msgid "FFT Skip Points"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:140
-msgid "Display"
-msgstr "ÐÑобÑажение"
-
-#: prefs/SpectrumPrefs.cpp:144
-msgid "&Grayscale"
-msgstr "Ð &гÑадаÑиÑÑ
ÑеÑого"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
+msgstr ""
#: prefs/SpectrumPrefs.cpp:147
msgid "Minimum Frequency (Hz):"
@@ -8436,17 +8968,29 @@ msgstr "ÐинималÑÐ½Ð°Ñ ÑаÑÑоÑа (ÐÑ):"
msgid "Maximum Frequency (Hz):"
msgstr "ÐакÑималÑÐ½Ð°Ñ ÑаÑÑоÑа (ÐÑ):"
+#: prefs/SpectrumPrefs.cpp:146
+msgid "Gain (dB):"
+msgstr "УÑиление (Ðб):"
+
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Range (dB):"
+msgstr "Ðиапазон (Ðб):"
+
#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
+msgid "Frequency gain: (dB/dec)"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
-msgstr "&ÐайÑи ноÑÑ"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
+msgstr "ÐоказÑваÑÑ ÑпекÑÑ Ð² &гÑадаÑиÑÑ
ÑеÑого"
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
-msgstr "&ÐванÑоваÑÑ Ð½Ð¾ÑÑ"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
+msgstr "&ÐоказÑваÑÑ ÑеÑÐºÑ Ð²Ð´Ð¾Ð»Ñ Ð¾Ñи Y"
+
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
+msgstr ""
#: prefs/SpectrumPrefs.cpp:165
msgid "Minimum Amplitude (dB):"
@@ -8454,7 +8998,15 @@ msgstr "ÐинималÑÐ½Ð°Ñ Ð°Ð¼Ð¿Ð»Ð¸ÑÑда (Ðб)"
#: prefs/SpectrumPrefs.cpp:170
msgid "Max. Number of Notes (1..128):"
-msgstr ""
+msgstr "ÐакÑ. ÑиÑло Ð½Ð¾Ñ (1-128):"
+
+#: prefs/SpectrumPrefs.cpp:161
+msgid "&Find Notes"
+msgstr "&ÐайÑи ноÑÑ"
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Quantize Notes"
+msgstr "&ÐванÑоваÑÑ Ð½Ð¾ÑÑ"
#: prefs/SpectrumPrefs.cpp:197
msgid "The maximum frequency must be an integer"
@@ -8472,13 +9024,44 @@ msgstr "ÐинималÑно Ð²Ð¾Ð·Ð¼Ð¾Ð¶Ð½Ð°Ñ ÑаÑÑоÑа должна бÑ
msgid "Minimum frequency must be at least 0 Hz"
msgstr "ÐинималÑÐ½Ð°Ñ ÑаÑÑоÑа должна наÑ
одиÑÑÑÑ Ð² пÑеделаÑ
Ð¾Ñ 100 ÐÑ Ð´Ð¾ 100 000 ÐÑ"
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:237
+msgid "The gain must be an integer"
+msgstr "УÑиление должно бÑÑÑ Ñелой пеÑеменной"
+
+#: prefs/SpectrumPrefs.cpp:242
+msgid "The range must be a positive integer"
+msgstr "Ðиапазон должен бÑÑÑ Ð¿Ð¾Ð»Ð¾Ð¶Ð¸ÑелÑной пеÑеменной"
+
+#: prefs/SpectrumPrefs.cpp:246
+msgid "The range must be at least 1 dB"
+msgstr "Ðиапазон должен бÑÑÑ Ñавен Ñ
оÑÑ Ð±Ñ 1 Ðб"
+
+#: prefs/SpectrumPrefs.cpp:252
+msgid "The frequency gain must be an integer"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:256
+msgid "The frequency gain cannot be negative"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:260
+msgid "The frequency gain must be no more than 60 dB/dec"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
-msgstr ""
+msgstr "ÐинималÑÐ½Ð°Ñ Ð°Ð¼Ð¿Ð»Ð¸ÑÑда (дб) должна бÑÑÑ Ñелой пеÑеменной"
#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
+msgid "The maximum number of notes must be in the range 1..128"
msgstr ""
#: prefs/ThemePrefs.cpp:62
@@ -8486,6 +9069,41 @@ msgstr ""
msgid "Theme"
msgstr "СÑÐ¸Ð»Ñ Ð¾ÑоÑмлениÑ"
+#: prefs/ThemePrefs.cpp:126
+msgid "Info"
+msgstr "ÐнÑоÑмаÑиÑ"
+
+#: prefs/ThemePrefs.cpp:91
+msgid ""
+"Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:96
+msgid ""
+"You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid ""
+"If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid ""
+"Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#. i18n-hint: && in here is an escape character to get a single & on screen,
#. * so keep it as is
#: prefs/ThemePrefs.cpp:93
@@ -8516,78 +9134,94 @@ msgstr "СоÑ
ÑаниÑÑ ÑайлÑ"
msgid "Load Files"
msgstr "ÐагÑÑзиÑÑ ÑайлÑ"
-#: prefs/ThemePrefs.cpp:126
-msgid "Info"
-msgstr "ÐнÑоÑмаÑиÑ"
+#: prefs/GUIPrefs.cpp:50
+msgid "Simple"
+msgstr "ÐÑоÑÑаÑ"
-#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
-msgstr ""
+#: prefs/GUIPrefs.cpp:94
+msgid "&Update display while playing"
+msgstr "Ðбновл&ÑÑÑ Ð²Ð¸Ð´ пÑи воÑпÑоизведении"
-#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
-msgstr ""
+#: prefs/GUIPrefs.cpp:102
+msgid "Automatically &fit tracks vertically zoomed"
+msgstr "&ÐвÑомаÑиÑеÑки ÑмеÑаÑÑ Ð´Ð¾Ñожки по веÑÑикали"
-#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
-msgstr ""
+#: prefs/TracksPrefs.cpp:88
+msgid "Default View Mode:"
+msgstr "Режим оÑобÑÐ°Ð¶ÐµÐ½Ð¸Ñ Ð¿Ð¾ ÑмолÑаниÑ:"
-#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
-msgstr ""
+#: prefs/GUIPrefs.cpp:108
+msgid "&Select all audio in project, if none selected"
+msgstr "ÐÑи оÑÑÑÑÑÑвии &вÑÐ´ÐµÐ»ÐµÐ½Ð¸Ñ Ð²ÑделÑÑÑ Ð²ÑÑ"
+
+#: prefs/GUIPrefs.cpp:116
+msgid "Enable cut &lines"
+msgstr "Ðоказ линий вÑÑе&заниÑ"
+
+#: prefs/GUIPrefs.cpp:98
+msgid "Enable &dragging of left and right selection edges"
+msgstr "&РазÑеÑиÑÑ Ð¿ÐµÑеÑаÑкивание кÑаев вÑделений"
+
+#: prefs/GUIPrefs.cpp:104
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+msgstr "&ФокÑÑ Ð¿ÐµÑемеÑаеÑÑÑ Ð¿Ð¾ доÑожкам ÑиклиÑеÑки"
+
+#: prefs/GUIPrefs.cpp:106
+msgid "Editing a &clip can move other clips"
+msgstr "ÐÑи пÑавке облаÑÑи можно &двигаÑÑ Ð´ÑÑгие облаÑÑи"
+
+#: prefs/GUIPrefs.cpp:168
+msgid "Solo Button:"
+msgstr "Ðнопка «Соло»:"
+
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
+msgstr "ÐÑедÑпÑеждениÑ"
+
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr "ÐоказÑваÑÑ Ð¿ÑедÑпÑеждениÑ"
+
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr "&ÐÑи ÑоÑ
Ñанении пÑоекÑов"
+
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr "ÐÑи &ÑоÑ
Ñанении пÑÑÑÑÑ
пÑоекÑов"
+
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr "Ðогда &на диÑке оÑÑаеÑÑÑ Ð¼Ð°Ð»Ð¾ Ñвободного пÑоÑÑÑанÑÑва"
+
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr "ÐÑи Ñведении &в ÑÑеÑео в Ñ
оде ÑкÑпоÑÑа"
+
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr "ÐÑи Ñведении в &моно в Ñ
оде ÑкÑпоÑÑа"
#: toolbars/ControlToolBar.cpp:175
msgid "Pause"
msgstr "ÐÑиоÑÑановиÑÑ"
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play"
-msgstr "ÐоÑпÑоизвеÑÑи"
-
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
-msgstr ""
-
#: toolbars/ControlToolBar.cpp:183
msgid "Stop"
msgstr "ÐÑÑановиÑÑ"
-#: toolbars/ControlToolBar.cpp:186
-msgid "Skip to Start"
-msgstr "ÐеÑейÑи к наÑÐ°Ð»Ñ Ð´Ð¾Ñожки"
+#: toolbars/ControlToolBar.cpp:195
+msgid "Clean Speech"
+msgstr "ÐоÑиÑÑиÑÑ Ð·Ð°Ð¿Ð¸ÑÑ Ð³Ð¾Ð»Ð¾Ñа"
-#: toolbars/ControlToolBar.cpp:189
-msgid "Skip to End"
-msgstr "ÐеÑейÑи к конÑÑ Ð´Ð¾Ñожки"
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play (Shift for Loop Play)"
+msgstr ""
#: toolbars/ControlToolBar.cpp:192
msgid "Record (Shift for Append Record)"
msgstr ""
-#: toolbars/ControlToolBar.cpp:195
-msgid "Clean Speech"
-msgstr "ÐоÑиÑÑиÑÑ Ð·Ð°Ð¿Ð¸ÑÑ Ð³Ð¾Ð»Ð¾Ñа"
-
#: toolbars/ControlToolBar.cpp:540
#: toolbars/ControlToolBar.cpp:869
msgid "Error while opening sound device. "
@@ -8631,29 +9265,21 @@ msgstr "ÐÑиблизиÑÑ"
msgid "Zoom Out"
msgstr "ÐÑдалиÑÑ"
-#: toolbars/EditToolBar.cpp:161
-msgid "Zoom Toggle"
-msgstr "ÐеÑеклÑÑение Ñипа маÑÑÑабиÑованиÑ"
-
-#: toolbars/EditToolBar.cpp:165
-msgid "Fit Selection"
-msgstr "УмеÑÑиÑÑ Ð²Ñделенное"
-
#: toolbars/EditToolBar.cpp:165
msgid "Fit selection in window"
msgstr "УмеÑÑиÑÑ Ð²Ñделенное в окне"
#: toolbars/EditToolBar.cpp:167
-msgid "Fit Project"
-msgstr "УмеÑÑиÑÑ Ð¿ÑоекÑ"
-
-#: toolbars/EditToolBar.cpp:167
msgid "Fit project in window"
msgstr "УмеÑÑиÑÑ Ð¿ÑÐ¾ÐµÐºÑ Ð² окне"
-#: toolbars/MeterToolBar.cpp:50
-msgid "Meter"
-msgstr "ÐндикаÑоÑ"
+#: toolbars/EditToolBar.cpp:165
+msgid "Fit Selection"
+msgstr "УмеÑÑиÑÑ Ð²Ñделенное"
+
+#: toolbars/EditToolBar.cpp:167
+msgid "Fit Project"
+msgstr "УмеÑÑиÑÑ Ð¿ÑоекÑ"
#: toolbars/MeterToolBar.cpp:80
msgid "Play Meter"
@@ -8700,6 +9326,18 @@ msgstr ""
msgid "Input Source"
msgstr "ÐÑÑоÑник вÑ
ода"
+#: toolbars/MixerToolBar.cpp:293
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:300
+msgid "Select Input Source"
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:314
+msgid "Input Source:"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:86
msgid "Selection"
msgstr "ÐÑделение"
@@ -8784,34 +9422,6 @@ msgstr "ÐеваÑ=ÐÑиблизиÑÑ, ÐÑаваÑ=ÐÑдалиÑÑ, СÑед
msgid "Click and drag to move a track in time"
msgstr "ЩÑлкниÑе и пеÑеÑаÑиÑе Ð´Ð»Ñ Ð¿ÐµÑемеÑÐµÐ½Ð¸Ñ Ð´Ð¾Ñожки во вÑемени"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr "ÐнÑÑÑÑменÑÑ"
-
-#: toolbars/ToolsToolBar.cpp:147
-#: toolbars/ToolsToolBar.cpp:182
-msgid "Selection Tool"
-msgstr "ÐÑделение"
-
-#: toolbars/ToolsToolBar.cpp:148
-msgid "Envelope Tool"
-msgstr "Ðзменение огибаÑÑей"
-
-#: toolbars/ToolsToolBar.cpp:149
-#: toolbars/ToolsToolBar.cpp:183
-msgid "Time Shift Tool"
-msgstr "ÐеÑемеÑение"
-
-#: toolbars/ToolsToolBar.cpp:150
-#: toolbars/ToolsToolBar.cpp:185
-msgid "Zoom Tool"
-msgstr "ÐаÑÑÑабиÑование"
-
-#: toolbars/ToolsToolBar.cpp:151
-#: toolbars/ToolsToolBar.cpp:184
-msgid "Draw Tool"
-msgstr "Ðзменение ÑÑмплов"
-
#: toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
msgstr "УнивеÑÑалÑнÑй инÑÑÑÑменÑ"
@@ -8820,22 +9430,10 @@ msgstr "УнивеÑÑалÑнÑй инÑÑÑÑменÑ"
msgid "Slide Tool"
msgstr "ÐеÑемеÑение"
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr "УнивеÑÑалÑнÑй инÑÑÑÑменÑ"
-
-#: toolbars/TranscriptionToolBar.cpp:84
-msgid "Transcription"
-msgstr "ТÑанÑкÑипÑиÑ"
-
#: toolbars/TranscriptionToolBar.cpp:171
msgid "Play at selected speed"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:172
-msgid "Play-at-speed"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:178
#: toolbars/TranscriptionToolBar.cpp:183
msgid "Playback Speed"
@@ -8845,74 +9443,38 @@ msgstr "СкоÑоÑÑÑ Ð²Ð¾ÑпÑоизведениÑ"
msgid "Adjust left selection to next onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:197
-msgid "Left-to-On"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:199
msgid "Adjust right selection to previous offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:200
-msgid "Right-to-Off"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:202
msgid "Adjust left selection to next offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:203
-msgid "Left-to-Off"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:205
msgid "Adjust right selection to previous onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:206
-msgid "Right-to-On"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:208
msgid "Select region of sound around cursor"
msgstr "ÐÑбеÑиÑе облаÑÑÑ Ñо звÑком вокÑÑг кÑÑÑоÑа"
-#: toolbars/TranscriptionToolBar.cpp:209
-msgid "Select-Sound"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:211
msgid "Select region of silence around cursor"
msgstr "ÐÑбеÑиÑе облаÑÑÑ ÑиÑÐ¸Ð½Ñ Ð²Ð¾ÐºÑÑг кÑÑÑоÑа"
-#: toolbars/TranscriptionToolBar.cpp:212
-msgid "Select-Silence"
-msgstr ""
-
#: toolbars/TranscriptionToolBar.cpp:214
msgid "Automatically make labels from words"
msgstr "ÐвÑомаÑиÑеÑки делаÑÑ Ð¿Ð¾Ð¼ÐµÑки из Ñлов"
-#: toolbars/TranscriptionToolBar.cpp:215
-msgid "Make Labels"
-msgstr "СоздаÑÑ Ð¿Ð¾Ð¼ÐµÑки"
-
#: toolbars/TranscriptionToolBar.cpp:217
msgid "Add label at selection"
msgstr "ÐобавиÑÑ Ð¿Ð¾Ð¼ÐµÑÐºÑ Ðº вÑделениÑ"
-#: toolbars/TranscriptionToolBar.cpp:218
-msgid "Add Label"
-msgstr "ÐобавиÑÑ Ð¿Ð¾Ð¼ÐµÑкÑ"
-
#: toolbars/TranscriptionToolBar.cpp:220
msgid "Calibrate voicekey"
msgstr "ÐÑкалибÑоваÑÑ Ð³Ð¾Ð»Ð¾Ñовой клÑÑ"
-#: toolbars/TranscriptionToolBar.cpp:221
-msgid "Calibrate"
-msgstr "ÐалибÑовка"
-
#: toolbars/TranscriptionToolBar.cpp:225
msgid "Adjust Sensitivity"
msgstr "СкоÑÑекÑиÑоваÑÑ ÑÑвÑÑвиÑелÑноÑÑÑ"
@@ -8945,6 +9507,46 @@ msgstr "Смена напÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ (вÑÑокий поÑог)"
msgid "Key type"
msgstr "Тип клавиÑи"
+#: toolbars/TranscriptionToolBar.cpp:172
+msgid "Play-at-speed"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:197
+msgid "Left-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:200
+msgid "Right-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:203
+msgid "Left-to-Off"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:206
+msgid "Right-to-On"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:209
+msgid "Select-Sound"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:212
+msgid "Select-Silence"
+msgstr ""
+
+#: toolbars/TranscriptionToolBar.cpp:215
+msgid "Make Labels"
+msgstr "СоздаÑÑ Ð¿Ð¾Ð¼ÐµÑки"
+
+#: toolbars/TranscriptionToolBar.cpp:218
+msgid "Add Label"
+msgstr "ÐобавиÑÑ Ð¿Ð¾Ð¼ÐµÑкÑ"
+
+#: toolbars/TranscriptionToolBar.cpp:221
+msgid "Calibrate"
+msgstr "ÐалибÑовка"
+
#: widgets/AButton.cpp:303
msgid " (disabled)"
msgstr " (оÑклÑÑено)"
@@ -9011,17 +9613,6 @@ msgstr "СпÑавка в ÐнÑеÑнеÑе"
msgid "Grabber"
msgstr ""
-#: widgets/Grid.cpp:643
-#, c-format
-msgid "%d rows, %d columns"
-msgstr "%d ÑÑÑок, %d ÑÑолбÑов"
-
-#: widgets/Grid.cpp:649
-#: widgets/Grid.cpp:776
-#, c-format
-msgid "Row %d"
-msgstr "Ð Ñд %d"
-
#: widgets/Grid.cpp:791
msgid "Empty"
msgstr "ÐÑÑÑо"
@@ -9058,15 +9649,12 @@ msgstr "ÐаÑамеÑÑÑ..."
msgid "Mix Volume"
msgstr "ÐикÑ"
-#: widgets/Meter.cpp:1145
-msgid "This determines how often the meter is refreshed.\n"
-"If you have a slower PC you may want to select a\n"
-"lower refresh rate (30 per second or lower), so that\n"
-"audio qualtiy is not affected by the meter display."
-msgstr "ÐдеÑÑ ÑказÑваеÑÑÑ, как ÑаÑÑо должен обновлÑÑÑÑÑ\n"
-"индикаÑоÑ. ÐÑли Ñ Ð²Ð°Ñ Ð´Ð¾ÑÑаÑоÑно медленнÑй\n"
-"компÑÑÑеÑ, ÑкажиÑе ÑаÑÑоÑÑ Ð¿Ð¾Ð¼ÐµÐ½ÑÑе (30 в ÑекÑндÑ\n"
-"или менÑÑе), ÑÑÐ¾Ð±Ñ ÐºÐ°ÑеÑÑво звÑка не ÑÑÑадало."
+#: widgets/Meter.cpp:1133
+msgid ""
+"Higher refresh rates make the meter show more frequent\n"
+"changes. A rate of 30 per second or less should prevent\n"
+"the meter affecting audio quality on slower machines."
+msgstr ""
#: widgets/Meter.cpp:1146
msgid "Meter refresh rate per second [1-100]: "
@@ -9136,7 +9724,7 @@ msgstr "0100 дней 024 Ñ 060 м 060 Ñ"
#. * minutes, seconds and hundreths of a second (1/100 second)
#: widgets/TimeTextCtrl.cpp:288
msgid "hh:mm:ss + hundredths"
-msgstr ""
+msgstr "ÑÑ:мм:ÑÑ + ÑоÑни"
#. i18n-hint: Format string for displaying time in hours, minutes, seconds
#. * and hundredths of a second. Change the 'h' to the abbreviation for hours,
@@ -9145,7 +9733,7 @@ msgstr ""
#. * unless there aren't 60 minutes in an hour in your locale
#: widgets/TimeTextCtrl.cpp:294
msgid "0100 h 060 m 060.0100 s"
-msgstr ""
+msgstr "0100 Ñ 060 м 060.0100 Ñ"
#. i18n-hint: Name of time display format that shows time in hours,
#. * minutes, seconds and milliseconds (1/1000 second)
@@ -9253,7 +9841,7 @@ msgstr "0100 Ñ 060 м 060 Ñ+.030 кадÑов| .999000999"
#. * TV frame rate (used for American / Japananese TV
#: widgets/TimeTextCtrl.cpp:348
msgid "NTSC frames"
-msgstr "ÐадÑÑ NTSC"
+msgstr "кадÑÑ NTSC"
#. i18n-hint: Format string for displaying time in frames with NTSC frames.
#. * Translate 'frames' and leave the rest alone. That really is the frame
@@ -9306,7 +9894,7 @@ msgstr "0100 Ñ 060 м 060 Ñ+.75 кадÑов"
#. * Audio frame rate (75 frames per second)
#: widgets/TimeTextCtrl.cpp:377
msgid "CDDA frames (75 fps)"
-msgstr "ÐÑбоÑок CDDA (75 fps)"
+msgstr "вÑбоÑки CDDA (75 fps)"
#. i18n-hint: Format string for displaying time in frames with CD Audio
#. * frames. Translate 'frames' and leave the rest alone
@@ -9318,8 +9906,8 @@ msgstr "01000,01000 кадÑов|75"
msgid "Use right mouse button or context key to change format"
msgstr ""
-#: widgets/TimeTextCtrl.cpp:1485
-msgid "Time Control"
+#: widgets/TimeTextCtrl.cpp:1525
+msgid "centiseconds"
msgstr ""
#: widgets/Warning.cpp:64
@@ -9341,3 +9929,15 @@ msgstr "ÐÑибка: %hs в ÑÑÑоке %lu"
msgid "Could not load file: \"%s\""
msgstr "Ðе ÑдалоÑÑ Ð·Ð°Ð³ÑÑзиÑÑ Ñайл: \"%s\""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr "ÐÑибка пÑи закÑÑÑии Ñайла"
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr "ÐÑибка запиÑи в Ñайл"
+
diff --git a/locale/sk.po b/locale/sk.po
index 911ba52..eb09d7b 100644
--- a/locale/sk.po
+++ b/locale/sk.po
@@ -1,885 +1,999 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL at ADDRESS>, YEAR.
+# Copyright (C) YEAR Audacity Development Team
+# This file is distributed under the same license as Audacity.
+# Audacity Team <audacity-translation at lists.sourceforge.net>, YEAR.
#
msgid ""
-msgstr "Project-Id-Version: Audacity\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2005-10-14 09:03+0200\n"
-"PO-Revision-Date: 2006-02-02 16:58+0100\n"
-"Last-Translator: \n"
-"Language-Team: \n"
+msgstr ""
+"Project-Id-Version: Audacity 1.3.8\n"
+"Report-Msgid-Bugs-To: audacity-translation at lists.sourceforge.net\n"
+"POT-Creation-Date: 2009-02-15 17:27+0000\n"
+"PO-Revision-Date: 2009-03-22 20:15+0100\n"
+"Last-Translator: matrin veselovský <martinveselovský@post.sk>\n"
+"Language-Team: SK <martinveselovsky at centrum.sk>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Poedit-Language: Slovak\n"
"X-Poedit-Country: SLOVAKIA\n"
-"X-Poedit-Bookmarks: 763,-1,-1,-1,-1,-1,-1,-1,-1,-1\n"
+"Plural-Forms: nplurals=3; plural= (n==1) ? 1 : (n>=2 && n<=4) ? 2 : 0;\n"
-#: ../src/Menus.cpp:529
+#: AboutDialog.cpp:143
+#: AudacityApp.cpp:789
+#: Menus.cpp:953
msgid "&About Audacity..."
msgstr "O programe &Audacity..."
-#. i18n-hint: Rather than a literal translation, consider adding the
-#. appropriate suffix or prefix to create a word meaning 'something which
-#. has Audacity'
-#: AboutDialog.cpp:340 AboutDialog.cpp:371 SplashDialog.cpp:111
+#: AboutDialog.cpp:157
msgid "OK... Audacious!"
-msgstr ""
+msgstr "OK...Pekne!"
#: AboutDialog.cpp:175
msgid "Audacity is a free program written by a team of volunteer <a href=\"http://audacity.sourceforge.net/community/developers\">developers</a> around the world. We are grateful to <a href=\"http://sourceforge.net\">SourceForge.net</a> for our project hosting. Audacity is available for Windows 98 and later, Mac OS X, Linux and other Unix-like operating systems. Older versions of Audacity are available for Mac OS 9."
-msgstr ""
+msgstr "Audacity je slobodný program, ktorý napÃsal tÃm dobrovoľnÃkov <a href=\"http://audacity.sourceforge.net/community/developers\"> vývojárov </a> z celého sveta. Sme vÄaÄnà <a href=\"http://sourceforge.net\"> SourceForge.net </a> za hosting nášho projektu. Audacity možno použÃvaÅ¥ s Windows 98 a novÅ¡Ãmi, Mac OS X, Linuxom a ostatnými Unix operaÄnými systémami. StarÅ¡ie verzie Audacity možno použÃvaÅ¥ na Mac OS 9."
#: AboutDialog.cpp:179
msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
-msgstr ""
+msgstr "Toto je beta verzia programu. Môže obsahovaÅ¥ chyby a nedokonÄené vlastnosti. Sme závislà na vaÅ¡ej spätnej väzbe: poÅ¡lite hlásenie chýb a žiadosti o funkciu na <b> feedback at audacityteam.org </b>. Pre pomoc s použÃvanÃm Audacity, navÅ¡tÃvte naÅ¡e <a href=\"http://audacityteam.org/forum/\"> fórum </a>."
#: AboutDialog.cpp:182
msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
-msgstr ""
+msgstr "Toto je stabilné, dokonÄené vydanie programu. Pokiaľ vÅ¡ak nájdete chybu, alebo máte pripomienku pre nás, prosÃm napiÅ¡te na <b>feedback at audacityteam.org</b>. Pre pomoc s použÃvanÃm Audacity, navÅ¡tÃvte naÅ¡e <a href=\"http://audacityteam.org/forum/\"> fórum </a>."
-# i18n-hint: The translation of "translator_credits" will appear
-# in the credits in the About Audacity window. Use this to add
-# your own name(s) to the credits.
-# For example: "English translation by Dominic Mazzoni."
#. i18n-hint: The translation of "translator_credits" will appear
-#: ../src/AboutDialog.cpp:127
-#: ../src/AboutDialog.cpp:129
+#. in the credits in the About Audacity window. Use this to add
+#. your own name(s) to the credits.
+#.
+#. For example: "English translation by Dominic Mazzoni."
+#.
+#: AboutDialog.cpp:192
+#: AboutDialog.cpp:194
msgid "translator_credits"
-msgstr "Slovenský preklad: Jozef Kundlák ml."
+msgstr "Slovenský preklad: Martin Veselovský. Ak nájdete chyby v preklade oznámte to na<b> audacity_sk.centrum.sk</b>"
#: AboutDialog.cpp:207
msgid "A Free Digital Audio Editor<br>"
-msgstr ""
+msgstr "Voľný digitálny audio editor<br>"
-#: ../src/AboutDialog.cpp:154
+#: AboutDialog.cpp:211
msgid "Credits"
msgstr "Credits - zúÄastnenà ľudia"
-#: AboutDialog.cpp:256
+#: AboutDialog.cpp:215
#, c-format
msgid "Audacity %s Development Team"
-msgstr ""
+msgstr "Vývojový tÃm Audacity %s"
-#: AboutDialog.cpp:261
+#: AboutDialog.cpp:220
#, c-format
msgid "Audacity %s Support Team"
-msgstr ""
+msgstr "TÃm podpory Audacity %s"
-#: AboutDialog.cpp:266
+#: AboutDialog.cpp:225
msgid "Emeritus Developers"
-msgstr ""
+msgstr "Bývalà vývojari"
-#: AboutDialog.cpp:271
+#: AboutDialog.cpp:230
msgid "Other Emeritus Team Members"
-msgstr ""
+msgstr "Äalšà bývalà Älenovia tÃmu"
-#: AboutDialog.cpp:276
+#: AboutDialog.cpp:235
msgid "Other Contributors"
-msgstr ""
+msgstr "Äalšà prispievatelia"
-#: AboutDialog.cpp:281
+#: AboutDialog.cpp:240
msgid "Audacity is based on code from the following projects:"
-msgstr ""
+msgstr "Audacity je založená na programovom kóde týchto projektov:"
-#: ../src/AboutDialog.cpp:237
+#: AboutDialog.cpp:245
msgid "Special thanks:"
msgstr "Zvláštne poÄakovanie:"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
-msgstr ""
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgstr "<b> Audacity® </b> softvér je copyright © 1999-2009 Audacity TÃmu. <br> Meno <b> Audacity®</b> je registrovaná ochranná známka spoloÄnosti Dominica Mazzoniho."
-#: AboutDialog.cpp:320
+#: AboutDialog.cpp:258
msgid "Audacity"
-msgstr ""
+msgstr "Audacity"
#. i18n-hint: Information about when audacity was compiled
-#: AboutDialog.cpp:304 AboutDialog.cpp:317 AboutDialog.cpp:473
+#: AboutDialog.cpp:304
+#: AboutDialog.cpp:317
+#: AboutDialog.cpp:473
msgid "Build Information"
-msgstr ""
+msgstr "Informácie o vytvorenÃ"
-#: ../src/effects/AvcCompressor.cpp:652
+#: AboutDialog.cpp:310
+#: effects/AvcCompressor.cpp:674
msgid "Enabled"
msgstr "Povolené"
-#: AboutDialog.cpp:148
+#: AboutDialog.cpp:311
msgid "Disabled"
-msgstr ""
+msgstr "Zakázané"
#: AboutDialog.cpp:321
msgid "File Format Support"
-msgstr ""
+msgstr "Podporované formáty súborov"
#. i18n-hint: This is what the library (libmad) does - imports MP3 files
-#: AboutDialog.cpp:331 AboutDialog.cpp:333
+#: AboutDialog.cpp:331
+#: AboutDialog.cpp:333
msgid "MP3 Importing"
-msgstr ""
+msgstr "Importovať MP3"
-#: AboutDialog.cpp:340 AboutDialog.cpp:343
+#: AboutDialog.cpp:340
+#: AboutDialog.cpp:343
msgid "Ogg Vorbis Import and Export"
-msgstr ""
+msgstr "Importovať a exportovať Ogg Vorbis"
-#: AboutDialog.cpp:347 AboutDialog.cpp:350
+#: AboutDialog.cpp:347
+#: AboutDialog.cpp:350
msgid "ID3 tag support"
-msgstr ""
+msgstr "Podpora pre ID3 tágy"
-#: AboutDialog.cpp:357 AboutDialog.cpp:360
+#: AboutDialog.cpp:357
+#: AboutDialog.cpp:360
msgid "FLAC import and export"
-msgstr ""
+msgstr "Importovať a exportovať FLAC"
-#: AboutDialog.cpp:365 AboutDialog.cpp:368
+#: AboutDialog.cpp:365
+#: AboutDialog.cpp:368
msgid "MP2 export"
-msgstr ""
+msgstr "Exportovať MP2"
-#: AboutDialog.cpp:373 AboutDialog.cpp:376
+#: AboutDialog.cpp:373
+#: AboutDialog.cpp:376
msgid "Import via QuickTime"
-msgstr ""
+msgstr "Importovať cez QuickTime"
#. i18n-hint: Libraries that are essential to audacity
#: AboutDialog.cpp:383
msgid "Core Libraries"
-msgstr ""
+msgstr "Základné knižnice"
-#: AboutDialog.cpp:389 AboutDialog.cpp:392 AboutDialog.cpp:395
+#: AboutDialog.cpp:389
+#: AboutDialog.cpp:392
+#: AboutDialog.cpp:395
#: AboutDialog.cpp:397
msgid "Sample rate conversion"
-msgstr ""
+msgstr "PrevodnÃk vzorkovacej frekvencie"
-#: AboutDialog.cpp:402 AboutDialog.cpp:405
+#: AboutDialog.cpp:402
+#: AboutDialog.cpp:405
msgid "Audio playback and recording"
-msgstr ""
+msgstr "Prehrávanie a záznam zvuku"
#: AboutDialog.cpp:418
msgid "Features"
-msgstr ""
-
-#: AboutDialog.cpp:422 AboutDialog.cpp:425 AboutDialog.cpp:430
-#: AboutDialog.cpp:433 AboutDialog.cpp:438 AboutDialog.cpp:441
-#: AboutDialog.cpp:446 AboutDialog.cpp:449
+msgstr "Funkcie"
+
+#: AboutDialog.cpp:422
+#: AboutDialog.cpp:425
+#: AboutDialog.cpp:430
+#: AboutDialog.cpp:433
+#: AboutDialog.cpp:438
+#: AboutDialog.cpp:441
+#: AboutDialog.cpp:446
+#: AboutDialog.cpp:449
msgid "Plug-in support"
-msgstr ""
+msgstr "Podpora zásuvných modulov"
-#: AboutDialog.cpp:454 AboutDialog.cpp:457
+#: AboutDialog.cpp:454
+#: AboutDialog.cpp:457
msgid "Sound card mixer support"
-msgstr ""
+msgstr "Podpora mixéra zvukovej karty"
-#: AboutDialog.cpp:462 AboutDialog.cpp:465
+#: AboutDialog.cpp:462
+#: AboutDialog.cpp:465
msgid "Pitch and Tempo Change support"
-msgstr ""
+msgstr "Podpora pre zmenu ladenia a tempa"
-#: AboutDialog.cpp:204
-#, fuzzy
+#: AboutDialog.cpp:477
msgid "Program build date: "
-msgstr "Dátum zostavenia programu (build):"
+msgstr "Dátum vytvorenia programu:"
-#: AboutDialog.cpp:480 AboutDialog.cpp:482
+#: AboutDialog.cpp:480
+#: AboutDialog.cpp:482
msgid "Build type:"
-msgstr ""
+msgstr "Druh vytvorenia:"
#: AboutDialog.cpp:480
msgid "Debug build"
-msgstr ""
+msgstr "Upravené vydanie"
#: AboutDialog.cpp:482
msgid "Release build"
-msgstr ""
+msgstr "Uvoľnené vydanie"
#. i18n-hint: The directory audacity is installed into (on *nix systems)
#: AboutDialog.cpp:487
msgid "Installation Prefix: "
-msgstr ""
+msgstr "InÅ¡talaÄný prefix:"
-#: AboutDialog.cpp:209
+#: AboutDialog.cpp:491
msgid "Settings folder: "
-msgstr ""
+msgstr "Nastavenie adresára:"
-#: AboutDialog.cpp:388
+#: AboutDialog.cpp:506
msgid "GPL License"
-msgstr ""
+msgstr "GPL Licencia"
-#: ../src/AudacityApp.cpp:304
-#: ../src/Project.cpp:1770
+#: AudacityApp.cpp:498
+#: Project.cpp:1948
#, c-format
msgid "%s is already open in another window."
msgstr "%s je už otvorený v inom okne."
-#: ../src/AudacityApp.cpp:306
-#: ../src/Project.cpp:1772
-#: ../src/Project.cpp:1843
-#: ../src/Project.cpp:1894
-#: ../src/Project.cpp:1905
-#: ../src/Project.cpp:1943
+#: AudacityApp.cpp:500
+#: Project.cpp:1950
+#: Project.cpp:2055
+#: Project.cpp:2199
+#: Project.cpp:2336
msgid "Error opening project"
msgstr "Chyba pri otváranà projektu"
-#: ../src/AudacityApp.cpp:338
+#: AudacityApp.cpp:532
#, c-format
-msgid "%s does not exist and could not be opened.\n"
+msgid ""
+"%s does not exist and could not be opened.\n"
"\n"
"It has been removed from the history list."
-msgstr "%s neexistuje, preto nemôže byť otvorený.\n"
+msgstr ""
+"%s neexistuje, preto nemôže byť otvorený.\n"
"\n"
"Záznam bol odstránený zo zoznamu histórie."
-#: ../src/AudacityApp.cpp:367
+#: AudacityApp.cpp:634
msgid "Master Gain Control"
msgstr "Hlavné ovládanie zisku"
-#: ../src/AudacityApp.cpp:368
+#: AudacityApp.cpp:635
msgid "Input Meter"
msgstr "MeraÄ vstupu"
-#: ../src/AudacityApp.cpp:369
+#: AudacityApp.cpp:636
msgid "Output Meter"
msgstr "MeraÄ výstupu"
#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
-#: AudacityApp.cpp:534 Menus.cpp:575
+#: AudacityApp.cpp:791
msgid "&Preferences...\tCtrl+,"
-msgstr ""
+msgstr "&Predvoľby...\tCtrl+,"
-#: ../src/AudacityApp.cpp:626
-#: ../src/AudacityApp.cpp:696
+#: AudacityApp.cpp:878
+#: AudacityApp.cpp:955
#, c-format
msgid "Using block size of %ld\n"
msgstr "PoužÃvam veľkosÅ¥ bloku %ld\n"
-#: ../src/AudacityApp.cpp:641
-#: ../src/AudacityApp.cpp:711
+#: AudacityApp.cpp:900
+#: AudacityApp.cpp:970
#, c-format
msgid "Unknown command line option: %s\n"
msgstr "Neznáma voľba riadkového prÃkazu: %s\n"
-#: ../src/AudacityApp.cpp:773
-msgid "Audacity could not find a place to store temporary files.\n"
+#: AudacityApp.cpp:1104
+msgid ""
+"Audacity could not find a place to store temporary files.\n"
"Please enter an appropriate directory in the preferences dialog."
-msgstr "Audacity nemôže nájsÅ¥ umiestnenie pre doÄasné súbory \n"
+msgstr ""
+"Audacity nemôže nájsÅ¥ umiestnenie pre doÄasné súbory.\n"
"ProsÃm zadajte správny adresár v dialógu pre nastavenia."
-#: AudacityApp.cpp:845
-#, fuzzy
+#: AudacityApp.cpp:1110
msgid "Audacity is now going to exit. Please launch Audacity again to use the new temporary directory."
-msgstr "Audacity sa teraz ukonÄÃ. Aby sa použil nový doÄasný adresár, prosÃm spustite Audacity znovu."
+msgstr "Audacity sa vypÃna. Aby sa použil nový doÄasný adresár, prosÃm spuste Audacity znovu."
-#: AudacityApp.cpp:877
-msgid "Running two copies of Audacity simultaneously may cause\n"
+#: AudacityApp.cpp:1142
+msgid ""
+"Running two copies of Audacity simultaneously may cause\n"
"data loss or cause your system to crash.\n"
"\n"
msgstr ""
+"SúÄasné spustené dve kópie Audacity môžu zaprÃÄiniÅ¥\n"
+"stratu dát alebo pád vašeho systému.\n"
+"\n"
-#: AudacityApp.cpp:884
-msgid "Audacity was not able to lock the temporary files directory.\n"
+#: AudacityApp.cpp:1149
+msgid ""
+"Audacity was not able to lock the temporary files directory.\n"
"This folder may be in use by another copy of Audacity.\n"
msgstr ""
+"Audacity nemôže nájsť adresár pre pracovné súbory.\n"
+"Je možné, že tento adresár práve použÃva iná kópia Audacity.\n"
-#: AudacityApp.cpp:886
+#: AudacityApp.cpp:1151
msgid "Do you still want to start Audacity?"
-msgstr ""
+msgstr "SkutoÄne chcete spustiÅ¥ Audacity?"
-#: ../src/AudacityApp.cpp:829
+#: AudacityApp.cpp:1153
msgid "Error locking temporary folder"
msgstr "Chyba pri zamykanà doÄasného adresára"
-#: AudacityApp.cpp:900
+#: AudacityApp.cpp:1191
msgid "The system has detected that another copy of Audacity is running.\n"
-msgstr ""
+msgstr "Systém rozpoznal ÄalÅ¡iu spustenú kópiu Audacity.\n"
-#: AudacityApp.cpp:902
-msgid "Use the New or Open commands in the currently running Audacity\n"
+#: AudacityApp.cpp:1193
+msgid ""
+"Use the New or Open commands in the currently running Audacity\n"
"process to open multiple projects simultaneously.\n"
msgstr ""
+"Viac projektov naraz je možné otvoriÅ¥ pomocou prÃkazu Súbor-Nový\n"
+"alebo Otvoriť v práve spustenom Audacity.\n"
-#: ../src/AudacityApp.cpp:846
+#: AudacityApp.cpp:1194
msgid "Audacity is already running"
msgstr "Audacity je už spustené"
-#: AudacityApp.cpp:1134
+#: AudacityApp.cpp:1211
msgid "Command-line options supported:"
-msgstr ""
+msgstr "Podporované riadkové prÃkazy:"
#. i18n-hint: '-help' is the option and needs to stay in
#. * English. This displays a list of available options
-#: AudacityApp.cpp:1137
+#: AudacityApp.cpp:1214
msgid "\t-help (this message)"
-msgstr ""
+msgstr "\t-napovedá (táto správa)"
#. i18n-hint '-version' needs to stay in English.
-#: AudacityApp.cpp:1139
+#: AudacityApp.cpp:1216
msgid "\t-version (display Audacity version)"
-msgstr ""
+msgstr "\t-verzia (zobraziť verziu Audacity)"
#. i18n-hint '-test' is the option and needs to stay in
#. * English. This runs a set of automatic tests on audacity
#. * itself
-#: AudacityApp.cpp:1143
+#: AudacityApp.cpp:1220
msgid "\t-test (run self diagnostics)"
-msgstr ""
+msgstr "\t-test (spustiť vlastnú diagnostiku)"
#. i18n-hint '-blocksize' is the option and needs to stay in
#. * English. 'nnn' is any integer number. This controls the
#. * size pieces that audacity uses when writing files to the
#. * disk
-#: AudacityApp.cpp:1148
+#: AudacityApp.cpp:1225
msgid "\t-blocksize nnn (set max disk block size in bytes)"
-msgstr ""
+msgstr "\t-veľkosť bloku nnn (nastaviť maximálnu veľkosť diskového bloku v bytoch)"
-#: AudacityApp.cpp:1149
+#: AudacityApp.cpp:1226
msgid "In addition, specify the name of an audio file or Audacity project to open it."
-msgstr ""
+msgstr "UveÄte tiež meno zvukového súboru alebo projektu Audacity, ktorý sa ma otvoriÅ¥."
-#: ../src/AudacityApp.cpp:1099
-msgid "Audacity project (.AUP) files are not currently \n"
+#: AudacityApp.cpp:1503
+msgid ""
+"Audacity project (.AUP) files are not currently \n"
"associated with Audacity. \n"
"\n"
"Associate them, so they open on double-click?"
-msgstr "Projektové súbory (.AUP) nie sú \n"
+msgstr ""
+"Projektové súbory (.AUP) nie sú \n"
"asociované s Audacity. \n"
"\n"
"Vykonať asociáciu, aby ich bolo možné otvárať dvojklikom?"
-#: ../src/AudacityApp.cpp:1100
+#: AudacityApp.cpp:1504
msgid "Audacity Project Files"
msgstr "Projektové súbory Audacity"
-#: AudioIO.cpp:214
+#: AudioIO.cpp:268
msgid "Could not find any audio devices.\n"
-msgstr ""
+msgstr "Nedá sa nájsť žiadne zvukové zariadenie.\n"
-#: ../src/AudioIO.cpp:167
-msgid "You will not be able to play or record audio.\n"
+#: AudioIO.cpp:269
+msgid ""
+"You will not be able to play or record audio.\n"
"\n"
-msgstr "Nebudete môcť prehrávať alebo nahrávať zvuk.\n"
+msgstr ""
+"Nebudete môcť prehrávať alebo nahrávať zvuk.\n"
"\n"
-#: ../src/AudioIO.cpp:170
+#: AudioIO.cpp:272
msgid "Error: "
msgstr "Chyba:"
-#: ../src/AudioIO.cpp:173
+#: AudioIO.cpp:275
msgid "Error Initializing Audio"
-msgstr "Chyba pri inicializácii zvuku"
+msgstr "Chyba pri inicializácii Audio"
-#: AudioIO.cpp:1236
-msgid "Latency problem"
-msgstr ""
-
-#: AudioIO.cpp:1236
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
+#: AudioIO.cpp:1389
+msgid ""
+"Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
"Audacity has brought it back to start at zero.\n"
"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
msgstr ""
+"Nastavenie opravy latencie spôsobilo, že nahrávané audio je skryté pred zaÄiatoÄným bodom.\n"
+"Audacity ho preniesol späť na Å¡tart na zaÄiatoÄný bod.\n"
+"Možno budete musieÅ¥ použiÅ¥ Nástroj na posun Äasu (<---> alebo F5) na presunutie stopy na správne miesto."
-#: AutoRecovery.cpp:40
+#: AudioIO.cpp:1389
+msgid "Latency problem"
+msgstr "Problém latencie"
+
+#: AutoRecovery.cpp:54
msgid "Automatic Crash Recovery"
-msgstr ""
+msgstr "Automatická oprava pádu"
-#: AutoRecovery.cpp:59
-msgid "Some projects were not saved properly the last time Audacity was run.\n"
+#: AutoRecovery.cpp:73
+msgid ""
+"Some projects were not saved properly the last time Audacity was run.\n"
"Fortunately, the following projects can automatically be recovered:"
msgstr ""
+"Pri poslednom spustenà Audacity niektoré projekty neboli správne uložené.\n"
+"Nasledujúce projekty je možné automaticky obnoviť:"
-#: AutoRecovery.cpp:61
+#: AutoRecovery.cpp:75
msgid "Recoverable projects"
-msgstr ""
+msgstr "Obnoviteľné projekty"
-#: AutoRecovery.cpp:64
+#: AutoRecovery.cpp:78
msgid "Name"
-msgstr ""
+msgstr "Názov"
-#: AutoRecovery.cpp:70
+#: AutoRecovery.cpp:84
msgid "Recovering a project will not change any files on disk before you save it."
-msgstr ""
+msgstr "ObnovenÃm projektu nedôjde k žiadnym zmenám súborov na disku, pokiaľ ich neuložÃte.\t \t"
-#: AutoRecovery.cpp:74
+#: AutoRecovery.cpp:88
msgid "Quit Audacity"
-msgstr ""
+msgstr "UkonÄiÅ¥ Audacity"
#: AutoRecovery.cpp:89
msgid "Do Not Recover"
-msgstr ""
+msgstr "Neobnovovať"
#: AutoRecovery.cpp:90
msgid "Recover Projects"
-msgstr ""
+msgstr "Obnoviť projekty"
#: AutoRecovery.cpp:127
-msgid "Are you sure you don't want to recover any projects?\n"
+msgid ""
+"Are you sure you don't want to recover any projects?\n"
"They can't be recovered later."
msgstr ""
+"SkutoÄne nechcete opraviÅ¥ žiadne projekty?\n"
+"Neskoršie už oprava nebude možná."
#: AutoRecovery.cpp:128
msgid "Confirm?"
-msgstr ""
+msgstr "Potvrdiť?"
-#: AutoRecovery.cpp:132 AutoRecovery.cpp:169
+#: AutoRecovery.cpp:146
+#: AutoRecovery.cpp:183
msgid "Could not enumerate files in auto save directory"
-msgstr ""
-
-#: ../src/ControlToolBar.cpp:723
-#: ../src/ControlToolBar.cpp:884
-#: ../src/effects/Effect.cpp:331
-#: ../src/prefs/DirectoriesPrefs.cpp:204
+msgstr "Nebolo možné zistiÅ¥ poÄet súborov v záložnom adresári"
+
+#: AutoRecovery.cpp:147
+#: AutoRecovery.cpp:184
+#: Menus.cpp:3096
+#: Menus.cpp:3108
+#: Menus.cpp:5238
+#: Project.cpp:2158
+#: Project.cpp:3790
+#: Project.cpp:3869
+#: TrackPanel.cpp:6392
+#: WaveTrack.cpp:827
+#: WaveTrack.cpp:846
+#: WaveTrack.cpp:1864
+#: effects/Contrast.cpp:127
+#: effects/Contrast.cpp:137
+#: effects/Effect.cpp:515
+#: export/ExportFFmpeg.cpp:641
+#: export/ExportMP2.cpp:231
+#: prefs/DirectoriesPrefs.cpp:189
+#: prefs/KeyConfigPrefs.cpp:260
+#: toolbars/ControlToolBar.cpp:542
+#: toolbars/ControlToolBar.cpp:871
msgid "Error"
msgstr "Chyba"
-#: BatchCommandDialog.cpp:56 BatchCommandDialog.cpp:60
-#: BatchCommandDialog.cpp:61
+#: BatchCommandDialog.cpp:57
+#: BatchCommandDialog.cpp:62
+#: BatchCommandDialog.cpp:63
msgid "Select Command"
-msgstr ""
+msgstr "Zvoľte prÃkaz"
-#: BatchCommandDialog.cpp:80 BatchProcessDialog.cpp:451
-#: prefs/KeyConfigPrefs.cpp:140
+#: BatchCommandDialog.cpp:82
+#: BatchProcessDialog.cpp:454
+#: prefs/KeyConfigPrefs.cpp:158
msgid "&Command"
-msgstr ""
+msgstr "&PrÃkaz"
-#: BatchCommandDialog.cpp:82
+#: BatchCommandDialog.cpp:84
msgid "&Edit Parameters"
-msgstr ""
+msgstr "&Upraviť parametre"
-#: BatchCommandDialog.cpp:89 BatchProcessDialog.cpp:452
+#: BatchCommandDialog.cpp:91
+#: BatchProcessDialog.cpp:455
msgid "&Parameters"
-msgstr ""
+msgstr "&Parametre"
-#: BatchCommandDialog.cpp:93
+#: BatchCommandDialog.cpp:96
msgid "C&hoose command"
-msgstr ""
+msgstr "Z&voliÅ¥ prÃkaz"
#: BatchCommands.cpp:456
msgid "Stereo to Mono Effect not found"
-msgstr ""
+msgstr "Efekt Stereo na mono nebol nájdený"
-#: ../src/export/Export.cpp:366
+#: BatchCommands.cpp:476
msgid "Ogg Vorbis support is not included in this build of Audacity"
-msgstr "V tejto verzii Audacity nie je podpora pre Ogg Vorbis."
+msgstr "V tomto zostavenà Audacity nie je podpora pre Ogg Vorbis."
-#: BatchCommands.cpp:509
+#: BatchCommands.cpp:488
msgid "FLAC support is not included in this build of Audacity"
-msgstr ""
+msgstr "V tomto zostavenà Audacity nie je podpora pre FLAC"
-#: BatchCommands.cpp:513
+#: BatchCommands.cpp:492
#, c-format
msgid "Command %s not implemented yet"
-msgstr ""
+msgstr "PrÃkaz %s zatiaľ nie je implementovaný"
-#: BatchCommands.cpp:529
+#: BatchCommands.cpp:508
#, c-format
-msgid "Could not set parameters of effect %s\n"
+msgid ""
+"Could not set parameters of effect %s\n"
" to %s."
msgstr ""
+"Nedajú sa nastaviť parametre efektu %s\n"
+" na %s."
-#: BatchCommands.cpp:583
+#: BatchCommands.cpp:561
#, c-format
msgid "Your batch command of %s was not recognised."
-msgstr ""
+msgstr "Váš dávkový prÃkaz %s nebol uznaný. "
-#: BatchCommands.cpp:674
+#: BatchCommands.cpp:652
#, c-format
-msgid "Apply %s with parameter(s)\n"
+msgid ""
+"Apply %s with parameter(s)\n"
"\n"
"%s"
msgstr ""
+"Použiť %s s parametrami\n"
+"\n"
+"%s"
-#: BatchCommands.cpp:675 BatchCommands.cpp:680
+#: BatchCommands.cpp:653
+#: BatchCommands.cpp:658
msgid "Test Mode"
-msgstr ""
+msgstr "Testovacà režim"
-#: BatchCommands.cpp:679
+#: BatchCommands.cpp:657
#, c-format
msgid "Apply %s"
-msgstr ""
+msgstr "Použiť %s"
-#: BatchProcessDialog.cpp:58 BatchProcessDialog.cpp:68
-#: BatchProcessDialog.cpp:69
+#: BatchProcessDialog.cpp:60
+#: BatchProcessDialog.cpp:70
+#: BatchProcessDialog.cpp:71
msgid "Apply Chain"
-msgstr ""
+msgstr "PoužiÅ¥ sadu prÃkazov"
#: BatchProcessDialog.cpp:67
msgid "CleanSpeech Batch Processing"
-msgstr ""
+msgstr "CleanSpeech dávkové spracovanie"
-#: BatchProcessDialog.cpp:92
+#: BatchProcessDialog.cpp:94
msgid "&Select chain"
-msgstr ""
+msgstr "&VybraÅ¥ sadu prÃkazov"
-#: BatchProcessDialog.cpp:97
+#: BatchProcessDialog.cpp:99
msgid "Chain"
-msgstr ""
+msgstr "Sada prÃkazov"
-#: BatchProcessDialog.cpp:104
+#: BatchProcessDialog.cpp:106
msgid "Apply to Current &Project"
-msgstr ""
+msgstr "PoužiÅ¥ na súÄasný &Projekt"
-#: BatchProcessDialog.cpp:105
+#: BatchProcessDialog.cpp:107
msgid "Apply to &Files..."
-msgstr ""
-
-#: BatchProcessDialog.cpp:106 BatchProcessDialog.cpp:245 LabelDialog.cpp:134
-#: LabelDialog.cpp:138 UploadDialog.cpp:178 effects/Amplify.cpp:209
-#: effects/AutoDuck.cpp:528 effects/AutoDuck.cpp:532
-#: effects/AvcCompressor.cpp:732 effects/ChangeLength.cpp:184
-#: effects/ChangePitch.cpp:395 effects/ChangeSpeed.cpp:393
-#: effects/ChangeTempo.cpp:297 effects/ClickRemoval.cpp:429
-#: effects/Compressor.cpp:516 effects/Effect.cpp:387 effects/Effect.cpp:393
-#: effects/Equalization.cpp:1166 effects/Leveller.cpp:266
-#: effects/Normalize.cpp:353 effects/Phaser.cpp:600 effects/Repeat.cpp:271
-#: effects/SpikeCleaner.cpp:188 effects/TruncSilence.cpp:278
-#: effects/VST/VSTEffect.cpp:95 effects/VST/VSTEffect.cpp:452
-#: effects/Wahwah.cpp:587 effects/audiounits/AudioUnitEffect.cpp:862
-#: effects/ladspa/LadspaEffect.cpp:589 effects/nyquist/Nyquist.cpp:823
-#: effects/nyquist/Nyquist.cpp:987 export/Export.cpp:788
-#: export/ExportMultiple.cpp:844 import/ImportRaw.cpp:443
-#: prefs/FileFormatPrefs.cpp:407 prefs/PrefsDialog.cpp:169
+msgstr "Použiť na &Súbory..."
+
+#: BatchProcessDialog.cpp:108
+#: BatchProcessDialog.cpp:247
+#: UploadDialog.cpp:180
+#: effects/AvcCompressor.cpp:732
+#: effects/ChangeLength.cpp:183
+#: effects/SpikeCleaner.cpp:188
+#: effects/VST/VSTEffect.cpp:453
+#: effects/audiounits/AudioUnitEffect.cpp:887
msgid "&Cancel"
-msgstr ""
+msgstr "&Zrušiť"
-#: BatchProcessDialog.cpp:144 BatchProcessDialog.cpp:189
+#: BatchProcessDialog.cpp:146
+#: BatchProcessDialog.cpp:191
msgid "No chain selected"
-msgstr ""
+msgstr "Nie je vybraná sada"
-#: BatchProcessDialog.cpp:157
+#: BatchProcessDialog.cpp:159
#, c-format
msgid "Applying '%s' to current project"
-msgstr ""
+msgstr "Použité '%s' na súÄasný projekt"
-#: BatchProcessDialog.cpp:198
+#: BatchProcessDialog.cpp:200
msgid "Please save and close the current project first."
-msgstr ""
+msgstr "Najprv prosÃm uložte a uzavrite súÄasný projekt."
#: BatchProcessDialog.cpp:206
msgid "Select vocal file(s) for batch CleanSpeech Chain..."
-msgstr ""
+msgstr "Vybrať vokálny súbor(y) pre dávky CleanSpeech reťazca..."
-#: BatchProcessDialog.cpp:205
+#: BatchProcessDialog.cpp:207
msgid "Select file(s) for batch processing..."
-msgstr ""
+msgstr "Výber súbory pre dávkové spracovanie..."
#: BatchProcessDialog.cpp:209
msgid "Vocal files (*.wav;*.mp3)|*.wav;*.mp3|WAV files (*.wav)|*.wav|MP3 files (*.mp3)|*.mp3"
-msgstr ""
+msgstr "Vokálne súbory (*.wav;*.mp3)|*.wav;*.mp3|WAV súbory (*.wav)|*.wav|MP3 súbory (*.mp3)|*.mp3"
-#: BatchProcessDialog.cpp:208
+#: BatchProcessDialog.cpp:210
msgid "All files (*.*)|*.*|WAV files (*.wav)|*.wav|AIFF files (*.aif)|*.aif|AU files (*.au)|*.au|MP3 files (*.mp3)|*.mp3|Ogg Vorbis files (*.ogg)|*.ogg|FLAC files (*.flac)|*.flac"
-msgstr ""
+msgstr "Všetky súbory (*.*)|*.*|WAV súbory (*.wav)|*.wav|AIFF súbory (*.aif)|*.aif|AU súbory (*.au)|*.au|MP3 súbory (*.mp3)|*.mp3|Ogg Vorbis súbory (*.ogg)|*.ogg|FLAC súbory (*.flac)|*.flac"
-#: BatchProcessDialog.cpp:229
+#: BatchProcessDialog.cpp:231
msgid "Applying..."
-msgstr ""
+msgstr "Aplikuje sa..."
-#: BatchProcessDialog.cpp:239
+#: BatchProcessDialog.cpp:241
msgid "File"
-msgstr ""
+msgstr "Súbor"
-#: BatchProcessDialog.cpp:354 BatchProcessDialog.cpp:358
-#: BatchProcessDialog.cpp:359
+#: BatchProcessDialog.cpp:356
+#: BatchProcessDialog.cpp:360
+#: BatchProcessDialog.cpp:361
msgid "Edit Chains"
-msgstr ""
+msgstr "EditovaÅ¥ sady prÃkazov"
-#: BatchProcessDialog.cpp:414
+#: BatchProcessDialog.cpp:416
msgid "&Chains"
-msgstr ""
+msgstr "&Sady prÃkazov"
-#: BatchProcessDialog.cpp:433
+#: BatchProcessDialog.cpp:435
+#: Tags.cpp:813
msgid "&Add"
-msgstr ""
+msgstr "&Pridať"
-#: BatchProcessDialog.cpp:434 LabelDialog.cpp:126 TrackPanel.cpp:3925
+#: BatchProcessDialog.cpp:436
+#: LabelDialog.cpp:128
+#: Tags.cpp:814
+#: TrackPanel.cpp:4186
msgid "&Remove"
-msgstr ""
+msgstr "&Odstrániť"
-#: BatchProcessDialog.cpp:435
+#: BatchProcessDialog.cpp:437
msgid "Re&name"
-msgstr ""
+msgstr "Pre&menovať"
-#: BatchProcessDialog.cpp:441
+#: BatchProcessDialog.cpp:443
msgid "C&hain (Double-Click or press SPACE to edit)"
-msgstr ""
+msgstr "R&eÅ¥azec (Editujte dvojkliknutÃ, alebo stlaÄte medzernÃk)"
-#: BatchProcessDialog.cpp:450
-msgid "No"
-msgstr ""
+#. i18n-hint: This is the number of the command in the list
+#: BatchProcessDialog.cpp:453
+msgid "Num"
+msgstr "Num"
-#: BatchProcessDialog.cpp:456
+#: BatchProcessDialog.cpp:459
msgid "&Insert"
-msgstr ""
+msgstr "&Vložiť"
-#: BatchProcessDialog.cpp:457
+#: BatchProcessDialog.cpp:460
msgid "De&lete"
-msgstr ""
+msgstr "Zma&zať"
-#: BatchProcessDialog.cpp:458
+#: BatchProcessDialog.cpp:461
msgid "Move &Up"
-msgstr ""
+msgstr "Posunúť na&hor"
-#: BatchProcessDialog.cpp:459
+#: BatchProcessDialog.cpp:462
msgid "Move &Down"
-msgstr ""
+msgstr "Posunúť na&dol"
-#: BatchProcessDialog.cpp:460
+#: BatchProcessDialog.cpp:463
msgid "De&faults"
-msgstr ""
+msgstr "Pre&dvolené"
-#: BatchProcessDialog.cpp:504
+#: BatchProcessDialog.cpp:507
msgid "- END -"
-msgstr ""
+msgstr "- KONIEC -"
-#: BatchProcessDialog.cpp:531
+#: BatchProcessDialog.cpp:540
#, c-format
msgid "%s changed"
-msgstr ""
+msgstr "%s zmenené"
-#: BatchProcessDialog.cpp:532
+#: BatchProcessDialog.cpp:541
msgid "Do you want to save the changes?"
-msgstr ""
+msgstr "Chcete uložiť zmeny?"
-#: BatchProcessDialog.cpp:614
+#: BatchProcessDialog.cpp:623
msgid "Enter name of new chain"
-msgstr ""
+msgstr "Vložte názov novej sady"
-#: BatchProcessDialog.cpp:625
+#: BatchProcessDialog.cpp:634
msgid "Name must not be blank"
-msgstr ""
+msgstr "Názov nesmie byť prázdny"
-#: BatchProcessDialog.cpp:634
+#: BatchProcessDialog.cpp:643
#, c-format
msgid "Names may not contain '%c' and '%c'"
-msgstr ""
+msgstr "Názvy nesmú obsahovať '%c' a '%c'"
-#: BatchProcessDialog.cpp:664
+#: BatchProcessDialog.cpp:673
#, c-format
msgid "Are you sure you want to delete %s?"
-msgstr ""
+msgstr "SkutoÄne chcete zmazaÅ¥ %s?"
#: Dependencies.cpp:139
msgid "Removing Dependencies"
-msgstr ""
+msgstr "OdstraÅovanie závislostÃ"
#: Dependencies.cpp:140
msgid "Copying audio data into project..."
-msgstr ""
+msgstr "Do projektu sa kopÃrujú zvukové dáta..."
-#: Dependencies.cpp:219
-msgid "Your project currently depends on the presence of other files.\n"
+#: Dependencies.cpp:226
+msgid ""
+"Your project currently depends on the presence of other files.\n"
"Copy audio from the following files into your project to make it self-contained?\n"
"This will need more disc space but is safer."
msgstr ""
+"Váš projekt je teraz závislý na prÃtomnosti ÄalÅ¡Ãch súborov.\n"
+"Chcete prekopÃrovaÅ¥ zvukové dáta z následujúcich súborov do vášho projektu,\n"
+"aby bol nezávislý? Zaberie to viac miesta na disku, ale je to bezpeÄnejÅ¡ie."
-#: Dependencies.cpp:266
+#: Dependencies.cpp:273
msgid "Project depends on other audio files"
-msgstr ""
+msgstr "Projekt závisà na ÄalÅ¡Ãch zvukových súboroch"
-#: Dependencies.cpp:287
+#: Dependencies.cpp:294
msgid "Project Dependencies"
-msgstr ""
+msgstr "Závislosti projektu"
-#: Dependencies.cpp:290
+#: Dependencies.cpp:297
msgid "Audio file"
-msgstr ""
+msgstr "Audio súbor"
-#: Dependencies.cpp:292
+#: Dependencies.cpp:299
msgid "Disk space"
-msgstr ""
+msgstr "Miesto na disku"
-#: Dependencies.cpp:297
+#: Dependencies.cpp:304
msgid "Copy Selected Audio Into Project"
-msgstr ""
+msgstr "PrekopÃrovaÅ¥ vybrané zvukové dáta do projektu"
-#: Dependencies.cpp:304 Dependencies.cpp:413
+#: Dependencies.cpp:311
+#: Dependencies.cpp:417
msgid "Cancel Save"
-msgstr ""
+msgstr "Zrušiť ukladanie"
-#: Dependencies.cpp:306
+#: Dependencies.cpp:313
msgid "Do Not Copy Any Audio"
-msgstr ""
+msgstr "NekopÃrovaÅ¥ žiadne zvukové dáta"
-#: Dependencies.cpp:308
+#: Dependencies.cpp:315
msgid "Copy All Audio into Project (Safer)"
-msgstr ""
+msgstr "KopÃrovaÅ¥ vÅ¡etky zvukové dáta do projektu (bezpeÄnejÅ¡ie)"
-#: Dependencies.cpp:320 Dependencies.cpp:325
+#: Dependencies.cpp:324
+#: Dependencies.cpp:329
msgid "Ask me"
-msgstr ""
+msgstr "Spýtaj sa ma"
-#: Dependencies.cpp:318
+#: Dependencies.cpp:325
msgid "Always copy all audio (safest)"
-msgstr ""
+msgstr "Vždy kopÃrovaÅ¥ vÅ¡etky audio dáta (najbezpeÄnejÅ¡ie)"
-#: Dependencies.cpp:319
+#: Dependencies.cpp:326
msgid "Never copy any audio"
-msgstr ""
+msgstr "Nikdy nekopÃrovaÅ¥ audio"
-#: Dependencies.cpp:324
+#: Dependencies.cpp:328
msgid "Whenever a project depends on other files:"
-msgstr ""
+msgstr "KeÄ projekt závisà na iných súboroch:"
-#: Dependencies.cpp:412
+#: Dependencies.cpp:416
msgid "If you proceed, your project will not be saved to disk. Is this what you want?"
-msgstr ""
+msgstr "Ak budete pokraÄovaÅ¥, váš projekt nebude uložený na disk. To je to, Äo chcete?"
-#: Dependencies.cpp:452
+#: Dependencies.cpp:456
msgid "Your project is self-contained; it does not depend on any external audio files."
-msgstr ""
+msgstr "Váš projekt nie je závislý na žiadnych externých zvukových súboroch."
-#: Dependencies.cpp:453
+#: Dependencies.cpp:457
msgid "Dependency check"
-msgstr ""
+msgstr "Kontrola závislostÃ"
-#: DirManager.cpp:136
-#, fuzzy
-msgid "Warning: there is very little free disk space left on this volume.\n"
+#: DirManager.cpp:137
+msgid ""
+"Warning: there is very little free disk space left on this volume.\n"
"Please select another temporary directory in your preferences."
-msgstr "Varovanie: na tomto zväzku je veľmi málo diskového priestoru. ProsÃm zvoľte v nastaveniach iný doÄasný adresár."
+msgstr ""
+"Varovanie: na tomto disku je veľmi málo voľného miesta.\n"
+"ProsÃm zvoľte v nastaveniach iný doÄasný adresár."
-#: ../src/DirManager.cpp:157
+#: DirManager.cpp:223
+#: DirManager.cpp:254
+#: DirManager.cpp:337
msgid "Progress"
msgstr "Postup"
-#: DirManager.cpp:285
+#: DirManager.cpp:288
msgid "Cleaning up temporary files"
-msgstr ""
+msgstr "OdstraÅujú sa pracovné súbory"
-#: DirManager.cpp:333
+#: DirManager.cpp:338
msgid "Saving project data files"
-msgstr ""
+msgstr "Ukladajú sa dátové súbory"
-#: DirManager.cpp:406
+#: DirManager.cpp:410
msgid "Cleaning up cache directories"
-msgstr ""
+msgstr "OdstraÅujú sa adresáre z vyrovnávacej pamäte"
-#: DirManager.cpp:493
+#: DirManager.cpp:505
#, c-format
-msgid "Audacity found an orphaned blockfile %s! \n"
+msgid ""
+"Audacity found an orphaned blockfile %s! \n"
"Please consider saving and reloading the project to perform a complete project check.\n"
msgstr ""
+"Audacity našiel opustený blokový súbor %s! \n"
+"ProsÃm zvážte uloženie a nové otvorenie projektu. TÃm dôjde k celkovej kontrole projektu.\n"
-# i18n-hint: This is the pattern for filenames that are created
-# when a file needs to be backed up to a different name. For
-# example, mysong would become mysong-old1, mysong-old2, etc.
#. i18n-hint: This is the pattern for filenames that are created
-#: ../src/DirManager.cpp:627
+#. when a file needs to be backed up to a different name. For
+#. example, mysong would become mysong-old1, mysong-old2, etc.
+#: DirManager.cpp:1094
#, c-format
msgid "%s-old%d"
msgstr "%s-pov%d"
-#: DirManager.cpp:993
+#: DirManager.cpp:1102
msgid "Unable to open/create test file"
-msgstr ""
+msgstr "Nedá sa otvoriť/vytvoriť testovacà súbor"
-#: DirManager.cpp:1002
+#: DirManager.cpp:1111
#, c-format
msgid "Unable to remove '%s'"
-msgstr ""
+msgstr "Nedá sa odstrániť '%s'"
-#: ../src/DirManager.cpp:643
+#: DirManager.cpp:1116
#, c-format
msgid "Renamed file: %s\n"
msgstr "Premenovaný súbor: %s\n"
-#: DirManager.cpp:1051
+#: DirManager.cpp:1166
#, c-format
msgid "Unable to rename '%s' to '%s'"
-msgstr ""
+msgstr "Nedá sa premenovať z '%s' na '%s'"
#: DirManager.cpp:1183
#, c-format
msgid "Changed block %s to new alias name\n"
-msgstr ""
+msgstr "Zmenil blok %s na nový podobný názov \n"
-#: DirManager.cpp:1115 DirManager.cpp:1403
+#: DirManager.cpp:1249
+#: DirManager.cpp:1540
msgid "Inspecting project file data..."
-msgstr ""
+msgstr "Kontrolujú sa dáta projektu..."
-#: DirManager.cpp:1128
+#: DirManager.cpp:1265
#, c-format
msgid "Orphaned blockfile: (%s)"
-msgstr ""
+msgstr "Opustený blokový súbor: (%s)"
-#: DirManager.cpp:1153
+#: DirManager.cpp:1290
#, c-format
msgid "Missing alias file: (%s)"
-msgstr ""
+msgstr "Chýbajúci podobný súbor: (%s)"
-#: DirManager.cpp:1173
+#: DirManager.cpp:1310
#, c-format
msgid "Missing summary file: (%s.auf)"
-msgstr ""
+msgstr "Chýbajúci sumárny súbor: (%s.auf)"
-#: DirManager.cpp:1193
+#: DirManager.cpp:1330
#, c-format
msgid "Missing data file: (%s.au)"
-msgstr ""
+msgstr "Chýbajúci dátový súbor: (%s.au)"
-#: DirManager.cpp:1207
-msgid "Project check found inconsistencies inspecting the loaded project data;\n"
+#: DirManager.cpp:1344
+msgid ""
+"Project check found inconsistencies inspecting the loaded project data;\n"
"click 'Details' for a complete list of errors, or 'OK' to proceed to more options."
msgstr ""
+"V dátach projektu boli zistené nezrovnalosti. Nájdené chyby sa zobrazia,\n"
+"ak kliknete na 'Podrobnosti'. KliknutÃm na 'OK' sa dostanete k ÄalÅ¡Ãm možnostiam."
-#: DirManager.cpp:1219
+#: DirManager.cpp:1356
#, c-format
-msgid "Project check found %d orphaned blockfile[s]. These files are\n"
+msgid ""
+"Project check found %d orphaned blockfile[s]. These files are\n"
"unused and probably left over from a crash or some other bug.\n"
"They should be deleted to avoid disk contention."
msgstr ""
+"Pri kontrole projektu boli nájdené %d nevyužité blokové súbory ,\n"
+"ktoré vznikli pravdepodobne pri páde programu alebo nejakou chybou.\n"
+"Tieto súbory by mali byť odstránené, aby sa predišlo konfliktom."
-#: DirManager.cpp:1224
+#: DirManager.cpp:1361
msgid "Delete orphaned files [safe and recommended]"
-msgstr ""
+msgstr "ZmazaÅ¥ nevyužité súbory [bezpeÄné a doporuÄené]"
-#: DirManager.cpp:1225
+#: DirManager.cpp:1362
msgid "Continue without deleting; silently work around the extra files"
-msgstr ""
+msgstr "PokraÄovaÅ¥ bez zmazania a opatrne pracovaÅ¥ okolo extra súborov"
-#: DirManager.cpp:1226
+#: DirManager.cpp:1363
msgid "Close project immediately with no changes"
-msgstr ""
-
-#: ../src/widgets/Warning.cpp:45
+msgstr "Zavrieť projekt okamžite bez zmeny"
+
+#: DirManager.cpp:1365
+#: DirManager.cpp:1400
+#: DirManager.cpp:1446
+#: DirManager.cpp:1488
+#: export/Export.cpp:582
+#: export/Export.cpp:603
+#: export/Export.cpp:622
+#: widgets/Warning.cpp:55
msgid "Warning"
msgstr "Varovanie"
-#: DirManager.cpp:1254
+#: DirManager.cpp:1391
#, c-format
-msgid "Project check detected %d input file[s] being used in place\n"
+msgid ""
+"Project check detected %d input file[s] being used in place\n"
"('alias files') are now missing. There is no way for Audacity\n"
"to recover these files automatically; you may choose to\n"
"permanently fill in silence for the missing files, temporarily\n"
"fill in silence for this session only, or close the project now\n"
"and try to restore the missing files by hand."
msgstr ""
+"Kontrola projektu zistila, že chýba %d vstupný súbor,\n"
+"na ktorý odkazujú podobné súbory. Audacity nemá možnosť\n"
+"ich automaticky opraviÅ¥. Môžete zvoliÅ¥, Äi sa majú nahradiÅ¥\n"
+"tichom natrvalo, alebo iba doÄasne, alebo zavrieÅ¥ projekt\n"
+"a pokúsiÅ¥ sa chýbajúci súbor obnoviÅ¥ ruÄne."
-#: DirManager.cpp:1259
+#: DirManager.cpp:1396
msgid "Replace missing data with silence [permanent upon save]"
-msgstr ""
+msgstr "Nahradiť chýbajúce dáta tichom [po uloženà natrvalo]"
-#: DirManager.cpp:1260 DirManager.cpp:1348
+#: DirManager.cpp:1397
+#: DirManager.cpp:1485
msgid "Temporarily replace missing data with silence [this session only]"
-msgstr ""
+msgstr "DoÄasne nahradiÅ¥ chýbajúce údaje tichom [iba pre toto otvorenie]"
-#: DirManager.cpp:1261 DirManager.cpp:1307 DirManager.cpp:1349
+#: DirManager.cpp:1398
+#: DirManager.cpp:1444
+#: DirManager.cpp:1486
msgid "Close project immediately with no further changes"
-msgstr ""
+msgstr "ZavrieÅ¥ projekt okamžite bez ÄalÅ¡Ãch zmien"
-#: DirManager.cpp:1300
+#: DirManager.cpp:1437
#, c-format
-msgid "Project check detected %d missing summary file[s] (.auf).\n"
+msgid ""
+"Project check detected %d missing summary file[s] (.auf).\n"
"Audacity can fully regenerate these summary files from the\n"
"original audio data in the project."
msgstr ""
+"Kontrola projektu zistila %d chýbajúce súÄtové\n"
+"súbory (.auf). Audacity môže tieto súbory úplne\n"
+"obnoviť podľa pôvodných zvukových dát v projekte."
-#: DirManager.cpp:1305
+#: DirManager.cpp:1442
msgid "Regenerate summary files [safe and recommended]"
-msgstr ""
+msgstr "ObnoviÅ¥ súÄtové súbory [bezpeÄné a doporuÄené]"
-#: DirManager.cpp:1306
+#: DirManager.cpp:1443
msgid "Fill in silence for missing display data [this session only]"
-msgstr ""
+msgstr "Nahradiť stratené dáta tichom [iba pre toto otvorenie]"
-#: DirManager.cpp:1342
+#: DirManager.cpp:1479
#, c-format
-msgid "Project check detected %d missing audio data blockfile[s] (.au), \n"
+msgid ""
+"Project check detected %d missing audio data blockfile[s] (.au), \n"
"probably due to a bug, system crash or accidental deletion.\n"
"There is no way for Audacity to recover this lost data\n"
"automatically; you may choose to permanently fill in silence\n"
@@ -887,1982 +1001,2087 @@ msgid "Project check detected %d missing audio data blockfile[s] (.au), \n"
"session only, or close the project now and try to restore the\n"
"missing data by hand."
msgstr ""
+"Kontrola projektu zistila %d že chýbajú blokové súbory (.au)\n"
+"so zvukovými dátami. Ku strate došlo pravdepodobne v dôsledku chyby\n"
+"programu, pádu systému alebo nechceným vymazanÃm. Nie je spôsob,\n"
+"ako by Audacity mohol tieto súbory obnoviť automaticky. Stratené dáta\n"
+" môžete natrvalo alebo doÄasne nahradiÅ¥ tichom alebo teraz zavrieÅ¥ projekt\n"
+"a skúsiÅ¥ obnovu ruÄne."
-#: DirManager.cpp:1347
+#: DirManager.cpp:1484
msgid "Replace missing data with silence [permanent immediately]"
-msgstr ""
+msgstr "Nahradiť chýbajúce dáta tichom [natrvalo]"
-#: DirManager.cpp:1375
+#: DirManager.cpp:1512
msgid "Cleaning up unused directories in project data..."
-msgstr ""
+msgstr "OdstraÅujú sa nevyužité adresáre v projekte..."
-#: DirManager.cpp:1448
+#: DirManager.cpp:1583
msgid "Caching audio"
-msgstr ""
+msgstr "Ukladanie do vyrovnávacej pamäte"
-#: DirManager.cpp:1449
+#: DirManager.cpp:1584
msgid "Caching audio into memory..."
-msgstr ""
+msgstr "Zvuk sa nahráva do vyrovnávacej pamäte..."
-#: DirManager.cpp:1486
+#: DirManager.cpp:1617
msgid "Saving recorded audio"
-msgstr ""
+msgstr "Nahraný zvuk sa ukladá"
-#: DirManager.cpp:1487
+#: DirManager.cpp:1618
msgid "Saving recorded audio to disk..."
-msgstr ""
+msgstr "Nahraný zvuk sa ukladá na disk..."
-#: ../src/FFT.cpp:364
+#: FFT.cpp:389
msgid "Rectangular"
msgstr "Obdĺžnikový"
#: FFmpeg.cpp:36
msgid "FFmpeg support not compiled in"
-msgstr ""
+msgstr "FFmpeg podpora nebola nastavená"
#: FFmpeg.cpp:101
-msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
+msgid ""
+"FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
"You may want to go back to Preferences > Import/Export and re-configure it."
msgstr ""
+"FFmpeg bol nastavený v Predvoľbách a úspeÅ¡ne sa naÄÃtal pred, \n"
+"ale tentoraz sa ho Audacity nepodarilo naÄÃtaÅ¥ pri Å¡tarte. \n"
+"\n"
+"Mali by ste sa vrátiť do Predvoľieb-> Import / Export a re-konfigurovať ho."
#: FFmpeg.cpp:104
msgid "FFmpeg startup failed"
-msgstr ""
+msgstr "FFmpeg pri štarte zlyhalo"
-#: FFmpeg.cpp:115
+#: FFmpeg.cpp:112
msgid "FFmpeg library not found"
-msgstr ""
+msgstr "FFmpeg knižnica nenájdená"
-#: FFmpeg.cpp:170
+#: FFmpeg.cpp:172
msgid "Locate FFmpeg"
-msgstr ""
+msgstr "Nájsť FFmpeg"
-#: FFmpeg.cpp:190
+#: FFmpeg.cpp:192
#, c-format
msgid "Audacity needs the file %s to import and export audio via FFmpeg."
-msgstr ""
+msgstr "Audacity potrebuje súbor %s pre import a export audio cez FFmpeg."
-#: export/ExportMP3.cpp:507
+#: FFmpeg.cpp:198
+#: export/ExportMP3.cpp:562
#, c-format
msgid "Location of %s:"
-msgstr ""
+msgstr "Umiestnenie %s:"
-#: export/ExportMP3.cpp:516
+#: FFmpeg.cpp:207
+#: export/ExportMP3.cpp:571
#, c-format
msgid "To find %s, click here -->"
-msgstr ""
+msgstr "Ak chcete nájsť %s, kliknite tu -->"
-#: export/ExportMP3.cpp:522
+#: FFmpeg.cpp:213
+#: export/ExportMP3.cpp:577
msgid "Browse..."
-msgstr ""
+msgstr "Prehliadať..."
-#: FFmpeg.cpp:212
+#: FFmpeg.cpp:214
msgid "To get a free copy of FFmpeg, click here -->"
-msgstr ""
+msgstr "Voľne dostupnú kópiu FFmpeg zÃskate kliknutÃm sem -->"
-#: FFmpeg.cpp:215 export/ExportMP3.cpp:579
+#: FFmpeg.cpp:215
+#: export/ExportMP3.cpp:579
msgid "Download"
-msgstr ""
+msgstr "Stiahnuť"
#. i18n-hint: It's asking for the location of a file, for
-#: ../src/export/ExportMP3.cpp:113
+#. example, "Where is lame_enc.dll?" - you could translate
+#. "Where would I find the file %s" instead if you want.
+#: FFmpeg.cpp:237
+#: export/ExportMP3.cpp:601
#, c-format
msgid "Where is %s?"
msgstr "Kde je %s?"
#: FFmpeg.cpp:407
msgid "Failed to find compatible FFmpeg libraries"
-msgstr ""
+msgstr "Nepodarilo sa nájsť kompatibilné FFmpeg knižnice"
-#: FFmpeg.h:95
+#: FFmpeg.h:87
msgid "FFmpeg not found"
-msgstr ""
+msgstr "FFmpeg nenájdená"
#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
+msgid ""
+"Audacity attempted to use FFmpeg libraries to import an audio file,\n"
"but libraries were not found.\n"
"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
"and tell Audacity where to look for the libraries."
msgstr ""
+"Audacity sa pokúsil použiť FFmpeg knižnice pre import zvukového súboru,\n"
+"ale knižnice neboli nájdené. \n"
+"Ak chcete použiť FFmpeg funkciu importu, prejdite na Nastavenia-> Import / Export \n"
+"a povedzte Audacity, kde má hľadať knižnice."
#: FFmpeg.h:109
msgid "Do not show this warning again"
-msgstr ""
+msgstr "Nezobrazovať znovu toto varovanie"
-#: FFmpeg.h:251
+#: FFmpeg.h:242
msgid "Only avformat.dll|*avformat*.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
-msgstr ""
+msgstr "Len avformat.dll|*avformat*.dll|Dynamicky Prepojené Knižnice (*.dll)|*.dll|Všetky súbory (*.*)|*"
-#: FFmpeg.h:268
+#: FFmpeg.h:275
msgid "Dynamic Libraries (*.dylib)|*.dylib|All Files (*)|*"
-msgstr ""
+msgstr "Dynamické Knižnice (*.dylib)|*.dylib|Všetky súbory(*)|*"
-#: FFmpeg.h:266
+#: FFmpeg.h:302
msgid "Only libavformat.so|libavformat.so*|Dynamically Linked Libraries (*.so*)|*.so*|All Files (*)|*"
-msgstr ""
+msgstr "Len libavformat.so|libavformat.so*|Dynamicky Prepojené Knižnice (*.so*)|*.so*|Všetky súbory (*)|*"
-#: ../src/FreqWindow.cpp:68
+#: FreqWindow.cpp:103
msgid "Frequency Analysis"
msgstr "FrekvenÄná analýza"
-#: ../src/FreqWindow.cpp:129
-#: ../src/TrackPanel.cpp:837
+#: FreqWindow.cpp:139
+#: TrackPanel.cpp:553
+#: prefs/GUIPrefs.cpp:156
msgid "Spectrum"
msgstr "Spektrum"
-#: ../src/FreqWindow.cpp:130
+#: FreqWindow.cpp:140
msgid "Standard Autocorrelation"
msgstr "Štandardná autokorelácia"
-#: ../src/FreqWindow.cpp:131
+#: FreqWindow.cpp:141
msgid "Cuberoot Autocorrelation"
-msgstr "Cuberoot autokorelácia"
+msgstr "Autokorelácia hlavného adresára"
-#: ../src/FreqWindow.cpp:132
+#: FreqWindow.cpp:142
msgid "Enhanced Autocorrelation"
msgstr "Vylepšená autokorelácia"
#. i18n-hint: This is a technical term, derived from the word
-#: ../src/FreqWindow.cpp:136
+#. "spectrum". Do not translate it unless you are sure you
+#. know the correct technical word in your language.
+#: FreqWindow.cpp:146
msgid "Cepstrum"
msgstr "Cepstrum"
-#: FreqWindow.cpp:150 FreqWindow.cpp:154
+#: FreqWindow.cpp:150
+#: FreqWindow.cpp:154
msgid "Algorithm"
-msgstr ""
+msgstr "Algoritmus"
-#: ../src/HistoryWindow.cpp:58
+#: FreqWindow.cpp:169
+#: FreqWindow.cpp:173
+#: HistoryWindow.cpp:79
msgid "Size"
msgstr "Veľkosť"
-# i18n-hint: This refers to a "window function", used in the
-# Frequency analyze dialog box.
#. i18n-hint: This refers to a "window function", used in the
-#: ../src/FreqWindow.cpp:167
+#. Frequency analyze dialog box.
+#: FreqWindow.cpp:183
msgid " window"
msgstr " okno"
-#: FreqWindow.cpp:187 FreqWindow.cpp:191
+#: FreqWindow.cpp:187
+#: FreqWindow.cpp:191
msgid "Function"
-msgstr ""
+msgstr "Funkcia"
-#: ../src/FreqWindow.cpp:177
+#: FreqWindow.cpp:196
msgid "Linear frequency"
-msgstr "Lineárna frekvence"
+msgstr "Lineárna frekvencia"
-#: ../src/FreqWindow.cpp:178
+#: FreqWindow.cpp:197
msgid "Log frequency"
msgstr "Log frekvencie"
-#: FreqWindow.cpp:201 FreqWindow.cpp:205
+#: FreqWindow.cpp:201
+#: FreqWindow.cpp:205
msgid "Axis"
-msgstr ""
+msgstr "Os"
-#: FreqWindow.cpp:204 LabelDialog.cpp:128
+#: FreqWindow.cpp:212
+#: LabelDialog.cpp:130
+#: Menus.cpp:242
+#: Menus.cpp:277
msgid "&Export..."
-msgstr ""
+msgstr "&Exportovať..."
-#: HelpText.cpp:77 export/ExportCL.cpp:320
+#: FreqWindow.cpp:213
+#: effects/Contrast.cpp:437
+#: export/ExportCL.cpp:358
+#: export/ExportMultiple.cpp:344
msgid "Export"
-msgstr ""
+msgstr "Export"
-#: ../src/Benchmark.cpp:223
-#: ../src/FreqWindow.cpp:123
-#: ../src/effects/ClickRemoval.cpp:371
-#: ../src/effects/NoiseRemoval.cpp:463
+#: FreqWindow.cpp:216
+#: FreqWindow.cpp:217
+#: widgets/ErrorDialog.cpp:161
msgid "Close"
msgstr "Zavrieť"
-#: ../src/effects/Compressor.cpp:385
-#: ../src/effects/Compressor.cpp:393
-#: ../src/widgets/Meter.cpp:293
+#: FreqWindow.cpp:280
+#: FreqWindow.cpp:410
+#: effects/AutoDuck.cpp:489
+#: effects/AutoDuck.cpp:523
+#: effects/AutoDuck.cpp:792
+#: effects/Compressor.cpp:352
+#: effects/Compressor.cpp:360
+#: effects/Equalization.cpp:1121
+#: effects/Equalization.cpp:1123
+#: effects/Equalization.cpp:1131
+#: effects/Equalization.cpp:1197
+#: effects/Equalization.cpp:1406
+#: effects/Equalization.cpp:1417
+#: effects/Normalize.cpp:368
+#: widgets/Meter.cpp:413
msgid "dB"
msgstr "dB"
-# i18n-hint: This is the abbreviation for "Hertz", or
-# cycles per second.
#. i18n-hint: This is the abbreviation for "Hertz", or
-#: ../src/import/ImportRaw.cpp:378
+#. cycles per second.
+#: FreqWindow.cpp:295
+#: FreqWindow.cpp:450
+#: effects/Equalization.cpp:1162
+#: effects/Equalization.cpp:1193
+#: import/ImportRaw.cpp:402
msgid "Hz"
msgstr "Hz"
-#: ../src/FreqWindow.cpp:463
+#: FreqWindow.cpp:394
msgid "Not enough data selected."
msgstr "Nie je zvolené dostatoÄné množstvo dát."
-#: FreqWindow.cpp:441 effects/AutoDuck.cpp:801
+#: FreqWindow.cpp:458
+#: effects/AutoDuck.cpp:794
msgid "s"
-msgstr ""
+msgstr "s"
-#: FreqWindow.cpp:769
+#: FreqWindow.cpp:787
#, c-format
msgid "Cursor: %d Hz (%s) = %d dB Peak: %d Hz (%s) = %.1f dB"
-msgstr ""
+msgstr "Kurzor: %d Hz (%s) = %d dB Å piÄka: %d Hz (%s) = %.1f dB"
-#: FreqWindow.cpp:778
+#: FreqWindow.cpp:796
#, c-format
msgid "Cursor: %.4f sec (%d Hz) (%s) = %f, Peak: %.4f sec (%d Hz) (%s) = %.3f"
-msgstr ""
+msgstr "Kurzor: %.4f sec (%d Hz) (%s) = %f, Å piÄka: %.4f sec (%d Hz) (%s) = %.3f"
-#: ../src/FreqWindow.cpp:996
+#: FreqWindow.cpp:1069
msgid "spectrum.txt"
msgstr "spectrum.txt"
-#: ../src/FreqWindow.cpp:998
+#: FreqWindow.cpp:1071
msgid "Export Spectral Data As:"
msgstr "Exportovať spektrálne dáta ako:"
-#: ../src/FreqWindow.cpp:1014
-#: ../src/Menus.cpp:1393
-#: ../src/Project.cpp:2159
-#: ../src/prefs/KeyConfigPrefs.cpp:173
+#: FreqWindow.cpp:1087
+#: LabelDialog.cpp:603
+#: Menus.cpp:2563
+#: Project.cpp:2737
+#: Project.cpp:3842
+#: effects/Contrast.cpp:567
+#: prefs/KeyConfigPrefs.cpp:195
msgid "Couldn't write to file: "
msgstr "Nie je možné zapisovať do súboru:"
-#: ../src/FreqWindow.cpp:1019
+#: FreqWindow.cpp:1092
msgid "Frequency (Hz)\tLevel (dB)"
-msgstr "Frekvencia (Hz)Ã\troveÅ (dB)"
+msgstr "Frekvencia (Hz)\tÃroveÅ (dB)"
-#: ../src/FreqWindow.cpp:1025
+#: FreqWindow.cpp:1098
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "Oneskorenie (sekundy)\tFrekvencia (Hz)\tÃroveÅ"
+#: GStreamerLoader.cpp:220
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr "GStreamer %s: %s"
+
+#: GStreamerLoader.cpp:237
+msgid ""
+"GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences->Import/Export and re-configure it."
+msgstr ""
+"Gstreamer sa nastavuje v predvoľbach a úspeÅ¡ne naÄÃtava pred \n"
+" ale tentoraz sa ho Audacity nepodarilo naÄÃtaÅ¥ pri Å¡tarte. \n"
+" Mali by ste sa vrátiť do Predvoľieb-> Import / Export a re-konfigurovať ho."
+
+#: GStreamerLoader.cpp:240
+msgid "GStreamer startup failed"
+msgstr "Gstreamer pri štarte zlyhalo"
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
-msgstr ""
+msgstr "Na [[welcome|UvÃtacia obrazovka]]"
-#: HelpText.cpp:60
+#: HelpText.cpp:92
msgid "Welcome!"
-msgstr ""
+msgstr "Vitajte!"
-#: HelpText.cpp:65
+#: HelpText.cpp:97
msgid "Playing Audio"
-msgstr ""
+msgstr "Prehráva sa zvuk"
-#: HelpText.cpp:69
+#: HelpText.cpp:101
msgid "Recording Audio"
-msgstr ""
+msgstr "Nahráva sa zvuk"
#: HelpText.cpp:105
msgid "Recording - Choosing the Input Device"
-msgstr ""
+msgstr "Nahrávanie - nastavenie vstupného zariadenia"
#: HelpText.cpp:109
msgid "Recording - Choosing the Input Source"
-msgstr ""
+msgstr "Nahrávanie - nastavenie zdroja vstupu"
#: HelpText.cpp:113
msgid "Recording - Setting the Input Level"
-msgstr ""
+msgstr "Nahrávanie - nastavenie vstupnej úrovne"
#: HelpText.cpp:117
msgid "Editing and greyed out Menus"
-msgstr ""
+msgstr "Ãprava a sivé Menu"
#: HelpText.cpp:121
msgid "Exporting an Audio File"
-msgstr ""
+msgstr "Exportovať audio súbor"
#: HelpText.cpp:125
msgid "Saving an Audacity Project"
-msgstr ""
+msgstr "Ukladá sa Audacity projekt"
#: HelpText.cpp:129
msgid "Unsupported Formats"
-msgstr ""
+msgstr "Nepodporované formáty"
-#: HelpText.cpp:85
+#: HelpText.cpp:133
msgid "Burn to CD"
-msgstr ""
+msgstr "Vypáliť na CD"
-#: HelpText.cpp:89
+#: HelpText.cpp:137
msgid "No Local Help"
-msgstr ""
+msgstr "Miestna nápoveda neexistuje"
#: HelpText.cpp:148
msgid "</p><center><h3>Getting Started</h3></center><br>"
-msgstr ""
+msgstr "</p><center><h3>Ako zaÄaÅ¥</h3></center><br>"
#: HelpText.cpp:150
msgid "Welcome to Audacity "
-msgstr ""
+msgstr "VÃtajte v Audacity"
#: HelpText.cpp:151
msgid "Learn how to: <ul><li>[[play|play]] an existing audio file <li>[[record|record]] your voice, LP or tape <li>[[edit|edit]] sounds <li>[[save|save or open an Audacity project]] <li>[[export|export]] to an MP3 or other audio file, or [[burncd|burn to a CD]] </ul></p><p>"
-msgstr ""
+msgstr "NauÄte sa: <ul> <li> [[play| prehraÅ¥]] existujúci zvukový súbor <li> [[record| záznam]] svojho hlasu, LP alebo pásky <li> [[edit| upraviÅ¥]] zvuk <li> [[save| uložiÅ¥ alebo otvoriÅ¥ projekt Audacity]] <li> [[export| exportovaÅ¥]] na MP3 alebo iné audio súbory, alebo [[burncd | vypáliÅ¥ na CD]] </ul> </p> <p>"
#: HelpText.cpp:159
msgid "This screen can be viewed at any time by clicking the <i>Help</i> menu, then <i>Show Welcome Message</i>. For a detailed guide to all the Audacity menus and controls, click <i>Help</i> menu then <i>Index</i>, or download our <a href=\"http://audacity.sourceforge.net/help/documentation/manual_1.4.pdf\">full Manual</a> in PDF format.</p>"
-msgstr ""
+msgstr "Túto obrazovku si môžete pozrieÅ¥ kedykoľvek kliknutÃm na <i> Pomoc </i> menu, potom <i> ZobraziÅ¥ uvÃtaciu správu </i>. Pre podrobný návod na vÅ¡etky Audacity menu a ovládacie prvky, kliknite na tlaÄidlo <i> Pomoc</i> menu potom <i> Index </i>, alebo si stiahnute <a href=\"http://audacity.sourceforge.net /help/documentation/manual_1.4.pdf\"> plný manuál </a> vo formáte PDF. </p> "
#: HelpText.cpp:172
msgid "<p><b>Opening audio files:</b> Either drag the files into the current project window, or click <i>File > Import > Audio</i>. Files can be opened into a new project window with <i>File > Open</i>. The main formats Audacity plays are <b>AIFF, AU, FLAC, M4A</b> (only on a Mac), <b>MP2/MP3, OGG Vorbis</b> and <b>WAV</b>. Click [[wma-proprietary|here]] if your file is in some other format. <b>To import a CD:</b> extract it to WAV or AIFF using iTunes, Windows Media Player 11 or similar. See our online guide: [[wiki:How_to_import_CDs|importing CDs]].</p><p> <p><b>Playing audio:</b> Press the green Play button to start playback. Press the blue Pause button once to pause playback, and again to resume. To stop, press the yellow Stop button. Spacebar can be used to either play or stop. After stopping, playback resumes from its last starting point. To change the starting point, click in the track at your desired starting point. The <b>|<<</b> and <b>>>|</b> buttons can be used to skip to the start or end of the track respectively. </p><br><br>"
-msgstr ""
+msgstr "<p><b> Otváranie audio súborov:</b> BuÄ pretiahnite súbory do aktuálneho okna projektu, alebo kliknite na tlaÄidlo <i> Súbor > ImportovaÅ¥> Audio </i>. Súbory je možné otvoriÅ¥ do nového okna projektu, pomocou <i> Súbor > OtvoriÅ¥ </i>. Hlavnými formátmi, ktoré Audacity prehráva sú <b> AIFF, AU, FLAC, M4A </b> (len pre Mac), <b> MP2/MP3, OGG Vorbis </b> a <b> WAV </b>. Kliknite na tlaÄidlo [[wma-proprietárnu | tu]], ak súbor je v inom formáte. <b> Pre importovanie CD: </b> zmente formát na WAV alebo AIFF pomocou iTunes, Windows Media Player 11 a podobných. Pozrite si nášho online sprievodcu: [[wiki: How_to_import_CDs | pre importovanie CD ]].</p> <p> <p> <b> Prehrávanie audio: </b> StlaÄte zelené tlaÄidlo Play na spustenie prehrávania. StlaÄte raz modré tlaÄidlo PozastaviÅ¥ pre pozastavenie prehrávania, a opäť obnovte. Ak chcete zastaviÅ¥, stlaÄte žlté tlaÄidlo Stop. MedzernÃk možno využiÅ¥ buÄ na prehrávanie alebo zastavenia. Po zastavenÃ, zaÄne prehrávanie od jeho posledného bodu. Ak chcete zmeniÅ¥ východiskový bod, kliknite na požadovanú skladbu na východiskové miesto. TlaÄidlá <b>|<<</b> a <b>>>|</b> je možné použiÅ¥ na preskoÄenie na zaÄiatok alebo na koniec stopy </p><br><br>"
#: HelpText.cpp:194
msgid "<p><b>To record:</b> Set the recording device and input source, adjust the input level, then press the red Record button.</b></p><p> 1) [[inputdevice|Set Recording Device]] either in the <i>Audio I/O tab of Preferences</i> or in <i>Device Toolbar</i>. Audio I/O Preferences lets you choose stereo recording if required.<br> 2) [[inputsource|Set input source]] for that device (for example, microphone or line-in) in the dropdown selector of the <i>Mixer Toolbar</i>, or (on some systems) at Recording Device in the <i>Audio I/O tab of Preferences</i> or in <i>Device Toolbar</i>.<br> 3) [[inputlevel|Adjust input level]] using the right-hand slider on the <i>Mixer Toolbar</i>. Correct adjustment of level before recording is essential to avoid noise or distortion. </p><p> More help at: \"Recording\" <a href=\"http://audacity.sourceforge.net/help/faq\">FAQs</a>, our Tutorial <a href=\"http://www.audacityteam.org/manual/index.php?title=Tutorial_-_Your_First_Recording\"> Your First Recording</a> in the <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">Manual</a>, and our Wiki [[wiki:Recording_Tips|Recording Tips]] and [[wiki:Troubleshooting_Recordings|Troubleshooting Recordings]] pages. </p><br><br>"
-msgstr ""
+msgstr "<p> <b> Pre nahrávanie: </b> Nastavte nahrávacie zariadenie a vstupný zdroj, nastavte vstupnú úroveÅ, potom stlaÄte Äervené tlaÄidlo NahrávaÅ¥. </b> </p> <p> 1) [[InputDevice | Nastavenie Záznamového zariadenia]] namiesto v <i> Predvoľby Audio I/O karty </i>, alebo v <i> Nastavenie panela nástrojov</i>.Nastavenie Audio I / O umožÅuje zvoliÅ¥ stereo nahrávanie v prÃpade potreby. <br> 2) [[inputsource | Nastavenia vstupného zdroja]] pre toto zariadenie (naprÃklad mikrofón alebo line-in) v rozbaľovacom voliÄi z <i> Mixážny panel nástrojov </i>, alebo (na niektorých systémoch) v Záznamovom zariadenà v <i> Predvoľby Audio I/O karty </i>, alebo v <i> Nastavenia panela nástrojov </i>. <br> 3) [[ inputlevel | Upravte vstupnú úroveÅ]] pomocou pravého jazdca na <i> Mixážny panel nástrojov</i>. Správne nastavenie úrovne pred nahrávanÃm je dôležité, aby nedochádzalo k ruÅ¡eniu alebo skresleniu. </p> <p> ÄalÅ¡ie informácie na : \"Nahrávanie \"<a href=\"http://audacity.sourceforge.net/help/faq\"> Äasto kladené otázky </a>, naÅ¡ich prÃruÄkách <a href=\"http://www.audacityteam.org/manual/index.php?title=Tutorial_-_Your_First_Recording\"> VaÅ¡e prvé nahrávky </a>,<a href=\"http://www.audacityteam.org/manual/index.php?title= Main_Page\"> manuál </a>, a na naÅ¡ej Wiki [[wiki: Recording_Tips |Tipy na nahrávanie]] a [[wiki: Troubleshooting_Recordings | Problémy s nahrávkami]] stránkach. </p><br><br>"
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
-msgstr ""
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgstr "<p>Vstupné zariadenie je aktuálne fyzický zvukové zariadenie, z ktorého sa nahráva. To sa volà v \"Nahrávacie zariadenie \" v <i> Predvoľbách Audio I/O karte </i>, Windows a Linux, predvoľby sú v dolnej Äasti <i> UpraviÅ¥ </i> menu. On a Mac, sú v <i> Audacity </i> menu. Tiež môžete pohodlne vybraÅ¥ záznamové zariadenie v <i> Zariadenia nástrojového panela </i>, ktoré môžu byÅ¥ aktivované na <i> ZobraziÅ¥ > Nástrojový panel ...</i>. </p><p> Å tandardne Audacity použÃva zariadenie v súÄasnosti použÃvajúce systémom (zvyÄajne vaÅ¡e vstavané zvukové zariadenie), takže Äasto nie je potrebné meniÅ¥ vstupné zariadenie. Vo Windows súÄasný systém zariadenia môže byÅ¥ vybraný ako \"Microsoft mapy zvuku \". Ak chcete nahrávaÅ¥ z externého USB alebo Firewire zariadenÃ, ako je naprÃklad USB gramofón, vyberte ju explicitne podľa názvu ako záznamové zariadenie po spojenà . </p> <p> Späť na [[záznamu | Záznam Audio]] <br> </p>"
#: HelpText.cpp:244
msgid "<p>Select the input source (such as microphone or line-in) for your [[inputdevice|recording device]]:<br> - <b>On Windows (except Vista)</b> and <b>Linux</b>, in the dropdown selector on the right of the <i>Mixer Toolbar</i>.<br> - <b>On Windows Vista</b> and <b>Mac</b>, at Recording Device on the <i>Audio I/O tab of Preferences</i>, or in <i>Device Toolbar</i>. The source will be shown as part of the parent device (for example, <i>High Def Audio Card: Microphone</i>). If necessary, Mac users can choose the input source at Apple Audio MIDI Setup. <br><i><b>Note:</b> many USB or Firewire recording devices don't have a choice of inputs, so this step is not necessary. If in doubt, see the documentation for your device. </i></p><p> <b>Tip:</b> To <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record audio playing on the computer</a>, Windows and Linux users can choose the \"Stereo Mix\", \"Wave Out\", \"Sum\" or comparable input source. </p><p> Back to [[record|Recording Audio]] <br></p>"
-msgstr ""
+msgstr "<p> Vyberte vstupný zdroj (ako je mikrofón alebo line-in) pre vaÅ¡e [[Vstupné zariadenie | záznamové zariadenia]]: <br> - <b> Na Windows (okrem Vista) </b> a <b> Linux </b>, vo voliÄi v rozbalovacej liÅ¡te na pravej strane v<i> Mixážny panel nástrojov</i>. <br> - <b> Na Windows Vista </b> a <b> Mac </b>, v záznamových zariadeniach v <i> Predvoľby Audio I/O karty </i>, alebo v <i> nástrojovom paneli Zariadenia </i>. Tento zdroj sa bude zobrazovaÅ¥ ako súÄasÅ¥ materského zariadenia (naprÃklad <i> Vysoká Def Audio karta: Mikrofon </i>). Ak je to potrebné, Mac užÃvatelia si môžu vybraÅ¥ vstupný zdroj na Apple Audio MIDI Setup. <br> <i> <b> Poznámka: </b> mnoho USB alebo Firewire nahrávacÃch zariadenà nemá výber vstupov, takže tento krok nie je potrebný. Ak máte pochybnosti, pozrite sa na dokumentáciu pre vaÅ¡e zariadenie. </i> </p> <p> <b> Tip: </b>Pre <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\"> nahrávanie audia, ktorý sa prehráva na poÄÃtaÄi </a>,si Windows a Linux užÃvatelia môžu zvoliÅ¥ \"Stereo Mix \", \"Wave Out \", \"Sum \" alebo porovnateľný vstupný zdroj. </p> <p> Späť na [[record | nahrávanie Audio]] <br> </p>"
#: HelpText.cpp:267
msgid "<p>The input level must be set correctly. If the level is too low, there will be background noise. If the level is too high, there will be distortion in the loud parts. </p><p>To set the level, either see this [[wiki:Recording_levels|illustrated online guide]] or follow these steps: <ol><li>Turn on <b>monitoring</b>. Double-click the right-hand of the two <i>VU Meters</i> (or right-click over it) and click \"Start Monitoring\". If the meters are not visible, click <i>View > Toolbars</i> and check \"Meter Toolbar\". </li><li>Adjust the input slider on the <i>Mixer Toolbar</i> (by the microphone symbol), so that the red bars in the meter come close to <b>but do not touch</b> the right edge of the scale. If you can't hear the monitored audio, go to the <i>Audio I/O tab of Preferences</i> and check \"Software Playthrough\". </li></ol></p><p> Back to [[record|Recording Audio]] <br></p>"
-msgstr ""
+msgstr "<p>Vstupná úroveÅ musà byÅ¥ nastavená správne. Ak je úroveÅ je prÃliÅ¡ nÃzka, bude tam hluk pozadia.Ak je úroveÅ prÃliÅ¡ vysoká, dôjde k naruÅ¡eniu v hlasných Äastiach. </p><p>Ak chcete nastaviÅ¥ úroveÅ, najskôr pozrite toto [[wiki:Recording_levels|ilustrovaný online sprievodca]] alebo postupujte nasledovne: <ol> <li> Zapnite <b> monitorovanie </b>. Dvojité kliknutie na pravú stranu <i> VU Metre </i> (alebo vpravo kliknite na neho) a kliknite na tlaÄidlo \"Å tart monitorovania \". Ak meradlá nie je vidieÅ¥, kliknite na <i> ZobraziÅ¥ > v Panely s nástrojmi </i> a skontrolujte \"Nastavenie meraÄov\". </li> <li> Nastavenie vstupného jazdca na <i> Mixážnom panely </i> ( symbolom mikrofónu), tak, že Äervené tyÄe v metra sa priblÞia <b> ale nedotknú sa </b > pravého okraja stupnice. Ak nemôžete poÄuÅ¥ monitorovaný zvuk, prejdite na <i> Predvoľby Audio I/O karty </i> a skontrolujte \"Prehrávacà Software \". </li> </ol> </p> <p> Späť na [[záznam | Záznam Audio]] <br> </p> "
#: HelpText.cpp:292
msgid "<p>The main commands for editing audio are under the <i>Edit</i> menu (such as cut, copy and paste) and the <i>Effect</i> menu (you can do things like boost the bass, change pitch or tempo, or remove noise). </p><p> Audacity applies edits to selected areas of the audio track. To select a particular area, click in the track and drag the shaded area with the mouse. If no audio is selected, Audacity selects all the audio in the project window.</p><p> When playing or recording, the Edit and Effect menus will appear greyed out, because a moving track can't be edited. Commands can sometimes be unavailable for other reasons too. For example, you can't run effects until you have audio on the screen, and you can't paste audio until you've cut or copied it to Audacity's clipboard. </p><br><br>"
-msgstr ""
+msgstr "<p> Hlavné prÃkazy pre editáciu zvuku sú pod menu<i> UpraviÅ¥ </i> (ako strih, kopÃrovanie a vloženie) a menu<i> Efekt </i> (môžete robiÅ¥ veci, ako je posilnenie basov, zmenà rozstup alebo tempo, alebo odstránenie hluku). </p> <p> Audacity umožÅuje úpravu vybraných oblastà audio stopy. Ak chcete vybraÅ¥ konkrétne oblasti, kliknite v projektovom okne a pretiahnite Å¡rafované oblasti s myÅ¡ou. Ak nie je vybraný žiadný zvuk, Audacity vyberá vÅ¡etkým audio v okne projektu. </p> <p> Pri prehrávanà alebo nahrávanà menu Ãpravy a Efektu budú zobrazené Å¡edou farbou, pretože sa pohybujúce stopy nedajú upravovaÅ¥. PrÃkazy nemôžu byÅ¥ niekedy k dispozÃcii z iných dôvodov . NaprÃklad si nemožno spustiÅ¥ efekty kým je zvuk na obrazovke, a nie je možné vložiÅ¥ audio kým ho striháte alebo kopÃrujete do schránky Audacity. </p> <br> <br> "
#: HelpText.cpp:311
msgid "<p>To return later to your unfinished work in Audacity with all tracks and edits as you left them, save an Audacity project. To play your current work in other media programs or send it to others, [[export|export]] an audio file such as WAV or MP3. </p><p> <i>File > Save Project</i> saves an <b>.aup</b> project file and a <b>_data</b> folder containing the actual audio. To re-open a saved project, click <i>File > Open</i> and open the .aup file. If you save and exit more than once, an .aup.bak backup file is created, but the .aup file should always be opened if present. When your final exported file is exactly as you want, delete the project files and _data folder to save disc space. </p><p><i>File > Save Project As...</i> is for saving an empty project. It also lets you save an existing Project to a <b> new</b> name. This is the only safe way to rename a project. The .aup file and _data folder should not be moved or renamed manually. </p><p>"
-msgstr ""
+msgstr "<p> Ak sa chcete neskôr vrátiÅ¥ do svojej nedokonÄenej práce v Audacity so vÅ¡etkými skladbami a úpravami, ako ste to nechali, uložte Audacity projekt. Pre prehratie vaÅ¡ej súÄasnej práce v iných media programoch alebo exportovanie do iných, [[export | exportovaÅ¥]] audio súborov ako WAV alebo MP3. </p> <p> <i> Súbor > UložiÅ¥ projekt </i> uložÃÅ¥ <b>. aup </b> súbor projektu a <b> _dáta </b> obsahujú aktuálny zvuk. Ak chcete znova otvoriÅ¥ uložený projekt, kliknite na tlaÄidlo <i> Súbor > OtvoriÅ¥ </i> a otvorte. aup súbor. Ak budete ukladaÅ¥ a ukonÄovaÅ¥ viac ako raz, Äo je. aup.bak zálohovaný súbor je vytvorený, ale aup súbor by mal byÅ¥ vždy zahájený ak je prÃtomný. Pri vaÅ¡om koneÄnom exportovanà je súbor presne taký, ako chcete. ZmazaÅ¥ súbory projektu a dátový prieÄinok na uÅ¡etrenie diskového priestoru. </p> <p> <i> Súbor > UložiÅ¥ projekt ako ...</i> je pre ukladanie prázdneho projektu. Tiež vám umožnà uložiÅ¥ existujúci projekt na <b> nový </b> názov. To je jediný bezpeÄný spôsob, ako premenovaÅ¥ projekt. K. aup súboru a _data prvky by nemali byÅ¥ presunuté alebo premenované ruÄne. </p> <p> "
#: HelpText.cpp:335
msgid "To hear your work in other media programs, export it to an audio file such as WAV or MP3 (some formats are [[wma-proprietary|unsupported]]). [[save|Saving an Audacity project]] creates a project file (and linked _data folder) containing all your edited tracks, so you can return to your work later. However, other programs can't read Audacity projects. </p><p> To export, click <i>File > Export</i> then choose the file format you want to export to in the \"Save as type\" dropdown. To [[burncd|burn a CD]] for standalone CD players, choose WAV or AIFF. To export as MP3, the [[wiki:Lame_Installation|Lame Encoder]] must be installed. </p><p> <i>File > Export Selection</i> exports only a selected area of audio. <i>Use File > Export Multiple</i> to export multiple files at the same time, either one for each audio track, or one for each labeled area in a single track. <i>Tracks > Add Label At Selection</i> lets you [[wiki:Splitting_recordings_into_separate_tracks|split the tracks]] from an album for multiple export as separate files. </p><br><br>"
-msgstr ""
+msgstr "Ak chcete poÄuvaÅ¥ vaÅ¡u prácu v iných medialnych programoch, exportujte ich do zvukového súboru, ako WAV alebo MP3 (niektoré formáty sú [[wma-proprietary|nepodporované]]). [[Save|UložiÅ¥ Audacity projekt]] vytvorà súbor projektu (a súvisiacu data zložku), ktoré obsahujú vÅ¡etky vaÅ¡e upravený stopy, takže sa môžete vrátiÅ¥ k vaÅ¡ej práci neskôr. AvÅ¡ak, ostatné programy nevedia ÄÃtaÅ¥ Audacity projekty. </p> <p> Pre exportovanie, kliknite <i> Súbor > Export </i> a potom vyberte formát súboru, ktorý chcete exportovaÅ¥ do rozbaľovaÄa \"UložiÅ¥ ako typ \" . Ak chcete [[burncd | napáliÅ¥ CD]] pre nezávislý CD prehrávaÄ, vyberte WAV alebo AIFF. Ak chcete exportovaÅ¥ ako MP3, musà byÅ¥ nainÅ¡talovaný [[wiki: Lame_Installation | Lame Encoder]], . </p> <p> <i> Súbor >Výber Exportu</i> exportuje iba vybrané oblasti audia. <i> Pomocou Súbor > Hromadný export</i> exportujete viac súborov súÄasne, jeden pre každú zvukovú stopu, alebo jeden pre každú oblasÅ¥ oznaÄenú v jednej stope. <i> Skladby > PridaÅ¥ popis na výber </i> vám [[wiki: Splitting_recordings_into_separate_tracks | rozdelà skladby]] z albumu pre mnohonásobné exportované súbory ako samostatné súbory. </p><br><br> "
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
-msgstr ""
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgstr "<p> Audacity <b> nemôže </b> [[play|prehraÅ¥]] alebo [[export|exportovaÅ¥]] <b> súbory WMA, RealAudio, Shorten (SHN) </b> alebo väÄÅ¡inu iných vlastnÃckych formátov vÄaka patentu a licenÄným obmedzeniam. Na poÄÃtaÄi Mac, nechránené formáty <b>AAC </b> ako <b> M4A </b> môžu byÅ¥ importované. Niektoré otvorené formáty eÅ¡te nie sú podporované, vrátane <b> Ogg Speex </b> a <b> Musepack </b>. Súbory chránené akýmkoľvek druhom Digital Rights Management (DRM), vrátane väÄÅ¡iny on-line zakúpených programov, naprÃklad z iTunes alebo Napster, <b> nemôžu </b> byÅ¥ importované. </p> <p> Ak nemôžete importovaÅ¥ súbor do Audacity, potom v prÃpade, ak nie DRM chránená, použitia iTunes alebo <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\"> SUPER </a> presunúť ju do WAV alebo AIFF. Ak je chránené, vypáľte ho na zvukové CD v programe s licenciou na prehrávanie, potom extrahovaÅ¥ CD stopy do WAV alebo AIFF alebo pomocou iTunes (pre Windows) <a href=\"http://cdexos.sourceforge.net /?q=download\"> CDex </a> alebo Windows Media Player 11. Môžete tiež <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\"> zaznamenaÅ¥ </a> CD do poÄÃtaÄa. <i> pre exportovanie nepodporovaného formátu ho exportujte do WAV alebo AIFF a premeÅte ho na požadovaný formát v iTunes alebo <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\"> SUPER </a>. </i> </p> <p> "
#: HelpText.cpp:383
msgid "<p>To burn your work to an audio CD for standalone CD players, first [[export|export]] it as WAV or AIFF. The exported file should be stereo, 44100 Hz (set in the \"Project Rate\" button bottom left) and 16 bit (set in the \"Options\" button in the file export dialog). These are Audacity's default settings, so normally you will not need to change these before exporting. <p>Burn the exported file to an \"audio CD\" - not a \"data CD\" or \"MP3 CD\" - with a CD burning program like iTunes or Windows Media Player. For more help, see [[wiki:How_to_burn_CDs|How to burn CDs]] online. </p><p>"
-msgstr ""
+msgstr "<p>VypáliÅ¥ vaÅ¡u audio CD prácu pre samostatné CD prehrávaÄe, najskôr ju [[export | exportujte]] ako WAV alebo AIFF. Tento súbor by mal byÅ¥ vyvážené stereo, 44100 Hz (súbor v \"Projekt vzoriek \" tlaÄidlo vľavo dole) a 16 bit (súbor v \"Nastavenia \" tlaÄidlo v súbore export dialóg). Tieto nastavenia sú v Audacity predvolené , takže ich obvykle nemusÃte meniÅ¥ pred exportom. <p> Napálenie exportovaného súboru na \"audio CD \" - nie \"dátové CD \" alebo \"MP3 CD \" - napaľovanie CD s programom ako sú iTunes alebo Windows Media Player. Pre bližšie informácie pozrite [[wiki: How_to_burn_CDs | Ako napáliÅ¥ CD]] online. </p> <p>"
#: HelpText.cpp:403
msgid "<p>Help for Audacity Beta is currently unfinished. For now, a draft manual is available <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">online</a>. Alternatively, click <a href=\"http://www.audacityteam.org/manual/index.php?title=Temporary_HTML_Manual_Export\">here</a> to download a single-page version of the manual which can be viewed in this window."
-msgstr ""
+msgstr "<p>Pomoc k Audacity Beta je v súÄasnej dobe nedokonÄená. Terajšà návrh manuálu je k dispozÃcii<a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\"> online</a>. PrÃpadne kliknite<a href=\"http://www.audacityteam.org/manual/index.php?title=Temporary_HTML_Manual_Export\"> sem</a> pre stiahnutie jedno-stranovej verzie manuálu, ktorú je možné zobraziÅ¥ v tomto okne."
-#: ../src/HistoryWindow.cpp:44
+#: HistoryWindow.cpp:53
msgid "Undo History"
-msgstr "História zmien (undo)"
+msgstr "História zmien"
#: HistoryWindow.cpp:72
msgid "Manage History"
-msgstr ""
+msgstr "Prehľad histórie"
-#: ../src/HistoryWindow.cpp:57
+#: HistoryWindow.cpp:78
msgid "Action"
msgstr "Akcia"
#: HistoryWindow.cpp:86
msgid "&Undo Levels Available"
-msgstr ""
+msgstr "Ãrovne návrat&u k dispozÃcii"
#: HistoryWindow.cpp:92
msgid "Levels To Discard"
-msgstr ""
+msgstr "Ãrovne na odstránenie"
-#: HistoryWindow.cpp:102
+#: HistoryWindow.cpp:103
msgid "&Discard"
-msgstr ""
+msgstr "&Odstrániť"
-#: HistoryWindow.cpp:111 LabelDialog.cpp:135 LabelDialog.cpp:137
-#: effects/Amplify.cpp:214 effects/AutoDuck.cpp:529 effects/AutoDuck.cpp:531
-#: effects/ChangeLength.cpp:187 effects/ChangePitch.cpp:399
-#: effects/ChangeSpeed.cpp:397 effects/ChangeTempo.cpp:301
-#: effects/Compressor.cpp:519 effects/Effect.cpp:389 effects/Effect.cpp:391
-#: effects/Equalization.cpp:1169 effects/Leveller.cpp:269
-#: effects/Normalize.cpp:356 effects/Phaser.cpp:605 effects/Repeat.cpp:274
-#: effects/SpikeCleaner.cpp:191 effects/VST/VSTEffect.cpp:98
-#: effects/Wahwah.cpp:592 effects/ladspa/LadspaEffect.cpp:592
-#: effects/nyquist/Nyquist.cpp:829 export/Export.cpp:791
-#: prefs/FileFormatPrefs.cpp:408 prefs/PrefsDialog.cpp:164
+#: HistoryWindow.cpp:112
+#: effects/ChangeLength.cpp:186
+#: effects/SpikeCleaner.cpp:191
+#: export/ExportCL.cpp:432
msgid "&OK"
-msgstr ""
+msgstr "&OK"
-#: ../src/prefs/DirectoriesPrefs.cpp:114
+#: Internat.cpp:191
msgid "Unable to determine"
msgstr "Nie je možné urÄiÅ¥"
-#: ../src/import/ImportRaw.cpp:354
+#: Internat.cpp:195
+#: import/ImportRaw.cpp:388
msgid "bytes"
msgstr "bytov"
-#: Internat.cpp:182
+#: Internat.cpp:197
msgid "KB"
-msgstr ""
+msgstr "KB"
-#: Internat.cpp:185
+#: Internat.cpp:200
msgid "MB"
-msgstr ""
+msgstr "MB"
-#: Internat.cpp:188
+#: Internat.cpp:203
msgid "GB"
-msgstr ""
+msgstr "GB"
-#: LabelDialog.cpp:50
+#: LabelDialog.cpp:54
msgid "Track"
-msgstr ""
+msgstr "Stopa"
-#: ../src/Menus.cpp:3088
+#: LabelDialog.cpp:55
+#: Menus.cpp:4733
+#: Menus.cpp:4768
msgid "Label"
msgstr "Popis"
-#: LabelDialog.cpp:54
+#: LabelDialog.cpp:56
+#: TimerRecordDialog.cpp:340
msgid "Start Time"
-msgstr ""
+msgstr "ZaÄiatoÄný Äas"
-#: LabelDialog.cpp:53
+#: LabelDialog.cpp:57
+#: TimerRecordDialog.cpp:359
msgid "End Time"
-msgstr ""
+msgstr "Koncový Äas"
-#: LabelDialog.cpp:98 Menus.cpp:709
+#: LabelDialog.cpp:100
+#: Menus.cpp:711
msgid "&Edit Labels"
-msgstr ""
+msgstr "&Upraviť popisy"
-#: LabelDialog.cpp:113
+#: LabelDialog.cpp:115
msgid "Press F2 or double click to edit cell contents."
-msgstr ""
+msgstr "StlaÄte klávesu F2 alebo dvojito kliknite pre editáciu obsahu bunky."
-#: LabelDialog.cpp:124
+#: LabelDialog.cpp:126
msgid "Insert &After"
-msgstr ""
+msgstr "Vložiť z&a"
-#: LabelDialog.cpp:125
+#: LabelDialog.cpp:127
msgid "Insert &Before"
-msgstr ""
+msgstr "Vložiť &pred"
-#: LabelDialog.cpp:127 Menus.cpp:234
+#: LabelDialog.cpp:129
msgid "&Import..."
-msgstr ""
+msgstr "&Vstup..."
-#: LabelDialog.cpp:163
+#: LabelDialog.cpp:157
msgid "New..."
-msgstr ""
+msgstr "Nové..."
-#: LabelDialog.cpp:352
-msgid "You have left blank label names. These will be\n"
+#: LabelDialog.cpp:354
+msgid ""
+"You have left blank label names. These will be\n"
"skipped when repopulating the Label Tracks.\n"
"\n"
"Would you like to go back and provide names?"
msgstr ""
+"Musà zostať prázdna etiketa mien. Tie budú\n"
+" preskoÄené pri presúvanà popisov stôp.\n"
+" \n"
+"Chceli by ste sa vrátiť späť a poskytnúť mená?"
-#: LabelDialog.cpp:350
+#: LabelDialog.cpp:355
msgid "Confirm"
-msgstr ""
+msgstr "Potvrdiť"
-#: ../src/Menus.cpp:2631
+#: LabelDialog.cpp:516
+#: Menus.cpp:4152
msgid "Select a text file containing labels..."
-msgstr "Zvoľte textový súbor s popismi (labels)..."
+msgstr "Zvoľte textový súbor s popismi ..."
-#: ../src/Menus.cpp:2635
+#: LabelDialog.cpp:520
+#: Menus.cpp:4156
msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
msgstr "Textové súbory (*.txt)|*.txt|Všetky súbory (*.*)|*.*"
-#: ../src/Menus.cpp:2647
-#: ../src/Project.cpp:1820
-#: ../src/Project.cpp:1828
-#: ../src/import/ImportMIDI.cpp:31
+#: LabelDialog.cpp:534
+#: Menus.cpp:4168
+#: Project.cpp:2018
+#: Project.cpp:2026
msgid "Could not open file: "
msgstr "Nie je možné otvoriť súbor:"
-#: LabelDialog.cpp:549
+#: LabelDialog.cpp:560
msgid "No labels to export."
-msgstr ""
+msgstr "Žiadne popisy na export."
-#: ../src/Menus.cpp:1358
+#: LabelDialog.cpp:566
+#: Menus.cpp:2526
msgid "Export Labels As:"
-msgstr "Exportovať popisy (Labels) ako:"
+msgstr "Exportovať popisy ako:"
-#: ../src/Menus.cpp:1356
+#: LabelDialog.cpp:568
+#: Menus.cpp:2524
msgid "labels.txt"
msgstr "labels.txt"
-#: LabelDialog.cpp:690
-#, fuzzy
+#: LabelDialog.cpp:703
msgid "New Label Track"
-msgstr "Nová &popisná (Label) stopa"
+msgstr "Nový popis stopy"
-#: LabelDialog.cpp:691
+#: LabelDialog.cpp:704
msgid "Enter track name"
-msgstr ""
+msgstr "Vložte názov stopy"
-#: LabelDialog.cpp:692 LabelDialog.h:50 LabelTrack.cpp:87 Menus.cpp:645
-#, fuzzy
+#: LabelDialog.cpp:705
+#: LabelDialog.h:52
+#: LabelTrack.cpp:89
+#: Menus.cpp:634
msgid "&Label Track"
-msgstr "Popisná (Label) stopa"
+msgstr "&Popis stopy"
-#: ../src/LangChoice.cpp:47
+#: LangChoice.cpp:57
msgid "Audacity First Run"
msgstr "Prvé spustenie Audacity"
-#: ../src/LangChoice.cpp:74
+#: LangChoice.cpp:89
msgid "Choose Language for Audacity to use:"
msgstr "Zvoľte jazyk pre Audacity:"
-#: ../src/Legacy.cpp:337
+#: Legacy.cpp:356
#, c-format
-msgid "Converted a 1.0 project file to the new format.\n"
+msgid ""
+"Converted a 1.0 project file to the new format.\n"
"The old file has been saved as '%s'"
-msgstr "Skonvertovaný súbor projektu z Audacity 1.0 do nového formátu.\n"
-"Starý súbor bol uložený ako '%s'."
+msgstr ""
+"Skonvertovaný súbor projektu z Audacity 1.0 do nového formátu.\n"
+"Starý súbor bol uložený ako '%s'"
-#: ../src/Legacy.cpp:338
+#: Legacy.cpp:357
msgid "Opening Audacity Project"
msgstr "Otváram Audacity projekt"
-#: ../src/Menus.cpp:139
+#: Menus.cpp:195
msgid "&File"
msgstr "&Súbor"
-#: ../src/Menus.cpp:141
+#: Menus.cpp:197
msgid "&New\tCtrl+N"
msgstr "&Nový\tCtrl+N"
-#: ../src/Menus.cpp:143
+#: Menus.cpp:199
msgid "&Open...\tCtrl+O"
msgstr "&Otvoriť...\tCtrl+O"
-#: ../src/Menus.cpp:145
+#: Menus.cpp:204
msgid "&Close\tCtrl+W"
msgstr "&Zavrieť\tCtrl+W"
-#: ../src/Menus.cpp:146
+#: Menus.cpp:207
msgid "&Save Project\tCtrl+S"
msgstr "&Uložiť projekt\tCtrl+S"
-#: ../src/Menus.cpp:150
+#: Menus.cpp:211
+#: Project.cpp:3071
msgid "Save Project &As..."
msgstr "Uložiť projekt &ako..."
-#: Menus.cpp:212
+#: Menus.cpp:213
msgid "Save Compressed Copy of Project..."
-msgstr ""
+msgstr "Uložiť komprimovanú kópiu projektu..."
-#: Menus.cpp:223
+#: Menus.cpp:217
msgid "Chec&k Dependencies..."
-msgstr ""
+msgstr "S&kontrolovať závislosti..."
-#: Menus.cpp:185
+#: Menus.cpp:223
msgid "Open Me&tadata Editor..."
-msgstr ""
+msgstr "Otvoriť editor me&tadát..."
-#: import/ImportRaw.cpp:447
+#: Menus.cpp:230
+#: import/ImportRaw.cpp:414
msgid "&Import"
-msgstr ""
+msgstr "&Vstup"
-#: Menus.cpp:236
+#: Menus.cpp:232
msgid "&Audio...\tCtrl+Shift+I"
-msgstr ""
+msgstr "&Audio...\tCtrl+Shift+I"
-#: Menus.cpp:237
+#: Menus.cpp:233
msgid "&Labels..."
-msgstr ""
+msgstr "&Popisy..."
-#: Menus.cpp:238
+#: Menus.cpp:235
msgid "&MIDI..."
-msgstr ""
+msgstr "&MIDI..."
-#: Menus.cpp:239
+#: Menus.cpp:237
msgid "&Raw Data..."
-msgstr ""
+msgstr "&Nespracované dáta (Raw Data) ..."
-#: Menus.cpp:208 Menus.cpp:237
+#: Menus.cpp:248
+#: Menus.cpp:283
msgid "Expo&rt Selection..."
-msgstr ""
+msgstr "Expo&rtovať výber..."
-#: ../src/Menus.cpp:173
+#: Menus.cpp:255
msgid "Export &Labels..."
-msgstr "Exportovať &popisy (Labels)..."
+msgstr "Exportovať &popisy..."
-#: ../src/Menus.cpp:174
+#: Menus.cpp:256
msgid "Export &Multiple..."
msgstr "Exportovať &viac súborov..."
-#: Menus.cpp:257
+#: Menus.cpp:258
msgid "Export MIDI..."
-msgstr ""
+msgstr "Exportovať MIDI..."
-#: Menus.cpp:290
+#: Menus.cpp:291
msgid "CleanSpeech C&hain..."
-msgstr ""
+msgstr "Sada &prÃkazov CleanSpeech..."
-#: Menus.cpp:340 Menus.cpp:354
+#: Menus.cpp:292
+#: Menus.cpp:306
msgid "Edit C&hains..."
-msgstr ""
+msgstr "Upra&viÅ¥ sady prÃkazov..."
-#: Menus.cpp:292
+#: Menus.cpp:293
msgid "Export CleanSpeech &Presets..."
-msgstr ""
+msgstr "Exportovať &predvoľby CleanSpeech..."
-#: Menus.cpp:293
+#: Menus.cpp:294
msgid "I&mport CleanSpeech Presets..."
-msgstr ""
+msgstr "I&mportovať predvoľby CleanSpeech..."
-#: Menus.cpp:352
+#: Menus.cpp:304
msgid "Appl&y Chain..."
-msgstr ""
+msgstr "&PoužiÅ¥ sadu prÃkazov..."
-#: Menus.cpp:358
+#: Menus.cpp:311
msgid "&Upload File..."
-msgstr ""
+msgstr "&Navráť súbor..."
-#: Menus.cpp:363
-#, fuzzy
+#: Menus.cpp:317
msgid "Pa&ge Setup..."
-msgstr "Formát stránky..."
+msgstr "For&mát stránky..."
-#: Menus.cpp:364
+#: Menus.cpp:318
msgid "&Print..."
-msgstr ""
+msgstr "&TlaÄ..."
-#: Menus.cpp:382 Menus.cpp:385
+#: Menus.cpp:331
msgid "E&xit\tCtrl+Q"
-msgstr ""
+msgstr "&UkonÄiÅ¥ program\tCtrl+Q"
-#: ../src/Menus.cpp:227
+#: Menus.cpp:339
+#: toolbars/EditToolBar.cpp:76
msgid "&Edit"
-msgstr "Ãpr&avy"
+msgstr "&Ãpravy"
-#: ../src/Menus.cpp:231
+#: Menus.cpp:343
msgid "&Undo\tCtrl+Z"
msgstr "&Späť\tCtrl+Z"
-#: ../src/Menus.cpp:239
+#: Menus.cpp:351
+#: prefs/KeyConfigPrefs.cpp:384
+#: toolbars/EditToolBar.cpp:146
msgid "&Redo"
msgstr "&Znovu"
-#: ../src/Menus.cpp:252
+#: Menus.cpp:364
msgid "Cu&t\tCtrl+X"
-msgstr "VyÅaÅ¥\tCtrl+X"
+msgstr "&Vystrihnúť\tCtrl+X"
-#: Menus.cpp:420
+#: Menus.cpp:368
msgid "Spl&it Cut\tCtrl+Alt+X"
-msgstr ""
+msgstr "Rozdel&iť a vystrihnúť\tCtrl+Alt+X"
-#: ../src/Menus.cpp:253
+#: Menus.cpp:369
msgid "&Copy\tCtrl+C"
msgstr "&KopÃrovaÅ¥\tCtrl+C"
-#: ../src/Menus.cpp:254
+#: Menus.cpp:373
msgid "&Paste\tCtrl+V"
msgstr "&Vložiť\tCtrl+V"
-#: Menus.cpp:426
+#: Menus.cpp:377
msgid "Tri&m\tCtrl+T"
-msgstr ""
+msgstr "Ore&zať\tCtrl+T"
-#: ../src/Menus.cpp:260
+#: Menus.cpp:379
msgid "&Delete\tCtrl+K"
msgstr "&Zmazať\tCtrl+K"
-#: Menus.cpp:429
+#: Menus.cpp:380
msgid "Split D&elete\tCtrl+Alt+K"
-msgstr ""
+msgstr "R&ozdeliť a vymazať\tCtrl+Alt+K"
-#: Menus.cpp:380
+#: Menus.cpp:381
msgid "Silence Audi&o\tCtrl+L"
-msgstr ""
+msgstr "UmlÄaÅ¥ Audi&o\tCtrl+L"
-#: Menus.cpp:432
+#: Menus.cpp:383
msgid "Sp&lit\tCtrl+I"
-msgstr ""
+msgstr "Rozdeliť\tCtrl+I"
-#: Menus.cpp:342
+#: Menus.cpp:388
msgid "Split Ne&w\tCtrl+Alt+I"
-msgstr ""
+msgstr "Rozdeliť a &nový\tCtrl+Alt+I"
-#: Menus.cpp:442
+#: Menus.cpp:393
msgid "&Join\tCtrl+J"
-msgstr ""
+msgstr "Spo&jiť\tCtrl+J"
-#: Menus.cpp:393
+#: Menus.cpp:394
msgid "Detac&h at Silences\tCtrl+Alt+J"
-msgstr ""
+msgstr "UvoľniÅ¥ na umlÄanie\tCtrl+Alt+J"
-#: Menus.cpp:445
+#: Menus.cpp:395
msgid "Duplic&ate\tCtrl+D"
-msgstr ""
+msgstr "Duplikov&ať\tCtrl+D"
-#: Menus.cpp:400 Menus.cpp:639
+#: Menus.cpp:401
+#: Menus.cpp:641
msgid "Stereo Trac&k to Mono"
-msgstr ""
+msgstr "Stereo &Stopa na Mono"
-#: Menus.cpp:407
+#: Menus.cpp:408
msgid "La&beled Regions"
-msgstr ""
+msgstr "Popisané o&blasti"
#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:460
+#: Menus.cpp:410
msgid "&Cut\tAlt+X"
-msgstr ""
+msgstr "&Vystrihnúť\tAlt+X"
#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:465
+#: Menus.cpp:415
msgid "&Split Cut\tShift+Alt+X"
-msgstr ""
+msgstr "&Rozdeliť a vystrihnúť\tShift+Alt+X"
#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:470
+#: Menus.cpp:420
msgid "Co&py\tShift+Alt+C"
-msgstr ""
+msgstr "Ko&pÃrovaÅ¥\tShift+Alt+C"
#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:476
+#: Menus.cpp:426
msgid "&Delete\tAlt+K"
-msgstr ""
+msgstr "&Vymazať\tAlt+K"
#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:481
+#: Menus.cpp:431
msgid "Sp&lit Delete\tShift+Alt+K"
-msgstr ""
+msgstr "Rozdeliť a vymazať\tShift+Alt+K"
#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:486
+#: Menus.cpp:436
msgid "Sile&nce\tAlt+L"
-msgstr ""
+msgstr "Tich&o\tAlt+L"
#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:492
+#: Menus.cpp:442
msgid "Spli&t\tAlt+I"
-msgstr ""
+msgstr "Rozdeli&Å¥\tAlt+I"
#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:497
+#: Menus.cpp:447
msgid "&Join\tAlt+J"
-msgstr ""
+msgstr "Spo&jiť\tAlt+J"
#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
+#: Menus.cpp:452
msgid "Detac&h at Silences\tShift+Alt+J"
-msgstr ""
+msgstr "UvoľniÅ¥ na umlÄanie\tShift+Alt+J"
-#: Menus.cpp:456
+#: Menus.cpp:457
msgid "&Select"
-msgstr ""
+msgstr "&Vybrať"
-#: ../src/Menus.cpp:269
+#: Menus.cpp:458
msgid "&All\tCtrl+A"
-msgstr "VÅ¡&etko\tCtrl+A"
+msgstr "&Všetko\tCtrl+A"
-#: Menus.cpp:415
+#: Menus.cpp:459
msgid "&None\tCtrl+Shift+A"
-msgstr ""
+msgstr "&NiÄ\tCtrl+Shift+A"
-#: Menus.cpp:462
+#: Menus.cpp:463
msgid "&Left at Playback Position\t["
-msgstr ""
+msgstr "&Ľavá na pozÃciu prehrávania\t["
-#: Menus.cpp:463
+#: Menus.cpp:464
msgid "&Right at Playback Position\t]"
-msgstr ""
+msgstr "&Pravá na pozÃciu prehrávania\t]"
-#: Menus.cpp:467
+#: Menus.cpp:468
msgid "Track &Start to Cursor\tShift+J"
-msgstr ""
+msgstr "Kurzor na zaÄiatok &stopy \tShift+J"
-#: Menus.cpp:468
+#: Menus.cpp:469
msgid "Cursor to Track &End\tShift+K"
-msgstr ""
+msgstr "Kurzor na &koniec stopy\tShift+K"
-#: Menus.cpp:525
-#, fuzzy
+#: Menus.cpp:475
msgid "Find &Zero Crossings\tZ"
-msgstr "NájsÅ¥ prieseÄnÃky s nulou\tZ"
+msgstr "NájsÅ¥ prieseÄnÃky s &nulou\tZ"
-#: Menus.cpp:476
+#: Menus.cpp:478
msgid "Mo&ve Cursor"
-msgstr ""
+msgstr "Pre&sunúť kurzor"
-#: Menus.cpp:478
-#, fuzzy
+#: Menus.cpp:480
msgid "to Selection Star&t"
-msgstr "na zaÄiatok výberu"
+msgstr "na &zaÄiatok výberu"
-#: Menus.cpp:479
-#, fuzzy
+#: Menus.cpp:481
msgid "to Selection En&d"
-msgstr "na koniec výberu"
+msgstr "na &koniec výberu"
-#: Menus.cpp:483
+#: Menus.cpp:485
msgid "to Track &Start\tJ"
-msgstr ""
+msgstr "na &zaÄiatok stopy\tJ"
-#: Menus.cpp:484
+#: Menus.cpp:486
msgid "to Track &End\tK"
-msgstr ""
+msgstr "na &koniec stopy\tK"
-#: Menus.cpp:491
+#: Menus.cpp:493
msgid "Re&gion Save"
-msgstr ""
+msgstr "&Uložiť výber"
-#: Menus.cpp:492
+#: Menus.cpp:494
msgid "Regio&n Restore"
-msgstr ""
+msgstr "Obnoviť výbe&r"
-#: Menus.cpp:503
+#: Menus.cpp:505
msgid "Pla&y Region"
-msgstr ""
+msgstr "Pre&hrať oblasť"
-#: Menus.cpp:504
+#: Menus.cpp:506
msgid "&Lock"
-msgstr ""
+msgstr "&Zamknúť "
-#: Menus.cpp:505
+#: Menus.cpp:507
msgid "&Unlock"
-msgstr ""
+msgstr "&Odomknúť"
-#: ../src/Menus.cpp:311
+#: Menus.cpp:513
msgid "Turn Snap-To On"
msgstr "Polohovať"
-#: ../src/Menus.cpp:312
+#: Menus.cpp:514
msgid "Turn Snap-To Off"
msgstr "Nepolohovať"
-#: ../src/Menus.cpp:313
+#: Menus.cpp:515
msgid "Turn Grid Snap On"
-msgstr "Zapnúť polohovanie k mriežke"
+msgstr "Zapnúť polohovanie mriežky"
-#: ../src/Menus.cpp:314
+#: Menus.cpp:516
msgid "Turn Grid Snap Off"
-msgstr "Vypnúť polohovanie k mriežke"
+msgstr "Vypnúť polohovanie mriežky"
#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
-#: Menus.cpp:519
+#: Menus.cpp:521
msgid "Pre&ferences...\tCtrl+,"
-msgstr ""
+msgstr "&Predvoľby...\tCtrl+,"
-#: Menus.cpp:523
+#: Menus.cpp:525
msgid "Pre&ferences...\tCtrl+P"
-msgstr ""
+msgstr "&Predvoľby...\tCtrl+P"
-#: ../src/Menus.cpp:345
+#: Menus.cpp:535
msgid "&View"
msgstr "&Zobraziť"
-#: ../src/Menus.cpp:347
+#: Menus.cpp:537
msgid "Zoom &In\tCtrl+1"
-msgstr "Z&väÄÅ¡iÅ¥\tCtrl+1"
+msgstr "&ZväÄÅ¡iÅ¥\tCtrl+1"
-#: ../src/Menus.cpp:350
+#: Menus.cpp:540
msgid "Zoom &Normal\tCtrl+2"
msgstr "&Normálna veľkosť\tCtrl+2"
-#: ../src/Menus.cpp:351
+#: Menus.cpp:541
msgid "Zoom &Out\tCtrl+3"
-msgstr "Z&menšiť\tCtrl+3"
+msgstr "&Zmenšiť\tCtrl+3"
-#: ../src/Menus.cpp:354
+#: Menus.cpp:544
msgid "&Fit in Window\tCtrl+F"
msgstr "&Prispôsobiť oknu\tCtrl+F"
-#: ../src/Menus.cpp:355
+#: Menus.cpp:545
msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "PrispôsobiÅ¥ Å¡Ãr&ke okna\tCtrl+Shift+F"
+msgstr "PrispôsobiÅ¥ &Å¡Ãrke okna\tCtrl+Shift+F"
-#: ../src/Menus.cpp:356
+#: Menus.cpp:546
msgid "&Zoom to Selection\tCtrl+E"
msgstr "&ZväÄÅ¡iÅ¥ podľa výberu\tCtrl+E"
-#: Menus.cpp:603
+#: Menus.cpp:549
msgid "&Collapse All Tracks\tCtrl+Shift+C"
-msgstr ""
+msgstr "Zbaliť všetky &stopy\tCtrl+Shift+C"
-#: Menus.cpp:604
+#: Menus.cpp:550
msgid "E&xpand All Tracks\tCtrl+Shift+X"
-msgstr ""
+msgstr "&Rozbaliť všetky stopy\tCtrl+Shift+X"
-#: Menus.cpp:551
+#: Menus.cpp:553
msgid "&Show Clipping"
-msgstr ""
+msgstr "&Ukázať výstrižok"
-#: ../src/Menus.cpp:364
+#: Menus.cpp:562
msgid "&History..."
-msgstr "&História"
+msgstr "&História..."
-#: Menus.cpp:566
+#: Menus.cpp:568
msgid "&Toolbars"
-msgstr ""
+msgstr "Panel nás&trojov"
-#: Menus.cpp:567
+#: Menus.cpp:569
msgid "&Control Toolbar"
-msgstr ""
+msgstr "&Ovládacà panel"
-#: Menus.cpp:568
+#: Menus.cpp:570
msgid "&Device Toolbar"
-msgstr ""
+msgstr "&Panel zariadenÃ"
-#: Menus.cpp:569
+#: Menus.cpp:571
msgid "&Edit Toolbar"
-msgstr ""
+msgstr "&Panel úprav"
-#: Menus.cpp:570
+#: Menus.cpp:572
msgid "&Meter Toolbar"
-msgstr ""
+msgstr "&Meracà panel"
-#: Menus.cpp:571
+#: Menus.cpp:573
msgid "Mi&xer Toolbar"
-msgstr ""
+msgstr "Mi&xážny panel"
-#: Menus.cpp:572
+#: Menus.cpp:574
msgid "&Selection Toolbar"
-msgstr ""
+msgstr "&Výberový panel"
-#: Menus.cpp:573
+#: Menus.cpp:575
msgid "T&ools Toolbar"
-msgstr ""
+msgstr "P&anel nástrojov"
-#: Menus.cpp:574
+#: Menus.cpp:576
msgid "Transcri&ption Toolbar"
-msgstr ""
+msgstr "Pre&pisovacà panel"
-#: Menus.cpp:576
+#: Menus.cpp:578
msgid "&Reset Toolbars"
-msgstr ""
+msgstr "&Obnoviť panely"
-#: Menus.cpp:578
+#: Menus.cpp:580
msgid "!Simplified View"
-msgstr ""
+msgstr "!Zjednodušený pohľad"
#. i18n-hint: 'Transport' is the name given to the set of controls that
#. play, record, pause etc.
-#: Menus.cpp:587
+#: Menus.cpp:589
msgid "T&ransport"
-msgstr ""
+msgstr "T&ransportovať"
#: Menus.cpp:591
msgid "Play\tSpace"
-msgstr ""
+msgstr "PrehraÅ¥\tMedzernÃk"
#: Menus.cpp:593
msgid "&Loop Play\tShift+Space"
-msgstr ""
+msgstr "PrehraÅ¥ v s&luÄke\tShift+MedzernÃk"
-#: Menus.cpp:593
+#: Menus.cpp:595
msgid "&Pause\tP"
-msgstr ""
+msgstr "Pozastaviť\tP"
#: Menus.cpp:596
msgid "&Stop\tSpace"
-msgstr ""
+msgstr "&Stop\tMedzernÃk"
-#: ../src/Menus.cpp:569
+#: Menus.cpp:597
+#: Menus.cpp:1008
msgid "Skip to Start\tHome"
msgstr "PreskoÄiÅ¥ na zaÄiatok\tHome"
-#: ../src/Menus.cpp:570
+#: Menus.cpp:599
+#: Menus.cpp:1009
msgid "Skip to End\tEnd"
msgstr "PreskoÄiÅ¥ na koniec\tEnd"
-#: Menus.cpp:600
+#: Menus.cpp:602
msgid "&Record\tR"
-msgstr ""
+msgstr "Nahrávať\tR"
-#: Menus.cpp:602
+#: Menus.cpp:604
msgid "&Timer Record...\tShift+T"
-msgstr ""
+msgstr "&Äasové nahrávanie...\tShift+T"
-#: Menus.cpp:604
+#: Menus.cpp:606
msgid "Append Record\tShift+R"
-msgstr ""
+msgstr "Pridať nahrávku\tShift+R"
-#: Menus.cpp:607
+#: Menus.cpp:609
msgid "Overdub (on/off)"
-msgstr ""
+msgstr "Overdub (on/off)"
-#: Menus.cpp:609
+#: Menus.cpp:611
msgid "Software Playthrough (on/off)"
-msgstr ""
+msgstr "Software Prehrávania (on/off)"
-#: Menus.cpp:612
+#: Menus.cpp:614
msgid "Sound Activated Recording (on/off)"
-msgstr ""
+msgstr "Zvukom Aktivované Nahrávanie (on/off)"
-#: Menus.cpp:614
+#: Menus.cpp:616
msgid "Sound Activation Level..."
-msgstr ""
+msgstr "AktivaÄná úroveÅ zvuku..."
-#: Menus.cpp:635
+#: Menus.cpp:624
msgid "&Tracks"
-msgstr ""
+msgstr "S&topy"
-#: Menus.cpp:629
+#: Menus.cpp:631
msgid "Add &New"
-msgstr ""
+msgstr "Pridať &Novú"
-#: Menus.cpp:643
+#: Menus.cpp:632
msgid "&Audio Track\tCtrl+Shift+N"
-msgstr ""
+msgstr "&Zvuková stopa\tCtrl+Shift+N"
-#: Menus.cpp:644
+#: Menus.cpp:633
msgid "&Stereo Track"
-msgstr ""
+msgstr "&Stereo stopa"
-#: Menus.cpp:646 TimeTrack.cpp:44
-#, fuzzy
+#: Menus.cpp:635
+#: TimeTrack.cpp:44
msgid "&Time Track"
-msgstr "Äasová stopa"
+msgstr "&Äasová stopa"
-#: Menus.cpp:643
+#: Menus.cpp:645
msgid "Mi&x and Render"
-msgstr ""
+msgstr "Mi&xovať a vykresliť"
-#: Menus.cpp:564
+#: Menus.cpp:649
msgid "Mix and Render to New Track\tCtrl+Shift+M"
-msgstr ""
+msgstr "Zmixovať a vykresliť do novej stopy\tCtrl+Shift+M"
-#: Menus.cpp:662
+#: Menus.cpp:653
msgid "&Resample..."
-msgstr ""
+msgstr "&Prevzorkovať..."
-#: ../src/Menus.cpp:398
+#: Menus.cpp:663
msgid "Remo&ve Tracks"
-msgstr "&Odstrániť stopu(y)"
+msgstr "&Odstrániť stopy"
-#: Menus.cpp:667
+#: Menus.cpp:669
msgid "&Mute All Tracks\tCtrl+U"
-msgstr ""
+msgstr "&Stlmiť všetky stopy\tCtrl+U"
-#: Menus.cpp:668
+#: Menus.cpp:670
msgid "&UnMute All Tracks\tCtrl+Shift+U"
-msgstr ""
+msgstr "&Zosilniť všetky stopy\tCtrl+Shift+U"
-#: ../src/Menus.cpp:405
+#: Menus.cpp:674
msgid "Align with &Zero"
-msgstr "Zarovnať na n&ulu"
+msgstr "Zarovnať na &nulu"
-#: ../src/Menus.cpp:406
+#: Menus.cpp:675
msgid "Align with &Cursor"
msgstr "Zarovnať na &kurzor"
-#: ../src/Menus.cpp:407
+#: Menus.cpp:676
msgid "Align with Selection &Start"
msgstr "ZarovnaÅ¥ na &zaÄiatok výberu"
-#: ../src/Menus.cpp:408
+#: Menus.cpp:677
msgid "Align with Selection &End"
msgstr "Zarovnať na koniec &výberu"
-#: Menus.cpp:676
-#, fuzzy
+#: Menus.cpp:678
msgid "Align End with Cu&rsor"
-msgstr "Zarovnať koniec na kurzor"
+msgstr "Zarovnať koniec s &kurzorom"
-#: Menus.cpp:677
-#, fuzzy
+#: Menus.cpp:679
msgid "Align End with Selection Star&t"
-msgstr "ZarovnaÅ¥ koniec na zaÄiatok výberu"
+msgstr "ZarovnaÅ¥ koniec so &zaÄiatkom výberu"
-#: Menus.cpp:678
-#, fuzzy
+#: Menus.cpp:680
msgid "Align End with Selection En&d"
-msgstr "Zarovnať koniec na koniec výberu"
+msgstr "Zarovnať koniec s &koncom výberu"
-#: Menus.cpp:679
-#, fuzzy
+#: Menus.cpp:681
msgid "Align Tracks To&gether"
-msgstr "Zarovnať stopy navzájom "
+msgstr "Zarovnať stopy &navzájom"
-#: Menus.cpp:681
+#: Menus.cpp:683
msgid "&Align Tracks"
-msgstr ""
+msgstr "Z&arovnať stopy"
-#: Menus.cpp:690
+#: Menus.cpp:692
msgid "Ali&gn and Move Cursor"
-msgstr ""
+msgstr "Za&rovnať a presunúť kurzor"
-#: Menus.cpp:697
+#: Menus.cpp:699
msgid "Synchronize MIDI with Audio"
-msgstr ""
-
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
-msgstr ""
+msgstr "Synchronizovať MIDI s Audiom"
-#: Menus.cpp:705
-#, fuzzy
+#: Menus.cpp:707
msgid "Add &Label At Selection\tCtrl+B"
-msgstr "Vložiť popisku k výberu\tCtrl+B"
+msgstr "Vložiť p&opis k výberu\tCtrl+B"
-#: Menus.cpp:706
-#, fuzzy
+#: Menus.cpp:708
msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "VložiÅ¥ popis na pozÃciu prehrávania\tCtrl+B"
+msgstr "VložiÅ¥ popis na pozÃciu &prehrávania\tCtrl+M"
-#: Menus.cpp:716
+#: Menus.cpp:714
msgid "S&ort tracks"
-msgstr ""
+msgstr "Z&oradiť stopy"
-#: Menus.cpp:717
+#: Menus.cpp:715
msgid "by &Start time"
-msgstr ""
+msgstr "podľa &ZaÄiatoÄného Äasu"
-#: Menus.cpp:719
+#: Menus.cpp:717
msgid "by &Name"
-msgstr ""
+msgstr "podľa &Názvu"
-#: ../src/Menus.cpp:441
+#: Menus.cpp:728
msgid "&Generate"
msgstr "&Generovať"
-#: Menus.cpp:776 Menus.cpp:860 Menus.cpp:922
+#: Menus.cpp:774
+#: Menus.cpp:858
+#: Menus.cpp:920
msgid "Unsorted"
-msgstr ""
+msgstr "Netriedené"
-#: ../src/Menus.cpp:464
+#: Menus.cpp:793
msgid "Effe&ct"
msgstr "Efe&kty"
-#: ../src/Menus.cpp:468
+#: Menus.cpp:797
msgid "Repeat Last Effect\tCtrl+R"
msgstr "Opakovať predchádzajúci efekt\tCtrl+R"
-#: ../src/Menus.cpp:494
+#: Menus.cpp:875
msgid "&Analyze"
msgstr "&Analyzovať"
-#: Menus.cpp:692
+#: Menus.cpp:877
msgid "Plot Spectrum..."
-msgstr ""
+msgstr "Vykresliť spektrum..."
-#. i18n-hint: The name of the Help menu
-#: ../src/Menus.cpp:524
-#: ../src/Menus.cpp:540
+#: Menus.cpp:945
+#: Menus.cpp:948
msgid "&Help"
msgstr "&Nápoveda"
-#: Menus.cpp:829
+#: Menus.cpp:951
msgid "&About Audacity CleanSpeech..."
-msgstr ""
+msgstr "&O Äistenà hovoreného slova Audacity CleanSpeech..."
-#: Menus.cpp:735
+#: Menus.cpp:955
msgid "&Show Welcome Message..."
-msgstr ""
+msgstr "&ZobraziÅ¥ uvÃtaciu správu..."
-#: Menus.cpp:736
+#: Menus.cpp:956
msgid "&Index..."
-msgstr ""
+msgstr "&Index..."
-#: Menus.cpp:959
+#: Menus.cpp:957
msgid "Show &Log..."
-msgstr ""
+msgstr "Zobraziť prih&lásenie..."
-#: Menus.cpp:744
+#: Menus.cpp:965
msgid "&Screenshot Tools..."
-msgstr ""
+msgstr "&Nástroje pre snÃmkovacie obrázky..."
-#: ../src/Menus.cpp:533
+#: Menus.cpp:968
msgid "&Run Benchmark..."
-msgstr "Spustiť benchma&rk..."
+msgstr "Spustiť Benchma&rk..."
-#: Menus.cpp:749
+#: Menus.cpp:970
msgid "&Audio Device Info..."
-msgstr ""
+msgstr "&Informácie o zvukovom zariadenÃ..."
-#: Menus.cpp:983
+#: Menus.cpp:979
msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
-msgstr ""
+msgstr "Cyklus späť cez panel nástrojov a pohľad na stopu\tCtrl+Shift+F6"
-#: Menus.cpp:984
+#: Menus.cpp:980
msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
-msgstr ""
+msgstr "Cyklus späť cez panel nástrojov a pohľad na stopu\tCtrl+F6"
-#: ../src/Menus.cpp:549
+#: Menus.cpp:983
msgid "Selection Tool\tF1"
msgstr "Výber\tF1"
-#: ../src/Menus.cpp:550
+#: Menus.cpp:984
msgid "Envelope Tool\tF2"
msgstr "Obálka\tF2"
-#: ../src/Menus.cpp:551
+#: Menus.cpp:985
msgid "Draw Tool\tF3"
msgstr "Kreslenie\tF3"
-#: ../src/Menus.cpp:552
+#: Menus.cpp:986
msgid "Zoom Tool\tF4"
msgstr "Lupa\tF4"
-#: ../src/Menus.cpp:553
+#: Menus.cpp:987
msgid "Time Shift Tool\tF5"
msgstr "Äasový posun\tF5"
-#: ../src/Menus.cpp:554
+#: Menus.cpp:988
msgid "Multi Tool\tF6"
msgstr "Viacnásobný režim\tF6"
-#: ../src/Menus.cpp:556
+#: Menus.cpp:990
msgid "Next Tool\tD"
msgstr "Äalšà nástroj\tD"
-#: ../src/Menus.cpp:557
+#: Menus.cpp:991
msgid "Previous Tool\tA"
msgstr "Predchádzajúci nástroj\tA"
-#: Menus.cpp:997
+#: Menus.cpp:993
msgid "Play/Stop\tSpace"
-msgstr ""
+msgstr "Prehrať/Zastaviť\tSpace"
-#: ../src/Menus.cpp:560
+#: Menus.cpp:994
msgid "Stop\tS"
msgstr "Stop\tS"
-#: ../src/Menus.cpp:561
+#: Menus.cpp:995
msgid "Pause\tP"
-msgstr "Zastaviť (Pause)\tP"
+msgstr "Pozastaviť\tP"
-#: ../src/Menus.cpp:562
+#: Menus.cpp:996
msgid "Record\tR"
-msgstr "Nahrávat\tR"
+msgstr "Nahrávať\tR"
-#: Menus.cpp:999
+#: Menus.cpp:997
msgid "Record Append\tShift+R"
-msgstr ""
+msgstr "Pridať nahrávku\tShift+R"
-#: Menus.cpp:1001
+#: Menus.cpp:999
msgid "Play/Stop and Set Cursor\tShift+A"
-msgstr ""
+msgstr "Prehrať/Zastaviť a nastaviť kurzor\tShift+A"
-#: ../src/Menus.cpp:564
+#: Menus.cpp:1002
msgid "Play One Second\t1"
msgstr "Prehrať jednu sekundu\t1"
-#: ../src/Menus.cpp:565
+#: Menus.cpp:1003
msgid "Play To Selection\tB"
msgstr "Prehrať do výberu\tB"
-#: ../src/Menus.cpp:566
+#: Menus.cpp:1004
msgid "Play Looped\tL"
msgstr "PrehraÅ¥ v sluÄke\tL"
-#: Menus.cpp:1009
+#: Menus.cpp:1005
msgid "Play Looped\tShift+Space"
-msgstr ""
+msgstr "PrehraÅ¥ v sluÄke\tShift+Space"
-#: Menus.cpp:873
+#: Menus.cpp:1006
msgid "Play Cut Preview\tC"
-msgstr ""
+msgstr "Prehrať Vystrihnúť Náhľad\tC"
-#: ../src/Menus.cpp:572
+#: Menus.cpp:1011
msgid "Selection to Start\tShift+Home"
msgstr "RozÅ¡Ãrenie výberu na zaÄiatok\tShift+Home"
-#: ../src/Menus.cpp:573
+#: Menus.cpp:1012
msgid "Selection to End\tShift+End"
msgstr "OznaÄiÅ¥ do konca\tShift+End"
-#: ../src/Menus.cpp:575
+#: Menus.cpp:1014
msgid "DeleteKey\tBackspace"
-msgstr "KlávesaMazania\tBackspace"
+msgstr "KlávesaDelete\tBackspace"
-#: ../src/Menus.cpp:580
+#: Menus.cpp:1019
msgid "DeleteKey2\tDelete"
-msgstr "KlávesaMazania\tDelete"
+msgstr "KlávesaDelete2\tDelete"
-#: Menus.cpp:892
+#: Menus.cpp:1025
msgid "Seek left short period during playback\tLeft"
-msgstr ""
+msgstr "Hľadajte vľavo krátke obdobie poÄas prehrávania\tLeft"
-#: Menus.cpp:893
+#: Menus.cpp:1026
msgid "Seek right short period during playback\tRight"
-msgstr ""
+msgstr "Hľadajte vprávo krátke obdobie poÄas prehrávania\tRight"
-#: Menus.cpp:894
+#: Menus.cpp:1027
msgid "Seek left long period during playback\tShift+Left"
-msgstr ""
+msgstr "Hľadajte vľavo dlhé obdobie, poÄas prehrávania\tShift+Left"
-#: Menus.cpp:895
+#: Menus.cpp:1028
msgid "Seek right long period during playback\tShift+Right"
-msgstr ""
+msgstr "Hľadajte vprávo dlhé obdobie, poÄas prehrávania\tShift+Right"
-#: Menus.cpp:899
+#: Menus.cpp:1032
msgid "Move Focus to Previous Track\tUp"
-msgstr ""
+msgstr "Predchádzajúca stopa ako aktÃvna\tUp"
-#: Menus.cpp:900
+#: Menus.cpp:1033
msgid "Move Focus to Previous and Change Selection\tShift+Up"
-msgstr ""
+msgstr "Predchádzajúca stopa ako aktÃvna a zmeniÅ¥ výber\tShift+Up"
-#: Menus.cpp:901
+#: Menus.cpp:1034
msgid "Move Focus to Next Track\tDown"
-msgstr ""
+msgstr "Následujúca stopa ako aktÃvna\tDown"
-#: Menus.cpp:902
+#: Menus.cpp:1035
msgid "Move Focus to Next and Change Selection\tShift+Down"
-msgstr ""
+msgstr "Následujúca stopa ako aktÃvna a zmeniÅ¥ výber\tShift+Down"
-#: Menus.cpp:903
+#: Menus.cpp:1036
msgid "Toggle Focused Track\tReturn"
-msgstr ""
+msgstr "Prepnúť vybranú stopu\tReturn"
-#: Menus.cpp:904
+#: Menus.cpp:1037
msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr ""
+msgstr "Prepnúť vybranú stopu\tNUMPAD_ENTER"
-#: Menus.cpp:1042
+#: Menus.cpp:1038
msgid "Toggle Focused Track\tCtrl+Space"
-msgstr ""
+msgstr "Prepnúť vybranú stopu\tCtrl+Space"
-#: ../src/Menus.cpp:585
+#: Menus.cpp:1040
msgid "Cursor Left\tLeft"
msgstr "Kurzor doľava\tLeft"
-#: ../src/Menus.cpp:586
+#: Menus.cpp:1041
msgid "Cursor Right\tRight"
-msgstr "Kurzor doľava\tÅ¡Ãpka vľavo"
+msgstr "Kurzor doprava\tRight"
-#: Menus.cpp:820
+#: Menus.cpp:1042
msgid "Cursor Short Jump Left\t,"
-msgstr ""
+msgstr "Kurzor vľavo skok krátky\t,"
-#: Menus.cpp:821
+#: Menus.cpp:1043
msgid "Cursor Short Jump Right\t."
-msgstr ""
+msgstr "Kurzor vpravo skok krátky\t."
-#: Menus.cpp:822
+#: Menus.cpp:1044
msgid "Cursor Long Jump Left\tShift+,"
-msgstr ""
+msgstr "Kurzor vľavo skok Äaleký\tShift+,"
-#: Menus.cpp:823
+#: Menus.cpp:1045
msgid "Cursor Long Jump Right\tShift+."
-msgstr ""
+msgstr "Kurzor vpravo skok Äaleký\tShift+."
-#: ../src/Menus.cpp:587
+#: Menus.cpp:1047
msgid "Selection Extend Left\tShift+Left"
-msgstr "RozÅ¡Ãrenie výberu doľava\tShitf+Å Ãpka vľavo"
+msgstr "RozÅ¡Ãrenie výberu doľava\tShitf+Left"
-#: ../src/Menus.cpp:588
+#: Menus.cpp:1048
msgid "Selection Extend Right\tShift+Right"
-msgstr "RozÅ¡Ãrenie výberu doprava\tShift+Å Ãpka vpravo"
+msgstr "RozÅ¡Ãrenie výberu doprava\tShift+Right"
-#: Menus.cpp:828
+#: Menus.cpp:1050
msgid "Set (or Extend) Left Selection"
-msgstr ""
+msgstr "Nastaviť (alebo posunúť) ľavú hranicu výberu"
-#: Menus.cpp:829
+#: Menus.cpp:1051
msgid "Set (or Extend) Right Selection"
-msgstr ""
+msgstr "Nastaviť (alebo posunúť) pravú hranicu výberu"
-#: ../src/Menus.cpp:589
+#: Menus.cpp:1053
msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "ZmenÅ¡enie výberu zľeva\tCtrl+Shift+Å Ãpka vpravo"
+msgstr "Zmenšenie výberu zľava\tCtrl+Shift+Right"
-#: ../src/Menus.cpp:590
+#: Menus.cpp:1054
msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "ZmenÅ¡enà výberu sprava\tCtrl+Shift+Å Ãpka vľavo"
+msgstr "Zmenšenie výberu sprava\tCtrl+Shift+Left"
-#: Menus.cpp:916
+#: Menus.cpp:1056
msgid "Change pan on focused track\tShift+P"
-msgstr ""
+msgstr "ZmeniÅ¥ panorámu v aktÃvnej stope\tShift+P"
-#: Menus.cpp:917
+#: Menus.cpp:1057
msgid "Pan left on focused track\tAlt+Shift+Left"
-msgstr ""
+msgstr "Posunúť panorámu v aktÃvnej stope doľava\tAlt+Shift+Left"
-#: Menus.cpp:918
+#: Menus.cpp:1058
msgid "Pan right on focused track\tAlt+Shift+Right"
-msgstr ""
+msgstr "Posunúť panorámu v aktÃvnej stope doprava\tAlt+Shift+Right"
-#: Menus.cpp:919
+#: Menus.cpp:1059
msgid "Change gain on focused track\tShift+G"
-msgstr ""
+msgstr "ZmeniÅ¥ citlivosÅ¥ v aktÃvnej stope\tShift+G"
-#: Menus.cpp:920
+#: Menus.cpp:1060
msgid "Increase gain on focused track\tAlt+Shift+Up"
-msgstr ""
+msgstr "ZväÄÅ¡iÅ¥ citlivosÅ¥ v aktÃvnej stope\tAlt+Shift+Up"
-#: Menus.cpp:921
+#: Menus.cpp:1061
msgid "Decrease gain on focused track\tAlt+Shift+Down"
-msgstr ""
+msgstr "ZmenÅ¡iÅ¥ citlivosÅ¥ v aktÃvnej stope\tAlt+Shift+Down"
-#: Menus.cpp:922
+#: Menus.cpp:1062
msgid "Open menu on focused track\tShift+M"
-msgstr ""
+msgstr "OtvoriÅ¥ menu aktÃvnej stopy\tShift+M"
-#: Menus.cpp:923
+#: Menus.cpp:1063
msgid "Mute/Unmute focused track\tShift+U"
-msgstr ""
+msgstr "StlmiÅ¥ alebo zosilniÅ¥ mlÄanie pre vybranú stopu\tShift+U"
-#: Menus.cpp:924
+#: Menus.cpp:1064
msgid "Solo/Unsolo focused track\tShift+S"
-msgstr ""
+msgstr "Zapnúť alebo vypnúť solo pre vybranú stopu\tShift+S"
-#: Menus.cpp:925
+#: Menus.cpp:1065
msgid "Close focused track\tShift+C"
-msgstr ""
+msgstr "Zavrieť vybranú stopu\tShift+C"
-#: Menus.cpp:845
+#: Menus.cpp:1067
msgid "Snap To On"
-msgstr ""
+msgstr "Zapnúť prelÃnanie"
-#: Menus.cpp:846
+#: Menus.cpp:1068
msgid "Snap To Off"
-msgstr ""
+msgstr "Vypnúť prelÃnanie"
-#: Menus.cpp:1071
+#: Menus.cpp:1069
msgid "Full screen on/off\tF11"
-msgstr ""
+msgstr "Celá obrazovka on/off\tF11"
#. i18n-hint: This is the name of the menu item on Mac OS X only
-#: Menus.cpp:939
+#: Menus.cpp:1151
msgid "Open Recent"
-msgstr ""
+msgstr "Otvoriť posledné"
#. i18n-hint: This is the name of the menu item on Windows and Linux
-#: Menus.cpp:1161
+#: Menus.cpp:1154
msgid "Recent &Files"
-msgstr ""
+msgstr "Nedávne &súbory"
-#: ../src/Menus.cpp:620
+#: Menus.cpp:1203
#, c-format
msgid "&Undo %s"
msgstr "&Späť %s"
-#: ../src/Menus.cpp:626
+#: Menus.cpp:1229
msgid "Can't Undo"
msgstr "Nie je možné vrátiť"
-#: ../src/Menus.cpp:633
+#: Menus.cpp:1238
#, c-format
msgid "&Redo %s"
msgstr "&Znovu %s"
-#: ../src/Menus.cpp:639
+#: Menus.cpp:1244
msgid "Can't Redo"
msgstr "Nie je možné opakovať"
-#: Menus.cpp:1557
+#: Menus.cpp:1859
msgid "Sort By Time"
-msgstr ""
+msgstr "ZoradiÅ¥ podľa Äasu"
-#: Menus.cpp:1557
+#: Menus.cpp:1859
msgid "Tracks sorted by time"
-msgstr ""
+msgstr "Stopy sú zoradené podľa Äasu"
-#: Menus.cpp:1583
+#: Menus.cpp:1885
msgid "Sort By Name"
-msgstr ""
+msgstr "Zoradiť podľa názvu"
-#: Menus.cpp:1583
+#: Menus.cpp:1885
msgid "Tracks sorted by name"
-msgstr ""
+msgstr "Stopy sú zoradené podľa názvu"
-#: Menus.cpp:1710
+#: Menus.cpp:2036
msgid "Set Left Selection Bound"
-msgstr ""
+msgstr "Nastaviť ľavú hranicu výberu"
-#: Menus.cpp:1744
+#: Menus.cpp:2072
msgid "Set Right Selection Bound"
-msgstr ""
+msgstr "Nastaviť pravú hranicu výberu"
-#: ../src/Menus.cpp:1225
+#: Menus.cpp:2342
msgid "You must select a track first."
msgstr "Najskôr musÃte zvoliÅ¥ stopu."
-#: ../src/Menus.cpp:1248
+#: Menus.cpp:2377
#, c-format
msgid "Repeat %s\tCtrl+R"
msgstr "Opakovať %s\tCtrl+R"
-#: ../src/Menus.cpp:1352
+#: Menus.cpp:2520
msgid "There are no label tracks to export."
msgstr "Žiadne popisové stopy na export."
-#: Menus.cpp:2608
+#: Menus.cpp:2615
msgid "Export MIDI As:"
-msgstr ""
+msgstr "Exportovať MIDI ako:"
-#: Menus.cpp:2612
+#: Menus.cpp:2619
msgid "MIDI file (*.mid)|*.mid|Allegro file (*.gro)|*.gro"
-msgstr ""
+msgstr "MIDI súbor (*.mid)|*.mid|Allegro súbor (*.gro)|*.gro"
-#: Menus.cpp:2644
-msgid "You have selected a filename with an unrecognized file extension.\n"
+#: Menus.cpp:2651
+msgid ""
+"You have selected a filename with an unrecognized file extension.\n"
"Do you want to continue?"
msgstr ""
+"Vybrali ste názov súboru s nerozpoznanou koncovkou súboru. \n"
+"Chcete pokraÄovaÅ¥?"
-#: Menus.cpp:2645
+#: Menus.cpp:2652
msgid "Export MIDI"
-msgstr ""
+msgstr "Exportovať MIDI"
-#: ../src/Menus.cpp:1636
+#: Menus.cpp:2722
msgid "Nothing to undo"
msgstr "Žiadna obnoviteľná akcia"
-#: ../src/Menus.cpp:1655
+#: Menus.cpp:2742
msgid "Nothing to redo"
msgstr "Žiadna opakovateľná akcia"
-#: ../src/EditToolBar.cpp:148
-#: ../src/Menus.cpp:1713
+#: Menus.cpp:2847
+#: TrackPanel.cpp:593
+#: toolbars/EditToolBar.cpp:133
msgid "Cut"
-msgstr "VyÅaÅ¥"
+msgstr "Vystrihnúť"
-#: ../src/Menus.cpp:1713
+#: Menus.cpp:2847
msgid "Cut to the clipboard"
-msgstr "VyÅaÅ¥ a vložiÅ¥ do schránky"
+msgstr "Vystrihnúť do schránky"
-#: Menus.cpp:2468
+#: Menus.cpp:2887
msgid "Split Cut"
-msgstr ""
+msgstr "Rozdeliť Vystrihnúť "
-#: Menus.cpp:2468
+#: Menus.cpp:2887
msgid "Split-cut to the clipboard"
-msgstr ""
+msgstr "Rozdeliť- vystrihnúť do schránky"
-#: ../src/EditToolBar.cpp:152
-#: ../src/Menus.cpp:1818
-#: ../src/Menus.cpp:1862
+#: Menus.cpp:2953
+#: Menus.cpp:3027
+#: Menus.cpp:3221
+#: TrackPanel.cpp:595
+#: toolbars/EditToolBar.cpp:137
msgid "Paste"
msgstr "Vložiť"
-#: Menus.cpp:2530
+#: Menus.cpp:2953
msgid "Pasted text from the clipboard"
-msgstr ""
+msgstr "Vložený text zo schránky"
-#: ../src/Menus.cpp:1818
-#: ../src/Menus.cpp:1862
+#: Menus.cpp:3027
+#: Menus.cpp:3221
msgid "Pasted from the clipboard"
msgstr "Vložené zo schránky"
-#: Menus.cpp:3053
+#: Menus.cpp:3095
msgid "Pasting one type of track into another is not allowed."
-msgstr ""
+msgstr "Nie je možné vložiť jeden druh stopy do iného."
-#: Menus.cpp:2628
+#: Menus.cpp:3107
msgid "Copying stereo audio into a mono track is not allowed."
-msgstr ""
+msgstr "Ne je možné kopÃrovaÅ¥ stereo zvuk do mono stopy."
-#: ../src/Menus.cpp:1902
+#: Menus.cpp:3257
+#: toolbars/EditToolBar.cpp:139
msgid "Trim"
msgstr "&Skrátiť (Trim)"
-#: ../src/Menus.cpp:1902
+#: Menus.cpp:3257
msgid "Trim file to selection"
msgstr "Skrátiť súbor na výber"
-#: Menus.cpp:2747
+#: Menus.cpp:3286
#, c-format
msgid "Split-deleted %.2f seconds at t=%.2f"
-msgstr ""
+msgstr "Rozdelené a vymazané %.2f sekúnd na t=%.2f"
-#: Menus.cpp:2750
+#: Menus.cpp:3289
msgid "Split Delete"
-msgstr ""
+msgstr "Rozdeliť a vymazať"
-#: Menus.cpp:2771
+#: Menus.cpp:3310
#, c-format
msgid "Disjoined %.2f seconds at t=%.2f"
-msgstr ""
+msgstr "Rozpojiť %.2f sekúnd na t=%.2f"
-#: Menus.cpp:2774
+#: Menus.cpp:3313
msgid "Disjoin"
-msgstr ""
+msgstr "Rozpojiť"
-#: Menus.cpp:2795
+#: Menus.cpp:3334
#, c-format
msgid "Joined %.2f seconds at t=%.2f"
-msgstr ""
+msgstr "Spojené %.2f sekúnd na t=%.2f"
-#: Menus.cpp:2798
+#: Menus.cpp:3337
msgid "Join"
-msgstr ""
+msgstr "Spojiť"
-#: ../src/Menus.cpp:1926
+#: Menus.cpp:3356
#, c-format
msgid "Silenced selected tracks for %.2f seconds at %.2f"
-msgstr "Zvolené stopy stlmené na %.2f sekúnd od %.2f"
+msgstr "Stlmenie zvolenej stopy na %.2f sekúnd od %.2f"
-#: ../src/Menus.cpp:1928
-#: ../src/effects/Silence.h:33
+#: Menus.cpp:3358
+#: toolbars/EditToolBar.cpp:141
msgid "Silence"
msgstr "Ticho"
-#: ../src/Menus.cpp:1962
+#: Menus.cpp:3392
msgid "Duplicate"
msgstr "Duplikovať"
-#: ../src/Menus.cpp:1962
+#: Menus.cpp:3392
msgid "Duplicated"
msgstr "Duplikované"
-#: Menus.cpp:2872
+#: Menus.cpp:3411
msgid "Cut Labels"
-msgstr ""
+msgstr "Vystrihnúť popisy"
-#: Menus.cpp:2872
+#: Menus.cpp:3411
msgid "Cut labeled regions to the clipboard"
-msgstr ""
+msgstr "Vystrihnúť oznaÄené oblasti a vložiÅ¥ do schránky"
-#: Menus.cpp:2886
+#: Menus.cpp:3425
msgid "SplitCut labeled regions to the clipboard"
-msgstr ""
+msgstr "Rozdeliť a vystrihnúť oblasti s popismi do schránky"
-#: Menus.cpp:2887
+#: Menus.cpp:3426
msgid "Split Cut Labels"
-msgstr ""
+msgstr "Rozdeliť a vystrihnúť popisy"
-#: Menus.cpp:2901
+#: Menus.cpp:3440
msgid "Copied labeled regions to the clipboard"
-msgstr ""
+msgstr "Oblasti s popismi prekopÃrované do schránky"
-#: Menus.cpp:2901
+#: Menus.cpp:3440
msgid "Copy Labels"
-msgstr ""
+msgstr "KopÃrovaÅ¥ popisy"
-#: Menus.cpp:2913
+#: Menus.cpp:3452
msgid "Delete Labels"
-msgstr ""
+msgstr "Zmazať popisy"
-#: Menus.cpp:2913
+#: Menus.cpp:3452
msgid "Deleted labeled regions"
-msgstr ""
+msgstr "Zmazané oblasti s popismi"
-#: Menus.cpp:2925
+#: Menus.cpp:3464
msgid "Split Delete Labels"
-msgstr ""
+msgstr "Rozdeliť a vymazať popisy"
-#: Menus.cpp:2925
+#: Menus.cpp:3464
msgid "Split Deleted labeled regions"
-msgstr ""
+msgstr "Rozdeliť zmazané oblasti s popismi"
-#: Menus.cpp:2937
+#: Menus.cpp:3476
msgid "Silence Labels"
-msgstr ""
+msgstr "Popisy s tichom"
-#: Menus.cpp:2937
+#: Menus.cpp:3476
msgid "Silenced labeled regions"
-msgstr ""
+msgstr "UmlÄaÅ¥ pomenované úseky"
-#: Menus.cpp:2949
+#: Menus.cpp:3488
msgid "Split Labels"
-msgstr ""
+msgstr "Rozdeliť popisy"
-#: Menus.cpp:2949
+#: Menus.cpp:3488
msgid "Split labeled regions"
-msgstr ""
+msgstr "Rozdeliť oblasti s popismi"
-#: Menus.cpp:2961
+#: Menus.cpp:3500
msgid "Join Labels"
-msgstr ""
+msgstr "Spojiť popisy"
-#: Menus.cpp:2961
+#: Menus.cpp:3500
msgid "Joined labeled regions"
-msgstr ""
+msgstr "Spojené oblasti s popismi"
-#: Menus.cpp:2973
+#: Menus.cpp:3512
msgid "Disjoin Labels"
-msgstr ""
+msgstr "Rozpojiť popisy"
-#: Menus.cpp:2973
+#: Menus.cpp:3512
msgid "Disjoined labeled regions"
-msgstr ""
+msgstr "Rozpojené oblasti s popismi"
-#: ../src/Menus.cpp:2009
-#: ../src/TrackPanel.cpp:4134
+#: Menus.cpp:3534
+#: TrackPanel.cpp:6141
msgid "Split"
msgstr "Rozdeliť"
-#: Menus.cpp:3089
+#: Menus.cpp:3628
msgid "Split New"
-msgstr ""
+msgstr "Rozdeliť Nový"
-#: Menus.cpp:3089
+#: Menus.cpp:3628
msgid "Split to new track"
-msgstr ""
+msgstr "Rozdeliť do novej stopy"
-#: ../src/Menus.cpp:2092
+#: Menus.cpp:3711
msgid "Split at labels"
-msgstr "Rozdeliť na popisoch (labels)"
+msgstr "Rozdeliť na popisoch"
-#: ../src/Menus.cpp:2369
+#: Menus.cpp:4012
msgid "To plot the spectrum, all selected tracks must be the same sample rate."
msgstr "Aby mohlo byť vykreslené spektrum, musia mať všetky stopy rovnakú vzorkovaciu frekvenciu."
-#: ../src/Menus.cpp:2395
+#: Menus.cpp:4038
#, c-format
msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "Je vybraného prÃliÅ¡ mnoho zvuku. Môže byÅ¥ analyzovaných len poÄiatoÄných %.1f sekúnd."
+msgstr "Je vybraného prÃliÅ¡ mnoho zvuku. Môže byÅ¥ analyzovaných len po ÄiatoÄných %.1f sekúnd."
-#: ../src/Menus.cpp:2660
+#: Menus.cpp:4181
#, c-format
msgid "Imported labels from '%s'"
-msgstr "Importované popisy (labels) z '%s'"
+msgstr "Importované popisy z '%s'"
-#: ../src/Menus.cpp:2661
+#: Menus.cpp:4182
msgid "Import Labels"
-msgstr "Importovať popisy (Labels)..."
+msgstr "Importovať popisy ..."
-#: ../src/Menus.cpp:2672
+#: Menus.cpp:4193
msgid "Select a MIDI file..."
msgstr "Zvoliť MIDI súbor..."
-#: Menus.cpp:4147
+#: Menus.cpp:4197
msgid "MIDI and Allegro files (*.mid;*.midi;*.gro)|*.mid;*.midi;*.gro|MIDI files (*.mid;*.midi)|*.mid;*.midi|Allegro files (*.gro)|*.gro|All files (*.*)|*.*"
-msgstr ""
+msgstr "MIDI a Allegro súbory (*.mid;*.midi;*.gro)|*.mid;*.midi;*.gro|MIDI súbory (*.mid;*.midi)|*.mid;*.midi|Allegro súbory (*.gro)|*.gro|Všetky súbory (*.*)|*"
-#: ../src/Menus.cpp:2694
+#: Menus.cpp:4213
#, c-format
msgid "Imported MIDI from '%s'"
msgstr "Importované MIDI z '%s'"
-#: ../src/Menus.cpp:2696
+#: Menus.cpp:4214
msgid "Import MIDI"
-msgstr "Importovať &MIDI..."
+msgstr "Importovať MIDI"
-#: ../src/Menus.cpp:2709
+#: Menus.cpp:4228
msgid "Select any uncompressed audio file..."
msgstr "Zvoľte nejaký nekomprimovaný audio súbor..."
-#: ../src/Menus.cpp:2713
+#: Menus.cpp:4232
msgid "All files (*)|*"
msgstr "Všetky súbory (*)|*"
-#: Menus.cpp:3630
+#: Menus.cpp:4256
msgid "Edit the metadata tags"
-msgstr ""
+msgstr "Upraviť metadáta tágu"
-#: Menus.cpp:3631
+#: Menus.cpp:4257
+#: export/Export.cpp:349
msgid "Edit Metadata"
-msgstr ""
+msgstr "Upraviť metadáta"
-#: Menus.cpp:3631
+#: Menus.cpp:4257
msgid "Edit Metadata tags"
-msgstr ""
+msgstr "Upraviť metadáta tágu"
-#: Menus.cpp:3749
+#: Menus.cpp:4313
#, c-format
msgid "Rendered all audio in track '%s'"
-msgstr ""
+msgstr "Všetky zvukové stopy v '%s' vykreslené"
-#: Menus.cpp:3750
+#: Menus.cpp:4314
msgid "Render"
-msgstr ""
+msgstr "Vykresliť"
-#: Menus.cpp:3755
+#: Menus.cpp:4319
#, c-format
msgid "Mixed and rendered %d tracks into one new stereo track"
-msgstr ""
+msgstr "Do jednej novej stereo stopy bolo zmiešaných a vykreslených %d stôp"
-#: Menus.cpp:3758
+#: Menus.cpp:4322
#, c-format
msgid "Mixed and rendered %d tracks into one new mono track"
-msgstr ""
+msgstr "Do jednej novej mono stopy boli zmiešané a vykreslené %d stopy"
-#: Menus.cpp:658 Menus.cpp:3760 Mix.cpp:119
+#: Menus.cpp:4324
+#: Mix.cpp:121
msgid "&Mix and Render"
-msgstr ""
+msgstr "&Mixovať a vykresliť"
-#: ../src/Menus.cpp:2892
+#: Menus.cpp:4454
msgid "Aligned with zero"
-msgstr "Zarovnané na nulu"
+msgstr "Zarovnané s nulou"
-#: ../src/Menus.cpp:2896
+#: Menus.cpp:4458
msgid "Aligned cursor"
msgstr "Zarovnaný kurzor"
-#: ../src/Menus.cpp:2900
+#: Menus.cpp:4462
msgid "Aligned with selection start"
-msgstr "Zarovnané na zaÄiatok výberu"
+msgstr "Zarovnané so zaÄiatkom výberu"
-#: ../src/Menus.cpp:2904
+#: Menus.cpp:4466
msgid "Aligned with selection end"
-msgstr "Zarovnané na koniec výberu"
+msgstr "Zarovnané s koncom výberu"
-#: ../src/Menus.cpp:2908
+#: Menus.cpp:4470
msgid "Aligned end with cursor"
-msgstr "Zarovnaný koniec na kurzor"
+msgstr "Zarovnaný koniec s kurzorom"
-#: ../src/Menus.cpp:2912
+#: Menus.cpp:4474
msgid "Aligned end with selection start"
-msgstr "Zarovnaný koniec na zaÄiatok výberu"
+msgstr "Zarovnaný koniec so zaÄiatkom výberu"
-#: ../src/Menus.cpp:2916
+#: Menus.cpp:4478
msgid "Aligned end with selection end"
-msgstr "Zarovnaný koniec na koniec výberu"
+msgstr "Zarovnaný koniec s koncom výberu"
-#: ../src/Menus.cpp:2920
+#: Menus.cpp:4482
msgid "Aligned"
msgstr "Zarovnané"
-#: ../src/Menus.cpp:2953
+#: Menus.cpp:4515
msgid "Align"
msgstr "Zarovnať"
-#: Menus.cpp:4550
+#: Menus.cpp:4600
msgid "Sync MIDI with Audio"
-msgstr ""
+msgstr "Synchronizácia MIDI s Audio"
-#: Menus.cpp:4554
+#: Menus.cpp:4604
msgid "Alignment completed."
-msgstr ""
+msgstr "Zarovnávanie dokonÄené."
-#: ../src/Menus.cpp:2977
+#: Menus.cpp:4615
msgid "Created new audio track"
msgstr "Nová audio stopa vytvorená"
-#: ../src/Menus.cpp:2977
-#: ../src/Menus.cpp:3001
-#: ../src/Menus.cpp:3016
-#: ../src/Menus.cpp:3052
+#: Menus.cpp:4615
+#: Menus.cpp:4638
+#: Menus.cpp:4653
+#: Menus.cpp:4673
msgid "New Track"
msgstr "Nová stopa"
-#: ../src/Menus.cpp:3001
+#: Menus.cpp:4638
msgid "Created new stereo audio track"
msgstr "Nová stereo audio stopa vytvorená"
-#: ../src/Menus.cpp:3016
+#: Menus.cpp:4653
msgid "Created new label track"
-msgstr "Vytvoriť novú popisovú (Label) stopu"
+msgstr "Vytvoriť novú popisovú stopu"
-#: ../src/Menus.cpp:3041
+#: Menus.cpp:4662
msgid "The version of Audacity you are using does not support multiple time tracks."
msgstr "Verzia Audacity, ktorú použÃvate, nepodporuje viac Äasových stôp."
-#: ../src/Menus.cpp:3052
+#: Menus.cpp:4673
msgid "Created new time track"
msgstr "Nová Äasová stopa vytvorená"
-#: ../src/Menus.cpp:3088
+#: Menus.cpp:4733
msgid "Added label"
msgstr "Vložený popis"
-#: Menus.cpp:4119
+#: Menus.cpp:4768
msgid "Edited labels"
-msgstr ""
+msgstr "Upravené popisy"
-#: Menus.cpp:4146
+#: Menus.cpp:4795
msgid "Save CleanSpeech Preset File As:"
-msgstr ""
+msgstr "Uložiť súbor s predvoľbami CleanSpeech ako:"
-#: Menus.cpp:4150
+#: Menus.cpp:4799
msgid "CleanSpeech Presets (*.csp)|*.csp"
-msgstr ""
+msgstr "Predvoľby CleanSpeech (*.csp)|*.csp"
-#: ../src/export/Export.cpp:185
+#: Menus.cpp:4806
+#: export/Export.cpp:611
msgid "Sorry, pathnames longer than 256 characters not supported."
msgstr "OspravedlÅujem sa, ale názvy ciest dlhÅ¡ie než 256 znakov nie sú podporované."
-#: Menus.cpp:4203
+#: Menus.cpp:4852
msgid "Problem encountered exporting presets."
-msgstr ""
+msgstr "Problém pri exporte predvolieb."
-#: Menus.cpp:4204 export/Export.cpp:136
+#: Menus.cpp:4853
+#: export/Export.cpp:473
msgid "Unable to export"
-msgstr ""
+msgstr "Export nie je možný"
-#: ../src/Menus.cpp:3122
+#: Menus.cpp:5037
msgid "Remove Track"
-msgstr "&Odstrániť stopu(y)"
+msgstr "Odstrániť stopu"
-#: ../src/Menus.cpp:3122
+#: Menus.cpp:5037
msgid "Removed audio track(s)"
msgstr "Odstránené audio stopy"
-#: Menus.cpp:4480 Menus.cpp:4499
+#: Menus.cpp:5194
+#: Menus.cpp:5249
+#: export/ExportFFmpeg.cpp:741
+#: export/ExportMP3.cpp:1780
msgid "Resample"
-msgstr ""
+msgstr "Prevzorkovať"
-#: Menus.cpp:5159 TrackPanel.cpp:6361
+#: Menus.cpp:5214
+#: TrackPanel.cpp:6368
msgid "New sample rate (Hz):"
-msgstr ""
+msgstr "Nová vzorkovacia frekvencia (Hz):"
-#: Menus.cpp:4486
+#: Menus.cpp:5238
+#: TrackPanel.cpp:6392
msgid "The entered value is invalid"
-msgstr ""
+msgstr "Zadaná hodnota nie je správna"
-#: Menus.cpp:4497
+#: Menus.cpp:5247
#, c-format
msgid "Resampling track %d"
-msgstr ""
+msgstr "Prevzorkovanie stopy %d"
-#: Menus.cpp:4508
+#: Menus.cpp:5256
msgid "Resample Track"
-msgstr ""
+msgstr "Prevzorkovať stopu"
-#: Menus.cpp:4508
+#: Menus.cpp:5256
msgid "Resampled audio track(s)"
-msgstr ""
+msgstr "Prevzorkované zvukové stopy"
-#: ../src/Mix.cpp:74
-#: ../src/Mix.cpp:82
+#: Mix.cpp:95
+#: Mix.cpp:102
msgid "Mix"
-msgstr "Mixovacà panel"
+msgstr "Mixážny panel"
-#: Mix.cpp:120
+#: Mix.cpp:122
msgid "Mixing and rendering tracks"
-msgstr ""
+msgstr "Miešanie a vykreslenie stôp"
-#: ../src/NoteTrack.cpp:30
+#: NoteTrack.cpp:43
msgid "Note Track"
-msgstr "Notová stopa"
+msgstr "Poznámka stopy"
-#: ../src/Menus.cpp:1617
+#: Printing.cpp:192
msgid "There was a problem printing."
msgstr "Vyskytli sa problémy s tlaÄou."
-#: ../src/Menus.cpp:1618
+#: Printing.cpp:193
msgid "Print"
msgstr "TlaÄ"
-#: Project.cpp:573
+#: Project.cpp:741
msgid "Main Mix"
-msgstr ""
+msgstr "Hlavný Mixér"
-#: Project.cpp:693
+#: Project.cpp:865
#, c-format
msgid "Welcome to Audacity version %s"
-msgstr ""
+msgstr "Vitajte v Audacity verzie %s"
-#: Project.cpp:831
+#: Project.cpp:1045
msgid "(Recovered)"
-msgstr ""
+msgstr "(Obnovené)"
-#: ../src/ControlToolBar.cpp:469
-#: ../src/Project.cpp:1707
-#: ../src/TrackPanel.cpp:1208
+#: Project.cpp:1639
+#: TrackPanel.cpp:793
+#: toolbars/ControlToolBar.cpp:192
msgid "Record"
msgstr "Nahrávať"
-#: ../src/Project.cpp:1707
-#: ../src/TrackPanel.cpp:1208
+#: Project.cpp:1639
+#: TrackPanel.cpp:793
msgid "Recorded Audio"
msgstr "Nahratý zvuk"
-#: ../src/Project.cpp:1716
+#: Project.cpp:1657
msgid "Save changes before closing?"
msgstr "UložiÅ¥ zmeny pred uzavretÃm?"
-#: Project.cpp:1570
-msgid "\n"
+#: Project.cpp:1660
+msgid ""
+"\n"
"If saved, the project will have no tracks.\n"
"\n"
"To save any previously open tracks:\n"
"Cancel, Edit > Undo until all tracks\n"
"are open, then File > Save Project."
msgstr ""
+"\n"
+"Ak ukladáte, projekt nebude mať žiadne stopy.\n"
+"\n"
+"Ak chcete uložiť všetky predtým otvorené skladby:\n"
+"Storno, Upraviť> Späť, kým všetky stopy \n"
+"sú otvorené, potom Súbor> Uložiť projekt."
-#: ../src/Project.cpp:1717
+#: Project.cpp:1663
msgid "Save changes?"
msgstr "Uložiť zmeny?"
-#: Project.cpp:1684
+#: Project.cpp:1870
msgid "All files|*.*|All supported files|"
-msgstr ""
+msgstr "Všetky súbory|*.*|Všetky podporované súbory|"
-#: ../src/Menus.cpp:2595
-#: ../src/Project.cpp:1738
+#: Project.cpp:1900
msgid "Select one or more audio files..."
msgstr "Zvoľte jeden alebo viac zvukových súborov..."
-#: Project.cpp:1736
+#: Project.cpp:1927
msgid "Audacity projects|*.aup|"
-msgstr ""
+msgstr "Audacity projekty|*.aup|"
-#: Project.cpp:1885 Project.cpp:2307
+#: Project.cpp:1986
+#: Project.cpp:2408
#, c-format
-msgid "This file was saved by Audacity %s, a much\n"
+msgid ""
+"This file was saved by Audacity %s, a much\n"
"older version. The format has changed.\n"
"\n"
"Audacity could corrupt the file in opening\n"
@@ -2870,82 +3089,102 @@ msgid "This file was saved by Audacity %s, a much\n"
"\n"
"Open this file now?"
msgstr ""
+"Tento súbor bol uložený do Audacity% s, Äo je oveľa\n"
+"staršia verzia. Tento formát sa zmenil.\n"
+"\n"
+"Audacity mohol poÅ¡kodiÅ¥ súbor pri otvorenÃ,\n"
+"takže je potrebné ÃsÅ¥ od zaÄiatku.\n"
+"\n"
+"Otvoriť tento súbor teraz?"
-#: Project.cpp:1886
+#: Project.cpp:1987
msgid "1.0 or earlier"
-msgstr ""
+msgstr "1.0 alebo predošlé"
-#: Project.cpp:1902
+#: Project.cpp:1993
+#: Project.cpp:2420
msgid "Opening old project file"
-msgstr ""
+msgstr "Otvára sa starý projektový súbor"
-#: ../src/Project.cpp:1821
-#: ../src/Project.cpp:1829
+#: Project.cpp:2019
+#: Project.cpp:2027
msgid "Error opening file"
msgstr "Chyba pri naÄÃtanà súboru."
-#: Project.cpp:1585
+#: Project.cpp:2033
#, c-format
-msgid "File may be invalid or corrupted: \n"
+msgid ""
+"File may be invalid or corrupted: \n"
"%s"
msgstr ""
+"Súbor môže byť nesprávny alebo poškodený: \n"
+"%s"
-#: Project.cpp:1586
+#: Project.cpp:2034
msgid "Error opening file or project"
-msgstr ""
+msgstr "Chyba pri otváranà súboru alebo projektu"
-#: ../src/Project.cpp:1842
+#: Project.cpp:2054
msgid "Audacity was unable to convert an Audacity 1.0 project to the new project format."
msgstr "Audacity nedokázalo previesť projekt z Audacity 1.0 do nového formátu projektu."
-#: Project.cpp:1706
+#: Project.cpp:2157
msgid "Could not remove old auto save file"
-msgstr ""
+msgstr "Starý záložný súbor nie je možné odstrániť"
-#: Project.cpp:1708
+#: Project.cpp:2159
msgid "Project was recovered"
-msgstr ""
+msgstr "Projekt bol obnovený"
-#: Project.cpp:1708
+#: Project.cpp:2159
msgid "Recover"
-msgstr ""
+msgstr "Obnoviť"
-#: Project.cpp:1737
+#: Project.cpp:2188
msgid "Project checker repaired file"
-msgstr ""
+msgstr "Projektová kontrola opravila súbor"
-#: Project.cpp:1737 effects/Repair.h:29
+#: Project.cpp:2188
+#: effects/Repair.h:29
msgid "Repair"
-msgstr ""
+msgstr "Opraviť"
-#: ../src/Project.cpp:1941
+#: Project.cpp:2334
#, c-format
msgid "Couldn't find the project data folder: \"%s\""
msgstr "Nemôžem nájsť zložku s dátami projektu: \"%s\""
-#: ../src/Project.cpp:1985
+#: Project.cpp:2377
#, c-format
-msgid "This file was saved using Audacity %s.\n"
+msgid ""
+"This file was saved using Audacity %s.\n"
"You are using Audacity %s - you need to upgrade to\n"
"a newer version to open this file."
-msgstr "Súbor bol uložený Audacity %s.\n"
+msgstr ""
+"Súbor bol uložený Audacity %s.\n"
"Vy použÃvate %s - pokiaľ tento súbor chcete\n"
"otvoriÅ¥, musÃte prejsÅ¥ na novÅ¡iu verziu programu."
-#: ../src/Project.cpp:1991
+#: Project.cpp:2381
msgid "Can't open project file"
msgstr "Nie je možné otvoriť súbor projektu"
-#: Project.cpp:2314
+#: Project.cpp:2415
#, c-format
-msgid "This file was saved by Audacity %s.\n"
+msgid ""
+"This file was saved by Audacity %s.\n"
"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
"\n"
"Open this file now?"
msgstr ""
+"Tento súbor bol uložený do Audacity %s.\n"
+"Môžete otvoriÅ¥ súbor s touto verziou Audacity, ale ak ju uložÃte s touto verziou už ho nebudete môcÅ¥ otvoriÅ¥ v starÅ¡Ãch verziách.\n"
+"\n"
+"Otvoriť tento súbor teraz?"
-#: Project.cpp:2537
-msgid "Your project is now empty.\n"
+#: Project.cpp:2611
+msgid ""
+"Your project is now empty.\n"
"If saved, the project will have no tracks.\n"
"\n"
"To save any previously open tracks:\n"
@@ -2954,54 +3193,63 @@ msgid "Your project is now empty.\n"
"\n"
"Save anyway?"
msgstr ""
+"Váš projekt je teraz prázdny. \n"
+"Ak ste ho uložili, projekt nebude mať žiadne stopy.\n"
+"\n"
+"Ak chcete uložiť všetky predtým otvorené stopy.\n"
+"Kliknute na 'Nie', Upraviť> Späť, kým všetky stopy\n"
+"sú otvorené, potom Súbor> Uložiť projekt.\n"
+"\n"
+"Uložiť akokoľvek?"
-#: Project.cpp:2538
+#: Project.cpp:2612
msgid "Warning empty project"
-msgstr ""
+msgstr "Upozornenie prázdny projekt"
-#: Project.cpp:2591
+#: Project.cpp:2721
#, c-format
-msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+msgid ""
+"Could not save project. Perhaps %s \n"
+"is not writable or the disk is full."
msgstr ""
+"Nie je možné uložiť projekt. Možno %s \n"
+"nie je apisovateľný alebo je plný disk."
-#: ../src/Project.cpp:2148
-#: ../src/Project.cpp:2160
+#: Project.cpp:2723
+#: Project.cpp:2738
msgid "Error saving project"
msgstr "Chyba pri ukladanà projektu"
-#: ../src/Project.cpp:2200
+#: Project.cpp:2808
#, c-format
msgid "Saved %s"
msgstr "Uložené %s"
-#: ../src/Project.cpp:2282
+#: Project.cpp:2974
#, c-format
msgid "Imported '%s'"
-msgstr "Importované '%s'"
+msgstr "Importovať'%s'"
-#: ../src/Project.cpp:2236
-#: ../src/Project.cpp:2283
-#: ../src/import/ImportPCM.cpp:403
-#: ../src/import/ImportPCM.cpp:488
-#: ../src/import/ImportRaw.cpp:408
+#: Project.cpp:2975
msgid "Import"
-msgstr "Import"
+msgstr "Importovať"
-#: ../src/Project.cpp:2340
+#: Project.cpp:3009
+#: Project.cpp:3017
msgid "Error importing"
msgstr "Chyba importu"
-#: Project.cpp:2365
+#: Project.cpp:3057
msgid "Save Speech As:"
-msgstr ""
+msgstr "Uložiť hovorené slovo ako:"
-#: Project.cpp:2621
+#: Project.cpp:3059
msgid "Windows PCM Audio file (*.wav)|*.wav"
-msgstr ""
+msgstr "Súbor Windows PCM Audio (*.wav)|*.wav"
-#: Project.cpp:2894
-msgid "Audacity compressed project files (.aup) save your work in a smaller, compressed (.ogg) format. \n"
+#: Project.cpp:3066
+msgid ""
+"Audacity compressed project files (.aup) save your work in a smaller, compressed (.ogg) format. \n"
"Compressed project files are a good way to transmit your project online, because they are much smaller. \n"
"To open a compressed project takes longer than usual, as it imports each compressed track. \n"
"\n"
@@ -3009,3802 +3257,4149 @@ msgid "Audacity compressed project files (.aup) save your work in a smaller, com
"When you want to save a file that can be opened by other programs, select one of the\n"
"Export commands."
msgstr ""
+"Audacity komprimované projektové súbory (.aup) uložte si prácu v menÅ¡Ãch, komprimovaných formátoch (.ogg). \n"
+"Komprimované projektové súbory sú dobrým spôsobom, ako odovzdať svoj projekt na internet, pretože sú oveľa menšie.\n"
+"Ak chcete otvoriÅ¥ komprimovaný projekt trvá dlhÅ¡ie ako zvyÄajne, pretože importuje každú komprimovanú stopu. \n"
+"\n"
+"VäÄÅ¡ina ostatných programov nemôže otvoriÅ¥ súbory projektu Audacity. \n"
+"Ak chcete uložiť súbor, ktorý je možné otvoriť pomocou iných programov, vyberte jeden z \n"
+" prÃkazov Export."
-#: Project.cpp:2897
-msgid "You are saving an Audacity project file (.aup).\n"
+#: Project.cpp:3069
+msgid ""
+"You are saving an Audacity project file (.aup).\n"
"\n"
"Saving a project creates a file that only Audacity can open.\n"
"\n"
"To save an audio file for other programs, use one of the \"File > Export\" commands.\n"
msgstr ""
+"Ukladáte súbor projektu Audacity (.aup).\n"
+"\n"
+"UloženÃm projektu sa vytvorà súbor, ktorý može otvoriÅ¥ iba Audacity. \n"
+"\n"
+"Ak chcete uložiÅ¥ audio súbor pre iné programy, použite jeden z prÃkazov\"Súbor> Export\".\n"
-#: ../src/Project.cpp:2378
+#: Project.cpp:3073
msgid "Audacity projects (*.aup)|*.aup"
msgstr "Audacity projekty (*.aup)|*.aup"
-#: ../src/Project.cpp:2414
+#: Project.cpp:3127
msgid "Created new project"
msgstr "Nový projekt vytvorený"
-#: ../src/Project.cpp:2527
+#: Project.cpp:3286
#, c-format
msgid "Deleted %.2f seconds at t=%.2f"
msgstr "Vymazané %.2f sekúnt na t=%.2f"
-#: ../src/Project.cpp:2530
+#: Project.cpp:3289
+#: effects/Equalization.cpp:1274
+#: effects/Equalization.cpp:2605
msgid "Delete"
msgstr "Zmazať"
-#: Project.cpp:2738
+#: Project.cpp:3483
#, c-format
msgid "Disk space remains for recording %d hours and %d minutes."
-msgstr ""
+msgstr "Na disku zostáva miesto pre %d hodÃn a %d minút nahrávania."
-#: Project.cpp:2741
+#: Project.cpp:3486
#, c-format
msgid "Disk space remains for recording 1 hour and %d minutes."
-msgstr ""
+msgstr "Na disku zostáva miesto pre 1hodinu a %d minút nahrávania."
-#: Project.cpp:2744
+#: Project.cpp:3489
#, c-format
msgid "Disk space remains for recording %d minutes."
-msgstr ""
+msgstr "Na disku zostáva miesto pre %d minút nahrávania."
-#: Project.cpp:2747
+#: Project.cpp:3492
#, c-format
msgid "Disk space remains for recording %d seconds."
-msgstr ""
+msgstr "Na disku zostáva miesto pre %d sekúnd nahrávania."
-#: ../src/Project.cpp:2706
+#: Project.cpp:3495
msgid "Out of disk space"
msgstr "Nedostatok miesta na disku"
-#: Project.cpp:3336
+#: Project.cpp:3508
#, c-format
msgid "Import(s) complete. Running %d on-demand waveform calculations. Overall %2.0f%% complete."
-msgstr ""
+msgstr "Importovanie dokonÄené. Spustenie výpoÄtu krivky %d na požiadanie. Celkový %2.0f%% hotovo."
-#: Project.cpp:3339
+#: Project.cpp:3511
#, c-format
msgid "Import complete. Running an on-demand waveform calculation. %2.0f%% complete."
-msgstr ""
+msgstr "Importovanie dokonÄené. Spustenie výpoÄtu krivky na požiadanie. %2.0f%% hotovo."
-#: Project.cpp:3027
+#: Project.cpp:3789
msgid "Could not remove old autosave file: "
-msgstr ""
+msgstr "Nie je možné odstrániť záložný súbor: "
-#: Project.cpp:3068
+#: Project.cpp:3830
msgid "New Project"
-msgstr ""
+msgstr "Nový projekt"
-#: Project.cpp:3081
+#: Project.cpp:3843
msgid "Error writing autosave file"
-msgstr ""
+msgstr "Chyba pri ukladanà záložného súboru"
-#: Project.cpp:3102
+#: Project.cpp:3868
msgid "Could not create autosave file: "
-msgstr ""
+msgstr "Nie je možné vytvoriť záložný súbor:"
-#: Project.cpp:3385
+#: Project.cpp:3894
#, c-format
msgid "Actual Rate: %d"
-msgstr ""
+msgstr "SúÄasné vzorkovanie: %d"
-#: ../src/Resample.cpp:35
+#: Resample.cpp:62
msgid "Libresample by Dominic Mazzoni and Julius Smith"
msgstr "Libresample od Dominica Mazzoniho a Julia Smitha"
-#: ../src/Resample.cpp:46
+#: Resample.cpp:73
msgid "High-quality Sinc Interpolation"
msgstr "Vysoko kvalitný konvertor vzorkovacej rýchlosti"
-#: ../src/Resample.cpp:48
+#: Resample.cpp:75
msgid "Fast Sinc Interpolation"
-msgstr "Fast Sinc Interpolácia"
+msgstr "Rýchla Synchronizácia Interpolácie"
-#: ../src/Resample.cpp:118
+#: Resample.cpp:141
msgid "Libsamplerate by Erik de Castro Lopo"
msgstr "Libsamplerate od Erika de Castra Lopa"
-#: ../src/Resample.cpp:211
+#: Resample.cpp:230
#, c-format
msgid "Libsamplerate error: %d\n"
msgstr "Chyba Libsamplerate: %d\n"
-#: ../src/Resample.cpp:233
-#: ../src/Resample.cpp:243
+#: Resample.cpp:252
+#: Resample.cpp:262
msgid "Resampling disabled."
msgstr "Prevzorkovanie zakázané."
-#. i18n-hint: Audio data bit depth (precison): 16-bit integers
+#. i18n-hint: Audio data bit depth (precision): 16-bit integers
#: SampleFormat.cpp:66
msgid "16-bit PCM"
-msgstr ""
+msgstr "16-bit PCM"
-#. i18n-hint: Audio data bit depth (precison): 24-bit integers
+#. i18n-hint: Audio data bit depth (precision): 24-bit integers
#: SampleFormat.cpp:69
msgid "24-bit PCM"
-msgstr ""
+msgstr "24-bit PCM"
-#. i18n-hint: Audio data bit depth (precison): 32-bit floating point
+#. i18n-hint: Audio data bit depth (precision): 32-bit floating point
#: SampleFormat.cpp:72
msgid "32-bit float"
-msgstr ""
+msgstr "32-bit float"
#: Screenshot.cpp:384
msgid "Saved "
-msgstr ""
+msgstr "Uložené"
#: Screenshot.cpp:387
msgid "Error trying to save file: "
-msgstr ""
+msgstr "Chyba pri pokuse uložiť súbor:"
-#: Sequence.cpp:732 Sequence.cpp:742 Sequence.cpp:749
+#: Sequence.cpp:804
+#: Sequence.cpp:814
+#: Sequence.cpp:821
msgid "Gap detected in project file\n"
-msgstr ""
+msgstr "Medzera zistená v súbore projektu\n"
-#: effects/Effect.cpp:254 effects/Effect.cpp:370 effects/Phaser.cpp:595
-#: effects/Wahwah.cpp:582 effects/audiounits/AudioUnitEffect.cpp:852
+#: ShuttleGui.cpp:1972
+#: effects/Effect.cpp:419
+#: effects/audiounits/AudioUnitEffect.cpp:877
msgid "Pre&view"
-msgstr ""
+msgstr "Ná&hľad"
-#: effects/nyquist/Nyquist.cpp:826 effects/nyquist/Nyquist.cpp:990
+#: ShuttleGui.cpp:1979
msgid "&Debug"
-msgstr ""
+msgstr "&Ladiť"
#: SoundActivatedRecord.cpp:36
msgid "Sound Activated Record"
-msgstr ""
+msgstr "Zvukovo aktivované nahravanie"
#: SoundActivatedRecord.cpp:58
msgid "Activation level (dB):"
-msgstr ""
+msgstr "Aktivácia úrovne (dB):"
-#: SplashDialog.cpp:58
+#: SplashDialog.cpp:60
msgid "&Welcome to Audacity!"
-msgstr ""
+msgstr "&VÃtajte v Audacity!"
-#: SplashDialog.cpp:110
+#: SplashDialog.cpp:112
msgid "Don't show this again at start up"
-msgstr ""
+msgstr "Toto už pri štarte nezobrazovať"
-#: Tags.cpp:621
+#: Tags.cpp:628
msgid "Artist Name"
-msgstr ""
+msgstr "Interpret"
-#: Tags.cpp:622
+#: Tags.cpp:629
msgid "Track Title"
-msgstr ""
+msgstr "Názov stopy"
-#: Tags.cpp:623
+#: Tags.cpp:630
msgid "Album Title"
-msgstr ""
+msgstr "Názov albumu"
-#: Tags.cpp:953
-#, fuzzy
+#: Tags.cpp:631
msgid "Track Number"
-msgstr "ÄÃslo stopy:"
+msgstr "ÄÃslo stopy"
-#: ../src/Tags.cpp:465
+#: Tags.cpp:632
msgid "Year"
-msgstr "Rok:"
+msgstr "Rok"
-#: Tags.cpp:979
+#: Tags.cpp:633
msgid "Genre"
-msgstr ""
+msgstr "Žáner"
-#: ../src/Tags.cpp:475
+#: Tags.cpp:634
+#: prefs/MousePrefs.cpp:96
msgid "Comments"
msgstr "Komentáre"
#: Tags.cpp:777
msgid "Use arrow keys (or RETURN key after editing) to navigate fields."
-msgstr ""
+msgstr "Použite Å¡Ãpky (alebo klávesu RETURN po úpravách) pre navigáciu poľa."
-#: Tags.cpp:769
+#: Tags.cpp:800
msgid "Tag Name"
-msgstr ""
+msgstr "Názov tágu"
-#: Tags.cpp:770
+#: Tags.cpp:801
msgid "Tag Value"
-msgstr ""
+msgstr "Hodnota tagu"
-#: prefs/KeyConfigPrefs.cpp:114
+#: Tags.cpp:816
+#: prefs/KeyConfigPrefs.cpp:130
msgid "&Clear"
-msgstr ""
+msgstr "&Vymazať"
-#: Tags.cpp:791
+#: Tags.cpp:822
msgid "Genres"
-msgstr ""
+msgstr "Žánre"
#: Tags.cpp:826
msgid "E&dit..."
-msgstr ""
+msgstr "U&praviť..."
#: Tags.cpp:827
msgid "Rese&t..."
-msgstr ""
+msgstr "Rese&t..."
-#: Tags.cpp:1070
+#: Tags.cpp:832
msgid "Template"
-msgstr ""
+msgstr "Šablóna"
-#: Tags.cpp:1073 prefs/KeyConfigPrefs.cpp:124
+#: Tags.cpp:836
+#: prefs/KeyConfigPrefs.cpp:142
msgid "&Load..."
-msgstr ""
+msgstr "&NaÄÃtaÅ¥..."
-#: Tags.cpp:1078 prefs/KeyConfigPrefs.cpp:123
+#: Tags.cpp:837
+#: prefs/KeyConfigPrefs.cpp:141
msgid "&Save..."
-msgstr ""
+msgstr "&Uložiť..."
-#: Tags.cpp:808 Tags.cpp:1434 Tags.cpp:1962
+#: Tags.cpp:839
msgid "S&et Default"
-msgstr ""
+msgstr "Nastaviť ako predvolené"
-#: Tags.cpp:958 Tags.cpp:1597 Tags.cpp:2326
+#: Tags.cpp:989
msgid "Edit Genres"
-msgstr ""
+msgstr "Upraviť žánre"
-#: Tags.cpp:991 Tags.cpp:1003 Tags.cpp:1019 Tags.cpp:1032 Tags.cpp:1635
-#: Tags.cpp:1647 Tags.cpp:1663 Tags.cpp:1676 Tags.cpp:2369 Tags.cpp:2381
-#: Tags.cpp:2397 Tags.cpp:2410
+#: Tags.cpp:1022
+#: Tags.cpp:1034
+#: Tags.cpp:1049
+#: Tags.cpp:1062
msgid "Reset Genres"
-msgstr ""
+msgstr "Resetnuť žánre"
-#: Tags.cpp:991 Tags.cpp:1032 Tags.cpp:1635 Tags.cpp:1676 Tags.cpp:2369
-#: Tags.cpp:2410
+#: Tags.cpp:1022
+#: Tags.cpp:1062
msgid "Unable to save genre file."
-msgstr ""
+msgstr "Nie je možné uložiť žánrový súbor."
-#: Tags.cpp:1002 Tags.cpp:1646 Tags.cpp:2380
+#: Tags.cpp:1033
msgid "Are you sure you want to reset the genre list to defaults?"
-msgstr ""
+msgstr "Naozaj chcete vrátiť zoznam žánrov do predvoleného stavu?"
-#: Tags.cpp:1019 Tags.cpp:1663 Tags.cpp:2397
+#: Tags.cpp:1049
msgid "Unable to open genre file."
-msgstr ""
+msgstr "Nie je možné otvoriť žánrový súbor."
#: Tags.cpp:1084
msgid "Load Metadata As:"
-msgstr ""
+msgstr "NaÄÃtaÅ¥ metadáta ako:"
-#: Tags.cpp:1079 Tags.cpp:1730 Tags.cpp:2453
+#: Tags.cpp:1109
msgid "Error loading metadata"
-msgstr ""
+msgstr "Chyba pri naÄÃtanà metadát"
-#: Tags.cpp:1054 Tags.cpp:1108 Tags.cpp:1709 Tags.cpp:1745 Tags.cpp:2432
-#: Tags.cpp:2468
+#: Tags.cpp:1138
msgid "Save Metadata As:"
-msgstr ""
+msgstr "Uložiť metadáta ako:"
-#: Theme.cpp:629
+#: Theme.cpp:638
#, c-format
-msgid "Audacity could not write file:\n"
+msgid ""
+"Audacity could not write file:\n"
" %s."
msgstr ""
+"Audacity nemôže zapÃsaÅ¥ súbor:\n"
+" %s."
-#: Theme.cpp:647
+#: Theme.cpp:656
#, c-format
-msgid "Audacity could not open file:\n"
+msgid ""
+"Audacity could not open file:\n"
" %s\n"
"for writing."
msgstr ""
+"Audacity nemôže otvoriť súbor:\n"
+" %s\n"
+"pre pÃsanie."
-#: Theme.cpp:655
+#: Theme.cpp:664
#, c-format
-msgid "Audacity could not write images to file:\n"
+msgid ""
+"Audacity could not write images to file:\n"
" %s."
msgstr ""
+"Audacity nemôže zapÃsaÅ¥ obrázky do súboru:\n"
+" %s."
-#: Theme.cpp:790
+#: Theme.cpp:799
#, c-format
-msgid "Audacity could not find file:\n"
+msgid ""
+"Audacity could not find file:\n"
" %s.\n"
"Theme not loaded."
msgstr ""
+"Audacity nemôže nájsť súbor:\n"
+" %s.\n"
+"Téma sa nenaÄÃtala."
-#: Theme.cpp:798 Theme.cpp:886
+#: Theme.cpp:807
+#: Theme.cpp:896
#, c-format
-msgid "Audacity could not load file:\n"
+msgid ""
+"Audacity could not load file:\n"
" %s.\n"
"Bad png format perhaps?"
msgstr ""
+"Audacity nemôže naÄÃtaÅ¥ súbor:\n"
+" %s.\n"
+"Pravdepodobne zlý png formát?"
-#: Theme.cpp:814
-msgid "Audacity could not read its default theme.\n"
+#: Theme.cpp:823
+msgid ""
+"Audacity could not read its default theme.\n"
"Please report the problem."
msgstr ""
+"Audacity nemôže preÄÃtaÅ¥ vlastnú predvolenú tému.\n"
+"Nahláste prosÃm tento problém."
-#: Theme.cpp:908
+#: Theme.cpp:918
#, c-format
-msgid "None of the expected theme component files\n"
+msgid ""
+"None of the expected theme component files\n"
" were found in:\n"
" %s."
msgstr ""
+"Žiadny z oÄakávaných komponentov témy\n"
+"nebol nájdený:\n"
+" %s."
-#: Theme.cpp:932
+#: Theme.cpp:942
+#: effects/NoiseRemoval.cpp:173
#, c-format
-msgid "Could not create directory:\n"
+msgid ""
+"Could not create directory:\n"
" %s"
msgstr ""
+"Nie je možné vytvoriť adresár:\n"
+" %s"
-#: Theme.cpp:953
+#: Theme.cpp:963
#, c-format
-msgid "Audacity could not save file:\n"
+msgid ""
+"Audacity could not save file:\n"
" %s"
msgstr ""
+"Audacity nemôže uložiť súbor:\n"
+" %s"
-#: Theme.cpp:965
+#: Theme.cpp:975
#, c-format
-msgid "All required files in:\n"
+msgid ""
+"All required files in:\n"
" %s\n"
"were already present."
msgstr ""
-
-#: SmartRecordDialog.cpp:285
+"Všetky potrebné súbory v:\n"
+" %s\n"
+"už existujú."
+
+#: TimeDialog.cpp:53
+#: TimeDialog.cpp:64
+#: TimerRecordDialog.cpp:235
+#: TimerRecordDialog.cpp:366
+#: TimerRecordDialog.cpp:370
+#: effects/DtmfGen.cpp:479
+#: effects/Noise.cpp:241
+#: effects/Noise.cpp:257
+#: effects/ToneGen.cpp:321
+#: effects/ToneGen.cpp:333
+#: effects/ToneGen.cpp:365
+#: effects/ToneGen.cpp:377
msgid "Duration"
-msgstr ""
+msgstr "Dĺžka"
-#: SmartRecordDialog.cpp:68
+#: TimerRecordDialog.cpp:69
msgid "Audacity Timer Record"
-msgstr ""
+msgstr "Äasované nahrávanie Audacity"
-#: SmartRecordDialog.cpp:223
+#: TimerRecordDialog.cpp:232
msgid "Recording start"
-msgstr ""
+msgstr "Štart nahrávania"
-#: SmartRecordDialog.cpp:224
+#: TimerRecordDialog.cpp:233
msgid "Recording end"
-msgstr ""
+msgstr "Koniec nahrávania"
-#: TimerRecordDialog.cpp:230
+#: TimerRecordDialog.cpp:238
msgid "Audacity Timer Record Progress"
-msgstr ""
+msgstr "Pokrok v Audacity ÄasovaÄi nahrávania"
-#: SmartRecordDialog.cpp:251
+#: TimerRecordDialog.cpp:328
msgid "Start Date and Time"
-msgstr ""
+msgstr "Dátum a Äas zaÄiatku"
-#: TimerRecordDialog.cpp:274
+#: TimerRecordDialog.cpp:335
msgid "Start Date"
-msgstr ""
+msgstr "Dátum zaÄiatku"
-#: SmartRecordDialog.cpp:268
+#: TimerRecordDialog.cpp:347
msgid "End Date and Time"
-msgstr ""
+msgstr "Dátum a Äas konca"
-#: TimerRecordDialog.cpp:294
+#: TimerRecordDialog.cpp:355
msgid "End Date"
-msgstr ""
+msgstr "Dátum konca"
#. i18n-hint: A time specification like "Sunday 28th October 2007 15:16:17 GMT"
#. * but hopefully translated by wxwidgets will be inserted into this
-#: SmartRecordDialog.cpp:380
+#: TimerRecordDialog.cpp:442
#, c-format
msgid "Waiting to start recording at %s.\n"
-msgstr ""
+msgstr "Äaká sa na zaÄiatok nahrávania %s.\n"
-#: TimerRecordDialog.cpp:382
+#: TimerRecordDialog.cpp:443
msgid "Audacity Timer Record - Waiting for Start"
-msgstr ""
+msgstr "Audacity ÄasovaÄ nahrávanie - Äaká sa na zaÄiatok"
-#: TrackPanel.cpp:452 TrackPanel.cpp:453
+#: TrackPanel.cpp:454
+#: TrackPanel.cpp:455
msgid "Track Panel"
-msgstr ""
+msgstr "Panel stopy"
-#: ../src/AStatus.cpp:81
-#: ../src/TrackPanel.cpp:822
-#: ../src/prefs/FileFormatPrefs.cpp:105
-#: ../src/prefs/QualityPrefs.cpp:91
+#: TrackPanel.cpp:538
+#: prefs/QualityPrefs.cpp:97
msgid "Other..."
msgstr "ÄalÅ¡Ã..."
-#: ../src/TrackPanel.cpp:830
-#: ../src/TrackPanel.cpp:851
-#: ../src/TrackPanel.cpp:860
-#: ../src/TrackPanel.cpp:868
+#: TrackPanel.cpp:546
+#: TrackPanel.cpp:568
+#: TrackPanel.cpp:577
+#: TrackPanel.cpp:585
msgid "Name..."
-msgstr "Meno..."
+msgstr "Názov..."
-#: ../src/TrackPanel.cpp:832
-#: ../src/TrackPanel.cpp:853
-#: ../src/TrackPanel.cpp:864
-#: ../src/TrackPanel.cpp:870
+#: TrackPanel.cpp:548
+#: TrackPanel.cpp:570
+#: TrackPanel.cpp:581
+#: TrackPanel.cpp:587
msgid "Move Track Up"
msgstr "Presunúť stopu nahor"
-#: ../src/TrackPanel.cpp:833
-#: ../src/TrackPanel.cpp:854
-#: ../src/TrackPanel.cpp:865
-#: ../src/TrackPanel.cpp:871
+#: TrackPanel.cpp:549
+#: TrackPanel.cpp:571
+#: TrackPanel.cpp:582
+#: TrackPanel.cpp:588
msgid "Move Track Down"
msgstr "Presunúť stopu nadol"
-#: ../src/TrackPanel.cpp:835
+#: TrackPanel.cpp:551
+#: effects/ToneGen.cpp:317
+#: prefs/GUIPrefs.cpp:154
msgid "Waveform"
msgstr "Krivka"
-#: ../src/TrackPanel.cpp:836
+#: TrackPanel.cpp:552
+#: prefs/GUIPrefs.cpp:155
msgid "Waveform (dB)"
msgstr "Krivka (dB)"
-#: TrackPanel.cpp:557 prefs/GUIPrefs.cpp:157
+#: TrackPanel.cpp:554
+#: prefs/GUIPrefs.cpp:157
msgid "Spectrum log(f)"
-msgstr ""
+msgstr "Záznam spektra (f)"
-#: ../src/TrackPanel.cpp:838
+#. i18n-hint: short form of 'logarithm'
+#: TrackPanel.cpp:555
+#: prefs/GUIPrefs.cpp:158
msgid "Pitch (EAC)"
msgstr "Výška tónu (EAC)"
-#: ../src/TrackPanel.cpp:840
+#: TrackPanel.cpp:557
+#: TrackPanel.cpp:6103
msgid "Mono"
msgstr "Mono"
-#: ../src/TrackPanel.cpp:841
+#: TrackPanel.cpp:558
+#: TrackPanel.cpp:6102
msgid "Left Channel"
msgstr "Ľavý kanál"
-#: ../src/TrackPanel.cpp:842
+#: TrackPanel.cpp:559
+#: TrackPanel.cpp:6102
msgid "Right Channel"
msgstr "Pravý kanál"
-#: ../src/TrackPanel.cpp:843
+#: TrackPanel.cpp:560
msgid "Make Stereo Track"
msgstr "Vytvoriť stereo stopu"
-#: ../src/TrackPanel.cpp:844
+#: TrackPanel.cpp:561
msgid "Split Stereo Track"
msgstr "Rozdeliť stereo stopu"
-#: ../src/TrackPanel.cpp:846
+#: TrackPanel.cpp:563
msgid "Set Sample Format"
msgstr "Nastaviť formát vzorkovania"
-#: ../src/AStatus.cpp:352
-#: ../src/TrackPanel.cpp:848
-#: ../src/TrackPanel.cpp:4322
+#: TrackPanel.cpp:565
+#: TrackPanel.cpp:6348
msgid "Set Rate"
msgstr "Nastaviť frekvenciu"
-#: ../src/TrackPanel.cpp:856
+#: TrackPanel.cpp:573
msgid "Up Octave"
msgstr "O oktávu vyššie"
-#: ../src/TrackPanel.cpp:857
+#: TrackPanel.cpp:574
msgid "Down Octave"
msgstr "O oktávu nižšie"
-#: ../src/TrackPanel.cpp:862
+#: TrackPanel.cpp:579
msgid "Font..."
msgstr "PÃsmo..."
-#: ../src/TrackPanel.cpp:873
+#: TrackPanel.cpp:590
msgid "Set Range..."
msgstr "Nastaviť rozsah..."
-#: ../src/EditToolBar.cpp:150
+#: TrackPanel.cpp:594
+#: toolbars/EditToolBar.cpp:135
msgid "Copy"
msgstr "KopÃrovaÅ¥"
-#: ../src/TrackPanel.cpp:1513
+#: TrackPanel.cpp:1263
msgid "Click to vertically zoom in, Shift-click to zoom out, Drag to create a particular zoom region."
-msgstr "KliknutÃm zväÄÅ¡Ãte vertikálne, kliknutÃm so shiftom zmenÅ¡Ãte, Å¥ahanÃm priblÞite konkrétny výsek..."
+msgstr "KliknutÃm zväÄÅ¡Ãte vertikálne, kliknutÃm so shiftom zmenÅ¡Ãte, Å¥ahanÃm priblÞite konkrétny výsek."
-#: ../src/TrackPanel.cpp:1519
+#: TrackPanel.cpp:1268
msgid "Drag the label vertically to change the order of the tracks."
-msgstr "Poradie stôp zmenÃte zvislým Å¥ahanÃm popisky (label) myÅ¡ou."
+msgstr "Poradie stôp zmenÃte zvislým Å¥ahanÃm popisky myÅ¡ou."
-#: ../src/TrackPanel.cpp:1616
+#: TrackPanel.cpp:1288
msgid "Click and drag to adjust relative size of stereo tracks."
msgstr "KliknutÃm a Å¥ahanÃm myÅ¡i nastavÃte relatÃvnu veľkosÅ¥ stereo stôp."
-#: ../src/TrackPanel.cpp:1621
+#: TrackPanel.cpp:1291
msgid "Click and drag to resize the track."
msgstr "KliknutÃm a Å¥ahanÃm myÅ¡i zmeÅte veľkosÅ¥ stopy."
-#: TrackPanel.cpp:1298
+#: TrackPanel.cpp:1322
msgid "Drag one or more label boundaries"
-msgstr ""
+msgstr "ŤahanÃm jedného alebo viacerých Å¡tÃtkov hranÃc"
-#: TrackPanel.cpp:1299
+#: TrackPanel.cpp:1323
msgid "Drag label boundary"
-msgstr ""
+msgstr "Pretiahnite Å¡tÃtok hranice"
-#: ../src/TrackPanel.cpp:1541
+#. i18n-hint: This string is for the Mac OS, which uses Command-, as the shortcut for Preferences
+#: TrackPanel.cpp:1339
msgid "Multi-Tool Mode: Cmd-, for Mouse and Keyboard Preferences"
msgstr "Viacnástrojový režim: Cmd-, pre nastavenia myši a klávesnice"
-#: ../src/TrackPanel.cpp:1543
+#. i18n-hint: This string is for Windows and Linux, which uses Control-P as the shortcut for Preferences
+#: TrackPanel.cpp:1342
msgid "Multi-Tool Mode: Ctrl-P for Mouse and Keyboard Preferences"
msgstr "Viacnástrojový režim: Ctrl-P vyvolá nastavenia myši a klávesnice"
-#: ../src/TrackPanel.cpp:1574
+#: TrackPanel.cpp:1388
msgid "Click and drag to move left selection boundary."
-msgstr "KliknutÃm a Å¥ahanÃm myÅ¡i nastavte hranicy výberu"
+msgstr "KliknutÃm a Å¥ahanÃm myÅ¡i nastavte ľavú hranicy výberu."
-#: ../src/TrackPanel.cpp:1579
+#: TrackPanel.cpp:1393
msgid "Click and drag to move right selection boundary."
msgstr "KliknutÃm a Å¥ahanÃm myÅ¡i zmeÅte pravú hranicy výberu."
-#: ../src/TrackPanel.cpp:3314
+#: TrackPanel.cpp:1735
+#: TrackPanel.cpp:3969
+#: TrackPanel.cpp:4001
+#: TrackPanel.cpp:4265
+#: TrackPanel.cpp:6497
+#: TrackPanel.cpp:6517
msgid "Modified Label"
msgstr "Upravený popis"
-#: ../src/TrackPanel.cpp:3315
+#: TrackPanel.cpp:1736
+#: TrackPanel.cpp:3970
+#: TrackPanel.cpp:4002
+#: TrackPanel.cpp:4266
+#: TrackPanel.cpp:6498
+#: TrackPanel.cpp:6518
msgid "Label Edit"
msgstr "Ãprava popisu"
-#: ../src/TrackPanel.cpp:1904
+#: TrackPanel.cpp:1976
msgid "Adjusted envelope."
msgstr "Upravená obálka."
-#: ../src/TrackPanel.cpp:1905
-#: ../src/prefs/MousePrefs.cpp:98
+#: TrackPanel.cpp:1977
+#: prefs/MousePrefs.cpp:115
msgid "Envelope"
msgstr "Obálka"
-#: TrackPanel.cpp:2033
+#: TrackPanel.cpp:2128
msgid "Moved clip to another track"
-msgstr ""
+msgstr "Klip bol presunutý do inej stopy"
-#: ../src/TrackPanel.cpp:2012
+#: TrackPanel.cpp:2132
msgid "left"
msgstr "doľava"
-#: ../src/TrackPanel.cpp:2012
+#: TrackPanel.cpp:2132
msgid "right"
msgstr "doprava"
#. i18n-hint: %s is a direction like left or right
-#: TrackPanel.cpp:2039
+#: TrackPanel.cpp:2134
#, c-format
msgid "Time shifted tracks/clips %s %.02f seconds"
-msgstr ""
+msgstr "Äasové posunutie stôp/klipov %s %.02f sekúnd"
-#: ../src/prefs/MousePrefs.cpp:97
+#: TrackPanel.cpp:2138
+#: prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:112
+#: prefs/MousePrefs.cpp:113
msgid "Time-Shift"
msgstr "Äasový posun"
-#: TrackPanel.cpp:2916
+#: TrackPanel.cpp:2921
msgid "To use Draw, choose 'Waveform' in the Track Drop-down Menu."
-msgstr ""
+msgstr "Ak chcete použiť Kreslenie, zvoľte 'Krivka' z rozbaľovacieho menu stopy."
-#: TrackPanel.cpp:2933
+#: TrackPanel.cpp:2938
msgid "To use Draw, zoom in further until you can see the individual samples."
-msgstr ""
+msgstr "Kreslenie je možné použiÅ¥, keÄ budete zväÄÅ¡ovaÅ¥ pohľad, kým neuvidÃte jednotlivé vzorky."
-#: ../src/TrackPanel.cpp:2637
+#: TrackPanel.cpp:3210
msgid "Moved Sample"
msgstr "Presunutá vzorka"
-#: ../src/TrackPanel.cpp:2638
+#: TrackPanel.cpp:3211
msgid "Sample Edit"
msgstr "Editácia vzorky"
-#: ../src/TrackPanel.cpp:2703
+#: TrackPanel.cpp:3310
#, c-format
msgid "Removed track '%s.'"
msgstr "Odstránené stopy '%s.'"
-#: ../src/TrackPanel.cpp:2705
+#: TrackPanel.cpp:3312
msgid "Track Remove"
msgstr "Odstrániť stopu"
-#: ../src/TrackPanel.cpp:2806
+#: TrackPanel.cpp:3377
+#: TrackPanel.cpp:7148
+msgid "Solo"
+msgstr "Solo"
+
+#: TrackPanel.cpp:3377
+msgid "Soloed track"
+msgstr "Osamostatnená stopa"
+
+#: TrackPanel.cpp:3382
+#: TrackPanel.cpp:7148
+msgid "Mute"
+msgstr "Stlmiť"
+
+#: TrackPanel.cpp:3382
+msgid "Muted track"
+msgstr "StÃÅ¡ená stopa"
+
+#: TrackPanel.cpp:3458
msgid "Moved gain slider"
msgstr "Zmena nastavenia zisku (gain)"
-#: ../src/TrackPanel.cpp:2806
+#: TrackPanel.cpp:3458
msgid "Moved pan slider"
msgstr "Zmena nastavenia vyváženia (pan)"
#. i18n-hint: Title of the Gain slider, used to adjust the volume
-#: ../src/TrackPanel.cpp:2807
-#: ../src/TrackPanel.cpp:4726
+#: TrackPanel.cpp:3459
+#: TrackPanel.cpp:5705
+#: TrackPanel.cpp:7221
msgid "Gain"
msgstr "Zisk"
-# i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: ../src/TrackPanel.cpp:2807
-#: ../src/TrackPanel.cpp:4733
+#: TrackPanel.cpp:3459
+#: TrackPanel.cpp:5643
+#: TrackPanel.cpp:7228
msgid "Pan"
msgstr "Vyváženie"
-#: ../src/TrackPanel.cpp:4387
-#: ../src/effects/ChangePitch.cpp:277
+#: TrackPanel.cpp:3586
+#: TrackPanel.cpp:6448
msgid "up"
msgstr "nahor"
-#: ../src/TrackPanel.cpp:4388
-#: ../src/effects/ChangePitch.cpp:277
+#: TrackPanel.cpp:3590
+#: TrackPanel.cpp:6449
msgid "down"
-msgstr "dole"
+msgstr "nadol"
-#: ../src/TrackPanel.cpp:4383
+#: TrackPanel.cpp:3597
+#: TrackPanel.cpp:6444
#, c-format
msgid "Moved '%s' %s"
msgstr "Presunuté '%s' %s"
-#: ../src/TrackPanel.cpp:4389
+#: TrackPanel.cpp:3600
+#: TrackPanel.cpp:6450
msgid "Move Track"
msgstr "Presunúť stopu"
-#: TrackPanel.cpp:3905
+#: TrackPanel.cpp:4165
msgid "Expand"
-msgstr ""
+msgstr "RozÅ¡ÃriÅ¥"
-#: TrackPanel.cpp:3905
+#: TrackPanel.cpp:4165
msgid "Expanded Cut Line"
-msgstr ""
+msgstr "RozÅ¡Ãrená rezaná lÃnia"
-#: TrackPanel.cpp:3973
+#: TrackPanel.cpp:4174
msgid "Merge"
-msgstr ""
+msgstr "ZlúÄiÅ¥"
-#: TrackPanel.cpp:3973
+#: TrackPanel.cpp:4174
msgid "Merged Clips"
-msgstr ""
+msgstr "ZlúÄiÅ¥ klipy"
-#: TrackPanel.cpp:3925
+#: TrackPanel.cpp:4186
msgid "Removed Cut Line"
-msgstr ""
+msgstr "Odobraté rezané lÃnie"
-#: TrackPanel.cpp:5210
+#: TrackPanel.cpp:5643
msgid "Adjusted Pan"
-msgstr ""
+msgstr "Upravená panoráma"
-#: TrackPanel.cpp:5272
+#: TrackPanel.cpp:5705
msgid "Adjusted gain"
-msgstr ""
-
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr ""
+msgstr "Upravená citlivosť"
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr ""
-
-#: TrackPanel.cpp:5428
+#: TrackPanel.cpp:5930
msgid "Can't delete track with active audio"
-msgstr ""
+msgstr "Stopu s aktÃvnym zvukom sa nedá zmazaÅ¥"
-#: ../src/TrackPanel.cpp:4087
+#: TrackPanel.cpp:6083
msgid "Stereo, "
msgstr "Stereo, "
-#: ../src/TrackPanel.cpp:4090
+#: TrackPanel.cpp:6086
msgid "Mono, "
msgstr "Mono, "
-#: ../src/TrackPanel.cpp:4092
+#: TrackPanel.cpp:6088
msgid "Left, "
msgstr "Ľavý,"
-#: ../src/TrackPanel.cpp:4094
+#: TrackPanel.cpp:6090
msgid "Right, "
msgstr "Pravý,"
-#: ../src/TrackPanel.cpp:4116
-#: ../src/TrackPanel.cpp:4225
+#: TrackPanel.cpp:6112
+#: TrackPanel.cpp:6258
#, c-format
msgid "Changed '%s' to %s"
msgstr "Zmenené '%s' na %s"
-#: ../src/TrackPanel.cpp:4121
+#: TrackPanel.cpp:6117
msgid "Channel"
msgstr "Kanál"
-#: ../src/TrackPanel.cpp:4131
+#: TrackPanel.cpp:6138
#, c-format
msgid "Split stereo track '%s'"
-msgstr "Rozdeliť stereostopu '%s'"
+msgstr "Rozdeliť stereo stopu '%s'"
-#: ../src/TrackPanel.cpp:4153
+#: TrackPanel.cpp:6176
#, c-format
msgid "Made '%s' a stereo track"
msgstr "Vytvoriť '%s' stereo stopu"
-#: ../src/TrackPanel.cpp:4156
+#: TrackPanel.cpp:6179
msgid "Make Stereo"
msgstr "Vytvoriť stereo"
-#: ../src/TrackPanel.cpp:4189
+#: TrackPanel.cpp:6222
#, c-format
msgid "Changed '%s' to %d Hz"
msgstr "Zmenené '%s' na %d Hz"
-#: ../src/TrackPanel.cpp:4191
+#: TrackPanel.cpp:6224
msgid "Rate Change"
msgstr "Zmena rýchlosti"
-#: ../src/TrackPanel.cpp:4229
+#: TrackPanel.cpp:6262
msgid "Format Change"
msgstr "Zmena formátu"
-#: ../src/TrackPanel.cpp:4351
+#: TrackPanel.cpp:6412
msgid "Change lower speed limit (%) to:"
msgstr "Zmeniť dolný limit rýchlosti (%) na:"
-#: ../src/TrackPanel.cpp:4352
-#: ../src/TrackPanel.cpp:4353
+#: TrackPanel.cpp:6413
+#: TrackPanel.cpp:6414
msgid "Lower speed limit"
msgstr "Dolný limit rýchlosti"
-#: ../src/TrackPanel.cpp:4358
+#: TrackPanel.cpp:6419
msgid "Change upper speed limit (%) to:"
msgstr "Zmeniť horný limit rýchlosti (%) na:"
-#: ../src/TrackPanel.cpp:4359
-#: ../src/TrackPanel.cpp:4360
+#: TrackPanel.cpp:6420
+#: TrackPanel.cpp:6421
msgid "Upper speed limit"
msgstr "Horný limit rýchlosti"
-#: ../src/TrackPanel.cpp:4368
+#: TrackPanel.cpp:6429
#, c-format
msgid "Set range to '%d' - '%d'"
msgstr "Nastavte rozsah na '%d' - '%d'"
-#: ../src/TrackPanel.cpp:4371
+#: TrackPanel.cpp:6432
msgid "Set Range"
msgstr "Nastaviť rozsah"
-#: ../src/TrackPanel.cpp:4416
+#: TrackPanel.cpp:6479
msgid "Change track name to:"
msgstr "Premenovať stopu na:"
-#: ../src/TrackPanel.cpp:4417
+#: TrackPanel.cpp:6480
msgid "Track Name"
msgstr "Meno stopy"
-#: ../src/TrackPanel.cpp:4420
+#: TrackPanel.cpp:6483
#, c-format
msgid "Renamed '%s' to '%s'"
msgstr "Premenované '%s' na '%s'"
-#: ../src/TrackPanel.cpp:4423
+#: TrackPanel.cpp:6486
msgid "Name Change"
msgstr "Pomenovať zmenu"
-#: ../src/TrackPanel.cpp:4454
+#: TrackPanel.cpp:6587
msgid "Label Track Font"
-msgstr "Font pre popisy"
+msgstr "Font pre popis stopy"
-#: TrackPanel.cpp:6227
+#: TrackPanel.cpp:6599
+#: TrackPanel.cpp:6605
msgid "Face name"
-msgstr ""
+msgstr "Názov plochy"
-#: TrackPanel.cpp:6236
+#: TrackPanel.cpp:6609
+#: TrackPanel.cpp:6616
msgid "Face size"
-msgstr ""
-
-#: ../src/TrackPanel.cpp:4701
-msgid "Mute"
-msgstr "Stlmiť"
-
-#: ../src/TrackPanel.cpp:4701
-msgid "Solo"
-msgstr "Sólo"
+msgstr "Veľkosť plochy"
-#: TrackPanelAx.cpp:266
+#: TrackPanelAx.cpp:273
msgid "TrackView"
-msgstr ""
+msgstr "Pohľad na Stopu"
-#: TrackPanelAx.cpp:274
+#: TrackPanelAx.cpp:281
msgid "Track Accessible out of sync"
-msgstr ""
+msgstr "Stopa dostupná zo synchronizácie"
-#: TrackPanelAx.cpp:282
+#: TrackPanelAx.cpp:289
#, c-format
msgid "Track %d"
-msgstr ""
+msgstr "Stopa %d"
-#: TrackPanelAx.cpp:288
+#: TrackPanelAx.cpp:295
msgid " Mute On"
-msgstr ""
+msgstr "StÃÅ¡enie zapnuté"
-#: TrackPanelAx.cpp:293
+#: TrackPanelAx.cpp:300
msgid " Solo On"
-msgstr ""
+msgstr "Solo zapnuté"
-#: TrackPanelAx.cpp:297
+#: TrackPanelAx.cpp:304
msgid " Select On"
-msgstr ""
+msgstr "Výber zapnutý"
-#: VoiceKey.cpp:88 VoiceKey.cpp:238 VoiceKey.cpp:376 VoiceKey.cpp:517
+#: VoiceKey.cpp:88
+#: VoiceKey.cpp:238
+#: VoiceKey.cpp:376
+#: VoiceKey.cpp:517
msgid "Selection is too small to use voice key."
-msgstr ""
+msgstr "Výber je prÃliÅ¡ malý na to, aby bol využitý hlasový kľúÄ."
#: VoiceKey.cpp:843
msgid "Calibration Results\n"
-msgstr ""
+msgstr "Výsledky kalibrácie\n"
#: VoiceKey.cpp:844
#, c-format
msgid "Energy -- mean: %1.4f sd: (%1.4f)\n"
-msgstr ""
+msgstr "Energia -- priemer: %1.4f sd: (%1.4f)\n"
#: VoiceKey.cpp:845
#, c-format
msgid "Sign Changes -- mean: %1.4f sd: (%1.4f)\n"
-msgstr ""
+msgstr "Zmeny oznaÄenia -- priemer: %1.4f sd: (% 1.4f) \n"
#: VoiceKey.cpp:846
#, c-format
msgid "Direction Changes -- mean: %1.4f sd: (%1.4f)\n"
-msgstr ""
+msgstr "Zmeny smeru -- priemer: %1.4f sd: (% 1.4f) \n"
-#: ../src/WaveTrack.cpp:128
+#: WaveTrack.cpp:88
msgid "Audio Track"
msgstr "Audio stopa"
-#: WaveTrack.cpp:515 WaveTrack.cpp:534
+#: WaveTrack.cpp:826
+#: WaveTrack.cpp:845
msgid "There is not enough room available to paste the selection"
-msgstr ""
+msgstr "K vloženiu výberu nie je dosť miesta"
-#: WaveTrack.cpp:1583
+#: WaveTrack.cpp:1863
msgid "There is not enough room available to expand the cut line"
-msgstr ""
+msgstr "Nie je k dispozÃcii dostatok priestoru na rozÅ¡Ãrenie rezania lÃnie"
-#: ../src/commands/CommandManager.cpp:323
+#: commands/CommandManager.cpp:518
#, c-format
msgid "Plugins 1 to %i"
msgstr "Moduly 1 - %i"
-#: ../src/commands/CommandManager.cpp:337
+#: commands/CommandManager.cpp:532
#, c-format
msgid "Plugins %i to %i"
msgstr "Moduly %i - %i"
#: commands/CommandManager.cpp:857
msgid "Disallowed for some reason. Try selecting some audio first?"
-msgstr ""
+msgstr "Zakázané z nejakého dôvodu. Skúste skôr vybrať niektoré Audio ?"
-#: commands/CommandManager.cpp:724
-msgid "You can only do this when playing and recording are\n"
+#: commands/CommandManager.cpp:861
+msgid ""
+"You can only do this when playing and recording are\n"
" stopped. [Pausing is not sufficient.]"
msgstr ""
+"Môžete to urobiť ale pri prehrávanà a nahrávanà sa\n"
+"zastavÃ. [Pozastavenie nie je dostatoÄné.]"
-#: commands/CommandManager.cpp:726
-msgid "You must first select some stereo audio for this\n"
+#: commands/CommandManager.cpp:863
+msgid ""
+"You must first select some stereo audio for this\n"
" to use. [You can't use this with mono.]"
msgstr ""
+"Najprv musÃte vybraÅ¥ nejaké stereo audio pre toto\n"
+" použitie.[Nie je možné použiť toto mono.]"
-#: commands/CommandManager.cpp:728
+#: commands/CommandManager.cpp:865
msgid "You must first select some audio for this to use."
-msgstr ""
+msgstr "Najprv musÃte vybraÅ¥ nejaké audio pre toto použitie."
-#: commands/CommandManager.cpp:730
-msgid "You must first select some audio for this\n"
+#: commands/CommandManager.cpp:867
+msgid ""
+"You must first select some audio for this\n"
" to use. [Selecting other kinds of track won't work.]"
msgstr ""
+"Najprv musÃte vybraÅ¥ nejaké audio pre toto\n"
+"použitie.[Výber iných druhov stopy nebude fungovať.]"
-#: commands/CommandManager.cpp:903
+#: commands/CommandManager.cpp:872
msgid "Disallowed"
-msgstr ""
+msgstr "Zakázané"
-#: ../src/commands/CommandManager.cpp:640
+#: commands/CommandManager.cpp:1054
#, c-format
msgid "Loaded %d keyboard shortcuts\n"
msgstr "NaÄÃtaných %d klávesových skratiek\n"
-#: ../src/commands/CommandManager.cpp:643
+#: commands/CommandManager.cpp:1056
msgid "Loading keyboard shortcuts"
msgstr "NaÄÃtávam klávesové skratky"
-#: ../src/effects/Amplify.cpp:34
+#: effects/Amplify.cpp:52
#, c-format
msgid "Applied effect: %s %.1f dB"
msgstr "Použitý efekt: %s %.1f dB"
-#: ../src/effects/Amplify.cpp:63
+#: effects/Amplify.cpp:139
msgid "Amplify"
msgstr "Zosilniť"
-#: effects/Amplify.cpp:155 effects/Compressor.cpp:476
+#: effects/Amplify.cpp:155
+#: effects/Compressor.cpp:476
#: effects/Normalize.cpp:337
msgid "by Dominic Mazzoni"
-msgstr ""
+msgstr "od Dominica Mazzoniho"
-#: ../src/effects/Amplify.cpp:132
+#: effects/Amplify.cpp:168
msgid "Amplification (dB):"
msgstr "Zosilnenie (dB):"
#: effects/Amplify.cpp:183
msgid "Amplification dB"
-msgstr ""
+msgstr "Zosilnenie dB"
-#: ../src/effects/Amplify.cpp:152
+#: effects/Amplify.cpp:190
msgid "New Peak Amplitude (dB):"
msgstr "Nová Å¡piÄková amplitúda (dB):"
-#: ../src/effects/Amplify.cpp:164
+#: effects/Amplify.cpp:200
msgid "Allow clipping"
msgstr "Povoliť clipping"
-#: effects/Amplify.cpp:222 effects/Amplify.cpp:279 effects/Amplify.cpp:323
+#: effects/Amplify.cpp:222
+#: effects/Amplify.cpp:279
+#: effects/Amplify.cpp:323
msgid "-Infinity"
-msgstr ""
+msgstr "-NekoneÄno"
-#: ../src/effects/Amplify.h:47
+#: effects/Amplify.h:37
msgid "Amplify..."
msgstr "Zosilniť..."
-#: ../src/effects/Amplify.h:51
+#: effects/Amplify.h:51
msgid "Amplifying"
msgstr "ZosilÅujem"
#: effects/AutoDuck.cpp:125
msgid "You selected a track which does not contain audio. AutoDuck can only process audio tracks."
-msgstr ""
+msgstr "Je vybraná stopa, ktorá neobsahuje audio dáta. Automatické zoslabenie môže spracovávať iba audio stopy."
-#: effects/AutoDuck.cpp:126 effects/AutoDuck.cpp:138 effects/AutoDuck.cpp:451
-#: effects/AutoDuck.cpp:578
+#: effects/AutoDuck.cpp:126
+#: effects/AutoDuck.cpp:138
+#: effects/AutoDuck.cpp:453
+#: effects/AutoDuck.cpp:570
msgid "Auto Duck"
-msgstr ""
+msgstr "Automatické zoslabenie (Auto Duck)"
#: effects/AutoDuck.cpp:137
msgid "Auto Duck needs a control track which must be placed below the selected track(s)."
-msgstr ""
+msgstr "Automatické zoslabenie vyžaduje riadiacu stopu, ktorá musà byť umiestená pod vybranou stopou."
-#: effects/AutoDuck.cpp:463
+#: effects/AutoDuck.cpp:465
msgid "Auto Duck by Markus Meyer"
-msgstr ""
+msgstr "Automatické zoslabenie(Auto Duck) od Markuse Meyera"
-#: effects/AutoDuck.cpp:485
+#: effects/AutoDuck.cpp:487
msgid "Duck amount:"
-msgstr ""
+msgstr "Miera zoslabenia:"
-#: effects/AutoDuck.cpp:490
+#: effects/AutoDuck.cpp:492
msgid "Maximum pause:"
-msgstr ""
-
-#: effects/AutoDuck.cpp:492 effects/AutoDuck.cpp:497 effects/AutoDuck.cpp:502
-#: effects/AutoDuck.cpp:507 effects/AutoDuck.cpp:512
-#: prefs/AudioIOPrefs.cpp:162 prefs/AudioIOPrefs.cpp:164
-#: prefs/AudioIOPrefs.cpp:188 prefs/AudioIOPrefs.cpp:190
-#: prefs/AudioIOPrefs.cpp:198 widgets/TimeTextCtrl.cpp:197
+msgstr "Maximálna pauza:"
+
+#. i18n-hint: Name of time display format that shows time in seconds
+#: effects/AutoDuck.cpp:494
+#: effects/AutoDuck.cpp:499
+#: effects/AutoDuck.cpp:504
+#: effects/AutoDuck.cpp:509
+#: effects/AutoDuck.cpp:514
+#: prefs/AudioIOPrefs.cpp:174
+#: prefs/AudioIOPrefs.cpp:182
+#: prefs/AudioIOPrefs.cpp:184
+#: prefs/AudioIOPrefs.cpp:211
+#: prefs/AudioIOPrefs.cpp:213
+#: prefs/MidiIOPrefs.cpp:161
+#: prefs/MidiIOPrefs.cpp:163
+#: prefs/MidiIOPrefs.cpp:187
+#: prefs/MidiIOPrefs.cpp:189
+#: prefs/MidiIOPrefs.cpp:197
+#: widgets/TimeTextCtrl.cpp:263
msgid "seconds"
-msgstr ""
+msgstr "sekúnd"
-#: effects/AutoDuck.cpp:495
+#: effects/AutoDuck.cpp:497
msgid "Outer fade down length:"
-msgstr ""
+msgstr "Vonkajšia zostupná hrana:"
-#: effects/AutoDuck.cpp:500
+#: effects/AutoDuck.cpp:502
msgid "Outer fade up length:"
-msgstr ""
+msgstr "Vonkajšia nabežná hrana:"
-#: effects/AutoDuck.cpp:505
+#: effects/AutoDuck.cpp:507
msgid "Inner fade down length:"
-msgstr ""
+msgstr "Vnútorná zostupná hrana:"
-#: effects/AutoDuck.cpp:510
+#: effects/AutoDuck.cpp:512
msgid "Inner fade up length:"
-msgstr ""
+msgstr "Vnútorná nabežná hrana:"
-#: effects/AutoDuck.cpp:519 effects/Compressor.cpp:479
-#, fuzzy
+#: effects/AutoDuck.cpp:521
+#: effects/Compressor.cpp:494
msgid "Threshold:"
msgstr "Prah:"
-#: effects/AutoDuck.cpp:578
+#: effects/AutoDuck.cpp:570
msgid "Please enter valid values."
-msgstr ""
+msgstr "Zadajte prosÃm reálne hodnoty."
-#: effects/AutoDuck.cpp:712
+#: effects/AutoDuck.cpp:705
msgid "Preview not available"
-msgstr ""
+msgstr "Vyskúšanie nie je k dispozÃcii"
-#: effects/AutoDuck.h:97
+#: effects/AutoDuck.h:98
msgid "Auto Duck..."
-msgstr ""
+msgstr "Automatické zoslabenie..."
-#: effects/AutoDuck.h:102
+#: effects/AutoDuck.h:115
msgid "Processing Auto Duck..."
-msgstr ""
+msgstr "Aplikuje sa Automatické zoslabenie..."
-#: ../src/LangChoice.cpp:94
-#: ../src/Tags.cpp:721
-#: ../src/effects/Amplify.cpp:187
-#: ../src/effects/AvcCompressor.cpp:716
-#: ../src/effects/BassBoost.cpp:332
-#: ../src/effects/ChangePitch.cpp:393
-#: ../src/effects/ChangeSpeed.cpp:379
-#: ../src/effects/ChangeTempo.cpp:284
-#: ../src/effects/Compressor.cpp:484
-#: ../src/effects/Echo.cpp:242
-#: ../src/effects/Equalization.cpp:731
-#: ../src/effects/Filter.cpp:482
-#: ../src/effects/Normalize.cpp:258
-#: ../src/effects/Phaser.cpp:576
-#: ../src/effects/Repeat.cpp:251
-#: ../src/effects/VST/VSTEffect.cpp:98
-#: ../src/effects/VST/VSTEffect.cpp:455
-#: ../src/effects/Wahwah.cpp:563
-#: ../src/effects/ladspa/LadspaEffect.cpp:498
-#: ../src/effects/nyquist/Nyquist.cpp:736
-#: ../src/effects/nyquist/Nyquist.cpp:883
-#: ../src/effects/nyquist/Nyquist.cpp:949
-#: ../src/prefs/FileFormatPrefs.cpp:471
-#: ../src/prefs/PrefsDialog.cpp:100
-#: ../src/widgets/Warning.cpp:56
+#: effects/AvcCompressor.cpp:738
+#: effects/VST/VSTEffect.cpp:455
+#: effects/audiounits/AudioUnitEffect.cpp:882
+#: effects/nyquist/Nyquist.cpp:1214
+#: widgets/ErrorDialog.cpp:101
msgid "OK"
msgstr "OK"
-#: ../src/effects/BassBoost.cpp:36
+#: effects/BassBoost.cpp:52
#, c-format
msgid "Applied effect: %s frequency = %.0f Hz, boost = %.0f dB"
msgstr "Použitý efekt: %s frekvencia = %.0f Hz, zosilnenie = %.0f dB"
#: effects/BassBoost.cpp:169
msgid "Bass Boost"
-msgstr ""
+msgstr "ZdôrazÅujem basy"
#: effects/BassBoost.cpp:182
+#: effects/Phaser.cpp:219
+#: effects/Wahwah.cpp:214
msgid "by Nasca Octavian Paul"
-msgstr ""
+msgstr "od Nasca Octavian Paul"
-#: ../src/effects/BassBoost.cpp:286
+#: effects/BassBoost.cpp:196
+#: effects/ChangePitch.cpp:322
msgid "Frequency (Hz):"
msgstr "Frekvencia (Hz):"
#: effects/BassBoost.cpp:205
msgid "Frequency Hertz"
-msgstr ""
+msgstr "Frekvencia v Hertzoch"
-#: ../src/effects/BassBoost.cpp:302
+#: effects/BassBoost.cpp:209
msgid "Boost (dB):"
msgstr "Zdôraznenie (boost) (dB):"
#: effects/BassBoost.cpp:218
msgid "Boost dB"
-msgstr ""
+msgstr "Zdôraznenie dB"
#: effects/BassBoost.h:35
-#, fuzzy
msgid "BassBoost..."
-msgstr "Zdôraznenie basov..."
+msgstr "ZdôrazÅujem basy..."
-#: ../src/effects/BassBoost.h:48
+#: effects/BassBoost.h:49
msgid "Boosting Bass Frequencies"
msgstr "ZdôrazÅujem basové frekvencie"
#: effects/ChangeLength.h:26
msgid "Change Length..."
-msgstr ""
+msgstr "Zmeniť dĺžku..."
-#: effects/ChangeLength.h:30
+#: effects/ChangeLength.h:34
msgid "Changing Length..."
-msgstr ""
+msgstr "Zmena dĺžky..."
-#: ../src/effects/ChangePitch.cpp:56
+#: effects/ChangePitch.cpp:55
#, c-format
msgid "Applied effect: %s %.2f semitones"
msgstr "Použitý efekt: %s %.2f poltónov"
-#: ../src/effects/ChangePitch.cpp:119
+#: effects/ChangePitch.cpp:198
msgid "Change Pitch"
msgstr "Zmeniť výšku"
-#: ../src/effects/ChangePitch.cpp:242
+#: effects/ChangePitch.cpp:256
msgid "Change Pitch without Changing Tempo"
msgstr "Zmeniť výšku ladenia bez zmeny tempa"
-#: ../src/effects/ChangePitch.cpp:247
-#: ../src/effects/ChangeSpeed.cpp:287
-#: ../src/effects/ChangeTempo.cpp:164
+#: effects/ChangePitch.cpp:258
+#: effects/ChangeSpeed.cpp:334
+#: effects/ChangeTempo.cpp:176
msgid "by Vaughan Johnson && Dominic Mazzoni"
msgstr "od Vaughana Johnsona && Dominica Mazzoniho"
-#: ../src/effects/ChangePitch.cpp:252
-#: ../src/effects/ChangeTempo.cpp:169
+#: effects/ChangePitch.cpp:260
+#: effects/ChangeTempo.cpp:178
msgid "using SoundTouch, by Olli Parviainen"
msgstr "pomocou SoundTouch od Olli Parviainen"
#: effects/ChangePitch.cpp:269
msgid "Pitch:"
-msgstr ""
+msgstr "Rozostup:"
#: effects/ChangePitch.cpp:274
msgid "From:"
-msgstr ""
+msgstr "Od:"
#: effects/ChangePitch.cpp:275
msgid "From Pitch"
-msgstr ""
+msgstr "Od rozostupu"
#: effects/ChangePitch.cpp:286
msgid "Up"
-msgstr ""
+msgstr "Hore"
#: effects/ChangePitch.cpp:289
msgid "Down"
-msgstr ""
+msgstr "Dolu"
#: effects/ChangePitch.cpp:299
msgid "To:"
-msgstr ""
+msgstr "Do:"
#: effects/ChangePitch.cpp:300
msgid "To Pitch"
-msgstr ""
+msgstr "Do rozostupu"
-#: ../src/effects/ChangePitch.cpp:299
+#: effects/ChangePitch.cpp:311
msgid "Semitones (half-steps):"
msgstr "Poltóny:"
#: effects/ChangePitch.cpp:316
msgid "Semitones in half-steps"
-msgstr ""
+msgstr "Poltóny v polkrokoch"
-#: effects/ChangePitch.cpp:326 effects/ChangeSpeed.cpp:369
-#: effects/ChangeTempo.cpp:209 effects/ChangeTempo.cpp:222
+#: effects/ChangePitch.cpp:326
+#: effects/ChangeSpeed.cpp:367
+#: effects/ChangeTempo.cpp:209
+#: effects/ChangeTempo.cpp:222
msgid "from"
-msgstr ""
+msgstr "od"
#: effects/ChangePitch.cpp:327
msgid "From frequency in hertz"
-msgstr ""
+msgstr "Od frekvencie v hertzoch"
-#: ../src/effects/ChangePitch.cpp:284
-#: ../src/effects/ChangePitch.cpp:330
-#: ../src/effects/ChangeSpeed.cpp:351
-#: ../src/effects/ChangeTempo.cpp:223
-#: ../src/effects/ChangeTempo.cpp:254
+#: effects/ChangePitch.cpp:331
+#: effects/ChangeSpeed.cpp:372
+#: effects/ChangeTempo.cpp:214
+#: effects/ChangeTempo.cpp:227
msgid "to"
msgstr "na"
#: effects/ChangePitch.cpp:332
msgid "To frequency in seconds"
-msgstr ""
+msgstr "Do frekvenciu v sekundách"
-#: ../src/effects/ChangePitch.cpp:353
-#: ../src/effects/ChangeSpeed.cpp:305
-#: ../src/effects/ChangeTempo.cpp:182
+#: effects/ChangePitch.cpp:338
+#: effects/ChangeSpeed.cpp:345
+#: effects/ChangeTempo.cpp:187
msgid "Percent Change:"
msgstr "Percento zmeny:"
-#: effects/ChangePitch.cpp:343 effects/ChangePitch.cpp:356
-#: effects/ChangeSpeed.cpp:358 effects/ChangeTempo.cpp:198
+#: effects/ChangePitch.cpp:343
+#: effects/ChangePitch.cpp:356
+#: effects/ChangeSpeed.cpp:356
+#: effects/ChangeTempo.cpp:198
msgid "Percent Change"
-msgstr ""
+msgstr "Percento zmeny"
-#: ../src/effects/ChangePitch.h:31
+#: effects/ChangePitch.h:31
msgid "Change Pitch..."
msgstr "Zmeniť výšku..."
-#: ../src/effects/ChangePitch.h:35
+#: effects/ChangePitch.h:46
msgid "Changing Pitch"
msgstr "MenÃm výšku"
-#: ../src/effects/ChangeSpeed.cpp:40
-#: ../src/effects/ChangeTempo.cpp:43
+#: effects/ChangeSpeed.cpp:54
+#: effects/ChangeTempo.cpp:55
#, c-format
msgid "Applied effect: %s %.1f%%"
msgstr "Použitý efekt: %s %.1f%%"
-#: ../src/effects/ChangeSpeed.cpp:47
+#: effects/ChangeSpeed.cpp:296
msgid "Change Speed"
msgstr "Zmeniť rýchlosť"
-#. i18n-hint: n/a is an English
-#: ../src/effects/ChangeSpeed.cpp:338
+#. i18n-hint: n/a is an English abbreviation meaning "not applicable"
+#. (in other words, unimportant, not relevant).
+#: effects/ChangeSpeed.cpp:327
msgid "n/a"
-msgstr "nemá význam"
+msgstr "n/a"
-#: ../src/effects/ChangeSpeed.cpp:282
+#: effects/ChangeSpeed.cpp:332
msgid "Change Speed, affecting both Tempo and Pitch"
msgstr "Zmena rýchlosti, ovplyvÅujúca tempo a výšku"
-#: ../src/effects/ChangeSpeed.cpp:292
+#: effects/ChangeSpeed.cpp:336
msgid "using SampleRate, by Erik de Castro Lopo"
msgstr "pomocou SampleRate od Erika de Castro Lopo"
-#: effects/ChangeSpeed.cpp:366
+#: effects/ChangeSpeed.cpp:364
msgid "Standard Vinyl RPM:"
-msgstr ""
+msgstr "Štandardný vinyl RPM:"
-#: effects/ChangeSpeed.cpp:370
+#: effects/ChangeSpeed.cpp:368
msgid "From RPM"
-msgstr ""
+msgstr "Od RPM"
-#: effects/ChangeSpeed.cpp:375
+#: effects/ChangeSpeed.cpp:373
msgid "To RPM"
-msgstr ""
+msgstr "Do RPM"
-#: ../src/effects/ChangeSpeed.h:37
+#: effects/ChangeSpeed.h:32
msgid "Change Speed..."
-msgstr "Zmeniť rýchlost..."
+msgstr "Zmeniť rýchlosť..."
-#: ../src/effects/ChangeSpeed.h:40
+#: effects/ChangeSpeed.h:46
msgid "Changing Speed"
msgstr "MenÃm rýchlosÅ¥"
-#: ../src/effects/ChangeTempo.cpp:62
+#: effects/ChangeTempo.cpp:141
msgid "Change Tempo"
msgstr "Zmeniť tempo"
-#: ../src/effects/ChangeTempo.cpp:159
+#: effects/ChangeTempo.cpp:174
msgid "Change Tempo without Changing Pitch"
msgstr "Zmeniť tempo bez zmeny ladenia"
#: effects/ChangeTempo.cpp:206
msgid "Beats per minute:"
-msgstr ""
+msgstr "Ãderov za minútu:"
#: effects/ChangeTempo.cpp:210
msgid "From beats per minute"
-msgstr ""
+msgstr "Od úderov za minútu"
#: effects/ChangeTempo.cpp:215
msgid "To beats per minute"
-msgstr ""
+msgstr "Do úderov za minútu"
#: effects/ChangeTempo.cpp:219
msgid "Length (seconds):"
-msgstr ""
+msgstr "Dĺžka (sekúnd):"
#: effects/ChangeTempo.cpp:223
msgid "From length in seconds"
-msgstr ""
+msgstr "Od dĺžky v sekundách"
#: effects/ChangeTempo.cpp:228
msgid "To length in seconds"
-msgstr ""
+msgstr "Do dĺžky v sekundách"
-#: ../src/effects/ChangeTempo.h:40
+#: effects/ChangeTempo.h:35
msgid "Change Tempo..."
msgstr "Zmeniť tempo..."
-#: ../src/effects/ChangeTempo.h:44
+#: effects/ChangeTempo.h:49
msgid "Changing Tempo"
msgstr "MenÃm tempo"
#: effects/ClickRemoval.cpp:314
msgid "Click Removal"
-msgstr ""
+msgstr "Klikni pre odstránenie"
-#: ../src/effects/ClickRemoval.cpp:317
+#: effects/ClickRemoval.cpp:327
msgid "Click and Pop Removal by Craig DeForest"
msgstr "Odstránenie šumu a praskania od Craiga DeForesta"
-#: effects/ClickRemoval.cpp:350
+#: effects/ClickRemoval.cpp:341
msgid "Select threshold (lower is more sensitive):"
-msgstr ""
+msgstr "Výber prahu (nižšà je citlivejÅ¡Ã):"
#: effects/ClickRemoval.cpp:350
msgid "Select threshold"
-msgstr ""
+msgstr "Vybrať prahovú hodnotu"
-#: effects/ClickRemoval.cpp:362
+#: effects/ClickRemoval.cpp:354
msgid "Max spike width (higher is more sensitive):"
-msgstr ""
+msgstr "Maximálna Å¡Ãrka inpulzu (vyššia je citlivejÅ¡ia):"
#: effects/ClickRemoval.cpp:363
msgid "Max spike width"
-msgstr ""
+msgstr "Maximálna Å¡Ãrka Å¡piÄky"
-#: ../src/effects/ClickRemoval.h:42
+#: effects/ClickRemoval.h:42
msgid "Click Removal..."
-msgstr "Odstránenie praskania..."
+msgstr "Kliknite pre odstránenie ..."
-#: ../src/effects/ClickRemoval.h:46
+#: effects/ClickRemoval.h:56
msgid "Removing clicks and pops..."
msgstr "OdstraÅujem praskot a Å¡um..."
-#: ../src/effects/Compressor.cpp:43
+#: effects/Compressor.cpp:461
msgid "Dynamic Range Compressor"
msgstr "Kompresor dynamického rozsahu"
#: effects/Compressor.cpp:498
msgid "Threshold"
-msgstr ""
+msgstr "Prahová hodnota"
#: effects/Compressor.cpp:502
msgid "Ratio:"
-msgstr ""
+msgstr "Pomer:"
#: effects/Compressor.cpp:506
msgid "Ratio"
-msgstr ""
+msgstr "Pomer"
#: effects/Compressor.cpp:510
-#, fuzzy
msgid "Attack Time:"
msgstr "Dĺžka nábehu:"
#: effects/Compressor.cpp:514
msgid "Attack Time"
-msgstr ""
+msgstr "Dĺžka nábehu"
#: effects/Compressor.cpp:518
msgid "Decay Time:"
-msgstr ""
+msgstr "Äas dobehu: "
#: effects/Compressor.cpp:522
msgid "Decay Time"
-msgstr ""
+msgstr "Äas dobehu"
-#: ../src/effects/Compressor.cpp:469
-msgid "Normalize to 0dB after compressing"
-msgstr "Po kompresii normalizovať na 0 dB"
+#: effects/Compressor.cpp:530
+msgid "Make-up gain for 0dB after compressing"
+msgstr "ZostaviÅ¥ prÃrastok pre 0dB po kompresii"
#: effects/Compressor.cpp:563
#, c-format
-#, fuzzy
msgid "Threshold %d dB"
-msgstr "Prah: %d dB"
+msgstr "Prahová hodnota %d dB"
#: effects/Compressor.cpp:564
#, c-format
msgid "%3d dB"
-msgstr ""
+msgstr "%3d dB"
#: effects/Compressor.cpp:567
#, c-format
msgid "Ratio %.0f to 1"
-msgstr ""
+msgstr "Pomer %.0f to 1"
#: effects/Compressor.cpp:568
#, c-format
msgid "%.0f:1"
-msgstr ""
+msgstr "%.0f:1"
#: effects/Compressor.cpp:571
#, c-format
msgid "Ratio %.1f to 1"
-msgstr ""
+msgstr "Pomer %.1f k 1"
#: effects/Compressor.cpp:572
#, c-format
msgid "%.1f:1"
-msgstr ""
+msgstr "%.1f:1"
#: effects/Compressor.cpp:575
#, c-format
-#, fuzzy
msgid "Attack Time %.1f secs"
-msgstr "Äas nábehu: %.1f sekúnd"
+msgstr "Äas nábehu %.1f sekúnd"
-#: effects/Compressor.cpp:576 effects/Compressor.cpp:579
+#: effects/Compressor.cpp:576
+#: effects/Compressor.cpp:579
#, c-format
msgid "%.1f secs"
-msgstr ""
+msgstr "%.1f sekúnd"
#: effects/Compressor.cpp:578
#, c-format
msgid "Decay Time %.1f secs"
-msgstr ""
+msgstr "Äas dobehu %.1f sek."
-#: ../src/effects/Compressor.h:36
+#: effects/Compressor.h:36
msgid "Compressor..."
msgstr "Kompresor..."
-#: ../src/effects/Compressor.h:40
+#: effects/Compressor.h:50
msgid "Applying Dynamic Range Compression..."
msgstr "Aplikujem kompresiu dynamického rozsahu..."
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
-msgstr ""
+msgstr "Nástroj kontrastu popredia"
#: effects/Contrast.cpp:79
-msgid "Foreground times selected.\n"
+msgid ""
+"Foreground times selected.\n"
"Now select background and use Ctrl+Shift+T or menu again."
msgstr ""
+"Äas popredia vybraný. \n"
+"Teraz vyberte pozadie a použitie Ctrl+Shift+T alebo znova menu."
#: effects/Contrast.cpp:127
-msgid "Start time after after end time!\n"
+msgid ""
+"Start time after after end time!\n"
"Please enter reasonable times."
msgstr ""
+"ZaÄiatoÄný Äas nasleduje po koncovom Äase! \n"
+"ProsÃm, zadajte primerané Äasy."
#: effects/Contrast.cpp:137
-msgid "Times are not reasonable!\n"
+msgid ""
+"Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
+"Äasy nie sú primerané! \n"
+"ProsÃm, zadajte primerané Äasy."
-#: effects/Contrast.cpp:120
+#: effects/Contrast.cpp:190
msgid "Hello.\n"
-msgstr ""
+msgstr "Ahoj.\n"
#: effects/Contrast.cpp:245
msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
+msgstr "WCAG2 Audio Analyzátor Kontrastu"
-#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
+#: effects/Contrast.cpp:277
+#: effects/Contrast.cpp:288
+#: effects/Contrast.cpp:371
+#: effects/Contrast.cpp:415
msgid "Measured"
-msgstr ""
+msgstr "Merané"
-#: effects/Contrast.cpp:231
+#: effects/Contrast.cpp:318
msgid "Contrast Analyzer"
-msgstr ""
+msgstr "Analyzátor Kontrastu"
-#: effects/Contrast.cpp:235
+#: effects/Contrast.cpp:321
msgid "Parameters"
-msgstr ""
+msgstr "Parametre"
-#: effects/ToneGen.cpp:328 toolbars/ControlToolBar.cpp:186
+#: effects/Contrast.cpp:328
+#: effects/ToneGen.cpp:354
+#: toolbars/ControlToolBar.cpp:186
msgid "Start"
-msgstr ""
-
-#: effects/ToneGen.cpp:329 toolbars/ControlToolBar.cpp:189
-#: toolbars/SelectionBar.cpp:129 toolbars/SelectionBar.cpp:226
+msgstr "Start"
+
+#: effects/Contrast.cpp:329
+#: effects/ToneGen.cpp:355
+#: toolbars/ControlToolBar.cpp:189
+#: toolbars/SelectionBar.cpp:156
+#: toolbars/SelectionBar.cpp:159
+#: toolbars/SelectionBar.cpp:262
msgid "End"
-msgstr ""
+msgstr "Koniec"
#: effects/Contrast.cpp:332
msgid "Volume "
-msgstr ""
+msgstr "Hlasitosť"
-#: effects/Contrast.cpp:248
+#: effects/Contrast.cpp:335
msgid "Foreground:"
-msgstr ""
+msgstr "Popredie:"
#: effects/Contrast.cpp:347
msgid "Foreground start time"
-msgstr ""
+msgstr "ZaÄiatoÄný Äas popredia"
#: effects/Contrast.cpp:365
msgid "Foreground end time"
-msgstr ""
+msgstr "Koncový Äas popredia"
-#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
+#: effects/Contrast.cpp:373
+#: effects/Contrast.cpp:417
msgid "Use selection"
-msgstr ""
+msgstr "Použitie výberu"
-#: effects/Contrast.cpp:271
+#: effects/Contrast.cpp:378
msgid "Background:"
-msgstr ""
+msgstr "Pozadie:"
#: effects/Contrast.cpp:391
msgid "Background start time"
-msgstr ""
+msgstr "ZaÄiatoÄný Äas pozadia"
#: effects/Contrast.cpp:409
msgid "Background end time"
-msgstr ""
+msgstr "Koncový Äas pozadia"
-#: effects/Contrast.cpp:298
+#: effects/Contrast.cpp:426
msgid "Result"
-msgstr ""
+msgstr "Výsledok"
-#: effects/Contrast.cpp:302
+#: effects/Contrast.cpp:430
msgid "Contrast Result:"
-msgstr ""
+msgstr "Výsledok kontrastu:"
-#: Tags.cpp:796 Tags.cpp:1948
+#: effects/Contrast.cpp:433
msgid "Reset"
-msgstr ""
+msgstr "Reset"
-#: effects/Contrast.cpp:304
+#: effects/Contrast.cpp:434
msgid "Difference:"
-msgstr ""
+msgstr "Rozdiel:"
-#: ../src/AboutDialog.cpp:150
+#: effects/Contrast.cpp:445
msgid "Information"
msgstr "Informácia"
#: effects/Contrast.cpp:447
msgid "For measuring rms volume differences between two selections of audio."
-msgstr ""
+msgstr "Pre meranie rms rozdielu hlasitosti medzi dvoma výbermi z audia."
#: effects/Contrast.cpp:448
msgid "Help for WCAG2 Audio Contrast Analyzer"
-msgstr ""
+msgstr "Pomoc pre WCAG2 Audio Analyzátor Kontrastu"
-#: toolbars/ControlToolBar.cpp:82
+#: effects/Contrast.cpp:452
+#: toolbars/ControlToolBar.cpp:83
msgid "Control"
-msgstr ""
+msgstr "Ovládanie"
#: effects/Contrast.cpp:454
msgid "Note: The 'OK' button resets time values."
-msgstr ""
+msgstr "Poznámka: 'OK' tlaÄidlo resetuje Äas hodnôt."
#: effects/Contrast.cpp:455
msgid "Close but keep times"
-msgstr ""
+msgstr "ZatvoriÅ¥ ale zachovaÅ¥ Äas"
-#: effects/Contrast.cpp:328 effects/Contrast.cpp:336 effects/Contrast.cpp:344
-#: effects/Contrast.cpp:352
+#: effects/Contrast.cpp:466
+#: effects/Contrast.cpp:472
+#: effects/Contrast.cpp:478
+#: effects/Contrast.cpp:484
msgid "Measure"
-msgstr ""
+msgstr "Meranie"
#: effects/Contrast.cpp:511
msgid "No foreground to measure"
-msgstr ""
+msgstr "Žiadne popredie na meranie"
#: effects/Contrast.cpp:516
msgid "Measured foreground level"
-msgstr ""
+msgstr "Meranie úrovne popredia"
-#: effects/Contrast.cpp:191 effects/Contrast.cpp:202
+#: effects/Contrast.cpp:517
+#: effects/Contrast.cpp:527
#, c-format
msgid "%.1f dB"
-msgstr ""
+msgstr "%.1f dB"
#: effects/Contrast.cpp:521
msgid "No background to measure"
-msgstr ""
+msgstr "Žiadne pozadie na meranie"
#: effects/Contrast.cpp:526
msgid "Measured background level"
-msgstr ""
+msgstr "Meranie úrovne pozadia"
-#: effects/Contrast.cpp:358
+#: effects/Contrast.cpp:532
msgid "WCAG2 Pass"
-msgstr ""
+msgstr "WCAG2 Správne"
-#: effects/Contrast.cpp:360
+#: effects/Contrast.cpp:534
msgid "WCAG2 Fail"
-msgstr ""
+msgstr "WCAG2 Chybné"
#: effects/Contrast.cpp:535
msgid "Current difference"
-msgstr ""
+msgstr "Aktuálny rozdiel:"
#: effects/Contrast.cpp:536
#, c-format
msgid "%.1f dB Average rms"
-msgstr ""
+msgstr "%.1f dB priener rms"
#: effects/Contrast.cpp:541
msgid "Please enter valid times."
-msgstr ""
+msgstr "Zadajte prosÃm reálny Äas."
#: effects/Contrast.cpp:551
msgid "Export Contrast Result As:"
-msgstr ""
+msgstr "Exportovať výsledok kontrastu ako:"
#: effects/Contrast.cpp:572
msgid "WCAG 2.0 Success Criteria 1.4.7 Contrast Results"
-msgstr ""
+msgstr "WCAG 2.0 Ãspech Kritérià 1.4.7 Rozdielné výsledky"
#: effects/Contrast.cpp:574
#, c-format
msgid "Filename = %s."
-msgstr ""
+msgstr "Meno súboru = %s."
#: effects/Contrast.cpp:576
msgid "Foreground"
-msgstr ""
+msgstr "Popredie"
-#: effects/Contrast.cpp:581 effects/Contrast.cpp:598
+#: effects/Contrast.cpp:581
+#: effects/Contrast.cpp:598
#, c-format
msgid "Time started = %2d hour(s), %2d minute(s), %.2f seconds."
-msgstr ""
+msgstr "ZaÄiatoÄný Äas = %2d hodina(y), %2d minút(y), %.2f sekúnd."
-#: effects/Contrast.cpp:586 effects/Contrast.cpp:603
+#: effects/Contrast.cpp:586
+#: effects/Contrast.cpp:603
#, c-format
msgid "Time ended = %2d hour(s), %2d minute(s), %.2f seconds."
-msgstr ""
+msgstr "Koncový Äas = %2d hodina(y), %2d minút(y), %.2f sekúnd."
-#: effects/Contrast.cpp:588 effects/Contrast.cpp:605
+#: effects/Contrast.cpp:588
+#: effects/Contrast.cpp:605
#, c-format
msgid "Average rms = %.1f dB."
-msgstr ""
+msgstr "Priemer rms = %.1f dB."
-#: effects/Contrast.cpp:590 effects/Contrast.cpp:607
+#: effects/Contrast.cpp:590
+#: effects/Contrast.cpp:607
msgid "Average rms = dB."
-msgstr ""
+msgstr "Priemer rms = dB."
#: effects/Contrast.cpp:593
msgid "Background"
-msgstr ""
+msgstr "Pozadie"
#: effects/Contrast.cpp:609
msgid "Results"
-msgstr ""
+msgstr "Výsledky "
#: effects/Contrast.cpp:611
#, c-format
msgid "Difference = %.1f Average rms dB."
-msgstr ""
+msgstr "Rozdiel = %.1f Priemer rms dB."
#: effects/Contrast.cpp:613
msgid "Success Criteria 1.4.7 of WCAG 2.0: Pass"
-msgstr ""
+msgstr "Ãspech kritérià 1.4.7 pre WCAG 2.0: Správne"
#: effects/Contrast.cpp:615
msgid "Success Criteria 1.4.7 of WCAG 2.0: Fail"
-msgstr ""
+msgstr "Ãspech kritérià 1.4.7 pre WCAG 2.0: Chybné"
#: effects/Contrast.cpp:618
msgid "Data gathered"
-msgstr ""
+msgstr "ZÃskané údaje"
#: effects/Contrast.h:33
msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
+msgstr "Kontrast...\tCtrl+Shift+T"
-#: effects/Contrast.h:51
+#: effects/Contrast.h:52
msgid "Measuring background"
-msgstr ""
+msgstr "Meranie pozadia"
-#: effects/Contrast.h:53
+#: effects/Contrast.h:54
msgid "Measuring foreground"
-msgstr ""
+msgstr "Meranie popredia"
-#: effects/DtmfGen.cpp:47
+#: effects/DtmfGen.cpp:56
msgid "DTMF Tone Generator"
-msgstr ""
+msgstr "DTMF Tonový Generátor"
-#: effects/DtmfGen.cpp:382
+#: effects/DtmfGen.cpp:454
msgid "by Salvo Ventura (2006)"
-msgstr ""
+msgstr "od Salvo Ventura (2006)"
-#: effects/DtmfGen.cpp:386
+#: effects/DtmfGen.cpp:458
msgid "DTMF sequence:"
-msgstr ""
+msgstr "DTMF sequencia:"
-#: ../src/effects/ToneGen.cpp:293
+#: effects/DtmfGen.cpp:461
+#: effects/Noise.cpp:240
+#: effects/ToneGen.cpp:320
+#: effects/ToneGen.cpp:358
msgid "Amplitude (0-1)"
msgstr "Amplitúda (0-1)"
-#: effects/DtmfGen.cpp:465
+#: effects/DtmfGen.cpp:463
msgid "Duration:"
-msgstr ""
+msgstr "Dĺžka:"
-#: effects/DtmfGen.cpp:407
+#: effects/DtmfGen.cpp:485
msgid "Tone/silence ratio:"
-msgstr ""
+msgstr "Pomer tónu a ticha:"
-#: effects/DtmfGen.cpp:418
+#: effects/DtmfGen.cpp:495
msgid "Duty cycle:"
-msgstr ""
+msgstr "Pracovný cyklus:"
-#: effects/DtmfGen.cpp:420
+#: effects/DtmfGen.cpp:497
msgid "Tone duration:"
-msgstr ""
+msgstr "Dĺžka tónu:"
-#: effects/DtmfGen.cpp:421 effects/DtmfGen.cpp:423 effects/DtmfGen.cpp:494
-#: effects/DtmfGen.cpp:495
+#: effects/DtmfGen.cpp:498
+#: effects/DtmfGen.cpp:500
+#: effects/DtmfGen.cpp:576
+#: effects/DtmfGen.cpp:577
msgid "ms"
-msgstr ""
+msgstr "ms"
-#: effects/DtmfGen.cpp:422
+#: effects/DtmfGen.cpp:499
msgid "Silence duration:"
-msgstr ""
+msgstr "Dĺžka ticha:"
-#: effects/DtmfGen.h:41
+#: effects/DtmfGen.h:39
msgid "DTMF Tones..."
-msgstr ""
+msgstr "DTMF tóny..."
-#: effects/DtmfGen.h:45
+#: effects/DtmfGen.h:53
#, c-format
msgid "Applied effect: Generate DTMF tones, %.6lf seconds"
-msgstr ""
+msgstr "Použitý efekt: Generovať DTMF tóny, %.6lf sekúnd"
-#: effects/DtmfGen.h:49
+#: effects/DtmfGen.h:57
msgid "Generating DTMF tones"
-msgstr ""
+msgstr "Generujem DTMF tóny"
-#: ../src/effects/Echo.cpp:33
+#: effects/Echo.cpp:48
#, c-format
msgid "Applied effect: %s delay = %f seconds, decay factor = %f"
msgstr "Použitý efekt: %s oneskorenie = %f sekúnd, faktor dozvuku = %f"
-#: ../src/effects/Echo.cpp:39
-#: ../src/effects/Echo.cpp:177
+#: effects/Echo.cpp:174
msgid "Echo"
msgstr "Echo"
-#: ../src/effects/Echo.cpp:182
+#. i18n-hint: && in here is an escape character to get a single & on
+#. * screen, so keep it as is
+#: effects/Echo.cpp:199
+#: effects/Repeat.cpp:199
msgid "by Dominic Mazzoni && Vaughan Johnson"
msgstr "od Dominica Mazzoniho && Vaughana Johnsona"
-#: ../src/effects/Echo.cpp:192
+#: effects/Echo.cpp:211
msgid "Delay time (seconds):"
msgstr "Äas oneskorenia (sekundy):"
-#: ../src/effects/Echo.cpp:211
+#: effects/Echo.cpp:216
msgid "Decay factor:"
msgstr "Faktor dozvuku (decay):"
-#: ../src/effects/Echo.h:36
+#: effects/Echo.h:34
msgid "Echo..."
msgstr "Echo..."
-#: ../src/effects/Echo.h:40
+#: effects/Echo.h:48
msgid "Performing Echo"
msgstr "Aplikujem echo"
-#: effects/Effect.cpp:378
+#: effects/Effect.cpp:469
msgid "Preparing preview"
-msgstr ""
+msgstr "Pripravuje sa ukážka"
-#: effects/Effect.cpp:404
+#: effects/Effect.cpp:499
msgid "Previewing"
-msgstr ""
+msgstr "Vyskúšanie"
-#: ../src/ControlToolBar.cpp:721
-#: ../src/effects/Effect.cpp:329
+#: effects/Effect.cpp:514
msgid "Error while opening sound device. Please check the output device settings and the project sample rate."
msgstr "Chyba pri otváranà zvukového zariadenia. ProsÃm skontrolujte nastavenie výstupného zariadenia a vzorkovaciu frekvenciu projektu."
-#: ../src/effects/Effect.h:84
+#: effects/Effect.h:97
+#: effects/TimeScale.cpp:52
#, c-format
msgid "Applied effect: %s"
msgstr "Použitý efekt: %s"
-#: effects/Equalization.cpp:1119
+#: effects/Equalization.cpp:334
msgid "B-spline"
-msgstr ""
+msgstr "B-drážkovanie"
-#: effects/Equalization.cpp:1119
+#: effects/Equalization.cpp:335
msgid "Cosine"
-msgstr ""
+msgstr "KosÃnusová"
-#: effects/Equalization.cpp:1119
+#: effects/Equalization.cpp:336
msgid "Cubic"
-msgstr ""
+msgstr "Kubická"
-#: ../src/effects/Equalization.cpp:156
+#: effects/Equalization.cpp:369
+#: effects/Equalization.cpp:417
msgid "Equalization"
msgstr "Ekvalizácia"
-#: effects/Equalization.cpp:865
+#: effects/Equalization.cpp:992
msgid "Error loading EQ curve"
-msgstr ""
+msgstr "Chyba pri naÄÃtanà EQ krivky"
-#: effects/Equalization.cpp:1013
+#: effects/Equalization.cpp:1031
msgid "custom"
-msgstr ""
+msgstr "užÃvateľský"
-#: effects/Equalization.cpp:971
+#. i18n-hint: && in here is an escape character to get a single &
+#. * on screen, so keep it as is
+#: effects/Equalization.cpp:1099
msgid "Equalization, by Martyn Shaw && Mitch Golden"
-msgstr ""
+msgstr "Ekvalizácia,od Martyn Shaw && Mitch Golden"
-#: effects/Equalization.cpp:992
+#: effects/Equalization.cpp:1120
msgid "Max dB"
-msgstr ""
+msgstr "Max dB"
-#: effects/Equalization.cpp:994
+#: effects/Equalization.cpp:1122
msgid "Min dB"
-msgstr ""
+msgstr "Min dB"
-#: effects/Equalization.cpp:1093
+#: effects/Equalization.cpp:1195
msgid "kHz"
-msgstr ""
+msgstr "kHz"
-#: effects/Equalization.cpp:1110
+#: effects/Equalization.cpp:1212
msgid "Draw curves"
-msgstr ""
+msgstr "Krivky"
-#: effects/Equalization.cpp:1115
+#: effects/Equalization.cpp:1217
msgid "Graphic EQ"
-msgstr ""
+msgstr "Grafický EQ"
-#: effects/Equalization.cpp:1131
+#: effects/Equalization.cpp:1231
msgid "Linear frequency scale"
-msgstr ""
+msgstr "Lineárne frekvenÄné meradlo"
-#: effects/Equalization.cpp:1140
+#: effects/Equalization.cpp:1240
msgid "Length of filter:"
-msgstr ""
+msgstr "Dĺžka filtra:"
-#: effects/Equalization.cpp:1048
+#: effects/Equalization.cpp:1261
msgid "Select curve:"
-msgstr ""
+msgstr "Vyberte krivku:"
-#: effects/Equalization.cpp:1058 effects/Equalization.cpp:2244
+#: effects/Equalization.cpp:1271
+#: effects/Equalization.cpp:2510
+#: export/ExportMultiple.cpp:900
msgid "Save As..."
-msgstr ""
+msgstr "Uložiť ako..."
-#: effects/Equalization.cpp:1064
+#: effects/Equalization.cpp:1277
msgid "Flat"
-msgstr ""
+msgstr "Plochý"
-#: effects/Equalization.cpp:2243
+#: effects/Equalization.cpp:2509
msgid "Enter the desired name of the curve"
-msgstr ""
+msgstr "Zadajte názov krivky"
-#: effects/Equalization.cpp:2343
+#: effects/Equalization.cpp:2609
+#: export/ExportFFmpegDialogs.cpp:1211
msgid "Confirm Deletion"
-msgstr ""
+msgstr "Potvrdiť zmazanie"
-#: ../src/effects/Equalization.h:38
+#: effects/Equalization.h:84
msgid "Equalization..."
msgstr "Ekvalizácia..."
-#: ../src/effects/Equalization.h:42
+#: effects/Equalization.h:98
msgid "Performing Equalization"
msgstr "Aplikujem ekvalizáciu"
-#: ../src/effects/Fade.h:23
+#: effects/Fade.h:24
msgid "Fade In"
msgstr "Postupný nábeh (Fade In)"
-#: ../src/effects/Fade.h:27
+#: effects/Fade.h:38
msgid "Fading In"
msgstr "Vytváram postupný nábeh (fading in)"
-#: ../src/effects/Fade.h:43
+#: effects/Fade.h:54
msgid "Fade Out"
msgstr "Do stratena (Fade Out)"
-#: ../src/effects/Fade.h:47
+#: effects/Fade.h:68
msgid "Fading Out"
msgstr "Vytváram efekt do stratena (fading out)"
#: effects/FindClipping.cpp:49
msgid "Detect clipping"
-msgstr ""
+msgstr "Rozpoznať výstrižok"
#: effects/FindClipping.cpp:91
msgid "Clipping"
-msgstr ""
+msgstr "Výstrižok"
#: effects/FindClipping.cpp:211
msgid "Find Clipping"
-msgstr ""
+msgstr "Nájsť výstrižok"
#: effects/FindClipping.cpp:222
msgid "by Leland Lucius"
-msgstr ""
+msgstr "od Leland Lucius"
#: effects/FindClipping.cpp:234
msgid "Start threshold (samples):"
-msgstr ""
+msgstr "ZaÄiatoÄný prah (vzorky):"
#: effects/FindClipping.cpp:238
msgid "Stop threshold (samples):"
-msgstr ""
+msgstr "Koncový prah (vzorky)"
#: effects/FindClipping.cpp:250
msgid "Start and stop must be greater than 0."
-msgstr ""
+msgstr "ZaÄiatok a koniec musà byÅ¥ väÄšà než 0."
#: effects/FindClipping.h:37
msgid "Find Clipping..."
-msgstr ""
+msgstr "Hľadanie výstrižku..."
-#: effects/FindClipping.h:47
+#: effects/FindClipping.h:54
msgid "Detecting clipping"
-msgstr ""
+msgstr "Detekcia výstrižku "
-#: ../src/effects/Invert.h:27
+#: effects/Invert.h:27
msgid "Invert"
msgstr "Invertovať"
-#: ../src/effects/Invert.h:31
+#: effects/Invert.h:41
msgid "Inverting"
msgstr "Invertujem"
-#: BatchCommands.cpp:237 effects/Leveller.cpp:129
+#: effects/Leveller.cpp:192
msgid "Leveller"
-msgstr ""
+msgstr "Ãrovne (Leveller)"
-#: effects/Leveller.cpp:47
+#: effects/Leveller.cpp:205
msgid "None-Skip"
-msgstr ""
+msgstr "NiÄ - preskoÄiÅ¥"
-#: effects/Leveller.cpp:47
+#: effects/Leveller.cpp:206
msgid "Light"
-msgstr ""
+msgstr "Ľahká"
-#: effects/Leveller.cpp:47
+#: effects/Leveller.cpp:207
msgid "Moderate"
-msgstr ""
+msgstr "Stredná"
-#: effects/Leveller.cpp:47
+#: effects/Leveller.cpp:208
msgid "Heavy"
-msgstr ""
+msgstr "Ťažká"
-#: effects/Leveller.cpp:47
+#: effects/Leveller.cpp:209
msgid "Heavier"
-msgstr ""
+msgstr "Ťažšia"
-#: effects/Leveller.cpp:47
+#: effects/Leveller.cpp:210
msgid "Heaviest"
-msgstr ""
+msgstr "Najťažšie"
-#: effects/TruncSilence.cpp:332
+#: effects/Leveller.cpp:214
+#: effects/TruncSilence.cpp:331
msgid "by Lynn Allan"
-msgstr ""
+msgstr "od Lynna Allana"
-#: effects/Leveller.cpp:220 effects/Leveller.cpp:233
+#: effects/Leveller.cpp:224
msgid "Degree of Leveling"
-msgstr ""
+msgstr "StupeÅ vyrovnania"
-#: effects/Leveller.cpp:226
+#: effects/Leveller.cpp:228
msgid "Degree of Leveling:"
-msgstr ""
+msgstr "StupeÅ vyrovnania:"
-#: effects/Leveller.cpp:244
+#: effects/Leveller.cpp:236
msgid "Noise Threshold (Hiss/Hum/Ambient Noise)"
-msgstr ""
+msgstr "Prah šumu (sýkot/hukot/šum prostredie)"
-#: effects/Leveller.cpp:238
+#: effects/Leveller.cpp:240
msgid "Threshold for Noise:"
-msgstr ""
+msgstr "Prahová hodnota pre šum:"
#: effects/Leveller.h:28
msgid "Leveller..."
-msgstr ""
+msgstr "Ãrovne..."
-#: effects/Leveller.h:32
+#: effects/Leveller.h:42
msgid "Applying Leveller..."
-msgstr ""
+msgstr "Upravujú sa úrovne (Leveller)..."
-#: effects/LoadEffects.cpp:102
+#: effects/LoadEffects.cpp:103
msgid "Generator"
-msgstr ""
+msgstr "Generátor"
-#: effects/LoadEffects.cpp:104
+#: effects/LoadEffects.cpp:105
msgid "Instrument"
-msgstr ""
+msgstr "Nástroj"
-#: effects/LoadEffects.cpp:106
+#: effects/LoadEffects.cpp:107
msgid "Oscillator"
-msgstr ""
+msgstr "Oscilátor"
-#: effects/LoadEffects.cpp:108
+#: effects/LoadEffects.cpp:109
msgid "Utility"
-msgstr ""
+msgstr "Utility"
-#: effects/LoadEffects.cpp:110
+#: effects/LoadEffects.cpp:111
msgid "Converter"
-msgstr ""
+msgstr "MeniÄ"
-#: effects/LoadEffects.cpp:112
+#: effects/LoadEffects.cpp:113
msgid "Analyser"
-msgstr ""
+msgstr "Analyzér"
-#: toolbars/MixerToolBar.cpp:58
+#: effects/LoadEffects.cpp:115
+#: toolbars/MixerToolBar.cpp:60
msgid "Mixer"
-msgstr ""
+msgstr "Mixer"
-#: effects/LoadEffects.cpp:116
+#: effects/LoadEffects.cpp:117
msgid "Simulator"
-msgstr ""
+msgstr "Simulátor"
-#: effects/LoadEffects.cpp:118
+#: effects/LoadEffects.cpp:119
msgid "Delay"
-msgstr ""
+msgstr "Oneskorenie"
-#: effects/LoadEffects.cpp:120
+#: effects/LoadEffects.cpp:121
msgid "Modulator"
-msgstr ""
+msgstr "Modulátor"
-#: effects/LoadEffects.cpp:122
+#: effects/LoadEffects.cpp:123
msgid "Reverb"
-msgstr ""
+msgstr "Rezonancia"
-#: ../src/effects/Phaser.cpp:59
+#: effects/LoadEffects.cpp:125
+#: effects/Phaser.cpp:208
msgid "Phaser"
-msgstr "Fázer (Phaser)"
+msgstr "Fázer "
-#: effects/LoadEffects.cpp:126
+#: effects/LoadEffects.cpp:127
msgid "Flanger"
-msgstr ""
+msgstr "Lém"
-#: effects/LoadEffects.cpp:128
+#: effects/LoadEffects.cpp:129
msgid "Chorus"
-msgstr ""
+msgstr "Refrén"
-#: effects/LoadEffects.cpp:130
+#: effects/LoadEffects.cpp:131
msgid "Filter"
-msgstr ""
+msgstr "Filter "
-#: effects/LoadEffects.cpp:132
+#: effects/LoadEffects.cpp:133
msgid "Lowpass"
-msgstr ""
+msgstr "NÃzka permanencia"
-#: effects/LoadEffects.cpp:134
+#: effects/LoadEffects.cpp:135
msgid "Bandpass"
-msgstr ""
+msgstr "Stredná permanencia"
-#: effects/LoadEffects.cpp:136
+#: effects/LoadEffects.cpp:137
msgid "Highpass"
-msgstr ""
+msgstr "Vysoká permanencia"
-#: effects/LoadEffects.cpp:138
+#: effects/LoadEffects.cpp:139
msgid "Comb"
-msgstr ""
+msgstr "HrebeÅ"
-#: effects/LoadEffects.cpp:140
+#: effects/LoadEffects.cpp:141
msgid "Allpass"
-msgstr ""
+msgstr "Permanentne"
-#: effects/LoadEffects.cpp:142
+#: effects/LoadEffects.cpp:143
msgid "Equaliser"
-msgstr ""
+msgstr "Equalizér"
-#: effects/LoadEffects.cpp:144
+#: effects/LoadEffects.cpp:145
msgid "Parametric"
-msgstr ""
+msgstr "Parametrický"
-#: effects/LoadEffects.cpp:146
+#: effects/LoadEffects.cpp:147
msgid "Multiband"
-msgstr ""
+msgstr "Multiskupinové"
-#: effects/LoadEffects.cpp:148
+#: effects/LoadEffects.cpp:149
msgid "Spectral Processor"
-msgstr ""
+msgstr "Spektrálny procesor"
-#: effects/LoadEffects.cpp:150
+#: effects/LoadEffects.cpp:151
msgid "Pitch Shifter"
-msgstr ""
+msgstr "Rozostup meniÄa"
-#: effects/LoadEffects.cpp:152
+#: effects/LoadEffects.cpp:153
msgid "Amplifier"
-msgstr ""
+msgstr "ZosilÅovaÄ"
-#: effects/LoadEffects.cpp:154
+#: effects/LoadEffects.cpp:155
msgid "Distortion"
-msgstr ""
+msgstr "Skreslenie"
-#: effects/LoadEffects.cpp:156
+#: effects/LoadEffects.cpp:157
msgid "Waveshaper"
-msgstr ""
+msgstr "TvarovaÄ vĺn"
-#: effects/LoadEffects.cpp:158
+#: effects/LoadEffects.cpp:159
msgid "Dynamics Processor"
-msgstr ""
+msgstr "Dynamický procesor"
-#: effects/LoadEffects.cpp:160
+#: effects/LoadEffects.cpp:161
msgid "Compressor"
-msgstr ""
+msgstr "Kompresor"
-#: effects/LoadEffects.cpp:162
+#: effects/LoadEffects.cpp:163
msgid "Expander"
-msgstr ""
+msgstr "RozÅ¡irovaÄ"
-#: effects/LoadEffects.cpp:164
+#: effects/LoadEffects.cpp:165
msgid "Limiter"
-msgstr ""
+msgstr "ObmedzovaÄ"
-#: effects/LoadEffects.cpp:166
+#: effects/LoadEffects.cpp:167
msgid "Gate"
-msgstr ""
+msgstr "Hradlo"
-#: ../src/effects/NoiseRemoval.cpp:69
+#: effects/LoadEffects.cpp:200
+#: effects/NoiseRemoval.cpp:729
msgid "Noise Removal"
msgstr "Odstránenie šumu"
-#: effects/LoadEffects.cpp:201
+#: effects/LoadEffects.cpp:202
msgid "Pitch and Tempo"
-msgstr ""
+msgstr "Rozostup a Tempo"
-#: effects/LoadEffects.cpp:203
+#: effects/LoadEffects.cpp:204
msgid "Timeline Changer"
-msgstr ""
+msgstr "MeniÄ Äasovej lÃnie"
-#: effects/LoadEffects.cpp:205
+#: effects/LoadEffects.cpp:206
msgid "Time"
-msgstr ""
+msgstr "Äas"
-#: effects/LoadEffects.cpp:207
+#: effects/LoadEffects.cpp:208
msgid "Onsets"
-msgstr ""
+msgstr "Nábeh"
#: effects/Noise.cpp:37
msgid "White"
-msgstr ""
+msgstr "Biely"
#: effects/Noise.cpp:38
msgid "Pink"
-msgstr ""
+msgstr "Ružový"
#: effects/Noise.cpp:39
msgid "Brown"
-msgstr ""
+msgstr "Hnedý"
#: effects/Noise.cpp:41
msgid "Noise Generator"
-msgstr ""
+msgstr "Generátor šumu"
-#: effects/Noise.cpp:256
+#: effects/Noise.cpp:239
msgid "Noise type"
-msgstr ""
+msgstr "Druh šumu"
#: effects/Noise.h:41
msgid "Noise..."
-msgstr ""
+msgstr "Å um..."
-#: effects/Noise.h:45
+#: effects/Noise.h:55
#, c-format
msgid "Applied effect: Generate Noise, %.6lf seconds"
-msgstr ""
+msgstr "Použitý efekt: Generovať šum, %.6lf sekúnd"
-#: effects/Noise.h:49
+#: effects/Noise.h:59
msgid "Generating Noise"
-msgstr ""
+msgstr "Generuje sa šum"
#: effects/NoiseRemoval.cpp:192
#, c-format
-msgid "Could not open file:\n"
+msgid ""
+"Could not open file:\n"
" %s"
msgstr ""
+"Nedá sa otvoriť súbor: \n"
+" %s"
#: effects/NoiseRemoval.cpp:277
msgid "Attempt to run Noise Removal without a noise profile.\n"
-msgstr ""
+msgstr "Pokus o odstránenie šumu bez profilu šumu.\n"
-#: ../src/effects/NoiseRemoval.cpp:410
+#: effects/NoiseRemoval.cpp:818
msgid "Step 1"
msgstr "Krok 1"
-#: effects/NoiseRemoval.cpp:765
-msgid "Select a few seconds of just noise so Audacity knows what to filter out,\n"
+#: effects/NoiseRemoval.cpp:819
+msgid ""
+"Select a few seconds of just noise so Audacity knows what to filter out,\n"
"then click Get Noise Profile:"
msgstr ""
+"Vyberte niekoľko sekúnd samotného šumu, aby Audacity vedel\n"
+"Äo sa má filtrovaÅ¥. Potom kliknite na ZÃskaÅ¥ profil Å¡umu."
-#: ../src/effects/NoiseRemoval.cpp:427
+#: effects/NoiseRemoval.cpp:820
msgid "Step 2"
msgstr "Krok 2"
-#: effects/NoiseRemoval.cpp:767
-msgid "Select all of the audio you want filtered, choose how much noise you want\n"
+#: effects/NoiseRemoval.cpp:821
+msgid ""
+"Select all of the audio you want filtered, choose how much noise you want\n"
"filtered out, and then click 'OK' to remove noise.\n"
msgstr ""
+"OznaÄte vÅ¡etko Äo chcete filtrovaÅ¥,\n"
+"zvoľte mieru filtrovania šumu a kliknite na 'OK'.\n"
-#: ../src/effects/NoiseRemoval.cpp:403
+#: effects/NoiseRemoval.cpp:826
msgid "Noise Removal by Dominic Mazzoni"
msgstr "Odstránenie šumu od Dominica Mazzoniho"
-#: ../src/effects/NoiseRemoval.cpp:419
+#: effects/NoiseRemoval.cpp:834
msgid "Get Noise Profile"
msgstr "ZÃskaÅ¥ profil Å¡umu"
-#: effects/NoiseRemoval.cpp:791
+#: effects/NoiseRemoval.cpp:845
msgid "Noise reduction (dB):"
-msgstr ""
+msgstr "Redukcia šumu (dB):"
#: effects/NoiseRemoval.cpp:850
msgid "Noise reduction"
-msgstr ""
+msgstr "Redukcia šumu"
-#: effects/NoiseRemoval.cpp:799
+#: effects/NoiseRemoval.cpp:854
msgid "Frequency smoothing (Hz):"
-msgstr ""
+msgstr "Vyhladenie frekvencie (Hz):"
#: effects/NoiseRemoval.cpp:859
msgid "Frequency smoothing"
-msgstr ""
+msgstr "Vyhladenie frekvencie"
-#: effects/NoiseRemoval.cpp:807
+#: effects/NoiseRemoval.cpp:863
msgid "Attack/decay time (secs):"
-msgstr ""
+msgstr "Äas nábehu/Äas dobehu (sek.):"
#: effects/NoiseRemoval.cpp:868
msgid "Attach/decay time"
-msgstr ""
+msgstr "Äas pripojenia/odpojenia"
-#: ../src/effects/NoiseRemoval.h:38
+#: effects/NoiseRemoval.h:35
msgid "Noise Removal..."
msgstr "Odstránenie šumu..."
-#: ../src/effects/NoiseRemoval.h:43
+#: effects/NoiseRemoval.h:50
msgid "Creating Noise Profile"
msgstr "Vytváram profil šumu"
-#: ../src/effects/NoiseRemoval.h:45
+#: effects/NoiseRemoval.h:52
msgid "Removing Noise"
msgstr "OdstraÅujem Å¡um"
-#: effects/Normalize.cpp:68
+#. i18n-hint: First %s is the effect name, 2nd and 3rd are either true or
+#. * false (translated below) if those options were selected
+#: effects/Normalize.cpp:70
#, c-format
msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
-msgstr ""
+msgstr "Aplikovať efekt: %s odobrať dc posun = %s, normalizovať amplitúdu = %s"
-#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
+#: effects/Normalize.cpp:74
+#: effects/Normalize.cpp:75
msgid "false"
-msgstr ""
+msgstr "nesprávne"
-#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
+#. i18n-hint: true here means that the option was
+#. * selected. Opposite false if not selected
+#: effects/Normalize.cpp:74
+#: effects/Normalize.cpp:75
msgid "true"
-msgstr ""
+msgstr "správne"
-#: effects/Normalize.cpp:73
+#: effects/Normalize.cpp:77
#, c-format
msgid ", maximum amplitude = %.1f dB"
-msgstr ""
+msgstr ", maximálna amplitúda = %.1f dB"
-#: ../src/effects/Normalize.cpp:29
+#: effects/Normalize.cpp:327
msgid "Normalize"
msgstr "Normalizovať"
-#: effects/Normalize.cpp:351 effects/Normalize.cpp:352
+#: effects/Normalize.cpp:351
msgid "Remove any DC offset (center on 0.0 vertically)"
-msgstr ""
+msgstr "Odstrániť akýkoľvek DC posun (vycentrovať na 0.0 vertikálne)"
-#: effects/Normalize.cpp:357
+#: effects/Normalize.cpp:354
msgid "Normalize maximum amplitude to:"
-msgstr ""
+msgstr "Normalizuj maximálnu amplitúdu na:"
-#: effects/Normalize.cpp:336
+#: effects/Normalize.cpp:362
msgid "-"
-msgstr ""
+msgstr "-"
#: effects/Normalize.cpp:367
msgid "Maximum amplitude dB"
-msgstr ""
+msgstr "Maximálna amplitúda dB"
-#: ../src/effects/Normalize.h:34
+#: effects/Normalize.h:33
msgid "Normalize..."
msgstr "Normalizovať..."
-#: ../src/effects/Normalize.h:38
+#: effects/Normalize.h:49
msgid "Normalizing..."
msgstr "Normalizujem..."
-#: ../src/effects/Phaser.cpp:47
+#: effects/Phaser.cpp:65
#, c-format
msgid "Applied effect: %s %d stages, %.0f%% wet, frequency = %.1f Hz, start phase = %.0f deg, depth = %d, feedback = %.0f%%"
msgstr "Použitý efekt: %s %d krokov, %.0f%% wet, frekvencia = %.1f Hz, štartovacia fáza = %.0f deg, hĺbka = %d, sp. väzba = %.0f%%"
-#: ../src/effects/Phaser.cpp:455
+#: effects/Phaser.cpp:226
msgid "Stages:"
msgstr "Krokov:"
#: effects/Phaser.cpp:229
msgid "Stages"
-msgstr ""
+msgstr "StupÅov"
#: effects/Phaser.cpp:231
msgid "Dry/Wet:"
-msgstr ""
+msgstr "Suchý/Mokrý:"
#: effects/Phaser.cpp:234
msgid "Dry Wet"
-msgstr ""
+msgstr "Suchý Mokrý"
-#: ../src/effects/Phaser.cpp:497
-#: ../src/effects/Wahwah.cpp:468
+#: effects/Phaser.cpp:236
+#: effects/Wahwah.cpp:221
msgid "LFO Frequency (Hz):"
msgstr "LFO frekvencia (Hz):"
-#: effects/Phaser.cpp:239 effects/Wahwah.cpp:224
+#: effects/Phaser.cpp:239
+#: effects/Wahwah.cpp:224
msgid "LFO frequency in hertz"
-msgstr ""
+msgstr "LFO frekvencia v hertzoch"
-#: ../src/effects/Phaser.cpp:513
-#: ../src/effects/Wahwah.cpp:484
+#: effects/Phaser.cpp:241
+#: effects/Wahwah.cpp:226
msgid "LFO Start Phase (deg.):"
msgstr "LFO Štartovacia fáza (deg.):"
-#: effects/Phaser.cpp:244 effects/Wahwah.cpp:229
+#: effects/Phaser.cpp:244
+#: effects/Wahwah.cpp:229
msgid "LFO start phase in degrees"
-msgstr ""
+msgstr "LFO Å¡tartovacia fáza v stupÅoch"
-#: ../src/effects/Phaser.cpp:529
+#: effects/Phaser.cpp:246
msgid "Depth:"
msgstr "Hĺbka:"
-#: effects/Phaser.cpp:249 effects/Wahwah.cpp:234
+#: effects/Phaser.cpp:249
+#: effects/Wahwah.cpp:234
msgid "Depth in percent"
-msgstr ""
+msgstr "Hĺbka v percentách"
-#: ../src/effects/Phaser.cpp:545
+#: effects/Phaser.cpp:251
msgid "Feedback (%):"
msgstr "Spätná väzba (feedback) (%):"
#: effects/Phaser.cpp:254
msgid "Feedback in percent"
-msgstr ""
+msgstr "Spätná odozva v percentách"
-#: ../src/effects/Phaser.h:41
+#: effects/Phaser.h:45
msgid "Phaser..."
-msgstr "Fázer (Phaser)..."
+msgstr "Fázer..."
-#: ../src/effects/Phaser.h:45
+#: effects/Phaser.h:59
msgid "Applying Phaser"
-msgstr "Aplikujem Fázer (Phaser)"
+msgstr "Aplikujem Fázer"
-#: effects/Repair.cpp:94
-msgid "The Repair effect is intended to be used on very short sections of damaged audio (up to 128 samples).\n"
+#: effects/Repair.cpp:99
+msgid ""
+"The Repair effect is intended to be used on very short sections of damaged audio (up to 128 samples).\n"
"\n"
"Zoom in and select a tiny fraction of a second to repair."
msgstr ""
+"Tento opravný efekt je urÄený na použitie na veľmi krátkych úsekoch poÅ¡kodeného záznamu (do 128 vzoriek).\n"
+"\n"
+"Nastavte si veľké zväÄÅ¡enie a zvoľťe malú ÄasÅ¥ na opravu."
#: effects/Repair.cpp:105
-msgid "Repair works by using audio data outside the selection region.\n"
+msgid ""
+"Repair works by using audio data outside the selection region.\n"
"\n"
"Please select a region that has audio touching at least one side of it.\n"
"\n"
"The more surrounding audio, the better it performs."
msgstr ""
+"Oprava pomocou audio dát mimo výbranú oblasť. \n"
+"\n"
+"ProsÃm vyberte oblasÅ¥, ktorá sa dotýka audia aspoÅ na jednej strane.\n"
+"\n"
+"ÄÃm viac okolitého zvuku, tým lepÅ¡ie ju vykoná."
-#: effects/Repair.h:33
+#: effects/Repair.h:43
msgid "Repairing damaged audio"
-msgstr ""
+msgstr "Opravujú sa poškodené zvukové dáta"
-#: ../src/effects/Repeat.cpp:31
+#: effects/Repeat.cpp:50
#, c-format
msgid "Repeated %d times"
msgstr "Opakovať %d-krát"
-#: ../src/effects/Repeat.cpp:57
+#: effects/Repeat.cpp:76
msgid "Tracks are too long to repeat the selection."
msgstr "Stopy sú prÃliÅ¡ dlhé pre opakovanie výberu."
-#: ../src/effects/Repeat.cpp:58
-#: ../src/effects/Repeat.cpp:62
+#: effects/Repeat.cpp:77
+#: effects/Repeat.cpp:186
msgid "Repeat"
msgstr "Opakovať"
-#: effects/Repeat.cpp:212
-#, fuzzy
+#: effects/Repeat.cpp:211
msgid "Number of times to repeat:"
-msgstr "PoÄet opakovanÃ:"
+msgstr "PoÄet opakovanÃ: "
-#: effects/Repeat.cpp:221
+#: effects/Repeat.cpp:220
msgid "New selection length: hh:mm:ss"
-msgstr ""
+msgstr "Nový výber dĺžky: hh:mm:ss"
-#: ../src/effects/Repeat.cpp:241
-#: ../src/effects/Repeat.cpp:280
+#: effects/Repeat.cpp:252
msgid "New selection length: "
msgstr "Nová dĺžka výberu:"
-#: widgets/TimeTextCtrl.cpp:199
+#. i18n-hint: Name of time display format that shows time in hours, minutes
+#. * and seconds
+#: effects/Repeat.cpp:261
+#: widgets/TimeTextCtrl.cpp:270
msgid "hh:mm:ss"
-msgstr ""
+msgstr "hh:mm:ss"
-#: ../src/effects/Repeat.h:34
+#: effects/Repeat.h:33
msgid "Repeat..."
msgstr "Opakovať..."
-#: ../src/effects/Repeat.h:38
+#: effects/Repeat.h:47
msgid "Performing Repeat"
msgstr "Vykonávam opakovanie"
-#: ../src/effects/Reverse.h:30
+#: effects/Reverse.h:30
msgid "Reverse"
msgstr "Obrátiť (Reverse)"
-#: ../src/effects/Reverse.h:34
+#: effects/Reverse.h:44
msgid "Reversing"
-msgstr "Prevraciam"
+msgstr "Vraciam späť"
#: effects/Silence.cpp:32
msgid "Silence Generator"
-msgstr ""
+msgstr "Vytvoriť ticho"
#: effects/Silence.h:34
msgid "Silence..."
-msgstr ""
+msgstr "Ticho..."
-#: ../src/effects/Silence.h:37
+#: effects/Silence.h:48
msgid "Generating Silence"
msgstr "Vytváram ticho"
-#: ../src/effects/Silence.h:42
+#: effects/Silence.h:53
#, c-format
msgid "Applied effect: Generate Silence, %.6lf seconds"
msgstr "Použitý efekt: Generovať ticho, %.6lf sekúnd"
#: effects/SimplePairedTwoTrack.h:120
msgid "Sorry, this effect cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr ""
+msgstr "OspravedlÅujeme sa, tento efekt nemôže byÅ¥ aplikovaný na stereo stopy, u ktorých nesúhlasia individuálne kanály."
#: effects/SpikeCleaner.cpp:69
msgid "Spike Cleaner"
-msgstr ""
+msgstr "Odstránenie Å¡piÄiek"
#: effects/SpikeCleaner.cpp:160
msgid "SpikeCleaner by Lynn Allan"
-msgstr ""
+msgstr "Odstránenie Å¡piÄiek od Lynna Allana"
#: effects/SpikeCleaner.cpp:165
-msgid "Max Spike Duration (milliseconds): \n"
+msgid ""
+"Max Spike Duration (milliseconds): \n"
"(99999 or greater is off)"
msgstr ""
+"Maximálna dĺžka Impulzu (milisekúnd): \n"
+"(99999 alebo väÄÅ¡ia je vypnutá)"
-#: effects/SpikeCleaner.cpp:178 effects/TruncSilence.cpp:269
+#: effects/SpikeCleaner.cpp:178
msgid "Theshold for silence: "
-msgstr ""
+msgstr "Prah šumu: "
#: effects/SpikeCleaner.h:27
msgid "Spike Cleaner..."
-msgstr ""
+msgstr "Odstránenie Å¡piÄiek..."
-#: effects/SpikeCleaner.h:31
+#: effects/SpikeCleaner.h:35
msgid "Applying Spike Cleaner..."
-msgstr ""
+msgstr "Aplikuje sa odstránenie Å¡piÄiek..."
#: effects/StereoToMono.h:23
msgid "&Stereo to Mono"
-msgstr ""
+msgstr "&Stereo na mono"
#: effects/StereoToMono.h:38
msgid "Applying Stereo to Mono"
-msgstr ""
+msgstr "Aplikuje sa Stereo na Mono"
#: effects/TimeScale.cpp:140
msgid "Time Scale"
-msgstr ""
+msgstr "Mierka Äasu"
#: effects/TimeScale.cpp:176
msgid "Sliding Time Scale/Pitch Shift"
-msgstr ""
+msgstr "Posúvanie Äasového rozsahu/výšky Shift "
#: effects/TimeScale.cpp:178
msgid "using SBSMS, by Clayton Otey"
-msgstr ""
+msgstr "pomocou SBSMS, od Clayton Otey"
#: effects/TimeScale.cpp:187
msgid "Initial Tempo Change (%):"
-msgstr ""
+msgstr "ZaÄiatoÄná zmena tempa (%):"
#: effects/TimeScale.cpp:191
msgid "Final Tempo Change (%):"
-msgstr ""
+msgstr "KoneÄná zmena tempa (%):"
#: effects/TimeScale.cpp:202
msgid "Initial Tempo Change (%)"
-msgstr ""
+msgstr "ZaÄiatoÄná zmena tempa (%)"
#: effects/TimeScale.cpp:211
msgid "Final Tempo Change (%)"
-msgstr ""
+msgstr "KoneÄná zmena tempa (%)"
#: effects/TimeScale.cpp:219
msgid "Initial Pitch Shift (semitones) [-12 to 12]:"
-msgstr ""
+msgstr "ZaÄiatoÄná výška Shift (medzitón) [-12 do 12]:"
#: effects/TimeScale.cpp:223
msgid "Final Pitch Shift (semitones) [-12 to 12]:"
-msgstr ""
+msgstr "Finálna výška Shift (medzitón) [-12 do 12]:"
#: effects/TimeScale.h:33
msgid "Sliding Time Scale/Pitch Shift..."
-msgstr ""
+msgstr "Posúvanie Äasového rozsahu/výšky Shift ..."
#: effects/TimeScale.h:47
msgid "Changing Tempo/Pitch"
-msgstr ""
+msgstr "Zmena Tempo/Rozostup"
-#: effects/ToneGen.cpp:59
+#: effects/ToneGen.cpp:61
#, c-format
msgid "Applied effect: Generate %s wave %s, frequency = %.2f Hz, amplitude = %.2f, %.6lf seconds"
-msgstr ""
+msgstr "Aplikovať efekt: Generovať %s vlnu %s, frekvencia= %.2f Hz, amplitúda = %.2f, %.6lf sekúnd"
-#: ../src/widgets/Meter.cpp:292
+#: effects/ToneGen.cpp:69
+#: widgets/Meter.cpp:412
msgid "Linear"
-msgstr "Lineárny"
+msgstr "Lineárne"
#: effects/ToneGen.cpp:70
msgid "Logarithmic"
-msgstr ""
+msgstr "Logaritmické"
-#: effects/ToneGen.cpp:66
+#: effects/ToneGen.cpp:71
msgid "Chirp Generator"
-msgstr ""
+msgstr "Generátor štebotania"
-#: ../src/effects/ToneGen.cpp:43
+#: effects/ToneGen.cpp:71
msgid "Tone Generator"
msgstr "Tónový generátor"
-#: ../src/effects/ToneGen.cpp:48
+#: effects/ToneGen.cpp:72
msgid "Sine"
msgstr "SÃnus"
-#: ../src/effects/ToneGen.cpp:49
+#: effects/ToneGen.cpp:73
msgid "Square"
msgstr "Å tvorec"
-# možno nepresný preklad
-#: ../src/effects/ToneGen.cpp:50
+#: effects/ToneGen.cpp:74
msgid "Sawtooth"
msgstr "PÃla"
-#: effects/ToneGen.cpp:70
+#: effects/ToneGen.cpp:75
msgid "Square, no alias"
-msgstr ""
+msgstr "Presne, nie približne"
-#: effects/ToneGen.cpp:298
+#: effects/ToneGen.cpp:319
+#: effects/ToneGen.cpp:356
msgid "Frequency (Hz)"
-msgstr ""
+msgstr "Frequencia (Hz)"
-#: ../src/effects/ToneGen.cpp:263
+#: effects/ToneGen.cpp:347
msgid "Waveform:"
msgstr "Krivka:"
-#: effects/ToneGen.cpp:358
+#: effects/ToneGen.cpp:356
msgid "Frequency Hertz Start"
-msgstr ""
+msgstr "ZaÄiatok frekvencie v Hertzoch"
-#: effects/ToneGen.cpp:359
+#: effects/ToneGen.cpp:357
msgid "Frequency Hertz End"
-msgstr ""
+msgstr "Koniec frekvencie v Hertzoch"
-#: effects/ToneGen.cpp:360
+#: effects/ToneGen.cpp:358
msgid "Amplitude Start"
-msgstr ""
+msgstr "ZaÄiatok Amplitúdy"
-#: effects/ToneGen.cpp:361
+#: effects/ToneGen.cpp:359
msgid "Amplitude End"
-msgstr ""
+msgstr "Koniec Amplitúdy"
-#: effects/ToneGen.cpp:365
+#: effects/ToneGen.cpp:364
msgid "Interpolation:"
-msgstr ""
+msgstr "Interpolácia:"
-#: effects/ToneGen.h:39
+#: effects/ToneGen.h:40
msgid "Chirp..."
-msgstr ""
+msgstr "Å tebot..."
-#: effects/ToneGen.h:39
+#: effects/ToneGen.h:40
msgid "Tone..."
-msgstr ""
+msgstr "Tón..."
-#: effects/ToneGen.h:43
+#: effects/ToneGen.h:54
msgid "Generating Chirp"
-msgstr ""
+msgstr "Generujem štebot"
-#: ../src/effects/ToneGen.h:44
+#: effects/ToneGen.h:54
msgid "Generating Tone"
msgstr "Vytváram tón"
#: effects/TruncSilence.cpp:113
msgid "All tracks must have the same sample rate"
-msgstr ""
+msgstr "Všetky stopy musia mať rovnakú vzorkovaciu frekvenciu"
-#: effects/TruncSilence.cpp:113 effects/TruncSilence.cpp:322
+#: effects/TruncSilence.cpp:113
+#: effects/TruncSilence.cpp:321
msgid "Truncate Silence"
-msgstr ""
+msgstr "Orezať ticho"
-#: effects/TruncSilence.cpp:346
+#: effects/TruncSilence.cpp:345
msgid "Max silence duration:"
-msgstr ""
+msgstr "Maximálna dĺžka ticha:"
-#: prefs/AudioIOPrefs.cpp:175 prefs/AudioIOPrefs.cpp:178
+#: effects/TruncSilence.cpp:348
+#: prefs/AudioIOPrefs.cpp:199
+#: prefs/AudioIOPrefs.cpp:203
+#: prefs/MidiIOPrefs.cpp:174
+#: prefs/MidiIOPrefs.cpp:177
msgid "milliseconds"
-msgstr ""
+msgstr "milisekundy"
-#: effects/TruncSilence.cpp:351
+#: effects/TruncSilence.cpp:350
msgid "Threshold for silence:"
-msgstr ""
+msgstr "Prah ticha: "
-#: effects/TruncSilence.cpp:375
+#: effects/TruncSilence.cpp:374
msgid " Duration must be at least 1 millisecond"
-msgstr ""
+msgstr " Dĺžka musà byť aspoŠ1 millisekunda"
-#: BatchCommands.cpp:236 effects/TruncSilence.cpp:84 effects/TruncSilence.h:29
+#: effects/TruncSilence.h:28
msgid "Truncate Silence..."
-msgstr ""
+msgstr "Orezať ticho..."
-#: effects/TruncSilence.h:33
+#: effects/TruncSilence.h:42
msgid "Truncating Silence..."
-msgstr ""
+msgstr "Orezáva sa ticho..."
-#: ../src/effects/VST/VSTEffect.cpp:180
+#: effects/VST/VSTEffect.cpp:172
msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr "OspravedlÅujem sa, ale VST efekt nemôže byÅ¥ aplikovaný na stereo stopy, pri ktorých nesúhlasia individuálne kanály."
-#: ../src/effects/VST/VSTEffect.cpp:196
+#: effects/VST/VSTEffect.cpp:187
msgid "Can't process replacing"
msgstr "Nie je možné uskutoÄniÅ¥ zámenu"
-#: ../src/effects/VST/VSTEffect.cpp:410
+#: effects/VST/VSTEffect.cpp:410
msgid "VST Plug-in parameters:"
-msgstr "Parametre pre zásuvný modul VST"
+msgstr "Parametre pre zásuvný modul VST:"
-#: ../src/effects/Wahwah.cpp:41
+#: effects/Wahwah.cpp:61
#, c-format
msgid "Applied effect: %s frequency = %.1f Hz, start phase = %.0f deg, depth = %.0f%%, resonance = %.1f, frequency offset = %.0f%%"
-msgstr "Použitý efekt: %s frekvencia = %.1f Hz, Å¡tartovacia fáza = %.0f deg, hĺbka = %.0f%%, rezonancia = %.1f, frekvenÄné odsadenie = %.0f%%"
+msgstr "Použitý efekt: %s frekvencia = %.1f Hz, Å¡tartovacia fáza = %.0f deg, hĺbka = %.0f%%, rezonancia = %.1f, frekvenÄné posun = %.0f%%"
-#: ../src/effects/Wahwah.cpp:52
+#: effects/Wahwah.cpp:203
msgid "Wahwah"
msgstr "Kvákadlo (Wahwah)"
-#: ../src/effects/Wahwah.cpp:500
+#: effects/Wahwah.cpp:231
msgid "Depth (%):"
msgstr "Hĺbka (%):"
-#: ../src/effects/Wahwah.cpp:516
+#: effects/Wahwah.cpp:236
msgid "Resonance:"
msgstr "Rezonancia:"
#: effects/Wahwah.cpp:239
msgid "Resonance"
-msgstr ""
+msgstr "Rezonancia"
-#: ../src/effects/Wahwah.cpp:532
+#: effects/Wahwah.cpp:241
msgid "Wah Frequency Offset (%):"
-msgstr "Offset kvákacej (wah) frekvencie (%):"
+msgstr "Posun kvákacej (wah) frekvencie (%):"
#: effects/Wahwah.cpp:244
msgid "Wah frequency offset in percent"
-msgstr ""
+msgstr "FrakvenÄná odchýlka kvákadla v percentách"
-#: ../src/effects/Wahwah.h:39
+#: effects/Wahwah.h:41
msgid "Wahwah..."
msgstr "Kvákadlo (Wahwah)..."
-#: ../src/effects/Wahwah.h:43
+#: effects/Wahwah.h:55
msgid "Applying Wahwah"
-msgstr "Aplikujem kvákadlo (Wahwah)"
+msgstr "Aplikovanie kvákadla (Wahwah)"
-#: ../src/effects/ladspa/LadspaEffect.cpp:137
+#: effects/audiounits/AudioUnitEffect.cpp:138
+#: effects/ladspa/LadspaEffect.cpp:176
+#: effects/lv2/LV2Effect.cpp:192
#, c-format
msgid "Performing Effect: %s"
msgstr "Aplikujem efekt: %s"
-#: effects/ladspa/LadspaEffect.cpp:189
+#: effects/ladspa/LadspaEffect.cpp:196
+#: effects/lv2/LV2Effect.cpp:212
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr ""
+msgstr "OspravedlÅujeme sa, Plug-in Effects nemôžu byÅ¥ aplikované na stereo stopy, u ktorých nesúhlasia individuálne kanály."
-#: ../src/effects/ladspa/LadspaEffect.cpp:435
-#: ../src/effects/ladspa/LadspaEffect.cpp:443
-#: ../src/prefs/QualityPrefs.cpp:160
+#: effects/ladspa/LadspaEffect.cpp:580
+#: effects/ladspa/LadspaEffect.cpp:588
+#: prefs/GUIPrefs.cpp:51
+#: prefs/QualityPrefs.cpp:72
msgid "None"
msgstr "NiÄ"
-#: ../src/effects/ladspa/LadspaEffect.cpp:437
+#: effects/ladspa/LadspaEffect.cpp:582
+#: effects/lv2/LV2Effect.cpp:799
+#: effects/vamp/VampEffect.cpp:397
msgid "Author: "
msgstr "Autor:"
-#: ../src/effects/ladspa/LadspaEffect.cpp:452
+#: effects/ladspa/LadspaEffect.cpp:615
+#: effects/lv2/LV2Effect.cpp:824
msgid "Effect Settings"
msgstr "Nastavenie efektu"
-#: ../src/effects/Silence.cpp:127
-#: ../src/effects/ToneGen.cpp:306
+#: effects/ladspa/LadspaEffect.cpp:710
+#: effects/ladspa/LadspaEffect.cpp:713
+#: effects/lv2/LV2Effect.cpp:835
+#: effects/lv2/LV2Effect.cpp:838
msgid "Length (seconds)"
msgstr "Dĺžka (sekundy)"
-#: effects/lv2/LV2Effect.cpp:849 effects/lv2/LV2Effect.cpp:852
+#: effects/lv2/LV2Effect.cpp:850
+#: effects/lv2/LV2Effect.cpp:853
msgid "Note length (seconds)"
-msgstr ""
+msgstr "Poznámka dĺžka (sekundy)"
-#: effects/lv2/LV2Effect.cpp:860 effects/lv2/LV2Effect.cpp:863
+#: effects/lv2/LV2Effect.cpp:861
+#: effects/lv2/LV2Effect.cpp:864
msgid "Note velocity"
-msgstr ""
+msgstr "Poznámka rýchlosti"
-#: effects/lv2/LV2Effect.cpp:871 effects/lv2/LV2Effect.cpp:874
+#: effects/lv2/LV2Effect.cpp:872
+#: effects/lv2/LV2Effect.cpp:875
msgid "Note key"
-msgstr ""
+msgstr "Poznámka kľúÄa"
-#: ../src/effects/nyquist/Nyquist.cpp:217
+#: effects/nyquist/Nyquist.cpp:302
msgid "Applying Nyquist Effect..."
msgstr "Aplikujem Nyquist efekt..."
-#: ../src/effects/nyquist/Nyquist.cpp:224
+#: effects/nyquist/Nyquist.cpp:320
+#: effects/nyquist/Nyquist.cpp:403
msgid "Nyquist Prompt..."
msgstr "PrÃkazový riadok Nyquistu..."
-#: ../src/effects/nyquist/Nyquist.cpp:282
+#: effects/nyquist/Nyquist.cpp:404
msgid "Enter Nyquist Command: "
msgstr "VložiÅ¥ Nyquist prÃkaz: "
-#: ../src/effects/nyquist/Nyquist.cpp:370
+#: effects/nyquist/Nyquist.cpp:504
msgid "Sorry, cannot apply effect on stereo tracks where the tracks don't match."
msgstr "OspravedlÅujem sa, ale efekt nemôže byÅ¥ aplikovaný na stereo stopy, pri ktorých nesúhlasia individuálne kanály."
-#: ../src/effects/nyquist/Nyquist.cpp:397
+#: effects/nyquist/Nyquist.cpp:535
msgid "Nyquist"
msgstr "Nyquist"
-#: ../src/effects/nyquist/Nyquist.cpp:398
+#: effects/nyquist/Nyquist.cpp:536
msgid "Nyquist Output: "
msgstr "Výstup Nyquistu:"
-#: effects/nyquist/Nyquist.cpp:594 effects/nyquist/Nyquist.cpp:605
+#: effects/nyquist/Nyquist.cpp:747
+#: effects/nyquist/Nyquist.cpp:758
msgid "Nyquist returned the value:"
-msgstr ""
+msgstr "Nyquist vrátil hodnotu:"
-#: ../src/effects/nyquist/Nyquist.cpp:594
+#: effects/nyquist/Nyquist.cpp:800
msgid "Nyquist did not return audio.\n"
msgstr "Nyquist nevrátil žiadne audio.\n"
-#: ../src/effects/nyquist/Nyquist.cpp:604
+#: effects/nyquist/Nyquist.cpp:811
msgid "Nyquist returned too many audio channels.\n"
msgstr "Nyquist vrátil prÃliÅ¡ mnoho audio kanálov.\n"
-#: effects/vamp/VampEffect.cpp:75
+#: effects/vamp/VampEffect.cpp:80
#, c-format
msgid "Extracting features: %s"
-msgstr ""
+msgstr "Extrahujte rysi: %s"
-#: effects/vamp/VampEffect.cpp:106
+#: effects/vamp/VampEffect.cpp:111
msgid "Sorry, Vamp Plug-ins cannot be run on stereo tracks where the individual channels of the track do not match."
-msgstr ""
+msgstr "OspravedlÅujeme sa, Vamp pluginy nemôžu byÅ¥ aplikované na stereo stopy, u ktorých nesúhlasia individuálne kanály."
-#: effects/vamp/VampEffect.cpp:120
+#: effects/vamp/VampEffect.cpp:125
msgid "Sorry, failed to load Vamp Plug-in."
-msgstr ""
+msgstr "OspravedlÅujeme sa, ale Vamp plugin nie je možné naÄÃtaÅ¥."
-#: effects/vamp/VampEffect.cpp:228
+#: effects/vamp/VampEffect.cpp:233
msgid "Sorry, Vamp Plug-in failed to initialize."
-msgstr ""
+msgstr "OspravedlÅujeme sa, ale Vamp plugin nie je možné inicializovaÅ¥."
-#: effects/vamp/VampEffect.cpp:376
+#: effects/vamp/VampEffect.cpp:389
msgid " - Vamp audio analysis plugin"
-msgstr ""
+msgstr " - Plugin pre analýzu zvuku Vamp"
-#: effects/vamp/VampEffect.cpp:423
+#: effects/vamp/VampEffect.cpp:425
msgid "Plugin Settings"
-msgstr ""
+msgstr "Nastavenie Pluginov"
-#: effects/vamp/VampEffect.cpp:446
+#: effects/vamp/VampEffect.cpp:444
+#: effects/vamp/VampEffect.cpp:450
msgid "Program"
-msgstr ""
+msgstr "Program"
#: export/Export.cpp:469
msgid "All the selected audio is muted."
-msgstr ""
+msgstr "Celý vybraný zvuk je stlmený."
#: export/Export.cpp:471
msgid "All the audio is muted."
-msgstr ""
+msgstr "Celý zvuk je stlmený."
-#: export/Export.cpp:445
+#: export/Export.cpp:527
msgid "Export File"
-msgstr ""
+msgstr "Exportovať Súbor"
-#: export/Export.cpp:453
+#: export/Export.cpp:536
msgid "&Options..."
-msgstr ""
+msgstr "&Nastavenia..."
-#: ../src/export/Export.cpp:202
+#: export/Export.cpp:577
msgid "Are you sure you want to save the file as \""
msgstr "Naozaj chcete súbor uložiť ako \""
-#: export/Export.cpp:495
+#: export/Export.cpp:597
#, c-format
-msgid "You are about to save a %s file with the name \"%s\".\n"
+msgid ""
+"You are about to save a %s file with the name \"%s\".\n"
"\n"
"Normally these files end in \".%s\", and some programs will not open files with nonstandard extensions.\n"
"\n"
"Are you sure you want to save the file under this name?"
msgstr ""
+"Chystáte sa uložiť súbor %s pod menom \"%s\".\n"
+"\n"
+"Obvykle názvy týchto súborov konÄia na \".%s\" a niektoré programy nevedia otvoriÅ¥ súbory s neÅ¡tandardnými prÃponami.\n"
+"Naozaj chcete uložiť tento súbor pod týmto menom?"
-#: export/Export.cpp:516
+#: export/Export.cpp:618
#, c-format
msgid "A file named \"%s\" already exists. Replace?"
-msgstr ""
+msgstr "Súbor s názvom \"%s\" už existuje. Nahradiť?"
-#: ../src/export/Export.cpp:142
+#: export/Export.cpp:720
msgid "Your tracks will be mixed down to two stereo channels in the exported file."
msgstr "Stopy budú v exportovanom súbore premixované do dvoch stereo kanálov."
-#: ../src/export/Export.cpp:147
+#: export/Export.cpp:725
msgid "Your tracks will be mixed down to a single mono channel in the exported file."
msgstr "Stopy budú v exportovanom súbore premixované na jeden mono kanál."
-#: export/Export.cpp:171
+#: export/Export.cpp:736
msgid "Advanced Mixing Options"
-msgstr ""
+msgstr "PokroÄilé voľby mieÅ¡ania"
-#: export/Export.cpp:632
+#: export/Export.cpp:940
#, c-format
msgid "Channel: %2d"
-msgstr ""
+msgstr "Kanál: %2d"
-#: export/Export.cpp:755
+#: export/Export.cpp:1056
msgid " - Left"
-msgstr ""
+msgstr " - Ľavý"
-#: export/Export.cpp:756
+#: export/Export.cpp:1057
msgid " - Right"
-msgstr ""
+msgstr " - Pravý"
-#: export/Export.cpp:1072
+#: export/Export.cpp:1082
msgid "Mixer Panel"
-msgstr ""
+msgstr "Mixážny Panel"
-#: export/Export.cpp:775 export/Export.cpp:829
+#: export/Export.cpp:1088
+#: export/Export.cpp:1135
#, c-format
msgid "Output Channels: %2d"
-msgstr ""
+msgstr "Výstupné kanály: %2d"
#: export/ExportCL.cpp:55
msgid "Specify Command Line Encoder"
-msgstr ""
+msgstr "UveÄte enkóder prÃkazového riadku"
-#: export/ExportCL.cpp:70
+#: export/ExportCL.cpp:68
msgid "Command Line Export Setup"
-msgstr ""
+msgstr "Nastavenia exportu prÃkazového riadku"
-#: export/ExportCL.cpp:75
+#: export/ExportCL.cpp:73
msgid "Command:"
-msgstr ""
+msgstr "PrÃkaz:"
-#: export/ExportCL.cpp:80
+#: export/ExportCL.cpp:78
msgid "Show output"
-msgstr ""
+msgstr "Zobraziť výstup"
-#: export/ExportCL.cpp:87
+#: export/ExportCL.cpp:85
#, c-format
msgid "Data will be piped to standard in. \"%f\" will be replaced with output filename selected."
-msgstr ""
+msgstr "Dáta budú prevedené do štandardu \"%f\" bude nahradené vybraným výstupným súborom."
-#: export/ExportCL.cpp:219
+#: export/ExportCL.cpp:220
msgid "(external program)"
-msgstr ""
+msgstr "(externý program)"
-#: ../src/export/ExportPCM.cpp:79
+#: export/ExportCL.cpp:286
+#: export/ExportPCM.cpp:484
#, c-format
msgid "Cannot export audio to %s"
msgstr "Nie je možné exportovať audio do %s"
-#: ../src/export/ExportCL.cpp:144
+#: export/ExportCL.cpp:360
msgid "Exporting the selected audio using command-line encoder"
msgstr "Exportujem zvolené audio pomocou enkóderu s prÃkazovým riadkom"
-#: ../src/export/ExportCL.cpp:146
+#: export/ExportCL.cpp:361
msgid "Exporting the entire project using command-line encoder"
msgstr "Exportujem celý projekt pomocou enkóderu s prÃkazovým riadkom"
-#: export/ExportCL.cpp:387
+#: export/ExportCL.cpp:423
msgid "Command Output"
-msgstr ""
+msgstr "Výstup prÃkazu"
#: export/ExportFFmpeg.cpp:59
-msgid "Properly configured FFmpeg is required to proceed.\n"
+msgid ""
+"Properly configured FFmpeg is required to proceed.\n"
"You can configure it in Preferences->Import/Export."
msgstr ""
+"Správne nakonfigurovaný FFmpeg je povinný pokraÄovaÅ¥.\n"
+"Môžete nastaviť v Nastavenie-> Import / Export."
-#: export/ExportFFmpeg.cpp:394
+#: export/ExportFFmpeg.cpp:410
#, c-format
-msgid "FFmpeg cannot find audio codec 0x%x.\n"
+msgid ""
+"FFmpeg cannot find audio codec 0x%x.\n"
"Support for this codec is probably not compiled in."
msgstr ""
+"FFmpeg nemôže nájsť audio kodek 0x% x.\n"
+"Podpora tohto kodeku je pravdepodobne nevkompilovaná."
-#: export/ExportFFmpeg.cpp:614
+#: export/ExportFFmpeg.cpp:641
#, c-format
msgid "Attempted to export %d channels, but max. channels for selected output format is %d"
-msgstr ""
+msgstr "Pokus o export %d kanálov, ale maximálny poÄet kanálov pre vybraný výstupný formát je %d"
-#: export/ExportFFmpeg.cpp:638
+#: export/ExportFFmpeg.cpp:669
#, c-format
msgid "Exporting selected audio as %s"
-msgstr ""
+msgstr "Vybrané audio sa exportuje ako %s"
-#: export/ExportFFmpeg.cpp:639
+#: export/ExportFFmpeg.cpp:670
#, c-format
msgid "Exporting entire file as %s"
-msgstr ""
+msgstr "Celý súbor sa exportuje ako %s"
-#: export/ExportMP3.cpp:1863
+#: export/ExportFFmpeg.cpp:733
+#: export/ExportMP3.cpp:1772
msgid "Invalid sample rate"
-msgstr ""
+msgstr "Nesprávna vzorkovacia rýchlosť"
-#: export/ExportFFmpeg.cpp:715
+#: export/ExportFFmpeg.cpp:746
#, c-format
-msgid "The project sample rate (%d) is not supported by the current output\n"
+msgid ""
+"The project sample rate (%d) is not supported by the current output\n"
"file format. "
msgstr ""
+"Projekt vzorkovej rýchlosti (%d) nie je podporovaný súÄasným výstupným\n"
+"súborovým formátom. "
-#: export/ExportFFmpeg.cpp:718
+#: export/ExportFFmpeg.cpp:749
#, c-format
-msgid "The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
+msgid ""
+"The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
"supported by the current output file format. "
msgstr ""
+"Projekt kombinácie vzorkovej rýchlosti (%d) a bitovej rýchlosti (%d kbps) nie je\n"
+"podporovaný súÄasným výstupným súborovým formátom."
-#: export/ExportMP3.cpp:1882
+#: export/ExportFFmpeg.cpp:752
+#: export/ExportMP3.cpp:1791
msgid "You may resample to one of the rates below."
-msgstr ""
+msgstr "Môžete prevzorkovať o jednu sadu nižšie."
-#: export/ExportMP3.cpp:1905
+#: export/ExportFFmpeg.cpp:780
+#: export/ExportMP3.cpp:1814
msgid "Sample Rates"
-msgstr ""
+msgstr "Rýchlosti vzorkovania"
#: export/ExportFFmpegDialogs.cpp:93
msgid "Specify AC3 Options"
-msgstr ""
+msgstr "Upresniť nastavenie AC3"
-#: export/ExportFFmpegDialogs.cpp:117
+#: export/ExportFFmpegDialogs.cpp:112
msgid "AC3 Export Setup"
-msgstr ""
-
-#: ../src/prefs/FileFormatPrefs.cpp:197
+msgstr "Nastavenie AC3 exportu"
+
+#: export/ExportFFmpegDialogs.cpp:116
+#: export/ExportFFmpegDialogs.cpp:234
+#: export/ExportFFmpegDialogs.cpp:298
+#: export/ExportFFmpegDialogs.cpp:364
+#: export/ExportFFmpegDialogs.cpp:923
+#: export/ExportMP2.cpp:131
msgid "Bit Rate:"
msgstr "Dátový tok (Bit Rate):"
-#: export/ExportFFmpegDialogs.cpp:162
+#: export/ExportFFmpegDialogs.cpp:157
msgid "Specify AAC Options"
-msgstr ""
+msgstr "Upresniť nastavenie AAC"
-#: export/ExportFFmpegDialogs.cpp:178
+#: export/ExportFFmpegDialogs.cpp:168
msgid "AAC Export Setup"
-msgstr ""
+msgstr "Nastavenie AAC exportu"
-#: export/ExportFFmpegDialogs.cpp:217
+#: export/ExportFFmpegDialogs.cpp:211
msgid "Specify AMR-NB Options"
-msgstr ""
+msgstr "Upresniť nastavenie AMR-NB "
-#: export/ExportFFmpegDialogs.cpp:241
+#: export/ExportFFmpegDialogs.cpp:230
msgid "AMR-NB Export Setup"
-msgstr ""
+msgstr "Nastavenie AMR-NB exportu"
-#: export/ExportFFmpegDialogs.cpp:286
+#: export/ExportFFmpegDialogs.cpp:275
msgid "Specify AMR-WB Options"
-msgstr ""
+msgstr "Upresniť nastavenie AMR-WB"
-#: export/ExportFFmpegDialogs.cpp:310
+#: export/ExportFFmpegDialogs.cpp:294
msgid "AMR-WB Export Setup"
-msgstr ""
+msgstr "Nastavenie AMR-WB exportu"
-#: export/ExportFFmpegDialogs.cpp:357
+#: export/ExportFFmpegDialogs.cpp:341
msgid "Specify WMA Options"
-msgstr ""
+msgstr "Upresniť nastavenie WMA"
-#: export/ExportFFmpegDialogs.cpp:381
+#: export/ExportFFmpegDialogs.cpp:360
msgid "WMA Export Setup"
-msgstr ""
+msgstr "Nastavenie WMA exportu"
-#: export/ExportFFmpegDialogs.cpp:509
+#: export/ExportFFmpegDialogs.cpp:488
#, c-format
msgid "Overwrite preset '%s'?"
-msgstr ""
+msgstr "PrepÃsaÅ¥ predvoľbu '%s'?"
-#: export/ExportFFmpegDialogs.cpp:510
+#: export/ExportFFmpegDialogs.cpp:489
msgid "Confirm Overwrite"
-msgstr ""
+msgstr "PotvrdiÅ¥ PrepÃsanie"
#: export/ExportFFmpegDialogs.cpp:501
msgid "Please select format before saving a profile"
-msgstr ""
+msgstr "ProsÃm, vyberte formát pred uloženÃm profilu"
#: export/ExportFFmpegDialogs.cpp:509
msgid "Please select codec before saving a profile"
-msgstr ""
+msgstr "ProsÃm, vyberte kodek pred uloženÃm profilu"
-#: export/ExportFFmpegDialogs.cpp:580
+#: export/ExportFFmpegDialogs.cpp:579
#, c-format
msgid "Preset '%s' does not exist."
-msgstr ""
+msgstr "Predvoľba '%s' neexistuje."
-#: export/ExportFFmpegDialogs.cpp:803
+#: export/ExportFFmpegDialogs.cpp:794
msgid "Specify Other Options"
-msgstr ""
+msgstr "Upresniť iné nastavenie "
-#: export/ExportFFmpegDialogs.cpp:897
+#: export/ExportFFmpegDialogs.cpp:883
msgid "Preset:"
-msgstr ""
+msgstr "Predvoľba:"
-#: export/ExportFFmpegDialogs.cpp:898
+#: export/ExportFFmpegDialogs.cpp:884
msgid "Load Preset"
-msgstr ""
+msgstr "Predvoľba NaÄÃtania"
-#: export/ExportFFmpegDialogs.cpp:899
+#: export/ExportFFmpegDialogs.cpp:885
msgid "Save Preset"
-msgstr ""
+msgstr "Predvoľba Uloženia"
-#: export/ExportFFmpegDialogs.cpp:900
+#: export/ExportFFmpegDialogs.cpp:886
msgid "Delete Preset"
-msgstr ""
+msgstr "Predvoľba Zmazania"
-#: export/ExportFFmpegDialogs.cpp:901
+#: export/ExportFFmpegDialogs.cpp:887
msgid "Import Presets"
-msgstr ""
+msgstr "Predvoľby Importu"
-#: export/ExportFFmpegDialogs.cpp:902
+#: export/ExportFFmpegDialogs.cpp:888
msgid "Export Presets"
-msgstr ""
+msgstr "Predvoľby Exportu"
-#: export/ExportPCM.cpp:177
+#: export/ExportFFmpegDialogs.cpp:893
msgid "Format:"
-msgstr ""
+msgstr "Formát:"
-#: export/ExportFFmpegDialogs.cpp:909
+#: export/ExportFFmpegDialogs.cpp:895
msgid "Codec:"
-msgstr ""
+msgstr "Kodek:"
-#: export/ExportFFmpegDialogs.cpp:913
+#: export/ExportFFmpegDialogs.cpp:899
msgid "Not all formats and codecs are compatible. Some parameters (such as bitrate and samplerate) combinations are not compatible with some codecs too."
-msgstr ""
+msgstr "Nie všetky formáty a kodeky sú kompatibilné. Niektoré parametre (napr. bitová a vzorkovacia rýchlosť) a ich kombinácie tiež nie sú kompatibilné s niektorými kodekmi."
-#: export/ExportFFmpegDialogs.cpp:916
+#: export/ExportFFmpegDialogs.cpp:902
msgid "Format selector:"
-msgstr ""
+msgstr "VoliÄ formátu:"
-#: export/ExportFFmpegDialogs.cpp:917
+#: export/ExportFFmpegDialogs.cpp:903
msgid "Codec selector:"
-msgstr ""
+msgstr "VoliÄ kodekov:"
-#: export/ExportFFmpegDialogs.cpp:919
+#: export/ExportFFmpegDialogs.cpp:905
msgid "Show All Formats"
-msgstr ""
+msgstr "Zobraziť všetky formáty"
-#: export/ExportFFmpegDialogs.cpp:920
+#: export/ExportFFmpegDialogs.cpp:906
msgid "Show All Codecs"
-msgstr ""
+msgstr "Zobraziť všetky kodeky"
-#: export/ExportFFmpegDialogs.cpp:914
+#: export/ExportFFmpegDialogs.cpp:913
msgid "Options"
-msgstr ""
+msgstr "Možnosti"
-#: ../src/prefs/GUIPrefs.cpp:134
+#: export/ExportFFmpegDialogs.cpp:917
+#: prefs/GUIPrefs.cpp:166
msgid "Language:"
msgstr "Jazyk:"
-#: export/ExportFFmpegDialogs.cpp:932
-msgid "ISO 639 3-letter language code\n"
+#: export/ExportFFmpegDialogs.cpp:918
+msgid ""
+"ISO 639 3-letter language code\n"
"Optional\n"
"empty - automatic"
msgstr ""
+"ISO 639 3-zápis kódu jazyka \n"
+"Voliteľné \n"
+"prázdny - automatické"
-#: export/ExportFFmpegDialogs.cpp:934
+#: export/ExportFFmpegDialogs.cpp:920
msgid "Tag:"
-msgstr ""
+msgstr "Tág:"
-#: export/ExportFFmpegDialogs.cpp:935
-msgid "Codec tag (FOURCC)\n"
+#: export/ExportFFmpegDialogs.cpp:921
+msgid ""
+"Codec tag (FOURCC)\n"
"Optional\n"
"empty - automatic"
msgstr ""
+"ZnaÄka kodeku (FOURCC)\n"
+"Voliteľné \n"
+"prázdny - automatické"
-#: export/ExportFFmpegDialogs.cpp:938
-msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n"
+#: export/ExportFFmpegDialogs.cpp:924
+msgid ""
+"Bit Rate (bits/second) - influences the resulting file size and quality\n"
"Some codecs may only accept specific values (128k, 192k, 256k etc)\n"
"0 - automatic\n"
"Recommended - 192000"
msgstr ""
+"Bitová rýchlosÅ¥ (bitov/sekundu) - ovplyvÅuje výslednú veľkosÅ¥ súboru a kvalitu \n"
+"Niektoré kodeky môžu iba prijaÅ¥ konkrétne hodnoty (128k, 192k, 256k, atÄ) \n"
+"0 - automatické \n"
+"OdporúÄané - 192000"
-#: export/ExportOGG.cpp:86
+#: export/ExportFFmpegDialogs.cpp:926
+#: export/ExportOGG.cpp:84
msgid "Quality:"
-msgstr ""
+msgstr "Kvalita:"
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:927
+msgid ""
+"Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
msgstr ""
+"Celková kvalita, použÃvaná odliÅ¡ne rôznymi kodekmi \n"
+"Potrebné pre vorbis \n"
+"0 - automatické \n"
+"-1 - Vypnuté (použitie miesto dátového toku)"
-#: export/ExportFFmpegDialogs.cpp:943
+#: export/ExportFFmpegDialogs.cpp:929
msgid "Sample Rate:"
-msgstr ""
+msgstr "Rýchlosť vzorkovania: "
-#: export/ExportFFmpegDialogs.cpp:944
-msgid "Sample rate (Hz)\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid ""
+"Sample rate (Hz)\n"
"0 - don't change sample rate"
msgstr ""
+"Vzorkovacà kmitoÄet (Hz) \n"
+"0 - nemenà vzorkovacà kmitoÄet"
-#: export/ExportFFmpegDialogs.cpp:946
+#: export/ExportFFmpegDialogs.cpp:932
msgid "Cutoff Bandwidth:"
-msgstr ""
+msgstr "Prerušené pásmo:"
-#: export/ExportFFmpegDialogs.cpp:947
-msgid "Audio cutoff bandwidth (Hz)\n"
+#: export/ExportFFmpegDialogs.cpp:933
+msgid ""
+"Audio cutoff bandwidth (Hz)\n"
"Optional\n"
"0 - automatic\n"
msgstr ""
+"Prerušené audio pásmo (Hz) \n"
+"Voliteľné \n"
+"0 - automatické \n"
-#: export/ExportFFmpegDialogs.cpp:949
+#: export/ExportFFmpegDialogs.cpp:935
msgid "Profile:"
-msgstr ""
+msgstr "Profil:"
-#: export/ExportFFmpegDialogs.cpp:951
-msgid "AAC Profile\n"
+#: export/ExportFFmpegDialogs.cpp:937
+msgid ""
+"AAC Profile\n"
"Low Complexity -default\n"
"Most players won't play anything other than LC"
msgstr ""
+"AAC Profil \n"
+"Vysoká-Zložitosť-predvolená \n"
+"VäÄÅ¡ina hráÄov nebude hraÅ¥ niÄ iného ako LC"
-#: export/ExportFFmpegDialogs.cpp:940
+#: export/ExportFFmpegDialogs.cpp:939
msgid "Use Bit Reservoir"
-msgstr ""
+msgstr "Použitie zásobnÃkových Bitov"
-#: export/ExportFFmpegDialogs.cpp:943
+#: export/ExportFFmpegDialogs.cpp:942
msgid "Use Variable Block Length"
-msgstr ""
+msgstr "Variabilné použitie blokovej dĺžky"
-#: export/ExportFFmpegDialogs.cpp:948
+#: export/ExportFFmpegDialogs.cpp:947
msgid "FLAC options"
-msgstr ""
+msgstr "Nastavenie FLAC"
-#: export/ExportFFmpegDialogs.cpp:965
+#: export/ExportFFmpegDialogs.cpp:951
msgid "Compression Level:"
-msgstr ""
+msgstr "ÃroveÅ Kompresie"
-#: export/ExportFFmpegDialogs.cpp:966
-msgid "Compression level\n"
+#: export/ExportFFmpegDialogs.cpp:952
+msgid ""
+"Compression level\n"
"Required for FLAC\n"
"-1 - automatic\n"
"min - 0 (fast encoding, large output file)\n"
"max - 10 (slow encoding, small output file)"
msgstr ""
+"ÃroveÅ kompresie\n"
+"Potrebné pre FLAC\n"
+"-1 - automatické\n"
+"min - 0 (rýchle kódovanie, veľký výstupný súbor)\n"
+"max - 10 (pomalé kódovanie, malý výstupný súbor)"
-#: export/ExportFFmpegDialogs.cpp:968
+#: export/ExportFFmpegDialogs.cpp:954
msgid "Frame Size:"
-msgstr ""
+msgstr "VeľkosÅ¥ snÃmku:"
-#: export/ExportFFmpegDialogs.cpp:969
-msgid "Frame size\n"
+#: export/ExportFFmpegDialogs.cpp:955
+msgid ""
+"Frame size\n"
"Optional\n"
"0 - default\n"
"min - 16\n"
"max - 65535"
msgstr ""
+"Veľkosť rámca\n"
+"Voliteľná \n"
+"0 - predvolená\n"
+"min - 16 \n"
+"max - 65535"
-#: export/ExportFFmpegDialogs.cpp:971
+#: export/ExportFFmpegDialogs.cpp:957
msgid "LPC coefficients precision"
-msgstr ""
+msgstr "LPC koeficienty presnosti"
-#: export/ExportFFmpegDialogs.cpp:972
-msgid "LPC coefficients precision\n"
+#: export/ExportFFmpegDialogs.cpp:958
+msgid ""
+"LPC coefficients precision\n"
"Optional\n"
"0 - default\n"
"min - 1\n"
"max - 15"
msgstr ""
+"LPC koeficienty presnosti \n"
+"Voliteľné \n"
+"0 - predvolené \n"
+"min - 1 \n"
+"max - 15"
-#: export/ExportFFmpegDialogs.cpp:974
+#: export/ExportFFmpegDialogs.cpp:960
msgid "Minimal prediction order"
-msgstr ""
+msgstr "Minimálna predikcia poradia"
-#: export/ExportFFmpegDialogs.cpp:975
-msgid "Minimal prediction order\n"
+#: export/ExportFFmpegDialogs.cpp:961
+msgid ""
+"Minimal prediction order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 32 (with LPC) or 4 (without LPC)"
msgstr ""
+"Minimálna predpoveÄ prÃkazu\n"
+"Voliteľná\n"
+"-1 - prevolená\n"
+"min - 0\n"
+"max - 32 (s LPC) or 4 (bez LPC)"
-#: export/ExportFFmpegDialogs.cpp:977
+#: export/ExportFFmpegDialogs.cpp:963
msgid "Maximal prediction order"
-msgstr ""
+msgstr "Maximálna predikcia poradia"
-#: export/ExportFFmpegDialogs.cpp:978
-msgid "Maximal prediction order\n"
+#: export/ExportFFmpegDialogs.cpp:964
+msgid ""
+"Maximal prediction order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 32 (with LPC) or 4 (without LPC)"
msgstr ""
+"Maximálna predpoveÄ prÃkazu\n"
+"Voliteľná\n"
+"-1 - prevolená\n"
+"min - 0\n"
+"max - 32 (s LPC) or 4 (bez LPC)"
-#: export/ExportFFmpegDialogs.cpp:980
+#: export/ExportFFmpegDialogs.cpp:966
msgid "Prediction Order Method:"
-msgstr ""
+msgstr "Predikcia metódy poradia"
-#: export/ExportFFmpegDialogs.cpp:982
-msgid "Prediction Order Method\n"
+#: export/ExportFFmpegDialogs.cpp:968
+msgid ""
+"Prediction Order Method\n"
"Estimate - fastest, lower compression\n"
"Log search - slowest, best compression\n"
"Full search - default"
msgstr ""
+"PredpoveÄ metódy prÃkazu\n"
+"Odhad - najrýchlejÅ¡Ã, nižšia kompresia\n"
+"Prihlásené hľadanie - najpomalšie, najlepšia kompresia\n"
+" Ãplné hľadanie - predvolené"
-#: export/ExportFFmpegDialogs.cpp:984
+#: export/ExportFFmpegDialogs.cpp:970
msgid "Minimal partition order"
-msgstr ""
+msgstr "Minimálnal partÃcia poradia"
-#: export/ExportFFmpegDialogs.cpp:985
-msgid "Minimal partition order\n"
+#: export/ExportFFmpegDialogs.cpp:971
+msgid ""
+"Minimal partition order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 8"
msgstr ""
+"Minimálny prÃkaz partÃcie\n"
+"Voliteľnýl\n"
+"-1 - predvolený\n"
+"min - 0\n"
+"max - 8"
-#: export/ExportFFmpegDialogs.cpp:987
+#: export/ExportFFmpegDialogs.cpp:973
msgid "Maximal partition order"
-msgstr ""
+msgstr "Maximálna partÃcia poradia"
-#: export/ExportFFmpegDialogs.cpp:988
-msgid "Maximal partition order\n"
+#: export/ExportFFmpegDialogs.cpp:974
+msgid ""
+"Maximal partition order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 8"
msgstr ""
+"Maximálny prÃkaz partÃcie\n"
+"Voliteľnýl\n"
+"-1 - predvolený\n"
+"min - 0\n"
+"max - 8"
-#: export/ExportFFmpegDialogs.cpp:977
+#: export/ExportFFmpegDialogs.cpp:976
msgid "Use LPC"
-msgstr ""
+msgstr "PoužÃvanie LPC"
-#: export/ExportFFmpegDialogs.cpp:984
+#: export/ExportFFmpegDialogs.cpp:983
msgid "MPEG container options"
-msgstr ""
+msgstr "Voľby MPEG zásobnÃka"
-#: export/ExportFFmpegDialogs.cpp:1001
+#: export/ExportFFmpegDialogs.cpp:987
msgid "Mux Rate:"
-msgstr ""
+msgstr "Mux rýchlosť:"
-#: export/ExportFFmpegDialogs.cpp:1002
-msgid "Maximum bit rate of the multiplexed stream\n"
+#: export/ExportFFmpegDialogs.cpp:988
+msgid ""
+"Maximum bit rate of the multiplexed stream\n"
"Optional\n"
"0 - default"
msgstr ""
+"Maximálna prenosová rýchlosť multiplexovaného toku \n"
+"Voliteľná\n"
+"0 - predvolená"
-#: export/ExportFFmpegDialogs.cpp:1004
+#: export/ExportFFmpegDialogs.cpp:990
msgid "Packet Size:"
-msgstr ""
+msgstr "Veľkosť paketu:"
-#: export/ExportFFmpegDialogs.cpp:1005
-msgid "Packet size\n"
+#: export/ExportFFmpegDialogs.cpp:991
+msgid ""
+"Packet size\n"
"Optional\n"
"0 - default"
msgstr ""
+"Veľkosť paketu\n"
+"Voliteľný\n"
+"0 - predvolený"
-#: export/ExportFFmpegDialogs.cpp:1207
+#: export/ExportFFmpegDialogs.cpp:1206
msgid "You can't delete a preset without name"
-msgstr ""
+msgstr "Nemôžete vymazať predvoľbu bez názvu"
-#: export/ExportFFmpegDialogs.cpp:1219
+#: export/ExportFFmpegDialogs.cpp:1210
#, c-format
msgid "Delete preset '%s'?"
-msgstr ""
+msgstr "Zmazať predvoľbu '%s'?"
-#: export/ExportFFmpegDialogs.cpp:1238
+#: export/ExportFFmpegDialogs.cpp:1229
msgid "You can't save a preset without name"
-msgstr ""
+msgstr "Nemôžete uložiť predvoľbu bez názvu"
-#: export/ExportFFmpegDialogs.cpp:1277
+#: export/ExportFFmpegDialogs.cpp:1269
msgid "Select xml file with presets to import"
-msgstr ""
+msgstr "Vyberte xml súbor s predvolieb na import"
-#: ../src/prefs/KeyConfigPrefs.cpp:192
+#: export/ExportFFmpegDialogs.cpp:1272
+#: export/ExportFFmpegDialogs.cpp:1292
+#: prefs/KeyConfigPrefs.cpp:215
msgid "XML files (*.xml)|*.xml|All files (*.*)|*.*"
msgstr "XML súbory (*.xml)|*.xml|Všetky súbory (*.*)|*.*"
-#: export/ExportFFmpegDialogs.cpp:1292
+#: export/ExportFFmpegDialogs.cpp:1289
msgid "Select xml file to export presets into"
-msgstr ""
+msgstr "Vybrať xml súboru pre export do predvolieb"
-#: export/ExportFFmpegDialogs.cpp:1361
+#: export/ExportFFmpegDialogs.cpp:1360
msgid "Failed to guess format"
-msgstr ""
+msgstr "Nepodarilo sa odhadnúť formát"
-#: export/ExportFFmpegDialogs.cpp:1403
+#: export/ExportFFmpegDialogs.cpp:1402
msgid "Failed to find the codec"
-msgstr ""
+msgstr "Nepodarilo sa nájsť kodek"
-#: export/ExportFFmpegDialogs.h:53
+#: export/ExportFFmpegDialogs.h:54
msgid "M4A (AAC) Files (FFmpeg)"
-msgstr ""
+msgstr "M4A (AAC) Súbory (FFmpeg)"
-#: export/ExportFFmpegDialogs.h:54
+#: export/ExportFFmpegDialogs.h:55
msgid "AC3 Files (FFmpeg)"
-msgstr ""
+msgstr "AC3 Súbory (FFmpeg)"
-#: export/ExportFFmpegDialogs.h:55
+#: export/ExportFFmpegDialogs.h:56
msgid "AMR (narrow band) Files (FFmpeg)"
-msgstr ""
+msgstr "AMR (úzke pásmo) Súbory (FFmpeg)"
-#: export/ExportFFmpegDialogs.h:56
+#: export/ExportFFmpegDialogs.h:57
msgid "AMR (wide band) Files (FFmpeg)"
-msgstr ""
+msgstr "AMR (široké pásmo) Súbory (FFmpeg)"
-#: export/ExportFFmpegDialogs.h:57
+#: export/ExportFFmpegDialogs.h:58
msgid "WMA (version 2) Files (FFmpeg)"
-msgstr ""
+msgstr "WMA (verzia 2) Súbory (FFmpeg)"
-#: export/ExportFFmpegDialogs.h:58
+#: export/ExportFFmpegDialogs.h:59
msgid "Custom FFmpeg Export"
-msgstr ""
+msgstr "Vlastný FFmpeg export"
-#: export/ExportFFmpegDialogs.h:373
+#: export/ExportFFmpegDialogs.h:374
msgid "LTP"
-msgstr ""
+msgstr "LTP"
-#: export/ExportFFmpegDialogs.h:373
+#: export/ExportFFmpegDialogs.h:374
msgid "Low Complexity"
-msgstr ""
+msgstr "NÃzka zložitosÅ¥"
-#: export/ExportFFmpegDialogs.h:373
+#: export/ExportFFmpegDialogs.h:374
msgid "Main profile"
-msgstr ""
+msgstr "Hlavný profil"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "2-level"
-msgstr ""
+msgstr "2-úroveÅ"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "4-level"
-msgstr ""
+msgstr "4-úroveÅ"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "8-level"
-msgstr ""
+msgstr "8-úroveÅ"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "Estimate"
-msgstr ""
+msgstr "Odhad"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "Full search"
-msgstr ""
+msgstr "Ãplné vyhľadávanie"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "Log search"
-msgstr ""
+msgstr "Prihlásiť vyhľadávanie"
-#: export/ExportFLAC.cpp:68
+#: export/ExportFLAC.cpp:67
msgid "Specify FLAC Options"
-msgstr ""
+msgstr "Upresniť nastavenie FLAC"
-#: export/ExportFLAC.cpp:82
+#: export/ExportFLAC.cpp:79
msgid "0 (fastest)"
-msgstr ""
+msgstr "0 (rýchly test)"
-#: export/ExportFLAC.cpp:83
+#: export/ExportFLAC.cpp:80
msgid "1"
-msgstr ""
+msgstr "1"
-#: export/ExportFLAC.cpp:84
+#: export/ExportFLAC.cpp:81
msgid "2"
-msgstr ""
+msgstr "2"
-#: export/ExportFLAC.cpp:85
+#: export/ExportFLAC.cpp:82
msgid "3"
-msgstr ""
+msgstr "3"
-#: export/ExportFLAC.cpp:86
+#: export/ExportFLAC.cpp:83
msgid "4"
-msgstr ""
+msgstr "4"
-#: export/ExportFLAC.cpp:87
+#: export/ExportFLAC.cpp:84
msgid "5"
-msgstr ""
+msgstr "5"
-#: export/ExportFLAC.cpp:88
+#: export/ExportFLAC.cpp:85
msgid "6"
-msgstr ""
+msgstr "6"
-#: export/ExportFLAC.cpp:89
+#: export/ExportFLAC.cpp:86
msgid "7"
-msgstr ""
+msgstr "7"
-#: export/ExportFLAC.cpp:90
+#: export/ExportFLAC.cpp:87
msgid "8 (best)"
-msgstr ""
+msgstr "8 (najlepšie )"
-#: prefs/FileFormatPrefs.cpp:193
+#: export/ExportFLAC.cpp:90
msgid "16 bit"
-msgstr ""
+msgstr "16 bit"
-#: prefs/FileFormatPrefs.cpp:194
+#: export/ExportFLAC.cpp:91
msgid "24 bit"
-msgstr ""
+msgstr "24 bit"
-#: prefs/FileFormatPrefs.cpp:190
+#: export/ExportFLAC.cpp:95
msgid "FLAC Export Setup"
-msgstr ""
+msgstr "Nastavenie FLAC exportu"
-#: export/ExportFLAC.cpp:102
+#: export/ExportFLAC.cpp:99
msgid "Level:"
-msgstr ""
+msgstr "ÃroveÅ:"
-#: prefs/FileFormatPrefs.cpp:197
+#: export/ExportFLAC.cpp:101
msgid "Bit depth:"
-msgstr ""
+msgstr "Bitová hĺbka:"
-#: export/ExportFLAC.cpp:208
+#: export/ExportFLAC.cpp:207
msgid "FLAC Files"
-msgstr ""
+msgstr "Súbory FLAC"
-#: export/ExportFLAC.cpp:93
+#: export/ExportFLAC.cpp:310
msgid "Exporting the selected audio as FLAC"
-msgstr ""
+msgstr "Vybrané zvukové dáta sa exportujú ako FLAC"
-#: export/ExportFLAC.cpp:94
+#: export/ExportFLAC.cpp:311
msgid "Exporting the entire project as FLAC"
-msgstr ""
+msgstr "Celý projekt sa exportuje ako FLAC"
#: export/ExportMP2.cpp:108
msgid "Specify MP2 Options"
-msgstr ""
+msgstr "Upresniť nastavenie MP2"
-#: prefs/FileFormatPrefs.cpp:204
+#: export/ExportMP2.cpp:127
msgid "MP2 Export Setup"
-msgstr ""
+msgstr "Nastavenie exportu do MP2"
#: export/ExportMP2.cpp:200
msgid "MP2 Files"
-msgstr ""
+msgstr "MP2 Súbor"
-#: export/ExportMP2.cpp:94
+#: export/ExportMP2.cpp:230
msgid "Cannot export MP2 with this sample rate and bit rate"
-msgstr ""
+msgstr "S touto vzorkovacou a bitovou frekvenciou sa nedá exportovaľ MP2"
-#: ../src/export/ExportMP3.cpp:1345
-#: ../src/export/ExportOGG.cpp:53
+#: export/ExportMP2.cpp:241
+#: export/ExportMP3.cpp:1618
+#: export/ExportOGG.cpp:184
msgid "Unable to open target file for writing"
msgstr "Cieľový súbor nie je možné otvoriÅ¥ pre ÄÃtanie"
-#: export/ExportMP2.cpp:144 export/ExportMP3.cpp:1680
+#: export/ExportMP2.cpp:272
#, c-format
msgid "Exporting selected audio at %d kbps"
-msgstr ""
+msgstr "Exportujú sa vybrané zvukové dáta do %d kbps"
-#: export/ExportMP2.cpp:145 export/ExportMP3.cpp:1681
+#: export/ExportMP2.cpp:273
#, c-format
msgid "Exporting entire file at %d kbps"
-msgstr ""
+msgstr "Exportuje sa celý súbor vo vzorkovanà %d kbps"
-#. i18n-hint: kbps is the bitrate of the MP3 file, kilobits per second
-#: export/ExportMP3.cpp:142 export/ExportMP3.cpp:143 export/ExportMP3.cpp:144
-#: export/ExportMP3.cpp:145 export/ExportMP3.cpp:146 export/ExportMP3.cpp:147
-#: export/ExportMP3.cpp:148 export/ExportMP3.cpp:149 export/ExportMP3.cpp:150
-#: export/ExportMP3.cpp:151 export/ExportMP3.cpp:152 export/ExportMP3.cpp:153
-#: export/ExportMP3.cpp:154 export/ExportMP3.cpp:155 export/ExportMP3.cpp:156
-#: export/ExportMP3.cpp:157 export/ExportMP3.cpp:158 export/ExportMP3.cpp:159
+#: export/ExportMP3.cpp:223
+#: export/ExportMP3.cpp:241
+#: export/ExportMP3.cpp:255
msgid "kbps"
-msgstr ""
+msgstr "kbps"
-#: export/ExportMP3.cpp:240
+#: export/ExportMP3.cpp:242
msgid "(Best Quality)"
-msgstr ""
+msgstr "(Najlepšia kvalita)"
-#: export/ExportMP3.cpp:241
+#: export/ExportMP3.cpp:243
msgid "(Smaller files)"
-msgstr ""
+msgstr "(Menšie súbory)"
-#: export/ExportMP3.cpp:178
+#: export/ExportMP3.cpp:245
msgid "Fast"
-msgstr ""
+msgstr "Rýchly"
-#: export/ExportMP3.cpp:179
+#: export/ExportMP3.cpp:246
+#: export/ExportMP3.cpp:252
+#: prefs/GUIPrefs.cpp:41
+#: prefs/GUIPrefs.cpp:49
msgid "Standard"
-msgstr ""
+msgstr "Å tandard"
-#: export/ExportMP3.cpp:248
+#: export/ExportMP3.cpp:250
msgid "Insane"
-msgstr ""
+msgstr "Nezmysel"
-#: export/ExportMP3.cpp:249
+#: export/ExportMP3.cpp:251
msgid "Extreme"
-msgstr ""
+msgstr "Extrémny"
-#: export/ExportMP3.cpp:251
+#: export/ExportMP3.cpp:253
msgid "Medium"
-msgstr ""
+msgstr "Stredný"
-#: export/ExportMP3.cpp:249
+#: export/ExportMP3.cpp:305
msgid "Specify MP3 Options"
-msgstr ""
+msgstr "Upresniť nastavenia MP3"
-#: ../src/prefs/FileFormatPrefs.cpp:172
+#: export/ExportMP3.cpp:319
msgid "MP3 Export Setup"
msgstr "Nastavenie exportu do MP3"
-#: export/ExportMP3.cpp:271
+#: export/ExportMP3.cpp:326
msgid "Bit Rate Mode:"
-msgstr ""
+msgstr "Režim vzorkovania:"
-#: export/ExportMP3.cpp:276
+#: export/ExportMP3.cpp:331
msgid "Preset"
-msgstr ""
+msgstr "Predvoľba"
-#: export/ExportMP3.cpp:277
+#: export/ExportMP3.cpp:332
msgid "Variable"
-msgstr ""
+msgstr "Premenná"
-#: export/ExportMP3.cpp:278
+#: export/ExportMP3.cpp:333
msgid "Average"
-msgstr ""
+msgstr "Priemer"
-#: export/ExportMP3.cpp:279
+#: export/ExportMP3.cpp:334
msgid "Constant"
-msgstr ""
+msgstr "Konštantná"
-#: ../src/prefs/PrefsDialog.cpp:85
+#: export/ExportMP3.cpp:373
+#: prefs/QualityPrefs.cpp:42
+#: prefs/QualityPrefs.cpp:43
msgid "Quality"
msgstr "Kvalita"
-#: export/ExportMP3.cpp:324
+#: export/ExportMP3.cpp:379
msgid "Variable Speed:"
-msgstr ""
+msgstr "Premenlivá rýchlosť:"
-#: export/ExportMP3.cpp:331
+#: export/ExportMP3.cpp:386
msgid "Channel Mode:"
-msgstr ""
+msgstr "Režim kanálu:"
-#: export/ExportMP3.cpp:336
+#: export/ExportMP3.cpp:391
msgid "Joint Stereo"
-msgstr ""
+msgstr "SpoloÄné Stereo"
-#: export/ExportMP3.cpp:337
+#: export/ExportMP3.cpp:392
msgid "Stereo"
-msgstr ""
+msgstr "Stereo"
-#: export/ExportMP3.cpp:481
+#: export/ExportMP3.cpp:536
msgid "Locate Lame"
-msgstr ""
+msgstr "Nájsť Lame"
-#: export/ExportMP3.cpp:501
+#: export/ExportMP3.cpp:556
#, c-format
msgid "Audacity needs the file %s to create MP3s."
-msgstr ""
+msgstr "K ukladaniu vo formáte MP3 Audacity potrebuje súbor %s ."
-#: export/ExportMP3.cpp:523
+#: export/ExportMP3.cpp:578
msgid "To get a free copy of Lame, click here -->"
-msgstr ""
+msgstr "Voľne dostupnú kópiu Lame zÃskate kliknutÃm sem -->"
#: export/ExportMP3.cpp:1070
#, c-format
-msgid "You are linking to lame_enc.dll v%d.%d. This version is not compatible with Audacity %d.%d.%d.\n"
+msgid ""
+"You are linking to lame_enc.dll v%d.%d. This version is not compatible with Audacity %d.%d.%d.\n"
"Please download the latest version of the LAME MP3 library."
msgstr ""
+"Tie sú prepojené s lame_enc.dll v%d.%d. Táto verzia nie je kompatibilná s Audacity %d.%d.%d.\n"
+"ProsÃm, stiahnite si poslednú verziu LAME MP3 knižnice."
-#: ../src/export/ExportMP3.cpp:1116
+#: export/ExportMP3.cpp:1327
msgid "Only lame_enc.dll|lame_enc.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
msgstr "Len lame_enc.dll|lame_enc.dll|Dynamicky linkované knižnice (*.dll)|*.dll|Všetky soubory (*.*)|*"
-#: export/ExportMP3.cpp:536
+#: export/ExportMP3.cpp:1345
msgid "Only libmp3lame.dylib|libmp3lame.dylib|Dynamic Libraries (*.dylib)|*.dylib|All Files (*)|*"
-msgstr ""
+msgstr "Iba libmp3lame.dylib|libmp3lame.dylib|Dynamické knižnice (*.dylib)|*.dylib|All Files (*)|*"
-#: export/ExportMP3.cpp:1567
-#, fuzzy
+#: export/ExportMP3.cpp:1363
msgid "Only libmp3lame.so.0|libmp3lame.so.0|Primary Shared Object files (*.so)|*.so|Extended Libraries (*.so*)|*.so*|All Files (*)|*"
msgstr "Len libmp3lame.so|libmp3lame.so|Súbory primárne zdieľaných objektov (*.so)|*.so|RozÅ¡Ãrené knižnice (*.so*)|*.so*|VÅ¡etky súbory (*)|*"
-#: export/ExportMP3.cpp:1592
+#: export/ExportMP3.cpp:1499
msgid "MP3 Files"
-msgstr ""
+msgstr "MP3 Súbor"
-#: ../src/export/ExportMP3.cpp:1328
+#: export/ExportMP3.cpp:1523
msgid "Could not open MP3 encoding library!"
msgstr "Nie je možné otvoriť knižnicu pre prevod do MP3!"
-#: ../src/export/ExportMP3.cpp:1335
+#: export/ExportMP3.cpp:1530
msgid "Not a valid or supported MP3 encoding library!"
msgstr "Toto nie je správna alebo podporovaná knižnica pre kódovanie do MP3."
-#: export/ExportMP3.cpp:1699
+#: export/ExportMP3.cpp:1607
msgid "Unable to initialize MP3 stream"
-msgstr ""
+msgstr "Nedá sa inicializovať MP3 tok"
-#: export/ExportMP3.cpp:1744
+#: export/ExportMP3.cpp:1650
#, c-format
msgid "Exporting selected audio with %s preset"
-msgstr ""
+msgstr "Exportujú sa vybrané zvukové dáta s predvoľbou %s"
-#: export/ExportMP3.cpp:1745
+#: export/ExportMP3.cpp:1651
#, c-format
msgid "Exporting entire file with %s preset"
-msgstr ""
+msgstr "Exportuje sa celý súbor s predvoľbou %s "
-#: export/ExportMP3.cpp:1750
+#: export/ExportMP3.cpp:1656
#, c-format
msgid "Exporting selected audio with VBR quality %s"
-msgstr ""
+msgstr "Exportujú sa vybrané zvukové dáta v premenlivou kvalitou (VBR) %s"
-#: export/ExportMP3.cpp:1751
+#: export/ExportMP3.cpp:1657
#, c-format
msgid "Exporting entire file with VBR quality %s"
-msgstr ""
+msgstr "Exportuje sa celý súbor v premenlivom vzorkovanà (VBR) %s"
-#: export/ExportMP3.cpp:1756
+#: export/ExportMP3.cpp:1662
#, c-format
msgid "Exporting selected audio at %d Kbps"
-msgstr ""
+msgstr "Exportujú sa vybrané zvukové dáta pri %d Kbps"
-#: export/ExportMP3.cpp:1757
+#: export/ExportMP3.cpp:1663
#, c-format
msgid "Exporting entire file at %d Kbps"
-msgstr ""
+msgstr "Exportuje sa celý súbor vo vzorkovanà %d Kbps"
-#: export/ExportMP3.cpp:1790
+#: export/ExportMP3.cpp:1697
#, c-format
msgid "Error %d returned from MP3 encoder"
-msgstr ""
+msgstr "Chyba %d vrátená z MP3 enkódera"
-#: export/ExportMP3.cpp:1876
+#: export/ExportMP3.cpp:1785
#, c-format
-msgid "The project sample rate (%d) is not supported by the MP3\n"
+msgid ""
+"The project sample rate (%d) is not supported by the MP3\n"
"file format. "
msgstr ""
+"Projekt vzorkovej sady (%d) nie je podporovaným MP3 \n"
+" súborovým formátom. "
-#: export/ExportMP3.cpp:1879
+#: export/ExportMP3.cpp:1788
#, c-format
-msgid "The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
+msgid ""
+"The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
"supported by the MP3 file format. "
msgstr ""
+"Projekt vzorkovej sady (%d) a prenosová rýchlosť (%d kbps) ich kombinácia nie je \n"
+" podporovaných MP3 súborovým formátom."
#: export/ExportMP3.cpp:1965
msgid "MP3 export library not found"
-msgstr ""
+msgstr "Knižnica exportu MP3 nenájdená"
-#: ../src/export/ExportMultiple.cpp:367
-#: ../src/export/ExportMultiple.cpp:474
-#: ../src/export/ExportMultiple.cpp:562
+#: export/ExportMultiple.cpp:93
+#: export/ExportMultiple.cpp:424
+#: export/ExportMultiple.cpp:670
+#: export/ExportMultiple.cpp:847
msgid "Export Multiple"
msgstr "Viacnásobný export"
-#: ../src/export/ExportMultiple.cpp:487
-msgid "If you have more than one Audio Track, you can export each track as a separate file,\n"
+#: export/ExportMultiple.cpp:163
+msgid ""
+"If you have more than one Audio Track, you can export each track as a separate file,\n"
"or if you have a Label Track, you can export a new file for each label.\n"
"\n"
"This project does not have multiple tracks or a Label Track, so you cannot export multiple files."
-msgstr "Pokiaľ máte viac ako jednu zvukovú stopu, môžete exportovať každú do zvláštneho súboru.\n"
-"Pokiaľ máte popisovú stoup, môžete exportovať nový súbor pre každý popis.\n"
+msgstr ""
+"Pokiaľ máte viac ako jednu zvukovú stopu, môžete exportovať každú do samostatného súboru.\n"
+"alebo ak máte popisovú stopu, môžete exportovať nový súbor pre každý popis.\n"
"\n"
"Tento projekt neobsahuje viac stôp, ani popisovú stopu, takže viacnásobný export nie je možné použiť."
-#: ../src/export/ExportMultiple.cpp:493
+#: export/ExportMultiple.cpp:164
msgid "Can't export multiple files"
msgstr "Viacnásobný export nie je možný "
-#: ../src/export/ExportMultiple.cpp:576
+#: export/ExportMultiple.cpp:229
msgid "Export format:"
msgstr "Formát exportu:"
-#: export/ExportMultiple.cpp:195
+#: export/ExportMultiple.cpp:234
msgid "Options..."
-msgstr ""
+msgstr "Možnosti..."
-#: ../src/export/ExportMultiple.cpp:594
+#: export/ExportMultiple.cpp:238
msgid "Export location:"
msgstr "Umiestnenie exportu:"
-#: ../src/export/ExportMultiple.cpp:600
-#: ../src/prefs/DirectoriesPrefs.cpp:82
+#: export/ExportMultiple.cpp:242
+#: prefs/DirectoriesPrefs.cpp:92
msgid "Choose..."
msgstr "Zvoliť..."
-#: export/ExportMultiple.cpp:205
+#: export/ExportMultiple.cpp:243
msgid "Create"
-msgstr ""
+msgstr "Vytvoriť"
-#: ../src/export/ExportMultiple.cpp:612
+#: export/ExportMultiple.cpp:250
msgid "Split files based on:"
msgstr "Rozdeliť súbory na základe:"
-#: ../src/export/ExportMultiple.cpp:615
+#: export/ExportMultiple.cpp:259
+#: export/ExportMultiple.cpp:261
msgid "Labels"
msgstr "Popisy"
-#: ../src/export/ExportMultiple.cpp:623
+#: export/ExportMultiple.cpp:266
msgid "Include audio before first label"
msgstr "Pred prvý popis vložiť zvukový záznam"
-#: ../src/export/ExportMultiple.cpp:629
+#: export/ExportMultiple.cpp:272
msgid "First file name:"
msgstr "Prvé meno súboru:"
-#: export/ExportMultiple.cpp:280
+#: export/ExportMultiple.cpp:277
msgid "First file name"
-msgstr ""
+msgstr "Prvé meno súboru"
-#: ../src/export/ExportMultiple.cpp:636
+#: export/ExportMultiple.cpp:285
+#: export/ExportMultiple.cpp:287
msgid "Tracks"
msgstr "Stopy"
-#: ../src/export/ExportMultiple.cpp:646
+#: export/ExportMultiple.cpp:294
msgid "Name files:"
msgstr "Pomenovať súbory:"
-#: ../src/export/ExportMultiple.cpp:649
-#, fuzzy
+#: export/ExportMultiple.cpp:303
+#: export/ExportMultiple.cpp:305
msgid "Using Label/Track Name"
-msgstr "Použiť popis/meno stopy"
+msgstr "Použi popis/Názov stopy"
-#: ../src/export/ExportMultiple.cpp:655
+#: export/ExportMultiple.cpp:311
+#: export/ExportMultiple.cpp:313
msgid "Numbering consecutively"
msgstr "Postupné ÄÃslovanie"
-#: ../src/export/ExportMultiple.cpp:660
+#: export/ExportMultiple.cpp:319
msgid "File name prefix:"
msgstr "Predpona mena súboru:"
-#: export/ExportMultiple.cpp:327
+#: export/ExportMultiple.cpp:324
msgid "File name prefix"
-msgstr ""
+msgstr "Predpona mena súboru"
-#: ../src/export/ExportMultiple.cpp:677
+#: export/ExportMultiple.cpp:338
msgid "Overwrite existing files"
msgstr "PrepÃsaÅ¥ existujúce súbory"
-#: export/ExportMultiple.cpp:360
+#: export/ExportMultiple.cpp:422
#, c-format
msgid "\"%s\" successfully created."
-msgstr ""
+msgstr "\"%s\" úspešne vytvorené."
-#: ../src/export/ExportMultiple.cpp:766
+#: export/ExportMultiple.cpp:431
msgid "Choose a location to save the exported files"
msgstr "Zvoľte umiestnenie pre exportované súbory"
-#: export/ExportMultiple.cpp:480
+#: export/ExportMultiple.cpp:538
#, c-format
-msgid "\"%s\" doesn't exist.\n"
+msgid ""
+"\"%s\" doesn't exist.\n"
"\n"
"Would you like to create it?"
msgstr ""
+"\"%s\" neexistuje.\n"
+"\n"
+"Chcete ho vytvoriť?"
-#: export/ExportMultiple.cpp:637 export/ExportMultiple.cpp:772
+#: export/ExportMultiple.cpp:640
+#: export/ExportMultiple.cpp:785
msgid "Edit metadata"
-msgstr ""
+msgstr "Upraviť metadata"
-#: export/ExportMultiple.cpp:590
+#: export/ExportMultiple.cpp:667
+#: export/ExportMultiple.cpp:844
#, c-format
msgid "Successfully exported %d file(s)."
-msgstr ""
+msgstr "%d súbor bol úspešne vyexportovaný."
-#: export/ExportMultiple.cpp:597
+#: export/ExportMultiple.cpp:668
+#: export/ExportMultiple.cpp:845
#, c-format
msgid "Something went wrong after exporting %d file(s)."
-msgstr ""
+msgstr "Po exporte %d súboru došlo k chybám."
-#: export/ExportMultiple.cpp:881
+#: export/ExportMultiple.cpp:899
#, c-format
-msgid "Label %s is not a legal file name. You cannot use any of: %s\n"
+msgid ""
+"Label %s is not a legal file name. You cannot use any of: %s\n"
"Use..."
msgstr ""
+"Popis %s nie je právnym názov súboru. Nie je možné použiť niektorý z: %s \n"
+"Použitie ..."
#: export/ExportOGG.cpp:64
msgid "Specify Ogg Vorbis Options"
-msgstr ""
+msgstr "Upresniť nastavenie Ogg Vorbis"
-#: export/ExportOGG.cpp:81
+#: export/ExportOGG.cpp:79
msgid "Ogg Vorbis Export Setup"
-msgstr ""
+msgstr "Nastavenie exportu do Ogg Vorbis"
#: export/ExportOGG.cpp:155
msgid "Ogg Vorbis Files"
-msgstr ""
+msgstr "Ogg Vorbis Súbor"
-#: ../src/export/ExportOGG.cpp:191
+#: export/ExportOGG.cpp:255
msgid "Exporting the selected audio as Ogg Vorbis"
msgstr "Exportujem zvolené audio ako Ogg Vorbis"
-#: ../src/export/ExportOGG.cpp:192
+#: export/ExportOGG.cpp:256
msgid "Exporting the entire project as Ogg Vorbis"
msgstr "Exportujem celý projekt ako Ogg Vorbis"
-#: export/ExportPCM.cpp:116
+#: export/ExportPCM.cpp:119
msgid "Specify Uncompressed Options"
-msgstr ""
+msgstr "Upresniť nastavenie nekomprimovaného formátu"
-#: export/ExportPCM.cpp:171
+#: export/ExportPCM.cpp:189
msgid "Uncompressed Export Setup"
-msgstr ""
+msgstr "Nastavenie nekomprimovaného exportu"
-#: export/ExportPCM.cpp:181
+#: export/ExportPCM.cpp:195
msgid "Header:"
-msgstr ""
+msgstr "HlaviÄka:"
-#: export/ExportPCM.cpp:185
-#, fuzzy
+#: export/ExportPCM.cpp:199
+#: import/ImportRaw.cpp:369
msgid "Encoding:"
-msgstr "Enkódujem:"
+msgstr "Kódovanie:"
-#: export/ExportPCM.cpp:190
-#, fuzzy
+#: export/ExportPCM.cpp:204
msgid "(Not all combinations of headers and encodings are possible.)"
-msgstr "(Nie vÅ¡etky kombinácie hlaviÄiek\n"
-"a kódovania sú možné.)"
+msgstr "(Nie vÅ¡etky kombinácie hlaviÄiek a kódovanà sú možné.)"
-#: export/ExportPCM.cpp:369
+#: export/ExportPCM.cpp:359
msgid "Other uncompressed files"
-msgstr ""
+msgstr "Äaľšie nekomprimované súbory"
-#: export/ExportPCM.cpp:361
+#: export/ExportPCM.cpp:377
msgid "AIFF (Apple) signed 16 bit PCM"
-msgstr ""
+msgstr "AIFF (Apple) oznaÄený 16 bit PCM"
-#: export/ExportPCM.cpp:351
+#: export/ExportPCM.cpp:388
msgid "WAV (Microsoft) signed 16 bit PCM"
-msgstr ""
+msgstr "WAV (Microsoft) oznaÄený 16 bit PCM"
-#: export/ExportPCM.cpp:387
+#: export/ExportPCM.cpp:399
msgid "GSM 6.10 WAV (mobile)"
-msgstr ""
+msgstr "GSM 6.10 WAV (mobile)"
-#: ../src/export/ExportPCM.cpp:73
+#: export/ExportPCM.cpp:476
msgid "Cannot export audio in this format."
msgstr "Audio nie je možné exportovať v tomto formáte."
-#: export/ExportPCM.cpp:400
+#: export/ExportPCM.cpp:518
#, c-format
msgid "Exporting the selected audio as %s"
-msgstr ""
+msgstr "Vybrané zvukové dáta sa exportujú ako %s"
-#: export/ExportPCM.cpp:402
+#: export/ExportPCM.cpp:520
#, c-format
msgid "Exporting the entire project as %s"
-msgstr ""
+msgstr "Celý projekt sa exportuje ako %s"
#. i18n-hint: %s will be the error message from libsndfile
-#: export/ExportPCM.cpp:436
+#: export/ExportPCM.cpp:556
#, c-format
-#, fuzzy
msgid "Error (file may not have been written): %s"
msgstr "Chyba (súbor možno nebol zapÃsaný): %s"
#: export/ExportPCM.cpp:723
msgid "There are no options for this format.\n"
-msgstr ""
+msgstr "Nie sú žiadne možnosti pre tento formát.\n"
#. i18n-hint: This is pointing users at another possible export format in
#. * the list. So you should translate the quoted string
@@ -6812,1248 +7407,1365 @@ msgstr ""
#. * when it comes up on it's own.
#: export/ExportPCM.cpp:728
msgid "If you need more control over the export format please use the 'Other uncompressed files' format."
-msgstr ""
+msgstr "Ak potrebujete väÄÅ¡iu kontrolu nad exportom formátu použite prosÃm 'Ostatné nekomprimované súbory' formátu."
#: export/ExportPCM.cpp:733
msgid "Your file will be exported as a 16-bit AIFF (Apple/SGI) file.\n"
-msgstr ""
+msgstr "Váš súbor bude exportovaný ako 16-bit AIFF (Apple/SGI) súbor.\n"
#: export/ExportPCM.cpp:738
msgid "Your file will be exported as a 16-bit WAV (Microsoft) file.\n"
-msgstr ""
+msgstr "Váš súbor bude exportovaný ako 16-bit WAV (Microsoft) súbor.\n"
#: export/ExportPCM.cpp:743
msgid "Your file will be exported as a GSM 6.10 WAV file.\n"
-msgstr ""
+msgstr "Váš súbor bude exportovaný ako GSM 6.10 WAV súbor.\n"
-#: import/ImportMP3.cpp:78
+#: import/Import.cpp:162
+#: import/ImportMP3.cpp:47
msgid "MP3 files"
-msgstr ""
+msgstr "MP3 Súbor"
-#: import/Import.cpp:175
+#: import/Import.cpp:181
msgid "Select stream(s) to import"
-msgstr ""
+msgstr "Vybrať tok(y) na importovanie"
-#: ../src/import/Import.cpp:159
+#: import/Import.cpp:234
#, c-format
msgid "This version of Audacity was not compiled with %s support."
msgstr "Táto verzia Audacity nebola kompilovaná s podporou %s."
-#: import/Import.cpp:240
+#: import/Import.cpp:247
#, c-format
-msgid "\"%s\" \n"
+msgid ""
+"\"%s\" \n"
"is a MIDI file, not an audio file. \n"
"Audacity cannot open this type of file for playing, but you can\n"
"edit it by clicking File > Import > MIDI."
msgstr ""
+"\"%s\" \n"
+"je MIDI súbor, nie audio súbor. \n"
+"Audacity nedokáže otvoriť tento typ súboru pre prehrávanie, ale môžete \n"
+"ho upraviÅ¥ ale môžete ho aspoÅ zobraziÅ¥, keÄ kliknete na File > Import > MIDI."
#. i18n-hint: %s will be the filename
-#: import/Import.cpp:167
+#: import/Import.cpp:257
#, c-format
-msgid "\"%s\" is an audio CD track. \n"
+msgid ""
+"\"%s\" is an audio CD track. \n"
"Audacity cannot open audio CDs directly. \n"
"Extract (rip) the CD tracks to an audio format that \n"
"Audacity can import, such as WAV or AIFF."
msgstr ""
+"\"%s\" je zvuková stopa CD. \n"
+"Audacity tieto stopy nedokáže priamo otvoriť. \n"
+"PreveÄte (rippnite) CD stopy do niektorého z formátov, \n"
+"ktoré Audacity dokáže importovať. napr: WAV alebo AIFF."
-#: import/Import.cpp:173
+#: import/Import.cpp:263
#, c-format
-msgid "\"%s\" is a playlist file. \n"
+msgid ""
+"\"%s\" is a playlist file. \n"
"Audacity cannot open this file because it only contains links to other files. \n"
"You may be able to open it in a text editor and download the actual audio files."
msgstr ""
+"\"%s\" je zoznam súborov k prehrávaniu (playlist).\n"
+"Audacity tento súbor nemôže otvoriť pretože obsahuje iba odkazy na iné súbory.\n"
+"Dá sa ale otvoriť v textovom editore a jednotlivé súbory stiahnuť."
-#: import/Import.cpp:178
+#: import/Import.cpp:268
#, c-format
-msgid "\"%s\" is a Windows Media Audio file. \n"
+msgid ""
+"\"%s\" is a Windows Media Audio file. \n"
"Audacity cannot open this type of file due to patent restrictions. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
msgstr ""
+"\"%s\" je zvukový súbor Windows Media.\n"
+"Audacity tento typ súboru nevie otvoriť, pre obmedzenie patentom.\n"
+"Treba urobiť konverziu na podporovaný zvukový formát, napr. WAV alebo AIFF."
-#: import/Import.cpp:183
+#: import/Import.cpp:273
#, c-format
-msgid "\"%s\" is an Advanced Audio Coding file. \n"
+msgid ""
+"\"%s\" is an Advanced Audio Coding file. \n"
"Audacity cannot open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
msgstr ""
+"\"%s\" je súbor Advanced Audio Coding.\n"
+"Audacity tento typ súboru nevie otvoriť.\n"
+"Treba urobiť konverziu na podporovaný zvukový formát, napr. WAV alebo AIFF."
-#: import/Import.cpp:271
+#: import/Import.cpp:278
#, c-format
-msgid "\"%s\" is an encrypted audio file. \n"
+msgid ""
+"\"%s\" is an encrypted audio file. \n"
"These typically are from an online music store. \n"
"Audacity cannot open this type of file due to the encryption. \n"
"Try recording the file into Audacity, or burn it to audio CD then \n"
"extract the CD track to a supported audio format such as WAV or AIFF."
msgstr ""
+"\"%s\" je zakódovaný zvukový súbor. \n"
+"Toto je typické z on-line obchodu s hudbou. \n"
+"Kvôli zakódovaniu Audacity nedokáže tento súbor otvoriť. \n"
+"Skúste ho nahrať do Audacity alebo vypáliť na CD a potom \n"
+"extrahovať do niektorého podporovaného audio formátu, ako je WAV alebo AIFF."
-#: import/Import.cpp:193
+#: import/Import.cpp:283
#, c-format
-msgid "\"%s\" is a RealPlayer media file. \n"
+msgid ""
+"\"%s\" is a RealPlayer media file. \n"
"Audacity cannot open this proprietary format. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
msgstr ""
+"\"%s\" je súbor pre RealPlayer .\n"
+"Audacity tento proprietárny typ súboru nevie otvoriť.\n"
+"Treba urobiť konverziu na podporovaný zvukový formát, napr. WAV alebo AIFF."
-#: import/Import.cpp:282
+#: import/Import.cpp:289
#, c-format
-msgid "\"%s\" is a notes-based file, not an audio file. \n"
+msgid ""
+"\"%s\" is a notes-based file, not an audio file. \n"
"Audacity cannot open this type of file. \n"
"Try converting it to an audio file such as WAV or AIFF and \n"
"then import it, or record it into Audacity."
msgstr ""
+"\"%s\" je súbor obsahujúci noty, nie audio súbor. \n"
+"Audacity tento typ súboru nevie otvoriť. \n"
+"Skúste ho previesť do zvukového formátu napr. WAV alebo AIFF \n"
+"a potom importovať alebo nahrať do Audacity."
-#: import/Import.cpp:288
+#: import/Import.cpp:295
#, c-format
-msgid "\"%s\" is a Musepack audio file. \n"
+msgid ""
+"\"%s\" is a Musepack audio file. \n"
"Audacity cannot open this type of file. \n"
"If you think it might be an mp3 file, rename it to end with \".mp3\" \n"
"and try importing it again. Otherwise you need to convert it to a supported audio \n"
"format, such as WAV or AIFF."
msgstr ""
+"\"%s\" je zvukový súbor Musepack. \n"
+"Audacity tento typ súboru nevie otvoriť.\n"
+"Ak si myslite, že ide o mp3 súbor, zmente jeho prÃponu na \".mp3\" \n"
+"a pokúste sa ho importovaÅ¥ znovu. V prÃpade neúspechu musÃte urobiÅ¥ prevod \n"
+"na podporovaný formát, napr. WAV nebo AIFF."
-#: import/Import.cpp:294
+#: import/Import.cpp:301
#, c-format
-msgid "\"%s\" is a Wavpack audio file. \n"
+msgid ""
+"\"%s\" is a Wavpack audio file. \n"
"Audacity cannot open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
msgstr ""
+"\"%s\" je zvukový súbor Wavpack.\n"
+"Audacity tento typ súboru nevie otvoriť.\n"
+"Treba urobiť konverziu na podporovaný zvukový formát, napr. WAV alebo AIFF."
-#: import/Import.cpp:300
+#: import/Import.cpp:307
#, c-format
-msgid "\"%s\" is a Dolby Digital audio file. \n"
+msgid ""
+"\"%s\" is a Dolby Digital audio file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
msgstr ""
+"\"%s\" je zvukový súbor Dolby Digital.\n"
+"Audacity tento typ súboru v súÄasnej dobe nevie otvoriÅ¥.\n"
+"Treba urobiť konverziu na podporovaný zvukový formát, napr. WAV alebo AIFF."
-#: import/Import.cpp:306
+#: import/Import.cpp:313
#, c-format
-msgid "\"%s\" is an Ogg Speex audio file. \n"
+msgid ""
+"\"%s\" is an Ogg Speex audio file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
msgstr ""
+"\"%s\" je zvukový súbor Ogg Speex. \n"
+"Audacity tento typ súboru v súÄasnej dobe nevie otvoriÅ¥.\n"
+"Treba urobiť konverziu na podporovaný zvukový formát, napr. WAV alebo AIFF."
-#: import/Import.cpp:312
+#: import/Import.cpp:319
#, c-format
-msgid "\"%s\" is a video file. \n"
+msgid ""
+"\"%s\" is a video file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to extract the audio to a supported format, such as WAV or AIFF."
msgstr ""
+"\"%s\" je video súbor. \n"
+"Audacity tento typ súboru v súÄasnej dobe nevie otvoriÅ¥. \n"
+"MusÃte extrahovaÅ¥ audio do podporovaného formátu, ako WAV alebo AIFF."
-#: import/Import.cpp:317
+#: import/Import.cpp:324
#, c-format
-msgid "Audacity did not recognize the type of the file '%s'.\n"
+msgid ""
+"Audacity did not recognize the type of the file '%s'.\n"
"If it is uncompressed, try importing it using \"Import Raw\"."
msgstr ""
+"Audacity nerozpoznal typ súboru '%s'.\n"
+"Ak je nekomprimovaný, skúste ho imporovaÅ¥ použitÃm \"Import Raw\"."
-#: import/Import.cpp:322
+#: import/Import.cpp:329
#, c-format
-msgid "Audacity recognized the type of the file '%s',\n"
+msgid ""
+"Audacity recognized the type of the file '%s',\n"
"but was unable to import it."
msgstr ""
+"Audacity rozpoznal typ súboru '%s',\n"
+"ale nie je schopný importovať ho."
#: import/ImportFFmpeg.cpp:34
msgid "FFmpeg-compatible files"
-msgstr ""
+msgstr "FFmpeg-kompatibilné súbory"
-#: import/ImportFFmpeg.cpp:431
+#: import/ImportFFmpeg.cpp:438
#, c-format
msgid "Index[%02x] Codec[%S], Language[%S], Bitrate[%S], Channels[%d], Duration[%d]"
-msgstr ""
+msgstr "Index[%02x] Kodek[%S], Jazyk[%S], Bitová rýchlosť[%S], Kanále[%d], Dĺžka[%d]"
-#: import/ImportFLAC.cpp:35
+#: import/ImportFLAC.cpp:43
msgid "FLAC files"
-msgstr ""
+msgstr "FLAC súbor"
-#: ../src/import/ImportLOF.cpp:151
-#: ../src/import/ImportLOF.cpp:177
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr "GStreamer-kompatibilné súbory"
+
+#: import/ImportLOF.cpp:95
msgid "List of Files in basic text format"
msgstr "Zoznam súborov jednoduchého textu"
-# i18n-hint: You do not need to translate "LOF"
#. i18n-hint: You do not need to translate "LOF"
-#: ../src/import/ImportLOF.cpp:268
+#: import/ImportLOF.cpp:314
msgid "Invalid window offset in LOF file."
msgstr "Chybná pozÃcia okna v LOF súbore."
#. i18n-hint: You do not need to translate "LOF"
-#: ../src/import/ImportLOF.cpp:270
-#: ../src/import/ImportLOF.cpp:291
-#: ../src/import/ImportLOF.cpp:364
-#: ../src/import/ImportLOF.cpp:384
+#: import/ImportLOF.cpp:316
+#: import/ImportLOF.cpp:337
+#: import/ImportLOF.cpp:418
+#: import/ImportLOF.cpp:439
msgid "LOF Error"
msgstr "LOF chyba"
#. i18n-hint: You do not need to translate "LOF"
-#: ../src/import/ImportLOF.cpp:289
+#: import/ImportLOF.cpp:335
msgid "Invalid duration in LOF file."
msgstr "Chybná dĺžka LOF súboru."
-#: import/ImportLOF.cpp:407
-#, fuzzy
+#: import/ImportLOF.cpp:417
msgid "MIDI tracks cannot be offset individually, only audio files can be."
-msgstr "MIDI stopy nemôžu byť posunuté zvlášť, len zvukové súbory."
+msgstr "MIDI stopy nemôžu byť posunuté individuálne, môžeme to urobiť iba u zvukových súborov."
-# i18n-hint: You do not need to translate "LOF"
#. i18n-hint: You do not need to translate "LOF"
-#: ../src/import/ImportLOF.cpp:383
+#: import/ImportLOF.cpp:438
msgid "Invalid track offset in LOF file."
-msgstr "Chybná pozÃcia stopy v LOF súbore."
+msgstr "Chybná posunutie stopy v LOF súbore."
#: import/ImportMIDI.cpp:31
msgid ": Filename too short."
-msgstr ""
+msgstr ": Meno súboru prÃliÅ¡ krátke."
-#: import/ImportMIDI.cpp:31 import/ImportMIDI.cpp:39 import/ImportMIDI.cpp:45
+#: import/ImportMIDI.cpp:31
+#: import/ImportMIDI.cpp:39
+#: import/ImportMIDI.cpp:45
#: import/ImportMIDI.cpp:53
msgid "Could not open file "
-msgstr ""
+msgstr "Nie je možné otvoriť súbor"
#: import/ImportMIDI.cpp:39
msgid ": Incorrect filetype."
-msgstr ""
+msgstr ": Nesprávny formát súboru."
-#: import/ImportOGG.cpp:35
+#: import/ImportOGG.cpp:44
msgid "Ogg Vorbis files"
-msgstr ""
+msgstr "Ogg Vorbis súbor"
-#: ../src/import/ImportOGG.cpp:124
+#: import/ImportOGG.cpp:184
msgid "Media read error"
msgstr "Chyba pri ÄÃtanà média"
-#: ../src/import/ImportOGG.cpp:127
+#: import/ImportOGG.cpp:187
msgid "Not an Ogg Vorbis file"
msgstr "Toto nie je súbor Ogg Vorgis"
-#: ../src/import/ImportOGG.cpp:130
+#: import/ImportOGG.cpp:190
msgid "Vorbis version mismatch"
msgstr "Zmätok vo verzii Vorbisu"
-#: ../src/import/ImportOGG.cpp:133
+#: import/ImportOGG.cpp:193
msgid "Invalid Vorbis bitstream header"
msgstr "Chybná hlaviÄka dátového toku Vorbis"
-#: ../src/import/ImportOGG.cpp:136
+#: import/ImportOGG.cpp:196
msgid "Internal logic fault"
msgstr "Vnútorná logická chyba"
-#: export/ExportPCM.cpp:320 import/ImportPCM.cpp:47
+#: import/ImportPCM.cpp:66
msgid "WAV, AIFF, and other uncompressed types"
-msgstr ""
+msgstr "WAV, AIFF, a Äaľšie nekomprimované typy"
-#: import/ImportPlugin.h:142 import/ImportRaw.cpp:203
+#: import/ImportPlugin.h:135
+#: import/ImportRaw.cpp:203
#, c-format
msgid "Importing %s"
-msgstr ""
+msgstr "Importovanie %s"
-#: import/ImportQT.cpp:21
+#: import/ImportQT.cpp:18
msgid "QuickTime files"
-msgstr ""
+msgstr "QuickTime súbor"
#: import/ImportRaw.cpp:205
msgid "Import Raw"
-msgstr ""
+msgstr "Importovať Raw "
-#: ../src/import/ImportRaw.cpp:256
+#: import/ImportRaw.cpp:285
msgid "Import Raw Data"
msgstr "Importovať Raw data"
-# i18n-hint: Refers to byte-order. Don't translate "endianness" if you don't
-# know the correct technical word.
#. i18n-hint: Refers to byte-order. Don't translate "endianness" if you don't
-#: ../src/import/ImportRaw.cpp:299
+#. know the correct technical word.
+#: import/ImportRaw.cpp:330
msgid "No endianness"
-msgstr "Bez endianness"
+msgstr "No endianness"
#. i18n-hint: Refers to byte-order. Don't translate this if you don't
-#: ../src/import/ImportRaw.cpp:302
+#. know the correct technical word.
+#: import/ImportRaw.cpp:333
msgid "Little-endian"
msgstr "Little-endian"
-# i18n-hint: Refers to byte-order. Don't translate this if you don't
-# know the correct technical word.
#. i18n-hint: Refers to byte-order. Don't translate this if you don't
-#: ../src/import/ImportRaw.cpp:305
+#. know the correct technical word.
+#: import/ImportRaw.cpp:336
msgid "Big-endian"
msgstr "Big-endian"
-# i18n-hint: Refers to byte-order. Don't translate "endianness" if you don't
-# know the correct technical word.
#. i18n-hint: Refers to byte-order. Don't translate "endianness" if you don't
-#: ../src/import/ImportRaw.cpp:308
+#. know the correct technical word.
+#: import/ImportRaw.cpp:339
msgid "Default endianness"
-msgstr "Štandardná endianness"
+msgstr "Default endianness"
-#: ../src/import/ImportRaw.cpp:332
+#: import/ImportRaw.cpp:358
msgid "1 Channel (Mono)"
msgstr "1 kanál (Mono)"
-#: ../src/import/ImportRaw.cpp:333
+#: import/ImportRaw.cpp:359
msgid "2 Channels (Stereo)"
msgstr "2 kanály (Stereo)"
-#: ../src/import/ImportRaw.cpp:335
+#: import/ImportRaw.cpp:361
#, c-format
msgid "%d Channels"
msgstr "%d kanálov"
-#: import/ImportRaw.cpp:369
+#: import/ImportRaw.cpp:372
msgid "Byte order:"
-msgstr ""
+msgstr "Poradie bytov:"
-#: import/ImportRaw.cpp:372
+#: import/ImportRaw.cpp:375
msgid "Channels:"
-msgstr ""
+msgstr "Kanály:"
-#: ../src/import/ImportRaw.cpp:348
+#: import/ImportRaw.cpp:385
msgid "Start offset:"
msgstr "PoÄiatoÄný posun:"
-#: ../src/import/ImportRaw.cpp:359
+#: import/ImportRaw.cpp:391
msgid "Amount to import:"
msgstr "Rozsah k naÄÃtaniu:"
-#: ../src/import/ImportRaw.cpp:370
+#: import/ImportRaw.cpp:397
msgid "Sample rate:"
msgstr "Rýchlosť vzorkovania:"
#: ondemand/ODComputeSummaryTask.h:47
msgid "Import complete. Calculating waveform"
-msgstr ""
+msgstr "Import dokonÄený. PrepoÄÃtava sa krivka"
#: ondemand/ODDecodeTask.h:61
msgid "Decoding Waveform"
-msgstr ""
+msgstr "Dekódovanie krivky "
#: ondemand/ODWaveTrackTaskQueue.cpp:327
#, c-format
msgid "%s %2.0f%% complete. Click to change task focal point."
-msgstr ""
+msgstr "%s %2.0f%% kompletné. Kliknite pre zmenu úlohy záchytného bodu."
-#: ../src/prefs/PrefsDialog.cpp:84
+#: prefs/AudioIOPrefs.cpp:42
+#: prefs/AudioIOPrefs.cpp:43
+#: prefs/MidiIOPrefs.cpp:44
+#: prefs/MidiIOPrefs.cpp:45
msgid "Audio I/O"
msgstr "Audio vstup/výstup (I/O)"
-#: ../src/prefs/AudioIOPrefs.cpp:212
+#: prefs/AudioIOPrefs.cpp:104
+#: prefs/MidiIOPrefs.cpp:99
msgid "1 (Mono)"
msgstr "1 (Mono)"
-#: ../src/prefs/AudioIOPrefs.cpp:213
+#: prefs/AudioIOPrefs.cpp:105
+#: prefs/MidiIOPrefs.cpp:100
msgid "2 (Stereo)"
msgstr "2 (Stereo)"
-#: ../src/prefs/AudioIOPrefs.cpp:80
+#: prefs/AudioIOPrefs.cpp:119
+#: prefs/MidiIOPrefs.cpp:114
msgid "Playback"
msgstr "Prehrávanie"
-#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
-#: toolbars/DeviceToolBar.cpp:54
+#: prefs/AudioIOPrefs.cpp:123
+#: prefs/AudioIOPrefs.cpp:141
+#: prefs/MidiIOPrefs.cpp:118
+#: prefs/MidiIOPrefs.cpp:136
+#: toolbars/DeviceToolBar.cpp:57
msgid "Device"
-msgstr ""
+msgstr "Zariadenie"
-#: prefs/AudioIOPrefs.cpp:122
+#: prefs/AudioIOPrefs.cpp:126
+#: prefs/MidiIOPrefs.cpp:121
msgid "Using:"
-msgstr ""
+msgstr "PoužÃva:"
-#: prefs/AudioIOPrefs.cpp:123
+#: prefs/AudioIOPrefs.cpp:127
+#: prefs/MidiIOPrefs.cpp:122
msgid "Portaudio v"
-msgstr ""
+msgstr "Audio port v"
-#: ../src/prefs/AudioIOPrefs.cpp:148
+#: prefs/AudioIOPrefs.cpp:137
+#: prefs/MidiIOPrefs.cpp:132
msgid "Recording"
msgstr "Nahrávanie"
-#: prefs/AudioIOPrefs.cpp:139
+#: prefs/AudioIOPrefs.cpp:143
+#: prefs/MidiIOPrefs.cpp:138
msgid "Channels"
-msgstr ""
+msgstr "Kanál"
-#: prefs/AudioIOPrefs.cpp:145
+#: prefs/AudioIOPrefs.cpp:149
+#: prefs/MidiIOPrefs.cpp:144
msgid "Playthrough"
-msgstr ""
+msgstr "Prehrávanie cez"
-#: prefs/AudioIOPrefs.cpp:149
+#: prefs/AudioIOPrefs.cpp:151
msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
+msgstr "Overdub: Popri nahrávanà novej stopy &prehrávať ostatné"
-#: prefs/AudioIOPrefs.cpp:150
+#: prefs/AudioIOPrefs.cpp:154
msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr ""
+msgstr "&Hardware Playthrough:Popri nahrávanà novej stopy ju zároveŠprehrávať"
-#: prefs/AudioIOPrefs.cpp:152
+#: prefs/AudioIOPrefs.cpp:156
msgid "&Software Playthrough: Play new track while recording it"
-msgstr ""
+msgstr "&Software Playthrough:Popri nahrávanà novej stopy ju zároveŠprehrávať"
-#: prefs/AudioIOPrefs.cpp:157
+#: prefs/AudioIOPrefs.cpp:159
msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
+msgstr "&Software Playthrough: Prehrávať novú stopu pokiaľ nahrávame alebo monitorujeme"
-#: prefs/AudioIOPrefs.cpp:160
+#: prefs/AudioIOPrefs.cpp:162
msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
+msgstr "(nepotvrdzovať pri nahrávanà \"stereo mixu \")"
-#: prefs/AudioIOPrefs.cpp:194
+#: prefs/AudioIOPrefs.cpp:170
+#: prefs/MidiIOPrefs.cpp:193
msgid "Effects Preview"
-msgstr ""
+msgstr "Skúšky efektov"
-#: prefs/AudioIOPrefs.cpp:165
+#: prefs/AudioIOPrefs.cpp:173
msgid "Length of preview:"
-msgstr ""
+msgstr "Dĺžka skúšky:"
-#: prefs/AudioIOPrefs.cpp:158
+#: prefs/AudioIOPrefs.cpp:178
+#: prefs/MidiIOPrefs.cpp:157
msgid "Cut Preview"
-msgstr ""
+msgstr "Oddeliť skúšku"
-#: prefs/AudioIOPrefs.cpp:173
+#: prefs/AudioIOPrefs.cpp:181
msgid "Preview before cut region:"
-msgstr ""
+msgstr "ZobraziÅ¥ pred oddelenÃm okruhu:"
-#: prefs/AudioIOPrefs.cpp:175
+#: prefs/AudioIOPrefs.cpp:183
msgid "Preview after cut region:"
-msgstr ""
+msgstr "Zobraziť po oddelenà okruhu:"
-#: prefs/AudioIOPrefs.cpp:168
+#: prefs/AudioIOPrefs.cpp:191
+#: prefs/MidiIOPrefs.cpp:167
msgid "Latency"
-msgstr ""
+msgstr "Latencia"
-#: prefs/AudioIOPrefs.cpp:195
-msgid "Audio to buffer:\n"
+#: prefs/AudioIOPrefs.cpp:197
+msgid ""
+"Audio to buffer:\n"
"(higher = more latency)"
msgstr ""
+"Vyrovnávacia pamäť:\n"
+"(vyššia = väÄÅ¡ia latencia)"
-#: prefs/AudioIOPrefs.cpp:198
-msgid "Latency correction:\n"
+#: prefs/AudioIOPrefs.cpp:201
+msgid ""
+"Latency correction:\n"
"(negative = backwards)"
msgstr ""
+"Ãprava latencie:\n"
+"(záporna = naspäť)"
-#: prefs/AudioIOPrefs.cpp:197
+#: prefs/AudioIOPrefs.cpp:207
msgid "Seek Time when playing"
-msgstr ""
+msgstr "HľadaÅ¥ Äas na prehrávanie"
-#: prefs/AudioIOPrefs.cpp:187
+#: prefs/AudioIOPrefs.cpp:210
+#: prefs/MidiIOPrefs.cpp:186
msgid "Short period:"
-msgstr ""
+msgstr "Krátka perioda:"
-#: prefs/AudioIOPrefs.cpp:189
+#: prefs/AudioIOPrefs.cpp:212
+#: prefs/MidiIOPrefs.cpp:188
msgid "Long period:"
-msgstr ""
+msgstr "Dlhá perioda:"
-#: prefs/BatchPrefs.cpp:53 prefs/BatchPrefs.cpp:54
+#: prefs/AudioIOPrefs.cpp:253
+msgid "Playback and Recording device must use the same type, i.e., MME, DirectSound, etc."
+msgstr "Prehrávacie a nahrávacie zariadenie musà použÃvaÅ¥ rovnaký typ, tj., MME, DirectSound, atÄ."
+
+#: prefs/BatchPrefs.cpp:55
+#: prefs/BatchPrefs.cpp:56
msgid "Batch"
-msgstr ""
+msgstr "Dávka"
-#: prefs/BatchPrefs.cpp:75 prefs/GUIPrefs.cpp:70
+#: prefs/BatchPrefs.cpp:77
+#: prefs/GUIPrefs.cpp:92
msgid "Behaviors"
-msgstr ""
+msgstr "Správanie"
#: prefs/BatchPrefs.cpp:80
msgid "&Don't apply effects in batch mode"
-msgstr ""
+msgstr "&Neaplikovať efekty v dávkovom režime"
#: prefs/BatchPrefs.cpp:83
+#: prefs/GUIPrefs.cpp:132
msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr ""
+msgstr "Režim Cl&eanSpeech (Uživateľské rozhranie)"
-#: ../src/prefs/PrefsDialog.cpp:88
-#: ../src/prefs/PrefsDialog.cpp:216
+#: prefs/DirectoriesPrefs.cpp:55
+#: prefs/DirectoriesPrefs.cpp:56
+#: prefs/PrefsDialog.cpp:267
msgid "Directories"
msgstr "Adresáre"
#: prefs/DirectoriesPrefs.cpp:87
msgid "Temporary files directory"
-msgstr ""
+msgstr "Adresár doÄasných súborov"
-#: ../src/prefs/DirectoriesPrefs.cpp:57
+#: prefs/DirectoriesPrefs.cpp:91
msgid "Location:"
msgstr "Umiestnenie:"
-#: ../src/prefs/DirectoriesPrefs.cpp:78
+#: prefs/DirectoriesPrefs.cpp:93
msgid "Free Space:"
msgstr "Voľné miesto:"
#: prefs/DirectoriesPrefs.cpp:99
msgid "Auto save"
-msgstr ""
+msgstr "Automatické ukladanie"
#: prefs/DirectoriesPrefs.cpp:101
msgid "Auto save a copy of the project in a separate folder"
-msgstr ""
+msgstr "Automatické ukladanie kópie projektu v samostatnej zložke"
#: prefs/DirectoriesPrefs.cpp:104
msgid "Auto save interval:"
-msgstr ""
+msgstr "Interval automatického ukladania:"
#: prefs/DirectoriesPrefs.cpp:105
msgid "minutes"
-msgstr ""
+msgstr "minúty"
#: prefs/DirectoriesPrefs.cpp:110
msgid "Audio cache"
-msgstr ""
+msgstr "Zvuková vyrovnávacia pamäť"
#: prefs/DirectoriesPrefs.cpp:112
msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
-msgstr ""
+msgstr "PrehraÅ¥ a/alebo nahrávaÅ¥ pomocou RAM (užitoÄné pre pomalé disky, ale mohlo by padnúť s dlhými súbormi alebo záznamamy na nosiÄoch)"
-#: ../src/prefs/DirectoriesPrefs.cpp:135
+#: prefs/DirectoriesPrefs.cpp:121
msgid "Choose a location to place the temporary directory"
msgstr "Zvoľte umiestnenie pre doÄasný adresár"
-#: ../src/prefs/DirectoriesPrefs.cpp:181
+#: prefs/DirectoriesPrefs.cpp:166
#, c-format
msgid "Directory %s does not exist. Create it?"
msgstr "Adresár %s neexistuje. Vytvoriť?"
-#: ../src/prefs/DirectoriesPrefs.cpp:183
+#: prefs/DirectoriesPrefs.cpp:168
msgid "New Temporary Directory"
msgstr "Nový doÄasný adresár"
-#: ../src/prefs/DirectoriesPrefs.cpp:202
+#: prefs/DirectoriesPrefs.cpp:187
#, c-format
msgid "Directory %s is not writable"
msgstr "Do adresára %s nie je možné zapisovať"
-#: ../src/prefs/DirectoriesPrefs.cpp:214
+#: prefs/DirectoriesPrefs.cpp:199
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "Zmena doÄasného adresára sa prejavà až po reÅ¡tarte Audacity."
-#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
+#: prefs/FileFormatPrefs.cpp:53
+#: prefs/FileFormatPrefs.cpp:54
msgid "Import / Export"
-msgstr ""
+msgstr "Import / Export"
#: prefs/FileFormatPrefs.cpp:84
msgid "MP3 Export Library"
-msgstr ""
+msgstr "MP3 výstupné knižnice"
-#: ../src/prefs/FileFormatPrefs.cpp:180
+#: prefs/FileFormatPrefs.cpp:87
msgid "MP3 Library Version:"
msgstr "Verzia MP3 knižnice:"
#: prefs/FileFormatPrefs.cpp:93
msgid "MP3 Library:"
-msgstr ""
+msgstr "MP3 knižnice:"
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+#: prefs/FileFormatPrefs.cpp:96
+#: prefs/FileFormatPrefs.cpp:120
msgid "&Locate..."
-msgstr ""
+msgstr "&Hľadať..."
#: prefs/FileFormatPrefs.cpp:98
msgid "LAME MP3 Library:"
-msgstr ""
+msgstr "Knižnica LAME MP3:"
-#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
+#: prefs/FileFormatPrefs.cpp:101
+#: prefs/FileFormatPrefs.cpp:125
msgid "&Download"
-msgstr ""
+msgstr "&Stiahnuť"
#: prefs/FileFormatPrefs.cpp:106
msgid "FFmpeg Import/Export Library"
-msgstr ""
+msgstr "Import/Export FFmpeg knižnice"
#: prefs/FileFormatPrefs.cpp:109
msgid "FFmpeg Library Version:"
-msgstr ""
+msgstr "Verzia FFmpeg knižnice:"
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
+#: prefs/FileFormatPrefs.cpp:118
+#: prefs/FileFormatPrefs.cpp:122
msgid "FFmpeg Library:"
-msgstr ""
+msgstr "FFmpeg knižnica:"
#: prefs/FileFormatPrefs.cpp:136
msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr ""
+msgstr "Poznámka: Nastavenia kvality exportu si možeme vybraÅ¥ kliknutÃm na tlaÄidlo Možnosti v dialógovom okne Export.\n"
#: prefs/FileFormatPrefs.cpp:137
msgid "When importing audio files"
-msgstr ""
+msgstr "Pri importovanà audio súboru"
#: prefs/FileFormatPrefs.cpp:140
msgid "&Make a copy of uncompressed audio files before editing (safer)"
-msgstr ""
+msgstr "Pred editáciou v&ytvoriÅ¥ kópiu nekomprimovaného súboru (bezpeÄnejÅ¡ie)"
#: prefs/FileFormatPrefs.cpp:141
msgid "&Read uncompressed audio files directly from the original (faster)"
-msgstr ""
+msgstr "&ÄÃtaÅ¥ nekomprimovaný audio súbor priamo z pôvodného súboru (rýchlejÅ¡ie)"
#: prefs/FileFormatPrefs.cpp:143
msgid "&Normalize all tracks in project"
-msgstr ""
+msgstr "&Normalizovať všetky stopy v projekte"
-#: prefs/FileFormatPrefs.cpp:132
+#: prefs/FileFormatPrefs.cpp:148
msgid "When saving a project that depends on other audio files"
-msgstr ""
+msgstr "Pri ukladanà projektu, ktorý závisà na ÄaľšÃch zvukových súboroch"
-#: prefs/FileFormatPrefs.cpp:87
+#: prefs/FileFormatPrefs.cpp:151
msgid "Always © all audio into project (safest)"
-msgstr ""
+msgstr "Vždy &kopÃrovaÅ¥ vÅ¡etky zvukové dáta do projektu (nejbezpeÄnejÅ¡ie)"
-#: prefs/FileFormatPrefs.cpp:88
+#: prefs/FileFormatPrefs.cpp:152
msgid "&Do not copy any audio"
-msgstr ""
+msgstr "&NekopÃrovaÅ¥ žiadne zvukové dáta"
-#: prefs/FileFormatPrefs.cpp:135
+#: prefs/FileFormatPrefs.cpp:153
msgid "&Ask user"
-msgstr ""
+msgstr "OpýtaÅ¥ sa užÃvateľa"
-#: prefs/FileFormatPrefs.cpp:93
+#: prefs/FileFormatPrefs.cpp:157
msgid "When exporting tracks to an audio file"
-msgstr ""
+msgstr "Pri exportovanà stôp do audio súboru"
-#: prefs/FileFormatPrefs.cpp:144
+#: prefs/FileFormatPrefs.cpp:160
msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
-msgstr ""
+msgstr "&Vždy miešať stopy do stereo alebo mono kanálu(ov)."
-#: prefs/FileFormatPrefs.cpp:97
+#: prefs/FileFormatPrefs.cpp:161
msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
-msgstr ""
+msgstr "Po&užiÅ¥ uživateľský mix (naprÃklad export do multikanálového súboru 5.1)"
-#: prefs/BatchPrefs.cpp:91
+#: prefs/FileFormatPrefs.cpp:163
msgid "S&how Metadata Editor prior to export step"
-msgstr ""
+msgstr "Pred prevedenÃm exportu zob&raziÅ¥ editor metadat "
-#: ../src/prefs/PrefsDialog.cpp:89
+#: prefs/GUIPrefs.cpp:34
+#: prefs/GUIPrefs.cpp:35
msgid "Interface"
msgstr "Rozhranie (Interface)"
#: prefs/GUIPrefs.cpp:42
msgid "In Browser"
-msgstr ""
+msgstr "V prehliadaÄi"
#: prefs/GUIPrefs.cpp:43
msgid "From Internet"
-msgstr ""
+msgstr "Z internetu"
#: prefs/GUIPrefs.cpp:50
msgid "Simple"
-msgstr ""
+msgstr "Jednoduchý"
-#: prefs/GUIPrefs.cpp:72
+#: prefs/GUIPrefs.cpp:94
msgid "&Update display while playing"
-msgstr ""
+msgstr "&Pri prehrávanà obnovovať zobrazenie"
#: prefs/GUIPrefs.cpp:96
msgid "Cl&osing last window quits Audacity"
-msgstr ""
+msgstr "Zatv&orenÃm posledného okna ukonÄiÅ¥ Audacity"
-#: prefs/GUIPrefs.cpp:76
+#: prefs/GUIPrefs.cpp:98
msgid "Enable &dragging of left and right selection edges"
-msgstr ""
+msgstr "&Povoliť preťahovanie ľavej a pravej hranice výberu"
#: prefs/GUIPrefs.cpp:100
msgid "Er&gonomic order of audio I/O buttons"
-msgstr ""
+msgstr "Er&gonomické usporiadanie tlaÄidiel zvukového vstupu a výstupu"
-#: prefs/GUIPrefs.cpp:80
+#: prefs/GUIPrefs.cpp:102
msgid "Automatically &fit tracks vertically zoomed"
-msgstr ""
+msgstr "Automaticky pri&spôsobovaÅ¥ stopy zvislému zväÄÅ¡eniu"
#: prefs/GUIPrefs.cpp:104
msgid "\"Move track focus\" c&ycles repeatedly through tracks"
-msgstr ""
+msgstr "\"Presunúť zameranie skladby\" v c&ykloch opakovať cez stopy"
-#: prefs/GUIPrefs.cpp:90
+#: prefs/GUIPrefs.cpp:106
msgid "Editing a &clip can move other clips"
-msgstr ""
+msgstr "Ãprava &klipu môže spôsobiÅ¥ posunutie iného klipu"
-#: prefs/GUIPrefs.cpp:88
+#: prefs/GUIPrefs.cpp:108
msgid "&Select all audio in project, if none selected"
-msgstr ""
+msgstr "Ak nie je vybraný žiadny projekt, &vybrať všetky"
-#: prefs/GUIPrefs.cpp:90
+#: prefs/GUIPrefs.cpp:110
msgid "&Beep on completion of longer activities"
-msgstr ""
+msgstr "SkonÄenie dlhotrvajúcej operácie oznámiÅ¥ &pipnutÃm"
-#: prefs/BatchPrefs.cpp:87 prefs/GUIPrefs.cpp:94
+#: prefs/GUIPrefs.cpp:114
msgid "Show / Hide"
-msgstr ""
+msgstr "Zobraziť / Skryť"
-#: prefs/GUIPrefs.cpp:96
+#: prefs/GUIPrefs.cpp:116
msgid "Enable cut &lines"
-msgstr ""
+msgstr "Povoľte rezané &lÃnie"
-#: prefs/GUIPrefs.cpp:98
+#: prefs/GUIPrefs.cpp:118
msgid "Show warnings about &temp files"
-msgstr ""
+msgstr "ZobrazovaÅ¥ varovanie týkajúce sa doÄasných súborov"
#: prefs/GUIPrefs.cpp:120
msgid "Show prompt to sa&ve, even if project is empty"
-msgstr ""
+msgstr "ZobraziÅ¥ výz&vu na uloženie aj keÄ je projekt prázdny"
#: prefs/GUIPrefs.cpp:122
msgid "Show &Welcome Message at program start up"
-msgstr ""
+msgstr "ZobraziÅ¥ u&vÃtaciu správu pri Å¡tarte programu"
#: prefs/GUIPrefs.cpp:126
msgid "Modes"
-msgstr ""
+msgstr "Režimy"
#: prefs/GUIPrefs.cpp:129
msgid "Don't a&pply effects in batch mode"
-msgstr ""
+msgstr "Nea&plikovať efekty v dávkovom režime"
#: prefs/GUIPrefs.cpp:138
msgid "Display range minimum: meters and 'Waveform (dB)'"
-msgstr ""
+msgstr "Zobraz v rozsahu minimálne: metrov a 'Krivka(dB)'"
-#: ../src/prefs/GUIPrefs.cpp:150
+#: prefs/GUIPrefs.cpp:141
msgid "-36 dB (shallow range for high-amplitude editing)"
msgstr "-36 dB (plytký rozsah pre editáciu vysokých frekvenciÃ)"
-#: ../src/prefs/GUIPrefs.cpp:157
+#: prefs/GUIPrefs.cpp:142
msgid "-48 dB (PCM range of 8 bit samples)"
msgstr "-48 dB (PCM rozsah 8 bitových vzoriek)"
#: prefs/GUIPrefs.cpp:143
msgid "-60 dB (PCM range of 10 bit samples)"
-msgstr ""
+msgstr "-60 dB (PCM rozsah 10 bitových vzoriek)"
-#: ../src/prefs/GUIPrefs.cpp:164
+#: prefs/GUIPrefs.cpp:144
msgid "-96 dB (PCM range of 16 bit samples)"
msgstr "-96 dB (PCM rozsah 16 bitových vzoriek)"
-#: ../src/prefs/GUIPrefs.cpp:171
+#: prefs/GUIPrefs.cpp:145
msgid "-120 dB (approximate limit of human hearing)"
msgstr "-120 dB (približná hranica ľudského sluchu)"
-#: ../src/prefs/GUIPrefs.cpp:178
+#: prefs/GUIPrefs.cpp:146
msgid "-145 dB (PCM range of 24 bit samples)"
msgstr "-145 dB (PCM rozsah 24 bitových vzoriek)"
#: prefs/GUIPrefs.cpp:151
msgid "Default View Mode"
-msgstr ""
+msgstr "Predvolené zobrazenie"
#: prefs/GUIPrefs.cpp:164
msgid "Other interface choices"
-msgstr ""
+msgstr "ÄalÅ¡ie voľby rozhrania"
#: prefs/GUIPrefs.cpp:167
msgid "Help:"
-msgstr ""
+msgstr "Nápoveda:"
#: prefs/GUIPrefs.cpp:168
msgid "Solo Button:"
-msgstr ""
+msgstr "TlaÄÃtko Solo:"
-#: ../src/prefs/PrefsDialog.cpp:90
+#: prefs/KeyConfigPrefs.cpp:64
+#: prefs/KeyConfigPrefs.cpp:65
msgid "Keyboard"
msgstr "Klávesnica"
#: prefs/KeyConfigPrefs.cpp:86
msgid "Keyboard preferences currently unavailable."
-msgstr ""
+msgstr "Klávesnicové predvoľby momentálne nie sú k dispozÃcii."
#: prefs/KeyConfigPrefs.cpp:87
msgid "Open a new project to modify keyboard shortcuts."
-msgstr ""
+msgstr "Otvoriť nový projekt pre zmenu klávesových skratiek."
-#: prefs/KeyConfigPrefs.cpp:93
+#: prefs/KeyConfigPrefs.cpp:109
msgid "Key Bindings"
-msgstr ""
+msgstr "Mapovanie kláves"
-#: prefs/KeyConfigPrefs.cpp:113
+#: prefs/KeyConfigPrefs.cpp:129
msgid "S&et"
-msgstr ""
+msgstr "Na&staviť"
-#: ../src/prefs/KeyConfigPrefs.cpp:115
+#: prefs/KeyConfigPrefs.cpp:135
msgid "Note: Pressing Cmd+Q will quit. All other keys are valid."
msgstr "Poznámka: StlaÄenÃm Cmd+Q skonÄÃte. VÅ¡etky ostatné klávesy sú platné."
-#: prefs/KeyConfigPrefs.cpp:122 prefs/ThemePrefs.cpp:102
+#: prefs/KeyConfigPrefs.cpp:140
+#: prefs/ThemePrefs.cpp:105
msgid "&Defaults"
-msgstr ""
+msgstr "&Predvolené hodnoty"
-#: ../src/prefs/KeyConfigPrefs.cpp:79
+#: prefs/KeyConfigPrefs.cpp:159
msgid "Key Combination"
msgstr "Kombinácia kláves"
-#: ../src/prefs/KeyConfigPrefs.cpp:159
+#: prefs/KeyConfigPrefs.cpp:176
msgid "Export Keyboard Shortcuts As:"
msgstr "Exportovať klávesové skratky ako:"
-#: ../src/prefs/KeyConfigPrefs.cpp:174
+#: prefs/KeyConfigPrefs.cpp:196
msgid "Error saving keyboard shortcuts"
msgstr "Chyba pri ukladanà klávesových skratiek"
-#: ../src/prefs/KeyConfigPrefs.cpp:188
+#: prefs/KeyConfigPrefs.cpp:211
msgid "Select an XML file containing Audacity keyboard shortcuts..."
msgstr "Zvoľte XML súbor obsahujúcà klávesové skratky pre Audacity..."
-#: ../src/prefs/KeyConfigPrefs.cpp:206
+#: prefs/KeyConfigPrefs.cpp:228
msgid "Error loading keyboard shortcuts"
msgstr "Chyba pri naÄÃtanà klávesových skratiek"
-#: prefs/KeyConfigPrefs.cpp:239
+#: prefs/KeyConfigPrefs.cpp:256
#, c-format
-msgid "The keyboard shortcut '%s' is already assigned to:\n"
+msgid ""
+"The keyboard shortcut '%s' is already assigned to:\n"
"\n"
"'%s'"
msgstr ""
+"Klávesová skratka '%s' už je použitá pre:\n"
+"\n"
+"'%s'"
-#: ../src/EditToolBar.cpp:159
+#: prefs/KeyConfigPrefs.cpp:382
+#: toolbars/EditToolBar.cpp:144
msgid "Undo"
msgstr "Späť"
-#: prefs/AudioIOPrefs.cpp:147
-#, fuzzy
+#: prefs/MidiIOPrefs.cpp:146
msgid "&Play other tracks while recording new one"
-msgstr "PoÄas nahrávania novej stopy prehrávaÅ¥ ostatné stopy."
+msgstr "Popri nahrávanà novej stopy preh&rávať ostatné"
#: prefs/MidiIOPrefs.cpp:149
msgid "&Hardware Playthrough (Play new track while recording it)"
-msgstr ""
+msgstr "&Hardware Playthrough(Popri nahrávanà novej stopy ju zároveŠprehrávať)"
#: prefs/MidiIOPrefs.cpp:152
msgid "&Software Playthrough (Play new track while recording it)"
-msgstr ""
+msgstr "&Software Playthrough (Popri nahrávanà novej stopy ju zároveŠprehrávať)"
#: prefs/MidiIOPrefs.cpp:160
msgid "Play before cut region:"
-msgstr ""
+msgstr "PrehraÅ¥ pred oddelenÃm oblasti:"
#: prefs/MidiIOPrefs.cpp:162
msgid "Play after cut region:"
-msgstr ""
+msgstr "Prehrať po oddelenà oblasti:"
-#: prefs/AudioIOPrefs.cpp:174
+#: prefs/MidiIOPrefs.cpp:173
msgid "Audio to buffer:"
-msgstr ""
+msgstr "Audio do vyrovnávacej pamäte:"
-#: prefs/AudioIOPrefs.cpp:177
+#: prefs/MidiIOPrefs.cpp:176
msgid "Latency correction:"
-msgstr ""
+msgstr "Ãprava latencie:"
#: prefs/MidiIOPrefs.cpp:183
msgid "Seek Time"
-msgstr ""
+msgstr "HľadaÅ¥ Äas"
#: prefs/MidiIOPrefs.cpp:196
msgid "Play when previewing:"
-msgstr ""
+msgstr "PrehraÅ¥ keÄ to zobrazujeÅ¡:"
-#: ../src/prefs/PrefsDialog.cpp:91
+#: prefs/MousePrefs.cpp:55
+#: prefs/MousePrefs.cpp:56
msgid "Mouse"
msgstr "Myš"
-#: ../src/prefs/MousePrefs.cpp:71
+#: prefs/MousePrefs.cpp:78
msgid "Mouse Bindings (default values, not configurable)"
-msgstr "Priradenia myši (štandardne hodnoty, nie je možné ich upravovať)"
+msgstr "Priradenia myši (štandardné hodnoty, nie je možné ich upravovať)"
-#: ../src/prefs/MousePrefs.cpp:84
+#: prefs/MousePrefs.cpp:93
msgid "Tool"
msgstr "Nástroj"
-#: ../src/prefs/MousePrefs.cpp:85
+#: prefs/MousePrefs.cpp:94
msgid "Command Action"
msgstr "ÄinnosÅ¥ prÃkazu"
-#: ../src/prefs/MousePrefs.cpp:86
+#: prefs/MousePrefs.cpp:95
msgid "Buttons"
-msgstr "TlaÄÃtka"
+msgstr "TlaÄidlá"
-#: ../src/prefs/MousePrefs.cpp:88
-#: ../src/prefs/MousePrefs.cpp:92
-#: ../src/prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:98
+#: prefs/MousePrefs.cpp:104
+#: prefs/MousePrefs.cpp:117
+#: prefs/MousePrefs.cpp:122
msgid "Left-Click"
msgstr "Ľavé tlaÄÃtko myÅ¡i"
-#: ../src/prefs/MousePrefs.cpp:88
-#: ../src/prefs/MousePrefs.cpp:89
-#: ../src/prefs/MousePrefs.cpp:90
+#: prefs/MousePrefs.cpp:98
+#: prefs/MousePrefs.cpp:99
+#: prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:101
+#: prefs/MousePrefs.cpp:102
msgid "Select"
msgstr "OznaÄiÅ¥"
-#: ../src/prefs/MousePrefs.cpp:88
+#: prefs/MousePrefs.cpp:98
+#: prefs/MousePrefs.cpp:122
msgid "Set Selection Point"
msgstr "Nastaviť bod výberu"
-#: ../src/prefs/MousePrefs.cpp:89
-#: ../src/prefs/MousePrefs.cpp:93
-#: ../src/prefs/MousePrefs.cpp:97
-#: ../src/prefs/MousePrefs.cpp:98
-#: ../src/prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:99
+#: prefs/MousePrefs.cpp:105
+#: prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:115
+#: prefs/MousePrefs.cpp:119
+#: prefs/MousePrefs.cpp:123
msgid "Left-Drag"
-msgstr "Ťahanie ľavým tlaÄÃtkom myÅ¡i"
+msgstr "Ťahanie ľavým tlaÄidlom myÅ¡i"
-#: ../src/prefs/MousePrefs.cpp:89
+#: prefs/MousePrefs.cpp:99
+#: prefs/MousePrefs.cpp:123
msgid "Set Selection Range"
msgstr "Nastaviť rozsah výberu"
-#: ../src/prefs/MousePrefs.cpp:90
+#: prefs/MousePrefs.cpp:100
msgid "Extend Selection Range"
msgstr "RozÅ¡ÃriÅ¥ výber"
-#: ../src/prefs/MousePrefs.cpp:90
+#: prefs/MousePrefs.cpp:100
msgid "Shift-Left-Click"
-msgstr "Shift-Ľavé tlaÄÃtko myÅ¡i"
+msgstr "Shift-Ľavé tlaÄidlo myÅ¡i"
#: prefs/MousePrefs.cpp:101
msgid "Left-Double-Click"
-msgstr ""
+msgstr "Dvojité stlaÄenie Ľavého tlaÄidla myÅ¡i"
#: prefs/MousePrefs.cpp:101
msgid "Select Clip or Entire Track"
-msgstr ""
+msgstr "Vyberte ústrižok alebo celú stopu"
#: prefs/MousePrefs.cpp:102
msgid "Ctrl-Left-Click"
-msgstr ""
+msgstr "Ctrl-Ľavé tlaÄidlo myÅ¡i"
#: prefs/MousePrefs.cpp:102
msgid "Set Selection Point and Play"
-msgstr ""
+msgstr "Nastaviť bod rozsahu a spustiť"
-#: ../src/prefs/MousePrefs.cpp:92
-#: ../src/prefs/MousePrefs.cpp:93
-#: ../src/prefs/MousePrefs.cpp:94
-#: ../src/prefs/MousePrefs.cpp:95
+#: prefs/MousePrefs.cpp:104
+#: prefs/MousePrefs.cpp:105
+#: prefs/MousePrefs.cpp:106
+#: prefs/MousePrefs.cpp:107
+#: prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:109
msgid "Zoom"
msgstr "ZväÄÅ¡iÅ¥"
-#: ../src/prefs/MousePrefs.cpp:92
+#: prefs/MousePrefs.cpp:104
msgid "Zoom in on Point"
msgstr "ZväÄÅ¡iÅ¥ na bod"
-#: ../src/prefs/MousePrefs.cpp:93
+#: prefs/MousePrefs.cpp:105
+#: prefs/MousePrefs.cpp:107
+#: prefs/MousePrefs.cpp:125
msgid "Zoom in on a Range"
msgstr "ZväÄÅ¡iÅ¥ na rozsah"
-#: prefs/MousePrefs.cpp:103
+#: prefs/MousePrefs.cpp:105
msgid "same as right-drag"
-msgstr ""
+msgstr "rovnako ako ťahanie vpravo"
-#: ../src/prefs/MousePrefs.cpp:94
+#: prefs/MousePrefs.cpp:106
+#: prefs/MousePrefs.cpp:124
msgid "Right-Click"
-msgstr "Pravé tlaÄÃtko myÅ¡i"
+msgstr "Pravé tlaÄidlo myÅ¡i"
-#: ../src/prefs/MousePrefs.cpp:94
+#: prefs/MousePrefs.cpp:106
+#: prefs/MousePrefs.cpp:124
msgid "Zoom out one step"
msgstr "Zmenšiť o krok"
-#: ../src/prefs/MousePrefs.cpp:95
+#: prefs/MousePrefs.cpp:107
+#: prefs/MousePrefs.cpp:125
msgid "Right-Drag"
-msgstr "Ťahanie pravým tlaÄÃtkom myÅ¡i"
+msgstr "Ťahanie pravým tlaÄidlom myÅ¡i"
-#: prefs/MousePrefs.cpp:105
+#: prefs/MousePrefs.cpp:107
msgid "same as left-drag"
-msgstr ""
+msgstr "rovnako ako ťahanie vľavo"
#: prefs/MousePrefs.cpp:108
msgid "Shift-Drag"
-msgstr ""
+msgstr "Shift-Ťahanie myši"
#: prefs/MousePrefs.cpp:108
msgid "Zoom out on a Range"
-msgstr ""
+msgstr "Zmenšiť o rozsah"
#: prefs/MousePrefs.cpp:109
msgid "Middle-Click"
-msgstr ""
+msgstr "Stredné-kliknutie"
#: prefs/MousePrefs.cpp:109
msgid "Zoom default"
-msgstr ""
+msgstr "Predvolené zväÄÅ¡enie"
-#: prefs/MousePrefs.cpp:107
+#: prefs/MousePrefs.cpp:111
msgid "Time shift clip or move up/down between tracks"
-msgstr ""
+msgstr "Äasový posun klipu alebo presun medzi stopami nahor alebo nadol"
-#: prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:112
msgid "Shift-Left-Drag"
-msgstr ""
+msgstr "Shift-Ťahanie ľavým tlaÄidlom myÅ¡i"
-#: prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:112
msgid "Time shift all clips in track"
-msgstr ""
+msgstr "Äasový posun vÅ¡etkých klipov v stope"
-#: ../src/prefs/MousePrefs.cpp:103
+#: prefs/MousePrefs.cpp:113
+#: prefs/MousePrefs.cpp:120
msgid "Ctrl-Left-Drag"
-msgstr "Ctrl-Å¥ahanie ľavým tlaÄÃtkom myÅ¡i"
+msgstr "Ctrl-Å¥ahanie ľavým tlaÄidlom myÅ¡i"
-#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:113
msgid "Move clip up/down between tracks"
-msgstr ""
+msgstr "Presunúť klip nahor alebo nadol medzi stopami"
-#: ../src/prefs/MousePrefs.cpp:98
+#: prefs/MousePrefs.cpp:115
msgid "Change Amplification Envelope"
msgstr "Zmeniť krivku hlasitosti"
-#: ../src/prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:117
msgid "Change Sample"
msgstr "Zmeniť vzorku"
-#: ../src/prefs/MousePrefs.cpp:100
-#: ../src/prefs/MousePrefs.cpp:101
-#: ../src/prefs/MousePrefs.cpp:102
-#: ../src/prefs/MousePrefs.cpp:103
+#: prefs/MousePrefs.cpp:117
+#: prefs/MousePrefs.cpp:118
+#: prefs/MousePrefs.cpp:119
+#: prefs/MousePrefs.cpp:120
msgid "Pencil"
msgstr "Ceruzka"
-#: ../src/prefs/MousePrefs.cpp:101
+#: prefs/MousePrefs.cpp:118
msgid "Alt-Left-Click"
-msgstr "Alt-Ľavé tlaÄÃtko"
+msgstr "Alt-Ľavé tlaÄidlo myÅ¡i"
-#: ../src/prefs/MousePrefs.cpp:101
+#: prefs/MousePrefs.cpp:118
msgid "Smooth at Sample"
msgstr "Vyhladiť na vzorke"
-#: ../src/prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:119
msgid "Change Several Samples"
msgstr "Zmeniť viacej vzoriek"
-#: ../src/prefs/MousePrefs.cpp:103
+#: prefs/MousePrefs.cpp:120
msgid "Change ONE Sample only"
msgstr "Zmeniť len JEDNU vzorku"
-#: ../src/prefs/MousePrefs.cpp:105
-#: ../src/prefs/MousePrefs.cpp:106
-#: ../src/prefs/MousePrefs.cpp:107
-#: ../src/prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:122
+#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:125
msgid "Multi"
msgstr "Multi"
-#: prefs/MousePrefs.cpp:118 prefs/MousePrefs.cpp:119
-#, fuzzy
+#: prefs/MousePrefs.cpp:122
+#: prefs/MousePrefs.cpp:123
msgid "same as select tool"
-msgstr "To isté ako nástroj výberu"
+msgstr "rovnako ako nástroj výberu"
-#: prefs/MousePrefs.cpp:120 prefs/MousePrefs.cpp:121
-#, fuzzy
+#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:125
msgid "same as zoom tool"
-msgstr "Rovnaké ako lupa"
+msgstr "rovnako ako nástroj zväÄÅ¡enia"
-#: ../src/prefs/MousePrefs.cpp:110
-#: ../src/prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:127
+#: prefs/MousePrefs.cpp:128
+#: prefs/MousePrefs.cpp:129
msgid "Any"
msgstr "Akýkoľvek"
-#: ../src/prefs/MousePrefs.cpp:110
+#: prefs/MousePrefs.cpp:127
msgid "Scroll up or down"
msgstr "Rolovať nahor alebo nadol"
-#: ../src/prefs/MousePrefs.cpp:110
+#: prefs/MousePrefs.cpp:127
msgid "Wheel-Rotate"
-msgstr "OtáÄanie koleÄkom"
+msgstr "OtáÄanie kolieskom"
#: prefs/MousePrefs.cpp:128
msgid "Scroll left or right"
-msgstr ""
+msgstr "Rolovať vľavo alebo vpravo"
#: prefs/MousePrefs.cpp:128
msgid "Shift-Wheel-Rotate"
-msgstr ""
+msgstr "Shift-Rotácia kolieskom"
-#: ../src/prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:129
msgid "Ctrl-Wheel-Rotate"
-msgstr "Ctrl-Rotácia kolieÄka"
+msgstr "Ctrl-Rotácia kolieskom"
-#: ../src/prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:129
msgid "Zoom in or out"
msgstr "ZväÄÅ¡iÅ¥ alebo zmenÅ¡iÅ¥"
-#: ../src/prefs/PrefsDialog.cpp:52
+#: prefs/PrefsDialog.cpp:94
msgid "Audacity Preferences"
msgstr "Nastavenia Audacity"
-#: ../src/prefs/QualityPrefs.cpp:161
+#: prefs/QualityPrefs.cpp:73
msgid "Rectangle"
msgstr "Obdĺžnikový"
-#: ../src/prefs/QualityPrefs.cpp:162
+#: prefs/QualityPrefs.cpp:74
msgid "Triangle"
msgstr "TrojuholnÃk"
-# ???
-#: ../src/prefs/QualityPrefs.cpp:163
-#, fuzzy
+#: prefs/QualityPrefs.cpp:75
msgid "Shaped"
-msgstr "OhraniÄené"
+msgstr "OhraniÄenie"
#: prefs/QualityPrefs.cpp:122
msgid "Sampling"
-msgstr ""
+msgstr "Vzorkovanie"
-#: ../src/prefs/QualityPrefs.cpp:80
+#: prefs/QualityPrefs.cpp:125
msgid "Default Sample Rate:"
-msgstr "Východzia rýchlosť vzorkovania:"
+msgstr "PoÄiatoÄná rýchlosÅ¥ vzorkovania:"
-#: ../src/prefs/QualityPrefs.cpp:114
+#: prefs/QualityPrefs.cpp:127
msgid "Default Sample Format:"
-msgstr "Východzà formát vzorkovania:"
-
-#: ../src/prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "Konvertor vzorkovacej frekvencie v reálnom Äase:"
+msgstr "PoÄiatoÄný formát vzorkovania:"
-#: ../src/prefs/QualityPrefs.cpp:147
-msgid "High-quality sample rate converter:"
-msgstr "Vysoko kvalitný konvertor vzorkovacej rýchlosti:"
-
-#: ../src/prefs/QualityPrefs.cpp:171
-msgid "Real-time dither:"
-msgstr "MieÅ¡anie v reálnom Äase"
-
-#: ../src/prefs/QualityPrefs.cpp:186
-msgid "High-quality dither:"
-msgstr "Vysoko kvalitný konvertor vzorkovacej rýchlosti:"
-
-#: prefs/QualityPrefs.cpp:157
+#: prefs/QualityPrefs.cpp:134
msgid "Conversion"
-msgstr ""
+msgstr "Prevod"
-#: prefs/QualityPrefs.cpp:163
+#: prefs/QualityPrefs.cpp:140
msgid "Sample Rate Converter"
-msgstr ""
+msgstr "PrevodnÃk vzorkovacej frekvencie"
-#: prefs/QualityPrefs.cpp:164
+#: prefs/QualityPrefs.cpp:141
msgid "Dither"
-msgstr ""
+msgstr "Miešanie"
-#: prefs/QualityPrefs.cpp:165
+#: prefs/QualityPrefs.cpp:142
msgid "Real-time:"
-msgstr ""
+msgstr "Reálny Äas:"
-#: prefs/QualityPrefs.cpp:171
+#: prefs/QualityPrefs.cpp:149
msgid "High-quality:"
-msgstr ""
+msgstr "Vysoká kvalita:"
-#: prefs/SmartRecordPrefs.cpp:54 prefs/SmartRecordPrefs.cpp:55
+#: prefs/SmartRecordPrefs.cpp:37
+#: prefs/SmartRecordPrefs.cpp:38
msgid "Smart Recording"
-msgstr ""
+msgstr "Inteligentné nahrávanie"
-#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
+#: prefs/SmartRecordPrefs.cpp:64
+#: prefs/SmartRecordPrefs.cpp:66
msgid "Sound Activated Recording"
-msgstr ""
+msgstr "Zvukom aktivované nahrávanie"
#: prefs/SmartRecordPrefs.cpp:71
msgid "Sound Activation Level (dB):"
-msgstr ""
+msgstr "AktivaÄná úroveÅ zvuku (dB):"
-#: ../src/prefs/PrefsDialog.cpp:87
+#: prefs/SpectrumPrefs.cpp:42
+#: prefs/SpectrumPrefs.cpp:43
msgid "Spectrograms"
msgstr "Spektrogramy"
-#: ../src/prefs/SpectrumPrefs.cpp:70
+#: prefs/SpectrumPrefs.cpp:92
msgid "FFT Size"
msgstr "FFT veľkosť"
-#: prefs/SpectrumPrefs.cpp:75
+#: prefs/SpectrumPrefs.cpp:95
msgid "8 - most wideband"
-msgstr ""
+msgstr "8 - väÄÅ¡ina Å¡irokopásmových"
-#: ../src/prefs/SpectrumPrefs.cpp:40
+#: prefs/SpectrumPrefs.cpp:100
msgid "256 - default"
-msgstr "256 - východzie"
+msgstr "256 - poÄiatok"
-#: prefs/SpectrumPrefs.cpp:107
+#: prefs/SpectrumPrefs.cpp:108
msgid "32768 - most narrowband"
-msgstr ""
+msgstr "32768 - najužšie pásmo"
-#: ../src/prefs/SpectrumPrefs.cpp:44
+#: prefs/SpectrumPrefs.cpp:110
msgid "4096 - most narrowband"
msgstr "4096 - najužšie pásmo"
-#: prefs/SpectrumPrefs.cpp:90
+#: prefs/SpectrumPrefs.cpp:117
msgid "Window type:"
-msgstr ""
+msgstr "Druh okna:"
-#: prefs/SpectrumPrefs.cpp:125
+#: prefs/SpectrumPrefs.cpp:126
msgid "FFT Skip Points"
-msgstr ""
+msgstr "FFT preskoÄiÅ¥ body"
-#: prefs/SpectrumPrefs.cpp:96
+#: prefs/SpectrumPrefs.cpp:141
msgid "Display"
-msgstr ""
+msgstr "Zobrazenie"
-#: prefs/SpectrumPrefs.cpp:100
+#: prefs/SpectrumPrefs.cpp:145
msgid "&Grayscale"
-msgstr ""
+msgstr "&Odtiene šedej"
-#: prefs/SpectrumPrefs.cpp:103
+#: prefs/SpectrumPrefs.cpp:148
msgid "Minimum Frequency (Hz):"
-msgstr ""
+msgstr "Minimálna frekvencia (Hz):"
-#: ../src/prefs/SpectrumPrefs.cpp:104
+#: prefs/SpectrumPrefs.cpp:153
msgid "Maximum Frequency (Hz):"
msgstr "Maximálna frekvencia (Hz):"
-#: prefs/SpectrumPrefs.cpp:158
+#: prefs/SpectrumPrefs.cpp:159
msgid "&Y-Grid"
-msgstr ""
+msgstr "&Y-Mriežka"
-#: prefs/SpectrumPrefs.cpp:161
+#: prefs/SpectrumPrefs.cpp:162
msgid "&Find Notes"
-msgstr ""
+msgstr "&Nájsť Poznámky"
-#: prefs/SpectrumPrefs.cpp:162
+#: prefs/SpectrumPrefs.cpp:163
msgid "&Quantize Notes"
-msgstr ""
+msgstr "&Kvantovať Poznámky"
-#: prefs/SpectrumPrefs.cpp:165
+#: prefs/SpectrumPrefs.cpp:166
msgid "Minimum Amplitude (dB):"
-msgstr ""
+msgstr "Minimálna amplitúda (dB):"
-#: prefs/SpectrumPrefs.cpp:170
+#: prefs/SpectrumPrefs.cpp:171
msgid "Max. Number of Notes (1..128):"
-msgstr ""
+msgstr "Maximálny poÄet poznámok(1..128):"
-#: ../src/prefs/SpectrumPrefs.cpp:148
+#: prefs/SpectrumPrefs.cpp:198
msgid "The maximum frequency must be an integer"
msgstr "Maximálna frekvencia musà byÅ¥ celé ÄÃslo"
-#: ../src/prefs/SpectrumPrefs.cpp:152
+#: prefs/SpectrumPrefs.cpp:202
msgid "Maximum frequency must be in the range 100 Hz - 100,000 Hz"
msgstr "Maximálna frekvencia musà byť v rozsahu 100 Hz - 100,000 Hz"
-#: prefs/SpectrumPrefs.cpp:146
+#: prefs/SpectrumPrefs.cpp:210
msgid "The minimum frequency must be an integer"
-msgstr ""
+msgstr "Minimálna frekvencia musà byÅ¥ celé ÄÃslo"
-#: prefs/SpectrumPrefs.cpp:150
+#: prefs/SpectrumPrefs.cpp:214
msgid "Minimum frequency must be at least 0 Hz"
-msgstr ""
+msgstr "Minimálna frekvencia musà byť najmenej 0 Hz"
-#: prefs/SpectrumPrefs.cpp:220
+#: prefs/SpectrumPrefs.cpp:221
msgid "The minimum amplitude (dB) must be an integer"
-msgstr ""
+msgstr "Minimálna amplitúda (dB) musà byÅ¥ celé ÄÃslo"
-#: prefs/SpectrumPrefs.cpp:226 prefs/SpectrumPrefs.cpp:230
+#: prefs/SpectrumPrefs.cpp:227
+#: prefs/SpectrumPrefs.cpp:231
msgid "The Maximum Number of Notes must be an integer in the range 1..128"
-msgstr ""
+msgstr "Maximálny poÄet nôt musà byÅ¥ celé ÄÃslo v rozmedzà 1..128"
-#: prefs/ThemePrefs.cpp:61 prefs/ThemePrefs.cpp:62
+#: prefs/ThemePrefs.cpp:62
+#: prefs/ThemePrefs.cpp:63
msgid "Theme"
-msgstr ""
+msgstr "Téma"
-#: prefs/ThemePrefs.cpp:90
+#. i18n-hint: && in here is an escape character to get a single & on screen,
+#. * so keep it as is
+#: prefs/ThemePrefs.cpp:93
msgid "Theme Cache - Images && Color"
-msgstr ""
+msgstr "Vyrovnávacia pamäť Témy - obrázky && farba"
-#: prefs/ThemePrefs.cpp:92
+#: prefs/ThemePrefs.cpp:95
msgid "Save Theme Cache"
-msgstr ""
+msgstr "Uložiť vyrovnávaciu pamäť Témy"
-#: prefs/ThemePrefs.cpp:93
+#: prefs/ThemePrefs.cpp:96
msgid "Load Theme Cache"
-msgstr ""
+msgstr "NaÄÃtaÅ¥ vyrovnávaciu pamäť Témy"
-#: prefs/ThemePrefs.cpp:103
+#: prefs/ThemePrefs.cpp:106
msgid "Load Theme Cache At Startup"
-msgstr ""
+msgstr "NaÄÃtaÅ¥ vyrovnávaciu pamäť Témy pri Å¡tarte"
-#: prefs/ThemePrefs.cpp:115
+#: prefs/ThemePrefs.cpp:118
msgid "Individual Theme Files"
-msgstr ""
+msgstr "Jednotlivé súbory Témy"
-#: prefs/ThemePrefs.cpp:117
+#: prefs/ThemePrefs.cpp:120
msgid "Save Files"
-msgstr ""
+msgstr "Uložiť súbory"
-#: prefs/ThemePrefs.cpp:118
+#: prefs/ThemePrefs.cpp:121
msgid "Load Files"
-msgstr ""
+msgstr "Otvoriť súbory"
-#: prefs/ThemePrefs.cpp:123
+#: prefs/ThemePrefs.cpp:126
msgid "Info"
-msgstr ""
+msgstr "Informácie"
#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
+msgid ""
+"Themability is an experimental feature.\n"
"\n"
"To try it out, click \"Save Theme Cache\" then\n"
"find and modify the images and colors in \n"
@@ -8067,573 +8779,638 @@ msgid "Themability is an experimental feature.\n"
"wavetrack are currently affected, even though the\n"
"image file shows other icons too.]\n"
msgstr ""
+"Themability je experimentálne funkcia.\n"
+" \n"
+" Ak ju chcete vyskúšať, kliknite na \"Uložiť tému do Cache \", potom \n"
+" nájsť a upraviť obrázky a farby do \n"
+" ImageCacheVxx.png pomocou obrázkového editora \n"
+" ako je Gimp. \n"
+" \n"
+"Kliknite na \"Nahrať tému do Cache \" nahrať meniť obrázky \n"
+" a farby späť do Audacity. \n"
+" \n"
+"[Iba kontrolný panel nástrojov a farieb na \n"
+" zvukovej stope sú v súÄasnosti postihnuté, a to i napriek tomu, že\n"
+"obrázok súbor ukazuje iné ikony.]\n"
#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
+msgid ""
+"You have compiled Audacity with an extra button, \n"
"'Output Sourcery'. This will save a C version of \n"
"the image cache that can be compiled in as a default.\n"
msgstr ""
+"Zostavili ste Audacity s extra tlaÄidlom \n"
+"'Výstupný zdroj'. To ušetrà C verziu \n"
+" pamäti obrazu, a je ho možné nastaviť ako predvolený. \n"
#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
+msgid ""
+"If 'Load Theme Cache At Startup' is checked, then \n"
"the Theme Cache will be loaded when the program \n"
"starts up.\n"
"\n"
msgstr ""
+"Ak 'NaÄÃtaÅ¥ Tému do vyrovnávacej pamäte pri Å¡tarte' je zaÄiarknuté, potom \n"
+" Téma do vyrovnávacej pamäte bude naÄÃtaná pri Å¡tarte programu \n"
+" ZaÄÃna sa. \n"
+"\n"
#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
+msgid ""
+"Saving and loading individual theme files uses a \n"
"separate file for each image, but is otherwise the \n"
"same idea.\n"
"\n"
msgstr ""
+"Ukladanie a naÄÃtanie jednotlivých súborov témy použÃva \n"
+" samostatný súbor pre každý obrázok, ale inak je v \n"
+" rovnakom motÃve. \n"
+" \n"
-#: ../src/ControlToolBar.cpp:470
+#: toolbars/ControlToolBar.cpp:175
msgid "Pause"
msgstr "Pozastaviť (Pause)"
#: toolbars/ControlToolBar.cpp:178
msgid "Play"
-msgstr ""
+msgstr "Prehrať "
#: toolbars/ControlToolBar.cpp:178
msgid "Play (Shift for Loop Play)"
-msgstr ""
+msgstr "PrehraÅ¥ (Shift pre prehranie v sluÄke)"
-#: ../src/ControlToolBar.cpp:471
+#: toolbars/ControlToolBar.cpp:183
+#: widgets/ProgressDialog.cpp:1093
msgid "Stop"
msgstr "Stop"
-#: ../src/ControlToolBar.cpp:467
+#: toolbars/ControlToolBar.cpp:186
msgid "Skip to Start"
msgstr "PreskoÄiÅ¥ na zaÄiatok"
-#: ../src/ControlToolBar.cpp:472
+#: toolbars/ControlToolBar.cpp:189
msgid "Skip to End"
msgstr "PreskoÄiÅ¥ na koniec"
#: toolbars/ControlToolBar.cpp:192
msgid "Record (Shift for Append Record)"
-msgstr ""
+msgstr "Nahrať (Shift pre pridanie nahrávania)"
#: toolbars/ControlToolBar.cpp:195
msgid "Clean Speech"
-msgstr ""
+msgstr "Äistenie hovoreného slova - Clean Speech"
-#: toolbars/ControlToolBar.cpp:524 toolbars/ControlToolBar.cpp:776
+#: toolbars/ControlToolBar.cpp:540
+#: toolbars/ControlToolBar.cpp:869
msgid "Error while opening sound device. "
-msgstr ""
+msgstr "Chyba pri otváranà zvukového zariadenia."
-#: toolbars/ControlToolBar.cpp:696
+#: toolbars/ControlToolBar.cpp:706
msgid "Recording in CleanSpeech mode is not possible when a track, or more than one project, is already open."
-msgstr ""
+msgstr "Nahrávanie v režime CleanSpeech nie je možné, keÄ skladba, alebo viac ako jeden projekt, je už otvorený."
-#: toolbars/ControlToolBar.cpp:685
+#: toolbars/ControlToolBar.cpp:707
msgid "Recording not permitted"
-msgstr ""
+msgstr "Nahrávanie nie je povolené"
-#: toolbars/DeviceToolBar.cpp:113 toolbars/DeviceToolBar.cpp:115
+#: toolbars/DeviceToolBar.cpp:113
+#: toolbars/DeviceToolBar.cpp:115
msgid "Output Device"
-msgstr ""
+msgstr "Výstupné zariadenie"
-#: toolbars/DeviceToolBar.cpp:134 toolbars/DeviceToolBar.cpp:136
+#: toolbars/DeviceToolBar.cpp:134
+#: toolbars/DeviceToolBar.cpp:136
msgid "Input Device"
-msgstr ""
+msgstr "Vstupné zariadenie"
-#: ../src/EditToolBar.cpp:154
+#: toolbars/EditToolBar.cpp:139
msgid "Trim outside selection"
msgstr "Odstrániť všetko mimo výberu"
-#: ../src/EditToolBar.cpp:156
+#: toolbars/EditToolBar.cpp:141
msgid "Silence selection"
msgstr "Nahradiť výber tichom"
#: toolbars/EditToolBar.cpp:150
msgid "Link Tracks"
-msgstr ""
+msgstr "Spojiť stopy"
-#: ../src/EditToolBar.cpp:164
+#: toolbars/EditToolBar.cpp:155
msgid "Zoom In"
msgstr "ZväÄÅ¡iÅ¥"
-#: ../src/EditToolBar.cpp:166
+#: toolbars/EditToolBar.cpp:157
msgid "Zoom Out"
msgstr "Zmenšiť"
-#: ../src/EditToolBar.cpp:170
+#: toolbars/EditToolBar.cpp:161
msgid "Zoom Toggle"
-msgstr "Prehodenie zväÄÅ¡enia"
+msgstr "Prepnutie zväÄÅ¡enia"
-#: toolbars/EditToolBar.cpp:160
+#: toolbars/EditToolBar.cpp:165
msgid "Fit Selection"
-msgstr ""
+msgstr "Prispôsobiť výber "
-#: ../src/EditToolBar.cpp:174
+#: toolbars/EditToolBar.cpp:165
msgid "Fit selection in window"
msgstr "Prispôsobiť výber veľkosti okna"
-#: toolbars/EditToolBar.cpp:162
+#: toolbars/EditToolBar.cpp:167
msgid "Fit Project"
-msgstr ""
+msgstr "Prispôsobiť projekt "
-#: ../src/EditToolBar.cpp:176
+#: toolbars/EditToolBar.cpp:167
msgid "Fit project in window"
msgstr "Prispôsobiť projekt veľkosti okna"
-#: toolbars/MeterToolBar.cpp:49
+#: toolbars/MeterToolBar.cpp:50
msgid "Meter"
-msgstr ""
+msgstr "Ukazovateľ "
-#: toolbars/MeterToolBar.cpp:79
+#: toolbars/MeterToolBar.cpp:80
msgid "Play Meter"
-msgstr ""
+msgstr "Prehrať ukazovateľ "
-#: toolbars/MeterToolBar.cpp:80
+#: toolbars/MeterToolBar.cpp:81
msgid "Meter-Play"
-msgstr ""
+msgstr "Ukazovateľ prehrávania"
-#: toolbars/MeterToolBar.cpp:88
+#: toolbars/MeterToolBar.cpp:89
msgid "Record Meter"
-msgstr ""
+msgstr "Nahrávacà ukazovateľ"
-#: toolbars/MeterToolBar.cpp:89
+#: toolbars/MeterToolBar.cpp:90
msgid "Meter-Record"
-msgstr ""
+msgstr "Ukazovateľ nahrávania"
-#: ../src/MeterToolBar.cpp:66
+#: toolbars/MeterToolBar.cpp:94
msgid "Output level meter"
msgstr "Ukazovateľ úrovne výstupu"
-#: ../src/MeterToolBar.cpp:67
+#: toolbars/MeterToolBar.cpp:95
msgid "Input level meter - click to monitor input"
msgstr "Ukazovateľ úrovne vstupu - kliknite, pokiaľ chcete monitorovať vstup."
-#: ../src/MixerToolBar.cpp:135
+#: toolbars/MixerToolBar.cpp:90
msgid "Output Volume"
msgstr "Výstupná hlasitosť"
#: toolbars/MixerToolBar.cpp:92
msgid "Slider Output"
-msgstr ""
+msgstr "PosuvnÃk výstupu"
-#: ../src/MixerToolBar.cpp:138
+#: toolbars/MixerToolBar.cpp:101
+#: widgets/Meter.cpp:870
msgid "Input Volume"
msgstr "Vstupná hlasitosť"
#: toolbars/MixerToolBar.cpp:103
msgid "Slider Input"
-msgstr ""
+msgstr "PosuvnÃk vstupu"
-#: toolbars/MixerToolBar.cpp:119
+#: toolbars/MixerToolBar.cpp:134
msgid "Input Source"
-msgstr ""
+msgstr "Vstupný zdroj"
-#: toolbars/SelectionBar.cpp:75
+#: toolbars/SelectionBar.cpp:86
msgid "Selection"
-msgstr ""
+msgstr "Výber"
-#: toolbars/SelectionBar.cpp:115 toolbars/SelectionBar.cpp:168
+#: toolbars/SelectionBar.cpp:135
+#: toolbars/SelectionBar.cpp:194
msgid "Project Rate (Hz):"
-msgstr ""
+msgstr "Vzorkovanie (Hz):"
-#: toolbars/SelectionBar.cpp:120 toolbars/SelectionBar.cpp:211
+#: toolbars/SelectionBar.cpp:149
+#: toolbars/SelectionBar.cpp:255
msgid "Selection Start:"
-msgstr ""
+msgstr "ZaÄiatok výberu:"
-#: effects/ToneGen.cpp:300 effects/ToneGen.cpp:338
-#: toolbars/SelectionBar.cpp:135 toolbars/SelectionBar.cpp:225
+#: toolbars/SelectionBar.cpp:163
+#: toolbars/SelectionBar.cpp:164
+#: toolbars/SelectionBar.cpp:261
msgid "Length"
-msgstr ""
+msgstr "Dĺžka"
-#: toolbars/SelectionBar.cpp:145
+#: toolbars/SelectionBar.cpp:174
msgid "hidden"
-msgstr ""
+msgstr "skrytý"
-#: toolbars/SelectionBar.cpp:155 toolbars/SelectionBar.cpp:239
+#: toolbars/SelectionBar.cpp:184
+#: toolbars/SelectionBar.cpp:272
msgid "Audio Position:"
-msgstr ""
+msgstr "Audio PozÃcia:"
-#: toolbars/SelectionBar.cpp:217 toolbars/SelectionBar.cpp:222
+#: toolbars/SelectionBar.cpp:236
+#: toolbars/SelectionBar.cpp:241
msgid "Snap To"
-msgstr ""
+msgstr "PrelÃnanie"
-#: toolbars/SelectionBar.cpp:224
+#: toolbars/SelectionBar.cpp:260
msgid "Selection "
-msgstr ""
+msgstr "Výber"
-#: toolbars/SelectionBar.cpp:289
+#: toolbars/SelectionBar.cpp:325
msgid "Selection Length"
-msgstr ""
+msgstr "Dĺžka výberu"
-#: toolbars/SelectionBar.cpp:297
+#: toolbars/SelectionBar.cpp:333
msgid "Selection End"
-msgstr ""
+msgstr "Koniec výberu"
-#: toolbars/ToolBar.cpp:96
+#: toolbars/ToolBar.cpp:98
#, c-format
msgid "Audacity %s ToolBar"
-msgstr ""
+msgstr "Audacity %s nástrojový panel"
-#: toolbars/ToolDock.cpp:74 toolbars/ToolDock.cpp:75
+#: toolbars/ToolDock.cpp:74
+#: toolbars/ToolDock.cpp:75
msgid "ToolDock"
-msgstr ""
+msgstr "Panel Dokovania"
-#: ../src/ControlToolBar.cpp:76
+#: toolbars/ToolsToolBar.cpp:63
msgid "Click and drag to select audio"
msgstr "KliknutÃm a Å¥ahanÃm myÅ¡i oznaÄÃte audio"
-#: ../src/ControlToolBar.cpp:77
+#: toolbars/ToolsToolBar.cpp:64
msgid "Click and drag to edit the amplitude envelope"
msgstr "KliknutÃm a Å¥ahanÃm myÅ¡i editujete amplitúdovú obálku"
-#: ../src/ControlToolBar.cpp:78
+#: toolbars/ToolsToolBar.cpp:65
msgid "Click and drag to edit the samples"
msgstr "KliknutÃm a Å¥ahanÃm myÅ¡i editujete vzorky"
-#: ../src/ControlToolBar.cpp:80
+#: toolbars/ToolsToolBar.cpp:67
msgid "Click to Zoom In, Shift-Click to Zoom Out"
msgstr "Kliknite pre zväÄÅ¡enie, Shift+kliknite pre zmenÅ¡enie"
-#: ../src/ControlToolBar.cpp:82
+#: toolbars/ToolsToolBar.cpp:69
msgid "Drag to Zoom Into Region, Right-Click to Zoom Out"
msgstr "ŤahaÅ¥ ľavým tlaÄÃckom myÅ¡i pre zväÄÅ¡enie oblasti, stlaÄenÃm pravého pre zmenÅ¡enie"
-#: ../src/ControlToolBar.cpp:84
+#: toolbars/ToolsToolBar.cpp:71
msgid "Left=Zoom In, Right=Zoom Out, Middle=Normal"
msgstr "Ľavé=zväÄÅ¡iÅ¥, Pravé=zmenÅ¡iÅ¥,Stredné=normálna veľkosÅ¥"
-#: ../src/ControlToolBar.cpp:86
+#: toolbars/ToolsToolBar.cpp:73
msgid "Click and drag to move a track in time"
-msgstr "KliknutÃm a Å¥ahanÃm myÅ¡i umiestnite stopy na Äas"
+msgstr "KliknutÃm a Å¥ahanÃm myÅ¡i umiestnite stopy v Äase"
#: toolbars/ToolsToolBar.cpp:90
msgid "Tools"
-msgstr ""
+msgstr "Nástroj"
-#: ../src/ControlToolBar.cpp:355
+#: toolbars/ToolsToolBar.cpp:147
+#: toolbars/ToolsToolBar.cpp:182
msgid "Selection Tool"
msgstr "Výber"
-#: ../src/ControlToolBar.cpp:356
+#: toolbars/ToolsToolBar.cpp:148
+#: toolbars/ToolsToolBar.cpp:183
msgid "Envelope Tool"
msgstr "Obálka"
-#: ../src/ControlToolBar.cpp:357
+#: toolbars/ToolsToolBar.cpp:149
msgid "Time Shift Tool"
msgstr "Äasový posun"
-#: ../src/ControlToolBar.cpp:358
+#: toolbars/ToolsToolBar.cpp:150
+#: toolbars/ToolsToolBar.cpp:185
msgid "Zoom Tool"
msgstr "Lupa"
-#: ../src/ControlToolBar.cpp:359
+#: toolbars/ToolsToolBar.cpp:151
+#: toolbars/ToolsToolBar.cpp:184
msgid "Draw Tool"
msgstr "Kreslenie"
-#: ../src/ControlToolBar.cpp:360
+#: toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
msgstr "Viacnástrojový režim"
#: toolbars/ToolsToolBar.cpp:186
msgid "Slide Tool"
-msgstr ""
+msgstr "Panel obrazu"
#: toolbars/ToolsToolBar.cpp:187
msgid "Multi Tool"
-msgstr ""
+msgstr "ViacúÄelový nástroj"
-#: toolbars/TranscriptionToolBar.cpp:81
+#: toolbars/TranscriptionToolBar.cpp:84
msgid "Transcription"
-msgstr ""
+msgstr "Transkripcia"
-#: toolbars/TranscriptionToolBar.cpp:183
+#: toolbars/TranscriptionToolBar.cpp:171
msgid "Play at selected speed"
-msgstr ""
+msgstr "Prehrať nastavenou rýchlosťou"
-#: toolbars/TranscriptionToolBar.cpp:184
+#: toolbars/TranscriptionToolBar.cpp:172
msgid "Play-at-speed"
-msgstr ""
+msgstr "Prehrať v rýchlosti"
-#: toolbars/TranscriptionToolBar.cpp:190 toolbars/TranscriptionToolBar.cpp:195
+#: toolbars/TranscriptionToolBar.cpp:178
+#: toolbars/TranscriptionToolBar.cpp:183
msgid "Playback Speed"
-msgstr ""
+msgstr "Rýchlosť prehrávania"
-#: toolbars/TranscriptionToolBar.cpp:200
+#: toolbars/TranscriptionToolBar.cpp:196
msgid "Adjust left selection to next onset"
-msgstr ""
+msgstr "Presunte výber vľavo na zaÄiatok budúceho"
-#: toolbars/TranscriptionToolBar.cpp:201
+#: toolbars/TranscriptionToolBar.cpp:197
msgid "Left-to-On"
-msgstr ""
+msgstr "Vľavo-pre-zapnutie"
-#: toolbars/TranscriptionToolBar.cpp:203
+#: toolbars/TranscriptionToolBar.cpp:199
msgid "Adjust right selection to previous offset"
-msgstr ""
+msgstr "Presunte výber právo na predchádzajúci"
-#: toolbars/TranscriptionToolBar.cpp:204
+#: toolbars/TranscriptionToolBar.cpp:200
msgid "Right-to-Off"
-msgstr ""
+msgstr "Vpravo-pre-vypnutie"
-#: toolbars/TranscriptionToolBar.cpp:206
+#: toolbars/TranscriptionToolBar.cpp:202
msgid "Adjust left selection to next offset"
-msgstr ""
+msgstr "Presunte výber vľavo na budúci"
-#: toolbars/TranscriptionToolBar.cpp:207
+#: toolbars/TranscriptionToolBar.cpp:203
msgid "Left-to-Off"
-msgstr ""
+msgstr "Vľavo-pre-vypnutie"
-#: toolbars/TranscriptionToolBar.cpp:209
+#: toolbars/TranscriptionToolBar.cpp:205
msgid "Adjust right selection to previous onset"
-msgstr ""
+msgstr "Presunte výber vpravo na predchádzajúcu nástup"
-#: toolbars/TranscriptionToolBar.cpp:210
+#: toolbars/TranscriptionToolBar.cpp:206
msgid "Right-to-On"
-msgstr ""
+msgstr "Vpravo-pre-zapnutie"
-#: toolbars/TranscriptionToolBar.cpp:212
+#: toolbars/TranscriptionToolBar.cpp:208
msgid "Select region of sound around cursor"
-msgstr ""
+msgstr "Vybrať okruh zvuku okolo kurzora"
-#: toolbars/TranscriptionToolBar.cpp:213
+#: toolbars/TranscriptionToolBar.cpp:209
msgid "Select-Sound"
-msgstr ""
+msgstr "Vybrať-Zvuk"
-#: toolbars/TranscriptionToolBar.cpp:215
+#: toolbars/TranscriptionToolBar.cpp:211
msgid "Select region of silence around cursor"
-msgstr ""
+msgstr "Vybrať okruh ticha okolo kurzora"
-#: toolbars/TranscriptionToolBar.cpp:216
+#: toolbars/TranscriptionToolBar.cpp:212
msgid "Select-Silence"
-msgstr ""
+msgstr "Vybrať-Ticho"
-#: toolbars/TranscriptionToolBar.cpp:218
+#: toolbars/TranscriptionToolBar.cpp:214
msgid "Automatically make labels from words"
-msgstr ""
+msgstr "Automaticky vytvárať popis zo slov"
-#: toolbars/TranscriptionToolBar.cpp:219
+#: toolbars/TranscriptionToolBar.cpp:215
msgid "Make Labels"
-msgstr ""
+msgstr "Vytvoriť popis"
-#: toolbars/TranscriptionToolBar.cpp:221
+#: toolbars/TranscriptionToolBar.cpp:217
msgid "Add label at selection"
-msgstr ""
+msgstr "Pridať popis k výberu"
-#: toolbars/TranscriptionToolBar.cpp:222
+#: toolbars/TranscriptionToolBar.cpp:218
msgid "Add Label"
-msgstr ""
+msgstr "Pridať popis"
-#: toolbars/TranscriptionToolBar.cpp:224
+#: toolbars/TranscriptionToolBar.cpp:220
msgid "Calibrate voicekey"
-msgstr ""
+msgstr "KalibrovaÅ¥ zvukový kľúÄ"
-#: toolbars/TranscriptionToolBar.cpp:225
+#: toolbars/TranscriptionToolBar.cpp:221
msgid "Calibrate"
-msgstr ""
+msgstr "Kalibrovať"
-#: toolbars/TranscriptionToolBar.cpp:229
+#: toolbars/TranscriptionToolBar.cpp:225
msgid "Adjust Sensitivity"
-msgstr ""
+msgstr "Nastaviť citlivosť"
-#: toolbars/TranscriptionToolBar.cpp:234
+#: toolbars/TranscriptionToolBar.cpp:230
msgid "Sensitivity"
-msgstr ""
+msgstr "Citlivosť"
-#: toolbars/TranscriptionToolBar.cpp:239
+#: toolbars/TranscriptionToolBar.cpp:235
msgid "Energy"
-msgstr ""
+msgstr "Energia"
-#: toolbars/TranscriptionToolBar.cpp:240
+#: toolbars/TranscriptionToolBar.cpp:236
msgid "Sign Changes (Low Threshold)"
-msgstr ""
+msgstr "PrihlásiÅ¥ zmeny (NÃzkoprahové)"
-#: toolbars/TranscriptionToolBar.cpp:241
+#: toolbars/TranscriptionToolBar.cpp:237
msgid "Sign Changes (High Threshold)"
-msgstr ""
+msgstr "Prihlásiť zmeny (Vysokoprahové)"
-#: toolbars/TranscriptionToolBar.cpp:242
+#: toolbars/TranscriptionToolBar.cpp:238
msgid "Direction Changes (Low Threshold)"
-msgstr ""
+msgstr "Zmeny smeru (NÃzkoprahové)"
-#: toolbars/TranscriptionToolBar.cpp:243
+#: toolbars/TranscriptionToolBar.cpp:239
msgid "Direction Changes (High Threshold)"
-msgstr ""
+msgstr "Zmeny smeru (Vysokoprahové)"
-#: toolbars/TranscriptionToolBar.cpp:251
+#: toolbars/TranscriptionToolBar.cpp:247
msgid "Key type"
-msgstr ""
+msgstr "Typ kľúÄa"
-#: ../src/widgets/AButton.cpp:181
+#: widgets/AButton.cpp:303
msgid " (disabled)"
msgstr " (zakázané)"
-#: widgets/AButton.cpp:443
+#: widgets/AButton.cpp:461
msgid "Press"
-msgstr ""
+msgstr "StlaÄiÅ¥"
-#: widgets/AButton.cpp:522
+#: widgets/AButton.cpp:540
msgid "Button"
-msgstr ""
+msgstr "TlaÄidlo"
-# i18n-hint: One-letter abbreviation for Left, in the Pan slider
+#. i18n-hint: One-letter abbreviation for Left, in VU Meter
#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
-#: ../src/widgets/ASlider.cpp:329
-#: ../src/widgets/Meter.cpp:165
+#: widgets/ASlider.cpp:612
+#: widgets/Meter.cpp:248
msgid "L"
msgstr "L"
-# better is R, for convenience
+#. i18n-hint: One-letter abbreviation for Right, in VU Meter
#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
-#: ../src/widgets/ASlider.cpp:332
-#: ../src/widgets/Meter.cpp:167
+#: widgets/ASlider.cpp:615
+#: widgets/Meter.cpp:250
msgid "R"
msgstr "R"
-#: ../src/widgets/ASlider.cpp:484
+#: widgets/ASlider.cpp:678
msgid "Center"
msgstr "Stred"
-#: ../src/widgets/ASlider.cpp:488
+#: widgets/ASlider.cpp:682
msgid "Left"
msgstr "Ľavý"
-#: ../src/widgets/ASlider.cpp:491
+#: widgets/ASlider.cpp:685
msgid "Right"
msgstr "Pravý"
-#: widgets/ErrorDialog.cpp:73 widgets/ErrorDialog.cpp:97
+#: widgets/ErrorDialog.cpp:98
msgid "Help"
-msgstr ""
+msgstr "Nápoveda"
#: widgets/ErrorDialog.cpp:137
msgid "<"
-msgstr ""
+msgstr "<"
#: widgets/ErrorDialog.cpp:138
msgid ">"
-msgstr ""
+msgstr ">"
#: widgets/ErrorDialog.cpp:142
msgid "Forwards"
-msgstr ""
+msgstr "Vpred"
#: widgets/ErrorDialog.cpp:143
msgid "Backwards"
-msgstr ""
+msgstr "Naspäť"
-#: widgets/ErrorDialog.cpp:190
+#: widgets/ErrorDialog.cpp:255
msgid "Help on the Internet"
-msgstr ""
+msgstr "Nápoveda na internete"
-#: widgets/Grabber.cpp:61
+#: widgets/Grabber.cpp:62
msgid "Grabber"
-msgstr ""
+msgstr "Grabber"
-#: widgets/Grid.cpp:616
+#: widgets/Grid.cpp:703
#, c-format
msgid "%d rows, %d columns"
-msgstr ""
+msgstr "%d riadkov, %d stĺpcov"
-#: widgets/Grid.cpp:622 widgets/Grid.cpp:749
+#: widgets/Grid.cpp:709
+#: widgets/Grid.cpp:836
#, c-format
msgid "Row %d"
-msgstr ""
+msgstr "Riadok %d"
-#: widgets/Grid.cpp:764
+#: widgets/Grid.cpp:851
msgid "Empty"
-msgstr ""
+msgstr "Prázdny"
-#: widgets/Meter.cpp:336
+#: widgets/Meter.cpp:392
msgid "Enable Meter"
-msgstr ""
+msgstr "Zapnúť ukazovateľ"
-#: widgets/Meter.cpp:338
+#: widgets/Meter.cpp:394
msgid "Disable Meter"
-msgstr ""
+msgstr "Vypnúť ukazovateľ"
-#: widgets/Meter.cpp:341
+#: widgets/Meter.cpp:397
msgid "Stop Monitoring"
-msgstr ""
+msgstr "Konec monitorovania"
-#: widgets/Meter.cpp:343
+#: widgets/Meter.cpp:399
msgid "Start Monitoring"
-msgstr ""
+msgstr "Å tart monitorovania"
-#: ../src/widgets/Meter.cpp:285
+#: widgets/Meter.cpp:403
msgid "Horizontal Stereo"
msgstr "Horizontálne stereo"
-#: ../src/widgets/Meter.cpp:286
+#: widgets/Meter.cpp:404
msgid "Vertical Stereo"
msgstr "Vertikálne Stereo"
-#: widgets/Meter.cpp:365
+#: widgets/Meter.cpp:421
msgid "Preferences..."
-msgstr ""
+msgstr "Predvoľby..."
-#: widgets/Meter.cpp:876
+#: widgets/Meter.cpp:872
msgid "Mix Volume"
-msgstr ""
+msgstr "Zmiešaná hlasitosť"
-#: widgets/Meter.cpp:1037
-msgid "This determines how often the meter is refreshed.\n"
+#: widgets/Meter.cpp:1141
+msgid ""
+"This determines how often the meter is refreshed.\n"
"If you have a slower PC you may want to select a\n"
"lower refresh rate (30 per second or lower), so that\n"
"audio qualtiy is not affected by the meter display."
msgstr ""
+"Tu sa nastavuje ako Äasto sa ukazateľ obnovuje.\n"
+"Ak máte pomaljšà poÄÃtaÄ, možno bude lepÅ¡ie zvoliÅ¥ nižšiu\n"
+" obnovovaciu frekvenciu (30 za sekundu alebo menej), aby\n"
+"kvalita zvuku nebola ovplyvÅovaná zobrazovanÃm ukazateľa."
-#: widgets/Meter.cpp:1038
+#: widgets/Meter.cpp:1142
msgid "Meter refresh rate per second [1-100]: "
-msgstr ""
+msgstr "Obnovovacia frekvencia ukazateľa za sekundu [1-100]: "
-#: widgets/Meter.cpp:1063
+#: widgets/Meter.cpp:1143
msgid "Meter Preferences"
-msgstr ""
+msgstr "Predvoľby grafického ukazateľa"
#: widgets/MultiDialog.cpp:82
msgid " Please select an action "
-msgstr ""
+msgstr "Zvoľte prosÃm akciu"
#: widgets/MultiDialog.cpp:86
msgid "Please select an action"
-msgstr ""
+msgstr "Zvoľte prosÃm akciu"
-#: widgets/ProgressDialog.cpp:97
+#: widgets/ProgressDialog.cpp:1052
msgid "Elapsed Time:"
-msgstr ""
+msgstr "Uplynulý Äas:"
-#: widgets/ProgressDialog.cpp:117
+#: widgets/ProgressDialog.cpp:1072
msgid "Remaining Time:"
-msgstr ""
+msgstr "Zostávajúci Äas: "
-#: widgets/ProgressDialog.cpp:134
+#: widgets/ProgressDialog.cpp:1100
msgid "Cancel"
-msgstr ""
+msgstr "Zrušiť"
-#: widgets/Ruler.cpp:1110 widgets/Ruler.cpp:1111
+#: widgets/Ruler.cpp:1316
+#: widgets/Ruler.cpp:1317
msgid "Vertical Ruler"
-msgstr ""
+msgstr "Zvislé meradlo"
-#: widgets/TimeTextCtrl.cpp:198
+#. i18n-hint: Format string for displaying time in seconds. Change the comma
+#. * in the middle to the 1000s separator for your locale, and the 'seconds'
+#. * on the end to the word for seconds. Don't change the numbers.
+#: widgets/TimeTextCtrl.cpp:267
msgid "01000,01000 seconds"
-msgstr ""
-
-#: widgets/TimeTextCtrl.cpp:200
+msgstr "01000,01000 sekúnd"
+
+#. i18n-hint: Format string for displaying time in hours, minutes and
+#. * seconds. Change the 'h' to the abbreviation for hours, 'm' to the
+#. * abbreviation for minutes and 's' to the abbreviation for seconds. Don't
+#. * change the numbers unless there aren't 60 seconds in a minute in your
+#. * locale
+#: widgets/TimeTextCtrl.cpp:276
msgid "0100 h 060 m 060 s"
-msgstr ""
+msgstr "0100 h 060 m 060 s"
-#: widgets/TimeTextCtrl.cpp:201
+#. i18n-hint: Name of time display format that shows time in days, hours,
+#. * minutes and seconds
+#: widgets/TimeTextCtrl.cpp:279
msgid "dd:hh:mm:ss"
-msgstr ""
-
-#: widgets/TimeTextCtrl.cpp:202
+msgstr "dd:hh:mm:ss"
+
+#. i18n-hint: Format string for displaying time in days, hours, minutes and
+#. * seconds. Change the 'days' to the word for days, 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes and 's' to the
+#. * abbreviation for seconds. Don't change the numbers unless there aren't
+#. * 24 hours in a day in your locale
+#: widgets/TimeTextCtrl.cpp:285
msgid "0100 days 024 h 060 m 060 s"
-msgstr ""
+msgstr "0100 dni 024 h 060 m 060 s"
#. i18n-hint: Name of time display format that shows time in hours,
-#. * minutes, seconds and hundreths of a second (1/100 second)
+#. * minutes, seconds and hundredths of a second (1/100 second)
#: widgets/TimeTextCtrl.cpp:288
msgid "hh:mm:ss + hundredths"
-msgstr ""
+msgstr "hh:mm:ss + stotÃn"
#. i18n-hint: Format string for displaying time in hours, minutes, seconds
#. * and hundredths of a second. Change the 'h' to the abbreviation for hours,
@@ -8642,117 +9419,188 @@ msgstr ""
#. * unless there aren't 60 minutes in an hour in your locale
#: widgets/TimeTextCtrl.cpp:294
msgid "0100 h 060 m 060.0100 s"
-msgstr ""
+msgstr "0100 h 060 m 060.0100 s"
-#: widgets/TimeTextCtrl.cpp:203
+#. i18n-hint: Name of time display format that shows time in hours,
+#. * minutes, seconds and milliseconds (1/1000 second)
+#: widgets/TimeTextCtrl.cpp:297
msgid "hh:mm:ss + milliseconds"
-msgstr ""
+msgstr "hh:mm:ss + milisekúnd "
-#: widgets/TimeTextCtrl.cpp:204
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and milliseconds. Change the 'h' to the abbreviation for hours, 'm' to the
+#. * abbreviation for minutes and 's' to the abbreviation for seconds (the
+#. * milliseconds are shown as decimal seconds) . Don't change the numbers
+#. * unless there aren't 60 minutes in an hour in your locale
+#: widgets/TimeTextCtrl.cpp:303
msgid "0100 h 060 m 060.01000 s"
-msgstr ""
+msgstr "0100 h 060 m 060.01000 s"
-#: widgets/TimeTextCtrl.cpp:205
+#. i18n-hint: Name of time display format that shows time in hours,
+#. * minutes, seconds and samples (at the current project sample rate)
+#: widgets/TimeTextCtrl.cpp:306
msgid "hh:mm:ss + samples"
-msgstr ""
+msgstr "hh:mm:ss + vzorky"
-#: widgets/TimeTextCtrl.cpp:206
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and samples. Change the 'h' to the abbreviation for hours, 'm' to the
+#. * abbreviation for minutes, 's' to the abbreviation for seconds and
+#. * translate samples . Don't change the numbers
+#. * unless there aren't 60 seconds in a minute in your locale
+#: widgets/TimeTextCtrl.cpp:312
msgid "0100 h 060 m 060 s+.# samples"
-msgstr ""
+msgstr "0100 h 060 m 060 s+.# vzorky"
-#: widgets/TimeTextCtrl.cpp:207
+#. i18n-hint: Name of time display format that shows time in samples (at the
+#. * current project sample rate)
+#: widgets/TimeTextCtrl.cpp:315
msgid "samples"
-msgstr ""
+msgstr "vzorky"
-#: widgets/TimeTextCtrl.cpp:208
+#. i18n-hint: Format string for displaying time in samples (lots of samples).
+#. * Change the ',' to the 1000s separator for your locale, and translate
+#. * samples. If 1000s aren't a base multiple for your number system, then you
+#. * can change the numbers to an appropriate one, and put a 0 on the front
+#: widgets/TimeTextCtrl.cpp:320
msgid "01000,01000,01000 samples|#"
-msgstr ""
+msgstr "01000,01000,01000 vzorky|#"
-#: widgets/TimeTextCtrl.cpp:209
+#. i18n-hint: Name of time display format that shows time in hours, minutes,
+#. * seconds and frames at 24 frames per second (commonly used for films)
+#: widgets/TimeTextCtrl.cpp:323
msgid "hh:mm:ss + film frames (24 fps)"
-msgstr ""
+msgstr "hh:mm:ss + filmových snÃmkov (24 fps)"
-#: widgets/TimeTextCtrl.cpp:210
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and frames at 24 frames per second. Change the 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
+#. * for seconds and translate 'frames' . Don't change the numbers
+#. * unless there aren't 60 seconds in a minute in your locale
+#: widgets/TimeTextCtrl.cpp:329
msgid "0100 h 060 m 060 s+.24 frames"
-msgstr ""
+msgstr "0100 h 060 m 060 s+.24 snÃmkov"
-#: widgets/TimeTextCtrl.cpp:211
+#. i18n-hint: Name of time display format that shows time in frames (lots of
+#. * frames) at 24 frames per second (commonly used for films)
+#: widgets/TimeTextCtrl.cpp:332
msgid "film frames (24 fps)"
-msgstr ""
+msgstr "filmové snÃmky (24 fps)"
-#: widgets/TimeTextCtrl.cpp:212
+#. i18n-hint: Format string for displaying time in frames at 24 frames per
+#. * second. Translate 'frames' and leave the rest alone
+#: widgets/TimeTextCtrl.cpp:335
msgid "01000,01000 frames|24"
-msgstr ""
+msgstr "01000,01000 snÃmkov|24"
-#: widgets/TimeTextCtrl.cpp:213
+#. i18n-hint: Name of time display format that shows time in hours, minutes,
+#. * seconds and frames at NTSC TV drop-frame rate (used for American /
+#. * Japanese TV, and very odd)
+#: widgets/TimeTextCtrl.cpp:339
msgid "hh:mm:ss + NTSC drop frames"
-msgstr ""
+msgstr "hh:mm:ss + NTSC odstránených snÃmkov"
-#: widgets/TimeTextCtrl.cpp:214
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and frames with NTSC drop frames. Change the 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
+#. * for seconds and translate 'frames'. Leave the |N alone, it's important!
+#: widgets/TimeTextCtrl.cpp:344
msgid "0100 h 060 m 060 s+.30 frames|N"
-msgstr ""
+msgstr "0100 h 060 m 060 s+.30 snÃmkov|N"
-#: widgets/TimeTextCtrl.cpp:215
+#. i18n-hint: Name of time display format that shows time in hours, minutes,
+#. * seconds and frames at NTSC TV non-drop-frame rate (used for American /
+#. * Japanese TV, and doesn't quite match wall time
+#: widgets/TimeTextCtrl.cpp:348
msgid "hh:mm:ss + NTSC non-drop frames"
-msgstr ""
+msgstr "hh:mm:ss + NTSC neodstránených snÃmkov"
-#: widgets/TimeTextCtrl.cpp:216
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and frames with NTSC drop frames. Change the 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
+#. * for seconds and translate 'frames'. Leave the | .999000999 alone,
+#. * the whole things really is slightly off-speed!
+#: widgets/TimeTextCtrl.cpp:354
msgid "0100 h 060 m 060 s+.030 frames| .999000999"
-msgstr ""
+msgstr "0100 h 060 m 060 s+.030 snÃmkov| .999000999"
-#: widgets/TimeTextCtrl.cpp:217
+#. i18n-hint: Name of time display format that shows time in frames at NTSC
+#. * TV frame rate (used for American / Japanese TV
+#: widgets/TimeTextCtrl.cpp:357
msgid "NTSC frames"
-msgstr ""
+msgstr "NTSC snÃmky"
-#: widgets/TimeTextCtrl.cpp:218
+#. i18n-hint: Format string for displaying time in frames with NTSC frames.
+#. * Translate 'frames' and leave the rest alone. That really is the frame
+#. * rate!
+#: widgets/TimeTextCtrl.cpp:361
msgid "01000,01000 frames|29.97002997"
-msgstr ""
+msgstr "01000,01000 snÃmkov|29.97002997"
-#: widgets/TimeTextCtrl.cpp:219
+#. i18n-hint: Name of time display format that shows time in hours, minutes,
+#. * seconds and frames at PAL TV frame rate (used for European TV)
+#: widgets/TimeTextCtrl.cpp:364
msgid "hh:mm:ss + PAL frames (25 fps)"
-msgstr ""
+msgstr "hh:mm:ss + PAL snÃmky (25 fps)"
-#: widgets/TimeTextCtrl.cpp:220
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and frames with PAL TV frames. Change the 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
+#. * for seconds and translate 'frames'. Nice simple time code!
+#: widgets/TimeTextCtrl.cpp:369
msgid "0100 h 060 m 060 s+.25 frames"
-msgstr ""
+msgstr "0100 h 060 m 060 s+.25 snÃmkov"
-#: widgets/TimeTextCtrl.cpp:221
+#. i18n-hint: Name of time display format that shows time in frames at PAL
+#. * TV frame rate (used for European TV
+#: widgets/TimeTextCtrl.cpp:372
msgid "PAL frames (25 fps)"
-msgstr ""
+msgstr "PAL snÃmkov (25 fps)"
-#: widgets/TimeTextCtrl.cpp:222
+#. i18n-hint: Format string for displaying time in frames with NTSC frames.
+#. * Translate 'frames' and leave the rest alone.
+#: widgets/TimeTextCtrl.cpp:375
msgid "01000,01000 frames|25"
-msgstr ""
+msgstr "01000,01000 snÃmkov|25"
-#: widgets/TimeTextCtrl.cpp:223
+#. i18n-hint: Name of time display format that shows time in hours, minutes,
+#. * seconds and frames at CD Audio frame rate (75 frames per second)
+#: widgets/TimeTextCtrl.cpp:378
msgid "hh:mm:ss + CDDA frames (75 fps)"
-msgstr ""
+msgstr "hh:mm:ss + CDDA snÃmkov (75 fps)"
-#: widgets/TimeTextCtrl.cpp:224
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and frames with CD Audio frames. Change the 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
+#. * for seconds and translate 'frames'.
+#: widgets/TimeTextCtrl.cpp:383
msgid "0100 h 060 m 060 s+.75 frames"
-msgstr ""
+msgstr "0100 h 060 m 060 s+.75 snÃmkov"
-#: widgets/TimeTextCtrl.cpp:225
+#. i18n-hint: Name of time display format that shows time in frames at CD
+#. * Audio frame rate (75 frames per second)
+#: widgets/TimeTextCtrl.cpp:386
msgid "CDDA frames (75 fps)"
-msgstr ""
+msgstr "CDDA snÃmkov (75 fps)"
-#: widgets/TimeTextCtrl.cpp:226
+#. i18n-hint: Format string for displaying time in frames with CD Audio
+#. * frames. Translate 'frames' and leave the rest alone
+#: widgets/TimeTextCtrl.cpp:389
msgid "01000,01000 frames|75"
-msgstr ""
+msgstr "01000,01000 snÃmkov|75"
-#: widgets/TimeTextCtrl.cpp:363
+#: widgets/TimeTextCtrl.cpp:461
msgid "Use right mouse button or context key to change format"
-msgstr ""
+msgstr "Formát zmenite pomocou pravého tlaÄÃtka na myÅ¡i alebo kontextovej klávesy"
-#: widgets/TimeTextCtrl.cpp:1376
+#: widgets/TimeTextCtrl.cpp:1495
msgid "Time Control"
-msgstr ""
+msgstr "Äasové ovládanie"
-#: ../src/widgets/Warning.cpp:53
+#: widgets/Warning.cpp:64
msgid "Don't show this warning again"
msgstr "Nezobrazovať znovu toto varovanie"
-#: ../src/xml/XMLFileReader.cpp:45
+#: xml/XMLFileReader.cpp:49
#, c-format
msgid "Could not open file: \"%s\""
msgstr "Nie je možné otvoriť súbor: \"%s\""
@@ -8760,10 +9608,170 @@ msgstr "Nie je možné otvoriť súbor: \"%s\""
#: xml/XMLFileReader.cpp:63
#, c-format
msgid "Error: %hs at line %lu"
-msgstr ""
+msgstr "Chyba: %hs na riadku %lu"
#: xml/XMLFileReader.cpp:79
#, c-format
msgid "Could not load file: \"%s\""
-msgstr ""
+msgstr "Nie je možné nahrať súbor: \"%s\""
+
+#~ msgid "No"
+#~ msgstr "Nie"
+#~ msgid "Changing block %s\n"
+#~ msgstr "MenÃm blok %s\n"
+#~ msgid ""
+#~ "<p>You don't appear to have Audacity help files on your machine. Either "
+#~ "<a href=\"http://audacity.sourceforge.net/help/documentation\">download</"
+#~ "a> the help files and then access them again from Audacity by clicking "
+#~ "<i>Help</i> then <i>Index</i>, or click <a href=\"http://www.audacityteam."
+#~ "org/manual/index.php?title=Main_Page\">here</a> to read the full Manual "
+#~ "online."
+#~ msgstr ""
+#~ "<p>Zdá sa, že súbory s nápovedou k Audacity nie sú na vaÅ¡om poÄÃtaÄi. "
+#~ "Môžete buÄ <a href=\"http://audacity.sourceforge.net/help/documentation"
+#~ "\">stiahnuť</a> nápovedu a potom sa ku nej dostať z menu <i>Nápoveda</i>, "
+#~ "<i>Obsah</i>, alebo kliknite <a href=\"http://www.audacityteam.org/manual/"
+#~ "index.php?title=Main_Page\">sem</a> a môžete si preÄÃtaÅ¥ celý manuál on-"
+#~ "line."
+#~ msgid "Disj&oin\tCtrl+Alt+J"
+#~ msgstr "Rozpo&jiť\tCtrl+Alt+J"
+#~ msgid "Select&..."
+#~ msgstr "Vybra&Å¥..."
+#~ msgid "Raw"
+#~ msgstr "Neformátované dáta"
+#~ msgid "Press F2 or double click to edit."
+#~ msgstr "Editujte stlaÄeným F2 alebo dvojklikom."
+#~ msgid "Edit"
+#~ msgstr "Upraviť"
+#~ msgid "Title:"
+#~ msgstr "Titul:"
+#~ msgid "Artist:"
+#~ msgstr "Interpret:"
+#~ msgid "Album:"
+#~ msgstr "Album:"
+#~ msgid "Composer:"
+#~ msgstr "Skladateľ:"
+#~ msgid "Lyricist:"
+#~ msgstr "Text:"
+#~ msgid "Comments:"
+#~ msgstr "Komentáre:"
+#~ msgid "Encoded By:"
+#~ msgstr "Enkódované:"
+#~ msgid "Copyright:"
+#~ msgstr "Autorské práva:"
+#~ msgid "Track Number:"
+#~ msgstr "ÄÃslo stopy:"
+#~ msgid "Year:"
+#~ msgstr "Rok:"
+#~ msgid "Genre:"
+#~ msgstr "Žáner:"
+#~ msgid "No Genres"
+#~ msgstr "Žiadne žánre"
+#~ msgid "Reset to Defaults"
+#~ msgstr "Vrátiť predvolené nastavenie"
+#~ msgid "Basic"
+#~ msgstr "Základné"
+#~ msgid "Advanced"
+#~ msgstr "RozÅ¡Ãrené"
+#~ msgid "Value"
+#~ msgstr "Hodnota"
+#~ msgid "Clea&r"
+#~ msgstr "&Vymazať"
+#~ msgid ""
+#~ "Maximum length of attribute '%s' is %d characters. Data was truncated."
+#~ msgstr "Maximálna dĺžka atribútu '%s' je %d znakov. Dáta boli skrátené."
+#~ msgid "Title"
+#~ msgstr "Titul"
+#~ msgid "Artist"
+#~ msgstr "Interpret"
+#~ msgid "Album"
+#~ msgstr "Album"
+#~ msgid "Enter a sample rate in Hz (per second) between 1 and 100000:"
+#~ msgstr "Vložte rýchlosť v Hz (vzoriek za sekundu) v rozmedzà 1 a 100000:"
+#~ msgid "Invalid rate."
+#~ msgstr "Chybná rýchlosť."
+#~ msgid "Message"
+#~ msgstr "Správa"
+#~ msgid "Frequency (Hz): from"
+#~ msgstr "Frekvencia (Hz): z"
+#~ msgid "Length (seconds): from"
+#~ msgstr "Dĺžka (sekundy): od"
+#~ msgid "Dynamic Range Compressor by Dominic Mazzoni"
+#~ msgstr "Kompresor dynamického rozsahu od Dominica Mazzoniho"
+#~ msgid "Leveller by Lynn Allan"
+#~ msgstr "Ãrovne (Leveller) od Lynna Allana"
+#~ msgid "Equalize soft and loud sections"
+#~ msgstr "VyrovnaÅ¥ tiché a hlasité Äasti"
+#~ msgid "Normalize by Dominic Mazzoni"
+#~ msgstr "Normalizácia od Dominica Mazzoniho"
+#~ msgid "Phaser by Nasca Octavian Paul"
+#~ msgstr "Fázer od Nasca Octavian Paul"
+#~ msgid "DRY"
+#~ msgstr "DRY"
+#~ msgid "WET"
+#~ msgstr "WET"
+#~ msgid "Repeat by Dominic Mazzoni && Vaughan Johnson"
+#~ msgstr "Opakovanie od Dominica Mazzoniho && Vaughana Johnsona"
+#~ msgid "%d minutes, %d seconds"
+#~ msgstr "%d minút, %d sekúnd"
+#~ msgid "Wahwah by Nasca Octavian Paul"
+#~ msgstr "Kvákadlo (Wahwah) od Nasca Octavian Paul"
+#~ msgid ""
+#~ "No tracks are selected! Use Ctrl-A (Select All)\n"
+#~ "Choose Export... to export all tracks."
+#~ msgstr ""
+#~ "Nie sú vybrané žiadne stopy!PoužitÃm Ctrl-A (vybraÅ¥ vÅ¡etko)\n"
+#~ "a Äalej prÃkazom ExportovaÅ¥... vÅ¡etky stopy vyexportujete."
+#~ msgid "Download..."
+#~ msgstr "Stiahnuť..."
+#~ msgid "E&xport"
+#~ msgstr "E&xportovať"
+#~ msgid ""
+#~ "Audacity had to make a guess at the type of file.\n"
+#~ "The Audio may be bogus.\n"
+#~ "\n"
+#~ "If the audio is bogus, try renaming the file\n"
+#~ "so that it has the correct extension before opening it."
+#~ msgstr ""
+#~ "Audacity musel vykonať odhad na typ súboru. \n"
+#~ " Audio môže byť falošné. \n"
+#~ "\n"
+#~ "Ak je zvuk falošný, skúste premenovať súbor \n"
+#~ " tak, aby bol správny aj keÄ sa otvorenie predĺži."
+#~ msgid "Error parsing Allegro file."
+#~ msgstr "Chyba pri naÄÃtanà Allegro súboru."
+#~ msgid "Error parsing MIDI file."
+#~ msgstr "Chyba pri naÄÃtanà MIDI súboru."
+#~ msgid "Importing %s File..."
+#~ msgstr "Importujem %s súbor..."
+#~ msgid ""
+#~ "&Software Playthrough: Play new track while recording it (uncheck when "
+#~ "recording \"stereo mix\")"
+#~ msgstr ""
+#~ "&Hardware Playthrough:Popri nahrávanà novej stopy ju zároveŠprehrávať"
+#~ "(odškrtnite, ak nahrávate \"stereo mix\")"
+#~ msgid "Hold recorded data in memory until recording is stopped"
+#~ msgstr "Ponechať dáta v pamäti, kým nebude nahrávanie zastavené."
+#~ msgid "&Find Library"
+#~ msgstr "&Nájsť knižnicu"
+#~ msgid "WaveformDisplay"
+#~ msgstr "Zobrazenie krivky"
+#~ msgid "WaveformDBDisplay"
+#~ msgstr "Zobrazenie DB krivky"
+#~ msgid "SpectrumDisplay"
+#~ msgstr "Zobrazenie spektra"
+#~ msgid "SpectrumLogDisplay"
+#~ msgstr "Zobrazenie Log spektra"
+#~ msgid "PitchDisplay"
+#~ msgstr "Sklon Zobrazenia"
+#~ msgid "Real-time sample rate converter:"
+#~ msgstr "Konvertor vzorkovacej frekvencie v reálnom Äase:"
+#~ msgid "High-quality sample rate converter:"
+#~ msgstr "Vysoko kvalitný konvertor vzorkovacej rýchlosti:"
+#~ msgid "Real-time dither:"
+#~ msgstr "MieÅ¡anie v reálnom Äase:"
+#~ msgid "High-quality dither:"
+#~ msgstr "Vysoko kvalitné miešanie :"
+#~ msgid "Pause Recording on Silence"
+#~ msgstr "Prerušiť nahrávanie ak je ticho"
diff --git a/locale/sl.po b/locale/sl.po
index 7675c2e..36205d5 100644
--- a/locale/sl.po
+++ b/locale/sl.po
@@ -3,11 +3,12 @@
# FIRST AUTHOR <EMAIL at ADDRESS>, YEAR.
#
msgid ""
-msgstr "Project-Id-Version: Audacity 1.4\n"
+msgstr ""
+"Project-Id-Version: Audacity 1.4\n"
"Report-Msgid-Bugs-To: audacity-translation at lists.sourceforge.net\n"
-"POT-Creation-Date: 2008-11-09 20:10+0000\n"
-"PO-Revision-Date: 2008-11-18 16:55+0100\n"
-"Last-Translator: Martin Srebotnjak <milrs at filmsi.net>\n"
+"POT-Creation-Date: 2009-06-30 22:14+0100\n"
+"PO-Revision-Date: 2009-07-11 22:23+0100\n"
+"Last-Translator: Martin Srebotnjak <miles at filmsi.net>\n"
"Language-Team: Martin Srebotnjak <miles at filmsi.net>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -18,10 +19,8 @@ msgstr "Project-Id-Version: Audacity 1.4\n"
"X-Poedit-SourceCharset: iso-8859-1\n"
#: AboutDialog.cpp:143
-#: AudacityApp.cpp:807
-#: Menus.cpp:955
-msgid "&About Audacity..."
-msgstr "&O programu Audacity ..."
+msgid "About Audacity..."
+msgstr "O programu Audacity ..."
#: AboutDialog.cpp:157
msgid "OK... Audacious!"
@@ -32,12 +31,12 @@ msgid "Audacity is a free program written by a team of volunteer <a href=\"http:
msgstr "Audacity je prosto dostopen in brezplaÄen program, ki ga je razvila skupina prostovoljnih<a href=\"http://audacity.sourceforge.net/community/developers\">razvijalcev</a> s celega sveta. Hvaležni smo <a href=\"http://sourceforge.net\">SourceForge.net</a>, ki gosti naÅ¡ projekt. Na voljo je za okolja Windows 98 ali novejÅ¡a, MacOS X, Linux ter druge Unixu podobne sisteme. StarejÅ¡e razliÄice Audacity so na voljo tudi za Mac OS 9."
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
-msgstr "To je beta razliÄica programa. Lahko vsebuje napake in nedokonÄane odlike. ZanaÅ¡amo se na vaÅ¡ odziv, obiÅ¡Äite naÅ¡o spletno stran in nam sporoÄite morebitne napake in svoje želje za razvoj na naslov <b>feedback at audacityteam.org</b> (v ang.). Äe potrebujete pomoÄ pri delu z Audacity, obiÅ¡Äite naÅ¡ <a href=\"http://audacityteam.org/forum/\">forum (v ang.)</a>."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgstr "To je beta razliÄica programa. Lahko vsebuje napake in nedokonÄane zmožnosti. ZanaÅ¡amo se na vaÅ¡ odziv, obiÅ¡Äite naÅ¡o spletno stran in nam sporoÄite morebitne napake in svoje želje za razvoj <a href=\"mailto:feedback at audacityteam.org\">na naÅ¡ naslov</a> (v ang.). Äe potrebujete pomoÄ pri delu z Audacity, obiÅ¡Äite naÅ¡ <a href=\"http://audacityteam.org/forum/\">forum (v ang.)</a>."
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
-msgstr "To je stabilna, zakljuÄena izdaja programa Audacity. Äe opazite hroÅ¡Äa ali imate predloge, nam, prosimo, piÅ¡ite na naslov <b>feedback at audacityteam.org</b>. Za veÄ informacij o rabi Audacity obiÅ¡Äite naÅ¡ <a href=\"http://audacityteam.org/forum/\">forum</a>."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgstr "To je stabilna, zakljuÄena izdaja programa Audacity. Äe opazite hroÅ¡Äa ali imate predloge, nam, prosimo, piÅ¡ite <a href=\"mailto:feedback at audacityteam.org\">na naÅ¡ naslov</a> (v angl.). Za veÄ informacij o rabi Audacity obiÅ¡Äite naÅ¡ <a href=\"http://audacityteam.org/forum/\">forum</a> (v angl.)."
#. i18n-hint: The translation of "translator_credits" will appear
#. in the credits in the About Audacity window. Use this to add
@@ -89,8 +88,8 @@ msgid "Special thanks:"
msgstr "Posebna zahvala:"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
-msgstr "Program <b>Audacity®</b> je avtorsko delo © 1999-2008 ekipe Audacity. <br>Ime <b>Audacity®</b> je registrirana blagovna znamka Dominica Mazzonija."
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgstr "Program <b>Audacity®</b> je avtorsko delo © 1999-2009 ekipe Audacity. <br>Ime <b>Audacity®</b> je registrirana blagovna znamka Dominica Mazzonija."
#: AboutDialog.cpp:258
msgid "Audacity"
@@ -99,7 +98,7 @@ msgstr "Audacity"
#. i18n-hint: Information about when audacity was compiled
#: AboutDialog.cpp:304
#: AboutDialog.cpp:317
-#: AboutDialog.cpp:473
+#: AboutDialog.cpp:468
msgid "Build Information"
msgstr "Informacije o gradnji"
@@ -159,183 +158,210 @@ msgstr "Temeljne knjižnice"
msgid "Sample rate conversion"
msgstr "Pretvorba frekvence vzorÄenja"
-#: AboutDialog.cpp:402
-#: AboutDialog.cpp:405
+#: AboutDialog.cpp:401
msgid "Audio playback and recording"
msgstr "Predvajanje in snemanje zvoka"
-#: AboutDialog.cpp:418
+#: AboutDialog.cpp:413
msgid "Features"
msgstr "Odlike"
-#: AboutDialog.cpp:422
+#: AboutDialog.cpp:417
+#: AboutDialog.cpp:420
#: AboutDialog.cpp:425
-#: AboutDialog.cpp:430
+#: AboutDialog.cpp:428
#: AboutDialog.cpp:433
-#: AboutDialog.cpp:438
+#: AboutDialog.cpp:436
#: AboutDialog.cpp:441
-#: AboutDialog.cpp:446
-#: AboutDialog.cpp:449
+#: AboutDialog.cpp:444
msgid "Plug-in support"
msgstr "Podpora za vtiÄnike"
-#: AboutDialog.cpp:454
-#: AboutDialog.cpp:457
+#: AboutDialog.cpp:449
+#: AboutDialog.cpp:452
msgid "Sound card mixer support"
msgstr "Podpora za meÅ¡alne zvoÄne vmesnike"
-#: AboutDialog.cpp:462
-#: AboutDialog.cpp:465
+#: AboutDialog.cpp:457
+#: AboutDialog.cpp:460
msgid "Pitch and Tempo Change support"
msgstr "Podpora spremembi višine tona in tempa"
-#: AboutDialog.cpp:477
+#: AboutDialog.cpp:472
msgid "Program build date: "
msgstr "Datum izdelave programa: "
-#: AboutDialog.cpp:480
-#: AboutDialog.cpp:482
+#: AboutDialog.cpp:475
+#: AboutDialog.cpp:477
msgid "Build type:"
msgstr "Vrsta gradnje:"
-#: AboutDialog.cpp:480
+#: AboutDialog.cpp:475
msgid "Debug build"
msgstr "Izdaja za razhroÅ¡Äevanje"
-#: AboutDialog.cpp:482
+#: AboutDialog.cpp:477
msgid "Release build"
msgstr "Uradna izdaja"
#. i18n-hint: The directory audacity is installed into (on *nix systems)
-#: AboutDialog.cpp:487
+#: AboutDialog.cpp:482
msgid "Installation Prefix: "
msgstr "Namestitvena predpona poti: "
-#: AboutDialog.cpp:491
+#: AboutDialog.cpp:486
msgid "Settings folder: "
msgstr "Mapa z nastavitvami:"
-#: AboutDialog.cpp:506
+#: AboutDialog.cpp:501
msgid "GPL License"
msgstr "Licenca GPL"
-#: AudacityApp.cpp:507
-#: Project.cpp:1844
+#: AudacityApp.cpp:677
+#: Project.cpp:2031
#, c-format
msgid "%s is already open in another window."
msgstr "Projekt %s je že odprt v drugem oknu."
-#: AudacityApp.cpp:509
-#: Project.cpp:1846
-#: Project.cpp:1951
-#: Project.cpp:2095
-#: Project.cpp:2232
+#: AudacityApp.cpp:679
+#: Project.cpp:2033
+#: Project.cpp:2153
+#: Project.cpp:2301
+#: Project.cpp:2433
msgid "Error opening project"
msgstr "Napaka pri odpiranju projekta"
-#: AudacityApp.cpp:541
+#: AudacityApp.cpp:705
#, c-format
-msgid "%s does not exist and could not be opened.\n"
+msgid ""
+"%s does not exist and could not be opened.\n"
"\n"
"It has been removed from the history list."
-msgstr "%s ne obstaja in je ni mogoÄe odpreti.\n"
+msgstr ""
+"%s ne obstaja in je ni mogoÄe odpreti.\n"
"\n"
"Odstranjeno s seznama zgodovine."
-#: AudacityApp.cpp:643
+#: AudacityApp.cpp:812
msgid "Master Gain Control"
msgstr "Glavni nadzor krepitve"
-#: AudacityApp.cpp:644
+#: AudacityApp.cpp:813
msgid "Input Meter"
msgstr "Vhodno merilo"
-#: AudacityApp.cpp:645
+#: AudacityApp.cpp:814
msgid "Output Meter"
msgstr "Merilo izhoda"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#: AudacityApp.cpp:809
-msgid "&Preferences...\tCtrl+,"
-msgstr "&Nastavitve ...\tCtrl+,"
+#: AudacityApp.cpp:973
+#: Menus.cpp:199
+msgid "&New"
+msgstr "&Nov"
+
+#: AudacityApp.cpp:974
+#: Menus.cpp:203
+msgid "&Open..."
+msgstr "&Odpri ..."
+
+#: AudacityApp.cpp:975
+msgid "Open &Recent..."
+msgstr "Odpri ne&davne ..."
+
+#: AudacityApp.cpp:976
+#: Menus.cpp:955
+msgid "&About Audacity..."
+msgstr "&O programu Audacity ..."
+
+#: AudacityApp.cpp:977
+msgid "&Preferences..."
+msgstr "&Nastavitve ..."
-#: AudacityApp.cpp:901
-#: AudacityApp.cpp:978
+#: AudacityApp.cpp:1068
+#: AudacityApp.cpp:1145
#, c-format
msgid "Using block size of %ld\n"
msgstr "Uporaba velikosti gruÄe %ld\n"
-#: AudacityApp.cpp:923
-#: AudacityApp.cpp:993
+#: AudacityApp.cpp:1090
+#: AudacityApp.cpp:1160
#, c-format
msgid "Unknown command line option: %s\n"
msgstr "Neznan ukaz v opravilni vrstici: %s\n"
-#: AudacityApp.cpp:1127
-msgid "Audacity could not find a place to store temporary files.\n"
+#: AudacityApp.cpp:1314
+msgid ""
+"Audacity could not find a place to store temporary files.\n"
"Please enter an appropriate directory in the preferences dialog."
-msgstr "Audacity ni naÅ¡el prostora za zaÄasne datoteke.\n"
+msgstr ""
+"Audacity ni naÅ¡el prostora za zaÄasne datoteke.\n"
"Prosimo, da vnesete primerno pot do mape v dialogu nastavitev."
-#: AudacityApp.cpp:1133
+#: AudacityApp.cpp:1320
msgid "Audacity is now going to exit. Please launch Audacity again to use the new temporary directory."
msgstr "Audacity se zapira. Prosimo, znova zaženite Audacity, da boste lahko uporabljali novo zaÄasno mapo."
-#: AudacityApp.cpp:1165
-msgid "Running two copies of Audacity simultaneously may cause\n"
+#: AudacityApp.cpp:1352
+msgid ""
+"Running two copies of Audacity simultaneously may cause\n"
"data loss or cause your system to crash.\n"
"\n"
-msgstr "Poganjanje dveh kopij Audacity hkrati lahko povzroÄi\n"
+msgstr ""
+"Poganjanje dveh kopij Audacity hkrati lahko povzroÄi\n"
"izgubo podatkov ali sesuje vaš sistem.\n"
"\n"
-#: AudacityApp.cpp:1172
-msgid "Audacity was not able to lock the temporary files directory.\n"
+#: AudacityApp.cpp:1359
+msgid ""
+"Audacity was not able to lock the temporary files directory.\n"
"This folder may be in use by another copy of Audacity.\n"
-msgstr "Audacity ne more zakleniti mape zaÄasnih datotek.\n"
+msgstr ""
+"Audacity ne more zakleniti mape zaÄasnih datotek.\n"
"To mapo morda uporablja drugi Audacity.\n"
-#: AudacityApp.cpp:1174
+#: AudacityApp.cpp:1361
msgid "Do you still want to start Audacity?"
msgstr "Želite vseeno zagnati Audacity?"
-#: AudacityApp.cpp:1176
+#: AudacityApp.cpp:1363
msgid "Error locking temporary folder"
msgstr "Napaka pri zaklepanju zaÄasne mape"
-#: AudacityApp.cpp:1214
+#: AudacityApp.cpp:1401
msgid "The system has detected that another copy of Audacity is running.\n"
msgstr "Sistem je zaznal, da Audacity že teÄe.\n"
-#: AudacityApp.cpp:1216
-msgid "Use the New or Open commands in the currently running Audacity\n"
+#: AudacityApp.cpp:1403
+msgid ""
+"Use the New or Open commands in the currently running Audacity\n"
"process to open multiple projects simultaneously.\n"
-msgstr "Uporabite ukaza Nov ali Odpri v trenutno zagnanem procesu Audacity,\n"
+msgstr ""
+"Uporabite ukaza Nov ali Odpri v trenutno zagnanem procesu Audacity,\n"
"da odprete veÄ projektov hkrati.\n"
-#: AudacityApp.cpp:1217
+#: AudacityApp.cpp:1404
msgid "Audacity is already running"
msgstr "Audacity je že zagnan."
-#: AudacityApp.cpp:1234
+#: AudacityApp.cpp:1421
msgid "Command-line options supported:"
msgstr "Podprte možnosti ukazne vrstice:"
#. i18n-hint: '-help' is the option and needs to stay in
#. * English. This displays a list of available options
-#: AudacityApp.cpp:1237
+#: AudacityApp.cpp:1424
msgid "\t-help (this message)"
msgstr "\t-help (to sporoÄilo)"
#. i18n-hint '-version' needs to stay in English.
-#: AudacityApp.cpp:1239
+#: AudacityApp.cpp:1426
msgid "\t-version (display Audacity version)"
msgstr "\t-version (prikaži razliÄico Audacity)"
#. i18n-hint '-test' is the option and needs to stay in
#. * English. This runs a set of automatic tests on audacity
#. * itself
-#: AudacityApp.cpp:1243
+#: AudacityApp.cpp:1430
msgid "\t-test (run self diagnostics)"
msgstr "\t-test (zaženi samodiagnostiko)"
@@ -343,66 +369,91 @@ msgstr "\t-test (zaženi samodiagnostiko)"
#. * English. 'nnn' is any integer number. This controls the
#. * size pieces that audacity uses when writing files to the
#. * disk
-#: AudacityApp.cpp:1248
+#: AudacityApp.cpp:1435
msgid "\t-blocksize nnn (set max disk block size in bytes)"
msgstr "\t-blocksize nnn (nastavite najveÄjo velikost diskovnega bloka v bajtih)"
-#: AudacityApp.cpp:1249
+#: AudacityApp.cpp:1436
msgid "In addition, specify the name of an audio file or Audacity project to open it."
msgstr "Dodatno navedite ime ime zvoÄne datoteke ali projekta Audacity, ki ga želite odpreti."
-#: AudacityApp.cpp:1529
-msgid "Audacity project (.AUP) files are not currently \n"
+#: AudacityApp.cpp:1747
+msgid ""
+"Audacity project (.AUP) files are not currently \n"
"associated with Audacity. \n"
"\n"
"Associate them, so they open on double-click?"
-msgstr "Projektne datoteke Audacity (.AUP) trenutno \n"
+msgstr ""
+"Projektne datoteke Audacity (.AUP) trenutno \n"
"niso povezane z Audacity.\n"
"\n"
"Jih želite povezati, tako da jih boste odpirali z dvojnim klikom?"
-#: AudacityApp.cpp:1530
+#: AudacityApp.cpp:1748
msgid "Audacity Project Files"
msgstr "Projektne datoteke Audacity"
-#: AudioIO.cpp:254
+#: AudioIO.cpp:261
msgid "Could not find any audio devices.\n"
msgstr "Nobene zvoÄne naprave ni mogoÄe najti.\n"
-#: AudioIO.cpp:255
-msgid "You will not be able to play or record audio.\n"
+#: AudioIO.cpp:262
+msgid ""
+"You will not be able to play or record audio.\n"
"\n"
-msgstr "Ne boste mogli predvajati ali snemati zvoka.\n"
+msgstr ""
+"Ne boste mogli predvajati ali snemati zvoka.\n"
"\n"
-#: AudioIO.cpp:258
+#: AudioIO.cpp:265
+#: AudioIO.cpp:285
msgid "Error: "
msgstr "Napaka:"
-#: AudioIO.cpp:261
+#: AudioIO.cpp:268
msgid "Error Initializing Audio"
msgstr "Napaka pri inicializaciji zvoka"
-#: AudioIO.cpp:1375
-msgid "Latency problem"
-msgstr "Težava z latenco"
+#: AudioIO.cpp:281
+msgid "There was an error initializing the midi i/o layer.\n"
+msgstr "Pri inicializaciji V/I ravni MIDI je prišlo do napake.\n"
+
+#: AudioIO.cpp:282
+msgid ""
+"You will not be able to play midi.\n"
+"\n"
+msgstr ""
+"Ne boste mogli predvajati MIDI.\n"
+"\n"
+
+#: AudioIO.cpp:288
+msgid "Error Initializing Midi"
+msgstr "Napaka pri inicializaciji za MIDI"
-#: AudioIO.cpp:1375
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
+#: AudioIO.cpp:1300
+msgid ""
+"Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
"Audacity has brought it back to start at zero.\n"
"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
-msgstr "Nastavitev latence je povzroÄila, da je posneti zvok skrit pred vrednostjo niÄ.\n"
+msgstr ""
+"Nastavitev latence je povzroÄila, da je posneti zvok skrit pred vrednostjo niÄ.\n"
"Audacity je posnetek vrnil nazaj na vrednost niÄ.\n"
"Morda boste morali uporabiti orodje Äasovni zamik (<---> ali F5), da povleÄete sled na pravo mesto."
+#: AudioIO.cpp:1301
+msgid "Latency problem"
+msgstr "Težava z latenco"
+
#: AutoRecovery.cpp:54
msgid "Automatic Crash Recovery"
msgstr "Samodejna obnovitev po sesutju"
#: AutoRecovery.cpp:73
-msgid "Some projects were not saved properly the last time Audacity was run.\n"
+msgid ""
+"Some projects were not saved properly the last time Audacity was run.\n"
"Fortunately, the following projects can automatically be recovered:"
-msgstr "ZadnjiÄ, ko ste uporabljali Audacity, nekateri projekti niso bili pravilno shranjeni.\n"
+msgstr ""
+"ZadnjiÄ, ko ste uporabljali Audacity, nekateri projekti niso bili pravilno shranjeni.\n"
"Na sreÄo lahko naslednje projekte obnovite samodejno:"
#: AutoRecovery.cpp:75
@@ -410,7 +461,6 @@ msgid "Recoverable projects"
msgstr "Obnovljivi projekti"
#: AutoRecovery.cpp:78
-#: Tags.cpp:2041
msgid "Name"
msgstr "Ime"
@@ -431,9 +481,11 @@ msgid "Recover Projects"
msgstr "Obnovi projekte"
#: AutoRecovery.cpp:127
-msgid "Are you sure you don't want to recover any projects?\n"
+msgid ""
+"Are you sure you don't want to recover any projects?\n"
"They can't be recovered later."
-msgstr "Ste prepriÄani, da ne želite obnoviti nobenega projekta?\n"
+msgstr ""
+"Ste prepriÄani, da ne želite obnoviti nobenega projekta?\n"
"Kasneje jih ne boste veÄ mogli obnoviti."
#: AutoRecovery.cpp:128
@@ -447,24 +499,25 @@ msgstr "Datotek v mapi samodejnega shranjevanja ni mogoÄe oÅ¡tevilÄiti"
#: AutoRecovery.cpp:147
#: AutoRecovery.cpp:184
-#: Menus.cpp:3053
-#: Menus.cpp:3065
-#: Menus.cpp:5182
-#: Project.cpp:2054
-#: Project.cpp:3615
-#: Project.cpp:3694
-#: TrackPanel.cpp:6385
-#: WaveTrack.cpp:598
-#: WaveTrack.cpp:617
-#: WaveTrack.cpp:1058
-#: WaveTrack.cpp:1077
-#: WaveTrack.cpp:2087
-#: effects/Effect.cpp:513
-#: export/ExportMP2.cpp:233
-#: prefs/DirectoriesPrefs.cpp:189
-#: prefs/KeyConfigPrefs.cpp:247
-#: toolbars/ControlToolBar.cpp:542
-#: toolbars/ControlToolBar.cpp:871
+#: Menus.cpp:3278
+#: Menus.cpp:3290
+#: Menus.cpp:5359
+#: Project.cpp:2260
+#: Project.cpp:3882
+#: Project.cpp:3968
+#: TrackPanel.cpp:6505
+#: WaveTrack.cpp:977
+#: WaveTrack.cpp:996
+#: WaveTrack.cpp:2022
+#: effects/Contrast.cpp:144
+#: effects/Contrast.cpp:154
+#: effects/Effect.cpp:546
+#: export/ExportFFmpeg.cpp:655
+#: export/ExportMP2.cpp:231
+#: prefs/DirectoriesPrefs.cpp:195
+#: prefs/KeyConfigPrefs.cpp:372
+#: toolbars/ControlToolBar.cpp:581
+#: toolbars/ControlToolBar.cpp:916
msgid "Error"
msgstr "Napaka"
@@ -475,8 +528,6 @@ msgid "Select Command"
msgstr "Izberite ukaz"
#: BatchCommandDialog.cpp:82
-#: BatchProcessDialog.cpp:454
-#: prefs/KeyConfigPrefs.cpp:142
msgid "&Command"
msgstr "&Ukaz"
@@ -485,7 +536,6 @@ msgid "&Edit Parameters"
msgstr "&Uredi parametre"
#: BatchCommandDialog.cpp:91
-#: BatchProcessDialog.cpp:455
msgid "&Parameters"
msgstr "&Parametri"
@@ -493,50 +543,54 @@ msgstr "&Parametri"
msgid "C&hoose command"
msgstr "&Izberi ukaz"
-#: BatchCommands.cpp:456
+#: BatchCommands.cpp:455
msgid "Stereo to Mono Effect not found"
msgstr "UÄinka Stereo v mono ni mogoÄe najti"
-#: BatchCommands.cpp:476
+#: BatchCommands.cpp:475
msgid "Ogg Vorbis support is not included in this build of Audacity"
msgstr "V tej razliÄici Audacity podpora Ogg Vorbis Å¡e ne deluje."
-#: BatchCommands.cpp:488
+#: BatchCommands.cpp:487
msgid "FLAC support is not included in this build of Audacity"
msgstr "V to razliÄico Audacity podpora FLAC Å¡e ni vkljuÄena."
-#: BatchCommands.cpp:492
+#: BatchCommands.cpp:491
#, c-format
msgid "Command %s not implemented yet"
msgstr "Ukaz %s še ni implementiran"
-#: BatchCommands.cpp:508
+#: BatchCommands.cpp:507
#, c-format
-msgid "Could not set parameters of effect %s\n"
+msgid ""
+"Could not set parameters of effect %s\n"
" to %s."
-msgstr "Parametre uÄinka %s ni mogoÄe nastaviti\n"
+msgstr ""
+"Parametre uÄinka %s ni mogoÄe nastaviti\n"
" na %s."
-#: BatchCommands.cpp:561
+#: BatchCommands.cpp:560
#, c-format
msgid "Your batch command of %s was not recognised."
msgstr "Vaš paketni ukaz za %s ni bil prepoznan."
-#: BatchCommands.cpp:652
+#: BatchCommands.cpp:651
#, c-format
-msgid "Apply %s with parameter(s)\n"
+msgid ""
+"Apply %s with parameter(s)\n"
"\n"
"%s"
-msgstr "Uporabi %s s parametri\n"
+msgstr ""
+"Uporabi %s s parametri\n"
"\n"
"%s"
-#: BatchCommands.cpp:653
-#: BatchCommands.cpp:658
+#: BatchCommands.cpp:652
+#: BatchCommands.cpp:657
msgid "Test Mode"
msgstr "Preizkusni naÄin"
-#: BatchCommands.cpp:657
+#: BatchCommands.cpp:656
#, c-format
msgid "Apply %s"
msgstr "Uporabi %s"
@@ -568,22 +622,17 @@ msgid "Apply to &Files..."
msgstr "Uporabi na &datotekah ..."
#: BatchProcessDialog.cpp:108
-#: BatchProcessDialog.cpp:247
-#: Tags.cpp:2080
-#: Tags.cpp:2084
-#: Tags.cpp:2384
-#: Tags.cpp:2388
+#: BatchProcessDialog.cpp:245
#: UploadDialog.cpp:180
#: effects/AvcCompressor.cpp:732
#: effects/ChangeLength.cpp:183
#: effects/SpikeCleaner.cpp:188
-#: effects/VST/VSTEffect.cpp:453
-#: effects/audiounits/AudioUnitEffect.cpp:887
+#: effects/audiounits/AudioUnitEffect.cpp:861
msgid "&Cancel"
msgstr "Pre&kliÄi"
#: BatchProcessDialog.cpp:146
-#: BatchProcessDialog.cpp:191
+#: BatchProcessDialog.cpp:189
msgid "No chain selected"
msgstr "Izbrana ni nobena veriga"
@@ -592,120 +641,126 @@ msgstr "Izbrana ni nobena veriga"
msgid "Applying '%s' to current project"
msgstr "Uporaba '%s' na trenutnem projektu"
-#: BatchProcessDialog.cpp:200
+#: BatchProcessDialog.cpp:198
msgid "Please save and close the current project first."
msgstr "Prosimo, najprej shranite in zaprite trenutni projekt."
-#: BatchProcessDialog.cpp:206
+#: BatchProcessDialog.cpp:204
msgid "Select vocal file(s) for batch CleanSpeech Chain..."
msgstr "Izberite vokalne datoteke za paketno obdelavo PoÄistiGovor ..."
-#: BatchProcessDialog.cpp:207
+#: BatchProcessDialog.cpp:205
msgid "Select file(s) for batch processing..."
msgstr "Izberite datoteke za paketno obdelavo ..."
-#: BatchProcessDialog.cpp:209
+#: BatchProcessDialog.cpp:207
msgid "Vocal files (*.wav;*.mp3)|*.wav;*.mp3|WAV files (*.wav)|*.wav|MP3 files (*.mp3)|*.mp3"
msgstr "Vokalne datoteke (*.wav;*.mp3)|*.wav;*.mp3|Datoteke WAV (*.wav)|*.wav|Datoteke MP3 (*.mp3)|*.mp3"
-#: BatchProcessDialog.cpp:210
+#: BatchProcessDialog.cpp:208
msgid "All files (*.*)|*.*|WAV files (*.wav)|*.wav|AIFF files (*.aif)|*.aif|AU files (*.au)|*.au|MP3 files (*.mp3)|*.mp3|Ogg Vorbis files (*.ogg)|*.ogg|FLAC files (*.flac)|*.flac"
msgstr "Vse datoteke (*.*)|*.*|Datoteka WAV (*.wav)|*.wav|Datoteke AIFF (*.aif)|*.aif|Datoteke AU (*.au)|*.au|Datoteke MP3 (*.mp3)|*.mp3|Datoteke Ogg Vorbis (*.ogg)|*.ogg|Datoteke FLAC (*.flac)|*.flac"
-#: BatchProcessDialog.cpp:231
+#: BatchProcessDialog.cpp:229
msgid "Applying..."
msgstr "Izvajanje ..."
-#: BatchProcessDialog.cpp:241
+#: BatchProcessDialog.cpp:239
msgid "File"
msgstr "Datoteka"
+#: BatchProcessDialog.cpp:352
#: BatchProcessDialog.cpp:356
-#: BatchProcessDialog.cpp:360
-#: BatchProcessDialog.cpp:361
+#: BatchProcessDialog.cpp:357
msgid "Edit Chains"
msgstr "Uredi verige"
-#: BatchProcessDialog.cpp:416
+#: BatchProcessDialog.cpp:412
msgid "&Chains"
msgstr "&Verige"
-#: BatchProcessDialog.cpp:435
-#: Tags.cpp:826
-#: Tags.cpp:1465
-#: Tags.cpp:2064
+#: BatchProcessDialog.cpp:431
+#: Tags.cpp:825
msgid "&Add"
msgstr "&Dodaj"
-#: BatchProcessDialog.cpp:436
+#: BatchProcessDialog.cpp:432
#: LabelDialog.cpp:128
-#: Tags.cpp:827
-#: Tags.cpp:1466
-#: Tags.cpp:2065
-#: TrackPanel.cpp:4176
+#: Tags.cpp:826
msgid "&Remove"
msgstr "&Odstrani"
-#: BatchProcessDialog.cpp:437
+#: BatchProcessDialog.cpp:433
msgid "Re&name"
msgstr "&Preimenuj"
-#: BatchProcessDialog.cpp:443
+#: BatchProcessDialog.cpp:439
msgid "C&hain (Double-Click or press SPACE to edit)"
msgstr "V&eriga (dvokliknite ali pritisnite preslednico za urejanje)"
#. i18n-hint: This is the number of the command in the list
-#: BatchProcessDialog.cpp:453
-msgid "No"
-msgstr "Ne"
+#: BatchProcessDialog.cpp:449
+msgid "Num"
+msgstr "Å t"
+
+#: BatchProcessDialog.cpp:450
+#: commands/CommandManager.cpp:108
+#: prefs/KeyConfigPrefs.cpp:180
+msgid "Command"
+msgstr "Ukaz"
+
+#: BatchProcessDialog.cpp:451
+#: effects/Contrast.cpp:279
+msgid "Parameters"
+msgstr "Parametri"
-#: BatchProcessDialog.cpp:459
+#: BatchProcessDialog.cpp:455
msgid "&Insert"
msgstr "&Vstavi"
-#: BatchProcessDialog.cpp:460
+#: BatchProcessDialog.cpp:456
msgid "De&lete"
msgstr "&Izbriši"
-#: BatchProcessDialog.cpp:461
+#: BatchProcessDialog.cpp:457
msgid "Move &Up"
msgstr "Premakni &gor"
-#: BatchProcessDialog.cpp:462
+#: BatchProcessDialog.cpp:458
msgid "Move &Down"
msgstr "Premakni &dol"
-#: BatchProcessDialog.cpp:463
+#: BatchProcessDialog.cpp:459
msgid "De&faults"
msgstr "P&rivzeto"
-#: BatchProcessDialog.cpp:507
+#: BatchProcessDialog.cpp:503
msgid "- END -"
msgstr "- KONEC -"
-#: BatchProcessDialog.cpp:540
+#: BatchProcessDialog.cpp:536
#, c-format
msgid "%s changed"
msgstr "%s je spremenjena"
-#: BatchProcessDialog.cpp:541
+#: BatchProcessDialog.cpp:537
msgid "Do you want to save the changes?"
msgstr "Želite shraniti spremembe?"
-#: BatchProcessDialog.cpp:623
+#: BatchProcessDialog.cpp:619
msgid "Enter name of new chain"
msgstr "Vnesite ime nove verige"
-#: BatchProcessDialog.cpp:634
+#: BatchProcessDialog.cpp:630
msgid "Name must not be blank"
msgstr "Ime ne sme biti prazno"
-#: BatchProcessDialog.cpp:643
+#: BatchProcessDialog.cpp:639
#, c-format
msgid "Names may not contain '%c' and '%c'"
msgstr "Imena ne smejo vsebovati '%c'in '%c'"
-#: BatchProcessDialog.cpp:673
+#: BatchProcessDialog.cpp:669
#, c-format
msgid "Are you sure you want to delete %s?"
msgstr "Ste prepriÄani, da želite izbrisati %s?"
@@ -718,259 +773,275 @@ msgstr "Odstranjevanje odvisnosti"
msgid "Copying audio data into project..."
msgstr "Kopiranje zvoÄnih podatkov v projekt ..."
-#: Dependencies.cpp:223
-msgid "Your project currently depends on the presence of other files.\n"
+#: Dependencies.cpp:226
+msgid ""
+"Your project currently depends on the presence of other files.\n"
"Copy audio from the following files into your project to make it self-contained?\n"
"This will need more disc space but is safer."
-msgstr "Vaš projekt je trenutno odvisen od prisotnosti drugih datotek.\n"
+msgstr ""
+"Vaš projekt je trenutno odvisen od prisotnosti drugih datotek.\n"
"Želite kopirati zvok naslednjih datotek v svoj projekt, da ga naredite samozadostnega?\n"
"Zahteva veÄ prostora na disku, vendar je varneje."
-#: Dependencies.cpp:270
+#: Dependencies.cpp:273
msgid "Project depends on other audio files"
msgstr "Projekt je odvisen od drugih zvoÄnih datotek"
-#: Dependencies.cpp:291
+#: Dependencies.cpp:294
msgid "Project Dependencies"
msgstr "Odvisnosti projekta"
-#: Dependencies.cpp:294
+#: Dependencies.cpp:297
msgid "Audio file"
msgstr "ZvoÄna datoteka"
-#: Dependencies.cpp:296
+#: Dependencies.cpp:299
msgid "Disk space"
msgstr "Prostor na disku"
-#: Dependencies.cpp:301
+#: Dependencies.cpp:304
msgid "Copy Selected Audio Into Project"
msgstr "Kopiraj izbrane zvoke v projekt"
-#: Dependencies.cpp:308
-#: Dependencies.cpp:414
+#: Dependencies.cpp:311
+#: Dependencies.cpp:417
msgid "Cancel Save"
msgstr "PrekliÄi shranjevanje"
-#: Dependencies.cpp:310
+#: Dependencies.cpp:313
msgid "Do Not Copy Any Audio"
msgstr "Ne kopiraj nobenega zvoka"
-#: Dependencies.cpp:312
+#: Dependencies.cpp:315
msgid "Copy All Audio into Project (Safer)"
msgstr "Kopiraj ves zvok v projekt (varneje)"
-#: Dependencies.cpp:321
-#: Dependencies.cpp:326
+#: Dependencies.cpp:324
+#: Dependencies.cpp:329
msgid "Ask me"
msgstr "Vprašaj me"
-#: Dependencies.cpp:322
+#: Dependencies.cpp:325
msgid "Always copy all audio (safest)"
msgstr "Vedno kopiraj vse zvoke (najbolj varno)"
-#: Dependencies.cpp:323
+#: Dependencies.cpp:326
msgid "Never copy any audio"
msgstr "Nikoli ne kopiraj zvokov"
-#: Dependencies.cpp:325
+#: Dependencies.cpp:328
msgid "Whenever a project depends on other files:"
msgstr "Vsakokrat, ko je projekt odvisen od drugih datotek:"
-#: Dependencies.cpp:413
+#: Dependencies.cpp:416
msgid "If you proceed, your project will not be saved to disk. Is this what you want?"
msgstr "Äe nadaljujete, vaÅ¡ projekt ne bo shranjen na disk. Res to želite storiti?"
-#: Dependencies.cpp:453
+#: Dependencies.cpp:456
msgid "Your project is self-contained; it does not depend on any external audio files."
msgstr "VaÅ¡ projekt samozadosten; ni odvisen od nobene zunanje zvoÄne datoteke."
-#: Dependencies.cpp:454
+#: Dependencies.cpp:457
msgid "Dependency check"
msgstr "Preverjanje odvisnosti"
-#: DirManager.cpp:137
-msgid "Warning: there is very little free disk space left on this volume.\n"
-"Please select another temporary directory in your preferences."
-msgstr "Opozorilo: zmanjkuje prostora na tem disku.\n"
+#: DirManager.cpp:136
+msgid ""
+"There is very little free disk space left on this volume.\n"
+"Please select another temporary directory in Preferences."
+msgstr ""
+"Na tem pogonu zmanjkuje prostora.\n"
"Prosimo, da izberete drugo zaÄasno mapo v oknu Nastavitve."
-#: DirManager.cpp:223
-#: DirManager.cpp:254
-#: DirManager.cpp:337
+#: DirManager.cpp:221
+#: DirManager.cpp:252
+#: DirManager.cpp:335
msgid "Progress"
msgstr "Potek"
-#: DirManager.cpp:288
+#: DirManager.cpp:286
msgid "Cleaning up temporary files"
msgstr "ÄiÅ¡Äenje zaÄasnih datotek"
-#: DirManager.cpp:338
+#: DirManager.cpp:336
msgid "Saving project data files"
msgstr "Shranjevanje projektnih datotek"
-#: DirManager.cpp:410
+#: DirManager.cpp:408
msgid "Cleaning up cache directories"
msgstr "ÄiÅ¡Äenje map medpomnilnika"
-#: DirManager.cpp:505
+#: DirManager.cpp:503
#, c-format
-msgid "Audacity found an orphaned blockfile %s! \n"
+msgid ""
+"Audacity found an orphaned blockfile %s! \n"
"Please consider saving and reloading the project to perform a complete project check.\n"
-msgstr "Preveritev projekta je našla osirotelo blokovno datoteko %s! \n"
+msgstr ""
+"Preveritev projekta je našla osirotelo blokovno datoteko %s! \n"
"Predlagamo shranitev in ponovno odprtje projekta, da izvedete popolno preveritev projekta.\n"
#. i18n-hint: This is the pattern for filenames that are created
#. when a file needs to be backed up to a different name. For
#. example, mysong would become mysong-old1, mysong-old2, etc.
-#: DirManager.cpp:1094
+#: DirManager.cpp:1092
#, c-format
msgid "%s-old%d"
msgstr "%s-stari%d"
-#: DirManager.cpp:1102
+#: DirManager.cpp:1100
msgid "Unable to open/create test file"
msgstr "Preizkusne datoteke ni mogoÄe odpreti/ustvariti"
-#: DirManager.cpp:1111
+#: DirManager.cpp:1109
#, c-format
msgid "Unable to remove '%s'"
msgstr "'%s' ni mogoÄe odstraniti"
-#: DirManager.cpp:1116
+#: DirManager.cpp:1114
#, c-format
msgid "Renamed file: %s\n"
msgstr "Preimenovana datoteka: %s\n"
-#: DirManager.cpp:1160
+#: DirManager.cpp:1164
#, c-format
msgid "Unable to rename '%s' to '%s'"
msgstr "'%s' ni mogoÄe preimenovati v '%s'"
-#: DirManager.cpp:1183
+#: DirManager.cpp:1181
#, c-format
msgid "Changed block %s to new alias name\n"
-msgstr ""
+msgstr "Blok %s spremenjen v nov vzdevek\n"
-#: DirManager.cpp:1224
-#: DirManager.cpp:1515
+#: DirManager.cpp:1247
+#: DirManager.cpp:1538
msgid "Inspecting project file data..."
msgstr "Pregledovanje podatkov projektne datoteke ..."
-#: DirManager.cpp:1240
+#: DirManager.cpp:1263
#, c-format
msgid "Orphaned blockfile: (%s)"
msgstr "Osirotela bloÄna datoteka: (%s)"
-#: DirManager.cpp:1265
+#: DirManager.cpp:1288
#, c-format
msgid "Missing alias file: (%s)"
msgstr "ManjkajoÄa psevdo-datoteka: (%s)"
-#: DirManager.cpp:1285
+#: DirManager.cpp:1308
#, c-format
msgid "Missing summary file: (%s.auf)"
msgstr "ManjkajoÄa datoteka s povzetkom: (%s.auf)"
-#: DirManager.cpp:1305
+#: DirManager.cpp:1328
#, c-format
msgid "Missing data file: (%s.au)"
msgstr "ManjkajoÄa podatkovna datoteka: (%s.au)"
-#: DirManager.cpp:1319
-msgid "Project check found inconsistencies inspecting the loaded project data;\n"
+#: DirManager.cpp:1342
+msgid ""
+"Project check found inconsistencies inspecting the loaded project data;\n"
"click 'Details' for a complete list of errors, or 'OK' to proceed to more options."
-msgstr "Preveritev projekta je pokazala na nekonsistentnost pri naloženih podatkih projekta;\n"
+msgstr ""
+"Preveritev projekta je pokazala na nekonsistentnost pri naloženih podatkih projekta;\n"
"kliknite 'Podrobnosti' za popoln seznam napak ali 'V redu' za nadaljevanje k veÄ možnostim."
-#: DirManager.cpp:1331
+#: DirManager.cpp:1354
#, c-format
-msgid "Project check found %d orphaned blockfile[s]. These files are\n"
+msgid ""
+"Project check found %d orphaned blockfile[s]. These files are\n"
"unused and probably left over from a crash or some other bug.\n"
"They should be deleted to avoid disk contention."
-msgstr "Preveritev projekta je našla %d osirotelih blokovnih datotek. Te datoteke\n"
+msgstr ""
+"Preveritev projekta je našla %d osirotelih blokovnih datotek. Te datoteke\n"
"niso v rabi in so najbrž ostale od sesutja ali kakÅ¡nega drugega hroÅ¡Äa.\n"
"Najbolje bi jih bilo izbrisati, da se izognete težavam v prihodnje."
-#: DirManager.cpp:1336
+#: DirManager.cpp:1359
msgid "Delete orphaned files [safe and recommended]"
msgstr "IzbriÅ¡i osirotele datoteke [varno in priporoÄeno]"
-#: DirManager.cpp:1337
+#: DirManager.cpp:1360
msgid "Continue without deleting; silently work around the extra files"
msgstr "Nadaljuj brez brisanja; tiho delaj z dodatnimi datotekami"
-#: DirManager.cpp:1338
+#: DirManager.cpp:1361
msgid "Close project immediately with no changes"
msgstr "Nemudoma zapri projekt brez sprememb"
-#: DirManager.cpp:1340
-#: DirManager.cpp:1375
-#: DirManager.cpp:1421
-#: DirManager.cpp:1463
-#: export/Export.cpp:576
-#: export/Export.cpp:597
-#: export/Export.cpp:616
-#: widgets/Warning.cpp:55
+#: DirManager.cpp:1363
+#: DirManager.cpp:1398
+#: DirManager.cpp:1444
+#: DirManager.cpp:1486
+#: export/Export.cpp:581
+#: export/Export.cpp:602
+#: export/Export.cpp:621
+#: widgets/Warning.cpp:53
msgid "Warning"
msgstr "Opozorilo"
-#: DirManager.cpp:1366
+#: DirManager.cpp:1389
#, c-format
-msgid "Project check detected %d input file[s] being used in place\n"
+msgid ""
+"Project check detected %d input file[s] being used in place\n"
"('alias files') are now missing. There is no way for Audacity\n"
"to recover these files automatically; you may choose to\n"
"permanently fill in silence for the missing files, temporarily\n"
"fill in silence for this session only, or close the project now\n"
"and try to restore the missing files by hand."
-msgstr "Preveritev projekta je zaznala, da %d nadomestnih vhodnih datotek\n"
+msgstr ""
+"Preveritev projekta je zaznala, da %d nadomestnih vhodnih datotek\n"
"('psevdo-datoteke') manjkajo. Audacity na noben naÄin ne more\n"
"teh datotek samodejno obnoviti; izberete lahko, da se manjkajoÄe\n"
"datoteke za vedno zapolnijo s tiÅ¡ino, zaÄasno zapolnijo\n"
"s tišino le za to sejo ali zaprete projekt zdaj in poskusite\n"
"roÄno obnoviti manjkajoÄe datoteke."
-#: DirManager.cpp:1371
+#: DirManager.cpp:1394
msgid "Replace missing data with silence [permanent upon save]"
msgstr "Zamenjaj manjkajoÄe podatke s tiÅ¡ino [vedno ob shranjevanju]"
-#: DirManager.cpp:1372
-#: DirManager.cpp:1460
+#: DirManager.cpp:1395
+#: DirManager.cpp:1483
msgid "Temporarily replace missing data with silence [this session only]"
msgstr "ZaÄasno zamenjaj manjkajoÄe podatke s tiÅ¡ino [samo za to sejo]"
-#: DirManager.cpp:1373
-#: DirManager.cpp:1419
-#: DirManager.cpp:1461
+#: DirManager.cpp:1396
+#: DirManager.cpp:1442
+#: DirManager.cpp:1484
msgid "Close project immediately with no further changes"
msgstr "Takoj zapri projekt brez nadaljnjih sprememb"
-#: DirManager.cpp:1412
+#: DirManager.cpp:1435
#, c-format
-msgid "Project check detected %d missing summary file[s] (.auf).\n"
+msgid ""
+"Project check detected %d missing summary file[s] (.auf).\n"
"Audacity can fully regenerate these summary files from the\n"
"original audio data in the project."
-msgstr "Preveritev projekta je zaznala %d manjkajoÄih datotek povzetkov (.auf).\n"
+msgstr ""
+"Preveritev projekta je zaznala %d manjkajoÄih datotek povzetkov (.auf).\n"
"Audacity lahko v celoti regenerira te datoteke povzetkov iz\n"
"izvornih zvoÄnih podatkov projekta."
-#: DirManager.cpp:1417
+#: DirManager.cpp:1440
msgid "Regenerate summary files [safe and recommended]"
msgstr "Ponovno ustvari datoteke povzetka [varno in priporoÄeno]"
-#: DirManager.cpp:1418
+#: DirManager.cpp:1441
msgid "Fill in silence for missing display data [this session only]"
msgstr "Zapolni s tiÅ¡ino manjkajoÄe podatke za prikaz [samo za to sejo]"
-#: DirManager.cpp:1454
+#: DirManager.cpp:1477
#, c-format
-msgid "Project check detected %d missing audio data blockfile[s] (.au), \n"
+msgid ""
+"Project check detected %d missing audio data blockfile[s] (.au), \n"
"probably due to a bug, system crash or accidental deletion.\n"
"There is no way for Audacity to recover this lost data\n"
"automatically; you may choose to permanently fill in silence\n"
"for the missing data, temporarily fill in silence for this\n"
"session only, or close the project now and try to restore the\n"
"missing data by hand."
-msgstr "Preveritev projekta je zaznala, da manjka %d zvoÄnih podatkovnih blokov (.au), \n"
+msgstr ""
+"Preveritev projekta je zaznala, da manjka %d zvoÄnih podatkovnih blokov (.au), \n"
"najverjetneje zaradi hroÅ¡Äev, sesutja sistema ali izbrisa po nesreÄi.\n"
"Audacity na noben naÄin ne more obnoviti izgubljenih podatkov\n"
"samodejno; izberete lahko trajno zapolnitev manjkajoÄih podatkov\n"
@@ -978,27 +1049,27 @@ msgstr "Preveritev projekta je zaznala, da manjka %d zvoÄnih podatkovnih blokov
"zaprete projekt zdaj in poskusite obnoviti manjkajoÄe\n"
"podatke roÄno."
-#: DirManager.cpp:1459
+#: DirManager.cpp:1482
msgid "Replace missing data with silence [permanent immediately]"
msgstr "Zamenjaj manjkajoÄe podatke s tiÅ¡ino [vedno odslej]"
-#: DirManager.cpp:1487
+#: DirManager.cpp:1510
msgid "Cleaning up unused directories in project data..."
msgstr "ÄiÅ¡Äenje neuporabljenih map v podatkih projekta ..."
-#: DirManager.cpp:1558
+#: DirManager.cpp:1587
msgid "Caching audio"
msgstr "Medpomnjenje zvoka"
-#: DirManager.cpp:1559
+#: DirManager.cpp:1588
msgid "Caching audio into memory..."
msgstr "Shranjevanje zvoka v spomin ..."
-#: DirManager.cpp:1592
+#: DirManager.cpp:1623
msgid "Saving recorded audio"
msgstr "Shranjevanje posnetega zvoka"
-#: DirManager.cpp:1593
+#: DirManager.cpp:1624
msgid "Saving recorded audio to disk..."
msgstr "Shranjevanje posnetega zvoka na disk ..."
@@ -1006,254 +1077,309 @@ msgstr "Shranjevanje posnetega zvoka na disk ..."
msgid "Rectangular"
msgstr "Pravokotno"
-#: FFmpeg.cpp:36
+#: FFmpeg.cpp:38
msgid "FFmpeg support not compiled in"
-msgstr ""
+msgstr "Podpora za FFmpeg ni prevedena v"
-#: FFmpeg.cpp:101
-msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
+#: FFmpeg.cpp:103
+msgid ""
+"FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
+"FFmpeg je bil nastavljen v Možnostih in že uspešno naložen, \n"
+"vendar ga tokrat Audacity ob zagonu ne more naložiti. \n"
+"\n"
+"Morda znova preverite Nastavitve > Knjižnice in ga ponovno nastavite."
-#: FFmpeg.cpp:104
+#: FFmpeg.cpp:106
msgid "FFmpeg startup failed"
-msgstr ""
+msgstr "Zagon FFmpeg ni uspel"
-#: FFmpeg.cpp:115
+#: FFmpeg.cpp:114
msgid "FFmpeg library not found"
msgstr "Knjižnice FFmpeg ni mogoÄe najti"
-#: FFmpeg.cpp:170
+#: FFmpeg.cpp:408
msgid "Locate FFmpeg"
msgstr "Najdi FFmpeg"
-#: FFmpeg.cpp:190
+#: FFmpeg.cpp:428
#, c-format
msgid "Audacity needs the file %s to import and export audio via FFmpeg."
msgstr "Audacity potrebuje datoteko %s za uvoz in izvoz zvoka prek FFmpeg."
-#: FFmpeg.cpp:196
+#: FFmpeg.cpp:434
#: export/ExportMP3.cpp:562
#, c-format
msgid "Location of %s:"
msgstr "Mesto %s:"
-#: FFmpeg.cpp:205
+#: FFmpeg.cpp:443
#: export/ExportMP3.cpp:571
#, c-format
msgid "To find %s, click here -->"
msgstr "Äe želite poiskati %s, kliknite sem -->"
-#: FFmpeg.cpp:211
+#: FFmpeg.cpp:449
#: export/ExportMP3.cpp:577
msgid "Browse..."
msgstr "Prebrskaj ..."
-#: FFmpeg.cpp:212
+#: FFmpeg.cpp:450
msgid "To get a free copy of FFmpeg, click here -->"
msgstr "Äe želite brezplaÄno kopijo FFmpeg, kliknite sem -->"
-#: FFmpeg.cpp:215 export/ExportMP3.cpp:579
+#: FFmpeg.cpp:451
+#: export/ExportMP3.cpp:579
msgid "Download"
-msgstr ""
+msgstr "Prenesi"
#. i18n-hint: It's asking for the location of a file, for
#. example, "Where is lame_enc.dll?" - you could translate
#. "Where would I find the file %s" instead if you want.
-#: FFmpeg.cpp:235
+#: FFmpeg.cpp:473
#: export/ExportMP3.cpp:601
#, c-format
msgid "Where is %s?"
msgstr "Kje je %s?"
-#: FFmpeg.cpp:407
+#: FFmpeg.cpp:643
msgid "Failed to find compatible FFmpeg libraries"
-msgstr ""
+msgstr "Kompatibilnih knjižnic FFmpeg ni mogoÄe najti"
-#: FFmpeg.h:95
+#: FFmpeg.h:97
msgid "FFmpeg not found"
msgstr "FFmpeg ni mogoÄe najti"
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid ""
+"Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
+"Audacity skuÅ¡a uporabiti knjižnice FFmpeg za uvoz zvoÄne datoteke,\n"
+"vendar knjižnic ni mogoÄe najti.\n"
+"\n"
+"Äe želite uporabljati uvoz FFmpeg, odprite Nastavitve->Knjižnice,\n"
+"da prenesete ali poiÅ¡Äete knjižnice FFmpeg."
-#: FFmpeg.h:109
+#: FFmpeg.h:119
msgid "Do not show this warning again"
-msgstr ""
+msgstr "Tega opozorila ne prikaži veÄ"
-#: FFmpeg.h:251
+#: FFmpeg.h:264
msgid "Only avformat.dll|*avformat*.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
msgstr "Samo avformat.dll|*avformat*.dll|DinamiÄno povezane knjižnice (*.dll)|*.dll|Vse datoteke (*.*)|*"
-#: FFmpeg.h:268
+#: FFmpeg.h:297
msgid "Dynamic Libraries (*.dylib)|*.dylib|All Files (*)|*"
-msgstr ""
+msgstr "DinamiÄne knjižnice (*.dylib)|*.dylib|Vse datoteke (*)|*"
-#: FFmpeg.h:295
+#: FFmpeg.h:324
msgid "Only libavformat.so|libavformat.so*|Dynamically Linked Libraries (*.so*)|*.so*|All Files (*)|*"
-msgstr ""
+msgstr "Samo libavformat.so|libavformat.so*|DinamiÄno povezane knjižnice (*.so)|*.so|Vse datoteke (*)|*"
-#: FreqWindow.cpp:103
+#: FreqWindow.cpp:107
msgid "Frequency Analysis"
msgstr "Analiza frekvence"
-#: FreqWindow.cpp:139
-#: TrackPanel.cpp:556
-#: prefs/GUIPrefs.cpp:156
+#: FreqWindow.cpp:163
+#: TrackPanel.cpp:611
+#: prefs/TracksPrefs.cpp:58
msgid "Spectrum"
msgstr "Spekter"
-#: FreqWindow.cpp:140
+#: FreqWindow.cpp:164
msgid "Standard Autocorrelation"
msgstr "Standardna samodejna korelacija"
-#: FreqWindow.cpp:141
+#: FreqWindow.cpp:165
msgid "Cuberoot Autocorrelation"
msgstr "Samodejna korelacija Cuberoot"
-#: FreqWindow.cpp:142
+#: FreqWindow.cpp:166
msgid "Enhanced Autocorrelation"
msgstr "Razširjena samodejna korelacija"
#. i18n-hint: This is a technical term, derived from the word
#. "spectrum". Do not translate it unless you are sure you
#. know the correct technical word in your language.
-#: FreqWindow.cpp:146
+#: FreqWindow.cpp:170
msgid "Cepstrum"
msgstr "Cepstrum"
-#: FreqWindow.cpp:150
-#: FreqWindow.cpp:154
+#: FreqWindow.cpp:174
+#: FreqWindow.cpp:178
msgid "Algorithm"
msgstr "Algoritem"
-#: FreqWindow.cpp:169
-#: FreqWindow.cpp:173
+#: FreqWindow.cpp:193
+#: FreqWindow.cpp:197
#: HistoryWindow.cpp:79
msgid "Size"
msgstr "Velikost"
#. i18n-hint: This refers to a "window function", used in the
#. Frequency analyze dialog box.
-#: FreqWindow.cpp:183
+#: FreqWindow.cpp:207
msgid " window"
msgstr " okno"
-#: FreqWindow.cpp:187
-#: FreqWindow.cpp:191
+#: FreqWindow.cpp:211
+#: FreqWindow.cpp:215
msgid "Function"
msgstr "Funkcija"
-#: FreqWindow.cpp:196
+#: FreqWindow.cpp:220
msgid "Linear frequency"
msgstr "Linearna frekvenca"
-#: FreqWindow.cpp:197
+#: FreqWindow.cpp:221
msgid "Log frequency"
msgstr "Frekvenca zapisovanja"
-#: FreqWindow.cpp:201
-#: FreqWindow.cpp:205
+#: FreqWindow.cpp:225
+#: FreqWindow.cpp:229
msgid "Axis"
msgstr "Os"
-#: FreqWindow.cpp:212
+#: FreqWindow.cpp:236
#: LabelDialog.cpp:130
-#: Menus.cpp:241
-#: Menus.cpp:276
+#: Menus.cpp:256
msgid "&Export..."
msgstr "&Izvozi ..."
-#: FreqWindow.cpp:213
-#: export/ExportCL.cpp:325
-#: export/ExportMultiple.cpp:347
+#: FreqWindow.cpp:237
+#: effects/Contrast.cpp:395
+#: export/ExportCL.cpp:358
+#: export/ExportMultiple.cpp:344
msgid "Export"
msgstr "Izvozi"
-#: FreqWindow.cpp:216
-#: FreqWindow.cpp:217
-#: widgets/ErrorDialog.cpp:161
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr "&Ponovno izriši"
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr "Ponovno izriši"
+
+#: FreqWindow.cpp:244
+#: FreqWindow.cpp:245
+#: widgets/ErrorDialog.cpp:190
msgid "Close"
msgstr "Zapri"
-#: FreqWindow.cpp:280
-#: FreqWindow.cpp:410
-#: effects/AutoDuck.cpp:489
-#: effects/AutoDuck.cpp:523
-#: effects/AutoDuck.cpp:792
-#: effects/Compressor.cpp:352
+#: FreqWindow.cpp:247
+#: FreqWindow.cpp:250
+#: effects/Equalization.cpp:1300
+#: effects/Equalization.cpp:1303
+msgid "Grids"
+msgstr "Mreže"
+
+#: FreqWindow.cpp:314
+#: FreqWindow.cpp:516
+#: effects/AutoDuck.cpp:503
+#: effects/AutoDuck.cpp:537
+#: effects/AutoDuck.cpp:806
#: effects/Compressor.cpp:360
-#: effects/Equalization.cpp:1123
-#: effects/Equalization.cpp:1125
-#: effects/Equalization.cpp:1133
-#: effects/Equalization.cpp:1199
-#: effects/Equalization.cpp:1408
-#: effects/Equalization.cpp:1419
-#: effects/Normalize.cpp:367
-#: widgets/Meter.cpp:417
+#: effects/Compressor.cpp:368
+#: effects/Equalization.cpp:1142
+#: effects/Equalization.cpp:1144
+#: effects/Equalization.cpp:1152
+#: effects/Equalization.cpp:1218
+#: effects/Equalization.cpp:1434
+#: effects/Equalization.cpp:1445
+#: effects/Normalize.cpp:372
+#: widgets/Meter.cpp:406
msgid "dB"
msgstr "dB"
#. i18n-hint: This is the abbreviation for "Hertz", or
#. cycles per second.
-#: FreqWindow.cpp:295
-#: FreqWindow.cpp:450
-#: effects/Equalization.cpp:1164
-#: effects/Equalization.cpp:1195
-#: import/ImportRaw.cpp:399
+#: FreqWindow.cpp:330
+#: FreqWindow.cpp:556
+#: effects/Equalization.cpp:1183
+#: effects/Equalization.cpp:1214
+#: import/ImportRaw.cpp:409
msgid "Hz"
msgstr "Hz"
-#: FreqWindow.cpp:394
+#: FreqWindow.cpp:422
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "Za risanje spektra morajo imeti vse izbrane sledi enako mero vzorÄenja."
+
+#: FreqWindow.cpp:449
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "Izbranega je preveÄ zvoka. Analiziranih bo le prvih %.1f sekund zvoka."
+
+#: FreqWindow.cpp:500
msgid "Not enough data selected."
msgstr "Oznaka je premajhna."
-#: FreqWindow.cpp:458
-#: effects/AutoDuck.cpp:794
+#: FreqWindow.cpp:564
+#: effects/AutoDuck.cpp:808
msgid "s"
msgstr "s"
-#: FreqWindow.cpp:787
+#: FreqWindow.cpp:898
#, c-format
msgid "Cursor: %d Hz (%s) = %d dB Peak: %d Hz (%s) = %.1f dB"
msgstr "Kazalka: %d Hz (%s) = %d dB Vrh: %d Hz (%s) = %.1f dB"
-#: FreqWindow.cpp:796
+#: FreqWindow.cpp:907
#, c-format
msgid "Cursor: %.4f sec (%d Hz) (%s) = %f, Peak: %.4f sec (%d Hz) (%s) = %.3f"
msgstr "Kazalka: %.4f s (%d Hz) (%s) = %f, Vrh: %.4f s (%d Hz) (%s) = %.3f"
-#: FreqWindow.cpp:1069
+#: FreqWindow.cpp:1198
msgid "spectrum.txt"
msgstr "spekter.txt"
-#: FreqWindow.cpp:1071
+#: FreqWindow.cpp:1200
msgid "Export Spectral Data As:"
msgstr "Izvozi grafiÄne podatke kot:"
-#: FreqWindow.cpp:1087
+#: FreqWindow.cpp:1216
#: LabelDialog.cpp:603
-#: Menus.cpp:2555
-#: Project.cpp:2604
-#: Project.cpp:3667
-#: prefs/KeyConfigPrefs.cpp:182
+#: Menus.cpp:2663
+#: effects/Contrast.cpp:587
+#: prefs/KeyConfigPrefs.cpp:319
msgid "Couldn't write to file: "
msgstr "Napaka pri zapisovanju v datoteko: "
-#: FreqWindow.cpp:1092
+#: FreqWindow.cpp:1221
msgid "Frequency (Hz)\tLevel (dB)"
msgstr "Frekvenca (Hz)\tNivo (dB)"
-#: FreqWindow.cpp:1098
+#: FreqWindow.cpp:1227
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "Zaostajanje (sekund)\tFrekvenca (Hz)\tStopnja"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr "GStreamer %s: %s"
+
+#: GStreamerLoader.cpp:212
+msgid ""
+"GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+"GStreamer je bil nastavljen v Možnostih in že uspešno naložen,\n"
+" vendar ga tokrat Audacity ob zagonu ne more naložiti.\n"
+"Morda znova preverite Nastavitve > Knjižnice in ga ponovno nastavite."
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr "Zagon GStreamerja ni uspel"
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr "Na stran [[welcome|dobrodošlice]]."
@@ -1331,7 +1457,7 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr ""
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
msgstr ""
#: HelpText.cpp:244
@@ -1355,7 +1481,7 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr ""
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
msgstr ""
#: HelpText.cpp:383
@@ -1391,61 +1517,64 @@ msgid "&Discard"
msgstr "&Opusti"
#: HistoryWindow.cpp:112
-#: Tags.cpp:2081
-#: Tags.cpp:2083
-#: Tags.cpp:2385
-#: Tags.cpp:2387
#: effects/ChangeLength.cpp:186
#: effects/SpikeCleaner.cpp:191
-#: export/ExportCL.cpp:399
+#: export/ExportCL.cpp:432
msgid "&OK"
msgstr "V &redu"
-#: Internat.cpp:191
+#: Internat.cpp:143
msgid "Unable to determine"
msgstr "NemogoÄe doloÄiti"
-#: Internat.cpp:195
-#: import/ImportRaw.cpp:385
+#: Internat.cpp:147
+#: import/ImportRaw.cpp:395
msgid "bytes"
msgstr "bajtov"
-#: Internat.cpp:197
+#: Internat.cpp:149
msgid "KB"
msgstr "KB"
-#: Internat.cpp:200
+#: Internat.cpp:152
msgid "MB"
msgstr "MB"
-#: Internat.cpp:203
+#: Internat.cpp:155
msgid "GB"
msgstr "GB"
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr "Navedenega imena datoteke ni mogoÄe pretvoriti zaradi uporabljenih znakov Unicode."
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr "DoloÄite novo ime datoteke:"
+
#: LabelDialog.cpp:54
msgid "Track"
msgstr "Sled"
#: LabelDialog.cpp:55
-#: Menus.cpp:4677
-#: Menus.cpp:4712
+#: Menus.cpp:4855
+#: Menus.cpp:4890
msgid "Label"
msgstr "Oznaka"
#: LabelDialog.cpp:56
-#: TimerRecordDialog.cpp:279
+#: TimerRecordDialog.cpp:328
msgid "Start Time"
msgstr "ZaÄetni Äas"
#: LabelDialog.cpp:57
-#: TimerRecordDialog.cpp:298
+#: TimerRecordDialog.cpp:347
msgid "End Time"
msgstr "KonÄni Äas"
#: LabelDialog.cpp:100
-#: Menus.cpp:713
-msgid "&Edit Labels"
-msgstr "&Uredi oznake"
+msgid "Edit Labels"
+msgstr "Uredi oznake"
#: LabelDialog.cpp:115
msgid "Press F2 or double click to edit cell contents."
@@ -1468,33 +1597,36 @@ msgid "New..."
msgstr "Nov ..."
#: LabelDialog.cpp:354
-msgid "You have left blank label names. These will be\n"
+msgid ""
+"You have left blank label names. These will be\n"
"skipped when repopulating the Label Tracks.\n"
"\n"
"Would you like to go back and provide names?"
-msgstr "Pustili ste prazna imena oznak. Te bodo\n"
+msgstr ""
+"Pustili ste prazna imena oznak. Te bodo\n"
"preskoÄene pri ponaselitvi sledi z oznakami.\n"
"\n"
"Se želite vrniti in vnesti imena?"
#: LabelDialog.cpp:355
+#: LangChoice.cpp:130
msgid "Confirm"
msgstr "Potrdi"
#: LabelDialog.cpp:516
-#: Menus.cpp:4101
+#: Menus.cpp:4273
msgid "Select a text file containing labels..."
msgstr "Izberite datoteko z oznakami ..."
#: LabelDialog.cpp:520
-#: Menus.cpp:4105
+#: Menus.cpp:4277
msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
msgstr "Datoteke z besedilom (*.txt)|*.txt|Vse datoteke (*.*)|*.*"
#: LabelDialog.cpp:534
-#: Menus.cpp:4117
-#: Project.cpp:1914
-#: Project.cpp:1922
+#: Menus.cpp:4289
+#: Project.cpp:2116
+#: Project.cpp:2124
msgid "Could not open file: "
msgstr "Napaka pri odpiranju datoteke: "
@@ -1503,12 +1635,12 @@ msgid "No labels to export."
msgstr "Ni oznak za izvoz."
#: LabelDialog.cpp:566
-#: Menus.cpp:2518
+#: Menus.cpp:2626
msgid "Export Labels As:"
msgstr "Izvozi oznake kot:"
#: LabelDialog.cpp:568
-#: Menus.cpp:2516
+#: Menus.cpp:2624
msgid "labels.txt"
msgstr "oznake.txt"
@@ -1522,1417 +1654,1399 @@ msgstr "Vnesite ime sledi"
#: LabelDialog.cpp:705
#: LabelDialog.h:52
-#: LabelTrack.cpp:89
-#: Menus.cpp:632
-msgid "&Label Track"
-msgstr "&Sled z oznakami"
+#: LabelTrack.cpp:92
+msgid "Label Track"
+msgstr "Sled z oznakami"
-#: LangChoice.cpp:57
+#: LangChoice.cpp:58
msgid "Audacity First Run"
msgstr "Prvi zagon Audacity"
-#: LangChoice.cpp:89
+#: LangChoice.cpp:90
msgid "Choose Language for Audacity to use:"
msgstr "Izberite jezik programa Audacity:"
-#: Legacy.cpp:356
+#: LangChoice.cpp:125
#, c-format
-msgid "Converted a 1.0 project file to the new format.\n"
+msgid "The language you have chosen, %s (%s), is not the same as the system language, %s (%s)."
+msgstr "Jezik, ki ste ga izbrali, %s (%s), ni enak sistemskemu jeziku, %s (%s)."
+
+#: Legacy.cpp:372
+#, c-format
+msgid ""
+"Converted a 1.0 project file to the new format.\n"
"The old file has been saved as '%s'"
-msgstr "Datoteka projekta 1.0 je shranjena v novem zapisu.\n"
+msgstr ""
+"Datoteka projekta 1.0 je shranjena v novem zapisu.\n"
"Stara datoteka je shranjena pod imenom '%s'"
-#: Legacy.cpp:357
+#: Legacy.cpp:373
msgid "Opening Audacity Project"
msgstr "Odpiranje projekta Audacity"
-#: Menus.cpp:194
+#: Menus.cpp:196
msgid "&File"
msgstr "&Datoteka"
-#: Menus.cpp:196
-msgid "&New\tCtrl+N"
-msgstr "&Nova\tCtrl+N"
-
-#: Menus.cpp:198
-msgid "&Open...\tCtrl+O"
-msgstr "&Odpri ...\tCtrl+O"
+#: Menus.cpp:215
+msgid "&Close"
+msgstr "&Zapri"
-#: Menus.cpp:203
-msgid "&Close\tCtrl+W"
-msgstr "&Zapri\tCtrl+W"
+#: Menus.cpp:218
+msgid "&Save Project"
+msgstr "&Shrani projekt"
-#: Menus.cpp:206
-msgid "&Save Project\tCtrl+S"
-msgstr "&Shrani projekt\tCtrl+S"
-
-#: Menus.cpp:210
-#: Project.cpp:2896
+#: Menus.cpp:221
msgid "Save Project &As..."
msgstr "Shrani projekt &kot ..."
-#: Menus.cpp:212
+#: Menus.cpp:223
msgid "Save Compressed Copy of Project..."
msgstr "Shrani stisnjeno kopijo projekta ..."
-#: Menus.cpp:216
+#: Menus.cpp:227
msgid "Chec&k Dependencies..."
msgstr "Preveri &odvisnosti ..."
-#: Menus.cpp:222
+#: Menus.cpp:231
msgid "Open Me&tadata Editor..."
msgstr "Odpri urejevalnik me&tapodatkov ..."
-#: Menus.cpp:229
-#: import/ImportRaw.cpp:411
+#: Menus.cpp:239
+#: import/ImportRaw.cpp:421
msgid "&Import"
msgstr "&Uvozi"
-#: Menus.cpp:231
-msgid "&Audio...\tCtrl+Shift+I"
-msgstr "&Zvok ...\tCtrl+Shift+I"
+#: Menus.cpp:241
+msgid "&Audio..."
+msgstr "&Zvok ..."
-#: Menus.cpp:232
+#: Menus.cpp:242
msgid "&Labels..."
msgstr "&Oznake ..."
-#: Menus.cpp:234
+#: Menus.cpp:244
msgid "&MIDI..."
msgstr "&MIDI ..."
-#: Menus.cpp:236
+#: Menus.cpp:246
msgid "&Raw Data..."
msgstr "&Surovi podatki ..."
-#: Menus.cpp:247
-#: Menus.cpp:282
+#: Menus.cpp:261
msgid "Expo&rt Selection..."
msgstr "Izvozi iz&bor ..."
-#: Menus.cpp:254
+#: Menus.cpp:269
msgid "Export &Labels..."
msgstr "Izvozi &oznake ..."
-#: Menus.cpp:255
+#: Menus.cpp:272
msgid "Export &Multiple..."
msgstr "Izvozi &veÄ datotek ..."
-#: Menus.cpp:257
+#: Menus.cpp:276
msgid "Export MIDI..."
msgstr "Izvozi MIDI ..."
-#: Menus.cpp:290
-msgid "CleanSpeech C&hain..."
-msgstr "Veri&ga PoÄistiGovor ..."
+#: Menus.cpp:282
+msgid "Appl&y Chain..."
+msgstr "&Uporabi verigo ..."
-#: Menus.cpp:291
-#: Menus.cpp:305
+#: Menus.cpp:285
msgid "Edit C&hains..."
msgstr "Uredi &verige ..."
-#: Menus.cpp:292
+#: Menus.cpp:288
msgid "Export CleanSpeech &Presets..."
msgstr "Izvozi &prednastavitve PoÄistiGovor ..."
-#: Menus.cpp:293
+#: Menus.cpp:289
msgid "I&mport CleanSpeech Presets..."
msgstr "Uvozi pred&nastavitve PoÄistiGovor ..."
-#: Menus.cpp:303
-msgid "Appl&y Chain..."
-msgstr "&Uporabi verigo ..."
-
-#: Menus.cpp:310
+#: Menus.cpp:296
msgid "&Upload File..."
msgstr "Prenesi datoteko &na strežnik ..."
-#: Menus.cpp:316
+#: Menus.cpp:301
msgid "Pa&ge Setup..."
msgstr "&Priprava strani ..."
-#: Menus.cpp:317
+#: Menus.cpp:304
msgid "&Print..."
msgstr "&Natisni ..."
-#: Menus.cpp:330
-msgid "E&xit\tCtrl+Q"
-msgstr "&Zapri\tCtrl+Q"
+#: Menus.cpp:313
+msgid "E&xit"
+msgstr "&Izhod"
-#: Menus.cpp:338
-#: toolbars/EditToolBar.cpp:76
+#: Menus.cpp:323
msgid "&Edit"
msgstr "&Uredi"
-#: Menus.cpp:342
-msgid "&Undo\tCtrl+Z"
-msgstr "&Razveljavi\tCtrl+Z"
+#: Menus.cpp:328
+msgid "&Undo"
+msgstr "&Razveljavi"
-#: Menus.cpp:350
-#: prefs/KeyConfigPrefs.cpp:371
-#: toolbars/EditToolBar.cpp:146
+#: Menus.cpp:340
msgid "&Redo"
msgstr "&Ponovi"
-#: Menus.cpp:363
-msgid "Cu&t\tCtrl+X"
-msgstr "I&zreži\tCtrl+X"
+#: Menus.cpp:346
+msgid "Cu&t"
+msgstr "I&zreži"
-#: Menus.cpp:367
-msgid "Spl&it Cut\tCtrl+Alt+X"
-msgstr "&Razdvoji z rezom\tCtrl+Alt+X"
+#: Menus.cpp:349
+msgid "Spl&it Cut"
+msgstr "&Razdvoji in izreži"
-#: Menus.cpp:368
-msgid "&Copy\tCtrl+C"
-msgstr "&Kopiraj\tCtrl+C"
+#: Menus.cpp:350
+msgid "&Copy"
+msgstr "&Kopiraj"
-#: Menus.cpp:372
-msgid "&Paste\tCtrl+V"
-msgstr "&Prilepi\tCtrl+V"
+#: Menus.cpp:353
+msgid "&Paste"
+msgstr "&Prilepi"
-#: Menus.cpp:376
-msgid "Tri&m\tCtrl+T"
-msgstr "Pore&ži\tCtrl+T"
+#: Menus.cpp:356
+msgid "Tri&m"
+msgstr "Pore&ži"
-#: Menus.cpp:378
-msgid "&Delete\tCtrl+K"
-msgstr "&Izbriši\tCtrl+K"
+#: Menus.cpp:360
+#: Menus.cpp:399
+msgid "&Delete"
+msgstr "&Izbriši"
-#: Menus.cpp:379
-msgid "Split D&elete\tCtrl+Alt+K"
-msgstr "Razdvoji z &brisanjem\tCtrl+Alt+K"
+#: Menus.cpp:361
+msgid "Split D&elete"
+msgstr "Razdvoji z &brisanjem"
-#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
-msgstr "&Utišaj zvok\tCtrl+L"
+#: Menus.cpp:362
+msgid "Silence Audi&o"
+msgstr "&Utišaj zvok"
-#: Menus.cpp:382
-msgid "Sp&lit\tCtrl+I"
-msgstr "Raz&dvoji\tCtrl+I"
+#: Menus.cpp:366
+msgid "Sp&lit"
+msgstr "Razdvo&ji"
-#: Menus.cpp:387
-msgid "Split Ne&w\tCtrl+Alt+I"
-msgstr "Razdvoji v n&ovo\tCtrl+Alt+I"
+#: Menus.cpp:370
+msgid "Split Ne&w"
+msgstr "Razdv&oji v novo"
-#: Menus.cpp:392
-msgid "&Join\tCtrl+J"
-msgstr "&Združi\tCtrl+J"
+#: Menus.cpp:374
+#: Menus.cpp:406
+msgid "&Join"
+msgstr "Zdru&ži"
-#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
-msgstr "Razdr&uži pri tišinah\tCtrl+Alt+J"
+#: Menus.cpp:375
+#: Menus.cpp:407
+msgid "Detac&h at Silences"
+msgstr "Razdr&uži pri tišinah"
-#: Menus.cpp:394
-msgid "Duplic&ate\tCtrl+D"
-msgstr "Po&dvoji\tCtrl+D"
+#: Menus.cpp:376
+msgid "Duplic&ate"
+msgstr "&Podvoji"
-#: Menus.cpp:400
-#: Menus.cpp:639
+#: Menus.cpp:381
+#: Menus.cpp:617
msgid "Stereo Trac&k to Mono"
msgstr "Stere&o sled v mono"
-#: Menus.cpp:407
+#: Menus.cpp:390
msgid "La&beled Regions"
msgstr "&OznaÄena obmoÄja"
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:409
-msgid "&Cut\tAlt+X"
-msgstr "I&zreži\tAlt+X"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:414
-msgid "&Split Cut\tShift+Alt+X"
-msgstr "&Razdvoji in izreži\tShift+Alt+X"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:419
-msgid "Co&py\tShift+Alt+C"
-msgstr "Ko&piraj\tShift+Alt+C"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:425
-msgid "&Delete\tAlt+K"
-msgstr "&Izbriši\tAlt+D"
+#: Menus.cpp:393
+msgid "&Cut"
+msgstr "I&zreži"
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:430
-msgid "Sp&lit Delete\tShift+Alt+K"
-msgstr "Razdvo&ji z brisanjem\tShift+Alt+K"
+#: Menus.cpp:394
+msgid "&Split Cut"
+msgstr "Raz&dvoji in izreži"
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:435
-msgid "Sile&nce\tAlt+L"
-msgstr "Ti&šina\tALT+L"
+#: Menus.cpp:395
+msgid "Co&py"
+msgstr "Ko&piraj"
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:441
-msgid "Spli&t\tAlt+I"
-msgstr "&Razdeli\tAlt+T"
+#: Menus.cpp:400
+msgid "Sp&lit Delete"
+msgstr "Razdvoji z &brisanjem"
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:446
-msgid "&Join\tAlt+J"
-msgstr "Z&druži\tAlt+J"
+#: Menus.cpp:401
+msgid "Sile&nce"
+msgstr "&Tišina"
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
-msgstr "Razdr&uži pri tišinah\tShift+Alt+J"
+#: Menus.cpp:405
+msgid "Spli&t"
+msgstr "Raz&dvoji"
-#: Menus.cpp:456
+#: Menus.cpp:413
msgid "&Select"
msgstr "Iz&beri"
-#: Menus.cpp:457
-msgid "&All\tCtrl+A"
-msgstr "&Vse\tCtrl+A"
+#: Menus.cpp:416
+msgid "&All"
+msgstr "&Vse"
-#: Menus.cpp:458
-msgid "&None\tCtrl+Shift+A"
-msgstr "&Brez\tCtrl+Shift+A"
+#: Menus.cpp:417
+msgid "&None"
+msgstr "Praz&no"
-#: Menus.cpp:462
-msgid "&Left at Playback Position\t["
-msgstr "&Levo od mesta predvajanja\t["
+#: Menus.cpp:419
+msgid "&Left at Playback Position"
+msgstr "&Levo od mesta predvajanja"
-#: Menus.cpp:463
-msgid "&Right at Playback Position\t]"
-msgstr "&Desno od mesta predvajanja\t]"
+#: Menus.cpp:420
+msgid "&Right at Playback Position"
+msgstr "&Desno od mesta predvajanja"
-#: Menus.cpp:467
-msgid "Track &Start to Cursor\tShift+J"
-msgstr "Od &zaÄetka sledi do kazalke\tShift+J"
+#: Menus.cpp:424
+msgid "Track &Start to Cursor"
+msgstr "Od &zaÄetka sledi do kazalke"
-#: Menus.cpp:468
-msgid "Cursor to Track &End\tShift+K"
-msgstr "Od &kazalke do konca sledi\tShift+K"
+#: Menus.cpp:425
+msgid "Cursor to Track &End"
+msgstr "Od &kazalke do konca sledi"
-#: Menus.cpp:474
-msgid "Find &Zero Crossings\tZ"
-msgstr "Najdi &niÄelne prehode\tZ"
+#: Menus.cpp:431
+msgid "Find &Zero Crossings"
+msgstr "Najdi &niÄelne prehode"
-#: Menus.cpp:476
+#: Menus.cpp:435
msgid "Mo&ve Cursor"
msgstr "Pre&makni kazalko"
-#: Menus.cpp:478
+#: Menus.cpp:437
msgid "to Selection Star&t"
msgstr "na za&Äetek izbora"
-#: Menus.cpp:479
+#: Menus.cpp:438
msgid "to Selection En&d"
msgstr "na kone&c izbora"
-#: Menus.cpp:483
-msgid "to Track &Start\tJ"
-msgstr "na &zaÄetek sledi\tJ"
+#: Menus.cpp:440
+msgid "to Track &Start"
+msgstr "na &zaÄetek sledi"
-#: Menus.cpp:484
-msgid "to Track &End\tK"
-msgstr "na &konec sledi\tK"
+#: Menus.cpp:441
+msgid "to Track &End"
+msgstr "na &konec sledi"
-#: Menus.cpp:491
+#: Menus.cpp:449
msgid "Re&gion Save"
msgstr "Shra&ni obmoÄje"
-#: Menus.cpp:492
+#: Menus.cpp:452
msgid "Regio&n Restore"
msgstr "O&bnovi obmoÄje"
-#: Menus.cpp:503
+#: Menus.cpp:460
msgid "Pla&y Region"
msgstr "Pre&dvajaj obmoÄje"
-#: Menus.cpp:504
+#: Menus.cpp:462
msgid "&Lock"
msgstr "&Zakleni"
-#: Menus.cpp:505
+#: Menus.cpp:465
msgid "&Unlock"
msgstr "&Odkleni"
-#: Menus.cpp:511
-msgid "Turn Snap-To On"
-msgstr "VkljuÄi skoÄi-na"
-
-#: Menus.cpp:512
-msgid "Turn Snap-To Off"
-msgstr "IzkljuÄi skoÄi-na"
-
-#: Menus.cpp:513
-msgid "Turn Grid Snap On"
-msgstr "VkljuÄi vpenjanje v mrežo"
-
-#: Menus.cpp:514
-msgid "Turn Grid Snap Off"
-msgstr "IzkljuÄi vpenjanje v mrežo"
+#: Menus.cpp:485
+msgid "Pre&ferences..."
+msgstr "Nas&tavitve ..."
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
-#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr "&Nastavitve ...\tCtrl+,"
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
-msgstr "&Nastavitve ...\tCtrl+P"
-
-#: Menus.cpp:533
+#: Menus.cpp:495
msgid "&View"
msgstr "&Pogled"
-#: Menus.cpp:535
-msgid "Zoom &In\tCtrl+1"
-msgstr "Pove&Äaj\tCtrl+1"
+#: Menus.cpp:498
+msgid "Zoom &In"
+msgstr "Pove&Äaj"
-#: Menus.cpp:538
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "&Navadna velikost\tCtrl+2"
+#: Menus.cpp:501
+msgid "Zoom &Normal"
+msgstr "&Navadna velikost"
-#: Menus.cpp:539
-msgid "Zoom &Out\tCtrl+3"
-msgstr "Pomanj&šaj\tCtrl+3"
+#: Menus.cpp:502
+msgid "Zoom &Out"
+msgstr "Pomanj&šaj"
-#: Menus.cpp:542
-msgid "&Fit in Window\tCtrl+F"
-msgstr "Prilag&odi oknu\tCtrl+G"
+#: Menus.cpp:506
+msgid "&Fit in Window"
+msgstr "Prilag&odi oknu"
-#: Menus.cpp:543
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "Prilagodi &navpiÄno\tCtrl+Shift+F"
+#: Menus.cpp:507
+msgid "Fit &Vertically"
+msgstr "Prilagodi &navpiÄno"
-#: Menus.cpp:544
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "&PoveÄaj na izbor\tCtrl+E"
+#: Menus.cpp:508
+msgid "&Zoom to Selection"
+msgstr "&PoveÄaj na izbor"
-#: Menus.cpp:547
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
-msgstr "&Zloži vse sledi\tCtrl+Shift+C"
+#: Menus.cpp:512
+msgid "&Collapse All Tracks"
+msgstr "&Zloži vse sledi"
-#: Menus.cpp:548
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
-msgstr "&Razpostri vse sledi\tCtrl+Shift+X"
+#: Menus.cpp:513
+msgid "E&xpand All Tracks"
+msgstr "&Razpostri vse sledi"
-#: Menus.cpp:551
+#: Menus.cpp:517
msgid "&Show Clipping"
msgstr "&Pokaži rezanje"
-#: Menus.cpp:560
+#: Menus.cpp:522
msgid "&History..."
msgstr "&Zgodovina ..."
-#: Menus.cpp:566
+#: Menus.cpp:530
msgid "&Toolbars"
msgstr "&Orodne vrstice"
-#: Menus.cpp:567
+#: Menus.cpp:532
msgid "&Control Toolbar"
msgstr "Vrstica &krmiljenja"
-#: Menus.cpp:568
+#: Menus.cpp:533
msgid "&Device Toolbar"
msgstr "Vrstica &naprave"
-#: Menus.cpp:569
+#: Menus.cpp:534
msgid "&Edit Toolbar"
msgstr "Vrstica &urejanja"
-#: Menus.cpp:570
+#: Menus.cpp:535
msgid "&Meter Toolbar"
msgstr "Vrstica &merjenja"
-#: Menus.cpp:571
+#: Menus.cpp:536
msgid "Mi&xer Toolbar"
msgstr "Vrstica me&šanja"
-#: Menus.cpp:572
+#: Menus.cpp:537
msgid "&Selection Toolbar"
msgstr "Vrstica &izbire"
-#: Menus.cpp:573
+#: Menus.cpp:538
msgid "T&ools Toolbar"
msgstr "Vrstica z &orodji"
-#: Menus.cpp:574
+#: Menus.cpp:539
msgid "Transcri&ption Toolbar"
msgstr "Vrstica &prepisa"
-#: Menus.cpp:576
+#: Menus.cpp:543
msgid "&Reset Toolbars"
msgstr "&Ponastavi orodne vrstice"
-#: Menus.cpp:578
+#: Menus.cpp:551
msgid "!Simplified View"
msgstr "!Poenostavljen pogled"
#. i18n-hint: 'Transport' is the name given to the set of controls that
#. play, record, pause etc.
-#: Menus.cpp:587
+#: Menus.cpp:562
msgid "T&ransport"
msgstr "&Upravljanje"
-#: Menus.cpp:591
-msgid "Play\tSpace"
-msgstr ""
+#: Menus.cpp:565
+#: toolbars/ControlToolBar.cpp:173
+msgid "Play"
+msgstr "Predvajaj"
-#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
-msgstr ""
+#: Menus.cpp:566
+msgid "&Loop Play"
+msgstr "Predvajaj v &zanki"
-#: Menus.cpp:593
-msgid "&Pause\tP"
-msgstr "Pre&kini\tP"
+#: Menus.cpp:567
+msgid "&Pause"
+msgstr "&Prekini"
-#: Menus.cpp:596
-msgid "&Stop\tSpace"
-msgstr ""
+#: Menus.cpp:570
+msgid "&Stop"
+msgstr "U&stavi"
-#: Menus.cpp:595
-#: Menus.cpp:1010
-msgid "Skip to Start\tHome"
-msgstr "SkoÄi na zaÄetek\tHome"
+#: Menus.cpp:573
+#: toolbars/ControlToolBar.cpp:208
+msgid "Skip to Start"
+msgstr "SkoÄi na zaÄetek"
-#: Menus.cpp:597
-#: Menus.cpp:1011
-msgid "Skip to End\tEnd"
-msgstr "SkoÄi na konec\tEnd"
+#: Menus.cpp:574
+#: toolbars/ControlToolBar.cpp:209
+msgid "Skip to End"
+msgstr "SkoÄi na konec"
-#: Menus.cpp:600
-msgid "&Record\tR"
-msgstr "&Snemaj\tR"
+#: Menus.cpp:578
+msgid "&Record"
+msgstr "Po&snemi"
-#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
+#: Menus.cpp:579
+msgid "&Timer Record..."
msgstr "&Äasovno snemanje ... "
-#: Menus.cpp:604
-msgid "Append Record\tShift+R"
-msgstr "Snemaj kot dodatek\tShift+R"
+#: Menus.cpp:580
+msgid "Append Record"
+msgstr "Snemaj kot dodatek"
-#: Menus.cpp:607
+#: Menus.cpp:584
msgid "Overdub (on/off)"
msgstr "Prekrivaj (vkljuÄeno/izkljuÄeno)"
-#: Menus.cpp:609
+#: Menus.cpp:585
msgid "Software Playthrough (on/off)"
msgstr "Programsko predvajanje skozi (vkljuÄeno/izkljuÄeno)"
-#: Menus.cpp:612
+#: Menus.cpp:588
msgid "Sound Activated Recording (on/off)"
msgstr "Z zvokom aktivirano snemanje (vkljuÄeno/izkljuÄeno)"
-#: Menus.cpp:614
+#: Menus.cpp:589
msgid "Sound Activation Level..."
msgstr "Raven zvoka za aktivacijo ..."
-#: Menus.cpp:622
+#: Menus.cpp:597
msgid "&Tracks"
msgstr "&Sledi"
-#: Menus.cpp:629
+#: Menus.cpp:602
msgid "Add &New"
msgstr "Dodaj &novo"
-#: Menus.cpp:630
-msgid "&Audio Track\tCtrl+Shift+N"
-msgstr "&ZvoÄna sled\tCtrl+Shift+N"
+#: Menus.cpp:604
+msgid "&Audio Track"
+msgstr "&ZvoÄna sled"
-#: Menus.cpp:631
+#: Menus.cpp:605
msgid "&Stereo Track"
msgstr "&Stereo sled"
-#: Menus.cpp:633
-#: TimeTrack.cpp:44
+#: Menus.cpp:606
+msgid "&Label Track"
+msgstr "&Sled z oznakami"
+
+#: Menus.cpp:607
msgid "&Time Track"
msgstr "&Äasovna sled"
-#: Menus.cpp:643
+#: Menus.cpp:620
msgid "Mi&x and Render"
msgstr "Z&mešaj in izdelaj"
-#: Menus.cpp:647
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
-msgstr "Zmešaj in izdelaj v novo sled\tCtrl+Shift+M"
+#: Menus.cpp:623
+msgid "Mix and Render to New Track"
+msgstr "Zmešaj in izdelaj v novo sled"
-#: Menus.cpp:651
+#: Menus.cpp:626
msgid "&Resample..."
msgstr "&PrevzorÄi ..."
-#: Menus.cpp:661
+#: Menus.cpp:632
msgid "Remo&ve Tracks"
msgstr "O&dstrani sledi:"
-#: Menus.cpp:667
-msgid "&Mute All Tracks\tCtrl+U"
-msgstr "&Utišaj vse sledi\tCtrl+U"
+#: Menus.cpp:638
+msgid "&Mute All Tracks"
+msgstr "&Utišaj vse sledi"
-#: Menus.cpp:668
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
-msgstr "&Odtišaj vse sledi\tCtrl+Shift+U"
+#: Menus.cpp:639
+msgid "&UnMute All Tracks"
+msgstr "&Odtišaj vse sledi"
-#: Menus.cpp:672
+#: Menus.cpp:644
msgid "Align with &Zero"
msgstr "&Združi z niÄlo"
-#: Menus.cpp:673
+#: Menus.cpp:645
msgid "Align with &Cursor"
msgstr "Poravnaj s &kazalko"
-#: Menus.cpp:674
+#: Menus.cpp:646
msgid "Align with Selection &Start"
msgstr "Poravnaj z &zaÄetkom izbora"
-#: Menus.cpp:675
+#: Menus.cpp:647
msgid "Align with Selection &End"
msgstr "Poravnaj s &koncem izbora"
-#: Menus.cpp:676
+#: Menus.cpp:648
msgid "Align End with Cu&rsor"
msgstr "Poravnaj konec s kaza&lko"
-#: Menus.cpp:677
+#: Menus.cpp:649
msgid "Align End with Selection Star&t"
msgstr "Poravnaj konec z zaÄe&tkom izbora"
-#: Menus.cpp:678
+#: Menus.cpp:650
msgid "Align End with Selection En&d"
msgstr "Poravnaj konec s ko&ncem izbora"
-#: Menus.cpp:679
+#: Menus.cpp:651
msgid "Align Tracks To&gether"
msgstr "Poravnaj &sledi skupaj"
-#: Menus.cpp:681
+#: Menus.cpp:653
msgid "&Align Tracks"
msgstr "&Poravnaj sledi"
-#: Menus.cpp:690
+#: Menus.cpp:668
msgid "Ali&gn and Move Cursor"
msgstr "Poravnaj in premakni &kazalko"
-#: Menus.cpp:697
+#: Menus.cpp:680
msgid "Synchronize MIDI with Audio"
msgstr "Sinhroniziraj MIDI z zvokom"
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
-msgstr "Poveži zvoÄne sledi in sledi oznak"
+#: Menus.cpp:687
+msgid "&Link Audio and Label Tracks"
+msgstr "Po&veži zvoÄne sledi in sledi oznak"
+
+#: Menus.cpp:691
+msgid "Add Label At &Selection"
+msgstr "Dodaj &oznako izboru"
-#: Menus.cpp:709
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "Dodaj &oznako izboru\tCtrl+B"
+#: Menus.cpp:694
+msgid "Add Label At &Playback Position"
+msgstr "Dodaj oznako na mestu &predvajanja"
-#: Menus.cpp:710
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "Dodaj oznako na mestu &predvajanja\tCtrl+M"
+#: Menus.cpp:697
+msgid "&Edit Labels"
+msgstr "&Uredi oznake"
-#: Menus.cpp:716
+#: Menus.cpp:703
msgid "S&ort tracks"
msgstr "&Razvrsti sledi"
-#: Menus.cpp:717
+#: Menus.cpp:705
msgid "by &Start time"
msgstr "po &zaÄetnem Äasu"
-#: Menus.cpp:719
+#: Menus.cpp:708
msgid "by &Name"
msgstr "po &imenu"
-#: Menus.cpp:730
+#: Menus.cpp:722
msgid "&Generate"
msgstr "&Tvori"
-#: Menus.cpp:776
-#: Menus.cpp:860
+#: Menus.cpp:767
+#: Menus.cpp:852
#: Menus.cpp:922
msgid "Unsorted"
msgstr "NerazvrÅ¡Äeno"
-#: Menus.cpp:795
+#: Menus.cpp:789
msgid "Effe&ct"
msgstr "U&Äinek"
-#: Menus.cpp:799
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "Ponovi zadnji uÄinek\tCtrl+R"
-
-#: Menus.cpp:877
+#: Menus.cpp:873
msgid "&Analyze"
msgstr "&Analiziraj"
-#: Menus.cpp:879
+#: Menus.cpp:875
+msgid "Contrast..."
+msgstr "Kontrast ..."
+
+#: Menus.cpp:878
msgid "Plot Spectrum..."
msgstr "Izriši spekter ..."
-#: Menus.cpp:947
-#: Menus.cpp:950
+#: Menus.cpp:945
+#: Menus.cpp:948
msgid "&Help"
msgstr "&PomoÄ"
-#: Menus.cpp:953
+#: Menus.cpp:952
msgid "&About Audacity CleanSpeech..."
msgstr "&O Audacity PoÄistiGovor ..."
-#: Menus.cpp:957
+#: Menus.cpp:958
msgid "&Show Welcome Message..."
msgstr "&Pokaži sporoÄilo dobrodoÅ¡lice ..."
-#: Menus.cpp:958
-msgid "&Index..."
-msgstr "&Kazalo ..."
-
#: Menus.cpp:959
+msgid "&Help..."
+msgstr "Po&moÄ ..."
+
+#: Menus.cpp:960
msgid "Show &Log..."
msgstr "Pokaži &dnevnik ..."
-#: Menus.cpp:967
+#: Menus.cpp:966
msgid "&Screenshot Tools..."
msgstr "&Zajem slike namizja ..."
-#: Menus.cpp:970
+#: Menus.cpp:971
msgid "&Run Benchmark..."
msgstr "&Poženi preizkus hitrosti ..."
-#: Menus.cpp:972
+#: Menus.cpp:976
msgid "&Audio Device Info..."
msgstr "Podatki o zvo&Äni napravi ..."
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
-msgstr ""
-
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
-msgstr ""
-
-#: Menus.cpp:985
-msgid "Selection Tool\tF1"
-msgstr "Orodje za izbiranje\tF1"
-
-#: Menus.cpp:986
-msgid "Envelope Tool\tF2"
-msgstr "Orodje za ovojnico\tF2"
-
#: Menus.cpp:987
-msgid "Draw Tool\tF3"
-msgstr "Orodje za risanje\tF3"
+msgid "Move backward from toolbars to tracks"
+msgstr "Kroži nazaj prek orodnih vrstic in pogleda sledi"
#: Menus.cpp:988
-msgid "Zoom Tool\tF4"
-msgstr "Orodje za poveÄavo\tF4"
-
-#: Menus.cpp:989
-msgid "Time Shift Tool\tF5"
-msgstr "Orodje za Äasovni zamik\tF5"
+msgid "Move forward from toolbars to tracks"
+msgstr "Kroži naprej prek orodnih vrstic in pogleda sledi"
#: Menus.cpp:990
-msgid "Multi Tool\tF6"
-msgstr "VeÄorodni naÄin\tF6"
+#: toolbars/ToolsToolBar.cpp:147
+#: toolbars/ToolsToolBar.cpp:186
+msgid "Selection Tool"
+msgstr "Orodje za izbiranje"
+
+#: Menus.cpp:991
+#: toolbars/ToolsToolBar.cpp:148
+#: toolbars/ToolsToolBar.cpp:187
+msgid "Envelope Tool"
+msgstr "Orodje za ovojnico"
#: Menus.cpp:992
-msgid "Next Tool\tD"
-msgstr "Naslednje orodje\tD"
+#: toolbars/ToolsToolBar.cpp:151
+#: toolbars/ToolsToolBar.cpp:188
+msgid "Draw Tool"
+msgstr "Risanje"
#: Menus.cpp:993
-msgid "Previous Tool\tA"
-msgstr "Predhodno orodje\tA"
+#: toolbars/ToolsToolBar.cpp:150
+#: toolbars/ToolsToolBar.cpp:189
+msgid "Zoom Tool"
+msgstr "Orodje za poveÄavo"
-#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
-msgstr ""
+#: Menus.cpp:994
+#: toolbars/ToolsToolBar.cpp:149
+msgid "Time Shift Tool"
+msgstr "Orodje za optimiranje Äasa"
-#: Menus.cpp:996
-msgid "Stop\tS"
-msgstr "Ustavi\tS"
+#: Menus.cpp:995
+#: toolbars/ToolsToolBar.cpp:191
+msgid "Multi Tool"
+msgstr "VeÄstransko orodje"
#: Menus.cpp:997
-msgid "Pause\tP"
-msgstr "Prekinitev\tP"
+msgid "Next Tool"
+msgstr "Naslednje orodje"
#: Menus.cpp:998
-msgid "Record\tR"
-msgstr "Posnemi\tR"
+msgid "Previous Tool"
+msgstr "Predhodno orodje"
-#: Menus.cpp:999
-msgid "Record Append\tShift+R"
-msgstr "Posnemi kot dodatek\tShift+R"
+#: Menus.cpp:1000
+msgid "Play/Stop"
+msgstr "Predvajaj/ustavi"
#: Menus.cpp:1001
-msgid "Play/Stop and Set Cursor\tShift+A"
-msgstr "Predvajaj/ustavi in nastavi kazalko\tShift+A"
+msgid "Play/Stop and Set Cursor"
+msgstr "Predvajaj/ustavi in nastavi kazalko"
-#: Menus.cpp:1004
-msgid "Play One Second\t1"
-msgstr "Predvajaj eno sekundo\t1"
+#: Menus.cpp:1002
+msgid "Play One Second"
+msgstr "Predvajaj eno sekundo"
+
+#: Menus.cpp:1003
+msgid "Play To Selection"
+msgstr "Predvajaj do izbora"
-#: Menus.cpp:1005
-msgid "Play To Selection\tB"
-msgstr "Predvajaj do izbora\tB"
+#: Menus.cpp:1004
+msgid "Play Cut Preview"
+msgstr "Predvajaj predposlušanje reza"
#: Menus.cpp:1006
-msgid "Play Looped\tL"
-msgstr "Predvajaj v zanki\tZ"
+msgid "Selection to Start"
+msgstr "Izbor do zaÄetka"
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
+#: Menus.cpp:1007
+msgid "Selection to End"
+msgstr "Izbor do konca"
-#: Menus.cpp:1008
-msgid "Play Cut Preview\tC"
-msgstr "Predvajaj predposlušanje reza\tC"
+#: Menus.cpp:1009
+msgid "DeleteKey"
+msgstr "Tipka brisanja"
#: Menus.cpp:1013
-msgid "Selection to Start\tShift+Home"
-msgstr "Izberi do zaÄetka\tShift+Home"
+msgid "DeleteKey2"
+msgstr "Tipka brisanja 2"
-#: Menus.cpp:1014
-msgid "Selection to End\tShift+End"
-msgstr "Izberi do konca\tShift+End"
+#: Menus.cpp:1019
+msgid "Short seek left during playback"
+msgstr "PoiÅ¡Äi levo kratko periodo med predvajanjem"
-#: Menus.cpp:1016
-msgid "DeleteKey\tBackspace"
-msgstr "Tipka Delete\tBackspace"
+#: Menus.cpp:1020
+msgid "Short seek right during playback"
+msgstr "PoiÅ¡Äi desno kratko periodo med predvajanjem"
#: Menus.cpp:1021
-msgid "DeleteKey2\tDelete"
-msgstr "Tipka Delete2\tDelete"
+msgid "Long seek left during playback"
+msgstr "PoiÅ¡Äi levo dolgo periodo med predvajanjem"
+
+#: Menus.cpp:1022
+msgid "Long Seek right during playback"
+msgstr "PoiÅ¡Äi desno dolgo periodo med predvajanjem"
#: Menus.cpp:1027
-msgid "Seek left short period during playback\tLeft"
-msgstr "PoiÅ¡Äi levo kratko periodo med predvajanjem\tLevo"
+msgid "Move Focus to Previous Track"
+msgstr "Premakni pozornost na prejšnjo sled"
#: Menus.cpp:1028
-msgid "Seek right short period during playback\tRight"
-msgstr "PoiÅ¡Äi desno kratko periodo med predvajanjem\tDesno"
+msgid "Move Focus to Previous and Select"
+msgstr "Premakni pozornost na prejšnjo in izberi"
#: Menus.cpp:1029
-msgid "Seek left long period during playback\tShift+Left"
-msgstr "PoiÅ¡Äi levo dolgo periodo med predvajanjem\tShift+levo"
+msgid "Move Focus to Next Track"
+msgstr "Premakni pozornost na naslednjo sled"
#: Menus.cpp:1030
-msgid "Seek right long period during playback\tShift+Right"
-msgstr "PoiÅ¡Äi desno dolgo periodo med predvajanjem\tShift+desno"
+msgid "Move Focus to Next and Select"
+msgstr "Premakni pozornost na naslednjo in izberi"
+
+#: Menus.cpp:1031
+#: Menus.cpp:1032
+msgid "Toggle Focused Track"
+msgstr "VkljuÄi/izkljuÄi pozornost sledi"
#: Menus.cpp:1034
-msgid "Move Focus to Previous Track\tUp"
-msgstr "Premakni pozornost na prejšnjo sled\tUp"
+msgid "Cursor Left"
+msgstr "Kazalka levo"
#: Menus.cpp:1035
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
-msgstr "Premakni pozornost na prejšnjo in spremeni izbor\tShift+Up"
+msgid "Cursor Right"
+msgstr "Kazalka desno"
#: Menus.cpp:1036
-msgid "Move Focus to Next Track\tDown"
-msgstr "Premakni pozornost na naslednjo sled\tDown"
+msgid "Cursor Short Jump Left"
+msgstr "Kratek skok kazalke levo"
#: Menus.cpp:1037
-msgid "Move Focus to Next and Change Selection\tShift+Down"
-msgstr "Premakni pozornost na naslednjo in spremeni izbor\tShift+Down"
+msgid "Cursor Short Jump Right"
+msgstr "Kratek skok kazalke desno"
#: Menus.cpp:1038
-msgid "Toggle Focused Track\tReturn"
-msgstr "VkljuÄi/izkljuÄi pozornost sledi\tReturn"
+msgid "Cursor Long Jump Left"
+msgstr "Dolg skok kazalke levo"
#: Menus.cpp:1039
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr "VkljuÄi/izkljuÄi pozornost sledi\tNUMPAD_ENTER"
+msgid "Cursor Long Jump Right"
+msgstr "Dolg skok kazalke desno"
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
-msgstr ""
+#: Menus.cpp:1041
+msgid "Selection Extend Left"
+msgstr "Razširi izbor na levo"
#: Menus.cpp:1042
-msgid "Cursor Left\tLeft"
-msgstr "Leva kazalka\tLevo"
-
-#: Menus.cpp:1043
-msgid "Cursor Right\tRight"
-msgstr "Desna kazalka\tDesno"
+msgid "Selection Extend Right"
+msgstr "Razširi izbor na desno"
#: Menus.cpp:1044
-msgid "Cursor Short Jump Left\t,"
-msgstr "Kratek skok kazalke levo\t,"
+msgid "Set (or Extend) Left Selection"
+msgstr "Nastavi (ali razpostri) levo mejo izbora"
#: Menus.cpp:1045
-msgid "Cursor Short Jump Right\t."
-msgstr "Kratek skok kazalke desno\t."
-
-#: Menus.cpp:1046
-msgid "Cursor Long Jump Left\tShift+,"
-msgstr "Dolg skok kazalke levo\tShift+,"
+msgid "Set (or Extend) Right Selection"
+msgstr "Nastavi (ali razpostri) desno mejo izbora"
#: Menus.cpp:1047
-msgid "Cursor Long Jump Right\tShift+."
-msgstr "Dolg skok kazalke desno\tShift+."
+msgid "Selection Contract Left"
+msgstr "Pomanjšaj izbor z leve"
-#: Menus.cpp:1049
-msgid "Selection Extend Left\tShift+Left"
-msgstr "Razpostri izbor na levo\tShift+levo"
+#: Menus.cpp:1048
+msgid "Selection Contract Right"
+msgstr "Pomanjšaj izbor z leve"
#: Menus.cpp:1050
-msgid "Selection Extend Right\tShift+Right"
-msgstr "Razpostri izbor na desno\tShift+desno"
+msgid "Change pan on focused track"
+msgstr "Spremeni zasuk na sledi s pozornostjo"
+
+#: Menus.cpp:1051
+msgid "Pan left on focused track"
+msgstr "Zasukaj levo na sledi s pozornostjo"
#: Menus.cpp:1052
-msgid "Set (or Extend) Left Selection"
-msgstr "Nastavi (ali razpostri) levo mejo izbora"
+msgid "Pan right on focused track"
+msgstr "Zasukaj desno na sledi s pozornostjo"
#: Menus.cpp:1053
-msgid "Set (or Extend) Right Selection"
-msgstr "Nastavi (ali razpostri) desno mejo izbora"
+msgid "Change gain on focused track"
+msgstr "Spremeni ojaÄitev na sledi s pozornostjo"
+
+#: Menus.cpp:1054
+msgid "Increase gain on focused track"
+msgstr "PoveÄaj ojaÄitev na sledi s pozornostjo"
#: Menus.cpp:1055
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "Pomanjšaj izbor z leve\tCtrl+Shift+desno"
+msgid "Decrease gain on focused track"
+msgstr "ZmanjÅ¡aj ojaÄitev na sledi s pozornostjo"
#: Menus.cpp:1056
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "Pomanjšaj izbor z desne\tCtrl+Shift+levo"
+msgid "Open menu on focused track"
+msgstr "Odpri meni na sledi s pozornostjo"
+
+#: Menus.cpp:1057
+msgid "Mute/Unmute focused track"
+msgstr "Utišaj/odtišaj sled s pozornostjo"
#: Menus.cpp:1058
-msgid "Change pan on focused track\tShift+P"
-msgstr "Spremeni zasuk na sledi s pozornostjo\tShift+P"
+msgid "Solo/Unsolo focused track"
+msgstr "Soliraj/odsoliraj sled s pozornostjo"
#: Menus.cpp:1059
-msgid "Pan left on focused track\tAlt+Shift+Left"
-msgstr "Zasukaj levo na sledi s pozornostjo\tAlt+Shift+levo"
-
-#: Menus.cpp:1060
-msgid "Pan right on focused track\tAlt+Shift+Right"
-msgstr "Zasukaj desno na sledi s pozornostjo\tAlt+Shift+desno"
+msgid "Close focused track"
+msgstr "Zapri sled s pozornostjo"
#: Menus.cpp:1061
-msgid "Change gain on focused track\tShift+G"
-msgstr "Spremeni ojaÄitev na sledi s pozornostjo\tShift+G"
+msgid "Snap To On"
+msgstr "VkljuÄi SkoÄi-na"
#: Menus.cpp:1062
-msgid "Increase gain on focused track\tAlt+Shift+Up"
-msgstr "PoveÄaj ojaÄitev na sledi s pozornostjo\tAlt+Shift+Up"
-
-#: Menus.cpp:1063
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
-msgstr "ZmanjÅ¡aj ojaÄitev na sledi s pozornostjo\tAlt+Shift+Down"
-
-#: Menus.cpp:1064
-msgid "Open menu on focused track\tShift+M"
-msgstr "Odpri meni na sledi s pozornostjo\tShift+M"
-
-#: Menus.cpp:1065
-msgid "Mute/Unmute focused track\tShift+U"
-msgstr "Utišaj/Odtišaj sled s pozornostjo\tShift+U"
+msgid "Snap To Off"
+msgstr "IzkljuÄi SkoÄi-na"
#: Menus.cpp:1066
-msgid "Solo/Unsolo focused track\tShift+S"
-msgstr "Soliraj/Odsoliraj sled s pozornostjo\tShift+S"
+msgid "Full screen on/off"
+msgstr "Celozaslonski naÄin vkljuÄen/izkljuÄen"
-#: Menus.cpp:1067
-msgid "Close focused track\tShift+C"
-msgstr "Zapri sled s pozornostjo\tShift+C"
+#: Menus.cpp:1068
+msgid "Adjust output gain"
+msgstr "Prilagodi izhodno ojaÄitev"
#: Menus.cpp:1069
-msgid "Snap To On"
-msgstr "VkljuÄi SkoÄi-na"
+msgid "Increase output gain"
+msgstr "PoveÄaj izhodno ojaÄitev"
#: Menus.cpp:1070
-msgid "Snap To Off"
-msgstr "IzkljuÄi SkoÄi-na"
+msgid "Decrease output gain"
+msgstr "PomanjÅ¡aj izhodno ojaÄitev"
+
+#: Menus.cpp:1071
+msgid "Adjust input gain"
+msgstr "Prilagodi vhodno ojaÄitev"
+
+#: Menus.cpp:1072
+msgid "Increase input gain"
+msgstr "PoveÄaj vhodno ojaÄitev"
#: Menus.cpp:1073
-msgid "Full screen on/off\tF11"
-msgstr ""
+msgid "Decrease input gain"
+msgstr "PomanjÅ¡aj vhodno ojaÄitev"
+
+#: Menus.cpp:1075
+msgid "Adjust input source"
+msgstr "Prilagodi vhodni vir"
+
+#: Menus.cpp:1079
+msgid "Play at speed"
+msgstr "Predvajaj pri hitrosti"
+
+#: Menus.cpp:1080
+msgid "Adjust playback speed"
+msgstr "Prilagodi hitrost predvajanja"
+
+#: Menus.cpp:1081
+msgid "Increase playback speed"
+msgstr "Pohitri predvajanje"
+
+#: Menus.cpp:1082
+msgid "Decrease playback speed"
+msgstr "UpoÄasni predvajanje"
#. i18n-hint: This is the name of the menu item on Mac OS X only
-#: Menus.cpp:1157
+#: Menus.cpp:1167
msgid "Open Recent"
msgstr "Odpri nedavne"
#. i18n-hint: This is the name of the menu item on Windows and Linux
-#: Menus.cpp:1160
+#: Menus.cpp:1170
msgid "Recent &Files"
msgstr "Zadnje &datoteke"
-#: Menus.cpp:1209
+#: Menus.cpp:1188
#, c-format
msgid "&Undo %s"
msgstr "Razveljavi %s"
-#: Menus.cpp:1235
+#: Menus.cpp:1214
msgid "Can't Undo"
msgstr "Ni mogoÄe razveljaviti"
-#: Menus.cpp:1244
+#: Menus.cpp:1223
#, c-format
msgid "&Redo %s"
msgstr "P&onovi %s"
-#: Menus.cpp:1250
+#: Menus.cpp:1229
msgid "Can't Redo"
msgstr "Ni mogoÄe ponoviti"
-#: Menus.cpp:1856
+#: Menus.cpp:1874
msgid "Sort By Time"
msgstr "Razvrsti po Äasu"
-#: Menus.cpp:1856
+#: Menus.cpp:1874
msgid "Tracks sorted by time"
msgstr "Sledi, razvrÅ¡Äene po Äasu"
-#: Menus.cpp:1882
+#: Menus.cpp:1900
msgid "Sort By Name"
msgstr "Razvrsti po imenu"
-#: Menus.cpp:1882
+#: Menus.cpp:1900
msgid "Tracks sorted by name"
msgstr "Sledi, razvrÅ¡Äene po imenu"
-#: Menus.cpp:2033
-msgid "Set Left Selection Bound"
+#: Menus.cpp:2051
+#: Menus.cpp:2087
+msgid "Position"
+msgstr "Položaj"
+
+#: Menus.cpp:2051
+msgid "Set Left Selection Boundary"
msgstr "Nastavi levo mejo izbora"
-#: Menus.cpp:2068
-msgid "Set Right Selection Bound"
+#: Menus.cpp:2087
+msgid "Set Right Selection Boundary"
msgstr "Nastavi desno mejo izbora"
-#: Menus.cpp:2337
+#: Menus.cpp:2444
msgid "You must select a track first."
msgstr "Prosimo, da najprej izberete sled."
-#: Menus.cpp:2369
+#: Menus.cpp:2479
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "Ponovi %s\tCtrl+R"
+msgid "Repeat %s"
+msgstr "Ponovi %s"
-#: Menus.cpp:2512
+#: Menus.cpp:2620
msgid "There are no label tracks to export."
msgstr "Sledi z oznakami za izvoz ne obstajajo."
-#: Menus.cpp:2607
+#: Menus.cpp:2715
msgid "Export MIDI As:"
msgstr "Izvozi MIDI kot:"
-#: Menus.cpp:2611
+#: Menus.cpp:2719
msgid "MIDI file (*.mid)|*.mid|Allegro file (*.gro)|*.gro"
msgstr "Datoteke MIDI (*.mid)|*.mid|Datoteke Allegro (*.gro)|*.gro"
-#: Menus.cpp:2643
-msgid "You have selected a filename with an unrecognized file extension.\n"
+#: Menus.cpp:2751
+msgid ""
+"You have selected a filename with an unrecognized file extension.\n"
"Do you want to continue?"
-msgstr "Izbrali ste ime datoteke z nerazpoznano konÄnico datoteke.\n"
+msgstr ""
+"Izbrali ste ime datoteke z nerazpoznano konÄnico datoteke.\n"
"Želite nadaljevati?"
-#: Menus.cpp:2644
+#: Menus.cpp:2752
msgid "Export MIDI"
msgstr "Izvozi MIDI"
-#: Menus.cpp:2702
+#: Menus.cpp:2830
msgid "Nothing to undo"
msgstr "Razveljavitev ni izvedljiva"
-#: Menus.cpp:2722
+#: Menus.cpp:2851
msgid "Nothing to redo"
msgstr "Ponovitev ni izvedljiva"
-#: Menus.cpp:2809
-#: TrackPanel.cpp:596
-#: toolbars/EditToolBar.cpp:133
+#: Menus.cpp:2958
+#: TrackPanel.cpp:652
+#: toolbars/EditToolBar.cpp:130
+#: toolbars/EditToolBar.cpp:190
msgid "Cut"
msgstr "Izreži"
-#: Menus.cpp:2809
+#: Menus.cpp:2958
msgid "Cut to the clipboard"
msgstr "Izreži v odložišce"
-#: Menus.cpp:2849
+#: Menus.cpp:2997
msgid "Split Cut"
msgstr "Razdvoji in izreži"
-#: Menus.cpp:2849
+#: Menus.cpp:2997
msgid "Split-cut to the clipboard"
msgstr "Razdvoji in izreži v odložiÅ¡Äe"
-#: Menus.cpp:2914
-#: Menus.cpp:2986
-#: Menus.cpp:3178
-#: TrackPanel.cpp:598
-#: toolbars/EditToolBar.cpp:137
+#: Menus.cpp:3063
+#: Menus.cpp:3128
+#: Menus.cpp:3209
+#: Menus.cpp:3408
+#: TrackPanel.cpp:654
+#: toolbars/EditToolBar.cpp:134
+#: toolbars/EditToolBar.cpp:192
msgid "Paste"
msgstr "Prilepi"
-#: Menus.cpp:2914
+#: Menus.cpp:3063
msgid "Pasted text from the clipboard"
msgstr "Prilepljeno besedilo z odložiÅ¡Äa"
-#: Menus.cpp:2986
-#: Menus.cpp:3178
+#: Menus.cpp:3128
+#: Menus.cpp:3209
+#: Menus.cpp:3408
msgid "Pasted from the clipboard"
msgstr "Prilepljeno iz odložiÅ¡Äa"
-#: Menus.cpp:3052
+#: Menus.cpp:3277
msgid "Pasting one type of track into another is not allowed."
msgstr "Kopiranje ene vrste sledi v drugo ni dovoljeno."
-#: Menus.cpp:3064
+#: Menus.cpp:3289
msgid "Copying stereo audio into a mono track is not allowed."
msgstr "Kopiranje stereo zvoka v mono sled ni dovoljeno."
-#: Menus.cpp:3214
-#: toolbars/EditToolBar.cpp:139
+#: Menus.cpp:3444
+#: toolbars/EditToolBar.cpp:193
msgid "Trim"
msgstr "Poreži"
-#: Menus.cpp:3214
+#: Menus.cpp:3444
msgid "Trim file to selection"
msgstr "Poreži datoteko na izbor"
-#: Menus.cpp:3243
+#: Menus.cpp:3473
#, c-format
msgid "Split-deleted %.2f seconds at t=%.2f"
msgstr "Razdvojeno z brisanjem %.2f sekund pri t=%.2f"
-#: Menus.cpp:3246
+#: Menus.cpp:3476
msgid "Split Delete"
msgstr "Razdvoji z brisanjem"
-#: Menus.cpp:3267
+#: Menus.cpp:3497
#, c-format
msgid "Disjoined %.2f seconds at t=%.2f"
msgstr "Razdruženih %.2f sekund pri t=%.2f"
-#: Menus.cpp:3270
+#: Menus.cpp:3500
msgid "Disjoin"
msgstr "Razdruži"
-#: Menus.cpp:3291
+#: Menus.cpp:3521
#, c-format
msgid "Joined %.2f seconds at t=%.2f"
msgstr "Združenih %.2f sekund pri t=%.2f"
-#: Menus.cpp:3294
+#: Menus.cpp:3524
msgid "Join"
msgstr "Združi"
-#: Menus.cpp:3313
+#: Menus.cpp:3543
#, c-format
msgid "Silenced selected tracks for %.2f seconds at %.2f"
msgstr "Stišani izbrani posnetki za %.2f sekund pri %.2f"
-#: Menus.cpp:3315
-#: toolbars/EditToolBar.cpp:141
+#: Menus.cpp:3545
+#: toolbars/EditToolBar.cpp:194
msgid "Silence"
msgstr "Tišina"
-#: Menus.cpp:3349
+#: Menus.cpp:3575
msgid "Duplicate"
msgstr "Podvoji"
-#: Menus.cpp:3349
+#: Menus.cpp:3575
msgid "Duplicated"
msgstr "Podvojeno"
-#: Menus.cpp:3368
+#: Menus.cpp:3594
msgid "Cut Labels"
msgstr "Izreži oznaÄeno"
-#: Menus.cpp:3368
+#: Menus.cpp:3594
msgid "Cut labeled regions to the clipboard"
msgstr "Izreži oznaÄena obmoÄja v odložiÅ¡Äe"
-#: Menus.cpp:3382
+#: Menus.cpp:3608
msgid "SplitCut labeled regions to the clipboard"
msgstr "Razvoji z izrezovanjem oznaÄena podroÄja na odložiÅ¡Äe"
-#: Menus.cpp:3383
+#: Menus.cpp:3609
msgid "Split Cut Labels"
msgstr "Oznake razdvojenega z izrezom"
-#: Menus.cpp:3397
+#: Menus.cpp:3623
msgid "Copied labeled regions to the clipboard"
msgstr "Skopirana oznaÄena podroÄja v odložiÅ¡Äe"
-#: Menus.cpp:3397
+#: Menus.cpp:3623
msgid "Copy Labels"
msgstr "Kopiraj oznake"
-#: Menus.cpp:3409
+#: Menus.cpp:3635
msgid "Delete Labels"
msgstr "Izbriši oznake"
-#: Menus.cpp:3409
+#: Menus.cpp:3635
msgid "Deleted labeled regions"
msgstr "Izbrisana oznaÄena podroÄja"
-#: Menus.cpp:3421
+#: Menus.cpp:3647
msgid "Split Delete Labels"
msgstr "Razdvoji z brisanjem oznaÄeno"
-#: Menus.cpp:3421
+#: Menus.cpp:3647
msgid "Split Deleted labeled regions"
msgstr "Razdvoji z brisanjem oznaÄena podroÄja"
-#: Menus.cpp:3433
+#: Menus.cpp:3659
msgid "Silence Labels"
msgstr "Oznake utišanega"
-#: Menus.cpp:3433
+#: Menus.cpp:3659
msgid "Silenced labeled regions"
msgstr "OznaÄena podroÄja utiÅ¡anja"
-#: Menus.cpp:3445
+#: Menus.cpp:3671
msgid "Split Labels"
msgstr "Oznake razdvojenega"
-#: Menus.cpp:3445
+#: Menus.cpp:3671
msgid "Split labeled regions"
msgstr "OznaÄena podroÄja razdvojitve"
-#: Menus.cpp:3457
+#: Menus.cpp:3683
msgid "Join Labels"
msgstr "Oznake združenega"
-#: Menus.cpp:3457
+#: Menus.cpp:3683
msgid "Joined labeled regions"
msgstr "OznaÄena podroÄja združevanja"
-#: Menus.cpp:3469
+#: Menus.cpp:3695
msgid "Disjoin Labels"
msgstr "Oznake razdruženega"
-#: Menus.cpp:3469
+#: Menus.cpp:3695
msgid "Disjoined labeled regions"
msgstr "OznaÄena podroÄja razdruževanja"
-#: Menus.cpp:3491
-#: TrackPanel.cpp:6134
+#: Menus.cpp:3717
+#: TrackPanel.cpp:6257
msgid "Split"
msgstr "Razdvoji"
-#: Menus.cpp:3585
+#: Menus.cpp:3806
msgid "Split New"
msgstr "Razdvoji v novo"
-#: Menus.cpp:3585
+#: Menus.cpp:3806
msgid "Split to new track"
msgstr "Razdvoji v novo sled"
-#: Menus.cpp:3668
+#: Menus.cpp:3888
msgid "Split at labels"
msgstr "Razdvoji po oznakah"
-#: Menus.cpp:3969
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "Za risanje spektra morajo imeti vse izbrane sledi enako mero vzorÄenja."
-
-#: Menus.cpp:3995
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "Izbranega je preveÄ zvoka. Analiziranih bo le prvih %.1f sekund zvoka."
-
-#: Menus.cpp:4130
+#: Menus.cpp:4302
#, c-format
msgid "Imported labels from '%s'"
msgstr "Uvožene oznake iz '%s'"
-#: Menus.cpp:4131
+#: Menus.cpp:4303
msgid "Import Labels"
msgstr "Uvozi oznake"
-#: Menus.cpp:4142
+#: Menus.cpp:4314
msgid "Select a MIDI file..."
msgstr "Izberite datoteko MIDI ..."
-#: Menus.cpp:4146
+#: Menus.cpp:4318
msgid "MIDI and Allegro files (*.mid;*.midi;*.gro)|*.mid;*.midi;*.gro|MIDI files (*.mid;*.midi)|*.mid;*.midi|Allegro files (*.gro)|*.gro|All files (*.*)|*.*"
msgstr "Datoteke MIDI in Allegro (*.mid;*.midi;*.gro)|*.mid;*.midi;*.gro|Datoteke MIDI (*.mid)|*.mid|Datoteke Allegro (*.gro)|*.gro|Vse datoteke (*.*)|*.*"
-#: Menus.cpp:4162
+#: Menus.cpp:4334
#, c-format
msgid "Imported MIDI from '%s'"
msgstr "Uvožen MIDI iz '%s'"
-#: Menus.cpp:4163
+#: Menus.cpp:4335
msgid "Import MIDI"
msgstr "Uvozi MIDI"
-#: Menus.cpp:4177
+#: Menus.cpp:4349
msgid "Select any uncompressed audio file..."
msgstr "Izberite katero koli nestisnjeno zvoÄno datoteko ..."
-#: Menus.cpp:4181
+#: Menus.cpp:4353
msgid "All files (*)|*"
msgstr "Vse datoteke (*)|*"
-#: Menus.cpp:4205
+#: Menus.cpp:4377
msgid "Edit the metadata tags"
msgstr "Uredi metapodatkovne oznake"
-#: Menus.cpp:4206
-#: export/Export.cpp:353
+#: Menus.cpp:4378
+#: export/Export.cpp:348
msgid "Edit Metadata"
msgstr "Uredi metapodatke"
-#: Menus.cpp:4206
+#: Menus.cpp:4378
msgid "Edit Metadata tags"
msgstr "Uredi metazaznamke"
-#: Menus.cpp:4262
+#: Menus.cpp:4433
#, c-format
msgid "Rendered all audio in track '%s'"
msgstr "Ves zvok je bil izdelan v sledi '%s'"
-#: Menus.cpp:4263
+#: Menus.cpp:4434
msgid "Render"
msgstr "Izdelaj"
-#: Menus.cpp:4268
+#: Menus.cpp:4439
#, c-format
msgid "Mixed and rendered %d tracks into one new stereo track"
msgstr "V novo stereo sled je bilo zmešanih in izdelanih %d sledi"
-#: Menus.cpp:4271
+#: Menus.cpp:4442
#, c-format
msgid "Mixed and rendered %d tracks into one new mono track"
msgstr "V novo mono sled je bilo zmešanih in izdelanih %d sledi"
-#: Menus.cpp:4273
-#: Mix.cpp:121
-msgid "&Mix and Render"
-msgstr "&Zmešaj in izdelaj"
+#: Menus.cpp:4444
+#: Mix.cpp:120
+msgid "Mix and Render"
+msgstr "Zmešaj in izdelaj"
-#: Menus.cpp:4403
+#: Menus.cpp:4576
msgid "Aligned with zero"
msgstr "Združeni z niÄlo"
-#: Menus.cpp:4407
+#: Menus.cpp:4580
msgid "Aligned cursor"
msgstr "Poravnana kazalka"
-#: Menus.cpp:4411
+#: Menus.cpp:4584
msgid "Aligned with selection start"
msgstr "Poravnano z zaÄetkom izbora"
-#: Menus.cpp:4415
+#: Menus.cpp:4588
msgid "Aligned with selection end"
msgstr "Poravnano s koncem izbora"
-#: Menus.cpp:4419
+#: Menus.cpp:4592
msgid "Aligned end with cursor"
msgstr "Konec poravnan s kazalko"
-#: Menus.cpp:4423
+#: Menus.cpp:4596
msgid "Aligned end with selection start"
msgstr "Konec poravnan z zaÄetkom izbora"
-#: Menus.cpp:4427
+#: Menus.cpp:4600
msgid "Aligned end with selection end"
msgstr "Konec poravnan s koncem izbora"
-#: Menus.cpp:4431
+#: Menus.cpp:4604
msgid "Aligned"
msgstr "Poravnano"
-#: Menus.cpp:4464
+#: Menus.cpp:4637
msgid "Align"
msgstr "Poravnaj"
-#: Menus.cpp:4549
+#: Menus.cpp:4723
msgid "Sync MIDI with Audio"
msgstr "Sinhroniziraj MIDI z zvokom"
-#: Menus.cpp:4553
+#: Menus.cpp:4727
msgid "Alignment completed."
msgstr "Poravnava dokonÄana."
-#: Menus.cpp:4564
+#: Menus.cpp:4738
msgid "Created new audio track"
msgstr "Ustvarjen nov posnetek"
-#: Menus.cpp:4564
-#: Menus.cpp:4587
-#: Menus.cpp:4602
-#: Menus.cpp:4622
+#: Menus.cpp:4738
+#: Menus.cpp:4760
+#: Menus.cpp:4775
+#: Menus.cpp:4795
msgid "New Track"
msgstr "Nova sled"
-#: Menus.cpp:4587
+#: Menus.cpp:4760
msgid "Created new stereo audio track"
msgstr "Ustvarjena nova stereo zvoÄna sled"
-#: Menus.cpp:4602
+#: Menus.cpp:4775
msgid "Created new label track"
msgstr "Ustvarjena nova datoteka z oznakami"
-#: Menus.cpp:4611
+#: Menus.cpp:4784
msgid "The version of Audacity you are using does not support multiple time tracks."
msgstr "RazliÄica programa Audacity, ki jo uporabljate, ne podpira veÄ Äasovnih sledi."
-#: Menus.cpp:4622
+#: Menus.cpp:4795
msgid "Created new time track"
msgstr "Ustvarjena nova Äasovna sled"
-#: Menus.cpp:4677
+#: Menus.cpp:4855
msgid "Added label"
msgstr "Oznaka dodana"
-#: Menus.cpp:4712
+#: Menus.cpp:4890
msgid "Edited labels"
msgstr "Urejene oznake"
-#: Menus.cpp:4739
+#: Menus.cpp:4917
msgid "Save CleanSpeech Preset File As:"
msgstr "Shrani datoteko prednastavitev PoÄistiGovor kot:"
-#: Menus.cpp:4743
+#: Menus.cpp:4921
msgid "CleanSpeech Presets (*.csp)|*.csp"
msgstr "Prednastavitve PoÄistiGovor (*.csp)|*.csp"
-#: Menus.cpp:4750
-#: export/Export.cpp:605
+#: Menus.cpp:4928
+#: export/Export.cpp:610
msgid "Sorry, pathnames longer than 256 characters not supported."
msgstr "Oprostite, poti do datotek ne smejo presegati 256 znakov."
-#: Menus.cpp:4796
+#: Menus.cpp:4974
msgid "Problem encountered exporting presets."
msgstr "Nastopila je težava pri izvozu prednastavitev."
-#: Menus.cpp:4797
-#: export/Export.cpp:468
+#: Menus.cpp:4975
+#: export/Export.cpp:472
msgid "Unable to export"
msgstr "Ni mogoÄe izvoziti"
-#: Menus.cpp:4981
+#: Menus.cpp:5158
msgid "Remove Track"
msgstr "Odstrani sled"
-#: Menus.cpp:4981
+#: Menus.cpp:5158
msgid "Removed audio track(s)"
msgstr "Odstrani zvoÄni(e) posnetek(e)"
-#: Menus.cpp:5138
-#: Menus.cpp:5193
-#: export/ExportFFmpeg.cpp:710
-#: export/ExportMP3.cpp:1928
+#: Menus.cpp:5314
+#: Menus.cpp:5370
+#: export/ExportFFmpeg.cpp:756
+#: export/ExportMP3.cpp:1785
msgid "Resample"
msgstr "PrevzorÄi"
-#: Menus.cpp:5158
-#: TrackPanel.cpp:6361
+#: Menus.cpp:5335
+#: TrackPanel.cpp:6481
msgid "New sample rate (Hz):"
msgstr "Nova frekvenco vzorÄenja (Hz):"
-#: Menus.cpp:5182
-#: TrackPanel.cpp:6385
+#: Menus.cpp:5359
+#: TrackPanel.cpp:6505
msgid "The entered value is invalid"
msgstr "Vnesena vrednost ni veljavna"
-#: Menus.cpp:5191
+#: Menus.cpp:5368
#, c-format
msgid "Resampling track %d"
msgstr "PrevzorÄenje sledi %d"
-#: Menus.cpp:5200
+#: Menus.cpp:5377
msgid "Resample Track"
msgstr "PrevzorÄi sled"
-#: Menus.cpp:5200
+#: Menus.cpp:5377
msgid "Resampled audio track(s)"
msgstr "PrevzorÄene zvoÄne sledi"
@@ -2941,7 +3055,7 @@ msgstr "PrevzorÄene zvoÄne sledi"
msgid "Mix"
msgstr "Zmešaj"
-#: Mix.cpp:122
+#: Mix.cpp:121
msgid "Mixing and rendering tracks"
msgstr "Mešanje in izdelava sledi"
@@ -2949,83 +3063,91 @@ msgstr "Mešanje in izdelava sledi"
msgid "Note Track"
msgstr "Notiraj sled"
-#: Printing.cpp:192
+#: Printing.cpp:160
msgid "There was a problem printing."
msgstr "Pri tiskanju je prišlo do težav."
-#: Printing.cpp:193
+#: Printing.cpp:161
msgid "Print"
msgstr "Natisni"
-#: Project.cpp:673
+#: Project.cpp:671
+msgid "Repeat Last Effect"
+msgstr "Ponovi zadnji uÄinek"
+
+#: Project.cpp:776
msgid "Main Mix"
msgstr "Glavni zmešani zvok"
-#: Project.cpp:797
+#: Project.cpp:894
#, c-format
msgid "Welcome to Audacity version %s"
msgstr "DobrodoÅ¡li v Audacity razliÄice %s"
-#: Project.cpp:957
+#: Project.cpp:1049
msgid "(Recovered)"
msgstr "(obnovljeno)"
-#: Project.cpp:1546
-#: TrackPanel.cpp:796
-#: toolbars/ControlToolBar.cpp:192
+#: Project.cpp:1718
+#: TrackPanel.cpp:846
+#: toolbars/ControlToolBar.cpp:187
msgid "Record"
msgstr "Posnemi"
-#: Project.cpp:1546
-#: TrackPanel.cpp:796
+#: Project.cpp:1718
+#: TrackPanel.cpp:846
msgid "Recorded Audio"
msgstr "Posneti zvok"
-#: Project.cpp:1564
+#: Project.cpp:1736
msgid "Save changes before closing?"
msgstr "Želite shraniti spremembe pred izhodom?"
-#: Project.cpp:1567
-msgid "\n"
+#: Project.cpp:1739
+msgid ""
+"\n"
"If saved, the project will have no tracks.\n"
"\n"
"To save any previously open tracks:\n"
"Cancel, Edit > Undo until all tracks\n"
"are open, then File > Save Project."
-msgstr "\n"
+msgstr ""
+"\n"
"Shranjen projekt bo brez sledi!!\n"
"\n"
"Za shranjevanje predhodno odprtih sledi:\n"
"kliknite PrekliÄi, Uredi > Razveljavi, dokler niso\n"
"odprte vse sledi, nato Datoteka > Shrani projekt."
-#: Project.cpp:1570
+#: Project.cpp:1742
msgid "Save changes?"
msgstr "Želite shraniti spremembe?"
-#: Project.cpp:1772
-msgid "All files|*.*|All supported files|"
-msgstr "Vse datoteke|*.*|Vse podprte datoteke|"
+#: Project.cpp:1954
+msgid "All files|*|All supported files|"
+msgstr "Vse datoteke|*|Vse podprte datoteke|"
-#: Project.cpp:1802
+#: Project.cpp:1984
msgid "Select one or more audio files..."
msgstr "Izberite eno ali veÄ zvoÄnih datotek ..."
-#: Project.cpp:1829
+#: Project.cpp:2011
msgid "Audacity projects|*.aup|"
msgstr "Projekti Audacity|*.aup"
-#: Project.cpp:1882
-#: Project.cpp:2304
+#: Project.cpp:2071
+#: Project.cpp:2506
#, c-format
-msgid "This file was saved by Audacity %s, a much\n"
+msgid ""
+"This file was saved by Audacity %s, a much\n"
"older version. The format has changed.\n"
"\n"
"Audacity could corrupt the file in opening\n"
"it, so you must back it up first.\n"
"\n"
"Open this file now?"
-msgstr "Datoteko ste shranili z veliko starejÅ¡o razliÄico\n"
+msgstr ""
+"Datoteko ste shranili z veliko starejÅ¡o razliÄico\n"
"Audacity %s. Zapis se je medtem spremenil.\n"
"\n"
"Audacity jo bo od odprtju najverjetneje poškodoval,\n"
@@ -3033,87 +3155,115 @@ msgstr "Datoteko ste shranili z veliko starejÅ¡o razliÄico\n"
"\n"
"Želite kljub temu zdaj odpreti to datoteko?"
-#: Project.cpp:1883
+#: Project.cpp:2072
msgid "1.0 or earlier"
msgstr "1.0 ali starejši"
-#: Project.cpp:1889
-#: Project.cpp:2316
+#: Project.cpp:2078
+#: Project.cpp:2518
msgid "Opening old project file"
msgstr "Odpiranje datoteko starega projekta"
-#: Project.cpp:1915
-#: Project.cpp:1923
+#: Project.cpp:2102
+msgid ""
+"You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+"Odpreti želite samodejno ustvarjeno datoteko varnostne kopije.\n"
+"To lahko pripelje do resne izgube podatkov.\n"
+"\n"
+"Namesto tega raje odprite aktualni projekt Audacity."
+
+#: Project.cpp:2103
+msgid "Backup file detected"
+msgstr "Zaznana je datoteka varnostne kopije"
+
+#: Project.cpp:2117
+#: Project.cpp:2125
+#: xml/XMLWriter.cpp:306
msgid "Error opening file"
msgstr "Napaka pri odpiranju datoteke."
-#: Project.cpp:1929
+#: Project.cpp:2131
#, c-format
-msgid "File may be invalid or corrupted: \n"
+msgid ""
+"File may be invalid or corrupted: \n"
"%s"
-msgstr "Datoteka je morda neveljavna ali okvarjena: \n"
+msgstr ""
+"Datoteka je morda neveljavna ali okvarjena: \n"
"%s"
-#: Project.cpp:1930
+#: Project.cpp:2132
msgid "Error opening file or project"
msgstr "Napaka pri odpiranju datoteke ali projekta"
-#: Project.cpp:1950
+#: Project.cpp:2152
msgid "Audacity was unable to convert an Audacity 1.0 project to the new project format."
msgstr "Audacity ne zmore pretvoriti projekta Audacity 1.0 v nov zapis projekta."
-#: Project.cpp:2053
+#: Project.cpp:2259
msgid "Could not remove old auto save file"
msgstr "Stare datoteke samodejnega shranjevanja ni mogoÄe odstraniti"
-#: Project.cpp:2055
+#: Project.cpp:2261
msgid "Project was recovered"
msgstr "Projekt je bil obnovljen"
-#: Project.cpp:2055
+#: Project.cpp:2261
msgid "Recover"
msgstr "Obnovi"
-#: Project.cpp:2084
+#: Project.cpp:2290
msgid "Project checker repaired file"
msgstr "Preverjalnik projekta je datoteko popravil"
-#: Project.cpp:2084
+#: Project.cpp:2290
#: effects/Repair.h:29
msgid "Repair"
msgstr "Popravi"
-#: Project.cpp:2230
+#: Project.cpp:2431
#, c-format
msgid "Couldn't find the project data folder: \"%s\""
msgstr "Mape s projektnimi podatki ni mogoÄe najti: \"%s\""
-#: Project.cpp:2273
+#: Project.cpp:2475
#, c-format
-msgid "This file was saved using Audacity %s.\n"
+msgid ""
+"This file was saved using Audacity %s.\n"
"You are using Audacity %s - you need to upgrade to\n"
"a newer version to open this file."
-msgstr "To datoteko ste shranili z Audacity %s.\n"
+msgstr ""
+"To datoteko ste shranili z Audacity %s.\n"
"Uporabljate Audacity %s - da bi lahko odprli to datoteko,\n"
"morate nadgraditi program na novejÅ¡o razliÄice."
-#: Project.cpp:2277
+#: Project.cpp:2479
msgid "Can't open project file"
msgstr "Ni mogoÄe odpreti datoteke projekta"
-#: Project.cpp:2311
+#: Project.cpp:2513
#, c-format
-msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+msgid ""
+"This file was saved by Audacity %s.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
-msgstr "Datoteko je shranil Audacity %s.\n"
-"Datoteko lahko odprete s to razliÄico Audacity, Äe pa jo shranite s to razliÄico, je veÄ ne boste mogli odpreti s starejÅ¡o razliÄico.\n"
+msgstr ""
+"Datoteko je shranil Audacity %s.\n"
+"\n"
+"Datoteko lahko odprete s to razliÄico Audacity, Äe pa jo shranite s to\n"
+"razliÄico, je veÄ ne boste mogli odpreti s starejÅ¡o razliÄico.\n"
"\n"
"Želite kljub temu zdaj odpreti to datoteko?"
-#: Project.cpp:2537
-msgid "Your project is now empty.\n"
+#: Project.cpp:2711
+msgid ""
+"Your project is now empty.\n"
"If saved, the project will have no tracks.\n"
"\n"
"To save any previously open tracks:\n"
@@ -3122,61 +3272,78 @@ msgid "Your project is now empty.\n"
"\n"
"Save anyway?"
msgstr ""
+"Vaš projekt je zdaj prazen.\n"
+"Shranjen projekt bo brez sledi!!\n"
+"\n"
+"Za shranjevanje predhodno odprtih sledi:\n"
+"kliknite 'Ne', Uredi > Razveljavi, dokler niso\n"
+"odprte vse sledi, nato Datoteka > Shrani projekt.\n"
+"\n"
+"Želite kljub temu shraniti?"
-#: Project.cpp:2538
+#: Project.cpp:2712
msgid "Warning empty project"
-msgstr ""
+msgstr "Opozorilo - prazen projekt"
-#: Project.cpp:2588
+#: Project.cpp:2821
#, c-format
-msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
-msgstr "Napaka pri shranjevanju projekta. Morda v %s\n"
+msgid ""
+"Could not save project. Perhaps %s \n"
+"is not writable or the disk is full."
+msgstr ""
+"Napaka pri shranjevanju projekta. Morda v %s \n"
"ni mogoÄe pisati ali pa je disk poln."
-#: Project.cpp:2590
-#: Project.cpp:2605
+#: Project.cpp:2823
+#: Project.cpp:2849
msgid "Error saving project"
msgstr "Napaka pri shranjevanju projekta"
-#: Project.cpp:2680
+#: Project.cpp:2847
+#: Project.cpp:3950
+#: Tags.cpp:1203
+#: effects/Equalization.cpp:1095
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr "Napaka pri zapisovanju v datoteko \"%s\": %s"
+
+#: Project.cpp:2927
#, c-format
msgid "Saved %s"
msgstr "Shranjeno %s"
-#: Project.cpp:2806
+#: Project.cpp:3080
#, c-format
msgid "Imported '%s'"
msgstr "Uvoženo '%s'"
-#: Project.cpp:2807
-#: import/ImportPCM.cpp:483
-#: import/ImportPCM.cpp:527
+#: Project.cpp:3081
msgid "Import"
msgstr "Uvozi"
-#: Project.cpp:2840
-#: Project.cpp:2848
+#: Project.cpp:3116
msgid "Error importing"
msgstr "Napaka pri uvozu"
-#: Project.cpp:2882
+#: Project.cpp:3163
msgid "Save Speech As:"
msgstr "Shrani govor kot:"
-#: Project.cpp:2884
+#: Project.cpp:3165
msgid "Windows PCM Audio file (*.wav)|*.wav"
msgstr "ZvoÄna datoteka Windows PCM (*.wav)|*.wav"
-#: Project.cpp:2891
-msgid "Audacity compressed project files (.aup) save your work in a smaller, compressed (.ogg) format. \n"
+#: Project.cpp:3172
+msgid ""
+"Audacity compressed project files (.aup) save your work in a smaller, compressed (.ogg) format. \n"
"Compressed project files are a good way to transmit your project online, because they are much smaller. \n"
"To open a compressed project takes longer than usual, as it imports each compressed track. \n"
"\n"
"Most other programs can't open Audacity project files.\n"
"When you want to save a file that can be opened by other programs, select one of the\n"
"Export commands."
-msgstr "Stisnjene projektne datoteke Audacity (.aup) shranijo vaše delo v manjše, stisnjene datoteke (.ogg).\n"
+msgstr ""
+"Stisnjene projektne datoteke Audacity (.aup) shranijo vaše delo v manjše, stisnjene datoteke (.ogg).\n"
"Stisnjene projektne datoteke so dober naÄin poÅ¡iljanja projektov prek spleta, ker so veliko manjÅ¡e.\n"
"Odpiranje stisnjenega projekta vzame veÄ Äasa kot obiÄajno, saj uvozi vsako stisnjeno sled.\n"
"\n"
@@ -3184,154 +3351,350 @@ msgstr "Stisnjene projektne datoteke Audacity (.aup) shranijo vaše delo v manj
"Äe želite shraniti datoteko, ki jo lahko odprejo drugi programi, izberite enega od\n"
"ukazov za izvoz."
-#: Project.cpp:2894
-msgid "You are saving an Audacity project file (.aup).\n"
+#: Project.cpp:3175
+msgid ""
+"You are saving an Audacity project file (.aup).\n"
"\n"
"Saving a project creates a file that only Audacity can open.\n"
"\n"
"To save an audio file for other programs, use one of the \"File > Export\" commands.\n"
-msgstr "Shranjujete projektno datoteko Audacity (.aup).\n"
+msgstr ""
+"Shranjujete projektno datoteko Audacity (.aup).\n"
"\n"
"Shranjevanje projekta ustvari datoteko, ki jo zna odpreti le Audacity.\n"
"\n"
"Äe želite shraniti zvoÄno datoteko za kak drug program, uporabite enega od ukazov \"Datoteka > Izvozi\".\n"
-#: Project.cpp:2898
+#: Project.cpp:3177
+msgid "Save Project As..."
+msgstr "Shrani projekt kot ..."
+
+#: Project.cpp:3179
msgid "Audacity projects (*.aup)|*.aup"
msgstr "Projekti Audacity (*.aup)|*.aup"
-#: Project.cpp:2952
+#: Project.cpp:3228
msgid "Created new project"
msgstr "Ustvarjen nov projekt"
-#: Project.cpp:3111
+#: Project.cpp:3372
#, c-format
msgid "Deleted %.2f seconds at t=%.2f"
msgstr "Izbrisanih %.2f sekund v t=%.2f"
-#: Project.cpp:3114
-#: effects/Equalization.cpp:1276
-#: effects/Equalization.cpp:2607
+#: Project.cpp:3375
+#: effects/Equalization.cpp:1295
+#: effects/Equalization.cpp:2647
msgid "Delete"
msgstr "Izbriši"
-#: Project.cpp:3308
+#: Project.cpp:3569
#, c-format
msgid "Disk space remains for recording %d hours and %d minutes."
msgstr "Preostali prostor na disku zadostuje za snemanje %d ur in %d minut."
-#: Project.cpp:3311
+#: Project.cpp:3572
#, c-format
msgid "Disk space remains for recording 1 hour and %d minutes."
msgstr "Preostali prostor na disku zadostuje za snemanje 1 ure in %d minut."
-#: Project.cpp:3314
+#: Project.cpp:3575
#, c-format
msgid "Disk space remains for recording %d minutes."
msgstr "Preostali prostor na disku zadostuje za snemanje %d minut."
-#: Project.cpp:3317
+#: Project.cpp:3578
#, c-format
msgid "Disk space remains for recording %d seconds."
msgstr "Preostali prostor na disku zadostuje za snemanje %d sekund."
-#: Project.cpp:3320
+#: Project.cpp:3581
msgid "Out of disk space"
msgstr "Prostora na disku je premalo"
-#: Project.cpp:3333
+#: Project.cpp:3594
#, c-format
msgid "Import(s) complete. Running %d on-demand waveform calculations. Overall %2.0f%% complete."
msgstr "Uvozi dokonÄani. Poteka %d izraÄunov signalnih oblik na zahtevo. V celoti dokonÄano %2.0f%%."
-#: Project.cpp:3336
+#: Project.cpp:3597
#, c-format
msgid "Import complete. Running an on-demand waveform calculation. %2.0f%% complete."
msgstr "Uvoz dokonÄan. Poteka izraÄun signalne oblike na zahtevo. DokonÄano %2.0f%%."
-#: Project.cpp:3614
+#: Project.cpp:3881
msgid "Could not remove old autosave file: "
msgstr "Stare datoteke samodejnega shranjevanja ni mogoÄe odstraniti: "
-#: Project.cpp:3655
+#: Project.cpp:3922
msgid "New Project"
msgstr "Nov projekt"
-#: Project.cpp:3668
+#: Project.cpp:3952
msgid "Error writing autosave file"
msgstr "Napaka pri zapisovanju samodejno shranjene datoteke"
-#: Project.cpp:3693
+#: Project.cpp:3967
msgid "Could not create autosave file: "
msgstr "Datoteke samodejnega shranjevanja ni mogoÄe ustvariti: "
-#: Project.cpp:3719
+#: Project.cpp:3993
#, c-format
msgid "Actual Rate: %d"
msgstr "Dejanska frekvenca: %d"
-#: Resample.cpp:42
+#: Resample.cpp:62
msgid "Libresample by Dominic Mazzoni and Julius Smith"
msgstr "Libresample, Dominic Mazzoni in Julius Smith"
-#: Resample.cpp:53
+#: Resample.cpp:73
msgid "High-quality Sinc Interpolation"
msgstr "Viskokakovostna sinhrona interpolacija:"
-#: Resample.cpp:55
+#: Resample.cpp:75
msgid "Fast Sinc Interpolation"
msgstr "Hitra sinhrona interpolacija"
-#: Resample.cpp:125
+#: Resample.cpp:141
msgid "Libsamplerate by Erik de Castro Lopo"
msgstr "Libsamplerate, Erik de Castro Lopo"
-#: Resample.cpp:218
+#: Resample.cpp:230
#, c-format
msgid "Libsamplerate error: %d\n"
msgstr "Napaka Libsamplerate: %d\n"
-#: Resample.cpp:240
-#: Resample.cpp:250
+#: Resample.cpp:252
+#: Resample.cpp:262
msgid "Resampling disabled."
msgstr "Ponovno vzorÄenje onemogoÄeno."
-#. i18n-hint: Audio data bit depth (precison): 16-bit integers
+#. i18n-hint: Audio data bit depth (precision): 16-bit integers
#: SampleFormat.cpp:66
msgid "16-bit PCM"
msgstr "16-bitni PCM"
-#. i18n-hint: Audio data bit depth (precison): 24-bit integers
+#. i18n-hint: Audio data bit depth (precision): 24-bit integers
#: SampleFormat.cpp:69
msgid "24-bit PCM"
msgstr "24-bitni PCM"
-#. i18n-hint: Audio data bit depth (precison): 32-bit floating point
+#. i18n-hint: Audio data bit depth (precision): 32-bit floating point
#: SampleFormat.cpp:72
msgid "32-bit float"
msgstr "32-bitno plavajoÄe"
-#: Screenshot.cpp:384
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr "Zajemi sliÄico zaslona"
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr "Izberite mesto, kjer bodo shranjene datoteke."
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr "Shrani slike v:"
+
+#: Screenshot.cpp:328
+#: export/ExportMultiple.cpp:242
+#: prefs/DirectoriesPrefs.cpp:94
+msgid "Choose..."
+msgstr "Izberi ..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr "Zajemi celotno okno ali zaslon"
+
+#: Screenshot.cpp:338
+#, fuzzy
+msgid "Resize Small"
+msgstr "Spremeni velikost na majhno"
+
+#: Screenshot.cpp:339
+#, fuzzy
+msgid "Resize Large"
+msgstr "Spremeni velikost na veliko"
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr "Modro ozadje"
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr "Belo ozadje"
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr "Zajemi le okno"
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr "Zajemi celo okno"
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr "Zajemi okno z ostalim"
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr "Zajemi cel zaslon"
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr "PoÄakaj 5 sekund in zajemi okno, ki je v ospredju"
+
+#: Screenshot.cpp:369
+#: effects/Normalize.cpp:74
+#: effects/Normalize.cpp:75
+msgid "false"
+msgstr "ne velja"
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr "Zajami del projektnega okna"
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr "Vse orodne vrstice"
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr "VrsticaIzbora"
+
+#: Screenshot.cpp:381
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr "Orodja"
+
+#: Screenshot.cpp:382
+#: effects/Contrast.cpp:410
+#: toolbars/ControlToolBar.cpp:83
+#: toolbars/ControlToolBar.cpp:243
+msgid "Control"
+msgstr "Nadzor"
+
+#: Screenshot.cpp:388
+#: effects/LoadEffects.cpp:114
+#: toolbars/MixerToolBar.cpp:59
+#: toolbars/MixerToolBar.cpp:245
+msgid "Mixer"
+msgstr "Mešalec"
+
+#: Screenshot.cpp:389
+#: toolbars/MeterToolBar.cpp:50
+#: toolbars/MeterToolBar.cpp:114
+msgid "Meter"
+msgstr "Merilnik"
+
+#: Screenshot.cpp:390
+#: toolbars/EditToolBar.cpp:76
+#: toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr "Uredi"
+
+#: Screenshot.cpp:391
+#: prefs/DevicePrefs.cpp:131
+#: prefs/DevicePrefs.cpp:144
+#: prefs/MidiIOPrefs.cpp:137
+#: prefs/MidiIOPrefs.cpp:150
+#: toolbars/DeviceToolBar.cpp:57
+#: toolbars/DeviceToolBar.cpp:196
+msgid "Device"
+msgstr "Naprava"
+
+#: Screenshot.cpp:392
+#: toolbars/TranscriptionToolBar.cpp:84
+#: toolbars/TranscriptionToolBar.cpp:253
+msgid "Transcription"
+msgstr "Prepis"
+
+#: Screenshot.cpp:398
+#: TrackPanel.cpp:442
+#: TrackPanel.cpp:443
+msgid "Track Panel"
+msgstr "Podokno sledi"
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr "Ravnilo"
+
+#: Screenshot.cpp:400
+#: export/ExportMultiple.cpp:285
+#: export/ExportMultiple.cpp:287
+#: prefs/TracksPrefs.cpp:31
+msgid "Tracks"
+msgstr "Sledi"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr "Prva sled"
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr "Druga sled"
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr "Raztegovanje"
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr "Ena sekunda"
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr "Deset sekund"
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr "Ena minuta"
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr "Pet minut"
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr "Ena ura"
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr "Nizke sledi"
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr "Srednje sledi"
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr "Visoke sledi"
+
+#: Screenshot.cpp:599
msgid "Saved "
msgstr "Shranjeno "
-#: Screenshot.cpp:387
+#: Screenshot.cpp:602
msgid "Error trying to save file: "
msgstr "Napaka pri shranjevanju datoteke: "
-#: Sequence.cpp:804
-#: Sequence.cpp:814
-#: Sequence.cpp:821
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr "Izberite mesto, kjer bodo shranjene zaslonske podobe."
+
+#: Sequence.cpp:799
+#: Sequence.cpp:809
+#: Sequence.cpp:816
msgid "Gap detected in project file\n"
msgstr "V projektni datoteki je opažena luknja/razmik\n"
-#: ShuttleGui.cpp:1972
-#: effects/Effect.cpp:417
-#: effects/audiounits/AudioUnitEffect.cpp:877
+#: ShuttleGui.cpp:2034
+#: effects/Effect.cpp:436
+#: effects/audiounits/AudioUnitEffect.cpp:851
msgid "Pre&view"
msgstr "Pre&dogled"
-#: ShuttleGui.cpp:1979
+#: ShuttleGui.cpp:2041
msgid "&Debug"
msgstr "&RazhroÅ¡Äi"
@@ -3344,748 +3707,752 @@ msgid "Activation level (dB):"
msgstr "Raven aktivacije (dB):"
#: SplashDialog.cpp:60
-msgid "&Welcome to Audacity!"
-msgstr "&Dobrodošli v Audacity!"
+msgid "Welcome to Audacity!"
+msgstr "Dobrodošli v Audacity!"
#: SplashDialog.cpp:112
msgid "Don't show this again at start up"
msgstr "Tega ob zagonu ne prikaži veÄ"
-#: Tags.cpp:640
+#: Tags.cpp:629
msgid "Artist Name"
msgstr "Ime izvajalca"
-#: Tags.cpp:641
+#: Tags.cpp:630
msgid "Track Title"
msgstr "Naslov sledi"
-#: Tags.cpp:642
+#: Tags.cpp:631
msgid "Album Title"
msgstr "Naslov albuma"
-#: Tags.cpp:643
+#: Tags.cpp:632
msgid "Track Number"
msgstr "Å tevilka sledi"
-#: Tags.cpp:644
-#: Tags.cpp:2147
+#: Tags.cpp:633
msgid "Year"
msgstr "Leto"
-#: Tags.cpp:645
+#: Tags.cpp:634
msgid "Genre"
msgstr "Zvrst"
-#: Tags.cpp:646
-#: Tags.cpp:2157
-#: prefs/MousePrefs.cpp:96
+#: Tags.cpp:635
+#: prefs/MousePrefs.cpp:100
msgid "Comments"
msgstr "Komentarji"
-#: Tags.cpp:777
+#: Tags.cpp:788
msgid "Use arrow keys (or RETURN key after editing) to navigate fields."
-msgstr ""
+msgstr "Za krmarjenje po poljih uporabite puÅ¡ÄiÄne tipke (ali tipko Enter po konÄanem urejanju)."
-#: Tags.cpp:813
-msgid "Tag Name"
-msgstr "Ime znaÄke"
+#: Tags.cpp:812
+msgid "Tag"
+msgstr "ZnaÄka"
-#: Tags.cpp:814
-msgid "Tag Value"
-msgstr "Vrednost znaÄke"
+#: Tags.cpp:813
+msgid "Value"
+msgstr "Vrednost"
-#: Tags.cpp:829
-#: Tags.cpp:1486
-#: prefs/KeyConfigPrefs.cpp:116
-msgid "&Clear"
+#: Tags.cpp:828
+msgid "Cl&ear"
msgstr "Po&Äisti"
-#: Tags.cpp:835
+#: Tags.cpp:834
msgid "Genres"
msgstr "Zvrsti"
-#: Tags.cpp:826
+#: Tags.cpp:838
msgid "E&dit..."
-msgstr ""
+msgstr "&Uredi ..."
-#: Tags.cpp:827
+#: Tags.cpp:839
msgid "Rese&t..."
-msgstr ""
+msgstr "Ponas&tavi ..."
-#: Tags.cpp:845
-#: Tags.cpp:1470
-#: Tags.cpp:1997
+#: Tags.cpp:844
msgid "Template"
msgstr "Predloga"
-#: Tags.cpp:849
-#: Tags.cpp:1474
-#: Tags.cpp:2001
-#: prefs/KeyConfigPrefs.cpp:126
+#: Tags.cpp:848
+#: prefs/KeyConfigPrefs.cpp:167
msgid "&Load..."
msgstr "&Naloži ..."
-#: Tags.cpp:850
-#: Tags.cpp:1475
-#: Tags.cpp:2002
-#: prefs/KeyConfigPrefs.cpp:125
+#: Tags.cpp:849
+#: prefs/KeyConfigPrefs.cpp:168
msgid "&Save..."
msgstr "&Shrani ..."
-#: Tags.cpp:852
-#: Tags.cpp:1477
-#: Tags.cpp:2004
-msgid "S&et Default"
-msgstr "N&astavi privzeto"
+#: Tags.cpp:851
+msgid "Set De&fault"
+msgstr "&Nastavi privzeto"
-#: Tags.cpp:1002
-#: Tags.cpp:1640
-#: Tags.cpp:2368
+#: Tags.cpp:1001
msgid "Edit Genres"
msgstr "Uredi zvrsti"
-#: Tags.cpp:1035
-#: Tags.cpp:1047
-#: Tags.cpp:1062
-#: Tags.cpp:1075
-#: Tags.cpp:1678
-#: Tags.cpp:1690
-#: Tags.cpp:1705
-#: Tags.cpp:1718
-#: Tags.cpp:2411
-#: Tags.cpp:2423
-#: Tags.cpp:2438
-#: Tags.cpp:2451
+#: Tags.cpp:1034
+#: Tags.cpp:1046
+#: Tags.cpp:1061
+#: Tags.cpp:1074
msgid "Reset Genres"
msgstr "Ponastavi zvrsti"
-#: Tags.cpp:1035
-#: Tags.cpp:1075
-#: Tags.cpp:1678
-#: Tags.cpp:1718
-#: Tags.cpp:2411
-#: Tags.cpp:2451
+#: Tags.cpp:1034
+#: Tags.cpp:1074
msgid "Unable to save genre file."
msgstr "Datoteke zvrsti ni mogoÄe shraniti."
-#: Tags.cpp:1046
-#: Tags.cpp:1689
-#: Tags.cpp:2422
+#: Tags.cpp:1045
msgid "Are you sure you want to reset the genre list to defaults?"
msgstr "Ste prepriÄani, da želite datoteko zvrsti ponastaviti na privzeto?"
-#: Tags.cpp:1062
-#: Tags.cpp:1705
-#: Tags.cpp:2438
+#: Tags.cpp:1061
msgid "Unable to open genre file."
msgstr "Datoteke zvrsti ni mogoÄe odpreti."
-#: Tags.cpp:1084
+#: Tags.cpp:1096
msgid "Load Metadata As:"
-msgstr ""
+msgstr "Naloži metapodatke kot:"
-#: Tags.cpp:1122
-#: Tags.cpp:1772
-#: Tags.cpp:2494
+#: Tags.cpp:1121
msgid "Error loading metadata"
msgstr "Napaka pri nalaganju metapodatkov"
-#: Tags.cpp:1097
-#: Tags.cpp:1151
-#: Tags.cpp:1751
-#: Tags.cpp:1787
-#: Tags.cpp:2473
-#: Tags.cpp:2509
+#: Tags.cpp:1150
msgid "Save Metadata As:"
msgstr "Shrani metapodatke kot:"
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr "Napaka pri shranjevanju datoteke znaÄk"
+
#: Theme.cpp:638
#, c-format
-msgid "Audacity could not write file:\n"
+msgid ""
+"Audacity could not write file:\n"
" %s."
-msgstr "Z Audacity ni mogoÄe pisati v datoteko:\n"
+msgstr ""
+"Z Audacity ni mogoÄe pisati v datoteko:\n"
" %s."
#: Theme.cpp:656
#, c-format
-msgid "Audacity could not open file:\n"
+msgid ""
+"Audacity could not open file:\n"
" %s\n"
"for writing."
-msgstr "Z Audacity ni mogoÄe odpreti datoteke\n"
+msgstr ""
+"Z Audacity ni mogoÄe odpreti datoteke\n"
" %s\n"
"za pisanje."
#: Theme.cpp:664
#, c-format
-msgid "Audacity could not write images to file:\n"
+msgid ""
+"Audacity could not write images to file:\n"
" %s."
-msgstr "Z Audacity ni mogoÄe zapisati slik v datoteko:\n"
+msgstr ""
+"Z Audacity ni mogoÄe zapisati slik v datoteko:\n"
" %s."
#: Theme.cpp:799
#, c-format
-msgid "Audacity could not find file:\n"
+msgid ""
+"Audacity could not find file:\n"
" %s.\n"
"Theme not loaded."
-msgstr "Z Audacity ni mogoÄe najti datoteke:\n"
+msgstr ""
+"Z Audacity ni mogoÄe najti datoteke:\n"
" %s.\n"
"Tema ni bila naložena."
#: Theme.cpp:807
#: Theme.cpp:896
#, c-format
-msgid "Audacity could not load file:\n"
+msgid ""
+"Audacity could not load file:\n"
" %s.\n"
"Bad png format perhaps?"
-msgstr "Z Audacity ni mogoÄe naložiti datoteke:\n"
+msgstr ""
+"Z Audacity ni mogoÄe naložiti datoteke:\n"
" %s.\n"
"Morda gre za nepravilen zapis png?"
#: Theme.cpp:823
-msgid "Audacity could not read its default theme.\n"
+msgid ""
+"Audacity could not read its default theme.\n"
"Please report the problem."
-msgstr "Z Audacity ni bilo mogoÄe prebrati privzete teme.\n"
+msgstr ""
+"Z Audacity ni bilo mogoÄe prebrati privzete teme.\n"
"Prosim, sporoÄite težavo."
#: Theme.cpp:918
#, c-format
-msgid "None of the expected theme component files\n"
+msgid ""
+"None of the expected theme component files\n"
" were found in:\n"
" %s."
-msgstr "Nobene od priÄakovanih datotek komponent teme\n"
+msgstr ""
+"Nobene od priÄakovanih datotek komponent teme\n"
" ni bilo mogoÄe najti v:\n"
" %s."
#: Theme.cpp:942
-#: effects/NoiseRemoval.cpp:173
+#: effects/NoiseRemoval.cpp:172
#, c-format
-msgid "Could not create directory:\n"
+msgid ""
+"Could not create directory:\n"
" %s"
-msgstr "Mape ni mogoÄe ustvariti:\n"
+msgstr ""
+"Mape ni mogoÄe ustvariti:\n"
" %s"
#: Theme.cpp:963
#, c-format
-msgid "Audacity could not save file:\n"
+msgid ""
+"Audacity could not save file:\n"
" %s"
-msgstr "Ni mogoÄe shraniti datoteke:\n"
+msgstr ""
+"Ni mogoÄe shraniti datoteke:\n"
" %s"
#: Theme.cpp:975
#, c-format
-msgid "All required files in:\n"
+msgid ""
+"All required files in:\n"
" %s\n"
"were already present."
-msgstr "Vse potrebne datoteke v:\n"
+msgstr ""
+"Vse potrebne datoteke v:\n"
" %s\n"
"so bile že prisotne."
-#: TimeDialog.cpp:53
-#: TimerRecordDialog.cpp:227
-#: TimerRecordDialog.cpp:305
-#: TimerRecordDialog.cpp:309
-#: effects/Noise.cpp:243
+#: TimeDialog.h:29
+#: TimerRecordDialog.cpp:233
+#: TimerRecordDialog.cpp:354
+#: TimerRecordDialog.cpp:358
+#: effects/DtmfGen.cpp:446
+#: effects/Noise.cpp:191
+#: effects/Noise.cpp:207
+#: effects/ToneGen.cpp:279
+#: effects/ToneGen.cpp:291
#: effects/ToneGen.cpp:323
-#: effects/ToneGen.cpp:366
+#: effects/ToneGen.cpp:335
msgid "Duration"
msgstr "Trajanje"
-#: TimerRecordDialog.cpp:68
+#: TimeTrack.cpp:44
+msgid "Time Track"
+msgstr "Äasovna sled"
+
+#: TimerRecordDialog.cpp:69
msgid "Audacity Timer Record"
msgstr "Äasovno snemanje Audacity"
-#: TimerRecordDialog.cpp:224
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr "Dolžina je niÄ. NiÄ ne bo posneto."
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr "Napaka v trajanju"
+
+#: TimerRecordDialog.cpp:230
msgid "Recording start"
msgstr "ZaÄetek snemanja"
-#: TimerRecordDialog.cpp:225
+#: TimerRecordDialog.cpp:231
msgid "Recording end"
msgstr "Konec snemanja"
-#: TimerRecordDialog.cpp:230
+#: TimerRecordDialog.cpp:237
msgid "Audacity Timer Record Progress"
msgstr "Napredek Äasovnega snemanja Audacity"
-#: TimerRecordDialog.cpp:267
+#: TimerRecordDialog.cpp:316
msgid "Start Date and Time"
msgstr "Datum in Äas priÄetka"
-#: TimerRecordDialog.cpp:274
+#: TimerRecordDialog.cpp:323
msgid "Start Date"
msgstr "ZaÄetni datum"
-#: TimerRecordDialog.cpp:286
+#: TimerRecordDialog.cpp:335
msgid "End Date and Time"
msgstr "Datum in Äas zakljuÄka"
-#: TimerRecordDialog.cpp:294
+#: TimerRecordDialog.cpp:343
msgid "End Date"
msgstr "KonÄni datum"
#. i18n-hint: A time specification like "Sunday 28th October 2007 15:16:17 GMT"
#. * but hopefully translated by wxwidgets will be inserted into this
-#: TimerRecordDialog.cpp:381
+#: TimerRecordDialog.cpp:430
#, c-format
msgid "Waiting to start recording at %s.\n"
msgstr "ÄakajoÄ na zaÄetek snemanja ob: %s.\n"
-#: TimerRecordDialog.cpp:382
+#: TimerRecordDialog.cpp:436
msgid "Audacity Timer Record - Waiting for Start"
msgstr "Äasovno snemanje Audacity - Äakanje na zaÄetek"
-#: TrackPanel.cpp:457
-#: TrackPanel.cpp:458
-msgid "Track Panel"
-msgstr "Podokno sledi"
-
-#: TrackPanel.cpp:541
-#: prefs/QualityPrefs.cpp:97
+#: TrackPanel.cpp:596
+#: prefs/QualityPrefs.cpp:99
msgid "Other..."
msgstr "Drugo ..."
-#: TrackPanel.cpp:549
-#: TrackPanel.cpp:571
-#: TrackPanel.cpp:580
-#: TrackPanel.cpp:588
-#: TrackPanel.cpp:5793
+#: TrackPanel.cpp:604
+#: TrackPanel.cpp:627
+#: TrackPanel.cpp:636
+#: TrackPanel.cpp:644
msgid "Name..."
msgstr "Ime ..."
-#: TrackPanel.cpp:551
-#: TrackPanel.cpp:573
-#: TrackPanel.cpp:584
-#: TrackPanel.cpp:590
-#: TrackPanel.cpp:5797
+#: TrackPanel.cpp:606
+#: TrackPanel.cpp:629
+#: TrackPanel.cpp:640
+#: TrackPanel.cpp:646
msgid "Move Track Up"
msgstr "Premakni sled navzgor"
-#: TrackPanel.cpp:552
-#: TrackPanel.cpp:574
-#: TrackPanel.cpp:585
-#: TrackPanel.cpp:591
-#: TrackPanel.cpp:5798
+#: TrackPanel.cpp:607
+#: TrackPanel.cpp:630
+#: TrackPanel.cpp:641
+#: TrackPanel.cpp:647
msgid "Move Track Down"
msgstr "Premakni sled navzdol"
-#: TrackPanel.cpp:554
-#: effects/ToneGen.cpp:319
-#: prefs/GUIPrefs.cpp:154
+#: TrackPanel.cpp:609
+#: effects/ToneGen.cpp:275
+#: prefs/TracksPrefs.cpp:56
msgid "Waveform"
msgstr "Signalna oblika"
-#: TrackPanel.cpp:555
-#: prefs/GUIPrefs.cpp:155
+#: TrackPanel.cpp:610
+#: prefs/TracksPrefs.cpp:57
msgid "Waveform (dB)"
msgstr "Signalna oblika (dB)"
-#: TrackPanel.cpp:557
-#: prefs/GUIPrefs.cpp:157
+#: TrackPanel.cpp:612
+#: prefs/TracksPrefs.cpp:59
msgid "Spectrum log(f)"
msgstr "Spektralni logaritem (f)"
#. i18n-hint: short form of 'logarithm'
-#: TrackPanel.cpp:558
-#: prefs/GUIPrefs.cpp:158
+#: TrackPanel.cpp:613
+#: prefs/TracksPrefs.cpp:60
msgid "Pitch (EAC)"
msgstr "Višina tona (EAC)"
-#: TrackPanel.cpp:560
-#: TrackPanel.cpp:6096
+#: TrackPanel.cpp:615
+#: TrackPanel.cpp:6200
msgid "Mono"
msgstr "Mono"
-#: TrackPanel.cpp:561
-#: TrackPanel.cpp:6095
+#: TrackPanel.cpp:616
+#: TrackPanel.cpp:6199
msgid "Left Channel"
msgstr "Levi kanal"
-#: TrackPanel.cpp:562
-#: TrackPanel.cpp:6095
+#: TrackPanel.cpp:617
+#: TrackPanel.cpp:6199
msgid "Right Channel"
msgstr "Desni kanal"
-#: TrackPanel.cpp:563
+#: TrackPanel.cpp:618
msgid "Make Stereo Track"
msgstr "Naredi stereo sled"
-#: TrackPanel.cpp:564
+#: TrackPanel.cpp:619
msgid "Split Stereo Track"
msgstr "Razdvoji stereo sled"
-#: TrackPanel.cpp:566
+#: TrackPanel.cpp:620
+msgid "Split Stereo to Mono"
+msgstr "Razdvoji stereo v mono"
+
+#: TrackPanel.cpp:622
msgid "Set Sample Format"
msgstr "Nastavi obliko vzorcev"
-#: TrackPanel.cpp:568
-#: TrackPanel.cpp:6341
+#: TrackPanel.cpp:624
+#: TrackPanel.cpp:6461
msgid "Set Rate"
msgstr "Nastavi frekvenco"
-#: TrackPanel.cpp:576
+#: TrackPanel.cpp:632
msgid "Up Octave"
msgstr "Zvišaj za oktavo"
-#: TrackPanel.cpp:577
+#: TrackPanel.cpp:633
msgid "Down Octave"
msgstr "Znižaj za oktavo"
-#: TrackPanel.cpp:582
-#: TrackPanel.cpp:5795
+#: TrackPanel.cpp:638
msgid "Font..."
msgstr "Pisava ..."
-#: TrackPanel.cpp:593
+#: TrackPanel.cpp:649
msgid "Set Range..."
msgstr "Nastavi podroÄje ..."
-#: TrackPanel.cpp:597
-#: toolbars/EditToolBar.cpp:135
+#: TrackPanel.cpp:653
+#: toolbars/EditToolBar.cpp:132
+#: toolbars/EditToolBar.cpp:191
msgid "Copy"
msgstr "Kopiraj"
-#: TrackPanel.cpp:1258
+#: TrackPanel.cpp:1302
msgid "Click to vertically zoom in, Shift-click to zoom out, Drag to create a particular zoom region."
msgstr "Kliknite za navpiÄno poveÄavo, kliknite s Shift-om za pomanjÅ¡anje, povlecite za ustvarjanje doloÄenega podroÄja za poveÄavo."
-#: TrackPanel.cpp:1263
+#: TrackPanel.cpp:1307
msgid "Drag the label vertically to change the order of the tracks."
msgstr "Povlecite oznako navpiÄno, da boste spremenili vrstni red posnetkov."
-#: TrackPanel.cpp:1283
+#: TrackPanel.cpp:1327
msgid "Click and drag to adjust relative size of stereo tracks."
msgstr "Kliknite in povlecite, da izboljšate relativno velikost stereo posnetkov."
-#: TrackPanel.cpp:1286
+#: TrackPanel.cpp:1330
msgid "Click and drag to resize the track."
msgstr "Kliknite in povlecite, da bi spremenili velikost posnetka."
-#: TrackPanel.cpp:1317
+#: TrackPanel.cpp:1361
msgid "Drag one or more label boundaries"
msgstr "Povlecite eno ali veÄ mej oznak"
-#: TrackPanel.cpp:1318
+#: TrackPanel.cpp:1362
msgid "Drag label boundary"
msgstr "Povlecite mejo oznake"
#. i18n-hint: This string is for the Mac OS, which uses Command-, as the shortcut for Preferences
-#: TrackPanel.cpp:1334
+#: TrackPanel.cpp:1378
msgid "Multi-Tool Mode: Cmd-, for Mouse and Keyboard Preferences"
msgstr "VeÄorodni naÄin: Cmd-, za nastavitve miÅ¡ke in tipkovnice"
#. i18n-hint: This string is for Windows and Linux, which uses Control-P as the shortcut for Preferences
-#: TrackPanel.cpp:1337
+#: TrackPanel.cpp:1381
msgid "Multi-Tool Mode: Ctrl-P for Mouse and Keyboard Preferences"
msgstr "VeÄorodni naÄin: Ctrl-P za nastavitve miÅ¡ke in tipkovnice"
-#: TrackPanel.cpp:1383
+#: TrackPanel.cpp:1427
msgid "Click and drag to move left selection boundary."
msgstr "Kliknite in povlecite, da bi premaknili levi okvir izbora."
-#: TrackPanel.cpp:1388
+#: TrackPanel.cpp:1432
msgid "Click and drag to move right selection boundary."
msgstr "Kliknite in povlecite, da bi premaknili desni okvir izbora."
-#: TrackPanel.cpp:1730
-#: TrackPanel.cpp:3959
-#: TrackPanel.cpp:3991
-#: TrackPanel.cpp:4255
-#: TrackPanel.cpp:6490
-#: TrackPanel.cpp:6510
+#: TrackPanel.cpp:1770
+#: TrackPanel.cpp:4054
+#: TrackPanel.cpp:4086
+#: TrackPanel.cpp:4348
+#: TrackPanel.cpp:6610
+#: TrackPanel.cpp:6630
msgid "Modified Label"
msgstr "Spremenjena oznaka"
-#: TrackPanel.cpp:1731
-#: TrackPanel.cpp:3960
-#: TrackPanel.cpp:3992
-#: TrackPanel.cpp:4256
-#: TrackPanel.cpp:6491
-#: TrackPanel.cpp:6511
+#: TrackPanel.cpp:1771
+#: TrackPanel.cpp:4055
+#: TrackPanel.cpp:4087
+#: TrackPanel.cpp:4349
+#: TrackPanel.cpp:6611
+#: TrackPanel.cpp:6631
msgid "Label Edit"
msgstr "Uredi oznako"
-#: TrackPanel.cpp:1971
+#: TrackPanel.cpp:2009
msgid "Adjusted envelope."
msgstr "Optimirana kuverta."
-#: TrackPanel.cpp:1972
-#: prefs/MousePrefs.cpp:115
+#: TrackPanel.cpp:2010
+#: prefs/MousePrefs.cpp:119
msgid "Envelope"
msgstr "Ovojnica"
-#: TrackPanel.cpp:2123
+#: TrackPanel.cpp:2160
msgid "Moved clip to another track"
msgstr "Posnetek premaknjen na drugo sled"
-#: TrackPanel.cpp:2127
+#: TrackPanel.cpp:2164
msgid "left"
msgstr "levo"
-#: TrackPanel.cpp:2127
+#: TrackPanel.cpp:2164
msgid "right"
msgstr "desno"
#. i18n-hint: %s is a direction like left or right
-#: TrackPanel.cpp:2129
+#: TrackPanel.cpp:2166
#, c-format
msgid "Time shifted tracks/clips %s %.02f seconds"
msgstr "Äasovno %s zamaknjene sledi/posnetki %.02f sekund"
-#: TrackPanel.cpp:2133
-#: prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:112
-#: prefs/MousePrefs.cpp:113
+#: TrackPanel.cpp:2170
+#: prefs/MousePrefs.cpp:115
+#: prefs/MousePrefs.cpp:116
+#: prefs/MousePrefs.cpp:117
msgid "Time-Shift"
msgstr "Äasovni zamik"
-#: TrackPanel.cpp:2916
+#: TrackPanel.cpp:2964
msgid "To use Draw, choose 'Waveform' in the Track Drop-down Menu."
msgstr "Äe želite uporabiti risanje, izberite 'Signalna oblika' v spustnem meniju sledi."
-#: TrackPanel.cpp:2933
+#: TrackPanel.cpp:2981
msgid "To use Draw, zoom in further until you can see the individual samples."
msgstr "Za uporabo risanja poveÄajte pogled, dokler ne vidite posameznih vzorcev."
-#: TrackPanel.cpp:3205
+#: TrackPanel.cpp:3255
msgid "Moved Sample"
msgstr "Premaknjeni vzorec"
-#: TrackPanel.cpp:3206
+#: TrackPanel.cpp:3256
msgid "Sample Edit"
msgstr "Urejanje vzorcev"
-#: TrackPanel.cpp:3305
+#: TrackPanel.cpp:3349
#, c-format
msgid "Removed track '%s.'"
msgstr "Odstranjen posnetek '%s.'"
-#: TrackPanel.cpp:3307
+#: TrackPanel.cpp:3351
msgid "Track Remove"
msgstr "Odstrani sled"
-#: TrackPanel.cpp:3448
+#: TrackPanel.cpp:3497
msgid "Moved gain slider"
msgstr "Premaknjeni drsnik ojaÄitve"
-#: TrackPanel.cpp:3448
+#: TrackPanel.cpp:3497
msgid "Moved pan slider"
msgstr "Premaknjeni drsnik zasuka"
#. i18n-hint: Title of the Gain slider, used to adjust the volume
-#: TrackPanel.cpp:3449
-#: TrackPanel.cpp:5703
-#: TrackPanel.cpp:7244
+#: TrackPanel.cpp:3498
+#: TrackPanel.cpp:5801
+#: TrackPanel.cpp:7254
msgid "Gain"
msgstr "Okrepitev"
#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: TrackPanel.cpp:3449
-#: TrackPanel.cpp:5641
-#: TrackPanel.cpp:7251
+#: TrackPanel.cpp:3498
+#: TrackPanel.cpp:5749
+#: TrackPanel.cpp:7262
msgid "Pan"
msgstr "Zasuk"
-#: TrackPanel.cpp:3576
-#: TrackPanel.cpp:6441
+#: TrackPanel.cpp:3664
+#: TrackPanel.cpp:6561
msgid "up"
msgstr "navzgor"
-#: TrackPanel.cpp:3580
-#: TrackPanel.cpp:6442
+#: TrackPanel.cpp:3668
+#: TrackPanel.cpp:6562
msgid "down"
msgstr "navzdol"
-#: TrackPanel.cpp:3587
-#: TrackPanel.cpp:6437
+#: TrackPanel.cpp:3675
+#: TrackPanel.cpp:6557
#, c-format
msgid "Moved '%s' %s"
msgstr "Premaknjeno '%s' %s"
-#: TrackPanel.cpp:3590
-#: TrackPanel.cpp:6443
+#: TrackPanel.cpp:3678
+#: TrackPanel.cpp:6563
msgid "Move Track"
msgstr "Premakni sled"
-#: TrackPanel.cpp:4155
+#: TrackPanel.cpp:4249
msgid "Expand"
msgstr "Razpostri"
-#: TrackPanel.cpp:4155
+#: TrackPanel.cpp:4249
msgid "Expanded Cut Line"
msgstr "Ärta reza razÅ¡irjena"
-#: TrackPanel.cpp:4164
+#: TrackPanel.cpp:4258
msgid "Merge"
msgstr "Spoji"
-#: TrackPanel.cpp:4164
+#: TrackPanel.cpp:4258
msgid "Merged Clips"
msgstr "Spojeni posnetki"
-#: TrackPanel.cpp:4176
+#: TrackPanel.cpp:4269
+msgid "Remove"
+msgstr "Odstrani"
+
+#: TrackPanel.cpp:4269
msgid "Removed Cut Line"
msgstr "Ärta reza odstranjena"
-#: TrackPanel.cpp:5641
+#: TrackPanel.cpp:5749
msgid "Adjusted Pan"
msgstr "Prilagojeni zasuk"
-#: TrackPanel.cpp:5703
+#: TrackPanel.cpp:5801
msgid "Adjusted gain"
msgstr "Prilagojena ojaÄitev"
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr "Združi s sledjo signalne oblike"
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr "PoÄistite vse združitve v skupine"
-
-#: TrackPanel.cpp:5923
+#: TrackPanel.cpp:6030
msgid "Can't delete track with active audio"
msgstr "Sledi z aktivnim zvokom ni mogoÄe izbrisati"
-#: TrackPanel.cpp:6076
+#: TrackPanel.cpp:6180
msgid "Stereo, "
msgstr "Stereo, "
-#: TrackPanel.cpp:6079
+#: TrackPanel.cpp:6183
msgid "Mono, "
msgstr "Mono, "
-#: TrackPanel.cpp:6081
+#: TrackPanel.cpp:6185
msgid "Left, "
msgstr "Levo, "
-#: TrackPanel.cpp:6083
+#: TrackPanel.cpp:6187
msgid "Right, "
msgstr "Desno, "
-#: TrackPanel.cpp:6105
-#: TrackPanel.cpp:6251
+#: TrackPanel.cpp:6209
+#: TrackPanel.cpp:6371
#, c-format
msgid "Changed '%s' to %s"
msgstr "Spremenjeno: '%s' v %s"
-#: TrackPanel.cpp:6110
+#: TrackPanel.cpp:6212
msgid "Channel"
msgstr "Kanal"
-#: TrackPanel.cpp:6131
+#: TrackPanel.cpp:6253
#, c-format
msgid "Split stereo track '%s'"
msgstr "Razdvoji stereo sled '%s'"
-#: TrackPanel.cpp:6169
+#: TrackPanel.cpp:6255
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr "Razdvoji stereo sled v mono '%s'"
+
+#: TrackPanel.cpp:6287
#, c-format
msgid "Made '%s' a stereo track"
msgstr "Stereo posnetek '%s' narejen."
-#: TrackPanel.cpp:6172
+#: TrackPanel.cpp:6290
msgid "Make Stereo"
msgstr "Naredi stereo"
-#: TrackPanel.cpp:6215
+#: TrackPanel.cpp:6335
#, c-format
msgid "Changed '%s' to %d Hz"
msgstr "Spremenjeno: '%s' v %d Hz"
-#: TrackPanel.cpp:6217
+#: TrackPanel.cpp:6337
msgid "Rate Change"
msgstr "Sprememba mere"
-#: TrackPanel.cpp:6255
+#: TrackPanel.cpp:6375
msgid "Format Change"
msgstr "Sprememba formata:"
-#: TrackPanel.cpp:6405
+#: TrackPanel.cpp:6525
msgid "Change lower speed limit (%) to:"
msgstr "Spremeni spodnjo mejo hitrosti (%) na:"
-#: TrackPanel.cpp:6406
-#: TrackPanel.cpp:6407
+#: TrackPanel.cpp:6526
+#: TrackPanel.cpp:6527
msgid "Lower speed limit"
msgstr "Spodnja meja hitrosti"
-#: TrackPanel.cpp:6412
+#: TrackPanel.cpp:6532
msgid "Change upper speed limit (%) to:"
msgstr "Spremeni zgornjo mejo hitrosti (%) na:"
-#: TrackPanel.cpp:6413
-#: TrackPanel.cpp:6414
+#: TrackPanel.cpp:6533
+#: TrackPanel.cpp:6534
msgid "Upper speed limit"
msgstr "Zgornja meja hitrosti"
-#: TrackPanel.cpp:6422
+#: TrackPanel.cpp:6542
#, c-format
msgid "Set range to '%d' - '%d'"
msgstr "Nastavi obmoÄje na '%d' - '%d'"
-#: TrackPanel.cpp:6425
+#: TrackPanel.cpp:6545
msgid "Set Range"
msgstr "Nastavi podroÄje"
-#: TrackPanel.cpp:6472
+#: TrackPanel.cpp:6592
msgid "Change track name to:"
msgstr "Spremeni naslov sledi v:"
-#: TrackPanel.cpp:6473
+#: TrackPanel.cpp:6593
msgid "Track Name"
msgstr "Ime sledi"
-#: TrackPanel.cpp:6476
+#: TrackPanel.cpp:6596
#, c-format
msgid "Renamed '%s' to '%s'"
msgstr "Preimenovano '%s' v '%s'"
-#: TrackPanel.cpp:6479
+#: TrackPanel.cpp:6599
msgid "Name Change"
msgstr "Sprememba imena"
-#: TrackPanel.cpp:6580
+#: TrackPanel.cpp:6665
msgid "Label Track Font"
msgstr "Pisava oznake sledi"
-#: TrackPanel.cpp:6592
-#: TrackPanel.cpp:6598
+#: TrackPanel.cpp:6677
+#: TrackPanel.cpp:6683
msgid "Face name"
msgstr "Ime pisave"
-#: TrackPanel.cpp:6602
-#: TrackPanel.cpp:6609
+#: TrackPanel.cpp:6687
+#: TrackPanel.cpp:6694
msgid "Face size"
msgstr "Velikost pisave"
-#: TrackPanel.cpp:7171
+#: TrackPanel.cpp:6943
+msgid "Stereo, 999999Hz"
+msgstr "Stereo, 999999Hz"
+
+#: TrackPanel.cpp:7203
msgid "Mute"
msgstr "Utišaj"
-#: TrackPanel.cpp:7171
+#: TrackPanel.cpp:7203
msgid "Solo"
msgstr "Solo"
-#: TrackPanelAx.cpp:273
+#: TrackPanelAx.cpp:285
msgid "TrackView"
msgstr "Pogled sledi"
-#: TrackPanelAx.cpp:281
+#: TrackPanelAx.cpp:293
msgid "Track Accessible out of sync"
msgstr "Dosegljiva sled je asinhrona"
-#: TrackPanelAx.cpp:289
+#: TrackPanelAx.cpp:301
#, c-format
msgid "Track %d"
msgstr "Sled %d"
-#: TrackPanelAx.cpp:295
+#: TrackPanelAx.cpp:307
msgid " Mute On"
msgstr " UtiÅ¡anje vkljuÄeno"
-#: TrackPanelAx.cpp:300
+#: TrackPanelAx.cpp:312
msgid " Solo On"
msgstr " Solo vkljuÄeno"
-#: TrackPanelAx.cpp:304
+#: TrackPanelAx.cpp:316
msgid " Select On"
msgstr " Izbrano"
@@ -4115,105 +4482,112 @@ msgstr "Spremembe predznaka -- sr.vred: %1.4f st.dev.: (%1.4f)\n"
msgid "Direction Changes -- mean: %1.4f sd: (%1.4f)\n"
msgstr "Spremembe smeri -- sr.vred.: %1.4f st.dev.: (%1.4f)\n"
-#: WaveTrack.cpp:88
+#: WaveTrack.cpp:87
msgid "Audio Track"
msgstr "ZvoÄna sled"
-#: WaveTrack.cpp:597
-#: WaveTrack.cpp:616
-#: WaveTrack.cpp:1057
-#: WaveTrack.cpp:1076
+#: WaveTrack.cpp:976
+#: WaveTrack.cpp:995
msgid "There is not enough room available to paste the selection"
msgstr "Ni dovolj prostora, da bi prilepili izbor"
-#: WaveTrack.cpp:2086
+#: WaveTrack.cpp:2021
msgid "There is not enough room available to expand the cut line"
msgstr "Ni dovolj prostora, da bi razpostrli Ärto reza"
-#: commands/CommandManager.cpp:555
+#: commands/CommandManager.cpp:549
#, c-format
msgid "Plugins 1 to %i"
msgstr "VtiÄniki 1 do %i"
-#: commands/CommandManager.cpp:569
+#: commands/CommandManager.cpp:563
#, c-format
msgid "Plugins %i to %i"
msgstr "VtiÄniki %i do %i"
-#: commands/CommandManager.cpp:857
-#, fuzzy
-msgid "Disallowed for some reason. Try selecting some audio first?"
-msgstr "Iz neznanega razloga to ni dovoljeno. Ste prej izbrali kak zvok?"
+#: commands/CommandManager.cpp:928
+msgid ""
+"There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
+msgstr ""
+"Z zadnjim vaÅ¡im dejanjem so težave. Äe mislite,\n"
+"da gre za hroÅ¡Äa, nam natanko poroÄajte, kje in kako se je zgodilo."
-#: commands/CommandManager.cpp:892
-msgid "You can only do this when playing and recording are\n"
+#: commands/CommandManager.cpp:932
+msgid ""
+"You can only do this when playing and recording are\n"
" stopped. [Pausing is not sufficient.]"
-msgstr "To lahko izvedete le, ko sta predvajanje in snemanje\n"
+msgstr ""
+"To lahko izvedete le, ko sta predvajanje in snemanje\n"
" ustavljena. [Premor oz. prekinitev ne zadostuje.]"
-#: commands/CommandManager.cpp:894
-msgid "You must first select some stereo audio for this\n"
+#: commands/CommandManager.cpp:934
+msgid ""
+"You must first select some stereo audio for this\n"
" to use. [You can't use this with mono.]"
-msgstr "Za to morate najprej izbrati kak stereo-zvok.\n"
+msgstr ""
+"Za to morate najprej izbrati kak stereo-zvok.\n"
" [Tega ne morete uporabiti za mono posnetke.]"
-#: commands/CommandManager.cpp:896
+#: commands/CommandManager.cpp:936
msgid "You must first select some audio for this to use."
msgstr "Prosimo, da najprej izberete kak zvoÄni posnetek."
-#: commands/CommandManager.cpp:898
-msgid "You must first select some audio for this\n"
+#: commands/CommandManager.cpp:938
+msgid ""
+"You must first select some audio for this\n"
" to use. [Selecting other kinds of track won't work.]"
-msgstr "Za to morate najprej izbrati kak zvok.\n"
+msgstr ""
+"Za to morate najprej izbrati kak zvok.\n"
" [Izbiranje drugih vrst sledi ne bo delovalo.]"
-#: commands/CommandManager.cpp:903
+#: commands/CommandManager.cpp:943
msgid "Disallowed"
msgstr "OnemogoÄeno"
-#: commands/CommandManager.cpp:1083
+#: commands/CommandManager.cpp:1167
#, c-format
msgid "Loaded %d keyboard shortcuts\n"
msgstr "Naloženih %d bližnjic\n"
-#: commands/CommandManager.cpp:1085
+#: commands/CommandManager.cpp:1169
msgid "Loading keyboard shortcuts"
msgstr "Nalaganje bližnjic"
-#: effects/Amplify.cpp:52
+#: effects/Amplify.cpp:53
#, c-format
msgid "Applied effect: %s %.1f dB"
msgstr "Dodan uÄinek: %s %1f dB"
-#: effects/Amplify.cpp:139
+#: effects/Amplify.cpp:136
msgid "Amplify"
msgstr "OjaÄaj"
-#: effects/Amplify.cpp:155
-#: effects/Compressor.cpp:476
-#: effects/Normalize.cpp:337
+#: effects/Amplify.cpp:152
+#: effects/Compressor.cpp:487
+#: effects/Normalize.cpp:341
msgid "by Dominic Mazzoni"
msgstr "avtorja Dominica Mazzonija"
-#: effects/Amplify.cpp:168
+#: effects/Amplify.cpp:165
msgid "Amplification (dB):"
msgstr "OjaÄitev (dB):"
-#: effects/Amplify.cpp:183
+#: effects/Amplify.cpp:180
msgid "Amplification dB"
-msgstr ""
+msgstr "OjaÄitev (dB)"
-#: effects/Amplify.cpp:190
+#: effects/Amplify.cpp:187
msgid "New Peak Amplitude (dB):"
msgstr "Nova vrhnja amplituda (dB):"
-#: effects/Amplify.cpp:200
+#: effects/Amplify.cpp:197
msgid "Allow clipping"
msgstr "Dovoli rezanje"
-#: effects/Amplify.cpp:222
-#: effects/Amplify.cpp:279
-#: effects/Amplify.cpp:323
+#: effects/Amplify.cpp:219
+#: effects/Amplify.cpp:276
+#: effects/Amplify.cpp:320
msgid "-Infinity"
msgstr "-neskonÄnost"
@@ -4225,81 +4599,84 @@ msgstr "OjaÄaj ..."
msgid "Amplifying"
msgstr "OjaÄanje poteka"
-#: effects/AutoDuck.cpp:125
+#: effects/AutoDuck.cpp:140
msgid "You selected a track which does not contain audio. AutoDuck can only process audio tracks."
msgstr "Izbrali ste sled, ki ne vsebuje zvoka. Samodejno spusti lahko procesira le zvoÄne sledi."
-#: effects/AutoDuck.cpp:126
-#: effects/AutoDuck.cpp:138
-#: effects/AutoDuck.cpp:453
-#: effects/AutoDuck.cpp:570
+#: effects/AutoDuck.cpp:141
+#: effects/AutoDuck.cpp:153
+#: effects/AutoDuck.cpp:467
+#: effects/AutoDuck.cpp:584
msgid "Auto Duck"
msgstr "Samodejno spusti"
-#: effects/AutoDuck.cpp:137
+#: effects/AutoDuck.cpp:152
msgid "Auto Duck needs a control track which must be placed below the selected track(s)."
msgstr "Samodejno spusti potrebuje nadzorno sled, ki se mora nahajati pod izbrano/imi sledjo/mi."
-#: effects/AutoDuck.cpp:465
+#: effects/AutoDuck.cpp:479
msgid "Auto Duck by Markus Meyer"
msgstr "Samodejno spusti avtorja Markusa Meyerja"
-#: effects/AutoDuck.cpp:487
+#: effects/AutoDuck.cpp:501
msgid "Duck amount:"
msgstr "KoliÄina spusta:"
-#: effects/AutoDuck.cpp:492
+#: effects/AutoDuck.cpp:506
msgid "Maximum pause:"
msgstr "NajveÄji premor:"
#. i18n-hint: Name of time display format that shows time in seconds
-#: effects/AutoDuck.cpp:494
-#: effects/AutoDuck.cpp:499
-#: effects/AutoDuck.cpp:504
-#: effects/AutoDuck.cpp:509
-#: effects/AutoDuck.cpp:514
-#: effects/Contrast.cpp:263
-#: effects/Contrast.cpp:286
-#: prefs/AudioIOPrefs.cpp:172
-#: prefs/AudioIOPrefs.cpp:180
-#: prefs/AudioIOPrefs.cpp:182
-#: prefs/AudioIOPrefs.cpp:207
-#: prefs/AudioIOPrefs.cpp:209
-#: prefs/MidiIOPrefs.cpp:161
-#: prefs/MidiIOPrefs.cpp:163
+#: effects/AutoDuck.cpp:508
+#: effects/AutoDuck.cpp:513
+#: effects/AutoDuck.cpp:518
+#: effects/AutoDuck.cpp:523
+#: effects/AutoDuck.cpp:528
+#: prefs/MidiIOPrefs.cpp:185
#: prefs/MidiIOPrefs.cpp:187
-#: prefs/MidiIOPrefs.cpp:189
-#: prefs/MidiIOPrefs.cpp:197
-#: widgets/TimeTextCtrl.cpp:263
+#: prefs/MidiIOPrefs.cpp:209
+#: prefs/MidiIOPrefs.cpp:211
+#: prefs/MidiIOPrefs.cpp:219
+#: prefs/PlaybackPrefs.cpp:65
+#: prefs/PlaybackPrefs.cpp:66
+#: prefs/PlaybackPrefs.cpp:80
+#: prefs/PlaybackPrefs.cpp:81
+#: prefs/PlaybackPrefs.cpp:87
+#: prefs/PlaybackPrefs.cpp:88
+#: prefs/PlaybackPrefs.cpp:102
+#: prefs/PlaybackPrefs.cpp:103
+#: prefs/PlaybackPrefs.cpp:109
+#: prefs/PlaybackPrefs.cpp:110
+#: widgets/TimeTextCtrl.cpp:265
msgid "seconds"
msgstr "sekund"
-#: effects/AutoDuck.cpp:497
+#: effects/AutoDuck.cpp:511
msgid "Outer fade down length:"
msgstr "Dolžina zunanjega pojemanja:"
-#: effects/AutoDuck.cpp:502
+#: effects/AutoDuck.cpp:516
msgid "Outer fade up length:"
msgstr "Dolžina zunanjega naraÅ¡Äanja:"
-#: effects/AutoDuck.cpp:507
+#: effects/AutoDuck.cpp:521
msgid "Inner fade down length:"
msgstr "Dolžina notranjega pojemanja:"
-#: effects/AutoDuck.cpp:512
+#: effects/AutoDuck.cpp:526
msgid "Inner fade up length:"
msgstr "Dolžina notranjega naraÅ¡Äanja:"
-#: effects/AutoDuck.cpp:521
-#: effects/Compressor.cpp:494
+#: effects/AutoDuck.cpp:535
+#: effects/Compressor.cpp:506
msgid "Threshold:"
msgstr "Prag:"
-#: effects/AutoDuck.cpp:570
+#: effects/AutoDuck.cpp:584
msgid "Please enter valid values."
msgstr "Prosim, vnesite veljavne vrednosti."
-#: effects/AutoDuck.cpp:705
+#: effects/AutoDuck.cpp:719
msgid "Preview not available"
msgstr "Predposlušanje ni na voljo"
@@ -4312,10 +4689,9 @@ msgid "Processing Auto Duck..."
msgstr "Procesiranje samodejnega spuÅ¡Äanja ..."
#: effects/AvcCompressor.cpp:738
-#: effects/VST/VSTEffect.cpp:455
-#: effects/audiounits/AudioUnitEffect.cpp:882
-#: effects/nyquist/Nyquist.cpp:1053
-#: widgets/ErrorDialog.cpp:101
+#: effects/audiounits/AudioUnitEffect.cpp:856
+#: effects/nyquist/Nyquist.cpp:1237
+#: widgets/ErrorDialog.cpp:99
msgid "OK"
msgstr "V redu"
@@ -4341,15 +4717,15 @@ msgstr "Frekvenca (Hz):"
#: effects/BassBoost.cpp:205
msgid "Frequency Hertz"
-msgstr ""
+msgstr "Frekvenca (Hz)"
-#: effects/BassBoost.cpp:208
+#: effects/BassBoost.cpp:209
msgid "Boost (dB):"
msgstr "OjaÄitev (dB):"
#: effects/BassBoost.cpp:218
msgid "Boost dB"
-msgstr ""
+msgstr "OjaÄitev (dB)"
#: effects/BassBoost.h:35
msgid "BassBoost..."
@@ -4381,13 +4757,13 @@ msgid "Change Pitch without Changing Tempo"
msgstr "Spremeni višino tona brez spremembe tempa"
#: effects/ChangePitch.cpp:258
-#: effects/ChangeSpeed.cpp:336
-#: effects/ChangeTempo.cpp:173
+#: effects/ChangeSpeed.cpp:337
+#: effects/ChangeTempo.cpp:176
msgid "by Vaughan Johnson && Dominic Mazzoni"
msgstr "avtorja Vauhgan Johnson in Dominic Mazzoni"
#: effects/ChangePitch.cpp:260
-#: effects/ChangeTempo.cpp:175
+#: effects/ChangeTempo.cpp:178
msgid "using SoundTouch, by Olli Parviainen"
msgstr "uporabljen SoundTouch Ollija Parvianena"
@@ -4428,9 +4804,9 @@ msgid "Semitones in half-steps"
msgstr "Poltoni v polkorakih"
#: effects/ChangePitch.cpp:326
-#: effects/ChangeSpeed.cpp:369
-#: effects/ChangeTempo.cpp:206
-#: effects/ChangeTempo.cpp:219
+#: effects/ChangeSpeed.cpp:370
+#: effects/ChangeTempo.cpp:209
+#: effects/ChangeTempo.cpp:222
msgid "from"
msgstr "od"
@@ -4439,9 +4815,9 @@ msgid "From frequency in hertz"
msgstr "Od frekvence (v Hz)"
#: effects/ChangePitch.cpp:331
-#: effects/ChangeSpeed.cpp:374
-#: effects/ChangeTempo.cpp:211
-#: effects/ChangeTempo.cpp:224
+#: effects/ChangeSpeed.cpp:375
+#: effects/ChangeTempo.cpp:214
+#: effects/ChangeTempo.cpp:227
msgid "to"
msgstr "do"
@@ -4450,15 +4826,15 @@ msgid "To frequency in seconds"
msgstr "Do frekvence (v sekundah)"
#: effects/ChangePitch.cpp:338
-#: effects/ChangeSpeed.cpp:347
-#: effects/ChangeTempo.cpp:184
+#: effects/ChangeSpeed.cpp:348
+#: effects/ChangeTempo.cpp:187
msgid "Percent Change:"
msgstr "Sprememba v odstotkih"
#: effects/ChangePitch.cpp:343
#: effects/ChangePitch.cpp:356
-#: effects/ChangeSpeed.cpp:358
-#: effects/ChangeTempo.cpp:195
+#: effects/ChangeSpeed.cpp:359
+#: effects/ChangeTempo.cpp:198
msgid "Percent Change"
msgstr "Sprememba v odstotkih"
@@ -4476,33 +4852,33 @@ msgstr "Spreminjanje višine tona"
msgid "Applied effect: %s %.1f%%"
msgstr "Dodan uÄinek: %s %1f%%"
-#: effects/ChangeSpeed.cpp:298
+#: effects/ChangeSpeed.cpp:299
msgid "Change Speed"
msgstr "Spremeni hitrost"
#. i18n-hint: n/a is an English abbreviation meaning "not applicable"
#. (in other words, unimportant, not relevant).
-#: effects/ChangeSpeed.cpp:329
+#: effects/ChangeSpeed.cpp:330
msgid "n/a"
msgstr "ni na voljo"
-#: effects/ChangeSpeed.cpp:334
+#: effects/ChangeSpeed.cpp:335
msgid "Change Speed, affecting both Tempo and Pitch"
msgstr "Spremeni hitrost z vplivom na tempo in višino tona"
-#: effects/ChangeSpeed.cpp:338
+#: effects/ChangeSpeed.cpp:339
msgid "using SampleRate, by Erik de Castro Lopo"
msgstr "uporabljen SampleRate Erika de Castro Lopoja"
-#: effects/ChangeSpeed.cpp:366
+#: effects/ChangeSpeed.cpp:367
msgid "Standard Vinyl RPM:"
msgstr "Standardni vinilni RPM:"
-#: effects/ChangeSpeed.cpp:370
+#: effects/ChangeSpeed.cpp:371
msgid "From RPM"
msgstr "Iz RPM"
-#: effects/ChangeSpeed.cpp:375
+#: effects/ChangeSpeed.cpp:376
msgid "To RPM"
msgstr "V RPM"
@@ -4514,35 +4890,35 @@ msgstr "Spremeni hitrost ..."
msgid "Changing Speed"
msgstr "Spreminjanje hitrosti"
-#: effects/ChangeTempo.cpp:138
+#: effects/ChangeTempo.cpp:141
msgid "Change Tempo"
msgstr "Spremeni tempo"
-#: effects/ChangeTempo.cpp:171
+#: effects/ChangeTempo.cpp:174
msgid "Change Tempo without Changing Pitch"
-msgstr "Spremeni temppo brez spremembe višine tona"
+msgstr "Spremeni tempo brez spremembe višine tona"
-#: effects/ChangeTempo.cpp:203
+#: effects/ChangeTempo.cpp:206
msgid "Beats per minute:"
msgstr "Udarcev na minuto (BPM):"
-#: effects/ChangeTempo.cpp:207
+#: effects/ChangeTempo.cpp:210
msgid "From beats per minute"
msgstr "Od udarcev na minuto"
-#: effects/ChangeTempo.cpp:212
+#: effects/ChangeTempo.cpp:215
msgid "To beats per minute"
msgstr "Do udarcev na minuto"
-#: effects/ChangeTempo.cpp:216
+#: effects/ChangeTempo.cpp:219
msgid "Length (seconds):"
msgstr "Dolžina (v sekundah):"
-#: effects/ChangeTempo.cpp:220
+#: effects/ChangeTempo.cpp:223
msgid "From length in seconds"
msgstr "Od dolžine (v sekundah)"
-#: effects/ChangeTempo.cpp:225
+#: effects/ChangeTempo.cpp:228
msgid "To length in seconds"
msgstr "Do dolžine (v sekundah)"
@@ -4568,15 +4944,15 @@ msgstr "Izberite prag (nižji pomeni veÄjo obÄutljivost):"
#: effects/ClickRemoval.cpp:350
msgid "Select threshold"
-msgstr ""
+msgstr "Izberite prag"
-#: effects/ClickRemoval.cpp:353
+#: effects/ClickRemoval.cpp:358
msgid "Max spike width (higher is more sensitive):"
msgstr "NajveÄja Å¡irina konice (veÄja pomeni veÄjo obÄutljivost):"
-#: effects/ClickRemoval.cpp:363
+#: effects/ClickRemoval.cpp:367
msgid "Max spike width"
-msgstr ""
+msgstr "NajveÄja Å¡irina konice"
#: effects/ClickRemoval.h:42
msgid "Click Removal..."
@@ -4586,405 +4962,390 @@ msgstr "Odstranitev presketa ..."
msgid "Removing clicks and pops..."
msgstr "Odstranjevanje presketa ..."
-#: effects/Compressor.cpp:461
+#: effects/Compressor.cpp:472
msgid "Dynamic Range Compressor"
msgstr "Stiskalnik obsega dinamike"
-#: effects/Compressor.cpp:498
+#: effects/Compressor.cpp:510
msgid "Threshold"
msgstr "Prag"
-#: effects/Compressor.cpp:502
+#: effects/Compressor.cpp:514
msgid "Ratio:"
msgstr "Razmerje:"
-#: effects/Compressor.cpp:506
+#: effects/Compressor.cpp:518
msgid "Ratio"
msgstr "Razmerje"
-#: effects/Compressor.cpp:510
+#: effects/Compressor.cpp:522
msgid "Attack Time:"
msgstr "Napadalni Äas:"
-#: effects/Compressor.cpp:514
+#: effects/Compressor.cpp:526
msgid "Attack Time"
msgstr "Napadalni Äas"
-#: effects/Compressor.cpp:518
+#: effects/Compressor.cpp:530
msgid "Decay Time:"
msgstr "Äas upadanja:"
-#: effects/Compressor.cpp:522
+#: effects/Compressor.cpp:534
msgid "Decay Time"
msgstr "Äas upadanja"
-#: effects/Compressor.cpp:530
-msgid "Normalize to 0dB after compressing"
-msgstr "Po stiskanju normaliziraj na 0dB"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
+msgstr "Po stiskanju popravi ojaÄitev na 0dB"
-#: effects/Compressor.cpp:563
+#: effects/Compressor.cpp:575
#, c-format
msgid "Threshold %d dB"
msgstr "Prag %d dB"
-#: effects/Compressor.cpp:564
+#: effects/Compressor.cpp:576
#, c-format
msgid "%3d dB"
msgstr "%3d dB"
-#: effects/Compressor.cpp:567
+#: effects/Compressor.cpp:579
#, c-format
msgid "Ratio %.0f to 1"
msgstr "Razmerje %.0f proti 1"
-#: effects/Compressor.cpp:568
+#: effects/Compressor.cpp:580
#, c-format
msgid "%.0f:1"
msgstr "%.0f:1"
-#: effects/Compressor.cpp:571
+#: effects/Compressor.cpp:583
#, c-format
msgid "Ratio %.1f to 1"
msgstr "Razmerje %.1f proti 1"
-#: effects/Compressor.cpp:572
+#: effects/Compressor.cpp:584
#, c-format
msgid "%.1f:1"
msgstr "%.1f:1"
-#: effects/Compressor.cpp:575
+#: effects/Compressor.cpp:587
#, c-format
msgid "Attack Time %.1f secs"
msgstr "Trajanje napada %.1f s"
-#: effects/Compressor.cpp:576
-#: effects/Compressor.cpp:579
+#: effects/Compressor.cpp:588
+#: effects/Compressor.cpp:591
#, c-format
msgid "%.1f secs"
msgstr "%.1f s"
-#: effects/Compressor.cpp:578
+#: effects/Compressor.cpp:590
#, c-format
msgid "Decay Time %.1f secs"
msgstr "Äas upadanja %.1f s"
-#: effects/Compressor.h:36
+#: effects/Compressor.h:37
msgid "Compressor..."
msgstr "Stiskalnik ..."
-#: effects/Compressor.h:50
+#: effects/Compressor.h:51
msgid "Applying Dynamic Range Compression..."
msgstr "Uporaba stiskanja obsega dinamike ..."
-#: effects/Contrast.cpp:79
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr "Analiza kontrasta"
+
+#: effects/Contrast.cpp:88
msgid "Contrast Tool Foreground"
-msgstr ""
+msgstr "Ospredje orodja za kontrast"
-#: effects/Contrast.cpp:79
-msgid "Foreground times selected.\n"
+#: effects/Contrast.cpp:88
+msgid ""
+"Foreground times selected.\n"
"Now select background and use Ctrl+Shift+T or menu again."
msgstr ""
+"Äasi ospredja so izbrani.\n"
+"Zdaj izberite ozadje in znova uporabite Ctrl+Shift+T ali meni."
-#: effects/Contrast.cpp:127
-msgid "Start time after after end time!\n"
+#: effects/Contrast.cpp:144
+msgid ""
+"Start time after after end time!\n"
"Please enter reasonable times."
msgstr ""
+"ZaÄetni Äas sledi konÄnemu Äasu!\n"
+"Vnesite raje smiselne Äase."
-#: effects/Contrast.cpp:137
-msgid "Times are not reasonable!\n"
+#: effects/Contrast.cpp:154
+msgid ""
+"Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
+"Äasi niso smiselni!\n"
+"Vnesite smiselne Äase."
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr "Živijo.\n"
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:193
-#: effects/Contrast.cpp:204
-#: effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr "Izmerjeno"
-
-#: effects/Contrast.cpp:231
+#: effects/Contrast.cpp:276
msgid "Contrast Analyzer"
msgstr "Analizator kontrasta"
-#: effects/Contrast.cpp:235
-msgid "Parameters"
-msgstr "Parametri"
-
-#: effects/Contrast.cpp:242
-#: effects/ToneGen.cpp:355
-#: toolbars/ControlToolBar.cpp:186
+#: effects/Contrast.cpp:286
+#: effects/ToneGen.cpp:312
+#: toolbars/ControlToolBar.cpp:181
msgid "Start"
msgstr "ZaÄetek"
-#: effects/Contrast.cpp:243
-#: effects/ToneGen.cpp:356
-#: toolbars/ControlToolBar.cpp:189
+#: effects/Contrast.cpp:287
+#: effects/ToneGen.cpp:313
+#: toolbars/ControlToolBar.cpp:184
#: toolbars/SelectionBar.cpp:156
#: toolbars/SelectionBar.cpp:159
#: toolbars/SelectionBar.cpp:262
msgid "End"
msgstr "Konec"
-#: effects/Contrast.cpp:332
+#: effects/Contrast.cpp:290
msgid "Volume "
-msgstr ""
+msgstr "Glasnost"
-#: effects/Contrast.cpp:248
+#: effects/Contrast.cpp:293
msgid "Foreground:"
msgstr "Ospredje:"
-#: effects/Contrast.cpp:347
+#: effects/Contrast.cpp:305
msgid "Foreground start time"
-msgstr ""
+msgstr "ZaÄetni Äas ospredja"
-#: effects/Contrast.cpp:365
+#: effects/Contrast.cpp:323
msgid "Foreground end time"
-msgstr ""
+msgstr "KonÄni Äas ospredja"
+
+#: effects/Contrast.cpp:329
+#: effects/Contrast.cpp:373
+#: effects/Contrast.cpp:437
+#: effects/Contrast.cpp:448
+msgid "Measured"
+msgstr "Izmerjeno"
-#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
+#: effects/Contrast.cpp:331
+#: effects/Contrast.cpp:375
msgid "Use selection"
-msgstr ""
+msgstr "Uporabi izbor"
-#: effects/Contrast.cpp:271
+#: effects/Contrast.cpp:336
msgid "Background:"
msgstr "Ozadje:"
-#: effects/Contrast.cpp:391
+#: effects/Contrast.cpp:349
msgid "Background start time"
-msgstr ""
+msgstr "ZaÄetni Äas ozadja"
-#: effects/Contrast.cpp:409
+#: effects/Contrast.cpp:367
msgid "Background end time"
-msgstr ""
+msgstr "KonÄni Äas ozadja"
-#: effects/Contrast.cpp:298
+#: effects/Contrast.cpp:384
msgid "Result"
msgstr "Rezultat"
-#: effects/Contrast.cpp:302
+#: effects/Contrast.cpp:388
msgid "Contrast Result:"
msgstr "Rezultat kontrasta:"
-#: Tags.cpp:840
-#: Tags.cpp:1990
+#: effects/Contrast.cpp:391
msgid "Reset"
msgstr "Ponastavi"
-#: effects/Contrast.cpp:304
+#: effects/Contrast.cpp:392
msgid "Difference:"
msgstr "Razlika:"
-#: effects/Contrast.cpp:313
+#: effects/Contrast.cpp:403
msgid "Information"
msgstr "Informacije"
-#: effects/Contrast.cpp:447
+#: effects/Contrast.cpp:405
msgid "For measuring rms volume differences between two selections of audio."
-msgstr ""
+msgstr "Za merjenje razlik jakosti korena srednje vrednosti kvadratov (RMS - ang. root mean square) med dvema zvoÄnima izboroma."
-#: effects/Contrast.cpp:448
+#: effects/Contrast.cpp:406
msgid "Help for WCAG2 Audio Contrast Analyzer"
-msgstr ""
+msgstr "PomoÄ za Analizator zvoÄnega kontrasta WCAG2"
-#: toolbars/ControlToolBar.cpp:83
-msgid "Control"
-msgstr "Nadzor"
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
+msgstr "Zapri (ohrani Äase)"
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
-msgstr ""
-
-#: effects/Contrast.cpp:328
-#: effects/Contrast.cpp:336
-#: effects/Contrast.cpp:344
-#: effects/Contrast.cpp:352
+#: effects/Contrast.cpp:474
+#: effects/Contrast.cpp:480
+#: effects/Contrast.cpp:486
+#: effects/Contrast.cpp:492
msgid "Measure"
msgstr "Izmeri"
-#: effects/Contrast.cpp:511
+#: effects/Contrast.cpp:531
msgid "No foreground to measure"
-msgstr ""
+msgstr "Ni ospredja za merjenje"
-#: effects/Contrast.cpp:516
+#: effects/Contrast.cpp:536
msgid "Measured foreground level"
-msgstr ""
+msgstr "Izmerjena glasnost ospredja"
-#: effects/Contrast.cpp:191
-#: effects/Contrast.cpp:202
+#: effects/Contrast.cpp:537
+#: effects/Contrast.cpp:547
#, c-format
msgid "%.1f dB"
msgstr "%.1f dB"
-#: effects/Contrast.cpp:521
+#: effects/Contrast.cpp:541
msgid "No background to measure"
-msgstr ""
+msgstr "Ni ozadja za merjenje"
-#: effects/Contrast.cpp:526
+#: effects/Contrast.cpp:546
msgid "Measured background level"
-msgstr ""
+msgstr "Izmerjena glasnost ozadja"
-#: effects/Contrast.cpp:358
+#: effects/Contrast.cpp:552
msgid "WCAG2 Pass"
msgstr "WCAG2 je prešel"
-#: effects/Contrast.cpp:360
+#: effects/Contrast.cpp:554
msgid "WCAG2 Fail"
msgstr "WCAG2 ni uspel"
-#: effects/Contrast.cpp:535
+#: effects/Contrast.cpp:555
msgid "Current difference"
-msgstr ""
+msgstr "Trenutna razlika"
-#: effects/Contrast.cpp:536
+#: effects/Contrast.cpp:556
#, c-format
msgid "%.1f dB Average rms"
-msgstr ""
+msgstr "%.1f dB povpreÄnega RMS"
-#: effects/Contrast.cpp:541
+#: effects/Contrast.cpp:561
msgid "Please enter valid times."
-msgstr ""
+msgstr "Prosimo, vnesite veljavne Äase."
-#: effects/Contrast.cpp:551
+#: effects/Contrast.cpp:571
msgid "Export Contrast Result As:"
-msgstr ""
+msgstr "Izvozi rezultat kontrasta kot:"
-#: effects/Contrast.cpp:572
+#: effects/Contrast.cpp:592
msgid "WCAG 2.0 Success Criteria 1.4.7 Contrast Results"
-msgstr ""
+msgstr "Rezultati pogoja uspešnosti 1.4.7 za kontrasta WCAG 2.0"
-#: effects/Contrast.cpp:574
+#: effects/Contrast.cpp:594
#, c-format
msgid "Filename = %s."
-msgstr ""
+msgstr "Ime datoteke = %s."
-#: effects/Contrast.cpp:576
+#: effects/Contrast.cpp:596
msgid "Foreground"
-msgstr ""
+msgstr "Ospredje"
-#: effects/Contrast.cpp:581 effects/Contrast.cpp:598
+#: effects/Contrast.cpp:601
+#: effects/Contrast.cpp:618
#, c-format
msgid "Time started = %2d hour(s), %2d minute(s), %.2f seconds."
-msgstr ""
+msgstr "Äas zaÄetka = %2d ur, %2d minut, %.2f sekund."
-#: effects/Contrast.cpp:586 effects/Contrast.cpp:603
+#: effects/Contrast.cpp:606
+#: effects/Contrast.cpp:623
#, c-format
msgid "Time ended = %2d hour(s), %2d minute(s), %.2f seconds."
-msgstr ""
+msgstr "Äas zakljuÄka = %2d ur, %2d minut, %.2f sekund."
-#: effects/Contrast.cpp:588 effects/Contrast.cpp:605
+#: effects/Contrast.cpp:608
+#: effects/Contrast.cpp:625
#, c-format
msgid "Average rms = %.1f dB."
-msgstr ""
+msgstr "PovpreÄni RMS = %.1f dB."
-#: effects/Contrast.cpp:590 effects/Contrast.cpp:607
+#: effects/Contrast.cpp:610
+#: effects/Contrast.cpp:627
msgid "Average rms = dB."
-msgstr ""
+msgstr "PovpreÄni RMS = dB."
-#: effects/Contrast.cpp:593
+#: effects/Contrast.cpp:613
msgid "Background"
-msgstr ""
+msgstr "Ozadje"
-#: effects/Contrast.cpp:609
+#: effects/Contrast.cpp:629
msgid "Results"
-msgstr ""
+msgstr "Rezultati"
-#: effects/Contrast.cpp:611
+#: effects/Contrast.cpp:631
#, c-format
msgid "Difference = %.1f Average rms dB."
-msgstr ""
+msgstr "Razlika = %.1f povpreÄnih dB RMS."
-#: effects/Contrast.cpp:613
+#: effects/Contrast.cpp:633
msgid "Success Criteria 1.4.7 of WCAG 2.0: Pass"
-msgstr ""
+msgstr "Pogoj uspešnosti 1.4.7 za WCAG 2.0: ustreza"
-#: effects/Contrast.cpp:615
+#: effects/Contrast.cpp:635
msgid "Success Criteria 1.4.7 of WCAG 2.0: Fail"
-msgstr ""
+msgstr "Pogoj uspešnosti 1.4.7 za WCAG 2.0: ne ustreza"
-#: effects/Contrast.cpp:618
+#: effects/Contrast.cpp:638
msgid "Data gathered"
-msgstr ""
-
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr "Merjenje ospredja"
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr "Merjenje ozadja"
+msgstr "Zbrani podatki"
#: effects/DtmfGen.cpp:56
msgid "DTMF Tone Generator"
msgstr "Ustvari ton DTMF"
-#: effects/DtmfGen.cpp:456
+#: effects/DtmfGen.cpp:421
msgid "by Salvo Ventura (2006)"
msgstr "avtor Salvo Ventura (2006)"
-#: effects/DtmfGen.cpp:460
+#: effects/DtmfGen.cpp:425
msgid "DTMF sequence:"
msgstr "Zaporedje DTMF:"
-#: effects/DtmfGen.cpp:463
-#: effects/Noise.cpp:242
-#: effects/ToneGen.cpp:322
-#: effects/ToneGen.cpp:359
+#: effects/DtmfGen.cpp:428
+#: effects/Noise.cpp:190
+#: effects/ToneGen.cpp:278
+#: effects/ToneGen.cpp:316
msgid "Amplitude (0-1)"
msgstr "Amplituda (0-1)"
-#: effects/DtmfGen.cpp:465
+#: effects/DtmfGen.cpp:430
msgid "Duration:"
msgstr "Trajanje:"
-#: effects/DtmfGen.cpp:486
+#: effects/DtmfGen.cpp:452
msgid "Tone/silence ratio:"
msgstr "Razmerje ton/tišina:"
-#: effects/DtmfGen.cpp:496
+#: effects/DtmfGen.cpp:462
msgid "Duty cycle:"
msgstr "Cikel delovanja:"
-#: effects/DtmfGen.cpp:498
+#: effects/DtmfGen.cpp:464
msgid "Tone duration:"
msgstr "Trajanje tona:"
-#: effects/DtmfGen.cpp:499
-#: effects/DtmfGen.cpp:501
-#: effects/DtmfGen.cpp:577
-#: effects/DtmfGen.cpp:578
+#: effects/DtmfGen.cpp:465
+#: effects/DtmfGen.cpp:467
+#: effects/DtmfGen.cpp:543
+#: effects/DtmfGen.cpp:544
msgid "ms"
msgstr "ms"
-#: effects/DtmfGen.cpp:500
+#: effects/DtmfGen.cpp:466
msgid "Silence duration:"
msgstr "Trajanje tišine:"
-#: effects/DtmfGen.h:39
+#: effects/DtmfGen.h:40
msgid "DTMF Tones..."
msgstr "Toni DTMF ..."
-#: effects/DtmfGen.h:53
+#: effects/DtmfGen.h:54
#, c-format
msgid "Applied effect: Generate DTMF tones, %.6lf seconds"
msgstr "Uporabljen uÄinek: Ustvari tone DTMF, %.6lf sekund"
-#: effects/DtmfGen.h:57
+#: effects/DtmfGen.h:58
msgid "Generating DTMF tones"
msgstr "Ustvarjanje tonov DTMF"
@@ -4993,22 +5354,22 @@ msgstr "Ustvarjanje tonov DTMF"
msgid "Applied effect: %s delay = %f seconds, decay factor = %f"
msgstr "Uporabljen uÄinek: zamuda %s = %f sekund, faktor razkroja = %f"
-#: effects/Echo.cpp:170
+#: effects/Echo.cpp:174
msgid "Echo"
msgstr "Odmev"
#. i18n-hint: && in here is an escape character to get a single & on
#. * screen, so keep it as is
-#: effects/Echo.cpp:195
-#: effects/Repeat.cpp:200
+#: effects/Echo.cpp:199
+#: effects/Repeat.cpp:199
msgid "by Dominic Mazzoni && Vaughan Johnson"
msgstr "avtorja Dominic Mazzoni in Vaughan Johnson"
-#: effects/Echo.cpp:207
+#: effects/Echo.cpp:211
msgid "Delay time (seconds):"
msgstr "Zakasnitev (sekund):"
-#: effects/Echo.cpp:212
+#: effects/Echo.cpp:216
msgid "Decay factor:"
msgstr "Faktor krnitve: "
@@ -5020,110 +5381,115 @@ msgstr "Odmev ..."
msgid "Performing Echo"
msgstr "Izvajanje odmeva"
-#: effects/Effect.cpp:467
+#: effects/Effect.cpp:498
msgid "Preparing preview"
msgstr "Priprava predposlušanja"
-#: effects/Effect.cpp:497
+#: effects/Effect.cpp:530
msgid "Previewing"
msgstr "Predposlušanje"
-#: effects/Effect.cpp:512
+#: effects/Effect.cpp:545
msgid "Error while opening sound device. Please check the output device settings and the project sample rate."
msgstr "Napaka pri odpiranju zvoÄne naprave. Prosimo preverite nastavitve izhodne naprave in mero vzorÄenja projekta."
-#: effects/Effect.h:100
+#: effects/Effect.h:96
+#: effects/TimeScale.cpp:52
#, c-format
msgid "Applied effect: %s"
msgstr "Dodan uÄinek: %s"
-#: effects/Equalization.cpp:329
+#: effects/Equalization.cpp:338
msgid "B-spline"
msgstr "B-zlepek"
-#: effects/Equalization.cpp:330
+#: effects/Equalization.cpp:339
msgid "Cosine"
msgstr "kosinusni"
-#: effects/Equalization.cpp:331
+#: effects/Equalization.cpp:340
msgid "Cubic"
msgstr "kubiÄni"
-#: effects/Equalization.cpp:367
-#: effects/Equalization.cpp:416
+#: effects/Equalization.cpp:379
+#: effects/Equalization.cpp:430
msgid "Equalization"
msgstr "IzenaÄevanje"
-#: effects/Equalization.cpp:994
+#: effects/Equalization.cpp:1009
msgid "Error loading EQ curve"
msgstr "Napaka pri nalaganju krivulje izenaÄevalnika (EQ)"
-#: effects/Equalization.cpp:1033
+#: effects/Equalization.cpp:1048
msgid "custom"
msgstr "Po meri"
+#: effects/Equalization.cpp:1097
+msgid "Error saving equalization curves"
+msgstr "Napaka pri shranjevanju krivulj izenaÄevanja"
+
#. i18n-hint: && in here is an escape character to get a single &
#. * on screen, so keep it as is
-#: effects/Equalization.cpp:1101
+#: effects/Equalization.cpp:1120
msgid "Equalization, by Martyn Shaw && Mitch Golden"
msgstr "IzenaÄevanje, avtorja Martyn Shaw in Mitch Golden"
-#: effects/Equalization.cpp:1122
+#: effects/Equalization.cpp:1141
msgid "Max dB"
msgstr "NajveÄji dB"
-#: effects/Equalization.cpp:1124
+#: effects/Equalization.cpp:1143
msgid "Min dB"
msgstr "Najmanjši dB"
-#: effects/Equalization.cpp:1197
+#: effects/Equalization.cpp:1216
msgid "kHz"
msgstr "kHz"
-#: effects/Equalization.cpp:1214
+#: effects/Equalization.cpp:1233
msgid "Draw curves"
msgstr "Nariši krivulje"
-#: effects/Equalization.cpp:1219
+#: effects/Equalization.cpp:1238
msgid "Graphic EQ"
msgstr "GrafiÄni izenaÄevalnik"
-#: effects/Equalization.cpp:1233
+#: effects/Equalization.cpp:1252
msgid "Linear frequency scale"
msgstr "Linearna lestvica frekvenc"
-#: effects/Equalization.cpp:1242
+#: effects/Equalization.cpp:1261
msgid "Length of filter:"
msgstr "Dolžina filtra:"
-#: effects/Equalization.cpp:1263
+#: effects/Equalization.cpp:1282
msgid "Select curve:"
msgstr "Izberite krivuljo:"
-#: effects/Equalization.cpp:1273
-#: effects/Equalization.cpp:2512
-#: export/ExportMultiple.cpp:882
+#: effects/Equalization.cpp:1292
+#: effects/Equalization.cpp:2552
+#: export/ExportMultiple.cpp:924
msgid "Save As..."
msgstr "Shrani kot ..."
-#: effects/Equalization.cpp:1279
+#: effects/Equalization.cpp:1298
msgid "Flat"
msgstr "raven"
-#: effects/Equalization.cpp:2511
+#: effects/Equalization.cpp:2551
msgid "Enter the desired name of the curve"
msgstr "Vnesite želeno ime krivulje"
-#: effects/Equalization.cpp:2611
-#: export/ExportFFmpegDialogs.cpp:1220
+#: effects/Equalization.cpp:2651
+#: export/ExportFFmpegDialogs.cpp:1214
msgid "Confirm Deletion"
msgstr "Potrditev brisanja"
-#: effects/Equalization.h:84
+#: effects/Equalization.h:82
msgid "Equalization..."
msgstr "IzenaÄevanje ..."
-#: effects/Equalization.h:98
+#: effects/Equalization.h:96
msgid "Performing Equalization"
msgstr "Izvajanje izenaÄevanja"
@@ -5143,31 +5509,31 @@ msgstr "Znižuj glasnost"
msgid "Fading Out"
msgstr "Nižanje glasnosti"
-#: effects/FindClipping.cpp:49
+#: effects/FindClipping.cpp:50
msgid "Detect clipping"
msgstr "Razpoznaj rezanje"
-#: effects/FindClipping.cpp:91
+#: effects/FindClipping.cpp:93
msgid "Clipping"
msgstr "Rezanje"
-#: effects/FindClipping.cpp:211
+#: effects/FindClipping.cpp:213
msgid "Find Clipping"
msgstr "Najdi porezano"
-#: effects/FindClipping.cpp:222
+#: effects/FindClipping.cpp:224
msgid "by Leland Lucius"
msgstr "avtorja Lelanda Luciusa"
-#: effects/FindClipping.cpp:234
+#: effects/FindClipping.cpp:236
msgid "Start threshold (samples):"
msgstr "ZaÄetni prag (vzorci):"
-#: effects/FindClipping.cpp:238
+#: effects/FindClipping.cpp:240
msgid "Stop threshold (samples):"
msgstr "ZakljuÄni prag (vzorci):"
-#: effects/FindClipping.cpp:250
+#: effects/FindClipping.cpp:252
msgid "Start and stop must be greater than 0."
msgstr "ZaÄetek in konec morata biti veÄja od 0."
@@ -5191,48 +5557,47 @@ msgstr "ObraÄanje"
msgid "Leveller"
msgstr "Uravnalnik"
-#: effects/Leveller.cpp:203
+#: effects/Leveller.cpp:205
msgid "None-Skip"
msgstr "Brez-preskoÄi"
-#: effects/Leveller.cpp:204
+#: effects/Leveller.cpp:206
msgid "Light"
msgstr "lažje"
-#: effects/Leveller.cpp:205
+#: effects/Leveller.cpp:207
msgid "Moderate"
msgstr "zmerno"
-#: effects/Leveller.cpp:206
+#: effects/Leveller.cpp:208
msgid "Heavy"
msgstr "moÄneje"
-#: effects/Leveller.cpp:207
+#: effects/Leveller.cpp:209
msgid "Heavier"
msgstr "najmoÄneje"
-#: effects/Leveller.cpp:208
+#: effects/Leveller.cpp:210
msgid "Heaviest"
msgstr "moÄno"
-#: effects/Leveller.cpp:212
-#: effects/TruncSilence.cpp:331
+#: effects/Leveller.cpp:214
msgid "by Lynn Allan"
msgstr "avtorja Lynna Allana"
-#: effects/Leveller.cpp:222
+#: effects/Leveller.cpp:224
msgid "Degree of Leveling"
msgstr "Stopnja izravnavanja"
-#: effects/Leveller.cpp:226
+#: effects/Leveller.cpp:228
msgid "Degree of Leveling:"
msgstr "Stopnja izravnavanja:"
-#: effects/Leveller.cpp:234
+#: effects/Leveller.cpp:236
msgid "Noise Threshold (Hiss/Hum/Ambient Noise)"
msgstr "Prag šuma (brnenje/šumenje/zvok prostora, okolice)"
-#: effects/Leveller.cpp:238
+#: effects/Leveller.cpp:240
msgid "Threshold for Noise:"
msgstr "Prag za šum:"
@@ -5268,11 +5633,6 @@ msgstr "Pretvornik"
msgid "Analyser"
msgstr "Analizator"
-#: effects/LoadEffects.cpp:114
-#: toolbars/MixerToolBar.cpp:60
-msgid "Mixer"
-msgstr "Mešalec"
-
#: effects/LoadEffects.cpp:116
msgid "Simulator"
msgstr "Simulator"
@@ -5379,7 +5739,7 @@ msgid "Gate"
msgstr "Vrata"
#: effects/LoadEffects.cpp:199
-#: effects/NoiseRemoval.cpp:725
+#: effects/NoiseRemoval.cpp:738
msgid "Noise Removal"
msgstr "Odstranjevanje šuma"
@@ -5415,95 +5775,101 @@ msgstr "rjavo"
msgid "Noise Generator"
msgstr "Ustvari šum"
-#: effects/Noise.cpp:241
+#: effects/Noise.cpp:189
msgid "Noise type"
msgstr "Vrsta šuma"
-#: effects/Noise.h:41
+#: effects/Noise.h:42
msgid "Noise..."
msgstr "Å um ..."
-#: effects/Noise.h:55
+#: effects/Noise.h:56
#, c-format
msgid "Applied effect: Generate Noise, %.6lf seconds"
msgstr "Uporabljen uÄinek: Ustvari Å¡um, %.6lf sekund"
-#: effects/Noise.h:59
+#: effects/Noise.h:60
msgid "Generating Noise"
msgstr "Ustvarjanje šuma"
-#: effects/NoiseRemoval.cpp:192
+#: effects/NoiseRemoval.cpp:191
#, c-format
-msgid "Could not open file:\n"
+msgid ""
+"Could not open file:\n"
" %s"
-msgstr "Datoteke ni mogoÄe odpreti:\n"
+msgstr ""
+"Datoteke ni mogoÄe odpreti:\n"
" %s"
-#: effects/NoiseRemoval.cpp:277
+#: effects/NoiseRemoval.cpp:276
msgid "Attempt to run Noise Removal without a noise profile.\n"
msgstr "Poskus odstranjevanja šuma brez profila šuma.\n"
-#: effects/NoiseRemoval.cpp:814
+#: effects/NoiseRemoval.cpp:827
msgid "Step 1"
msgstr "1. korak"
-#: effects/NoiseRemoval.cpp:815
-msgid "Select a few seconds of just noise so Audacity knows what to filter out,\n"
+#: effects/NoiseRemoval.cpp:828
+msgid ""
+"Select a few seconds of just noise so Audacity knows what to filter out,\n"
"then click Get Noise Profile:"
-msgstr "Izberite nekaj sekund zgolj šuma, da Audacity ve, kaj naj odstrani,\n"
+msgstr ""
+"Izberite nekaj sekund zgolj šuma, da Audacity ve, kaj naj odstrani,\n"
"nato kliknite Dobi profil šuma:"
-#: effects/NoiseRemoval.cpp:816
+#: effects/NoiseRemoval.cpp:829
msgid "Step 2"
msgstr "2. korak"
-#: effects/NoiseRemoval.cpp:817
-msgid "Select all of the audio you want filtered, choose how much noise you want\n"
+#: effects/NoiseRemoval.cpp:830
+msgid ""
+"Select all of the audio you want filtered, choose how much noise you want\n"
"filtered out, and then click 'OK' to remove noise.\n"
-msgstr "Izberite ves zvok, ki ga želite prefiltrirati, izberite koliko šuma želite\n"
+msgstr ""
+"Izberite ves zvok, ki ga želite prefiltrirati, izberite koliko šuma želite\n"
"odstraniti in nato kliknite 'V redu', da odstranite šum.\n"
-#: effects/NoiseRemoval.cpp:822
+#: effects/NoiseRemoval.cpp:835
msgid "Noise Removal by Dominic Mazzoni"
msgstr "Odstranjevanje šuma Dominica Mazzonija"
-#: effects/NoiseRemoval.cpp:830
+#: effects/NoiseRemoval.cpp:843
msgid "Get Noise Profile"
msgstr "Dobi profil šuma"
-#: effects/NoiseRemoval.cpp:841
+#: effects/NoiseRemoval.cpp:854
msgid "Noise reduction (dB):"
msgstr "Odstranjevanje šuma (dB):"
-#: effects/NoiseRemoval.cpp:850
+#: effects/NoiseRemoval.cpp:859
msgid "Noise reduction"
-msgstr ""
+msgstr "Odstranjevanje šuma"
-#: effects/NoiseRemoval.cpp:849
+#: effects/NoiseRemoval.cpp:863
msgid "Frequency smoothing (Hz):"
msgstr "Glajenje frekvenc (Hz):"
-#: effects/NoiseRemoval.cpp:859
+#: effects/NoiseRemoval.cpp:868
msgid "Frequency smoothing"
-msgstr ""
+msgstr "Glajenje frekvenc"
-#: effects/NoiseRemoval.cpp:857
+#: effects/NoiseRemoval.cpp:872
msgid "Attack/decay time (secs):"
msgstr "Äas napada/upada (v sekundah):"
-#: effects/NoiseRemoval.cpp:868
+#: effects/NoiseRemoval.cpp:877
msgid "Attach/decay time"
-msgstr ""
+msgstr "Äas napada/upada"
-#: effects/NoiseRemoval.h:35
+#: effects/NoiseRemoval.h:37
msgid "Noise Removal..."
msgstr "Odstranjevanje šuma ..."
-#: effects/NoiseRemoval.h:50
+#: effects/NoiseRemoval.h:52
msgid "Creating Noise Profile"
msgstr "Ustvarjanje profila šuma"
-#: effects/NoiseRemoval.h:52
+#: effects/NoiseRemoval.h:54
msgid "Removing Noise"
msgstr "Odstranjevanje šuma"
@@ -5514,11 +5880,6 @@ msgstr "Odstranjevanje šuma"
msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr "Uporabljen uÄinek: %s odstrani odmik DC = %s, normaliziraj amplitudo = %s"
-#: effects/Normalize.cpp:74
-#: effects/Normalize.cpp:75
-msgid "false"
-msgstr "ne velja"
-
#. i18n-hint: true here means that the option was
#. * selected. Opposite false if not selected
#: effects/Normalize.cpp:74
@@ -5535,22 +5896,21 @@ msgstr ", najveÄja amplituda = %.1f dB"
msgid "Normalize"
msgstr "Normaliziraj"
-#: effects/Normalize.cpp:351
-#: effects/Normalize.cpp:352
+#: effects/Normalize.cpp:355
msgid "Remove any DC offset (center on 0.0 vertically)"
msgstr "Odstrani vsakrÅ¡en odmik DC (sredina na 0,0 navpiÄno)"
-#: effects/Normalize.cpp:357
+#: effects/Normalize.cpp:358
msgid "Normalize maximum amplitude to:"
msgstr "Normaliziraj najveÄjo amplitudo na:"
-#: effects/Normalize.cpp:362
+#: effects/Normalize.cpp:366
msgid "-"
msgstr "-"
-#: effects/Normalize.cpp:367
+#: effects/Normalize.cpp:371
msgid "Maximum amplitude dB"
-msgstr ""
+msgstr "Najmanjša amplituda (dB)"
#: effects/Normalize.h:33
msgid "Normalize..."
@@ -5565,56 +5925,56 @@ msgstr "Normalizacija poteka ..."
msgid "Applied effect: %s %d stages, %.0f%% wet, frequency = %.1f Hz, start phase = %.0f deg, depth = %d, feedback = %.0f%%"
msgstr "Uporabljen uÄinek: %s %d stopenj, %.0f%% moker, frekvenca = %.1f Hz, zaÄetna faza = %.0f stopinj, globina = %d, odziv = %.0f%%"
-#: effects/Phaser.cpp:226
+#: effects/Phaser.cpp:228
msgid "Stages:"
msgstr "Stopnje:"
-#: effects/Phaser.cpp:229
+#: effects/Phaser.cpp:231
msgid "Stages"
msgstr "Stopnje"
-#: effects/Phaser.cpp:231
+#: effects/Phaser.cpp:236
msgid "Dry/Wet:"
msgstr "Suho/vlažno:"
-#: effects/Phaser.cpp:234
+#: effects/Phaser.cpp:239
msgid "Dry Wet"
msgstr "Suho vlažno"
-#: effects/Phaser.cpp:236
-#: effects/Wahwah.cpp:221
+#: effects/Phaser.cpp:244
+#: effects/Wahwah.cpp:222
msgid "LFO Frequency (Hz):"
msgstr "Frekvenca LFO (Hz):"
-#: effects/Phaser.cpp:239
-#: effects/Wahwah.cpp:224
+#: effects/Phaser.cpp:247
+#: effects/Wahwah.cpp:225
msgid "LFO frequency in hertz"
msgstr "Frekvenca LFO v Hz"
-#: effects/Phaser.cpp:241
-#: effects/Wahwah.cpp:226
+#: effects/Phaser.cpp:252
+#: effects/Wahwah.cpp:230
msgid "LFO Start Phase (deg.):"
msgstr "ZaÄetna faza LFO (stop.):"
-#: effects/Phaser.cpp:244
-#: effects/Wahwah.cpp:229
+#: effects/Phaser.cpp:255
+#: effects/Wahwah.cpp:233
msgid "LFO start phase in degrees"
msgstr "ZaÄetna faza LFO v stopinjah"
-#: effects/Phaser.cpp:246
+#: effects/Phaser.cpp:260
msgid "Depth:"
msgstr "Globina:"
-#: effects/Phaser.cpp:249
-#: effects/Wahwah.cpp:234
+#: effects/Phaser.cpp:263
+#: effects/Wahwah.cpp:241
msgid "Depth in percent"
msgstr "Globina v odstotkih"
-#: effects/Phaser.cpp:251
+#: effects/Phaser.cpp:268
msgid "Feedback (%):"
msgstr "Odboj (%):"
-#: effects/Phaser.cpp:254
+#: effects/Phaser.cpp:271
msgid "Feedback in percent"
msgstr "Odziv v odstotkih"
@@ -5627,20 +5987,24 @@ msgid "Applying Phaser"
msgstr "Dodajanje Faznika"
#: effects/Repair.cpp:99
-msgid "The Repair effect is intended to be used on very short sections of damaged audio (up to 128 samples).\n"
+msgid ""
+"The Repair effect is intended to be used on very short sections of damaged audio (up to 128 samples).\n"
"\n"
"Zoom in and select a tiny fraction of a second to repair."
-msgstr "UÄinek Popravi je namenjen za uporabo na zelo kratkih odsekih okvarjenega zvoka (do 128 vzorcev).\n"
+msgstr ""
+"UÄinek Popravi je namenjen za uporabo na zelo kratkih odsekih okvarjenega zvoka (do 128 vzorcev).\n"
"\n"
"PoveÄajte izbor in izberite majhen delÄek sekunde za popravilo."
#: effects/Repair.cpp:105
-msgid "Repair works by using audio data outside the selection region.\n"
+msgid ""
+"Repair works by using audio data outside the selection region.\n"
"\n"
"Please select a region that has audio touching at least one side of it.\n"
"\n"
"The more surrounding audio, the better it performs."
-msgstr "Popravljanje deluje z uporabo zvoÄnih podatkov zunaj izbranega obmoÄja.\n"
+msgstr ""
+"Popravljanje deluje z uporabo zvoÄnih podatkov zunaj izbranega obmoÄja.\n"
"\n"
"Prosimo, izberite obmoÄje, katerega se vsaj na enem robu dotika zvok.\n"
"\n"
@@ -5660,26 +6024,26 @@ msgid "Tracks are too long to repeat the selection."
msgstr "Sledi so predolge za ponovitev izbora."
#: effects/Repeat.cpp:77
-#: effects/Repeat.cpp:187
+#: effects/Repeat.cpp:186
msgid "Repeat"
msgstr "Ponovi"
-#: effects/Repeat.cpp:212
+#: effects/Repeat.cpp:211
msgid "Number of times to repeat:"
msgstr "Å tevilo ponovitev:"
-#: effects/Repeat.cpp:221
+#: effects/Repeat.cpp:220
msgid "New selection length: hh:mm:ss"
msgstr "Nova dolžina izbora: uu:mm:ss"
-#: effects/Repeat.cpp:253
+#: effects/Repeat.cpp:252
msgid "New selection length: "
msgstr "Nova dolžina izbora:"
#. i18n-hint: Name of time display format that shows time in hours, minutes
#. * and seconds
-#: effects/Repeat.cpp:262
-#: widgets/TimeTextCtrl.cpp:270
+#: effects/Repeat.cpp:261
+#: widgets/TimeTextCtrl.cpp:272
msgid "hh:mm:ss"
msgstr "uu:mm:ss"
@@ -5716,7 +6080,7 @@ msgstr "Ustvarjanje tišine"
msgid "Applied effect: Generate Silence, %.6lf seconds"
msgstr "Uporabljen uÄinek: tvori tiÅ¡ino, %.6lf sekund"
-#: effects/SimplePairedTwoTrack.h:120
+#: effects/SimplePairedTwoTrack.h:115
msgid "Sorry, this effect cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr "Oprostite, tega uÄinka ni mogoÄe izvesti na stereo posnetkih, kjer se posamezni kanali sledi ne skladajo."
@@ -5729,9 +6093,11 @@ msgid "SpikeCleaner by Lynn Allan"
msgstr "Äistilec konic avtorja Lynna Allana"
#: effects/SpikeCleaner.cpp:165
-msgid "Max Spike Duration (milliseconds): \n"
+msgid ""
+"Max Spike Duration (milliseconds): \n"
"(99999 or greater is off)"
-msgstr "NajveÄje trajanje konice (v milisekundah): \n"
+msgstr ""
+"NajveÄje trajanje konice (v milisekundah): \n"
"(99999 ali veÄ pomeni izkljuÄeno)"
#: effects/SpikeCleaner.cpp:178
@@ -5747,8 +6113,8 @@ msgid "Applying Spike Cleaner..."
msgstr "Izvajanje Äistilca konic ..."
#: effects/StereoToMono.h:23
-msgid "&Stereo to Mono"
-msgstr "&Stereo v mono"
+msgid "Stereo to Mono"
+msgstr "Stereo v mono"
#: effects/StereoToMono.h:38
msgid "Applying Stereo to Mono"
@@ -5756,47 +6122,47 @@ msgstr "Izvajanje pretvorbe sterea v mono"
#: effects/TimeScale.cpp:140
msgid "Time Scale"
-msgstr ""
+msgstr "Äasovno raztegovanje"
#: effects/TimeScale.cpp:176
msgid "Sliding Time Scale/Pitch Shift"
-msgstr ""
+msgstr "Drsno Äasovno raztegovanje/sprememba viÅ¡ine tona"
#: effects/TimeScale.cpp:178
msgid "using SBSMS, by Clayton Otey"
-msgstr ""
+msgstr "uporablja SBSMS, avtor Clayton Otey"
#: effects/TimeScale.cpp:187
msgid "Initial Tempo Change (%):"
-msgstr ""
+msgstr "ZaÄetna sprememba tempa (%):"
#: effects/TimeScale.cpp:191
msgid "Final Tempo Change (%):"
-msgstr ""
+msgstr "KonÄna sprememba tempa (%):"
#: effects/TimeScale.cpp:202
msgid "Initial Tempo Change (%)"
-msgstr ""
+msgstr "ZaÄetna sprememba tempa (%)"
#: effects/TimeScale.cpp:211
msgid "Final Tempo Change (%)"
-msgstr ""
+msgstr "KonÄna sprememba tempa (%)"
#: effects/TimeScale.cpp:219
msgid "Initial Pitch Shift (semitones) [-12 to 12]:"
-msgstr ""
+msgstr "ZaÄetna sprememba viÅ¡ine tona (poltoni) [-12 do 12]:"
#: effects/TimeScale.cpp:223
msgid "Final Pitch Shift (semitones) [-12 to 12]:"
-msgstr ""
+msgstr "KonÄna sprememba viÅ¡ine tona (poltoni) [-12 do 12]:"
#: effects/TimeScale.h:33
msgid "Sliding Time Scale/Pitch Shift..."
-msgstr ""
+msgstr "Drsno Äasovno raztegovanje/sprememba viÅ¡ine tona ..."
#: effects/TimeScale.h:47
msgid "Changing Tempo/Pitch"
-msgstr ""
+msgstr "Spreminjanje tempa/višine tona"
#: effects/ToneGen.cpp:61
#, c-format
@@ -5804,7 +6170,7 @@ msgid "Applied effect: Generate %s wave %s, frequency = %.2f Hz, amplitude = %.2
msgstr "Uporabljen uÄinek: Ustvari %s valovanja %s, frekvenca = %.2f Hz, amplituda = %.2f, %.6lf sekund"
#: effects/ToneGen.cpp:69
-#: widgets/Meter.cpp:416
+#: widgets/Meter.cpp:405
msgid "Linear"
msgstr "Linearno"
@@ -5836,32 +6202,32 @@ msgstr "Zobati"
msgid "Square, no alias"
msgstr "Kvadratni, brez aliasa"
-#: effects/ToneGen.cpp:321
-#: effects/ToneGen.cpp:357
+#: effects/ToneGen.cpp:277
+#: effects/ToneGen.cpp:314
msgid "Frequency (Hz)"
msgstr "Frekvenca (Hz)"
-#: effects/ToneGen.cpp:348
+#: effects/ToneGen.cpp:305
msgid "Waveform:"
msgstr "Signalna oblika:"
-#: effects/ToneGen.cpp:358
+#: effects/ToneGen.cpp:314
msgid "Frequency Hertz Start"
-msgstr ""
+msgstr "ZaÄetek frekvence (Hz)"
-#: effects/ToneGen.cpp:359
+#: effects/ToneGen.cpp:315
msgid "Frequency Hertz End"
-msgstr ""
+msgstr "Konec frekvence (Hz)"
-#: effects/ToneGen.cpp:360
+#: effects/ToneGen.cpp:316
msgid "Amplitude Start"
-msgstr ""
+msgstr "ZaÄetek amplitude"
-#: effects/ToneGen.cpp:361
+#: effects/ToneGen.cpp:317
msgid "Amplitude End"
-msgstr ""
+msgstr "Konec amplitude"
-#: effects/ToneGen.cpp:365
+#: effects/ToneGen.cpp:322
msgid "Interpolation:"
msgstr "Interpolacija:"
@@ -5881,54 +6247,116 @@ msgstr "Ustvarjanje piska"
msgid "Generating Tone"
msgstr "Ustvarjanje tona"
-#: effects/TruncSilence.cpp:113
+#: effects/TruncSilence.cpp:133
msgid "All tracks must have the same sample rate"
msgstr "Vse sledi morajo imeti enako mero vzorÄenja."
-#: effects/TruncSilence.cpp:113
-#: effects/TruncSilence.cpp:321
+#: effects/TruncSilence.cpp:133
+#: effects/TruncSilence.cpp:444
msgid "Truncate Silence"
msgstr "Poreži tišino"
-#: effects/TruncSilence.cpp:345
-msgid "Max silence duration:"
-msgstr "NajveÄje trajanje tiÅ¡ine:"
+#: effects/TruncSilence.cpp:454
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr "avtorja Lynn Allan in Philip Van Baren"
-#: effects/TruncSilence.cpp:348
-#: prefs/AudioIOPrefs.cpp:196
-#: prefs/AudioIOPrefs.cpp:199
-#: prefs/MidiIOPrefs.cpp:174
-#: prefs/MidiIOPrefs.cpp:177
+#: effects/TruncSilence.cpp:468
+msgid "Min silence duration:"
+msgstr "Najkrajše trajanje tišine:"
+
+#: effects/TruncSilence.cpp:471
+#: effects/TruncSilence.cpp:475
+#: prefs/MidiIOPrefs.cpp:197
+#: prefs/MidiIOPrefs.cpp:199
msgid "milliseconds"
msgstr "milisekund"
-#: effects/TruncSilence.cpp:350
+#: effects/TruncSilence.cpp:472
+msgid "Max silence duration:"
+msgstr "NajveÄje trajanje tiÅ¡ine:"
+
+#: effects/TruncSilence.cpp:476
+msgid "Silence compression:"
+msgstr "Stiskanje tišine:"
+
+#: effects/TruncSilence.cpp:479
+msgid ":1"
+msgstr ":1"
+
+#: effects/TruncSilence.cpp:481
msgid "Threshold for silence:"
msgstr "Prag tišine:"
-#: effects/TruncSilence.cpp:374
-msgid " Duration must be at least 1 millisecond"
-msgstr " Trajanje mora obsegati najmanj 1 milisekundo."
+#: effects/TruncSilence.cpp:507
+msgid ""
+" Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
+msgstr ""
+" Trajanje mora obsegati najmanj 1 milisekundo.\n"
+" Razmerje stiskanja mora biti najmanj 1:1."
-#: effects/TruncSilence.h:28
+#: effects/TruncSilence.h:29
msgid "Truncate Silence..."
msgstr "Poreži tišino ..."
-#: effects/TruncSilence.h:42
+#: effects/TruncSilence.h:43
msgid "Truncating Silence..."
msgstr "Izrezovanje tišin ..."
-#: effects/VST/VSTEffect.cpp:172
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "Oprostite, uÄinki VST se ne morejo izvesti na stereo posnetkih, kjer se posamezni kanali ne skladajo."
+#: effects/VST/VSTEffect.cpp:256
+#: effects/ladspa/LadspaEffect.cpp:590
+#: effects/lv2/LV2Effect.cpp:798
+msgid "Effect Settings"
+msgstr "Nastavitve uÄinka"
+
+#: effects/VST/VSTEffect.cpp:336
+#: effects/ladspa/LadspaEffect.cpp:555
+#: effects/ladspa/LadspaEffect.cpp:563
+#: prefs/QualityPrefs.cpp:74
+#: prefs/TracksPrefs.cpp:48
+msgid "None"
+msgstr "Prazno"
+
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr "Prednastavitve:"
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr "Naloži"
+
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr "Shrani"
-#: effects/VST/VSTEffect.cpp:187
-msgid "Can't process replacing"
-msgstr "Zamenjave ni mogoÄe izvesti"
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr "Naloži program VST:"
-#: effects/VST/VSTEffect.cpp:410
-msgid "VST Plug-in parameters:"
-msgstr "Parametri vtiÄnika VST:"
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr "Napaka pri nalaganju programa"
+
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr "Shrani program VST kot:"
+
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr "Ta datoteka parametrov je bila nazadnje shranjena iz %s. Želite nadaljevati?"
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr "Izvajanje uÄinka: "
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr "Oba kanala stereo sledi morata imeti enako mero vzorÄenja."
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr "Oba kanala stereo sledi morata imeti enako mero vzorÄenja."
#: effects/Wahwah.cpp:61
#, c-format
@@ -5939,23 +6367,23 @@ msgstr "Uporabljen uÄinek: frekvenca %s = %.1f Hz, zaÄetna faza = %.0f stopinj
msgid "Wahwah"
msgstr "Wah-wah"
-#: effects/Wahwah.cpp:231
+#: effects/Wahwah.cpp:238
msgid "Depth (%):"
msgstr "Globina (%):"
-#: effects/Wahwah.cpp:236
+#: effects/Wahwah.cpp:246
msgid "Resonance:"
msgstr "Resonanca:"
-#: effects/Wahwah.cpp:239
+#: effects/Wahwah.cpp:249
msgid "Resonance"
msgstr "Resonanca"
-#: effects/Wahwah.cpp:241
+#: effects/Wahwah.cpp:254
msgid "Wah Frequency Offset (%):"
msgstr "Razlika v frekvenci wah (%):"
-#: effects/Wahwah.cpp:244
+#: effects/Wahwah.cpp:257
msgid "Wah frequency offset in percent"
msgstr "Razlika v frekvenci wah v odstotkih"
@@ -5967,195 +6395,185 @@ msgstr "Wah-wah ..."
msgid "Applying Wahwah"
msgstr "Dodajanje Wah-wah"
-#: effects/audiounits/AudioUnitEffect.cpp:138
-#: effects/ladspa/LadspaEffect.cpp:176
-#: effects/lv2/LV2Effect.cpp:191
+#: effects/audiounits/AudioUnitEffect.cpp:139
+#: effects/ladspa/LadspaEffect.cpp:178
+#: effects/lv2/LV2Effect.cpp:193
#, c-format
msgid "Performing Effect: %s"
msgstr "Izvajanje uÄinka: %s"
-#: effects/ladspa/LadspaEffect.cpp:196
-#: effects/lv2/LV2Effect.cpp:211
+#: effects/ladspa/LadspaEffect.cpp:198
+#: effects/lv2/LV2Effect.cpp:213
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr "Oprostite, uÄinki vstavkov se ne morejo izvesti na stereo posnetkih, kjer se posamezni kanali ne skladajo."
-#: effects/ladspa/LadspaEffect.cpp:580
-#: effects/ladspa/LadspaEffect.cpp:588
-#: prefs/GUIPrefs.cpp:51
-#: prefs/QualityPrefs.cpp:72
-msgid "None"
-msgstr "Prazno"
-
-#: effects/ladspa/LadspaEffect.cpp:582
-#: effects/lv2/LV2Effect.cpp:798
-#: effects/vamp/VampEffect.cpp:395
+#: effects/ladspa/LadspaEffect.cpp:557
+#: effects/lv2/LV2Effect.cpp:773
+#: effects/vamp/VampEffect.cpp:371
msgid "Author: "
msgstr "Avtor: "
-#: effects/ladspa/LadspaEffect.cpp:615
-#: effects/lv2/LV2Effect.cpp:823
-msgid "Effect Settings"
-msgstr "Nastavitve uÄinka"
-
-#: effects/ladspa/LadspaEffect.cpp:710
-#: effects/ladspa/LadspaEffect.cpp:713
-#: effects/lv2/LV2Effect.cpp:834
-#: effects/lv2/LV2Effect.cpp:837
+#: effects/ladspa/LadspaEffect.cpp:685
+#: effects/ladspa/LadspaEffect.cpp:688
+#: effects/lv2/LV2Effect.cpp:809
+#: effects/lv2/LV2Effect.cpp:812
msgid "Length (seconds)"
msgstr "Dolžina (v sekundah)"
-#: effects/lv2/LV2Effect.cpp:849
-#: effects/lv2/LV2Effect.cpp:852
+#: effects/lv2/LV2Effect.cpp:824
+#: effects/lv2/LV2Effect.cpp:827
msgid "Note length (seconds)"
msgstr "Dolžina not (v sekundah)"
-#: effects/lv2/LV2Effect.cpp:860
-#: effects/lv2/LV2Effect.cpp:863
+#: effects/lv2/LV2Effect.cpp:835
+#: effects/lv2/LV2Effect.cpp:838
msgid "Note velocity"
msgstr "Hitrost not"
-#: effects/lv2/LV2Effect.cpp:871
-#: effects/lv2/LV2Effect.cpp:874
+#: effects/lv2/LV2Effect.cpp:846
+#: effects/lv2/LV2Effect.cpp:849
msgid "Note key"
msgstr "KljuÄ"
-#: effects/nyquist/Nyquist.cpp:257
+#: effects/nyquist/Nyquist.cpp:73
msgid "Applying Nyquist Effect..."
msgstr "Dodajanje uÄinka Nyquist ..."
-#: effects/nyquist/Nyquist.cpp:264
-#: effects/nyquist/Nyquist.cpp:326
+#: effects/nyquist/Nyquist.cpp:91
+#: effects/nyquist/Nyquist.cpp:401
msgid "Nyquist Prompt..."
msgstr "Pozornik Nyquist ..."
-#: effects/nyquist/Nyquist.cpp:327
+#: effects/nyquist/Nyquist.cpp:402
msgid "Enter Nyquist Command: "
msgstr "Vnesi ukaz Nyquist:"
-#: effects/nyquist/Nyquist.cpp:417
+#: effects/nyquist/Nyquist.cpp:515
msgid "Sorry, cannot apply effect on stereo tracks where the tracks don't match."
msgstr "Oprostite, uÄinka ni mogoÄe izvesti na stereo sledeh, kjer se posamezne sledi ne skladajo."
-#: effects/nyquist/Nyquist.cpp:445
+#: effects/nyquist/Nyquist.cpp:557
msgid "Nyquist"
msgstr "Nyquist"
-#: effects/nyquist/Nyquist.cpp:446
+#: effects/nyquist/Nyquist.cpp:558
msgid "Nyquist Output: "
msgstr "Izhod Nyquista:"
-#: effects/nyquist/Nyquist.cpp:603
-#: effects/nyquist/Nyquist.cpp:614
+#: effects/nyquist/Nyquist.cpp:656
+#: effects/nyquist/Nyquist.cpp:665
msgid "Nyquist returned the value:"
msgstr "Nyquist je vrnil vrednost:"
-#: effects/nyquist/Nyquist.cpp:656
+#: effects/nyquist/Nyquist.cpp:702
msgid "Nyquist did not return audio.\n"
msgstr "Nyquist ne vrne zvoka.\n"
-#: effects/nyquist/Nyquist.cpp:667
+#: effects/nyquist/Nyquist.cpp:711
msgid "Nyquist returned too many audio channels.\n"
msgstr "Nyquist je vrnil preveÄ zvoÄnih kanalov.\n"
-#: effects/vamp/VampEffect.cpp:86
+#: effects/vamp/VampEffect.cpp:81
#, c-format
msgid "Extracting features: %s"
msgstr "Možnosti izloÄanja: %s"
-#: effects/vamp/VampEffect.cpp:117
+#: effects/vamp/VampEffect.cpp:107
msgid "Sorry, Vamp Plug-ins cannot be run on stereo tracks where the individual channels of the track do not match."
msgstr "Oprostite, vstavkov Vamp ni mogoÄe izvesti na stereo posnetkih, kjer se posamezna kanala ne skladata."
-#: effects/vamp/VampEffect.cpp:131
+#: effects/vamp/VampEffect.cpp:121
msgid "Sorry, failed to load Vamp Plug-in."
msgstr "Oprostite, vtiÄnika Vamp ni bilo mogoÄe naložiti."
-#: effects/vamp/VampEffect.cpp:239
+#: effects/vamp/VampEffect.cpp:207
msgid "Sorry, Vamp Plug-in failed to initialize."
msgstr "Oprostite, vtiÄnik Vamp se ni uspel inicializirati."
-#: effects/vamp/VampEffect.cpp:387
+#: effects/vamp/VampEffect.cpp:363
msgid " - Vamp audio analysis plugin"
msgstr " - vtiÄnik za zvoÄno analizo Vamp"
-#: effects/vamp/VampEffect.cpp:423
+#: effects/vamp/VampEffect.cpp:399
msgid "Plugin Settings"
msgstr "Nastavitve vtiÄnika"
-#: effects/vamp/VampEffect.cpp:442
-#: effects/vamp/VampEffect.cpp:448
+#: effects/vamp/VampEffect.cpp:418
+#: effects/vamp/VampEffect.cpp:424
msgid "Program"
msgstr "Program"
-#: export/Export.cpp:469
+#: export/Export.cpp:468
msgid "All the selected audio is muted."
-msgstr ""
+msgstr "Ves izbrani zvok je nastavljen na nemo."
-#: export/Export.cpp:471
+#: export/Export.cpp:470
msgid "All the audio is muted."
-msgstr ""
+msgstr "Ves zvok je nem."
-#: export/Export.cpp:522
+#: export/Export.cpp:526
msgid "Export File"
msgstr "Izvozi datoteko"
-#: export/Export.cpp:530
+#: export/Export.cpp:535
msgid "&Options..."
msgstr "&Možnosti ..."
-#: export/Export.cpp:571
+#: export/Export.cpp:576
msgid "Are you sure you want to save the file as \""
msgstr "Ste prepriÄani, da želite datoteko shraniti kot \""
-#: export/Export.cpp:591
+#: export/Export.cpp:596
#, c-format
-msgid "You are about to save a %s file with the name \"%s\".\n"
+msgid ""
+"You are about to save a %s file with the name \"%s\".\n"
"\n"
"Normally these files end in \".%s\", and some programs will not open files with nonstandard extensions.\n"
"\n"
"Are you sure you want to save the file under this name?"
-msgstr "Datoteko %s boste shranili pod imenom \"%s\".\n"
+msgstr ""
+"Datoteko %s boste shranili pod imenom \"%s\".\n"
"\n"
"ObiÄajno imajo te datoteke konÄnico \".%s\" in nekatere aplikacije ne odpirajo datotek z nestandardnimi konÄnicami.\n"
"\n"
"Ste prepriÄani, da želite shraniti datoteko pod tem imenom?"
-#: export/Export.cpp:612
+#: export/Export.cpp:617
#, c-format
msgid "A file named \"%s\" already exists. Replace?"
msgstr "Datoteka \"%s\" že obstaja. Jo želite zamenjati?"
-#: export/Export.cpp:710
+#: export/Export.cpp:719
msgid "Your tracks will be mixed down to two stereo channels in the exported file."
msgstr "Vaši posnetki bodo zmešani v dva stereo kanala v izvozno datoteko."
-#: export/Export.cpp:715
+#: export/Export.cpp:724
msgid "Your tracks will be mixed down to a single mono channel in the exported file."
msgstr "Vaši posnetki bodo zmešani v en sam mono kanal v izvozno datoteko."
-#: export/Export.cpp:726
+#: export/Export.cpp:735
msgid "Advanced Mixing Options"
msgstr "Napredne možnosti mešanja"
-#: export/Export.cpp:930
+#: export/Export.cpp:943
#, c-format
msgid "Channel: %2d"
msgstr "Kanal: %2d"
-#: export/Export.cpp:1046
+#: export/Export.cpp:1058
msgid " - Left"
msgstr " - levi"
-#: export/Export.cpp:1047
+#: export/Export.cpp:1060
msgid " - Right"
msgstr " - desni"
-#: export/Export.cpp:1072
+#: export/Export.cpp:1082
msgid "Mixer Panel"
msgstr "Podokno mešalca"
-#: export/Export.cpp:1078
-#: export/Export.cpp:1125
+#: export/Export.cpp:1088
+#: export/Export.cpp:1135
#, c-format
msgid "Output Channels: %2d"
msgstr "Izhodna kanala: %2d"
@@ -6164,97 +6582,125 @@ msgstr "Izhodna kanala: %2d"
msgid "Specify Command Line Encoder"
msgstr "DoloÄite kodirnik, ki deluje v ukazni vrstici"
-#: export/ExportCL.cpp:70
+#: export/ExportCL.cpp:68
msgid "Command Line Export Setup"
msgstr "Nastavitev izvoza iz ukazne vrstice"
-#: export/ExportCL.cpp:75
+#: export/ExportCL.cpp:73
msgid "Command:"
msgstr "Ukaz:"
-#: export/ExportCL.cpp:80
+#: export/ExportCL.cpp:78
msgid "Show output"
msgstr "Pokaži izhod"
-#: export/ExportCL.cpp:87
+#: export/ExportCL.cpp:85
#, c-format
msgid "Data will be piped to standard in. \"%f\" will be replaced with output filename selected."
msgstr "Podatki bodo podani v cevovod na standardni vhod. \"%f\" bo zamenjan z izbranim imenom izhodne datoteke."
-#: export/ExportCL.cpp:222
+#: export/ExportCL.cpp:220
msgid "(external program)"
msgstr "(zunanji program)"
-#: export/ExportCL.cpp:253
-#: export/ExportPCM.cpp:457
+#: export/ExportCL.cpp:286
+#: export/ExportPCM.cpp:492
#, c-format
msgid "Cannot export audio to %s"
-msgstr "Ne morem izvoziti posnetka v %s"
+msgstr "Posnetka ni mogoÄe izvoziti v %s"
-#: export/ExportCL.cpp:327
+#: export/ExportCL.cpp:360
msgid "Exporting the selected audio using command-line encoder"
msgstr "Izvažanje oznaÄenega z uporabo kodirnika ukazne vrstice"
-#: export/ExportCL.cpp:328
+#: export/ExportCL.cpp:361
msgid "Exporting the entire project using command-line encoder"
msgstr "Izvažanje celotnega projekta z uporabo kodirnika ukazne vrstice"
-#: export/ExportCL.cpp:390
+#: export/ExportCL.cpp:423
msgid "Command Output"
msgstr "Izhod ukaza"
-#: export/ExportFFmpeg.cpp:59
-msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+#: export/ExportFFmpeg.cpp:61
+msgid ""
+"Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries."
msgstr ""
+"Za nadaljevanje je obvezen ustrezno nastavljen FFmpeg.\n"
+"Prilagodite ga lahko prek Nastavitve > Knjižnice."
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr "Podpora AMR ni razširljiva"
-#: export/ExportFFmpeg.cpp:394
+#: export/ExportFFmpeg.cpp:232
+msgid ""
+"Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
+msgstr ""
+"Za nadaljevanje je obvezen ustrezno nastavljen FFmpeg.\n"
+"Prilagodite ga lahko prek Nastavitve > Knjižnice.\n"
+"\n"
+"Upoštevajte, da podpora za AMR ni na voljo z našim\n"
+"namestitvenim paketom FFmpeg, zato ga morate prevesti sami."
+
+#: export/ExportFFmpeg.cpp:433
#, c-format
-msgid "FFmpeg cannot find audio codec 0x%x.\n"
+msgid ""
+"FFmpeg cannot find audio codec 0x%x.\n"
"Support for this codec is probably not compiled in."
msgstr ""
+"FFmpeg ne najde zvoÄnega kodeka 0x%x.\n"
+"Podpora za ta kodek najverjetneje ni prevedena."
-#: export/ExportFFmpeg.cpp:614
+#: export/ExportFFmpeg.cpp:655
#, c-format
msgid "Attempted to export %d channels, but max. channels for selected output format is %d"
-msgstr ""
+msgstr "Poskusili ste izvoziti %d kanalov, vendar je najveÄje Å¡tevilo kanalov za izbrani izhodni zapis %d"
-#: export/ExportFFmpeg.cpp:638
+#: export/ExportFFmpeg.cpp:684
#, c-format
msgid "Exporting selected audio as %s"
msgstr "Izvažanje izbranega zvoka kot %s"
-#: export/ExportFFmpeg.cpp:639
+#: export/ExportFFmpeg.cpp:685
#, c-format
msgid "Exporting entire file as %s"
msgstr "Izvažanje celotne datoteke kot %s"
-#: export/ExportFFmpeg.cpp:702
-#: export/ExportMP3.cpp:1920
+#: export/ExportFFmpeg.cpp:748
+#: export/ExportMP3.cpp:1777
msgid "Invalid sample rate"
msgstr "Neveljavna mera vzorÄenja"
-#: export/ExportFFmpeg.cpp:715
+#: export/ExportFFmpeg.cpp:761
#, c-format
-msgid "The project sample rate (%d) is not supported by the current output\n"
+msgid ""
+"The project sample rate (%d) is not supported by the current output\n"
"file format. "
-msgstr "Mere vzorÄenja projekta (%d) trenutni izhodni zapis\n"
+msgstr ""
+"Mere vzorÄenja projekta (%d) trenutni izhodni zapis\n"
"ne podpira. "
-#: export/ExportFFmpeg.cpp:718
+#: export/ExportFFmpeg.cpp:764
#, c-format
-msgid "The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
+msgid ""
+"The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
"supported by the current output file format. "
-msgstr "Kombinacije mer vzorÄenja projekta (%d) in bitnega vzorÄenja (%d kb/s)\n"
+msgstr ""
+"Kombinacije mer vzorÄenja projekta (%d) in bitnega vzorÄenja (%d kb/s)\n"
"trenutni izhodni zapis ne podpira. "
-#: export/ExportFFmpeg.cpp:721
-#: export/ExportMP3.cpp:1939
+#: export/ExportFFmpeg.cpp:767
+#: export/ExportMP3.cpp:1796
msgid "You may resample to one of the rates below."
msgstr "PrevzorÄite lahko na eno od spodnjih vrednosti."
-#: export/ExportFFmpeg.cpp:749
-#: export/ExportMP3.cpp:1962
+#: export/ExportFFmpeg.cpp:795
+#: export/ExportMP3.cpp:1819
msgid "Sample Rates"
msgstr "Mere vzorÄenja"
@@ -6262,405 +6708,443 @@ msgstr "Mere vzorÄenja"
msgid "Specify AC3 Options"
msgstr "DoloÄite možnosti AC3"
-#: export/ExportFFmpegDialogs.cpp:117
+#: export/ExportFFmpegDialogs.cpp:112
msgid "AC3 Export Setup"
msgstr "Namestitev izvoza AC3"
-#: export/ExportFFmpegDialogs.cpp:121
-#: export/ExportFFmpegDialogs.cpp:245
-#: export/ExportFFmpegDialogs.cpp:314
-#: export/ExportFFmpegDialogs.cpp:385
-#: export/ExportFFmpegDialogs.cpp:937
-#: export/ExportMP2.cpp:133
+#: export/ExportFFmpegDialogs.cpp:116
+#: export/ExportFFmpegDialogs.cpp:234
+#: export/ExportFFmpegDialogs.cpp:298
+#: export/ExportFFmpegDialogs.cpp:364
+#: export/ExportFFmpegDialogs.cpp:926
+#: export/ExportMP2.cpp:131
msgid "Bit Rate:"
msgstr "Bitna hitrost:"
-#: export/ExportFFmpegDialogs.cpp:162
+#: export/ExportFFmpegDialogs.cpp:157
msgid "Specify AAC Options"
msgstr "DoloÄite možnosti AAC"
-#: export/ExportFFmpegDialogs.cpp:178
+#: export/ExportFFmpegDialogs.cpp:168
msgid "AAC Export Setup"
msgstr "Namestitev izvoza AAC"
-#: export/ExportFFmpegDialogs.cpp:217
+#: export/ExportFFmpegDialogs.cpp:172
+#: export/ExportFFmpegDialogs.cpp:929
+#: export/ExportOGG.cpp:84
+msgid "Quality:"
+msgstr "Kakovost:"
+
+#: export/ExportFFmpegDialogs.cpp:211
msgid "Specify AMR-NB Options"
msgstr "DoloÄite možnosti AMR-NB"
-#: export/ExportFFmpegDialogs.cpp:241
+#: export/ExportFFmpegDialogs.cpp:230
msgid "AMR-NB Export Setup"
msgstr "Namestitev izvoza AMR-NB"
-#: export/ExportFFmpegDialogs.cpp:286
+#: export/ExportFFmpegDialogs.cpp:275
msgid "Specify AMR-WB Options"
msgstr "DoloÄite možnosti AMR-WB"
-#: export/ExportFFmpegDialogs.cpp:310
+#: export/ExportFFmpegDialogs.cpp:294
msgid "AMR-WB Export Setup"
msgstr "Namestitev izvoza AMR-WB"
-#: export/ExportFFmpegDialogs.cpp:357
+#: export/ExportFFmpegDialogs.cpp:341
msgid "Specify WMA Options"
msgstr "DoloÄite možnosti WMA"
-#: export/ExportFFmpegDialogs.cpp:381
+#: export/ExportFFmpegDialogs.cpp:360
msgid "WMA Export Setup"
msgstr "Namestitev izvoza WMA"
-#: export/ExportFFmpegDialogs.cpp:509
+#: export/ExportFFmpegDialogs.cpp:491
#, c-format
msgid "Overwrite preset '%s'?"
msgstr "Želite prepisati prednastavitev '%s'?"
-#: export/ExportFFmpegDialogs.cpp:510
+#: export/ExportFFmpegDialogs.cpp:492
msgid "Confirm Overwrite"
msgstr "Potrditev prepisa"
-#: export/ExportFFmpegDialogs.cpp:501
+#: export/ExportFFmpegDialogs.cpp:504
msgid "Please select format before saving a profile"
-msgstr ""
+msgstr "Pred shranjevanjem profila izberite zapis"
-#: export/ExportFFmpegDialogs.cpp:509
+#: export/ExportFFmpegDialogs.cpp:512
msgid "Please select codec before saving a profile"
-msgstr ""
+msgstr "Pred shranjevanjem profila izberite kodek"
-#: export/ExportFFmpegDialogs.cpp:580
+#: export/ExportFFmpegDialogs.cpp:582
#, c-format
msgid "Preset '%s' does not exist."
-msgstr ""
+msgstr "Prednastavitev '%s' ne obstaja."
-#: export/ExportFFmpegDialogs.cpp:803
+#: export/ExportFFmpegDialogs.cpp:797
msgid "Specify Other Options"
msgstr "DoloÄite druge možnosti"
-#: export/ExportFFmpegDialogs.cpp:897
+#: export/ExportFFmpegDialogs.cpp:886
msgid "Preset:"
msgstr "Prednastavitev:"
-#: export/ExportFFmpegDialogs.cpp:898
+#: export/ExportFFmpegDialogs.cpp:887
msgid "Load Preset"
msgstr "Naloži prednastavitev"
-#: export/ExportFFmpegDialogs.cpp:899
+#: export/ExportFFmpegDialogs.cpp:888
msgid "Save Preset"
msgstr "Shrani prednastavitev"
-#: export/ExportFFmpegDialogs.cpp:900
+#: export/ExportFFmpegDialogs.cpp:889
msgid "Delete Preset"
msgstr "Izbriši prednastavitev"
-#: export/ExportFFmpegDialogs.cpp:901
+#: export/ExportFFmpegDialogs.cpp:890
msgid "Import Presets"
msgstr "Uvozi prednastavitve"
-#: export/ExportFFmpegDialogs.cpp:902
+#: export/ExportFFmpegDialogs.cpp:891
msgid "Export Presets"
msgstr "Izvozi prednastavitve"
-#: export/ExportFFmpegDialogs.cpp:907
+#: export/ExportFFmpegDialogs.cpp:896
msgid "Format:"
msgstr "Zapis:"
-#: export/ExportFFmpegDialogs.cpp:909
+#: export/ExportFFmpegDialogs.cpp:898
msgid "Codec:"
msgstr "Kodek:"
-#: export/ExportFFmpegDialogs.cpp:913
+#: export/ExportFFmpegDialogs.cpp:902
msgid "Not all formats and codecs are compatible. Some parameters (such as bitrate and samplerate) combinations are not compatible with some codecs too."
msgstr "Vsi zapisi in kodeki niso med seboj kompatibilni. Nekatere kombinacije parametrov (kot sta bitno vzorÄenje in mera vzorÄenja) sploh niso kompatibilne z nekaterimi kodeki."
-#: export/ExportFFmpegDialogs.cpp:916
+#: export/ExportFFmpegDialogs.cpp:905
msgid "Format selector:"
msgstr "Izbirnik zapisa:"
-#: export/ExportFFmpegDialogs.cpp:917
+#: export/ExportFFmpegDialogs.cpp:906
msgid "Codec selector:"
msgstr "Izbirnik kodeka:"
-#: export/ExportFFmpegDialogs.cpp:919
+#: export/ExportFFmpegDialogs.cpp:908
msgid "Show All Formats"
msgstr "Pokaži vse vrste datotek"
-#: export/ExportFFmpegDialogs.cpp:920
+#: export/ExportFFmpegDialogs.cpp:909
msgid "Show All Codecs"
msgstr "Pokaži vse kodeke"
-#: export/ExportFFmpegDialogs.cpp:914
+#: export/ExportFFmpegDialogs.cpp:916
msgid "Options"
-msgstr ""
+msgstr "Možnosti"
-#: export/ExportFFmpegDialogs.cpp:931
-#: prefs/GUIPrefs.cpp:166
+#: export/ExportFFmpegDialogs.cpp:920
+#: prefs/GUIPrefs.cpp:116
msgid "Language:"
msgstr "Jezik:"
-#: export/ExportFFmpegDialogs.cpp:932
-msgid "ISO 639 3-letter language code\n"
+#: export/ExportFFmpegDialogs.cpp:921
+msgid ""
+"ISO 639 3-letter language code\n"
"Optional\n"
"empty - automatic"
-msgstr "3-Ärkovna koda jezika ISO 639\n"
+msgstr ""
+"3-Ärkovna koda jezika ISO 639\n"
"neobvezno\n"
"prazno - samodejno"
-#: export/ExportFFmpegDialogs.cpp:934
+#: export/ExportFFmpegDialogs.cpp:923
msgid "Tag:"
msgstr "ZnaÄka:"
-#: export/ExportFFmpegDialogs.cpp:935
-msgid "Codec tag (FOURCC)\n"
+#: export/ExportFFmpegDialogs.cpp:924
+msgid ""
+"Codec tag (FOURCC)\n"
"Optional\n"
"empty - automatic"
-msgstr "ZnaÄka kodeka (FOURCC)\n"
+msgstr ""
+"ZnaÄka kodeka (FOURCC)\n"
"neobvezno\n"
"prazno - samodejno"
-#: export/ExportFFmpegDialogs.cpp:938
-msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n"
+#: export/ExportFFmpegDialogs.cpp:927
+msgid ""
+"Bit Rate (bits/second) - influences the resulting file size and quality\n"
"Some codecs may only accept specific values (128k, 192k, 256k etc)\n"
"0 - automatic\n"
"Recommended - 192000"
-msgstr "Bitno vzorÄenje (bitov/sekundo) - vpliva na velikost in kakovost konÄne datoteke\n"
+msgstr ""
+"Bitno vzorÄenje (bitov/sekundo) - vpliva na velikost in kakovost konÄne datoteke\n"
"Nekateri kodeki uporabljajo le doloÄene vrednosti (128k, 192k, 256k itn.).\n"
"0 - samodejno\n"
"PriporoÄeno - 192000"
-#: export/ExportFFmpegDialogs.cpp:940
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr "Kakovost:"
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid ""
+"Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
-msgstr "SploÅ¡na kakovost, ki jo razliÄni kodeki uporabljajo razliÄno\n"
-"obvezno za vorbis\n"
+msgstr ""
+"SploÅ¡na kakovost, ki jo razliÄni kodeki uporabljajo razliÄno\n"
+"Obvezno za vorbis\n"
"0 - samodejno\n"
"-1 - izkljuÄeno (namesto tega uporabi bitno hitrost)"
-#: export/ExportFFmpegDialogs.cpp:943
+#: export/ExportFFmpegDialogs.cpp:932
msgid "Sample Rate:"
msgstr "Mera vzorÄenja:"
-#: export/ExportFFmpegDialogs.cpp:944
-msgid "Sample rate (Hz)\n"
+#: export/ExportFFmpegDialogs.cpp:933
+msgid ""
+"Sample rate (Hz)\n"
"0 - don't change sample rate"
-msgstr "Mera vzorÄenja (Hz)\n"
+msgstr ""
+"Mera vzorÄenja (Hz)\n"
"0 - ne spreminjaj mere vzorÄenja"
-#: export/ExportFFmpegDialogs.cpp:946
+#: export/ExportFFmpegDialogs.cpp:935
msgid "Cutoff Bandwidth:"
msgstr "Pasovna širina porezave:"
-#: export/ExportFFmpegDialogs.cpp:947
-msgid "Audio cutoff bandwidth (Hz)\n"
+#: export/ExportFFmpegDialogs.cpp:936
+msgid ""
+"Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
-msgstr "Pasovna Å¡irina zvoÄne porezave (Hz)\n"
-"neobvezno\n"
-"0 - samodejna\n"
+"0 - automatic"
+msgstr ""
+"Pasovna Å¡irina zvoÄne porezave (Hz)\n"
+"Neobvezno\n"
+"0 - samodejna"
-#: export/ExportFFmpegDialogs.cpp:949
+#: export/ExportFFmpegDialogs.cpp:938
msgid "Profile:"
msgstr "Profil:"
-#: export/ExportFFmpegDialogs.cpp:951
-msgid "AAC Profile\n"
+#: export/ExportFFmpegDialogs.cpp:940
+msgid ""
+"AAC Profile\n"
"Low Complexity -default\n"
"Most players won't play anything other than LC"
-msgstr "Profil AAC\n"
+msgstr ""
+"Profil AAC\n"
"Nizka kompleksnost (LC) - privzeto\n"
"VeÄina predvajalnikov ne bo predvajala niÄesar drugega kot LC."
-#: export/ExportFFmpegDialogs.cpp:940
+#: export/ExportFFmpegDialogs.cpp:942
msgid "Use Bit Reservoir"
-msgstr ""
+msgstr "Uporabi bitni hranilnik (Bit Reservoir)"
-#: export/ExportFFmpegDialogs.cpp:943
+#: export/ExportFFmpegDialogs.cpp:945
msgid "Use Variable Block Length"
-msgstr ""
+msgstr "Uporabi spremenljivo dolžino bloka (VBL)"
-#: export/ExportFFmpegDialogs.cpp:948
+#: export/ExportFFmpegDialogs.cpp:950
msgid "FLAC options"
-msgstr ""
+msgstr "Možnosti za FLAC"
-#: export/ExportFFmpegDialogs.cpp:965
+#: export/ExportFFmpegDialogs.cpp:954
msgid "Compression Level:"
msgstr "Raven stiskanja:"
-#: export/ExportFFmpegDialogs.cpp:966
-msgid "Compression level\n"
+#: export/ExportFFmpegDialogs.cpp:955
+msgid ""
+"Compression level\n"
"Required for FLAC\n"
"-1 - automatic\n"
"min - 0 (fast encoding, large output file)\n"
"max - 10 (slow encoding, small output file)"
-msgstr "Raven stiskanja\n"
+msgstr ""
+"Raven stiskanja\n"
"obvezno za FLAC\n"
"-1 - samodejno\n"
"najmanjše - 0 (hitro kodiranje, velika izhodna datoteka)\n"
"najveÄje - 10 (poÄasno kodiranje, majhna izhodna datoteka)"
-#: export/ExportFFmpegDialogs.cpp:968
+#: export/ExportFFmpegDialogs.cpp:957
msgid "Frame Size:"
msgstr "Velikost sliÄice:"
-#: export/ExportFFmpegDialogs.cpp:969
-msgid "Frame size\n"
+#: export/ExportFFmpegDialogs.cpp:958
+msgid ""
+"Frame size\n"
"Optional\n"
"0 - default\n"
"min - 16\n"
"max - 65535"
-msgstr "Velikost sliÄice\n"
+msgstr ""
+"Velikost sliÄice\n"
"neobvezno\n"
"0 - privzeta\n"
"najmanjša - 16\n"
"najveÄja - 65535"
-#: export/ExportFFmpegDialogs.cpp:971
+#: export/ExportFFmpegDialogs.cpp:960
msgid "LPC coefficients precision"
msgstr "NatanÄnost koeficientov LPC"
-#: export/ExportFFmpegDialogs.cpp:972
-msgid "LPC coefficients precision\n"
+#: export/ExportFFmpegDialogs.cpp:961
+msgid ""
+"LPC coefficients precision\n"
"Optional\n"
"0 - default\n"
"min - 1\n"
"max - 15"
-msgstr "NatanÄnost koeficientov LPC\n"
+msgstr ""
+"NatanÄnost koeficientov LPC\n"
"neobvezno\n"
"0 - privzeto\n"
"najmanj - 1\n"
"najveÄ - 15"
-#: export/ExportFFmpegDialogs.cpp:974
+#: export/ExportFFmpegDialogs.cpp:963
msgid "Minimal prediction order"
msgstr "Najrajše zaporedje napovedi"
-#: export/ExportFFmpegDialogs.cpp:975
-msgid "Minimal prediction order\n"
+#: export/ExportFFmpegDialogs.cpp:964
+msgid ""
+"Minimal prediction order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 32 (with LPC) or 4 (without LPC)"
-msgstr "Najkrajše zaporedje napovedi\n"
+msgstr ""
+"Najkrajše zaporedje napovedi\n"
"neobvezno\n"
"-1 - privzeto\n"
"najkrajše - 0\n"
"najdaljše - 32 (z LPC) ali 4 (brez LPC)"
-#: export/ExportFFmpegDialogs.cpp:977
+#: export/ExportFFmpegDialogs.cpp:966
msgid "Maximal prediction order"
msgstr "Najdaljše zaporedje napovedi"
-#: export/ExportFFmpegDialogs.cpp:978
-msgid "Maximal prediction order\n"
+#: export/ExportFFmpegDialogs.cpp:967
+msgid ""
+"Maximal prediction order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 32 (with LPC) or 4 (without LPC)"
-msgstr "Najdaljše zaporedje napovedi\n"
+msgstr ""
+"Najdaljše zaporedje napovedi\n"
"neobvezno\n"
"-1 - privzeto\n"
"najkrajše - 0\n"
"najdaljše - 32 (z LPC) ali 4 (brez LPC)"
-#: export/ExportFFmpegDialogs.cpp:980
+#: export/ExportFFmpegDialogs.cpp:969
msgid "Prediction Order Method:"
msgstr "Metoda zaporedja napovedi:"
-#: export/ExportFFmpegDialogs.cpp:982
-msgid "Prediction Order Method\n"
+#: export/ExportFFmpegDialogs.cpp:971
+msgid ""
+"Prediction Order Method\n"
"Estimate - fastest, lower compression\n"
"Log search - slowest, best compression\n"
"Full search - default"
-msgstr "Metoda zaporedja napovedi\n"
+msgstr ""
+"Metoda zaporedja napovedi\n"
"Ocenjeno - najhitrejše, slabše stiskanje\n"
"Logaritemsko iskanje - najpoÄasnejÅ¡e, najboljÅ¡e stiskanje\n"
"Polno iskanje - privzeto"
-#: export/ExportFFmpegDialogs.cpp:984
+#: export/ExportFFmpegDialogs.cpp:973
msgid "Minimal partition order"
msgstr "Najkrajše zaporedje razdelitve"
-#: export/ExportFFmpegDialogs.cpp:985
-msgid "Minimal partition order\n"
+#: export/ExportFFmpegDialogs.cpp:974
+msgid ""
+"Minimal partition order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 8"
-msgstr "Najkrajše zaporedje razdelitve\n"
+msgstr ""
+"Najkrajše zaporedje razdelitve\n"
"neobvezno\n"
"-1 - privzeto\n"
"najkrajše - 0\n"
"najdaljše - 8"
-#: export/ExportFFmpegDialogs.cpp:987
+#: export/ExportFFmpegDialogs.cpp:976
msgid "Maximal partition order"
msgstr "Najdaljše zaporedje razdelitve"
-#: export/ExportFFmpegDialogs.cpp:988
-msgid "Maximal partition order\n"
+#: export/ExportFFmpegDialogs.cpp:977
+msgid ""
+"Maximal partition order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 8"
-msgstr "Najdaljše zaporedje razdelitve\n"
+msgstr ""
+"Najdaljše zaporedje razdelitve\n"
"neobvezno\n"
"-1 - privzeto\n"
"najkrajše - 0\n"
"najdaljše - 8"
-#: export/ExportFFmpegDialogs.cpp:977
+#: export/ExportFFmpegDialogs.cpp:979
msgid "Use LPC"
-msgstr ""
+msgstr "Uporabi LPC"
-#: export/ExportFFmpegDialogs.cpp:984
+#: export/ExportFFmpegDialogs.cpp:986
msgid "MPEG container options"
-msgstr ""
+msgstr "Možnosti vsebnika MPEG"
-#: export/ExportFFmpegDialogs.cpp:1001
+#: export/ExportFFmpegDialogs.cpp:990
msgid "Mux Rate:"
msgstr "Mera multipleksiranja:"
-#: export/ExportFFmpegDialogs.cpp:1002
-msgid "Maximum bit rate of the multiplexed stream\n"
+#: export/ExportFFmpegDialogs.cpp:991
+msgid ""
+"Maximum bit rate of the multiplexed stream\n"
"Optional\n"
"0 - default"
-msgstr "NajveÄje bitno vzorÄenje multipleksiranega toka\n"
+msgstr ""
+"NajveÄje bitno vzorÄenje multipleksiranega toka\n"
"neobvezno\n"
"0 - privzeto"
-#: export/ExportFFmpegDialogs.cpp:1004
+#: export/ExportFFmpegDialogs.cpp:993
msgid "Packet Size:"
msgstr "Velikost paketa:"
-#: export/ExportFFmpegDialogs.cpp:1005
-msgid "Packet size\n"
+#: export/ExportFFmpegDialogs.cpp:994
+msgid ""
+"Packet size\n"
"Optional\n"
"0 - default"
-msgstr "Velikost paketa\n"
+msgstr ""
+"Velikost paketa\n"
"neobvezno\n"
"0 - privzeta"
-#: export/ExportFFmpegDialogs.cpp:1207
+#: export/ExportFFmpegDialogs.cpp:1209
msgid "You can't delete a preset without name"
-msgstr ""
+msgstr "Prednastavitve brez imena ne morete izbrisati"
-#: export/ExportFFmpegDialogs.cpp:1219
+#: export/ExportFFmpegDialogs.cpp:1213
#, c-format
msgid "Delete preset '%s'?"
msgstr "Želite izbrisati prednastavitev '%s'?"
-#: export/ExportFFmpegDialogs.cpp:1238
+#: export/ExportFFmpegDialogs.cpp:1232
msgid "You can't save a preset without name"
msgstr "Prednastavitve brez imena ne morete shraniti"
-#: export/ExportFFmpegDialogs.cpp:1277
+#: export/ExportFFmpegDialogs.cpp:1272
msgid "Select xml file with presets to import"
msgstr "Izberite datoteko XML s prednastavitvami, ki jo želite uvoziti"
-#: prefs/KeyConfigPrefs.cpp:202
+#: export/ExportFFmpegDialogs.cpp:1275
+#: export/ExportFFmpegDialogs.cpp:1295
+#: prefs/KeyConfigPrefs.cpp:267
+#: prefs/KeyConfigPrefs.cpp:298
msgid "XML files (*.xml)|*.xml|All files (*.*)|*.*"
msgstr "Datoteke XML (*.xml)|*.xml|Vse datoteke (*.*)|*.*"
@@ -6668,71 +7152,71 @@ msgstr "Datoteke XML (*.xml)|*.xml|Vse datoteke (*.*)|*.*"
msgid "Select xml file to export presets into"
msgstr "Izberite datoteko XML za izvoz prednastavitev."
-#: export/ExportFFmpegDialogs.cpp:1361
+#: export/ExportFFmpegDialogs.cpp:1363
msgid "Failed to guess format"
-msgstr ""
+msgstr "Zapisa ni mogoÄe uganiti"
-#: export/ExportFFmpegDialogs.cpp:1403
+#: export/ExportFFmpegDialogs.cpp:1405
msgid "Failed to find the codec"
-msgstr ""
+msgstr "Kodeka ni mogoÄe najti"
-#: export/ExportFFmpegDialogs.h:53
+#: export/ExportFFmpegDialogs.h:54
msgid "M4A (AAC) Files (FFmpeg)"
msgstr "Datoteke M4A (AAC) (FFmpeg)"
-#: export/ExportFFmpegDialogs.h:54
+#: export/ExportFFmpegDialogs.h:55
msgid "AC3 Files (FFmpeg)"
msgstr "Datoteke AC3 (FFmpeg)"
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
-msgstr "Datoteke AMR (ozkopasovne) (FFmpeg)"
-
#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
-msgstr "Datoteke AMR (širokopasovne) (FFmpeg)"
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
+msgstr "Datoteke AMR (ozkopasovne) (FFmpeg, nerazširljive)"
#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
+msgstr "Datoteke AMR (širokopasovne) (FFmpeg, nerazširljive)"
+
+#: export/ExportFFmpegDialogs.h:58
msgid "WMA (version 2) Files (FFmpeg)"
msgstr "Datoteke WMA (razl. 2) (FFmpeg)"
-#: export/ExportFFmpegDialogs.h:58
+#: export/ExportFFmpegDialogs.h:59
msgid "Custom FFmpeg Export"
msgstr "Izvoz FFmpeg po meri"
-#: export/ExportFFmpegDialogs.h:373
+#: export/ExportFFmpegDialogs.h:374
msgid "LTP"
msgstr "LTP"
-#: export/ExportFFmpegDialogs.h:373
+#: export/ExportFFmpegDialogs.h:374
msgid "Low Complexity"
msgstr "Nizka kompleksnost"
-#: export/ExportFFmpegDialogs.h:373
+#: export/ExportFFmpegDialogs.h:374
msgid "Main profile"
msgstr "Glavni profil"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "2-level"
msgstr "2-ravenski"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "4-level"
msgstr "4-ravenski"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "8-level"
msgstr "8-ravenski"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "Estimate"
msgstr "Oceni"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "Full search"
msgstr "Polno iskanje"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "Log search"
msgstr "Iskanje po dnevniku"
@@ -6740,71 +7224,85 @@ msgstr "Iskanje po dnevniku"
msgid "Specify FLAC Options"
msgstr "DoloÄite možnosti FLAC"
-#: export/ExportFLAC.cpp:81
+#: export/ExportFLAC.cpp:79
msgid "0 (fastest)"
msgstr "0 (najhitrejše)"
-#: export/ExportFLAC.cpp:82
+#: export/ExportFLAC.cpp:80
msgid "1"
msgstr "1"
-#: export/ExportFLAC.cpp:83
+#: export/ExportFLAC.cpp:81
msgid "2"
msgstr "2"
-#: export/ExportFLAC.cpp:84
+#: export/ExportFLAC.cpp:82
msgid "3"
msgstr "3"
-#: export/ExportFLAC.cpp:85
+#: export/ExportFLAC.cpp:83
msgid "4"
msgstr "4"
-#: export/ExportFLAC.cpp:86
+#: export/ExportFLAC.cpp:84
msgid "5"
msgstr "5"
-#: export/ExportFLAC.cpp:87
+#: export/ExportFLAC.cpp:85
msgid "6"
msgstr "6"
-#: export/ExportFLAC.cpp:88
+#: export/ExportFLAC.cpp:86
msgid "7"
msgstr "7"
-#: export/ExportFLAC.cpp:89
+#: export/ExportFLAC.cpp:87
msgid "8 (best)"
msgstr "8 (najboljše)"
-#: export/ExportFLAC.cpp:92
+#: export/ExportFLAC.cpp:90
msgid "16 bit"
msgstr "16-bitno"
-#: export/ExportFLAC.cpp:93
+#: export/ExportFLAC.cpp:91
msgid "24 bit"
msgstr "24-bitno"
-#: export/ExportFLAC.cpp:97
+#: export/ExportFLAC.cpp:95
msgid "FLAC Export Setup"
msgstr "Namestitev izvoza FLAC"
-#: export/ExportFLAC.cpp:101
+#: export/ExportFLAC.cpp:99
msgid "Level:"
msgstr "Raven:"
-#: export/ExportFLAC.cpp:103
+#: export/ExportFLAC.cpp:101
msgid "Bit depth:"
msgstr "Bitna globina:"
-#: export/ExportFLAC.cpp:209
+#: export/ExportFLAC.cpp:207
msgid "FLAC Files"
msgstr "Datoteke FLAC"
-#: export/ExportFLAC.cpp:312
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr "Izvoz FLAC ne more odpreti %s"
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid ""
+"FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+"Kodirniku FLAC ni uspela inicializacija\n"
+"Stanje: %d"
+
+#: export/ExportFLAC.cpp:324
msgid "Exporting the selected audio as FLAC"
msgstr "Izvažanje izbranega zvoka kot FLAC"
-#: export/ExportFLAC.cpp:313
+#: export/ExportFLAC.cpp:325
msgid "Exporting the entire project as FLAC"
msgstr "Izvažanje celotnega projekta kot FLAC"
@@ -6812,72 +7310,72 @@ msgstr "Izvažanje celotnega projekta kot FLAC"
msgid "Specify MP2 Options"
msgstr "DoloÄite možnosti MP2"
-#: export/ExportMP2.cpp:129
+#: export/ExportMP2.cpp:127
msgid "MP2 Export Setup"
msgstr "Namestitev izvoza MP2"
-#: export/ExportMP2.cpp:202
+#: export/ExportMP2.cpp:200
msgid "MP2 Files"
msgstr "Datoteke MP2"
-#: export/ExportMP2.cpp:232
+#: export/ExportMP2.cpp:230
msgid "Cannot export MP2 with this sample rate and bit rate"
msgstr "Izvoz v MP2 ni mogoÄe pri tej frekvenci vzorÄenja in bitni hitrosti"
-#: export/ExportMP2.cpp:243
-#: export/ExportMP3.cpp:1771
-#: export/ExportOGG.cpp:186
+#: export/ExportMP2.cpp:241
+#: export/ExportMP3.cpp:1619
+#: export/ExportOGG.cpp:184
msgid "Unable to open target file for writing"
msgstr "Datoteke za zapisovanje ni mogoÄe odpreti"
-#: export/ExportMP2.cpp:274
+#: export/ExportMP2.cpp:273
#, c-format
msgid "Exporting selected audio at %d kbps"
msgstr "Izvažanje izbranega zvoka pri %d kb/s"
-#: export/ExportMP2.cpp:275
+#: export/ExportMP2.cpp:274
#, c-format
msgid "Exporting entire file at %d kbps"
msgstr "Izvažanje celotne datoteke pri %d kb/s"
-#: export/ExportMP3.cpp:221
-#: export/ExportMP3.cpp:239
-#: export/ExportMP3.cpp:253
+#: export/ExportMP3.cpp:223
+#: export/ExportMP3.cpp:241
+#: export/ExportMP3.cpp:255
msgid "kbps"
msgstr "kb/s"
-#: export/ExportMP3.cpp:240
+#: export/ExportMP3.cpp:242
msgid "(Best Quality)"
msgstr "(najvišja kakovost)"
-#: export/ExportMP3.cpp:241
+#: export/ExportMP3.cpp:243
msgid "(Smaller files)"
msgstr "(manjše datoteke)"
-#: export/ExportMP3.cpp:243
+#: export/ExportMP3.cpp:245
msgid "Fast"
msgstr "Hitro"
-#: export/ExportMP3.cpp:244
-#: export/ExportMP3.cpp:250
-#: prefs/GUIPrefs.cpp:41
-#: prefs/GUIPrefs.cpp:49
+#: export/ExportMP3.cpp:246
+#: export/ExportMP3.cpp:252
+#: prefs/GUIPrefs.cpp:50
+#: prefs/TracksPrefs.cpp:46
msgid "Standard"
msgstr "Navadno"
-#: export/ExportMP3.cpp:248
+#: export/ExportMP3.cpp:250
msgid "Insane"
msgstr "Noro"
-#: export/ExportMP3.cpp:249
+#: export/ExportMP3.cpp:251
msgid "Extreme"
msgstr "Skrajno"
-#: export/ExportMP3.cpp:251
+#: export/ExportMP3.cpp:253
msgid "Medium"
msgstr "Srednje"
-#: export/ExportMP3.cpp:303
+#: export/ExportMP3.cpp:305
msgid "Specify MP3 Options"
msgstr "DoloÄite možnosti MP3"
@@ -6906,8 +7404,7 @@ msgid "Constant"
msgstr "konstantni"
#: export/ExportMP3.cpp:373
-#: prefs/QualityPrefs.cpp:42
-#: prefs/QualityPrefs.cpp:43
+#: prefs/QualityPrefs.cpp:38
msgid "Quality"
msgstr "Kakovost"
@@ -6942,500 +7439,551 @@ msgstr "Äe želite brezplaÄno kopijo Lame, kliknite sem -->"
#: export/ExportMP3.cpp:1070
#, c-format
-msgid "You are linking to lame_enc.dll v%d.%d. This version is not compatible with Audacity %d.%d.%d.\n"
+msgid ""
+"You are linking to lame_enc.dll v%d.%d. This version is not compatible with Audacity %d.%d.%d.\n"
"Please download the latest version of the LAME MP3 library."
msgstr ""
+"Povezava kaže na lame_enc.dll razl%d.%d. Ta razliÄica ni kompatibilna z Audacity %d.%d.%d.\n"
+"Prenesite najnovejÅ¡o razliÄico knjižnice LAME MP3."
-#: export/ExportMP3.cpp:1094
+#: export/ExportMP3.cpp:1328
msgid "Only lame_enc.dll|lame_enc.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
msgstr "Samo lame_enc.dll|lame_enc.dll|DinamiÄno povezane knjižnice (*.dll)|*.dll|Vse datoteke (*.*)|*"
-#: export/ExportMP3.cpp:1550
+#: export/ExportMP3.cpp:1346
msgid "Only libmp3lame.dylib|libmp3lame.dylib|Dynamic Libraries (*.dylib)|*.dylib|All Files (*)|*"
msgstr "Le libmp3lame.dylib|libmp3lame.dylib|DinamiÄne knjižnice (*.dylib)|*.dylib|Vse datoteke (*)|*"
-#: export/ExportMP3.cpp:1567
+#: export/ExportMP3.cpp:1364
msgid "Only libmp3lame.so.0|libmp3lame.so.0|Primary Shared Object files (*.so)|*.so|Extended Libraries (*.so*)|*.so*|All Files (*)|*"
msgstr "Samo libmp3lame.so.0|libmp3lame.so.0|Prvotne skupne razredne datoteke (*.so)|*.so|Razširjene knjižnice (*.so*)|*.so*|Vse datoteke (*)|*"
-#: export/ExportMP3.cpp:1652
+#: export/ExportMP3.cpp:1500
msgid "MP3 Files"
msgstr "Datoteke MP3"
-#: export/ExportMP3.cpp:1676
+#: export/ExportMP3.cpp:1524
msgid "Could not open MP3 encoding library!"
msgstr "Napaka pri odpiranju knjižnice za MP3 kodiranje!"
-#: export/ExportMP3.cpp:1683
+#: export/ExportMP3.cpp:1531
msgid "Not a valid or supported MP3 encoding library!"
msgstr "Neveljavna ali nepodprta knjižnica za MP3 kodiranje!"
-#: export/ExportMP3.cpp:1760
+#: export/ExportMP3.cpp:1608
msgid "Unable to initialize MP3 stream"
msgstr "Toka MP3 ni mogoÄe inicializirati"
-#: export/ExportMP3.cpp:1802
+#: export/ExportMP3.cpp:1652
#, c-format
msgid "Exporting selected audio with %s preset"
msgstr "Izvažanje izbranega zvoka s prednastavitvijo %s"
-#: export/ExportMP3.cpp:1803
+#: export/ExportMP3.cpp:1653
#, c-format
msgid "Exporting entire file with %s preset"
msgstr "Izvažanje celotne datoteke s prednastavitvijo %s"
-#: export/ExportMP3.cpp:1808
+#: export/ExportMP3.cpp:1658
#, c-format
msgid "Exporting selected audio with VBR quality %s"
msgstr "Izvažanje izbranega zvoka pri kakovosti VBR %s"
-#: export/ExportMP3.cpp:1809
+#: export/ExportMP3.cpp:1659
#, c-format
msgid "Exporting entire file with VBR quality %s"
msgstr "Izvažanje celotne datoteke pri kakovosti VBR %s"
-#: export/ExportMP3.cpp:1814
+#: export/ExportMP3.cpp:1664
#, c-format
msgid "Exporting selected audio at %d Kbps"
msgstr "Izvažanje izbranega zvoka pri %d Kb/s"
-#: export/ExportMP3.cpp:1815
+#: export/ExportMP3.cpp:1665
#, c-format
msgid "Exporting entire file at %d Kbps"
msgstr "Izvažanje celotne datoteke pri %d Kb/s"
-#: export/ExportMP3.cpp:1849
+#: export/ExportMP3.cpp:1699
#, c-format
msgid "Error %d returned from MP3 encoder"
msgstr "Kodirnik MP3 je vrnil napako %d"
-#: export/ExportMP3.cpp:1933
+#: export/ExportMP3.cpp:1790
#, c-format
-msgid "The project sample rate (%d) is not supported by the MP3\n"
+msgid ""
+"The project sample rate (%d) is not supported by the MP3\n"
"file format. "
msgstr "Mere vzorÄenja projekta (%d) zapis MP3 ne podpira."
-#: export/ExportMP3.cpp:1936
+#: export/ExportMP3.cpp:1793
#, c-format
-msgid "The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
+msgid ""
+"The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
"supported by the MP3 file format. "
-msgstr "Kombinacije mer vzorÄenja projekta (%d) in bitnega vzorÄenja (%d kb/s)\n"
+msgstr ""
+"Kombinacije mer vzorÄenja projekta (%d) in bitnega vzorÄenja (%d kb/s)\n"
"zapis MP3 ne podpira. "
-#: export/ExportMP3.cpp:1965
+#: export/ExportMP3.cpp:1970
msgid "MP3 export library not found"
-msgstr ""
+msgstr "Izvozne knjižnice MP3 ni mogoÄe najti"
-#: export/ExportMultiple.cpp:96
-#: export/ExportMultiple.cpp:426
-#: export/ExportMultiple.cpp:667
-#: export/ExportMultiple.cpp:834
+#: export/ExportMultiple.cpp:93
+#: export/ExportMultiple.cpp:424
msgid "Export Multiple"
msgstr "Izvoz veÄih"
-#: export/ExportMultiple.cpp:166
-msgid "If you have more than one Audio Track, you can export each track as a separate file,\n"
+#: export/ExportMultiple.cpp:163
+msgid ""
+"If you have more than one Audio Track, you can export each track as a separate file,\n"
"or if you have a Label Track, you can export a new file for each label.\n"
"\n"
"This project does not have multiple tracks or a Label Track, so you cannot export multiple files."
-msgstr "Äe imate veÄ kot eno zvoÄno sled, lahko izvozite vsako sled kot loÄeno datoteko,\n"
+msgstr ""
+"Äe imate veÄ kot eno zvoÄno sled, lahko izvozite vsako sled kot loÄeno datoteko,\n"
"ali pa Äe imate sled z oznakami, lahko izvozite novo datoteko za vsako oznako.\n"
"\n"
"Ta projekt nima veÄ sledi niti sledi z oznakami, zato ne morete izvoziti veÄ datotek naenkrat."
-#: export/ExportMultiple.cpp:167
+#: export/ExportMultiple.cpp:164
msgid "Can't export multiple files"
msgstr "Ni mogoÄe izvoziti veÄ datotek."
-#: export/ExportMultiple.cpp:232
+#: export/ExportMultiple.cpp:229
msgid "Export format:"
msgstr "Oblika zapisa za izvoz:"
-#: export/ExportMultiple.cpp:237
+#: export/ExportMultiple.cpp:234
msgid "Options..."
msgstr "Možnosti ..."
-#: export/ExportMultiple.cpp:241
+#: export/ExportMultiple.cpp:238
msgid "Export location:"
msgstr "Mesto za izvoz:"
-#: export/ExportMultiple.cpp:245
-#: prefs/DirectoriesPrefs.cpp:92
-msgid "Choose..."
-msgstr "Izberi ..."
-
-#: export/ExportMultiple.cpp:246
+#: export/ExportMultiple.cpp:243
msgid "Create"
msgstr "Ustvari"
-#: export/ExportMultiple.cpp:253
+#: export/ExportMultiple.cpp:250
msgid "Split files based on:"
msgstr "Razdeli datoteke glede na:"
-#: export/ExportMultiple.cpp:262
-#: export/ExportMultiple.cpp:264
+#: export/ExportMultiple.cpp:259
+#: export/ExportMultiple.cpp:261
msgid "Labels"
msgstr "Oznake"
-#: export/ExportMultiple.cpp:269
+#: export/ExportMultiple.cpp:266
msgid "Include audio before first label"
msgstr "VkljuÄi zvok pred prvo oznako"
-#: export/ExportMultiple.cpp:275
+#: export/ExportMultiple.cpp:272
msgid "First file name:"
msgstr "Ime prve datoteke:"
-#: export/ExportMultiple.cpp:280
+#: export/ExportMultiple.cpp:277
msgid "First file name"
msgstr "Ime prve datoteke"
-#: export/ExportMultiple.cpp:288
-#: export/ExportMultiple.cpp:290
-msgid "Tracks"
-msgstr "Sledi"
-
-#: export/ExportMultiple.cpp:297
+#: export/ExportMultiple.cpp:294
msgid "Name files:"
msgstr "Poimenuj datoteke:"
-#: export/ExportMultiple.cpp:306
-#: export/ExportMultiple.cpp:308
+#: export/ExportMultiple.cpp:303
+#: export/ExportMultiple.cpp:305
msgid "Using Label/Track Name"
msgstr "Z uporabo oznake/imena sledi"
-#: export/ExportMultiple.cpp:314
-#: export/ExportMultiple.cpp:316
+#: export/ExportMultiple.cpp:311
+#: export/ExportMultiple.cpp:313
msgid "Numbering consecutively"
msgstr "Zaporedno Å¡tevilÄenje"
-#: export/ExportMultiple.cpp:322
+#: export/ExportMultiple.cpp:319
msgid "File name prefix:"
msgstr "Predpona imena datoteke:"
-#: export/ExportMultiple.cpp:327
+#: export/ExportMultiple.cpp:324
msgid "File name prefix"
msgstr "Predpona imena datoteke"
-#: export/ExportMultiple.cpp:341
+#: export/ExportMultiple.cpp:338
msgid "Overwrite existing files"
msgstr "PrepiÅ¡i obstojeÄe datoteke"
-#: export/ExportMultiple.cpp:424
+#: export/ExportMultiple.cpp:422
#, c-format
msgid "\"%s\" successfully created."
msgstr "\"%s\" je bila uspešno ustvarjena."
-#: export/ExportMultiple.cpp:433
+#: export/ExportMultiple.cpp:431
msgid "Choose a location to save the exported files"
msgstr "Izberite lokacijo, kjer bodo shranjene izvožene datoteke."
-#: export/ExportMultiple.cpp:539
+#: export/ExportMultiple.cpp:524
+#, c-format
+msgid "Successfully exported the following %ld file(s)."
+msgstr "Uspešno izvoženih naslednjih %ld datotek."
+
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the following %ld file(s)."
+msgstr "Po izvozu naslednjih %ld datotek je šlo nekaj narobe."
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
+msgstr "Po izvozu %ld datotek(e) je bil izvoz preklican."
+
+#: export/ExportMultiple.cpp:527
+#, c-format
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr "Po izvozu %ld datotek(e) se je izvoz ustavil."
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr "Po izvozu %ld datotek(e) je šlo nekaj res narobe."
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr "Izvoz veÄih"
+
+#: export/ExportMultiple.cpp:570
#, c-format
-msgid "\"%s\" doesn't exist.\n"
+msgid ""
+"\"%s\" doesn't exist.\n"
"\n"
"Would you like to create it?"
-msgstr "\"%s\" ne obstaja.\n"
+msgstr ""
+"\"%s\" ne obstaja.\n"
"\n"
"Jo želite ustvariti?"
-#: export/ExportMultiple.cpp:637
-#: export/ExportMultiple.cpp:772
+#: export/ExportMultiple.cpp:667
+#: export/ExportMultiple.cpp:804
msgid "Edit metadata"
msgstr "Uredi metapodatke"
-#: export/ExportMultiple.cpp:664
-#: export/ExportMultiple.cpp:831
-#, c-format
-msgid "Successfully exported %d file(s)."
-msgstr "Uspešno izvoženih %d datotek."
-
-#: export/ExportMultiple.cpp:665
-#: export/ExportMultiple.cpp:832
-#, c-format
-msgid "Something went wrong after exporting %d file(s)."
-msgstr "Po izvozu %d datotek(e) je šlo nekaj narobe."
-
-#: export/ExportMultiple.cpp:881
+#: export/ExportMultiple.cpp:923
#, c-format
-msgid "Label %s is not a legal file name. You cannot use any of: %s\n"
+msgid ""
+"Label %s is not a legal file name. You cannot use any of: %s\n"
"Use..."
-msgstr "Oznaka %s ni veljavno ime za datoteko. Ne smete uporabiti: %s\n"
+msgstr ""
+"Oznaka %s ni veljavno ime za datoteko. Ne smete uporabiti: %s\n"
"Uporabite ..."
#: export/ExportOGG.cpp:64
msgid "Specify Ogg Vorbis Options"
msgstr "DoloÄite možnosti Ogg Vorbis"
-#: export/ExportOGG.cpp:81
+#: export/ExportOGG.cpp:79
msgid "Ogg Vorbis Export Setup"
msgstr "Nastavitve izvoza Ogg Vorbis"
-#: export/ExportOGG.cpp:157
+#: export/ExportOGG.cpp:155
msgid "Ogg Vorbis Files"
msgstr "Datoteke Ogg Vorbis"
-#: export/ExportOGG.cpp:257
+#: export/ExportOGG.cpp:256
msgid "Exporting the selected audio as Ogg Vorbis"
msgstr "Izvažanje izbora v Ogg Vorbis"
-#: export/ExportOGG.cpp:258
+#: export/ExportOGG.cpp:257
msgid "Exporting the entire project as Ogg Vorbis"
msgstr "Izvažanje celotnega projekta v Ogg Vorbis"
-#: export/ExportPCM.cpp:116
+#: export/ExportPCM.cpp:119
msgid "Specify Uncompressed Options"
msgstr "DoloÄite možnosti za nestisnjene"
-#: export/ExportPCM.cpp:185
+#: export/ExportPCM.cpp:189
msgid "Uncompressed Export Setup"
msgstr "Nastavitve nestisnjenega izvoza"
-#: export/ExportPCM.cpp:191
+#: export/ExportPCM.cpp:195
msgid "Header:"
msgstr "Glava:"
-#: export/ExportPCM.cpp:195
-#: import/ImportRaw.cpp:366
+#: export/ExportPCM.cpp:199
+#: import/ImportRaw.cpp:376
msgid "Encoding:"
msgstr "Kodiranje: "
-#: export/ExportPCM.cpp:200
+#: export/ExportPCM.cpp:204
msgid "(Not all combinations of headers and encodings are possible.)"
msgstr "(Vse kombinacije glav in kodiranja niso možne.)"
-#: export/ExportPCM.cpp:369
+#: export/ExportPCM.cpp:359
msgid "Other uncompressed files"
msgstr "Druge nestisnjene datoteke"
-#: export/ExportPCM.cpp:361
+#: export/ExportPCM.cpp:377
msgid "AIFF (Apple) signed 16 bit PCM"
msgstr "AIFF (Apple), podpisano, 16-bitni PCM"
-#: export/ExportPCM.cpp:351
+#: export/ExportPCM.cpp:388
msgid "WAV (Microsoft) signed 16 bit PCM"
msgstr "WAV (Microsoft), podpisano, 16-bitni PCM"
-#: export/ExportPCM.cpp:387
+#: export/ExportPCM.cpp:399
msgid "GSM 6.10 WAV (mobile)"
msgstr "GSM 6.10 WAV (mobilno)"
-#: export/ExportPCM.cpp:449
+#: export/ExportPCM.cpp:476
msgid "Cannot export audio in this format."
-msgstr "Ne morem izvoziti posnetka v tem zapisu."
+msgstr "Posnetka v tem zapisu ni mogoÄe izvoziti."
-#: export/ExportPCM.cpp:491
+#: export/ExportPCM.cpp:526
#, c-format
msgid "Exporting the selected audio as %s"
msgstr "Izvažanje izbranega zvoka kot %s"
-#: export/ExportPCM.cpp:493
+#: export/ExportPCM.cpp:528
#, c-format
msgid "Exporting the entire project as %s"
msgstr "Izvažanje celotnega projekta kot %s"
#. i18n-hint: %s will be the error message from libsndfile
-#: export/ExportPCM.cpp:531
+#: export/ExportPCM.cpp:564
#, c-format
msgid "Error (file may not have been written): %s"
msgstr "Napaka (datoteka morda ni bila zapisana): %s"
-#: export/ExportPCM.cpp:723
+#: export/ExportPCM.cpp:735
msgid "There are no options for this format.\n"
-msgstr ""
+msgstr "Za ta zapis ne obstajajo možnosti.\n"
#. i18n-hint: This is pointing users at another possible export format in
#. * the list. So you should translate the quoted string
#. * 'Other uncompressed files' exactly the same as you do the same string
#. * when it comes up on it's own.
-#: export/ExportPCM.cpp:728
+#: export/ExportPCM.cpp:740
msgid "If you need more control over the export format please use the 'Other uncompressed files' format."
-msgstr ""
+msgstr "Äe potrebujete veÄ nadzora nad izvoznim zapisom, uporabite zapis 'Druge nestisnjene datoteke'."
-#: export/ExportPCM.cpp:733
+#: export/ExportPCM.cpp:745
msgid "Your file will be exported as a 16-bit AIFF (Apple/SGI) file.\n"
-msgstr ""
+msgstr "Vaša datoteka bo izvožena v 16-bitnem zapisu WAV (Apple/SGI).\n"
-#: export/ExportPCM.cpp:738
+#: export/ExportPCM.cpp:750
msgid "Your file will be exported as a 16-bit WAV (Microsoft) file.\n"
-msgstr ""
+msgstr "Vaša datoteka bo izvožena v 16-bitnem zapisu WAV (Microsoft).\n"
-#: export/ExportPCM.cpp:743
+#: export/ExportPCM.cpp:755
msgid "Your file will be exported as a GSM 6.10 WAV file.\n"
-msgstr ""
+msgstr "Vaša datoteka bo izvožena v zapisu GSM 6.10 WAV.\n"
-#: import/Import.cpp:156
+#: import/Import.cpp:162
#: import/ImportMP3.cpp:47
msgid "MP3 files"
msgstr "Datoteke MP3"
-#: import/Import.cpp:175
+#: import/Import.cpp:181
msgid "Select stream(s) to import"
msgstr "Izberite toke za uvoz"
-#: import/Import.cpp:227
+#: import/Import.cpp:234
#, c-format
msgid "This version of Audacity was not compiled with %s support."
msgstr "V tej razliÄici Audacity podpora za %s ni prevedena."
-#: import/Import.cpp:240
+#: import/Import.cpp:247
#, c-format
-msgid "\"%s\" \n"
+msgid ""
+"\"%s\" \n"
"is a MIDI file, not an audio file. \n"
"Audacity cannot open this type of file for playing, but you can\n"
"edit it by clicking File > Import > MIDI."
-msgstr "\"%s\" \n"
+msgstr ""
+"\"%s\" \n"
"je datoteka MIDI in ne zvoÄna datoteka. \n"
"Audacity te vrste datotek ne more odpreti za predvajanje ali urejanje,\n"
"lahko pa jo prikaže, Äe kliknete Datoteka > Uvozi > MIDI."
#. i18n-hint: %s will be the filename
-#: import/Import.cpp:250
+#: import/Import.cpp:257
#, c-format
-msgid "\"%s\" is an audio CD track. \n"
+msgid ""
+"\"%s\" is an audio CD track. \n"
"Audacity cannot open audio CDs directly. \n"
"Extract (rip) the CD tracks to an audio format that \n"
"Audacity can import, such as WAV or AIFF."
-msgstr "\"%s\" je datoteka (sled) glasbenega CD.\n"
+msgstr ""
+"\"%s\" je datoteka (sled) glasbenega CD.\n"
"Te vrste datotek Audacity neposredno ne odpira.\n"
"Poskusite jo sneti v zvoÄni zapis, ki ga\n"
"Audacity lahko odpre, kot sta npr. WAV ali AIFF."
-#: import/Import.cpp:256
+#: import/Import.cpp:263
#, c-format
-msgid "\"%s\" is a playlist file. \n"
+msgid ""
+"\"%s\" is a playlist file. \n"
"Audacity cannot open this file because it only contains links to other files. \n"
"You may be able to open it in a text editor and download the actual audio files."
-msgstr "\"%s\" je datoteka seznama predvajanja datotek.\n"
+msgstr ""
+"\"%s\" je datoteka seznama predvajanja datotek.\n"
"Audacity te datoteke ne more odpreti, ker vsebuje le povezave na druge datoteke.\n"
"Morda jo lahko odprete v urejevalniku besedila in nato prenesete navedene dejanske zvoÄne datoteke."
-#: import/Import.cpp:261
+#: import/Import.cpp:268
#, c-format
-msgid "\"%s\" is a Windows Media Audio file. \n"
+msgid ""
+"\"%s\" is a Windows Media Audio file. \n"
"Audacity cannot open this type of file due to patent restrictions. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr "\"%s\" je zvoÄna datoteka Windows Media Audio. \n"
+msgstr ""
+"\"%s\" je zvoÄna datoteka Windows Media Audio. \n"
"Audacity te vrste datotek ne more odpreti zaradi patentnih omejitev.\n"
"Pretvoriti jo morate v podprti zvoÄni zapis, kot sta WAV in AIFF."
-#: import/Import.cpp:266
+#: import/Import.cpp:273
#, c-format
-msgid "\"%s\" is an Advanced Audio Coding file. \n"
+msgid ""
+"\"%s\" is an Advanced Audio Coding file. \n"
"Audacity cannot open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr "\"%s\" je datoteka Advanced Audio Coding. \n"
+msgstr ""
+"\"%s\" je datoteka Advanced Audio Coding. \n"
"Audacity ne more odpreti te vrste datotek.\n"
"Pretvoriti jo morate v podprto vrsto zvoÄnih datotek, kot sta WAV in AIFF."
-#: import/Import.cpp:271
+#: import/Import.cpp:278
#, c-format
-msgid "\"%s\" is an encrypted audio file. \n"
+msgid ""
+"\"%s\" is an encrypted audio file. \n"
"These typically are from an online music store. \n"
"Audacity cannot open this type of file due to the encryption. \n"
"Try recording the file into Audacity, or burn it to audio CD then \n"
"extract the CD track to a supported audio format such as WAV or AIFF."
-msgstr "\"%s\" je Å¡ifrirana zvoÄna datoteka. \n"
+msgstr ""
+"\"%s\" je Å¡ifrirana zvoÄna datoteka. \n"
"Te so znaÄilne za spletne trgovine z glasbo. \n"
"Audacity ne more odpreti te vrste datotek zaradi šifriranja.\n"
"Poskusite datoteko posneti v Audacity ali jo zapeÄi na zvoÄni CD,\n"
"sled CD pa nato prenesti v podprto vrsto zvoÄnih datotek, kot sta WAV in AIFF."
-#: import/Import.cpp:276
+#: import/Import.cpp:283
#, c-format
-msgid "\"%s\" is a RealPlayer media file. \n"
+msgid ""
+"\"%s\" is a RealPlayer media file. \n"
"Audacity cannot open this proprietary format. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr "\"%s\" je medijska datoteka RealPlayer. \n"
+msgstr ""
+"\"%s\" je medijska datoteka RealPlayer. \n"
"Audacity ne more odpreti tega licenÄnega zapisa.\n"
"Najprej ga morate pretvoriti v enega od podprtih zvoÄnih zapisov, kot sta WAV in AIFF."
-#: import/Import.cpp:282
+#: import/Import.cpp:289
#, c-format
-msgid "\"%s\" is a notes-based file, not an audio file. \n"
+msgid ""
+"\"%s\" is a notes-based file, not an audio file. \n"
"Audacity cannot open this type of file. \n"
"Try converting it to an audio file such as WAV or AIFF and \n"
"then import it, or record it into Audacity."
-msgstr "\"%s\" je datoteka z opombami in ne zvoÄna datoteka. \n"
+msgstr ""
+"\"%s\" je datoteka z opombami in ne zvoÄna datoteka. \n"
"Audacity ne more odpreti te vrste datotek.\n"
"Pretvoriti jo morate v podprto vrsto zvoÄnih datotek, kot sta WAV in AIFF \n"
"in jo nato uvozite, ali pa jo posnamite z Audacity."
-#: import/Import.cpp:288
+#: import/Import.cpp:295
#, c-format
-msgid "\"%s\" is a Musepack audio file. \n"
+msgid ""
+"\"%s\" is a Musepack audio file. \n"
"Audacity cannot open this type of file. \n"
"If you think it might be an mp3 file, rename it to end with \".mp3\" \n"
"and try importing it again. Otherwise you need to convert it to a supported audio \n"
"format, such as WAV or AIFF."
-msgstr "\"%s\" je zvoÄna datoteka Musepack. \n"
+msgstr ""
+"\"%s\" je zvoÄna datoteka Musepack. \n"
"Audacity te vrste datotek ne more odpreti.\n"
"Äe menite, da je to datoteka mp3, jo preimenujte in dodajte\n"
"konÄnico \".mp3\" ter ponovno poskusite uvoziti. Sicer jo morate pretvoriti\n"
"v podprti zvoÄni zapis, kot sta WAV in AIFF."
-#: import/Import.cpp:294
+#: import/Import.cpp:301
#, c-format
-msgid "\"%s\" is a Wavpack audio file. \n"
+msgid ""
+"\"%s\" is a Wavpack audio file. \n"
"Audacity cannot open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr "\"%s\" je zvoÄna datoteka Wavpack. \n"
+msgstr ""
+"\"%s\" je zvoÄna datoteka Wavpack. \n"
"Audacity ne more odpreti te vrste datotek.\n"
"Pretvoriti jo morate v podprto vrsto zvoÄnih datotek, kot sta WAV in AIFF."
-#: import/Import.cpp:300
+#: import/Import.cpp:307
#, c-format
-msgid "\"%s\" is a Dolby Digital audio file. \n"
+msgid ""
+"\"%s\" is a Dolby Digital audio file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr "\"%s\" je zvoÄna datoteka Dolby Digital. \n"
+msgstr ""
+"\"%s\" je zvoÄna datoteka Dolby Digital. \n"
"Audacity ne more odpreti te vrste datotek.\n"
"Pretvoriti jo morate v podprto vrsto zvoÄnih datotek, kot sta WAV in AIFF."
-#: import/Import.cpp:306
+#: import/Import.cpp:313
#, c-format
-msgid "\"%s\" is an Ogg Speex audio file. \n"
+msgid ""
+"\"%s\" is an Ogg Speex audio file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
-msgstr "\"%s\" je zvoÄna datoteka Ogg Speex. \n"
+msgstr ""
+"\"%s\" je zvoÄna datoteka Ogg Speex. \n"
"Audacity ne more odpreti te vrste datotek.\n"
"Pretvoriti jo morate v podprto vrsto zvoÄnih datotek, kot sta WAV in AIFF."
-#: import/Import.cpp:312
+#: import/Import.cpp:319
#, c-format
-msgid "\"%s\" is a video file. \n"
+msgid ""
+"\"%s\" is a video file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to extract the audio to a supported format, such as WAV or AIFF."
-msgstr "\"%s\" je video datoteka. \n"
+msgstr ""
+"\"%s\" je video datoteka. \n"
"Audacity trenutno ne more odpreti te vrste datotek.\n"
"Zvok morate izvoziti v podprto vrsto zvoÄnih datotek, kot sta WAV in AIFF."
-#: import/Import.cpp:317
+#: import/Import.cpp:324
#, c-format
-msgid "Audacity did not recognize the type of the file '%s'.\n"
+msgid ""
+"Audacity did not recognize the type of the file '%s'.\n"
"If it is uncompressed, try importing it using \"Import Raw\"."
-msgstr "Vrsta datoteke '%s' je Audacity neznana.\n"
+msgstr ""
+"Vrsta datoteke '%s' je Audacity neznana.\n"
"Äe ni stisnjena, jo poskusite uvoziti z \"Uvozi surove podatke\"."
-#: import/Import.cpp:322
+#: import/Import.cpp:329
#, c-format
-msgid "Audacity recognized the type of the file '%s',\n"
+msgid ""
+"Audacity recognized the type of the file '%s',\n"
"but was unable to import it."
-msgstr "Vrsta datoteke '%s' je Audacity znana,\n"
+msgstr ""
+"Vrsta datoteke '%s' je Audacity znana,\n"
"vendar je ni bilo mogoÄe uvoziti."
#: import/ImportFFmpeg.cpp:34
msgid "FFmpeg-compatible files"
msgstr "Z FFmpeg kompatibilne datoteke"
-#: import/ImportFFmpeg.cpp:431
+#: import/ImportFFmpeg.cpp:438
#, c-format
msgid "Index[%02x] Codec[%S], Language[%S], Bitrate[%S], Channels[%d], Duration[%d]"
-msgstr ""
+msgstr "Kazalo[%02x] kodek[%S], jezik[%S], bitnovzorÄenje[%S], kanali[%d], trajanje[%d]"
-#: import/ImportFLAC.cpp:43
+#: import/ImportFLAC.cpp:45
msgid "FLAC files"
msgstr "Datoteke FLAC"
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr "GStreamer - združljive datoteke"
+
#: import/ImportLOF.cpp:95
msgid "List of Files in basic text format"
msgstr "Seznam datotek v osnovnem zapisu besedila"
@@ -7506,82 +8054,82 @@ msgstr "Nepravilna glava bitnega toka Vorbis"
msgid "Internal logic fault"
msgstr "Notranja logiÄna napaka"
-#: import/ImportPCM.cpp:54
+#: import/ImportPCM.cpp:66
msgid "WAV, AIFF, and other uncompressed types"
msgstr "WAV, AIFF in druge nestisnjene vrste"
-#: import/ImportPlugin.h:142
-#: import/ImportRaw.cpp:203
+#: import/ImportPlugin.h:135
+#: import/ImportRaw.cpp:210
#, c-format
msgid "Importing %s"
msgstr "Uvažanje datoteke %s"
-#: import/ImportQT.cpp:21
+#: import/ImportQT.cpp:18
msgid "QuickTime files"
msgstr "Datoteke QuickTime"
-#: import/ImportRaw.cpp:205
+#: import/ImportRaw.cpp:212
msgid "Import Raw"
msgstr "Uvozi surove podatke"
-#: import/ImportRaw.cpp:282
+#: import/ImportRaw.cpp:292
msgid "Import Raw Data"
msgstr "Uvozi surove podatke"
#. i18n-hint: Refers to byte-order. Don't translate "endianness" if you don't
#. know the correct technical word.
-#: import/ImportRaw.cpp:327
+#: import/ImportRaw.cpp:337
msgid "No endianness"
msgstr "Brez endianstva"
#. i18n-hint: Refers to byte-order. Don't translate this if you don't
#. know the correct technical word.
-#: import/ImportRaw.cpp:330
+#: import/ImportRaw.cpp:340
msgid "Little-endian"
msgstr "little-endian"
#. i18n-hint: Refers to byte-order. Don't translate this if you don't
#. know the correct technical word.
-#: import/ImportRaw.cpp:333
+#: import/ImportRaw.cpp:343
msgid "Big-endian"
msgstr "veliki-endian"
#. i18n-hint: Refers to byte-order. Don't translate "endianness" if you don't
#. know the correct technical word.
-#: import/ImportRaw.cpp:336
+#: import/ImportRaw.cpp:346
msgid "Default endianness"
msgstr "Privzeto endianstvo"
-#: import/ImportRaw.cpp:355
+#: import/ImportRaw.cpp:365
msgid "1 Channel (Mono)"
msgstr "1 kanal (Mono)"
-#: import/ImportRaw.cpp:356
+#: import/ImportRaw.cpp:366
msgid "2 Channels (Stereo)"
msgstr "2 kanala (Stereo)"
-#: import/ImportRaw.cpp:358
+#: import/ImportRaw.cpp:368
#, c-format
msgid "%d Channels"
msgstr "%d kanalov"
-#: import/ImportRaw.cpp:369
+#: import/ImportRaw.cpp:379
msgid "Byte order:"
msgstr "Zaporedje bajtov:"
-#: import/ImportRaw.cpp:372
+#: import/ImportRaw.cpp:382
msgid "Channels:"
msgstr "Kanali:"
-#: import/ImportRaw.cpp:382
+#: import/ImportRaw.cpp:392
msgid "Start offset:"
msgstr "ZaÄetni odmik:"
-#: import/ImportRaw.cpp:388
+#: import/ImportRaw.cpp:398
msgid "Amount to import:"
msgstr "KoliÄina za uvoz:"
-#: import/ImportRaw.cpp:394
+#: import/ImportRaw.cpp:404
msgid "Sample rate:"
msgstr "Mera vzorÄenja:"
@@ -7598,1137 +8146,1248 @@ msgstr "Dekodiranje signalne oblike"
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr "%s dokonÄano %2.0f%%. Kliknite, Äe želite spremeniti žariÅ¡Äno toÄko opravila."
-#: prefs/AudioIOPrefs.cpp:41
-#: prefs/AudioIOPrefs.cpp:42
-#: prefs/MidiIOPrefs.cpp:44
-#: prefs/MidiIOPrefs.cpp:45
-msgid "Audio I/O"
-msgstr "ZvoÄni V/I"
+#: prefs/BatchPrefs.cpp:53
+msgid "Batch"
+msgstr "Paketni naÄin"
-#: prefs/AudioIOPrefs.cpp:102
-#: prefs/MidiIOPrefs.cpp:99
-msgid "1 (Mono)"
-msgstr "1 (mono)"
+#: prefs/BatchPrefs.cpp:75
+#: prefs/GUIPrefs.cpp:134
+#: prefs/TracksPrefs.cpp:99
+msgid "Behaviors"
+msgstr "Vedenja"
-#: prefs/AudioIOPrefs.cpp:103
-#: prefs/MidiIOPrefs.cpp:100
-msgid "2 (Stereo)"
-msgstr "2 (stereo)"
+#: prefs/BatchPrefs.cpp:78
+msgid "&Don't apply effects in batch mode"
+msgstr "&Ne uporabi uÄinkov v paketnem naÄinu"
-#: prefs/AudioIOPrefs.cpp:117
-#: prefs/MidiIOPrefs.cpp:114
-msgid "Playback"
-msgstr "Predvajanje"
+#: prefs/BatchPrefs.cpp:81
+#: prefs/GUIPrefs.cpp:147
+msgid "Cl&eanSpeech Mode (Customized GUI)"
+msgstr "NaÄin Po&ÄistiGovor (prilagojen vmesnik)"
-#: prefs/AudioIOPrefs.cpp:121
-#: prefs/AudioIOPrefs.cpp:139
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
+msgstr "Naprave"
+
+#: prefs/DevicePrefs.cpp:107
+#: prefs/GUIPrefs.cpp:32
+#: prefs/MidiIOPrefs.cpp:113
+msgid "Interface"
+msgstr "Vmesnik"
+
+#: prefs/DevicePrefs.cpp:112
#: prefs/MidiIOPrefs.cpp:118
-#: prefs/MidiIOPrefs.cpp:136
-#: toolbars/DeviceToolBar.cpp:57
-msgid "Device"
-msgstr "Naprava"
+msgid "Host"
+msgstr "Gostitelj"
-#: prefs/AudioIOPrefs.cpp:124
-#: prefs/MidiIOPrefs.cpp:121
+#: prefs/DevicePrefs.cpp:119
+#: prefs/MidiIOPrefs.cpp:125
msgid "Using:"
msgstr "Uporablja:"
-#: prefs/AudioIOPrefs.cpp:125
-#: prefs/MidiIOPrefs.cpp:122
-msgid "Portaudio v"
-msgstr "Portaudio razl"
-
-#: prefs/AudioIOPrefs.cpp:135
+#: prefs/DevicePrefs.cpp:126
#: prefs/MidiIOPrefs.cpp:132
+#: prefs/PlaybackPrefs.cpp:31
+msgid "Playback"
+msgstr "Predvajanje"
+
+#: prefs/DevicePrefs.cpp:139
+#: prefs/MidiIOPrefs.cpp:145
+#: prefs/RecordingPrefs.cpp:34
msgid "Recording"
msgstr "Snemanje"
-#: prefs/AudioIOPrefs.cpp:141
-#: prefs/MidiIOPrefs.cpp:138
+#: prefs/DevicePrefs.cpp:149
msgid "Channels"
msgstr "Kanali"
-#: prefs/AudioIOPrefs.cpp:147
-#: prefs/MidiIOPrefs.cpp:144
-msgid "Playthrough"
-msgstr "Predvajaj skozi"
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr "Prekrivaj: Predvajaj &druge posnetke med snemanjem novega"
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr "&Strojno predvajanje skozi: Predvajaj nov posnetek med njegovim snemanjem"
-
-#: prefs/AudioIOPrefs.cpp:154
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr "&Programsko predvajanje skozi: Predvajaj nov posnetek med njegovim snemanjem"
-
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr "&Programsko predvajanje skozi: Predvajaj nov posnetek med njegovim snemanjem ali preverjanjem"
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr "(ne oznaÄite, Äe snemate \"stereo miks\")"
-
-#: prefs/AudioIOPrefs.cpp:168
-#: prefs/MidiIOPrefs.cpp:193
-msgid "Effects Preview"
-msgstr "PredposluÅ¡anje uÄinkov"
-
-#: prefs/AudioIOPrefs.cpp:171
-msgid "Length of preview:"
-msgstr "Dolžina predposlušanja:"
-
-#: prefs/AudioIOPrefs.cpp:176
-#: prefs/MidiIOPrefs.cpp:157
-msgid "Cut Preview"
-msgstr "Predposlušanje izrezanega"
-
-#: prefs/AudioIOPrefs.cpp:179
-msgid "Preview before cut region:"
-msgstr "PredposluÅ¡aj pred izrezanim obmoÄjem:"
-
-#: prefs/AudioIOPrefs.cpp:181
-msgid "Preview after cut region:"
-msgstr "PredposluÅ¡aj po izrezanem obmoÄju:"
-
-#: prefs/AudioIOPrefs.cpp:189
-#: prefs/MidiIOPrefs.cpp:167
-msgid "Latency"
-msgstr "Latenca"
-
-#: prefs/AudioIOPrefs.cpp:195
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
-msgstr "Zvok v medpomnilnik\n"
-"(veÄje = veÄ latence)"
-
-#: prefs/AudioIOPrefs.cpp:198
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr "Popravek latence:\n"
-"(negativno = nazaj)"
-
-#: prefs/AudioIOPrefs.cpp:203
-msgid "Seek Time when playing"
-msgstr "PoiÅ¡Äi Äas med predvajanjem"
-
-#: prefs/AudioIOPrefs.cpp:206
-#: prefs/MidiIOPrefs.cpp:186
-msgid "Short period:"
-msgstr "Krajše obdobje:"
-
-#: prefs/AudioIOPrefs.cpp:208
-#: prefs/MidiIOPrefs.cpp:188
-msgid "Long period:"
-msgstr "Daljše obdobje:"
+#: prefs/DevicePrefs.cpp:165
+msgid "No audio interfaces"
+msgstr "Ni zvoÄnih vmesnikov"
-#: prefs/BatchPrefs.cpp:55
-#: prefs/BatchPrefs.cpp:56
-msgid "Batch"
-msgstr "Paketni naÄin"
-
-#: prefs/BatchPrefs.cpp:77
-#: prefs/GUIPrefs.cpp:92
-msgid "Behaviors"
-msgstr "Vedenja"
+#: prefs/DevicePrefs.cpp:201
+#: prefs/DevicePrefs.cpp:206
+#: prefs/MidiIOPrefs.cpp:295
+#: prefs/MidiIOPrefs.cpp:300
+msgid "No devices found"
+msgstr "Ni naprav"
-#: prefs/BatchPrefs.cpp:80
-msgid "&Don't apply effects in batch mode"
-msgstr "&Ne uporabi uÄinkov v paketnem naÄinu"
+#: prefs/DevicePrefs.cpp:264
+msgid "1 (Mono)"
+msgstr "1 (mono)"
-#: prefs/BatchPrefs.cpp:83
-#: prefs/GUIPrefs.cpp:132
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr "NaÄin Po&ÄistiGovor (prilagojen vmesnik)"
+#: prefs/DevicePrefs.cpp:267
+msgid "2 (Stereo)"
+msgstr "2 (stereo)"
-#: prefs/DirectoriesPrefs.cpp:55
-#: prefs/DirectoriesPrefs.cpp:56
-#: prefs/PrefsDialog.cpp:267
+#: prefs/DirectoriesPrefs.cpp:52
+#: prefs/PrefsDialog.cpp:210
msgid "Directories"
msgstr "Mape"
-#: prefs/DirectoriesPrefs.cpp:87
+#: prefs/DirectoriesPrefs.cpp:82
msgid "Temporary files directory"
msgstr "Mapa zaÄasnih datotek"
-#: prefs/DirectoriesPrefs.cpp:91
+#: prefs/DirectoriesPrefs.cpp:89
msgid "Location:"
msgstr "Kraj:"
-#: prefs/DirectoriesPrefs.cpp:93
+#: prefs/DirectoriesPrefs.cpp:96
msgid "Free Space:"
msgstr "Na voljo prostora:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr "Samodejno shrani"
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr "Samodejno shrani kopijo projekta v loÄeno mapo"
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
-msgstr "Samodejno shrani vsakih:"
+#: prefs/DirectoriesPrefs.cpp:103
+msgid "Audio cache"
+msgstr "ZvoÄni medpomnilnik"
#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
-msgstr "minut"
+msgid "Play and/or record using RAM (useful for slow drives)"
+msgstr "Predvajaj in/ali snemaj z rabo pomnilnika RAM (uporabno pri poÄasnih pogonih)"
-#: prefs/DirectoriesPrefs.cpp:110
-msgid "Audio cache"
-msgstr "ZvoÄni medpomnilnik"
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
+msgstr "Najmanj prostega pomnilnika (MB):"
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
-msgstr "Predvajaj in/ali snemaj z rabo pomnilnika RAM (uporabno pri poÄasnih pogonih, vendar lahko povzroÄi sesutje pri dolgih datotekah ali posnetkih)"
+#: prefs/DirectoriesPrefs.cpp:118
+msgid ""
+"If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
+msgstr ""
+"Äe sistemski pomnilnik, ki je na voljo, pade pod to vrednost, zvok ne bo\n"
+"veÄ medpomnjen v pomnilniku in bo zapisan na disk."
-#: prefs/DirectoriesPrefs.cpp:121
+#: prefs/DirectoriesPrefs.cpp:126
msgid "Choose a location to place the temporary directory"
msgstr "Izberite lokacijo, kjer bo zaÄasna mapa"
-#: prefs/DirectoriesPrefs.cpp:166
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr "ni na voljo - zgornje mesto ne obstaja"
+
+#: prefs/DirectoriesPrefs.cpp:173
#, c-format
msgid "Directory %s does not exist. Create it?"
msgstr "Mapa %s ne obstaja. Jo želite ustvariti?"
-#: prefs/DirectoriesPrefs.cpp:168
+#: prefs/DirectoriesPrefs.cpp:175
msgid "New Temporary Directory"
msgstr "Nova zaÄasna mapa"
-#: prefs/DirectoriesPrefs.cpp:187
+#: prefs/DirectoriesPrefs.cpp:193
#, c-format
msgid "Directory %s is not writable"
msgstr "V mapi %s zapisovanje ni dovoljeno"
-#: prefs/DirectoriesPrefs.cpp:199
+#: prefs/DirectoriesPrefs.cpp:207
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "Spremembe v zaÄasni mapi ne bodo delovale do naslednjega zagona Audacityja."
-#: prefs/FileFormatPrefs.cpp:53
-#: prefs/FileFormatPrefs.cpp:54
-msgid "Import / Export"
-msgstr "Uvozi / Izvozi"
-
-#: prefs/FileFormatPrefs.cpp:84
-msgid "MP3 Export Library"
-msgstr "Knjižnica za izvoz MP3"
-
-#: prefs/FileFormatPrefs.cpp:87
-msgid "MP3 Library Version:"
-msgstr "RazliÄica knjižnice MP3:"
-
-#: prefs/FileFormatPrefs.cpp:93
-msgid "MP3 Library:"
-msgstr "Knjižnica MP3:"
-
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:98
-msgid "LAME MP3 Library:"
-msgstr "Knjižnica LAME MP3:"
-
-#: prefs/FileFormatPrefs.cpp:101
-#: prefs/FileFormatPrefs.cpp:125
-msgid "&Download"
-msgstr "&Prenesi"
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
-msgstr "Knjižnica za uvoz/izvoz FFmpeg"
-
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
-msgstr "RazliÄica knjižnice FFmpeg:"
-
-#: prefs/FileFormatPrefs.cpp:118
-#: prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
-msgstr "Knjižnica FFmpeg:"
-
-#: prefs/FileFormatPrefs.cpp:136
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr "Opomba: Možnosti kakovosti izvoza lahko izberete s klikom gumba Možnosti v pogovornem oknu Izvozi.\n"
-
-#: prefs/FileFormatPrefs.cpp:137
-msgid "When importing audio files"
-msgstr "Pri uvozu zvoÄnih datotek"
-
-#: prefs/FileFormatPrefs.cpp:140
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
-msgstr "&Naredi kopijo nestisnjenih zvoÄnih datotek pred urejanjem (varneje)"
-
-#: prefs/FileFormatPrefs.cpp:141
-msgid "&Read uncompressed audio files directly from the original (faster)"
-msgstr "&Beri nestisnjene zvoÄne datoteke neposredno iz izvirnika (hitreje)"
-
-#: prefs/FileFormatPrefs.cpp:143
-msgid "&Normalize all tracks in project"
-msgstr "&Normaliziraj vse sledi projekta"
+#: prefs/GUIPrefs.cpp:51
+msgid "In Browser"
+msgstr "V brskalniku"
-#: prefs/FileFormatPrefs.cpp:148
-msgid "When saving a project that depends on other audio files"
-msgstr "Pri shranjevanju projekta, ki je odvisen od drugih zvoÄnih datotek"
+#: prefs/GUIPrefs.cpp:52
+msgid "From Internet"
+msgstr "S spleta"
-#: prefs/FileFormatPrefs.cpp:151
-msgid "Always © all audio into project (safest)"
-msgstr "Vedno &kopiraj vse zvoke v projekt (najvarneje)"
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
+msgstr "36"
-#: prefs/FileFormatPrefs.cpp:152
-msgid "&Do not copy any audio"
-msgstr "&Ne kopiraj nobenega zvoka"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
+msgstr "48"
-#: prefs/FileFormatPrefs.cpp:153
-msgid "&Ask user"
-msgstr "Vprašaj &uporabnika"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
+msgstr "60"
-#: prefs/FileFormatPrefs.cpp:157
-msgid "When exporting tracks to an audio file"
-msgstr "Pri izvozu sledi v zvoÄno datoteko"
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
+msgstr "96"
-#: prefs/FileFormatPrefs.cpp:160
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
-msgstr "Vedno &mešaj vse sledi na stereo ali mono kanal(a)."
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
+msgstr "120"
-#: prefs/FileFormatPrefs.cpp:161
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
-msgstr "&Uporabi meÅ¡anje po meri (npr. za izvoz veÄkanalne datoteke 5.1)"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
+msgstr "145"
-#: prefs/FileFormatPrefs.cpp:163
-msgid "S&how Metadata Editor prior to export step"
-msgstr "Poka&ži urejevalnik metapodatkov pred korakom izvoza"
+#: prefs/GUIPrefs.cpp:61
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 dB (plitek obseg za visoko-amplitudno urejanje)"
-#: prefs/GUIPrefs.cpp:34
-#: prefs/GUIPrefs.cpp:35
-msgid "Interface"
-msgstr "Vmesnik"
+#: prefs/GUIPrefs.cpp:62
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 dB (obseg PCM za 8-bitno vzorÄenje)"
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
-msgstr "V brskalniku"
+#: prefs/GUIPrefs.cpp:63
+msgid "-60 dB (PCM range of 10 bit samples)"
+msgstr "-60 dB (obseg PCM za 10-bitno vzorÄenje)"
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
-msgstr "S spleta"
+#: prefs/GUIPrefs.cpp:64
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 dB (obseg PCM za 16-bitno vzorÄenje)"
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
-msgstr "Enostavno"
+#: prefs/GUIPrefs.cpp:65
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 dB (približna meja ÄloveÅ¡kega sluha)"
-#: prefs/GUIPrefs.cpp:94
-msgid "&Update display while playing"
-msgstr "&Posodobi zaslon med predvajanjem"
+#: prefs/GUIPrefs.cpp:66
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB (meja PCM za 24-bitno vzorÄenje)"
#: prefs/GUIPrefs.cpp:96
-msgid "Cl&osing last window quits Audacity"
-msgstr "Za&prtje zadnjega okna povsem zapre Audacity"
+#: prefs/SpectrumPrefs.cpp:129
+#: prefs/TracksPrefs.cpp:75
+msgid "Display"
+msgstr "Prikaz"
#: prefs/GUIPrefs.cpp:98
-msgid "Enable &dragging of left and right selection edges"
-msgstr "OmogoÄi &vleko levega in desnega roba izbora"
-
-#: prefs/GUIPrefs.cpp:100
msgid "Er&gonomic order of audio I/O buttons"
msgstr "Er&gonomski razpored gumbov zvoÄnega V/I"
-#: prefs/GUIPrefs.cpp:102
-msgid "Automatically &fit tracks vertically zoomed"
-msgstr "Samodejno &umeri sledi na navpiÄno poveÄavo"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
+msgstr "Poka&ži pozdravno sporoÄilo ob zagonu programa"
-#: prefs/GUIPrefs.cpp:104
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
-msgstr "\"Premakni pozornost po sledeh\" &cikliÄno kroži po sledeh"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
+msgstr "Obseg dB merilnika/signalnih oblik:"
-#: prefs/GUIPrefs.cpp:106
-msgid "Editing a &clip can move other clips"
-msgstr "Urejanje &posnetka lahko premakne druge posnetke"
+#: prefs/GUIPrefs.cpp:123
+msgid "Help:"
+msgstr "PomoÄ:"
-#: prefs/GUIPrefs.cpp:108
-msgid "&Select all audio in project, if none selected"
-msgstr "&Äe ni niÄ izbrano, izberi vse zvoke projekta."
+#: prefs/GUIPrefs.cpp:136
+msgid "Cl&osing last window quits Audacity"
+msgstr "Za&prtje zadnjega okna povsem zapre Audacity"
-#: prefs/GUIPrefs.cpp:110
+#: prefs/GUIPrefs.cpp:139
msgid "&Beep on completion of longer activities"
msgstr "&Zapiskaj ob zakljuÄku daljÅ¡ih operacij"
-#: prefs/GUIPrefs.cpp:114
-msgid "Show / Hide"
-msgstr "Pokaži / Skrij"
-
-#: prefs/GUIPrefs.cpp:116
-msgid "Enable cut &lines"
-msgstr "OmogoÄi &Ärte rezov"
-
-#: prefs/GUIPrefs.cpp:118
-msgid "Show warnings about &temp files"
-msgstr "Pokaži opozorila o &zaÄasnih datotekah"
-
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
-msgstr "&VpraÅ¡aj za shranjevanje, tudi Äe je projekt prazen"
-
-#: prefs/GUIPrefs.cpp:122
-msgid "Show &Welcome Message at program start up"
-msgstr "Poka&ži pozdravno sporoÄilo ob zagonu programa"
-
-#: prefs/GUIPrefs.cpp:126
+#: prefs/GUIPrefs.cpp:145
msgid "Modes"
msgstr "NaÄini"
-#: prefs/GUIPrefs.cpp:129
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
+msgstr "Pokaži uÄinke VST v naÄinu up. vmesnika"
+
+#: prefs/GUIPrefs.cpp:156
msgid "Don't a&pply effects in batch mode"
msgstr "Ne &uporabi uÄinkov v paketnem naÄinu"
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
-msgstr "Prikaži najmanjši obseg: merilniki in 'Oblika signala (dB)'"
-
-#: prefs/GUIPrefs.cpp:141
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 dB (plitek obseg za visoko-amplitudno urejanje)"
+#: prefs/ImportExportPrefs.cpp:28
+msgid "Import / Export"
+msgstr "Uvozi / Izvozi"
-#: prefs/GUIPrefs.cpp:142
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 dB (obseg PCM za 8-bitno vzorÄenje)"
+#: prefs/ImportExportPrefs.cpp:53
+msgid "When importing audio files"
+msgstr "Pri uvozu zvoÄnih datotek"
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
-msgstr "-60 dB (obseg PCM za 10-bitno vzorÄenje)"
+#: prefs/ImportExportPrefs.cpp:57
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
+msgstr "&Naredi kopijo nestisnjenih zvoÄnih datotek pred urejanjem (varneje)"
-#: prefs/GUIPrefs.cpp:144
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 dB (obseg PCM za 16-bitno vzorÄenje)"
+#: prefs/ImportExportPrefs.cpp:59
+msgid "&Read uncompressed audio files directly from the original (faster)"
+msgstr "&Beri nestisnjene zvoÄne datoteke neposredno iz izvirnika (hitreje)"
-#: prefs/GUIPrefs.cpp:145
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 dB (približna meja ÄloveÅ¡kega sluha)"
+#: prefs/ImportExportPrefs.cpp:64
+msgid "&Normalize all tracks in project"
+msgstr "&Normaliziraj vse sledi projekta"
-#: prefs/GUIPrefs.cpp:146
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB (meja PCM za 24-bitno vzorÄenje)"
+#: prefs/ImportExportPrefs.cpp:70
+msgid "When exporting tracks to an audio file"
+msgstr "Pri izvozu sledi v zvoÄno datoteko"
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
-msgstr "Privzeta vrsta pogleda"
+#: prefs/ImportExportPrefs.cpp:74
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+msgstr "Vedno &mešaj vse sledi na stereo ali mono kanal(a)."
-#: prefs/GUIPrefs.cpp:164
-msgid "Other interface choices"
-msgstr "Druge izbire vmesnika"
+#: prefs/ImportExportPrefs.cpp:76
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+msgstr "&Uporabi meÅ¡anje po meri (npr. za izvoz veÄkanalne datoteke 5.1)"
-#: prefs/GUIPrefs.cpp:167
-msgid "Help:"
-msgstr "PomoÄ:"
+#: prefs/ImportExportPrefs.cpp:81
+msgid "S&how Metadata Editor prior to export step"
+msgstr "Poka&ži urejevalnik metapodatkov pred korakom izvoza"
-#: prefs/GUIPrefs.cpp:168
-msgid "Solo Button:"
-msgstr "Gumb Solo:"
+#: prefs/ImportExportPrefs.cpp:84
+msgid ""
+"Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
+msgstr ""
+"Opomba: Možnosti kakovosti izvoza lahko izberete s klikom gumba\n"
+"Možnosti v pogovornem oknu Izvozi."
-#: prefs/KeyConfigPrefs.cpp:64
-#: prefs/KeyConfigPrefs.cpp:65
+#: prefs/KeyConfigPrefs.cpp:72
msgid "Keyboard"
msgstr "Tipkovnica"
-#: prefs/KeyConfigPrefs.cpp:86
+#: prefs/KeyConfigPrefs.cpp:96
msgid "Keyboard preferences currently unavailable."
-msgstr ""
+msgstr "Osebne nastavitve tipkovnice trenutno niso na voljo."
-#: prefs/KeyConfigPrefs.cpp:87
+#: prefs/KeyConfigPrefs.cpp:97
msgid "Open a new project to modify keyboard shortcuts."
-msgstr ""
+msgstr "Äe želite spremeniti tipke za bližnjice, odprite nov projekt."
+
+#: prefs/KeyConfigPrefs.cpp:108
+#: prefs/KeyConfigPrefs.cpp:224
+msgid "All"
+msgstr "Vse"
-#: prefs/KeyConfigPrefs.cpp:95
+#: prefs/KeyConfigPrefs.cpp:124
msgid "Key Bindings"
msgstr "Tipke za bližnjice"
-#: prefs/KeyConfigPrefs.cpp:115
+#: prefs/KeyConfigPrefs.cpp:129
+msgid "Category:"
+msgstr "Kategorija:"
+
+#: prefs/KeyConfigPrefs.cpp:156
msgid "S&et"
msgstr "N&astavi"
-#: prefs/KeyConfigPrefs.cpp:120
+#: prefs/KeyConfigPrefs.cpp:157
+#: widgets/FileHistory.cpp:174
+msgid "&Clear"
+msgstr "Po&Äisti"
+
+#: prefs/KeyConfigPrefs.cpp:162
msgid "Note: Pressing Cmd+Q will quit. All other keys are valid."
msgstr "Opomba: s pritiskom na Cmd+Q konÄate delo s programom. Vse druge tipke so veljavne."
-#: prefs/KeyConfigPrefs.cpp:124
-#: prefs/ThemePrefs.cpp:105
+#: prefs/KeyConfigPrefs.cpp:169
+#: prefs/ThemePrefs.cpp:125
msgid "&Defaults"
msgstr "&Privzeto"
-#: prefs/KeyConfigPrefs.cpp:143
+#: prefs/KeyConfigPrefs.cpp:181
msgid "Key Combination"
msgstr "Kombinacija tipk"
-#: prefs/KeyConfigPrefs.cpp:163
-msgid "Export Keyboard Shortcuts As:"
-msgstr "Izvozi bližnjice kot:"
+#: prefs/KeyConfigPrefs.cpp:234
+#: toolbars/EditToolBar.cpp:143
+#: toolbars/EditToolBar.cpp:195
+msgid "Undo"
+msgstr "Razveljavi"
-#: prefs/KeyConfigPrefs.cpp:183
-msgid "Error saving keyboard shortcuts"
-msgstr "Napaka pri shranjevanju bližnjic"
+#: prefs/KeyConfigPrefs.cpp:237
+#: toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr "Ponovi"
-#: prefs/KeyConfigPrefs.cpp:198
+#: prefs/KeyConfigPrefs.cpp:263
msgid "Select an XML file containing Audacity keyboard shortcuts..."
msgstr "Izberite datoteko XML z bližnjicami Audacity ..."
-#: prefs/KeyConfigPrefs.cpp:215
+#: prefs/KeyConfigPrefs.cpp:281
msgid "Error loading keyboard shortcuts"
msgstr "Napaka pri nalaganju bližnjic"
-#: prefs/KeyConfigPrefs.cpp:243
+#: prefs/KeyConfigPrefs.cpp:294
+msgid "Export Keyboard Shortcuts As:"
+msgstr "Izvozi bližnjice kot:"
+
+#: prefs/KeyConfigPrefs.cpp:320
+msgid "Error saving keyboard shortcuts"
+msgstr "Napaka pri shranjevanju bližnjic"
+
+#: prefs/KeyConfigPrefs.cpp:368
#, c-format
-msgid "The keyboard shortcut '%s' is already assigned to:\n"
+msgid ""
+"The keyboard shortcut '%s' is already assigned to:\n"
"\n"
"'%s'"
-msgstr "Tipka za bližnjico '%s' je že dodeljena k:\n"
+msgstr ""
+"Tipka za bližnjico '%s' je že dodeljena k:\n"
"\n"
"'%s'"
-#: prefs/KeyConfigPrefs.cpp:369
-#: toolbars/EditToolBar.cpp:144
-msgid "Undo"
-msgstr "Razveljavi"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr "Knjižnice"
+
+#: prefs/LibraryPrefs.cpp:79
+msgid "MP3 Export Library"
+msgstr "Knjižnica za izvoz MP3"
+
+#: prefs/LibraryPrefs.cpp:83
+msgid "MP3 Library Version:"
+msgstr "RazliÄica knjižnice MP3:"
+
+#: prefs/LibraryPrefs.cpp:89
+msgid "MP3 Library:"
+msgstr "Knjižnica MP3:"
+
+#: prefs/LibraryPrefs.cpp:92
+#: prefs/LibraryPrefs.cpp:124
+msgid "&Locate..."
+msgstr "Po&iÅ¡Äi ..."
+
+#: prefs/LibraryPrefs.cpp:94
+msgid "LAME MP3 Library:"
+msgstr "Knjižnica LAME MP3:"
+
+#: prefs/LibraryPrefs.cpp:97
+#: prefs/LibraryPrefs.cpp:130
+msgid "&Download"
+msgstr "&Prenesi"
+
+#: prefs/LibraryPrefs.cpp:104
+msgid "FFmpeg Import/Export Library"
+msgstr "Knjižnica za uvoz/izvoz FFmpeg"
+
+#: prefs/LibraryPrefs.cpp:108
+msgid "FFmpeg Library Version:"
+msgstr "RazliÄica knjižnice FFmpeg:"
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr "Združljive knjižnice FFmpeg ni mogoÄe najti"
+
+#: prefs/LibraryPrefs.cpp:120
+#: prefs/LibraryPrefs.cpp:126
+msgid "FFmpeg Library:"
+msgstr "Knjižnica FFmpeg:"
-#: prefs/MidiIOPrefs.cpp:146
+#: prefs/MidiIOPrefs.cpp:58
+msgid "MIDI Devices"
+msgstr "Naprave MIDI"
+
+#: prefs/MidiIOPrefs.cpp:168
+#: prefs/RecordingPrefs.cpp:60
+msgid "Playthrough"
+msgstr "Predvajaj skozi"
+
+#: prefs/MidiIOPrefs.cpp:170
msgid "&Play other tracks while recording new one"
msgstr "Predvajaj &druge posnetke med snemanjem novega"
-#: prefs/MidiIOPrefs.cpp:149
+#: prefs/MidiIOPrefs.cpp:173
msgid "&Hardware Playthrough (Play new track while recording it)"
msgstr "&Strojno predvajanje skozi (predvajaj nov posnetek med njegovim snemanjem)"
-#: prefs/MidiIOPrefs.cpp:152
+#: prefs/MidiIOPrefs.cpp:176
msgid "&Software Playthrough (Play new track while recording it)"
msgstr "&Programsko predvajanje skozi (predvajaj nov posnetek med njegovim snemanjem)"
-#: prefs/MidiIOPrefs.cpp:160
+#: prefs/MidiIOPrefs.cpp:181
+#: prefs/PlaybackPrefs.cpp:72
+msgid "Cut Preview"
+msgstr "Predposlušanje izrezanega"
+
+#: prefs/MidiIOPrefs.cpp:184
msgid "Play before cut region:"
msgstr "Predvajaj pred izrezanim obmoÄjem:"
-#: prefs/MidiIOPrefs.cpp:162
+#: prefs/MidiIOPrefs.cpp:186
msgid "Play after cut region:"
msgstr "Predvajaj po izrezanem obmoÄju:"
-#: prefs/MidiIOPrefs.cpp:173
+#: prefs/MidiIOPrefs.cpp:191
+#: prefs/RecordingPrefs.cpp:79
+msgid "Latency"
+msgstr "Latenca"
+
+#: prefs/MidiIOPrefs.cpp:196
+#: prefs/RecordingPrefs.cpp:85
msgid "Audio to buffer:"
msgstr "Zvok v medpomnilnik:"
-#: prefs/MidiIOPrefs.cpp:176
+#: prefs/MidiIOPrefs.cpp:198
+#: prefs/RecordingPrefs.cpp:92
msgid "Latency correction:"
msgstr "Popravek latence:"
-#: prefs/MidiIOPrefs.cpp:183
+#: prefs/MidiIOPrefs.cpp:205
msgid "Seek Time"
msgstr "PoiÅ¡Äi Äas"
-#: prefs/MidiIOPrefs.cpp:196
+#: prefs/MidiIOPrefs.cpp:208
+#: prefs/PlaybackPrefs.cpp:98
+msgid "Short period:"
+msgstr "Krajše obdobje:"
+
+#: prefs/MidiIOPrefs.cpp:210
+#: prefs/PlaybackPrefs.cpp:105
+msgid "Long period:"
+msgstr "Daljše obdobje:"
+
+#: prefs/MidiIOPrefs.cpp:215
+#: prefs/PlaybackPrefs.cpp:57
+msgid "Effects Preview"
+msgstr "PredposluÅ¡anje uÄinkov"
+
+#: prefs/MidiIOPrefs.cpp:218
msgid "Play when previewing:"
msgstr "Predvajaj pri predposlušanju:"
-#: prefs/MousePrefs.cpp:55
-#: prefs/MousePrefs.cpp:56
+#: prefs/MidiIOPrefs.cpp:256
+msgid "No MIDI interfaces"
+msgstr "Ni vmesnikov MIDI"
+
+#: prefs/MousePrefs.cpp:57
msgid "Mouse"
msgstr "Miška"
-#: prefs/MousePrefs.cpp:78
+#: prefs/MousePrefs.cpp:84
msgid "Mouse Bindings (default values, not configurable)"
msgstr "Dejanja miške (privzete vrednosti, niso nastavljive)"
-#: prefs/MousePrefs.cpp:93
+#: prefs/MousePrefs.cpp:97
msgid "Tool"
msgstr "Orodje"
-#: prefs/MousePrefs.cpp:94
+#: prefs/MousePrefs.cpp:98
msgid "Command Action"
msgstr "Akcija ukaza"
-#: prefs/MousePrefs.cpp:95
+#: prefs/MousePrefs.cpp:99
msgid "Buttons"
msgstr "Gumbi"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:117
-#: prefs/MousePrefs.cpp:122
+#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:121
+#: prefs/MousePrefs.cpp:126
msgid "Left-Click"
msgstr "Levi klik"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:100
-#: prefs/MousePrefs.cpp:101
#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:103
+#: prefs/MousePrefs.cpp:104
+#: prefs/MousePrefs.cpp:105
+#: prefs/MousePrefs.cpp:106
msgid "Select"
msgstr "Izberi"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:122
+#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:126
msgid "Set Selection Point"
msgstr "Nastavi toÄko izbora"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:103
+#: prefs/MousePrefs.cpp:109
#: prefs/MousePrefs.cpp:115
#: prefs/MousePrefs.cpp:119
#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:127
msgid "Left-Drag"
msgstr "Levi povlek"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:103
+#: prefs/MousePrefs.cpp:127
msgid "Set Selection Range"
msgstr "Nastavi obseg izbora"
-#: prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:104
msgid "Extend Selection Range"
msgstr "Razpostri razpon izbora"
-#: prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:104
msgid "Shift-Left-Click"
msgstr "Shift-levi-klik"
-#: prefs/MousePrefs.cpp:101
+#: prefs/MousePrefs.cpp:105
msgid "Left-Double-Click"
msgstr "Levi dvoklik"
-#: prefs/MousePrefs.cpp:101
+#: prefs/MousePrefs.cpp:105
msgid "Select Clip or Entire Track"
msgstr "Izberite posnetek ali celotno sled"
-#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:106
msgid "Ctrl-Left-Click"
msgstr "Ctrl-levi-klik"
-#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:106
msgid "Set Selection Point and Play"
msgstr "Nastavi toÄko izbora in predvajaj"
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:107
#: prefs/MousePrefs.cpp:108
#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:110
+#: prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:112
+#: prefs/MousePrefs.cpp:113
msgid "Zoom"
msgstr "PoveÄava"
-#: prefs/MousePrefs.cpp:104
+#: prefs/MousePrefs.cpp:108
msgid "Zoom in on Point"
msgstr "PoveÄaj na toÄko"
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:129
msgid "Zoom in on a Range"
msgstr "PoveÄaj na obmoÄje"
-#: prefs/MousePrefs.cpp:105
+#: prefs/MousePrefs.cpp:109
msgid "same as right-drag"
msgstr "enako kot desni-povlek"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:110
+#: prefs/MousePrefs.cpp:128
msgid "Right-Click"
msgstr "Desni klik"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:110
+#: prefs/MousePrefs.cpp:128
msgid "Zoom out one step"
msgstr "Pomanjšaj za eno stopnjo"
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:129
msgid "Right-Drag"
msgstr "Desni-povlek"
-#: prefs/MousePrefs.cpp:107
+#: prefs/MousePrefs.cpp:111
msgid "same as left-drag"
msgstr "enako kot levi-povlek"
-#: prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:112
msgid "Shift-Drag"
msgstr "Shift-povlek"
-#: prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:112
msgid "Zoom out on a Range"
msgstr "PomanjÅ¡aj z obmoÄja"
-#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:113
msgid "Middle-Click"
msgstr "Srednji klik"
-#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:113
msgid "Zoom default"
msgstr "Privzeti zoom"
-#: prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:115
msgid "Time shift clip or move up/down between tracks"
msgstr "Äasovno zamakni posnetek ali se pomakni gor/dol med sledmi"
-#: prefs/MousePrefs.cpp:112
+#: prefs/MousePrefs.cpp:116
msgid "Shift-Left-Drag"
msgstr "Shift-levi-povlek"
-#: prefs/MousePrefs.cpp:112
+#: prefs/MousePrefs.cpp:116
msgid "Time shift all clips in track"
msgstr "Äasovno zamakni vse posnetke na sledi"
-#: prefs/MousePrefs.cpp:113
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:117
+#: prefs/MousePrefs.cpp:124
msgid "Ctrl-Left-Drag"
msgstr "Ctrl-levi-povlek"
-#: prefs/MousePrefs.cpp:113
+#: prefs/MousePrefs.cpp:117
msgid "Move clip up/down between tracks"
msgstr "Premakni posnetek gor/dol med sledmi"
-#: prefs/MousePrefs.cpp:115
+#: prefs/MousePrefs.cpp:119
msgid "Change Amplification Envelope"
msgstr "Spremeni ojaÄevalno ovojnico"
-#: prefs/MousePrefs.cpp:117
+#: prefs/MousePrefs.cpp:121
msgid "Change Sample"
msgstr "Spremeni vzorec"
-#: prefs/MousePrefs.cpp:117
-#: prefs/MousePrefs.cpp:118
-#: prefs/MousePrefs.cpp:119
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:121
+#: prefs/MousePrefs.cpp:122
+#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:124
msgid "Pencil"
msgstr "Pisalo"
-#: prefs/MousePrefs.cpp:118
+#: prefs/MousePrefs.cpp:122
msgid "Alt-Left-Click"
msgstr "Alt-levi-klik"
-#: prefs/MousePrefs.cpp:118
+#: prefs/MousePrefs.cpp:122
msgid "Smooth at Sample"
msgstr "Zgladi pri vzorcu"
-#: prefs/MousePrefs.cpp:119
+#: prefs/MousePrefs.cpp:123
msgid "Change Several Samples"
msgstr "Spremeni veÄ vzorcev"
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:124
msgid "Change ONE Sample only"
msgstr "Spremeni samo EN vzorec"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
-#: prefs/MousePrefs.cpp:124
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:126
+#: prefs/MousePrefs.cpp:127
+#: prefs/MousePrefs.cpp:128
+#: prefs/MousePrefs.cpp:129
msgid "Multi"
msgstr "VeÄkratno"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:126
+#: prefs/MousePrefs.cpp:127
msgid "same as select tool"
msgstr "enako kot orodje za izbiranje"
-#: prefs/MousePrefs.cpp:124
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:128
+#: prefs/MousePrefs.cpp:129
msgid "same as zoom tool"
msgstr "enako kot orodje za poveÄavo"
-#: prefs/MousePrefs.cpp:127
-#: prefs/MousePrefs.cpp:128
-#: prefs/MousePrefs.cpp:129
+#: prefs/MousePrefs.cpp:131
+#: prefs/MousePrefs.cpp:132
+#: prefs/MousePrefs.cpp:133
msgid "Any"
msgstr "Kar koli"
-#: prefs/MousePrefs.cpp:127
+#: prefs/MousePrefs.cpp:131
msgid "Scroll up or down"
msgstr "Drsnik gor ali dol"
-#: prefs/MousePrefs.cpp:127
+#: prefs/MousePrefs.cpp:131
msgid "Wheel-Rotate"
msgstr "Rotacija koleÅ¡Äka"
-#: prefs/MousePrefs.cpp:128
+#: prefs/MousePrefs.cpp:132
msgid "Scroll left or right"
msgstr "Drsnik levo ali desno"
-#: prefs/MousePrefs.cpp:128
+#: prefs/MousePrefs.cpp:132
msgid "Shift-Wheel-Rotate"
msgstr "Shift-rotacija koleÅ¡Äka"
-#: prefs/MousePrefs.cpp:129
+#: prefs/MousePrefs.cpp:133
msgid "Ctrl-Wheel-Rotate"
msgstr "Ctrl-rotacija koleÅ¡Äka"
-#: prefs/MousePrefs.cpp:129
+#: prefs/MousePrefs.cpp:133
msgid "Zoom in or out"
msgstr "PoveÄaj ali pomanjÅ¡aj"
-#: prefs/PrefsDialog.cpp:94
+#: prefs/PlaybackPrefs.cpp:61
+msgid "Length of preview:"
+msgstr "Dolžina predposlušanja:"
+
+#: prefs/PlaybackPrefs.cpp:76
+msgid "Preview before cut region:"
+msgstr "PredposluÅ¡aj pred izrezanim obmoÄjem:"
+
+#: prefs/PlaybackPrefs.cpp:83
+msgid "Preview after cut region:"
+msgstr "PredposluÅ¡aj po izrezanem obmoÄju:"
+
+#: prefs/PlaybackPrefs.cpp:94
+msgid "Seek Time when playing"
+msgstr "PoiÅ¡Äi Äas med predvajanjem"
+
+#: prefs/PrefsDialog.cpp:72
msgid "Audacity Preferences"
msgstr "Nastavitve Audacity"
-#: prefs/QualityPrefs.cpp:73
+#: prefs/ProjectsPrefs.cpp:32
+msgid "Projects"
+msgstr "Projekti"
+
+#: prefs/ProjectsPrefs.cpp:59
+msgid "When saving a project that depends on other audio files"
+msgstr "Pri shranjevanju projekta, ki je odvisen od drugih zvoÄnih datotek"
+
+#: prefs/ProjectsPrefs.cpp:63
+msgid "Always © all audio into project (safest)"
+msgstr "Vedno &kopiraj vse zvoke v projekt (najvarneje)"
+
+#: prefs/ProjectsPrefs.cpp:65
+msgid "&Do not copy any audio"
+msgstr "&Ne kopiraj nobenega zvoka"
+
+#: prefs/ProjectsPrefs.cpp:67
+msgid "&Ask user"
+msgstr "Vprašaj &uporabnika"
+
+#: prefs/ProjectsPrefs.cpp:74
+msgid "Auto save"
+msgstr "Samodejno shrani"
+
+#: prefs/ProjectsPrefs.cpp:76
+msgid "Auto save a copy of the project in a separate folder"
+msgstr "Samodejno shrani kopijo projekta v loÄeno mapo"
+
+#: prefs/ProjectsPrefs.cpp:82
+msgid "Auto save interval:"
+msgstr "Samodejno shrani vsakih:"
+
+#: prefs/ProjectsPrefs.cpp:86
+#: prefs/ProjectsPrefs.cpp:87
+msgid "minutes"
+msgstr "minut"
+
+#: prefs/QualityPrefs.cpp:75
msgid "Rectangle"
msgstr "Pravokotnik"
-#: prefs/QualityPrefs.cpp:74
+#: prefs/QualityPrefs.cpp:76
msgid "Triangle"
msgstr "Trikotnik"
-#: prefs/QualityPrefs.cpp:75
+#: prefs/QualityPrefs.cpp:77
msgid "Shaped"
msgstr "Oblikovano"
-#: prefs/QualityPrefs.cpp:122
+#: prefs/QualityPrefs.cpp:125
msgid "Sampling"
msgstr "VzorÄenje"
-#: prefs/QualityPrefs.cpp:125
+#: prefs/QualityPrefs.cpp:129
msgid "Default Sample Rate:"
msgstr "Privzeta mera vzorÄenja:"
-#: prefs/QualityPrefs.cpp:127
+#: prefs/QualityPrefs.cpp:154
msgid "Default Sample Format:"
msgstr "Privzeta oblika vzorca:"
-#: prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "Pretvornik mere vzorÄenja v realnem Äasu:"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr "Pretvorba v resniÄnem Äasu"
-#: prefs/QualityPrefs.cpp:139
-msgid "High-quality sample rate converter:"
-msgstr "Visokokakovostni pretvornik mere vzorÄenja:"
+#: prefs/QualityPrefs.cpp:171
+#: prefs/QualityPrefs.cpp:193
+msgid "Sample Rate Converter:"
+msgstr "Pretvornik frekvence vzorÄenja:"
-#: prefs/QualityPrefs.cpp:142
-msgid "Real-time dither:"
-msgstr "Trepet v realnem Äasu:"
+#: prefs/QualityPrefs.cpp:178
+#: prefs/QualityPrefs.cpp:200
+msgid "Dither"
+msgstr "Trepet"
-#: prefs/QualityPrefs.cpp:145
-msgid "High-quality dither:"
-msgstr "Visokokakovostni trepet:"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr "Viskokakovostna pretvorba"
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
-msgstr "Pretvorba"
+#: prefs/RecordingPrefs.cpp:62
+msgid "Overdub: &Play other tracks while recording new one"
+msgstr "Prekrivaj: Predvajaj &druge posnetke med snemanjem novega"
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
-msgstr "Pretvornik frekvence vzorÄenja"
+#: prefs/RecordingPrefs.cpp:66
+msgid "&Hardware Playthrough: Play new track while recording it"
+msgstr "&Strojno predvajanje skozi: Predvajaj nov posnetek med njegovim snemanjem"
-#: prefs/QualityPrefs.cpp:164
-msgid "Dither"
-msgstr "Trepet"
+#: prefs/RecordingPrefs.cpp:70
+msgid "&Software Playthrough: Play new track while recording or monitoring"
+msgstr "&Programsko predvajanje skozi: Predvajaj nov posnetek med njegovim snemanjem ali preverjanjem"
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
-msgstr "V realnem Äasu:"
+#: prefs/RecordingPrefs.cpp:74
+msgid "(uncheck when recording \"stereo mix\")"
+msgstr "(ne oznaÄite, Äe snemate \"stereo miks\")"
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
-msgstr "Visokokakovostno:"
+#: prefs/RecordingPrefs.cpp:89
+#: prefs/RecordingPrefs.cpp:90
+msgid "milliseconds (higher = more latency)"
+msgstr "milisekund (veÄje = veÄ latence)"
-#: prefs/SmartRecordPrefs.cpp:37
-#: prefs/SmartRecordPrefs.cpp:38
-msgid "Smart Recording"
-msgstr "Pametno snemanje"
+#: prefs/RecordingPrefs.cpp:96
+#: prefs/RecordingPrefs.cpp:97
+msgid "milliseconds (negative = backwards)"
+msgstr "milisekund (negativno = nazaj)"
-#: prefs/SmartRecordPrefs.cpp:64
-#: prefs/SmartRecordPrefs.cpp:66
+#: prefs/RecordingPrefs.cpp:103
+#: prefs/RecordingPrefs.cpp:105
msgid "Sound Activated Recording"
msgstr "Z zvokom aktivirano snemanje"
-#: prefs/SmartRecordPrefs.cpp:71
+#: prefs/RecordingPrefs.cpp:114
msgid "Sound Activation Level (dB):"
msgstr "Raven zvoka za aktivacijo (dB):"
-#: prefs/SpectrumPrefs.cpp:41
-#: prefs/SpectrumPrefs.cpp:42
+#: prefs/SpectrumPrefs.cpp:30
msgid "Spectrograms"
msgstr "Spektrogrami"
-#: prefs/SpectrumPrefs.cpp:91
-msgid "FFT Size"
-msgstr "Velikost FFT"
-
-#: prefs/SpectrumPrefs.cpp:94
+#: prefs/SpectrumPrefs.cpp:41
msgid "8 - most wideband"
msgstr "8 - najširše"
-#: prefs/SpectrumPrefs.cpp:99
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr "16"
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr "32"
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr "64"
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr "128"
+
+#: prefs/SpectrumPrefs.cpp:46
msgid "256 - default"
msgstr "256 - privzeto"
-#: prefs/SpectrumPrefs.cpp:107
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr "512"
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr "1024"
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr "2048"
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr "4096"
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr "8192"
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr "16384"
+
+#: prefs/SpectrumPrefs.cpp:54
msgid "32768 - most narrowband"
msgstr "32768 - najožje"
-#: prefs/SpectrumPrefs.cpp:109
+#: prefs/SpectrumPrefs.cpp:56
msgid "4096 - most narrowband"
msgstr "4096 - najožje"
-#: prefs/SpectrumPrefs.cpp:116
-msgid "Window type:"
-msgstr "Vrsta okna:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
+msgstr "Okno FFT"
-#: prefs/SpectrumPrefs.cpp:125
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
+msgstr "Velikost okna"
+
+#: prefs/SpectrumPrefs.cpp:93
+msgid "Window type"
+msgstr "Vrsta okna"
+
+#: prefs/SpectrumPrefs.cpp:113
msgid "FFT Skip Points"
msgstr "ToÄke preskoka FFT"
-#: prefs/SpectrumPrefs.cpp:140
-msgid "Display"
-msgstr "Prikaz"
-
-#: prefs/SpectrumPrefs.cpp:144
-msgid "&Grayscale"
-msgstr "&sivinsko"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
+msgstr "ToÄke preskoka"
-#: prefs/SpectrumPrefs.cpp:147
+#: prefs/SpectrumPrefs.cpp:134
msgid "Minimum Frequency (Hz):"
msgstr "Najmanjša frekvenca (Hz):"
-#: prefs/SpectrumPrefs.cpp:152
+#: prefs/SpectrumPrefs.cpp:140
msgid "Maximum Frequency (Hz):"
msgstr "Najvišja frekvenca (Hz):"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
-msgstr "&Y-mreža"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
+msgstr "Pokaži spekter s &sivinskimi odtenki"
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
-msgstr "&Najdi note"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
+msgstr "Pokaži mrežo vzdolž osi &Y"
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
-msgstr "&Kvantiziraj note"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
+msgstr "Najdi note FFT"
#: prefs/SpectrumPrefs.cpp:165
msgid "Minimum Amplitude (dB):"
msgstr "Najmanjša amplituda (dB):"
-#: prefs/SpectrumPrefs.cpp:170
+#: prefs/SpectrumPrefs.cpp:171
msgid "Max. Number of Notes (1..128):"
msgstr "Najv. število not (1..128):"
-#: prefs/SpectrumPrefs.cpp:197
+#: prefs/SpectrumPrefs.cpp:178
+msgid "&Find Notes"
+msgstr "&Najdi note"
+
+#: prefs/SpectrumPrefs.cpp:182
+msgid "&Quantize Notes"
+msgstr "&Kvantiziraj note"
+
+#: prefs/SpectrumPrefs.cpp:194
msgid "The maximum frequency must be an integer"
msgstr "Maksimalna frekvenca mora biti število"
-#: prefs/SpectrumPrefs.cpp:201
+#: prefs/SpectrumPrefs.cpp:198
msgid "Maximum frequency must be in the range 100 Hz - 100,000 Hz"
msgstr "Najvišja frekvenca mora biti med 100 Hz - 100,000 Hz"
-#: prefs/SpectrumPrefs.cpp:209
+#: prefs/SpectrumPrefs.cpp:204
msgid "The minimum frequency must be an integer"
msgstr "Najmanjša frekvenca mora biti pozitivno celo število"
-#: prefs/SpectrumPrefs.cpp:213
+#: prefs/SpectrumPrefs.cpp:208
msgid "Minimum frequency must be at least 0 Hz"
msgstr "Najmanjša frekvenca mora biti vsaj 0 Hz"
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr "NajmanjÅ¡a frekvenca mora biti manjÅ¡a od najveÄje frekvence"
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr "Najmanjša amplituda (dB) mora biti celo število"
#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr "NajveÄje Å¡tevilo not mora biti celo Å¡tevilo"
+
#: prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
+msgid "The maximum number of notes must be in the range 1..128"
msgstr "NajveÄje Å¡tevilo not mora biti celo Å¡tevilo v obsegu 1..128"
-#: prefs/ThemePrefs.cpp:62
-#: prefs/ThemePrefs.cpp:63
+#: prefs/ThemePrefs.cpp:60
msgid "Theme"
msgstr "Tema"
+#: prefs/ThemePrefs.cpp:88
+msgid "Info"
+msgstr "Podatki"
+
+#: prefs/ThemePrefs.cpp:91
+msgid ""
+"Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr ""
+"Teme so v eksperimentalni fazi.\n"
+"\n"
+"Da jih preizkusite, kliknite \"Shrani medpomnilnik tem\", nato poiÅ¡Äite in spremenite slike\n"
+"in barve v ImageCacheVxx.png z uporabo urejevalnika slik, kot je Gimp.\n"
+"\n"
+"Kliknite \"Naloži medpomnilnik tem\", da naložite spremenjene slike in barve nazaj v Audacity.\n"
+"\n"
+"[Samo nadzorna orodna vrstica in barve sledi so trenutno prizadete, Äeprav slika\n"
+"prikazuje tudi druge ikone.]"
+
+#: prefs/ThemePrefs.cpp:96
+msgid ""
+"You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+"Audacity ste prevedli z dodatnim gumbom, 'Output Sourcery'. S tem boste shranili C-razliÄico \n"
+"slikovnega medpomnilnika, ki ga ni mogoÄe privzeto prevesti."
+
+#: prefs/ThemePrefs.cpp:101
+msgid ""
+"If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+"Äe je vkljuÄen 'Naloži medpomnilnik tem ob zagonu', bo medpomnilnik tem naložen,\n"
+"ko zaženete program."
+
+#: prefs/ThemePrefs.cpp:104
+msgid ""
+"Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+"Shranjevanje in nalaganje posamezne datoteke teme uporablja loÄeno datoteko za vsako sliko,\n"
+"a je sicer zamiÅ¡ljeno na enak naÄin."
+
#. i18n-hint: && in here is an escape character to get a single & on screen,
#. * so keep it as is
-#: prefs/ThemePrefs.cpp:93
+#: prefs/ThemePrefs.cpp:111
msgid "Theme Cache - Images && Color"
msgstr "Medpomnilnik tem - Slike in barve"
-#: prefs/ThemePrefs.cpp:95
+#: prefs/ThemePrefs.cpp:115
msgid "Save Theme Cache"
msgstr "Shrani medpomnilnik tem"
-#: prefs/ThemePrefs.cpp:96
+#: prefs/ThemePrefs.cpp:116
msgid "Load Theme Cache"
msgstr "Naloži medpomnilnik tem"
-#: prefs/ThemePrefs.cpp:106
+#: prefs/ThemePrefs.cpp:131
msgid "Load Theme Cache At Startup"
msgstr "Naloži medpomnilnik tem ob zagonu"
-#: prefs/ThemePrefs.cpp:118
+#: prefs/ThemePrefs.cpp:146
msgid "Individual Theme Files"
msgstr "PosamiÄne datoteke tem"
-#: prefs/ThemePrefs.cpp:120
+#: prefs/ThemePrefs.cpp:150
msgid "Save Files"
msgstr "Shrani datoteke"
-#: prefs/ThemePrefs.cpp:121
+#: prefs/ThemePrefs.cpp:151
msgid "Load Files"
msgstr "Naloži datoteke"
-#: prefs/ThemePrefs.cpp:126
-msgid "Info"
-msgstr "Podatki"
+#: prefs/TracksPrefs.cpp:47
+msgid "Simple"
+msgstr "Enostavno"
-#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
-msgstr "Teme so v eksperimentalni fazi.\n"
-"\n"
-"Da jih preizkusite, kliknite \"Shrani medpomnilnik tem\",\n"
-"nato poiÅ¡Äite in spremenite slike in barve v \n"
-"ImageCacheVxx.png z uporabo urejevalnika slik, kot \n"
-"je Gimp.\n"
-"\n"
-"Kliknite \"Naloži medpomnilnik tem\", da naložite spremenjene\n"
-"slike in barve nazaj v Audacity.\n"
-"\n"
-"[Samo nadzorna orodna vrstica in barve \n"
-"sledi so trenutno prizadete, Äeprav slika\n"
-"prikazuje tudi druge ikone.]\n"
-
-#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
-msgstr "Audacity je preveden z dodatnim gumbom, \n"
-"'Output Sourcery'. S tem boste shranili C-razliÄico \n"
-"slikovnega medpomnilnika, ki ga ni mogoÄe privzeto prevesti.\n"
-
-#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
-msgstr "Äe je vkljuÄen 'Naloži medpomnilnik tem ob zagonu', bo \n"
-"medpomnilnik tem naložen, ko zaženete program.\n"
-"\n"
+#: prefs/TracksPrefs.cpp:77
+msgid "&Update display while playing"
+msgstr "&Posodobi zaslon med predvajanjem"
-#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
-msgstr "Shranjevanje in nalaganje posamezne datoteke teme \n"
-"uporablja loÄeno datoteko za vsako sliko, a je sicer \n"
-"zamiÅ¡ljeno na enak naÄin.\n"
-"\n"
+#: prefs/TracksPrefs.cpp:80
+msgid "Automatically &fit tracks vertically zoomed"
+msgstr "Samodejno &umeri sledi na navpiÄno poveÄavo"
+
+#: prefs/TracksPrefs.cpp:88
+msgid "Default View Mode:"
+msgstr "Privzeti naÄin pogleda:"
+
+#: prefs/TracksPrefs.cpp:101
+msgid "&Select all audio in project, if none selected"
+msgstr "&Äe ni niÄ izbrano, izberi vse zvoke projekta."
+
+#: prefs/TracksPrefs.cpp:104
+msgid "Enable cut &lines"
+msgstr "OmogoÄi &Ärte rezov"
+
+#: prefs/TracksPrefs.cpp:107
+msgid "Enable &dragging of left and right selection edges"
+msgstr "OmogoÄi &vleko levega in desnega roba izbora"
+
+#: prefs/TracksPrefs.cpp:110
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+msgstr "\"Premakni pozornost po sledeh\" &cikliÄno kroži po sledeh"
+
+#: prefs/TracksPrefs.cpp:113
+msgid "Editing a &clip can move other clips"
+msgstr "Urejanje &posnetka lahko premakne druge posnetke"
+
+#: prefs/TracksPrefs.cpp:121
+msgid "Solo Button:"
+msgstr "Gumb Solo:"
+
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
+msgstr "Opozorila"
-#: toolbars/ControlToolBar.cpp:175
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr "Pokaži opozorila/vprašanja"
+
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr "Pri shranjevanju &projektov"
+
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr "Pri shranjevanju prazn&ega projekta"
+
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr "Ko zmanjkuje prostora na &disku"
+
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr "Pri mešanju v &stereo ob izvozu"
+
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr "Pri mešanju v &mono ob izvozu"
+
+#: toolbars/ControlToolBar.cpp:170
+#: toolbars/ControlToolBar.cpp:205
msgid "Pause"
msgstr "Prekinitev"
#: toolbars/ControlToolBar.cpp:178
-msgid "Play"
-msgstr "Predvajaj"
-
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
-msgstr "Predvajaj (Shift za predvajanje v zanki)"
-
-#: toolbars/ControlToolBar.cpp:183
+#: toolbars/ControlToolBar.cpp:207
+#: widgets/ProgressDialog.cpp:1108
msgid "Stop"
msgstr "Ustavi"
-#: toolbars/ControlToolBar.cpp:186
-msgid "Skip to Start"
-msgstr "SkoÄi na zaÄetek"
+#: toolbars/ControlToolBar.cpp:190
+#: toolbars/ControlToolBar.cpp:211
+msgid "Clean Speech"
+msgstr "PoÄisti govor"
-#: toolbars/ControlToolBar.cpp:189
-msgid "Skip to End"
-msgstr "SkoÄi na konec"
+#: toolbars/ControlToolBar.cpp:206
+msgid "Play (Shift for Loop Play)"
+msgstr "Predvajaj (Shift za predvajanje v zanki)"
-#: toolbars/ControlToolBar.cpp:192
+#: toolbars/ControlToolBar.cpp:210
msgid "Record (Shift for Append Record)"
msgstr "Snemaj (Shift za Snemaj kot dodatek)"
-#: toolbars/ControlToolBar.cpp:195
-msgid "Clean Speech"
-msgstr "PoÄisti govor"
-
-#: toolbars/ControlToolBar.cpp:540
-#: toolbars/ControlToolBar.cpp:869
+#: toolbars/ControlToolBar.cpp:579
+#: toolbars/ControlToolBar.cpp:914
msgid "Error while opening sound device. "
msgstr "Napaka pri odpiranju zvoÄne naprave."
-#: toolbars/ControlToolBar.cpp:706
+#: toolbars/ControlToolBar.cpp:749
msgid "Recording in CleanSpeech mode is not possible when a track, or more than one project, is already open."
msgstr "Snemanje v naÄinu PoÄistiGovor ni možno, Äe je sled (ali pa veÄ kot en projekt) že odprta."
-#: toolbars/ControlToolBar.cpp:707
+#: toolbars/ControlToolBar.cpp:750
msgid "Recording not permitted"
msgstr "Snemanje ni dovoljeno"
-#: toolbars/DeviceToolBar.cpp:113
-#: toolbars/DeviceToolBar.cpp:115
+#: toolbars/DeviceToolBar.cpp:109
+#: toolbars/DeviceToolBar.cpp:205
msgid "Output Device"
msgstr "Izhodna naprava"
-#: toolbars/DeviceToolBar.cpp:134
-#: toolbars/DeviceToolBar.cpp:136
+#: toolbars/DeviceToolBar.cpp:127
+#: toolbars/DeviceToolBar.cpp:206
msgid "Input Device"
msgstr "Vhodna naprava"
-#: toolbars/EditToolBar.cpp:139
+#: toolbars/EditToolBar.cpp:136
msgid "Trim outside selection"
msgstr "Poreži na vse zunaj izbora"
-#: toolbars/EditToolBar.cpp:141
+#: toolbars/EditToolBar.cpp:138
msgid "Silence selection"
msgstr "Izbor tišine"
#: toolbars/EditToolBar.cpp:150
+#: toolbars/EditToolBar.cpp:197
msgid "Link Tracks"
msgstr "Poveži sledi"
#: toolbars/EditToolBar.cpp:155
+#: toolbars/EditToolBar.cpp:198
msgid "Zoom In"
msgstr "PoveÄaj"
#: toolbars/EditToolBar.cpp:157
+#: toolbars/EditToolBar.cpp:199
msgid "Zoom Out"
msgstr "Pomanjšaj"
-#: toolbars/EditToolBar.cpp:161
-msgid "Zoom Toggle"
-msgstr "Preklop poveÄave"
-
-#: toolbars/EditToolBar.cpp:165
-msgid "Fit Selection"
-msgstr "Umeri izbor"
-
-#: toolbars/EditToolBar.cpp:165
+#: toolbars/EditToolBar.cpp:160
msgid "Fit selection in window"
msgstr "Prilagodi oznaÄeno oknu"
-#: toolbars/EditToolBar.cpp:167
-msgid "Fit Project"
-msgstr "Umeri projekt"
-
-#: toolbars/EditToolBar.cpp:167
+#: toolbars/EditToolBar.cpp:162
msgid "Fit project in window"
msgstr "Prilagodi celoten projekt v okno"
-#: toolbars/MeterToolBar.cpp:50
-msgid "Meter"
-msgstr "Merilnik"
+#: toolbars/EditToolBar.cpp:200
+msgid "Fit Selection"
+msgstr "Umeri izbor"
+
+#: toolbars/EditToolBar.cpp:201
+msgid "Fit Project"
+msgstr "Umeri projekt"
#: toolbars/MeterToolBar.cpp:80
msgid "Play Meter"
@@ -8746,11 +9405,11 @@ msgstr "Merilnik posnetega"
msgid "Meter-Record"
msgstr "Merilnik-Snemanje"
-#: toolbars/MeterToolBar.cpp:94
+#: toolbars/MeterToolBar.cpp:123
msgid "Output level meter"
msgstr "Merilnik nivoja izhoda"
-#: toolbars/MeterToolBar.cpp:95
+#: toolbars/MeterToolBar.cpp:124
msgid "Input level meter - click to monitor input"
msgstr "Merilnik vhodne ravni - kliknite za nadzor vhoda"
@@ -8763,7 +9422,7 @@ msgid "Slider Output"
msgstr "Drsnik izhoda"
#: toolbars/MixerToolBar.cpp:101
-#: widgets/Meter.cpp:874
+#: widgets/Meter.cpp:862
msgid "Input Volume"
msgstr "Vhodna jakost"
@@ -8771,11 +9430,24 @@ msgstr "Vhodna jakost"
msgid "Slider Input"
msgstr "Drsnik vhoda"
-#: toolbars/MixerToolBar.cpp:134
+#: toolbars/MixerToolBar.cpp:139
msgid "Input Source"
msgstr "Vhodni vir"
+#: toolbars/MixerToolBar.cpp:304
+msgid "Input source information is not available."
+msgstr "Podatki o vhodu niso na voljo."
+
+#: toolbars/MixerToolBar.cpp:311
+msgid "Select Input Source"
+msgstr "Izberite vhodni vir"
+
+#: toolbars/MixerToolBar.cpp:319
+msgid "Input Source:"
+msgstr "Vhodni vir:"
+
#: toolbars/SelectionBar.cpp:86
+#: toolbars/SelectionBar.cpp:292
msgid "Selection"
msgstr "Izbor"
@@ -8813,21 +9485,21 @@ msgstr "SkoÄi na ..."
msgid "Selection "
msgstr "Izbor"
-#: toolbars/SelectionBar.cpp:325
+#: toolbars/SelectionBar.cpp:340
msgid "Selection Length"
msgstr "Dolžina izbora"
-#: toolbars/SelectionBar.cpp:333
+#: toolbars/SelectionBar.cpp:348
msgid "Selection End"
msgstr "Konec izbora"
-#: toolbars/ToolBar.cpp:98
+#: toolbars/ToolBar.cpp:120
#, c-format
msgid "Audacity %s ToolBar"
msgstr "Orodna vrstica Audacity - %s"
-#: toolbars/ToolDock.cpp:74
#: toolbars/ToolDock.cpp:75
+#: toolbars/ToolDock.cpp:76
msgid "ToolDock"
msgstr "SidriÅ¡Äe orodij"
@@ -8859,226 +9531,193 @@ msgstr "Levo=PoveÄava, Desno=PomanjÅ¡anje, Sredina=Normalno"
msgid "Click and drag to move a track in time"
msgstr "Kliknite in povlecite, da bi premaknili posnetek vzdolž Äasovne linije"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr "Orodja"
-
-#: toolbars/ToolsToolBar.cpp:147
-#: toolbars/ToolsToolBar.cpp:182
-msgid "Selection Tool"
-msgstr "Orodje za izbiranje"
-
-#: toolbars/ToolsToolBar.cpp:148
-msgid "Envelope Tool"
-msgstr "Orodje za ovojnico"
-
-#: toolbars/ToolsToolBar.cpp:149
-#: toolbars/ToolsToolBar.cpp:183
-msgid "Time Shift Tool"
-msgstr "Orodje za optimiranje Äasa"
-
-#: toolbars/ToolsToolBar.cpp:150
-#: toolbars/ToolsToolBar.cpp:185
-msgid "Zoom Tool"
-msgstr "Orodje za poveÄavo"
-
-#: toolbars/ToolsToolBar.cpp:151
-#: toolbars/ToolsToolBar.cpp:184
-msgid "Draw Tool"
-msgstr "Risanje"
-
#: toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
msgstr "VeÄorodni naÄin"
-#: toolbars/ToolsToolBar.cpp:186
+#: toolbars/ToolsToolBar.cpp:190
msgid "Slide Tool"
msgstr "Orodje Pomikaj"
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr "VeÄstransko orodje"
-
-#: toolbars/TranscriptionToolBar.cpp:84
-msgid "Transcription"
-msgstr "Prepis"
-
-#: toolbars/TranscriptionToolBar.cpp:171
+#: toolbars/TranscriptionToolBar.cpp:170
msgid "Play at selected speed"
msgstr "Predvajaj pri izbrani hitrosti"
-#: toolbars/TranscriptionToolBar.cpp:172
-msgid "Play-at-speed"
-msgstr "Predvajaj-pri-hitrosti"
-
-#: toolbars/TranscriptionToolBar.cpp:178
-#: toolbars/TranscriptionToolBar.cpp:183
+#: toolbars/TranscriptionToolBar.cpp:176
+#: toolbars/TranscriptionToolBar.cpp:181
+#: toolbars/TranscriptionToolBar.cpp:263
msgid "Playback Speed"
msgstr "Hitrost predvajanja"
-#: toolbars/TranscriptionToolBar.cpp:196
+#: toolbars/TranscriptionToolBar.cpp:195
msgid "Adjust left selection to next onset"
msgstr "Prilagodi levi izbor naslednjemu primiku"
#: toolbars/TranscriptionToolBar.cpp:197
-msgid "Left-to-On"
-msgstr "Levo-na-vkljuÄeno"
-
-#: toolbars/TranscriptionToolBar.cpp:199
msgid "Adjust right selection to previous offset"
msgstr "Prilagodi desni izbor prejšnjemu odmiku"
-#: toolbars/TranscriptionToolBar.cpp:200
-msgid "Right-to-Off"
-msgstr "Desno-na-izkljuÄeno"
-
-#: toolbars/TranscriptionToolBar.cpp:202
+#: toolbars/TranscriptionToolBar.cpp:199
msgid "Adjust left selection to next offset"
msgstr "Prilagodi levi izbor naslednjemu odmiku"
-#: toolbars/TranscriptionToolBar.cpp:203
-msgid "Left-to-Off"
-msgstr "Levo-na-izkljuÄeno"
-
-#: toolbars/TranscriptionToolBar.cpp:205
+#: toolbars/TranscriptionToolBar.cpp:201
msgid "Adjust right selection to previous onset"
msgstr "Prilagodi desni izbor prejšnjemu primiku"
-#: toolbars/TranscriptionToolBar.cpp:206
-msgid "Right-to-On"
-msgstr "Desno-na-vkljuÄeno"
-
-#: toolbars/TranscriptionToolBar.cpp:208
+#: toolbars/TranscriptionToolBar.cpp:203
msgid "Select region of sound around cursor"
msgstr "Izberi podroÄje zvoka okoli kazalca"
-#: toolbars/TranscriptionToolBar.cpp:209
-msgid "Select-Sound"
-msgstr "Izberi-Zvok"
-
-#: toolbars/TranscriptionToolBar.cpp:211
+#: toolbars/TranscriptionToolBar.cpp:205
msgid "Select region of silence around cursor"
msgstr "Izberi podroÄje tiÅ¡ine okoli kazalca"
-#: toolbars/TranscriptionToolBar.cpp:212
-msgid "Select-Silence"
-msgstr "Izberi-Tišina"
-
-#: toolbars/TranscriptionToolBar.cpp:214
+#: toolbars/TranscriptionToolBar.cpp:207
msgid "Automatically make labels from words"
msgstr "Samodejno naredi oznake iz besed"
-#: toolbars/TranscriptionToolBar.cpp:215
-msgid "Make Labels"
-msgstr "Naredi oznake"
-
-#: toolbars/TranscriptionToolBar.cpp:217
+#: toolbars/TranscriptionToolBar.cpp:209
msgid "Add label at selection"
msgstr "Dodaj oznako pri izbiri"
-#: toolbars/TranscriptionToolBar.cpp:218
-msgid "Add Label"
-msgstr "Dodaj oznako"
-
-#: toolbars/TranscriptionToolBar.cpp:220
+#: toolbars/TranscriptionToolBar.cpp:211
msgid "Calibrate voicekey"
msgstr "Umeri kljuÄni glas"
-#: toolbars/TranscriptionToolBar.cpp:221
-msgid "Calibrate"
-msgstr "Kalibriraj"
-
-#: toolbars/TranscriptionToolBar.cpp:225
+#: toolbars/TranscriptionToolBar.cpp:215
msgid "Adjust Sensitivity"
msgstr "Prilagodi obÄutljivost"
-#: toolbars/TranscriptionToolBar.cpp:230
+#: toolbars/TranscriptionToolBar.cpp:220
+#: toolbars/TranscriptionToolBar.cpp:276
msgid "Sensitivity"
msgstr "ObÄutljivost"
-#: toolbars/TranscriptionToolBar.cpp:235
+#: toolbars/TranscriptionToolBar.cpp:225
msgid "Energy"
msgstr "Energija"
-#: toolbars/TranscriptionToolBar.cpp:236
+#: toolbars/TranscriptionToolBar.cpp:226
msgid "Sign Changes (Low Threshold)"
msgstr "Spremembe predznaka (nizek prag)"
-#: toolbars/TranscriptionToolBar.cpp:237
+#: toolbars/TranscriptionToolBar.cpp:227
msgid "Sign Changes (High Threshold)"
msgstr "Spremembe predznaka (visok prag)"
-#: toolbars/TranscriptionToolBar.cpp:238
+#: toolbars/TranscriptionToolBar.cpp:228
msgid "Direction Changes (Low Threshold)"
msgstr "Spremembe smeri (nizki prag)"
-#: toolbars/TranscriptionToolBar.cpp:239
+#: toolbars/TranscriptionToolBar.cpp:229
msgid "Direction Changes (High Threshold)"
msgstr "Spremembe smeri (visoki prag)"
-#: toolbars/TranscriptionToolBar.cpp:247
+#: toolbars/TranscriptionToolBar.cpp:237
+#: toolbars/TranscriptionToolBar.cpp:277
msgid "Key type"
msgstr "Vrsta tipke"
-#: widgets/AButton.cpp:303
+#: toolbars/TranscriptionToolBar.cpp:262
+msgid "Play-at-speed"
+msgstr "Predvajaj-pri-hitrosti"
+
+#: toolbars/TranscriptionToolBar.cpp:266
+msgid "Left-to-On"
+msgstr "Levo-na-vkljuÄeno"
+
+#: toolbars/TranscriptionToolBar.cpp:267
+msgid "Right-to-Off"
+msgstr "Desno-na-izkljuÄeno"
+
+#: toolbars/TranscriptionToolBar.cpp:268
+msgid "Left-to-Off"
+msgstr "Levo-na-izkljuÄeno"
+
+#: toolbars/TranscriptionToolBar.cpp:269
+msgid "Right-to-On"
+msgstr "Desno-na-vkljuÄeno"
+
+#: toolbars/TranscriptionToolBar.cpp:270
+msgid "Select-Sound"
+msgstr "Izberi-Zvok"
+
+#: toolbars/TranscriptionToolBar.cpp:271
+msgid "Select-Silence"
+msgstr "Izberi-Tišina"
+
+#: toolbars/TranscriptionToolBar.cpp:272
+msgid "Make Labels"
+msgstr "Naredi oznake"
+
+#: toolbars/TranscriptionToolBar.cpp:273
+msgid "Add Label"
+msgstr "Dodaj oznako"
+
+#: toolbars/TranscriptionToolBar.cpp:274
+msgid "Calibrate"
+msgstr "Kalibriraj"
+
+#: widgets/AButton.cpp:300
msgid " (disabled)"
msgstr " (onemogoÄeno)"
-#: widgets/AButton.cpp:461
+#: widgets/AButton.cpp:458
msgid "Press"
msgstr "Pritisnite"
-#: widgets/AButton.cpp:540
+#: widgets/AButton.cpp:537
msgid "Button"
msgstr "Gumb"
#. i18n-hint: One-letter abbreviation for Left, in VU Meter
#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
-#: widgets/ASlider.cpp:612
-#: widgets/Meter.cpp:248
+#: widgets/ASlider.cpp:642
+#: widgets/Meter.cpp:241
msgid "L"
msgstr "L"
#. i18n-hint: One-letter abbreviation for Right, in VU Meter
#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
-#: widgets/ASlider.cpp:615
-#: widgets/Meter.cpp:250
+#: widgets/ASlider.cpp:645
+#: widgets/Meter.cpp:243
msgid "R"
msgstr "D"
-#: widgets/ASlider.cpp:678
+#: widgets/ASlider.cpp:708
msgid "Center"
msgstr "Sredinski"
-#: widgets/ASlider.cpp:682
+#: widgets/ASlider.cpp:712
msgid "Left"
msgstr "Levo"
-#: widgets/ASlider.cpp:685
+#: widgets/ASlider.cpp:715
msgid "Right"
msgstr "Desno"
-#: widgets/ErrorDialog.cpp:98
+#: widgets/ErrorDialog.cpp:96
msgid "Help"
msgstr "PomoÄ"
-#: widgets/ErrorDialog.cpp:137
+#: widgets/ErrorDialog.cpp:166
msgid "<"
msgstr "<"
-#: widgets/ErrorDialog.cpp:138
+#: widgets/ErrorDialog.cpp:167
msgid ">"
msgstr ">"
-#: widgets/ErrorDialog.cpp:142
+#: widgets/ErrorDialog.cpp:171
msgid "Forwards"
msgstr "Naprej"
-#: widgets/ErrorDialog.cpp:143
+#: widgets/ErrorDialog.cpp:172
msgid "Backwards"
msgstr "Nazaj"
-#: widgets/ErrorDialog.cpp:255
+#: widgets/ErrorDialog.cpp:275
msgid "Help on the Internet"
msgstr "PomoÄ na spletu"
@@ -9086,68 +9725,59 @@ msgstr "PomoÄ na spletu"
msgid "Grabber"
msgstr "Zajemalnik"
-#: widgets/Grid.cpp:643
-#, c-format
-msgid "%d rows, %d columns"
-msgstr "%d vrstic, %d stolpcev"
-
-#: widgets/Grid.cpp:649
-#: widgets/Grid.cpp:776
-#, c-format
-msgid "Row %d"
-msgstr "Vrstica %d"
-
-#: widgets/Grid.cpp:791
+#: widgets/Grid.cpp:723
msgid "Empty"
msgstr "Prazno"
-#: widgets/Meter.cpp:396
+#: widgets/Meter.cpp:385
msgid "Enable Meter"
msgstr "VkljuÄi merilnik"
-#: widgets/Meter.cpp:398
+#: widgets/Meter.cpp:387
msgid "Disable Meter"
msgstr "IzkljuÄi merilnik"
-#: widgets/Meter.cpp:401
+#: widgets/Meter.cpp:390
msgid "Stop Monitoring"
msgstr "Ustavi opazovanje"
-#: widgets/Meter.cpp:403
+#: widgets/Meter.cpp:392
msgid "Start Monitoring"
msgstr "Zaženi opazovanje"
-#: widgets/Meter.cpp:407
+#: widgets/Meter.cpp:396
msgid "Horizontal Stereo"
msgstr "Vodoravni stereo"
-#: widgets/Meter.cpp:408
+#: widgets/Meter.cpp:397
msgid "Vertical Stereo"
msgstr "NavpiÄni stereo"
-#: widgets/Meter.cpp:425
+#: widgets/Meter.cpp:414
msgid "Preferences..."
msgstr "Nastavitve ..."
-#: widgets/Meter.cpp:876
+#: widgets/Meter.cpp:864
msgid "Mix Volume"
msgstr "Jakost mešanega"
-#: widgets/Meter.cpp:1145
-msgid "This determines how often the meter is refreshed.\n"
+#: widgets/Meter.cpp:1133
+msgid ""
+"This determines how often the meter is refreshed.\n"
"If you have a slower PC you may want to select a\n"
"lower refresh rate (30 per second or lower), so that\n"
"audio qualtiy is not affected by the meter display."
-msgstr "S tem doloÄite, kako pogosto je osvežen merilnik.\n"
+msgstr ""
+"S tem doloÄite, kako pogosto je osvežen merilnik.\n"
"Äe imate poÄasnejÅ¡i raÄunalnik, je bolje izbrati\n"
"manjšo frekvenco osveževanja (30 na sekundo ali manj),\n"
"tako da kakovost zvoka ni ogrožena zaradi prikaza merilnika."
-#: widgets/Meter.cpp:1146
+#: widgets/Meter.cpp:1134
msgid "Meter refresh rate per second [1-100]: "
msgstr "Hitrost osveževanja merilnika na sekundo [1-100]: "
-#: widgets/Meter.cpp:1147
+#: widgets/Meter.cpp:1135
msgid "Meter Preferences"
msgstr "Nastavitve merilnika"
@@ -9159,27 +9789,27 @@ msgstr " Prosimo, izberite dejanje"
msgid "Please select an action"
msgstr "Prosimo, izberite dejanje"
-#: widgets/ProgressDialog.cpp:97
+#: widgets/ProgressDialog.cpp:1067
msgid "Elapsed Time:"
msgstr "Pretekli Äas:"
-#: widgets/ProgressDialog.cpp:117
+#: widgets/ProgressDialog.cpp:1087
msgid "Remaining Time:"
msgstr "Preostali Äas:"
-#: widgets/ProgressDialog.cpp:134
+#: widgets/ProgressDialog.cpp:1115
msgid "Cancel"
msgstr "PrekliÄi"
-#: widgets/Ruler.cpp:1445
-#: widgets/Ruler.cpp:1446
+#: widgets/Ruler.cpp:1588
+#: widgets/Ruler.cpp:1589
msgid "Vertical Ruler"
msgstr "NavpiÄno ravnilo"
#. i18n-hint: Format string for displaying time in seconds. Change the comma
#. * in the middle to the 1000s separator for your locale, and the 'seconds'
#. * on the end to the word for seconds. Don't change the numbers.
-#: widgets/TimeTextCtrl.cpp:267
+#: widgets/TimeTextCtrl.cpp:269
msgid "01000,01000 seconds"
msgstr "sekunde 01000,01000"
@@ -9188,13 +9818,13 @@ msgstr "sekunde 01000,01000"
#. * abbreviation for minutes and 's' to the abbreviation for seconds. Don't
#. * change the numbers unless there aren't 60 seconds in a minute in your
#. * locale
-#: widgets/TimeTextCtrl.cpp:276
+#: widgets/TimeTextCtrl.cpp:278
msgid "0100 h 060 m 060 s"
msgstr "0100 u 060 m 060 s"
#. i18n-hint: Name of time display format that shows time in days, hours,
#. * minutes and seconds
-#: widgets/TimeTextCtrl.cpp:279
+#: widgets/TimeTextCtrl.cpp:281
msgid "dd:hh:mm:ss"
msgstr "dd:uu:mm:ss"
@@ -9203,28 +9833,28 @@ msgstr "dd:uu:mm:ss"
#. * for hours, 'm' to the abbreviation for minutes and 's' to the
#. * abbreviation for seconds. Don't change the numbers unless there aren't
#. * 24 hours in a day in your locale
-#: widgets/TimeTextCtrl.cpp:285
+#: widgets/TimeTextCtrl.cpp:287
msgid "0100 days 024 h 060 m 060 s"
msgstr "0100 dni 024 u 060 m 060 s"
#. i18n-hint: Name of time display format that shows time in hours,
-#. * minutes, seconds and hundreths of a second (1/100 second)
-#: widgets/TimeTextCtrl.cpp:288
+#. * minutes, seconds and hundredths of a second (1/100 second)
+#: widgets/TimeTextCtrl.cpp:290
msgid "hh:mm:ss + hundredths"
-msgstr ""
+msgstr "uu:mm:ss + stotinke"
#. i18n-hint: Format string for displaying time in hours, minutes, seconds
#. * and hundredths of a second. Change the 'h' to the abbreviation for hours,
#. * 'm' to the abbreviation for minutes and 's' to the abbreviation for seconds (the
#. * hundredths are shown as decimal seconds) . Don't change the numbers
#. * unless there aren't 60 minutes in an hour in your locale
-#: widgets/TimeTextCtrl.cpp:294
+#: widgets/TimeTextCtrl.cpp:296
msgid "0100 h 060 m 060.0100 s"
-msgstr ""
+msgstr "0100 u 060 m 060,01000 s"
#. i18n-hint: Name of time display format that shows time in hours,
#. * minutes, seconds and milliseconds (1/1000 second)
-#: widgets/TimeTextCtrl.cpp:288
+#: widgets/TimeTextCtrl.cpp:299
msgid "hh:mm:ss + milliseconds"
msgstr "uu:mm:ss + milisekunde"
@@ -9233,13 +9863,13 @@ msgstr "uu:mm:ss + milisekunde"
#. * abbreviation for minutes and 's' to the abbreviation for seconds (the
#. * milliseconds are shown as decimal seconds) . Don't change the numbers
#. * unless there aren't 60 minutes in an hour in your locale
-#: widgets/TimeTextCtrl.cpp:294
+#: widgets/TimeTextCtrl.cpp:305
msgid "0100 h 060 m 060.01000 s"
msgstr "0100 u 060 m 060.01000 s"
#. i18n-hint: Name of time display format that shows time in hours,
#. * minutes, seconds and samples (at the current project sample rate)
-#: widgets/TimeTextCtrl.cpp:297
+#: widgets/TimeTextCtrl.cpp:308
msgid "hh:mm:ss + samples"
msgstr "uu:mm:ss + vzorci"
@@ -9248,13 +9878,13 @@ msgstr "uu:mm:ss + vzorci"
#. * abbreviation for minutes, 's' to the abbreviation for seconds and
#. * translate samples . Don't change the numbers
#. * unless there aren't 60 seconds in a minute in your locale
-#: widgets/TimeTextCtrl.cpp:303
+#: widgets/TimeTextCtrl.cpp:314
msgid "0100 h 060 m 060 s+.# samples"
msgstr "0100 u 060 m 060 s+.# vzorci"
#. i18n-hint: Name of time display format that shows time in samples (at the
#. * current project sample rate)
-#: widgets/TimeTextCtrl.cpp:306
+#: widgets/TimeTextCtrl.cpp:317
msgid "samples"
msgstr "vzorci"
@@ -9262,13 +9892,13 @@ msgstr "vzorci"
#. * Change the ',' to the 1000s separator for your locale, and translate
#. * samples. If 1000s aren't a base multiple for your number system, then you
#. * can change the numbers to an appropriate one, and put a 0 on the front
-#: widgets/TimeTextCtrl.cpp:311
+#: widgets/TimeTextCtrl.cpp:322
msgid "01000,01000,01000 samples|#"
msgstr "vzorci 01000,01000,01000|#"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
#. * seconds and frames at 24 frames per second (commonly used for films)
-#: widgets/TimeTextCtrl.cpp:314
+#: widgets/TimeTextCtrl.cpp:325
msgid "hh:mm:ss + film frames (24 fps)"
msgstr "uu:mm:ss + filmske sliÄice (24 sl/s)"
@@ -9277,26 +9907,26 @@ msgstr "uu:mm:ss + filmske sliÄice (24 sl/s)"
#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
#. * for seconds and translate 'frames' . Don't change the numbers
#. * unless there aren't 60 seconds in a minute in your locale
-#: widgets/TimeTextCtrl.cpp:320
+#: widgets/TimeTextCtrl.cpp:331
msgid "0100 h 060 m 060 s+.24 frames"
msgstr "0100 u 060 m 060 s+.24 sliÄice"
#. i18n-hint: Name of time display format that shows time in frames (lots of
#. * frames) at 24 frames per second (commonly used for films)
-#: widgets/TimeTextCtrl.cpp:323
+#: widgets/TimeTextCtrl.cpp:334
msgid "film frames (24 fps)"
msgstr "filmske sliÄice (24 sl/s)"
#. i18n-hint: Format string for displaying time in frames at 24 frames per
#. * second. Translate 'frames' and leave the rest alone
-#: widgets/TimeTextCtrl.cpp:326
+#: widgets/TimeTextCtrl.cpp:337
msgid "01000,01000 frames|24"
msgstr "sliÄice 01000,01000|24"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
#. * seconds and frames at NTSC TV drop-frame rate (used for American /
-#. * Japananese TV, and very odd)
-#: widgets/TimeTextCtrl.cpp:330
+#. * Japanese TV, and very odd)
+#: widgets/TimeTextCtrl.cpp:341
msgid "hh:mm:ss + NTSC drop frames"
msgstr "uu:mm:ss + izpuÅ¡Äene sliÄice NTSC"
@@ -9304,14 +9934,14 @@ msgstr "uu:mm:ss + izpuÅ¡Äene sliÄice NTSC"
#. * and frames with NTSC drop frames. Change the 'h' to the abbreviation
#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
#. * for seconds and translate 'frames'. Leave the |N alone, it's important!
-#: widgets/TimeTextCtrl.cpp:335
+#: widgets/TimeTextCtrl.cpp:346
msgid "0100 h 060 m 060 s+.30 frames|N"
msgstr "0100 u 060 m 060 s+.30 sliÄice|N"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
#. * seconds and frames at NTSC TV non-drop-frame rate (used for American /
-#. * Japananese TV, and doesn't quite match wall time
-#: widgets/TimeTextCtrl.cpp:339
+#. * Japanese TV, and doesn't quite match wall time
+#: widgets/TimeTextCtrl.cpp:350
msgid "hh:mm:ss + NTSC non-drop frames"
msgstr "uu:mm:ss + neizpuÅ¡Äene sliÄice NTSC"
@@ -9320,26 +9950,26 @@ msgstr "uu:mm:ss + neizpuÅ¡Äene sliÄice NTSC"
#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
#. * for seconds and translate 'frames'. Leave the | .999000999 alone,
#. * the whole things really is slightly off-speed!
-#: widgets/TimeTextCtrl.cpp:345
+#: widgets/TimeTextCtrl.cpp:356
msgid "0100 h 060 m 060 s+.030 frames| .999000999"
msgstr "0100 u 060 m 060 s+.030 sliÄice| .999000999"
#. i18n-hint: Name of time display format that shows time in frames at NTSC
-#. * TV frame rate (used for American / Japananese TV
-#: widgets/TimeTextCtrl.cpp:348
+#. * TV frame rate (used for American / Japanese TV
+#: widgets/TimeTextCtrl.cpp:359
msgid "NTSC frames"
msgstr "sliÄice NTSC"
#. i18n-hint: Format string for displaying time in frames with NTSC frames.
#. * Translate 'frames' and leave the rest alone. That really is the frame
#. * rate!
-#: widgets/TimeTextCtrl.cpp:352
+#: widgets/TimeTextCtrl.cpp:363
msgid "01000,01000 frames|29.97002997"
msgstr "sliÄice 01000,01000|29.97002997"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
#. * seconds and frames at PAL TV frame rate (used for European TV)
-#: widgets/TimeTextCtrl.cpp:355
+#: widgets/TimeTextCtrl.cpp:366
msgid "hh:mm:ss + PAL frames (25 fps)"
msgstr "uu:mm:ss + sliÄice PAL (25 sl/s)"
@@ -9347,25 +9977,25 @@ msgstr "uu:mm:ss + sliÄice PAL (25 sl/s)"
#. * and frames with PAL TV frames. Change the 'h' to the abbreviation
#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
#. * for seconds and translate 'frames'. Nice simple time code!
-#: widgets/TimeTextCtrl.cpp:360
+#: widgets/TimeTextCtrl.cpp:371
msgid "0100 h 060 m 060 s+.25 frames"
msgstr "0100 u 060 m 060 s+.25 sliÄice"
#. i18n-hint: Name of time display format that shows time in frames at PAL
#. * TV frame rate (used for European TV
-#: widgets/TimeTextCtrl.cpp:363
+#: widgets/TimeTextCtrl.cpp:374
msgid "PAL frames (25 fps)"
msgstr "sliÄice PAL (25 sl/s)"
#. i18n-hint: Format string for displaying time in frames with NTSC frames.
#. * Translate 'frames' and leave the rest alone.
-#: widgets/TimeTextCtrl.cpp:366
+#: widgets/TimeTextCtrl.cpp:377
msgid "01000,01000 frames|25"
msgstr "sliÄice 01000,01000|25"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
#. * seconds and frames at CD Audio frame rate (75 frames per second)
-#: widgets/TimeTextCtrl.cpp:369
+#: widgets/TimeTextCtrl.cpp:380
msgid "hh:mm:ss + CDDA frames (75 fps)"
msgstr "uu:mm:ss + sliÄice CDDA (75 sl/s)"
@@ -9373,31 +10003,27 @@ msgstr "uu:mm:ss + sliÄice CDDA (75 sl/s)"
#. * and frames with CD Audio frames. Change the 'h' to the abbreviation
#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
#. * for seconds and translate 'frames'.
-#: widgets/TimeTextCtrl.cpp:374
+#: widgets/TimeTextCtrl.cpp:385
msgid "0100 h 060 m 060 s+.75 frames"
msgstr "0100 u 060 m 060 s+.75 sliÄice"
#. i18n-hint: Name of time display format that shows time in frames at CD
#. * Audio frame rate (75 frames per second)
-#: widgets/TimeTextCtrl.cpp:377
+#: widgets/TimeTextCtrl.cpp:388
msgid "CDDA frames (75 fps)"
msgstr "sliÄice CDDA (75 sl/s)"
#. i18n-hint: Format string for displaying time in frames with CD Audio
#. * frames. Translate 'frames' and leave the rest alone
-#: widgets/TimeTextCtrl.cpp:380
+#: widgets/TimeTextCtrl.cpp:391
msgid "01000,01000 frames|75"
msgstr "sliÄice 01000,01000|75"
-#: widgets/TimeTextCtrl.cpp:451
+#: widgets/TimeTextCtrl.cpp:470
msgid "Use right mouse button or context key to change format"
msgstr "Za spremembo zapisa uporabite desni gumb miške ali tipko pojavnega menija"
-#: widgets/TimeTextCtrl.cpp:1485
-msgid "Time Control"
-msgstr "Äasovni nadzor"
-
-#: widgets/Warning.cpp:64
+#: widgets/Warning.cpp:61
msgid "Don't show this warning again"
msgstr "Tega opozorila ne prikaži veÄ"
@@ -9416,3 +10042,478 @@ msgstr "Napaka: %hs v %lu. vrstici"
msgid "Could not load file: \"%s\""
msgstr "Napaka pri odpiranju datoteke: \"%s\""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr "Napaka pri splakovanju datoteke"
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr "Napaka pri zapiranju datoteke"
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr "Napaka pri zapisovanju v datoteko"
+
+#~ msgid "&Mix and Render"
+#~ msgstr "&Zmešaj in izdelaj"
+#~ msgid "Tag Name"
+#~ msgstr "Ime znaÄke"
+#~ msgid "Tag Value"
+#~ msgstr "Vrednost znaÄke"
+#~ msgid "Audio I/O"
+#~ msgstr "ZvoÄni V/I"
+#~ msgid "Portaudio v"
+#~ msgstr "Portaudio razl"
+#~ msgid "%d rows, %d columns"
+#~ msgstr "%d vrstic, %d stolpcev"
+#~ msgid "Row %d"
+#~ msgstr "Vrstica %d"
+#~ msgid "Time Control"
+#~ msgstr "Äasovni nadzor"
+#~ msgid "&Preferences...\tCtrl+,"
+#~ msgstr "&Nastavitve ...\tCtrl+,"
+#~ msgid "&New\tCtrl+N"
+#~ msgstr "&Nova\tCtrl+N"
+#~ msgid "&Open...\tCtrl+O"
+#~ msgstr "&Odpri ...\tCtrl+O"
+#~ msgid "&Close\tCtrl+W"
+#~ msgstr "&Zapri\tCtrl+W"
+#~ msgid "&Audio...\tCtrl+Shift+I"
+#~ msgstr "&Zvok ...\tCtrl+Shift+I"
+#~ msgid "CleanSpeech C&hain..."
+#~ msgstr "Veri&ga PoÄistiGovor ..."
+#~ msgid "E&xit\tCtrl+Q"
+#~ msgstr "&Zapri\tCtrl+Q"
+#~ msgid "&Undo\tCtrl+Z"
+#~ msgstr "&Razveljavi\tCtrl+Z"
+#~ msgid "Cu&t\tCtrl+X"
+#~ msgstr "I&zreži\tCtrl+X"
+#~ msgid "Spl&it Cut\tCtrl+Alt+X"
+#~ msgstr "&Razdvoji z rezom\tCtrl+Alt+X"
+#~ msgid "&Copy\tCtrl+C"
+#~ msgstr "&Kopiraj\tCtrl+C"
+#~ msgid "&Paste\tCtrl+V"
+#~ msgstr "&Prilepi\tCtrl+V"
+#~ msgid "Tri&m\tCtrl+T"
+#~ msgstr "Pore&ži\tCtrl+T"
+#~ msgid "&Delete\tCtrl+K"
+#~ msgstr "&Izbriši\tCtrl+K"
+#~ msgid "Split D&elete\tCtrl+Alt+K"
+#~ msgstr "Razdvoji z &brisanjem\tCtrl+Alt+K"
+#~ msgid "Sp&lit\tCtrl+I"
+#~ msgstr "Raz&dvoji\tCtrl+I"
+#~ msgid "Split Ne&w\tCtrl+Alt+I"
+#~ msgstr "Razdvoji v n&ovo\tCtrl+Alt+I"
+#~ msgid "&Join\tCtrl+J"
+#~ msgstr "&Združi\tCtrl+J"
+#~ msgid "Duplic&ate\tCtrl+D"
+#~ msgstr "Po&dvoji\tCtrl+D"
+#~ msgid "&Cut\tAlt+X"
+#~ msgstr "I&zreži\tAlt+X"
+#~ msgid "&Split Cut\tShift+Alt+X"
+#~ msgstr "&Razdvoji in izreži\tShift+Alt+X"
+#~ msgid "Co&py\tShift+Alt+C"
+#~ msgstr "Ko&piraj\tShift+Alt+C"
+#~ msgid "&Delete\tAlt+K"
+#~ msgstr "&Izbriši\tAlt+D"
+#~ msgid "Sp&lit Delete\tShift+Alt+K"
+#~ msgstr "Razdvo&ji z brisanjem\tShift+Alt+K"
+#~ msgid "Sile&nce\tAlt+L"
+#~ msgstr "Ti&šina\tALT+L"
+#~ msgid "Spli&t\tAlt+I"
+#~ msgstr "&Razdeli\tAlt+T"
+#~ msgid "&Join\tAlt+J"
+#~ msgstr "Z&druži\tAlt+J"
+#~ msgid "Detac&h at Silences\tShift+Alt+J"
+#~ msgstr "Razdr&uži pri tišinah\tShift+Alt+J"
+#~ msgid "&All\tCtrl+A"
+#~ msgstr "&Vse\tCtrl+A"
+#~ msgid "&None\tCtrl+Shift+A"
+#~ msgstr "&Brez\tCtrl+Shift+A"
+#~ msgid "Turn Snap-To On"
+#~ msgstr "VkljuÄi skoÄi-na"
+#~ msgid "Turn Snap-To Off"
+#~ msgstr "IzkljuÄi skoÄi-na"
+#~ msgid "Turn Grid Snap On"
+#~ msgstr "VkljuÄi vpenjanje v mrežo"
+#~ msgid "Turn Grid Snap Off"
+#~ msgstr "IzkljuÄi vpenjanje v mrežo"
+#~ msgid "Pre&ferences...\tCtrl+,"
+#~ msgstr "&Nastavitve ...\tCtrl+,"
+#~ msgid "Pre&ferences...\tCtrl+P"
+#~ msgstr "&Nastavitve ...\tCtrl+P"
+#~ msgid "Zoom &In\tCtrl+1"
+#~ msgstr "Pove&Äaj\tCtrl+1"
+#~ msgid "Zoom &Out\tCtrl+3"
+#~ msgstr "Pomanj&šaj\tCtrl+3"
+#~ msgid "&Pause\tP"
+#~ msgstr "Pre&kini\tP"
+#~ msgid "Skip to Start\tHome"
+#~ msgstr "SkoÄi na zaÄetek\tHome"
+#~ msgid "Skip to End\tEnd"
+#~ msgstr "SkoÄi na konec\tEnd"
+#~ msgid "&Record\tR"
+#~ msgstr "&Snemaj\tR"
+#~ msgid "&Audio Track\tCtrl+Shift+N"
+#~ msgstr "&ZvoÄna sled\tCtrl+Shift+N"
+#~ msgid "&UnMute All Tracks\tCtrl+Shift+U"
+#~ msgstr "&Odtišaj vse sledi\tCtrl+Shift+U"
+#~ msgid "Contrast...\tCtrl+Shift+T"
+#~ msgstr "Kontrast ...\tCtrl+Shift+T"
+#~ msgid "&Index..."
+#~ msgstr "&Kazalo ..."
+#~ msgid "Selection Tool\tF1"
+#~ msgstr "Orodje za izbiranje\tF1"
+#~ msgid "Envelope Tool\tF2"
+#~ msgstr "Orodje za ovojnico\tF2"
+#~ msgid "Draw Tool\tF3"
+#~ msgstr "Orodje za risanje\tF3"
+#~ msgid "Zoom Tool\tF4"
+#~ msgstr "Orodje za poveÄavo\tF4"
+#~ msgid "Time Shift Tool\tF5"
+#~ msgstr "Orodje za Äasovni zamik\tF5"
+#~ msgid "Multi Tool\tF6"
+#~ msgstr "VeÄorodni naÄin\tF6"
+#~ msgid "Selection to Start\tShift+Home"
+#~ msgstr "Izberi do zaÄetka\tShift+Home"
+#~ msgid "Selection to End\tShift+End"
+#~ msgstr "Izberi do konca\tShift+End"
+#~ msgid "DeleteKey\tBackspace"
+#~ msgstr "Tipka Delete\tBackspace"
+#~ msgid "DeleteKey2\tDelete"
+#~ msgstr "Tipka Delete2\tDelete"
+#~ msgid "Toggle Focused Track\tNUMPAD_ENTER"
+#~ msgstr "VkljuÄi/izkljuÄi pozornost sledi\tNUMPAD_ENTER"
+#~ msgid "Cursor Left\tLeft\tallowdup"
+#~ msgstr "Leva kazalka\tLevo "
+#~ msgid "Cursor Right\tRight\tallowdup"
+#~ msgstr "Desna kazalka\tDesno\tallowdup"
+#~ msgid "Selection Extend Left\tShift+Left\tallowdup"
+#~ msgstr "Razpostri izbor na levo\tShift+levo\tallowdup"
+#~ msgid "Selection Extend Right\tShift+Right\tallowdup"
+#~ msgstr "Razpostri izbor na desno\tShift+desno\tallowdup"
+#~ msgid "Selection Contract Right\tCtrl+Shift+Left"
+#~ msgstr "Pomanjšaj izbor z desne\tCtrl+Shift+levo"
+#~ msgid "Repeat %s\tCtrl+R"
+#~ msgstr "Ponovi %s\tCtrl+R"
+#~ msgid ""
+#~ "Sorry, VST Effects cannot be performed on stereo tracks where the "
+#~ "individual channels of the track do not match."
+#~ msgstr ""
+#~ "Oprostite, uÄinki VST se ne morejo izvesti na stereo posnetkih, kjer se "
+#~ "posamezni kanali ne skladajo."
+#~ msgid "Can't process replacing"
+#~ msgstr "Zamenjave ni mogoÄe izvesti"
+#~ msgid "VST Plug-in parameters:"
+#~ msgstr "Parametri vtiÄnika VST:"
+#~ msgid "Smart Recording"
+#~ msgstr "Pametno snemanje"
+#~ msgid "Zoom Toggle"
+#~ msgstr "Preklop poveÄave"
+#~ msgid "No"
+#~ msgstr "Ne"
+#~ msgid "Play\tSpace"
+#~ msgstr "Predvajaj\tPreslednica"
+#~ msgid "&Stop\tSpace"
+#~ msgstr "&Ustavi\tPreslednica"
+#~ msgid "Stop\tS"
+#~ msgstr "Ustavi\tS"
+#~ msgid "Pause\tP"
+#~ msgstr "Prekinitev\tP"
+#~ msgid "Record\tR"
+#~ msgstr "Posnemi\tR"
+#~ msgid "Record Append\tShift+R"
+#~ msgstr "Posnemi kot dodatek\tShift+R"
+#~ msgid "Play Looped\tL"
+#~ msgstr "Predvajaj v zanki\tZ"
+#~ msgid "Play Looped\tShift+Space"
+#~ msgstr "Predvajaj v zanki\tShift+preslednica"
+#~ msgid "Toggle Focused Track\tCtrl+Space"
+#~ msgstr "VkljuÄi/izkljuÄi pozornost sledi\tCtrl+preslednica"
+#~ msgid "Group with Wave Track"
+#~ msgstr "Združi s sledjo signalne oblike"
+#~ msgid "Clear any grouping"
+#~ msgstr "PoÄistite vse združitve v skupine"
+#~ msgid "Disallowed for some reason. Try selecting some audio first?"
+#~ msgstr "Iz neznanega razloga to ni dovoljeno. Ste prej izbrali kak zvok?"
+#~ msgid "Hello.\n"
+#~ msgstr "Živijo.\n"
+#~ msgid "WCAG2 Audio Contrast Analyzer"
+#~ msgstr "Analizator zvoÄnega kontrasta WCAG2"
+#~ msgid "Note: The 'OK' button resets time values."
+#~ msgstr "Opozorilo: Gumb 'V redu' ponastavi Äasovne vrednosti."
+#~ msgid "Measuring background"
+#~ msgstr "Merjenje ospredja"
+#~ msgid "Measuring foreground"
+#~ msgstr "Merjenje ozadja"
+#~ msgid "&Software Playthrough: Play new track while recording it"
+#~ msgstr ""
+#~ "&Programsko predvajanje skozi: Predvajaj nov posnetek med njegovim "
+#~ "snemanjem"
+#~ msgid "Show / Hide"
+#~ msgstr "Pokaži / Skrij"
+#~ msgid "Show prompt to sa&ve, even if project is empty"
+#~ msgstr "&VpraÅ¡aj za shranjevanje, tudi Äe je projekt prazen"
+#~ msgid "Display range minimum: meters and 'Waveform (dB)'"
+#~ msgstr "Prikaži najmanjši obseg: merilniki in 'Oblika signala (dB)'"
+#~ msgid "Other interface choices"
+#~ msgstr "Druge izbire vmesnika"
+#~ msgid "Real-time sample rate converter:"
+#~ msgstr "Pretvornik mere vzorÄenja v realnem Äasu:"
+#~ msgid "High-quality sample rate converter:"
+#~ msgstr "Visokokakovostni pretvornik mere vzorÄenja:"
+#~ msgid "Real-time dither:"
+#~ msgstr "Trepet v realnem Äasu:"
+#~ msgid "High-quality dither:"
+#~ msgstr "Visokokakovostni trepet:"
+#~ msgid "Conversion"
+#~ msgstr "Pretvorba"
+#~ msgid "Real-time:"
+#~ msgstr "V realnem Äasu:"
+#~ msgid "High-quality:"
+#~ msgstr "Visokokakovostno:"
+#~ msgid "FFT Size"
+#~ msgstr "Velikost FFT"
+#~ msgid "&Grayscale"
+#~ msgstr "&sivinsko"
+#~ msgid "Download..."
+#~ msgstr "Prenesi ..."
+#~ msgid "Title:"
+#~ msgstr "Naslov:"
+#~ msgid "Artist:"
+#~ msgstr "Izvajalec:"
+#~ msgid "Album:"
+#~ msgstr "Album:"
+#~ msgid "Composer:"
+#~ msgstr "Skladatelj:"
+#~ msgid "Lyricist:"
+#~ msgstr "Avtor besedila:"
+#~ msgid "Comments:"
+#~ msgstr "Komentarji:"
+#~ msgid "Encoded By:"
+#~ msgstr "Kodirnik:"
+#~ msgid "Copyright:"
+#~ msgstr "Pravice:"
+#~ msgid "Track Number:"
+#~ msgstr "Å tevilka sledi:"
+#~ msgid "Year:"
+#~ msgstr "Leto:"
+#~ msgid "Genre:"
+#~ msgstr "Zvrst:"
+#~ msgid "No Genres"
+#~ msgstr "Ni zvrsti"
+#~ msgid "Reset to Defaults"
+#~ msgstr "Ponastavi na privzeto"
+#~ msgid "Basic"
+#~ msgstr "Osnovno"
+#~ msgid "Advanced"
+#~ msgstr "Napredno"
+#~ msgid "Clea&r"
+#~ msgstr "Po&Äisti"
+#~ msgid ""
+#~ "Maximum length of attribute '%s' is %d characters. Data was truncated."
+#~ msgstr ""
+#~ "NajveÄja dolžina atributa '%s' je %d znakov. Podatki so bili okrajÅ¡ani."
+#~ msgid "Title"
+#~ msgstr "Naslov"
+#~ msgid "Artist"
+#~ msgstr "Izvajalec"
+#~ msgid "Album"
+#~ msgstr "Album"
+#~ msgid "Normalize maximum amplitude to"
+#~ msgstr "Normaliziraj najveÄjo amplitudo na"
+
+#, fuzzy
+#~ msgid "No active audio selected!"
+#~ msgstr "Izbrana ni nobena veriga"
+#~ msgid "Importing %s File..."
+#~ msgstr "Uvoz datoteke %s ..."
+#~ msgid "&Find Library..."
+#~ msgstr "&Najdi knjižnico ..."
+#~ msgid "Changing block %s\n"
+#~ msgstr "Spreminjanje bloka %s\n"
+#~ msgid "Define Foreground\tCtrl+Alt+F"
+#~ msgstr "DoloÄi ospredje\tCtrl+Alt+F"
+#~ msgid "Define Background\tCtrl+Alt+B"
+#~ msgstr "DoloÄi ozadje\tCtrl+Alt+B"
+#~ msgid "Press F2 or double click to edit."
+#~ msgstr "Pritisnite F2 ali dvokliknite za urejanje."
+#~ msgid "Fail"
+#~ msgstr "Ni uspelo"
+#~ msgid "Before you open this tool,"
+#~ msgstr "Preden odprete to orodje,"
+#~ msgid " Ctrl+Alt+F sets the 'foreground' times."
+#~ msgstr " Ctrl+Alt+F doloÄi Äase 'ospredja'."
+#~ msgid " Ctrl+Alt+B sets the 'background' times."
+#~ msgstr " Ctrl+Alt+B doloÄi Äase 'ozadja'."
+#~ msgid "WCAG Information on web"
+#~ msgstr "Informacije o WCAG na spletu"
+#~ msgid ""
+#~ "No tracks are selected! Use Ctrl-A (Select All)\n"
+#~ "Choose Export... to export all tracks."
+#~ msgstr ""
+#~ "Nobena sled ni izbrana! Uporabite Ctrl-A (Izberi vse)\n"
+#~ "Izberite Izvozi ..., da izvozite vse sledi."
+#~ msgid ""
+#~ "<p>You don't appear to have Audacity help files on your machine. Either "
+#~ "<a href=\"http://audacity.sourceforge.net/help/documentation\">download</"
+#~ "a> the help files and then access them again from Audacity by clicking "
+#~ "<i>Help</i> then <i>Index</i>, or click <a href=\"http://www.audacityteam."
+#~ "org/manual/index.php?title=Main_Page\">here</a> to read the full Manual "
+#~ "online."
+#~ msgstr ""
+#~ "<p>Kot kaže, na raÄunalniku nimate datotek pomoÄi. <a href=\"http://"
+#~ "audacity.sourceforge.net/help/documentation\">Prenesete si</a> lahko "
+#~ "datoteke pomoÄi in do njih dostopate iz Audacity s klikom <i>PomoÄ</i> in "
+#~ "nato <i>Kazalo</i> ali pa kliknite <a href=\"http://www.audacityteam.org/"
+#~ "manual/index.php?title=Main_Page\">sem</a>, da si preberete spletno pomoÄ."
+#~ msgid "Disj&oin\tCtrl+Alt+J"
+#~ msgstr "&Razdruži\tCtrl+Alt+J"
+#~ msgid "Select&..."
+#~ msgstr "&Izberi ..."
+#~ msgid "Raw"
+#~ msgstr "Surovo"
+#~ msgid "Enter a sample rate in Hz (per second) between 1 and 100000:"
+#~ msgstr "Vnesite frekvenco vzorÄenja v Hz (na sekundo) med 1 in 100000:"
+#~ msgid "Invalid rate."
+#~ msgstr "Nepravilna frekvenca."
+#~ msgid "Message"
+#~ msgstr "SporoÄilo"
+#~ msgid "Frequency (Hz): from"
+#~ msgstr "Frekvenca (Hz): od"
+#~ msgid "Length (seconds): from"
+#~ msgstr "Dožina (v sekundah): od"
+#~ msgid "Dynamic Range Compressor by Dominic Mazzoni"
+#~ msgstr "Kompresor dinamiÄnega obsega Dominica Mazzonija"
+#~ msgid "Leveller by Lynn Allan"
+#~ msgstr "Izravnalnik avtorja Lynna Allana"
+#~ msgid "Equalize soft and loud sections"
+#~ msgstr "IzenaÄi tihe in glasne odseke"
+#~ msgid "Normalize by Dominic Mazzoni"
+#~ msgstr "Normaliziraj avtorja Dominica Mazzonija"
+#~ msgid "Phaser by Nasca Octavian Paul"
+#~ msgstr "Faznik Nasca Octaviana Paula"
+#~ msgid "DRY"
+#~ msgstr "SUHO"
+#~ msgid "WET"
+#~ msgstr "VLAŽNO"
+#~ msgid "Repeat by Dominic Mazzoni && Vaughan Johnson"
+#~ msgstr "Ponavljalec, Dominic Mazzoni && Vaughan Johnson"
+#~ msgid "%d minutes, %d seconds"
+#~ msgstr "%d minut, %d sekund"
+#~ msgid "Wahwah by Nasca Octavian Paul"
+#~ msgstr "Wah-wah Nasca Octaviana Paula"
+#~ msgid "E&xport"
+#~ msgstr "I&zvozi"
+#~ msgid ""
+#~ "Audacity had to make a guess at the type of file.\n"
+#~ "The Audio may be bogus.\n"
+#~ "\n"
+#~ "If the audio is bogus, try renaming the file\n"
+#~ "so that it has the correct extension before opening it."
+#~ msgstr ""
+#~ "Audacity je moral uganiti vrsto datoteke.\n"
+#~ "Zvoki bodo morda napaÄni.\n"
+#~ "\n"
+#~ "Äe se je to zgodilo, poskusite preimenovati\n"
+#~ "datoteko, da bo imela ustrezno konÄnico."
+#~ msgid "Error parsing Allegro file."
+#~ msgstr "Napaka pri branju datoteke Allegro."
+#~ msgid "Error parsing MIDI file."
+#~ msgstr "Napaka pri branju datoteke MIDI."
+#~ msgid ""
+#~ "&Software Playthrough: Play new track while recording it (uncheck when "
+#~ "recording \"stereo mix\")"
+#~ msgstr ""
+#~ "&Programsko predvajanje skozi: Predvajaj nov posnetek med njegovim "
+#~ "snemanjem (izkljuÄite pri \"stereo meÅ¡anju\")"
+#~ msgid "Hold recorded data in memory until recording is stopped"
+#~ msgstr "Obdrži posnete podatke v pomnilniku do zakljuÄka snemanja"
+#~ msgid "WaveformDisplay"
+#~ msgstr "PrikažiOblikoSignala"
+#~ msgid "WaveformDBDisplay"
+#~ msgstr "PrikažiOblikoSignalaDB"
+#~ msgid "SpectrumDisplay"
+#~ msgstr "PrikažiSpekter"
+#~ msgid "SpectrumLogDisplay"
+#~ msgstr "PrikažiLogSpekter"
+#~ msgid "PitchDisplay"
+#~ msgstr "PrikažiVišinoTona"
+#~ msgid "Pause Recording on Silence"
+#~ msgstr "ZaÄasno ustavi snemanje ob tiÅ¡ini"
+#~ msgid ""
+#~ "You have chosen not to recover any projects. You will not be able to "
+#~ "recover those projects later if you change your mind. Do you really want "
+#~ "to continue without recovering?"
+#~ msgstr ""
+#~ "OdloÄili ste se, da ne boste obnovili nobenega projekta. Teh projektov "
+#~ "kasneje ne boste mogli obnovi, Äe si premislite. ResniÄno želite "
+#~ "nadaljevati brez obnovitve?"
+#~ msgid "Really not recover projects?"
+#~ msgstr "ResniÄno ne želite obnoviti projektov?"
+#~ msgid "Export and Saving"
+#~ msgstr "Izvoz in shranjevanje"
+#~ msgid ""
+#~ "If you want to burn your work to an audio CD for standalone CD players, "
+#~ "you must first [[export|export as WAV or AIFF]] and then burn that file "
+#~ "to CD with a CD burning program like iTunes - for more help, see [[wiki:"
+#~ "How to burn CDs|How to burn CDs]].<br><br>"
+#~ msgstr ""
+#~ "Äe želite zapeÄi svoje delo na zvoÄni CD za navadne predvajalnike CD, "
+#~ "morate posnetek najprej [[export|izvoziti kot WAV ali AIFF]], nato pa to "
+#~ "datoteko zapecite na CD s programom za peko CD-jev, kot je iTunes - za "
+#~ "veÄ pomoÄi si oglejte [[wiki:How to burn CDs|Kako peÄemo CD-je]].<br><br>"
+#~ msgid "Draw currently only works with linear-view waveforms."
+#~ msgstr ""
+#~ "Risanje trenutno deluje le z linearno prikazanimi signalnimi oblikami."
+#~ msgid "DTMF duration:"
+#~ msgstr "Trajanje DTMF:"
+#~ msgid "Noise duration"
+#~ msgstr "Trajanje šuma"
+#~ msgid "Edit the metadata for the FLAC file"
+#~ msgstr "Uredi metapodatke za datoteko FLAC"
+#~ msgid "Edit the ID3 tags for the MP2 file"
+#~ msgstr "Spremeni oznake ID3 za datoteko MP2"
+#~ msgid "0, 220-260 kbps (Best Quality)"
+#~ msgstr "0, 220-260 k/ps (najboljša kakovost)"
+#~ msgid "1, 200-250 kbps"
+#~ msgstr "1, 200-250 kb/s"
+#~ msgid "2, 170-210 kbps"
+#~ msgstr "2, 170-210 kb/s"
+#~ msgid "3, 155-195 kbps"
+#~ msgstr "3, 155-195 kb/s"
+#~ msgid "4, 145-185 kbps"
+#~ msgstr "4, 145-185 kb/s"
+#~ msgid "5, 110-150 kbps"
+#~ msgstr "5, 110-150 kb/s"
+#~ msgid "6, 95-135 kbps"
+#~ msgstr "6, 95-135 kb/s"
+#~ msgid "7, 80-120 kbps"
+#~ msgstr "7, 80-120 kb/s"
+#~ msgid "8, 65-105 kbps"
+#~ msgstr "8, 65-105 kb/s"
+#~ msgid "Insane, 320 kbps"
+#~ msgstr "noro, 320 kb/s"
+#~ msgid "Extreme, 220-260 kbps"
+#~ msgstr "izjemno, 220-260 kb/s"
+#~ msgid "Standard, 170-210 kbps"
+#~ msgstr "navadno, 170-210 kb/s"
+#~ msgid "Medium, 145-185 kbps"
+#~ msgstr "srednje, 145-185 kb/s"
+#~ msgid "Edit the ID3 tags for the MP3 file"
+#~ msgstr "Spremeni ID3 zapis v tej MP3 datoteki"
+#~ msgid "Edit the metadata"
+#~ msgstr "Uredi metapodatke"
+#~ msgid "Edit the metadata for the OGG file"
+#~ msgstr "Uredi metapodatke za datoteko OGG"
+#~ msgid "Specify PCM Options"
+#~ msgstr "DoloÄite možnosti PCM"
+#~ msgid "Audio Files"
+#~ msgstr "ZvoÄne datoteke"
+#~ msgid "&Download Free Copy of LAME"
+#~ msgstr "&Prenesi brezplaÄno kopijo LAME"
+#~ msgid "Language"
+#~ msgstr "Jezik"
+#~ msgid "Minimum of dB mode display range"
+#~ msgstr "NajmanjÅ¡i dB naÄin prikazanega obmoÄja"
+
diff --git a/locale/sv.po b/locale/sv.po
index 972d940..89eb50a 100644
--- a/locale/sv.po
+++ b/locale/sv.po
@@ -11,9 +11,7 @@ msgstr "Project-Id-Version: Audacity 1.3.4\n"
"X-Poedit-Country: SWEDEN\n"
"X-Poedit-SourceCharset: utf-8\n"
-#: AboutDialog.cpp:142
-#: AudacityApp.cpp:749
-#: Menus.cpp:745
+#: AboutDialog.cpp:142 AudacityApp.cpp:749 Menus.cpp:745
msgid "&About Audacity..."
msgstr "&Om Audacity..."
@@ -26,16 +24,15 @@ msgid "Audacity is a free program written by a team of volunteer <a href=\"http:
msgstr ""
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#. i18n-hint: The translation of "translator_credits" will appear
-#: AboutDialog.cpp:192
-#: AboutDialog.cpp:194
+#: AboutDialog.cpp:192 AboutDialog.cpp:194
msgid "translator_credits"
msgstr "Lars \"musselasse\" Carlsson för översättning till svenska"
@@ -78,7 +75,7 @@ msgid "Special thanks:"
msgstr "Speciellt tack till:"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
msgstr ""
#: AboutDialog.cpp:254
@@ -86,14 +83,11 @@ msgid "Audacity"
msgstr "Audacity"
#. i18n-hint: Information about when audacity was compiled
-#: AboutDialog.cpp:299
-#: AboutDialog.cpp:312
-#: AboutDialog.cpp:468
+#: AboutDialog.cpp:299 AboutDialog.cpp:312 AboutDialog.cpp:468
msgid "Build Information"
msgstr "Build Information"
-#: AboutDialog.cpp:305
-#: effects/AvcCompressor.cpp:674
+#: AboutDialog.cpp:305 effects/AvcCompressor.cpp:674
msgid "Enabled"
msgstr "PÃ¥"
@@ -106,33 +100,27 @@ msgid "File Format Support"
msgstr "Filformat support"
#. i18n-hint: This is what the library (libmad) does - imports MP3 files
-#: AboutDialog.cpp:326
-#: AboutDialog.cpp:328
+#: AboutDialog.cpp:326 AboutDialog.cpp:328
msgid "MP3 Importing"
msgstr "MP3 Importerar"
-#: AboutDialog.cpp:335
-#: AboutDialog.cpp:338
+#: AboutDialog.cpp:335 AboutDialog.cpp:338
msgid "Ogg Vorbis Import and Export"
msgstr "Ogg Vorbis importera och exportera"
-#: AboutDialog.cpp:342
-#: AboutDialog.cpp:345
+#: AboutDialog.cpp:342 AboutDialog.cpp:345
msgid "ID3 tag support"
msgstr "ID3 tag support"
-#: AboutDialog.cpp:352
-#: AboutDialog.cpp:355
+#: AboutDialog.cpp:352 AboutDialog.cpp:355
msgid "FLAC import and export"
msgstr "FLAC importera och exportera"
-#: AboutDialog.cpp:360
-#: AboutDialog.cpp:363
+#: AboutDialog.cpp:360 AboutDialog.cpp:363
msgid "MP2 export"
msgstr "MP2 exportera"
-#: AboutDialog.cpp:368
-#: AboutDialog.cpp:371
+#: AboutDialog.cpp:368 AboutDialog.cpp:371
msgid "Import via QuickTime"
msgstr "Importera via QuickTime"
@@ -141,15 +129,12 @@ msgstr "Importera via QuickTime"
msgid "Core Libraries"
msgstr "Core Libraries"
-#: AboutDialog.cpp:384
-#: AboutDialog.cpp:387
-#: AboutDialog.cpp:390
+#: AboutDialog.cpp:384 AboutDialog.cpp:387 AboutDialog.cpp:390
#: AboutDialog.cpp:392
msgid "Sample rate conversion"
msgstr "Samplingsfrekvens konvertering"
-#: AboutDialog.cpp:397
-#: AboutDialog.cpp:400
+#: AboutDialog.cpp:397 AboutDialog.cpp:400
msgid "Audio playback and recording"
msgstr "LJud uppspelning och inspelning"
@@ -157,24 +142,17 @@ msgstr "LJud uppspelning och inspelning"
msgid "Features"
msgstr "Innehåll"
-#: AboutDialog.cpp:417
-#: AboutDialog.cpp:420
-#: AboutDialog.cpp:425
-#: AboutDialog.cpp:428
-#: AboutDialog.cpp:433
-#: AboutDialog.cpp:436
-#: AboutDialog.cpp:441
-#: AboutDialog.cpp:444
+#: AboutDialog.cpp:417 AboutDialog.cpp:420 AboutDialog.cpp:425
+#: AboutDialog.cpp:428 AboutDialog.cpp:433 AboutDialog.cpp:436
+#: AboutDialog.cpp:441 AboutDialog.cpp:444
msgid "Plug-in support"
msgstr "Plug-in support"
-#: AboutDialog.cpp:449
-#: AboutDialog.cpp:452
+#: AboutDialog.cpp:449 AboutDialog.cpp:452
msgid "Sound card mixer support"
msgstr "Ljudkort mixer support"
-#: AboutDialog.cpp:457
-#: AboutDialog.cpp:460
+#: AboutDialog.cpp:457 AboutDialog.cpp:460
msgid "Pitch and Tempo Change support"
msgstr "Tonhöjd och tempoändring support"
@@ -182,8 +160,7 @@ msgstr "Tonhöjd och tempoändring support"
msgid "Program build date: "
msgstr "Programmet skapat den:"
-#: AboutDialog.cpp:475
-#: AboutDialog.cpp:477
+#: AboutDialog.cpp:475 AboutDialog.cpp:477
msgid "Build type:"
msgstr "Build type:"
@@ -208,16 +185,12 @@ msgstr "Inställningar mapp:"
msgid "GPL License"
msgstr "GPL licens"
-#: AudacityApp.cpp:468
-#: Project.cpp:1761
+#: AudacityApp.cpp:468 Project.cpp:1761
#, c-format
msgid "%s is already open in another window."
msgstr "%s är redan öppnad i ett annat fönster"
-#: AudacityApp.cpp:470
-#: Project.cpp:1763
-#: Project.cpp:1868
-#: Project.cpp:2012
+#: AudacityApp.cpp:470 Project.cpp:1763 Project.cpp:1868 Project.cpp:2012
#: Project.cpp:2114
msgid "Error opening project"
msgstr "Fel när projektet öppnades"
@@ -243,20 +216,28 @@ msgstr "Input mätare"
msgid "Output Meter"
msgstr "Output mätare"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#: AudacityApp.cpp:751
-#: Menus.cpp:478
-msgid "&Preferences...\tCtrl+,"
-msgstr "&Inställningar...\tCtrl+,"
+#: Menus.cpp:164
+msgid "&New"
+msgstr "&Ny"
+
+#: Menus.cpp:166
+msgid "&Open..."
+msgstr "&Ãppna..."
-#: AudacityApp.cpp:833
-#: AudacityApp.cpp:910
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
+
+#: AudacityApp.cpp:751 Menus.cpp:478
+msgid "&Preferences..."
+msgstr "&Inställningar..."
+
+#: AudacityApp.cpp:833 AudacityApp.cpp:910
#, c-format
msgid "Using block size of %ld\n"
msgstr "Använder blockstorlek %ld\n"
-#: AudacityApp.cpp:855
-#: AudacityApp.cpp:925
+#: AudacityApp.cpp:855 AudacityApp.cpp:925
#, c-format
msgid "Unknown command line option: %s\n"
msgstr "Okänd command line option: %s\n"
@@ -368,18 +349,16 @@ msgstr "Fel:"
msgid "Error Initializing Audio"
msgstr "Fel vid start av ljud"
+#: AudioIO.cpp:1225
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
+"Audacity has brought it back to start at zero.\n"
+"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
+msgstr ""
+
#: AudioIO.cpp:1208
msgid "Latency problem"
msgstr "Latency problem"
-#: AudioIO.cpp:1208
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
-"Audacity has brought it back to start at zero.\n"
-"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
-msgstr "Inställningarna för latency har orsakat att det inspelade ljudet är gömt\n"
-"innan noll. Audacity har flyttat början på ljudet till noll.\n"
-"Du kanske måste använda Time Shift-verktyget (<---> eller F5) för att dra det till rätt plats. "
-
#: AutoRecovery.cpp:54
msgid "Automatic Crash Recovery"
msgstr "Automatiskt återskapande vid krasch"
@@ -394,8 +373,7 @@ msgstr "Några projekt blev inte sparade rätt förra gången Audacity kördes.\
msgid "Recoverable projects"
msgstr "Projekt möjliga att återskapa"
-#: AutoRecovery.cpp:78
-#: Tags.cpp:2032
+#: AutoRecovery.cpp:78 Tags.cpp:2032
msgid "Name"
msgstr "Namn"
@@ -425,38 +403,25 @@ msgstr "Ãr du säker pÃ¥ att du inte vill Ã¥terkspa nÃ¥gra projekt?\n"
msgid "Confirm?"
msgstr "Bekräfta?"
-#: AutoRecovery.cpp:146
-#: AutoRecovery.cpp:183
+#: AutoRecovery.cpp:146 AutoRecovery.cpp:183
msgid "Could not enumerate files in auto save directory"
msgstr "Kunde inte räkna upp filerna i autosparmappen"
-#: AutoRecovery.cpp:147
-#: AutoRecovery.cpp:184
-#: Menus.cpp:2575
-#: Menus.cpp:4514
-#: Project.cpp:1971
-#: Project.cpp:3343
-#: Project.cpp:3422
-#: WaveTrack.cpp:556
-#: WaveTrack.cpp:575
-#: WaveTrack.cpp:1689
-#: effects/Effect.cpp:436
-#: export/ExportMP2.cpp:230
-#: prefs/DirectoriesPrefs.cpp:189
-#: prefs/KeyConfigPrefs.cpp:245
-#: toolbars/ControlToolBar.cpp:532
+#: AutoRecovery.cpp:147 AutoRecovery.cpp:184 Menus.cpp:2575 Menus.cpp:4514
+#: Project.cpp:1971 Project.cpp:3343 Project.cpp:3422 WaveTrack.cpp:556
+#: WaveTrack.cpp:575 WaveTrack.cpp:1689 effects/Effect.cpp:436
+#: export/ExportMP2.cpp:230 prefs/DirectoriesPrefs.cpp:189
+#: prefs/KeyConfigPrefs.cpp:245 toolbars/ControlToolBar.cpp:532
#: toolbars/ControlToolBar.cpp:846
msgid "Error"
msgstr "Fel"
-#: BatchCommandDialog.cpp:56
-#: BatchCommandDialog.cpp:60
+#: BatchCommandDialog.cpp:56 BatchCommandDialog.cpp:60
#: BatchCommandDialog.cpp:61
msgid "Select Command"
msgstr "Välj kommando"
-#: BatchCommandDialog.cpp:80
-#: BatchProcessDialog.cpp:454
+#: BatchCommandDialog.cpp:80 BatchProcessDialog.cpp:454
#: prefs/KeyConfigPrefs.cpp:142
msgid "&Command"
msgstr "&Kommando"
@@ -465,8 +430,7 @@ msgstr "&Kommando"
msgid "&Edit Parameters"
msgstr "&Ãndra parametrar"
-#: BatchCommandDialog.cpp:89
-#: BatchProcessDialog.cpp:455
+#: BatchCommandDialog.cpp:89 BatchProcessDialog.cpp:455
msgid "&Parameters"
msgstr "&Parametrar"
@@ -512,8 +476,7 @@ msgstr "Lägg till %s med parameter(s)\n"
"\n"
"%s"
-#: BatchCommands.cpp:675
-#: BatchCommands.cpp:680
+#: BatchCommands.cpp:675 BatchCommands.cpp:680
msgid "Test Mode"
msgstr "Test läge"
@@ -522,8 +485,7 @@ msgstr "Test läge"
msgid "Apply %s"
msgstr "Lägg till %s"
-#: BatchProcessDialog.cpp:60
-#: BatchProcessDialog.cpp:70
+#: BatchProcessDialog.cpp:60 BatchProcessDialog.cpp:70
#: BatchProcessDialog.cpp:71
msgid "Apply Chain"
msgstr "Lägg till kedja"
@@ -548,24 +510,15 @@ msgstr "Lägg till nuvarande &projekt"
msgid "Apply to &Files..."
msgstr "Lägg till &filer..."
-#: BatchProcessDialog.cpp:108
-#: BatchProcessDialog.cpp:247
-#: Tags.cpp:2071
-#: Tags.cpp:2075
-#: Tags.cpp:2375
-#: Tags.cpp:2379
-#: UploadDialog.cpp:180
-#: effects/AvcCompressor.cpp:732
-#: effects/ChangeLength.cpp:183
-#: effects/SpikeCleaner.cpp:188
-#: effects/VST/VSTEffect.cpp:446
-#: effects/audiounits/AudioUnitEffect.cpp:882
-#: effects/vamp/VampEffect.cpp:411
+#: BatchProcessDialog.cpp:108 BatchProcessDialog.cpp:247 Tags.cpp:2071
+#: Tags.cpp:2075 Tags.cpp:2375 Tags.cpp:2379 UploadDialog.cpp:180
+#: effects/AvcCompressor.cpp:732 effects/ChangeLength.cpp:183
+#: effects/SpikeCleaner.cpp:188 effects/VST/VSTEffect.cpp:446
+#: effects/audiounits/AudioUnitEffect.cpp:882 effects/vamp/VampEffect.cpp:411
msgid "&Cancel"
msgstr "&Avbryt"
-#: BatchProcessDialog.cpp:146
-#: BatchProcessDialog.cpp:191
+#: BatchProcessDialog.cpp:146 BatchProcessDialog.cpp:191
msgid "No chain selected"
msgstr "Ingen kedja vald"
@@ -602,8 +555,7 @@ msgstr "Lägger till..."
msgid "File"
msgstr "Arkiv"
-#: BatchProcessDialog.cpp:356
-#: BatchProcessDialog.cpp:360
+#: BatchProcessDialog.cpp:356 BatchProcessDialog.cpp:360
#: BatchProcessDialog.cpp:361
msgid "Edit Chains"
msgstr "Ãndra kedjor"
@@ -612,19 +564,12 @@ msgstr "Ãndra kedjor"
msgid "&Chains"
msgstr "&Kedjor"
-#: BatchProcessDialog.cpp:435
-#: Tags.cpp:815
-#: Tags.cpp:1455
-#: Tags.cpp:2055
+#: BatchProcessDialog.cpp:435 Tags.cpp:815 Tags.cpp:1455 Tags.cpp:2055
msgid "&Add"
msgstr "&Addera"
-#: BatchProcessDialog.cpp:436
-#: LabelDialog.cpp:126
-#: Tags.cpp:816
-#: Tags.cpp:1456
-#: Tags.cpp:2056
-#: TrackPanel.cpp:4201
+#: BatchProcessDialog.cpp:436 LabelDialog.cpp:126 Tags.cpp:816 Tags.cpp:1456
+#: Tags.cpp:2056 TrackPanel.cpp:4201
msgid "&Remove"
msgstr "&Radera"
@@ -638,8 +583,8 @@ msgstr "K&edja (dubbelklicka eller tryck mellanslag för att ändra)"
#. i18n-hint: This is the number of the command in the list
#: BatchProcessDialog.cpp:453
-msgid "No"
-msgstr "Nej"
+msgid "Num"
+msgstr ""
#: BatchProcessDialog.cpp:459
msgid "&Insert"
@@ -728,8 +673,7 @@ msgstr "Diskutrymme"
msgid "Copy Selected Audio Into Project"
msgstr "Kopiera vält ljud till projekt"
-#: Dependencies.cpp:304
-#: Dependencies.cpp:410
+#: Dependencies.cpp:304 Dependencies.cpp:410
msgid "Cancel Save"
msgstr "Avbryt spara"
@@ -741,8 +685,7 @@ msgstr "Kopiera inte ljud"
msgid "Copy All Audio into Project (Safer)"
msgstr "Kopiera allt ljud till projekt (säkrare)"
-#: Dependencies.cpp:317
-#: Dependencies.cpp:322
+#: Dependencies.cpp:317 Dependencies.cpp:322
msgid "Ask me"
msgstr "Fråga mig"
@@ -776,9 +719,7 @@ msgid "Warning: there is very little free disk space left on this volume.\n"
msgstr "Varning: För lite utrymme kvar i denna katalog.\n"
" Välj annat utrymme för de temporära filerna i Inställningar."
-#: DirManager.cpp:221
-#: DirManager.cpp:251
-#: DirManager.cpp:332
+#: DirManager.cpp:221 DirManager.cpp:251 DirManager.cpp:332
msgid "Progress"
msgstr "Progress"
@@ -831,8 +772,7 @@ msgstr "Kan ej namnändra '%s' till '%s'"
msgid "Changed block %s to new alias name\n"
msgstr ""
-#: DirManager.cpp:1115
-#: DirManager.cpp:1403
+#: DirManager.cpp:1115 DirManager.cpp:1403
msgid "Inspecting project file data..."
msgstr "Undersöker data i projektfil..."
@@ -883,14 +823,9 @@ msgstr "Fortsätt utan att radera, arbeta tyst kring extra filer"
msgid "Close project immediately with no changes"
msgstr "Stäng projekt omedelbart utan ändringar"
-#: DirManager.cpp:1228
-#: DirManager.cpp:1263
-#: DirManager.cpp:1309
-#: DirManager.cpp:1351
-#: export/Export.cpp:490
-#: export/Export.cpp:507
-#: export/Export.cpp:526
-#: widgets/Warning.cpp:55
+#: DirManager.cpp:1228 DirManager.cpp:1263 DirManager.cpp:1309
+#: DirManager.cpp:1351 export/Export.cpp:490 export/Export.cpp:507
+#: export/Export.cpp:526 widgets/Warning.cpp:55
msgid "Warning"
msgstr "Varning"
@@ -913,14 +848,11 @@ msgstr "Project check detected %d input file[s] being used in place\n"
msgid "Replace missing data with silence [permanent upon save]"
msgstr "Ersätt saknad data med tystnad [permanent vid sparande]"
-#: DirManager.cpp:1260
-#: DirManager.cpp:1348
+#: DirManager.cpp:1260 DirManager.cpp:1348
msgid "Temporarily replace missing data with silence [this session only]"
msgstr "Ersätt temporärt saknad data med tystnad [gäller bara denna inspelning]"
-#: DirManager.cpp:1261
-#: DirManager.cpp:1307
-#: DirManager.cpp:1349
+#: DirManager.cpp:1261 DirManager.cpp:1307 DirManager.cpp:1349
msgid "Close project immediately with no further changes"
msgstr "Stäng omedelbart projekt utan ytterligare ändringar"
@@ -990,11 +922,11 @@ msgstr "Fyrkant"
msgid "FFmpeg support not compiled in"
msgstr ""
-#: FFmpeg.cpp:101
+#: FFmpeg.cpp:103
msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
#: FFmpeg.cpp:104
@@ -1050,11 +982,12 @@ msgstr ""
msgid "FFmpeg not found"
msgstr ""
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
#: FFmpeg.h:109
@@ -1077,8 +1010,7 @@ msgstr ""
msgid "Frequency Analysis"
msgstr "Frekvens analys"
-#: FreqWindow.cpp:140
-#: TrackPanel.cpp:563
+#: FreqWindow.cpp:140 TrackPanel.cpp:563
msgid "Spectrum"
msgstr "Spektrum"
@@ -1104,8 +1036,7 @@ msgstr "Cepstrum"
msgid "Algorithm"
msgstr "Algorithm:"
-#: FreqWindow.cpp:168
-#: HistoryWindow.cpp:79
+#: FreqWindow.cpp:168 HistoryWindow.cpp:79
msgid "Size"
msgstr "Storlek"
@@ -1130,10 +1061,7 @@ msgstr "Log frekvens"
msgid "Axis"
msgstr ""
-#: FreqWindow.cpp:206
-#: LabelDialog.cpp:128
-#: Menus.cpp:204
-#: Menus.cpp:233
+#: FreqWindow.cpp:206 LabelDialog.cpp:128 Menus.cpp:204 Menus.cpp:233
msgid "&Export..."
msgstr "&Exportera..."
@@ -1141,44 +1069,53 @@ msgstr "&Exportera..."
msgid "Export"
msgstr "Exportera"
-#: FreqWindow.cpp:209
-#: widgets/ErrorDialog.cpp:159
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
+#: FreqWindow.cpp:209 widgets/ErrorDialog.cpp:159
msgid "Close"
msgstr "Stäng"
-#: FreqWindow.cpp:272
-#: FreqWindow.cpp:402
-#: effects/AutoDuck.cpp:489
-#: effects/AutoDuck.cpp:523
-#: effects/AutoDuck.cpp:791
-#: effects/Compressor.cpp:352
-#: effects/Compressor.cpp:360
-#: effects/Equalization.cpp:1109
-#: effects/Equalization.cpp:1111
-#: effects/Equalization.cpp:1119
-#: effects/Equalization.cpp:1185
-#: effects/Equalization.cpp:1394
-#: effects/Equalization.cpp:1405
-#: effects/Normalize.cpp:365
-#: widgets/Meter.cpp:380
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr ""
+
+#: FreqWindow.cpp:272 FreqWindow.cpp:402 effects/AutoDuck.cpp:489
+#: effects/AutoDuck.cpp:523 effects/AutoDuck.cpp:791
+#: effects/Compressor.cpp:352 effects/Compressor.cpp:360
+#: effects/Equalization.cpp:1109 effects/Equalization.cpp:1111
+#: effects/Equalization.cpp:1119 effects/Equalization.cpp:1185
+#: effects/Equalization.cpp:1394 effects/Equalization.cpp:1405
+#: effects/Normalize.cpp:365 widgets/Meter.cpp:380
msgid "dB"
msgstr "dB"
#. i18n-hint: This is the abbreviation for "Hertz", or
-#: FreqWindow.cpp:287
-#: FreqWindow.cpp:442
-#: effects/Equalization.cpp:1150
-#: effects/Equalization.cpp:1181
-#: import/ImportRaw.cpp:416
+#: FreqWindow.cpp:287 FreqWindow.cpp:442 effects/Equalization.cpp:1150
+#: effects/Equalization.cpp:1181 import/ImportRaw.cpp:416
msgid "Hz"
msgstr "Hz"
+#: Menus.cpp:3425
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "För att rita upp ett spektrum måste alla valda spår ha samma samplingsfrekvens."
+
+#: Menus.cpp:3451
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "För mycket ljud är valt. Bara de första %.1f sekunderna av ljud blir analyserade."
+
#: FreqWindow.cpp:386
msgid "Not enough data selected."
msgstr "Inte tillräckligt mycket data valt."
-#: FreqWindow.cpp:450
-#: effects/AutoDuck.cpp:793
+#: FreqWindow.cpp:450 effects/AutoDuck.cpp:793
msgid "s"
msgstr "s"
@@ -1200,12 +1137,8 @@ msgstr "spectrum.txt"
msgid "Export Spectral Data As:"
msgstr "Exportera spektraldata som:"
-#: FreqWindow.cpp:1079
-#: LabelDialog.cpp:599
-#: Menus.cpp:2207
-#: Project.cpp:2441
-#: Project.cpp:3395
-#: prefs/KeyConfigPrefs.cpp:180
+#: FreqWindow.cpp:1079 LabelDialog.cpp:599 Menus.cpp:2207 Project.cpp:2441
+#: Project.cpp:3395 prefs/KeyConfigPrefs.cpp:180
msgid "Couldn't write to file: "
msgstr "Kunde inte skriva till fil:"
@@ -1217,6 +1150,21 @@ msgstr "Frekvens (Hz)\tNivå (dB)"
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "Lag (sekunder)\tFrekvens (Hz)\tNivå"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr ""
+
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr ""
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr "Till [[welcome|Välkomstsidan]]"
@@ -1294,7 +1242,8 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr "<p><b>För att spela in:</b> Ställ in inspelningsenhet och input källa, justera inspelningsnivån, tryck sedan på Röd knapp.</b></p></p> 1)[[inputdevice|Välj inspelningsenhet]] antingen i <i>Ljud In/Ut fliken i Inställningar</i> eller i <i>Enhetspanel</i>. I Ljud In/Ut-fliken kan du välja stereoinspelning.<br> 2) [[inputsource|Välj inputkälla]] för rätt enhet (ex. mikrofon eller line-in) i rullgardinsmenyn för <i>Mixerpanel</i>, eller (på vissa system) på Inspelningsenhet i <i>Ljud In/Ut-flik i Inställningar</i> eller i <i>Enhetspanel</i>.<br> 3) [[inputlevel|Justera inputnivån]] med hjälp av reglaget på <i>Mixerpanelr</i>. Ställ alltid in rätt nivå innan inspelningen för att undvika brus eller distorsion. </p><p> Mer hjälp hittar du på: \"Recording\" <a href=\"http://audacity.sourceforge.net/help/faq\">FAQs</a>, vår lathund <a href=\"http://www.audacityteam.org/manual/index.php?title=Tutorial_-_Your_First_Recording\"> Your First Recording</a> in the <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">Manual</a>, and our Wiki [[wiki:Recording_Tips|Recording Tips]] and [[wiki:Troubleshooting_Recordings|Troubleshooting Recordings]] pages. </p><br><br>"
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+#, fuzzy
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
msgstr "<p>Inputenheten är det aktuella fysiska ljudkortet som du spelar in med. Det är valt vid \"Inspelning Enhet\" i <i>Ljud In/Ut-menyn i Inställningar</i>, På Windows och Linux, Inställningar hittar du längst ner på <i>Redigerat</i> -menyn. På en Mac, finns det i <i>Audacity</i> menyn. Du kan alltså bekvämt välja inspelningsenhet i <i>Enhetspanel</i>, som du visar under <i>Visa > Paneler...</i>. </p><p> Grundinställningen är att Audacity anvder det ljudenhet som systemet använder, (vanligtvis ditt inbyggda ljudkort), så oftast är det inte aktuellt att byta ljudenhet. På Windows, den nuvarande enheten kan väljas som \"Microsoft Sound Mapper\". Om du spelar in från en extern USB eller firewireenhet ex. som en USB-skivspelare, välj då enhetens namn som inspelningsenhet efter att du anslutet det. </p><p> Tillbaka till [[record|Spela in ljud]] <br></p>"
#: HelpText.cpp:244
@@ -1318,7 +1267,8 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr "För att kunna lyssna på ditt arbete i andra mediaprogram, exportera det som en ljudfil som WAV eller MP3 (vissa format är [[wma-proprietary|inte supportade]]). [[save|Spara som Audacityprojekt]] skapar en projektfil (med tillhörande _data-mapp) innehållande alla dina redigerade spår, så du kan återvända och fortsätta arbetet senare. Lägg märke till att andra program inte kan läsa Audacity-projektfiler. </p><p> För att exportera, klicka på <i>Arkiv > Exportera</i> välj sedan det filformat du vill exportera i \"Filformat\" menyn. För att [[burncd|bränn en CD]] för externa CD-spelare, välj WAV eller AIFF. För att exportera som MP3, [[wiki:Lame_Installation|Lame Encoder]] måste vara installerad. </p><p> <i>Arkiv > Exportera markering</i> exporterar bara en markerad yta av ljudspåret. <i>Välj Arkiv > Exportera till flera ljudfiler</i> för att exportera flera ljudfiler på samma gång, antingen en för varje ljudspår, eller en för varje etikett i ljudspåret. <i>Spår > Lägg till etikett vid markering</i> låter dig [[wiki:Splitting_recordings_into_separate_tracks|dela spåren]] från ett skivalbum för att exporteras som separata ljudfiler. </p><br><br>"
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+#, fuzzy
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
msgstr "<p>Audacity <b>kan inte</b> [[play|spela upp]] eller [[export|exportera]] filer i <b>WMA, RealAudio, Shorten (SHN)</b> eller de flesta licensierade format, på grund av licenser och patent. På en Mac-dator, ickeskyddade <b>AAC</b> format som <b>M4A</b> kan importeras. Några öppna format supportas inte än inklusive <b>Ogg Speex</b> och <b>Musepack</b>. Ljudfiler skyddade med Digital Rights Management (DRM), inklusive filer köpta online från exempelvis Tunes eller Napster, <b>kan inte</b> importeras.</p><p> Om du inte kan importera din fil i Audacity, och den inte är DRM-skyddad, använd iTunes eller <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> för att konvertera den till WAV eller AIFF. Om den är skyddad, bränn den på en ljud-CD i ett program som är licensierad att spela den, extrahera CD-spåret till WAV eller AIFF med ITunes eller (på Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> eller Windows Media Player 11. Du kan också <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">spela in</a> din CD på datorn. <i>För att exportera till en ickesupportat format, exportera till WAV eller AIFF och konvertera till önskat format med iTunes eller <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
#: HelpText.cpp:383
@@ -1353,15 +1303,9 @@ msgstr "Nivåer att radera"
msgid "&Discard"
msgstr "&Kassera"
-#: HistoryWindow.cpp:111
-#: Tags.cpp:2072
-#: Tags.cpp:2074
-#: Tags.cpp:2376
-#: Tags.cpp:2378
-#: effects/ChangeLength.cpp:186
-#: effects/SpikeCleaner.cpp:191
-#: effects/vamp/VampEffect.cpp:414
-#: export/ExportCL.cpp:398
+#: HistoryWindow.cpp:111 Tags.cpp:2072 Tags.cpp:2074 Tags.cpp:2376
+#: Tags.cpp:2378 effects/ChangeLength.cpp:186 effects/SpikeCleaner.cpp:191
+#: effects/vamp/VampEffect.cpp:414 export/ExportCL.cpp:398
msgid "&OK"
msgstr "&OK"
@@ -1369,8 +1313,7 @@ msgstr "&OK"
msgid "Unable to determine"
msgstr "Kunde inte fastställa"
-#: Internat.cpp:195
-#: import/ImportRaw.cpp:392
+#: Internat.cpp:195 import/ImportRaw.cpp:392
msgid "bytes"
msgstr "bitar"
@@ -1386,13 +1329,19 @@ msgstr "MB"
msgid "GB"
msgstr "GB"
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
#: LabelDialog.cpp:52
msgid "Track"
msgstr "Spår"
-#: LabelDialog.cpp:53
-#: Menus.cpp:4057
-#: Menus.cpp:4085
+#: LabelDialog.cpp:53 Menus.cpp:4057 Menus.cpp:4085
msgid "Label"
msgstr "Etikett"
@@ -1404,8 +1353,7 @@ msgstr "Starttid"
msgid "End Time"
msgstr "Slut tid"
-#: LabelDialog.cpp:98
-#: Menus.cpp:627
+#: LabelDialog.cpp:98 Menus.cpp:627
msgid "&Edit Labels"
msgstr "&Redigera etiketter"
@@ -1421,8 +1369,7 @@ msgstr "Infoga &Efter"
msgid "Insert &Before"
msgstr "Infoga &före"
-#: LabelDialog.cpp:127
-#: Menus.cpp:194
+#: LabelDialog.cpp:127 Menus.cpp:194
msgid "&Import..."
msgstr "&Importera..."
@@ -1444,20 +1391,15 @@ msgstr "Du har kvar etiketter utan namn.Dessa kommer inte att\n"
msgid "Confirm"
msgstr "Bekräfta"
-#: LabelDialog.cpp:514
-#: Menus.cpp:3555
+#: LabelDialog.cpp:514 Menus.cpp:3555
msgid "Select a text file containing labels..."
msgstr "Välj en textfil som innehåller etiketter..."
-#: LabelDialog.cpp:518
-#: Menus.cpp:3559
+#: LabelDialog.cpp:518 Menus.cpp:3559
msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
msgstr "Text filer (*.txt)|*.txt|Alla filer (*.*)|*.*"
-#: LabelDialog.cpp:532
-#: Menus.cpp:3571
-#: Project.cpp:1831
-#: Project.cpp:1839
+#: LabelDialog.cpp:532 Menus.cpp:3571 Project.cpp:1831 Project.cpp:1839
#: import/ImportMIDI.cpp:31
msgid "Could not open file: "
msgstr "Det gick inte att öppna fil:"
@@ -1466,13 +1408,11 @@ msgstr "Det gick inte att öppna fil:"
msgid "No labels to export."
msgstr "Inga etiketter att expoertera."
-#: LabelDialog.cpp:564
-#: Menus.cpp:2172
+#: LabelDialog.cpp:564 Menus.cpp:2172
msgid "Export Labels As:"
msgstr "Exportera etiketter som:"
-#: LabelDialog.cpp:566
-#: Menus.cpp:2170
+#: LabelDialog.cpp:566 Menus.cpp:2170
msgid "labels.txt"
msgstr "labels.txt"
@@ -1484,10 +1424,7 @@ msgstr "Nytt etikettspår"
msgid "Enter track name"
msgstr "Ãndra namn pÃ¥ spÃ¥r"
-#: LabelDialog.cpp:701
-#: LabelDialog.h:52
-#: LabelTrack.cpp:89
-#: Menus.cpp:555
+#: LabelDialog.cpp:701 LabelDialog.h:52 LabelTrack.cpp:89 Menus.cpp:555
msgid "&Label Track"
msgstr "&Etikettspår"
@@ -1514,24 +1451,15 @@ msgstr "Ãppnar Audacity projekt"
msgid "&File"
msgstr "&Arkiv"
-#: Menus.cpp:164
-msgid "&New\tCtrl+N"
-msgstr "&Ny\tCtrl+N"
-
-#: Menus.cpp:166
-msgid "&Open...\tCtrl+O"
-msgstr "&Ãppna...\tCtrl+O"
-
#: Menus.cpp:171
-msgid "&Close\tCtrl+W"
-msgstr "&Stäng\tCtrl+W"
+msgid "&Close"
+msgstr "&Stäng"
#: Menus.cpp:174
-msgid "&Save Project\tCtrl+S"
-msgstr "&Spara projekt\tCtrl+S"
+msgid "&Save Project"
+msgstr "&Spara projekt"
-#: Menus.cpp:178
-#: Project.cpp:2690
+#: Menus.cpp:178 Project.cpp:2690
msgid "Save Project &As..."
msgstr "Spara projekt &som..."
@@ -1552,8 +1480,8 @@ msgid "&Import"
msgstr "&Importera"
#: Menus.cpp:196
-msgid "&Audio...\tCtrl+Shift+I"
-msgstr "&Ljud...\tCtrl+Shift+I"
+msgid "&Audio..."
+msgstr "&Ljud..."
#: Menus.cpp:197
msgid "&Labels..."
@@ -1567,8 +1495,7 @@ msgstr "&MIDI..."
msgid "&Raw Data..."
msgstr "R&Ã¥data..."
-#: Menus.cpp:210
-#: Menus.cpp:239
+#: Menus.cpp:210 Menus.cpp:239
msgid "Expo&rt Selection..."
msgstr "Expo&rtera markering..."
@@ -1584,12 +1511,11 @@ msgstr "Exportera &till flera ljudfiler..."
msgid "Export MIDI..."
msgstr ""
-#: Menus.cpp:247
-msgid "CleanSpeech C&hain..."
-msgstr "Clean Speech k&edja..."
+#: Menus.cpp:260
+msgid "Appl&y Chain..."
+msgstr "Läg&g till kedja..."
-#: Menus.cpp:248
-#: Menus.cpp:262
+#: Menus.cpp:248 Menus.cpp:262
msgid "Edit C&hains..."
msgstr "&Redigera kedjor..."
@@ -1601,10 +1527,6 @@ msgstr "Exportera CleanSpeech & inställningar..."
msgid "I&mport CleanSpeech Presets..."
msgstr "I&mportera CleanSpeech inställningar..."
-#: Menus.cpp:260
-msgid "Appl&y Chain..."
-msgstr "Läg&g till kedja..."
-
#: Menus.cpp:267
msgid "&Upload File..."
msgstr "&Ladda upp fil..."
@@ -1618,75 +1540,72 @@ msgid "&Print..."
msgstr "&Skriv ut..."
#: Menus.cpp:287
-msgid "E&xit\tCtrl+Q"
-msgstr "A&vsluta\tCtrl+Q"
+msgid "E&xit"
+msgstr "A&vsluta"
-#: Menus.cpp:295
-#: toolbars/EditToolBar.cpp:76
+#: Menus.cpp:295 toolbars/EditToolBar.cpp:76
msgid "&Edit"
msgstr "&Redigera"
#: Menus.cpp:299
-msgid "&Undo\tCtrl+Z"
-msgstr "&Ã
ngra\tCtrl+Z"
+msgid "&Undo"
+msgstr "&Ã
ngra"
-#: Menus.cpp:307
-#: prefs/KeyConfigPrefs.cpp:369
-#: toolbars/EditToolBar.cpp:146
+#: Menus.cpp:307 prefs/KeyConfigPrefs.cpp:369 toolbars/EditToolBar.cpp:146
msgid "&Redo"
msgstr "&Gör om"
#: Menus.cpp:320
-msgid "Cu&t\tCtrl+X"
-msgstr "Kl&ipp ut\tCtrl+X"
+msgid "Cu&t"
+msgstr "Kl&ipp ut"
#: Menus.cpp:324
-msgid "Spl&it Cut\tCtrl+Alt+X"
-msgstr "Del&a Klipp ut\tCtrl+Alt+X"
+msgid "Spl&it Cut"
+msgstr "Del&a Klipp ut"
#: Menus.cpp:325
-msgid "&Copy\tCtrl+C"
-msgstr "&Kopiera\tCtrl+C"
+msgid "&Copy"
+msgstr "&Kopiera"
#: Menus.cpp:329
-msgid "&Paste\tCtrl+V"
-msgstr "&Klistra in\tCtrl+V"
+msgid "&Paste"
+msgstr "&Klistra in"
#: Menus.cpp:333
-msgid "Tri&m\tCtrl+T"
-msgstr "Beskär\tCtrl+T"
+msgid "Tri&m"
+msgstr "Beskär"
#: Menus.cpp:335
-msgid "&Delete\tCtrl+K"
-msgstr "&Radera\tCtrl+K"
+msgid "&Delete"
+msgstr "&Radera"
#: Menus.cpp:336
-msgid "Split D&elete\tCtrl+Alt+K"
-msgstr "Delning r&adera\tCtrl+Alt+K"
+msgid "Split D&elete"
+msgstr "Delning r&adera"
#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
+msgid "Silence Audi&o"
msgstr ""
#: Menus.cpp:339
-msgid "Sp&lit\tCtrl+I"
-msgstr "De&la\tCtrl+I"
+msgid "Sp&lit"
+msgstr "De&la"
#: Menus.cpp:344
-msgid "Split Ne&w\tCtrl+Alt+I"
-msgstr "Dela ny&tt\tCtrl+Alt+I"
+msgid "Split Ne&w"
+msgstr "Dela ny&tt"
#: Menus.cpp:349
-msgid "&Join\tCtrl+J"
-msgstr "&Sammanfoga ett spår\tCtrl+J"
+msgid "&Join"
+msgstr "&Sammanfoga ett spår"
#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
+msgid "Detac&h at Silences"
msgstr ""
#: Menus.cpp:352
-msgid "Duplic&ate\tCtrl+D"
-msgstr "Duplic&era\tCtrl+D"
+msgid "Duplic&ate"
+msgstr "Duplic&era"
#: Menus.cpp:400 Menus.cpp:639
msgid "Stereo Trac&k to Mono"
@@ -1698,80 +1617,65 @@ msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:367
-msgid "&Cut\tAlt+X"
-msgstr "&Klipp ut\tAlt+X"
+msgid "&Cut"
+msgstr "&Klipp ut"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:372
-msgid "&Split Cut\tShift+Alt+X"
-msgstr "&Dela Klipp ut\tCtrl+Alt+X"
+msgid "&Split Cut"
+msgstr "&Dela Klipp ut"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:377
-msgid "Co&py\tShift+Alt+C"
-msgstr "Ko&piera\tShift+Alt+C"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:383
-msgid "&Delete\tAlt+K"
-msgstr "&Radera\tAlt+K"
+msgid "Co&py"
+msgstr "Ko&piera"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:388
-msgid "Sp&lit Delete\tShift+Alt+K"
-msgstr "De&la radera\tShift+Alt+K"
+msgid "Sp&lit Delete"
+msgstr "De&la radera"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:393
-msgid "Sile&nce\tAlt+L"
-msgstr "Tyst&nad\tAlt+L"
+msgid "Sile&nce"
+msgstr "Tyst&nad"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:399
-msgid "Spli&t\tAlt+I"
-msgstr "Del&a\tAlt+I"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:404
-msgid "&Join\tAlt+J"
-msgstr "&Sammanfoga\tAlt+J"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
-msgstr ""
+msgid "Spli&t"
+msgstr "Del&a"
#: Menus.cpp:456
msgid "&Select"
msgstr ""
#: Menus.cpp:416
-msgid "&All\tCtrl+A"
-msgstr "&Markera allt\tCtrl+A"
+msgid "&All"
+msgstr "&Markera allt"
#: Menus.cpp:417
-msgid "&None\tCtrl+Shift+A"
-msgstr "&Avmarkera\tCtrl+Shift+A"
+msgid "&None"
+msgstr "&Avmarkera"
#: Menus.cpp:421
-msgid "&Left at Playback Position\t["
-msgstr "&Vänster vid uppspelningsposiition\t["
+msgid "&Left at Playback Position"
+msgstr "&Vänster vid uppspelningsposiition"
#: Menus.cpp:422
-msgid "&Right at Playback Position\t]"
-msgstr "&Höger vid uppspelningsposition\t]"
+msgid "&Right at Playback Position"
+msgstr "&Höger vid uppspelningsposition"
#: Menus.cpp:426
-msgid "Track &Start to Cursor\tShift+J"
-msgstr "Från &början till markör\tShift+J"
+msgid "Track &Start to Cursor"
+msgstr "Från &början till markör"
#: Menus.cpp:427
-msgid "Cursor to Track &End\tShift+K"
-msgstr "Från markör till &slutet\tShift+K"
+msgid "Cursor to Track &End"
+msgstr "Från markör till &slutet"
#: Menus.cpp:433
-msgid "Find &Zero Crossings\tZ"
-msgstr "Sök &nollgräns\tZ"
+msgid "Find &Zero Crossings"
+msgstr "Sök &nollgräns"
#: Menus.cpp:476
msgid "Mo&ve Cursor"
@@ -1786,12 +1690,12 @@ msgid "to Selection En&d"
msgstr "till markeringens slu&t"
#: Menus.cpp:442
-msgid "to Track &Start\tJ"
-msgstr "till början av &spår\tJ"
+msgid "to Track &Start"
+msgstr "till början av &spår"
#: Menus.cpp:443
-msgid "to Track &End\tK"
-msgstr "till slutet av &spår\tK"
+msgid "to Track &End"
+msgstr "till slutet av &spår"
#: Menus.cpp:450
msgid "Re&gion Save"
@@ -1813,29 +1717,8 @@ msgstr "&LÃ¥s"
msgid "&Unlock"
msgstr "&LÃ¥s upp"
-#: Menus.cpp:470
-msgid "Turn Snap-To On"
-msgstr "Fäst mot - på"
-
-#: Menus.cpp:471
-msgid "Turn Snap-To Off"
-msgstr "Fäst mot - av"
-
-#: Menus.cpp:472
-msgid "Turn Grid Snap On"
-msgstr "Fäst mot rutnät på"
-
-#: Menus.cpp:473
-msgid "Turn Grid Snap Off"
-msgstr "Fäst mot rutnät av"
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr ""
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
+msgid "Pre&ferences..."
msgstr ""
#: Menus.cpp:492
@@ -1843,36 +1726,36 @@ msgid "&View"
msgstr "&Visa"
#: Menus.cpp:494
-msgid "Zoom &In\tCtrl+1"
-msgstr "Zoom &in\tCtrl+1"
+msgid "Zoom &In"
+msgstr "Zoom &in"
#: Menus.cpp:497
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "Zoom &normalt\tCtrl+2"
+msgid "Zoom &Normal"
+msgstr "Zoom &normalt"
#: Menus.cpp:498
-msgid "Zoom &Out\tCtrl+3"
-msgstr "Zoom &ut\tCtrl+3"
+msgid "Zoom &Out"
+msgstr "Zoom &ut"
#: Menus.cpp:501
-msgid "&Fit in Window\tCtrl+F"
-msgstr "&Anpassa till fönster\tCtrl+F"
+msgid "&Fit in Window"
+msgstr "&Anpassa till fönster"
#: Menus.cpp:502
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "Anpassa &vertikalt\tCtrl-Shift+F"
+msgid "Fit &Vertically"
+msgstr "Anpassa &vertikalt"
#: Menus.cpp:503
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "&Zoom markering\tCtrl+E"
+msgid "&Zoom to Selection"
+msgstr "&Zoom markering"
#: Menus.cpp:506
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
-msgstr "&Minimera alla spår\tCtrl+Shift+C"
+msgid "&Collapse All Tracks"
+msgstr "&Minimera alla spår"
#: Menus.cpp:507
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
-msgstr "E&xpandera alla spår\tCtrl+Shift+X"
+msgid "E&xpand All Tracks"
+msgstr "E&xpandera alla spår"
#: Menus.cpp:510
msgid "&Show Clipping"
@@ -1932,40 +1815,40 @@ msgstr "!Förenklad visning"
msgid "T&ransport"
msgstr ""
-#: Menus.cpp:591
-msgid "Play\tSpace"
-msgstr ""
+#: toolbars/ControlToolBar.cpp:177
+msgid "Play"
+msgstr "Spela"
#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
+msgid "&Loop Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Pause\tP"
+msgid "&Pause"
msgstr ""
#: Menus.cpp:596
-msgid "&Stop\tSpace"
+msgid "&Stop"
msgstr ""
#: Menus.cpp:799
-msgid "Skip to Start\tHome"
-msgstr "Gå till början\tHome"
+msgid "Skip to Start"
+msgstr "Gå till början"
#: Menus.cpp:800
-msgid "Skip to End\tEnd"
-msgstr "GÃ¥ till slut\tEnd"
+msgid "Skip to End"
+msgstr "GÃ¥ till slut"
#: Menus.cpp:600
-msgid "&Record\tR"
+msgid "&Record"
msgstr ""
#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
+msgid "&Timer Record..."
msgstr ""
#: Menus.cpp:604
-msgid "Append Record\tShift+R"
+msgid "Append Record"
msgstr ""
#: Menus.cpp:607
@@ -1993,15 +1876,14 @@ msgid "Add &New"
msgstr ""
#: Menus.cpp:553
-msgid "&Audio Track\tCtrl+Shift+N"
-msgstr "&Ljudspår\tCtrl+Shift+N"
+msgid "&Audio Track"
+msgstr "&Ljudspår"
#: Menus.cpp:554
msgid "&Stereo Track"
msgstr "&Stereospår"
-#: Menus.cpp:556
-#: TimeTrack.cpp:44
+#: Menus.cpp:556 TimeTrack.cpp:44
msgid "&Time Track"
msgstr "&Tidspår"
@@ -2010,8 +1892,8 @@ msgid "Mi&x and Render"
msgstr "Mi&xa och förändra"
#: Menus.cpp:572
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
-msgstr "Mixa och rendera till nytt spår\tCtrl+Shift+M"
+msgid "Mix and Render to New Track"
+msgstr "Mixa och rendera till nytt spår"
#: Menus.cpp:576
msgid "&Resample..."
@@ -2022,12 +1904,12 @@ msgid "Remo&ve Tracks"
msgstr "Rade&ra spår"
#: Menus.cpp:592
-msgid "&Mute All Tracks\tCtrl+U"
-msgstr "&Tysta alla spår\tCtrl+U"
+msgid "&Mute All Tracks"
+msgstr "&Tysta alla spår"
#: Menus.cpp:593
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
-msgstr "&Ljud på alla spår\tCtrl+Shift+U"
+msgid "&UnMute All Tracks"
+msgstr "&Ljud på alla spår"
#: Menus.cpp:597
msgid "Align with &Zero"
@@ -2073,17 +1955,17 @@ msgstr ""
msgid "Synchronize MIDI with Audio"
msgstr ""
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
+#: Menus.cpp:686
+msgid "&Link Audio and Label Tracks"
msgstr ""
-#: Menus.cpp:623
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "Lägg &till etikett vid markering\tCtrl+B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr ""
#: Menus.cpp:624
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "Lägg till etikett vid &markörens position vid uppspelning\tCtrl+M"
+msgid "Add Label At &Playback Position"
+msgstr "Lägg till etikett vid &markörens position vid uppspelning"
#: Menus.cpp:716
msgid "S&ort tracks"
@@ -2109,20 +1991,19 @@ msgstr ""
msgid "Effe&ct"
msgstr "Effe&kt"
-#: Menus.cpp:670
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "Använd senaste effekt\tCtrl+R"
-
#: Menus.cpp:702
msgid "&Analyze"
msgstr "&Analys"
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
+
#: Menus.cpp:704
msgid "Plot Spectrum..."
msgstr "Plot Spektrum..."
-#: Menus.cpp:737
-#: Menus.cpp:740
+#: Menus.cpp:737 Menus.cpp:740
msgid "&Help"
msgstr "&Hjälp"
@@ -2134,9 +2015,9 @@ msgstr "&Om Audacity CleanSpeech..."
msgid "&Show Welcome Message..."
msgstr "&Visa välkomstmeddelande"
-#: Menus.cpp:748
-msgid "&Index..."
-msgstr "&Index..."
+#: Menus.cpp:958
+msgid "&Help..."
+msgstr ""
#: Menus.cpp:959
msgid "Show &Log..."
@@ -2154,181 +2035,149 @@ msgstr "&Kör hastighetstest..."
msgid "&Audio Device Info..."
msgstr "&Ljudenhet Info..."
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
msgstr ""
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
msgstr ""
#: Menus.cpp:774
-msgid "Selection Tool\tF1"
-msgstr "Markeringsverktyg\tF1"
+msgid "Selection Tool"
+msgstr "Markeringsverktyg"
#: Menus.cpp:775
-msgid "Envelope Tool\tF2"
-msgstr "Envelopeverktyg\tF2"
+msgid "Envelope Tool"
+msgstr "Envelopeverktyg"
#: Menus.cpp:776
-msgid "Draw Tool\tF3"
-msgstr "Ritverktyg\tF3"
+msgid "Draw Tool"
+msgstr "Ritverktyg"
#: Menus.cpp:777
-msgid "Zoom Tool\tF4"
-msgstr "Zoomverktyg\tF4"
+msgid "Zoom Tool"
+msgstr "Zoomverktyg"
#: Menus.cpp:778
-msgid "Time Shift Tool\tF5"
-msgstr "Time Shift verktyg\tF5"
+msgid "Time Shift Tool"
+msgstr "Time Shift verktyg"
#: Menus.cpp:779
-msgid "Multi Tool\tF6"
-msgstr "Multiverktyg\tF6"
+msgid "Multi Tool"
+msgstr "Multiverktyg"
#: Menus.cpp:781
-msgid "Next Tool\tD"
-msgstr "Nästa verktyg\tD"
+msgid "Next Tool"
+msgstr "Nästa verktyg"
#: Menus.cpp:782
-msgid "Previous Tool\tA"
-msgstr "Föregående verktyg\tA"
+msgid "Previous Tool"
+msgstr "Föregående verktyg"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
+msgid "Play/Stop"
msgstr ""
-#: Menus.cpp:785
-msgid "Stop\tS"
-msgstr "Stopp\tS"
-
-#: Menus.cpp:786
-msgid "Pause\tP"
-msgstr "Paus\tP"
-
-#: Menus.cpp:787
-msgid "Record\tR"
-msgstr "Inspelning\tR"
-
-#: Menus.cpp:788
-msgid "Record Append\tShift+R"
-msgstr "Inspelning lägg till\tShift+R"
-
#: Menus.cpp:790
-msgid "Play/Stop and Set Cursor\tShift+A"
-msgstr "Spela/Stoppa och placera markör\tShift+A"
+msgid "Play/Stop and Set Cursor"
+msgstr "Spela/Stoppa och placera markör"
#: Menus.cpp:793
-msgid "Play One Second\t1"
-msgstr "Spela En sekund\t1"
+msgid "Play One Second"
+msgstr "Spela En sekund"
#: Menus.cpp:794
-msgid "Play To Selection\tB"
-msgstr "Spela till markering\tB"
-
-#: Menus.cpp:795
-msgid "Play Looped\tL"
-msgstr "Spela loop\tL"
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
+msgid "Play To Selection"
+msgstr "Spela till markering"
#: Menus.cpp:797
-msgid "Play Cut Preview\tC"
-msgstr "Spela Klipp förhandsgranska\tC"
+msgid "Play Cut Preview"
+msgstr "Spela Klipp förhandsgranska"
#: Menus.cpp:802
-msgid "Selection to Start\tShift+Home"
-msgstr "Markering till början\tShift+Home"
+msgid "Selection to Start"
+msgstr "Markering till början"
#: Menus.cpp:803
-msgid "Selection to End\tShift+End"
-msgstr "Markering till slut\tShift+End"
+msgid "Selection to End"
+msgstr "Markering till slut"
#: Menus.cpp:805
-msgid "DeleteKey\tBackspace"
-msgstr "RaderaTangent\tBacksteg"
+msgid "DeleteKey"
+msgstr "RaderaTangent"
#: Menus.cpp:810
-msgid "DeleteKey2\tDelete"
-msgstr "RaderaTangent2\tDelete"
+msgid "DeleteKey2"
+msgstr "RaderaTangent2"
-#: Menus.cpp:816
-msgid "Seek left short period during playback\tLeft"
-msgstr "Sök vänster kortperiod under uppspelning\tLeft"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
+msgstr ""
-#: Menus.cpp:817
-msgid "Seek right short period during playback\tRight"
-msgstr "Sök höger kortperiod under uppspelning\tRight"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
+msgstr ""
-#: Menus.cpp:818
-msgid "Seek left long period during playback\tShift+Left"
-msgstr "Sök vänster långperiod under uppspelning\tShift+Left"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
+msgstr ""
-#: Menus.cpp:819
-msgid "Seek right long period during playback\tShift+Right"
-msgstr "Sök höger långperiod under uppspelning\tShift+Right"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
+msgstr ""
#: Menus.cpp:823
-msgid "Move Focus to Previous Track\tUp"
-msgstr "Flytta fokus till föregående spår\tUpp"
+msgid "Move Focus to Previous Track"
+msgstr "Flytta fokus till föregående spår"
-#: Menus.cpp:824
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
-msgstr "Flytta fokus till föregående och ändra markering\tShift+Up"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
+msgstr ""
#: Menus.cpp:825
-msgid "Move Focus to Next Track\tDown"
-msgstr "Flytta fokus till nästa spår\tNer"
+msgid "Move Focus to Next Track"
+msgstr "Flytta fokus till nästa spår"
-#: Menus.cpp:826
-msgid "Move Focus to Next and Change Selection\tShift+Down"
-msgstr "Flyta fokus till nästa och ändra markering\tShift+Down"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
+msgstr ""
#: Menus.cpp:827
-msgid "Toggle Focused Track\tReturn"
-msgstr "Växla aktuellt spår\tReturn"
-
-#: Menus.cpp:828
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr "Växla aktuellt spår\tNUMPAD_ENTER"
-
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
-msgstr ""
+msgid "Toggle Focused Track"
+msgstr "Växla aktuellt spår"
#: Menus.cpp:831
-msgid "Cursor Left\tLeft"
-msgstr "Markör vänster\tvänster"
+msgid "Cursor Left"
+msgstr "Markör vänster"
#: Menus.cpp:832
-msgid "Cursor Right\tRight"
-msgstr "markör höger\thöger"
+msgid "Cursor Right"
+msgstr "markör höger"
#: Menus.cpp:833
-msgid "Cursor Short Jump Left\t,"
-msgstr "Markör kort hopp vänster\t,"
+msgid "Cursor Short Jump Left"
+msgstr "Markör kort hopp vänster"
#: Menus.cpp:834
-msgid "Cursor Short Jump Right\t."
-msgstr "markör kort hopp höger\t."
+msgid "Cursor Short Jump Right"
+msgstr "markör kort hopp höger"
#: Menus.cpp:835
-msgid "Cursor Long Jump Left\tShift+,"
-msgstr "Markör långt hopp vänster\tShift+,"
+msgid "Cursor Long Jump Left"
+msgstr "Markör långt hopp vänster"
#: Menus.cpp:836
-msgid "Cursor Long Jump Right\tShift+."
-msgstr "markör långt hopp höger\tShift+."
+msgid "Cursor Long Jump Right"
+msgstr "markör långt hopp höger"
#: Menus.cpp:838
-msgid "Selection Extend Left\tShift+Left"
-msgstr "Markering öka vänster\tShift+Left"
+msgid "Selection Extend Left"
+msgstr "Markering öka vänster"
#: Menus.cpp:839
-msgid "Selection Extend Right\tShift+Right"
-msgstr "Markering öka höger\tShift+Right"
+msgid "Selection Extend Right"
+msgstr "Markering öka höger"
#: Menus.cpp:841
msgid "Set (or Extend) Left Selection"
@@ -2339,52 +2188,52 @@ msgid "Set (or Extend) Right Selection"
msgstr "Ställ (eller utöka) höger markeringsgräns"
#: Menus.cpp:844
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "Markering minska vänster\tCtrl+Shift+Höger"
+msgid "Selection Contract Left"
+msgstr "Markering minska vänster"
#: Menus.cpp:845
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "Markering minska höger\tCtrl+Shift+Vänster"
+msgid "Selection Contract Right"
+msgstr "Markering minska höger"
#: Menus.cpp:847
-msgid "Change pan on focused track\tShift+P"
-msgstr "Ãndra panorering pÃ¥ fokuserat spÃ¥r\tShift+P"
+msgid "Change pan on focused track"
+msgstr "Ãndra panorering pÃ¥ fokuserat spÃ¥r"
#: Menus.cpp:848
-msgid "Pan left on focused track\tAlt+Shift+Left"
-msgstr "Panorera vänster vid fokuserat spår\tAlt+Shift+Vänster"
+msgid "Pan left on focused track"
+msgstr "Panorera vänster vid fokuserat spår"
#: Menus.cpp:849
-msgid "Pan right on focused track\tAlt+Shift+Right"
-msgstr "Panorera höger vid fokuserat spår\tAlt+Shift+Höger"
+msgid "Pan right on focused track"
+msgstr "Panorera höger vid fokuserat spår"
#: Menus.cpp:850
-msgid "Change gain on focused track\tShift+G"
-msgstr "Ãndra volym pÃ¥ fokuserat spÃ¥r\tShift+G"
+msgid "Change gain on focused track"
+msgstr "Ãndra volym pÃ¥ fokuserat spÃ¥r"
#: Menus.cpp:851
-msgid "Increase gain on focused track\tAlt+Shift+Up"
-msgstr "Ãka volym pÃ¥ fokuserat spÃ¥r\tAlt+Shift+Up"
+msgid "Increase gain on focused track"
+msgstr "Ãka volym pÃ¥ fokuserat spÃ¥r"
#: Menus.cpp:852
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
-msgstr "Minska volymen på fokuserat spår\tAlt+Shift+Down"
+msgid "Decrease gain on focused track"
+msgstr "Minska volymen på fokuserat spår"
#: Menus.cpp:853
-msgid "Open menu on focused track\tShift+M"
-msgstr "Ãppna menyn vid fokuserat spÃ¥r\tShift+M"
+msgid "Open menu on focused track"
+msgstr "Ãppna menyn vid fokuserat spÃ¥r"
#: Menus.cpp:854
-msgid "Mute/Unmute focused track\tShift+U"
-msgstr "Stäng av/sätt på fokuserat spår\tShift+U"
+msgid "Mute/Unmute focused track"
+msgstr "Stäng av/sätt på fokuserat spår"
#: Menus.cpp:855
-msgid "Solo/Unsolo focused track\tShift+S"
-msgstr "Sätt på/stäng av fokuserat spår\tShift+S"
+msgid "Solo/Unsolo focused track"
+msgstr "Sätt på/stäng av fokuserat spår"
#: Menus.cpp:856
-msgid "Close focused track\tShift+C"
-msgstr "Stäng fokuserat spår\tShift+C"
+msgid "Close focused track"
+msgstr "Stäng fokuserat spår"
#: Menus.cpp:858
msgid "Snap To On"
@@ -2395,7 +2244,35 @@ msgid "Snap To Off"
msgstr "Fäst mot Av"
#: Menus.cpp:1071
-msgid "Full screen on/off\tF11"
+msgid "Full screen on/off"
+msgstr ""
+
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr ""
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr ""
+
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr ""
+
+#: Menus.cpp:1074
+msgid "Adjust input source"
msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
@@ -2456,8 +2333,8 @@ msgstr "Var vänlig välj ett spår först."
#: Menus.cpp:2035
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "Repetera %s\tCtrl+R"
+msgid "Repeat %s"
+msgstr "Repetera %s"
#: Menus.cpp:2166
msgid "There are no label tracks to export."
@@ -2488,9 +2365,7 @@ msgstr "Det finns inget att ångra"
msgid "Nothing to redo"
msgstr "Det finns inget att göra om"
-#: Menus.cpp:2366
-#: TrackPanel.cpp:605
-#: toolbars/EditToolBar.cpp:133
+#: Menus.cpp:2366 TrackPanel.cpp:605 toolbars/EditToolBar.cpp:133
msgid "Cut"
msgstr "Klipp ut"
@@ -2506,10 +2381,7 @@ msgstr "Delning Klipp ut"
msgid "Split-cut to the clipboard"
msgstr "Delning-klipp ut till urklipp"
-#: Menus.cpp:2469
-#: Menus.cpp:2540
-#: Menus.cpp:2634
-#: TrackPanel.cpp:607
+#: Menus.cpp:2469 Menus.cpp:2540 Menus.cpp:2634 TrackPanel.cpp:607
#: toolbars/EditToolBar.cpp:137
msgid "Paste"
msgstr "Klistra in"
@@ -2518,8 +2390,7 @@ msgstr "Klistra in"
msgid "Pasted text from the clipboard"
msgstr "Klistrade in text från urklipp"
-#: Menus.cpp:2540
-#: Menus.cpp:2634
+#: Menus.cpp:2540 Menus.cpp:2634
msgid "Pasted from the clipboard"
msgstr "Klistrade in från urklipp"
@@ -2531,8 +2402,7 @@ msgstr ""
msgid "Copying stereo audio into a mono track is not allowed."
msgstr "Att kopiera stereoljud till monospår är inte tillåtet."
-#: Menus.cpp:2670
-#: toolbars/EditToolBar.cpp:139
+#: Menus.cpp:2670 toolbars/EditToolBar.cpp:139
msgid "Trim"
msgstr "Beskär"
@@ -2572,8 +2442,7 @@ msgstr "Sammanfoga"
msgid "Silenced selected tracks for %.2f seconds at %.2f"
msgstr "Valda tysta spår till %.2f sekunder vid %.2f"
-#: Menus.cpp:2771
-#: toolbars/EditToolBar.cpp:141
+#: Menus.cpp:2771 toolbars/EditToolBar.cpp:141
msgid "Silence"
msgstr "Tystnad"
@@ -2657,8 +2526,7 @@ msgstr "Ta isär etiketter"
msgid "Disjoined labeled regions"
msgstr "Isärtagna regioner med etiketter"
-#: Menus.cpp:2947
-#: TrackPanel.cpp:6121
+#: Menus.cpp:2947 TrackPanel.cpp:6121
msgid "Split"
msgstr "Dela"
@@ -2674,15 +2542,6 @@ msgstr "Dela till nytt spår"
msgid "Split at labels"
msgstr "Dela vid etiketter"
-#: Menus.cpp:3425
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "För att rita upp ett spektrum måste alla valda spår ha samma samplingsfrekvens."
-
-#: Menus.cpp:3451
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "För mycket ljud är valt. Bara de första %.1f sekunderna av ljud blir analyserade."
-
#: Menus.cpp:3584
#, c-format
msgid "Imported labels from '%s'"
@@ -2721,8 +2580,7 @@ msgstr "Alla filer (*.*)|*.*"
msgid "Edit the metadata tags"
msgstr "Redigera metadata taggar"
-#: Menus.cpp:3669
-#: export/Export.cpp:298
+#: Menus.cpp:3669 export/Export.cpp:298
msgid "Edit Metadata"
msgstr "Redigera metadata"
@@ -2749,8 +2607,7 @@ msgstr "Mixa och förändra %d spår in i ett nytt stereospår"
msgid "Mixed and rendered %d tracks into one new mono track"
msgstr "Mixa och förändra %d spår in i ett nytt monospår"
-#: Menus.cpp:3736
-#: Mix.cpp:120
+#: Menus.cpp:3736 Mix.cpp:120
msgid "&Mix and Render"
msgstr "&Mixa och förändra"
@@ -2802,10 +2659,7 @@ msgstr ""
msgid "Created new audio track"
msgstr "Skapat nytt ljudspår"
-#: Menus.cpp:3950
-#: Menus.cpp:3973
-#: Menus.cpp:3988
-#: Menus.cpp:4008
+#: Menus.cpp:3950 Menus.cpp:3973 Menus.cpp:3988 Menus.cpp:4008
msgid "New Track"
msgstr "Nytt spår"
@@ -2841,8 +2695,7 @@ msgstr "Spara CleanSpeech defaultfil som:"
msgid "CleanSpeech Presets (*.csp)|*.csp"
msgstr "CleanSpeech default (*.csp)|*.csp"
-#: Menus.cpp:4123
-#: export/Export.cpp:515
+#: Menus.cpp:4123 export/Export.cpp:515
msgid "Sorry, pathnames longer than 256 characters not supported."
msgstr "Tyvärr, sökvägens namn får ej innehålla mer än 256 bokstäver. "
@@ -2850,8 +2703,7 @@ msgstr "Tyvärr, sökvägens namn får ej innehålla mer än 256 bokstäver. "
msgid "Problem encountered exporting presets."
msgstr "Problem funna vid import av inställningar."
-#: Menus.cpp:4170
-#: export/Export.cpp:408
+#: Menus.cpp:4170 export/Export.cpp:408
msgid "Unable to export"
msgstr "Kan inte exportera"
@@ -2863,9 +2715,7 @@ msgstr "Radera spår"
msgid "Removed audio track(s)"
msgstr "Raderade ljudspår"
-#: Menus.cpp:4508
-#: Menus.cpp:4527
-#: export/ExportMP3.cpp:1926
+#: Menus.cpp:4508 Menus.cpp:4527 export/ExportMP3.cpp:1926
msgid "Resample"
msgstr "Ã
tersampla"
@@ -2890,8 +2740,7 @@ msgstr "Ã
tersamplat spår"
msgid "Resampled audio track(s)"
msgstr "Ã
tersamplade ljudspår"
-#: Mix.cpp:94
-#: Mix.cpp:101
+#: Mix.cpp:94 Mix.cpp:101
msgid "Mix"
msgstr "Mix"
@@ -2911,6 +2760,10 @@ msgstr "Fel uppstod vid utskrift"
msgid "Print"
msgstr "Skriv ut"
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr ""
+
#: Project.cpp:636
msgid "Main Mix"
msgstr "Huvudmix"
@@ -2924,14 +2777,11 @@ msgstr "Välkommen till Audacity version %s"
msgid "(Recovered)"
msgstr "(Ã
terskapad)"
-#: Project.cpp:1482
-#: TrackPanel.cpp:804
-#: toolbars/ControlToolBar.cpp:191
+#: Menus.cpp:787
msgid "Record"
msgstr "Inspelning"
-#: Project.cpp:1482
-#: TrackPanel.cpp:804
+#: Project.cpp:1482 TrackPanel.cpp:804
msgid "Recorded Audio"
msgstr "Inspelat ljud"
@@ -2958,9 +2808,9 @@ msgstr "\n"
msgid "Save changes?"
msgstr "Spara ändringar?"
-#: Project.cpp:1694
-msgid "All files|*.*|All supported files|"
-msgstr "Alla filer|*.*|Alla supportade filer|"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
+msgstr ""
#: Project.cpp:1719
msgid "Select one or more audio files..."
@@ -2970,8 +2820,7 @@ msgstr "Välj en eller flera ljudfiler..."
msgid "Audacity projects|*.aup|"
msgstr "Audacity projekt|*.aup|"
-#: Project.cpp:1799
-#: Project.cpp:2186
+#: Project.cpp:1799 Project.cpp:2186
#, c-format
msgid "This file was saved by Audacity %s, a much\n"
"older version. The format has changed.\n"
@@ -2993,13 +2842,22 @@ msgstr "Denna fil blev sparad av Audacity %s, en mycket\n"
msgid "1.0 or earlier"
msgstr "1.0 eller tidigare"
-#: Project.cpp:1806
-#: Project.cpp:2198
+#: Project.cpp:1806 Project.cpp:2198
msgid "Opening old project file"
msgstr "Ãppnar gammal projektfil"
-#: Project.cpp:1832
-#: Project.cpp:1840
+#: Project.cpp:2073
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr ""
+
+#: Project.cpp:1832 Project.cpp:1840
msgid "Error opening file"
msgstr "Fel när filen öppnades"
@@ -3034,8 +2892,7 @@ msgstr "Ã
terskapa"
msgid "Project checker repaired file"
msgstr "Projektkontroll har reparerat fil"
-#: Project.cpp:2001
-#: effects/Repair.h:29
+#: Project.cpp:2001 effects/Repair.h:29
msgid "Repair"
msgstr "Reparera"
@@ -3057,16 +2914,15 @@ msgstr "Denna fil är sparad i Audacity %s.\n"
msgid "Can't open project file"
msgstr "Det går inte att öppna projektfil"
-#: Project.cpp:2193
+#: Project.cpp:2484
#, c-format
msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
-msgstr "Denna fil blev sparad av Audacity %s.\n"
-"Du kan öppna denna fil med denna version av Audacity, men om du sparar den med denna version kan du inte längre öppna den i äldre versioner.\n"
-" \n"
-"Vill du öppna filen nu?"
+msgstr ""
#: Project.cpp:2537
msgid "Your project is now empty.\n"
@@ -3083,17 +2939,22 @@ msgstr ""
msgid "Warning empty project"
msgstr ""
-#: Project.cpp:2591
+#: Project.cpp:2792
#, c-format
msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+"is not writable or the disk is full."
msgstr ""
-#: Project.cpp:2428
-#: Project.cpp:2442
+#: Project.cpp:2428 Project.cpp:2442
msgid "Error saving project"
msgstr "Fel när projekt skulle sparas"
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
#: Project.cpp:2504
#, c-format
msgid "Saved %s"
@@ -3104,16 +2965,12 @@ msgstr "Sparat %s"
msgid "Imported '%s'"
msgstr "Importerat '%s'"
-#: Menus.cpp:3649
-#: Project.cpp:2587
-#: Project.cpp:2612
-#: import/ImportPCM.cpp:440
+#: Menus.cpp:3649 Project.cpp:2587 Project.cpp:2612 import/ImportPCM.cpp:440
#: import/ImportPCM.cpp:484
msgid "Import"
msgstr "Importera"
-#: Project.cpp:2639
-#: Project.cpp:2647
+#: Project.cpp:2639 Project.cpp:2647
msgid "Error importing"
msgstr "Fel vid import"
@@ -3156,8 +3013,7 @@ msgstr "Skapat nytt projekt"
msgid "Deleted %.2f seconds at t=%.2f"
msgstr "Raderat %.2f sekunder vid t=%.2f"
-#: Project.cpp:2859
-#: effects/Equalization.cpp:1262
+#: Project.cpp:2859 effects/Equalization.cpp:1262
#: effects/Equalization.cpp:2593
msgid "Delete"
msgstr "Radera"
@@ -3238,8 +3094,7 @@ msgstr "Libsamplerate av Erik de Castro Lopo"
msgid "Libsamplerate error: %d\n"
msgstr "Libsamplerate fel: %d\n"
-#: Resample.cpp:240
-#: Resample.cpp:250
+#: Resample.cpp:240 Resample.cpp:250
msgid "Resampling disabled."
msgstr "Resampling av"
@@ -3258,6 +3113,163 @@ msgstr "24-bit PCM"
msgid "32-bit float"
msgstr "32-bit float"
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
+
+#: export/ExportMultiple.cpp:216 prefs/DirectoriesPrefs.cpp:92
+msgid "Choose..."
+msgstr "Välj..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
+
+#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
+msgid "false"
+msgstr "falskt"
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr "Verktyg"
+
+#: toolbars/ControlToolBar.cpp:82
+msgid "Control"
+msgstr "Kontroll"
+
+#: toolbars/MixerToolBar.cpp:60
+msgid "Mixer"
+msgstr "Mixer"
+
+#: toolbars/MeterToolBar.cpp:50
+msgid "Meter"
+msgstr "Mätare"
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
+#: toolbars/DeviceToolBar.cpp:57
+msgid "Device"
+msgstr "Enhet"
+
+#: toolbars/TranscriptionToolBar.cpp:84
+msgid "Transcription"
+msgstr "Transkription"
+
+#: TrackPanel.cpp:464 TrackPanel.cpp:465
+msgid "Track Panel"
+msgstr "Spårpanel"
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: export/ExportMultiple.cpp:258
+msgid "Tracks"
+msgstr "Spår"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
#: Screenshot.cpp:384
msgid "Saved "
msgstr "Sparad"
@@ -3266,14 +3278,15 @@ msgstr "Sparad"
msgid "Error trying to save file: "
msgstr "Fel när fil skulle sparas:"
-#: Sequence.cpp:732
-#: Sequence.cpp:742
-#: Sequence.cpp:749
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
+#: Sequence.cpp:732 Sequence.cpp:742 Sequence.cpp:749
msgid "Gap detected in project file\n"
msgstr "HÃ¥l hittat i projektfil\n"
-#: ShuttleGui.cpp:1852
-#: effects/Effect.cpp:342
+#: ShuttleGui.cpp:1852 effects/Effect.cpp:342
#: effects/audiounits/AudioUnitEffect.cpp:872
msgid "Pre&view"
msgstr "För&handsvisa"
@@ -3314,8 +3327,7 @@ msgstr "Album titel"
msgid "Track Number"
msgstr "Spår nummer"
-#: Tags.cpp:633
-#: Tags.cpp:2138
+#: Tags.cpp:633 Tags.cpp:2138
msgid "Year"
msgstr "Ã
r"
@@ -3323,9 +3335,7 @@ msgstr "Ã
r"
msgid "Genre"
msgstr "Genre"
-#: Tags.cpp:635
-#: Tags.cpp:2148
-#: prefs/MousePrefs.cpp:96
+#: Tags.cpp:635 Tags.cpp:2148 prefs/MousePrefs.cpp:96
msgid "Comments"
msgstr "Kommentarer"
@@ -3341,9 +3351,7 @@ msgstr "Tag namn"
msgid "Tag Value"
msgstr "Tag värde"
-#: Tags.cpp:818
-#: Tags.cpp:1476
-#: prefs/KeyConfigPrefs.cpp:116
+#: Tags.cpp:818 Tags.cpp:1476 prefs/KeyConfigPrefs.cpp:116
msgid "&Clear"
msgstr "&Rensa"
@@ -3359,71 +3367,42 @@ msgstr ""
msgid "Rese&t..."
msgstr ""
-#: Tags.cpp:834
-#: Tags.cpp:1460
-#: Tags.cpp:1988
+#: Tags.cpp:834 Tags.cpp:1460 Tags.cpp:1988
msgid "Template"
msgstr "Mall"
-#: Tags.cpp:838
-#: Tags.cpp:1464
-#: Tags.cpp:1992
-#: prefs/KeyConfigPrefs.cpp:126
+#: Tags.cpp:838 Tags.cpp:1464 Tags.cpp:1992 prefs/KeyConfigPrefs.cpp:126
msgid "&Load..."
msgstr "&Ãppna..."
-#: Tags.cpp:839
-#: Tags.cpp:1465
-#: Tags.cpp:1993
-#: prefs/KeyConfigPrefs.cpp:125
+#: Tags.cpp:839 Tags.cpp:1465 Tags.cpp:1993 prefs/KeyConfigPrefs.cpp:125
msgid "&Save..."
msgstr "&Spara..."
-#: Tags.cpp:841
-#: Tags.cpp:1467
-#: Tags.cpp:1995
+#: Tags.cpp:841 Tags.cpp:1467 Tags.cpp:1995
msgid "S&et Default"
msgstr "G&ör grundinställning"
-#: Tags.cpp:991
-#: Tags.cpp:1630
-#: Tags.cpp:2359
+#: Tags.cpp:991 Tags.cpp:1630 Tags.cpp:2359
msgid "Edit Genres"
msgstr "Redigera genrer"
-#: Tags.cpp:1024
-#: Tags.cpp:1036
-#: Tags.cpp:1052
-#: Tags.cpp:1065
-#: Tags.cpp:1668
-#: Tags.cpp:1680
-#: Tags.cpp:1696
-#: Tags.cpp:1709
-#: Tags.cpp:2402
-#: Tags.cpp:2414
-#: Tags.cpp:2430
-#: Tags.cpp:2443
+#: Tags.cpp:1024 Tags.cpp:1036 Tags.cpp:1052 Tags.cpp:1065 Tags.cpp:1668
+#: Tags.cpp:1680 Tags.cpp:1696 Tags.cpp:1709 Tags.cpp:2402 Tags.cpp:2414
+#: Tags.cpp:2430 Tags.cpp:2443
msgid "Reset Genres"
msgstr "Ã
terställ genrer"
-#: Tags.cpp:1024
-#: Tags.cpp:1065
-#: Tags.cpp:1668
-#: Tags.cpp:1709
-#: Tags.cpp:2402
+#: Tags.cpp:1024 Tags.cpp:1065 Tags.cpp:1668 Tags.cpp:1709 Tags.cpp:2402
#: Tags.cpp:2443
msgid "Unable to save genre file."
msgstr "Det gick inte att spara genrefil."
-#: Tags.cpp:1035
-#: Tags.cpp:1679
-#: Tags.cpp:2413
+#: Tags.cpp:1035 Tags.cpp:1679 Tags.cpp:2413
msgid "Are you sure you want to reset the genre list to defaults?"
msgstr "Ãr du säker pÃ¥ att du vill Ã¥terställa genrelistan till grundinställningen?"
-#: Tags.cpp:1052
-#: Tags.cpp:1696
-#: Tags.cpp:2430
+#: Tags.cpp:1052 Tags.cpp:1696 Tags.cpp:2430
msgid "Unable to open genre file."
msgstr "Det gick inte att öppna genrefil."
@@ -3431,21 +3410,19 @@ msgstr "Det gick inte att öppna genrefil."
msgid "Load Metadata As:"
msgstr ""
-#: Tags.cpp:1112
-#: Tags.cpp:1763
-#: Tags.cpp:2486
+#: Tags.cpp:1112 Tags.cpp:1763 Tags.cpp:2486
msgid "Error loading metadata"
msgstr "Fel vid laddande av metadata"
-#: Tags.cpp:1087
-#: Tags.cpp:1141
-#: Tags.cpp:1742
-#: Tags.cpp:1778
-#: Tags.cpp:2465
+#: Tags.cpp:1087 Tags.cpp:1141 Tags.cpp:1742 Tags.cpp:1778 Tags.cpp:2465
#: Tags.cpp:2501
msgid "Save Metadata As:"
msgstr "Spara metadata som:"
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
#: Theme.cpp:638
#, c-format
msgid "Audacity could not write file:\n"
@@ -3478,8 +3455,7 @@ msgstr "Audacity kunde inte hitta fil:\n"
" %s.\n"
"Tema gick inte att öppna."
-#: Theme.cpp:807
-#: Theme.cpp:896
+#: Theme.cpp:807 Theme.cpp:896
#, c-format
msgid "Audacity could not load file:\n"
" %s.\n"
@@ -3503,8 +3479,7 @@ msgstr "Ingen av de förväntade temafilerna\n"
"kunde hittas.\n"
" %s."
-#: Theme.cpp:942
-#: effects/NoiseRemoval.cpp:173
+#: Theme.cpp:942 effects/NoiseRemoval.cpp:173
#, c-format
msgid "Could not create directory:\n"
" %s"
@@ -3527,12 +3502,8 @@ msgstr "Alla nödvändiga filer i:\n"
" %s\n"
"finns redan."
-#: SmartRecordDialog.cpp:226
-#: SmartRecordDialog.cpp:307
-#: TimeDialog.cpp:53
-#: effects/Noise.cpp:235
-#: effects/ToneGen.cpp:329
-#: effects/ToneGen.cpp:374
+#: SmartRecordDialog.cpp:226 SmartRecordDialog.cpp:307 TimeDialog.cpp:53
+#: effects/Noise.cpp:235 effects/ToneGen.cpp:329 effects/ToneGen.cpp:374
msgid "Duration"
msgstr "Varaktighet"
@@ -3540,6 +3511,14 @@ msgstr "Varaktighet"
msgid "Audacity Timer Record"
msgstr "Audacity Timerinspelning"
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
#: SmartRecordDialog.cpp:223
msgid "Recording start"
msgstr "Inspelning start"
@@ -3578,40 +3557,23 @@ msgstr "Väntar på att börja spela in vid %s.\n"
msgid "Audacity Timer Record - Waiting for Start"
msgstr ""
-#: TrackPanel.cpp:464
-#: TrackPanel.cpp:465
-msgid "Track Panel"
-msgstr "Spårpanel"
-
-#: TrackPanel.cpp:548
-#: export/ExportPCM.cpp:133
-#: prefs/QualityPrefs.cpp:97
+#: TrackPanel.cpp:548 export/ExportPCM.cpp:133 prefs/QualityPrefs.cpp:97
msgid "Other..."
msgstr "Andra..."
-#: TrackPanel.cpp:556
-#: TrackPanel.cpp:580
-#: TrackPanel.cpp:589
-#: TrackPanel.cpp:597
+#: TrackPanel.cpp:556 TrackPanel.cpp:580 TrackPanel.cpp:589 TrackPanel.cpp:597
msgid "Name..."
msgstr "Namn..."
-#: TrackPanel.cpp:558
-#: TrackPanel.cpp:582
-#: TrackPanel.cpp:593
-#: TrackPanel.cpp:599
+#: TrackPanel.cpp:558 TrackPanel.cpp:582 TrackPanel.cpp:593 TrackPanel.cpp:599
msgid "Move Track Up"
msgstr "Flytta spår upp"
-#: TrackPanel.cpp:559
-#: TrackPanel.cpp:583
-#: TrackPanel.cpp:594
-#: TrackPanel.cpp:600
+#: TrackPanel.cpp:559 TrackPanel.cpp:583 TrackPanel.cpp:594 TrackPanel.cpp:600
msgid "Move Track Down"
msgstr "Flytta spår ner"
-#: TrackPanel.cpp:561
-#: effects/ToneGen.cpp:325
+#: TrackPanel.cpp:561 effects/ToneGen.cpp:325
msgid "Waveform"
msgstr "VÃ¥gform"
@@ -3627,18 +3589,15 @@ msgstr "Spectrum log(f)"
msgid "Pitch (EAC)"
msgstr "Tonhöjd (EAC)"
-#: TrackPanel.cpp:569
-#: TrackPanel.cpp:6091
+#: TrackPanel.cpp:569 TrackPanel.cpp:6091
msgid "Mono"
msgstr "Mono"
-#: TrackPanel.cpp:570
-#: TrackPanel.cpp:6090
+#: TrackPanel.cpp:570 TrackPanel.cpp:6090
msgid "Left Channel"
msgstr "Vänster kanal"
-#: TrackPanel.cpp:571
-#: TrackPanel.cpp:6090
+#: TrackPanel.cpp:571 TrackPanel.cpp:6090
msgid "Right Channel"
msgstr "Höger kanal"
@@ -3650,12 +3609,15 @@ msgstr "Skapa stereospår"
msgid "Split Stereo Track"
msgstr "Dela stereospår"
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr ""
+
#: TrackPanel.cpp:575
msgid "Set Sample Format"
msgstr "Bestäm samplingsformat"
-#: TrackPanel.cpp:577
-#: TrackPanel.cpp:6320
+#: TrackPanel.cpp:577 TrackPanel.cpp:6320
msgid "Set Rate"
msgstr "Bestäm frekvens"
@@ -3675,8 +3637,7 @@ msgstr "Font"
msgid "Set Range..."
msgstr "Bestäm yta..."
-#: TrackPanel.cpp:606
-#: toolbars/EditToolBar.cpp:135
+#: TrackPanel.cpp:606 toolbars/EditToolBar.cpp:135
msgid "Copy"
msgstr "Kopiera"
@@ -3722,21 +3683,13 @@ msgstr "Klicka och drag för att flytta vänster markeringsposition"
msgid "Click and drag to move right selection boundary."
msgstr "Klicka och drag för att flytta höger markeringsposition."
-#: TrackPanel.cpp:1702
-#: TrackPanel.cpp:3993
-#: TrackPanel.cpp:4025
-#: TrackPanel.cpp:4280
-#: TrackPanel.cpp:6432
-#: TrackPanel.cpp:6452
+#: TrackPanel.cpp:1702 TrackPanel.cpp:3993 TrackPanel.cpp:4025
+#: TrackPanel.cpp:4280 TrackPanel.cpp:6432 TrackPanel.cpp:6452
msgid "Modified Label"
msgstr "Ãndrad etikett"
-#: TrackPanel.cpp:1703
-#: TrackPanel.cpp:3994
-#: TrackPanel.cpp:4026
-#: TrackPanel.cpp:4281
-#: TrackPanel.cpp:6433
-#: TrackPanel.cpp:6453
+#: TrackPanel.cpp:1703 TrackPanel.cpp:3994 TrackPanel.cpp:4026
+#: TrackPanel.cpp:4281 TrackPanel.cpp:6433 TrackPanel.cpp:6453
msgid "Label Edit"
msgstr "Etikett redigera"
@@ -3744,8 +3697,7 @@ msgstr "Etikett redigera"
msgid "Adjusted envelope."
msgstr "Inställd envelope"
-#: TrackPanel.cpp:1931
-#: prefs/MousePrefs.cpp:115
+#: TrackPanel.cpp:1931 prefs/MousePrefs.cpp:115
msgid "Envelope"
msgstr "Envelope"
@@ -3767,9 +3719,7 @@ msgstr "höger"
msgid "Time shifted tracks/clips %s %.02f seconds"
msgstr "Tidsändrat spår/klipp %s %.02f sekunder"
-#: TrackPanel.cpp:2092
-#: prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:112
+#: TrackPanel.cpp:2092 prefs/MousePrefs.cpp:111 prefs/MousePrefs.cpp:112
#: prefs/MousePrefs.cpp:113
msgid "Time-Shift"
msgstr "Time-Shift"
@@ -3808,39 +3758,29 @@ msgid "Moved pan slider"
msgstr "Flyttat panoreringsreglage"
#. i18n-hint: Title of the Gain slider, used to adjust the volume
-#: TrackPanel.cpp:3485
-#: TrackPanel.cpp:5726
-#: TrackPanel.cpp:7149
+#: TrackPanel.cpp:3485 TrackPanel.cpp:5726 TrackPanel.cpp:7149
msgid "Gain"
msgstr "Volym"
#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: TrackPanel.cpp:3485
-#: TrackPanel.cpp:5664
-#: TrackPanel.cpp:7156
+#: TrackPanel.cpp:3485 TrackPanel.cpp:5664 TrackPanel.cpp:7156
msgid "Pan"
msgstr "Pan"
-#: TrackPanel.cpp:3610
-#: TrackPanel.cpp:6385
-#: effects/ChangePitch.cpp:284
+#: TrackPanel.cpp:3610 TrackPanel.cpp:6385 effects/ChangePitch.cpp:284
msgid "up"
msgstr "upp"
-#: TrackPanel.cpp:3614
-#: TrackPanel.cpp:6386
-#: effects/ChangePitch.cpp:284
+#: TrackPanel.cpp:3614 TrackPanel.cpp:6386 effects/ChangePitch.cpp:284
msgid "down"
msgstr "ner"
-#: TrackPanel.cpp:3621
-#: TrackPanel.cpp:6381
+#: TrackPanel.cpp:3621 TrackPanel.cpp:6381
#, c-format
msgid "Moved '%s' %s"
msgstr "Flyttade '%s' %s"
-#: TrackPanel.cpp:3624
-#: TrackPanel.cpp:6387
+#: TrackPanel.cpp:3624 TrackPanel.cpp:6387
msgid "Move Track"
msgstr "Flytta spår"
@@ -3872,14 +3812,6 @@ msgstr "Inställd panorering"
msgid "Adjusted gain"
msgstr "Inställd signal"
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr ""
-
#: TrackPanel.cpp:5918
msgid "Can't delete track with active audio"
msgstr "Kan inte radera spår med aktivt ljud"
@@ -3900,8 +3832,7 @@ msgstr "Vänster,"
msgid "Right, "
msgstr "Höger,"
-#: TrackPanel.cpp:6100
-#: TrackPanel.cpp:6225
+#: TrackPanel.cpp:6100 TrackPanel.cpp:6225
#, c-format
msgid "Changed '%s' to %s"
msgstr "Ãndrat '%s' till %s"
@@ -3915,6 +3846,11 @@ msgstr "Kanal"
msgid "Split stereo track '%s'"
msgstr "Dela stereospår '%s'"
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
#: TrackPanel.cpp:6139
#, c-format
msgid "Made '%s' a stereo track"
@@ -3941,8 +3877,7 @@ msgstr "Ãndra format"
msgid "Change lower speed limit (%) to:"
msgstr "Ãndra lägsta nivÃ¥n pÃ¥ hastighet (%) till:"
-#: TrackPanel.cpp:6350
-#: TrackPanel.cpp:6351
+#: TrackPanel.cpp:6350 TrackPanel.cpp:6351
msgid "Lower speed limit"
msgstr "Nedre hastighetsgräns"
@@ -3950,8 +3885,7 @@ msgstr "Nedre hastighetsgräns"
msgid "Change upper speed limit (%) to:"
msgstr "Ãndra högsta nivÃ¥n pÃ¥ hastighet (%) till:"
-#: TrackPanel.cpp:6357
-#: TrackPanel.cpp:6358
+#: TrackPanel.cpp:6357 TrackPanel.cpp:6358
msgid "Upper speed limit"
msgstr "Ãvre hastighetsgräns"
@@ -3993,6 +3927,10 @@ msgstr "Face namn"
msgid "Face size"
msgstr "Stilstorlek"
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr ""
+
#: TrackPanel.cpp:7076
msgid "Mute"
msgstr "Tyst"
@@ -4026,10 +3964,7 @@ msgstr "Solo PÃ¥"
msgid " Select On"
msgstr "Välj På"
-#: VoiceKey.cpp:88
-#: VoiceKey.cpp:238
-#: VoiceKey.cpp:376
-#: VoiceKey.cpp:517
+#: VoiceKey.cpp:88 VoiceKey.cpp:238 VoiceKey.cpp:376 VoiceKey.cpp:517
msgid "Selection is too small to use voice key."
msgstr "Markeringen är för liten för att använda voice key."
@@ -4056,8 +3991,7 @@ msgstr "Direction Changes -- mean: %1.4f sd: (%1.4f)\n"
msgid "Audio Track"
msgstr "Ljudspår"
-#: WaveTrack.cpp:555
-#: WaveTrack.cpp:574
+#: WaveTrack.cpp:555 WaveTrack.cpp:574
msgid "There is not enough room available to paste the selection"
msgstr "Det finns inte tillräcklig plats att klistra in markering"
@@ -4075,10 +4009,10 @@ msgstr "Plugins 1 till %i"
msgid "Plugins %i to %i"
msgstr "Plugins %i till %i"
-#: commands/CommandManager.cpp:857
-#, fuzzy
-msgid "Disallowed for some reason. Try selecting some audio first?"
-msgstr "Kan inte användas av någon anledning. Pröva att välja något ljud först?"
+#: commands/CommandManager.cpp:923
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
+msgstr ""
#: commands/CommandManager.cpp:781
msgid "You can only do this when playing and recording are\n"
@@ -4145,9 +4079,7 @@ msgstr "Ny peak amplitud (dB):"
msgid "Allow clipping"
msgstr "Tillåt klippning"
-#: effects/Amplify.cpp:237
-#: effects/Amplify.cpp:287
-#: effects/Amplify.cpp:353
+#: effects/Amplify.cpp:237 effects/Amplify.cpp:287 effects/Amplify.cpp:353
msgid "-Infinity"
msgstr "-oändligt"
@@ -4163,9 +4095,7 @@ msgstr "Förstärkning"
msgid "You selected a track which does not contain audio. AutoDuck can only process audio tracks."
msgstr "Du har valt ett spår som inte innehåller ljud. Duckning kan bara bearbeta ljudspår."
-#: effects/AutoDuck.cpp:126
-#: effects/AutoDuck.cpp:138
-#: effects/AutoDuck.cpp:453
+#: effects/AutoDuck.cpp:126 effects/AutoDuck.cpp:138 effects/AutoDuck.cpp:453
#: effects/AutoDuck.cpp:570
msgid "Auto Duck"
msgstr "Duckning"
@@ -4187,17 +4117,11 @@ msgid "Maximum pause:"
msgstr "Max paus:"
#. i18n-hint: Name of time display format that shows time in seconds
-#: effects/AutoDuck.cpp:494
-#: effects/AutoDuck.cpp:499
-#: effects/AutoDuck.cpp:504
-#: effects/AutoDuck.cpp:509
-#: effects/AutoDuck.cpp:514
-#: prefs/AudioIOPrefs.cpp:166
-#: prefs/AudioIOPrefs.cpp:174
-#: prefs/AudioIOPrefs.cpp:176
-#: prefs/AudioIOPrefs.cpp:201
-#: prefs/AudioIOPrefs.cpp:203
-#: widgets/TimeTextCtrl.cpp:263
+#: effects/AutoDuck.cpp:494 effects/AutoDuck.cpp:499 effects/AutoDuck.cpp:504
+#: effects/AutoDuck.cpp:509 effects/AutoDuck.cpp:514
+#: prefs/AudioIOPrefs.cpp:166 prefs/AudioIOPrefs.cpp:174
+#: prefs/AudioIOPrefs.cpp:176 prefs/AudioIOPrefs.cpp:201
+#: prefs/AudioIOPrefs.cpp:203 widgets/TimeTextCtrl.cpp:263
msgid "seconds"
msgstr "sekunder"
@@ -4217,8 +4141,7 @@ msgstr "Inre tona ner längd:"
msgid "Inner fade up length:"
msgstr "Inre tona upp längd:"
-#: effects/AutoDuck.cpp:521
-#: effects/Compressor.cpp:484
+#: effects/AutoDuck.cpp:521 effects/Compressor.cpp:484
msgid "Threshold:"
msgstr "Tröskel:"
@@ -4238,12 +4161,9 @@ msgstr "Duckning..."
msgid "Processing Auto Duck..."
msgstr "Kör Duckning..."
-#: effects/AvcCompressor.cpp:738
-#: effects/VST/VSTEffect.cpp:448
-#: effects/audiounits/AudioUnitEffect.cpp:877
-#: effects/nyquist/Nyquist.cpp:1042
-#: widgets/ErrorDialog.cpp:79
-#: widgets/ErrorDialog.cpp:105
+#: effects/AvcCompressor.cpp:738 effects/VST/VSTEffect.cpp:448
+#: effects/audiounits/AudioUnitEffect.cpp:877 effects/nyquist/Nyquist.cpp:1042
+#: widgets/ErrorDialog.cpp:79 widgets/ErrorDialog.cpp:105
#: widgets/Warning.cpp:67
msgid "OK"
msgstr "OK"
@@ -4307,14 +4227,12 @@ msgid "Change Pitch without Changing Tempo"
msgstr "Ãndra tonhöjd utan att ändra tempo"
#. i18n-hint: && in here is an escape character to get a single & on
-#: effects/ChangePitch.cpp:254
-#: effects/ChangeSpeed.cpp:313
+#: effects/ChangePitch.cpp:254 effects/ChangeSpeed.cpp:313
#: effects/ChangeTempo.cpp:180
msgid "by Vaughan Johnson && Dominic Mazzoni"
msgstr "av Vaughan Johnson && Dominic Mazzoni"
-#: effects/ChangePitch.cpp:259
-#: effects/ChangeTempo.cpp:185
+#: effects/ChangePitch.cpp:259 effects/ChangeTempo.cpp:185
msgid "using SoundTouch, by Olli Parviainen"
msgstr "använder SoundTouch, by Olli Parviainen"
@@ -4363,10 +4281,8 @@ msgstr ""
msgid "From frequency in hertz"
msgstr ""
-#: effects/ChangePitch.cpp:291
-#: effects/ChangePitch.cpp:337
-#: effects/ChangeSpeed.cpp:377
-#: effects/ChangeTempo.cpp:239
+#: effects/ChangePitch.cpp:291 effects/ChangePitch.cpp:337
+#: effects/ChangeSpeed.cpp:377 effects/ChangeTempo.cpp:239
#: effects/ChangeTempo.cpp:270
msgid "to"
msgstr "till"
@@ -4375,8 +4291,7 @@ msgstr "till"
msgid "To frequency in seconds"
msgstr ""
-#: effects/ChangePitch.cpp:360
-#: effects/ChangeSpeed.cpp:331
+#: effects/ChangePitch.cpp:360 effects/ChangeSpeed.cpp:331
#: effects/ChangeTempo.cpp:198
msgid "Percent Change:"
msgstr "Procent ändring:"
@@ -4394,8 +4309,7 @@ msgstr "Ãndra tonhöjd..."
msgid "Changing Pitch"
msgstr "Ãndrar tonhöjd"
-#: effects/ChangeSpeed.cpp:53
-#: effects/ChangeTempo.cpp:55
+#: effects/ChangeSpeed.cpp:53 effects/ChangeTempo.cpp:55
#, c-format
msgid "Applied effect: %s %.1f%%"
msgstr "Använd effekt: %s %.1f%%"
@@ -4544,12 +4458,11 @@ msgstr "Decay Time: "
msgid "Decay Time"
msgstr ""
-#: effects/Compressor.cpp:516
-msgid "Normalize to 0dB after compressing"
-msgstr "Normalisera till 0dB efter komprimering"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
+msgstr ""
#: effects/Compressor.cpp:563
-#, c-format
#, fuzzy
msgid "Threshold %d dB"
msgstr "Tröskel: %d dB"
@@ -4580,7 +4493,6 @@ msgid "%.1f:1"
msgstr ""
#: effects/Compressor.cpp:575
-#, c-format
#, fuzzy
msgid "Attack Time %.1f secs"
msgstr "Attack tid: %.1f secs"
@@ -4591,7 +4503,6 @@ msgid "%.1f secs"
msgstr ""
#: effects/Compressor.cpp:578
-#, c-format
#, fuzzy
msgid "Decay Time %.1f secs"
msgstr "Decay Time: %.1f secs"
@@ -4604,6 +4515,10 @@ msgstr "Kompressor..."
msgid "Applying Dynamic Range Compression..."
msgstr "lägger till Dynamic Range Compression..."
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
msgstr ""
@@ -4623,19 +4538,6 @@ msgid "Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr ""
-
#: effects/Contrast.cpp:231
msgid "Contrast Analyzer"
msgstr ""
@@ -4644,15 +4546,12 @@ msgstr ""
msgid "Parameters"
msgstr ""
-#: effects/ToneGen.cpp:361
-#: toolbars/ControlToolBar.cpp:185
+#: effects/ToneGen.cpp:361 toolbars/ControlToolBar.cpp:185
msgid "Start"
msgstr "Start"
-#: effects/ToneGen.cpp:362
-#: toolbars/ControlToolBar.cpp:188
-#: toolbars/SelectionBar.cpp:149
-#: toolbars/SelectionBar.cpp:254
+#: effects/ToneGen.cpp:362 toolbars/ControlToolBar.cpp:188
+#: toolbars/SelectionBar.cpp:149 toolbars/SelectionBar.cpp:254
msgid "End"
msgstr "Slut"
@@ -4672,6 +4571,11 @@ msgstr ""
msgid "Foreground end time"
msgstr ""
+#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
+#: effects/Contrast.cpp:289
+msgid "Measured"
+msgstr ""
+
#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
msgid "Use selection"
msgstr ""
@@ -4696,8 +4600,7 @@ msgstr ""
msgid "Contrast Result:"
msgstr ""
-#: Tags.cpp:829
-#: Tags.cpp:1981
+#: Tags.cpp:829 Tags.cpp:1981
msgid "Reset"
msgstr "Ã
terställ"
@@ -4717,16 +4620,8 @@ msgstr ""
msgid "Help for WCAG2 Audio Contrast Analyzer"
msgstr ""
-#: toolbars/ControlToolBar.cpp:82
-msgid "Control"
-msgstr "Kontroll"
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
msgstr ""
#: effects/Contrast.cpp:328 effects/Contrast.cpp:336 effects/Contrast.cpp:344
@@ -4837,18 +4732,6 @@ msgstr ""
msgid "Data gathered"
msgstr ""
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr ""
-
#: effects/DtmfGen.cpp:48
msgid "DTMF Tone Generator"
msgstr "DTMF Tongenerator"
@@ -4861,9 +4744,7 @@ msgstr "av Salvo Ventura (2006)"
msgid "DTMF sequence:"
msgstr "DTMF sekvens:"
-#: effects/DtmfGen.cpp:446
-#: effects/Noise.cpp:255
-#: effects/ToneGen.cpp:328
+#: effects/DtmfGen.cpp:446 effects/Noise.cpp:255 effects/ToneGen.cpp:328
#: effects/ToneGen.cpp:365
msgid "Amplitude (0-1)"
msgstr "Amplitud (0-1)"
@@ -4884,9 +4765,7 @@ msgstr "Effekt serie:"
msgid "Tone duration:"
msgstr "Ton varaktighet:"
-#: effects/DtmfGen.cpp:482
-#: effects/DtmfGen.cpp:484
-#: effects/DtmfGen.cpp:560
+#: effects/DtmfGen.cpp:482 effects/DtmfGen.cpp:484 effects/DtmfGen.cpp:560
#: effects/DtmfGen.cpp:561
msgid "ms"
msgstr "ms"
@@ -4967,8 +4846,7 @@ msgstr "Cosinus"
msgid "Cubic"
msgstr "Cubic"
-#: effects/Equalization.cpp:362
-#: effects/Equalization.cpp:412
+#: effects/Equalization.cpp:362 effects/Equalization.cpp:412
msgid "Equalization"
msgstr "Equalization"
@@ -4980,6 +4858,10 @@ msgstr "Fel vid laddande av EQ kurva"
msgid "custom"
msgstr "egen inställning"
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr ""
+
#. i18n-hint: && in here is an escape character to get a single &
#: effects/Equalization.cpp:1087
msgid "Equalization, by Martyn Shaw && Mitch Golden"
@@ -5017,8 +4899,7 @@ msgstr "Filterlängd:"
msgid "Select curve:"
msgstr "Välj kurva:"
-#: effects/Equalization.cpp:1259
-#: effects/Equalization.cpp:2498
+#: effects/Equalization.cpp:1259 effects/Equalization.cpp:2498
#: export/ExportMultiple.cpp:826
msgid "Save As..."
msgstr "Spara som..."
@@ -5135,8 +5016,7 @@ msgstr "Kraftigast"
msgid "by Lynn Allan"
msgstr "av Lynn Allan"
-#: effects/Leveller.cpp:226
-#: effects/Leveller.cpp:231
+#: effects/Leveller.cpp:226 effects/Leveller.cpp:231
msgid "Degree of Leveling"
msgstr "Grad av utjämning"
@@ -5185,10 +5065,6 @@ msgstr ""
msgid "Analyser"
msgstr ""
-#: toolbars/MixerToolBar.cpp:60
-msgid "Mixer"
-msgstr "Mixer"
-
#: effects/LoadEffects.cpp:116
msgid "Simulator"
msgstr ""
@@ -5427,14 +5303,8 @@ msgstr "Raderar brus"
msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr "Tillämpad effekt: %s radera dc offset = %s, normalisera amplituden = %s"
-#: effects/Normalize.cpp:74
-#: effects/Normalize.cpp:75
-msgid "false"
-msgstr "falskt"
-
#. i18n-hint: true here means that the option was
-#: effects/Normalize.cpp:74
-#: effects/Normalize.cpp:75
+#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
msgid "true"
msgstr "sant"
@@ -5492,8 +5362,7 @@ msgstr ""
msgid "Dry Wet"
msgstr ""
-#: effects/Phaser.cpp:264
-#: effects/Wahwah.cpp:221
+#: effects/Phaser.cpp:264 effects/Wahwah.cpp:221
msgid "LFO Frequency (Hz):"
msgstr "LFO frekvens (Hz)LFO frekvens (Hz)"
@@ -5501,8 +5370,7 @@ msgstr "LFO frekvens (Hz)LFO frekvens (Hz)"
msgid "LFO frequency in hertz"
msgstr ""
-#: effects/Phaser.cpp:280
-#: effects/Wahwah.cpp:237
+#: effects/Phaser.cpp:280 effects/Wahwah.cpp:237
msgid "LFO Start Phase (deg.):"
msgstr "LFO start läge (grad.):"
@@ -5563,8 +5431,7 @@ msgstr "Repeterat %d gånger"
msgid "Tracks are too long to repeat the selection."
msgstr "Spår är för långa för att kunna repetera markeringen."
-#: effects/Repeat.cpp:76
-#: effects/Repeat.cpp:80
+#: effects/Repeat.cpp:76 effects/Repeat.cpp:80
msgid "Repeat"
msgstr "Repetera"
@@ -5577,8 +5444,7 @@ msgstr "Antal gånger att upprepas:"
msgid "New selection length: hh:mm:ss"
msgstr ""
-#: effects/Repeat.cpp:207
-#: effects/Repeat.cpp:237
+#: effects/Repeat.cpp:207 effects/Repeat.cpp:237
msgid "New selection length: "
msgstr "Ny markeringslängd:"
@@ -5650,9 +5516,7 @@ msgstr "Spike Cleaner..."
msgid "Applying Spike Cleaner..."
msgstr "Kör Spike Cleaner..."
-#: Menus.cpp:358
-#: Menus.cpp:564
-#: effects/StereoToMono.h:23
+#: Menus.cpp:358 Menus.cpp:564 effects/StereoToMono.h:23
msgid "&Stereo to Mono"
msgstr "&Stereo till mono"
@@ -5709,8 +5573,7 @@ msgstr ""
msgid "Applied effect: Generate %s wave %s, frequency = %.2f Hz, amplitude = %.2f, %.6lf seconds"
msgstr "Använd effekt: Skapa %s wave %s, frekvens = %.2f Hz, amplitude = %.2f, %.6lf sekunder"
-#: effects/ToneGen.cpp:75
-#: widgets/Meter.cpp:379
+#: effects/ToneGen.cpp:75 widgets/Meter.cpp:379
msgid "Linear"
msgstr "Linjär"
@@ -5742,8 +5605,7 @@ msgstr "SÃ¥gtand"
msgid "Square, no alias"
msgstr "Fyrkant, inget alias"
-#: effects/ToneGen.cpp:327
-#: effects/ToneGen.cpp:363
+#: effects/ToneGen.cpp:327 effects/ToneGen.cpp:363
msgid "Frequency (Hz)"
msgstr "Frekvens (Hz)"
@@ -5791,28 +5653,43 @@ msgstr "Skapar ton"
msgid "All tracks must have the same sample rate"
msgstr "Alla spår måste ha samma samplingsfrekvens"
-#: effects/TruncSilence.cpp:113
-#: effects/TruncSilence.cpp:322
+#: effects/TruncSilence.cpp:113 effects/TruncSilence.cpp:322
msgid "Truncate Silence"
msgstr "Skapa tystnad"
-#: effects/TruncSilence.cpp:346
-msgid "Max silence duration:"
-msgstr "Max tystnad varaktighet:"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr ""
-#: effects/TruncSilence.cpp:349
-#: prefs/AudioIOPrefs.cpp:190
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:349 prefs/AudioIOPrefs.cpp:190
#: prefs/AudioIOPrefs.cpp:193
msgid "milliseconds"
msgstr "millisekunder"
+#: effects/TruncSilence.cpp:346
+msgid "Max silence duration:"
+msgstr "Max tystnad varaktighet:"
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ""
+
#: effects/TruncSilence.cpp:351
msgid "Threshold for silence:"
msgstr "Tröskel för tystnad:"
-#: effects/TruncSilence.cpp:376
-msgid " Duration must be at least 1 millisecond"
-msgstr " Varaktighet måste varaq minst 1 millisekund"
+#: effects/TruncSilence.cpp:506
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
+msgstr ""
#: effects/TruncSilence.h:28
msgid "Truncate Silence..."
@@ -5822,17 +5699,55 @@ msgstr "Skapa tystnad..."
msgid "Truncating Silence..."
msgstr "Skapar tystnad..."
-#: effects/VST/VSTEffect.cpp:165
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "Tyvärr, VST Effects kan inte användas på stereospår när de enskilda kanalerna i spåret inte passar."
+#: effects/ladspa/LadspaEffect.cpp:608
+msgid "Effect Settings"
+msgstr "Effekt inställningar"
+
+#: effects/ladspa/LadspaEffect.cpp:573 effects/ladspa/LadspaEffect.cpp:581
+#: prefs/GUIPrefs.cpp:51 prefs/QualityPrefs.cpp:72
+msgid "None"
+msgstr "Inget"
+
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
-#: effects/VST/VSTEffect.cpp:180
-msgid "Can't process replacing"
-msgstr "Kan inte utföra ersättning"
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
-#: effects/VST/VSTEffect.cpp:403
-msgid "VST Plug-in parameters:"
-msgstr "VST Plug-in parametrar:"
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr ""
#: effects/Wahwah.cpp:61
#, c-format
@@ -5881,22 +5796,10 @@ msgstr "Skapar Effect: %s"
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr "Tyvärr, VST Effects kan inte användas på stereospår när de enskilda kanalerna i spåret inte passar."
-#: effects/ladspa/LadspaEffect.cpp:573
-#: effects/ladspa/LadspaEffect.cpp:581
-#: prefs/GUIPrefs.cpp:51
-#: prefs/QualityPrefs.cpp:72
-msgid "None"
-msgstr "Inget"
-
-#: effects/ladspa/LadspaEffect.cpp:575
-#: effects/vamp/VampEffect.cpp:384
+#: effects/ladspa/LadspaEffect.cpp:575 effects/vamp/VampEffect.cpp:384
msgid "Author: "
msgstr "Författare:"
-#: effects/ladspa/LadspaEffect.cpp:608
-msgid "Effect Settings"
-msgstr "Effekt inställningar"
-
#: effects/ladspa/LadspaEffect.cpp:699
msgid "Length (seconds)"
msgstr "Längd (sekunder)"
@@ -5917,8 +5820,7 @@ msgstr ""
msgid "Applying Nyquist Effect..."
msgstr "Lägger till Nyquist effekt"
-#: effects/nyquist/Nyquist.cpp:259
-#: effects/nyquist/Nyquist.cpp:321
+#: effects/nyquist/Nyquist.cpp:259 effects/nyquist/Nyquist.cpp:321
msgid "Nyquist Prompt..."
msgstr "Nyquist Prompt..."
@@ -5938,8 +5840,7 @@ msgstr "Nyquist"
msgid "Nyquist Output: "
msgstr "Nyquist Output"
-#: effects/nyquist/Nyquist.cpp:598
-#: effects/nyquist/Nyquist.cpp:609
+#: effects/nyquist/Nyquist.cpp:598 effects/nyquist/Nyquist.cpp:609
msgid "Nyquist returned the value:"
msgstr "Nyquist sände tillbaka värdet:"
@@ -6047,8 +5948,7 @@ msgstr "- Höger"
msgid "Mixer Panel"
msgstr ""
-#: export/Export.cpp:976
-#: export/Export.cpp:1021
+#: export/Export.cpp:976 export/Export.cpp:1021
#, c-format
msgid "Output Channels: %2d"
msgstr "Output kanaler: %2d"
@@ -6078,8 +5978,7 @@ msgstr "Data kommer att matas på för att passa in. \"%f\" blir ersatt med valt
msgid "(external program)"
msgstr "(externt program)"
-#: export/ExportCL.cpp:250
-#: export/ExportPCM.cpp:367
+#: export/ExportCL.cpp:250 export/ExportPCM.cpp:367
#, c-format
msgid "Cannot export audio to %s"
msgstr "Kan ej exportera ljud till %s"
@@ -6096,9 +5995,21 @@ msgstr "Exporter hela projektet med hjälp av command-line encoder"
msgid "Command Output"
msgstr "Kommando output"
-#: export/ExportFFmpeg.cpp:59
+#: export/ExportFFmpeg.cpp:61
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
#: export/ExportFFmpeg.cpp:394
@@ -6166,6 +6077,10 @@ msgstr ""
msgid "AAC Export Setup"
msgstr ""
+#: export/ExportOGG.cpp:86
+msgid "Quality:"
+msgstr "Kvalité:"
+
#: export/ExportFFmpegDialogs.cpp:217
msgid "Specify AMR-NB Options"
msgstr ""
@@ -6299,12 +6214,8 @@ msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n
"Recommended - 192000"
msgstr ""
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr "Kvalité:"
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid "Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
@@ -6323,10 +6234,10 @@ msgstr ""
msgid "Cutoff Bandwidth:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:947
+#: export/ExportFFmpegDialogs.cpp:936
msgid "Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:949
@@ -6515,12 +6426,12 @@ msgstr ""
msgid "AC3 Files (FFmpeg)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:56
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:57
@@ -6631,6 +6542,17 @@ msgstr "Bit djup:"
msgid "FLAC Files"
msgstr "FLAC Filer"
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
#: export/ExportFLAC.cpp:310
msgid "Exporting the selected audio as FLAC"
msgstr "Exporterar valt ljud som FLAC"
@@ -6655,9 +6577,7 @@ msgstr "MP2 filer"
msgid "Cannot export MP2 with this sample rate and bit rate"
msgstr "Kan inte exportera MP2 med denna samplingsfrekvens och bit rate"
-#: export/ExportMP2.cpp:240
-#: export/ExportMP3.cpp:1768
-#: export/ExportOGG.cpp:183
+#: export/ExportMP2.cpp:240 export/ExportMP3.cpp:1768 export/ExportOGG.cpp:183
msgid "Unable to open target file for writing"
msgstr "Det gick inte att öppna önskad fil för att spara"
@@ -6671,9 +6591,7 @@ msgstr "Exporterar valt ljud vid %d kbps"
msgid "Exporting entire file at %d kbps"
msgstr "Exportera hela filen vid %d kbps"
-#: export/ExportMP3.cpp:221
-#: export/ExportMP3.cpp:239
-#: export/ExportMP3.cpp:253
+#: export/ExportMP3.cpp:221 export/ExportMP3.cpp:239 export/ExportMP3.cpp:253
msgid "kbps"
msgstr "kbps"
@@ -6689,9 +6607,7 @@ msgstr "(Mindre filer)"
msgid "Fast"
msgstr "Snabb"
-#: export/ExportMP3.cpp:244
-#: export/ExportMP3.cpp:250
-#: prefs/GUIPrefs.cpp:41
+#: export/ExportMP3.cpp:244 export/ExportMP3.cpp:250 prefs/GUIPrefs.cpp:41
#: prefs/GUIPrefs.cpp:49
msgid "Standard"
msgstr "Standard"
@@ -6736,8 +6652,7 @@ msgstr "Medelvärde"
msgid "Constant"
msgstr "Konstant"
-#: export/ExportMP3.cpp:373
-#: prefs/QualityPrefs.cpp:42
+#: export/ExportMP3.cpp:373 prefs/QualityPrefs.cpp:42
#: prefs/QualityPrefs.cpp:43
msgid "Quality"
msgstr "Kvalité"
@@ -6858,10 +6773,8 @@ msgstr "Kombinationen av projektets samplingsfrekvens (%d) och bit rate (%d kbps
msgid "MP3 export library not found"
msgstr ""
-#: export/ExportMultiple.cpp:95
-#: export/ExportMultiple.cpp:374
-#: export/ExportMultiple.cpp:598
-#: export/ExportMultiple.cpp:765
+#: export/ExportMultiple.cpp:95 export/ExportMultiple.cpp:374
+#: export/ExportMultiple.cpp:598 export/ExportMultiple.cpp:765
msgid "Export Multiple"
msgstr "Multipel export"
@@ -6891,11 +6804,6 @@ msgstr "Välj..."
msgid "Export location:"
msgstr "Export plats:"
-#: export/ExportMultiple.cpp:216
-#: prefs/DirectoriesPrefs.cpp:92
-msgid "Choose..."
-msgstr "Välj..."
-
#: export/ExportMultiple.cpp:217
msgid "Create"
msgstr "Skapa"
@@ -6920,10 +6828,6 @@ msgstr "Första filnamn:"
msgid "First file name"
msgstr ""
-#: export/ExportMultiple.cpp:258
-msgid "Tracks"
-msgstr "Spår"
-
#: export/ExportMultiple.cpp:265
msgid "Name files:"
msgstr "Namn filer:"
@@ -6957,6 +6861,35 @@ msgstr "\"%s\" successfully created."
msgid "Choose a location to save the exported files"
msgstr "Välj en plats att spara exporterade filer"
+#: export/ExportMultiple.cpp:524
+#, c-format
+msgid "Successfully exported the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:527
+#, c-format
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr ""
+
#: export/ExportMultiple.cpp:470
#, c-format
msgid "\"%s\" doesn't exist.\n"
@@ -6966,23 +6899,10 @@ msgstr "\"%s\" finns inte.\n"
"\n"
"Vill du skapa det?"
-#: export/ExportMultiple.cpp:568
-#: export/ExportMultiple.cpp:703
+#: export/ExportMultiple.cpp:568 export/ExportMultiple.cpp:703
msgid "Edit metadata"
msgstr "Redigera metadata"
-#: export/ExportMultiple.cpp:595
-#: export/ExportMultiple.cpp:762
-#, c-format
-msgid "Successfully exported %d file(s)."
-msgstr "Export av %d fil(er) lyckades."
-
-#: export/ExportMultiple.cpp:596
-#: export/ExportMultiple.cpp:763
-#, c-format
-msgid "Something went wrong after exporting %d file(s)."
-msgstr "NÃ¥got blev fel efter export av %d fil(er)"
-
#: export/ExportMultiple.cpp:825
#, c-format
msgid "Label %s is not a legal file name. You cannot use any of: %s\n"
@@ -7151,7 +7071,6 @@ msgstr "\"%s\" är en avancerad ljudkodningsfil. \n"
"Du behöver konvertera den till ett ljudformat som WAV eller AIFF."
#: import/Import.cpp:271
-#, c-format
#, fuzzy
msgid "\"%s\" is an encrypted audio file. \n"
"These typically are from an online music store. \n"
@@ -7255,6 +7174,10 @@ msgstr ""
msgid "FLAC files"
msgstr "FLAC filer"
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr ""
+
#: import/ImportLOF.cpp:92
msgid "List of Files in basic text format"
msgstr "Lista på filer i basic textformat"
@@ -7265,9 +7188,7 @@ msgid "Invalid window offset in LOF file."
msgstr "Fönstret har fel startposition i LOF fil."
#. i18n-hint: You do not need to translate "LOF"
-#: import/ImportLOF.cpp:320
-#: import/ImportLOF.cpp:341
-#: import/ImportLOF.cpp:415
+#: import/ImportLOF.cpp:320 import/ImportLOF.cpp:341 import/ImportLOF.cpp:415
#: import/ImportLOF.cpp:435
msgid "LOF Error"
msgstr "LOF fel"
@@ -7323,8 +7244,7 @@ msgstr "Invalid Vorbis bitstream huvud"
msgid "Internal logic fault"
msgstr "Intert logiskt fel"
-#: export/ExportPCM.cpp:320
-#: import/ImportPCM.cpp:47
+#: export/ExportPCM.cpp:320 import/ImportPCM.cpp:47
msgid "WAV, AIFF, and other uncompressed types"
msgstr "WAV, AIFF, och andra okomprimerade format"
@@ -7411,36 +7331,41 @@ msgstr ""
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr ""
-#: prefs/AudioIOPrefs.cpp:41
-#: prefs/AudioIOPrefs.cpp:42
-msgid "Audio I/O"
-msgstr "Ljud in/ut"
+#: prefs/BatchPrefs.cpp:55 prefs/BatchPrefs.cpp:56
+msgid "Batch"
+msgstr "Konvertera"
-#: prefs/AudioIOPrefs.cpp:100
-msgid "1 (Mono)"
-msgstr "1 (Mono)"
+#: prefs/BatchPrefs.cpp:77 prefs/GUIPrefs.cpp:92
+msgid "Behaviors"
+msgstr "Uppförande"
-#: prefs/AudioIOPrefs.cpp:101
-msgid "2 (Stereo)"
-msgstr "2 (Stereo)"
+#: prefs/BatchPrefs.cpp:80 prefs/GUIPrefs.cpp:129
+msgid "&Don't apply effects in batch mode"
+msgstr "&Använd inte effekter i batchläge"
-#: prefs/AudioIOPrefs.cpp:115
-msgid "Playback"
-msgstr "Playback"
+#: prefs/BatchPrefs.cpp:83 prefs/GUIPrefs.cpp:132
+msgid "Cl&eanSpeech Mode (Customized GUI)"
+msgstr "Cl&eanSpeech läge (anpassat GUI)"
-#: prefs/AudioIOPrefs.cpp:119
-#: prefs/AudioIOPrefs.cpp:137
-#: toolbars/DeviceToolBar.cpp:57
-msgid "Device"
-msgstr "Enhet"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:34 prefs/GUIPrefs.cpp:35
+msgid "Interface"
+msgstr "Gränssnitt"
+
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
+msgstr ""
#: prefs/AudioIOPrefs.cpp:122
msgid "Using:"
msgstr "Använder:"
-#: prefs/AudioIOPrefs.cpp:123
-msgid "Portaudio v"
-msgstr "Portaudio v"
+#: prefs/AudioIOPrefs.cpp:115
+msgid "Playback"
+msgstr "Playback"
#: prefs/AudioIOPrefs.cpp:133
msgid "Recording"
@@ -7450,100 +7375,15 @@ msgstr "Inspelning"
msgid "Channels"
msgstr "Kanaler"
-#: prefs/AudioIOPrefs.cpp:145
-msgid "Playthrough"
-msgstr "Spela upp"
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr "&Hårdvarumässigt spela upp: Spela upp nytt spår samtidigt som man spelar in det"
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr "&Mjukvarumässigt spela upp: Spela upp nytt spår samtidigt som man spelar in det"
-
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:162
-msgid "Effects Preview"
-msgstr "Effekter förhandsgranska"
-
-#: prefs/AudioIOPrefs.cpp:165
-msgid "Length of preview:"
-msgstr "Förhandsvisning längd:"
-
-#: prefs/AudioIOPrefs.cpp:170
-msgid "Cut Preview"
-msgstr "Klipp förhandsgranska"
-
-#: prefs/AudioIOPrefs.cpp:173
-msgid "Preview before cut region:"
-msgstr "Förhandsgranska innan klipp av yta:"
-
-#: prefs/AudioIOPrefs.cpp:175
-msgid "Preview after cut region:"
-msgstr "Förhandsgranska efter klipp av yta:"
-
-#: prefs/AudioIOPrefs.cpp:183
-msgid "Latency"
-msgstr "Latency"
-
-#: prefs/AudioIOPrefs.cpp:189
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
-msgstr "Ljud till buffert:\n"
-"/högre= mer latency)"
-
-#: prefs/AudioIOPrefs.cpp:192
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr "Latency korrigering:\n"
-"(negativt värde = bakåt)"
-
-#: prefs/AudioIOPrefs.cpp:197
-msgid "Seek Time when playing"
-msgstr "Sök Tid under uppspelning"
-
-#: prefs/AudioIOPrefs.cpp:200
-msgid "Short period:"
-msgstr "Kort period:"
-
-#: prefs/AudioIOPrefs.cpp:202
-msgid "Long period:"
-msgstr "LÃ¥ng period:"
-
-#: prefs/BatchPrefs.cpp:55
-#: prefs/BatchPrefs.cpp:56
-msgid "Batch"
-msgstr "Konvertera"
-
-#: prefs/BatchPrefs.cpp:77
-#: prefs/GUIPrefs.cpp:92
-msgid "Behaviors"
-msgstr "Uppförande"
-
-#: prefs/BatchPrefs.cpp:80
-#: prefs/GUIPrefs.cpp:129
-msgid "&Don't apply effects in batch mode"
-msgstr "&Använd inte effekter i batchläge"
+#: prefs/AudioIOPrefs.cpp:100
+msgid "1 (Mono)"
+msgstr "1 (Mono)"
-#: prefs/BatchPrefs.cpp:83
-#: prefs/GUIPrefs.cpp:132
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr "Cl&eanSpeech läge (anpassat GUI)"
+#: prefs/AudioIOPrefs.cpp:101
+msgid "2 (Stereo)"
+msgstr "2 (Stereo)"
-#: prefs/DirectoriesPrefs.cpp:55
-#: prefs/DirectoriesPrefs.cpp:56
+#: prefs/DirectoriesPrefs.cpp:55 prefs/DirectoriesPrefs.cpp:56
#: prefs/PrefsDialog.cpp:279
msgid "Directories"
msgstr "Kataloger"
@@ -7560,34 +7400,31 @@ msgstr "Plats:"
msgid "Free Space:"
msgstr "Ledigt utrymme:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr "Spara automatiskt"
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr "Spara automatiskt en kopia av projektet i en separat mapp"
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
-msgstr "Spara automatiskt intervall:"
-
-#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
-msgstr "minuter"
-
#: prefs/DirectoriesPrefs.cpp:110
msgid "Audio cache"
msgstr "Ljud cache"
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "Play and/or record using RAM (useful for slow drives)"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
#: prefs/DirectoriesPrefs.cpp:121
msgid "Choose a location to place the temporary directory"
msgstr "Välj ett utrymme på hårddisken där den temporära katalogen kan placeras"
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: prefs/DirectoriesPrefs.cpp:166
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -7606,230 +7443,145 @@ msgstr "Katalog %s är inte skrivbar"
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "Ãndringar i den temporära katalogen kommer inte att fÃ¥ effekt förrän Audacity startas om."
-#: prefs/FileFormatPrefs.cpp:48
-#: prefs/FileFormatPrefs.cpp:49
-msgid "Import / Export"
-msgstr "Importera / Exportera"
-
-#: prefs/FileFormatPrefs.cpp:77
-msgid "MP3 Export Library"
-msgstr "MP3 Export bibliotek"
-
-#: prefs/FileFormatPrefs.cpp:80
-msgid "MP3 Library Version:"
-msgstr "MP3 bibliotek version:"
+#: prefs/GUIPrefs.cpp:42
+msgid "In Browser"
+msgstr "I webbläsaren"
-#: prefs/FileFormatPrefs.cpp:86
-msgid "MP3 Library:"
-msgstr "MP3 bibliotek:"
+#: prefs/GUIPrefs.cpp:43
+msgid "From Internet"
+msgstr "Från Internet"
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:91
-msgid "LAME MP3 Library:"
-msgstr "LAME MP3 bibliotek:"
-
-#: prefs/FileFormatPrefs.cpp:94
-msgid "&Download"
-msgstr "&Ladda ner"
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:136
-#, fuzzy
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr "Obs! Val av ljudkvalité vid export kan väljas genom att klicka på knappen för Inställningar i Exportera-dialogrutan.\n"
-
-#: prefs/FileFormatPrefs.cpp:100
-msgid "When importing audio files"
-msgstr "När ljudfiler importeras"
-
-#: prefs/FileFormatPrefs.cpp:103
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
-msgstr "&Skapa en kopia av okomprimerade ljudfiler innan redigering (säkrare)"
-
-#: prefs/FileFormatPrefs.cpp:104
-msgid "&Read uncompressed audio files directly from the original (faster)"
-msgstr "&Läs okomprimerade ljudfiler direkt från originalet (snabbare)"
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "&Normalize all tracks in project"
-msgstr "&Normalisera alla spår i projektet"
-
-#: prefs/FileFormatPrefs.cpp:111
-msgid "When saving a project that depends on other audio files"
-msgstr "Att spara ett projekt tillsammans med andra ljudfiler"
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
+msgstr ""
-#: prefs/FileFormatPrefs.cpp:114
-msgid "Always © all audio into project (safest)"
-msgstr "Kopiera &alltid allt ljud till projektet (säkrast)"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
+msgstr ""
-#: prefs/FileFormatPrefs.cpp:115
-msgid "&Do not copy any audio"
-msgstr "&Kopiera inget ljud"
+#: prefs/GUIPrefs.cpp:141
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 dB (shallow range for high-amplitude editing)"
-#: prefs/FileFormatPrefs.cpp:116
-msgid "&Ask user"
-msgstr "/fråga användaren"
+#: prefs/GUIPrefs.cpp:142
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 dB (PCM range of 8 bit samples)"
-#: prefs/FileFormatPrefs.cpp:120
-msgid "When exporting tracks to an audio file"
-msgstr "Medan spår exporteras till en ljudfil"
+#: prefs/GUIPrefs.cpp:143
+msgid "-60 dB (PCM range of 10 bit samples)"
+msgstr "-60 dB (PCM range of 16 bit samples)"
-#: prefs/FileFormatPrefs.cpp:123
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
-msgstr "Al<id mixa ner alla spår till stereo eller monokanaler."
+#: prefs/GUIPrefs.cpp:144
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 dB (PCM range of 16 bit samples)"
-#: prefs/FileFormatPrefs.cpp:124
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
-msgstr "%Använd egen mix (exempelvis för att exportera en 5.1 multikanalfil)"
+#: prefs/GUIPrefs.cpp:145
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 dB (ungefär gräns för mänsklig hörsel)"
-#: prefs/FileFormatPrefs.cpp:126
-msgid "S&how Metadata Editor prior to export step"
-msgstr "V&isa Metadata Editor främst för att exportera"
+#: prefs/GUIPrefs.cpp:146
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB (PCM range of 24 bit samples)"
-#: prefs/GUIPrefs.cpp:34
-#: prefs/GUIPrefs.cpp:35
-msgid "Interface"
-msgstr "Gränssnitt"
+#: prefs/SpectrumPrefs.cpp:140
+msgid "Display"
+msgstr "Display"
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
-msgstr "I webbläsaren"
+#: prefs/GUIPrefs.cpp:100
+msgid "Er&gonomic order of audio I/O buttons"
+msgstr ""
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
-msgstr "Från Internet"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
+msgstr ""
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
-msgstr "Simple"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
+msgstr ""
-#: prefs/GUIPrefs.cpp:94
-msgid "&Update display while playing"
-msgstr "&Uppdatera display medan ljud spelas upp"
+#: prefs/GUIPrefs.cpp:169
+msgid "Help:"
+msgstr "Hjälp:"
#: prefs/GUIPrefs.cpp:96
#, fuzzy
msgid "Cl&osing last window quits Audacity"
msgstr "Stänger sista fönstret innan Audacity avslutas"
-#: prefs/GUIPrefs.cpp:98
-msgid "Enable &dragging of left and right selection edges"
-msgstr "Drar i &markeringens vänstra och högra kant"
-
-#: prefs/GUIPrefs.cpp:100
-msgid "Er&gonomic order of audio I/O buttons"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:102
-msgid "Automatically &fit tracks vertically zoomed"
-msgstr "Spår anpassade &vertikalt inzoomade"
-
-#: prefs/GUIPrefs.cpp:104
-#, fuzzy
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
-msgstr "\"Flytta spår fokus\" &växla upprepande genom spåren"
-
-#: prefs/GUIPrefs.cpp:106
-msgid "Editing a &clip can move other clips"
-msgstr "Redigera ett &klipp kan flytta andra kliipp"
-
-#: prefs/GUIPrefs.cpp:108
-msgid "&Select all audio in project, if none selected"
-msgstr "&Välj allt ljud, om inget är valt"
-
#: prefs/GUIPrefs.cpp:110
msgid "&Beep on completion of longer activities"
msgstr "&Ljud när längre aktiviteter avslutas"
-#: prefs/GUIPrefs.cpp:114
-msgid "Show / Hide"
-msgstr "Visa/Dölj"
-
-#: prefs/GUIPrefs.cpp:116
-msgid "Enable cut &lines"
-msgstr "Använd skärl&injer"
-
-#: prefs/GUIPrefs.cpp:118
-msgid "Show warnings about &temp files"
-msgstr "Visa varningar om &temporära filer"
-
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:122
-#, fuzzy
-msgid "Show &Welcome Message at program start up"
-msgstr "Visa välkomstmeddelande vid programstart"
-
#: prefs/GUIPrefs.cpp:126
msgid "Modes"
msgstr "Modes"
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
+msgstr ""
+
#: prefs/GUIPrefs.cpp:129
msgid "Don't a&pply effects in batch mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
-msgstr "VIsa minimiområde: meter och 'Vågform (dB)'"
-
-#: prefs/GUIPrefs.cpp:141
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 dB (shallow range for high-amplitude editing)"
+#: prefs/FileFormatPrefs.cpp:48 prefs/FileFormatPrefs.cpp:49
+msgid "Import / Export"
+msgstr "Importera / Exportera"
-#: prefs/GUIPrefs.cpp:142
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 dB (PCM range of 8 bit samples)"
+#: prefs/FileFormatPrefs.cpp:100
+msgid "When importing audio files"
+msgstr "När ljudfiler importeras"
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
-msgstr "-60 dB (PCM range of 16 bit samples)"
+#: prefs/FileFormatPrefs.cpp:103
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
+msgstr "&Skapa en kopia av okomprimerade ljudfiler innan redigering (säkrare)"
-#: prefs/GUIPrefs.cpp:144
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 dB (PCM range of 16 bit samples)"
+#: prefs/FileFormatPrefs.cpp:104
+msgid "&Read uncompressed audio files directly from the original (faster)"
+msgstr "&Läs okomprimerade ljudfiler direkt från originalet (snabbare)"
-#: prefs/GUIPrefs.cpp:145
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 dB (ungefär gräns för mänsklig hörsel)"
+#: prefs/FileFormatPrefs.cpp:106
+msgid "&Normalize all tracks in project"
+msgstr "&Normalisera alla spår i projektet"
-#: prefs/GUIPrefs.cpp:146
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB (PCM range of 24 bit samples)"
+#: prefs/FileFormatPrefs.cpp:120
+msgid "When exporting tracks to an audio file"
+msgstr "Medan spår exporteras till en ljudfil"
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
-msgstr "Standard Visaläge"
+#: prefs/FileFormatPrefs.cpp:123
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+msgstr "Al<id mixa ner alla spår till stereo eller monokanaler."
-#: prefs/GUIPrefs.cpp:166
-msgid "Other interface choices"
-msgstr "Andra val av gränssnitt"
+#: prefs/FileFormatPrefs.cpp:124
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+msgstr "%Använd egen mix (exempelvis för att exportera en 5.1 multikanalfil)"
-#: prefs/GUIPrefs.cpp:169
-msgid "Help:"
-msgstr "Hjälp:"
+#: prefs/FileFormatPrefs.cpp:126
+msgid "S&how Metadata Editor prior to export step"
+msgstr "V&isa Metadata Editor främst för att exportera"
-#: prefs/GUIPrefs.cpp:170
-msgid "Solo Button:"
-msgstr "Solo knapp:"
+#: prefs/ImportExportPrefs.cpp:84
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
+msgstr ""
-#: prefs/KeyConfigPrefs.cpp:64
-#: prefs/KeyConfigPrefs.cpp:65
+#: prefs/KeyConfigPrefs.cpp:64 prefs/KeyConfigPrefs.cpp:65
msgid "Keyboard"
msgstr "Tangentbord"
@@ -7853,22 +7605,26 @@ msgstr "B&estäm"
msgid "Note: Pressing Cmd+Q will quit. All other keys are valid."
msgstr "Obs: Tryck Cmd+Q för att sluta. Andra tangenter gäller som vanligt."
-#: prefs/KeyConfigPrefs.cpp:124
-#: prefs/ThemePrefs.cpp:105
+#: prefs/KeyConfigPrefs.cpp:124 prefs/ThemePrefs.cpp:105
msgid "&Defaults"
msgstr "&Grundinställningar"
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr ""
+
#: prefs/KeyConfigPrefs.cpp:143
msgid "Key Combination"
msgstr "Tangentkombination"
-#: prefs/KeyConfigPrefs.cpp:163
-msgid "Export Keyboard Shortcuts As:"
-msgstr "Exportera kortkommandon som:"
+#: prefs/KeyConfigPrefs.cpp:367 toolbars/EditToolBar.cpp:144
+msgid "Undo"
+msgstr "Ã
ngra"
-#: prefs/KeyConfigPrefs.cpp:181
-msgid "Error saving keyboard shortcuts"
-msgstr "Fel när kortkommandon skulle sparas"
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr ""
#: prefs/KeyConfigPrefs.cpp:196
msgid "Select an XML file containing Audacity keyboard shortcuts..."
@@ -7878,6 +7634,14 @@ msgstr "Välj en XML-fil som innehåller Audacity kortkommandon..."
msgid "Error loading keyboard shortcuts"
msgstr "Fel när kortkommandon importerades"
+#: prefs/KeyConfigPrefs.cpp:163
+msgid "Export Keyboard Shortcuts As:"
+msgstr "Exportera kortkommandon som:"
+
+#: prefs/KeyConfigPrefs.cpp:181
+msgid "Error saving keyboard shortcuts"
+msgstr "Fel när kortkommandon skulle sparas"
+
#: prefs/KeyConfigPrefs.cpp:241
#, c-format
msgid "The keyboard shortcut '%s' is already assigned to:\n"
@@ -7887,10 +7651,61 @@ msgstr "Kortkommandot '%s' är redan kopplat till:\n"
"\n"
"'%s'"
-#: prefs/KeyConfigPrefs.cpp:367
-#: toolbars/EditToolBar.cpp:144
-msgid "Undo"
-msgstr "Ã
ngra"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:77
+msgid "MP3 Export Library"
+msgstr "MP3 Export bibliotek"
+
+#: prefs/FileFormatPrefs.cpp:80
+msgid "MP3 Library Version:"
+msgstr "MP3 bibliotek version:"
+
+#: prefs/FileFormatPrefs.cpp:86
+msgid "MP3 Library:"
+msgstr "MP3 bibliotek:"
+
+#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:91
+msgid "LAME MP3 Library:"
+msgstr "LAME MP3 bibliotek:"
+
+#: prefs/FileFormatPrefs.cpp:94
+msgid "&Download"
+msgstr "&Ladda ner"
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:109
+msgid "FFmpeg Library Version:"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
+msgid "FFmpeg Library:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:41 prefs/AudioIOPrefs.cpp:42
+msgid "Audio I/O"
+msgstr "Ljud in/ut"
+
+#: prefs/AudioIOPrefs.cpp:123
+msgid "Portaudio v"
+msgstr "Portaudio v"
+
+#: prefs/AudioIOPrefs.cpp:145
+msgid "Playthrough"
+msgstr "Spela upp"
#: prefs/AudioIOPrefs.cpp:147
msgid "&Play other tracks while recording new one"
@@ -7904,6 +7719,10 @@ msgstr ""
msgid "&Software Playthrough (Play new track while recording it)"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:170
+msgid "Cut Preview"
+msgstr "Klipp förhandsgranska"
+
#: prefs/MidiIOPrefs.cpp:160
msgid "Play before cut region:"
msgstr ""
@@ -7912,6 +7731,10 @@ msgstr ""
msgid "Play after cut region:"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:183
+msgid "Latency"
+msgstr "Latency"
+
#: prefs/MidiIOPrefs.cpp:173
msgid "Audio to buffer:"
msgstr ""
@@ -7924,12 +7747,23 @@ msgstr ""
msgid "Seek Time"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:200
+msgid "Short period:"
+msgstr "Kort period:"
+
+#: prefs/AudioIOPrefs.cpp:202
+msgid "Long period:"
+msgstr "LÃ¥ng period:"
+
+#: prefs/AudioIOPrefs.cpp:162
+msgid "Effects Preview"
+msgstr "Effekter förhandsgranska"
+
#: prefs/MidiIOPrefs.cpp:196
msgid "Play when previewing:"
msgstr ""
-#: prefs/MousePrefs.cpp:55
-#: prefs/MousePrefs.cpp:56
+#: prefs/MousePrefs.cpp:55 prefs/MousePrefs.cpp:56
msgid "Mouse"
msgstr "Mus"
@@ -7949,37 +7783,26 @@ msgstr "Command Action"
msgid "Buttons"
msgstr "Knappar"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:117
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:117
#: prefs/MousePrefs.cpp:122
msgid "Left-Click"
msgstr "Vänster klick"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:100
-#: prefs/MousePrefs.cpp:101
-#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:101 prefs/MousePrefs.cpp:102
msgid "Select"
msgstr "Välj"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:122
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:122
msgid "Set Selection Point"
msgstr "Bestäm markeringspunkt"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:115
-#: prefs/MousePrefs.cpp:119
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:115 prefs/MousePrefs.cpp:119 prefs/MousePrefs.cpp:123
msgid "Left-Drag"
msgstr "Vänster dra"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:123
msgid "Set Selection Range"
msgstr "Bestäm markeringsyta"
@@ -8007,12 +7830,8 @@ msgstr "Ctrl-vänster-klick"
msgid "Set Selection Point and Play"
msgstr "Bestäm markeringspunkt och spela upp"
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:108
-#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:106
+#: prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:108 prefs/MousePrefs.cpp:109
msgid "Zoom"
msgstr "Zoom"
@@ -8020,9 +7839,7 @@ msgstr "Zoom"
msgid "Zoom in on Point"
msgstr "Zooma in punkt"
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:125
msgid "Zoom in on a Range"
msgstr "Zooma in yta"
@@ -8030,18 +7847,15 @@ msgstr "Zooma in yta"
msgid "same as right-drag"
msgstr "Samma som höger-dra"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:106 prefs/MousePrefs.cpp:124
msgid "Right-Click"
msgstr "Höger-klick"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:106 prefs/MousePrefs.cpp:124
msgid "Zoom out one step"
msgstr "Zooma ut ett steg"
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:125
msgid "Right-Drag"
msgstr "Höger-dra"
@@ -8077,8 +7891,7 @@ msgstr "Shift-vänster-dra"
msgid "Time shift all clips in track"
msgstr "Time Shift alla klipp i spår"
-#: prefs/MousePrefs.cpp:113
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:113 prefs/MousePrefs.cpp:120
msgid "Ctrl-Left-Drag"
msgstr "Ctrl-vänster-dra"
@@ -8094,9 +7907,7 @@ msgstr "Ãndra envelope för förstärkning"
msgid "Change Sample"
msgstr "Ãndra ljud"
-#: prefs/MousePrefs.cpp:117
-#: prefs/MousePrefs.cpp:118
-#: prefs/MousePrefs.cpp:119
+#: prefs/MousePrefs.cpp:117 prefs/MousePrefs.cpp:118 prefs/MousePrefs.cpp:119
#: prefs/MousePrefs.cpp:120
msgid "Pencil"
msgstr "Penna"
@@ -8117,26 +7928,20 @@ msgstr "Ãndra flera ljud"
msgid "Change ONE Sample only"
msgstr "Ãndra ETT ljud bara"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123 prefs/MousePrefs.cpp:124
#: prefs/MousePrefs.cpp:125
msgid "Multi"
msgstr "Multi"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123
msgid "same as select tool"
msgstr "Samma som markeringsverktyg"
-#: prefs/MousePrefs.cpp:124
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:124 prefs/MousePrefs.cpp:125
msgid "same as zoom tool"
msgstr "Samma som zoomverktyg"
-#: prefs/MousePrefs.cpp:127
-#: prefs/MousePrefs.cpp:128
-#: prefs/MousePrefs.cpp:129
+#: prefs/MousePrefs.cpp:127 prefs/MousePrefs.cpp:128 prefs/MousePrefs.cpp:129
msgid "Any"
msgstr "Valfri"
@@ -8164,10 +7969,62 @@ msgstr "Ctrl-mushjul-vrida"
msgid "Zoom in or out"
msgstr "Zooma in eller ut"
+#: prefs/AudioIOPrefs.cpp:165
+msgid "Length of preview:"
+msgstr "Förhandsvisning längd:"
+
+#: prefs/AudioIOPrefs.cpp:173
+msgid "Preview before cut region:"
+msgstr "Förhandsgranska innan klipp av yta:"
+
+#: prefs/AudioIOPrefs.cpp:175
+msgid "Preview after cut region:"
+msgstr "Förhandsgranska efter klipp av yta:"
+
+#: prefs/AudioIOPrefs.cpp:197
+msgid "Seek Time when playing"
+msgstr "Sök Tid under uppspelning"
+
#: prefs/PrefsDialog.cpp:89
msgid "Audacity Preferences"
msgstr "Audacity Inställningar"
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:111
+msgid "When saving a project that depends on other audio files"
+msgstr "Att spara ett projekt tillsammans med andra ljudfiler"
+
+#: prefs/FileFormatPrefs.cpp:114
+msgid "Always © all audio into project (safest)"
+msgstr "Kopiera &alltid allt ljud till projektet (säkrast)"
+
+#: prefs/FileFormatPrefs.cpp:115
+msgid "&Do not copy any audio"
+msgstr "&Kopiera inget ljud"
+
+#: prefs/FileFormatPrefs.cpp:116
+msgid "&Ask user"
+msgstr "/fråga användaren"
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr "Spara automatiskt"
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr "Spara automatiskt en kopia av projektet i en separat mapp"
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr "Spara automatiskt intervall:"
+
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr "minuter"
+
#: prefs/QualityPrefs.cpp:73
msgid "Rectangle"
msgstr "Fyrkant"
@@ -8192,46 +8049,46 @@ msgstr "Standard samplingsrekvens:"
msgid "Default Sample Format:"
msgstr "Standard samplingsformat:"
-#: prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "Real-time sample rate converter:"
-
-#: prefs/QualityPrefs.cpp:139
-msgid "High-quality sample rate converter:"
-msgstr "High-quality sample rate converter:"
-
-#: prefs/QualityPrefs.cpp:142
-msgid "Real-time dither:"
-msgstr "Realtid dither:"
-
-#: prefs/QualityPrefs.cpp:145
-msgid "High-quality dither:"
-msgstr "Hög kvalite dither:"
-
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
-msgstr "Konvertering"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+#, fuzzy
+msgid "Sample Rate Converter:"
msgstr "Samplingsfrekvens konverterare"
#: prefs/QualityPrefs.cpp:164
msgid "Dither"
msgstr "Dither"
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
-msgstr "Realtid:"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
-msgstr "Hög kvalite:"
+#: prefs/AudioIOPrefs.cpp:149
+msgid "Overdub: &Play other tracks while recording new one"
+msgstr ""
-#: prefs/SmartRecordPrefs.cpp:54
-#: prefs/SmartRecordPrefs.cpp:55
-msgid "Smart Recording"
-msgstr "Smart Inspelning"
+#: prefs/AudioIOPrefs.cpp:150
+msgid "&Hardware Playthrough: Play new track while recording it"
+msgstr "&Hårdvarumässigt spela upp: Spela upp nytt spår samtidigt som man spelar in det"
+
+#: prefs/AudioIOPrefs.cpp:157
+msgid "&Software Playthrough: Play new track while recording or monitoring"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:160
+msgid "(uncheck when recording \"stereo mix\")"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
+msgstr ""
#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
msgid "Sound Activated Recording"
@@ -8241,23 +8098,58 @@ msgstr ""
msgid "Sound Activation Level (dB):"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:41
-#: prefs/SpectrumPrefs.cpp:42
+#: prefs/SpectrumPrefs.cpp:41 prefs/SpectrumPrefs.cpp:42
msgid "Spectrograms"
msgstr "Spektrogram"
-#: prefs/SpectrumPrefs.cpp:91
-msgid "FFT Size"
-msgstr "FFT Storlek"
-
#: prefs/SpectrumPrefs.cpp:94
msgid "8 - most wideband"
msgstr "8 - most wideband"
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:99
msgid "256 - default"
msgstr "256 - default"
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:107
msgid "32768 - most narrowband"
msgstr "32768 - most narrowband"
@@ -8266,21 +8158,26 @@ msgstr "32768 - most narrowband"
msgid "4096 - most narrowband"
msgstr "4096 - most narrowband"
-#: prefs/SpectrumPrefs.cpp:116
-msgid "Window type:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:93
+#, fuzzy
+msgid "Window type"
msgstr "Fönster sort:"
#: prefs/SpectrumPrefs.cpp:125
msgid "FFT Skip Points"
msgstr "FFT Skip Points"
-#: prefs/SpectrumPrefs.cpp:140
-msgid "Display"
-msgstr "Display"
-
-#: prefs/SpectrumPrefs.cpp:144
-msgid "&Grayscale"
-msgstr "&Gråskala"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
+msgstr ""
#: prefs/SpectrumPrefs.cpp:147
msgid "Minimum Frequency (Hz):"
@@ -8290,17 +8187,17 @@ msgstr "Min frekvens (Hz):"
msgid "Maximum Frequency (Hz):"
msgstr "Max frekvens (Hz):"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
-msgstr "&Y-Grid"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
+msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
-msgstr "&Hitta noter"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
+msgstr ""
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
-msgstr "&Kvanlisera noter"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
+msgstr ""
#: prefs/SpectrumPrefs.cpp:165
msgid "Minimum Amplitude (dB):"
@@ -8310,6 +8207,14 @@ msgstr "Minimum Amplitude (dB):"
msgid "Max. Number of Notes (1..128):"
msgstr "Max antal noter (1..128):"
+#: prefs/SpectrumPrefs.cpp:161
+msgid "&Find Notes"
+msgstr "&Hitta noter"
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Quantize Notes"
+msgstr "&Kvanlisera noter"
+
#: prefs/SpectrumPrefs.cpp:197
msgid "The maximum frequency must be an integer"
msgstr "Värdet på maxfrekvens måste vara ett heltal"
@@ -8326,20 +8231,70 @@ msgstr "Värdet på min-frekvens måste vara ett heltal"
msgid "Minimum frequency must be at least 0 Hz"
msgstr "Min frekvens måste vara minst 0 Hz"
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr "Minimiamplituden (dB) måste vara ett heltal"
#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
-msgstr "Maximalt antal noter måste vara ett heltal mellan 1..128"
+msgid "The maximum number of notes must be in the range 1..128"
+msgstr ""
-#: prefs/ThemePrefs.cpp:62
-#: prefs/ThemePrefs.cpp:63
+#: prefs/ThemePrefs.cpp:62 prefs/ThemePrefs.cpp:63
msgid "Theme"
msgstr "Tema"
+#: prefs/ThemePrefs.cpp:126
+msgid "Info"
+msgstr "Info"
+
+#: prefs/ThemePrefs.cpp:91
+#, fuzzy
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr "Tema är en experimentell specialité.\n"
+"\n"
+"För att testa, klicka på \"Spara tema cache\" och\n"
+"leta reda på och modifiera bilder och färger i\n"
+"ImageCacheVxx.png med en bildredigerare som\n"
+"exempelvis Gimp.\n"
+"\n"
+"Välj \"Ladda tema cache\" för att ladda de ändrade bilderna\n"
+"och färgerna tillbaka i Audacity.\n"
+"\n"
+"(Det är bara kontrollpanelen och färgerna i\n"
+"ljudspåret som för tillfället påverkas, även om\n"
+"bildfilen visar andra ikoner också.)"
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#. i18n-hint: && in here is an escape character to get a single & on screen,
#: prefs/ThemePrefs.cpp:93
msgid "Theme Cache - Images && Color"
@@ -8369,100 +8324,97 @@ msgstr "Spara filer"
msgid "Load Files"
msgstr "Ladda filer"
-#: prefs/ThemePrefs.cpp:126
-msgid "Info"
-msgstr "Info"
+#: prefs/GUIPrefs.cpp:50
+msgid "Simple"
+msgstr "Simple"
-#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
-msgstr "Tema är en experimentell specialité.\n"
-"\n"
-"För att testa, klicka på \"Spara tema cache\" och\n"
-"leta reda på och modifiera bilder och färger i\n"
-"ImageCacheVxx.png med en bildredigerare som\n"
-"exempelvis Gimp.\n"
-"\n"
-"Välj \"Ladda tema cache\" för att ladda de ändrade bilderna\n"
-"och färgerna tillbaka i Audacity.\n"
-"\n"
-"(Det är bara kontrollpanelen och färgerna i\n"
-"ljudspåret som för tillfället påverkas, även om\n"
-"bildfilen visar andra ikoner också.)\n"
-
-#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
-msgstr "Du har kompilerat Audacity med en extra knapp. \n"
-"'Output Sourcery'. En C version av image cache\n"
-"sparas som kan bli kompilerad som default.\n"
-
-#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
-msgstr "Om 'Ãppna Tema cache vid uppstart' är förbockad, \n"
-"Tema cache kommer att laddas när programmet \n"
-"startas.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:94
+msgid "&Update display while playing"
+msgstr "&Uppdatera display medan ljud spelas upp"
-#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
-msgstr "Vid spara och ladda indivuella temafiler används \n"
-"en separat fil för varje bild, men bygger ändå på \n"
-"samma idé.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:102
+msgid "Automatically &fit tracks vertically zoomed"
+msgstr "Spår anpassade &vertikalt inzoomade"
-#: toolbars/ControlToolBar.cpp:174
-msgid "Pause"
-msgstr "Paus"
+#: prefs/TracksPrefs.cpp:88
+#, fuzzy
+msgid "Default View Mode:"
+msgstr "Standard Visaläge"
-#: toolbars/ControlToolBar.cpp:177
-msgid "Play"
-msgstr "Spela"
+#: prefs/GUIPrefs.cpp:108
+msgid "&Select all audio in project, if none selected"
+msgstr "&Välj allt ljud, om inget är valt"
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
+#: prefs/GUIPrefs.cpp:116
+msgid "Enable cut &lines"
+msgstr "Använd skärl&injer"
+
+#: prefs/GUIPrefs.cpp:98
+msgid "Enable &dragging of left and right selection edges"
+msgstr "Drar i &markeringens vänstra och högra kant"
+
+#: prefs/GUIPrefs.cpp:104
+#, fuzzy
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+msgstr "\"Flytta spår fokus\" &växla upprepande genom spåren"
+
+#: prefs/GUIPrefs.cpp:106
+msgid "Editing a &clip can move other clips"
+msgstr "Redigera ett &klipp kan flytta andra kliipp"
+
+#: prefs/GUIPrefs.cpp:170
+msgid "Solo Button:"
+msgstr "Solo knapp:"
+
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
msgstr ""
-#: toolbars/ControlToolBar.cpp:182
-msgid "Stop"
-msgstr "Stopp"
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:185
-msgid "Skip to Start"
-msgstr "Gå till början"
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:188
-msgid "Skip to End"
-msgstr "GÃ¥ till slut"
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:192
-msgid "Record (Shift for Append Record)"
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
msgstr ""
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr ""
+
+#: Menus.cpp:786
+msgid "Pause"
+msgstr "Paus"
+
+#: Menus.cpp:785
+msgid "Stop"
+msgstr "Stopp"
+
#: toolbars/ControlToolBar.cpp:194
msgid "Clean Speech"
msgstr "Clean Speech"
-#: toolbars/ControlToolBar.cpp:530
-#: toolbars/ControlToolBar.cpp:844
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play (Shift for Loop Play)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:192
+msgid "Record (Shift for Append Record)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:530 toolbars/ControlToolBar.cpp:844
msgid "Error while opening sound device. "
msgstr "Fel vid öppnande av ljudenhet."
@@ -8474,13 +8426,11 @@ msgstr "Inspelning i CleanSpeech-läge är inte möjlig när ett spår, eller me
msgid "Recording not permitted"
msgstr "Inspelning inte tillåten"
-#: toolbars/DeviceToolBar.cpp:113
-#: toolbars/DeviceToolBar.cpp:115
+#: toolbars/DeviceToolBar.cpp:113 toolbars/DeviceToolBar.cpp:115
msgid "Output Device"
msgstr "Output Enhet"
-#: toolbars/DeviceToolBar.cpp:134
-#: toolbars/DeviceToolBar.cpp:136
+#: toolbars/DeviceToolBar.cpp:134 toolbars/DeviceToolBar.cpp:136
msgid "Input Device"
msgstr "Input Enhet"
@@ -8504,29 +8454,21 @@ msgstr "Zoom in"
msgid "Zoom Out"
msgstr "Zoom ut"
-#: toolbars/EditToolBar.cpp:156
-msgid "Zoom Toggle"
-msgstr "Zoom växla"
-
-#: toolbars/EditToolBar.cpp:160
-msgid "Fit Selection"
-msgstr "Anpassa markering"
-
#: toolbars/EditToolBar.cpp:160
msgid "Fit selection in window"
msgstr "Anpassa markering till fönster"
#: toolbars/EditToolBar.cpp:162
-msgid "Fit Project"
-msgstr "Anpassa projekt"
-
-#: toolbars/EditToolBar.cpp:162
msgid "Fit project in window"
msgstr "Anpassa projekt till fönster"
-#: toolbars/MeterToolBar.cpp:50
-msgid "Meter"
-msgstr "Mätare"
+#: toolbars/EditToolBar.cpp:160
+msgid "Fit Selection"
+msgstr "Anpassa markering"
+
+#: toolbars/EditToolBar.cpp:162
+msgid "Fit Project"
+msgstr "Anpassa projekt"
#: toolbars/MeterToolBar.cpp:80
msgid "Play Meter"
@@ -8574,22 +8516,27 @@ msgstr "Dragreglage-Input"
msgid "Input Source"
msgstr "Input källa"
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:80
msgid "Selection"
msgstr "Markering"
-#: toolbars/SelectionBar.cpp:128
-#: toolbars/SelectionBar.cpp:185
+#: toolbars/SelectionBar.cpp:128 toolbars/SelectionBar.cpp:185
msgid "Project Rate (Hz):"
msgstr "Sampl.frekvens:"
-#: toolbars/SelectionBar.cpp:142
-#: toolbars/SelectionBar.cpp:247
+#: toolbars/SelectionBar.cpp:142 toolbars/SelectionBar.cpp:247
msgid "Selection Start:"
msgstr "Markeringens början:"
-#: toolbars/SelectionBar.cpp:155
-#: toolbars/SelectionBar.cpp:253
+#: toolbars/SelectionBar.cpp:155 toolbars/SelectionBar.cpp:253
msgid "Length"
msgstr "Längd"
@@ -8597,13 +8544,11 @@ msgstr "Längd"
msgid "hidden"
msgstr "Dold"
-#: toolbars/SelectionBar.cpp:175
-#: toolbars/SelectionBar.cpp:264
+#: toolbars/SelectionBar.cpp:175 toolbars/SelectionBar.cpp:264
msgid "Audio Position:"
msgstr "Ljud Position:"
-#: toolbars/SelectionBar.cpp:225
-#: toolbars/SelectionBar.cpp:230
+#: toolbars/SelectionBar.cpp:225 toolbars/SelectionBar.cpp:230
msgid "Snap To"
msgstr "Fäst mot"
@@ -8624,8 +8569,7 @@ msgstr "Markeringens slut"
msgid "Audacity %s ToolBar"
msgstr "Audacity%s verktygspanel"
-#: toolbars/ToolDock.cpp:74
-#: toolbars/ToolDock.cpp:75
+#: toolbars/ToolDock.cpp:74 toolbars/ToolDock.cpp:75
msgid "ToolDock"
msgstr "Verktygsdockning"
@@ -8657,34 +8601,6 @@ msgstr "Vänster=Zoom in, Höger=Zoom ut, Mitten=Normal"
msgid "Click and drag to move a track in time"
msgstr "Klicka och dra för att flytta ett spår i tid"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr "Verktyg"
-
-#: toolbars/ToolsToolBar.cpp:147
-#: toolbars/ToolsToolBar.cpp:182
-msgid "Selection Tool"
-msgstr "Markeringsverktyg"
-
-#: toolbars/ToolsToolBar.cpp:148
-msgid "Envelope Tool"
-msgstr "Envelopeverktyg"
-
-#: toolbars/ToolsToolBar.cpp:149
-#: toolbars/ToolsToolBar.cpp:183
-msgid "Time Shift Tool"
-msgstr "Time Shift verktyg"
-
-#: toolbars/ToolsToolBar.cpp:150
-#: toolbars/ToolsToolBar.cpp:185
-msgid "Zoom Tool"
-msgstr "Zoomverktyg"
-
-#: toolbars/ToolsToolBar.cpp:151
-#: toolbars/ToolsToolBar.cpp:184
-msgid "Draw Tool"
-msgstr "Ritverktyg"
-
#: toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
msgstr "Multiverktyg"
@@ -8693,24 +8609,11 @@ msgstr "Multiverktyg"
msgid "Slide Tool"
msgstr "Dragreglageverktyg"
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr "Multiverktyg"
-
-#: toolbars/TranscriptionToolBar.cpp:84
-msgid "Transcription"
-msgstr "Transkription"
-
#: toolbars/TranscriptionToolBar.cpp:171
msgid "Play at selected speed"
msgstr "Spela vid vald hastighet"
-#: toolbars/TranscriptionToolBar.cpp:172
-msgid "Play-at-speed"
-msgstr "Spela-på -hastighet"
-
-#: toolbars/TranscriptionToolBar.cpp:178
-#: toolbars/TranscriptionToolBar.cpp:183
+#: toolbars/TranscriptionToolBar.cpp:178 toolbars/TranscriptionToolBar.cpp:183
msgid "Playback Speed"
msgstr "Uppspelning hastighet"
@@ -8718,74 +8621,38 @@ msgstr "Uppspelning hastighet"
msgid "Adjust left selection to next onset"
msgstr "Justera vänster markering till nästa onset"
-#: toolbars/TranscriptionToolBar.cpp:197
-msgid "Left-to-On"
-msgstr "Vänster-till-På"
-
#: toolbars/TranscriptionToolBar.cpp:199
msgid "Adjust right selection to previous offset"
msgstr "Justera höger markering till föregående offset"
-#: toolbars/TranscriptionToolBar.cpp:200
-msgid "Right-to-Off"
-msgstr "Höger-till-Av"
-
#: toolbars/TranscriptionToolBar.cpp:202
msgid "Adjust left selection to next offset"
msgstr "Justera vänster markering till nästa offset"
-#: toolbars/TranscriptionToolBar.cpp:203
-msgid "Left-to-Off"
-msgstr "Vänster-till-Av"
-
#: toolbars/TranscriptionToolBar.cpp:205
msgid "Adjust right selection to previous onset"
msgstr "Justera högermarkering till föregående onset"
-#: toolbars/TranscriptionToolBar.cpp:206
-msgid "Right-to-On"
-msgstr "Höger-till-På"
-
#: toolbars/TranscriptionToolBar.cpp:208
msgid "Select region of sound around cursor"
msgstr "Välj område med ljud kring markör"
-#: toolbars/TranscriptionToolBar.cpp:209
-msgid "Select-Sound"
-msgstr "Välj-Ljud"
-
#: toolbars/TranscriptionToolBar.cpp:211
msgid "Select region of silence around cursor"
msgstr "Välj område av tystnad kring markör"
-#: toolbars/TranscriptionToolBar.cpp:212
-msgid "Select-Silence"
-msgstr "Välj-Tystnad"
-
#: toolbars/TranscriptionToolBar.cpp:214
msgid "Automatically make labels from words"
msgstr "Gör etiketter från ord automatiskt"
-#: toolbars/TranscriptionToolBar.cpp:215
-msgid "Make Labels"
-msgstr "Skapa etiketter"
-
#: toolbars/TranscriptionToolBar.cpp:217
msgid "Add label at selection"
msgstr "Skapa etikett vid markering"
-#: toolbars/TranscriptionToolBar.cpp:218
-msgid "Add Label"
-msgstr "Skapa etikett"
-
#: toolbars/TranscriptionToolBar.cpp:220
msgid "Calibrate voicekey"
msgstr "Kalibrera voicekey"
-#: toolbars/TranscriptionToolBar.cpp:221
-msgid "Calibrate"
-msgstr "Kalibrera"
-
#: toolbars/TranscriptionToolBar.cpp:225
msgid "Adjust Sensitivity"
msgstr "Ställ in känslighet"
@@ -8818,6 +8685,46 @@ msgstr "Direction Changes (Högt tröskelvärde)"
msgid "Key type"
msgstr "Key typ"
+#: toolbars/TranscriptionToolBar.cpp:172
+msgid "Play-at-speed"
+msgstr "Spela-på -hastighet"
+
+#: toolbars/TranscriptionToolBar.cpp:197
+msgid "Left-to-On"
+msgstr "Vänster-till-På"
+
+#: toolbars/TranscriptionToolBar.cpp:200
+msgid "Right-to-Off"
+msgstr "Höger-till-Av"
+
+#: toolbars/TranscriptionToolBar.cpp:203
+msgid "Left-to-Off"
+msgstr "Vänster-till-Av"
+
+#: toolbars/TranscriptionToolBar.cpp:206
+msgid "Right-to-On"
+msgstr "Höger-till-På"
+
+#: toolbars/TranscriptionToolBar.cpp:209
+msgid "Select-Sound"
+msgstr "Välj-Ljud"
+
+#: toolbars/TranscriptionToolBar.cpp:212
+msgid "Select-Silence"
+msgstr "Välj-Tystnad"
+
+#: toolbars/TranscriptionToolBar.cpp:215
+msgid "Make Labels"
+msgstr "Skapa etiketter"
+
+#: toolbars/TranscriptionToolBar.cpp:218
+msgid "Add Label"
+msgstr "Skapa etikett"
+
+#: toolbars/TranscriptionToolBar.cpp:221
+msgid "Calibrate"
+msgstr "Kalibrera"
+
#: widgets/AButton.cpp:302
msgid " (disabled)"
msgstr " (avstängd)"
@@ -8831,14 +8738,12 @@ msgid "Button"
msgstr "Knapp"
#. i18n-hint: One-letter abbreviation for Left, in VU Meter
-#: widgets/ASlider.cpp:604
-#: widgets/Meter.cpp:212
+#: widgets/ASlider.cpp:604 widgets/Meter.cpp:212
msgid "L"
msgstr "V"
#. i18n-hint: One-letter abbreviation for Right, in VU Meter
-#: widgets/ASlider.cpp:607
-#: widgets/Meter.cpp:214
+#: widgets/ASlider.cpp:607 widgets/Meter.cpp:214
msgid "R"
msgstr "H"
@@ -8854,8 +8759,7 @@ msgstr "Vänster"
msgid "Right"
msgstr "Höger"
-#: widgets/ErrorDialog.cpp:78
-#: widgets/ErrorDialog.cpp:102
+#: widgets/ErrorDialog.cpp:78 widgets/ErrorDialog.cpp:102
msgid "Help"
msgstr "Hjälp"
@@ -8888,8 +8792,7 @@ msgstr "Grabber"
msgid "%d rows, %d columns"
msgstr "%d rader, %d kolumner"
-#: widgets/Grid.cpp:649
-#: widgets/Grid.cpp:776
+#: widgets/Grid.cpp:649 widgets/Grid.cpp:776
#, c-format
msgid "Row %d"
msgstr "Rad %d"
@@ -8968,8 +8871,7 @@ msgstr ""
msgid "Cancel"
msgstr ""
-#: widgets/Ruler.cpp:1478
-#: widgets/Ruler.cpp:1479
+#: widgets/Ruler.cpp:1478 widgets/Ruler.cpp:1479
msgid "Vertical Ruler"
msgstr "Vertikal linjal"
@@ -9155,3 +9057,15 @@ msgstr ""
msgid "Could not load file: \"%s\""
msgstr "Kunde inte öppna fil: \"%s\""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
+
diff --git a/locale/tg.po b/locale/tg.po
index b02ac6f..66abda9 100644
--- a/locale/tg.po
+++ b/locale/tg.po
@@ -18,9 +18,7 @@ msgstr "Project-Id-Version: tg\n"
"X-Poedit-SourceCharset: utf-8\n"
"X-Generator: KBabel 1.11.4\n"
-#: AboutDialog.cpp:139
-#: AudacityApp.cpp:674
-#: Menus.cpp:783
+#: AboutDialog.cpp:139 AudacityApp.cpp:674 Menus.cpp:783
msgid "&About Audacity..."
msgstr "&ÐÐ°Ñ Ð±Ð¾Ñаи Audacity..."
@@ -33,11 +31,11 @@ msgid "Audacity is a free program written by a team of volunteer <a href=\"http:
msgstr ""
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#. i18n-hint: The translation of "translator_credits" will appear
@@ -46,8 +44,7 @@ msgstr ""
#.
#. For example: "English translation by Dominic Mazzoni."
#.
-#: AboutDialog.cpp:232
-#: AboutDialog.cpp:234
+#: AboutDialog.cpp:232 AboutDialog.cpp:234
msgid "translator_credits"
msgstr "Ð Ð¾Ò·ÐµÑ ÐовакÑ, ÐикÑÐ¾Ñ ÐбÑагимов, Ðкмал Саломов, ÐÐºÐ±Ð°Ñ ÐаÑанÑоев, ÐаÑина ÐÑÑодова, СӯҳÑоб РаÑидов, ÐбдÑÑаҳмон Холов. ÐоÑÑаи ÑлекÑÑонӣ: youth_opportunities at tajikngo.org"
@@ -90,7 +87,7 @@ msgid "Special thanks:"
msgstr "ТаÑаккÑÑи маÑ
ÑÑÑ:"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
msgstr ""
#: AboutDialog.cpp:258
@@ -102,8 +99,7 @@ msgstr ""
msgid "Build Information"
msgstr ""
-#: AboutDialog.cpp:148
-#: effects/AvcCompressor.cpp:674
+#: AboutDialog.cpp:148 effects/AvcCompressor.cpp:674
msgid "Enabled"
msgstr "ФаÑол ÑÑд"
@@ -201,16 +197,12 @@ msgstr "ТанзимоÑи пӯÑа: "
msgid "GPL License"
msgstr ""
-#: AudacityApp.cpp:418
-#: Project.cpp:1654
+#: AudacityApp.cpp:418 Project.cpp:1654
#, c-format
msgid "%s is already open in another window."
msgstr "%s аллакай Ð´Ð°Ñ Ñавзанаи Ð´Ð¸Ð³Ð°Ñ ÐºÑÑода ÑÑдааÑÑ."
-#: AudacityApp.cpp:420
-#: Project.cpp:1656
-#: Project.cpp:1737
-#: Project.cpp:1881
+#: AudacityApp.cpp:420 Project.cpp:1656 Project.cpp:1737 Project.cpp:1881
#: Project.cpp:1983
msgid "Error opening project"
msgstr "ÐоиҳаÑо кÑÑода наÑавониÑÑ"
@@ -236,21 +228,28 @@ msgstr "ÐндикаÑоÑи даÑомад"
msgid "Output Meter"
msgstr "ÐндикаÑоÑи баÑомад"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
-#: AudacityApp.cpp:676
-#: Menus.cpp:531
-msgid "&Preferences...\tCtrl+,"
-msgstr "&ÐаÑамеÑÑҳо...\tCtrl+,"
+#: Menus.cpp:201
+msgid "&New"
+msgstr "&Ðав"
+
+#: Menus.cpp:203
+msgid "&Open..."
+msgstr "&ÐÑÑодан..."
+
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
-#: AudacityApp.cpp:759
-#: AudacityApp.cpp:844
+#: AudacityApp.cpp:676 Menus.cpp:531
+msgid "&Preferences..."
+msgstr "&ÐаÑамеÑÑҳо..."
+
+#: AudacityApp.cpp:759 AudacityApp.cpp:844
#, c-format
msgid "Using block size of %ld\n"
msgstr "ÐÑÑиÑодаи блоки Ð°Ð½Ð´Ð¾Ð·Ð°Ð°Ñ %ld\n"
-#: AudacityApp.cpp:781
-#: AudacityApp.cpp:859
+#: AudacityApp.cpp:781 AudacityApp.cpp:859
#, c-format
msgid "Unknown command line option: %s\n"
msgstr "ÒиÑмаÑи номаÑлÑми ÑаÑÑи ÑаÑмоиÑÓ£: %s\n"
@@ -366,14 +365,14 @@ msgstr "ХаÑо: "
msgid "Error Initializing Audio"
msgstr "ХаÑо Ð´Ð°Ñ Ð²Ð°ÒÑи омодаÑозии овоз "
-#: AudioIO.cpp:1375
-msgid "Latency problem"
+#: AudioIO.cpp:1225
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
+"Audacity has brought it back to start at zero.\n"
+"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
msgstr ""
#: AudioIO.cpp:1375
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
-"Audacity has brought it back to start at zero.\n"
-"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
+msgid "Latency problem"
msgstr ""
#: AutoRecovery.cpp:40
@@ -421,38 +420,25 @@ msgstr ""
msgid "Confirm?"
msgstr ""
-#: AutoRecovery.cpp:132
-#: AutoRecovery.cpp:169
+#: AutoRecovery.cpp:132 AutoRecovery.cpp:169
msgid "Could not enumerate files in auto save directory"
msgstr "ФайлҳоÑо Ð´Ð°Ñ Ð¿Ó¯Ñаи Ñ
ÑднигоҳдоÑкÑнанда ÑаÒамгÑзоÑÓ£ каÑда наÑÑд"
-#: AutoRecovery.cpp:133
-#: AutoRecovery.cpp:170
-#: Menus.cpp:2551
-#: Menus.cpp:4386
-#: Project.cpp:1840
-#: Project.cpp:3162
-#: Project.cpp:3237
-#: WaveTrack.cpp:519
-#: WaveTrack.cpp:538
-#: WaveTrack.cpp:1600
-#: effects/Effect.cpp:346
-#: export/ExportMP2.cpp:83
-#: prefs/DirectoriesPrefs.cpp:188
-#: prefs/KeyConfigPrefs.cpp:245
-#: toolbars/ControlToolBar.cpp:530
+#: AutoRecovery.cpp:133 AutoRecovery.cpp:170 Menus.cpp:2551 Menus.cpp:4386
+#: Project.cpp:1840 Project.cpp:3162 Project.cpp:3237 WaveTrack.cpp:519
+#: WaveTrack.cpp:538 WaveTrack.cpp:1600 effects/Effect.cpp:346
+#: export/ExportMP2.cpp:83 prefs/DirectoriesPrefs.cpp:188
+#: prefs/KeyConfigPrefs.cpp:245 toolbars/ControlToolBar.cpp:530
#: toolbars/ControlToolBar.cpp:817
msgid "Error"
msgstr "ХаÑо"
-#: BatchCommandDialog.cpp:56
-#: BatchCommandDialog.cpp:60
+#: BatchCommandDialog.cpp:56 BatchCommandDialog.cpp:60
#: BatchCommandDialog.cpp:61
msgid "Select Command"
msgstr "ÐнÑиÑ
оби ÑаÑмон"
-#: BatchCommandDialog.cpp:80
-#: BatchProcessDialog.cpp:454
+#: BatchCommandDialog.cpp:80 BatchProcessDialog.cpp:454
#: prefs/KeyConfigPrefs.cpp:142
msgid "&Command"
msgstr "&ФаÑмон"
@@ -461,8 +447,7 @@ msgstr "&ФаÑмон"
msgid "&Edit Parameters"
msgstr "&ТаҳÑиÑи паÑамеÑÑҳо"
-#: BatchCommandDialog.cpp:89
-#: BatchProcessDialog.cpp:455
+#: BatchCommandDialog.cpp:89 BatchProcessDialog.cpp:455
msgid "&Parameters"
msgstr "&ÐаÑамеÑÑҳо"
@@ -509,8 +494,7 @@ msgstr "ÐÑÑиÑодаи %s бо паÑамеÑÑ(ҳо)и\n"
"\n"
"%s"
-#: BatchCommands.cpp:667
-#: BatchCommands.cpp:672
+#: BatchCommands.cpp:667 BatchCommands.cpp:672
msgid "Test Mode"
msgstr "ҲолаÑи озмоиÑ"
@@ -519,8 +503,7 @@ msgstr "ҲолаÑи озмоиÑ"
msgid "Apply %s"
msgstr "ÐÑÑиÑодаи %s"
-#: BatchProcessDialog.cpp:60
-#: BatchProcessDialog.cpp:70
+#: BatchProcessDialog.cpp:60 BatchProcessDialog.cpp:70
#: BatchProcessDialog.cpp:71
msgid "Apply Chain"
msgstr "ÐÑÑиÑодаи занҷиÑ"
@@ -545,61 +528,31 @@ msgstr "ÐÑÑиÑодаи ин &Ðоиҳа"
msgid "Apply to &Files..."
msgstr "ÐÑÑиÑодаи &ба Ñайлҳо..."
-#: BatchProcessDialog.cpp:108
-#: BatchProcessDialog.cpp:247
-#: LabelDialog.cpp:136
-#: LabelDialog.cpp:140
-#: UploadDialog.cpp:180
-#: effects/Amplify.cpp:209
-#: effects/AutoDuck.cpp:528
-#: effects/AutoDuck.cpp:532
-#: effects/AvcCompressor.cpp:732
-#: effects/ChangeLength.cpp:184
-#: effects/ChangePitch.cpp:393
-#: effects/ChangeSpeed.cpp:393
-#: effects/ChangeTempo.cpp:295
-#: effects/ClickRemoval.cpp:429
-#: effects/Compressor.cpp:516
-#: effects/Effect.cpp:399
-#: effects/Effect.cpp:405
-#: effects/Equalization.cpp:1218
-#: effects/Leveller.cpp:249
-#: effects/Normalize.cpp:353
-#: effects/Phaser.cpp:600
-#: effects/Repeat.cpp:271
-#: effects/SpikeCleaner.cpp:188
-#: effects/TruncSilence.cpp:278
-#: effects/VST/VSTEffect.cpp:95
-#: effects/VST/VSTEffect.cpp:451
-#: effects/Wahwah.cpp:587
-#: effects/audiounits/AudioUnitEffect.cpp:882
-#: effects/ladspa/LadspaEffect.cpp:609
-#: effects/nyquist/Nyquist.cpp:823
-#: effects/nyquist/Nyquist.cpp:987
-#: export/Export.cpp:952
-#: export/ExportCL.cpp:328
-#: export/ExportCL.cpp:332
-#: export/ExportFLAC.cpp:226
-#: export/ExportFLAC.cpp:230
-#: export/ExportMP2.cpp:236
-#: export/ExportMP2.cpp:240
-#: export/ExportMP3.cpp:984
-#: export/ExportMP3.cpp:988
-#: export/ExportMP3.cpp:1524
-#: export/ExportMP3.cpp:1528
-#: export/ExportMultiple.cpp:302
-#: export/ExportMultiple.cpp:306
-#: export/ExportOGG.cpp:237
-#: export/ExportOGG.cpp:241
-#: export/ExportPCM.cpp:267
-#: export/ExportPCM.cpp:271
-#: import/ImportRaw.cpp:443
-#: prefs/PrefsDialog.cpp:169
+#: BatchProcessDialog.cpp:108 BatchProcessDialog.cpp:247 LabelDialog.cpp:136
+#: LabelDialog.cpp:140 UploadDialog.cpp:180 effects/Amplify.cpp:209
+#: effects/AutoDuck.cpp:528 effects/AutoDuck.cpp:532
+#: effects/AvcCompressor.cpp:732 effects/ChangeLength.cpp:184
+#: effects/ChangePitch.cpp:393 effects/ChangeSpeed.cpp:393
+#: effects/ChangeTempo.cpp:295 effects/ClickRemoval.cpp:429
+#: effects/Compressor.cpp:516 effects/Effect.cpp:399 effects/Effect.cpp:405
+#: effects/Equalization.cpp:1218 effects/Leveller.cpp:249
+#: effects/Normalize.cpp:353 effects/Phaser.cpp:600 effects/Repeat.cpp:271
+#: effects/SpikeCleaner.cpp:188 effects/TruncSilence.cpp:278
+#: effects/VST/VSTEffect.cpp:95 effects/VST/VSTEffect.cpp:451
+#: effects/Wahwah.cpp:587 effects/audiounits/AudioUnitEffect.cpp:882
+#: effects/ladspa/LadspaEffect.cpp:609 effects/nyquist/Nyquist.cpp:823
+#: effects/nyquist/Nyquist.cpp:987 export/Export.cpp:952
+#: export/ExportCL.cpp:328 export/ExportCL.cpp:332 export/ExportFLAC.cpp:226
+#: export/ExportFLAC.cpp:230 export/ExportMP2.cpp:236 export/ExportMP2.cpp:240
+#: export/ExportMP3.cpp:984 export/ExportMP3.cpp:988 export/ExportMP3.cpp:1524
+#: export/ExportMP3.cpp:1528 export/ExportMultiple.cpp:302
+#: export/ExportMultiple.cpp:306 export/ExportOGG.cpp:237
+#: export/ExportOGG.cpp:241 export/ExportPCM.cpp:267 export/ExportPCM.cpp:271
+#: import/ImportRaw.cpp:443 prefs/PrefsDialog.cpp:169
msgid "&Cancel"
msgstr "&ÐÐµÐºÐ¾Ñ ÐºÐ°Ñдан"
-#: BatchProcessDialog.cpp:146
-#: BatchProcessDialog.cpp:191
+#: BatchProcessDialog.cpp:146 BatchProcessDialog.cpp:191
msgid "No chain selected"
msgstr "Ягон занҷиÑа инÑиÑ
об наÑÑдааÑÑ"
@@ -636,8 +589,7 @@ msgstr "ÐÑÑиÑодабаÑÓ£..."
msgid "File"
msgstr "Файл"
-#: BatchProcessDialog.cpp:356
-#: BatchProcessDialog.cpp:360
+#: BatchProcessDialog.cpp:356 BatchProcessDialog.cpp:360
#: BatchProcessDialog.cpp:361
msgid "Edit Chains"
msgstr "ТаҳÑиÑи занҷиÑаҳо"
@@ -650,9 +602,7 @@ msgstr "&ÐанҷиÑаҳо"
msgid "&Add"
msgstr "&Ðлова каÑдан"
-#: BatchProcessDialog.cpp:436
-#: LabelDialog.cpp:128
-#: TrackPanel.cpp:3937
+#: BatchProcessDialog.cpp:436 LabelDialog.cpp:128 TrackPanel.cpp:3937
msgid "&Remove"
msgstr "&ÐÐ¸Ð³Ð°Ñ ÐºÐ°Ñдан"
@@ -666,8 +616,8 @@ msgstr "Ð&анҷиÑа (ÐаÑ
Ñи дÑкаÑаÑа Ñ Ð¿Ð°Ñ
Ñи SPACE баÑ
#. i18n-hint: This is the number of the command in the list
#: BatchProcessDialog.cpp:453
-msgid "No"
-msgstr "Ðе"
+msgid "Num"
+msgstr ""
#: BatchProcessDialog.cpp:459
msgid "&Insert"
@@ -756,8 +706,7 @@ msgstr "Фазои диÑк"
msgid "Copy Selected Audio Into Project"
msgstr "ÐÑÑÑ
абаÑдоÑии инÑиÑ
оби аÑдиоӣ Ð´Ð°Ñ Ð»Ð¾Ð¸Ò³Ð°"
-#: Dependencies.cpp:304
-#: Dependencies.cpp:413
+#: Dependencies.cpp:304 Dependencies.cpp:413
msgid "Cancel Save"
msgstr "ÐекоÑÑозии ÑабÑ"
@@ -769,8 +718,7 @@ msgstr ""
msgid "Copy All Audio into Project (Safer)"
msgstr ""
-#: Dependencies.cpp:320
-#: Dependencies.cpp:325
+#: Dependencies.cpp:320 Dependencies.cpp:325
msgid "Ask me"
msgstr "ÐаÑо пÑÑÑед"
@@ -806,9 +754,7 @@ msgid "Warning: there is very little free disk space left on this volume.\n"
msgstr "ÐгоÑ
Ó£: Ð´Ð°Ñ Ð´Ð¸Ñк ҷои Ñ
олӣ Ñ
еле кам аÑÑ.\n"
"ÐÐ°Ñ Ð¼Ñколамаи мÑвоÑиÒаÑкÑнӣ ÑӯйÑ
аÑи дигаÑÑо баÑои Ñайлҳои мÑваÒÒаÑÓ£ инÑиÑ
об кÑнед."
-#: DirManager.cpp:221
-#: DirManager.cpp:251
-#: DirManager.cpp:332
+#: DirManager.cpp:221 DirManager.cpp:251 DirManager.cpp:332
msgid "Progress"
msgstr "Раванди иҷÑоиÑ"
@@ -863,8 +809,7 @@ msgstr "ТаÒйиÑи номи '%s' ба '%s' номÑмкин аÑÑ"
msgid "Changed block %s to new alias name\n"
msgstr ""
-#: DirManager.cpp:1115
-#: DirManager.cpp:1403
+#: DirManager.cpp:1115 DirManager.cpp:1403
msgid "Inspecting project file data..."
msgstr "ТаÑÑиÑи додаҳои Ñайл Ð´Ð°Ñ Ð»Ð¾Ð¸Ò³Ð°Ð¸..."
@@ -915,14 +860,9 @@ msgstr "Ðе ÑозакÑнӣ идома диҳед; бо Ñайлҳои ило
msgid "Close project immediately with no changes"
msgstr "ÐоиҳаÑо бе ÑаÑÑ
Ð¸Ñ Ð±Ðµ ÑаÒиÑÐ¾Ñ Ð¿Ó¯Ñед"
-#: DirManager.cpp:1228
-#: DirManager.cpp:1263
-#: DirManager.cpp:1309
-#: DirManager.cpp:1351
-#: export/Export.cpp:458
-#: export/Export.cpp:475
-#: export/Export.cpp:494
-#: widgets/Warning.cpp:55
+#: DirManager.cpp:1228 DirManager.cpp:1263 DirManager.cpp:1309
+#: DirManager.cpp:1351 export/Export.cpp:458 export/Export.cpp:475
+#: export/Export.cpp:494 widgets/Warning.cpp:55
msgid "Warning"
msgstr "Ðгоҳӣ"
@@ -944,14 +884,11 @@ msgstr "ТаÑÑиÑи лоиҳа боз ÑÑÑ, ки Ñайл(ҳо)и вÑÑÑ
msgid "Replace missing data with silence [permanent upon save]"
msgstr "Ðодаҳои ҷойнадоÑÑаÑо аз Ñӯи Ñ
омÑÑÓ£ иваз намоед [ÑабÑи доимӣ]"
-#: DirManager.cpp:1260
-#: DirManager.cpp:1348
+#: DirManager.cpp:1260 DirManager.cpp:1348
msgid "Temporarily replace missing data with silence [this session only]"
msgstr "ÐÑваÒÒаÑан додаҳои ҷойнадоÑÑаÑо аз Ñӯи Ñ
омÑÑÓ£ иваз намоед [Ñанҳо ин ÒиÑмаÑ]"
-#: DirManager.cpp:1261
-#: DirManager.cpp:1307
-#: DirManager.cpp:1349
+#: DirManager.cpp:1261 DirManager.cpp:1307 DirManager.cpp:1349
msgid "Close project immediately with no further changes"
msgstr "ÐоиҳаÑо бе иловаи ÑаÒиÑоÑҳо, ÑавÑан пӯÑонед"
@@ -1020,11 +957,11 @@ msgstr "УÑÑÑвоÑ"
msgid "FFmpeg support not compiled in"
msgstr ""
-#: FFmpeg.cpp:101
+#: FFmpeg.cpp:103
msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
#: FFmpeg.cpp:104
@@ -1082,11 +1019,12 @@ msgstr ""
msgid "FFmpeg not found"
msgstr ""
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
#: FFmpeg.h:109
@@ -1109,8 +1047,7 @@ msgstr ""
msgid "Frequency Analysis"
msgstr "Таҳлили баÑомадӣ"
-#: FreqWindow.cpp:140
-#: TrackPanel.cpp:511
+#: FreqWindow.cpp:140 TrackPanel.cpp:511
msgid "Spectrum"
msgstr "СпекÑÑÑм"
@@ -1138,8 +1075,7 @@ msgstr "СепÑÑÑÑм(мÑайÑнкÑнии Ñ
аÑогӣ)"
msgid "Algorithm"
msgstr "ÐлгоÑиÑм:"
-#: FreqWindow.cpp:168
-#: HistoryWindow.cpp:79
+#: FreqWindow.cpp:168 HistoryWindow.cpp:79
msgid "Size"
msgstr "Ðндоза"
@@ -1165,58 +1101,62 @@ msgstr "ÐаÑомади ÑабÑи воÒеÑÓ£"
msgid "Axis"
msgstr ""
-#: FreqWindow.cpp:206
-#: LabelDialog.cpp:130
-#: Menus.cpp:245
-#: Menus.cpp:274
+#: FreqWindow.cpp:206 LabelDialog.cpp:130 Menus.cpp:245 Menus.cpp:274
msgid "&Export..."
msgstr "&СодиÑоÑ..."
-#: export/ExportCL.cpp:188
-#: export/ExportOGG.cpp:121
-#: export/ExportPCM.cpp:114
+#: export/ExportCL.cpp:188 export/ExportOGG.cpp:121 export/ExportPCM.cpp:114
msgid "Export"
msgstr "СодиÑоÑ"
-#: Dependencies.cpp:308
-#: FreqWindow.cpp:209
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
+#: Dependencies.cpp:308 FreqWindow.cpp:209
msgid "Close"
msgstr "ÐÓ¯Ñидан(баÑÑан)"
-#: FreqWindow.cpp:272
-#: FreqWindow.cpp:395
-#: effects/AutoDuck.cpp:487
-#: effects/AutoDuck.cpp:521
-#: effects/AutoDuck.cpp:799
-#: effects/Compressor.cpp:348
-#: effects/Compressor.cpp:356
-#: effects/Equalization.cpp:1045
-#: effects/Equalization.cpp:1047
-#: effects/Equalization.cpp:1055
-#: effects/Equalization.cpp:1147
-#: effects/Equalization.cpp:1333
-#: effects/Equalization.cpp:1344
-#: effects/Normalize.cpp:340
-#: widgets/Meter.cpp:357
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr ""
+
+#: FreqWindow.cpp:272 FreqWindow.cpp:395 effects/AutoDuck.cpp:487
+#: effects/AutoDuck.cpp:521 effects/AutoDuck.cpp:799
+#: effects/Compressor.cpp:348 effects/Compressor.cpp:356
+#: effects/Equalization.cpp:1045 effects/Equalization.cpp:1047
+#: effects/Equalization.cpp:1055 effects/Equalization.cpp:1147
+#: effects/Equalization.cpp:1333 effects/Equalization.cpp:1344
+#: effects/Normalize.cpp:340 widgets/Meter.cpp:357
msgid "dB"
msgstr "дÐ"
#. i18n-hint: This is the abbreviation for "Hertz", or
#. cycles per second.
-#: FreqWindow.cpp:287
-#: FreqWindow.cpp:435
-#: effects/Equalization.cpp:1086
-#: effects/Equalization.cpp:1143
-#: import/ImportRaw.cpp:416
+#: FreqWindow.cpp:287 FreqWindow.cpp:435 effects/Equalization.cpp:1086
+#: effects/Equalization.cpp:1143 import/ImportRaw.cpp:416
msgid "Hz"
msgstr "ҲеÑÑз"
+#: Menus.cpp:3390
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "ÐаÑои ÑоÑ
Ñани ÑпекÑÑÑм, ҳамаи ÑоҳÑаҳои инÑиÑ
обÑÑда боÑд навÑи ÑкÑ
ела доÑÑа боÑанд."
+
+#: Menus.cpp:3416
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "ÐÑдио баÑзиÑд инÑиÑ
об ÑÑд. Танҳо %.1f ÑониÑҳои аввали аÑдио ÑаÑÑ
Ð¸Ñ Ð¼ÐµÑаванд."
+
#: FreqWindow.cpp:379
msgid "Not enough data selected."
msgstr "Ðодаҳо кам инÑиÑ
об ÑÑданд."
-#: FreqWindow.cpp:443
-#: effects/AutoDuck.cpp:801
+#: FreqWindow.cpp:443 effects/AutoDuck.cpp:801
msgid "s"
msgstr "ÑÑ"
@@ -1238,12 +1178,8 @@ msgstr "ÑпекÑÑÑм.маÑн"
msgid "Export Spectral Data As:"
msgstr "СодиÑоÑи додаҳо ба монанди:"
-#: FreqWindow.cpp:1069
-#: LabelDialog.cpp:590
-#: Menus.cpp:2160
-#: Project.cpp:2273
-#: Project.cpp:3214
-#: prefs/KeyConfigPrefs.cpp:180
+#: FreqWindow.cpp:1069 LabelDialog.cpp:590 Menus.cpp:2160 Project.cpp:2273
+#: Project.cpp:3214 prefs/KeyConfigPrefs.cpp:180
msgid "Couldn't write to file: "
msgstr "ÐÐ°Ñ Ñайл ÑÐ°Ð±Ñ Ð½Ð°Ð¼ÐµÑавад: "
@@ -1255,6 +1191,21 @@ msgstr "ÐаÑомади (ҲеÑÑз)\tСаÑÒ³ (дÐ)"
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "ТаÑÑ
иÑи (ÑониÑҳо)\tÐаÑомад (ҲеÑÑз)\tСаÑÒ³"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr ""
+
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr ""
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr ""
@@ -1332,7 +1283,7 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr ""
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
msgstr ""
#: HelpText.cpp:244
@@ -1356,7 +1307,7 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr ""
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
msgstr ""
#: HelpText.cpp:383
@@ -1391,46 +1342,22 @@ msgstr "ÐаÑаҷаҳо баÑои баÑҳамдиҳӣ"
msgid "&Discard"
msgstr "&Рад каÑдан"
-#: HistoryWindow.cpp:111
-#: LabelDialog.cpp:137
-#: LabelDialog.cpp:139
-#: effects/Amplify.cpp:214
-#: effects/AutoDuck.cpp:529
-#: effects/AutoDuck.cpp:531
-#: effects/ChangeLength.cpp:187
-#: effects/ChangePitch.cpp:397
-#: effects/ChangeSpeed.cpp:397
-#: effects/ChangeTempo.cpp:299
-#: effects/Compressor.cpp:519
-#: effects/Effect.cpp:401
-#: effects/Effect.cpp:403
-#: effects/Equalization.cpp:1221
-#: effects/Leveller.cpp:252
-#: effects/Normalize.cpp:356
-#: effects/Phaser.cpp:605
-#: effects/Repeat.cpp:274
-#: effects/SpikeCleaner.cpp:191
-#: effects/VST/VSTEffect.cpp:98
-#: effects/Wahwah.cpp:592
-#: effects/ladspa/LadspaEffect.cpp:612
-#: effects/nyquist/Nyquist.cpp:829
-#: export/Export.cpp:955
-#: export/ExportCL.cpp:264
-#: export/ExportCL.cpp:329
-#: export/ExportCL.cpp:331
-#: export/ExportFLAC.cpp:227
-#: export/ExportFLAC.cpp:229
-#: export/ExportMP2.cpp:237
-#: export/ExportMP2.cpp:239
-#: export/ExportMP3.cpp:985
-#: export/ExportMP3.cpp:987
-#: export/ExportMP3.cpp:1525
-#: export/ExportMP3.cpp:1527
-#: export/ExportOGG.cpp:238
-#: export/ExportOGG.cpp:240
-#: export/ExportPCM.cpp:268
-#: export/ExportPCM.cpp:270
-#: prefs/PrefsDialog.cpp:164
+#: HistoryWindow.cpp:111 LabelDialog.cpp:137 LabelDialog.cpp:139
+#: effects/Amplify.cpp:214 effects/AutoDuck.cpp:529 effects/AutoDuck.cpp:531
+#: effects/ChangeLength.cpp:187 effects/ChangePitch.cpp:397
+#: effects/ChangeSpeed.cpp:397 effects/ChangeTempo.cpp:299
+#: effects/Compressor.cpp:519 effects/Effect.cpp:401 effects/Effect.cpp:403
+#: effects/Equalization.cpp:1221 effects/Leveller.cpp:252
+#: effects/Normalize.cpp:356 effects/Phaser.cpp:605 effects/Repeat.cpp:274
+#: effects/SpikeCleaner.cpp:191 effects/VST/VSTEffect.cpp:98
+#: effects/Wahwah.cpp:592 effects/ladspa/LadspaEffect.cpp:612
+#: effects/nyquist/Nyquist.cpp:829 export/Export.cpp:955
+#: export/ExportCL.cpp:264 export/ExportCL.cpp:329 export/ExportCL.cpp:331
+#: export/ExportFLAC.cpp:227 export/ExportFLAC.cpp:229
+#: export/ExportMP2.cpp:237 export/ExportMP2.cpp:239 export/ExportMP3.cpp:985
+#: export/ExportMP3.cpp:987 export/ExportMP3.cpp:1525
+#: export/ExportMP3.cpp:1527 export/ExportOGG.cpp:238 export/ExportOGG.cpp:240
+#: export/ExportPCM.cpp:268 export/ExportPCM.cpp:270 prefs/PrefsDialog.cpp:164
msgid "&OK"
msgstr "&ÐÐ"
@@ -1438,8 +1365,7 @@ msgstr "&ÐÐ"
msgid "Unable to determine"
msgstr "ÐÑайÑнÑавӣ номÑмкин аÑÑ"
-#: Internat.cpp:180
-#: import/ImportRaw.cpp:392
+#: Internat.cpp:180 import/ImportRaw.cpp:392
msgid "bytes"
msgstr "байÑҳо"
@@ -1455,13 +1381,19 @@ msgstr "ÐÐ"
msgid "GB"
msgstr "ÐÐ"
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
#: LabelDialog.cpp:52
msgid "Track"
msgstr "РоҳÑа"
-#: LabelDialog.cpp:53
-#: Menus.cpp:4006
-#: Menus.cpp:4034
+#: LabelDialog.cpp:53 Menus.cpp:4006 Menus.cpp:4034
msgid "Label"
msgstr "ÐиÑона"
@@ -1474,8 +1406,7 @@ msgstr "&ÐаÒÑи оÒоз"
msgid "End Time"
msgstr "ÐаÒÑи оÑ
иÑ"
-#: LabelDialog.cpp:100
-#: Menus.cpp:665
+#: LabelDialog.cpp:100 Menus.cpp:665
msgid "&Edit Labels"
msgstr "&ТаÒйиÑи ниÑона"
@@ -1491,8 +1422,7 @@ msgstr "ÐÑзоÑÐ¸Ñ &ÐаÑди"
msgid "Insert &Before"
msgstr "ÐÑзоÑÐ¸Ñ &ÐÐµÑ Ð°Ð·"
-#: LabelDialog.cpp:129
-#: Menus.cpp:235
+#: LabelDialog.cpp:129 Menus.cpp:235
msgid "&Import..."
msgstr "&ÐоÑидоÑ..."
@@ -1514,20 +1444,15 @@ msgstr "ШÑмо поÑÑаи ÑаÑҳи номҳоÑо паÑÑоÑÑед. Ð
msgid "Confirm"
msgstr "ТаÑÐ´Ð¸Ò ÑÑдан"
-#: LabelDialog.cpp:505
-#: Menus.cpp:3522
+#: LabelDialog.cpp:505 Menus.cpp:3522
msgid "Select a text file containing labels..."
msgstr "ÐнÑиÑ
обкÑнии Ñайли маÑние, ки доÑои ниÑонаҳои..."
-#: LabelDialog.cpp:509
-#: Menus.cpp:3526
+#: LabelDialog.cpp:509 Menus.cpp:3526
msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
msgstr "Файлҳои маÑнӣ (*.txt)|*.txt|Ҳамаи Ñайлҳо (*.*)|*.*"
-#: LabelDialog.cpp:523
-#: Menus.cpp:3538
-#: Project.cpp:1703
-#: Project.cpp:1711
+#: LabelDialog.cpp:523 Menus.cpp:3538 Project.cpp:1703 Project.cpp:1711
#: import/ImportMIDI.cpp:31
msgid "Could not open file: "
msgstr "ФайлÑо кÑÑода наÑавониÑÑ: "
@@ -1536,13 +1461,11 @@ msgstr "ФайлÑо кÑÑода наÑавониÑÑ: "
msgid "No labels to export."
msgstr "ÐиÑона баÑои ÑодиÑÐ¾Ñ Ò·Ð¾Ð¹ надоÑад."
-#: LabelDialog.cpp:555
-#: Menus.cpp:2125
+#: LabelDialog.cpp:555 Menus.cpp:2125
msgid "Export Labels As:"
msgstr "ÐоÑидоÑи ÐиÑонаҳоҲамÑÑн:"
-#: LabelDialog.cpp:557
-#: Menus.cpp:2123
+#: LabelDialog.cpp:557 Menus.cpp:2123
msgid "labels.txt"
msgstr "ÐиÑонаҳои.txt"
@@ -1554,10 +1477,7 @@ msgstr "РоҳÑаи Ðави ÐиÑонавӣ"
msgid "Enter track name"
msgstr "Ðоми ÑоҳÑаÑо воÑид кÑнед"
-#: LabelDialog.cpp:692
-#: LabelDialog.h:50
-#: LabelTrack.cpp:88
-#: Menus.cpp:601
+#: LabelDialog.cpp:692 LabelDialog.h:50 LabelTrack.cpp:88 Menus.cpp:601
msgid "&Label Track"
msgstr "&ÐиÑонаи РоҳÑа"
@@ -1584,24 +1504,15 @@ msgstr "ÐÑÑодани Ðоиҳаи Audacity"
msgid "&File"
msgstr "&Файл"
-#: Menus.cpp:201
-msgid "&New\tCtrl+N"
-msgstr "&Ðав\tCtrl+N"
-
-#: Menus.cpp:203
-msgid "&Open...\tCtrl+O"
-msgstr "&ÐÑÑодан...\tCtrl+O"
-
#: Menus.cpp:214
-msgid "&Close\tCtrl+W"
-msgstr "&ÐÓ¯Ñидан\tCtrl+W"
+msgid "&Close"
+msgstr "&ÐÓ¯Ñидан"
#: Menus.cpp:217
-msgid "&Save Project\tCtrl+S"
-msgstr "&СабÑи Ðоиҳа\tCtrl+S"
+msgid "&Save Project"
+msgstr "&СабÑи Ðоиҳа"
-#: Menus.cpp:221
-#: Project.cpp:2508
+#: Menus.cpp:221 Project.cpp:2508
msgid "Save Project &As..."
msgstr "СабÑи Ðоиҳа &ҲамÑÑн..."
@@ -1622,8 +1533,8 @@ msgid "&Import"
msgstr ""
#: Menus.cpp:237
-msgid "&Audio...\tCtrl+Shift+I"
-msgstr "&ÐÑдио...\tCtrl+Shift+I"
+msgid "&Audio..."
+msgstr "&ÐÑдио..."
#: Menus.cpp:238
msgid "&Labels..."
@@ -1637,8 +1548,7 @@ msgstr "&MIDI..."
msgid "&Raw Data..."
msgstr "&ÐаÑлÑмоÑи коÑкаÑдноÑÑдаи..."
-#: Menus.cpp:251
-#: Menus.cpp:280
+#: Menus.cpp:251 Menus.cpp:280
msgid "Expo&rt Selection..."
msgstr "СодиÑо&Ñи ÐнÑиÑ
оби..."
@@ -1654,12 +1564,11 @@ msgstr "СодиÑÐ¾Ñ &ÐиÑÑÑкаÑаÑа..."
msgid "Export MIDI..."
msgstr ""
-#: Menus.cpp:290
-msgid "CleanSpeech C&hain..."
-msgstr ""
+#: Menus.cpp:301
+msgid "Appl&y Chain..."
+msgstr "ТаÑб&иÒи ÐанҷиÑа..."
-#: Menus.cpp:289
-#: Menus.cpp:303
+#: Menus.cpp:289 Menus.cpp:303
msgid "Edit C&hains..."
msgstr "ТаҳÑиÑи Ð&анҷиÑаҳо..."
@@ -1671,10 +1580,6 @@ msgstr ""
msgid "I&mport CleanSpeech Presets..."
msgstr ""
-#: Menus.cpp:301
-msgid "Appl&y Chain..."
-msgstr "ТаÑб&иÒи ÐанҷиÑа..."
-
#: Menus.cpp:307
msgid "&Upload File..."
msgstr "&ÐоÑкÑнии Файл..."
@@ -1687,77 +1592,73 @@ msgstr "Та&Ñини СаҳиÑа..."
msgid "&Print..."
msgstr "&Чоп каÑдан..."
-#: Menus.cpp:331
-#: Menus.cpp:334
-msgid "E&xit\tCtrl+Q"
-msgstr "Ð&аÑомад\tCtrl+Q"
+#: Menus.cpp:331 Menus.cpp:334
+msgid "E&xit"
+msgstr "Ð&аÑомад"
-#: Menus.cpp:343
-#: toolbars/EditToolBar.cpp:76
+#: Menus.cpp:343 toolbars/EditToolBar.cpp:76
msgid "&Edit"
msgstr "&ТаҳÑиÑ"
#: Menus.cpp:347
-msgid "&Undo\tCtrl+Z"
-msgstr "&ÐаÑҳамдиÑ
Ó£\tCtrl+Z"
+msgid "&Undo"
+msgstr "&ÐаÑҳамдиÑ
Ó£"
-#: Menus.cpp:355
-#: prefs/KeyConfigPrefs.cpp:369
-#: toolbars/EditToolBar.cpp:146
+#: Menus.cpp:355 prefs/KeyConfigPrefs.cpp:369 toolbars/EditToolBar.cpp:146
msgid "&Redo"
msgstr "&ТакÑоÑ"
#: Menus.cpp:368
-msgid "Cu&t\tCtrl+X"
-msgstr "ÐÑ&Ñидан\tCtrl+X"
+msgid "Cu&t"
+msgstr "ÐÑ&Ñидан"
#: Menus.cpp:372
-msgid "Spl&it Cut\tCtrl+Alt+X"
-msgstr "ÐоÑ&акÑнӣ ÐÑÑидан\tCtrl+Alt+X"
+msgid "Spl&it Cut"
+msgstr "ÐоÑ&акÑнӣ ÐÑÑидан"
#: Menus.cpp:373
-msgid "&Copy\tCtrl+C"
-msgstr "&ÐÑÑÑ
абаÑдоÑÓ£\tCtrl+C"
+msgid "&Copy"
+msgstr "&ÐÑÑÑ
абаÑдоÑÓ£"
#: Menus.cpp:377
-msgid "&Paste\tCtrl+V"
-msgstr "&ÐÑзоÑÑан\tCtrl+V"
+msgid "&Paste"
+msgstr "&ÐÑзоÑÑан"
#: Menus.cpp:381
-msgid "Tri&m\tCtrl+T"
-msgstr "ÐÑÑ&иÑи Òолабӣ\tCtrl+T"
+msgid "Tri&m"
+msgstr "ÐÑÑ&иÑи Òолабӣ"
#: Menus.cpp:383
-msgid "&Delete\tCtrl+K"
-msgstr "&ÐеÑÑ ÐºÐ°Ñдан\tCtrl+K"
+msgid "&Delete"
+msgstr "&ÐеÑÑ ÐºÐ°Ñдан"
#: Menus.cpp:384
-msgid "Split D&elete\tCtrl+Alt+K"
-msgstr "ÐоÑакÑнӣ Т&озакÑнӣ\tCtrl+Alt+K"
+msgid "Split D&elete"
+msgstr "ÐоÑакÑнӣ Т&озакÑнӣ"
#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
+msgid "Silence Audi&o"
msgstr ""
#: Menus.cpp:387
-msgid "Sp&lit\tCtrl+I"
-msgstr "Ðо&ÑакÑнӣ\tCtrl+I"
+msgid "Sp&lit"
+msgstr "Ðо&ÑакÑнӣ"
#: Menus.cpp:392
-msgid "Split Ne&w\tCtrl+Alt+I"
-msgstr "ÐоÑакÑнии Ðа&в\tCtrl+Alt+I"
+msgid "Split Ne&w"
+msgstr "ÐоÑакÑнии Ðа&в"
#: Menus.cpp:397
-msgid "&Join\tCtrl+J"
-msgstr "&ÐÑÑÑаҳидÑозӣ\tCtrl+J"
+msgid "&Join"
+msgstr "&ÐÑÑÑаҳидÑозӣ"
#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
+msgid "Detac&h at Silences"
msgstr ""
#: Menus.cpp:400
-msgid "Duplic&ate\tCtrl+D"
-msgstr "ÐÑÑÑ
абаÑд&оÑÓ£\tCtrl+D"
+msgid "Duplic&ate"
+msgstr "ÐÑÑÑ
абаÑд&оÑÓ£"
#: Menus.cpp:400 Menus.cpp:639
msgid "Stereo Trac&k to Mono"
@@ -1769,82 +1670,67 @@ msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:415
-msgid "&Cut\tAlt+X"
-msgstr "&ÐÑÑидан\tAlt+X"
+msgid "&Cut"
+msgstr "&ÐÑÑидан"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:420
-msgid "&Split Cut\tShift+Alt+X"
-msgstr "&ÐоÑакÑнӣ ÐÑÑиÑ\tShift+Alt+X"
+msgid "&Split Cut"
+msgstr "&ÐоÑакÑнӣ ÐÑÑиÑ"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:425
-msgid "Co&py\tShift+Alt+C"
-msgstr "ÐÑÑÑ
абаÑ&доÑÓ£\tShift+Alt+C"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:431
-msgid "&Delete\tAlt+K"
-msgstr "&ÐеÑÑкÑнӣ\tAlt+K"
+msgid "Co&py"
+msgstr "ÐÑÑÑ
абаÑ&доÑÓ£"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:436
-msgid "Sp&lit Delete\tShift+Alt+K"
-msgstr "Ðо&ÑакÑнӣ ТозакÑнӣ\tShift+Alt+K"
+msgid "Sp&lit Delete"
+msgstr "Ðо&ÑакÑнӣ ТозакÑнӣ"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:441
-msgid "Sile&nce\tAlt+L"
-msgstr "Ðз Ñӯи Ñ
омÑ&ÑÓ£\tAlt+L"
+msgid "Sile&nce"
+msgstr "Ðз Ñӯи Ñ
омÑ&ÑÓ£"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:447
-msgid "Spli&t\tAlt+I"
-msgstr "ÐоÑакÑн&Ó£\tAlt+I"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:452
-msgid "&Join\tAlt+J"
-msgstr "&ÐÑÑÑаҳид\tAlt+J"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
-msgstr ""
+msgid "Spli&t"
+msgstr "ÐоÑакÑн&Ó£"
#: Menus.cpp:456
msgid "&Select"
msgstr ""
#: Menus.cpp:464
-msgid "&All\tCtrl+A"
-msgstr "&Ҳама\tCtrl+A"
+msgid "&All"
+msgstr "&Ҳама"
#: Menus.cpp:465
-msgid "&None\tCtrl+Shift+A"
-msgstr "&ЯгонÑо\tCtrl+Shift+A"
+msgid "&None"
+msgstr "&ЯгонÑо"
#: Menus.cpp:462
#, fuzzy
-msgid "&Left at Playback Position\t["
-msgstr "Ðз мавÒеÑи Ñапи Ñ
ониÑ\t["
+msgid "&Left at Playback Position"
+msgstr "Ðз мавÒеÑи Ñапи Ñ
ониÑ"
#: Menus.cpp:463
#, fuzzy
-msgid "&Right at Playback Position\t]"
-msgstr "Ðз мавÒеÑи ÑоÑÑи Ñ
ониÑ\t["
+msgid "&Right at Playback Position"
+msgstr "Ðз мавÒеÑи ÑоÑÑи Ñ
ониÑ"
#: Menus.cpp:467
-msgid "Track &Start to Cursor\tShift+J"
+msgid "Track &Start to Cursor"
msgstr ""
#: Menus.cpp:468
-msgid "Cursor to Track &End\tShift+K"
+msgid "Cursor to Track &End"
msgstr ""
#: Menus.cpp:481
-msgid "Find &Zero Crossings\tZ"
-msgstr "ÐÑÑани &ÐÑÒÑаҳлии наздикÑаÑин\tZ"
+msgid "Find &Zero Crossings"
+msgstr "ÐÑÑани &ÐÑÒÑаҳлии наздикÑаÑин"
#: Menus.cpp:476
msgid "Mo&ve Cursor"
@@ -1861,11 +1747,11 @@ msgid "to Selection En&d"
msgstr "ÐнÑиҳо ба инÑиÑ
об"
#: Menus.cpp:483
-msgid "to Track &Start\tJ"
+msgid "to Track &Start"
msgstr ""
#: Menus.cpp:484
-msgid "to Track &End\tK"
+msgid "to Track &End"
msgstr ""
#: Menus.cpp:491
@@ -1888,29 +1774,8 @@ msgstr ""
msgid "&Unlock"
msgstr ""
-#: Menus.cpp:523
-msgid "Turn Snap-To On"
-msgstr "ТабодÑли ТаÑвиÑ-Ðа ФаÑол"
-
-#: Menus.cpp:524
-msgid "Turn Snap-To Off"
-msgstr "ТабодÑли ТаÑвиÑ-То ФаÑол"
-
-#: Menus.cpp:525
-msgid "Turn Grid Snap On"
-msgstr "ÐайваÑÑани ÐаÑÑа ÐÐ°Ñ Ð¢ÑÑ"
-
-#: Menus.cpp:526
-msgid "Turn Grid Snap Off"
-msgstr "Ð¥Ð¾Ð¼Ó¯Ñ ÐºÐ°Ñдани ÐаÑÑа ÐÐ°Ñ Ð¢ÑÑ"
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr ""
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
+msgid "Pre&ferences..."
msgstr ""
#: Menus.cpp:545
@@ -1918,36 +1783,36 @@ msgid "&View"
msgstr "&ÐамÑд"
#: Menus.cpp:547
-msgid "Zoom &In\tCtrl+1"
-msgstr "ТаÒиÑдиҳии андозаи ÑаÑÐ²Ð¸Ñ &ба пеÑ\tCtrl+1"
+msgid "Zoom &In"
+msgstr "ТаÒиÑдиҳии андозаи ÑаÑÐ²Ð¸Ñ &ба пеÑ"
#: Menus.cpp:550
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "ТаÒиÑдиҳии андозаи ÑаÑÐ²Ð¸Ñ &мÑÒÒаÑÑаÑÓ£\tCtrl+2"
+msgid "Zoom &Normal"
+msgstr "ТаÒиÑдиҳии андозаи ÑаÑÐ²Ð¸Ñ &мÑÒÒаÑÑаÑÓ£"
#: Menus.cpp:551
-msgid "Zoom &Out\tCtrl+3"
-msgstr "ТаÒиÑдиҳии андозаи ÑаÑÐ²Ð¸Ñ &ба ÒаÑо\tCtrl+3"
+msgid "Zoom &Out"
+msgstr "ТаÒиÑдиҳии андозаи ÑаÑÐ²Ð¸Ñ &ба ÒаÑо"
#: Menus.cpp:554
-msgid "&Fit in Window\tCtrl+F"
-msgstr "&Равзанаи мÑноÑиб\tCtrl+F"
+msgid "&Fit in Window"
+msgstr "&Равзанаи мÑноÑиб"
#: Menus.cpp:555
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "ÐÐ°Ñ Ñакли &ÐмÑдӣ\tCtrl+Shift+F"
+msgid "Fit &Vertically"
+msgstr "ÐÐ°Ñ Ñакли &ÐмÑдӣ"
#: Menus.cpp:556
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "&ТаÒиÑи ÑаÑÐ²Ð¸Ñ Ð±Ð°Ñои инÑиÑ
об\tCtrl+E"
+msgid "&Zoom to Selection"
+msgstr "&ТаÒиÑи ÑаÑÐ²Ð¸Ñ Ð±Ð°Ñои инÑиÑ
об"
#: Menus.cpp:559
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
-msgstr "&ÐеÑонидани Ҳамаи РоҳÑаҳо\tCtrl+Shift+C"
+msgid "&Collapse All Tracks"
+msgstr "&ÐеÑонидани Ҳамаи РоҳÑаҳо"
#: Menus.cpp:560
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
-msgstr "Ð&ÑÑодани Ҳамаи РоҳÑаҳо\tCtrl+Shift+X"
+msgid "E&xpand All Tracks"
+msgstr "Ð&ÑÑодани Ҳамаи РоҳÑаҳо"
#: Menus.cpp:551
msgid "&Show Clipping"
@@ -2015,40 +1880,40 @@ msgstr ""
msgid "T&ransport"
msgstr ""
-#: Menus.cpp:591
-msgid "Play\tSpace"
-msgstr ""
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play"
+msgstr "ÐÒ·Ñо"
#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
+msgid "&Loop Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Pause\tP"
+msgid "&Pause"
msgstr ""
#: Menus.cpp:596
-msgid "&Stop\tSpace"
+msgid "&Stop"
msgstr ""
#: Menus.cpp:827
-msgid "Skip to Start\tHome"
-msgstr "ÐÑзаÑÐ¸Ñ Ð±Ð° ÐбÑидо\tHome"
+msgid "Skip to Start"
+msgstr "ÐÑзаÑÐ¸Ñ Ð±Ð° ÐбÑидо"
#: Menus.cpp:828
-msgid "Skip to End\tEnd"
-msgstr "ÐÑзаÑÐ¸Ñ Ð±Ð° ÐнÑиҳо\tEnd"
+msgid "Skip to End"
+msgstr "ÐÑзаÑÐ¸Ñ Ð±Ð° ÐнÑиҳо"
#: Menus.cpp:600
-msgid "&Record\tR"
+msgid "&Record"
msgstr ""
#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
+msgid "&Timer Record..."
msgstr ""
#: Menus.cpp:604
-msgid "Append Record\tShift+R"
+msgid "Append Record"
msgstr ""
#: Menus.cpp:607
@@ -2076,15 +1941,14 @@ msgid "Add &New"
msgstr ""
#: Menus.cpp:599
-msgid "&Audio Track\tCtrl+Shift+N"
-msgstr "&РоҳÑаи ÐÑдиои\tCtrl+Shift+N"
+msgid "&Audio Track"
+msgstr "&РоҳÑаи ÐÑдиои"
#: Menus.cpp:600
msgid "&Stereo Track"
msgstr "&СÑеÑео РоҳÑа"
-#: Menus.cpp:602
-#: TimeTrack.cpp:44
+#: Menus.cpp:602 TimeTrack.cpp:44
msgid "&Time Track"
msgstr "&РоҳÑаи ÐаÒÑ"
@@ -2093,7 +1957,7 @@ msgid "Mi&x and Render"
msgstr ""
#: Menus.cpp:647
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
+msgid "Mix and Render to New Track"
msgstr ""
#: Menus.cpp:618
@@ -2105,11 +1969,11 @@ msgid "Remo&ve Tracks"
msgstr "ҶойивазкÑ&нии РоҳÑаҳо"
#: Menus.cpp:667
-msgid "&Mute All Tracks\tCtrl+U"
+msgid "&Mute All Tracks"
msgstr ""
#: Menus.cpp:668
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
+msgid "&UnMute All Tracks"
msgstr ""
#: Menus.cpp:635
@@ -2160,17 +2024,17 @@ msgstr ""
msgid "Synchronize MIDI with Audio"
msgstr ""
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
+#: Menus.cpp:686
+msgid "&Link Audio and Label Tracks"
msgstr ""
-#: Menus.cpp:661
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "Ðловаи &ÐиÑона ÐÐ°Ñ ÐнÑиÑ
об\tCtrl+B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr ""
#: Menus.cpp:662
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "Ðловаи ÐиÑона ÐÐ°Ñ &ÐавÒеÑи ХониÑ\tCtrl+M"
+msgid "Add Label At &Playback Position"
+msgstr "Ðловаи ÐиÑона ÐÐ°Ñ &ÐавÒеÑи ХониÑ"
#: Menus.cpp:716
msgid "S&ort tracks"
@@ -2196,21 +2060,20 @@ msgstr ""
msgid "Effe&ct"
msgstr "ÐаÑи&ҷа"
-#: Menus.cpp:708
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "ТакÑоÑи наÑиҷаи ниҳои\tCtrl+R"
-
#: Menus.cpp:740
msgid "&Analyze"
msgstr "&Таҳлил"
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
+
#: Menus.cpp:879
#, fuzzy
msgid "Plot Spectrum..."
msgstr "&ÐаÑидани ÑаÑвиÑи СпекÑÑÑм..."
-#: Menus.cpp:775
-#: Menus.cpp:778
+#: Menus.cpp:775 Menus.cpp:778
msgid "&Help"
msgstr "&Ðадад"
@@ -2223,7 +2086,7 @@ msgid "&Show Welcome Message..."
msgstr ""
#: Menus.cpp:958
-msgid "&Index..."
+msgid "&Help..."
msgstr ""
#: Menus.cpp:959
@@ -2242,181 +2105,149 @@ msgstr "&ÐоÑкÑнии ÐзмоиÑии..."
msgid "&Audio Device Info..."
msgstr ""
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
msgstr ""
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
msgstr ""
#: Menus.cpp:804
-msgid "Selection Tool\tF1"
-msgstr "ÐнÑиÑ
оби ÐÑзоÑ\tF1"
+msgid "Selection Tool"
+msgstr "ÐнÑиÑ
оби ÐÑзоÑ"
#: Menus.cpp:805
-msgid "Envelope Tool\tF2"
-msgstr "ÐиÑоÑаи ÐÑзоÑ\tF2"
+msgid "Envelope Tool"
+msgstr "ÐиÑоÑаи ÐÑзоÑ"
#: Menus.cpp:806
-msgid "Draw Tool\tF3"
-msgstr "ТаÑвиÑи аÑзоÑ\tF3"
+msgid "Draw Tool"
+msgstr "ТаÑвиÑи аÑзоÑ"
#: Menus.cpp:807
-msgid "Zoom Tool\tF4"
-msgstr "ТаÒиÑдиҳии андозаи ÐÑзоÑ\tF4"
+msgid "Zoom Tool"
+msgstr "ТаÒиÑдиҳии андозаи ÐÑзоÑ"
#: Menus.cpp:808
-msgid "Time Shift Tool\tF5"
-msgstr "ÐаÒÑи ÐнÑиÑ
оби ÐÑзоÑ\tF5"
+msgid "Time Shift Tool"
+msgstr "ÐаÒÑи ÐнÑиÑ
оби ÐÑзоÑ"
#: Menus.cpp:809
-msgid "Multi Tool\tF6"
-msgstr "ÐиÑÑÑ ÐÑзоÑ\tF6"
+msgid "Multi Tool"
+msgstr "ÐиÑÑÑ ÐÑзоÑ"
#: Menus.cpp:811
-msgid "Next Tool\tD"
-msgstr "ÐÑзоÑи ÐавбаÑÓ£\tD"
+msgid "Next Tool"
+msgstr "ÐÑзоÑи ÐавбаÑÓ£"
#: Menus.cpp:812
-msgid "Previous Tool\tA"
-msgstr "ÐÑзоÑи ÐеÑина\tA"
+msgid "Previous Tool"
+msgstr "ÐÑзоÑи ÐеÑина"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
-msgstr ""
-
-#: Menus.cpp:815
-msgid "Stop\tS"
-msgstr "ÐоздоÑÓ£\tS"
-
-#: Menus.cpp:816
-msgid "Pause\tP"
-msgstr "ТаваÒÒÑÑ\tP"
-
-#: Menus.cpp:817
-msgid "Record\tR"
-msgstr "СабÑ\tR"
-
-#: Menus.cpp:999
-msgid "Record Append\tShift+R"
+msgid "Play/Stop"
msgstr ""
#: Menus.cpp:1001
-msgid "Play/Stop and Set Cursor\tShift+A"
+msgid "Play/Stop and Set Cursor"
msgstr ""
#: Menus.cpp:821
-msgid "Play One Second\t1"
-msgstr "ХониÑи ЯкÑм ÐÑÑм\t1"
+msgid "Play One Second"
+msgstr "ХониÑи ЯкÑм ÐÑÑм"
#: Menus.cpp:822
-msgid "Play To Selection\tB"
-msgstr "Ð¥Ð¾Ð½Ð¸Ñ Ðа ÐнÑиÑ
об\tB"
-
-#: Menus.cpp:823
-msgid "Play Looped\tL"
-msgstr "Ð¥Ð¾Ð½Ð¸Ñ Ð´Ð°Ð²Ñавӣ\tL"
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
+msgid "Play To Selection"
+msgstr "Ð¥Ð¾Ð½Ð¸Ñ Ðа ÐнÑиÑ
об"
#: Menus.cpp:825
-msgid "Play Cut Preview\tC"
-msgstr "ХониÑи ТаÑÑ
иÑи наÑиҷавии ÐÑÑиÑ\tC"
+msgid "Play Cut Preview"
+msgstr "ХониÑи ТаÑÑ
иÑи наÑиҷавии ÐÑÑиÑ"
#: Menus.cpp:830
-msgid "Selection to Start\tShift+Home"
-msgstr "ÐнÑиÑ
об ба ÐбÑидо\tShift+Home"
+msgid "Selection to Start"
+msgstr "ÐнÑиÑ
об ба ÐбÑидо"
#: Menus.cpp:831
-msgid "Selection to End\tShift+End"
-msgstr "ÐнÑиÑ
об ба ÐнÑиҳо\tShift+End"
+msgid "Selection to End"
+msgstr "ÐнÑиÑ
об ба ÐнÑиҳо"
#: Menus.cpp:833
-msgid "DeleteKey\tBackspace"
-msgstr "Ðалиди ÐоккÑнанда\tBackspace"
+msgid "DeleteKey"
+msgstr "Ðалиди ÐоккÑнанда"
#: Menus.cpp:838
-msgid "DeleteKey2\tDelete"
-msgstr "Ðалиди ÐоккÑнандаи2\tDelete"
+msgid "DeleteKey2"
+msgstr "Ðалиди ÐоккÑнандаи2"
-#: Menus.cpp:844
-msgid "Seek left short period during playback\tLeft"
-msgstr "Ò¶ÑÑÑÑҷӯи маÑҳилаи кӯÑоҳи Ñап Ð´Ð°Ñ Ð²Ð°ÒÑи Ñ
ониÑ\tLeft"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
+msgstr ""
-#: Menus.cpp:845
-msgid "Seek right short period during playback\tRight"
-msgstr "Ò¶ÑÑÑÑҷӯи маÑҳилаи кӯÑоҳи ÑоÑÑ Ð´Ð°Ñ Ð²Ð°ÒÑи Ñ
ониÑ\tRight"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
+msgstr ""
-#: Menus.cpp:846
-msgid "Seek left long period during playback\tShift+Left"
-msgstr "Ò¶ÑÑÑÑҷӯи маÑҳилаи даÑози Ñап Ð´Ð°Ñ Ð²Ð°ÒÑи Ñ
ониÑ\tShift+Left"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
+msgstr ""
-#: Menus.cpp:847
-msgid "Seek right long period during playback\tShift+Right"
-msgstr "Ò¶ÑÑÑÑҷӯи маÑҳилаи даÑози ÑоÑÑ Ð´Ð°Ñ Ð²Ð°ÒÑи Ñ
ониÑ\tShift+Right"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
+msgstr ""
#: Menus.cpp:851
-msgid "Move Focus to Previous Track\tUp"
-msgstr "ҶойгÑзоÑи ÐоÑаÑÑиб ба РоҳÑаи ÐеÑина\tUp"
+msgid "Move Focus to Previous Track"
+msgstr "ҶойгÑзоÑи ÐоÑаÑÑиб ба РоҳÑаи ÐеÑина"
-#: Menus.cpp:852
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
-msgstr "ҶойгÑзоÑии ÐоÑаÑÑиб ба ÐеÑина ва ТаÒиÑи ÐнÑиÑ
об\tShift+Up"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
+msgstr ""
#: Menus.cpp:853
-msgid "Move Focus to Next Track\tDown"
-msgstr "ҶойгÑзоÑии ÐоÑаÑÑиб ба РоҳÑаи ÐавбаÑÓ£\tDown"
+msgid "Move Focus to Next Track"
+msgstr "ҶойгÑзоÑии ÐоÑаÑÑиб ба РоҳÑаи ÐавбаÑÓ£"
-#: Menus.cpp:854
-msgid "Move Focus to Next and Change Selection\tShift+Down"
-msgstr "ҶойгÑзоÑии ÐоÑаÑÑиб ба ÐавбаÑÓ£ ва ТаÒиÑи ÐнÑиÑ
об\tShift+Down"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
+msgstr ""
#: Menus.cpp:855
-msgid "Toggle Focused Track\tReturn"
-msgstr "ÐанизомдаÑоÑии РоҳÑаи ÐÑпоÑ\tReturn"
-
-#: Menus.cpp:856
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr "ÐанизомдаÑоÑии РоҳÑаи ÐÑпоÑ\tNUMPAD_ENTER"
-
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
-msgstr ""
+msgid "Toggle Focused Track"
+msgstr "ÐанизомдаÑоÑии РоҳÑаи ÐÑпоÑ"
#: Menus.cpp:859
-msgid "Cursor Left\tLeft"
-msgstr "ÐÑÑÑоÑи Чап\tLeft"
+msgid "Cursor Left"
+msgstr "ÐÑÑÑоÑи Чап"
#: Menus.cpp:860
-msgid "Cursor Right\tRight"
-msgstr "ÐÑÑÑоÑи РоÑÑ\tRight"
+msgid "Cursor Right"
+msgstr "ÐÑÑÑоÑи РоÑÑ"
#: Menus.cpp:1044
-msgid "Cursor Short Jump Left\t,"
+msgid "Cursor Short Jump Left"
msgstr ""
#: Menus.cpp:1045
-msgid "Cursor Short Jump Right\t."
+msgid "Cursor Short Jump Right"
msgstr ""
#: Menus.cpp:1046
-msgid "Cursor Long Jump Left\tShift+,"
+msgid "Cursor Long Jump Left"
msgstr ""
#: Menus.cpp:1047
-msgid "Cursor Long Jump Right\tShift+."
+msgid "Cursor Long Jump Right"
msgstr ""
#: Menus.cpp:861
-msgid "Selection Extend Left\tShift+Left"
-msgstr "ÐнÑиÑ
оби ÐÑÑÑÑÑдаи Чап\tShift+Left"
+msgid "Selection Extend Left"
+msgstr "ÐнÑиÑ
оби ÐÑÑÑÑÑдаи Чап"
#: Menus.cpp:862
-msgid "Selection Extend Right\tShift+Right"
-msgstr "ÐнÑиÑ
оби ÐÑÑÑÑÑдаи РоÑÑ\tShift+Right"
+msgid "Selection Extend Right"
+msgstr "ÐнÑиÑ
оби ÐÑÑÑÑÑдаи РоÑÑ"
#: Menus.cpp:1052
msgid "Set (or Extend) Left Selection"
@@ -2427,52 +2258,52 @@ msgid "Set (or Extend) Right Selection"
msgstr ""
#: Menus.cpp:864
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "ÐнÑиÑ
оби Санади Чап\tCtrl+Shift+Right"
+msgid "Selection Contract Left"
+msgstr "ÐнÑиÑ
оби Санади Чап"
#: Menus.cpp:865
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "ÐнÑиÑ
оби Санади РоÑÑ\tCtrl+Shift+Left"
+msgid "Selection Contract Right"
+msgstr "ÐнÑиÑ
оби Санади РоÑÑ"
#: Menus.cpp:867
-msgid "Change pan on focused track\tShift+P"
-msgstr "ТаÒиÑи мÑвоÑиÒаÑкÑнӣ Ð´Ð°Ñ ÑоҳÑаи ÑаÑол\tShift+P"
+msgid "Change pan on focused track"
+msgstr "ТаÒиÑи мÑвоÑиÒаÑкÑнӣ Ð´Ð°Ñ ÑоҳÑаи ÑаÑол"
#: Menus.cpp:868
-msgid "Pan left on focused track\tAlt+Shift+Left"
-msgstr "ÐÑвоÑиÒаÑкÑнӣ Ð´Ð°Ñ ÑоҳÑаи ÑаÑол\tAlt+Shift+Left"
+msgid "Pan left on focused track"
+msgstr "ÐÑвоÑиÒаÑкÑнӣ Ð´Ð°Ñ ÑоҳÑаи ÑаÑол"
#: Menus.cpp:869
-msgid "Pan right on focused track\tAlt+Shift+Right"
-msgstr "ÐÑвоÑиÒаÑкÑнии ÑоÑÑ Ð´Ð°Ñ ÑоҳÑаи ÑаÑол\tAlt+Shift+Right"
+msgid "Pan right on focused track"
+msgstr "ÐÑвоÑиÒаÑкÑнии ÑоÑÑ Ð´Ð°Ñ ÑоҳÑаи ÑаÑол"
#: Menus.cpp:870
-msgid "Change gain on focused track\tShift+G"
-msgstr "ТаÒиÑи мÑÑÑаҳкамии ÑоҳÑаи ÑаÑол\tShift+G"
+msgid "Change gain on focused track"
+msgstr "ТаÒиÑи мÑÑÑаҳкамии ÑоҳÑаи ÑаÑол"
#: Menus.cpp:871
-msgid "Increase gain on focused track\tAlt+Shift+Up"
-msgstr "ÐÑзÑдани мÑÑÑаҳкамкÑнӣ Ð´Ð°Ñ ÑоҳÑаи ÑаÑол\tAlt+Shift+Up"
+msgid "Increase gain on focused track"
+msgstr "ÐÑзÑдани мÑÑÑаҳкамкÑнӣ Ð´Ð°Ñ ÑоҳÑаи ÑаÑол"
#: Menus.cpp:872
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
-msgstr "Ðам намÑдани мÑÑÑаҳкамкÑнӣ Ð´Ð°Ñ ÑоҳÑаи ÑаÑол\tAlt+Shift+Down"
+msgid "Decrease gain on focused track"
+msgstr "Ðам намÑдани мÑÑÑаҳкамкÑнӣ Ð´Ð°Ñ ÑоҳÑаи ÑаÑол"
#: Menus.cpp:873
-msgid "Open menu on focused track\tShift+M"
-msgstr "ÐÑÑодани ÑеҳÑиÑÑи ÑоҳÑаи ÑаÑол\tShift+M"
+msgid "Open menu on focused track"
+msgstr "ÐÑÑодани ÑеҳÑиÑÑи ÑоҳÑаи ÑаÑол"
#: Menus.cpp:874
-msgid "Mute/Unmute focused track\tShift+U"
-msgstr "ХомӯÑкÑнӣ/ÐаÑгаÑдонидани ÑоҳÑаи Ñадогӣ \tShift+U"
+msgid "Mute/Unmute focused track"
+msgstr "ХомӯÑкÑнӣ/ÐаÑгаÑдонидани ÑоҳÑаи Ñадогӣ "
#: Menus.cpp:875
-msgid "Solo/Unsolo focused track\tShift+S"
-msgstr "ÐайваÑÑан /ХомӯÑкÑнии Ñоло баÑои ÑоҳÑаи ÑаÑол\tShift+S"
+msgid "Solo/Unsolo focused track"
+msgstr "ÐайваÑÑан /ХомӯÑкÑнии Ñоло баÑои ÑоҳÑаи ÑаÑол"
#: Menus.cpp:876
-msgid "Close focused track\tShift+C"
-msgstr "ÐÓ¯Ñидани ÑоҳÑаи ÑаÑол\tShift+C"
+msgid "Close focused track"
+msgstr "ÐÓ¯Ñидани ÑоҳÑаи ÑаÑол"
#: Menus.cpp:1069
msgid "Snap To On"
@@ -2483,7 +2314,35 @@ msgid "Snap To Off"
msgstr ""
#: Menus.cpp:1071
-msgid "Full screen on/off\tF11"
+msgid "Full screen on/off"
+msgstr ""
+
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr ""
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr ""
+
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr ""
+
+#: Menus.cpp:1074
+msgid "Adjust input source"
msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
@@ -2544,8 +2403,8 @@ msgstr "Ðввал ÑоҳÑаÑо Ò·Ñдо кÑнед."
#: Menus.cpp:1988
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "ТакÑÐ¾Ñ %s\tCtrl+R"
+msgid "Repeat %s"
+msgstr "ТакÑÐ¾Ñ %s"
#: Menus.cpp:2119
msgid "There are no label tracks to export."
@@ -2576,9 +2435,7 @@ msgstr "ÐаÑҳамдиҳӣ ҷой надоÑад"
msgid "Nothing to redo"
msgstr "ТакÑоÑкÑнӣ ҷой надоÑад"
-#: Menus.cpp:2344
-#: TrackPanel.cpp:550
-#: toolbars/EditToolBar.cpp:133
+#: Menus.cpp:2344 TrackPanel.cpp:550 toolbars/EditToolBar.cpp:133
msgid "Cut"
msgstr "ÐÑÑидан"
@@ -2594,10 +2451,7 @@ msgstr "Ò¶ÑдокÑнӣ бо ÐÑÑиÑ"
msgid "Split-cut to the clipboard"
msgstr "Ðо бÑÑÐ¸Ñ Ð´Ð°Ñ Ð±ÑÑÐµÑ Ò·Ñдо каÑда ÑÑдааÑÑ"
-#: Menus.cpp:2445
-#: Menus.cpp:2520
-#: Menus.cpp:2607
-#: TrackPanel.cpp:552
+#: Menus.cpp:2445 Menus.cpp:2520 Menus.cpp:2607 TrackPanel.cpp:552
#: toolbars/EditToolBar.cpp:137
msgid "Paste"
msgstr "ÐÑзоÑÑан"
@@ -2606,8 +2460,7 @@ msgstr "ÐÑзоÑÑан"
msgid "Pasted text from the clipboard"
msgstr "ÐÑзоÑиÑи маÑн аз бÑÑеÑи ÑабадÑлоÑ"
-#: Menus.cpp:2520
-#: Menus.cpp:2607
+#: Menus.cpp:2520 Menus.cpp:2607
msgid "Pasted from the clipboard"
msgstr "ÐÑзоÑÐ¸Ñ Ð°Ð· бÑÑеÑи ÑабадÑлоÑ"
@@ -2619,8 +2472,7 @@ msgstr ""
msgid "Copying stereo audio into a mono track is not allowed."
msgstr "ÐÑÑÑ
абаÑдоÑии ÑÑеÑео ба аÑдио Ð¸Ò·Ð¾Ð·Ð°Ñ Ð´Ð¾Ð´Ð° намеÑавад."
-#: Menus.cpp:2640
-#: toolbars/EditToolBar.cpp:139
+#: Menus.cpp:2640 toolbars/EditToolBar.cpp:139
msgid "Trim"
msgstr "ÐÑÑÐ¸Ñ Ð±Ð¾ кÑнҷ"
@@ -2660,8 +2512,7 @@ msgstr "ÐÑÑÑаҳидÑозӣ"
msgid "Silenced selected tracks for %.2f seconds at %.2f"
msgstr "ÐÐ°Ñ ÑоҳÑаҳои Ò·ÑдокаÑдаÑÑда навиÑÑа ÑÑдааÑÑ %.2f ниÑонагÑзоÑÓ£ аз ÑониÑи %.2f"
-#: Menus.cpp:2741
-#: toolbars/EditToolBar.cpp:141
+#: Menus.cpp:2741 toolbars/EditToolBar.cpp:141
msgid "Silence"
msgstr "ХомÑÑÓ£"
@@ -2745,8 +2596,7 @@ msgstr "ÐиÑонаҳоÑо Ò·Ñдо кÑнед"
msgid "Disjoined labeled regions"
msgstr "Ðаҳалҳои ниÑÐ¾Ð½Ð°Ð´Ð¾Ñ Ò·Ñдо каÑда ÑÑдаанд"
-#: Menus.cpp:2917
-#: TrackPanel.cpp:5636
+#: Menus.cpp:2917 TrackPanel.cpp:5636
msgid "Split"
msgstr "Ò¶ÑдокÑнӣ"
@@ -2762,15 +2612,6 @@ msgstr "Ò¶ÑдокÑнӣ ба ÑоҳÑаи нав"
msgid "Split at labels"
msgstr "Ò¶ÑдокÑнӣ Ð´Ð°Ñ Ð½Ð¸Ñонаҳо"
-#: Menus.cpp:3390
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "ÐаÑои ÑоÑ
Ñани ÑпекÑÑÑм, ҳамаи ÑоҳÑаҳои инÑиÑ
обÑÑда боÑд навÑи ÑкÑ
ела доÑÑа боÑанд."
-
-#: Menus.cpp:3416
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "ÐÑдио баÑзиÑд инÑиÑ
об ÑÑд. Танҳо %.1f ÑониÑҳои аввали аÑдио ÑаÑÑ
Ð¸Ñ Ð¼ÐµÑаванд."
-
#: Menus.cpp:3551
#, c-format
msgid "Imported labels from '%s'"
@@ -2836,9 +2677,7 @@ msgstr "%d ÑоҳÑаҳо Ð´Ð°Ñ Ñк ÑÑеÑео ÑоҳÑаи нав пеÑн
msgid "Mixed and rendered %d tracks into one new mono track"
msgstr "%dÑоҳÑаҳо Ð´Ð°Ñ Ñк моно ÑоҳÑаи нав пеÑниҳодÑÑд ва омеÑ
Ñа ÑÑданд"
-#: Menus.cpp:614
-#: Menus.cpp:3698
-#: Mix.cpp:119
+#: Menus.cpp:614 Menus.cpp:3698 Mix.cpp:119
msgid "&Mix and Render"
msgstr "&ÐÐ¼ÐµÐ·Ð¸Ñ Ð²Ð° ÐеÑниҳодкÑнӣ"
@@ -2890,10 +2729,7 @@ msgstr ""
msgid "Created new audio track"
msgstr "СозиÑи ÑоҳÑаи нави аÑдиоии нав"
-#: Menus.cpp:3899
-#: Menus.cpp:3922
-#: Menus.cpp:3937
-#: Menus.cpp:3957
+#: Menus.cpp:3899 Menus.cpp:3922 Menus.cpp:3937 Menus.cpp:3957
msgid "New Track"
msgstr "РоҳÑаи Ðав"
@@ -2929,8 +2765,7 @@ msgstr "СабÑи ÐÑÑÒи Тозаи Файли ÐодаÑÑда ҲамÑÑ
msgid "CleanSpeech Presets (*.csp)|*.csp"
msgstr "ТозакÑнии ÐÑÑÒи ÐодаÑÑда (*.csp)|*.csp"
-#: Menus.cpp:4072
-#: export/Export.cpp:483
+#: Menus.cpp:4072 export/Export.cpp:483
msgid "Sorry, pathnames longer than 256 characters not supported."
msgstr "ÐÑбаÑ
Ñед, номгÑзоÑÓ£ Ð±ÐµÑ Ð°Ð· 256 Ð°Ð»Ð¾Ð¼Ð°Ñ Ð´Ð¾ÑÑа, даÑÑгиÑÓ£ намеÑавад."
@@ -2938,8 +2773,7 @@ msgstr "ÐÑбаÑ
Ñед, номгÑзоÑÓ£ Ð±ÐµÑ Ð°Ð· 256 Ð°Ð»Ð¾Ð¼Ð°Ñ Ð´Ð¾Ñ
msgid "Problem encountered exporting presets."
msgstr "ХаÑои доÑ
илии додаÑÑдаҳо ÑÑмÑÑда наÑÑдаÑÑ."
-#: Menus.cpp:4119
-#: export/Export.cpp:371
+#: Menus.cpp:4119 export/Export.cpp:371
msgid "Unable to export"
msgstr "СодиÑÐ¾Ñ Ð½Ð¾Ð¼Ñмкин аÑÑ"
@@ -2951,8 +2785,7 @@ msgstr "ҶобаҷогÑзоÑии РоҳÑа"
msgid "Removed audio track(s)"
msgstr "РоҳÑа(ҳо)и аÑдиоии ҷобаҷогÑзоÑÑаÑÑда"
-#: Menus.cpp:4380
-#: Menus.cpp:4399
+#: Menus.cpp:4380 Menus.cpp:4399
msgid "Resample"
msgstr "ÐознамÑнагиÑÓ£"
@@ -2977,8 +2810,7 @@ msgstr "ÐознамÑнагиÑии РоҳÑа"
msgid "Resampled audio track(s)"
msgstr "ÐознамÑнагиÑии ÑоҳÑа(ҳо)и аÑдиоӣ"
-#: Mix.cpp:93
-#: Mix.cpp:100
+#: Mix.cpp:93 Mix.cpp:100
msgid "Mix"
msgstr "ÐмеÑ
Ñа"
@@ -2998,6 +2830,10 @@ msgstr "Ҳангоми Ñоп Ñ
аÑо ба амал омад."
msgid "Print"
msgstr "Чоп каÑдан"
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr ""
+
#: Project.cpp:656
msgid "Main Mix"
msgstr "ТаÑодÑÑан"
@@ -3011,14 +2847,11 @@ msgstr "Ð¥ÑÑ Ð¾Ð¼Ð°Ð´ÐµÐ´ ба ÑаÑиÒаи %s Audacity"
msgid "(Recovered)"
msgstr "(ÐаÑÒаÑоÑÑÑда)"
-#: Project.cpp:1439
-#: TrackPanel.cpp:776
-#: toolbars/ControlToolBar.cpp:192
+#: Menus.cpp:817
msgid "Record"
msgstr "СабÑ"
-#: Project.cpp:1439
-#: TrackPanel.cpp:776
+#: Project.cpp:1439 TrackPanel.cpp:776
msgid "Recorded Audio"
msgstr "ÐÑдиои СабÑÑÑда"
@@ -3039,12 +2872,11 @@ msgstr ""
msgid "Save changes?"
msgstr "ТаÒиÑоÑҳо ÑÐ°Ð±Ñ Ñаванд?"
-#: Project.cpp:1775
-msgid "All files|*.*|All supported files|"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
msgstr ""
-#: Menus.cpp:3489
-#: Project.cpp:1626
+#: Menus.cpp:3489 Project.cpp:1626
msgid "Select one or more audio files..."
msgstr "ÐнÑиÑ
оби Ñк Ñ ÑкÑанд Ñайлҳои аÑдиои..."
@@ -3071,8 +2903,18 @@ msgstr ""
msgid "Opening old project file"
msgstr "ÐÑÑодаÑавии лоиҳаи кÑҳнаи Ñайл"
-#: Project.cpp:1704
-#: Project.cpp:1712
+#: Project.cpp:2073
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr ""
+
+#: Project.cpp:1704 Project.cpp:1712
msgid "Error opening file"
msgstr "ХаÑои кÑÑодаÑавии Ñайл"
@@ -3107,8 +2949,7 @@ msgstr "ÐаÑÒаÑоÑÑозӣ"
msgid "Project checker repaired file"
msgstr "СанҷиÑгаÑи лоиҳа ÑайлÑо ÑаÑÐ¼Ð¸Ñ ÐºÐ°Ñд"
-#: Project.cpp:1870
-#: effects/Repair.h:29
+#: Project.cpp:1870 effects/Repair.h:29
msgid "Repair"
msgstr "ТаÑмиÑ"
@@ -3130,10 +2971,12 @@ msgstr "Ðн Ñайл Ð´Ð°Ñ Ð²Ð°ÒÑи иÑÑиÑодаи Audacity ÑÐ°Ð±Ñ Ñ
msgid "Can't open project file"
msgstr "Ðоиҳаи ÑайлÑо кÑÑода намеÑавонад"
-#: Project.cpp:2314
+#: Project.cpp:2484
#, c-format
msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
msgstr ""
@@ -3153,17 +2996,22 @@ msgstr ""
msgid "Warning empty project"
msgstr ""
-#: Project.cpp:2591
+#: Project.cpp:2792
#, c-format
msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+"is not writable or the disk is full."
msgstr ""
-#: Project.cpp:2260
-#: Project.cpp:2274
+#: Project.cpp:2260 Project.cpp:2274
msgid "Error saving project"
msgstr "ХаÑои ÑабÑи лоиҳа"
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
#: Project.cpp:2336
#, c-format
msgid "Saved %s"
@@ -3174,12 +3022,8 @@ msgstr "Ð¡Ð°Ð±Ñ ÑÑд %s"
msgid "Imported '%s'"
msgstr "ÐоÑиди '%s'"
-#: Menus.cpp:3616
-#: Project.cpp:2419
-#: Project.cpp:2444
-#: import/ImportPCM.cpp:405
-#: import/ImportPCM.cpp:449
-#: import/ImportRaw.cpp:446
+#: Menus.cpp:3616 Project.cpp:2419 Project.cpp:2444 import/ImportPCM.cpp:405
+#: import/ImportPCM.cpp:449 import/ImportRaw.cpp:446
msgid "Import"
msgstr "ÐоÑидоÑ"
@@ -3226,8 +3070,7 @@ msgstr "Ðоиҳаи нав Ñҷод каÑда ÑÑд"
msgid "Deleted %.2f seconds at t=%.2f"
msgstr "ТозаÑавӣ %.2f аз ÑониÑи t=%.2f"
-#: Project.cpp:2679
-#: effects/Equalization.cpp:1113
+#: Project.cpp:2679 effects/Equalization.cpp:1113
#: effects/Equalization.cpp:2417
msgid "Delete"
msgstr "ÐобÑдÑозӣ"
@@ -3283,7 +3126,6 @@ msgid "Could not create autosave file: "
msgstr "СозиÑи Ñайли Ñ
ÑдÑÐ°Ð±Ñ Ð½Ð¾Ð¼Ñмкин аÑÑ: "
#: Project.cpp:3722
-#, c-format
#, fuzzy
msgid "Actual Rate: %d"
msgstr "ÐÑдии ҶойдоÑÑа %d"
@@ -3309,8 +3151,7 @@ msgstr "ÐамÑнагиÑÓ£ бо ÑÑии ÐÑик де ÐаÑÑÑо Ðопо"
msgid "Libsamplerate error: %d\n"
msgstr "ХаÑои намÑнагиÑÓ£: %d\n"
-#: Resample.cpp:240
-#: Resample.cpp:250
+#: Resample.cpp:240 Resample.cpp:250
msgid "Resampling disabled."
msgstr "ÐамÑнагиÑÓ£ Ð±ÐµÐºÐ¾Ñ ÑÑда."
@@ -3329,6 +3170,163 @@ msgstr "24-Ð±Ð¸Ñ ÐСÐ"
msgid "32-bit float"
msgstr "32-Ð±Ð¸Ñ float"
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
+
+#: export/ExportMultiple.cpp:203 prefs/DirectoriesPrefs.cpp:92
+msgid "Choose..."
+msgstr "ÐнÑиÑ
оби..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
+
+#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
+msgid "false"
+msgstr ""
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr "ÐбзоÑҳо"
+
+#: toolbars/ControlToolBar.cpp:82
+msgid "Control"
+msgstr "ÐдоÑакÑнӣ"
+
+#: toolbars/MixerToolBar.cpp:58
+msgid "Mixer"
+msgstr "ÐмезиÑкÑнанда"
+
+#: toolbars/MeterToolBar.cpp:49
+msgid "Meter"
+msgstr "маÑÑаÑÑанҷ"
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
+#: toolbars/DeviceToolBar.cpp:54
+msgid "Device"
+msgstr "ÐÑзоÑ"
+
+#: toolbars/TranscriptionToolBar.cpp:82
+msgid "Transcription"
+msgstr "ÐÑÒаÑ"
+
+#: TrackPanel.cpp:452 TrackPanel.cpp:453
+msgid "Track Panel"
+msgstr "Ðавҳаи РоҳÑа"
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: export/ExportMultiple.cpp:246
+msgid "Tracks"
+msgstr "РоҳÑаҳо"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
#: Screenshot.cpp:384
msgid "Saved "
msgstr ""
@@ -3337,22 +3335,20 @@ msgstr ""
msgid "Error trying to save file: "
msgstr ""
-#: Sequence.cpp:732
-#: Sequence.cpp:742
-#: Sequence.cpp:749
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
+#: Sequence.cpp:732 Sequence.cpp:742 Sequence.cpp:749
msgid "Gap detected in project file\n"
msgstr "ФоÑила Ð´Ð°Ñ Ð»Ð¾Ð¸Ò³Ð°Ð¸ Ñайл бозÑÑÑ ÑÑд\n"
-#: effects/Effect.cpp:255
-#: effects/Effect.cpp:382
-#: effects/Phaser.cpp:595
-#: effects/Wahwah.cpp:582
-#: effects/audiounits/AudioUnitEffect.cpp:872
+#: effects/Effect.cpp:255 effects/Effect.cpp:382 effects/Phaser.cpp:595
+#: effects/Wahwah.cpp:582 effects/audiounits/AudioUnitEffect.cpp:872
msgid "Pre&view"
msgstr "ÐеÑ&намоиÑ"
-#: effects/nyquist/Nyquist.cpp:826
-#: effects/nyquist/Nyquist.cpp:990
+#: effects/nyquist/Nyquist.cpp:826 effects/nyquist/Nyquist.cpp:990
msgid "&Debug"
msgstr "&ÐÑлоҳи Ñ
аÑо"
@@ -3388,8 +3384,7 @@ msgstr ""
msgid "Track Number"
msgstr "РаÒами ÑоҳÑа"
-#: Tags.cpp:737
-#: Tags.cpp:963
+#: Tags.cpp:737 Tags.cpp:963
msgid "Year"
msgstr "Сол"
@@ -3397,9 +3392,7 @@ msgstr "Сол"
msgid "Genre"
msgstr "УÑлÑб"
-#: Tags.cpp:747
-#: Tags.cpp:996
-#: prefs/MousePrefs.cpp:96
+#: Tags.cpp:747 Tags.cpp:996 prefs/MousePrefs.cpp:96
msgid "Comments"
msgstr "ШаÑÒ³"
@@ -3435,13 +3428,11 @@ msgstr ""
msgid "Template"
msgstr "Òолаб"
-#: Tags.cpp:1073
-#: prefs/KeyConfigPrefs.cpp:126
+#: Tags.cpp:1073 prefs/KeyConfigPrefs.cpp:126
msgid "&Load..."
msgstr "&ÐоÑгиÑии..."
-#: Tags.cpp:1078
-#: prefs/KeyConfigPrefs.cpp:125
+#: Tags.cpp:1078 prefs/KeyConfigPrefs.cpp:125
msgid "&Save..."
msgstr "&ÐаÑ
иÑа каÑдан..."
@@ -3486,6 +3477,10 @@ msgstr ""
msgid "Save Metadata As:"
msgstr ""
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
#: Theme.cpp:628
#, c-format
msgid "Audacity could not write file:\n"
@@ -3518,8 +3513,7 @@ msgstr "Audacity ÑайлÑо наÑÑÑ:\n"
" %s.\n"
"ÐÐ°Ð²Ð·Ó¯Ñ Ð±Ð¾Ñ ÐºÐ°Ñда наÑÑд."
-#: Theme.cpp:797
-#: Theme.cpp:885
+#: Theme.cpp:797 Theme.cpp:885
#, c-format
msgid "Audacity could not load file:\n"
" %s.\n"
@@ -3574,6 +3568,14 @@ msgstr "Ðавомнокӣ"
msgid "Audacity Timer Record"
msgstr "СабÑи ÐамонÑанҷи Audacity"
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
#: TimerRecordDialog.cpp:224
msgid "Recording start"
msgstr ""
@@ -3613,40 +3615,23 @@ msgstr ""
msgid "Audacity Timer Record - Waiting for Start"
msgstr ""
-#: TrackPanel.cpp:452
-#: TrackPanel.cpp:453
-msgid "Track Panel"
-msgstr "Ðавҳаи РоҳÑа"
-
-#: TrackPanel.cpp:496
-#: export/ExportPCM.cpp:201
-#: prefs/QualityPrefs.cpp:97
+#: TrackPanel.cpp:496 export/ExportPCM.cpp:201 prefs/QualityPrefs.cpp:97
msgid "Other..."
msgstr "ÐигаÑ..."
-#: TrackPanel.cpp:504
-#: TrackPanel.cpp:525
-#: TrackPanel.cpp:534
-#: TrackPanel.cpp:542
+#: TrackPanel.cpp:504 TrackPanel.cpp:525 TrackPanel.cpp:534 TrackPanel.cpp:542
msgid "Name..."
msgstr "Ðом..."
-#: TrackPanel.cpp:506
-#: TrackPanel.cpp:527
-#: TrackPanel.cpp:538
-#: TrackPanel.cpp:544
+#: TrackPanel.cpp:506 TrackPanel.cpp:527 TrackPanel.cpp:538 TrackPanel.cpp:544
msgid "Move Track Up"
msgstr "ҶойгÑзоÑии РоҳÑа ба Ðоло"
-#: TrackPanel.cpp:507
-#: TrackPanel.cpp:528
-#: TrackPanel.cpp:539
-#: TrackPanel.cpp:545
+#: TrackPanel.cpp:507 TrackPanel.cpp:528 TrackPanel.cpp:539 TrackPanel.cpp:545
msgid "Move Track Down"
msgstr "ҶойгÑзоÑии РоҳÑа ба ÐоÑн"
-#: TrackPanel.cpp:509
-#: effects/ToneGen.cpp:292
+#: TrackPanel.cpp:509 effects/ToneGen.cpp:292
msgid "Waveform"
msgstr "ÐавҷÑакл"
@@ -3662,18 +3647,15 @@ msgstr ""
msgid "Pitch (EAC)"
msgstr "Ðаландии Ñадо (EAC)"
-#: TrackPanel.cpp:514
-#: TrackPanel.cpp:5606
+#: TrackPanel.cpp:514 TrackPanel.cpp:5606
msgid "Mono"
msgstr "Ðоно"
-#: TrackPanel.cpp:515
-#: TrackPanel.cpp:5605
+#: TrackPanel.cpp:515 TrackPanel.cpp:5605
msgid "Left Channel"
msgstr "Шабакаи Ñап"
-#: TrackPanel.cpp:516
-#: TrackPanel.cpp:5605
+#: TrackPanel.cpp:516 TrackPanel.cpp:5605
msgid "Right Channel"
msgstr "Шабакаи Ñап ÑоÑÑ"
@@ -3685,12 +3667,15 @@ msgstr "СозиÑи РоҳÑаи СÑеÑео"
msgid "Split Stereo Track"
msgstr "Ò¶ÑдокÑнии РоҳÑаи СÑеÑео"
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr ""
+
#: TrackPanel.cpp:520
msgid "Set Sample Format"
msgstr "ÐаÑби Òолаби ÐамÑнавӣ"
-#: TrackPanel.cpp:522
-#: TrackPanel.cpp:5823
+#: TrackPanel.cpp:522 TrackPanel.cpp:5823
msgid "Set Rate"
msgstr "ÐаÑби ÐоÑÑÑÑаÑ"
@@ -3710,8 +3695,7 @@ msgstr "ҲаÑÑҳо..."
msgid "Set Range..."
msgstr "ÐаÑби маҳдÑдиÑÑ..."
-#: TrackPanel.cpp:551
-#: toolbars/EditToolBar.cpp:135
+#: TrackPanel.cpp:551 toolbars/EditToolBar.cpp:135
msgid "Copy"
msgstr "ÐÑÑÑ
а"
@@ -3757,21 +3741,13 @@ msgstr "ÐаÑ
Ñ Ð²Ð° каÑидан баÑои ҷойивазкÑнии инÑ
msgid "Click and drag to move right selection boundary."
msgstr "ÐаÑ
Ñ Ð²Ð° каÑидан баÑои ҷойивазкÑнии инÑиÑ
оби ÑаÑҳади ÑоÑÑ."
-#: TrackPanel.cpp:1669
-#: TrackPanel.cpp:3736
-#: TrackPanel.cpp:3768
-#: TrackPanel.cpp:4013
-#: TrackPanel.cpp:5935
-#: TrackPanel.cpp:5955
+#: TrackPanel.cpp:1669 TrackPanel.cpp:3736 TrackPanel.cpp:3768
+#: TrackPanel.cpp:4013 TrackPanel.cpp:5935 TrackPanel.cpp:5955
msgid "Modified Label"
msgstr "ТаÒиÑоÑҳои ÐиÑонавӣ"
-#: TrackPanel.cpp:1670
-#: TrackPanel.cpp:3737
-#: TrackPanel.cpp:3769
-#: TrackPanel.cpp:4014
-#: TrackPanel.cpp:5936
-#: TrackPanel.cpp:5956
+#: TrackPanel.cpp:1670 TrackPanel.cpp:3737 TrackPanel.cpp:3769
+#: TrackPanel.cpp:4014 TrackPanel.cpp:5936 TrackPanel.cpp:5956
msgid "Label Edit"
msgstr "ТаҳÑиÑи ÐиÑона"
@@ -3779,8 +3755,7 @@ msgstr "ТаҳÑиÑи ÐиÑона"
msgid "Adjusted envelope."
msgstr "Ðа ÑаÑÑибоÑии лиÑоÑавӣ."
-#: TrackPanel.cpp:1898
-#: prefs/MousePrefs.cpp:111
+#: TrackPanel.cpp:1898 prefs/MousePrefs.cpp:111
msgid "Envelope"
msgstr "ÐиÑоÑа"
@@ -3802,9 +3777,7 @@ msgstr "ÑоÑÑ"
msgid "Time shifted tracks/clips %s %.02f seconds"
msgstr "ÐаÒÑи ÑоҳÑаҳо/клип %s %.02f ÑÐ¾Ð½Ð¸Ñ Ò·Ð¾Ð¹Ð³Ð°Ñдонӣ ÑÑдаÑÑ"
-#: TrackPanel.cpp:2044
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:108
+#: TrackPanel.cpp:2044 prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:108
#: prefs/MousePrefs.cpp:109
msgid "Time-Shift"
msgstr "ÐаÒÑ-ҶойгаÑдонӣ"
@@ -3843,39 +3816,29 @@ msgid "Moved pan slider"
msgstr "ҶойивазÑавии идоÑакÑнандаҳои Ñадо"
#. i18n-hint: Title of the Gain slider, used to adjust the volume
-#: TrackPanel.cpp:3232
-#: TrackPanel.cpp:5276
-#: TrackPanel.cpp:6492
+#: TrackPanel.cpp:3232 TrackPanel.cpp:5276 TrackPanel.cpp:6492
msgid "Gain"
msgstr "ШиддаÑ"
#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: TrackPanel.cpp:3232
-#: TrackPanel.cpp:5214
-#: TrackPanel.cpp:6499
+#: TrackPanel.cpp:3232 TrackPanel.cpp:5214 TrackPanel.cpp:6499
msgid "Pan"
msgstr "паноÑама"
-#: TrackPanel.cpp:3357
-#: TrackPanel.cpp:5888
-#: effects/ChangePitch.cpp:281
+#: TrackPanel.cpp:3357 TrackPanel.cpp:5888 effects/ChangePitch.cpp:281
msgid "up"
msgstr "боло"
-#: TrackPanel.cpp:3361
-#: TrackPanel.cpp:5889
-#: effects/ChangePitch.cpp:281
+#: TrackPanel.cpp:3361 TrackPanel.cpp:5889 effects/ChangePitch.cpp:281
msgid "down"
msgstr "поÑн"
-#: TrackPanel.cpp:3366
-#: TrackPanel.cpp:5884
+#: TrackPanel.cpp:3366 TrackPanel.cpp:5884
#, c-format
msgid "Moved '%s' %s"
msgstr "Ҷойиваз ÑÑд '%s' %s"
-#: TrackPanel.cpp:3369
-#: TrackPanel.cpp:5890
+#: TrackPanel.cpp:3369 TrackPanel.cpp:5890
msgid "Move Track"
msgstr "ҶойивазÑавии РоҳÑа"
@@ -3907,14 +3870,6 @@ msgstr "ÐаноÑамаи мÑÑаÑабÑÑда"
msgid "Adjusted gain"
msgstr "ШиддаÑи мÑÑаÑабÑÑда"
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr ""
-
#: TrackPanel.cpp:5432
msgid "Can't delete track with active audio"
msgstr "РоҳÑаÑо бо аÑдиои ÑаÑол Ñоза каÑда намеÑавонад"
@@ -3935,8 +3890,7 @@ msgstr "Чап, "
msgid "Right, "
msgstr "РоÑÑ, "
-#: TrackPanel.cpp:5615
-#: TrackPanel.cpp:5728
+#: TrackPanel.cpp:5615 TrackPanel.cpp:5728
#, c-format
msgid "Changed '%s' to %s"
msgstr "'%s' ба %s ÑаÒÐ¹Ð¸Ñ Ð´Ð¾Ð´Ð° ÑÑд"
@@ -3950,6 +3904,11 @@ msgstr "ÐаҷÑо(Ðанал)"
msgid "Split stereo track '%s'"
msgstr "Ò¶ÑдокÑнии СÑеÑео ÑоҳÑа '%s'"
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
#: TrackPanel.cpp:5654
#, c-format
msgid "Made '%s' a stereo track"
@@ -3976,8 +3935,7 @@ msgstr "Ðвази Шакл"
msgid "Change lower speed limit (%) to:"
msgstr "ÐвазÑавии ÑаÑҳади поÑнии ÑÑÑÑаÑ(%) ба:"
-#: TrackPanel.cpp:5853
-#: TrackPanel.cpp:5854
+#: TrackPanel.cpp:5853 TrackPanel.cpp:5854
msgid "Lower speed limit"
msgstr "СÑÑÑаÑи паÑÑи ÑаÑҳад"
@@ -3985,8 +3943,7 @@ msgstr "СÑÑÑаÑи паÑÑи ÑаÑҳад"
msgid "Change upper speed limit (%) to:"
msgstr "ÐвазкÑнии ÑÑÑÑаÑи болоии ÑаÑҳад (%) ба:"
-#: TrackPanel.cpp:5860
-#: TrackPanel.cpp:5861
+#: TrackPanel.cpp:5860 TrackPanel.cpp:5861
msgid "Upper speed limit"
msgstr "СÑÑÑаÑи ÑаÑҳади болоӣ"
@@ -4028,6 +3985,10 @@ msgstr ""
msgid "Face size"
msgstr ""
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr ""
+
#: TrackPanel.cpp:6427
msgid "Mute"
msgstr "ÐеÑадо"
@@ -4061,10 +4022,7 @@ msgstr "Соло ÑаÑол аÑÑ"
msgid " Select On"
msgstr " ÐнÑиÑ
об ÑаÑол аÑÑ"
-#: VoiceKey.cpp:88
-#: VoiceKey.cpp:238
-#: VoiceKey.cpp:376
-#: VoiceKey.cpp:517
+#: VoiceKey.cpp:88 VoiceKey.cpp:238 VoiceKey.cpp:376 VoiceKey.cpp:517
msgid "Selection is too small to use voice key."
msgstr "ÐнÑиÑ
об баÑои иÑÑиÑодаи калиди овоз Ñ
еле Ñ
ÑÑд аÑÑ."
@@ -4091,8 +4049,7 @@ msgstr "Ðвази Ð¡Ð°Ð¼Ñ -- маÑнои: %1.4f sd: (%1.4f)\n"
msgid "Audio Track"
msgstr "РоҳÑаи ÐÑдиоӣ"
-#: WaveTrack.cpp:518
-#: WaveTrack.cpp:537
+#: WaveTrack.cpp:518 WaveTrack.cpp:537
msgid "There is not enough room available to paste the selection"
msgstr "ÐаÑои гÑзоÑÑани инÑиÑ
об поÑаи ҳоÑиза кам аÑÑ"
@@ -4110,8 +4067,9 @@ msgstr "ÐаÑÑаҳои иÑÑиÑоли 1 ба %i"
msgid "Plugins %i to %i"
msgstr "ÐаÑÑаҳои иÑÑиÑоли %i ба %i"
-#: commands/CommandManager.cpp:857
-msgid "Disallowed for some reason. Try selecting some audio first?"
+#: commands/CommandManager.cpp:923
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
msgstr ""
#: commands/CommandManager.cpp:892
@@ -4192,9 +4150,7 @@ msgstr "ТаÒвиÑÑдиҳанда"
msgid "You selected a track which does not contain audio. AutoDuck can only process audio tracks."
msgstr "ШÑмо ÑоҳÑаеÑо инÑиÑ
об каÑдед, ки аÑдио надоÑад. AutoDuck Ñанҳо ÑоҳÑаҳои аÑдиоÑо Ð´Ð°Ñ Ð±Ð°Ñ Ð¼ÐµÐ³Ð¸Ñад."
-#: effects/AutoDuck.cpp:126
-#: effects/AutoDuck.cpp:138
-#: effects/AutoDuck.cpp:451
+#: effects/AutoDuck.cpp:126 effects/AutoDuck.cpp:138 effects/AutoDuck.cpp:451
#: effects/AutoDuck.cpp:578
msgid "Auto Duck"
msgstr "Ðаки Ñ
ÑдкоÑ"
@@ -4215,17 +4171,11 @@ msgstr "ÐиÒдоÑи Duck:"
msgid "Maximum pause:"
msgstr "ТаваÒÒÑÑи ҳади акÑаÑ:"
-#: effects/AutoDuck.cpp:492
-#: effects/AutoDuck.cpp:497
-#: effects/AutoDuck.cpp:502
-#: effects/AutoDuck.cpp:507
-#: effects/AutoDuck.cpp:512
-#: prefs/AudioIOPrefs.cpp:162
-#: prefs/AudioIOPrefs.cpp:164
-#: prefs/AudioIOPrefs.cpp:188
-#: prefs/AudioIOPrefs.cpp:190
-#: prefs/AudioIOPrefs.cpp:198
-#: widgets/TimeTextCtrl.cpp:197
+#: effects/AutoDuck.cpp:492 effects/AutoDuck.cpp:497 effects/AutoDuck.cpp:502
+#: effects/AutoDuck.cpp:507 effects/AutoDuck.cpp:512
+#: prefs/AudioIOPrefs.cpp:162 prefs/AudioIOPrefs.cpp:164
+#: prefs/AudioIOPrefs.cpp:188 prefs/AudioIOPrefs.cpp:190
+#: prefs/AudioIOPrefs.cpp:198 widgets/TimeTextCtrl.cpp:197
msgid "seconds"
msgstr "ÑониÑҳо"
@@ -4245,8 +4195,7 @@ msgstr "ÐоÑаÑоиҳои доÑ
илии даÑозии поÑнӣ:"
msgid "Inner fade up length:"
msgstr "ÐоÑаÑоиҳои доÑ
илии даÑозии боло:"
-#: effects/AutoDuck.cpp:519
-#: effects/Compressor.cpp:479
+#: effects/AutoDuck.cpp:519 effects/Compressor.cpp:479
msgid "Threshold:"
msgstr "ÐÑÑона:"
@@ -4266,14 +4215,10 @@ msgstr "Ðаки Ñ
ÑдкоÑ..."
msgid "Processing Auto Duck..."
msgstr "ÐаÑдозиÑи Auto Duck..."
-#: LangChoice.cpp:103
-#: effects/AvcCompressor.cpp:738
-#: effects/TruncSilence.cpp:281
-#: effects/VST/VSTEffect.cpp:453
-#: effects/audiounits/AudioUnitEffect.cpp:877
-#: effects/nyquist/Nyquist.cpp:993
-#: effects/nyquist/Nyquist.cpp:1059
-#: widgets/Warning.cpp:67
+#: LangChoice.cpp:103 effects/AvcCompressor.cpp:738
+#: effects/TruncSilence.cpp:281 effects/VST/VSTEffect.cpp:453
+#: effects/audiounits/AudioUnitEffect.cpp:877 effects/nyquist/Nyquist.cpp:993
+#: effects/nyquist/Nyquist.cpp:1059 widgets/Warning.cpp:67
msgid "OK"
msgstr "ÐÐ"
@@ -4335,14 +4280,12 @@ msgstr "Ðвази ÑабÑи овоз"
msgid "Change Pitch without Changing Tempo"
msgstr "Ðвази ÑабÑи овоз бе ивази заÑба"
-#: effects/ChangePitch.cpp:251
-#: effects/ChangeSpeed.cpp:305
+#: effects/ChangePitch.cpp:251 effects/ChangeSpeed.cpp:305
#: effects/ChangeTempo.cpp:179
msgid "by Vaughan Johnson && Dominic Mazzoni"
msgstr "бо ÑÑии ÐаÑ
ан ҶонÑон ва Ðоминик Ðазони"
-#: effects/ChangePitch.cpp:256
-#: effects/ChangeTempo.cpp:184
+#: effects/ChangePitch.cpp:256 effects/ChangeTempo.cpp:184
msgid "using SoundTouch, by Olli Parviainen"
msgstr "иÑÑиÑодаи SoundTouch, бо ÑÑии Ðли ÐаÑваинин"
@@ -4391,10 +4334,8 @@ msgstr ""
msgid "From frequency in hertz"
msgstr ""
-#: effects/ChangePitch.cpp:288
-#: effects/ChangePitch.cpp:334
-#: effects/ChangeSpeed.cpp:369
-#: effects/ChangeTempo.cpp:238
+#: effects/ChangePitch.cpp:288 effects/ChangePitch.cpp:334
+#: effects/ChangeSpeed.cpp:369 effects/ChangeTempo.cpp:238
#: effects/ChangeTempo.cpp:269
msgid "to"
msgstr "ба"
@@ -4403,8 +4344,7 @@ msgstr "ба"
msgid "To frequency in seconds"
msgstr ""
-#: effects/ChangePitch.cpp:357
-#: effects/ChangeSpeed.cpp:323
+#: effects/ChangePitch.cpp:357 effects/ChangeSpeed.cpp:323
#: effects/ChangeTempo.cpp:197
msgid "Percent Change:"
msgstr "Ðвази Фоиз:"
@@ -4422,8 +4362,7 @@ msgstr "Ðвази баландкÑнӣ..."
msgid "Changing Pitch"
msgstr "ÐвазÑавии баландкÑнӣ"
-#: effects/ChangeSpeed.cpp:52
-#: effects/ChangeTempo.cpp:53
+#: effects/ChangeSpeed.cpp:52 effects/ChangeTempo.cpp:53
#, c-format
msgid "Applied effect: %s %.1f%%"
msgstr "ÐаÑиҷаи коÑÑаÑмÑдаÑÑда: %s %.1f%%"
@@ -4573,12 +4512,11 @@ msgstr ""
msgid "Decay Time"
msgstr ""
-#: effects/Compressor.cpp:504
-msgid "Normalize to 0dB after compressing"
-msgstr "ХанҷоÑÑозӣ(ноÑмалӣ) ба 0dB баÑди ÑиÑоÑдиҳӣ"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
+msgstr ""
#: effects/Compressor.cpp:563
-#, c-format
#, fuzzy
msgid "Threshold %d dB"
msgstr "ÐÑÑона: %d dB"
@@ -4609,7 +4547,6 @@ msgid "%.1f:1"
msgstr ""
#: effects/Compressor.cpp:575
-#, c-format
#, fuzzy
msgid "Attack Time %.1f secs"
msgstr "Ҳамлаи ваÒÑ: %.1f Ñон-ҳо"
@@ -4632,6 +4569,10 @@ msgstr "ФиÑоÑдиҳандаи..."
msgid "Applying Dynamic Range Compression..."
msgstr "ÐоÑÑаÑмоии ÑиÑоÑдиҳандаи Ñоҳаи пӯÑи..."
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
msgstr ""
@@ -4651,19 +4592,6 @@ msgid "Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr ""
-
#: effects/Contrast.cpp:231
msgid "Contrast Analyzer"
msgstr ""
@@ -4672,15 +4600,12 @@ msgstr ""
msgid "Parameters"
msgstr ""
-#: effects/ToneGen.cpp:324
-#: toolbars/ControlToolBar.cpp:186
+#: effects/ToneGen.cpp:324 toolbars/ControlToolBar.cpp:186
msgid "Start"
msgstr "ÐбÑидо"
-#: effects/ToneGen.cpp:325
-#: toolbars/ControlToolBar.cpp:189
-#: toolbars/SelectionBar.cpp:130
-#: toolbars/SelectionBar.cpp:228
+#: effects/ToneGen.cpp:325 toolbars/ControlToolBar.cpp:189
+#: toolbars/SelectionBar.cpp:130 toolbars/SelectionBar.cpp:228
msgid "End"
msgstr "ÐнÑиҳо"
@@ -4700,6 +4625,11 @@ msgstr ""
msgid "Foreground end time"
msgstr ""
+#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
+#: effects/Contrast.cpp:289
+msgid "Measured"
+msgstr ""
+
#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
msgid "Use selection"
msgstr ""
@@ -4744,16 +4674,8 @@ msgstr ""
msgid "Help for WCAG2 Audio Contrast Analyzer"
msgstr ""
-#: toolbars/ControlToolBar.cpp:82
-msgid "Control"
-msgstr "ÐдоÑакÑнӣ"
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
msgstr ""
#: effects/Contrast.cpp:328 effects/Contrast.cpp:336 effects/Contrast.cpp:344
@@ -4864,18 +4786,6 @@ msgstr ""
msgid "Data gathered"
msgstr ""
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr ""
-
#: effects/DtmfGen.cpp:47
msgid "DTMF Tone Generator"
msgstr "ÐÑваллиди оҳанги DTMF"
@@ -4888,8 +4798,7 @@ msgstr "бо ÑÑии Салво ÐенÑÑÑа (2006)"
msgid "DTMF sequence:"
msgstr "баÑомади DTMF:"
-#: effects/ToneGen.cpp:295
-#: effects/ToneGen.cpp:328
+#: effects/ToneGen.cpp:295 effects/ToneGen.cpp:328
msgid "Amplitude (0-1)"
msgstr "Ðоманаи (0-1)"
@@ -4909,9 +4818,7 @@ msgstr "ÐавÑи вазиÑавӣ:"
msgid "Tone duration:"
msgstr "Ðавомнокии оҳанг:"
-#: effects/DtmfGen.cpp:425
-#: effects/DtmfGen.cpp:427
-#: effects/DtmfGen.cpp:498
+#: effects/DtmfGen.cpp:425 effects/DtmfGen.cpp:427 effects/DtmfGen.cpp:498
#: effects/DtmfGen.cpp:499
msgid "ms"
msgstr "мÑ"
@@ -4992,8 +4899,7 @@ msgstr "ÐоÑинÑÑ"
msgid "Cubic"
msgstr "ÐÑб"
-#: effects/Equalization.cpp:332
-#: effects/Equalization.cpp:367
+#: effects/Equalization.cpp:332 effects/Equalization.cpp:367
msgid "Equalization"
msgstr "ÐаÑобаÑÑозӣ"
@@ -5006,6 +4912,10 @@ msgstr "ХаÑо ҳангоми боÑкÑнии EQ"
msgid "custom"
msgstr "Танзим"
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr ""
+
#: effects/Equalization.cpp:1023
msgid "Equalization, by Martyn Shaw && Mitch Golden"
msgstr "ÐаÑобаÑкÑнӣ бо ÑÑии ÐаÑÑин Ð¨Ð¾Ñ Ð²Ð° ÐиÑÑ Ðолден"
@@ -5042,8 +4952,7 @@ msgstr "ÐаÑозии полÑна:"
msgid "Select curve:"
msgstr "ÐнÑиÑ
оби ÑавÑÐ¸Ñ (Ñ
аÑи каҷ):"
-#: effects/Equalization.cpp:1110
-#: effects/Equalization.cpp:2322
+#: effects/Equalization.cpp:1110 effects/Equalization.cpp:2322
msgid "Save As..."
msgstr "Ð¡Ð°Ð±Ñ Ò³Ð°Ð¼ÑÑн..."
@@ -5159,8 +5068,7 @@ msgstr "ÐÑÑвоÑÑаÑин"
msgid "by Lynn Allan"
msgstr ""
-#: effects/Leveller.cpp:219
-#: effects/Leveller.cpp:224
+#: effects/Leveller.cpp:219 effects/Leveller.cpp:224
msgid "Degree of Leveling"
msgstr "ÐаÑаҷаи баÑобаÑкÑнӣ"
@@ -5209,10 +5117,6 @@ msgstr ""
msgid "Analyser"
msgstr ""
-#: toolbars/MixerToolBar.cpp:58
-msgid "Mixer"
-msgstr "ÐмезиÑкÑнанда"
-
#: effects/LoadEffects.cpp:116
msgid "Simulator"
msgstr ""
@@ -5454,10 +5358,6 @@ msgstr "ТозаÑавии Ñ
аÑ"
msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr ""
-#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
-msgid "false"
-msgstr ""
-
#. i18n-hint: true here means that the option was
#. * selected. Opposite false if not selected
#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
@@ -5518,8 +5418,7 @@ msgstr ""
msgid "Dry Wet"
msgstr ""
-#: effects/Phaser.cpp:526
-#: effects/Wahwah.cpp:497
+#: effects/Phaser.cpp:526 effects/Wahwah.cpp:497
msgid "LFO Frequency (Hz):"
msgstr "ÐаÑомади LFO (ҲеÑÑз):"
@@ -5527,8 +5426,7 @@ msgstr "ÐаÑомади LFO (ҲеÑÑз):"
msgid "LFO frequency in hertz"
msgstr ""
-#: effects/Phaser.cpp:542
-#: effects/Wahwah.cpp:513
+#: effects/Phaser.cpp:542 effects/Wahwah.cpp:513
msgid "LFO Start Phase (deg.):"
msgstr "ÐбÑидои маÑҳилаи LFO (даÑаҷа):"
@@ -5589,8 +5487,7 @@ msgstr "ÐаÒÑи ÑакÑоÑÑÑда %d"
msgid "Tracks are too long to repeat the selection."
msgstr "ÐаÑои Ò·ÑдокÑнӣ ÑоҳÑаҳо Ñ
еле даÑозанд."
-#: effects/Repeat.cpp:75
-#: effects/Repeat.cpp:79
+#: effects/Repeat.cpp:75 effects/Repeat.cpp:79
msgid "Repeat"
msgstr "ТакÑоÑ"
@@ -5603,8 +5500,7 @@ msgstr "ÐиÒдоÑи ваÒÑҳои ÑакÑоÑÑаванда: "
msgid "New selection length: hh:mm:ss"
msgstr ""
-#: effects/Repeat.cpp:264
-#: effects/Repeat.cpp:302
+#: effects/Repeat.cpp:264 effects/Repeat.cpp:302
msgid "New selection length: "
msgstr "ÐнÑиÑ
оби нави даÑозӣ: "
@@ -5665,8 +5561,7 @@ msgid "Max Spike Duration (milliseconds): \n"
msgstr "Ðавомнокии баÑобаÑкÑнандаи беÑина (миллиÑониÑ): \n"
"(99999 Ñ Ð·Ð¸ÑдÑаÑ)"
-#: effects/SpikeCleaner.cpp:178
-#: effects/TruncSilence.cpp:269
+#: effects/SpikeCleaner.cpp:178 effects/TruncSilence.cpp:269
msgid "Theshold for silence: "
msgstr "ÐÑÑонаи Ñ
омӯÑÓ£: "
@@ -5821,25 +5716,40 @@ msgstr ""
msgid "Truncate Silence"
msgstr ""
-#: effects/TruncSilence.cpp:345
-msgid "Max silence duration:"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:175
-#: prefs/AudioIOPrefs.cpp:178
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:175 prefs/AudioIOPrefs.cpp:178
msgid "milliseconds"
msgstr "миллиÑониÑ"
+#: effects/TruncSilence.cpp:345
+msgid "Max silence duration:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ""
+
#: effects/TruncSilence.cpp:350
msgid "Threshold for silence:"
msgstr ""
-#: effects/TruncSilence.cpp:374
-msgid " Duration must be at least 1 millisecond"
+#: effects/TruncSilence.cpp:506
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
msgstr ""
-#: effects/TruncSilence.cpp:84
-#: effects/TruncSilence.h:29
+#: effects/TruncSilence.cpp:84 effects/TruncSilence.h:29
msgid "Truncate Silence..."
msgstr "ÐÑÑÑиÑи ÒиÑмаÑҳои Ñ
омӯÑ..."
@@ -5847,17 +5757,55 @@ msgstr "ÐÑÑÑиÑи ÒиÑмаÑҳои Ñ
омӯÑ..."
msgid "Truncating Silence..."
msgstr "ÐÑÑидаÑавии ÒиÑмаÑҳои Ñ
омӯÑÓ£..."
-#: effects/VST/VSTEffect.cpp:179
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "ÐÑбаÑ
Ñед, аммо наÑиҷаҳои VST Ð´Ð°Ñ ÑÑеÑеоÑоҳÑаҳое, ки Ñабакаҳои индивидÑалии мÑÑÐ¾Ð±Ð¸Ò Ð½Ð°Ð´Ð¾Ñанд иÑÑиÑода намеÑавад."
+#: effects/ladspa/LadspaEffect.cpp:621
+msgid "Effect Settings"
+msgstr "ТанзимоÑи наÑиҷаҳо"
+
+#: effects/ladspa/LadspaEffect.cpp:573 effects/ladspa/LadspaEffect.cpp:581
+#: prefs/QualityPrefs.cpp:72
+msgid "None"
+msgstr "Ҳеҷ Ñиз"
+
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
-#: effects/VST/VSTEffect.cpp:194
-msgid "Can't process replacing"
-msgstr "ҶойивазкÑнӣ Òобили иҷÑо неÑÑ"
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
-#: effects/VST/VSTEffect.cpp:408
-msgid "VST Plug-in parameters:"
-msgstr "ÒиÑмаÑҳои ваÑеÑÑавии VST:"
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr ""
#: effects/Wahwah.cpp:60
#, c-format
@@ -5906,20 +5854,10 @@ msgstr "ÐаÑиҷаи коÑбÑÑдаÑÑда: %s"
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr "ÐÑбаÑ
Ñед, аммо наÑиҷаҳои Plug-in Ð´Ð°Ñ ÑÑеÑеоÑоҳÑаҳое, ки Ñабакаҳои индивидÑалии мÑÑÐ¾Ð±Ð¸Ò Ð½Ð°Ð´Ð¾Ñанд иÑÑиÑода намеÑавад."
-#: effects/ladspa/LadspaEffect.cpp:573
-#: effects/ladspa/LadspaEffect.cpp:581
-#: prefs/QualityPrefs.cpp:72
-msgid "None"
-msgstr "Ҳеҷ Ñиз"
-
#: effects/ladspa/LadspaEffect.cpp:575
msgid "Author: "
msgstr "ÐÑаллиÑ: "
-#: effects/ladspa/LadspaEffect.cpp:621
-msgid "Effect Settings"
-msgstr "ТанзимоÑи наÑиҷаҳо"
-
#: effects/ladspa/LadspaEffect.cpp:712
msgid "Length (seconds)"
msgstr "Ðавомнокӣ (ÑониÑ)"
@@ -5940,8 +5878,7 @@ msgstr ""
msgid "Applying Nyquist Effect..."
msgstr "ÐоÑбаÑии наÑиҷаи Nyquist..."
-#: effects/nyquist/Nyquist.cpp:260
-#: effects/nyquist/Nyquist.cpp:322
+#: effects/nyquist/Nyquist.cpp:260 effects/nyquist/Nyquist.cpp:322
msgid "Nyquist Prompt..."
msgstr "ÐаÑÑ
оÑÑи Nyquist..."
@@ -5961,8 +5898,7 @@ msgstr "Ðҳанг"
msgid "Nyquist Output: "
msgstr "ÐÑÑÑни NyquistÑ: "
-#: effects/nyquist/Nyquist.cpp:594
-#: effects/nyquist/Nyquist.cpp:605
+#: effects/nyquist/Nyquist.cpp:594 effects/nyquist/Nyquist.cpp:605
msgid "Nyquist returned the value:"
msgstr "Nyquist аÑзиÑÑо баÑгаÑдонид:"
@@ -6070,8 +6006,7 @@ msgstr " - РоÑÑ"
msgid "Mixer Panel"
msgstr ""
-#: export/Export.cpp:939
-#: export/Export.cpp:993
+#: export/Export.cpp:939 export/Export.cpp:993
#, c-format
msgid "Output Channels: %2d"
msgstr "Шабакаҳои бÑÑÑнӣ: %2d"
@@ -6101,8 +6036,7 @@ msgstr ""
msgid "(external program)"
msgstr "(баÑномаи беÑÑнӣ)"
-#: export/ExportCL.cpp:116
-#: export/ExportPCM.cpp:90
+#: export/ExportCL.cpp:116 export/ExportPCM.cpp:90
#, c-format
msgid "Cannot export audio to %s"
msgstr "ÐÑдиоÑо Ð´Ð°Ñ %s воÑид каÑда намеÑавонад"
@@ -6119,9 +6053,21 @@ msgstr "ÐоÑиди Ñамоми лоиҳа бо иÑÑиÑодаи Ñ
аÑҳо
msgid "Command Output"
msgstr "ÐÑÑÑнÑозии ÑаÑмонҳо"
-#: export/ExportFFmpeg.cpp:59
+#: export/ExportFFmpeg.cpp:61
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
#: export/ExportFFmpeg.cpp:394
@@ -6189,6 +6135,10 @@ msgstr ""
msgid "AAC Export Setup"
msgstr ""
+#: export/ExportOGG.cpp:227
+msgid "Quality:"
+msgstr "СиÑаÑ:"
+
#: export/ExportFFmpegDialogs.cpp:217
msgid "Specify AMR-NB Options"
msgstr ""
@@ -6322,12 +6272,8 @@ msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n
"Recommended - 192000"
msgstr ""
-#: export/ExportOGG.cpp:227
-msgid "Quality:"
-msgstr "СиÑаÑ:"
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid "Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
@@ -6346,10 +6292,10 @@ msgstr ""
msgid "Cutoff Bandwidth:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:947
+#: export/ExportFFmpegDialogs.cpp:936
msgid "Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:949
@@ -6538,12 +6484,12 @@ msgstr ""
msgid "AC3 Files (FFmpeg)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:56
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:57
@@ -6654,6 +6600,17 @@ msgstr "ÐмиÒии биÑ:"
msgid "FLAC Files"
msgstr "Файлҳои FLAC"
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
#: export/ExportFLAC.cpp:134
msgid "Exporting the selected audio as FLAC"
msgstr "ÐÑÑÑди аÑдиоҳои инÑиÑ
обÑÑда ба монанди FLAC"
@@ -6678,20 +6635,16 @@ msgstr "Файлҳои MP2"
msgid "Cannot export MP2 with this sample rate and bit rate"
msgstr "MP2 бо андозаи ин намÑна ва андозаи Ð±Ð¸Ñ Ð²ÑÑÑд каÑда намеÑавад"
-#: export/ExportMP2.cpp:102
-#: export/ExportMP3.cpp:1249
-#: export/ExportOGG.cpp:53
+#: export/ExportMP2.cpp:102 export/ExportMP3.cpp:1249 export/ExportOGG.cpp:53
msgid "Unable to open target file for writing"
msgstr "ТеÒаи ÑайлÑо баÑои ÑÐ°Ð±Ñ ÐºÑÑода намеÑавонад"
-#: export/ExportMP2.cpp:132
-#: export/ExportMP3.cpp:1337
+#: export/ExportMP2.cpp:132 export/ExportMP3.cpp:1337
#, c-format
msgid "Exporting selected audio at %d kbps"
msgstr "ÐÑÑÑди аÑдиоҳои инÑиÑ
обÑÑда Ð´Ð°Ñ %d kbps"
-#: export/ExportMP2.cpp:133
-#: export/ExportMP3.cpp:1338
+#: export/ExportMP2.cpp:133 export/ExportMP3.cpp:1338
#, c-format
msgid "Exporting entire file at %d kbps"
msgstr "ÐÑÑÑди Ñамоми Ñайл Ð´Ð°Ñ %d kbps"
@@ -6724,8 +6677,7 @@ msgstr ""
msgid "Extreme"
msgstr ""
-#: effects/ClickRemoval.cpp:379
-#: effects/ClickRemoval.cpp:408
+#: effects/ClickRemoval.cpp:379 effects/ClickRemoval.cpp:408
msgid "Medium"
msgstr "ÐÑҳиÑ"
@@ -6733,8 +6685,7 @@ msgstr "ÐÑҳиÑ"
msgid "Specify MP3 Options"
msgstr "ÐÑайÑнкÑнии ÒиÑмаÑҳои MP3"
-#: export/ExportMP3.cpp:1431
-#: prefs/FileFormatPrefs.cpp:101
+#: export/ExportMP3.cpp:1431 prefs/FileFormatPrefs.cpp:101
msgid "MP3 Export Setup"
msgstr "ÐаÑби вÑÑÑдии MP3"
@@ -6758,8 +6709,7 @@ msgstr "ÐиÑна"
msgid "Constant"
msgstr "Ðоимӣ"
-#: prefs/QualityPrefs.cpp:42
-#: prefs/QualityPrefs.cpp:43
+#: prefs/QualityPrefs.cpp:42 prefs/QualityPrefs.cpp:43
msgid "Quality"
msgstr "СиÑаÑ"
@@ -6878,10 +6828,8 @@ msgstr ""
msgid "MP3 export library not found"
msgstr ""
-#: export/ExportMultiple.cpp:88
-#: export/ExportMultiple.cpp:371
-#: export/ExportMultiple.cpp:620
-#: export/ExportMultiple.cpp:728
+#: export/ExportMultiple.cpp:88 export/ExportMultiple.cpp:371
+#: export/ExportMultiple.cpp:620 export/ExportMultiple.cpp:728
msgid "Export Multiple"
msgstr "ÐÑÑÑди биÑÑÑкаÑаÑа"
@@ -6914,11 +6862,6 @@ msgstr "ÒиÑмаÑҳо..."
msgid "Export location:"
msgstr "ÐавÒеи вÑÑÑд:"
-#: export/ExportMultiple.cpp:203
-#: prefs/DirectoriesPrefs.cpp:92
-msgid "Choose..."
-msgstr "ÐнÑиÑ
оби..."
-
#: export/ExportMultiple.cpp:204
msgid "Create"
msgstr "СоÑ
Ñан"
@@ -6943,10 +6886,6 @@ msgstr "Ðоми Ñайли ÑкÑм:"
msgid "First file name"
msgstr ""
-#: export/ExportMultiple.cpp:246
-msgid "Tracks"
-msgstr "РоҳÑаҳо"
-
#: export/ExportMultiple.cpp:253
msgid "Name files:"
msgstr "Ðоми Ñайлҳо:"
@@ -6980,6 +6919,35 @@ msgstr "\"%s\" бомÑваÑÑаÒиÑÑ ÑоÑ
Ñа ÑÑд."
msgid "Choose a location to save the exported files"
msgstr "ÐаÑои вÑÑÑдÑозии Ñайлҳо мавÒеи онҳÑо инÑиÑ
об кÑнед"
+#: export/ExportMultiple.cpp:524
+#, c-format
+msgid "Successfully exported the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:527
+#, c-format
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr ""
+
#: export/ExportMultiple.cpp:491
#, c-format
msgid "\"%s\" doesn't exist.\n"
@@ -6993,18 +6961,6 @@ msgstr "\"%s\" вÑÒ·Ñд надоÑад.\n"
msgid "Edit metadata"
msgstr ""
-#: export/ExportMultiple.cpp:617
-#: export/ExportMultiple.cpp:725
-#, c-format
-msgid "Successfully exported %d file(s)."
-msgstr "%d Ñайл(ҳо) .бомÑваÑÑаÒиÑÑ Ð²ÑÑÑд ÑÑд."
-
-#: export/ExportMultiple.cpp:618
-#: export/ExportMultiple.cpp:726
-#, c-format
-msgid "Something went wrong after exporting %d file(s)."
-msgstr "ÐаÑди вÑÑÑди %d Ñайл(ҳо) Ñ
аÑо ÑÐ¾Ð´Ð¸Ñ ÑÑд."
-
#: export/ExportMultiple.cpp:881
#, c-format
msgid "Label %s is not a legal file name. You cannot use any of: %s\n"
@@ -7083,7 +7039,6 @@ msgstr ""
#. i18n-hint: %s will be the error message from libsndfile
#: export/ExportPCM.cpp:531
-#, c-format
#, fuzzy
msgid "Error (file may not have been written): %s"
msgstr "ХаÑо (Ñайл ÑÐ°Ð±Ñ Ð½Ð°Ð¼ÐµÑавад): %hs"
@@ -7249,8 +7204,11 @@ msgstr ""
msgid "FLAC files"
msgstr ""
-#: import/ImportLOF.cpp:172
-#: import/ImportLOF.cpp:222
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr ""
+
+#: import/ImportLOF.cpp:172 import/ImportLOF.cpp:222
msgid "List of Files in basic text format"
msgstr "РӯйÑ
аÑи Ñайлҳо Ð´Ð°Ñ Òолаби маÑнии мÑÒаÑÑаÑÓ£"
@@ -7260,9 +7218,7 @@ msgid "Invalid window offset in LOF file."
msgstr "Ò¶ÑдокÑнии Ñавзана Ð´Ð°Ñ Ñайли LOF Ñ
аÑоб аÑÑ."
#. i18n-hint: You do not need to translate "LOF"
-#: import/ImportLOF.cpp:321
-#: import/ImportLOF.cpp:342
-#: import/ImportLOF.cpp:414
+#: import/ImportLOF.cpp:321 import/ImportLOF.cpp:342 import/ImportLOF.cpp:414
#: import/ImportLOF.cpp:434
msgid "LOF Error"
msgstr "ХаÑои LOF"
@@ -7409,36 +7365,41 @@ msgstr ""
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr ""
-#: prefs/AudioIOPrefs.cpp:41
-#: prefs/AudioIOPrefs.cpp:42
-msgid "Audio I/O"
-msgstr "ÐÑдио I/O"
+#: prefs/BatchPrefs.cpp:53 prefs/BatchPrefs.cpp:54
+msgid "Batch"
+msgstr "ÐаÑÑа"
-#: prefs/AudioIOPrefs.cpp:100
-msgid "1 (Mono)"
-msgstr "1 (Ðоно)"
+#: prefs/BatchPrefs.cpp:75 prefs/GUIPrefs.cpp:70
+msgid "Behaviors"
+msgstr "РаÑÑоÑ"
-#: prefs/AudioIOPrefs.cpp:101
-msgid "2 (Stereo)"
-msgstr "2 (СÑеÑео)"
+#: prefs/BatchPrefs.cpp:80
+msgid "&Don't apply effects in batch mode"
+msgstr ""
-#: prefs/AudioIOPrefs.cpp:115
-msgid "Playback"
-msgstr "ÐозигаÑ"
+#: prefs/BatchPrefs.cpp:83
+msgid "Cl&eanSpeech Mode (Customized GUI)"
+msgstr "ҲолаÑи Cl&eanSpeech (маÑ
ÑÑÑгаÑдонидаÑÑда GUI)"
-#: prefs/AudioIOPrefs.cpp:119
-#: prefs/AudioIOPrefs.cpp:137
-#: toolbars/DeviceToolBar.cpp:54
-msgid "Device"
-msgstr "ÐÑзоÑ"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:33 prefs/GUIPrefs.cpp:34
+msgid "Interface"
+msgstr "РобиÑа"
+
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
+msgstr ""
#: prefs/AudioIOPrefs.cpp:122
msgid "Using:"
msgstr "ÐÑÑиÑодаи:"
-#: prefs/AudioIOPrefs.cpp:123
-msgid "Portaudio v"
-msgstr "Ðойгоҳи аÑдиоии v"
+#: prefs/AudioIOPrefs.cpp:115
+msgid "Playback"
+msgstr "ÐозигаÑ"
#: prefs/AudioIOPrefs.cpp:133
msgid "Recording"
@@ -7448,96 +7409,15 @@ msgstr "СабÑÑавӣ"
msgid "Channels"
msgstr "Шабакаҳо"
-#: prefs/AudioIOPrefs.cpp:145
-msgid "Playthrough"
-msgstr "ÐÒ·ÑогаÑи ÑбÑÑÓ£"
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:154
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:194
-msgid "Effects Preview"
-msgstr "ÐеÑнамоиÑи наÑиҷаҳо"
-
-#: prefs/AudioIOPrefs.cpp:171
-msgid "Length of preview:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:158
-msgid "Cut Preview"
-msgstr "ÐÑÑиÑи пеÑнамоиÑ"
-
-#: prefs/AudioIOPrefs.cpp:179
-msgid "Preview before cut region:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:181
-msgid "Preview after cut region:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:168
-msgid "Latency"
-msgstr "ТаваÒÒÑÑ"
-
-#: prefs/AudioIOPrefs.cpp:195
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:198
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:203
-msgid "Seek Time when playing"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:187
-msgid "Short period:"
-msgstr "ÐаÑҳилаи кӯÑоҳ:"
-
-#: prefs/AudioIOPrefs.cpp:189
-msgid "Long period:"
-msgstr "ÐаÑҳилаи даÑоз:"
-
-#: prefs/BatchPrefs.cpp:53
-#: prefs/BatchPrefs.cpp:54
-msgid "Batch"
-msgstr "ÐаÑÑа"
-
-#: prefs/BatchPrefs.cpp:75
-#: prefs/GUIPrefs.cpp:70
-msgid "Behaviors"
-msgstr "РаÑÑоÑ"
-
-#: prefs/BatchPrefs.cpp:80
-msgid "&Don't apply effects in batch mode"
-msgstr ""
+#: prefs/AudioIOPrefs.cpp:100
+msgid "1 (Mono)"
+msgstr "1 (Ðоно)"
-#: prefs/BatchPrefs.cpp:83
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr "ҲолаÑи Cl&eanSpeech (маÑ
ÑÑÑгаÑдонидаÑÑда GUI)"
+#: prefs/AudioIOPrefs.cpp:101
+msgid "2 (Stereo)"
+msgstr "2 (СÑеÑео)"
-#: prefs/DirectoriesPrefs.cpp:55
-#: prefs/DirectoriesPrefs.cpp:56
+#: prefs/DirectoriesPrefs.cpp:55 prefs/DirectoriesPrefs.cpp:56
#: prefs/PrefsDialog.cpp:276
msgid "Directories"
msgstr "РӯйÑ
аÑҳо"
@@ -7554,34 +7434,31 @@ msgstr "ÐавÒеÑ:"
msgid "Free Space:"
msgstr "Фазои Ñ
олӣ:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr "Ð¥ÑдÑабÑкÑнӣ"
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr "Ð¥ÑдÑабÑкÑнии нÑÑÑ
аи лоиҳа Ð´Ð°Ñ Ð¿Ó¯Ñаи алоҳида"
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
-msgstr ""
-
-#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
-msgstr "даÒиÒа"
-
#: prefs/DirectoriesPrefs.cpp:110
msgid "Audio cache"
msgstr "ÐÑдиокÑÑ"
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "Play and/or record using RAM (useful for slow drives)"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
#: prefs/DirectoriesPrefs.cpp:121
msgid "Choose a location to place the temporary directory"
msgstr "ÐнÑиÑ
оби ҷой баÑои ҷойкÑнии ÑӯйÑ
аÑи мÑваÒÒаÑÓ£"
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: prefs/DirectoriesPrefs.cpp:165
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -7600,226 +7477,144 @@ msgstr "РӯйÑ
аÑи %s навиÑÑа намеÑавад"
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "ТаÒиÑоÑҳо ба ÑӯйÑ
аÑи мÑваÒÒаÑÓ£ Ñо аз навбоÑкÑнии Audacity наÑиҷагиÑÓ£ намеÑаванд"
-#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
-msgid "Import / Export"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:84
-msgid "MP3 Export Library"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:104
-msgid "MP3 Library Version:"
-msgstr "ТаÑиÒаи ÑеҳÑиÑÑи MP3:"
-
-#: prefs/FileFormatPrefs.cpp:93
-msgid "MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:98
-msgid "LAME MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
-msgid "&Download"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
+#: prefs/GUIPrefs.cpp:42
+msgid "In Browser"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
+#: prefs/GUIPrefs.cpp:43
+msgid "From Internet"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:136
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:137
-msgid "When importing audio files"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:140
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:141
-msgid "&Read uncompressed audio files directly from the original (faster)"
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:143
-msgid "&Normalize all tracks in project"
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:84
-msgid "When saving a project that depends on other audio files"
-msgstr "СабÑи лоиҳа вобаÑÑа ба Ð´Ð¸Ð³Ð°Ñ Ñайлҳо"
-
-#: prefs/FileFormatPrefs.cpp:151
-msgid "Always © all audio into project (safest)"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:152
-msgid "&Do not copy any audio"
-msgstr ""
+#: prefs/GUIPrefs.cpp:111
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 dB (баÑои ÑаҳÑиÑи баланди Ð´Ð¾Ð¼Ð°Ð½Ð°Ð´Ð¾Ñ Ð¼ÑвоÑиÒÐ°Ñ Ð½Ð°Ð¼ÐµÐºÑнад)"
-#: prefs/FileFormatPrefs.cpp:87
-msgid "&Ask user"
-msgstr "&ÐÑÑÑÐ¸Ñ Ð°Ð· иÑÑиÑодабаÑандаÑ"
+#: prefs/GUIPrefs.cpp:112
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 dB (Ñоҳаи PCM аз намÑнаҳаи 8 биÑа)"
-#: prefs/FileFormatPrefs.cpp:157
-msgid "When exporting tracks to an audio file"
+#: prefs/GUIPrefs.cpp:143
+msgid "-60 dB (PCM range of 10 bit samples)"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:96
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
-msgstr "&ÐмеÑ
ÑакÑнии доимии ҳамаи ÑоҳÑаҳо ба Ñабакаҳои Stereo Ñ Mono."
+#: prefs/GUIPrefs.cpp:113
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 dB (Ñоҳаи PCM аз намÑнаҳои 16 биÑа)"
-#: prefs/FileFormatPrefs.cpp:161
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
-msgstr ""
+#: prefs/GUIPrefs.cpp:114
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 dB (Ò³ÑдÑди ÑÑнавоӣ)"
-#: prefs/FileFormatPrefs.cpp:163
-msgid "S&how Metadata Editor prior to export step"
-msgstr ""
+#: prefs/GUIPrefs.cpp:115
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB (Ñоҳаи PCM намÑнаҳои 24 биÑа)"
-#: prefs/GUIPrefs.cpp:33
-#: prefs/GUIPrefs.cpp:34
-msgid "Interface"
-msgstr "РобиÑа"
+#: prefs/SpectrumPrefs.cpp:96
+msgid "Display"
+msgstr "ÐамÑд"
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
+#: prefs/GUIPrefs.cpp:100
+msgid "Er&gonomic order of audio I/O buttons"
msgstr ""
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
msgstr ""
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
msgstr ""
-#: prefs/GUIPrefs.cpp:94
-msgid "&Update display while playing"
+#: prefs/GUIPrefs.cpp:167
+msgid "Help:"
msgstr ""
#: prefs/GUIPrefs.cpp:96
msgid "Cl&osing last window quits Audacity"
msgstr ""
-#: prefs/GUIPrefs.cpp:98
-msgid "Enable &dragging of left and right selection edges"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:100
-msgid "Er&gonomic order of audio I/O buttons"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:102
-msgid "Automatically &fit tracks vertically zoomed"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:104
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:90
-msgid "Editing a &clip can move other clips"
-msgstr "Ҳангоми &ÑаҳÑиÑи ÒиÑмаÑҳо меÑавонем Ð´Ð¸Ð³Ð°Ñ ÒиÑмаÑҳоÑо кӯÑонем"
-
-#: prefs/GUIPrefs.cpp:108
-msgid "&Select all audio in project, if none selected"
-msgstr ""
-
#: prefs/GUIPrefs.cpp:110
msgid "&Beep on completion of longer activities"
msgstr ""
-#: prefs/BatchPrefs.cpp:87
-#: prefs/GUIPrefs.cpp:94
-msgid "Show / Hide"
-msgstr "ÐÐ°Ð¼Ð¾Ð¸Ñ / Ðинҳон"
-
-#: prefs/GUIPrefs.cpp:96
-msgid "Enable cut &lines"
-msgstr "ХаÑҳоÑо бÑÑида &намеÑавонад"
-
-#: prefs/GUIPrefs.cpp:98
-msgid "Show warnings about &temp files"
-msgstr "ÐамоиÑи огоҳӣ оиди &Ñайлҳои мÑваÒÒаÑÓ£"
-
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:122
-msgid "Show &Welcome Message at program start up"
-msgstr ""
-
#: prefs/GUIPrefs.cpp:126
msgid "Modes"
msgstr ""
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
+msgstr ""
+
#: prefs/GUIPrefs.cpp:129
msgid "Don't a&pply effects in batch mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
+#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
+msgid "Import / Export"
msgstr ""
-#: prefs/GUIPrefs.cpp:111
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 dB (баÑои ÑаҳÑиÑи баланди Ð´Ð¾Ð¼Ð°Ð½Ð°Ð´Ð¾Ñ Ð¼ÑвоÑиÒÐ°Ñ Ð½Ð°Ð¼ÐµÐºÑнад)"
-
-#: prefs/GUIPrefs.cpp:112
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 dB (Ñоҳаи PCM аз намÑнаҳаи 8 биÑа)"
-
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
+#: prefs/FileFormatPrefs.cpp:137
+msgid "When importing audio files"
msgstr ""
-#: prefs/GUIPrefs.cpp:113
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 dB (Ñоҳаи PCM аз намÑнаҳои 16 биÑа)"
+#: prefs/FileFormatPrefs.cpp:140
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
+msgstr ""
-#: prefs/GUIPrefs.cpp:114
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 dB (Ò³ÑдÑди ÑÑнавоӣ)"
+#: prefs/FileFormatPrefs.cpp:141
+msgid "&Read uncompressed audio files directly from the original (faster)"
+msgstr ""
-#: prefs/GUIPrefs.cpp:115
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB (Ñоҳаи PCM намÑнаҳои 24 биÑа)"
+#: prefs/FileFormatPrefs.cpp:143
+msgid "&Normalize all tracks in project"
+msgstr ""
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
+#: prefs/FileFormatPrefs.cpp:157
+msgid "When exporting tracks to an audio file"
msgstr ""
-#: prefs/GUIPrefs.cpp:164
-msgid "Other interface choices"
+#: prefs/FileFormatPrefs.cpp:96
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+msgstr "&ÐмеÑ
ÑакÑнии доимии ҳамаи ÑоҳÑаҳо ба Ñабакаҳои Stereo Ñ Mono."
+
+#: prefs/FileFormatPrefs.cpp:161
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
msgstr ""
-#: prefs/GUIPrefs.cpp:167
-msgid "Help:"
+#: prefs/FileFormatPrefs.cpp:163
+msgid "S&how Metadata Editor prior to export step"
msgstr ""
-#: prefs/GUIPrefs.cpp:168
-msgid "Solo Button:"
+#: prefs/ImportExportPrefs.cpp:84
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
msgstr ""
-#: prefs/KeyConfigPrefs.cpp:64
-#: prefs/KeyConfigPrefs.cpp:65
+#: prefs/KeyConfigPrefs.cpp:64 prefs/KeyConfigPrefs.cpp:65
msgid "Keyboard"
msgstr "Саҳвакалид"
@@ -7843,22 +7638,26 @@ msgstr "Ðа&Ñб"
msgid "Note: Pressing Cmd+Q will quit. All other keys are valid."
msgstr "Ðзоҳ: Cmd+Q баÑои Ñ
Ð¾Ð¼Ó¯Ñ Ð½Ð°Ð¼Ñдан иÑÑиÑода бÑÑда меÑаванд. ÐÐ¸Ð³Ð°Ñ ÐºÐ°Ð»Ð¸Ð´Ò³Ð¾ иÑÑиÑоданаÑавандаанд."
-#: prefs/KeyConfigPrefs.cpp:124
-#: prefs/ThemePrefs.cpp:102
+#: prefs/KeyConfigPrefs.cpp:124 prefs/ThemePrefs.cpp:102
msgid "&Defaults"
msgstr "&Ðз Ñӯи Ñ
омӯÑÓ£"
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr ""
+
#: prefs/KeyConfigPrefs.cpp:143
msgid "Key Combination"
msgstr "ТаÑкиббандии калид"
-#: prefs/KeyConfigPrefs.cpp:163
-msgid "Export Keyboard Shortcuts As:"
-msgstr "ÐÑÑÑди ÑаÑкиббандии ÑаҳÑакалид ҳамÑÑн:"
+#: prefs/KeyConfigPrefs.cpp:367 toolbars/EditToolBar.cpp:144
+msgid "Undo"
+msgstr "ÐаÑҳамдиҳӣ"
-#: prefs/KeyConfigPrefs.cpp:181
-msgid "Error saving keyboard shortcuts"
-msgstr "ХаÑои ҳангоми ÑабÑи ÑаÑкиббандии ÑаҳÑакалид"
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr ""
#: prefs/KeyConfigPrefs.cpp:196
msgid "Select an XML file containing Audacity keyboard shortcuts..."
@@ -7868,6 +7667,14 @@ msgstr "ÐнÑиÑ
оби Ñайли XML, ки доÑои ÑÑгмаҳои ÑаÑ
msgid "Error loading keyboard shortcuts"
msgstr "ХаÑо ҳангоми ÑабÑи ÑаÑкиббандии ÑаҳÑакалид"
+#: prefs/KeyConfigPrefs.cpp:163
+msgid "Export Keyboard Shortcuts As:"
+msgstr "ÐÑÑÑди ÑаÑкиббандии ÑаҳÑакалид ҳамÑÑн:"
+
+#: prefs/KeyConfigPrefs.cpp:181
+msgid "Error saving keyboard shortcuts"
+msgstr "ХаÑои ҳангоми ÑабÑи ÑаÑкиббандии ÑаҳÑакалид"
+
#: prefs/KeyConfigPrefs.cpp:241
#, c-format
msgid "The keyboard shortcut '%s' is already assigned to:\n"
@@ -7877,10 +7684,61 @@ msgstr "ТаÑкиббандии ÑаҳÑакалид аллакай баÑои
"\n"
"'%s'"
-#: prefs/KeyConfigPrefs.cpp:367
-#: toolbars/EditToolBar.cpp:144
-msgid "Undo"
-msgstr "ÐаÑҳамдиҳӣ"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:84
+msgid "MP3 Export Library"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:104
+msgid "MP3 Library Version:"
+msgstr "ТаÑиÒаи ÑеҳÑиÑÑи MP3:"
+
+#: prefs/FileFormatPrefs.cpp:93
+msgid "MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:98
+msgid "LAME MP3 Library:"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
+msgid "&Download"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:109
+msgid "FFmpeg Library Version:"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
+msgid "FFmpeg Library:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:41 prefs/AudioIOPrefs.cpp:42
+msgid "Audio I/O"
+msgstr "ÐÑдио I/O"
+
+#: prefs/AudioIOPrefs.cpp:123
+msgid "Portaudio v"
+msgstr "Ðойгоҳи аÑдиоии v"
+
+#: prefs/AudioIOPrefs.cpp:145
+msgid "Playthrough"
+msgstr "ÐÒ·ÑогаÑи ÑбÑÑÓ£"
#: prefs/AudioIOPrefs.cpp:147
msgid "&Play other tracks while recording new one"
@@ -7894,6 +7752,10 @@ msgstr "&ÐÒ·ÑогаÑи ÑбÑÑии ÑаÑ
ÑаÑÐ·Ð¾Ñ (Ñ
ониÑи ÑоҳÑ
msgid "&Software Playthrough (Play new track while recording it)"
msgstr "&ÐÒ·ÑогаÑи ÑбÑÑии наÑмаÑÐ·Ð¾Ñ (Ñ
ониÑи ÑоҳÑаи нав ҳангоми ÑабÑÑавии он)"
+#: prefs/AudioIOPrefs.cpp:158
+msgid "Cut Preview"
+msgstr "ÐÑÑиÑи пеÑнамоиÑ"
+
#: prefs/AudioIOPrefs.cpp:161
msgid "Play before cut region:"
msgstr "Ð¥Ð¾Ð½Ð¸Ñ Ð¿ÐµÑ Ð°Ð· бÑÑиÑи маҳал:"
@@ -7902,6 +7764,10 @@ msgstr "Ð¥Ð¾Ð½Ð¸Ñ Ð¿ÐµÑ Ð°Ð· бÑÑиÑи маҳал:"
msgid "Play after cut region:"
msgstr "Ð¥Ð¾Ð½Ð¸Ñ Ð±Ð°Ñд аз бÑÑиÑи маҳал:"
+#: prefs/AudioIOPrefs.cpp:168
+msgid "Latency"
+msgstr "ТаваÒÒÑÑ"
+
#: prefs/AudioIOPrefs.cpp:174
msgid "Audio to buffer:"
msgstr "ÐÑдио ба миÑнгиÑ:"
@@ -7914,12 +7780,23 @@ msgstr "ТаваÒкÑÑи иÑлоҳкÑнӣ:"
msgid "Seek Time"
msgstr "Ò¶ÑÑÑÑҷӯи ваÒÑ"
+#: prefs/AudioIOPrefs.cpp:187
+msgid "Short period:"
+msgstr "ÐаÑҳилаи кӯÑоҳ:"
+
+#: prefs/AudioIOPrefs.cpp:189
+msgid "Long period:"
+msgstr "ÐаÑҳилаи даÑоз:"
+
+#: prefs/AudioIOPrefs.cpp:194
+msgid "Effects Preview"
+msgstr "ÐеÑнамоиÑи наÑиҷаҳо"
+
#: prefs/AudioIOPrefs.cpp:197
msgid "Play when previewing:"
msgstr "Ð¥Ð¾Ð½Ð¸Ñ Ò³Ð°Ð½Ð³Ð¾Ð¼Ð¸ пеÑнамоиÑ:"
-#: prefs/MousePrefs.cpp:55
-#: prefs/MousePrefs.cpp:56
+#: prefs/MousePrefs.cpp:55 prefs/MousePrefs.cpp:56
msgid "Mouse"
msgstr "ÐÑÑ"
@@ -7939,35 +7816,25 @@ msgstr "ФаÑмони иҷÑо"
msgid "Buttons"
msgstr "ТÑгмаҳо"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:102
-#: prefs/MousePrefs.cpp:113
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:102 prefs/MousePrefs.cpp:113
#: prefs/MousePrefs.cpp:118
msgid "Left-Click"
msgstr "ÐаÑ
Ñи Ñап"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:100
msgid "Select"
msgstr "Ò¶ÑдокÑнӣ"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:118
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:118
msgid "Set Selection Point"
msgstr "ÐаÑби нÑÒÑаи Ò·ÑдокÑнӣ"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:103
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:115
-#: prefs/MousePrefs.cpp:119
+#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:103 prefs/MousePrefs.cpp:107
+#: prefs/MousePrefs.cpp:111 prefs/MousePrefs.cpp:115 prefs/MousePrefs.cpp:119
msgid "Left-Drag"
msgstr "ТÑгмаи Ñап -каÑидаÑавӣ "
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:119
+#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:119
msgid "Set Selection Range"
msgstr "ÐнÑиÑ
оби наÑби Ñоҳа"
@@ -7995,9 +7862,7 @@ msgstr ""
msgid "Set Selection Point and Play"
msgstr ""
-#: prefs/MousePrefs.cpp:102
-#: prefs/MousePrefs.cpp:103
-#: prefs/MousePrefs.cpp:104
+#: prefs/MousePrefs.cpp:102 prefs/MousePrefs.cpp:103 prefs/MousePrefs.cpp:104
#: prefs/MousePrefs.cpp:105
msgid "Zoom"
msgstr "ÐалонкÑнӣ"
@@ -8006,9 +7871,7 @@ msgstr "ÐалонкÑнӣ"
msgid "Zoom in on Point"
msgstr "ÐаздиккÑнӣ бо нÑÒÑа"
-#: prefs/MousePrefs.cpp:103
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:121
+#: prefs/MousePrefs.cpp:103 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:121
msgid "Zoom in on a Range"
msgstr "ÐаздиккÑнӣ Ð´Ð°Ñ Ñоҳа"
@@ -8016,18 +7879,15 @@ msgstr "ÐаздиккÑнӣ Ð´Ð°Ñ Ñоҳа"
msgid "same as right-drag"
msgstr "ҳамон Ñк каÑиÑи ÑоÑÑ"
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:120
msgid "Right-Click"
msgstr "ÐаÑ
Ñи ÑоÑÑ"
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:120
msgid "Zoom out one step"
msgstr "ÐÑÑкÑнӣ бо Ñк Òадам"
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:121
+#: prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:121
msgid "Right-Drag"
msgstr "ÐаÑиÑи ÑоÑÑ"
@@ -8063,8 +7923,7 @@ msgstr "Shift-Left-каÑиÑ"
msgid "Time shift all clips in track"
msgstr "ÐаÒÑи ÑаконÑ
Ó¯Ñии ҳамаи ÒиÑмаÑҳои ÑоҳÑа"
-#: prefs/MousePrefs.cpp:109
-#: prefs/MousePrefs.cpp:116
+#: prefs/MousePrefs.cpp:109 prefs/MousePrefs.cpp:116
msgid "Ctrl-Left-Drag"
msgstr "Ctrl-Left-ÐаÑиÑ"
@@ -8080,9 +7939,7 @@ msgstr "ТаÒиÑдиҳии ҳаÑакаÑи ÒаÑÑÑÓ£"
msgid "Change Sample"
msgstr "ТаÒиÑдиҳии намÑна"
-#: prefs/MousePrefs.cpp:113
-#: prefs/MousePrefs.cpp:114
-#: prefs/MousePrefs.cpp:115
+#: prefs/MousePrefs.cpp:113 prefs/MousePrefs.cpp:114 prefs/MousePrefs.cpp:115
#: prefs/MousePrefs.cpp:116
msgid "Pencil"
msgstr "Òалам"
@@ -8103,25 +7960,20 @@ msgstr "ÐвазкÑнии ÑкÑанд намÑна"
msgid "Change ONE Sample only"
msgstr "ÐвазкÑнии Ñанҳо ЯРнамÑна"
-#: prefs/MousePrefs.cpp:118
-#: prefs/MousePrefs.cpp:119
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:118 prefs/MousePrefs.cpp:119 prefs/MousePrefs.cpp:120
#: prefs/MousePrefs.cpp:121
msgid "Multi"
msgstr "ÐиÑÑÑ"
-#: prefs/MousePrefs.cpp:118
-#: prefs/MousePrefs.cpp:119
+#: prefs/MousePrefs.cpp:118 prefs/MousePrefs.cpp:119
msgid "same as select tool"
msgstr "ҳамон Ñк каÑиÑи Ñап"
-#: prefs/MousePrefs.cpp:120
-#: prefs/MousePrefs.cpp:121
+#: prefs/MousePrefs.cpp:120 prefs/MousePrefs.cpp:121
msgid "same as zoom tool"
msgstr "ҳамон Ñк каÑиÑи Ñап"
-#: prefs/MousePrefs.cpp:123
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:123 prefs/MousePrefs.cpp:124
msgid "Any"
msgstr "Ҳама"
@@ -8149,10 +8001,62 @@ msgstr "Ctrl-гаÑÐ´Ð¸Ñ Ð±Ð° воÑиÑаи ÑаÑÑ
"
msgid "Zoom in or out"
msgstr "ÐалонкÑнии намÑд"
+#: prefs/AudioIOPrefs.cpp:171
+msgid "Length of preview:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:179
+msgid "Preview before cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:181
+msgid "Preview after cut region:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:203
+msgid "Seek Time when playing"
+msgstr ""
+
#: prefs/PrefsDialog.cpp:97
msgid "Audacity Preferences"
msgstr "ÒиÑмаÑҳои Audacity"
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:84
+msgid "When saving a project that depends on other audio files"
+msgstr "СабÑи лоиҳа вобаÑÑа ба Ð´Ð¸Ð³Ð°Ñ Ñайлҳо"
+
+#: prefs/FileFormatPrefs.cpp:151
+msgid "Always © all audio into project (safest)"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:152
+msgid "&Do not copy any audio"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:87
+msgid "&Ask user"
+msgstr "&ÐÑÑÑÐ¸Ñ Ð°Ð· иÑÑиÑодабаÑандаÑ"
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr "Ð¥ÑдÑабÑкÑнӣ"
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr "Ð¥ÑдÑабÑкÑнии нÑÑÑ
аи лоиҳа Ð´Ð°Ñ Ð¿Ó¯Ñаи алоҳида"
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr "даÒиÒа"
+
#: prefs/QualityPrefs.cpp:73
msgid "Rectangle"
msgstr "РоÑÑкÑнҷа"
@@ -8177,44 +8081,45 @@ msgstr "ÐаÑомади намÑна аз Ñӯи пеÑÑаÑз:"
msgid "Default Sample Format:"
msgstr "Òолаби намÑна аз Ñӯи Ñ
омÑÑÓ£:"
-#: prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "Табдилдиҳии баÑомади намÑна:"
-
-#: prefs/QualityPrefs.cpp:139
-msgid "High-quality sample rate converter:"
-msgstr "Табдилдиҳии баландÑиÑаÑи намÑна:"
-
-#: prefs/QualityPrefs.cpp:142
-msgid "Real-time dither:"
-msgstr "ҲамвоÑкÑнӣ Ð´Ð°Ñ Ð°Ð¹Ð½Ð¸ замон:"
-
-#: prefs/QualityPrefs.cpp:145
-msgid "High-quality dither:"
-msgstr "ҲамвоÑкÑнӣ бо ÑиÑаÑи баланд:"
-
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
-msgstr "Табдилдиҳӣ"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+#, fuzzy
+msgid "Sample Rate Converter:"
msgstr "Табдилдиҳии баÑомади намÑна"
#: prefs/QualityPrefs.cpp:164
msgid "Dither"
msgstr "ÐмезиÑ"
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
-msgstr "ÐÐ°Ñ Ð°Ð¹Ð½Ð¸ замон:"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:149
+msgid "Overdub: &Play other tracks while recording new one"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:152
+msgid "&Hardware Playthrough: Play new track while recording it"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:157
+msgid "&Software Playthrough: Play new track while recording or monitoring"
+msgstr ""
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
-msgstr "СиÑаÑи баланд:"
+#: prefs/AudioIOPrefs.cpp:160
+msgid "(uncheck when recording \"stereo mix\")"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
+msgstr ""
-#: prefs/SmartRecordPrefs.cpp:37 prefs/SmartRecordPrefs.cpp:38
-msgid "Smart Recording"
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
msgstr ""
#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
@@ -8225,23 +8130,58 @@ msgstr ""
msgid "Sound Activation Level (dB):"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:36
-#: prefs/SpectrumPrefs.cpp:37
+#: prefs/SpectrumPrefs.cpp:36 prefs/SpectrumPrefs.cpp:37
msgid "Spectrograms"
msgstr "СпекÑогÑаммаҳо"
-#: prefs/SpectrumPrefs.cpp:72
-msgid "FFT Size"
-msgstr "Ðндозаи FFT"
-
#: prefs/SpectrumPrefs.cpp:75
msgid "8 - most wideband"
msgstr "8 - беÑÑÐ°Ñ Ð¿Ð°Ò³Ð½Ð¾Ñ
аÑ"
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:80
msgid "256 - default"
msgstr "256 - аз Ñӯи Ñ
омÑÑÓ£"
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:107
msgid "32768 - most narrowband"
msgstr ""
@@ -8250,21 +8190,26 @@ msgstr ""
msgid "4096 - most narrowband"
msgstr "4096 - беÑÑÐ°Ñ ÐºÐ°Ð¼Ñ
аÑ"
-#: prefs/SpectrumPrefs.cpp:90
-msgid "Window type:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:93
+#, fuzzy
+msgid "Window type"
msgstr "ÐамÑди Ñавзана:"
#: prefs/SpectrumPrefs.cpp:125
msgid "FFT Skip Points"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:96
-msgid "Display"
-msgstr "ÐамÑд"
-
-#: prefs/SpectrumPrefs.cpp:100
-msgid "&Grayscale"
-msgstr "&ХокиÑÑаÑиÑанг"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
+msgstr ""
#: prefs/SpectrumPrefs.cpp:103
msgid "Minimum Frequency (Hz):"
@@ -8274,16 +8219,16 @@ msgstr "ÐаÑомади камÑаÑин (Ҳз):"
msgid "Maximum Frequency (Hz):"
msgstr "ÐаÑомади беÑÑаÑин (Ҳз):"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
msgstr ""
#: prefs/SpectrumPrefs.cpp:165
@@ -8294,6 +8239,14 @@ msgstr ""
msgid "Max. Number of Notes (1..128):"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:161
+msgid "&Find Notes"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Quantize Notes"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:134
msgid "The maximum frequency must be an integer"
msgstr "ÐмкониÑÑи беÑÑаÑи баÑомад боÑд бÑзÑÑгии ÑаÒиÑÑбанда боÑад"
@@ -8310,19 +8263,71 @@ msgstr "ÐмкониÑÑи камÑаÑи баÑомад боÑд бÑзÑÑги
msgid "Minimum frequency must be at least 0 Hz"
msgstr "ÐмкониÑÑи камÑаÑи баÑомад боÑд 0 Hz боÑад"
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:226 prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
+#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:230
+msgid "The maximum number of notes must be in the range 1..128"
msgstr ""
-#: prefs/ThemePrefs.cpp:61
-#: prefs/ThemePrefs.cpp:62
+#: prefs/ThemePrefs.cpp:61 prefs/ThemePrefs.cpp:62
msgid "Theme"
msgstr "ÐавзӯÑ"
+#: prefs/ThemePrefs.cpp:123
+msgid "Info"
+msgstr "ÐÑÑилооÑ"
+
+#: prefs/ThemePrefs.cpp:91
+#, fuzzy
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr "ÐаÑÑалагÑзоÑÓ£ Ñ
ÑÑÑÑиÑÑи ÑанҷиÑÓ£ доÑад.\n"
+"\n"
+"ÐаÑои ÑаÑолÑозии он \"СабÑи мавзӯÑи ÐÑÑ\"-Ñо паÑ
Ñ ÐºÑнед,\n"
+" баÑдан \n"
+" ÑаÑвиÑҳо ва ÑангҳоÑо Ñбед ва ÑаÒÐ¸Ñ Ð´Ð¸Ò³ÐµÐ´ \n"
+"ТаÑвиÑи кÑÑии Vxx.png ÑаҳÑиÑгаÑи ÑаÑвиÑÑо ба монанди \n"
+"Gimp иÑÑиÑода мебаÑанд.\n"
+"\n"
+"ÐаÑои боÑкÑнӣ ва ивази ÑаÑвиÑҳо \"ÐоÑкÑнии мавзӯÑи кÑÑ\" -Ñо паÑ
Ñ ÐºÑнед\n"
+" ва Ñангҳо ба Audacity баÑмегаÑданд.\n"
+"\n"
+"[Танҳо Ñангҳо ва ÑÑÑÑни Ð°Ð±Ð·Ð¾Ñ Ð´Ð°Ñ ÑоҳÑаи Ð¼Ð°Ð²Ò·Ð´Ð¾Ñ ÑаÑоланд\n"
+"ҳаÑо Ð°Ð³Ð°Ñ ÑаÑвиÑи Ñайл \n"
+" Ð´Ð¸Ð³Ð°Ñ ÑаÑмҳоÑо ниÑон диҳад.]"
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#: prefs/ThemePrefs.cpp:90
msgid "Theme Cache - Images && Color"
msgstr "ÐÑÑи намÑд ва Ñанг"
@@ -8351,101 +8356,95 @@ msgstr "СабÑи Ñайлҳо"
msgid "Load Files"
msgstr "ÐÐ¾Ñ ÐºÐ°Ñдани Ñайлҳо"
-#: prefs/ThemePrefs.cpp:123
-msgid "Info"
-msgstr "ÐÑÑилооÑ"
+#: prefs/GUIPrefs.cpp:50
+msgid "Simple"
+msgstr ""
-#: prefs/ThemePrefs.cpp:126
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
-msgstr "ÐаÑÑалагÑзоÑÓ£ Ñ
ÑÑÑÑиÑÑи ÑанҷиÑÓ£ доÑад.\n"
-"\n"
-"ÐаÑои ÑаÑолÑозии он \"СабÑи мавзӯÑи ÐÑÑ\"-Ñо паÑ
Ñ ÐºÑнед,\n"
-" баÑдан \n"
-" ÑаÑвиÑҳо ва ÑангҳоÑо Ñбед ва ÑаÒÐ¸Ñ Ð´Ð¸Ò³ÐµÐ´ \n"
-"ТаÑвиÑи кÑÑии Vxx.png ÑаҳÑиÑгаÑи ÑаÑвиÑÑо ба монанди \n"
-"Gimp иÑÑиÑода мебаÑанд.\n"
-"\n"
-"ÐаÑои боÑкÑнӣ ва ивази ÑаÑвиÑҳо \"ÐоÑкÑнии мавзӯÑи кÑÑ\" -Ñо паÑ
Ñ ÐºÑнед\n"
-" ва Ñангҳо ба Audacity баÑмегаÑданд.\n"
-"\n"
-"[Танҳо Ñангҳо ва ÑÑÑÑни Ð°Ð±Ð·Ð¾Ñ Ð´Ð°Ñ ÑоҳÑаи Ð¼Ð°Ð²Ò·Ð´Ð¾Ñ ÑаÑоланд\n"
-"ҳаÑо Ð°Ð³Ð°Ñ ÑаÑвиÑи Ñайл \n"
-" Ð´Ð¸Ð³Ð°Ñ ÑаÑмҳоÑо ниÑон диҳад.]\n"
-
-#: prefs/ThemePrefs.cpp:131
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
-msgstr "ШÑмо Audacity-Ñо бо ÑÑгмаи доÑ
илӣ ҳамгаÑдонӣ намÑдед, \n"
-"'Output Sourcery'. Ðн ÑаÑиÒаи C-и ÑаÑвиÑÑо\n"
-"ки аз Ñӯи Ñ
омӯÑÓ£ ҳамгаÑдонӣ меÑавад, ÑÐ°Ð±Ñ Ð¼ÐµÐºÑнад.\n"
-
-#: prefs/ThemePrefs.cpp:136
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
-msgstr "ÐÐ³Ð°Ñ Ð±Ð¾ÑкÑнии мавзӯÑи кÑÑ Ð´Ð°Ñ Ð½Ð°Ñб Ñанҷида ÑÑдааÑÑ, баÑдан\n"
-"мавзӯÑи кÑÑ Ò³Ð°Ð½Ð³Ð¾Ð¼Ð¸ ибÑидои коÑи баÑнома аз нав\n"
-" Ð±Ð¾Ñ Ð¼ÐµÑавад\n"
-"\n"
+#: prefs/GUIPrefs.cpp:94
+msgid "&Update display while playing"
+msgstr ""
-#: prefs/ThemePrefs.cpp:139
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
-msgstr "Ð¡Ð°Ð±Ñ Ð²Ð° боÑкÑнии мавзӯÑҳои инÑиÑ
обÑÑда \n"
-"Ñайли алоҳидаÑо баÑои Ò³Ð°Ñ Ñк намÑд иÑÑиÑода мебаÑанд, аммо аз Ð´Ð¸Ð³Ð°Ñ ÑаÑаÑ\n"
-"Ò³Ð°Ð´Ð°Ñ Ò³Ð°Ð¼Ð¾Ð½ аÑÑ.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:102
+msgid "Automatically &fit tracks vertically zoomed"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:175
-msgid "Pause"
-msgstr "ТаваÒÒÑÑ"
+#: prefs/TracksPrefs.cpp:88
+msgid "Default View Mode:"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play"
-msgstr "ÐÒ·Ñо"
+#: prefs/GUIPrefs.cpp:108
+msgid "&Select all audio in project, if none selected"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
+#: prefs/GUIPrefs.cpp:96
+msgid "Enable cut &lines"
+msgstr "ХаÑҳоÑо бÑÑида &намеÑавонад"
+
+#: prefs/GUIPrefs.cpp:98
+msgid "Enable &dragging of left and right selection edges"
msgstr ""
-#: toolbars/ControlToolBar.cpp:183
-msgid "Stop"
-msgstr "ÐанÑ"
+#: prefs/GUIPrefs.cpp:104
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:186
-msgid "Skip to Start"
-msgstr "ÐÑзаÑÐ¸Ñ Ð±Ð° ибÑидо"
+#: prefs/GUIPrefs.cpp:90
+msgid "Editing a &clip can move other clips"
+msgstr "Ҳангоми &ÑаҳÑиÑи ÒиÑмаÑҳо меÑавонем Ð´Ð¸Ð³Ð°Ñ ÒиÑмаÑҳоÑо кӯÑонем"
-#: toolbars/ControlToolBar.cpp:189
-msgid "Skip to End"
-msgstr "ÐÑзаÑÐ¸Ñ Ð±Ð° инÑиҳо"
+#: prefs/GUIPrefs.cpp:168
+msgid "Solo Button:"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:192
-msgid "Record (Shift for Append Record)"
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
msgstr ""
+#: Menus.cpp:816
+msgid "Pause"
+msgstr "ТаваÒÒÑÑ"
+
+#: Menus.cpp:815
+msgid "Stop"
+msgstr "ÐоздоÑÓ£"
+
#: toolbars/ControlToolBar.cpp:195
msgid "Clean Speech"
msgstr "ТозакÑнии нÑÑÒ"
-#: toolbars/ControlToolBar.cpp:528
-#: toolbars/ControlToolBar.cpp:815
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play (Shift for Loop Play)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:192
+msgid "Record (Shift for Append Record)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:528 toolbars/ControlToolBar.cpp:815
msgid "Error while opening sound device. "
msgstr "ХаÑо ҳангоми кÑÑодани аÑзоÑи Ñадо. "
@@ -8457,13 +8456,11 @@ msgstr ""
msgid "Recording not permitted"
msgstr "Ð¡Ð°Ð±Ñ Ð¸Ò·Ð¾Ð·Ð°Ñ Ð½Ð°ÑÑдааÑÑ"
-#: toolbars/DeviceToolBar.cpp:113
-#: toolbars/DeviceToolBar.cpp:115
+#: toolbars/DeviceToolBar.cpp:113 toolbars/DeviceToolBar.cpp:115
msgid "Output Device"
msgstr "ÐÑзоÑи бÑÑÑнӣ"
-#: toolbars/DeviceToolBar.cpp:134
-#: toolbars/DeviceToolBar.cpp:136
+#: toolbars/DeviceToolBar.cpp:134 toolbars/DeviceToolBar.cpp:136
msgid "Input Device"
msgstr "ÐÑзоÑи вÑÑÑдӣ"
@@ -8487,29 +8484,21 @@ msgstr "ÐалонкÑнӣ"
msgid "Zoom Out"
msgstr "Ð¥ÑÑдкÑнӣ"
-#: toolbars/EditToolBar.cpp:156
-msgid "Zoom Toggle"
-msgstr "ÐаÑеÑкÑнӣ"
-
-#: toolbars/EditToolBar.cpp:160
-msgid "Fit Selection"
-msgstr "ÐÑÑÑакÑнии инÑиÑ
об"
-
#: toolbars/EditToolBar.cpp:160
msgid "Fit selection in window"
msgstr "ÐÑÑÑакÑнии инÑиÑ
об Ð´Ð°Ñ Ñавзана"
#: toolbars/EditToolBar.cpp:162
-msgid "Fit Project"
-msgstr "ÐÑÑÑакÑнии лоиҳа"
-
-#: toolbars/EditToolBar.cpp:162
msgid "Fit project in window"
msgstr "ÐÑÑÑакÑнии лоиҳа Ð´Ð°Ñ Ñавзана"
-#: toolbars/MeterToolBar.cpp:49
-msgid "Meter"
-msgstr "маÑÑаÑÑанҷ"
+#: toolbars/EditToolBar.cpp:160
+msgid "Fit Selection"
+msgstr "ÐÑÑÑакÑнии инÑиÑ
об"
+
+#: toolbars/EditToolBar.cpp:162
+msgid "Fit Project"
+msgstr "ÐÑÑÑакÑнии лоиҳа"
#: toolbars/MeterToolBar.cpp:79
msgid "Play Meter"
@@ -8557,24 +8546,28 @@ msgstr "ÐоÑидкÑнии намоиÑ"
msgid "Input Source"
msgstr "ÐанбаÑи воÑид"
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:76
msgid "Selection"
msgstr "ÐнÑиÑ
обкÑнӣ"
-#: toolbars/SelectionBar.cpp:116
-#: toolbars/SelectionBar.cpp:169
+#: toolbars/SelectionBar.cpp:116 toolbars/SelectionBar.cpp:169
msgid "Project Rate (Hz):"
msgstr "СÑÑÑаÑи лоиҳа (Hz):"
-#: toolbars/SelectionBar.cpp:121
-#: toolbars/SelectionBar.cpp:213
+#: toolbars/SelectionBar.cpp:121 toolbars/SelectionBar.cpp:213
msgid "Selection Start:"
msgstr "ÐбÑидои инÑиÑ
об:"
-#: effects/ToneGen.cpp:296
-#: effects/ToneGen.cpp:334
-#: toolbars/SelectionBar.cpp:136
-#: toolbars/SelectionBar.cpp:227
+#: effects/ToneGen.cpp:296 effects/ToneGen.cpp:334
+#: toolbars/SelectionBar.cpp:136 toolbars/SelectionBar.cpp:227
msgid "Length"
msgstr "ÐаÑозӣ"
@@ -8582,8 +8575,7 @@ msgstr "ÐаÑозӣ"
msgid "hidden"
msgstr "пинҳон"
-#: toolbars/SelectionBar.cpp:156
-#: toolbars/SelectionBar.cpp:241
+#: toolbars/SelectionBar.cpp:156 toolbars/SelectionBar.cpp:241
msgid "Audio Position:"
msgstr "ÐавÒеи аÑдио:"
@@ -8608,8 +8600,7 @@ msgstr "ÐнÑиҳои инÑиÑ
об"
msgid "Audacity %s ToolBar"
msgstr "Таблои %s Audacity"
-#: toolbars/ToolDock.cpp:74
-#: toolbars/ToolDock.cpp:75
+#: toolbars/ToolDock.cpp:74 toolbars/ToolDock.cpp:75
msgid "ToolDock"
msgstr "ÐÑзоÑ"
@@ -8641,34 +8632,6 @@ msgstr "Left=наздиккÑнӣ, Right=дÑÑкÑнӣ, Middle=мÑÒÒаÑаÑ
msgid "Click and drag to move a track in time"
msgstr "ÐаÑои ҷойивазкÑнии ÑоҳÑа паÑ
Ñ Ð²Ð° каÑиÑÑо иҷÑо кÑнед"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr "ÐбзоÑҳо"
-
-#: toolbars/ToolsToolBar.cpp:147
-#: toolbars/ToolsToolBar.cpp:182
-msgid "Selection Tool"
-msgstr "ÐнÑиÑ
оби аÑзоÑ"
-
-#: toolbars/ToolsToolBar.cpp:148
-msgid "Envelope Tool"
-msgstr "ÐиÑоÑаи абзоÑ"
-
-#: toolbars/ToolsToolBar.cpp:149
-#: toolbars/ToolsToolBar.cpp:183
-msgid "Time Shift Tool"
-msgstr "ÐÑбоби идоÑакÑнии ваÒÑ"
-
-#: toolbars/ToolsToolBar.cpp:150
-#: toolbars/ToolsToolBar.cpp:185
-msgid "Zoom Tool"
-msgstr "ÐалокÑнии абзоÑ"
-
-#: toolbars/ToolsToolBar.cpp:151
-#: toolbars/ToolsToolBar.cpp:184
-msgid "Draw Tool"
-msgstr "ÐаÑидани абзоÑ"
-
#: toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
msgstr "ҲолаÑи биÑÑÑабзоÑÓ£"
@@ -8677,24 +8640,11 @@ msgstr "ҲолаÑи биÑÑÑабзоÑÓ£"
msgid "Slide Tool"
msgstr "ҶойгÑзоÑÓ£"
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr "ÐиÑÑÑабзоÑ"
-
-#: toolbars/TranscriptionToolBar.cpp:82
-msgid "Transcription"
-msgstr "ÐÑÒаÑ"
-
#: toolbars/TranscriptionToolBar.cpp:163
msgid "Play at selected speed"
msgstr "СÑÑÑаÑи инÑиÑ
обÑÑдаÑо инÑиÑ
об кÑнед"
-#: toolbars/TranscriptionToolBar.cpp:164
-msgid "Play-at-speed"
-msgstr "ÐÒ·Ñо Ð´Ð°Ñ ÑÑÑÑаÑ"
-
-#: toolbars/TranscriptionToolBar.cpp:170
-#: toolbars/TranscriptionToolBar.cpp:175
+#: toolbars/TranscriptionToolBar.cpp:170 toolbars/TranscriptionToolBar.cpp:175
msgid "Playback Speed"
msgstr "СÑÑÑаÑи иҷÑо"
@@ -8702,74 +8652,38 @@ msgstr "СÑÑÑаÑи иҷÑо"
msgid "Adjust left selection to next onset"
msgstr "мÑÑаÑÑабÑозии инÑиÑ
оби Ñап баÑои наÑби навбаÑÓ£"
-#: toolbars/TranscriptionToolBar.cpp:181
-msgid "Left-to-On"
-msgstr "Чапt-ба-ФаÑол"
-
#: toolbars/TranscriptionToolBar.cpp:183
msgid "Adjust right selection to previous offset"
msgstr "ÐÑÑаÑабÑозии инÑиÑ
оби ÑоÑÑ Ð±Ð°Ñои омезиÑи Òаблӣ"
-#: toolbars/TranscriptionToolBar.cpp:184
-msgid "Right-to-Off"
-msgstr "РоÑÑ-ба-ХомӯÑ"
-
#: toolbars/TranscriptionToolBar.cpp:186
msgid "Adjust left selection to next offset"
msgstr "ÐÑÑаÑабÑозии инÑиÑ
оби Ñап баÑои омезиÑи оÑнда"
-#: toolbars/TranscriptionToolBar.cpp:187
-msgid "Left-to-Off"
-msgstr "Чап-ба-ХомӯÑ"
-
#: toolbars/TranscriptionToolBar.cpp:189
msgid "Adjust right selection to previous onset"
msgstr "ÐÑÑаÑабÑозии инÑиÑ
оби ÑоÑÑ Ð±Ð°Ñои наÑби пеÑин"
-#: toolbars/TranscriptionToolBar.cpp:190
-msgid "Right-to-On"
-msgstr "РоÑÑ-ба-ФаÑол"
-
#: toolbars/TranscriptionToolBar.cpp:192
msgid "Select region of sound around cursor"
msgstr "ÐнÑиÑ
оби маҳали овози гиÑди кÑÑÑоÑ"
-#: toolbars/TranscriptionToolBar.cpp:193
-msgid "Select-Sound"
-msgstr "ÐнÑиÑ
оби-овоз"
-
#: toolbars/TranscriptionToolBar.cpp:195
msgid "Select region of silence around cursor"
msgstr "ÐнÑиÑ
оби маҳал аз Ñӯи Ñ
омӯÑÓ£ Ð´Ð°Ñ Ð³Ð¸Ñди кÑÑÑоÑ"
-#: toolbars/TranscriptionToolBar.cpp:196
-msgid "Select-Silence"
-msgstr "ÐнÑиÑ
оби Ñ
омӯÑÓ£"
-
#: toolbars/TranscriptionToolBar.cpp:198
msgid "Automatically make labels from words"
msgstr "ÐиÑонагÑзоÑии ÑавÑÓ£ аз Ñӯи калимаҳо"
-#: toolbars/TranscriptionToolBar.cpp:199
-msgid "Make Labels"
-msgstr "СоÑ
Ñани ниÑонаҳо"
-
#: toolbars/TranscriptionToolBar.cpp:201
msgid "Add label at selection"
msgstr "Ðловаи ниÑонаҳо Ð´Ð°Ñ Ò·ÑдокÑнӣ"
-#: toolbars/TranscriptionToolBar.cpp:202
-msgid "Add Label"
-msgstr "Ðловаи ниÑона"
-
#: toolbars/TranscriptionToolBar.cpp:204
msgid "Calibrate voicekey"
msgstr "ÐндозагаÑоии калиди ÑавÑÓ£"
-#: toolbars/TranscriptionToolBar.cpp:205
-msgid "Calibrate"
-msgstr "ÐндозагаÑоӣ каÑдан"
-
#: toolbars/TranscriptionToolBar.cpp:209
msgid "Adjust Sensitivity"
msgstr "ÒобилиÑÑи ҳиÑи (ÑÒ³ÑоÑ) ҳаÒиÒÓ£"
@@ -8802,6 +8716,46 @@ msgstr "ÐвазÑавии ÑÐ°Ð¼Ñ (оÑÑонаи болоӣ)"
msgid "Key type"
msgstr "ÐамÑди ÑÑгма"
+#: toolbars/TranscriptionToolBar.cpp:164
+msgid "Play-at-speed"
+msgstr "ÐÒ·Ñо Ð´Ð°Ñ ÑÑÑÑаÑ"
+
+#: toolbars/TranscriptionToolBar.cpp:181
+msgid "Left-to-On"
+msgstr "Чапt-ба-ФаÑол"
+
+#: toolbars/TranscriptionToolBar.cpp:184
+msgid "Right-to-Off"
+msgstr "РоÑÑ-ба-ХомӯÑ"
+
+#: toolbars/TranscriptionToolBar.cpp:187
+msgid "Left-to-Off"
+msgstr "Чап-ба-ХомӯÑ"
+
+#: toolbars/TranscriptionToolBar.cpp:190
+msgid "Right-to-On"
+msgstr "РоÑÑ-ба-ФаÑол"
+
+#: toolbars/TranscriptionToolBar.cpp:193
+msgid "Select-Sound"
+msgstr "ÐнÑиÑ
оби-овоз"
+
+#: toolbars/TranscriptionToolBar.cpp:196
+msgid "Select-Silence"
+msgstr "ÐнÑиÑ
оби Ñ
омӯÑÓ£"
+
+#: toolbars/TranscriptionToolBar.cpp:199
+msgid "Make Labels"
+msgstr "СоÑ
Ñани ниÑонаҳо"
+
+#: toolbars/TranscriptionToolBar.cpp:202
+msgid "Add Label"
+msgstr "Ðловаи ниÑона"
+
+#: toolbars/TranscriptionToolBar.cpp:205
+msgid "Calibrate"
+msgstr "ÐндозагаÑоӣ каÑдан"
+
#: widgets/AButton.cpp:298
msgid " (disabled)"
msgstr " (Ñ
омӯÑ)"
@@ -8816,15 +8770,13 @@ msgstr "ТÑгма"
#. i18n-hint: One-letter abbreviation for Left, in VU Meter
#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
-#: widgets/ASlider.cpp:540
-#: widgets/Meter.cpp:205
+#: widgets/ASlider.cpp:540 widgets/Meter.cpp:205
msgid "L"
msgstr "Ч"
#. i18n-hint: One-letter abbreviation for Right, in VU Meter
#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
-#: widgets/ASlider.cpp:543
-#: widgets/Meter.cpp:207
+#: widgets/ASlider.cpp:543 widgets/Meter.cpp:207
msgid "R"
msgstr "Ð "
@@ -8873,8 +8825,7 @@ msgstr "ÐонÑакÑкÑнанда"
msgid "%d rows, %d columns"
msgstr "%d ÒаÑоÑ, %d ÑÑÑÑн"
-#: widgets/Grid.cpp:622
-#: widgets/Grid.cpp:749
+#: widgets/Grid.cpp:622 widgets/Grid.cpp:749
#, c-format
msgid "Row %d"
msgstr "ÒаÑÐ¾Ñ %d"
@@ -8953,8 +8904,7 @@ msgstr ""
msgid "Cancel"
msgstr ""
-#: widgets/Ruler.cpp:1110
-#: widgets/Ruler.cpp:1111
+#: widgets/Ruler.cpp:1110 widgets/Ruler.cpp:1111
msgid "Vertical Ruler"
msgstr "ÐдоÑакÑнандаи амÑдӣ"
@@ -9112,3 +9062,15 @@ msgstr ""
msgid "Could not load file: \"%s\""
msgstr ""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
+
diff --git a/locale/tr.po b/locale/tr.po
index a9adc49..5b92bc1 100644
--- a/locale/tr.po
+++ b/locale/tr.po
@@ -4,25 +4,24 @@
#
# Aydın Demirel <aydin at kde.org.tr>, 2006.
msgid ""
-msgstr "Project-Id-Version: audacity\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-02-18 19:37+0200\n"
-"PO-Revision-Date: 2006-03-06 21:59+0200\n"
-"Last-Translator: Aydın Demirel <aydin at kde.org.tr>\n"
+msgstr ""
+"Project-Id-Version: audacity\n"
+"Report-Msgid-Bugs-To: audacity-translation at lists.sourceforge.net\n"
+"POT-Creation-Date: 2009-06-30 22:14+0100\n"
+"PO-Revision-Date: 2009-07-06 03:08-0000\n"
+"Last-Translator: g <g at g>\n"
"Language-Team: KDE Türkçe YerelleÅtirme <yerellestirme at kde.org.tr>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: KBabel 1.11.1\n"
-#: ../src/Menus.cpp:526
-msgid "&About Audacity..."
+#: AboutDialog.cpp:143
+#, fuzzy
+msgid "About Audacity..."
msgstr "&Audacity Hakkında..."
-#. i18n-hint: Rather than a literal translation, consider adding the
-#. appropriate suffix or prefix to create a word meaning 'something which
-#. has Audacity'
-#: AboutDialog.cpp:340 AboutDialog.cpp:371 SplashDialog.cpp:111
+#: AboutDialog.cpp:157
msgid "OK... Audacious!"
msgstr ""
@@ -31,11 +30,11 @@ msgid "Audacity is a free program written by a team of volunteer <a href=\"http:
msgstr ""
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#. i18n-hint: The translation of "translator_credits" will appear
@@ -44,7 +43,8 @@ msgstr ""
#.
#. For example: "English translation by Dominic Mazzoni."
#.
-#: ../src/AboutDialog.cpp:127 ../src/AboutDialog.cpp:129
+#: AboutDialog.cpp:192
+#: AboutDialog.cpp:194
msgid "translator_credits"
msgstr "çevirici_emeÄi geçenler"
@@ -52,58 +52,61 @@ msgstr "çevirici_emeÄi geçenler"
msgid "A Free Digital Audio Editor<br>"
msgstr ""
-#: ../src/AboutDialog.cpp:154
+#: AboutDialog.cpp:211
msgid "Credits"
msgstr "Tanıtma Yazıları"
-#: AboutDialog.cpp:256
+#: AboutDialog.cpp:215
#, c-format
msgid "Audacity %s Development Team"
msgstr ""
-#: AboutDialog.cpp:261
+#: AboutDialog.cpp:220
#, c-format
msgid "Audacity %s Support Team"
msgstr ""
-#: AboutDialog.cpp:266
+#: AboutDialog.cpp:225
msgid "Emeritus Developers"
msgstr ""
-#: AboutDialog.cpp:271
+#: AboutDialog.cpp:230
msgid "Other Emeritus Team Members"
msgstr ""
-#: AboutDialog.cpp:276
+#: AboutDialog.cpp:235
msgid "Other Contributors"
msgstr ""
-#: AboutDialog.cpp:281
+#: AboutDialog.cpp:240
msgid "Audacity is based on code from the following projects:"
msgstr ""
-#: ../src/AboutDialog.cpp:237
+#: AboutDialog.cpp:245
msgid "Special thanks:"
msgstr "Ãzel teÅekkürler:"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
msgstr ""
-#: AboutDialog.cpp:320
+#: AboutDialog.cpp:258
msgid "Audacity"
msgstr ""
#. i18n-hint: Information about when audacity was compiled
-#: AboutDialog.cpp:304 AboutDialog.cpp:317 AboutDialog.cpp:473
+#: AboutDialog.cpp:304
+#: AboutDialog.cpp:317
+#: AboutDialog.cpp:468
msgid "Build Information"
msgstr ""
-#: ../src/effects/AvcCompressor.cpp:652
+#: AboutDialog.cpp:310
+#: effects/AvcCompressor.cpp:674
msgid "Enabled"
msgstr "Etkin"
-#: AboutDialog.cpp:148
+#: AboutDialog.cpp:311
msgid "Disabled"
msgstr ""
@@ -112,27 +115,33 @@ msgid "File Format Support"
msgstr ""
#. i18n-hint: This is what the library (libmad) does - imports MP3 files
-#: AboutDialog.cpp:331 AboutDialog.cpp:333
+#: AboutDialog.cpp:331
+#: AboutDialog.cpp:333
msgid "MP3 Importing"
msgstr ""
-#: AboutDialog.cpp:340 AboutDialog.cpp:343
+#: AboutDialog.cpp:340
+#: AboutDialog.cpp:343
msgid "Ogg Vorbis Import and Export"
msgstr ""
-#: AboutDialog.cpp:347 AboutDialog.cpp:350
+#: AboutDialog.cpp:347
+#: AboutDialog.cpp:350
msgid "ID3 tag support"
msgstr ""
-#: AboutDialog.cpp:357 AboutDialog.cpp:360
+#: AboutDialog.cpp:357
+#: AboutDialog.cpp:360
msgid "FLAC import and export"
msgstr ""
-#: AboutDialog.cpp:365 AboutDialog.cpp:368
+#: AboutDialog.cpp:365
+#: AboutDialog.cpp:368
msgid "MP2 export"
msgstr ""
-#: AboutDialog.cpp:373 AboutDialog.cpp:376
+#: AboutDialog.cpp:373
+#: AboutDialog.cpp:376
msgid "Import via QuickTime"
msgstr ""
@@ -141,172 +150,212 @@ msgstr ""
msgid "Core Libraries"
msgstr ""
-#: AboutDialog.cpp:389 AboutDialog.cpp:392 AboutDialog.cpp:395
+#: AboutDialog.cpp:389
+#: AboutDialog.cpp:392
+#: AboutDialog.cpp:395
#: AboutDialog.cpp:397
msgid "Sample rate conversion"
msgstr ""
-#: AboutDialog.cpp:402 AboutDialog.cpp:405
+#: AboutDialog.cpp:401
msgid "Audio playback and recording"
msgstr ""
-#: AboutDialog.cpp:418
+#: AboutDialog.cpp:413
msgid "Features"
msgstr ""
-#: AboutDialog.cpp:422 AboutDialog.cpp:425 AboutDialog.cpp:430
-#: AboutDialog.cpp:433 AboutDialog.cpp:438 AboutDialog.cpp:441
-#: AboutDialog.cpp:446 AboutDialog.cpp:449
+#: AboutDialog.cpp:417
+#: AboutDialog.cpp:420
+#: AboutDialog.cpp:425
+#: AboutDialog.cpp:428
+#: AboutDialog.cpp:433
+#: AboutDialog.cpp:436
+#: AboutDialog.cpp:441
+#: AboutDialog.cpp:444
msgid "Plug-in support"
msgstr ""
-#: AboutDialog.cpp:454 AboutDialog.cpp:457
+#: AboutDialog.cpp:449
+#: AboutDialog.cpp:452
msgid "Sound card mixer support"
msgstr ""
-#: AboutDialog.cpp:462 AboutDialog.cpp:465
+#: AboutDialog.cpp:457
+#: AboutDialog.cpp:460
msgid "Pitch and Tempo Change support"
msgstr ""
-#: AboutDialog.cpp:204
+#: AboutDialog.cpp:472
#, fuzzy
msgid "Program build date: "
msgstr "Program inÅa tarihi:"
-#: AboutDialog.cpp:480 AboutDialog.cpp:482
+#: AboutDialog.cpp:475
+#: AboutDialog.cpp:477
msgid "Build type:"
msgstr ""
-#: AboutDialog.cpp:480
+#: AboutDialog.cpp:475
msgid "Debug build"
msgstr ""
-#: AboutDialog.cpp:482
+#: AboutDialog.cpp:477
msgid "Release build"
msgstr ""
#. i18n-hint: The directory audacity is installed into (on *nix systems)
-#: AboutDialog.cpp:487
+#: AboutDialog.cpp:482
msgid "Installation Prefix: "
msgstr ""
-#: AboutDialog.cpp:209
+#: AboutDialog.cpp:486
msgid "Settings folder: "
msgstr ""
-#: AboutDialog.cpp:388
+#: AboutDialog.cpp:501
msgid "GPL License"
msgstr ""
-#: ../src/AudacityApp.cpp:304 ../src/Project.cpp:1770
+#: AudacityApp.cpp:677
+#: Project.cpp:2031
#, c-format
msgid "%s is already open in another window."
msgstr "%s baÅka pencerede zaten açık."
-#: ../src/AudacityApp.cpp:306 ../src/Project.cpp:1772 ../src/Project.cpp:1843
-#: ../src/Project.cpp:1894 ../src/Project.cpp:1905 ../src/Project.cpp:1943
+#: AudacityApp.cpp:679
+#: Project.cpp:2033
+#: Project.cpp:2153
+#: Project.cpp:2301
+#: Project.cpp:2433
msgid "Error opening project"
msgstr "Proje açılıyorken hata"
-#: ../src/AudacityApp.cpp:338
+#: AudacityApp.cpp:705
#, c-format
-msgid "%s does not exist and could not be opened.\n"
+msgid ""
+"%s does not exist and could not be opened.\n"
"\n"
"It has been removed from the history list."
-msgstr "%s mevcut deÄil ve açılamadı.\n"
+msgstr ""
+"%s mevcut deÄil ve açılamadı.\n"
"\n"
"O geçmiÅ listesinden kaldırılmıÅ."
-#: ../src/AudacityApp.cpp:367
+#: AudacityApp.cpp:812
msgid "Master Gain Control"
msgstr "Ana Kazanç Kontrolü"
-#: ../src/AudacityApp.cpp:368
+#: AudacityApp.cpp:813
msgid "Input Meter"
msgstr "Ãlçer Ekle"
-#: ../src/AudacityApp.cpp:369
+#: AudacityApp.cpp:814
msgid "Output Meter"
msgstr "ÃıkıŠÃlçer"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
-#: AudacityApp.cpp:534 Menus.cpp:575
-msgid "&Preferences...\tCtrl+,"
+#: AudacityApp.cpp:973
+#: Menus.cpp:199
+msgid "&New"
+msgstr "Ye&ni"
+
+#: AudacityApp.cpp:974
+#: Menus.cpp:203
+msgid "&Open..."
+msgstr "&Aç..."
+
+#: AudacityApp.cpp:975
+msgid "Open &Recent..."
+msgstr ""
+
+#: AudacityApp.cpp:976
+#: Menus.cpp:955
+msgid "&About Audacity..."
+msgstr "&Audacity Hakkında..."
+
+#: AudacityApp.cpp:977
+msgid "&Preferences..."
msgstr ""
-#: ../src/AudacityApp.cpp:626 ../src/AudacityApp.cpp:696
+#: AudacityApp.cpp:1068
+#: AudacityApp.cpp:1145
#, c-format
msgid "Using block size of %ld\n"
msgstr "%ld nin öbek boyutunu kullanıyor\n"
-#: ../src/AudacityApp.cpp:641 ../src/AudacityApp.cpp:711
+#: AudacityApp.cpp:1090
+#: AudacityApp.cpp:1160
#, c-format
msgid "Unknown command line option: %s\n"
msgstr "Bilinmeyen komut satır seçeneÄi:%s\n"
-#: ../src/AudacityApp.cpp:773
-msgid "Audacity could not find a place to store temporary files.\n"
+#: AudacityApp.cpp:1314
+msgid ""
+"Audacity could not find a place to store temporary files.\n"
"Please enter an appropriate directory in the preferences dialog."
-msgstr "Audacity geçici dosyaları saklamak için bir yer bulamadı.\n"
+msgstr ""
+"Audacity geçici dosyaları saklamak için bir yer bulamadı.\n"
"Lütfen tercihler diyaloÄu içinde uygun bir dizini girin."
-#: AudacityApp.cpp:845
+#: AudacityApp.cpp:1320
#, fuzzy
msgid "Audacity is now going to exit. Please launch Audacity again to use the new temporary directory."
msgstr "Audacity Åimdi çıkacak. Lütfen yeni geçici dizini kullanmak için Audacity'i yeniden baÅlatın."
-#: AudacityApp.cpp:877
-msgid "Running two copies of Audacity simultaneously may cause\n"
+#: AudacityApp.cpp:1352
+msgid ""
+"Running two copies of Audacity simultaneously may cause\n"
"data loss or cause your system to crash.\n"
"\n"
msgstr ""
-#: AudacityApp.cpp:884
-msgid "Audacity was not able to lock the temporary files directory.\n"
+#: AudacityApp.cpp:1359
+msgid ""
+"Audacity was not able to lock the temporary files directory.\n"
"This folder may be in use by another copy of Audacity.\n"
msgstr ""
-#: AudacityApp.cpp:886
+#: AudacityApp.cpp:1361
msgid "Do you still want to start Audacity?"
msgstr ""
-#: ../src/AudacityApp.cpp:829
+#: AudacityApp.cpp:1363
msgid "Error locking temporary folder"
msgstr "Geçici dizini kitliyorken hata"
-#: AudacityApp.cpp:900
+#: AudacityApp.cpp:1401
msgid "The system has detected that another copy of Audacity is running.\n"
msgstr ""
-#: AudacityApp.cpp:902
-msgid "Use the New or Open commands in the currently running Audacity\n"
+#: AudacityApp.cpp:1403
+msgid ""
+"Use the New or Open commands in the currently running Audacity\n"
"process to open multiple projects simultaneously.\n"
msgstr ""
-#: ../src/AudacityApp.cpp:846
+#: AudacityApp.cpp:1404
msgid "Audacity is already running"
msgstr "Audacity zaten çalıÅıyor"
-#: AudacityApp.cpp:1134
+#: AudacityApp.cpp:1421
msgid "Command-line options supported:"
msgstr ""
#. i18n-hint: '-help' is the option and needs to stay in
#. * English. This displays a list of available options
-#: AudacityApp.cpp:1137
+#: AudacityApp.cpp:1424
msgid "\t-help (this message)"
msgstr ""
#. i18n-hint '-version' needs to stay in English.
-#: AudacityApp.cpp:1139
+#: AudacityApp.cpp:1426
msgid "\t-version (display Audacity version)"
msgstr ""
#. i18n-hint '-test' is the option and needs to stay in
#. * English. This runs a set of automatic tests on audacity
#. * itself
-#: AudacityApp.cpp:1143
+#: AudacityApp.cpp:1430
msgid "\t-test (run self diagnostics)"
msgstr ""
@@ -314,77 +363,102 @@ msgstr ""
#. * English. 'nnn' is any integer number. This controls the
#. * size pieces that audacity uses when writing files to the
#. * disk
-#: AudacityApp.cpp:1148
+#: AudacityApp.cpp:1435
msgid "\t-blocksize nnn (set max disk block size in bytes)"
msgstr ""
-#: AudacityApp.cpp:1149
+#: AudacityApp.cpp:1436
msgid "In addition, specify the name of an audio file or Audacity project to open it."
msgstr ""
-#: ../src/AudacityApp.cpp:1099
-msgid "Audacity project (.AUP) files are not currently \n"
+#: AudacityApp.cpp:1747
+msgid ""
+"Audacity project (.AUP) files are not currently \n"
"associated with Audacity. \n"
"\n"
"Associate them, so they open on double-click?"
-msgstr "Audacity proje (.AUP) dosyaları halihazırdaki Audacity ile baÄdaÅmıyor. \n"
+msgstr ""
+"Audacity proje (.AUP) dosyaları halihazırdaki Audacity ile baÄdaÅmıyor. \n"
"\n"
"Onları baÄdaÅtırın, bu yüzden onlar çift-tıklama ile açılsın mı?"
-#: ../src/AudacityApp.cpp:1100
+#: AudacityApp.cpp:1748
msgid "Audacity Project Files"
msgstr "Audacity Proje Dosyaları"
-#: AudioIO.cpp:214
+#: AudioIO.cpp:261
msgid "Could not find any audio devices.\n"
msgstr ""
-#: ../src/AudioIO.cpp:167
-msgid "You will not be able to play or record audio.\n"
+#: AudioIO.cpp:262
+msgid ""
+"You will not be able to play or record audio.\n"
"\n"
-msgstr "Ses kaydedemeyebilecek ya da oynatamayabileceksiniz.\n"
+msgstr ""
+"Ses kaydedemeyebilecek ya da oynatamayabileceksiniz.\n"
"\n"
-#: ../src/AudioIO.cpp:170
+#: AudioIO.cpp:265
+#: AudioIO.cpp:285
msgid "Error: "
msgstr "Hata:"
-#: ../src/AudioIO.cpp:173
+#: AudioIO.cpp:268
msgid "Error Initializing Audio"
msgstr "Ses BaÅlatma Hatası"
-#: AudioIO.cpp:1236
-msgid "Latency problem"
+#: AudioIO.cpp:281
+msgid "There was an error initializing the midi i/o layer.\n"
msgstr ""
-#: AudioIO.cpp:1236
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
+#: AudioIO.cpp:282
+#, fuzzy
+msgid ""
+"You will not be able to play midi.\n"
+"\n"
+msgstr ""
+"Ses kaydedemeyebilecek ya da oynatamayabileceksiniz.\n"
+"\n"
+
+#: AudioIO.cpp:288
+#, fuzzy
+msgid "Error Initializing Midi"
+msgstr "Ses BaÅlatma Hatası"
+
+#: AudioIO.cpp:1300
+msgid ""
+"Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
"Audacity has brought it back to start at zero.\n"
"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
msgstr ""
-#: AutoRecovery.cpp:40
+#: AudioIO.cpp:1301
+msgid "Latency problem"
+msgstr ""
+
+#: AutoRecovery.cpp:54
msgid "Automatic Crash Recovery"
msgstr ""
-#: AutoRecovery.cpp:59
-msgid "Some projects were not saved properly the last time Audacity was run.\n"
+#: AutoRecovery.cpp:73
+msgid ""
+"Some projects were not saved properly the last time Audacity was run.\n"
"Fortunately, the following projects can automatically be recovered:"
msgstr ""
-#: AutoRecovery.cpp:61
+#: AutoRecovery.cpp:75
msgid "Recoverable projects"
msgstr ""
-#: AutoRecovery.cpp:64
+#: AutoRecovery.cpp:78
msgid "Name"
msgstr ""
-#: AutoRecovery.cpp:70
+#: AutoRecovery.cpp:84
msgid "Recovering a project will not change any files on disk before you save it."
msgstr ""
-#: AutoRecovery.cpp:74
+#: AutoRecovery.cpp:88
msgid "Quit Audacity"
msgstr ""
@@ -397,7 +471,8 @@ msgid "Recover Projects"
msgstr ""
#: AutoRecovery.cpp:127
-msgid "Are you sure you don't want to recover any projects?\n"
+msgid ""
+"Are you sure you don't want to recover any projects?\n"
"They can't be recovered later."
msgstr ""
@@ -405,83 +480,107 @@ msgstr ""
msgid "Confirm?"
msgstr ""
-#: AutoRecovery.cpp:132 AutoRecovery.cpp:169
+#: AutoRecovery.cpp:146
+#: AutoRecovery.cpp:183
msgid "Could not enumerate files in auto save directory"
msgstr ""
-#: ../src/ControlToolBar.cpp:723 ../src/ControlToolBar.cpp:884
-#: ../src/effects/Effect.cpp:331 ../src/prefs/DirectoriesPrefs.cpp:204
+#: AutoRecovery.cpp:147
+#: AutoRecovery.cpp:184
+#: Menus.cpp:3278
+#: Menus.cpp:3290
+#: Menus.cpp:5359
+#: Project.cpp:2260
+#: Project.cpp:3882
+#: Project.cpp:3968
+#: TrackPanel.cpp:6505
+#: WaveTrack.cpp:977
+#: WaveTrack.cpp:996
+#: WaveTrack.cpp:2022
+#: effects/Contrast.cpp:144
+#: effects/Contrast.cpp:154
+#: effects/Effect.cpp:546
+#: export/ExportFFmpeg.cpp:655
+#: export/ExportMP2.cpp:231
+#: prefs/DirectoriesPrefs.cpp:195
+#: prefs/KeyConfigPrefs.cpp:372
+#: toolbars/ControlToolBar.cpp:581
+#: toolbars/ControlToolBar.cpp:916
msgid "Error"
msgstr "Hata"
-#: BatchCommandDialog.cpp:56 BatchCommandDialog.cpp:60
-#: BatchCommandDialog.cpp:61
+#: BatchCommandDialog.cpp:57
+#: BatchCommandDialog.cpp:62
+#: BatchCommandDialog.cpp:63
msgid "Select Command"
msgstr ""
-#: BatchCommandDialog.cpp:80 BatchProcessDialog.cpp:451
-#: prefs/KeyConfigPrefs.cpp:140
+#: BatchCommandDialog.cpp:82
msgid "&Command"
msgstr ""
-#: BatchCommandDialog.cpp:82
+#: BatchCommandDialog.cpp:84
msgid "&Edit Parameters"
msgstr ""
-#: BatchCommandDialog.cpp:89 BatchProcessDialog.cpp:452
+#: BatchCommandDialog.cpp:91
msgid "&Parameters"
msgstr ""
-#: BatchCommandDialog.cpp:93
+#: BatchCommandDialog.cpp:96
msgid "C&hoose command"
msgstr ""
-#: BatchCommands.cpp:456
+#: BatchCommands.cpp:455
msgid "Stereo to Mono Effect not found"
msgstr ""
-#: ../src/export/Export.cpp:366
+#: BatchCommands.cpp:475
msgid "Ogg Vorbis support is not included in this build of Audacity"
msgstr "Ogg Vorbis desteÄi Audacity'nin bu sürümünde mevcut deÄil"
-#: BatchCommands.cpp:509
+#: BatchCommands.cpp:487
msgid "FLAC support is not included in this build of Audacity"
msgstr ""
-#: BatchCommands.cpp:513
+#: BatchCommands.cpp:491
#, c-format
msgid "Command %s not implemented yet"
msgstr ""
-#: BatchCommands.cpp:529
+#: BatchCommands.cpp:507
#, c-format
-msgid "Could not set parameters of effect %s\n"
+msgid ""
+"Could not set parameters of effect %s\n"
" to %s."
msgstr ""
-#: BatchCommands.cpp:583
+#: BatchCommands.cpp:560
#, c-format
msgid "Your batch command of %s was not recognised."
msgstr ""
-#: BatchCommands.cpp:674
+#: BatchCommands.cpp:651
#, c-format
-msgid "Apply %s with parameter(s)\n"
+msgid ""
+"Apply %s with parameter(s)\n"
"\n"
"%s"
msgstr ""
-#: BatchCommands.cpp:675 BatchCommands.cpp:680
+#: BatchCommands.cpp:652
+#: BatchCommands.cpp:657
msgid "Test Mode"
msgstr ""
-#: BatchCommands.cpp:679
+#: BatchCommands.cpp:656
#, c-format
msgid "Apply %s"
msgstr ""
-#: BatchProcessDialog.cpp:58 BatchProcessDialog.cpp:68
-#: BatchProcessDialog.cpp:69
+#: BatchProcessDialog.cpp:60
+#: BatchProcessDialog.cpp:70
+#: BatchProcessDialog.cpp:71
msgid "Apply Chain"
msgstr ""
@@ -489,46 +588,38 @@ msgstr ""
msgid "CleanSpeech Batch Processing"
msgstr ""
-#: BatchProcessDialog.cpp:92
+#: BatchProcessDialog.cpp:94
msgid "&Select chain"
msgstr ""
-#: BatchProcessDialog.cpp:97
+#: BatchProcessDialog.cpp:99
msgid "Chain"
msgstr ""
-#: BatchProcessDialog.cpp:104
+#: BatchProcessDialog.cpp:106
msgid "Apply to Current &Project"
msgstr ""
-#: BatchProcessDialog.cpp:105
+#: BatchProcessDialog.cpp:107
msgid "Apply to &Files..."
msgstr ""
-#: BatchProcessDialog.cpp:106 BatchProcessDialog.cpp:245 LabelDialog.cpp:134
-#: LabelDialog.cpp:138 UploadDialog.cpp:178 effects/Amplify.cpp:209
-#: effects/AutoDuck.cpp:528 effects/AutoDuck.cpp:532
-#: effects/AvcCompressor.cpp:732 effects/ChangeLength.cpp:184
-#: effects/ChangePitch.cpp:395 effects/ChangeSpeed.cpp:393
-#: effects/ChangeTempo.cpp:297 effects/ClickRemoval.cpp:429
-#: effects/Compressor.cpp:516 effects/Effect.cpp:387 effects/Effect.cpp:393
-#: effects/Equalization.cpp:1166 effects/Leveller.cpp:266
-#: effects/Normalize.cpp:353 effects/Phaser.cpp:600 effects/Repeat.cpp:271
-#: effects/SpikeCleaner.cpp:188 effects/TruncSilence.cpp:278
-#: effects/VST/VSTEffect.cpp:95 effects/VST/VSTEffect.cpp:452
-#: effects/Wahwah.cpp:587 effects/audiounits/AudioUnitEffect.cpp:862
-#: effects/ladspa/LadspaEffect.cpp:589 effects/nyquist/Nyquist.cpp:823
-#: effects/nyquist/Nyquist.cpp:987 export/Export.cpp:788
-#: export/ExportMultiple.cpp:844 import/ImportRaw.cpp:443
-#: prefs/FileFormatPrefs.cpp:407 prefs/PrefsDialog.cpp:169
+#: BatchProcessDialog.cpp:108
+#: BatchProcessDialog.cpp:245
+#: UploadDialog.cpp:180
+#: effects/AvcCompressor.cpp:732
+#: effects/ChangeLength.cpp:183
+#: effects/SpikeCleaner.cpp:188
+#: effects/audiounits/AudioUnitEffect.cpp:861
msgid "&Cancel"
msgstr ""
-#: BatchProcessDialog.cpp:144 BatchProcessDialog.cpp:189
+#: BatchProcessDialog.cpp:146
+#: BatchProcessDialog.cpp:189
msgid "No chain selected"
msgstr ""
-#: BatchProcessDialog.cpp:157
+#: BatchProcessDialog.cpp:159
#, c-format
msgid "Applying '%s' to current project"
msgstr ""
@@ -537,7 +628,7 @@ msgstr ""
msgid "Please save and close the current project first."
msgstr ""
-#: BatchProcessDialog.cpp:206
+#: BatchProcessDialog.cpp:204
msgid "Select vocal file(s) for batch CleanSpeech Chain..."
msgstr ""
@@ -545,7 +636,7 @@ msgstr ""
msgid "Select file(s) for batch processing..."
msgstr ""
-#: BatchProcessDialog.cpp:209
+#: BatchProcessDialog.cpp:207
msgid "Vocal files (*.wav;*.mp3)|*.wav;*.mp3|WAV files (*.wav)|*.wav|MP3 files (*.mp3)|*.mp3"
msgstr ""
@@ -561,82 +652,98 @@ msgstr ""
msgid "File"
msgstr ""
-#: BatchProcessDialog.cpp:354 BatchProcessDialog.cpp:358
-#: BatchProcessDialog.cpp:359
+#: BatchProcessDialog.cpp:352
+#: BatchProcessDialog.cpp:356
+#: BatchProcessDialog.cpp:357
msgid "Edit Chains"
msgstr ""
-#: BatchProcessDialog.cpp:414
+#: BatchProcessDialog.cpp:412
msgid "&Chains"
msgstr ""
-#: BatchProcessDialog.cpp:433
+#: BatchProcessDialog.cpp:431
+#: Tags.cpp:825
msgid "&Add"
msgstr ""
-#: BatchProcessDialog.cpp:434 LabelDialog.cpp:126 TrackPanel.cpp:3925
+#: BatchProcessDialog.cpp:432
+#: LabelDialog.cpp:128
+#: Tags.cpp:826
msgid "&Remove"
msgstr ""
-#: BatchProcessDialog.cpp:435
+#: BatchProcessDialog.cpp:433
msgid "Re&name"
msgstr ""
-#: BatchProcessDialog.cpp:441
+#: BatchProcessDialog.cpp:439
msgid "C&hain (Double-Click or press SPACE to edit)"
msgstr ""
+#. i18n-hint: This is the number of the command in the list
+#: BatchProcessDialog.cpp:449
+msgid "Num"
+msgstr ""
+
#: BatchProcessDialog.cpp:450
-msgid "No"
+#: commands/CommandManager.cpp:108
+#: prefs/KeyConfigPrefs.cpp:180
+msgid "Command"
msgstr ""
-#: BatchProcessDialog.cpp:456
+#: BatchProcessDialog.cpp:451
+#: effects/Contrast.cpp:279
+msgid "Parameters"
+msgstr ""
+
+#: BatchProcessDialog.cpp:455
msgid "&Insert"
msgstr ""
-#: BatchProcessDialog.cpp:457
+#: BatchProcessDialog.cpp:456
msgid "De&lete"
msgstr ""
-#: BatchProcessDialog.cpp:458
+#: BatchProcessDialog.cpp:457
msgid "Move &Up"
msgstr ""
-#: BatchProcessDialog.cpp:459
+#: BatchProcessDialog.cpp:458
msgid "Move &Down"
msgstr ""
-#: BatchProcessDialog.cpp:460
+#: BatchProcessDialog.cpp:459
msgid "De&faults"
msgstr ""
-#: BatchProcessDialog.cpp:504
+#: BatchProcessDialog.cpp:503
msgid "- END -"
msgstr ""
-#: BatchProcessDialog.cpp:531
+#: BatchProcessDialog.cpp:536
#, c-format
msgid "%s changed"
msgstr ""
-#: BatchProcessDialog.cpp:532
+#: BatchProcessDialog.cpp:537
msgid "Do you want to save the changes?"
msgstr ""
-#: BatchProcessDialog.cpp:614
+#: BatchProcessDialog.cpp:619
msgid "Enter name of new chain"
msgstr ""
-#: BatchProcessDialog.cpp:625
+#: BatchProcessDialog.cpp:630
msgid "Name must not be blank"
msgstr ""
-#: BatchProcessDialog.cpp:634
+#: BatchProcessDialog.cpp:639
#, c-format
msgid "Names may not contain '%c' and '%c'"
msgstr ""
-#: BatchProcessDialog.cpp:664
+#: BatchProcessDialog.cpp:669
#, c-format
msgid "Are you sure you want to delete %s?"
msgstr ""
@@ -649,187 +756,205 @@ msgstr ""
msgid "Copying audio data into project..."
msgstr ""
-#: Dependencies.cpp:219
-msgid "Your project currently depends on the presence of other files.\n"
+#: Dependencies.cpp:226
+msgid ""
+"Your project currently depends on the presence of other files.\n"
"Copy audio from the following files into your project to make it self-contained?\n"
"This will need more disc space but is safer."
msgstr ""
-#: Dependencies.cpp:266
+#: Dependencies.cpp:273
msgid "Project depends on other audio files"
msgstr ""
-#: Dependencies.cpp:287
+#: Dependencies.cpp:294
msgid "Project Dependencies"
msgstr ""
-#: Dependencies.cpp:290
+#: Dependencies.cpp:297
msgid "Audio file"
msgstr ""
-#: Dependencies.cpp:292
+#: Dependencies.cpp:299
msgid "Disk space"
msgstr ""
-#: Dependencies.cpp:297
+#: Dependencies.cpp:304
msgid "Copy Selected Audio Into Project"
msgstr ""
-#: Dependencies.cpp:304 Dependencies.cpp:413
+#: Dependencies.cpp:311
+#: Dependencies.cpp:417
msgid "Cancel Save"
msgstr ""
-#: Dependencies.cpp:306
+#: Dependencies.cpp:313
msgid "Do Not Copy Any Audio"
msgstr ""
-#: Dependencies.cpp:308
+#: Dependencies.cpp:315
msgid "Copy All Audio into Project (Safer)"
msgstr ""
-#: Dependencies.cpp:320 Dependencies.cpp:325
+#: Dependencies.cpp:324
+#: Dependencies.cpp:329
msgid "Ask me"
msgstr ""
-#: Dependencies.cpp:318
+#: Dependencies.cpp:325
msgid "Always copy all audio (safest)"
msgstr ""
-#: Dependencies.cpp:319
+#: Dependencies.cpp:326
msgid "Never copy any audio"
msgstr ""
-#: Dependencies.cpp:324
+#: Dependencies.cpp:328
msgid "Whenever a project depends on other files:"
msgstr ""
-#: Dependencies.cpp:412
+#: Dependencies.cpp:416
msgid "If you proceed, your project will not be saved to disk. Is this what you want?"
msgstr ""
-#: Dependencies.cpp:452
+#: Dependencies.cpp:456
msgid "Your project is self-contained; it does not depend on any external audio files."
msgstr ""
-#: Dependencies.cpp:453
+#: Dependencies.cpp:457
msgid "Dependency check"
msgstr ""
#: DirManager.cpp:136
#, fuzzy
-msgid "Warning: there is very little free disk space left on this volume.\n"
-"Please select another temporary directory in your preferences."
+msgid ""
+"There is very little free disk space left on this volume.\n"
+"Please select another temporary directory in Preferences."
msgstr "Dikkat: bu bölüm üzerinde çok az yeterli disk bölümü var. Lütfen tercihleriniz içindeki baÅka geçici dizin seçin."
-#: ../src/DirManager.cpp:157
+#: DirManager.cpp:221
+#: DirManager.cpp:252
+#: DirManager.cpp:335
msgid "Progress"
msgstr "İÅlem"
-#: DirManager.cpp:285
+#: DirManager.cpp:286
msgid "Cleaning up temporary files"
msgstr ""
-#: DirManager.cpp:333
+#: DirManager.cpp:336
msgid "Saving project data files"
msgstr ""
-#: DirManager.cpp:406
+#: DirManager.cpp:408
msgid "Cleaning up cache directories"
msgstr ""
-#: DirManager.cpp:493
+#: DirManager.cpp:503
#, c-format
-msgid "Audacity found an orphaned blockfile %s! \n"
+msgid ""
+"Audacity found an orphaned blockfile %s! \n"
"Please consider saving and reloading the project to perform a complete project check.\n"
msgstr ""
#. i18n-hint: This is the pattern for filenames that are created
#. when a file needs to be backed up to a different name. For
#. example, mysong would become mysong-old1, mysong-old2, etc.
-#: ../src/DirManager.cpp:627
+#: DirManager.cpp:1092
#, c-format
msgid "%s-old%d"
msgstr "%s-eski%d"
-#: DirManager.cpp:993
+#: DirManager.cpp:1100
msgid "Unable to open/create test file"
msgstr ""
-#: DirManager.cpp:1002
+#: DirManager.cpp:1109
#, c-format
msgid "Unable to remove '%s'"
msgstr ""
-#: ../src/DirManager.cpp:643
+#: DirManager.cpp:1114
#, c-format
msgid "Renamed file: %s\n"
msgstr "Dosya yeniden adlandırıldı: %s\n"
-#: DirManager.cpp:1051
+#: DirManager.cpp:1164
#, c-format
msgid "Unable to rename '%s' to '%s'"
msgstr ""
-#: DirManager.cpp:1183
+#: DirManager.cpp:1181
#, c-format
msgid "Changed block %s to new alias name\n"
msgstr ""
-#: DirManager.cpp:1115 DirManager.cpp:1403
+#: DirManager.cpp:1247
+#: DirManager.cpp:1538
msgid "Inspecting project file data..."
msgstr ""
-#: DirManager.cpp:1128
+#: DirManager.cpp:1263
#, c-format
msgid "Orphaned blockfile: (%s)"
msgstr ""
-#: DirManager.cpp:1153
+#: DirManager.cpp:1288
#, c-format
msgid "Missing alias file: (%s)"
msgstr ""
-#: DirManager.cpp:1173
+#: DirManager.cpp:1308
#, c-format
msgid "Missing summary file: (%s.auf)"
msgstr ""
-#: DirManager.cpp:1193
+#: DirManager.cpp:1328
#, c-format
msgid "Missing data file: (%s.au)"
msgstr ""
-#: DirManager.cpp:1207
-msgid "Project check found inconsistencies inspecting the loaded project data;\n"
+#: DirManager.cpp:1342
+msgid ""
+"Project check found inconsistencies inspecting the loaded project data;\n"
"click 'Details' for a complete list of errors, or 'OK' to proceed to more options."
msgstr ""
-#: DirManager.cpp:1219
+#: DirManager.cpp:1354
#, c-format
-msgid "Project check found %d orphaned blockfile[s]. These files are\n"
+msgid ""
+"Project check found %d orphaned blockfile[s]. These files are\n"
"unused and probably left over from a crash or some other bug.\n"
"They should be deleted to avoid disk contention."
msgstr ""
-#: DirManager.cpp:1224
+#: DirManager.cpp:1359
msgid "Delete orphaned files [safe and recommended]"
msgstr ""
-#: DirManager.cpp:1225
+#: DirManager.cpp:1360
msgid "Continue without deleting; silently work around the extra files"
msgstr ""
-#: DirManager.cpp:1226
+#: DirManager.cpp:1361
msgid "Close project immediately with no changes"
msgstr ""
-#: ../src/widgets/Warning.cpp:45
+#: DirManager.cpp:1363
+#: DirManager.cpp:1398
+#: DirManager.cpp:1444
+#: DirManager.cpp:1486
+#: export/Export.cpp:581
+#: export/Export.cpp:602
+#: export/Export.cpp:621
+#: widgets/Warning.cpp:53
msgid "Warning"
msgstr "Dikkat"
-#: DirManager.cpp:1254
+#: DirManager.cpp:1389
#, c-format
-msgid "Project check detected %d input file[s] being used in place\n"
+msgid ""
+"Project check detected %d input file[s] being used in place\n"
"('alias files') are now missing. There is no way for Audacity\n"
"to recover these files automatically; you may choose to\n"
"permanently fill in silence for the missing files, temporarily\n"
@@ -837,36 +962,41 @@ msgid "Project check detected %d input file[s] being used in place\n"
"and try to restore the missing files by hand."
msgstr ""
-#: DirManager.cpp:1259
+#: DirManager.cpp:1394
msgid "Replace missing data with silence [permanent upon save]"
msgstr ""
-#: DirManager.cpp:1260 DirManager.cpp:1348
+#: DirManager.cpp:1395
+#: DirManager.cpp:1483
msgid "Temporarily replace missing data with silence [this session only]"
msgstr ""
-#: DirManager.cpp:1261 DirManager.cpp:1307 DirManager.cpp:1349
+#: DirManager.cpp:1396
+#: DirManager.cpp:1442
+#: DirManager.cpp:1484
msgid "Close project immediately with no further changes"
msgstr ""
-#: DirManager.cpp:1300
+#: DirManager.cpp:1435
#, c-format
-msgid "Project check detected %d missing summary file[s] (.auf).\n"
+msgid ""
+"Project check detected %d missing summary file[s] (.auf).\n"
"Audacity can fully regenerate these summary files from the\n"
"original audio data in the project."
msgstr ""
-#: DirManager.cpp:1305
+#: DirManager.cpp:1440
msgid "Regenerate summary files [safe and recommended]"
msgstr ""
-#: DirManager.cpp:1306
+#: DirManager.cpp:1441
msgid "Fill in silence for missing display data [this session only]"
msgstr ""
-#: DirManager.cpp:1342
+#: DirManager.cpp:1477
#, c-format
-msgid "Project check detected %d missing audio data blockfile[s] (.au), \n"
+msgid ""
+"Project check detected %d missing audio data blockfile[s] (.au), \n"
"probably due to a bug, system crash or accidental deletion.\n"
"There is no way for Audacity to recover this lost data\n"
"automatically; you may choose to permanently fill in silence\n"
@@ -875,256 +1005,338 @@ msgid "Project check detected %d missing audio data blockfile[s] (.au), \n"
"missing data by hand."
msgstr ""
-#: DirManager.cpp:1347
+#: DirManager.cpp:1482
msgid "Replace missing data with silence [permanent immediately]"
msgstr ""
-#: DirManager.cpp:1375
+#: DirManager.cpp:1510
msgid "Cleaning up unused directories in project data..."
msgstr ""
-#: DirManager.cpp:1448
+#: DirManager.cpp:1587
msgid "Caching audio"
msgstr ""
-#: DirManager.cpp:1449
+#: DirManager.cpp:1588
msgid "Caching audio into memory..."
msgstr ""
-#: DirManager.cpp:1486
+#: DirManager.cpp:1623
msgid "Saving recorded audio"
msgstr ""
-#: DirManager.cpp:1487
+#: DirManager.cpp:1624
msgid "Saving recorded audio to disk..."
msgstr ""
-#: ../src/FFT.cpp:364
+#: FFT.cpp:389
msgid "Rectangular"
msgstr "Dikdörtgenel"
-#: FFmpeg.cpp:36
+#: FFmpeg.cpp:38
msgid "FFmpeg support not compiled in"
msgstr ""
-#: FFmpeg.cpp:101
-msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
+#: FFmpeg.cpp:103
+msgid ""
+"FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
-#: FFmpeg.cpp:104
+#: FFmpeg.cpp:106
msgid "FFmpeg startup failed"
msgstr ""
-#: FFmpeg.cpp:115
+#: FFmpeg.cpp:114
msgid "FFmpeg library not found"
msgstr ""
-#: FFmpeg.cpp:170
+#: FFmpeg.cpp:408
msgid "Locate FFmpeg"
msgstr ""
-#: FFmpeg.cpp:190
+#: FFmpeg.cpp:428
#, c-format
msgid "Audacity needs the file %s to import and export audio via FFmpeg."
msgstr ""
-#: export/ExportMP3.cpp:507
+#: FFmpeg.cpp:434
+#: export/ExportMP3.cpp:562
#, c-format
msgid "Location of %s:"
msgstr ""
-#: export/ExportMP3.cpp:516
+#: FFmpeg.cpp:443
+#: export/ExportMP3.cpp:571
#, c-format
msgid "To find %s, click here -->"
msgstr ""
-#: export/ExportMP3.cpp:522
+#: FFmpeg.cpp:449
+#: export/ExportMP3.cpp:577
msgid "Browse..."
msgstr ""
-#: FFmpeg.cpp:212
+#: FFmpeg.cpp:450
msgid "To get a free copy of FFmpeg, click here -->"
msgstr ""
-#: FFmpeg.cpp:215 export/ExportMP3.cpp:579
+#: FFmpeg.cpp:451
+#: export/ExportMP3.cpp:579
msgid "Download"
msgstr ""
#. i18n-hint: It's asking for the location of a file, for
#. example, "Where is lame_enc.dll?" - you could translate
#. "Where would I find the file %s" instead if you want.
-#: ../src/export/ExportMP3.cpp:113
+#: FFmpeg.cpp:473
+#: export/ExportMP3.cpp:601
#, c-format
msgid "Where is %s?"
msgstr "%s nerede?"
-#: FFmpeg.cpp:407
+#: FFmpeg.cpp:643
msgid "Failed to find compatible FFmpeg libraries"
msgstr ""
-#: FFmpeg.h:95
+#: FFmpeg.h:97
msgid "FFmpeg not found"
msgstr ""
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid ""
+"Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
-#: FFmpeg.h:109
+#: FFmpeg.h:119
msgid "Do not show this warning again"
msgstr ""
-#: FFmpeg.h:251
+#: FFmpeg.h:264
msgid "Only avformat.dll|*avformat*.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
msgstr ""
-#: FFmpeg.h:268
+#: FFmpeg.h:297
msgid "Dynamic Libraries (*.dylib)|*.dylib|All Files (*)|*"
msgstr ""
-#: FFmpeg.h:266
+#: FFmpeg.h:324
msgid "Only libavformat.so|libavformat.so*|Dynamically Linked Libraries (*.so*)|*.so*|All Files (*)|*"
msgstr ""
-#: ../src/FreqWindow.cpp:68
+#: FreqWindow.cpp:107
msgid "Frequency Analysis"
msgstr "Frekans Analizi"
-#: ../src/FreqWindow.cpp:129 ../src/TrackPanel.cpp:837
+#: FreqWindow.cpp:163
+#: TrackPanel.cpp:611
+#: prefs/TracksPrefs.cpp:58
msgid "Spectrum"
msgstr "Spektrum"
-#: ../src/FreqWindow.cpp:130
+#: FreqWindow.cpp:164
msgid "Standard Autocorrelation"
msgstr "Standart Ãzilinti"
-#: ../src/FreqWindow.cpp:131
+#: FreqWindow.cpp:165
msgid "Cuberoot Autocorrelation"
msgstr ""
-#: ../src/FreqWindow.cpp:132
+#: FreqWindow.cpp:166
msgid "Enhanced Autocorrelation"
msgstr "GeliÅmiÅ Ãzilinti"
#. i18n-hint: This is a technical term, derived from the word
#. "spectrum". Do not translate it unless you are sure you
#. know the correct technical word in your language.
-#: ../src/FreqWindow.cpp:136
+#: FreqWindow.cpp:170
msgid "Cepstrum"
msgstr "Kepstrum"
-#: FreqWindow.cpp:150 FreqWindow.cpp:154
+#: FreqWindow.cpp:174
+#: FreqWindow.cpp:178
msgid "Algorithm"
msgstr ""
-#: ../src/HistoryWindow.cpp:58
+#: FreqWindow.cpp:193
+#: FreqWindow.cpp:197
+#: HistoryWindow.cpp:79
msgid "Size"
msgstr "Boyut"
#. i18n-hint: This refers to a "window function", used in the
#. Frequency analyze dialog box.
-#: ../src/FreqWindow.cpp:167
+#: FreqWindow.cpp:207
msgid " window"
msgstr "pencere"
-#: FreqWindow.cpp:187 FreqWindow.cpp:191
+#: FreqWindow.cpp:211
+#: FreqWindow.cpp:215
msgid "Function"
msgstr ""
-#: ../src/FreqWindow.cpp:177
+#: FreqWindow.cpp:220
msgid "Linear frequency"
msgstr "DoÄrusal frekans"
-#: ../src/FreqWindow.cpp:178
+#: FreqWindow.cpp:221
msgid "Log frequency"
msgstr "Frekans günlüÄü"
-#: FreqWindow.cpp:201 FreqWindow.cpp:205
+#: FreqWindow.cpp:225
+#: FreqWindow.cpp:229
msgid "Axis"
msgstr ""
-#: FreqWindow.cpp:204 LabelDialog.cpp:128
+#: FreqWindow.cpp:236
+#: LabelDialog.cpp:130
+#: Menus.cpp:256
msgid "&Export..."
msgstr ""
-#: HelpText.cpp:77 export/ExportCL.cpp:320
+#: FreqWindow.cpp:237
+#: effects/Contrast.cpp:395
+#: export/ExportCL.cpp:358
+#: export/ExportMultiple.cpp:344
msgid "Export"
msgstr ""
-#: ../src/Benchmark.cpp:223 ../src/effects/ClickRemoval.cpp:371
-#: ../src/effects/NoiseRemoval.cpp:463 ../src/FreqWindow.cpp:123
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
+#: FreqWindow.cpp:244
+#: FreqWindow.cpp:245
+#: widgets/ErrorDialog.cpp:190
msgid "Close"
msgstr "Kapat"
-#: ../src/effects/Compressor.cpp:385 ../src/effects/Compressor.cpp:393
-#: ../src/widgets/Meter.cpp:293
+#: FreqWindow.cpp:247
+#: FreqWindow.cpp:250
+#: effects/Equalization.cpp:1300
+#: effects/Equalization.cpp:1303
+msgid "Grids"
+msgstr ""
+
+#: FreqWindow.cpp:314
+#: FreqWindow.cpp:516
+#: effects/AutoDuck.cpp:503
+#: effects/AutoDuck.cpp:537
+#: effects/AutoDuck.cpp:806
+#: effects/Compressor.cpp:360
+#: effects/Compressor.cpp:368
+#: effects/Equalization.cpp:1142
+#: effects/Equalization.cpp:1144
+#: effects/Equalization.cpp:1152
+#: effects/Equalization.cpp:1218
+#: effects/Equalization.cpp:1434
+#: effects/Equalization.cpp:1445
+#: effects/Normalize.cpp:372
+#: widgets/Meter.cpp:406
msgid "dB"
msgstr "dB"
#. i18n-hint: This is the abbreviation for "Hertz", or
#. cycles per second.
-#: ../src/import/ImportRaw.cpp:378
+#: FreqWindow.cpp:330
+#: FreqWindow.cpp:556
+#: effects/Equalization.cpp:1183
+#: effects/Equalization.cpp:1214
+#: import/ImportRaw.cpp:409
msgid "Hz"
msgstr "Hz"
-#: ../src/FreqWindow.cpp:463
+#: FreqWindow.cpp:422
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "Spektrumu çizdirmek için, tüm seçili izler aynı örnek oranda olmalıdır."
+
+#: FreqWindow.cpp:449
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "Ãok fazla ses seçilmiÅ. Sesin sadece ilk %.1f saniyesi çözümlenecek."
+
+#: FreqWindow.cpp:500
msgid "Not enough data selected."
msgstr "Seçilen yeterli veri yok."
-#: FreqWindow.cpp:441 effects/AutoDuck.cpp:801
+#: FreqWindow.cpp:564
+#: effects/AutoDuck.cpp:808
msgid "s"
msgstr ""
-#: FreqWindow.cpp:769
+#: FreqWindow.cpp:898
#, c-format
msgid "Cursor: %d Hz (%s) = %d dB Peak: %d Hz (%s) = %.1f dB"
msgstr ""
-#: FreqWindow.cpp:778
+#: FreqWindow.cpp:907
#, c-format
msgid "Cursor: %.4f sec (%d Hz) (%s) = %f, Peak: %.4f sec (%d Hz) (%s) = %.3f"
msgstr ""
-#: ../src/FreqWindow.cpp:996
+#: FreqWindow.cpp:1198
msgid "spectrum.txt"
msgstr "spectrum.txt"
-#: ../src/FreqWindow.cpp:998
+#: FreqWindow.cpp:1200
msgid "Export Spectral Data As:"
msgstr "Olarak İzgel Veriyi Aktar:"
-#: ../src/FreqWindow.cpp:1014 ../src/Menus.cpp:1390
-#: ../src/prefs/KeyConfigPrefs.cpp:173 ../src/Project.cpp:2159
+#: FreqWindow.cpp:1216
+#: LabelDialog.cpp:603
+#: Menus.cpp:2663
+#: effects/Contrast.cpp:587
+#: prefs/KeyConfigPrefs.cpp:319
msgid "Couldn't write to file: "
msgstr "Dosyaya yazılamadı: "
-#: ../src/FreqWindow.cpp:1019
+#: FreqWindow.cpp:1221
msgid "Frequency (Hz)\tLevel (dB)"
msgstr "Frekans (Hz)\tSeviye (dB)"
-#: ../src/FreqWindow.cpp:1025
+#: FreqWindow.cpp:1227
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "Gecikme (saniye)\tFrekans (Hz)\tSeviye"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr ""
+
+#: GStreamerLoader.cpp:212
+msgid ""
+"GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr ""
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr ""
-#: HelpText.cpp:60
+#: HelpText.cpp:92
msgid "Welcome!"
msgstr ""
-#: HelpText.cpp:65
+#: HelpText.cpp:97
msgid "Playing Audio"
msgstr ""
-#: HelpText.cpp:69
+#: HelpText.cpp:101
msgid "Recording Audio"
msgstr ""
@@ -1156,11 +1368,11 @@ msgstr ""
msgid "Unsupported Formats"
msgstr ""
-#: HelpText.cpp:85
+#: HelpText.cpp:133
msgid "Burn to CD"
msgstr ""
-#: HelpText.cpp:89
+#: HelpText.cpp:137
msgid "No Local Help"
msgstr ""
@@ -1189,7 +1401,7 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr ""
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
msgstr ""
#: HelpText.cpp:244
@@ -1213,7 +1425,7 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr ""
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
msgstr ""
#: HelpText.cpp:383
@@ -1224,7 +1436,7 @@ msgstr ""
msgid "<p>Help for Audacity Beta is currently unfinished. For now, a draft manual is available <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">online</a>. Alternatively, click <a href=\"http://www.audacityteam.org/manual/index.php?title=Temporary_HTML_Manual_Export\">here</a> to download a single-page version of the manual which can be viewed in this window."
msgstr ""
-#: ../src/HistoryWindow.cpp:44
+#: HistoryWindow.cpp:53
msgid "Undo History"
msgstr "Geri Al GeçmiÅi"
@@ -1232,7 +1444,7 @@ msgstr "Geri Al GeçmiÅi"
msgid "Manage History"
msgstr ""
-#: ../src/HistoryWindow.cpp:57
+#: HistoryWindow.cpp:78
msgid "Action"
msgstr "Eylem"
@@ -1244,1567 +1456,1610 @@ msgstr ""
msgid "Levels To Discard"
msgstr ""
-#: HistoryWindow.cpp:102
+#: HistoryWindow.cpp:103
msgid "&Discard"
msgstr ""
-#: HistoryWindow.cpp:111 LabelDialog.cpp:135 LabelDialog.cpp:137
-#: effects/Amplify.cpp:214 effects/AutoDuck.cpp:529 effects/AutoDuck.cpp:531
-#: effects/ChangeLength.cpp:187 effects/ChangePitch.cpp:399
-#: effects/ChangeSpeed.cpp:397 effects/ChangeTempo.cpp:301
-#: effects/Compressor.cpp:519 effects/Effect.cpp:389 effects/Effect.cpp:391
-#: effects/Equalization.cpp:1169 effects/Leveller.cpp:269
-#: effects/Normalize.cpp:356 effects/Phaser.cpp:605 effects/Repeat.cpp:274
-#: effects/SpikeCleaner.cpp:191 effects/VST/VSTEffect.cpp:98
-#: effects/Wahwah.cpp:592 effects/ladspa/LadspaEffect.cpp:592
-#: effects/nyquist/Nyquist.cpp:829 export/Export.cpp:791
-#: prefs/FileFormatPrefs.cpp:408 prefs/PrefsDialog.cpp:164
+#: HistoryWindow.cpp:112
+#: effects/ChangeLength.cpp:186
+#: effects/SpikeCleaner.cpp:191
+#: export/ExportCL.cpp:432
msgid "&OK"
msgstr ""
-#: ../src/prefs/DirectoriesPrefs.cpp:114
+#: Internat.cpp:143
msgid "Unable to determine"
msgstr "Tanımlanamadı"
-#: ../src/import/ImportRaw.cpp:354
+#: Internat.cpp:147
+#: import/ImportRaw.cpp:395
msgid "bytes"
msgstr "byte'lar"
-#: Internat.cpp:182
+#: Internat.cpp:149
msgid "KB"
msgstr ""
-#: Internat.cpp:185
+#: Internat.cpp:152
msgid "MB"
msgstr ""
-#: Internat.cpp:188
+#: Internat.cpp:155
msgid "GB"
msgstr ""
-#: LabelDialog.cpp:50
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
+#: LabelDialog.cpp:54
msgid "Track"
msgstr ""
-#: ../src/Menus.cpp:3085
+#: LabelDialog.cpp:55
+#: Menus.cpp:4855
+#: Menus.cpp:4890
msgid "Label"
msgstr "Etiket"
-#: LabelDialog.cpp:54
+#: LabelDialog.cpp:56
+#: TimerRecordDialog.cpp:328
msgid "Start Time"
msgstr ""
-#: LabelDialog.cpp:53
+#: LabelDialog.cpp:57
+#: TimerRecordDialog.cpp:347
msgid "End Time"
msgstr ""
-#: LabelDialog.cpp:98 Menus.cpp:709
-msgid "&Edit Labels"
-msgstr ""
+#: LabelDialog.cpp:100
+#, fuzzy
+msgid "Edit Labels"
+msgstr "Etiketler"
-#: LabelDialog.cpp:113
+#: LabelDialog.cpp:115
msgid "Press F2 or double click to edit cell contents."
msgstr ""
-#: LabelDialog.cpp:124
+#: LabelDialog.cpp:126
msgid "Insert &After"
msgstr ""
-#: LabelDialog.cpp:125
+#: LabelDialog.cpp:127
msgid "Insert &Before"
msgstr ""
-#: LabelDialog.cpp:127 Menus.cpp:234
+#: LabelDialog.cpp:129
msgid "&Import..."
msgstr ""
-#: LabelDialog.cpp:163
+#: LabelDialog.cpp:157
msgid "New..."
msgstr ""
-#: LabelDialog.cpp:352
-msgid "You have left blank label names. These will be\n"
+#: LabelDialog.cpp:354
+msgid ""
+"You have left blank label names. These will be\n"
"skipped when repopulating the Label Tracks.\n"
"\n"
"Would you like to go back and provide names?"
msgstr ""
-#: LabelDialog.cpp:350
+#: LabelDialog.cpp:355
+#: LangChoice.cpp:130
msgid "Confirm"
msgstr ""
-#: ../src/Menus.cpp:2628
+#: LabelDialog.cpp:516
+#: Menus.cpp:4273
msgid "Select a text file containing labels..."
msgstr "Bir Metin dosyası içeren etiketler seçin..."
-#: ../src/Menus.cpp:2632
+#: LabelDialog.cpp:520
+#: Menus.cpp:4277
msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
msgstr "Metin dosyaları (*.txt)|*.txt|Tüm dosyalar (*.*)|*.*"
-#: ../src/import/ImportMIDI.cpp:31 ../src/Menus.cpp:2644
-#: ../src/Project.cpp:1820 ../src/Project.cpp:1828
+#: LabelDialog.cpp:534
+#: Menus.cpp:4289
+#: Project.cpp:2116
+#: Project.cpp:2124
msgid "Could not open file: "
msgstr "Dosya açılamadı: "
-#: LabelDialog.cpp:549
+#: LabelDialog.cpp:560
msgid "No labels to export."
msgstr ""
-#: ../src/Menus.cpp:1355
+#: LabelDialog.cpp:566
+#: Menus.cpp:2626
msgid "Export Labels As:"
msgstr "Olarak Etikete Aktar:"
-#: ../src/Menus.cpp:1353
+#: LabelDialog.cpp:568
+#: Menus.cpp:2624
msgid "labels.txt"
msgstr "labels.txt"
-#: LabelDialog.cpp:690
+#: LabelDialog.cpp:703
#, fuzzy
msgid "New Label Track"
msgstr "Yeni Eti&ket İzi"
-#: LabelDialog.cpp:691
+#: LabelDialog.cpp:704
msgid "Enter track name"
msgstr ""
-#: LabelDialog.cpp:692 LabelDialog.h:50 LabelTrack.cpp:87 Menus.cpp:645
+#: LabelDialog.cpp:705
+#: LabelDialog.h:52
+#: LabelTrack.cpp:92
#, fuzzy
-msgid "&Label Track"
+msgid "Label Track"
msgstr "Etiket İzi"
-#: ../src/LangChoice.cpp:47
+#: LangChoice.cpp:58
msgid "Audacity First Run"
msgstr "Audacity İlk Kez ÃalıÅtırma"
-#: ../src/LangChoice.cpp:74
+#: LangChoice.cpp:90
msgid "Choose Language for Audacity to use:"
msgstr "Kullanılacak Audacity için Dili Seç"
-#: ../src/Legacy.cpp:337
+#: LangChoice.cpp:125
+#, c-format
+msgid "The language you have chosen, %s (%s), is not the same as the system language, %s (%s)."
+msgstr ""
+
+#: Legacy.cpp:372
#, c-format
-msgid "Converted a 1.0 project file to the new format.\n"
+msgid ""
+"Converted a 1.0 project file to the new format.\n"
"The old file has been saved as '%s'"
-msgstr "1.0 proje dosyası yeni biçeme dönüÅtürüldü.\n"
+msgstr ""
+"1.0 proje dosyası yeni biçeme dönüÅtürüldü.\n"
"Eski dosya '%s' olarak kaydedildi"
-#: ../src/Legacy.cpp:338
+#: Legacy.cpp:373
msgid "Opening Audacity Project"
msgstr "Audacity Projesi Açılıyor"
-#: ../src/Menus.cpp:139
+#: Menus.cpp:196
msgid "&File"
msgstr "&Dosya"
-#: ../src/Menus.cpp:141
-msgid "&New\tCtrl+N"
-msgstr "Ye&ni\tCtrl+N"
-
-#: ../src/Menus.cpp:143
-msgid "&Open...\tCtrl+O"
-msgstr "&Aç...\tCtrl+O"
+#: Menus.cpp:215
+msgid "&Close"
+msgstr "&Kapat"
-#: ../src/Menus.cpp:145
-msgid "&Close\tCtrl+W"
-msgstr "&Kapat\tCtrl+W"
+#: Menus.cpp:218
+msgid "&Save Project"
+msgstr "Projeyi &Kaydet"
-#: ../src/Menus.cpp:146
-msgid "&Save Project\tCtrl+S"
-msgstr "Projeyi &Kaydet\tCtrl+S"
-
-#: ../src/Menus.cpp:150
+#: Menus.cpp:221
msgid "Save Project &As..."
msgstr "Projeyi Farklı K&aydet:"
-#: Menus.cpp:212
+#: Menus.cpp:223
msgid "Save Compressed Copy of Project..."
msgstr ""
-#: Menus.cpp:223
+#: Menus.cpp:227
msgid "Chec&k Dependencies..."
msgstr ""
-#: Menus.cpp:185
+#: Menus.cpp:231
msgid "Open Me&tadata Editor..."
msgstr ""
-#: import/ImportRaw.cpp:447
+#: Menus.cpp:239
+#: import/ImportRaw.cpp:421
msgid "&Import"
msgstr ""
-#: Menus.cpp:236
-msgid "&Audio...\tCtrl+Shift+I"
+#: Menus.cpp:241
+msgid "&Audio..."
msgstr ""
-#: Menus.cpp:237
+#: Menus.cpp:242
msgid "&Labels..."
msgstr ""
-#: Menus.cpp:238
+#: Menus.cpp:244
msgid "&MIDI..."
msgstr ""
-#: Menus.cpp:239
+#: Menus.cpp:246
msgid "&Raw Data..."
msgstr ""
-#: Menus.cpp:208 Menus.cpp:237
+#: Menus.cpp:261
msgid "Expo&rt Selection..."
msgstr ""
-#: ../src/Menus.cpp:173
+#: Menus.cpp:269
msgid "Export &Labels..."
msgstr "Etiket&leri Aktar..."
-#: ../src/Menus.cpp:174
+#: Menus.cpp:272
msgid "Export &Multiple..."
msgstr "Ãoklu A&ktar..."
-#: Menus.cpp:257
+#: Menus.cpp:276
msgid "Export MIDI..."
msgstr ""
-#: Menus.cpp:290
-msgid "CleanSpeech C&hain..."
+#: Menus.cpp:282
+msgid "Appl&y Chain..."
msgstr ""
-#: Menus.cpp:340 Menus.cpp:354
+#: Menus.cpp:285
msgid "Edit C&hains..."
msgstr ""
-#: Menus.cpp:292
+#: Menus.cpp:288
msgid "Export CleanSpeech &Presets..."
msgstr ""
-#: Menus.cpp:293
+#: Menus.cpp:289
msgid "I&mport CleanSpeech Presets..."
msgstr ""
-#: Menus.cpp:352
-msgid "Appl&y Chain..."
-msgstr ""
-
-#: Menus.cpp:358
+#: Menus.cpp:296
msgid "&Upload File..."
msgstr ""
-#: Menus.cpp:363
+#: Menus.cpp:301
#, fuzzy
msgid "Pa&ge Setup..."
msgstr "Sayfa Ayarı..."
-#: Menus.cpp:364
+#: Menus.cpp:304
msgid "&Print..."
msgstr ""
-#: Menus.cpp:382 Menus.cpp:385
-msgid "E&xit\tCtrl+Q"
+#: Menus.cpp:313
+msgid "E&xit"
msgstr ""
-#: ../src/Menus.cpp:227
+#: Menus.cpp:323
msgid "&Edit"
msgstr "&Düzenle"
-#: ../src/Menus.cpp:231
-msgid "&Undo\tCtrl+Z"
-msgstr "&Geri Al\tCtrl+Z"
+#: Menus.cpp:328
+msgid "&Undo"
+msgstr "&Geri Al"
-#: ../src/Menus.cpp:239
+#: Menus.cpp:340
msgid "&Redo"
msgstr "İle&ri Al"
-#: ../src/Menus.cpp:252
-msgid "Cu&t\tCtrl+X"
-msgstr "Ke&s\tCtrl+X"
+#: Menus.cpp:346
+msgid "Cu&t"
+msgstr "Ke&s"
-#: Menus.cpp:420
-msgid "Spl&it Cut\tCtrl+Alt+X"
+#: Menus.cpp:349
+msgid "Spl&it Cut"
msgstr ""
-#: ../src/Menus.cpp:253
-msgid "&Copy\tCtrl+C"
-msgstr "&Kopyala\tCtrl+C"
+#: Menus.cpp:350
+msgid "&Copy"
+msgstr "&Kopyala"
-#: ../src/Menus.cpp:254
-msgid "&Paste\tCtrl+V"
-msgstr "Ya&pıÅtır\tCtrl+V"
+#: Menus.cpp:353
+msgid "&Paste"
+msgstr "Ya&pıÅtır"
-#: Menus.cpp:426
-msgid "Tri&m\tCtrl+T"
+#: Menus.cpp:356
+msgid "Tri&m"
msgstr ""
-#: ../src/Menus.cpp:260
-msgid "&Delete\tCtrl+K"
-msgstr "&Sil\tCtrl+K"
+#: Menus.cpp:360
+#: Menus.cpp:399
+msgid "&Delete"
+msgstr "&Sil"
-#: Menus.cpp:429
-msgid "Split D&elete\tCtrl+Alt+K"
+#: Menus.cpp:361
+msgid "Split D&elete"
msgstr ""
-#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
+#: Menus.cpp:362
+msgid "Silence Audi&o"
msgstr ""
-#: Menus.cpp:432
-msgid "Sp&lit\tCtrl+I"
+#: Menus.cpp:366
+msgid "Sp&lit"
msgstr ""
-#: Menus.cpp:342
-msgid "Split Ne&w\tCtrl+Alt+I"
+#: Menus.cpp:370
+msgid "Split Ne&w"
msgstr ""
-#: Menus.cpp:442
-msgid "&Join\tCtrl+J"
+#: Menus.cpp:374
+#: Menus.cpp:406
+msgid "&Join"
msgstr ""
-#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
+#: Menus.cpp:375
+#: Menus.cpp:407
+msgid "Detac&h at Silences"
msgstr ""
-#: Menus.cpp:445
-msgid "Duplic&ate\tCtrl+D"
+#: Menus.cpp:376
+msgid "Duplic&ate"
msgstr ""
-#: Menus.cpp:400 Menus.cpp:639
+#: Menus.cpp:381
+#: Menus.cpp:617
msgid "Stereo Trac&k to Mono"
msgstr ""
-#: Menus.cpp:407
+#: Menus.cpp:390
msgid "La&beled Regions"
msgstr ""
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:460
-msgid "&Cut\tAlt+X"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:465
-msgid "&Split Cut\tShift+Alt+X"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:470
-msgid "Co&py\tShift+Alt+C"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:476
-msgid "&Delete\tAlt+K"
+#: Menus.cpp:393
+msgid "&Cut"
msgstr ""
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:481
-msgid "Sp&lit Delete\tShift+Alt+K"
+#: Menus.cpp:394
+msgid "&Split Cut"
msgstr ""
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:486
-msgid "Sile&nce\tAlt+L"
+#: Menus.cpp:395
+msgid "Co&py"
msgstr ""
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:492
-msgid "Spli&t\tAlt+I"
+#: Menus.cpp:400
+msgid "Sp&lit Delete"
msgstr ""
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:497
-msgid "&Join\tAlt+J"
+#: Menus.cpp:401
+msgid "Sile&nce"
msgstr ""
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
+#: Menus.cpp:405
+msgid "Spli&t"
msgstr ""
-#: Menus.cpp:456
+#: Menus.cpp:413
msgid "&Select"
msgstr ""
-#: ../src/Menus.cpp:269
-msgid "&All\tCtrl+A"
-msgstr "&Tüm\tCtrl+A"
+#: Menus.cpp:416
+msgid "&All"
+msgstr "&Tüm"
-#: Menus.cpp:415
-msgid "&None\tCtrl+Shift+A"
+#: Menus.cpp:417
+msgid "&None"
msgstr ""
-#: Menus.cpp:462
-msgid "&Left at Playback Position\t["
+#: Menus.cpp:419
+msgid "&Left at Playback Position"
msgstr ""
-#: Menus.cpp:463
-msgid "&Right at Playback Position\t]"
+#: Menus.cpp:420
+msgid "&Right at Playback Position"
msgstr ""
-#: Menus.cpp:467
-msgid "Track &Start to Cursor\tShift+J"
+#: Menus.cpp:424
+msgid "Track &Start to Cursor"
msgstr ""
-#: Menus.cpp:468
-msgid "Cursor to Track &End\tShift+K"
+#: Menus.cpp:425
+msgid "Cursor to Track &End"
msgstr ""
-#: Menus.cpp:525
+#: Menus.cpp:431
#, fuzzy
-msgid "Find &Zero Crossings\tZ"
-msgstr "Sıfır Kesmelerini Bul\tZ"
+msgid "Find &Zero Crossings"
+msgstr "Sıfır Kesmelerini Bul"
-#: Menus.cpp:476
+#: Menus.cpp:435
msgid "Mo&ve Cursor"
msgstr ""
-#: Menus.cpp:478
+#: Menus.cpp:437
#, fuzzy
msgid "to Selection Star&t"
msgstr "Seçimi BaÅlatmak için"
-#: Menus.cpp:479
+#: Menus.cpp:438
#, fuzzy
msgid "to Selection En&d"
msgstr "Seçimi Sonlandırmak için"
-#: Menus.cpp:483
-msgid "to Track &Start\tJ"
+#: Menus.cpp:440
+msgid "to Track &Start"
msgstr ""
-#: Menus.cpp:484
-msgid "to Track &End\tK"
+#: Menus.cpp:441
+msgid "to Track &End"
msgstr ""
-#: Menus.cpp:491
+#: Menus.cpp:449
msgid "Re&gion Save"
msgstr ""
-#: Menus.cpp:492
+#: Menus.cpp:452
msgid "Regio&n Restore"
msgstr ""
-#: Menus.cpp:503
+#: Menus.cpp:460
msgid "Pla&y Region"
msgstr ""
-#: Menus.cpp:504
+#: Menus.cpp:462
msgid "&Lock"
msgstr ""
-#: Menus.cpp:505
+#: Menus.cpp:465
msgid "&Unlock"
msgstr ""
-#: ../src/Menus.cpp:311
-msgid "Turn Snap-To On"
-msgstr ""
-
-#: ../src/Menus.cpp:312
-msgid "Turn Snap-To Off"
-msgstr ""
-
-#: ../src/Menus.cpp:313
-msgid "Turn Grid Snap On"
-msgstr ""
-
-#: ../src/Menus.cpp:314
-msgid "Turn Grid Snap Off"
+#: Menus.cpp:485
+msgid "Pre&ferences..."
msgstr ""
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
-#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr ""
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
-msgstr ""
-
-#: ../src/Menus.cpp:345
+#: Menus.cpp:495
msgid "&View"
msgstr "Görünü&m"
-#: ../src/Menus.cpp:347
-msgid "Zoom &In\tCtrl+1"
-msgstr "Yak&ınlaÅ\tCtrl+1"
+#: Menus.cpp:498
+msgid "Zoom &In"
+msgstr "Yak&ınlaÅ"
-#: ../src/Menus.cpp:350
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "&Normal Odaklama\tCtrl+2"
+#: Menus.cpp:501
+msgid "Zoom &Normal"
+msgstr "&Normal Odaklama"
-#: ../src/Menus.cpp:351
-msgid "Zoom &Out\tCtrl+3"
-msgstr "&UzaklaÅ\tCtrl+3"
+#: Menus.cpp:502
+msgid "Zoom &Out"
+msgstr "&UzaklaÅ"
-#: ../src/Menus.cpp:354
-msgid "&Fit in Window\tCtrl+F"
-msgstr "&Pencereye SıÄdır\tCtrl+F"
+#: Menus.cpp:506
+msgid "&Fit in Window"
+msgstr "&Pencereye SıÄdır"
-#: ../src/Menus.cpp:355
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "DüÅey Olarak &SıÄdır\tCtrl+Shift+F"
+#: Menus.cpp:507
+msgid "Fit &Vertically"
+msgstr "DüÅey Olarak &SıÄdır"
-#: ../src/Menus.cpp:356
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "Seçime &YaklaÅ\tCtrl+E"
+#: Menus.cpp:508
+msgid "&Zoom to Selection"
+msgstr "Seçime &YaklaÅ"
-#: Menus.cpp:603
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
+#: Menus.cpp:512
+msgid "&Collapse All Tracks"
msgstr ""
-#: Menus.cpp:604
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
+#: Menus.cpp:513
+msgid "E&xpand All Tracks"
msgstr ""
-#: Menus.cpp:551
+#: Menus.cpp:517
msgid "&Show Clipping"
msgstr ""
-#: ../src/Menus.cpp:364
+#: Menus.cpp:522
msgid "&History..."
msgstr "&GeçmiÅ..."
-#: Menus.cpp:566
+#: Menus.cpp:530
msgid "&Toolbars"
msgstr ""
-#: Menus.cpp:567
+#: Menus.cpp:532
msgid "&Control Toolbar"
msgstr ""
-#: Menus.cpp:568
+#: Menus.cpp:533
msgid "&Device Toolbar"
msgstr ""
-#: Menus.cpp:569
+#: Menus.cpp:534
msgid "&Edit Toolbar"
msgstr ""
-#: Menus.cpp:570
+#: Menus.cpp:535
msgid "&Meter Toolbar"
msgstr ""
-#: Menus.cpp:571
+#: Menus.cpp:536
msgid "Mi&xer Toolbar"
msgstr ""
-#: Menus.cpp:572
+#: Menus.cpp:537
msgid "&Selection Toolbar"
msgstr ""
-#: Menus.cpp:573
+#: Menus.cpp:538
msgid "T&ools Toolbar"
msgstr ""
-#: Menus.cpp:574
+#: Menus.cpp:539
msgid "Transcri&ption Toolbar"
msgstr ""
-#: Menus.cpp:576
+#: Menus.cpp:543
msgid "&Reset Toolbars"
msgstr ""
-#: Menus.cpp:578
+#: Menus.cpp:551
msgid "!Simplified View"
msgstr ""
#. i18n-hint: 'Transport' is the name given to the set of controls that
#. play, record, pause etc.
-#: Menus.cpp:587
+#: Menus.cpp:562
msgid "T&ransport"
msgstr ""
-#: Menus.cpp:591
-msgid "Play\tSpace"
+#: Menus.cpp:565
+#: toolbars/ControlToolBar.cpp:173
+msgid "Play"
msgstr ""
-#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
+#: Menus.cpp:566
+msgid "&Loop Play"
msgstr ""
-#: Menus.cpp:593
-msgid "&Pause\tP"
+#: Menus.cpp:567
+msgid "&Pause"
msgstr ""
-#: Menus.cpp:596
-msgid "&Stop\tSpace"
+#: Menus.cpp:570
+msgid "&Stop"
msgstr ""
-#: ../src/Menus.cpp:566
-msgid "Skip to Start\tHome"
-msgstr "BaÅlamayı Atla\tHome"
+#: Menus.cpp:573
+#: toolbars/ControlToolBar.cpp:208
+msgid "Skip to Start"
+msgstr "BaÅlamayı Atla"
-#: ../src/Menus.cpp:567
-msgid "Skip to End\tEnd"
-msgstr "Sonlamayı Atla\tEnd"
+#: Menus.cpp:574
+#: toolbars/ControlToolBar.cpp:209
+msgid "Skip to End"
+msgstr "Sonlamayı Atla"
-#: Menus.cpp:600
-msgid "&Record\tR"
+#: Menus.cpp:578
+msgid "&Record"
msgstr ""
-#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
+#: Menus.cpp:579
+msgid "&Timer Record..."
msgstr ""
-#: Menus.cpp:604
-msgid "Append Record\tShift+R"
+#: Menus.cpp:580
+msgid "Append Record"
msgstr ""
-#: Menus.cpp:607
+#: Menus.cpp:584
msgid "Overdub (on/off)"
msgstr ""
-#: Menus.cpp:609
+#: Menus.cpp:585
msgid "Software Playthrough (on/off)"
msgstr ""
-#: Menus.cpp:612
+#: Menus.cpp:588
msgid "Sound Activated Recording (on/off)"
msgstr ""
-#: Menus.cpp:614
+#: Menus.cpp:589
msgid "Sound Activation Level..."
msgstr ""
-#: Menus.cpp:635
+#: Menus.cpp:597
msgid "&Tracks"
msgstr ""
-#: Menus.cpp:629
+#: Menus.cpp:602
msgid "Add &New"
msgstr ""
-#: Menus.cpp:643
-msgid "&Audio Track\tCtrl+Shift+N"
+#: Menus.cpp:604
+msgid "&Audio Track"
msgstr ""
-#: Menus.cpp:644
+#: Menus.cpp:605
msgid "&Stereo Track"
msgstr ""
-#: Menus.cpp:646 TimeTrack.cpp:44
+#: Menus.cpp:606
+#, fuzzy
+msgid "&Label Track"
+msgstr "Etiket İzi"
+
+#: Menus.cpp:607
#, fuzzy
msgid "&Time Track"
msgstr "Zaman İzi"
-#: Menus.cpp:643
+#: Menus.cpp:620
msgid "Mi&x and Render"
msgstr ""
-#: Menus.cpp:564
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
+#: Menus.cpp:623
+msgid "Mix and Render to New Track"
msgstr ""
-#: Menus.cpp:662
+#: Menus.cpp:626
msgid "&Resample..."
msgstr ""
-#: ../src/Menus.cpp:398
+#: Menus.cpp:632
msgid "Remo&ve Tracks"
msgstr "İ&zleri Kaldır"
-#: Menus.cpp:667
-msgid "&Mute All Tracks\tCtrl+U"
+#: Menus.cpp:638
+msgid "&Mute All Tracks"
msgstr ""
-#: Menus.cpp:668
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
+#: Menus.cpp:639
+msgid "&UnMute All Tracks"
msgstr ""
-#: ../src/Menus.cpp:405
+#: Menus.cpp:644
msgid "Align with &Zero"
msgstr "Sıfıra &Yasla"
-#: ../src/Menus.cpp:406
+#: Menus.cpp:645
msgid "Align with &Cursor"
msgstr "O&k ile birlikte yasla"
-#: ../src/Menus.cpp:407
+#: Menus.cpp:646
msgid "Align with Selection &Start"
msgstr "Seçim BaÅlangıcı ile Ya&sla"
-#: ../src/Menus.cpp:408
+#: Menus.cpp:647
msgid "Align with Selection &End"
msgstr "S&eçim Sonu ile Yasla"
-#: Menus.cpp:676
+#: Menus.cpp:648
#, fuzzy
msgid "Align End with Cu&rsor"
msgstr "Ok ile Sona Yasla"
-#: Menus.cpp:677
+#: Menus.cpp:649
#, fuzzy
msgid "Align End with Selection Star&t"
msgstr "Seçim BaÅlangıcı ile Sona Yasla"
-#: Menus.cpp:678
+#: Menus.cpp:650
#, fuzzy
msgid "Align End with Selection En&d"
msgstr "Seçim Sonu ile Sona Yasla"
-#: Menus.cpp:679
+#: Menus.cpp:651
#, fuzzy
msgid "Align Tracks To&gether"
msgstr "İzleri Birlikte Yasla"
-#: Menus.cpp:681
+#: Menus.cpp:653
msgid "&Align Tracks"
msgstr ""
-#: Menus.cpp:690
+#: Menus.cpp:668
msgid "Ali&gn and Move Cursor"
msgstr ""
-#: Menus.cpp:697
+#: Menus.cpp:680
msgid "Synchronize MIDI with Audio"
msgstr ""
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
+#: Menus.cpp:687
+msgid "&Link Audio and Label Tracks"
msgstr ""
-#: Menus.cpp:705
-#, fuzzy
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "Seçimde Etiket Ekle\tCtrl+B"
+#: Menus.cpp:691
+msgid "Add Label At &Selection"
+msgstr ""
-#: Menus.cpp:706
+#: Menus.cpp:694
#, fuzzy
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "Yeniden Ãalma Konumunda Etiket Ekle\tCtrl+M"
+msgid "Add Label At &Playback Position"
+msgstr "Yeniden Ãalma Konumunda Etiket Ekle"
-#: Menus.cpp:716
+#: Menus.cpp:697
+msgid "&Edit Labels"
+msgstr ""
+
+#: Menus.cpp:703
msgid "S&ort tracks"
msgstr ""
-#: Menus.cpp:717
+#: Menus.cpp:705
msgid "by &Start time"
msgstr ""
-#: Menus.cpp:719
+#: Menus.cpp:708
msgid "by &Name"
msgstr ""
-#: ../src/Menus.cpp:441
+#: Menus.cpp:722
msgid "&Generate"
msgstr "&OluÅtur"
-#: Menus.cpp:776 Menus.cpp:860 Menus.cpp:922
+#: Menus.cpp:767
+#: Menus.cpp:852
+#: Menus.cpp:922
msgid "Unsorted"
msgstr ""
-#: ../src/Menus.cpp:464
+#: Menus.cpp:789
msgid "Effe&ct"
msgstr "Et&ki"
-#: ../src/Menus.cpp:468
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "Son Etkiyi Tekrarla\tCtrl+R"
-
-#: ../src/Menus.cpp:494
+#: Menus.cpp:873
msgid "&Analyze"
msgstr "Ãözüml&e"
-#: Menus.cpp:692
+#: Menus.cpp:875
+msgid "Contrast..."
+msgstr ""
+
+#: Menus.cpp:878
msgid "Plot Spectrum..."
msgstr ""
-#. i18n-hint: The name of the Help menu
-#: ../src/Menus.cpp:521 ../src/Menus.cpp:537
+#: Menus.cpp:945
+#: Menus.cpp:948
msgid "&Help"
msgstr "&Yardım"
-#: Menus.cpp:829
+#: Menus.cpp:952
msgid "&About Audacity CleanSpeech..."
msgstr ""
-#: Menus.cpp:735
+#: Menus.cpp:958
msgid "&Show Welcome Message..."
msgstr ""
-#: Menus.cpp:736
-msgid "&Index..."
+#: Menus.cpp:959
+msgid "&Help..."
msgstr ""
-#: Menus.cpp:959
+#: Menus.cpp:960
msgid "Show &Log..."
msgstr ""
-#: Menus.cpp:744
+#: Menus.cpp:966
msgid "&Screenshot Tools..."
msgstr ""
-#: ../src/Menus.cpp:530
+#: Menus.cpp:971
msgid "&Run Benchmark..."
msgstr "DenektaÅı'nı ÃalıÅtı&r..."
-#: Menus.cpp:749
+#: Menus.cpp:976
msgid "&Audio Device Info..."
msgstr ""
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
+#: Menus.cpp:987
+msgid "Move backward from toolbars to tracks"
msgstr ""
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
+#: Menus.cpp:988
+msgid "Move forward from toolbars to tracks"
msgstr ""
-#: ../src/Menus.cpp:546
-msgid "Selection Tool\tF1"
-msgstr "Seçim Aracı\tF1"
-
-#: ../src/Menus.cpp:547
-msgid "Envelope Tool\tF2"
-msgstr "Zarf Aracı\tF2"
-
-#: ../src/Menus.cpp:548
-msgid "Draw Tool\tF3"
-msgstr "Ãizim Aracı\tF3"
+#: Menus.cpp:990
+#: toolbars/ToolsToolBar.cpp:147
+#: toolbars/ToolsToolBar.cpp:186
+msgid "Selection Tool"
+msgstr "Seçim Aracı"
-#: ../src/Menus.cpp:549
-msgid "Zoom Tool\tF4"
-msgstr "Odaklanma Aracı\tF4"
+#: Menus.cpp:991
+#: toolbars/ToolsToolBar.cpp:148
+#: toolbars/ToolsToolBar.cpp:187
+msgid "Envelope Tool"
+msgstr "Zarf Aracı"
-#: ../src/Menus.cpp:550
-msgid "Time Shift Tool\tF5"
-msgstr "Zaman Ãteleme Aracı\tF5"
+#: Menus.cpp:992
+#: toolbars/ToolsToolBar.cpp:151
+#: toolbars/ToolsToolBar.cpp:188
+msgid "Draw Tool"
+msgstr "Ãizim Aracı"
-#: ../src/Menus.cpp:551
-msgid "Multi Tool\tF6"
-msgstr "Ãoklu Araç\tF6"
+#: Menus.cpp:993
+#: toolbars/ToolsToolBar.cpp:150
+#: toolbars/ToolsToolBar.cpp:189
+msgid "Zoom Tool"
+msgstr "Odaklanma Aracı"
-#: ../src/Menus.cpp:553
-msgid "Next Tool\tD"
-msgstr "Sonraki Araç\tD"
+#: Menus.cpp:994
+#: toolbars/ToolsToolBar.cpp:149
+msgid "Time Shift Tool"
+msgstr "Zaman Ãteleme Aracı"
-#: ../src/Menus.cpp:554
-msgid "Previous Tool\tA"
-msgstr "Ãnceki Araç\tA"
+#: Menus.cpp:995
+#: toolbars/ToolsToolBar.cpp:191
+msgid "Multi Tool"
+msgstr "Ãoklu Araç"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
-msgstr ""
+msgid "Next Tool"
+msgstr "Sonraki Araç"
-#: ../src/Menus.cpp:557
-msgid "Stop\tS"
-msgstr "Durdur\tS"
+#: Menus.cpp:998
+msgid "Previous Tool"
+msgstr "Ãnceki Araç"
-#: ../src/Menus.cpp:558
-msgid "Pause\tP"
-msgstr "Duraklat\tP"
-
-#: ../src/Menus.cpp:559
-msgid "Record\tR"
-msgstr "Kayıt\tR"
-
-#: Menus.cpp:999
-msgid "Record Append\tShift+R"
+#: Menus.cpp:1000
+msgid "Play/Stop"
msgstr ""
#: Menus.cpp:1001
-msgid "Play/Stop and Set Cursor\tShift+A"
+msgid "Play/Stop and Set Cursor"
msgstr ""
-#: ../src/Menus.cpp:561
-msgid "Play One Second\t1"
-msgstr "Bir Saniye Oynat\t1"
+#: Menus.cpp:1002
+msgid "Play One Second"
+msgstr "Bir Saniye Oynat"
-#: ../src/Menus.cpp:562
-msgid "Play To Selection\tB"
-msgstr "Seçimde Oynat\tB"
+#: Menus.cpp:1003
+msgid "Play To Selection"
+msgstr "Seçimde Oynat"
-#: ../src/Menus.cpp:563
-msgid "Play Looped\tL"
+#: Menus.cpp:1004
+msgid "Play Cut Preview"
msgstr ""
+#: Menus.cpp:1006
+msgid "Selection to Start"
+msgstr "BaÅlangıçtaki Seçim"
+
+#: Menus.cpp:1007
+msgid "Selection to End"
+msgstr "Sondaki Seçim"
+
#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
+msgid "DeleteKey"
+msgstr "SilTuÅu"
-#: Menus.cpp:873
-msgid "Play Cut Preview\tC"
+#: Menus.cpp:1013
+msgid "DeleteKey2"
+msgstr "SilTuÅu2"
+
+#: Menus.cpp:1019
+msgid "Short seek left during playback"
msgstr ""
-#: ../src/Menus.cpp:569
-msgid "Selection to Start\tShift+Home"
-msgstr "BaÅlangıçtaki Seçim\tShift+Home"
+#: Menus.cpp:1020
+msgid "Short seek right during playback"
+msgstr ""
-#: ../src/Menus.cpp:570
-msgid "Selection to End\tShift+End"
-msgstr "Sondaki Seçim\tShift+End"
+#: Menus.cpp:1021
+msgid "Long seek left during playback"
+msgstr ""
-#: ../src/Menus.cpp:572
-msgid "DeleteKey\tBackspace"
-msgstr "SilTuÅu\tBackspace"
+#: Menus.cpp:1022
+msgid "Long Seek right during playback"
+msgstr ""
-#: ../src/Menus.cpp:577
-msgid "DeleteKey2\tDelete"
-msgstr "SilTuÅu2\tDelete"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous Track"
+msgstr ""
-#: Menus.cpp:892
-msgid "Seek left short period during playback\tLeft"
+#: Menus.cpp:1028
+msgid "Move Focus to Previous and Select"
msgstr ""
-#: Menus.cpp:893
-msgid "Seek right short period during playback\tRight"
+#: Menus.cpp:1029
+msgid "Move Focus to Next Track"
msgstr ""
-#: Menus.cpp:894
-msgid "Seek left long period during playback\tShift+Left"
+#: Menus.cpp:1030
+msgid "Move Focus to Next and Select"
msgstr ""
-#: Menus.cpp:895
-msgid "Seek right long period during playback\tShift+Right"
+#: Menus.cpp:1031
+#: Menus.cpp:1032
+msgid "Toggle Focused Track"
msgstr ""
-#: Menus.cpp:899
-msgid "Move Focus to Previous Track\tUp"
+#: Menus.cpp:1034
+msgid "Cursor Left"
+msgstr "Sol İmleç"
+
+#: Menus.cpp:1035
+msgid "Cursor Right"
+msgstr "SaÄ Ä°mleç"
+
+#: Menus.cpp:1036
+msgid "Cursor Short Jump Left"
msgstr ""
-#: Menus.cpp:900
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
+#: Menus.cpp:1037
+msgid "Cursor Short Jump Right"
msgstr ""
-#: Menus.cpp:901
-msgid "Move Focus to Next Track\tDown"
+#: Menus.cpp:1038
+msgid "Cursor Long Jump Left"
msgstr ""
-#: Menus.cpp:902
-msgid "Move Focus to Next and Change Selection\tShift+Down"
+#: Menus.cpp:1039
+msgid "Cursor Long Jump Right"
msgstr ""
-#: Menus.cpp:903
-msgid "Toggle Focused Track\tReturn"
+#: Menus.cpp:1041
+msgid "Selection Extend Left"
+msgstr "Seçimi Sola GeniÅlet"
+
+#: Menus.cpp:1042
+msgid "Selection Extend Right"
+msgstr "Seçimi SaÄa GeniÅlet"
+
+#: Menus.cpp:1044
+msgid "Set (or Extend) Left Selection"
msgstr ""
-#: Menus.cpp:904
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
+#: Menus.cpp:1045
+msgid "Set (or Extend) Right Selection"
msgstr ""
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
+#: Menus.cpp:1047
+msgid "Selection Contract Left"
msgstr ""
-#: ../src/Menus.cpp:582
-msgid "Cursor Left\tLeft"
-msgstr "Sol İmleç\tSol"
+#: Menus.cpp:1048
+msgid "Selection Contract Right"
+msgstr ""
-#: ../src/Menus.cpp:583
-msgid "Cursor Right\tRight"
-msgstr "SaÄ Ä°mleç\tSaÄ"
+#: Menus.cpp:1050
+msgid "Change pan on focused track"
+msgstr ""
-#: Menus.cpp:820
-msgid "Cursor Short Jump Left\t,"
+#: Menus.cpp:1051
+msgid "Pan left on focused track"
msgstr ""
-#: Menus.cpp:821
-msgid "Cursor Short Jump Right\t."
+#: Menus.cpp:1052
+msgid "Pan right on focused track"
msgstr ""
-#: Menus.cpp:822
-msgid "Cursor Long Jump Left\tShift+,"
+#: Menus.cpp:1053
+msgid "Change gain on focused track"
msgstr ""
-#: Menus.cpp:823
-msgid "Cursor Long Jump Right\tShift+."
+#: Menus.cpp:1054
+msgid "Increase gain on focused track"
msgstr ""
-#: ../src/Menus.cpp:584
-msgid "Selection Extend Left\tShift+Left"
-msgstr "Seçimi Sola GeniÅlet\tShift+Left"
+#: Menus.cpp:1055
+msgid "Decrease gain on focused track"
+msgstr ""
-#: ../src/Menus.cpp:585
-msgid "Selection Extend Right\tShift+Right"
-msgstr "Seçimi SaÄa GeniÅlet\tShift+Right"
+#: Menus.cpp:1056
+msgid "Open menu on focused track"
+msgstr ""
-#: Menus.cpp:828
-msgid "Set (or Extend) Left Selection"
+#: Menus.cpp:1057
+msgid "Mute/Unmute focused track"
msgstr ""
-#: Menus.cpp:829
-msgid "Set (or Extend) Right Selection"
+#: Menus.cpp:1058
+msgid "Solo/Unsolo focused track"
msgstr ""
-#: ../src/Menus.cpp:586
-msgid "Selection Contract Left\tCtrl+Shift+Right"
+#: Menus.cpp:1059
+msgid "Close focused track"
msgstr ""
-#: ../src/Menus.cpp:587
-msgid "Selection Contract Right\tCtrl+Shift+Left"
+#: Menus.cpp:1061
+msgid "Snap To On"
msgstr ""
-#: Menus.cpp:916
-msgid "Change pan on focused track\tShift+P"
+#: Menus.cpp:1062
+msgid "Snap To Off"
msgstr ""
-#: Menus.cpp:917
-msgid "Pan left on focused track\tAlt+Shift+Left"
+#: Menus.cpp:1066
+msgid "Full screen on/off"
msgstr ""
-#: Menus.cpp:918
-msgid "Pan right on focused track\tAlt+Shift+Right"
+#: Menus.cpp:1068
+msgid "Adjust output gain"
msgstr ""
-#: Menus.cpp:919
-msgid "Change gain on focused track\tShift+G"
+#: Menus.cpp:1069
+msgid "Increase output gain"
msgstr ""
-#: Menus.cpp:920
-msgid "Increase gain on focused track\tAlt+Shift+Up"
+#: Menus.cpp:1070
+msgid "Decrease output gain"
msgstr ""
-#: Menus.cpp:921
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
+#: Menus.cpp:1071
+msgid "Adjust input gain"
msgstr ""
-#: Menus.cpp:922
-msgid "Open menu on focused track\tShift+M"
+#: Menus.cpp:1072
+msgid "Increase input gain"
msgstr ""
-#: Menus.cpp:923
-msgid "Mute/Unmute focused track\tShift+U"
+#: Menus.cpp:1073
+msgid "Decrease input gain"
msgstr ""
-#: Menus.cpp:924
-msgid "Solo/Unsolo focused track\tShift+S"
+#: Menus.cpp:1075
+msgid "Adjust input source"
msgstr ""
-#: Menus.cpp:925
-msgid "Close focused track\tShift+C"
+#: Menus.cpp:1079
+msgid "Play at speed"
msgstr ""
-#: Menus.cpp:845
-msgid "Snap To On"
+#: Menus.cpp:1080
+msgid "Adjust playback speed"
msgstr ""
-#: Menus.cpp:846
-msgid "Snap To Off"
+#: Menus.cpp:1081
+msgid "Increase playback speed"
msgstr ""
-#: Menus.cpp:1071
-msgid "Full screen on/off\tF11"
+#: Menus.cpp:1082
+msgid "Decrease playback speed"
msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
-#: Menus.cpp:939
+#: Menus.cpp:1167
msgid "Open Recent"
msgstr ""
#. i18n-hint: This is the name of the menu item on Windows and Linux
-#: Menus.cpp:1161
+#: Menus.cpp:1170
msgid "Recent &Files"
msgstr ""
-#: ../src/Menus.cpp:617
+#: Menus.cpp:1188
#, c-format
msgid "&Undo %s"
msgstr "&Geri Al %s"
-#: ../src/Menus.cpp:623
+#: Menus.cpp:1214
msgid "Can't Undo"
msgstr "Geri Alınamadı"
-#: ../src/Menus.cpp:630
+#: Menus.cpp:1223
#, c-format
msgid "&Redo %s"
msgstr "Ge&ri Al %s"
-#: ../src/Menus.cpp:636
+#: Menus.cpp:1229
msgid "Can't Redo"
msgstr "İleri Alınamadı"
-#: Menus.cpp:1557
+#: Menus.cpp:1874
msgid "Sort By Time"
msgstr ""
-#: Menus.cpp:1557
+#: Menus.cpp:1874
msgid "Tracks sorted by time"
msgstr ""
-#: Menus.cpp:1583
+#: Menus.cpp:1900
msgid "Sort By Name"
msgstr ""
-#: Menus.cpp:1583
+#: Menus.cpp:1900
msgid "Tracks sorted by name"
msgstr ""
-#: Menus.cpp:1710
-msgid "Set Left Selection Bound"
+#: Menus.cpp:2051
+#: Menus.cpp:2087
+msgid "Position"
msgstr ""
-#: Menus.cpp:1744
-msgid "Set Right Selection Bound"
-msgstr ""
+#: Menus.cpp:2051
+#, fuzzy
+msgid "Set Left Selection Boundary"
+msgstr "Seçim Noktasını Ayarla"
+
+#: Menus.cpp:2087
+#, fuzzy
+msgid "Set Right Selection Boundary"
+msgstr "Seçim Noktasını Ayarla"
-#: ../src/Menus.cpp:1222
+#: Menus.cpp:2444
msgid "You must select a track first."
msgstr "İlk izi seçmelisiniz."
-#: ../src/Menus.cpp:1245
+#: Menus.cpp:2479
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "%s Tekrarla\tCtrl+R"
+msgid "Repeat %s"
+msgstr "%s Tekrarla"
-#: ../src/Menus.cpp:1349
+#: Menus.cpp:2620
msgid "There are no label tracks to export."
msgstr "Aktarılacak etiket izleri yok."
-#: Menus.cpp:2608
+#: Menus.cpp:2715
msgid "Export MIDI As:"
msgstr ""
-#: Menus.cpp:2612
+#: Menus.cpp:2719
msgid "MIDI file (*.mid)|*.mid|Allegro file (*.gro)|*.gro"
msgstr ""
-#: Menus.cpp:2644
-msgid "You have selected a filename with an unrecognized file extension.\n"
+#: Menus.cpp:2751
+msgid ""
+"You have selected a filename with an unrecognized file extension.\n"
"Do you want to continue?"
msgstr ""
-#: Menus.cpp:2645
+#: Menus.cpp:2752
msgid "Export MIDI"
msgstr ""
-#: ../src/Menus.cpp:1633
+#: Menus.cpp:2830
msgid "Nothing to undo"
msgstr "Geri alınacak hiçbirÅey yok"
-#: ../src/Menus.cpp:1652
+#: Menus.cpp:2851
msgid "Nothing to redo"
msgstr "İleri alınacak hiçbirÅey yok"
-#: ../src/EditToolBar.cpp:148 ../src/Menus.cpp:1710
+#: Menus.cpp:2958
+#: TrackPanel.cpp:652
+#: toolbars/EditToolBar.cpp:130
+#: toolbars/EditToolBar.cpp:190
msgid "Cut"
msgstr "Kes"
-#: ../src/Menus.cpp:1710
+#: Menus.cpp:2958
msgid "Cut to the clipboard"
msgstr "Panoda kes"
-#: Menus.cpp:2468
+#: Menus.cpp:2997
msgid "Split Cut"
msgstr ""
-#: Menus.cpp:2468
+#: Menus.cpp:2997
msgid "Split-cut to the clipboard"
msgstr ""
-#: ../src/EditToolBar.cpp:152 ../src/Menus.cpp:1815 ../src/Menus.cpp:1859
+#: Menus.cpp:3063
+#: Menus.cpp:3128
+#: Menus.cpp:3209
+#: Menus.cpp:3408
+#: TrackPanel.cpp:654
+#: toolbars/EditToolBar.cpp:134
+#: toolbars/EditToolBar.cpp:192
msgid "Paste"
msgstr "YapıÅtır"
-#: Menus.cpp:2530
+#: Menus.cpp:3063
msgid "Pasted text from the clipboard"
msgstr ""
-#: ../src/Menus.cpp:1815 ../src/Menus.cpp:1859
+#: Menus.cpp:3128
+#: Menus.cpp:3209
+#: Menus.cpp:3408
msgid "Pasted from the clipboard"
msgstr "Panodan yapıÅtır"
-#: Menus.cpp:3053
+#: Menus.cpp:3277
msgid "Pasting one type of track into another is not allowed."
msgstr ""
-#: Menus.cpp:2628
+#: Menus.cpp:3289
msgid "Copying stereo audio into a mono track is not allowed."
msgstr ""
-#: ../src/Menus.cpp:1899
+#: Menus.cpp:3444
+#: toolbars/EditToolBar.cpp:193
msgid "Trim"
msgstr "Kırp"
-#: ../src/Menus.cpp:1899
+#: Menus.cpp:3444
msgid "Trim file to selection"
msgstr "Seçilecek dosyayı kırp"
-#: Menus.cpp:2747
+#: Menus.cpp:3473
#, c-format
msgid "Split-deleted %.2f seconds at t=%.2f"
msgstr ""
-#: Menus.cpp:2750
+#: Menus.cpp:3476
msgid "Split Delete"
msgstr ""
-#: Menus.cpp:2771
+#: Menus.cpp:3497
#, c-format
msgid "Disjoined %.2f seconds at t=%.2f"
msgstr ""
-#: Menus.cpp:2774
+#: Menus.cpp:3500
msgid "Disjoin"
msgstr ""
-#: Menus.cpp:2795
+#: Menus.cpp:3521
#, c-format
msgid "Joined %.2f seconds at t=%.2f"
msgstr ""
-#: Menus.cpp:2798
+#: Menus.cpp:3524
msgid "Join"
msgstr ""
-#: ../src/Menus.cpp:1923
+#: Menus.cpp:3543
#, c-format
msgid "Silenced selected tracks for %.2f seconds at %.2f"
msgstr "%.2f'deki %.2f saniye için seçilen izler susturuldu"
-#: ../src/Menus.cpp:1925
+#: Menus.cpp:3545
+#: toolbars/EditToolBar.cpp:194
msgid "Silence"
msgstr "Sessizlik"
-#: ../src/Menus.cpp:1959
+#: Menus.cpp:3575
msgid "Duplicate"
msgstr "ÃoÄalt"
-#: ../src/Menus.cpp:1959
+#: Menus.cpp:3575
msgid "Duplicated"
msgstr "ÃoÄaltıldı"
-#: Menus.cpp:2872
+#: Menus.cpp:3594
msgid "Cut Labels"
msgstr ""
-#: Menus.cpp:2872
+#: Menus.cpp:3594
msgid "Cut labeled regions to the clipboard"
msgstr ""
-#: Menus.cpp:2886
+#: Menus.cpp:3608
msgid "SplitCut labeled regions to the clipboard"
msgstr ""
-#: Menus.cpp:2887
+#: Menus.cpp:3609
msgid "Split Cut Labels"
msgstr ""
-#: Menus.cpp:2901
+#: Menus.cpp:3623
msgid "Copied labeled regions to the clipboard"
msgstr ""
-#: Menus.cpp:2901
+#: Menus.cpp:3623
msgid "Copy Labels"
msgstr ""
-#: Menus.cpp:2913
+#: Menus.cpp:3635
msgid "Delete Labels"
msgstr ""
-#: Menus.cpp:2913
+#: Menus.cpp:3635
msgid "Deleted labeled regions"
msgstr ""
-#: Menus.cpp:2925
+#: Menus.cpp:3647
msgid "Split Delete Labels"
msgstr ""
-#: Menus.cpp:2925
+#: Menus.cpp:3647
msgid "Split Deleted labeled regions"
msgstr ""
-#: Menus.cpp:2937
+#: Menus.cpp:3659
msgid "Silence Labels"
msgstr ""
-#: Menus.cpp:2937
+#: Menus.cpp:3659
msgid "Silenced labeled regions"
msgstr ""
-#: Menus.cpp:2949
+#: Menus.cpp:3671
msgid "Split Labels"
msgstr ""
-#: Menus.cpp:2949
+#: Menus.cpp:3671
msgid "Split labeled regions"
msgstr ""
-#: Menus.cpp:2961
+#: Menus.cpp:3683
msgid "Join Labels"
msgstr ""
-#: Menus.cpp:2961
+#: Menus.cpp:3683
msgid "Joined labeled regions"
msgstr ""
-#: Menus.cpp:2973
+#: Menus.cpp:3695
msgid "Disjoin Labels"
msgstr ""
-#: Menus.cpp:2973
+#: Menus.cpp:3695
msgid "Disjoined labeled regions"
msgstr ""
-#: ../src/Menus.cpp:2006 ../src/TrackPanel.cpp:4134
+#: Menus.cpp:3717
+#: TrackPanel.cpp:6257
msgid "Split"
msgstr "Böl"
-#: Menus.cpp:3089
+#: Menus.cpp:3806
msgid "Split New"
msgstr ""
-#: Menus.cpp:3089
+#: Menus.cpp:3806
msgid "Split to new track"
msgstr ""
-#: ../src/Menus.cpp:2089
+#: Menus.cpp:3888
msgid "Split at labels"
msgstr "Etiketlerde böl"
-#: ../src/Menus.cpp:2366
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "Spektrumu çizdirmek için, tüm seçili izler aynı örnek oranda olmalıdır."
-
-#: ../src/Menus.cpp:2392
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "Ãok fazla ses seçilmiÅ. Sesin sadece ilk %.1f saniyesi çözümlenecek."
-
-#: ../src/Menus.cpp:2657
+#: Menus.cpp:4302
#, c-format
msgid "Imported labels from '%s'"
msgstr "'%s' den etiketler alındı"
-#: ../src/Menus.cpp:2658
+#: Menus.cpp:4303
msgid "Import Labels"
msgstr "Etiketleri Al"
-#: ../src/Menus.cpp:2669
+#: Menus.cpp:4314
msgid "Select a MIDI file..."
msgstr "Bir MIDI dosyası seçin..."
-#: Menus.cpp:4147
+#: Menus.cpp:4318
msgid "MIDI and Allegro files (*.mid;*.midi;*.gro)|*.mid;*.midi;*.gro|MIDI files (*.mid;*.midi)|*.mid;*.midi|Allegro files (*.gro)|*.gro|All files (*.*)|*.*"
msgstr ""
-#: ../src/Menus.cpp:2691
+#: Menus.cpp:4334
#, c-format
msgid "Imported MIDI from '%s'"
msgstr "'%s' den MIDI Alındı"
-#: ../src/Menus.cpp:2693
+#: Menus.cpp:4335
msgid "Import MIDI"
msgstr "MIDI Al"
-#: ../src/Menus.cpp:2706
+#: Menus.cpp:4349
msgid "Select any uncompressed audio file..."
msgstr "Herhangi açılmamıŠses dosyası seçin..."
-#: ../src/Menus.cpp:2710
+#: Menus.cpp:4353
msgid "All files (*)|*"
msgstr "Tüm dosyalar (*)|*"
-#: Menus.cpp:3630
+#: Menus.cpp:4377
msgid "Edit the metadata tags"
msgstr ""
-#: Menus.cpp:3631
+#: Menus.cpp:4378
+#: export/Export.cpp:348
msgid "Edit Metadata"
msgstr ""
-#: Menus.cpp:3631
+#: Menus.cpp:4378
msgid "Edit Metadata tags"
msgstr ""
-#: Menus.cpp:3749
+#: Menus.cpp:4433
#, c-format
msgid "Rendered all audio in track '%s'"
msgstr ""
-#: Menus.cpp:3750
+#: Menus.cpp:4434
msgid "Render"
msgstr ""
-#: Menus.cpp:3755
+#: Menus.cpp:4439
#, c-format
msgid "Mixed and rendered %d tracks into one new stereo track"
msgstr ""
-#: Menus.cpp:3758
+#: Menus.cpp:4442
#, c-format
msgid "Mixed and rendered %d tracks into one new mono track"
msgstr ""
-#: Menus.cpp:658 Menus.cpp:3760 Mix.cpp:119
-msgid "&Mix and Render"
+#: Menus.cpp:4444
+#: Mix.cpp:120
+msgid "Mix and Render"
msgstr ""
-#: ../src/Menus.cpp:2889
+#: Menus.cpp:4576
msgid "Aligned with zero"
msgstr "Sıfıra hizalı"
-#: ../src/Menus.cpp:2893
+#: Menus.cpp:4580
msgid "Aligned cursor"
msgstr "Hizalı ok"
-#: ../src/Menus.cpp:2897
+#: Menus.cpp:4584
msgid "Aligned with selection start"
msgstr "Seçim baÅlangıcı ile hizalı"
-#: ../src/Menus.cpp:2901
+#: Menus.cpp:4588
msgid "Aligned with selection end"
msgstr "Seçim sonu ile hizalı"
-#: ../src/Menus.cpp:2905
+#: Menus.cpp:4592
msgid "Aligned end with cursor"
msgstr "Ok ile sona hizalanmıÅ"
-#: ../src/Menus.cpp:2909
+#: Menus.cpp:4596
msgid "Aligned end with selection start"
msgstr "Seçim baÅlangıcı ile sona hizalanmıÅ"
-#: ../src/Menus.cpp:2913
+#: Menus.cpp:4600
msgid "Aligned end with selection end"
msgstr "Seçim sonu ile sona hizalanmıÅ"
-#: ../src/Menus.cpp:2917
+#: Menus.cpp:4604
msgid "Aligned"
msgstr "Hizalı"
-#: ../src/Menus.cpp:2950
+#: Menus.cpp:4637
msgid "Align"
msgstr "Hizala"
-#: Menus.cpp:4550
+#: Menus.cpp:4723
msgid "Sync MIDI with Audio"
msgstr ""
-#: Menus.cpp:4554
+#: Menus.cpp:4727
msgid "Alignment completed."
msgstr ""
-#: ../src/Menus.cpp:2974
+#: Menus.cpp:4738
msgid "Created new audio track"
msgstr "Yeni ses izi oluÅturuldu"
-#: ../src/Menus.cpp:2974 ../src/Menus.cpp:2998 ../src/Menus.cpp:3013
-#: ../src/Menus.cpp:3049
+#: Menus.cpp:4738
+#: Menus.cpp:4760
+#: Menus.cpp:4775
+#: Menus.cpp:4795
msgid "New Track"
msgstr "Yeni İz"
-#: ../src/Menus.cpp:2998
+#: Menus.cpp:4760
msgid "Created new stereo audio track"
msgstr "Yeni çiftli ses izi oluÅturuldu"
-#: ../src/Menus.cpp:3013
+#: Menus.cpp:4775
msgid "Created new label track"
msgstr "Yeni etiket izi oluÅturuldu"
-#: ../src/Menus.cpp:3038
+#: Menus.cpp:4784
msgid "The version of Audacity you are using does not support multiple time tracks."
msgstr "KullandıÄınız Audacity sürümü çoklu zaman izlerini desteklemiyor."
-#: ../src/Menus.cpp:3049
+#: Menus.cpp:4795
msgid "Created new time track"
msgstr "Yeni zaman izi oluÅturuldu"
-#: ../src/Menus.cpp:3085
+#: Menus.cpp:4855
msgid "Added label"
msgstr "EklenmiÅ etiket"
-#: Menus.cpp:4119
+#: Menus.cpp:4890
msgid "Edited labels"
msgstr ""
-#: Menus.cpp:4146
+#: Menus.cpp:4917
msgid "Save CleanSpeech Preset File As:"
msgstr ""
-#: Menus.cpp:4150
+#: Menus.cpp:4921
msgid "CleanSpeech Presets (*.csp)|*.csp"
msgstr ""
-#: ../src/export/Export.cpp:185
+#: Menus.cpp:4928
+#: export/Export.cpp:610
msgid "Sorry, pathnames longer than 256 characters not supported."
msgstr "Ãzgünüm, 256 karakterden uzun yol isimleri desteklenmiyor."
-#: Menus.cpp:4203
+#: Menus.cpp:4974
msgid "Problem encountered exporting presets."
msgstr ""
-#: Menus.cpp:4204 export/Export.cpp:136
+#: Menus.cpp:4975
+#: export/Export.cpp:472
msgid "Unable to export"
msgstr ""
-#: ../src/Menus.cpp:3119
+#: Menus.cpp:5158
msgid "Remove Track"
msgstr "İzi Kaldır"
-#: ../src/Menus.cpp:3119
+#: Menus.cpp:5158
msgid "Removed audio track(s)"
msgstr "Ses izi(leri) kaldırıldı"
-#: Menus.cpp:4480 Menus.cpp:4499
+#: Menus.cpp:5314
+#: Menus.cpp:5370
+#: export/ExportFFmpeg.cpp:756
+#: export/ExportMP3.cpp:1785
msgid "Resample"
msgstr ""
-#: Menus.cpp:5159 TrackPanel.cpp:6361
+#: Menus.cpp:5335
+#: TrackPanel.cpp:6481
msgid "New sample rate (Hz):"
msgstr ""
-#: Menus.cpp:4486
+#: Menus.cpp:5359
+#: TrackPanel.cpp:6505
msgid "The entered value is invalid"
msgstr ""
-#: Menus.cpp:4497
+#: Menus.cpp:5368
#, c-format
msgid "Resampling track %d"
msgstr ""
-#: Menus.cpp:4508
+#: Menus.cpp:5377
msgid "Resample Track"
msgstr ""
-#: Menus.cpp:4508
+#: Menus.cpp:5377
msgid "Resampled audio track(s)"
msgstr ""
-#: ../src/Mix.cpp:74 ../src/Mix.cpp:82
+#: Mix.cpp:95
+#: Mix.cpp:102
msgid "Mix"
msgstr "KarıÅtır"
-#: Mix.cpp:120
+#: Mix.cpp:121
msgid "Mixing and rendering tracks"
msgstr ""
-#: ../src/NoteTrack.cpp:30
+#: NoteTrack.cpp:43
msgid "Note Track"
msgstr "Not İzi"
-#: ../src/Menus.cpp:1614
+#: Printing.cpp:160
msgid "There was a problem printing."
msgstr "Bir yazdırma sorunu var."
-#: ../src/Menus.cpp:1615
+#: Printing.cpp:161
msgid "Print"
msgstr "Yazdır"
-#: Project.cpp:573
+#: Project.cpp:671
+msgid "Repeat Last Effect"
+msgstr ""
+
+#: Project.cpp:776
msgid "Main Mix"
msgstr ""
-#: Project.cpp:693
+#: Project.cpp:894
#, c-format
msgid "Welcome to Audacity version %s"
msgstr ""
-#: Project.cpp:831
+#: Project.cpp:1049
msgid "(Recovered)"
msgstr ""
-#: ../src/ControlToolBar.cpp:469 ../src/Project.cpp:1707
-#: ../src/TrackPanel.cpp:1208
+#: Project.cpp:1718
+#: TrackPanel.cpp:846
+#: toolbars/ControlToolBar.cpp:187
msgid "Record"
msgstr "Kayıt"
-#: ../src/Project.cpp:1707 ../src/TrackPanel.cpp:1208
+#: Project.cpp:1718
+#: TrackPanel.cpp:846
msgid "Recorded Audio"
msgstr "Kayıtlı Ses"
-#: ../src/Project.cpp:1716
+#: Project.cpp:1736
msgid "Save changes before closing?"
msgstr "Kapatmadan önce deÄiÅiklikler kaydedilsin mi?"
-#: Project.cpp:1570
-msgid "\n"
+#: Project.cpp:1739
+msgid ""
+"\n"
"If saved, the project will have no tracks.\n"
"\n"
"To save any previously open tracks:\n"
@@ -2812,25 +3067,27 @@ msgid "\n"
"are open, then File > Save Project."
msgstr ""
-#: ../src/Project.cpp:1717
+#: Project.cpp:1742
msgid "Save changes?"
msgstr "DeÄiÅiklikler kaydedilsin mi?"
-#: Project.cpp:1684
-msgid "All files|*.*|All supported files|"
+#: Project.cpp:1954
+msgid "All files|*|All supported files|"
msgstr ""
-#: ../src/Menus.cpp:2592 ../src/Project.cpp:1738
+#: Project.cpp:1984
msgid "Select one or more audio files..."
msgstr "Bir ya da daha fazla ses dosyası seçin..."
-#: Project.cpp:1736
+#: Project.cpp:2011
msgid "Audacity projects|*.aup|"
msgstr ""
-#: Project.cpp:1885 Project.cpp:2307
+#: Project.cpp:2071
+#: Project.cpp:2506
#, c-format
-msgid "This file was saved by Audacity %s, a much\n"
+msgid ""
+"This file was saved by Audacity %s, a much\n"
"older version. The format has changed.\n"
"\n"
"Audacity could corrupt the file in opening\n"
@@ -2839,80 +3096,103 @@ msgid "This file was saved by Audacity %s, a much\n"
"Open this file now?"
msgstr ""
-#: Project.cpp:1886
+#: Project.cpp:2072
msgid "1.0 or earlier"
msgstr ""
-#: Project.cpp:1902
+#: Project.cpp:2078
+#: Project.cpp:2518
msgid "Opening old project file"
msgstr ""
-#: ../src/Project.cpp:1821 ../src/Project.cpp:1829
+#: Project.cpp:2102
+msgid ""
+"You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2103
+msgid "Backup file detected"
+msgstr ""
+
+#: Project.cpp:2117
+#: Project.cpp:2125
+#: xml/XMLWriter.cpp:306
msgid "Error opening file"
msgstr "Dosya açılıyorken hata"
-#: Project.cpp:1585
+#: Project.cpp:2131
#, c-format
-msgid "File may be invalid or corrupted: \n"
+msgid ""
+"File may be invalid or corrupted: \n"
"%s"
msgstr ""
-#: Project.cpp:1586
+#: Project.cpp:2132
msgid "Error opening file or project"
msgstr ""
-#: ../src/Project.cpp:1842
+#: Project.cpp:2152
msgid "Audacity was unable to convert an Audacity 1.0 project to the new project format."
msgstr "Audacity yeni proje biçeminde bir Audacity 1.0 projesine dönüÅtürülemedi."
-#: Project.cpp:1706
+#: Project.cpp:2259
msgid "Could not remove old auto save file"
msgstr ""
-#: Project.cpp:1708
+#: Project.cpp:2261
msgid "Project was recovered"
msgstr ""
-#: Project.cpp:1708
+#: Project.cpp:2261
msgid "Recover"
msgstr ""
-#: Project.cpp:1737
+#: Project.cpp:2290
msgid "Project checker repaired file"
msgstr ""
-#: Project.cpp:1737 effects/Repair.h:29
+#: Project.cpp:2290
+#: effects/Repair.h:29
msgid "Repair"
msgstr ""
-#: ../src/Project.cpp:1941
+#: Project.cpp:2431
#, c-format
msgid "Couldn't find the project data folder: \"%s\""
msgstr "Proje veri klasörü bulunamadı: \"%s\""
-#: ../src/Project.cpp:1985
+#: Project.cpp:2475
#, c-format
-msgid "This file was saved using Audacity %s.\n"
+msgid ""
+"This file was saved using Audacity %s.\n"
"You are using Audacity %s - you need to upgrade to\n"
"a newer version to open this file."
-msgstr "Bu dosya %s Audacity kullanarak kaydedilmiÅ.\n"
+msgstr ""
+"Bu dosya %s Audacity kullanarak kaydedilmiÅ.\n"
"%s Audacity kullanıyorsunuz - bu dosyayı açmak için\n"
" daha yeni bir sürüme yükseltmeye ihtiyacınız var."
-#: ../src/Project.cpp:1991
+#: Project.cpp:2479
msgid "Can't open project file"
msgstr "Proje dosyası açılamadı"
-#: Project.cpp:2314
+#: Project.cpp:2513
#, c-format
-msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+msgid ""
+"This file was saved by Audacity %s.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
msgstr ""
-#: Project.cpp:2537
-msgid "Your project is now empty.\n"
+#: Project.cpp:2711
+msgid ""
+"Your project is now empty.\n"
"If saved, the project will have no tracks.\n"
"\n"
"To save any previously open tracks:\n"
@@ -2922,50 +3202,59 @@ msgid "Your project is now empty.\n"
"Save anyway?"
msgstr ""
-#: Project.cpp:2538
+#: Project.cpp:2712
msgid "Warning empty project"
msgstr ""
-#: Project.cpp:2591
+#: Project.cpp:2821
#, c-format
-msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+msgid ""
+"Could not save project. Perhaps %s \n"
+"is not writable or the disk is full."
msgstr ""
-#: ../src/Project.cpp:2148 ../src/Project.cpp:2160
+#: Project.cpp:2823
+#: Project.cpp:2849
msgid "Error saving project"
msgstr "Projeyi kaydediyorken hata"
-#: ../src/Project.cpp:2200
+#: Project.cpp:2847
+#: Project.cpp:3950
+#: Tags.cpp:1203
+#: effects/Equalization.cpp:1095
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
+#: Project.cpp:2927
#, c-format
msgid "Saved %s"
msgstr "%s kaydedildi"
-#: ../src/Project.cpp:2282
+#: Project.cpp:3080
#, c-format
msgid "Imported '%s'"
msgstr "Alındı '%s'"
-#: ../src/import/ImportPCM.cpp:403 ../src/import/ImportPCM.cpp:488
-#: ../src/import/ImportRaw.cpp:408 ../src/Project.cpp:2236
-#: ../src/Project.cpp:2283
+#: Project.cpp:3081
msgid "Import"
msgstr "Al"
-#: ../src/Project.cpp:2340
+#: Project.cpp:3116
msgid "Error importing"
msgstr "Aktarma hatası"
-#: Project.cpp:2365
+#: Project.cpp:3163
msgid "Save Speech As:"
msgstr ""
-#: Project.cpp:2621
+#: Project.cpp:3165
msgid "Windows PCM Audio file (*.wav)|*.wav"
msgstr ""
-#: Project.cpp:2894
-msgid "Audacity compressed project files (.aup) save your work in a smaller, compressed (.ogg) format. \n"
+#: Project.cpp:3172
+msgid ""
+"Audacity compressed project files (.aup) save your work in a smaller, compressed (.ogg) format. \n"
"Compressed project files are a good way to transmit your project online, because they are much smaller. \n"
"To open a compressed project takes longer than usual, as it imports each compressed track. \n"
"\n"
@@ -2974,144 +3263,344 @@ msgid "Audacity compressed project files (.aup) save your work in a smaller, com
"Export commands."
msgstr ""
-#: Project.cpp:2897
-msgid "You are saving an Audacity project file (.aup).\n"
+#: Project.cpp:3175
+msgid ""
+"You are saving an Audacity project file (.aup).\n"
"\n"
"Saving a project creates a file that only Audacity can open.\n"
"\n"
"To save an audio file for other programs, use one of the \"File > Export\" commands.\n"
msgstr ""
-#: ../src/Project.cpp:2378
+#: Project.cpp:3177
+#, fuzzy
+msgid "Save Project As..."
+msgstr "Projeyi Farklı K&aydet:"
+
+#: Project.cpp:3179
msgid "Audacity projects (*.aup)|*.aup"
msgstr "Audacity projeleri (*.aup)|*.aup"
-#: ../src/Project.cpp:2414
+#: Project.cpp:3228
msgid "Created new project"
msgstr "Yeni proje oluÅturuldu"
-#: ../src/Project.cpp:2527
+#: Project.cpp:3372
#, c-format
msgid "Deleted %.2f seconds at t=%.2f"
msgstr "t=%.2f de %.2f saniye silindi"
-#: ../src/Project.cpp:2530
+#: Project.cpp:3375
+#: effects/Equalization.cpp:1295
+#: effects/Equalization.cpp:2647
msgid "Delete"
msgstr "Sil"
-#: Project.cpp:2738
+#: Project.cpp:3569
#, c-format
msgid "Disk space remains for recording %d hours and %d minutes."
msgstr ""
-#: Project.cpp:2741
+#: Project.cpp:3572
#, c-format
msgid "Disk space remains for recording 1 hour and %d minutes."
msgstr ""
-#: Project.cpp:2744
+#: Project.cpp:3575
#, c-format
msgid "Disk space remains for recording %d minutes."
msgstr ""
-#: Project.cpp:2747
+#: Project.cpp:3578
#, c-format
msgid "Disk space remains for recording %d seconds."
msgstr ""
-#: ../src/Project.cpp:2706
+#: Project.cpp:3581
msgid "Out of disk space"
msgstr "Disk boÅluÄunun dıÅında"
-#: Project.cpp:3336
+#: Project.cpp:3594
#, c-format
msgid "Import(s) complete. Running %d on-demand waveform calculations. Overall %2.0f%% complete."
msgstr ""
-#: Project.cpp:3339
+#: Project.cpp:3597
#, c-format
msgid "Import complete. Running an on-demand waveform calculation. %2.0f%% complete."
msgstr ""
-#: Project.cpp:3027
+#: Project.cpp:3881
msgid "Could not remove old autosave file: "
msgstr ""
-#: Project.cpp:3068
+#: Project.cpp:3922
msgid "New Project"
msgstr ""
-#: Project.cpp:3081
+#: Project.cpp:3952
msgid "Error writing autosave file"
msgstr ""
-#: Project.cpp:3102
+#: Project.cpp:3967
msgid "Could not create autosave file: "
msgstr ""
-#: Project.cpp:3385
+#: Project.cpp:3993
#, c-format
msgid "Actual Rate: %d"
msgstr ""
-#: ../src/Resample.cpp:35
+#: Resample.cpp:62
msgid "Libresample by Dominic Mazzoni and Julius Smith"
msgstr "Dominik Mazzoni ve Julius Smith tarafından Libyenidenörnekleme"
-#: ../src/Resample.cpp:46
+#: Resample.cpp:73
msgid "High-quality Sinc Interpolation"
msgstr "Yüksek-kalite Sinüs AradeÄerlemesi"
-#: ../src/Resample.cpp:48
+#: Resample.cpp:75
msgid "Fast Sinc Interpolation"
msgstr "En Hızlı Sinüs AradeÄerlemesi"
-#: ../src/Resample.cpp:118
+#: Resample.cpp:141
msgid "Libsamplerate by Erik de Castro Lopo"
msgstr "Erik de Castro Lopo tarafından Libörnekoran"
-#: ../src/Resample.cpp:211
+#: Resample.cpp:230
#, c-format
msgid "Libsamplerate error: %d\n"
msgstr "Libörnekoran hatası: %d\n"
-#: ../src/Resample.cpp:233 ../src/Resample.cpp:243
+#: Resample.cpp:252
+#: Resample.cpp:262
msgid "Resampling disabled."
msgstr "Yeniden örnekleme etkinsizleÅtirildi."
-#. i18n-hint: Audio data bit depth (precison): 16-bit integers
+#. i18n-hint: Audio data bit depth (precision): 16-bit integers
#: SampleFormat.cpp:66
msgid "16-bit PCM"
msgstr ""
-#. i18n-hint: Audio data bit depth (precison): 24-bit integers
+#. i18n-hint: Audio data bit depth (precision): 24-bit integers
#: SampleFormat.cpp:69
msgid "24-bit PCM"
msgstr ""
-#. i18n-hint: Audio data bit depth (precison): 32-bit floating point
+#. i18n-hint: Audio data bit depth (precision): 32-bit floating point
#: SampleFormat.cpp:72
msgid "32-bit float"
msgstr ""
-#: Screenshot.cpp:384
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
+
+#: Screenshot.cpp:328
+#: export/ExportMultiple.cpp:242
+#: prefs/DirectoriesPrefs.cpp:94
+msgid "Choose..."
+msgstr "Seç..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
+
+#: Screenshot.cpp:369
+#: effects/Normalize.cpp:74
+#: effects/Normalize.cpp:75
+msgid "false"
+msgstr ""
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: Screenshot.cpp:381
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr ""
+
+#: Screenshot.cpp:382
+#: effects/Contrast.cpp:410
+#: toolbars/ControlToolBar.cpp:83
+#: toolbars/ControlToolBar.cpp:243
+msgid "Control"
+msgstr ""
+
+#: Screenshot.cpp:388
+#: effects/LoadEffects.cpp:114
+#: toolbars/MixerToolBar.cpp:59
+#: toolbars/MixerToolBar.cpp:245
+msgid "Mixer"
+msgstr ""
+
+#: Screenshot.cpp:389
+#: toolbars/MeterToolBar.cpp:50
+#: toolbars/MeterToolBar.cpp:114
+msgid "Meter"
+msgstr ""
+
+#: Screenshot.cpp:390
+#: toolbars/EditToolBar.cpp:76
+#: toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: Screenshot.cpp:391
+#: prefs/DevicePrefs.cpp:131
+#: prefs/DevicePrefs.cpp:144
+#: prefs/MidiIOPrefs.cpp:137
+#: prefs/MidiIOPrefs.cpp:150
+#: toolbars/DeviceToolBar.cpp:57
+#: toolbars/DeviceToolBar.cpp:196
+msgid "Device"
+msgstr ""
+
+#: Screenshot.cpp:392
+#: toolbars/TranscriptionToolBar.cpp:84
+#: toolbars/TranscriptionToolBar.cpp:253
+msgid "Transcription"
+msgstr ""
+
+#: Screenshot.cpp:398
+#: TrackPanel.cpp:442
+#: TrackPanel.cpp:443
+msgid "Track Panel"
+msgstr ""
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: Screenshot.cpp:400
+#: export/ExportMultiple.cpp:285
+#: export/ExportMultiple.cpp:287
+#: prefs/TracksPrefs.cpp:31
+msgid "Tracks"
+msgstr "İzler"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
+#: Screenshot.cpp:599
msgid "Saved "
msgstr ""
-#: Screenshot.cpp:387
+#: Screenshot.cpp:602
msgid "Error trying to save file: "
msgstr ""
-#: Sequence.cpp:732 Sequence.cpp:742 Sequence.cpp:749
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
+#: Sequence.cpp:799
+#: Sequence.cpp:809
+#: Sequence.cpp:816
msgid "Gap detected in project file\n"
msgstr ""
-#: effects/Effect.cpp:254 effects/Effect.cpp:370 effects/Phaser.cpp:595
-#: effects/Wahwah.cpp:582 effects/audiounits/AudioUnitEffect.cpp:852
+#: ShuttleGui.cpp:2034
+#: effects/Effect.cpp:436
+#: effects/audiounits/AudioUnitEffect.cpp:851
msgid "Pre&view"
msgstr ""
-#: effects/nyquist/Nyquist.cpp:826 effects/nyquist/Nyquist.cpp:990
+#: ShuttleGui.cpp:2041
msgid "&Debug"
msgstr ""
@@ -3123,640 +3612,741 @@ msgstr ""
msgid "Activation level (dB):"
msgstr ""
-#: SplashDialog.cpp:58
-msgid "&Welcome to Audacity!"
+#: SplashDialog.cpp:60
+msgid "Welcome to Audacity!"
msgstr ""
-#: SplashDialog.cpp:110
+#: SplashDialog.cpp:112
msgid "Don't show this again at start up"
msgstr ""
-#: Tags.cpp:621
+#: Tags.cpp:629
msgid "Artist Name"
msgstr ""
-#: Tags.cpp:622
+#: Tags.cpp:630
msgid "Track Title"
msgstr ""
-#: Tags.cpp:623
+#: Tags.cpp:631
msgid "Album Title"
msgstr ""
-#: Tags.cpp:953
+#: Tags.cpp:632
#, fuzzy
msgid "Track Number"
msgstr "İz Sayısı:"
-#: ../src/Tags.cpp:465
+#: Tags.cpp:633
msgid "Year"
msgstr "Yıl"
-#: Tags.cpp:979
+#: Tags.cpp:634
msgid "Genre"
msgstr ""
-#: ../src/Tags.cpp:475
+#: Tags.cpp:635
+#: prefs/MousePrefs.cpp:100
msgid "Comments"
msgstr "Yorumlar"
-#: Tags.cpp:777
+#: Tags.cpp:788
msgid "Use arrow keys (or RETURN key after editing) to navigate fields."
msgstr ""
-#: Tags.cpp:769
-msgid "Tag Name"
+#: Tags.cpp:812
+msgid "Tag"
msgstr ""
-#: Tags.cpp:770
-msgid "Tag Value"
-msgstr ""
+#: Tags.cpp:813
+#, fuzzy
+msgid "Value"
+msgstr "Duraklat"
-#: prefs/KeyConfigPrefs.cpp:114
-msgid "&Clear"
-msgstr ""
+#: Tags.cpp:828
+#, fuzzy
+msgid "Cl&ear"
+msgstr "Yıl"
-#: Tags.cpp:791
+#: Tags.cpp:834
msgid "Genres"
msgstr ""
-#: Tags.cpp:826
+#: Tags.cpp:838
msgid "E&dit..."
msgstr ""
-#: Tags.cpp:827
+#: Tags.cpp:839
msgid "Rese&t..."
msgstr ""
-#: Tags.cpp:1070
+#: Tags.cpp:844
msgid "Template"
msgstr ""
-#: Tags.cpp:1073 prefs/KeyConfigPrefs.cpp:124
+#: Tags.cpp:848
+#: prefs/KeyConfigPrefs.cpp:167
msgid "&Load..."
msgstr ""
-#: Tags.cpp:1078 prefs/KeyConfigPrefs.cpp:123
+#: Tags.cpp:849
+#: prefs/KeyConfigPrefs.cpp:168
msgid "&Save..."
msgstr ""
-#: Tags.cpp:808 Tags.cpp:1434 Tags.cpp:1962
-msgid "S&et Default"
-msgstr ""
+#: Tags.cpp:851
+#, fuzzy
+msgid "Set De&fault"
+msgstr "Oran Ayarla"
-#: Tags.cpp:958 Tags.cpp:1597 Tags.cpp:2326
+#: Tags.cpp:1001
msgid "Edit Genres"
msgstr ""
-#: Tags.cpp:991 Tags.cpp:1003 Tags.cpp:1019 Tags.cpp:1032 Tags.cpp:1635
-#: Tags.cpp:1647 Tags.cpp:1663 Tags.cpp:1676 Tags.cpp:2369 Tags.cpp:2381
-#: Tags.cpp:2397 Tags.cpp:2410
+#: Tags.cpp:1034
+#: Tags.cpp:1046
+#: Tags.cpp:1061
+#: Tags.cpp:1074
msgid "Reset Genres"
msgstr ""
-#: Tags.cpp:991 Tags.cpp:1032 Tags.cpp:1635 Tags.cpp:1676 Tags.cpp:2369
-#: Tags.cpp:2410
+#: Tags.cpp:1034
+#: Tags.cpp:1074
msgid "Unable to save genre file."
msgstr ""
-#: Tags.cpp:1002 Tags.cpp:1646 Tags.cpp:2380
+#: Tags.cpp:1045
msgid "Are you sure you want to reset the genre list to defaults?"
msgstr ""
-#: Tags.cpp:1019 Tags.cpp:1663 Tags.cpp:2397
+#: Tags.cpp:1061
msgid "Unable to open genre file."
msgstr ""
-#: Tags.cpp:1084
+#: Tags.cpp:1096
msgid "Load Metadata As:"
msgstr ""
-#: Tags.cpp:1079 Tags.cpp:1730 Tags.cpp:2453
+#: Tags.cpp:1121
msgid "Error loading metadata"
msgstr ""
-#: Tags.cpp:1054 Tags.cpp:1108 Tags.cpp:1709 Tags.cpp:1745 Tags.cpp:2432
-#: Tags.cpp:2468
+#: Tags.cpp:1150
msgid "Save Metadata As:"
msgstr ""
-#: Theme.cpp:629
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
+#: Theme.cpp:638
#, c-format
-msgid "Audacity could not write file:\n"
+msgid ""
+"Audacity could not write file:\n"
" %s."
msgstr ""
-#: Theme.cpp:647
+#: Theme.cpp:656
#, c-format
-msgid "Audacity could not open file:\n"
+msgid ""
+"Audacity could not open file:\n"
" %s\n"
"for writing."
msgstr ""
-#: Theme.cpp:655
+#: Theme.cpp:664
#, c-format
-msgid "Audacity could not write images to file:\n"
+msgid ""
+"Audacity could not write images to file:\n"
" %s."
msgstr ""
-#: Theme.cpp:790
+#: Theme.cpp:799
#, c-format
-msgid "Audacity could not find file:\n"
+msgid ""
+"Audacity could not find file:\n"
" %s.\n"
"Theme not loaded."
msgstr ""
-#: Theme.cpp:798 Theme.cpp:886
+#: Theme.cpp:807
+#: Theme.cpp:896
#, c-format
-msgid "Audacity could not load file:\n"
+msgid ""
+"Audacity could not load file:\n"
" %s.\n"
"Bad png format perhaps?"
msgstr ""
-#: Theme.cpp:814
-msgid "Audacity could not read its default theme.\n"
+#: Theme.cpp:823
+msgid ""
+"Audacity could not read its default theme.\n"
"Please report the problem."
msgstr ""
-#: Theme.cpp:908
+#: Theme.cpp:918
#, c-format
-msgid "None of the expected theme component files\n"
+msgid ""
+"None of the expected theme component files\n"
" were found in:\n"
" %s."
msgstr ""
-#: Theme.cpp:932
+#: Theme.cpp:942
+#: effects/NoiseRemoval.cpp:172
#, c-format
-msgid "Could not create directory:\n"
+msgid ""
+"Could not create directory:\n"
" %s"
msgstr ""
-#: Theme.cpp:953
+#: Theme.cpp:963
#, c-format
-msgid "Audacity could not save file:\n"
+msgid ""
+"Audacity could not save file:\n"
" %s"
msgstr ""
-#: Theme.cpp:965
+#: Theme.cpp:975
#, c-format
-msgid "All required files in:\n"
+msgid ""
+"All required files in:\n"
" %s\n"
"were already present."
msgstr ""
-#: SmartRecordDialog.cpp:285
+#: TimeDialog.h:29
+#: TimerRecordDialog.cpp:233
+#: TimerRecordDialog.cpp:354
+#: TimerRecordDialog.cpp:358
+#: effects/DtmfGen.cpp:446
+#: effects/Noise.cpp:191
+#: effects/Noise.cpp:207
+#: effects/ToneGen.cpp:279
+#: effects/ToneGen.cpp:291
+#: effects/ToneGen.cpp:323
+#: effects/ToneGen.cpp:335
msgid "Duration"
msgstr ""
-#: SmartRecordDialog.cpp:68
+#: TimeTrack.cpp:44
+#, fuzzy
+msgid "Time Track"
+msgstr "Zaman İzi"
+
+#: TimerRecordDialog.cpp:69
msgid "Audacity Timer Record"
msgstr ""
-#: SmartRecordDialog.cpp:223
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
+#: TimerRecordDialog.cpp:230
msgid "Recording start"
msgstr ""
-#: SmartRecordDialog.cpp:224
+#: TimerRecordDialog.cpp:231
msgid "Recording end"
msgstr ""
-#: TimerRecordDialog.cpp:230
+#: TimerRecordDialog.cpp:237
msgid "Audacity Timer Record Progress"
msgstr ""
-#: SmartRecordDialog.cpp:251
+#: TimerRecordDialog.cpp:316
msgid "Start Date and Time"
msgstr ""
-#: TimerRecordDialog.cpp:274
+#: TimerRecordDialog.cpp:323
msgid "Start Date"
msgstr ""
-#: SmartRecordDialog.cpp:268
+#: TimerRecordDialog.cpp:335
msgid "End Date and Time"
msgstr ""
-#: TimerRecordDialog.cpp:294
+#: TimerRecordDialog.cpp:343
msgid "End Date"
msgstr ""
#. i18n-hint: A time specification like "Sunday 28th October 2007 15:16:17 GMT"
#. * but hopefully translated by wxwidgets will be inserted into this
-#: SmartRecordDialog.cpp:380
+#: TimerRecordDialog.cpp:430
#, c-format
msgid "Waiting to start recording at %s.\n"
msgstr ""
-#: TimerRecordDialog.cpp:382
+#: TimerRecordDialog.cpp:436
msgid "Audacity Timer Record - Waiting for Start"
msgstr ""
-#: TrackPanel.cpp:452 TrackPanel.cpp:453
-msgid "Track Panel"
-msgstr ""
-
-#: ../src/AStatus.cpp:81 ../src/prefs/FileFormatPrefs.cpp:105
-#: ../src/prefs/QualityPrefs.cpp:91 ../src/TrackPanel.cpp:822
+#: TrackPanel.cpp:596
+#: prefs/QualityPrefs.cpp:99
msgid "Other..."
msgstr "DiÄer..."
-#: ../src/TrackPanel.cpp:830 ../src/TrackPanel.cpp:851
-#: ../src/TrackPanel.cpp:860 ../src/TrackPanel.cpp:868
+#: TrackPanel.cpp:604
+#: TrackPanel.cpp:627
+#: TrackPanel.cpp:636
+#: TrackPanel.cpp:644
msgid "Name..."
msgstr "İsim:"
-#: ../src/TrackPanel.cpp:832 ../src/TrackPanel.cpp:853
-#: ../src/TrackPanel.cpp:864 ../src/TrackPanel.cpp:870
+#: TrackPanel.cpp:606
+#: TrackPanel.cpp:629
+#: TrackPanel.cpp:640
+#: TrackPanel.cpp:646
msgid "Move Track Up"
msgstr "İzi AÅaÄı TaÅı"
-#: ../src/TrackPanel.cpp:833 ../src/TrackPanel.cpp:854
-#: ../src/TrackPanel.cpp:865 ../src/TrackPanel.cpp:871
+#: TrackPanel.cpp:607
+#: TrackPanel.cpp:630
+#: TrackPanel.cpp:641
+#: TrackPanel.cpp:647
msgid "Move Track Down"
msgstr "İzi Yukarı TaÅı"
-#: ../src/TrackPanel.cpp:835
+#: TrackPanel.cpp:609
+#: effects/ToneGen.cpp:275
+#: prefs/TracksPrefs.cpp:56
msgid "Waveform"
msgstr "Dalga biçimi"
-#: ../src/TrackPanel.cpp:836
+#: TrackPanel.cpp:610
+#: prefs/TracksPrefs.cpp:57
msgid "Waveform (dB)"
msgstr "Dalga biçimi (dB)"
-#: TrackPanel.cpp:557 prefs/GUIPrefs.cpp:157
+#: TrackPanel.cpp:612
+#: prefs/TracksPrefs.cpp:59
msgid "Spectrum log(f)"
msgstr ""
-#: ../src/TrackPanel.cpp:838
+#. i18n-hint: short form of 'logarithm'
+#: TrackPanel.cpp:613
+#: prefs/TracksPrefs.cpp:60
msgid "Pitch (EAC)"
msgstr "Sıklık (EAC)"
-#: ../src/TrackPanel.cpp:840
+#: TrackPanel.cpp:615
+#: TrackPanel.cpp:6200
msgid "Mono"
msgstr "Tekli"
-#: ../src/TrackPanel.cpp:841
+#: TrackPanel.cpp:616
+#: TrackPanel.cpp:6199
msgid "Left Channel"
msgstr "Sol Kanal"
-#: ../src/TrackPanel.cpp:842
+#: TrackPanel.cpp:617
+#: TrackPanel.cpp:6199
msgid "Right Channel"
msgstr "SaÄ Kanal"
-#: ../src/TrackPanel.cpp:843
+#: TrackPanel.cpp:618
msgid "Make Stereo Track"
msgstr "İkili İz Yap"
-#: ../src/TrackPanel.cpp:844
+#: TrackPanel.cpp:619
msgid "Split Stereo Track"
msgstr "İkili İzi Böl"
-#: ../src/TrackPanel.cpp:846
+#: TrackPanel.cpp:620
+msgid "Split Stereo to Mono"
+msgstr ""
+
+#: TrackPanel.cpp:622
msgid "Set Sample Format"
msgstr "Ãrnek Biçemi Ayarla"
-#: ../src/AStatus.cpp:352 ../src/TrackPanel.cpp:848 ../src/TrackPanel.cpp:4322
+#: TrackPanel.cpp:624
+#: TrackPanel.cpp:6461
msgid "Set Rate"
msgstr "Oran Ayarla"
-#: ../src/TrackPanel.cpp:856
+#: TrackPanel.cpp:632
msgid "Up Octave"
msgstr "Yukarı Oktav"
-#: ../src/TrackPanel.cpp:857
+#: TrackPanel.cpp:633
msgid "Down Octave"
msgstr "AÅaÄı Oktav"
-#: ../src/TrackPanel.cpp:862
+#: TrackPanel.cpp:638
msgid "Font..."
msgstr "Yazı tipi..."
-#: ../src/TrackPanel.cpp:873
+#: TrackPanel.cpp:649
msgid "Set Range..."
msgstr "Aralık Ayarla..."
-#: ../src/EditToolBar.cpp:150
+#: TrackPanel.cpp:653
+#: toolbars/EditToolBar.cpp:132
+#: toolbars/EditToolBar.cpp:191
msgid "Copy"
msgstr "Kopyala"
-#: ../src/TrackPanel.cpp:1513
+#: TrackPanel.cpp:1302
msgid "Click to vertically zoom in, Shift-click to zoom out, Drag to create a particular zoom region."
msgstr ""
-#: ../src/TrackPanel.cpp:1519
+#: TrackPanel.cpp:1307
msgid "Drag the label vertically to change the order of the tracks."
msgstr ""
-#: ../src/TrackPanel.cpp:1616
+#: TrackPanel.cpp:1327
msgid "Click and drag to adjust relative size of stereo tracks."
msgstr ""
-#: ../src/TrackPanel.cpp:1621
+#: TrackPanel.cpp:1330
msgid "Click and drag to resize the track."
msgstr ""
-#: TrackPanel.cpp:1298
+#: TrackPanel.cpp:1361
msgid "Drag one or more label boundaries"
msgstr ""
-#: TrackPanel.cpp:1299
+#: TrackPanel.cpp:1362
msgid "Drag label boundary"
msgstr ""
-#: ../src/TrackPanel.cpp:1541
+#. i18n-hint: This string is for the Mac OS, which uses Command-, as the shortcut for Preferences
+#: TrackPanel.cpp:1378
msgid "Multi-Tool Mode: Cmd-, for Mouse and Keyboard Preferences"
msgstr "Ãoklu-Araç Kipi: Fare ve Klavye Tercihleri için, Cmd-"
-#: ../src/TrackPanel.cpp:1543
+#. i18n-hint: This string is for Windows and Linux, which uses Control-P as the shortcut for Preferences
+#: TrackPanel.cpp:1381
msgid "Multi-Tool Mode: Ctrl-P for Mouse and Keyboard Preferences"
msgstr "Ãoklu-Araç Kipi: Fare ve Klavye Tercihleri için Ctrl-P"
-#: ../src/TrackPanel.cpp:1574
+#: TrackPanel.cpp:1427
msgid "Click and drag to move left selection boundary."
msgstr ""
-#: ../src/TrackPanel.cpp:1579
+#: TrackPanel.cpp:1432
msgid "Click and drag to move right selection boundary."
msgstr ""
-#: ../src/TrackPanel.cpp:3314
+#: TrackPanel.cpp:1770
+#: TrackPanel.cpp:4054
+#: TrackPanel.cpp:4086
+#: TrackPanel.cpp:4348
+#: TrackPanel.cpp:6610
+#: TrackPanel.cpp:6630
msgid "Modified Label"
msgstr "DüzenlenmiŠetiket"
-#: ../src/TrackPanel.cpp:3315
+#: TrackPanel.cpp:1771
+#: TrackPanel.cpp:4055
+#: TrackPanel.cpp:4087
+#: TrackPanel.cpp:4349
+#: TrackPanel.cpp:6611
+#: TrackPanel.cpp:6631
msgid "Label Edit"
msgstr "Etiket Düzenle"
-#: ../src/TrackPanel.cpp:1904
+#: TrackPanel.cpp:2009
msgid "Adjusted envelope."
msgstr "AyarlanmıŠzarf."
-#: ../src/prefs/MousePrefs.cpp:98 ../src/TrackPanel.cpp:1905
+#: TrackPanel.cpp:2010
+#: prefs/MousePrefs.cpp:119
msgid "Envelope"
msgstr "Zarf"
-#: TrackPanel.cpp:2033
+#: TrackPanel.cpp:2160
msgid "Moved clip to another track"
msgstr ""
-#: ../src/TrackPanel.cpp:2012
+#: TrackPanel.cpp:2164
msgid "left"
msgstr "sol"
-#: ../src/TrackPanel.cpp:2012
+#: TrackPanel.cpp:2164
msgid "right"
msgstr "saÄ"
#. i18n-hint: %s is a direction like left or right
-#: TrackPanel.cpp:2039
+#: TrackPanel.cpp:2166
#, c-format
msgid "Time shifted tracks/clips %s %.02f seconds"
msgstr ""
-#: ../src/prefs/MousePrefs.cpp:97
+#: TrackPanel.cpp:2170
+#: prefs/MousePrefs.cpp:115
+#: prefs/MousePrefs.cpp:116
+#: prefs/MousePrefs.cpp:117
msgid "Time-Shift"
msgstr "Zaman-Ãtelemesi"
-#: TrackPanel.cpp:2916
+#: TrackPanel.cpp:2964
msgid "To use Draw, choose 'Waveform' in the Track Drop-down Menu."
msgstr ""
-#: TrackPanel.cpp:2933
+#: TrackPanel.cpp:2981
msgid "To use Draw, zoom in further until you can see the individual samples."
msgstr ""
-#: ../src/TrackPanel.cpp:2637
+#: TrackPanel.cpp:3255
msgid "Moved Sample"
msgstr "Ãrnek TaÅındı"
-#: ../src/TrackPanel.cpp:2638
+#: TrackPanel.cpp:3256
msgid "Sample Edit"
msgstr "Ãrnek Düzenle"
-#: ../src/TrackPanel.cpp:2703
+#: TrackPanel.cpp:3349
#, c-format
msgid "Removed track '%s.'"
msgstr "'%s' izi kaldırıldı."
-#: ../src/TrackPanel.cpp:2705
+#: TrackPanel.cpp:3351
msgid "Track Remove"
msgstr "İzi Kaldır"
-#: ../src/TrackPanel.cpp:2806
+#: TrackPanel.cpp:3497
msgid "Moved gain slider"
msgstr "Kazanç kaydırıcı taÅındı"
-#: ../src/TrackPanel.cpp:2806
+#: TrackPanel.cpp:3497
msgid "Moved pan slider"
msgstr "Pan kaydırıcı taÅındı"
#. i18n-hint: Title of the Gain slider, used to adjust the volume
-#: ../src/TrackPanel.cpp:2807 ../src/TrackPanel.cpp:4726
+#: TrackPanel.cpp:3498
+#: TrackPanel.cpp:5801
+#: TrackPanel.cpp:7254
msgid "Gain"
msgstr "Kazanç"
#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: ../src/TrackPanel.cpp:2807 ../src/TrackPanel.cpp:4733
+#: TrackPanel.cpp:3498
+#: TrackPanel.cpp:5749
+#: TrackPanel.cpp:7262
msgid "Pan"
msgstr ""
-#: ../src/effects/ChangePitch.cpp:277 ../src/TrackPanel.cpp:4387
+#: TrackPanel.cpp:3664
+#: TrackPanel.cpp:6561
msgid "up"
msgstr "yukarı"
-#: ../src/effects/ChangePitch.cpp:277 ../src/TrackPanel.cpp:4388
+#: TrackPanel.cpp:3668
+#: TrackPanel.cpp:6562
msgid "down"
msgstr "aÅaÄı"
-#: ../src/TrackPanel.cpp:4383
+#: TrackPanel.cpp:3675
+#: TrackPanel.cpp:6557
#, c-format
msgid "Moved '%s' %s"
msgstr "'%s' %s taÅındı"
-#: ../src/TrackPanel.cpp:4389
+#: TrackPanel.cpp:3678
+#: TrackPanel.cpp:6563
msgid "Move Track"
msgstr "İzi TaÅı"
-#: TrackPanel.cpp:3905
+#: TrackPanel.cpp:4249
msgid "Expand"
msgstr ""
-#: TrackPanel.cpp:3905
+#: TrackPanel.cpp:4249
msgid "Expanded Cut Line"
msgstr ""
-#: TrackPanel.cpp:3973
+#: TrackPanel.cpp:4258
msgid "Merge"
msgstr ""
-#: TrackPanel.cpp:3973
+#: TrackPanel.cpp:4258
msgid "Merged Clips"
msgstr ""
-#: TrackPanel.cpp:3925
+#: TrackPanel.cpp:4269
+#, fuzzy
+msgid "Remove"
+msgstr "İzi Kaldır"
+
+#: TrackPanel.cpp:4269
msgid "Removed Cut Line"
msgstr ""
-#: TrackPanel.cpp:5210
+#: TrackPanel.cpp:5749
msgid "Adjusted Pan"
msgstr ""
-#: TrackPanel.cpp:5272
+#: TrackPanel.cpp:5801
msgid "Adjusted gain"
msgstr ""
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr ""
-
-#: TrackPanel.cpp:5428
+#: TrackPanel.cpp:6030
msgid "Can't delete track with active audio"
msgstr ""
-#: ../src/TrackPanel.cpp:4087
+#: TrackPanel.cpp:6180
msgid "Stereo, "
msgstr "İkili, "
-#: ../src/TrackPanel.cpp:4090
+#: TrackPanel.cpp:6183
msgid "Mono, "
msgstr "Tekli,"
-#: ../src/TrackPanel.cpp:4092
+#: TrackPanel.cpp:6185
msgid "Left, "
msgstr "Sol,"
-#: ../src/TrackPanel.cpp:4094
+#: TrackPanel.cpp:6187
msgid "Right, "
msgstr "SaÄ,"
-#: ../src/TrackPanel.cpp:4116 ../src/TrackPanel.cpp:4225
+#: TrackPanel.cpp:6209
+#: TrackPanel.cpp:6371
#, c-format
msgid "Changed '%s' to %s"
msgstr "'%s' %s'e deÄiÅtirildi"
-#: ../src/TrackPanel.cpp:4121
+#: TrackPanel.cpp:6212
msgid "Channel"
msgstr "Kanal"
-#: ../src/TrackPanel.cpp:4131
+#: TrackPanel.cpp:6253
#, c-format
msgid "Split stereo track '%s'"
msgstr "'%s' ikili izini böl"
-#: ../src/TrackPanel.cpp:4153
+#: TrackPanel.cpp:6255
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
+#: TrackPanel.cpp:6287
#, c-format
msgid "Made '%s' a stereo track"
msgstr "Bir ikili izi '%s' yapıldı"
-#: ../src/TrackPanel.cpp:4156
+#: TrackPanel.cpp:6290
msgid "Make Stereo"
msgstr "İkili Yap"
-#: ../src/TrackPanel.cpp:4189
+#: TrackPanel.cpp:6335
#, c-format
msgid "Changed '%s' to %d Hz"
msgstr "'%s' %d Hz'e deÄiÅtirildi"
-#: ../src/TrackPanel.cpp:4191
+#: TrackPanel.cpp:6337
msgid "Rate Change"
msgstr "Oran DeÄiÅtir"
-#: ../src/TrackPanel.cpp:4229
+#: TrackPanel.cpp:6375
msgid "Format Change"
msgstr "Biçem DeÄiÅtir"
-#: ../src/TrackPanel.cpp:4351
+#: TrackPanel.cpp:6525
msgid "Change lower speed limit (%) to:"
msgstr ""
-#: ../src/TrackPanel.cpp:4352 ../src/TrackPanel.cpp:4353
+#: TrackPanel.cpp:6526
+#: TrackPanel.cpp:6527
msgid "Lower speed limit"
msgstr "Daha düÅük hız sınırı"
-#: ../src/TrackPanel.cpp:4358
+#: TrackPanel.cpp:6532
msgid "Change upper speed limit (%) to:"
msgstr ""
-#: ../src/TrackPanel.cpp:4359 ../src/TrackPanel.cpp:4360
+#: TrackPanel.cpp:6533
+#: TrackPanel.cpp:6534
msgid "Upper speed limit"
msgstr "Ãst hız sınırı"
-#: ../src/TrackPanel.cpp:4368
+#: TrackPanel.cpp:6542
#, c-format
msgid "Set range to '%d' - '%d'"
msgstr "'%d' - '%d' de aralıÄı ayarla"
-#: ../src/TrackPanel.cpp:4371
+#: TrackPanel.cpp:6545
msgid "Set Range"
msgstr "Oran Ayarla"
-#: ../src/TrackPanel.cpp:4416
+#: TrackPanel.cpp:6592
msgid "Change track name to:"
msgstr ""
-#: ../src/TrackPanel.cpp:4417
+#: TrackPanel.cpp:6593
msgid "Track Name"
msgstr "İz İsmi:"
-#: ../src/TrackPanel.cpp:4420
+#: TrackPanel.cpp:6596
#, c-format
msgid "Renamed '%s' to '%s'"
msgstr "'%s' de '%s' yeniden adlandırıldı"
-#: ../src/TrackPanel.cpp:4423
+#: TrackPanel.cpp:6599
msgid "Name Change"
msgstr "İsim DeÄiÅtir"
-#: ../src/TrackPanel.cpp:4454
+#: TrackPanel.cpp:6665
msgid "Label Track Font"
msgstr "Etiket İz Yazıtipi"
-#: TrackPanel.cpp:6227
+#: TrackPanel.cpp:6677
+#: TrackPanel.cpp:6683
msgid "Face name"
msgstr ""
-#: TrackPanel.cpp:6236
+#: TrackPanel.cpp:6687
+#: TrackPanel.cpp:6694
msgid "Face size"
msgstr ""
-#: ../src/TrackPanel.cpp:4701
+#: TrackPanel.cpp:6943
+msgid "Stereo, 999999Hz"
+msgstr ""
+
+#: TrackPanel.cpp:7203
msgid "Mute"
msgstr "Sessiz"
-#: ../src/TrackPanel.cpp:4701
+#: TrackPanel.cpp:7203
msgid "Solo"
msgstr "Solo"
-#: TrackPanelAx.cpp:266
+#: TrackPanelAx.cpp:285
msgid "TrackView"
msgstr ""
-#: TrackPanelAx.cpp:274
+#: TrackPanelAx.cpp:293
msgid "Track Accessible out of sync"
msgstr ""
-#: TrackPanelAx.cpp:282
+#: TrackPanelAx.cpp:301
#, c-format
msgid "Track %d"
msgstr ""
-#: TrackPanelAx.cpp:288
+#: TrackPanelAx.cpp:307
msgid " Mute On"
msgstr ""
-#: TrackPanelAx.cpp:293
+#: TrackPanelAx.cpp:312
msgid " Solo On"
msgstr ""
-#: TrackPanelAx.cpp:297
+#: TrackPanelAx.cpp:316
msgid " Select On"
msgstr ""
-#: VoiceKey.cpp:88 VoiceKey.cpp:238 VoiceKey.cpp:376 VoiceKey.cpp:517
+#: VoiceKey.cpp:88
+#: VoiceKey.cpp:238
+#: VoiceKey.cpp:376
+#: VoiceKey.cpp:517
msgid "Selection is too small to use voice key."
msgstr ""
@@ -3779,194 +4369,213 @@ msgstr ""
msgid "Direction Changes -- mean: %1.4f sd: (%1.4f)\n"
msgstr ""
-#: ../src/WaveTrack.cpp:128
+#: WaveTrack.cpp:87
msgid "Audio Track"
msgstr "Ses İzi"
-#: WaveTrack.cpp:515 WaveTrack.cpp:534
+#: WaveTrack.cpp:976
+#: WaveTrack.cpp:995
msgid "There is not enough room available to paste the selection"
msgstr ""
-#: WaveTrack.cpp:1583
+#: WaveTrack.cpp:2021
msgid "There is not enough room available to expand the cut line"
msgstr ""
-#: ../src/commands/CommandManager.cpp:323
+#: commands/CommandManager.cpp:549
#, c-format
msgid "Plugins 1 to %i"
msgstr "%i deki Eklentiler 1"
-#: ../src/commands/CommandManager.cpp:337
+#: commands/CommandManager.cpp:563
#, c-format
msgid "Plugins %i to %i"
msgstr "%i deki %i Eklentileri"
-#: commands/CommandManager.cpp:857
-msgid "Disallowed for some reason. Try selecting some audio first?"
+#: commands/CommandManager.cpp:928
+msgid ""
+"There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
msgstr ""
-#: commands/CommandManager.cpp:724
-msgid "You can only do this when playing and recording are\n"
+#: commands/CommandManager.cpp:932
+msgid ""
+"You can only do this when playing and recording are\n"
" stopped. [Pausing is not sufficient.]"
msgstr ""
-#: commands/CommandManager.cpp:726
-msgid "You must first select some stereo audio for this\n"
+#: commands/CommandManager.cpp:934
+msgid ""
+"You must first select some stereo audio for this\n"
" to use. [You can't use this with mono.]"
msgstr ""
-#: commands/CommandManager.cpp:728
+#: commands/CommandManager.cpp:936
msgid "You must first select some audio for this to use."
msgstr ""
-#: commands/CommandManager.cpp:730
-msgid "You must first select some audio for this\n"
+#: commands/CommandManager.cpp:938
+msgid ""
+"You must first select some audio for this\n"
" to use. [Selecting other kinds of track won't work.]"
msgstr ""
-#: commands/CommandManager.cpp:903
+#: commands/CommandManager.cpp:943
msgid "Disallowed"
msgstr ""
-#: ../src/commands/CommandManager.cpp:640
+#: commands/CommandManager.cpp:1167
#, c-format
msgid "Loaded %d keyboard shortcuts\n"
msgstr "%d klavye kısayolları yüklendi\n"
-#: ../src/commands/CommandManager.cpp:643
+#: commands/CommandManager.cpp:1169
msgid "Loading keyboard shortcuts"
msgstr "Yükleme klavye kısayolları"
-#: ../src/effects/Amplify.cpp:34
+#: effects/Amplify.cpp:53
#, c-format
msgid "Applied effect: %s %.1f dB"
msgstr "UygulanmıŠetki: %s %.1f dB"
-#: ../src/effects/Amplify.cpp:63
+#: effects/Amplify.cpp:136
msgid "Amplify"
msgstr "Ses Yükselt"
-#: effects/Amplify.cpp:155 effects/Compressor.cpp:476
-#: effects/Normalize.cpp:337
+#: effects/Amplify.cpp:152
+#: effects/Compressor.cpp:487
+#: effects/Normalize.cpp:341
msgid "by Dominic Mazzoni"
msgstr ""
-#: ../src/effects/Amplify.cpp:132
+#: effects/Amplify.cpp:165
msgid "Amplification (dB):"
msgstr "Sesi Yükseltme (dB):"
-#: effects/Amplify.cpp:183
+#: effects/Amplify.cpp:180
msgid "Amplification dB"
msgstr ""
-#: ../src/effects/Amplify.cpp:152
+#: effects/Amplify.cpp:187
msgid "New Peak Amplitude (dB):"
msgstr "Yeni Tepe GenliÄi (dB):"
-#: ../src/effects/Amplify.cpp:164
+#: effects/Amplify.cpp:197
msgid "Allow clipping"
msgstr "Kırpmaya izin ver"
-#: effects/Amplify.cpp:222 effects/Amplify.cpp:279 effects/Amplify.cpp:323
+#: effects/Amplify.cpp:219
+#: effects/Amplify.cpp:276
+#: effects/Amplify.cpp:320
msgid "-Infinity"
msgstr ""
-#: ../src/effects/Amplify.h:47
+#: effects/Amplify.h:37
msgid "Amplify..."
msgstr "Yükselt..."
-#: ../src/effects/Amplify.h:51
+#: effects/Amplify.h:51
msgid "Amplifying"
msgstr "Yükseltiliyor"
-#: effects/AutoDuck.cpp:125
+#: effects/AutoDuck.cpp:140
msgid "You selected a track which does not contain audio. AutoDuck can only process audio tracks."
msgstr ""
-#: effects/AutoDuck.cpp:126 effects/AutoDuck.cpp:138 effects/AutoDuck.cpp:451
-#: effects/AutoDuck.cpp:578
+#: effects/AutoDuck.cpp:141
+#: effects/AutoDuck.cpp:153
+#: effects/AutoDuck.cpp:467
+#: effects/AutoDuck.cpp:584
msgid "Auto Duck"
msgstr ""
-#: effects/AutoDuck.cpp:137
+#: effects/AutoDuck.cpp:152
msgid "Auto Duck needs a control track which must be placed below the selected track(s)."
msgstr ""
-#: effects/AutoDuck.cpp:463
+#: effects/AutoDuck.cpp:479
msgid "Auto Duck by Markus Meyer"
msgstr ""
-#: effects/AutoDuck.cpp:485
+#: effects/AutoDuck.cpp:501
msgid "Duck amount:"
msgstr ""
-#: effects/AutoDuck.cpp:490
+#: effects/AutoDuck.cpp:506
msgid "Maximum pause:"
msgstr ""
-#: effects/AutoDuck.cpp:492 effects/AutoDuck.cpp:497 effects/AutoDuck.cpp:502
-#: effects/AutoDuck.cpp:507 effects/AutoDuck.cpp:512
-#: prefs/AudioIOPrefs.cpp:162 prefs/AudioIOPrefs.cpp:164
-#: prefs/AudioIOPrefs.cpp:188 prefs/AudioIOPrefs.cpp:190
-#: prefs/AudioIOPrefs.cpp:198 widgets/TimeTextCtrl.cpp:197
+#. i18n-hint: Name of time display format that shows time in seconds
+#: effects/AutoDuck.cpp:508
+#: effects/AutoDuck.cpp:513
+#: effects/AutoDuck.cpp:518
+#: effects/AutoDuck.cpp:523
+#: effects/AutoDuck.cpp:528
+#: prefs/MidiIOPrefs.cpp:185
+#: prefs/MidiIOPrefs.cpp:187
+#: prefs/MidiIOPrefs.cpp:209
+#: prefs/MidiIOPrefs.cpp:211
+#: prefs/MidiIOPrefs.cpp:219
+#: prefs/PlaybackPrefs.cpp:65
+#: prefs/PlaybackPrefs.cpp:66
+#: prefs/PlaybackPrefs.cpp:80
+#: prefs/PlaybackPrefs.cpp:81
+#: prefs/PlaybackPrefs.cpp:87
+#: prefs/PlaybackPrefs.cpp:88
+#: prefs/PlaybackPrefs.cpp:102
+#: prefs/PlaybackPrefs.cpp:103
+#: prefs/PlaybackPrefs.cpp:109
+#: prefs/PlaybackPrefs.cpp:110
+#: widgets/TimeTextCtrl.cpp:265
msgid "seconds"
msgstr ""
-#: effects/AutoDuck.cpp:495
+#: effects/AutoDuck.cpp:511
msgid "Outer fade down length:"
msgstr ""
-#: effects/AutoDuck.cpp:500
+#: effects/AutoDuck.cpp:516
msgid "Outer fade up length:"
msgstr ""
-#: effects/AutoDuck.cpp:505
+#: effects/AutoDuck.cpp:521
msgid "Inner fade down length:"
msgstr ""
-#: effects/AutoDuck.cpp:510
+#: effects/AutoDuck.cpp:526
msgid "Inner fade up length:"
msgstr ""
-#: effects/AutoDuck.cpp:519 effects/Compressor.cpp:479
+#: effects/AutoDuck.cpp:535
+#: effects/Compressor.cpp:506
#, fuzzy
msgid "Threshold:"
msgstr "EÅik:"
-#: effects/AutoDuck.cpp:578
+#: effects/AutoDuck.cpp:584
msgid "Please enter valid values."
msgstr ""
-#: effects/AutoDuck.cpp:712
+#: effects/AutoDuck.cpp:719
msgid "Preview not available"
msgstr ""
-#: effects/AutoDuck.h:97
+#: effects/AutoDuck.h:98
msgid "Auto Duck..."
msgstr ""
-#: effects/AutoDuck.h:102
+#: effects/AutoDuck.h:115
msgid "Processing Auto Duck..."
msgstr ""
-#: ../src/effects/Amplify.cpp:187 ../src/effects/AvcCompressor.cpp:716
-#: ../src/effects/BassBoost.cpp:332 ../src/effects/ChangePitch.cpp:393
-#: ../src/effects/ChangeSpeed.cpp:379 ../src/effects/ChangeTempo.cpp:284
-#: ../src/effects/Compressor.cpp:484 ../src/effects/Echo.cpp:242
-#: ../src/effects/Equalization.cpp:731 ../src/effects/Filter.cpp:482
-#: ../src/effects/ladspa/LadspaEffect.cpp:498 ../src/effects/Normalize.cpp:258
-#: ../src/effects/nyquist/Nyquist.cpp:736
-#: ../src/effects/nyquist/Nyquist.cpp:883
-#: ../src/effects/nyquist/Nyquist.cpp:949 ../src/effects/Phaser.cpp:576
-#: ../src/effects/Repeat.cpp:251 ../src/effects/VST/VSTEffect.cpp:98
-#: ../src/effects/VST/VSTEffect.cpp:455 ../src/effects/Wahwah.cpp:563
-#: ../src/LangChoice.cpp:94 ../src/prefs/FileFormatPrefs.cpp:471
-#: ../src/prefs/PrefsDialog.cpp:100 ../src/Tags.cpp:721
-#: ../src/widgets/Warning.cpp:56
+#: effects/AvcCompressor.cpp:738
+#: effects/audiounits/AudioUnitEffect.cpp:856
+#: effects/nyquist/Nyquist.cpp:1237
+#: widgets/ErrorDialog.cpp:99
msgid "OK"
msgstr "TAMAM"
-#: ../src/effects/BassBoost.cpp:36
+#: effects/BassBoost.cpp:52
#, c-format
msgid "Applied effect: %s frequency = %.0f Hz, boost = %.0f dB"
msgstr "UygulanmıŠetki: %s frekansı = %.0f Hz, artırma = %.0f dB"
@@ -3976,10 +4585,13 @@ msgid "Bass Boost"
msgstr ""
#: effects/BassBoost.cpp:182
+#: effects/Phaser.cpp:219
+#: effects/Wahwah.cpp:214
msgid "by Nasca Octavian Paul"
msgstr ""
-#: ../src/effects/BassBoost.cpp:286
+#: effects/BassBoost.cpp:196
+#: effects/ChangePitch.cpp:322
msgid "Frequency (Hz):"
msgstr "Frekans (Hz):"
@@ -3987,7 +4599,7 @@ msgstr "Frekans (Hz):"
msgid "Frequency Hertz"
msgstr ""
-#: ../src/effects/BassBoost.cpp:302
+#: effects/BassBoost.cpp:209
msgid "Boost (dB):"
msgstr "Yükselt (dB)"
@@ -4000,7 +4612,7 @@ msgstr ""
msgid "BassBoost..."
msgstr "Bas Yükselt..."
-#: ../src/effects/BassBoost.h:48
+#: effects/BassBoost.h:49
msgid "Boosting Bass Frequencies"
msgstr "Bas Frekansları Yükseltiliyor"
@@ -4008,29 +4620,31 @@ msgstr "Bas Frekansları Yükseltiliyor"
msgid "Change Length..."
msgstr ""
-#: effects/ChangeLength.h:30
+#: effects/ChangeLength.h:34
msgid "Changing Length..."
msgstr ""
-#: ../src/effects/ChangePitch.cpp:56
+#: effects/ChangePitch.cpp:55
#, c-format
msgid "Applied effect: %s %.2f semitones"
msgstr "UygulanmıŠetki: %s %.2f yarım ses aralıkları"
-#: ../src/effects/ChangePitch.cpp:119
+#: effects/ChangePitch.cpp:198
msgid "Change Pitch"
msgstr "SıklıÄı DeÄiÅtir"
-#: ../src/effects/ChangePitch.cpp:242
+#: effects/ChangePitch.cpp:256
msgid "Change Pitch without Changing Tempo"
msgstr "Tempoyu DeÄiÅtirmeksizin SıklıÄı DeÄiÅtir"
-#: ../src/effects/ChangePitch.cpp:247 ../src/effects/ChangeSpeed.cpp:287
-#: ../src/effects/ChangeTempo.cpp:164
+#: effects/ChangePitch.cpp:258
+#: effects/ChangeSpeed.cpp:337
+#: effects/ChangeTempo.cpp:176
msgid "by Vaughan Johnson && Dominic Mazzoni"
msgstr "Vaughan Johnson ve Dominic Mazzoni tarafından"
-#: ../src/effects/ChangePitch.cpp:252 ../src/effects/ChangeTempo.cpp:169
+#: effects/ChangePitch.cpp:260
+#: effects/ChangeTempo.cpp:178
msgid "using SoundTouch, by Olli Parviainen"
msgstr "Olli Parviainen tarafından, Ses DokunuÅu"
@@ -4062,7 +4676,7 @@ msgstr ""
msgid "To Pitch"
msgstr ""
-#: ../src/effects/ChangePitch.cpp:299
+#: effects/ChangePitch.cpp:311
msgid "Semitones (half-steps):"
msgstr "Yarımtonlar (yarım-adımlar):"
@@ -4070,8 +4684,10 @@ msgstr "Yarımtonlar (yarım-adımlar):"
msgid "Semitones in half-steps"
msgstr ""
-#: effects/ChangePitch.cpp:326 effects/ChangeSpeed.cpp:369
-#: effects/ChangeTempo.cpp:209 effects/ChangeTempo.cpp:222
+#: effects/ChangePitch.cpp:326
+#: effects/ChangeSpeed.cpp:370
+#: effects/ChangeTempo.cpp:209
+#: effects/ChangeTempo.cpp:222
msgid "from"
msgstr ""
@@ -4079,9 +4695,10 @@ msgstr ""
msgid "From frequency in hertz"
msgstr ""
-#: ../src/effects/ChangePitch.cpp:284 ../src/effects/ChangePitch.cpp:330
-#: ../src/effects/ChangeSpeed.cpp:351 ../src/effects/ChangeTempo.cpp:223
-#: ../src/effects/ChangeTempo.cpp:254
+#: effects/ChangePitch.cpp:331
+#: effects/ChangeSpeed.cpp:375
+#: effects/ChangeTempo.cpp:214
+#: effects/ChangeTempo.cpp:227
msgid "to"
msgstr "-e"
@@ -4089,74 +4706,76 @@ msgstr "-e"
msgid "To frequency in seconds"
msgstr ""
-#: ../src/effects/ChangePitch.cpp:353 ../src/effects/ChangeSpeed.cpp:305
-#: ../src/effects/ChangeTempo.cpp:182
+#: effects/ChangePitch.cpp:338
+#: effects/ChangeSpeed.cpp:348
+#: effects/ChangeTempo.cpp:187
msgid "Percent Change:"
msgstr "Yüzde DeÄiÅtir:"
-#: effects/ChangePitch.cpp:343 effects/ChangePitch.cpp:356
-#: effects/ChangeSpeed.cpp:358 effects/ChangeTempo.cpp:198
+#: effects/ChangePitch.cpp:343
+#: effects/ChangePitch.cpp:356
+#: effects/ChangeSpeed.cpp:359
+#: effects/ChangeTempo.cpp:198
msgid "Percent Change"
msgstr ""
-#: ../src/effects/ChangePitch.h:31
+#: effects/ChangePitch.h:31
msgid "Change Pitch..."
msgstr "SıklıÄı DeÄiÅtir..."
-#: ../src/effects/ChangePitch.h:35
+#: effects/ChangePitch.h:46
msgid "Changing Pitch"
msgstr "Sıklık DeÄiÅtirme"
-#: ../src/effects/ChangeSpeed.cpp:40 ../src/effects/ChangeTempo.cpp:43
+#: effects/ChangeSpeed.cpp:54
+#: effects/ChangeTempo.cpp:55
#, c-format
msgid "Applied effect: %s %.1f%%"
msgstr "UygulanmıŠetki: %s %1.f%%"
-#: ../src/effects/ChangeSpeed.cpp:47
+#: effects/ChangeSpeed.cpp:299
msgid "Change Speed"
msgstr "Hızı DeÄiÅtir"
-#. i18n-hint: n/a is an English
-#. abbreviation meaning "not
-#. applicable" (in other words,
-#. unimportant, not relevant).
-#: ../src/effects/ChangeSpeed.cpp:338
+#. i18n-hint: n/a is an English abbreviation meaning "not applicable"
+#. (in other words, unimportant, not relevant).
+#: effects/ChangeSpeed.cpp:330
msgid "n/a"
msgstr "n/a"
-#: ../src/effects/ChangeSpeed.cpp:282
+#: effects/ChangeSpeed.cpp:335
msgid "Change Speed, affecting both Tempo and Pitch"
msgstr "Her iki etkileyici ve Tempo ve SıklıÄı, Hızı DeÄiÅtir"
-#: ../src/effects/ChangeSpeed.cpp:292
+#: effects/ChangeSpeed.cpp:339
msgid "using SampleRate, by Erik de Castro Lopo"
msgstr "Erik de Castro Lopo tarafından, ÃrnekOran"
-#: effects/ChangeSpeed.cpp:366
+#: effects/ChangeSpeed.cpp:367
msgid "Standard Vinyl RPM:"
msgstr ""
-#: effects/ChangeSpeed.cpp:370
+#: effects/ChangeSpeed.cpp:371
msgid "From RPM"
msgstr ""
-#: effects/ChangeSpeed.cpp:375
+#: effects/ChangeSpeed.cpp:376
msgid "To RPM"
msgstr ""
-#: ../src/effects/ChangeSpeed.h:37
+#: effects/ChangeSpeed.h:32
msgid "Change Speed..."
msgstr "Hızı DeÄiÅtir..."
-#: ../src/effects/ChangeSpeed.h:40
+#: effects/ChangeSpeed.h:46
msgid "Changing Speed"
msgstr "Hız DeÄiÅtirme"
-#: ../src/effects/ChangeTempo.cpp:62
+#: effects/ChangeTempo.cpp:141
msgid "Change Tempo"
msgstr "Tempoyu DeÄiÅtir"
-#: ../src/effects/ChangeTempo.cpp:159
+#: effects/ChangeTempo.cpp:174
msgid "Change Tempo without Changing Pitch"
msgstr "SıklıÄı DeÄiÅtirmeksizin Tempoyu DeÄiÅtir"
@@ -4184,11 +4803,11 @@ msgstr ""
msgid "To length in seconds"
msgstr ""
-#: ../src/effects/ChangeTempo.h:40
+#: effects/ChangeTempo.h:35
msgid "Change Tempo..."
msgstr "Tempoyu DeÄiÅtir..."
-#: ../src/effects/ChangeTempo.h:44
+#: effects/ChangeTempo.h:49
msgid "Changing Tempo"
msgstr "Tempoyu DeÄiÅtirme"
@@ -4196,11 +4815,11 @@ msgstr "Tempoyu DeÄiÅtirme"
msgid "Click Removal"
msgstr ""
-#: ../src/effects/ClickRemoval.cpp:317
+#: effects/ClickRemoval.cpp:327
msgid "Click and Pop Removal by Craig DeForest"
msgstr ""
-#: effects/ClickRemoval.cpp:350
+#: effects/ClickRemoval.cpp:341
msgid "Select threshold (lower is more sensitive):"
msgstr ""
@@ -4208,580 +4827,589 @@ msgstr ""
msgid "Select threshold"
msgstr ""
-#: effects/ClickRemoval.cpp:362
+#: effects/ClickRemoval.cpp:358
msgid "Max spike width (higher is more sensitive):"
msgstr ""
-#: effects/ClickRemoval.cpp:363
+#: effects/ClickRemoval.cpp:367
msgid "Max spike width"
msgstr ""
-#: ../src/effects/ClickRemoval.h:42
+#: effects/ClickRemoval.h:42
msgid "Click Removal..."
msgstr "Kaldırmayı Tıkla..."
-#: ../src/effects/ClickRemoval.h:46
+#: effects/ClickRemoval.h:56
msgid "Removing clicks and pops..."
msgstr "Tıklamalar ve açılmalar kaldırılıyor..."
-#: ../src/effects/Compressor.cpp:43
+#: effects/Compressor.cpp:472
msgid "Dynamic Range Compressor"
msgstr "Dinamik Aralık SıkıÅtırıcısı"
-#: effects/Compressor.cpp:498
+#: effects/Compressor.cpp:510
msgid "Threshold"
msgstr ""
-#: effects/Compressor.cpp:502
+#: effects/Compressor.cpp:514
msgid "Ratio:"
msgstr ""
-#: effects/Compressor.cpp:506
+#: effects/Compressor.cpp:518
msgid "Ratio"
msgstr ""
-#: effects/Compressor.cpp:510
+#: effects/Compressor.cpp:522
#, fuzzy
msgid "Attack Time:"
msgstr "Hamle Zamanı: "
-#: effects/Compressor.cpp:514
+#: effects/Compressor.cpp:526
msgid "Attack Time"
msgstr ""
-#: effects/Compressor.cpp:518
+#: effects/Compressor.cpp:530
msgid "Decay Time:"
msgstr ""
-#: effects/Compressor.cpp:522
+#: effects/Compressor.cpp:534
msgid "Decay Time"
msgstr ""
-#: ../src/effects/Compressor.cpp:469
-msgid "Normalize to 0dB after compressing"
-msgstr "SıkıÅtırmadan sonra 0dB'a düzgele"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
+msgstr ""
-#: effects/Compressor.cpp:563
-#, c-format
-#, fuzzy
+#: effects/Compressor.cpp:575
+#, fuzzy, c-format
msgid "Threshold %d dB"
msgstr "EÅik: %d dB"
-#: effects/Compressor.cpp:564
+#: effects/Compressor.cpp:576
#, c-format
msgid "%3d dB"
msgstr ""
-#: effects/Compressor.cpp:567
+#: effects/Compressor.cpp:579
#, c-format
msgid "Ratio %.0f to 1"
msgstr ""
-#: effects/Compressor.cpp:568
+#: effects/Compressor.cpp:580
#, c-format
msgid "%.0f:1"
msgstr ""
-#: effects/Compressor.cpp:571
+#: effects/Compressor.cpp:583
#, c-format
msgid "Ratio %.1f to 1"
msgstr ""
-#: effects/Compressor.cpp:572
+#: effects/Compressor.cpp:584
#, c-format
msgid "%.1f:1"
msgstr ""
-#: effects/Compressor.cpp:575
-#, c-format
-#, fuzzy
+#: effects/Compressor.cpp:587
+#, fuzzy, c-format
msgid "Attack Time %.1f secs"
msgstr "Hamle Zamanı: %.1f san."
-#: effects/Compressor.cpp:576 effects/Compressor.cpp:579
+#: effects/Compressor.cpp:588
+#: effects/Compressor.cpp:591
#, c-format
msgid "%.1f secs"
msgstr ""
-#: effects/Compressor.cpp:578
+#: effects/Compressor.cpp:590
#, c-format
msgid "Decay Time %.1f secs"
msgstr ""
-#: ../src/effects/Compressor.h:36
+#: effects/Compressor.h:37
msgid "Compressor..."
msgstr "SıkıÅtırıcı..."
-#: ../src/effects/Compressor.h:40
+#: effects/Compressor.h:51
msgid "Applying Dynamic Range Compression..."
msgstr "Dinamik Aralık SıkıÅtırması Uygulanıyor..."
-#: effects/Contrast.cpp:79
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
+#: effects/Contrast.cpp:88
msgid "Contrast Tool Foreground"
msgstr ""
-#: effects/Contrast.cpp:79
-msgid "Foreground times selected.\n"
+#: effects/Contrast.cpp:88
+msgid ""
+"Foreground times selected.\n"
"Now select background and use Ctrl+Shift+T or menu again."
msgstr ""
-#: effects/Contrast.cpp:127
-msgid "Start time after after end time!\n"
+#: effects/Contrast.cpp:144
+msgid ""
+"Start time after after end time!\n"
"Please enter reasonable times."
msgstr ""
-#: effects/Contrast.cpp:137
-msgid "Times are not reasonable!\n"
+#: effects/Contrast.cpp:154
+msgid ""
+"Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr ""
-
-#: effects/Contrast.cpp:231
+#: effects/Contrast.cpp:276
msgid "Contrast Analyzer"
msgstr ""
-#: effects/Contrast.cpp:235
-msgid "Parameters"
-msgstr ""
-
-#: effects/ToneGen.cpp:328 toolbars/ControlToolBar.cpp:186
+#: effects/Contrast.cpp:286
+#: effects/ToneGen.cpp:312
+#: toolbars/ControlToolBar.cpp:181
msgid "Start"
msgstr ""
-#: effects/ToneGen.cpp:329 toolbars/ControlToolBar.cpp:189
-#: toolbars/SelectionBar.cpp:129 toolbars/SelectionBar.cpp:226
+#: effects/Contrast.cpp:287
+#: effects/ToneGen.cpp:313
+#: toolbars/ControlToolBar.cpp:184
+#: toolbars/SelectionBar.cpp:156
+#: toolbars/SelectionBar.cpp:159
+#: toolbars/SelectionBar.cpp:262
msgid "End"
msgstr ""
-#: effects/Contrast.cpp:332
+#: effects/Contrast.cpp:290
msgid "Volume "
msgstr ""
-#: effects/Contrast.cpp:248
+#: effects/Contrast.cpp:293
msgid "Foreground:"
msgstr ""
-#: effects/Contrast.cpp:347
+#: effects/Contrast.cpp:305
msgid "Foreground start time"
msgstr ""
-#: effects/Contrast.cpp:365
+#: effects/Contrast.cpp:323
msgid "Foreground end time"
msgstr ""
-#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
+#: effects/Contrast.cpp:329
+#: effects/Contrast.cpp:373
+#: effects/Contrast.cpp:437
+#: effects/Contrast.cpp:448
+msgid "Measured"
+msgstr ""
+
+#: effects/Contrast.cpp:331
+#: effects/Contrast.cpp:375
msgid "Use selection"
msgstr ""
-#: effects/Contrast.cpp:271
+#: effects/Contrast.cpp:336
msgid "Background:"
msgstr ""
-#: effects/Contrast.cpp:391
+#: effects/Contrast.cpp:349
msgid "Background start time"
msgstr ""
-#: effects/Contrast.cpp:409
+#: effects/Contrast.cpp:367
msgid "Background end time"
msgstr ""
-#: effects/Contrast.cpp:298
+#: effects/Contrast.cpp:384
msgid "Result"
msgstr ""
-#: effects/Contrast.cpp:302
+#: effects/Contrast.cpp:388
msgid "Contrast Result:"
msgstr ""
-#: Tags.cpp:796 Tags.cpp:1948
+#: effects/Contrast.cpp:391
msgid "Reset"
msgstr ""
-#: effects/Contrast.cpp:304
+#: effects/Contrast.cpp:392
msgid "Difference:"
msgstr ""
-#: ../src/AboutDialog.cpp:150
+#: effects/Contrast.cpp:403
msgid "Information"
msgstr "Bilgi"
-#: effects/Contrast.cpp:447
+#: effects/Contrast.cpp:405
msgid "For measuring rms volume differences between two selections of audio."
msgstr ""
-#: effects/Contrast.cpp:448
+#: effects/Contrast.cpp:406
msgid "Help for WCAG2 Audio Contrast Analyzer"
msgstr ""
-#: toolbars/ControlToolBar.cpp:82
-msgid "Control"
-msgstr ""
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
msgstr ""
-#: effects/Contrast.cpp:328 effects/Contrast.cpp:336 effects/Contrast.cpp:344
-#: effects/Contrast.cpp:352
+#: effects/Contrast.cpp:474
+#: effects/Contrast.cpp:480
+#: effects/Contrast.cpp:486
+#: effects/Contrast.cpp:492
msgid "Measure"
msgstr ""
-#: effects/Contrast.cpp:511
+#: effects/Contrast.cpp:531
msgid "No foreground to measure"
msgstr ""
-#: effects/Contrast.cpp:516
+#: effects/Contrast.cpp:536
msgid "Measured foreground level"
msgstr ""
-#: effects/Contrast.cpp:191 effects/Contrast.cpp:202
+#: effects/Contrast.cpp:537
+#: effects/Contrast.cpp:547
#, c-format
msgid "%.1f dB"
msgstr ""
-#: effects/Contrast.cpp:521
+#: effects/Contrast.cpp:541
msgid "No background to measure"
msgstr ""
-#: effects/Contrast.cpp:526
+#: effects/Contrast.cpp:546
msgid "Measured background level"
msgstr ""
-#: effects/Contrast.cpp:358
+#: effects/Contrast.cpp:552
msgid "WCAG2 Pass"
msgstr ""
-#: effects/Contrast.cpp:360
+#: effects/Contrast.cpp:554
msgid "WCAG2 Fail"
msgstr ""
-#: effects/Contrast.cpp:535
+#: effects/Contrast.cpp:555
msgid "Current difference"
msgstr ""
-#: effects/Contrast.cpp:536
+#: effects/Contrast.cpp:556
#, c-format
msgid "%.1f dB Average rms"
msgstr ""
-#: effects/Contrast.cpp:541
+#: effects/Contrast.cpp:561
msgid "Please enter valid times."
msgstr ""
-#: effects/Contrast.cpp:551
+#: effects/Contrast.cpp:571
msgid "Export Contrast Result As:"
msgstr ""
-#: effects/Contrast.cpp:572
+#: effects/Contrast.cpp:592
msgid "WCAG 2.0 Success Criteria 1.4.7 Contrast Results"
msgstr ""
-#: effects/Contrast.cpp:574
+#: effects/Contrast.cpp:594
#, c-format
msgid "Filename = %s."
msgstr ""
-#: effects/Contrast.cpp:576
+#: effects/Contrast.cpp:596
msgid "Foreground"
msgstr ""
-#: effects/Contrast.cpp:581 effects/Contrast.cpp:598
+#: effects/Contrast.cpp:601
+#: effects/Contrast.cpp:618
#, c-format
msgid "Time started = %2d hour(s), %2d minute(s), %.2f seconds."
msgstr ""
-#: effects/Contrast.cpp:586 effects/Contrast.cpp:603
+#: effects/Contrast.cpp:606
+#: effects/Contrast.cpp:623
#, c-format
msgid "Time ended = %2d hour(s), %2d minute(s), %.2f seconds."
msgstr ""
-#: effects/Contrast.cpp:588 effects/Contrast.cpp:605
+#: effects/Contrast.cpp:608
+#: effects/Contrast.cpp:625
#, c-format
msgid "Average rms = %.1f dB."
msgstr ""
-#: effects/Contrast.cpp:590 effects/Contrast.cpp:607
+#: effects/Contrast.cpp:610
+#: effects/Contrast.cpp:627
msgid "Average rms = dB."
msgstr ""
-#: effects/Contrast.cpp:593
+#: effects/Contrast.cpp:613
msgid "Background"
msgstr ""
-#: effects/Contrast.cpp:609
+#: effects/Contrast.cpp:629
msgid "Results"
msgstr ""
-#: effects/Contrast.cpp:611
+#: effects/Contrast.cpp:631
#, c-format
msgid "Difference = %.1f Average rms dB."
msgstr ""
-#: effects/Contrast.cpp:613
+#: effects/Contrast.cpp:633
msgid "Success Criteria 1.4.7 of WCAG 2.0: Pass"
msgstr ""
-#: effects/Contrast.cpp:615
+#: effects/Contrast.cpp:635
msgid "Success Criteria 1.4.7 of WCAG 2.0: Fail"
msgstr ""
-#: effects/Contrast.cpp:618
+#: effects/Contrast.cpp:638
msgid "Data gathered"
msgstr ""
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr ""
-
-#: effects/DtmfGen.cpp:47
+#: effects/DtmfGen.cpp:56
msgid "DTMF Tone Generator"
msgstr ""
-#: effects/DtmfGen.cpp:382
+#: effects/DtmfGen.cpp:421
msgid "by Salvo Ventura (2006)"
msgstr ""
-#: effects/DtmfGen.cpp:386
+#: effects/DtmfGen.cpp:425
msgid "DTMF sequence:"
msgstr ""
-#: ../src/effects/ToneGen.cpp:293
+#: effects/DtmfGen.cpp:428
+#: effects/Noise.cpp:190
+#: effects/ToneGen.cpp:278
+#: effects/ToneGen.cpp:316
msgid "Amplitude (0-1)"
msgstr "Genlik (0-1)"
-#: effects/DtmfGen.cpp:465
+#: effects/DtmfGen.cpp:430
msgid "Duration:"
msgstr ""
-#: effects/DtmfGen.cpp:407
+#: effects/DtmfGen.cpp:452
msgid "Tone/silence ratio:"
msgstr ""
-#: effects/DtmfGen.cpp:418
+#: effects/DtmfGen.cpp:462
msgid "Duty cycle:"
msgstr ""
-#: effects/DtmfGen.cpp:420
+#: effects/DtmfGen.cpp:464
msgid "Tone duration:"
msgstr ""
-#: effects/DtmfGen.cpp:421 effects/DtmfGen.cpp:423 effects/DtmfGen.cpp:494
-#: effects/DtmfGen.cpp:495
+#: effects/DtmfGen.cpp:465
+#: effects/DtmfGen.cpp:467
+#: effects/DtmfGen.cpp:543
+#: effects/DtmfGen.cpp:544
msgid "ms"
msgstr ""
-#: effects/DtmfGen.cpp:422
+#: effects/DtmfGen.cpp:466
msgid "Silence duration:"
msgstr ""
-#: effects/DtmfGen.h:41
+#: effects/DtmfGen.h:40
msgid "DTMF Tones..."
msgstr ""
-#: effects/DtmfGen.h:45
+#: effects/DtmfGen.h:54
#, c-format
msgid "Applied effect: Generate DTMF tones, %.6lf seconds"
msgstr ""
-#: effects/DtmfGen.h:49
+#: effects/DtmfGen.h:58
msgid "Generating DTMF tones"
msgstr ""
-#: ../src/effects/Echo.cpp:33
+#: effects/Echo.cpp:48
#, c-format
msgid "Applied effect: %s delay = %f seconds, decay factor = %f"
msgstr "UygulanmıŠetki: %s gecikmesi = %f saniye, gecikme faktörü = %f"
-#: ../src/effects/Echo.cpp:39 ../src/effects/Echo.cpp:177
+#: effects/Echo.cpp:174
msgid "Echo"
msgstr "Yankı"
-#: ../src/effects/Echo.cpp:182
+#. i18n-hint: && in here is an escape character to get a single & on
+#. * screen, so keep it as is
+#: effects/Echo.cpp:199
+#: effects/Repeat.cpp:199
msgid "by Dominic Mazzoni && Vaughan Johnson"
msgstr "Dominic Mazzoni ve Vaughan Johnson tarafından"
-#: ../src/effects/Echo.cpp:192
+#: effects/Echo.cpp:211
msgid "Delay time (seconds):"
msgstr "Gecikme zamanı (saniye)"
-#: ../src/effects/Echo.cpp:211
+#: effects/Echo.cpp:216
msgid "Decay factor:"
msgstr "Gecikme faktörü:"
-#: ../src/effects/Echo.h:36
+#: effects/Echo.h:34
msgid "Echo..."
msgstr "Yankı..."
-#: ../src/effects/Echo.h:40
+#: effects/Echo.h:48
msgid "Performing Echo"
msgstr "Yankı Uygulanıyor"
-#: effects/Effect.cpp:378
+#: effects/Effect.cpp:498
msgid "Preparing preview"
msgstr ""
-#: effects/Effect.cpp:404
+#: effects/Effect.cpp:530
msgid "Previewing"
msgstr ""
-#: ../src/ControlToolBar.cpp:721 ../src/effects/Effect.cpp:329
+#: effects/Effect.cpp:545
msgid "Error while opening sound device. Please check the output device settings and the project sample rate."
msgstr "Ses aygıtını açıyorken hata. Lütfen proje örnek oranını ve çıkıŠaygıtı ayarlarını kontrol edin."
-#: ../src/effects/Effect.h:84
+#: effects/Effect.h:96
+#: effects/TimeScale.cpp:52
#, c-format
msgid "Applied effect: %s"
msgstr "UygulanmıŠetki:%s"
-#: effects/Equalization.cpp:1119
+#: effects/Equalization.cpp:338
msgid "B-spline"
msgstr ""
-#: effects/Equalization.cpp:1119
+#: effects/Equalization.cpp:339
msgid "Cosine"
msgstr ""
-#: effects/Equalization.cpp:1119
+#: effects/Equalization.cpp:340
msgid "Cubic"
msgstr ""
-#: ../src/effects/Equalization.cpp:156
+#: effects/Equalization.cpp:379
+#: effects/Equalization.cpp:430
msgid "Equalization"
msgstr "DenkleÅtirme"
-#: effects/Equalization.cpp:865
+#: effects/Equalization.cpp:1009
msgid "Error loading EQ curve"
msgstr ""
-#: effects/Equalization.cpp:1013
+#: effects/Equalization.cpp:1048
msgid "custom"
msgstr ""
-#: effects/Equalization.cpp:971
+#: effects/Equalization.cpp:1097
+msgid "Error saving equalization curves"
+msgstr ""
+
+#. i18n-hint: && in here is an escape character to get a single &
+#. * on screen, so keep it as is
+#: effects/Equalization.cpp:1120
msgid "Equalization, by Martyn Shaw && Mitch Golden"
msgstr ""
-#: effects/Equalization.cpp:992
+#: effects/Equalization.cpp:1141
msgid "Max dB"
msgstr ""
-#: effects/Equalization.cpp:994
+#: effects/Equalization.cpp:1143
msgid "Min dB"
msgstr ""
-#: effects/Equalization.cpp:1093
+#: effects/Equalization.cpp:1216
msgid "kHz"
msgstr ""
-#: effects/Equalization.cpp:1110
+#: effects/Equalization.cpp:1233
msgid "Draw curves"
msgstr ""
-#: effects/Equalization.cpp:1115
+#: effects/Equalization.cpp:1238
msgid "Graphic EQ"
msgstr ""
-#: effects/Equalization.cpp:1131
+#: effects/Equalization.cpp:1252
msgid "Linear frequency scale"
msgstr ""
-#: effects/Equalization.cpp:1140
+#: effects/Equalization.cpp:1261
msgid "Length of filter:"
msgstr ""
-#: effects/Equalization.cpp:1048
+#: effects/Equalization.cpp:1282
msgid "Select curve:"
msgstr ""
-#: effects/Equalization.cpp:1058 effects/Equalization.cpp:2244
+#: effects/Equalization.cpp:1292
+#: effects/Equalization.cpp:2552
+#: export/ExportMultiple.cpp:924
msgid "Save As..."
msgstr ""
-#: effects/Equalization.cpp:1064
+#: effects/Equalization.cpp:1298
msgid "Flat"
msgstr ""
-#: effects/Equalization.cpp:2243
+#: effects/Equalization.cpp:2551
msgid "Enter the desired name of the curve"
msgstr ""
-#: effects/Equalization.cpp:2343
+#: effects/Equalization.cpp:2651
+#: export/ExportFFmpegDialogs.cpp:1214
msgid "Confirm Deletion"
msgstr ""
-#: ../src/effects/Equalization.h:38
+#: effects/Equalization.h:82
msgid "Equalization..."
msgstr "DenkleÅtirme..."
-#: ../src/effects/Equalization.h:42
+#: effects/Equalization.h:96
msgid "Performing Equalization"
msgstr "EÅitleme Uygulanıyor"
-#: ../src/effects/Fade.h:23
+#: effects/Fade.h:24
msgid "Fade In"
msgstr "Azalt"
-#: ../src/effects/Fade.h:27
+#: effects/Fade.h:38
msgid "Fading In"
msgstr "Azaltıyor"
-#: ../src/effects/Fade.h:43
+#: effects/Fade.h:54
msgid "Fade Out"
msgstr "Åiddetini Artır"
-#: ../src/effects/Fade.h:47
+#: effects/Fade.h:68
msgid "Fading Out"
msgstr "Åiddetini Artırıyor"
-#: effects/FindClipping.cpp:49
+#: effects/FindClipping.cpp:50
msgid "Detect clipping"
msgstr ""
-#: effects/FindClipping.cpp:91
+#: effects/FindClipping.cpp:93
msgid "Clipping"
msgstr ""
-#: effects/FindClipping.cpp:211
+#: effects/FindClipping.cpp:213
msgid "Find Clipping"
msgstr ""
-#: effects/FindClipping.cpp:222
+#: effects/FindClipping.cpp:224
msgid "by Leland Lucius"
msgstr ""
-#: effects/FindClipping.cpp:234
+#: effects/FindClipping.cpp:236
msgid "Start threshold (samples):"
msgstr ""
-#: effects/FindClipping.cpp:238
+#: effects/FindClipping.cpp:240
msgid "Stop threshold (samples):"
msgstr ""
-#: effects/FindClipping.cpp:250
+#: effects/FindClipping.cpp:252
msgid "Start and stop must be greater than 0."
msgstr ""
@@ -4789,63 +5417,63 @@ msgstr ""
msgid "Find Clipping..."
msgstr ""
-#: effects/FindClipping.h:47
+#: effects/FindClipping.h:54
msgid "Detecting clipping"
msgstr ""
-#: ../src/effects/Invert.h:27
+#: effects/Invert.h:27
msgid "Invert"
msgstr "DönüÅtür"
-#: ../src/effects/Invert.h:31
+#: effects/Invert.h:41
msgid "Inverting"
msgstr "Evriliyor"
-#: BatchCommands.cpp:237 effects/Leveller.cpp:129
+#: effects/Leveller.cpp:192
msgid "Leveller"
msgstr ""
-#: effects/Leveller.cpp:47
+#: effects/Leveller.cpp:205
msgid "None-Skip"
msgstr ""
-#: effects/Leveller.cpp:47
+#: effects/Leveller.cpp:206
msgid "Light"
msgstr ""
-#: effects/Leveller.cpp:47
+#: effects/Leveller.cpp:207
msgid "Moderate"
msgstr ""
-#: effects/Leveller.cpp:47
+#: effects/Leveller.cpp:208
msgid "Heavy"
msgstr ""
-#: effects/Leveller.cpp:47
+#: effects/Leveller.cpp:209
msgid "Heavier"
msgstr ""
-#: effects/Leveller.cpp:47
+#: effects/Leveller.cpp:210
msgid "Heaviest"
msgstr ""
-#: effects/TruncSilence.cpp:332
+#: effects/Leveller.cpp:214
msgid "by Lynn Allan"
msgstr ""
-#: effects/Leveller.cpp:220 effects/Leveller.cpp:233
+#: effects/Leveller.cpp:224
msgid "Degree of Leveling"
msgstr ""
-#: effects/Leveller.cpp:226
+#: effects/Leveller.cpp:228
msgid "Degree of Leveling:"
msgstr ""
-#: effects/Leveller.cpp:244
+#: effects/Leveller.cpp:236
msgid "Noise Threshold (Hiss/Hum/Ambient Noise)"
msgstr ""
-#: effects/Leveller.cpp:238
+#: effects/Leveller.cpp:240
msgid "Threshold for Noise:"
msgstr ""
@@ -4853,7 +5481,7 @@ msgstr ""
msgid "Leveller..."
msgstr ""
-#: effects/Leveller.h:32
+#: effects/Leveller.h:42
msgid "Applying Leveller..."
msgstr ""
@@ -4881,10 +5509,6 @@ msgstr ""
msgid "Analyser"
msgstr ""
-#: toolbars/MixerToolBar.cpp:58
-msgid "Mixer"
-msgstr ""
-
#: effects/LoadEffects.cpp:116
msgid "Simulator"
msgstr ""
@@ -4901,7 +5525,8 @@ msgstr ""
msgid "Reverb"
msgstr ""
-#: ../src/effects/Phaser.cpp:59
+#: effects/LoadEffects.cpp:124
+#: effects/Phaser.cpp:208
msgid "Phaser"
msgstr "Fazlayıcı"
@@ -4989,7 +5614,8 @@ msgstr ""
msgid "Gate"
msgstr ""
-#: ../src/effects/NoiseRemoval.cpp:69
+#: effects/LoadEffects.cpp:199
+#: effects/NoiseRemoval.cpp:738
msgid "Noise Removal"
msgstr "Gürültü Kaldırma"
@@ -5025,263 +5651,278 @@ msgstr ""
msgid "Noise Generator"
msgstr ""
-#: effects/Noise.cpp:256
+#: effects/Noise.cpp:189
msgid "Noise type"
msgstr ""
-#: effects/Noise.h:41
+#: effects/Noise.h:42
msgid "Noise..."
msgstr ""
-#: effects/Noise.h:45
+#: effects/Noise.h:56
#, c-format
msgid "Applied effect: Generate Noise, %.6lf seconds"
msgstr ""
-#: effects/Noise.h:49
+#: effects/Noise.h:60
msgid "Generating Noise"
msgstr ""
-#: effects/NoiseRemoval.cpp:192
+#: effects/NoiseRemoval.cpp:191
#, c-format
-msgid "Could not open file:\n"
+msgid ""
+"Could not open file:\n"
" %s"
msgstr ""
-#: effects/NoiseRemoval.cpp:277
+#: effects/NoiseRemoval.cpp:276
msgid "Attempt to run Noise Removal without a noise profile.\n"
msgstr ""
-#: ../src/effects/NoiseRemoval.cpp:410
+#: effects/NoiseRemoval.cpp:827
msgid "Step 1"
msgstr "Adım 1"
-#: effects/NoiseRemoval.cpp:765
-msgid "Select a few seconds of just noise so Audacity knows what to filter out,\n"
+#: effects/NoiseRemoval.cpp:828
+msgid ""
+"Select a few seconds of just noise so Audacity knows what to filter out,\n"
"then click Get Noise Profile:"
msgstr ""
-#: ../src/effects/NoiseRemoval.cpp:427
+#: effects/NoiseRemoval.cpp:829
msgid "Step 2"
msgstr "Adım 2"
-#: effects/NoiseRemoval.cpp:767
-msgid "Select all of the audio you want filtered, choose how much noise you want\n"
+#: effects/NoiseRemoval.cpp:830
+msgid ""
+"Select all of the audio you want filtered, choose how much noise you want\n"
"filtered out, and then click 'OK' to remove noise.\n"
msgstr ""
-#: ../src/effects/NoiseRemoval.cpp:403
+#: effects/NoiseRemoval.cpp:835
msgid "Noise Removal by Dominic Mazzoni"
msgstr "Dominic Mazzoni tarafından Gürültü Kaldırma"
-#: ../src/effects/NoiseRemoval.cpp:419
+#: effects/NoiseRemoval.cpp:843
msgid "Get Noise Profile"
msgstr "Gürültü Profili Al"
-#: effects/NoiseRemoval.cpp:791
+#: effects/NoiseRemoval.cpp:854
msgid "Noise reduction (dB):"
msgstr ""
-#: effects/NoiseRemoval.cpp:850
+#: effects/NoiseRemoval.cpp:859
msgid "Noise reduction"
msgstr ""
-#: effects/NoiseRemoval.cpp:799
+#: effects/NoiseRemoval.cpp:863
msgid "Frequency smoothing (Hz):"
msgstr ""
-#: effects/NoiseRemoval.cpp:859
+#: effects/NoiseRemoval.cpp:868
msgid "Frequency smoothing"
msgstr ""
-#: effects/NoiseRemoval.cpp:807
+#: effects/NoiseRemoval.cpp:872
msgid "Attack/decay time (secs):"
msgstr ""
-#: effects/NoiseRemoval.cpp:868
+#: effects/NoiseRemoval.cpp:877
msgid "Attach/decay time"
msgstr ""
-#: ../src/effects/NoiseRemoval.h:38
+#: effects/NoiseRemoval.h:37
msgid "Noise Removal..."
msgstr "Gürültü Kaldırma..."
-#: ../src/effects/NoiseRemoval.h:43
+#: effects/NoiseRemoval.h:52
msgid "Creating Noise Profile"
msgstr "Gürültü Profili OluÅturuluyor"
-#: ../src/effects/NoiseRemoval.h:45
+#: effects/NoiseRemoval.h:54
msgid "Removing Noise"
msgstr "Gürültü Kaldırılıyor"
-#: effects/Normalize.cpp:68
+#. i18n-hint: First %s is the effect name, 2nd and 3rd are either true or
+#. * false (translated below) if those options were selected
+#: effects/Normalize.cpp:70
#, c-format
msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr ""
-#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
-msgid "false"
-msgstr ""
-
-#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
+#. i18n-hint: true here means that the option was
+#. * selected. Opposite false if not selected
+#: effects/Normalize.cpp:74
+#: effects/Normalize.cpp:75
msgid "true"
msgstr ""
-#: effects/Normalize.cpp:73
+#: effects/Normalize.cpp:77
#, c-format
msgid ", maximum amplitude = %.1f dB"
msgstr ""
-#: ../src/effects/Normalize.cpp:29
+#: effects/Normalize.cpp:327
msgid "Normalize"
msgstr "Düzgele"
-#: effects/Normalize.cpp:351 effects/Normalize.cpp:352
+#: effects/Normalize.cpp:355
msgid "Remove any DC offset (center on 0.0 vertically)"
msgstr ""
-#: effects/Normalize.cpp:357
+#: effects/Normalize.cpp:358
msgid "Normalize maximum amplitude to:"
msgstr ""
-#: effects/Normalize.cpp:336
+#: effects/Normalize.cpp:366
msgid "-"
msgstr ""
-#: effects/Normalize.cpp:367
+#: effects/Normalize.cpp:371
msgid "Maximum amplitude dB"
msgstr ""
-#: ../src/effects/Normalize.h:34
+#: effects/Normalize.h:33
msgid "Normalize..."
msgstr "Düzgele..."
-#: ../src/effects/Normalize.h:38
+#: effects/Normalize.h:49
msgid "Normalizing..."
msgstr "Düzgeleniyor..."
-#: ../src/effects/Phaser.cpp:47
+#: effects/Phaser.cpp:65
#, c-format
msgid "Applied effect: %s %d stages, %.0f%% wet, frequency = %.1f Hz, start phase = %.0f deg, depth = %d, feedback = %.0f%%"
msgstr "UygulanmıŠetki: %s %d evreleri, %.0f%% ıslak, frekans = %.1f Hz, baÅlangıç fazı = %.0f derecesi, derinlik = %d, geribildirim = %.0f%%"
-#: ../src/effects/Phaser.cpp:455
+#: effects/Phaser.cpp:228
msgid "Stages:"
msgstr "AÅamalar:"
-#: effects/Phaser.cpp:229
+#: effects/Phaser.cpp:231
msgid "Stages"
msgstr ""
-#: effects/Phaser.cpp:231
+#: effects/Phaser.cpp:236
msgid "Dry/Wet:"
msgstr ""
-#: effects/Phaser.cpp:234
+#: effects/Phaser.cpp:239
msgid "Dry Wet"
msgstr ""
-#: ../src/effects/Phaser.cpp:497 ../src/effects/Wahwah.cpp:468
+#: effects/Phaser.cpp:244
+#: effects/Wahwah.cpp:222
msgid "LFO Frequency (Hz):"
msgstr "LFO Frekansı (Hz):"
-#: effects/Phaser.cpp:239 effects/Wahwah.cpp:224
+#: effects/Phaser.cpp:247
+#: effects/Wahwah.cpp:225
msgid "LFO frequency in hertz"
msgstr ""
-#: ../src/effects/Phaser.cpp:513 ../src/effects/Wahwah.cpp:484
+#: effects/Phaser.cpp:252
+#: effects/Wahwah.cpp:230
msgid "LFO Start Phase (deg.):"
msgstr "LFO BaÅlangıç Fazı (der.):"
-#: effects/Phaser.cpp:244 effects/Wahwah.cpp:229
+#: effects/Phaser.cpp:255
+#: effects/Wahwah.cpp:233
msgid "LFO start phase in degrees"
msgstr ""
-#: ../src/effects/Phaser.cpp:529
+#: effects/Phaser.cpp:260
msgid "Depth:"
msgstr "Derinlik:"
-#: effects/Phaser.cpp:249 effects/Wahwah.cpp:234
+#: effects/Phaser.cpp:263
+#: effects/Wahwah.cpp:241
msgid "Depth in percent"
msgstr ""
-#: ../src/effects/Phaser.cpp:545
+#: effects/Phaser.cpp:268
msgid "Feedback (%):"
msgstr "Geri Besleme (%):"
-#: effects/Phaser.cpp:254
+#: effects/Phaser.cpp:271
msgid "Feedback in percent"
msgstr ""
-#: ../src/effects/Phaser.h:41
+#: effects/Phaser.h:45
msgid "Phaser..."
msgstr "Fazlayıcı..."
-#: ../src/effects/Phaser.h:45
+#: effects/Phaser.h:59
msgid "Applying Phaser"
msgstr "Evreleyici Uygulanıyor"
-#: effects/Repair.cpp:94
-msgid "The Repair effect is intended to be used on very short sections of damaged audio (up to 128 samples).\n"
+#: effects/Repair.cpp:99
+msgid ""
+"The Repair effect is intended to be used on very short sections of damaged audio (up to 128 samples).\n"
"\n"
"Zoom in and select a tiny fraction of a second to repair."
msgstr ""
#: effects/Repair.cpp:105
-msgid "Repair works by using audio data outside the selection region.\n"
+msgid ""
+"Repair works by using audio data outside the selection region.\n"
"\n"
"Please select a region that has audio touching at least one side of it.\n"
"\n"
"The more surrounding audio, the better it performs."
msgstr ""
-#: effects/Repair.h:33
+#: effects/Repair.h:43
msgid "Repairing damaged audio"
msgstr ""
-#: ../src/effects/Repeat.cpp:31
+#: effects/Repeat.cpp:50
#, c-format
msgid "Repeated %d times"
msgstr "%d kez tekrarla"
-#: ../src/effects/Repeat.cpp:57
+#: effects/Repeat.cpp:76
msgid "Tracks are too long to repeat the selection."
msgstr "İzler seçimi tekrarlamak için çok uzun."
-#: ../src/effects/Repeat.cpp:58 ../src/effects/Repeat.cpp:62
+#: effects/Repeat.cpp:77
+#: effects/Repeat.cpp:186
msgid "Repeat"
msgstr "Tekrarla"
-#: effects/Repeat.cpp:212
+#: effects/Repeat.cpp:211
#, fuzzy
msgid "Number of times to repeat:"
msgstr "Tekrarlanacak kerelerin sayısı"
-#: effects/Repeat.cpp:221
+#: effects/Repeat.cpp:220
msgid "New selection length: hh:mm:ss"
msgstr ""
-#: ../src/effects/Repeat.cpp:241 ../src/effects/Repeat.cpp:280
+#: effects/Repeat.cpp:252
msgid "New selection length: "
msgstr "Yeni seçim uzunluÄu: "
-#: widgets/TimeTextCtrl.cpp:199
+#. i18n-hint: Name of time display format that shows time in hours, minutes
+#. * and seconds
+#: effects/Repeat.cpp:261
+#: widgets/TimeTextCtrl.cpp:272
msgid "hh:mm:ss"
msgstr ""
-#: ../src/effects/Repeat.h:34
+#: effects/Repeat.h:33
msgid "Repeat..."
msgstr "Tekrarla..."
-#: ../src/effects/Repeat.h:38
+#: effects/Repeat.h:47
msgid "Performing Repeat"
msgstr "Tekrarlama Uygulanıyor"
-#: ../src/effects/Reverse.h:30
+#: effects/Reverse.h:30
msgid "Reverse"
msgstr "Geri Döndür"
-#: ../src/effects/Reverse.h:34
+#: effects/Reverse.h:44
msgid "Reversing"
msgstr "Geri Dönüyor"
@@ -5294,16 +5935,16 @@ msgstr ""
msgid "Silence..."
msgstr "Sessizlik.."
-#: ../src/effects/Silence.h:37
+#: effects/Silence.h:48
msgid "Generating Silence"
msgstr "Sessizlik OluÅturuyor"
-#: ../src/effects/Silence.h:42
+#: effects/Silence.h:53
#, c-format
msgid "Applied effect: Generate Silence, %.6lf seconds"
msgstr "UygulanmıŠetki: Sessizlik OluÅtur, %.6lf saniye"
-#: effects/SimplePairedTwoTrack.h:120
+#: effects/SimplePairedTwoTrack.h:115
msgid "Sorry, this effect cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr ""
@@ -5316,11 +5957,12 @@ msgid "SpikeCleaner by Lynn Allan"
msgstr ""
#: effects/SpikeCleaner.cpp:165
-msgid "Max Spike Duration (milliseconds): \n"
+msgid ""
+"Max Spike Duration (milliseconds): \n"
"(99999 or greater is off)"
msgstr ""
-#: effects/SpikeCleaner.cpp:178 effects/TruncSilence.cpp:269
+#: effects/SpikeCleaner.cpp:178
msgid "Theshold for silence: "
msgstr ""
@@ -5328,13 +5970,14 @@ msgstr ""
msgid "Spike Cleaner..."
msgstr ""
-#: effects/SpikeCleaner.h:31
+#: effects/SpikeCleaner.h:35
msgid "Applying Spike Cleaner..."
msgstr ""
#: effects/StereoToMono.h:23
-msgid "&Stereo to Mono"
-msgstr ""
+#, fuzzy
+msgid "Stereo to Mono"
+msgstr "İkili, "
#: effects/StereoToMono.h:38
msgid "Applying Stereo to Mono"
@@ -5384,12 +6027,13 @@ msgstr ""
msgid "Changing Tempo/Pitch"
msgstr ""
-#: effects/ToneGen.cpp:59
+#: effects/ToneGen.cpp:61
#, c-format
msgid "Applied effect: Generate %s wave %s, frequency = %.2f Hz, amplitude = %.2f, %.6lf seconds"
msgstr ""
-#: ../src/widgets/Meter.cpp:292
+#: effects/ToneGen.cpp:69
+#: widgets/Meter.cpp:405
msgid "Linear"
msgstr "DoÄrusal"
@@ -5397,323 +6041,395 @@ msgstr "DoÄrusal"
msgid "Logarithmic"
msgstr ""
-#: effects/ToneGen.cpp:66
+#: effects/ToneGen.cpp:71
msgid "Chirp Generator"
msgstr ""
-#: ../src/effects/ToneGen.cpp:43
+#: effects/ToneGen.cpp:71
msgid "Tone Generator"
msgstr "Ton Ãreteci"
-#: ../src/effects/ToneGen.cpp:48
+#: effects/ToneGen.cpp:72
msgid "Sine"
msgstr ""
-#: ../src/effects/ToneGen.cpp:49
+#: effects/ToneGen.cpp:73
msgid "Square"
msgstr "Kare"
-#: ../src/effects/ToneGen.cpp:50
+#: effects/ToneGen.cpp:74
msgid "Sawtooth"
msgstr "Testere DiÅi"
-#: effects/ToneGen.cpp:70
+#: effects/ToneGen.cpp:75
msgid "Square, no alias"
msgstr ""
-#: effects/ToneGen.cpp:298
+#: effects/ToneGen.cpp:277
+#: effects/ToneGen.cpp:314
msgid "Frequency (Hz)"
msgstr ""
-#: ../src/effects/ToneGen.cpp:263
+#: effects/ToneGen.cpp:305
msgid "Waveform:"
msgstr "Dalga biçimi:"
-#: effects/ToneGen.cpp:358
+#: effects/ToneGen.cpp:314
msgid "Frequency Hertz Start"
msgstr ""
-#: effects/ToneGen.cpp:359
+#: effects/ToneGen.cpp:315
msgid "Frequency Hertz End"
msgstr ""
-#: effects/ToneGen.cpp:360
+#: effects/ToneGen.cpp:316
msgid "Amplitude Start"
msgstr ""
-#: effects/ToneGen.cpp:361
+#: effects/ToneGen.cpp:317
msgid "Amplitude End"
msgstr ""
-#: effects/ToneGen.cpp:365
+#: effects/ToneGen.cpp:322
msgid "Interpolation:"
msgstr ""
-#: effects/ToneGen.h:39
+#: effects/ToneGen.h:40
msgid "Chirp..."
msgstr ""
-#: effects/ToneGen.h:39
+#: effects/ToneGen.h:40
msgid "Tone..."
msgstr ""
-#: effects/ToneGen.h:43
+#: effects/ToneGen.h:54
msgid "Generating Chirp"
msgstr ""
-#: ../src/effects/ToneGen.h:44
+#: effects/ToneGen.h:54
msgid "Generating Tone"
msgstr "Ton OluÅturuyor"
-#: effects/TruncSilence.cpp:113
+#: effects/TruncSilence.cpp:133
msgid "All tracks must have the same sample rate"
msgstr ""
-#: effects/TruncSilence.cpp:113 effects/TruncSilence.cpp:322
+#: effects/TruncSilence.cpp:133
+#: effects/TruncSilence.cpp:444
msgid "Truncate Silence"
msgstr ""
-#: effects/TruncSilence.cpp:346
-msgid "Max silence duration:"
+#: effects/TruncSilence.cpp:454
+msgid "by Lynn Allan && Philip Van Baren"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:175 prefs/AudioIOPrefs.cpp:178
+#: effects/TruncSilence.cpp:468
+msgid "Min silence duration:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:471
+#: effects/TruncSilence.cpp:475
+#: prefs/MidiIOPrefs.cpp:197
+#: prefs/MidiIOPrefs.cpp:199
msgid "milliseconds"
msgstr ""
-#: effects/TruncSilence.cpp:351
+#: effects/TruncSilence.cpp:472
+msgid "Max silence duration:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:476
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:479
+msgid ":1"
+msgstr ""
+
+#: effects/TruncSilence.cpp:481
msgid "Threshold for silence:"
msgstr ""
-#: effects/TruncSilence.cpp:375
-msgid " Duration must be at least 1 millisecond"
+#: effects/TruncSilence.cpp:507
+msgid ""
+" Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
msgstr ""
-#: BatchCommands.cpp:236 effects/TruncSilence.cpp:84 effects/TruncSilence.h:29
+#: effects/TruncSilence.h:29
msgid "Truncate Silence..."
msgstr ""
-#: effects/TruncSilence.h:33
+#: effects/TruncSilence.h:43
msgid "Truncating Silence..."
msgstr ""
-#: ../src/effects/VST/VSTEffect.cpp:180
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
+#: effects/VST/VSTEffect.cpp:256
+#: effects/ladspa/LadspaEffect.cpp:590
+#: effects/lv2/LV2Effect.cpp:798
+msgid "Effect Settings"
+msgstr "Etki Ayarları"
+
+#: effects/VST/VSTEffect.cpp:336
+#: effects/ladspa/LadspaEffect.cpp:555
+#: effects/ladspa/LadspaEffect.cpp:563
+#: prefs/QualityPrefs.cpp:74
+#: prefs/TracksPrefs.cpp:48
+msgid "None"
+msgstr "Hiç"
+
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
msgstr ""
-#: ../src/effects/VST/VSTEffect.cpp:196
-msgid "Can't process replacing"
-msgstr "DeÄiÅtirme iÅlenemedi"
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
-#: ../src/effects/VST/VSTEffect.cpp:410
-msgid "VST Plug-in parameters:"
-msgstr "VST takılabilir parametreleri:"
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
-#: ../src/effects/Wahwah.cpp:41
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr ""
+
+#: effects/Wahwah.cpp:61
#, c-format
msgid "Applied effect: %s frequency = %.1f Hz, start phase = %.0f deg, depth = %.0f%%, resonance = %.1f, frequency offset = %.0f%%"
msgstr "UygulanmıŠetki: %s frekansı = %.1f Hz, baÅlangıç fazı = %.0f derecesi, derinlik = %.0f% %, çınlama = %.1f, frekans ofseti = %.0f%%"
-#: ../src/effects/Wahwah.cpp:52
+#: effects/Wahwah.cpp:203
msgid "Wahwah"
msgstr "Wahwah"
-#: ../src/effects/Wahwah.cpp:500
+#: effects/Wahwah.cpp:238
msgid "Depth (%):"
msgstr "Derinlik (%):"
-#: ../src/effects/Wahwah.cpp:516
+#: effects/Wahwah.cpp:246
msgid "Resonance:"
msgstr "Ãınlama:"
-#: effects/Wahwah.cpp:239
+#: effects/Wahwah.cpp:249
msgid "Resonance"
msgstr ""
-#: ../src/effects/Wahwah.cpp:532
+#: effects/Wahwah.cpp:254
msgid "Wah Frequency Offset (%):"
msgstr "Wah Frekans Ofseti (%):"
-#: effects/Wahwah.cpp:244
+#: effects/Wahwah.cpp:257
msgid "Wah frequency offset in percent"
msgstr ""
-#: ../src/effects/Wahwah.h:39
+#: effects/Wahwah.h:41
msgid "Wahwah..."
msgstr "Wahwah..."
-#: ../src/effects/Wahwah.h:43
+#: effects/Wahwah.h:55
msgid "Applying Wahwah"
msgstr "Wahwah Uygulanıyor"
-#: ../src/effects/ladspa/LadspaEffect.cpp:137
+#: effects/audiounits/AudioUnitEffect.cpp:139
+#: effects/ladspa/LadspaEffect.cpp:178
+#: effects/lv2/LV2Effect.cpp:193
#, c-format
msgid "Performing Effect: %s"
msgstr "Etki Uygulanıyor: %s"
-#: effects/ladspa/LadspaEffect.cpp:189
+#: effects/ladspa/LadspaEffect.cpp:198
+#: effects/lv2/LV2Effect.cpp:213
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr ""
-#: ../src/effects/ladspa/LadspaEffect.cpp:435
-#: ../src/effects/ladspa/LadspaEffect.cpp:443
-#: ../src/prefs/QualityPrefs.cpp:160
-msgid "None"
-msgstr "Hiç"
-
-#: ../src/effects/ladspa/LadspaEffect.cpp:437
+#: effects/ladspa/LadspaEffect.cpp:557
+#: effects/lv2/LV2Effect.cpp:773
+#: effects/vamp/VampEffect.cpp:371
msgid "Author: "
msgstr "Yazar:"
-#: ../src/effects/ladspa/LadspaEffect.cpp:452
-msgid "Effect Settings"
-msgstr "Etki Ayarları"
-
-#: ../src/effects/Silence.cpp:127 ../src/effects/ToneGen.cpp:306
+#: effects/ladspa/LadspaEffect.cpp:685
+#: effects/ladspa/LadspaEffect.cpp:688
+#: effects/lv2/LV2Effect.cpp:809
+#: effects/lv2/LV2Effect.cpp:812
msgid "Length (seconds)"
msgstr "Uzunluk (saniye)"
-#: effects/lv2/LV2Effect.cpp:849 effects/lv2/LV2Effect.cpp:852
+#: effects/lv2/LV2Effect.cpp:824
+#: effects/lv2/LV2Effect.cpp:827
msgid "Note length (seconds)"
msgstr ""
-#: effects/lv2/LV2Effect.cpp:860 effects/lv2/LV2Effect.cpp:863
+#: effects/lv2/LV2Effect.cpp:835
+#: effects/lv2/LV2Effect.cpp:838
msgid "Note velocity"
msgstr ""
-#: effects/lv2/LV2Effect.cpp:871 effects/lv2/LV2Effect.cpp:874
+#: effects/lv2/LV2Effect.cpp:846
+#: effects/lv2/LV2Effect.cpp:849
msgid "Note key"
msgstr ""
-#: ../src/effects/nyquist/Nyquist.cpp:217
+#: effects/nyquist/Nyquist.cpp:73
msgid "Applying Nyquist Effect..."
msgstr "Nyquist Efekti Uygulanıyor..."
-#: ../src/effects/nyquist/Nyquist.cpp:224
+#: effects/nyquist/Nyquist.cpp:91
+#: effects/nyquist/Nyquist.cpp:401
msgid "Nyquist Prompt..."
msgstr "Nyquist Komutu..."
-#: ../src/effects/nyquist/Nyquist.cpp:282
+#: effects/nyquist/Nyquist.cpp:402
msgid "Enter Nyquist Command: "
msgstr "Nyquist Komut GiriÅi: "
-#: ../src/effects/nyquist/Nyquist.cpp:370
+#: effects/nyquist/Nyquist.cpp:515
msgid "Sorry, cannot apply effect on stereo tracks where the tracks don't match."
msgstr "Ãzgünüm, izlerin eÅleÅmediÄi yerdeki ikili izler üzerindeki etki uygulamadı."
-#: ../src/effects/nyquist/Nyquist.cpp:397
+#: effects/nyquist/Nyquist.cpp:557
msgid "Nyquist"
msgstr "Nyquist"
-#: ../src/effects/nyquist/Nyquist.cpp:398
+#: effects/nyquist/Nyquist.cpp:558
msgid "Nyquist Output: "
msgstr "Nyquist Ãıktısı: "
-#: effects/nyquist/Nyquist.cpp:594 effects/nyquist/Nyquist.cpp:605
+#: effects/nyquist/Nyquist.cpp:656
+#: effects/nyquist/Nyquist.cpp:665
msgid "Nyquist returned the value:"
msgstr ""
-#: ../src/effects/nyquist/Nyquist.cpp:594
+#: effects/nyquist/Nyquist.cpp:702
msgid "Nyquist did not return audio.\n"
msgstr "Nyquist ses döndürmedi.\n"
-#: ../src/effects/nyquist/Nyquist.cpp:604
+#: effects/nyquist/Nyquist.cpp:711
msgid "Nyquist returned too many audio channels.\n"
msgstr "Nyquist çok fazla ses kanalı döndürdü.\n"
-#: effects/vamp/VampEffect.cpp:75
+#: effects/vamp/VampEffect.cpp:81
#, c-format
msgid "Extracting features: %s"
msgstr ""
-#: effects/vamp/VampEffect.cpp:106
+#: effects/vamp/VampEffect.cpp:107
msgid "Sorry, Vamp Plug-ins cannot be run on stereo tracks where the individual channels of the track do not match."
msgstr ""
-#: effects/vamp/VampEffect.cpp:120
+#: effects/vamp/VampEffect.cpp:121
msgid "Sorry, failed to load Vamp Plug-in."
msgstr ""
-#: effects/vamp/VampEffect.cpp:228
+#: effects/vamp/VampEffect.cpp:207
msgid "Sorry, Vamp Plug-in failed to initialize."
msgstr ""
-#: effects/vamp/VampEffect.cpp:376
+#: effects/vamp/VampEffect.cpp:363
msgid " - Vamp audio analysis plugin"
msgstr ""
-#: effects/vamp/VampEffect.cpp:423
+#: effects/vamp/VampEffect.cpp:399
msgid "Plugin Settings"
msgstr ""
-#: effects/vamp/VampEffect.cpp:446
+#: effects/vamp/VampEffect.cpp:418
+#: effects/vamp/VampEffect.cpp:424
msgid "Program"
msgstr ""
-#: export/Export.cpp:469
+#: export/Export.cpp:468
msgid "All the selected audio is muted."
msgstr ""
-#: export/Export.cpp:471
+#: export/Export.cpp:470
msgid "All the audio is muted."
msgstr ""
-#: export/Export.cpp:445
+#: export/Export.cpp:526
msgid "Export File"
msgstr ""
-#: export/Export.cpp:453
+#: export/Export.cpp:535
msgid "&Options..."
msgstr ""
-#: ../src/export/Export.cpp:202
+#: export/Export.cpp:576
msgid "Are you sure you want to save the file as \""
msgstr "Dosyayı \" olarak kaydetmek istediÄinize emin misiniz"
-#: export/Export.cpp:495
+#: export/Export.cpp:596
#, c-format
-msgid "You are about to save a %s file with the name \"%s\".\n"
+msgid ""
+"You are about to save a %s file with the name \"%s\".\n"
"\n"
"Normally these files end in \".%s\", and some programs will not open files with nonstandard extensions.\n"
"\n"
"Are you sure you want to save the file under this name?"
msgstr ""
-#: export/Export.cpp:516
+#: export/Export.cpp:617
#, c-format
msgid "A file named \"%s\" already exists. Replace?"
msgstr ""
-#: ../src/export/Export.cpp:142
+#: export/Export.cpp:719
msgid "Your tracks will be mixed down to two stereo channels in the exported file."
msgstr "İzleriniz aktarılan dosya içindeki iki ikili kanalda aÅaÄı karıÅtırılmıŠolacak."
-#: ../src/export/Export.cpp:147
+#: export/Export.cpp:724
msgid "Your tracks will be mixed down to a single mono channel in the exported file."
msgstr "İzleriniz aktarılan dosya içindeki tek tekli kanalda aÅaÄı karıÅtırılmıŠolacak."
-#: export/Export.cpp:171
+#: export/Export.cpp:735
msgid "Advanced Mixing Options"
msgstr ""
-#: export/Export.cpp:632
+#: export/Export.cpp:943
#, c-format
msgid "Channel: %2d"
msgstr ""
-#: export/Export.cpp:755
+#: export/Export.cpp:1058
msgid " - Left"
msgstr ""
-#: export/Export.cpp:756
+#: export/Export.cpp:1060
msgid " - Right"
msgstr ""
-#: export/Export.cpp:1072
+#: export/Export.cpp:1082
msgid "Mixer Panel"
msgstr ""
-#: export/Export.cpp:775 export/Export.cpp:829
+#: export/Export.cpp:1088
+#: export/Export.cpp:1135
#, c-format
msgid "Output Channels: %2d"
msgstr ""
@@ -5722,91 +6438,112 @@ msgstr ""
msgid "Specify Command Line Encoder"
msgstr ""
-#: export/ExportCL.cpp:70
+#: export/ExportCL.cpp:68
msgid "Command Line Export Setup"
msgstr ""
-#: export/ExportCL.cpp:75
+#: export/ExportCL.cpp:73
msgid "Command:"
msgstr ""
-#: export/ExportCL.cpp:80
+#: export/ExportCL.cpp:78
msgid "Show output"
msgstr ""
-#: export/ExportCL.cpp:87
+#: export/ExportCL.cpp:85
#, c-format
msgid "Data will be piped to standard in. \"%f\" will be replaced with output filename selected."
msgstr ""
-#: export/ExportCL.cpp:219
+#: export/ExportCL.cpp:220
msgid "(external program)"
msgstr ""
-#: ../src/export/ExportPCM.cpp:79
+#: export/ExportCL.cpp:286
+#: export/ExportPCM.cpp:492
#, c-format
msgid "Cannot export audio to %s"
msgstr "%s de ses aktarılamadı"
-#: ../src/export/ExportCL.cpp:144
+#: export/ExportCL.cpp:360
msgid "Exporting the selected audio using command-line encoder"
msgstr "Komut-satırı kodlayıcısı kullanarak seçili sesi aktarma"
-#: ../src/export/ExportCL.cpp:146
+#: export/ExportCL.cpp:361
msgid "Exporting the entire project using command-line encoder"
msgstr "Komut-satırı kodlayıcısı kullanarak tüm projeyi aktarma"
-#: export/ExportCL.cpp:387
+#: export/ExportCL.cpp:423
msgid "Command Output"
msgstr ""
-#: export/ExportFFmpeg.cpp:59
-msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+#: export/ExportFFmpeg.cpp:61
+msgid ""
+"Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
msgstr ""
-#: export/ExportFFmpeg.cpp:394
+#: export/ExportFFmpeg.cpp:232
+msgid ""
+"Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:433
#, c-format
-msgid "FFmpeg cannot find audio codec 0x%x.\n"
+msgid ""
+"FFmpeg cannot find audio codec 0x%x.\n"
"Support for this codec is probably not compiled in."
msgstr ""
-#: export/ExportFFmpeg.cpp:614
+#: export/ExportFFmpeg.cpp:655
#, c-format
msgid "Attempted to export %d channels, but max. channels for selected output format is %d"
msgstr ""
-#: export/ExportFFmpeg.cpp:638
+#: export/ExportFFmpeg.cpp:684
#, c-format
msgid "Exporting selected audio as %s"
msgstr ""
-#: export/ExportFFmpeg.cpp:639
+#: export/ExportFFmpeg.cpp:685
#, c-format
msgid "Exporting entire file as %s"
msgstr ""
-#: export/ExportMP3.cpp:1863
+#: export/ExportFFmpeg.cpp:748
+#: export/ExportMP3.cpp:1777
msgid "Invalid sample rate"
msgstr ""
-#: export/ExportFFmpeg.cpp:715
+#: export/ExportFFmpeg.cpp:761
#, c-format
-msgid "The project sample rate (%d) is not supported by the current output\n"
+msgid ""
+"The project sample rate (%d) is not supported by the current output\n"
"file format. "
msgstr ""
-#: export/ExportFFmpeg.cpp:718
+#: export/ExportFFmpeg.cpp:764
#, c-format
-msgid "The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
+msgid ""
+"The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
"supported by the current output file format. "
msgstr ""
-#: export/ExportMP3.cpp:1882
+#: export/ExportFFmpeg.cpp:767
+#: export/ExportMP3.cpp:1796
msgid "You may resample to one of the rates below."
msgstr ""
-#: export/ExportMP3.cpp:1905
+#: export/ExportFFmpeg.cpp:795
+#: export/ExportMP3.cpp:1819
msgid "Sample Rates"
msgstr ""
@@ -5814,348 +6551,376 @@ msgstr ""
msgid "Specify AC3 Options"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:117
+#: export/ExportFFmpegDialogs.cpp:112
msgid "AC3 Export Setup"
msgstr ""
-#: ../src/prefs/FileFormatPrefs.cpp:197
+#: export/ExportFFmpegDialogs.cpp:116
+#: export/ExportFFmpegDialogs.cpp:234
+#: export/ExportFFmpegDialogs.cpp:298
+#: export/ExportFFmpegDialogs.cpp:364
+#: export/ExportFFmpegDialogs.cpp:926
+#: export/ExportMP2.cpp:131
msgid "Bit Rate:"
msgstr "Bit Oranı:"
-#: export/ExportFFmpegDialogs.cpp:162
+#: export/ExportFFmpegDialogs.cpp:157
msgid "Specify AAC Options"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:178
+#: export/ExportFFmpegDialogs.cpp:168
msgid "AAC Export Setup"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:217
+#: export/ExportFFmpegDialogs.cpp:172
+#: export/ExportFFmpegDialogs.cpp:929
+#: export/ExportOGG.cpp:84
+msgid "Quality:"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.cpp:211
msgid "Specify AMR-NB Options"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:241
+#: export/ExportFFmpegDialogs.cpp:230
msgid "AMR-NB Export Setup"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:286
+#: export/ExportFFmpegDialogs.cpp:275
msgid "Specify AMR-WB Options"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:310
+#: export/ExportFFmpegDialogs.cpp:294
msgid "AMR-WB Export Setup"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:357
+#: export/ExportFFmpegDialogs.cpp:341
msgid "Specify WMA Options"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:381
+#: export/ExportFFmpegDialogs.cpp:360
msgid "WMA Export Setup"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:509
+#: export/ExportFFmpegDialogs.cpp:491
#, c-format
msgid "Overwrite preset '%s'?"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:510
+#: export/ExportFFmpegDialogs.cpp:492
msgid "Confirm Overwrite"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:501
+#: export/ExportFFmpegDialogs.cpp:504
msgid "Please select format before saving a profile"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:509
+#: export/ExportFFmpegDialogs.cpp:512
msgid "Please select codec before saving a profile"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:580
+#: export/ExportFFmpegDialogs.cpp:582
#, c-format
msgid "Preset '%s' does not exist."
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:803
+#: export/ExportFFmpegDialogs.cpp:797
msgid "Specify Other Options"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:897
+#: export/ExportFFmpegDialogs.cpp:886
msgid "Preset:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:898
+#: export/ExportFFmpegDialogs.cpp:887
msgid "Load Preset"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:899
+#: export/ExportFFmpegDialogs.cpp:888
msgid "Save Preset"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:900
+#: export/ExportFFmpegDialogs.cpp:889
msgid "Delete Preset"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:901
+#: export/ExportFFmpegDialogs.cpp:890
msgid "Import Presets"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:902
+#: export/ExportFFmpegDialogs.cpp:891
msgid "Export Presets"
msgstr ""
-#: export/ExportPCM.cpp:177
+#: export/ExportFFmpegDialogs.cpp:896
msgid "Format:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:909
+#: export/ExportFFmpegDialogs.cpp:898
msgid "Codec:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:913
+#: export/ExportFFmpegDialogs.cpp:902
msgid "Not all formats and codecs are compatible. Some parameters (such as bitrate and samplerate) combinations are not compatible with some codecs too."
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:916
+#: export/ExportFFmpegDialogs.cpp:905
msgid "Format selector:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:917
+#: export/ExportFFmpegDialogs.cpp:906
msgid "Codec selector:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:919
+#: export/ExportFFmpegDialogs.cpp:908
msgid "Show All Formats"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:920
+#: export/ExportFFmpegDialogs.cpp:909
msgid "Show All Codecs"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:914
+#: export/ExportFFmpegDialogs.cpp:916
msgid "Options"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:134
+#: export/ExportFFmpegDialogs.cpp:920
+#: prefs/GUIPrefs.cpp:116
msgid "Language:"
msgstr "Dil:"
-#: export/ExportFFmpegDialogs.cpp:932
-msgid "ISO 639 3-letter language code\n"
+#: export/ExportFFmpegDialogs.cpp:921
+msgid ""
+"ISO 639 3-letter language code\n"
"Optional\n"
"empty - automatic"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:934
+#: export/ExportFFmpegDialogs.cpp:923
msgid "Tag:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:935
-msgid "Codec tag (FOURCC)\n"
+#: export/ExportFFmpegDialogs.cpp:924
+msgid ""
+"Codec tag (FOURCC)\n"
"Optional\n"
"empty - automatic"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:938
-msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n"
+#: export/ExportFFmpegDialogs.cpp:927
+msgid ""
+"Bit Rate (bits/second) - influences the resulting file size and quality\n"
"Some codecs may only accept specific values (128k, 192k, 256k etc)\n"
"0 - automatic\n"
"Recommended - 192000"
msgstr ""
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr ""
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid ""
+"Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:943
+#: export/ExportFFmpegDialogs.cpp:932
msgid "Sample Rate:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:944
-msgid "Sample rate (Hz)\n"
+#: export/ExportFFmpegDialogs.cpp:933
+msgid ""
+"Sample rate (Hz)\n"
"0 - don't change sample rate"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:946
+#: export/ExportFFmpegDialogs.cpp:935
msgid "Cutoff Bandwidth:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:947
-msgid "Audio cutoff bandwidth (Hz)\n"
+#: export/ExportFFmpegDialogs.cpp:936
+msgid ""
+"Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:949
+#: export/ExportFFmpegDialogs.cpp:938
msgid "Profile:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:951
-msgid "AAC Profile\n"
+#: export/ExportFFmpegDialogs.cpp:940
+msgid ""
+"AAC Profile\n"
"Low Complexity -default\n"
"Most players won't play anything other than LC"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:940
+#: export/ExportFFmpegDialogs.cpp:942
msgid "Use Bit Reservoir"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:943
+#: export/ExportFFmpegDialogs.cpp:945
msgid "Use Variable Block Length"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:948
+#: export/ExportFFmpegDialogs.cpp:950
msgid "FLAC options"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:965
+#: export/ExportFFmpegDialogs.cpp:954
msgid "Compression Level:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:966
-msgid "Compression level\n"
+#: export/ExportFFmpegDialogs.cpp:955
+msgid ""
+"Compression level\n"
"Required for FLAC\n"
"-1 - automatic\n"
"min - 0 (fast encoding, large output file)\n"
"max - 10 (slow encoding, small output file)"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:968
+#: export/ExportFFmpegDialogs.cpp:957
msgid "Frame Size:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:969
-msgid "Frame size\n"
+#: export/ExportFFmpegDialogs.cpp:958
+msgid ""
+"Frame size\n"
"Optional\n"
"0 - default\n"
"min - 16\n"
"max - 65535"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:971
+#: export/ExportFFmpegDialogs.cpp:960
msgid "LPC coefficients precision"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:972
-msgid "LPC coefficients precision\n"
+#: export/ExportFFmpegDialogs.cpp:961
+msgid ""
+"LPC coefficients precision\n"
"Optional\n"
"0 - default\n"
"min - 1\n"
"max - 15"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:974
+#: export/ExportFFmpegDialogs.cpp:963
msgid "Minimal prediction order"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:975
-msgid "Minimal prediction order\n"
+#: export/ExportFFmpegDialogs.cpp:964
+msgid ""
+"Minimal prediction order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 32 (with LPC) or 4 (without LPC)"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:977
+#: export/ExportFFmpegDialogs.cpp:966
msgid "Maximal prediction order"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:978
-msgid "Maximal prediction order\n"
+#: export/ExportFFmpegDialogs.cpp:967
+msgid ""
+"Maximal prediction order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 32 (with LPC) or 4 (without LPC)"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:980
+#: export/ExportFFmpegDialogs.cpp:969
msgid "Prediction Order Method:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:982
-msgid "Prediction Order Method\n"
+#: export/ExportFFmpegDialogs.cpp:971
+msgid ""
+"Prediction Order Method\n"
"Estimate - fastest, lower compression\n"
"Log search - slowest, best compression\n"
"Full search - default"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:984
+#: export/ExportFFmpegDialogs.cpp:973
msgid "Minimal partition order"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:985
-msgid "Minimal partition order\n"
+#: export/ExportFFmpegDialogs.cpp:974
+msgid ""
+"Minimal partition order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 8"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:987
+#: export/ExportFFmpegDialogs.cpp:976
msgid "Maximal partition order"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:988
-msgid "Maximal partition order\n"
+#: export/ExportFFmpegDialogs.cpp:977
+msgid ""
+"Maximal partition order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 8"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:977
+#: export/ExportFFmpegDialogs.cpp:979
msgid "Use LPC"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:984
+#: export/ExportFFmpegDialogs.cpp:986
msgid "MPEG container options"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:1001
+#: export/ExportFFmpegDialogs.cpp:990
msgid "Mux Rate:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:1002
-msgid "Maximum bit rate of the multiplexed stream\n"
+#: export/ExportFFmpegDialogs.cpp:991
+msgid ""
+"Maximum bit rate of the multiplexed stream\n"
"Optional\n"
"0 - default"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:1004
+#: export/ExportFFmpegDialogs.cpp:993
msgid "Packet Size:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:1005
-msgid "Packet size\n"
+#: export/ExportFFmpegDialogs.cpp:994
+msgid ""
+"Packet size\n"
"Optional\n"
"0 - default"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:1207
+#: export/ExportFFmpegDialogs.cpp:1209
msgid "You can't delete a preset without name"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:1219
+#: export/ExportFFmpegDialogs.cpp:1213
#, c-format
msgid "Delete preset '%s'?"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:1238
+#: export/ExportFFmpegDialogs.cpp:1232
msgid "You can't save a preset without name"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:1277
+#: export/ExportFFmpegDialogs.cpp:1272
msgid "Select xml file with presets to import"
msgstr ""
-#: ../src/prefs/KeyConfigPrefs.cpp:192
+#: export/ExportFFmpegDialogs.cpp:1275
+#: export/ExportFFmpegDialogs.cpp:1295
+#: prefs/KeyConfigPrefs.cpp:267
+#: prefs/KeyConfigPrefs.cpp:298
msgid "XML files (*.xml)|*.xml|All files (*.*)|*.*"
msgstr "XML dosyaları (*.xml)|*.xml|Tüm dosyalar (*.*)|*.*"
@@ -6163,143 +6928,155 @@ msgstr "XML dosyaları (*.xml)|*.xml|Tüm dosyalar (*.*)|*.*"
msgid "Select xml file to export presets into"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:1361
+#: export/ExportFFmpegDialogs.cpp:1363
msgid "Failed to guess format"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:1403
+#: export/ExportFFmpegDialogs.cpp:1405
msgid "Failed to find the codec"
msgstr ""
-#: export/ExportFFmpegDialogs.h:53
-msgid "M4A (AAC) Files (FFmpeg)"
-msgstr ""
-
#: export/ExportFFmpegDialogs.h:54
-msgid "AC3 Files (FFmpeg)"
+msgid "M4A (AAC) Files (FFmpeg)"
msgstr ""
#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
+msgid "AC3 Files (FFmpeg)"
msgstr ""
#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:57
-msgid "WMA (version 2) Files (FFmpeg)"
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:58
+msgid "WMA (version 2) Files (FFmpeg)"
+msgstr ""
+
+#: export/ExportFFmpegDialogs.h:59
msgid "Custom FFmpeg Export"
msgstr ""
-#: export/ExportFFmpegDialogs.h:373
+#: export/ExportFFmpegDialogs.h:374
msgid "LTP"
msgstr ""
-#: export/ExportFFmpegDialogs.h:373
+#: export/ExportFFmpegDialogs.h:374
msgid "Low Complexity"
msgstr ""
-#: export/ExportFFmpegDialogs.h:373
+#: export/ExportFFmpegDialogs.h:374
msgid "Main profile"
msgstr ""
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "2-level"
msgstr ""
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "4-level"
msgstr ""
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "8-level"
msgstr ""
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "Estimate"
msgstr ""
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "Full search"
msgstr ""
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "Log search"
msgstr ""
-#: export/ExportFLAC.cpp:68
+#: export/ExportFLAC.cpp:67
msgid "Specify FLAC Options"
msgstr ""
-#: export/ExportFLAC.cpp:82
+#: export/ExportFLAC.cpp:79
msgid "0 (fastest)"
msgstr ""
-#: export/ExportFLAC.cpp:83
+#: export/ExportFLAC.cpp:80
msgid "1"
msgstr ""
-#: export/ExportFLAC.cpp:84
+#: export/ExportFLAC.cpp:81
msgid "2"
msgstr ""
-#: export/ExportFLAC.cpp:85
+#: export/ExportFLAC.cpp:82
msgid "3"
msgstr ""
-#: export/ExportFLAC.cpp:86
+#: export/ExportFLAC.cpp:83
msgid "4"
msgstr ""
-#: export/ExportFLAC.cpp:87
+#: export/ExportFLAC.cpp:84
msgid "5"
msgstr ""
-#: export/ExportFLAC.cpp:88
+#: export/ExportFLAC.cpp:85
msgid "6"
msgstr ""
-#: export/ExportFLAC.cpp:89
+#: export/ExportFLAC.cpp:86
msgid "7"
msgstr ""
-#: export/ExportFLAC.cpp:90
+#: export/ExportFLAC.cpp:87
msgid "8 (best)"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:193
+#: export/ExportFLAC.cpp:90
msgid "16 bit"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:194
+#: export/ExportFLAC.cpp:91
msgid "24 bit"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:190
+#: export/ExportFLAC.cpp:95
msgid "FLAC Export Setup"
msgstr ""
-#: export/ExportFLAC.cpp:102
+#: export/ExportFLAC.cpp:99
msgid "Level:"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:197
+#: export/ExportFLAC.cpp:101
msgid "Bit depth:"
msgstr ""
-#: export/ExportFLAC.cpp:208
+#: export/ExportFLAC.cpp:207
msgid "FLAC Files"
msgstr ""
-#: export/ExportFLAC.cpp:93
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid ""
+"FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
+#: export/ExportFLAC.cpp:324
msgid "Exporting the selected audio as FLAC"
msgstr ""
-#: export/ExportFLAC.cpp:94
+#: export/ExportFLAC.cpp:325
msgid "Exporting the entire project as FLAC"
msgstr ""
@@ -6307,7 +7084,7 @@ msgstr ""
msgid "Specify MP2 Options"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:204
+#: export/ExportMP2.cpp:127
msgid "MP2 Export Setup"
msgstr ""
@@ -6315,328 +7092,352 @@ msgstr ""
msgid "MP2 Files"
msgstr ""
-#: export/ExportMP2.cpp:94
+#: export/ExportMP2.cpp:230
msgid "Cannot export MP2 with this sample rate and bit rate"
msgstr ""
-#: ../src/export/ExportMP3.cpp:1345 ../src/export/ExportOGG.cpp:53
+#: export/ExportMP2.cpp:241
+#: export/ExportMP3.cpp:1619
+#: export/ExportOGG.cpp:184
msgid "Unable to open target file for writing"
msgstr "Yazma için hedef dosya açılamadı"
-#: export/ExportMP2.cpp:144 export/ExportMP3.cpp:1680
+#: export/ExportMP2.cpp:273
#, c-format
msgid "Exporting selected audio at %d kbps"
msgstr ""
-#: export/ExportMP2.cpp:145 export/ExportMP3.cpp:1681
+#: export/ExportMP2.cpp:274
#, c-format
msgid "Exporting entire file at %d kbps"
msgstr ""
-#. i18n-hint: kbps is the bitrate of the MP3 file, kilobits per second
-#: export/ExportMP3.cpp:142 export/ExportMP3.cpp:143 export/ExportMP3.cpp:144
-#: export/ExportMP3.cpp:145 export/ExportMP3.cpp:146 export/ExportMP3.cpp:147
-#: export/ExportMP3.cpp:148 export/ExportMP3.cpp:149 export/ExportMP3.cpp:150
-#: export/ExportMP3.cpp:151 export/ExportMP3.cpp:152 export/ExportMP3.cpp:153
-#: export/ExportMP3.cpp:154 export/ExportMP3.cpp:155 export/ExportMP3.cpp:156
-#: export/ExportMP3.cpp:157 export/ExportMP3.cpp:158 export/ExportMP3.cpp:159
+#: export/ExportMP3.cpp:223
+#: export/ExportMP3.cpp:241
+#: export/ExportMP3.cpp:255
msgid "kbps"
msgstr ""
-#: export/ExportMP3.cpp:240
+#: export/ExportMP3.cpp:242
msgid "(Best Quality)"
msgstr ""
-#: export/ExportMP3.cpp:241
+#: export/ExportMP3.cpp:243
msgid "(Smaller files)"
msgstr ""
-#: export/ExportMP3.cpp:178
+#: export/ExportMP3.cpp:245
msgid "Fast"
msgstr ""
-#: export/ExportMP3.cpp:179
+#: export/ExportMP3.cpp:246
+#: export/ExportMP3.cpp:252
+#: prefs/GUIPrefs.cpp:50
+#: prefs/TracksPrefs.cpp:46
msgid "Standard"
msgstr ""
-#: export/ExportMP3.cpp:248
+#: export/ExportMP3.cpp:250
msgid "Insane"
msgstr ""
-#: export/ExportMP3.cpp:249
+#: export/ExportMP3.cpp:251
msgid "Extreme"
msgstr ""
-#: export/ExportMP3.cpp:251
+#: export/ExportMP3.cpp:253
msgid "Medium"
msgstr ""
-#: export/ExportMP3.cpp:249
+#: export/ExportMP3.cpp:305
msgid "Specify MP3 Options"
msgstr ""
-#: ../src/prefs/FileFormatPrefs.cpp:172
+#: export/ExportMP3.cpp:319
msgid "MP3 Export Setup"
msgstr "MP3 Aktarma Ayarı"
-#: export/ExportMP3.cpp:271
+#: export/ExportMP3.cpp:326
msgid "Bit Rate Mode:"
msgstr ""
-#: export/ExportMP3.cpp:276
+#: export/ExportMP3.cpp:331
msgid "Preset"
msgstr ""
-#: export/ExportMP3.cpp:277
+#: export/ExportMP3.cpp:332
msgid "Variable"
msgstr ""
-#: export/ExportMP3.cpp:278
+#: export/ExportMP3.cpp:333
msgid "Average"
msgstr ""
-#: export/ExportMP3.cpp:279
+#: export/ExportMP3.cpp:334
msgid "Constant"
msgstr ""
-#: ../src/prefs/PrefsDialog.cpp:85
+#: export/ExportMP3.cpp:373
+#: prefs/QualityPrefs.cpp:38
msgid "Quality"
msgstr "Kalite"
-#: export/ExportMP3.cpp:324
+#: export/ExportMP3.cpp:379
msgid "Variable Speed:"
msgstr ""
-#: export/ExportMP3.cpp:331
+#: export/ExportMP3.cpp:386
msgid "Channel Mode:"
msgstr ""
-#: export/ExportMP3.cpp:336
+#: export/ExportMP3.cpp:391
msgid "Joint Stereo"
msgstr ""
-#: export/ExportMP3.cpp:337
+#: export/ExportMP3.cpp:392
msgid "Stereo"
msgstr ""
-#: export/ExportMP3.cpp:481
+#: export/ExportMP3.cpp:536
msgid "Locate Lame"
msgstr ""
-#: export/ExportMP3.cpp:501
+#: export/ExportMP3.cpp:556
#, c-format
msgid "Audacity needs the file %s to create MP3s."
msgstr ""
-#: export/ExportMP3.cpp:523
+#: export/ExportMP3.cpp:578
msgid "To get a free copy of Lame, click here -->"
msgstr ""
#: export/ExportMP3.cpp:1070
#, c-format
-msgid "You are linking to lame_enc.dll v%d.%d. This version is not compatible with Audacity %d.%d.%d.\n"
+msgid ""
+"You are linking to lame_enc.dll v%d.%d. This version is not compatible with Audacity %d.%d.%d.\n"
"Please download the latest version of the LAME MP3 library."
msgstr ""
-#: ../src/export/ExportMP3.cpp:1116
+#: export/ExportMP3.cpp:1328
msgid "Only lame_enc.dll|lame_enc.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
msgstr "Sadece lame_enc.dll|lame_enc.dll|Dinamik Olarak BaÄlanmıŠKütüphaneler (*.dll)|*.dll| Tüm Dosyalar (*.*)|*"
-#: export/ExportMP3.cpp:536
+#: export/ExportMP3.cpp:1346
msgid "Only libmp3lame.dylib|libmp3lame.dylib|Dynamic Libraries (*.dylib)|*.dylib|All Files (*)|*"
msgstr ""
-#: export/ExportMP3.cpp:1567
+#: export/ExportMP3.cpp:1364
#, fuzzy
msgid "Only libmp3lame.so.0|libmp3lame.so.0|Primary Shared Object files (*.so)|*.so|Extended Libraries (*.so*)|*.so*|All Files (*)|*"
msgstr "Sadece libmp3lame.so|libmp3lame.so|Birincil PaylaÅımlı Nesne dosyaları (*.so)|*.so| GeniÅletilmiÅ Kütüphaneler (*.so*)|*.so*|Tüm Dosyalar (*)|*"
-#: export/ExportMP3.cpp:1592
+#: export/ExportMP3.cpp:1500
msgid "MP3 Files"
msgstr ""
-#: ../src/export/ExportMP3.cpp:1328
+#: export/ExportMP3.cpp:1524
msgid "Could not open MP3 encoding library!"
msgstr "MP3 kodlama kütüphanesi açılamadı!"
-#: ../src/export/ExportMP3.cpp:1335
+#: export/ExportMP3.cpp:1531
msgid "Not a valid or supported MP3 encoding library!"
msgstr "Geçersiz ya da desteklenmeyen MP3 kodlama kütüphanesi!"
-#: export/ExportMP3.cpp:1699
+#: export/ExportMP3.cpp:1608
msgid "Unable to initialize MP3 stream"
msgstr ""
-#: export/ExportMP3.cpp:1744
+#: export/ExportMP3.cpp:1652
#, c-format
msgid "Exporting selected audio with %s preset"
msgstr ""
-#: export/ExportMP3.cpp:1745
+#: export/ExportMP3.cpp:1653
#, c-format
msgid "Exporting entire file with %s preset"
msgstr ""
-#: export/ExportMP3.cpp:1750
+#: export/ExportMP3.cpp:1658
#, c-format
msgid "Exporting selected audio with VBR quality %s"
msgstr ""
-#: export/ExportMP3.cpp:1751
+#: export/ExportMP3.cpp:1659
#, c-format
msgid "Exporting entire file with VBR quality %s"
msgstr ""
-#: export/ExportMP3.cpp:1756
+#: export/ExportMP3.cpp:1664
#, c-format
msgid "Exporting selected audio at %d Kbps"
msgstr ""
-#: export/ExportMP3.cpp:1757
+#: export/ExportMP3.cpp:1665
#, c-format
msgid "Exporting entire file at %d Kbps"
msgstr ""
-#: export/ExportMP3.cpp:1790
+#: export/ExportMP3.cpp:1699
#, c-format
msgid "Error %d returned from MP3 encoder"
msgstr ""
-#: export/ExportMP3.cpp:1876
+#: export/ExportMP3.cpp:1790
#, c-format
-msgid "The project sample rate (%d) is not supported by the MP3\n"
+msgid ""
+"The project sample rate (%d) is not supported by the MP3\n"
"file format. "
msgstr ""
-#: export/ExportMP3.cpp:1879
+#: export/ExportMP3.cpp:1793
#, c-format
-msgid "The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
+msgid ""
+"The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
"supported by the MP3 file format. "
msgstr ""
-#: export/ExportMP3.cpp:1965
+#: export/ExportMP3.cpp:1970
msgid "MP3 export library not found"
msgstr ""
-#: ../src/export/ExportMultiple.cpp:367 ../src/export/ExportMultiple.cpp:474
-#: ../src/export/ExportMultiple.cpp:562
+#: export/ExportMultiple.cpp:93
+#: export/ExportMultiple.cpp:424
msgid "Export Multiple"
msgstr "Ãoklu Aktar"
-#: ../src/export/ExportMultiple.cpp:487
-msgid "If you have more than one Audio Track, you can export each track as a separate file,\n"
+#: export/ExportMultiple.cpp:163
+msgid ""
+"If you have more than one Audio Track, you can export each track as a separate file,\n"
"or if you have a Label Track, you can export a new file for each label.\n"
"\n"
"This project does not have multiple tracks or a Label Track, so you cannot export multiple files."
-msgstr "EÄer bir Ses İzinden daha fazlasına sahipseniz, ayrı bir dosya olarak her izi aktarabilirsiniz,\n"
+msgstr ""
+"EÄer bir Ses İzinden daha fazlasına sahipseniz, ayrı bir dosya olarak her izi aktarabilirsiniz,\n"
"ya da eÄer bir Etiket İzine sahipseniz, her etiket için yeni bir dosya aktarabilirsiniz.\n"
"Bu proje çoklu izlere ya da bir Etiket İzine sahip deÄil, bu yüzden çoklu dosyaları aktaramayabilirsiniz."
-#: ../src/export/ExportMultiple.cpp:493
+#: export/ExportMultiple.cpp:164
msgid "Can't export multiple files"
msgstr "Ãoklu dosyalar aktarılamadı"
-#: ../src/export/ExportMultiple.cpp:576
+#: export/ExportMultiple.cpp:229
msgid "Export format:"
msgstr "Biçemi aktar:"
-#: export/ExportMultiple.cpp:195
+#: export/ExportMultiple.cpp:234
msgid "Options..."
msgstr ""
-#: ../src/export/ExportMultiple.cpp:594
+#: export/ExportMultiple.cpp:238
msgid "Export location:"
msgstr "Konumu aktar:"
-#: ../src/export/ExportMultiple.cpp:600 ../src/prefs/DirectoriesPrefs.cpp:82
-msgid "Choose..."
-msgstr "Seç..."
-
-#: export/ExportMultiple.cpp:205
+#: export/ExportMultiple.cpp:243
msgid "Create"
msgstr ""
-#: ../src/export/ExportMultiple.cpp:612
+#: export/ExportMultiple.cpp:250
msgid "Split files based on:"
msgstr ""
-#: ../src/export/ExportMultiple.cpp:615
+#: export/ExportMultiple.cpp:259
+#: export/ExportMultiple.cpp:261
msgid "Labels"
msgstr "Etiketler"
-#: ../src/export/ExportMultiple.cpp:623
+#: export/ExportMultiple.cpp:266
msgid "Include audio before first label"
msgstr "İlk etiketten önce ses ekle"
-#: ../src/export/ExportMultiple.cpp:629
+#: export/ExportMultiple.cpp:272
msgid "First file name:"
msgstr "İlk dosya adı:"
-#: export/ExportMultiple.cpp:280
+#: export/ExportMultiple.cpp:277
msgid "First file name"
msgstr ""
-#: ../src/export/ExportMultiple.cpp:636
-msgid "Tracks"
-msgstr "İzler"
-
-#: ../src/export/ExportMultiple.cpp:646
+#: export/ExportMultiple.cpp:294
msgid "Name files:"
msgstr "İsim dosyaları:"
-#: ../src/export/ExportMultiple.cpp:649
+#: export/ExportMultiple.cpp:303
+#: export/ExportMultiple.cpp:305
msgid "Using Label/Track Name"
msgstr "Etiket/İz İsmi Kullanımı"
-#: ../src/export/ExportMultiple.cpp:655
+#: export/ExportMultiple.cpp:311
+#: export/ExportMultiple.cpp:313
msgid "Numbering consecutively"
msgstr "Birbirini izleyerek numaralama"
-#: ../src/export/ExportMultiple.cpp:660
+#: export/ExportMultiple.cpp:319
msgid "File name prefix:"
msgstr "Dosya adı öneki:"
-#: export/ExportMultiple.cpp:327
+#: export/ExportMultiple.cpp:324
msgid "File name prefix"
msgstr ""
-#: ../src/export/ExportMultiple.cpp:677
+#: export/ExportMultiple.cpp:338
msgid "Overwrite existing files"
msgstr "Mevcut dosyanın üzerine yaz"
-#: export/ExportMultiple.cpp:360
+#: export/ExportMultiple.cpp:422
#, c-format
msgid "\"%s\" successfully created."
msgstr ""
-#: ../src/export/ExportMultiple.cpp:766
+#: export/ExportMultiple.cpp:431
msgid "Choose a location to save the exported files"
msgstr "Aktarılan dosyaları kaydetmek için bir konum seç"
-#: export/ExportMultiple.cpp:480
+#: export/ExportMultiple.cpp:524
#, c-format
-msgid "\"%s\" doesn't exist.\n"
-"\n"
-"Would you like to create it?"
+msgid "Successfully exported the following %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:637 export/ExportMultiple.cpp:772
-msgid "Edit metadata"
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the following %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:590
+#: export/ExportMultiple.cpp:526
#, c-format
-msgid "Successfully exported %d file(s)."
+msgid "Export canceled after exporting the following %ld file(s)."
msgstr ""
-#: export/ExportMultiple.cpp:597
+#: export/ExportMultiple.cpp:527
#, c-format
-msgid "Something went wrong after exporting %d file(s)."
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
msgstr ""
-#: export/ExportMultiple.cpp:881
+#: export/ExportMultiple.cpp:570
#, c-format
-msgid "Label %s is not a legal file name. You cannot use any of: %s\n"
+msgid ""
+"\"%s\" doesn't exist.\n"
+"\n"
+"Would you like to create it?"
+msgstr ""
+
+#: export/ExportMultiple.cpp:667
+#: export/ExportMultiple.cpp:804
+msgid "Edit metadata"
+msgstr ""
+
+#: export/ExportMultiple.cpp:923
+#, c-format
+msgid ""
+"Label %s is not a legal file name. You cannot use any of: %s\n"
"Use..."
msgstr ""
@@ -6644,7 +7445,7 @@ msgstr ""
msgid "Specify Ogg Vorbis Options"
msgstr ""
-#: export/ExportOGG.cpp:81
+#: export/ExportOGG.cpp:79
msgid "Ogg Vorbis Export Setup"
msgstr ""
@@ -6652,75 +7453,76 @@ msgstr ""
msgid "Ogg Vorbis Files"
msgstr ""
-#: ../src/export/ExportOGG.cpp:191
+#: export/ExportOGG.cpp:256
msgid "Exporting the selected audio as Ogg Vorbis"
msgstr "Ogg Vorbis olarak seçili sesi aktarma"
-#: ../src/export/ExportOGG.cpp:192
+#: export/ExportOGG.cpp:257
msgid "Exporting the entire project as Ogg Vorbis"
msgstr "Ogg Vorbis olarak tüm projeyi aktarma"
-#: export/ExportPCM.cpp:116
+#: export/ExportPCM.cpp:119
msgid "Specify Uncompressed Options"
msgstr ""
-#: export/ExportPCM.cpp:171
+#: export/ExportPCM.cpp:189
msgid "Uncompressed Export Setup"
msgstr ""
-#: export/ExportPCM.cpp:181
+#: export/ExportPCM.cpp:195
msgid "Header:"
msgstr ""
-#: export/ExportPCM.cpp:185
+#: export/ExportPCM.cpp:199
+#: import/ImportRaw.cpp:376
#, fuzzy
msgid "Encoding:"
msgstr "Kodlama:"
-#: export/ExportPCM.cpp:190
+#: export/ExportPCM.cpp:204
#, fuzzy
msgid "(Not all combinations of headers and encodings are possible.)"
-msgstr "(BaÅlıkların tüm bileÅimleri deÄil\n"
+msgstr ""
+"(BaÅlıkların tüm bileÅimleri deÄil\n"
"ve kodlamalar mümkündür.)"
-#: export/ExportPCM.cpp:369
+#: export/ExportPCM.cpp:359
msgid "Other uncompressed files"
msgstr ""
-#: export/ExportPCM.cpp:361
+#: export/ExportPCM.cpp:377
msgid "AIFF (Apple) signed 16 bit PCM"
msgstr ""
-#: export/ExportPCM.cpp:351
+#: export/ExportPCM.cpp:388
msgid "WAV (Microsoft) signed 16 bit PCM"
msgstr ""
-#: export/ExportPCM.cpp:387
+#: export/ExportPCM.cpp:399
msgid "GSM 6.10 WAV (mobile)"
msgstr ""
-#: ../src/export/ExportPCM.cpp:73
+#: export/ExportPCM.cpp:476
msgid "Cannot export audio in this format."
msgstr "Bu biçemde ses aktarılamadı"
-#: export/ExportPCM.cpp:400
+#: export/ExportPCM.cpp:526
#, c-format
msgid "Exporting the selected audio as %s"
msgstr ""
-#: export/ExportPCM.cpp:402
+#: export/ExportPCM.cpp:528
#, c-format
msgid "Exporting the entire project as %s"
msgstr ""
#. i18n-hint: %s will be the error message from libsndfile
-#: export/ExportPCM.cpp:436
-#, c-format
-#, fuzzy
+#: export/ExportPCM.cpp:564
+#, fuzzy, c-format
msgid "Error (file may not have been written): %s"
msgstr "Hata (dosya yazılmamıŠolabilir): %s"
-#: export/ExportPCM.cpp:723
+#: export/ExportPCM.cpp:735
msgid "There are no options for this format.\n"
msgstr ""
@@ -6728,143 +7530,159 @@ msgstr ""
#. * the list. So you should translate the quoted string
#. * 'Other uncompressed files' exactly the same as you do the same string
#. * when it comes up on it's own.
-#: export/ExportPCM.cpp:728
+#: export/ExportPCM.cpp:740
msgid "If you need more control over the export format please use the 'Other uncompressed files' format."
msgstr ""
-#: export/ExportPCM.cpp:733
+#: export/ExportPCM.cpp:745
msgid "Your file will be exported as a 16-bit AIFF (Apple/SGI) file.\n"
msgstr ""
-#: export/ExportPCM.cpp:738
+#: export/ExportPCM.cpp:750
msgid "Your file will be exported as a 16-bit WAV (Microsoft) file.\n"
msgstr ""
-#: export/ExportPCM.cpp:743
+#: export/ExportPCM.cpp:755
msgid "Your file will be exported as a GSM 6.10 WAV file.\n"
msgstr ""
-#: import/ImportMP3.cpp:78
+#: import/Import.cpp:162
+#: import/ImportMP3.cpp:47
msgid "MP3 files"
msgstr ""
-#: import/Import.cpp:175
+#: import/Import.cpp:181
msgid "Select stream(s) to import"
msgstr ""
-#: ../src/import/Import.cpp:159
+#: import/Import.cpp:234
#, c-format
msgid "This version of Audacity was not compiled with %s support."
msgstr "Audacity'nin bu sürümü %s desteÄi ile derlenmemiÅ."
-#: import/Import.cpp:240
+#: import/Import.cpp:247
#, c-format
-msgid "\"%s\" \n"
+msgid ""
+"\"%s\" \n"
"is a MIDI file, not an audio file. \n"
"Audacity cannot open this type of file for playing, but you can\n"
"edit it by clicking File > Import > MIDI."
msgstr ""
#. i18n-hint: %s will be the filename
-#: import/Import.cpp:167
+#: import/Import.cpp:257
#, c-format
-msgid "\"%s\" is an audio CD track. \n"
+msgid ""
+"\"%s\" is an audio CD track. \n"
"Audacity cannot open audio CDs directly. \n"
"Extract (rip) the CD tracks to an audio format that \n"
"Audacity can import, such as WAV or AIFF."
msgstr ""
-#: import/Import.cpp:173
+#: import/Import.cpp:263
#, c-format
-msgid "\"%s\" is a playlist file. \n"
+msgid ""
+"\"%s\" is a playlist file. \n"
"Audacity cannot open this file because it only contains links to other files. \n"
"You may be able to open it in a text editor and download the actual audio files."
msgstr ""
-#: import/Import.cpp:178
+#: import/Import.cpp:268
#, c-format
-msgid "\"%s\" is a Windows Media Audio file. \n"
+msgid ""
+"\"%s\" is a Windows Media Audio file. \n"
"Audacity cannot open this type of file due to patent restrictions. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
msgstr ""
-#: import/Import.cpp:183
+#: import/Import.cpp:273
#, c-format
-msgid "\"%s\" is an Advanced Audio Coding file. \n"
+msgid ""
+"\"%s\" is an Advanced Audio Coding file. \n"
"Audacity cannot open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
msgstr ""
-#: import/Import.cpp:271
+#: import/Import.cpp:278
#, c-format
-msgid "\"%s\" is an encrypted audio file. \n"
+msgid ""
+"\"%s\" is an encrypted audio file. \n"
"These typically are from an online music store. \n"
"Audacity cannot open this type of file due to the encryption. \n"
"Try recording the file into Audacity, or burn it to audio CD then \n"
"extract the CD track to a supported audio format such as WAV or AIFF."
msgstr ""
-#: import/Import.cpp:193
+#: import/Import.cpp:283
#, c-format
-msgid "\"%s\" is a RealPlayer media file. \n"
+msgid ""
+"\"%s\" is a RealPlayer media file. \n"
"Audacity cannot open this proprietary format. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
msgstr ""
-#: import/Import.cpp:282
+#: import/Import.cpp:289
#, c-format
-msgid "\"%s\" is a notes-based file, not an audio file. \n"
+msgid ""
+"\"%s\" is a notes-based file, not an audio file. \n"
"Audacity cannot open this type of file. \n"
"Try converting it to an audio file such as WAV or AIFF and \n"
"then import it, or record it into Audacity."
msgstr ""
-#: import/Import.cpp:288
+#: import/Import.cpp:295
#, c-format
-msgid "\"%s\" is a Musepack audio file. \n"
+msgid ""
+"\"%s\" is a Musepack audio file. \n"
"Audacity cannot open this type of file. \n"
"If you think it might be an mp3 file, rename it to end with \".mp3\" \n"
"and try importing it again. Otherwise you need to convert it to a supported audio \n"
"format, such as WAV or AIFF."
msgstr ""
-#: import/Import.cpp:294
+#: import/Import.cpp:301
#, c-format
-msgid "\"%s\" is a Wavpack audio file. \n"
+msgid ""
+"\"%s\" is a Wavpack audio file. \n"
"Audacity cannot open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
msgstr ""
-#: import/Import.cpp:300
+#: import/Import.cpp:307
#, c-format
-msgid "\"%s\" is a Dolby Digital audio file. \n"
+msgid ""
+"\"%s\" is a Dolby Digital audio file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
msgstr ""
-#: import/Import.cpp:306
+#: import/Import.cpp:313
#, c-format
-msgid "\"%s\" is an Ogg Speex audio file. \n"
+msgid ""
+"\"%s\" is an Ogg Speex audio file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
msgstr ""
-#: import/Import.cpp:312
+#: import/Import.cpp:319
#, c-format
-msgid "\"%s\" is a video file. \n"
+msgid ""
+"\"%s\" is a video file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to extract the audio to a supported format, such as WAV or AIFF."
msgstr ""
-#: import/Import.cpp:317
+#: import/Import.cpp:324
#, c-format
-msgid "Audacity did not recognize the type of the file '%s'.\n"
+msgid ""
+"Audacity did not recognize the type of the file '%s'.\n"
"If it is uncompressed, try importing it using \"Import Raw\"."
msgstr ""
-#: import/Import.cpp:322
+#: import/Import.cpp:329
#, c-format
-msgid "Audacity recognized the type of the file '%s',\n"
+msgid ""
+"Audacity recognized the type of the file '%s',\n"
"but was unable to import it."
msgstr ""
@@ -6872,42 +7690,48 @@ msgstr ""
msgid "FFmpeg-compatible files"
msgstr ""
-#: import/ImportFFmpeg.cpp:431
+#: import/ImportFFmpeg.cpp:438
#, c-format
msgid "Index[%02x] Codec[%S], Language[%S], Bitrate[%S], Channels[%d], Duration[%d]"
msgstr ""
-#: import/ImportFLAC.cpp:35
+#: import/ImportFLAC.cpp:45
msgid "FLAC files"
msgstr ""
-#: ../src/import/ImportLOF.cpp:151 ../src/import/ImportLOF.cpp:177
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr ""
+
+#: import/ImportLOF.cpp:95
msgid "List of Files in basic text format"
msgstr "Temel metin biçimindeki Dosyaların Listesi"
#. i18n-hint: You do not need to translate "LOF"
-#: ../src/import/ImportLOF.cpp:268
+#: import/ImportLOF.cpp:314
msgid "Invalid window offset in LOF file."
msgstr "LOF dosyası içinde geçersiz pencere ofseti"
#. i18n-hint: You do not need to translate "LOF"
-#: ../src/import/ImportLOF.cpp:270 ../src/import/ImportLOF.cpp:291
-#: ../src/import/ImportLOF.cpp:364 ../src/import/ImportLOF.cpp:384
+#: import/ImportLOF.cpp:316
+#: import/ImportLOF.cpp:337
+#: import/ImportLOF.cpp:418
+#: import/ImportLOF.cpp:439
msgid "LOF Error"
msgstr "LOF Hatası"
#. i18n-hint: You do not need to translate "LOF"
-#: ../src/import/ImportLOF.cpp:289
+#: import/ImportLOF.cpp:335
msgid "Invalid duration in LOF file."
msgstr "LOF dosyası içinde geçersiz süre"
-#: import/ImportLOF.cpp:407
+#: import/ImportLOF.cpp:417
#, fuzzy
msgid "MIDI tracks cannot be offset individually, only audio files can be."
msgstr "MIDI izleri bireysel olarak ofset olmayabilir, belki sadece ses dosyaları."
#. i18n-hint: You do not need to translate "LOF"
-#: ../src/import/ImportLOF.cpp:383
+#: import/ImportLOF.cpp:438
msgid "Invalid track offset in LOF file."
msgstr "LOF dosyası içinde geçersiz iz ofseti"
@@ -6915,7 +7739,9 @@ msgstr "LOF dosyası içinde geçersiz iz ofseti"
msgid ": Filename too short."
msgstr ""
-#: import/ImportMIDI.cpp:31 import/ImportMIDI.cpp:39 import/ImportMIDI.cpp:45
+#: import/ImportMIDI.cpp:31
+#: import/ImportMIDI.cpp:39
+#: import/ImportMIDI.cpp:45
#: import/ImportMIDI.cpp:53
msgid "Could not open file "
msgstr ""
@@ -6924,105 +7750,106 @@ msgstr ""
msgid ": Incorrect filetype."
msgstr ""
-#: import/ImportOGG.cpp:35
+#: import/ImportOGG.cpp:44
msgid "Ogg Vorbis files"
msgstr ""
-#: ../src/import/ImportOGG.cpp:124
+#: import/ImportOGG.cpp:184
msgid "Media read error"
msgstr "Ortam okuma hatası"
-#: ../src/import/ImportOGG.cpp:127
+#: import/ImportOGG.cpp:187
msgid "Not an Ogg Vorbis file"
msgstr "Bir Ogg Vorbis dosyası deÄil"
-#: ../src/import/ImportOGG.cpp:130
+#: import/ImportOGG.cpp:190
msgid "Vorbis version mismatch"
msgstr "Vorbis sürüm uyumsuzluÄu"
-#: ../src/import/ImportOGG.cpp:133
+#: import/ImportOGG.cpp:193
msgid "Invalid Vorbis bitstream header"
msgstr "Geçersiz Vorbis bitstream baÅlıÄı"
-#: ../src/import/ImportOGG.cpp:136
+#: import/ImportOGG.cpp:196
msgid "Internal logic fault"
msgstr "Dahili mantık kusuru"
-#: export/ExportPCM.cpp:320 import/ImportPCM.cpp:47
+#: import/ImportPCM.cpp:66
msgid "WAV, AIFF, and other uncompressed types"
msgstr ""
-#: import/ImportPlugin.h:142 import/ImportRaw.cpp:203
+#: import/ImportPlugin.h:135
+#: import/ImportRaw.cpp:210
#, c-format
msgid "Importing %s"
msgstr ""
-#: import/ImportQT.cpp:21
+#: import/ImportQT.cpp:18
msgid "QuickTime files"
msgstr ""
-#: import/ImportRaw.cpp:205
+#: import/ImportRaw.cpp:212
msgid "Import Raw"
msgstr ""
-#: ../src/import/ImportRaw.cpp:256
+#: import/ImportRaw.cpp:292
msgid "Import Raw Data"
msgstr "Ham Veri Al"
#. i18n-hint: Refers to byte-order. Don't translate "endianness" if you don't
#. know the correct technical word.
-#: ../src/import/ImportRaw.cpp:299
+#: import/ImportRaw.cpp:337
msgid "No endianness"
msgstr ""
#. i18n-hint: Refers to byte-order. Don't translate this if you don't
#. know the correct technical word.
-#: ../src/import/ImportRaw.cpp:302
+#: import/ImportRaw.cpp:340
msgid "Little-endian"
msgstr ""
#. i18n-hint: Refers to byte-order. Don't translate this if you don't
#. know the correct technical word.
-#: ../src/import/ImportRaw.cpp:305
+#: import/ImportRaw.cpp:343
msgid "Big-endian"
msgstr "Büyük-endian"
#. i18n-hint: Refers to byte-order. Don't translate "endianness" if you don't
#. know the correct technical word.
-#: ../src/import/ImportRaw.cpp:308
+#: import/ImportRaw.cpp:346
msgid "Default endianness"
msgstr ""
-#: ../src/import/ImportRaw.cpp:332
+#: import/ImportRaw.cpp:365
msgid "1 Channel (Mono)"
msgstr "1 Kanal (Mono)"
-#: ../src/import/ImportRaw.cpp:333
+#: import/ImportRaw.cpp:366
msgid "2 Channels (Stereo)"
msgstr "2 Kanal (Ãiftli)"
-#: ../src/import/ImportRaw.cpp:335
+#: import/ImportRaw.cpp:368
#, c-format
msgid "%d Channels"
msgstr "%d Kanalları"
-#: import/ImportRaw.cpp:369
+#: import/ImportRaw.cpp:379
msgid "Byte order:"
msgstr ""
-#: import/ImportRaw.cpp:372
+#: import/ImportRaw.cpp:382
msgid "Channels:"
msgstr ""
-#: ../src/import/ImportRaw.cpp:348
+#: import/ImportRaw.cpp:392
msgid "Start offset:"
msgstr "Ofseti baÅlat:"
-#: ../src/import/ImportRaw.cpp:359
+#: import/ImportRaw.cpp:398
msgid "Amount to import:"
msgstr "Alınacak miktar:"
-#: ../src/import/ImportRaw.cpp:370
+#: import/ImportRaw.cpp:404
msgid "Sample rate:"
msgstr "Ãrnek oran:"
@@ -7039,1073 +7866,1258 @@ msgstr ""
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr ""
-#: ../src/prefs/PrefsDialog.cpp:84
-msgid "Audio I/O"
-msgstr "Ses I/O"
-
-#: ../src/prefs/AudioIOPrefs.cpp:212
-msgid "1 (Mono)"
-msgstr "1 (Mono)"
-
-#: ../src/prefs/AudioIOPrefs.cpp:213
-msgid "2 (Stereo)"
-msgstr "2 (Ãiftli)"
-
-#: ../src/prefs/AudioIOPrefs.cpp:80
-msgid "Playback"
-msgstr "Kayıttan Yürüt"
-
-#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
-#: toolbars/DeviceToolBar.cpp:54
-msgid "Device"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:122
-msgid "Using:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:123
-msgid "Portaudio v"
-msgstr ""
-
-#: ../src/prefs/AudioIOPrefs.cpp:148
-msgid "Recording"
-msgstr "Kaydediliyor"
-
-#: prefs/AudioIOPrefs.cpp:139
-msgid "Channels"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:145
-msgid "Playthrough"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:194
-msgid "Effects Preview"
+#: prefs/BatchPrefs.cpp:53
+msgid "Batch"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:165
-msgid "Length of preview:"
+#: prefs/BatchPrefs.cpp:75
+#: prefs/GUIPrefs.cpp:134
+#: prefs/TracksPrefs.cpp:99
+msgid "Behaviors"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:158
-msgid "Cut Preview"
+#: prefs/BatchPrefs.cpp:78
+msgid "&Don't apply effects in batch mode"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:173
-msgid "Preview before cut region:"
+#: prefs/BatchPrefs.cpp:81
+#: prefs/GUIPrefs.cpp:147
+msgid "Cl&eanSpeech Mode (Customized GUI)"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:175
-msgid "Preview after cut region:"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:168
-msgid "Latency"
-msgstr ""
+#: prefs/DevicePrefs.cpp:107
+#: prefs/GUIPrefs.cpp:32
+#: prefs/MidiIOPrefs.cpp:113
+msgid "Interface"
+msgstr "Arayüz"
-#: prefs/AudioIOPrefs.cpp:195
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
+#: prefs/DevicePrefs.cpp:112
+#: prefs/MidiIOPrefs.cpp:118
+msgid "Host"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:198
-msgid "Latency correction:\n"
-"(negative = backwards)"
+#: prefs/DevicePrefs.cpp:119
+#: prefs/MidiIOPrefs.cpp:125
+msgid "Using:"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:197
-msgid "Seek Time when playing"
-msgstr ""
+#: prefs/DevicePrefs.cpp:126
+#: prefs/MidiIOPrefs.cpp:132
+#: prefs/PlaybackPrefs.cpp:31
+msgid "Playback"
+msgstr "Kayıttan Yürüt"
-#: prefs/AudioIOPrefs.cpp:187
-msgid "Short period:"
-msgstr ""
+#: prefs/DevicePrefs.cpp:139
+#: prefs/MidiIOPrefs.cpp:145
+#: prefs/RecordingPrefs.cpp:34
+msgid "Recording"
+msgstr "Kaydediliyor"
-#: prefs/AudioIOPrefs.cpp:189
-msgid "Long period:"
+#: prefs/DevicePrefs.cpp:149
+msgid "Channels"
msgstr ""
-#: prefs/BatchPrefs.cpp:53 prefs/BatchPrefs.cpp:54
-msgid "Batch"
-msgstr ""
+#: prefs/DevicePrefs.cpp:165
+#, fuzzy
+msgid "No audio interfaces"
+msgstr "Ses izi(leri) kaldırıldı"
-#: prefs/BatchPrefs.cpp:75 prefs/GUIPrefs.cpp:70
-msgid "Behaviors"
+#: prefs/DevicePrefs.cpp:201
+#: prefs/DevicePrefs.cpp:206
+#: prefs/MidiIOPrefs.cpp:295
+#: prefs/MidiIOPrefs.cpp:300
+msgid "No devices found"
msgstr ""
-#: prefs/BatchPrefs.cpp:80
-msgid "&Don't apply effects in batch mode"
-msgstr ""
+#: prefs/DevicePrefs.cpp:264
+msgid "1 (Mono)"
+msgstr "1 (Mono)"
-#: prefs/BatchPrefs.cpp:83
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr ""
+#: prefs/DevicePrefs.cpp:267
+msgid "2 (Stereo)"
+msgstr "2 (Ãiftli)"
-#: ../src/prefs/PrefsDialog.cpp:88 ../src/prefs/PrefsDialog.cpp:216
+#: prefs/DirectoriesPrefs.cpp:52
+#: prefs/PrefsDialog.cpp:210
msgid "Directories"
msgstr "Dizinler"
-#: prefs/DirectoriesPrefs.cpp:87
+#: prefs/DirectoriesPrefs.cpp:82
msgid "Temporary files directory"
msgstr ""
-#: ../src/prefs/DirectoriesPrefs.cpp:57
+#: prefs/DirectoriesPrefs.cpp:89
msgid "Location:"
msgstr "Konum:"
-#: ../src/prefs/DirectoriesPrefs.cpp:78
+#: prefs/DirectoriesPrefs.cpp:96
msgid "Free Space:"
msgstr "BoÅ Alan:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr ""
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr ""
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
+#: prefs/DirectoriesPrefs.cpp:103
+msgid "Audio cache"
msgstr ""
#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
+msgid "Play and/or record using RAM (useful for slow drives)"
msgstr ""
-#: prefs/DirectoriesPrefs.cpp:110
-msgid "Audio cache"
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
msgstr ""
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:118
+msgid ""
+"If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
-#: ../src/prefs/DirectoriesPrefs.cpp:135
+#: prefs/DirectoriesPrefs.cpp:126
msgid "Choose a location to place the temporary directory"
msgstr "Geçici dizini yerleÅtirmek için bir konum seç"
-#: ../src/prefs/DirectoriesPrefs.cpp:181
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:173
#, c-format
msgid "Directory %s does not exist. Create it?"
msgstr "%s dizin mevcut deÄil. Yaratılsın mı?"
-#: ../src/prefs/DirectoriesPrefs.cpp:183
+#: prefs/DirectoriesPrefs.cpp:175
msgid "New Temporary Directory"
msgstr "Yeni Geçici Dizin"
-#: ../src/prefs/DirectoriesPrefs.cpp:202
+#: prefs/DirectoriesPrefs.cpp:193
#, c-format
msgid "Directory %s is not writable"
msgstr "%s dizini yazılabilir deÄil"
-#: ../src/prefs/DirectoriesPrefs.cpp:214
+#: prefs/DirectoriesPrefs.cpp:207
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "Geçici dizine deÄiÅtirme Audacity yeniden baÅlayana kadar etkin olmayacak"
-#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
-msgid "Import / Export"
+#: prefs/GUIPrefs.cpp:51
+msgid "In Browser"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:84
-msgid "MP3 Export Library"
+#: prefs/GUIPrefs.cpp:52
+msgid "From Internet"
msgstr ""
-#: ../src/prefs/FileFormatPrefs.cpp:180
-msgid "MP3 Library Version:"
-msgstr "MP3 Kütüphane Sürümü:"
-
-#: prefs/FileFormatPrefs.cpp:93
-msgid "MP3 Library:"
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:98
-msgid "LAME MP3 Library:"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
-msgid "&Download"
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
-msgstr ""
+#: prefs/GUIPrefs.cpp:61
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 dB (yüksek-genlik düzenlemesi için yüzeysel mesafe)"
-#: prefs/FileFormatPrefs.cpp:136
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr ""
+#: prefs/GUIPrefs.cpp:62
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 dB (8 bit örneklerin PCM mesafesi)"
-#: prefs/FileFormatPrefs.cpp:137
-msgid "When importing audio files"
+#: prefs/GUIPrefs.cpp:63
+msgid "-60 dB (PCM range of 10 bit samples)"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:140
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
-msgstr ""
+#: prefs/GUIPrefs.cpp:64
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 dB (16 bit örneklerin PCM mesafesi)"
-#: prefs/FileFormatPrefs.cpp:141
-msgid "&Read uncompressed audio files directly from the original (faster)"
-msgstr ""
+#: prefs/GUIPrefs.cpp:65
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 dB (insan sesinin yaklaÅık sınırı)"
-#: prefs/FileFormatPrefs.cpp:143
-msgid "&Normalize all tracks in project"
-msgstr ""
+#: prefs/GUIPrefs.cpp:66
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB (24 bit örneklerin PCM mesafesi)"
-#: prefs/FileFormatPrefs.cpp:132
-msgid "When saving a project that depends on other audio files"
+#: prefs/GUIPrefs.cpp:96
+#: prefs/SpectrumPrefs.cpp:129
+#: prefs/TracksPrefs.cpp:75
+msgid "Display"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:87
-msgid "Always © all audio into project (safest)"
+#: prefs/GUIPrefs.cpp:98
+msgid "Er&gonomic order of audio I/O buttons"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:88
-msgid "&Do not copy any audio"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:135
-msgid "&Ask user"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:93
-msgid "When exporting tracks to an audio file"
+#: prefs/GUIPrefs.cpp:123
+msgid "Help:"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:144
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+#: prefs/GUIPrefs.cpp:136
+msgid "Cl&osing last window quits Audacity"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:97
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+#: prefs/GUIPrefs.cpp:139
+msgid "&Beep on completion of longer activities"
msgstr ""
-#: prefs/BatchPrefs.cpp:91
-msgid "S&how Metadata Editor prior to export step"
+#: prefs/GUIPrefs.cpp:145
+msgid "Modes"
msgstr ""
-#: ../src/prefs/PrefsDialog.cpp:89
-msgid "Interface"
-msgstr "Arayüz"
-
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
+#: prefs/GUIPrefs.cpp:156
+msgid "Don't a&pply effects in batch mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
+#: prefs/ImportExportPrefs.cpp:28
+msgid "Import / Export"
msgstr ""
-#: prefs/GUIPrefs.cpp:72
-msgid "&Update display while playing"
+#: prefs/ImportExportPrefs.cpp:53
+msgid "When importing audio files"
msgstr ""
-#: prefs/GUIPrefs.cpp:96
-msgid "Cl&osing last window quits Audacity"
+#: prefs/ImportExportPrefs.cpp:57
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
msgstr ""
-#: prefs/GUIPrefs.cpp:76
-msgid "Enable &dragging of left and right selection edges"
+#: prefs/ImportExportPrefs.cpp:59
+msgid "&Read uncompressed audio files directly from the original (faster)"
msgstr ""
-#: prefs/GUIPrefs.cpp:100
-msgid "Er&gonomic order of audio I/O buttons"
+#: prefs/ImportExportPrefs.cpp:64
+msgid "&Normalize all tracks in project"
msgstr ""
-#: prefs/GUIPrefs.cpp:80
-msgid "Automatically &fit tracks vertically zoomed"
+#: prefs/ImportExportPrefs.cpp:70
+msgid "When exporting tracks to an audio file"
msgstr ""
-#: prefs/GUIPrefs.cpp:104
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+#: prefs/ImportExportPrefs.cpp:74
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
msgstr ""
-#: prefs/GUIPrefs.cpp:90
-msgid "Editing a &clip can move other clips"
+#: prefs/ImportExportPrefs.cpp:76
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
msgstr ""
-#: prefs/GUIPrefs.cpp:88
-msgid "&Select all audio in project, if none selected"
+#: prefs/ImportExportPrefs.cpp:81
+msgid "S&how Metadata Editor prior to export step"
msgstr ""
-#: prefs/GUIPrefs.cpp:90
-msgid "&Beep on completion of longer activities"
+#: prefs/ImportExportPrefs.cpp:84
+msgid ""
+"Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
msgstr ""
-#: prefs/BatchPrefs.cpp:87 prefs/GUIPrefs.cpp:94
-msgid "Show / Hide"
-msgstr ""
+#: prefs/KeyConfigPrefs.cpp:72
+msgid "Keyboard"
+msgstr "Klavye"
-#: prefs/GUIPrefs.cpp:96
-msgid "Enable cut &lines"
+#: prefs/KeyConfigPrefs.cpp:96
+msgid "Keyboard preferences currently unavailable."
msgstr ""
-#: prefs/GUIPrefs.cpp:98
-msgid "Show warnings about &temp files"
+#: prefs/KeyConfigPrefs.cpp:97
+msgid "Open a new project to modify keyboard shortcuts."
msgstr ""
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
+#: prefs/KeyConfigPrefs.cpp:108
+#: prefs/KeyConfigPrefs.cpp:224
+#, fuzzy
+msgid "All"
+msgstr "&Tüm"
+
+#: prefs/KeyConfigPrefs.cpp:124
+msgid "Key Bindings"
msgstr ""
-#: prefs/GUIPrefs.cpp:122
-msgid "Show &Welcome Message at program start up"
+#: prefs/KeyConfigPrefs.cpp:129
+msgid "Category:"
msgstr ""
-#: prefs/GUIPrefs.cpp:126
-msgid "Modes"
+#: prefs/KeyConfigPrefs.cpp:156
+msgid "S&et"
msgstr ""
-#: prefs/GUIPrefs.cpp:129
-msgid "Don't a&pply effects in batch mode"
+#: prefs/KeyConfigPrefs.cpp:157
+#: widgets/FileHistory.cpp:174
+msgid "&Clear"
msgstr ""
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
+#: prefs/KeyConfigPrefs.cpp:162
+msgid "Note: Pressing Cmd+Q will quit. All other keys are valid."
+msgstr "Not: Cmd+Q'ya basma çıkacaktır. Tüm diÄer tuÅlar geçerlidir."
+
+#: prefs/KeyConfigPrefs.cpp:169
+#: prefs/ThemePrefs.cpp:125
+msgid "&Defaults"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:150
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 dB (yüksek-genlik düzenlemesi için yüzeysel mesafe)"
+#: prefs/KeyConfigPrefs.cpp:181
+msgid "Key Combination"
+msgstr "TuÅ Kombinasyonu"
-#: ../src/prefs/GUIPrefs.cpp:157
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 dB (8 bit örneklerin PCM mesafesi)"
+#: prefs/KeyConfigPrefs.cpp:234
+#: toolbars/EditToolBar.cpp:143
+#: toolbars/EditToolBar.cpp:195
+msgid "Undo"
+msgstr "Geri Al"
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
+#: prefs/KeyConfigPrefs.cpp:237
+#: toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
msgstr ""
-#: ../src/prefs/GUIPrefs.cpp:164
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 dB (16 bit örneklerin PCM mesafesi)"
+#: prefs/KeyConfigPrefs.cpp:263
+msgid "Select an XML file containing Audacity keyboard shortcuts..."
+msgstr "Audacity klavye kısayolları içeren bir XML dosya seçin..."
-#: ../src/prefs/GUIPrefs.cpp:171
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 dB (insan sesinin yaklaÅık sınırı)"
+#: prefs/KeyConfigPrefs.cpp:281
+msgid "Error loading keyboard shortcuts"
+msgstr "Klavye kısayolarını yüklüyorken hata"
-#: ../src/prefs/GUIPrefs.cpp:178
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB (24 bit örneklerin PCM mesafesi)"
+#: prefs/KeyConfigPrefs.cpp:294
+msgid "Export Keyboard Shortcuts As:"
+msgstr "Olarak Klavye Kısayollarına Aktar:"
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
-msgstr ""
+#: prefs/KeyConfigPrefs.cpp:320
+msgid "Error saving keyboard shortcuts"
+msgstr "Klavye kısayollarını kaydediyorken hata"
-#: prefs/GUIPrefs.cpp:164
-msgid "Other interface choices"
+#: prefs/KeyConfigPrefs.cpp:368
+#, c-format
+msgid ""
+"The keyboard shortcut '%s' is already assigned to:\n"
+"\n"
+"'%s'"
msgstr ""
-#: prefs/GUIPrefs.cpp:167
-msgid "Help:"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
msgstr ""
-#: prefs/GUIPrefs.cpp:168
-msgid "Solo Button:"
+#: prefs/LibraryPrefs.cpp:79
+msgid "MP3 Export Library"
msgstr ""
-#: ../src/prefs/PrefsDialog.cpp:90
-msgid "Keyboard"
-msgstr "Klavye"
+#: prefs/LibraryPrefs.cpp:83
+msgid "MP3 Library Version:"
+msgstr "MP3 Kütüphane Sürümü:"
-#: prefs/KeyConfigPrefs.cpp:86
-msgid "Keyboard preferences currently unavailable."
+#: prefs/LibraryPrefs.cpp:89
+msgid "MP3 Library:"
msgstr ""
-#: prefs/KeyConfigPrefs.cpp:87
-msgid "Open a new project to modify keyboard shortcuts."
+#: prefs/LibraryPrefs.cpp:92
+#: prefs/LibraryPrefs.cpp:124
+msgid "&Locate..."
msgstr ""
-#: prefs/KeyConfigPrefs.cpp:93
-msgid "Key Bindings"
+#: prefs/LibraryPrefs.cpp:94
+msgid "LAME MP3 Library:"
msgstr ""
-#: prefs/KeyConfigPrefs.cpp:113
-msgid "S&et"
+#: prefs/LibraryPrefs.cpp:97
+#: prefs/LibraryPrefs.cpp:130
+msgid "&Download"
msgstr ""
-#: ../src/prefs/KeyConfigPrefs.cpp:115
-msgid "Note: Pressing Cmd+Q will quit. All other keys are valid."
-msgstr "Not: Cmd+Q'ya basma çıkacaktır. Tüm diÄer tuÅlar geçerlidir."
-
-#: prefs/KeyConfigPrefs.cpp:122 prefs/ThemePrefs.cpp:102
-msgid "&Defaults"
+#: prefs/LibraryPrefs.cpp:104
+msgid "FFmpeg Import/Export Library"
msgstr ""
-#: ../src/prefs/KeyConfigPrefs.cpp:79
-msgid "Key Combination"
-msgstr "TuÅ Kombinasyonu"
-
-#: ../src/prefs/KeyConfigPrefs.cpp:159
-msgid "Export Keyboard Shortcuts As:"
-msgstr "Olarak Klavye Kısayollarına Aktar:"
-
-#: ../src/prefs/KeyConfigPrefs.cpp:174
-msgid "Error saving keyboard shortcuts"
-msgstr "Klavye kısayollarını kaydediyorken hata"
+#: prefs/LibraryPrefs.cpp:108
+msgid "FFmpeg Library Version:"
+msgstr ""
-#: ../src/prefs/KeyConfigPrefs.cpp:188
-msgid "Select an XML file containing Audacity keyboard shortcuts..."
-msgstr "Audacity klavye kısayolları içeren bir XML dosya seçin..."
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
-#: ../src/prefs/KeyConfigPrefs.cpp:206
-msgid "Error loading keyboard shortcuts"
-msgstr "Klavye kısayolarını yüklüyorken hata"
+#: prefs/LibraryPrefs.cpp:120
+#: prefs/LibraryPrefs.cpp:126
+msgid "FFmpeg Library:"
+msgstr ""
-#: prefs/KeyConfigPrefs.cpp:239
-#, c-format
-msgid "The keyboard shortcut '%s' is already assigned to:\n"
-"\n"
-"'%s'"
+#: prefs/MidiIOPrefs.cpp:58
+msgid "MIDI Devices"
msgstr ""
-#: ../src/EditToolBar.cpp:159
-msgid "Undo"
-msgstr "Geri Al"
+#: prefs/MidiIOPrefs.cpp:168
+#: prefs/RecordingPrefs.cpp:60
+msgid "Playthrough"
+msgstr ""
-#: prefs/AudioIOPrefs.cpp:147
+#: prefs/MidiIOPrefs.cpp:170
#, fuzzy
msgid "&Play other tracks while recording new one"
msgstr "Yeni biri kaydediliyorken diÄer izleri çal"
-#: prefs/MidiIOPrefs.cpp:149
+#: prefs/MidiIOPrefs.cpp:173
msgid "&Hardware Playthrough (Play new track while recording it)"
msgstr ""
-#: prefs/MidiIOPrefs.cpp:152
+#: prefs/MidiIOPrefs.cpp:176
msgid "&Software Playthrough (Play new track while recording it)"
msgstr ""
-#: prefs/MidiIOPrefs.cpp:160
+#: prefs/MidiIOPrefs.cpp:181
+#: prefs/PlaybackPrefs.cpp:72
+msgid "Cut Preview"
+msgstr ""
+
+#: prefs/MidiIOPrefs.cpp:184
msgid "Play before cut region:"
msgstr ""
-#: prefs/MidiIOPrefs.cpp:162
+#: prefs/MidiIOPrefs.cpp:186
msgid "Play after cut region:"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:174
+#: prefs/MidiIOPrefs.cpp:191
+#: prefs/RecordingPrefs.cpp:79
+msgid "Latency"
+msgstr ""
+
+#: prefs/MidiIOPrefs.cpp:196
+#: prefs/RecordingPrefs.cpp:85
msgid "Audio to buffer:"
msgstr ""
-#: prefs/AudioIOPrefs.cpp:177
+#: prefs/MidiIOPrefs.cpp:198
+#: prefs/RecordingPrefs.cpp:92
msgid "Latency correction:"
msgstr ""
-#: prefs/MidiIOPrefs.cpp:183
+#: prefs/MidiIOPrefs.cpp:205
msgid "Seek Time"
msgstr ""
-#: prefs/MidiIOPrefs.cpp:196
+#: prefs/MidiIOPrefs.cpp:208
+#: prefs/PlaybackPrefs.cpp:98
+msgid "Short period:"
+msgstr ""
+
+#: prefs/MidiIOPrefs.cpp:210
+#: prefs/PlaybackPrefs.cpp:105
+msgid "Long period:"
+msgstr ""
+
+#: prefs/MidiIOPrefs.cpp:215
+#: prefs/PlaybackPrefs.cpp:57
+msgid "Effects Preview"
+msgstr ""
+
+#: prefs/MidiIOPrefs.cpp:218
msgid "Play when previewing:"
msgstr ""
-#: ../src/prefs/PrefsDialog.cpp:91
+#: prefs/MidiIOPrefs.cpp:256
+#, fuzzy
+msgid "No MIDI interfaces"
+msgstr "Arayüz"
+
+#: prefs/MousePrefs.cpp:57
msgid "Mouse"
msgstr "Fare"
-#: ../src/prefs/MousePrefs.cpp:71
+#: prefs/MousePrefs.cpp:84
msgid "Mouse Bindings (default values, not configurable)"
msgstr "Fare BaÄlantıları (öntanımlı deÄerler, yapılandırılamaz)"
-#: ../src/prefs/MousePrefs.cpp:84
+#: prefs/MousePrefs.cpp:97
msgid "Tool"
msgstr "Araç"
-#: ../src/prefs/MousePrefs.cpp:85
+#: prefs/MousePrefs.cpp:98
msgid "Command Action"
msgstr "Komut Eylemi"
-#: ../src/prefs/MousePrefs.cpp:86
+#: prefs/MousePrefs.cpp:99
msgid "Buttons"
msgstr "DüÄmeler"
-#: ../src/prefs/MousePrefs.cpp:88 ../src/prefs/MousePrefs.cpp:92
-#: ../src/prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:121
+#: prefs/MousePrefs.cpp:126
msgid "Left-Click"
msgstr "Sol-Tıkla"
-#: ../src/prefs/MousePrefs.cpp:88 ../src/prefs/MousePrefs.cpp:89
-#: ../src/prefs/MousePrefs.cpp:90
+#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:103
+#: prefs/MousePrefs.cpp:104
+#: prefs/MousePrefs.cpp:105
+#: prefs/MousePrefs.cpp:106
msgid "Select"
msgstr "Seç"
-#: ../src/prefs/MousePrefs.cpp:88
+#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:126
msgid "Set Selection Point"
msgstr "Seçim Noktasını Ayarla"
-#: ../src/prefs/MousePrefs.cpp:89 ../src/prefs/MousePrefs.cpp:93
-#: ../src/prefs/MousePrefs.cpp:97 ../src/prefs/MousePrefs.cpp:98
-#: ../src/prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:103
+#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:115
+#: prefs/MousePrefs.cpp:119
+#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:127
msgid "Left-Drag"
msgstr "Sol-Sürükle"
-#: ../src/prefs/MousePrefs.cpp:89
+#: prefs/MousePrefs.cpp:103
+#: prefs/MousePrefs.cpp:127
msgid "Set Selection Range"
msgstr "Seçim AralıÄını Ayarla"
-#: ../src/prefs/MousePrefs.cpp:90
+#: prefs/MousePrefs.cpp:104
msgid "Extend Selection Range"
msgstr "Seçim AralıÄını GeniÅlet"
-#: ../src/prefs/MousePrefs.cpp:90
+#: prefs/MousePrefs.cpp:104
msgid "Shift-Left-Click"
msgstr "Shift-Sol-Tıklama"
-#: prefs/MousePrefs.cpp:101
+#: prefs/MousePrefs.cpp:105
msgid "Left-Double-Click"
msgstr ""
-#: prefs/MousePrefs.cpp:101
+#: prefs/MousePrefs.cpp:105
msgid "Select Clip or Entire Track"
msgstr ""
-#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:106
msgid "Ctrl-Left-Click"
msgstr ""
-#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:106
msgid "Set Selection Point and Play"
msgstr ""
-#: ../src/prefs/MousePrefs.cpp:92 ../src/prefs/MousePrefs.cpp:93
-#: ../src/prefs/MousePrefs.cpp:94 ../src/prefs/MousePrefs.cpp:95
+#: prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:110
+#: prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:112
+#: prefs/MousePrefs.cpp:113
msgid "Zoom"
msgstr "Odaklama"
-#: ../src/prefs/MousePrefs.cpp:92
+#: prefs/MousePrefs.cpp:108
msgid "Zoom in on Point"
msgstr "Noktaya YaklaÅ"
-#: ../src/prefs/MousePrefs.cpp:93
+#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:129
msgid "Zoom in on a Range"
msgstr "Bir Aralıkta Büyült"
-#: prefs/MousePrefs.cpp:103
+#: prefs/MousePrefs.cpp:109
msgid "same as right-drag"
msgstr ""
-#: ../src/prefs/MousePrefs.cpp:94
+#: prefs/MousePrefs.cpp:110
+#: prefs/MousePrefs.cpp:128
msgid "Right-Click"
msgstr "SaÄ-Tıkla"
-#: ../src/prefs/MousePrefs.cpp:94
+#: prefs/MousePrefs.cpp:110
+#: prefs/MousePrefs.cpp:128
msgid "Zoom out one step"
msgstr "Bir adım küçült"
-#: ../src/prefs/MousePrefs.cpp:95
+#: prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:129
msgid "Right-Drag"
msgstr "SaÄ-Sürükle"
-#: prefs/MousePrefs.cpp:105
+#: prefs/MousePrefs.cpp:111
msgid "same as left-drag"
msgstr ""
-#: prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:112
msgid "Shift-Drag"
msgstr ""
-#: prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:112
msgid "Zoom out on a Range"
msgstr ""
-#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:113
msgid "Middle-Click"
msgstr ""
-#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:113
msgid "Zoom default"
msgstr ""
-#: prefs/MousePrefs.cpp:107
+#: prefs/MousePrefs.cpp:115
msgid "Time shift clip or move up/down between tracks"
msgstr ""
-#: prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:116
msgid "Shift-Left-Drag"
msgstr ""
-#: prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:116
msgid "Time shift all clips in track"
msgstr ""
-#: ../src/prefs/MousePrefs.cpp:103
+#: prefs/MousePrefs.cpp:117
+#: prefs/MousePrefs.cpp:124
msgid "Ctrl-Left-Drag"
msgstr "Ctrl-Sol-Sürükle"
-#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:117
msgid "Move clip up/down between tracks"
msgstr ""
-#: ../src/prefs/MousePrefs.cpp:98
+#: prefs/MousePrefs.cpp:119
msgid "Change Amplification Envelope"
msgstr "Ses Yükseltme Zarfını DeÄiÅtir"
-#: ../src/prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:121
msgid "Change Sample"
msgstr "ÃrneÄi DeÄiÅtir"
-#: ../src/prefs/MousePrefs.cpp:100 ../src/prefs/MousePrefs.cpp:101
-#: ../src/prefs/MousePrefs.cpp:102 ../src/prefs/MousePrefs.cpp:103
+#: prefs/MousePrefs.cpp:121
+#: prefs/MousePrefs.cpp:122
+#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:124
msgid "Pencil"
msgstr "KurÅun kalem"
-#: ../src/prefs/MousePrefs.cpp:101
+#: prefs/MousePrefs.cpp:122
msgid "Alt-Left-Click"
msgstr "Alt-Sol-Tıkla"
-#: ../src/prefs/MousePrefs.cpp:101
+#: prefs/MousePrefs.cpp:122
msgid "Smooth at Sample"
msgstr "Ãrnekte DüzleDüzgün"
-#: ../src/prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:123
msgid "Change Several Samples"
msgstr "Birbirinden Farklı Ãrnekleri DeÄiÅtir"
-#: ../src/prefs/MousePrefs.cpp:103
+#: prefs/MousePrefs.cpp:124
msgid "Change ONE Sample only"
msgstr "Sadece BİR Ãrnek DeÄiÅtir"
-#: ../src/prefs/MousePrefs.cpp:105 ../src/prefs/MousePrefs.cpp:106
-#: ../src/prefs/MousePrefs.cpp:107 ../src/prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:126
+#: prefs/MousePrefs.cpp:127
+#: prefs/MousePrefs.cpp:128
+#: prefs/MousePrefs.cpp:129
msgid "Multi"
msgstr "Ãoklu"
-#: prefs/MousePrefs.cpp:118 prefs/MousePrefs.cpp:119
+#: prefs/MousePrefs.cpp:126
+#: prefs/MousePrefs.cpp:127
#, fuzzy
msgid "same as select tool"
msgstr "Seçim aracı ile aynı"
-#: prefs/MousePrefs.cpp:120 prefs/MousePrefs.cpp:121
+#: prefs/MousePrefs.cpp:128
+#: prefs/MousePrefs.cpp:129
#, fuzzy
msgid "same as zoom tool"
msgstr "Odaklama aracı ile aynı"
-#: ../src/prefs/MousePrefs.cpp:110 ../src/prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:131
+#: prefs/MousePrefs.cpp:132
+#: prefs/MousePrefs.cpp:133
msgid "Any"
msgstr "Herhangi"
-#: ../src/prefs/MousePrefs.cpp:110
+#: prefs/MousePrefs.cpp:131
msgid "Scroll up or down"
msgstr ""
-#: ../src/prefs/MousePrefs.cpp:110
+#: prefs/MousePrefs.cpp:131
msgid "Wheel-Rotate"
msgstr "Teker-DönüÅü"
-#: prefs/MousePrefs.cpp:128
+#: prefs/MousePrefs.cpp:132
msgid "Scroll left or right"
msgstr ""
-#: prefs/MousePrefs.cpp:128
+#: prefs/MousePrefs.cpp:132
msgid "Shift-Wheel-Rotate"
msgstr ""
-#: ../src/prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:133
msgid "Ctrl-Wheel-Rotate"
msgstr "Ctrl-Tekeri-Döndür"
-#: ../src/prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:133
msgid "Zoom in or out"
msgstr "YaklaÅ ya da uzaklaÅ"
-#: ../src/prefs/PrefsDialog.cpp:52
+#: prefs/PlaybackPrefs.cpp:61
+msgid "Length of preview:"
+msgstr ""
+
+#: prefs/PlaybackPrefs.cpp:76
+msgid "Preview before cut region:"
+msgstr ""
+
+#: prefs/PlaybackPrefs.cpp:83
+msgid "Preview after cut region:"
+msgstr ""
+
+#: prefs/PlaybackPrefs.cpp:94
+msgid "Seek Time when playing"
+msgstr ""
+
+#: prefs/PrefsDialog.cpp:72
msgid "Audacity Preferences"
msgstr "Audacity Tercihleri"
-#: ../src/prefs/QualityPrefs.cpp:161
+#: prefs/ProjectsPrefs.cpp:32
+msgid "Projects"
+msgstr ""
+
+#: prefs/ProjectsPrefs.cpp:59
+msgid "When saving a project that depends on other audio files"
+msgstr ""
+
+#: prefs/ProjectsPrefs.cpp:63
+msgid "Always © all audio into project (safest)"
+msgstr ""
+
+#: prefs/ProjectsPrefs.cpp:65
+msgid "&Do not copy any audio"
+msgstr ""
+
+#: prefs/ProjectsPrefs.cpp:67
+msgid "&Ask user"
+msgstr ""
+
+#: prefs/ProjectsPrefs.cpp:74
+msgid "Auto save"
+msgstr ""
+
+#: prefs/ProjectsPrefs.cpp:76
+msgid "Auto save a copy of the project in a separate folder"
+msgstr ""
+
+#: prefs/ProjectsPrefs.cpp:82
+msgid "Auto save interval:"
+msgstr ""
+
+#: prefs/ProjectsPrefs.cpp:86
+#: prefs/ProjectsPrefs.cpp:87
+msgid "minutes"
+msgstr ""
+
+#: prefs/QualityPrefs.cpp:75
msgid "Rectangle"
msgstr "Dikdörtgen"
-#: ../src/prefs/QualityPrefs.cpp:162
+#: prefs/QualityPrefs.cpp:76
msgid "Triangle"
msgstr "Ãçgen"
-#: ../src/prefs/QualityPrefs.cpp:163
+#: prefs/QualityPrefs.cpp:77
msgid "Shaped"
msgstr "Profil"
-#: prefs/QualityPrefs.cpp:122
+#: prefs/QualityPrefs.cpp:125
msgid "Sampling"
msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:80
+#: prefs/QualityPrefs.cpp:129
msgid "Default Sample Rate:"
msgstr "Ãntanımlı Ãrnek Oran:"
-#: ../src/prefs/QualityPrefs.cpp:114
+#: prefs/QualityPrefs.cpp:154
msgid "Default Sample Format:"
msgstr "Ãntanımlı Ãrnek Biçem:"
-#: ../src/prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "Gerçek-zaman örnek oran dönüÅtürücüsü:"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:147
-msgid "High-quality sample rate converter:"
-msgstr "Yüksek-kalite örnek oran dönüÅtürücüsü:"
+#: prefs/QualityPrefs.cpp:171
+#: prefs/QualityPrefs.cpp:193
+msgid "Sample Rate Converter:"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:171
-msgid "Real-time dither:"
-msgstr "Gerçek-zaman kıpırtısı:"
+#: prefs/QualityPrefs.cpp:178
+#: prefs/QualityPrefs.cpp:200
+msgid "Dither"
+msgstr ""
-#: ../src/prefs/QualityPrefs.cpp:186
-msgid "High-quality dither:"
-msgstr "Yüksek-kalite kıpırtısı:"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
+#: prefs/RecordingPrefs.cpp:62
+msgid "Overdub: &Play other tracks while recording new one"
msgstr ""
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
+#: prefs/RecordingPrefs.cpp:66
+msgid "&Hardware Playthrough: Play new track while recording it"
msgstr ""
-#: prefs/QualityPrefs.cpp:164
-msgid "Dither"
+#: prefs/RecordingPrefs.cpp:70
+msgid "&Software Playthrough: Play new track while recording or monitoring"
msgstr ""
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
+#: prefs/RecordingPrefs.cpp:74
+msgid "(uncheck when recording \"stereo mix\")"
msgstr ""
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
+#: prefs/RecordingPrefs.cpp:89
+#: prefs/RecordingPrefs.cpp:90
+msgid "milliseconds (higher = more latency)"
msgstr ""
-#: prefs/SmartRecordPrefs.cpp:54 prefs/SmartRecordPrefs.cpp:55
-msgid "Smart Recording"
+#: prefs/RecordingPrefs.cpp:96
+#: prefs/RecordingPrefs.cpp:97
+msgid "milliseconds (negative = backwards)"
msgstr ""
-#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
+#: prefs/RecordingPrefs.cpp:103
+#: prefs/RecordingPrefs.cpp:105
msgid "Sound Activated Recording"
msgstr ""
-#: prefs/SmartRecordPrefs.cpp:71
+#: prefs/RecordingPrefs.cpp:114
msgid "Sound Activation Level (dB):"
msgstr ""
-#: ../src/prefs/PrefsDialog.cpp:87
+#: prefs/SpectrumPrefs.cpp:30
msgid "Spectrograms"
msgstr "Spektrogramlar"
-#: ../src/prefs/SpectrumPrefs.cpp:70
-msgid "FFT Size"
-msgstr "FFT Boyutu"
-
-#: prefs/SpectrumPrefs.cpp:75
+#: prefs/SpectrumPrefs.cpp:41
msgid "8 - most wideband"
msgstr ""
-#: ../src/prefs/SpectrumPrefs.cpp:40
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:46
msgid "256 - default"
msgstr "256 - öntanımlı"
-#: prefs/SpectrumPrefs.cpp:107
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:54
msgid "32768 - most narrowband"
msgstr ""
-#: ../src/prefs/SpectrumPrefs.cpp:44
+#: prefs/SpectrumPrefs.cpp:56
msgid "4096 - most narrowband"
msgstr "4096 - en çok darbantlı"
-#: prefs/SpectrumPrefs.cpp:90
-msgid "Window type:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:125
-msgid "FFT Skip Points"
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:96
-msgid "Display"
+#: prefs/SpectrumPrefs.cpp:93
+msgid "Window type"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:100
-msgid "&Grayscale"
+#: prefs/SpectrumPrefs.cpp:113
+msgid "FFT Skip Points"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:103
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:134
msgid "Minimum Frequency (Hz):"
msgstr ""
-#: ../src/prefs/SpectrumPrefs.cpp:104
+#: prefs/SpectrumPrefs.cpp:140
msgid "Maximum Frequency (Hz):"
msgstr "En Büyük Frekans (Hz):"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
msgstr ""
#: prefs/SpectrumPrefs.cpp:165
msgid "Minimum Amplitude (dB):"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:170
+#: prefs/SpectrumPrefs.cpp:171
msgid "Max. Number of Notes (1..128):"
msgstr ""
-#: ../src/prefs/SpectrumPrefs.cpp:148
+#: prefs/SpectrumPrefs.cpp:178
+msgid "&Find Notes"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:182
+msgid "&Quantize Notes"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:194
msgid "The maximum frequency must be an integer"
msgstr "Azami frekans bir tamsayı olmalı."
-#: ../src/prefs/SpectrumPrefs.cpp:152
+#: prefs/SpectrumPrefs.cpp:198
msgid "Maximum frequency must be in the range 100 Hz - 100,000 Hz"
msgstr "En büyük frekans 100 Hz - 100,000 Hz aralıÄında olmalıdır"
-#: prefs/SpectrumPrefs.cpp:146
+#: prefs/SpectrumPrefs.cpp:204
msgid "The minimum frequency must be an integer"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:150
+#: prefs/SpectrumPrefs.cpp:208
msgid "Minimum frequency must be at least 0 Hz"
msgstr ""
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:226 prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
+#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:230
+msgid "The maximum number of notes must be in the range 1..128"
msgstr ""
-#: prefs/ThemePrefs.cpp:61 prefs/ThemePrefs.cpp:62
+#: prefs/ThemePrefs.cpp:60
msgid "Theme"
msgstr ""
-#: prefs/ThemePrefs.cpp:90
+#: prefs/ThemePrefs.cpp:88
+msgid "Info"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:91
+msgid ""
+"Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:96
+msgid ""
+"You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid ""
+"If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid ""
+"Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
+#. i18n-hint: && in here is an escape character to get a single & on screen,
+#. * so keep it as is
+#: prefs/ThemePrefs.cpp:111
msgid "Theme Cache - Images && Color"
msgstr ""
-#: prefs/ThemePrefs.cpp:92
+#: prefs/ThemePrefs.cpp:115
msgid "Save Theme Cache"
msgstr ""
-#: prefs/ThemePrefs.cpp:93
+#: prefs/ThemePrefs.cpp:116
msgid "Load Theme Cache"
msgstr ""
-#: prefs/ThemePrefs.cpp:103
+#: prefs/ThemePrefs.cpp:131
msgid "Load Theme Cache At Startup"
msgstr ""
-#: prefs/ThemePrefs.cpp:115
+#: prefs/ThemePrefs.cpp:146
msgid "Individual Theme Files"
msgstr ""
-#: prefs/ThemePrefs.cpp:117
+#: prefs/ThemePrefs.cpp:150
msgid "Save Files"
msgstr ""
-#: prefs/ThemePrefs.cpp:118
+#: prefs/ThemePrefs.cpp:151
msgid "Load Files"
msgstr ""
-#: prefs/ThemePrefs.cpp:123
-msgid "Info"
+#: prefs/TracksPrefs.cpp:47
+msgid "Simple"
msgstr ""
-#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
+#: prefs/TracksPrefs.cpp:77
+msgid "&Update display while playing"
msgstr ""
-#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
+#: prefs/TracksPrefs.cpp:80
+msgid "Automatically &fit tracks vertically zoomed"
msgstr ""
-#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
+#: prefs/TracksPrefs.cpp:88
+msgid "Default View Mode:"
msgstr ""
-#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
+#: prefs/TracksPrefs.cpp:101
+msgid "&Select all audio in project, if none selected"
msgstr ""
-#: ../src/ControlToolBar.cpp:470
-msgid "Pause"
-msgstr "Duraklat"
+#: prefs/TracksPrefs.cpp:104
+msgid "Enable cut &lines"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play"
+#: prefs/TracksPrefs.cpp:107
+msgid "Enable &dragging of left and right selection edges"
msgstr ""
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
+#: prefs/TracksPrefs.cpp:110
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
msgstr ""
-#: ../src/ControlToolBar.cpp:471
-msgid "Stop"
-msgstr "Durdur"
+#: prefs/TracksPrefs.cpp:113
+msgid "Editing a &clip can move other clips"
+msgstr ""
-#: ../src/ControlToolBar.cpp:467
-msgid "Skip to Start"
-msgstr "BaÅlamayı Atla"
+#: prefs/TracksPrefs.cpp:121
+msgid "Solo Button:"
+msgstr ""
-#: ../src/ControlToolBar.cpp:472
-msgid "Skip to End"
-msgstr "Sonlamayı Atla"
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:192
-msgid "Record (Shift for Append Record)"
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
msgstr ""
-#: toolbars/ControlToolBar.cpp:195
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:170
+#: toolbars/ControlToolBar.cpp:205
+msgid "Pause"
+msgstr "Duraklat"
+
+#: toolbars/ControlToolBar.cpp:178
+#: toolbars/ControlToolBar.cpp:207
+#: widgets/ProgressDialog.cpp:1108
+msgid "Stop"
+msgstr "Durdur"
+
+#: toolbars/ControlToolBar.cpp:190
+#: toolbars/ControlToolBar.cpp:211
msgid "Clean Speech"
msgstr ""
-#: toolbars/ControlToolBar.cpp:524 toolbars/ControlToolBar.cpp:776
+#: toolbars/ControlToolBar.cpp:206
+msgid "Play (Shift for Loop Play)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:210
+msgid "Record (Shift for Append Record)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:579
+#: toolbars/ControlToolBar.cpp:914
msgid "Error while opening sound device. "
msgstr ""
-#: toolbars/ControlToolBar.cpp:696
+#: toolbars/ControlToolBar.cpp:749
msgid "Recording in CleanSpeech mode is not possible when a track, or more than one project, is already open."
msgstr ""
-#: toolbars/ControlToolBar.cpp:685
+#: toolbars/ControlToolBar.cpp:750
msgid "Recording not permitted"
msgstr ""
-#: toolbars/DeviceToolBar.cpp:113 toolbars/DeviceToolBar.cpp:115
+#: toolbars/DeviceToolBar.cpp:109
+#: toolbars/DeviceToolBar.cpp:205
msgid "Output Device"
msgstr ""
-#: toolbars/DeviceToolBar.cpp:134 toolbars/DeviceToolBar.cpp:136
+#: toolbars/DeviceToolBar.cpp:127
+#: toolbars/DeviceToolBar.cpp:206
msgid "Input Device"
msgstr ""
-#: ../src/EditToolBar.cpp:154
+#: toolbars/EditToolBar.cpp:136
msgid "Trim outside selection"
msgstr "DıŠSeçimi Kırp"
-#: ../src/EditToolBar.cpp:156
+#: toolbars/EditToolBar.cpp:138
msgid "Silence selection"
msgstr "Sessizlik seçimi"
#: toolbars/EditToolBar.cpp:150
+#: toolbars/EditToolBar.cpp:197
msgid "Link Tracks"
msgstr ""
-#: ../src/EditToolBar.cpp:164
+#: toolbars/EditToolBar.cpp:155
+#: toolbars/EditToolBar.cpp:198
msgid "Zoom In"
msgstr "YakınlaÅ"
-#: ../src/EditToolBar.cpp:166
+#: toolbars/EditToolBar.cpp:157
+#: toolbars/EditToolBar.cpp:199
msgid "Zoom Out"
msgstr "UzaklaÅ"
-#: ../src/EditToolBar.cpp:170
-msgid "Zoom Toggle"
-msgstr "Odaklanma Anahtarı"
-
#: toolbars/EditToolBar.cpp:160
-msgid "Fit Selection"
-msgstr ""
-
-#: ../src/EditToolBar.cpp:174
msgid "Fit selection in window"
msgstr "Seçimi pencerede sıÄdır"
#: toolbars/EditToolBar.cpp:162
-msgid "Fit Project"
-msgstr ""
-
-#: ../src/EditToolBar.cpp:176
msgid "Fit project in window"
msgstr "Projeyi pencerede sıÄdır"
-#: toolbars/MeterToolBar.cpp:49
-msgid "Meter"
+#: toolbars/EditToolBar.cpp:200
+msgid "Fit Selection"
msgstr ""
-#: toolbars/MeterToolBar.cpp:79
-msgid "Play Meter"
+#: toolbars/EditToolBar.cpp:201
+msgid "Fit Project"
msgstr ""
#: toolbars/MeterToolBar.cpp:80
+msgid "Play Meter"
+msgstr ""
+
+#: toolbars/MeterToolBar.cpp:81
msgid "Meter-Play"
msgstr ""
-#: toolbars/MeterToolBar.cpp:88
+#: toolbars/MeterToolBar.cpp:89
msgid "Record Meter"
msgstr ""
-#: toolbars/MeterToolBar.cpp:89
+#: toolbars/MeterToolBar.cpp:90
msgid "Meter-Record"
msgstr ""
-#: ../src/MeterToolBar.cpp:66
+#: toolbars/MeterToolBar.cpp:123
msgid "Output level meter"
msgstr "ÃıkıŠseviye ölçer"
-#: ../src/MeterToolBar.cpp:67
+#: toolbars/MeterToolBar.cpp:124
msgid "Input level meter - click to monitor input"
msgstr "Seviye ölçer giriÅi - ekran giriÅine tıkla"
-#: ../src/MixerToolBar.cpp:135
+#: toolbars/MixerToolBar.cpp:90
msgid "Output Volume"
msgstr "ÃıkıŠSesi"
@@ -8113,7 +9125,8 @@ msgstr "ÃıkıŠSesi"
msgid "Slider Output"
msgstr ""
-#: ../src/MixerToolBar.cpp:138
+#: toolbars/MixerToolBar.cpp:101
+#: widgets/Meter.cpp:862
msgid "Input Volume"
msgstr "Ses GiriÅi"
@@ -8121,366 +9134,351 @@ msgstr "Ses GiriÅi"
msgid "Slider Input"
msgstr ""
-#: toolbars/MixerToolBar.cpp:119
+#: toolbars/MixerToolBar.cpp:139
msgid "Input Source"
msgstr ""
-#: toolbars/SelectionBar.cpp:75
+#: toolbars/MixerToolBar.cpp:304
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:311
+msgid "Select Input Source"
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:319
+#, fuzzy
+msgid "Input Source:"
+msgstr "Ses GiriÅi"
+
+#: toolbars/SelectionBar.cpp:86
+#: toolbars/SelectionBar.cpp:292
msgid "Selection"
msgstr ""
-#: toolbars/SelectionBar.cpp:115 toolbars/SelectionBar.cpp:168
+#: toolbars/SelectionBar.cpp:135
+#: toolbars/SelectionBar.cpp:194
msgid "Project Rate (Hz):"
msgstr ""
-#: toolbars/SelectionBar.cpp:120 toolbars/SelectionBar.cpp:211
+#: toolbars/SelectionBar.cpp:149
+#: toolbars/SelectionBar.cpp:255
msgid "Selection Start:"
msgstr ""
-#: effects/ToneGen.cpp:300 effects/ToneGen.cpp:338
-#: toolbars/SelectionBar.cpp:135 toolbars/SelectionBar.cpp:225
+#: toolbars/SelectionBar.cpp:163
+#: toolbars/SelectionBar.cpp:164
+#: toolbars/SelectionBar.cpp:261
msgid "Length"
msgstr ""
-#: toolbars/SelectionBar.cpp:145
+#: toolbars/SelectionBar.cpp:174
msgid "hidden"
msgstr ""
-#: toolbars/SelectionBar.cpp:155 toolbars/SelectionBar.cpp:239
+#: toolbars/SelectionBar.cpp:184
+#: toolbars/SelectionBar.cpp:272
msgid "Audio Position:"
msgstr ""
-#: toolbars/SelectionBar.cpp:217 toolbars/SelectionBar.cpp:222
+#: toolbars/SelectionBar.cpp:236
+#: toolbars/SelectionBar.cpp:241
msgid "Snap To"
msgstr ""
-#: toolbars/SelectionBar.cpp:224
+#: toolbars/SelectionBar.cpp:260
msgid "Selection "
msgstr ""
-#: toolbars/SelectionBar.cpp:289
+#: toolbars/SelectionBar.cpp:340
msgid "Selection Length"
msgstr ""
-#: toolbars/SelectionBar.cpp:297
+#: toolbars/SelectionBar.cpp:348
msgid "Selection End"
msgstr ""
-#: toolbars/ToolBar.cpp:96
+#: toolbars/ToolBar.cpp:120
#, c-format
msgid "Audacity %s ToolBar"
msgstr ""
-#: toolbars/ToolDock.cpp:74 toolbars/ToolDock.cpp:75
+#: toolbars/ToolDock.cpp:75
+#: toolbars/ToolDock.cpp:76
msgid "ToolDock"
msgstr ""
-#: ../src/ControlToolBar.cpp:76
+#: toolbars/ToolsToolBar.cpp:63
msgid "Click and drag to select audio"
msgstr ""
-#: ../src/ControlToolBar.cpp:77
+#: toolbars/ToolsToolBar.cpp:64
msgid "Click and drag to edit the amplitude envelope"
msgstr ""
-#: ../src/ControlToolBar.cpp:78
+#: toolbars/ToolsToolBar.cpp:65
msgid "Click and drag to edit the samples"
msgstr ""
-#: ../src/ControlToolBar.cpp:80
+#: toolbars/ToolsToolBar.cpp:67
msgid "Click to Zoom In, Shift-Click to Zoom Out"
msgstr ""
-#: ../src/ControlToolBar.cpp:82
+#: toolbars/ToolsToolBar.cpp:69
msgid "Drag to Zoom Into Region, Right-Click to Zoom Out"
msgstr ""
-#: ../src/ControlToolBar.cpp:84
+#: toolbars/ToolsToolBar.cpp:71
msgid "Left=Zoom In, Right=Zoom Out, Middle=Normal"
msgstr "Sol=Büyült, SaÄ=Küçült, Orta=Normal"
-#: ../src/ControlToolBar.cpp:86
+#: toolbars/ToolsToolBar.cpp:73
msgid "Click and drag to move a track in time"
msgstr ""
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr ""
-
-#: ../src/ControlToolBar.cpp:355
-msgid "Selection Tool"
-msgstr "Seçim Aracı"
-
-#: ../src/ControlToolBar.cpp:356
-msgid "Envelope Tool"
-msgstr "Zarf Aracı"
-
-#: ../src/ControlToolBar.cpp:357
-msgid "Time Shift Tool"
-msgstr "Zaman Ãteleme Aracı"
-
-#: ../src/ControlToolBar.cpp:358
-msgid "Zoom Tool"
-msgstr "Odaklanma Aracı"
-
-#: ../src/ControlToolBar.cpp:359
-msgid "Draw Tool"
-msgstr "Ãizim Aracı"
-
-#: ../src/ControlToolBar.cpp:360
+#: toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
msgstr "Ãoklu-Araç Kipi"
-#: toolbars/ToolsToolBar.cpp:186
+#: toolbars/ToolsToolBar.cpp:190
msgid "Slide Tool"
msgstr ""
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr ""
-
-#: toolbars/TranscriptionToolBar.cpp:81
-msgid "Transcription"
+#: toolbars/TranscriptionToolBar.cpp:170
+msgid "Play at selected speed"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:183
-msgid "Play at selected speed"
+#: toolbars/TranscriptionToolBar.cpp:176
+#: toolbars/TranscriptionToolBar.cpp:181
+#: toolbars/TranscriptionToolBar.cpp:263
+msgid "Playback Speed"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:184
-msgid "Play-at-speed"
+#: toolbars/TranscriptionToolBar.cpp:195
+msgid "Adjust left selection to next onset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:190 toolbars/TranscriptionToolBar.cpp:195
-msgid "Playback Speed"
+#: toolbars/TranscriptionToolBar.cpp:197
+msgid "Adjust right selection to previous offset"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:200
-msgid "Adjust left selection to next onset"
+#: toolbars/TranscriptionToolBar.cpp:199
+msgid "Adjust left selection to next offset"
msgstr ""
#: toolbars/TranscriptionToolBar.cpp:201
-msgid "Left-to-On"
+msgid "Adjust right selection to previous onset"
msgstr ""
#: toolbars/TranscriptionToolBar.cpp:203
-msgid "Adjust right selection to previous offset"
-msgstr ""
-
-#: toolbars/TranscriptionToolBar.cpp:204
-msgid "Right-to-Off"
+msgid "Select region of sound around cursor"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:206
-msgid "Adjust left selection to next offset"
+#: toolbars/TranscriptionToolBar.cpp:205
+msgid "Select region of silence around cursor"
msgstr ""
#: toolbars/TranscriptionToolBar.cpp:207
-msgid "Left-to-Off"
+msgid "Automatically make labels from words"
msgstr ""
#: toolbars/TranscriptionToolBar.cpp:209
-msgid "Adjust right selection to previous onset"
+msgid "Add label at selection"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:210
-msgid "Right-to-On"
+#: toolbars/TranscriptionToolBar.cpp:211
+msgid "Calibrate voicekey"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:212
-msgid "Select region of sound around cursor"
+#: toolbars/TranscriptionToolBar.cpp:215
+msgid "Adjust Sensitivity"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:213
-msgid "Select-Sound"
+#: toolbars/TranscriptionToolBar.cpp:220
+#: toolbars/TranscriptionToolBar.cpp:276
+msgid "Sensitivity"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:215
-msgid "Select region of silence around cursor"
+#: toolbars/TranscriptionToolBar.cpp:225
+msgid "Energy"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:216
-msgid "Select-Silence"
+#: toolbars/TranscriptionToolBar.cpp:226
+msgid "Sign Changes (Low Threshold)"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:218
-msgid "Automatically make labels from words"
+#: toolbars/TranscriptionToolBar.cpp:227
+msgid "Sign Changes (High Threshold)"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:219
-msgid "Make Labels"
+#: toolbars/TranscriptionToolBar.cpp:228
+msgid "Direction Changes (Low Threshold)"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:221
-msgid "Add label at selection"
+#: toolbars/TranscriptionToolBar.cpp:229
+msgid "Direction Changes (High Threshold)"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:222
-msgid "Add Label"
+#: toolbars/TranscriptionToolBar.cpp:237
+#: toolbars/TranscriptionToolBar.cpp:277
+msgid "Key type"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:224
-msgid "Calibrate voicekey"
+#: toolbars/TranscriptionToolBar.cpp:262
+msgid "Play-at-speed"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:225
-msgid "Calibrate"
+#: toolbars/TranscriptionToolBar.cpp:266
+msgid "Left-to-On"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:229
-msgid "Adjust Sensitivity"
+#: toolbars/TranscriptionToolBar.cpp:267
+msgid "Right-to-Off"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:234
-msgid "Sensitivity"
+#: toolbars/TranscriptionToolBar.cpp:268
+msgid "Left-to-Off"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:239
-msgid "Energy"
+#: toolbars/TranscriptionToolBar.cpp:269
+msgid "Right-to-On"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:240
-msgid "Sign Changes (Low Threshold)"
+#: toolbars/TranscriptionToolBar.cpp:270
+msgid "Select-Sound"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:241
-msgid "Sign Changes (High Threshold)"
+#: toolbars/TranscriptionToolBar.cpp:271
+msgid "Select-Silence"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:242
-msgid "Direction Changes (Low Threshold)"
+#: toolbars/TranscriptionToolBar.cpp:272
+msgid "Make Labels"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:243
-msgid "Direction Changes (High Threshold)"
+#: toolbars/TranscriptionToolBar.cpp:273
+msgid "Add Label"
msgstr ""
-#: toolbars/TranscriptionToolBar.cpp:251
-msgid "Key type"
+#: toolbars/TranscriptionToolBar.cpp:274
+msgid "Calibrate"
msgstr ""
-#: ../src/widgets/AButton.cpp:181
+#: widgets/AButton.cpp:300
msgid " (disabled)"
msgstr " (etkisiz)"
-#: widgets/AButton.cpp:443
+#: widgets/AButton.cpp:458
msgid "Press"
msgstr ""
-#: widgets/AButton.cpp:522
+#: widgets/AButton.cpp:537
msgid "Button"
msgstr ""
-#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
#. i18n-hint: One-letter abbreviation for Left, in VU Meter
-#: ../src/widgets/ASlider.cpp:329 ../src/widgets/Meter.cpp:165
+#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
+#: widgets/ASlider.cpp:642
+#: widgets/Meter.cpp:241
msgid "L"
msgstr "L"
-#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
#. i18n-hint: One-letter abbreviation for Right, in VU Meter
-#: ../src/widgets/ASlider.cpp:332 ../src/widgets/Meter.cpp:167
+#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
+#: widgets/ASlider.cpp:645
+#: widgets/Meter.cpp:243
msgid "R"
msgstr "R"
-#: ../src/widgets/ASlider.cpp:484
+#: widgets/ASlider.cpp:708
msgid "Center"
msgstr "Merkez"
-#: ../src/widgets/ASlider.cpp:488
+#: widgets/ASlider.cpp:712
msgid "Left"
msgstr "Sol"
-#: ../src/widgets/ASlider.cpp:491
+#: widgets/ASlider.cpp:715
msgid "Right"
msgstr "SaÄ"
-#: widgets/ErrorDialog.cpp:73 widgets/ErrorDialog.cpp:97
+#: widgets/ErrorDialog.cpp:96
msgid "Help"
msgstr ""
-#: widgets/ErrorDialog.cpp:137
+#: widgets/ErrorDialog.cpp:166
msgid "<"
msgstr ""
-#: widgets/ErrorDialog.cpp:138
+#: widgets/ErrorDialog.cpp:167
msgid ">"
msgstr ""
-#: widgets/ErrorDialog.cpp:142
+#: widgets/ErrorDialog.cpp:171
msgid "Forwards"
msgstr ""
-#: widgets/ErrorDialog.cpp:143
+#: widgets/ErrorDialog.cpp:172
msgid "Backwards"
msgstr ""
-#: widgets/ErrorDialog.cpp:190
+#: widgets/ErrorDialog.cpp:275
msgid "Help on the Internet"
msgstr ""
-#: widgets/Grabber.cpp:61
+#: widgets/Grabber.cpp:62
msgid "Grabber"
msgstr ""
-#: widgets/Grid.cpp:616
-#, c-format
-msgid "%d rows, %d columns"
-msgstr ""
-
-#: widgets/Grid.cpp:622 widgets/Grid.cpp:749
-#, c-format
-msgid "Row %d"
-msgstr ""
-
-#: widgets/Grid.cpp:764
+#: widgets/Grid.cpp:723
msgid "Empty"
msgstr ""
-#: widgets/Meter.cpp:336
+#: widgets/Meter.cpp:385
msgid "Enable Meter"
msgstr ""
-#: widgets/Meter.cpp:338
+#: widgets/Meter.cpp:387
msgid "Disable Meter"
msgstr ""
-#: widgets/Meter.cpp:341
+#: widgets/Meter.cpp:390
msgid "Stop Monitoring"
msgstr ""
-#: widgets/Meter.cpp:343
+#: widgets/Meter.cpp:392
msgid "Start Monitoring"
msgstr ""
-#: ../src/widgets/Meter.cpp:285
+#: widgets/Meter.cpp:396
msgid "Horizontal Stereo"
msgstr "Yatay İkili"
-#: ../src/widgets/Meter.cpp:286
+#: widgets/Meter.cpp:397
msgid "Vertical Stereo"
msgstr "Dikey Ãiftli"
-#: widgets/Meter.cpp:365
+#: widgets/Meter.cpp:414
msgid "Preferences..."
msgstr ""
-#: widgets/Meter.cpp:876
+#: widgets/Meter.cpp:864
msgid "Mix Volume"
msgstr ""
-#: widgets/Meter.cpp:1037
-msgid "This determines how often the meter is refreshed.\n"
+#: widgets/Meter.cpp:1133
+msgid ""
+"This determines how often the meter is refreshed.\n"
"If you have a slower PC you may want to select a\n"
"lower refresh rate (30 per second or lower), so that\n"
"audio qualtiy is not affected by the meter display."
msgstr ""
-#: widgets/Meter.cpp:1038
+#: widgets/Meter.cpp:1134
msgid "Meter refresh rate per second [1-100]: "
msgstr ""
-#: widgets/Meter.cpp:1063
+#: widgets/Meter.cpp:1135
msgid "Meter Preferences"
msgstr ""
@@ -8492,41 +9490,57 @@ msgstr ""
msgid "Please select an action"
msgstr ""
-#: widgets/ProgressDialog.cpp:97
+#: widgets/ProgressDialog.cpp:1067
msgid "Elapsed Time:"
msgstr ""
-#: widgets/ProgressDialog.cpp:117
+#: widgets/ProgressDialog.cpp:1087
msgid "Remaining Time:"
msgstr ""
-#: widgets/ProgressDialog.cpp:134
+#: widgets/ProgressDialog.cpp:1115
msgid "Cancel"
msgstr ""
-#: widgets/Ruler.cpp:1110 widgets/Ruler.cpp:1111
+#: widgets/Ruler.cpp:1588
+#: widgets/Ruler.cpp:1589
msgid "Vertical Ruler"
msgstr ""
-#: widgets/TimeTextCtrl.cpp:198
+#. i18n-hint: Format string for displaying time in seconds. Change the comma
+#. * in the middle to the 1000s separator for your locale, and the 'seconds'
+#. * on the end to the word for seconds. Don't change the numbers.
+#: widgets/TimeTextCtrl.cpp:269
msgid "01000,01000 seconds"
msgstr ""
-#: widgets/TimeTextCtrl.cpp:200
+#. i18n-hint: Format string for displaying time in hours, minutes and
+#. * seconds. Change the 'h' to the abbreviation for hours, 'm' to the
+#. * abbreviation for minutes and 's' to the abbreviation for seconds. Don't
+#. * change the numbers unless there aren't 60 seconds in a minute in your
+#. * locale
+#: widgets/TimeTextCtrl.cpp:278
msgid "0100 h 060 m 060 s"
msgstr ""
-#: widgets/TimeTextCtrl.cpp:201
+#. i18n-hint: Name of time display format that shows time in days, hours,
+#. * minutes and seconds
+#: widgets/TimeTextCtrl.cpp:281
msgid "dd:hh:mm:ss"
msgstr ""
-#: widgets/TimeTextCtrl.cpp:202
+#. i18n-hint: Format string for displaying time in days, hours, minutes and
+#. * seconds. Change the 'days' to the word for days, 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes and 's' to the
+#. * abbreviation for seconds. Don't change the numbers unless there aren't
+#. * 24 hours in a day in your locale
+#: widgets/TimeTextCtrl.cpp:287
msgid "0100 days 024 h 060 m 060 s"
msgstr ""
#. i18n-hint: Name of time display format that shows time in hours,
-#. * minutes, seconds and hundreths of a second (1/100 second)
-#: widgets/TimeTextCtrl.cpp:288
+#. * minutes, seconds and hundredths of a second (1/100 second)
+#: widgets/TimeTextCtrl.cpp:290
msgid "hh:mm:ss + hundredths"
msgstr ""
@@ -8535,119 +9549,186 @@ msgstr ""
#. * 'm' to the abbreviation for minutes and 's' to the abbreviation for seconds (the
#. * hundredths are shown as decimal seconds) . Don't change the numbers
#. * unless there aren't 60 minutes in an hour in your locale
-#: widgets/TimeTextCtrl.cpp:294
+#: widgets/TimeTextCtrl.cpp:296
msgid "0100 h 060 m 060.0100 s"
msgstr ""
-#: widgets/TimeTextCtrl.cpp:203
+#. i18n-hint: Name of time display format that shows time in hours,
+#. * minutes, seconds and milliseconds (1/1000 second)
+#: widgets/TimeTextCtrl.cpp:299
msgid "hh:mm:ss + milliseconds"
msgstr ""
-#: widgets/TimeTextCtrl.cpp:204
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and milliseconds. Change the 'h' to the abbreviation for hours, 'm' to the
+#. * abbreviation for minutes and 's' to the abbreviation for seconds (the
+#. * milliseconds are shown as decimal seconds) . Don't change the numbers
+#. * unless there aren't 60 minutes in an hour in your locale
+#: widgets/TimeTextCtrl.cpp:305
msgid "0100 h 060 m 060.01000 s"
msgstr ""
-#: widgets/TimeTextCtrl.cpp:205
+#. i18n-hint: Name of time display format that shows time in hours,
+#. * minutes, seconds and samples (at the current project sample rate)
+#: widgets/TimeTextCtrl.cpp:308
msgid "hh:mm:ss + samples"
msgstr ""
-#: widgets/TimeTextCtrl.cpp:206
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and samples. Change the 'h' to the abbreviation for hours, 'm' to the
+#. * abbreviation for minutes, 's' to the abbreviation for seconds and
+#. * translate samples . Don't change the numbers
+#. * unless there aren't 60 seconds in a minute in your locale
+#: widgets/TimeTextCtrl.cpp:314
msgid "0100 h 060 m 060 s+.# samples"
msgstr ""
-#: widgets/TimeTextCtrl.cpp:207
+#. i18n-hint: Name of time display format that shows time in samples (at the
+#. * current project sample rate)
+#: widgets/TimeTextCtrl.cpp:317
msgid "samples"
msgstr ""
-#: widgets/TimeTextCtrl.cpp:208
+#. i18n-hint: Format string for displaying time in samples (lots of samples).
+#. * Change the ',' to the 1000s separator for your locale, and translate
+#. * samples. If 1000s aren't a base multiple for your number system, then you
+#. * can change the numbers to an appropriate one, and put a 0 on the front
+#: widgets/TimeTextCtrl.cpp:322
msgid "01000,01000,01000 samples|#"
msgstr ""
-#: widgets/TimeTextCtrl.cpp:209
+#. i18n-hint: Name of time display format that shows time in hours, minutes,
+#. * seconds and frames at 24 frames per second (commonly used for films)
+#: widgets/TimeTextCtrl.cpp:325
msgid "hh:mm:ss + film frames (24 fps)"
msgstr ""
-#: widgets/TimeTextCtrl.cpp:210
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and frames at 24 frames per second. Change the 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
+#. * for seconds and translate 'frames' . Don't change the numbers
+#. * unless there aren't 60 seconds in a minute in your locale
+#: widgets/TimeTextCtrl.cpp:331
msgid "0100 h 060 m 060 s+.24 frames"
msgstr ""
-#: widgets/TimeTextCtrl.cpp:211
+#. i18n-hint: Name of time display format that shows time in frames (lots of
+#. * frames) at 24 frames per second (commonly used for films)
+#: widgets/TimeTextCtrl.cpp:334
msgid "film frames (24 fps)"
msgstr ""
-#: widgets/TimeTextCtrl.cpp:212
+#. i18n-hint: Format string for displaying time in frames at 24 frames per
+#. * second. Translate 'frames' and leave the rest alone
+#: widgets/TimeTextCtrl.cpp:337
msgid "01000,01000 frames|24"
msgstr ""
-#: widgets/TimeTextCtrl.cpp:213
+#. i18n-hint: Name of time display format that shows time in hours, minutes,
+#. * seconds and frames at NTSC TV drop-frame rate (used for American /
+#. * Japanese TV, and very odd)
+#: widgets/TimeTextCtrl.cpp:341
msgid "hh:mm:ss + NTSC drop frames"
msgstr ""
-#: widgets/TimeTextCtrl.cpp:214
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and frames with NTSC drop frames. Change the 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
+#. * for seconds and translate 'frames'. Leave the |N alone, it's important!
+#: widgets/TimeTextCtrl.cpp:346
msgid "0100 h 060 m 060 s+.30 frames|N"
msgstr ""
-#: widgets/TimeTextCtrl.cpp:215
+#. i18n-hint: Name of time display format that shows time in hours, minutes,
+#. * seconds and frames at NTSC TV non-drop-frame rate (used for American /
+#. * Japanese TV, and doesn't quite match wall time
+#: widgets/TimeTextCtrl.cpp:350
msgid "hh:mm:ss + NTSC non-drop frames"
msgstr ""
-#: widgets/TimeTextCtrl.cpp:216
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and frames with NTSC drop frames. Change the 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
+#. * for seconds and translate 'frames'. Leave the | .999000999 alone,
+#. * the whole things really is slightly off-speed!
+#: widgets/TimeTextCtrl.cpp:356
msgid "0100 h 060 m 060 s+.030 frames| .999000999"
msgstr ""
-#: widgets/TimeTextCtrl.cpp:217
+#. i18n-hint: Name of time display format that shows time in frames at NTSC
+#. * TV frame rate (used for American / Japanese TV
+#: widgets/TimeTextCtrl.cpp:359
msgid "NTSC frames"
msgstr ""
-#: widgets/TimeTextCtrl.cpp:218
+#. i18n-hint: Format string for displaying time in frames with NTSC frames.
+#. * Translate 'frames' and leave the rest alone. That really is the frame
+#. * rate!
+#: widgets/TimeTextCtrl.cpp:363
msgid "01000,01000 frames|29.97002997"
msgstr ""
-#: widgets/TimeTextCtrl.cpp:219
+#. i18n-hint: Name of time display format that shows time in hours, minutes,
+#. * seconds and frames at PAL TV frame rate (used for European TV)
+#: widgets/TimeTextCtrl.cpp:366
msgid "hh:mm:ss + PAL frames (25 fps)"
msgstr ""
-#: widgets/TimeTextCtrl.cpp:220
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and frames with PAL TV frames. Change the 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
+#. * for seconds and translate 'frames'. Nice simple time code!
+#: widgets/TimeTextCtrl.cpp:371
msgid "0100 h 060 m 060 s+.25 frames"
msgstr ""
-#: widgets/TimeTextCtrl.cpp:221
+#. i18n-hint: Name of time display format that shows time in frames at PAL
+#. * TV frame rate (used for European TV
+#: widgets/TimeTextCtrl.cpp:374
msgid "PAL frames (25 fps)"
msgstr ""
-#: widgets/TimeTextCtrl.cpp:222
+#. i18n-hint: Format string for displaying time in frames with NTSC frames.
+#. * Translate 'frames' and leave the rest alone.
+#: widgets/TimeTextCtrl.cpp:377
msgid "01000,01000 frames|25"
msgstr ""
-#: widgets/TimeTextCtrl.cpp:223
+#. i18n-hint: Name of time display format that shows time in hours, minutes,
+#. * seconds and frames at CD Audio frame rate (75 frames per second)
+#: widgets/TimeTextCtrl.cpp:380
msgid "hh:mm:ss + CDDA frames (75 fps)"
msgstr ""
-#: widgets/TimeTextCtrl.cpp:224
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and frames with CD Audio frames. Change the 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
+#. * for seconds and translate 'frames'.
+#: widgets/TimeTextCtrl.cpp:385
msgid "0100 h 060 m 060 s+.75 frames"
msgstr ""
-#: widgets/TimeTextCtrl.cpp:225
+#. i18n-hint: Name of time display format that shows time in frames at CD
+#. * Audio frame rate (75 frames per second)
+#: widgets/TimeTextCtrl.cpp:388
msgid "CDDA frames (75 fps)"
msgstr ""
-#: widgets/TimeTextCtrl.cpp:226
+#. i18n-hint: Format string for displaying time in frames with CD Audio
+#. * frames. Translate 'frames' and leave the rest alone
+#: widgets/TimeTextCtrl.cpp:391
msgid "01000,01000 frames|75"
msgstr ""
-#: widgets/TimeTextCtrl.cpp:363
+#: widgets/TimeTextCtrl.cpp:470
msgid "Use right mouse button or context key to change format"
msgstr ""
-#: widgets/TimeTextCtrl.cpp:1376
-msgid "Time Control"
-msgstr ""
-
-#: ../src/widgets/Warning.cpp:53
+#: widgets/Warning.cpp:61
msgid "Don't show this warning again"
msgstr "Bu uyarıyı tekrar gösterme"
-#: ../src/xml/XMLFileReader.cpp:45
+#: xml/XMLFileReader.cpp:49
#, c-format
msgid "Could not open file: \"%s\""
msgstr "Dosya açılamadı: \"%s\""
@@ -8662,3 +9743,18 @@ msgstr ""
msgid "Could not load file: \"%s\""
msgstr ""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
+
+#~ msgid "Audio I/O"
+#~ msgstr "Ses I/O"
+
diff --git a/locale/uk.po b/locale/uk.po
index b24ea72..ac0b62b 100644
--- a/locale/uk.po
+++ b/locale/uk.po
@@ -9,17 +9,18 @@ msgid ""
msgstr ""
"Project-Id-Version: uk\n"
"Report-Msgid-Bugs-To: audacity-translation at lists.sourceforge.net\n"
-"POT-Creation-Date: 2009-01-20 20:43+0000\n"
-"PO-Revision-Date: 2009-01-21 22:17+0200\n"
+"POT-Creation-Date: 2009-05-31 20:42-0500\n"
+"PO-Revision-Date: 2009-06-30 16:38+0300\n"
"Last-Translator: Yuri Chornoivan <yurchor at ukr.net>\n"
"Language-Team: Ukrainian <translation at linux.org.ua>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.11.4\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+"X-Generator: Lokalize 0.3\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
+"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
-#: AboutDialog.cpp:143 AudacityApp.cpp:790 Menus.cpp:957
+#: AboutDialog.cpp:143 AudacityApp.cpp:806 Menus.cpp:954
msgid "&About Audacity..."
msgstr "&ÐÑо Audacity..."
@@ -36,33 +37,41 @@ msgid ""
"later, Mac OS X, Linux and other Unix-like operating systems. Older versions "
"of Audacity are available for Mac OS 9."
msgstr ""
-"Audacity â вÑлÑна пÑогÑама, напиÑана гÑÑÐ¿Ð¾Ñ <a href=\"http://"
-"audacity.sourceforge.net/community/developers\">ÑозÑобникÑв</a> з ÑÑÑого ÑвÑÑÑ. Ðа Ð½Ð°Ð´Ð°Ð½Ð½Ñ Ð¿ÑоекÑÑ Ð¼Ð°Ð¹Ð´Ð°Ð½Ñика Ð´Ð»Ñ ÑозвиÑÐºÑ Ð¼Ð¸ маÑмо бÑÑи вдÑÑÐ½Ñ <a href=\"http://sourceforge.net\">SourceForge."
-"net</a>. Audacity доÑÑÑпна на плаÑÑоÑмаÑ
Windows 98 Ñа новÑÑе, Mac "
-"OS X, Linux, Ñа ÑнÑиÑ
Unix-ÑиÑÑемаÑ
. ÐÑлÑÑ ÑÐ°Ð½Ð½Ñ Ð²ÐµÑÑÑÑ Ð´Ð¾ÑÑÑÐ¿Ð½Ñ Ð½Ð° "
-"плаÑÑоÑÐ¼Ñ Mac OS 9."
+"Audacity â вÑлÑна пÑогÑама, напиÑана гÑÑÐ¿Ð¾Ñ <a href=\"http://audacity."
+"sourceforge.net/community/developers\">ÑозÑобникÑв</a> з ÑÑÑого ÑвÑÑÑ. Ðа "
+"Ð½Ð°Ð´Ð°Ð½Ð½Ñ Ð¿ÑоекÑÑ Ð¼Ð°Ð¹Ð´Ð°Ð½Ñика Ð´Ð»Ñ ÑозвиÑÐºÑ Ð¼Ð¸ маÑмо бÑÑи вдÑÑÐ½Ñ <a href="
+"\"http://sourceforge.net\">SourceForge.net</a>. Audacity доÑÑÑпна на "
+"плаÑÑоÑмаÑ
Windows 98 Ñа новÑÑе, Mac OS X, Linux, Ñа ÑнÑиÑ
Unix-ÑиÑÑемаÑ
. "
+"ÐÑлÑÑ ÑÐ°Ð½Ð½Ñ Ð²ÐµÑÑÑÑ Ð´Ð¾ÑÑÑÐ¿Ð½Ñ Ð½Ð° плаÑÑоÑÐ¼Ñ Mac OS 9."
#: AboutDialog.cpp:179
msgid ""
"This is a Beta version of the program. It may contain bugs and unfinished "
"features. We depend on your feedback: please send bug reports and feature "
-"requests to <b>feedback at audacityteam.org</b>. For help using Audacity, "
-"please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+"requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> "
+"address. For help using Audacity, please visit our <a href=\"http://"
+"audacityteam.org/forum/\">Forum</a>."
msgstr ""
-"Це - ÑеÑÑова веÑÑÑÑ Ð¿ÑогÑами. Ðона може мÑÑÑиÑи помилки Ñа неÑеалÑÐ·Ð¾Ð²Ð°Ð½Ñ "
+"Це â ÑеÑÑова веÑÑÑÑ Ð¿ÑогÑами. Ðона може мÑÑÑиÑи помилки Ñа неÑеалÑÐ·Ð¾Ð²Ð°Ð½Ñ "
"ÑÑнкÑÑоналÑнÑÑÑÑ. ÐÑодÑкÑивнÑÑÑÑ Ð½Ð°ÑÐ¾Ñ ÑобоÑи залежиÑÑ Ð²Ñд ваÑиÑ
вÑдгÑкÑв, "
"ÑÐ¾Ð¼Ñ Ð²Ð°Ð¼ ÑлÑд надÑилаÑи ваÑÑ Ð¿Ð¾Ð²ÑÐ´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð¿Ñо ÑÑÑ Ð·Ð½Ð°Ð¹Ð´ÐµÐ½Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ¸ Ñа "
-"запиÑи на ÑеалÑзаÑÑÑ ÑÑнкÑÑоналÑноÑÑÑ Ð·Ð° адÑеÑÐ¾Ñ <b>feedback at audacityteam.org</b>. ÐÑдÑÑÐ¸Ð¼ÐºÑ Ñ ÐºÐ¾ÑиÑÑÑÐ²Ð°Ð½Ð½Ñ Audacity можна знайÑи на наÑÐ¾Ð¼Ñ <a href=\"http://audacityteam.org/forum/\">ÑоÑÑмÑ</a>."
+"запиÑи на ÑеалÑзаÑÑÑ ÑÑнкÑÑоналÑноÑÑÑ Ð·Ð° адÑеÑÐ¾Ñ <a "
+"href=\"mailto:feedback at audacityteam.org\">Ð´Ð»Ñ Ð²ÑдгÑкÑв</a>. ÐÑдÑÑÐ¸Ð¼ÐºÑ Ñ "
+"коÑиÑÑÑÐ²Ð°Ð½Ð½Ñ Audacity можна знайÑи на наÑÐ¾Ð¼Ñ <a href=\"http://audacityteam."
+"org/forum/\">ÑоÑÑмÑ</a>."
#: AboutDialog.cpp:182
msgid ""
"This is a stable, completed release of the program. However, if you find a "
-"bug or have a suggestion for us, please write to <b>feedback at audacityteam."
-"org</b>. For help using Audacity, please visit our <a href=\"http://"
-"audacityteam.org/forum/\">Forum</a>."
+"bug or have a suggestion for us, please write to our <a href=\"mailto:"
+"feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, "
+"please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
-"Це - ÑÑабÑлÑна, завеÑÑена веÑÑÑÑ Audacity. ÐÑоÑе, ÑкÑо ви "
-"знайдеÑе Ð¿Ð¾Ð¼Ð¸Ð»ÐºÑ Ð°Ð±Ð¾ маÑÑе пÑопозиÑÑÑ Ð½Ð°Ð´ÑÑлÑÑÑ Ð²Ð°Ñе повÑÐ´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð·Ð° адÑеÑÐ¾Ñ <b>feedback at audacityteam.org</b>. ÐÑдÑÑÐ¸Ð¼ÐºÑ Ñ ÐºÐ¾ÑиÑÑÑÐ²Ð°Ð½Ð½Ñ Audacity можна знайÑи на наÑÐ¾Ð¼Ñ <a href=\"http://audacityteam.org/forum/\">ÑоÑÑмÑ</a>."
+"Це â ÑÑабÑлÑна, завеÑÑена веÑÑÑÑ Audacity. ÐÑоÑе, ÑкÑо ви "
+"знайдеÑе Ð¿Ð¾Ð¼Ð¸Ð»ÐºÑ Ð°Ð±Ð¾ маÑÑе пÑопозиÑÑÑ Ð½Ð°Ð´ÑÑлÑÑÑ Ð²Ð°Ñе повÑÐ´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð·Ð° адÑеÑÐ¾Ñ "
+"<a href=\"mailto:feedback at audacityteam.org\">Ð´Ð»Ñ Ð²ÑдгÑкÑв</a>. ÐÑдÑÑÐ¸Ð¼ÐºÑ Ñ "
+"коÑиÑÑÑÐ²Ð°Ð½Ð½Ñ Audacity можна знайÑи на наÑÐ¾Ð¼Ñ <a href=\"http://audacityteam."
+"org/forum/\">ÑоÑÑмÑ</a>."
#. i18n-hint: The translation of "translator_credits" will appear
#. in the credits in the About Audacity window. Use this to add
@@ -117,19 +126,20 @@ msgstr "ÐÑÐ¾Ð±Ð»Ð¸Ð²Ñ Ð¿Ð¾Ð´Ñки:"
#: AboutDialog.cpp:250
msgid ""
-"<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. "
+"<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. "
"<br>The name <b>Audacity®</b> is a registered trademark of Dominic "
"Mazzoni."
msgstr ""
-"ÐвÑоÑÑÑÐºÑ Ð¿Ñава на пÑогÑÐ°Ð¼Ñ <b>Audacity®</b> належаÑÑ © 1999-2008 ÐÐ¾Ð¼Ð°Ð½Ð´Ñ Audacity. "
-"<br>Ðазва пÑодÑкÑÑ <b>Audacity®</b> Ñ Ð·Ð°ÑеÑÑÑÑÐ¾Ð²Ð°Ð½Ð¾Ñ ÑоÑговелÑÐ½Ð¾Ñ Ð¼Ð°ÑÐºÐ¾Ñ ÐомÑнÑка ÐаÑÑÐ¾Ð½Ñ (Dominic Mazzoni)."
+"ÐвÑоÑÑÑÐºÑ Ð¿Ñава на пÑогÑÐ°Ð¼Ñ <b>Audacity®</b> належаÑÑ © 1999-2009 "
+"ÐÐ¾Ð¼Ð°Ð½Ð´Ñ Audacity. <br>Ðазва пÑодÑкÑÑ <b>Audacity®</b> Ñ Ð·Ð°ÑеÑÑÑÑÐ¾Ð²Ð°Ð½Ð¾Ñ "
+"ÑоÑговелÑÐ½Ð¾Ñ Ð¼Ð°ÑÐºÐ¾Ñ ÐомÑнÑка ÐаÑÑÐ¾Ð½Ñ (Dominic Mazzoni)."
#: AboutDialog.cpp:258
msgid "Audacity"
msgstr "Audacity"
#. i18n-hint: Information about when audacity was compiled
-#: AboutDialog.cpp:304 AboutDialog.cpp:317 AboutDialog.cpp:473
+#: AboutDialog.cpp:304 AboutDialog.cpp:317 AboutDialog.cpp:468
msgid "Build Information"
msgstr "ÐнÑоÑмаÑÑÑ Ð¿Ñо випÑÑк"
@@ -180,68 +190,68 @@ msgstr "ÐÐ¾Ð»Ð¾Ð²Ð½Ñ Ð±ÑблÑоÑеки"
msgid "Sample rate conversion"
msgstr "ÐмÑна ÑаÑÑоÑи диÑкÑеÑизаÑÑÑ"
-#: AboutDialog.cpp:402 AboutDialog.cpp:405
+#: AboutDialog.cpp:401
msgid "Audio playback and recording"
msgstr "ÐÑдÑвоÑÐµÐ½Ð½Ñ Ð°ÑдÑо Ñа запиÑ"
-#: AboutDialog.cpp:418
+#: AboutDialog.cpp:413
msgid "Features"
msgstr "ÐожливоÑÑÑ"
-#: AboutDialog.cpp:422 AboutDialog.cpp:425 AboutDialog.cpp:430
-#: AboutDialog.cpp:433 AboutDialog.cpp:438 AboutDialog.cpp:441
-#: AboutDialog.cpp:446 AboutDialog.cpp:449
+#: AboutDialog.cpp:417 AboutDialog.cpp:420 AboutDialog.cpp:425
+#: AboutDialog.cpp:428 AboutDialog.cpp:433 AboutDialog.cpp:436
+#: AboutDialog.cpp:441 AboutDialog.cpp:444
msgid "Plug-in support"
msgstr "ÐÑдÑÑимка додаÑкÑв"
-#: AboutDialog.cpp:454 AboutDialog.cpp:457
+#: AboutDialog.cpp:449 AboutDialog.cpp:452
msgid "Sound card mixer support"
msgstr "ÐÑдÑÑимка мÑкÑÑÐ²Ð°Ð½Ð½Ñ Ð·Ð²ÑÐºÐ¾Ð²Ð¾Ñ ÐºÐ°ÑÑоÑ"
-#: AboutDialog.cpp:462 AboutDialog.cpp:465
+#: AboutDialog.cpp:457 AboutDialog.cpp:460
msgid "Pitch and Tempo Change support"
msgstr "ÐÑдÑÑимка змÑни кÑÐ¾ÐºÑ Ñ ÑемпÑ"
-#: AboutDialog.cpp:477
+#: AboutDialog.cpp:472
msgid "Program build date: "
msgstr "ÐаÑа компÑлÑÑÑÑ Ð¿ÑогÑами: "
-#: AboutDialog.cpp:480 AboutDialog.cpp:482
+#: AboutDialog.cpp:475 AboutDialog.cpp:477
msgid "Build type:"
msgstr "Тип випÑÑкÑ:"
-#: AboutDialog.cpp:480
+#: AboutDialog.cpp:475
msgid "Debug build"
msgstr "ÐипÑÑк Ð´Ð»Ñ Ð¿ÐµÑевÑÑки"
-#: AboutDialog.cpp:482
+#: AboutDialog.cpp:477
msgid "Release build"
msgstr "ÐÑÑаÑоÑна веÑÑÑÑ"
#. i18n-hint: The directory audacity is installed into (on *nix systems)
-#: AboutDialog.cpp:487
+#: AboutDialog.cpp:482
msgid "Installation Prefix: "
msgstr "ШлÑÑ
вÑÑановленнÑ: "
-#: AboutDialog.cpp:491
+#: AboutDialog.cpp:486
msgid "Settings folder: "
msgstr "Тека з паÑамеÑÑами: "
-#: AboutDialog.cpp:506
+#: AboutDialog.cpp:501
msgid "GPL License"
msgstr "ÐÑÑензÑÑ GPL"
-#: AudacityApp.cpp:495 Project.cpp:1890
+#: AudacityApp.cpp:507 Project.cpp:2002
#, c-format
msgid "%s is already open in another window."
msgstr "%s вже вÑдкÑиÑо Ñ ÑнÑÐ¾Ð¼Ñ Ð²ÑкнÑ."
-#: AudacityApp.cpp:497 Project.cpp:1892 Project.cpp:1997 Project.cpp:2141
-#: Project.cpp:2278
+#: AudacityApp.cpp:509 Project.cpp:2004 Project.cpp:2124 Project.cpp:2272
+#: Project.cpp:2404
msgid "Error opening project"
msgstr "Ðомилка пÑд ÑÐ°Ñ Ð²ÑдкÑиÑÑÑ Ñайла пÑоекÑÑ"
-#: AudacityApp.cpp:529
+#: AudacityApp.cpp:535
#, c-format
msgid ""
"%s does not exist and could not be opened.\n"
@@ -252,34 +262,45 @@ msgstr ""
"\n"
"Ðого вилÑÑено Ð·Ñ ÑпиÑÐºÑ ÑÑÑоÑÑÑ."
-#: AudacityApp.cpp:631
+#: AudacityApp.cpp:642
msgid "Master Gain Control"
msgstr "ÐагалÑний ÑегÑлÑÑÐ¾Ñ Ð³ÑÑноÑÑÑ"
-#: AudacityApp.cpp:632
+#: AudacityApp.cpp:643
msgid "Input Meter"
msgstr "ÐндикаÑÐ¾Ñ ÑÑÐ²Ð½Ñ Ð½Ð° вÑ
одÑ"
-#: AudacityApp.cpp:633
+#: AudacityApp.cpp:644
msgid "Output Meter"
msgstr "ÐндикаÑÐ¾Ñ ÑÑÐ²Ð½Ñ Ð½Ð° виÑ
одÑ"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#: AudacityApp.cpp:792
-msgid "&Preferences...\tCtrl+,"
-msgstr "&ÐаÑамеÑÑи...\tCtrl+,"
+#: AudacityApp.cpp:803 Menus.cpp:198
+msgid "&New"
+msgstr "&СÑвоÑиÑи"
+
+#: AudacityApp.cpp:804 Menus.cpp:202
+msgid "&Open..."
+msgstr "&ÐÑдкÑиÑи..."
+
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr "ÐÑдкÑиÑи &недавнÑ..."
-#: AudacityApp.cpp:875 AudacityApp.cpp:952
+#: AudacityApp.cpp:807
+msgid "&Preferences..."
+msgstr "&ÐаÑамеÑÑи..."
+
+#: AudacityApp.cpp:898 AudacityApp.cpp:975
#, c-format
msgid "Using block size of %ld\n"
msgstr "ÐикоÑиÑÑовÑÑÑÑÑÑ Ð±Ð»Ð¾ÐºÐ¸ ÑозмÑÑом %ld\n"
-#: AudacityApp.cpp:897 AudacityApp.cpp:967
+#: AudacityApp.cpp:920 AudacityApp.cpp:990
#, c-format
msgid "Unknown command line option: %s\n"
msgstr "ÐевÑдомий паÑамеÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð½Ð¾Ð³Ð¾ ÑÑдка: %s\n"
-#: AudacityApp.cpp:1101
+#: AudacityApp.cpp:1144
msgid ""
"Audacity could not find a place to store temporary files.\n"
"Please enter an appropriate directory in the preferences dialog."
@@ -287,7 +308,7 @@ msgstr ""
"ÐÑогÑÐ°Ð¼Ñ Ð½Ðµ вдаÑÑÑÑÑ Ð·Ð½Ð°Ð¹Ñи каÑалог Ð´Ð»Ñ Ð·Ð±ÐµÑÑÐ³Ð°Ð½Ð½Ñ ÑимÑаÑовиÑ
ÑайлÑв.\n"
"ÐкажÑÑÑ Ð²ÑдповÑдний каÑалог Ñ Ð´ÑÐ°Ð»Ð¾Ð³Ð¾Ð²Ð¾Ð¼Ñ Ð²ÑÐºÐ½Ñ ÑподобанÑ."
-#: AudacityApp.cpp:1107
+#: AudacityApp.cpp:1150
msgid ""
"Audacity is now going to exit. Please launch Audacity again to use the new "
"temporary directory."
@@ -295,7 +316,7 @@ msgstr ""
"Audacity гоÑÑÑÑÑÑÑ Ð´Ð¾ завеÑÑеннÑ. ÐовÑоÑно заванÑажÑе пÑогÑÐ°Ð¼Ñ Ð´Ð»Ñ "
"викоÑиÑÑÐ°Ð½Ð½Ñ Ð½Ð¾Ð²Ð¾Ñ Ñеки ÑимÑаÑовиÑ
ÑайлÑв."
-#: AudacityApp.cpp:1139
+#: AudacityApp.cpp:1182
msgid ""
"Running two copies of Audacity simultaneously may cause\n"
"data loss or cause your system to crash.\n"
@@ -305,7 +326,7 @@ msgstr ""
"до вÑÑаÑи даниÑ
або кÑаÑ
Ñ ÑиÑÑеми.\n"
"\n"
-#: AudacityApp.cpp:1146
+#: AudacityApp.cpp:1189
msgid ""
"Audacity was not able to lock the temporary files directory.\n"
"This folder may be in use by another copy of Audacity.\n"
@@ -313,19 +334,19 @@ msgstr ""
"Audacity не може заблокÑваÑи ÑÐµÐºÑ Ð· ÑимÑаÑовими Ñайлами.\n"
"Ðожливо ÑÑ ÑÐµÐºÑ Ð²Ð¶Ðµ викоÑиÑÑовÑÑ ÑнÑа копÑÑ Audacity.\n"
-#: AudacityApp.cpp:1148
+#: AudacityApp.cpp:1191
msgid "Do you still want to start Audacity?"
msgstr "ÐоÑÑ Ð±Ð°Ð¶Ð°ÑÑе запÑÑÑиÑи Audacity?"
-#: AudacityApp.cpp:1150
+#: AudacityApp.cpp:1193
msgid "Error locking temporary folder"
msgstr "Ðомилка пÑи блокÑÐ²Ð°Ð½Ð½Ñ Ñеки ÑимÑаÑовиÑ
ÑалÑв"
-#: AudacityApp.cpp:1188
+#: AudacityApp.cpp:1231
msgid "The system has detected that another copy of Audacity is running.\n"
msgstr "СиÑÑема визнаÑила, Ñо вже запÑÑено ÑнÑÑ ÐºÐ¾Ð¿ÑÑ Audacity.\n"
-#: AudacityApp.cpp:1190
+#: AudacityApp.cpp:1233
msgid ""
"Use the New or Open commands in the currently running Audacity\n"
"process to open multiple projects simultaneously.\n"
@@ -334,29 +355,29 @@ msgstr ""
"команди \"СÑвоÑиÑи\" або \"ÐÑдкÑиÑи\" Ñ ÐºÐ¾Ð¿ÑÑ\n"
"Audacity, Ñо заÑаз виконÑÑÑÑÑÑ.\n"
-#: AudacityApp.cpp:1191
+#: AudacityApp.cpp:1234
msgid "Audacity is already running"
msgstr "Audacity вже запÑÑено"
-#: AudacityApp.cpp:1208
+#: AudacityApp.cpp:1251
msgid "Command-line options supported:"
msgstr "ÐаÑамеÑÑи командного ÑÑдка, Ñо пÑдÑÑимÑÑÑÑÑÑ:"
#. i18n-hint: '-help' is the option and needs to stay in
#. * English. This displays a list of available options
-#: AudacityApp.cpp:1211
+#: AudacityApp.cpp:1254
msgid "\t-help (this message)"
msgstr "\t-help (Ñе повÑдомленнÑ)"
#. i18n-hint '-version' needs to stay in English.
-#: AudacityApp.cpp:1213
+#: AudacityApp.cpp:1256
msgid "\t-version (display Audacity version)"
msgstr "\t-version (показÑÑ Ð²ÐµÑÑÑÑ Audacity)"
#. i18n-hint '-test' is the option and needs to stay in
#. * English. This runs a set of automatic tests on audacity
#. * itself
-#: AudacityApp.cpp:1217
+#: AudacityApp.cpp:1260
msgid "\t-test (run self diagnostics)"
msgstr "\t-test (запÑÑк ÑамодÑагноÑÑики)"
@@ -364,19 +385,19 @@ msgstr "\t-test (запÑÑк ÑамодÑагноÑÑики)"
#. * English. 'nnn' is any integer number. This controls the
#. * size pieces that audacity uses when writing files to the
#. * disk
-#: AudacityApp.cpp:1222
+#: AudacityApp.cpp:1265
msgid "\t-blocksize nnn (set max disk block size in bytes)"
msgstr "\t-blocksize nnn (вÑÑановиÑи макÑималÑний ÑозмÑÑ Ð±Ð»Ð¾ÐºÑ Ð´Ð¸ÑÐºÑ Ñ Ð±Ð°Ð¹ÑаÑ
)"
-#: AudacityApp.cpp:1223
+#: AudacityApp.cpp:1266
msgid ""
"In addition, specify the name of an audio file or Audacity project to open "
"it."
msgstr ""
-"ÐкÑÑм Ñого, вкажÑÑÑ Ð½Ð°Ð·Ð²Ñ Ð°ÑдÑо-Ñайла або пÑоекÑÑ Audacity, Ñкий ÑлÑд "
+"ÐкÑÑм Ñого, вкажÑÑÑ Ð½Ð°Ð·Ð²Ñ Ð°ÑдÑоÑайла або пÑоекÑÑ Audacity, Ñкий ÑлÑд "
"вÑдкÑиÑи"
-#: AudacityApp.cpp:1500
+#: AudacityApp.cpp:1557
msgid ""
"Audacity project (.AUP) files are not currently \n"
"associated with Audacity. \n"
@@ -388,15 +409,15 @@ msgstr ""
"\n"
"Ðов'ÑзаÑи ÑÑ
, Ñоб вони вÑдкÑивалиÑÑ Ð¿Ð¾Ð´Ð²Ñйним клаÑаннÑм?"
-#: AudacityApp.cpp:1501
+#: AudacityApp.cpp:1558
msgid "Audacity Project Files"
msgstr "Файли пÑоекÑÑв Audacity"
-#: AudioIO.cpp:254
+#: AudioIO.cpp:253
msgid "Could not find any audio devices.\n"
msgstr "Ðеможливо знайÑи жодного звÑкового пÑиÑÑÑоÑ.\n"
-#: AudioIO.cpp:255
+#: AudioIO.cpp:254
msgid ""
"You will not be able to play or record audio.\n"
"\n"
@@ -404,31 +425,33 @@ msgstr ""
"Ðи не зможеÑе вÑдÑвоÑÑваÑи Ñа запиÑÑваÑи звÑк.\n"
"\n"
-#: AudioIO.cpp:258
+#: AudioIO.cpp:257
msgid "Error: "
msgstr "Ðомилка: "
-#: AudioIO.cpp:261
+#: AudioIO.cpp:260
msgid "Error Initializing Audio"
msgstr "Ðомилка пÑи ÑнÑÑÑалÑзаÑÑÑ Ð·Ð²ÑкÑ"
-#: AudioIO.cpp:1375
-msgid "Latency problem"
-msgstr "ÐÑоблема Ñз заÑÑимкоÑ"
-
-#: AudioIO.cpp:1375
+#: AudioIO.cpp:1225
msgid ""
-"Latency setting has caused the recorded audio to be hidden before zero.\n"
+"Latency Correction setting has caused the recorded audio to be hidden before "
+"zero.\n"
"Audacity has brought it back to start at zero.\n"
"You may have to use the Time Shift Tool (<---> or F5) to drag the track to "
"the right place."
msgstr ""
-"ÐнаÑÐµÐ½Ð½Ñ Ð·Ð°ÑÑимки пÑизводиÑÑ Ð´Ð¾ пÑиÑ
овÑÐ²Ð°Ð½Ð½Ñ Ð·Ð°Ð¿Ð¸Ñаного звÑкового ÑÑагменÑÑ "
+"ÐнаÑÐµÐ½Ð½Ñ Ð²Ð¸Ð¿ÑÐ°Ð²Ð»ÐµÐ½Ð½Ñ Ð·Ð°ÑÑимки пÑизводиÑÑ Ð´Ð¾ пÑиÑ
овÑÐ²Ð°Ð½Ð½Ñ Ð·Ð°Ð¿Ð¸Ñаного "
+"звÑкового ÑÑагменÑÑ "
"пеÑед нÑлем.\n"
"Audacity повеÑнÑла поÑаÑок звÑкового ÑÑагменÑÑ Ð½Ð° нÑлÑ.\n"
"Ðожливо, ÑлÑд ÑкоÑиÑÑаÑиÑÑ ÑнÑÑÑÑменÑом \"ЧаÑовий зÑÑв\" (<â-> або F5), Ð´Ð»Ñ "
"пеÑемÑÑÐµÐ½Ð½Ñ Ð´Ð¾ÑÑжки Ñ Ð¿ÑавилÑне положеннÑ."
+#: AudioIO.cpp:1225
+msgid "Latency problem"
+msgstr "ÐÑоблема Ñз заÑÑимкоÑ"
+
#: AutoRecovery.cpp:54
msgid "Automatic Crash Recovery"
msgstr "ÐвÑомаÑиÑне вÑÐ´Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿ÑÑÐ»Ñ ÐºÑаÑ
Ñ"
@@ -450,7 +473,8 @@ msgid "Name"
msgstr "Ðазва"
#: AutoRecovery.cpp:84
-msgid "Recovering a project will not change any files on disk before you save it."
+msgid ""
+"Recovering a project will not change any files on disk before you save it."
msgstr ""
"ÐÑÐ´Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿ÑоекÑÑ Ð½Ðµ пÑизведе до змÑни ÑайлÑв на диÑÐºÑ Ð´Ð¾ÐºÐ¸ ви ÑÑ
не "
"збеÑежеÑе."
@@ -483,14 +507,13 @@ msgstr "ÐÑдÑвеÑджÑÑÑе?"
msgid "Could not enumerate files in auto save directory"
msgstr "Ðеможливо ÑклаÑÑи ÑпиÑок ÑайлÑв Ñ ÑеÑÑ Ð°Ð²ÑозбеÑеженнÑ"
-#: AutoRecovery.cpp:147 AutoRecovery.cpp:184 Menus.cpp:3095 Menus.cpp:3107
-#: Menus.cpp:5232 Project.cpp:2100 Project.cpp:3662 Project.cpp:3741
-#: TrackPanel.cpp:6424 WaveTrack.cpp:598 WaveTrack.cpp:617 WaveTrack.cpp:1058
-#: WaveTrack.cpp:1077 WaveTrack.cpp:2087 effects/Contrast.cpp:127
-#: effects/Contrast.cpp:137 effects/Effect.cpp:513 export/ExportFFmpeg.cpp:614
-#: export/ExportMP2.cpp:231 prefs/DirectoriesPrefs.cpp:189
-#: prefs/KeyConfigPrefs.cpp:260 toolbars/ControlToolBar.cpp:542
-#: toolbars/ControlToolBar.cpp:871
+#: AutoRecovery.cpp:147 AutoRecovery.cpp:184 Menus.cpp:3230 Menus.cpp:3242
+#: Menus.cpp:5311 Project.cpp:2231 Project.cpp:3851 Project.cpp:3937
+#: TrackPanel.cpp:6503 WaveTrack.cpp:979 WaveTrack.cpp:998 WaveTrack.cpp:2024
+#: effects/Contrast.cpp:144 effects/Contrast.cpp:154 effects/Effect.cpp:566
+#: export/ExportFFmpeg.cpp:655 export/ExportMP2.cpp:231
+#: prefs/DirectoriesPrefs.cpp:195 prefs/KeyConfigPrefs.cpp:335
+#: toolbars/ControlToolBar.cpp:575 toolbars/ControlToolBar.cpp:907
msgid "Error"
msgstr "Ðомилка"
@@ -500,7 +523,6 @@ msgid "Select Command"
msgstr "ÐибÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¸"
#: BatchCommandDialog.cpp:82 BatchProcessDialog.cpp:454
-#: prefs/KeyConfigPrefs.cpp:158
msgid "&Command"
msgstr "&Ðоманда"
@@ -516,24 +538,24 @@ msgstr "&ÐаÑамеÑÑи"
msgid "C&hoose command"
msgstr "&ÐбÑаÑи командÑ"
-#: BatchCommands.cpp:456
+#: BatchCommands.cpp:455
msgid "Stereo to Mono Effect not found"
msgstr "ÐÑÐµÐºÑ Ð¿ÐµÑеÑвоÑÐµÐ½Ð½Ñ ÑÑеÑео Ñ Ð¼Ð¾Ð½Ð¾ не знайдено"
-#: BatchCommands.cpp:476
+#: BatchCommands.cpp:475
msgid "Ogg Vorbis support is not included in this build of Audacity"
msgstr "ÐÑдÑÑÐ¸Ð¼ÐºÑ Ogg Vorbis не ÑвÑмкнено Ñ ÑÑй збÑÑÑÑ Audacity"
-#: BatchCommands.cpp:488
+#: BatchCommands.cpp:487
msgid "FLAC support is not included in this build of Audacity"
msgstr "ÐÑд ÑÐ°Ñ Ð·Ð±Ð¸ÑÐ°Ð½Ð½Ñ ÑÑÑÑ Ð²ÐµÑÑÑÑ Audacity пÑдÑÑÐ¸Ð¼ÐºÑ FLAC не бÑло ÑвÑмкнено"
-#: BatchCommands.cpp:492
+#: BatchCommands.cpp:491
#, c-format
msgid "Command %s not implemented yet"
msgstr "Ðоманда %s Ñе не ÑеалÑзована"
-#: BatchCommands.cpp:508
+#: BatchCommands.cpp:507
#, c-format
msgid ""
"Could not set parameters of effect %s\n"
@@ -542,12 +564,12 @@ msgstr ""
"Ðеможливо вÑÑановиÑи паÑамеÑÑи еÑекÑÑ %s\n"
" Ñ Ð·Ð½Ð°ÑÐµÐ½Ð½Ñ %s."
-#: BatchCommands.cpp:561
+#: BatchCommands.cpp:560
#, c-format
msgid "Your batch command of %s was not recognised."
msgstr "ÐаÑÑ Ð¿Ð°ÐºÐµÑÐ½Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ %s не бÑло ÑозпÑзнано."
-#: BatchCommands.cpp:652
+#: BatchCommands.cpp:651
#, c-format
msgid ""
"Apply %s with parameter(s)\n"
@@ -558,11 +580,11 @@ msgstr ""
"\n"
"%s"
-#: BatchCommands.cpp:653 BatchCommands.cpp:658
+#: BatchCommands.cpp:652 BatchCommands.cpp:657
msgid "Test Mode"
msgstr "ТеÑÑовий Ñежим"
-#: BatchCommands.cpp:657
+#: BatchCommands.cpp:656
#, c-format
msgid "Apply %s"
msgstr "ÐаÑÑоÑÑваÑи %s"
@@ -594,8 +616,7 @@ msgstr "ÐаÑÑоÑÑваÑи до &ÑайлÑв..."
#: BatchProcessDialog.cpp:108 BatchProcessDialog.cpp:247 UploadDialog.cpp:180
#: effects/AvcCompressor.cpp:732 effects/ChangeLength.cpp:183
-#: effects/SpikeCleaner.cpp:188 effects/VST/VSTEffect.cpp:453
-#: effects/audiounits/AudioUnitEffect.cpp:887
+#: effects/SpikeCleaner.cpp:188 effects/audiounits/AudioUnitEffect.cpp:861
msgid "&Cancel"
msgstr "&СкаÑÑваÑи"
@@ -624,7 +645,9 @@ msgstr "ÐбеÑÑÑÑ Ñайл(и) Ð´Ð»Ñ Ð¿Ð°ÐºÐµÑÐ½Ð¾Ñ Ð¾Ð±Ñобки..."
msgid ""
"Vocal files (*.wav;*.mp3)|*.wav;*.mp3|WAV files (*.wav)|*.wav|MP3 files (*."
"mp3)|*.mp3"
-msgstr "ÐвÑÐºÐ¾Ð²Ñ Ñайли (*.wav;*.mp3)|*.wav;*.mp3|Файли WAV (*.wav)|*.wav|Файли MP3 (*.mp3)|*.mp3"
+msgstr ""
+"ÐвÑÐºÐ¾Ð²Ñ Ñайли (*.wav;*.mp3)|*.wav;*.mp3|Файли WAV (*.wav)|*.wav|Файли MP3 (*."
+"mp3)|*.mp3"
#: BatchProcessDialog.cpp:210
msgid ""
@@ -653,12 +676,12 @@ msgstr "РедагÑваÑи ланÑÑжки"
msgid "&Chains"
msgstr "&ÐанÑÑги"
-#: BatchProcessDialog.cpp:435 Tags.cpp:813
+#: BatchProcessDialog.cpp:435 Tags.cpp:825
msgid "&Add"
msgstr "&ÐодаÑи"
-#: BatchProcessDialog.cpp:436 LabelDialog.cpp:128 Tags.cpp:814
-#: TrackPanel.cpp:4181
+#: BatchProcessDialog.cpp:436 LabelDialog.cpp:128 Tags.cpp:826
+#: TrackPanel.cpp:4271
msgid "&Remove"
msgstr "&ÐилÑÑиÑи"
@@ -672,8 +695,8 @@ msgstr "Ðан&ÑÑжок (ÐÐ»Ñ ÑедагÑÐ²Ð°Ð½Ð½Ñ Ð´Ð²ÑÑÑ ÐºÐ»Ð°ÑнÑ
#. i18n-hint: This is the number of the command in the list
#: BatchProcessDialog.cpp:453
-msgid "No"
-msgstr "ÐемаÑ"
+msgid "Num"
+msgstr "â"
#: BatchProcessDialog.cpp:459
msgid "&Insert"
@@ -732,9 +755,9 @@ msgstr "ÐилÑÑÐµÐ½Ð½Ñ Ð·Ð°Ð»ÐµÐ¶Ð½Ð¾ÑÑей"
#: Dependencies.cpp:140
msgid "Copying audio data into project..."
-msgstr "ÐопÑÑÐ²Ð°Ð½Ð½Ñ Ð°ÑдÑо-даниÑ
до пÑоекÑÑ..."
+msgstr "ÐопÑÑÐ²Ð°Ð½Ð½Ñ Ð°ÑдÑоданиÑ
до пÑоекÑÑ..."
-#: Dependencies.cpp:223
+#: Dependencies.cpp:226
msgid ""
"Your project currently depends on the presence of other files.\n"
"Copy audio from the following files into your project to make it self-"
@@ -746,71 +769,72 @@ msgstr ""
"ÑамодоÑÑаÑноÑÑÑ?\n"
"Це поÑÑебÑваÑиме бÑлÑÑого пÑоÑÑоÑÑ Ð½Ð° диÑкÑ, але бÑде безпеÑнÑÑим."
-#: Dependencies.cpp:270
+#: Dependencies.cpp:273
msgid "Project depends on other audio files"
-msgstr "ÐÑÐ¾ÐµÐºÑ Ð·Ð°Ð»ÐµÐ¶Ð¸ÑÑ Ð²Ñд ÑнÑиÑ
аÑдÑо-ÑайлÑв"
+msgstr "ÐÑÐ¾ÐµÐºÑ Ð·Ð°Ð»ÐµÐ¶Ð¸ÑÑ Ð²Ñд ÑнÑиÑ
аÑдÑоÑайлÑв"
-#: Dependencies.cpp:291
+#: Dependencies.cpp:294
msgid "Project Dependencies"
msgstr "ÐалежноÑÑÑ Ð¿ÑоекÑÑ"
-#: Dependencies.cpp:294
+#: Dependencies.cpp:297
msgid "Audio file"
-msgstr "ÐÑдÑо-Ñайл"
+msgstr "ÐÑдÑоÑайл"
-#: Dependencies.cpp:296
+#: Dependencies.cpp:299
msgid "Disk space"
msgstr "ÐÑоÑÑÑÑ Ð½Ð° диÑкÑ"
-#: Dependencies.cpp:301
+#: Dependencies.cpp:304
msgid "Copy Selected Audio Into Project"
-msgstr "ÐопÑÑваÑи видÑÐ»ÐµÐ½Ñ Ð¾Ð±Ð»Ð°ÑÑÑ Ð°ÑдÑо до пÑоекÑÑ"
+msgstr "ÐопÑÑваÑи вибÑÐ°Ð½Ñ Ð¾Ð±Ð»Ð°ÑÑÑ Ð°ÑдÑо до пÑоекÑÑ"
-#: Dependencies.cpp:308 Dependencies.cpp:414
+#: Dependencies.cpp:311 Dependencies.cpp:417
msgid "Cancel Save"
msgstr "СкаÑÑваÑи збеÑеженнÑ"
-#: Dependencies.cpp:310
+#: Dependencies.cpp:313
msgid "Do Not Copy Any Audio"
msgstr "Ðе копÑÑваÑи нÑÑкого аÑдÑо"
-#: Dependencies.cpp:312
+#: Dependencies.cpp:315
msgid "Copy All Audio into Project (Safer)"
msgstr "ÐопÑÑваÑи вÑе аÑдÑо Ñ Ð¿ÑÐ¾ÐµÐºÑ (ÐезпеÑнÑÑе)"
-#: Dependencies.cpp:321 Dependencies.cpp:326
+#: Dependencies.cpp:324 Dependencies.cpp:329
msgid "Ask me"
msgstr "ÐеÑепиÑÑваÑи"
-#: Dependencies.cpp:322
+#: Dependencies.cpp:325
msgid "Always copy all audio (safest)"
msgstr "Ðавжди копÑÑваÑи вÑÑ Ð·Ð²ÑÐºÐ¾Ð²Ñ Ð´Ð°Ð½Ñ (найбезпеÑнÑÑе)"
-#: Dependencies.cpp:323
+#: Dependencies.cpp:326
msgid "Never copy any audio"
msgstr "ÐÑколи не копÑÑваÑи нÑÑкиÑ
звÑковиÑ
даниÑ
"
-#: Dependencies.cpp:325
+#: Dependencies.cpp:328
msgid "Whenever a project depends on other files:"
msgstr "Чи залежиÑÑ Ð¿ÑÐ¾ÐµÐºÑ Ð²Ñд ÑнÑиÑ
ÑайлÑв:"
-#: Dependencies.cpp:413
+#: Dependencies.cpp:416
msgid ""
"If you proceed, your project will not be saved to disk. Is this what you "
"want?"
msgstr "ЯкÑо пÑодовжиÑи, пÑÐ¾ÐµÐºÑ Ð½Ðµ бÑде збеÑежено на диÑк. Ðи ÑÑого Ñ
оÑеÑе?"
-#: Dependencies.cpp:453
+#: Dependencies.cpp:456
msgid ""
"Your project is self-contained; it does not depend on any external audio "
"files."
-msgstr "ÐÐ°Ñ Ð¿ÑÐ¾ÐµÐºÑ Ñ ÑамодоÑÑаÑнÑм Ñ Ð½Ðµ залежиÑÑ Ð²Ñд зовнÑÑнÑÑ
звÑковиÑ
ÑайлÑв."
+msgstr ""
+"ÐÐ°Ñ Ð¿ÑÐ¾ÐµÐºÑ Ñ ÑамодоÑÑаÑнÑм Ñ Ð½Ðµ залежиÑÑ Ð²Ñд зовнÑÑнÑÑ
звÑковиÑ
ÑайлÑв."
-#: Dependencies.cpp:454
+#: Dependencies.cpp:457
msgid "Dependency check"
msgstr "ÐеÑевÑÑка залежноÑÑÑ"
-#: DirManager.cpp:137
+#: DirManager.cpp:136
msgid ""
"Warning: there is very little free disk space left on this volume.\n"
"Please select another temporary directory in your preferences."
@@ -818,23 +842,23 @@ msgstr ""
"ÐопеÑедженнÑ: на Ð´Ð°Ð½Ð¾Ð¼Ñ ÑоздÑÐ»Ñ Ð»Ð¸ÑилоÑÑ Ð·Ð°Ð¼Ð°Ð»Ð¾ вÑлÑного пÑоÑÑоÑÑ. ÐибеÑÑÑÑ\n"
"ÑнÑÑ ÑÐµÐºÑ Ð´Ð»Ñ ÑимÑаÑовиÑ
ÑайлÑв Ñ Ð´ÑÐ°Ð»Ð¾Ð·Ñ Ð½Ð°Ð»Ð°ÑÑовÑÐ²Ð°Ð½Ð½Ñ Ð¿ÑогÑами."
-#: DirManager.cpp:223 DirManager.cpp:254 DirManager.cpp:337
+#: DirManager.cpp:221 DirManager.cpp:252 DirManager.cpp:335
msgid "Progress"
msgstr "ÐоÑÑÑп"
-#: DirManager.cpp:288
+#: DirManager.cpp:286
msgid "Cleaning up temporary files"
msgstr "ÐилÑÑÐµÐ½Ð½Ñ ÑимÑаÑовиÑ
ÑайлÑв"
-#: DirManager.cpp:338
+#: DirManager.cpp:336
msgid "Saving project data files"
msgstr "ÐбеÑÐµÐ¶ÐµÐ½Ð½Ñ ÑайлÑв даниÑ
пÑоекÑÑ"
-#: DirManager.cpp:410
+#: DirManager.cpp:408
msgid "Cleaning up cache directories"
msgstr "ÐÑиÑÐµÐ½Ð½Ñ Ñек кеÑÑваннÑ"
-#: DirManager.cpp:505
+#: DirManager.cpp:503
#, c-format
msgid ""
"Audacity found an orphaned blockfile %s! \n"
@@ -848,60 +872,60 @@ msgstr ""
#. i18n-hint: This is the pattern for filenames that are created
#. when a file needs to be backed up to a different name. For
#. example, mysong would become mysong-old1, mysong-old2, etc.
-#: DirManager.cpp:1094
+#: DirManager.cpp:1092
#, c-format
msgid "%s-old%d"
msgstr "%s-old%d"
-#: DirManager.cpp:1102
+#: DirManager.cpp:1100
msgid "Unable to open/create test file"
msgstr "Ðеможливо вÑдкÑиÑи або ÑÑвоÑиÑи ÑеÑÑовий Ñайл"
-#: DirManager.cpp:1111
+#: DirManager.cpp:1109
#, c-format
msgid "Unable to remove '%s'"
msgstr "Ðеможливо вилÑÑиÑи '%s'"
-#: DirManager.cpp:1116
+#: DirManager.cpp:1114
#, c-format
msgid "Renamed file: %s\n"
msgstr "ÐеÑейменовано Ñайл: %s\n"
-#: DirManager.cpp:1166
+#: DirManager.cpp:1164
#, c-format
msgid "Unable to rename '%s' to '%s'"
msgstr "Ðеможливо пеÑейменÑваÑи '%s' на '%s'"
-#: DirManager.cpp:1183
+#: DirManager.cpp:1181
#, c-format
msgid "Changed block %s to new alias name\n"
msgstr "Ðлок %s змÑнено за Ð½Ð¾Ð²Ð¾Ñ Ð½Ð°Ð·Ð²Ð¾Ñ\n"
-#: DirManager.cpp:1249 DirManager.cpp:1540
+#: DirManager.cpp:1247 DirManager.cpp:1538
msgid "Inspecting project file data..."
msgstr "ÐивÑÐµÐ½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ
Ñайла пÑоекÑÑ..."
-#: DirManager.cpp:1265
+#: DirManager.cpp:1263
#, c-format
msgid "Orphaned blockfile: (%s)"
msgstr "Ðезв'Ñзаний блок-Ñайл: (%s)"
-#: DirManager.cpp:1290
+#: DirManager.cpp:1288
#, c-format
msgid "Missing alias file: (%s)"
msgstr "ÐÑдÑÑÑнÑй Ñайл ÑкоÑоÑенÑ: (%s)"
-#: DirManager.cpp:1310
+#: DirManager.cpp:1308
#, c-format
msgid "Missing summary file: (%s.auf)"
msgstr "ÐÑдÑÑÑнÑй Ñайл ÑезÑме: (%s.auf)"
-#: DirManager.cpp:1330
+#: DirManager.cpp:1328
#, c-format
msgid "Missing data file: (%s.au)"
msgstr "ÐÑдÑÑÑнÑй Ñайл даниÑ
: (%s.au)"
-#: DirManager.cpp:1344
+#: DirManager.cpp:1342
msgid ""
"Project check found inconsistencies inspecting the loaded project data;\n"
"click 'Details' for a complete list of errors, or 'OK' to proceed to more "
@@ -911,7 +935,7 @@ msgstr ""
"пÑоекÑÑ; наÑиÑнÑÑÑ ÐºÐ½Ð¾Ð¿ÐºÑ 'ÐокладнÑÑе', Ñоб побаÑиÑи повний ÑпиÑок помилок,\n"
"або 'ÐаÑазд', Ñоб ознайомиÑиÑÑ Ð·Ñ ÑлÑÑ
ами ÑÑ
випÑавленнÑ."
-#: DirManager.cpp:1356
+#: DirManager.cpp:1354
#, c-format
msgid ""
"Project check found %d orphaned blockfile[s]. These files are\n"
@@ -922,25 +946,25 @@ msgstr ""
"не викоÑиÑÑовÑÑÑÑÑÑ Ñ Ð¹Ð¼Ð¾Ð²ÑÑно залиÑилиÑÑ Ð¿ÑÑÐ»Ñ ÐºÑаÑ
Ñ Ð°Ð±Ð¾ ÑнÑÐ¾Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ¸.\n"
"ÐÑ
ÑлÑд вилÑÑиÑи, Ñоб ÑникнÑÑи заÑмÑÑÐµÐ½Ð½Ñ Ð´Ð¸Ñка."
-#: DirManager.cpp:1361
+#: DirManager.cpp:1359
msgid "Delete orphaned files [safe and recommended]"
msgstr "ÐилÑÑиÑи незв'ÑÐ·Ð°Ð½Ñ Ñайли [безпеÑно Ñ Ñекомендовано]"
-#: DirManager.cpp:1362
+#: DirManager.cpp:1360
msgid "Continue without deleting; silently work around the extra files"
msgstr "ÐÑодовжиÑи без вилÑÑеннÑ, мовÑки ÑгноÑÑваÑи Ð·Ð°Ð¹Ð²Ñ Ñайли"
-#: DirManager.cpp:1363
+#: DirManager.cpp:1361
msgid "Close project immediately with no changes"
msgstr "ÐакÑиÑи пÑÐ¾ÐµÐºÑ Ð½ÐµÐ³Ð°Ð¹Ð½Ð¾ без змÑн"
-#: DirManager.cpp:1365 DirManager.cpp:1400 DirManager.cpp:1446
-#: DirManager.cpp:1488 export/Export.cpp:582 export/Export.cpp:603
-#: export/Export.cpp:622 widgets/Warning.cpp:55
+#: DirManager.cpp:1363 DirManager.cpp:1398 DirManager.cpp:1444
+#: DirManager.cpp:1486 export/Export.cpp:581 export/Export.cpp:602
+#: export/Export.cpp:621 widgets/Warning.cpp:53
msgid "Warning"
msgstr "ÐопеÑедженнÑ"
-#: DirManager.cpp:1391
+#: DirManager.cpp:1389
#, c-format
msgid ""
"Project check detected %d input file[s] being used in place\n"
@@ -957,19 +981,19 @@ msgstr ""
"ÑÑ
ÑиÑÐµÑ Ð»Ð¸Ñе на поÑоÑний ÑеанÑ, або закÑиÑи пÑÐ¾ÐµÐºÑ Ð·Ð°Ñаз\n"
"Ñа ÑпÑобÑваÑи вÑдновиÑи вÑдÑÑÑÐ½Ñ Ñайли вÑÑÑнÑ."
-#: DirManager.cpp:1396
+#: DirManager.cpp:1394
msgid "Replace missing data with silence [permanent upon save]"
msgstr "ÐамÑниÑи вÑдÑÑÑÐ½Ñ Ð´Ð°Ð½Ñ ÑиÑÐµÑ [незвоÑоÑне пÑÑÐ»Ñ Ð·Ð±ÐµÑеженнÑ]"
-#: DirManager.cpp:1397 DirManager.cpp:1485
+#: DirManager.cpp:1395 DirManager.cpp:1483
msgid "Temporarily replace missing data with silence [this session only]"
msgstr "ТимÑаÑово замÑниÑи вÑдÑÑÑÐ½Ñ Ð´Ð°Ð½Ñ ÑиÑÐµÑ [ÑÑлÑки Ð´Ð»Ñ ÑÑого ÑеанÑÑ]"
-#: DirManager.cpp:1398 DirManager.cpp:1444 DirManager.cpp:1486
+#: DirManager.cpp:1396 DirManager.cpp:1442 DirManager.cpp:1484
msgid "Close project immediately with no further changes"
msgstr "ÐакÑиÑи пÑÐ¾ÐµÐºÑ Ð½ÐµÐ³Ð°Ð¹Ð½Ð¾ без подалÑÑиÑ
змÑн"
-#: DirManager.cpp:1437
+#: DirManager.cpp:1435
#, c-format
msgid ""
"Project check detected %d missing summary file[s] (.auf).\n"
@@ -980,15 +1004,15 @@ msgstr ""
"Audacity може повнÑÑÑÑ Ð¿ÐµÑегенеÑÑваÑи Ñайли Ð·Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð· \n"
"аÑдÑо даниÑ
Ñ Ð¿ÑоекÑÑ."
-#: DirManager.cpp:1442
+#: DirManager.cpp:1440
msgid "Regenerate summary files [safe and recommended]"
msgstr "ÐеÑегенеÑÑваÑи Ñайли Ð·Ð²ÐµÐ´ÐµÐ½Ð½Ñ [безпеÑно Ñа Ñекомендовано]"
-#: DirManager.cpp:1443
+#: DirManager.cpp:1441
msgid "Fill in silence for missing display data [this session only]"
msgstr "ÐаповниÑи ÑиÑÐµÑ Ð²ÑдÑÑÑÐ½Ñ Ð´Ð°Ð½Ñ Ð²ÑдобÑÐ°Ð¶ÐµÐ½Ð½Ñ [ÑÑлÑки Ñ Ð¿Ð¾ÑоÑÐ½Ð¾Ð¼Ñ ÑеанÑÑ]"
-#: DirManager.cpp:1479
+#: DirManager.cpp:1477
#, c-format
msgid ""
"Project check detected %d missing audio data blockfile[s] (.au), \n"
@@ -1007,27 +1031,27 @@ msgstr ""
"або закÑиÑи пÑÐ¾ÐµÐºÑ Ð·Ð°Ñаз Ñ ÑпÑобÑваÑи вÑдновиÑи\n"
"вÑдÑÑÑÐ½Ñ Ð´Ð°Ð½Ñ Ð²ÑÑÑнÑ."
-#: DirManager.cpp:1484
+#: DirManager.cpp:1482
msgid "Replace missing data with silence [permanent immediately]"
msgstr "ÐамÑниÑи вÑдÑÑÑÐ½Ñ Ð´Ð°Ð½Ñ ÑиÑÐµÑ [негайне Ñ Ð½ÐµÐ·Ð²Ð¾ÑоÑне]"
-#: DirManager.cpp:1512
+#: DirManager.cpp:1510
msgid "Cleaning up unused directories in project data..."
msgstr "ÐÑиÑÐµÐ½Ð½Ñ Ñек, Ñо не викоÑиÑÑовÑÑÑÑÑÑ, Ñ Ð´Ð°Ð½Ð¸Ñ
пÑоекÑÑ..."
-#: DirManager.cpp:1583
+#: DirManager.cpp:1587
msgid "Caching audio"
msgstr "ÐеÑÑÐ²Ð°Ð½Ð½Ñ Ð°ÑдÑо"
-#: DirManager.cpp:1584
+#: DirManager.cpp:1588
msgid "Caching audio into memory..."
msgstr "ÐеÑÑÐ²Ð°Ð½Ð½Ñ Ð·Ð²ÑÐºÐ¾Ð²Ð¾Ñ ÑнÑоÑмаÑÑÑ Ñ Ð¿Ð°Ð¼'ÑÑÑ..."
-#: DirManager.cpp:1617
+#: DirManager.cpp:1623
msgid "Saving recorded audio"
msgstr "ÐбеÑÐµÐ¶ÐµÐ½Ð½Ñ Ð·Ð°Ð¿Ð¸Ñаного звÑкÑ"
-#: DirManager.cpp:1618
+#: DirManager.cpp:1624
msgid "Saving recorded audio to disk..."
msgstr "ÐбеÑÐµÐ¶ÐµÐ½Ð½Ñ Ð·Ð°Ð¿Ð¸Ñаного звÑÐºÑ Ð½Ð° диÑк..."
@@ -1035,237 +1059,301 @@ msgstr "ÐбеÑÐµÐ¶ÐµÐ½Ð½Ñ Ð·Ð°Ð¿Ð¸Ñаного звÑÐºÑ Ð½Ð° диÑк..."
msgid "Rectangular"
msgstr "Rectangular"
-#: FFmpeg.cpp:36
+#: FFmpeg.cpp:38
msgid "FFmpeg support not compiled in"
msgstr "ÐÑогÑÐ°Ð¼Ñ Ð·ÑбÑано без пÑдÑÑимки FFmpeg"
-#: FFmpeg.cpp:101
+#: FFmpeg.cpp:103
msgid ""
"FFmpeg was configured in Preferences and successfully loaded "
"before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
-"FFmpeg бÑло налаÑÑовано Ñ Â«Ð£Ð¿Ð¾Ð´Ð¾Ð±Ð°Ð½Ð½ÑÑ
», бÑблÑоÑека ÑÑпÑÑно заванÑажÑвалаÑÑ ÑанÑÑе, \n"
-"але ÑÑого ÑÐ°Ð·Ñ Audacity не вдалоÑÑ Ð·Ð°Ð²Ð°Ð½ÑажиÑи ÑÑ Ð¿Ñд ÑÐ°Ñ Ð·Ð°Ð¿ÑÑкÑ. \n"
+"FFmpeg бÑло налаÑÑовано Ñ Â«Ð£Ð¿Ð¾Ð´Ð¾Ð±Ð°Ð½Ð½ÑÑ
», бÑблÑоÑека ÑÑпÑÑно заванÑажÑвалаÑÑ "
+"ÑанÑÑе, \n"
+"але ÑÑого ÑÐ°Ð·Ñ Audacity не вдалоÑÑ Ð·Ð°Ð²Ð°Ð½ÑажиÑи ÑÑ Ð¿Ñд ÑÐ°Ñ Ð·Ð°Ð¿ÑÑкÑ. "
+" \n"
"\n"
-"Ðожливо, вам ÑлÑд повеÑнÑÑиÑÑ Ð´Ð¾ ÑÑоÑÑнки Â«Ð£Ð¿Ð¾Ð´Ð¾Ð±Ð°Ð½Ð½Ñ > ÐмпоÑÑ/ÐкÑпоÑÑ» Ñ Ð¿Ð¾Ð²ÑоÑно налаÑÑÑваÑи паÑамеÑÑи бÑблÑоÑеки."
+"Ðожливо, вам ÑлÑд повеÑнÑÑиÑÑ Ð´Ð¾ ÑÑоÑÑнки Â«Ð£Ð¿Ð¾Ð´Ð¾Ð±Ð°Ð½Ð½Ñ > ÐÑблÑоÑеки» Ñ "
+"повÑоÑно налаÑÑÑваÑи паÑамеÑÑи бÑблÑоÑеки."
-#: FFmpeg.cpp:104
+#: FFmpeg.cpp:106
msgid "FFmpeg startup failed"
msgstr "СпÑоба запÑÑÐºÑ FFmpeg бÑла невдалоÑ"
-#: FFmpeg.cpp:112
+#: FFmpeg.cpp:114
msgid "FFmpeg library not found"
msgstr "ÐÑблÑоÑеки FFmpeg не знайдено"
-#: FFmpeg.cpp:172
+#: FFmpeg.cpp:408
msgid "Locate FFmpeg"
msgstr "ÐказаÑи адÑеÑÑ FFmpeg"
-#: FFmpeg.cpp:192
+#: FFmpeg.cpp:428
#, c-format
msgid "Audacity needs the file %s to import and export audio via FFmpeg."
-msgstr "Audacity поÑÑебÑÑ Ñайла %s Ð´Ð»Ñ ÑмпоÑÑÑÐ²Ð°Ð½Ð½Ñ Ñа екÑпоÑÑÑÐ²Ð°Ð½Ð½Ñ Ð·Ð²ÑковиÑ
даниÑ
за Ð´Ð¾Ð¿Ð¾Ð¼Ð¾Ð³Ð¾Ñ FFmpeg."
+msgstr ""
+"Audacity поÑÑебÑÑ Ñайла %s Ð´Ð»Ñ ÑмпоÑÑÑÐ²Ð°Ð½Ð½Ñ Ñа екÑпоÑÑÑÐ²Ð°Ð½Ð½Ñ Ð·Ð²ÑковиÑ
даниÑ
"
+"за Ð´Ð¾Ð¿Ð¾Ð¼Ð¾Ð³Ð¾Ñ FFmpeg."
-#: FFmpeg.cpp:198 export/ExportMP3.cpp:562
+#: FFmpeg.cpp:434 export/ExportMP3.cpp:562
#, c-format
msgid "Location of %s:"
msgstr "РозÑаÑÑÐ²Ð°Ð½Ð½Ñ %s:"
-#: FFmpeg.cpp:207 export/ExportMP3.cpp:571
+#: FFmpeg.cpp:443 export/ExportMP3.cpp:571
#, c-format
msgid "To find %s, click here -->"
msgstr "Щоб знайÑи %s, клаÑнÑÑÑ ÑÑÑ â>"
-#: FFmpeg.cpp:213 export/ExportMP3.cpp:577
+#: FFmpeg.cpp:449 export/ExportMP3.cpp:577
msgid "Browse..."
msgstr "ÐглÑд..."
-#: FFmpeg.cpp:214
+#: FFmpeg.cpp:450
msgid "To get a free copy of FFmpeg, click here -->"
msgstr "Щоб оÑÑимаÑи вÑлÑÐ½Ñ ÐºÐ¾Ð¿ÑÑ FFmpeg, наÑиÑнÑÑÑ ÑÑÑ -->"
-#: FFmpeg.cpp:215 export/ExportMP3.cpp:579
+#: FFmpeg.cpp:451 export/ExportMP3.cpp:579
msgid "Download"
msgstr "ÐванÑажиÑи"
#. i18n-hint: It's asking for the location of a file, for
#. example, "Where is lame_enc.dll?" - you could translate
#. "Where would I find the file %s" instead if you want.
-#: FFmpeg.cpp:237 export/ExportMP3.cpp:601
+#: FFmpeg.cpp:473 export/ExportMP3.cpp:601
#, c-format
msgid "Where is %s?"
msgstr "Ðе знаÑ
одиÑÑÑÑ %s?"
-#: FFmpeg.cpp:407
+#: FFmpeg.cpp:643
msgid "Failed to find compatible FFmpeg libraries"
msgstr "СпÑоба знайÑи ÑÑмÑÑÐ½Ñ Ð²ÐµÑÑÑÑ Ð±ÑблÑоÑеки FFmpeg бÑла невдалоÑ"
-#: FFmpeg.h:87
+#: FFmpeg.h:97
msgid "FFmpeg not found"
msgstr "FFmpeg не знайдено"
-#: FFmpeg.h:101
+#: FFmpeg.h:111
msgid ""
-"Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences-"
-">Import/Export\n"
-"and tell Audacity where to look for the libraries."
+"Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
-"ÐÑогÑама Audacity зÑобила ÑпÑÐ¾Ð±Ñ Ð²Ð¸ÐºÐ¾ÑиÑÑаÑи бÑблÑоÑеки FFmpeg Ð´Ð»Ñ ÑмпоÑÑÑ Ð·Ð²Ñкового Ñайла,\n"
-"але бÑблÑоÑеки не бÑло знайдено.\n"
-"ЯкÑо ви бажаÑÑе ÑкоÑиÑÑаÑиÑÑ Ð¼Ð¾Ð¶Ð»Ð¸Ð²ÑÑÑÑ ÑмпоÑÑÑ Ð·Ð° Ð´Ð¾Ð¿Ð¾Ð¼Ð¾Ð³Ð¾Ñ FFmpeg, бÑÐ´Ñ Ð»Ð°Ñка, вÑдкÑийÑе ÑÑоÑÑÐ½ÐºÑ Â«Ð£Ð¿Ð¾Ð´Ð¾Ð±Ð°Ð½Ñ»->«ÐмпоÑÑ/ÐкÑпоÑÑ»\n"
-"Ñ Ð¿Ð¾Ð²ÑдомÑе Audacity, де ÑлÑд ÑÑкаÑи бÑблÑоÑеки."
+"ÐÑогÑама Audacity намагалаÑÑ ÑкоÑиÑÑаÑиÑÑ FFmpeg Ð´Ð»Ñ ÑмпоÑÑÑÐ²Ð°Ð½Ð½Ñ Ð·Ð²Ñкового "
+"Ñайла,\n"
+"але поÑÑÑбниÑ
бÑблÑоÑек не бÑло виÑвлено.\n"
+"\n"
+"Щоб маÑи Ð·Ð¼Ð¾Ð³Ñ ÐºÐ¾ÑиÑÑÑваÑиÑÑ ÑмпоÑÑом за Ð´Ð¾Ð¿Ð¾Ð¼Ð¾Ð³Ð¾Ñ FFmpeg, вÑдкÑийÑе "
+"ÑÑоÑÑÐ½ÐºÑ Â«Ð£Ð¿Ð¾Ð´Ð¾Ð±Ð°Ð½Ð½Ñ > ÐÑблÑоÑеки»,\n"
+"Ñоб званÑажиÑи або вказаÑи адÑеÑÑ Ð¿Ð¾ÑÑÑбниÑ
бÑблÑоÑек FFmpeg."
-#: FFmpeg.h:109
+#: FFmpeg.h:119
msgid "Do not show this warning again"
msgstr "ÐÑлÑÑе не показÑваÑи Ñе попеÑедженнÑ"
-#: FFmpeg.h:242
+#: FFmpeg.h:264
msgid ""
"Only avformat.dll|*avformat*.dll|Dynamically Linked Libraries (*.dll)|*.dll|"
"All Files (*.*)|*"
-msgstr "ÐиÑе avformat.dll|*avformat*.dll|ÐинамÑÑно зâÑÐ´Ð½Ð°Ð½Ñ Ð±ÑблÑоÑеки (*.dll)|*.dll|ÐÑÑ Ñайли (*.*)|*"
+msgstr ""
+"ÐиÑе avformat.dll|*avformat*.dll|ÐинамÑÑно зâÑÐ´Ð½Ð°Ð½Ñ Ð±ÑблÑоÑеки (*.dll)|*.dll|"
+"ÐÑÑ Ñайли (*.*)|*"
-#: FFmpeg.h:268
+#: FFmpeg.h:297
msgid "Dynamic Libraries (*.dylib)|*.dylib|All Files (*)|*"
msgstr "ÐинамÑÑÐ½Ñ Ð±ÑблÑоÑеки (*.dylib)|*.dylib|ÐÑÑ Ñайли (*)|*"
-#: FFmpeg.h:295
+#: FFmpeg.h:324
msgid ""
"Only libavformat.so|libavformat.so*|Dynamically Linked Libraries (*.so*)|*."
"so*|All Files (*)|*"
-msgstr "ÐиÑе libavformat.so|libavformat.so*|ÐинамÑÑно зâÑÐ´Ð½Ð°Ð½Ñ Ð±ÑблÑоÑеки (*.so*)|*.so*|ÐÑÑ Ñайли (*)|*"
+msgstr ""
+"ÐиÑе libavformat.so|libavformat.so*|ÐинамÑÑно зâÑÐ´Ð½Ð°Ð½Ñ Ð±ÑблÑоÑеки (*.so*)|*."
+"so*|ÐÑÑ Ñайли (*)|*"
-#: FreqWindow.cpp:103
+#: FreqWindow.cpp:107
msgid "Frequency Analysis"
msgstr "ЧаÑÑоÑний аналÑз"
-#: FreqWindow.cpp:139 TrackPanel.cpp:553 prefs/GUIPrefs.cpp:156
+#: FreqWindow.cpp:163 TrackPanel.cpp:612 prefs/TracksPrefs.cpp:58
msgid "Spectrum"
msgstr "СпекÑÑ"
-#: FreqWindow.cpp:140
+#: FreqWindow.cpp:164
msgid "Standard Autocorrelation"
msgstr "СÑандаÑÑна авÑокоÑелÑÑÑÑ"
-#: FreqWindow.cpp:141
+#: FreqWindow.cpp:165
msgid "Cuberoot Autocorrelation"
msgstr "СеÑеднÑоквадÑаÑиÑна коÑелÑÑÑÑ"
-#: FreqWindow.cpp:142
+#: FreqWindow.cpp:166
msgid "Enhanced Autocorrelation"
msgstr "РозÑиÑена авÑокоÑелÑÑÑÑ"
#. i18n-hint: This is a technical term, derived from the word
#. "spectrum". Do not translate it unless you are sure you
#. know the correct technical word in your language.
-#: FreqWindow.cpp:146
+#: FreqWindow.cpp:170
msgid "Cepstrum"
msgstr "Cepstrum"
-#: FreqWindow.cpp:150 FreqWindow.cpp:154
+#: FreqWindow.cpp:174 FreqWindow.cpp:178
msgid "Algorithm"
msgstr "ÐлгоÑиÑм"
-#: FreqWindow.cpp:169 FreqWindow.cpp:173 HistoryWindow.cpp:79
+#: FreqWindow.cpp:193 FreqWindow.cpp:197 HistoryWindow.cpp:79
msgid "Size"
msgstr "РозмÑÑ"
#. i18n-hint: This refers to a "window function", used in the
#. Frequency analyze dialog box.
-#: FreqWindow.cpp:183
+#: FreqWindow.cpp:207
msgid " window"
msgstr " вÑкно"
-#: FreqWindow.cpp:187 FreqWindow.cpp:191
+#: FreqWindow.cpp:211 FreqWindow.cpp:215
msgid "Function"
msgstr "ФÑнкÑÑÑ"
-#: FreqWindow.cpp:196
+#: FreqWindow.cpp:220
msgid "Linear frequency"
msgstr "ÐÑнÑйна ÑаÑÑоÑа"
-#: FreqWindow.cpp:197
+#: FreqWindow.cpp:221
msgid "Log frequency"
msgstr "ЧаÑÑоÑа запиÑÑ Ð¶ÑÑналÑ"
-#: FreqWindow.cpp:201 FreqWindow.cpp:205
+#: FreqWindow.cpp:225 FreqWindow.cpp:229
msgid "Axis"
msgstr "ÐÑÑÑ"
-#: FreqWindow.cpp:212 LabelDialog.cpp:130 Menus.cpp:242 Menus.cpp:277
+#: FreqWindow.cpp:236 LabelDialog.cpp:130 Menus.cpp:255
msgid "&Export..."
msgstr "&ÐкÑпоÑÑ..."
-#: FreqWindow.cpp:213 effects/Contrast.cpp:437 export/ExportCL.cpp:323
+#: FreqWindow.cpp:237 effects/Contrast.cpp:395 export/ExportCL.cpp:358
#: export/ExportMultiple.cpp:344
msgid "Export"
msgstr "ÐкÑпоÑÑ"
-#: FreqWindow.cpp:216 FreqWindow.cpp:217 widgets/ErrorDialog.cpp:161
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr "ÐеÑе&малÑваÑи"
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr "ÐеÑемалÑваÑи"
+
+#: FreqWindow.cpp:244 FreqWindow.cpp:245 widgets/ErrorDialog.cpp:190
msgid "Close"
msgstr "ÐакÑиÑи"
-#: FreqWindow.cpp:280 FreqWindow.cpp:410 effects/AutoDuck.cpp:489
-#: effects/AutoDuck.cpp:523 effects/AutoDuck.cpp:792
-#: effects/Compressor.cpp:352 effects/Compressor.cpp:360
-#: effects/Equalization.cpp:1123 effects/Equalization.cpp:1125
-#: effects/Equalization.cpp:1133 effects/Equalization.cpp:1199
-#: effects/Equalization.cpp:1408 effects/Equalization.cpp:1419
-#: effects/Normalize.cpp:368 widgets/Meter.cpp:413
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr "СÑÑки"
+
+#: FreqWindow.cpp:314 FreqWindow.cpp:516 effects/AutoDuck.cpp:503
+#: effects/AutoDuck.cpp:537 effects/AutoDuck.cpp:806
+#: effects/Compressor.cpp:360 effects/Compressor.cpp:368
+#: effects/Equalization.cpp:1145 effects/Equalization.cpp:1147
+#: effects/Equalization.cpp:1155 effects/Equalization.cpp:1221
+#: effects/Equalization.cpp:1437 effects/Equalization.cpp:1448
+#: effects/Normalize.cpp:372 widgets/Meter.cpp:413
msgid "dB"
msgstr "дÐ"
#. i18n-hint: This is the abbreviation for "Hertz", or
#. cycles per second.
-#: FreqWindow.cpp:295 FreqWindow.cpp:450 effects/Equalization.cpp:1164
-#: effects/Equalization.cpp:1195 import/ImportRaw.cpp:399
+#: FreqWindow.cpp:330 FreqWindow.cpp:556 effects/Equalization.cpp:1186
+#: effects/Equalization.cpp:1217 import/ImportRaw.cpp:409
msgid "Hz"
msgstr "ÐÑ"
-#: FreqWindow.cpp:394
+#: FreqWindow.cpp:422
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr ""
+"ÐÐ»Ñ Ð¿Ð¾Ð±Ñдови ÑпекÑÑогÑами, ÑÑÑ Ð²Ð¸Ð±ÑÐ°Ð½Ñ Ð´Ð¾ÑÑжки Ð¿Ð¾Ð²Ð¸Ð½Ð½Ñ Ð¼Ð°Ñи Ð¾Ð´Ð½Ð°ÐºÐ¾Ð²Ñ ÑаÑÑоÑÑ."
+
+#: FreqWindow.cpp:449
+#, c-format
+msgid ""
+"Too much audio was selected. Only the first %.1f seconds of audio will be "
+"analyzed."
+msgstr ""
+"ÐибÑано надÑо Ð²ÐµÐ»Ð¸ÐºÑ Ð·Ð²ÑÐºÐ¾Ð²Ñ Ð´ÑлÑнкÑ. ÐÑдÑÑÑ Ð¿ÑоаналÑÐ·Ð¾Ð²Ð°Ð½Ñ Ð»Ð¸Ñе пеÑÑÑ %.1f "
+"ÑекÑнд звÑкÑ."
+
+#: FreqWindow.cpp:500
msgid "Not enough data selected."
msgstr "ÐибÑано недоÑÑаÑнÑо даниÑ
."
-#: FreqWindow.cpp:458 effects/AutoDuck.cpp:794
+#: FreqWindow.cpp:564 effects/AutoDuck.cpp:808
msgid "s"
msgstr "Ñ"
-#: FreqWindow.cpp:787
+#: FreqWindow.cpp:898
#, c-format
msgid "Cursor: %d Hz (%s) = %d dB Peak: %d Hz (%s) = %.1f dB"
msgstr "ÐÑÑÑоÑ: %d ÐÑ (%s) = %d дРÐÑк: %d ÐÑ (%s) = %.1f дÐ"
-#: FreqWindow.cpp:796
+#: FreqWindow.cpp:907
#, c-format
-msgid "Cursor: %.4f sec (%d Hz) (%s) = %f, Peak: %.4f sec (%d Hz) (%s) = %.3f"
-msgstr "ÐÑÑÑоÑ: %.4f Ñек (%d ÐÑ) (%s) = %f, ÐÑк: %.4f Ñек (%d ÐÑ) (%s) = %.3f"
+msgid ""
+"Cursor: %.4f sec (%d Hz) (%s) = %f, Peak: %.4f sec (%d Hz) (%s) = %.3f"
+msgstr ""
+"ÐÑÑÑоÑ: %.4f Ñек (%d ÐÑ) (%s) = %f, ÐÑк: %.4f Ñек (%d ÐÑ) (%s) = %.3f"
-#: FreqWindow.cpp:1069
+#: FreqWindow.cpp:1198
msgid "spectrum.txt"
msgstr "spectrum.txt"
-#: FreqWindow.cpp:1071
+#: FreqWindow.cpp:1200
msgid "Export Spectral Data As:"
msgstr "ÐкÑпоÑÑÑваÑи ÑезÑлÑÑаÑи ÑпекÑÑалÑного аналÑÐ·Ñ Ñ Ñайл:"
-#: FreqWindow.cpp:1087 LabelDialog.cpp:603 Menus.cpp:2567 Project.cpp:2663
-#: Project.cpp:3714 effects/Contrast.cpp:567 prefs/KeyConfigPrefs.cpp:195
+#: FreqWindow.cpp:1216 LabelDialog.cpp:603 Menus.cpp:2615
+#: effects/Contrast.cpp:587 prefs/KeyConfigPrefs.cpp:280
msgid "Couldn't write to file: "
msgstr "Ðе вдаÑÑÑÑÑ Ð·Ð°Ð¿Ð¸ÑаÑи Ñ Ñайл:"
-#: FreqWindow.cpp:1092
+#: FreqWindow.cpp:1221
msgid "Frequency (Hz)\tLevel (dB)"
msgstr "ЧаÑÑоÑа (ÐÑ)\tÐ ÑÐ²ÐµÐ½Ñ (дÐ)"
-#: FreqWindow.cpp:1098
+#: FreqWindow.cpp:1227
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "ÐÑдÑÑÐ°Ð²Ð°Ð½Ð½Ñ (Ñек)\tЧаÑÑоÑа (ÐÑ)\tÐ ÑвенÑ"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr "GStreamer %s: %s"
+
+#: GStreamerLoader.cpp:212
+msgid ""
+"GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and "
+"re-configure it."
+msgstr ""
+"GStreamer бÑло налаÑÑовано Ñ Â«Ð£Ð¿Ð¾Ð´Ð¾Ð±Ð°Ð½Ð½ÑÑ
», бÑблÑоÑека ÑÑпÑÑно "
+"заванÑажÑвалаÑÑ ÑанÑÑе,\n"
+" але ÑÑого ÑÐ°Ð·Ñ Audacity не "
+"вдалоÑÑ Ð·Ð°Ð²Ð°Ð½ÑажиÑи ÑÑ Ð¿Ñд ÑÐ°Ñ Ð·Ð°Ð¿ÑÑкÑ.\n"
+"Ðожливо, вам ÑлÑд повеÑнÑÑиÑÑ Ð´Ð¾ ÑÑоÑÑнки Â«Ð£Ð¿Ð¾Ð´Ð¾Ð±Ð°Ð½Ð½Ñ > ÐÑблÑоÑеки» Ñ "
+"повÑоÑно налаÑÑÑваÑи паÑамеÑÑи бÑблÑоÑеки."
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr "СпÑоба запÑÑÐºÑ GStreamer бÑла невдалоÑ"
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr "ÐеÑейÑи до [[welcome|ÐÑÑалÑного вÑкна]]"
@@ -1300,7 +1388,7 @@ msgstr "РедагÑÐ²Ð°Ð½Ð½Ñ Ñ Ð¿Ð¾Ð·Ð½Ð°ÑÐµÐ½Ñ ÑÑÑим менÑ"
#: HelpText.cpp:121
msgid "Exporting an Audio File"
-msgstr "ÐкÑпоÑÑ Ð°ÑдÑо-Ñайла"
+msgstr "ÐкÑпоÑÑ Ð°ÑдÑоÑайла"
#: HelpText.cpp:125
msgid "Saving an Audacity Project"
@@ -1336,7 +1424,7 @@ msgstr ""
"ÐÑзнаÑиÑÑ Ñк:<ul><li>[[play|вÑдÑвоÑÑваÑи]] ÑÑнÑÑÑий звÑковий Ñайл.<li>"
"[[record|запиÑаÑи]] Ð²Ð°Ñ Ð³Ð¾Ð»Ð¾Ñ, плаÑÑÐ²ÐºÑ Ð°Ð±Ð¾ магнÑÑоÑÑÑÑÑкÑ.<li>[[edit|"
"ÑедагÑваÑи]] звÑки <li>[[save|збеÑегÑи або вÑдкÑиÑи пÑÐ¾ÐµÐºÑ Audacity]] <li>"
-"[[export|екÑпоÑÑÑваÑи]] звÑк до Ñайла MP3 або ÑнÑого аÑдÑо-Ñайла, або "
+"[[export|екÑпоÑÑÑваÑи]] звÑк до Ñайла MP3 або ÑнÑого аÑдÑоÑайла, або "
"[[burncd|запиÑаÑи звÑк на ÐÐ]] </ul></p><p>"
#: HelpText.cpp:159
@@ -1371,7 +1459,7 @@ msgid ""
"<<</b> and <b>>>|</b> buttons can be used to skip to the start "
"or end of the track respectively. </p><br><br>"
msgstr ""
-"<p><b>ÐÑдкÑÐ¸Ð²Ð°Ð½Ð½Ñ Ð°ÑдÑо-ÑайлÑв:</b> Ðи можеÑе або пеÑеÑÑгнÑÑи Ñайли до вÑкна "
+"<p><b>ÐÑдкÑÐ¸Ð²Ð°Ð½Ð½Ñ Ð°ÑдÑоÑайлÑв:</b> Ðи можеÑе або пеÑеÑÑгнÑÑи Ñайли до вÑкна "
"поÑоÑного пÑоекÑÑ, або ÑкоÑиÑÑаÑиÑÑ Ð¿ÑнкÑом Ð¼ÐµÐ½Ñ <i>Файл > ÐмпоÑÑ > "
"ÐÑдÑо</i>. Файли можна вÑдкÑиваÑи Ñ Ð²ÑÐºÐ½Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ пÑоекÑÑ Ð·Ð° Ð´Ð¾Ð¿Ð¾Ð¼Ð¾Ð³Ð¾Ñ Ð¼ÐµÐ½Ñ "
"<i>Файл > ÐÑдкÑиÑи</i>. ÐÑновними ÑоÑмаÑами, з Ñкими пÑаÑÑÑ Audacity, Ñ "
@@ -1446,7 +1534,7 @@ msgid ""
"Windows, this current system device can be selected as \"Microsoft Sound "
"Mapper\". If you are recording from an external USB or Firewire device such "
"as a USB turntable, select it explicitly by name as recording device after "
-"conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+"connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
msgstr ""
"<p>ÐÑиÑÑÑоÑм вÑ
Ñдного ÑÐ¸Ð³Ð½Ð°Ð»Ñ Ñ Ñой ÑÑзиÑний пÑиÑÑÑÑй, з Ñкого ви пÑоводиÑе "
"запиÑ. Ðого можна Ð·Ñ Ñпадного Ð¼ÐµÐ½Ñ \"ÐÑиÑÑÑÑй Ð´Ð»Ñ Ð·Ð°Ð¿Ð¸ÑÑ\" на ÑÑоÑÑнÑÑ "
@@ -1611,7 +1699,7 @@ msgid ""
"Splitting_recordings_into_separate_tracks|split the tracks]] from an album "
"for multiple export as separate files. </p><br><br>"
msgstr ""
-"Щоб пÑоÑлÑÑ
аÑи ÐаÑÑ ÑобоÑÑ Ñ ÑнÑиÑ
пÑогÑамаÑ
, екÑпоÑÑÑйÑе ÑÑ Ð´Ð¾ аÑдÑо-Ñайла, "
+"Щоб пÑоÑлÑÑ
аÑи ÐаÑÑ ÑобоÑÑ Ñ ÑнÑиÑ
пÑогÑамаÑ
, екÑпоÑÑÑйÑе ÑÑ Ð´Ð¾ аÑдÑоÑайла, "
"Ñакого Ñк WAV або MP3 (деÑÐºÑ Ð· ÑоÑмаÑÑв [[wma-proprietary|не "
"пÑдÑÑимÑÑÑÑÑÑ]]). [[save|ÐбеÑÐµÐ¶ÐµÐ½Ð½Ñ Ð¿ÑоекÑÑ Audacity]] пÑизводиÑÑ Ð´Ð¾ "
"ÑÑвоÑÐµÐ½Ð½Ñ Ñайла пÑоекÑÑ (Ñ Ð¿Ð¾Ð²âÑÐ·Ð°Ð½Ð¾Ñ Ð· ним Ñеки _data), Ñ ÑÐºÐ¾Ð¼Ñ Ð¼ÑÑÑиÑÑÑÑ "
@@ -1622,11 +1710,11 @@ msgstr ""
"Ð¼ÐµÐ½Ñ \"Тип збеÑеженнÑ\". Щоб [[burncd|запиÑаÑи ÐÐ]] Ð´Ð»Ñ Ð°Ð¿Ð°ÑаÑниÑ
"
"пÑогÑаваÑÑв ÐÐ, вибеÑÑÑÑ WAV або AIFF. Щоб маÑи Ð·Ð¼Ð¾Ð³Ñ ÐµÐºÑпоÑÑÑваÑи до MP3, "
"Ðам ÑлÑд вÑÑановиÑи [[wiki:Lame_Installation|ÐодÑвалÑник Lame]]. </p><p> Ðа "
-"Ð´Ð¾Ð¿Ð¾Ð¼Ð¾Ð³Ð¾Ñ Ð¼ÐµÐ½Ñ <i>Файл > ÐкÑпоÑÑ Ð²Ð¸Ð´ÑÐ»ÐµÐ½Ð¾Ñ Ð¾Ð±Ð»Ð°ÑÑÑ</i> можна екÑпоÑÑÑваÑи "
+"Ð´Ð¾Ð¿Ð¾Ð¼Ð¾Ð³Ð¾Ñ Ð¼ÐµÐ½Ñ <i>Файл > ÐкÑпоÑÑ Ð²Ð¸Ð±ÑÐ°Ð½Ð¾Ñ Ð¾Ð±Ð»Ð°ÑÑÑ</i> можна екÑпоÑÑÑваÑи "
"лиÑе вибÑÐ°Ð½Ñ ÑаÑÑÐ¸Ð½Ñ Ð´Ð¾ÑÑжки. <i>СкоÑиÑÑайÑеÑÑ Ð¼ÐµÐ½Ñ Ð¤Ð°Ð¹Ð» > ÐкÑпоÑÑÑваÑи Ñ "
"декÑлÑка ÑайлÑв</i>, Ñоб одноÑаÑно екÑпоÑÑÑваÑи до декÑлÑкоÑ
ÑайлÑв, або по "
"Ð¾Ð´Ð½Ð¾Ð¼Ñ Ð½Ð° ÐºÐ¾Ð¶Ð½Ñ Ð·Ð²ÑÐºÐ¾Ð²Ñ Ð´Ð¾ÑÑжкÑ, або по Ð¾Ð´Ð½Ð¾Ð¼Ñ Ð½Ð° ÐºÐ¾Ð¶Ð½Ñ Ð¿Ð¾Ð·Ð½Ð°ÑÐµÐ½Ñ Ð¾Ð±Ð»Ð°ÑÑÑ "
-"однÑÑÑ Ð´Ð¾ÑÑжки. ÐÐµÐ½Ñ <i>ÐоÑÑжки > ÐодаÑи познаÑÐºÑ Ð´Ð¾ видÑÐ»ÐµÐ½Ð¾Ñ Ð¾Ð±Ð»Ð°ÑÑÑ</"
+"однÑÑÑ Ð´Ð¾ÑÑжки. ÐÐµÐ½Ñ <i>ÐоÑÑжки > ÐодаÑи познаÑÐºÑ Ð´Ð¾ вибÑÐ°Ð½Ð¾Ñ Ð¾Ð±Ð»Ð°ÑÑÑ</"
"i> Ð½Ð°Ð´Ð°Ñ Ðам можливÑÑÑÑ [[wiki:Splitting_recordings_into_separate_tracks|"
"ÑозÑÑзаÑи доÑÑжки]] одного алÑÐ±Ð¾Ð¼Ñ Ð´Ð»Ñ ÐµÐºÑпоÑÑÑ Ñ Ð´ÐµÐºÑлÑка звÑковиÑ
ÑайлÑв. "
"</p><br><br>"
@@ -1644,7 +1732,7 @@ msgid ""
"protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER."
"html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, "
"burn it to an audio CD in the program licensed to play it, then extract the "
-"CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos."
+"CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos."
"sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could "
"also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&"
"i=streaming\">record</a> the CD to your computer. <i>To export to an "
@@ -1706,8 +1794,12 @@ msgid ""
"a> to download a single-page version of the manual which can be viewed in "
"this window."
msgstr ""
-"<p>СÑвоÑÐµÐ½Ð½Ñ Ð´Ð¾Ð²Ñдки до Audacity Beta Ñе не завеÑÑено. ЧеÑнеÑÐºÑ Ð¿ÑдÑÑÑника можна знайÑи Ñ <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">меÑежÑ</a>. ÐÑÑм Ñого, ви можеÑе наÑиÑнÑÑи <a href=\"http://www.audacityteam.org/manual/index.php?title=Temporary_HTML_Manual_Export\">ÑÑÑ</"
-"a>, Ñоб званÑажиÑи одноÑÑоÑÑÐ½ÐºÐ¾Ð²Ñ Ð²ÐµÑÑÑÑ Ð¿ÑдÑÑÑника, ÑÐºÑ Ð¼Ð¾Ð¶Ð½Ð° бÑде пеÑеглÑнÑÑи за Ð´Ð¾Ð¿Ð¾Ð¼Ð¾Ð³Ð¾Ñ ÑÑого вÑкна."
+"<p>СÑвоÑÐµÐ½Ð½Ñ Ð´Ð¾Ð²Ñдки до Audacity Beta Ñе не завеÑÑено. ЧеÑнеÑÐºÑ Ð¿ÑдÑÑÑника "
+"можна знайÑи Ñ <a href=\"http://www.audacityteam.org/manual/index.php?"
+"title=Main_Page\">меÑежÑ</a>. ÐÑÑм Ñого, ви можеÑе наÑиÑнÑÑи <a href="
+"\"http://www.audacityteam.org/manual/index.php?"
+"title=Temporary_HTML_Manual_Export\">ÑÑÑ</a>, Ñоб званÑажиÑи одноÑÑоÑÑÐ½ÐºÐ¾Ð²Ñ "
+"веÑÑÑÑ Ð¿ÑдÑÑÑника, ÑÐºÑ Ð¼Ð¾Ð¶Ð½Ð° бÑде пеÑеглÑнÑÑи за Ð´Ð¾Ð¿Ð¾Ð¼Ð¾Ð³Ð¾Ñ ÑÑого вÑкна."
#: HistoryWindow.cpp:53
msgid "Undo History"
@@ -1734,47 +1826,58 @@ msgid "&Discard"
msgstr "&ÐÑдкинÑÑи"
#: HistoryWindow.cpp:112 effects/ChangeLength.cpp:186
-#: effects/SpikeCleaner.cpp:191 export/ExportCL.cpp:397
+#: effects/SpikeCleaner.cpp:191 export/ExportCL.cpp:432
msgid "&OK"
msgstr "&ÐаÑазд"
-#: Internat.cpp:191
+#: Internat.cpp:143
msgid "Unable to determine"
msgstr "Ðе вдаÑÑÑÑÑ Ð²Ð¸Ð·Ð½Ð°ÑиÑи"
-#: Internat.cpp:195 import/ImportRaw.cpp:385
+#: Internat.cpp:147 import/ImportRaw.cpp:395
msgid "bytes"
msgstr "байÑÑв"
-#: Internat.cpp:197
+#: Internat.cpp:149
msgid "KB"
msgstr "ÐÐ"
-#: Internat.cpp:200
+#: Internat.cpp:152
msgid "MB"
msgstr "ÐÐ"
-#: Internat.cpp:203
+#: Internat.cpp:155
msgid "GB"
msgstr "ÐÐ"
+#: Internat.cpp:181
+msgid ""
+"The specified filename could not be converted due to Unicode character use."
+msgstr ""
+"ÐÐºÐ°Ð·Ð°Ð½Ñ Ð½Ð°Ð·Ð²Ñ Ñайла неможливо пеÑеÑвоÑиÑи ÑеÑез викоÑиÑÑÐ°Ð½Ð½Ñ ÑимволÑв "
+"Unicode."
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr "ÐкажÑÑÑ Ð½Ð¾Ð²Ñ Ð½Ð°Ð·Ð²Ñ Ñайла:"
+
#: LabelDialog.cpp:54
msgid "Track"
msgstr "ÐоÑÑжка"
-#: LabelDialog.cpp:55 Menus.cpp:4727 Menus.cpp:4762
+#: LabelDialog.cpp:55 Menus.cpp:4807 Menus.cpp:4842
msgid "Label"
msgstr "ÐознаÑка"
-#: LabelDialog.cpp:56 TimerRecordDialog.cpp:329
+#: LabelDialog.cpp:56 TimerRecordDialog.cpp:341
msgid "Start Time"
msgstr "Ð§Ð°Ñ Ð¿Ð¾ÑаÑкÑ"
-#: LabelDialog.cpp:57 TimerRecordDialog.cpp:348
+#: LabelDialog.cpp:57 TimerRecordDialog.cpp:360
msgid "End Time"
msgstr "Ð§Ð°Ñ Ð·Ð°ÐºÑнÑеннÑ"
-#: LabelDialog.cpp:100 Menus.cpp:715
+#: LabelDialog.cpp:100 Menus.cpp:696
msgid "&Edit Labels"
msgstr "Ð &едагÑваÑи познаÑки"
@@ -1814,15 +1917,15 @@ msgstr ""
msgid "Confirm"
msgstr "ÐÑдÑвеÑдиÑи"
-#: LabelDialog.cpp:516 Menus.cpp:4151
+#: LabelDialog.cpp:516 Menus.cpp:4225
msgid "Select a text file containing labels..."
msgstr "ÐибеÑÑÑÑ ÑеÑÑовий Ñайл, Ñо мÑÑÑиÑÑ Ð¿Ð¾Ð·Ð½Ð°Ñки..."
-#: LabelDialog.cpp:520 Menus.cpp:4155
+#: LabelDialog.cpp:520 Menus.cpp:4229
msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
msgstr "ТекÑÑÐ¾Ð²Ñ Ñайли (*.txt)|*.txt|УÑÑ Ñайли (*.*)|*.*"
-#: LabelDialog.cpp:534 Menus.cpp:4167 Project.cpp:1960 Project.cpp:1968
+#: LabelDialog.cpp:534 Menus.cpp:4241 Project.cpp:2087 Project.cpp:2095
msgid "Could not open file: "
msgstr "Ðе вдаÑÑÑÑÑ Ð²ÑдкÑиÑи Ñайл:"
@@ -1830,11 +1933,11 @@ msgstr "Ðе вдаÑÑÑÑÑ Ð²ÑдкÑиÑи Ñайл:"
msgid "No labels to export."
msgstr "ÐÑдÑÑÑÐ½Ñ Ð¿Ð¾Ð·Ð½Ð°Ñок Ð´Ð»Ñ ÐµÐºÑпоÑÑÑ."
-#: LabelDialog.cpp:566 Menus.cpp:2530
+#: LabelDialog.cpp:566 Menus.cpp:2578
msgid "Export Labels As:"
msgstr "ÐкÑпоÑÑÑваÑи познаÑки Ñк:"
-#: LabelDialog.cpp:568 Menus.cpp:2528
+#: LabelDialog.cpp:568 Menus.cpp:2576
msgid "labels.txt"
msgstr "labels.txt"
@@ -1846,7 +1949,7 @@ msgstr "Ðова доÑÑжка познаÑок"
msgid "Enter track name"
msgstr "ÐведÑÑÑ Ð½Ð°Ð·Ð²Ñ Ð´Ð¾ÑÑжки"
-#: LabelDialog.cpp:705 LabelDialog.h:52 LabelTrack.cpp:89 Menus.cpp:634
+#: LabelDialog.cpp:705 LabelDialog.h:52 LabelTrack.cpp:92 Menus.cpp:605
msgid "&Label Track"
msgstr "ÐоÑÑжка Ð´Ð»Ñ &познаÑок"
@@ -1858,7 +1961,7 @@ msgstr "ÐеÑÑий запÑÑк Audacity"
msgid "Choose Language for Audacity to use:"
msgstr "ÐибеÑÑÑÑ Ð¼Ð¾Ð²Ñ ÑнÑеÑÑейÑÑ Ð´Ð»Ñ Audacity:"
-#: Legacy.cpp:356
+#: Legacy.cpp:372
#, c-format
msgid ""
"Converted a 1.0 project file to the new format.\n"
@@ -1867,7 +1970,7 @@ msgstr ""
"ÐÑÐ¾ÐµÐºÑ ÑоÑмаÑÑ 1.0 пеÑеÑвоÑено Ñ Ð¿ÑÐ¾ÐµÐºÑ Ð½Ð¾Ð²Ð¾Ð³Ð¾ ÑоÑмаÑÑ.\n"
"СÑаÑий Ñайл збеÑежено з Ð½Ð°Ð·Ð²Ð¾Ñ \"%s\""
-#: Legacy.cpp:357
+#: Legacy.cpp:373
msgid "Opening Audacity Project"
msgstr "ÐÑдкÑиваÑÑÑÑÑ Ð¿ÑÐ¾ÐµÐºÑ Audacity"
@@ -1875,958 +1978,898 @@ msgstr "ÐÑдкÑиваÑÑÑÑÑ Ð¿ÑÐ¾ÐµÐºÑ Audacity"
msgid "&File"
msgstr "&Файл"
-#: Menus.cpp:197
-msgid "&New\tCtrl+N"
-msgstr "&СÑвоÑиÑи\tCtrl+N"
-
-#: Menus.cpp:199
-msgid "&Open...\tCtrl+O"
-msgstr "&ÐÑдкÑиÑи...\tCtrl+O"
+#: Menus.cpp:214
+msgid "&Close"
+msgstr "&ÐакÑиÑи"
-#: Menus.cpp:204
-msgid "&Close\tCtrl+W"
-msgstr "&ÐакÑиÑи\tCtrl+W"
-
-#: Menus.cpp:207
-msgid "&Save Project\tCtrl+S"
-msgstr "Ð&беÑегÑи пÑоекÑ\tCtrl+S"
+#: Menus.cpp:217
+msgid "&Save Project"
+msgstr "Ð&беÑегÑи пÑоекÑ"
-#: Menus.cpp:211 Project.cpp:2943
+#: Menus.cpp:220 Project.cpp:3148
msgid "Save Project &As..."
msgstr "ÐбеÑегÑи пÑÐ¾ÐµÐºÑ &Ñк..."
-#: Menus.cpp:213
+#: Menus.cpp:222
msgid "Save Compressed Copy of Project..."
msgstr "ÐбеÑегÑи ÑÑиÑнÑÑÑ ÐºÐ¾Ð¿ÑÑ Ð¿ÑоекÑÑ..."
-#: Menus.cpp:217
+#: Menus.cpp:226
msgid "Chec&k Dependencies..."
msgstr "ÐеÑевÑÑ&иÑи залежноÑÑÑ..."
-#: Menus.cpp:223
+#: Menus.cpp:230
msgid "Open Me&tadata Editor..."
msgstr "ÐÑдкÑиÑи ÑедакÑÐ¾Ñ &меÑаданиÑ
..."
-#: Menus.cpp:230 import/ImportRaw.cpp:411
+#: Menus.cpp:238 import/ImportRaw.cpp:421
msgid "&Import"
msgstr "&ÐмпоÑÑ"
-#: Menus.cpp:232
-msgid "&Audio...\tCtrl+Shift+I"
-msgstr "&ÐÑдÑо...\tCtrl+Shift+I"
+#: Menus.cpp:240
+msgid "&Audio..."
+msgstr "&ÐÑдÑо..."
-#: Menus.cpp:233
+#: Menus.cpp:241
msgid "&Labels..."
msgstr "&ÐознаÑки..."
-#: Menus.cpp:235
+#: Menus.cpp:243
msgid "&MIDI..."
msgstr "&MIDI..."
-#: Menus.cpp:237
+#: Menus.cpp:245
msgid "&Raw Data..."
msgstr "ÐвÑковий Ñайл &без Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²ÐºÑ (Raw)..."
-#: Menus.cpp:248 Menus.cpp:283
+#: Menus.cpp:260
msgid "Expo&rt Selection..."
-msgstr "ÐкÑпо&ÑÑ Ð²Ð¸Ð´ÑÐ»ÐµÐ½Ð¾Ñ Ð¾Ð±Ð»Ð°ÑÑÑ..."
+msgstr "ÐкÑпо&ÑÑ Ð²Ð¸Ð±ÑÐ°Ð½Ð¾Ñ Ð¾Ð±Ð»Ð°ÑÑÑ..."
-#: Menus.cpp:255
+#: Menus.cpp:268
msgid "Export &Labels..."
msgstr "ÐкÑпоÑÑÑваÑи &познаÑки..."
-#: Menus.cpp:256
+#: Menus.cpp:271
msgid "Export &Multiple..."
msgstr "ÐкÑпоÑÑÑваÑи Ñ &декÑлÑка ÑайлÑв..."
-#: Menus.cpp:258
+#: Menus.cpp:275
msgid "Export MIDI..."
msgstr "ÐкÑпоÑÑÑваÑи до MIDI..."
-#: Menus.cpp:291
-msgid "CleanSpeech C&hain..."
-msgstr "Ðан&ÑÑжок CleanSpeech..."
+#: Menus.cpp:281
+msgid "Appl&y Chain..."
+msgstr "ÐаÑÑоÑ&ÑваÑи ланÑÑжок..."
-#: Menus.cpp:292 Menus.cpp:306
+#: Menus.cpp:284
msgid "Edit C&hains..."
msgstr "РедагÑваÑи лан&ÑÑжки..."
-#: Menus.cpp:293
+#: Menus.cpp:287
msgid "Export CleanSpeech &Presets..."
msgstr "ÐкÑпоÑÑÑваÑи &Ñаблони CleanSpeech..."
-#: Menus.cpp:294
+#: Menus.cpp:288
msgid "I&mport CleanSpeech Presets..."
msgstr "Ð&мпоÑÑÑваÑи Ñаблони CleanSpeech..."
-#: Menus.cpp:304
-msgid "Appl&y Chain..."
-msgstr "ÐаÑÑоÑ&ÑваÑи ланÑÑжок..."
-
-#: Menus.cpp:311
+#: Menus.cpp:295
msgid "&Upload File..."
msgstr "ÐÑдванÑа&жиÑи Ñайл на FTP-ÑеÑвеÑ..."
-#: Menus.cpp:317
+#: Menus.cpp:300
msgid "Pa&ge Setup..."
msgstr "ÐаÑа&меÑÑи ÑÑоÑÑнки..."
-#: Menus.cpp:318
+#: Menus.cpp:303
msgid "&Print..."
msgstr "Ð&ÑÑкÑваÑи..."
-#: Menus.cpp:331
-msgid "E&xit\tCtrl+Q"
-msgstr "Ðи&йÑи\tCtrl+Q"
+#: Menus.cpp:312
+msgid "E&xit"
+msgstr "Ðи&йÑи"
-#: Menus.cpp:339 toolbars/EditToolBar.cpp:76
+#: Menus.cpp:322
msgid "&Edit"
msgstr "&ÐÑавка"
-#: Menus.cpp:343
-msgid "&Undo\tCtrl+Z"
-msgstr "Ð&еÑнÑÑи\tCtrl+Z"
+#: Menus.cpp:327
+msgid "&Undo"
+msgstr "Ð&еÑнÑÑи"
-#: Menus.cpp:351 prefs/KeyConfigPrefs.cpp:384 toolbars/EditToolBar.cpp:146
+#: Menus.cpp:339
msgid "&Redo"
msgstr "ÐовÑ&оÑиÑи"
-#: Menus.cpp:364
-msgid "Cu&t\tCtrl+X"
-msgstr "&ÐиÑÑзаÑи\tCtrl+X"
+#: Menus.cpp:345
+msgid "Cu&t"
+msgstr "&ÐиÑÑзаÑи"
-#: Menus.cpp:368
-msgid "Spl&it Cut\tCtrl+Alt+X"
-msgstr "ÐиÑÑзаÑи без з'&ÑднаннÑ\tCtrl+Alt+X"
+#: Menus.cpp:348
+msgid "Spl&it Cut"
+msgstr "ÐиÑÑзаÑи без з'&ÑднаннÑ"
-#: Menus.cpp:369
-msgid "&Copy\tCtrl+C"
-msgstr "&ÐопÑÑваÑи\tCtrl+C"
+#: Menus.cpp:349
+msgid "&Copy"
+msgstr "&ÐопÑÑваÑи"
-#: Menus.cpp:373
-msgid "&Paste\tCtrl+V"
-msgstr "ÐÑÑ&авиÑи\tCtrl+V"
+#: Menus.cpp:352
+msgid "&Paste"
+msgstr "ÐÑÑ&авиÑи"
-#: Menus.cpp:377
-msgid "Tri&m\tCtrl+T"
-msgstr "ÐбÑ&ÑзаÑи\tCtrl+T"
+#: Menus.cpp:355
+msgid "Tri&m"
+msgstr "ÐбÑ&ÑзаÑи"
-#: Menus.cpp:379
-msgid "&Delete\tCtrl+K"
-msgstr "Ð&илÑÑиÑи\tCtrl+K"
+#: Menus.cpp:359 Menus.cpp:398
+msgid "&Delete"
+msgstr "Ð&илÑÑиÑи"
-#: Menus.cpp:380
-msgid "Split D&elete\tCtrl+Alt+K"
-msgstr "ÐилÑÑиÑи без з'Ñ&днаннÑ\tCtrl+Alt+K"
+#: Menus.cpp:360
+msgid "Split D&elete"
+msgstr "ÐилÑÑиÑи без з'Ñ&днаннÑ"
-#: Menus.cpp:381
-msgid "Silence Audi&o\tCtrl+L"
-msgstr "ÐаповниÑи &ÑиÑеÑ\tCtrl+L"
+#: Menus.cpp:361
+msgid "Silence Audi&o"
+msgstr "ÐаповниÑи &ÑиÑеÑ"
-#: Menus.cpp:383
-msgid "Sp&lit\tCtrl+I"
-msgstr "РоздÑ&лиÑи\tCtrl+I"
+#: Menus.cpp:365
+msgid "Sp&lit"
+msgstr "РоздÑ&лиÑи"
-#: Menus.cpp:388
-msgid "Split Ne&w\tCtrl+Alt+I"
-msgstr "РоздÑлиÑи Ð·Ñ ÑÑвоÑеннÑм &нового\tCtrl+Alt+I"
+#: Menus.cpp:369
+msgid "Split Ne&w"
+msgstr "РоздÑлиÑи Ð·Ñ ÑÑвоÑеннÑм &нового"
-#: Menus.cpp:393
-msgid "&Join\tCtrl+J"
-msgstr "&Ð'ÑднаÑи\tCtrl+J"
+#: Menus.cpp:373 Menus.cpp:405
+msgid "&Join"
+msgstr "&Ð'ÑднаÑи"
-#: Menus.cpp:394
-msgid "Detac&h at Silences\tCtrl+Alt+J"
-msgstr "Ð &оз'ÑднаÑи за ÑиÑеÑ\tShift+Alt+J"
+#: Menus.cpp:374 Menus.cpp:406
+msgid "Detac&h at Silences"
+msgstr "Ð &оз'ÑднаÑи за ÑиÑеÑ"
-#: Menus.cpp:395
-msgid "Duplic&ate\tCtrl+D"
-msgstr "ÐÑ&блÑваÑи\tCtrl+D"
+#: Menus.cpp:375
+msgid "Duplic&ate"
+msgstr "ÐÑ&блÑваÑи"
-#: Menus.cpp:401 Menus.cpp:641
+#: Menus.cpp:380 Menus.cpp:616
msgid "Stereo Trac&k to Mono"
msgstr "&СÑеÑео на моно"
-#: Menus.cpp:408
+#: Menus.cpp:389
msgid "La&beled Regions"
msgstr "Ðбла&ÑÑÑ Ð· познаÑками"
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:410
-msgid "&Cut\tAlt+X"
-msgstr "&ÐиÑÑзаÑи\tAlt+X"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:415
-msgid "&Split Cut\tShift+Alt+X"
-msgstr "Ðи&ÑÑзаÑи без з'ÑданннÑ\tShift+Alt+X"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:420
-msgid "Co&py\tShift+Alt+C"
-msgstr "&ÐопÑÑваÑи\tShift+Alt+C"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:426
-msgid "&Delete\tAlt+K"
-msgstr "Ð&илÑÑиÑи\tAlt+K"
+#: Menus.cpp:392
+msgid "&Cut"
+msgstr "&ÐиÑÑзаÑи"
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:431
-msgid "Sp&lit Delete\tShift+Alt+K"
-msgstr "Ðи&лÑÑиÑи без з'ÑднаннÑ\tShift+Alt+K"
+#: Menus.cpp:393
+msgid "&Split Cut"
+msgstr "Ðи&ÑÑзаÑи без з'ÑднаннÑ"
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:436
-msgid "Sile&nce\tAlt+L"
-msgstr "Ти&Ñа\tAlt+L"
+#: Menus.cpp:394
+msgid "Co&py"
+msgstr "&ÐопÑÑваÑи"
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:442
-msgid "Spli&t\tAlt+I"
-msgstr "РоздÑ&лиÑи\tAlt+I"
+#: Menus.cpp:399
+msgid "Sp&lit Delete"
+msgstr "Ðи&лÑÑиÑи без з'ÑднаннÑ"
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:447
-msgid "&Join\tAlt+J"
-msgstr "Ð'&ÑднаÑи\tAlt+J"
+#: Menus.cpp:400
+msgid "Sile&nce"
+msgstr "Ти&Ñа"
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:452
-msgid "Detac&h at Silences\tShift+Alt+J"
-msgstr "Ð &оз'ÑднаÑи за ÑиÑеÑ\tShift+Alt+J"
+#: Menus.cpp:404
+msgid "Spli&t"
+msgstr "РоздÑ&лиÑи"
-#: Menus.cpp:457
+#: Menus.cpp:412
msgid "&Select"
msgstr "&ÐибÑаÑи"
-#: Menus.cpp:458
-msgid "&All\tCtrl+A"
-msgstr "&ÐÑе\tCtrl+A"
+#: Menus.cpp:415
+msgid "&All"
+msgstr "&ÐÑе"
-#: Menus.cpp:459
-msgid "&None\tCtrl+Shift+A"
-msgstr "&ÐÑÑого\tCtrl+Shift+A"
+#: Menus.cpp:416
+msgid "&None"
+msgstr "&ÐÑÑого"
-#: Menus.cpp:463
-msgid "&Left at Playback Position\t["
-msgstr "&ÐÑвоÑÑÑ Ð²Ñд поÑоÑÐ½Ð¾Ñ Ð¿Ð¾Ð·Ð¸ÑÑÑ\t["
+#: Menus.cpp:418
+msgid "&Left at Playback Position"
+msgstr "&ÐÑвоÑÑÑ Ð²Ñд поÑоÑÐ½Ð¾Ñ Ð¿Ð¾Ð·Ð¸ÑÑÑ"
-#: Menus.cpp:464
-msgid "&Right at Playback Position\t]"
-msgstr "&ÐÑавоÑÑÑ Ð²Ñд поÑоÑÐ½Ð¾Ñ Ð¿Ð¾Ð·Ð¸ÑÑÑ\t]"
+#: Menus.cpp:419
+msgid "&Right at Playback Position"
+msgstr "&ÐÑавоÑÑÑ Ð²Ñд поÑоÑÐ½Ð¾Ñ Ð¿Ð¾Ð·Ð¸ÑÑÑ"
-#: Menus.cpp:468
-msgid "Track &Start to Cursor\tShift+J"
-msgstr "ÐÑд п&оÑаÑÐºÑ Ð´Ð¾ кÑÑÑоÑа\tShift+J"
+#: Menus.cpp:423
+msgid "Track &Start to Cursor"
+msgstr "ÐÑд п&оÑаÑÐºÑ Ð´Ð¾ кÑÑÑоÑа"
-#: Menus.cpp:469
-msgid "Cursor to Track &End\tShift+K"
-msgstr "ÐÑд кÑÑÑоÑа до &кÑнÑÑ\tShift+K"
+#: Menus.cpp:424
+msgid "Cursor to Track &End"
+msgstr "ÐÑд кÑÑÑоÑа до &кÑнÑÑ"
-#: Menus.cpp:475
-msgid "Find &Zero Crossings\tZ"
-msgstr "ÐнайÑи &нÑлÑÐ¾Ð²Ñ ÑоÑки\tZ"
+#: Menus.cpp:430
+msgid "Find &Zero Crossings"
+msgstr "ÐнайÑи &нÑлÑÐ¾Ð²Ñ ÑоÑки"
-#: Menus.cpp:478
+#: Menus.cpp:434
msgid "Mo&ve Cursor"
msgstr "ÐеÑе&мÑÑÑиÑи кÑÑÑоÑ"
-#: Menus.cpp:480
+#: Menus.cpp:436
msgid "to Selection Star&t"
msgstr "Ðо поÑаÑÐºÑ Ð²Ð¸Ð´&Ñленого"
-#: Menus.cpp:481
+#: Menus.cpp:437
msgid "to Selection En&d"
-msgstr "до кÑнÑÑ Ð²Ð¸Ð´Ñлен&ого"
+msgstr "до кÑнÑÑ Ð²Ð¸Ð±Ñан&ого"
-#: Menus.cpp:485
-msgid "to Track &Start\tJ"
-msgstr "до &поÑаÑÐºÑ Ð´Ð¾ÑÑжки\tJ"
+#: Menus.cpp:439
+msgid "to Track &Start"
+msgstr "до &поÑаÑÐºÑ Ð´Ð¾ÑÑжки"
-#: Menus.cpp:486
-msgid "to Track &End\tK"
-msgstr "до &кÑнÑÑ Ð´Ð¾ÑÑжки\tK"
+#: Menus.cpp:440
+msgid "to Track &End"
+msgstr "до &кÑнÑÑ Ð´Ð¾ÑÑжки"
-#: Menus.cpp:493
+#: Menus.cpp:448
msgid "Re&gion Save"
msgstr "Ðапам'ÑÑаÑи видÑ&лене"
-#: Menus.cpp:494
+#: Menus.cpp:451
msgid "Regio&n Restore"
-msgstr "ÐÑдновленн&Ñ Ð²Ð¸Ð´Ñленого"
+msgstr "ÐÑдновленн&Ñ Ð²Ð¸Ð±Ñаного"
-#: Menus.cpp:505
+#: Menus.cpp:459
msgid "Pla&y Region"
msgstr "ÐÑдÑвоÑ&иÑи облаÑÑÑ"
-#: Menus.cpp:506
+#: Menus.cpp:461
msgid "&Lock"
msgstr "&ÐаблокÑваÑи"
-#: Menus.cpp:507
+#: Menus.cpp:464
msgid "&Unlock"
msgstr "&РозблокÑваÑи"
-#: Menus.cpp:513
-msgid "Turn Snap-To On"
-msgstr "УвÑмкнÑÑи пÑив'ÑзкÑ"
-
-#: Menus.cpp:514
-msgid "Turn Snap-To Off"
-msgstr "ÐимкнÑÑи пÑив'ÑзкÑ"
-
-#: Menus.cpp:515
-msgid "Turn Grid Snap On"
-msgstr "ÐклÑÑиÑи пÑив'ÑÐ·ÐºÑ Ð·Ð° ÑÑÑкоÑ"
-
-#: Menus.cpp:516
-msgid "Turn Grid Snap Off"
-msgstr "УвÑмкнÑÑи пÑив'ÑÐ·ÐºÑ Ð·Ð° ÑÑÑкоÑ"
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
-#: Menus.cpp:521
-msgid "Pre&ferences...\tCtrl+,"
-msgstr "&ÐаÑамеÑÑи...\tCtrl+,"
-
-#: Menus.cpp:525
-msgid "Pre&ferences...\tCtrl+P"
-msgstr "&УподобаннÑ...\tCtrl+P"
+#: Menus.cpp:484
+msgid "Pre&ferences..."
+msgstr "&ÐаÑамеÑÑи..."
-#: Menus.cpp:535
+#: Menus.cpp:494
msgid "&View"
msgstr "&ÐиглÑд"
-#: Menus.cpp:537
-msgid "Zoom &In\tCtrl+1"
-msgstr "Ð&бÑлÑÑиÑи\tCtrl+1"
+#: Menus.cpp:497
+msgid "Zoom &In"
+msgstr "Ð&бÑлÑÑиÑи"
-#: Menus.cpp:540
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "Ðви&Ñайний ÑозмÑÑ\tCtrl+2"
+#: Menus.cpp:500
+msgid "Zoom &Normal"
+msgstr "Ðви&Ñайний ÑозмÑÑ"
-#: Menus.cpp:541
-msgid "Zoom &Out\tCtrl+3"
-msgstr "Ð&менÑиÑи\tCtrl+3"
+#: Menus.cpp:501
+msgid "Zoom &Out"
+msgstr "Ð&менÑиÑи"
-#: Menus.cpp:544
-msgid "&Fit in Window\tCtrl+F"
-msgstr "ÐÑдÑ&гнаÑи до ÑозмÑÑÑ Ð²Ñкна\tCtrl+F"
+#: Menus.cpp:505
+msgid "&Fit in Window"
+msgstr "ÐÑдÑ&гнаÑи до ÑозмÑÑÑ Ð²Ñкна"
-#: Menus.cpp:545
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "РозмÑÑÑиÑи по &веÑÑикалÑ\tCtrl+Shift+F"
+#: Menus.cpp:506
+msgid "Fit &Vertically"
+msgstr "РозмÑÑÑиÑи по &веÑÑикалÑ"
-#: Menus.cpp:546
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "ÐаÑ&ÑÑабÑваÑи до видÑленого\tCtrl+E"
+#: Menus.cpp:507
+msgid "&Zoom to Selection"
+msgstr "ÐаÑ&ÑÑабÑваÑи до вибÑаного"
-#: Menus.cpp:549
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
-msgstr "&ÐгоÑнÑÑи вÑÑ Ð´Ð¾ÑÑжки\tCtrl+Shift+C"
+#: Menus.cpp:511
+msgid "&Collapse All Tracks"
+msgstr "&ÐгоÑнÑÑи вÑÑ Ð´Ð¾ÑÑжки"
-#: Menus.cpp:550
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
-msgstr "Роз&гоÑнÑÑи вÑÑ Ð´Ð¾ÑÑжки\tCtrl+Shift+X"
+#: Menus.cpp:512
+msgid "E&xpand All Tracks"
+msgstr "Роз&гоÑнÑÑи вÑÑ Ð´Ð¾ÑÑжки"
-#: Menus.cpp:553
+#: Menus.cpp:516
msgid "&Show Clipping"
msgstr "ÐоказаÑи з&ÑÑзаннÑ"
-#: Menus.cpp:562
+#: Menus.cpp:521
msgid "&History..."
msgstr "&ÐÑÑоÑÑÑ Ð·Ð¼Ñн..."
-#: Menus.cpp:568
+#: Menus.cpp:529
msgid "&Toolbars"
msgstr "Ð&енали"
-#: Menus.cpp:569
+#: Menus.cpp:531
msgid "&Control Toolbar"
msgstr "ÐÐ°Ð½ÐµÐ»Ñ &кеÑÑваннÑ"
-#: Menus.cpp:570
+#: Menus.cpp:532
msgid "&Device Toolbar"
msgstr "ÐÐ°Ð½ÐµÐ»Ñ Ð¿ÑиÑÑÑо&Ñв"
-#: Menus.cpp:571
+#: Menus.cpp:533
msgid "&Edit Toolbar"
msgstr "ÐÐ°Ð½ÐµÐ»Ñ &ÑедагÑваннÑ"
-#: Menus.cpp:572
+#: Menus.cpp:534
msgid "&Meter Toolbar"
msgstr "ÐÐ°Ð½ÐµÐ»Ñ &ÑндикаÑоÑÑв"
-#: Menus.cpp:573
+#: Menus.cpp:535
msgid "Mi&xer Toolbar"
msgstr "ÐÐ°Ð½ÐµÐ»Ñ Ð¼Ñк&ÑеÑа"
-#: Menus.cpp:574
+#: Menus.cpp:536
msgid "&Selection Toolbar"
msgstr "ÐÐ°Ð½ÐµÐ»Ñ &вибоÑÑ"
-#: Menus.cpp:575
+#: Menus.cpp:537
msgid "T&ools Toolbar"
msgstr "ÐÐ°Ð½ÐµÐ»Ñ ÑнÑÑÑ&ÑменÑÑв"
-#: Menus.cpp:576
+#: Menus.cpp:538
msgid "Transcri&ption Toolbar"
msgstr "ÐÐ°Ð½ÐµÐ»Ñ Ð¿ÐµÑез&апиÑÑ"
-#: Menus.cpp:578
+#: Menus.cpp:542
msgid "&Reset Toolbars"
msgstr "ÐÑд&новиÑи поÑаÑÐºÐ¾Ð²Ñ Ð¿Ð°Ð½ÐµÐ»Ñ"
-#: Menus.cpp:580
+#: Menus.cpp:550
msgid "!Simplified View"
msgstr "!СпÑоÑений виглÑд"
#. i18n-hint: 'Transport' is the name given to the set of controls that
#. play, record, pause etc.
-#: Menus.cpp:589
+#: Menus.cpp:561
msgid "T&ransport"
msgstr "Ð&еÑенеÑеннÑ"
-#: Menus.cpp:591
-msgid "Play\tSpace"
-msgstr "ÐÑдÑвоÑиÑи\tÐÑобÑл"
+#: Menus.cpp:564 toolbars/ControlToolBar.cpp:173
+msgid "Play"
+msgstr "ÐÑдÑвоÑиÑи"
-#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
-msgstr "ÐÑ&дÑвоÑиÑи Ñ ÑиклÑ\tShift+ÐÑобÑл"
+#: Menus.cpp:565
+msgid "&Loop Play"
+msgstr "ÐÑ&дÑвоÑиÑи Ñ ÑиклÑ"
-#: Menus.cpp:595
-msgid "&Pause\tP"
-msgstr "Ð&ÑизÑпиниÑи\tP"
+#: Menus.cpp:566
+msgid "&Pause"
+msgstr "Ð&ÑизÑпиниÑи"
-#: Menus.cpp:596
-msgid "&Stop\tSpace"
-msgstr "Ð&ÑпиниÑи\tÐÑобÑл"
+#: Menus.cpp:569
+msgid "&Stop"
+msgstr "Ð&ÑпиниÑи"
-#: Menus.cpp:597 Menus.cpp:1012
-msgid "Skip to Start\tHome"
-msgstr "ÐеÑейÑи на поÑаÑок доÑÑжки\tHome"
+#: Menus.cpp:572 toolbars/ControlToolBar.cpp:208
+msgid "Skip to Start"
+msgstr "ÐеÑейÑи на поÑаÑок доÑÑжки"
-#: Menus.cpp:599 Menus.cpp:1013
-msgid "Skip to End\tEnd"
-msgstr "ÐеÑейÑи на кÑнеÑÑ Ð´Ð¾ÑÑжки\tEnd"
+#: Menus.cpp:573 toolbars/ControlToolBar.cpp:209
+msgid "Skip to End"
+msgstr "ÐеÑейÑи на кÑнеÑÑ Ð´Ð¾ÑÑжки"
-#: Menus.cpp:602
-msgid "&Record\tR"
-msgstr "&ÐапиÑ\tR"
+#: Menus.cpp:577
+msgid "&Record"
+msgstr "&ÐапиÑ"
-#: Menus.cpp:604
-msgid "&Timer Record...\tShift+T"
-msgstr "ÐÐ°Ð¿Ð¸Ñ Ð·Ð° &ÑаймеÑом...\tShift+T"
+#: Menus.cpp:578
+msgid "&Timer Record..."
+msgstr "ÐÐ°Ð¿Ð¸Ñ Ð·Ð° &ÑаймеÑом..."
-#: Menus.cpp:606
-msgid "Append Record\tShift+R"
-msgstr "ÐолÑÑÐµÐ½Ð½Ñ Ð·Ð°Ð¿Ð¸ÑÑ\tShift+R"
+#: Menus.cpp:579
+msgid "Append Record"
+msgstr "ÐолÑÑÐµÐ½Ð½Ñ Ð·Ð°Ð¿Ð¸ÑÑ"
-#: Menus.cpp:609
+#: Menus.cpp:583
msgid "Overdub (on/off)"
msgstr "ÐÐ°ÐºÐ»Ð°Ð´ÐµÐ½Ð½Ñ (ÑвÑмкн./вимкн.)"
-#: Menus.cpp:611
+#: Menus.cpp:584
msgid "Software Playthrough (on/off)"
msgstr "ÐÑогÑамне вÑдÑвоÑÐµÐ½Ð½Ñ (ÑвÑмкн./вимкн.)"
-#: Menus.cpp:614
+#: Menus.cpp:587
msgid "Sound Activated Recording (on/off)"
msgstr "ÐÐ°Ð¿Ð¸Ñ Ð· акÑиваÑÑÑÑ Ð·Ð²Ñком (ÑвÑмкн./вимкн.)"
-#: Menus.cpp:616
+#: Menus.cpp:588
msgid "Sound Activation Level..."
msgstr "Ð ÑÐ²ÐµÐ½Ñ Ð°ÐºÑивÑзаÑÑÑ Ð·Ð²ÑкÑ..."
-#: Menus.cpp:624
+#: Menus.cpp:596
msgid "&Tracks"
msgstr "Ð&оÑÑжки"
-#: Menus.cpp:631
+#: Menus.cpp:601
msgid "Add &New"
msgstr "ÐодаÑи &новÑ"
-#: Menus.cpp:632
-msgid "&Audio Track\tCtrl+Shift+N"
-msgstr "&ÐÑдÑо доÑÑжкÑ\tCtrl+Shift+N"
+#: Menus.cpp:603
+msgid "&Audio Track"
+msgstr "&ÐÑдÑо доÑÑжкÑ"
-#: Menus.cpp:633
+#: Menus.cpp:604
msgid "&Stereo Track"
msgstr "&СÑеÑео доÑÑжкÑ"
-#: Menus.cpp:635 TimeTrack.cpp:44
+#: Menus.cpp:606 TimeTrack.cpp:44
msgid "&Time Track"
msgstr "ÐоÑÑÐ¶ÐºÑ &ÑаÑÑ"
-#: Menus.cpp:645
+#: Menus.cpp:619
msgid "Mi&x and Render"
msgstr "ÐмÑ&кÑÑваÑи Ñ Ð²ÑдобÑазиÑи"
-#: Menus.cpp:649
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
-msgstr "ÐÑкÑÑваÑи Ñ Ð²ÑдобÑазиÑи Ñк Ð½Ð¾Ð²Ñ Ð´Ð¾ÑÑжкÑ\tCtrl+Shift+M"
+#: Menus.cpp:622
+msgid "Mix and Render to New Track"
+msgstr "ÐÑкÑÑваÑи Ñ Ð²ÑдобÑазиÑи Ñк Ð½Ð¾Ð²Ñ Ð´Ð¾ÑÑжкÑ"
-#: Menus.cpp:653
+#: Menus.cpp:625
msgid "&Resample..."
msgstr "&ÐмÑниÑи ÑаÑÑоÑÑ..."
-#: Menus.cpp:663
+#: Menus.cpp:631
msgid "Remo&ve Tracks"
msgstr "Ð&илÑÑиÑи доÑÑжки"
-#: Menus.cpp:669
-msgid "&Mute All Tracks\tCtrl+U"
-msgstr "&ÐимкнÑÑи звÑк на вÑÑÑ
доÑÑжкаÑ
\tCtrl+U"
+#: Menus.cpp:637
+msgid "&Mute All Tracks"
+msgstr "&ÐимкнÑÑи звÑк на вÑÑÑ
доÑÑжкаÑ
"
-#: Menus.cpp:670
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
-msgstr "&УвÑмкнÑÑи звÑк на вÑÑÑ
доÑÑжкаÑ
\tCtrl+Shift+U"
+#: Menus.cpp:638
+msgid "&UnMute All Tracks"
+msgstr "&УвÑмкнÑÑи звÑк на вÑÑÑ
доÑÑжкаÑ
"
-#: Menus.cpp:674
+#: Menus.cpp:643
msgid "Align with &Zero"
msgstr "ÐиÑÑвнÑÑи за &нÑлем"
-#: Menus.cpp:675
+#: Menus.cpp:644
msgid "Align with &Cursor"
msgstr "ÐиÑÑвнÑÑи за &кÑÑÑоÑом"
-#: Menus.cpp:676
+#: Menus.cpp:645
msgid "Align with Selection &Start"
-msgstr "ÐиÑÑвнÑÑи за &поÑаÑком видÑленого"
+msgstr "ÐиÑÑвнÑÑи за &поÑаÑком вибÑаного"
-#: Menus.cpp:677
+#: Menus.cpp:646
msgid "Align with Selection &End"
-msgstr "ÐиÑÑвнÑÑи за кÑнÑем &видÑленого"
+msgstr "ÐиÑÑвнÑÑи за кÑнÑем &вибÑаного"
-#: Menus.cpp:678
+#: Menus.cpp:647
msgid "Align End with Cu&rsor"
msgstr "ÐÑÑановиÑи закÑнÑÐµÐ½Ð½Ñ Ð½Ð° к&ÑÑÑоÑ"
-#: Menus.cpp:679
+#: Menus.cpp:648
msgid "Align End with Selection Star&t"
-msgstr "ÐÑÑановиÑи кÑнеÑÑ Ð½Ð° по&ÑаÑок видÑленого"
+msgstr "ÐÑÑановиÑи кÑнеÑÑ Ð½Ð° по&ÑаÑок вибÑаного"
-#: Menus.cpp:680
+#: Menus.cpp:649
msgid "Align End with Selection En&d"
msgstr "ÐÑÑановиÑи закÑнÑÐµÐ½Ð½Ñ Ð½Ð° кÑнеÑÑ Ð²Ð¸Ð´Ñ&леного"
-#: Menus.cpp:681
+#: Menus.cpp:650
msgid "Align Tracks To&gether"
msgstr "ÐиÑÑвнÑÑи доÑÑ&жки"
-#: Menus.cpp:683
+#: Menus.cpp:652
msgid "&Align Tracks"
msgstr "Ðи&ÑÑвнÑÑи доÑÑжки"
-#: Menus.cpp:692
+#: Menus.cpp:667
msgid "Ali&gn and Move Cursor"
msgstr "ÐиÑ&ÑвнÑÑи Ñа пеÑемÑÑÑиÑи кÑÑÑоÑ"
-#: Menus.cpp:699
+#: Menus.cpp:679
msgid "Synchronize MIDI with Audio"
msgstr "СинÑ
ÑонÑзÑваÑи MIDI Ð·Ñ Ð·Ð²Ñком"
-#: Menus.cpp:708
-msgid "Link Audio and Label Tracks"
-msgstr "ÐâÑднаÑи звÑк Ñ Ð¿Ð¾Ð·Ð½Ð°ÑиÑи доÑÑжки"
+#: Menus.cpp:686
+msgid "&Link Audio and Label Tracks"
+msgstr "&ÐâÑднаÑи звÑк Ñ Ð¿Ð¾Ð·Ð½Ð°ÑиÑи доÑÑжки"
-#: Menus.cpp:711
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "ÐодаÑи &познаÑÐºÑ Ð´Ð¾ видÑÐ»ÐµÐ½Ð¾Ñ Ð¾Ð±Ð»Ð°ÑÑÑ\tCtrl+B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr "ÐодаÑи познаÑÐºÑ Ð´Ð¾ ви&бÑÐ°Ð½Ð¾Ñ Ð¾Ð±Ð»Ð°ÑÑÑ"
-#: Menus.cpp:712
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "ÐодаÑи познаÑÐºÑ Ð½Ð° позиÑÑÑ &вÑдÑвоÑеннÑ\tCtrl+M"
+#: Menus.cpp:693
+msgid "Add Label At &Playback Position"
+msgstr "ÐодаÑи познаÑÐºÑ Ð½Ð° позиÑÑÑ &вÑдÑвоÑеннÑ"
-#: Menus.cpp:718
+#: Menus.cpp:702
msgid "S&ort tracks"
msgstr "Ðп&оÑÑдкÑваÑи доÑÑжки"
-#: Menus.cpp:719
+#: Menus.cpp:704
msgid "by &Start time"
msgstr "за &поÑаÑком вÑдлÑкÑ"
-#: Menus.cpp:721
+#: Menus.cpp:707
msgid "by &Name"
msgstr "за &назвоÑ"
-#: Menus.cpp:732
+#: Menus.cpp:721
msgid "&Generate"
msgstr "&СÑвоÑеннÑ"
-#: Menus.cpp:778 Menus.cpp:862 Menus.cpp:924
+#: Menus.cpp:766 Menus.cpp:851 Menus.cpp:921
msgid "Unsorted"
msgstr "Ðез певного поÑÑдкÑ"
-#: Menus.cpp:797
+#: Menus.cpp:788
msgid "Effe&ct"
msgstr "&ÐÑекÑи"
-#: Menus.cpp:801
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "ÐовÑоÑиÑи оÑÑаннÑй еÑекÑ\tCtrl+R"
-
-#: Menus.cpp:879
+#: Menus.cpp:872
msgid "&Analyze"
msgstr "&ÐналÑз"
-#: Menus.cpp:881
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr "ÐонÑÑаÑÑнÑÑÑÑ..."
+
+#: Menus.cpp:877
msgid "Plot Spectrum..."
msgstr "ÐобÑдÑваÑи гÑаÑÑк ÑпекÑÑÑ..."
-#: Menus.cpp:949 Menus.cpp:952
+#: Menus.cpp:944 Menus.cpp:947
msgid "&Help"
msgstr "&ÐовÑдка"
-#: Menus.cpp:955
+#: Menus.cpp:951
msgid "&About Audacity CleanSpeech..."
msgstr "&ÐÑо пÑогÑÐ°Ð¼Ñ Audacity CleanSpeech..."
-#: Menus.cpp:959
+#: Menus.cpp:957
msgid "&Show Welcome Message..."
msgstr "Ðо&казаÑи вÑÑалÑне повÑдомленнÑ..."
-#: Menus.cpp:960
-msgid "&Index..."
-msgstr "&ÐокажÑик..."
+#: Menus.cpp:958
+msgid "&Help..."
+msgstr "&ÐовÑдка..."
-#: Menus.cpp:961
+#: Menus.cpp:959
msgid "Show &Log..."
msgstr "ÐоказаÑи &жÑÑнал..."
-#: Menus.cpp:969
+#: Menus.cpp:965
msgid "&Screenshot Tools..."
msgstr "ÐнÑÑÑÑменÑи Ð´Ð»Ñ &ÐнÑмкÑв екÑанÑ..."
-#: Menus.cpp:972
+#: Menus.cpp:970
msgid "&Run Benchmark..."
msgstr "&ТеÑÑÑÐ²Ð°Ð½Ð½Ñ ÑвидкодÑÑ..."
-#: Menus.cpp:974
+#: Menus.cpp:975
msgid "&Audio Device Info..."
msgstr "ÐнÑоÑмаÑÑÑ Ð¿Ñо &аÑдÑо пÑиÑÑÑÑй..."
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
-msgstr ""
-"ЦиклÑÑний пеÑеÑ
Ñд мÑж панелÑми ÑнÑÑÑÑменÑÑв Ñа Ð¿Ð°Ð½ÐµÐ»Ð»Ñ Ð¿ÐµÑеглÑдÑ\tCtrl+Shift"
-"+F6"
-
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
-msgstr "ЦиклÑÑний пеÑеÑ
Ñд впеÑед мÑж доком, пеÑеглÑдом доÑÑжки\tCtrl+F6"
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
+msgstr "ÐовеÑнÑÑиÑÑ Ð· панелей ÑнÑÑÑÑменÑÑв до доÑÑжок"
#: Menus.cpp:987
-msgid "Selection Tool\tF1"
-msgstr "ÐидÑленнÑ\tF1"
+msgid "Move forward from toolbars to tracks"
+msgstr "ÐеÑейÑи впеÑед з панелей ÑнÑÑÑÑменÑÑв до доÑÑжок"
-#: Menus.cpp:988
-msgid "Envelope Tool\tF2"
-msgstr "ÐмÑна обвÑдноÑ\tF2"
+#: Menus.cpp:989 toolbars/ToolsToolBar.cpp:147 toolbars/ToolsToolBar.cpp:186
+msgid "Selection Tool"
+msgstr "ÐнÑÑÑÑÐ¼ÐµÐ½Ñ Ð²Ð¸Ð±Ð¾ÑÑ"
-#: Menus.cpp:989
-msgid "Draw Tool\tF3"
-msgstr "ÐмÑна обвÑдноÑ\tF3"
+#: Menus.cpp:990 toolbars/ToolsToolBar.cpp:148 toolbars/ToolsToolBar.cpp:187
+msgid "Envelope Tool"
+msgstr "ÐмÑна обвÑдноÑ"
-#: Menus.cpp:990
-msgid "Zoom Tool\tF4"
-msgstr "ÐаÑÑÑабÑваннÑ\tF4"
+#: Menus.cpp:991 toolbars/ToolsToolBar.cpp:151 toolbars/ToolsToolBar.cpp:188
+msgid "Draw Tool"
+msgstr "ÐмÑна обвÑдноÑ"
-#: Menus.cpp:991
-msgid "Time Shift Tool\tF5"
-msgstr "ÐÑÑв Ñ ÑаÑÑ\tF5"
+#: Menus.cpp:992 toolbars/ToolsToolBar.cpp:150 toolbars/ToolsToolBar.cpp:189
+msgid "Zoom Tool"
+msgstr "ÐаÑÑÑабÑваннÑ"
-#: Menus.cpp:992
-msgid "Multi Tool\tF6"
-msgstr "УнÑвеÑÑалÑний ÑнÑÑÑÑменÑ\tF6"
+#: Menus.cpp:993 toolbars/ToolsToolBar.cpp:149
+msgid "Time Shift Tool"
+msgstr "ÐÑÑв Ñ ÑаÑÑ"
-#: Menus.cpp:994
-msgid "Next Tool\tD"
-msgstr "ÐаÑÑÑпний ÑнÑÑÑÑменÑ\tD"
+#: Menus.cpp:994 toolbars/ToolsToolBar.cpp:191
+msgid "Multi Tool"
+msgstr "УнÑвеÑÑалÑний ÑнÑÑÑÑменÑ"
-#: Menus.cpp:995
-msgid "Previous Tool\tA"
-msgstr "ÐопеÑеднÑй ÑнÑÑÑÑменÑ\tA"
+#: Menus.cpp:996
+msgid "Next Tool"
+msgstr "ÐаÑÑÑпний ÑнÑÑÑÑменÑ"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
-msgstr "ÐÑдÑвоÑиÑи/ÐÑпиниÑи\tÐÑобÑл"
-
-#: Menus.cpp:998
-msgid "Stop\tS"
-msgstr "ÐÑпиниÑи\tS"
+msgid "Previous Tool"
+msgstr "ÐопеÑеднÑй ÑнÑÑÑÑменÑ"
#: Menus.cpp:999
-msgid "Pause\tP"
-msgstr "ÐÑизÑпиниÑи\tP"
+msgid "Play/Stop"
+msgstr "ÐÑдÑвоÑиÑи/ÐÑпиниÑи"
#: Menus.cpp:1000
-msgid "Record\tR"
-msgstr "ÐапиÑаÑи\tR"
+msgid "Play/Stop and Set Cursor"
+msgstr "ÐÑÑк/СÑоп Ñ Ð²ÑÑÐ°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ ÐºÑÑÑоÑа"
#: Menus.cpp:1001
-msgid "Record Append\tShift+R"
-msgstr "ÐолÑÑÐµÐ½Ð½Ñ Ð·Ð°Ð¿Ð¸ÑÑ\tShift+R"
+msgid "Play One Second"
+msgstr "ÐÑдÑвоÑиÑи 1 ÑекÑндÑ"
+
+#: Menus.cpp:1002
+msgid "Play To Selection"
+msgstr "ÐÑдÑвоÑиÑи вибÑане"
#: Menus.cpp:1003
-msgid "Play/Stop and Set Cursor\tShift+A"
-msgstr "ÐÑÑк/СÑоп Ñ Ð²ÑÑÐ°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ ÐºÑÑÑоÑа\tShift+A"
+msgid "Play Cut Preview"
+msgstr "ÐÑоÑлÑÑ
овÑÐ²Ð°Ð½Ð½Ñ Ð²Ð¸ÑÑзаного"
-#: Menus.cpp:1006
-msgid "Play One Second\t1"
-msgstr "ÐÑдÑвоÑиÑи 1 ÑекÑндÑ\t1"
+#: Menus.cpp:1005
+msgid "Selection to Start"
+msgstr "ÐибÑаÑи до поÑаÑÐºÑ Ð´Ð¾ÑÑжки"
-#: Menus.cpp:1007
-msgid "Play To Selection\tB"
-msgstr "ÐÑдÑвоÑиÑи видÑлене\tB"
+#: Menus.cpp:1006
+msgid "Selection to End"
+msgstr "ÐибÑаÑи вÑд кÑÑÑоÑа до кÑнÑÑ"
#: Menus.cpp:1008
-msgid "Play Looped\tL"
-msgstr "ÐÑдÑвоÑÑваÑи Ñ ÑиклÑ\tL"
+msgid "DeleteKey"
+msgstr "ÐлавÑÑа вилÑÑеннÑ"
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr "ÐÑдÑвоÑиÑи Ñ ÑиклÑ\tShift+ÐÑобÑл"
+#: Menus.cpp:1012
+msgid "DeleteKey2"
+msgstr "ÐÑÑга клавÑÑа вилÑÑеннÑ"
-#: Menus.cpp:1010
-msgid "Play Cut Preview\tC"
-msgstr "ÐÑоÑлÑÑ
овÑÐ²Ð°Ð½Ð½Ñ Ð²Ð¸ÑÑзаного\tC"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
+msgstr "ÐоÑоÑкий пеÑеÑ
Ñд лÑвоÑÑÑ Ð¿Ñд ÑÐ°Ñ Ð²ÑдÑвоÑеннÑ"
-#: Menus.cpp:1015
-msgid "Selection to Start\tShift+Home"
-msgstr "ÐидÑлиÑи до поÑаÑÐºÑ Ð´Ð¾ÑÑжки\tShift+Home"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
+msgstr "ÐоÑоÑкий пеÑеÑ
Ñд пÑавоÑÑÑ Ð¿Ñд ÑÐ°Ñ Ð²ÑдÑвоÑеннÑ"
-#: Menus.cpp:1016
-msgid "Selection to End\tShift+End"
-msgstr "ÐидÑлиÑи вÑд кÑÑÑоÑа до кÑнÑÑ\tShift+End"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
+msgstr "Ðовгий пеÑеÑ
Ñд лÑвоÑÑÑ Ð¿Ñд ÑÐ°Ñ Ð²ÑдÑвоÑеннÑ"
-#: Menus.cpp:1018
-msgid "DeleteKey\tBackspace"
-msgstr "ÐлавÑÑа вилÑÑеннÑ\tBackspace"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
+msgstr "Ðовгий пеÑеÑ
Ñд пÑавоÑÑÑ Ð¿Ñд ÑÐ°Ñ Ð²ÑдÑвоÑеннÑ"
+
+#: Menus.cpp:1026
+msgid "Move Focus to Previous Track"
+msgstr "ÐеÑемÑÑÑиÑи ÑокÑÑ Ð½Ð° попеÑÐµÐ´Ð½Ñ Ð´Ð¾ÑÑжкÑ"
+
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
+msgstr "ÐеÑемÑÑÑиÑи ÑокÑÑ Ð½Ð° попеÑÐµÐ´Ð½Ñ Ñ Ð²Ð¸Ð±ÑаÑи"
-#: Menus.cpp:1023
-msgid "DeleteKey2\tDelete"
-msgstr "ÐÑÑга клавÑÑа вилÑÑеннÑ\tDelete"
+#: Menus.cpp:1028
+msgid "Move Focus to Next Track"
+msgstr "ÐеÑемÑÑÑиÑи ÑокÑÑ Ð½Ð° наÑÑÑÐ¿Ð½Ñ Ð´Ð¾ÑÑжкÑ"
#: Menus.cpp:1029
-msgid "Seek left short period during playback\tLeft"
-msgstr "ÐÑд ÑÐ°Ñ Ð¿ÑогÑÐ°Ð²Ð°Ð½Ð½Ñ Ð¿ÐµÑеÑ
одиÑи на коÑоÑкий вÑдÑÑзок лÑвоÑÑÑ\tÐÑвоÑÑÑ"
+msgid "Move Focus to Next and Select"
+msgstr "ÐеÑемÑÑÑиÑи ÑокÑÑ Ð½Ð° наÑÑÑÐ¿Ð½Ñ Ñ Ð²Ð¸Ð±ÑаÑи"
-#: Menus.cpp:1030
-msgid "Seek right short period during playback\tRight"
-msgstr "ÐÑд ÑÐ°Ñ Ð¿ÑогÑÐ°Ð²Ð°Ð½Ð½Ñ Ð¿ÐµÑеÑ
одиÑи на коÑоÑкий вÑдÑÑзок пÑавоÑÑÑ\tÐÑавоÑÑÑ"
+#: Menus.cpp:1030 Menus.cpp:1031
+msgid "Toggle Focused Track"
+msgstr "ÐеÑемкнÑÑи доÑÑÐ¶ÐºÑ Ð· ÑокÑÑом"
-#: Menus.cpp:1031
-msgid "Seek left long period during playback\tShift+Left"
-msgstr "ÐÑд ÑÐ°Ñ Ð¿ÑогÑÐ°Ð²Ð°Ð½Ð½Ñ Ð¿ÐµÑеÑ
одиÑи на довгий вÑдÑÑзок лÑвоÑÑÑ\tShift+ÐÑвоÑÑÑ"
+#: Menus.cpp:1033
+msgid "Cursor Left"
+msgstr "ÐÑÑÑÐ¾Ñ Ð»ÑвоÑÑÑ"
-#: Menus.cpp:1032
-msgid "Seek right long period during playback\tShift+Right"
-msgstr "ÐÑд ÑÐ°Ñ Ð¿ÑогÑÐ°Ð²Ð°Ð½Ð½Ñ Ð¿ÐµÑеÑ
одиÑи на довгий вÑдÑÑзок пÑавоÑÑÑ \tShift+ÐÑавоÑÑÑ"
+#: Menus.cpp:1034
+msgid "Cursor Right"
+msgstr "ÐÑÑÑÐ¾Ñ Ð¿ÑавоÑÑÑ"
+
+#: Menus.cpp:1035
+msgid "Cursor Short Jump Left"
+msgstr "ÐоÑоÑкий ÑÑÑибок кÑÑÑоÑа лÑвоÑÑÑ"
#: Menus.cpp:1036
-msgid "Move Focus to Previous Track\tUp"
-msgstr "ÐеÑемÑÑÑиÑи ÑокÑÑ Ð½Ð° попеÑÐµÐ´Ð½Ñ Ð´Ð¾ÑÑжкÑ\tÐогоÑи"
+msgid "Cursor Short Jump Right"
+msgstr "ÐоÑоÑкий ÑÑÑибок кÑÑÑоÑа пÑавоÑÑÑ"
#: Menus.cpp:1037
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
-msgstr "ÐеÑемÑÑÑиÑи ÑокÑÑ Ð½Ð° попеÑÐµÐ´Ð½Ñ Ñа змÑниÑи видÑлене\tShift+ÐогоÑи"
+msgid "Cursor Long Jump Left"
+msgstr "Ðовгий ÑÑÑибок кÑÑÑоÑа лÑвоÑÑÑ"
#: Menus.cpp:1038
-msgid "Move Focus to Next Track\tDown"
-msgstr "ÐеÑемÑÑÑиÑи ÑокÑÑ Ð½Ð° наÑÑÑÐ¿Ð½Ñ Ð´Ð¾ÑÑжкÑ\tÐонизÑ"
-
-#: Menus.cpp:1039
-msgid "Move Focus to Next and Change Selection\tShift+Down"
-msgstr "ÐеÑемÑÑÑиÑи ÑокÑÑ Ð½Ð° наÑÑÑÐ¿Ð½Ñ Ñа змÑниÑи видÑленнÑ\tShift+ÐонизÑ"
+msgid "Cursor Long Jump Right"
+msgstr "Ðовгий ÑÑÑибок кÑÑÑоÑа пÑавоÑÑÑ"
#: Menus.cpp:1040
-msgid "Toggle Focused Track\tReturn"
-msgstr "ÐеÑемкнÑÑи доÑÑÐ¶ÐºÑ Ð· ÑокÑÑом\tReturn"
+msgid "Selection Extend Left"
+msgstr "РозÑÑгнÑÑи вибÑане лÑвоÑÑÑ"
#: Menus.cpp:1041
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr "ÐеÑемкнÑÑи ÑокÑÑ Ð½Ð° доÑÑжкÑ\tNUMPAD_ENTER"
+msgid "Selection Extend Right"
+msgstr "РозÑÑгнÑÑи вибÑане пÑавоÑÑÑ"
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
-msgstr "ÐеÑемкнÑÑи ÑокÑÑ Ð´Ð¾ÑÑжки\tCtrl+ÐÑобÑл"
+#: Menus.cpp:1043
+msgid "Set (or Extend) Left Selection"
+msgstr "ÐÑÑановиÑи (або ÐоÑиÑиÑи) пÑаве вибÑане"
#: Menus.cpp:1044
-msgid "Cursor Left\tLeft"
-msgstr "ÐÑÑÑÐ¾Ñ Ð»ÑвоÑÑÑ\tÐÑвоÑÑÑ"
-
-#: Menus.cpp:1045
-msgid "Cursor Right\tRight"
-msgstr "ÐÑÑÑÐ¾Ñ Ð¿ÑавоÑÑÑ\tÐÑавоÑÑÑ"
+msgid "Set (or Extend) Right Selection"
+msgstr "ÐÑÑановиÑи (або ÐоÑиÑиÑи) пÑÐ°Ð²Ñ Ð¼ÑÑÐºÑ Ð²Ð¸Ð±Ð¾ÑÑ"
#: Menus.cpp:1046
-msgid "Cursor Short Jump Left\t,"
-msgstr "ÐоÑоÑкий ÑÑÑибок кÑÑÑоÑа лÑвоÑÑÑ\t,"
+msgid "Selection Contract Left"
+msgstr "СÑÑгнÑÑи вибÑÑ Ð»ÑвоÑÑÑ"
#: Menus.cpp:1047
-msgid "Cursor Short Jump Right\t."
-msgstr "ÐоÑоÑкий ÑÑÑибок кÑÑÑоÑа пÑавоÑÑÑ\t."
-
-#: Menus.cpp:1048
-msgid "Cursor Long Jump Left\tShift+,"
-msgstr "Ðовгий ÑÑÑибок кÑÑÑоÑа лÑвоÑÑÑ\tShift+,"
+msgid "Selection Contract Right"
+msgstr "СÑÑгнÑÑи вибÑÑ Ð¿ÑавоÑÑÑ"
#: Menus.cpp:1049
-msgid "Cursor Long Jump Right\tShift+."
-msgstr "Ðовгий ÑÑÑибок кÑÑÑоÑа пÑавоÑÑÑ\tShift+."
+msgid "Change pan on focused track"
+msgstr "ÐмÑниÑи пеÑеглÑд на доÑÑжÑÑ Ñ ÑокÑÑÑ"
+
+#: Menus.cpp:1050
+msgid "Pan left on focused track"
+msgstr "ÐаноÑама лÑвоÑÑÑ Ð½Ð° доÑÑжÑÑ Ñ ÑокÑÑÑ"
#: Menus.cpp:1051
-msgid "Selection Extend Left\tShift+Left"
-msgstr "РозÑÑгнÑÑи видÑÐ»ÐµÐ½Ð½Ñ Ð»ÑвоÑÑÑ\tShift+СÑÑÑлка лÑвоÑÑÑ"
+msgid "Pan right on focused track"
+msgstr "ÐаноÑама пÑавоÑÑÑ Ð½Ð° доÑÑжÑÑ Ñ ÑокÑÑÑ"
#: Menus.cpp:1052
-msgid "Selection Extend Right\tShift+Right"
-msgstr "РозÑÑгнÑÑи видÑÐ»ÐµÐ½Ð½Ñ Ð¿ÑавоÑÑÑ\tShift+СÑÑÑлка пÑавоÑÑÑ"
+msgid "Change gain on focused track"
+msgstr "ÐмÑниÑи пÑдÑÐ¸Ð»ÐµÐ½Ð½Ñ Ð´Ð»Ñ Ð°ÐºÑÐ¸Ð²Ð½Ð¾Ñ Ð´Ð¾ÑÑжки"
+
+#: Menus.cpp:1053
+msgid "Increase gain on focused track"
+msgstr "ÐбÑлÑÑиÑи пÑдÑÐ¸Ð»ÐµÐ½Ð½Ñ Ð´Ð»Ñ Ð°ÐºÑÐ¸Ð²Ð½Ð¾Ñ Ð´Ð¾ÑÑжки"
#: Menus.cpp:1054
-msgid "Set (or Extend) Left Selection"
-msgstr "ÐÑÑановиÑи (або ÐоÑиÑиÑи) пÑаве видÑленнÑ"
+msgid "Decrease gain on focused track"
+msgstr "ÐменÑиÑи пÑдÑÐ¸Ð»ÐµÐ½Ð½Ñ Ð´Ð»Ñ Ð°ÐºÑÐ¸Ð²Ð½Ð¾Ñ Ð´Ð¾ÑÑжки"
#: Menus.cpp:1055
-msgid "Set (or Extend) Right Selection"
-msgstr "ÐÑÑановиÑи (або ÐоÑиÑиÑи) пÑÐ°Ð²Ñ Ð¼ÑÑÐºÑ Ð²Ð¸Ð´ÑленнÑ"
+msgid "Open menu on focused track"
+msgstr "ÐÑдкÑиÑи Ð¼ÐµÐ½Ñ Ð´Ð»Ñ Ð¿Ð¾ÑоÑÐ½Ð¾Ñ Ð´Ð¾ÑÑжки"
+
+#: Menus.cpp:1056
+msgid "Mute/Unmute focused track"
+msgstr "ÐаглÑÑиÑи/озвÑÑиÑи поÑоÑÐ½Ñ Ð´Ð¾ÑÑжкÑ"
#: Menus.cpp:1057
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "СÑÑгнÑÑи видÑÐ»ÐµÐ½Ð½Ñ Ð»ÑвоÑÑÑ\tCtrl+Shift+ÐÑавоÑÑÑ"
+msgid "Solo/Unsolo focused track"
+msgstr "УвÑмкнÑÑи або вимкнÑÑи Ñоло Ð´Ð»Ñ Ð°ÐºÑÐ¸Ð²Ð½Ð¾Ñ Ð´Ð¾ÑÑжки"
#: Menus.cpp:1058
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "СÑÑгнÑÑи видÑÐ»ÐµÐ½Ð½Ñ Ð¿ÑавоÑÑÑ\tCtrl+Shift+ÐÑвоÑÑÑ"
+msgid "Close focused track"
+msgstr "ÐакÑиÑи акÑÐ¸Ð²Ð½Ñ Ð´Ð¾ÑÑжкÑ"
#: Menus.cpp:1060
-msgid "Change pan on focused track\tShift+P"
-msgstr "ÐмÑниÑи пеÑеглÑд на доÑÑжÑÑ Ñ ÑокÑÑÑ\tShift+P"
+msgid "Snap To On"
+msgstr "ÐÑив'ÑÐ·ÐºÑ ÑвÑмкнено"
#: Menus.cpp:1061
-msgid "Pan left on focused track\tAlt+Shift+Left"
-msgstr "ÐаноÑама лÑвоÑÑÑ Ð½Ð° доÑÑжÑÑ Ñ ÑокÑÑÑ\tAlt+Shift+ÐÑвоÑÑÑ"
-
-#: Menus.cpp:1062
-msgid "Pan right on focused track\tAlt+Shift+Right"
-msgstr "ÐаноÑама пÑавоÑÑÑ Ð½Ð° доÑÑжÑÑ Ñ ÑокÑÑÑ\tAlt+Shift+ÐÑавоÑÑÑ"
-
-#: Menus.cpp:1063
-msgid "Change gain on focused track\tShift+G"
-msgstr "ÐмÑниÑи пÑдÑÐ¸Ð»ÐµÐ½Ð½Ñ Ð´Ð»Ñ Ð°ÐºÑÐ¸Ð²Ð½Ð¾Ñ Ð´Ð¾ÑÑжки\tShift+G"
-
-#: Menus.cpp:1064
-msgid "Increase gain on focused track\tAlt+Shift+Up"
-msgstr "ÐбÑлÑÑиÑи пÑдÑÐ¸Ð»ÐµÐ½Ð½Ñ Ð´Ð»Ñ Ð°ÐºÑÐ¸Ð²Ð½Ð¾Ñ Ð´Ð¾ÑÑжки\tAlt+Shift+ÐогоÑи"
+msgid "Snap To Off"
+msgstr "ÐÑив'ÑÐ·ÐºÑ Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð¾"
#: Menus.cpp:1065
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
-msgstr "ÐменÑиÑи пÑдÑÐ¸Ð»ÐµÐ½Ð½Ñ Ð´Ð»Ñ Ð°ÐºÑÐ¸Ð²Ð½Ð¾Ñ Ð´Ð¾ÑÑжки\tAlt+Shift+ÐонизÑ"
-
-#: Menus.cpp:1066
-msgid "Open menu on focused track\tShift+M"
-msgstr "ÐÑдкÑиÑи Ð¼ÐµÐ½Ñ Ð´Ð»Ñ Ð¿Ð¾ÑоÑÐ½Ð¾Ñ Ð´Ð¾ÑÑжки\tShift+M"
+msgid "Full screen on/off"
+msgstr "УвÑмкнÑÑи/ÐимкнÑÑи повноекÑанний Ñежим"
#: Menus.cpp:1067
-msgid "Mute/Unmute focused track\tShift+U"
-msgstr "ÐаглÑÑиÑи/озвÑÑиÑи поÑоÑÐ½Ñ Ð´Ð¾ÑÑжкÑ\tShift+U"
+msgid "Adjust output gain"
+msgstr "СкоÑигÑваÑи пÑдÑÐ¸Ð»ÐµÐ½Ð½Ñ Ð½Ð° виÑ
одÑ"
#: Menus.cpp:1068
-msgid "Solo/Unsolo focused track\tShift+S"
-msgstr "УвÑмкнÑÑи або вимкнÑÑи Ñоло Ð´Ð»Ñ Ð°ÐºÑÐ¸Ð²Ð½Ð¾Ñ Ð´Ð¾ÑÑжки\tShift+S"
+msgid "Increase output gain"
+msgstr "ÐбÑлÑÑиÑи пÑдÑÐ¸Ð»ÐµÐ½Ð½Ñ Ð½Ð° виÑ
одÑ"
#: Menus.cpp:1069
-msgid "Close focused track\tShift+C"
-msgstr "ÐакÑиÑи акÑÐ¸Ð²Ð½Ñ Ð´Ð¾ÑÑжкÑ\tShift+C"
+msgid "Decrease output gain"
+msgstr "ÐменÑиÑи пÑдÑÐ¸Ð»ÐµÐ½Ð½Ñ Ð½Ð° виÑ
одÑ"
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr "СкоÑигÑваÑи пÑдÑÐ¸Ð»ÐµÐ½Ð½Ñ Ð½Ð° вÑ
одÑ"
#: Menus.cpp:1071
-msgid "Snap To On"
-msgstr "ÐÑив'ÑÐ·ÐºÑ ÑвÑмкнено"
+msgid "Increase input gain"
+msgstr "ÐбÑлÑÑиÑи пÑдÑÐ¸Ð»ÐµÐ½Ð½Ñ Ð½Ð° вÑ
одÑ"
#: Menus.cpp:1072
-msgid "Snap To Off"
-msgstr "ÐÑив'ÑÐ·ÐºÑ Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð¾"
+msgid "Decrease input gain"
+msgstr "ÐменÑиÑи пÑдÑÐ¸Ð»ÐµÐ½Ð½Ñ Ð½Ð° вÑ
одÑ"
-#: Menus.cpp:1073
-msgid "Full screen on/off\tF11"
-msgstr "УвÑмкнÑÑи/ÐимкнÑÑи повноекÑанний Ñежим\tF11"
+#: Menus.cpp:1074
+msgid "Adjust input source"
+msgstr "СкоÑигÑваÑи джеÑело вÑ
Ñдного ÑигналÑ"
#. i18n-hint: This is the name of the menu item on Mac OS X only
-#: Menus.cpp:1155
+#: Menus.cpp:1161
msgid "Open Recent"
msgstr "ÐÑдкÑиÑи недавнÑ"
#. i18n-hint: This is the name of the menu item on Windows and Linux
-#: Menus.cpp:1158
+#: Menus.cpp:1164
msgid "Recent &Files"
msgstr "ÐÐµÐ´Ð°Ð²Ð½Ñ &Ñайли"
-#: Menus.cpp:1207
+#: Menus.cpp:1182
#, c-format
msgid "&Undo %s"
msgstr "Ð&еÑнÑÑи \"%s\""
-#: Menus.cpp:1233
+#: Menus.cpp:1208
msgid "Can't Undo"
msgstr "Ðеможливо веÑнÑÑи"
-#: Menus.cpp:1242
+#: Menus.cpp:1217
#, c-format
msgid "&Redo %s"
msgstr "ÐовÑ&оÑиÑи \"%s\""
-#: Menus.cpp:1248
+#: Menus.cpp:1223
msgid "Can't Redo"
msgstr "Ðеможливо повÑоÑиÑи"
-#: Menus.cpp:1863
+#: Menus.cpp:1858
msgid "Sort By Time"
msgstr "ÐпоÑÑдкÑваÑи за ÑаÑом"
-#: Menus.cpp:1863
+#: Menus.cpp:1858
msgid "Tracks sorted by time"
msgstr "ÐоÑÑжки впоÑÑÐ´ÐºÐ¾Ð²Ð°Ð½Ñ Ð·Ð° ÑаÑом"
-#: Menus.cpp:1889
+#: Menus.cpp:1884
msgid "Sort By Name"
msgstr "ÐпоÑÑдкÑваÑи за назвоÑ"
-#: Menus.cpp:1889
+#: Menus.cpp:1884
msgid "Tracks sorted by name"
msgstr "ÐоÑÑжки впоÑÑÐ´ÐºÐ¾Ð²Ð°Ð½Ñ Ð·Ð° назвоÑ"
-#: Menus.cpp:2040
+#: Menus.cpp:2035
msgid "Set Left Selection Bound"
-msgstr "ÐÑÑановиÑи лÑвий обмежÑÐ²Ð°Ñ Ð²Ð¸Ð´ÑÐ»ÐµÐ½Ð¾Ñ Ð¾Ð±Ð»Ð°ÑÑÑ"
+msgstr "ÐÑÑановиÑи лÑвий обмежÑÐ²Ð°Ñ Ð²Ð¸Ð±ÑÐ°Ð½Ð¾Ñ Ð¾Ð±Ð»Ð°ÑÑÑ"
-#: Menus.cpp:2076
+#: Menus.cpp:2071
msgid "Set Right Selection Bound"
-msgstr "ÐÑÑановиÑи пÑÐ°Ð²Ñ ÑоÑÐºÑ Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ Ð²Ð¸Ð´Ñленого"
+msgstr "ÐÑÑановиÑи пÑÐ°Ð²Ñ ÑоÑÐºÑ Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ Ð²Ð¸Ð±Ñаного"
-#: Menus.cpp:2346
+#: Menus.cpp:2396
msgid "You must select a track first."
-msgstr "СпоÑаÑÐºÑ Ð²Ð¸Ð´ÑлÑÑÑ Ð´Ð¾ÑÑжкÑ."
+msgstr "СпоÑаÑÐºÑ Ð²Ð¸Ð±ÐµÑÑÑÑ Ð´Ð¾ÑÑжкÑ."
-#: Menus.cpp:2381
+#: Menus.cpp:2431
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "ÐовÑоÑиÑи %s\tCtrl+R"
+msgid "Repeat %s"
+msgstr "ÐовÑоÑиÑи %s"
-#: Menus.cpp:2524
+#: Menus.cpp:2572
msgid "There are no label tracks to export."
msgstr "ÐÐµÐ¼Ð°Ñ Ð´Ð¾ÑÑжок з познаÑками Ð´Ð»Ñ ÐµÐºÑпоÑÑÑ."
-#: Menus.cpp:2619
+#: Menus.cpp:2667
msgid "Export MIDI As:"
msgstr "ÐкÑпоÑÑÑваÑи MIDI Ñк:"
-#: Menus.cpp:2623
+#: Menus.cpp:2671
msgid "MIDI file (*.mid)|*.mid|Allegro file (*.gro)|*.gro"
msgstr "Файл MIDI (*.mid)|*.mid|Файл Allegro (*.gro)|*.gro"
-#: Menus.cpp:2655
+#: Menus.cpp:2703
msgid ""
"You have selected a filename with an unrecognized file extension.\n"
"Do you want to continue?"
@@ -2834,222 +2877,212 @@ msgstr ""
"Ðи обÑали Ð½Ð°Ð·Ð²Ñ Ñайла з незÑозÑмÑлим пÑогÑÐ°Ð¼Ñ ÑÑÑÑкÑом.\n"
"ÐажаÑÑе пÑодовжиÑи?"
-#: Menus.cpp:2656
+#: Menus.cpp:2704
msgid "Export MIDI"
msgstr "ÐкÑпоÑÑÑваÑи до MIDI"
-#: Menus.cpp:2726
+#: Menus.cpp:2782
msgid "Nothing to undo"
msgstr "ÐÐµÐ¼Ð°Ñ Ñо ÑкаÑÑваÑи"
-#: Menus.cpp:2746
+#: Menus.cpp:2803
msgid "Nothing to redo"
msgstr "ÐÐµÐ¼Ð°Ñ Ñо повÑоÑиÑи"
-#: Menus.cpp:2851 TrackPanel.cpp:593 toolbars/EditToolBar.cpp:133
+#: Menus.cpp:2910 TrackPanel.cpp:653 toolbars/EditToolBar.cpp:130
+#: toolbars/EditToolBar.cpp:190
msgid "Cut"
msgstr "ÐиÑÑзаÑи"
-#: Menus.cpp:2851
+#: Menus.cpp:2910
msgid "Cut to the clipboard"
msgstr "ÐиÑÑзаÑи Ñ Ð±ÑÑеÑ"
-#: Menus.cpp:2891
+#: Menus.cpp:2949
msgid "Split Cut"
msgstr "ÐиÑÑзаÑи без з'ÑднаннÑ"
-#: Menus.cpp:2891
+#: Menus.cpp:2949
msgid "Split-cut to the clipboard"
msgstr "ÐиÑÑзаÑи без ÑклеÑÐ²Ð°Ð½Ð½Ñ Ñ Ð±ÑÑеÑ"
-#: Menus.cpp:2956 Menus.cpp:3028 Menus.cpp:3220 TrackPanel.cpp:595
-#: toolbars/EditToolBar.cpp:137
+#: Menus.cpp:3015 Menus.cpp:3080 Menus.cpp:3161 Menus.cpp:3360
+#: TrackPanel.cpp:655 toolbars/EditToolBar.cpp:134
+#: toolbars/EditToolBar.cpp:192
msgid "Paste"
msgstr "ÐÑÑавиÑи"
-#: Menus.cpp:2956
+#: Menus.cpp:3015
msgid "Pasted text from the clipboard"
msgstr "ТекÑÑ Ð²ÑÑавлений з бÑÑеÑÑ Ð¾Ð±Ð¼ÑнÑ"
-#: Menus.cpp:3028 Menus.cpp:3220
+#: Menus.cpp:3080 Menus.cpp:3161 Menus.cpp:3360
msgid "Pasted from the clipboard"
msgstr "ÐÑÑавка з бÑÑеÑÑ"
-#: Menus.cpp:3094
+#: Menus.cpp:3229
msgid "Pasting one type of track into another is not allowed."
-msgstr "ÐÑÑавка ÑÑагменÑÑв доÑÑжок одного ÑÐ¸Ð¿Ñ Ð´Ð¾ доÑÑжок ÑнÑого Ñ Ð½ÐµÐ¿ÑипÑÑÑимоÑ."
+msgstr ""
+"ÐÑÑавка ÑÑагменÑÑв доÑÑжок одного ÑÐ¸Ð¿Ñ Ð´Ð¾ доÑÑжок ÑнÑого Ñ Ð½ÐµÐ¿ÑипÑÑÑимоÑ."
-#: Menus.cpp:3106
+#: Menus.cpp:3241
msgid "Copying stereo audio into a mono track is not allowed."
msgstr "ÐопÑÑÐ²Ð°Ð½Ð½Ñ ÑÑеÑео-звÑÐºÑ Ñ Ð¼Ð¾Ð½Ð¾-доÑÑÐ¶ÐºÑ Ð½ÐµÐ¿ÑипÑÑÑиме."
-#: Menus.cpp:3256 toolbars/EditToolBar.cpp:139
+#: Menus.cpp:3396 toolbars/EditToolBar.cpp:193
msgid "Trim"
msgstr "ÐбÑÑзаÑи"
-#: Menus.cpp:3256
+#: Menus.cpp:3396
msgid "Trim file to selection"
-msgstr "ÐалиÑиÑи Ñ ÑÐ°Ð¹Ð»Ñ Ð»Ð¸Ñе видÑлене"
+msgstr "ÐалиÑиÑи Ñ ÑÐ°Ð¹Ð»Ñ Ð»Ð¸Ñе вибÑане"
-#: Menus.cpp:3285
+#: Menus.cpp:3425
#, c-format
msgid "Split-deleted %.2f seconds at t=%.2f"
msgstr "ÐилÑÑено ÑоздÑленнÑм %.2f ÑекÑнд поÑинаÑÑи з t=%.2f"
-#: Menus.cpp:3288
+#: Menus.cpp:3428
msgid "Split Delete"
msgstr "РоздÑлиÑи вилÑÑеннÑм"
-#: Menus.cpp:3309
+#: Menus.cpp:3449
#, c-format
msgid "Disjoined %.2f seconds at t=%.2f"
msgstr "Роз'Ñднано %.2f ÑекÑнд з ÑаÑÑ t=%.2f"
-#: Menus.cpp:3312
+#: Menus.cpp:3452
msgid "Disjoin"
msgstr "Роз'ÑднаÑи"
-#: Menus.cpp:3333
+#: Menus.cpp:3473
#, c-format
msgid "Joined %.2f seconds at t=%.2f"
msgstr "Ð'Ñднано %.2f ÑекÑнд з ÑаÑÑ t=%.2f"
-#: Menus.cpp:3336
+#: Menus.cpp:3476
msgid "Join"
msgstr "Ð'ÑднаÑи"
-#: Menus.cpp:3355
+#: Menus.cpp:3495
#, c-format
msgid "Silenced selected tracks for %.2f seconds at %.2f"
-msgstr "У видÑÐ»ÐµÐ½Ñ Ð´Ð¾ÑÑжки запиÑано %.2f ÑекÑнд ÑиÑÑ Ð· %.2f"
+msgstr "У вибÑанÑй дÑлÑнÑÑ Ð´Ð¾ÑÑжки запиÑано %.2f ÑекÑнд ÑиÑÑ Ð· %.2f"
-#: Menus.cpp:3357 toolbars/EditToolBar.cpp:141
+#: Menus.cpp:3497 toolbars/EditToolBar.cpp:194
msgid "Silence"
msgstr "СÑвоÑиÑи ÑиÑÑ"
-#: Menus.cpp:3391
+#: Menus.cpp:3527
msgid "Duplicate"
msgstr "ÐÑблÑваÑи"
-#: Menus.cpp:3391
+#: Menus.cpp:3527
msgid "Duplicated"
msgstr "ÐÑодÑблÑовано"
-#: Menus.cpp:3410
+#: Menus.cpp:3546
msgid "Cut Labels"
msgstr "ÐиÑÑзаÑи познаÑки"
-#: Menus.cpp:3410
+#: Menus.cpp:3546
msgid "Cut labeled regions to the clipboard"
msgstr "ÐиÑÑзаÑи познаÑÐµÐ½Ñ Ð¾Ð±Ð»Ð°ÑÑÑ Ð´Ð¾ бÑÑеÑÑ"
-#: Menus.cpp:3424
+#: Menus.cpp:3560
msgid "SplitCut labeled regions to the clipboard"
msgstr "ÐиÑÑзаÑи без ÑклеÑÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾Ð·Ð½Ð°ÑÐµÐ½Ñ Ð¾Ð±Ð»Ð°ÑÑÑ Ñ Ð±ÑÑеÑ"
-#: Menus.cpp:3425
+#: Menus.cpp:3561
msgid "Split Cut Labels"
msgstr "РоздÑлиÑи виÑÑзаннÑм за познаÑками"
-#: Menus.cpp:3439
+#: Menus.cpp:3575
msgid "Copied labeled regions to the clipboard"
msgstr "ÐопÑÑÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾Ð·Ð½Ð°ÑениÑ
облаÑÑей Ñ Ð±ÑÑеÑ"
-#: Menus.cpp:3439
+#: Menus.cpp:3575
msgid "Copy Labels"
msgstr "ÐопÑÑваÑи познаÑки"
-#: Menus.cpp:3451
+#: Menus.cpp:3587
msgid "Delete Labels"
msgstr "ÐилÑÑиÑи познаÑки"
-#: Menus.cpp:3451
+#: Menus.cpp:3587
msgid "Deleted labeled regions"
msgstr "ÐилÑÑÐµÐ½Ñ Ð¿Ð¾Ð·Ð½Ð°ÑÐµÐ½Ñ Ð¾Ð±Ð»Ð°ÑÑÑ"
-#: Menus.cpp:3463
+#: Menus.cpp:3599
msgid "Split Delete Labels"
msgstr "РоздÑлиÑи визнаÑеннÑм за познаÑками"
-#: Menus.cpp:3463
+#: Menus.cpp:3599
msgid "Split Deleted labeled regions"
msgstr "ÐилÑÑÐµÐ½Ñ ÑоздÑленнÑм познаÑÐµÐ½Ñ Ð¾Ð±Ð»Ð°ÑÑÑ"
-#: Menus.cpp:3475
+#: Menus.cpp:3611
msgid "Silence Labels"
msgstr "ÐаповниÑи ÑиÑÐµÑ Ð¿Ð¾Ð·Ð½Ð°ÑÐµÐ½Ñ Ð¾Ð±Ð»Ð°ÑÑÑ"
-#: Menus.cpp:3475
+#: Menus.cpp:3611
msgid "Silenced labeled regions"
msgstr "ÐÐ°Ð¿Ð¾Ð²Ð½ÐµÐ½Ñ ÑиÑÐµÑ Ð¿Ð¾Ð·Ð½Ð°ÑÐµÐ½Ñ Ð¾Ð±Ð»Ð°ÑÑÑ"
-#: Menus.cpp:3487
+#: Menus.cpp:3623
msgid "Split Labels"
msgstr "РоздÑлиÑи за познаÑками"
-#: Menus.cpp:3487
+#: Menus.cpp:3623
msgid "Split labeled regions"
msgstr "ÐÑдокÑемиÑи познаÑÐµÐ½Ñ Ð¾Ð±Ð»Ð°ÑÑÑ"
-#: Menus.cpp:3499
+#: Menus.cpp:3635
msgid "Join Labels"
msgstr "Ð'ÑднаÑи познаÑки"
-#: Menus.cpp:3499
+#: Menus.cpp:3635
msgid "Joined labeled regions"
msgstr "Ð'ÑднаÑи познаÑÐµÐ½Ñ Ð¾Ð±Ð»Ð°ÑÑÑ"
-#: Menus.cpp:3511
+#: Menus.cpp:3647
msgid "Disjoin Labels"
msgstr "Роз'ÑднаÑи познаÑки"
-#: Menus.cpp:3511
+#: Menus.cpp:3647
msgid "Disjoined labeled regions"
msgstr "ÐÑд'ÑÐ´Ð½Ð°Ð½Ñ Ð¿Ð¾Ð·Ð½Ð°ÑÐµÐ½Ñ Ð¾Ð±Ð»Ð°ÑÑÑ"
-#: Menus.cpp:3533 TrackPanel.cpp:6173
+#: Menus.cpp:3669 TrackPanel.cpp:6255
msgid "Split"
msgstr "РоздÑлиÑи"
-#: Menus.cpp:3627
+#: Menus.cpp:3758
msgid "Split New"
msgstr "ÐÑдокÑемиÑи Ñ Ð½Ð¾Ð²Ñ Ð´Ð¾ÑÑжкÑ"
-#: Menus.cpp:3627
+#: Menus.cpp:3758
msgid "Split to new track"
msgstr "ÐÑдокÑемиÑи Ñ Ð½Ð¾Ð²Ñ Ð´Ð¾ÑÑжкÑ"
-#: Menus.cpp:3710
+#: Menus.cpp:3840
msgid "Split at labels"
msgstr "РоздÑлиÑи за познаÑками"
-#: Menus.cpp:4011
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "ÐÐ»Ñ Ð¿Ð¾Ð±Ñдови ÑпекÑÑогÑами, ÑÑÑ Ð²Ð¸Ð±ÑÐ°Ð½Ñ Ð´Ð¾ÑÑжки Ð¿Ð¾Ð²Ð¸Ð½Ð½Ñ Ð¼Ð°Ñи Ð¾Ð´Ð½Ð°ÐºÐ¾Ð²Ñ ÑаÑÑоÑÑ."
-
-#: Menus.cpp:4037
-#, c-format
-msgid ""
-"Too much audio was selected. Only the first %.1f seconds of audio will be "
-"analyzed."
-msgstr ""
-"ÐидÑлено надÑо Ð²ÐµÐ»Ð¸ÐºÑ Ð·Ð²ÑÐºÐ¾Ð²Ñ Ð´ÑлÑнкÑ. ÐÑдÑÑÑ Ð¿ÑоаналÑÐ·Ð¾Ð²Ð°Ð½Ñ Ð»Ð¸Ñе пеÑÑÑ %.1f "
-"ÑекÑнд звÑкÑ."
-
-#: Menus.cpp:4180
+#: Menus.cpp:4254
#, c-format
msgid "Imported labels from '%s'"
msgstr "ÐмпоÑÑовано познаÑки з Ñайла '%s'"
-#: Menus.cpp:4181
+#: Menus.cpp:4255
msgid "Import Labels"
msgstr "ÐмпоÑÑ Ð¿Ð¾Ð·Ð½Ð°Ñок"
-#: Menus.cpp:4192
+#: Menus.cpp:4266
msgid "Select a MIDI file..."
msgstr "ÐибÑаÑи MIDI-Ñайл..."
-#: Menus.cpp:4196
+#: Menus.cpp:4270
msgid ""
"MIDI and Allegro files (*.mid;*.midi;*.gro)|*.mid;*.midi;*.gro|MIDI files (*."
"mid;*.midi)|*.mid;*.midi|Allegro files (*.gro)|*.gro|All files (*.*)|*.*"
@@ -3057,187 +3090,188 @@ msgstr ""
"Файли MIDI Ñ Allegro (*.mid;*.midi;*.gro)|*.mid;*.midi;*.gro|Файли MIDI (*."
"mid;*.midi)|*.mid;*.midi|Файл Allegro (*.gro)|*.gro|ÐÑÑ Ñайли (*.*)|*.*"
-#: Menus.cpp:4212
+#: Menus.cpp:4286
#, c-format
msgid "Imported MIDI from '%s'"
msgstr "ÐмпоÑÑовано MIDI-Ñайл з '%s'"
-#: Menus.cpp:4213
+#: Menus.cpp:4287
msgid "Import MIDI"
msgstr "ÐмпоÑÑ MIDI-Ñайла"
-#: Menus.cpp:4227
+#: Menus.cpp:4301
msgid "Select any uncompressed audio file..."
msgstr "ÐибеÑÑÑÑ Ð±ÑдÑ-Ñкий неÑÑиÑнений звÑковий Ñайл..."
-#: Menus.cpp:4231
+#: Menus.cpp:4305
msgid "All files (*)|*"
msgstr "УÑÑ Ñайли (*)|*"
-#: Menus.cpp:4255
+#: Menus.cpp:4329
msgid "Edit the metadata tags"
msgstr "РедагÑваÑи мÑÑки меÑаданиÑ
"
-#: Menus.cpp:4256 export/Export.cpp:349
+#: Menus.cpp:4330 export/Export.cpp:348
msgid "Edit Metadata"
msgstr "РедагÑваÑи меÑаданÑ"
-#: Menus.cpp:4256
+#: Menus.cpp:4330
msgid "Edit Metadata tags"
msgstr "РедагÑваÑи мÑÑки меÑаданиÑ
"
-#: Menus.cpp:4312
+#: Menus.cpp:4385
#, c-format
msgid "Rendered all audio in track '%s'"
-msgstr "ÐÑдобÑажено вÑÑ Ð°ÑдÑо-ÑнÑоÑмаÑÑÑ Ñ Ð´Ð¾ÑÑжÑÑ '%s'"
+msgstr "ÐÑдобÑажено вÑÑ Ð°ÑдÑоÑнÑоÑмаÑÑÑ Ñ Ð´Ð¾ÑÑжÑÑ '%s'"
-#: Menus.cpp:4313
+#: Menus.cpp:4386
msgid "Render"
msgstr "ÐÑдобÑазиÑи"
-#: Menus.cpp:4318
+#: Menus.cpp:4391
#, c-format
msgid "Mixed and rendered %d tracks into one new stereo track"
msgstr "ÐмÑкÑовано Ñа пеÑеÑвоÑено %d доÑÑжок Ñ Ð¾Ð´Ð½Ñ Ð½Ð¾Ð²Ñ ÑÑеÑео доÑÑжкÑ"
-#: Menus.cpp:4321
+#: Menus.cpp:4394
#, c-format
msgid "Mixed and rendered %d tracks into one new mono track"
msgstr "ÐмÑкÑовано Ñа пеÑеÑвоÑено %d доÑÑжок Ñ Ð¾Ð´Ð½Ñ Ð¼Ð¾Ð½Ð¾ доÑÑжкÑ"
-#: Menus.cpp:4323 Mix.cpp:121
+#: Menus.cpp:4396 Mix.cpp:120
msgid "&Mix and Render"
msgstr "&ÐÑкÑÑваÑи Ñ Ð¿ÐµÑеÑвоÑиÑи"
-#: Menus.cpp:4453
+#: Menus.cpp:4528
msgid "Aligned with zero"
msgstr "ÐиÑÑвнÑно до нÑлÑ"
-#: Menus.cpp:4457
+#: Menus.cpp:4532
msgid "Aligned cursor"
msgstr "ÐиÑÑвнÑно до кÑÑÑоÑа"
-#: Menus.cpp:4461
+#: Menus.cpp:4536
msgid "Aligned with selection start"
-msgstr "ÐиÑÑвнÑÑи до поÑаÑÐºÑ Ð²Ð¸Ð´ÑÐ»ÐµÐ½Ð¾Ñ Ð´ÑлÑнки"
+msgstr "ÐиÑÑвнÑÑи до поÑаÑÐºÑ Ð²Ð¸Ð±ÑÐ°Ð½Ð¾Ñ Ð´ÑлÑнки"
-#: Menus.cpp:4465
+#: Menus.cpp:4540
msgid "Aligned with selection end"
-msgstr "ÐиÑÑвнÑÑи до кÑнÑÑ Ð²Ð¸Ð´ÑÐ»ÐµÐ½Ð¾Ñ Ð´ÑлÑнки"
+msgstr "ÐиÑÑвнÑÑи до кÑнÑÑ Ð²Ð¸Ð±ÑÐ°Ð½Ð¾Ñ Ð´ÑлÑнки"
-#: Menus.cpp:4469
+#: Menus.cpp:4544
msgid "Aligned end with cursor"
msgstr "ÐÑÑановлено закÑнÑÐµÐ½Ð½Ñ Ð½Ð° позиÑÑÑ ÐºÑÑÑоÑа"
-#: Menus.cpp:4473
+#: Menus.cpp:4548
msgid "Aligned end with selection start"
-msgstr "ÐиÑÑвнÑно закÑнÑÐµÐ½Ð½Ñ Ð´Ð¾ поÑаÑÐºÑ Ð²Ð¸Ð´ÑÐ»ÐµÐ½Ð¾Ñ Ð´ÑлÑнки"
+msgstr "ÐиÑÑвнÑно закÑнÑÐµÐ½Ð½Ñ Ð´Ð¾ поÑаÑÐºÑ Ð²Ð¸Ð±ÑÐ°Ð½Ð¾Ñ Ð´ÑлÑнки"
-#: Menus.cpp:4477
+#: Menus.cpp:4552
msgid "Aligned end with selection end"
-msgstr "ÐÑÑановлено закÑнÑÐµÐ½Ð½Ñ Ð½Ð° кÑнеÑÑ Ð²Ð¸Ð´ÑÐ»ÐµÐ½Ð¾Ñ Ð´ÑлÑнки"
+msgstr "ÐÑÑановлено закÑнÑÐµÐ½Ð½Ñ Ð½Ð° кÑнеÑÑ Ð²Ð¸Ð±ÑÐ°Ð½Ð¾Ñ Ð´ÑлÑнки"
-#: Menus.cpp:4481
+#: Menus.cpp:4556
msgid "Aligned"
msgstr "ÐоÑÑжки виÑÑвнÑнÑ"
-#: Menus.cpp:4514
+#: Menus.cpp:4589
msgid "Align"
msgstr "ÐиÑÑвнÑÑи"
-#: Menus.cpp:4599
+#: Menus.cpp:4675
msgid "Sync MIDI with Audio"
msgstr "СинÑ
ÑонÑзÑваÑи MIDI Ð·Ñ Ð·Ð²Ñком"
-#: Menus.cpp:4603
+#: Menus.cpp:4679
msgid "Alignment completed."
msgstr "ÐиÑÑвнÑÐ²Ð°Ð½Ð½Ñ Ð·Ð°Ð²ÐµÑÑено."
-#: Menus.cpp:4614
+#: Menus.cpp:4690
msgid "Created new audio track"
msgstr "СÑвоÑено Ð½Ð¾Ð²Ñ Ð·Ð²ÑÐºÐ¾Ð²Ñ Ð´Ð¾ÑÑжкÑ"
-#: Menus.cpp:4614 Menus.cpp:4637 Menus.cpp:4652 Menus.cpp:4672
+#: Menus.cpp:4690 Menus.cpp:4712 Menus.cpp:4727 Menus.cpp:4747
msgid "New Track"
msgstr "Ðова доÑÑжка"
-#: Menus.cpp:4637
+#: Menus.cpp:4712
msgid "Created new stereo audio track"
msgstr "СÑвоÑено Ð½Ð¾Ð²Ñ ÑÑеÑео-доÑÑжкÑ"
-#: Menus.cpp:4652
+#: Menus.cpp:4727
msgid "Created new label track"
msgstr "СÑвоÑено Ð½Ð¾Ð²Ñ Ð´Ð¾ÑÑÐ¶ÐºÑ Ð´Ð»Ñ Ð¿Ð¾Ð·Ð½Ð°Ñок"
-#: Menus.cpp:4661
-msgid "The version of Audacity you are using does not support multiple time tracks."
+#: Menus.cpp:4736
+msgid ""
+"The version of Audacity you are using does not support multiple time tracks."
msgstr ""
"ÐапÑÑена веÑÑÑÑ Audacity не може викоÑиÑÑовÑваÑи декÑлÑка доÑÑжок Ñ Ð¾Ð´Ð½Ð¾Ð¼Ñ "
"пÑоекÑÑ."
-#: Menus.cpp:4672
+#: Menus.cpp:4747
msgid "Created new time track"
msgstr "СÑвоÑено Ð½Ð¾Ð²Ñ Ð´Ð¾ÑÑÐ¶ÐºÑ ÑаÑÑ"
-#: Menus.cpp:4727
+#: Menus.cpp:4807
msgid "Added label"
msgstr "ÐознаÑка додана"
-#: Menus.cpp:4762
+#: Menus.cpp:4842
msgid "Edited labels"
msgstr "ÐмÑÐ½ÐµÐ½Ñ Ð¿Ð¾Ð·Ð½Ð°Ñки"
-#: Menus.cpp:4789
+#: Menus.cpp:4869
msgid "Save CleanSpeech Preset File As:"
msgstr "ÐбеÑегÑи Ñайл ÑÐ°Ð±Ð»Ð¾Ð½Ñ CleanSpeech Ñк:"
-#: Menus.cpp:4793
+#: Menus.cpp:4873
msgid "CleanSpeech Presets (*.csp)|*.csp"
msgstr "Шаблони CleanSpeech (*.csp)|*.csp"
-#: Menus.cpp:4800 export/Export.cpp:611
+#: Menus.cpp:4880 export/Export.cpp:610
msgid "Sorry, pathnames longer than 256 characters not supported."
msgstr "ШлÑÑ
и, Ñо мÑÑÑÑÑÑ Ð±ÑлÑÑ Ð½Ñж 256 ÑимволÑв, не пÑдÑÑимÑÑÑÑÑÑ."
-#: Menus.cpp:4846
+#: Menus.cpp:4926
msgid "Problem encountered exporting presets."
msgstr "Ðомилка пÑи екÑпоÑÑÑ ÑаблонÑв."
-#: Menus.cpp:4847 export/Export.cpp:473
+#: Menus.cpp:4927 export/Export.cpp:472
msgid "Unable to export"
msgstr "Ðеможливо екÑпоÑÑÑваÑи"
-#: Menus.cpp:5031
+#: Menus.cpp:5110
msgid "Remove Track"
msgstr "ÐилÑÑиÑи доÑÑжкÑ"
-#: Menus.cpp:5031
+#: Menus.cpp:5110
msgid "Removed audio track(s)"
msgstr "ÐоÑÑжкÑ(и) вилÑÑено"
-#: Menus.cpp:5188 Menus.cpp:5243 export/ExportFFmpeg.cpp:715
-#: export/ExportMP3.cpp:1780
+#: Menus.cpp:5266 Menus.cpp:5322 export/ExportFFmpeg.cpp:756
+#: export/ExportMP3.cpp:1785
msgid "Resample"
msgstr "ÐмÑниÑи ÑаÑÑоÑÑ"
-#: Menus.cpp:5208 TrackPanel.cpp:6400
+#: Menus.cpp:5287 TrackPanel.cpp:6479 toolbars/MixerToolBar.cpp:314
msgid "New sample rate (Hz):"
msgstr "Ðова ÑаÑÑоÑа диÑкÑеÑизаÑÑÑ (ÐÑ):"
-#: Menus.cpp:5232 TrackPanel.cpp:6424
+#: Menus.cpp:5311 TrackPanel.cpp:6503
msgid "The entered value is invalid"
msgstr "Ðведене знаÑÐµÐ½Ð½Ñ Ñ Ð½ÐµÐºÐ¾ÑекÑним"
-#: Menus.cpp:5241
+#: Menus.cpp:5320
#, c-format
msgid "Resampling track %d"
msgstr "ÐмÑна ÑаÑÑоÑи доÑÑжки %d"
-#: Menus.cpp:5250
+#: Menus.cpp:5329
msgid "Resample Track"
msgstr "ÐмÑниÑи ÑаÑÑоÑÑ Ð´Ð¸ÑкÑеÑизаÑÑÑ"
-#: Menus.cpp:5250
+#: Menus.cpp:5329
msgid "Resampled audio track(s)"
msgstr "ÐвÑÐºÐ¾Ð²Ñ Ð´Ð¾ÑÑжки Ð·Ñ Ð·Ð¼ÑÐ½ÐµÐ½Ð¾Ñ ÑаÑÑоÑоÑ"
@@ -3245,7 +3279,7 @@ msgstr "ÐвÑÐºÐ¾Ð²Ñ Ð´Ð¾ÑÑжки Ð·Ñ Ð·Ð¼ÑÐ½ÐµÐ½Ð¾Ñ ÑаÑÑоÑоÑ"
msgid "Mix"
msgstr "ÐÑкÑеÑ"
-#: Mix.cpp:122
+#: Mix.cpp:121
msgid "Mixing and rendering tracks"
msgstr "ÐÑкÑÑÐ²Ð°Ð½Ð½Ñ Ñа Ð·Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð´Ð¾ÑÑжок"
@@ -3253,40 +3287,44 @@ msgstr "ÐÑкÑÑÐ²Ð°Ð½Ð½Ñ Ñа Ð·Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð´Ð¾ÑÑжок"
msgid "Note Track"
msgstr "ÐоÑÑжка пÑимÑÑок"
-#: Printing.cpp:192
+#: Printing.cpp:160
msgid "There was a problem printing."
msgstr "Ðиникла пÑоблема пÑи дÑÑкÑваннÑ."
-#: Printing.cpp:193
+#: Printing.cpp:161
msgid "Print"
msgstr "ÐÑÑк"
-#: Project.cpp:710
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr "ÐовÑоÑиÑи попеÑеднÑй еÑекÑ"
+
+#: Project.cpp:774
msgid "Main Mix"
msgstr "Ðоловний мÑкÑеÑ"
-#: Project.cpp:834
+#: Project.cpp:892
#, c-format
msgid "Welcome to Audacity version %s"
msgstr "ÐаÑкаво пÑоÑимо до Audacity веÑÑÑÑ %s"
-#: Project.cpp:994
+#: Project.cpp:1047
msgid "(Recovered)"
msgstr "(ÐÑдновлено)"
-#: Project.cpp:1583 TrackPanel.cpp:793 toolbars/ControlToolBar.cpp:192
+#: Project.cpp:1689 TrackPanel.cpp:840 toolbars/ControlToolBar.cpp:187
msgid "Record"
msgstr "ÐапиÑаÑи"
-#: Project.cpp:1583 TrackPanel.cpp:793
+#: Project.cpp:1689 TrackPanel.cpp:840
msgid "Recorded Audio"
msgstr "ÐапиÑано звÑк"
-#: Project.cpp:1601
+#: Project.cpp:1707
msgid "Save changes before closing?"
msgstr "ÐбеÑегÑи змÑни пеÑед закÑиÑÑÑм?"
-#: Project.cpp:1604
+#: Project.cpp:1710
msgid ""
"\n"
"If saved, the project will have no tracks.\n"
@@ -3303,23 +3341,23 @@ msgstr ""
"доки вÑÑ Ð´Ð¾ÑÑжки не бÑде вÑдкÑиÑо, а поÑÑм вибеÑÑÑÑ\n"
"Файл > ÐбеÑегÑи пÑоекÑ."
-#: Project.cpp:1607
+#: Project.cpp:1713
msgid "Save changes?"
msgstr "ÐбеÑегÑи змÑни?"
-#: Project.cpp:1812
-msgid "All files|*.*|All supported files|"
-msgstr "ÐÑÑ Ñайли|*.*|ÐÑÑ Ñайли, Ñо пÑдÑÑимÑÑÑÑÑÑ|"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
+msgstr "ÐÑÑ Ñайли|*|ÐÑÑ Ñайли, Ñо пÑдÑÑимÑÑÑÑÑÑ|"
-#: Project.cpp:1842
+#: Project.cpp:1955
msgid "Select one or more audio files..."
msgstr "ÐибеÑÑÑÑ Ð¾Ð´Ð¸Ð½ Ñи бÑлÑÑе звÑковиÑ
ÑайлÑв..."
-#: Project.cpp:1869
+#: Project.cpp:1982
msgid "Audacity projects|*.aup|"
msgstr "ÐÑоекÑи Audacity|*.aup|"
-#: Project.cpp:1928 Project.cpp:2350
+#: Project.cpp:2042 Project.cpp:2477
#, c-format
msgid ""
"This file was saved by Audacity %s, a much\n"
@@ -3339,19 +3377,36 @@ msgstr ""
"ÐÑе одно бажаÑÑе вÑдкÑиÑи Ñей Ñайл\n"
"заÑаз же?"
-#: Project.cpp:1929
+#: Project.cpp:2043
msgid "1.0 or earlier"
msgstr "1.0 або ÑанÑÑоÑ"
-#: Project.cpp:1935 Project.cpp:2362
+#: Project.cpp:2049 Project.cpp:2489
msgid "Opening old project file"
msgstr "ÐÑдкÑиÑÑÑ ÑÑаÑого Ñайла пÑоекÑÑ"
-#: Project.cpp:1961 Project.cpp:1969
+#: Project.cpp:2073
+msgid ""
+"You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+"Ðи намагаÑÑеÑÑ Ð²ÑдкÑиÑи Ñайл ÑезеÑÐ²Ð½Ð¾Ñ ÐºÐ¾Ð¿ÑÑ, ÑÑвоÑений Ñ Ð°Ð²ÑомаÑиÑÐ½Ð¾Ð¼Ñ "
+"ÑежимÑ.\n"
+"ÐодÑбна дÑÑ Ð¼Ð¾Ð¶Ðµ пÑизвеÑÑи до кÑиÑиÑÐ½Ð¾Ñ Ð²ÑÑаÑи даниÑ
.\n"
+"\n"
+"ÐÑÐ´Ñ Ð»Ð°Ñка, ÑпÑобÑйÑе вÑдкÑиÑи ÑпÑавжнÑй Ñайл пÑоекÑÑ Audacity."
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr "ÐиÑвлено Ñайл ÑезеÑÐ²Ð½Ð¾Ñ ÐºÐ¾Ð¿ÑÑ"
+
+#: Project.cpp:2088 Project.cpp:2096 xml/XMLWriter.cpp:306
msgid "Error opening file"
msgstr "Ðомилка пÑд ÑÐ°Ñ Ð²ÑдкÑиÑÑÑ Ñайла"
-#: Project.cpp:1975
+#: Project.cpp:2102
#, c-format
msgid ""
"File may be invalid or corrupted: \n"
@@ -3360,11 +3415,11 @@ msgstr ""
"Ðожливо Ñайл Ñ Ð½ÐµÐºÐ¾ÑекÑним або поÑкодженим: \n"
"%s"
-#: Project.cpp:1976
+#: Project.cpp:2103
msgid "Error opening file or project"
msgstr "Ðомилка пÑд ÑÐ°Ñ Ð²ÑдкÑиÑÑÑ Ñайла або пÑоекÑÑ"
-#: Project.cpp:1996
+#: Project.cpp:2123
msgid ""
"Audacity was unable to convert an Audacity 1.0 project to the new project "
"format."
@@ -3372,32 +3427,32 @@ msgstr ""
"Audacity не вдаÑÑÑÑÑ Ð¿ÐµÑеÑвоÑиÑи пÑÐ¾ÐµÐºÑ ÑоÑмаÑÑ Audacity 1.0 Ñ Ð¿ÑÐ¾ÐµÐºÑ Ð½Ð¾Ð²Ð¾Ð³Ð¾ "
"ÑоÑмаÑÑ."
-#: Project.cpp:2099
+#: Project.cpp:2230
msgid "Could not remove old auto save file"
msgstr "Ðеможливо вилÑÑиÑи ÑÑаÑий Ñайл авÑозбеÑеженнÑ"
-#: Project.cpp:2101
+#: Project.cpp:2232
msgid "Project was recovered"
msgstr "ÐÑÐ¾ÐµÐºÑ Ð±Ñло вÑдновлено"
-#: Project.cpp:2101
+#: Project.cpp:2232
msgid "Recover"
msgstr "ÐÑдновиÑи"
-#: Project.cpp:2130
+#: Project.cpp:2261
msgid "Project checker repaired file"
msgstr "Файл вÑдновлений пÑи пеÑевÑÑÑÑ Ð¿ÑоекÑÑ"
-#: Project.cpp:2130 effects/Repair.h:29
+#: Project.cpp:2261 effects/Repair.h:29
msgid "Repair"
msgstr "ÐÑдновиÑи"
-#: Project.cpp:2276
+#: Project.cpp:2402
#, c-format
msgid "Couldn't find the project data folder: \"%s\""
msgstr "Ðе вдаÑÑÑÑÑ Ð·Ð½Ð°Ð¹Ñи ÑÐµÐºÑ Ð· даними пÑоекÑÑ: \"%s\""
-#: Project.cpp:2319
+#: Project.cpp:2446
#, c-format
msgid ""
"This file was saved using Audacity %s.\n"
@@ -3408,27 +3463,30 @@ msgstr ""
"Ðи викоÑиÑÑовÑÑÑе Audacity веÑÑÑÑ %s. Щоб вÑдкÑиÑи Ñей Ñайл\n"
"ÑлÑд оновиÑи веÑÑÑÑ Ð¿ÑогÑами."
-#: Project.cpp:2323
+#: Project.cpp:2450
msgid "Can't open project file"
msgstr "Ðе вдаÑÑÑÑÑ Ð²ÑдкÑиÑи Ñайл пÑоекÑÑ"
-#: Project.cpp:2357
+#: Project.cpp:2484
#, c-format
msgid ""
"This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with "
-"this version you will no longer be able to open it in older versions.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
msgstr ""
-"Цей Ñайл бÑло збеÑежено за Ð´Ð¾Ð¿Ð¾Ð¼Ð¾Ð³Ð¾Ñ Audacity веÑÑÑÑ %s.\n"
-"Ðи можеÑе вÑдкÑиÑи Ñей Ñайл ÑÑÑÑ Ð²ÐµÑÑÑÑÑ Audacity, але, ÑкÑо ви його "
-"збеÑежеÑе Ñ ÑÑй веÑÑÑÑ, ви бÑлÑÑе не зможеÑе вÑдкÑиваÑи його за Ð´Ð¾Ð¿Ð¾Ð¼Ð¾Ð³Ð¾Ñ "
-"ÑÑаÑÑÑÐ¾Ñ Ð²ÐµÑÑÑÑ.\n"
+"Цей Ñайл бÑло збеÑежено Ñ Audacity %s.\n"
+"\n"
+"Audacity може вÑдкÑиÑи Ñ Ð·Ð±ÐµÑегÑи Ñей Ñайл, але збеÑÐµÐ¶ÐµÐ½Ð½Ñ Ñайла Ñ ÑÑй "
+"веÑÑÑÑ\n"
+"пÑизведе до вÑÑаÑи можливоÑÑÑ Ð²ÑдкÑиÑи Ñайл Ñ 1.2 Ñа попеÑеднÑÑ
веÑÑÑÑÑ
"
+"пÑогÑами.\n"
"\n"
"ÐÑдкÑиÑи Ñей Ñайл?"
-#: Project.cpp:2537
+#: Project.cpp:2682
msgid ""
"Your project is now empty.\n"
"If saved, the project will have no tracks.\n"
@@ -3449,50 +3507,56 @@ msgstr ""
"\n"
"ÐÑе одно збеÑегÑи?"
-#: Project.cpp:2538
+#: Project.cpp:2683
msgid "Warning empty project"
msgstr "ÐопеÑÐµÐ´Ð¶ÐµÐ½Ð½Ñ Ð¿Ñо поÑожнÑй пÑоекÑ"
-#: Project.cpp:2647
+#: Project.cpp:2792
#, c-format
msgid ""
"Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+"is not writable or the disk is full."
msgstr ""
"Ðе вдаÑÑÑÑÑ Ð·Ð±ÐµÑегÑи пÑоекÑ. Ðожливо, вÑдÑÑÑÐ½Ñ Ð¿Ñава запиÑÑ Ð½Ð° %s,\n"
"або не виÑÑаÑÐ°Ñ Ð²ÑлÑного пÑоÑÑоÑÑ Ð½Ð° диÑкÑ."
-#: Project.cpp:2649 Project.cpp:2664
+#: Project.cpp:2794 Project.cpp:2820
msgid "Error saving project"
msgstr "Ðомилка пÑд ÑÐ°Ñ ÑпÑоби збеÑÐµÐ¶ÐµÐ½Ð½Ñ Ñайла пÑоекÑÑ"
-#: Project.cpp:2732
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr "Ðе вдалоÑÑ Ð²Ð¸ÐºÐ¾Ð½Ð°Ñи Ð·Ð°Ð¿Ð¸Ñ Ð´Ð¾ Ñайла «%s»: %s"
+
+#: Project.cpp:2898
#, c-format
msgid "Saved %s"
msgstr "ÐбеÑежено %s"
-#: Project.cpp:2853
+#: Project.cpp:3051
#, c-format
msgid "Imported '%s'"
msgstr "ÐмпоÑÑовано Ñайл '%s'"
-#: Project.cpp:2854
+#: Project.cpp:3052
msgid "Import"
msgstr "ÐмпоÑÑ"
-#: Project.cpp:2887 Project.cpp:2895
+#: Project.cpp:3087
msgid "Error importing"
msgstr "Ðомилка пÑи ÑмпоÑÑÑваннÑ"
-#: Project.cpp:2929
+#: Project.cpp:3134
msgid "Save Speech As:"
msgstr "ÐбеÑегÑи пÑÐ¾Ð¼Ð¾Ð²Ñ Ñк:"
-#: Project.cpp:2931
+#: Project.cpp:3136
msgid "Windows PCM Audio file (*.wav)|*.wav"
msgstr "Файл звÑÐºÑ Windows PCM (*.wav)|*.wav"
-#: Project.cpp:2938
+#: Project.cpp:3143
msgid ""
"Audacity compressed project files (.aup) save your work in a smaller, "
"compressed (.ogg) format. \n"
@@ -3506,15 +3570,18 @@ msgid ""
"one of the\n"
"Export commands."
msgstr ""
-"Ðа Ð´Ð¾Ð¿Ð¾Ð¼Ð¾Ð³Ð¾Ñ Ð¿ÑоекÑÑв Audacity (.aup) ви можеÑе збеÑегÑи звÑк Ñ Ð¼ÐµÐ½ÑиÑ
, ÑÑиÑнÑÑиÑ
Ñ ÑоÑмаÑÑ (.ogg) ÑайлаÑ
.\n"
-"СÑиÑнÑÑи Ñайли пÑоекÑÑв пÑидаÑÐ½Ñ Ð´Ð»Ñ Ð¿Ð¾ÑиÑÐµÐ½Ð½Ñ Ð²Ð°ÑиÑ
пÑоекÑÑв меÑÐµÐ¶ÐµÑ ÑеÑез ÑвÑй менÑий ÑозмÑÑ.\n"
-"ÐÑоÑÐµÑ Ð²ÑдкÑиÑÑÑ ÑÑиÑнÑÑого пÑоекÑÑ ÑÑиваÑиме довÑе нÑж звиÑайно, оÑкÑлÑки ÑмпоÑÑÑваÑимеÑÑÑÑ ÐºÐ¾Ð¶Ð½Ð° Ð·Ñ ÑÑиÑнÑÑиÑ
доÑÑжок.\n"
+"Ðа Ð´Ð¾Ð¿Ð¾Ð¼Ð¾Ð³Ð¾Ñ Ð¿ÑоекÑÑв Audacity (.aup) ви можеÑе збеÑегÑи звÑк Ñ Ð¼ÐµÐ½ÑиÑ
, "
+"ÑÑиÑнÑÑиÑ
Ñ ÑоÑмаÑÑ (.ogg) ÑайлаÑ
.\n"
+"СÑиÑнÑÑи Ñайли пÑоекÑÑв пÑидаÑÐ½Ñ Ð´Ð»Ñ Ð¿Ð¾ÑиÑÐµÐ½Ð½Ñ Ð²Ð°ÑиÑ
пÑоекÑÑв меÑÐµÐ¶ÐµÑ ÑеÑез "
+"ÑвÑй менÑий ÑозмÑÑ.\n"
+"ÐÑоÑÐµÑ Ð²ÑдкÑиÑÑÑ ÑÑиÑнÑÑого пÑоекÑÑ ÑÑиваÑиме довÑе нÑж звиÑайно, оÑкÑлÑки "
+"ÑмпоÑÑÑваÑимеÑÑÑÑ ÐºÐ¾Ð¶Ð½Ð° Ð·Ñ ÑÑиÑнÑÑиÑ
доÑÑжок.\n"
"\n"
"ÐÑлÑÑÑÑÑÑ ÑнÑиÑ
пÑогÑам не здаÑÐ½Ñ Ð²ÑдкÑиваÑи Ñайли пÑоекÑÑв Audacity.\n"
"ЯкÑо ви бажаÑÑе збеÑегÑи ÑезÑлÑÑÐ°Ñ ÑобоÑи Ñ Ñайл, Ñкий пÑдÑÑимÑÑÑÑÑÑ ÑнÑими\n"
"пÑогÑамами, викоÑиÑÑовÑйÑе ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ \"ÐкÑпоÑÑ\"."
-#: Project.cpp:2941
+#: Project.cpp:3146
msgid ""
"You are saving an Audacity project file (.aup).\n"
"\n"
@@ -3525,147 +3592,318 @@ msgid ""
msgstr ""
"Ðи маÑÑе намÑÑ Ð·Ð±ÐµÑегÑи Ñайл пÑоекÑÑ Audacity (.aup).\n"
"\n"
-"ÐÑÑÐ»Ñ Ð·Ð±ÐµÑÑÐ³Ð°Ð½Ð½Ñ Ð¿ÑоекÑÑ Ð±Ñде ÑÑвоÑено Ñайл, Ñкий може бÑÑи заванÑажено лиÑе Ñ Ð¿ÑогÑÐ°Ð¼Ñ Audacity.\n"
+"ÐÑÑÐ»Ñ Ð·Ð±ÐµÑÑÐ³Ð°Ð½Ð½Ñ Ð¿ÑоекÑÑ Ð±Ñде ÑÑвоÑено Ñайл, Ñкий може бÑÑи заванÑажено лиÑе "
+"Ñ Ð¿ÑогÑÐ°Ð¼Ñ Audacity.\n"
"\n"
-"ÐÐ»Ñ Ñого, Ñоб ÑÑвоÑиÑи звÑковий Ñайл, Ñкий можна бÑде викоÑиÑÑовÑваÑи Ñ ÑнÑиÑ
пÑогÑамаÑ
, ÑкоÑиÑÑайÑеÑÑ Ð¿ÑнкÑом Ð¼ÐµÐ½Ñ Â«Ð¤Ð°Ð¹Ð» > ÐкÑпоÑÑ».\n"
+"ÐÐ»Ñ Ñого, Ñоб ÑÑвоÑиÑи звÑковий Ñайл, Ñкий можна бÑде викоÑиÑÑовÑваÑи Ñ "
+"ÑнÑиÑ
пÑогÑамаÑ
, ÑкоÑиÑÑайÑеÑÑ Ð¿ÑнкÑом Ð¼ÐµÐ½Ñ Â«Ð¤Ð°Ð¹Ð» > ÐкÑпоÑÑ».\n"
-#: Project.cpp:2945
+#: Project.cpp:3150
msgid "Audacity projects (*.aup)|*.aup"
msgstr "ÐÑоекÑи Audacity (*.aup)|*.aup"
-#: Project.cpp:2999
+#: Project.cpp:3199
msgid "Created new project"
msgstr "СÑвоÑено новий пÑоекÑ"
-#: Project.cpp:3158
+#: Project.cpp:3341
#, c-format
msgid "Deleted %.2f seconds at t=%.2f"
msgstr "ÐилÑÑено %.2f ÑекÑнд поÑинаÑÑи з t=%.2f"
-#: Project.cpp:3161 effects/Equalization.cpp:1276
-#: effects/Equalization.cpp:2607
+#: Project.cpp:3344 effects/Equalization.cpp:1298
+#: effects/Equalization.cpp:2648
msgid "Delete"
msgstr "ÐилÑÑиÑи"
-#: Project.cpp:3355
+#: Project.cpp:3538
#, c-format
msgid "Disk space remains for recording %d hours and %d minutes."
msgstr "ÐÑоÑÑÑÑ Ð´Ð¸ÑкÑ, Ñо залиÑивÑÑ Ð´Ð»Ñ Ð·Ð°Ð¿Ð¸ÑÑ, %d годин Ñа %d Ñ
вилин."
-#: Project.cpp:3358
+#: Project.cpp:3541
#, c-format
msgid "Disk space remains for recording 1 hour and %d minutes."
msgstr "ÐÑоÑÑÑÑ Ð´Ð¸ÑкÑ, Ñо залиÑивÑÑ Ð´Ð»Ñ Ð·Ð°Ð¿Ð¸ÑÑ, 1 година Ñа %d Ñ
вилин."
-#: Project.cpp:3361
+#: Project.cpp:3544
#, c-format
msgid "Disk space remains for recording %d minutes."
msgstr "ÐÑоÑÑÑÑ Ð´Ð¸ÑкÑ, Ñо залиÑивÑÑ Ð´Ð»Ñ Ð·Ð°Ð¿Ð¸ÑÑ, %d Ñ
вилин."
-#: Project.cpp:3364
+#: Project.cpp:3547
#, c-format
msgid "Disk space remains for recording %d seconds."
msgstr "ÐÑоÑÑÑÑ Ð´Ð¸ÑкÑ, Ñо залиÑивÑÑ Ð´Ð»Ñ Ð·Ð°Ð¿Ð¸ÑÑ, %d ÑекÑнд."
-#: Project.cpp:3367
+#: Project.cpp:3550
msgid "Out of disk space"
msgstr "СкÑнÑивÑÑ Ð²ÑлÑний пÑоÑÑÑÑ Ð½Ð° диÑкÑ"
-#: Project.cpp:3380
+#: Project.cpp:3563
#, c-format
msgid ""
"Import(s) complete. Running %d on-demand waveform calculations. Overall %2.0f"
"%% complete."
msgstr ""
-"ÐмпоÑÑÑÐ²Ð°Ð½Ð½Ñ Ð·Ð°Ð²ÐµÑÑено. ÐиконÑÑÑÑÑÑ %d поÑоÑниÑ
обÑиÑÐ»ÐµÐ½Ñ ÑоÑми Ñ
вилÑ. Ðиконано %2.0f"
-"%%."
+"ÐмпоÑÑÑÐ²Ð°Ð½Ð½Ñ Ð·Ð°Ð²ÐµÑÑено. ÐиконÑÑÑÑÑÑ %d поÑоÑниÑ
обÑиÑÐ»ÐµÐ½Ñ ÑоÑми Ñ
вилÑ. "
+"Ðиконано %2.0f%%."
-#: Project.cpp:3383
+#: Project.cpp:3566
#, c-format
-msgid "Import complete. Running an on-demand waveform calculation. %2.0f%% complete."
+msgid ""
+"Import complete. Running an on-demand waveform calculation. %2.0f%% complete."
msgstr ""
-"ÐмпоÑÑÑÐ²Ð°Ð½Ð½Ñ Ð·Ð°Ð²ÐµÑÑено. ÐиконÑÑÑÑÑÑ Ð¿Ð¾ÑоÑне обÑиÑÐ»ÐµÐ½Ð½Ñ ÑоÑми Ñ
вилÑ. Ðиконано %2.0f"
-"%%."
+"ÐмпоÑÑÑÐ²Ð°Ð½Ð½Ñ Ð·Ð°Ð²ÐµÑÑено. ÐиконÑÑÑÑÑÑ Ð¿Ð¾ÑоÑне обÑиÑÐ»ÐµÐ½Ð½Ñ ÑоÑми Ñ
вилÑ. Ðиконано "
+"%2.0f%%."
-#: Project.cpp:3661
+#: Project.cpp:3850
msgid "Could not remove old autosave file: "
msgstr "Ðеможливо вилÑÑиÑи ÑÑаÑий Ñайл авÑозбеÑеженнÑ: "
-#: Project.cpp:3702
+#: Project.cpp:3891
msgid "New Project"
msgstr "СÑвоÑиÑи пÑоекÑ"
-#: Project.cpp:3715
+#: Project.cpp:3921
msgid "Error writing autosave file"
msgstr "Ðомилка пÑд ÑÐ°Ñ Ð·Ð°Ð¿Ð¸ÑÑ Ñайла авÑозбеÑеженнÑ"
-#: Project.cpp:3740
+#: Project.cpp:3936
msgid "Could not create autosave file: "
msgstr "Ðеможливо ÑÑвоÑиÑи Ñайл авÑозбеÑеженнÑ: "
-#: Project.cpp:3766
+#: Project.cpp:3962
#, c-format
msgid "Actual Rate: %d"
msgstr "ФакÑиÑна ÑаÑÑоÑа %d"
-#: Resample.cpp:42
+#: Resample.cpp:62
msgid "Libresample by Dominic Mazzoni and Julius Smith"
msgstr "Libresample - ÐомÑнÑк ÐаÑÑÐ¾Ð½Ñ Ñа ЮлÑÑÑ Ð¡Ð¼ÑÑ"
-#: Resample.cpp:53
+#: Resample.cpp:73
msgid "High-quality Sinc Interpolation"
msgstr "ÐиÑокоÑкÑÑна ÑинÑ
Ñонна ÑнÑеÑполÑÑÑÑ"
-#: Resample.cpp:55
+#: Resample.cpp:75
msgid "Fast Sinc Interpolation"
msgstr "Швидка ÑинÑ
Ñонна ÑнÑеÑполÑÑÑÑ"
-#: Resample.cpp:125
+#: Resample.cpp:141
msgid "Libsamplerate by Erik de Castro Lopo"
msgstr "Libresample - Erik de Castro Lopo"
-#: Resample.cpp:218
+#: Resample.cpp:230
#, c-format
msgid "Libsamplerate error: %d\n"
msgstr "Ðомилка libsamplerate: %d\n"
-#: Resample.cpp:240 Resample.cpp:250
+#: Resample.cpp:252 Resample.cpp:262
msgid "Resampling disabled."
msgstr "ÐмÑна ÑаÑÑоÑи диÑкÑеÑизаÑÑÑ Ð²Ð¸Ð¼ÐºÐ½ÐµÐ½Ð¾."
-#. i18n-hint: Audio data bit depth (precison): 16-bit integers
+#. i18n-hint: Audio data bit depth (precision): 16-bit integers
#: SampleFormat.cpp:66
msgid "16-bit PCM"
msgstr "16-бÑÑовий PCM"
-#. i18n-hint: Audio data bit depth (precison): 24-bit integers
+#. i18n-hint: Audio data bit depth (precision): 24-bit integers
#: SampleFormat.cpp:69
msgid "24-bit PCM"
msgstr "24-бÑÑовий PCM"
-#. i18n-hint: Audio data bit depth (precison): 32-bit floating point
+#. i18n-hint: Audio data bit depth (precision): 32-bit floating point
#: SampleFormat.cpp:72
msgid "32-bit float"
msgstr "32-бÑÑовий float"
-#: Screenshot.cpp:384
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr "Ðболонка ÑÑвоÑÐµÐ½Ð½Ñ Ð·Ð½ÑмкÑв екÑана"
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr "ÐбеÑÑÑÑ Ð°Ð´ÑеÑÑ Ð´Ð»Ñ Ð·Ð±ÐµÑÑÐ³Ð°Ð½Ð½Ñ ÑайлÑв"
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr "ÐбеÑÑгаÑи зобÑÐ°Ð¶ÐµÐ½Ð½Ñ Ð´Ð¾:"
+
+#: Screenshot.cpp:328 export/ExportMultiple.cpp:242
+#: prefs/DirectoriesPrefs.cpp:94
+msgid "Choose..."
+msgstr "ÐибÑаÑи..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr "СÑвоÑиÑи знÑмок вÑÑого вÑкна або екÑана"
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr "ÐаÑÑÑабÑваÑи мале"
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr "ÐаÑÑÑабÑваÑи велике"
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr "Ð¡Ð¸Ð½Ñ Ñло"
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr "ÐÑле Ñло"
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr "СÑвоÑиÑи знÑмок лиÑе вÑкна"
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr "СÑвоÑиÑи знÑмок вÑÑого вÑкна"
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr "СÑвоÑиÑи знÑмок вÑкна Ñ"
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr "СÑвоÑиÑи знÑмок вÑÑого екÑана"
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr "ЧекаÑи 5 ÑекÑнд Ñ Ð·Ð½ÑÑи веÑÑ
Ð½Ñ Ð²Ñкно"
+
+#: Screenshot.cpp:369 effects/Normalize.cpp:74 effects/Normalize.cpp:75
+msgid "false"
+msgstr "нÑ"
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr "СÑвоÑиÑи знÑмок ÑаÑÑини вÑкна пÑоекÑÑ"
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr "ÐÑÑ Ð¿Ð°Ð½ÐµÐ»Ñ ÑнÑÑÑÑменÑÑв"
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr "ÐÐ°Ð½ÐµÐ»Ñ Ð²Ð¸Ð±Ð¾ÑÑ"
+
+#: Screenshot.cpp:381 toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr "ÐнÑÑÑÑменÑи"
+
+#: Screenshot.cpp:382 effects/Contrast.cpp:410 toolbars/ControlToolBar.cpp:83
+#: toolbars/ControlToolBar.cpp:243
+msgid "Control"
+msgstr "ÐонÑÑолÑ"
+
+#: Screenshot.cpp:388 effects/LoadEffects.cpp:114 toolbars/MixerToolBar.cpp:59
+#: toolbars/MixerToolBar.cpp:240
+msgid "Mixer"
+msgstr "ÐÑкÑеÑ"
+
+#: Screenshot.cpp:389 toolbars/MeterToolBar.cpp:50
+#: toolbars/MeterToolBar.cpp:114
+msgid "Meter"
+msgstr "ÐндикаÑоÑ"
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr "ÐмÑниÑи"
+
+#: Screenshot.cpp:391 prefs/DevicePrefs.cpp:133 prefs/DevicePrefs.cpp:146
+#: prefs/MidiIOPrefs.cpp:118 prefs/MidiIOPrefs.cpp:132
+#: toolbars/DeviceToolBar.cpp:57 toolbars/DeviceToolBar.cpp:196
+msgid "Device"
+msgstr "ÐÑиÑÑÑÑй"
+
+#: Screenshot.cpp:392 toolbars/TranscriptionToolBar.cpp:84
+#: toolbars/TranscriptionToolBar.cpp:252
+msgid "Transcription"
+msgstr "ÐеÑезапиÑ"
+
+#: Screenshot.cpp:398 TrackPanel.cpp:443 TrackPanel.cpp:444
+msgid "Track Panel"
+msgstr "ÐÐ°Ð½ÐµÐ»Ñ Ð´Ð¾ÑÑжки"
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr "ÐÑнÑйка"
+
+#: Screenshot.cpp:400 export/ExportMultiple.cpp:285
+#: export/ExportMultiple.cpp:287 prefs/TracksPrefs.cpp:31
+msgid "Tracks"
+msgstr "ÐоÑÑжки"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr "ÐеÑÑа доÑÑжка"
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr "ÐÑÑга доÑÑжка"
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr "ÐаÑÑÑаб"
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr "Ðдна ÑекÑнда"
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr "ÐеÑÑÑÑ ÑекÑнд"
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr "Ðдна Ñ
вилина"
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr "ÐâÑÑÑ Ñ
вилин"
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr "Ðдна година"
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr "ÐизÑÐºÑ Ð´Ð¾ÑÑжки"
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr "СеÑÐµÐ´Ð½Ñ Ð´Ð¾ÑÑжки"
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr "ÐиÑÐ¾ÐºÑ Ð´Ð¾ÑÑжки"
+
+#: Screenshot.cpp:599
msgid "Saved "
msgstr "ÐбеÑежено "
-#: Screenshot.cpp:387
+#: Screenshot.cpp:602
msgid "Error trying to save file: "
msgstr "Ðомилка пÑд ÑÐ°Ñ Ð·Ð±ÐµÑÐµÐ¶ÐµÐ½Ð½Ñ Ñайла: "
-#: Sequence.cpp:804 Sequence.cpp:814 Sequence.cpp:821
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr "ÐбеÑÑÑÑ Ð°Ð´ÑеÑÑ, за ÑÐºÐ¾Ñ ÑлÑд збеÑÑгаÑи знÑмки"
+
+#: Sequence.cpp:799 Sequence.cpp:809 Sequence.cpp:816
msgid "Gap detected in project file\n"
msgstr "У ÑÐ°Ð¹Ð»Ñ Ð¿ÑоекÑÑ Ð²Ð¸Ñвлено пÑогалинÑ\n"
-#: ShuttleGui.cpp:1972 effects/Effect.cpp:417
-#: effects/audiounits/AudioUnitEffect.cpp:877
+#: ShuttleGui.cpp:2034 effects/Effect.cpp:458
+#: effects/audiounits/AudioUnitEffect.cpp:851
msgid "Pre&view"
msgstr "&ÐÑоÑлÑÑ
аÑи"
-#: ShuttleGui.cpp:1979
+#: ShuttleGui.cpp:2041
msgid "&Debug"
msgstr "&ÐалагодженнÑ"
@@ -3685,110 +3923,116 @@ msgstr "&ÐаÑкаво пÑоÑимо до Audacity!"
msgid "Don't show this again at start up"
msgstr "Ðе показÑваÑи ÑÑого Ð·Ð½Ð¾Ð²Ñ Ð¿Ñд ÑÐ°Ñ Ð·Ð°Ð¿ÑÑкÑ"
-#: Tags.cpp:628
+#: Tags.cpp:629
msgid "Artist Name"
msgstr "Ðм'Ñ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð²ÑÑ"
-#: Tags.cpp:629
+#: Tags.cpp:630
msgid "Track Title"
msgstr "Ðазва доÑÑжки"
-#: Tags.cpp:630
+#: Tags.cpp:631
msgid "Album Title"
msgstr "Ðазва алÑбомÑ"
-#: Tags.cpp:631
+#: Tags.cpp:632
msgid "Track Number"
msgstr "ÐÐ¾Ð¼ÐµÑ Ð´Ð¾ÑÑжки"
-#: Tags.cpp:632
+#: Tags.cpp:633
msgid "Year"
msgstr "Ð Ñк"
-#: Tags.cpp:633
+#: Tags.cpp:634
msgid "Genre"
msgstr "ÐанÑ"
-#: Tags.cpp:634 prefs/MousePrefs.cpp:96
+#: Tags.cpp:635 prefs/MousePrefs.cpp:100
msgid "Comments"
msgstr "ÐоменÑаÑÑ"
-#: Tags.cpp:777
+#: Tags.cpp:788
msgid "Use arrow keys (or RETURN key after editing) to navigate fields."
-msgstr "СкоÑиÑÑайÑеÑÑ ÐºÐ»Ð°Ð²ÑÑами Ð·Ñ ÑÑÑÑлоÑками (або клавÑÑÐµÑ Enter пÑÑÐ»Ñ Ð·Ð°Ð²ÐµÑÑÐµÐ½Ð½Ñ ÑедагÑваннÑ), Ñоб здÑйÑнÑваÑи навÑгаÑÑÑ Ð¿Ð¾Ð»Ñми."
+msgstr ""
+"СкоÑиÑÑайÑеÑÑ ÐºÐ»Ð°Ð²ÑÑами Ð·Ñ ÑÑÑÑлоÑками (або клавÑÑÐµÑ Enter пÑÑÐ»Ñ Ð·Ð°Ð²ÐµÑÑÐµÐ½Ð½Ñ "
+"ÑедагÑваннÑ), Ñоб здÑйÑнÑваÑи навÑгаÑÑÑ Ð¿Ð¾Ð»Ñми."
-#: Tags.cpp:800
+#: Tags.cpp:812
msgid "Tag Name"
msgstr "Ðоле"
-#: Tags.cpp:801
+#: Tags.cpp:813
msgid "Tag Value"
msgstr "ÐнаÑеннÑ"
-#: Tags.cpp:816 prefs/KeyConfigPrefs.cpp:130
+#: Tags.cpp:828 prefs/KeyConfigPrefs.cpp:145 widgets/FileHistory.cpp:174
msgid "&Clear"
msgstr "&ÐÑиÑÑиÑи"
-#: Tags.cpp:822
+#: Tags.cpp:834
msgid "Genres"
msgstr "ÐанÑи"
-#: Tags.cpp:826
+#: Tags.cpp:838
msgid "E&dit..."
msgstr "&ÐмÑниÑи..."
-#: Tags.cpp:827
+#: Tags.cpp:839
msgid "Rese&t..."
msgstr "С&кинÑÑи..."
-#: Tags.cpp:832
+#: Tags.cpp:844
msgid "Template"
msgstr "Шаблон"
-#: Tags.cpp:836 prefs/KeyConfigPrefs.cpp:142
+#: Tags.cpp:848 prefs/KeyConfigPrefs.cpp:155
msgid "&Load..."
msgstr "&ÐаванÑажиÑи..."
-#: Tags.cpp:837 prefs/KeyConfigPrefs.cpp:141
+#: Tags.cpp:849 prefs/KeyConfigPrefs.cpp:156
msgid "&Save..."
msgstr "Ð&беÑегÑи..."
-#: Tags.cpp:839
+#: Tags.cpp:851
msgid "S&et Default"
msgstr "ÐÑобиÑи &Ñиповими"
-#: Tags.cpp:989
+#: Tags.cpp:1001
msgid "Edit Genres"
msgstr "РедагÑваÑи жанÑи"
-#: Tags.cpp:1022 Tags.cpp:1034 Tags.cpp:1049 Tags.cpp:1062
+#: Tags.cpp:1034 Tags.cpp:1046 Tags.cpp:1061 Tags.cpp:1074
msgid "Reset Genres"
msgstr "ÐÑдновиÑи жанÑи"
-#: Tags.cpp:1022 Tags.cpp:1062
+#: Tags.cpp:1034 Tags.cpp:1074
msgid "Unable to save genre file."
msgstr "Ðеможливо збеÑегÑи Ñайл Ð·Ñ ÑпиÑком жанÑÑв."
-#: Tags.cpp:1033
+#: Tags.cpp:1045
msgid "Are you sure you want to reset the genre list to defaults?"
msgstr "Ðи ÑпÑÐ°Ð²Ð´Ñ Ð±Ð°Ð¶Ð°ÑÑе вÑдновиÑи ÑпиÑок жанÑÑв до Ñипового?"
-#: Tags.cpp:1049
+#: Tags.cpp:1061
msgid "Unable to open genre file."
msgstr "Ðеможливо вÑдкÑиÑи Ñайл Ð·Ñ ÑпиÑком жанÑÑв."
-#: Tags.cpp:1084
+#: Tags.cpp:1096
msgid "Load Metadata As:"
msgstr "ÐаванÑажиÑи меÑÐ°Ð´Ð°Ð½Ñ Ñк:"
-#: Tags.cpp:1109
+#: Tags.cpp:1121
msgid "Error loading metadata"
msgstr "Ðомилка пÑд ÑÐ°Ñ Ð·Ð°Ð²Ð°Ð½ÑÐ°Ð¶ÐµÐ½Ð½Ñ Ð¼ÐµÑаданиÑ
"
-#: Tags.cpp:1138
+#: Tags.cpp:1150
msgid "Save Metadata As:"
msgstr "ÐбеÑегÑи меÑÐ°Ð´Ð°Ð½Ñ Ñк:"
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr "Ðомилка пÑд ÑÐ°Ñ ÑпÑоби запиÑÑ Ñайла мÑÑок"
+
#: Theme.cpp:638
#, c-format
msgid ""
@@ -3888,451 +4132,460 @@ msgstr ""
" %s\n"
"вже бÑли пÑиÑÑÑнÑ."
-#: TimeDialog.cpp:53 TimeDialog.cpp:64 TimerRecordDialog.cpp:228
-#: TimerRecordDialog.cpp:355 TimerRecordDialog.cpp:359 effects/DtmfGen.cpp:481
-#: effects/Noise.cpp:243 effects/Noise.cpp:259 effects/ToneGen.cpp:323
-#: effects/ToneGen.cpp:335 effects/ToneGen.cpp:367 effects/ToneGen.cpp:379
+#: TimeDialog.cpp:53 TimeDialog.cpp:64 TimerRecordDialog.cpp:236
+#: TimerRecordDialog.cpp:367 TimerRecordDialog.cpp:371 effects/DtmfGen.cpp:446
+#: effects/Noise.cpp:191 effects/Noise.cpp:207 effects/ToneGen.cpp:279
+#: effects/ToneGen.cpp:291 effects/ToneGen.cpp:323 effects/ToneGen.cpp:335
msgid "Duration"
msgstr "ТÑивалÑÑÑÑ"
-#: TimerRecordDialog.cpp:68
+#: TimerRecordDialog.cpp:69
msgid "Audacity Timer Record"
msgstr "Ð¢Ð°Ð¹Ð¼ÐµÑ Ð·Ð°Ð¿Ð¸ÑÑ Audacity"
-#: TimerRecordDialog.cpp:225
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr "ТÑивалÑÑÑÑ Ñ Ð½ÑлÑовоÑ. ÐÑÑого не запиÑано."
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr "Ðомилка пÑд ÑÐ°Ñ Ð²Ð¸Ð·Ð½Ð°ÑÐµÐ½Ð½Ñ ÑÑивалоÑÑÑ"
+
+#: TimerRecordDialog.cpp:233
msgid "Recording start"
msgstr "ÐоÑаÑок запиÑÑ"
-#: TimerRecordDialog.cpp:226
+#: TimerRecordDialog.cpp:234
msgid "Recording end"
msgstr "ÐÑнеÑÑ Ð·Ð°Ð¿Ð¸ÑÑ"
-#: TimerRecordDialog.cpp:231
+#: TimerRecordDialog.cpp:239
msgid "Audacity Timer Record Progress"
msgstr "ÐоÑÑÑп запиÑÑ Ð·Ð° ÑаймеÑом Audacity"
-#: TimerRecordDialog.cpp:317
+#: TimerRecordDialog.cpp:329
msgid "Start Date and Time"
msgstr "ÐаÑа Ñа ÑÐ°Ñ Ð¿Ð¾ÑаÑкÑ"
-#: TimerRecordDialog.cpp:324
+#: TimerRecordDialog.cpp:336
msgid "Start Date"
msgstr "ÐаÑа поÑаÑкÑ"
-#: TimerRecordDialog.cpp:336
+#: TimerRecordDialog.cpp:348
msgid "End Date and Time"
msgstr "ÐаÑа Ñ ÑÐ°Ñ ÐºÑнÑÑ"
-#: TimerRecordDialog.cpp:344
+#: TimerRecordDialog.cpp:356
msgid "End Date"
msgstr "ÐаÑа закÑнÑеннÑ"
#. i18n-hint: A time specification like "Sunday 28th October 2007 15:16:17 GMT"
#. * but hopefully translated by wxwidgets will be inserted into this
-#: TimerRecordDialog.cpp:431
+#: TimerRecordDialog.cpp:443
#, c-format
msgid "Waiting to start recording at %s.\n"
msgstr "ÐÑÑкÑÐ²Ð°Ð½Ð½Ñ Ð½Ð° поÑаÑок запиÑÑ Ð¾ %s.\n"
-#: TimerRecordDialog.cpp:432
+#: TimerRecordDialog.cpp:444
msgid "Audacity Timer Record - Waiting for Start"
msgstr "ÐÐ°Ð¿Ð¸Ñ Ð·Ð° ÑаймеÑом Audacity â ÐÑÑкÑÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾ÑаÑкÑ"
-#: TrackPanel.cpp:454 TrackPanel.cpp:455
-msgid "Track Panel"
-msgstr "ÐÐ°Ð½ÐµÐ»Ñ Ð´Ð¾ÑÑжки"
-
-#: TrackPanel.cpp:538 prefs/QualityPrefs.cpp:97
+#: TrackPanel.cpp:597 prefs/QualityPrefs.cpp:99
msgid "Other..."
msgstr "ÐнÑа..."
-#: TrackPanel.cpp:546 TrackPanel.cpp:568 TrackPanel.cpp:577 TrackPanel.cpp:585
-#: TrackPanel.cpp:5790
+#: TrackPanel.cpp:605 TrackPanel.cpp:628 TrackPanel.cpp:637 TrackPanel.cpp:645
msgid "Name..."
msgstr "Ðазва..."
-#: TrackPanel.cpp:548 TrackPanel.cpp:570 TrackPanel.cpp:581 TrackPanel.cpp:587
-#: TrackPanel.cpp:5794
+#: TrackPanel.cpp:607 TrackPanel.cpp:630 TrackPanel.cpp:641 TrackPanel.cpp:647
msgid "Move Track Up"
msgstr "ÐеÑемÑÑÑиÑи доÑÑÐ¶ÐºÑ Ð²Ð³Ð¾ÑÑ"
-#: TrackPanel.cpp:549 TrackPanel.cpp:571 TrackPanel.cpp:582 TrackPanel.cpp:588
-#: TrackPanel.cpp:5795
+#: TrackPanel.cpp:608 TrackPanel.cpp:631 TrackPanel.cpp:642 TrackPanel.cpp:648
msgid "Move Track Down"
msgstr "ÐеÑемÑÑÑиÑи доÑÑÐ¶ÐºÑ Ð²Ð½Ð¸Ð·"
-#: TrackPanel.cpp:551 effects/ToneGen.cpp:319 prefs/GUIPrefs.cpp:154
+#: TrackPanel.cpp:610 effects/ToneGen.cpp:275 prefs/TracksPrefs.cpp:56
msgid "Waveform"
msgstr "ХвилÑ"
-#: TrackPanel.cpp:552 prefs/GUIPrefs.cpp:155
+#: TrackPanel.cpp:611 prefs/TracksPrefs.cpp:57
msgid "Waveform (dB)"
msgstr "Ð¥Ð²Ð¸Ð»Ñ (дÐ)"
-#: TrackPanel.cpp:554 prefs/GUIPrefs.cpp:157
+#: TrackPanel.cpp:613 prefs/TracksPrefs.cpp:59
msgid "Spectrum log(f)"
msgstr "СпекÑÑ ln(f)"
#. i18n-hint: short form of 'logarithm'
-#: TrackPanel.cpp:555 prefs/GUIPrefs.cpp:158
+#: TrackPanel.cpp:614 prefs/TracksPrefs.cpp:60
msgid "Pitch (EAC)"
msgstr "ÐиÑоÑа ÑÐ¾Ð½Ñ (EAC)"
-#: TrackPanel.cpp:557 TrackPanel.cpp:6135
+#: TrackPanel.cpp:616 TrackPanel.cpp:6198
msgid "Mono"
msgstr "Ðоно"
-#: TrackPanel.cpp:558 TrackPanel.cpp:6134
+#: TrackPanel.cpp:617 TrackPanel.cpp:6197
msgid "Left Channel"
msgstr "ÐÑвий канал"
-#: TrackPanel.cpp:559 TrackPanel.cpp:6134
+#: TrackPanel.cpp:618 TrackPanel.cpp:6197
msgid "Right Channel"
msgstr "ÐÑавий канал"
-#: TrackPanel.cpp:560
+#: TrackPanel.cpp:619
msgid "Make Stereo Track"
msgstr "ÐÑобиÑи доÑÑÐ¶ÐºÑ ÑÑеÑеоÑонÑÑноÑ"
-#: TrackPanel.cpp:561
+#: TrackPanel.cpp:620
msgid "Split Stereo Track"
msgstr "РоздÑлиÑи ÑÑеÑео-доÑÑжкÑ"
-#: TrackPanel.cpp:563
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr "ÐодÑлиÑи ÑÑеÑео на моно"
+
+#: TrackPanel.cpp:623
msgid "Set Sample Format"
msgstr "ÐÑÑановиÑи ÑоÑÐ¼Ð°Ñ ÑемплÑ"
-#: TrackPanel.cpp:565 TrackPanel.cpp:6380
+#: TrackPanel.cpp:625 TrackPanel.cpp:6459
msgid "Set Rate"
msgstr "ÐÑÑановиÑи ÑаÑÑоÑÑ Ð´Ð¸ÑкÑеÑизаÑÑÑ"
-#: TrackPanel.cpp:573
+#: TrackPanel.cpp:633
msgid "Up Octave"
msgstr "ÐкÑÐ°Ð²Ð¾Ñ Ð²Ð¸Ñе"
-#: TrackPanel.cpp:574
+#: TrackPanel.cpp:634
msgid "Down Octave"
msgstr "ÐкÑÐ°Ð²Ð¾Ñ Ð½Ð¸Ð¶Ñе"
-#: TrackPanel.cpp:579 TrackPanel.cpp:5792
+#: TrackPanel.cpp:639
msgid "Font..."
msgstr "ШÑиÑÑ..."
-#: TrackPanel.cpp:590
+#: TrackPanel.cpp:650
msgid "Set Range..."
msgstr "ÐÑÑановиÑи дÑапазон..."
-#: TrackPanel.cpp:594 toolbars/EditToolBar.cpp:135
+#: TrackPanel.cpp:654 toolbars/EditToolBar.cpp:132
+#: toolbars/EditToolBar.cpp:191
msgid "Copy"
msgstr "ÐопÑÑваÑи"
-#: TrackPanel.cpp:1263
+#: TrackPanel.cpp:1304
msgid ""
"Click to vertically zoom in, Shift-click to zoom out, Drag to create a "
"particular zoom region."
msgstr ""
"ÐикоÑиÑÑовÑйÑе клаÑÐ°Ð½Ð½Ñ Ð´Ð»Ñ Ð½Ð°Ð±Ð»Ð¸Ð¶ÐµÐ½Ð½Ñ Ð¿Ð¾-веÑÑикалÑ, Shift+клаÑÐ°Ð½Ð½Ñ - Ð´Ð»Ñ "
-"вÑддаленнÑ, пеÑеÑÑгÑÐ²Ð°Ð½Ð½Ñ Ð· наÑиÑнÑÑÐ¾Ñ ÐºÐ½Ð¾Ð¿ÐºÐ¾Ñ - Ð´Ð»Ñ Ð²Ð¸Ð´ÑÐ»ÐµÐ½Ð½Ñ Ð¾Ð±Ð»Ð°ÑÑÑ "
+"вÑддаленнÑ, пеÑеÑÑгÑÐ²Ð°Ð½Ð½Ñ Ð· наÑиÑнÑÑÐ¾Ñ ÐºÐ½Ð¾Ð¿ÐºÐ¾Ñ â Ð´Ð»Ñ Ð²Ð¸Ð±Ð¾ÑÑ Ð¾Ð±Ð»Ð°ÑÑÑ "
"маÑÑÑабÑваннÑ."
-#: TrackPanel.cpp:1268
+#: TrackPanel.cpp:1309
msgid "Drag the label vertically to change the order of the tracks."
-msgstr "Щоб змÑниÑи поÑÑдок пÑедÑÑÐ°Ð²Ð»ÐµÐ½Ð½Ñ Ð´Ð¾ÑÑжок, пеÑеÑÑгнÑÑÑ ÑÑ Ð´Ð¾ÑÑÐ¶ÐºÑ Ð²Ð³Ð¾ÑÑ/вниз."
+msgstr ""
+"Щоб змÑниÑи поÑÑдок пÑедÑÑÐ°Ð²Ð»ÐµÐ½Ð½Ñ Ð´Ð¾ÑÑжок, пеÑеÑÑгнÑÑÑ ÑÑ Ð´Ð¾ÑÑÐ¶ÐºÑ Ð²Ð³Ð¾ÑÑ/вниз."
-#: TrackPanel.cpp:1288
+#: TrackPanel.cpp:1329
msgid "Click and drag to adjust relative size of stereo tracks."
msgstr ""
"ÐлаÑнÑÑÑ Ñа пеÑеÑÑгнÑÑÑ Ð¿Ð¾Ð·Ð½Ð°ÑÐºÑ Ð´Ð»Ñ ÐºÐ¾ÑигÑÐ²Ð°Ð½Ð½Ñ Ð²ÑдноÑного ÑозмÑÑÑ ÑÑеÑео-"
"доÑÑжок."
-#: TrackPanel.cpp:1291
+#: TrackPanel.cpp:1332
msgid "Click and drag to resize the track."
msgstr "ÐлаÑнÑÑÑ Ñа пеÑеÑÑгнÑÑÑ Ð´Ð»Ñ Ð·Ð¼Ñни ÑозмÑÑÑ Ð´Ð¾ÑÑжки."
-#: TrackPanel.cpp:1322
+#: TrackPanel.cpp:1363
msgid "Drag one or more label boundaries"
msgstr "ÐеÑеÑÑгнÑÑи Ð¾Ð´Ð½Ñ Ñи бÑлÑÑе меж познаÑок"
-#: TrackPanel.cpp:1323
+#: TrackPanel.cpp:1364
msgid "Drag label boundary"
msgstr "ÐеÑеÑÑгнÑÑи Ð¼ÐµÐ¶Ñ Ð¿Ð¾Ð·Ð½Ð°Ñки"
#. i18n-hint: This string is for the Mac OS, which uses Command-, as the shortcut for Preferences
-#: TrackPanel.cpp:1339
+#: TrackPanel.cpp:1380
msgid "Multi-Tool Mode: Cmd-, for Mouse and Keyboard Preferences"
msgstr ""
"УнÑвеÑÑалÑний ÑнÑÑÑÑменÑ: наÑиÑнÑÑÑ Cmd-, Ð´Ð»Ñ Ð½Ð°Ð»Ð°ÑÑовÑÐ²Ð°Ð½Ð½Ñ Ð¼Ð¸ÑÑ Ñа "
"клавÑаÑÑÑи"
#. i18n-hint: This string is for Windows and Linux, which uses Control-P as the shortcut for Preferences
-#: TrackPanel.cpp:1342
+#: TrackPanel.cpp:1383
msgid "Multi-Tool Mode: Ctrl-P for Mouse and Keyboard Preferences"
msgstr ""
"УнÑвеÑÑалÑний ÑнÑÑÑÑменÑ: наÑиÑнÑÑÑ Ctrl-P, Ð´Ð»Ñ Ð½Ð°Ð»Ð°ÑÑовÑÐ²Ð°Ð½Ð½Ñ Ð¼Ð¸ÑÑ Ñа "
"клавÑаÑÑÑи"
-#: TrackPanel.cpp:1388
+#: TrackPanel.cpp:1429
msgid "Click and drag to move left selection boundary."
-msgstr "ÐлаÑнÑÑÑ Ñа пеÑеÑÑгнÑÑÑ Ð´Ð»Ñ Ð¿ÐµÑемÑÑÐµÐ½Ð½Ñ Ð»ÑÐ²Ð¾Ñ Ð¼ÐµÐ¶Ñ Ð²Ð¸Ð´ÑÐ»ÐµÐ½Ð¾Ñ Ð´ÑлÑнки."
+msgstr "ÐлаÑнÑÑÑ Ñа пеÑеÑÑгнÑÑÑ Ð´Ð»Ñ Ð¿ÐµÑемÑÑÐµÐ½Ð½Ñ Ð»ÑÐ²Ð¾Ñ Ð¼ÐµÐ¶Ñ Ð²Ð¸Ð±ÑÐ°Ð½Ð¾Ñ Ð´ÑлÑнки."
-#: TrackPanel.cpp:1393
+#: TrackPanel.cpp:1434
msgid "Click and drag to move right selection boundary."
-msgstr "ÐлаÑнÑÑÑ Ñа пеÑеÑÑгнÑÑÑ Ð´Ð»Ñ Ð¿ÐµÑемÑÑÐµÐ½Ð½Ñ Ð¿ÑÐ°Ð²Ð¾Ñ Ð¼ÐµÐ¶Ñ Ð²Ð¸Ð´ÑÐ»ÐµÐ½Ð¾Ñ Ð´ÑлÑнки."
+msgstr "ÐлаÑнÑÑÑ Ñа пеÑеÑÑгнÑÑÑ Ð´Ð»Ñ Ð¿ÐµÑемÑÑÐµÐ½Ð½Ñ Ð¿ÑÐ°Ð²Ð¾Ñ Ð¼ÐµÐ¶Ñ Ð²Ð¸Ð±ÑÐ°Ð½Ð¾Ñ Ð´ÑлÑнки."
-#: TrackPanel.cpp:1735 TrackPanel.cpp:3964 TrackPanel.cpp:3996
-#: TrackPanel.cpp:4260 TrackPanel.cpp:6529 TrackPanel.cpp:6549
+#: TrackPanel.cpp:1772 TrackPanel.cpp:4056 TrackPanel.cpp:4088
+#: TrackPanel.cpp:4350 TrackPanel.cpp:6608 TrackPanel.cpp:6628
msgid "Modified Label"
msgstr "ÐознаÑка змÑнена"
-#: TrackPanel.cpp:1736 TrackPanel.cpp:3965 TrackPanel.cpp:3997
-#: TrackPanel.cpp:4261 TrackPanel.cpp:6530 TrackPanel.cpp:6550
+#: TrackPanel.cpp:1773 TrackPanel.cpp:4057 TrackPanel.cpp:4089
+#: TrackPanel.cpp:4351 TrackPanel.cpp:6609 TrackPanel.cpp:6629
msgid "Label Edit"
msgstr "ÐÑавка познаÑки"
-#: TrackPanel.cpp:1976
+#: TrackPanel.cpp:2011
msgid "Adjusted envelope."
msgstr "ÐбвÑдна ÑкоÑегована."
-#: TrackPanel.cpp:1977 prefs/MousePrefs.cpp:115
+#: TrackPanel.cpp:2012 prefs/MousePrefs.cpp:119
msgid "Envelope"
msgstr "ÐбвÑдна"
-#: TrackPanel.cpp:2128
+#: TrackPanel.cpp:2162
msgid "Moved clip to another track"
msgstr "ÐблаÑÑÑ Ð¿ÐµÑемÑÑено до ÑнÑÐ¾Ñ Ð´Ð¾ÑÑжки"
-#: TrackPanel.cpp:2132
+#: TrackPanel.cpp:2166
msgid "left"
msgstr "лÑвий"
-#: TrackPanel.cpp:2132
+#: TrackPanel.cpp:2166
msgid "right"
msgstr "пÑавий"
#. i18n-hint: %s is a direction like left or right
-#: TrackPanel.cpp:2134
+#: TrackPanel.cpp:2168
#, c-format
msgid "Time shifted tracks/clips %s %.02f seconds"
msgstr "ÐоÑÑжкÑ/облаÑÑÑ Ð·Ð¼ÑÑено на %s %.02f ÑекÑнд"
-#: TrackPanel.cpp:2138 prefs/MousePrefs.cpp:111 prefs/MousePrefs.cpp:112
-#: prefs/MousePrefs.cpp:113
+#: TrackPanel.cpp:2172 prefs/MousePrefs.cpp:115 prefs/MousePrefs.cpp:116
+#: prefs/MousePrefs.cpp:117
msgid "Time-Shift"
msgstr "ÐÑÑв Ñ ÑаÑÑ"
-#: TrackPanel.cpp:2921
+#: TrackPanel.cpp:2966
msgid "To use Draw, choose 'Waveform' in the Track Drop-down Menu."
-msgstr "Щоб викоÑиÑÑаÑи ÐалÑваннÑ, вибеÑÑÑÑ \"ФоÑÐ¼Ñ Ñ
вилÑ\" Ñ ÑÐ¿Ð°Ð´Ð½Ð¾Ð¼Ñ Ð¼ÐµÐ½Ñ Ð´Ð¾ÑÑжки."
+msgstr ""
+"Щоб викоÑиÑÑаÑи ÐалÑваннÑ, вибеÑÑÑÑ \"ФоÑÐ¼Ñ Ñ
вилÑ\" Ñ ÑÐ¿Ð°Ð´Ð½Ð¾Ð¼Ñ Ð¼ÐµÐ½Ñ Ð´Ð¾ÑÑжки."
-#: TrackPanel.cpp:2938
+#: TrackPanel.cpp:2983
msgid "To use Draw, zoom in further until you can see the individual samples."
msgstr ""
"Щоб викоÑиÑÑаÑи ÐалÑваннÑ, збÑлÑÑÑйÑе ÑаÑÑÐ¸Ð½Ñ Ð´Ð¾ÑÑжки, аж доки не побаÑиÑе "
"окÑÐµÐ¼Ñ ÑÑагменÑи."
-#: TrackPanel.cpp:3210
+#: TrackPanel.cpp:3257
msgid "Moved Sample"
msgstr "Семпл пеÑемÑÑено"
-#: TrackPanel.cpp:3211
+#: TrackPanel.cpp:3258
msgid "Sample Edit"
msgstr "ÐÑавка ÑемплÑ"
-#: TrackPanel.cpp:3310
+#: TrackPanel.cpp:3351
#, c-format
msgid "Removed track '%s.'"
msgstr "ÐилÑÑено доÑÑÐ¶ÐºÑ '%s.'"
-#: TrackPanel.cpp:3312
+#: TrackPanel.cpp:3353
msgid "Track Remove"
msgstr "ÐилÑÑиÑи доÑÑжкÑ"
-#: TrackPanel.cpp:3453
+#: TrackPanel.cpp:3499
msgid "Moved gain slider"
msgstr "РегÑлÑÑÐ¾Ñ ÑÑÐ²Ð½Ñ Ð¿ÐµÑемÑÑено"
-#: TrackPanel.cpp:3453
+#: TrackPanel.cpp:3499
msgid "Moved pan slider"
msgstr "РегÑлÑÑÐ¾Ñ Ð¿Ð°Ð½Ð¾Ñами пеÑемÑÑено"
#. i18n-hint: Title of the Gain slider, used to adjust the volume
-#: TrackPanel.cpp:3454 TrackPanel.cpp:5700 TrackPanel.cpp:7253
+#: TrackPanel.cpp:3500 TrackPanel.cpp:5802 TrackPanel.cpp:7252
msgid "Gain"
msgstr "ÐÑÑнÑÑÑÑ"
#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: TrackPanel.cpp:3454 TrackPanel.cpp:5638 TrackPanel.cpp:7260
+#: TrackPanel.cpp:3500 TrackPanel.cpp:5750 TrackPanel.cpp:7260
msgid "Pan"
msgstr "ÐаноÑама"
-#: TrackPanel.cpp:3581 TrackPanel.cpp:6480
+#: TrackPanel.cpp:3666 TrackPanel.cpp:6559
msgid "up"
msgstr "вгоÑÑ"
-#: TrackPanel.cpp:3585 TrackPanel.cpp:6481
+#: TrackPanel.cpp:3670 TrackPanel.cpp:6560
msgid "down"
msgstr "вниз"
-#: TrackPanel.cpp:3592 TrackPanel.cpp:6476
+#: TrackPanel.cpp:3677 TrackPanel.cpp:6555
#, c-format
msgid "Moved '%s' %s"
msgstr "ÐеÑемÑÑено '%s' %s"
-#: TrackPanel.cpp:3595 TrackPanel.cpp:6482
+#: TrackPanel.cpp:3680 TrackPanel.cpp:6561
msgid "Move Track"
msgstr "ÐеÑемÑÑÑиÑи доÑÑжкÑ"
-#: TrackPanel.cpp:4160
+#: TrackPanel.cpp:4251
msgid "Expand"
msgstr "РозгоÑнÑÑи"
-#: TrackPanel.cpp:4160
+#: TrackPanel.cpp:4251
msgid "Expanded Cut Line"
msgstr "РозÑиÑена лÑнÑÑ ÑозÑÑзÑ"
-#: TrackPanel.cpp:4169
+#: TrackPanel.cpp:4260
msgid "Merge"
msgstr "Ðб'ÑднаÑи"
-#: TrackPanel.cpp:4169
+#: TrackPanel.cpp:4260
msgid "Merged Clips"
msgstr "Ðб'ÑÐ´Ð½Ð°Ð½Ñ ÑÑагменÑи"
-#: TrackPanel.cpp:4181
+#: TrackPanel.cpp:4271
msgid "Removed Cut Line"
msgstr "ÐилÑÑено лÑнÑÑ ÑозÑÑзÑ"
-#: TrackPanel.cpp:5638
+#: TrackPanel.cpp:5750
msgid "Adjusted Pan"
msgstr "ÐаноÑамÑÐ²Ð°Ð½Ð½Ñ ÑкоÑеговано"
-#: TrackPanel.cpp:5700
+#: TrackPanel.cpp:5802
msgid "Adjusted gain"
msgstr "ÐÑдÑÐ¸Ð»ÐµÐ½Ð½Ñ ÑкоÑеговано"
-#: TrackPanel.cpp:5796
-msgid "Group with Wave Track"
-msgstr "ÐгÑÑпÑваÑи з доÑÑÐ¶ÐºÐ¾Ñ Wave"
-
-#: TrackPanel.cpp:5797
-msgid "Clear any grouping"
-msgstr "ÐилÑÑиÑи бÑдÑ-Ñке гÑÑпÑваннÑ"
-
-#: TrackPanel.cpp:5962
+#: TrackPanel.cpp:6028
msgid "Can't delete track with active audio"
msgstr "Ðеможливо вилÑÑиÑи доÑÑÐ¶ÐºÑ Ð· акÑивним аÑдÑо"
-#: TrackPanel.cpp:6115
+#: TrackPanel.cpp:6178
msgid "Stereo, "
msgstr "СÑеÑео, "
-#: TrackPanel.cpp:6118
+#: TrackPanel.cpp:6181
msgid "Mono, "
msgstr "Ðоно, "
-#: TrackPanel.cpp:6120
+#: TrackPanel.cpp:6183
msgid "Left, "
msgstr "ÐÑвий, "
-#: TrackPanel.cpp:6122
+#: TrackPanel.cpp:6185
msgid "Right, "
msgstr "ÐÑавий, "
-#: TrackPanel.cpp:6144 TrackPanel.cpp:6290
+#: TrackPanel.cpp:6207 TrackPanel.cpp:6369
#, c-format
msgid "Changed '%s' to %s"
msgstr "'%s' змÑнено на %s"
-#: TrackPanel.cpp:6149
+#: TrackPanel.cpp:6210
msgid "Channel"
msgstr "Ðанал"
-#: TrackPanel.cpp:6170
+#: TrackPanel.cpp:6251
#, c-format
msgid "Split stereo track '%s'"
msgstr "РоздÑлиÑи ÑÑеÑео-доÑÑÐ¶ÐºÑ '%s'"
-#: TrackPanel.cpp:6208
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr "ÐодÑлиÑи ÑÑеÑео на моно «%s»"
+
+#: TrackPanel.cpp:6285
#, c-format
msgid "Made '%s' a stereo track"
msgstr "ÐÑобиÑи '%s' ÑÑеÑео-доÑÑжкÑ"
-#: TrackPanel.cpp:6211
+#: TrackPanel.cpp:6288
msgid "Make Stereo"
msgstr "ÐÑобиÑи ÑÑеÑеоÑонÑÑноÑ"
-#: TrackPanel.cpp:6254
+#: TrackPanel.cpp:6333
#, c-format
msgid "Changed '%s' to %d Hz"
msgstr "'%s' змÑнено на %d ÐÑ"
-#: TrackPanel.cpp:6256
+#: TrackPanel.cpp:6335
msgid "Rate Change"
msgstr "ÐмÑниÑи ÑаÑÑоÑÑ"
-#: TrackPanel.cpp:6294
+#: TrackPanel.cpp:6373
msgid "Format Change"
msgstr "ÐмÑна ÑоÑмаÑÑ"
-#: TrackPanel.cpp:6444
+#: TrackPanel.cpp:6523
msgid "Change lower speed limit (%) to:"
msgstr "ÐмÑниÑи Ð½Ð¸Ð¶Ð½Ñ Ð¼ÐµÐ¶Ñ ÑвидкоÑÑÑ (%) на:"
-#: TrackPanel.cpp:6445 TrackPanel.cpp:6446
+#: TrackPanel.cpp:6524 TrackPanel.cpp:6525
msgid "Lower speed limit"
msgstr "Ðежа Ð·Ð½Ð¸Ð¶ÐµÐ½Ð½Ñ ÑвидкоÑÑÑ"
-#: TrackPanel.cpp:6451
+#: TrackPanel.cpp:6530
msgid "Change upper speed limit (%) to:"
msgstr "ÐмÑниÑи веÑÑ
Ð½Ñ Ð¼ÐµÐ¶Ñ ÑвидкоÑÑÑ (%) на:"
-#: TrackPanel.cpp:6452 TrackPanel.cpp:6453
+#: TrackPanel.cpp:6531 TrackPanel.cpp:6532
msgid "Upper speed limit"
msgstr "ÐеÑÑ
Ð½Ñ Ð¼ÐµÐ¶Ð° ÑвидкоÑÑÑ"
-#: TrackPanel.cpp:6461
+#: TrackPanel.cpp:6540
#, c-format
msgid "Set range to '%d' - '%d'"
msgstr "ÐÑÑановиÑи Ð¼ÐµÐ¶Ñ Ñк '%d' - '%d'"
-#: TrackPanel.cpp:6464
+#: TrackPanel.cpp:6543
msgid "Set Range"
msgstr "ÐÑÑановиÑи дÑапазон"
-#: TrackPanel.cpp:6511
+#: TrackPanel.cpp:6590
msgid "Change track name to:"
msgstr "ÐмÑниÑи Ð½Ð°Ð·Ð²Ñ Ð´Ð¾ÑÑжки на:"
-#: TrackPanel.cpp:6512
+#: TrackPanel.cpp:6591
msgid "Track Name"
msgstr "Ðазва доÑÑжки"
-#: TrackPanel.cpp:6515
+#: TrackPanel.cpp:6594
#, c-format
msgid "Renamed '%s' to '%s'"
msgstr "ÐÐ°Ð·Ð²Ñ Ð·Ð¼Ñнено з '%s' на '%s'"
-#: TrackPanel.cpp:6518
+#: TrackPanel.cpp:6597
msgid "Name Change"
msgstr "ÐмÑна назви"
-#: TrackPanel.cpp:6619
+#: TrackPanel.cpp:6663
msgid "Label Track Font"
msgstr "ШÑиÑÑ Ð´Ð¾ÑÑжки Ð´Ð»Ñ Ð¿Ð¾Ð·Ð½Ð°Ñок"
-#: TrackPanel.cpp:6631 TrackPanel.cpp:6637
+#: TrackPanel.cpp:6675 TrackPanel.cpp:6681
msgid "Face name"
msgstr "Ðазва ÑÑиÑÑÑ"
-#: TrackPanel.cpp:6641 TrackPanel.cpp:6648
+#: TrackPanel.cpp:6685 TrackPanel.cpp:6692
msgid "Face size"
msgstr "РозмÑÑ ÑÑиÑÑÑ"
-#: TrackPanel.cpp:7180
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr "СÑеÑео, 999999ÐÑ"
+
+#: TrackPanel.cpp:7201
msgid "Mute"
msgstr "ТиÑа"
-#: TrackPanel.cpp:7180
+#: TrackPanel.cpp:7201
msgid "Solo"
msgstr "Соло"
@@ -4363,7 +4616,7 @@ msgstr " ÐибÑÑ ÑвÑмкнено"
#: VoiceKey.cpp:88 VoiceKey.cpp:238 VoiceKey.cpp:376 VoiceKey.cpp:517
msgid "Selection is too small to use voice key."
-msgstr "ÐидÑлена облаÑÑÑ Ð·Ð°Ð¼Ð°Ð»Ð° Ð´Ð»Ñ Ð²Ð¸ÐºÐ¾ÑиÑÑÐ°Ð½Ð½Ñ Ð³Ð¾Ð»Ð¾Ñового клÑÑа."
+msgstr "ÐибÑана облаÑÑÑ Ð·Ð°Ð¼Ð°Ð»Ð° Ð´Ð»Ñ Ð²Ð¸ÐºÐ¾ÑиÑÑÐ°Ð½Ð½Ñ Ð³Ð¾Ð»Ð¾Ñового клÑÑа."
#: VoiceKey.cpp:843
msgid "Calibration Results\n"
@@ -4384,33 +4637,37 @@ msgstr "ÐмÑн Ð·Ð½Ð°ÐºÑ â в ÑеÑеднÑомÑ: %1.4f пд: (%1
msgid "Direction Changes -- mean: %1.4f sd: (%1.4f)\n"
msgstr "ÐмÑн напÑÑÐ¼ÐºÑ â в ÑеÑеднÑомÑ: %1.4f пд: (%1.4f)\n"
-#: WaveTrack.cpp:88
+#: WaveTrack.cpp:84
msgid "Audio Track"
msgstr "ÐоÑÑжка"
-#: WaveTrack.cpp:597 WaveTrack.cpp:616 WaveTrack.cpp:1057 WaveTrack.cpp:1076
+#: WaveTrack.cpp:978 WaveTrack.cpp:997
msgid "There is not enough room available to paste the selection"
-msgstr "Ðе виÑÑаÑÐ°Ñ Ð¼ÑÑÑÑ Ð´Ð»Ñ Ð²ÑÑавки видÑленого ÑÑагменÑÑ"
+msgstr "Ðе виÑÑаÑÐ°Ñ Ð¼ÑÑÑÑ Ð´Ð»Ñ Ð²ÑÑавки вибÑаного ÑÑагменÑÑ"
-#: WaveTrack.cpp:2086
+#: WaveTrack.cpp:2023
msgid "There is not enough room available to expand the cut line"
msgstr "ÐедоÑÑаÑнÑо пÑоÑÑоÑÑ Ð´Ð»Ñ Ð¿Ð¾ÑиÑÐµÐ½Ð½Ñ Ð»ÑнÑÑ Ð²Ð¸ÑÑзаннÑ"
-#: commands/CommandManager.cpp:518
+#: commands/CommandManager.cpp:545
#, c-format
msgid "Plugins 1 to %i"
msgstr "ÐодÑÐ»Ñ Ð²Ñд 1 до %i"
-#: commands/CommandManager.cpp:532
+#: commands/CommandManager.cpp:559
#, c-format
msgid "Plugins %i to %i"
msgstr "ÐодÑÐ»Ñ Ð²Ñд %i до %i"
-#: commands/CommandManager.cpp:857
-msgid "Disallowed for some reason. Try selecting some audio first?"
-msgstr "Ð Ð¿ÐµÐ²Ð½Ð¾Ñ Ð¿ÑиÑини забоÑонено. Ðоже ÑпоÑаÑÐºÑ ÑпÑобÑÑÑе видÑлиÑи облаÑÑÑ Ð·Ñ Ð·Ð²Ñком?"
+#: commands/CommandManager.cpp:923
+msgid ""
+"There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
+msgstr ""
+"ÐÑд ÑÐ°Ñ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð¿Ð¾Ð¿ÐµÑеднÑÐ¾Ñ Ð´ÑÑ ÑÑалаÑÑ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ°. ЯкÑо ви вважаÑÑе, Ñо ÑÑ\n"
+"пÑиÑÐ¸Ð½Ð¾Ñ Ñ Ð²Ð°Ð´Ð° Ñ Ð¿ÑогÑамÑ, повÑдомÑе ÑозÑобникам, де Ñаме ÑÑалаÑÑ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ°."
-#: commands/CommandManager.cpp:861
+#: commands/CommandManager.cpp:927
msgid ""
"You can only do this when playing and recording are\n"
" stopped. [Pausing is not sufficient.]"
@@ -4418,70 +4675,70 @@ msgstr ""
"Ðи можеÑе виконÑваÑи Ñе лиÑе коли вÑдÑвоÑÐµÐ½Ð½Ñ Ñ Ð·Ð°Ð¿Ð¸Ñ\n"
" зÑпинено. [ÐÑизÑÐ¿Ð¸Ð½ÐµÐ½Ð½Ñ Ð½ÐµÐ´Ð¾ÑÑаÑнÑо.]"
-#: commands/CommandManager.cpp:863
+#: commands/CommandManager.cpp:929
msgid ""
"You must first select some stereo audio for this\n"
" to use. [You can't use this with mono.]"
msgstr ""
-"СпоÑаÑÐºÑ ÑлÑд видÑлиÑи облаÑÑÑ ÑÑеÑео-звÑкÑ. [Ð¦Ñ Ð´ÑÑ Ð½Ðµ можна "
+"СпоÑаÑÐºÑ ÑлÑд вибÑаÑи облаÑÑÑ ÑÑеÑео-звÑкÑ. [Ð¦Ñ Ð´ÑÑ Ð½Ðµ можна "
"викоÑиÑÑовÑваÑи Ð´Ð»Ñ Ð¼Ð¾Ð½Ð¾.]"
-#: commands/CommandManager.cpp:865
+#: commands/CommandManager.cpp:931
msgid "You must first select some audio for this to use."
-msgstr "СпоÑаÑÐºÑ ÑлÑд видÑлиÑи облаÑÑÑ Ð·Ð²ÑкÑ."
+msgstr "СпоÑаÑÐºÑ ÑлÑд вибÑаÑи облаÑÑÑ Ð·Ð²ÑкÑ."
-#: commands/CommandManager.cpp:867
+#: commands/CommandManager.cpp:933
msgid ""
"You must first select some audio for this\n"
" to use. [Selecting other kinds of track won't work.]"
msgstr ""
-"СпоÑаÑÐºÑ ÑÑеба видÑлиÑи облаÑÑÑ Ð·Ð²ÑкÑ.\n"
+"СпоÑаÑÐºÑ ÑÑеба вибÑаÑи облаÑÑÑ Ð·Ð²ÑкÑ.\n"
"[ÐибÑÑ ÑнÑиÑ
ÑипÑв доÑÑжки не пÑдÑйде.]"
-#: commands/CommandManager.cpp:872
+#: commands/CommandManager.cpp:938
msgid "Disallowed"
msgstr "ÐабоÑонено"
-#: commands/CommandManager.cpp:1054
+#: commands/CommandManager.cpp:1120
#, c-format
msgid "Loaded %d keyboard shortcuts\n"
msgstr "ÐаванÑажено %d комбÑнаÑÑй клавÑÑ\n"
-#: commands/CommandManager.cpp:1056
+#: commands/CommandManager.cpp:1122
msgid "Loading keyboard shortcuts"
msgstr "ÐаванÑажÑÑÑÑÑÑ ÐºÐ¾Ð¼Ð±ÑнаÑÑÑ ÐºÐ»Ð°Ð²ÑÑ"
-#: effects/Amplify.cpp:52
+#: effects/Amplify.cpp:53
#, c-format
msgid "Applied effect: %s %.1f dB"
msgstr "ÐаÑÑоÑовано еÑекÑ: %s %.1f дÐ"
-#: effects/Amplify.cpp:139
+#: effects/Amplify.cpp:140
msgid "Amplify"
msgstr "ÐÑдÑÐ¸Ð»ÐµÐ½Ð½Ñ ÑигналÑ"
-#: effects/Amplify.cpp:155 effects/Compressor.cpp:476
-#: effects/Normalize.cpp:337
+#: effects/Amplify.cpp:156 effects/Compressor.cpp:487
+#: effects/Normalize.cpp:341
msgid "by Dominic Mazzoni"
msgstr "ÐомÑнÑк ÐаÑÑонÑ"
-#: effects/Amplify.cpp:168
+#: effects/Amplify.cpp:169
msgid "Amplification (dB):"
msgstr "ÐÑдÑÐ¸Ð»ÐµÐ½Ð½Ñ (дÐ):"
-#: effects/Amplify.cpp:183
+#: effects/Amplify.cpp:184
msgid "Amplification dB"
msgstr "ÐÑдÑÐ¸Ð»ÐµÐ½Ð½Ñ (дÐ)"
-#: effects/Amplify.cpp:190
+#: effects/Amplify.cpp:191
msgid "New Peak Amplitude (dB):"
msgstr "Ðова пÑкова амплÑÑÑда (дÐ):"
-#: effects/Amplify.cpp:200
+#: effects/Amplify.cpp:201
msgid "Allow clipping"
msgstr "ÐозволиÑи зÑÑзаннÑ"
-#: effects/Amplify.cpp:222 effects/Amplify.cpp:279 effects/Amplify.cpp:323
+#: effects/Amplify.cpp:223 effects/Amplify.cpp:280 effects/Amplify.cpp:324
msgid "-Infinity"
msgstr "-ÐеÑкÑнÑеннÑÑÑÑ"
@@ -4493,7 +4750,7 @@ msgstr "ÐÑдÑÐ¸Ð»ÐµÐ½Ð½Ñ ÑигналÑ..."
msgid "Amplifying"
msgstr "ТÑÐ¸Ð²Ð°Ñ Ð¿ÑдÑÐ¸Ð»ÐµÐ½Ð½Ñ ÑигналÑ"
-#: effects/AutoDuck.cpp:125
+#: effects/AutoDuck.cpp:140
msgid ""
"You selected a track which does not contain audio. AutoDuck can only process "
"audio tracks."
@@ -4501,12 +4758,12 @@ msgstr ""
"Ðи обÑали доÑÑжкÑ, Ñка не мÑÑÑиÑÑ Ð·Ð²ÑкÑ. ÐÑиглÑÑÐµÐ½Ð½Ñ Ð¼Ñзики може "
"заÑÑоÑовÑваÑиÑÑ Ð»Ð¸Ñе до ÑÑнÑÑÑиÑ
доÑÑжок."
-#: effects/AutoDuck.cpp:126 effects/AutoDuck.cpp:138 effects/AutoDuck.cpp:453
-#: effects/AutoDuck.cpp:570
+#: effects/AutoDuck.cpp:141 effects/AutoDuck.cpp:153 effects/AutoDuck.cpp:467
+#: effects/AutoDuck.cpp:584
msgid "Auto Duck"
msgstr "ÐÑиглÑÑÐµÐ½Ð½Ñ Ð¼Ñзики"
-#: effects/AutoDuck.cpp:137
+#: effects/AutoDuck.cpp:152
msgid ""
"Auto Duck needs a control track which must be placed below the selected track"
"(s)."
@@ -4514,55 +4771,54 @@ msgstr ""
"ÐÐ»Ñ ÐµÑекÑÑ Ð¿ÑиглÑÑÐµÐ½Ð½Ñ Ð¼Ñзики поÑÑÑбна конÑÑолÑна доÑÑжка, Ñка Ð¼Ð°Ñ Ð±ÑÑи "
"ÑозÑаÑована пÑд обÑаними доÑÑжками."
-#: effects/AutoDuck.cpp:465
+#: effects/AutoDuck.cpp:479
msgid "Auto Duck by Markus Meyer"
msgstr "ÐÐ¾Ð´Ð°Ð²Ð°Ð½Ð½Ñ Ð°ÑмоÑÑеÑи, авÑÐ¾Ñ Markus Meyer"
-#: effects/AutoDuck.cpp:487
+#: effects/AutoDuck.cpp:501
msgid "Duck amount:"
msgstr "ÐелиÑина пÑиглÑÑеннÑ:"
-#: effects/AutoDuck.cpp:492
+#: effects/AutoDuck.cpp:506
msgid "Maximum pause:"
msgstr "ÐакÑималÑна паÑза:"
#. i18n-hint: Name of time display format that shows time in seconds
-#: effects/AutoDuck.cpp:494 effects/AutoDuck.cpp:499 effects/AutoDuck.cpp:504
-#: effects/AutoDuck.cpp:509 effects/AutoDuck.cpp:514
-#: prefs/AudioIOPrefs.cpp:173 prefs/AudioIOPrefs.cpp:181
-#: prefs/AudioIOPrefs.cpp:183 prefs/AudioIOPrefs.cpp:208
-#: prefs/AudioIOPrefs.cpp:210 prefs/MidiIOPrefs.cpp:161
-#: prefs/MidiIOPrefs.cpp:163 prefs/MidiIOPrefs.cpp:187
-#: prefs/MidiIOPrefs.cpp:189 prefs/MidiIOPrefs.cpp:197
-#: widgets/TimeTextCtrl.cpp:263
+#: effects/AutoDuck.cpp:508 effects/AutoDuck.cpp:513 effects/AutoDuck.cpp:518
+#: effects/AutoDuck.cpp:523 effects/AutoDuck.cpp:528 prefs/MidiIOPrefs.cpp:157
+#: prefs/MidiIOPrefs.cpp:159 prefs/MidiIOPrefs.cpp:181
+#: prefs/MidiIOPrefs.cpp:183 prefs/MidiIOPrefs.cpp:191
+#: prefs/PlaybackPrefs.cpp:62 prefs/PlaybackPrefs.cpp:76
+#: prefs/PlaybackPrefs.cpp:82 prefs/PlaybackPrefs.cpp:96
+#: prefs/PlaybackPrefs.cpp:102 widgets/TimeTextCtrl.cpp:264
msgid "seconds"
msgstr "ÑекÑнд"
-#: effects/AutoDuck.cpp:497
+#: effects/AutoDuck.cpp:511
msgid "Outer fade down length:"
msgstr "ÐовнÑÑÐ½Ñ Ð´Ð¾Ð²Ð¶Ð¸Ð½Ð° згаÑаннÑ:"
-#: effects/AutoDuck.cpp:502
+#: effects/AutoDuck.cpp:516
msgid "Outer fade up length:"
msgstr "ÐовнÑÑÐ½Ñ Ð´Ð¾Ð²Ð¶Ð¸Ð½Ð° наÑоÑÑаннÑ:"
-#: effects/AutoDuck.cpp:507
+#: effects/AutoDuck.cpp:521
msgid "Inner fade down length:"
msgstr "ÐнÑÑÑÑÑÐ½Ñ Ð´Ð¾Ð²Ð¶Ð¸Ð½Ð° згаÑаннÑ:"
-#: effects/AutoDuck.cpp:512
+#: effects/AutoDuck.cpp:526
msgid "Inner fade up length:"
msgstr "ÐнÑÑÑÑÑÐ½Ñ Ð´Ð¾Ð²Ð¶Ð¸Ð½Ð° наÑоÑÑаннÑ:"
-#: effects/AutoDuck.cpp:521 effects/Compressor.cpp:494
+#: effects/AutoDuck.cpp:535 effects/Compressor.cpp:506
msgid "Threshold:"
msgstr "ÐоÑÑг:"
-#: effects/AutoDuck.cpp:570
+#: effects/AutoDuck.cpp:584
msgid "Please enter valid values."
msgstr "ÐведÑÑÑ ÐºÐ¾ÑекÑÐ½Ñ Ð·Ð½Ð°ÑеннÑ."
-#: effects/AutoDuck.cpp:705
+#: effects/AutoDuck.cpp:719
msgid "Preview not available"
msgstr "ÐопеÑÐµÐ´Ð½Ñ Ð¿ÑоÑлÑÑ
овÑÐ²Ð°Ð½Ð½Ñ Ð½ÐµÐ´Ð¾ÑÑÑпне"
@@ -4574,9 +4830,8 @@ msgstr "ÐÑиглÑÑÐµÐ½Ð½Ñ Ð¼Ñзики..."
msgid "Processing Auto Duck..."
msgstr "ÐÑиглÑÑÐµÐ½Ð½Ñ Ð¼Ñзики..."
-#: effects/AvcCompressor.cpp:738 effects/VST/VSTEffect.cpp:455
-#: effects/audiounits/AudioUnitEffect.cpp:882 effects/nyquist/Nyquist.cpp:1053
-#: widgets/ErrorDialog.cpp:101
+#: effects/AvcCompressor.cpp:738 effects/audiounits/AudioUnitEffect.cpp:856
+#: effects/nyquist/Nyquist.cpp:1237 widgets/ErrorDialog.cpp:99
msgid "OK"
msgstr "ÐаÑазд"
@@ -4638,7 +4893,7 @@ msgstr "ÐмÑна виÑоÑи ÑонÑ"
msgid "Change Pitch without Changing Tempo"
msgstr "ÐмÑниÑи виÑоÑÑ ÑÐ¾Ð½Ñ Ð½Ðµ змÑнÑÑÑи Ñемп"
-#: effects/ChangePitch.cpp:258 effects/ChangeSpeed.cpp:336
+#: effects/ChangePitch.cpp:258 effects/ChangeSpeed.cpp:337
#: effects/ChangeTempo.cpp:176
msgid "by Vaughan Johnson && Dominic Mazzoni"
msgstr "ÐвÑоÑи â Vaughan Johnson Ñа Dominic Mazzoni"
@@ -4683,7 +4938,7 @@ msgstr "ÐÑвÑонÑв (half-steps):"
msgid "Semitones in half-steps"
msgstr "ÐÑвÑонÑв (Ñ Ð¿ÑвкÑокаÑ
)"
-#: effects/ChangePitch.cpp:326 effects/ChangeSpeed.cpp:369
+#: effects/ChangePitch.cpp:326 effects/ChangeSpeed.cpp:370
#: effects/ChangeTempo.cpp:209 effects/ChangeTempo.cpp:222
msgid "from"
msgstr "з"
@@ -4692,7 +4947,7 @@ msgstr "з"
msgid "From frequency in hertz"
msgstr "Ð ÑаÑÑоÑи Ñ ÐеÑÑаÑ
"
-#: effects/ChangePitch.cpp:331 effects/ChangeSpeed.cpp:374
+#: effects/ChangePitch.cpp:331 effects/ChangeSpeed.cpp:375
#: effects/ChangeTempo.cpp:214 effects/ChangeTempo.cpp:227
msgid "to"
msgstr "до"
@@ -4701,13 +4956,13 @@ msgstr "до"
msgid "To frequency in seconds"
msgstr "Ðо ÑаÑÑоÑи Ñ ÐеÑÑаÑ
"
-#: effects/ChangePitch.cpp:338 effects/ChangeSpeed.cpp:347
+#: effects/ChangePitch.cpp:338 effects/ChangeSpeed.cpp:348
#: effects/ChangeTempo.cpp:187
msgid "Percent Change:"
msgstr "ÐÑдÑоÑок змÑн:"
#: effects/ChangePitch.cpp:343 effects/ChangePitch.cpp:356
-#: effects/ChangeSpeed.cpp:358 effects/ChangeTempo.cpp:198
+#: effects/ChangeSpeed.cpp:359 effects/ChangeTempo.cpp:198
msgid "Percent Change"
msgstr "ÐмÑна Ñ Ð²ÑдÑоÑкаÑ
"
@@ -4724,33 +4979,33 @@ msgstr "ÐмÑнÑÑÑÑÑÑ Ð²Ð¸ÑоÑа ÑонÑ"
msgid "Applied effect: %s %.1f%%"
msgstr "ÐаÑÑоÑовано еÑекÑ: %s %.1f%%"
-#: effects/ChangeSpeed.cpp:298
+#: effects/ChangeSpeed.cpp:299
msgid "Change Speed"
msgstr "ÐмÑна ÑвидкоÑÑÑ"
#. i18n-hint: n/a is an English abbreviation meaning "not applicable"
#. (in other words, unimportant, not relevant).
-#: effects/ChangeSpeed.cpp:329
+#: effects/ChangeSpeed.cpp:330
msgid "n/a"
msgstr "не вказано"
-#: effects/ChangeSpeed.cpp:334
+#: effects/ChangeSpeed.cpp:335
msgid "Change Speed, affecting both Tempo and Pitch"
msgstr "ÐмÑниÑи ÑвидкÑÑÑÑ, впливаÑÑи на Ñемп Ñа виÑоÑÑ ÑонÑ"
-#: effects/ChangeSpeed.cpp:338
+#: effects/ChangeSpeed.cpp:339
msgid "using SampleRate, by Erik de Castro Lopo"
msgstr "з викоÑиÑÑаннÑм бÑблÑоÑеки SampleRate, авÑÐ¾Ñ Erik de Castro Lopo"
-#: effects/ChangeSpeed.cpp:366
+#: effects/ChangeSpeed.cpp:367
msgid "Standard Vinyl RPM:"
msgstr "СÑандаÑÑне знаÑÐµÐ½Ð½Ñ Ð¾Ð±/Ñ
в. плаÑÑвки:"
-#: effects/ChangeSpeed.cpp:370
+#: effects/ChangeSpeed.cpp:371
msgid "From RPM"
msgstr "Роб./Ñ
в."
-#: effects/ChangeSpeed.cpp:375
+#: effects/ChangeSpeed.cpp:376
msgid "To RPM"
msgstr "Ðо об./Ñ
в."
@@ -4818,11 +5073,11 @@ msgstr "ÐбеÑÑÑÑ Ð¿Ð¾ÑÑг (нижÑе знаÑÐµÐ½Ð½Ñ Ð±ÑлÑÑ ÑÑÑ
msgid "Select threshold"
msgstr "ÐбÑаÑи поÑогове знаÑеннÑ"
-#: effects/ClickRemoval.cpp:354
+#: effects/ClickRemoval.cpp:358
msgid "Max spike width (higher is more sensitive):"
msgstr "ÐакÑ. ÑиÑина пÑÐºÑ (виÑе знаÑÐµÐ½Ð½Ñ Ð±ÑлÑÑ ÑÑÑливе):"
-#: effects/ClickRemoval.cpp:363
+#: effects/ClickRemoval.cpp:367
msgid "Max spike width"
msgstr "ÐакÑималÑна ÑиÑина пÑка"
@@ -4834,108 +5089,113 @@ msgstr "ÐилÑÑÐµÐ½Ð½Ñ ÐºÐ»Ð°ÑаннÑ..."
msgid "Removing clicks and pops..."
msgstr "ÐилÑÑаÑÑÑÑÑ ÑÑÑÑк Ñа клаÑаннÑ..."
-#: effects/Compressor.cpp:461
+#: effects/Compressor.cpp:472
msgid "Dynamic Range Compressor"
msgstr "ÐомпÑеÑÐ¾Ñ Ð´Ð¸Ð½Ð°Ð¼ÑÑного дÑапазонÑ"
-#: effects/Compressor.cpp:498
+#: effects/Compressor.cpp:510
msgid "Threshold"
msgstr "ÐоÑогове знаÑеннÑ"
-#: effects/Compressor.cpp:502
+#: effects/Compressor.cpp:514
msgid "Ratio:"
msgstr "ÐоеÑÑÑÑÑнÑ:"
-#: effects/Compressor.cpp:506
+#: effects/Compressor.cpp:518
msgid "Ratio"
msgstr "ÐоеÑÑÑÑÑнÑ"
-#: effects/Compressor.cpp:510
+#: effects/Compressor.cpp:522
msgid "Attack Time:"
msgstr "Ð§Ð°Ñ Ð½Ð°ÑоÑÑаннÑ:"
-#: effects/Compressor.cpp:514
+#: effects/Compressor.cpp:526
msgid "Attack Time"
msgstr "Ð§Ð°Ñ Ð½Ð°ÑоÑÑаннÑ"
-#: effects/Compressor.cpp:518
+#: effects/Compressor.cpp:530
msgid "Decay Time:"
msgstr "Ð§Ð°Ñ ÑпаданнÑ:"
-#: effects/Compressor.cpp:522
+#: effects/Compressor.cpp:534
msgid "Decay Time"
msgstr "Ð§Ð°Ñ ÑпаданнÑ"
-#: effects/Compressor.cpp:530
-msgid "Normalize to 0dB after compressing"
-msgstr "ÐоÑмалÑзÑваÑи до 0dB пÑÑÐ»Ñ ÑÑиÑканнÑ"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
+msgstr "ÐоÑмеÑиÑне пÑдÑÐ¸Ð»ÐµÐ½Ð½Ñ Ð´Ð»Ñ 0дРпÑÑÐ»Ñ ÑÑиÑканнÑ"
-#: effects/Compressor.cpp:563
+#: effects/Compressor.cpp:575
#, c-format
msgid "Threshold %d dB"
msgstr "ÐоÑÑг: %d дÐ"
-#: effects/Compressor.cpp:564
+#: effects/Compressor.cpp:576
#, c-format
msgid "%3d dB"
msgstr "%3d дÐ"
-#: effects/Compressor.cpp:567
+#: effects/Compressor.cpp:579
#, c-format
msgid "Ratio %.0f to 1"
msgstr "ÐоеÑÑÑÑÑнÑ: %.0f:1"
-#: effects/Compressor.cpp:568
+#: effects/Compressor.cpp:580
#, c-format
msgid "%.0f:1"
msgstr "%.0f:1"
-#: effects/Compressor.cpp:571
+#: effects/Compressor.cpp:583
#, c-format
msgid "Ratio %.1f to 1"
msgstr "ÐоеÑÑÑÑÑнÑ: %.1f:1"
-#: effects/Compressor.cpp:572
+#: effects/Compressor.cpp:584
#, c-format
msgid "%.1f:1"
msgstr "%.1f:1"
-#: effects/Compressor.cpp:575
+#: effects/Compressor.cpp:587
#, c-format
msgid "Attack Time %.1f secs"
msgstr "Ð§Ð°Ñ Ð½Ð°ÑоÑÑаннÑ: %.1f ÑекÑнд"
-#: effects/Compressor.cpp:576 effects/Compressor.cpp:579
+#: effects/Compressor.cpp:588 effects/Compressor.cpp:591
#, c-format
msgid "%.1f secs"
msgstr "%.1f ÑекÑнд"
-#: effects/Compressor.cpp:578
+#: effects/Compressor.cpp:590
#, c-format
msgid "Decay Time %.1f secs"
msgstr "Ð§Ð°Ñ Ð·Ð³Ð°ÑаннÑ: %.1f ÑекÑнд"
-#: effects/Compressor.h:36
+#: effects/Compressor.h:37
msgid "Compressor..."
msgstr "ÐомпÑеÑоÑ..."
-#: effects/Compressor.h:50
+#: effects/Compressor.h:51
msgid "Applying Dynamic Range Compression..."
msgstr "ÐаÑÑоÑовÑÑÑÑÑÑ ÐºÐ¾Ð¼Ð¿ÑеÑÑÑ Ð´Ð¸Ð½Ð°Ð¼ÑÑного дÑапазонÑ..."
-#: effects/Contrast.cpp:79
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr "ÐналÑз конÑÑаÑÑноÑÑÑ"
+
+#: effects/Contrast.cpp:88
msgid "Contrast Tool Foreground"
msgstr "ÐеÑеднÑй план Ð´Ð»Ñ ÑнÑÑÑÑменÑÑ ÐºÐ¾Ð½ÑÑаÑÑÑ"
-#: effects/Contrast.cpp:79
+#: effects/Contrast.cpp:88
msgid ""
"Foreground times selected.\n"
"Now select background and use Ctrl+Shift+T or menu again."
msgstr ""
"ÐбÑано дÑлÑÐ½ÐºÑ Ð¿ÐµÑеднÑого планÑ.\n"
-"Ð¢ÐµÐ¿ÐµÑ Ð²Ð°Ð¼ ÑлÑд обÑаÑи Ñло Ñ ÑкоÑиÑÑаÑиÑÑ ÐºÐ¾Ð¼Ð±ÑнаÑÑÑÑ ÐºÐ»Ð°Ð²ÑÑ Ctrl+Shift+T або пÑнкÑом Ð¼ÐµÐ½Ñ Ð·Ð½Ð¾Ð²Ñ."
+"Ð¢ÐµÐ¿ÐµÑ Ð²Ð°Ð¼ ÑлÑд обÑаÑи Ñло Ñ ÑкоÑиÑÑаÑиÑÑ ÐºÐ¾Ð¼Ð±ÑнаÑÑÑÑ ÐºÐ»Ð°Ð²ÑÑ Ctrl+Shift+T або "
+"пÑнкÑом Ð¼ÐµÐ½Ñ Ð·Ð½Ð¾Ð²Ñ."
-#: effects/Contrast.cpp:127
+#: effects/Contrast.cpp:144
msgid ""
"Start time after after end time!\n"
"Please enter reasonable times."
@@ -4943,7 +5203,7 @@ msgstr ""
"Ð§Ð°Ñ Ð¿Ð¾ÑаÑÐºÑ ÑозÑаÑовано пÑÑÐ»Ñ ÑаÑÑ Ð·Ð°Ð²ÐµÑÑеннÑ!\n"
"ÐÑÐ´Ñ Ð»Ð°Ñка, пеÑеглÑнÑÑе вибÑÐ°Ð½Ñ Ð·Ð½Ð°ÑеннÑ."
-#: effects/Contrast.cpp:137
+#: effects/Contrast.cpp:154
msgid ""
"Times are not reasonable!\n"
"Please enter reasonable times."
@@ -4951,282 +5211,256 @@ msgstr ""
"ÐбÑано некоÑекÑÐ½Ñ Ð·Ð½Ð°ÑÐµÐ½Ð½Ñ ÑаÑÑ!\n"
"ÐÑÐ´Ñ Ð»Ð°Ñка, випÑавÑе ÑÑ
."
-#: effects/Contrast.cpp:190
-msgid "Hello.\n"
-msgstr "ÐÑивÑÑ.\n"
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr "ÐналÑзаÑÐ¾Ñ Ð·Ð²Ñкового конÑÑаÑÑÑ WCAG2"
-
-#: effects/Contrast.cpp:277 effects/Contrast.cpp:288 effects/Contrast.cpp:371
-#: effects/Contrast.cpp:415
-msgid "Measured"
-msgstr "ÐимÑÑÑний"
-
-#: effects/Contrast.cpp:318
+#: effects/Contrast.cpp:276
msgid "Contrast Analyzer"
msgstr "ÐналÑзаÑÐ¾Ñ ÐºÐ¾Ð½ÑÑаÑÑÑ"
-#: effects/Contrast.cpp:321
+#: effects/Contrast.cpp:279
msgid "Parameters"
msgstr "ÐаÑамеÑÑи"
-#: effects/Contrast.cpp:328 effects/ToneGen.cpp:356
-#: toolbars/ControlToolBar.cpp:186
+#: effects/Contrast.cpp:286 effects/ToneGen.cpp:312
+#: toolbars/ControlToolBar.cpp:181
msgid "Start"
msgstr "ÐоÑаÑок"
-#: effects/Contrast.cpp:329 effects/ToneGen.cpp:357
-#: toolbars/ControlToolBar.cpp:189 toolbars/SelectionBar.cpp:156
+#: effects/Contrast.cpp:287 effects/ToneGen.cpp:313
+#: toolbars/ControlToolBar.cpp:184 toolbars/SelectionBar.cpp:156
#: toolbars/SelectionBar.cpp:159 toolbars/SelectionBar.cpp:262
msgid "End"
msgstr "ÐÑнеÑÑ"
-#: effects/Contrast.cpp:332
+#: effects/Contrast.cpp:290
msgid "Volume "
msgstr "ÐÑÑнÑÑÑÑ "
-#: effects/Contrast.cpp:335
+#: effects/Contrast.cpp:293
msgid "Foreground:"
msgstr "ÐеÑеднÑй план:"
-#: effects/Contrast.cpp:347
+#: effects/Contrast.cpp:305
msgid "Foreground start time"
msgstr "Ð§Ð°Ñ Ð¿Ð¾ÑаÑÐºÑ Ð¿ÐµÑеднÑого планÑ"
-#: effects/Contrast.cpp:365
+#: effects/Contrast.cpp:323
msgid "Foreground end time"
msgstr "Ð§Ð°Ñ Ð·Ð°Ð²ÐµÑÑÐµÐ½Ð½Ñ Ð¿ÐµÑеднÑого планÑ"
-#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
+#: effects/Contrast.cpp:329 effects/Contrast.cpp:373 effects/Contrast.cpp:437
+#: effects/Contrast.cpp:448
+msgid "Measured"
+msgstr "ÐимÑÑÑний"
+
+#: effects/Contrast.cpp:331 effects/Contrast.cpp:375
msgid "Use selection"
msgstr "ÐикоÑиÑÑаÑи вибÑане"
-#: effects/Contrast.cpp:378
+#: effects/Contrast.cpp:336
msgid "Background:"
msgstr "Тло:"
-#: effects/Contrast.cpp:391
+#: effects/Contrast.cpp:349
msgid "Background start time"
msgstr "Ð§Ð°Ñ Ð¿Ð¾ÑаÑÐºÑ Ñла"
-#: effects/Contrast.cpp:409
+#: effects/Contrast.cpp:367
msgid "Background end time"
msgstr "Ð§Ð°Ñ Ð·Ð°Ð²ÐµÑÑÐµÐ½Ð½Ñ Ñла"
-#: effects/Contrast.cpp:426
+#: effects/Contrast.cpp:384
msgid "Result"
msgstr "РезÑлÑÑаÑ"
-#: effects/Contrast.cpp:430
+#: effects/Contrast.cpp:388
msgid "Contrast Result:"
msgstr "РезÑлÑÑÐ°Ñ ÐºÐ¾Ð½ÑÑаÑÑÑ:"
-#: effects/Contrast.cpp:433
+#: effects/Contrast.cpp:391
msgid "Reset"
msgstr "ÐÑдновиÑи"
-#: effects/Contrast.cpp:434
+#: effects/Contrast.cpp:392
msgid "Difference:"
msgstr "Ð ÑзниÑÑ:"
-#: effects/Contrast.cpp:445
+#: effects/Contrast.cpp:403
msgid "Information"
msgstr "ÐнÑоÑмаÑÑÑ"
-#: effects/Contrast.cpp:447
+#: effects/Contrast.cpp:405
msgid "For measuring rms volume differences between two selections of audio."
-msgstr "ÐÐ»Ñ Ð²Ð¸Ð¼ÑÑÑÐ²Ð°Ð½Ð½Ñ Ð²ÑдноÑÐ½Ð¾Ñ ÑÑзниÑÑ Ñ Ð³ÑÑноÑÑÑ Ð¼Ñж двома дÑлÑнками звÑÐºÐ¾Ð²Ð¾Ñ Ð´Ð¾ÑÑжки."
+msgstr ""
+"ÐÐ»Ñ Ð²Ð¸Ð¼ÑÑÑÐ²Ð°Ð½Ð½Ñ Ð²ÑдноÑÐ½Ð¾Ñ ÑÑзниÑÑ Ñ Ð³ÑÑноÑÑÑ Ð¼Ñж двома дÑлÑнками звÑÐºÐ¾Ð²Ð¾Ñ "
+"доÑÑжки."
-#: effects/Contrast.cpp:448
+#: effects/Contrast.cpp:406
msgid "Help for WCAG2 Audio Contrast Analyzer"
msgstr "ÐовÑдка Ñодо аналÑзаÑоÑа конÑÑаÑÑÑ Ð·Ð²ÑÐºÑ WCAG2"
-#: effects/Contrast.cpp:452 toolbars/ControlToolBar.cpp:83
-msgid "Control"
-msgstr "ÐонÑÑолÑ"
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr "ÐаÑваженнÑ: наÑиÑÐºÐ°Ð½Ð½Ñ ÐºÐ½Ð¾Ð¿ÐºÐ¸ «ÐаÑазд» ÑÐºÐ¸Ð´Ð°Ñ Ð·Ð½Ð°ÑÐµÐ½Ð½Ñ ÑаÑÑ."
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
-msgstr "ÐакÑиÑи, але збеÑегÑи ÑаÑ"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
+msgstr "ÐакÑиÑи (зекономиÑи ÑаÑ)"
-#: effects/Contrast.cpp:466 effects/Contrast.cpp:472 effects/Contrast.cpp:478
-#: effects/Contrast.cpp:484
+#: effects/Contrast.cpp:474 effects/Contrast.cpp:480 effects/Contrast.cpp:486
+#: effects/Contrast.cpp:492
msgid "Measure"
msgstr "ÐимÑÑÑÑи"
-#: effects/Contrast.cpp:511
+#: effects/Contrast.cpp:531
msgid "No foreground to measure"
msgstr "ÐÐµÐ¼Ð°Ñ Ð¿ÐµÑеднÑого Ð¿Ð»Ð°Ð½Ñ Ð´Ð»Ñ Ð²Ð¸Ð¼ÑÑÑваннÑ"
-#: effects/Contrast.cpp:516
+#: effects/Contrast.cpp:536
msgid "Measured foreground level"
msgstr "ÐимÑÑÑний ÑÑÐ²ÐµÐ½Ñ Ð¿ÐµÑеднÑого планÑ"
-#: effects/Contrast.cpp:517 effects/Contrast.cpp:527
+#: effects/Contrast.cpp:537 effects/Contrast.cpp:547
#, c-format
msgid "%.1f dB"
msgstr "%.1f дÐ"
-#: effects/Contrast.cpp:521
+#: effects/Contrast.cpp:541
msgid "No background to measure"
msgstr "ÐÐµÐ¼Ð°Ñ Ñла Ð´Ð»Ñ Ð²Ð¸Ð¼ÑÑÑваннÑ"
-#: effects/Contrast.cpp:526
+#: effects/Contrast.cpp:546
msgid "Measured background level"
msgstr "ÐимÑÑÑний ÑÑÐ²ÐµÐ½Ñ Ñла"
-#: effects/Contrast.cpp:532
+#: effects/Contrast.cpp:552
msgid "WCAG2 Pass"
msgstr "WCAG2 пÑойдено"
-#: effects/Contrast.cpp:534
+#: effects/Contrast.cpp:554
msgid "WCAG2 Fail"
msgstr "Ðомилка WCAG2"
-#: effects/Contrast.cpp:535
+#: effects/Contrast.cpp:555
msgid "Current difference"
msgstr "ÐоÑоÑна ÑÑзниÑÑ"
-#: effects/Contrast.cpp:536
+#: effects/Contrast.cpp:556
#, c-format
msgid "%.1f dB Average rms"
msgstr "%.1f дРÑеÑеднÑоквадÑаÑиÑного"
-#: effects/Contrast.cpp:541
+#: effects/Contrast.cpp:561
msgid "Please enter valid times."
msgstr "ÐÑÐ´Ñ Ð»Ð°Ñка, введÑÑÑ ÐºÐ¾ÑекÑÐ½Ñ Ð·Ð½Ð°ÑеннÑ."
-#: effects/Contrast.cpp:551
+#: effects/Contrast.cpp:571
msgid "Export Contrast Result As:"
msgstr "ÐкÑпоÑÑÑваÑи ÑезÑлÑÑаÑи конÑÑаÑÑÑ Ñк:"
-#: effects/Contrast.cpp:572
+#: effects/Contrast.cpp:592
msgid "WCAG 2.0 Success Criteria 1.4.7 Contrast Results"
msgstr "ÐÑиÑеÑÑй ÑÑпÑÑ
Ñ 1.4.7 ÑезÑлÑÑаÑÑв конÑÑаÑÑÑ WCAG 2.0"
-#: effects/Contrast.cpp:574
+#: effects/Contrast.cpp:594
#, c-format
msgid "Filename = %s."
msgstr "Ðазва Ñайла = %s."
-#: effects/Contrast.cpp:576
+#: effects/Contrast.cpp:596
msgid "Foreground"
msgstr "ÐеÑеднÑй план"
-#: effects/Contrast.cpp:581 effects/Contrast.cpp:598
+#: effects/Contrast.cpp:601 effects/Contrast.cpp:618
#, c-format
msgid "Time started = %2d hour(s), %2d minute(s), %.2f seconds."
msgstr "Ð§Ð°Ñ Ð¿Ð¾ÑаÑÐºÑ = %2d годин, %2d Ñ
вилин, %.2f ÑекÑнд."
-#: effects/Contrast.cpp:586 effects/Contrast.cpp:603
+#: effects/Contrast.cpp:606 effects/Contrast.cpp:623
#, c-format
msgid "Time ended = %2d hour(s), %2d minute(s), %.2f seconds."
msgstr "Ð§Ð°Ñ Ð·Ð°Ð²ÐµÑÑÐµÐ½Ð½Ñ = %2d годин, %2d Ñ
вилин, %.2f ÑекÑнд."
-#: effects/Contrast.cpp:588 effects/Contrast.cpp:605
+#: effects/Contrast.cpp:608 effects/Contrast.cpp:625
#, c-format
msgid "Average rms = %.1f dB."
msgstr "СеÑеднÑоквадÑаÑиÑне = %.1f дÐ."
-#: effects/Contrast.cpp:590 effects/Contrast.cpp:607
+#: effects/Contrast.cpp:610 effects/Contrast.cpp:627
msgid "Average rms = dB."
msgstr "СеÑеднÑоквадÑаÑиÑне = дÐ."
-#: effects/Contrast.cpp:593
+#: effects/Contrast.cpp:613
msgid "Background"
msgstr "Тло"
-#: effects/Contrast.cpp:609
+#: effects/Contrast.cpp:629
msgid "Results"
msgstr "РезÑлÑÑаÑи"
-#: effects/Contrast.cpp:611
+#: effects/Contrast.cpp:631
#, c-format
msgid "Difference = %.1f Average rms dB."
msgstr "Ð ÑзниÑÑ = %.1f СеÑеднÑоквадÑаÑиÑне дÐ."
-#: effects/Contrast.cpp:613
+#: effects/Contrast.cpp:633
msgid "Success Criteria 1.4.7 of WCAG 2.0: Pass"
msgstr "ÐÑиÑеÑÑй ÑÑпÑÑ
Ñ 1.4.7 WCAG 2.0: пÑойдено"
-#: effects/Contrast.cpp:615
+#: effects/Contrast.cpp:635
msgid "Success Criteria 1.4.7 of WCAG 2.0: Fail"
msgstr "ÐÑиÑеÑÑй ÑÑпÑÑ
Ñ 1.4.7 WCAG 2.0: помилка"
-#: effects/Contrast.cpp:618
+#: effects/Contrast.cpp:638
msgid "Data gathered"
msgstr "ÐÐ°Ð½Ñ Ð·ÑбÑано"
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr "ÐонÑÑаÑÑ...\tCtrl+Shift+T"
-
-#: effects/Contrast.h:52
-msgid "Measuring background"
-msgstr "ÐимÑÑÑÐ²Ð°Ð½Ð½Ñ Ñла"
-
-#: effects/Contrast.h:54
-msgid "Measuring foreground"
-msgstr "ÐимÑÑÑÐ²Ð°Ð½Ð½Ñ Ð¿ÐµÑеднÑого планÑ"
-
#: effects/DtmfGen.cpp:56
msgid "DTMF Tone Generator"
msgstr "ÐенеÑаÑÐ¾Ñ ÑоновиÑ
ÑигналÑв (DTMF)"
-#: effects/DtmfGen.cpp:456
+#: effects/DtmfGen.cpp:421
msgid "by Salvo Ventura (2006)"
msgstr "ÐвÑÐ¾Ñ - Salvo Ventura (2006)"
-#: effects/DtmfGen.cpp:460
+#: effects/DtmfGen.cpp:425
msgid "DTMF sequence:"
msgstr "Тонова поÑлÑдовнÑÑÑÑ:"
-#: effects/DtmfGen.cpp:463 effects/Noise.cpp:242 effects/ToneGen.cpp:322
-#: effects/ToneGen.cpp:360
+#: effects/DtmfGen.cpp:428 effects/Noise.cpp:190 effects/ToneGen.cpp:278
+#: effects/ToneGen.cpp:316
msgid "Amplitude (0-1)"
msgstr "ÐмплÑÑÑда (0-1)"
-#: effects/DtmfGen.cpp:465
+#: effects/DtmfGen.cpp:430
msgid "Duration:"
msgstr "ТÑивалÑÑÑÑ:"
-#: effects/DtmfGen.cpp:487
+#: effects/DtmfGen.cpp:452
msgid "Tone/silence ratio:"
msgstr "ÐÑдноÑÐµÐ½Ð½Ñ Ñигнал/ÑиÑа:"
-#: effects/DtmfGen.cpp:497
+#: effects/DtmfGen.cpp:462
msgid "Duty cycle:"
msgstr "РобоÑий Ñикл:"
-#: effects/DtmfGen.cpp:499
+#: effects/DtmfGen.cpp:464
msgid "Tone duration:"
msgstr "ТÑивалÑÑÑÑ ÑонÑ:"
-#: effects/DtmfGen.cpp:500 effects/DtmfGen.cpp:502 effects/DtmfGen.cpp:578
-#: effects/DtmfGen.cpp:579
+#: effects/DtmfGen.cpp:465 effects/DtmfGen.cpp:467 effects/DtmfGen.cpp:543
+#: effects/DtmfGen.cpp:544
msgid "ms"
msgstr "мÑ"
-#: effects/DtmfGen.cpp:501
+#: effects/DtmfGen.cpp:466
msgid "Silence duration:"
msgstr "ТÑивалÑÑÑÑ ÑиÑÑ:"
-#: effects/DtmfGen.h:39
+#: effects/DtmfGen.h:40
msgid "DTMF Tones..."
msgstr "Ð¢Ð¾Ð½Ð¾Ð²Ñ Ñигнали ÑелеÑонÑ..."
-#: effects/DtmfGen.h:53
+#: effects/DtmfGen.h:54
#, c-format
msgid "Applied effect: Generate DTMF tones, %.6lf seconds"
msgstr "ÐаÑÑоÑований еÑекÑ: СÑвоÑиÑи ÑÐ¾Ð½Ð¾Ð²Ñ Ñигнали ÑелеÑонÑ, %.6lf ÑекÑнд"
-#: effects/DtmfGen.h:57
+#: effects/DtmfGen.h:58
msgid "Generating DTMF tones"
msgstr "СÑвоÑÑÑÑÑÑÑ ÑÐ¾Ð½Ð¾Ð²Ñ Ñигнали ÑелеÑонÑ"
@@ -5235,21 +5469,21 @@ msgstr "СÑвоÑÑÑÑÑÑÑ ÑÐ¾Ð½Ð¾Ð²Ñ Ñигнали ÑелеÑонÑ"
msgid "Applied effect: %s delay = %f seconds, decay factor = %f"
msgstr "ÐаÑÑоÑовано еÑекÑ: %s заÑÑимка = %f ÑекÑнд, коеÑÑÑÑÑÐ½Ñ ÑÐ¿Ð°Ð´Ð°Ð½Ð½Ñ = %f"
-#: effects/Echo.cpp:170
+#: effects/Echo.cpp:174
msgid "Echo"
msgstr "ÐÑдлÑннÑ"
#. i18n-hint: && in here is an escape character to get a single & on
#. * screen, so keep it as is
-#: effects/Echo.cpp:195 effects/Repeat.cpp:199
+#: effects/Echo.cpp:199 effects/Repeat.cpp:197
msgid "by Dominic Mazzoni && Vaughan Johnson"
msgstr "ÐвÑоÑи â Dominic Mazzoni Ñа Vaughan Johnson"
-#: effects/Echo.cpp:207
+#: effects/Echo.cpp:211
msgid "Delay time (seconds):"
msgstr "Ð§Ð°Ñ Ð·Ð°ÑÑимки (ÑекÑнди):"
-#: effects/Echo.cpp:212
+#: effects/Echo.cpp:216
msgid "Decay factor:"
msgstr "ÐоеÑÑÑÑÑÐ½Ñ ÑпаданнÑ:"
@@ -5261,15 +5495,15 @@ msgstr "ÐÑдлÑннÑ..."
msgid "Performing Echo"
msgstr "ÐаÑÑоÑовÑÑÑÑÑÑ ÐµÑÐµÐºÑ \"ÐÑдлÑннÑ\""
-#: effects/Effect.cpp:467
+#: effects/Effect.cpp:520
msgid "Preparing preview"
msgstr "ÐÑдгоÑовка пÑоÑлÑÑ
овÑваннÑ"
-#: effects/Effect.cpp:497
+#: effects/Effect.cpp:550
msgid "Previewing"
msgstr "ÐÑоÑлÑÑ
овÑваннÑ"
-#: effects/Effect.cpp:512
+#: effects/Effect.cpp:565
msgid ""
"Error while opening sound device. Please check the output device settings "
"and the project sample rate."
@@ -5277,87 +5511,91 @@ msgstr ""
"Ðомилка пÑи вÑдкÑÐ¸Ð²Ð°Ð½Ð½Ñ Ð·Ð²Ñкового пÑиÑÑÑоÑ. ÐеÑевÑÑÑе паÑамеÑÑи пÑиÑÑÑÐ¾Ñ "
"Ð²Ð¸Ð²Ð¾Ð´Ñ Ñа ÑаÑÑоÑÑ Ð´Ð¸ÑкÑеÑизаÑÑÑ Ð¿ÑоекÑÑ."
-#: effects/Effect.h:100 effects/TimeScale.cpp:52
+#: effects/Effect.h:97 effects/TimeScale.cpp:52
#, c-format
msgid "Applied effect: %s"
msgstr "ÐаÑÑоÑовано еÑекÑ: %s"
-#: effects/Equalization.cpp:329
+#: effects/Equalization.cpp:336
msgid "B-spline"
msgstr "B-Ñплайн"
-#: effects/Equalization.cpp:330
+#: effects/Equalization.cpp:337
msgid "Cosine"
msgstr "СинÑÑоÑда"
-#: effects/Equalization.cpp:331
+#: effects/Equalization.cpp:338
msgid "Cubic"
msgstr "ÐÑбÑÑний"
-#: effects/Equalization.cpp:367 effects/Equalization.cpp:416
+#: effects/Equalization.cpp:371 effects/Equalization.cpp:422
msgid "Equalization"
msgstr "ÐквалайзеÑ"
-#: effects/Equalization.cpp:994
+#: effects/Equalization.cpp:1012
msgid "Error loading EQ curve"
msgstr "Ðомилка пÑд ÑÐ°Ñ Ð·Ð°Ð²Ð°Ð½ÑÐ°Ð¶ÐµÐ½Ð½Ñ ÐºÑÐ¸Ð²Ð¾Ñ EQ"
-#: effects/Equalization.cpp:1033
+#: effects/Equalization.cpp:1051
msgid "custom"
msgstr "ÑнÑа"
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr "Ðомилка пÑд ÑÐ°Ñ ÑпÑоби збеÑÐµÐ¶ÐµÐ½Ð½Ñ ÐºÑивиÑ
виÑÑвнÑваннÑ"
+
#. i18n-hint: && in here is an escape character to get a single &
#. * on screen, so keep it as is
-#: effects/Equalization.cpp:1101
+#: effects/Equalization.cpp:1123
msgid "Equalization, by Martyn Shaw && Mitch Golden"
msgstr "ÐквалайзеÑ, вÑд Martyn Shaw Ñа Mitch Golden"
-#: effects/Equalization.cpp:1122
+#: effects/Equalization.cpp:1144
msgid "Max dB"
msgstr "ÐÐ°ÐºÑ Ð´Ð"
-#: effects/Equalization.cpp:1124
+#: effects/Equalization.cpp:1146
msgid "Min dB"
msgstr "ÐÑн дÐ"
-#: effects/Equalization.cpp:1197
+#: effects/Equalization.cpp:1219
msgid "kHz"
msgstr "ÐÐÑ"
-#: effects/Equalization.cpp:1214
+#: effects/Equalization.cpp:1236
msgid "Draw curves"
msgstr "ÐалÑваÑи кÑивÑ"
-#: effects/Equalization.cpp:1219
+#: effects/Equalization.cpp:1241
msgid "Graphic EQ"
msgstr "ÐÑаÑÑÑний EQ"
-#: effects/Equalization.cpp:1233
+#: effects/Equalization.cpp:1255
msgid "Linear frequency scale"
msgstr "ÐÑнÑйна Ñкала ÑаÑÑоÑ"
-#: effects/Equalization.cpp:1242
+#: effects/Equalization.cpp:1264
msgid "Length of filter:"
msgstr "ТÑивалÑÑÑÑ ÑÑлÑÑÑа:"
-#: effects/Equalization.cpp:1263
+#: effects/Equalization.cpp:1285
msgid "Select curve:"
msgstr "ÐбÑаÑи кÑивÑ:"
-#: effects/Equalization.cpp:1273 effects/Equalization.cpp:2512
-#: export/ExportMultiple.cpp:899
+#: effects/Equalization.cpp:1295 effects/Equalization.cpp:2553
+#: export/ExportMultiple.cpp:924
msgid "Save As..."
msgstr "ÐбеÑегÑи Ñк..."
-#: effects/Equalization.cpp:1279
+#: effects/Equalization.cpp:1301
msgid "Flat"
msgstr "ÐÑе до нÑлÑ"
-#: effects/Equalization.cpp:2511
+#: effects/Equalization.cpp:2552
msgid "Enter the desired name of the curve"
msgstr "ÐведÑÑÑ Ð±Ð°Ð¶Ð°Ð½Ñ Ð½Ð°Ð·Ð²Ñ ÐºÑивоÑ"
-#: effects/Equalization.cpp:2611 export/ExportFFmpegDialogs.cpp:1212
+#: effects/Equalization.cpp:2652 export/ExportFFmpegDialogs.cpp:1214
msgid "Confirm Deletion"
msgstr "ÐÑдÑвеÑдиÑи вилÑÑеннÑ"
@@ -5385,31 +5623,31 @@ msgstr "ÐовÑлÑне згаÑаннÑ"
msgid "Fading Out"
msgstr "ÐаÑÑоÑовÑÑÑÑÑÑ \"ÐовÑлÑне загаÑаннÑ\""
-#: effects/FindClipping.cpp:49
+#: effects/FindClipping.cpp:50
msgid "Detect clipping"
msgstr "ÐиÑÐ²Ð»ÐµÐ½Ð½Ñ Ð·ÑÑзаннÑ"
-#: effects/FindClipping.cpp:91
+#: effects/FindClipping.cpp:93
msgid "Clipping"
msgstr "ÐÑÑзаннÑ"
-#: effects/FindClipping.cpp:211
+#: effects/FindClipping.cpp:213
msgid "Find Clipping"
msgstr "ÐнайÑи зÑÑзаннÑ"
-#: effects/FindClipping.cpp:222
+#: effects/FindClipping.cpp:224
msgid "by Leland Lucius"
msgstr "ÐвÑÐ¾Ñ Leland Lucius"
-#: effects/FindClipping.cpp:234
+#: effects/FindClipping.cpp:236
msgid "Start threshold (samples):"
msgstr "ÐоÑÑг поÑаÑÐºÑ (ÑоÑок диÑкÑеÑизаÑÑÑ):"
-#: effects/FindClipping.cpp:238
+#: effects/FindClipping.cpp:240
msgid "Stop threshold (samples):"
msgstr "ÐоÑÑг кÑнÑÑ (ÑоÑок диÑкÑеÑизаÑÑÑ):"
-#: effects/FindClipping.cpp:250
+#: effects/FindClipping.cpp:252
msgid "Start and stop must be greater than 0."
msgstr "ÐоÑаÑок Ñа кÑнеÑÑ Ð¼Ð°ÑÑÑ Ð±ÑÑи бÑлÑÑими за 0."
@@ -5457,7 +5695,7 @@ msgstr "ÐÑлÑÑе"
msgid "Heaviest"
msgstr "ÐайбÑлÑÑа"
-#: effects/Leveller.cpp:214 effects/TruncSilence.cpp:331
+#: effects/Leveller.cpp:214
msgid "by Lynn Allan"
msgstr "вÑд Lynn Allan"
@@ -5485,155 +5723,151 @@ msgstr "ÐиÑÑвнÑваннÑ..."
msgid "Applying Leveller..."
msgstr "ÐаÑÑоÑовÑÑÑÑÑÑ ÐµÑÐµÐºÑ Ð²Ð¸ÑÑвнÑваннÑ..."
-#: effects/LoadEffects.cpp:103
+#: effects/LoadEffects.cpp:102
msgid "Generator"
msgstr "ÐенеÑаÑоÑ"
-#: effects/LoadEffects.cpp:105
+#: effects/LoadEffects.cpp:104
msgid "Instrument"
msgstr "ÐнÑÑÑÑменÑ"
-#: effects/LoadEffects.cpp:107
+#: effects/LoadEffects.cpp:106
msgid "Oscillator"
msgstr "ÐÑÑилÑÑоÑ"
-#: effects/LoadEffects.cpp:109
+#: effects/LoadEffects.cpp:108
msgid "Utility"
msgstr "ÐнÑÑÑÑменÑ"
-#: effects/LoadEffects.cpp:111
+#: effects/LoadEffects.cpp:110
msgid "Converter"
msgstr "ÐеÑеÑвоÑÑваÑ"
-#: effects/LoadEffects.cpp:113
+#: effects/LoadEffects.cpp:112
msgid "Analyser"
msgstr "ÐналÑзаÑоÑ"
-#: effects/LoadEffects.cpp:115 toolbars/MixerToolBar.cpp:60
-msgid "Mixer"
-msgstr "ÐÑкÑеÑ"
-
-#: effects/LoadEffects.cpp:117
+#: effects/LoadEffects.cpp:116
msgid "Simulator"
msgstr "ÐмÑÑаÑоÑ"
-#: effects/LoadEffects.cpp:119
+#: effects/LoadEffects.cpp:118
msgid "Delay"
msgstr "ÐаÑÑимка"
-#: effects/LoadEffects.cpp:121
+#: effects/LoadEffects.cpp:120
msgid "Modulator"
msgstr "ÐодÑлÑÑоÑ"
-#: effects/LoadEffects.cpp:123
+#: effects/LoadEffects.cpp:122
msgid "Reverb"
msgstr "ÐÑдлÑннÑ"
-#: effects/LoadEffects.cpp:125 effects/Phaser.cpp:208
+#: effects/LoadEffects.cpp:124 effects/Phaser.cpp:208
msgid "Phaser"
msgstr "ФазеÑ"
-#: effects/LoadEffects.cpp:127
+#: effects/LoadEffects.cpp:126
msgid "Flanger"
msgstr "ФленджеÑ"
-#: effects/LoadEffects.cpp:129
+#: effects/LoadEffects.cpp:128
msgid "Chorus"
msgstr "ХоÑ"
-#: effects/LoadEffects.cpp:131
+#: effects/LoadEffects.cpp:130
msgid "Filter"
msgstr "ФÑлÑÑÑ"
-#: effects/LoadEffects.cpp:133
+#: effects/LoadEffects.cpp:132
msgid "Lowpass"
msgstr "ÐизÑкоÑаÑÑоÑний ÑÑлÑÑÑ"
-#: effects/LoadEffects.cpp:135
+#: effects/LoadEffects.cpp:134
msgid "Bandpass"
msgstr "СмÑговий ÑÑлÑÑÑ"
-#: effects/LoadEffects.cpp:137
+#: effects/LoadEffects.cpp:136
msgid "Highpass"
msgstr "ÐиÑокоÑаÑÑоÑний ÑÑлÑÑÑ"
-#: effects/LoadEffects.cpp:139
+#: effects/LoadEffects.cpp:138
msgid "Comb"
msgstr "ÐÑебÑнка"
-#: effects/LoadEffects.cpp:141
+#: effects/LoadEffects.cpp:140
msgid "Allpass"
msgstr "Фазовий ÑÑлÑÑÑ"
-#: effects/LoadEffects.cpp:143
+#: effects/LoadEffects.cpp:142
msgid "Equaliser"
msgstr "ÐквалайзеÑ"
-#: effects/LoadEffects.cpp:145
+#: effects/LoadEffects.cpp:144
msgid "Parametric"
msgstr "ÐаÑамеÑÑиÑний"
-#: effects/LoadEffects.cpp:147
+#: effects/LoadEffects.cpp:146
msgid "Multiband"
msgstr "ÐагаÑоÑмÑговий"
-#: effects/LoadEffects.cpp:149
+#: effects/LoadEffects.cpp:148
msgid "Spectral Processor"
msgstr "ÐбÑобка ÑпекÑÑÑ"
-#: effects/LoadEffects.cpp:151
+#: effects/LoadEffects.cpp:150
msgid "Pitch Shifter"
msgstr "ÐнÑÑÑÑÐ¼ÐµÐ½Ñ Ð·ÑÑÐ²Ñ ÑонÑ"
-#: effects/LoadEffects.cpp:153
+#: effects/LoadEffects.cpp:152
msgid "Amplifier"
msgstr "ÐÑдÑилÑваÑ"
-#: effects/LoadEffects.cpp:155
+#: effects/LoadEffects.cpp:154
msgid "Distortion"
msgstr "ÐикÑивленнÑ"
-#: effects/LoadEffects.cpp:157
+#: effects/LoadEffects.cpp:156
msgid "Waveshaper"
msgstr "ФоÑмÑÐ²Ð°Ð½Ð½Ñ Ñ
вилÑ"
-#: effects/LoadEffects.cpp:159
+#: effects/LoadEffects.cpp:158
msgid "Dynamics Processor"
msgstr "ÐбÑобник динамÑÑного дÑапазонÑ"
-#: effects/LoadEffects.cpp:161
+#: effects/LoadEffects.cpp:160
msgid "Compressor"
msgstr "ÐомпÑеÑоÑ"
-#: effects/LoadEffects.cpp:163
+#: effects/LoadEffects.cpp:162
msgid "Expander"
msgstr "ÐоÑиÑÑÑваÑ"
-#: effects/LoadEffects.cpp:165
+#: effects/LoadEffects.cpp:164
msgid "Limiter"
msgstr "ÐбмежÑваÑ"
-#: effects/LoadEffects.cpp:167
+#: effects/LoadEffects.cpp:166
msgid "Gate"
msgstr "ÐÑоÑ
Ñд"
-#: effects/LoadEffects.cpp:200 effects/NoiseRemoval.cpp:729
+#: effects/LoadEffects.cpp:199 effects/NoiseRemoval.cpp:730
msgid "Noise Removal"
msgstr "ÐилÑÑÐµÐ½Ð½Ñ ÑÑмÑ"
-#: effects/LoadEffects.cpp:202
+#: effects/LoadEffects.cpp:201
msgid "Pitch and Tempo"
msgstr "ÐмÑна ÑÐ¾Ð½Ñ Ñ ÑемпÑ"
-#: effects/LoadEffects.cpp:204
+#: effects/LoadEffects.cpp:203
msgid "Timeline Changer"
msgstr "ÐмÑна ÑаÑÐ¾Ð²Ð¾Ñ Ñкали"
-#: effects/LoadEffects.cpp:206
+#: effects/LoadEffects.cpp:205
msgid "Time"
msgstr "ЧаÑ"
-#: effects/LoadEffects.cpp:208
+#: effects/LoadEffects.cpp:207
msgid "Onsets"
msgstr "ÐоÑаÑки"
@@ -5653,20 +5887,20 @@ msgstr "ÐоÑиÑневий"
msgid "Noise Generator"
msgstr "ÐенеÑаÑÐ¾Ñ ÑÑмÑв"
-#: effects/Noise.cpp:241
+#: effects/Noise.cpp:189
msgid "Noise type"
msgstr "Тип ÑÑмÑ"
-#: effects/Noise.h:41
+#: effects/Noise.h:42
msgid "Noise..."
msgstr "ШÑм..."
-#: effects/Noise.h:55
+#: effects/Noise.h:56
#, c-format
msgid "Applied effect: Generate Noise, %.6lf seconds"
msgstr "ÐаÑÑоÑований еÑекÑ: ÐенеÑÑваÑи ÑÑм, %.6lf ÑекÑнд"
-#: effects/Noise.h:59
+#: effects/Noise.h:60
msgid "Generating Noise"
msgstr "ÐенеÑÑÐ²Ð°Ð½Ð½Ñ ÑÑмÑ"
@@ -5683,11 +5917,11 @@ msgstr ""
msgid "Attempt to run Noise Removal without a noise profile.\n"
msgstr "СпÑоба запÑÑÑиÑи \"ÐилÑÑÐµÐ½Ð½Ñ ÑÑмÑ\" без пÑоÑÑÐ»Ñ ÑÑмÑ.\n"
-#: effects/NoiseRemoval.cpp:818
+#: effects/NoiseRemoval.cpp:819
msgid "Step 1"
msgstr "ÐÑок 1"
-#: effects/NoiseRemoval.cpp:819
+#: effects/NoiseRemoval.cpp:820
msgid ""
"Select a few seconds of just noise so Audacity knows what to filter out,\n"
"then click Get Noise Profile:"
@@ -5695,47 +5929,47 @@ msgstr ""
"ÐбеÑÑÑÑ Ð´ÐµÐºÑлÑка ÑекÑнд ÑиÑÑого ÑÑмÑ, Ñоб Audacity знала Ñо ÑÑлÑÑÑÑваÑи,\n"
"а поÑÑм наÑиÑнÑÑÑ ÐºÐ½Ð¾Ð¿ÐºÑ ÐÑÑимаÑи пÑоÑÑÐ»Ñ ÑÑмÑ:"
-#: effects/NoiseRemoval.cpp:820
+#: effects/NoiseRemoval.cpp:821
msgid "Step 2"
msgstr "ÐÑок 2"
-#: effects/NoiseRemoval.cpp:821
+#: effects/NoiseRemoval.cpp:822
msgid ""
"Select all of the audio you want filtered, choose how much noise you want\n"
"filtered out, and then click 'OK' to remove noise.\n"
msgstr ""
-"ÐидÑлÑÑÑ ÑаÑÑÐ¸Ð½Ñ Ð´Ð¾ÑÑжки, до ÑÐºÐ¾Ñ ÑлÑд заÑÑоÑÑваÑи ÑÑлÑÑÑ, обеÑÑÑÑ ÑÑÑпÑнÑ\n"
+"ÐибеÑÑÑÑ ÑаÑÑÐ¸Ð½Ñ Ð´Ð¾ÑÑжки, до ÑÐºÐ¾Ñ ÑлÑд заÑÑоÑÑваÑи ÑÑлÑÑÑ, обеÑÑÑÑ ÑÑÑпÑнÑ\n"
"ÑÑлÑÑÑаÑÑÑ ÑÑмÑ, а поÑÑм наÑиÑнÑÑÑ 'ÐаÑазд' Ñоб вилÑÑиÑи ÑÑм.\n"
-#: effects/NoiseRemoval.cpp:826
+#: effects/NoiseRemoval.cpp:827
msgid "Noise Removal by Dominic Mazzoni"
msgstr "ÐилÑÑÐµÐ½Ð½Ñ ÑÑÐ¼Ñ â ÐомÑнÑк ÐаÑÑонÑ"
-#: effects/NoiseRemoval.cpp:834
+#: effects/NoiseRemoval.cpp:835
msgid "Get Noise Profile"
msgstr "СÑвоÑиÑи Ð¼Ð¾Ð´ÐµÐ»Ñ ÑÑмÑ"
-#: effects/NoiseRemoval.cpp:845
+#: effects/NoiseRemoval.cpp:846
msgid "Noise reduction (dB):"
-msgstr "ÐменÑÐµÐ½Ð½Ñ ÑÑÐ¼Ñ (dB):"
+msgstr "ÐменÑÐµÐ½Ð½Ñ ÑÑÐ¼Ñ (дÐ):"
-#: effects/NoiseRemoval.cpp:850
+#: effects/NoiseRemoval.cpp:851
msgid "Noise reduction"
msgstr "ÐменÑÐµÐ½Ð½Ñ ÑÑмÑ"
-#: effects/NoiseRemoval.cpp:854
+#: effects/NoiseRemoval.cpp:855
msgid "Frequency smoothing (Hz):"
msgstr "ÐгладжÑÐ²Ð°Ð½Ð½Ñ ÑаÑÑоÑи (ÐÑ):"
-#: effects/NoiseRemoval.cpp:859
+#: effects/NoiseRemoval.cpp:860
msgid "Frequency smoothing"
msgstr "ÐгладжÑÐ²Ð°Ð½Ð½Ñ ÑаÑÑоÑи"
-#: effects/NoiseRemoval.cpp:863
+#: effects/NoiseRemoval.cpp:864
msgid "Attack/decay time (secs):"
msgstr "Ð§Ð°Ñ Ð·ÑоÑÑаннÑ/ÑÐ¿Ð°Ð´Ð°Ð½Ð½Ñ (ÑекÑнд):"
-#: effects/NoiseRemoval.cpp:868
+#: effects/NoiseRemoval.cpp:869
msgid "Attach/decay time"
msgstr "Ð§Ð°Ñ Ð·ÑоÑÑаннÑ/ÑпаданнÑ"
@@ -5756,11 +5990,8 @@ msgstr "ÐилÑÑаÑÑÑÑÑ ÑÑм"
#: effects/Normalize.cpp:70
#, c-format
msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
-msgstr "ÐаÑÑоÑовано еÑекÑ: %s вилÑÑÐµÐ½Ð½Ñ Ð²ÑдÑ
Ð¸Ð»ÐµÐ½Ð½Ñ = %s, ноÑмалÑзаÑÑÑ Ð°Ð¼Ð¿Ð»ÑÑÑди = %s"
-
-#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
-msgid "false"
-msgstr "нÑ"
+msgstr ""
+"ÐаÑÑоÑовано еÑекÑ: %s вилÑÑÐµÐ½Ð½Ñ Ð²ÑдÑ
Ð¸Ð»ÐµÐ½Ð½Ñ = %s, ноÑмалÑзаÑÑÑ Ð°Ð¼Ð¿Ð»ÑÑÑди = %s"
#. i18n-hint: true here means that the option was
#. * selected. Opposite false if not selected
@@ -5777,19 +6008,19 @@ msgstr ", макÑималÑна амплÑÑÑда = %.1f дÐ"
msgid "Normalize"
msgstr "ÐоÑмалÑзаÑÑÑ"
-#: effects/Normalize.cpp:351
+#: effects/Normalize.cpp:355
msgid "Remove any DC offset (center on 0.0 vertically)"
msgstr "ÐилÑÑиÑи бÑдÑ-Ñке вÑдÑ
Ð¸Ð»ÐµÐ½Ð½Ñ Ð²Ñд оÑÑ (ÑенÑÑ Ñ 0 по веÑÑикалÑ)"
-#: effects/Normalize.cpp:354
+#: effects/Normalize.cpp:358
msgid "Normalize maximum amplitude to:"
msgstr "ÐоÑмалÑзÑваÑи макÑималÑÐ½Ñ Ð°Ð¼Ð¿Ð»ÑÑÑÐ´Ñ Ð´Ð¾:"
-#: effects/Normalize.cpp:362
+#: effects/Normalize.cpp:366
msgid "-"
msgstr "-"
-#: effects/Normalize.cpp:367
+#: effects/Normalize.cpp:371
msgid "Maximum amplitude dB"
msgstr "ÐакÑималÑна амплÑÑÑда (дÐ)"
@@ -5810,51 +6041,51 @@ msgstr ""
"ÐаÑÑоÑовано еÑекÑ: %s %d еÑапÑв, %.0f%% обÑоблено, ÑаÑÑоÑа = %.1f ÐÑ, "
"поÑаÑкова Ñаза = %.0f гÑад, глибина = %d, звоÑоÑний зв'Ñзок = %.0f%%"
-#: effects/Phaser.cpp:226
+#: effects/Phaser.cpp:228
msgid "Stages:"
msgstr "ÐÑапи:"
-#: effects/Phaser.cpp:229
+#: effects/Phaser.cpp:231
msgid "Stages"
msgstr "ÐÑапи"
-#: effects/Phaser.cpp:231
+#: effects/Phaser.cpp:236
msgid "Dry/Wet:"
msgstr "Холодний/Теплий:"
-#: effects/Phaser.cpp:234
+#: effects/Phaser.cpp:239
msgid "Dry Wet"
msgstr "Холодний-Теплий"
-#: effects/Phaser.cpp:236 effects/Wahwah.cpp:221
+#: effects/Phaser.cpp:244 effects/Wahwah.cpp:222
msgid "LFO Frequency (Hz):"
msgstr "ЧаÑÑоÑа LFO (ÐÑ):"
-#: effects/Phaser.cpp:239 effects/Wahwah.cpp:224
+#: effects/Phaser.cpp:247 effects/Wahwah.cpp:225
msgid "LFO frequency in hertz"
msgstr "ЧаÑÑоÑа LFO (ÐÑ)"
-#: effects/Phaser.cpp:241 effects/Wahwah.cpp:226
+#: effects/Phaser.cpp:252 effects/Wahwah.cpp:230
msgid "LFO Start Phase (deg.):"
msgstr "ÐоÑаÑкова Ñаза LFO (гÑад.):"
-#: effects/Phaser.cpp:244 effects/Wahwah.cpp:229
+#: effects/Phaser.cpp:255 effects/Wahwah.cpp:233
msgid "LFO start phase in degrees"
msgstr "ÐоÑаÑкова Ñаза LFO (гÑад.)"
-#: effects/Phaser.cpp:246
+#: effects/Phaser.cpp:260
msgid "Depth:"
msgstr "Ðлибина:"
-#: effects/Phaser.cpp:249 effects/Wahwah.cpp:234
+#: effects/Phaser.cpp:263 effects/Wahwah.cpp:241
msgid "Depth in percent"
msgstr "Ðлибина Ñ Ð²ÑдÑоÑкаÑ
"
-#: effects/Phaser.cpp:251
+#: effects/Phaser.cpp:268
msgid "Feedback (%):"
msgstr "ÐвоÑоÑний зв'Ñзок (%):"
-#: effects/Phaser.cpp:254
+#: effects/Phaser.cpp:271
msgid "Feedback in percent"
msgstr "ÐвоÑоÑнÑй звâÑзок Ñ Ð²ÑдÑоÑкаÑ
"
@@ -5888,7 +6119,8 @@ msgid ""
msgstr ""
"ÐÑдновлÑÑ Ð·Ð°Ð¿Ð¸Ñи на оÑÐ½Ð¾Ð²Ñ Ð·Ð²ÑковиÑ
даниÑ
поза вибÑÐ°Ð½Ð¾Ñ Ð´ÑлÑнкоÑ.\n"
"\n"
-"ÐÑÐ´Ñ Ð»Ð°Ñка, вибеÑÑÑÑ Ð´ÑлÑÐ½ÐºÑ Ð¿Ð¾ÑкоджениÑ
звÑковиÑ
даниÑ
: познаÑÑе пÑÐ¸Ð½Ð°Ð¹Ð¼Ð½Ñ Ð¾Ð´Ð½Ñ Ð· ÑÑ
меж.\n"
+"ÐÑÐ´Ñ Ð»Ð°Ñка, вибеÑÑÑÑ Ð´ÑлÑÐ½ÐºÑ Ð¿Ð¾ÑкоджениÑ
звÑковиÑ
даниÑ
: познаÑÑе пÑÐ¸Ð½Ð°Ð¹Ð¼Ð½Ñ "
+"Ð¾Ð´Ð½Ñ Ð· ÑÑ
меж.\n"
"\n"
"Чим бÑлÑÑе бÑде непоÑкоджениÑ
даниÑ
, Ñим кÑаÑим бÑде ÑезÑлÑÑÐ°Ñ Ð²ÑдновленнÑ."
@@ -5903,27 +6135,27 @@ msgstr "СÑвоÑено %d повÑоÑÑв"
#: effects/Repeat.cpp:76
msgid "Tracks are too long to repeat the selection."
-msgstr "ÐоÑÑжки надÑо Ð´Ð¾Ð²Ð³Ñ Ð´Ð»Ñ Ð¿Ð¾Ð²ÑоÑÐµÐ½Ð½Ñ Ð²Ð¸Ð´ÑленнÑ."
+msgstr "ÐоÑÑжки надÑо Ð´Ð¾Ð²Ð³Ñ Ð´Ð»Ñ Ð¿Ð¾Ð²ÑоÑÐµÐ½Ð½Ñ Ð²Ð¸Ð±Ð¾ÑÑ."
-#: effects/Repeat.cpp:77 effects/Repeat.cpp:186
+#: effects/Repeat.cpp:77 effects/Repeat.cpp:184
msgid "Repeat"
msgstr "ÐовÑоÑ..."
-#: effects/Repeat.cpp:211
+#: effects/Repeat.cpp:209
msgid "Number of times to repeat:"
msgstr "ÐÑлÑкÑÑÑÑ Ð¿Ð¾Ð²ÑоÑÑв:"
-#: effects/Repeat.cpp:220
+#: effects/Repeat.cpp:218
msgid "New selection length: hh:mm:ss"
-msgstr "Ðова ÑÑивалÑÑÑÑ Ð²Ð¸Ð´ÑленнÑ: гг:Ñ
Ñ
:ÑÑ"
+msgstr "Ðова ÑÑивалÑÑÑÑ Ð²Ð¸Ð±Ñаного: гг:Ñ
Ñ
:ÑÑ"
-#: effects/Repeat.cpp:252
+#: effects/Repeat.cpp:250
msgid "New selection length: "
-msgstr "Ðова ÑÑивалÑÑÑÑ Ð²Ð¸Ð´ÑленнÑ:"
+msgstr "Ðова ÑÑивалÑÑÑÑ Ð²Ð¸Ð±Ñаного:"
#. i18n-hint: Name of time display format that shows time in hours, minutes
#. * and seconds
-#: effects/Repeat.cpp:261 widgets/TimeTextCtrl.cpp:270
+#: effects/Repeat.cpp:259 widgets/TimeTextCtrl.cpp:271
msgid "hh:mm:ss"
msgstr "гг:Ñ
Ñ
:ÑÑ"
@@ -5960,7 +6192,7 @@ msgstr "СÑвоÑÐµÐ½Ð½Ñ ÑиÑÑ"
msgid "Applied effect: Generate Silence, %.6lf seconds"
msgstr "ÐаÑÑоÑовано еÑекÑ: СÑвоÑÐµÐ½Ð½Ñ ÑиÑÑ, %.6lf ÑекÑнд"
-#: effects/SimplePairedTwoTrack.h:120
+#: effects/SimplePairedTwoTrack.h:115
msgid ""
"Sorry, this effect cannot be performed on stereo tracks where the individual "
"channels of the track do not match."
@@ -6089,31 +6321,31 @@ msgstr "ÐÑбÑеподÑбна"
msgid "Square, no alias"
msgstr "ÐвадÑаÑиÑна, без пеÑеÑ
одÑв"
-#: effects/ToneGen.cpp:321 effects/ToneGen.cpp:358
+#: effects/ToneGen.cpp:277 effects/ToneGen.cpp:314
msgid "Frequency (Hz)"
msgstr "ЧаÑÑоÑа (ÐÑ)"
-#: effects/ToneGen.cpp:349
+#: effects/ToneGen.cpp:305
msgid "Waveform:"
msgstr "ХвилÑ:"
-#: effects/ToneGen.cpp:358
+#: effects/ToneGen.cpp:314
msgid "Frequency Hertz Start"
msgstr "ÐоÑаÑок дÑÐ°Ð¿Ð°Ð·Ð¾Ð½Ñ (ÐÑ)"
-#: effects/ToneGen.cpp:359
+#: effects/ToneGen.cpp:315
msgid "Frequency Hertz End"
msgstr "ÐÑнеÑÑ Ð´ÑÐ°Ð¿Ð°Ð·Ð¾Ð½Ñ (ÐÑ)"
-#: effects/ToneGen.cpp:360
+#: effects/ToneGen.cpp:316
msgid "Amplitude Start"
msgstr "ÐоÑаÑок дÑÐ°Ð¿Ð°Ð·Ð¾Ð½Ñ Ð°Ð¼Ð¿Ð»ÑÑÑди"
-#: effects/ToneGen.cpp:361
+#: effects/ToneGen.cpp:317
msgid "Amplitude End"
msgstr "ÐÑнеÑÑ Ð´ÑÐ°Ð¿Ð°Ð·Ð¾Ð½Ñ Ð°Ð¼Ð¿Ð»ÑÑÑди"
-#: effects/ToneGen.cpp:366
+#: effects/ToneGen.cpp:322
msgid "Interpolation:"
msgstr "ÐнÑеÑполÑÑÑÑ:"
@@ -6133,55 +6365,111 @@ msgstr "СÑвоÑÐµÐ½Ð½Ñ ÑебеÑаннÑ"
msgid "Generating Tone"
msgstr "СÑвоÑÐµÐ½Ð½Ñ Ñ
вилÑ"
-#: effects/TruncSilence.cpp:113
+#: effects/TruncSilence.cpp:133
msgid "All tracks must have the same sample rate"
msgstr "ÐÑÑ Ð´Ð¾ÑÑжки Ð¿Ð¾Ð²Ð¸Ð½Ð½Ñ Ð¼Ð°Ñи Ð¾Ð´Ð½Ð°ÐºÐ¾Ð²Ñ ÑаÑÑоÑÑ Ð´Ð¸ÑкÑеÑизаÑÑÑ"
-#: effects/TruncSilence.cpp:113 effects/TruncSilence.cpp:321
+#: effects/TruncSilence.cpp:133 effects/TruncSilence.cpp:443
msgid "Truncate Silence"
msgstr "ÐбÑÑзаÑи ÑиÑÑ"
-#: effects/TruncSilence.cpp:345
-msgid "Max silence duration:"
-msgstr "ÐакÑ. ÑÑивалÑÑÑÑ ÑиÑÑ:"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr "ÐвÑоÑи: Lynn Allan && Philip Van Baren"
-#: effects/TruncSilence.cpp:348 prefs/AudioIOPrefs.cpp:197
-#: prefs/AudioIOPrefs.cpp:200 prefs/MidiIOPrefs.cpp:174
-#: prefs/MidiIOPrefs.cpp:177
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
+msgstr "ÐÑн. ÑÑивалÑÑÑÑ ÑиÑÑ:"
+
+#: effects/TruncSilence.cpp:470 effects/TruncSilence.cpp:474
+#: prefs/MidiIOPrefs.cpp:169 prefs/MidiIOPrefs.cpp:171
msgid "milliseconds"
msgstr "мÑлÑÑекÑнд"
-#: effects/TruncSilence.cpp:350
+#: effects/TruncSilence.cpp:471
+msgid "Max silence duration:"
+msgstr "ÐакÑ. ÑÑивалÑÑÑÑ ÑиÑÑ:"
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr "СÑиÑÐ½ÐµÐ½Ð½Ñ ÑиÑÑ:"
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ":1"
+
+#: effects/TruncSilence.cpp:480
msgid "Threshold for silence:"
msgstr "ÐоÑÑг Ð´Ð»Ñ ÑиÑÑ:"
-#: effects/TruncSilence.cpp:374
-msgid " Duration must be at least 1 millisecond"
-msgstr " ТÑивалÑÑÑÑ Ð¼Ð°Ñ Ð±ÑÑи бÑлÑÑÐ¾Ñ Ð·Ð° 1 мÑлÑÑекÑндÑ"
+#: effects/TruncSilence.cpp:506
+msgid ""
+" Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
+msgstr ""
+" ТÑивалÑÑÑÑ Ð¼Ð°Ñ Ð±ÑÑи бÑлÑÑÐ¾Ñ Ð·Ð° 1 мÑлÑÑекÑндÑ\n"
+" ÐоеÑÑÑÑÑÐ½Ñ ÑÑÐ¸ÐºÐ°Ð½Ð½Ñ Ð¼Ð°Ñ Ð¿ÐµÑевиÑÑваÑи 1:1"
-#: effects/TruncSilence.h:28
+#: effects/TruncSilence.h:29
msgid "Truncate Silence..."
msgstr "ÐбÑÑÐ·Ð°Ð½Ð½Ñ ÑиÑ
иÑ
дÑлÑнок..."
-#: effects/TruncSilence.h:42
+#: effects/TruncSilence.h:43
msgid "Truncating Silence..."
msgstr "ÐбÑÑÐ·Ð°Ð½Ð½Ñ ÑиÑÑ..."
-#: effects/VST/VSTEffect.cpp:172
-msgid ""
-"Sorry, VST Effects cannot be performed on stereo tracks where the individual "
-"channels of the track do not match."
-msgstr ""
-"VST-еÑекÑи не можÑÑÑ Ð·Ð°ÑÑоÑовÑваÑиÑÑ Ð´Ð¾ ÑÑеÑео-доÑÑжок з невÑдповÑдними "
-"ÑндивÑдÑалÑними каналами."
+#: effects/VST/VSTEffect.cpp:256 effects/ladspa/LadspaEffect.cpp:590
+#: effects/lv2/LV2Effect.cpp:798
+msgid "Effect Settings"
+msgstr "ÐаÑамеÑÑи еÑекÑÑ"
+
+#: effects/VST/VSTEffect.cpp:336 effects/ladspa/LadspaEffect.cpp:555
+#: effects/ladspa/LadspaEffect.cpp:563 prefs/QualityPrefs.cpp:74
+#: prefs/TracksPrefs.cpp:48
+msgid "None"
+msgstr "ÐемаÑ"
+
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr "Шаблони:"
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr "ÐаванÑажиÑи"
+
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr "ÐбеÑегÑи"
+
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr "ÐаванÑажиÑи пÑогÑÐ°Ð¼Ñ VST:"
+
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr "Ðомилка пÑд ÑÐ°Ñ ÑпÑоби заванÑÐ°Ð¶ÐµÐ½Ð½Ñ Ð¿ÑогÑами"
+
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr "ÐбеÑегÑи пÑогÑÐ°Ð¼Ñ VST Ñк:"
+
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr "Цей Ñайл паÑамеÑÑÑв бÑло збеÑежено Ñ %s. ÐÑодовжиÑи?"
-#: effects/VST/VSTEffect.cpp:187
-msgid "Can't process replacing"
-msgstr "Ðе можна виконаÑи замÑнÑ"
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr "ÐаÑÑоÑовÑÑÑÑÑÑ ÐµÑекÑ:"
-#: effects/VST/VSTEffect.cpp:410
-msgid "VST Plug-in parameters:"
-msgstr "ÐаÑамеÑÑи додаÑка VST:"
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+"Ðбидва канали ÑÑеÑео-доÑÑжки Ð¿Ð¾Ð²Ð¸Ð½Ð½Ñ Ð¼Ð°Ñи Ð¾Ð´Ð½Ð°ÐºÐ¾Ð²Ñ ÑаÑÑоÑÑ Ð´Ð¸ÑкÑеÑизаÑÑÑ."
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr "Ðбидва канали ÑÑеÑео-доÑÑжки Ð¿Ð¾Ð²Ð¸Ð½Ð½Ñ Ð¼Ð°Ñи Ð¾Ð´Ð½Ð°ÐºÐ¾Ð²Ñ ÑÑивалÑÑÑÑ."
#: effects/Wahwah.cpp:61
#, c-format
@@ -6196,23 +6484,23 @@ msgstr ""
msgid "Wahwah"
msgstr "Wahwah"
-#: effects/Wahwah.cpp:231
+#: effects/Wahwah.cpp:238
msgid "Depth (%):"
msgstr "Ðлибина (%):"
-#: effects/Wahwah.cpp:236
+#: effects/Wahwah.cpp:246
msgid "Resonance:"
msgstr "РезонанÑ:"
-#: effects/Wahwah.cpp:239
+#: effects/Wahwah.cpp:249
msgid "Resonance"
msgstr "РезонанÑ"
-#: effects/Wahwah.cpp:241
+#: effects/Wahwah.cpp:254
msgid "Wah Frequency Offset (%):"
msgstr "ÐÑÑв ÑаÑÑоÑи Wah (%):"
-#: effects/Wahwah.cpp:244
+#: effects/Wahwah.cpp:257
msgid "Wah frequency offset in percent"
msgstr "ÐÑÑв ÑаÑÑоÑи Wah (%)"
@@ -6224,13 +6512,13 @@ msgstr "Wahwah..."
msgid "Applying Wahwah"
msgstr "ÐаÑÑоÑовÑÑÑÑÑÑ ÐµÑÐµÐºÑ \"Wahwah\""
-#: effects/audiounits/AudioUnitEffect.cpp:138
-#: effects/ladspa/LadspaEffect.cpp:176 effects/lv2/LV2Effect.cpp:192
+#: effects/audiounits/AudioUnitEffect.cpp:139
+#: effects/ladspa/LadspaEffect.cpp:178 effects/lv2/LV2Effect.cpp:193
#, c-format
msgid "Performing Effect: %s"
msgstr "ÐаÑÑоÑовÑÑÑÑÑÑ ÐµÑекÑ: %s"
-#: effects/ladspa/LadspaEffect.cpp:196 effects/lv2/LV2Effect.cpp:212
+#: effects/ladspa/LadspaEffect.cpp:198 effects/lv2/LV2Effect.cpp:213
msgid ""
"Sorry, Plug-in Effects cannot be performed on stereo tracks where the "
"individual channels of the track do not match."
@@ -6238,81 +6526,73 @@ msgstr ""
"Цей модÑÐ»Ñ Ð½Ðµ можна виконÑваÑи на ÑÑеÑео доÑÑжкаÑ
, на ÑкиÑ
окÑÐµÐ¼Ñ ÐºÐ°Ð½Ð°Ð»Ð¸ "
"доÑÑжки не вÑдповÑдаÑÑÑ Ð¾Ð´Ð½Ð° однÑй."
-#: effects/ladspa/LadspaEffect.cpp:580 effects/ladspa/LadspaEffect.cpp:588
-#: prefs/GUIPrefs.cpp:51 prefs/QualityPrefs.cpp:72
-msgid "None"
-msgstr "ÐемаÑ"
-
-#: effects/ladspa/LadspaEffect.cpp:582 effects/lv2/LV2Effect.cpp:799
-#: effects/vamp/VampEffect.cpp:397
+#: effects/ladspa/LadspaEffect.cpp:557 effects/lv2/LV2Effect.cpp:773
+#: effects/vamp/VampEffect.cpp:371
msgid "Author: "
msgstr "ÐвÑоÑ: "
-#: effects/ladspa/LadspaEffect.cpp:615 effects/lv2/LV2Effect.cpp:824
-msgid "Effect Settings"
-msgstr "ÐаÑамеÑÑи еÑекÑÑ"
-
-#: effects/ladspa/LadspaEffect.cpp:710 effects/ladspa/LadspaEffect.cpp:713
-#: effects/lv2/LV2Effect.cpp:835 effects/lv2/LV2Effect.cpp:838
+#: effects/ladspa/LadspaEffect.cpp:685 effects/ladspa/LadspaEffect.cpp:688
+#: effects/lv2/LV2Effect.cpp:809 effects/lv2/LV2Effect.cpp:812
msgid "Length (seconds)"
msgstr "ТÑивалÑÑÑÑ (ÑекÑнд)"
-#: effects/lv2/LV2Effect.cpp:850 effects/lv2/LV2Effect.cpp:853
+#: effects/lv2/LV2Effect.cpp:824 effects/lv2/LV2Effect.cpp:827
msgid "Note length (seconds)"
msgstr "ТÑивалÑÑÑÑ Ð½Ð¾Ñи (ÑекÑнд)"
-#: effects/lv2/LV2Effect.cpp:861 effects/lv2/LV2Effect.cpp:864
+#: effects/lv2/LV2Effect.cpp:835 effects/lv2/LV2Effect.cpp:838
msgid "Note velocity"
msgstr "ÐоÑна ÑвидкÑÑÑÑ"
-#: effects/lv2/LV2Effect.cpp:872 effects/lv2/LV2Effect.cpp:875
+#: effects/lv2/LV2Effect.cpp:846 effects/lv2/LV2Effect.cpp:849
msgid "Note key"
msgstr "ÐоÑний клÑÑ"
-#: effects/nyquist/Nyquist.cpp:257
+#: effects/nyquist/Nyquist.cpp:73
msgid "Applying Nyquist Effect..."
msgstr "ÐаÑÑоÑовÑÑÑÑÑÑ ÐµÑÐµÐºÑ ÐайквÑÑÑа..."
-#: effects/nyquist/Nyquist.cpp:264 effects/nyquist/Nyquist.cpp:326
+#: effects/nyquist/Nyquist.cpp:91 effects/nyquist/Nyquist.cpp:401
msgid "Nyquist Prompt..."
msgstr "ÐÐ°Ð¿Ð¸Ñ ÐайквÑÑÑа..."
-#: effects/nyquist/Nyquist.cpp:327
+#: effects/nyquist/Nyquist.cpp:402
msgid "Enter Nyquist Command: "
msgstr "ÐведÑÑÑ ÐайквÑÑÑ-командÑ:"
-#: effects/nyquist/Nyquist.cpp:417
-msgid "Sorry, cannot apply effect on stereo tracks where the tracks don't match."
+#: effects/nyquist/Nyquist.cpp:515
+msgid ""
+"Sorry, cannot apply effect on stereo tracks where the tracks don't match."
msgstr ""
"ÐÑÐµÐºÑ Ð½ÐµÐ¼Ð¾Ð¶Ð»Ð¸Ð²Ð¾ заÑÑоÑÑваÑи до ÑÑеÑео-доÑÑжок з невÑдповÑдними "
"ÑндивÑдÑалÑним каналами."
-#: effects/nyquist/Nyquist.cpp:445
+#: effects/nyquist/Nyquist.cpp:557
msgid "Nyquist"
msgstr "ÐайквÑÑÑ"
-#: effects/nyquist/Nyquist.cpp:446
+#: effects/nyquist/Nyquist.cpp:558
msgid "Nyquist Output: "
msgstr "ÐивÑд ÐайквÑÑÑа: "
-#: effects/nyquist/Nyquist.cpp:603 effects/nyquist/Nyquist.cpp:614
+#: effects/nyquist/Nyquist.cpp:656 effects/nyquist/Nyquist.cpp:665
msgid "Nyquist returned the value:"
msgstr "Nyquist повеÑнÑв знаÑеннÑ:"
-#: effects/nyquist/Nyquist.cpp:656
+#: effects/nyquist/Nyquist.cpp:702
msgid "Nyquist did not return audio.\n"
msgstr "ÐодÑÐ»Ñ ÐайквÑÑÑа не повеÑнÑв звÑÐºÐ¾Ð²Ñ Ð´Ð°Ð½Ñ.\n"
-#: effects/nyquist/Nyquist.cpp:667
+#: effects/nyquist/Nyquist.cpp:711
msgid "Nyquist returned too many audio channels.\n"
msgstr "ÐодÑÐ»Ñ ÐайквÑÑÑа повеÑнÑв занадÑо багаÑо звÑковиÑ
каналÑв.\n"
-#: effects/vamp/VampEffect.cpp:80
+#: effects/vamp/VampEffect.cpp:81
#, c-format
msgid "Extracting features: %s"
msgstr "ÐÑÑÐ¸Ð¼Ð°Ð½Ð½Ñ Ð¿Ð°ÑамеÑÑÑв: %s"
-#: effects/vamp/VampEffect.cpp:111
+#: effects/vamp/VampEffect.cpp:107
msgid ""
"Sorry, Vamp Plug-ins cannot be run on stereo tracks where the individual "
"channels of the track do not match."
@@ -6320,47 +6600,47 @@ msgstr ""
"ÐибаÑÑе, додаÑки Vamp неможливо виконÑваÑи на ÑÑеÑео-доÑÑжкаÑ
, де окÑÐµÐ¼Ñ "
"канали доÑÑжки вÑдÑÑзнÑÑÑÑÑÑ Ð¾Ð´Ð¸Ð½ вÑд одного."
-#: effects/vamp/VampEffect.cpp:125
+#: effects/vamp/VampEffect.cpp:121
msgid "Sorry, failed to load Vamp Plug-in."
msgstr "ÐибаÑÑе, не вдалоÑÑ Ð·Ð°Ð²Ð°Ð½ÑажиÑи додаÑок Vamp."
-#: effects/vamp/VampEffect.cpp:233
+#: effects/vamp/VampEffect.cpp:207
msgid "Sorry, Vamp Plug-in failed to initialize."
msgstr "ÐибаÑÑе, не вдалоÑÑ Ð·Ð°Ð¿ÑÑÑиÑи додаÑок Vamp."
-#: effects/vamp/VampEffect.cpp:389
+#: effects/vamp/VampEffect.cpp:363
msgid " - Vamp audio analysis plugin"
-msgstr " - ÐодаÑок аÑдÑо-аналÑÐ·Ñ Vamp"
+msgstr " - ÐодаÑок аÑдÑоаналÑÐ·Ñ Vamp"
-#: effects/vamp/VampEffect.cpp:425
+#: effects/vamp/VampEffect.cpp:399
msgid "Plugin Settings"
msgstr "ÐаÑамеÑÑи додаÑка"
-#: effects/vamp/VampEffect.cpp:444 effects/vamp/VampEffect.cpp:450
+#: effects/vamp/VampEffect.cpp:418 effects/vamp/VampEffect.cpp:424
msgid "Program"
msgstr "ÐÑогÑама"
-#: export/Export.cpp:469
+#: export/Export.cpp:468
msgid "All the selected audio is muted."
-msgstr "ÐеÑÑ Ð²Ð¸Ð´Ñлений звÑк заглÑÑено."
+msgstr "ÐеÑÑ Ð²Ð¸Ð±Ñаний звÑк заглÑÑено."
-#: export/Export.cpp:471
+#: export/Export.cpp:470
msgid "All the audio is muted."
msgstr "ÐеÑÑ Ð·Ð²Ñк замÑнено ÑиÑеÑ."
-#: export/Export.cpp:527
+#: export/Export.cpp:526
msgid "Export File"
msgstr "ÐкÑпоÑÑ Ñайла"
-#: export/Export.cpp:536
+#: export/Export.cpp:535
msgid "&Options..."
msgstr "&ÐаÑамеÑÑи..."
-#: export/Export.cpp:577
+#: export/Export.cpp:576
msgid "Are you sure you want to save the file as \""
msgstr "Ðи дÑйÑно бажаÑÑе збеÑегÑи Ñайл Ñк \""
-#: export/Export.cpp:597
+#: export/Export.cpp:596
#, c-format
msgid ""
"You are about to save a %s file with the name \"%s\".\n"
@@ -6377,33 +6657,35 @@ msgstr ""
"\n"
"Ðи ÑпÑÐ°Ð²Ð´Ñ Ð±Ð°Ð¶Ð°ÑÑе збеÑегÑи Ñайл з ÑÑÑÑ Ð½Ð°Ð·Ð²Ð¾Ñ?"
-#: export/Export.cpp:618
+#: export/Export.cpp:617
#, c-format
msgid "A file named \"%s\" already exists. Replace?"
msgstr "Файл названий \"%s\" вже ÑÑнÑÑ. ÐамÑниÑи?"
-#: export/Export.cpp:720
-msgid "Your tracks will be mixed down to two stereo channels in the exported file."
+#: export/Export.cpp:719
+msgid ""
+"Your tracks will be mixed down to two stereo channels in the exported file."
msgstr "У екÑпоÑÑÐ¾Ð²Ð°Ð½Ð¾Ð¼Ñ ÑÐ°Ð¹Ð»Ñ Ð´Ð¾ÑÑжки бÑдÑÑÑ Ð·Ð²ÐµÐ´ÐµÐ½Ñ Ñ Ð´Ð²Ð° ÑÑеÑеоканали."
-#: export/Export.cpp:725
-msgid "Your tracks will be mixed down to a single mono channel in the exported file."
+#: export/Export.cpp:724
+msgid ""
+"Your tracks will be mixed down to a single mono channel in the exported file."
msgstr "У екÑпоÑÑÐ¾Ð²Ð°Ð½Ð¾Ð¼Ñ ÑÐ°Ð¹Ð»Ñ Ð´Ð¾ÑÑжки бÑдÑÑÑ Ð·Ð²ÐµÐ´ÐµÐ½Ñ Ñ Ð¾Ð´Ð¸Ð½ моноканал."
-#: export/Export.cpp:736
+#: export/Export.cpp:735
msgid "Advanced Mixing Options"
msgstr "ÐодаÑÐºÐ¾Ð²Ñ Ð¿Ð°ÑамеÑÑи мÑкÑÑваннÑ"
-#: export/Export.cpp:940
+#: export/Export.cpp:943
#, c-format
msgid "Channel: %2d"
msgstr "Ðанал: %2d"
-#: export/Export.cpp:1056
+#: export/Export.cpp:1058
msgid " - Left"
msgstr " - ÐÑвоÑÑÑ"
-#: export/Export.cpp:1057
+#: export/Export.cpp:1060
msgid " - Right"
msgstr " - ÐÑавоÑÑÑ"
@@ -6445,32 +6727,53 @@ msgstr ""
msgid "(external program)"
msgstr "(зовнÑÑÐ½Ñ Ð¿ÑогÑама)"
-#: export/ExportCL.cpp:251 export/ExportPCM.cpp:484
+#: export/ExportCL.cpp:286 export/ExportPCM.cpp:492
#, c-format
msgid "Cannot export audio to %s"
msgstr "Ðе вдаÑÑÑÑÑ ÐµÐºÑпоÑÑÑваÑи Ð´Ð°Ð½Ñ Ñ %s"
-#: export/ExportCL.cpp:325
+#: export/ExportCL.cpp:360
msgid "Exporting the selected audio using command-line encoder"
-msgstr "ÐидÑлене екÑпоÑÑÑÑÑÑÑÑ ÑеÑез конÑолÑний кодÑвалÑник"
+msgstr "ÐибÑане екÑпоÑÑÑÑÑÑÑÑ ÑеÑез конÑолÑний кодÑвалÑник"
-#: export/ExportCL.cpp:326
+#: export/ExportCL.cpp:361
msgid "Exporting the entire project using command-line encoder"
msgstr "ÐеÑÑ Ð¿ÑÐ¾ÐµÐºÑ ÐµÐºÑпоÑÑÑÑÑÑÑÑ ÑеÑез конÑолÑний кодÑвалÑник"
-#: export/ExportCL.cpp:388
+#: export/ExportCL.cpp:423
msgid "Command Output"
msgstr "ÐÐ¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¸"
-#: export/ExportFFmpeg.cpp:59
+#: export/ExportFFmpeg.cpp:61
msgid ""
"Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+"You can configure it at Preferences > Libraries."
msgstr ""
-"ÐÐ»Ñ Ð¿ÑÐ¾Ð´Ð¾Ð²Ð¶ÐµÐ½Ð½Ñ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð´Ñй поÑÑÑбна належно налаÑÑована бÑблÑоÑека FFmpeg.\n"
-"Ðи можеÑе налаÑÑÑваÑи ÑÑ Ð±ÑблÑоÑÐµÐºÑ Ð·Ð° Ð´Ð¾Ð¿Ð¾Ð¼Ð¾Ð³Ð¾Ñ ÑÑоÑÑнки УподобаннÑ->ÐмпоÑÑ/ÐкÑпоÑÑ."
+"ÐÐ»Ñ Ð¿ÑÐ¾Ð´Ð¾Ð²Ð¶ÐµÐ½Ð½Ñ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð´Ñй поÑÑÑбна належно налаÑÑована бÑблÑоÑека FFmpeg."
+"\n"
+"Ðи можеÑе налаÑÑÑваÑи ÑÑ Ð±ÑблÑоÑÐµÐºÑ Ð·Ð° Ð´Ð¾Ð¿Ð¾Ð¼Ð¾Ð³Ð¾Ñ ÑÑоÑÑнки УподобаннÑ->"
+"ÐÑблÑоÑеки."
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr "ÐÑдÑÑÐ¸Ð¼ÐºÑ AMR не пеÑедбаÑено Ñ Ð´Ð¸ÑÑÑибÑÑиваÑ
пÑогÑами"
-#: export/ExportFFmpeg.cpp:394
+#: export/ExportFFmpeg.cpp:232
+msgid ""
+"Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
+msgstr ""
+"ÐÐ»Ñ Ð¿ÑÐ¾Ð´Ð¾Ð²Ð¶ÐµÐ½Ð½Ñ ÑобоÑи поÑÑÑбна належним Ñином налаÑÑована бÑблÑоÑека FFmpeg."
+"\n"
+"ÐалаÑÑÑваÑи ÑÑ Ð¼Ð¾Ð¶Ð½Ð° на ÑÑоÑÑнÑÑ Â«Ð£Ð¿Ð¾Ð´Ð¾Ð±Ð°Ð½Ð½Ñ > ÐÑблÑоÑеки».\n"
+"\n"
+"ÐаÑважÑе, Ñо Ñ Ð¿Ð¾ÑиÑÑванÑй нами веÑÑÑÑ FFmpeg не пеÑедбаÑено пÑдÑÑимки\n"
+"AMR, Ð´Ð»Ñ ÑÑого вам доведеÑÑÑÑ Ð·ÑбÑаÑи FFmpeg влаÑноÑÑÑ."
+
+#: export/ExportFFmpeg.cpp:433
#, c-format
msgid ""
"FFmpeg cannot find audio codec 0x%x.\n"
@@ -6479,28 +6782,30 @@ msgstr ""
"FFmpeg не вдалоÑÑ Ð·Ð½Ð°Ð¹Ñи звÑкового кодека 0x%x.\n"
"ÐмовÑÑно, бÑблÑоÑÐµÐºÑ Ð±Ñло зÑбÑано без пÑдÑÑимки ÑÑого кодека."
-#: export/ExportFFmpeg.cpp:614
+#: export/ExportFFmpeg.cpp:655
#, c-format
msgid ""
"Attempted to export %d channels, but max. channels for selected output "
"format is %d"
-msgstr "СпÑоба екÑпоÑÑÑ Ð· %d каналами, але макÑималÑÐ½Ð¾Ñ ÐºÑлÑкÑÑÑÑ ÐºÐ°Ð½Ð°Ð»Ñв Ð´Ð»Ñ Ð¾Ð±Ñаного ÑоÑмаÑÑ Ð²Ð¸Ð²Ð¾Ð´Ñ Ñ %d"
+msgstr ""
+"СпÑоба екÑпоÑÑÑ Ð· %d каналами, але макÑималÑÐ½Ð¾Ñ ÐºÑлÑкÑÑÑÑ ÐºÐ°Ð½Ð°Ð»Ñв Ð´Ð»Ñ "
+"обÑаного ÑоÑмаÑÑ Ð²Ð¸Ð²Ð¾Ð´Ñ Ñ %d"
-#: export/ExportFFmpeg.cpp:643
+#: export/ExportFFmpeg.cpp:684
#, c-format
msgid "Exporting selected audio as %s"
msgstr "ÐкÑпоÑÑ Ð¾Ð±ÑаниÑ
звÑковиÑ
даниÑ
Ñк %s"
-#: export/ExportFFmpeg.cpp:644
+#: export/ExportFFmpeg.cpp:685
#, c-format
msgid "Exporting entire file as %s"
msgstr "ÐкÑпоÑÑ Ð²ÑÑого Ñайла Ñк %s"
-#: export/ExportFFmpeg.cpp:707 export/ExportMP3.cpp:1772
+#: export/ExportFFmpeg.cpp:748 export/ExportMP3.cpp:1777
msgid "Invalid sample rate"
msgstr "ÐекоÑекÑна ÑаÑÑоÑа диÑкÑеÑизаÑÑÑ"
-#: export/ExportFFmpeg.cpp:720
+#: export/ExportFFmpeg.cpp:761
#, c-format
msgid ""
"The project sample rate (%d) is not supported by the current output\n"
@@ -6509,7 +6814,7 @@ msgstr ""
"ЧаÑÑоÑа диÑкÑеÑизаÑÑÑ Ð¿ÑоекÑÑ (%d) не пÑдÑÑимÑÑÑÑÑÑ Ð¿Ð¾ÑоÑним ÑоÑмаÑом\n"
"Ñайла Ð²Ð¸Ð²Ð¾Ð´Ñ Ð´Ð°Ð½Ð¸Ñ
. "
-#: export/ExportFFmpeg.cpp:723
+#: export/ExportFFmpeg.cpp:764
#, c-format
msgid ""
"The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
@@ -6518,11 +6823,11 @@ msgstr ""
"ÐабÑÑ ÑаÑÑоÑи диÑкÑеÑизаÑÑÑ Ð¿ÑоекÑÑ (%d) Ñа ÑвидкоÑÑÑ (%d кб/Ñ)\n"
"не пÑдÑÑимÑÑÑÑÑÑ Ð¿Ð¾ÑоÑним ÑоÑмаÑом Ñайла виводÑ. "
-#: export/ExportFFmpeg.cpp:726 export/ExportMP3.cpp:1791
+#: export/ExportFFmpeg.cpp:767 export/ExportMP3.cpp:1796
msgid "You may resample to one of the rates below."
msgstr "Ðи можеÑе змÑниÑи ÑаÑÑоÑÑ Ð½Ð° Ð¾Ð´Ð½Ñ Ð· наведениÑ
нижÑе."
-#: export/ExportFFmpeg.cpp:754 export/ExportMP3.cpp:1814
+#: export/ExportFFmpeg.cpp:795 export/ExportMP3.cpp:1819
msgid "Sample Rates"
msgstr "ЧаÑÑоÑи диÑкÑеÑизаÑÑÑ"
@@ -6536,7 +6841,7 @@ msgstr "ÐалаÑÑÑÐ²Ð°Ð½Ð½Ñ ÐµÐºÑпоÑÑÑ Ð´Ð¾ AC3"
#: export/ExportFFmpegDialogs.cpp:116 export/ExportFFmpegDialogs.cpp:234
#: export/ExportFFmpegDialogs.cpp:298 export/ExportFFmpegDialogs.cpp:364
-#: export/ExportFFmpegDialogs.cpp:924 export/ExportMP2.cpp:131
+#: export/ExportFFmpegDialogs.cpp:926 export/ExportMP2.cpp:131
msgid "Bit Rate:"
msgstr "ЧаÑÑоÑа бÑÑÑв:"
@@ -6548,6 +6853,11 @@ msgstr "ÐказаÑи паÑамеÑÑи AAC"
msgid "AAC Export Setup"
msgstr "ÐалаÑÑÑÐ²Ð°Ð½Ð½Ñ ÐµÐºÑпоÑÑÑ Ð´Ð¾ AAC"
+#: export/ExportFFmpegDialogs.cpp:172 export/ExportFFmpegDialogs.cpp:929
+#: export/ExportOGG.cpp:84
+msgid "Quality:"
+msgstr "ЯкÑÑÑÑ:"
+
#: export/ExportFFmpegDialogs.cpp:211
msgid "Specify AMR-NB Options"
msgstr "ÐказаÑи паÑамеÑÑи AMR-NB"
@@ -6572,95 +6882,97 @@ msgstr "ÐказаÑи паÑамеÑÑи WMA"
msgid "WMA Export Setup"
msgstr "ÐалаÑÑÑÐ²Ð°Ð½Ð½Ñ ÐµÐºÑпоÑÑÑ Ð´Ð¾ WMA"
-#: export/ExportFFmpegDialogs.cpp:488
+#: export/ExportFFmpegDialogs.cpp:491
#, c-format
msgid "Overwrite preset '%s'?"
msgstr "ÐеÑезапиÑаÑи Ñаблон '%s'?"
-#: export/ExportFFmpegDialogs.cpp:489
+#: export/ExportFFmpegDialogs.cpp:492
msgid "Confirm Overwrite"
msgstr "ÐÑдÑвеÑдиÑи пеÑезапиÑ"
-#: export/ExportFFmpegDialogs.cpp:501
+#: export/ExportFFmpegDialogs.cpp:504
msgid "Please select format before saving a profile"
msgstr "ÐÑÐ´Ñ Ð»Ð°Ñка, обеÑÑÑÑ ÑоÑмаÑ, пеÑÑ Ð½Ñж збеÑÑгаÑи пÑоÑÑлÑ"
-#: export/ExportFFmpegDialogs.cpp:509
+#: export/ExportFFmpegDialogs.cpp:512
msgid "Please select codec before saving a profile"
msgstr "ÐÑÐ´Ñ Ð»Ð°Ñка, обеÑÑÑÑ ÐºÐ¾Ð´ÐµÐº, пеÑÑ Ð½Ñж збеÑÑгаÑи пÑоÑÑлÑ"
-#: export/ExportFFmpegDialogs.cpp:580
+#: export/ExportFFmpegDialogs.cpp:582
#, c-format
msgid "Preset '%s' does not exist."
msgstr "Шаблона «%s» не ÑÑнÑÑ."
-#: export/ExportFFmpegDialogs.cpp:795
+#: export/ExportFFmpegDialogs.cpp:797
msgid "Specify Other Options"
msgstr "ÐказаÑи ÑнÑÑ Ð¿Ð°ÑамеÑÑи"
-#: export/ExportFFmpegDialogs.cpp:884
+#: export/ExportFFmpegDialogs.cpp:886
msgid "Preset:"
msgstr "Шаблон:"
-#: export/ExportFFmpegDialogs.cpp:885
+#: export/ExportFFmpegDialogs.cpp:887
msgid "Load Preset"
msgstr "ÐаванÑажиÑи Ñаблон"
-#: export/ExportFFmpegDialogs.cpp:886
+#: export/ExportFFmpegDialogs.cpp:888
msgid "Save Preset"
msgstr "ÐбеÑегÑи Ñаблон"
-#: export/ExportFFmpegDialogs.cpp:887
+#: export/ExportFFmpegDialogs.cpp:889
msgid "Delete Preset"
msgstr "ÐилÑÑиÑи Ñаблон"
-#: export/ExportFFmpegDialogs.cpp:888
+#: export/ExportFFmpegDialogs.cpp:890
msgid "Import Presets"
msgstr "ÐмпоÑÑÑваÑи Ñаблони"
-#: export/ExportFFmpegDialogs.cpp:889
+#: export/ExportFFmpegDialogs.cpp:891
msgid "Export Presets"
msgstr "ÐкÑпоÑÑÑваÑи Ñаблони"
-#: export/ExportFFmpegDialogs.cpp:894
+#: export/ExportFFmpegDialogs.cpp:896
msgid "Format:"
msgstr "ФоÑмаÑ:"
-#: export/ExportFFmpegDialogs.cpp:896
+#: export/ExportFFmpegDialogs.cpp:898
msgid "Codec:"
msgstr "Ðодек:"
-#: export/ExportFFmpegDialogs.cpp:900
+#: export/ExportFFmpegDialogs.cpp:902
msgid ""
"Not all formats and codecs are compatible. Some parameters (such as bitrate "
"and samplerate) combinations are not compatible with some codecs too."
-msgstr "Ðе вÑÑ ÑоÑмаÑи Ñ ÐºÐ¾Ð´ÐµÐºÐ¸ Ñ ÑÑмÑÑними. ÐÐµÐ²Ð½Ñ ÐºÐ¾Ð¼Ð±ÑнаÑÑÑ Ð¿Ð°ÑамеÑÑÑв (зокÑема бÑÑÐ¾Ð²Ð¾Ñ ÑаÑÑоÑи Ñ ÑаÑÑоÑи вибÑÑки) Ñакож неÑÑмÑÑÐ½Ñ Ð· деÑкими кодеками."
+msgstr ""
+"Ðе вÑÑ ÑоÑмаÑи Ñ ÐºÐ¾Ð´ÐµÐºÐ¸ Ñ ÑÑмÑÑними. ÐÐµÐ²Ð½Ñ ÐºÐ¾Ð¼Ð±ÑнаÑÑÑ Ð¿Ð°ÑамеÑÑÑв (зокÑема "
+"бÑÑÐ¾Ð²Ð¾Ñ ÑаÑÑоÑи Ñ ÑаÑÑоÑи вибÑÑки) Ñакож неÑÑмÑÑÐ½Ñ Ð· деÑкими кодеками."
-#: export/ExportFFmpegDialogs.cpp:903
+#: export/ExportFFmpegDialogs.cpp:905
msgid "Format selector:"
msgstr "ÐибÑÑ ÑоÑмаÑÑ:"
-#: export/ExportFFmpegDialogs.cpp:904
+#: export/ExportFFmpegDialogs.cpp:906
msgid "Codec selector:"
msgstr "ÐибÑÑ ÐºÐ¾Ð´ÐµÐºÐ°:"
-#: export/ExportFFmpegDialogs.cpp:906
+#: export/ExportFFmpegDialogs.cpp:908
msgid "Show All Formats"
msgstr "ÐоказÑваÑи вÑÑ ÑоÑмаÑи"
-#: export/ExportFFmpegDialogs.cpp:907
+#: export/ExportFFmpegDialogs.cpp:909
msgid "Show All Codecs"
msgstr "ÐоказÑваÑи вÑÑ ÐºÐ¾Ð´ÐµÐºÐ¸"
-#: export/ExportFFmpegDialogs.cpp:914
+#: export/ExportFFmpegDialogs.cpp:916
msgid "Options"
msgstr "ÐаÑамеÑÑи"
-#: export/ExportFFmpegDialogs.cpp:918 prefs/GUIPrefs.cpp:166
+#: export/ExportFFmpegDialogs.cpp:920 prefs/GUIPrefs.cpp:116
msgid "Language:"
msgstr "Ðова:"
-#: export/ExportFFmpegDialogs.cpp:919
+#: export/ExportFFmpegDialogs.cpp:921
msgid ""
"ISO 639 3-letter language code\n"
"Optional\n"
@@ -6670,11 +6982,11 @@ msgstr ""
"ÐеобовâÑзковий\n"
"за поÑожнÑого знаÑÐµÐ½Ð½Ñ â авÑомаÑиÑно"
-#: export/ExportFFmpegDialogs.cpp:921
+#: export/ExportFFmpegDialogs.cpp:923
msgid "Tag:"
msgstr "ÐÑÑка:"
-#: export/ExportFFmpegDialogs.cpp:922
+#: export/ExportFFmpegDialogs.cpp:924
msgid ""
"Codec tag (FOURCC)\n"
"Optional\n"
@@ -6684,39 +6996,37 @@ msgstr ""
"ÐеобовâÑзкова\n"
"за поÑожнÑого знаÑÐµÐ½Ð½Ñ â авÑомаÑиÑно"
-#: export/ExportFFmpegDialogs.cpp:925
+#: export/ExportFFmpegDialogs.cpp:927
msgid ""
"Bit Rate (bits/second) - influences the resulting file size and quality\n"
"Some codecs may only accept specific values (128k, 192k, 256k etc)\n"
"0 - automatic\n"
"Recommended - 192000"
msgstr ""
-"ÐÑÑова ÑвидкÑÑÑÑ (бÑÑÑв/ÑекÑндÑ) â Ð²Ð¿Ð»Ð¸Ð²Ð°Ñ Ð½Ð° ÑозмÑÑ Ð¾ÑÑиманого Ñайла Ñ ÑкÑÑÑÑ\n"
-"Ðа деÑкиÑ
кодекÑв можна викоÑиÑÑовÑваÑи лиÑе Ð¿ÐµÐ²Ð½Ñ Ð·Ð½Ð°ÑÐµÐ½Ð½Ñ (128k, 192k, 256k ÑоÑо)\n"
+"ÐÑÑова ÑвидкÑÑÑÑ (бÑÑÑв/ÑекÑндÑ) â Ð²Ð¿Ð»Ð¸Ð²Ð°Ñ Ð½Ð° ÑозмÑÑ Ð¾ÑÑиманого Ñайла Ñ "
+"ÑкÑÑÑÑ\n"
+"Ðа деÑкиÑ
кодекÑв можна викоÑиÑÑовÑваÑи лиÑе Ð¿ÐµÐ²Ð½Ñ Ð·Ð½Ð°ÑÐµÐ½Ð½Ñ (128k, 192k, "
+"256k ÑоÑо)\n"
"0 â авÑомаÑиÑно\n"
"Рекомендоване знаÑÐµÐ½Ð½Ñ â 192000"
-#: export/ExportFFmpegDialogs.cpp:927 export/ExportOGG.cpp:84
-msgid "Quality:"
-msgstr "ЯкÑÑÑÑ:"
-
-#: export/ExportFFmpegDialogs.cpp:928
+#: export/ExportFFmpegDialogs.cpp:930
msgid ""
-"Overral quality, used differently by different codecs\n"
+"Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
msgstr ""
-"ЯкÑÑÑÑ, викоÑиÑÑовÑÑÑÑÑÑ Ñ ÑÑзниÑ
кодекаÑ
по-ÑÑзномÑ\n"
+"ÐагалÑна ÑкÑÑÑÑ, викоÑиÑÑовÑÑÑÑÑÑ Ñ ÑÑзниÑ
кодекаÑ
по-ÑÑзномÑ\n"
"ÐоÑÑÑбна Ð´Ð»Ñ vorbis\n"
"0 â авÑомаÑиÑно\n"
"-1 â вимкнÑÑи (викоÑиÑÑовÑваÑи бÑÑÐ¾Ð²Ñ ÑвидкÑÑÑÑ)"
-#: export/ExportFFmpegDialogs.cpp:930
+#: export/ExportFFmpegDialogs.cpp:932
msgid "Sample Rate:"
msgstr "ЧаÑÑоÑа диÑкÑеÑизаÑÑÑ:"
-#: export/ExportFFmpegDialogs.cpp:931
+#: export/ExportFFmpegDialogs.cpp:933
msgid ""
"Sample rate (Hz)\n"
"0 - don't change sample rate"
@@ -6724,25 +7034,25 @@ msgstr ""
"ЧаÑÑоÑа вибÑÑки (ÐÑ)\n"
"0 â не змÑнÑваÑи ÑаÑÑоÑÑ Ð²Ð¸Ð±ÑÑки"
-#: export/ExportFFmpegDialogs.cpp:933
+#: export/ExportFFmpegDialogs.cpp:935
msgid "Cutoff Bandwidth:"
msgstr "ШиÑина ÑмÑги:"
-#: export/ExportFFmpegDialogs.cpp:934
+#: export/ExportFFmpegDialogs.cpp:936
msgid ""
"Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
"ШиÑина ÑмÑги пÑопÑÑÐºÐ°Ð½Ð½Ñ Ð·Ð²ÑÐºÑ (ÐÑ)\n"
"ÐеобовâÑзкова\n"
-"0 â авÑомаÑиÑно\n"
+"0 â авÑомаÑиÑно"
-#: export/ExportFFmpegDialogs.cpp:936
+#: export/ExportFFmpegDialogs.cpp:938
msgid "Profile:"
msgstr "ÐÑоÑÑлÑ:"
-#: export/ExportFFmpegDialogs.cpp:938
+#: export/ExportFFmpegDialogs.cpp:940
msgid ""
"AAC Profile\n"
"Low Complexity -default\n"
@@ -6752,23 +7062,23 @@ msgstr ""
"ÐизÑка ÑкладнÑÑÑÑ â Ñиповий\n"
"ÐÑлÑÑÑÑÑÑ Ð¿ÑогÑаваÑÑв поÑÑебÑÑÑÑ Ñаме Ñакого паÑамеÑÑа"
-#: export/ExportFFmpegDialogs.cpp:940
+#: export/ExportFFmpegDialogs.cpp:942
msgid "Use Bit Reservoir"
msgstr "ÐикоÑиÑÑовÑваÑи бÑÑÐµÑ Ð±ÑÑÑв"
-#: export/ExportFFmpegDialogs.cpp:943
+#: export/ExportFFmpegDialogs.cpp:945
msgid "Use Variable Block Length"
msgstr "ÐикоÑиÑÑовÑваÑи змÑÐ½Ð½Ñ Ð´Ð¾Ð²Ð¶Ð¸Ð½Ñ Ð±Ð»Ð¾ÐºÑ"
-#: export/ExportFFmpegDialogs.cpp:948
+#: export/ExportFFmpegDialogs.cpp:950
msgid "FLAC options"
msgstr "ÐаÑамеÑÑи FLAC"
-#: export/ExportFFmpegDialogs.cpp:952
+#: export/ExportFFmpegDialogs.cpp:954
msgid "Compression Level:"
msgstr "Ð ÑÐ²ÐµÐ½Ñ ÑÑиÑканнÑ:"
-#: export/ExportFFmpegDialogs.cpp:953
+#: export/ExportFFmpegDialogs.cpp:955
msgid ""
"Compression level\n"
"Required for FLAC\n"
@@ -6782,11 +7092,11 @@ msgstr ""
"min â 0 (Ñвидке кодÑваннÑ, Ð²ÐµÐ»Ð¸ÐºÑ Ð²Ð¸Ñ
ÑÐ´Ð½Ñ Ñайли)\n"
"max â 10 (повÑлÑне кодÑваннÑ, Ð¼Ð°Ð»Ñ Ð²Ð¸Ñ
ÑÐ´Ð½Ñ Ñайли)"
-#: export/ExportFFmpegDialogs.cpp:955
+#: export/ExportFFmpegDialogs.cpp:957
msgid "Frame Size:"
msgstr "РозмÑÑ ÑÑейма:"
-#: export/ExportFFmpegDialogs.cpp:956
+#: export/ExportFFmpegDialogs.cpp:958
msgid ""
"Frame size\n"
"Optional\n"
@@ -6800,11 +7110,11 @@ msgstr ""
"min â 16\n"
"max â 65535"
-#: export/ExportFFmpegDialogs.cpp:958
+#: export/ExportFFmpegDialogs.cpp:960
msgid "LPC coefficients precision"
msgstr "ТоÑнÑÑÑÑ ÐºÐ¾ÐµÑÑÑÑÑнÑÑв LPC"
-#: export/ExportFFmpegDialogs.cpp:959
+#: export/ExportFFmpegDialogs.cpp:961
msgid ""
"LPC coefficients precision\n"
"Optional\n"
@@ -6818,11 +7128,11 @@ msgstr ""
"min â 1\n"
"max â 15"
-#: export/ExportFFmpegDialogs.cpp:961
+#: export/ExportFFmpegDialogs.cpp:963
msgid "Minimal prediction order"
msgstr "ÐÑнÑмалÑний поÑÑдок пеÑедбаÑеннÑ"
-#: export/ExportFFmpegDialogs.cpp:962
+#: export/ExportFFmpegDialogs.cpp:964
msgid ""
"Minimal prediction order\n"
"Optional\n"
@@ -6836,11 +7146,11 @@ msgstr ""
"min â 0\n"
"max â 32 (з LPC) або 4 (без LPC)"
-#: export/ExportFFmpegDialogs.cpp:964
+#: export/ExportFFmpegDialogs.cpp:966
msgid "Maximal prediction order"
msgstr "ÐакÑималÑний поÑÑдок пеÑедбаÑеннÑ"
-#: export/ExportFFmpegDialogs.cpp:965
+#: export/ExportFFmpegDialogs.cpp:967
msgid ""
"Maximal prediction order\n"
"Optional\n"
@@ -6854,11 +7164,11 @@ msgstr ""
"min â 0\n"
"max â 32 (з LPC) або 4 (без LPC)"
-#: export/ExportFFmpegDialogs.cpp:967
+#: export/ExportFFmpegDialogs.cpp:969
msgid "Prediction Order Method:"
msgstr "ÐеÑод пеÑедбаÑÐµÐ½Ð½Ñ Ð¿Ð¾ÑÑдкÑ:"
-#: export/ExportFFmpegDialogs.cpp:969
+#: export/ExportFFmpegDialogs.cpp:971
msgid ""
"Prediction Order Method\n"
"Estimate - fastest, lower compression\n"
@@ -6870,11 +7180,11 @@ msgstr ""
"ÐоÑÑк Ñ Ð¶ÑÑÐ½Ð°Ð»Ñ â найповÑлÑнÑÑий, найкÑаÑе ÑÑиÑканнÑ\n"
"Ðовний поÑÑк â Ñиповий"
-#: export/ExportFFmpegDialogs.cpp:971
+#: export/ExportFFmpegDialogs.cpp:973
msgid "Minimal partition order"
msgstr "ÐÑнÑмалÑний поÑÑдок подÑлÑ"
-#: export/ExportFFmpegDialogs.cpp:972
+#: export/ExportFFmpegDialogs.cpp:974
msgid ""
"Minimal partition order\n"
"Optional\n"
@@ -6888,11 +7198,11 @@ msgstr ""
"min â 0\n"
"max â 8"
-#: export/ExportFFmpegDialogs.cpp:974
+#: export/ExportFFmpegDialogs.cpp:976
msgid "Maximal partition order"
msgstr "ÐакÑималÑний поÑÑдок подÑлÑ"
-#: export/ExportFFmpegDialogs.cpp:975
+#: export/ExportFFmpegDialogs.cpp:977
msgid ""
"Maximal partition order\n"
"Optional\n"
@@ -6906,19 +7216,19 @@ msgstr ""
"min â 0\n"
"max â 8"
-#: export/ExportFFmpegDialogs.cpp:977
+#: export/ExportFFmpegDialogs.cpp:979
msgid "Use LPC"
msgstr "ÐикоÑиÑÑовÑваÑи LPC"
-#: export/ExportFFmpegDialogs.cpp:984
+#: export/ExportFFmpegDialogs.cpp:986
msgid "MPEG container options"
msgstr "ÐаÑамеÑÑи конÑейнеÑа MPEG"
-#: export/ExportFFmpegDialogs.cpp:988
+#: export/ExportFFmpegDialogs.cpp:990
msgid "Mux Rate:"
msgstr "ÐакÑималÑна ÑвидкÑÑÑÑ:"
-#: export/ExportFFmpegDialogs.cpp:989
+#: export/ExportFFmpegDialogs.cpp:991
msgid ""
"Maximum bit rate of the multiplexed stream\n"
"Optional\n"
@@ -6928,11 +7238,11 @@ msgstr ""
"ÐеобовâÑзкова\n"
"0 â Ñипова"
-#: export/ExportFFmpegDialogs.cpp:991
+#: export/ExportFFmpegDialogs.cpp:993
msgid "Packet Size:"
msgstr "РозмÑÑ Ð¿Ð°ÐºÐµÑа:"
-#: export/ExportFFmpegDialogs.cpp:992
+#: export/ExportFFmpegDialogs.cpp:994
msgid ""
"Packet size\n"
"Optional\n"
@@ -6942,97 +7252,97 @@ msgstr ""
"ÐеобовâÑзковий\n"
"0 â Ñиповий"
-#: export/ExportFFmpegDialogs.cpp:1207
+#: export/ExportFFmpegDialogs.cpp:1209
msgid "You can't delete a preset without name"
msgstr "Ðи не можеÑе вилÑÑаÑи Ñаблон без назви"
-#: export/ExportFFmpegDialogs.cpp:1211
+#: export/ExportFFmpegDialogs.cpp:1213
#, c-format
msgid "Delete preset '%s'?"
msgstr "ÐилÑÑиÑи Ñаблон «%s»?"
-#: export/ExportFFmpegDialogs.cpp:1230
+#: export/ExportFFmpegDialogs.cpp:1232
msgid "You can't save a preset without name"
msgstr "Ðи не можеÑе збеÑÑгаÑи Ñаблон без назви"
-#: export/ExportFFmpegDialogs.cpp:1270
+#: export/ExportFFmpegDialogs.cpp:1272
msgid "Select xml file with presets to import"
msgstr "ÐбеÑÑÑÑ Ñайл xml з Ñаблонами Ð´Ð»Ñ ÑмпоÑÑÑваннÑ"
-#: export/ExportFFmpegDialogs.cpp:1273 export/ExportFFmpegDialogs.cpp:1293
-#: prefs/KeyConfigPrefs.cpp:215
+#: export/ExportFFmpegDialogs.cpp:1275 export/ExportFFmpegDialogs.cpp:1295
+#: prefs/KeyConfigPrefs.cpp:228 prefs/KeyConfigPrefs.cpp:259
msgid "XML files (*.xml)|*.xml|All files (*.*)|*.*"
msgstr "XML Ñайли (*.xml)|*.xml|УÑÑ Ñайли (*.*)|*.*"
-#: export/ExportFFmpegDialogs.cpp:1290
+#: export/ExportFFmpegDialogs.cpp:1292
msgid "Select xml file to export presets into"
msgstr "ÐбеÑÑÑÑ Ñайл xml Ð´Ð»Ñ ÐµÐºÑпоÑÑÑÐ²Ð°Ð½Ð½Ñ Ð´Ð¾ нÑого ÑаблонÑв"
-#: export/ExportFFmpegDialogs.cpp:1361
+#: export/ExportFFmpegDialogs.cpp:1363
msgid "Failed to guess format"
msgstr "Ðе вдалоÑÑ Ð²Ð¸Ð·Ð½Ð°ÑиÑи ÑоÑмаÑ"
-#: export/ExportFFmpegDialogs.cpp:1403
+#: export/ExportFFmpegDialogs.cpp:1405
msgid "Failed to find the codec"
msgstr "Ðе вдалоÑÑ Ð·Ð½Ð°Ð¹Ñи кодек"
-#: export/ExportFFmpegDialogs.h:53
+#: export/ExportFFmpegDialogs.h:54
msgid "M4A (AAC) Files (FFmpeg)"
msgstr "Файли M4A (AAC) (FFmpeg)"
-#: export/ExportFFmpegDialogs.h:54
+#: export/ExportFFmpegDialogs.h:55
msgid "AC3 Files (FFmpeg)"
msgstr "Файли AC3 (FFmpeg)"
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
-msgstr "Файли AMR (вÑзÑкоÑмÑговÑ) (FFmpeg)"
-
#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
-msgstr "Файли AMR (ÑиÑокоÑмÑговÑ) (FFmpeg)"
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
+msgstr "Файли AMR (вÑзÑкоÑмÑговÑ) (FFmpeg, не пакÑÑÑÑÑÑ Ñ Ð´Ð¸ÑÑÑибÑÑиваÑ
)"
#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
+msgstr "Файли AMR (ÑиÑокоÑмÑговÑ) (FFmpeg, не пакÑÑÑÑÑÑ Ñ Ð´Ð¸ÑÑÑибÑÑиваÑ
)"
+
+#: export/ExportFFmpegDialogs.h:58
msgid "WMA (version 2) Files (FFmpeg)"
msgstr "Файли WMA (веÑÑÑÑ 2) (FFmpeg)"
-#: export/ExportFFmpegDialogs.h:58
+#: export/ExportFFmpegDialogs.h:59
msgid "Custom FFmpeg Export"
msgstr "ÐеÑиповий екÑпоÑÑ Ð´Ð¾ FFmpeg"
-#: export/ExportFFmpegDialogs.h:373
+#: export/ExportFFmpegDialogs.h:374
msgid "LTP"
msgstr "LTP"
-#: export/ExportFFmpegDialogs.h:373
+#: export/ExportFFmpegDialogs.h:374
msgid "Low Complexity"
msgstr "ÐизÑка ÑкладнÑÑÑÑ"
-#: export/ExportFFmpegDialogs.h:373
+#: export/ExportFFmpegDialogs.h:374
msgid "Main profile"
msgstr "ÐÑновний пÑоÑÑлÑ"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "2-level"
msgstr "2-ÑÑвневий"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "4-level"
msgstr "4-ÑÑвневий"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "8-level"
msgstr "8-ÑÑвневий"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "Estimate"
msgstr "ÐÑÑниÑи"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "Full search"
msgstr "Ðовний поÑÑк"
-#: export/ExportFFmpegDialogs.h:676
+#: export/ExportFFmpegDialogs.h:677
msgid "Log search"
msgstr "ÐоÑÑк за жÑÑналом"
@@ -7100,11 +7410,25 @@ msgstr "ÐÑÑова глибина:"
msgid "FLAC Files"
msgstr "Файли FLAC"
-#: export/ExportFLAC.cpp:310
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr "ÐнÑÑÑÑменÑÐ¾Ð²Ñ ÐµÐºÑпоÑÑÑ Ð´Ð¾ FLAC не вдалоÑÑ Ð²ÑдкÑиÑи %s"
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid ""
+"FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+"Ðе вдалоÑÑ ÑнÑÑÑалÑзÑваÑи ÑнÑÑÑÑÐ¼ÐµÐ½Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ FLAC\n"
+"СÑан: %d"
+
+#: export/ExportFLAC.cpp:324
msgid "Exporting the selected audio as FLAC"
-msgstr "ÐкÑпоÑÑ Ð²Ð¸Ð´Ñленого аÑдÑо Ñк FLAC"
+msgstr "ÐкÑпоÑÑ Ð²Ð¸Ð±Ñаного аÑдÑо Ñк FLAC"
-#: export/ExportFLAC.cpp:311
+#: export/ExportFLAC.cpp:325
msgid "Exporting the entire project as FLAC"
msgstr "ÐкÑпоÑÑ Ð²ÑÑого пÑоекÑÑ Ð´Ð¾ FLAC"
@@ -7122,18 +7446,19 @@ msgstr "Файли MP2"
#: export/ExportMP2.cpp:230
msgid "Cannot export MP2 with this sample rate and bit rate"
-msgstr "Ðеможливо екÑпоÑÑÑваÑи MP2 з ÑÑÑÑ ÑаÑÑоÑÐ¾Ñ Ð´Ð¸ÑкÑеÑизаÑÑÑ Ñа бÑÑÐ¾Ð²Ð¾Ñ ÑаÑÑоÑоÑ"
+msgstr ""
+"Ðеможливо екÑпоÑÑÑваÑи MP2 з ÑÑÑÑ ÑаÑÑоÑÐ¾Ñ Ð´Ð¸ÑкÑеÑизаÑÑÑ Ñа бÑÑÐ¾Ð²Ð¾Ñ ÑаÑÑоÑоÑ"
-#: export/ExportMP2.cpp:241 export/ExportMP3.cpp:1618 export/ExportOGG.cpp:184
+#: export/ExportMP2.cpp:241 export/ExportMP3.cpp:1619 export/ExportOGG.cpp:184
msgid "Unable to open target file for writing"
msgstr "Ðе вдаÑÑÑÑÑ Ð²ÑдкÑиÑи кÑнÑевий Ñайл Ð´Ð»Ñ Ð·Ð°Ð¿Ð¸ÑÑ"
-#: export/ExportMP2.cpp:272
+#: export/ExportMP2.cpp:273
#, c-format
msgid "Exporting selected audio at %d kbps"
-msgstr "ÐкÑпоÑÑ Ð²Ð¸Ð´Ñленого аÑдÑо на %d кб/Ñ"
+msgstr "ÐкÑпоÑÑ Ð²Ð¸Ð±Ñаного аÑдÑо на %d кб/Ñ"
-#: export/ExportMP2.cpp:273
+#: export/ExportMP2.cpp:274
#, c-format
msgid "Exporting entire file at %d kbps"
msgstr "ÐкÑпоÑÑ Ð²ÑÑого Ñайла на %d кб/Ñ"
@@ -7154,8 +7479,8 @@ msgstr "(ÐайÑÑиÑлÑÑе)"
msgid "Fast"
msgstr "Швидка"
-#: export/ExportMP3.cpp:246 export/ExportMP3.cpp:252 prefs/GUIPrefs.cpp:41
-#: prefs/GUIPrefs.cpp:49
+#: export/ExportMP3.cpp:246 export/ExportMP3.cpp:252 prefs/GUIPrefs.cpp:50
+#: prefs/TracksPrefs.cpp:46
msgid "Standard"
msgstr "СÑандаÑÑна"
@@ -7199,8 +7524,7 @@ msgstr "УÑеÑеднена"
msgid "Constant"
msgstr "СÑала"
-#: export/ExportMP3.cpp:373 prefs/QualityPrefs.cpp:42
-#: prefs/QualityPrefs.cpp:43
+#: export/ExportMP3.cpp:373 prefs/QualityPrefs.cpp:38
msgid "Quality"
msgstr "ЯкÑÑÑÑ"
@@ -7240,10 +7564,11 @@ msgid ""
"Audacity %d.%d.%d.\n"
"Please download the latest version of the LAME MP3 library."
msgstr ""
-"ÐÑло здÑйÑнено ÑпÑÐ¾Ð±Ñ Ð·âÑднаÑиÑÑ Ð· бÑблÑоÑÐµÐºÐ¾Ñ lame_enc.dll v%d.%d. Ð¦Ñ Ð²ÐµÑÑÑÑ Ð±ÑблÑоÑеки не Ñ ÑÑмÑÑÐ½Ð¾Ñ Ð· Audacity %d.%d.%d.\n"
+"ÐÑло здÑйÑнено ÑпÑÐ¾Ð±Ñ Ð·âÑднаÑиÑÑ Ð· бÑблÑоÑÐµÐºÐ¾Ñ lame_enc.dll v%d.%d. Ð¦Ñ "
+"веÑÑÑÑ Ð±ÑблÑоÑеки не Ñ ÑÑмÑÑÐ½Ð¾Ñ Ð· Audacity %d.%d.%d.\n"
"ÐÑÐ´Ñ Ð»Ð°Ñка, званÑажÑе найоÑÑаннÑÑÑ Ð²ÐµÑÑÑÑ Ð±ÑблÑоÑеки LAME MP3."
-#: export/ExportMP3.cpp:1327
+#: export/ExportMP3.cpp:1328
msgid ""
"Only lame_enc.dll|lame_enc.dll|Dynamically Linked Libraries (*.dll)|*.dll|"
"All Files (*.*)|*"
@@ -7251,7 +7576,7 @@ msgstr ""
"ÐиÑе lame_enc.dll|lame_enc.dll|ÐинамÑÑÐ½Ñ Ð±ÑблÑоÑеки (*.dll)|*.dll|УÑÑ Ñайли "
"(*.*)|*"
-#: export/ExportMP3.cpp:1345
+#: export/ExportMP3.cpp:1346
msgid ""
"Only libmp3lame.dylib|libmp3lame.dylib|Dynamic Libraries (*.dylib)|*.dylib|"
"All Files (*)|*"
@@ -7259,7 +7584,7 @@ msgstr ""
"ТÑлÑки libmp3lame.dylib|libmp3lame.dylib|ÐинамÑÑÐ½Ñ Ð±ÑблÑоÑеки (*.dylib)|*."
"dylib|ÐÑÑ Ñайли (*)|*"
-#: export/ExportMP3.cpp:1363
+#: export/ExportMP3.cpp:1364
msgid ""
"Only libmp3lame.so.0|libmp3lame.so.0|Primary Shared Object files (*.so)|*.so|"
"Extended Libraries (*.so*)|*.so*|All Files (*)|*"
@@ -7267,58 +7592,58 @@ msgstr ""
"ÐиÑе libmp3lame.so|libmp3lame.so|ÐеÑÐ²Ð¸Ð½Ð½Ñ ÑпÑлÑÐ½Ñ Ð±ÑблÑоÑеки (*.so)|*.so|"
"РозÑиÑÐµÐ½Ñ Ð±ÑблÑоÑеки (*.so*)|*.so*|УÑÑ Ñайли (*)|*"
-#: export/ExportMP3.cpp:1499
+#: export/ExportMP3.cpp:1500
msgid "MP3 Files"
msgstr "Файли MP3"
-#: export/ExportMP3.cpp:1523
+#: export/ExportMP3.cpp:1524
msgid "Could not open MP3 encoding library!"
msgstr "Ðе вдаÑÑÑÑÑ Ð²ÑдкÑиÑи бÑблÑоÑÐµÐºÑ Ð´Ð»Ñ ÐµÐºÑпоÑÑÑ Ñ MP3!"
-#: export/ExportMP3.cpp:1530
+#: export/ExportMP3.cpp:1531
msgid "Not a valid or supported MP3 encoding library!"
msgstr "ÐепÑавилÑна, або непÑдÑÑимÑвана бÑблÑоÑека ÑÑиÑÐ½ÐµÐ½Ð½Ñ MP3!"
-#: export/ExportMP3.cpp:1607
+#: export/ExportMP3.cpp:1608
msgid "Unable to initialize MP3 stream"
msgstr "Ðе вдалоÑÑ Ð·Ð°Ð¿Ð¾ÑаÑкÑваÑи поÑÑк MP3"
-#: export/ExportMP3.cpp:1650
+#: export/ExportMP3.cpp:1652
#, c-format
msgid "Exporting selected audio with %s preset"
-msgstr "ÐкÑпоÑÑ Ð²Ð¸Ð´Ñленого аÑдÑо за Ñаблоном %s"
+msgstr "ÐкÑпоÑÑ Ð²Ð¸Ð±Ñаного аÑдÑо за Ñаблоном %s"
-#: export/ExportMP3.cpp:1651
+#: export/ExportMP3.cpp:1653
#, c-format
msgid "Exporting entire file with %s preset"
msgstr "ÐкÑпоÑÑ ÑÑлого Ñайла за Ñаблоном %s"
-#: export/ExportMP3.cpp:1656
+#: export/ExportMP3.cpp:1658
#, c-format
msgid "Exporting selected audio with VBR quality %s"
-msgstr "ÐкÑпоÑÑ Ð²Ð¸Ð´Ñленого аÑдÑо з ÑкÑÑÑÑ VBR %s"
+msgstr "ÐкÑпоÑÑ Ð²Ð¸Ð±Ñаного аÑдÑо з ÑкÑÑÑÑ VBR %s"
-#: export/ExportMP3.cpp:1657
+#: export/ExportMP3.cpp:1659
#, c-format
msgid "Exporting entire file with VBR quality %s"
msgstr "ÐкÑпоÑÑ ÑÑлого Ñайла з ÑкÑÑÑÑ VBR %s"
-#: export/ExportMP3.cpp:1662
+#: export/ExportMP3.cpp:1664
#, c-format
msgid "Exporting selected audio at %d Kbps"
-msgstr "ÐкÑпоÑÑ Ð²Ð¸Ð´Ñленого аÑдÑо на ÑвидкоÑÑÑ %d кÐ/Ñ"
+msgstr "ÐкÑпоÑÑ Ð²Ð¸Ð±Ñаного аÑдÑо на ÑвидкоÑÑÑ %d кÐ/Ñ"
-#: export/ExportMP3.cpp:1663
+#: export/ExportMP3.cpp:1665
#, c-format
msgid "Exporting entire file at %d Kbps"
msgstr "ÐкÑпоÑÑ ÑÑлого Ñайла на ÑвидкоÑÑÑ %d кÐ/Ñ"
-#: export/ExportMP3.cpp:1697
+#: export/ExportMP3.cpp:1699
#, c-format
msgid "Error %d returned from MP3 encoder"
msgstr "ÐодÑÐ»Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ MP3 повеÑнÑв Ð¿Ð¾Ð¼Ð¸Ð»ÐºÑ %d"
-#: export/ExportMP3.cpp:1785
+#: export/ExportMP3.cpp:1790
#, c-format
msgid ""
"The project sample rate (%d) is not supported by the MP3\n"
@@ -7327,7 +7652,7 @@ msgstr ""
"ЧаÑÑоÑа диÑкÑеÑизаÑÑÑ Ð¿ÑоекÑÑ (%d) не пÑдÑÑимÑÑÑÑÑÑ ÑоÑмаÑом\n"
"ÑайлÑв MP3. "
-#: export/ExportMP3.cpp:1788
+#: export/ExportMP3.cpp:1793
#, c-format
msgid ""
"The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
@@ -7336,12 +7661,11 @@ msgstr ""
"ÐабÑÑ ÑаÑÑоÑи диÑкÑеÑизаÑÑÑ Ð¿ÑоекÑÑ (%d) Ñа ÑвидкоÑÑÑ (%d кб/Ñ)\n"
"не пÑдÑÑимÑÑÑÑÑÑ ÑоÑмаÑом ÑайлÑв MP3. "
-#: export/ExportMP3.cpp:1965
+#: export/ExportMP3.cpp:1970
msgid "MP3 export library not found"
msgstr "Ðе знайдено бÑблÑоÑÐµÐºÑ ÐµÐºÑпоÑÑÑ Ð´Ð¾ MP3"
#: export/ExportMultiple.cpp:93 export/ExportMultiple.cpp:424
-#: export/ExportMultiple.cpp:670 export/ExportMultiple.cpp:847
msgid "Export Multiple"
msgstr "ÐкÑпоÑÑ Ñ Ð´ÐµÐºÑлÑка ÑайлÑв"
@@ -7378,10 +7702,6 @@ msgstr "ÐаÑамеÑÑи..."
msgid "Export location:"
msgstr "ÐаÑалог Ð´Ð»Ñ ÐµÐºÑпоÑÑÑ:"
-#: export/ExportMultiple.cpp:242 prefs/DirectoriesPrefs.cpp:92
-msgid "Choose..."
-msgstr "ÐибÑаÑи..."
-
#: export/ExportMultiple.cpp:243
msgid "Create"
msgstr "СÑвоÑиÑи"
@@ -7406,10 +7726,6 @@ msgstr "Ðазва пеÑÑого Ñайла:"
msgid "First file name"
msgstr "Ðазва пеÑÑого Ñайла"
-#: export/ExportMultiple.cpp:285 export/ExportMultiple.cpp:287
-msgid "Tracks"
-msgstr "ÐоÑÑжки"
-
#: export/ExportMultiple.cpp:294
msgid "Name files:"
msgstr "Ðазви ÑайлÑв:"
@@ -7443,7 +7759,42 @@ msgstr "\"%s\" ÑÑпÑÑно ÑÑвоÑено."
msgid "Choose a location to save the exported files"
msgstr "ÐибеÑÑÑÑ ÐºÐ°Ñалог Ð´Ð»Ñ ÐµÐºÑпоÑÑÑÐ²Ð°Ð½Ð½Ñ ÑайлÑв"
-#: export/ExportMultiple.cpp:538
+#: export/ExportMultiple.cpp:524
+#, c-format
+msgid "Successfully exported the following %ld file(s)."
+msgstr "УÑпÑÑно екÑпоÑÑовано %ld Ñайл(Ñв) з наведеного нижÑе ÑпиÑкÑ."
+
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the following %ld file(s)."
+msgstr ""
+"ÐÑÑÐ»Ñ ÐµÐºÑпоÑÑÑ %ld Ñайла(Ñв) з наведеного нижÑе ÑпиÑÐºÑ ÑоÑÑ Ð¿ÑÑло не Ñак."
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
+msgstr ""
+"ÐкÑпоÑÑÑÐ²Ð°Ð½Ð½Ñ Ð±Ñло ÑкаÑовано пÑÑÐ»Ñ Ð·Ð°Ð²ÐµÑÑÐµÐ½Ð½Ñ ÐµÐºÑпоÑÑÑ %ld Ñайл(Ñв) з "
+"наведеними нижÑе назвами."
+
+#: export/ExportMultiple.cpp:527
+#, c-format
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr ""
+"ÐкÑпоÑÑÑÐ²Ð°Ð½Ð½Ñ Ð±Ñло зÑпинено пÑÑÐ»Ñ Ð·Ð°Ð²ÐµÑÑÐµÐ½Ð½Ñ ÐµÐºÑпоÑÑÑ %ld Ñайл(Ñв) з "
+"наведеними нижÑе назвами."
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+"ÐÑÑÐ»Ñ ÐµÐºÑпоÑÑÑ %ld Ñайла(Ñв) з наведеними нижÑе назвами ÑоÑÑ Ð¿ÑÑло не Ñак."
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr "ÐкÑпоÑÑ Ð´Ð¾ декÑлÑкоÑ
ÑайлÑв"
+
+#: export/ExportMultiple.cpp:570
#, c-format
msgid ""
"\"%s\" doesn't exist.\n"
@@ -7454,21 +7805,11 @@ msgstr ""
"\n"
"СÑвоÑиÑи?"
-#: export/ExportMultiple.cpp:640 export/ExportMultiple.cpp:785
+#: export/ExportMultiple.cpp:667 export/ExportMultiple.cpp:804
msgid "Edit metadata"
msgstr "ÐмÑниÑи меÑаданÑ"
-#: export/ExportMultiple.cpp:667 export/ExportMultiple.cpp:844
-#, c-format
-msgid "Successfully exported %d file(s)."
-msgstr "УÑпÑÑно екÑпоÑÑовано %d Ñайл(Ñв)."
-
-#: export/ExportMultiple.cpp:668 export/ExportMultiple.cpp:845
-#, c-format
-msgid "Something went wrong after exporting %d file(s)."
-msgstr "ÐÑÑÐ»Ñ ÐµÐºÑпоÑÑÑ %d Ñайла(Ñв) ÑоÑÑ Ð¿ÑÑло не Ñак."
-
-#: export/ExportMultiple.cpp:898
+#: export/ExportMultiple.cpp:923
#, c-format
msgid ""
"Label %s is not a legal file name. You cannot use any of: %s\n"
@@ -7489,11 +7830,11 @@ msgstr "ÐалаÑÑÑÐ²Ð°Ð½Ð½Ñ ÐµÐºÑпоÑÑÑ Ð´Ð¾ Ogg Vorbis"
msgid "Ogg Vorbis Files"
msgstr "Файли Ogg Vorbis"
-#: export/ExportOGG.cpp:255
+#: export/ExportOGG.cpp:256
msgid "Exporting the selected audio as Ogg Vorbis"
-msgstr "ÐидÑлене екÑпоÑÑÑÑÑÑÑÑ Ñ Ñайл Ogg Vorbis"
+msgstr "ÐибÑане екÑпоÑÑÑÑÑÑÑÑ Ñ Ñайл Ogg Vorbis"
-#: export/ExportOGG.cpp:256
+#: export/ExportOGG.cpp:257
msgid "Exporting the entire project as Ogg Vorbis"
msgstr "ÐеÑÑ Ð¿ÑÐ¾ÐµÐºÑ ÐµÐºÑпоÑÑÑÑÑÑÑÑ Ñ Ñайл Ogg Vorbis"
@@ -7509,7 +7850,7 @@ msgstr "ÐалаÑÑÑÐ²Ð°Ð½Ð½Ñ ÐµÐºÑпоÑÑÑ Ð±ÐµÐ· ÑÑиÑканнÑ"
msgid "Header:"
msgstr "Ðаголовок:"
-#: export/ExportPCM.cpp:199 import/ImportRaw.cpp:366
+#: export/ExportPCM.cpp:199 import/ImportRaw.cpp:376
msgid "Encoding:"
msgstr "ÐодÑваннÑ:"
@@ -7537,23 +7878,23 @@ msgstr "GSM 6.10 WAV (мобÑлÑний)"
msgid "Cannot export audio in this format."
msgstr "Ðе вдаÑÑÑÑÑ ÐµÐºÑпоÑÑÑваÑи Ð´Ð°Ð½Ñ Ñ ÑÑÐ¾Ð¼Ñ ÑоÑмаÑÑ."
-#: export/ExportPCM.cpp:518
+#: export/ExportPCM.cpp:526
#, c-format
msgid "Exporting the selected audio as %s"
-msgstr "ÐкÑпоÑÑÑÐ²Ð°Ð½Ð½Ñ Ð²Ð¸Ð´Ñленого аÑдÑо Ñк %s"
+msgstr "ÐкÑпоÑÑÑÐ²Ð°Ð½Ð½Ñ Ð²Ð¸Ð±Ñаного аÑдÑо Ñк %s"
-#: export/ExportPCM.cpp:520
+#: export/ExportPCM.cpp:528
#, c-format
msgid "Exporting the entire project as %s"
msgstr "ÐкÑпоÑÑÑÐ²Ð°Ð½Ð½Ñ Ð²ÑÑого пÑоекÑÑ Ñк %s"
#. i18n-hint: %s will be the error message from libsndfile
-#: export/ExportPCM.cpp:556
+#: export/ExportPCM.cpp:564
#, c-format
msgid "Error (file may not have been written): %s"
msgstr "Ðомилка (можливо, Ñайл не запиÑано): %s"
-#: export/ExportPCM.cpp:723
+#: export/ExportPCM.cpp:735
msgid "There are no options for this format.\n"
msgstr "ÐÐ»Ñ ÑÑого ÑоÑмаÑÑ Ð¿Ð°ÑамеÑÑи не доÑÑÑпнÑ.\n"
@@ -7561,38 +7902,40 @@ msgstr "ÐÐ»Ñ ÑÑого ÑоÑмаÑÑ Ð¿Ð°ÑамеÑÑи не доÑÑÑпн
#. * the list. So you should translate the quoted string
#. * 'Other uncompressed files' exactly the same as you do the same string
#. * when it comes up on it's own.
-#: export/ExportPCM.cpp:728
+#: export/ExportPCM.cpp:740
msgid ""
"If you need more control over the export format please use the 'Other "
"uncompressed files' format."
-msgstr "ЯкÑо Ñ Ð²Ð°Ñ Ð²Ð¸Ð½Ð¸ÐºÐ»Ð° поÑÑеба Ñ ÐºÐµÑÑÐ²Ð°Ð½Ð½Ñ Ñим ÑоÑмаÑом екÑпоÑÑÑ, бÑÐ´Ñ Ð»Ð°Ñка, ÑкоÑиÑÑайÑеÑÑ ÑоÑмаÑом «ÐнÑÑ Ð½ÐµÑÑиÑнÑÑÑ Ñайли»."
+msgstr ""
+"ЯкÑо Ñ Ð²Ð°Ñ Ð²Ð¸Ð½Ð¸ÐºÐ»Ð° поÑÑеба Ñ ÐºÐµÑÑÐ²Ð°Ð½Ð½Ñ Ñим ÑоÑмаÑом екÑпоÑÑÑ, бÑÐ´Ñ Ð»Ð°Ñка, "
+"ÑкоÑиÑÑайÑеÑÑ ÑоÑмаÑом «ÐнÑÑ Ð½ÐµÑÑиÑнÑÑÑ Ñайли»."
-#: export/ExportPCM.cpp:733
+#: export/ExportPCM.cpp:745
msgid "Your file will be exported as a 16-bit AIFF (Apple/SGI) file.\n"
msgstr "ÐÐ°Ñ Ñайл бÑде екÑпоÑÑовано Ñк 16-бÑÑовий AIFF (Apple/SGI).\n"
-#: export/ExportPCM.cpp:738
+#: export/ExportPCM.cpp:750
msgid "Your file will be exported as a 16-bit WAV (Microsoft) file.\n"
msgstr "ÐÐ°Ñ Ñайл бÑде екÑпоÑÑовано Ñк 16-бÑÑовий WAV (Microsoft).\n"
-#: export/ExportPCM.cpp:743
+#: export/ExportPCM.cpp:755
msgid "Your file will be exported as a GSM 6.10 WAV file.\n"
msgstr "ÐÐ°Ñ Ñайл бÑде екÑпоÑÑовано Ñк GSM 6.10 WAV.\n"
-#: import/Import.cpp:157 import/ImportMP3.cpp:47
+#: import/Import.cpp:162 import/ImportMP3.cpp:47
msgid "MP3 files"
msgstr "Файли MP3"
-#: import/Import.cpp:176
+#: import/Import.cpp:181
msgid "Select stream(s) to import"
msgstr "ÐбеÑÑÑÑ Ð¿Ð¾Ñоки Ð´Ð»Ñ ÑмпоÑÑÑ"
-#: import/Import.cpp:229
+#: import/Import.cpp:234
#, c-format
msgid "This version of Audacity was not compiled with %s support."
msgstr "Ð¦Ñ Ð²ÐµÑÑÑÑ Audacity бÑла зÑбÑана без пÑдÑÑимки %s."
-#: import/Import.cpp:242
+#: import/Import.cpp:247
#, c-format
msgid ""
"\"%s\" \n"
@@ -7602,11 +7945,11 @@ msgid ""
msgstr ""
"\"%s\" \n"
"Ñ Ð½Ð¾Ñним Ñайлом MIDI, а не Ñайлом аÑдÑо. \n"
-"Audacity не може вÑдкÑиваÑи Ñей Ñип ÑайлÑв Ð´Ð»Ñ Ð²ÑдÑвоÑеннÑ, але ви "
-"можеÑе ÑедагÑваÑи ÑÑ
, ÑкÑо вибеÑеÑе пÑÐ½ÐºÑ Ð¼ÐµÐ½Ñ Ð¤Ð°Ð¹Ð» > ÐмпоÑÑ > MIDI."
+"Audacity не може вÑдкÑиваÑи Ñей Ñип ÑайлÑв Ð´Ð»Ñ Ð²ÑдÑвоÑеннÑ, але ви можеÑе "
+"ÑедагÑваÑи ÑÑ
, ÑкÑо вибеÑеÑе пÑÐ½ÐºÑ Ð¼ÐµÐ½Ñ Ð¤Ð°Ð¹Ð» > ÐмпоÑÑ > MIDI."
#. i18n-hint: %s will be the filename
-#: import/Import.cpp:252
+#: import/Import.cpp:257
#, c-format
msgid ""
"\"%s\" is an audio CD track. \n"
@@ -7614,12 +7957,12 @@ msgid ""
"Extract (rip) the CD tracks to an audio format that \n"
"Audacity can import, such as WAV or AIFF."
msgstr ""
-"\"%s\" Ñ Ð´Ð¾ÑÑÐ¶ÐºÐ¾Ñ ÐÑдÑо-CD. \n"
-"Audacity не може вÑдкÑиÑи ÐÑдÑо-CD напÑÑмÑ. \n"
-"ÐкÑпоÑÑÑйÑе (виÑÑжÑе) доÑÑжки CD Ñ ÑмпоÑÑований \n"
+"\"%s\" Ñ Ð´Ð¾ÑÑÐ¶ÐºÐ¾Ñ Ð°ÑдÑо-ÐÐ. \n"
+"Audacity не може вÑдкÑиÑи аÑдÑо-ÐРнапÑÑмÑ. \n"
+"ÐкÑпоÑÑÑйÑе (виÑÑжÑе) доÑÑжки ÐÐ Ñ ÑмпоÑÑований \n"
"Audacity ÑоÑмаÑ, на зÑазок WAV або AIFF."
-#: import/Import.cpp:258
+#: import/Import.cpp:263
#, c-format
msgid ""
"\"%s\" is a playlist file. \n"
@@ -7634,7 +7977,7 @@ msgstr ""
"Ðи можеÑе вÑдкÑиÑи його Ñ ÑекÑÑÐ¾Ð²Ð¾Ð¼Ñ ÑедакÑоÑÑ Ñа заванÑажиÑи ÑпÑÐ°Ð²Ð¶Ð½Ñ "
"звÑÐºÐ¾Ð²Ñ Ñайли."
-#: import/Import.cpp:263
+#: import/Import.cpp:268
#, c-format
msgid ""
"\"%s\" is a Windows Media Audio file. \n"
@@ -7643,10 +7986,10 @@ msgid ""
msgstr ""
"\"%s\" Ñ Ñайлом Windows Media Audio. \n"
"Audacity не може вÑдкÑиваÑи Ñей Ñип ÑайлÑв ÑеÑез паÑенÑÐ½Ñ Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ. \n"
-"ÑлÑд пеÑеÑвоÑиÑи Ñей Ñайл на Ñайл пÑдÑÑимÑваного аÑдÑо-ÑоÑмаÑÑ, Ñакого Ñк "
+"ÑлÑд пеÑеÑвоÑиÑи Ñей Ñайл на Ñайл пÑдÑÑимÑваного аÑдÑоÑоÑмаÑÑ, Ñакого Ñк "
"WAV або AIFF."
-#: import/Import.cpp:268
+#: import/Import.cpp:273
#, c-format
msgid ""
"\"%s\" is an Advanced Audio Coding file. \n"
@@ -7655,10 +7998,10 @@ msgid ""
msgstr ""
"\"%s\" Ñ Ñайлом ÐдоÑконаленого ÐÑдÑо ÐодÑваннÑ. \n"
"Audacity не може вÑдкÑиваÑи Ñей Ñип ÑайлÑв. \n"
-"ÑлÑд пеÑеÑвоÑиÑи Ñей Ñайл на Ñайл пÑдÑÑимÑваного аÑдÑо-ÑоÑмаÑÑ Ð½Ð° зÑазок WAV "
+"ÑлÑд пеÑеÑвоÑиÑи Ñей Ñайл на Ñайл пÑдÑÑимÑваного аÑдÑоÑоÑмаÑÑ Ð½Ð° зÑазок WAV "
"або AIFF."
-#: import/Import.cpp:273
+#: import/Import.cpp:278
#, c-format
msgid ""
"\"%s\" is an encrypted audio file. \n"
@@ -7667,13 +8010,13 @@ msgid ""
"Try recording the file into Audacity, or burn it to audio CD then \n"
"extract the CD track to a supported audio format such as WAV or AIFF."
msgstr ""
-"\"%s\" Ñ ÑиÑÑованим аÑдÑо-Ñайлом. \n"
+"\"%s\" Ñ ÑиÑÑованим аÑдÑоÑайлом. \n"
"Ð¢Ð°ÐºÑ Ð·Ð°Ð·Ð²Ð¸Ñай пÑодаÑÑÑ Ñ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½Ð°Ñ
. \n"
"Audacity не може вÑдкÑиваÑи Ñей Ñип ÑайлÑв ÑеÑез ÑиÑÑÑваннÑ. \n"
"СпÑобÑйÑе запиÑаÑи Ñайл Ñ Audacity, або запиÑаÑи його на CD, а поÑÑм \n"
-"копÑÑваÑи доÑÑÐ¶ÐºÑ CD Ñ Ð¿ÑдÑÑимÑваний аÑдÑо-ÑоÑмаÑ, на зÑазок WAV або AIFF."
+"копÑÑваÑи доÑÑÐ¶ÐºÑ CD Ñ Ð¿ÑдÑÑимÑваний аÑдÑоÑоÑмаÑ, на зÑазок WAV або AIFF."
-#: import/Import.cpp:278
+#: import/Import.cpp:283
#, c-format
msgid ""
"\"%s\" is a RealPlayer media file. \n"
@@ -7682,10 +8025,10 @@ msgid ""
msgstr ""
"\"%s\" Ñ Ñайлом RealPlayer. \n"
"Audacity не може вÑдкÑиÑи Ñей закÑиÑий ÑоÑмаÑ. \n"
-"ÑлÑд пеÑеÑвоÑиÑи Ñей Ñайл Ñ Ñайл пÑдÑÑимÑваного аÑдÑо-ÑоÑмаÑÑ, Ñакого Ñк WAV "
+"ÑлÑд пеÑеÑвоÑиÑи Ñей Ñайл Ñ Ñайл пÑдÑÑимÑваного аÑдÑоÑоÑмаÑÑ, Ñакого Ñк WAV "
"або AIFF."
-#: import/Import.cpp:284
+#: import/Import.cpp:289
#, c-format
msgid ""
"\"%s\" is a notes-based file, not an audio file. \n"
@@ -7698,7 +8041,7 @@ msgstr ""
"СпÑобÑйÑе пеÑеÑвоÑиÑи його на Ñайл аÑдÑо, на зÑазок WAV або AIFF, а поÑÑм \n"
"ÑмпоÑÑÑваÑи, або запиÑаÑи за Ð´Ð¾Ð¿Ð¾Ð¼Ð¾Ð³Ð¾Ñ Audacity."
-#: import/Import.cpp:290
+#: import/Import.cpp:295
#, c-format
msgid ""
"\"%s\" is a Musepack audio file. \n"
@@ -7716,7 +8059,7 @@ msgstr ""
"пеÑеÑвоÑиÑи Ñей Ñайл на Ñайл ÑоÑмаÑÑ, \n"
"Ñо пÑдÑÑимÑÑÑÑÑÑ, на зÑазок WAV або AIFF."
-#: import/Import.cpp:296
+#: import/Import.cpp:301
#, c-format
msgid ""
"\"%s\" is a Wavpack audio file. \n"
@@ -7728,7 +8071,7 @@ msgstr ""
"Ðам ÑлÑд ÑпоÑаÑÐºÑ Ð¿ÐµÑеÑвоÑиÑи Ñей Ñайл на Ñайл ÑоÑмаÑÑ, Ñо пÑдÑÑимÑÑÑÑÑÑ, на "
"зÑазок WAV або AIFF."
-#: import/Import.cpp:302
+#: import/Import.cpp:307
#, c-format
msgid ""
"\"%s\" is a Dolby Digital audio file. \n"
@@ -7740,7 +8083,7 @@ msgstr ""
"Ðам ÑлÑд ÑпоÑаÑÐºÑ Ð¿ÐµÑеÑвоÑиÑи Ñей Ñайл на Ñайл ÑоÑмаÑÑ, Ñо пÑдÑÑимÑÑÑÑÑÑ, на "
"зÑазок WAV або AIFF."
-#: import/Import.cpp:308
+#: import/Import.cpp:313
#, c-format
msgid ""
"\"%s\" is an Ogg Speex audio file. \n"
@@ -7752,7 +8095,7 @@ msgstr ""
"Ðам ÑлÑд ÑпоÑаÑÐºÑ Ð¿ÐµÑеÑвоÑиÑи Ñей Ñайл на Ñайл ÑоÑмаÑÑ, Ñо пÑдÑÑимÑÑÑÑÑÑ, на "
"зÑазок WAV або AIFF."
-#: import/Import.cpp:314
+#: import/Import.cpp:319
#, c-format
msgid ""
"\"%s\" is a video file. \n"
@@ -7761,10 +8104,10 @@ msgid ""
msgstr ""
"\"%s\" Ñ Ñайлом вÑдео. \n"
"Audacity на даний Ð¼Ð¾Ð¼ÐµÐ½Ñ Ð½Ðµ може вÑдкÑиваÑи Ñей Ñип ÑайлÑв. \n"
-"Ðам ÑлÑд ÑпоÑаÑÐºÑ Ð²Ð¸Ð´Ð¾Ð±ÑÑи звÑÐºÐ¾Ð²Ñ Ð´Ð°Ð½Ñ Ð´Ð¾ Ñайла Ñ ÑоÑмаÑÑ, Ñо пÑдÑÑимÑÑÑÑÑÑ, на "
-"зÑазок WAV або AIFF."
+"Ðам ÑлÑд ÑпоÑаÑÐºÑ Ð²Ð¸Ð´Ð¾Ð±ÑÑи звÑÐºÐ¾Ð²Ñ Ð´Ð°Ð½Ñ Ð´Ð¾ Ñайла Ñ ÑоÑмаÑÑ, Ñо "
+"пÑдÑÑимÑÑÑÑÑÑ, на зÑазок WAV або AIFF."
-#: import/Import.cpp:319
+#: import/Import.cpp:324
#, c-format
msgid ""
"Audacity did not recognize the type of the file '%s'.\n"
@@ -7774,7 +8117,7 @@ msgstr ""
"ЯкÑо Ñей Ñайл не Ñ ÑÑиÑненим, ÑпÑобÑйÑе ÑмпоÑÑÑваÑи його Ñк Ñайл "
"необÑоблениÑ
даниÑ
."
-#: import/Import.cpp:324
+#: import/Import.cpp:329
#, c-format
msgid ""
"Audacity recognized the type of the file '%s',\n"
@@ -7787,15 +8130,22 @@ msgstr ""
msgid "FFmpeg-compatible files"
msgstr "СÑмÑÑÐ½Ñ Ð· FFmpeg Ñайли"
-#: import/ImportFFmpeg.cpp:431
+#: import/ImportFFmpeg.cpp:438
#, c-format
-msgid "Index[%02x] Codec[%S], Language[%S], Bitrate[%S], Channels[%d], Duration[%d]"
-msgstr "ÐндекÑ[%02x] Ðодек[%S], Ðова[%S], ÐÑÑова ÑвидкÑÑÑÑ[%S], Ð-ÑÑ ÐºÐ°Ð½Ð°Ð»Ñв[%d], ТÑивалÑÑÑÑ[%d]"
+msgid ""
+"Index[%02x] Codec[%S], Language[%S], Bitrate[%S], Channels[%d], Duration[%d]"
+msgstr ""
+"ÐндекÑ[%02x] Ðодек[%S], Ðова[%S], ÐÑÑова ÑвидкÑÑÑÑ[%S], Ð-ÑÑ ÐºÐ°Ð½Ð°Ð»Ñв[%d], "
+"ТÑивалÑÑÑÑ[%d]"
#: import/ImportFLAC.cpp:43
msgid "FLAC files"
msgstr "Файли FLAC"
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr "Файли, ÑÑмÑÑÐ½Ñ Ð· GStreamer"
+
#: import/ImportLOF.cpp:95
msgid "List of Files in basic text format"
msgstr "ÐеÑелÑк ÑайлÑв Ñ Ð·Ð²Ð¸ÑÐ°Ð¹Ð½Ð¾Ð¼Ñ ÑекÑÑÐ¾Ð²Ð¾Ð¼Ñ ÑоÑмаÑÑ"
@@ -7868,7 +8218,7 @@ msgstr "ÐнÑÑÑÑÑÐ½Ñ Ð»Ð¾Ð³ÑÑна помилка"
msgid "WAV, AIFF, and other uncompressed types"
msgstr "WAV, AIFF, Ñа ÑнÑÑ Ñипи без ÑÑиÑканнÑ"
-#: import/ImportPlugin.h:142 import/ImportRaw.cpp:203
+#: import/ImportPlugin.h:135 import/ImportRaw.cpp:210
#, c-format
msgid "Importing %s"
msgstr "ÐмпоÑÑÑÐ²Ð°Ð½Ð½Ñ %s"
@@ -7877,68 +8227,68 @@ msgstr "ÐмпоÑÑÑÐ²Ð°Ð½Ð½Ñ %s"
msgid "QuickTime files"
msgstr "Файли QuickTime"
-#: import/ImportRaw.cpp:205
+#: import/ImportRaw.cpp:212
msgid "Import Raw"
msgstr "ÐмпоÑÑÑваÑи Ñк Ñайл необÑоблениÑ
даниÑ
"
-#: import/ImportRaw.cpp:282
+#: import/ImportRaw.cpp:292
msgid "Import Raw Data"
msgstr "ÐмпоÑÑÑ raw-ÑайлÑ"
#. i18n-hint: Refers to byte-order. Don't translate "endianness" if you don't
#. know the correct technical word.
-#: import/ImportRaw.cpp:327
+#: import/ImportRaw.cpp:337
msgid "No endianness"
msgstr "Ðез ÑÑаÑ
ÑÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾ÑÑÐ´ÐºÑ Ð±Ð°Ð¹ÑÑв"
#. i18n-hint: Refers to byte-order. Don't translate this if you don't
#. know the correct technical word.
-#: import/ImportRaw.cpp:330
+#: import/ImportRaw.cpp:340
msgid "Little-endian"
msgstr "Little-endian"
#. i18n-hint: Refers to byte-order. Don't translate this if you don't
#. know the correct technical word.
-#: import/ImportRaw.cpp:333
+#: import/ImportRaw.cpp:343
msgid "Big-endian"
msgstr "Big-endian"
#. i18n-hint: Refers to byte-order. Don't translate "endianness" if you don't
#. know the correct technical word.
-#: import/ImportRaw.cpp:336
+#: import/ImportRaw.cpp:346
msgid "Default endianness"
msgstr "Типовий поÑÑдок байÑÑв"
-#: import/ImportRaw.cpp:355
+#: import/ImportRaw.cpp:365
msgid "1 Channel (Mono)"
msgstr "1 канал (моно)"
-#: import/ImportRaw.cpp:356
+#: import/ImportRaw.cpp:366
msgid "2 Channels (Stereo)"
msgstr "2 канали (ÑÑеÑео)"
-#: import/ImportRaw.cpp:358
+#: import/ImportRaw.cpp:368
#, c-format
msgid "%d Channels"
msgstr "%d каналÑв"
-#: import/ImportRaw.cpp:369
+#: import/ImportRaw.cpp:379
msgid "Byte order:"
msgstr "ÐоÑÑдок байÑÑв:"
-#: import/ImportRaw.cpp:372
+#: import/ImportRaw.cpp:382
msgid "Channels:"
msgstr "Ðанали:"
-#: import/ImportRaw.cpp:382
+#: import/ImportRaw.cpp:392
msgid "Start offset:"
msgstr "ÐоÑаÑковий зÑÑв:"
-#: import/ImportRaw.cpp:388
+#: import/ImportRaw.cpp:398
msgid "Amount to import:"
msgstr "ÐелиÑина ÑÐºÑ ÑмпоÑÑÑваÑи:"
-#: import/ImportRaw.cpp:394
+#: import/ImportRaw.cpp:404
msgid "Sample rate:"
msgstr "ЧаÑÑоÑа диÑкÑеÑизаÑÑÑ:"
@@ -7955,199 +8305,122 @@ msgstr "ÐекодÑÐ²Ð°Ð½Ð½Ñ ÑоÑми Ñ
вилÑ"
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr "%s %2.0f%% завеÑÑено. ÐаÑиÑнÑÑÑ, Ñоб змÑниÑи ÑокÑÑ Ð·Ð°Ð´Ð°ÑÑ."
-#: prefs/AudioIOPrefs.cpp:41 prefs/AudioIOPrefs.cpp:42
-#: prefs/MidiIOPrefs.cpp:44 prefs/MidiIOPrefs.cpp:45
-msgid "Audio I/O"
-msgstr "ÐвÑд/вивÑд звÑкÑ"
+#: prefs/BatchPrefs.cpp:53
+msgid "Batch"
+msgstr "ÐакеÑ"
-#: prefs/AudioIOPrefs.cpp:103 prefs/MidiIOPrefs.cpp:99
-msgid "1 (Mono)"
-msgstr "1 (моно)"
+#: prefs/BatchPrefs.cpp:75 prefs/GUIPrefs.cpp:134 prefs/TracksPrefs.cpp:99
+msgid "Behaviors"
+msgstr "ÐоведÑнка"
-#: prefs/AudioIOPrefs.cpp:104 prefs/MidiIOPrefs.cpp:100
-msgid "2 (Stereo)"
-msgstr "2 (ÑÑеÑео)"
+#: prefs/BatchPrefs.cpp:78
+msgid "&Don't apply effects in batch mode"
+msgstr "&Ðе заÑÑоÑовÑваÑи еÑекÑи Ñ Ð¿Ð°ÐºÐµÑÐ½Ð¾Ð¼Ñ ÑежимÑ"
-#: prefs/AudioIOPrefs.cpp:118 prefs/MidiIOPrefs.cpp:114
-msgid "Playback"
-msgstr "ÐÑдÑвоÑеннÑ"
+#: prefs/BatchPrefs.cpp:81 prefs/GUIPrefs.cpp:147
+msgid "Cl&eanSpeech Mode (Customized GUI)"
+msgstr "Режим Cl&eanSpeech (ÐмÑнений GUI)"
-#: prefs/AudioIOPrefs.cpp:122 prefs/AudioIOPrefs.cpp:140
-#: prefs/MidiIOPrefs.cpp:118 prefs/MidiIOPrefs.cpp:136
-#: toolbars/DeviceToolBar.cpp:57
-msgid "Device"
-msgstr "ÐÑиÑÑÑÑй"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
+msgstr "ÐÑиÑÑÑоÑ"
-#: prefs/AudioIOPrefs.cpp:125 prefs/MidiIOPrefs.cpp:121
+#: prefs/DevicePrefs.cpp:108 prefs/GUIPrefs.cpp:32
+msgid "Interface"
+msgstr "ÐнÑеÑÑейÑ"
+
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
+msgstr "ÐÑзол"
+
+#: prefs/DevicePrefs.cpp:120 prefs/MidiIOPrefs.cpp:121
msgid "Using:"
msgstr "ÐикоÑиÑÑовÑÑÑÑÑÑ:"
-#: prefs/AudioIOPrefs.cpp:126 prefs/MidiIOPrefs.cpp:122
-msgid "Portaudio v"
-msgstr "Portaudio v"
+#: prefs/DevicePrefs.cpp:128 prefs/MidiIOPrefs.cpp:114
+#: prefs/PlaybackPrefs.cpp:30
+msgid "Playback"
+msgstr "ÐÑдÑвоÑеннÑ"
-#: prefs/AudioIOPrefs.cpp:136 prefs/MidiIOPrefs.cpp:132
+#: prefs/DevicePrefs.cpp:141 prefs/MidiIOPrefs.cpp:128
+#: prefs/RecordingPrefs.cpp:33
msgid "Recording"
msgstr "ÐапиÑ"
-#: prefs/AudioIOPrefs.cpp:142 prefs/MidiIOPrefs.cpp:138
+#: prefs/DevicePrefs.cpp:151 prefs/MidiIOPrefs.cpp:134
msgid "Channels"
msgstr "Ðанали"
-#: prefs/AudioIOPrefs.cpp:148 prefs/MidiIOPrefs.cpp:144
-msgid "Playthrough"
-msgstr "ÐаÑкÑÑзний канал"
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr "ÐеÑекÑиÑÑÑ: ÐÑд&ÑвоÑÑваÑи ÑнÑÑ Ð´Ð¾ÑÑжки пÑи запиÑÑ Ð½Ð¾Ð²Ð¾Ñ"
-
-#: prefs/AudioIOPrefs.cpp:153
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr "&ÐпаÑаÑне пÑогÑаваннÑ: ÐÑдÑвоÑÑваÑи Ð½Ð¾Ð²Ñ Ð´Ð¾ÑÑжкÑ, пÑогÑаÑÑи ÑÑ"
-
-#: prefs/AudioIOPrefs.cpp:155
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr "&ÐÑогÑамне пÑогÑаваннÑ: ÐÑдÑвоÑÑваÑи Ð½Ð¾Ð²Ñ Ð´Ð¾ÑÑжкÑ, запиÑÑÑÑи ÑÑ"
-
-#: prefs/AudioIOPrefs.cpp:158
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr "&ÐÑогÑамне пÑогÑаваннÑ: ÐÑдÑвоÑÑваÑи Ð½Ð¾Ð²Ñ Ð´Ð¾ÑÑжкÑ, запиÑÑÑÑи ÑÑ"
-
-#: prefs/AudioIOPrefs.cpp:161
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr "(знÑмÑÑÑ Ð¿Ð¾Ð·Ð½Ð°ÑÐºÑ Ð´Ð»Ñ Ð·Ð°Ð¿Ð¸ÑÑ Â«Ð·Ð¼ÑÑаного ÑÑеÑео»)"
-
-#: prefs/AudioIOPrefs.cpp:169 prefs/MidiIOPrefs.cpp:193
-msgid "Effects Preview"
-msgstr "ÐÑоÑлÑÑ
овÑÐ²Ð°Ð½Ð½Ñ ÐµÑекÑÑ"
-
-#: prefs/AudioIOPrefs.cpp:172
-msgid "Length of preview:"
-msgstr "ТÑивалÑÑÑÑ Ð¿ÑоÑлÑÑ
овÑваннÑ:"
-
-#: prefs/AudioIOPrefs.cpp:177 prefs/MidiIOPrefs.cpp:157
-msgid "Cut Preview"
-msgstr "ÐÑоÑлÑÑ
овÑÐ²Ð°Ð½Ð½Ñ ÑезÑлÑÑаÑÑ Ð²Ð¸ÑÑзаннÑ"
-
-#: prefs/AudioIOPrefs.cpp:180
-msgid "Preview before cut region:"
-msgstr "ÐÑоÑлÑÑ
овÑÐ²Ð°Ð½Ð½Ñ Ð¿ÐµÑед виÑÑзаннÑм облаÑÑÑ:"
-
-#: prefs/AudioIOPrefs.cpp:182
-msgid "Preview after cut region:"
-msgstr "ÐÑоÑлÑÑ
овÑÐ²Ð°Ð½Ð½Ñ Ð¿ÑÑÐ»Ñ Ð²Ð¸ÑÑÐ·Ð°Ð½Ð½Ñ Ð¾Ð±Ð»Ð°ÑÑÑ:"
-
-#: prefs/AudioIOPrefs.cpp:190 prefs/MidiIOPrefs.cpp:167
-msgid "Latency"
-msgstr "ÐаÑÑимка"
-
-#: prefs/AudioIOPrefs.cpp:196
-msgid ""
-"Audio to buffer:\n"
-"(higher = more latency)"
-msgstr ""
-"ÐÑдÑо до бÑÑеÑа:\n"
-"(виÑе знаÑÐµÐ½Ð½Ñ = виÑа лаÑенÑнÑÑÑÑ)"
-
-#: prefs/AudioIOPrefs.cpp:199
-msgid ""
-"Latency correction:\n"
-"(negative = backwards)"
-msgstr ""
-"ÐоÑигÑÐ²Ð°Ð½Ð½Ñ Ð½Ð° лаÑенÑнÑÑÑÑ:\n"
-"(вÑд'Ñмне = назад)"
-
-#: prefs/AudioIOPrefs.cpp:204
-msgid "Seek Time when playing"
-msgstr "Ð§Ð°Ñ Ð¿Ð¾Ð·Ð¸ÑÑÑÐ²Ð°Ð½Ð½Ñ Ð¿Ñд ÑÐ°Ñ Ð²ÑдÑвоÑеннÑ"
-
-#: prefs/AudioIOPrefs.cpp:207 prefs/MidiIOPrefs.cpp:186
-msgid "Short period:"
-msgstr "ÐоÑоÑкий пÑомÑжок:"
-
-#: prefs/AudioIOPrefs.cpp:209 prefs/MidiIOPrefs.cpp:188
-msgid "Long period:"
-msgstr "Ðовгий пÑомÑжок:"
-
-#: prefs/BatchPrefs.cpp:55 prefs/BatchPrefs.cpp:56
-msgid "Batch"
-msgstr "ÐакеÑ"
-
-#: prefs/BatchPrefs.cpp:77 prefs/GUIPrefs.cpp:92
-msgid "Behaviors"
-msgstr "ÐоведÑнка"
-
-#: prefs/BatchPrefs.cpp:80
-msgid "&Don't apply effects in batch mode"
-msgstr "&Ðе заÑÑоÑовÑваÑи еÑекÑи Ñ Ð¿Ð°ÐºÐµÑÐ½Ð¾Ð¼Ñ ÑежимÑ"
+#: prefs/DevicePrefs.cpp:241 prefs/MidiIOPrefs.cpp:99
+msgid "1 (Mono)"
+msgstr "1 (моно)"
-#: prefs/BatchPrefs.cpp:83 prefs/GUIPrefs.cpp:132
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr "Режим Cl&eanSpeech (ÐмÑнений GUI)"
+#: prefs/DevicePrefs.cpp:244 prefs/MidiIOPrefs.cpp:100
+msgid "2 (Stereo)"
+msgstr "2 (ÑÑеÑео)"
-#: prefs/DirectoriesPrefs.cpp:55 prefs/DirectoriesPrefs.cpp:56
-#: prefs/PrefsDialog.cpp:267
+#: prefs/DirectoriesPrefs.cpp:52 prefs/PrefsDialog.cpp:193
msgid "Directories"
msgstr "ÐаÑалоги"
-#: prefs/DirectoriesPrefs.cpp:87
+#: prefs/DirectoriesPrefs.cpp:82
msgid "Temporary files directory"
msgstr "Тека Ð´Ð»Ñ ÑимÑаÑовиÑ
ÑайлÑв"
-#: prefs/DirectoriesPrefs.cpp:91
+#: prefs/DirectoriesPrefs.cpp:89
msgid "Location:"
msgstr "РозÑаÑÑваннÑ:"
-#: prefs/DirectoriesPrefs.cpp:93
+#: prefs/DirectoriesPrefs.cpp:96
msgid "Free Space:"
msgstr "ÐÑлÑного мÑÑÑÑ:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr "ÐвÑозбеÑеженнÑ"
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr "ÐвÑомаÑиÑно збеÑÑгаÑи копÑÑ Ð¿ÑоекÑÑ Ñ Ð¾ÐºÑемÑй ÑеÑÑ"
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
-msgstr "ÐнÑеÑвал авÑозбеÑеженнÑ:"
+#: prefs/DirectoriesPrefs.cpp:103
+msgid "Audio cache"
+msgstr "ÐÐµÑ Ð°ÑдÑо"
#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
-msgstr "Ñ
вилин"
+msgid "Play and/or record using RAM (useful for slow drives)"
+msgstr ""
+"ÐÑдÑвоÑÑваÑи Ñ/або запиÑÑваÑи звÑк за Ð´Ð¾Ð¿Ð¾Ð¼Ð¾Ð³Ð¾Ñ RAM (коÑиÑно за викоÑиÑÑÐ°Ð½Ð½Ñ "
+"повÑлÑниÑ
диÑкÑв)"
-#: prefs/DirectoriesPrefs.cpp:110
-msgid "Audio cache"
-msgstr "ÐÐµÑ Ð°ÑдÑо"
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
+msgstr "ÐÑнÑмÑм вÑлÑÐ½Ð¾Ñ Ð¿Ð°Ð¼âÑÑÑ (ÐÐ):"
-#: prefs/DirectoriesPrefs.cpp:112
+#: prefs/DirectoriesPrefs.cpp:118
msgid ""
-"Play and/or record using RAM (useful for slow drives, but could crash with "
-"long files or recordings)"
-msgstr "ÐÑдÑвоÑÑваÑи Ñ/або запиÑÑваÑи звÑк за Ð´Ð¾Ð¿Ð¾Ð¼Ð¾Ð³Ð¾Ñ RAM (коÑиÑно за викоÑиÑÑÐ°Ð½Ð½Ñ Ð¿Ð¾Ð²ÑлÑниÑ
диÑкÑв, але може пÑизвеÑÑи до аваÑÑйного завеÑÑÐµÐ½Ð½Ñ ÑобоÑи, ÑкÑо Ð·Ð°Ð¿Ð¸Ñ Ð±Ñде задовгим)"
+"If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
+msgstr ""
+"ЯкÑо Ñ ÑиÑÑÐµÐ¼Ñ Ð·Ð°Ð»Ð¸ÑиÑÑÑÑ Ð¼ÐµÐ½Ñий за вказаний обâÑм вÑлÑÐ½Ð¾Ñ Ð¿Ð°Ð¼âÑÑÑ, звÑÐºÐ¾Ð²Ñ "
+"Ð´Ð°Ð½Ñ Ð½Ðµ бÑдÑÑÑ\n"
+"кеÑÑваÑиÑÑ Ñ Ð¿Ð°Ð¼âÑÑÑ Ñ Ð·Ð°Ð¿Ð¸ÑÑваÑимÑÑÑÑÑ Ð½Ð° диÑк."
-#: prefs/DirectoriesPrefs.cpp:121
+#: prefs/DirectoriesPrefs.cpp:126
msgid "Choose a location to place the temporary directory"
msgstr "ÐибеÑÑÑÑ ÑозÑаÑÑÐ²Ð°Ð½Ð½Ñ ÐºÐ°ÑÐ°Ð»Ð¾Ð³Ñ ÑимÑаÑовиÑ
ÑайлÑв"
-#: prefs/DirectoriesPrefs.cpp:166
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr "недоÑÑÑпне â Ð½Ð°Ð²ÐµÐ´ÐµÐ½Ð¾Ñ Ð²Ð¸Ñе адÑеÑи не ÑÑнÑÑ"
+
+#: prefs/DirectoriesPrefs.cpp:173
#, c-format
msgid "Directory %s does not exist. Create it?"
msgstr "ÐаÑалог %s не ÑÑнÑÑ. СÑвоÑиÑи його?"
-#: prefs/DirectoriesPrefs.cpp:168
+#: prefs/DirectoriesPrefs.cpp:175
msgid "New Temporary Directory"
msgstr "Ðовий каÑалог ÑимÑаÑовий каÑалог"
-#: prefs/DirectoriesPrefs.cpp:187
+#: prefs/DirectoriesPrefs.cpp:193
#, c-format
msgid "Directory %s is not writable"
msgstr "ÐÐµÐ¼Ð°Ñ Ð¿Ñав на Ð·Ð°Ð¿Ð¸Ñ Ñ ÐºÐ°Ñалог %s"
-#: prefs/DirectoriesPrefs.cpp:199
+#: prefs/DirectoriesPrefs.cpp:207
msgid ""
"Changes to temporary directory will not take effect until Audacity is "
"restarted"
@@ -8155,277 +8428,215 @@ msgstr ""
"ÐмÑни каÑÐ°Ð»Ð¾Ð³Ñ Ð´Ð»Ñ Ð·Ð±ÐµÑÑÐ³Ð°Ð½Ð½Ñ ÑимÑаÑовиÑ
ÑайлÑв не набеÑÑÑÑ Ñили, доки "
"пÑогÑÐ°Ð¼Ñ Audacity не бÑде пеÑезаванÑажено."
-#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
-msgid "Import / Export"
-msgstr "ÐмпоÑÑ / ÐкÑпоÑÑ"
-
-#: prefs/FileFormatPrefs.cpp:84
-msgid "MP3 Export Library"
-msgstr "ÐÑблÑоÑека екÑпоÑÑÑ MP3"
-
-#: prefs/FileFormatPrefs.cpp:87
-msgid "MP3 Library Version:"
-msgstr "ÐеÑÑÑÑ Ð±ÑблÑоÑеки MP3:"
-
-#: prefs/FileFormatPrefs.cpp:93
-msgid "MP3 Library:"
-msgstr "ÐÑблÑоÑека MP3:"
-
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
-msgstr "Ð&казаÑи..."
-
-#: prefs/FileFormatPrefs.cpp:98
-msgid "LAME MP3 Library:"
-msgstr "ÐÑблÑоÑека LAME MP3:"
-
-#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
-msgid "&Download"
-msgstr "&ÐаванÑажиÑи"
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
-msgstr "ÐÑблÑоÑека ÑмпоÑÑÑ/екÑпоÑÑÑ FFmpeg"
-
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
-msgstr "ÐеÑÑÑÑ Ð±ÑблÑоÑеки FFmpeg:"
-
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
-msgstr "ÐÑблÑоÑека FFmpeg:"
-
-#: prefs/FileFormatPrefs.cpp:136
-msgid ""
-"Note: Export quality options can be chosen by clicking the Options button in "
-"the Export dialog.\n"
-msgstr "ÐаÑваженнÑ: паÑамеÑÑи ÑкоÑÑÑ ÐµÐºÑпоÑÑÑ Ð¼Ð¾Ð¶Ð½Ð° обÑаÑи пÑÑÐ»Ñ Ð½Ð°ÑиÑÐºÐ°Ð½Ð½Ñ ÐºÐ½Ð¾Ð¿ÐºÐ¸ «ÐаÑамеÑÑи» Ñ Ð´ÑÐ°Ð»Ð¾Ð·Ñ ÐµÐºÑпоÑÑÑ.\n"
-
-#: prefs/FileFormatPrefs.cpp:137
-msgid "When importing audio files"
-msgstr "ÐÑд ÑÐ°Ñ ÑмпоÑÑÑ Ð°ÑдÑо ÑайлÑв"
-
-#: prefs/FileFormatPrefs.cpp:140
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
-msgstr "&ÐÑобиÑи копÑÑ Ð½ÐµÑÑиÑнÑÑиÑ
ÑайлÑв аÑдÑо пеÑÑ Ð½Ñж поÑаÑи ÑÑ
змÑÐ½Ñ (безпеÑнÑÑе)"
-
-#: prefs/FileFormatPrefs.cpp:141
-msgid "&Read uncompressed audio files directly from the original (faster)"
-msgstr "&ЧиÑаÑи неÑÑиÑнÑÑÑ Ñайли аÑдÑо напÑÑÐ¼Ñ Ð· оÑигÑÐ½Ð°Ð»Ñ (ÑвидÑе)"
-
-#: prefs/FileFormatPrefs.cpp:143
-msgid "&Normalize all tracks in project"
-msgstr "&ÐоÑмалÑзÑваÑи вÑÑ Ð´Ð¾ÑÑжки пÑоекÑÑ"
+#: prefs/GUIPrefs.cpp:51
+msgid "In Browser"
+msgstr "У пеÑеглÑдаÑÑ"
-#: prefs/FileFormatPrefs.cpp:148
-msgid "When saving a project that depends on other audio files"
-msgstr "ÐбеÑÐµÐ¶ÐµÐ½Ð½Ñ Ð¿ÑоекÑÑ, Ñо залежиÑÑ Ð²Ñд ÑнÑиÑ
аÑдÑо-ÑайлÑв"
+#: prefs/GUIPrefs.cpp:52
+msgid "From Internet"
+msgstr "Ð ÐнÑеÑнеÑÑ"
-#: prefs/FileFormatPrefs.cpp:151
-msgid "Always © all audio into project (safest)"
-msgstr "Ðавжди &копÑÑваÑи вÑе аÑдÑо до пÑоекÑÑ (найбезпеÑнÑÑе)"
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
+msgstr "36"
-#: prefs/FileFormatPrefs.cpp:152
-msgid "&Do not copy any audio"
-msgstr "&Ðе копÑÑваÑи жодного аÑдÑо"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
+msgstr "48"
-#: prefs/FileFormatPrefs.cpp:153
-msgid "&Ask user"
-msgstr "&ÐиÑаÑи коÑиÑÑÑваÑа"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
+msgstr "60"
-#: prefs/FileFormatPrefs.cpp:157
-msgid "When exporting tracks to an audio file"
-msgstr "Ðоли екÑпоÑÑÑÑÑÑÑÑ Ð´Ð¾ÑÑжки до аÑдÑо-Ñайла"
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
+msgstr "96"
-#: prefs/FileFormatPrefs.cpp:160
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
-msgstr "Ðав&жди мÑкÑÑваÑи вÑÑ Ð´Ð¾ÑÑжки до ÑÑеÑео або моно каналÑв."
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
+msgstr "120"
-#: prefs/FileFormatPrefs.cpp:161
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
-msgstr ""
-"&ÐикоÑиÑÑовÑваÑи оÑобливе мÑкÑÑÐ²Ð°Ð½Ð½Ñ (напÑиклад Ð´Ð»Ñ ÐµÐºÑпоÑÑÑ 5.1-каналÑного "
-"Ñайла)"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
+msgstr "145"
-#: prefs/FileFormatPrefs.cpp:163
-msgid "S&how Metadata Editor prior to export step"
-msgstr "Ðо&казÑваÑи ÑедакÑÐ¾Ñ Ð¼ÐµÑаданиÑ
пеÑед кÑоком екÑпоÑÑÑ"
+#: prefs/GUIPrefs.cpp:61
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 дР(малий дÑапазон Ð´Ð»Ñ ÑедагÑÐ²Ð°Ð½Ð½Ñ ÑÐ¸Ð³Ð½Ð°Ð»Ñ Ð· виÑÐ¾ÐºÐ¾Ñ Ð°Ð¼Ð¿Ð»ÑÑÑдоÑ)"
-#: prefs/GUIPrefs.cpp:34 prefs/GUIPrefs.cpp:35
-msgid "Interface"
-msgstr "ÐнÑеÑÑейÑ"
+#: prefs/GUIPrefs.cpp:62
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 дР(дÑапазон ÐÐРпÑи 8 бÑÑаÑ
)"
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
-msgstr "У пеÑеглÑдаÑÑ"
+#: prefs/GUIPrefs.cpp:63
+msgid "-60 dB (PCM range of 10 bit samples)"
+msgstr "-60 дР(дÑапазон ÐÐРпÑи 10 бÑÑаÑ
)"
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
-msgstr "Ð ÐнÑеÑнеÑÑ"
+#: prefs/GUIPrefs.cpp:64
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 дР(дÑапазон ÐÐРпÑи 16 бÑÑаÑ
)"
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
-msgstr "ÐÑоÑÑий"
+#: prefs/GUIPrefs.cpp:65
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 дР(поÑÑг ÑÑÑливоÑÑÑ Ð²ÑÑ
а лÑдини)"
-#: prefs/GUIPrefs.cpp:94
-msgid "&Update display while playing"
-msgstr "&ÐновлÑваÑи вÑдобÑÐ°Ð¶ÐµÐ½Ð½Ñ Ð¿Ñд ÑÐ°Ñ Ð²ÑдÑвоÑеннÑ"
+#: prefs/GUIPrefs.cpp:66
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 дР(дÑапазон ÐÐРпÑи 24 бÑÑаÑ
)"
-#: prefs/GUIPrefs.cpp:96
-msgid "Cl&osing last window quits Audacity"
-msgstr "Ðа&кÑиÑÑÑ Ð¾ÑÑаннÑого вÑкна завеÑÑÑÑ Audacity"
+#: prefs/GUIPrefs.cpp:96 prefs/SpectrumPrefs.cpp:129 prefs/TracksPrefs.cpp:75
+msgid "Display"
+msgstr "Ðоказ"
#: prefs/GUIPrefs.cpp:98
-msgid "Enable &dragging of left and right selection edges"
-msgstr "ÐозволиÑи &пеÑеÑÑгÑÐ²Ð°Ð½Ð½Ñ Ð»ÑÐ²Ð¾Ñ Ñ Ð¿ÑÐ°Ð²Ð¾Ñ Ð³ÑаниÑÑ Ð²Ð¸Ð±Ð¾ÑÑ"
-
-#: prefs/GUIPrefs.cpp:100
msgid "Er&gonomic order of audio I/O buttons"
msgstr "&ÐÑгономÑÑний поÑÑдок кнопок аÑдÑо введеннÑ/виведеннÑ"
-#: prefs/GUIPrefs.cpp:102
-msgid "Automatically &fit tracks vertically zoomed"
-msgstr "ÐвÑомаÑиÑно &ÑобиÑи доÑÑжки веÑÑикалÑно маÑÑÑабованими"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
+msgstr "Ðока&зÑваÑи повÑÐ´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð· пÑивÑÑаннÑм пÑд ÑÐ°Ñ Ð·Ð°Ð¿ÑÑкÑ"
-#: prefs/GUIPrefs.cpp:104
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
-msgstr "«ÐеÑемÑÑÑиÑи ÑокÑÑ Ð´Ð¾ÑÑжки» &ÑиклÑÑно повÑоÑÑÑÑÑÑÑ Ð¼Ñж доÑÑжками"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
+msgstr "ÐÑапазон ÑндикаÑоÑа/ÑоÑми Ñ
Ð²Ð¸Ð»Ñ Ñ Ð´Ð:"
-#: prefs/GUIPrefs.cpp:106
-msgid "Editing a &clip can move other clips"
-msgstr "РедагÑÐ²Ð°Ð½Ð½Ñ Ð²ÑдÑÑÐ·ÐºÑ Ð¼Ð¾Ð¶Ðµ пеÑеÑÑваÑи ÑнÑÑ"
+#: prefs/GUIPrefs.cpp:123
+msgid "Help:"
+msgstr "ÐовÑдка:"
-#: prefs/GUIPrefs.cpp:108
-msgid "&Select all audio in project, if none selected"
-msgstr "&ÐбиÑаÑи вÑе аÑдÑо Ñ Ð¿ÑоекÑÑ, ÑкÑо нÑÑого не видÑлено"
+#: prefs/GUIPrefs.cpp:136
+msgid "Cl&osing last window quits Audacity"
+msgstr "Ðа&кÑиÑÑÑ Ð¾ÑÑаннÑого вÑкна завеÑÑÑÑ Audacity"
-#: prefs/GUIPrefs.cpp:110
+#: prefs/GUIPrefs.cpp:139
msgid "&Beep on completion of longer activities"
msgstr "&ÐзвÑнок пÑÑÐ»Ñ Ð·Ð°Ð²ÐµÑÑÐµÐ½Ð½Ñ Ð´Ð¾Ð²Ð³Ð¾ÑÑивалиÑ
опеÑаÑÑй"
-#: prefs/GUIPrefs.cpp:114
-msgid "Show / Hide"
-msgstr "ÐоказаÑи / ÑÑ
оваÑи"
-
-#: prefs/GUIPrefs.cpp:116
-msgid "Enable cut &lines"
-msgstr "ÐозволиÑи &лÑнÑÑ ÑозÑÑзаннÑ"
-
-#: prefs/GUIPrefs.cpp:118
-msgid "Show warnings about &temp files"
-msgstr "ÐоказаÑи попеÑÐµÐ´Ð¶ÐµÐ½Ð½Ñ Ð¿Ñо &ÑимÑаÑÐ¾Ð²Ñ Ñайли"
-
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
-msgstr "&ÐоказÑваÑи Ð·Ð°Ð¿Ð¸Ñ Ð½Ð° збеÑеженнÑ, навÑÑÑ ÑкÑо пÑÐ¾ÐµÐºÑ Ð¿Ð¾ÑожнÑй"
-
-#: prefs/GUIPrefs.cpp:122
-msgid "Show &Welcome Message at program start up"
-msgstr "Ðока&зÑваÑи повÑÐ´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð· пÑивÑÑаннÑм пÑд ÑÐ°Ñ Ð·Ð°Ð¿ÑÑкÑ"
-
-#: prefs/GUIPrefs.cpp:126
+#: prefs/GUIPrefs.cpp:145
msgid "Modes"
msgstr "Режими"
-#: prefs/GUIPrefs.cpp:129
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
+msgstr "ÐоказÑваÑи еÑекÑи VST Ñ Ð³ÑаÑÑÑÐ½Ð¾Ð¼Ñ ÑежимÑ"
+
+#: prefs/GUIPrefs.cpp:156
msgid "Don't a&pply effects in batch mode"
msgstr "&Ðе заÑÑоÑовÑваÑи еÑекÑи Ñ Ð¿Ð°ÐºÐµÑÐ½Ð¾Ð¼Ñ ÑежимÑ"
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
-msgstr "ÐоказÑваÑи мÑнÑмÑм дÑапазонÑ: ÑндикаÑоÑи Ñ \"ФоÑма Ñ
Ð²Ð¸Ð»Ñ (Ñ Ð´Ð)\""
-
-#: prefs/GUIPrefs.cpp:141
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 дР(малий дÑапазон Ð´Ð»Ñ ÑедагÑÐ²Ð°Ð½Ð½Ñ ÑÐ¸Ð³Ð½Ð°Ð»Ñ Ð· виÑÐ¾ÐºÐ¾Ñ Ð°Ð¼Ð¿Ð»ÑÑÑдоÑ)"
+#: prefs/ImportExportPrefs.cpp:28
+msgid "Import / Export"
+msgstr "ÐмпоÑÑ / ÐкÑпоÑÑ"
-#: prefs/GUIPrefs.cpp:142
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 дР(дÑапазон ÐÐРпÑи 8 бÑÑаÑ
)"
+#: prefs/ImportExportPrefs.cpp:53
+msgid "When importing audio files"
+msgstr "ÐÑд ÑÐ°Ñ ÑмпоÑÑÑ Ð°ÑдÑо ÑайлÑв"
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
-msgstr "-60 дР(дÑапазон ÐÐРпÑи 10 бÑÑаÑ
)"
+#: prefs/ImportExportPrefs.cpp:57
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
+msgstr ""
+"&ÐÑобиÑи копÑÑ Ð½ÐµÑÑиÑнÑÑиÑ
ÑайлÑв аÑдÑо пеÑÑ Ð½Ñж поÑаÑи ÑÑ
змÑÐ½Ñ (безпеÑнÑÑе)"
-#: prefs/GUIPrefs.cpp:144
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 дР(дÑапазон ÐÐРпÑи 16 бÑÑаÑ
)"
+#: prefs/ImportExportPrefs.cpp:59
+msgid "&Read uncompressed audio files directly from the original (faster)"
+msgstr "&ЧиÑаÑи неÑÑиÑнÑÑÑ Ñайли аÑдÑо напÑÑÐ¼Ñ Ð· оÑигÑÐ½Ð°Ð»Ñ (ÑвидÑе)"
-#: prefs/GUIPrefs.cpp:145
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 дР(поÑÑг ÑÑÑливоÑÑÑ Ð²ÑÑ
а лÑдини)"
+#: prefs/ImportExportPrefs.cpp:64
+msgid "&Normalize all tracks in project"
+msgstr "&ÐоÑмалÑзÑваÑи вÑÑ Ð´Ð¾ÑÑжки пÑоекÑÑ"
-#: prefs/GUIPrefs.cpp:146
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 дР(дÑапазон ÐÐРпÑи 24 бÑÑаÑ
)"
+#: prefs/ImportExportPrefs.cpp:70
+msgid "When exporting tracks to an audio file"
+msgstr "Ðоли екÑпоÑÑÑÑÑÑÑÑ Ð´Ð¾ÑÑжки до аÑдÑоÑайла"
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
-msgstr "Режим Ñипового пеÑеглÑдÑ"
+#: prefs/ImportExportPrefs.cpp:74
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+msgstr "Ðав&жди мÑкÑÑваÑи вÑÑ Ð´Ð¾ÑÑжки до ÑÑеÑео або моно каналÑв."
-#: prefs/GUIPrefs.cpp:164
-msgid "Other interface choices"
-msgstr "ÐнÑий вибÑÑ Ð·Ð¾Ð²Ð½ÑÑнÑого виглÑдÑ"
+#: prefs/ImportExportPrefs.cpp:76
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+msgstr ""
+"&ÐикоÑиÑÑовÑваÑи оÑобливе мÑкÑÑÐ²Ð°Ð½Ð½Ñ (напÑиклад Ð´Ð»Ñ ÐµÐºÑпоÑÑÑ 5.1-каналÑного "
+"Ñайла)"
-#: prefs/GUIPrefs.cpp:167
-msgid "Help:"
-msgstr "ÐовÑдка:"
+#: prefs/ImportExportPrefs.cpp:81
+msgid "S&how Metadata Editor prior to export step"
+msgstr "Ðо&казÑваÑи ÑедакÑÐ¾Ñ Ð¼ÐµÑаданиÑ
пеÑед кÑоком екÑпоÑÑÑ"
-#: prefs/GUIPrefs.cpp:168
-msgid "Solo Button:"
-msgstr "Ðнопка \"Соло\":"
+#: prefs/ImportExportPrefs.cpp:84
+msgid ""
+"Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
+msgstr ""
+"ÐаÑваженнÑ: паÑамеÑÑи ÑкоÑÑÑ ÐµÐºÑпоÑÑÑ Ð¼Ð¾Ð¶Ð½Ð° обÑаÑи пÑÑÐ»Ñ Ð½Ð°ÑиÑÐºÐ°Ð½Ð½Ñ ÐºÐ½Ð¾Ð¿ÐºÐ¸ "
+"«ÐаÑамеÑÑи»\n"
+"Ñ Ð´ÑÐ°Ð»Ð¾Ð³Ð¾Ð²Ð¾Ð¼Ñ Ð²ÑÐºÐ½Ñ ÐµÐºÑпоÑÑÑ."
-#: prefs/KeyConfigPrefs.cpp:64 prefs/KeyConfigPrefs.cpp:65
+#: prefs/KeyConfigPrefs.cpp:71
msgid "Keyboard"
msgstr "ÐлавÑаÑÑÑа"
-#: prefs/KeyConfigPrefs.cpp:86
+#: prefs/KeyConfigPrefs.cpp:95
msgid "Keyboard preferences currently unavailable."
msgstr "ÐаÑаз ви не можеÑе налаÑÑÑваÑи клавÑаÑÑÑÐ½Ñ ÑкоÑоÑеннÑ."
-#: prefs/KeyConfigPrefs.cpp:87
+#: prefs/KeyConfigPrefs.cpp:96
msgid "Open a new project to modify keyboard shortcuts."
msgstr "ÐÑдкÑийÑе новий пÑоекÑ, Ñоб маÑи Ð·Ð¼Ð¾Ð³Ñ Ð·Ð¼ÑниÑи клавÑаÑÑÑÐ½Ñ ÑкоÑоÑеннÑ."
-#: prefs/KeyConfigPrefs.cpp:109
+#: prefs/KeyConfigPrefs.cpp:121
msgid "Key Bindings"
msgstr "ÐÑив'Ñзка до клавÑÑ"
-#: prefs/KeyConfigPrefs.cpp:129
+#: prefs/KeyConfigPrefs.cpp:144
msgid "S&et"
msgstr "Ð&ÑÑановиÑи"
-#: prefs/KeyConfigPrefs.cpp:135
+#: prefs/KeyConfigPrefs.cpp:150
msgid "Note: Pressing Cmd+Q will quit. All other keys are valid."
msgstr ""
"ÐÑимÑÑка: наÑиÑÐ½ÐµÐ½Ð½Ñ ÐºÐ¾Ð¼Ð±ÑнаÑÑÑ ÐºÐ»Ð°Ð²ÑÑ Cmd+Q пÑизведе до завеÑÑеннÑ. УÑÑ "
"ÑнÑÑ ÐºÐ¾Ð¼Ð±ÑнаÑÑÑ Ñ Ð´ÑйÑними."
-#: prefs/KeyConfigPrefs.cpp:140 prefs/ThemePrefs.cpp:105
+#: prefs/KeyConfigPrefs.cpp:157 prefs/ThemePrefs.cpp:125
msgid "&Defaults"
msgstr "&ТиповÑ"
-#: prefs/KeyConfigPrefs.cpp:159
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr "Ðоманда"
+
+#: prefs/KeyConfigPrefs.cpp:172
msgid "Key Combination"
msgstr "ÐомбÑнаÑÑÑ ÐºÐ»Ð°Ð²ÑÑ"
-#: prefs/KeyConfigPrefs.cpp:176
-msgid "Export Keyboard Shortcuts As:"
-msgstr "ÐкÑпоÑÑÑваÑи комбÑнаÑÑÑ ÐºÐ»Ð°Ð²ÑÑ Ñк:"
+#: prefs/KeyConfigPrefs.cpp:196 toolbars/EditToolBar.cpp:143
+#: toolbars/EditToolBar.cpp:195
+msgid "Undo"
+msgstr "ÐеÑнÑÑи"
-#: prefs/KeyConfigPrefs.cpp:196
-msgid "Error saving keyboard shortcuts"
-msgstr "Ðомилка пÑи збеÑÐµÐ¶ÐµÐ½Ð½Ñ ÐºÐ¾Ð¼Ð±ÑнаÑÑй клавÑÑ"
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr "ÐовÑоÑиÑи"
-#: prefs/KeyConfigPrefs.cpp:211
+#: prefs/KeyConfigPrefs.cpp:224
msgid "Select an XML file containing Audacity keyboard shortcuts..."
msgstr "ÐибеÑÑÑÑ XML-Ñайл, Ñо мÑÑÑиÑÑ ÐºÐ¾Ð¼Ð±ÑнаÑÑÑ ÐºÐ»Ð°Ð²ÑÑ Audacity..."
-#: prefs/KeyConfigPrefs.cpp:228
+#: prefs/KeyConfigPrefs.cpp:242
msgid "Error loading keyboard shortcuts"
msgstr "Ðомилка пÑи заванÑÐ°Ð¶ÐµÐ½Ð½Ñ ÐºÐ¾Ð¼Ð±ÑнаÑÑй клавÑÑ"
-#: prefs/KeyConfigPrefs.cpp:256
+#: prefs/KeyConfigPrefs.cpp:255
+msgid "Export Keyboard Shortcuts As:"
+msgstr "ÐкÑпоÑÑÑваÑи комбÑнаÑÑÑ ÐºÐ»Ð°Ð²ÑÑ Ñк:"
+
+#: prefs/KeyConfigPrefs.cpp:281
+msgid "Error saving keyboard shortcuts"
+msgstr "Ðомилка пÑи збеÑÐµÐ¶ÐµÐ½Ð½Ñ ÐºÐ¾Ð¼Ð±ÑнаÑÑй клавÑÑ"
+
+#: prefs/KeyConfigPrefs.cpp:331
#, c-format
msgid ""
"The keyboard shortcut '%s' is already assigned to:\n"
@@ -8436,559 +8647,791 @@ msgstr ""
"\n"
"'%s'"
-#: prefs/KeyConfigPrefs.cpp:382 toolbars/EditToolBar.cpp:144
-msgid "Undo"
-msgstr "ÐеÑнÑÑи"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr "ÐÑблÑоÑеки"
+
+#: prefs/LibraryPrefs.cpp:79
+msgid "MP3 Export Library"
+msgstr "ÐÑблÑоÑека екÑпоÑÑÑ MP3"
+
+#: prefs/LibraryPrefs.cpp:83
+msgid "MP3 Library Version:"
+msgstr "ÐеÑÑÑÑ Ð±ÑблÑоÑеки MP3:"
+
+#: prefs/LibraryPrefs.cpp:89
+msgid "MP3 Library:"
+msgstr "ÐÑблÑоÑека MP3:"
+
+#: prefs/LibraryPrefs.cpp:92 prefs/LibraryPrefs.cpp:124
+msgid "&Locate..."
+msgstr "Ð&казаÑи..."
+
+#: prefs/LibraryPrefs.cpp:94
+msgid "LAME MP3 Library:"
+msgstr "ÐÑблÑоÑека LAME MP3:"
-#: prefs/MidiIOPrefs.cpp:146
+#: prefs/LibraryPrefs.cpp:97 prefs/LibraryPrefs.cpp:130
+msgid "&Download"
+msgstr "&ÐаванÑажиÑи"
+
+#: prefs/LibraryPrefs.cpp:104
+msgid "FFmpeg Import/Export Library"
+msgstr "ÐÑблÑоÑека ÑмпоÑÑÑ/екÑпоÑÑÑ FFmpeg"
+
+#: prefs/LibraryPrefs.cpp:108
+msgid "FFmpeg Library Version:"
+msgstr "ÐеÑÑÑÑ Ð±ÑблÑоÑеки FFmpeg:"
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr "Ðе знайдено поÑÑÑÐ±Ð½Ð¾Ñ Ð²ÐµÑÑÑÑ Ð±ÑблÑоÑеки FFmpeg"
+
+#: prefs/LibraryPrefs.cpp:120 prefs/LibraryPrefs.cpp:126
+msgid "FFmpeg Library:"
+msgstr "ÐÑблÑоÑека FFmpeg:"
+
+#: prefs/MidiIOPrefs.cpp:44 prefs/MidiIOPrefs.cpp:45
+msgid "Audio I/O"
+msgstr "ÐвÑд/вивÑд звÑкÑ"
+
+#: prefs/MidiIOPrefs.cpp:122
+msgid "Portaudio v"
+msgstr "Portaudio v"
+
+#: prefs/MidiIOPrefs.cpp:140 prefs/RecordingPrefs.cpp:57
+msgid "Playthrough"
+msgstr "ÐаÑкÑÑзний канал"
+
+#: prefs/MidiIOPrefs.cpp:142
msgid "&Play other tracks while recording new one"
msgstr "ÐÑд&ÑвоÑÑваÑи ÑнÑÑ Ð´Ð¾ÑÑжки пÑи запиÑÑ Ð½Ð¾Ð²Ð¾Ñ"
-#: prefs/MidiIOPrefs.cpp:149
+#: prefs/MidiIOPrefs.cpp:145
msgid "&Hardware Playthrough (Play new track while recording it)"
msgstr "&ÐпаÑаÑне вÑдÑвоÑÐµÐ½Ð½Ñ (ÐÑдÑвоÑÑваÑи Ð½Ð¾Ð²Ñ Ð´Ð¾ÑÑÐ¶ÐºÑ Ð¿Ñд ÑÐ°Ñ Ð·Ð°Ð¿Ð¸ÑÑ)"
-#: prefs/MidiIOPrefs.cpp:152
+#: prefs/MidiIOPrefs.cpp:148
msgid "&Software Playthrough (Play new track while recording it)"
msgstr "&ÐÑогÑамне пÑогÑÐ°Ð²Ð°Ð½Ð½Ñ (ÐÑдÑвоÑÑваÑи Ð½Ð¾Ð²Ñ Ð´Ð¾ÑÑÐ¶ÐºÑ Ð¿Ñд ÑÐ°Ñ Ð·Ð°Ð¿Ð¸ÑÑ)"
-#: prefs/MidiIOPrefs.cpp:160
+#: prefs/MidiIOPrefs.cpp:153 prefs/PlaybackPrefs.cpp:68
+msgid "Cut Preview"
+msgstr "ÐÑоÑлÑÑ
овÑÐ²Ð°Ð½Ð½Ñ ÑезÑлÑÑаÑÑ Ð²Ð¸ÑÑзаннÑ"
+
+#: prefs/MidiIOPrefs.cpp:156
msgid "Play before cut region:"
msgstr "ÐÑдÑвоÑÐµÐ½Ð½Ñ Ð¿ÐµÑед виÑÑзаннÑм облаÑÑÑ:"
-#: prefs/MidiIOPrefs.cpp:162
+#: prefs/MidiIOPrefs.cpp:158
msgid "Play after cut region:"
msgstr "ÐÑдÑвоÑÐµÐ½Ð½Ñ Ð¿ÑÑÐ»Ñ Ð²Ð¸ÑÑÐ·Ð°Ð½Ð½Ñ Ð¾Ð±Ð»Ð°ÑÑÑ:"
-#: prefs/MidiIOPrefs.cpp:173
+#: prefs/MidiIOPrefs.cpp:163 prefs/RecordingPrefs.cpp:76
+msgid "Latency"
+msgstr "ÐаÑÑимка"
+
+#: prefs/MidiIOPrefs.cpp:168 prefs/RecordingPrefs.cpp:82
msgid "Audio to buffer:"
msgstr "ÐÑÑÐµÑ Ð·Ð²ÑкÑ:"
-#: prefs/MidiIOPrefs.cpp:176
+#: prefs/MidiIOPrefs.cpp:170 prefs/RecordingPrefs.cpp:88
msgid "Latency correction:"
msgstr "ÐоÑигÑÐ²Ð°Ð½Ð½Ñ Ð½Ð° лаÑенÑнÑÑÑÑ:"
-#: prefs/MidiIOPrefs.cpp:183
+#: prefs/MidiIOPrefs.cpp:177
msgid "Seek Time"
msgstr "ÐÑок за ÑаÑом"
-#: prefs/MidiIOPrefs.cpp:196
+#: prefs/MidiIOPrefs.cpp:180 prefs/PlaybackPrefs.cpp:92
+msgid "Short period:"
+msgstr "ÐоÑоÑкий пÑомÑжок:"
+
+#: prefs/MidiIOPrefs.cpp:182 prefs/PlaybackPrefs.cpp:98
+msgid "Long period:"
+msgstr "Ðовгий пÑомÑжок:"
+
+#: prefs/MidiIOPrefs.cpp:187 prefs/PlaybackPrefs.cpp:54
+msgid "Effects Preview"
+msgstr "ÐÑоÑлÑÑ
овÑÐ²Ð°Ð½Ð½Ñ ÐµÑекÑÑ"
+
+#: prefs/MidiIOPrefs.cpp:190
msgid "Play when previewing:"
msgstr "ÐÑдÑвоÑÐµÐ½Ð½Ñ Ð¿Ñд ÑÐ°Ñ Ð¿ÐµÑеглÑдÑ:"
-#: prefs/MousePrefs.cpp:55 prefs/MousePrefs.cpp:56
+#: prefs/MousePrefs.cpp:57
msgid "Mouse"
msgstr "ÐиÑа"
-#: prefs/MousePrefs.cpp:78
+#: prefs/MousePrefs.cpp:84
msgid "Mouse Bindings (default values, not configurable)"
msgstr "ÐикоÑиÑÑÐ°Ð½Ð½Ñ Ð¼Ð¸ÑÑ (незмÑÐ½Ð½Ñ ÑÐ¸Ð¿Ð¾Ð²Ñ Ð¿Ð°ÑамеÑÑи)"
-#: prefs/MousePrefs.cpp:93
+#: prefs/MousePrefs.cpp:97
msgid "Tool"
msgstr "ÐнÑÑÑÑменÑ"
-#: prefs/MousePrefs.cpp:94
+#: prefs/MousePrefs.cpp:98
msgid "Command Action"
msgstr "ÐÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¸"
-#: prefs/MousePrefs.cpp:95
+#: prefs/MousePrefs.cpp:99
msgid "Buttons"
msgstr "Ðнопки"
-#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:117
-#: prefs/MousePrefs.cpp:122
+#: prefs/MousePrefs.cpp:102 prefs/MousePrefs.cpp:108 prefs/MousePrefs.cpp:121
+#: prefs/MousePrefs.cpp:126
msgid "Left-Click"
msgstr "СÑÑÑлка лÑвоÑÑÑ-ÐлаÑаннÑ"
-#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:100
-#: prefs/MousePrefs.cpp:101 prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:102 prefs/MousePrefs.cpp:103 prefs/MousePrefs.cpp:104
+#: prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:106
msgid "Select"
-msgstr "ÐидÑлиÑи"
+msgstr "ÐибÑаÑи"
-#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:122
+#: prefs/MousePrefs.cpp:102 prefs/MousePrefs.cpp:126
msgid "Set Selection Point"
-msgstr "ÐÑÑановиÑи ÑоÑÐºÑ Ð²Ð¸Ð´ÑленнÑ"
+msgstr "ÐÑÑановиÑи ÑоÑÐºÑ Ð²Ð¸Ð±Ð¾ÑÑ"
-#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:115 prefs/MousePrefs.cpp:119 prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:103 prefs/MousePrefs.cpp:109 prefs/MousePrefs.cpp:115
+#: prefs/MousePrefs.cpp:119 prefs/MousePrefs.cpp:123 prefs/MousePrefs.cpp:127
msgid "Left-Drag"
msgstr "СÑÑÑлка лÑвоÑÑÑ-ÐеÑеÑÑгÑваннÑ"
-#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:103 prefs/MousePrefs.cpp:127
msgid "Set Selection Range"
-msgstr "ÐÑÑановиÑи облаÑÑÑ Ð²Ð¸Ð´ÑленнÑ"
+msgstr "ÐÑÑановиÑи облаÑÑÑ Ð²Ð¸Ð±Ð¾ÑÑ"
-#: prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:104
msgid "Extend Selection Range"
-msgstr "РозÑиÑиÑи облаÑÑÑ Ð²Ð¸Ð´ÑленнÑ"
+msgstr "РозÑиÑиÑи облаÑÑÑ Ð²Ð¸Ð±Ð¾ÑÑ"
-#: prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:104
msgid "Shift-Left-Click"
msgstr "Shift-СÑÑÑлка лÑвоÑÑÑ-ÐлаÑаннÑ"
-#: prefs/MousePrefs.cpp:101
+#: prefs/MousePrefs.cpp:105
msgid "Left-Double-Click"
msgstr "ÐодвÑйне-клаÑаннÑ-лÑвоÑ"
-#: prefs/MousePrefs.cpp:101
+#: prefs/MousePrefs.cpp:105
msgid "Select Clip or Entire Track"
-msgstr "ÐидÑлиÑи дÑлÑÐ½ÐºÑ Ð°Ð±Ð¾ вÑÑ Ð´Ð¾ÑÑжкÑ"
+msgstr "ÐибÑаÑи дÑлÑÐ½ÐºÑ Ð°Ð±Ð¾ вÑÑ Ð´Ð¾ÑÑжкÑ"
-#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:106
msgid "Ctrl-Left-Click"
msgstr "Ctrl-ÐлаÑаннÑ-лÑвоÑ"
-#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:106
msgid "Set Selection Point and Play"
-msgstr "ÐидÑлиÑи мÑÑÑе Ñа вÑдÑвоÑиÑи"
+msgstr "ÐибÑаÑи мÑÑÑе Ñа вÑдÑвоÑиÑи"
-#: prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:108 prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:108 prefs/MousePrefs.cpp:109 prefs/MousePrefs.cpp:110
+#: prefs/MousePrefs.cpp:111 prefs/MousePrefs.cpp:112 prefs/MousePrefs.cpp:113
msgid "Zoom"
msgstr "ÐаÑÑÑаб"
-#: prefs/MousePrefs.cpp:104
+#: prefs/MousePrefs.cpp:108
msgid "Zoom in on Point"
msgstr "ÐбÑлÑÑиÑи за ÑоÑкоÑ"
-#: prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:109 prefs/MousePrefs.cpp:111 prefs/MousePrefs.cpp:129
msgid "Zoom in on a Range"
msgstr "ÐбÑлÑÑиÑи за облаÑÑÑ"
-#: prefs/MousePrefs.cpp:105
+#: prefs/MousePrefs.cpp:109
msgid "same as right-drag"
msgstr "Ñеж, Ñо Ñ ÐºÐ»Ð°ÑÐ°Ð½Ð½Ñ Ð¿ÑÐ°Ð²Ð¾Ñ Ñ Ð¿ÐµÑеÑаÑкÑваннÑ"
-#: prefs/MousePrefs.cpp:106 prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:110 prefs/MousePrefs.cpp:128
msgid "Right-Click"
msgstr "СÑÑÑлка пÑавоÑÑÑ - ÐлаÑаннÑ"
-#: prefs/MousePrefs.cpp:106 prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:110 prefs/MousePrefs.cpp:128
msgid "Zoom out one step"
msgstr "ÐменÑиÑи на кÑок"
-#: prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:111 prefs/MousePrefs.cpp:129
msgid "Right-Drag"
msgstr "СÑÑÑлка пÑавоÑÑÑ - ÐеÑеÑÑгÑваннÑ"
-#: prefs/MousePrefs.cpp:107
+#: prefs/MousePrefs.cpp:111
msgid "same as left-drag"
msgstr "Ñеж, Ñо Ñ ÐºÐ»Ð°ÑÐ°Ð½Ð½Ñ Ð»ÑÐ²Ð¾Ñ Ñ Ð¿ÐµÑеÑаÑкÑваннÑ"
-#: prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:112
msgid "Shift-Drag"
msgstr "Shift-ÐеÑеÑÑгÑваннÑ"
-#: prefs/MousePrefs.cpp:108
+#: prefs/MousePrefs.cpp:112
msgid "Zoom out on a Range"
msgstr "ÐбÑлÑÑÐµÐ½Ð½Ñ Ð·Ð° облаÑÑÑ"
-#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:113
msgid "Middle-Click"
msgstr "ÐлаÑÐ°Ð½Ð½Ñ ÑеÑеднÑоÑ"
-#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:113
msgid "Zoom default"
msgstr "Типовий маÑÑÑаб"
-#: prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:115
msgid "Time shift clip or move up/down between tracks"
msgstr "ÐеÑеÑÑнÑÑи вÑдÑÑзок або пеÑемÑÑÑиÑи вгоÑÑ Ð°Ð±Ð¾ вниз мÑж доÑÑжками"
-#: prefs/MousePrefs.cpp:112
+#: prefs/MousePrefs.cpp:116
msgid "Shift-Left-Drag"
msgstr "Shift-ÐÑва-ÐеÑеÑÑгÑваннÑ"
-#: prefs/MousePrefs.cpp:112
+#: prefs/MousePrefs.cpp:116
msgid "Time shift all clips in track"
msgstr "ЧаÑовий зÑÑв вÑÑÑ
ÑаÑÑинок Ñ Ð´Ð¾ÑÑжÑÑ"
-#: prefs/MousePrefs.cpp:113 prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:117 prefs/MousePrefs.cpp:124
msgid "Ctrl-Left-Drag"
msgstr "ÐÑва-Ctrl-пеÑеÑÑгÑваннÑ"
-#: prefs/MousePrefs.cpp:113
+#: prefs/MousePrefs.cpp:117
msgid "Move clip up/down between tracks"
msgstr "ÐеÑемÑÑÑиÑи вÑдÑÑзок вгоÑÑ Ð°Ð±Ð¾ вниз мÑж доÑÑжками"
-#: prefs/MousePrefs.cpp:115
+#: prefs/MousePrefs.cpp:119
msgid "Change Amplification Envelope"
msgstr "ÐмÑниÑи обвÑÐ´Ð½Ñ Ð¿ÑдÑиленнÑ"
-#: prefs/MousePrefs.cpp:117
+#: prefs/MousePrefs.cpp:121
msgid "Change Sample"
msgstr "ÐмÑниÑи Ñемпл"
-#: prefs/MousePrefs.cpp:117 prefs/MousePrefs.cpp:118 prefs/MousePrefs.cpp:119
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:121 prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:124
msgid "Pencil"
msgstr "\"ÐлÑвеÑÑ\""
-#: prefs/MousePrefs.cpp:118
+#: prefs/MousePrefs.cpp:122
msgid "Alt-Left-Click"
msgstr "Alt-клаÑÐ°Ð½Ð½Ñ Ð»ÑÐ²Ð¾Ñ ÐºÐ½Ð¾Ð¿ÐºÐ¾Ñ"
-#: prefs/MousePrefs.cpp:118
+#: prefs/MousePrefs.cpp:122
msgid "Smooth at Sample"
msgstr "ÐгладжÑваÑи Ñемпл"
-#: prefs/MousePrefs.cpp:119
+#: prefs/MousePrefs.cpp:123
msgid "Change Several Samples"
msgstr "ÐмÑниÑи декÑлÑка ÑемплÑв"
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:124
msgid "Change ONE Sample only"
msgstr "ÐмÑниÑи лиÑе ÐÐÐÐ Ñемпл"
-#: prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123 prefs/MousePrefs.cpp:124
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:126 prefs/MousePrefs.cpp:127 prefs/MousePrefs.cpp:128
+#: prefs/MousePrefs.cpp:129
msgid "Multi"
msgstr "ÐекÑлÑка"
-#: prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:126 prefs/MousePrefs.cpp:127
msgid "same as select tool"
-msgstr "Ñе Ñаме, Ñо й ÑнÑÑÑÑÐ¼ÐµÐ½Ñ Ð´Ð»Ñ Ð²Ð¸Ð´ÑленнÑ"
+msgstr "Ñе Ñаме, Ñо й ÑнÑÑÑÑÐ¼ÐµÐ½Ñ Ð²Ð¸Ð±Ð¾ÑÑ"
-#: prefs/MousePrefs.cpp:124 prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:128 prefs/MousePrefs.cpp:129
msgid "same as zoom tool"
msgstr "Ñе Ñаме, Ñо й ÑнÑÑÑÑÐ¼ÐµÐ½Ñ Ð¼Ð°ÑÑÑабÑваннÑ"
-#: prefs/MousePrefs.cpp:127 prefs/MousePrefs.cpp:128 prefs/MousePrefs.cpp:129
+#: prefs/MousePrefs.cpp:131 prefs/MousePrefs.cpp:132 prefs/MousePrefs.cpp:133
msgid "Any"
msgstr "ÐÑдÑ-Ñкий"
-#: prefs/MousePrefs.cpp:127
+#: prefs/MousePrefs.cpp:131
msgid "Scroll up or down"
msgstr "ÐÑокÑÑÑиÑи вгоÑÑ Ñи вниз"
-#: prefs/MousePrefs.cpp:127
+#: prefs/MousePrefs.cpp:131
msgid "Wheel-Rotate"
msgstr "ÐбеÑÑÐ°Ð½Ð½Ñ ÐºÐ¾Ð»ÑÑаÑка"
-#: prefs/MousePrefs.cpp:128
+#: prefs/MousePrefs.cpp:132
msgid "Scroll left or right"
msgstr "ÐÑокÑÑÑÑÐ²Ð°Ð½Ð½Ñ Ð»ÑвоÑÑÑ Ð°Ð±Ð¾ пÑавоÑÑÑ"
-#: prefs/MousePrefs.cpp:128
+#: prefs/MousePrefs.cpp:132
msgid "Shift-Wheel-Rotate"
msgstr "Shift-ÐÑокÑÑÑÑваннÑ-колÑÑаÑка"
-#: prefs/MousePrefs.cpp:129
+#: prefs/MousePrefs.cpp:133
msgid "Ctrl-Wheel-Rotate"
msgstr "Ctrl-ÐÑокÑÑÑÑваннÑ-колÑÑаÑка"
-#: prefs/MousePrefs.cpp:129
+#: prefs/MousePrefs.cpp:133
msgid "Zoom in or out"
msgstr "ÐаÑÑÑабÑваÑи виглÑд"
-#: prefs/PrefsDialog.cpp:94
+#: prefs/PlaybackPrefs.cpp:58
+msgid "Length of preview:"
+msgstr "ТÑивалÑÑÑÑ Ð¿ÑоÑлÑÑ
овÑваннÑ:"
+
+#: prefs/PlaybackPrefs.cpp:72
+msgid "Preview before cut region:"
+msgstr "ÐÑоÑлÑÑ
овÑÐ²Ð°Ð½Ð½Ñ Ð¿ÐµÑед виÑÑзаннÑм облаÑÑÑ:"
+
+#: prefs/PlaybackPrefs.cpp:78
+msgid "Preview after cut region:"
+msgstr "ÐÑоÑлÑÑ
овÑÐ²Ð°Ð½Ð½Ñ Ð¿ÑÑÐ»Ñ Ð²Ð¸ÑÑÐ·Ð°Ð½Ð½Ñ Ð¾Ð±Ð»Ð°ÑÑÑ:"
+
+#: prefs/PlaybackPrefs.cpp:88
+msgid "Seek Time when playing"
+msgstr "Ð§Ð°Ñ Ð¿Ð¾Ð·Ð¸ÑÑÑÐ²Ð°Ð½Ð½Ñ Ð¿Ñд ÑÐ°Ñ Ð²ÑдÑвоÑеннÑ"
+
+#: prefs/PrefsDialog.cpp:72
msgid "Audacity Preferences"
msgstr "Ð£Ð¿Ð¾Ð´Ð¾Ð±Ð°Ð½Ð½Ñ Audacity"
-#: prefs/QualityPrefs.cpp:73
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr "ÐÑоекÑи"
+
+#: prefs/ProjectsPrefs.cpp:56
+msgid "When saving a project that depends on other audio files"
+msgstr "ÐбеÑÐµÐ¶ÐµÐ½Ð½Ñ Ð¿ÑоекÑÑ, Ñо залежиÑÑ Ð²Ñд ÑнÑиÑ
аÑдÑоÑайлÑв"
+
+#: prefs/ProjectsPrefs.cpp:60
+msgid "Always © all audio into project (safest)"
+msgstr "Ðавжди &копÑÑваÑи вÑе аÑдÑо до пÑоекÑÑ (найбезпеÑнÑÑе)"
+
+#: prefs/ProjectsPrefs.cpp:62
+msgid "&Do not copy any audio"
+msgstr "&Ðе копÑÑваÑи жодного аÑдÑо"
+
+#: prefs/ProjectsPrefs.cpp:64
+msgid "&Ask user"
+msgstr "&ÐиÑаÑи коÑиÑÑÑваÑа"
+
+#: prefs/ProjectsPrefs.cpp:71
+msgid "Auto save"
+msgstr "ÐвÑозбеÑеженнÑ"
+
+#: prefs/ProjectsPrefs.cpp:73
+msgid "Auto save a copy of the project in a separate folder"
+msgstr "ÐвÑомаÑиÑно збеÑÑгаÑи копÑÑ Ð¿ÑоекÑÑ Ñ Ð¾ÐºÑемÑй ÑеÑÑ"
+
+#: prefs/ProjectsPrefs.cpp:79
+msgid "Auto save interval:"
+msgstr "ÐнÑеÑвал авÑозбеÑеженнÑ:"
+
+#: prefs/ProjectsPrefs.cpp:83
+msgid "minutes"
+msgstr "Ñ
вилин"
+
+#: prefs/QualityPrefs.cpp:75
msgid "Rectangle"
msgstr "ÐÑÑмокÑÑне"
-#: prefs/QualityPrefs.cpp:74
+#: prefs/QualityPrefs.cpp:76
msgid "Triangle"
msgstr "ТÑикÑÑне"
-#: prefs/QualityPrefs.cpp:75
+#: prefs/QualityPrefs.cpp:77
msgid "Shaped"
msgstr "Ðа ÑоÑмоÑ"
-#: prefs/QualityPrefs.cpp:122
+#: prefs/QualityPrefs.cpp:125
msgid "Sampling"
msgstr "ÐиÑкÑеÑизаÑÑÑ"
-#: prefs/QualityPrefs.cpp:125
+#: prefs/QualityPrefs.cpp:129
msgid "Default Sample Rate:"
msgstr "Типова ÑаÑÑоÑа диÑкÑеÑизаÑÑÑ:"
-#: prefs/QualityPrefs.cpp:127
+#: prefs/QualityPrefs.cpp:154
msgid "Default Sample Format:"
msgstr "Типовий ÑозмÑÑ ÑемплÑ:"
-#: prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "ÐеÑеÑвоÑÐµÐ½Ð½Ñ ÑаÑÑоÑи диÑкÑеÑизаÑÑÑ Ñ ÑеалÑÐ½Ð¾Ð¼Ñ ÑаÑÑ:"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr "ÐеÑеÑвоÑÐµÐ½Ð½Ñ Ñ ÑÐµÐ¶Ð¸Ð¼Ñ ÑеалÑного ÑаÑÑ"
-#: prefs/QualityPrefs.cpp:139
-msgid "High-quality sample rate converter:"
-msgstr "ÐиÑокоÑкÑÑне пеÑеÑвоÑÐµÐ½Ð½Ñ ÑаÑÑоÑи диÑкÑеÑизаÑÑÑ:"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+msgid "Sample Rate Converter:"
+msgstr "ÐеÑеÑвоÑÑÐ²Ð°Ñ ÑаÑÑоÑи диÑкÑеÑизаÑÑÑ:"
-#: prefs/QualityPrefs.cpp:142
-msgid "Real-time dither:"
-msgstr "ÐгладжÑÐ²Ð°Ð½Ð½Ñ Ñ ÑеалÑÐ½Ð¾Ð¼Ñ ÑаÑÑ:"
+#: prefs/QualityPrefs.cpp:178 prefs/QualityPrefs.cpp:200
+msgid "Dither"
+msgstr "ÐÑдмÑÑÑÐ²Ð°Ð½Ð½Ñ ÑÑмÑ"
-#: prefs/QualityPrefs.cpp:145
-msgid "High-quality dither:"
-msgstr "ÐиÑокоÑкÑÑне згладжÑваннÑ:"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr "ÐиÑокоÑкÑÑне пеÑеÑвоÑеннÑ"
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
-msgstr "ÐеÑеÑвоÑеннÑ"
+#: prefs/RecordingPrefs.cpp:59
+msgid "Overdub: &Play other tracks while recording new one"
+msgstr "ÐеÑекÑиÑÑÑ: ÐÑд&ÑвоÑÑваÑи ÑнÑÑ Ð´Ð¾ÑÑжки пÑи запиÑÑ Ð½Ð¾Ð²Ð¾Ñ"
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
-msgstr "ÐеÑеÑвоÑÑÐ²Ð°Ñ ÑаÑÑоÑи диÑкÑеÑизаÑÑÑ"
+#: prefs/RecordingPrefs.cpp:63
+msgid "&Hardware Playthrough: Play new track while recording it"
+msgstr "&ÐпаÑаÑне пÑогÑаваннÑ: ÐÑдÑвоÑÑваÑи Ð½Ð¾Ð²Ñ Ð´Ð¾ÑÑжкÑ, пÑогÑаÑÑи ÑÑ"
-#: prefs/QualityPrefs.cpp:164
-msgid "Dither"
-msgstr "ÐÑдмÑÑÑÐ²Ð°Ð½Ð½Ñ ÑÑмÑ"
+#: prefs/RecordingPrefs.cpp:67
+msgid "&Software Playthrough: Play new track while recording or monitoring"
+msgstr "&ÐÑогÑамне пÑогÑаваннÑ: ÐÑдÑвоÑÑваÑи Ð½Ð¾Ð²Ñ Ð´Ð¾ÑÑжкÑ, запиÑÑÑÑи ÑÑ"
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
-msgstr "У ÑеалÑÐ½Ð¾Ð¼Ñ ÑаÑÑ:"
+#: prefs/RecordingPrefs.cpp:71
+msgid "(uncheck when recording \"stereo mix\")"
+msgstr "(знÑмÑÑÑ Ð¿Ð¾Ð·Ð½Ð°ÑÐºÑ Ð´Ð»Ñ Ð·Ð°Ð¿Ð¸ÑÑ Â«Ð·Ð¼ÑÑаного ÑÑеÑео»)"
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
-msgstr "ÐиÑока ÑкÑÑÑÑ:"
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
+msgstr "мÑлÑÑекÑнд (виÑе знаÑÐµÐ½Ð½Ñ = бÑлÑÑа лаÑенÑнÑÑÑÑ)"
-#: prefs/SmartRecordPrefs.cpp:37 prefs/SmartRecordPrefs.cpp:38
-msgid "Smart Recording"
-msgstr "РозÑиÑений запиÑ"
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
+msgstr "мÑлÑÑекÑнд (вÑдâÑмне = назад)"
-#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
+#: prefs/RecordingPrefs.cpp:98 prefs/RecordingPrefs.cpp:100
msgid "Sound Activated Recording"
msgstr "ÐÐ°Ð¿Ð¸Ñ Ð· акÑиваÑÑÑÑ Ð·Ð²Ñком"
-#: prefs/SmartRecordPrefs.cpp:71
+#: prefs/RecordingPrefs.cpp:109
msgid "Sound Activation Level (dB):"
msgstr "Ð ÑÐ²ÐµÐ½Ñ Ð·Ð²ÑÐºÑ Ð´Ð»Ñ Ð°ÐºÑивÑÐ²Ð°Ð½Ð½Ñ (дÐ):"
-#: prefs/SpectrumPrefs.cpp:41 prefs/SpectrumPrefs.cpp:42
+#: prefs/SpectrumPrefs.cpp:30
msgid "Spectrograms"
msgstr "СпекÑÑогÑами"
-#: prefs/SpectrumPrefs.cpp:91
-msgid "FFT Size"
-msgstr "FFT ÑозмÑÑ"
-
-#: prefs/SpectrumPrefs.cpp:94
+#: prefs/SpectrumPrefs.cpp:41
msgid "8 - most wideband"
msgstr "8 â найÑиÑÑий"
-#: prefs/SpectrumPrefs.cpp:99
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr "16"
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr "32"
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr "64"
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr "128"
+
+#: prefs/SpectrumPrefs.cpp:46
msgid "256 - default"
msgstr "256 â Ñиповий"
-#: prefs/SpectrumPrefs.cpp:107
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr "512"
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr "1024"
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr "2048"
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr "4096"
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr "8192"
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr "16384"
+
+#: prefs/SpectrumPrefs.cpp:54
msgid "32768 - most narrowband"
msgstr "32768 â найÑоÑнÑÑе"
-#: prefs/SpectrumPrefs.cpp:109
+#: prefs/SpectrumPrefs.cpp:56
msgid "4096 - most narrowband"
msgstr "4096 - найбÑлÑÑ Ð²ÑзÑкоÑмÑговий"
-#: prefs/SpectrumPrefs.cpp:116
-msgid "Window type:"
-msgstr "Тип вÑкна:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
+msgstr "ÐÑкно FFT"
-#: prefs/SpectrumPrefs.cpp:125
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
+msgstr "РозмÑÑ Ð²Ñкна"
+
+#: prefs/SpectrumPrefs.cpp:93
+msgid "Window type"
+msgstr "Тип вÑкна"
+
+#: prefs/SpectrumPrefs.cpp:113
msgid "FFT Skip Points"
msgstr "ÐгноÑÐ¾Ð²Ð°Ð½Ñ ÑоÑки FFT"
-#: prefs/SpectrumPrefs.cpp:140
-msgid "Display"
-msgstr "Ðоказ"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
+msgstr "ÐгноÑÑваÑи ÑоÑки"
-#: prefs/SpectrumPrefs.cpp:144
-msgid "&Grayscale"
-msgstr "&ÐÑдÑÑнки ÑÑÑого"
-
-#: prefs/SpectrumPrefs.cpp:147
+#: prefs/SpectrumPrefs.cpp:134
msgid "Minimum Frequency (Hz):"
msgstr "ÐÑнÑмалÑна ÑаÑÑоÑа (ÐÑ):"
-#: prefs/SpectrumPrefs.cpp:152
+#: prefs/SpectrumPrefs.cpp:140
msgid "Maximum Frequency (Hz):"
msgstr "ÐакÑималÑна ÑаÑÑоÑа (ÐÑ):"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
-msgstr "&Y-ÒÑаÑка"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
+msgstr "ÐоказÑваÑи ÑпекÑÑ Ñ Ð²Ñ&дÑÑнкаÑ
ÑÑÑого"
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
-msgstr "ÐаÑÐ²Ð°Ð¶ÐµÐ½Ð½Ñ Ñодо &поÑÑкÑ"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
+msgstr "ÐоказÑваÑи ÑÑÑÐºÑ Ñздовж в&ÑÑÑ Y"
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
-msgstr "ÐаÑÐ²Ð°Ð¶ÐµÐ½Ð½Ñ Ñодо &кванÑизаÑÑÑ"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
+msgstr "ÐоÑÑк Ð½Ð¾Ñ FFT"
#: prefs/SpectrumPrefs.cpp:165
msgid "Minimum Amplitude (dB):"
msgstr "ÐÑнÑмалÑна амплÑÑÑда (дÐ):"
-#: prefs/SpectrumPrefs.cpp:170
+#: prefs/SpectrumPrefs.cpp:171
msgid "Max. Number of Notes (1..128):"
msgstr "ÐакÑ. кÑлÑкÑÑÑÑ Ð½Ð¾Ñ (1..128):"
-#: prefs/SpectrumPrefs.cpp:197
+#: prefs/SpectrumPrefs.cpp:178
+msgid "&Find Notes"
+msgstr "ÐаÑÐ²Ð°Ð¶ÐµÐ½Ð½Ñ Ñодо &поÑÑкÑ"
+
+#: prefs/SpectrumPrefs.cpp:182
+msgid "&Quantize Notes"
+msgstr "ÐаÑÐ²Ð°Ð¶ÐµÐ½Ð½Ñ Ñодо &кванÑизаÑÑÑ"
+
+#: prefs/SpectrumPrefs.cpp:194
msgid "The maximum frequency must be an integer"
msgstr "ÐакÑималÑно можлива ÑаÑÑоÑа повинна бÑÑи ÑÑÐ»Ð¾Ñ Ð²ÐµÐ»Ð¸ÑиноÑ"
-#: prefs/SpectrumPrefs.cpp:201
+#: prefs/SpectrumPrefs.cpp:198
msgid "Maximum frequency must be in the range 100 Hz - 100,000 Hz"
msgstr "ÐакÑималÑна ÑаÑÑоÑа повинна знаÑ
одиÑиÑÑ Ñ Ð¼ÐµÐ¶Ð°Ñ
100 ÐÑ - 100,000 ÐÑ"
-#: prefs/SpectrumPrefs.cpp:209
+#: prefs/SpectrumPrefs.cpp:204
msgid "The minimum frequency must be an integer"
msgstr "ÐÑнÑмалÑна ÑаÑÑоÑа Ð¼Ð°Ñ Ð±ÑÑи ÑÑлим ÑиÑлом"
-#: prefs/SpectrumPrefs.cpp:213
+#: prefs/SpectrumPrefs.cpp:208
msgid "Minimum frequency must be at least 0 Hz"
msgstr "ÐÑнÑмалÑна ÑаÑÑоÑа Ð¼Ð°Ñ Ð±ÑÑи не менÑÐ¾Ñ 0 ÐÑ"
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr "ÐÑнÑмалÑна ÑаÑÑоÑа Ð¼Ð°Ñ Ð±ÑÑи менÑÐ¾Ñ Ð·Ð° макÑималÑÐ½Ñ ÑаÑÑоÑÑ"
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr "ÐÑнÑмалÑна амплÑÑÑда (Ñ Ð´Ð) Ð¼Ð°Ñ Ð±ÑÑи ÑÑлим знаÑеннÑм"
-#: prefs/SpectrumPrefs.cpp:226 prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
-msgstr "ÐакÑималÑна кÑлÑкÑÑÑÑ Ð½Ð¾Ñ Ð¼Ð°Ñ Ð±ÑÑи ÑÑлим знаÑеннÑм Ñ Ð¼ÐµÐ¶Ð°Ñ
вÑд 1 до 128"
+#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr "ÐакÑималÑна кÑлÑкÑÑÑÑ Ð½Ð¾Ñ Ð¼Ð°Ñ Ð±ÑÑи ÑÑлим знаÑеннÑм"
-#: prefs/ThemePrefs.cpp:62 prefs/ThemePrefs.cpp:63
+#: prefs/SpectrumPrefs.cpp:230
+msgid "The maximum number of notes must be in the range 1..128"
+msgstr ""
+"ÐакÑималÑна кÑлÑкÑÑÑÑ Ð½Ð¾Ñ Ð¼Ð°Ñ Ð±ÑÑи ÑÑлим знаÑеннÑм Ñ Ð¼ÐµÐ¶Ð°Ñ
вÑд 1 до 128"
+
+#: prefs/ThemePrefs.cpp:60
msgid "Theme"
msgstr "СÑилÑ"
+#: prefs/ThemePrefs.cpp:88
+msgid "Info"
+msgstr "ÐнÑоÑмаÑÑÑ"
+
+#: prefs/ThemePrefs.cpp:91
+msgid ""
+"Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images "
+"and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into "
+"Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently "
+"affected, even\n"
+"though the image file shows other icons too.]"
+msgstr ""
+"ÐмÑна Ñем Ñ ÐµÐºÑпеÑименÑалÑноÑ.\n"
+"\n"
+"Щоб ÑпÑобÑваÑи ÑÑ, наÑиÑнÑÑÑ \"ÐбеÑегÑи ÐºÐµÑ Ñем\", поÑÑм знайдÑÑÑ Ñа змÑнÑÑÑ "
+"зобÑÐ°Ð¶ÐµÐ½Ð½Ñ Ñа колÑоÑи Ñ \n"
+"ImageCacheVxx.png викоÑиÑÑовÑÑÑи ÑедакÑÐ¾Ñ Ð·Ð¾Ð±ÑаженÑ, напÑиклад, Gimp.\n"
+"\n"
+"ÐаÑиÑнÑÑÑ \"ÐаванÑажиÑи ÐÐµÑ Ð¢ÐµÐ¼\" Ñоб заванÑажиÑи змÑÐ½ÐµÐ½Ñ Ð·Ð¾Ð±ÑÐ°Ð¶ÐµÐ½Ð½Ñ Ñа "
+"колÑоÑи до Audacity.\n"
+"\n"
+"[ÐаÑаз пÑдÑÑимÑÑÑÑÑÑ Ð¿Ð°Ð½ÐµÐ»Ñ ÐºÐµÑÑÐ²Ð°Ð½Ð½Ñ Ñа колÑоÑи звÑÐºÐ¾Ð²Ð¾Ñ Ð´Ð¾ÑÑжки, "
+"незважаÑÑи на Ñе, Ñо Ñайли\n"
+"зобÑÐ°Ð¶ÐµÐ½Ñ Ð¿Ð¾ÐºÐ°Ð·ÑÑÑÑ Ñакож ÑнÑÑ Ð·Ð½Ð°Ñки.]"
+
+#: prefs/ThemePrefs.cpp:96
+msgid ""
+"You have compiled Audacity with an extra button, 'Output Sourcery'. This "
+"will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+"Ðи зÑбÑали Audacity з додаÑÐºÐ¾Ð²Ð¾Ñ ÐºÐ½Ð¾Ð¿ÐºÐ¾Ñ, «ЧаÑÑвник виведеннÑ». ÐÑн збеÑеже "
+"C-веÑÑÑÑ \n"
+"кеÑÑ Ð·Ð¾Ð±ÑаженÑ, Ñкий поÑÑм може бÑÑи зÑбÑаний Ñк Ñиповий."
+
+#: prefs/ThemePrefs.cpp:101
+msgid ""
+"If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be "
+"loaded\n"
+"when the program starts up."
+msgstr ""
+"ЯкÑо познаÑено пÑÐ½ÐºÑ Â«ÐаванÑажиÑи ÐºÐµÑ Ñем пÑд ÑÐ°Ñ Ð·Ð°Ð¿ÑÑкÑ», ÐºÐµÑ Ñем бÑде "
+"заванÑажено, коли пÑогÑама \n"
+"запÑÑкаÑимеÑÑÑÑ."
+
+#: prefs/ThemePrefs.cpp:104
+msgid ""
+"Saving and loading individual theme files uses a separate file for each "
+"image, but is\n"
+"otherwise the same idea."
+msgstr ""
+"ÐбеÑÑÐ³Ð°Ð½Ð½Ñ Ñа заванÑÐ°Ð¶ÐµÐ½Ð½Ñ ÑайлÑв окÑÐµÐ¼Ð¾Ñ Ñеми викоÑиÑÑовÑÑ Ð¾ÐºÑемий Ñайл Ð´Ð»Ñ "
+"кожного зобÑаженнÑ, \n"
+"але ÑнакÑе ÑÑ Ð¶ ÑдеÑ."
+
#. i18n-hint: && in here is an escape character to get a single & on screen,
#. * so keep it as is
-#: prefs/ThemePrefs.cpp:93
+#: prefs/ThemePrefs.cpp:111
msgid "Theme Cache - Images && Color"
msgstr "ÐÐµÑ Ñем - ÐобÑÐ°Ð¶ÐµÐ½Ð½Ñ Ñа колÑÑ"
-#: prefs/ThemePrefs.cpp:95
+#: prefs/ThemePrefs.cpp:115
msgid "Save Theme Cache"
msgstr "ÐбеÑегÑи ÐºÐµÑ Ñем"
-#: prefs/ThemePrefs.cpp:96
+#: prefs/ThemePrefs.cpp:116
msgid "Load Theme Cache"
msgstr "ÐаванÑажиÑи ÐºÐµÑ Ñем"
-#: prefs/ThemePrefs.cpp:106
+#: prefs/ThemePrefs.cpp:131
msgid "Load Theme Cache At Startup"
msgstr "ÐаванÑажÑваÑи ÐºÐµÑ Ñем на поÑаÑкÑ"
-#: prefs/ThemePrefs.cpp:118
+#: prefs/ThemePrefs.cpp:146
msgid "Individual Theme Files"
msgstr "ÐндивÑдÑалÑÐ½Ñ Ñайли Ñеми"
-#: prefs/ThemePrefs.cpp:120
+#: prefs/ThemePrefs.cpp:150
msgid "Save Files"
msgstr "ÐбеÑегÑи Ñайли"
-#: prefs/ThemePrefs.cpp:121
+#: prefs/ThemePrefs.cpp:151
msgid "Load Files"
msgstr "ÐаванÑажиÑи Ñайли"
-#: prefs/ThemePrefs.cpp:126
-msgid "Info"
-msgstr "ÐнÑоÑмаÑÑÑ"
+#: prefs/TracksPrefs.cpp:47
+msgid "Simple"
+msgstr "ÐÑоÑÑий"
-#: prefs/ThemePrefs.cpp:129
-msgid ""
-"Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
-msgstr ""
-"ÐмÑна Ñем Ñ ÐµÐºÑпеÑименÑалÑноÑ.\n"
-"\n"
-"Щоб ÑпÑобÑваÑи ÑÑ, клаÑнÑÑÑ \"ÐбеÑегÑи ÐºÐµÑ Ñем\" поÑÑм\n"
-"знайдÑÑÑ Ñа змÑнÑÑÑ Ð·Ð¾Ð±ÑÐ°Ð¶ÐµÐ½Ð½Ñ Ñа колÑоÑи Ñ \n"
-"ImageCacheVxx.png викоÑиÑÑовÑÑÑи ÑедакÑÐ¾Ñ Ð·Ð¾Ð±ÑаженÑ, Ñакий \n"
-"Ñк Gimp.\n"
-"\n"
-"ÐлаÑнÑÑÑ \"ÐаванÑажиÑи ÐÐµÑ Ð¢ÐµÐ¼\" Ñоб заванÑажиÑи змÑÐ½ÐµÐ½Ñ Ð·Ð¾Ð±ÑаженнÑ\n"
-"Ñа колÑоÑи до Audacity.\n"
-"\n"
-"[ÐаÑаз пÑдÑÑимÑÑÑÑÑÑ Ð¿Ð°Ð½ÐµÐ»Ñ ÐºÐµÑÑÐ²Ð°Ð½Ð½Ñ Ñа колÑоÑи \n"
-"звÑÐºÐ¾Ð²Ð¾Ñ Ð´Ð¾ÑÑжки, незважаÑÑи на Ñе, Ñо Ñайли\n"
-"зобÑÐ°Ð¶ÐµÐ½Ñ Ð¿Ð¾ÐºÐ°Ð·ÑÑÑÑ Ñакож ÑнÑÑ Ð·Ð½Ð°Ñки.]\n"
+#: prefs/TracksPrefs.cpp:77
+msgid "&Update display while playing"
+msgstr "&ÐновлÑваÑи вÑдобÑÐ°Ð¶ÐµÐ½Ð½Ñ Ð¿Ñд ÑÐ°Ñ Ð²ÑдÑвоÑеннÑ"
-#: prefs/ThemePrefs.cpp:134
-msgid ""
-"You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
-msgstr ""
-"Ðи зÑбÑали Audacity з додаÑÐºÐ¾Ð²Ð¾Ñ ÐºÐ½Ð¾Ð¿ÐºÐ¾Ñ, \n"
-"'ЧаÑÑвник виведеннÑ'. ÐÑн збеÑеже C-веÑÑÑÑ \n"
-"кеÑÑ Ð·Ð¾Ð±ÑаженÑ, Ñкий поÑÑм може бÑÑи зÑбÑаний Ñк Ñиповий.\n"
+#: prefs/TracksPrefs.cpp:80
+msgid "Automatically &fit tracks vertically zoomed"
+msgstr "ÐвÑомаÑиÑно &ÑобиÑи доÑÑжки веÑÑикалÑно маÑÑÑабованими"
-#: prefs/ThemePrefs.cpp:139
-msgid ""
-"If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
-msgstr ""
-"ЯкÑо обÑано 'ÐаванÑажиÑи ÐºÐµÑ Ñем пÑд ÑÐ°Ñ Ð·Ð°Ð¿ÑÑкÑ', \n"
-"ÐºÐµÑ Ñем бÑде заванÑажено, коли пÑогÑама \n"
-"запÑÑкаÑимеÑÑÑÑ.\n"
-"\n"
+#: prefs/TracksPrefs.cpp:88
+msgid "Default View Mode:"
+msgstr "Типовий Ñежим пеÑеглÑдÑ:"
-#: prefs/ThemePrefs.cpp:142
-msgid ""
-"Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
-msgstr ""
-"ÐбеÑÑÐ³Ð°Ð½Ð½Ñ Ñа заванÑÐ°Ð¶ÐµÐ½Ð½Ñ ÑайлÑв окÑÐµÐ¼Ð¾Ñ Ñеми \n"
-"викоÑиÑÑовÑÑ Ð¾ÐºÑемий Ñайл Ð´Ð»Ñ ÐºÐ¾Ð¶Ð½Ð¾Ð³Ð¾ зобÑаженнÑ, \n"
-"але ÑнакÑе ÑÑ Ð¶ ÑдеÑ.\n"
-"\n"
+#: prefs/TracksPrefs.cpp:101
+msgid "&Select all audio in project, if none selected"
+msgstr "&ÐбиÑаÑи вÑе аÑдÑо Ñ Ð¿ÑоекÑÑ, ÑкÑо нÑÑого не вибÑано"
-#: toolbars/ControlToolBar.cpp:175
-msgid "Pause"
-msgstr "ÐÑизÑпиниÑи"
+#: prefs/TracksPrefs.cpp:104
+msgid "Enable cut &lines"
+msgstr "ÐозволиÑи &лÑнÑÑ ÑозÑÑзаннÑ"
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play"
-msgstr "ÐÑаÑи"
+#: prefs/TracksPrefs.cpp:107
+msgid "Enable &dragging of left and right selection edges"
+msgstr "ÐозволиÑи &пеÑеÑÑгÑÐ²Ð°Ð½Ð½Ñ Ð»ÑÐ²Ð¾Ñ Ñ Ð¿ÑÐ°Ð²Ð¾Ñ Ð³ÑаниÑÑ Ð²Ð¸Ð±Ð¾ÑÑ"
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
-msgstr "ÐÑдÑвоÑиÑи (з Shift â Ñ ÑиклÑ)"
+#: prefs/TracksPrefs.cpp:110
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+msgstr "«ÐеÑемÑÑÑиÑи ÑокÑÑ Ð´Ð¾ÑÑжки» &ÑиклÑÑно повÑоÑÑÑÑÑÑÑ Ð¼Ñж доÑÑжками"
+
+#: prefs/TracksPrefs.cpp:113
+msgid "Editing a &clip can move other clips"
+msgstr "РедагÑÐ²Ð°Ð½Ð½Ñ Ð²ÑдÑÑÐ·ÐºÑ Ð¼Ð¾Ð¶Ðµ пеÑеÑÑваÑи ÑнÑÑ"
+
+#: prefs/TracksPrefs.cpp:121
+msgid "Solo Button:"
+msgstr "Ðнопка \"Соло\":"
+
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
+msgstr "ÐопеÑедженнÑ"
+
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr "ÐоказÑваÑи попеÑедженнÑ/запиÑи"
+
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr "ÐÑд ÑÐ°Ñ Ð·Ð±ÐµÑÐµÐ¶ÐµÐ½Ð½Ñ Ð¿&ÑоекÑÑв"
+
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr "ÐÑд ÑÐ°Ñ Ð·Ð±ÐµÑÐµÐ¶ÐµÐ½Ð½Ñ Ð¿&оÑожнÑого пÑоекÑÑ"
+
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr "ЯкÑо на &диÑÐºÑ Ð¼Ð°Ð»Ð¾ мÑÑÑÑ"
+
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr "ЯкÑо вÑдбÑваÑÑÑÑÑ Ð¼ÑкÑÑÐ²Ð°Ð½Ð½Ñ &ÑÑеÑео пÑд ÑÐ°Ñ ÐµÐºÑпоÑÑÑ"
+
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr "ЯкÑо вÑдбÑваÑÑÑÑÑ Ð¼ÑкÑÑÐ²Ð°Ð½Ð½Ñ &моно пÑд ÑÐ°Ñ ÐµÐºÑпоÑÑÑ"
+
+#: toolbars/ControlToolBar.cpp:170 toolbars/ControlToolBar.cpp:205
+msgid "Pause"
+msgstr "ÐÑизÑпиниÑи"
-#: toolbars/ControlToolBar.cpp:183
+#: toolbars/ControlToolBar.cpp:178 toolbars/ControlToolBar.cpp:207
+#: widgets/ProgressDialog.cpp:1101
msgid "Stop"
msgstr "ÐÑпиниÑи"
-#: toolbars/ControlToolBar.cpp:186
-msgid "Skip to Start"
-msgstr "ÐеÑейÑи на поÑаÑок доÑÑжки"
+#: toolbars/ControlToolBar.cpp:190 toolbars/ControlToolBar.cpp:211
+msgid "Clean Speech"
+msgstr "Clean Speech"
-#: toolbars/ControlToolBar.cpp:189
-msgid "Skip to End"
-msgstr "ÐеÑейÑи на кÑнеÑÑ Ð´Ð¾ÑÑжки"
+#: toolbars/ControlToolBar.cpp:206
+msgid "Play (Shift for Loop Play)"
+msgstr "ÐÑдÑвоÑиÑи (з Shift â Ñ ÑиклÑ)"
-#: toolbars/ControlToolBar.cpp:192
+#: toolbars/ControlToolBar.cpp:210
msgid "Record (Shift for Append Record)"
msgstr "ÐÐ°Ð¿Ð¸Ñ (Shift Ð´Ð»Ñ Ð´Ð¾Ð´Ð°Ð²Ð°Ð½Ð½Ñ Ð·Ð°Ð¿Ð¸ÑÑ)"
-#: toolbars/ControlToolBar.cpp:195
-msgid "Clean Speech"
-msgstr "Clean Speech"
-
-#: toolbars/ControlToolBar.cpp:540 toolbars/ControlToolBar.cpp:869
+#: toolbars/ControlToolBar.cpp:573 toolbars/ControlToolBar.cpp:905
msgid "Error while opening sound device. "
msgstr "Ðомилка пÑд ÑÐ°Ñ Ð²ÑдкÑиÑÑÑ Ð·Ð²Ñкового пÑиÑÑÑоÑ. "
-#: toolbars/ControlToolBar.cpp:706
+#: toolbars/ControlToolBar.cpp:743
msgid ""
"Recording in CleanSpeech mode is not possible when a track, or more than one "
"project, is already open."
@@ -8996,61 +9439,53 @@ msgstr ""
"ÐÐ°Ð¿Ð¸Ñ Ñ ÑÐµÐ¶Ð¸Ð¼Ñ CleanSpeech неможливий, коли вже вÑдкÑиÑо доÑÑÐ¶ÐºÑ Ð°Ð±Ð¾ бÑлÑÑе "
"за один пÑоекÑ."
-#: toolbars/ControlToolBar.cpp:707
+#: toolbars/ControlToolBar.cpp:744
msgid "Recording not permitted"
msgstr "ÐÐ°Ð¿Ð¸Ñ Ð½Ðµ дозволено"
-#: toolbars/DeviceToolBar.cpp:113 toolbars/DeviceToolBar.cpp:115
+#: toolbars/DeviceToolBar.cpp:109 toolbars/DeviceToolBar.cpp:205
msgid "Output Device"
msgstr "ÐÑиÑÑÑÑй виводÑ"
-#: toolbars/DeviceToolBar.cpp:134 toolbars/DeviceToolBar.cpp:136
+#: toolbars/DeviceToolBar.cpp:127 toolbars/DeviceToolBar.cpp:206
msgid "Input Device"
msgstr "ÐÑиÑÑÑÑй вводÑ"
-#: toolbars/EditToolBar.cpp:139
+#: toolbars/EditToolBar.cpp:136
msgid "Trim outside selection"
-msgstr "ÐÑдÑÑзаÑи ÑÑе поза видÑленим"
+msgstr "ÐÑдÑÑзаÑи ÑÑе поза вибÑаним"
-#: toolbars/EditToolBar.cpp:141
+#: toolbars/EditToolBar.cpp:138
msgid "Silence selection"
msgstr "ÐаповниÑи ÑиÑеÑ"
-#: toolbars/EditToolBar.cpp:150
+#: toolbars/EditToolBar.cpp:150 toolbars/EditToolBar.cpp:197
msgid "Link Tracks"
msgstr "ÐâÑднаÑи доÑÑжки"
-#: toolbars/EditToolBar.cpp:155
+#: toolbars/EditToolBar.cpp:155 toolbars/EditToolBar.cpp:198
msgid "Zoom In"
msgstr "ÐбÑлÑÑиÑи"
-#: toolbars/EditToolBar.cpp:157
+#: toolbars/EditToolBar.cpp:157 toolbars/EditToolBar.cpp:199
msgid "Zoom Out"
msgstr "ÐменÑиÑи"
-#: toolbars/EditToolBar.cpp:161
-msgid "Zoom Toggle"
-msgstr "Тип маÑÑÑабÑваннÑ"
-
-#: toolbars/EditToolBar.cpp:165
-msgid "Fit Selection"
-msgstr "РозмÑÑÑиÑи видÑÐ»ÐµÐ½Ñ Ð¾Ð±Ð»Ð°ÑÑÑ"
-
-#: toolbars/EditToolBar.cpp:165
+#: toolbars/EditToolBar.cpp:160
msgid "Fit selection in window"
-msgstr "РозмÑÑÑиÑи видÑлене Ñ Ð²ÑкнÑ"
+msgstr "РозмÑÑÑиÑи вибÑане Ñ Ð²ÑкнÑ"
-#: toolbars/EditToolBar.cpp:167
-msgid "Fit Project"
-msgstr "РозмÑÑÑиÑи пÑоекÑ"
-
-#: toolbars/EditToolBar.cpp:167
+#: toolbars/EditToolBar.cpp:162
msgid "Fit project in window"
msgstr "РозмÑÑÑиÑи пÑÐ¾ÐµÐºÑ Ñ Ð²ÑкнÑ"
-#: toolbars/MeterToolBar.cpp:50
-msgid "Meter"
-msgstr "ÐндикаÑоÑ"
+#: toolbars/EditToolBar.cpp:200
+msgid "Fit Selection"
+msgstr "РозмÑÑÑиÑи вибÑÐ°Ð½Ñ Ð¾Ð±Ð»Ð°ÑÑÑ"
+
+#: toolbars/EditToolBar.cpp:201
+msgid "Fit Project"
+msgstr "РозмÑÑÑиÑи пÑоекÑ"
#: toolbars/MeterToolBar.cpp:80
msgid "Play Meter"
@@ -9068,11 +9503,11 @@ msgstr "ÐндикаÑÐ¾Ñ Ð·Ð°Ð¿Ð¸ÑÑ"
msgid "Meter-Record"
msgstr "ÐндикаÑÐ¾Ñ Ð·Ð°Ð¿Ð¸ÑÑ"
-#: toolbars/MeterToolBar.cpp:94
+#: toolbars/MeterToolBar.cpp:123
msgid "Output level meter"
msgstr "ÐндикаÑÐ¾Ñ ÑÑÐ²Ð½Ñ Ð½Ð° виÑ
одÑ"
-#: toolbars/MeterToolBar.cpp:95
+#: toolbars/MeterToolBar.cpp:124
msgid "Input level meter - click to monitor input"
msgstr "ÐндикаÑÐ¾Ñ ÑÑÐ²Ð½Ñ Ð²Ñ
одÑ. ÐлаÑнÑÑÑ, Ñоб запÑÑÑиÑи конÑÑÐ¾Ð»Ñ Ð²Ñ
одÑ."
@@ -9084,7 +9519,7 @@ msgstr "Ð ÑÐ²ÐµÐ½Ñ Ð½Ð° виÑ
одÑ"
msgid "Slider Output"
msgstr "ÐовзÑнок виводÑ"
-#: toolbars/MixerToolBar.cpp:101 widgets/Meter.cpp:870
+#: toolbars/MixerToolBar.cpp:101 widgets/Meter.cpp:869
msgid "Input Volume"
msgstr "Ð ÑÐ²ÐµÐ½Ñ Ð½Ð° вÑ
одÑ"
@@ -9096,9 +9531,17 @@ msgstr "ÐовзÑнок вводÑ"
msgid "Input Source"
msgstr "ÐÑ
Ñдне джеÑело"
-#: toolbars/SelectionBar.cpp:86
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr "ÐÑдомоÑÑÑ Ð¿Ñо джеÑело вÑ
ÑдниÑ
даниÑ
вÑдÑÑÑнÑ."
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr "ÐибеÑÑÑÑ джеÑело вÑ
Ñдного ÑигналÑ"
+
+#: toolbars/SelectionBar.cpp:86 toolbars/SelectionBar.cpp:292
msgid "Selection"
-msgstr "ÐидÑлена облаÑÑÑ"
+msgstr "ÐибÑана облаÑÑÑ"
#: toolbars/SelectionBar.cpp:135 toolbars/SelectionBar.cpp:194
msgid "Project Rate (Hz):"
@@ -9106,7 +9549,7 @@ msgstr "ЧаÑÑоÑа пÑоекÑÑ (ÐÑ):"
#: toolbars/SelectionBar.cpp:149 toolbars/SelectionBar.cpp:255
msgid "Selection Start:"
-msgstr "ÐоÑаÑок видÑÐ»ÐµÐ½Ð¾Ñ Ð¾Ð±Ð»Ð°ÑÑÑ:"
+msgstr "ÐоÑаÑок вибÑÐ°Ð½Ð¾Ñ Ð¾Ð±Ð»Ð°ÑÑÑ:"
#: toolbars/SelectionBar.cpp:163 toolbars/SelectionBar.cpp:164
#: toolbars/SelectionBar.cpp:261
@@ -9127,28 +9570,28 @@ msgstr "ÐÑив'Ñзка"
#: toolbars/SelectionBar.cpp:260
msgid "Selection "
-msgstr "ÐидÑлена облаÑÑÑ"
+msgstr "ÐибÑана облаÑÑÑ"
-#: toolbars/SelectionBar.cpp:325
+#: toolbars/SelectionBar.cpp:340
msgid "Selection Length"
-msgstr "ТÑивалÑÑÑÑ Ð²Ð¸Ð´ÑÐ»ÐµÐ½Ð¾Ñ Ð¾Ð±Ð»Ð°ÑÑÑ"
+msgstr "ТÑивалÑÑÑÑ Ð²Ð¸Ð±ÑÐ°Ð½Ð¾Ñ Ð¾Ð±Ð»Ð°ÑÑÑ"
-#: toolbars/SelectionBar.cpp:333
+#: toolbars/SelectionBar.cpp:348
msgid "Selection End"
-msgstr "ÐÑнеÑÑ Ð²Ð¸Ð´ÑÐ»ÐµÐ½Ð¾Ñ Ð¾Ð±Ð»Ð°ÑÑÑ"
+msgstr "ÐÑнеÑÑ Ð²Ð¸Ð±ÑÐ°Ð½Ð¾Ñ Ð¾Ð±Ð»Ð°ÑÑÑ"
-#: toolbars/ToolBar.cpp:98
+#: toolbars/ToolBar.cpp:120
#, c-format
msgid "Audacity %s ToolBar"
msgstr "ÐÐ°Ð½ÐµÐ»Ñ ÑнÑÑÑÑменÑÑв Audacity %s"
-#: toolbars/ToolDock.cpp:74 toolbars/ToolDock.cpp:75
+#: toolbars/ToolDock.cpp:75 toolbars/ToolDock.cpp:76
msgid "ToolDock"
msgstr "ÐокÐнÑÑÑÑменÑÑв"
#: toolbars/ToolsToolBar.cpp:63
msgid "Click and drag to select audio"
-msgstr "ÐлаÑнÑÑÑ Ñа пеÑеÑÑгнÑÑÑ Ñоб видÑлиÑи звÑковий ÑÑагменÑ"
+msgstr "ÐлаÑнÑÑÑ Ñа пеÑеÑÑгнÑÑÑ Ñоб вибÑаÑи звÑковий ÑÑагменÑ"
#: toolbars/ToolsToolBar.cpp:64
msgid "Click and drag to edit the amplitude envelope"
@@ -9176,219 +9619,188 @@ msgstr "ÐÑва=ÐаблизиÑи, ÐÑава=ÐÑддалиÑи, СеÑедн
msgid "Click and drag to move a track in time"
msgstr "ÐлаÑнÑÑÑ Ñа пеÑеÑÑгнÑÑÑ Ð´Ð»Ñ Ð¿ÐµÑемÑÑÐµÐ½Ð½Ñ Ð´Ð¾ÑÑжки Ñ ÑаÑÑ"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr "ÐнÑÑÑÑменÑи"
-
-#: toolbars/ToolsToolBar.cpp:147 toolbars/ToolsToolBar.cpp:182
-msgid "Selection Tool"
-msgstr "ÐидÑленнÑ"
-
-#: toolbars/ToolsToolBar.cpp:148 toolbars/ToolsToolBar.cpp:183
-msgid "Envelope Tool"
-msgstr "ÐмÑна обвÑдноÑ"
-
-#: toolbars/ToolsToolBar.cpp:149
-msgid "Time Shift Tool"
-msgstr "ÐÑÑв Ñ ÑаÑÑ"
-
-#: toolbars/ToolsToolBar.cpp:150 toolbars/ToolsToolBar.cpp:185
-msgid "Zoom Tool"
-msgstr "ÐаÑÑÑабÑваннÑ"
-
-#: toolbars/ToolsToolBar.cpp:151 toolbars/ToolsToolBar.cpp:184
-msgid "Draw Tool"
-msgstr "ÐмÑна обвÑдноÑ"
-
#: toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
msgstr "УнÑвеÑÑалÑний ÑнÑÑÑÑменÑ"
-#: toolbars/ToolsToolBar.cpp:186
+#: toolbars/ToolsToolBar.cpp:190
msgid "Slide Tool"
msgstr "ÐеÑемÑÑеннÑ"
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr "УнÑвеÑÑалÑний ÑнÑÑÑÑменÑ"
-
-#: toolbars/TranscriptionToolBar.cpp:84
-msgid "Transcription"
-msgstr "ÐеÑезапиÑ"
-
-#: toolbars/TranscriptionToolBar.cpp:171
+#: toolbars/TranscriptionToolBar.cpp:170
msgid "Play at selected speed"
msgstr "ÐÑдÑвоÑиÑи на обÑанÑй ÑвидкоÑÑÑ"
-#: toolbars/TranscriptionToolBar.cpp:172
-msgid "Play-at-speed"
-msgstr "ÐÑдÑвоÑиÑи-на-ÑвидкоÑÑÑ"
-
-#: toolbars/TranscriptionToolBar.cpp:178 toolbars/TranscriptionToolBar.cpp:183
+#: toolbars/TranscriptionToolBar.cpp:176 toolbars/TranscriptionToolBar.cpp:181
+#: toolbars/TranscriptionToolBar.cpp:262
msgid "Playback Speed"
msgstr "ШвидкÑÑÑÑ Ð¿ÑогÑаваннÑ"
-#: toolbars/TranscriptionToolBar.cpp:196
+#: toolbars/TranscriptionToolBar.cpp:194
msgid "Adjust left selection to next onset"
-msgstr "УзгодиÑи видÑÐ»ÐµÐ½Ñ Ð¾Ð±Ð»Ð°ÑÑÑ Ð»ÑвоÑÑÑ Ð· поÑаÑком наÑÑÑпного"
+msgstr "УзгодиÑи вибÑÐ°Ð½Ñ Ð¾Ð±Ð»Ð°ÑÑÑ Ð»ÑвоÑÑÑ Ð· поÑаÑком наÑÑÑпного"
-#: toolbars/TranscriptionToolBar.cpp:197
-msgid "Left-to-On"
-msgstr "ÐÑве-до-поÑаÑкÑ"
-
-#: toolbars/TranscriptionToolBar.cpp:199
+#: toolbars/TranscriptionToolBar.cpp:196
msgid "Adjust right selection to previous offset"
-msgstr "УзгодиÑи видÑÐ»ÐµÐ½Ñ Ð¾Ð±Ð»Ð°ÑÑÑ Ð¿ÑавоÑÑÑ Ð· виÑÑÑпом попеÑеднÑого"
+msgstr "УзгодиÑи вибÑÐ°Ð½Ñ Ð¾Ð±Ð»Ð°ÑÑÑ Ð¿ÑавоÑÑÑ Ð· виÑÑÑпом попеÑеднÑого"
-#: toolbars/TranscriptionToolBar.cpp:200
-msgid "Right-to-Off"
-msgstr "ÐÑаве-до-виÑÑÑпÑ"
-
-#: toolbars/TranscriptionToolBar.cpp:202
+#: toolbars/TranscriptionToolBar.cpp:198
msgid "Adjust left selection to next offset"
-msgstr "УзгодиÑи видÑÐ»ÐµÐ½Ñ Ð¾Ð±Ð»Ð°ÑÑÑ Ð»ÑвоÑÑÑ Ð· виÑÑÑпом наÑÑÑпного"
+msgstr "УзгодиÑи вибÑÐ°Ð½Ñ Ð¾Ð±Ð»Ð°ÑÑÑ Ð»ÑвоÑÑÑ Ð· виÑÑÑпом наÑÑÑпного"
-#: toolbars/TranscriptionToolBar.cpp:203
-msgid "Left-to-Off"
-msgstr "ÐÑве-до-виÑÑÑпÑ"
-
-#: toolbars/TranscriptionToolBar.cpp:205
+#: toolbars/TranscriptionToolBar.cpp:200
msgid "Adjust right selection to previous onset"
-msgstr "УзгодиÑи видÑÐ»ÐµÐ½Ñ Ð¾Ð±Ð»Ð°ÑÑÑ Ð¿ÑавоÑÑÑ Ð· поÑаÑком попеÑеднÑого"
+msgstr "УзгодиÑи вибÑÐ°Ð½Ñ Ð¾Ð±Ð»Ð°ÑÑÑ Ð¿ÑавоÑÑÑ Ð· поÑаÑком попеÑеднÑого"
-#: toolbars/TranscriptionToolBar.cpp:206
-msgid "Right-to-On"
-msgstr "ÐÑаве-до-поÑаÑкÑ"
-
-#: toolbars/TranscriptionToolBar.cpp:208
+#: toolbars/TranscriptionToolBar.cpp:202
msgid "Select region of sound around cursor"
-msgstr "ÐидÑлиÑи облаÑÑÑ Ð·Ð²ÑÐºÑ Ð½Ð°Ð²ÐºÐ¾Ð»Ð¾ кÑÑÑоÑа"
+msgstr "ÐибÑаÑи облаÑÑÑ Ð·Ð²ÑÐºÑ Ð½Ð°Ð²ÐºÐ¾Ð»Ð¾ кÑÑÑоÑа"
-#: toolbars/TranscriptionToolBar.cpp:209
-msgid "Select-Sound"
-msgstr "ÐидÑлиÑи-звÑк"
-
-#: toolbars/TranscriptionToolBar.cpp:211
+#: toolbars/TranscriptionToolBar.cpp:204
msgid "Select region of silence around cursor"
-msgstr "ÐидÑлиÑи облаÑÑÑ ÑиÑÑ Ð½Ð°Ð²ÐºÐ¾Ð»Ð¾ кÑÑÑоÑа"
-
-#: toolbars/TranscriptionToolBar.cpp:212
-msgid "Select-Silence"
-msgstr "ÐидÑлиÑи-ÑиÑÑ"
+msgstr "ÐибÑаÑи облаÑÑÑ ÑиÑÑ Ð½Ð°Ð²ÐºÐ¾Ð»Ð¾ кÑÑÑоÑа"
-#: toolbars/TranscriptionToolBar.cpp:214
+#: toolbars/TranscriptionToolBar.cpp:206
msgid "Automatically make labels from words"
msgstr "ÐвÑомаÑиÑно ÑобиÑи познаÑки з ÑлÑв"
-#: toolbars/TranscriptionToolBar.cpp:215
-msgid "Make Labels"
-msgstr "ÐÑобиÑи познаÑки"
-
-#: toolbars/TranscriptionToolBar.cpp:217
+#: toolbars/TranscriptionToolBar.cpp:208
msgid "Add label at selection"
-msgstr "ÐодаÑи познаÑÐºÑ Ð´Ð¾ видÑÐ»ÐµÐ½Ð¾Ñ Ð¾Ð±Ð»Ð°ÑÑÑ"
+msgstr "ÐодаÑи познаÑÐºÑ Ð´Ð¾ вибÑÐ°Ð½Ð¾Ñ Ð¾Ð±Ð»Ð°ÑÑÑ"
-#: toolbars/TranscriptionToolBar.cpp:218
-msgid "Add Label"
-msgstr "ÐодаÑи познаÑкÑ"
-
-#: toolbars/TranscriptionToolBar.cpp:220
+#: toolbars/TranscriptionToolBar.cpp:210
msgid "Calibrate voicekey"
msgstr "ÐалÑбÑÑваÑи клÑÑ Ð³Ð¾Ð»Ð¾ÑÑ"
-#: toolbars/TranscriptionToolBar.cpp:221
-msgid "Calibrate"
-msgstr "ÐалÑбÑÑваÑи"
-
-#: toolbars/TranscriptionToolBar.cpp:225
+#: toolbars/TranscriptionToolBar.cpp:214
msgid "Adjust Sensitivity"
msgstr "ÐалаÑÑÑваÑи ÑÑÑливÑÑÑÑ"
-#: toolbars/TranscriptionToolBar.cpp:230
+#: toolbars/TranscriptionToolBar.cpp:219 toolbars/TranscriptionToolBar.cpp:275
msgid "Sensitivity"
msgstr "ЧÑÑливÑÑÑÑ"
-#: toolbars/TranscriptionToolBar.cpp:235
+#: toolbars/TranscriptionToolBar.cpp:224
msgid "Energy"
msgstr "ÐнеÑгÑÑ"
-#: toolbars/TranscriptionToolBar.cpp:236
+#: toolbars/TranscriptionToolBar.cpp:225
msgid "Sign Changes (Low Threshold)"
msgstr "ÐмÑни Ð·Ð½Ð°ÐºÑ (нижнÑй поÑÑг)"
-#: toolbars/TranscriptionToolBar.cpp:237
+#: toolbars/TranscriptionToolBar.cpp:226
msgid "Sign Changes (High Threshold)"
msgstr "ÐмÑни Ð·Ð½Ð°ÐºÑ (веÑÑ
нÑй поÑÑг)"
-#: toolbars/TranscriptionToolBar.cpp:238
+#: toolbars/TranscriptionToolBar.cpp:227
msgid "Direction Changes (Low Threshold)"
msgstr "ÐмÑни напÑÑÐ¼ÐºÑ (нижнÑй поÑÑг)"
-#: toolbars/TranscriptionToolBar.cpp:239
+#: toolbars/TranscriptionToolBar.cpp:228
msgid "Direction Changes (High Threshold)"
msgstr "ÐмÑни напÑÑÐ¼ÐºÑ (веÑÑ
нÑй поÑÑг)"
-#: toolbars/TranscriptionToolBar.cpp:247
+#: toolbars/TranscriptionToolBar.cpp:236 toolbars/TranscriptionToolBar.cpp:276
msgid "Key type"
msgstr "Тип клÑÑа"
-#: widgets/AButton.cpp:303
+#: toolbars/TranscriptionToolBar.cpp:261
+msgid "Play-at-speed"
+msgstr "ÐÑдÑвоÑиÑи-на-ÑвидкоÑÑÑ"
+
+#: toolbars/TranscriptionToolBar.cpp:265
+msgid "Left-to-On"
+msgstr "ÐÑве-до-поÑаÑкÑ"
+
+#: toolbars/TranscriptionToolBar.cpp:266
+msgid "Right-to-Off"
+msgstr "ÐÑаве-до-виÑÑÑпÑ"
+
+#: toolbars/TranscriptionToolBar.cpp:267
+msgid "Left-to-Off"
+msgstr "ÐÑве-до-виÑÑÑпÑ"
+
+#: toolbars/TranscriptionToolBar.cpp:268
+msgid "Right-to-On"
+msgstr "ÐÑаве-до-поÑаÑкÑ"
+
+#: toolbars/TranscriptionToolBar.cpp:269
+msgid "Select-Sound"
+msgstr "ÐибÑаÑи-звÑк"
+
+#: toolbars/TranscriptionToolBar.cpp:270
+msgid "Select-Silence"
+msgstr "ÐибÑаÑи-ÑиÑÑ"
+
+#: toolbars/TranscriptionToolBar.cpp:271
+msgid "Make Labels"
+msgstr "ÐÑобиÑи познаÑки"
+
+#: toolbars/TranscriptionToolBar.cpp:272
+msgid "Add Label"
+msgstr "ÐодаÑи познаÑкÑ"
+
+#: toolbars/TranscriptionToolBar.cpp:273
+msgid "Calibrate"
+msgstr "ÐалÑбÑÑваÑи"
+
+#: widgets/AButton.cpp:300
msgid " (disabled)"
msgstr " (вимкнено)"
-#: widgets/AButton.cpp:461
+#: widgets/AButton.cpp:458
msgid "Press"
msgstr "ÐаÑиÑнÑÑÑ"
-#: widgets/AButton.cpp:540
+#: widgets/AButton.cpp:537
msgid "Button"
msgstr "Ðнопка"
-#. i18n-hint: One-letter abbreviation for Left, in VU Meter
#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
-#: widgets/ASlider.cpp:612 widgets/Meter.cpp:248
+#. i18n-hint: One-letter abbreviation for Left, in VU Meter
+#: widgets/ASlider.cpp:625 widgets/Meter.cpp:248
msgid "L"
msgstr "Ð"
-#. i18n-hint: One-letter abbreviation for Right, in VU Meter
#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
-#: widgets/ASlider.cpp:615 widgets/Meter.cpp:250
+#. i18n-hint: One-letter abbreviation for Right, in VU Meter
+#: widgets/ASlider.cpp:628 widgets/Meter.cpp:250
msgid "R"
msgstr "Ð"
-#: widgets/ASlider.cpp:678
+#: widgets/ASlider.cpp:691
msgid "Center"
msgstr "ЦенÑÑ"
-#: widgets/ASlider.cpp:682
+#: widgets/ASlider.cpp:695
msgid "Left"
msgstr "ÐÑвоÑÑÑ"
-#: widgets/ASlider.cpp:685
+#: widgets/ASlider.cpp:698
msgid "Right"
msgstr "ÐÑавоÑÑÑ"
-#: widgets/ErrorDialog.cpp:98
+#: widgets/ErrorDialog.cpp:96
msgid "Help"
msgstr "ÐовÑдка"
-#: widgets/ErrorDialog.cpp:137
+#: widgets/ErrorDialog.cpp:166
msgid "<"
msgstr "<"
-#: widgets/ErrorDialog.cpp:138
+#: widgets/ErrorDialog.cpp:167
msgid ">"
msgstr ">"
-#: widgets/ErrorDialog.cpp:142
+#: widgets/ErrorDialog.cpp:171
msgid "Forwards"
msgstr "ÐпеÑед"
-#: widgets/ErrorDialog.cpp:143
+#: widgets/ErrorDialog.cpp:172
msgid "Backwards"
msgstr "Ðазад"
-#: widgets/ErrorDialog.cpp:255
+#: widgets/ErrorDialog.cpp:275
msgid "Help on the Internet"
msgstr "ÐовÑдка Ñ ÐнÑеÑнеÑÑ"
@@ -9396,17 +9808,17 @@ msgstr "ÐовÑдка Ñ ÐнÑеÑнеÑÑ"
msgid "Grabber"
msgstr "ÐаÑ
опленнÑ"
-#: widgets/Grid.cpp:708
+#: widgets/Grid.cpp:703
#, c-format
msgid "%d rows, %d columns"
msgstr "%d ÑÑдкÑв, %d ÑÑовпÑикÑв"
-#: widgets/Grid.cpp:714 widgets/Grid.cpp:841
+#: widgets/Grid.cpp:709 widgets/Grid.cpp:836
#, c-format
msgid "Row %d"
msgstr "Ð Ñдок %d"
-#: widgets/Grid.cpp:856
+#: widgets/Grid.cpp:851
msgid "Empty"
msgstr "ÐоÑожнÑй"
@@ -9438,27 +9850,27 @@ msgstr "ÐеÑÑикалÑно ÑÑеÑео"
msgid "Preferences..."
msgstr "УподобаннÑ..."
-#: widgets/Meter.cpp:872
+#: widgets/Meter.cpp:871
msgid "Mix Volume"
msgstr "ÐÑÑнÑÑÑÑ Ð½Ð° вÑ
одÑ"
-#: widgets/Meter.cpp:1141
+#: widgets/Meter.cpp:1140
msgid ""
"This determines how often the meter is refreshed.\n"
"If you have a slower PC you may want to select a\n"
"lower refresh rate (30 per second or lower), so that\n"
-"audio qualtiy is not affected by the meter display."
+"audio quality is not affected by the meter display."
msgstr ""
"Це визнаÑÐ°Ñ ÑаÑÑоÑÑ Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ ÑндикаÑоÑÑ.\n"
"ЯкÑо Ð²Ð°Ñ ÐРнедоÑÑаÑнÑо поÑÑжний, можна\n"
"обÑаÑи нижÑÑ ÑаÑÑоÑÑ Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ (30 за ÑекÑÐ½Ð´Ñ \n"
"Ñи нижÑÑ), Ñак Ñоб Ñе не вплинÑло на ÑкÑÑÑÑ Ð·Ð²ÑкÑ."
-#: widgets/Meter.cpp:1142
+#: widgets/Meter.cpp:1141
msgid "Meter refresh rate per second [1-100]: "
msgstr "ЧаÑÑоÑа Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ ÑндикаÑоÑа (ÑазÑв на ÑекÑндÑ) [1-100]: "
-#: widgets/Meter.cpp:1143
+#: widgets/Meter.cpp:1142
msgid "Meter Preferences"
msgstr "ÐаÑамеÑÑи ÑндикаÑоÑа"
@@ -9470,26 +9882,26 @@ msgstr " ÐибеÑÑÑÑ Ð´ÑÑ "
msgid "Please select an action"
msgstr "ÐÑÐ´Ñ Ð»Ð°Ñка, обеÑÑÑÑ Ð´ÑÑ"
-#: widgets/ProgressDialog.cpp:1058
+#: widgets/ProgressDialog.cpp:1060
msgid "Elapsed Time:"
msgstr "ЧаÑ, Ñо пÑойÑов:"
-#: widgets/ProgressDialog.cpp:1078
+#: widgets/ProgressDialog.cpp:1080
msgid "Remaining Time:"
msgstr "ЧаÑ, Ñо залиÑивÑÑ:"
-#: widgets/ProgressDialog.cpp:1095
+#: widgets/ProgressDialog.cpp:1108
msgid "Cancel"
msgstr "СкаÑÑваÑи"
-#: widgets/Ruler.cpp:1316 widgets/Ruler.cpp:1317
+#: widgets/Ruler.cpp:1584 widgets/Ruler.cpp:1585
msgid "Vertical Ruler"
msgstr "ÐеÑÑикалÑний ÑндикаÑоÑ"
#. i18n-hint: Format string for displaying time in seconds. Change the comma
#. * in the middle to the 1000s separator for your locale, and the 'seconds'
#. * on the end to the word for seconds. Don't change the numbers.
-#: widgets/TimeTextCtrl.cpp:267
+#: widgets/TimeTextCtrl.cpp:268
msgid "01000,01000 seconds"
msgstr "01000,01000 ÑекÑнд"
@@ -9498,13 +9910,13 @@ msgstr "01000,01000 ÑекÑнд"
#. * abbreviation for minutes and 's' to the abbreviation for seconds. Don't
#. * change the numbers unless there aren't 60 seconds in a minute in your
#. * locale
-#: widgets/TimeTextCtrl.cpp:276
+#: widgets/TimeTextCtrl.cpp:277
msgid "0100 h 060 m 060 s"
msgstr "0100 г 060 Ñ
в 060 Ñ"
#. i18n-hint: Name of time display format that shows time in days, hours,
#. * minutes and seconds
-#: widgets/TimeTextCtrl.cpp:279
+#: widgets/TimeTextCtrl.cpp:280
msgid "dd:hh:mm:ss"
msgstr "дд:гг:Ñ
Ñ
:ÑÑ"
@@ -9513,13 +9925,13 @@ msgstr "дд:гг:Ñ
Ñ
:ÑÑ"
#. * for hours, 'm' to the abbreviation for minutes and 's' to the
#. * abbreviation for seconds. Don't change the numbers unless there aren't
#. * 24 hours in a day in your locale
-#: widgets/TimeTextCtrl.cpp:285
+#: widgets/TimeTextCtrl.cpp:286
msgid "0100 days 024 h 060 m 060 s"
msgstr "0100 днÑв 024 г 060 Ñ
в 060 Ñ"
#. i18n-hint: Name of time display format that shows time in hours,
-#. * minutes, seconds and hundreths of a second (1/100 second)
-#: widgets/TimeTextCtrl.cpp:288
+#. * minutes, seconds and hundredths of a second (1/100 second)
+#: widgets/TimeTextCtrl.cpp:289
msgid "hh:mm:ss + hundredths"
msgstr "гг:Ñ
Ñ
:ÑÑ + ÑоÑÑ"
@@ -9528,13 +9940,13 @@ msgstr "гг:Ñ
Ñ
:ÑÑ + ÑоÑÑ"
#. * 'm' to the abbreviation for minutes and 's' to the abbreviation for seconds (the
#. * hundredths are shown as decimal seconds) . Don't change the numbers
#. * unless there aren't 60 minutes in an hour in your locale
-#: widgets/TimeTextCtrl.cpp:294
+#: widgets/TimeTextCtrl.cpp:295
msgid "0100 h 060 m 060.0100 s"
msgstr "0100 г 060 Ñ
в 060.0100 Ñ"
#. i18n-hint: Name of time display format that shows time in hours,
#. * minutes, seconds and milliseconds (1/1000 second)
-#: widgets/TimeTextCtrl.cpp:297
+#: widgets/TimeTextCtrl.cpp:298
msgid "hh:mm:ss + milliseconds"
msgstr "гг:Ñ
Ñ
:ÑÑ + мÑлÑÑекÑнд"
@@ -9543,13 +9955,13 @@ msgstr "гг:Ñ
Ñ
:ÑÑ + мÑлÑÑекÑнд"
#. * abbreviation for minutes and 's' to the abbreviation for seconds (the
#. * milliseconds are shown as decimal seconds) . Don't change the numbers
#. * unless there aren't 60 minutes in an hour in your locale
-#: widgets/TimeTextCtrl.cpp:303
+#: widgets/TimeTextCtrl.cpp:304
msgid "0100 h 060 m 060.01000 s"
msgstr "0100 г 060 Ñ
в 060.01000 Ñ"
#. i18n-hint: Name of time display format that shows time in hours,
#. * minutes, seconds and samples (at the current project sample rate)
-#: widgets/TimeTextCtrl.cpp:306
+#: widgets/TimeTextCtrl.cpp:307
msgid "hh:mm:ss + samples"
msgstr "гг:Ñ
Ñ
:ÑÑ + ÑÑагменÑи"
@@ -9558,13 +9970,13 @@ msgstr "гг:Ñ
Ñ
:ÑÑ + ÑÑагменÑи"
#. * abbreviation for minutes, 's' to the abbreviation for seconds and
#. * translate samples . Don't change the numbers
#. * unless there aren't 60 seconds in a minute in your locale
-#: widgets/TimeTextCtrl.cpp:312
+#: widgets/TimeTextCtrl.cpp:313
msgid "0100 h 060 m 060 s+.# samples"
msgstr "0100 г 060 Ñ
в 060 Ñ+.# ÑÑагменÑи"
#. i18n-hint: Name of time display format that shows time in samples (at the
#. * current project sample rate)
-#: widgets/TimeTextCtrl.cpp:315
+#: widgets/TimeTextCtrl.cpp:316
msgid "samples"
msgstr "ÑÑагменÑи"
@@ -9572,13 +9984,13 @@ msgstr "ÑÑагменÑи"
#. * Change the ',' to the 1000s separator for your locale, and translate
#. * samples. If 1000s aren't a base multiple for your number system, then you
#. * can change the numbers to an appropriate one, and put a 0 on the front
-#: widgets/TimeTextCtrl.cpp:320
+#: widgets/TimeTextCtrl.cpp:321
msgid "01000,01000,01000 samples|#"
msgstr "01000,01000,01000 ÑÑагменÑи|#"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
#. * seconds and frames at 24 frames per second (commonly used for films)
-#: widgets/TimeTextCtrl.cpp:323
+#: widgets/TimeTextCtrl.cpp:324
msgid "hh:mm:ss + film frames (24 fps)"
msgstr "гг:Ñ
Ñ
:ÑÑ + кадÑÑв плÑвки (24 кд/Ñ)"
@@ -9587,26 +9999,26 @@ msgstr "гг:Ñ
Ñ
:ÑÑ + кадÑÑв плÑвки (24 кд/Ñ)"
#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
#. * for seconds and translate 'frames' . Don't change the numbers
#. * unless there aren't 60 seconds in a minute in your locale
-#: widgets/TimeTextCtrl.cpp:329
+#: widgets/TimeTextCtrl.cpp:330
msgid "0100 h 060 m 060 s+.24 frames"
msgstr "0100 г 060 Ñ
в 060 Ñ+.24 кадÑÑв"
#. i18n-hint: Name of time display format that shows time in frames (lots of
#. * frames) at 24 frames per second (commonly used for films)
-#: widgets/TimeTextCtrl.cpp:332
+#: widgets/TimeTextCtrl.cpp:333
msgid "film frames (24 fps)"
msgstr "кадÑи плÑвки (24 кдÑ/Ñ)"
#. i18n-hint: Format string for displaying time in frames at 24 frames per
#. * second. Translate 'frames' and leave the rest alone
-#: widgets/TimeTextCtrl.cpp:335
+#: widgets/TimeTextCtrl.cpp:336
msgid "01000,01000 frames|24"
msgstr "01000,01000 кадÑÑв|24"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
#. * seconds and frames at NTSC TV drop-frame rate (used for American /
-#. * Japananese TV, and very odd)
-#: widgets/TimeTextCtrl.cpp:339
+#. * Japanese TV, and very odd)
+#: widgets/TimeTextCtrl.cpp:340
msgid "hh:mm:ss + NTSC drop frames"
msgstr "гг:Ñ
Ñ
:ÑÑ + NTSC викинÑÑÑ ÐºÐ°Ð´Ñи"
@@ -9614,14 +10026,14 @@ msgstr "гг:Ñ
Ñ
:ÑÑ + NTSC викинÑÑÑ ÐºÐ°Ð´Ñи"
#. * and frames with NTSC drop frames. Change the 'h' to the abbreviation
#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
#. * for seconds and translate 'frames'. Leave the |N alone, it's important!
-#: widgets/TimeTextCtrl.cpp:344
+#: widgets/TimeTextCtrl.cpp:345
msgid "0100 h 060 m 060 s+.30 frames|N"
msgstr "0100 г 060 Ñ
в 060 Ñ+.30 кадÑÑв|N"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
#. * seconds and frames at NTSC TV non-drop-frame rate (used for American /
-#. * Japananese TV, and doesn't quite match wall time
-#: widgets/TimeTextCtrl.cpp:348
+#. * Japanese TV, and doesn't quite match wall time
+#: widgets/TimeTextCtrl.cpp:349
msgid "hh:mm:ss + NTSC non-drop frames"
msgstr "гг:Ñ
Ñ
:ÑÑ + NTSC non-drop кадÑÑв"
@@ -9630,26 +10042,26 @@ msgstr "гг:Ñ
Ñ
:ÑÑ + NTSC non-drop кадÑÑв"
#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
#. * for seconds and translate 'frames'. Leave the | .999000999 alone,
#. * the whole things really is slightly off-speed!
-#: widgets/TimeTextCtrl.cpp:354
+#: widgets/TimeTextCtrl.cpp:355
msgid "0100 h 060 m 060 s+.030 frames| .999000999"
msgstr "0100 г 060 Ñ
в 060 Ñ+.030 кадÑи| .999000999"
#. i18n-hint: Name of time display format that shows time in frames at NTSC
-#. * TV frame rate (used for American / Japananese TV
-#: widgets/TimeTextCtrl.cpp:357
+#. * TV frame rate (used for American / Japanese TV
+#: widgets/TimeTextCtrl.cpp:358
msgid "NTSC frames"
msgstr "NTSC кадÑи"
#. i18n-hint: Format string for displaying time in frames with NTSC frames.
#. * Translate 'frames' and leave the rest alone. That really is the frame
#. * rate!
-#: widgets/TimeTextCtrl.cpp:361
+#: widgets/TimeTextCtrl.cpp:362
msgid "01000,01000 frames|29.97002997"
msgstr "01000,01000 кадÑи|29.97002997"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
#. * seconds and frames at PAL TV frame rate (used for European TV)
-#: widgets/TimeTextCtrl.cpp:364
+#: widgets/TimeTextCtrl.cpp:365
msgid "hh:mm:ss + PAL frames (25 fps)"
msgstr "гг:Ñ
Ñ
:ÑÑ + PAL кадÑи (25 кд/Ñ)"
@@ -9657,25 +10069,25 @@ msgstr "гг:Ñ
Ñ
:ÑÑ + PAL кадÑи (25 кд/Ñ)"
#. * and frames with PAL TV frames. Change the 'h' to the abbreviation
#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
#. * for seconds and translate 'frames'. Nice simple time code!
-#: widgets/TimeTextCtrl.cpp:369
+#: widgets/TimeTextCtrl.cpp:370
msgid "0100 h 060 m 060 s+.25 frames"
msgstr "0100 г 060 Ñ
в 060 Ñ+.25 кадÑи"
#. i18n-hint: Name of time display format that shows time in frames at PAL
#. * TV frame rate (used for European TV
-#: widgets/TimeTextCtrl.cpp:372
+#: widgets/TimeTextCtrl.cpp:373
msgid "PAL frames (25 fps)"
msgstr "PAL кадÑи (25 кд/Ñ)"
#. i18n-hint: Format string for displaying time in frames with NTSC frames.
#. * Translate 'frames' and leave the rest alone.
-#: widgets/TimeTextCtrl.cpp:375
+#: widgets/TimeTextCtrl.cpp:376
msgid "01000,01000 frames|25"
msgstr "01000,01000 кадÑи|25"
#. i18n-hint: Name of time display format that shows time in hours, minutes,
#. * seconds and frames at CD Audio frame rate (75 frames per second)
-#: widgets/TimeTextCtrl.cpp:378
+#: widgets/TimeTextCtrl.cpp:379
msgid "hh:mm:ss + CDDA frames (75 fps)"
msgstr "hh:mm:ss + CDDA кадÑи (75 кд/Ñ)"
@@ -9683,31 +10095,32 @@ msgstr "hh:mm:ss + CDDA кадÑи (75 кд/Ñ)"
#. * and frames with CD Audio frames. Change the 'h' to the abbreviation
#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
#. * for seconds and translate 'frames'.
-#: widgets/TimeTextCtrl.cpp:383
+#: widgets/TimeTextCtrl.cpp:384
msgid "0100 h 060 m 060 s+.75 frames"
msgstr "0100 г 060 Ñ
в 060 Ñ+.75 кадÑи"
#. i18n-hint: Name of time display format that shows time in frames at CD
#. * Audio frame rate (75 frames per second)
-#: widgets/TimeTextCtrl.cpp:386
+#: widgets/TimeTextCtrl.cpp:387
msgid "CDDA frames (75 fps)"
msgstr "CDDA кадÑи (75 кд/Ñ)"
#. i18n-hint: Format string for displaying time in frames with CD Audio
#. * frames. Translate 'frames' and leave the rest alone
-#: widgets/TimeTextCtrl.cpp:389
+#: widgets/TimeTextCtrl.cpp:390
msgid "01000,01000 frames|75"
msgstr "01000,01000 кадÑи|75"
-#: widgets/TimeTextCtrl.cpp:461
+#: widgets/TimeTextCtrl.cpp:469
msgid "Use right mouse button or context key to change format"
-msgstr "ÐикоÑиÑÑовÑйÑе пÑÐ°Ð²Ñ ÐºÐ½Ð¾Ð¿ÐºÑ Ð¼Ð¸ÑÑ Ð°Ð±Ð¾ конÑекÑÑÐ½Ñ ÐºÐ»Ð°Ð²ÑÑÑ Ð´Ð»Ñ Ð·Ð¼Ñни ÑоÑмаÑÑ"
+msgstr ""
+"ÐикоÑиÑÑовÑйÑе пÑÐ°Ð²Ñ ÐºÐ½Ð¾Ð¿ÐºÑ Ð¼Ð¸ÑÑ Ð°Ð±Ð¾ конÑекÑÑÐ½Ñ ÐºÐ»Ð°Ð²ÑÑÑ Ð´Ð»Ñ Ð·Ð¼Ñни ÑоÑмаÑÑ"
-#: widgets/TimeTextCtrl.cpp:1495
+#: widgets/TimeTextCtrl.cpp:1502
msgid "Time Control"
msgstr "ÐонÑÑÐ¾Ð»Ñ ÑаÑÑ"
-#: widgets/Warning.cpp:64
+#: widgets/Warning.cpp:61
msgid "Don't show this warning again"
msgstr "ÐÑлÑÑе не показÑваÑи"
@@ -9726,3 +10139,16 @@ msgstr "Ðомилка: %hs Ñ ÑÑÐ´ÐºÑ %lu"
msgid "Could not load file: \"%s\""
msgstr "Ðеможливо заванÑажиÑи Ñайл: \"%s\""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr "Ðомилка пÑд ÑÐ°Ñ ÑпÑоби ÑинÑ
ÑонÑзаÑÑÑ Ñайла"
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr "Ðомилка пÑд ÑÐ°Ñ ÑпÑоби закÑиÑи Ñайл"
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr "Ðомилка пÑд ÑÐ°Ñ ÑпÑоби запиÑÑ Ð´Ð¾ Ñайла"
+
+
diff --git a/locale/vi.po b/locale/vi.po
index ec4a759..f1bce82 100644
--- a/locale/vi.po
+++ b/locale/vi.po
@@ -12,9 +12,7 @@ msgstr "Project-Id-Version: Audacity\n"
"X-Poedit-Country: Vietnam\n"
"X-Poedit-Bookmarks: 207,293,1198,-1,-1,84,-1,1309,382,385\n"
-#: AboutDialog.cpp:142
-#: AudacityApp.cpp:749
-#: Menus.cpp:745
+#: AboutDialog.cpp:142 AudacityApp.cpp:749 Menus.cpp:745
msgid "&About Audacity..."
msgstr "&Thông tin vỠAudacity..."
@@ -27,11 +25,11 @@ msgid "Audacity is a free program written by a team of volunteer <a href=\"http:
msgstr ""
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#. i18n-hint: The translation of "translator_credits" will appear
@@ -40,8 +38,7 @@ msgstr ""
#.
#. For example: "English translation by Dominic Mazzoni."
#.
-#: AboutDialog.cpp:192
-#: AboutDialog.cpp:194
+#: AboutDialog.cpp:192 AboutDialog.cpp:194
msgid "translator_credits"
msgstr "Vietnamese translation by Nguyá»
n Äình Trung"
@@ -84,7 +81,7 @@ msgid "Special thanks:"
msgstr "Rất cám ơn:"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
msgstr ""
#: AboutDialog.cpp:254
@@ -92,14 +89,11 @@ msgid "Audacity"
msgstr "Audacity"
#. i18n-hint: Information about when audacity was compiled
-#: AboutDialog.cpp:299
-#: AboutDialog.cpp:312
-#: AboutDialog.cpp:468
+#: AboutDialog.cpp:299 AboutDialog.cpp:312 AboutDialog.cpp:468
msgid "Build Information"
msgstr "Thông tin biên dá»ch"
-#: AboutDialog.cpp:305
-#: effects/AvcCompressor.cpp:674
+#: AboutDialog.cpp:305 effects/AvcCompressor.cpp:674
msgid "Enabled"
msgstr "Báºt"
@@ -112,33 +106,27 @@ msgid "File Format Support"
msgstr "Há» trợ Äá»nh dạng"
#. i18n-hint: This is what the library (libmad) does - imports MP3 files
-#: AboutDialog.cpp:326
-#: AboutDialog.cpp:328
+#: AboutDialog.cpp:326 AboutDialog.cpp:328
msgid "MP3 Importing"
msgstr "Nháºp MP3"
-#: AboutDialog.cpp:335
-#: AboutDialog.cpp:338
+#: AboutDialog.cpp:335 AboutDialog.cpp:338
msgid "Ogg Vorbis Import and Export"
msgstr "Xuất và nháºp Ogg Vorbis"
-#: AboutDialog.cpp:342
-#: AboutDialog.cpp:345
+#: AboutDialog.cpp:342 AboutDialog.cpp:345
msgid "ID3 tag support"
msgstr "HỠtrợ thẻ ID3"
-#: AboutDialog.cpp:352
-#: AboutDialog.cpp:355
+#: AboutDialog.cpp:352 AboutDialog.cpp:355
msgid "FLAC import and export"
msgstr "Xuất và nháºp FLAC"
-#: AboutDialog.cpp:360
-#: AboutDialog.cpp:363
+#: AboutDialog.cpp:360 AboutDialog.cpp:363
msgid "MP2 export"
msgstr "Xuất MP2"
-#: AboutDialog.cpp:368
-#: AboutDialog.cpp:371
+#: AboutDialog.cpp:368 AboutDialog.cpp:371
msgid "Import via QuickTime"
msgstr "Nháºp qua QuickTime"
@@ -147,15 +135,12 @@ msgstr "Nháºp qua QuickTime"
msgid "Core Libraries"
msgstr "Các thư viá»n lõi"
-#: AboutDialog.cpp:384
-#: AboutDialog.cpp:387
-#: AboutDialog.cpp:390
+#: AboutDialog.cpp:384 AboutDialog.cpp:387 AboutDialog.cpp:390
#: AboutDialog.cpp:392
msgid "Sample rate conversion"
msgstr "Chuyá»n Äá»i tá»c Äá» lấy mẫu"
-#: AboutDialog.cpp:397
-#: AboutDialog.cpp:400
+#: AboutDialog.cpp:397 AboutDialog.cpp:400
msgid "Audio playback and recording"
msgstr "Phát và ghi âm"
@@ -163,24 +148,17 @@ msgstr "Phát và ghi âm"
msgid "Features"
msgstr "Các tÃnh nÄng"
-#: AboutDialog.cpp:417
-#: AboutDialog.cpp:420
-#: AboutDialog.cpp:425
-#: AboutDialog.cpp:428
-#: AboutDialog.cpp:433
-#: AboutDialog.cpp:436
-#: AboutDialog.cpp:441
-#: AboutDialog.cpp:444
+#: AboutDialog.cpp:417 AboutDialog.cpp:420 AboutDialog.cpp:425
+#: AboutDialog.cpp:428 AboutDialog.cpp:433 AboutDialog.cpp:436
+#: AboutDialog.cpp:441 AboutDialog.cpp:444
msgid "Plug-in support"
msgstr "HỠtrợ trình bỠsung"
-#: AboutDialog.cpp:449
-#: AboutDialog.cpp:452
+#: AboutDialog.cpp:449 AboutDialog.cpp:452
msgid "Sound card mixer support"
msgstr "Há» trợ bá» trá»n trên card âm thanh"
-#: AboutDialog.cpp:457
-#: AboutDialog.cpp:460
+#: AboutDialog.cpp:457 AboutDialog.cpp:460
msgid "Pitch and Tempo Change support"
msgstr "Há» trợ thay Äá»i nhá»p Äá» và cao Äá»"
@@ -188,8 +166,7 @@ msgstr "Há» trợ thay Äá»i nhá»p Äá» và cao Äá»"
msgid "Program build date: "
msgstr "Ngà y biên dá»ch chương trình:"
-#: AboutDialog.cpp:475
-#: AboutDialog.cpp:477
+#: AboutDialog.cpp:475 AboutDialog.cpp:477
#, fuzzy
msgid "Build type:"
msgstr "Kiá»u biên dá»ch:"
@@ -215,16 +192,12 @@ msgstr "Thư mục thiết láºp:"
msgid "GPL License"
msgstr "Giấy phép GPL"
-#: AudacityApp.cpp:468
-#: Project.cpp:1761
+#: AudacityApp.cpp:468 Project.cpp:1761
#, c-format
msgid "%s is already open in another window."
msgstr "Bạn Äã má» %s trên má»t cá»a sá» khác."
-#: AudacityApp.cpp:470
-#: Project.cpp:1763
-#: Project.cpp:1868
-#: Project.cpp:2012
+#: AudacityApp.cpp:470 Project.cpp:1763 Project.cpp:1868 Project.cpp:2012
#: Project.cpp:2114
msgid "Error opening project"
msgstr "Lá»i khi má» dá»± án"
@@ -250,21 +223,28 @@ msgstr "Biên Äá» thu Äo ÄÆ°á»£c"
msgid "Output Meter"
msgstr "Biên Äá» phát Äo ÄÆ°á»£c"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
-#: AudacityApp.cpp:751
-#: Menus.cpp:478
-msgid "&Preferences...\tCtrl+,"
-msgstr "&Tuỳ thÃch...\tCtrl+,"
+#: Menus.cpp:164
+msgid "&New"
+msgstr "&Má»i"
+
+#: Menus.cpp:166
+msgid "&Open..."
+msgstr "&Má»..."
-#: AudacityApp.cpp:833
-#: AudacityApp.cpp:910
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
+
+#: AudacityApp.cpp:751 Menus.cpp:478
+msgid "&Preferences..."
+msgstr "&Tuỳ thÃch..."
+
+#: AudacityApp.cpp:833 AudacityApp.cpp:910
#, c-format
msgid "Using block size of %ld\n"
msgstr "Dùng kÃch thưá»c khá»i %ld\n"
-#: AudacityApp.cpp:855
-#: AudacityApp.cpp:925
+#: AudacityApp.cpp:855 AudacityApp.cpp:925
#, c-format
msgid "Unknown command line option: %s\n"
msgstr "Không biết tuỳ chá»n cá»§a dòng lá»nh: %s\n"
@@ -379,18 +359,16 @@ msgstr "Lá»i:"
msgid "Error Initializing Audio"
msgstr "Lá»i khá»i chạy Ãm thanh"
+#: AudioIO.cpp:1225
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
+"Audacity has brought it back to start at zero.\n"
+"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
+msgstr ""
+
#: AudioIO.cpp:1208
msgid "Latency problem"
msgstr "Lá»i do trá»
thá»i gian"
-#: AudioIO.cpp:1208
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
-"Audacity has brought it back to start at zero.\n"
-"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
-msgstr "Thiết láºp Äá» trá»
Äã là m cho âm thanh ghi ÄÆ°á»£c bá» dá»ch vá» phÃa trưá»c má»c thá»i gian 0.\n"
-"Audacity Äã ÄÆ°a nó vá» má»c thá»i gian bắt Äầu.\n"
-"Bạn phải dùng công cụ Di chuyá»n Thá»i gian (<---> hoặc F5) Äá» lôi track âm thanh Äến Äúng vá» trà mình cần."
-
#: AutoRecovery.cpp:54
msgid "Automatic Crash Recovery"
msgstr "Tá»± Äá»ng khôi phục lá»i"
@@ -405,8 +383,7 @@ msgstr "Má»t sá» dá»± án Äã không ÄÆ°á»£c lưu và o ÄÄ©a cứng theo cá
msgid "Recoverable projects"
msgstr "Các dá»± án có thá» phục há»i:"
-#: AutoRecovery.cpp:78
-#: Tags.cpp:2032
+#: AutoRecovery.cpp:78 Tags.cpp:2032
msgid "Name"
msgstr "Tên"
@@ -436,38 +413,25 @@ msgstr "Có chắc là bạn không phục há»i dá»± án không?\n"
msgid "Confirm?"
msgstr "Xác nháºn?"
-#: AutoRecovery.cpp:146
-#: AutoRecovery.cpp:183
+#: AutoRecovery.cpp:146 AutoRecovery.cpp:183
msgid "Could not enumerate files in auto save directory"
msgstr "Không thá» liá»t kê các táºp tin tá»± Äá»ng lưu lại"
-#: AutoRecovery.cpp:147
-#: AutoRecovery.cpp:184
-#: Menus.cpp:2575
-#: Menus.cpp:4514
-#: Project.cpp:1971
-#: Project.cpp:3343
-#: Project.cpp:3422
-#: WaveTrack.cpp:556
-#: WaveTrack.cpp:575
-#: WaveTrack.cpp:1689
-#: effects/Effect.cpp:436
-#: export/ExportMP2.cpp:230
-#: prefs/DirectoriesPrefs.cpp:189
-#: prefs/KeyConfigPrefs.cpp:245
-#: toolbars/ControlToolBar.cpp:532
+#: AutoRecovery.cpp:147 AutoRecovery.cpp:184 Menus.cpp:2575 Menus.cpp:4514
+#: Project.cpp:1971 Project.cpp:3343 Project.cpp:3422 WaveTrack.cpp:556
+#: WaveTrack.cpp:575 WaveTrack.cpp:1689 effects/Effect.cpp:436
+#: export/ExportMP2.cpp:230 prefs/DirectoriesPrefs.cpp:189
+#: prefs/KeyConfigPrefs.cpp:245 toolbars/ControlToolBar.cpp:532
#: toolbars/ControlToolBar.cpp:846
msgid "Error"
msgstr "Lá»i"
-#: BatchCommandDialog.cpp:56
-#: BatchCommandDialog.cpp:60
+#: BatchCommandDialog.cpp:56 BatchCommandDialog.cpp:60
#: BatchCommandDialog.cpp:61
msgid "Select Command"
msgstr "Chá»n lá»nh"
-#: BatchCommandDialog.cpp:80
-#: BatchProcessDialog.cpp:454
+#: BatchCommandDialog.cpp:80 BatchProcessDialog.cpp:454
#: prefs/KeyConfigPrefs.cpp:142
msgid "&Command"
msgstr "&Lá»nh"
@@ -476,8 +440,7 @@ msgstr "&Lá»nh"
msgid "&Edit Parameters"
msgstr "&Sá»a tham sá»"
-#: BatchCommandDialog.cpp:89
-#: BatchProcessDialog.cpp:455
+#: BatchCommandDialog.cpp:89 BatchProcessDialog.cpp:455
msgid "&Parameters"
msgstr "&Tham sá»"
@@ -523,8 +486,7 @@ msgstr "Ãp dụng %s vá»i (các) tham sá» \n"
"\n"
"%s"
-#: BatchCommands.cpp:675
-#: BatchCommands.cpp:680
+#: BatchCommands.cpp:675 BatchCommands.cpp:680
msgid "Test Mode"
msgstr "Chế Äá» kiá»m tr"
@@ -533,8 +495,7 @@ msgstr "Chế Äá» kiá»m tr"
msgid "Apply %s"
msgstr "Ãp dụng %s"
-#: BatchProcessDialog.cpp:60
-#: BatchProcessDialog.cpp:70
+#: BatchProcessDialog.cpp:60 BatchProcessDialog.cpp:70
#: BatchProcessDialog.cpp:71
msgid "Apply Chain"
msgstr "Ãp dụng quy trình"
@@ -559,24 +520,15 @@ msgstr "Ãp dụng và o &dá»± án hiá»n hà nh"
msgid "Apply to &Files..."
msgstr "Ãp dụng cho &táºp tin"
-#: BatchProcessDialog.cpp:108
-#: BatchProcessDialog.cpp:247
-#: Tags.cpp:2071
-#: Tags.cpp:2075
-#: Tags.cpp:2375
-#: Tags.cpp:2379
-#: UploadDialog.cpp:180
-#: effects/AvcCompressor.cpp:732
-#: effects/ChangeLength.cpp:183
-#: effects/SpikeCleaner.cpp:188
-#: effects/VST/VSTEffect.cpp:446
-#: effects/audiounits/AudioUnitEffect.cpp:882
-#: effects/vamp/VampEffect.cpp:411
+#: BatchProcessDialog.cpp:108 BatchProcessDialog.cpp:247 Tags.cpp:2071
+#: Tags.cpp:2075 Tags.cpp:2375 Tags.cpp:2379 UploadDialog.cpp:180
+#: effects/AvcCompressor.cpp:732 effects/ChangeLength.cpp:183
+#: effects/SpikeCleaner.cpp:188 effects/VST/VSTEffect.cpp:446
+#: effects/audiounits/AudioUnitEffect.cpp:882 effects/vamp/VampEffect.cpp:411
msgid "&Cancel"
msgstr "&Huá»· bá»"
-#: BatchProcessDialog.cpp:146
-#: BatchProcessDialog.cpp:191
+#: BatchProcessDialog.cpp:146 BatchProcessDialog.cpp:191
msgid "No chain selected"
msgstr "Chưa có quy trình nà o ÄÆ°á»£c chá»n"
@@ -613,8 +565,7 @@ msgstr "Äang áp dụng..."
msgid "File"
msgstr "Táºp tin"
-#: BatchProcessDialog.cpp:356
-#: BatchProcessDialog.cpp:360
+#: BatchProcessDialog.cpp:356 BatchProcessDialog.cpp:360
#: BatchProcessDialog.cpp:361
msgid "Edit Chains"
msgstr "Sá»a Äá»i quy trình"
@@ -623,19 +574,12 @@ msgstr "Sá»a Äá»i quy trình"
msgid "&Chains"
msgstr "&Quy trình"
-#: BatchProcessDialog.cpp:435
-#: Tags.cpp:815
-#: Tags.cpp:1455
-#: Tags.cpp:2055
+#: BatchProcessDialog.cpp:435 Tags.cpp:815 Tags.cpp:1455 Tags.cpp:2055
msgid "&Add"
msgstr "&Thêm"
-#: BatchProcessDialog.cpp:436
-#: LabelDialog.cpp:126
-#: Tags.cpp:816
-#: Tags.cpp:1456
-#: Tags.cpp:2056
-#: TrackPanel.cpp:4201
+#: BatchProcessDialog.cpp:436 LabelDialog.cpp:126 Tags.cpp:816 Tags.cpp:1456
+#: Tags.cpp:2056 TrackPanel.cpp:4201
msgid "&Remove"
msgstr "&Xoá bá»"
@@ -649,8 +593,8 @@ msgstr "C&hùm (nhắp Äúp chuá»t hoặc nhấn phÃm cách Äá» hiá»u ÄÃ
#. i18n-hint: This is the number of the command in the list
#: BatchProcessDialog.cpp:453
-msgid "No"
-msgstr "Không"
+msgid "Num"
+msgstr ""
#: BatchProcessDialog.cpp:459
msgid "&Insert"
@@ -739,8 +683,7 @@ msgstr "Dung lượng trá»ng trên ÄÄ©a"
msgid "Copy Selected Audio Into Project"
msgstr "Chép các táºp tin âm thanh ÄÆ°á»£c chá»n và o trong dá»± án"
-#: Dependencies.cpp:304
-#: Dependencies.cpp:410
+#: Dependencies.cpp:304 Dependencies.cpp:410
msgid "Cancel Save"
msgstr "Không lưu"
@@ -752,8 +695,7 @@ msgstr "Không chép bất cứ táºp tin âm thanh nà o"
msgid "Copy All Audio into Project (Safer)"
msgstr "Chép tất cả các táºp tin âm thanh và o dá»± án (an toà n hÆ¡n)"
-#: Dependencies.cpp:317
-#: Dependencies.cpp:322
+#: Dependencies.cpp:317 Dependencies.cpp:322
msgid "Ask me"
msgstr "Há»i tôi trưá»c"
@@ -787,9 +729,7 @@ msgid "Warning: there is very little free disk space left on this volume.\n"
msgstr "Cảnh báo: còn rất Ãt chá» trá»ng trên ÄÄ©a cứng.\n"
"Hãy chá»n má»t thư mục tạm thá»i khác trong phần Tuỳ chá»n"
-#: DirManager.cpp:221
-#: DirManager.cpp:251
-#: DirManager.cpp:332
+#: DirManager.cpp:221 DirManager.cpp:251 DirManager.cpp:332
msgid "Progress"
msgstr "Äang tiến hà nh"
@@ -844,8 +784,7 @@ msgstr "Không thá» Äá»i tên '%s' thà nh '%s'"
msgid "Changed block %s to new alias name\n"
msgstr ""
-#: DirManager.cpp:1115
-#: DirManager.cpp:1403
+#: DirManager.cpp:1115 DirManager.cpp:1403
msgid "Inspecting project file data..."
msgstr "Äang thẩm tra táºp tin dữ liá»u cá»§a dá»± án..."
@@ -896,14 +835,9 @@ msgstr "Không xoá, cứ tiếp tục: tiếp tục là m viá»c khi có những
msgid "Close project immediately with no changes"
msgstr "Không thay Äá»i và Äóng dá»± án ngay bây giá»"
-#: DirManager.cpp:1228
-#: DirManager.cpp:1263
-#: DirManager.cpp:1309
-#: DirManager.cpp:1351
-#: export/Export.cpp:490
-#: export/Export.cpp:507
-#: export/Export.cpp:526
-#: widgets/Warning.cpp:55
+#: DirManager.cpp:1228 DirManager.cpp:1263 DirManager.cpp:1309
+#: DirManager.cpp:1351 export/Export.cpp:490 export/Export.cpp:507
+#: export/Export.cpp:526 widgets/Warning.cpp:55
msgid "Warning"
msgstr "Cảnh báo"
@@ -925,14 +859,11 @@ msgstr "Quá trình kiá»m tra dá»± án thấy thiếu %d táºp tin Äầu và o
msgid "Replace missing data with silence [permanent upon save]"
msgstr "Thay thế các dữ liá»u Äã mất bằng khoảng lặng [chÃnh thức]"
-#: DirManager.cpp:1260
-#: DirManager.cpp:1348
+#: DirManager.cpp:1260 DirManager.cpp:1348
msgid "Temporarily replace missing data with silence [this session only]"
msgstr "Tạm thá»i thay thế dữ liá»u Äã mất bằng khoảng lặng [chá» phiên là m viá»c nà y]"
-#: DirManager.cpp:1261
-#: DirManager.cpp:1307
-#: DirManager.cpp:1349
+#: DirManager.cpp:1261 DirManager.cpp:1307 DirManager.cpp:1349
msgid "Close project immediately with no further changes"
msgstr "Láºp tức Äóng dá»± án lại và giữ nguyên hiá»n trạng"
@@ -1001,11 +932,11 @@ msgstr "Chữ nháºt"
msgid "FFmpeg support not compiled in"
msgstr ""
-#: FFmpeg.cpp:101
+#: FFmpeg.cpp:103
msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
#: FFmpeg.cpp:104
@@ -1063,11 +994,12 @@ msgstr ""
msgid "FFmpeg not found"
msgstr ""
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
#: FFmpeg.h:109
@@ -1090,8 +1022,7 @@ msgstr ""
msgid "Frequency Analysis"
msgstr "Bá» phân tÃch tần sá»"
-#: FreqWindow.cpp:140
-#: TrackPanel.cpp:563
+#: FreqWindow.cpp:140 TrackPanel.cpp:563
msgid "Spectrum"
msgstr "Phá»"
@@ -1119,8 +1050,7 @@ msgstr "Cepstrum"
msgid "Algorithm"
msgstr "Thuáºt toán:"
-#: FreqWindow.cpp:168
-#: HistoryWindow.cpp:79
+#: FreqWindow.cpp:168 HistoryWindow.cpp:79
msgid "Size"
msgstr "KÃch thưá»c"
@@ -1146,10 +1076,7 @@ msgstr "Tần sỠlogarit"
msgid "Axis"
msgstr ""
-#: FreqWindow.cpp:206
-#: LabelDialog.cpp:128
-#: Menus.cpp:204
-#: Menus.cpp:233
+#: FreqWindow.cpp:206 LabelDialog.cpp:128 Menus.cpp:204 Menus.cpp:233
msgid "&Export..."
msgstr "&Xuất..."
@@ -1157,45 +1084,54 @@ msgstr "&Xuất..."
msgid "Export"
msgstr "Xuất"
-#: FreqWindow.cpp:209
-#: widgets/ErrorDialog.cpp:159
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
+#: FreqWindow.cpp:209 widgets/ErrorDialog.cpp:159
msgid "Close"
msgstr "Äóng"
-#: FreqWindow.cpp:272
-#: FreqWindow.cpp:402
-#: effects/AutoDuck.cpp:489
-#: effects/AutoDuck.cpp:523
-#: effects/AutoDuck.cpp:791
-#: effects/Compressor.cpp:352
-#: effects/Compressor.cpp:360
-#: effects/Equalization.cpp:1109
-#: effects/Equalization.cpp:1111
-#: effects/Equalization.cpp:1119
-#: effects/Equalization.cpp:1185
-#: effects/Equalization.cpp:1394
-#: effects/Equalization.cpp:1405
-#: effects/Normalize.cpp:365
-#: widgets/Meter.cpp:380
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr ""
+
+#: FreqWindow.cpp:272 FreqWindow.cpp:402 effects/AutoDuck.cpp:489
+#: effects/AutoDuck.cpp:523 effects/AutoDuck.cpp:791
+#: effects/Compressor.cpp:352 effects/Compressor.cpp:360
+#: effects/Equalization.cpp:1109 effects/Equalization.cpp:1111
+#: effects/Equalization.cpp:1119 effects/Equalization.cpp:1185
+#: effects/Equalization.cpp:1394 effects/Equalization.cpp:1405
+#: effects/Normalize.cpp:365 widgets/Meter.cpp:380
msgid "dB"
msgstr "dB"
#. i18n-hint: This is the abbreviation for "Hertz", or
#. cycles per second.
-#: FreqWindow.cpp:287
-#: FreqWindow.cpp:442
-#: effects/Equalization.cpp:1150
-#: effects/Equalization.cpp:1181
-#: import/ImportRaw.cpp:416
+#: FreqWindow.cpp:287 FreqWindow.cpp:442 effects/Equalization.cpp:1150
+#: effects/Equalization.cpp:1181 import/ImportRaw.cpp:416
msgid "Hz"
msgstr "Hz"
+#: Menus.cpp:3425
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "Äá» vẽ phá», tất cả các dải ÄÆ°á»£c chá»n phải có cùng tá»c Äá» lấy mẫu"
+
+#: Menus.cpp:3451
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "Bạn chá»n quá nhiá»u dữ liá»u. Audacity sẽ chá» phân tÃch %.1f giây Äầu tiên cá»§a phần chá»n."
+
#: FreqWindow.cpp:386
msgid "Not enough data selected."
msgstr "Bạn chá»n thiếu dữ liá»u."
-#: FreqWindow.cpp:450
-#: effects/AutoDuck.cpp:793
+#: FreqWindow.cpp:450 effects/AutoDuck.cpp:793
msgid "s"
msgstr "s"
@@ -1217,12 +1153,8 @@ msgstr "spectrum.txt"
msgid "Export Spectral Data As:"
msgstr "Xuất dữ liá»u phá» thà nh:"
-#: FreqWindow.cpp:1079
-#: LabelDialog.cpp:599
-#: Menus.cpp:2207
-#: Project.cpp:2441
-#: Project.cpp:3395
-#: prefs/KeyConfigPrefs.cpp:180
+#: FreqWindow.cpp:1079 LabelDialog.cpp:599 Menus.cpp:2207 Project.cpp:2441
+#: Project.cpp:3395 prefs/KeyConfigPrefs.cpp:180
msgid "Couldn't write to file: "
msgstr "Không thá» ghi và o táºp tin:"
@@ -1234,6 +1166,21 @@ msgstr "Tần sỠ(Hz)\tMức (dB)"
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "Trá»
(seconds)\tTần sỠ(Hz)\tMức"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr ""
+
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr ""
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr "Quay vỠtrang [[welcome|Xin chà o]]."
@@ -1311,7 +1258,8 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr "<p><b>Äá» ghi âm:</b> Chá»n thiết bá» ghi âm và nguá»n tÃn hiá»u, Äiá»u chá»nh mức tÃn hiá»u Äầu và o, rá»i nhấn nút Thu mà u Äá».</b></p><p> 1) [[inputdevice|Chá»n thiết bá» thu âm]] trong phần <i>Ãm thanh Và o/Ra cá»§a há»p thoại Tuỳ thÃch</i> hoặc trên <i>Thanh công cụ Thiết bá»</i>. Tuỳ chá»nh âm thanh Và o/Ra cho phép bạn chá»n thu tÃn hiá»u mono hoặc stereo.<br> 2) [[inputsource|Chá»n nguá»n tÃn hiá»u]] trên thiết bá» (và dụ, microphone hoặc line-in) trong danh sách thả xuá»ng trên thanh công cụ <i>Trá»n tiếng</i>, hoặc (Äá»i vá»i má»t sá» máy) á» phần Thiết bá» thu âm nằm trong phần <i>Ãm thanh Và o/Ra cá»§a há»p thoại Tuỳ thÃch</i> hay trên thanh công cụ <i>Thiết bá»</i>.<br> 3) [[inputlevel|Äiá»u chá»nh mức tÃn hiá»u và o]] bằng cách di con chạy trên thanh <i>Trá»n tiếng</i>. Mức tÃn hiá»u hợp lý sẽ loại bá» nhiá»
u và méo tiếng. </p><p> Xem thêm trong: \"Thu âm\" <a href=\"http://audacity.sourceforge.net/help/faq\">FAQ</a>, và thá»±c hà nh <a href=\"http://www.audacityteam.org/manual/index.php?title=Tutorial_-_Your_First_Recording\"> Thu âm lần Äầu</a> á» <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">Hưá»ng dẫn</a>, và xem trang Wiki [[wiki:Recording_Tips|Mẹo thu âm]] và [[wiki:Troubleshooting_Recordings|Sá»a lá»i thu âm]]. </p><br><br>"
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+#, fuzzy
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
msgstr "<p>Thiết bá» nháºp là thiết bỠâm thanh trên máy cho phép bạn thu tÃn hiá»u từ microphone, dà n Hifi... Chá»n thiết bá» cần dùng trong há»p \"Thiết bá» thu âm\" á» phần <i>Ãm thanh Và o/Ra cá»§a há»p thoại Tuỳ thÃch</i>, Trên Windows và Linux, Tuỳ chá»nh nằm cuá»i trình ÄÆ¡n <i>Chá»nh sá»a</i>. Trên Mac, nó nằm trong trình ÄÆ¡n <i>Audacity</i>. Bạn cÅ©ng có thá» chá»nh thiết bá» thu âm từ thanh công cụ <i>Thiết bá»</i>, sau khi báºt nó lên bằng cách chá»n <i>Xem > Thanh công cụ...</i>. </p><p> Theo mặc Äá»nh, Audacity sá» dụng thiết bá» ÄÆ°á»£c há» thá»ng quy Äá»nh, (thưá»ng là thiết bá» tÃch hợp sẵn), nên thưá»ng là không cần chá»nh lại thiết láºp nà y. Trên Windows, ta thưá»ng dùng thiết bá» \"Microsoft Sound Mapper\". Nếu bạn muá»n dùng thiết bá» ghi âm cắm cá»ng USB hay thiết bá» Firewire như bà n trá»n USB, hãy chá»n nó là m thiết bá» thu âm sau khi ná»i nó và o máy. </p><p> Quay vá» [[record|Ghi âm]] <br></p>"
#: HelpText.cpp:244
@@ -1335,7 +1283,8 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr "Äá» má» dá»± án trong 1 chương trình phát nhạc, hãy xuất nó ra dạng WAV hay MP3 (má»t sá» Äá»nh dạng [[wma-proprietary|không ÄÆ°á»£c há» trợ]]). [[save|Lưu 1 dá»± án Audacity]] sẽ tạo ra 1 táºp tin dá»± án (và 1 thư mục _data gắn vá»i táºp tin Äó) chứa tất cả các dải bạn Äã biên táºp, Äá» bạn có thá» là m viá»c tiếp vá»i chúng sau nà y. Tuy nhiên, những chương trình khác thưá»ng không Äá»c ÄÆ°á»£c dạng lưu trữ dá»± án Audacity. </p><p> Äá» xuất dá»± án ra Äá»nh dạng khác, chá»n <i>Táºp tin > Xuất</i> rá»i chá»n Äá»nh dạng muá»n dùng trong ô \"Lưu á» dạng\". Äá» [[burncd|ghi ÄÄ©a CD]] âm thanh, hãy chá»n dạng WAV hay AIFF. Äá» xuất MP3, bạn phải cà i thư viá»n [[wiki:Lame_Installation|Lame Encoder]]. </p><p> <i>Táºp tin > Xuất vùng chá»n</i> chá» xuất 1 phần dá»± án ÄÆ°á»£c chá»n ra táºp tin khác. Chá»n <i>Táºp tin > Xuất nhiá»u</i> Äá» xuất nhiá»u táºp tin cùng 1 lúc, má»i dải hoặc má»i nhãn ÄÆ°á»£c ghi ra 1 táºp tin riêng biá»t. <i>Dải âm > Thêm nhãn á» vùng chá»n</i> ÄÆ°á»£c dùng Äá»[[wiki:Splitting_recordings_into_separate_tracks|chia các dải]] ghi toà n bá» 1 album ra nhiá»u bà i hát, ghi trong từng táºp tin riêng biá»t. </p><br><br>"
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+#, fuzzy
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
msgstr "<p>Audacity <b>không thá»</b> [[play|phát lại]] hay [[export|xuất]] các táºp tin dạng <b>WMA, RealAudio, Shorten (SHN)</b> hay các Äá»nh dạng thương mại khác, vì lý do bản quyá»n. Trên máy Mac, Audacity nháºp ÄÆ°á»£c các Äá»nh dạng <b>AAC</b> không ÄÆ°á»£c bảo vá» như <b>M4A</b>. Má»t sá» Äá»nh dạng má» hiá»n nay vẫn chưa ÄÆ°á»£c Audacity há» trợ, và dụ như <b>Ogg Speex</b> và <b>Musepack</b>. Các táºp tin ÄÆ°á»£c bảo vá» bằng Digital Rights Management (DRM), thưá»ng ÄÆ°á»£c mua trên các trang iTunes hay Napster, <b>sẽ không cho phép</b> nháºp và o Audacity.</p><p> Muá»n nháºp chúng và o chương trình, bạn phải dùng iTunes hoặc <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> Äá» chuyá»n Äá»i nó vá» Äá»nh dạng WAV hoặc AIFF. Äá»i vá»i các táºp tin ÄÆ°á»£c bảo vá», hãy ghi nó ra ÄÄ©a CD trong chương trình ÄÆ°á»£c phép phát chúng, rá»i trÃch CD thà nh dạng WAV hay AIFF bằng ITunes hoặc (trên Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> hoặc Windows Media Player 11. Xin xem <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">thu âm</a> ÄÄ©a CD và o máy.<i>Äá» xuất 1 Äá»nh dạng chưa há» trợ, hãy xuất ra WAV hoặc AIFF rá»i chuyá»n Äá»i nó vá» Äá»nh dạng mình muá»n bằng iTunes hoặc <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
#: HelpText.cpp:383
@@ -1370,15 +1319,9 @@ msgstr "Xoá các mức"
msgid "&Discard"
msgstr "&Loại bá»"
-#: HistoryWindow.cpp:111
-#: Tags.cpp:2072
-#: Tags.cpp:2074
-#: Tags.cpp:2376
-#: Tags.cpp:2378
-#: effects/ChangeLength.cpp:186
-#: effects/SpikeCleaner.cpp:191
-#: effects/vamp/VampEffect.cpp:414
-#: export/ExportCL.cpp:398
+#: HistoryWindow.cpp:111 Tags.cpp:2072 Tags.cpp:2074 Tags.cpp:2376
+#: Tags.cpp:2378 effects/ChangeLength.cpp:186 effects/SpikeCleaner.cpp:191
+#: effects/vamp/VampEffect.cpp:414 export/ExportCL.cpp:398
msgid "&OK"
msgstr "&OK"
@@ -1386,8 +1329,7 @@ msgstr "&OK"
msgid "Unable to determine"
msgstr "Không quyết Äá»nh ÄÆ°á»£c"
-#: Internat.cpp:195
-#: import/ImportRaw.cpp:392
+#: Internat.cpp:195 import/ImportRaw.cpp:392
msgid "bytes"
msgstr "bytes"
@@ -1403,13 +1345,19 @@ msgstr "MB"
msgid "GB"
msgstr "GB"
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
#: LabelDialog.cpp:52
msgid "Track"
msgstr "Dải âm"
-#: LabelDialog.cpp:53
-#: Menus.cpp:4057
-#: Menus.cpp:4085
+#: LabelDialog.cpp:53 Menus.cpp:4057 Menus.cpp:4085
msgid "Label"
msgstr "Nhãn"
@@ -1421,8 +1369,7 @@ msgstr "Thá»i gian bắt Äầu"
msgid "End Time"
msgstr "Thá»i gian kết thúc"
-#: LabelDialog.cpp:98
-#: Menus.cpp:627
+#: LabelDialog.cpp:98 Menus.cpp:627
msgid "&Edit Labels"
msgstr "&Sá»a nhãn"
@@ -1438,8 +1385,7 @@ msgstr "Chèn phÃa s&au"
msgid "Insert &Before"
msgstr "Chèn lên t&rưá»c"
-#: LabelDialog.cpp:127
-#: Menus.cpp:194
+#: LabelDialog.cpp:127 Menus.cpp:194
msgid "&Import..."
msgstr "&Nháºp..."
@@ -1461,20 +1407,15 @@ msgstr "Bạn Äã bá» trá»ng tên nhãn. Dải âm thanh nà y sẽ \n"
msgid "Confirm"
msgstr "Xác nháºn"
-#: LabelDialog.cpp:514
-#: Menus.cpp:3555
+#: LabelDialog.cpp:514 Menus.cpp:3555
msgid "Select a text file containing labels..."
msgstr "Chá»n má»t táºp tin vÄn bản chứa các nhãn..."
-#: LabelDialog.cpp:518
-#: Menus.cpp:3559
+#: LabelDialog.cpp:518 Menus.cpp:3559
msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
msgstr "Táºp tin vÄn bản (*.txt)|*.txt|Tất cả (*.*)|*.*"
-#: LabelDialog.cpp:532
-#: Menus.cpp:3571
-#: Project.cpp:1831
-#: Project.cpp:1839
+#: LabelDialog.cpp:532 Menus.cpp:3571 Project.cpp:1831 Project.cpp:1839
#: import/ImportMIDI.cpp:31
msgid "Could not open file: "
msgstr "Không má» ÄÆ°á»£c táºp tin:"
@@ -1483,13 +1424,11 @@ msgstr "Không má» ÄÆ°á»£c táºp tin:"
msgid "No labels to export."
msgstr "Chưa có nhãn Äá» có thá» xuất ra."
-#: LabelDialog.cpp:564
-#: Menus.cpp:2172
+#: LabelDialog.cpp:564 Menus.cpp:2172
msgid "Export Labels As:"
msgstr "Xuất nhãn thà nh:"
-#: LabelDialog.cpp:566
-#: Menus.cpp:2170
+#: LabelDialog.cpp:566 Menus.cpp:2170
msgid "labels.txt"
msgstr "labels.txt"
@@ -1501,10 +1440,7 @@ msgstr "Nhãn má»i cho dải âm"
msgid "Enter track name"
msgstr "Nháºp tên dải âm"
-#: LabelDialog.cpp:701
-#: LabelDialog.h:52
-#: LabelTrack.cpp:89
-#: Menus.cpp:555
+#: LabelDialog.cpp:701 LabelDialog.h:52 LabelTrack.cpp:89 Menus.cpp:555
msgid "&Label Track"
msgstr "&Nhãn cho dải âm"
@@ -1531,24 +1467,15 @@ msgstr "MỠdự án của Audacity"
msgid "&File"
msgstr "&Táºp tin"
-#: Menus.cpp:164
-msgid "&New\tCtrl+N"
-msgstr "&Má»i\tCtrl+N"
-
-#: Menus.cpp:166
-msgid "&Open...\tCtrl+O"
-msgstr "&Má»...\tCtrl+O"
-
#: Menus.cpp:171
-msgid "&Close\tCtrl+W"
-msgstr "&Äóng\tCtrl+W"
+msgid "&Close"
+msgstr "&Äóng"
#: Menus.cpp:174
-msgid "&Save Project\tCtrl+S"
-msgstr "&Lưu Dự án\tCtrl+S"
+msgid "&Save Project"
+msgstr "&Lưu Dự án"
-#: Menus.cpp:178
-#: Project.cpp:2690
+#: Menus.cpp:178 Project.cpp:2690
msgid "Save Project &As..."
msgstr "Lưu &như dá»± án má»i..."
@@ -1569,8 +1496,8 @@ msgid "&Import"
msgstr "&Nháºp"
#: Menus.cpp:196
-msgid "&Audio...\tCtrl+Shift+I"
-msgstr "Ãm t&hanh...\tCtrl+Shift+I"
+msgid "&Audio..."
+msgstr "Ãm t&hanh..."
#: Menus.cpp:197
msgid "&Labels..."
@@ -1584,8 +1511,7 @@ msgstr "&MIDI..."
msgid "&Raw Data..."
msgstr "&Dữ liá»u thô..."
-#: Menus.cpp:210
-#: Menus.cpp:239
+#: Menus.cpp:210 Menus.cpp:239
msgid "Expo&rt Selection..."
msgstr "Xuất phầ&n chá»n..."
@@ -1601,12 +1527,11 @@ msgstr "Xuất ra &nhiá»u táºp tin"
msgid "Export MIDI..."
msgstr ""
-#: Menus.cpp:247
-msgid "CleanSpeech C&hain..."
-msgstr "Quy trình CleanSpeec&h..."
+#: Menus.cpp:260
+msgid "Appl&y Chain..."
+msgstr "Ãp dụng &quy trình..."
-#: Menus.cpp:248
-#: Menus.cpp:262
+#: Menus.cpp:248 Menus.cpp:262
msgid "Edit C&hains..."
msgstr "&Hiá»u chá»nh quy trình..."
@@ -1618,10 +1543,6 @@ msgstr "Xuất thiết láºp sẵn cho CleanS&peech..."
msgid "I&mport CleanSpeech Presets..."
msgstr "Nháºp th&iết láºp sẵn cá»§a CleanSpeed"
-#: Menus.cpp:260
-msgid "Appl&y Chain..."
-msgstr "Ãp dụng &quy trình..."
-
#: Menus.cpp:267
msgid "&Upload File..."
msgstr "&Tải táºp tin lên..."
@@ -1635,75 +1556,72 @@ msgid "&Print..."
msgstr "&In ấn..."
#: Menus.cpp:287
-msgid "E&xit\tCtrl+Q"
-msgstr "Th&oát\tCtrl+Q"
+msgid "E&xit"
+msgstr "Th&oát"
-#: Menus.cpp:295
-#: toolbars/EditToolBar.cpp:76
+#: Menus.cpp:295 toolbars/EditToolBar.cpp:76
msgid "&Edit"
msgstr "Chá»nh &Sá»a"
#: Menus.cpp:299
-msgid "&Undo\tCtrl+Z"
-msgstr "&Hoãn lại\tCtrl+Z"
+msgid "&Undo"
+msgstr "&Hoãn lại"
-#: Menus.cpp:307
-#: prefs/KeyConfigPrefs.cpp:369
-#: toolbars/EditToolBar.cpp:146
+#: Menus.cpp:307 prefs/KeyConfigPrefs.cpp:369 toolbars/EditToolBar.cpp:146
msgid "&Redo"
msgstr "&Là m lại"
#: Menus.cpp:320
-msgid "Cu&t\tCtrl+X"
-msgstr "Cắ&t\tCtrl+X"
+msgid "Cu&t"
+msgstr "Cắ&t"
#: Menus.cpp:324
-msgid "Spl&it Cut\tCtrl+Alt+X"
-msgstr "Ch&ia và Cắt\tCtrl+Alt+X"
+msgid "Spl&it Cut"
+msgstr "Ch&ia và Cắt"
#: Menus.cpp:325
-msgid "&Copy\tCtrl+C"
-msgstr "&Chép\tCtrl+C"
+msgid "&Copy"
+msgstr "&Chép"
#: Menus.cpp:329
-msgid "&Paste\tCtrl+V"
-msgstr "&Dán\tCtrl+V"
+msgid "&Paste"
+msgstr "&Dán"
#: Menus.cpp:333
-msgid "Tri&m\tCtrl+T"
-msgstr "Thu &gá»n\tCtrl+T"
+msgid "Tri&m"
+msgstr "Thu &gá»n"
#: Menus.cpp:335
-msgid "&Delete\tCtrl+K"
-msgstr "&Xoá\tCtrl+K"
+msgid "&Delete"
+msgstr "&Xoá"
#: Menus.cpp:336
-msgid "Split D&elete\tCtrl+Alt+K"
-msgstr "Chia &và Xoá\tCtrl+Alt+K"
+msgid "Split D&elete"
+msgstr "Chia &và Xoá"
#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
+msgid "Silence Audi&o"
msgstr ""
#: Menus.cpp:339
-msgid "Sp&lit\tCtrl+I"
-msgstr "Phâ&n chia\tCtrl+I"
+msgid "Sp&lit"
+msgstr "Phâ&n chia"
#: Menus.cpp:344
-msgid "Split Ne&w\tCtrl+Alt+I"
-msgstr "Chia và tạo &má»i\tCtrl+Alt+I"
+msgid "Split Ne&w"
+msgstr "Chia và tạo &má»i"
#: Menus.cpp:349
-msgid "&Join\tCtrl+J"
-msgstr "&Ghép ná»i\tCtrl+j"
+msgid "&Join"
+msgstr "&Ghép ná»i"
#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
+msgid "Detac&h at Silences"
msgstr ""
#: Menus.cpp:352
-msgid "Duplic&ate\tCtrl+D"
-msgstr "N&hân Äôi\tCtrl+D"
+msgid "Duplic&ate"
+msgstr "N&hân Äôi"
#: Menus.cpp:400 Menus.cpp:639
msgid "Stereo Trac&k to Mono"
@@ -1715,80 +1633,65 @@ msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:367
-msgid "&Cut\tAlt+X"
-msgstr "&Cắt\tAlt+X"
+msgid "&Cut"
+msgstr "&Cắt"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:372
-msgid "&Split Cut\tShift+Alt+X"
-msgstr "Chi&a và cắt\tShift+Alt+X"
+msgid "&Split Cut"
+msgstr "Chi&a và cắt"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:377
-msgid "Co&py\tShift+Alt+C"
-msgstr "Ché&p\tShift+Alt+C"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:383
-msgid "&Delete\tAlt+K"
-msgstr "&Xoá\tAlt+K"
+msgid "Co&py"
+msgstr "Ché&p"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:388
-msgid "Sp&lit Delete\tShift+Alt+K"
-msgstr "Chia &và Xoá\tShift+Alt+K"
+msgid "Sp&lit Delete"
+msgstr "Chia &và Xoá"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:393
-msgid "Sile&nce\tAlt+L"
-msgstr "Chèn khoảng &lặng\tAlt+L"
+msgid "Sile&nce"
+msgstr "Chèn khoảng &lặng"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:399
-msgid "Spli&t\tAlt+I"
-msgstr "Phâ&n chia\tAlt+I"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:404
-msgid "&Join\tAlt+J"
-msgstr "&Ghép ná»i\tAlt+J"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
-msgstr ""
+msgid "Spli&t"
+msgstr "Phâ&n chia"
#: Menus.cpp:456
msgid "&Select"
msgstr ""
#: Menus.cpp:416
-msgid "&All\tCtrl+A"
-msgstr "&Tất\tCtrl+A"
+msgid "&All"
+msgstr "&Tất"
#: Menus.cpp:417
-msgid "&None\tCtrl+Shift+A"
-msgstr "&Không gì hết\tCtrl+Shift+A"
+msgid "&None"
+msgstr "&Không gì hết"
#: Menus.cpp:421
-msgid "&Left at Playback Position\t["
-msgstr "Bên &trái vỠtrà phát lại\t["
+msgid "&Left at Playback Position"
+msgstr "Bên &trái vỠtrà phát lại"
#: Menus.cpp:422
-msgid "&Right at Playback Position\t]"
-msgstr "Bên &phải vỠtrà phát lại\t]"
+msgid "&Right at Playback Position"
+msgstr "Bên &phải vỠtrà phát lại"
#: Menus.cpp:426
-msgid "Track &Start to Cursor\tShift+J"
+msgid "Track &Start to Cursor"
msgstr "Từ Äầu Äến c&on trá»"
#: Menus.cpp:427
-msgid "Cursor to Track &End\tShift+K"
+msgid "Cursor to Track &End"
msgstr "Con &trá» Äến hết"
#: Menus.cpp:433
-msgid "Find &Zero Crossings\tZ"
-msgstr "Tìm Äiá»m biên Äá» bằng &không\tZ"
+msgid "Find &Zero Crossings"
+msgstr "Tìm Äiá»m biên Äá» bằng &không"
#: Menus.cpp:476
msgid "Mo&ve Cursor"
@@ -1803,11 +1706,11 @@ msgid "to Selection En&d"
msgstr "Äến cuá»&i vùng chá»n"
#: Menus.cpp:442
-msgid "to Track &Start\tJ"
+msgid "to Track &Start"
msgstr "Äến Äầ&u dải"
#: Menus.cpp:443
-msgid "to Track &End\tK"
+msgid "to Track &End"
msgstr "Äến &cuá»i dải"
#: Menus.cpp:450
@@ -1830,29 +1733,8 @@ msgstr "&Khoá"
msgid "&Unlock"
msgstr "&MỠkhoá"
-#: Menus.cpp:470
-msgid "Turn Snap-To On"
-msgstr "Báºt chế Äá» dÃnh"
-
-#: Menus.cpp:471
-msgid "Turn Snap-To Off"
-msgstr "Tắt chế Äá» dÃnh"
-
-#: Menus.cpp:472
-msgid "Turn Grid Snap On"
-msgstr "Báºt chế Äá» dÃnh và o toạ Äá»"
-
-#: Menus.cpp:473
-msgid "Turn Grid Snap Off"
-msgstr "Tắt chế Äá» dÃnh và o toạ Äá»"
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr ""
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
+msgid "Pre&ferences..."
msgstr ""
#: Menus.cpp:492
@@ -1860,36 +1742,36 @@ msgid "&View"
msgstr "&Xem"
#: Menus.cpp:494
-msgid "Zoom &In\tCtrl+1"
-msgstr "Phóng &To\tCtrl+1"
+msgid "Zoom &In"
+msgstr "Phóng &To"
#: Menus.cpp:497
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "Äúng &Cỡ\tCtrl+2"
+msgid "Zoom &Normal"
+msgstr "Äúng &Cỡ"
#: Menus.cpp:498
-msgid "Zoom &Out\tCtrl+3"
-msgstr "Thu &Nhá»\tCtrl+3"
+msgid "Zoom &Out"
+msgstr "Thu &Nhá»"
#: Menus.cpp:501
-msgid "&Fit in Window\tCtrl+F"
-msgstr "&Vừa cá»a sá»\tCtrl+F"
+msgid "&Fit in Window"
+msgstr "&Vừa cá»a sá»"
#: Menus.cpp:502
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "Vừa chiá»u n&gang\tCtrl+Shift+F"
+msgid "Fit &Vertically"
+msgstr "Vừa chiá»u n&gang"
#: Menus.cpp:503
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "Vừ&a vùng chá»n\tCtrl+E"
+msgid "&Zoom to Selection"
+msgstr "Vừ&a vùng chá»n"
#: Menus.cpp:506
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
-msgstr "&Gá»p các dải âm lại\tCtrl+Shift+C"
+msgid "&Collapse All Tracks"
+msgstr "&Gá»p các dải âm lại"
#: Menus.cpp:507
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
-msgstr "&Bung các dải âm ra\tCtrl+Shift+X"
+msgid "E&xpand All Tracks"
+msgstr "&Bung các dải âm ra"
#: Menus.cpp:510
msgid "&Show Clipping"
@@ -1950,40 +1832,40 @@ msgstr "ÄÆ¡n giản"
msgid "T&ransport"
msgstr ""
-#: Menus.cpp:591
-msgid "Play\tSpace"
-msgstr ""
+#: toolbars/ControlToolBar.cpp:177
+msgid "Play"
+msgstr "Phát"
#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
+msgid "&Loop Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Pause\tP"
+msgid "&Pause"
msgstr ""
#: Menus.cpp:596
-msgid "&Stop\tSpace"
+msgid "&Stop"
msgstr ""
#: Menus.cpp:799
-msgid "Skip to Start\tHome"
-msgstr "Nhảy vá» Äầu\tHome"
+msgid "Skip to Start"
+msgstr "Nhảy vá» Äầu"
#: Menus.cpp:800
-msgid "Skip to End\tEnd"
-msgstr "Chuyá»n vá» cuá»i\tEnd"
+msgid "Skip to End"
+msgstr "Chuyá»n vá» cuá»i"
#: Menus.cpp:600
-msgid "&Record\tR"
+msgid "&Record"
msgstr ""
#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
+msgid "&Timer Record..."
msgstr ""
#: Menus.cpp:604
-msgid "Append Record\tShift+R"
+msgid "Append Record"
msgstr ""
#: Menus.cpp:607
@@ -2011,15 +1893,14 @@ msgid "Add &New"
msgstr ""
#: Menus.cpp:553
-msgid "&Audio Track\tCtrl+Shift+N"
-msgstr "&Dải âm\tCtrl+Shift+N"
+msgid "&Audio Track"
+msgstr "&Dải âm"
#: Menus.cpp:554
msgid "&Stereo Track"
msgstr "Dải &stereo"
-#: Menus.cpp:556
-#: TimeTrack.cpp:44
+#: Menus.cpp:556 TimeTrack.cpp:44
msgid "&Time Track"
msgstr "Dải &thá»i gian"
@@ -2028,8 +1909,8 @@ msgid "Mi&x and Render"
msgstr "Trá»n và &Diá»
n tả"
#: Menus.cpp:572
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
-msgstr "Trá»n và Diá»
n tả sang Dải má»i\tCtrl+Shift+M"
+msgid "Mix and Render to New Track"
+msgstr "Trá»n và Diá»
n tả sang Dải má»i"
#: Menus.cpp:576
msgid "&Resample..."
@@ -2040,12 +1921,12 @@ msgid "Remo&ve Tracks"
msgstr "&Xoá Dải âm"
#: Menus.cpp:592
-msgid "&Mute All Tracks\tCtrl+U"
-msgstr "&Tắt tiếng má»i dải âm\tCtrl+U"
+msgid "&Mute All Tracks"
+msgstr "&Tắt tiếng má»i dải âm"
#: Menus.cpp:593
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
-msgstr "&Báºt tiếng má»i dải âm\tCtrl+Shift+X"
+msgid "&UnMute All Tracks"
+msgstr "&Báºt tiếng má»i dải âm"
#: Menus.cpp:597
msgid "Align with &Zero"
@@ -2091,17 +1972,17 @@ msgstr ""
msgid "Synchronize MIDI with Audio"
msgstr ""
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
+#: Menus.cpp:686
+msgid "&Link Audio and Label Tracks"
msgstr ""
-#: Menus.cpp:623
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "Thêm &Nhãn cho vùng chá»n\tCtrl+B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr ""
#: Menus.cpp:624
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "Thêm nhãn từ vỠtrà &phát lại\tCtrl+M"
+msgid "Add Label At &Playback Position"
+msgstr "Thêm nhãn từ vỠtrà &phát lại"
#: Menus.cpp:716
msgid "S&ort tracks"
@@ -2127,20 +2008,19 @@ msgstr ""
msgid "Effe&ct"
msgstr "&Hiá»u ứng"
-#: Menus.cpp:670
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "Lặp lại hiá»u ứng trưá»c\tCtrl+R"
-
#: Menus.cpp:702
msgid "&Analyze"
msgstr "&Phân tÃch"
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
+
#: Menus.cpp:704
msgid "Plot Spectrum..."
msgstr "Vẽ phá» tần sá»..."
-#: Menus.cpp:737
-#: Menus.cpp:740
+#: Menus.cpp:737 Menus.cpp:740
msgid "&Help"
msgstr "Trợ &giúp"
@@ -2152,9 +2032,9 @@ msgstr "Thông tin vỠ&Audacity CleanSpeech..."
msgid "&Show Welcome Message..."
msgstr "&Xin chà o..."
-#: Menus.cpp:748
-msgid "&Index..."
-msgstr "ChỠ&mục..."
+#: Menus.cpp:958
+msgid "&Help..."
+msgstr ""
#: Menus.cpp:959
msgid "Show &Log..."
@@ -2172,181 +2052,149 @@ msgstr "&Kiá»m thá»..."
msgid "&Audio Device Info..."
msgstr "&Thông tin phần cứng"
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
msgstr ""
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
msgstr ""
#: Menus.cpp:774
-msgid "Selection Tool\tF1"
-msgstr "Công cụ chá»n\tF1"
+msgid "Selection Tool"
+msgstr "Công cụ chá»n"
#: Menus.cpp:775
-msgid "Envelope Tool\tF2"
-msgstr "Công cụ biên Äá»\tF2"
+msgid "Envelope Tool"
+msgstr "Công cụ biên Äá»"
#: Menus.cpp:776
-msgid "Draw Tool\tF3"
-msgstr "Công cụ vẽ\tF3"
+msgid "Draw Tool"
+msgstr "Công cụ vẽ"
#: Menus.cpp:777
-msgid "Zoom Tool\tF4"
-msgstr "Công cụ thu phóng\tF4"
+msgid "Zoom Tool"
+msgstr "Công cụ thu phóng"
#: Menus.cpp:778
-msgid "Time Shift Tool\tF5"
-msgstr "Công cụ di chuyá»n\tF5"
+msgid "Time Shift Tool"
+msgstr "Công cụ di chuyá»n"
#: Menus.cpp:779
-msgid "Multi Tool\tF6"
-msgstr "Äa nÄng\tF6"
+msgid "Multi Tool"
+msgstr "Äa nÄng"
#: Menus.cpp:781
-msgid "Next Tool\tD"
-msgstr "Công cụ kế\tD"
+msgid "Next Tool"
+msgstr "Công cụ kế"
#: Menus.cpp:782
-msgid "Previous Tool\tA"
-msgstr "Công cụ trưá»c\tA"
+msgid "Previous Tool"
+msgstr "Công cụ trưá»c"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
+msgid "Play/Stop"
msgstr ""
-#: Menus.cpp:785
-msgid "Stop\tS"
-msgstr "Dừng\tS"
-
-#: Menus.cpp:786
-msgid "Pause\tP"
-msgstr "Tạm dừng\tP"
-
-#: Menus.cpp:787
-msgid "Record\tR"
-msgstr "Thu\tR"
-
-#: Menus.cpp:788
-msgid "Record Append\tShift+R"
-msgstr "Ghi tiếp và o cuá»i\tShift+R"
-
#: Menus.cpp:790
-msgid "Play/Stop and Set Cursor\tShift+A"
-msgstr "Phát/Dừng và Äặt con trá»\tShift+A"
+msgid "Play/Stop and Set Cursor"
+msgstr "Phát/Dừng và Äặt con trá»"
#: Menus.cpp:793
-msgid "Play One Second\t1"
-msgstr "Phát Äúng 1 giây\t1"
+msgid "Play One Second"
+msgstr "Phát Äúng 1 giây"
#: Menus.cpp:794
-msgid "Play To Selection\tB"
-msgstr "Phát Äến vùng chá»n\tB"
-
-#: Menus.cpp:795
-msgid "Play Looped\tL"
-msgstr "Phát nhiá»u lần\tL"
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
+msgid "Play To Selection"
+msgstr "Phát Äến vùng chá»n"
#: Menus.cpp:797
-msgid "Play Cut Preview\tC"
-msgstr "Phát Cắt Xem trưá»c\tC"
+msgid "Play Cut Preview"
+msgstr "Phát Cắt Xem trưá»c"
#: Menus.cpp:802
-msgid "Selection to Start\tShift+Home"
-msgstr "Chá»n vá» Äầu\tShift+Home"
+msgid "Selection to Start"
+msgstr "Chá»n vá» Äầu"
#: Menus.cpp:803
-msgid "Selection to End\tShift+End"
-msgstr "Chá»n Äến hết\tShift+End"
+msgid "Selection to End"
+msgstr "Chá»n Äến hết"
#: Menus.cpp:805
-msgid "DeleteKey\tBackspace"
-msgstr "Xoá\tBackspace"
+msgid "DeleteKey"
+msgstr "Xoá"
#: Menus.cpp:810
-msgid "DeleteKey2\tDelete"
-msgstr "Xoá2\tDelete"
+msgid "DeleteKey2"
+msgstr "Xoá2"
-#: Menus.cpp:816
-msgid "Seek left short period during playback\tLeft"
-msgstr "Quay lui từng Äoạn nhá» khi phát\tLeft"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
+msgstr ""
-#: Menus.cpp:817
-msgid "Seek right short period during playback\tRight"
-msgstr "Chuyá»n tá»i từng Äoạn khi phát\tRight"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
+msgstr ""
-#: Menus.cpp:818
-msgid "Seek left long period during playback\tShift+Left"
-msgstr "Quay lui từng Äoạn dà i khi phát\tShift+Left"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
+msgstr ""
-#: Menus.cpp:819
-msgid "Seek right long period during playback\tShift+Right"
-msgstr "Chuyá»n tá»i từng Äoạn dà i khi phát\tShift+Right"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
+msgstr ""
#: Menus.cpp:823
-msgid "Move Focus to Previous Track\tUp"
-msgstr "Chuyá»n lên dải trên\tUp"
+msgid "Move Focus to Previous Track"
+msgstr "Chuyá»n lên dải trên"
-#: Menus.cpp:824
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
-msgstr "Chuyá»n lên dải trên kèm theo vùng chá»n\tShift+Up"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
+msgstr ""
#: Menus.cpp:825
-msgid "Move Focus to Next Track\tDown"
-msgstr "Chuyá»n xuá»ng dải dưá»i\tDown"
+msgid "Move Focus to Next Track"
+msgstr "Chuyá»n xuá»ng dải dưá»i"
-#: Menus.cpp:826
-msgid "Move Focus to Next and Change Selection\tShift+Down"
-msgstr "Chuyá»n xuá»ng dải dưá»i kèm theo vùng chá»n\tShift+Down"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
+msgstr ""
#: Menus.cpp:827
-msgid "Toggle Focused Track\tReturn"
-msgstr "Chá»n/thôi chá»n dải\tReturn"
-
-#: Menus.cpp:828
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr "Chá»n/thôi chá»n dải\tNUMPAD_ENTER"
-
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
-msgstr ""
+msgid "Toggle Focused Track"
+msgstr "Chá»n/thôi chá»n dải"
#: Menus.cpp:831
-msgid "Cursor Left\tLeft"
-msgstr "Con trỠsang trái\tLeft"
+msgid "Cursor Left"
+msgstr "Con trỠsang trái"
#: Menus.cpp:832
-msgid "Cursor Right\tRight"
-msgstr "Con trỠsang phải\tRight"
+msgid "Cursor Right"
+msgstr "Con trỠsang phải"
#: Menus.cpp:833
-msgid "Cursor Short Jump Left\t,"
-msgstr "Con trá» sang trái Äoạn ngắn\t,"
+msgid "Cursor Short Jump Left"
+msgstr "Con trá» sang trái Äoạn ngắn"
#: Menus.cpp:834
-msgid "Cursor Short Jump Right\t."
-msgstr "Con trá» sang phải Äoạn ngắn\t."
+msgid "Cursor Short Jump Right"
+msgstr "Con trá» sang phải Äoạn ngắn"
#: Menus.cpp:835
-msgid "Cursor Long Jump Left\tShift+,"
-msgstr "Con trá» sang trái Äoạn dà i\tShift+,"
+msgid "Cursor Long Jump Left"
+msgstr "Con trá» sang trái Äoạn dà i"
#: Menus.cpp:836
-msgid "Cursor Long Jump Right\tShift+."
-msgstr "Con trá» sang phải Äoạn dà i\tShift+."
+msgid "Cursor Long Jump Right"
+msgstr "Con trá» sang phải Äoạn dà i"
#: Menus.cpp:838
-msgid "Selection Extend Left\tShift+Left"
-msgstr "Vùng chá»n ná»i sang trái\tShift+Left"
+msgid "Selection Extend Left"
+msgstr "Vùng chá»n ná»i sang trái"
#: Menus.cpp:839
-msgid "Selection Extend Right\tShift+Right"
-msgstr "Vùng chá»n ná»i sang phải\tShift+Right"
+msgid "Selection Extend Right"
+msgstr "Vùng chá»n ná»i sang phải"
#: Menus.cpp:841
msgid "Set (or Extend) Left Selection"
@@ -2357,52 +2205,52 @@ msgid "Set (or Extend) Right Selection"
msgstr "Äặt (hoặc Ná»i) Vùng chá»n sang phải"
#: Menus.cpp:844
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "Co bên trái Vùng chá»n\tCtrl+Shift+Right"
+msgid "Selection Contract Left"
+msgstr "Co bên trái Vùng chá»n"
#: Menus.cpp:845
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "Co bên phải vùng chá»n\tCtrl+Shift+Left"
+msgid "Selection Contract Right"
+msgstr "Co bên phải vùng chá»n"
#: Menus.cpp:847
-msgid "Change pan on focused track\tShift+P"
-msgstr "Thay Äá»i cân bằng trái/phải cá»§a dải\tShift+P"
+msgid "Change pan on focused track"
+msgstr "Thay Äá»i cân bằng trái/phải cá»§a dải"
#: Menus.cpp:848
-msgid "Pan left on focused track\tAlt+Shift+Left"
-msgstr "Dá»ch cân bằng sang trái\tAlt+Shift+Left"
+msgid "Pan left on focused track"
+msgstr "Dá»ch cân bằng sang trái"
#: Menus.cpp:849
-msgid "Pan right on focused track\tAlt+Shift+Right"
-msgstr "Dá»ch cân bằng sang phải\tAlt+Shift+Right"
+msgid "Pan right on focused track"
+msgstr "Dá»ch cân bằng sang phải"
#: Menus.cpp:850
-msgid "Change gain on focused track\tShift+G"
-msgstr "Thay Äá»i Äá» khuếch Äại\tShift+G"
+msgid "Change gain on focused track"
+msgstr "Thay Äá»i Äá» khuếch Äại"
#: Menus.cpp:851
-msgid "Increase gain on focused track\tAlt+Shift+Up"
-msgstr "TÄng Äá» khuếch Äại biên Äá»\tAlt+Shift+Up"
+msgid "Increase gain on focused track"
+msgstr "TÄng Äá» khuếch Äại biên Äá»"
#: Menus.cpp:852
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
-msgstr "Giảm Äá» khuếch Äại\tAlt+Shift+Down"
+msgid "Decrease gain on focused track"
+msgstr "Giảm Äá» khuếch Äại"
#: Menus.cpp:853
-msgid "Open menu on focused track\tShift+M"
-msgstr "Má» trình ÄÆ¡n trên dải hiá»n hà nh\tShift+M"
+msgid "Open menu on focused track"
+msgstr "Má» trình ÄÆ¡n trên dải hiá»n hà nh"
#: Menus.cpp:854
-msgid "Mute/Unmute focused track\tShift+U"
-msgstr "Tắt/báºt âm thanh cá»§a dải hiá»n hà nh\tShift+U"
+msgid "Mute/Unmute focused track"
+msgstr "Tắt/báºt âm thanh cá»§a dải hiá»n hà nh"
#: Menus.cpp:855
-msgid "Solo/Unsolo focused track\tShift+S"
-msgstr "Báºt/tắt chế Äá» Solo cá»§a dải hiá»n hà nh\tShift+S"
+msgid "Solo/Unsolo focused track"
+msgstr "Báºt/tắt chế Äá» Solo cá»§a dải hiá»n hà nh"
#: Menus.cpp:856
-msgid "Close focused track\tShift+C"
-msgstr "Äóng dải hiá»n hà nh\tShift+C"
+msgid "Close focused track"
+msgstr "Äóng dải hiá»n hà nh"
#: Menus.cpp:858
msgid "Snap To On"
@@ -2413,7 +2261,35 @@ msgid "Snap To Off"
msgstr "Tắt chế Äá» dÃnh"
#: Menus.cpp:1071
-msgid "Full screen on/off\tF11"
+msgid "Full screen on/off"
+msgstr ""
+
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr ""
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr ""
+
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr ""
+
+#: Menus.cpp:1074
+msgid "Adjust input source"
msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
@@ -2474,8 +2350,8 @@ msgstr "Bạn phải chá»n 1 dải âm trưá»c Äã!"
#: Menus.cpp:2035
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "Lặp lại %s\tCtrl+R"
+msgid "Repeat %s"
+msgstr "Lặp lại %s"
#: Menus.cpp:2166
msgid "There are no label tracks to export."
@@ -2506,9 +2382,7 @@ msgstr "Không thá» huá»· bưá»c"
msgid "Nothing to redo"
msgstr "Không thỠlà m lại"
-#: Menus.cpp:2366
-#: TrackPanel.cpp:605
-#: toolbars/EditToolBar.cpp:133
+#: Menus.cpp:2366 TrackPanel.cpp:605 toolbars/EditToolBar.cpp:133
msgid "Cut"
msgstr "Cắt"
@@ -2524,10 +2398,7 @@ msgstr "Chia và Cắt"
msgid "Split-cut to the clipboard"
msgstr "Chia rá»i cắt và o bảng kẹp tạm"
-#: Menus.cpp:2469
-#: Menus.cpp:2540
-#: Menus.cpp:2634
-#: TrackPanel.cpp:607
+#: Menus.cpp:2469 Menus.cpp:2540 Menus.cpp:2634 TrackPanel.cpp:607
#: toolbars/EditToolBar.cpp:137
msgid "Paste"
msgstr "Dán"
@@ -2536,8 +2407,7 @@ msgstr "Dán"
msgid "Pasted text from the clipboard"
msgstr "Äã dán vÄn bản từ bảng kẹp tạm"
-#: Menus.cpp:2540
-#: Menus.cpp:2634
+#: Menus.cpp:2540 Menus.cpp:2634
msgid "Pasted from the clipboard"
msgstr "Äã dán từ bảng kẹp tạm"
@@ -2549,8 +2419,7 @@ msgstr ""
msgid "Copying stereo audio into a mono track is not allowed."
msgstr "Không thỠchép âm thanh stereo sang dải mono."
-#: Menus.cpp:2670
-#: toolbars/EditToolBar.cpp:139
+#: Menus.cpp:2670 toolbars/EditToolBar.cpp:139
msgid "Trim"
msgstr "Thu gá»n"
@@ -2590,8 +2459,7 @@ msgstr "Ghép ná»i"
msgid "Silenced selected tracks for %.2f seconds at %.2f"
msgstr "Äã tạo khoảng lặng dà i %.2f giây tại %.2f và o dải hiá»n hà nh"
-#: Menus.cpp:2771
-#: toolbars/EditToolBar.cpp:141
+#: Menus.cpp:2771 toolbars/EditToolBar.cpp:141
msgid "Silence"
msgstr "Im lặng"
@@ -2675,8 +2543,7 @@ msgstr "Bá» ghép ná»i nhãn"
msgid "Disjoined labeled regions"
msgstr "Äã bá» ghép ná»i vùng có nhãn"
-#: Menus.cpp:2947
-#: TrackPanel.cpp:6121
+#: Menus.cpp:2947 TrackPanel.cpp:6121
msgid "Split"
msgstr "Chia"
@@ -2692,15 +2559,6 @@ msgstr "Phần chia tạo thà nh dải má»i"
msgid "Split at labels"
msgstr "Chia tại nhãn"
-#: Menus.cpp:3425
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "Äá» vẽ phá», tất cả các dải ÄÆ°á»£c chá»n phải có cùng tá»c Äá» lấy mẫu"
-
-#: Menus.cpp:3451
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "Bạn chá»n quá nhiá»u dữ liá»u. Audacity sẽ chá» phân tÃch %.1f giây Äầu tiên cá»§a phần chá»n."
-
#: Menus.cpp:3584
#, c-format
msgid "Imported labels from '%s'"
@@ -2739,8 +2597,7 @@ msgstr "Tất cả (*)|*"
msgid "Edit the metadata tags"
msgstr "Sá»a các thẻ dữ liá»u Äặc tả"
-#: Menus.cpp:3669
-#: export/Export.cpp:298
+#: Menus.cpp:3669 export/Export.cpp:298
msgid "Edit Metadata"
msgstr "Sá»a dữ liá»u Äặc tả"
@@ -2767,8 +2624,7 @@ msgstr "Äã trá»n và diá»
n tả %d dải thà nh má»t dải stereo má»i"
msgid "Mixed and rendered %d tracks into one new mono track"
msgstr "Äã trá»n và diá»
n tả %d dải thà nh má»t dải mono má»i"
-#: Menus.cpp:3736
-#: Mix.cpp:120
+#: Menus.cpp:3736 Mix.cpp:120
msgid "&Mix and Render"
msgstr "&Trá»n và Diá»
n tả"
@@ -2820,10 +2676,7 @@ msgstr ""
msgid "Created new audio track"
msgstr "Tạo dải âm má»i"
-#: Menus.cpp:3950
-#: Menus.cpp:3973
-#: Menus.cpp:3988
-#: Menus.cpp:4008
+#: Menus.cpp:3950 Menus.cpp:3973 Menus.cpp:3988 Menus.cpp:4008
msgid "New Track"
msgstr "Dải âm má»i"
@@ -2859,8 +2712,7 @@ msgstr "Lưu táºp tin thiết láºp sẵn cho CleenSpeech:"
msgid "CleanSpeech Presets (*.csp)|*.csp"
msgstr "Thiết láºp sẵn CleanSpeech (*.csp)|*.csp"
-#: Menus.cpp:4123
-#: export/Export.cpp:515
+#: Menus.cpp:4123 export/Export.cpp:515
msgid "Sorry, pathnames longer than 256 characters not supported."
msgstr "Không cấp nháºn ÄÆ°á»ng dẫn dà i hÆ¡n 256 chữ."
@@ -2868,8 +2720,7 @@ msgstr "Không cấp nháºn ÄÆ°á»ng dẫn dà i hÆ¡n 256 chữ."
msgid "Problem encountered exporting presets."
msgstr "Lá»i xảy ra khi xuất thiết láºp sẵn."
-#: Menus.cpp:4170
-#: export/Export.cpp:408
+#: Menus.cpp:4170 export/Export.cpp:408
msgid "Unable to export"
msgstr "Không thá» xuất ra táºp tin"
@@ -2881,9 +2732,7 @@ msgstr "Xoá bỠdải âm"
msgid "Removed audio track(s)"
msgstr "Äã xoá bá» dải âm"
-#: Menus.cpp:4508
-#: Menus.cpp:4527
-#: export/ExportMP3.cpp:1926
+#: Menus.cpp:4508 Menus.cpp:4527 export/ExportMP3.cpp:1926
msgid "Resample"
msgstr "Äá»i tá»c Äá» lấy mẫu"
@@ -2908,8 +2757,7 @@ msgstr "Äá»i tá»c Äá» lấy mẫu cho dải âm"
msgid "Resampled audio track(s)"
msgstr "Äã thay Äá»i tá»c Äá» lấy mẫu cho dải âm"
-#: Mix.cpp:94
-#: Mix.cpp:101
+#: Mix.cpp:94 Mix.cpp:101
msgid "Mix"
msgstr "Trá»n"
@@ -2929,6 +2777,10 @@ msgstr "Có lá»i xảy ra khi in."
msgid "Print"
msgstr "In"
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr ""
+
#: Project.cpp:636
msgid "Main Mix"
msgstr "Bá» trá»n chÃnh"
@@ -2942,14 +2794,11 @@ msgstr "Chà o bạn, bạn Äang dùng Audacity phiên bản %s"
msgid "(Recovered)"
msgstr "(Äã phục há»i)"
-#: Project.cpp:1482
-#: TrackPanel.cpp:804
-#: toolbars/ControlToolBar.cpp:191
+#: Menus.cpp:787
msgid "Record"
msgstr "Thu"
-#: Project.cpp:1482
-#: TrackPanel.cpp:804
+#: Project.cpp:1482 TrackPanel.cpp:804
msgid "Recorded Audio"
msgstr "Äã thu âm"
@@ -2975,9 +2824,9 @@ msgstr "\n"
msgid "Save changes?"
msgstr "Lưu các thay Äá»i?"
-#: Project.cpp:1694
-msgid "All files|*.*|All supported files|"
-msgstr "Má»i táºp tin|*.*|Má»i táºp tin ÄÆ°á»£c há» trÆ¡|"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
+msgstr ""
#: Project.cpp:1719
msgid "Select one or more audio files..."
@@ -2987,8 +2836,7 @@ msgstr "Chá»n má»t hoặc nhiá»u táºp tin âm thanh..."
msgid "Audacity projects|*.aup|"
msgstr "Dự án Audacity|*.aup|"
-#: Project.cpp:1799
-#: Project.cpp:2186
+#: Project.cpp:1799 Project.cpp:2186
#, c-format
msgid "This file was saved by Audacity %s, a much\n"
"older version. The format has changed.\n"
@@ -3010,13 +2858,22 @@ msgstr "Audacity %s Äã lưu táºp tin nà y.\n"
msgid "1.0 or earlier"
msgstr "1.0 trá» xuá»ng"
-#: Project.cpp:1806
-#: Project.cpp:2198
+#: Project.cpp:1806 Project.cpp:2198
msgid "Opening old project file"
msgstr "Má» táºp tin dá»± án cÅ©"
-#: Project.cpp:1832
-#: Project.cpp:1840
+#: Project.cpp:2073
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr ""
+
+#: Project.cpp:1832 Project.cpp:1840
msgid "Error opening file"
msgstr "Lá»i khi má» táºp tin"
@@ -3051,8 +2908,7 @@ msgstr "Phục há»i"
msgid "Project checker repaired file"
msgstr "Quá trình kiá»m tra dá»± án Äã sá»a lại các táºp tin"
-#: Project.cpp:2001
-#: effects/Repair.h:29
+#: Project.cpp:2001 effects/Repair.h:29
msgid "Repair"
msgstr "Sá»a"
@@ -3074,15 +2930,15 @@ msgstr "Audacity %s Äã lưu táºp tin nà y.\n"
msgid "Can't open project file"
msgstr "Không má» ÄÆ°á»£c táºp tin dá»± án"
-#: Project.cpp:2193
+#: Project.cpp:2484
#, c-format
msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
-msgstr "Audacity %s Äã lưu táºp tin nà y.\n"
-"Phiên bản Audacity nà y có thá» má» nó, nhưng nếu bạn lưu lại dá»± án bằng phiên bản nà y, bạn không thá» má» táºp tin bằng phiên bản trưá»c ÄÆ°á»£c nữa.\n"
-"Bạn có muá»n má» táºp tin nà y không?"
+msgstr ""
#: Project.cpp:2537
msgid "Your project is now empty.\n"
@@ -3099,17 +2955,22 @@ msgstr ""
msgid "Warning empty project"
msgstr ""
-#: Project.cpp:2591
+#: Project.cpp:2792
#, c-format
msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+"is not writable or the disk is full."
msgstr ""
-#: Project.cpp:2428
-#: Project.cpp:2442
+#: Project.cpp:2428 Project.cpp:2442
msgid "Error saving project"
msgstr "Có lá»i khi lưu dá»± án"
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
#: Project.cpp:2504
#, c-format
msgid "Saved %s"
@@ -3120,16 +2981,12 @@ msgstr "Äã lưu %s"
msgid "Imported '%s'"
msgstr "Äã nháºp '%s'"
-#: Menus.cpp:3649
-#: Project.cpp:2587
-#: Project.cpp:2612
-#: import/ImportPCM.cpp:440
+#: Menus.cpp:3649 Project.cpp:2587 Project.cpp:2612 import/ImportPCM.cpp:440
#: import/ImportPCM.cpp:484
msgid "Import"
msgstr "Nháºp"
-#: Project.cpp:2639
-#: Project.cpp:2647
+#: Project.cpp:2639 Project.cpp:2647
msgid "Error importing"
msgstr "Có lá»i khi nháºp"
@@ -3172,8 +3029,7 @@ msgstr "Tạo dá»± án má»i"
msgid "Deleted %.2f seconds at t=%.2f"
msgstr "Äã xoá %.2f giây tại t=%.2f"
-#: Project.cpp:2859
-#: effects/Equalization.cpp:1262
+#: Project.cpp:2859 effects/Equalization.cpp:1262
#: effects/Equalization.cpp:2593
msgid "Delete"
msgstr "Xoá"
@@ -3254,8 +3110,7 @@ msgstr "Libsamplerate viết bá»i Erik de Castro Lopo"
msgid "Libsamplerate error: %d\n"
msgstr "Lá»i thư viá»n Libsamplerate: %d\n"
-#: Resample.cpp:240
-#: Resample.cpp:250
+#: Resample.cpp:240 Resample.cpp:250
msgid "Resampling disabled."
msgstr "Không lấy mẫu lại."
@@ -3274,6 +3129,163 @@ msgstr "24-bit PCM"
msgid "32-bit float"
msgstr "32-bit float"
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
+
+#: export/ExportMultiple.cpp:216 prefs/DirectoriesPrefs.cpp:92
+msgid "Choose..."
+msgstr "Chá»n..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
+
+#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
+msgid "false"
+msgstr "Không chá»n"
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr "Công cụ"
+
+#: toolbars/ControlToolBar.cpp:82
+msgid "Control"
+msgstr "Äiá»u khiá»n"
+
+#: toolbars/MixerToolBar.cpp:60
+msgid "Mixer"
+msgstr "Bá» trá»n"
+
+#: toolbars/MeterToolBar.cpp:50
+msgid "Meter"
+msgstr "Bá» Äo"
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
+#: toolbars/DeviceToolBar.cpp:57
+msgid "Device"
+msgstr "Thiết bá»"
+
+#: toolbars/TranscriptionToolBar.cpp:84
+msgid "Transcription"
+msgstr "Tá»c Äá» phát"
+
+#: TrackPanel.cpp:464 TrackPanel.cpp:465
+msgid "Track Panel"
+msgstr "Bảng dải âm thanh"
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: export/ExportMultiple.cpp:258
+msgid "Tracks"
+msgstr "Các Dải âm"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
#: Screenshot.cpp:384
msgid "Saved "
msgstr "Äã lưu"
@@ -3282,14 +3294,15 @@ msgstr "Äã lưu"
msgid "Error trying to save file: "
msgstr "Lá»i khi cá» gắng lưu táºp tin:"
-#: Sequence.cpp:732
-#: Sequence.cpp:742
-#: Sequence.cpp:749
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
+#: Sequence.cpp:732 Sequence.cpp:742 Sequence.cpp:749
msgid "Gap detected in project file\n"
msgstr "Tìm thấy thiếu sót trên dự án\n"
-#: ShuttleGui.cpp:1852
-#: effects/Effect.cpp:342
+#: ShuttleGui.cpp:1852 effects/Effect.cpp:342
#: effects/audiounits/AudioUnitEffect.cpp:872
msgid "Pre&view"
msgstr "Xe&m trưá»c"
@@ -3330,8 +3343,7 @@ msgstr "Tên Album"
msgid "Track Number"
msgstr "SỠtrên album"
-#: Tags.cpp:633
-#: Tags.cpp:2138
+#: Tags.cpp:633 Tags.cpp:2138
msgid "Year"
msgstr "NÄm"
@@ -3339,9 +3351,7 @@ msgstr "NÄm"
msgid "Genre"
msgstr "ThỠloại"
-#: Tags.cpp:635
-#: Tags.cpp:2148
-#: prefs/MousePrefs.cpp:96
+#: Tags.cpp:635 Tags.cpp:2148 prefs/MousePrefs.cpp:96
msgid "Comments"
msgstr "Ghi chú"
@@ -3357,9 +3367,7 @@ msgstr "Tên thẻ"
msgid "Tag Value"
msgstr "Giá trỠthẻ"
-#: Tags.cpp:818
-#: Tags.cpp:1476
-#: prefs/KeyConfigPrefs.cpp:116
+#: Tags.cpp:818 Tags.cpp:1476 prefs/KeyConfigPrefs.cpp:116
msgid "&Clear"
msgstr "&Xoá"
@@ -3375,71 +3383,42 @@ msgstr ""
msgid "Rese&t..."
msgstr ""
-#: Tags.cpp:834
-#: Tags.cpp:1460
-#: Tags.cpp:1988
+#: Tags.cpp:834 Tags.cpp:1460 Tags.cpp:1988
msgid "Template"
msgstr "Mẫu"
-#: Tags.cpp:838
-#: Tags.cpp:1464
-#: Tags.cpp:1992
-#: prefs/KeyConfigPrefs.cpp:126
+#: Tags.cpp:838 Tags.cpp:1464 Tags.cpp:1992 prefs/KeyConfigPrefs.cpp:126
msgid "&Load..."
msgstr "&Nạp..."
-#: Tags.cpp:839
-#: Tags.cpp:1465
-#: Tags.cpp:1993
-#: prefs/KeyConfigPrefs.cpp:125
+#: Tags.cpp:839 Tags.cpp:1465 Tags.cpp:1993 prefs/KeyConfigPrefs.cpp:125
msgid "&Save..."
msgstr "&Lưu..."
-#: Tags.cpp:841
-#: Tags.cpp:1467
-#: Tags.cpp:1995
+#: Tags.cpp:841 Tags.cpp:1467 Tags.cpp:1995
msgid "S&et Default"
msgstr "Äặt là m &Mặc Äá»nh"
-#: Tags.cpp:991
-#: Tags.cpp:1630
-#: Tags.cpp:2359
+#: Tags.cpp:991 Tags.cpp:1630 Tags.cpp:2359
msgid "Edit Genres"
msgstr "Chá»nh sá»a thá» loại"
-#: Tags.cpp:1024
-#: Tags.cpp:1036
-#: Tags.cpp:1052
-#: Tags.cpp:1065
-#: Tags.cpp:1668
-#: Tags.cpp:1680
-#: Tags.cpp:1696
-#: Tags.cpp:1709
-#: Tags.cpp:2402
-#: Tags.cpp:2414
-#: Tags.cpp:2430
-#: Tags.cpp:2443
+#: Tags.cpp:1024 Tags.cpp:1036 Tags.cpp:1052 Tags.cpp:1065 Tags.cpp:1668
+#: Tags.cpp:1680 Tags.cpp:1696 Tags.cpp:1709 Tags.cpp:2402 Tags.cpp:2414
+#: Tags.cpp:2430 Tags.cpp:2443
msgid "Reset Genres"
msgstr "Äặt lại thá» loại"
-#: Tags.cpp:1024
-#: Tags.cpp:1065
-#: Tags.cpp:1668
-#: Tags.cpp:1709
-#: Tags.cpp:2402
+#: Tags.cpp:1024 Tags.cpp:1065 Tags.cpp:1668 Tags.cpp:1709 Tags.cpp:2402
#: Tags.cpp:2443
msgid "Unable to save genre file."
msgstr "Không thá» lưu táºp tin thá» loại"
-#: Tags.cpp:1035
-#: Tags.cpp:1679
-#: Tags.cpp:2413
+#: Tags.cpp:1035 Tags.cpp:1679 Tags.cpp:2413
msgid "Are you sure you want to reset the genre list to defaults?"
msgstr "Bạn có chắc là sẽ thiết láºp lại danh sách thá» loại vá» mặc Äá»nh không?"
-#: Tags.cpp:1052
-#: Tags.cpp:1696
-#: Tags.cpp:2430
+#: Tags.cpp:1052 Tags.cpp:1696 Tags.cpp:2430
msgid "Unable to open genre file."
msgstr "Không má» ÄÆ°á»£c táºp tin thá» loại."
@@ -3447,21 +3426,19 @@ msgstr "Không má» ÄÆ°á»£c táºp tin thá» loại."
msgid "Load Metadata As:"
msgstr ""
-#: Tags.cpp:1112
-#: Tags.cpp:1763
-#: Tags.cpp:2486
+#: Tags.cpp:1112 Tags.cpp:1763 Tags.cpp:2486
msgid "Error loading metadata"
msgstr "Lá»i nạp dữ liá»u Äặc tả"
-#: Tags.cpp:1087
-#: Tags.cpp:1141
-#: Tags.cpp:1742
-#: Tags.cpp:1778
-#: Tags.cpp:2465
+#: Tags.cpp:1087 Tags.cpp:1141 Tags.cpp:1742 Tags.cpp:1778 Tags.cpp:2465
#: Tags.cpp:2501
msgid "Save Metadata As:"
msgstr "Lưu Dữ liá»u Äặc tả thà nh:"
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
#: Theme.cpp:638
#, c-format
msgid "Audacity could not write file:\n"
@@ -3494,8 +3471,7 @@ msgstr "Audacity không tìm thấy táºp tin:\n"
" %s.\n"
"Chưa nạp sắc thái giao diá»n."
-#: Theme.cpp:807
-#: Theme.cpp:896
+#: Theme.cpp:807 Theme.cpp:896
#, c-format
msgid "Audacity could not load file:\n"
" %s.\n"
@@ -3519,8 +3495,7 @@ msgstr "Không tìm thấy các táºp tin cấu thà nh\n"
"sắc thái giao diá»n trong:\n"
" %s."
-#: Theme.cpp:942
-#: effects/NoiseRemoval.cpp:173
+#: Theme.cpp:942 effects/NoiseRemoval.cpp:173
#, c-format
msgid "Could not create directory:\n"
" %s"
@@ -3543,12 +3518,8 @@ msgstr "Tất cả các táºp tin cần thiết:\n"
" %s\n"
"Äá»u Äang hiá»n hữu."
-#: SmartRecordDialog.cpp:226
-#: SmartRecordDialog.cpp:307
-#: TimeDialog.cpp:53
-#: effects/Noise.cpp:235
-#: effects/ToneGen.cpp:329
-#: effects/ToneGen.cpp:374
+#: SmartRecordDialog.cpp:226 SmartRecordDialog.cpp:307 TimeDialog.cpp:53
+#: effects/Noise.cpp:235 effects/ToneGen.cpp:329 effects/ToneGen.cpp:374
msgid "Duration"
msgstr "Äá» dà i"
@@ -3556,6 +3527,14 @@ msgstr "Äá» dà i"
msgid "Audacity Timer Record"
msgstr "Bá» thu âm Äá»nh thá»i cá»§a Audacity"
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
#: SmartRecordDialog.cpp:223
msgid "Recording start"
msgstr "Bắt Äầu thu âm"
@@ -3595,40 +3574,23 @@ msgstr "Äang chá» Äá» bắt Äầu ghi âm tại %s.\n"
msgid "Audacity Timer Record - Waiting for Start"
msgstr ""
-#: TrackPanel.cpp:464
-#: TrackPanel.cpp:465
-msgid "Track Panel"
-msgstr "Bảng dải âm thanh"
-
-#: TrackPanel.cpp:548
-#: export/ExportPCM.cpp:133
-#: prefs/QualityPrefs.cpp:97
+#: TrackPanel.cpp:548 export/ExportPCM.cpp:133 prefs/QualityPrefs.cpp:97
msgid "Other..."
msgstr "Khác..."
-#: TrackPanel.cpp:556
-#: TrackPanel.cpp:580
-#: TrackPanel.cpp:589
-#: TrackPanel.cpp:597
+#: TrackPanel.cpp:556 TrackPanel.cpp:580 TrackPanel.cpp:589 TrackPanel.cpp:597
msgid "Name..."
msgstr "Tên..."
-#: TrackPanel.cpp:558
-#: TrackPanel.cpp:582
-#: TrackPanel.cpp:593
-#: TrackPanel.cpp:599
+#: TrackPanel.cpp:558 TrackPanel.cpp:582 TrackPanel.cpp:593 TrackPanel.cpp:599
msgid "Move Track Up"
msgstr "ÄÆ°a dải lên trên"
-#: TrackPanel.cpp:559
-#: TrackPanel.cpp:583
-#: TrackPanel.cpp:594
-#: TrackPanel.cpp:600
+#: TrackPanel.cpp:559 TrackPanel.cpp:583 TrackPanel.cpp:594 TrackPanel.cpp:600
msgid "Move Track Down"
msgstr "Chuyá»n dải xuá»ng dưá»i"
-#: TrackPanel.cpp:561
-#: effects/ToneGen.cpp:325
+#: TrackPanel.cpp:561 effects/ToneGen.cpp:325
msgid "Waveform"
msgstr "Dạng sóng"
@@ -3644,18 +3606,15 @@ msgstr "Phá» logarith (f)"
msgid "Pitch (EAC)"
msgstr "Äá» cao cá»§a âm (EAC)"
-#: TrackPanel.cpp:569
-#: TrackPanel.cpp:6091
+#: TrackPanel.cpp:569 TrackPanel.cpp:6091
msgid "Mono"
msgstr "Mono"
-#: TrackPanel.cpp:570
-#: TrackPanel.cpp:6090
+#: TrackPanel.cpp:570 TrackPanel.cpp:6090
msgid "Left Channel"
msgstr "Kênh trái"
-#: TrackPanel.cpp:571
-#: TrackPanel.cpp:6090
+#: TrackPanel.cpp:571 TrackPanel.cpp:6090
msgid "Right Channel"
msgstr "Kênh phải"
@@ -3667,12 +3626,15 @@ msgstr "Tạo dải âm Stereo"
msgid "Split Stereo Track"
msgstr "Chia dải âm Stereo"
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr ""
+
#: TrackPanel.cpp:575
msgid "Set Sample Format"
msgstr "Äặt dạng lấy mẫu"
-#: TrackPanel.cpp:577
-#: TrackPanel.cpp:6320
+#: TrackPanel.cpp:577 TrackPanel.cpp:6320
msgid "Set Rate"
msgstr "Äặt tá»c Äá» lấy mẫu"
@@ -3692,8 +3654,7 @@ msgstr "Phông chữ..."
msgid "Set Range..."
msgstr "Äặt giá»i hạn..."
-#: TrackPanel.cpp:606
-#: toolbars/EditToolBar.cpp:135
+#: TrackPanel.cpp:606 toolbars/EditToolBar.cpp:135
msgid "Copy"
msgstr "Chép"
@@ -3739,21 +3700,13 @@ msgstr "Nhấn và rê chuá»t Äá» di chuyá»n giá»i hạn trái cá»§a vùng
msgid "Click and drag to move right selection boundary."
msgstr "Nhấn và rê chuá»t Äá» di chuyá»n giá»i hạn phải cá»§a vùng chá»n"
-#: TrackPanel.cpp:1702
-#: TrackPanel.cpp:3993
-#: TrackPanel.cpp:4025
-#: TrackPanel.cpp:4280
-#: TrackPanel.cpp:6432
-#: TrackPanel.cpp:6452
+#: TrackPanel.cpp:1702 TrackPanel.cpp:3993 TrackPanel.cpp:4025
+#: TrackPanel.cpp:4280 TrackPanel.cpp:6432 TrackPanel.cpp:6452
msgid "Modified Label"
msgstr "Äã sá»a lại nhãn"
-#: TrackPanel.cpp:1703
-#: TrackPanel.cpp:3994
-#: TrackPanel.cpp:4026
-#: TrackPanel.cpp:4281
-#: TrackPanel.cpp:6433
-#: TrackPanel.cpp:6453
+#: TrackPanel.cpp:1703 TrackPanel.cpp:3994 TrackPanel.cpp:4026
+#: TrackPanel.cpp:4281 TrackPanel.cpp:6433 TrackPanel.cpp:6453
msgid "Label Edit"
msgstr "Chá»nh sá»a nhãn"
@@ -3761,8 +3714,7 @@ msgstr "Chá»nh sá»a nhãn"
msgid "Adjusted envelope."
msgstr "Äã sá»a lại ÄÆ°á»ng bao biên Äá»."
-#: TrackPanel.cpp:1931
-#: prefs/MousePrefs.cpp:115
+#: TrackPanel.cpp:1931 prefs/MousePrefs.cpp:115
msgid "Envelope"
msgstr "ÄÆ°á»ng bao biên Äá»"
@@ -3784,9 +3736,7 @@ msgstr "phải"
msgid "Time shifted tracks/clips %s %.02f seconds"
msgstr "Äã dá»ch dải/Äoạn sang %s %.02f giây"
-#: TrackPanel.cpp:2092
-#: prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:112
+#: TrackPanel.cpp:2092 prefs/MousePrefs.cpp:111 prefs/MousePrefs.cpp:112
#: prefs/MousePrefs.cpp:113
msgid "Time-Shift"
msgstr "Di chuyá»n má»c thá»i gian"
@@ -3825,39 +3775,29 @@ msgid "Moved pan slider"
msgstr "Äã di chuyá»n thanh trượt cân bằng trái/phải"
#. i18n-hint: Title of the Gain slider, used to adjust the volume
-#: TrackPanel.cpp:3485
-#: TrackPanel.cpp:5726
-#: TrackPanel.cpp:7149
+#: TrackPanel.cpp:3485 TrackPanel.cpp:5726 TrackPanel.cpp:7149
msgid "Gain"
msgstr "Äá» khuếch Äại"
#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: TrackPanel.cpp:3485
-#: TrackPanel.cpp:5664
-#: TrackPanel.cpp:7156
+#: TrackPanel.cpp:3485 TrackPanel.cpp:5664 TrackPanel.cpp:7156
msgid "Pan"
msgstr "Cân bằng trái/phải"
-#: TrackPanel.cpp:3610
-#: TrackPanel.cpp:6385
-#: effects/ChangePitch.cpp:284
+#: TrackPanel.cpp:3610 TrackPanel.cpp:6385 effects/ChangePitch.cpp:284
msgid "up"
msgstr "lên"
-#: TrackPanel.cpp:3614
-#: TrackPanel.cpp:6386
-#: effects/ChangePitch.cpp:284
+#: TrackPanel.cpp:3614 TrackPanel.cpp:6386 effects/ChangePitch.cpp:284
msgid "down"
msgstr "xuá»ng"
-#: TrackPanel.cpp:3621
-#: TrackPanel.cpp:6381
+#: TrackPanel.cpp:3621 TrackPanel.cpp:6381
#, c-format
msgid "Moved '%s' %s"
msgstr "Äã di chuyá»n '%s' %s"
-#: TrackPanel.cpp:3624
-#: TrackPanel.cpp:6387
+#: TrackPanel.cpp:3624 TrackPanel.cpp:6387
msgid "Move Track"
msgstr "Di chuyá»n dải âm"
@@ -3889,14 +3829,6 @@ msgstr "Äã Äiá»u chá»nh cân bằng trái/phải"
msgid "Adjusted gain"
msgstr "Äã Äiá»u chá»nh Äá» khuếch Äại"
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr ""
-
#: TrackPanel.cpp:5918
msgid "Can't delete track with active audio"
msgstr "Không thá» xoá dải âm Äang hoạt Äá»ng"
@@ -3917,8 +3849,7 @@ msgstr "Trái,"
msgid "Right, "
msgstr "Phải,"
-#: TrackPanel.cpp:6100
-#: TrackPanel.cpp:6225
+#: TrackPanel.cpp:6100 TrackPanel.cpp:6225
#, c-format
msgid "Changed '%s' to %s"
msgstr "Thay '%s' thà nh %s"
@@ -3932,6 +3863,11 @@ msgstr "Kênh"
msgid "Split stereo track '%s'"
msgstr "Äã chia dải âm stereo '%s'"
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
#: TrackPanel.cpp:6139
#, c-format
msgid "Made '%s' a stereo track"
@@ -3958,8 +3894,7 @@ msgstr "Thay Äá»i Äá»nh dạng"
msgid "Change lower speed limit (%) to:"
msgstr "Chuyá»n tá»c Äá» giá»i hạn dưá»i (%) thà nh:"
-#: TrackPanel.cpp:6350
-#: TrackPanel.cpp:6351
+#: TrackPanel.cpp:6350 TrackPanel.cpp:6351
msgid "Lower speed limit"
msgstr "Tá»c Äá» giá»i hạn dưá»i"
@@ -3967,8 +3902,7 @@ msgstr "Tá»c Äá» giá»i hạn dưá»i"
msgid "Change upper speed limit (%) to:"
msgstr "Chuyá»n tá»c Äá» giá»i hạn trên (%) thà nh:"
-#: TrackPanel.cpp:6357
-#: TrackPanel.cpp:6358
+#: TrackPanel.cpp:6357 TrackPanel.cpp:6358
msgid "Upper speed limit"
msgstr "Tá»c Äá» giá»i hạn trên"
@@ -4010,6 +3944,10 @@ msgstr "Tên phông"
msgid "Face size"
msgstr "KÃch thưá»c"
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr ""
+
#: TrackPanel.cpp:7076
msgid "Mute"
msgstr "Tắt tiếng"
@@ -4043,10 +3981,7 @@ msgstr "Phát Solo"
msgid " Select On"
msgstr " Báºt chá»n"
-#: VoiceKey.cpp:88
-#: VoiceKey.cpp:238
-#: VoiceKey.cpp:376
-#: VoiceKey.cpp:517
+#: VoiceKey.cpp:88 VoiceKey.cpp:238 VoiceKey.cpp:376 VoiceKey.cpp:517
msgid "Selection is too small to use voice key."
msgstr "Vùng chá»n không Äá»§ lá»n Äá» dùng giá»ng."
@@ -4073,8 +4008,7 @@ msgstr "Äá»i hưá»ng -- trá» trung bình: %1.4f sd: (%1.4f)\n"
msgid "Audio Track"
msgstr "Dải âm"
-#: WaveTrack.cpp:555
-#: WaveTrack.cpp:574
+#: WaveTrack.cpp:555 WaveTrack.cpp:574
msgid "There is not enough room available to paste the selection"
msgstr "Không Äá»§ chá» Äá» dán vùng chá»n"
@@ -4092,10 +4026,10 @@ msgstr "Trình bá» sung 1 Äến %i"
msgid "Plugins %i to %i"
msgstr "Trình bá» sung %i Äến %i"
-#: commands/CommandManager.cpp:857
-#, fuzzy
-msgid "Disallowed for some reason. Try selecting some audio first?"
-msgstr "Không cho phép vì má»t lý do nà o Äó. Có chá»n âm thanh trưá»c không?"
+#: commands/CommandManager.cpp:923
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
+msgstr ""
#: commands/CommandManager.cpp:781
msgid "You can only do this when playing and recording are\n"
@@ -4162,9 +4096,7 @@ msgstr "Äá»nh khuếch Äại má»i (dB):"
msgid "Allow clipping"
msgstr "Cho phép ghim Äá»nh"
-#: effects/Amplify.cpp:237
-#: effects/Amplify.cpp:287
-#: effects/Amplify.cpp:353
+#: effects/Amplify.cpp:237 effects/Amplify.cpp:287 effects/Amplify.cpp:353
#, fuzzy
msgid "-Infinity"
msgstr "-Vô cùng"
@@ -4181,9 +4113,7 @@ msgstr "Äang khuếch Äại"
msgid "You selected a track which does not contain audio. AutoDuck can only process audio tracks."
msgstr "Bạn Äã chá»n má»t dải âm toà n khoảng lặng. Hiá»u ứng Tá»± Äá»ng Äiá»u biên chá» có thá» xá» lý dải âm có thông tin."
-#: effects/AutoDuck.cpp:126
-#: effects/AutoDuck.cpp:138
-#: effects/AutoDuck.cpp:453
+#: effects/AutoDuck.cpp:126 effects/AutoDuck.cpp:138 effects/AutoDuck.cpp:453
#: effects/AutoDuck.cpp:570
msgid "Auto Duck"
msgstr "Auto Duck"
@@ -4205,17 +4135,11 @@ msgid "Maximum pause:"
msgstr "Tạm ngưng dà i nhất:"
#. i18n-hint: Name of time display format that shows time in seconds
-#: effects/AutoDuck.cpp:494
-#: effects/AutoDuck.cpp:499
-#: effects/AutoDuck.cpp:504
-#: effects/AutoDuck.cpp:509
-#: effects/AutoDuck.cpp:514
-#: prefs/AudioIOPrefs.cpp:166
-#: prefs/AudioIOPrefs.cpp:174
-#: prefs/AudioIOPrefs.cpp:176
-#: prefs/AudioIOPrefs.cpp:201
-#: prefs/AudioIOPrefs.cpp:203
-#: widgets/TimeTextCtrl.cpp:263
+#: effects/AutoDuck.cpp:494 effects/AutoDuck.cpp:499 effects/AutoDuck.cpp:504
+#: effects/AutoDuck.cpp:509 effects/AutoDuck.cpp:514
+#: prefs/AudioIOPrefs.cpp:166 prefs/AudioIOPrefs.cpp:174
+#: prefs/AudioIOPrefs.cpp:176 prefs/AudioIOPrefs.cpp:201
+#: prefs/AudioIOPrefs.cpp:203 widgets/TimeTextCtrl.cpp:263
msgid "seconds"
msgstr "giây"
@@ -4235,8 +4159,7 @@ msgstr "Äá» dà i tắt dần xuá»ng bên trong:"
msgid "Inner fade up length:"
msgstr "Äá» dà i tắt dần lên bên trong:"
-#: effects/AutoDuck.cpp:521
-#: effects/Compressor.cpp:484
+#: effects/AutoDuck.cpp:521 effects/Compressor.cpp:484
msgid "Threshold:"
msgstr "Ngưỡng:"
@@ -4256,12 +4179,9 @@ msgstr "Tá»± Äá»ng Äiá»u biên..."
msgid "Processing Auto Duck..."
msgstr "Äang tá»± uá»n..."
-#: effects/AvcCompressor.cpp:738
-#: effects/VST/VSTEffect.cpp:448
-#: effects/audiounits/AudioUnitEffect.cpp:877
-#: effects/nyquist/Nyquist.cpp:1042
-#: widgets/ErrorDialog.cpp:79
-#: widgets/ErrorDialog.cpp:105
+#: effects/AvcCompressor.cpp:738 effects/VST/VSTEffect.cpp:448
+#: effects/audiounits/AudioUnitEffect.cpp:877 effects/nyquist/Nyquist.cpp:1042
+#: widgets/ErrorDialog.cpp:79 widgets/ErrorDialog.cpp:105
#: widgets/Warning.cpp:67
msgid "OK"
msgstr "OK"
@@ -4326,14 +4246,12 @@ msgstr "Thay Äá»i Äá» cao mà không ảnh hưá»ng Äến nhá»p"
#. i18n-hint: && in here is an escape character to get a single & on
#. * screen, so keep it as is
-#: effects/ChangePitch.cpp:254
-#: effects/ChangeSpeed.cpp:313
+#: effects/ChangePitch.cpp:254 effects/ChangeSpeed.cpp:313
#: effects/ChangeTempo.cpp:180
msgid "by Vaughan Johnson && Dominic Mazzoni"
msgstr "viết bá»i Vaughan Johnson && Dominic Mazzoni"
-#: effects/ChangePitch.cpp:259
-#: effects/ChangeTempo.cpp:185
+#: effects/ChangePitch.cpp:259 effects/ChangeTempo.cpp:185
msgid "using SoundTouch, by Olli Parviainen"
msgstr "dùng SoundTouch, viết bá»i Olli Parviainen"
@@ -4382,10 +4300,8 @@ msgstr ""
msgid "From frequency in hertz"
msgstr ""
-#: effects/ChangePitch.cpp:291
-#: effects/ChangePitch.cpp:337
-#: effects/ChangeSpeed.cpp:377
-#: effects/ChangeTempo.cpp:239
+#: effects/ChangePitch.cpp:291 effects/ChangePitch.cpp:337
+#: effects/ChangeSpeed.cpp:377 effects/ChangeTempo.cpp:239
#: effects/ChangeTempo.cpp:270
msgid "to"
msgstr "Äến"
@@ -4394,8 +4310,7 @@ msgstr "Äến"
msgid "To frequency in seconds"
msgstr ""
-#: effects/ChangePitch.cpp:360
-#: effects/ChangeSpeed.cpp:331
+#: effects/ChangePitch.cpp:360 effects/ChangeSpeed.cpp:331
#: effects/ChangeTempo.cpp:198
msgid "Percent Change:"
msgstr "Phần trÄm thay Äá»i:"
@@ -4413,8 +4328,7 @@ msgstr "Thay Äá»i Äá» cao..."
msgid "Changing Pitch"
msgstr "Äang thay Äá»i Äá» cao cá»§a âm"
-#: effects/ChangeSpeed.cpp:53
-#: effects/ChangeTempo.cpp:55
+#: effects/ChangeSpeed.cpp:53 effects/ChangeTempo.cpp:55
#, c-format
msgid "Applied effect: %s %.1f%%"
msgstr "Äã áp dụng hiá»u ứng: %s %.1f%%"
@@ -4566,12 +4480,11 @@ msgstr "Thá»i gian suy hao:"
msgid "Decay Time"
msgstr ""
-#: effects/Compressor.cpp:516
-msgid "Normalize to 0dB after compressing"
-msgstr "Chuẩn hoá vỠ0dB sau khi nén"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
+msgstr ""
#: effects/Compressor.cpp:563
-#, c-format
#, fuzzy
msgid "Threshold %d dB"
msgstr "Ngưỡng: %d dB"
@@ -4602,7 +4515,6 @@ msgid "%.1f:1"
msgstr ""
#: effects/Compressor.cpp:575
-#, c-format
#, fuzzy
msgid "Attack Time %.1f secs"
msgstr "Thá»i gian nén: %.1f giây"
@@ -4613,7 +4525,6 @@ msgid "%.1f secs"
msgstr ""
#: effects/Compressor.cpp:578
-#, c-format
#, fuzzy
msgid "Decay Time %.1f secs"
msgstr "Thá»i gian suy tà n: %.1f giây"
@@ -4626,6 +4537,10 @@ msgstr "BỠnén tiếng..."
msgid "Applying Dynamic Range Compression..."
msgstr "Äang áp dụng bá» nén dải Äá»ng"
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
msgstr ""
@@ -4645,19 +4560,6 @@ msgid "Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr ""
-
#: effects/Contrast.cpp:231
msgid "Contrast Analyzer"
msgstr ""
@@ -4666,15 +4568,12 @@ msgstr ""
msgid "Parameters"
msgstr ""
-#: effects/ToneGen.cpp:361
-#: toolbars/ControlToolBar.cpp:185
+#: effects/ToneGen.cpp:361 toolbars/ControlToolBar.cpp:185
msgid "Start"
msgstr "Bắt Äầu"
-#: effects/ToneGen.cpp:362
-#: toolbars/ControlToolBar.cpp:188
-#: toolbars/SelectionBar.cpp:149
-#: toolbars/SelectionBar.cpp:254
+#: effects/ToneGen.cpp:362 toolbars/ControlToolBar.cpp:188
+#: toolbars/SelectionBar.cpp:149 toolbars/SelectionBar.cpp:254
msgid "End"
msgstr "Kết thúc"
@@ -4694,6 +4593,11 @@ msgstr ""
msgid "Foreground end time"
msgstr ""
+#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
+#: effects/Contrast.cpp:289
+msgid "Measured"
+msgstr ""
+
#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
msgid "Use selection"
msgstr ""
@@ -4718,8 +4622,7 @@ msgstr ""
msgid "Contrast Result:"
msgstr ""
-#: Tags.cpp:829
-#: Tags.cpp:1981
+#: Tags.cpp:829 Tags.cpp:1981
msgid "Reset"
msgstr "Thiết láºp lại"
@@ -4739,16 +4642,8 @@ msgstr ""
msgid "Help for WCAG2 Audio Contrast Analyzer"
msgstr ""
-#: toolbars/ControlToolBar.cpp:82
-msgid "Control"
-msgstr "Äiá»u khiá»n"
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
msgstr ""
#: effects/Contrast.cpp:328 effects/Contrast.cpp:336 effects/Contrast.cpp:344
@@ -4859,18 +4754,6 @@ msgstr ""
msgid "Data gathered"
msgstr ""
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr ""
-
#: effects/DtmfGen.cpp:48
msgid "DTMF Tone Generator"
msgstr "BỠphát tone DTMF"
@@ -4883,9 +4766,7 @@ msgstr "viết bá»i Salvo Ventura (2006)"
msgid "DTMF sequence:"
msgstr "Trình tự DTMF:"
-#: effects/DtmfGen.cpp:446
-#: effects/Noise.cpp:255
-#: effects/ToneGen.cpp:328
+#: effects/DtmfGen.cpp:446 effects/Noise.cpp:255 effects/ToneGen.cpp:328
#: effects/ToneGen.cpp:365
msgid "Amplitude (0-1)"
msgstr "Biên Äá» (0-1)"
@@ -4906,9 +4787,7 @@ msgstr "Tuần hoà n:"
msgid "Tone duration:"
msgstr "Äá» dà i tone:"
-#: effects/DtmfGen.cpp:482
-#: effects/DtmfGen.cpp:484
-#: effects/DtmfGen.cpp:560
+#: effects/DtmfGen.cpp:482 effects/DtmfGen.cpp:484 effects/DtmfGen.cpp:560
#: effects/DtmfGen.cpp:561
msgid "ms"
msgstr "mili giây"
@@ -4990,8 +4869,7 @@ msgstr "Cosine"
msgid "Cubic"
msgstr "Khá»i"
-#: effects/Equalization.cpp:362
-#: effects/Equalization.cpp:412
+#: effects/Equalization.cpp:362 effects/Equalization.cpp:412
msgid "Equalization"
msgstr "Cân bằng tần sá»"
@@ -5003,6 +4881,10 @@ msgstr "Lá»i khi nạp ÄÆ°á»ng cân bằng tần sá»"
msgid "custom"
msgstr "Tá»± chá»n"
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr ""
+
#. i18n-hint: && in here is an escape character to get a single &
#. * on screen, so keep it as is
#: effects/Equalization.cpp:1087
@@ -5041,8 +4923,7 @@ msgstr "Äá» dà i bá» lá»c:"
msgid "Select curve:"
msgstr "Chá»n cung:"
-#: effects/Equalization.cpp:1259
-#: effects/Equalization.cpp:2498
+#: effects/Equalization.cpp:1259 effects/Equalization.cpp:2498
#: export/ExportMultiple.cpp:826
msgid "Save As..."
msgstr "Lưu má»i..."
@@ -5159,8 +5040,7 @@ msgstr "Nặng nhất"
msgid "by Lynn Allan"
msgstr "viết bá»i Lynn Allan"
-#: effects/Leveller.cpp:226
-#: effects/Leveller.cpp:231
+#: effects/Leveller.cpp:226 effects/Leveller.cpp:231
msgid "Degree of Leveling"
msgstr "Mức Äá» cân bằng"
@@ -5209,10 +5089,6 @@ msgstr ""
msgid "Analyser"
msgstr ""
-#: toolbars/MixerToolBar.cpp:60
-msgid "Mixer"
-msgstr "Bá» trá»n"
-
#: effects/LoadEffects.cpp:116
msgid "Simulator"
msgstr ""
@@ -5452,15 +5328,9 @@ msgstr "Äang xoá nhiá»
u"
msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr "Äã áp dụng hiá»u ứng: %s xoá thà nh phần 1 chiá»u = %s, chuẩn hoá biên Äá» = %s"
-#: effects/Normalize.cpp:74
-#: effects/Normalize.cpp:75
-msgid "false"
-msgstr "Không chá»n"
-
#. i18n-hint: true here means that the option was
#. * selected. Opposite false if not selected
-#: effects/Normalize.cpp:74
-#: effects/Normalize.cpp:75
+#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
msgid "true"
msgstr "Chá»n"
@@ -5518,8 +5388,7 @@ msgstr ""
msgid "Dry Wet"
msgstr ""
-#: effects/Phaser.cpp:264
-#: effects/Wahwah.cpp:221
+#: effects/Phaser.cpp:264 effects/Wahwah.cpp:221
msgid "LFO Frequency (Hz):"
msgstr "Bá» dao Äá»ng tần thấp (Hz):"
@@ -5527,8 +5396,7 @@ msgstr "Bá» dao Äá»ng tần thấp (Hz):"
msgid "LFO frequency in hertz"
msgstr ""
-#: effects/Phaser.cpp:280
-#: effects/Wahwah.cpp:237
+#: effects/Phaser.cpp:280 effects/Wahwah.cpp:237
msgid "LFO Start Phase (deg.):"
msgstr "Pha ban Äầu cá»§a dao Äá»ng (Äá»):"
@@ -5589,8 +5457,7 @@ msgstr "Äã lặp lại %d lần"
msgid "Tracks are too long to repeat the selection."
msgstr "Dải âm quá dà i nên không thá» lặp lại vùng chá»n."
-#: effects/Repeat.cpp:76
-#: effects/Repeat.cpp:80
+#: effects/Repeat.cpp:76 effects/Repeat.cpp:80
msgid "Repeat"
msgstr "Lặp lại"
@@ -5603,8 +5470,7 @@ msgstr "SỠlần lặp lại:"
msgid "New selection length: hh:mm:ss"
msgstr ""
-#: effects/Repeat.cpp:207
-#: effects/Repeat.cpp:237
+#: effects/Repeat.cpp:207 effects/Repeat.cpp:237
msgid "New selection length: "
msgstr "Äá» dà i vùng chá»n má»i:"
@@ -5677,9 +5543,7 @@ msgstr "Xoá Äá»nh nhá»n..."
msgid "Applying Spike Cleaner..."
msgstr "Äang xoá Äá»nh nhá»n..."
-#: Menus.cpp:358
-#: Menus.cpp:564
-#: effects/StereoToMono.h:23
+#: Menus.cpp:358 Menus.cpp:564 effects/StereoToMono.h:23
msgid "&Stereo to Mono"
msgstr "Stereo sang &Mono"
@@ -5736,8 +5600,7 @@ msgstr ""
msgid "Applied effect: Generate %s wave %s, frequency = %.2f Hz, amplitude = %.2f, %.6lf seconds"
msgstr "Äã áp dụng hiá»u ứng: Tạo %s sóng %s, tần sá» = %.2f Hz, biên Äá» = %.2f, %.6lf giây"
-#: effects/ToneGen.cpp:75
-#: widgets/Meter.cpp:379
+#: effects/ToneGen.cpp:75 widgets/Meter.cpp:379
msgid "Linear"
msgstr "Tuyến tÃnh"
@@ -5769,8 +5632,7 @@ msgstr "RÄng cưa"
msgid "Square, no alias"
msgstr "Vuông, không có biá»t danh"
-#: effects/ToneGen.cpp:327
-#: effects/ToneGen.cpp:363
+#: effects/ToneGen.cpp:327 effects/ToneGen.cpp:363
msgid "Frequency (Hz)"
msgstr "Tần sỠ(Hz)"
@@ -5818,28 +5680,43 @@ msgstr "Äang tạo tone"
msgid "All tracks must have the same sample rate"
msgstr "Tất cả các dải âm phải có cùng tá»c Äá» lấy mẫu"
-#: effects/TruncSilence.cpp:113
-#: effects/TruncSilence.cpp:322
+#: effects/TruncSilence.cpp:113 effects/TruncSilence.cpp:322
msgid "Truncate Silence"
msgstr "Cắt bỠkhoảng lặng"
-#: effects/TruncSilence.cpp:346
-msgid "Max silence duration:"
-msgstr "Äá» dà i tá»i Äa cá»§a khoảng lặng:"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr ""
-#: effects/TruncSilence.cpp:349
-#: prefs/AudioIOPrefs.cpp:190
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:349 prefs/AudioIOPrefs.cpp:190
#: prefs/AudioIOPrefs.cpp:193
msgid "milliseconds"
msgstr "mili giây"
+#: effects/TruncSilence.cpp:346
+msgid "Max silence duration:"
+msgstr "Äá» dà i tá»i Äa cá»§a khoảng lặng:"
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ""
+
#: effects/TruncSilence.cpp:351
msgid "Threshold for silence:"
msgstr "Ngưỡng của khoảng lặng:"
-#: effects/TruncSilence.cpp:376
-msgid " Duration must be at least 1 millisecond"
-msgstr " Äá» dà i tá»i thiá»u là 1 mili giây"
+#: effects/TruncSilence.cpp:506
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
+msgstr ""
#: effects/TruncSilence.h:28
msgid "Truncate Silence..."
@@ -5849,17 +5726,55 @@ msgstr "Cắt bỠkhoảng lặng..."
msgid "Truncating Silence..."
msgstr "Äang cắt bá» khoảng lặng..."
-#: effects/VST/VSTEffect.cpp:165
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "Hiá»u ứng Công nghá» Phòng Thu Ảo (VST) không áp dụng ÄÆ°á»£c trên dải âm stereo có 2 kênh không giá»ng nhau."
+#: effects/ladspa/LadspaEffect.cpp:608
+msgid "Effect Settings"
+msgstr "Thiết láºp hiá»u ứng"
+
+#: effects/ladspa/LadspaEffect.cpp:573 effects/ladspa/LadspaEffect.cpp:581
+#: prefs/GUIPrefs.cpp:51 prefs/QualityPrefs.cpp:72
+msgid "None"
+msgstr "Không có gì"
+
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
-#: effects/VST/VSTEffect.cpp:180
-msgid "Can't process replacing"
-msgstr "Không thá»±c hiá»n thay thế ÄÆ°á»£c"
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
-#: effects/VST/VSTEffect.cpp:403
-msgid "VST Plug-in parameters:"
-msgstr "Tham sỠcủa phần bỠsung VST:"
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr ""
#: effects/Wahwah.cpp:61
#, c-format
@@ -5908,22 +5823,10 @@ msgstr "Äang áp dụng hiá»u ứng: %s"
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr "Trình bá» sung hiá»u ứng không thỠáp dụng lên dải âm stereo có các kênh khác nhau."
-#: effects/ladspa/LadspaEffect.cpp:573
-#: effects/ladspa/LadspaEffect.cpp:581
-#: prefs/GUIPrefs.cpp:51
-#: prefs/QualityPrefs.cpp:72
-msgid "None"
-msgstr "Không có gì"
-
-#: effects/ladspa/LadspaEffect.cpp:575
-#: effects/vamp/VampEffect.cpp:384
+#: effects/ladspa/LadspaEffect.cpp:575 effects/vamp/VampEffect.cpp:384
msgid "Author: "
msgstr "Tác giả:"
-#: effects/ladspa/LadspaEffect.cpp:608
-msgid "Effect Settings"
-msgstr "Thiết láºp hiá»u ứng"
-
#: effects/ladspa/LadspaEffect.cpp:699
msgid "Length (seconds)"
msgstr "Äá» dà i (giây)"
@@ -5944,8 +5847,7 @@ msgstr ""
msgid "Applying Nyquist Effect..."
msgstr "Äang áp dụng hiá»u ứng Nyquist..."
-#: effects/nyquist/Nyquist.cpp:259
-#: effects/nyquist/Nyquist.cpp:321
+#: effects/nyquist/Nyquist.cpp:259 effects/nyquist/Nyquist.cpp:321
msgid "Nyquist Prompt..."
msgstr "Dấu nhắc Nyquist..."
@@ -5965,8 +5867,7 @@ msgstr "Nyquist"
msgid "Nyquist Output: "
msgstr "Äầu ra Nyquist:"
-#: effects/nyquist/Nyquist.cpp:598
-#: effects/nyquist/Nyquist.cpp:609
+#: effects/nyquist/Nyquist.cpp:598 effects/nyquist/Nyquist.cpp:609
msgid "Nyquist returned the value:"
msgstr "Giá trá» Nyquist trả vá»:"
@@ -6074,8 +5975,7 @@ msgstr " - Phải"
msgid "Mixer Panel"
msgstr ""
-#: export/Export.cpp:976
-#: export/Export.cpp:1021
+#: export/Export.cpp:976 export/Export.cpp:1021
#, c-format
msgid "Output Channels: %2d"
msgstr "Kênh Äầu ra: %2d"
@@ -6105,8 +6005,7 @@ msgstr "Dữ liá»u sẽ ÄÆ°á»£c dẫn từ Äầu và o chuẩn. \"%f\" sẽ Ä
msgid "(external program)"
msgstr "(chương trình bên ngoà i)"
-#: export/ExportCL.cpp:250
-#: export/ExportPCM.cpp:367
+#: export/ExportCL.cpp:250 export/ExportPCM.cpp:367
#, c-format
msgid "Cannot export audio to %s"
msgstr "Không thỠxuất âm thanh ra %s"
@@ -6123,9 +6022,21 @@ msgstr "Xuất toà n bá» dá»± án dùng bá» mã hoá bằng dòng lá»nh"
msgid "Command Output"
msgstr "Äầu ra cá»§a lá»nh"
-#: export/ExportFFmpeg.cpp:59
+#: export/ExportFFmpeg.cpp:61
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
#: export/ExportFFmpeg.cpp:394
@@ -6193,6 +6104,10 @@ msgstr ""
msgid "AAC Export Setup"
msgstr ""
+#: export/ExportOGG.cpp:86
+msgid "Quality:"
+msgstr "Chất lượng:"
+
#: export/ExportFFmpegDialogs.cpp:217
msgid "Specify AMR-NB Options"
msgstr ""
@@ -6326,12 +6241,8 @@ msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n
"Recommended - 192000"
msgstr ""
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr "Chất lượng:"
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid "Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
@@ -6350,10 +6261,10 @@ msgstr ""
msgid "Cutoff Bandwidth:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:947
+#: export/ExportFFmpegDialogs.cpp:936
msgid "Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:949
@@ -6542,12 +6453,12 @@ msgstr ""
msgid "AC3 Files (FFmpeg)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:56
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:57
@@ -6658,6 +6569,17 @@ msgstr "Äá» sâu bit:"
msgid "FLAC Files"
msgstr "Táºp tìn FLAC"
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
#: export/ExportFLAC.cpp:310
msgid "Exporting the selected audio as FLAC"
msgstr "Xuất âm thanh Äã chá»n thà nh FLAC"
@@ -6682,9 +6604,7 @@ msgstr "Táºp tin MP2"
msgid "Cannot export MP2 with this sample rate and bit rate"
msgstr "Không xuất ÄÆ°á»£c MP2 vá»i tá»c Äá» lấy mẫu và tá»c Äá» bit nà y"
-#: export/ExportMP2.cpp:240
-#: export/ExportMP3.cpp:1768
-#: export/ExportOGG.cpp:183
+#: export/ExportMP2.cpp:240 export/ExportMP3.cpp:1768 export/ExportOGG.cpp:183
msgid "Unable to open target file for writing"
msgstr "Không thá» ghi táºp tin ÄÃch"
@@ -6698,9 +6618,7 @@ msgstr "Xuất âm thanh Äã chá»n vá»i tá»c Äá» %d kbps"
msgid "Exporting entire file at %d kbps"
msgstr "Xuất toà n bá» táºp tin vá»i tá»c Äá» %d kbps"
-#: export/ExportMP3.cpp:221
-#: export/ExportMP3.cpp:239
-#: export/ExportMP3.cpp:253
+#: export/ExportMP3.cpp:221 export/ExportMP3.cpp:239 export/ExportMP3.cpp:253
msgid "kbps"
msgstr "kbps"
@@ -6716,9 +6634,7 @@ msgstr "(KÃch thưá»c nhá» hÆ¡n)"
msgid "Fast"
msgstr "Nhanh"
-#: export/ExportMP3.cpp:244
-#: export/ExportMP3.cpp:250
-#: prefs/GUIPrefs.cpp:41
+#: export/ExportMP3.cpp:244 export/ExportMP3.cpp:250 prefs/GUIPrefs.cpp:41
#: prefs/GUIPrefs.cpp:49
msgid "Standard"
msgstr "Chuẩn"
@@ -6763,8 +6679,7 @@ msgstr "Trung bình"
msgid "Constant"
msgstr "Không Äá»i"
-#: export/ExportMP3.cpp:373
-#: prefs/QualityPrefs.cpp:42
+#: export/ExportMP3.cpp:373 prefs/QualityPrefs.cpp:42
#: prefs/QualityPrefs.cpp:43
msgid "Quality"
msgstr "Chất lượng"
@@ -6885,10 +6800,8 @@ msgstr "Äá»nh dạng MP3 không há» trợ\n"
msgid "MP3 export library not found"
msgstr ""
-#: export/ExportMultiple.cpp:95
-#: export/ExportMultiple.cpp:374
-#: export/ExportMultiple.cpp:598
-#: export/ExportMultiple.cpp:765
+#: export/ExportMultiple.cpp:95 export/ExportMultiple.cpp:374
+#: export/ExportMultiple.cpp:598 export/ExportMultiple.cpp:765
msgid "Export Multiple"
msgstr "Xuất ra nhiá»u táºp tin"
@@ -6917,11 +6830,6 @@ msgstr "Tuỳ chá»n..."
msgid "Export location:"
msgstr "VỠtrà xuất:"
-#: export/ExportMultiple.cpp:216
-#: prefs/DirectoriesPrefs.cpp:92
-msgid "Choose..."
-msgstr "Chá»n..."
-
#: export/ExportMultiple.cpp:217
msgid "Create"
msgstr "Tạo"
@@ -6946,10 +6854,6 @@ msgstr "Tên táºp tin Äầu tiên:"
msgid "First file name"
msgstr ""
-#: export/ExportMultiple.cpp:258
-msgid "Tracks"
-msgstr "Các Dải âm"
-
#: export/ExportMultiple.cpp:265
msgid "Name files:"
msgstr "Äặt tên các táºp tin:"
@@ -6983,6 +6887,35 @@ msgstr "Äã tạo xong \"%s\"."
msgid "Choose a location to save the exported files"
msgstr "Chá»n má»t nÆ¡i Äá» lưu các táºp tin xuất Äã xuất"
+#: export/ExportMultiple.cpp:524
+#, c-format
+msgid "Successfully exported the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:527
+#, c-format
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr ""
+
#: export/ExportMultiple.cpp:470
#, c-format
msgid "\"%s\" doesn't exist.\n"
@@ -6992,23 +6925,10 @@ msgstr "Không tá»n tại \"%s\".\n"
"\n"
"Bạn có muá»n tạo nó không?"
-#: export/ExportMultiple.cpp:568
-#: export/ExportMultiple.cpp:703
+#: export/ExportMultiple.cpp:568 export/ExportMultiple.cpp:703
msgid "Edit metadata"
msgstr "Sá»a dữ liá»u Äặc tả"
-#: export/ExportMultiple.cpp:595
-#: export/ExportMultiple.cpp:762
-#, c-format
-msgid "Successfully exported %d file(s)."
-msgstr "Äã xuất thà nh công %d táºp tin."
-
-#: export/ExportMultiple.cpp:596
-#: export/ExportMultiple.cpp:763
-#, c-format
-msgid "Something went wrong after exporting %d file(s)."
-msgstr "Gặp lá»i sau khi xuất %d táºp tin."
-
#: export/ExportMultiple.cpp:825
#, c-format
msgid "Label %s is not a legal file name. You cannot use any of: %s\n"
@@ -7177,7 +7097,6 @@ msgstr "\"%s\" là má»t táºp tin Advanced Audio Coding.\n"
"Bạn phải tá»± mình chuyá»n nó vá» 1 Äá»nh dạng Audacity há» trợ, như WAV hay AIFF."
#: import/Import.cpp:271
-#, c-format
#, fuzzy
msgid "\"%s\" is an encrypted audio file. \n"
"These typically are from an online music store. \n"
@@ -7281,6 +7200,10 @@ msgstr ""
msgid "FLAC files"
msgstr "Táºp tin FLAC"
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr ""
+
#: import/ImportLOF.cpp:92
msgid "List of Files in basic text format"
msgstr "Danh sách các táºp tin á» dạng vÄn bản gá»c"
@@ -7291,9 +7214,7 @@ msgid "Invalid window offset in LOF file."
msgstr "Táºp tin LOF chứa offset cá»a sá» không hợp lá»."
#. i18n-hint: You do not need to translate "LOF"
-#: import/ImportLOF.cpp:320
-#: import/ImportLOF.cpp:341
-#: import/ImportLOF.cpp:415
+#: import/ImportLOF.cpp:320 import/ImportLOF.cpp:341 import/ImportLOF.cpp:415
#: import/ImportLOF.cpp:435
msgid "LOF Error"
msgstr "Lá»i LOF"
@@ -7349,8 +7270,7 @@ msgstr "Dòng bit Vorbis có Phần Äầu không hợp lá»"
msgid "Internal logic fault"
msgstr "Lá»i Logic bên trong"
-#: export/ExportPCM.cpp:320
-#: import/ImportPCM.cpp:47
+#: export/ExportPCM.cpp:320 import/ImportPCM.cpp:47
msgid "WAV, AIFF, and other uncompressed types"
msgstr "WAV, AIFF, và các Äá»nh dạng không nén khác"
@@ -7441,36 +7361,41 @@ msgstr ""
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr ""
-#: prefs/AudioIOPrefs.cpp:41
-#: prefs/AudioIOPrefs.cpp:42
-msgid "Audio I/O"
-msgstr "Ãm thanh VÃ o/Ra"
+#: prefs/BatchPrefs.cpp:55 prefs/BatchPrefs.cpp:56
+msgid "Batch"
+msgstr "Lá»nh Gá»p"
-#: prefs/AudioIOPrefs.cpp:100
-msgid "1 (Mono)"
-msgstr "1 (Mono)"
+#: prefs/BatchPrefs.cpp:77 prefs/GUIPrefs.cpp:92
+msgid "Behaviors"
+msgstr "HÃ nh vi"
-#: prefs/AudioIOPrefs.cpp:101
-msgid "2 (Stereo)"
-msgstr "2 (Stereo)"
+#: prefs/BatchPrefs.cpp:80 prefs/GUIPrefs.cpp:129
+msgid "&Don't apply effects in batch mode"
+msgstr "Không áp &dụng hiá»u ứng trong chế Äá» lá»nh gá»p"
-#: prefs/AudioIOPrefs.cpp:115
-msgid "Playback"
-msgstr "Phát lại"
+#: prefs/BatchPrefs.cpp:83 prefs/GUIPrefs.cpp:132
+msgid "Cl&eanSpeech Mode (Customized GUI)"
+msgstr "Chế Äá» Cl&eanSpeech (Giao diá»n tuỳ biến)"
-#: prefs/AudioIOPrefs.cpp:119
-#: prefs/AudioIOPrefs.cpp:137
-#: toolbars/DeviceToolBar.cpp:57
-msgid "Device"
-msgstr "Thiết bá»"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:34 prefs/GUIPrefs.cpp:35
+msgid "Interface"
+msgstr "Giao diá»n"
+
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
+msgstr ""
#: prefs/AudioIOPrefs.cpp:122
msgid "Using:"
msgstr "Dùng:"
-#: prefs/AudioIOPrefs.cpp:123
-msgid "Portaudio v"
-msgstr "Cá»ng âm thanh v"
+#: prefs/AudioIOPrefs.cpp:115
+msgid "Playback"
+msgstr "Phát lại"
#: prefs/AudioIOPrefs.cpp:133
msgid "Recording"
@@ -7480,100 +7405,15 @@ msgstr "Thu âm"
msgid "Channels"
msgstr "Kênh"
-#: prefs/AudioIOPrefs.cpp:145
-msgid "Playthrough"
-msgstr "Phát qua"
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr "P&hát qua phần cứng: Vừa phát vừa thu dải má»i"
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr "Phá&t qua phần má»m: Vừa phát vừa thu dải má»i"
-
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:162
-msgid "Effects Preview"
-msgstr "Nghe thá» hiá»u ứng"
-
-#: prefs/AudioIOPrefs.cpp:165
-msgid "Length of preview:"
-msgstr "Nghe thỠdà i:"
-
-#: prefs/AudioIOPrefs.cpp:170
-msgid "Cut Preview"
-msgstr "Nghe thỠcắt"
-
-#: prefs/AudioIOPrefs.cpp:173
-msgid "Preview before cut region:"
-msgstr "Nghe thá» trưá»c khi cắt vùng:"
-
-#: prefs/AudioIOPrefs.cpp:175
-msgid "Preview after cut region:"
-msgstr "Nghe thỠsau khi cắt vùng:"
-
-#: prefs/AudioIOPrefs.cpp:183
-msgid "Latency"
-msgstr "Äá» trá»
"
-
-#: prefs/AudioIOPrefs.cpp:189
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
-msgstr "Bá» Äá»m âm thanh:\n"
-"(lá»n = nhiá»u trá»
)"
-
-#: prefs/AudioIOPrefs.cpp:192
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr "Sá»a trá»
:\n"
-"(nhỠhơn không = quay lui)"
-
-#: prefs/AudioIOPrefs.cpp:197
-msgid "Seek Time when playing"
-msgstr "Tìm thá»i gian khi phát"
-
-#: prefs/AudioIOPrefs.cpp:200
-msgid "Short period:"
-msgstr "Chu kỳ ngắn:"
-
-#: prefs/AudioIOPrefs.cpp:202
-msgid "Long period:"
-msgstr "Chu kỳ dà i:"
-
-#: prefs/BatchPrefs.cpp:55
-#: prefs/BatchPrefs.cpp:56
-msgid "Batch"
-msgstr "Lá»nh Gá»p"
-
-#: prefs/BatchPrefs.cpp:77
-#: prefs/GUIPrefs.cpp:92
-msgid "Behaviors"
-msgstr "HÃ nh vi"
-
-#: prefs/BatchPrefs.cpp:80
-#: prefs/GUIPrefs.cpp:129
-msgid "&Don't apply effects in batch mode"
-msgstr "Không áp &dụng hiá»u ứng trong chế Äá» lá»nh gá»p"
+#: prefs/AudioIOPrefs.cpp:100
+msgid "1 (Mono)"
+msgstr "1 (Mono)"
-#: prefs/BatchPrefs.cpp:83
-#: prefs/GUIPrefs.cpp:132
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr "Chế Äá» Cl&eanSpeech (Giao diá»n tuỳ biến)"
+#: prefs/AudioIOPrefs.cpp:101
+msgid "2 (Stereo)"
+msgstr "2 (Stereo)"
-#: prefs/DirectoriesPrefs.cpp:55
-#: prefs/DirectoriesPrefs.cpp:56
+#: prefs/DirectoriesPrefs.cpp:55 prefs/DirectoriesPrefs.cpp:56
#: prefs/PrefsDialog.cpp:279
msgid "Directories"
msgstr "Thư mục"
@@ -7590,34 +7430,31 @@ msgstr "Vá» trÃ:"
msgid "Free Space:"
msgstr "Dung lượng trá»ng:"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr "Tá»± Äá»ng lưu"
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr "Tá»± Äá»ng lưu má»t bản sao cá»§a dá»± án trong má»t thư mục riêng"
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
-msgstr "Chu kỳ tá»± Äá»ng lưu:"
-
-#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
-msgstr "phút"
-
#: prefs/DirectoriesPrefs.cpp:110
msgid "Audio cache"
msgstr "Bá» Äá»m âm thanh"
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "Play and/or record using RAM (useful for slow drives)"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
#: prefs/DirectoriesPrefs.cpp:121
msgid "Choose a location to place the temporary directory"
msgstr "Chá»n vá» trà Äặt thư mục tạm thá»i"
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: prefs/DirectoriesPrefs.cpp:166
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -7636,231 +7473,146 @@ msgstr "Không thỠghi và o thư mục %s"
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "Viá»c chuyá»n Äá»i thư mục tạm thá»i sẽ có hiá»u lá»±c từ lần chạy sau cá»§a Audacity"
-#: prefs/FileFormatPrefs.cpp:48
-#: prefs/FileFormatPrefs.cpp:49
-msgid "Import / Export"
-msgstr "Nháºp / Xuất"
-
-#: prefs/FileFormatPrefs.cpp:77
-msgid "MP3 Export Library"
-msgstr "Thư viá»n mã hoá MP3"
-
-#: prefs/FileFormatPrefs.cpp:80
-msgid "MP3 Library Version:"
-msgstr "Thư viá»n MP3 phiên bản:"
+#: prefs/GUIPrefs.cpp:42
+#, fuzzy
+msgid "In Browser"
+msgstr "Duyá»t..."
-#: prefs/FileFormatPrefs.cpp:86
-msgid "MP3 Library:"
-msgstr "Thư viá»n MP3:"
+#: prefs/GUIPrefs.cpp:43
+msgid "From Internet"
+msgstr "Từ Internet"
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:91
-msgid "LAME MP3 Library:"
-msgstr "Thư viá»n LAME MP3:"
-
-#: prefs/FileFormatPrefs.cpp:94
-msgid "&Download"
-msgstr "&Tải vá»"
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:136
-#, fuzzy
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr "Lưu ý: Chá»n chất lượng xuất bằng cách nhấn Tuỳ chá»n trong há»p thoại Xuất.\n"
-
-#: prefs/FileFormatPrefs.cpp:100
-msgid "When importing audio files"
-msgstr "Khi nháºp âm thanh"
-
-#: prefs/FileFormatPrefs.cpp:103
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
-msgstr "Sao chép âm thanh không nén và o dự án khi xỠlý (an toà n hơn)"
-
-#: prefs/FileFormatPrefs.cpp:104
-msgid "&Read uncompressed audio files directly from the original (faster)"
-msgstr "Äá»c âm thanh không nén t&rá»±c tiếp từ táºp tin gá»c (nhanh hÆ¡n)"
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "&Normalize all tracks in project"
-msgstr "&Chuẩn hoá má»i dải âm trong dá»± án"
-
-#: prefs/FileFormatPrefs.cpp:111
-msgid "When saving a project that depends on other audio files"
-msgstr "Khi lưu má»t dá»± án phụ thuá»c và o các táºp tin âm thanh khác"
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
+msgstr ""
-#: prefs/FileFormatPrefs.cpp:114
-msgid "Always © all audio into project (safest)"
-msgstr "Luôn &chép tất cả âm thanh và o dự án (an toà n nhất)"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
+msgstr ""
-#: prefs/FileFormatPrefs.cpp:115
-msgid "&Do not copy any audio"
-msgstr "Không chép &dữ liá»u phụ thuá»c và o"
+#: prefs/GUIPrefs.cpp:141
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 dB (bá» giá»i hạn khi chá»nh sá»a âm có biên Äá» lá»n)"
-#: prefs/FileFormatPrefs.cpp:116
-msgid "&Ask user"
-msgstr "Há»&i ngưá»i dùng"
+#: prefs/GUIPrefs.cpp:142
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 dB (PCM dùng 8 bit lấy mẫu)"
-#: prefs/FileFormatPrefs.cpp:120
-msgid "When exporting tracks to an audio file"
-msgstr "Khi xuất các dải âm thà nh táºp tin âm thanh"
+#: prefs/GUIPrefs.cpp:143
+msgid "-60 dB (PCM range of 10 bit samples)"
+msgstr "-60 dB (PCM dùng 10 bit lấy mẫu)"
-#: prefs/FileFormatPrefs.cpp:123
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
-msgstr "&Luôn trá»n tất cả các dải thà nh kênh Stereo hoặc Mono."
+#: prefs/GUIPrefs.cpp:144
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 dB (PCM dùng 16 bit lấy mẫu)"
-#: prefs/FileFormatPrefs.cpp:124
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
-msgstr "Tá»± chá»n chế Äá» trá»n (vd Äá» x&uất ra táºp tin há» trợ âm thanh 5.1)"
+#: prefs/GUIPrefs.cpp:145
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 dB (xấp xá» giá»i hạn nghe cá»§a con ngưá»i)"
-#: prefs/FileFormatPrefs.cpp:126
-msgid "S&how Metadata Editor prior to export step"
-msgstr "C&hạy Bá» chá»nh sá»a dữ liá»u Äặc tả trưá»c khi xuất"
+#: prefs/GUIPrefs.cpp:146
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB (PCM dùng 24 bit lấy mẫu)"
-#: prefs/GUIPrefs.cpp:34
-#: prefs/GUIPrefs.cpp:35
-msgid "Interface"
-msgstr "Giao diá»n"
+#: prefs/SpectrumPrefs.cpp:140
+msgid "Display"
+msgstr "Hiá»n thá»"
-#: prefs/GUIPrefs.cpp:42
-#, fuzzy
-msgid "In Browser"
-msgstr "Duyá»t..."
+#: prefs/GUIPrefs.cpp:100
+msgid "Er&gonomic order of audio I/O buttons"
+msgstr ""
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
-msgstr "Từ Internet"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
+msgstr ""
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
-msgstr "ÄÆ¡n giản"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
+msgstr ""
-#: prefs/GUIPrefs.cpp:94
-msgid "&Update display while playing"
-msgstr "Cáºp nháºt giao diá»n &khi Äang phát"
+#: prefs/GUIPrefs.cpp:169
+msgid "Help:"
+msgstr "Trợ giúp:"
#: prefs/GUIPrefs.cpp:96
#, fuzzy
msgid "Cl&osing last window quits Audacity"
msgstr "Thoát khá»i Audacity khi không còn cá»a sá» nà o khác."
-#: prefs/GUIPrefs.cpp:98
-msgid "Enable &dragging of left and right selection edges"
-msgstr "Cho phép &rê cạnh trái và phải cá»§a vùng chá»n"
-
-#: prefs/GUIPrefs.cpp:100
-msgid "Er&gonomic order of audio I/O buttons"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:102
-msgid "Automatically &fit tracks vertically zoomed"
-msgstr "Tá»± Äá»ng thu phóng chiá»u cao cá»§a dải cho phù hợp"
-
-#: prefs/GUIPrefs.cpp:104
-#, fuzzy
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
-msgstr "Chá»n dải âm là m viá»c theo kiá»u \"xoay\" lặp Äi lặp lại"
-
-#: prefs/GUIPrefs.cpp:106
-msgid "Editing a &clip can move other clips"
-msgstr "&Chá»nh sá»a má»t Äoạn âm có thá» là m các Äoạn âm khác di chuyá»n"
-
-#: prefs/GUIPrefs.cpp:108
-msgid "&Select all audio in project, if none selected"
-msgstr "Chá»n tất cả âm thanh trong dá»± án nếu không chá»n &gì"
-
#: prefs/GUIPrefs.cpp:110
msgid "&Beep on completion of longer activities"
msgstr "&BÃp khi hoà n thà nh các tác vụ kéo dà i"
-#: prefs/GUIPrefs.cpp:114
-msgid "Show / Hide"
-msgstr "Hiá»n / Ẩn"
-
-#: prefs/GUIPrefs.cpp:116
-msgid "Enable cut &lines"
-msgstr "&Báºt các ÄÆ°á»ng cắt"
-
-#: prefs/GUIPrefs.cpp:118
-msgid "Show warnings about &temp files"
-msgstr "Hiá»n cảnh báo cho táºp tin &tạm"
-
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:122
-#, fuzzy
-msgid "Show &Welcome Message at program start up"
-msgstr "Hiá»n thông Äiá»p Xin chà o khi chạy chương trình"
-
#: prefs/GUIPrefs.cpp:126
msgid "Modes"
msgstr "Chế Äá»"
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
+msgstr ""
+
#: prefs/GUIPrefs.cpp:129
msgid "Don't a&pply effects in batch mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
-msgstr "Biá»u diá»
n "
-
-#: prefs/GUIPrefs.cpp:141
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 dB (bá» giá»i hạn khi chá»nh sá»a âm có biên Äá» lá»n)"
+#: prefs/FileFormatPrefs.cpp:48 prefs/FileFormatPrefs.cpp:49
+msgid "Import / Export"
+msgstr "Nháºp / Xuất"
-#: prefs/GUIPrefs.cpp:142
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 dB (PCM dùng 8 bit lấy mẫu)"
+#: prefs/FileFormatPrefs.cpp:100
+msgid "When importing audio files"
+msgstr "Khi nháºp âm thanh"
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
-msgstr "-60 dB (PCM dùng 10 bit lấy mẫu)"
+#: prefs/FileFormatPrefs.cpp:103
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
+msgstr "Sao chép âm thanh không nén và o dự án khi xỠlý (an toà n hơn)"
-#: prefs/GUIPrefs.cpp:144
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 dB (PCM dùng 16 bit lấy mẫu)"
+#: prefs/FileFormatPrefs.cpp:104
+msgid "&Read uncompressed audio files directly from the original (faster)"
+msgstr "Äá»c âm thanh không nén t&rá»±c tiếp từ táºp tin gá»c (nhanh hÆ¡n)"
-#: prefs/GUIPrefs.cpp:145
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 dB (xấp xá» giá»i hạn nghe cá»§a con ngưá»i)"
+#: prefs/FileFormatPrefs.cpp:106
+msgid "&Normalize all tracks in project"
+msgstr "&Chuẩn hoá má»i dải âm trong dá»± án"
-#: prefs/GUIPrefs.cpp:146
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB (PCM dùng 24 bit lấy mẫu)"
+#: prefs/FileFormatPrefs.cpp:120
+msgid "When exporting tracks to an audio file"
+msgstr "Khi xuất các dải âm thà nh táºp tin âm thanh"
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
-msgstr "Chế Äá» biá»u diá»
n mặc Äá»nh"
+#: prefs/FileFormatPrefs.cpp:123
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+msgstr "&Luôn trá»n tất cả các dải thà nh kênh Stereo hoặc Mono."
-#: prefs/GUIPrefs.cpp:166
-msgid "Other interface choices"
-msgstr "Các giao diá»n khác"
+#: prefs/FileFormatPrefs.cpp:124
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+msgstr "Tá»± chá»n chế Äá» trá»n (vd Äá» x&uất ra táºp tin há» trợ âm thanh 5.1)"
-#: prefs/GUIPrefs.cpp:169
-msgid "Help:"
-msgstr "Trợ giúp:"
+#: prefs/FileFormatPrefs.cpp:126
+msgid "S&how Metadata Editor prior to export step"
+msgstr "C&hạy Bá» chá»nh sá»a dữ liá»u Äặc tả trưá»c khi xuất"
-#: prefs/GUIPrefs.cpp:170
-msgid "Solo Button:"
-msgstr "Nút Solo:"
+#: prefs/ImportExportPrefs.cpp:84
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
+msgstr ""
-#: prefs/KeyConfigPrefs.cpp:64
-#: prefs/KeyConfigPrefs.cpp:65
+#: prefs/KeyConfigPrefs.cpp:64 prefs/KeyConfigPrefs.cpp:65
msgid "Keyboard"
msgstr "BÃ n phÃm"
@@ -7884,22 +7636,26 @@ msgstr "Äặ&t"
msgid "Note: Pressing Cmd+Q will quit. All other keys are valid."
msgstr "Lưu ý: Nhấn Ctrl+Q sẽ thoát khá»i chương trình. Những phÃm khác Äá»u hợp lá»."
-#: prefs/KeyConfigPrefs.cpp:124
-#: prefs/ThemePrefs.cpp:105
+#: prefs/KeyConfigPrefs.cpp:124 prefs/ThemePrefs.cpp:105
msgid "&Defaults"
msgstr "Mặc Äá»&nh"
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr ""
+
#: prefs/KeyConfigPrefs.cpp:143
msgid "Key Combination"
msgstr "Tá» hợp phÃm"
-#: prefs/KeyConfigPrefs.cpp:163
-msgid "Export Keyboard Shortcuts As:"
-msgstr "Xuất phÃm tắt ra táºp tin:"
+#: prefs/KeyConfigPrefs.cpp:367 toolbars/EditToolBar.cpp:144
+msgid "Undo"
+msgstr "Huá»· bá»"
-#: prefs/KeyConfigPrefs.cpp:181
-msgid "Error saving keyboard shortcuts"
-msgstr "Gặp lá»i khi lưu phÃm tắt"
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr ""
#: prefs/KeyConfigPrefs.cpp:196
msgid "Select an XML file containing Audacity keyboard shortcuts..."
@@ -7909,6 +7665,14 @@ msgstr "Chá»n má»t táºp tin XML chứa các phÃm tắt cho Audacity..."
msgid "Error loading keyboard shortcuts"
msgstr "Lá»i nạp các phÃm tắt từ táºp tin XML"
+#: prefs/KeyConfigPrefs.cpp:163
+msgid "Export Keyboard Shortcuts As:"
+msgstr "Xuất phÃm tắt ra táºp tin:"
+
+#: prefs/KeyConfigPrefs.cpp:181
+msgid "Error saving keyboard shortcuts"
+msgstr "Gặp lá»i khi lưu phÃm tắt"
+
#: prefs/KeyConfigPrefs.cpp:241
#, c-format
msgid "The keyboard shortcut '%s' is already assigned to:\n"
@@ -7918,10 +7682,61 @@ msgstr "PhÃm tắt '%s' Äã ÄÆ°á»£c gán cho:\n"
"\n"
"'%s'"
-#: prefs/KeyConfigPrefs.cpp:367
-#: toolbars/EditToolBar.cpp:144
-msgid "Undo"
-msgstr "Huá»· bá»"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:77
+msgid "MP3 Export Library"
+msgstr "Thư viá»n mã hoá MP3"
+
+#: prefs/FileFormatPrefs.cpp:80
+msgid "MP3 Library Version:"
+msgstr "Thư viá»n MP3 phiên bản:"
+
+#: prefs/FileFormatPrefs.cpp:86
+msgid "MP3 Library:"
+msgstr "Thư viá»n MP3:"
+
+#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:91
+msgid "LAME MP3 Library:"
+msgstr "Thư viá»n LAME MP3:"
+
+#: prefs/FileFormatPrefs.cpp:94
+msgid "&Download"
+msgstr "&Tải vá»"
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:109
+msgid "FFmpeg Library Version:"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
+msgid "FFmpeg Library:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:41 prefs/AudioIOPrefs.cpp:42
+msgid "Audio I/O"
+msgstr "Ãm thanh VÃ o/Ra"
+
+#: prefs/AudioIOPrefs.cpp:123
+msgid "Portaudio v"
+msgstr "Cá»ng âm thanh v"
+
+#: prefs/AudioIOPrefs.cpp:145
+msgid "Playthrough"
+msgstr "Phát qua"
#: prefs/AudioIOPrefs.cpp:147
msgid "&Play other tracks while recording new one"
@@ -7935,6 +7750,10 @@ msgstr ""
msgid "&Software Playthrough (Play new track while recording it)"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:170
+msgid "Cut Preview"
+msgstr "Nghe thỠcắt"
+
#: prefs/MidiIOPrefs.cpp:160
msgid "Play before cut region:"
msgstr ""
@@ -7943,6 +7762,10 @@ msgstr ""
msgid "Play after cut region:"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:183
+msgid "Latency"
+msgstr "Äá» trá»
"
+
#: prefs/MidiIOPrefs.cpp:173
msgid "Audio to buffer:"
msgstr ""
@@ -7955,12 +7778,23 @@ msgstr ""
msgid "Seek Time"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:200
+msgid "Short period:"
+msgstr "Chu kỳ ngắn:"
+
+#: prefs/AudioIOPrefs.cpp:202
+msgid "Long period:"
+msgstr "Chu kỳ dà i:"
+
+#: prefs/AudioIOPrefs.cpp:162
+msgid "Effects Preview"
+msgstr "Nghe thá» hiá»u ứng"
+
#: prefs/MidiIOPrefs.cpp:196
msgid "Play when previewing:"
msgstr ""
-#: prefs/MousePrefs.cpp:55
-#: prefs/MousePrefs.cpp:56
+#: prefs/MousePrefs.cpp:55 prefs/MousePrefs.cpp:56
msgid "Mouse"
msgstr "Chuá»t"
@@ -7980,37 +7814,26 @@ msgstr "Thá»±c thi lá»nh"
msgid "Buttons"
msgstr "Nút"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:117
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:117
#: prefs/MousePrefs.cpp:122
msgid "Left-Click"
msgstr "Click chuá»t trái"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:100
-#: prefs/MousePrefs.cpp:101
-#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:101 prefs/MousePrefs.cpp:102
msgid "Select"
msgstr "Chá»n"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:122
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:122
msgid "Set Selection Point"
msgstr "Äặt Äiá»m chá»n"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:115
-#: prefs/MousePrefs.cpp:119
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:115 prefs/MousePrefs.cpp:119 prefs/MousePrefs.cpp:123
msgid "Left-Drag"
msgstr "Rê chuá»t trái"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:123
msgid "Set Selection Range"
msgstr "Äặt giá»i hạn vùng chá»n"
@@ -8038,12 +7861,8 @@ msgstr "Ctrl+chuá»t trái"
msgid "Set Selection Point and Play"
msgstr "Äặt Äiá»m chá»n và phát"
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:108
-#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:106
+#: prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:108 prefs/MousePrefs.cpp:109
msgid "Zoom"
msgstr "Thu phóng"
@@ -8051,9 +7870,7 @@ msgstr "Thu phóng"
msgid "Zoom in on Point"
msgstr "Phóng to trên má»t Äiá»m"
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:125
msgid "Zoom in on a Range"
msgstr "Phóng to trên má»t phạm vi"
@@ -8061,18 +7878,15 @@ msgstr "Phóng to trên má»t phạm vi"
msgid "same as right-drag"
msgstr "giá»ng rê chuá»t phải"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:106 prefs/MousePrefs.cpp:124
msgid "Right-Click"
msgstr "Nhắp chuá»t phải"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:106 prefs/MousePrefs.cpp:124
msgid "Zoom out one step"
msgstr "Phóng to hơn 1 mức"
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:125
msgid "Right-Drag"
msgstr "Kéo chuá»t phải"
@@ -8108,8 +7922,7 @@ msgstr "Shift+Rê chuá»t trái"
msgid "Time shift all clips in track"
msgstr "Di chuyá»n theo thá»i gian tất cả các Äoạn trong dải"
-#: prefs/MousePrefs.cpp:113
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:113 prefs/MousePrefs.cpp:120
msgid "Ctrl-Left-Drag"
msgstr "Ctrl+Rê chuá»t trái"
@@ -8125,9 +7938,7 @@ msgstr "Thay Äá»i ÄÆ°á»ng bao biên Äá»"
msgid "Change Sample"
msgstr "Thay Äá»i mẫu"
-#: prefs/MousePrefs.cpp:117
-#: prefs/MousePrefs.cpp:118
-#: prefs/MousePrefs.cpp:119
+#: prefs/MousePrefs.cpp:117 prefs/MousePrefs.cpp:118 prefs/MousePrefs.cpp:119
#: prefs/MousePrefs.cpp:120
msgid "Pencil"
msgstr "Bút chì"
@@ -8148,26 +7959,20 @@ msgstr "Thay Äá»i má»t và i mẫu"
msgid "Change ONE Sample only"
msgstr "Thay Äá»i chá» Má»t mẫu"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123 prefs/MousePrefs.cpp:124
#: prefs/MousePrefs.cpp:125
msgid "Multi"
msgstr "Nhiá»u"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123
msgid "same as select tool"
msgstr "giá»ng như công cụ chá»n"
-#: prefs/MousePrefs.cpp:124
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:124 prefs/MousePrefs.cpp:125
msgid "same as zoom tool"
msgstr "giá»ng như công cụ thu phóng"
-#: prefs/MousePrefs.cpp:127
-#: prefs/MousePrefs.cpp:128
-#: prefs/MousePrefs.cpp:129
+#: prefs/MousePrefs.cpp:127 prefs/MousePrefs.cpp:128 prefs/MousePrefs.cpp:129
msgid "Any"
msgstr "Bất kỳ"
@@ -8195,10 +8000,62 @@ msgstr "Ctrl+LÄn chuá»t"
msgid "Zoom in or out"
msgstr "Phóng to hay thu nhá»"
+#: prefs/AudioIOPrefs.cpp:165
+msgid "Length of preview:"
+msgstr "Nghe thỠdà i:"
+
+#: prefs/AudioIOPrefs.cpp:173
+msgid "Preview before cut region:"
+msgstr "Nghe thá» trưá»c khi cắt vùng:"
+
+#: prefs/AudioIOPrefs.cpp:175
+msgid "Preview after cut region:"
+msgstr "Nghe thỠsau khi cắt vùng:"
+
+#: prefs/AudioIOPrefs.cpp:197
+msgid "Seek Time when playing"
+msgstr "Tìm thá»i gian khi phát"
+
#: prefs/PrefsDialog.cpp:89
msgid "Audacity Preferences"
msgstr "Tuỳ thÃch cá»§a Audacity"
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:111
+msgid "When saving a project that depends on other audio files"
+msgstr "Khi lưu má»t dá»± án phụ thuá»c và o các táºp tin âm thanh khác"
+
+#: prefs/FileFormatPrefs.cpp:114
+msgid "Always © all audio into project (safest)"
+msgstr "Luôn &chép tất cả âm thanh và o dự án (an toà n nhất)"
+
+#: prefs/FileFormatPrefs.cpp:115
+msgid "&Do not copy any audio"
+msgstr "Không chép &dữ liá»u phụ thuá»c và o"
+
+#: prefs/FileFormatPrefs.cpp:116
+msgid "&Ask user"
+msgstr "Há»&i ngưá»i dùng"
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr "Tá»± Äá»ng lưu"
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr "Tá»± Äá»ng lưu má»t bản sao cá»§a dá»± án trong má»t thư mục riêng"
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr "Chu kỳ tá»± Äá»ng lưu:"
+
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr "phút"
+
#: prefs/QualityPrefs.cpp:73
msgid "Rectangle"
msgstr "Chữ nháºt"
@@ -8223,46 +8080,46 @@ msgstr "Tá»c Äá» lấy mẫu mặc Äá»nh:"
msgid "Default Sample Format:"
msgstr "Äá»nh dạng mẫu mặc Äá»nh:"
-#: prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "Bá» chuyá»n Äá»i tá»c Äá» lấy mẫu thá»i gian thá»±c:"
-
-#: prefs/QualityPrefs.cpp:139
-msgid "High-quality sample rate converter:"
-msgstr "Bá» chuyá»n Äá»i tá»c Äá» lấy mẫu chất lượng cao:"
-
-#: prefs/QualityPrefs.cpp:142
-msgid "Real-time dither:"
-msgstr "Nhiá»
u sá»a sai lượng tá» hoá thá»i gian thá»±c:"
-
-#: prefs/QualityPrefs.cpp:145
-msgid "High-quality dither:"
-msgstr "Nhiá»
u sá»a sai lượng tá» hoá chất lượng cao:"
-
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
-msgstr "Sá»± chuyá»n Äá»i"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+#, fuzzy
+msgid "Sample Rate Converter:"
msgstr "Bá» chuyá»n Äá»i tá»c Äá» lấy mẫu"
#: prefs/QualityPrefs.cpp:164
msgid "Dither"
msgstr "Nhiá»
u sá»a sai lượng tá» hoá"
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
-msgstr "Thá»i gian thá»±c:"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:149
+msgid "Overdub: &Play other tracks while recording new one"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:150
+msgid "&Hardware Playthrough: Play new track while recording it"
+msgstr "P&hát qua phần cứng: Vừa phát vừa thu dải má»i"
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
-msgstr "Chất lượng cao:"
+#: prefs/AudioIOPrefs.cpp:157
+msgid "&Software Playthrough: Play new track while recording or monitoring"
+msgstr ""
-#: prefs/SmartRecordPrefs.cpp:54
-#: prefs/SmartRecordPrefs.cpp:55
-msgid "Smart Recording"
-msgstr "Ghi âm thông minh"
+#: prefs/AudioIOPrefs.cpp:160
+msgid "(uncheck when recording \"stereo mix\")"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
+msgstr ""
#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
msgid "Sound Activated Recording"
@@ -8272,23 +8129,58 @@ msgstr ""
msgid "Sound Activation Level (dB):"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:41
-#: prefs/SpectrumPrefs.cpp:42
+#: prefs/SpectrumPrefs.cpp:41 prefs/SpectrumPrefs.cpp:42
msgid "Spectrograms"
msgstr "Ảnh phá»"
-#: prefs/SpectrumPrefs.cpp:91
-msgid "FFT Size"
-msgstr "KÃch cỡ biến Äá»i nhanh Fourier (FFT)"
-
#: prefs/SpectrumPrefs.cpp:94
msgid "8 - most wideband"
msgstr "8 - hầu hết bÄng rá»ng"
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:99
msgid "256 - default"
msgstr "256 - mặc Äá»nh"
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:107
msgid "32768 - most narrowband"
msgstr "32768 - hầu hết bÄng hẹp"
@@ -8297,8 +8189,17 @@ msgstr "32768 - hầu hết bÄng hẹp"
msgid "4096 - most narrowband"
msgstr "4096 - hầu hết bÄng hẹp"
-#: prefs/SpectrumPrefs.cpp:116
-msgid "Window type:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:93
+#, fuzzy
+msgid "Window type"
msgstr "Loại cá»a sá»:"
#: prefs/SpectrumPrefs.cpp:125
@@ -8306,13 +8207,9 @@ msgstr "Loại cá»a sá»:"
msgid "FFT Skip Points"
msgstr "Các Äiá»m bá» qua FFT"
-#: prefs/SpectrumPrefs.cpp:140
-msgid "Display"
-msgstr "Hiá»n thá»"
-
-#: prefs/SpectrumPrefs.cpp:144
-msgid "&Grayscale"
-msgstr "&Thang xám"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
+msgstr ""
#: prefs/SpectrumPrefs.cpp:147
msgid "Minimum Frequency (Hz):"
@@ -8322,18 +8219,17 @@ msgstr "Tần sỠnhỠnhất (Hz):"
msgid "Maximum Frequency (Hz):"
msgstr "Tần sá» lá»n nhất (Hz):"
-#: prefs/SpectrumPrefs.cpp:158
-#, fuzzy
-msgid "&Y-Grid"
-msgstr "&Lưá»i dá»c"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
+msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
-msgstr "&Tìm ná»t nhạc"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
+msgstr ""
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
-msgstr "&Lượng tá» hoá ná»t"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
+msgstr ""
#: prefs/SpectrumPrefs.cpp:165
msgid "Minimum Amplitude (dB):"
@@ -8343,6 +8239,14 @@ msgstr "Biên Äá» nhá» nhất (dB):"
msgid "Max. Number of Notes (1..128):"
msgstr "Sá» tá»i Äa các ná»t (1...128):"
+#: prefs/SpectrumPrefs.cpp:161
+msgid "&Find Notes"
+msgstr "&Tìm ná»t nhạc"
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Quantize Notes"
+msgstr "&Lượng tá» hoá ná»t"
+
#: prefs/SpectrumPrefs.cpp:197
msgid "The maximum frequency must be an integer"
msgstr "Tần sá» lá»n nhất phải là sá» nguyên"
@@ -8359,20 +8263,70 @@ msgstr "Tần sỠnhỠnhất phải là sỠnguyên"
msgid "Minimum frequency must be at least 0 Hz"
msgstr "Tần sá» nhá» nhất phải lá»n hÆ¡n 0 Hz"
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr "Biên Äá» nhá» nhất (dB) phải là sá» nguyên"
#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
-msgstr "Sá» tá»i Äa các ná»t phải là sá» nguyên trong khoảng 1..128"
+msgid "The maximum number of notes must be in the range 1..128"
+msgstr ""
-#: prefs/ThemePrefs.cpp:62
-#: prefs/ThemePrefs.cpp:63
+#: prefs/ThemePrefs.cpp:62 prefs/ThemePrefs.cpp:63
msgid "Theme"
msgstr "Sắc thái giao diá»n"
+#: prefs/ThemePrefs.cpp:126
+msgid "Info"
+msgstr "Thông tin"
+
+#: prefs/ThemePrefs.cpp:91
+#, fuzzy
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr "Thay Äá»i sắc thái giao diá»n là má»t tÃnh nÄng thá» nghiá»m.\n"
+"\n"
+"Bạn hãy nhấn \"Lưu bá» Äá»m sắc thái giao diá»n\" rá»i \n"
+"tìm và sá»a các ảnh và mà u sắc trong \n"
+"ImageCacheVxx.png vá»i má»t trình xá» lý ảnh như\n"
+"GIMP.\n"
+"\n"
+"Nhấn \"Nạp bá» Äá»m sắc thái giao diá»n\" Äá» nạp các ảnh và mà u sắc\n"
+"Äã sá»a và o trong Audacity.\n"
+"\n"
+"[ChỠảnh hưá»ng tá»i thanh công cụ Äiá»u khiá»n\n"
+"và mà u sắc của sóng âm,\n"
+"mặc dù các ảnh trong bá» Äá»m có cả các biá»u tượng khác.]"
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#. i18n-hint: && in here is an escape character to get a single & on screen,
#. * so keep it as is
#: prefs/ThemePrefs.cpp:93
@@ -8403,101 +8357,97 @@ msgstr "Lưu táºp tin"
msgid "Load Files"
msgstr "Nạp táºp tin"
-#: prefs/ThemePrefs.cpp:126
-msgid "Info"
-msgstr "Thông tin"
+#: prefs/GUIPrefs.cpp:50
+msgid "Simple"
+msgstr "ÄÆ¡n giản"
-#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
-msgstr "Thay Äá»i sắc thái giao diá»n là má»t tÃnh nÄng thá» nghiá»m.\n"
-"\n"
-"Bạn hãy nhấn \"Lưu bá» Äá»m sắc thái giao diá»n\" rá»i \n"
-"tìm và sá»a các ảnh và mà u sắc trong \n"
-"ImageCacheVxx.png vá»i má»t trình xá» lý ảnh như\n"
-"GIMP.\n"
-"\n"
-"Nhấn \"Nạp bá» Äá»m sắc thái giao diá»n\" Äá» nạp các ảnh và mà u sắc\n"
-"Äã sá»a và o trong Audacity.\n"
-"\n"
-"[ChỠảnh hưá»ng tá»i thanh công cụ Äiá»u khiá»n\n"
-"và mà u sắc của sóng âm,\n"
-"mặc dù các ảnh trong bá» Äá»m có cả các biá»u tượng khác.]\n"
-
-#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
-msgstr "Bạn Äã biên dá»ch Audacity vá»i tuỳ chá»n thêm nút\n"
-"'Output Sourcery'. Nút nà y sẽ lưu má»t phiên bản C cá»§a \n"
-"bá» Äá»m ảnh, có thá» ÄÆ°á»£c biên dá»ch là m mặc Äá»nh.\n"
-
-#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
-msgstr "Nếu nút 'Nạp bá» Äá»m sắc thái giao diá»n khi khá»i Äá»ng' ÄÆ°á»£c chá»n,\n"
-"Bá» Äá»m Sắc thái giao diá»n sẽ ÄÆ°á»£c tá»± Äá»ng nạp\n"
-"khi chương trình\n"
-"khá»i Äá»ng.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:94
+msgid "&Update display while playing"
+msgstr "Cáºp nháºt giao diá»n &khi Äang phát"
-#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
-msgstr "Lưu và nạp các táºp tin sắc thái giao diá»n ÄÆ¡n lẻ dùng\n"
-"má»t táºp tin ÄÆ¡n lẻ Äá» lưu má»i ảnh, nhưng có cùng\n"
-"ý tưá»ng.\n"
-"\n"
+#: prefs/GUIPrefs.cpp:102
+msgid "Automatically &fit tracks vertically zoomed"
+msgstr "Tá»± Äá»ng thu phóng chiá»u cao cá»§a dải cho phù hợp"
-#: toolbars/ControlToolBar.cpp:174
-msgid "Pause"
-msgstr "Tạm ngừng"
+#: prefs/TracksPrefs.cpp:88
+#, fuzzy
+msgid "Default View Mode:"
+msgstr "Chế Äá» biá»u diá»
n mặc Äá»nh"
-#: toolbars/ControlToolBar.cpp:177
-msgid "Play"
-msgstr "Phát"
+#: prefs/GUIPrefs.cpp:108
+msgid "&Select all audio in project, if none selected"
+msgstr "Chá»n tất cả âm thanh trong dá»± án nếu không chá»n &gì"
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
+#: prefs/GUIPrefs.cpp:116
+msgid "Enable cut &lines"
+msgstr "&Báºt các ÄÆ°á»ng cắt"
+
+#: prefs/GUIPrefs.cpp:98
+msgid "Enable &dragging of left and right selection edges"
+msgstr "Cho phép &rê cạnh trái và phải cá»§a vùng chá»n"
+
+#: prefs/GUIPrefs.cpp:104
+#, fuzzy
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+msgstr "Chá»n dải âm là m viá»c theo kiá»u \"xoay\" lặp Äi lặp lại"
+
+#: prefs/GUIPrefs.cpp:106
+msgid "Editing a &clip can move other clips"
+msgstr "&Chá»nh sá»a má»t Äoạn âm có thá» là m các Äoạn âm khác di chuyá»n"
+
+#: prefs/GUIPrefs.cpp:170
+msgid "Solo Button:"
+msgstr "Nút Solo:"
+
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
msgstr ""
-#: toolbars/ControlToolBar.cpp:182
-msgid "Stop"
-msgstr "Dừng"
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:185
-msgid "Skip to Start"
-msgstr "Chuyá»n vá» Äầu"
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:188
-msgid "Skip to End"
-msgstr "Chuyá»n vá» cuá»i"
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:192
-msgid "Record (Shift for Append Record)"
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
msgstr ""
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr ""
+
+#: Menus.cpp:786
+msgid "Pause"
+msgstr "Tạm dừng"
+
+#: Menus.cpp:785
+msgid "Stop"
+msgstr "Dừng"
+
#: toolbars/ControlToolBar.cpp:194
msgid "Clean Speech"
msgstr "Clean Speech"
-#: toolbars/ControlToolBar.cpp:530
-#: toolbars/ControlToolBar.cpp:844
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play (Shift for Loop Play)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:192
+msgid "Record (Shift for Append Record)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:530 toolbars/ControlToolBar.cpp:844
msgid "Error while opening sound device. "
msgstr "Lá»i khi má» thiết bỠâm thanh"
@@ -8509,13 +8459,11 @@ msgstr "Không thá» Thu âm trong chế Äá» CleanSpeech khi má»t dải, ho
msgid "Recording not permitted"
msgstr "Không ÄÆ°á»£c phép thu âm"
-#: toolbars/DeviceToolBar.cpp:113
-#: toolbars/DeviceToolBar.cpp:115
+#: toolbars/DeviceToolBar.cpp:113 toolbars/DeviceToolBar.cpp:115
msgid "Output Device"
msgstr "Thiết bá» Äầu ra"
-#: toolbars/DeviceToolBar.cpp:134
-#: toolbars/DeviceToolBar.cpp:136
+#: toolbars/DeviceToolBar.cpp:134 toolbars/DeviceToolBar.cpp:136
msgid "Input Device"
msgstr "Thiết bá» Äầu và o"
@@ -8539,29 +8487,21 @@ msgstr "Phóng to"
msgid "Zoom Out"
msgstr "Thu nhá»"
-#: toolbars/EditToolBar.cpp:156
-msgid "Zoom Toggle"
-msgstr "Báºt/tắt thu phóng"
-
-#: toolbars/EditToolBar.cpp:160
-msgid "Fit Selection"
-msgstr "Vừa vùng chá»n"
-
#: toolbars/EditToolBar.cpp:160
msgid "Fit selection in window"
msgstr "Vừa vùng chá»n và o trong cá»a sá»"
#: toolbars/EditToolBar.cpp:162
-msgid "Fit Project"
-msgstr "Vừa dự án"
-
-#: toolbars/EditToolBar.cpp:162
msgid "Fit project in window"
msgstr "Vừa dá»± án và o trong cá»a sá»"
-#: toolbars/MeterToolBar.cpp:50
-msgid "Meter"
-msgstr "Bá» Äo"
+#: toolbars/EditToolBar.cpp:160
+msgid "Fit Selection"
+msgstr "Vừa vùng chá»n"
+
+#: toolbars/EditToolBar.cpp:162
+msgid "Fit Project"
+msgstr "Vừa dự án"
#: toolbars/MeterToolBar.cpp:80
msgid "Play Meter"
@@ -8609,22 +8549,27 @@ msgstr "Thanh trượt Äầu và o"
msgid "Input Source"
msgstr "Nguá»n âm thanh và o"
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:80
msgid "Selection"
msgstr "Vùng chá»n"
-#: toolbars/SelectionBar.cpp:128
-#: toolbars/SelectionBar.cpp:185
+#: toolbars/SelectionBar.cpp:128 toolbars/SelectionBar.cpp:185
msgid "Project Rate (Hz):"
msgstr "Tần sỠcủa dự án (Hz):"
-#: toolbars/SelectionBar.cpp:142
-#: toolbars/SelectionBar.cpp:247
+#: toolbars/SelectionBar.cpp:142 toolbars/SelectionBar.cpp:247
msgid "Selection Start:"
msgstr "Bắt Äầu vùng chá»n:"
-#: toolbars/SelectionBar.cpp:155
-#: toolbars/SelectionBar.cpp:253
+#: toolbars/SelectionBar.cpp:155 toolbars/SelectionBar.cpp:253
msgid "Length"
msgstr "Äá» dà i"
@@ -8632,13 +8577,11 @@ msgstr "Äá» dà i"
msgid "hidden"
msgstr "ẩn"
-#: toolbars/SelectionBar.cpp:175
-#: toolbars/SelectionBar.cpp:264
+#: toolbars/SelectionBar.cpp:175 toolbars/SelectionBar.cpp:264
msgid "Audio Position:"
msgstr "VỠtrà âm thanh:"
-#: toolbars/SelectionBar.cpp:225
-#: toolbars/SelectionBar.cpp:230
+#: toolbars/SelectionBar.cpp:225 toolbars/SelectionBar.cpp:230
msgid "Snap To"
msgstr "DÃnh tá»i"
@@ -8659,8 +8602,7 @@ msgstr "Kết thúc vùng chá»n"
msgid "Audacity %s ToolBar"
msgstr "Thanh công cụ %s của Audacity"
-#: toolbars/ToolDock.cpp:74
-#: toolbars/ToolDock.cpp:75
+#: toolbars/ToolDock.cpp:74 toolbars/ToolDock.cpp:75
msgid "ToolDock"
msgstr "Bảng công cụ"
@@ -8692,34 +8634,6 @@ msgstr "Chuá»t Trái=Phóng to, Chuá»t Phải=Thu nhá», Chuá»t Giữa=Chuẩ
msgid "Click and drag to move a track in time"
msgstr "Nhấn và rê Äá» di chuyá»n dải âm theo thá»i gian"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr "Công cụ"
-
-#: toolbars/ToolsToolBar.cpp:147
-#: toolbars/ToolsToolBar.cpp:182
-msgid "Selection Tool"
-msgstr "Công cụ chá»n"
-
-#: toolbars/ToolsToolBar.cpp:148
-msgid "Envelope Tool"
-msgstr "Công cụ biên Äá»"
-
-#: toolbars/ToolsToolBar.cpp:149
-#: toolbars/ToolsToolBar.cpp:183
-msgid "Time Shift Tool"
-msgstr "Công cụ di chuyá»n"
-
-#: toolbars/ToolsToolBar.cpp:150
-#: toolbars/ToolsToolBar.cpp:185
-msgid "Zoom Tool"
-msgstr "Công cụ thu phóng"
-
-#: toolbars/ToolsToolBar.cpp:151
-#: toolbars/ToolsToolBar.cpp:184
-msgid "Draw Tool"
-msgstr "Công cụ vẽ"
-
#: toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
msgstr "Chế Äá» Äa nÄng"
@@ -8728,24 +8642,11 @@ msgstr "Chế Äá» Äa nÄng"
msgid "Slide Tool"
msgstr "Công cụ trượt"
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr "Công cụ Äa nÄng"
-
-#: toolbars/TranscriptionToolBar.cpp:84
-msgid "Transcription"
-msgstr "Tá»c Äá» phát"
-
#: toolbars/TranscriptionToolBar.cpp:171
msgid "Play at selected speed"
msgstr "Phát á» tá»c Äá» Äã chá»n"
-#: toolbars/TranscriptionToolBar.cpp:172
-msgid "Play-at-speed"
-msgstr "Tá»c Äá» phát"
-
-#: toolbars/TranscriptionToolBar.cpp:178
-#: toolbars/TranscriptionToolBar.cpp:183
+#: toolbars/TranscriptionToolBar.cpp:178 toolbars/TranscriptionToolBar.cpp:183
msgid "Playback Speed"
msgstr "Tá»c Äá» phát lại"
@@ -8753,74 +8654,38 @@ msgstr "Tá»c Äá» phát lại"
msgid "Adjust left selection to next onset"
msgstr "Äiá»u chá»nh vùng chá»n trái Äên onset tá»i"
-#: toolbars/TranscriptionToolBar.cpp:197
-msgid "Left-to-On"
-msgstr "Chuá»t trái Äá» báºt"
-
#: toolbars/TranscriptionToolBar.cpp:199
msgid "Adjust right selection to previous offset"
msgstr "Äiá»u chá»nh vùng chá»n phải Äến offset trưá»c"
-#: toolbars/TranscriptionToolBar.cpp:200
-msgid "Right-to-Off"
-msgstr "Chuá»t phải Äá» tắt"
-
#: toolbars/TranscriptionToolBar.cpp:202
msgid "Adjust left selection to next offset"
msgstr "Äiá»u chá»nh vùng chá»n trái Äến offset tá»i"
-#: toolbars/TranscriptionToolBar.cpp:203
-msgid "Left-to-Off"
-msgstr "Chuá»t trái Äá» Tắt"
-
#: toolbars/TranscriptionToolBar.cpp:205
msgid "Adjust right selection to previous onset"
msgstr "Äiá»u chá»nh vùng chá»n phải Äến onset trưá»c"
-#: toolbars/TranscriptionToolBar.cpp:206
-msgid "Right-to-On"
-msgstr "Chuá»t phải Äá» Báºt"
-
#: toolbars/TranscriptionToolBar.cpp:208
msgid "Select region of sound around cursor"
msgstr "Chá»n vùng âm thanh quanh con trá»"
-#: toolbars/TranscriptionToolBar.cpp:209
-msgid "Select-Sound"
-msgstr "Chá»n âm thanh"
-
#: toolbars/TranscriptionToolBar.cpp:211
msgid "Select region of silence around cursor"
msgstr "Chá»n khoảng lặng quanh con trá»"
-#: toolbars/TranscriptionToolBar.cpp:212
-msgid "Select-Silence"
-msgstr "Chá»n Khoảng lặng"
-
#: toolbars/TranscriptionToolBar.cpp:214
msgid "Automatically make labels from words"
msgstr "Tá»± Äá»ng tạo nhãn từ các Äoạn"
-#: toolbars/TranscriptionToolBar.cpp:215
-msgid "Make Labels"
-msgstr "Tạo nhãn"
-
#: toolbars/TranscriptionToolBar.cpp:217
msgid "Add label at selection"
msgstr "Thêm nhãn á» vùng chá»n"
-#: toolbars/TranscriptionToolBar.cpp:218
-msgid "Add Label"
-msgstr "Thêm nhãn"
-
#: toolbars/TranscriptionToolBar.cpp:220
msgid "Calibrate voicekey"
msgstr "Chia giá»ng"
-#: toolbars/TranscriptionToolBar.cpp:221
-msgid "Calibrate"
-msgstr "Chia Äá»"
-
#: toolbars/TranscriptionToolBar.cpp:225
msgid "Adjust Sensitivity"
msgstr "Äiá»u chá»nh Äá» nhạy"
@@ -8853,6 +8718,46 @@ msgstr "Äá»i hưá»ng (Ngưỡng lá»n)"
msgid "Key type"
msgstr "Loại phÃm"
+#: toolbars/TranscriptionToolBar.cpp:172
+msgid "Play-at-speed"
+msgstr "Tá»c Äá» phát"
+
+#: toolbars/TranscriptionToolBar.cpp:197
+msgid "Left-to-On"
+msgstr "Chuá»t trái Äá» báºt"
+
+#: toolbars/TranscriptionToolBar.cpp:200
+msgid "Right-to-Off"
+msgstr "Chuá»t phải Äá» tắt"
+
+#: toolbars/TranscriptionToolBar.cpp:203
+msgid "Left-to-Off"
+msgstr "Chuá»t trái Äá» Tắt"
+
+#: toolbars/TranscriptionToolBar.cpp:206
+msgid "Right-to-On"
+msgstr "Chuá»t phải Äá» Báºt"
+
+#: toolbars/TranscriptionToolBar.cpp:209
+msgid "Select-Sound"
+msgstr "Chá»n âm thanh"
+
+#: toolbars/TranscriptionToolBar.cpp:212
+msgid "Select-Silence"
+msgstr "Chá»n Khoảng lặng"
+
+#: toolbars/TranscriptionToolBar.cpp:215
+msgid "Make Labels"
+msgstr "Tạo nhãn"
+
+#: toolbars/TranscriptionToolBar.cpp:218
+msgid "Add Label"
+msgstr "Thêm nhãn"
+
+#: toolbars/TranscriptionToolBar.cpp:221
+msgid "Calibrate"
+msgstr "Chia Äá»"
+
#: widgets/AButton.cpp:302
msgid " (disabled)"
msgstr " (không cho)"
@@ -8867,15 +8772,13 @@ msgstr "Nút"
#. i18n-hint: One-letter abbreviation for Left, in VU Meter
#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
-#: widgets/ASlider.cpp:604
-#: widgets/Meter.cpp:212
+#: widgets/ASlider.cpp:604 widgets/Meter.cpp:212
msgid "L"
msgstr "L"
#. i18n-hint: One-letter abbreviation for Right, in VU Meter
#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
-#: widgets/ASlider.cpp:607
-#: widgets/Meter.cpp:214
+#: widgets/ASlider.cpp:607 widgets/Meter.cpp:214
msgid "R"
msgstr "R"
@@ -8891,8 +8794,7 @@ msgstr "Trái"
msgid "Right"
msgstr "Phải"
-#: widgets/ErrorDialog.cpp:78
-#: widgets/ErrorDialog.cpp:102
+#: widgets/ErrorDialog.cpp:78 widgets/ErrorDialog.cpp:102
msgid "Help"
msgstr "Trợ giúp"
@@ -8927,8 +8829,7 @@ msgstr "Tay nắm"
msgid "%d rows, %d columns"
msgstr "%d hà ng, %d cá»t"
-#: widgets/Grid.cpp:649
-#: widgets/Grid.cpp:776
+#: widgets/Grid.cpp:649 widgets/Grid.cpp:776
#, c-format
msgid "Row %d"
msgstr "HÃ ng %d"
@@ -9007,8 +8908,7 @@ msgstr ""
msgid "Cancel"
msgstr ""
-#: widgets/Ruler.cpp:1478
-#: widgets/Ruler.cpp:1479
+#: widgets/Ruler.cpp:1478 widgets/Ruler.cpp:1479
msgid "Vertical Ruler"
msgstr "Thưá»c kẻ Äặt dá»c"
@@ -9252,3 +9152,15 @@ msgstr ""
msgid "Could not load file: \"%s\""
msgstr "Không thá» nạp táºp tin: \"%s\""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
+
diff --git a/locale/zh.po b/locale/zh.po
index 7091836..db6b44a 100644
--- a/locale/zh.po
+++ b/locale/zh.po
@@ -1,2894 +1,2919 @@
+# translation of new_zh.po to Chinese(Simplified)
+# James Ruan <ruanbeihong at gmail.com>, 2009.
msgid ""
-msgstr "Project-Id-Version: Simplified Chinese Translation Project for Audacity\n"
-"POT-Creation-Date: 2005-11-24 13:02-0800\n"
-"PO-Revision-Date: 2005-12-01 23:52+0800\n"
-"Last-Translator: Liu Xiao Xi <liouxiao at hotmail.com>\n"
-"Language-Team: Simplified Chinese Translation Team. <liouxiao at hotmail.com>\n"
+msgstr ""
+"Project-Id-Version: Simplified Chinese Translation Project for Audacity\n"
+"Report-Msgid-Bugs-To: audacity-translation at lists.sourceforge.net\n"
+"POT-Creation-Date: 2009-01-20 20:43+0000\n"
+"PO-Revision-Date: 2009-07-04 11:04+0800\n"
+"Last-Translator: James Ruan <ruanbeihong at gmail.com>\n"
+"Language-Team: Chinese(Simplified) <Audacity-translation at lists.sourceforge.net>\n"
"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
+"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Report-Msgid-Bugs-To: \n"
+"X-Generator: KBabel 1.11.4\n"
-#: ../src/Menus.cpp:608
+#: AboutDialog.cpp:143 AudacityApp.cpp:790 Menus.cpp:957
msgid "&About Audacity..."
msgstr "å
³äºAudacity(&A)..."
-#. i18n-hint: Rather than a literal translation, consider adding the
-#. appropriate suffix or prefix to create a word meaning 'something which
-#. has Audacity'
-#: AboutDialog.cpp:340 AboutDialog.cpp:371 SplashDialog.cpp:111
+#: AboutDialog.cpp:157
msgid "OK... Audacious!"
-msgstr ""
+msgstr "OK... Audacious!"
#: AboutDialog.cpp:175
msgid "Audacity is a free program written by a team of volunteer <a href=\"http://audacity.sourceforge.net/community/developers\">developers</a> around the world. We are grateful to <a href=\"http://sourceforge.net\">SourceForge.net</a> for our project hosting. Audacity is available for Windows 98 and later, Mac OS X, Linux and other Unix-like operating systems. Older versions of Audacity are available for Mac OS 9."
-msgstr ""
+msgstr "Audacityæ¯ç±åå°å¿æ¿<a href=\"httpï¼//audacity.sourceforge.net/community/developers\">å¼åè
</a>ç»æçå¢éå¶ä½ç䏿¬¾å
费软件ãæè°¢<a href=\"httpï¼//sourceforge.net\">SourceForge.net</a>çéæ¶æ¨åºï¼å®çå¨çº¿æå¡ä¸ºå¼åæºç (open-source)é¡¹ç®æä¾äºå
è´¹çå¹³å°ãAudacityæ¯æWindows98åå
¶åç»çæ¬ï¼Mac OS Xï¼Linux以åå
¶å®çUnixæä½ç³»ç»ãAudacityçæ©æçæ¬å¯ä»¥å¨MAC OS 9ä¸è¿è¡ã"
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
+"è¿æ¯æµè¯ç(beta)ãå¯è½å
å«ä»£ç éè¯¯åæªå®æçåè½ãæä»¬éè¦æ¨çåé¦ï¼è¯·å°bugæ¥"
+"åååè½è¦æ±åéå°<b>feedbackï¼ audacityteam.org</b>ãè¦è·å¾ä½¿ç¨Audacityç帮"
+"å©ï¼è¯·è®¿é®æä»¬ç<a href=\"httpï¼//audacityteam.org/forum/\">论å</a>ã"
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
+"æ¤Audacityæ¯ä¸ä¸ªç¨³å®ç宿´çãä½å¦ææ¨åç°bugææä»ä¹å»ºè®®ï¼è¯·åæä»¬èç³»"
+"<b>feedback at audacityteam.org</b>ãè¦è·å¾ä½¿ç¨Audacityç帮å©ï¼è¯·è®¿é®æä»¬ç<a "
+"href=\"httpï¼//audacityteam.org/forum/\">论å</a>ã"
#. i18n-hint: The translation of "translator_credits" will appear
-#: ../src/AboutDialog.cpp:173
-#: ../src/AboutDialog.cpp:175
+#. in the credits in the About Audacity window. Use this to add
+#. your own name(s) to the credits.
+#.
+#. For example: "English translation by Dominic Mazzoni."
+#.
+#: AboutDialog.cpp:192 AboutDialog.cpp:194
msgid "translator_credits"
-msgstr "Simplified Chinese translation by Liu Xiao Xi (liouxiao at hotmail.com).\n"
-"䏿ç®ä½ç¿»è¯ï¼ åææ¦"
+msgstr "䏿ï¼ç®ä½ï¼ç¿»è¯ï¼<br><a href=\"liouxiao at hotmail.com\">Liu Xiao Xi</a> åææ¦<br><a href=\"ruanbeihong at gmail.com\">James Ruan</a> é®è´é¸¿<br>"
#: AboutDialog.cpp:207
msgid "A Free Digital Audio Editor<br>"
-msgstr ""
+msgstr "ä¸ä¸ªèªç±çæ°åé³é¢ç¼è¾å¨<br>"
-#: ../src/AboutDialog.cpp:192
+#: AboutDialog.cpp:211
msgid "Credits"
-msgstr "è°¢å¯"
+msgstr "鸣谢"
-#: AboutDialog.cpp:256
+#: AboutDialog.cpp:215
#, c-format
msgid "Audacity %s Development Team"
-msgstr ""
+msgstr "Audacity %s å¼åå¢é"
-#: AboutDialog.cpp:261
+#: AboutDialog.cpp:220
#, c-format
msgid "Audacity %s Support Team"
-msgstr ""
+msgstr "Audacity %s æ¯æå¢é"
-#: AboutDialog.cpp:266
+#: AboutDialog.cpp:225
msgid "Emeritus Developers"
-msgstr ""
+msgstr "åèªå¼åè
"
-#: AboutDialog.cpp:271
+#: AboutDialog.cpp:230
msgid "Other Emeritus Team Members"
-msgstr ""
+msgstr "å
¶ä»åèªå¢éæå"
-#: AboutDialog.cpp:276
+#: AboutDialog.cpp:235
msgid "Other Contributors"
-msgstr ""
+msgstr "å
¶ä»è´¡ç®è
"
-#: ../src/AboutDialog.cpp:202
+#: AboutDialog.cpp:240
msgid "Audacity is based on code from the following projects:"
-msgstr "Audacityæ¯åºäºä»¥ä¸é¡¹ç®ç代ç :"
+msgstr "Audacityæ¯åºäºä»¥ä¸é¡¹ç®ç代ç ï¼"
-#: ../src/AboutDialog.cpp:204
+#: AboutDialog.cpp:245
msgid "Special thanks:"
msgstr "ç¹å«æè°¢ï¼"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
-msgstr ""
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgstr "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
-#: AboutDialog.cpp:320
+#: AboutDialog.cpp:258
msgid "Audacity"
-msgstr ""
+msgstr "Audacity"
#. i18n-hint: Information about when audacity was compiled
#: AboutDialog.cpp:304 AboutDialog.cpp:317 AboutDialog.cpp:473
msgid "Build Information"
-msgstr ""
+msgstr "æå»ºä¿¡æ¯"
-#: ../src/effects/AvcCompressor.cpp:659
+#: AboutDialog.cpp:310 effects/AvcCompressor.cpp:674
msgid "Enabled"
-msgstr "å¯ç¨"
+msgstr "å¼å¯"
-#: AboutDialog.cpp:148
+#: AboutDialog.cpp:311
msgid "Disabled"
-msgstr ""
+msgstr "å
³é"
#: AboutDialog.cpp:321
msgid "File Format Support"
-msgstr ""
+msgstr "æ¯æçæä»¶æ ¼å¼"
#. i18n-hint: This is what the library (libmad) does - imports MP3 files
#: AboutDialog.cpp:331 AboutDialog.cpp:333
msgid "MP3 Importing"
-msgstr ""
+msgstr "MP3 导å
¥"
#: AboutDialog.cpp:340 AboutDialog.cpp:343
msgid "Ogg Vorbis Import and Export"
-msgstr ""
+msgstr "Ogg Vorbis 导å
¥ï¼å¯¼åº"
#: AboutDialog.cpp:347 AboutDialog.cpp:350
msgid "ID3 tag support"
-msgstr ""
+msgstr "ID3æ ç¾æ¯æ"
#: AboutDialog.cpp:357 AboutDialog.cpp:360
msgid "FLAC import and export"
-msgstr ""
+msgstr "FLAC 导å
¥ï¼å¯¼åº"
#: AboutDialog.cpp:365 AboutDialog.cpp:368
msgid "MP2 export"
-msgstr ""
+msgstr "MP2 导åº"
#: AboutDialog.cpp:373 AboutDialog.cpp:376
msgid "Import via QuickTime"
-msgstr ""
+msgstr "éè¿ QuickTime 导å
¥"
#. i18n-hint: Libraries that are essential to audacity
#: AboutDialog.cpp:383
msgid "Core Libraries"
-msgstr ""
+msgstr "æ ¸å¿åº"
#: AboutDialog.cpp:389 AboutDialog.cpp:392 AboutDialog.cpp:395
#: AboutDialog.cpp:397
msgid "Sample rate conversion"
-msgstr ""
+msgstr "éæ ·ç转æ¢"
#: AboutDialog.cpp:402 AboutDialog.cpp:405
msgid "Audio playback and recording"
-msgstr ""
+msgstr "é³é¢åæ¾åå½å¶"
#: AboutDialog.cpp:418
msgid "Features"
-msgstr ""
+msgstr "ç¹æ§"
#: AboutDialog.cpp:422 AboutDialog.cpp:425 AboutDialog.cpp:430
#: AboutDialog.cpp:433 AboutDialog.cpp:438 AboutDialog.cpp:441
#: AboutDialog.cpp:446 AboutDialog.cpp:449
msgid "Plug-in support"
-msgstr ""
+msgstr "æä»¶æ¯æ"
#: AboutDialog.cpp:454 AboutDialog.cpp:457
msgid "Sound card mixer support"
-msgstr ""
+msgstr "声塿··é³å¨æ¯æ"
#: AboutDialog.cpp:462 AboutDialog.cpp:465
msgid "Pitch and Tempo Change support"
-msgstr ""
+msgstr "é³é«åé度æ¹åæ¯æ"
-#: ../src/AboutDialog.cpp:151
+#: AboutDialog.cpp:477
msgid "Program build date: "
-msgstr "ç¨åºç¼è¯æ¥æ:"
+msgstr "ç¨åºæå»ºæ¥æï¼"
#: AboutDialog.cpp:480 AboutDialog.cpp:482
msgid "Build type:"
-msgstr ""
+msgstr "æå»ºç±»åï¼"
#: AboutDialog.cpp:480
msgid "Debug build"
-msgstr ""
+msgstr "Debugç"
#: AboutDialog.cpp:482
msgid "Release build"
-msgstr ""
+msgstr "Releaseç"
#. i18n-hint: The directory audacity is installed into (on *nix systems)
#: AboutDialog.cpp:487
msgid "Installation Prefix: "
-msgstr ""
+msgstr "å®è£
è·¯å¾åç¼ï¼"
-#: AboutDialog.cpp:209
+#: AboutDialog.cpp:491
msgid "Settings folder: "
-msgstr ""
+msgstr "设置路å¾"
-#: AboutDialog.cpp:388
+#: AboutDialog.cpp:506
msgid "GPL License"
-msgstr ""
+msgstr "GPL 许å¯è¯"
-#: ../src/AudacityApp.cpp:279
-#: ../src/Project.cpp:1891
+#: AudacityApp.cpp:495 Project.cpp:1890
#, c-format
msgid "%s is already open in another window."
msgstr "%s å·²ç»å¨å¦ä¸ä¸ªçªå£ä¸æå¼äºã"
-#: ../src/AudacityApp.cpp:281
-#: ../src/Project.cpp:1893
-#: ../src/Project.cpp:1973
-#: ../src/Project.cpp:2059
-#: ../src/Project.cpp:2097
+#: AudacityApp.cpp:497 Project.cpp:1892 Project.cpp:1997 Project.cpp:2141
+#: Project.cpp:2278
msgid "Error opening project"
msgstr "æå¼Audacityå·¥ç¨åºé"
-#: ../src/AudacityApp.cpp:313
+#: AudacityApp.cpp:529
#, c-format
-msgid "%s does not exist and could not be opened.\n"
+msgid ""
+"%s does not exist and could not be opened.\n"
"\n"
"It has been removed from the history list."
-msgstr "%sä¸åå¨ï¼æ æ³æå¼ã\n"
+msgstr ""
+"%sä¸åå¨ï¼æ æ³æå¼ã\n"
"\n"
-"å°ä»åå²å表ä¸å»é¤ã"
+"å·²ç»ä»åå²å表ä¸ç§»åºã"
-#: ../src/AudacityApp.cpp:361
+#: AudacityApp.cpp:631
msgid "Master Gain Control"
-msgstr "主æ§é³éæ§å¶"
+msgstr "主é³éæ§å¶"
-#: ../src/AudacityApp.cpp:362
+#: AudacityApp.cpp:632
msgid "Input Meter"
msgstr "è¾å
¥æç¤º"
-#: ../src/AudacityApp.cpp:363
+#: AudacityApp.cpp:633
msgid "Output Meter"
msgstr "è¾åºæç¤º"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#: ../src/AudacityApp.cpp:532
-#: ../src/Menus.cpp:387
-msgid "&Preferences...\tCtrl+,"
-msgstr "åæ°è®¾å®... (&P)\tCtrl+,"
+#: Menus.cpp:197
+msgid "&New"
+msgstr "æ°å»º(&N)"
+
+#: Menus.cpp:199
+msgid "&Open..."
+msgstr "æå¼...(&O)"
+
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr "æå¼æè¿ä½¿ç¨ç...(&R)"
-#: ../src/AudacityApp.cpp:601
-#: ../src/AudacityApp.cpp:671
+#: AudacityApp.cpp:792
+msgid "&Preferences..."
+msgstr "å好é项... (&P)"
+
+#: AudacityApp.cpp:875 AudacityApp.cpp:952
#, c-format
msgid "Using block size of %ld\n"
msgstr "使ç¨å大å°ä¸º %ld\n"
-#: ../src/AudacityApp.cpp:616
-#: ../src/AudacityApp.cpp:686
+#: AudacityApp.cpp:897 AudacityApp.cpp:967
#, c-format
msgid "Unknown command line option: %s\n"
-msgstr "䏿¯æçå½ä»¤è¡é项: %s\n"
+msgstr "䏿¯æçå½ä»¤è¡éé¡¹ï¼ %s\n"
-#: ../src/AudacityApp.cpp:799
-msgid "Audacity could not find a place to store temporary files.\n"
+#: AudacityApp.cpp:1101
+msgid ""
+"Audacity could not find a place to store temporary files.\n"
"Please enter an appropriate directory in the preferences dialog."
-msgstr "Audacityæ¾ä¸å°å¯ä»¥åå¨ä¸´æ¶æä»¶çå°æ¹ã\n"
-"请å¨åæ°è®¾å®å¯¹è¯æ¡éè¾å
¥ä¸ä¸ªéå½çè·¯å¾ã"
+msgstr ""
+"Audacityæ¾ä¸å°å¯ä»¥åå¨ä¸´æ¶æä»¶çå°æ¹ã\n"
+"请å¨å好éé¡¹å¯¹è¯æ¡éè¾å
¥ä¸ä¸ªéå½çè·¯å¾ã"
-#: ../src/AudacityApp.cpp:805
+#: AudacityApp.cpp:1107
msgid "Audacity is now going to exit. Please launch Audacity again to use the new temporary directory."
-msgstr "å°éåºAudacityã请éå¯Audacityä½¿ç¨æ°ç临æ¶ç®å½ã"
+msgstr "å³å°éåºAudacityã请éå¯Audacityä½¿ç¨æ°ç临æ¶ç®å½ã"
-#: AudacityApp.cpp:877
-msgid "Running two copies of Audacity simultaneously may cause\n"
+#: AudacityApp.cpp:1139
+msgid ""
+"Running two copies of Audacity simultaneously may cause\n"
"data loss or cause your system to crash.\n"
"\n"
msgstr ""
+"åæ¶è¿è¡ä¸¤ä¸ªAudacityå¯è½ä¼å¼èµ·\n"
+"æ°æ®ä¸¢å¤±æç³»ç»å´©æº\n"
+"\n"
-#: AudacityApp.cpp:884
-msgid "Audacity was not able to lock the temporary files directory.\n"
+#: AudacityApp.cpp:1146
+msgid ""
+"Audacity was not able to lock the temporary files directory.\n"
"This folder may be in use by another copy of Audacity.\n"
msgstr ""
+"Audacity ä¸è½éä½ä¸´æ¶æä»¶ç®å½ã\n"
+"è¿ä¸ªç®å½å¯è½æ£è¢«å¦ä¸ä¸ªAudacity使ç¨ã\n"
-#: AudacityApp.cpp:886
+#: AudacityApp.cpp:1148
msgid "Do you still want to start Audacity?"
-msgstr ""
+msgstr "ä½ ä»æ³å¯å¨Audacityåï¼"
-#: ../src/AudacityApp.cpp:846
+#: AudacityApp.cpp:1150
msgid "Error locking temporary folder"
msgstr "éå®ä¸´æ¶ç®å½æ¶åºé"
-#: AudacityApp.cpp:900
+#: AudacityApp.cpp:1188
msgid "The system has detected that another copy of Audacity is running.\n"
-msgstr ""
+msgstr "ç³»ç»åç°å¦ä¸ä¸ªAudacityæ£å¨è¿è¡ã\n"
-#: AudacityApp.cpp:902
-msgid "Use the New or Open commands in the currently running Audacity\n"
+#: AudacityApp.cpp:1190
+msgid ""
+"Use the New or Open commands in the currently running Audacity\n"
"process to open multiple projects simultaneously.\n"
msgstr ""
+"å¨å½åè¿è¡çAudacityä¸ä½¿ç¨æ°å»ºææå¼å½ä»¤\n"
+"æ¥åæ¶æå¼å¤ä¸ªå·¥ç¨ã\n"
-#: ../src/AudacityApp.cpp:859
+#: AudacityApp.cpp:1191
msgid "Audacity is already running"
msgstr "Audacityå·²ç»å¨è¿è¡äº"
-#: AudacityApp.cpp:1134
+#: AudacityApp.cpp:1208
msgid "Command-line options supported:"
-msgstr ""
+msgstr "æ¯æçå½ä»¤è¡é项ï¼"
#. i18n-hint: '-help' is the option and needs to stay in
#. * English. This displays a list of available options
-#: AudacityApp.cpp:1137
+#: AudacityApp.cpp:1211
msgid "\t-help (this message)"
-msgstr ""
+msgstr "\t-help (å½åä¿¡æ¯)"
#. i18n-hint '-version' needs to stay in English.
-#: AudacityApp.cpp:1139
+#: AudacityApp.cpp:1213
msgid "\t-version (display Audacity version)"
-msgstr ""
+msgstr "\t-version (æ¾ç¤ºAudacityçæ¬)"
#. i18n-hint '-test' is the option and needs to stay in
#. * English. This runs a set of automatic tests on audacity
#. * itself
-#: AudacityApp.cpp:1143
+#: AudacityApp.cpp:1217
msgid "\t-test (run self diagnostics)"
-msgstr ""
+msgstr "\t-test (è¿è¡èªææ£æµ)"
#. i18n-hint '-blocksize' is the option and needs to stay in
#. * English. 'nnn' is any integer number. This controls the
#. * size pieces that audacity uses when writing files to the
#. * disk
-#: AudacityApp.cpp:1148
+#: AudacityApp.cpp:1222
msgid "\t-blocksize nnn (set max disk block size in bytes)"
-msgstr ""
+msgstr "\t-blocksize nnn (设置æå¤§çç£çå大å°(以åèè®°))"
-#: AudacityApp.cpp:1149
+#: AudacityApp.cpp:1223
msgid "In addition, specify the name of an audio file or Audacity project to open it."
-msgstr ""
+msgstr "ç»åºé³é¢æä»¶åæAudacityå·¥ç¨åæ¥æå¼å®"
-#: ../src/AudacityApp.cpp:1119
-msgid "Audacity project (.AUP) files are not currently \n"
+#: AudacityApp.cpp:1500
+msgid ""
+"Audacity project (.AUP) files are not currently \n"
"associated with Audacity. \n"
"\n"
"Associate them, so they open on double-click?"
-msgstr "Audacityå·¥ç¨(.AUP)æä»¶ç®å没æåAudacityå
³èã\n"
+msgstr ""
+"Audacityå·¥ç¨(.AUP)æä»¶ç®å没æåAudacityå
³èã\n"
"å
³èåå¯ä»¥åå»ç¨Audacityæå¼AUPåç¼çæä»¶ã\n"
"\n"
"è¦è¿è¡å
³èåï¼"
-#: ../src/AudacityApp.cpp:1120
+#: AudacityApp.cpp:1501
msgid "Audacity Project Files"
msgstr "Audacityå·¥ç¨æä»¶"
-#: AudioIO.cpp:214
+#: AudioIO.cpp:254
msgid "Could not find any audio devices.\n"
-msgstr ""
+msgstr "æ¾ä¸å°é³é¢è®¾å¤ã\n"
-#: ../src/AudioIO.cpp:175
-msgid "You will not be able to play or record audio.\n"
+#: AudioIO.cpp:255
+msgid ""
+"You will not be able to play or record audio.\n"
"\n"
-msgstr "æ¨å°æ æ³ææ¾æå½å¶é³é¢ã\n"
+msgstr ""
+"æ¨å°æ æ³ææ¾æå½å¶é³é¢ã\n"
"\n"
-#: ../src/AudioIO.cpp:178
+#: AudioIO.cpp:258
msgid "Error: "
-msgstr "é误:"
+msgstr "é误ï¼"
-#: ../src/AudioIO.cpp:181
+#: AudioIO.cpp:261
msgid "Error Initializing Audio"
msgstr "é³é¢åå§åé误"
-#: AudioIO.cpp:1236
-msgid "Latency problem"
-msgstr ""
-
-#: AudioIO.cpp:1236
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
+#: AudioIO.cpp:1225
+msgid ""
+"Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
"Audacity has brought it back to start at zero.\n"
"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
msgstr ""
+"å»¶è¿è®¾ç½®å¯¼è´äºå½å¶çé³é¢å¨0以åç被éèã\n"
+"Audacityæå®æ¾åå°ä»0å¼å§ã\n"
+"ä½ å¯ä»¥ä½¿ç¨æ¶é´ç§»å¨å·¥å
·(<--->æF5)æå¨é³è½¨å°æ£ç¡®çä½ç½®ã"
+
+#: AudioIO.cpp:1375
+msgid "Latency problem"
+msgstr "å»¶è¿é®é¢"
-#: AutoRecovery.cpp:40
+#: AutoRecovery.cpp:54
msgid "Automatic Crash Recovery"
-msgstr ""
+msgstr "å´©æºèªå¨æ¢å¤"
-#: AutoRecovery.cpp:59
-msgid "Some projects were not saved properly the last time Audacity was run.\n"
+#: AutoRecovery.cpp:73
+msgid ""
+"Some projects were not saved properly the last time Audacity was run.\n"
"Fortunately, the following projects can automatically be recovered:"
msgstr ""
+"æäºå·¥ç¨å¨Audacity䏿¬¡è¿è¡æ¯æ²¡ææ£ç¡®çä¿åã\n"
+"幸好ï¼ä»¥ä¸çå·¥ç¨å¯ä»¥èªå¨æ¢å¤ï¼"
-#: AutoRecovery.cpp:61
+#: AutoRecovery.cpp:75
msgid "Recoverable projects"
-msgstr ""
+msgstr "坿¢å¤çå·¥ç¨"
-#: AutoRecovery.cpp:64
-#, fuzzy
+#: AutoRecovery.cpp:78
msgid "Name"
msgstr "åå"
-#: AutoRecovery.cpp:70
+#: AutoRecovery.cpp:84
msgid "Recovering a project will not change any files on disk before you save it."
-msgstr ""
+msgstr "æ¢å¤ä¸ä¸ªå·¥ç¨èªå¨ä½ ä¿åä¹åä¸ä¼æ¹å¨ç£çä¸çæä»¶ã"
-#: AutoRecovery.cpp:74
+#: AutoRecovery.cpp:88
msgid "Quit Audacity"
-msgstr ""
+msgstr "éåº Audacity"
#: AutoRecovery.cpp:89
msgid "Do Not Recover"
-msgstr ""
+msgstr "ä¸è¦æ¢å¤"
#: AutoRecovery.cpp:90
msgid "Recover Projects"
-msgstr ""
+msgstr "æ¢å¤å·¥ç¨"
#: AutoRecovery.cpp:127
-msgid "Are you sure you don't want to recover any projects?\n"
+msgid ""
+"Are you sure you don't want to recover any projects?\n"
"They can't be recovered later."
msgstr ""
+"ä½ ç¡®å®ä¸è¦æ¢å¤ä»»ä½å·¥ç¨åï¼\n"
+"ä»ä»¬ä»¥ååä¹ä¸è½è¢«æ¢å¤äºã"
#: AutoRecovery.cpp:128
msgid "Confirm?"
-msgstr ""
+msgstr "确认ï¼"
-#: AutoRecovery.cpp:132 AutoRecovery.cpp:169
+#: AutoRecovery.cpp:146 AutoRecovery.cpp:183
msgid "Could not enumerate files in auto save directory"
-msgstr ""
-
-#: ../src/ControlToolBar.cpp:775
-#: ../src/ControlToolBar.cpp:965
-#: ../src/UploadDialog.cpp:370
-#: ../src/UploadDialog.cpp:1278
-#: ../src/effects/Effect.cpp:340
-#: ../src/prefs/DirectoriesPrefs.cpp:206
+msgstr "ä¸è½æä¸¾èªå¨ä¿åç®å½ä¸çæä»¶"
+
+#: AutoRecovery.cpp:147 AutoRecovery.cpp:184 Menus.cpp:3095 Menus.cpp:3107
+#: Menus.cpp:5232 Project.cpp:2100 Project.cpp:3662 Project.cpp:3741
+#: TrackPanel.cpp:6424 WaveTrack.cpp:598 WaveTrack.cpp:617 WaveTrack.cpp:1058
+#: WaveTrack.cpp:1077 WaveTrack.cpp:2087 effects/Contrast.cpp:127
+#: effects/Contrast.cpp:137 effects/Effect.cpp:513 export/ExportFFmpeg.cpp:614
+#: export/ExportMP2.cpp:231 prefs/DirectoriesPrefs.cpp:189
+#: prefs/KeyConfigPrefs.cpp:260 toolbars/ControlToolBar.cpp:542
+#: toolbars/ControlToolBar.cpp:871
msgid "Error"
msgstr "é误"
-#: ../src/BatchCommandDialog.cpp:45
+#: BatchCommandDialog.cpp:57 BatchCommandDialog.cpp:62
+#: BatchCommandDialog.cpp:63
msgid "Select Command"
msgstr "éæ©å½ä»¤"
-#: BatchCommandDialog.cpp:80 BatchProcessDialog.cpp:451
-#: prefs/KeyConfigPrefs.cpp:140
+#: BatchCommandDialog.cpp:82 BatchProcessDialog.cpp:454
+#: prefs/KeyConfigPrefs.cpp:158
msgid "&Command"
-msgstr ""
+msgstr "å½ä»¤(&C)"
-#: BatchCommandDialog.cpp:82
-#, fuzzy
+#: BatchCommandDialog.cpp:84
msgid "&Edit Parameters"
-msgstr "ç¼è¾åæ°"
+msgstr "ç¼è¾åæ°(&E)"
-#: BatchCommandDialog.cpp:89 BatchProcessDialog.cpp:452
-#, fuzzy
+#: BatchCommandDialog.cpp:91 BatchProcessDialog.cpp:455
msgid "&Parameters"
-msgstr "åæ°"
+msgstr "åæ°(&P)"
-#: BatchCommandDialog.cpp:93
+#: BatchCommandDialog.cpp:96
msgid "C&hoose command"
-msgstr ""
+msgstr "éæ©å½ä»¤(&H)"
#: BatchCommands.cpp:456
msgid "Stereo to Mono Effect not found"
-msgstr ""
+msgstr "æ²¡ææ¾å°ç«ä½å£°å°åå£°çææ"
-#: ../src/export/Export.cpp:375
+#: BatchCommands.cpp:476
msgid "Ogg Vorbis support is not included in this build of Audacity"
-msgstr "æ¬Audacityä¸ä¸å
å«Ogg Vorbisçæ¯æ"
+msgstr "å½åçAudacityä¸ä¸å
å«Ogg Vorbisçæ¯æ"
-#: BatchCommands.cpp:509
+#: BatchCommands.cpp:488
msgid "FLAC support is not included in this build of Audacity"
-msgstr ""
+msgstr "å½åçAudacityä¸ä¸å
å«FLACçæ¯æ"
-#: BatchCommands.cpp:513
+#: BatchCommands.cpp:492
#, c-format
msgid "Command %s not implemented yet"
-msgstr ""
+msgstr "å½ä»¤ %s è¿æ²¡æå®ç°"
-#: BatchCommands.cpp:529
+#: BatchCommands.cpp:508
#, c-format
-msgid "Could not set parameters of effect %s\n"
+msgid ""
+"Could not set parameters of effect %s\n"
" to %s."
msgstr ""
+"ä¸è½æç¹æ§çåæ° %s\n"
+"设置为 %sã"
-#: BatchCommands.cpp:583
+#: BatchCommands.cpp:561
#, c-format
msgid "Your batch command of %s was not recognised."
-msgstr ""
+msgstr "ä½ çæ¹å¤çå½ä»¤ %s ä¸è½è¢«è¯å«ã"
-#: BatchCommands.cpp:674
+#: BatchCommands.cpp:652
#, c-format
-msgid "Apply %s with parameter(s)\n"
+msgid ""
+"Apply %s with parameter(s)\n"
"\n"
"%s"
msgstr ""
+"åºç¨ %s 使ç¨åæ°\n"
+"\n"
+"%s"
-#: BatchCommands.cpp:675 BatchCommands.cpp:680
+#: BatchCommands.cpp:653 BatchCommands.cpp:658
msgid "Test Mode"
-msgstr ""
+msgstr "æµè¯æ¨¡å¼"
-#: BatchCommands.cpp:679
+#: BatchCommands.cpp:657
#, c-format
msgid "Apply %s"
-msgstr ""
+msgstr "åºç¨%s"
-#: BatchProcessDialog.cpp:58 BatchProcessDialog.cpp:68
-#: BatchProcessDialog.cpp:69
+#: BatchProcessDialog.cpp:60 BatchProcessDialog.cpp:70
+#: BatchProcessDialog.cpp:71
msgid "Apply Chain"
-msgstr ""
+msgstr "åºç¨é¾"
#: BatchProcessDialog.cpp:67
msgid "CleanSpeech Batch Processing"
-msgstr ""
+msgstr "è¯é³æ¸
餿¹å¤ç"
-#: BatchProcessDialog.cpp:92
+#: BatchProcessDialog.cpp:94
msgid "&Select chain"
-msgstr ""
+msgstr "éæ©é¾(&S)"
-#: BatchProcessDialog.cpp:97
+#: BatchProcessDialog.cpp:99
msgid "Chain"
-msgstr ""
+msgstr "é¾"
-#: BatchProcessDialog.cpp:104
+#: BatchProcessDialog.cpp:106
msgid "Apply to Current &Project"
-msgstr ""
+msgstr "åºç¨å°å½åå·¥ç¨(&P)"
-#: BatchProcessDialog.cpp:105
+#: BatchProcessDialog.cpp:107
msgid "Apply to &Files..."
-msgstr ""
+msgstr "åºç¨å°æä»¶...(&F) "
-#: BatchProcessDialog.cpp:106 BatchProcessDialog.cpp:245 LabelDialog.cpp:134
-#: LabelDialog.cpp:138 UploadDialog.cpp:178 effects/Amplify.cpp:209
-#: effects/AutoDuck.cpp:528 effects/AutoDuck.cpp:532
-#: effects/AvcCompressor.cpp:732 effects/ChangeLength.cpp:184
-#: effects/ChangePitch.cpp:395 effects/ChangeSpeed.cpp:393
-#: effects/ChangeTempo.cpp:297 effects/ClickRemoval.cpp:429
-#: effects/Compressor.cpp:516 effects/Effect.cpp:387 effects/Effect.cpp:393
-#: effects/Equalization.cpp:1166 effects/Leveller.cpp:266
-#: effects/Normalize.cpp:353 effects/Phaser.cpp:600 effects/Repeat.cpp:271
-#: effects/SpikeCleaner.cpp:188 effects/TruncSilence.cpp:278
-#: effects/VST/VSTEffect.cpp:95 effects/VST/VSTEffect.cpp:452
-#: effects/Wahwah.cpp:587 effects/audiounits/AudioUnitEffect.cpp:862
-#: effects/ladspa/LadspaEffect.cpp:589 effects/nyquist/Nyquist.cpp:823
-#: effects/nyquist/Nyquist.cpp:987 export/Export.cpp:788
-#: export/ExportMultiple.cpp:844 import/ImportRaw.cpp:443
-#: prefs/FileFormatPrefs.cpp:407 prefs/PrefsDialog.cpp:169
+#: BatchProcessDialog.cpp:108 BatchProcessDialog.cpp:247 UploadDialog.cpp:180
+#: effects/AvcCompressor.cpp:732 effects/ChangeLength.cpp:183
+#: effects/SpikeCleaner.cpp:188 effects/VST/VSTEffect.cpp:453
+#: effects/audiounits/AudioUnitEffect.cpp:887
msgid "&Cancel"
-msgstr ""
+msgstr "åæ¶(&C)"
-#: BatchProcessDialog.cpp:144 BatchProcessDialog.cpp:189
+#: BatchProcessDialog.cpp:146 BatchProcessDialog.cpp:191
msgid "No chain selected"
-msgstr ""
+msgstr "没æéä¸é¾"
-#: BatchProcessDialog.cpp:157
+#: BatchProcessDialog.cpp:159
#, c-format
msgid "Applying '%s' to current project"
-msgstr ""
+msgstr "åºç¨ '%s' å°å½åå·¥ç¨"
-#: ../src/Menus.cpp:3691
+#: BatchProcessDialog.cpp:200
msgid "Please save and close the current project first."
msgstr "请å
ä¿åå¹¶å
³éå½åçå·¥ç¨ã"
#: BatchProcessDialog.cpp:206
msgid "Select vocal file(s) for batch CleanSpeech Chain..."
-msgstr ""
+msgstr "éæ©è¿è¡âè¯é³æ¸
æ¥é¾âæ¹å¤ççè¯é³æä»¶..."
-#: ../src/Menus.cpp:3710
+#: BatchProcessDialog.cpp:207
msgid "Select file(s) for batch processing..."
-msgstr "éæ©æä»¶è¿è¡æ¹å¤ç..."
+msgstr "éæ©è¿è¡æ¹å¤ççæä»¶..."
#: BatchProcessDialog.cpp:209
msgid "Vocal files (*.wav;*.mp3)|*.wav;*.mp3|WAV files (*.wav)|*.wav|MP3 files (*.mp3)|*.mp3"
-msgstr ""
+msgstr "è¯è¨æä»¶ (*.wav;*.mp3)|*.wav;*.mp3|WAV æä»¶ (*.wav)|*.wav|MP3 æä»¶ (*.mp3)|*.mp3"
-#: ../src/Menus.cpp:3713
+#: BatchProcessDialog.cpp:210
msgid "All files (*.*)|*.*|WAV files (*.wav)|*.wav|AIFF files (*.aif)|*.aif|AU files (*.au)|*.au|MP3 files (*.mp3)|*.mp3|Ogg Vorbis files (*.ogg)|*.ogg|FLAC files (*.flac)|*.flac"
msgstr "å
¨é¨æä»¶(*.*)|*.*|WAVæä»¶(*.wav)|*.wav|AIFFæä»¶(*.aif)|*.aif|AUæä»¶(*.au)|*.au|MP3æä»¶(*.mp3)|*.mp3|Ogg Vorbisæä»¶(*.ogg)|*.ogg|FLACæä»¶(*.flac)|*.flac"
-#: BatchProcessDialog.cpp:229
+#: BatchProcessDialog.cpp:231
msgid "Applying..."
-msgstr ""
+msgstr "æ£å¨åºç¨..."
-#: ../src/BatchProcessDialog.cpp:73
+#: BatchProcessDialog.cpp:241
msgid "File"
msgstr "æä»¶"
-#: BatchProcessDialog.cpp:354 BatchProcessDialog.cpp:358
-#: BatchProcessDialog.cpp:359
+#: BatchProcessDialog.cpp:356 BatchProcessDialog.cpp:360
+#: BatchProcessDialog.cpp:361
msgid "Edit Chains"
-msgstr ""
+msgstr "ç¼è¾é¾"
-#: BatchProcessDialog.cpp:414
+#: BatchProcessDialog.cpp:416
msgid "&Chains"
-msgstr ""
+msgstr "é¾(&C)"
-#: BatchProcessDialog.cpp:433
+#: BatchProcessDialog.cpp:435 Tags.cpp:813
msgid "&Add"
-msgstr ""
+msgstr "æ·»å (&A)"
-#: BatchProcessDialog.cpp:434 LabelDialog.cpp:126 TrackPanel.cpp:3925
+#: BatchProcessDialog.cpp:436 LabelDialog.cpp:128 Tags.cpp:814
+#: TrackPanel.cpp:4181
msgid "&Remove"
-msgstr ""
+msgstr "ç§»é¤(&R)"
-#: BatchProcessDialog.cpp:435
+#: BatchProcessDialog.cpp:437
msgid "Re&name"
-msgstr ""
+msgstr "éå½å(&N)"
-#: BatchProcessDialog.cpp:441
+#: BatchProcessDialog.cpp:443
msgid "C&hain (Double-Click or press SPACE to edit)"
-msgstr ""
+msgstr "é¾ï¼å廿æç©ºæ ¼è¿è¡ç¼è¾ï¼(&H)"
-#: ../src/prefs/BatchPrefs.cpp:156
-msgid "No"
-msgstr "æ "
+#. i18n-hint: This is the number of the command in the list
+#: BatchProcessDialog.cpp:453
+msgid "Num"
+msgstr "å½ä»¤æ°"
-#: BatchProcessDialog.cpp:456
+#: BatchProcessDialog.cpp:459
msgid "&Insert"
-msgstr ""
+msgstr "æå
¥(&I)"
-#: BatchProcessDialog.cpp:457
+#: BatchProcessDialog.cpp:460
msgid "De&lete"
-msgstr ""
+msgstr "å é¤(&L)"
-#: BatchProcessDialog.cpp:458
+#: BatchProcessDialog.cpp:461
msgid "Move &Up"
-msgstr ""
+msgstr "ä¸ç§»(&U)"
-#: BatchProcessDialog.cpp:459
+#: BatchProcessDialog.cpp:462
msgid "Move &Down"
-msgstr ""
+msgstr "ä¸ç§»(&D)"
-#: BatchProcessDialog.cpp:460
+#: BatchProcessDialog.cpp:463
msgid "De&faults"
-msgstr ""
+msgstr "é»è®¤(&F)"
-#: ../src/prefs/BatchPrefs.cpp:197
-#: ../src/prefs/BatchPrefs.cpp:447
+#: BatchProcessDialog.cpp:507
msgid "- END -"
msgstr "- ç»æ -"
-#: BatchProcessDialog.cpp:531
+#: BatchProcessDialog.cpp:540
#, c-format
msgid "%s changed"
-msgstr ""
+msgstr "%s å·²æ¹å"
-#: BatchProcessDialog.cpp:532
+#: BatchProcessDialog.cpp:541
msgid "Do you want to save the changes?"
-msgstr ""
+msgstr "ä½ æ³ä¿åæ¹ååï¼"
-#: BatchProcessDialog.cpp:614
+#: BatchProcessDialog.cpp:623
msgid "Enter name of new chain"
-msgstr ""
+msgstr "è¾å
¥æ°é¾çåå"
-#: BatchProcessDialog.cpp:625
+#: BatchProcessDialog.cpp:634
msgid "Name must not be blank"
-msgstr ""
+msgstr "ååä¸è½ä¸ºç©º"
-#: BatchProcessDialog.cpp:634
+#: BatchProcessDialog.cpp:643
#, c-format
msgid "Names may not contain '%c' and '%c'"
-msgstr ""
+msgstr "ååä¸è½å
æ¬'%c'å'%c'"
-#: BatchProcessDialog.cpp:664
+#: BatchProcessDialog.cpp:673
#, c-format
msgid "Are you sure you want to delete %s?"
-msgstr ""
+msgstr "ä½ ç¡®å®è¦å é¤ %s?"
#: Dependencies.cpp:139
msgid "Removing Dependencies"
-msgstr ""
+msgstr "æ£å¨å é¤ä¾èµ"
#: Dependencies.cpp:140
msgid "Copying audio data into project..."
-msgstr ""
+msgstr "æ£å¨å¤å¶é³é¢æä»¶å°å·¥ç¨..."
-#: Dependencies.cpp:219
-msgid "Your project currently depends on the presence of other files.\n"
+#: Dependencies.cpp:223
+msgid ""
+"Your project currently depends on the presence of other files.\n"
"Copy audio from the following files into your project to make it self-contained?\n"
"This will need more disc space but is safer."
msgstr ""
+"ä½ çå·¥ç¨ç®åä¾èµå
¶ä»æä»¶çåå¨ã\n"
+"æ¯å¦æä¸åçé³é¢æä»¶å¤å¶å°å·¥ç¨ä¸ï¼ä½¿å¾å®èªå
å«ï¼ \n"
+"è¿æ ·åéè¦æ´å¤çç£ç空é´ä½æ´å®å
¨ã"
-#: Dependencies.cpp:266
+#: Dependencies.cpp:270
msgid "Project depends on other audio files"
-msgstr ""
+msgstr "å·¥ç¨ä¾èµå
¶ä»é³é¢æä»¶"
-#: Dependencies.cpp:287
+#: Dependencies.cpp:291
msgid "Project Dependencies"
-msgstr ""
+msgstr "å·¥ç¨çä¾èµ"
-#: Dependencies.cpp:290
+#: Dependencies.cpp:294
msgid "Audio file"
-msgstr ""
+msgstr "é³é¢æä»¶"
-#: Dependencies.cpp:292
+#: Dependencies.cpp:296
msgid "Disk space"
-msgstr ""
+msgstr "ç£ç空é´"
-#: Dependencies.cpp:297
+#: Dependencies.cpp:301
msgid "Copy Selected Audio Into Project"
-msgstr ""
+msgstr "æéä¸çé³é¢å¤å¶å°å·¥ç¨"
-#: Dependencies.cpp:304 Dependencies.cpp:413
+#: Dependencies.cpp:308 Dependencies.cpp:414
msgid "Cancel Save"
-msgstr ""
+msgstr "åæ¶ä¿å"
-#: Dependencies.cpp:306
+#: Dependencies.cpp:310
msgid "Do Not Copy Any Audio"
-msgstr ""
+msgstr "ä¸è¦å¤å¶é³é¢"
-#: Dependencies.cpp:308
+#: Dependencies.cpp:312
msgid "Copy All Audio into Project (Safer)"
-msgstr ""
+msgstr "ææé³é¢å¤å¶å°å·¥ç¨ä¸ï¼æ´å®å
¨ï¼"
-#: Dependencies.cpp:320 Dependencies.cpp:325
+#: Dependencies.cpp:321 Dependencies.cpp:326
msgid "Ask me"
-msgstr ""
+msgstr "鮿"
-#: Dependencies.cpp:318
+#: Dependencies.cpp:322
msgid "Always copy all audio (safest)"
-msgstr ""
+msgstr "æ»æ¯å¤å¶ææé³é¢ï¼æå®å
¨ï¼"
-#: Dependencies.cpp:319
+#: Dependencies.cpp:323
msgid "Never copy any audio"
-msgstr ""
+msgstr "æ»ä¸å¤å¶é³é¢"
-#: Dependencies.cpp:324
+#: Dependencies.cpp:325
msgid "Whenever a project depends on other files:"
-msgstr ""
+msgstr "å½å·¥ç¨ä¾èµå
¶ä»æä»¶æ¶ï¼"
-#: Dependencies.cpp:412
+#: Dependencies.cpp:413
msgid "If you proceed, your project will not be saved to disk. Is this what you want?"
-msgstr ""
+msgstr "å¦æä½ ç»§ç»ï¼ä½ çå·¥ç¨å°ä¸ä¼ä¿åå°ç£çï¼ä½ å¸æè¿æ ·çåï¼"
-#: Dependencies.cpp:452
+#: Dependencies.cpp:453
msgid "Your project is self-contained; it does not depend on any external audio files."
-msgstr ""
+msgstr "ä½ çå·¥ç¨æ¯èªå
å«çï¼å®ä¸ä¾èµä»»ä½å¤é¨é³é¢æä»¶ã"
-#: Dependencies.cpp:453
+#: Dependencies.cpp:454
msgid "Dependency check"
-msgstr ""
+msgstr "ä¾èµæ§æ£æ¥"
-#: ../src/DirManager.cpp:96
-msgid "Warning: there is very little free disk space left on this volume.\n"
+#: DirManager.cpp:137
+msgid ""
+"Warning: there is very little free disk space left on this volume.\n"
"Please select another temporary directory in your preferences."
-msgstr "è¦å: ç£çä¸çå©ä½å®¹éä¸å¤ã\n"
-"请å¨åæ°è®¾å®ééæ©å¦ä¸ä¸ªä¸´æ¶ç®å½ã"
+msgstr ""
+"è¦åï¼ ç£çä¸çå©ä½å®¹éå¾å°äºã\n"
+"请å¨å好é项ééæ©å¦ä¸ä¸ªä¸´æ¶ç®å½ã"
-#: ../src/DirManager.cpp:151
-#: ../src/DirManager.cpp:233
-#: ../src/DirManager.cpp:347
+#: DirManager.cpp:223 DirManager.cpp:254 DirManager.cpp:337
msgid "Progress"
-msgstr "è¿è¡"
+msgstr "è¿åº¦"
-#: ../src/DirManager.cpp:283
+#: DirManager.cpp:288
msgid "Cleaning up temporary files"
-msgstr "æ¸
ç©ºä¸´æ¶æä»¶"
+msgstr "æ£å¨æ¸
é¤ä¸´æ¶æä»¶"
-#: ../src/DirManager.cpp:348
+#: DirManager.cpp:338
msgid "Saving project data files"
-msgstr "æ£å¨ä¿åå·¥ç¨æ°æ®æä»¶"
+msgstr "ä¿åå·¥ç¨æ°æ®æä»¶"
-#: ../src/DirManager.cpp:411
+#: DirManager.cpp:410
msgid "Cleaning up cache directories"
-msgstr "æ¸
空ç¼åç®å½"
+msgstr "æ£å¨æ¸
é¤ç¼åç®å½"
-#: ../src/DirManager.cpp:488
+#: DirManager.cpp:505
#, c-format
-msgid "Audacity found an orphaned blockfile %s! \n"
+msgid ""
+"Audacity found an orphaned blockfile %s! \n"
"Please consider saving and reloading the project to perform a complete project check.\n"
-msgstr "Audacityåç°äºä¸ä¸ªå¤ç«çåæä»¶ %sï¼\n"
+msgstr ""
+"Audacityåç°äºä¸ä¸ªå¤ç«çåæä»¶ %sï¼\n"
"建议ä¿åå¹¶éæ°è¯»åå·¥ç¨æä»¶ï¼ä»¥è¿è¡å®æ´çå·¥ç¨æ£æ¥ã\n"
#. i18n-hint: This is the pattern for filenames that are created
-#: ../src/DirManager.cpp:968
+#. when a file needs to be backed up to a different name. For
+#. example, mysong would become mysong-old1, mysong-old2, etc.
+#: DirManager.cpp:1094
#, c-format
msgid "%s-old%d"
msgstr "%s-old%d"
-#: DirManager.cpp:993
+#: DirManager.cpp:1102
msgid "Unable to open/create test file"
-msgstr ""
+msgstr "ä¸è½æå¼ï¼æ°å»ºæµè¯æä»¶"
-#: DirManager.cpp:1002
+#: DirManager.cpp:1111
#, c-format
msgid "Unable to remove '%s'"
-msgstr ""
+msgstr "ä¸è½å é¤ '%s'"
-#: ../src/DirManager.cpp:984
+#: DirManager.cpp:1116
#, c-format
msgid "Renamed file: %s\n"
-msgstr "æ´åæä»¶: %s\n"
+msgstr "éå½åæä»¶ï¼ %s\n"
-#: DirManager.cpp:1051
+#: DirManager.cpp:1166
#, c-format
msgid "Unable to rename '%s' to '%s'"
-msgstr ""
+msgstr "ä¸è½ææä»¶'%s'éå½å为'%s'"
#: DirManager.cpp:1183
#, c-format
msgid "Changed block %s to new alias name\n"
-msgstr ""
+msgstr "å·²æå'%s'æ¹åå°æ°çå«å\n"
-#: ../src/DirManager.cpp:1089
+#: DirManager.cpp:1249 DirManager.cpp:1540
msgid "Inspecting project file data..."
msgstr "æ£å¨æ£æ¥å·¥ç¨æä»¶æ°æ®..."
-#: ../src/DirManager.cpp:1102
+#: DirManager.cpp:1265
#, c-format
msgid "Orphaned blockfile: (%s)"
-msgstr "å¤ç«çåæä»¶: (%s)"
+msgstr "å¤ç«çåæä»¶ï¼ (%s)"
-#: ../src/DirManager.cpp:1127
+#: DirManager.cpp:1290
#, c-format
msgid "Missing alias file: (%s)"
-msgstr "缺失å«åæä»¶: (%s)"
+msgstr "缺失å«åæä»¶ï¼ (%s)"
-#: ../src/DirManager.cpp:1146
+#: DirManager.cpp:1310
#, c-format
msgid "Missing summary file: (%s.auf)"
-msgstr "缺失æ¦è¦æä»¶: (%s.auf)"
+msgstr "缺失æ¦è¦æä»¶ï¼ (%s.auf)"
-#: ../src/DirManager.cpp:1165
+#: DirManager.cpp:1330
#, c-format
msgid "Missing data file: (%s.au)"
-msgstr "ç¼ºå¤±æ°æ®æä»¶: (%s.au)"
+msgstr "ç¼ºå¤±æ°æ®æä»¶ï¼ (%s.au)"
-#: ../src/DirManager.cpp:1179
-msgid "Project check found inconsistencies inspecting the loaded project data;\n"
+#: DirManager.cpp:1344
+msgid ""
+"Project check found inconsistencies inspecting the loaded project data;\n"
"click 'Details' for a complete list of errors, or 'OK' to proceed to more options."
-msgstr "卿£æ¥å è½½çå·¥ç¨æ°æ®æ¶åç°é误ï¼\n"
+msgstr ""
+"卿£æ¥å è½½çå·¥ç¨æ°æ®æ¶åç°é误ï¼\n"
"ç¹å»'详æ
'æ¥çé误ç宿´åè¡¨ï¼æè
ç¹å»'ç¡®å®'ç»§ç»è³æ´å¤é项ã"
-#: ../src/DirManager.cpp:1189
+#: DirManager.cpp:1356
#, c-format
-msgid "Project check found %d orphaned blockfile[s]. These files are\n"
+msgid ""
+"Project check found %d orphaned blockfile[s]. These files are\n"
"unused and probably left over from a crash or some other bug.\n"
"They should be deleted to avoid disk contention."
-msgstr "å·¥ç¨æ£æ¥åç°äº %d 个å¤ç«çåæä»¶ãè¿äºæä»¶\n"
+msgstr ""
+"å·¥ç¨æ£æ¥åç°äº %d 个å¤ç«çåæä»¶ãè¿äºæä»¶\n"
"æªè¢«ä½¿ç¨ï¼å¯è½æ¯ç³»ç»å´©æºæç¨åºé误çä¸çã\n"
"为äºè约ç£ç空é´ï¼åºè¯¥å é¤è¿äºæä»¶ã"
-#: ../src/DirManager.cpp:1194
+#: DirManager.cpp:1361
msgid "Delete orphaned files [safe and recommended]"
msgstr "å é¤å¤ç«çæä»¶ [å®å
¨ï¼æ¨è使ç¨]"
-#: ../src/DirManager.cpp:1195
+#: DirManager.cpp:1362
msgid "Continue without deleting; silently work around the extra files"
-msgstr "ä¸å é¤ï¼ç»§ç»æ§è¡ï¼å¨åå°å¤ç"
+msgstr "ä¸å é¤ï¼ç»§ç»æ§è¡ï¼é»é»å°å¤çå¤ä½æä»¶"
-#: ../src/DirManager.cpp:1196
+#: DirManager.cpp:1363
msgid "Close project immediately with no changes"
msgstr "ä¸ä¿åä¿®æ¹ï¼ç«å³å
³éå·¥ç¨"
-#: ../src/DirManager.cpp:1198
-#: ../src/DirManager.cpp:1228
-#: ../src/DirManager.cpp:1266
-#: ../src/DirManager.cpp:1297
-#: ../src/widgets/Warning.cpp:45
+#: DirManager.cpp:1365 DirManager.cpp:1400 DirManager.cpp:1446
+#: DirManager.cpp:1488 export/Export.cpp:582 export/Export.cpp:603
+#: export/Export.cpp:622 widgets/Warning.cpp:55
msgid "Warning"
msgstr "è¦å"
-#: ../src/DirManager.cpp:1219
-#, fuzzy, c-format
-msgid "Project check detected %d input file[s] being used in place\n"
+#: DirManager.cpp:1391
+#, c-format
+msgid ""
+"Project check detected %d input file[s] being used in place\n"
"('alias files') are now missing. There is no way for Audacity\n"
"to recover these files automatically; you may choose to\n"
"permanently fill in silence for the missing files, temporarily\n"
"fill in silence for this session only, or close the project now\n"
"and try to restore the missing files by hand."
-msgstr "å·¥ç¨æ£æ¥åç°å¨ä½ç½®('å«åæä»¶')ç %d 个è¾å
¥æä»¶\n"
-"ç°å¨ç¼ºå¤±äºãAudacityæ æ³èªå¨\n"
-"æ¢å¤è¿äºæä»¶ï¼æ¨å¯ä»¥éæ©ç¨é鳿°¸ä¹
æ§å°å¡«å
\n"
-"丢失çæä»¶ï¼æè
ä»
卿¬æ¬¡è¿è¡æé´ææ¶ç¨éé³å¡«å
ï¼\n"
-"åæè
马ä¸å
³éå·¥ç¨å¹¶å°è¯æå·¥\n"
-"æ¢å¤ä¸¢å¤±çæä»¶ã"
-
-#: ../src/DirManager.cpp:1224
+msgstr ""
+"å·¥ç¨æ£æ¥åç°å¨ä½ç½®('å«åæä»¶')ç %d 个导å
¥æä»¶\n"
+"ç°å¨ç¼ºå¤±äºãAudacityæ æ³èªå¨æ¢å¤è¿äºæä»¶ï¼\n"
+"æ¨å¯ä»¥éæ©ç¨é鳿°¸ä¹
æ§å°å¡«å
丢失çæä»¶ï¼\n"
+"æè
ä»
卿¬æ¬¡è¿è¡æé´ææ¶ç¨éé³å¡«å
ï¼\n"
+"åæè
马ä¸å
³éå·¥ç¨å¹¶å°è¯æå·¥æ¢å¤ä¸¢å¤±\n"
+"çæä»¶ã"
+
+#: DirManager.cpp:1396
msgid "Replace missing data with silence [permanent upon save]"
msgstr "ç¨é鳿¿æ¢ä¸¢å¤±çæ°æ® [æ°¸ä¹
æ¿æ¢ï¼å¨ä¿ååçæ]"
-#: ../src/DirManager.cpp:1294
+#: DirManager.cpp:1397 DirManager.cpp:1485
msgid "Temporarily replace missing data with silence [this session only]"
msgstr "ææ¶ç¨é鳿¿æ¢ä¸¢å¤±çæ°æ® [åªéæ¬æ¬¡ç¨åºè¿è¡æé´]"
-#: ../src/DirManager.cpp:1226
-#: ../src/DirManager.cpp:1264
-#: ../src/DirManager.cpp:1295
+#: DirManager.cpp:1398 DirManager.cpp:1444 DirManager.cpp:1486
msgid "Close project immediately with no further changes"
msgstr "ä¸ä¿åè¿ä¸æ¥çä¿®æ¹ï¼ç«å³å
³éå·¥ç¨"
-#: ../src/DirManager.cpp:1257
+#: DirManager.cpp:1437
#, c-format
-msgid "Project check detected %d missing summary file[s] (.auf).\n"
+msgid ""
+"Project check detected %d missing summary file[s] (.auf).\n"
"Audacity can fully regenerate these summary files from the\n"
"original audio data in the project."
-msgstr "å·¥ç¨æ£æ¥åç°æ %d 个æè¦æä»¶(.auf)缺失äºã\n"
+msgstr ""
+"å·¥ç¨æ£æ¥åç°æ %d 个æè¦æä»¶(.auf)缺失äºã\n"
"Audacityå¯ä»¥æ ¹æ®å·¥ç¨éçåå§é³é¢æ°æ®éæ°çæ\n"
-"宿´çæè¦æä»¶ã"
+"宿´çæ¦è¦æä»¶ã"
-#: ../src/DirManager.cpp:1262
+#: DirManager.cpp:1442
msgid "Regenerate summary files [safe and recommended]"
msgstr "éæ°çææ¦è¦æä»¶ [å®å
¨ï¼æ¨è使ç¨]"
-#: ../src/DirManager.cpp:1263
+#: DirManager.cpp:1443
msgid "Fill in silence for missing display data [this session only]"
msgstr "对äºç¼ºå¤±çæ¾ç¤ºæ°æ®ä»¥éé³å¡«å
[åªéæ¬æ¬¡ç¨åºè¿è¡æé´]"
-#: ../src/DirManager.cpp:1288
+#: DirManager.cpp:1479
#, c-format
-msgid "Project check detected %d missing audio data blockfile[s] (.au), \n"
+msgid ""
+"Project check detected %d missing audio data blockfile[s] (.au), \n"
"probably due to a bug, system crash or accidental deletion.\n"
"There is no way for Audacity to recover this lost data\n"
"automatically; you may choose to permanently fill in silence\n"
"for the missing data, temporarily fill in silence for this\n"
"session only, or close the project now and try to restore the\n"
"missing data by hand."
-msgstr "å·¥ç¨æ£æ¥åç°å¯è½å 为ç¨åºé误ãç³»ç»å´©æºææå¤å 餿ä½ï¼\n"
+msgstr ""
+"å·¥ç¨æ£æ¥åç°å¯è½å 为bugãç³»ç»å´©æºææå¤å é¤ï¼\n"
"导è´äºæ %d 个é³é¢æ°æ®åæä»¶(.au)缺失äºã\n"
"Audacityæ æ³èªå¨æ¢å¤è¿äºæ°æ®ï¼\n"
-"æ¨å¯ä»¥éæ©ç¨é鳿°¸ä¹
æ§å°å¡«å
\n"
-"ä¸¢å¤±çæ°æ®ï¼æè
ä»
卿¬æ¬¡è¿è¡æé´ææ¶ç¨\n"
+"æ¨å¯ä»¥éæ©ç¨é鳿°¸ä¹
æ§å°å¡«å
丢失\n"
+"çæ°æ®ï¼æè
ä»
卿¬æ¬¡è¿è¡æé´ææ¶ç¨\n"
"éé³å¡«å
ï¼åæè
马ä¸å
³éå·¥ç¨å¹¶å°è¯\n"
"æå·¥æ¢å¤ä¸¢å¤±çæ°æ®ã"
-#: ../src/DirManager.cpp:1293
+#: DirManager.cpp:1484
msgid "Replace missing data with silence [permanent immediately]"
msgstr "ç¨é鳿¿æ¢ä¸¢å¤±çæ°æ® [æ°¸ä¹
æ¿æ¢ï¼ç«å³çæ]"
-#: ../src/DirManager.cpp:1320
+#: DirManager.cpp:1512
msgid "Cleaning up unused directories in project data..."
-msgstr "æ¸
é¤å·¥ç¨æ°æ®ä¸æªç¨çç®å½..."
+msgstr "æ£å¨æ¸
é¤å·¥ç¨æ°æ®ä¸æªç¨çç®å½..."
-#: DirManager.cpp:1448
+#: DirManager.cpp:1583
msgid "Caching audio"
-msgstr ""
+msgstr "æ£å¨ç¼åé³é¢"
-#: DirManager.cpp:1449
+#: DirManager.cpp:1584
msgid "Caching audio into memory..."
-msgstr ""
+msgstr "æ£å¨ç¼åé³é¢å°å
å..."
-#: DirManager.cpp:1486
+#: DirManager.cpp:1617
msgid "Saving recorded audio"
-msgstr ""
+msgstr "æ£å¨ä¿åå½å¶çé³é¢"
-#: DirManager.cpp:1487
+#: DirManager.cpp:1618
msgid "Saving recorded audio to disk..."
-msgstr ""
+msgstr "æ£å¨ä¿åå½å¶çé³é¢å°ç£ç..."
-#: ../src/FFT.cpp:364
+#: FFT.cpp:389
msgid "Rectangular"
-msgstr "ç©å½¢"
+msgstr "æ¹å½¢"
#: FFmpeg.cpp:36
msgid "FFmpeg support not compiled in"
-msgstr ""
+msgstr "FFmpeg æ¯ææ²¡æè¢«ç¼è¯è¿"
-#: FFmpeg.cpp:101
-msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
+#: FFmpeg.cpp:103
+msgid ""
+"FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
+"FFmpegä¹åå¨å好é项ä¸é
ç½®æ£ç¡®ï¼å¹¶ä¸æåå è½½è¿ï¼\n"
+"ä½è¿æ¬¡ï¼Audacityå¯å¨æ¶å è½½å®å¤±è´¥ã\n"
+"\n"
+"ä½ å¯ä»¥å°'å好é项'>'åº'ä¸éæ°é
ç½®ä¸ä¸ã"
#: FFmpeg.cpp:104
msgid "FFmpeg startup failed"
-msgstr ""
+msgstr "FFmpegå¯å¨å¤±è´¥"
-#: FFmpeg.cpp:115
+#: FFmpeg.cpp:112
msgid "FFmpeg library not found"
-msgstr ""
+msgstr "FFmpegåºæ²¡ææ¾å°"
-#: FFmpeg.cpp:170
+#: FFmpeg.cpp:172
msgid "Locate FFmpeg"
-msgstr ""
+msgstr "å®ä½FFmpeg"
-#: FFmpeg.cpp:190
+#: FFmpeg.cpp:192
#, c-format
msgid "Audacity needs the file %s to import and export audio via FFmpeg."
-msgstr ""
+msgstr "Audacity éè¦æä»¶ %s æ¥éè¿ FFmpeg 导åºï¼å¯¼å
¥é³é¢."
-#: export/ExportMP3.cpp:507
+#: FFmpeg.cpp:198 export/ExportMP3.cpp:562
#, c-format
msgid "Location of %s:"
-msgstr ""
+msgstr "%sççä½ç½®ï¼"
-#: export/ExportMP3.cpp:516
+#: FFmpeg.cpp:207 export/ExportMP3.cpp:571
#, c-format
msgid "To find %s, click here -->"
-msgstr ""
+msgstr "è¦æ¾%sï¼ç¹å»è¿é-->"
-#: export/ExportMP3.cpp:522
+#: FFmpeg.cpp:213 export/ExportMP3.cpp:577
msgid "Browse..."
-msgstr ""
+msgstr "æµè§..."
-#: FFmpeg.cpp:212
+#: FFmpeg.cpp:214
msgid "To get a free copy of FFmpeg, click here -->"
-msgstr ""
+msgstr "è¦å¾å°ä¸ä¸ªå
è´¹çFFmpegçæ·è´ï¼ç¹å»è¿é-->"
#: FFmpeg.cpp:215 export/ExportMP3.cpp:579
msgid "Download"
-msgstr ""
+msgstr "ä¸è½½"
#. i18n-hint: It's asking for the location of a file, for
-#: ../src/export/ExportMP3.cpp:113
+#. example, "Where is lame_enc.dll?" - you could translate
+#. "Where would I find the file %s" instead if you want.
+#: FFmpeg.cpp:237 export/ExportMP3.cpp:601
#, c-format
msgid "Where is %s?"
msgstr "%s å¨åªéï¼"
#: FFmpeg.cpp:407
msgid "Failed to find compatible FFmpeg libraries"
-msgstr ""
+msgstr "æ¾ä¸å°å
¼å®¹çFFmepgåº"
-#: FFmpeg.h:95
+#: FFmpeg.h:87
msgid "FFmpeg not found"
-msgstr ""
+msgstr "FFmpegæ²¡ææ¾å°"
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid ""
+"Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
+"Audacityå°è¯çç¨FFmpegåºæ¥å¯¼å
¥é³é¢æä»¶ï¼\n"
+"ä½åºæ²¡ææ¾å°ã \n"
+"\n"
+"æä½ è¦ä½¿ç¨FFmpeg导å
¥ï¼è¯·å°'å好é项'->'åº'ï¼ "
+"å»ä¸è½½æå®ä½FFmpegåºã"
#: FFmpeg.h:109
msgid "Do not show this warning again"
-msgstr ""
+msgstr "ä¸è¦åæ¾ç¤ºè¿ä¸ªè¦åäº"
-#: FFmpeg.h:251
+#: FFmpeg.h:242
msgid "Only avformat.dll|*avformat*.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
-msgstr ""
+msgstr "ä»
avformat.dll|*avformat*.dll|卿龿¥åº (*.dll)|*.dll|æææä»¶ (*.*)|*"
#: FFmpeg.h:268
msgid "Dynamic Libraries (*.dylib)|*.dylib|All Files (*)|*"
-msgstr ""
+msgstr "å¨æåº (*.dylib)|*.dylib|æææä»¶ (*)|*"
-#: FFmpeg.h:266
+#: FFmpeg.h:295
msgid "Only libavformat.so|libavformat.so*|Dynamically Linked Libraries (*.so*)|*.so*|All Files (*)|*"
-msgstr ""
+msgstr "ä»
libavformat.so|libavformat.so*|卿龿¥åº (*.so*)|*.so*|æææä»¶ (*)|*"
-#: ../src/FreqWindow.cpp:68
+#: FreqWindow.cpp:103
msgid "Frequency Analysis"
msgstr "é¢çåæ"
-#: ../src/FreqWindow.cpp:129
-#: ../src/TrackPanel.cpp:392
+#: FreqWindow.cpp:139 TrackPanel.cpp:553 prefs/GUIPrefs.cpp:156
msgid "Spectrum"
msgstr "é¢è°±"
-#: ../src/FreqWindow.cpp:130
+#: FreqWindow.cpp:140
msgid "Standard Autocorrelation"
msgstr "æ åèªå¨ç¸å
³(Standard Autocorrelation)"
-#: ../src/FreqWindow.cpp:131
+#: FreqWindow.cpp:141
msgid "Cuberoot Autocorrelation"
msgstr "ç«æ¹æ ¹èªå¨ç¸å
³ (Cuberoot Autocorrelation)"
-#: ../src/FreqWindow.cpp:132
+#: FreqWindow.cpp:142
msgid "Enhanced Autocorrelation"
msgstr "å¢å¼ºçèªå¨ç¸å
³(Enhanced Autocorrelation)"
#. i18n-hint: This is a technical term, derived from the word
-#: ../src/FreqWindow.cpp:136
+#. "spectrum". Do not translate it unless you are sure you
+#. know the correct technical word in your language.
+#: FreqWindow.cpp:146
msgid "Cepstrum"
msgstr "åé¢è°±"
#: FreqWindow.cpp:150 FreqWindow.cpp:154
msgid "Algorithm"
-msgstr ""
+msgstr "ç®æ³"
-#: ../src/HistoryWindow.cpp:59
+#: FreqWindow.cpp:169 FreqWindow.cpp:173 HistoryWindow.cpp:79
msgid "Size"
msgstr "大å°"
#. i18n-hint: This refers to a "window function", used in the
-#: ../src/FreqWindow.cpp:167
+#. Frequency analyze dialog box.
+#: FreqWindow.cpp:183
msgid " window"
msgstr "çªå£"
#: FreqWindow.cpp:187 FreqWindow.cpp:191
msgid "Function"
-msgstr ""
+msgstr "彿°"
-#: ../src/FreqWindow.cpp:177
+#: FreqWindow.cpp:196
msgid "Linear frequency"
msgstr "线æ§é¢ç"
-#: ../src/FreqWindow.cpp:178
+#: FreqWindow.cpp:197
msgid "Log frequency"
msgstr "对æ°é¢ç"
#: FreqWindow.cpp:201 FreqWindow.cpp:205
msgid "Axis"
-msgstr ""
+msgstr "è½´"
-#: FreqWindow.cpp:204 LabelDialog.cpp:128
+#: FreqWindow.cpp:212 LabelDialog.cpp:130 Menus.cpp:242 Menus.cpp:277
msgid "&Export..."
-msgstr ""
+msgstr "导åº...(&E)"
-#: HelpText.cpp:77 export/ExportCL.cpp:320
+#: FreqWindow.cpp:213 effects/Contrast.cpp:437 export/ExportCL.cpp:323
+#: export/ExportMultiple.cpp:344
msgid "Export"
-msgstr ""
+msgstr "导åº"
-#: ../src/Benchmark.cpp:223
-#: ../src/FreqWindow.cpp:123
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr "éç»(&R)"
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr "éç»"
+
+#: FreqWindow.cpp:216 FreqWindow.cpp:217 widgets/ErrorDialog.cpp:161
msgid "Close"
msgstr "å
³é"
-#: ../src/effects/Compressor.cpp:385
-#: ../src/effects/Compressor.cpp:393
-#: ../src/widgets/Meter.cpp:344
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr "ç½æ ¼"
+
+#: FreqWindow.cpp:280 FreqWindow.cpp:410 effects/AutoDuck.cpp:489
+#: effects/AutoDuck.cpp:523 effects/AutoDuck.cpp:792
+#: effects/Compressor.cpp:352 effects/Compressor.cpp:360
+#: effects/Equalization.cpp:1123 effects/Equalization.cpp:1125
+#: effects/Equalization.cpp:1133 effects/Equalization.cpp:1199
+#: effects/Equalization.cpp:1408 effects/Equalization.cpp:1419
+#: effects/Normalize.cpp:368 widgets/Meter.cpp:413
msgid "dB"
msgstr "dB"
#. i18n-hint: This is the abbreviation for "Hertz", or
-#: ../src/import/ImportRaw.cpp:406
+#. cycles per second.
+#: FreqWindow.cpp:295 FreqWindow.cpp:450 effects/Equalization.cpp:1164
+#: effects/Equalization.cpp:1195 import/ImportRaw.cpp:399
msgid "Hz"
msgstr "Hz"
-#: ../src/FreqWindow.cpp:463
+#: Menus.cpp:4011
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "为äºç»å¶é¢è°±ï¼ææéå®ç轨éå¿
é¡»å
·æç¸åçéæ ·çã"
+
+#: Menus.cpp:4037
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "éæ©çé³é¢è¿å¤ãåªæå¼å§ %.1f ç§çé³é¢ä¼è¢«åæã"
+
+#: FreqWindow.cpp:394
msgid "Not enough data selected."
msgstr "没æéæ©è¶³å¤çæ°æ®ã"
-#: FreqWindow.cpp:441 effects/AutoDuck.cpp:801
+#: FreqWindow.cpp:458 effects/AutoDuck.cpp:794
msgid "s"
-msgstr ""
+msgstr "ç§"
-#: FreqWindow.cpp:769
+#: FreqWindow.cpp:787
#, c-format
msgid "Cursor: %d Hz (%s) = %d dB Peak: %d Hz (%s) = %.1f dB"
-msgstr ""
+msgstr "å
æ ï¼ %d Hz (%s) = %d dB å³°ï¼ %d Hz (%s) = %.1f dB"
-#: FreqWindow.cpp:778
+#: FreqWindow.cpp:796
#, c-format
msgid "Cursor: %.4f sec (%d Hz) (%s) = %f, Peak: %.4f sec (%d Hz) (%s) = %.3f"
-msgstr ""
+msgstr "å
æ ï¼ %.4f sec (%d Hz) (%s) = %fï¼ å³°ï¼ %.4f sec (%d Hz) (%s) = %.3f"
-#: ../src/FreqWindow.cpp:994
+#: FreqWindow.cpp:1069
msgid "spectrum.txt"
msgstr "spectrum.txt"
-#: ../src/FreqWindow.cpp:996
+#: FreqWindow.cpp:1071
msgid "Export Spectral Data As:"
-msgstr "å°é¢è°±æ°æ®å¯¼åºä¸º:"
+msgstr "å°é¢è°±æ°æ®å¯¼åºä¸ºï¼"
-#: ../src/FreqWindow.cpp:1012
-#: ../src/Menus.cpp:1840
-#: ../src/Project.cpp:2337
-#: ../src/prefs/KeyConfigPrefs.cpp:175
+#: FreqWindow.cpp:1087 LabelDialog.cpp:603 Menus.cpp:2567 Project.cpp:2663
+#: Project.cpp:3714 effects/Contrast.cpp:567 prefs/KeyConfigPrefs.cpp:195
msgid "Couldn't write to file: "
msgstr "ä¸è½åå
¥æä»¶ï¼"
-#: ../src/FreqWindow.cpp:1017
+#: FreqWindow.cpp:1092
msgid "Frequency (Hz)\tLevel (dB)"
-msgstr "é¢ç (Hz)\tæ°´å¹³ (dB)"
+msgstr "é¢ç (Hz)\t声强级 (dB)"
-#: ../src/FreqWindow.cpp:1023
+#: FreqWindow.cpp:1098
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
-msgstr "å»¶è¿ (ç§)\té¢ç (Hz)\tæ°´å¹³"
+msgstr "å»¶è¿ (sec)\té¢ç (Hz)\t声强级"
+
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr "GStreamer %s: %s"
+
+#: GStreamerLoader.cpp:212
+msgid ""
+"GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+"GStreamerä¹åå¨å好é项ä¸é
ç½®æ£ç¡®ï¼å¹¶ä¸æåå è½½è¿ï¼\n"
+"ä½è¿æ¬¡ï¼Audacityå¯å¨æ¶å è½½å®å¤±è´¥ã\n"
+"ä½ å¯ä»¥å°'å好é项'>'åº'ä¸éæ°é
ç½®ä¸ä¸ã"
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr "GStreamerå¯å¨å¤±è´¥"
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
-msgstr ""
+msgstr "åå° [[welcome|欢è¿å±å¹]]"
-#: HelpText.cpp:60
+#: HelpText.cpp:92
msgid "Welcome!"
-msgstr ""
+msgstr "欢è¿ï¼"
-#: HelpText.cpp:65
+#: HelpText.cpp:97
msgid "Playing Audio"
-msgstr ""
+msgstr "ææ¾é³é¢"
-#: HelpText.cpp:69
+#: HelpText.cpp:101
msgid "Recording Audio"
-msgstr ""
+msgstr "å½å¶é³é¢"
#: HelpText.cpp:105
msgid "Recording - Choosing the Input Device"
-msgstr ""
+msgstr "å½å¶ ï¼ éæ©è¾å
¥è®¾å¤"
#: HelpText.cpp:109
msgid "Recording - Choosing the Input Source"
-msgstr ""
+msgstr "å½å¶ ï¼ éæ©è¾å
¥æº"
#: HelpText.cpp:113
msgid "Recording - Setting the Input Level"
-msgstr ""
+msgstr "å½å¶ ï¼ è®¾ç½®è¾å
¥å£°å¼ºçº§"
#: HelpText.cpp:117
msgid "Editing and greyed out Menus"
-msgstr ""
+msgstr "ç¼è¾ååç°èå"
#: HelpText.cpp:121
msgid "Exporting an Audio File"
-msgstr ""
+msgstr "导å
¥ä¸ä¸ªé³é¢æä»¶"
#: HelpText.cpp:125
msgid "Saving an Audacity Project"
-msgstr ""
+msgstr "ä¿åAudacityå·¥ç¨"
#: HelpText.cpp:129
msgid "Unsupported Formats"
-msgstr ""
+msgstr "䏿¯æçæ ¼å¼"
-#: HelpText.cpp:85
+#: HelpText.cpp:133
msgid "Burn to CD"
-msgstr ""
+msgstr "ç§å½å°CD"
-#: HelpText.cpp:89
+#: HelpText.cpp:137
msgid "No Local Help"
-msgstr ""
+msgstr "æ²¡ææ¬å°å¸®å©"
#: HelpText.cpp:148
msgid "</p><center><h3>Getting Started</h3></center><br>"
-msgstr ""
+msgstr "</p><center><h3>å¼å§</h3></center><br>"
#: HelpText.cpp:150
msgid "Welcome to Audacity "
-msgstr ""
+msgstr "欢è¿ä½¿ç¨Audacity"
#: HelpText.cpp:151
msgid "Learn how to: <ul><li>[[play|play]] an existing audio file <li>[[record|record]] your voice, LP or tape <li>[[edit|edit]] sounds <li>[[save|save or open an Audacity project]] <li>[[export|export]] to an MP3 or other audio file, or [[burncd|burn to a CD]] </ul></p><p>"
-msgstr ""
+msgstr "å¦ä¼å¦ä½ï¼ <ul><li>[[play|ææ¾]] å·²ç»åå¨çé³é¢æä»¶ <li>[[record|å½å¶]] ä½ ç声é³ï¼ LongPlayå±ç æ ç£å¸¦ <li>[[edit|ç¼è¾]] å£°é³ <li>[[save|ä¿åææå¼Audacityå·¥ç¨]] <li>[[export|导åº]]å°mp3æå
¶ä»é³é¢æä»¶ï¼æ [[burncd|ç§å½å°CD]] </ul></p><p>"
#: HelpText.cpp:159
msgid "This screen can be viewed at any time by clicking the <i>Help</i> menu, then <i>Show Welcome Message</i>. For a detailed guide to all the Audacity menus and controls, click <i>Help</i> menu then <i>Index</i>, or download our <a href=\"http://audacity.sourceforge.net/help/documentation/manual_1.4.pdf\">full Manual</a> in PDF format.</p>"
-msgstr ""
+msgstr "该å±å¹å¯ä»¥å¨ä»»ä½æ¶åéè¿ç¹å» <i>帮å©</i> èå-><i>æ¾ç¤ºæ¬¢è¿ä¿¡æ¯</i>æå¼ã è¦è·å¾å
³äºAudacityç®å½åæ§ä»¶çè¯¦ç»æå¯¼ï¼ç¹å» <i>帮å©</i> èåï¼> <i>ç´¢å¼</i>ï¼æè
ä¸è½½æä»¬çPDFæ ¼å¼ç<a href=\"httpï¼//audacity.sourceforge.net/help/documentation/manual_1.4.pdf\">å®å
¨æå</a>ã</p>"
#: HelpText.cpp:172
msgid "<p><b>Opening audio files:</b> Either drag the files into the current project window, or click <i>File > Import > Audio</i>. Files can be opened into a new project window with <i>File > Open</i>. The main formats Audacity plays are <b>AIFF, AU, FLAC, M4A</b> (only on a Mac), <b>MP2/MP3, OGG Vorbis</b> and <b>WAV</b>. Click [[wma-proprietary|here]] if your file is in some other format. <b>To import a CD:</b> extract it to WAV or AIFF using iTunes, Windows Media Player 11 or similar. See our online guide: [[wiki:How_to_import_CDs|importing CDs]].</p><p> <p><b>Playing audio:</b> Press the green Play button to start playback. Press the blue Pause button once to pause playback, and again to resume. To stop, press the yellow Stop button. Spacebar can be used to either play or stop. After stopping, playback resumes from its last starting point. To change the starting point, click in the track at your desired starting point. The <b>|<<</b> and <b>>>|</b> buttons can be used to skip to the start or end of the track respectively. </p><br><br>"
-msgstr ""
+msgstr "<p><b>æå¼é³é¢æä»¶ï¼</b> å¯ä»¥ææä»¶æå°å½ç¶çå·¥ç¨çªå£ï¼æè
ç¹å»<i>æä»¶-> 导å
¥-> é³é¢</i>ã å¯ä»¥ç¹å» <i>æä»¶ -> æå¼</i>卿°å·¥ç¨çªå£ä¸æå¼æä»¶ã Audacityè½ææ¾çä¸»è¦æ ¼å¼æ <b>AIFFï¼ AUï¼ FLACï¼ M4A</b> ï¼ä»
å¨ Mac ä¸ï¼ï¼ <b>MP2/MP3ï¼ OGG Vorbis</b> å <b>WAV</b>ãå¦æä½ çæä»¶æ¯å
¶å®æ ¼å¼çè¯ï¼è¯·ç¹å» [[wma-proprietary|è¿é]]ã <b>导å
¥CDï¼</b> ç¨ iTunes ãWindows Media Player 11 æç±»ä¼¼çç¨åºè§£æ WAV æ AIFF ã 请æ¥çæä»¬çå¨çº¿æåï¼ [[wikiï¼How_to_import_CDs|导å
¥CD]]ã </p><p> <p><b>ææ¾é³é¢ï¼</b> æç»¿è²ç'ææ¾'æé®å¼å§åæ¾ã æèè²ç'æå'æé®æååæ¾ï¼åæä¸æ¬¡æ¢å¤åæ¾ã æé»è²ç'忢'æé®æ¥åæ¢åæ¾ã ç©ºæ ¼é®å¯ä»¥ç¨ä½ææ¾å忢ã 忢åï¼æ¢å¤ä¼ä»ä¸ä¸æ¬¡å¼å§ç¹å¤å¼å§ å¨ä½ 叿çé³è½¨çå¼å§ç¹å¤ç¹å»ï¼è½æ¹åå¼å§ç¹ã <b>|<<</b> å <b>>>|</b> ç¸åºå°ç¨æ¥è·³å°é³è½¨çå¼å§æç»æç¹ã </p><br><br>"
#: HelpText.cpp:194
msgid "<p><b>To record:</b> Set the recording device and input source, adjust the input level, then press the red Record button.</b></p><p> 1) [[inputdevice|Set Recording Device]] either in the <i>Audio I/O tab of Preferences</i> or in <i>Device Toolbar</i>. Audio I/O Preferences lets you choose stereo recording if required.<br> 2) [[inputsource|Set input source]] for that device (for example, microphone or line-in) in the dropdown selector of the <i>Mixer Toolbar</i>, or (on some systems) at Recording Device in the <i>Audio I/O tab of Preferences</i> or in <i>Device Toolbar</i>.<br> 3) [[inputlevel|Adjust input level]] using the right-hand slider on the <i>Mixer Toolbar</i>. Correct adjustment of level before recording is essential to avoid noise or distortion. </p><p> More help at: \"Recording\" <a href=\"http://audacity.sourceforge.net/help/faq\">FAQs</a>, our Tutorial <a href=\"http://www.audacityteam.org/manual/index.php?title=Tutorial_-_Your_First_Recording\"> Your First Recording</a> in the <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">Manual</a>, and our Wiki [[wiki:Recording_Tips|Recording Tips]] and [[wiki:Troubleshooting_Recordings|Troubleshooting Recordings]] pages. </p><br><br>"
-msgstr ""
+msgstr "<p><b>å½é³ï¼</b> 设置å½å¶è®¾å¤åè¾å
¥æºï¼è°æ´è¾åºå£°å¼ºçº§ï¼ç¶åæçº¢è²çå½å¶æé®ã</b></p><p> 1) å³å¯ä»¥å¨<i>âå好é项âçâé³é¢I/Oâæ </i>ä¸[[inputdevice|设置å½å¶è®¾å¤]]ï¼ä¹å¯ä»¥å¨<i>â设å¤âå·¥å
·æ </i>ã é³é¢I/Oå好é项å¯ä»¥éæ©ç«ä½å£°ã<br> 2) 为设å¤ï¼å¦ Microphone æ line-in ï¼ [[inputsource|设置è¾å
¥æº]]ã<br>å¯å¨ <i>æ··é³å¨å·¥å
·æ </i> ç䏿æ¡ï¼ æï¼å¨æäºç³»ç»ä¸ï¼å¨ <i>å好é项âçâé³é¢I/Oâæ </i> ä¸çâå½å¶è®¾å¤âæ <i>设å¤å·¥å
·æ ä¸éæ©</i> ã<br> 3) 使ç¨<i>æ··é³å¨å·¥å
·æ </i>[[inputlevel|è°æ´å£°å¼ºçº§]]ã å¨å½å¶ååæ£ç¡®çè°æ´ï¼å¯¹äºé¿å
åªé³åå¤±çæ¯å¾å¿
è¦çã</p><p> æ´å¤ç帮å©ï¼ \"å½å¶\" <a href=\"httpï¼//audacity.sourceforge.net/help/faq\">常è§é®é¢</a>ï¼æä»¬çæç¨<a href=\"httpï¼//www.audacityteam.org/manual/index.php?title=Tutorial_-_Your_First_Recording\"> ä½ çç¬¬ä¸æ¬¡å½å¶ </a> å¨ <a href=\"httpï¼//www.audacityteam.org/manual/index.php?title=Main_Page\">æå</a>åæä»¬ç Wiki [[wikiï¼Recording_Tips|å½å¶æç¤º]] å [[wikiï¼Troubleshooting_Recordings|å½å¶é®é¢è§£ç]] 页é¢ä¸ </p><br><br>"
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
-msgstr ""
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgstr "<p>è¾å
¥è®¾å¤æ¯ä½ å®é
çç©ç声é³è®¾å¤ãå¯ä»¥å¨ <i>âå好é项âçâé³é¢I/Oâæ </i>ç\"å½å¶è®¾å¤\"ä¸éæ©ã å¨Linux å Windowsä¸ï¼'å好é项' å¨<i>ç¼è¾</i> èåçåºé¨ã å¨ Mac ä¸ï¼ å®å¨ <i>Audacity</i> èåä¸ã ä½ å¯ä¹æ¹ä¾¿å°éæ© <i>'设å¤'å·¥å
·æ </i> ç'å½å¶è®¾å¤'ã设å¤å·¥å
·æ å¯å¨ <i>âè§å¾â -> âå·¥å
·æ â...</i> 䏿å¼ã </p><p> Audacityé»è®¤ä½¿ç¨ç³»ç»å½å使ç¨ç设å¤ï¼ ï¼é常æ¯ä½ çéæå£°é³è®¾å¤) æä»¥ï¼é常ä¸éè¦æ¹åè¾å
¥è®¾å¤ã å¨Windowsä¸ï¼å½åç³»ç»ä½¿ç¨ç设å¤å¯é为 \"Microsoft Sound Mapper\"ã å¦æä½ ä»å¤é¨çUSB æ ç«çº¿ è¾å
¥ä½ä¸º USB turntableï¼ å¯å¨è¿æ¥ä¹åæ¾ç¤ºå°æ ¹æ®å½å¶è®¾å¤çååéæ©ã </p><p> åå° [[record|å½å¶é³é¢]] <br></p>"
#: HelpText.cpp:244
msgid "<p>Select the input source (such as microphone or line-in) for your [[inputdevice|recording device]]:<br> - <b>On Windows (except Vista)</b> and <b>Linux</b>, in the dropdown selector on the right of the <i>Mixer Toolbar</i>.<br> - <b>On Windows Vista</b> and <b>Mac</b>, at Recording Device on the <i>Audio I/O tab of Preferences</i>, or in <i>Device Toolbar</i>. The source will be shown as part of the parent device (for example, <i>High Def Audio Card: Microphone</i>). If necessary, Mac users can choose the input source at Apple Audio MIDI Setup. <br><i><b>Note:</b> many USB or Firewire recording devices don't have a choice of inputs, so this step is not necessary. If in doubt, see the documentation for your device. </i></p><p> <b>Tip:</b> To <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record audio playing on the computer</a>, Windows and Linux users can choose the \"Stereo Mix\", \"Wave Out\", \"Sum\" or comparable input source. </p><p> Back to [[record|Recording Audio]] <br></p>"
-msgstr ""
+msgstr "<p1>ä¸ºä½ ç[[inputdevice|å½å¶è®¾å¤]]éæ©è¾å
¥æºï¼å¦ Microphone æ line-in ï¼ï¼<br> - <b> å¨<b>Linux</b> åWindowsä¸ (é¤äºVista)</b>ï¼ å¨ <i>æ··é³å¨å·¥å
·æ </i> çå³è¾¹ç䏿æ¡ä¸ã <br> - <b>å¨ Windows Vista</b> å <b>Mac</b>ä¸ï¼ å¨<i>âå好é项âçâé³é¢I/Oâæ </i>ç 'å½å¶è®¾å¤' ä¸ï¼æå¨ <i>设å¤å·¥å
·æ </i> ä¸ãæºä¼æ¾ç¤ºä¸ºä¸å±è®¾å¤(å¦ <i>High Def Audio Cardï¼ Microphone</i>)çä¸é¨åã éè¦çè¯ï¼ Mac å¯ä»¥å¨ Apple Audio MIDI Setupä¸éæ©è¾å
¥æºã<br><i><b>注æï¼</b> å¾å¤ USB æ ç«çº¿ å½å¶è®¾å¤æ²¡æè¾å
¥éé¡¹ï¼ æä»¥è¿ä¸æ¥æ²¡æå¿
è¦ã 妿æçé®ï¼è¯·æ¥çä½ çè®¾å¤æåã </i></p><p> <b>æç¤ºï¼</b> <a href=\"httpï¼//audacity.sourceforge.net/help/faq?s=recording&i=streaming\">å½å¶çµè䏿æ¾çé³é¢</a>ï¼Linux å Windows ç¨æ·å¯ä»¥éæ© \"Stereo Mix\"ã \"Wave Out\"ã \"Sum\" æè¿ä¼¼çè®¾å¤ </p><p> åå° [[record|å½å¶é³é¢]] <br></p>"
#: HelpText.cpp:267
msgid "<p>The input level must be set correctly. If the level is too low, there will be background noise. If the level is too high, there will be distortion in the loud parts. </p><p>To set the level, either see this [[wiki:Recording_levels|illustrated online guide]] or follow these steps: <ol><li>Turn on <b>monitoring</b>. Double-click the right-hand of the two <i>VU Meters</i> (or right-click over it) and click \"Start Monitoring\". If the meters are not visible, click <i>View > Toolbars</i> and check \"Meter Toolbar\". </li><li>Adjust the input slider on the <i>Mixer Toolbar</i> (by the microphone symbol), so that the red bars in the meter come close to <b>but do not touch</b> the right edge of the scale. If you can't hear the monitored audio, go to the <i>Audio I/O tab of Preferences</i> and check \"Software Playthrough\". </li></ol></p><p> Back to [[record|Recording Audio]] <br></p>"
-msgstr ""
+msgstr "<p>è¾å
¥å£°å¼ºçº§å¿
é¡»æ£ç¡®è®¾ç½®ãå¦æå£°å¼ºçº§å¤ªä½ï¼åä¼æèæ¯åªé³ï¼å¤ªé«ï¼åä¼å¨åçé¨å失çã </p><p>è¦è®¾ç½®å£°å¼ºçº§ï¼å¯ä»¥çï¼[[wikiï¼Recording_levels|å¾è§£å¨çº¿æå]]ææä»¥ä¸æ¥éª¤ï¼<ol><li>æå¼ <b>çè§å¨</b>ãåå»<i>VU æç¤ºå¨</i>çå³ä¾§ï¼æå¨å
¶ä¸å³å»ï¼ï¼ç¹å» \"å¼å§çè§\"ã 妿çä¸è§æç¤ºå¨ï¼ç¹å»<i>è§å¾ -> å·¥å
·æ </i>éä¸\"æç¤ºå¨å·¥å
·æ \"ã </li><li> è°æ´<i>æ··é³å¨å·¥å
·æ </i>ä¸çè¾å
¥æ»å (麦å
é£ç¬¦å·)ï¼è®©æç¤ºå¨ççº¢æ¡æ¥è¿ <b>ä½ä¸</b>ä½ä¸è¾¾å°æ å°ºçå³è¾¹ç¼ãå¦æä½ å¬ä¸å°è¢«çè§çé³é¢ï¼ å°<i>âå好é项âçâé³é¢I/Oâæ </i>éä¸\"软件éæ\". </li></ol></p><p> åå°[[record|å½å¶é³é¢]] <br></p>"
#: HelpText.cpp:292
msgid "<p>The main commands for editing audio are under the <i>Edit</i> menu (such as cut, copy and paste) and the <i>Effect</i> menu (you can do things like boost the bass, change pitch or tempo, or remove noise). </p><p> Audacity applies edits to selected areas of the audio track. To select a particular area, click in the track and drag the shaded area with the mouse. If no audio is selected, Audacity selects all the audio in the project window.</p><p> When playing or recording, the Edit and Effect menus will appear greyed out, because a moving track can't be edited. Commands can sometimes be unavailable for other reasons too. For example, you can't run effects until you have audio on the screen, and you can't paste audio until you've cut or copied it to Audacity's clipboard. </p><br><br>"
-msgstr ""
+msgstr "<p>ç¼è¾é³é¢ç主è¦å½ä»¤å¨ <i>ç¼è¾</i> èå ï¼å¦åªåï¼å¤å¶åç²è´´ï¼å <i>ææ</i> èåä¸ ï¼ä½ å¯ä»¥å 强ä½é³ï¼æ¹åé³é«åæåï¼æè
æ¸
é¤åªé³çï¼ã </p><p> Audacity æç¼è¾åºç¨å°é³è½¨çéä¸é¨åãè¦éæ©ä¸ä¸ªé¨åï¼ç¹å»åºè¯¥ç¶åæå¨é´å½±é¨åãå¦ææ²¡æé³é¢ 被éä¸ï¼Audacityä¼éæ©å·¥ç¨çªå£çææé³é¢ã</p><p> ææ¾åå½å¶æ¶ï¼ç¼è¾åææç®å½ ä¼åç°ï¼å 为ä¸ä¸ªç§»å¨ä¸çé³è½¨ä¸è½è¢«ç¼è¾ãå½ä»¤ææ¶ä¹ä¼å å
¶ä»åå èä¸è½ä½¿ç¨ã å¦ä½ çå±å¹ä¸æ²¡æé³é¢æ¶å°±ä¸è½ä½¿ç¨ææï¼æ²¡æåªåæå¤å¶å°Audacityçåªè´´æ¿æ¶ ä¸è½ç²è´´ã</p><br><br>"
#: HelpText.cpp:311
msgid "<p>To return later to your unfinished work in Audacity with all tracks and edits as you left them, save an Audacity project. To play your current work in other media programs or send it to others, [[export|export]] an audio file such as WAV or MP3. </p><p> <i>File > Save Project</i> saves an <b>.aup</b> project file and a <b>_data</b> folder containing the actual audio. To re-open a saved project, click <i>File > Open</i> and open the .aup file. If you save and exit more than once, an .aup.bak backup file is created, but the .aup file should always be opened if present. When your final exported file is exactly as you want, delete the project files and _data folder to save disc space. </p><p><i>File > Save Project As...</i> is for saving an empty project. It also lets you save an existing Project to a <b> new</b> name. This is the only safe way to rename a project. The .aup file and _data folder should not be moved or renamed manually. </p><p>"
-msgstr ""
+msgstr "<p>å¦ä½æ³åå°ä¹åææè½¨éåç¼è¾é½ä¼ä¸æ¬¡ç¦»å¼æ¶ä¸æ ·çæªå®æçå·¥ä½ï¼ä½ å¾ä¿åã è¦å¨å
¶å®ç¨åºä¸ææ¾æåéç»å
¶ä»äººï¼ä½ éè¦[[export|导åº]]é³é¢å°ï¼æ¯å¦ï¼WAVæMP3æ ¼å¼ã </p><p> <i>æä»¶ -> ä¿åå·¥ç¨</i>ä¿åä¸ä¸ª<b>.aup</b>å·¥ç¨æä»¶åä¸ä¸ªä¿åé³é¢ç <b>_data</b>ç®å½ãè¦æå¼ä¸ä¸ªä¿åè¿çå·¥ç¨ï¼ç¹å» <i>æä»¶ -> æå¼</i>ç¶åæå¼.aup æä»¶ãå¦æä½ ä¿ååéåºäºä¸æ¢ä¸æ¬¡ï¼ä¸ä¸ª.aup.bakå¤ä»½æä»¶ä¼è¢«å建ãä½ .aup æä»¶å¦ææçè¯é½åºè¯¥è½è¢«æå¼ãå½ä½ æå导åºçæä»¶ç¬¦åä½ ç叿äºï¼ä½ å¯ä»¥å é¤å·¥ç¨æä»¶å _data ç®å½ä»¥èçç£çç©ºé´ </p><p><i>æä»¶ -> ä¿åå·¥ç¨ä¸º...</i> ç¨ä½ä¿å空工ç¨ï¼ææå½ååå¨çå·¥ç¨ä¿åå°ä¸ä¸ª <b>æ°</b>ååã åªæ¯éå½åå·¥ç¨çå¯ä¸å®å
¨çæ¹æ³ã.aup æä»¶å _data ç®å½ä¸åºè¯¥æå¨ç§»å¨æéå½åã</p><p>"
#: HelpText.cpp:335
msgid "To hear your work in other media programs, export it to an audio file such as WAV or MP3 (some formats are [[wma-proprietary|unsupported]]). [[save|Saving an Audacity project]] creates a project file (and linked _data folder) containing all your edited tracks, so you can return to your work later. However, other programs can't read Audacity projects. </p><p> To export, click <i>File > Export</i> then choose the file format you want to export to in the \"Save as type\" dropdown. To [[burncd|burn a CD]] for standalone CD players, choose WAV or AIFF. To export as MP3, the [[wiki:Lame_Installation|Lame Encoder]] must be installed. </p><p> <i>File > Export Selection</i> exports only a selected area of audio. <i>Use File > Export Multiple</i> to export multiple files at the same time, either one for each audio track, or one for each labeled area in a single track. <i>Tracks > Add Label At Selection</i> lets you [[wiki:Splitting_recordings_into_separate_tracks|split the tracks]] from an album for multiple export as separate files. </p><br><br>"
-msgstr ""
+msgstr "è¦å¨å
¶ä»ç¨åºä¸å¬å°ä½ ç工使åï¼éè¦æå®å¯¼åºå°å¦ WAV æ MP3 (æäºæ ¼å¼æ¯[[wma-proprietary|䏿¯æç]])ã [[save|ä¿åAudacity å·¥ç¨]]å建çä¸ä¸ªå·¥ç¨æä»¶ï¼åç¸å
³ç_data ç®å½ï¼ ä¿åäºææä½ ç¼è¾è¿çé³è½¨ï¼ ä»¥ä¾¿ä½ å¯ä»¥åæ¥ç»§ç»å·¥ä½ãç¶èå
¶ä»ç¨åºä¸è½è¯»æAudacityå·¥ç¨ã </p><p>è¦å¯¼åºåºï¼ç¹å»<i>æä»¶ -> 导åº</i>ç¶åå¨\"ä¿å为类å\"䏿æ¡ä¸éæ©ä½ è¦å¯¼åºå°çæä»¶æ ¼å¼ãè¦[[burncd|å½å¶CD]]ï¼éæ© WAV æ AIFFãè¦å¯¼åºä¸º MP3ï¼ å¿
é¡»å®è£
[[wikiï¼Lame_Installation|Lameç¼ç å¨]]ã </p><p> <i>æä»¶ -> 导åºéä¸é¨å</i>åªå¯¼åº éä¸çé¨å<i>ä½¿ç¨æä»¶ -> 导åºå¤ä¸ªæä»¶</i>䏿¬¡å¯¼åºå¤ä¸ªæä»¶ï¼å¯ä»¥æ¯æ¯ä¸ªé³è½¨ä¸ä¸ªï¼ ä¹å¯ä»¥æ¯åé³è½¨ä¸æ¯ä¸ªæ è®°é¨åä¸ä¸ªã<i>轨é -> ç»é³é¢é段å 䏿 ç¾</i> è®©ä½ è½ä» ä¸ä¸ªä¸è¾ä¸[[wikiï¼Splitting_recordings_into_separate_tracks|åå²è½¨é]]å°å¤ä¸ªå¯¼åºæä»¶ã</p><br><br>"
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
msgstr ""
+"<p>Audacity <b>ä¸è½</b> [[play|ææ¾]]æ[[export|导åº]]æä»¶å°<b>WMAï¼ RealAudioï¼ Shorten (SHN)</b> æå
¶ä»ææææçæ ¼å¼ï¼ å 为æè®¸å¯åä¸å©éå¶ãå¨Mac䏿ªè¢«ä¿æ¤ç<b>AAC</b> æ ¼å¼å¦ <b>M4A</b>\n"
+"å¯è¢«å¯¼å
¥ãå
¶ä»ç弿¾æ ¼å¼è¿ä¸è¢«æ¯æï¼å
æ¬<b>Ogg Speex</b>å<b>Musepack</b>ã被任ä½ä¸ç§æ°åçæç®¡ç(DRM)ä¿æ¤çæä»¶ï¼å
æ¬å¤§å¤æ°å¨çº¿è´ä¹°çï¼å¦ä»iTunesæNapsterçï¼ <b>ä¸è½</b>被导å
¥ã</p><p>å¦æä½ ä¸è½å¯¼å
¥ä½ çæä»¶å°Audacityï¼å¦æä¸æ¯ DRMä¿æ¤çï¼ å¯ä½¿ç¨iTunes æ<a href=\"httpï¼//www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>æå®è½¬æ¢å°WAVæAIFFã妿æ¯ä¿æ¤çï¼ç¨è®¸å¯ææ¾å®çææ¾å¨ç§å
¥CDä¸ï¼ç¶åéè¿iTunesæï¼Windowsä¸ï¼ <a href=\"httpï¼//cdexos.sourceforge.net/?q=download\">CDex</a>ï¼æWindows Media Player 11ï¼ æCDé³è½¨è§£å° WAVæAIFFæ ¼å¼ãä½ ä¹å¯ä»¥<ahref=\"httpï¼//audacity.sourceforge.net/help/faq?s=recording&i=streaming\">å½å¶</a>CDå°ä½ ççµè <i>è¦å¯¼åºå°ä¸æ¯æçæ ¼å¼ï¼å
导åºå°WAVæAIFF ç¶åç¨ iTunesæ<a href=\"httpï¼//www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>转æ¢å°éè¦çæ ¼å¼ã </i></p><p>"
#: HelpText.cpp:383
msgid "<p>To burn your work to an audio CD for standalone CD players, first [[export|export]] it as WAV or AIFF. The exported file should be stereo, 44100 Hz (set in the \"Project Rate\" button bottom left) and 16 bit (set in the \"Options\" button in the file export dialog). These are Audacity's default settings, so normally you will not need to change these before exporting. <p>Burn the exported file to an \"audio CD\" - not a \"data CD\" or \"MP3 CD\" - with a CD burning program like iTunes or Windows Media Player. For more help, see [[wiki:How_to_burn_CDs|How to burn CDs]] online. </p><p>"
-msgstr ""
+msgstr "<p>è¦å¯¼åºé³é¢å°ä¸ä¸ªç¬ç«CDææ¾æºè½ææ¾çCDï¼å
[[export|导åº]]æWAVæAIFFã 导åºçæä»¶åºè¯¥æ¯ç«ä½å£°44100 Hzï¼å·¦ä¸ä¾§ç\"å·¥ç¨éæ ·ç\"ä¸è®¾ç½®ï¼å16ä½ï¼æä»¶ 导åºå¯¹è¯æ¡ç\"é项\"ä¸è®¾ç½®ï¼ã è¿æ¯Audacityçé»è®¤è®¾ç½®ï¼æä»¥éå¸¸ä½ ä¸éè¦å¨å¯¼åºå æ¹åè¿äºè®¾ç½®ã <p>ç¨CDç§å
¥ç¨åºiTunes or Windows Media Playerç§å
¥å¯¼åºç æä»¶å° \"é³é¢CD\"è䏿¯\"æ°æ® CD\" æè
\"MP3 CD\" ãæ´å¤å¸®å©ï¼è¯·çå¨çº¿çï¼ [[wikiï¼How_to_burn_CDs|å¦ä½ç§å½CD]]ã</p><p>"
#: HelpText.cpp:403
msgid "<p>Help for Audacity Beta is currently unfinished. For now, a draft manual is available <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">online</a>. Alternatively, click <a href=\"http://www.audacityteam.org/manual/index.php?title=Temporary_HTML_Manual_Export\">here</a> to download a single-page version of the manual which can be viewed in this window."
-msgstr ""
+msgstr "<p>Audacity Betaç帮å©å½åæ¯æªå®æçãç®å为æ¢ï¼æåçè稿<a href=\"httpï¼//www.audacityteam.org/manual/index.php?title=Main_Page\">å¨çº¿</a>ãä½ä¸ºå¦ä¸ä¸ªéæ©ï¼<a href=\"httpï¼//www.audacityteam.org/manual/index.php?title=Temporary_HTML_Manual_Export\">è¿é</a> è½ä¸è½½ä¸ä¸ªå¨è¿ä¸ªçªå£å¯ä»¥ççå页çæåã"
-#: ../src/HistoryWindow.cpp:44
+#: HistoryWindow.cpp:53
msgid "Undo History"
-msgstr "æ¤éæä½çåå²è®°å½"
+msgstr "æ¤éåå²"
#: HistoryWindow.cpp:72
msgid "Manage History"
-msgstr ""
+msgstr "管çåå²"
-#: ../src/HistoryWindow.cpp:58
+#: HistoryWindow.cpp:78
msgid "Action"
msgstr "å¨ä½"
#: HistoryWindow.cpp:86
msgid "&Undo Levels Available"
-msgstr ""
+msgstr "坿¤é级(&U)"
#: HistoryWindow.cpp:92
msgid "Levels To Discard"
-msgstr ""
+msgstr "å¯ä¸¢å¼çº§"
-#: HistoryWindow.cpp:102
+#: HistoryWindow.cpp:103
msgid "&Discard"
-msgstr ""
+msgstr "丢å¼(&D)"
-#: HistoryWindow.cpp:111 LabelDialog.cpp:135 LabelDialog.cpp:137
-#: effects/Amplify.cpp:214 effects/AutoDuck.cpp:529 effects/AutoDuck.cpp:531
-#: effects/ChangeLength.cpp:187 effects/ChangePitch.cpp:399
-#: effects/ChangeSpeed.cpp:397 effects/ChangeTempo.cpp:301
-#: effects/Compressor.cpp:519 effects/Effect.cpp:389 effects/Effect.cpp:391
-#: effects/Equalization.cpp:1169 effects/Leveller.cpp:269
-#: effects/Normalize.cpp:356 effects/Phaser.cpp:605 effects/Repeat.cpp:274
-#: effects/SpikeCleaner.cpp:191 effects/VST/VSTEffect.cpp:98
-#: effects/Wahwah.cpp:592 effects/ladspa/LadspaEffect.cpp:592
-#: effects/nyquist/Nyquist.cpp:829 export/Export.cpp:791
-#: prefs/FileFormatPrefs.cpp:408 prefs/PrefsDialog.cpp:164
+#: HistoryWindow.cpp:112 effects/ChangeLength.cpp:186
+#: effects/SpikeCleaner.cpp:191 export/ExportCL.cpp:397
msgid "&OK"
-msgstr ""
+msgstr "ç¡®å®(&O)"
-#: ../src/prefs/DirectoriesPrefs.cpp:114
+#: Internat.cpp:191
msgid "Unable to determine"
msgstr "ä¸è½å³å®"
-#: ../src/import/ImportRaw.cpp:382
+#: Internat.cpp:195 import/ImportRaw.cpp:385
msgid "bytes"
msgstr "åè"
-#: Internat.cpp:182
+#: Internat.cpp:197
msgid "KB"
-msgstr ""
+msgstr "KB"
-#: Internat.cpp:185
+#: Internat.cpp:200
msgid "MB"
-msgstr ""
+msgstr "MB"
-#: Internat.cpp:188
+#: Internat.cpp:203
msgid "GB"
-msgstr ""
+msgstr "GB"
+
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr "ä¸è½è½¬æ¢ç¥éçæä»¶åï¼å 为使ç¨Unicodeå符ã"
-#: LabelDialog.cpp:50
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr "æå®æ°æä»¶åï¼"
+
+#: LabelDialog.cpp:54
msgid "Track"
-msgstr ""
+msgstr "é³è½¨"
-#: ../src/Menus.cpp:3495
-#: ../src/SelectionBar.cpp:203
-#: ../src/SelectionBar.cpp:207
-#: ../src/SelectionBar.cpp:211
+#: LabelDialog.cpp:55 Menus.cpp:4727 Menus.cpp:4762
msgid "Label"
msgstr "æ ç¾"
-#: LabelDialog.cpp:54
+#: LabelDialog.cpp:56 TimerRecordDialog.cpp:329
msgid "Start Time"
-msgstr ""
+msgstr "å¼å§æ¶é´"
-#: LabelDialog.cpp:53
+#: LabelDialog.cpp:57 TimerRecordDialog.cpp:348
msgid "End Time"
-msgstr ""
+msgstr "ç»ææ¶é´"
-#: LabelDialog.cpp:98 Menus.cpp:709
+#: LabelDialog.cpp:100 Menus.cpp:715
msgid "&Edit Labels"
-msgstr ""
+msgstr "ç¼è¾æ ç¾(&E)"
-#: LabelDialog.cpp:113
+#: LabelDialog.cpp:115
msgid "Press F2 or double click to edit cell contents."
-msgstr ""
+msgstr "æ F2 æå廿¥ç¼è¾åå
æ ¼å
容ã"
-#: LabelDialog.cpp:124
+#: LabelDialog.cpp:126
msgid "Insert &After"
-msgstr ""
+msgstr "åæå
¥(&A)"
-#: LabelDialog.cpp:125
+#: LabelDialog.cpp:127
msgid "Insert &Before"
-msgstr ""
+msgstr "åæå
¥(&B)"
-#: LabelDialog.cpp:127 Menus.cpp:234
+#: LabelDialog.cpp:129
msgid "&Import..."
-msgstr ""
+msgstr "导å
¥...(&I)"
-#: LabelDialog.cpp:163
+#: LabelDialog.cpp:157
msgid "New..."
-msgstr ""
+msgstr "æ°å»º..."
-#: LabelDialog.cpp:352
-msgid "You have left blank label names. These will be\n"
+#: LabelDialog.cpp:354
+msgid ""
+"You have left blank label names. These will be\n"
"skipped when repopulating the Label Tracks.\n"
"\n"
"Would you like to go back and provide names?"
msgstr ""
+"ä½ ææ ç¾åç空äºã\n"
+"该æ ç¾å¨ä¼è¢«å¿½ç¥ã\n"
+"\n"
+"ä½ æ³åå»ç»åºåååï¼"
-#: ../src/UploadDialog.cpp:565
-#: ../src/UploadDialog.cpp:632
+#: LabelDialog.cpp:355
msgid "Confirm"
msgstr "确认"
-#: ../src/Menus.cpp:3007
+#: LabelDialog.cpp:516 Menus.cpp:4151
msgid "Select a text file containing labels..."
-msgstr "éæ©å
嫿 ç¾çææ¬æä»¶..."
+msgstr "éæ©ä¸ä¸ªå
嫿 ç¾çææ¬æä»¶..."
-#: ../src/Menus.cpp:3011
+#: LabelDialog.cpp:520 Menus.cpp:4155
msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
msgstr "ææ¬æä»¶(*.txt)|*.txt|å
¨é¨æä»¶(*.*)|*.*"
-#: ../src/Menus.cpp:3023
-#: ../src/Project.cpp:1940
-#: ../src/Project.cpp:1948
-#: ../src/import/ImportMIDI.cpp:31
+#: LabelDialog.cpp:534 Menus.cpp:4167 Project.cpp:1960 Project.cpp:1968
msgid "Could not open file: "
-msgstr "æ æ³æå¼æä»¶:"
+msgstr "æ æ³æå¼æä»¶ï¼"
-#: LabelDialog.cpp:549
+#: LabelDialog.cpp:560
msgid "No labels to export."
-msgstr ""
+msgstr "没æå¯å¯¼åºçæ ç¾"
-#: ../src/Menus.cpp:1805
+#: LabelDialog.cpp:566 Menus.cpp:2530
msgid "Export Labels As:"
-msgstr "å°æ ç¾å¯¼åºä¸º:"
+msgstr "å°æ ç¾å¯¼åºä¸ºï¼"
-#: ../src/Menus.cpp:1803
+#: LabelDialog.cpp:568 Menus.cpp:2528
msgid "labels.txt"
msgstr "labels.txt"
-#: LabelDialog.cpp:690
-#, fuzzy
+#: LabelDialog.cpp:703
msgid "New Label Track"
-msgstr "æ°å»ºæ ç¾è½¨(&b)"
+msgstr "æ°å»ºæ ç¾è½¨"
-#: LabelDialog.cpp:691
+#: LabelDialog.cpp:704
msgid "Enter track name"
-msgstr ""
+msgstr "è¾å
¥æ ç¾è½¨å"
-#: LabelDialog.cpp:692 LabelDialog.h:50 LabelTrack.cpp:87 Menus.cpp:645
-#, fuzzy
+#: LabelDialog.cpp:705 LabelDialog.h:52 LabelTrack.cpp:89 Menus.cpp:634
msgid "&Label Track"
-msgstr "æ ç¾è½¨"
+msgstr "æ ç¾è½¨(&L)"
-#: ../src/LangChoice.cpp:47
+#: LangChoice.cpp:57
msgid "Audacity First Run"
msgstr "Audacityç¬¬ä¸æ¬¡è¿è¡"
-#: ../src/LangChoice.cpp:74
+#: LangChoice.cpp:89
msgid "Choose Language for Audacity to use:"
msgstr "éæ©Audacity使ç¨çè¯è¨ï¼"
-#: ../src/Legacy.cpp:338
+#: Legacy.cpp:356
#, c-format
-msgid "Converted a 1.0 project file to the new format.\n"
+msgid ""
+"Converted a 1.0 project file to the new format.\n"
"The old file has been saved as '%s'"
-msgstr "å°Audacity 1.0æ ¼å¼çå·¥ç¨æä»¶è½¬æ¢ææ°æ ¼å¼ã\n"
+msgstr ""
+"å·²å°Audacity 1.0æ ¼å¼çå·¥ç¨æä»¶è½¬æ¢ææ°æ ¼å¼ã\n"
"åæä»¶å°è¢«å为'%s'ã"
-#: ../src/Legacy.cpp:339
+#: Legacy.cpp:357
msgid "Opening Audacity Project"
msgstr "æå¼Audacityå·¥ç¨"
-#: ../src/Menus.cpp:148
+#: Menus.cpp:195
msgid "&File"
msgstr "æä»¶(&F)"
-#: ../src/Menus.cpp:150
-msgid "&New\tCtrl+N"
-msgstr "æ°å»º(&N)\tCtrl+N"
-
-#: ../src/Menus.cpp:152
-msgid "&Open...\tCtrl+O"
-msgstr "æå¼...(&O)\tCtrl+O"
+#: Menus.cpp:204
+msgid "&Close"
+msgstr "å
³é(&C)"
-#: ../src/Menus.cpp:159
-msgid "&Close\tCtrl+W"
-msgstr "å
³é(&C)\tCtrl+W"
+#: Menus.cpp:207
+msgid "&Save Project"
+msgstr "ä¿åå·¥ç¨(&S)"
-#: ../src/Menus.cpp:162
-msgid "&Save Project\tCtrl+S"
-msgstr "ä¿åå·¥ç¨(&S)\tCtrl+S"
-
-#: ../src/Menus.cpp:166
+#: Menus.cpp:211 Project.cpp:2943
msgid "Save Project &As..."
msgstr "å·¥ç¨å¦å为...(&A)"
-#: Menus.cpp:212
+#: Menus.cpp:213
msgid "Save Compressed Copy of Project..."
-msgstr ""
+msgstr "ä¿åå·¥ç¨çå缩æ·è´..."
-#: Menus.cpp:223
+#: Menus.cpp:217
msgid "Chec&k Dependencies..."
-msgstr ""
+msgstr "æ£æ¥ä¾èµ...(&K)"
-#: Menus.cpp:185
+#: Menus.cpp:223
msgid "Open Me&tadata Editor..."
-msgstr ""
+msgstr "æå¼å
ä¿¡æ¯ç¼è¾å¨...(&T)"
-#: import/ImportRaw.cpp:447
+#: Menus.cpp:230 import/ImportRaw.cpp:411
msgid "&Import"
-msgstr ""
+msgstr "导å
¥(&I)"
-#: Menus.cpp:236
-msgid "&Audio...\tCtrl+Shift+I"
-msgstr ""
+#: Menus.cpp:232
+msgid "&Audio..."
+msgstr "é³é¢...(&A)"
-#: Menus.cpp:237
+#: Menus.cpp:233
msgid "&Labels..."
-msgstr ""
+msgstr "æ ç¾...(&L)"
-#: Menus.cpp:238
+#: Menus.cpp:235
msgid "&MIDI..."
-msgstr ""
+msgstr "&MIDI..."
-#: Menus.cpp:239
+#: Menus.cpp:237
msgid "&Raw Data..."
-msgstr ""
+msgstr "è£¸æ°æ®...(&R)"
-#: Menus.cpp:208 Menus.cpp:237
+#: Menus.cpp:248 Menus.cpp:283
msgid "Expo&rt Selection..."
-msgstr ""
+msgstr "导åºéä¸é¨å...(&R)"
-#: ../src/Menus.cpp:189
+#: Menus.cpp:255
msgid "Export &Labels..."
-msgstr "å¯¼åºæ ç¾... (&L)"
+msgstr "å¯¼åºæ ç¾...(&L)"
-#: ../src/Menus.cpp:190
+#: Menus.cpp:256
msgid "Export &Multiple..."
-msgstr "导åºå¤ä¸ªæä»¶... (&M)"
+msgstr "导åºå¤ä¸ªæä»¶...(&M)"
-#: Menus.cpp:257
+#: Menus.cpp:258
msgid "Export MIDI..."
-msgstr ""
+msgstr "导åºMIDI..."
-#: Menus.cpp:290
-msgid "CleanSpeech C&hain..."
-msgstr ""
+#: Menus.cpp:304
+msgid "Appl&y Chain..."
+msgstr "åºç¨é¾...(&Y)"
-#: Menus.cpp:340 Menus.cpp:354
+#: Menus.cpp:292 Menus.cpp:306
msgid "Edit C&hains..."
-msgstr ""
+msgstr "ç¼è¾é¾...(&H)"
-#: Menus.cpp:292
+#: Menus.cpp:293
msgid "Export CleanSpeech &Presets..."
-msgstr ""
+msgstr "导åº'æ¸
æ°è¯é³'é¢ç½®...(&P)"
-#: Menus.cpp:293
+#: Menus.cpp:294
msgid "I&mport CleanSpeech Presets..."
-msgstr ""
+msgstr "导å
¥'æ¸
æ°è¯é³'é¢ç½®...(&M)"
-#: Menus.cpp:352
-msgid "Appl&y Chain..."
-msgstr ""
-
-#: ../src/Menus.cpp:228
+#: Menus.cpp:311
msgid "&Upload File..."
-msgstr "ä¸è½½æä»¶(&U)..."
+msgstr "ä¸ä¼ æä»¶...(&U)"
-#: Menus.cpp:363
-#, fuzzy
+#: Menus.cpp:317
msgid "Pa&ge Setup..."
-msgstr "页é¢è®¾ç½®..."
+msgstr "页é¢è®¾ç½®...(&G)"
-#: Menus.cpp:364
+#: Menus.cpp:318
msgid "&Print..."
-msgstr ""
+msgstr "æå°...(&P)"
-#: Menus.cpp:382 Menus.cpp:385
-msgid "E&xit\tCtrl+Q"
-msgstr ""
+#: Menus.cpp:331
+msgid "E&xit"
+msgstr "éåº(&X)"
-#: ../src/Menus.cpp:267
+#: Menus.cpp:339 toolbars/EditToolBar.cpp:76
msgid "&Edit"
msgstr "ç¼è¾(&E)"
-#: ../src/Menus.cpp:271
-msgid "&Undo\tCtrl+Z"
-msgstr "åæ¶(&U)\tCtrl+Z"
+#: Menus.cpp:343
+msgid "&Undo"
+msgstr "æ¤æ¶(&U)"
-#: ../src/Menus.cpp:279
+#: Menus.cpp:351 prefs/KeyConfigPrefs.cpp:384 toolbars/EditToolBar.cpp:146
msgid "&Redo"
-msgstr "æ¢å¤(&R)"
-
-#: ../src/Menus.cpp:292
-msgid "Cu&t\tCtrl+X"
-msgstr "åªå(&t)\tCtrl+X"
+msgstr "éå(&R)"
-#: Menus.cpp:420
-#, fuzzy
-msgid "Spl&it Cut\tCtrl+Alt+X"
-msgstr "åå²åªå\tCtrl+Alt+X"
+#: Menus.cpp:364
+msgid "Cu&t"
+msgstr "åªå(&t)"
-#: ../src/Menus.cpp:294
-msgid "&Copy\tCtrl+C"
-msgstr "æ·è´(&C)\tCtrl+C"
+#: Menus.cpp:368
+msgid "Spl&it Cut"
+msgstr "åå²åªå(&I)"
-#: ../src/Menus.cpp:295
-msgid "&Paste\tCtrl+V"
-msgstr "ç²è´´(&P)\tCtrl+V"
+#: Menus.cpp:369
+msgid "&Copy"
+msgstr "å¤å¶(&C)"
-#: Menus.cpp:426
-msgid "Tri&m\tCtrl+T"
-msgstr ""
+#: Menus.cpp:373
+msgid "&Paste"
+msgstr "ç²è´´(&P)"
-#: ../src/Menus.cpp:301
-msgid "&Delete\tCtrl+K"
-msgstr "å é¤(&D)\tCtrl+K"
+#: Menus.cpp:377
+msgid "Tri&m"
+msgstr "è£åª(&M)"
-#: Menus.cpp:429
-#, fuzzy
-msgid "Split D&elete\tCtrl+Alt+K"
-msgstr "åå²å é¤\tCtrl+Alt+K"
+#: Menus.cpp:379
+msgid "&Delete"
+msgstr "å é¤(&D)"
#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
-msgstr ""
+msgid "Split D&elete"
+msgstr "åå²å é¤(&E)"
-#: Menus.cpp:432
-msgid "Sp&lit\tCtrl+I"
-msgstr ""
+#: Menus.cpp:381
+msgid "Silence Audi&o"
+msgstr "éé³(&O)"
-#: Menus.cpp:342
-msgid "Split Ne&w\tCtrl+Alt+I"
-msgstr ""
+#: Menus.cpp:383
+msgid "Sp&lit"
+msgstr "åå²(&L)"
-#: ../src/Menus.cpp:310
-msgid "&Join\tCtrl+J"
-msgstr "èç»(&J)\tCtrl+J"
+#: Menus.cpp:388
+msgid "Split Ne&w"
+msgstr "å岿°å»º(&W)"
#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
-msgstr ""
+msgid "&Join"
+msgstr "è¿æ¥(&J)"
-#: Menus.cpp:445
-msgid "Duplic&ate\tCtrl+D"
-msgstr ""
+#: Menus.cpp:394
+msgid "Detac&h at Silences"
+msgstr "éé³å¤å离(&H)"
+
+#: Menus.cpp:395
+msgid "Duplic&ate"
+msgstr "坿¬(&A)"
-#: Menus.cpp:400 Menus.cpp:639
+#: Menus.cpp:401 Menus.cpp:641
msgid "Stereo Trac&k to Mono"
-msgstr ""
+msgstr "ç«ä½å£°é³è½¨å°å声(&K)"
-#: Menus.cpp:407
+#: Menus.cpp:408
msgid "La&beled Regions"
-msgstr ""
+msgstr "å·²æ ç¾çéæ®µ(&B)"
#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:460
-msgid "&Cut\tAlt+X"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:465
-msgid "&Split Cut\tShift+Alt+X"
-msgstr ""
+#: Menus.cpp:410
+msgid "&Cut"
+msgstr "åªå(&C)"
#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:470
-msgid "Co&py\tShift+Alt+C"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:476
-msgid "&Delete\tAlt+K"
-msgstr ""
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:481
-msgid "Sp&lit Delete\tShift+Alt+K"
-msgstr ""
+#: Menus.cpp:415
+msgid "&Split Cut"
+msgstr "åå²åªå(&S)"
#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:486
-msgid "Sile&nce\tAlt+L"
-msgstr ""
+#: Menus.cpp:420
+msgid "Co&py"
+msgstr "å¤å¶(&P)"
#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:492
-msgid "Spli&t\tAlt+I"
-msgstr ""
+#: Menus.cpp:431
+msgid "Sp&lit Delete"
+msgstr "åå²å é¤(&L)"
#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:497
-msgid "&Join\tAlt+J"
-msgstr ""
+#: Menus.cpp:436
+msgid "Sile&nce"
+msgstr "éé³(&N)"
#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
-msgstr ""
+#: Menus.cpp:442
+msgid "Spli&t"
+msgstr "åå²(&T)"
-#: Menus.cpp:456
+#: Menus.cpp:457
msgid "&Select"
-msgstr ""
+msgstr "éæ©(&S)"
-#: ../src/Menus.cpp:328
-msgid "&All\tCtrl+A"
-msgstr "å
¨é¨(&A)\tCtrl+A"
+#: Menus.cpp:458
+msgid "&All"
+msgstr "å
¨é¨(&A)"
-#: Menus.cpp:415
-msgid "&None\tCtrl+Shift+A"
-msgstr ""
-
-#: Menus.cpp:462
-#, fuzzy
-msgid "&Left at Playback Position\t["
-msgstr "å¨éæ¾ä½ç½®å·¦ç«¯\t["
+#: Menus.cpp:459
+msgid "&None"
+msgstr "å
¨ä¸(&N)"
#: Menus.cpp:463
-#, fuzzy
-msgid "&Right at Playback Position\t]"
-msgstr "å¨éæ¾ä½ç½®å³ç«¯\t]"
+msgid "&Left at Playback Position"
+msgstr "å¨åæ¾ä½ç½®å·¦ç«¯(&L)"
-#: Menus.cpp:467
-msgid "Track &Start to Cursor\tShift+J"
-msgstr ""
+#: Menus.cpp:464
+msgid "&Right at Playback Position"
+msgstr "å¨åæ¾ä½ç½®å³ç«¯(&R)"
#: Menus.cpp:468
-msgid "Cursor to Track &End\tShift+K"
-msgstr ""
+msgid "Track &Start to Cursor"
+msgstr "ä»å
æ å¤å¼å§(&S)"
-#: Menus.cpp:525
-#, fuzzy
-msgid "Find &Zero Crossings\tZ"
-msgstr "寻æ¾è¿é¶ç¹\tZ"
+#: Menus.cpp:469
+msgid "Cursor to Track &End"
+msgstr "å
æ ç§»è³é³è½¨æ«(&E)"
-#: Menus.cpp:476
-msgid "Mo&ve Cursor"
-msgstr ""
+#: Menus.cpp:475
+msgid "Find &Zero Crossings"
+msgstr "寻æ¾è¿0dBç¹(&Z)"
#: Menus.cpp:478
-#, fuzzy
+msgid "Mo&ve Cursor"
+msgstr "ç§»å¨å
æ (&V)"
+
+#: Menus.cpp:480
msgid "to Selection Star&t"
-msgstr "å°é段çèµ·å§ç¹"
+msgstr "å°é段çèµ·å§ç¹(&T)"
-#: Menus.cpp:479
-#, fuzzy
+#: Menus.cpp:481
msgid "to Selection En&d"
-msgstr "å°é段çç»æç¹"
+msgstr "å°é段çç»æç¹(&D)"
-#: Menus.cpp:483
-msgid "to Track &Start\tJ"
-msgstr ""
+#: Menus.cpp:485
+msgid "to Track &Start"
+msgstr "å°é³è½¨èµ·å§ç¹(&S)"
-#: Menus.cpp:484
-msgid "to Track &End\tK"
-msgstr ""
+#: Menus.cpp:486
+msgid "to Track &End"
+msgstr "å°é³è½¨ç»æç¹(&E)"
-#: Menus.cpp:491
+#: Menus.cpp:493
msgid "Re&gion Save"
-msgstr ""
+msgstr "ä¿åéæ®µ(&G)"
-#: Menus.cpp:492
+#: Menus.cpp:494
msgid "Regio&n Restore"
-msgstr ""
+msgstr "æ¢å¤é段(&N)"
-#: Menus.cpp:503
+#: Menus.cpp:505
msgid "Pla&y Region"
-msgstr ""
+msgstr "ææ¾éæ®µ(&Y)"
-#: Menus.cpp:504
+#: Menus.cpp:506
msgid "&Lock"
-msgstr ""
+msgstr "éä½(&L)"
-#: Menus.cpp:505
+#: Menus.cpp:507
msgid "&Unlock"
-msgstr ""
-
-#: ../src/Menus.cpp:379
-msgid "Turn Snap-To On"
-msgstr "æå¼å¸éåè½"
-
-#: ../src/Menus.cpp:380
-msgid "Turn Snap-To Off"
-msgstr "å
³éå¸éåè½"
-
-#: ../src/Menus.cpp:381
-msgid "Turn Grid Snap On"
-msgstr "æå¼ç½æ ¼å¸éåè½"
+msgstr "è§£é(&U)"
-#: ../src/Menus.cpp:382
-msgid "Turn Grid Snap Off"
-msgstr "å
³éç½æ ¼å¸éåè½"
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
-#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr ""
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
-msgstr ""
+#: Menus.cpp:521
+msgid "Pre&ferences..."
+msgstr "å好é项...(&F)"
-#: ../src/Menus.cpp:401
+#: Menus.cpp:535
msgid "&View"
-msgstr "æ¥ç(&V)"
+msgstr "è§å¾(&V)"
-#: ../src/Menus.cpp:403
-msgid "Zoom &In\tCtrl+1"
-msgstr "æ¾å¤§ (&I)\tCtrl+1"
+#: Menus.cpp:537
+msgid "Zoom &In"
+msgstr "æ¾å¤§(&I)"
-#: ../src/Menus.cpp:406
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "缩æ¾å°æ£å¸¸å¤§å° (&N)\tCtrl+2"
+#: Menus.cpp:540
+msgid "Zoom &Normal"
+msgstr "缩æ¾å°æ£å¸¸å¤§å°(&N)"
-#: ../src/Menus.cpp:407
-msgid "Zoom &Out\tCtrl+3"
-msgstr "ç¼©å° (&O)\tCtrl+3"
+#: Menus.cpp:541
+msgid "Zoom &Out"
+msgstr "缩å°(&O)"
-#: ../src/Menus.cpp:410
-msgid "&Fit in Window\tCtrl+F"
-msgstr "éåºçªå£(&F)\tCtrl+F"
+#: Menus.cpp:544
+msgid "&Fit in Window"
+msgstr "éåºçªå£(&F)"
-#: ../src/Menus.cpp:411
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "åç´æ¹åå¡«å
æ¾ç¤º(&V)\tCtrl+Shift+F"
+#: Menus.cpp:545
+msgid "Fit &Vertically"
+msgstr "åç´åéåº(&V)"
-#: ../src/Menus.cpp:412
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "缩æ¾è³é段大å°(&Z)\tCtrl+E"
+#: Menus.cpp:546
+msgid "&Zoom to Selection"
+msgstr "缩æ¾è³é段大å°(&Z)"
-#: ../src/Menus.cpp:415
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
-msgstr "å èµ·ææè½¨é (&C)\tCtrl+Shift+C"
+#: Menus.cpp:549
+msgid "&Collapse All Tracks"
+msgstr "å èµ·ææè½¨é(&C)"
-#: ../src/Menus.cpp:416
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
-msgstr "å±å¼ææè½¨é (&x)\tCtrl+Shift+X"
+#: Menus.cpp:550
+msgid "E&xpand All Tracks"
+msgstr "å±å¼ææè½¨é(&X)"
-#: Menus.cpp:551
+#: Menus.cpp:553
msgid "&Show Clipping"
-msgstr ""
+msgstr "æ¾ç¤ºç ´é³(&S)"
-#: ../src/Menus.cpp:424
+#: Menus.cpp:562
msgid "&History..."
msgstr "åå²è®°å½(&H)..."
-#: Menus.cpp:566
+#: Menus.cpp:568
msgid "&Toolbars"
-msgstr ""
+msgstr "å·¥å
·æ (&T)"
-#: Menus.cpp:567
+#: Menus.cpp:569
msgid "&Control Toolbar"
-msgstr ""
+msgstr "æ§å¶å·¥å
·æ (&C)"
-#: Menus.cpp:568
+#: Menus.cpp:570
msgid "&Device Toolbar"
-msgstr ""
+msgstr "设å¤å·¥å
·æ (&D)"
-#: Menus.cpp:569
+#: Menus.cpp:571
msgid "&Edit Toolbar"
-msgstr ""
+msgstr "ç¼è¾å·¥å
·æ (&E)"
-#: Menus.cpp:570
+#: Menus.cpp:572
msgid "&Meter Toolbar"
-msgstr ""
+msgstr "æç¤ºå¨å·¥å
·æ (&M)"
-#: Menus.cpp:571
+#: Menus.cpp:573
msgid "Mi&xer Toolbar"
-msgstr ""
+msgstr "æ··é³å¨å·¥å
·æ (&X)"
-#: Menus.cpp:572
+#: Menus.cpp:574
msgid "&Selection Toolbar"
-msgstr ""
+msgstr "鿩工å
·æ (&S)"
-#: Menus.cpp:573
+#: Menus.cpp:575
msgid "T&ools Toolbar"
-msgstr ""
+msgstr "å·¥å
·å·¥å
·æ (&O)"
-#: Menus.cpp:574
+#: Menus.cpp:576
msgid "Transcri&ption Toolbar"
-msgstr ""
+msgstr "转å½å·¥å
·æ (&P)"
-#: Menus.cpp:576
+#: Menus.cpp:578
msgid "&Reset Toolbars"
-msgstr ""
+msgstr "é设工å
·æ (&R)"
-#: Menus.cpp:578
+#: Menus.cpp:580
msgid "!Simplified View"
-msgstr ""
+msgstr "ç®åè§å¾"
#. i18n-hint: 'Transport' is the name given to the set of controls that
#. play, record, pause etc.
-#: Menus.cpp:587
+#: Menus.cpp:589
msgid "T&ransport"
-msgstr ""
+msgstr "转å½(&R)"
#: Menus.cpp:591
-msgid "Play\tSpace"
-msgstr ""
+msgid "Play"
+msgstr "ææ¾"
#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
-msgstr ""
+msgid "&Loop Play"
+msgstr "é夿æ¾(&L)"
-#: Menus.cpp:593
-msgid "&Pause\tP"
-msgstr ""
+#: Menus.cpp:595
+msgid "&Pause"
+msgstr "æå(&P)"
#: Menus.cpp:596
-msgid "&Stop\tSpace"
-msgstr ""
-
-#: ../src/Menus.cpp:645
-msgid "Skip to Start\tHome"
-msgstr "è·³è³å¼å§ä½ç½®\tHome"
+msgid "&Stop"
+msgstr "忢(&S)"
-#: ../src/Menus.cpp:646
-msgid "Skip to End\tEnd"
-msgstr "è·³è³ç»æä½ç½®\tEnd"
+#: Menus.cpp:597 Menus.cpp:1012
+msgid "Skip to Start"
+msgstr "è·³è³å¼å§ä½ç½®"
-#: Menus.cpp:600
-msgid "&Record\tR"
-msgstr ""
+#: Menus.cpp:599 Menus.cpp:1013
+msgid "Skip to End"
+msgstr "è·³è³ç»æä½ç½®"
#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
-msgstr ""
+msgid "&Record"
+msgstr "å½å¶(&R)"
#: Menus.cpp:604
-msgid "Append Record\tShift+R"
-msgstr ""
+msgid "&Timer Record..."
+msgstr "宿¶å½å¶(&T)..."
-#: Menus.cpp:607
-msgid "Overdub (on/off)"
-msgstr ""
+#: Menus.cpp:606
+msgid "Append Record"
+msgstr "追å å½å¶"
#: Menus.cpp:609
+msgid "Overdub (on/off)"
+msgstr "éå å½å¶(å¼/å
³)"
+
+#: Menus.cpp:611
msgid "Software Playthrough (on/off)"
-msgstr ""
+msgstr "软件éæ(å¼ï¼å
³)"
-#: Menus.cpp:612
+#: Menus.cpp:614
msgid "Sound Activated Recording (on/off)"
-msgstr ""
+msgstr "声é³å¯å¨å½å¶(å¼ï¼å
³)"
-#: Menus.cpp:614
+#: Menus.cpp:616
msgid "Sound Activation Level..."
-msgstr ""
+msgstr "声é³å¯å¨å£°å¼ºçº§..."
-#: Menus.cpp:635
+#: Menus.cpp:624
msgid "&Tracks"
-msgstr ""
+msgstr "轨é(&T)"
-#: Menus.cpp:629
+#: Menus.cpp:631
msgid "Add &New"
-msgstr ""
+msgstr "å¢å æ°è½¨é(&N)"
-#: Menus.cpp:643
-msgid "&Audio Track\tCtrl+Shift+N"
-msgstr ""
+#: Menus.cpp:632
+msgid "&Audio Track"
+msgstr "é³è½¨(&A)"
-#: Menus.cpp:644
+#: Menus.cpp:633
msgid "&Stereo Track"
-msgstr ""
+msgstr "ç«ä½å£°è½¨(&S)"
-#: Menus.cpp:646 TimeTrack.cpp:44
-#, fuzzy
+#: Menus.cpp:635 TimeTrack.cpp:44
msgid "&Time Track"
-msgstr "æ¶é´è½¨"
+msgstr "æ¶é´è½¨(&T)"
-#: Menus.cpp:643
+#: Menus.cpp:645
msgid "Mi&x and Render"
-msgstr ""
+msgstr "æ··é³å¹¶æ¸²æ(&X)"
-#: Menus.cpp:564
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
-msgstr ""
+#: Menus.cpp:649
+msgid "Mix and Render to New Track"
+msgstr "æ··é³å¹¶æ¸²æå°æ°è½¨"
-#: Menus.cpp:662
+#: Menus.cpp:653
msgid "&Resample..."
-msgstr ""
+msgstr "ééæ ·(&R)"
-#: ../src/Menus.cpp:461
+#: Menus.cpp:663
msgid "Remo&ve Tracks"
-msgstr "å é¤è½¨é(&v)"
+msgstr "å é¤è½¨é(&V)"
-#: Menus.cpp:667
-msgid "&Mute All Tracks\tCtrl+U"
-msgstr ""
+#: Menus.cpp:669
+msgid "&Mute All Tracks"
+msgstr "ææè½¨ééé³(&M)"
-#: Menus.cpp:668
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
-msgstr ""
+#: Menus.cpp:670
+msgid "&UnMute All Tracks"
+msgstr "ææè½¨éåæ¶éé³(&U)"
-#: ../src/Menus.cpp:468
+#: Menus.cpp:674
msgid "Align with &Zero"
-msgstr "åé¶åº§æ 对é½(&Z)"
+msgstr "å0座æ 对é½(&Z)"
-#: ../src/Menus.cpp:469
+#: Menus.cpp:675
msgid "Align with &Cursor"
-msgstr "忏¸æ 对é½(&C)"
+msgstr "åå
æ 对é½(&C)"
-#: ../src/Menus.cpp:470
+#: Menus.cpp:676
msgid "Align with Selection &Start"
-msgstr "åéæ®µç头é¨å¯¹é½(&S)"
+msgstr "åéæ®µçå¼å§ç¹å¯¹é½(&S)"
-#: ../src/Menus.cpp:471
+#: Menus.cpp:677
msgid "Align with Selection &End"
-msgstr "åéæ®µçå°¾é¨å¯¹é½(&E)"
+msgstr "åéæ®µçç»æç¹å¯¹é½(&E)"
-#: Menus.cpp:676
-#, fuzzy
+#: Menus.cpp:678
msgid "Align End with Cu&rsor"
-msgstr "ç»æç¹å游æ 对é½"
+msgstr "ç»æç¹åå
æ 对é½(&R)"
-#: Menus.cpp:677
-#, fuzzy
+#: Menus.cpp:679
msgid "Align End with Selection Star&t"
-msgstr "ç»æç¹åéæ®µç头é¨å¯¹é½"
+msgstr "ç»æç¹åéæ®µç头é¨å¯¹é½(&T)"
-#: Menus.cpp:678
-#, fuzzy
+#: Menus.cpp:680
msgid "Align End with Selection En&d"
-msgstr "ç»æç¹åéæ®µçå°¾é¨å¯¹é½"
+msgstr "ç»æç¹åéæ®µçå°¾é¨å¯¹é½(&D)"
-#: Menus.cpp:679
-#, fuzzy
+#: Menus.cpp:681
msgid "Align Tracks To&gether"
-msgstr "å°é³è½¨å¯¹é½å¨ä¸èµ·"
+msgstr "å°é³è½¨å¯¹é½å¨ä¸èµ·(&G)"
-#: Menus.cpp:681
+#: Menus.cpp:683
msgid "&Align Tracks"
-msgstr ""
+msgstr "对é½è½¨é...(&A)"
-#: Menus.cpp:690
+#: Menus.cpp:692
msgid "Ali&gn and Move Cursor"
-msgstr ""
+msgstr "对é½å¹¶ç§»å¨å
æ (&G)"
-#: Menus.cpp:697
+#: Menus.cpp:699
msgid "Synchronize MIDI with Audio"
-msgstr ""
+msgstr "MIDIä¸é³é¢åæ¥"
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
-msgstr ""
+#: Menus.cpp:686
+msgid "&Link Audio and Label Tracks"
+msgstr "èç³»é³è½¨åæ ç¾è½¨(&L)"
-#: Menus.cpp:705
-#, fuzzy
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "ç»é³é¢é段å 䏿 é¢\tCtrl+B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr "ä¸ºéæ®µæ·»å æ ç¾(&S)"
-#: Menus.cpp:706
-#, fuzzy
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "å¨éæ¾ä½ç½®å 䏿 é¢\tCtrl+M"
+#: Menus.cpp:712
+msgid "Add Label At &Playback Position"
+msgstr "å¨åæ¾ä½ç½®å 䏿 é¢(&P)"
-#: Menus.cpp:716
+#: Menus.cpp:718
msgid "S&ort tracks"
-msgstr ""
+msgstr "轨éæåº(&O)"
-#: Menus.cpp:717
+#: Menus.cpp:719
msgid "by &Start time"
-msgstr ""
+msgstr "æå¼å§æ¶é´(&S)"
-#: Menus.cpp:719
+#: Menus.cpp:721
msgid "by &Name"
-msgstr ""
+msgstr "æåå(&N)"
-#: ../src/Menus.cpp:504
+#: Menus.cpp:732
msgid "&Generate"
-msgstr "å¶ä½(&G)"
+msgstr "çæ(&G)"
-#: Menus.cpp:776 Menus.cpp:860 Menus.cpp:922
+#: Menus.cpp:778 Menus.cpp:862 Menus.cpp:924
msgid "Unsorted"
-msgstr ""
+msgstr "æªæåºç"
-#: ../src/Menus.cpp:527
+#: Menus.cpp:797
msgid "Effe&ct"
-msgstr "ææ(&c)"
-
-#: ../src/Menus.cpp:531
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "é夿è¿ä¸æ¬¡çæææä½\tCtrl+R"
+msgstr "ææ(&C)"
-#: ../src/Menus.cpp:563
+#: Menus.cpp:879
msgid "&Analyze"
msgstr "åæ(&A)"
-#: Menus.cpp:692
-#, fuzzy
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr "对ç
§..."
+
+#: Menus.cpp:881
msgid "Plot Spectrum..."
-msgstr "é¢è°±å¾... (&P)"
+msgstr "ç»å¶é¢è°±å¾..."
-#: ../src/Menus.cpp:598
-#: ../src/Menus.cpp:601
+#: Menus.cpp:949 Menus.cpp:952
msgid "&Help"
msgstr "帮å©(&H)"
-#: ../src/Menus.cpp:606
+#: Menus.cpp:955
msgid "&About Audacity CleanSpeech..."
-msgstr "å
³äºAudacity CleanSpeech[æ¸
æ°è¯é³](&A)..."
+msgstr "å
³äºAudacity æ¸
æ°è¯é³(&A)..."
-#: Menus.cpp:735
+#: Menus.cpp:959
msgid "&Show Welcome Message..."
-msgstr ""
+msgstr "æ¾ç¤ºæ¬¢è¿ä¿¡æ¯...(&S)"
-#: Menus.cpp:736
-msgid "&Index..."
-msgstr ""
+#: Menus.cpp:958
+msgid "&Help..."
+msgstr "帮å©...(&H)"
-#: Menus.cpp:959
+#: Menus.cpp:961
msgid "Show &Log..."
-msgstr ""
+msgstr "æ¾ç¤ºæ¥å¿...(&L)"
-#: Menus.cpp:744
+#: Menus.cpp:969
msgid "&Screenshot Tools..."
-msgstr ""
+msgstr "æªå±å·¥å
·...(&S)"
-#: ../src/Menus.cpp:614
+#: Menus.cpp:972
msgid "&Run Benchmark..."
-msgstr "æ§è½è¯æµ...(&R)"
+msgstr "è¿è¡æ§è½æµè¯...(&R)"
-#: Menus.cpp:749
+#: Menus.cpp:974
msgid "&Audio Device Info..."
-msgstr ""
+msgstr "é³é¢è®¾å¤ä¿¡æ¯...(&A)"
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
-msgstr ""
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
+msgstr "ä»å·¥å
·æ å°è½¨éåç§»"
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
-msgstr ""
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
+msgstr "ä»è½¨éå°å·¥å
·æ åç§»"
-#: ../src/Menus.cpp:625
-msgid "Selection Tool\tF1"
-msgstr "鿩工å
·\tF1"
+#: Menus.cpp:987
+msgid "Selection Tool"
+msgstr "鿩工å
·"
-#: ../src/Menus.cpp:626
-msgid "Envelope Tool\tF2"
-msgstr "å
ç»çº¿å·¥å
·\tF2"
+#: Menus.cpp:988
+msgid "Envelope Tool"
+msgstr "å
ç»å·¥å
·"
-#: ../src/Menus.cpp:627
-msgid "Draw Tool\tF3"
-msgstr "ç»å¾å·¥å
·\tF3"
+#: Menus.cpp:989
+msgid "Draw Tool"
+msgstr "ç»å¶å·¥å
·"
-#: ../src/Menus.cpp:628
-msgid "Zoom Tool\tF4"
-msgstr "缩æ¾å·¥å
·\tF4"
+#: Menus.cpp:990
+msgid "Zoom Tool"
+msgstr "缩æ¾å·¥å
·"
-#: ../src/Menus.cpp:629
-msgid "Time Shift Tool\tF5"
-msgstr "æ¶é´ç§»å¨å·¥å
·\tF5"
+#: Menus.cpp:991
+msgid "Time Shift Tool"
+msgstr "æ¶é´ç§»å¨å·¥å
·"
-#: ../src/Menus.cpp:630
-msgid "Multi Tool\tF6"
-msgstr "å¤éå·¥å
·\tF6"
+#: Menus.cpp:992
+msgid "Multi Tool"
+msgstr "å¤åè½å·¥å
·"
-#: ../src/Menus.cpp:632
-msgid "Next Tool\tD"
-msgstr "\"ä¸ä¸ä¸ª(Next)\"å·¥å
·\tD"
+#: Menus.cpp:994
+msgid "Next Tool"
+msgstr "ä¸ä¸ä¸ªå·¥å
·"
-#: ../src/Menus.cpp:633
-msgid "Previous Tool\tA"
-msgstr "\"ä¸ä¸ä¸ª(Previous)\"å·¥å
·\tA"
+#: Menus.cpp:995
+msgid "Previous Tool"
+msgstr "ä¸ä¸ä¸ªå·¥å
·"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
-msgstr ""
+msgid "Play/Stop"
+msgstr "ææ¾/忢"
-#: ../src/Menus.cpp:636
-msgid "Stop\tS"
-msgstr "忢\tS"
+#: Menus.cpp:1003
+msgid "Play/Stop and Set Cursor"
+msgstr "ææ¾/åæ¢å¹¶è®¾ç½®å
æ "
-#: ../src/Menus.cpp:637
-msgid "Pause\tP"
-msgstr "忢\tP"
+#: Menus.cpp:1006
+msgid "Play One Second"
+msgstr "ææ¾ï¼ç§"
-#: ../src/Menus.cpp:638
-msgid "Record\tR"
-msgstr "å½é³\tR"
+#: Menus.cpp:1007
+msgid "Play To Selection"
+msgstr "ææ¾è³é段"
-#: Menus.cpp:999
-msgid "Record Append\tShift+R"
-msgstr ""
+#: Menus.cpp:1010
+msgid "Play Cut Preview"
+msgstr "ææ¾åªåé¢è§"
-#: Menus.cpp:1001
-msgid "Play/Stop and Set Cursor\tShift+A"
-msgstr ""
+#: Menus.cpp:1015
+msgid "Selection to Start"
+msgstr "éæ©è³èµ·ç¹"
-#: ../src/Menus.cpp:640
-msgid "Play One Second\t1"
-msgstr "ææ¾ï¼ç§\t1"
+#: Menus.cpp:1016
+msgid "Selection to End"
+msgstr "éæ©è³ç»ç¹"
-#: ../src/Menus.cpp:641
-msgid "Play To Selection\tB"
-msgstr "ææ¾è³é段\tB"
+#: Menus.cpp:1018
+msgid "DeleteKey"
+msgstr "å é¤é®"
-#: ../src/Menus.cpp:642
-msgid "Play Looped\tL"
-msgstr "å¾ªç¯ææ¾\tL"
+#: Menus.cpp:1023
+msgid "DeleteKey2"
+msgstr "å é¤é®2"
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
+msgstr "åæ¾æ¶ç¨åå·¦å®ä½"
-#: Menus.cpp:873
-msgid "Play Cut Preview\tC"
-msgstr ""
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
+msgstr "åæ¾æ¶ç¨åå³å®ä½"
-#: ../src/Menus.cpp:648
-msgid "Selection to Start\tShift+Home"
-msgstr "éæ©è³èµ·ç¹\tShift+Home"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
+msgstr "åæ¾æ¶åå·¦å®ä½"
-#: ../src/Menus.cpp:649
-msgid "Selection to End\tShift+End"
-msgstr "éæ©è³ç»ç¹\tShift+End"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
+msgstr "åæ¾æ¶ç¨å³å·¦å®ä½"
-#: ../src/Menus.cpp:651
-msgid "DeleteKey\tBackspace"
-msgstr "å é¤é®\tBackspace"
+#: Menus.cpp:1036
+msgid "Move Focus to Previous Track"
+msgstr "ç§»å¨ç¦ç¹å°ä¸ä¸è½¨"
-#: ../src/Menus.cpp:656
-msgid "DeleteKey2\tDelete"
-msgstr "å é¤é®2\tDelete"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
+msgstr "ç§»å¨ç¦ç¹å°ä¸ä¸è½¨å¹¶éä¸"
-#: Menus.cpp:892
-msgid "Seek left short period during playback\tLeft"
-msgstr ""
+#: Menus.cpp:1038
+msgid "Move Focus to Next Track"
+msgstr "ç§»å¨ç¦ç¹å°ä¸ä¸è½¨"
-#: Menus.cpp:893
-msgid "Seek right short period during playback\tRight"
-msgstr ""
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
+msgstr "ç§»å¨ç¦ç¹å°ä¸ä¸è½¨å¹¶éä¸"
-#: Menus.cpp:894
-msgid "Seek left long period during playback\tShift+Left"
-msgstr ""
+#: Menus.cpp:1040
+msgid "Toggle Focused Track"
+msgstr "éæ©/åæ¶ ä¸è½¨é"
-#: Menus.cpp:895
-msgid "Seek right long period during playback\tShift+Right"
-msgstr ""
+#: Menus.cpp:1044
+msgid "Cursor Left"
+msgstr "å
æ 左移"
-#: Menus.cpp:899
-msgid "Move Focus to Previous Track\tUp"
-msgstr ""
+#: Menus.cpp:1045
+msgid "Cursor Right"
+msgstr "å
æ å³ç§»"
-#: Menus.cpp:900
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
-msgstr ""
+#: Menus.cpp:1046
+msgid "Cursor Short Jump Left"
+msgstr "å
æ å°å·¦è·³"
-#: Menus.cpp:901
-msgid "Move Focus to Next Track\tDown"
-msgstr ""
+#: Menus.cpp:1047
+msgid "Cursor Short Jump Right"
+msgstr "å
æ å°å³è·³"
-#: Menus.cpp:902
-msgid "Move Focus to Next and Change Selection\tShift+Down"
-msgstr ""
+#: Menus.cpp:1048
+msgid "Cursor Long Jump Left"
+msgstr "å
æ 大左跳"
-#: Menus.cpp:903
-msgid "Toggle Focused Track\tReturn"
-msgstr ""
+#: Menus.cpp:1049
+msgid "Cursor Long Jump Right"
+msgstr "å
æ 大å³è·³"
-#: Menus.cpp:904
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr ""
+#: Menus.cpp:1051
+msgid "Selection Extend Left"
+msgstr "éæ®µç左端æ©å±"
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
-msgstr ""
+#: Menus.cpp:1052
+msgid "Selection Extend Right"
+msgstr "éæ®µçå³ç«¯æ©å±"
-#: ../src/Menus.cpp:664
-msgid "Cursor Left\tLeft"
-msgstr "游æ 左移\tLeft"
+#: Menus.cpp:1054
+msgid "Set (or Extend) Left Selection"
+msgstr "è®¾ç½®ææ©å±é段左端"
-#: ../src/Menus.cpp:665
-msgid "Cursor Right\tRight"
-msgstr "游æ å³ç§»\tRight"
+#: Menus.cpp:1055
+msgid "Set (or Extend) Right Selection"
+msgstr "è®¾ç½®ææ©å±é段å³ç«¯"
-#: Menus.cpp:820
-msgid "Cursor Short Jump Left\t,"
-msgstr ""
+#: Menus.cpp:1057
+msgid "Selection Contract Left"
+msgstr "éæ®µç左端æ¶ç¼©"
-#: Menus.cpp:821
-msgid "Cursor Short Jump Right\t."
-msgstr ""
+#: Menus.cpp:1058
+msgid "Selection Contract Right"
+msgstr "éæ®µçå³ç«¯æ¶ç¼©"
-#: Menus.cpp:822
-msgid "Cursor Long Jump Left\tShift+,"
-msgstr ""
-
-#: Menus.cpp:823
-msgid "Cursor Long Jump Right\tShift+."
-msgstr ""
+#: Menus.cpp:1060
+msgid "Change pan on focused track"
+msgstr "æ¹åéä¸é³è½¨çå·¦å³å£°é平衡"
-#: ../src/Menus.cpp:666
-msgid "Selection Extend Left\tShift+Left"
-msgstr "éæ®µç左端æ©å±\tShift+Left"
+#: Menus.cpp:1061
+msgid "Pan left on focused track"
+msgstr "éä¸é³è½¨çå·¦å³å£°é平衡左移"
-#: ../src/Menus.cpp:667
-msgid "Selection Extend Right\tShift+Right"
-msgstr "éæ®µçå³ç«¯æ©å±\tShift+Right"
+#: Menus.cpp:1062
+msgid "Pan right on focused track"
+msgstr "éä¸é³è½¨çå·¦å³å£°é平衡å³ç§»"
-#: Menus.cpp:828
-msgid "Set (or Extend) Left Selection"
-msgstr ""
+#: Menus.cpp:1063
+msgid "Change gain on focused track"
+msgstr "æ¹åéä¸é³è½¨ç声强å 强"
-#: Menus.cpp:829
-msgid "Set (or Extend) Right Selection"
-msgstr ""
+#: Menus.cpp:1064
+msgid "Increase gain on focused track"
+msgstr "å¢å éä¸é³è½¨ç声强å 强"
-#: ../src/Menus.cpp:668
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "éæ®µç左端æ¶ç¼©\tCtrl+Shift+Right"
+#: Menus.cpp:1065
+msgid "Decrease gain on focused track"
+msgstr "åå°éä¸é³è½¨ç声强å 强"
-#: ../src/Menus.cpp:669
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "éæ®µçå³ç«¯æ¶ç¼©\tCtrl+Shift+Left"
+#: Menus.cpp:1066
+msgid "Open menu on focused track"
+msgstr "æå¼éä¸é³è½¨ä¸çèå"
-#: Menus.cpp:916
-msgid "Change pan on focused track\tShift+P"
-msgstr ""
+#: Menus.cpp:1067
+msgid "Mute/Unmute focused track"
+msgstr "éé³/åæ¶ éä¸é³è½¨"
-#: Menus.cpp:917
-msgid "Pan left on focused track\tAlt+Shift+Left"
-msgstr ""
+#: Menus.cpp:1068
+msgid "Solo/Unsolo focused track"
+msgstr "ç¬å¥/åæ¶ éä¸é³è½¨"
-#: Menus.cpp:918
-msgid "Pan right on focused track\tAlt+Shift+Right"
-msgstr ""
+#: Menus.cpp:1069
+msgid "Close focused track"
+msgstr "å
³ééä¸é³è½¨"
-#: Menus.cpp:919
-msgid "Change gain on focused track\tShift+G"
-msgstr ""
+#: Menus.cpp:1071
+msgid "Snap To On"
+msgstr "å¸éå¼å¯"
-#: Menus.cpp:920
-msgid "Increase gain on focused track\tAlt+Shift+Up"
-msgstr ""
+#: Menus.cpp:1072
+msgid "Snap To Off"
+msgstr "å¸éå
³é"
-#: Menus.cpp:921
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
-msgstr ""
+#: Menus.cpp:1073
+msgid "Full screen on/off"
+msgstr "å
¨å±å¹å¼å¯ï¼å
³é"
-#: Menus.cpp:922
-msgid "Open menu on focused track\tShift+M"
-msgstr ""
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr "è°æ´è¾åºå£°å¼ºå¢å¼º"
-#: Menus.cpp:923
-msgid "Mute/Unmute focused track\tShift+U"
-msgstr ""
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr "è°æ´è¾åºå£°å¼ºå¢å¼º"
-#: Menus.cpp:924
-msgid "Solo/Unsolo focused track\tShift+S"
-msgstr ""
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr "åå°è¾åºå£°å¼ºå¢å¼º"
-#: Menus.cpp:925
-msgid "Close focused track\tShift+C"
-msgstr ""
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr "è°æ´è¾å
¥å£°å¼ºå¢å¼º"
-#: Menus.cpp:845
-msgid "Snap To On"
-msgstr ""
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr "è°æ´è¾å
¥å£°å¼ºå¢å¼º"
-#: Menus.cpp:846
-msgid "Snap To Off"
-msgstr ""
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr "åå°è¾å
¥å£°å¼ºå¢å¼º"
-#: Menus.cpp:1071
-msgid "Full screen on/off\tF11"
-msgstr ""
+#: Menus.cpp:1074
+msgid "Adjust input source"
+msgstr "è°æ´è¾å
¥æº"
#. i18n-hint: This is the name of the menu item on Mac OS X only
-#: ../src/Menus.cpp:695
+#: Menus.cpp:1155
msgid "Open Recent"
msgstr "æå¼æè¿è®¿é®çæä»¶"
#. i18n-hint: This is the name of the menu item on Windows and Linux
-#: Menus.cpp:1161
+#: Menus.cpp:1158
msgid "Recent &Files"
-msgstr ""
+msgstr "æè¿çæä»¶(&F)..."
-#: ../src/Menus.cpp:763
+#: Menus.cpp:1207
#, c-format
msgid "&Undo %s"
-msgstr "åæ¶ %s(&U)"
+msgstr "æ¤æ¶ %s(&U)"
-#: ../src/Menus.cpp:769
+#: Menus.cpp:1233
msgid "Can't Undo"
msgstr "æ æ³æ¤é"
-#: ../src/Menus.cpp:776
+#: Menus.cpp:1242
#, c-format
msgid "&Redo %s"
-msgstr "æ¢å¤ %s(&R)"
+msgstr "éå %s(&R)"
-#: ../src/Menus.cpp:782
+#: Menus.cpp:1248
msgid "Can't Redo"
-msgstr "æ æ³æ¢å¤"
+msgstr "æ æ³éå"
-#: Menus.cpp:1557
+#: Menus.cpp:1863
msgid "Sort By Time"
-msgstr ""
+msgstr "ææ¶é´æåº"
-#: Menus.cpp:1557
+#: Menus.cpp:1863
msgid "Tracks sorted by time"
-msgstr ""
+msgstr "ææ¶é´æåºç轨é"
-#: Menus.cpp:1583
+#: Menus.cpp:1889
msgid "Sort By Name"
-msgstr ""
+msgstr "æååæåº"
-#: Menus.cpp:1583
+#: Menus.cpp:1889
msgid "Tracks sorted by name"
-msgstr ""
+msgstr "æååæåºç轨é"
-#: ../src/Menus.cpp:1407
+#: Menus.cpp:2040
msgid "Set Left Selection Bound"
msgstr "è®¾ç½®éæ®µç左边ç"
-#: ../src/Menus.cpp:1445
+#: Menus.cpp:2076
msgid "Set Right Selection Bound"
msgstr "è®¾ç½®éæ®µçå³è¾¹ç"
-#: ../src/Menus.cpp:1648
+#: Menus.cpp:2346
msgid "You must select a track first."
msgstr "æ¨å¿
é¡»å
鿩䏿¡è½¨éã"
-#: ../src/Menus.cpp:1677
+#: Menus.cpp:2381
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "éå¤%s\tCtrl+R"
+msgid "Repeat %s"
+msgstr "éå¤ %s"
-#: ../src/Menus.cpp:1799
+#: Menus.cpp:2524
msgid "There are no label tracks to export."
msgstr "æ²¡ææ ç¾è½¨ï¼æ æ³å¯¼åºã"
-#: Menus.cpp:2608
+#: Menus.cpp:2619
msgid "Export MIDI As:"
-msgstr ""
+msgstr "导åºMIDI为ï¼"
-#: Menus.cpp:2612
+#: Menus.cpp:2623
msgid "MIDI file (*.mid)|*.mid|Allegro file (*.gro)|*.gro"
-msgstr ""
+msgstr "MIDIæä»¶(*.mid)|*.mid|Allegroæä»¶(*.gro)|*.gro"
-#: Menus.cpp:2644
-msgid "You have selected a filename with an unrecognized file extension.\n"
+#: Menus.cpp:2655
+msgid ""
+"You have selected a filename with an unrecognized file extension.\n"
"Do you want to continue?"
msgstr ""
+"ä½ éæ©äºä¸ä¸ªæªç¥æ©å±åçæä»¶\n"
+"ä½ æ³ç»§ç»åï¼"
-#: Menus.cpp:2645
+#: Menus.cpp:2656
msgid "Export MIDI"
-msgstr ""
+msgstr "导åºMIDI"
-#: ../src/Menus.cpp:1922
+#: Menus.cpp:2726
msgid "Nothing to undo"
-msgstr "没æå¯åæ¶çæä½"
+msgstr "没æå¯æ¤æ¶çæä½"
-#: ../src/Menus.cpp:1941
+#: Menus.cpp:2746
msgid "Nothing to redo"
-msgstr "没æå¯æ¢å¤çæä½"
+msgstr "没æå¯éåçæä½"
-#: ../src/EditToolBar.cpp:146
-#: ../src/Menus.cpp:2021
-#: ../src/TrackPanel.cpp:431
+#: Menus.cpp:2851 TrackPanel.cpp:593 toolbars/EditToolBar.cpp:133
msgid "Cut"
msgstr "åªå"
-#: ../src/Menus.cpp:2021
+#: Menus.cpp:2851
msgid "Cut to the clipboard"
msgstr "åªåå°åªè´´æ¿"
-#: ../src/Menus.cpp:2062
+#: Menus.cpp:2891
msgid "Split Cut"
msgstr "åå²åªå"
-#: ../src/Menus.cpp:2062
+#: Menus.cpp:2891
msgid "Split-cut to the clipboard"
msgstr "åå²åªåå°åªè´´æ¿"
-#: ../src/EditToolBar.cpp:150
-#: ../src/Menus.cpp:2194
-#: ../src/Menus.cpp:2246
-#: ../src/TrackPanel.cpp:433
+#: Menus.cpp:2956 Menus.cpp:3028 Menus.cpp:3220 TrackPanel.cpp:595
+#: toolbars/EditToolBar.cpp:137
msgid "Paste"
msgstr "ç²è´´"
-#: Menus.cpp:2530
+#: Menus.cpp:2956
msgid "Pasted text from the clipboard"
-msgstr ""
+msgstr "ä»åªè´´æ¿ç²è´´æå"
-#: ../src/Menus.cpp:2194
-#: ../src/Menus.cpp:2246
+#: Menus.cpp:3028 Menus.cpp:3220
msgid "Pasted from the clipboard"
msgstr "ä»åªè´´æ¿ç²è´´"
-#: Menus.cpp:3053
+#: Menus.cpp:3094
msgid "Pasting one type of track into another is not allowed."
-msgstr ""
+msgstr "ä¸å
许ä»ä¸ç±»è½¨éç²è´´å°å¦ä¸ç±»ã"
-#: Menus.cpp:2628
+#: Menus.cpp:3106
msgid "Copying stereo audio into a mono track is not allowed."
-msgstr ""
+msgstr "ä¸å
许å¤å¶ç«ä½å£°é³é¢å°å声轨éã"
-#: ../src/EditToolBar.cpp:152
-#: ../src/Menus.cpp:2281
+#: Menus.cpp:3256 toolbars/EditToolBar.cpp:139
msgid "Trim"
-msgstr "ä¿®åª"
+msgstr "è£åª"
-#: ../src/Menus.cpp:2281
+#: Menus.cpp:3256
msgid "Trim file to selection"
msgstr "å°æä»¶ä¿®åªè³é段"
-#: ../src/Menus.cpp:2308
+#: Menus.cpp:3285
#, c-format
msgid "Split-deleted %.2f seconds at t=%.2f"
-msgstr "åå²å é¤ %.2f ç§ (ä½ç½® t=%.2f)"
+msgstr "åå²å é¤ %.2f ç§ (å¨ t=%.2f)"
-#: ../src/Menus.cpp:2311
+#: Menus.cpp:3288
msgid "Split Delete"
msgstr "åå²å é¤"
-#: Menus.cpp:2771
+#: Menus.cpp:3309
#, c-format
msgid "Disjoined %.2f seconds at t=%.2f"
-msgstr ""
+msgstr "å离%.2f æ (å¨ t=%.2f)"
-#: Menus.cpp:2774
+#: Menus.cpp:3312
msgid "Disjoin"
-msgstr ""
+msgstr "å离"
-#: ../src/Menus.cpp:2332
+#: Menus.cpp:3333
#, c-format
msgid "Joined %.2f seconds at t=%.2f"
-msgstr "å·²èç» %.2f ç§ (ä½ç½® t=%.2f)"
+msgstr "å·²è¿æ¥ %.2f ç§ (ä½ç½® t=%.2f)"
-#: ../src/Menus.cpp:2335
+#: Menus.cpp:3336
msgid "Join"
-msgstr "èç»"
+msgstr "è¿æ¥"
-#: ../src/Menus.cpp:2354
+#: Menus.cpp:3355
#, c-format
msgid "Silenced selected tracks for %.2f seconds at %.2f"
-msgstr "使éå®è½¨ééé³%.2f ç§ï¼ä½ç½®å¨ %.2f ç§å¤"
+msgstr "使éå®è½¨ééé³%.2f ç§ï¼(å¨ %.2f )"
-#: ../src/EditToolBar.cpp:154
-#: ../src/Menus.cpp:2356
+#: Menus.cpp:3357 toolbars/EditToolBar.cpp:141
msgid "Silence"
msgstr "éé³"
-#: ../src/Menus.cpp:2390
+#: Menus.cpp:3391
msgid "Duplicate"
-msgstr "å¤å¶"
+msgstr "坿¬"
-#: ../src/Menus.cpp:2390
+#: Menus.cpp:3391
msgid "Duplicated"
-msgstr "å·²å¤å¶"
+msgstr "已夿¬ç"
-#: Menus.cpp:2872
+#: Menus.cpp:3410
msgid "Cut Labels"
-msgstr ""
+msgstr "åªåæ ç¾"
-#: Menus.cpp:2872
+#: Menus.cpp:3410
msgid "Cut labeled regions to the clipboard"
-msgstr ""
+msgstr "åªåå·²æ ç¾çéæ®µå°åªè´´æ¿"
-#: Menus.cpp:2886
+#: Menus.cpp:3424
msgid "SplitCut labeled regions to the clipboard"
-msgstr ""
+msgstr "åå²åªåå·²æ ç¾é段å°åªè´´æ¿"
-#: Menus.cpp:2887
+#: Menus.cpp:3425
msgid "Split Cut Labels"
-msgstr ""
+msgstr "åå²åªåæ ç¾"
-#: Menus.cpp:2901
+#: Menus.cpp:3439
msgid "Copied labeled regions to the clipboard"
-msgstr ""
+msgstr "å¤å¶å·²æ ç¾é段å°åªè´´æ¿"
-#: Menus.cpp:2901
+#: Menus.cpp:3439
msgid "Copy Labels"
-msgstr ""
+msgstr "å¤å¶æ ç¾"
-#: Menus.cpp:2913
+#: Menus.cpp:3451
msgid "Delete Labels"
-msgstr ""
+msgstr "å 餿 ç¾"
-#: Menus.cpp:2913
+#: Menus.cpp:3451
msgid "Deleted labeled regions"
-msgstr ""
+msgstr "å é¤å·²æ ç¾é段"
-#: Menus.cpp:2925
+#: Menus.cpp:3463
msgid "Split Delete Labels"
-msgstr ""
+msgstr "åå²å 餿 ç¾"
-#: Menus.cpp:2925
+#: Menus.cpp:3463
msgid "Split Deleted labeled regions"
-msgstr ""
+msgstr "åå²å é¤å·²æ ç¾é段"
-#: Menus.cpp:2937
+#: Menus.cpp:3475
msgid "Silence Labels"
-msgstr ""
+msgstr "é鳿 ç¾"
-#: Menus.cpp:2937
+#: Menus.cpp:3475
msgid "Silenced labeled regions"
-msgstr ""
+msgstr "éé³å·²æ ç¾é段"
-#: Menus.cpp:2949
+#: Menus.cpp:3487
msgid "Split Labels"
-msgstr ""
+msgstr "å岿 ç¾"
-#: Menus.cpp:2949
+#: Menus.cpp:3487
msgid "Split labeled regions"
-msgstr ""
+msgstr "åå²å·²æ ç¾é段"
-#: Menus.cpp:2961
+#: Menus.cpp:3499
msgid "Join Labels"
-msgstr ""
+msgstr "è¿æ¥æ ç¾"
-#: Menus.cpp:2961
+#: Menus.cpp:3499
msgid "Joined labeled regions"
-msgstr ""
+msgstr "è¿æ¥å·²æ ç¾é段"
-#: Menus.cpp:2973
+#: Menus.cpp:3511
msgid "Disjoin Labels"
-msgstr ""
+msgstr "å离æ ç¾"
-#: Menus.cpp:2973
+#: Menus.cpp:3511
msgid "Disjoined labeled regions"
-msgstr ""
+msgstr "å离已æ ç¾é段"
-#: ../src/Menus.cpp:2416
-#: ../src/TrackPanel.cpp:4875
+#: Menus.cpp:3533 TrackPanel.cpp:6173
msgid "Split"
msgstr "åå²"
-#: Menus.cpp:3089
+#: Menus.cpp:3627
msgid "Split New"
-msgstr ""
+msgstr "å岿°å»º"
-#: Menus.cpp:3089
+#: Menus.cpp:3627
msgid "Split to new track"
-msgstr ""
+msgstr "åå²å°æ°è½¨é"
-#: ../src/Menus.cpp:2549
+#: Menus.cpp:3710
msgid "Split at labels"
-msgstr "ææ ç¾åå²"
-
-#: ../src/Menus.cpp:2825
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "为äºç»å¶é¢è°±ï¼ææéå®ç轨éå¿
é¡»å
·æç¸åçéæ ·çã"
-
-#: ../src/Menus.cpp:2851
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "éæ©çé³é¢è¿å¤ãåªæå¼å§ %.1f ç§çé³é¢ä¼è¢«åæã"
+msgstr "卿 ç¾å¤åå²"
-#: ../src/Menus.cpp:3036
+#: Menus.cpp:4180
#, c-format
msgid "Imported labels from '%s'"
msgstr "ä»'%s'导å
¥çæ ç¾"
-#: ../src/Menus.cpp:3037
+#: Menus.cpp:4181
msgid "Import Labels"
msgstr "导å
¥æ ç¾"
-#: ../src/Menus.cpp:3048
+#: Menus.cpp:4192
msgid "Select a MIDI file..."
msgstr "éæ©MIDIæä»¶..."
-#: Menus.cpp:4147
+#: Menus.cpp:4196
msgid "MIDI and Allegro files (*.mid;*.midi;*.gro)|*.mid;*.midi;*.gro|MIDI files (*.mid;*.midi)|*.mid;*.midi|Allegro files (*.gro)|*.gro|All files (*.*)|*.*"
-msgstr ""
+msgstr "MIDI å Allegro æä»¶ (*.mid;*.midi;*.gro)|*.mid;*.midi;*.gro|MIDI æä»¶ (*.mid;*.midi)|*.mid;*.midi|Allegro æä»¶ (*.gro)|*.gro|æææä»¶ (*.*)|*.*"
-#: ../src/Menus.cpp:3068
+#: Menus.cpp:4212
#, c-format
msgid "Imported MIDI from '%s'"
msgstr "ä»'%s'ä¸å¯¼å
¥çMIDI"
-#: ../src/Menus.cpp:3070
+#: Menus.cpp:4213
msgid "Import MIDI"
msgstr "导å
¥MIDI"
-#: ../src/Menus.cpp:3083
+#: Menus.cpp:4227
msgid "Select any uncompressed audio file..."
msgstr "鿩任ä¸éå缩é³é¢æä»¶..."
-#: ../src/Menus.cpp:3087
+#: Menus.cpp:4231
msgid "All files (*)|*"
-msgstr "å
¨é¨æä»¶(*)|*"
+msgstr "æææä»¶(*)|*"
-#: Menus.cpp:3630
+#: Menus.cpp:4255
msgid "Edit the metadata tags"
-msgstr ""
+msgstr "ç¼è¾å
ä¿¡æ¯æ ç¾"
-#: Menus.cpp:3631
+#: Menus.cpp:4256 export/Export.cpp:349
msgid "Edit Metadata"
-msgstr ""
+msgstr "ç¼è¾å
ä¿¡æ¯"
-#: Menus.cpp:3631
+#: Menus.cpp:4256
msgid "Edit Metadata tags"
-msgstr ""
+msgstr "ç¼è¾å
ä¿¡æ¯æ ç¾"
-#: ../src/Menus.cpp:3177
-#, fuzzy, c-format
+#: Menus.cpp:4312
+#, c-format
msgid "Rendered all audio in track '%s'"
-msgstr "å¨é³è½¨ '%s'ä¸çææå·²æ¸²æçé³é¢"
+msgstr "已渲æé³è½¨'%s'çææé³é¢"
-#: ../src/Menus.cpp:3178
-#, fuzzy
+#: Menus.cpp:4313
msgid "Render"
msgstr "渲æ"
-#: ../src/Menus.cpp:3183
+#: Menus.cpp:4318
#, c-format
msgid "Mixed and rendered %d tracks into one new stereo track"
-msgstr "å·²ç»å° %d è½¨éæ··é³å¹¶æ¸²æè³ä¸ä¸ªæ°çç«ä½å£°é³è½¨"
+msgstr "å·²ç»å° %d ä¸ªè½¨éæ··é³å¹¶æ¸²æè³ä¸ä¸ªæ°çç«ä½å£°é³è½¨"
-#: ../src/Menus.cpp:3186
+#: Menus.cpp:4321
#, c-format
msgid "Mixed and rendered %d tracks into one new mono track"
-msgstr "å·²ç»å° %d è½¨éæ··é³å¹¶æ¸²æè³ä¸ä¸ªæ°çå声éé³è½¨"
+msgstr "å·²ç»å° %d ä¸ªè½¨éæ··é³å¹¶æ¸²æè³ä¸ä¸ªæ°çå声éé³è½¨"
-#: Menus.cpp:658 Menus.cpp:3760 Mix.cpp:119
-#, fuzzy
+#: Menus.cpp:4323 Mix.cpp:121
msgid "&Mix and Render"
-msgstr "æ··é³å¹¶æ¸²æ"
+msgstr "æ··é³å¹¶æ¸²æ(&M)"
-#: ../src/Menus.cpp:3298
+#: Menus.cpp:4453
msgid "Aligned with zero"
msgstr "å·²ä¸é¶åº§æ 对é½"
-#: ../src/Menus.cpp:3302
+#: Menus.cpp:4457
msgid "Aligned cursor"
-msgstr "已对é½ç游æ "
+msgstr "已对é½çå
æ "
-#: ../src/Menus.cpp:3306
+#: Menus.cpp:4461
msgid "Aligned with selection start"
msgstr "å·²ä¸é段ç头é¨å¯¹é½"
-#: ../src/Menus.cpp:3310
+#: Menus.cpp:4465
msgid "Aligned with selection end"
msgstr "å·²ä¸é段çå°¾é¨å¯¹é½"
-#: ../src/Menus.cpp:3314
+#: Menus.cpp:4469
msgid "Aligned end with cursor"
-msgstr "ç»æç¹å·²ä¸æ¸¸æ 对é½"
+msgstr "ç»æç¹å·²ä¸å
æ 对é½"
-#: ../src/Menus.cpp:3318
+#: Menus.cpp:4473
msgid "Aligned end with selection start"
msgstr "ç»æç¹å·²ä¸é段ç头é¨å¯¹é½"
-#: ../src/Menus.cpp:3322
+#: Menus.cpp:4477
msgid "Aligned end with selection end"
msgstr "ç»æç¹å·²ä¸é段çå°¾é¨å¯¹é½"
-#: ../src/Menus.cpp:3326
+#: Menus.cpp:4481
msgid "Aligned"
msgstr "已对é½"
-#: ../src/Menus.cpp:3359
+#: Menus.cpp:4514
msgid "Align"
msgstr "对é½"
-#: Menus.cpp:4550
+#: Menus.cpp:4599
msgid "Sync MIDI with Audio"
-msgstr ""
+msgstr "MIDIä¸é³é¢åæ¥"
-#: Menus.cpp:4554
+#: Menus.cpp:4603
msgid "Alignment completed."
-msgstr ""
+msgstr "对é½å®æ"
-#: ../src/Menus.cpp:3383
+#: Menus.cpp:4614
msgid "Created new audio track"
msgstr "æ°å»ºé³è½¨"
-#: ../src/Menus.cpp:3383
-#: ../src/Menus.cpp:3407
-#: ../src/Menus.cpp:3423
-#: ../src/Menus.cpp:3459
+#: Menus.cpp:4614 Menus.cpp:4637 Menus.cpp:4652 Menus.cpp:4672
msgid "New Track"
-msgstr "æ°å»ºè½¨é"
+msgstr "æ°è½¨é"
-#: ../src/Menus.cpp:3407
+#: Menus.cpp:4637
msgid "Created new stereo audio track"
msgstr "æ°å»ºç«ä½å£°é³è½¨"
-#: ../src/Menus.cpp:3423
+#: Menus.cpp:4652
msgid "Created new label track"
msgstr "æ°å»ºæ ç¾è½¨"
-#: ../src/Menus.cpp:3448
+#: Menus.cpp:4661
msgid "The version of Audacity you are using does not support multiple time tracks."
msgstr "æ¨ä½¿ç¨çAudacityçæ¬ä¸æ¯æå¤ä¸ªæ¶é´è½¨ã"
-#: ../src/Menus.cpp:3459
+#: Menus.cpp:4672
msgid "Created new time track"
msgstr "æ°å»ºæ¶é´è½¨"
-#: ../src/Menus.cpp:3495
+#: Menus.cpp:4727
msgid "Added label"
-msgstr "å·²å çæ é¢"
+msgstr "å·²å çæ ç¾"
-#: Menus.cpp:4119
+#: Menus.cpp:4762
msgid "Edited labels"
-msgstr ""
+msgstr "ç¼è¾æ ç¾"
-#: ../src/Menus.cpp:3538
+#: Menus.cpp:4789
msgid "Save CleanSpeech Preset File As:"
msgstr "å°'æ¸
æ°è¯é³'é¢ç½®æä»¶å¦å为ï¼"
-#: ../src/Menus.cpp:3542
-#: ../src/Menus.cpp:3625
+#: Menus.cpp:4793
msgid "CleanSpeech Presets (*.csp)|*.csp"
-msgstr "'æ¸
æ°è¯é³'é¢ç½®æä»¶(*.csp)|*.csp"
+msgstr "'æ¸
æ°è¯é³'é¢ç½®(*.csp)|*.csp"
-#: ../src/Menus.cpp:3549
-#: ../src/export/Export.cpp:188
+#: Menus.cpp:4800 export/Export.cpp:611
msgid "Sorry, pathnames longer than 256 characters not supported."
msgstr "æ±æï¼è·¯å¾åä¸è½è¶
è¿256个å符ã"
-#: ../src/Menus.cpp:3595
+#: Menus.cpp:4846
msgid "Problem encountered exporting presets."
-msgstr "导åºé¢ç½®æä»¶æ¶åºäºé®é¢ã"
+msgstr "导åºé¢ç½®æä»¶æ¶éå°äºé®é¢ã"
-#: ../src/Menus.cpp:3596
-#: ../src/export/Export.cpp:124
+#: Menus.cpp:4847 export/Export.cpp:473
msgid "Unable to export"
msgstr "æ æ³å¯¼åº"
-#: ../src/Menus.cpp:3797
+#: Menus.cpp:5031
msgid "Remove Track"
msgstr "å é¤è½¨é"
-#: ../src/Menus.cpp:3797
+#: Menus.cpp:5031
msgid "Removed audio track(s)"
msgstr "å é¤é³è½¨"
-#: Menus.cpp:4480 Menus.cpp:4499
+#: Menus.cpp:5188 Menus.cpp:5243 export/ExportFFmpeg.cpp:715
+#: export/ExportMP3.cpp:1780
msgid "Resample"
-msgstr ""
+msgstr "ééæ ·"
-#: Menus.cpp:5159 TrackPanel.cpp:6361
+#: Menus.cpp:5208 TrackPanel.cpp:6400
msgid "New sample rate (Hz):"
-msgstr ""
+msgstr "æ°éæ ·ç(Hz)ï¼"
-#: Menus.cpp:4486
+#: Menus.cpp:5232 TrackPanel.cpp:6424
msgid "The entered value is invalid"
-msgstr ""
+msgstr "è¾å
¥ç弿 æ"
-#: Menus.cpp:4497
+#: Menus.cpp:5241
#, c-format
msgid "Resampling track %d"
-msgstr ""
+msgstr "ééæ ·è½¨é %d"
-#: Menus.cpp:4508
+#: Menus.cpp:5250
msgid "Resample Track"
-msgstr ""
+msgstr "ééæ ·è½¨é"
-#: Menus.cpp:4508
+#: Menus.cpp:5250
msgid "Resampled audio track(s)"
-msgstr ""
+msgstr "ééæ ·é³è½¨"
-#: ../src/Mix.cpp:81
-#: ../src/Mix.cpp:89
+#: Mix.cpp:95 Mix.cpp:102
msgid "Mix"
msgstr "æ··é³"
-#: ../src/Mix.cpp:133
-#, fuzzy
+#: Mix.cpp:122
msgid "Mixing and rendering tracks"
-msgstr "åæè½¨é"
+msgstr "æ··é³å¹¶æ¸²æè½¨é"
-#: ../src/NoteTrack.cpp:30
+#: NoteTrack.cpp:43
msgid "Note Track"
msgstr "注解轨é"
-#: ../src/Printing.cpp:181
+#: Printing.cpp:192
msgid "There was a problem printing."
msgstr "æå°æ¶åºéã"
-#: ../src/Printing.cpp:182
+#: Printing.cpp:193
msgid "Print"
msgstr "æå°"
-#: ../src/Project.cpp:489
-#, fuzzy
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr "é夿è¿çææ"
+
+#: Project.cpp:710
msgid "Main Mix"
msgstr "主混é³"
-#: Project.cpp:693
+#: Project.cpp:834
#, c-format
msgid "Welcome to Audacity version %s"
-msgstr ""
+msgstr "æ¬¢è¿æ¥çAudacity çæ¬ %s"
-#: Project.cpp:831
+#: Project.cpp:994
msgid "(Recovered)"
-msgstr ""
+msgstr "ï¼å·²æ¢å¤çï¼"
-#: ../src/ControlToolBar.cpp:518
-#: ../src/ControlToolBar.cpp:526
-#: ../src/Project.cpp:1818
-#: ../src/TrackPanel.cpp:816
+#: Menus.cpp:1000
msgid "Record"
-msgstr "å½é³"
+msgstr "å½å¶"
-#: ../src/Project.cpp:1818
-#: ../src/TrackPanel.cpp:816
+#: Project.cpp:1583 TrackPanel.cpp:793
msgid "Recorded Audio"
msgstr "å½å¶çé³é¢"
-#: ../src/Project.cpp:1836
+#: Project.cpp:1601
msgid "Save changes before closing?"
msgstr "å¨å
³éä¹åä¿åä¿®æ¹ï¼"
-#: Project.cpp:1570
-msgid "\n"
+#: Project.cpp:1604
+msgid ""
+"\n"
"If saved, the project will have no tracks.\n"
"\n"
"To save any previously open tracks:\n"
"Cancel, Edit > Undo until all tracks\n"
"are open, then File > Save Project."
msgstr ""
+"\n"
+"妿ä¿åäºï¼è¿ä¸ªå·¥ç¨å°æ²¡æè½¨éã\n"
+"è¦ä¿åä¹åæå¼ç轨éï¼\n"
+"åæ¶ï¼ç¼è¾ -> æ¤é å°ææç轨é\n"
+"齿å¼ï¼ç¶åæä»¶ -> ä¿åå·¥ç¨ã"
-#: ../src/Project.cpp:1837
+#: Project.cpp:1607
msgid "Save changes?"
msgstr "ä¿åä¿®æ¹ï¼"
-#: Project.cpp:1684
-msgid "All files|*.*|All supported files|"
-msgstr ""
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
+msgstr "æææä»¶|*|æææ¯æçæä»¶|"
-#: ../src/Menus.cpp:2975
-#: ../src/Project.cpp:1863
+#: Project.cpp:1842
msgid "Select one or more audio files..."
msgstr "éæ©ä¸ä¸ªæå¤ä¸ªé³é¢æä»¶..."
-#: Project.cpp:1736
+#: Project.cpp:1869
msgid "Audacity projects|*.aup|"
-msgstr ""
+msgstr "Audacity å·¥ç¨|*.aup|"
-#: Project.cpp:1885 Project.cpp:2307
+#: Project.cpp:1928 Project.cpp:2350
#, c-format
-msgid "This file was saved by Audacity %s, a much\n"
+msgid ""
+"This file was saved by Audacity %s, a much\n"
"older version. The format has changed.\n"
"\n"
"Audacity could corrupt the file in opening\n"
@@ -2896,83 +2921,119 @@ msgid "This file was saved by Audacity %s, a much\n"
"\n"
"Open this file now?"
msgstr ""
+"该æä»¶æ¯ç¨ Audacity %s ä¸ä¸ªè¾æ©\n"
+"ççæ¬ä¿åçãæ ¼å¼å·²ç»æ¹åäºã\n"
+"\n"
+"Audacity 卿弿件æ¯å¯è½æå\n"
+"å®ãæä»¥ä½ å¿
é¡»å
å¤ä»½å®\n"
+"\n"
+"ç°å¨æå¼è¯¥æä»¶?"
-#: Project.cpp:1886
+#: Project.cpp:1929
msgid "1.0 or earlier"
-msgstr ""
+msgstr "1.0 ææ´æ©ç"
-#: ../src/Project.cpp:2149
+#: Project.cpp:1935 Project.cpp:2362
msgid "Opening old project file"
-msgstr "æå¼å·¥ç¨æä»¶"
+msgstr "æå¼æ§å·¥ç¨æä»¶"
-#: ../src/Project.cpp:1941
-#: ../src/Project.cpp:1949
+#: Project.cpp:2073
+msgid ""
+"You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+"ä½ æ£æå¼ä¸ä¸ªèªå¨å建çå¤ä»½æä»¶ã\n"
+"è¿æ ·åä¼å¯è½å¯¼è´ä¸¥éçæ°æ®ä¸¢å¤±ã\n"
+"\n"
+"请æå¼å®é
çAudacityå·¥ç¨æä»¶ã"
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr "æ£æµå°å¤ä»½æä»¶"
+
+#: Project.cpp:1961 Project.cpp:1969
msgid "Error opening file"
msgstr "æå¼æä»¶é误"
-#: ../src/Project.cpp:1955
+#: Project.cpp:1975
#, c-format
-msgid "File may be invalid or corrupted: \n"
+msgid ""
+"File may be invalid or corrupted: \n"
"%s"
-msgstr "æä»¶å¯è½æ ææå·²è¢«ç ´å: \n"
+msgstr ""
+"æä»¶å¯è½æ ææå·²è¢«ç ´åï¼ \n"
"%s"
-#: ../src/Project.cpp:1956
+#: Project.cpp:1976
msgid "Error opening file or project"
msgstr "æå¼æä»¶æå·¥ç¨æ¶åºé"
-#: ../src/Project.cpp:1972
+#: Project.cpp:1996
msgid "Audacity was unable to convert an Audacity 1.0 project to the new project format."
msgstr "Audacity 1.0æ ¼å¼çå·¥ç¨æä»¶ä¸è½è½¬æ¢ä¸ºæ°çå·¥ç¨æ ¼å¼ã"
-#: Project.cpp:1706
+#: Project.cpp:2099
msgid "Could not remove old auto save file"
-msgstr ""
+msgstr "ä¸è½å 餿§çèªå¨ä¿åæä»¶"
-#: Project.cpp:1708
+#: Project.cpp:2101
msgid "Project was recovered"
-msgstr ""
+msgstr "å·¥ç¨å·²æ¢å¤"
-#: Project.cpp:1708
+#: Project.cpp:2101
msgid "Recover"
-msgstr ""
+msgstr "æ¢å¤"
-#: ../src/Project.cpp:2049
+#: Project.cpp:2130
msgid "Project checker repaired file"
msgstr "å·¥ç¨æ£æ¥å¨ä¿®å¤çæä»¶"
-#: ../src/Project.cpp:2049
+#: Project.cpp:2130 effects/Repair.h:29
msgid "Repair"
msgstr "ä¿®å¤"
-#: ../src/Project.cpp:2095
+#: Project.cpp:2276
#, c-format
msgid "Couldn't find the project data folder: \"%s\""
msgstr "æ¾ä¸å°å·¥ç¨æ°æ®ç®å½ï¼\"%s\""
-#: ../src/Project.cpp:2133
+#: Project.cpp:2319
#, c-format
-msgid "This file was saved using Audacity %s.\n"
+msgid ""
+"This file was saved using Audacity %s.\n"
"You are using Audacity %s - you need to upgrade to\n"
"a newer version to open this file."
-msgstr "æ¤æä»¶ä½¿ç¨Audacity %sä¿åã\n"
+msgstr ""
+"æ¤æä»¶ä½¿ç¨Audacity %sä¿åã\n"
"æ¨ç®å使ç¨çæ¯Audacity %s - éè¦å级è³\n"
"æ°çæ¬æè½æå¼è¯¥æä»¶ã"
-#: ../src/Project.cpp:2137
+#: Project.cpp:2323
msgid "Can't open project file"
msgstr "ä¸è½æå¼å·¥ç¨æä»¶"
-#: Project.cpp:2314
+#: Project.cpp:2484
#, c-format
-msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
+msgid ""
+"This file was saved by Audacity %s.\n"
+"\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
"Open this file now?"
msgstr ""
+"该æä»¶å·²Audacity %s ä¿åã\n"
+"\n"
+"Audacityå¯ä»¥æå¼åä¿åè¿ä¸ªæä»¶ï¼ä½ä»¥è¿ä¸ªçæ¬ä¿å\n"
+"ä¼ä½¿1.2ç以åççæ¬æ æ³æå¼å®ã\n"
+"\n"
+"ç°å¨æå¼è¿ä¸ªæä»¶åï¼"
#: Project.cpp:2537
-msgid "Your project is now empty.\n"
+msgid ""
+"Your project is now empty.\n"
"If saved, the project will have no tracks.\n"
"\n"
"To save any previously open tracks:\n"
@@ -2981,55 +3042,67 @@ msgid "Your project is now empty.\n"
"\n"
"Save anyway?"
msgstr ""
+"ä½ çå·¥ç¨ç°å¨æ¯ç©ºçã\n"
+"妿ä¿åäºï¼è¿ä¸ªå·¥ç¨å°æ²¡æè½¨éã\n"
+"\n"
+"è¦ä¿åä¹åæå¼ç轨éï¼\n"
+"åæ¶ï¼ç¼è¾ -> æ¤é å°ææç轨é\n"
+"齿å¼ï¼ç¶åæä»¶ -> ä¿åå·¥ç¨ã\n"
+"\n"
+"ä»ç¶è¦ä¿ååï¼"
#: Project.cpp:2538
msgid "Warning empty project"
-msgstr ""
+msgstr "è¦å空Audacityå·¥ç¨"
-#: Project.cpp:2591
+#: Project.cpp:2792
#, c-format
-msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+msgid ""
+"Could not save project. Perhaps %s \n"
+"is not writable or the disk is full."
msgstr ""
+"ä¸è½ä¿åå·¥ç¨ãå¯è½%sä¸å¯åï¼\n"
+"æè
ç£ç已满ã"
-#: ../src/Project.cpp:2326
-#: ../src/Project.cpp:2338
+#: Project.cpp:2649 Project.cpp:2664
msgid "Error saving project"
msgstr "ä¿åAudacityå·¥ç¨åºé"
-#: ../src/Project.cpp:2393
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr "ä¸è½åå°æä»¶ \"%s\": %s"
+
+#: Project.cpp:2732
#, c-format
msgid "Saved %s"
-msgstr "%så·²å"
+msgstr "%så·²ä¿å"
-#: ../src/Project.cpp:2475
+#: Project.cpp:2853
#, c-format
msgid "Imported '%s'"
msgstr "'%s'已导å
¥"
-#: ../src/Project.cpp:2429
-#: ../src/Project.cpp:2476
-#: ../src/import/ImportPCM.cpp:410
-#: ../src/import/ImportPCM.cpp:495
-#: ../src/import/ImportRaw.cpp:436
+#: Project.cpp:2854
msgid "Import"
msgstr "导å
¥"
-#: ../src/Project.cpp:2517
+#: Project.cpp:2887 Project.cpp:2895
msgid "Error importing"
msgstr "æä»¶å¯¼å
¥é误"
-#: ../src/Project.cpp:2556
+#: Project.cpp:2929
msgid "Save Speech As:"
msgstr "è¯é³å¦å为ï¼"
-#: Project.cpp:2621
-#, fuzzy
+#: Project.cpp:2931
msgid "Windows PCM Audio file (*.wav)|*.wav"
msgstr "Windows PCMé³é¢æä»¶(*.wav)|*.wav"
-#: Project.cpp:2894
-msgid "Audacity compressed project files (.aup) save your work in a smaller, compressed (.ogg) format. \n"
+#: Project.cpp:2938
+msgid ""
+"Audacity compressed project files (.aup) save your work in a smaller, compressed (.ogg) format. \n"
"Compressed project files are a good way to transmit your project online, because they are much smaller. \n"
"To open a compressed project takes longer than usual, as it imports each compressed track. \n"
"\n"
@@ -3037,3828 +3110,4199 @@ msgid "Audacity compressed project files (.aup) save your work in a smaller, com
"When you want to save a file that can be opened by other programs, select one of the\n"
"Export commands."
msgstr ""
+"Audacityå·¥ç¨æä»¶(.aup)è½ä¿åæ¨çå·¥ä½å°ä¸ä¸ªæ´å°çãå缩ç (.ogg)æ ¼å¼ï¼\n"
+"å缩çå·¥ç¨æä»¶æ¯å¨çº¿ä¼ éå·¥ç¨çå¥½æ¹æ³ï¼å 为ä»ä»¬æ´å°\n"
+"æå¼ä¸ä¸ªå缩çå·¥ç¨ä¸æ¯é常æ
åµä¸ï¼æå¼æ¯ä¸ä¸ªå缩çé³è½¨ï¼æ´èæ¶ï¼\n"
+"\n"
+"ä½å¤§å¤æ°çå
¶å®è½¯ä»¶æ æ³æå¼Audacityå·¥ç¨æä»¶ã\n"
+"\n"
+"彿¨éè¦ä¿å为å
¶å®è½¯ä»¶è½æå¼çæä»¶æ¶ï¼è¯·éæ©\n"
+"'导åº'(Export)å½ä»¤ã"
-#: Project.cpp:2897
-msgid "You are saving an Audacity project file (.aup).\n"
+#: Project.cpp:2941
+msgid ""
+"You are saving an Audacity project file (.aup).\n"
"\n"
"Saving a project creates a file that only Audacity can open.\n"
"\n"
"To save an audio file for other programs, use one of the \"File > Export\" commands.\n"
msgstr ""
+"ä½ æ£è¦ä¿åä¸ä¸ªAudacityå·¥ç¨æä»¶ (.aup)ã\n"
+"\n"
+"ä¿åå·¥ç¨ä¼å建ä¸ä¸ªåªæAudacityå¯ä»¥æå¼çæä»¶ã\n"
+"\n"
+"è¦ä¿å为å
¶å®è½¯ä»¶è½æå¼çæä»¶ï¼è¯·éæ©æä»¶ -> 导åºå½ä»¤ã\n"
-#: ../src/Project.cpp:2567
+#: Project.cpp:2945
msgid "Audacity projects (*.aup)|*.aup"
msgstr "Audacityå·¥ç¨(*.aup)|*.aup"
-#: ../src/Project.cpp:2604
+#: Project.cpp:2999
msgid "Created new project"
msgstr "æ°å»ºå·¥ç¨"
-#: ../src/Project.cpp:2721
+#: Project.cpp:3158
#, c-format
msgid "Deleted %.2f seconds at t=%.2f"
-msgstr "å é¤ %.2f ç§ (ä½ç½® t=%.2f)"
+msgstr "å é¤ %.2f ç§ (å¨ t=%.2f)"
-#: ../src/Project.cpp:2724
-#: ../src/UploadDialog.cpp:508
-#: ../src/UploadDialog.cpp:642
+#: Project.cpp:3161 effects/Equalization.cpp:1276
+#: effects/Equalization.cpp:2607
msgid "Delete"
-msgstr "åé¤"
+msgstr "å é¤"
-#: ../src/Project.cpp:2904
+#: Project.cpp:3355
#, c-format
msgid "Disk space remains for recording %d hours and %d minutes."
-msgstr "ç£ç空é´è¿å¤ä¾å½é³: %d æ¶ %d åã"
+msgstr "ç£ç空é´è¿å¤å½å¶ %d æ¶ %d åã"
-#: ../src/Project.cpp:2907
+#: Project.cpp:3358
#, c-format
msgid "Disk space remains for recording 1 hour and %d minutes."
-msgstr "ç£ç空é´è¿å¤ä¾å½é³: 1 æ¶ %d åã"
+msgstr "ç£ç空é´è¿å¤å¤å½å¶ 1 æ¶ %d åã"
-#: ../src/Project.cpp:2910
+#: Project.cpp:3361
#, c-format
msgid "Disk space remains for recording %d minutes."
-msgstr "ç£ç空é´è¿å¤è®°å½ %d åéã"
+msgstr "ç£ç空é´è¿å¤å½å¶ %d åéã"
-#: ../src/Project.cpp:2913
+#: Project.cpp:3364
#, c-format
msgid "Disk space remains for recording %d seconds."
-msgstr "ç£ç空é´è¿å¤è®°å½ %d ç§éã"
+msgstr "ç£ç空é´è¿å¤å½å¶ %d ç§éã"
-#: ../src/Project.cpp:2916
+#: Project.cpp:3367
msgid "Out of disk space"
msgstr "ç£ç空é´ä¸è¶³"
-#: Project.cpp:3336
+#: Project.cpp:3380
#, c-format
msgid "Import(s) complete. Running %d on-demand waveform calculations. Overall %2.0f%% complete."
-msgstr ""
+msgstr "导å
¥å®æãæ£è¿è¡ %d æè¦æ±ç波形计ç®ãæ»ä½ %2.0f%% 宿ã"
-#: Project.cpp:3339
+#: Project.cpp:3383
#, c-format
msgid "Import complete. Running an on-demand waveform calculation. %2.0f%% complete."
-msgstr ""
+msgstr "导å
¥å®æãæ£è¿è¡æè¦æ±ç波形计ç®ã%2.0f%% 宿ã"
-#: Project.cpp:3027
+#: Project.cpp:3661
msgid "Could not remove old autosave file: "
-msgstr ""
+msgstr "ä¸è½å 餿§çèªå¨ä¿åæä»¶ï¼"
-#: Project.cpp:3068
+#: Project.cpp:3702
msgid "New Project"
-msgstr ""
+msgstr "æ°å·¥ç¨"
-#: Project.cpp:3081
+#: Project.cpp:3715
msgid "Error writing autosave file"
-msgstr ""
+msgstr "åèªå¨ä¿åæä»¶æ¶é误"
-#: Project.cpp:3102
+#: Project.cpp:3740
msgid "Could not create autosave file: "
-msgstr ""
+msgstr "ä¸è½å建èªå¨ä¿åæä»¶ï¼"
-#: Project.cpp:3385
+#: Project.cpp:3766
#, c-format
msgid "Actual Rate: %d"
-msgstr ""
+msgstr "å®é
éæ ·çï¼ %d"
-#: ../src/Resample.cpp:35
+#: Resample.cpp:42
msgid "Libresample by Dominic Mazzoni and Julius Smith"
-msgstr "Libresample(ééæ ·åºï¼Dominic MazzoniåJulius Smithæä¾)"
+msgstr "Libresampleï¼Dominic MazzoniåJulius Smithæä¾"
-#: ../src/Resample.cpp:46
+#: Resample.cpp:53
msgid "High-quality Sinc Interpolation"
-msgstr "é«åè´¨Sincå
æç®æ³"
+msgstr "é«è´¨éSincå
æç®æ³"
-#: ../src/Resample.cpp:48
+#: Resample.cpp:55
msgid "Fast Sinc Interpolation"
msgstr "å¿«éSincå
æç®æ³"
-#: ../src/Resample.cpp:118
+#: Resample.cpp:125
msgid "Libsamplerate by Erik de Castro Lopo"
-msgstr "Libsamplerate(éæ ·çåºï¼Erik de Castro Lopoæä¾)"
+msgstr "Libsamplerateï¼Erik de Castro Lopoæä¾"
-#: ../src/Resample.cpp:211
+#: Resample.cpp:218
#, c-format
msgid "Libsamplerate error: %d\n"
-msgstr "Libsamplerate é误: %d\n"
+msgstr "Libsamplerate éè¯¯ï¼ %d\n"
-#: ../src/Resample.cpp:233
-#: ../src/Resample.cpp:243
+#: Resample.cpp:240 Resample.cpp:250
msgid "Resampling disabled."
-msgstr "ééæ ·è¢«ç¦ç¨ã"
+msgstr "ééæ ·å
³éã"
#. i18n-hint: Audio data bit depth (precison): 16-bit integers
#: SampleFormat.cpp:66
msgid "16-bit PCM"
-msgstr ""
+msgstr "16ä½ PCM"
#. i18n-hint: Audio data bit depth (precison): 24-bit integers
#: SampleFormat.cpp:69
msgid "24-bit PCM"
-msgstr ""
+msgstr "24ä½ PCM"
#. i18n-hint: Audio data bit depth (precison): 32-bit floating point
#: SampleFormat.cpp:72
msgid "32-bit float"
-msgstr ""
+msgstr "32ä½ æµ®ç¹"
+
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr "æå±å¸§"
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr "éæ©æä»¶ä¿åçä½ç½®"
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr "ä¿åå¾çå°ï¼"
+
+#: export/ExportMultiple.cpp:242 prefs/DirectoriesPrefs.cpp:92
+msgid "Choose..."
+msgstr "éæ©..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr "ææ´ä¸ªçªå£æå±å¹"
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr "缩å°"
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr "æ¾å¤§"
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr "èè²èæ¯"
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr "ç½è²èæ¯"
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr "åªæçªå£"
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr "ææ´ä¸ªçªå£"
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr "æçªå£ï¼"
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr "æå
¨å±å¹"
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr "ç5ç§åææåé¢ççªå£/å¯¹è¯æ¡"
+
+#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
+msgid "false"
+msgstr "å¦"
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr "æé¨åçå·¥ç¨çªå£"
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr "ææçå·¥å
·æ "
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr "éæ©æ "
+
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr "å·¥å
·"
+
+#: effects/Contrast.cpp:452 toolbars/ControlToolBar.cpp:83
+msgid "Control"
+msgstr "æ§å¶"
+
+#: effects/LoadEffects.cpp:115 toolbars/MixerToolBar.cpp:60
+msgid "Mixer"
+msgstr "æ··é³å¨"
+
+#: toolbars/MeterToolBar.cpp:50
+msgid "Meter"
+msgstr "æç¤ºè¡¨"
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr "ç¼è¾"
+
+#: prefs/AudioIOPrefs.cpp:122 prefs/AudioIOPrefs.cpp:140
+#: prefs/MidiIOPrefs.cpp:118 prefs/MidiIOPrefs.cpp:136
+#: toolbars/DeviceToolBar.cpp:57
+msgid "Device"
+msgstr "设å¤"
+
+#: toolbars/TranscriptionToolBar.cpp:84
+msgid "Transcription"
+msgstr "转å½"
+
+#: TrackPanel.cpp:454 TrackPanel.cpp:455
+msgid "Track Panel"
+msgstr "轨é颿¿"
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr "æ å°º"
+
+#: export/ExportMultiple.cpp:285 export/ExportMultiple.cpp:287
+msgid "Tracks"
+msgstr "轨é"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr "第ä¸è½¨"
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr "第äºè½¨"
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr "缩æ¾"
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr "ä¸ç§"
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr "åç§"
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr "ä¸å"
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr "äºå"
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr "ä¸å°æ¶"
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr "ç轨é"
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr "ä¸è½¨é"
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr "é¿è½¨é"
#: Screenshot.cpp:384
msgid "Saved "
-msgstr ""
+msgstr "å·²ä¿å"
#: Screenshot.cpp:387
msgid "Error trying to save file: "
-msgstr ""
+msgstr "ä¿åæä»¶æ¶é误ï¼"
-#: Sequence.cpp:732 Sequence.cpp:742 Sequence.cpp:749
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr "éæ©ä¿åæåå¾åçä½å"
+
+#: Sequence.cpp:804 Sequence.cpp:814 Sequence.cpp:821
msgid "Gap detected in project file\n"
-msgstr ""
+msgstr "å¨å·¥ç¨æä»¶ä¸åç°é´é\n"
-#: effects/Effect.cpp:254 effects/Effect.cpp:370 effects/Phaser.cpp:595
-#: effects/Wahwah.cpp:582 effects/audiounits/AudioUnitEffect.cpp:852
+#: ShuttleGui.cpp:1972 effects/Effect.cpp:417
+#: effects/audiounits/AudioUnitEffect.cpp:877
msgid "Pre&view"
-msgstr ""
+msgstr "é¢è§(&V)"
-#: effects/nyquist/Nyquist.cpp:826 effects/nyquist/Nyquist.cpp:990
+#: ShuttleGui.cpp:1979
msgid "&Debug"
-msgstr ""
+msgstr "&Debug"
#: SoundActivatedRecord.cpp:36
msgid "Sound Activated Record"
-msgstr ""
+msgstr "声é³å¯å¨å½å¶"
#: SoundActivatedRecord.cpp:58
msgid "Activation level (dB):"
-msgstr ""
+msgstr "å¯å¨å£°å¼ºçº§(dB)ï¼"
-#: SplashDialog.cpp:58
+#: SplashDialog.cpp:60
msgid "&Welcome to Audacity!"
-msgstr ""
+msgstr "æ¬¢è¿æ¥å°Audacity!(&W)"
-#: SplashDialog.cpp:110
+#: SplashDialog.cpp:112
msgid "Don't show this again at start up"
-msgstr ""
+msgstr "å¯å¨æ¯ä¸è¦åæ¾ç¤ºè¿ä¸ªäº"
-#: Tags.cpp:621
+#: Tags.cpp:628
msgid "Artist Name"
-msgstr ""
+msgstr "èºæ¯å®¶åå"
-#: Tags.cpp:622
+#: Tags.cpp:629
msgid "Track Title"
-msgstr ""
+msgstr "è½¨éæ é¢"
-#: Tags.cpp:623
+#: Tags.cpp:630
msgid "Album Title"
-msgstr ""
+msgstr "ä¸è¾æ é¢"
-#: Tags.cpp:953
-#, fuzzy
+#: Tags.cpp:631
msgid "Track Number"
-msgstr "轨éç¼å·:"
+msgstr "轨éç¼å·"
-#: ../src/Tags.cpp:484
+#: Tags.cpp:632
msgid "Year"
msgstr "å¹´"
-#: Tags.cpp:979
+#: Tags.cpp:633
msgid "Genre"
-msgstr ""
+msgstr "æµæ´¾"
-#: ../src/Tags.cpp:494
-#: ../src/prefs/MousePrefs.cpp:87
+#: Tags.cpp:634 prefs/MousePrefs.cpp:96
msgid "Comments"
msgstr "注é"
#: Tags.cpp:777
msgid "Use arrow keys (or RETURN key after editing) to navigate fields."
-msgstr ""
+msgstr "使ç¨ç®å¤´é®(æç¼è¾åå车)忢åºåã"
-#: Tags.cpp:769
+#: Tags.cpp:800
msgid "Tag Name"
-msgstr ""
+msgstr "æ ç¾åå"
-#: Tags.cpp:770
+#: Tags.cpp:801
msgid "Tag Value"
-msgstr ""
+msgstr "æ ç¾å¼"
-#: prefs/KeyConfigPrefs.cpp:114
+#: Tags.cpp:816 prefs/KeyConfigPrefs.cpp:130
msgid "&Clear"
-msgstr ""
+msgstr "æ¸
é¤(&C)"
-#: Tags.cpp:791
+#: Tags.cpp:822
msgid "Genres"
-msgstr ""
+msgstr "æµæ´¾"
#: Tags.cpp:826
msgid "E&dit..."
-msgstr ""
+msgstr "ç¼è¾...(&D)"
#: Tags.cpp:827
msgid "Rese&t..."
-msgstr ""
+msgstr "é设...(&T)"
-#: Tags.cpp:1070
+#: Tags.cpp:832
msgid "Template"
-msgstr ""
+msgstr "模æ¿"
-#: Tags.cpp:1073 prefs/KeyConfigPrefs.cpp:124
+#: Tags.cpp:836 prefs/KeyConfigPrefs.cpp:142
msgid "&Load..."
-msgstr ""
+msgstr "è½½å
¥...(&L)"
-#: Tags.cpp:1078 prefs/KeyConfigPrefs.cpp:123
+#: Tags.cpp:837 prefs/KeyConfigPrefs.cpp:141
msgid "&Save..."
-msgstr ""
+msgstr "ä¿å...(&S)"
-#: Tags.cpp:808 Tags.cpp:1434 Tags.cpp:1962
+#: Tags.cpp:839
msgid "S&et Default"
-msgstr ""
+msgstr "设置é»è®¤(&E)"
-#: Tags.cpp:958 Tags.cpp:1597 Tags.cpp:2326
+#: Tags.cpp:989
msgid "Edit Genres"
-msgstr ""
+msgstr "ç¼è¾æµæ´¾"
-#: Tags.cpp:991 Tags.cpp:1003 Tags.cpp:1019 Tags.cpp:1032 Tags.cpp:1635
-#: Tags.cpp:1647 Tags.cpp:1663 Tags.cpp:1676 Tags.cpp:2369 Tags.cpp:2381
-#: Tags.cpp:2397 Tags.cpp:2410
+#: Tags.cpp:1022 Tags.cpp:1034 Tags.cpp:1049 Tags.cpp:1062
msgid "Reset Genres"
-msgstr ""
+msgstr "éè®¾æµæ´¾"
-#: Tags.cpp:991 Tags.cpp:1032 Tags.cpp:1635 Tags.cpp:1676 Tags.cpp:2369
-#: Tags.cpp:2410
+#: Tags.cpp:1022 Tags.cpp:1062
msgid "Unable to save genre file."
-msgstr ""
+msgstr "ä¸è½ä¿åæµæ´¾æä»¶ã"
-#: Tags.cpp:1002 Tags.cpp:1646 Tags.cpp:2380
+#: Tags.cpp:1033
msgid "Are you sure you want to reset the genre list to defaults?"
-msgstr ""
+msgstr "ä½ ç¡®å®è¦éè®¾æµæ´¾å表为é»è®¤å¼ï¼"
-#: Tags.cpp:1019 Tags.cpp:1663 Tags.cpp:2397
+#: Tags.cpp:1049
msgid "Unable to open genre file."
-msgstr ""
+msgstr "ä¸è½æå¼æµæ´¾æä»¶ã"
#: Tags.cpp:1084
msgid "Load Metadata As:"
-msgstr ""
+msgstr "è½½å
¥å
ä¿¡æ¯ä¸ºï¼"
-#: Tags.cpp:1079 Tags.cpp:1730 Tags.cpp:2453
+#: Tags.cpp:1109
msgid "Error loading metadata"
-msgstr ""
+msgstr "è½½å
¥å
ä¿¡æ¯é误"
-#: Tags.cpp:1054 Tags.cpp:1108 Tags.cpp:1709 Tags.cpp:1745 Tags.cpp:2432
-#: Tags.cpp:2468
+#: Tags.cpp:1138
msgid "Save Metadata As:"
-msgstr ""
+msgstr "ä¿åå
ä¿¡æ¯ä¸ºï¼"
-#: Theme.cpp:629
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr "ä¿åæ ç¾æä»¶åºé"
+
+#: Theme.cpp:638
#, c-format
-msgid "Audacity could not write file:\n"
+msgid ""
+"Audacity could not write file:\n"
" %s."
msgstr ""
+"Audacityä¸è½åæä»¶ï¼\n"
+" %s"
-#: Theme.cpp:647
+#: Theme.cpp:656
#, c-format
-msgid "Audacity could not open file:\n"
+msgid ""
+"Audacity could not open file:\n"
" %s\n"
"for writing."
msgstr ""
+"Audacityä¸è½ä¸ºåæå¼æä»¶ï¼\n"
+" %s\n"
+"ã"
-#: Theme.cpp:655
+#: Theme.cpp:664
#, c-format
-msgid "Audacity could not write images to file:\n"
+msgid ""
+"Audacity could not write images to file:\n"
" %s."
msgstr ""
+"Audacityä¸è½åæä»¶å°æä»¶ï¼\n"
+" %s."
-#: Theme.cpp:790
+#: Theme.cpp:799
#, c-format
-msgid "Audacity could not find file:\n"
+msgid ""
+"Audacity could not find file:\n"
" %s.\n"
"Theme not loaded."
msgstr ""
+"Audacity ä¸è½æ¾å°æä»¶ï¼\n"
+" %s.\n"
+"䏻颿²¡è½½å
¥ã"
-#: Theme.cpp:798 Theme.cpp:886
+#: Theme.cpp:807 Theme.cpp:896
#, c-format
-msgid "Audacity could not load file:\n"
+msgid ""
+"Audacity could not load file:\n"
" %s.\n"
"Bad png format perhaps?"
msgstr ""
+"Audacityä¸è½è½½å
¥æä»¶ï¼\n"
+" %s.\n"
+"ä¹è®¸pngæ ¼å¼é误ï¼"
-#: Theme.cpp:814
-msgid "Audacity could not read its default theme.\n"
+#: Theme.cpp:823
+msgid ""
+"Audacity could not read its default theme.\n"
"Please report the problem."
msgstr ""
+"Audacityä¸è½è¯»é»è®¤ä¸»é¢.\n"
+"请å
æ¬è¿ä¸ªé®é¢ã"
-#: Theme.cpp:908
+#: Theme.cpp:918
#, c-format
-msgid "None of the expected theme component files\n"
+msgid ""
+"None of the expected theme component files\n"
" were found in:\n"
" %s."
msgstr ""
+"%s䏿¾ä¸å°ææçä»»ä½ä¸»é¢å
ä»¶æä»¶\n"
+"ã"
-#: Theme.cpp:932
+#: Theme.cpp:942 effects/NoiseRemoval.cpp:173
#, c-format
-msgid "Could not create directory:\n"
+msgid ""
+"Could not create directory:\n"
" %s"
msgstr ""
+"ä¸è½ä¼ å¥ç®å½ï¼\n"
+" %s"
-#: Theme.cpp:953
+#: Theme.cpp:963
#, c-format
-msgid "Audacity could not save file:\n"
+msgid ""
+"Audacity could not save file:\n"
" %s"
msgstr ""
+"Audacityä¸è½ä¿åæä»¶ï¼\n"
+" %s"
-#: Theme.cpp:965
+#: Theme.cpp:975
#, c-format
-msgid "All required files in:\n"
+msgid ""
+"All required files in:\n"
" %s\n"
"were already present."
msgstr ""
+"å¨%sä¸éæ±çæä»¶\n"
+"å·²ç»åå¨äºã"
-#: SmartRecordDialog.cpp:285
+#: TimeDialog.cpp:53 TimeDialog.cpp:64 TimerRecordDialog.cpp:228
+#: TimerRecordDialog.cpp:355 TimerRecordDialog.cpp:359 effects/DtmfGen.cpp:481
+#: effects/Noise.cpp:243 effects/Noise.cpp:259 effects/ToneGen.cpp:323
+#: effects/ToneGen.cpp:335 effects/ToneGen.cpp:367 effects/ToneGen.cpp:379
msgid "Duration"
-msgstr ""
+msgstr "æç»æ¶é´"
-#: SmartRecordDialog.cpp:68
+#: TimerRecordDialog.cpp:68
msgid "Audacity Timer Record"
-msgstr ""
+msgstr "Audacity 宿¶å½å¶"
+
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr "æç»æ¶é´ä¸ºé¶ãä»ä¹é½ä¸ä¼è¢«å½å¶ã"
-#: SmartRecordDialog.cpp:223
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr "æç»æ¶é´é误"
+
+#: TimerRecordDialog.cpp:225
msgid "Recording start"
-msgstr ""
+msgstr "å½å¶å¼å§"
-#: SmartRecordDialog.cpp:224
+#: TimerRecordDialog.cpp:226
msgid "Recording end"
-msgstr ""
+msgstr "å½å¶ç»æ"
-#: TimerRecordDialog.cpp:230
+#: TimerRecordDialog.cpp:231
msgid "Audacity Timer Record Progress"
-msgstr ""
+msgstr "Audacity计æ¶å½å¶è¿åº¦"
-#: SmartRecordDialog.cpp:251
+#: TimerRecordDialog.cpp:317
msgid "Start Date and Time"
-msgstr ""
+msgstr "å¼å§æ¥æåæ¶é´"
-#: TimerRecordDialog.cpp:274
+#: TimerRecordDialog.cpp:324
msgid "Start Date"
-msgstr ""
+msgstr "å¼å§æ¥æ"
-#: SmartRecordDialog.cpp:268
+#: TimerRecordDialog.cpp:336
msgid "End Date and Time"
-msgstr ""
+msgstr "ç»ææ¥æåæ¶é´"
-#: TimerRecordDialog.cpp:294
+#: TimerRecordDialog.cpp:344
msgid "End Date"
-msgstr ""
+msgstr "ç»ææ¥æ"
#. i18n-hint: A time specification like "Sunday 28th October 2007 15:16:17 GMT"
#. * but hopefully translated by wxwidgets will be inserted into this
-#: SmartRecordDialog.cpp:380
+#: TimerRecordDialog.cpp:431
#, c-format
msgid "Waiting to start recording at %s.\n"
-msgstr ""
+msgstr "çå¾
å¨%så¼å§çå½å¶ã\n"
-#: TimerRecordDialog.cpp:382
+#: TimerRecordDialog.cpp:432
msgid "Audacity Timer Record - Waiting for Start"
-msgstr ""
+msgstr "Audacity宿¶å½å¶ ï¼ çå¾
å¼å§"
-#: TrackPanel.cpp:452 TrackPanel.cpp:453
-msgid "Track Panel"
-msgstr ""
-
-#: ../src/TrackPanel.cpp:377
-#: ../src/prefs/FileFormatPrefs.cpp:105
-#: ../src/prefs/QualityPrefs.cpp:103
+#: TrackPanel.cpp:538 prefs/QualityPrefs.cpp:97
msgid "Other..."
msgstr "å
¶å®..."
-#: ../src/TrackPanel.cpp:385
-#: ../src/TrackPanel.cpp:406
-#: ../src/TrackPanel.cpp:415
-#: ../src/TrackPanel.cpp:423
+#: TrackPanel.cpp:546 TrackPanel.cpp:568 TrackPanel.cpp:577 TrackPanel.cpp:585
+#: TrackPanel.cpp:5790
msgid "Name..."
msgstr "åç§°..."
-#: ../src/TrackPanel.cpp:387
-#: ../src/TrackPanel.cpp:408
-#: ../src/TrackPanel.cpp:419
-#: ../src/TrackPanel.cpp:425
+#: TrackPanel.cpp:548 TrackPanel.cpp:570 TrackPanel.cpp:581 TrackPanel.cpp:587
+#: TrackPanel.cpp:5794
msgid "Move Track Up"
msgstr "åä¸ç§»å¨è½¨é"
-#: ../src/TrackPanel.cpp:388
-#: ../src/TrackPanel.cpp:409
-#: ../src/TrackPanel.cpp:420
-#: ../src/TrackPanel.cpp:426
+#: TrackPanel.cpp:549 TrackPanel.cpp:571 TrackPanel.cpp:582 TrackPanel.cpp:588
+#: TrackPanel.cpp:5795
msgid "Move Track Down"
msgstr "åä¸ç§»å¨è½¨é"
-#: ../src/TrackPanel.cpp:390
+#: TrackPanel.cpp:551 effects/ToneGen.cpp:319 prefs/GUIPrefs.cpp:154
msgid "Waveform"
msgstr "波形"
-#: ../src/TrackPanel.cpp:391
+#: TrackPanel.cpp:552 prefs/GUIPrefs.cpp:155
msgid "Waveform (dB)"
msgstr "波形 (dB)"
-#: TrackPanel.cpp:557 prefs/GUIPrefs.cpp:157
+#: TrackPanel.cpp:554 prefs/GUIPrefs.cpp:157
msgid "Spectrum log(f)"
-msgstr ""
+msgstr "é¢è°± log(f)"
-#: ../src/TrackPanel.cpp:393
+#. i18n-hint: short form of 'logarithm'
+#: TrackPanel.cpp:555 prefs/GUIPrefs.cpp:158
msgid "Pitch (EAC)"
msgstr "é³é« (EAC)"
-#: ../src/TrackPanel.cpp:395
+#: TrackPanel.cpp:557 TrackPanel.cpp:6135
msgid "Mono"
msgstr "å声é"
-#: ../src/TrackPanel.cpp:396
+#: TrackPanel.cpp:558 TrackPanel.cpp:6134
msgid "Left Channel"
msgstr "左声é"
-#: ../src/TrackPanel.cpp:397
+#: TrackPanel.cpp:559 TrackPanel.cpp:6134
msgid "Right Channel"
msgstr "å³å£°é"
-#: ../src/TrackPanel.cpp:398
+#: TrackPanel.cpp:560
msgid "Make Stereo Track"
msgstr "å¶ä½ç«ä½å£°é³è½¨"
-#: ../src/TrackPanel.cpp:399
+#: TrackPanel.cpp:561
msgid "Split Stereo Track"
msgstr "åå²ç«ä½å£°é³è½¨"
-#: ../src/TrackPanel.cpp:401
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr "åå²ç«ä½å£°å°å声"
+
+#: TrackPanel.cpp:563
msgid "Set Sample Format"
msgstr "设å®éæ ·æ ¼å¼"
-#: ../src/TrackPanel.cpp:403
-#: ../src/TrackPanel.cpp:5059
+#: TrackPanel.cpp:565 TrackPanel.cpp:6380
msgid "Set Rate"
msgstr "设å®éæ ·ç"
-#: ../src/TrackPanel.cpp:411
+#: TrackPanel.cpp:573
msgid "Up Octave"
msgstr "é«å
«åº¦é³é¶"
-#: ../src/TrackPanel.cpp:412
+#: TrackPanel.cpp:574
msgid "Down Octave"
msgstr "ä½å
«é³é¶"
-#: ../src/TrackPanel.cpp:417
+#: TrackPanel.cpp:579 TrackPanel.cpp:5792
msgid "Font..."
msgstr "åä½..."
-#: ../src/TrackPanel.cpp:428
+#: TrackPanel.cpp:590
msgid "Set Range..."
msgstr "设å®èå´..."
-#: ../src/EditToolBar.cpp:148
-#: ../src/TrackPanel.cpp:432
+#: TrackPanel.cpp:594 toolbars/EditToolBar.cpp:135
msgid "Copy"
-msgstr "æ·è´"
+msgstr "å¤å¶"
-#: ../src/TrackPanel.cpp:1121
+#: TrackPanel.cpp:1263
msgid "Click to vertically zoom in, Shift-click to zoom out, Drag to create a particular zoom region."
-msgstr "åå»å¨åç´æ¹åæ¾å¤§ï¼æä½Shifté®åå»ç¼©å°ï¼ææ³å建ä¸ä¸ªç¹å®ç缩æ¾åºåã"
+msgstr "åå»å¨åç´æ¹åæ¾å¤§ï¼æä½Shifté®åå»ç¼©å°ï¼ææ½å建ä¸ä¸ªç¹å®ç缩æ¾åºåã"
-#: ../src/TrackPanel.cpp:1126
+#: TrackPanel.cpp:1268
msgid "Drag the label vertically to change the order of the tracks."
msgstr "åç´æå¨æ ç¾æ¹å轨éç顺åºã"
-#: ../src/TrackPanel.cpp:1146
+#: TrackPanel.cpp:1288
msgid "Click and drag to adjust relative size of stereo tracks."
msgstr "åå»å¹¶æå¨è°æ´ç«ä½å£°é³è½¨çç¸å¯¾å¤§å°"
-#: ../src/TrackPanel.cpp:1149
+#: TrackPanel.cpp:1291
msgid "Click and drag to resize the track."
msgstr "åå»å¹¶æå¨è°æ´è½¨éç大å°ã"
-#: ../src/TrackPanel.cpp:1182
+#: TrackPanel.cpp:1322
msgid "Drag one or more label boundaries"
msgstr "æå¨å个æå¤ä¸ªæ ç¾è¾¹ç"
-#: ../src/TrackPanel.cpp:1183
+#: TrackPanel.cpp:1323
msgid "Drag label boundary"
msgstr "æå¨æ ç¾è¾¹ç"
#. i18n-hint: This string is for the Mac OS, which uses Command-, as the shortcut for Preferences
-#: ../src/TrackPanel.cpp:1199
+#: TrackPanel.cpp:1339
msgid "Multi-Tool Mode: Cmd-, for Mouse and Keyboard Preferences"
-msgstr "å¤éå·¥å
·æ¨¡å¼: Cmd-, é¼ æ åé®ç设å®"
+msgstr "å¤éå·¥å
·æ¨¡å¼ï¼ Cmd-ï¼ é¼ æ åé®çå好é项"
#. i18n-hint: This string is for Windows and Linux, which uses Control-P as the shortcut for Preferences
-#: ../src/TrackPanel.cpp:1202
+#: TrackPanel.cpp:1342
msgid "Multi-Tool Mode: Ctrl-P for Mouse and Keyboard Preferences"
-msgstr "å¤éå·¥å
·æ¨¡å¼: Ctrl-P, é¼ æ åé®ç设å®"
+msgstr "å¤éå·¥å
·æ¨¡å¼ï¼ Ctrl-Pï¼ é¼ æ åé®çå好é项"
-#: ../src/TrackPanel.cpp:1222
+#: TrackPanel.cpp:1388
msgid "Click and drag to move left selection boundary."
msgstr "åå»å¹¶æå¨é段ç左边çã"
-#: ../src/TrackPanel.cpp:1227
+#: TrackPanel.cpp:1393
msgid "Click and drag to move right selection boundary."
msgstr "åå»å¹¶æå¨é段çå³è¾¹çã"
-#: ../src/TrackPanel.cpp:3261
+#: TrackPanel.cpp:1735 TrackPanel.cpp:3964 TrackPanel.cpp:3996
+#: TrackPanel.cpp:4260 TrackPanel.cpp:6529 TrackPanel.cpp:6549
msgid "Modified Label"
msgstr "已修æ¹çæ ç¾"
-#: ../src/TrackPanel.cpp:3262
+#: TrackPanel.cpp:1736 TrackPanel.cpp:3965 TrackPanel.cpp:3997
+#: TrackPanel.cpp:4261 TrackPanel.cpp:6530 TrackPanel.cpp:6550
msgid "Label Edit"
msgstr "æ ç¾ç¼è¾"
-#: ../src/TrackPanel.cpp:1634
+#: TrackPanel.cpp:1976
msgid "Adjusted envelope."
-msgstr "è°æ´è¿çå
ç»"
+msgstr "è°æ´è¿çå
ç»."
-#: ../src/TrackPanel.cpp:1635
-#: ../src/prefs/MousePrefs.cpp:102
+#: TrackPanel.cpp:1977 prefs/MousePrefs.cpp:115
msgid "Envelope"
msgstr "å
ç»çº¿"
-#: ../src/TrackPanel.cpp:1762
+#: TrackPanel.cpp:2128
msgid "Moved clip to another track"
msgstr "å°åªè¾ç§»è³å¦ä¸è½¨é"
-#: ../src/TrackPanel.cpp:1766
+#: TrackPanel.cpp:2132
msgid "left"
msgstr "å·¦"
-#: ../src/TrackPanel.cpp:1766
+#: TrackPanel.cpp:2132
msgid "right"
msgstr "å³"
-#: ../src/TrackPanel.cpp:1767
+#. i18n-hint: %s is a direction like left or right
+#: TrackPanel.cpp:2134
#, c-format
msgid "Time shifted tracks/clips %s %.02f seconds"
msgstr "æ¶é´ç§»å¨è½¨é/åªè¾ %s %.02f ç§"
-#: ../src/prefs/MousePrefs.cpp:98
-#: ../src/prefs/MousePrefs.cpp:99
-#: ../src/prefs/MousePrefs.cpp:100
+#: TrackPanel.cpp:2138 prefs/MousePrefs.cpp:111 prefs/MousePrefs.cpp:112
+#: prefs/MousePrefs.cpp:113
msgid "Time-Shift"
msgstr "æ¶é´-ç§»å¨(Time-Shift)"
-#: TrackPanel.cpp:2916
+#: TrackPanel.cpp:2921
msgid "To use Draw, choose 'Waveform' in the Track Drop-down Menu."
-msgstr ""
+msgstr "è¦ä½¿ç¨'ç»å¶'ï¼å¨è½¨é䏿¥èåä¸éæ©'波形'ã"
-#: TrackPanel.cpp:2933
+#: TrackPanel.cpp:2938
msgid "To use Draw, zoom in further until you can see the individual samples."
-msgstr ""
+msgstr "è¦ä½¿ç¨'ç»å¶'ï¼è¯·æ¾å¤§å°æ¨è½çæ¸
æ¥åä¸ªéæ ·ç¹ã"
-#: ../src/TrackPanel.cpp:2565
+#: TrackPanel.cpp:3210
msgid "Moved Sample"
msgstr "已移å¨éæ ·"
-#: ../src/TrackPanel.cpp:2566
+#: TrackPanel.cpp:3211
msgid "Sample Edit"
msgstr "éæ ·ç¼è¾"
-#: ../src/TrackPanel.cpp:2652
+#: TrackPanel.cpp:3310
#, c-format
msgid "Removed track '%s.'"
msgstr "å é¤é³è½¨'%s'"
-#: ../src/TrackPanel.cpp:2654
+#: TrackPanel.cpp:3312
msgid "Track Remove"
msgstr "å é¤è½¨é"
-#: ../src/TrackPanel.cpp:2765
+#: TrackPanel.cpp:3453
msgid "Moved gain slider"
-msgstr "已移å¨é³éæ»æ"
+msgstr "已移å¨é³éå¢å¼ºæ»æ"
-#: ../src/TrackPanel.cpp:2765
+#: TrackPanel.cpp:3453
msgid "Moved pan slider"
-msgstr "已移å¨å¹³è¡¡æ»æ"
+msgstr "已移å¨å·¦å³å£°éå¹³è¡¡æ»æ"
#. i18n-hint: Title of the Gain slider, used to adjust the volume
-#: ../src/TrackPanel.cpp:2766
-#: ../src/TrackPanel.cpp:4518
-#: ../src/TrackPanel.cpp:5677
+#: TrackPanel.cpp:3454 TrackPanel.cpp:5700 TrackPanel.cpp:7253
msgid "Gain"
-msgstr "é³é"
+msgstr "é³éå¢å¼º"
#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: ../src/TrackPanel.cpp:2766
-#: ../src/TrackPanel.cpp:4453
-#: ../src/TrackPanel.cpp:5684
+#: TrackPanel.cpp:3454 TrackPanel.cpp:5638 TrackPanel.cpp:7260
msgid "Pan"
-msgstr "平衡"
+msgstr "å·¦å³å£°é平衡"
-#: ../src/TrackPanel.cpp:5124
-#: ../src/effects/ChangePitch.cpp:283
+#: TrackPanel.cpp:3581 TrackPanel.cpp:6480
msgid "up"
msgstr "åä¸"
-#: ../src/TrackPanel.cpp:5125
-#: ../src/effects/ChangePitch.cpp:283
+#: TrackPanel.cpp:3585 TrackPanel.cpp:6481
msgid "down"
msgstr "åä¸"
-#: ../src/TrackPanel.cpp:5120
+#: TrackPanel.cpp:3592 TrackPanel.cpp:6476
#, c-format
msgid "Moved '%s' %s"
msgstr "å·²ç§»å¨ '%s' %s"
-#: ../src/TrackPanel.cpp:5126
+#: TrackPanel.cpp:3595 TrackPanel.cpp:6482
msgid "Move Track"
msgstr "ç§»å¨è½¨é"
-#: ../src/TrackPanel.cpp:3469
+#: TrackPanel.cpp:4160
msgid "Expand"
msgstr "æ©å±"
-#: ../src/TrackPanel.cpp:3469
+#: TrackPanel.cpp:4160
msgid "Expanded Cut Line"
msgstr "å·²å±å¼çåªå线"
-#: TrackPanel.cpp:3973
+#: TrackPanel.cpp:4169
msgid "Merge"
-msgstr ""
+msgstr "åå¹¶"
-#: TrackPanel.cpp:3973
+#: TrackPanel.cpp:4169
msgid "Merged Clips"
-msgstr ""
+msgstr "å·²åå¹¶çåªè¾"
-#: ../src/TrackPanel.cpp:3489
+#: TrackPanel.cpp:4181
msgid "Removed Cut Line"
msgstr "ç§»é¤åªå线"
-#: ../src/TrackPanel.cpp:4453
+#: TrackPanel.cpp:5638
msgid "Adjusted Pan"
-msgstr "è°æ´è¿çå·¦å³å¹³è¡¡"
+msgstr "å·²è°æ´çå·¦å³å¹³è¡¡"
-#: ../src/TrackPanel.cpp:4518
+#: TrackPanel.cpp:5700
msgid "Adjusted gain"
-msgstr "è°æ´è¿çé³é"
+msgstr "è°æ´è¿çé³éå¢å¼º"
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr ""
-
-#: TrackPanel.cpp:5428
+#: TrackPanel.cpp:5962
msgid "Can't delete track with active audio"
-msgstr ""
+msgstr "ä¸è½å 餿´»å¨é³é¢è½¨é"
-#: ../src/TrackPanel.cpp:4828
+#: TrackPanel.cpp:6115
msgid "Stereo, "
msgstr "ç«ä½å£°ï¼"
-#: ../src/TrackPanel.cpp:4831
+#: TrackPanel.cpp:6118
msgid "Mono, "
-msgstr "å声é,"
+msgstr "å声éï¼"
-#: ../src/TrackPanel.cpp:4833
+#: TrackPanel.cpp:6120
msgid "Left, "
-msgstr "å·¦,"
+msgstr "å·¦ï¼"
-#: ../src/TrackPanel.cpp:4835
+#: TrackPanel.cpp:6122
msgid "Right, "
-msgstr "å³,"
+msgstr "å³ï¼"
-#: ../src/TrackPanel.cpp:4857
-#: ../src/TrackPanel.cpp:4966
+#: TrackPanel.cpp:6144 TrackPanel.cpp:6290
#, c-format
msgid "Changed '%s' to %s"
msgstr "已忴ç'%s' è³ %s"
-#: ../src/TrackPanel.cpp:4862
+#: TrackPanel.cpp:6149
msgid "Channel"
msgstr "声é"
-#: ../src/TrackPanel.cpp:4872
+#: TrackPanel.cpp:6170
#, c-format
msgid "Split stereo track '%s'"
msgstr "åå²ç«ä½å£°è½¨é'%s'"
-#: ../src/TrackPanel.cpp:4892
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr "åå²ç«ä½å£°å°å声 '%s'"
+
+#: TrackPanel.cpp:6208
#, c-format
msgid "Made '%s' a stereo track"
msgstr "å°'%s'å¶ä½ä¸ºç«ä½å£°é³è½¨"
-#: ../src/TrackPanel.cpp:4895
+#: TrackPanel.cpp:6211
msgid "Make Stereo"
msgstr "å¶ä½ç«ä½å£°"
-#: ../src/TrackPanel.cpp:4930
+#: TrackPanel.cpp:6254
#, c-format
msgid "Changed '%s' to %d Hz"
msgstr "已忴ç'%s' è³ %d Hz"
-#: ../src/TrackPanel.cpp:4932
+#: TrackPanel.cpp:6256
msgid "Rate Change"
msgstr "æ¹åéæ ·ç"
-#: ../src/TrackPanel.cpp:4970
+#: TrackPanel.cpp:6294
msgid "Format Change"
msgstr "æ ¼å¼åæ´"
-#: ../src/TrackPanel.cpp:5088
+#: TrackPanel.cpp:6444
msgid "Change lower speed limit (%) to:"
-msgstr "æä½éçéå¶(%)å为:"
+msgstr "æä½éçéå¶(%)å为ï¼"
-#: ../src/TrackPanel.cpp:5089
-#: ../src/TrackPanel.cpp:5090
+#: TrackPanel.cpp:6445 TrackPanel.cpp:6446
msgid "Lower speed limit"
msgstr "æä½éçéå¶"
-#: ../src/TrackPanel.cpp:5095
+#: TrackPanel.cpp:6451
msgid "Change upper speed limit (%) to:"
-msgstr "æé«éçéå¶(%)å为:"
+msgstr "æé«éçéå¶(%)å为ï¼"
-#: ../src/TrackPanel.cpp:5096
-#: ../src/TrackPanel.cpp:5097
+#: TrackPanel.cpp:6452 TrackPanel.cpp:6453
msgid "Upper speed limit"
msgstr "æé«éçéå¶"
-#: ../src/TrackPanel.cpp:5105
+#: TrackPanel.cpp:6461
#, c-format
msgid "Set range to '%d' - '%d'"
msgstr "å°èå´è®¾å®ä¸º '%d' - '%d'"
-#: ../src/TrackPanel.cpp:5108
+#: TrackPanel.cpp:6464
msgid "Set Range"
msgstr "设å®èå´"
-#: ../src/TrackPanel.cpp:5153
+#: TrackPanel.cpp:6511
msgid "Change track name to:"
-msgstr "轨éåç§°å为:"
+msgstr "轨éåç§°å为ï¼"
-#: ../src/TrackPanel.cpp:5154
+#: TrackPanel.cpp:6512
msgid "Track Name"
msgstr "轨éå"
-#: ../src/TrackPanel.cpp:5157
+#: TrackPanel.cpp:6515
#, c-format
msgid "Renamed '%s' to '%s'"
msgstr "å°'%s'æ¹å为'%s'"
-#: ../src/TrackPanel.cpp:5160
+#: TrackPanel.cpp:6518
msgid "Name Change"
msgstr "æ¹ååç§°"
-#: ../src/TrackPanel.cpp:5215
+#: TrackPanel.cpp:6619
msgid "Label Track Font"
msgstr "æ ç¾è½¨çåä½"
-#: TrackPanel.cpp:6227
+#: TrackPanel.cpp:6631 TrackPanel.cpp:6637
msgid "Face name"
-msgstr ""
+msgstr "åä½å"
-#: TrackPanel.cpp:6236
+#: TrackPanel.cpp:6641 TrackPanel.cpp:6648
msgid "Face size"
-msgstr ""
+msgstr "åä½å¤§å°"
+
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr "ç«ä½å£°, 999999Hz"
-#: ../src/TrackPanel.cpp:5612
+#: TrackPanel.cpp:7180
msgid "Mute"
msgstr "éé³"
-#: ../src/TrackPanel.cpp:5612
+#: TrackPanel.cpp:7180
msgid "Solo"
msgstr "ç¬å¥"
-#: TrackPanelAx.cpp:266
+#: TrackPanelAx.cpp:273
msgid "TrackView"
-msgstr ""
+msgstr "轨éè§å¾"
-#: TrackPanelAx.cpp:274
+#: TrackPanelAx.cpp:281
msgid "Track Accessible out of sync"
-msgstr ""
+msgstr "轨éååæ æ³åæ¥"
-#: TrackPanelAx.cpp:282
+#: TrackPanelAx.cpp:289
#, c-format
msgid "Track %d"
-msgstr ""
+msgstr "轨é %d"
-#: TrackPanelAx.cpp:288
+#: TrackPanelAx.cpp:295
msgid " Mute On"
-msgstr ""
+msgstr "é鳿å¼"
-#: TrackPanelAx.cpp:293
+#: TrackPanelAx.cpp:300
msgid " Solo On"
-msgstr ""
+msgstr "ç¬å¥æå¼"
-#: TrackPanelAx.cpp:297
+#: TrackPanelAx.cpp:304
msgid " Select On"
-msgstr ""
+msgstr "éæ©æå¼"
-#: ../src/VoiceKey.cpp:69
-#: ../src/VoiceKey.cpp:219
-#: ../src/VoiceKey.cpp:357
-#: ../src/VoiceKey.cpp:498
-#, fuzzy
+#: VoiceKey.cpp:88 VoiceKey.cpp:238 VoiceKey.cpp:376 VoiceKey.cpp:517
msgid "Selection is too small to use voice key."
msgstr "éæ®µå¤ªçï¼æ æ³ä½¿ç¨è¯é³åºè°ã"
-#: ../src/VoiceKey.cpp:824
+#: VoiceKey.cpp:843
msgid "Calibration Results\n"
msgstr "æ ¡åç»æ\n"
-#: ../src/VoiceKey.cpp:825
-#, fuzzy, c-format
+#: VoiceKey.cpp:844
+#, c-format
msgid "Energy -- mean: %1.4f sd: (%1.4f)\n"
-msgstr "è½é -- åå¼: %1.4f æ åå·®: (%1.4f)\n"
+msgstr "è½é -- åå¼ï¼ %1.4f æ åå·®ï¼ (%1.4f)\n"
-#: ../src/VoiceKey.cpp:826
-#, fuzzy, c-format
+#: VoiceKey.cpp:845
+#, c-format
msgid "Sign Changes -- mean: %1.4f sd: (%1.4f)\n"
-msgstr "æ¹åææ§ -- åå¼: %1.4f æ åå·®: (%1.4f)\n"
+msgstr "ç¬¦å·æ¹å -- åå¼ï¼ %1.4f æ åå·®ï¼ (%1.4f)\n"
-#: ../src/VoiceKey.cpp:827
-#, fuzzy, c-format
+#: VoiceKey.cpp:846
+#, c-format
msgid "Direction Changes -- mean: %1.4f sd: (%1.4f)\n"
-msgstr "æ¹åæ¹å -- åå¼: %1.4f æ åå·®: (%1.4f)\n"
+msgstr "æ¹åæ¹å -- åå¼ï¼ %1.4f æ åå·®ï¼ (%1.4f)\n"
-#: ../src/WaveTrack.cpp:63
+#: WaveTrack.cpp:88
msgid "Audio Track"
msgstr "é³è½¨"
-#: WaveTrack.cpp:515 WaveTrack.cpp:534
+#: WaveTrack.cpp:597 WaveTrack.cpp:616 WaveTrack.cpp:1057 WaveTrack.cpp:1076
msgid "There is not enough room available to paste the selection"
-msgstr ""
+msgstr "没æè¶³å¤çç©ºé´æ¥ç²è´´é段"
-#: WaveTrack.cpp:1583
+#: WaveTrack.cpp:2086
msgid "There is not enough room available to expand the cut line"
-msgstr ""
+msgstr "没æè¶³å¤çç©ºé´æ¥æ©å±åªå线"
-#: ../src/commands/CommandManager.cpp:324
+#: commands/CommandManager.cpp:518
#, c-format
msgid "Plugins 1 to %i"
msgstr "æä»¶1 è³ %i"
-#: ../src/commands/CommandManager.cpp:338
+#: commands/CommandManager.cpp:532
#, c-format
msgid "Plugins %i to %i"
msgstr "æä»¶%i è³ %i"
-#: commands/CommandManager.cpp:857
-msgid "Disallowed for some reason. Try selecting some audio first?"
+#: commands/CommandManager.cpp:923
+msgid ""
+"There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
msgstr ""
+"ä½ çæåçå¨ä½æé®é¢ï¼å¦æä½ è®¤ä¸ºè¿æ¯ä¸ä¸ªBUGï¼\n"
+"请精确å°åè¯æä»¬å®å¨ææ ·çæ
åµä¸åçã"
-#: commands/CommandManager.cpp:724
-msgid "You can only do this when playing and recording are\n"
+#: commands/CommandManager.cpp:861
+msgid ""
+"You can only do this when playing and recording are\n"
" stopped. [Pausing is not sufficient.]"
msgstr ""
+"ä½ åªè½å¨æ²¡æææ¾åå½å¶æ¶è¿æ ·å\n"
+"[æåè¿ä¸å¤]"
-#: commands/CommandManager.cpp:726
-msgid "You must first select some stereo audio for this\n"
+#: commands/CommandManager.cpp:863
+msgid ""
+"You must first select some stereo audio for this\n"
" to use. [You can't use this with mono.]"
msgstr ""
+"ä½ å¿
é¡»å
éæ©ä¸äºç«ä½å£°é³é¢\n"
+"[å声éçä¸è½ä½¿ç¨å®]"
-#: commands/CommandManager.cpp:728
+#: commands/CommandManager.cpp:865
msgid "You must first select some audio for this to use."
-msgstr ""
+msgstr "ä½ å¿
é¡»å
éæ©ä¸äºé³é¢æè½ä½¿ç¨å®ã"
-#: commands/CommandManager.cpp:730
-msgid "You must first select some audio for this\n"
+#: commands/CommandManager.cpp:867
+msgid ""
+"You must first select some audio for this\n"
" to use. [Selecting other kinds of track won't work.]"
msgstr ""
+"ä½ å¿
é¡»å
éæ©ä¸äºé³é¢æè½ä½¿ç¨å®ã\n"
+"[éæ©å
¶ä»ç±»åçè½¨éæ²¡æç¨]"
-#: commands/CommandManager.cpp:903
+#: commands/CommandManager.cpp:872
msgid "Disallowed"
-msgstr ""
+msgstr "ä¸å
许"
-#: ../src/commands/CommandManager.cpp:680
+#: commands/CommandManager.cpp:1054
#, c-format
msgid "Loaded %d keyboard shortcuts\n"
-msgstr "已读å%dé®çå¿«æ·æ¹å¼\n"
+msgstr "已读å%dé®çå¿«æ·é®\n"
-#: ../src/commands/CommandManager.cpp:682
+#: commands/CommandManager.cpp:1056
msgid "Loading keyboard shortcuts"
-msgstr "读åé®çå¿«æ·æ¹å¼"
+msgstr "读åé®çå¿«æ·é®"
-#: ../src/effects/Amplify.cpp:41
+#: effects/Amplify.cpp:52
#, c-format
msgid "Applied effect: %s %.1f dB"
-msgstr "åºç¨ææ: %s %.1f dB"
+msgstr "åºç¨ææï¼ %s %.1f dB"
-#: ../src/effects/Amplify.cpp:76
+#: effects/Amplify.cpp:139
msgid "Amplify"
-msgstr "æ¾å¤§"
+msgstr "å¢å¹
"
#: effects/Amplify.cpp:155 effects/Compressor.cpp:476
#: effects/Normalize.cpp:337
msgid "by Dominic Mazzoni"
-msgstr ""
+msgstr "(Dominic Mazzoniæä¾)"
-#: ../src/effects/Amplify.cpp:148
+#: effects/Amplify.cpp:168
msgid "Amplification (dB):"
-msgstr "å¹
度æ¾å¤§(dB):"
+msgstr "å¹
度å¢å (dB)ï¼"
#: effects/Amplify.cpp:183
msgid "Amplification dB"
-msgstr ""
+msgstr "å¹
度å¢å dB"
-#: ../src/effects/Amplify.cpp:168
+#: effects/Amplify.cpp:190
msgid "New Peak Amplitude (dB):"
msgstr "æ°å»ºå³°å¼æ¯å¹
(dB)ï¼"
-#: ../src/effects/Amplify.cpp:180
+#: effects/Amplify.cpp:200
msgid "Allow clipping"
-msgstr "å
许åªè¾"
+msgstr "å
è®¸ç ´é³"
#: effects/Amplify.cpp:222 effects/Amplify.cpp:279 effects/Amplify.cpp:323
msgid "-Infinity"
-msgstr ""
+msgstr "-æ ç©·"
-#: ../src/effects/Amplify.h:46
+#: effects/Amplify.h:37
msgid "Amplify..."
-msgstr "æ¾å¤§..."
+msgstr "å¢å¹
..."
-#: ../src/effects/Amplify.h:50
+#: effects/Amplify.h:51
msgid "Amplifying"
-msgstr "æ£å¨æ¾å¤§"
+msgstr "å¢å¹
ä¸"
#: effects/AutoDuck.cpp:125
msgid "You selected a track which does not contain audio. AutoDuck can only process audio tracks."
-msgstr ""
+msgstr "ä½ éæ©ç轨éä¸å
å«é³é¢ãèªå¨åé¿åªè½å¤çé³è½¨ã"
-#: effects/AutoDuck.cpp:126 effects/AutoDuck.cpp:138 effects/AutoDuck.cpp:451
-#: effects/AutoDuck.cpp:578
+#: effects/AutoDuck.cpp:126 effects/AutoDuck.cpp:138 effects/AutoDuck.cpp:453
+#: effects/AutoDuck.cpp:570
msgid "Auto Duck"
-msgstr ""
+msgstr "èªå¨åé¿"
#: effects/AutoDuck.cpp:137
msgid "Auto Duck needs a control track which must be placed below the selected track(s)."
-msgstr ""
+msgstr "èªå¨åé¿éè¦å¨éæ©è½¨çä¸é¢æä¸æ¡æ§å¶è½¨ã"
-#: effects/AutoDuck.cpp:463
+#: effects/AutoDuck.cpp:465
msgid "Auto Duck by Markus Meyer"
-msgstr ""
+msgstr "èªå¨åé¿(Markus Meyeræä¾)"
-#: effects/AutoDuck.cpp:485
+#: effects/AutoDuck.cpp:487
msgid "Duck amount:"
-msgstr ""
+msgstr "åé¿éï¼"
-#: effects/AutoDuck.cpp:490
+#: effects/AutoDuck.cpp:492
msgid "Maximum pause:"
-msgstr ""
-
-#: ../src/widgets/TimeTextCtrl.cpp:161
+msgstr "æå¤§æåï¼"
+
+#. i18n-hint: Name of time display format that shows time in seconds
+#: effects/AutoDuck.cpp:494 effects/AutoDuck.cpp:499 effects/AutoDuck.cpp:504
+#: effects/AutoDuck.cpp:509 effects/AutoDuck.cpp:514
+#: prefs/AudioIOPrefs.cpp:173 prefs/AudioIOPrefs.cpp:181
+#: prefs/AudioIOPrefs.cpp:183 prefs/AudioIOPrefs.cpp:208
+#: prefs/AudioIOPrefs.cpp:210 prefs/MidiIOPrefs.cpp:161
+#: prefs/MidiIOPrefs.cpp:163 prefs/MidiIOPrefs.cpp:187
+#: prefs/MidiIOPrefs.cpp:189 prefs/MidiIOPrefs.cpp:197
+#: widgets/TimeTextCtrl.cpp:263
msgid "seconds"
msgstr "ç§"
-#: effects/AutoDuck.cpp:495
+#: effects/AutoDuck.cpp:497
msgid "Outer fade down length:"
-msgstr ""
+msgstr "åå¤åå¼±é¿åº¦ï¼"
-#: effects/AutoDuck.cpp:500
+#: effects/AutoDuck.cpp:502
msgid "Outer fade up length:"
-msgstr ""
+msgstr "åå¤å¢å¼ºé¿åº¦ï¼"
-#: effects/AutoDuck.cpp:505
+#: effects/AutoDuck.cpp:507
msgid "Inner fade down length:"
-msgstr ""
+msgstr "åå
åå¼±é¿åº¦ï¼"
-#: effects/AutoDuck.cpp:510
+#: effects/AutoDuck.cpp:512
msgid "Inner fade up length:"
-msgstr ""
+msgstr "åå
å¢å¼ºé¿åº¦ï¼"
-#: effects/AutoDuck.cpp:519 effects/Compressor.cpp:479
-#, fuzzy
+#: effects/AutoDuck.cpp:521 effects/Compressor.cpp:494
msgid "Threshold:"
-msgstr "éå¼:"
+msgstr "éå¼ï¼"
-#: effects/AutoDuck.cpp:578
+#: effects/AutoDuck.cpp:570
msgid "Please enter valid values."
-msgstr ""
+msgstr "请è¾å
¥ææå¼ã"
-#: effects/AutoDuck.cpp:712
+#: effects/AutoDuck.cpp:705
msgid "Preview not available"
-msgstr ""
+msgstr "䏿ä¾é¢è§"
-#: effects/AutoDuck.h:97
+#: effects/AutoDuck.h:98
msgid "Auto Duck..."
-msgstr ""
+msgstr "èªå¨åé¿..."
-#: effects/AutoDuck.h:102
+#: effects/AutoDuck.h:115
msgid "Processing Auto Duck..."
-msgstr ""
+msgstr "èªå¨åé¿å¤çä¸..."
-#: ../src/BatchCommandDialog.cpp:103
-#: ../src/BatchProcessDialog.cpp:87
-#: ../src/LangChoice.cpp:94
-#: ../src/Tags.cpp:740
-#: ../src/effects/Amplify.cpp:202
-#: ../src/effects/AvcCompressor.cpp:723
-#: ../src/effects/BassBoost.cpp:344
-#: ../src/effects/ChangeLength.cpp:176
-#: ../src/effects/ChangePitch.cpp:399
-#: ../src/effects/ChangeSpeed.cpp:386
-#: ../src/effects/ChangeTempo.cpp:292
-#: ../src/effects/Compressor.cpp:484
-#: ../src/effects/Echo.cpp:253
-#: ../src/effects/Equalization.cpp:760
-#: ../src/effects/Filter.cpp:493
-#: ../src/effects/Leveller.cpp:244
-#: ../src/effects/NoiseRemoval.cpp:602
-#: ../src/effects/Normalize.cpp:317
-#: ../src/effects/Phaser.cpp:592
-#: ../src/effects/Repeat.cpp:262
-#: ../src/effects/SpikeCleaner.cpp:174
-#: ../src/effects/TruncSilence.cpp:267
-#: ../src/effects/VST/VSTEffect.cpp:98
-#: ../src/effects/VST/VSTEffect.cpp:455
-#: ../src/effects/Wahwah.cpp:578
-#: ../src/effects/ladspa/LadspaEffect.cpp:499
-#: ../src/effects/nyquist/Nyquist.cpp:751
-#: ../src/effects/nyquist/Nyquist.cpp:897
-#: ../src/effects/nyquist/Nyquist.cpp:963
-#: ../src/prefs/FileFormatPrefs.cpp:470
-#: ../src/prefs/PrefsDialog.cpp:100
-#: ../src/widgets/Warning.cpp:56
+#: effects/AvcCompressor.cpp:738 effects/VST/VSTEffect.cpp:455
+#: effects/audiounits/AudioUnitEffect.cpp:882 effects/nyquist/Nyquist.cpp:1053
+#: widgets/ErrorDialog.cpp:101
msgid "OK"
msgstr "ç¡®å®"
-#: ../src/effects/BassBoost.cpp:41
+#: effects/BassBoost.cpp:52
#, c-format
msgid "Applied effect: %s frequency = %.0f Hz, boost = %.0f dB"
-msgstr "åºç¨ææ: %s é¢ç = %.0f Hz, å¢å¼º = %.0f dB"
+msgstr "åºç¨ææï¼ %s é¢ç = %.0f Hzï¼ å¢å¼º = %.0f dB"
#: effects/BassBoost.cpp:169
msgid "Bass Boost"
-msgstr ""
+msgstr "ä½é³å¢å¼º"
-#: effects/BassBoost.cpp:182
+#: effects/BassBoost.cpp:182 effects/Phaser.cpp:219 effects/Wahwah.cpp:214
msgid "by Nasca Octavian Paul"
-msgstr ""
+msgstr "(Nasca Octavian Paulæä¾)"
-#: ../src/effects/BassBoost.cpp:298
+#: effects/BassBoost.cpp:196 effects/ChangePitch.cpp:322
msgid "Frequency (Hz):"
-msgstr "é¢ç (Hz):"
+msgstr "é¢ç (Hz)ï¼"
#: effects/BassBoost.cpp:205
msgid "Frequency Hertz"
-msgstr ""
+msgstr "é¢ç Hz"
-#: ../src/effects/BassBoost.cpp:314
+#: effects/BassBoost.cpp:209
msgid "Boost (dB):"
-msgstr "å¢å¹
(dB):"
+msgstr "å¢å¹
(dB)ï¼"
#: effects/BassBoost.cpp:218
msgid "Boost dB"
-msgstr ""
+msgstr "å¢å¹
dB"
-#: ../src/effects/BassBoost.h:42
+#: effects/BassBoost.h:35
msgid "BassBoost..."
msgstr "ä½é³å¢å¼º..."
-#: ../src/effects/BassBoost.h:46
+#: effects/BassBoost.h:49
msgid "Boosting Bass Frequencies"
-msgstr "ä½é³é¢ççå¢å¹
"
+msgstr "å¢å¼ºä½é³é¢çä¸"
-#: ../src/effects/ChangeLength.h:26
+#: effects/ChangeLength.h:26
msgid "Change Length..."
msgstr "æ¹åé¿åº¦..."
-#: ../src/effects/ChangeLength.h:30
+#: effects/ChangeLength.h:34
msgid "Changing Length..."
msgstr "æ£å¨æ¹åé¿åº¦..."
-#: ../src/effects/ChangePitch.cpp:56
+#: effects/ChangePitch.cpp:55
#, c-format
msgid "Applied effect: %s %.2f semitones"
-msgstr "åºç¨ææ: %s %.2f (åé³ç¨)"
+msgstr "åºç¨ææï¼ %s %.2f (åé³ç¨)"
-#: ../src/effects/ChangePitch.cpp:119
+#: effects/ChangePitch.cpp:198
msgid "Change Pitch"
msgstr "æ¹åé³é«"
-#: ../src/effects/ChangePitch.cpp:248
+#: effects/ChangePitch.cpp:256
msgid "Change Pitch without Changing Tempo"
-msgstr "ç»´æèæä¸ååæ¶ä¿®æ¹é³é«"
+msgstr "ç»´æèå¥ä¸åï¼æ¹åé³é«"
-#: ../src/effects/ChangePitch.cpp:253
-#: ../src/effects/ChangeSpeed.cpp:294
-#: ../src/effects/ChangeTempo.cpp:172
+#: effects/ChangePitch.cpp:258 effects/ChangeSpeed.cpp:336
+#: effects/ChangeTempo.cpp:176
msgid "by Vaughan Johnson && Dominic Mazzoni"
-msgstr "Vaughan JohnsonåDominic Mazzoniæä¾"
+msgstr "(Vaughan JohnsonåDominic Mazzoniæä¾)"
-#: ../src/effects/ChangePitch.cpp:258
-#: ../src/effects/ChangeTempo.cpp:177
+#: effects/ChangePitch.cpp:260 effects/ChangeTempo.cpp:178
msgid "using SoundTouch, by Olli Parviainen"
msgstr "使ç¨SoundTouch(Olli Parviainenæä¾)"
#: effects/ChangePitch.cpp:269
msgid "Pitch:"
-msgstr ""
+msgstr "é³é«ï¼"
#: effects/ChangePitch.cpp:274
msgid "From:"
-msgstr ""
+msgstr "ä»ï¼"
#: effects/ChangePitch.cpp:275
msgid "From Pitch"
-msgstr ""
+msgstr "ä»é³é«"
#: effects/ChangePitch.cpp:286
msgid "Up"
-msgstr ""
+msgstr "åä¸"
#: effects/ChangePitch.cpp:289
msgid "Down"
-msgstr ""
+msgstr "åä¸"
#: effects/ChangePitch.cpp:299
msgid "To:"
-msgstr ""
+msgstr "å°ï¼"
#: effects/ChangePitch.cpp:300
msgid "To Pitch"
-msgstr ""
+msgstr "å°é³é«"
-#: ../src/effects/ChangePitch.cpp:305
+#: effects/ChangePitch.cpp:311
msgid "Semitones (half-steps):"
-msgstr "åé³ç¨(åé¶):"
+msgstr "åé³ç¨(åé¶)ï¼"
#: effects/ChangePitch.cpp:316
msgid "Semitones in half-steps"
-msgstr ""
+msgstr "åé³ç¨(åé¶)ï¼"
#: effects/ChangePitch.cpp:326 effects/ChangeSpeed.cpp:369
#: effects/ChangeTempo.cpp:209 effects/ChangeTempo.cpp:222
msgid "from"
-msgstr ""
+msgstr "ä»"
#: effects/ChangePitch.cpp:327
msgid "From frequency in hertz"
-msgstr ""
+msgstr "ä»èµ«å
¹é¢ç"
-#: ../src/effects/ChangePitch.cpp:290
-#: ../src/effects/ChangePitch.cpp:336
-#: ../src/effects/ChangeSpeed.cpp:358
-#: ../src/effects/ChangeTempo.cpp:231
-#: ../src/effects/ChangeTempo.cpp:262
+#: effects/ChangePitch.cpp:331 effects/ChangeSpeed.cpp:374
+#: effects/ChangeTempo.cpp:214 effects/ChangeTempo.cpp:227
msgid "to"
msgstr "å°"
#: effects/ChangePitch.cpp:332
msgid "To frequency in seconds"
-msgstr ""
+msgstr "å°ç§é¢ç"
-#: ../src/effects/ChangeLength.cpp:157
-#: ../src/effects/ChangePitch.cpp:359
-#: ../src/effects/ChangeSpeed.cpp:312
-#: ../src/effects/ChangeTempo.cpp:190
+#: effects/ChangePitch.cpp:338 effects/ChangeSpeed.cpp:347
+#: effects/ChangeTempo.cpp:187
msgid "Percent Change:"
-msgstr "æ¹åç¾åæ¯(%):"
+msgstr "æ¹åç¾åæ¯ï¼"
#: effects/ChangePitch.cpp:343 effects/ChangePitch.cpp:356
#: effects/ChangeSpeed.cpp:358 effects/ChangeTempo.cpp:198
msgid "Percent Change"
-msgstr ""
+msgstr "æ¹åç¾åæ¯"
-#: ../src/effects/ChangePitch.h:31
+#: effects/ChangePitch.h:31
msgid "Change Pitch..."
msgstr "æ¹åé³é«..."
-#: ../src/effects/ChangePitch.h:35
+#: effects/ChangePitch.h:46
msgid "Changing Pitch"
-msgstr "æ¹åé³é«"
+msgstr "æ¹åé³é«ä¸"
-#: ../src/effects/ChangeSpeed.cpp:42
-#: ../src/effects/ChangeTempo.cpp:46
+#: effects/ChangeSpeed.cpp:54 effects/ChangeTempo.cpp:55
#, c-format
msgid "Applied effect: %s %.1f%%"
-msgstr "åºç¨ææ: %s %.1f%%"
+msgstr "åºç¨ææï¼ %s %.1f%%"
-#: ../src/effects/ChangeSpeed.cpp:49
+#: effects/ChangeSpeed.cpp:298
msgid "Change Speed"
msgstr "æ¹åéç"
-#. i18n-hint: n/a is an English
-#: ../src/effects/ChangeSpeed.cpp:345
+#. i18n-hint: n/a is an English abbreviation meaning "not applicable"
+#. (in other words, unimportant, not relevant).
+#: effects/ChangeSpeed.cpp:329
msgid "n/a"
msgstr "N/A"
-#: ../src/effects/ChangeSpeed.cpp:289
+#: effects/ChangeSpeed.cpp:334
msgid "Change Speed, affecting both Tempo and Pitch"
-msgstr "æ¹åéç(åæ¶å½±åèæåé³é«)"
+msgstr "æ¹åéç(åæ¶å½±åèå¥åé³é«)"
-#: ../src/effects/ChangeSpeed.cpp:299
+#: effects/ChangeSpeed.cpp:338
msgid "using SampleRate, by Erik de Castro Lopo"
msgstr "使ç¨SampleRate(Erik de Castro Lopoæä¾)"
#: effects/ChangeSpeed.cpp:366
msgid "Standard Vinyl RPM:"
-msgstr ""
+msgstr "æ åå±ç转é(RPM)ï¼"
#: effects/ChangeSpeed.cpp:370
msgid "From RPM"
-msgstr ""
+msgstr "ä»RPM"
#: effects/ChangeSpeed.cpp:375
msgid "To RPM"
-msgstr ""
+msgstr "å°RPM"
-#: ../src/effects/ChangeSpeed.h:32
+#: effects/ChangeSpeed.h:32
msgid "Change Speed..."
msgstr "æ¹åéç..."
-#: ../src/effects/ChangeSpeed.h:35
+#: effects/ChangeSpeed.h:46
msgid "Changing Speed"
-msgstr "æ¹åéç"
+msgstr "æ¹åéçä¸"
-#: ../src/effects/ChangeTempo.cpp:65
+#: effects/ChangeTempo.cpp:141
msgid "Change Tempo"
-msgstr "æ¹åèæ"
+msgstr "æ¹åèå¥"
-#: ../src/effects/ChangeTempo.cpp:167
+#: effects/ChangeTempo.cpp:174
msgid "Change Tempo without Changing Pitch"
-msgstr "ä¿æé³é«ä¸åï¼æ¹åèæ"
+msgstr "ä¿æé³é«ä¸åï¼æ¹åèå¥"
#: effects/ChangeTempo.cpp:206
msgid "Beats per minute:"
-msgstr ""
+msgstr "æ¯åéçææ°ï¼"
#: effects/ChangeTempo.cpp:210
msgid "From beats per minute"
-msgstr ""
+msgstr "仿¯åéçææ°"
#: effects/ChangeTempo.cpp:215
msgid "To beats per minute"
-msgstr ""
+msgstr "å°æ¯åéçææ°"
#: effects/ChangeTempo.cpp:219
msgid "Length (seconds):"
-msgstr ""
+msgstr "é¿åº¦ (ç§)ï¼"
#: effects/ChangeTempo.cpp:223
msgid "From length in seconds"
-msgstr ""
+msgstr "ä»é¿åº¦ (ç§)"
#: effects/ChangeTempo.cpp:228
msgid "To length in seconds"
-msgstr ""
+msgstr "å°é¿åº¦ (ç§)"
-#: ../src/effects/ChangeTempo.h:35
+#: effects/ChangeTempo.h:35
msgid "Change Tempo..."
-msgstr "æ¹åèæ..."
+msgstr "æ¹åèå¥..."
-#: ../src/effects/ChangeTempo.h:39
+#: effects/ChangeTempo.h:49
msgid "Changing Tempo"
-msgstr "æ¹åèæ"
+msgstr "æ¹åèå¥ä¸"
#: effects/ClickRemoval.cpp:314
msgid "Click Removal"
-msgstr ""
+msgstr "æ¶é¤åå声..."
-#: ../src/effects/ClickRemoval.cpp:349
+#: effects/ClickRemoval.cpp:327
msgid "Click and Pop Removal by Craig DeForest"
msgstr "åå声åå¼åªå£°æ¶é¤(Craig DeForestæä¾)"
-#: effects/ClickRemoval.cpp:350
+#: effects/ClickRemoval.cpp:341
msgid "Select threshold (lower is more sensitive):"
-msgstr ""
+msgstr "éæ©éå¼(è¶å°è¶ææ)ï¼"
#: effects/ClickRemoval.cpp:350
msgid "Select threshold"
-msgstr ""
+msgstr "éæ©éå¼"
-#: effects/ClickRemoval.cpp:362
+#: effects/ClickRemoval.cpp:354
msgid "Max spike width (higher is more sensitive):"
-msgstr ""
+msgstr "æå¤§å³°å¼å®½åº¦(è¶å¤§è¶ææ)ï¼"
#: effects/ClickRemoval.cpp:363
msgid "Max spike width"
-msgstr ""
+msgstr "æå¤§å³°å¼å®½åº¦"
-#: ../src/effects/ClickRemoval.h:42
+#: effects/ClickRemoval.h:42
msgid "Click Removal..."
msgstr "æ¶é¤åå声..."
-#: ../src/effects/ClickRemoval.h:46
+#: effects/ClickRemoval.h:56
msgid "Removing clicks and pops..."
msgstr "æ¶é¤åå声åå¼åªå£°..."
-#: ../src/effects/Compressor.cpp:43
+#: effects/Compressor.cpp:461
msgid "Dynamic Range Compressor"
msgstr "卿èå´å缩å¨"
#: effects/Compressor.cpp:498
msgid "Threshold"
-msgstr ""
+msgstr "éå¼ï¼"
#: effects/Compressor.cpp:502
msgid "Ratio:"
-msgstr ""
+msgstr "æ¯çï¼"
#: effects/Compressor.cpp:506
msgid "Ratio"
-msgstr ""
+msgstr "æ¯çï¼"
#: effects/Compressor.cpp:510
-#, fuzzy
msgid "Attack Time:"
-msgstr "ä¸åæ¶é´:"
+msgstr "ä¸åæ¶é´ï¼"
#: effects/Compressor.cpp:514
msgid "Attack Time"
-msgstr ""
+msgstr "ä¸åæ¶é´"
#: effects/Compressor.cpp:518
msgid "Decay Time:"
-msgstr ""
+msgstr "è¡°åæ¶é´ï¼"
#: effects/Compressor.cpp:522
msgid "Decay Time"
-msgstr ""
+msgstr "è¡°åæ¶é´"
-#: ../src/effects/Compressor.cpp:469
-msgid "Normalize to 0dB after compressing"
-msgstr "å缩åå½ä¸åè³0dB"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
+msgstr "å缩åå¢é¿å° 0dB "
#: effects/Compressor.cpp:563
#, c-format
-#, fuzzy
msgid "Threshold %d dB"
-msgstr "éå¼: %d dB"
+msgstr "éå¼ï¼ %d dB"
#: effects/Compressor.cpp:564
#, c-format
msgid "%3d dB"
-msgstr ""
+msgstr "%3d dB"
#: effects/Compressor.cpp:567
#, c-format
msgid "Ratio %.0f to 1"
-msgstr ""
+msgstr "æ¯çï¼ %.0fï¼1"
#: effects/Compressor.cpp:568
#, c-format
msgid "%.0f:1"
-msgstr ""
+msgstr "%.0fï¼1"
#: effects/Compressor.cpp:571
#, c-format
msgid "Ratio %.1f to 1"
-msgstr ""
+msgstr "æ¯çï¼ %.1fï¼1"
#: effects/Compressor.cpp:572
#, c-format
msgid "%.1f:1"
-msgstr ""
+msgstr "%.1fï¼1"
#: effects/Compressor.cpp:575
#, c-format
-#, fuzzy
msgid "Attack Time %.1f secs"
-msgstr "ä¸åæ¶é´: %.1f ç§"
+msgstr "ä¸åæ¶é´ï¼ %.1f ç§"
#: effects/Compressor.cpp:576 effects/Compressor.cpp:579
#, c-format
msgid "%.1f secs"
-msgstr ""
+msgstr "%.1f ç§"
#: effects/Compressor.cpp:578
#, c-format
msgid "Decay Time %.1f secs"
-msgstr ""
+msgstr "è¡°åæ¶é´ï¼ %.1f ç§"
-#: ../src/effects/Compressor.h:36
+#: effects/Compressor.h:36
msgid "Compressor..."
-msgstr "å缩..."
+msgstr "å缩å¨..."
-#: ../src/effects/Compressor.h:40
+#: effects/Compressor.h:50
msgid "Applying Dynamic Range Compression..."
-msgstr "æ£å¨ä½¿ç¨å¨æèå´å缩..."
+msgstr "æ£å¨åºç¨å¨æèå´å缩..."
+
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr "对ç
§åæ"
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
-msgstr ""
+msgstr "对ç
§å·¥å
·åæ¯"
#: effects/Contrast.cpp:79
-msgid "Foreground times selected.\n"
+msgid ""
+"Foreground times selected.\n"
"Now select background and use Ctrl+Shift+T or menu again."
msgstr ""
+"忝æ¶é´å·²éæ©ã\n"
+"ç°å¨éæ©èæ¯ï¼ç¶åå使ç¨Ctrl+Shift+Tæç®å½ã"
#: effects/Contrast.cpp:127
-msgid "Start time after after end time!\n"
+msgid ""
+"Start time after after end time!\n"
"Please enter reasonable times."
msgstr ""
+"å¼å§æ¶é´å¨ç»ææ¶é´åï¼\n"
+"请è¾å
¥åççæ¶é´ã"
#: effects/Contrast.cpp:137
-msgid "Times are not reasonable!\n"
+msgid ""
+"Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
+"æ¶é´ä¸åçï¼\n"
+"请è¾å
¥åççæ¶é´ã"
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr ""
-
-#: effects/Contrast.cpp:231
+#: effects/Contrast.cpp:318
msgid "Contrast Analyzer"
-msgstr ""
+msgstr "对ç
§åæå¨"
-#: effects/Contrast.cpp:235
+#: effects/Contrast.cpp:321
msgid "Parameters"
-msgstr ""
+msgstr "åæ°"
-#: ../src/ControlToolBar.cpp:515
+#: effects/Contrast.cpp:328 effects/ToneGen.cpp:356
+#: toolbars/ControlToolBar.cpp:186
msgid "Start"
msgstr "å¼å§"
-#: ../src/ControlToolBar.cpp:521
+#: effects/Contrast.cpp:329 effects/ToneGen.cpp:357
+#: toolbars/ControlToolBar.cpp:189 toolbars/SelectionBar.cpp:156
+#: toolbars/SelectionBar.cpp:159 toolbars/SelectionBar.cpp:262
msgid "End"
msgstr "ç»æ"
#: effects/Contrast.cpp:332
msgid "Volume "
-msgstr ""
+msgstr "é³é"
-#: effects/Contrast.cpp:248
+#: effects/Contrast.cpp:335
msgid "Foreground:"
-msgstr ""
+msgstr "忝ï¼"
#: effects/Contrast.cpp:347
msgid "Foreground start time"
-msgstr ""
+msgstr "忝å¼å§æ¶é´"
#: effects/Contrast.cpp:365
msgid "Foreground end time"
-msgstr ""
+msgstr "åæ¯ç»ææ¶é´"
+
+#: effects/Contrast.cpp:277 effects/Contrast.cpp:288 effects/Contrast.cpp:371
+#: effects/Contrast.cpp:415
+msgid "Measured"
+msgstr "å·²æµé"
#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
msgid "Use selection"
-msgstr ""
+msgstr "使ç¨é段"
-#: effects/Contrast.cpp:271
+#: effects/Contrast.cpp:378
msgid "Background:"
-msgstr ""
+msgstr "èæ¯ï¼"
#: effects/Contrast.cpp:391
msgid "Background start time"
-msgstr ""
+msgstr "èæ¯å¼å§æ¶é´"
#: effects/Contrast.cpp:409
msgid "Background end time"
-msgstr ""
+msgstr "èæ¯ç»ææ¶é´"
-#: effects/Contrast.cpp:298
+#: effects/Contrast.cpp:426
msgid "Result"
-msgstr ""
+msgstr "ç»æ"
-#: effects/Contrast.cpp:302
+#: effects/Contrast.cpp:430
msgid "Contrast Result:"
-msgstr ""
+msgstr "对ç
§ç»æï¼"
-#: Tags.cpp:796 Tags.cpp:1948
+#: effects/Contrast.cpp:433
msgid "Reset"
-msgstr ""
+msgstr "é设"
-#: effects/Contrast.cpp:304
+#: effects/Contrast.cpp:434
msgid "Difference:"
-msgstr ""
+msgstr "å·®å«ï¼"
-#: ../src/AboutDialog.cpp:190
-#: ../src/effects/ChangeLength.cpp:120
+#: effects/Contrast.cpp:445
msgid "Information"
msgstr "ä¿¡æ¯"
#: effects/Contrast.cpp:447
msgid "For measuring rms volume differences between two selections of audio."
-msgstr ""
+msgstr "æµé两个é³é¢é段çé³éçåæ¹æ ¹çå·®ã"
#: effects/Contrast.cpp:448
msgid "Help for WCAG2 Audio Contrast Analyzer"
-msgstr ""
+msgstr "WCAG2é³é¢å¯¹ç
§åæå¨ç帮å©"
-#: ../src/ControlToolBar.cpp:149
-msgid "Control"
-msgstr "æ§å¶"
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
-msgstr ""
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
+msgstr "å
³éï¼ä¿åæ¶é´ï¼"
-#: effects/Contrast.cpp:328 effects/Contrast.cpp:336 effects/Contrast.cpp:344
-#: effects/Contrast.cpp:352
+#: effects/Contrast.cpp:466 effects/Contrast.cpp:472 effects/Contrast.cpp:478
+#: effects/Contrast.cpp:484
msgid "Measure"
-msgstr ""
+msgstr "æµé"
#: effects/Contrast.cpp:511
msgid "No foreground to measure"
-msgstr ""
+msgstr "没æç¨æ¥æµéç忝"
#: effects/Contrast.cpp:516
msgid "Measured foreground level"
-msgstr ""
+msgstr "å·²æµéçåæ¯å£°å¼ºçº§"
-#: effects/Contrast.cpp:191 effects/Contrast.cpp:202
+#: effects/Contrast.cpp:517 effects/Contrast.cpp:527
#, c-format
msgid "%.1f dB"
-msgstr ""
+msgstr "%.1f dB"
#: effects/Contrast.cpp:521
msgid "No background to measure"
-msgstr ""
+msgstr "没æç¨æ¥æµéçèæ¯"
#: effects/Contrast.cpp:526
msgid "Measured background level"
-msgstr ""
+msgstr "å·²æµéçèæ¯å£°å¼ºçº§"
-#: effects/Contrast.cpp:358
+#: effects/Contrast.cpp:532
msgid "WCAG2 Pass"
-msgstr ""
+msgstr "WCAG2 éè¿"
-#: effects/Contrast.cpp:360
+#: effects/Contrast.cpp:534
msgid "WCAG2 Fail"
-msgstr ""
+msgstr "WCAG2 失败"
#: effects/Contrast.cpp:535
msgid "Current difference"
-msgstr ""
+msgstr "å½åå·®å«"
#: effects/Contrast.cpp:536
#, c-format
msgid "%.1f dB Average rms"
-msgstr ""
+msgstr "å¹³å%.1f dB åæ¹æ ¹"
#: effects/Contrast.cpp:541
msgid "Please enter valid times."
-msgstr ""
+msgstr "请è¾å
¥æææ¬¡æ°ã"
#: effects/Contrast.cpp:551
msgid "Export Contrast Result As:"
-msgstr ""
+msgstr "å°å¯¹ç
§ç»æå¯¼åºä¸ºï¼"
#: effects/Contrast.cpp:572
msgid "WCAG 2.0 Success Criteria 1.4.7 Contrast Results"
-msgstr ""
+msgstr "WCAG 2.0 Success Criteria 1.4.7 对ç
§ç»æ"
#: effects/Contrast.cpp:574
#, c-format
msgid "Filename = %s."
-msgstr ""
+msgstr "æä»¶å = %sã"
#: effects/Contrast.cpp:576
msgid "Foreground"
-msgstr ""
+msgstr "忝"
#: effects/Contrast.cpp:581 effects/Contrast.cpp:598
#, c-format
msgid "Time started = %2d hour(s), %2d minute(s), %.2f seconds."
-msgstr ""
+msgstr "å¼å§æ¶é´= %2d æ¶, %2d å, %.2f ç§."
#: effects/Contrast.cpp:586 effects/Contrast.cpp:603
#, c-format
msgid "Time ended = %2d hour(s), %2d minute(s), %.2f seconds."
-msgstr ""
+msgstr "ç»ææ¶é´= %2d æ¶, %2d å, %.2f ç§."
#: effects/Contrast.cpp:588 effects/Contrast.cpp:605
#, c-format
msgid "Average rms = %.1f dB."
-msgstr ""
+msgstr "å¹³ååæ¹æ ¹ = %.1f dBã"
#: effects/Contrast.cpp:590 effects/Contrast.cpp:607
msgid "Average rms = dB."
-msgstr ""
+msgstr "å¹³ååæ¹æ ¹= dB."
#: effects/Contrast.cpp:593
msgid "Background"
-msgstr ""
+msgstr "èæ¯"
#: effects/Contrast.cpp:609
msgid "Results"
-msgstr ""
+msgstr "ç»æ"
#: effects/Contrast.cpp:611
#, c-format
msgid "Difference = %.1f Average rms dB."
-msgstr ""
+msgstr "å·®å« = %.1f å¹³ååæ¹æ ¹ dB."
#: effects/Contrast.cpp:613
msgid "Success Criteria 1.4.7 of WCAG 2.0: Pass"
-msgstr ""
+msgstr "WCAG 2.0 ç Success Criteria 1.4.7 ï¼ éè¿"
#: effects/Contrast.cpp:615
msgid "Success Criteria 1.4.7 of WCAG 2.0: Fail"
-msgstr ""
+msgstr "WCAG 2.0 ç Success Criteria 1.4.7 ï¼ å¤±è´¥"
#: effects/Contrast.cpp:618
msgid "Data gathered"
-msgstr ""
+msgstr "æ°æ®å·²æ¶é"
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr ""
-
-#: effects/DtmfGen.cpp:47
+#: effects/DtmfGen.cpp:56
msgid "DTMF Tone Generator"
-msgstr ""
+msgstr "åé³å¤é¢é³è°çæå¨"
-#: effects/DtmfGen.cpp:382
+#: effects/DtmfGen.cpp:456
msgid "by Salvo Ventura (2006)"
-msgstr ""
+msgstr "(Salvo Ventura (2006)æä¾)"
-#: effects/DtmfGen.cpp:386
+#: effects/DtmfGen.cpp:460
msgid "DTMF sequence:"
-msgstr ""
+msgstr "åé³å¤é¢åºåï¼"
-#: ../src/effects/ToneGen.cpp:306
+#: effects/DtmfGen.cpp:463 effects/Noise.cpp:242 effects/ToneGen.cpp:322
+#: effects/ToneGen.cpp:360
msgid "Amplitude (0-1)"
msgstr "æ¯å¹
(0-1)"
#: effects/DtmfGen.cpp:465
msgid "Duration:"
-msgstr ""
+msgstr "æç»æ¶é´ï¼"
-#: effects/DtmfGen.cpp:407
+#: effects/DtmfGen.cpp:487
msgid "Tone/silence ratio:"
-msgstr ""
+msgstr "é³/ç©ºç½æ¯çï¼"
-#: effects/DtmfGen.cpp:418
+#: effects/DtmfGen.cpp:497
msgid "Duty cycle:"
-msgstr ""
+msgstr "å 空æ¯ï¼"
-#: effects/DtmfGen.cpp:420
+#: effects/DtmfGen.cpp:499
msgid "Tone duration:"
-msgstr ""
+msgstr "é³çæç»æ¶é´ï¼"
-#: effects/DtmfGen.cpp:421 effects/DtmfGen.cpp:423 effects/DtmfGen.cpp:494
-#: effects/DtmfGen.cpp:495
+#: effects/DtmfGen.cpp:500 effects/DtmfGen.cpp:502 effects/DtmfGen.cpp:578
+#: effects/DtmfGen.cpp:579
msgid "ms"
-msgstr ""
+msgstr "毫ç§"
-#: effects/DtmfGen.cpp:422
+#: effects/DtmfGen.cpp:501
msgid "Silence duration:"
-msgstr ""
+msgstr "ç©ºç½æç»æ¶é´"
-#: effects/DtmfGen.h:41
+#: effects/DtmfGen.h:39
msgid "DTMF Tones..."
-msgstr ""
+msgstr "åé³å¤é¢é³è°..."
-#: effects/DtmfGen.h:45
+#: effects/DtmfGen.h:53
#, c-format
msgid "Applied effect: Generate DTMF tones, %.6lf seconds"
-msgstr ""
+msgstr "åºç¨ææï¼çæåé³å¤é¢é³è°ï¼ %.6lf ç§"
-#: effects/DtmfGen.h:49
+#: effects/DtmfGen.h:57
msgid "Generating DTMF tones"
-msgstr ""
+msgstr "çæåé³å¤é¢é³è°ä¸"
-#: ../src/effects/Echo.cpp:37
+#: effects/Echo.cpp:48
#, c-format
msgid "Applied effect: %s delay = %f seconds, decay factor = %f"
-msgstr "åºç¨ææ: %s æ¶å»¶ = %f ç§, è¡°åç³»æ° = %f"
+msgstr "åºç¨ææï¼ %s æ¶å»¶ = %f ç§ï¼ è¡°åç³»æ° = %f"
-#: ../src/effects/Echo.cpp:43
-#: ../src/effects/Echo.cpp:188
+#: effects/Echo.cpp:170
msgid "Echo"
msgstr "å声"
-#: ../src/effects/Echo.cpp:193
+#. i18n-hint: && in here is an escape character to get a single & on
+#. * screen, so keep it as is
+#: effects/Echo.cpp:195 effects/Repeat.cpp:199
msgid "by Dominic Mazzoni && Vaughan Johnson"
msgstr "Dominic MazzoniåVaughan Johnsonæä¾"
-#: ../src/effects/Echo.cpp:203
+#: effects/Echo.cpp:207
msgid "Delay time (seconds):"
-msgstr "å»¶è¿æ¶é´ (ç§):"
+msgstr "å»¶è¿æ¶é´ (ç§)ï¼"
-#: ../src/effects/Echo.cpp:222
+#: effects/Echo.cpp:212
msgid "Decay factor:"
msgstr "è¡°æ¸ç³»æ°"
-#: ../src/effects/Echo.h:34
+#: effects/Echo.h:34
msgid "Echo..."
msgstr "å声..."
-#: ../src/effects/Echo.h:38
+#: effects/Echo.h:48
msgid "Performing Echo"
msgstr "æ§è¡å声"
-#: effects/Effect.cpp:378
+#: effects/Effect.cpp:467
msgid "Preparing preview"
-msgstr ""
+msgstr "åå¤é¢è§ä¸"
-#: effects/Effect.cpp:404
+#: effects/Effect.cpp:497
msgid "Previewing"
-msgstr ""
+msgstr "é¢è§ä¸"
-#: ../src/ControlToolBar.cpp:774
-#: ../src/effects/Effect.cpp:339
+#: effects/Effect.cpp:512
msgid "Error while opening sound device. Please check the output device settings and the project sample rate."
msgstr "æå¼å£°é³è®¾å¤åºéãè¯·æ£æ¥è¾åºè®¾å¤ç设置åéæ ·çã"
-#: ../src/effects/Effect.h:100
+#: effects/Effect.h:100 effects/TimeScale.cpp:52
#, c-format
msgid "Applied effect: %s"
-msgstr "åºç¨ææ: %s"
+msgstr "åºç¨ææï¼ %s"
-#: effects/Equalization.cpp:1119
+#: effects/Equalization.cpp:329
msgid "B-spline"
-msgstr ""
+msgstr "B-æ ·æ¡"
-#: effects/Equalization.cpp:1119
+#: effects/Equalization.cpp:330
msgid "Cosine"
-msgstr ""
+msgstr "ä½å¼¦å½æ°"
-#: effects/Equalization.cpp:1119
+#: effects/Equalization.cpp:331
msgid "Cubic"
-msgstr ""
+msgstr "ç«æ¹å½æ°"
-#: ../src/effects/Equalization.cpp:180
+#: effects/Equalization.cpp:367 effects/Equalization.cpp:416
msgid "Equalization"
msgstr "åè¡¡"
-#: effects/Equalization.cpp:865
+#: effects/Equalization.cpp:994
msgid "Error loading EQ curve"
-msgstr ""
+msgstr "è½½å
¥åè¡¡æ²çº¿é误"
-#: effects/Equalization.cpp:1013
+#: effects/Equalization.cpp:1033
msgid "custom"
-msgstr ""
+msgstr "å®å¶"
+
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr "ä¿ååè¡¡æ²çº¿é误"
-#: effects/Equalization.cpp:971
+#. i18n-hint: && in here is an escape character to get a single &
+#. * on screen, so keep it as is
+#: effects/Equalization.cpp:1101
msgid "Equalization, by Martyn Shaw && Mitch Golden"
-msgstr ""
+msgstr "åè¡¡ï¼(Martyn Shaw å Mitch Goldenæä¾)"
-#: effects/Equalization.cpp:992
+#: effects/Equalization.cpp:1122
msgid "Max dB"
-msgstr ""
+msgstr "æå¤§ dB"
-#: effects/Equalization.cpp:994
+#: effects/Equalization.cpp:1124
msgid "Min dB"
-msgstr ""
+msgstr "æå° dB"
-#: effects/Equalization.cpp:1093
+#: effects/Equalization.cpp:1197
msgid "kHz"
-msgstr ""
+msgstr "kHz"
-#: effects/Equalization.cpp:1110
+#: effects/Equalization.cpp:1214
msgid "Draw curves"
-msgstr ""
+msgstr "ç»å¶æ²çº¿"
-#: effects/Equalization.cpp:1115
+#: effects/Equalization.cpp:1219
msgid "Graphic EQ"
-msgstr ""
+msgstr "å¾å½¢ååè¡¡"
-#: effects/Equalization.cpp:1131
+#: effects/Equalization.cpp:1233
msgid "Linear frequency scale"
-msgstr ""
+msgstr "线æ§é¢ç缩æ¾"
-#: effects/Equalization.cpp:1140
+#: effects/Equalization.cpp:1242
msgid "Length of filter:"
-msgstr ""
+msgstr "è¿æ»¤é¿åº¦ï¼"
-#: effects/Equalization.cpp:1048
+#: effects/Equalization.cpp:1263
msgid "Select curve:"
-msgstr ""
+msgstr "éæ©æ²çº¿ï¼"
-#: effects/Equalization.cpp:1058 effects/Equalization.cpp:2244
+#: effects/Equalization.cpp:1273 effects/Equalization.cpp:2512
+#: export/ExportMultiple.cpp:899
msgid "Save As..."
-msgstr ""
+msgstr "ä¿å为..."
-#: effects/Equalization.cpp:1064
+#: effects/Equalization.cpp:1279
msgid "Flat"
-msgstr ""
+msgstr "å¹³å¦ç"
-#: effects/Equalization.cpp:2243
+#: effects/Equalization.cpp:2511
msgid "Enter the desired name of the curve"
-msgstr ""
+msgstr "è¾å
¥éè¦çæ²çº¿çåå"
-#: effects/Equalization.cpp:2343
+#: effects/Equalization.cpp:2611 export/ExportFFmpegDialogs.cpp:1212
msgid "Confirm Deletion"
-msgstr ""
+msgstr "确认å é¤"
-#: ../src/effects/Equalization.h:43
+#: effects/Equalization.h:84
msgid "Equalization..."
msgstr "åè¡¡..."
-#: ../src/effects/Equalization.h:47
+#: effects/Equalization.h:98
msgid "Performing Equalization"
-msgstr "使ç¨åè¡¡å¨"
+msgstr "使ç¨åè¡¡"
-#: ../src/effects/Fade.h:24
+#: effects/Fade.h:24
msgid "Fade In"
msgstr "æ·¡å
¥"
-#: ../src/effects/Fade.h:28
+#: effects/Fade.h:38
msgid "Fading In"
-msgstr "æ·¡å
¥"
+msgstr "æ·¡å
¥ä¸"
-#: ../src/effects/Fade.h:44
+#: effects/Fade.h:54
msgid "Fade Out"
msgstr "æ·¡åº"
-#: ../src/effects/Fade.h:48
+#: effects/Fade.h:68
msgid "Fading Out"
-msgstr "æ·¡åº"
+msgstr "æ·¡åºä¸"
#: effects/FindClipping.cpp:49
msgid "Detect clipping"
-msgstr ""
+msgstr "æ¢æµç ´é³"
#: effects/FindClipping.cpp:91
msgid "Clipping"
-msgstr ""
+msgstr "ç ´é³"
#: effects/FindClipping.cpp:211
msgid "Find Clipping"
-msgstr ""
+msgstr "寻æ¾ç ´é³"
#: effects/FindClipping.cpp:222
msgid "by Leland Lucius"
-msgstr ""
+msgstr "(Leland Luciusæä¾)"
#: effects/FindClipping.cpp:234
msgid "Start threshold (samples):"
-msgstr ""
+msgstr "å¼å§éå¼(æ ·æ¬æ°)ï¼"
#: effects/FindClipping.cpp:238
msgid "Stop threshold (samples):"
-msgstr ""
+msgstr "忢éå¼(æ ·æ¬æ°)ï¼"
#: effects/FindClipping.cpp:250
msgid "Start and stop must be greater than 0."
-msgstr ""
+msgstr "å¼å§å忢å¿
须大äº0"
#: effects/FindClipping.h:37
msgid "Find Clipping..."
-msgstr ""
+msgstr "寻æ¾ç ´é³..."
-#: effects/FindClipping.h:47
+#: effects/FindClipping.h:54
msgid "Detecting clipping"
-msgstr ""
+msgstr "æ¢æµç ´é³"
-#: ../src/effects/Invert.h:27
+#: effects/Invert.h:27
msgid "Invert"
-msgstr "ä¸ä¸å转"
+msgstr "ä¸ä¸ç¿»è½¬"
-#: ../src/effects/Invert.h:31
+#: effects/Invert.h:41
msgid "Inverting"
-msgstr "ä¸ä¸å转"
+msgstr "ä¸ä¸ç¿»è½¬ä¸"
-#: ../src/BatchCommands.cpp:103
-#: ../src/effects/Leveller.cpp:114
+#: effects/Leveller.cpp:192
msgid "Leveller"
msgstr "å¹
度æå¹³å¨"
-#: effects/Leveller.cpp:47
+#: effects/Leveller.cpp:205
msgid "None-Skip"
-msgstr ""
+msgstr "ä¸é´æ"
-#: effects/Leveller.cpp:47
+#: effects/Leveller.cpp:206
msgid "Light"
-msgstr ""
+msgstr "轻微"
-#: effects/Leveller.cpp:47
+#: effects/Leveller.cpp:207
msgid "Moderate"
-msgstr ""
+msgstr "ä¸ç"
-#: effects/Leveller.cpp:47
+#: effects/Leveller.cpp:208
msgid "Heavy"
-msgstr ""
+msgstr "强"
-#: effects/Leveller.cpp:47
+#: effects/Leveller.cpp:209
msgid "Heavier"
-msgstr ""
+msgstr "è¾å¼º"
-#: effects/Leveller.cpp:47
+#: effects/Leveller.cpp:210
msgid "Heaviest"
-msgstr ""
+msgstr "æå¼º"
-#: effects/TruncSilence.cpp:332
+#: effects/Leveller.cpp:214 effects/TruncSilence.cpp:331
msgid "by Lynn Allan"
-msgstr ""
+msgstr "(Lynn Allanæä¾)"
-#: ../src/effects/Leveller.cpp:205
+#: effects/Leveller.cpp:224
msgid "Degree of Leveling"
-msgstr "å¹
度æå¹³åº¦"
+msgstr "æå¹³åº¦"
-#: effects/Leveller.cpp:226
+#: effects/Leveller.cpp:228
msgid "Degree of Leveling:"
-msgstr ""
+msgstr "æå¹³åº¦"
-#: ../src/effects/Leveller.cpp:223
+#: effects/Leveller.cpp:236
msgid "Noise Threshold (Hiss/Hum/Ambient Noise)"
msgstr "åªå£°éå¼('å¶å¶'/'å¡å¡'/ç¯å¢èæ¯åªå£°)"
-#: effects/Leveller.cpp:238
-#, fuzzy
+#: effects/Leveller.cpp:240
msgid "Threshold for Noise:"
-msgstr "åªå£°éå¼:"
+msgstr "åªå£°éå¼ï¼"
-#: ../src/effects/Leveller.h:28
+#: effects/Leveller.h:28
msgid "Leveller..."
msgstr "å¹
度æå¹³..."
-#: ../src/effects/Leveller.h:32
+#: effects/Leveller.h:42
msgid "Applying Leveller..."
-msgstr "æ£å¨åºç¨å¹
度æå¹³..."
+msgstr "åºç¨å¹
度æå¹³ä¸..."
-#: effects/LoadEffects.cpp:102
+#: effects/LoadEffects.cpp:103
msgid "Generator"
-msgstr ""
+msgstr "çæå¨"
-#: effects/LoadEffects.cpp:104
+#: effects/LoadEffects.cpp:105
msgid "Instrument"
-msgstr ""
+msgstr "ä¹å¨"
-#: effects/LoadEffects.cpp:106
+#: effects/LoadEffects.cpp:107
msgid "Oscillator"
-msgstr ""
+msgstr "æ¯è¡å¨"
-#: effects/LoadEffects.cpp:108
+#: effects/LoadEffects.cpp:109
msgid "Utility"
-msgstr ""
+msgstr "å·¥å
·"
-#: effects/LoadEffects.cpp:110
+#: effects/LoadEffects.cpp:111
msgid "Converter"
-msgstr ""
+msgstr "转æ¢å¨"
-#: effects/LoadEffects.cpp:112
+#: effects/LoadEffects.cpp:113
msgid "Analyser"
-msgstr ""
+msgstr "åæå¨"
-#: ../src/MixerToolBar.cpp:102
-msgid "Mixer"
-msgstr "æ··é³å¨"
-
-#: effects/LoadEffects.cpp:116
+#: effects/LoadEffects.cpp:117
msgid "Simulator"
-msgstr ""
+msgstr "模æå¨"
-#: effects/LoadEffects.cpp:118
+#: effects/LoadEffects.cpp:119
msgid "Delay"
-msgstr ""
+msgstr "å»¶è¿"
-#: effects/LoadEffects.cpp:120
+#: effects/LoadEffects.cpp:121
msgid "Modulator"
-msgstr ""
+msgstr "è°å¶å¨"
-#: effects/LoadEffects.cpp:122
+#: effects/LoadEffects.cpp:123
msgid "Reverb"
-msgstr ""
+msgstr "åå"
-#: ../src/effects/Phaser.cpp:65
+#: effects/LoadEffects.cpp:125 effects/Phaser.cpp:208
msgid "Phaser"
-msgstr "ç§»ç¸å¨"
+msgstr "ä¸ååç¸ç§»å¨"
-#: effects/LoadEffects.cpp:126
+#: effects/LoadEffects.cpp:127
msgid "Flanger"
-msgstr ""
+msgstr "ååç¸ç§»å¨"
-#: effects/LoadEffects.cpp:128
+#: effects/LoadEffects.cpp:129
msgid "Chorus"
-msgstr ""
+msgstr "åé³"
-#: effects/LoadEffects.cpp:130
+#: effects/LoadEffects.cpp:131
msgid "Filter"
-msgstr ""
+msgstr "è¿æ»¤å¨"
-#: effects/LoadEffects.cpp:132
+#: effects/LoadEffects.cpp:133
msgid "Lowpass"
-msgstr ""
+msgstr "ä½é"
-#: effects/LoadEffects.cpp:134
+#: effects/LoadEffects.cpp:135
msgid "Bandpass"
-msgstr ""
+msgstr "带é"
-#: effects/LoadEffects.cpp:136
+#: effects/LoadEffects.cpp:137
msgid "Highpass"
-msgstr ""
+msgstr "é«é"
-#: effects/LoadEffects.cpp:138
+#: effects/LoadEffects.cpp:139
msgid "Comb"
-msgstr ""
+msgstr "梳åç¶"
-#: effects/LoadEffects.cpp:140
+#: effects/LoadEffects.cpp:141
msgid "Allpass"
-msgstr ""
+msgstr "å
¨é"
-#: effects/LoadEffects.cpp:142
+#: effects/LoadEffects.cpp:143
msgid "Equaliser"
-msgstr ""
+msgstr "åè¡¡å¨"
-#: effects/LoadEffects.cpp:144
+#: effects/LoadEffects.cpp:145
msgid "Parametric"
-msgstr ""
+msgstr "åæ°ç"
-#: effects/LoadEffects.cpp:146
+#: effects/LoadEffects.cpp:147
msgid "Multiband"
-msgstr ""
+msgstr "å¤å¸¦"
-#: effects/LoadEffects.cpp:148
+#: effects/LoadEffects.cpp:149
msgid "Spectral Processor"
-msgstr ""
+msgstr "é¢è°±å¤çå¨"
-#: effects/LoadEffects.cpp:150
+#: effects/LoadEffects.cpp:151
msgid "Pitch Shifter"
-msgstr ""
+msgstr "é³é«ä½ç§»å¨"
-#: effects/LoadEffects.cpp:152
+#: effects/LoadEffects.cpp:153
msgid "Amplifier"
-msgstr ""
+msgstr "å¢å¹
å¨"
-#: effects/LoadEffects.cpp:154
+#: effects/LoadEffects.cpp:155
msgid "Distortion"
-msgstr ""
+msgstr "ææ²"
-#: effects/LoadEffects.cpp:156
+#: effects/LoadEffects.cpp:157
msgid "Waveshaper"
-msgstr ""
+msgstr "波形æ¹é å¨"
-#: effects/LoadEffects.cpp:158
+#: effects/LoadEffects.cpp:159
msgid "Dynamics Processor"
-msgstr ""
+msgstr "卿èå´å¤çå¨"
-#: effects/LoadEffects.cpp:160
+#: effects/LoadEffects.cpp:161
msgid "Compressor"
-msgstr ""
+msgstr "å缩å¨"
-#: effects/LoadEffects.cpp:162
+#: effects/LoadEffects.cpp:163
msgid "Expander"
-msgstr ""
+msgstr "æ©å±å¨"
-#: effects/LoadEffects.cpp:164
+#: effects/LoadEffects.cpp:165
msgid "Limiter"
-msgstr ""
+msgstr "éå¶å¨"
-#: effects/LoadEffects.cpp:166
+#: effects/LoadEffects.cpp:167
msgid "Gate"
-msgstr ""
+msgstr "é¨"
-#: ../src/BatchCommands.cpp:101
-#: ../src/effects/NoiseRemoval.cpp:148
+#: effects/LoadEffects.cpp:200 effects/NoiseRemoval.cpp:729
msgid "Noise Removal"
msgstr "åªå£°æ¶é¤"
-#: effects/LoadEffects.cpp:201
+#: effects/LoadEffects.cpp:202
msgid "Pitch and Tempo"
-msgstr ""
+msgstr "é³é«åèå¥"
-#: effects/LoadEffects.cpp:203
+#: effects/LoadEffects.cpp:204
msgid "Timeline Changer"
-msgstr ""
+msgstr "æ¶é´çº¿æ¹åå¨"
-#: effects/LoadEffects.cpp:205
+#: effects/LoadEffects.cpp:206
msgid "Time"
-msgstr ""
+msgstr "æ¶é´"
-#: effects/LoadEffects.cpp:207
+#: effects/LoadEffects.cpp:208
msgid "Onsets"
-msgstr ""
+msgstr "声é³å¼å§"
#: effects/Noise.cpp:37
msgid "White"
-msgstr ""
+msgstr "ç½è²"
#: effects/Noise.cpp:38
msgid "Pink"
-msgstr ""
+msgstr "ç²çº¢è²"
#: effects/Noise.cpp:39
msgid "Brown"
-msgstr ""
+msgstr "æ£è²"
#: effects/Noise.cpp:41
msgid "Noise Generator"
-msgstr ""
+msgstr "åªå£°çæå¨"
-#: effects/Noise.cpp:256
+#: effects/Noise.cpp:241
msgid "Noise type"
-msgstr ""
+msgstr "åªå£°ç±»å"
#: effects/Noise.h:41
msgid "Noise..."
-msgstr ""
+msgstr "åªå£°..."
-#: effects/Noise.h:45
+#: effects/Noise.h:55
#, c-format
msgid "Applied effect: Generate Noise, %.6lf seconds"
-msgstr ""
+msgstr "åºç¨ææï¼çæåªå£°ï¼ %.6lfç§"
-#: effects/Noise.h:49
+#: effects/Noise.h:59
msgid "Generating Noise"
-msgstr ""
+msgstr "çæåªå£°ä¸"
#: effects/NoiseRemoval.cpp:192
#, c-format
-msgid "Could not open file:\n"
+msgid ""
+"Could not open file:\n"
" %s"
msgstr ""
+"ä¸è½æå¼æä»¶ï¼ \n"
+" %s"
#: effects/NoiseRemoval.cpp:277
-#, fuzzy
msgid "Attempt to run Noise Removal without a noise profile.\n"
-msgstr "è¯å¾å¨æ²¡æåªå£°ç¹å¾çæ
åµä¸æ§è¡åªå£°æ¶é¤\n"
-".\n"
+msgstr "è¯å¾å¨æ²¡æåªå£°ç¹å¾çæ
åµä¸æ§è¡åªå£°æ¶é¤.\n"
-#: ../src/effects/NoiseRemoval.cpp:539
+#: effects/NoiseRemoval.cpp:818
msgid "Step 1"
msgstr "æ¥éª¤1"
-#: effects/NoiseRemoval.cpp:765
-msgid "Select a few seconds of just noise so Audacity knows what to filter out,\n"
+#: effects/NoiseRemoval.cpp:819
+msgid ""
+"Select a few seconds of just noise so Audacity knows what to filter out,\n"
"then click Get Noise Profile:"
msgstr ""
+"éæ©å ç§åªæåªå£°çé³é¢è®©Audacityç¥éè¿æ»¤ä»ä¹ï¼\n"
+"ç¶åç¹å»è·å¾åªå£°ç¹å¾ï¼"
-#: ../src/effects/NoiseRemoval.cpp:560
+#: effects/NoiseRemoval.cpp:820
msgid "Step 2"
msgstr "æ¥éª¤2"
-#: effects/NoiseRemoval.cpp:767
-msgid "Select all of the audio you want filtered, choose how much noise you want\n"
+#: effects/NoiseRemoval.cpp:821
+msgid ""
+"Select all of the audio you want filtered, choose how much noise you want\n"
"filtered out, and then click 'OK' to remove noise.\n"
msgstr ""
+"éæ©ææä½ æ³è¿æ»¤çé³é¢ï¼éæ©ä½ è¦è¿æ»¤å¤å°åªå£°ï¼\n"
+"ç¶åç¹å»'ç¡®å®'æ¶é¤åªå£°\n"
-#: ../src/effects/NoiseRemoval.cpp:522
+#: effects/NoiseRemoval.cpp:826
msgid "Noise Removal by Dominic Mazzoni"
msgstr "åªå£°æ¶é¤(Dominic Mazzoniæä¾)"
-#: ../src/effects/NoiseRemoval.cpp:550
+#: effects/NoiseRemoval.cpp:834
msgid "Get Noise Profile"
msgstr "åå¾åªå£°ç¹å¾"
-#: effects/NoiseRemoval.cpp:791
+#: effects/NoiseRemoval.cpp:845
msgid "Noise reduction (dB):"
-msgstr ""
+msgstr "åªå£°åå°(dB)ï¼"
#: effects/NoiseRemoval.cpp:850
msgid "Noise reduction"
-msgstr ""
+msgstr "åªå£°åå°"
-#: effects/NoiseRemoval.cpp:799
+#: effects/NoiseRemoval.cpp:854
msgid "Frequency smoothing (Hz):"
-msgstr ""
+msgstr "é¢çåæ»(Hz)ï¼"
#: effects/NoiseRemoval.cpp:859
msgid "Frequency smoothing"
-msgstr ""
+msgstr "é¢çåæ»"
-#: effects/NoiseRemoval.cpp:807
+#: effects/NoiseRemoval.cpp:863
msgid "Attack/decay time (secs):"
-msgstr ""
+msgstr "ä¸å/ä¸éæ¶é´(ç§)ï¼"
#: effects/NoiseRemoval.cpp:868
msgid "Attach/decay time"
-msgstr ""
+msgstr "ä¸å/ä¸éæ¶é´"
-#: ../src/effects/NoiseRemoval.h:35
+#: effects/NoiseRemoval.h:35
msgid "Noise Removal..."
msgstr "åªå£°æ¶é¤..."
-#: ../src/effects/NoiseRemoval.h:40
+#: effects/NoiseRemoval.h:50
msgid "Creating Noise Profile"
-msgstr "å建åªå£°ç¹å¾"
+msgstr "å建åªå£°ç¹å¾ä¸"
-#: ../src/effects/NoiseRemoval.h:42
+#: effects/NoiseRemoval.h:52
msgid "Removing Noise"
-msgstr "æ¶é¤åªå£°"
+msgstr "æ¶é¤åªå£°ä¸"
-#: effects/Normalize.cpp:68
+#. i18n-hint: First %s is the effect name, 2nd and 3rd are either true or
+#. * false (translated below) if those options were selected
+#: effects/Normalize.cpp:70
#, c-format
msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
-msgstr ""
+msgstr "åºç¨ææï¼ %s æ¶é¤ ç´æµåç§» = %sï¼ å½ä¸æ¯å¹
= %s"
-#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
-msgid "false"
-msgstr ""
-
-#: effects/Normalize.cpp:70 effects/Normalize.cpp:71
+#. i18n-hint: true here means that the option was
+#. * selected. Opposite false if not selected
+#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
msgid "true"
-msgstr ""
+msgstr "æ¯"
-#: effects/Normalize.cpp:73
+#: effects/Normalize.cpp:77
#, c-format
msgid ", maximum amplitude = %.1f dB"
-msgstr ""
+msgstr "ï¼ æå°æ¯å¹
= %.1f dB"
-#: ../src/BatchCommands.cpp:99
-#: ../src/BatchCommands.cpp:104
-#: ../src/BatchCommands.cpp:112
-#: ../src/effects/Normalize.cpp:76
+#: effects/Normalize.cpp:327
msgid "Normalize"
msgstr "å½ä¸å"
-#: effects/Normalize.cpp:351 effects/Normalize.cpp:352
+#: effects/Normalize.cpp:351
msgid "Remove any DC offset (center on 0.0 vertically)"
-msgstr ""
+msgstr "æ¶é¤ç´æµåç§»(åç´ä»¥0.0为ä¸å¿)"
-#: effects/Normalize.cpp:357
+#: effects/Normalize.cpp:354
msgid "Normalize maximum amplitude to:"
-msgstr ""
+msgstr "å½ä¸åæå¤§æ¯å¹
å°ï¼"
-#: effects/Normalize.cpp:336
+#: effects/Normalize.cpp:362
msgid "-"
-msgstr ""
+msgstr "-"
#: effects/Normalize.cpp:367
msgid "Maximum amplitude dB"
-msgstr ""
+msgstr "æå¤§æ¯å¹
dB"
-#: ../src/effects/Normalize.h:31
+#: effects/Normalize.h:33
msgid "Normalize..."
msgstr "å½ä¸å..."
-#: ../src/effects/Normalize.h:35
+#: effects/Normalize.h:49
msgid "Normalizing..."
-msgstr "å½ä¸å..."
+msgstr "å½ä¸åä¸..."
-#: ../src/effects/Phaser.cpp:53
+#: effects/Phaser.cpp:65
#, c-format
msgid "Applied effect: %s %d stages, %.0f%% wet, frequency = %.1f Hz, start phase = %.0f deg, depth = %d, feedback = %.0f%%"
-msgstr "åºç¨ææ: %s %d é¶æ®µ, %.0f%% 湿(wet), é¢ç = %.1f Hz, èµ·å§ç¸ä½ = %.0f 度, 深度 = %d, åé¦ = %.0f%%"
+msgstr "åºç¨ææï¼ %s %d é¶æ®µï¼ %.0f%% æ¹¿ï¼ é¢ç = %.1f Hzï¼ èµ·å§ç¸ä½ = %.0f åº¦ï¼ æ·±åº¦ = %dï¼ åé¦ = %.0f%%"
-#: ../src/effects/Phaser.cpp:471
+#: effects/Phaser.cpp:226
msgid "Stages:"
-msgstr "é¶æ®µ:"
+msgstr "é¶æ®µï¼"
#: effects/Phaser.cpp:229
msgid "Stages"
-msgstr ""
+msgstr "é¶æ®µ"
#: effects/Phaser.cpp:231
msgid "Dry/Wet:"
-msgstr ""
+msgstr "å¹²/湿ï¼"
#: effects/Phaser.cpp:234
msgid "Dry Wet"
-msgstr ""
+msgstr "干湿"
-#: ../src/effects/Phaser.cpp:513
-#: ../src/effects/Wahwah.cpp:483
+#: effects/Phaser.cpp:236 effects/Wahwah.cpp:221
msgid "LFO Frequency (Hz):"
-msgstr "LFO é¢ç (Hz):"
+msgstr "ä½é¢æ¯è¡é¢ç (Hz)ï¼"
#: effects/Phaser.cpp:239 effects/Wahwah.cpp:224
msgid "LFO frequency in hertz"
-msgstr ""
+msgstr "ä½é¢æ¯è¡é¢ç (Hz)ï¼"
-#: ../src/effects/Phaser.cpp:529
-#: ../src/effects/Wahwah.cpp:499
+#: effects/Phaser.cpp:241 effects/Wahwah.cpp:226
msgid "LFO Start Phase (deg.):"
-msgstr "LFO å¼å§ç¸ä½ (è§åº¦):"
+msgstr "ä½é¢æ¯è¡å¼å§ç¸ä½ (度)ï¼"
#: effects/Phaser.cpp:244 effects/Wahwah.cpp:229
msgid "LFO start phase in degrees"
-msgstr ""
+msgstr "ä½é¢æ¯è¡å¼å§ç¸ä½ (度)ï¼"
-#: ../src/effects/Phaser.cpp:545
+#: effects/Phaser.cpp:246
msgid "Depth:"
-msgstr "深度:"
+msgstr "深度ï¼"
#: effects/Phaser.cpp:249 effects/Wahwah.cpp:234
msgid "Depth in percent"
-msgstr ""
+msgstr "深度ç¾åæ¯"
-#: ../src/effects/Phaser.cpp:561
+#: effects/Phaser.cpp:251
msgid "Feedback (%):"
-msgstr "åé¦ (%):"
+msgstr "åé¦ (%)ï¼"
#: effects/Phaser.cpp:254
msgid "Feedback in percent"
-msgstr ""
+msgstr "åé¦ç¾åæ¯"
-#: ../src/effects/Phaser.h:38
+#: effects/Phaser.h:45
msgid "Phaser..."
msgstr "ç§»ç¸å¨..."
-#: ../src/effects/Phaser.h:42
+#: effects/Phaser.h:59
msgid "Applying Phaser"
msgstr "æ£å¨åºç¨ç§»ç¸å¨"
-#: effects/Repair.cpp:94
-msgid "The Repair effect is intended to be used on very short sections of damaged audio (up to 128 samples).\n"
+#: effects/Repair.cpp:99
+msgid ""
+"The Repair effect is intended to be used on very short sections of damaged audio (up to 128 samples).\n"
"\n"
"Zoom in and select a tiny fraction of a second to repair."
msgstr ""
+"ä¿®å¤æææ¯ç¨å¨å¾çç䏿®µæåçé³é¢ä¸ç(æå¤128ä¸ªæ ·æ¬)ã\n"
+"\n"
+"æ¾å¤§ï¼ç¶åéæ©å¾å¾®å°ç䏿®µæ¥è¿è¡ä¿®å¤ã"
#: effects/Repair.cpp:105
-msgid "Repair works by using audio data outside the selection region.\n"
+msgid ""
+"Repair works by using audio data outside the selection region.\n"
"\n"
"Please select a region that has audio touching at least one side of it.\n"
"\n"
"The more surrounding audio, the better it performs."
msgstr ""
+"ä¿®å¤æ¯éè¿ä½¿ç¨é段å¤çæ°æ®èµ·ä½ç¨çã\n"
+"\n"
+"è¯·éæ©ä¸ä¸ªè³å°æç¿¼ä¾§æé³é¢çéæ®µã\n"
+"\n"
+"å¨å´çé³é¢è¶å¤ï¼ä¿®å¤ææè¶å¥½ã"
-#: effects/Repair.h:33
+#: effects/Repair.h:43
msgid "Repairing damaged audio"
-msgstr ""
+msgstr "ä¿®å¤åæé³é¢ä¸"
-#: ../src/effects/Repeat.cpp:36
+#: effects/Repeat.cpp:50
#, c-format
msgid "Repeated %d times"
msgstr "éå¤%d次"
-#: ../src/effects/Repeat.cpp:62
+#: effects/Repeat.cpp:76
msgid "Tracks are too long to repeat the selection."
msgstr "轨é太é¿ï¼æ æ³éå¤é段ã"
-#: ../src/effects/Repeat.cpp:63
-#: ../src/effects/Repeat.cpp:67
+#: effects/Repeat.cpp:77 effects/Repeat.cpp:186
msgid "Repeat"
msgstr "éå¤"
-#: effects/Repeat.cpp:212
-#, fuzzy
+#: effects/Repeat.cpp:211
msgid "Number of times to repeat:"
-msgstr "é夿¬¡æ°:"
+msgstr "é夿¬¡æ°ï¼"
-#: effects/Repeat.cpp:221
+#: effects/Repeat.cpp:220
msgid "New selection length: hh:mm:ss"
-msgstr ""
+msgstr "æ°çéæ®µé¿åº¦ï¼ æ¶:å:ç§"
-#: ../src/effects/Repeat.cpp:252
-#: ../src/effects/Repeat.cpp:291
+#: effects/Repeat.cpp:252
msgid "New selection length: "
-msgstr "æ°çéæ®µé¿åº¦:"
+msgstr "æ°çéæ®µé¿åº¦ï¼"
-#: widgets/TimeTextCtrl.cpp:199
+#. i18n-hint: Name of time display format that shows time in hours, minutes
+#. * and seconds
+#: effects/Repeat.cpp:261 widgets/TimeTextCtrl.cpp:270
msgid "hh:mm:ss"
-msgstr ""
+msgstr "æ¶:å:ç§"
-#: ../src/effects/Repeat.h:32
+#: effects/Repeat.h:33
msgid "Repeat..."
msgstr "éå¤..."
-#: ../src/effects/Repeat.h:36
+#: effects/Repeat.h:47
msgid "Performing Repeat"
-msgstr "é夿§è¡"
+msgstr "éå¤ä¸"
-#: ../src/effects/Reverse.h:30
+#: effects/Reverse.h:30
msgid "Reverse"
msgstr "ååå转"
-#: ../src/effects/Reverse.h:34
+#: effects/Reverse.h:44
msgid "Reversing"
-msgstr "ååå转"
+msgstr "ååå转ä¸"
#: effects/Silence.cpp:32
msgid "Silence Generator"
-msgstr ""
+msgstr "éé³çæå¨"
#: effects/Silence.h:34
-#, fuzzy
msgid "Silence..."
msgstr "éé³..."
-#: ../src/effects/Silence.h:39
+#: effects/Silence.h:48
msgid "Generating Silence"
-msgstr "产çéé³"
+msgstr "çæéé³ä¸"
-#: ../src/effects/Silence.h:44
+#: effects/Silence.h:53
#, c-format
msgid "Applied effect: Generate Silence, %.6lf seconds"
-msgstr "åºç¨ææ: çæéé³, %.6lf ç§"
+msgstr "åºç¨ææï¼ çæéé³ï¼ %.6lf ç§"
#: effects/SimplePairedTwoTrack.h:120
msgid "Sorry, this effect cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr ""
+msgstr "æ±æï¼å½ç«ä½å£°è½¨éä¸å¹é
æ¶ï¼æ¤æææ æ³æ§è¡ã"
-#: ../src/effects/SpikeCleaner.cpp:52
+#: effects/SpikeCleaner.cpp:69
msgid "Spike Cleaner"
-msgstr "å³°åºæ¸
é¤"
+msgstr "å³°åºæ¸
é¤å¨"
-#: ../src/effects/SpikeCleaner.cpp:143
+#: effects/SpikeCleaner.cpp:160
msgid "SpikeCleaner by Lynn Allan"
-msgstr "å³°åºæ¸
é¤(Lynn Allanæä¾)"
+msgstr "å³°åºæ¸
é¤å¨(Lynn Allanæä¾)"
-#: ../src/effects/SpikeCleaner.cpp:148
-msgid "Max Spike Duration (milliseconds): \n"
+#: effects/SpikeCleaner.cpp:165
+msgid ""
+"Max Spike Duration (milliseconds): \n"
"(99999 or greater is off)"
-msgstr "æå¤§å³°åºæç»æ¶é´ (毫ç§): \n"
+msgstr ""
+"æå¤§å³°åºæç»æ¶é´ (毫ç§)ï¼ \n"
"(99999 忴大å¼è¡¨ç¤ºå
³é)"
-#: ../src/effects/SpikeCleaner.cpp:161
-#: ../src/effects/TruncSilence.cpp:255
+#: effects/SpikeCleaner.cpp:178
msgid "Theshold for silence: "
-msgstr "éé³éå¼:"
+msgstr "éé³éå¼ï¼"
-#: ../src/effects/SpikeCleaner.h:27
+#: effects/SpikeCleaner.h:27
msgid "Spike Cleaner..."
-msgstr "å³°åºæ¸
é¤..."
+msgstr "å³°åºæ¸
é¤å¨..."
-#: ../src/effects/SpikeCleaner.h:31
+#: effects/SpikeCleaner.h:35
msgid "Applying Spike Cleaner..."
-msgstr "æ£å¨è¿è¡å³°åºæ¸
é¤..."
+msgstr "å³°åºæ¸
é¤ä¸..."
#: effects/StereoToMono.h:23
-#, fuzzy
msgid "&Stereo to Mono"
-msgstr "ç«ä½å£°è³å声é"
+msgstr "ç«ä½å£°è³å声é(&S)"
#: effects/StereoToMono.h:38
-#, fuzzy
msgid "Applying Stereo to Mono"
msgstr "æ£å¨å°ç«ä½å£°è½¬æ¢ä¸ºå声é"
#: effects/TimeScale.cpp:140
msgid "Time Scale"
-msgstr ""
+msgstr "æ¶é´ç¼©æ¾"
#: effects/TimeScale.cpp:176
msgid "Sliding Time Scale/Pitch Shift"
-msgstr ""
+msgstr "è°èæ¶é´ç¼©æ¾/é³é«åå"
#: effects/TimeScale.cpp:178
msgid "using SBSMS, by Clayton Otey"
-msgstr ""
+msgstr "使ç¨SBSMS(Clayton Oteyæä¾)"
#: effects/TimeScale.cpp:187
msgid "Initial Tempo Change (%):"
-msgstr ""
+msgstr "åå§è奿¹å(%)ï¼"
#: effects/TimeScale.cpp:191
msgid "Final Tempo Change (%):"
-msgstr ""
+msgstr "æç»è奿¹å(%)ï¼"
#: effects/TimeScale.cpp:202
msgid "Initial Tempo Change (%)"
-msgstr ""
+msgstr "åå§è奿¹å(%)ï¼"
#: effects/TimeScale.cpp:211
msgid "Final Tempo Change (%)"
-msgstr ""
+msgstr "æç»è奿¹å(%)ï¼"
#: effects/TimeScale.cpp:219
msgid "Initial Pitch Shift (semitones) [-12 to 12]:"
-msgstr ""
+msgstr "åå§é³é«åå(åé³)[-12å°12]ï¼"
#: effects/TimeScale.cpp:223
msgid "Final Pitch Shift (semitones) [-12 to 12]:"
-msgstr ""
+msgstr "æç»é³é«åå(åé³)[-12å°12]ï¼"
#: effects/TimeScale.h:33
msgid "Sliding Time Scale/Pitch Shift..."
-msgstr ""
+msgstr "è°èæ¶é´ç¼©æ¾/é³é«åå..."
#: effects/TimeScale.h:47
msgid "Changing Tempo/Pitch"
-msgstr ""
+msgstr "æ¹åèå¥/é³é«"
-#: effects/ToneGen.cpp:59
+#: effects/ToneGen.cpp:61
#, c-format
msgid "Applied effect: Generate %s wave %s, frequency = %.2f Hz, amplitude = %.2f, %.6lf seconds"
-msgstr ""
+msgstr "åºç¨ææï¼çæ %s æ³¢ %s, é¢ç= %.2f Hz,æ¯å¹
= %.2f, %.6lf ç§"
-#: ../src/widgets/Meter.cpp:343
+#: effects/ToneGen.cpp:69 widgets/Meter.cpp:412
msgid "Linear"
msgstr "线æ§"
#: effects/ToneGen.cpp:70
msgid "Logarithmic"
-msgstr ""
+msgstr "对æ°"
-#: effects/ToneGen.cpp:66
+#: effects/ToneGen.cpp:71
msgid "Chirp Generator"
-msgstr ""
+msgstr "è鸣çæå¨"
-#: ../src/effects/ToneGen.cpp:50
+#: effects/ToneGen.cpp:71
msgid "Tone Generator"
msgstr "åé³è°åçå¨"
-#: ../src/effects/ToneGen.cpp:55
+#: effects/ToneGen.cpp:72
msgid "Sine"
msgstr "æ£å¼¦"
-#: ../src/effects/ToneGen.cpp:56
+#: effects/ToneGen.cpp:73
msgid "Square"
msgstr "å¹³æ¹"
-#: ../src/effects/ToneGen.cpp:57
+#: effects/ToneGen.cpp:74
msgid "Sawtooth"
-msgstr "é¯é½¿æ³¢"
+msgstr "é¯é½¿"
-#: effects/ToneGen.cpp:70
+#: effects/ToneGen.cpp:75
msgid "Square, no alias"
-msgstr ""
+msgstr "å¹³æ¹ï¼æ æ··å "
-#: effects/ToneGen.cpp:298
+#: effects/ToneGen.cpp:321 effects/ToneGen.cpp:358
msgid "Frequency (Hz)"
-msgstr ""
+msgstr "é¢ç (Hz)"
-#: ../src/effects/ToneGen.cpp:276
+#: effects/ToneGen.cpp:349
msgid "Waveform:"
-msgstr "波形:"
+msgstr "波形ï¼"
#: effects/ToneGen.cpp:358
msgid "Frequency Hertz Start"
-msgstr ""
+msgstr "å¼å§é¢ç Hz"
#: effects/ToneGen.cpp:359
msgid "Frequency Hertz End"
-msgstr ""
+msgstr "ç»æé¢ç Hz"
#: effects/ToneGen.cpp:360
msgid "Amplitude Start"
-msgstr ""
+msgstr "å¼å§æ¯å¹
"
#: effects/ToneGen.cpp:361
msgid "Amplitude End"
-msgstr ""
+msgstr "ç»ææ¯å¹
"
-#: effects/ToneGen.cpp:365
+#: effects/ToneGen.cpp:366
msgid "Interpolation:"
-msgstr ""
+msgstr "å
æç®æ³ï¼"
-#: effects/ToneGen.h:39
+#: effects/ToneGen.h:40
msgid "Chirp..."
-msgstr ""
+msgstr "è鸣..."
-#: effects/ToneGen.h:39
+#: effects/ToneGen.h:40
msgid "Tone..."
-msgstr ""
+msgstr "åé³..."
-#: effects/ToneGen.h:43
+#: effects/ToneGen.h:54
msgid "Generating Chirp"
-msgstr ""
+msgstr "çæè鸣ä¸"
-#: ../src/effects/ToneGen.h:43
+#: effects/ToneGen.h:54
msgid "Generating Tone"
-msgstr "çæåé³è°"
+msgstr "çæåé³ä¸"
#: effects/TruncSilence.cpp:113
msgid "All tracks must have the same sample rate"
-msgstr ""
+msgstr "ææçè§å®å¿
é¡»æ¯åä¸éæ ·ç"
-#: effects/TruncSilence.cpp:113 effects/TruncSilence.cpp:322
+#: effects/TruncSilence.cpp:113 effects/TruncSilence.cpp:321
msgid "Truncate Silence"
-msgstr ""
+msgstr "æªå»éé³"
-#: effects/TruncSilence.cpp:346
-msgid "Max silence duration:"
-msgstr ""
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr "(Lynn Allan ä¸ Philip Van Barenæä¾)"
-#: prefs/AudioIOPrefs.cpp:175 prefs/AudioIOPrefs.cpp:178
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
+msgstr "æå°éé³æç»æ¶é´"
+
+#: effects/TruncSilence.cpp:348 prefs/AudioIOPrefs.cpp:197
+#: prefs/AudioIOPrefs.cpp:200 prefs/MidiIOPrefs.cpp:174
+#: prefs/MidiIOPrefs.cpp:177
msgid "milliseconds"
-msgstr ""
+msgstr "毫ç§"
+
+#: effects/TruncSilence.cpp:345
+msgid "Max silence duration:"
+msgstr "æå¤§éé³æç»æ¶é´ï¼"
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr "éé³å缩"
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ":1"
-#: effects/TruncSilence.cpp:351
+#: effects/TruncSilence.cpp:350
msgid "Threshold for silence:"
-msgstr ""
+msgstr "éé³éå¼ï¼"
-#: effects/TruncSilence.cpp:375
-msgid " Duration must be at least 1 millisecond"
+#: effects/TruncSilence.cpp:506
+msgid ""
+" Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
msgstr ""
+" æç»æ¶é´è³å°è¦1毫ç§\n"
+" å缩çè³å°è¦1:1"
-#: ../src/effects/TruncSilence.h:29
+#: effects/TruncSilence.h:28
msgid "Truncate Silence..."
-msgstr "æªå»éé³é¨å..."
+msgstr "æªå»éé³..."
-#: ../src/effects/TruncSilence.h:33
+#: effects/TruncSilence.h:42
msgid "Truncating Silence..."
-msgstr "æ£å¨æªå»éé³é¨å..."
+msgstr "æªå»éé³ä¸..."
+
+#: effects/ladspa/LadspaEffect.cpp:615 effects/lv2/LV2Effect.cpp:824
+msgid "Effect Settings"
+msgstr "ææè®¾å®"
+
+#: effects/ladspa/LadspaEffect.cpp:580 effects/ladspa/LadspaEffect.cpp:588
+#: prefs/GUIPrefs.cpp:51 prefs/QualityPrefs.cpp:72
+msgid "None"
+msgstr "æ "
+
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr "é¢è®¾ï¼"
-#: ../src/effects/VST/VSTEffect.cpp:180
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "æ±æï¼å½ç«ä½å£°è½¨éä¸å¹é
æ¶ï¼VSTæææ æ³æ§è¡ã"
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr "è½½å
¥"
-#: ../src/effects/VST/VSTEffect.cpp:196
-msgid "Can't process replacing"
-msgstr "ä¸è½è¿è¡æ¿æ¢æä½"
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr "ä¿å"
-#: ../src/effects/VST/VSTEffect.cpp:410
-msgid "VST Plug-in parameters:"
-msgstr "VST æä»¶åæ°:"
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr "载人VSTç¨åºï¼"
-#: ../src/effects/Wahwah.cpp:46
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr "载人VSTç¨åºé误"
+
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr "VSTç¨åºä¿å为ï¼"
+
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr "è¯¥åæ°æä»¶ç±%sä¿åãç»§ç»åï¼"
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr "åºç¨ææï¼"
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr "ç«ä½å£°ç两æ¡é³è½¨å¿
é¡»éæ ·çç¸åã"
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr "ç«ä½å£°ç两æ¡é³è½¨å¿
é¡»é¿åº¦ç¸åã"
+
+#: effects/Wahwah.cpp:61
#, c-format
msgid "Applied effect: %s frequency = %.1f Hz, start phase = %.0f deg, depth = %.0f%%, resonance = %.1f, frequency offset = %.0f%%"
-msgstr "åºç¨ææ: %s é¢ç = %.1f Hz, å¼å§ç¸ä½ = %.0f 度, 深度 = %.0f%%, è°æ¯ = %.1f, é¢çåç§» = %.0f%%"
+msgstr "åºç¨ææï¼ %s é¢ç = %.1f Hzï¼ å¼å§ç¸ä½ = %.0f åº¦ï¼ æ·±åº¦ = %.0f%%ï¼ è°æ¯ = %.1fï¼ é¢çåç§» = %.0f%%"
-#: ../src/effects/Wahwah.cpp:57
+#: effects/Wahwah.cpp:203
msgid "Wahwah"
-msgstr "åå¿(Wahwah)"
+msgstr "åå"
-#: ../src/effects/Wahwah.cpp:515
+#: effects/Wahwah.cpp:231
msgid "Depth (%):"
-msgstr "深度 (%):"
+msgstr "深度 (%)ï¼"
-#: ../src/effects/Wahwah.cpp:531
+#: effects/Wahwah.cpp:236
msgid "Resonance:"
-msgstr "å
±é¸£:"
+msgstr "å
±é¸£ï¼"
#: effects/Wahwah.cpp:239
msgid "Resonance"
-msgstr ""
+msgstr "å
±é¸£ï¼"
-#: ../src/effects/Wahwah.cpp:547
+#: effects/Wahwah.cpp:241
msgid "Wah Frequency Offset (%):"
-msgstr "\"åå¿\"声(Wah)é¢çåç§» (%):"
+msgstr "ååé¢çåç§» (%)ï¼"
#: effects/Wahwah.cpp:244
msgid "Wah frequency offset in percent"
-msgstr ""
+msgstr "ååé¢çåç§» (%)ï¼"
-#: ../src/effects/Wahwah.h:34
+#: effects/Wahwah.h:41
msgid "Wahwah..."
-msgstr "\"åå¿\"声(Wahwah)..."
+msgstr "åå..."
-#: ../src/effects/Wahwah.h:38
+#: effects/Wahwah.h:55
msgid "Applying Wahwah"
-msgstr "æ£å¨ä½¿ç¨'åå¿'声(Wahwah)产çå¨"
+msgstr "åºç¨ååä¸"
-#: ../src/effects/audiounits/AudioUnitEffect.cpp:100
-#: ../src/effects/ladspa/LadspaEffect.cpp:138
+#: effects/audiounits/AudioUnitEffect.cpp:138
+#: effects/ladspa/LadspaEffect.cpp:176 effects/lv2/LV2Effect.cpp:192
#, c-format
msgid "Performing Effect: %s"
-msgstr "æ§è¡ææ: %s"
+msgstr "æ§è¡ææï¼ %s"
-#: effects/ladspa/LadspaEffect.cpp:189
+#: effects/ladspa/LadspaEffect.cpp:196 effects/lv2/LV2Effect.cpp:212
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr ""
+msgstr "æ±æï¼å½ç«ä½å£°è½¨éä¸å¹é
æ¶ï¼æä»¶æææ æ³æ§è¡ã"
-#: ../src/effects/NoiseRemoval.cpp:574
-#: ../src/effects/ladspa/LadspaEffect.cpp:436
-#: ../src/effects/ladspa/LadspaEffect.cpp:444
-#: ../src/prefs/QualityPrefs.cpp:167
-msgid "None"
-msgstr "æ "
-
-#: ../src/effects/ladspa/LadspaEffect.cpp:438
+#: effects/ladspa/LadspaEffect.cpp:582 effects/lv2/LV2Effect.cpp:799
+#: effects/vamp/VampEffect.cpp:397
msgid "Author: "
-msgstr "ä½è
:"
+msgstr "ä½è
ï¼"
-#: ../src/effects/ladspa/LadspaEffect.cpp:453
-msgid "Effect Settings"
-msgstr "ææè®¾å®"
-
-#: ../src/effects/Silence.cpp:127
-#: ../src/effects/ToneGen.cpp:319
+#: effects/ladspa/LadspaEffect.cpp:710 effects/ladspa/LadspaEffect.cpp:713
+#: effects/lv2/LV2Effect.cpp:835 effects/lv2/LV2Effect.cpp:838
msgid "Length (seconds)"
msgstr "é¿åº¦ (ç§)"
-#: effects/lv2/LV2Effect.cpp:849 effects/lv2/LV2Effect.cpp:852
+#: effects/lv2/LV2Effect.cpp:850 effects/lv2/LV2Effect.cpp:853
msgid "Note length (seconds)"
-msgstr ""
+msgstr "é³ç¬¦é¿åº¦ (ç§)"
-#: effects/lv2/LV2Effect.cpp:860 effects/lv2/LV2Effect.cpp:863
+#: effects/lv2/LV2Effect.cpp:861 effects/lv2/LV2Effect.cpp:864
msgid "Note velocity"
-msgstr ""
+msgstr "é³ç¬¦é度"
-#: effects/lv2/LV2Effect.cpp:871 effects/lv2/LV2Effect.cpp:874
+#: effects/lv2/LV2Effect.cpp:872 effects/lv2/LV2Effect.cpp:875
msgid "Note key"
-msgstr ""
+msgstr "é³ç¬¦é®"
-#: ../src/effects/nyquist/Nyquist.cpp:215
+#: effects/nyquist/Nyquist.cpp:257
msgid "Applying Nyquist Effect..."
-msgstr "æ£å¨åºç¨å¥å¥æ¯ç¹(Nyquist)ææ..."
+msgstr "æ£å¨åºç¨Nyquistææ..."
-#: ../src/effects/nyquist/Nyquist.cpp:222
+#: effects/nyquist/Nyquist.cpp:264 effects/nyquist/Nyquist.cpp:326
msgid "Nyquist Prompt..."
-msgstr "å¥å¥æ¯ç¹(Nyquist)表达å¼..."
+msgstr "Nyquist表达å¼..."
-#: ../src/effects/nyquist/Nyquist.cpp:285
+#: effects/nyquist/Nyquist.cpp:327
msgid "Enter Nyquist Command: "
-msgstr "è¾å
¥å¥å¥æ¯ç¹(Nyquist)å½ä»¤:"
+msgstr "è¾å
¥Nyquistå½ä»¤ï¼"
-#: ../src/effects/nyquist/Nyquist.cpp:375
+#: effects/nyquist/Nyquist.cpp:417
msgid "Sorry, cannot apply effect on stereo tracks where the tracks don't match."
msgstr "æ±æï¼å½ç«ä½å£°è½¨éä¸å¹é
æ¶ï¼æ æ³æ§è¡æææä½ã"
-#: ../src/effects/nyquist/Nyquist.cpp:402
+#: effects/nyquist/Nyquist.cpp:445
msgid "Nyquist"
-msgstr "å¥å¥æ¯ç¹(Nyquist)"
+msgstr "Nyquist"
-#: ../src/effects/nyquist/Nyquist.cpp:403
+#: effects/nyquist/Nyquist.cpp:446
msgid "Nyquist Output: "
-msgstr "å¥å¥æ¯ç¹(Nyquist)è¾åº: "
+msgstr "Nyquistè¾åºï¼ "
-#: effects/nyquist/Nyquist.cpp:594 effects/nyquist/Nyquist.cpp:605
+#: effects/nyquist/Nyquist.cpp:603 effects/nyquist/Nyquist.cpp:614
msgid "Nyquist returned the value:"
-msgstr ""
+msgstr "Nyquistè¿åçå¼ï¼"
-#: ../src/effects/nyquist/Nyquist.cpp:606
+#: effects/nyquist/Nyquist.cpp:656
msgid "Nyquist did not return audio.\n"
-msgstr "å¥å¥æ¯ç¹(Nyquist)è¿ç®æ²¡æè¿åé³é¢ã\n"
+msgstr "Nyquistè¿ç®æ²¡æè¿åé³é¢ã\n"
-#: ../src/effects/nyquist/Nyquist.cpp:617
+#: effects/nyquist/Nyquist.cpp:667
msgid "Nyquist returned too many audio channels.\n"
-msgstr "å¥å¥æ¯ç¹(Nyquist)è¿åäºè¿å¤çé³é¢å£°éã\n"
+msgstr "Nyquistè¿åäºè¿å¤çé³é¢å£°éã\n"
-#: effects/vamp/VampEffect.cpp:75
+#: effects/vamp/VampEffect.cpp:80
#, c-format
msgid "Extracting features: %s"
-msgstr ""
+msgstr "解读ææä¸: %s"
-#: effects/vamp/VampEffect.cpp:106
+#: effects/vamp/VampEffect.cpp:111
msgid "Sorry, Vamp Plug-ins cannot be run on stereo tracks where the individual channels of the track do not match."
-msgstr ""
+msgstr "æ±æï¼å½ç«ä½å£°è½¨éä¸å¹é
æ¶ï¼Vampæä»¶æ æ³æ§è¡æä½ã"
-#: effects/vamp/VampEffect.cpp:120
+#: effects/vamp/VampEffect.cpp:125
msgid "Sorry, failed to load Vamp Plug-in."
-msgstr ""
+msgstr "æ±æï¼è½½å
¥Vampæä»¶å¤±è´¥ã"
-#: effects/vamp/VampEffect.cpp:228
+#: effects/vamp/VampEffect.cpp:233
msgid "Sorry, Vamp Plug-in failed to initialize."
-msgstr ""
+msgstr "æ±æï¼Vampæä»¶åå§å失败ã"
-#: effects/vamp/VampEffect.cpp:376
+#: effects/vamp/VampEffect.cpp:389
msgid " - Vamp audio analysis plugin"
-msgstr ""
+msgstr "- Vampé³é¢åææä»¶"
-#: effects/vamp/VampEffect.cpp:423
+#: effects/vamp/VampEffect.cpp:425
msgid "Plugin Settings"
-msgstr ""
+msgstr "æä»¶è®¾å®"
-#: effects/vamp/VampEffect.cpp:446
+#: effects/vamp/VampEffect.cpp:444 effects/vamp/VampEffect.cpp:450
msgid "Program"
-msgstr ""
+msgstr "ç¨åº"
#: export/Export.cpp:469
msgid "All the selected audio is muted."
-msgstr ""
+msgstr "ææéæ©çé³é¢è¢«éé³ã"
#: export/Export.cpp:471
msgid "All the audio is muted."
-msgstr ""
+msgstr "ææçé³é¢è¢«éé³ã"
-#: export/Export.cpp:445
+#: export/Export.cpp:527
msgid "Export File"
-msgstr ""
+msgstr "å¯¼åºæä»¶"
-#: export/Export.cpp:453
+#: export/Export.cpp:536
msgid "&Options..."
-msgstr ""
+msgstr "é项(&O)..."
-#: ../src/export/Export.cpp:205
+#: export/Export.cpp:577
msgid "Are you sure you want to save the file as \""
msgstr "æ¨ç¡®è®¤è¦å°è¯¥æä»¶å为\""
-#: export/Export.cpp:495
+#: export/Export.cpp:597
#, c-format
-msgid "You are about to save a %s file with the name \"%s\".\n"
+msgid ""
+"You are about to save a %s file with the name \"%s\".\n"
"\n"
"Normally these files end in \".%s\", and some programs will not open files with nonstandard extensions.\n"
"\n"
"Are you sure you want to save the file under this name?"
msgstr ""
+"ä½ å³å°æä¸ä¸ª %s æä»¶ä¿å为 \"%s\"ã\n"
+"\n"
+"é常è¿äºæä»¶ä»¥\".%s\"ç»å°¾ï¼æäºç¨åºæä¸å¼ä¸æ åæ©å±åçæä»¶ã\n"
+"\n"
+"ä½ ç¡®å®è¦ææä»¶ç¨è¿ä¸ªæä»¶åä¿ååï¼"
-#: export/Export.cpp:516
+#: export/Export.cpp:618
#, c-format
msgid "A file named \"%s\" already exists. Replace?"
-msgstr ""
+msgstr "ä¸ä¸ªåå«\"%s\"çæä»¶å·²ç»åå¨ï¼æ¿æ¢åï¼"
-#: ../src/export/Export.cpp:143
+#: export/Export.cpp:720
msgid "Your tracks will be mixed down to two stereo channels in the exported file."
msgstr "æ¨ç轨éå°å¨å¯¼åºæä»¶ä¸è¢«åæä¸ºå声éç«ä½å£°ã"
-#: ../src/export/Export.cpp:147
+#: export/Export.cpp:725
msgid "Your tracks will be mixed down to a single mono channel in the exported file."
msgstr "æ¨ç轨éå°å¨å¯¼åºæä»¶ä¸è¢«åæä¸ºå个声éã"
-#: export/Export.cpp:171
+#: export/Export.cpp:736
msgid "Advanced Mixing Options"
-msgstr ""
+msgstr "é«çº§æ··é³é项"
-#: export/Export.cpp:632
+#: export/Export.cpp:940
#, c-format
msgid "Channel: %2d"
-msgstr ""
+msgstr "ééï¼ %2d"
-#: export/Export.cpp:755
+#: export/Export.cpp:1056
msgid " - Left"
-msgstr ""
+msgstr "ï¼ å·¦"
-#: export/Export.cpp:756
+#: export/Export.cpp:1057
msgid " - Right"
-msgstr ""
+msgstr "- å³"
-#: export/Export.cpp:1072
+#: export/Export.cpp:1082
msgid "Mixer Panel"
-msgstr ""
+msgstr "æ··é³å¨é¢æ¿"
-#: export/Export.cpp:775 export/Export.cpp:829
+#: export/Export.cpp:1088 export/Export.cpp:1135
#, c-format
msgid "Output Channels: %2d"
-msgstr ""
+msgstr "è¾åºå£°éï¼ %2d"
#: export/ExportCL.cpp:55
msgid "Specify Command Line Encoder"
-msgstr ""
+msgstr "设å®å½ä»¤è¡ç¼ç å¨"
-#: export/ExportCL.cpp:70
+#: export/ExportCL.cpp:68
msgid "Command Line Export Setup"
-msgstr ""
+msgstr "å½ä»¤è¡å¯¼åºè®¾ç½®"
-#: export/ExportCL.cpp:75
+#: export/ExportCL.cpp:73
msgid "Command:"
-msgstr ""
+msgstr "å½ä»¤ï¼"
-#: export/ExportCL.cpp:80
+#: export/ExportCL.cpp:78
msgid "Show output"
-msgstr ""
+msgstr "æ¾ç¤ºè¾åº"
-#: export/ExportCL.cpp:87
+#: export/ExportCL.cpp:85
#, c-format
msgid "Data will be piped to standard in. \"%f\" will be replaced with output filename selected."
-msgstr ""
+msgstr "æ°æ®ä¼ç¨ç®¡éè¿æ¥å°æ åè¾å
¥ã\"%f\"ä¼è¢«éæ©çè¾åºæä»¶åæ¿æ¢ã"
-#: export/ExportCL.cpp:219
+#: export/ExportCL.cpp:220
msgid "(external program)"
-msgstr ""
+msgstr "(å¤é¨ç¨åº)"
-#: ../src/export/ExportPCM.cpp:85
+#: export/ExportCL.cpp:251 export/ExportPCM.cpp:484
#, c-format
msgid "Cannot export audio to %s"
msgstr "æ æ³å°é³é¢å¯¼åºè³ %s"
-#: ../src/export/ExportCL.cpp:144
+#: export/ExportCL.cpp:325
msgid "Exporting the selected audio using command-line encoder"
msgstr "ç¨å½ä»¤è¡æ¹å¼çç¼ç å¨å¯¼åºéå®çé³é¢"
-#: ../src/export/ExportCL.cpp:146
+#: export/ExportCL.cpp:326
msgid "Exporting the entire project using command-line encoder"
msgstr "ç¨å½ä»¤è¡æ¹å¼çç¼ç å¨å¯¼åºå
¨é¨çé³é¢"
-#: export/ExportCL.cpp:387
+#: export/ExportCL.cpp:388
msgid "Command Output"
+msgstr "å½ä»¤è¡è¾åº"
+
+#: export/ExportFFmpeg.cpp:61
+msgid ""
+"Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries."
msgstr ""
+"éè¦æ£ç¡®é
ç½®FFmpegæè½ç»§ç»ã\n"
+"ä½ å¯ä»¥å¨'å好é项â =>'åº'ä¸é
ç½®å®ã"
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr "AMRæ¯æä¸å¯åå"
-#: export/ExportFFmpeg.cpp:59
-msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+#: export/ExportFFmpeg.cpp:232
+msgid ""
+"Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
+"éè¦æ£ç¡®é
ç½®FFmpegæè½ç»§ç»ã\n"
+"ä½ å¯ä»¥å¨'å好é项â =>'åº'ä¸é
ç½®å®ã\n"
+"\n"
+"注æï¼AMRä¸è¢«æä»¬çFFmepgå®è£
ç¨åºæ¯æï¼\n"
+"éè¦ä½ èªå·±ç¼è¯FFmepgã"
#: export/ExportFFmpeg.cpp:394
#, c-format
-msgid "FFmpeg cannot find audio codec 0x%x.\n"
+msgid ""
+"FFmpeg cannot find audio codec 0x%x.\n"
"Support for this codec is probably not compiled in."
msgstr ""
+"FFmpegæ¾ä¸å°é³é¢ç¼ç 0x%xã\n"
+"该ç¼ç çæ¯æå¾å¯è½æ²¡æè¢«ç¼è¯å
¥ã"
#: export/ExportFFmpeg.cpp:614
#, c-format
msgid "Attempted to export %d channels, but max. channels for selected output format is %d"
-msgstr ""
+msgstr "å°è¯å¯¼åº %d 个声éï¼ä½éæ©çè¾åºæ ¼å¼æ¯æçæå¤§å£°éæ°æ¯ %d"
-#: export/ExportFFmpeg.cpp:638
+#: export/ExportFFmpeg.cpp:643
#, c-format
msgid "Exporting selected audio as %s"
-msgstr ""
+msgstr "æ£ä»¥ %s 导åºéå®çé³é¢"
-#: export/ExportFFmpeg.cpp:639
+#: export/ExportFFmpeg.cpp:644
#, c-format
msgid "Exporting entire file as %s"
-msgstr ""
+msgstr "以 %s 导åºå
¨é¨çé³é¢"
-#: export/ExportMP3.cpp:1863
+#: export/ExportFFmpeg.cpp:707 export/ExportMP3.cpp:1772
msgid "Invalid sample rate"
-msgstr ""
+msgstr "æ æçéæ ·ç"
-#: export/ExportFFmpeg.cpp:715
+#: export/ExportFFmpeg.cpp:720
#, c-format
-msgid "The project sample rate (%d) is not supported by the current output\n"
+msgid ""
+"The project sample rate (%d) is not supported by the current output\n"
"file format. "
-msgstr ""
+msgstr "该工ç¨çéæ ·ç (%d)ä¸è¢«å½åçè¾åºæä»¶æ ¼å¼æ¯æã"
-#: export/ExportFFmpeg.cpp:718
+#: export/ExportFFmpeg.cpp:723
#, c-format
-msgid "The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
+msgid ""
+"The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
"supported by the current output file format. "
msgstr ""
+"该工ç¨çéæ ·ç (%d)忝ç¹ç(%d kbps)ç»å\n"
+"ä¸è¢«å½åçè¾åºæä»¶æ ¼å¼æ¯æã"
-#: export/ExportMP3.cpp:1882
+#: export/ExportFFmpeg.cpp:726 export/ExportMP3.cpp:1791
msgid "You may resample to one of the rates below."
-msgstr ""
+msgstr "ä½ å¯ä»¥ééæ ·å°ä¸è¿°ä»»ä¸éæ ·çã"
-#: export/ExportMP3.cpp:1905
+#: export/ExportFFmpeg.cpp:754 export/ExportMP3.cpp:1814
msgid "Sample Rates"
-msgstr ""
+msgstr "éæ ·ç"
#: export/ExportFFmpegDialogs.cpp:93
msgid "Specify AC3 Options"
-msgstr ""
+msgstr "AC3ç¹å®é项"
-#: export/ExportFFmpegDialogs.cpp:117
+#: export/ExportFFmpegDialogs.cpp:112
msgid "AC3 Export Setup"
-msgstr ""
+msgstr "AC3导åºè®¾ç½®"
-#: ../src/prefs/FileFormatPrefs.cpp:197
+#: export/ExportFFmpegDialogs.cpp:116 export/ExportFFmpegDialogs.cpp:234
+#: export/ExportFFmpegDialogs.cpp:298 export/ExportFFmpegDialogs.cpp:364
+#: export/ExportFFmpegDialogs.cpp:924 export/ExportMP2.cpp:131
msgid "Bit Rate:"
-msgstr "æ¯ç¹ç:"
+msgstr "æ¯ç¹çï¼"
-#: export/ExportFFmpegDialogs.cpp:162
+#: export/ExportFFmpegDialogs.cpp:157
msgid "Specify AAC Options"
-msgstr ""
+msgstr "AACç¹å®é项"
-#: export/ExportFFmpegDialogs.cpp:178
+#: export/ExportFFmpegDialogs.cpp:168
msgid "AAC Export Setup"
-msgstr ""
+msgstr "AAC导åºè®¾ç½®"
+
+#: export/ExportFFmpegDialogs.cpp:927 export/ExportOGG.cpp:84
+msgid "Quality:"
+msgstr "è´¨éï¼"
-#: export/ExportFFmpegDialogs.cpp:217
+#: export/ExportFFmpegDialogs.cpp:211
msgid "Specify AMR-NB Options"
-msgstr ""
+msgstr "AMR-NBç¹å®é项"
-#: export/ExportFFmpegDialogs.cpp:241
+#: export/ExportFFmpegDialogs.cpp:230
msgid "AMR-NB Export Setup"
-msgstr ""
+msgstr "AMR-NB导åºè®¾ç½®"
-#: export/ExportFFmpegDialogs.cpp:286
+#: export/ExportFFmpegDialogs.cpp:275
msgid "Specify AMR-WB Options"
-msgstr ""
+msgstr "AMR-WBç¹å®é项"
-#: export/ExportFFmpegDialogs.cpp:310
+#: export/ExportFFmpegDialogs.cpp:294
msgid "AMR-WB Export Setup"
-msgstr ""
+msgstr "AMR-WB导åºè®¾ç½®"
-#: export/ExportFFmpegDialogs.cpp:357
+#: export/ExportFFmpegDialogs.cpp:341
msgid "Specify WMA Options"
-msgstr ""
+msgstr "WMAç¹å®é项"
-#: export/ExportFFmpegDialogs.cpp:381
+#: export/ExportFFmpegDialogs.cpp:360
msgid "WMA Export Setup"
-msgstr ""
+msgstr "WMA导åºè®¾ç½®"
-#: export/ExportFFmpegDialogs.cpp:509
+#: export/ExportFFmpegDialogs.cpp:488
#, c-format
msgid "Overwrite preset '%s'?"
-msgstr ""
+msgstr "è¦çç°æçé¢è®¾'%s'ï¼"
-#: export/ExportFFmpegDialogs.cpp:510
+#: export/ExportFFmpegDialogs.cpp:489
msgid "Confirm Overwrite"
-msgstr ""
+msgstr "确认è¦ç"
#: export/ExportFFmpegDialogs.cpp:501
msgid "Please select format before saving a profile"
-msgstr ""
+msgstr "请å¨ä¿åé
ç½®åéæ©æ ¼å¼"
#: export/ExportFFmpegDialogs.cpp:509
msgid "Please select codec before saving a profile"
-msgstr ""
+msgstr "请å¨ä¿åé
ç½®åéæ©ç¼ç "
#: export/ExportFFmpegDialogs.cpp:580
#, c-format
msgid "Preset '%s' does not exist."
-msgstr ""
+msgstr "é¢è®¾ '%s'ä¸åå¨ã"
-#: export/ExportFFmpegDialogs.cpp:803
+#: export/ExportFFmpegDialogs.cpp:795
msgid "Specify Other Options"
-msgstr ""
+msgstr "å
¶ä»ç¹å®é项"
-#: export/ExportFFmpegDialogs.cpp:897
+#: export/ExportFFmpegDialogs.cpp:884
msgid "Preset:"
-msgstr ""
+msgstr "é¢è®¾ï¼"
-#: export/ExportFFmpegDialogs.cpp:898
+#: export/ExportFFmpegDialogs.cpp:885
msgid "Load Preset"
-msgstr ""
+msgstr "载人é¢è®¾"
-#: export/ExportFFmpegDialogs.cpp:899
+#: export/ExportFFmpegDialogs.cpp:886
msgid "Save Preset"
-msgstr ""
+msgstr "ä¿åé¢è®¾"
-#: export/ExportFFmpegDialogs.cpp:900
+#: export/ExportFFmpegDialogs.cpp:887
msgid "Delete Preset"
-msgstr ""
+msgstr "å é¤é¢è®¾"
-#: export/ExportFFmpegDialogs.cpp:901
+#: export/ExportFFmpegDialogs.cpp:888
msgid "Import Presets"
-msgstr ""
+msgstr "导å
¥é¢è®¾"
-#: export/ExportFFmpegDialogs.cpp:902
+#: export/ExportFFmpegDialogs.cpp:889
msgid "Export Presets"
-msgstr ""
+msgstr "导åºé¢è®¾"
-#: export/ExportPCM.cpp:177
+#: export/ExportFFmpegDialogs.cpp:894
msgid "Format:"
-msgstr ""
+msgstr "æ ¼å¼ï¼"
-#: export/ExportFFmpegDialogs.cpp:909
+#: export/ExportFFmpegDialogs.cpp:896
msgid "Codec:"
-msgstr ""
+msgstr "ç¼ç ï¼"
-#: export/ExportFFmpegDialogs.cpp:913
+#: export/ExportFFmpegDialogs.cpp:900
msgid "Not all formats and codecs are compatible. Some parameters (such as bitrate and samplerate) combinations are not compatible with some codecs too."
-msgstr ""
+msgstr "å¹¶éææçæ ¼å¼åç¼ç 齿¯å
¼å®¹çãæäºåæ°ï¼å¦æ¯ç¹çåéæ ·çï¼ç»å䏿äºç¼ç 乿¯ä¸å
¼å®¹çã"
-#: export/ExportFFmpegDialogs.cpp:916
+#: export/ExportFFmpegDialogs.cpp:903
msgid "Format selector:"
-msgstr ""
+msgstr "æ ¼å¼é项ï¼"
-#: export/ExportFFmpegDialogs.cpp:917
+#: export/ExportFFmpegDialogs.cpp:904
msgid "Codec selector:"
-msgstr ""
+msgstr "ç¼ç é项ï¼"
-#: export/ExportFFmpegDialogs.cpp:919
+#: export/ExportFFmpegDialogs.cpp:906
msgid "Show All Formats"
-msgstr ""
+msgstr "æ¾ç¤ºæææ ¼å¼"
-#: export/ExportFFmpegDialogs.cpp:920
+#: export/ExportFFmpegDialogs.cpp:907
msgid "Show All Codecs"
-msgstr ""
+msgstr "æ¾ç¤ºææç¼ç "
#: export/ExportFFmpegDialogs.cpp:914
msgid "Options"
-msgstr ""
+msgstr "é项"
-#: ../src/prefs/GUIPrefs.cpp:98
+#: export/ExportFFmpegDialogs.cpp:918 prefs/GUIPrefs.cpp:166
msgid "Language:"
-msgstr "è¯è¨:"
+msgstr "è¯è¨ï¼"
-#: export/ExportFFmpegDialogs.cpp:932
-msgid "ISO 639 3-letter language code\n"
+#: export/ExportFFmpegDialogs.cpp:919
+msgid ""
+"ISO 639 3-letter language code\n"
"Optional\n"
"empty - automatic"
msgstr ""
+"ISO 639 3å符è¯è¨ç¼ç \n"
+"å¯éç\n"
+"空 - èªå¨"
-#: export/ExportFFmpegDialogs.cpp:934
+#: export/ExportFFmpegDialogs.cpp:921
msgid "Tag:"
-msgstr ""
+msgstr "æ ç¾"
-#: export/ExportFFmpegDialogs.cpp:935
-msgid "Codec tag (FOURCC)\n"
+#: export/ExportFFmpegDialogs.cpp:922
+msgid ""
+"Codec tag (FOURCC)\n"
"Optional\n"
"empty - automatic"
msgstr ""
+"ç¼ç æ ç¾(4åç¼ç )\n"
+"å¯éç\n"
+"空 - èªå¨"
-#: export/ExportFFmpegDialogs.cpp:938
-msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n"
+#: export/ExportFFmpegDialogs.cpp:925
+msgid ""
+"Bit Rate (bits/second) - influences the resulting file size and quality\n"
"Some codecs may only accept specific values (128k, 192k, 256k etc)\n"
"0 - automatic\n"
"Recommended - 192000"
msgstr ""
+"æ¯ç¹ç (bit/ç§) - å½±åæä»¶ç大å°åè´¨é\n"
+"æäºç¼ç åªæ¥åç¹å®çå¼(128k, 192k, 256 ç)\n"
+"0 - èªå¨\n"
+"建议 - 192000"
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr ""
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid ""
+"Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
msgstr ""
+"æ»ä½è´¨éï¼å¨ä¸åçç¼ç ä¸ä½¿ç¨çä¸å\n"
+"vorbiså¿
é\n"
+"0 - èªå¨\n"
+"-1 - å
³ (ä½¿ç¨æ¯ç¹ç代æ¿)"
-#: export/ExportFFmpegDialogs.cpp:943
+#: export/ExportFFmpegDialogs.cpp:930
msgid "Sample Rate:"
-msgstr ""
+msgstr "éæ ·çï¼"
-#: export/ExportFFmpegDialogs.cpp:944
-msgid "Sample rate (Hz)\n"
+#: export/ExportFFmpegDialogs.cpp:931
+msgid ""
+"Sample rate (Hz)\n"
"0 - don't change sample rate"
msgstr ""
+"éæ ·ç (Hz)\n"
+"0 - 䏿¹åéæ ·ç"
-#: export/ExportFFmpegDialogs.cpp:946
+#: export/ExportFFmpegDialogs.cpp:933
msgid "Cutoff Bandwidth:"
-msgstr ""
+msgstr "è£å»å¸¦å®½ï¼"
+
+#: export/ExportFFmpegDialogs.cpp:936
-#: export/ExportFFmpegDialogs.cpp:947
-msgid "Audio cutoff bandwidth (Hz)\n"
+msgid ""
+"Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
+"é³é¢è£å»å¸¦å®½ (Hz)\n"
+"å¯é\n"
+"0 - èªå¨"
-#: export/ExportFFmpegDialogs.cpp:949
+#: export/ExportFFmpegDialogs.cpp:936
msgid "Profile:"
-msgstr ""
+msgstr "é
ç½®ï¼"
-#: export/ExportFFmpegDialogs.cpp:951
-msgid "AAC Profile\n"
+#: export/ExportFFmpegDialogs.cpp:938
+msgid ""
+"AAC Profile\n"
"Low Complexity -default\n"
"Most players won't play anything other than LC"
msgstr ""
+"AACé
ç½®\n"
+"ä½å¤æåº¦ - é»è®¤\n"
+"夿°çææ¾å¨åªè½ææ¾ä½å¤æåº¦çã"
#: export/ExportFFmpegDialogs.cpp:940
msgid "Use Bit Reservoir"
-msgstr ""
+msgstr "ä½¿ç¨ æ¯ç¹å¨å"
#: export/ExportFFmpegDialogs.cpp:943
msgid "Use Variable Block Length"
-msgstr ""
+msgstr "ä½¿ç¨ å¯è¢«åé¿åº¦"
#: export/ExportFFmpegDialogs.cpp:948
msgid "FLAC options"
-msgstr ""
+msgstr "FLACé项"
-#: export/ExportFFmpegDialogs.cpp:965
+#: export/ExportFFmpegDialogs.cpp:952
msgid "Compression Level:"
-msgstr ""
+msgstr "å缩级ï¼"
-#: export/ExportFFmpegDialogs.cpp:966
-msgid "Compression level\n"
+#: export/ExportFFmpegDialogs.cpp:953
+msgid ""
+"Compression level\n"
"Required for FLAC\n"
"-1 - automatic\n"
"min - 0 (fast encoding, large output file)\n"
"max - 10 (slow encoding, small output file)"
msgstr ""
+"å缩级\n"
+"FLACå¿
é\n"
+"-1 - èªå¨\n"
+"æå° - 0 (å¿«éç¼ç ï¼è¾åºæä»¶å¤§)\n"
+"æå¤§ - 10 (æ
¢éç¼ç ï¼è¾åºæä»¶å°)"
-#: export/ExportFFmpegDialogs.cpp:968
+#: export/ExportFFmpegDialogs.cpp:955
msgid "Frame Size:"
-msgstr ""
+msgstr "帧大å°ï¼"
-#: export/ExportFFmpegDialogs.cpp:969
-msgid "Frame size\n"
+#: export/ExportFFmpegDialogs.cpp:956
+msgid ""
+"Frame size\n"
"Optional\n"
"0 - default\n"
"min - 16\n"
"max - 65535"
msgstr ""
+"帧大å°ï¼ å¯é\n"
+"0 - é»è®¤\n"
+"æå° - 16\n"
+"æå¤§ - 6553"
-#: export/ExportFFmpegDialogs.cpp:971
+#: export/ExportFFmpegDialogs.cpp:958
msgid "LPC coefficients precision"
-msgstr ""
+msgstr "线æ§é¢æµç¼ç (LPC)ç³»æ°ç²¾åº¦"
-#: export/ExportFFmpegDialogs.cpp:972
-msgid "LPC coefficients precision\n"
+#: export/ExportFFmpegDialogs.cpp:959
+msgid ""
+"LPC coefficients precision\n"
"Optional\n"
"0 - default\n"
"min - 1\n"
"max - 15"
msgstr ""
+"线æ§é¢æµç¼ç (LPC)ç³»æ°ç²¾åº¦\n"
+"å¯é\n"
+"0 - é»è®¤\n"
+"æå° - 1\n"
+"æå¤§ - 15"
-#: export/ExportFFmpegDialogs.cpp:974
+#: export/ExportFFmpegDialogs.cpp:961
msgid "Minimal prediction order"
-msgstr ""
+msgstr "æå°é¢æµåº"
-#: export/ExportFFmpegDialogs.cpp:975
-msgid "Minimal prediction order\n"
+#: export/ExportFFmpegDialogs.cpp:962
+msgid ""
+"Minimal prediction order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 32 (with LPC) or 4 (without LPC)"
msgstr ""
+"æå°é¢æµåº\n"
+"å¯é -1 - é»è®¤\n"
+"æå° - 0 \n"
+"æå¤§ - 32(ç¨LPC)æ4(ä¸ç¨LPC)"
-#: export/ExportFFmpegDialogs.cpp:977
+#: export/ExportFFmpegDialogs.cpp:964
msgid "Maximal prediction order"
-msgstr ""
+msgstr "æå¤§é¢æµåº"
-#: export/ExportFFmpegDialogs.cpp:978
-msgid "Maximal prediction order\n"
+#: export/ExportFFmpegDialogs.cpp:965
+msgid ""
+"Maximal prediction order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 32 (with LPC) or 4 (without LPC)"
msgstr ""
+"æå¤§é¢æµåº\n"
+"å¯é -1 - é»è®¤\n"
+"æå° - 0 \n"
+"æå¤§ - 32(ç¨LPC)æ4(ä¸ç¨LPC)"
-#: export/ExportFFmpegDialogs.cpp:980
+#: export/ExportFFmpegDialogs.cpp:967
msgid "Prediction Order Method:"
-msgstr ""
+msgstr "颿µåºæ¹æ³ï¼"
-#: export/ExportFFmpegDialogs.cpp:982
-msgid "Prediction Order Method\n"
+#: export/ExportFFmpegDialogs.cpp:969
+msgid ""
+"Prediction Order Method\n"
"Estimate - fastest, lower compression\n"
"Log search - slowest, best compression\n"
"Full search - default"
msgstr ""
+"颿µåºæ¹æ³\n"
+"估计 - æå¿«ï¼ä½å缩\n"
+"å¯¹æ°æç´¢ - ææ
¢ï¼é«å缩\n"
+"å
¨æç´¢ - é»è®¤"
-#: export/ExportFFmpegDialogs.cpp:984
+#: export/ExportFFmpegDialogs.cpp:971
msgid "Minimal partition order"
-msgstr ""
+msgstr "æå°ååºåº"
-#: export/ExportFFmpegDialogs.cpp:985
-msgid "Minimal partition order\n"
+#: export/ExportFFmpegDialogs.cpp:972
+msgid ""
+"Minimal partition order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 8"
msgstr ""
+"æå°ååºåº å¯é\n"
+"-1 - é»è®¤\n"
+"æå° - 0\n"
+"æå¤§ - 8"
-#: export/ExportFFmpegDialogs.cpp:987
+#: export/ExportFFmpegDialogs.cpp:974
msgid "Maximal partition order"
-msgstr ""
+msgstr "æå¤§ååºåº"
-#: export/ExportFFmpegDialogs.cpp:988
-msgid "Maximal partition order\n"
+#: export/ExportFFmpegDialogs.cpp:975
+msgid ""
+"Maximal partition order\n"
"Optional\n"
"-1 - default\n"
"min - 0\n"
"max - 8"
msgstr ""
+"æå¤§ååºåº å¯é\n"
+"-1 - é»è®¤\n"
+"æå° - 0\n"
+"æå¤§ - 8"
#: export/ExportFFmpegDialogs.cpp:977
msgid "Use LPC"
-msgstr ""
+msgstr "使ç¨çº¿æ§é¢æµç¼ç (LPC)"
#: export/ExportFFmpegDialogs.cpp:984
msgid "MPEG container options"
-msgstr ""
+msgstr "MPEG容å¨é项"
-#: export/ExportFFmpegDialogs.cpp:1001
+#: export/ExportFFmpegDialogs.cpp:988
msgid "Mux Rate:"
-msgstr ""
+msgstr "å¤è·¯å¤åçï¼"
-#: export/ExportFFmpegDialogs.cpp:1002
-msgid "Maximum bit rate of the multiplexed stream\n"
+#: export/ExportFFmpegDialogs.cpp:989
+msgid ""
+"Maximum bit rate of the multiplexed stream\n"
"Optional\n"
"0 - default"
msgstr ""
+"å¤è·¯æµçæå¤§æ¯ç¹ç\n"
+"å¯é\n"
+"0 - é»è®¤"
-#: export/ExportFFmpegDialogs.cpp:1004
+#: export/ExportFFmpegDialogs.cpp:991
msgid "Packet Size:"
-msgstr ""
+msgstr "å
大å°ï¼"
-#: export/ExportFFmpegDialogs.cpp:1005
-msgid "Packet size\n"
+#: export/ExportFFmpegDialogs.cpp:992
+msgid ""
+"Packet size\n"
"Optional\n"
"0 - default"
msgstr ""
+"å
大å°\n"
+"å¯é 0 - é»è®¤"
#: export/ExportFFmpegDialogs.cpp:1207
msgid "You can't delete a preset without name"
-msgstr ""
+msgstr "ä½ ä¸è½å é¤ä¸ä¸ªæ²¡æååçé¢è®¾"
-#: export/ExportFFmpegDialogs.cpp:1219
+#: export/ExportFFmpegDialogs.cpp:1211
#, c-format
msgid "Delete preset '%s'?"
-msgstr ""
+msgstr "å é¤é¢è®¾'%s'ï¼"
-#: export/ExportFFmpegDialogs.cpp:1238
+#: export/ExportFFmpegDialogs.cpp:1230
msgid "You can't save a preset without name"
-msgstr ""
+msgstr "ä½ ä¸è½ä¿åä¸ä¸ªæ²¡æååçé¢è®¾"
-#: export/ExportFFmpegDialogs.cpp:1277
+#: export/ExportFFmpegDialogs.cpp:1270
msgid "Select xml file with presets to import"
-msgstr ""
+msgstr "éæ©æé¢è®¾çxmlæä»¶è¿è¡å¯¼å
¥"
-#: ../src/prefs/KeyConfigPrefs.cpp:194
+#: export/ExportFFmpegDialogs.cpp:1273 export/ExportFFmpegDialogs.cpp:1293
+#: prefs/KeyConfigPrefs.cpp:215
msgid "XML files (*.xml)|*.xml|All files (*.*)|*.*"
msgstr "XMLæä»¶ (*.xml)|*.xml|å
¨é¨æä»¶ (*.*)|*.*"
-#: export/ExportFFmpegDialogs.cpp:1292
+#: export/ExportFFmpegDialogs.cpp:1290
msgid "Select xml file to export presets into"
-msgstr ""
+msgstr "éæ©å°é¢è®¾å¯¼åºçxmlæä»¶"
#: export/ExportFFmpegDialogs.cpp:1361
msgid "Failed to guess format"
-msgstr ""
+msgstr "çæµæ ¼å¼å¤±è´¥"
#: export/ExportFFmpegDialogs.cpp:1403
msgid "Failed to find the codec"
-msgstr ""
+msgstr "寻æ¾ç¼ç 失败"
#: export/ExportFFmpegDialogs.h:53
msgid "M4A (AAC) Files (FFmpeg)"
-msgstr ""
+msgstr "M4A (AAC) æä»¶ (FFmpeg)"
#: export/ExportFFmpegDialogs.h:54
msgid "AC3 Files (FFmpeg)"
-msgstr ""
-
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
-msgstr ""
+msgstr "AC3 æä»¶ (FFmpeg)"
#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
-msgstr ""
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
+msgstr "AMR (çªå¸¦) æä»¶ (FFmpeg, ä¸å¯åå)"
+
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
+msgstr "AMR (宽带) æä»¶ (FFmpeg, ä¸å¯åå)"
#: export/ExportFFmpegDialogs.h:57
msgid "WMA (version 2) Files (FFmpeg)"
-msgstr ""
+msgstr "WMA (第2ç) æä»¶ (FFmpeg)"
#: export/ExportFFmpegDialogs.h:58
msgid "Custom FFmpeg Export"
-msgstr ""
+msgstr "å®å¶ FFmpeg 导åº"
#: export/ExportFFmpegDialogs.h:373
msgid "LTP"
-msgstr ""
+msgstr "LTP(é¿ç¨é¢æµ)"
#: export/ExportFFmpegDialogs.h:373
msgid "Low Complexity"
-msgstr ""
+msgstr "ä½å¤æåº¦"
#: export/ExportFFmpegDialogs.h:373
msgid "Main profile"
-msgstr ""
+msgstr "主é
ç½®"
#: export/ExportFFmpegDialogs.h:676
msgid "2-level"
-msgstr ""
+msgstr "2级"
#: export/ExportFFmpegDialogs.h:676
msgid "4-level"
-msgstr ""
+msgstr "4级"
#: export/ExportFFmpegDialogs.h:676
msgid "8-level"
-msgstr ""
+msgstr "8级"
#: export/ExportFFmpegDialogs.h:676
msgid "Estimate"
-msgstr ""
+msgstr "估计"
#: export/ExportFFmpegDialogs.h:676
msgid "Full search"
-msgstr ""
+msgstr "å
¨æç´¢"
#: export/ExportFFmpegDialogs.h:676
msgid "Log search"
-msgstr ""
+msgstr "å¯¹æ°æç´¢"
-#: export/ExportFLAC.cpp:68
+#: export/ExportFLAC.cpp:67
msgid "Specify FLAC Options"
-msgstr ""
+msgstr "FLACç¹å®é项"
-#: export/ExportFLAC.cpp:82
+#: export/ExportFLAC.cpp:79
msgid "0 (fastest)"
-msgstr ""
+msgstr "0 (æå¿«)"
-#: export/ExportFLAC.cpp:83
+#: export/ExportFLAC.cpp:80
msgid "1"
-msgstr ""
+msgstr "1"
-#: export/ExportFLAC.cpp:84
+#: export/ExportFLAC.cpp:81
msgid "2"
-msgstr ""
+msgstr "2"
-#: export/ExportFLAC.cpp:85
+#: export/ExportFLAC.cpp:82
msgid "3"
-msgstr ""
+msgstr "3"
-#: export/ExportFLAC.cpp:86
+#: export/ExportFLAC.cpp:83
msgid "4"
-msgstr ""
+msgstr "4"
-#: export/ExportFLAC.cpp:87
+#: export/ExportFLAC.cpp:84
msgid "5"
-msgstr ""
+msgstr "5"
-#: export/ExportFLAC.cpp:88
+#: export/ExportFLAC.cpp:85
msgid "6"
-msgstr ""
+msgstr "6"
-#: export/ExportFLAC.cpp:89
+#: export/ExportFLAC.cpp:86
msgid "7"
-msgstr ""
+msgstr "7"
-#: export/ExportFLAC.cpp:90
+#: export/ExportFLAC.cpp:87
msgid "8 (best)"
-msgstr ""
+msgstr "8 (æå¥½)"
-#: prefs/FileFormatPrefs.cpp:193
+#: export/ExportFLAC.cpp:90
msgid "16 bit"
-msgstr ""
+msgstr "16 bit"
-#: prefs/FileFormatPrefs.cpp:194
+#: export/ExportFLAC.cpp:91
msgid "24 bit"
-msgstr ""
+msgstr "24 bit"
-#: prefs/FileFormatPrefs.cpp:190
+#: export/ExportFLAC.cpp:95
msgid "FLAC Export Setup"
-msgstr ""
+msgstr "FLAC导åºè®¾ç½®"
-#: export/ExportFLAC.cpp:102
+#: export/ExportFLAC.cpp:99
msgid "Level:"
-msgstr ""
+msgstr "å缩级ï¼"
-#: prefs/FileFormatPrefs.cpp:197
+#: export/ExportFLAC.cpp:101
msgid "Bit depth:"
-msgstr ""
+msgstr "使·±åº¦ï¼"
-#: export/ExportFLAC.cpp:208
+#: export/ExportFLAC.cpp:207
msgid "FLAC Files"
+msgstr "FLACæä»¶"
+
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr "FLCA导åºä¸è½æå¼ %s"
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid ""
+"FLAC encoder failed to initialize\n"
+"Status: %d"
msgstr ""
+"FLACç¼ç å¨åå§å失败\n"
+"ç¶æ: %d"
-#: export/ExportFLAC.cpp:93
+#: export/ExportFLAC.cpp:310
msgid "Exporting the selected audio as FLAC"
-msgstr ""
+msgstr "æ£æéä¸çé³é¢å¯¼åºä¸ºFLACæä»¶"
-#: export/ExportFLAC.cpp:94
+#: export/ExportFLAC.cpp:311
msgid "Exporting the entire project as FLAC"
-msgstr ""
+msgstr "æ£ææ´ä¸ªå·¥ç¨å¯¼åºä¸ºFLACæä»¶"
#: export/ExportMP2.cpp:108
msgid "Specify MP2 Options"
-msgstr ""
+msgstr "MP2ç¹å®é项"
-#: prefs/FileFormatPrefs.cpp:204
+#: export/ExportMP2.cpp:127
msgid "MP2 Export Setup"
-msgstr ""
+msgstr "MP2导åºè®¾ç½®"
#: export/ExportMP2.cpp:200
msgid "MP2 Files"
-msgstr ""
+msgstr "MP2æä»¶"
-#: export/ExportMP2.cpp:94
+#: export/ExportMP2.cpp:230
msgid "Cannot export MP2 with this sample rate and bit rate"
-msgstr ""
+msgstr "ä¸è½ä½¿ç¨è¯¥éæ ·ç忝ç¹çç»å导åºMP2"
-#: ../src/export/ExportMP3.cpp:1339
-#: ../src/export/ExportOGG.cpp:55
+#: export/ExportMP2.cpp:241 export/ExportMP3.cpp:1618 export/ExportOGG.cpp:184
msgid "Unable to open target file for writing"
msgstr "ä¸è½æå¼ç®æ æä»¶åå
¥"
-#: ../src/export/ExportMP3.cpp:1419
+#: export/ExportMP2.cpp:272
#, c-format
msgid "Exporting selected audio at %d kbps"
-msgstr "以 %d kbps 导åºéå®çé³é¢"
+msgstr "æ£ä»¥ %d kbps 导åºéå®çé³é¢"
-#: ../src/export/ExportMP3.cpp:1421
+#: export/ExportMP2.cpp:273
#, c-format
msgid "Exporting entire file at %d kbps"
-msgstr "以 %d kbps 导åºå
¨é¨çé³é¢"
-
-#. i18n-hint: kbps is the bitrate of the MP3 file, kilobits per second
-#: export/ExportMP3.cpp:142 export/ExportMP3.cpp:143 export/ExportMP3.cpp:144
-#: export/ExportMP3.cpp:145 export/ExportMP3.cpp:146 export/ExportMP3.cpp:147
-#: export/ExportMP3.cpp:148 export/ExportMP3.cpp:149 export/ExportMP3.cpp:150
-#: export/ExportMP3.cpp:151 export/ExportMP3.cpp:152 export/ExportMP3.cpp:153
-#: export/ExportMP3.cpp:154 export/ExportMP3.cpp:155 export/ExportMP3.cpp:156
-#: export/ExportMP3.cpp:157 export/ExportMP3.cpp:158 export/ExportMP3.cpp:159
+msgstr "æ£ä»¥ %d kbps 导åºå
¨é¨çé³é¢"
+
+#: export/ExportMP3.cpp:223 export/ExportMP3.cpp:241 export/ExportMP3.cpp:255
msgid "kbps"
-msgstr ""
+msgstr "kbps"
-#: export/ExportMP3.cpp:240
+#: export/ExportMP3.cpp:242
msgid "(Best Quality)"
-msgstr ""
+msgstr "(æå¥½è´¨é)"
-#: export/ExportMP3.cpp:241
+#: export/ExportMP3.cpp:243
msgid "(Smaller files)"
-msgstr ""
+msgstr "(æ´å°çæä»¶)"
-#: export/ExportMP3.cpp:178
+#: export/ExportMP3.cpp:245
msgid "Fast"
-msgstr ""
+msgstr "å¿«é"
-#: export/ExportMP3.cpp:179
+#: export/ExportMP3.cpp:246 export/ExportMP3.cpp:252 prefs/GUIPrefs.cpp:41
+#: prefs/GUIPrefs.cpp:49
msgid "Standard"
-msgstr ""
+msgstr "æ å"
-#: export/ExportMP3.cpp:248
+#: export/ExportMP3.cpp:250
msgid "Insane"
-msgstr ""
+msgstr "åç"
-#: export/ExportMP3.cpp:249
+#: export/ExportMP3.cpp:251
msgid "Extreme"
-msgstr ""
+msgstr "æç«¯"
-#: export/ExportMP3.cpp:251
+#: export/ExportMP3.cpp:253
msgid "Medium"
-msgstr ""
+msgstr "ä¸ç"
-#: export/ExportMP3.cpp:249
+#: export/ExportMP3.cpp:305
msgid "Specify MP3 Options"
-msgstr ""
+msgstr "MP3ç¹å®é项"
-#: ../src/prefs/FileFormatPrefs.cpp:172
+#: export/ExportMP3.cpp:319
msgid "MP3 Export Setup"
msgstr "MP3导åºè®¾ç½®"
-#: export/ExportMP3.cpp:271
+#: export/ExportMP3.cpp:326
msgid "Bit Rate Mode:"
-msgstr ""
+msgstr "æ¯ç¹ç模å¼ï¼"
-#: export/ExportMP3.cpp:276
+#: export/ExportMP3.cpp:331
msgid "Preset"
-msgstr ""
+msgstr "é¢è®¾"
-#: export/ExportMP3.cpp:277
+#: export/ExportMP3.cpp:332
msgid "Variable"
-msgstr ""
+msgstr "å¯å"
-#: export/ExportMP3.cpp:278
+#: export/ExportMP3.cpp:333
msgid "Average"
-msgstr ""
+msgstr "å¹³å"
-#: export/ExportMP3.cpp:279
+#: export/ExportMP3.cpp:334
msgid "Constant"
-msgstr ""
+msgstr "éæ"
-#: ../src/prefs/PrefsDialog.cpp:84
+#: export/ExportMP3.cpp:373 prefs/QualityPrefs.cpp:42
+#: prefs/QualityPrefs.cpp:43
msgid "Quality"
-msgstr "é³è´¨"
+msgstr "è´¨é"
-#: export/ExportMP3.cpp:324
+#: export/ExportMP3.cpp:379
msgid "Variable Speed:"
-msgstr ""
+msgstr "å¯åéçï¼"
-#: export/ExportMP3.cpp:331
+#: export/ExportMP3.cpp:386
msgid "Channel Mode:"
-msgstr ""
+msgstr "声鿍¡å¼ï¼"
-#: export/ExportMP3.cpp:336
+#: export/ExportMP3.cpp:391
msgid "Joint Stereo"
-msgstr ""
+msgstr "åå¹¶ç«ä½å£°"
-#: export/ExportMP3.cpp:337
+#: export/ExportMP3.cpp:392
msgid "Stereo"
-msgstr ""
+msgstr "ç«ä½å£°"
-#: export/ExportMP3.cpp:481
+#: export/ExportMP3.cpp:536
msgid "Locate Lame"
-msgstr ""
+msgstr "å®ä½Lame"
-#: export/ExportMP3.cpp:501
+#: export/ExportMP3.cpp:556
#, c-format
msgid "Audacity needs the file %s to create MP3s."
-msgstr ""
+msgstr "Audacityéè¦ %s æè½å建MP3ã"
-#: export/ExportMP3.cpp:523
+#: export/ExportMP3.cpp:578
msgid "To get a free copy of Lame, click here -->"
-msgstr ""
+msgstr "è·ålameçå
è´¹æ·è´ï¼ç¹å»è¿é -->"
#: export/ExportMP3.cpp:1070
#, c-format
-msgid "You are linking to lame_enc.dll v%d.%d. This version is not compatible with Audacity %d.%d.%d.\n"
+msgid ""
+"You are linking to lame_enc.dll v%d.%d. This version is not compatible with Audacity %d.%d.%d.\n"
"Please download the latest version of the LAME MP3 library."
msgstr ""
+"ä½ æ£é¾æ¥å°lame_enc.dllçæ¬%d.%dãè¯¥çæ¬ä¸Audacity %d.%d.%dä¸å
¼å®¹ã\n"
+"请ä¸è½½ææ°çLAME MP3åºã"
-#: ../src/export/ExportMP3.cpp:1114
+#: export/ExportMP3.cpp:1327
msgid "Only lame_enc.dll|lame_enc.dll|Dynamically Linked Libraries (*.dll)|*.dll|All Files (*.*)|*"
msgstr "ä»
élame_enc.dll|lame_enc.dll|卿龿¥åº(*.dll)|*.dll|å
¨é¨æä»¶(*.*)|*"
-#: export/ExportMP3.cpp:536
+#: export/ExportMP3.cpp:1345
msgid "Only libmp3lame.dylib|libmp3lame.dylib|Dynamic Libraries (*.dylib)|*.dylib|All Files (*)|*"
-msgstr ""
+msgstr "ä»
élame_enc.dylib|lame_enc.dylib|卿龿¥åº(*.dylib)|*.dylib|å
¨é¨æä»¶(*.*)|*"
-#: export/ExportMP3.cpp:1567
-#, fuzzy
+#: export/ExportMP3.cpp:1363
msgid "Only libmp3lame.so.0|libmp3lame.so.0|Primary Shared Object files (*.so)|*.so|Extended Libraries (*.so*)|*.so*|All Files (*)|*"
msgstr "ä»
élibmp3lame.so|libmp3lame.so|主è¦çå
±äº«ç®æ æä»¶(*.so)|*.so|æ©å±åº(*.so*)|*.so*|å
¨é¨æä»¶(*)|*"
-#: export/ExportMP3.cpp:1592
+#: export/ExportMP3.cpp:1499
msgid "MP3 Files"
-msgstr ""
+msgstr "MP3 æä»¶"
-#: ../src/export/ExportMP3.cpp:1322
+#: export/ExportMP3.cpp:1523
msgid "Could not open MP3 encoding library!"
msgstr "ä¸è½æå¼MP3ç¼ç åºã"
-#: ../src/export/ExportMP3.cpp:1329
+#: export/ExportMP3.cpp:1530
msgid "Not a valid or supported MP3 encoding library!"
msgstr "䏿¯ææçææ¯æçMP3ç¼ç åºï¼"
-#: export/ExportMP3.cpp:1699
+#: export/ExportMP3.cpp:1607
msgid "Unable to initialize MP3 stream"
-msgstr ""
+msgstr "ä¸è½åå§åMP3æµ"
-#: export/ExportMP3.cpp:1744
+#: export/ExportMP3.cpp:1650
#, c-format
msgid "Exporting selected audio with %s preset"
-msgstr ""
+msgstr "æ£ç¨é¢è®¾ %s 导åºéå®çé³é¢"
-#: export/ExportMP3.cpp:1745
+#: export/ExportMP3.cpp:1651
#, c-format
msgid "Exporting entire file with %s preset"
-msgstr ""
+msgstr "æ£ç¨é¢è®¾ %s å¯¼åºæ´ä¸ªæä»¶"
-#: export/ExportMP3.cpp:1750
+#: export/ExportMP3.cpp:1656
#, c-format
msgid "Exporting selected audio with VBR quality %s"
-msgstr ""
+msgstr "æ£ä»¥VBRï¼å¯åæ¯ç¹çï¼è´¨é %s 导åºéå®çé³é¢"
-#: export/ExportMP3.cpp:1751
+#: export/ExportMP3.cpp:1657
#, c-format
msgid "Exporting entire file with VBR quality %s"
-msgstr ""
+msgstr "æ£ä»¥VBRï¼å¯åæ¯ç¹çï¼è´¨é %s å¯¼åºæ´ä¸ªæä»¶"
-#: export/ExportMP3.cpp:1756
+#: export/ExportMP3.cpp:1662
#, c-format
msgid "Exporting selected audio at %d Kbps"
-msgstr ""
+msgstr "æ£ä»¥%d Kbps 导åºéå®çé³é¢"
-#: export/ExportMP3.cpp:1757
+#: export/ExportMP3.cpp:1663
#, c-format
msgid "Exporting entire file at %d Kbps"
-msgstr ""
+msgstr "æ£ä»¥%d Kbps å¯¼åºæ´ä¸ªæä»¶"
-#: export/ExportMP3.cpp:1790
+#: export/ExportMP3.cpp:1697
#, c-format
msgid "Error %d returned from MP3 encoder"
-msgstr ""
+msgstr "MP3ç¼ç å¨è¿åéè¯¯å· %d"
-#: export/ExportMP3.cpp:1876
+#: export/ExportMP3.cpp:1785
#, c-format
-msgid "The project sample rate (%d) is not supported by the MP3\n"
+msgid ""
+"The project sample rate (%d) is not supported by the MP3\n"
"file format. "
msgstr ""
+"å·¥ç¨çéæ ·ç (%d)ä¸è¢«MP3\n"
+"æä»¶æ ¼å¼æ¯æã"
-#: export/ExportMP3.cpp:1879
+#: export/ExportMP3.cpp:1788
#, c-format
-msgid "The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
+msgid ""
+"The project sample rate (%d) and bit rate (%d kbps) combination is not\n"
"supported by the MP3 file format. "
msgstr ""
+"å·¥ç¨çéæ ·ç (%d)忝ç¹ç(%d kbps)ç»åä¸è¢«MP3\n"
+"æä»¶æ ¼å¼æ¯æã"
#: export/ExportMP3.cpp:1965
msgid "MP3 export library not found"
-msgstr ""
+msgstr "æ²¡ææ¾å°MP3导åºåº"
-#: ../src/export/ExportMultiple.cpp:464
-#: ../src/export/ExportMultiple.cpp:573
-#: ../src/export/ExportMultiple.cpp:656
+#: export/ExportMultiple.cpp:93 export/ExportMultiple.cpp:424
+#: export/ExportMultiple.cpp:670 export/ExportMultiple.cpp:847
msgid "Export Multiple"
msgstr "导åºå¤ä¸ªæä»¶"
-#: ../src/export/ExportMultiple.cpp:586
-msgid "If you have more than one Audio Track, you can export each track as a separate file,\n"
+#: export/ExportMultiple.cpp:163
+msgid ""
+"If you have more than one Audio Track, you can export each track as a separate file,\n"
"or if you have a Label Track, you can export a new file for each label.\n"
"\n"
"This project does not have multiple tracks or a Label Track, so you cannot export multiple files."
-msgstr "妿æ¨éè¦å¯¼åºå¤ä¸ªè½¨éï¼æ¨å¯å°æ¯ä¸ªè½¨éåç¬å¯¼åºä¸ºä¸ä¸ªæä»¶ï¼\n"
+msgstr ""
+"妿æ¨éè¦å¯¼åºå¤ä¸ªè½¨éï¼æ¨å¯å°æ¯ä¸ªè½¨éåç¬å¯¼åºä¸ºä¸ä¸ªæä»¶ï¼\n"
"æè
妿åå¨ä¸ä¸ªæ ç¾è½¨ï¼æ¨å¯å°æ¯ä¸ªæ ç¾å¯¼åºä¸ºä¸ä¸ªæ°çæä»¶ã\n"
"\n"
"该工ç¨ä¸å
å«å¤ä¸ªè½¨éï¼æè
ä¸å«æ ç¾è½¨ï¼æä»¥æ æ³å¯¼åºå¤ä¸ªæä»¶ã"
-#: ../src/export/ExportMultiple.cpp:587
+#: export/ExportMultiple.cpp:164
msgid "Can't export multiple files"
msgstr "æ æ³å¯¼åºå¤ä¸ªæä»¶"
-#: ../src/export/ExportMultiple.cpp:670
+#: export/ExportMultiple.cpp:229
msgid "Export format:"
-msgstr "å¯¼åºæ ¼å¼:"
+msgstr "å¯¼åºæ ¼å¼ï¼"
-#: export/ExportMultiple.cpp:195
+#: export/ExportMultiple.cpp:234
msgid "Options..."
-msgstr ""
+msgstr "é项..."
-#: ../src/export/ExportMultiple.cpp:694
+#: export/ExportMultiple.cpp:238
msgid "Export location:"
-msgstr "导åºä½ç½®:"
+msgstr "导åºä½ç½®ï¼"
-#: ../src/export/ExportMultiple.cpp:700
-#: ../src/prefs/DirectoriesPrefs.cpp:82
-msgid "Choose..."
-msgstr "éæ©..."
-
-#: export/ExportMultiple.cpp:205
+#: export/ExportMultiple.cpp:243
msgid "Create"
-msgstr ""
+msgstr "æ°å»º"
-#: ../src/export/ExportMultiple.cpp:731
+#: export/ExportMultiple.cpp:250
msgid "Split files based on:"
-msgstr "å岿件ï¼åºäº:"
+msgstr "å岿件ï¼åºäºï¼"
-#: ../src/export/ExportMultiple.cpp:734
+#: export/ExportMultiple.cpp:259 export/ExportMultiple.cpp:261
msgid "Labels"
msgstr "æ ç¾"
-#: ../src/export/ExportMultiple.cpp:742
+#: export/ExportMultiple.cpp:266
msgid "Include audio before first label"
msgstr "å
å«å¨ç¬¬ä¸ä¸ªæ ç¾ä¹åçé³é¢"
-#: ../src/export/ExportMultiple.cpp:748
+#: export/ExportMultiple.cpp:272
msgid "First file name:"
-msgstr "第ä¸ä¸ªæä»¶å:"
+msgstr "第ä¸ä¸ªæä»¶åï¼"
-#: export/ExportMultiple.cpp:280
+#: export/ExportMultiple.cpp:277
msgid "First file name"
-msgstr ""
+msgstr "第ä¸ä¸ªæä»¶å"
-#: ../src/export/ExportMultiple.cpp:755
-msgid "Tracks"
-msgstr "轨é"
-
-#: ../src/export/ExportMultiple.cpp:765
+#: export/ExportMultiple.cpp:294
msgid "Name files:"
-msgstr "å½åæä»¶:"
+msgstr "å½åæä»¶ï¼"
-#: ../src/export/ExportMultiple.cpp:768
+#: export/ExportMultiple.cpp:303 export/ExportMultiple.cpp:305
msgid "Using Label/Track Name"
msgstr "ä½¿ç¨æ ç¾/轨éå"
-#: ../src/export/ExportMultiple.cpp:774
+#: export/ExportMultiple.cpp:311 export/ExportMultiple.cpp:313
msgid "Numbering consecutively"
msgstr "è¿ç»ç¼å·"
-#: ../src/export/ExportMultiple.cpp:779
+#: export/ExportMultiple.cpp:319
msgid "File name prefix:"
-msgstr "æä»¶ååç¼:"
+msgstr "æä»¶ååç¼ï¼"
-#: export/ExportMultiple.cpp:327
+#: export/ExportMultiple.cpp:324
msgid "File name prefix"
-msgstr ""
+msgstr "æä»¶ååç¼"
-#: ../src/export/ExportMultiple.cpp:796
+#: export/ExportMultiple.cpp:338
msgid "Overwrite existing files"
msgstr "è¦çç°æçæä»¶"
-#: export/ExportMultiple.cpp:360
+#: export/ExportMultiple.cpp:422
#, c-format
msgid "\"%s\" successfully created."
-msgstr ""
+msgstr "\"%s\" æ°å»ºæå"
-#: ../src/export/ExportMultiple.cpp:901
+#: export/ExportMultiple.cpp:431
msgid "Choose a location to save the exported files"
msgstr "éæ©ä¿åå¯¼åºæä»¶çä½ç½®"
-#: export/ExportMultiple.cpp:480
+#: export/ExportMultiple.cpp:524
#, c-format
-msgid "\"%s\" doesn't exist.\n"
-"\n"
-"Would you like to create it?"
-msgstr ""
+msgid "Successfully exported the following %ld file(s)."
+msgstr "æå导åºä¸å %ld 个æä»¶ã"
-#: export/ExportMultiple.cpp:637 export/ExportMultiple.cpp:772
-msgid "Edit metadata"
-msgstr ""
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
+msgstr "导åºä¸å %ld 个æä»¶ååºéã"
-#: export/ExportMultiple.cpp:590
+#: export/ExportMultiple.cpp:526
#, c-format
-msgid "Successfully exported %d file(s)."
-msgstr ""
+msgid "Export canceled after exporting the following %ld file(s)."
+msgstr "导åºä¸å %ld 个æä»¶å导åºè¢«åæ¶ã"
+
+#: export/ExportMultiple.cpp:527
+#, c-format
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr "导åºä¸å %ld 个æä»¶å导åºè¢«ç»æ¢ã"
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr "导åºä¸å %ld 个æä»¶å严éåºéã"
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr "导åºå¤ä¸ªæä»¶"
-#: export/ExportMultiple.cpp:597
+#: export/ExportMultiple.cpp:538
#, c-format
-msgid "Something went wrong after exporting %d file(s)."
+msgid ""
+"\"%s\" doesn't exist.\n"
+"\n"
+"Would you like to create it?"
msgstr ""
+"\"%s\"ä¸åå¨ã\n"
+"\n"
+"ä½ æ³æ°å»ºä¸ä¸ªåï¼"
-#: export/ExportMultiple.cpp:881
+#: export/ExportMultiple.cpp:640 export/ExportMultiple.cpp:785
+msgid "Edit metadata"
+msgstr "ç¼è¾å
ä¿¡æ¯"
+
+#: export/ExportMultiple.cpp:898
#, c-format
-msgid "Label %s is not a legal file name. You cannot use any of: %s\n"
+msgid ""
+"Label %s is not a legal file name. You cannot use any of: %s\n"
"Use..."
msgstr ""
+"æ ç¾ %s䏿¯åæ³çæä»¶åãä½ ä¸è½ä½¿ç¨:%s\n"
+"Use..."
#: export/ExportOGG.cpp:64
msgid "Specify Ogg Vorbis Options"
-msgstr ""
+msgstr "Ogg Vorbisç¹å®é项"
-#: export/ExportOGG.cpp:81
+#: export/ExportOGG.cpp:79
msgid "Ogg Vorbis Export Setup"
-msgstr ""
+msgstr "Ogg Vorbis导åºè®¾ç½®"
#: export/ExportOGG.cpp:155
msgid "Ogg Vorbis Files"
-msgstr ""
+msgstr "Ogg Vorbisæä»¶"
-#: ../src/export/ExportOGG.cpp:193
+#: export/ExportOGG.cpp:255
msgid "Exporting the selected audio as Ogg Vorbis"
msgstr "å°éå®çé³é¢å¯¼åºä¸ºOgg Vorbisæä»¶"
-#: ../src/export/ExportOGG.cpp:194
+#: export/ExportOGG.cpp:256
msgid "Exporting the entire project as Ogg Vorbis"
msgstr "å°å
¨é¨çé³é¢å¯¼åºä¸ºOgg Vorbisæä»¶"
-#: export/ExportPCM.cpp:116
+#: export/ExportPCM.cpp:119
msgid "Specify Uncompressed Options"
-msgstr ""
+msgstr "éå缩ç¹å®é项"
-#: export/ExportPCM.cpp:171
+#: export/ExportPCM.cpp:189
msgid "Uncompressed Export Setup"
-msgstr ""
+msgstr "éå缩导åºè®¾ç½®"
-#: export/ExportPCM.cpp:181
+#: export/ExportPCM.cpp:195
msgid "Header:"
-msgstr ""
+msgstr "头"
-#: export/ExportPCM.cpp:185
-#, fuzzy
+#: export/ExportPCM.cpp:199 import/ImportRaw.cpp:366
msgid "Encoding:"
-msgstr "ç¼ç :"
+msgstr "ç¼ç ï¼"
-#: export/ExportPCM.cpp:190
-#, fuzzy
+#: export/ExportPCM.cpp:204
msgid "(Not all combinations of headers and encodings are possible.)"
-msgstr "(å¹¶éææç头ä¸ç¼ç ç\n"
-"ç»åæ¯å¯è½æç«çã)"
+msgstr "(䏿¯ææç头ä¸ç¼ç ç»åæ¯å¯è¡ã)"
-#: export/ExportPCM.cpp:369
+#: export/ExportPCM.cpp:359
msgid "Other uncompressed files"
-msgstr ""
+msgstr "å
¶å®éå缩é³é¢æä»¶..."
-#: export/ExportPCM.cpp:361
+#: export/ExportPCM.cpp:377
msgid "AIFF (Apple) signed 16 bit PCM"
-msgstr ""
+msgstr "AIFF (Apple) signed 16 bit PCM"
-#: export/ExportPCM.cpp:351
+#: export/ExportPCM.cpp:388
msgid "WAV (Microsoft) signed 16 bit PCM"
-msgstr ""
+msgstr "WAV (Microsoft) signed 16 bit PCM"
-#: export/ExportPCM.cpp:387
+#: export/ExportPCM.cpp:399
msgid "GSM 6.10 WAV (mobile)"
-msgstr ""
+msgstr "GSM 6.10 WAV (mobile)"
-#: ../src/export/ExportPCM.cpp:73
+#: export/ExportPCM.cpp:476
msgid "Cannot export audio in this format."
-msgstr "æ æ³ææ¤æ ¼å¼å¯¼åºé³é¢ã"
+msgstr "ä¸è½ä»¥è¿ä¸ªæ ¼å¼å¯¼åºé³é¢ã"
-#: export/ExportPCM.cpp:400
+#: export/ExportPCM.cpp:518
#, c-format
msgid "Exporting the selected audio as %s"
-msgstr ""
+msgstr "è¾éä¸çé³é¢ä¸º %s"
-#: export/ExportPCM.cpp:402
+#: export/ExportPCM.cpp:520
#, c-format
msgid "Exporting the entire project as %s"
-msgstr ""
+msgstr "å¯¼åºæ´ä¸ªå·¥ç¨ä¸º %s"
#. i18n-hint: %s will be the error message from libsndfile
-#: export/ExportPCM.cpp:436
+#: export/ExportPCM.cpp:556
#, c-format
-#, fuzzy
msgid "Error (file may not have been written): %s"
-msgstr "é误 (æä»¶å¯è½æªè¢«åå
¥): %hs"
+msgstr "é误 (æä»¶å¯è½æªè¢«åå
¥)ï¼ %s"
#: export/ExportPCM.cpp:723
msgid "There are no options for this format.\n"
-msgstr ""
+msgstr "è¯¥æ ¼å¼æ²¡æé项ã\n"
#. i18n-hint: This is pointing users at another possible export format in
#. * the list. So you should translate the quoted string
@@ -6866,1843 +7310,1980 @@ msgstr ""
#. * when it comes up on it's own.
#: export/ExportPCM.cpp:728
msgid "If you need more control over the export format please use the 'Other uncompressed files' format."
-msgstr ""
+msgstr "å¦æä½ éè¦æ§å¶æ´å¤å¯¼åºæ ¼å¼çåæ°ï¼è¯·ä½¿ç¨ âå
¶å®éå缩æä»¶'æ ¼å¼ã"
#: export/ExportPCM.cpp:733
msgid "Your file will be exported as a 16-bit AIFF (Apple/SGI) file.\n"
-msgstr ""
+msgstr "ä½ çæä»¶å°å¯¼åºæ16-bit AIFF (Apple/SGI)æä»¶ã\n"
#: export/ExportPCM.cpp:738
msgid "Your file will be exported as a 16-bit WAV (Microsoft) file.\n"
-msgstr ""
+msgstr "ä½ çæä»¶å°å¯¼åºæ16-bit WAV (Microsoft)æä»¶ã\n"
#: export/ExportPCM.cpp:743
msgid "Your file will be exported as a GSM 6.10 WAV file.\n"
-msgstr ""
+msgstr "ä½ çæä»¶å°å¯¼åºæGSM 6.10 WAVæä»¶ã\n"
-#: import/ImportMP3.cpp:78
+#: import/Import.cpp:157 import/ImportMP3.cpp:47
msgid "MP3 files"
-msgstr ""
+msgstr "MP3æä»¶"
-#: import/Import.cpp:175
+#: import/Import.cpp:176
msgid "Select stream(s) to import"
-msgstr ""
+msgstr "éæ©è¦å¯¼å
¥æµ"
-#: ../src/import/Import.cpp:165
+#: import/Import.cpp:229
#, c-format
msgid "This version of Audacity was not compiled with %s support."
msgstr "æ¤çæ¬çAudacityå¨ç¼è¯æ¶æ²¡æé带é对%sçæ¯æã"
-#: import/Import.cpp:240
+#: import/Import.cpp:242
#, c-format
-msgid "\"%s\" \n"
+msgid ""
+"\"%s\" \n"
"is a MIDI file, not an audio file. \n"
"Audacity cannot open this type of file for playing, but you can\n"
"edit it by clicking File > Import > MIDI."
msgstr ""
+"\"%s\" \n"
+"æ¯ä¸ä¸ªMIDIæä»¶ï¼ä¸æ¯é³é¢æä»¶ã\n"
+"Audacityä¸è½ææ¾è¿ç±»æä»¶ï¼ä½å¯ä»¥éè¿\n"
+"ç¹å»æä»¶->导å
¥->MIDIç¼è¾å®ã"
#. i18n-hint: %s will be the filename
-#: import/Import.cpp:167
+#: import/Import.cpp:252
#, c-format
-msgid "\"%s\" is an audio CD track. \n"
+msgid ""
+"\"%s\" is an audio CD track. \n"
"Audacity cannot open audio CDs directly. \n"
"Extract (rip) the CD tracks to an audio format that \n"
"Audacity can import, such as WAV or AIFF."
msgstr ""
+"\"%s\"æ¯é³é¢CD轨éã\n"
+"Audacityä¸è½ç´æ¥æå¼é³é¢CDã\n"
+"è§£åº(rip)CD轨éå°Audacityè½å¯¼å
¥ç\n"
+"é³é¢æ ¼å¼ï¼å¦WAVæAIFFã"
-#: import/Import.cpp:173
+#: import/Import.cpp:258
#, c-format
-msgid "\"%s\" is a playlist file. \n"
+msgid ""
+"\"%s\" is a playlist file. \n"
"Audacity cannot open this file because it only contains links to other files. \n"
"You may be able to open it in a text editor and download the actual audio files."
msgstr ""
+"\"%s\"æ¯ææ¾å表æä»¶ã\n"
+"Audacityä¸è½æå¼å®ï¼å 为ä»åªå
æ¬å
¶ä»æä»¶ç龿¥ã\n"
+"ä½ å¯ä»¥ç¨ææ¬ç¼è¾å¨æå¼å®ï¼ç¶åä¸è½½é³é¢æä»¶ã"
-#: import/Import.cpp:178
+#: import/Import.cpp:263
#, c-format
-msgid "\"%s\" is a Windows Media Audio file. \n"
+msgid ""
+"\"%s\" is a Windows Media Audio file. \n"
"Audacity cannot open this type of file due to patent restrictions. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
msgstr ""
+"\"%s\"æ¯Windows Media Audioæä»¶ã\n"
+"Audacityä¸è½æå¼è¿ç±»æä»¶ï¼å 为ä¸å©éå¶ã\n"
+"ä½ éè¦æå®è½¬æ¢å°æ¯æçé³é¢æ ¼å¼ï¼å¦WAVæAIFFã"
-#: import/Import.cpp:183
+#: import/Import.cpp:268
#, c-format
-msgid "\"%s\" is an Advanced Audio Coding file. \n"
+msgid ""
+"\"%s\" is an Advanced Audio Coding file. \n"
"Audacity cannot open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
msgstr ""
+"\"%s\"Advanced Audio Codingæä»¶ã\n"
+"Audacityä¸è½æå¼è¿ç±»æä»¶ã\n"
+"ä½ éè¦æå®è½¬æ¢å°æ¯æçé³é¢æ ¼å¼ï¼å¦WAVæAIFFã"
-#: import/Import.cpp:271
+#: import/Import.cpp:273
#, c-format
-msgid "\"%s\" is an encrypted audio file. \n"
+msgid ""
+"\"%s\" is an encrypted audio file. \n"
"These typically are from an online music store. \n"
"Audacity cannot open this type of file due to the encryption. \n"
"Try recording the file into Audacity, or burn it to audio CD then \n"
"extract the CD track to a supported audio format such as WAV or AIFF."
msgstr ""
+"\"%s\"æ¯å å¯çé³é¢æä»¶ã\n"
+"è¿ç±»é常æ¥èªå¨çº¿é³ä¹ååºã\n"
+"Audacityä¸è½æå¼è¿ç±»æä»¶ï¼å 为å®è¢«å å¯äºã\n"
+"å¯ä»¥è¯çæå®å½å¶å°Audacityï¼æç§å
¥é³é¢CDï¼ç¶å\n"
+"æCDé³è½¨è§£å°æ¯æçé³é¢æ ¼å¼ï¼å¦WAVæAIFFã"
-#: import/Import.cpp:193
+#: import/Import.cpp:278
#, c-format
-msgid "\"%s\" is a RealPlayer media file. \n"
+msgid ""
+"\"%s\" is a RealPlayer media file. \n"
"Audacity cannot open this proprietary format. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
msgstr ""
+"\"%s\"æ¯RealPlayer mediaæä»¶ã\n"
+"Audacityä¸è½æå¼è¿ç±»æä»¶ï¼å ä¸ºè¿æ¯ææææçæ ¼å¼ã\n"
+"ä½ éè¦æå®è½¬æ¢å°æ¯æçé³é¢æ ¼å¼ï¼å¦WAVæAIFFã"
-#: import/Import.cpp:282
+#: import/Import.cpp:284
#, c-format
-msgid "\"%s\" is a notes-based file, not an audio file. \n"
+msgid ""
+"\"%s\" is a notes-based file, not an audio file. \n"
"Audacity cannot open this type of file. \n"
"Try converting it to an audio file such as WAV or AIFF and \n"
"then import it, or record it into Audacity."
msgstr ""
+"\"%s\"æ¯åºäºé³ç¬¦çæä»¶ï¼ä¸æ¯é³é¢æä»¶ã\n"
+"Audacityä¸è½æå¼è¿ç±»æä»¶ã\n"
+"ä½ éè¦æå®è½¬æ¢å°æ¯æçé³é¢æ ¼å¼ï¼å¦WAVæAIFFï¼\n"
+"ç¶å导å
¥ï¼æå½å¶å°Audacityã"
-#: import/Import.cpp:288
+#: import/Import.cpp:290
#, c-format
-msgid "\"%s\" is a Musepack audio file. \n"
+msgid ""
+"\"%s\" is a Musepack audio file. \n"
"Audacity cannot open this type of file. \n"
"If you think it might be an mp3 file, rename it to end with \".mp3\" \n"
"and try importing it again. Otherwise you need to convert it to a supported audio \n"
"format, such as WAV or AIFF."
msgstr ""
+"\"%s\"æ¯Musepack audioæä»¶ã\n"
+"Audacityä¸è½æå¼è¿ç±»æä»¶ã\n"
+"å¦æä½ è®¤ä¸ºå®è¯æ¯mp3æä»¶ï¼æå®éå½åæä»¥\".mp3\"ç»å°¾\n"
+"ç¶åè¯ç忬¡å¯¼å
¥å®ï¼å¦åçè¯ï¼ä½ éè¦æå®è½¬æ¢å°æ¯æç\n"
+"é³é¢æ ¼å¼ï¼å¦WAVæAIFFã"
-#: import/Import.cpp:294
+#: import/Import.cpp:296
#, c-format
-msgid "\"%s\" is a Wavpack audio file. \n"
+msgid ""
+"\"%s\" is a Wavpack audio file. \n"
"Audacity cannot open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
msgstr ""
+"\"%s\"Wavpack audioæä»¶ã\n"
+"Audacityä¸è½æå¼è¿ç±»æä»¶ã\n"
+"ä½ éè¦æå®è½¬æ¢å°æ¯æçé³é¢æ ¼å¼ï¼å¦WAVæAIFFã"
-#: import/Import.cpp:300
+#: import/Import.cpp:302
#, c-format
-msgid "\"%s\" is a Dolby Digital audio file. \n"
+msgid ""
+"\"%s\" is a Dolby Digital audio file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
msgstr ""
+"\"%s\" Dolby Digital audioæä»¶ã\n"
+"Audacityä¸è½æå¼è¿ç±»æä»¶ã\n"
+"ä½ éè¦æå®è½¬æ¢å°æ¯æçé³é¢æ ¼å¼ï¼å¦WAVæAIFFã"
-#: import/Import.cpp:306
+#: import/Import.cpp:308
#, c-format
-msgid "\"%s\" is an Ogg Speex audio file. \n"
+msgid ""
+"\"%s\" is an Ogg Speex audio file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to convert it to a supported audio format, such as WAV or AIFF."
msgstr ""
+"\"%s\" Ogg Speex audioæä»¶ã\n"
+"Audacityä¸è½æå¼è¿ç±»æä»¶ã\n"
+"ä½ éè¦æå®è½¬æ¢å°æ¯æçé³é¢æ ¼å¼ï¼å¦WAVæAIFFã"
-#: import/Import.cpp:312
+#: import/Import.cpp:314
#, c-format
-msgid "\"%s\" is a video file. \n"
+msgid ""
+"\"%s\" is a video file. \n"
"Audacity cannot currently open this type of file. \n"
"You need to extract the audio to a supported format, such as WAV or AIFF."
msgstr ""
+"\"%s\" è§é¢æä»¶ã\n"
+"Audacityä¸è½æå¼è¿ç±»æä»¶ã\n"
+"ä½ éè¦æå®è½¬æ¢å°æ¯æçé³é¢æ ¼å¼ï¼å¦WAVæAIFFã"
-#: import/Import.cpp:317
+#: import/Import.cpp:319
#, c-format
-msgid "Audacity did not recognize the type of the file '%s'.\n"
+msgid ""
+"Audacity did not recognize the type of the file '%s'.\n"
"If it is uncompressed, try importing it using \"Import Raw\"."
msgstr ""
+"Audacityæ æ³è¯å«æä»¶'%s'çç±»åã\n"
+"妿宿ªè¢«å缩ï¼è¯·å°è¯ç¨\"导å
¥è£¸æ°æ®\"å°å
¶å¯¼å
¥ã"
-#: import/Import.cpp:322
+#: import/Import.cpp:324
#, c-format
-msgid "Audacity recognized the type of the file '%s',\n"
+msgid ""
+"Audacity recognized the type of the file '%s',\n"
"but was unable to import it."
msgstr ""
+"Audacityè¯å«æä»¶'%s'çç±»åã\n"
+"ä½ä¸è½å¯¼å
¥å®ã"
#: import/ImportFFmpeg.cpp:34
msgid "FFmpeg-compatible files"
-msgstr ""
+msgstr "FFmpegå
¼å®¹æä»¶"
#: import/ImportFFmpeg.cpp:431
#, c-format
msgid "Index[%02x] Codec[%S], Language[%S], Bitrate[%S], Channels[%d], Duration[%d]"
-msgstr ""
+msgstr "ç´¢å¼[%02x] ç¼ç [%S], è¯è¨[%S], æ¯ç¹ç[%S], éé[%d], æç»æ¶é´[%d]"
-#: import/ImportFLAC.cpp:35
+#: import/ImportFLAC.cpp:43
msgid "FLAC files"
-msgstr ""
+msgstr "FLACæä»¶"
-#: ../src/import/ImportLOF.cpp:151
-#: ../src/import/ImportLOF.cpp:177
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr "GStreamerå
¼å®¹æä»¶"
+
+#: import/ImportLOF.cpp:95
msgid "List of Files in basic text format"
msgstr "åºæ¬ææ¬æ ¼å¼çæä»¶å表"
#. i18n-hint: You do not need to translate "LOF"
-#: ../src/import/ImportLOF.cpp:268
+#: import/ImportLOF.cpp:314
msgid "Invalid window offset in LOF file."
msgstr "LOF æä»¶ä¸ççªå£åç§»æ æã"
#. i18n-hint: You do not need to translate "LOF"
-#: ../src/import/ImportLOF.cpp:270
-#: ../src/import/ImportLOF.cpp:291
-#: ../src/import/ImportLOF.cpp:363
-#: ../src/import/ImportLOF.cpp:383
+#: import/ImportLOF.cpp:316 import/ImportLOF.cpp:337 import/ImportLOF.cpp:418
+#: import/ImportLOF.cpp:439
msgid "LOF Error"
msgstr "LOF é误"
#. i18n-hint: You do not need to translate "LOF"
-#: ../src/import/ImportLOF.cpp:289
+#: import/ImportLOF.cpp:335
msgid "Invalid duration in LOF file."
msgstr "LOF æä»¶ä¸çæç»æ¶é´æ æã"
-#: ../src/import/ImportLOF.cpp:362
+#: import/ImportLOF.cpp:417
msgid "MIDI tracks cannot be offset individually, only audio files can be."
msgstr "MIDI轨éä¸è½åç¬åç§»ï¼åªæé³é¢æä»¶æå¯ä»¥ã"
#. i18n-hint: You do not need to translate "LOF"
-#: ../src/import/ImportLOF.cpp:382
+#: import/ImportLOF.cpp:438
msgid "Invalid track offset in LOF file."
msgstr "LOF æä»¶ä¸ç轨éåç§»æ æã"
#: import/ImportMIDI.cpp:31
msgid ": Filename too short."
-msgstr ""
+msgstr "ï¼æä»¶å太ç"
#: import/ImportMIDI.cpp:31 import/ImportMIDI.cpp:39 import/ImportMIDI.cpp:45
#: import/ImportMIDI.cpp:53
msgid "Could not open file "
-msgstr ""
+msgstr "æ æ³æå¼æä»¶"
#: import/ImportMIDI.cpp:39
msgid ": Incorrect filetype."
-msgstr ""
+msgstr "ï¼æä»¶ç±»åé误"
-#: import/ImportOGG.cpp:35
+#: import/ImportOGG.cpp:44
msgid "Ogg Vorbis files"
-msgstr ""
+msgstr "Ogg Vorbis æä»¶"
-#: ../src/import/ImportOGG.cpp:124
+#: import/ImportOGG.cpp:184
msgid "Media read error"
msgstr "ä»è´¨è¯»åé误"
-#: ../src/import/ImportOGG.cpp:127
+#: import/ImportOGG.cpp:187
msgid "Not an Ogg Vorbis file"
msgstr "䏿¯Ogg Vorbisæä»¶"
-#: ../src/import/ImportOGG.cpp:130
+#: import/ImportOGG.cpp:190
msgid "Vorbis version mismatch"
msgstr "Vorbisçæ¬ä¸å¹é
"
-#: ../src/import/ImportOGG.cpp:133
+#: import/ImportOGG.cpp:193
msgid "Invalid Vorbis bitstream header"
msgstr "æ æçVorbis æ¯ç¹æµå¤´é¨"
-#: ../src/import/ImportOGG.cpp:136
+#: import/ImportOGG.cpp:196
msgid "Internal logic fault"
msgstr "å
é¨å¤çé误"
-#: export/ExportPCM.cpp:320 import/ImportPCM.cpp:47
+#: import/ImportPCM.cpp:66
msgid "WAV, AIFF, and other uncompressed types"
-msgstr ""
+msgstr "WAV, AIFF,åå
¶å®éå缩类å"
#: import/ImportPlugin.h:142 import/ImportRaw.cpp:203
#, c-format
msgid "Importing %s"
-msgstr ""
+msgstr "导å
¥'%s'æä»¶ä¸"
-#: import/ImportQT.cpp:21
+#: import/ImportQT.cpp:18
msgid "QuickTime files"
-msgstr ""
+msgstr "QuickTimeæä»¶"
#: import/ImportRaw.cpp:205
msgid "Import Raw"
-msgstr ""
+msgstr "导å
¥è£¸æ°æ®"
-#: ../src/import/ImportRaw.cpp:267
+#: import/ImportRaw.cpp:282
msgid "Import Raw Data"
-msgstr "导å
¥åå§(Raw)æ°æ®"
+msgstr "导å
¥è£¸æ°æ®"
#. i18n-hint: Refers to byte-order. Don't translate "endianness" if you don't
-#: ../src/import/ImportRaw.cpp:327
+#. know the correct technical word.
+#: import/ImportRaw.cpp:327
msgid "No endianness"
-msgstr "没æåèåº(endianness)"
+msgstr "没æå°¾ç«¯"
#. i18n-hint: Refers to byte-order. Don't translate this if you don't
-#: ../src/import/ImportRaw.cpp:330
+#. know the correct technical word.
+#: import/ImportRaw.cpp:330
msgid "Little-endian"
-msgstr "Little-endianåèåº(以ä½ä½ç»æä¸ç§å卿¹å¼)"
+msgstr "å°å°¾ç«¯"
#. i18n-hint: Refers to byte-order. Don't translate this if you don't
-#: ../src/import/ImportRaw.cpp:333
+#. know the correct technical word.
+#: import/ImportRaw.cpp:333
msgid "Big-endian"
-msgstr "Big-endianåèåº(以é«ä½ç»æä¸ç§å卿¹å¼)"
+msgstr "大尾端"
#. i18n-hint: Refers to byte-order. Don't translate "endianness" if you don't
-#: ../src/import/ImportRaw.cpp:336
+#. know the correct technical word.
+#: import/ImportRaw.cpp:336
msgid "Default endianness"
-msgstr "缺çåèåº(Endianness)"
+msgstr "é»è®¤å°¾ç«¯"
-#: ../src/import/ImportRaw.cpp:360
+#: import/ImportRaw.cpp:355
msgid "1 Channel (Mono)"
msgstr "1 声é(å声é)"
-#: ../src/import/ImportRaw.cpp:361
+#: import/ImportRaw.cpp:356
msgid "2 Channels (Stereo)"
msgstr "2声é(ç«ä½å£°)"
-#: ../src/import/ImportRaw.cpp:363
+#: import/ImportRaw.cpp:358
#, c-format
msgid "%d Channels"
msgstr "%d 声é"
#: import/ImportRaw.cpp:369
msgid "Byte order:"
-msgstr ""
+msgstr "åèåºï¼"
#: import/ImportRaw.cpp:372
msgid "Channels:"
-msgstr ""
+msgstr "声éï¼"
-#: ../src/import/ImportRaw.cpp:376
+#: import/ImportRaw.cpp:382
msgid "Start offset:"
msgstr "èµ·å§åç§»ï¼"
-#: ../src/import/ImportRaw.cpp:387
+#: import/ImportRaw.cpp:388
msgid "Amount to import:"
-msgstr "æ»è®¡è¦å¯¼å
¥:"
+msgstr "æ»è®¡è¦å¯¼å
¥ï¼"
-#: ../src/import/ImportRaw.cpp:398
+#: import/ImportRaw.cpp:394
msgid "Sample rate:"
-msgstr "éæ ·ç:"
+msgstr "éæ ·çï¼"
#: ondemand/ODComputeSummaryTask.h:47
msgid "Import complete. Calculating waveform"
-msgstr ""
+msgstr "导å
¥å®æï¼è®¡ç®æ³¢å½¢ä¸"
#: ondemand/ODDecodeTask.h:61
msgid "Decoding Waveform"
-msgstr ""
+msgstr "è§£ç æ³¢å½¢ä¸"
#: ondemand/ODWaveTrackTaskQueue.cpp:327
#, c-format
msgid "%s %2.0f%% complete. Click to change task focal point."
-msgstr ""
+msgstr "%s %2.0f%%宿ãç¹å»æ¹åä»»å¡ç¦ç¹ã"
-#: ../src/prefs/PrefsDialog.cpp:83
-msgid "Audio I/O"
-msgstr "é³é¢I/O"
+#: prefs/BatchPrefs.cpp:55 prefs/BatchPrefs.cpp:56
+msgid "Batch"
+msgstr "æ¹å¤ç"
-#: ../src/prefs/AudioIOPrefs.cpp:234
-msgid "1 (Mono)"
-msgstr "1 (å声é)"
+#: prefs/BatchPrefs.cpp:77 prefs/GUIPrefs.cpp:92
+msgid "Behaviors"
+msgstr "è¡ä¸º"
-#: ../src/prefs/AudioIOPrefs.cpp:235
-msgid "2 (Stereo)"
-msgstr "2 (ç«ä½å£°)"
+#: prefs/BatchPrefs.cpp:80
+msgid "&Don't apply effects in batch mode"
+msgstr "ä¸è¦å¨æ¹å¤ç模å¼åºç¨ææ(%D)"
-#: ../src/prefs/AudioIOPrefs.cpp:80
-msgid "Playback"
-msgstr "éæ¾"
+#: prefs/BatchPrefs.cpp:83 prefs/GUIPrefs.cpp:132
+msgid "Cl&eanSpeech Mode (Customized GUI)"
+msgstr "'æ¸
æ°è¯é³'æ¨¡å¼ (å®å¶GUI)(&E)"
-#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
-#: toolbars/DeviceToolBar.cpp:54
-msgid "Device"
-msgstr ""
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
+msgstr "设å¤"
-#: prefs/AudioIOPrefs.cpp:122
+#: prefs/GUIPrefs.cpp:34 prefs/GUIPrefs.cpp:35
+msgid "Interface"
+msgstr "çé¢"
+
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
+msgstr "主æº"
+
+#: prefs/AudioIOPrefs.cpp:125 prefs/MidiIOPrefs.cpp:121
msgid "Using:"
-msgstr ""
+msgstr "使ç¨ï¼"
-#: prefs/AudioIOPrefs.cpp:123
-msgid "Portaudio v"
-msgstr ""
+#: prefs/AudioIOPrefs.cpp:118 prefs/MidiIOPrefs.cpp:114
+msgid "Playback"
+msgstr "åæ¾"
-#: ../src/prefs/AudioIOPrefs.cpp:161
+#: prefs/AudioIOPrefs.cpp:136 prefs/MidiIOPrefs.cpp:132
msgid "Recording"
msgstr "æ£å¨å½é³"
-#: prefs/AudioIOPrefs.cpp:139
+#: prefs/AudioIOPrefs.cpp:142 prefs/MidiIOPrefs.cpp:138
msgid "Channels"
-msgstr ""
-
-#: ../src/prefs/AudioIOPrefs.cpp:282
-msgid "Playthrough"
-msgstr "åæ¾"
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
+msgstr "éé"
-#: prefs/AudioIOPrefs.cpp:194
-msgid "Effects Preview"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:165
-msgid "Length of preview:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:158
-msgid "Cut Preview"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:173
-msgid "Preview before cut region:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:175
-msgid "Preview after cut region:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:168
-msgid "Latency"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:195
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:198
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:197
-msgid "Seek Time when playing"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:187
-msgid "Short period:"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:189
-msgid "Long period:"
-msgstr ""
-
-#: ../src/prefs/PrefsDialog.cpp:89
-msgid "Batch"
-msgstr "æ¹å¤ç"
-
-#: ../src/prefs/BatchPrefs.cpp:68
-#: ../src/prefs/GUIPrefs.cpp:36
-msgid "Behaviors"
-msgstr "è¡ä¸º"
-
-#: prefs/BatchPrefs.cpp:80
-msgid "&Don't apply effects in batch mode"
-msgstr ""
+#: prefs/AudioIOPrefs.cpp:103 prefs/MidiIOPrefs.cpp:99
+msgid "1 (Mono)"
+msgstr "1 (å声é)"
-#: prefs/BatchPrefs.cpp:83
-#, fuzzy
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr "'æ¸
æ°è¯é³'æ¨¡å¼ (å®å¶GUI)"
+#: prefs/AudioIOPrefs.cpp:104 prefs/MidiIOPrefs.cpp:100
+msgid "2 (Stereo)"
+msgstr "2 (ç«ä½å£°)"
-#: ../src/prefs/PrefsDialog.cpp:87
-#: ../src/prefs/PrefsDialog.cpp:210
+#: prefs/DirectoriesPrefs.cpp:55 prefs/DirectoriesPrefs.cpp:56
+#: prefs/PrefsDialog.cpp:267
msgid "Directories"
msgstr "ç®å½"
#: prefs/DirectoriesPrefs.cpp:87
msgid "Temporary files directory"
-msgstr ""
+msgstr "ä¸´æ¶æä»¶ç®å½"
-#: ../src/prefs/DirectoriesPrefs.cpp:57
+#: prefs/DirectoriesPrefs.cpp:91
msgid "Location:"
-msgstr "ä½ç½®:"
+msgstr "ä½ç½®ï¼"
-#: ../src/prefs/DirectoriesPrefs.cpp:78
+#: prefs/DirectoriesPrefs.cpp:93
msgid "Free Space:"
-msgstr "å©ä½å®¹é:"
+msgstr "å©ä½å®¹éï¼"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr ""
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr ""
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
-msgstr ""
+#: prefs/DirectoriesPrefs.cpp:110
+msgid "Audio cache"
+msgstr "é³é¢ç¼å"
#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
-msgstr ""
+msgid "Play and/or record using RAM (useful for slow drives)"
+msgstr "使ç¨RAMææ¾åå½å¶ (对æ
¢é驱卿ç¨)"
-#: prefs/DirectoriesPrefs.cpp:110
-msgid "Audio cache"
-msgstr ""
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
+msgstr "æå°ç©ºé²å
å (MB):"
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:118
+msgid ""
+"If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
+"妿å¯ç¨ç³»ç»å
åä½äºè¯¥å¼ï¼é³é¢\n"
+"ä¸ä¼å¨å
åä¸è¢«ç¼åï¼èä¼è¢«åå
¥ç£çã"
-#: ../src/prefs/DirectoriesPrefs.cpp:136
+#: prefs/DirectoriesPrefs.cpp:121
msgid "Choose a location to place the temporary directory"
msgstr "鿩忾䏴æ¶ç®å½çä½ç½®"
-#: ../src/prefs/DirectoriesPrefs.cpp:183
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr "ä¸å¯ç¨ - ä¸é¢çä½ç½®ä¸åå¨"
+
+#: prefs/DirectoriesPrefs.cpp:166
#, c-format
msgid "Directory %s does not exist. Create it?"
msgstr "ç®å½%sä¸åå¨ãæ¯å¦å建å®ï¼"
-#: ../src/prefs/DirectoriesPrefs.cpp:185
+#: prefs/DirectoriesPrefs.cpp:168
msgid "New Temporary Directory"
msgstr "æ°å»ºä¸´æ¶ç®å½"
-#: ../src/prefs/DirectoriesPrefs.cpp:204
+#: prefs/DirectoriesPrefs.cpp:187
#, c-format
msgid "Directory %s is not writable"
msgstr "ç®å½%sä¸å¯å"
-#: ../src/prefs/DirectoriesPrefs.cpp:216
+#: prefs/DirectoriesPrefs.cpp:199
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "æ¹å临æ¶ç®å½å¨éå¯Audacityä¹åæææã"
-#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
-msgid "Import / Export"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:84
-msgid "MP3 Export Library"
-msgstr ""
-
-#: ../src/prefs/FileFormatPrefs.cpp:180
-msgid "MP3 Library Version:"
-msgstr "MP3åºççæ¬:"
-
-#: prefs/FileFormatPrefs.cpp:93
-msgid "MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:98
-msgid "LAME MP3 Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
-msgid "&Download"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:136
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:137
-msgid "When importing audio files"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:140
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:141
-msgid "&Read uncompressed audio files directly from the original (faster)"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:143
-msgid "&Normalize all tracks in project"
-msgstr ""
-
-#: prefs/FileFormatPrefs.cpp:132
-msgid "When saving a project that depends on other audio files"
-msgstr ""
+#: prefs/GUIPrefs.cpp:42
+msgid "In Browser"
+msgstr "æµè§"
-#: prefs/FileFormatPrefs.cpp:87
-msgid "Always © all audio into project (safest)"
-msgstr ""
+#: prefs/GUIPrefs.cpp:43
+msgid "From Internet"
+msgstr "ä»äºèç½"
-#: prefs/FileFormatPrefs.cpp:88
-msgid "&Do not copy any audio"
-msgstr ""
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
+msgstr "36"
-#: prefs/FileFormatPrefs.cpp:135
-msgid "&Ask user"
-msgstr ""
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
+msgstr "48"
-#: prefs/FileFormatPrefs.cpp:93
-msgid "When exporting tracks to an audio file"
-msgstr ""
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
+msgstr "60"
-#: prefs/FileFormatPrefs.cpp:144
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
-msgstr ""
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
+msgstr "96"
-#: prefs/FileFormatPrefs.cpp:97
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
-msgstr ""
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
+msgstr "120"
-#: prefs/BatchPrefs.cpp:91
-msgid "S&how Metadata Editor prior to export step"
-msgstr ""
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
+msgstr "145"
-#: ../src/prefs/PrefsDialog.cpp:88
-msgid "Interface"
-msgstr "çé¢"
+#: prefs/GUIPrefs.cpp:141
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 dB (å°èå´ï¼éç¨äºå¤§æ¯å¹
ç¼è¾)"
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
-msgstr ""
+#: prefs/GUIPrefs.cpp:142
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 dB (PCM 8 bit éæ ·èå´)"
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
-msgstr ""
+#: prefs/GUIPrefs.cpp:143
+msgid "-60 dB (PCM range of 10 bit samples)"
+msgstr "-60 dB (PCM 10 bit éæ ·èå´)"
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
-msgstr ""
+#: prefs/GUIPrefs.cpp:144
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 dB (PCM 16 bit éæ ·èå´)"
-#: prefs/GUIPrefs.cpp:72
-msgid "&Update display while playing"
-msgstr ""
+#: prefs/GUIPrefs.cpp:145
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120dB (æ¥è¿äººç±»å¬åçæé)"
-#: prefs/GUIPrefs.cpp:96
-msgid "Cl&osing last window quits Audacity"
-msgstr ""
+#: prefs/GUIPrefs.cpp:146
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB (PCM 24 bit éæ ·èå´)"
-#: prefs/GUIPrefs.cpp:76
-msgid "Enable &dragging of left and right selection edges"
-msgstr ""
+#: prefs/SpectrumPrefs.cpp:140
+msgid "Display"
+msgstr "æ¾ç¤º"
#: prefs/GUIPrefs.cpp:100
msgid "Er&gonomic order of audio I/O buttons"
-msgstr ""
+msgstr "Audio I/Oæé®ç人ä½å·¥ç¨å¦é¡ºåº(&G)"
-#: prefs/GUIPrefs.cpp:80
-msgid "Automatically &fit tracks vertically zoomed"
-msgstr ""
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
+msgstr "ç¨åºå¯å¨æ¶æ¾ç¤ºæ¬¢è¿ä¿¡æ¯(&W)"
-#: prefs/GUIPrefs.cpp:104
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:90
-msgid "Editing a &clip can move other clips"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:88
-msgid "&Select all audio in project, if none selected"
-msgstr ""
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
+msgstr "å°ºå½¢ï¼æ³¢å½¢ dBèå´ï¼"
-#: prefs/GUIPrefs.cpp:90
-msgid "&Beep on completion of longer activities"
-msgstr ""
-
-#: ../src/prefs/BatchPrefs.cpp:69
-#: ../src/prefs/GUIPrefs.cpp:37
-msgid "Show / Hide"
-msgstr "æ¾ç¤º / éè"
+#: prefs/GUIPrefs.cpp:167
+msgid "Help:"
+msgstr "帮å©ï¼"
#: prefs/GUIPrefs.cpp:96
-#, fuzzy
-msgid "Enable cut &lines"
-msgstr "å¼å¯'åªå线'"
-
-#: prefs/GUIPrefs.cpp:98
-#, fuzzy
-msgid "Show warnings about &temp files"
-msgstr "æ¾ç¤ºå
³äºä¸´æ¶æä»¶çè¦åä¿¡æ¯"
-
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
-msgstr ""
+msgid "Cl&osing last window quits Audacity"
+msgstr "å
³éæåä¸ä¸ªçªå£æ¯éåºAudacity(%O)"
-#: prefs/GUIPrefs.cpp:122
-msgid "Show &Welcome Message at program start up"
-msgstr ""
+#: prefs/GUIPrefs.cpp:110
+msgid "&Beep on completion of longer activities"
+msgstr "å¨ä¸ä¸ªè¾é¿çå¨ä½å®ææ¶ååºå£°é³(&B)"
#: prefs/GUIPrefs.cpp:126
msgid "Modes"
-msgstr ""
+msgstr "模å¼"
+
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
+msgstr "å¨GUI模å¼ä¸æ¾ç¤ºVSTææ"
#: prefs/GUIPrefs.cpp:129
msgid "Don't a&pply effects in batch mode"
-msgstr ""
+msgstr "ä¸è¦ä»¥æ¹å¤ç模å¼åºç¨ææ(&P)"
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
-msgstr ""
-
-#: ../src/prefs/GUIPrefs.cpp:383
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 dB (å°èå´ï¼éç¨äºå¤§æ¯å¹
ç¼è¾)"
+#: prefs/FileFormatPrefs.cpp:53 prefs/FileFormatPrefs.cpp:54
+msgid "Import / Export"
+msgstr "导å
¥/导åº"
-#: ../src/prefs/GUIPrefs.cpp:385
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 dB (PCM 8 bit éæ ·èå´)"
+#: prefs/FileFormatPrefs.cpp:137
+msgid "When importing audio files"
+msgstr "å½å¯¼å
¥é³é¢æä»¶æ¶"
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
-msgstr ""
+#: prefs/FileFormatPrefs.cpp:140
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
+msgstr "å¨ç¼è¾åçæéå缩é³é¢æä»¶å¤ä»½(æ´å®å
¨)(&M)"
-#: ../src/prefs/GUIPrefs.cpp:387
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 dB (PCM 16 bit éæ ·èå´)"
+#: prefs/FileFormatPrefs.cpp:141
+msgid "&Read uncompressed audio files directly from the original (faster)"
+msgstr "ä»åå§éå缩æä»¶ä¸ç´æ¥è¯»å
¥(å¿«é)(&R)"
-#: ../src/prefs/GUIPrefs.cpp:389
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120dB (æ¥è¿äººç±»å¬åçæé)"
+#: prefs/FileFormatPrefs.cpp:143
+msgid "&Normalize all tracks in project"
+msgstr "å½ä¸åå·¥ç¨ä¸çææè½¨é(&N)"
-#: ../src/prefs/GUIPrefs.cpp:391
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB (PCM 24 bit éæ ·èå´)"
+#: prefs/FileFormatPrefs.cpp:157
+msgid "When exporting tracks to an audio file"
+msgstr "å½å¯¼åºè½¨éå°é³é¢æä»¶æ¶"
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
-msgstr ""
+#: prefs/FileFormatPrefs.cpp:160
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+msgstr "æ»æ¯æ··åæä»¥è½¨éå°ç«ä½å£°æå声éã(&L)"
-#: prefs/GUIPrefs.cpp:164
-msgid "Other interface choices"
-msgstr ""
+#: prefs/FileFormatPrefs.cpp:161
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+msgstr "使ç¨å®å¶çæ··å(å¦å¯¼åºå°5,1å¤å£°éæä»¶)(&U)"
-#: prefs/GUIPrefs.cpp:167
-msgid "Help:"
-msgstr ""
+#: prefs/FileFormatPrefs.cpp:163
+msgid "S&how Metadata Editor prior to export step"
+msgstr "å¯¼åºæ¶æ¾ç¤ºå
ä¿¡æ¯ç¼è¾å¨(&H)"
-#: prefs/GUIPrefs.cpp:168
-msgid "Solo Button:"
+#: prefs/ImportExportPrefs.cpp:84
+msgid ""
+"Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
msgstr ""
+"注æï¼ ç¹å»'é项'æé®å¯ä»¥\n"
+"å¨å¯¼åºå¯¹è¯æ¡éæ©å¯¼åºè´¨é"
-#: ../src/prefs/PrefsDialog.cpp:90
+#: prefs/KeyConfigPrefs.cpp:64 prefs/KeyConfigPrefs.cpp:65
msgid "Keyboard"
msgstr "é®ç"
#: prefs/KeyConfigPrefs.cpp:86
msgid "Keyboard preferences currently unavailable."
-msgstr ""
+msgstr "é®çå好é项å½åä¸å¯ç¨"
#: prefs/KeyConfigPrefs.cpp:87
msgid "Open a new project to modify keyboard shortcuts."
-msgstr ""
+msgstr "ä¿®æ¹é®çå¿«æ·é®éè¦æå¼æ°å·¥ç¨"
-#: prefs/KeyConfigPrefs.cpp:93
+#: prefs/KeyConfigPrefs.cpp:109
msgid "Key Bindings"
-msgstr ""
+msgstr "é®ç»å®"
-#: prefs/KeyConfigPrefs.cpp:113
+#: prefs/KeyConfigPrefs.cpp:129
msgid "S&et"
-msgstr ""
+msgstr "设置(&E)"
-#: ../src/prefs/KeyConfigPrefs.cpp:116
+#: prefs/KeyConfigPrefs.cpp:135
msgid "Note: Pressing Cmd+Q will quit. All other keys are valid."
-msgstr "注æ: æCmd+Qå°éåºãå
¶å®æææé®åææã"
+msgstr "注æï¼ æCmd+Qå°éåºãå
¶å®æææé®åææã"
-#: prefs/KeyConfigPrefs.cpp:122 prefs/ThemePrefs.cpp:102
+#: prefs/KeyConfigPrefs.cpp:140 prefs/ThemePrefs.cpp:105
msgid "&Defaults"
-msgstr ""
+msgstr "é»è®¤(&D)"
-#: ../src/prefs/KeyConfigPrefs.cpp:80
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr "å½ä»¤"
+
+#: prefs/KeyConfigPrefs.cpp:159
msgid "Key Combination"
msgstr "æé®ç»å"
-#: ../src/prefs/KeyConfigPrefs.cpp:160
-msgid "Export Keyboard Shortcuts As:"
-msgstr "å¯¼åºæé®å¿«æ·æ¹å¼ä¸º:"
+#: prefs/KeyConfigPrefs.cpp:382 toolbars/EditToolBar.cpp:144
+msgid "Undo"
+msgstr "æ¤é"
-#: ../src/prefs/KeyConfigPrefs.cpp:176
-msgid "Error saving keyboard shortcuts"
-msgstr "ä¿åæé®å¿«æ·æ¹å¼åºé"
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr "éå"
-#: ../src/prefs/KeyConfigPrefs.cpp:190
+#: prefs/KeyConfigPrefs.cpp:211
msgid "Select an XML file containing Audacity keyboard shortcuts..."
-msgstr "éæ©å
å«Audacityå¿«æ·é®å®ä¹çXMLæä»¶..."
+msgstr "éæ©å
å«Audacityé®çå¿«æ·é®å®ä¹çXMLæä»¶..."
-#: ../src/prefs/KeyConfigPrefs.cpp:207
+#: prefs/KeyConfigPrefs.cpp:228
msgid "Error loading keyboard shortcuts"
-msgstr "读åæé®å¿«æ·æ¹å¼é误"
+msgstr "读åé®çå¿«æ·é®é误"
+
+#: prefs/KeyConfigPrefs.cpp:176
+msgid "Export Keyboard Shortcuts As:"
+msgstr "导åºé®çå¿«æ·é®ä¸ºï¼"
+
+#: prefs/KeyConfigPrefs.cpp:196
+msgid "Error saving keyboard shortcuts"
+msgstr "ä¿åé®çå¿«æ·é®åºé"
-#: prefs/KeyConfigPrefs.cpp:239
+#: prefs/KeyConfigPrefs.cpp:256
#, c-format
-msgid "The keyboard shortcut '%s' is already assigned to:\n"
+msgid ""
+"The keyboard shortcut '%s' is already assigned to:\n"
"\n"
"'%s'"
msgstr ""
+"é®çå¿«æ·é®'%s'å·²ç»ç»å®å°ï¼\n"
+"\n"
+"'%s'"
-#: ../src/EditToolBar.cpp:157
-msgid "Undo"
-msgstr "æ¤é"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr "åº"
+
+#: prefs/FileFormatPrefs.cpp:84
+msgid "MP3 Export Library"
+msgstr "MP3导åºåº"
-#: prefs/AudioIOPrefs.cpp:147
-#, fuzzy
+#: prefs/FileFormatPrefs.cpp:87
+msgid "MP3 Library Version:"
+msgstr "MP3åºççæ¬ï¼"
+
+#: prefs/FileFormatPrefs.cpp:93
+msgid "MP3 Library:"
+msgstr "MP3åºï¼"
+
+#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr "å®ä½...(&L)"
+
+#: prefs/FileFormatPrefs.cpp:98
+msgid "LAME MP3 Library:"
+msgstr "LAME MP3åºï¼"
+
+#: prefs/FileFormatPrefs.cpp:101 prefs/FileFormatPrefs.cpp:125
+msgid "&Download"
+msgstr "ä¸è½½(&D)"
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr "FFmpeg导å
¥/导åºåº"
+
+#: prefs/FileFormatPrefs.cpp:109
+msgid "FFmpeg Library Version:"
+msgstr "FFmpegåºççæ¬ï¼"
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr "æ²¡ææ¾å°å
¼å®¹çFFmpegåº"
+
+#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
+msgid "FFmpeg Library:"
+msgstr "FFmpegåº"
+
+#: prefs/AudioIOPrefs.cpp:41 prefs/AudioIOPrefs.cpp:42
+#: prefs/MidiIOPrefs.cpp:44 prefs/MidiIOPrefs.cpp:45
+msgid "Audio I/O"
+msgstr "é³é¢I/O"
+
+#: prefs/AudioIOPrefs.cpp:126 prefs/MidiIOPrefs.cpp:122
+msgid "Portaudio v"
+msgstr "Portaudio v"
+
+#: prefs/AudioIOPrefs.cpp:148 prefs/MidiIOPrefs.cpp:144
+msgid "Playthrough"
+msgstr "éæ"
+
+#: prefs/MidiIOPrefs.cpp:146
msgid "&Play other tracks while recording new one"
-msgstr "å¨å½å¶æ°è½¨æ¶ææ¾å
¶å®ç轨é"
+msgstr "å¨å½å¶æ°è½¨æ¶ææ¾å
¶å®ç轨é(&P)"
#: prefs/MidiIOPrefs.cpp:149
msgid "&Hardware Playthrough (Play new track while recording it)"
-msgstr ""
+msgstr "硬件éæï¼å¨å½å¶å®æ¶ææ¾æ°è½¨é(&H)"
#: prefs/MidiIOPrefs.cpp:152
msgid "&Software Playthrough (Play new track while recording it)"
-msgstr ""
+msgstr "软件éæï¼å¨å½å¶å®æ¶ææ¾æ°è½¨é(&S)"
+
+#: prefs/AudioIOPrefs.cpp:177 prefs/MidiIOPrefs.cpp:157
+msgid "Cut Preview"
+msgstr "åªåé¢è§"
#: prefs/MidiIOPrefs.cpp:160
msgid "Play before cut region:"
-msgstr ""
+msgstr "åªååºååææ¾ï¼"
#: prefs/MidiIOPrefs.cpp:162
msgid "Play after cut region:"
-msgstr ""
+msgstr "åªååºååææ¾ï¼"
+
+#: prefs/AudioIOPrefs.cpp:190 prefs/MidiIOPrefs.cpp:167
+msgid "Latency"
+msgstr "å»¶è¿"
-#: prefs/AudioIOPrefs.cpp:174
+#: prefs/MidiIOPrefs.cpp:173
msgid "Audio to buffer:"
-msgstr ""
+msgstr "é³é¢å°ç¼å²ï¼"
-#: prefs/AudioIOPrefs.cpp:177
+#: prefs/MidiIOPrefs.cpp:176
msgid "Latency correction:"
-msgstr ""
+msgstr "å»¶è¿æ ¡æ£ï¼"
#: prefs/MidiIOPrefs.cpp:183
msgid "Seek Time"
-msgstr ""
+msgstr "å¯»æ¾æ¶é´"
+
+#: prefs/AudioIOPrefs.cpp:207 prefs/MidiIOPrefs.cpp:186
+msgid "Short period:"
+msgstr "çæï¼"
+
+#: prefs/AudioIOPrefs.cpp:209 prefs/MidiIOPrefs.cpp:188
+msgid "Long period:"
+msgstr "é¿æï¼"
+
+#: prefs/AudioIOPrefs.cpp:169 prefs/MidiIOPrefs.cpp:193
+msgid "Effects Preview"
+msgstr "ææé¢è§"
#: prefs/MidiIOPrefs.cpp:196
msgid "Play when previewing:"
-msgstr ""
+msgstr "é¢è§æ¶ææ¾ï¼"
-#: ../src/prefs/PrefsDialog.cpp:91
+#: prefs/MousePrefs.cpp:55 prefs/MousePrefs.cpp:56
msgid "Mouse"
msgstr "é¼ æ "
-#: ../src/prefs/MousePrefs.cpp:71
+#: prefs/MousePrefs.cpp:78
msgid "Mouse Bindings (default values, not configurable)"
-msgstr "é¼ æ ç»å® (缺çå¼, ä¸å¯æ´æ¹)"
+msgstr "é¼ æ ç»å® (é»è®¤å¼ï¼ ä¸å¯æ´æ¹)"
-#: ../src/prefs/MousePrefs.cpp:84
+#: prefs/MousePrefs.cpp:93
msgid "Tool"
msgstr "å·¥å
·"
-#: ../src/prefs/MousePrefs.cpp:85
+#: prefs/MousePrefs.cpp:94
msgid "Command Action"
msgstr "å½ä»¤å¨ä½"
-#: ../src/prefs/MousePrefs.cpp:86
+#: prefs/MousePrefs.cpp:95
msgid "Buttons"
msgstr "æé®"
-#: ../src/prefs/MousePrefs.cpp:89
-#: ../src/prefs/MousePrefs.cpp:93
-#: ../src/prefs/MousePrefs.cpp:104
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:117
+#: prefs/MousePrefs.cpp:122
msgid "Left-Click"
msgstr "å·¦å»"
-#: ../src/prefs/MousePrefs.cpp:89
-#: ../src/prefs/MousePrefs.cpp:90
-#: ../src/prefs/MousePrefs.cpp:91
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:101 prefs/MousePrefs.cpp:102
msgid "Select"
msgstr "éæ©"
-#: ../src/prefs/MousePrefs.cpp:89
-#: ../src/prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:122
msgid "Set Selection Point"
msgstr "è®¾ç½®éæ®µä½ç½®"
-#: ../src/prefs/MousePrefs.cpp:90
-#: ../src/prefs/MousePrefs.cpp:94
-#: ../src/prefs/MousePrefs.cpp:98
-#: ../src/prefs/MousePrefs.cpp:102
-#: ../src/prefs/MousePrefs.cpp:106
+#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:115 prefs/MousePrefs.cpp:119 prefs/MousePrefs.cpp:123
msgid "Left-Drag"
-msgstr "æä½å·¦é®-ææ³"
+msgstr "æä½å·¦é®-ææ½"
-#: ../src/prefs/MousePrefs.cpp:90
-#: ../src/prefs/MousePrefs.cpp:110
+#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:123
msgid "Set Selection Range"
msgstr "è®¾ç½®éæ®µèå´"
-#: ../src/prefs/MousePrefs.cpp:91
+#: prefs/MousePrefs.cpp:100
msgid "Extend Selection Range"
msgstr "æ©å±é段èå´"
-#: ../src/prefs/MousePrefs.cpp:91
+#: prefs/MousePrefs.cpp:100
msgid "Shift-Left-Click"
-msgstr "æä½Shifté®-å·¦å»"
+msgstr "Shifté®-å·¦å»"
#: prefs/MousePrefs.cpp:101
msgid "Left-Double-Click"
-msgstr ""
+msgstr "å·¦åå»"
#: prefs/MousePrefs.cpp:101
msgid "Select Clip or Entire Track"
-msgstr ""
+msgstr "éæ©çæ®µææ´ä¸ªè½¨é"
#: prefs/MousePrefs.cpp:102
msgid "Ctrl-Left-Click"
-msgstr ""
+msgstr "Ctrlé®-å·¦å»"
#: prefs/MousePrefs.cpp:102
msgid "Set Selection Point and Play"
-msgstr ""
+msgstr "è¿æ¯é段ä½ç½®å¹¶ææ¾"
-#: ../src/prefs/MousePrefs.cpp:93
-#: ../src/prefs/MousePrefs.cpp:94
-#: ../src/prefs/MousePrefs.cpp:95
-#: ../src/prefs/MousePrefs.cpp:96
+#: prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:106
+#: prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:108 prefs/MousePrefs.cpp:109
msgid "Zoom"
msgstr "缩æ¾"
-#: ../src/prefs/MousePrefs.cpp:93
+#: prefs/MousePrefs.cpp:104
msgid "Zoom in on Point"
msgstr "ç¹æ¾å¤§"
-#: ../src/prefs/MousePrefs.cpp:94
-#: ../src/prefs/MousePrefs.cpp:96
-#: ../src/prefs/MousePrefs.cpp:112
+#: prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:125
msgid "Zoom in on a Range"
msgstr "èå´æ¾å¤§"
-#: ../src/prefs/MousePrefs.cpp:94
+#: prefs/MousePrefs.cpp:105
msgid "same as right-drag"
-msgstr "åæä½å³é®-ææ³"
+msgstr "åå³é®-ææ½"
-#: ../src/prefs/MousePrefs.cpp:95
+#: prefs/MousePrefs.cpp:106 prefs/MousePrefs.cpp:124
msgid "Right-Click"
msgstr "å³å»"
-#: ../src/prefs/MousePrefs.cpp:95
-#: ../src/prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:106 prefs/MousePrefs.cpp:124
msgid "Zoom out one step"
msgstr "缩å°ä¸çº§"
-#: ../src/prefs/MousePrefs.cpp:96
+#: prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:125
msgid "Right-Drag"
-msgstr "æä½å³é®-ææ³"
+msgstr "å³é®-ææ½"
-#: ../src/prefs/MousePrefs.cpp:96
+#: prefs/MousePrefs.cpp:107
msgid "same as left-drag"
-msgstr "åæä½å·¦é®-ææ³"
+msgstr "åå·¦é®-ææ½"
#: prefs/MousePrefs.cpp:108
msgid "Shift-Drag"
-msgstr ""
+msgstr "Shifté®-ææ½"
#: prefs/MousePrefs.cpp:108
msgid "Zoom out on a Range"
-msgstr ""
+msgstr "èå´ç¼©å°"
#: prefs/MousePrefs.cpp:109
msgid "Middle-Click"
-msgstr ""
+msgstr "ä¸å»"
#: prefs/MousePrefs.cpp:109
msgid "Zoom default"
-msgstr ""
+msgstr "é»è®¤ç¼©æ¾"
-#: ../src/prefs/MousePrefs.cpp:98
+#: prefs/MousePrefs.cpp:111
msgid "Time shift clip or move up/down between tracks"
msgstr "æ¶é´è½´åç§»å¨åªè¾ï¼æå¨é³è½¨ä¹é´ä¸ä¸ç§»å¨åªè¾"
-#: ../src/prefs/MousePrefs.cpp:99
+#: prefs/MousePrefs.cpp:112
msgid "Shift-Left-Drag"
-msgstr "æä½Shifté®åé¼ æ å·¦é®-ææ³"
+msgstr "Shifté®åå·¦é®-ææ½"
-#: ../src/prefs/MousePrefs.cpp:99
+#: prefs/MousePrefs.cpp:112
msgid "Time shift all clips in track"
msgstr "æ¶é´è½´åç§»å¨é³è½¨éçææåªè¾"
-#: ../src/prefs/MousePrefs.cpp:100
-#: ../src/prefs/MousePrefs.cpp:107
+#: prefs/MousePrefs.cpp:113 prefs/MousePrefs.cpp:120
msgid "Ctrl-Left-Drag"
-msgstr "æä½Ctrlé®åé¼ æ å·¦é®-ææ³"
+msgstr "Ctrlé®åå·¦é®-ææ½"
-#: ../src/prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:113
msgid "Move clip up/down between tracks"
msgstr "å¨è½¨éé´ä¸ä¸ç§»å¨åªè¾"
-#: ../src/prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:115
msgid "Change Amplification Envelope"
msgstr "æ¹åæ¯å¹
å
ç»"
-#: ../src/prefs/MousePrefs.cpp:104
+#: prefs/MousePrefs.cpp:117
msgid "Change Sample"
msgstr "åæ´éæ ·"
-#: ../src/prefs/MousePrefs.cpp:104
-#: ../src/prefs/MousePrefs.cpp:105
-#: ../src/prefs/MousePrefs.cpp:106
-#: ../src/prefs/MousePrefs.cpp:107
+#: prefs/MousePrefs.cpp:117 prefs/MousePrefs.cpp:118 prefs/MousePrefs.cpp:119
+#: prefs/MousePrefs.cpp:120
msgid "Pencil"
msgstr "é
ç¬"
-#: ../src/prefs/MousePrefs.cpp:105
+#: prefs/MousePrefs.cpp:118
msgid "Alt-Left-Click"
-msgstr "æä½Alté®-å·¦å»"
+msgstr "Alté®-å·¦å»"
-#: ../src/prefs/MousePrefs.cpp:105
+#: prefs/MousePrefs.cpp:118
msgid "Smooth at Sample"
msgstr "å¹³æ»éæ ·"
-#: ../src/prefs/MousePrefs.cpp:106
+#: prefs/MousePrefs.cpp:119
msgid "Change Several Samples"
msgstr "ä¿®æ¹å å¤éæ ·"
-#: ../src/prefs/MousePrefs.cpp:107
+#: prefs/MousePrefs.cpp:120
msgid "Change ONE Sample only"
msgstr "ä»
ä¿®æ¹ä¸å¤éæ ·ç¹"
-#: ../src/prefs/MousePrefs.cpp:109
-#: ../src/prefs/MousePrefs.cpp:110
-#: ../src/prefs/MousePrefs.cpp:111
-#: ../src/prefs/MousePrefs.cpp:112
+#: prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123 prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:125
msgid "Multi"
-msgstr "å¤é"
+msgstr "å¤åè½"
-#: ../src/prefs/MousePrefs.cpp:109
-#: ../src/prefs/MousePrefs.cpp:110
+#: prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123
msgid "same as select tool"
msgstr "å鿩工å
·"
-#: ../src/prefs/MousePrefs.cpp:111
-#: ../src/prefs/MousePrefs.cpp:112
+#: prefs/MousePrefs.cpp:124 prefs/MousePrefs.cpp:125
msgid "same as zoom tool"
msgstr "å缩æ¾å·¥å
·"
-#: ../src/prefs/MousePrefs.cpp:114
-#: ../src/prefs/MousePrefs.cpp:115
+#: prefs/MousePrefs.cpp:127 prefs/MousePrefs.cpp:128 prefs/MousePrefs.cpp:129
msgid "Any"
msgstr "(ä»»ä¸)"
-#: ../src/prefs/MousePrefs.cpp:114
+#: prefs/MousePrefs.cpp:127
msgid "Scroll up or down"
-msgstr "ä¸ä¸ç¿»å·"
+msgstr "ä¸ä¸æ»å¨"
-#: ../src/prefs/MousePrefs.cpp:114
+#: prefs/MousePrefs.cpp:127
msgid "Wheel-Rotate"
msgstr "æ»è½®"
#: prefs/MousePrefs.cpp:128
msgid "Scroll left or right"
-msgstr ""
+msgstr "左峿»å¨"
#: prefs/MousePrefs.cpp:128
msgid "Shift-Wheel-Rotate"
-msgstr ""
+msgstr "Shifté®-æ»è½®"
-#: ../src/prefs/MousePrefs.cpp:115
+#: prefs/MousePrefs.cpp:129
msgid "Ctrl-Wheel-Rotate"
-msgstr "æä½Ctrlé®-æ»è½®"
+msgstr "Ctrlé®-æ»è½®"
-#: ../src/prefs/MousePrefs.cpp:115
+#: prefs/MousePrefs.cpp:129
msgid "Zoom in or out"
msgstr "æ¾å¤§æç¼©å°"
-#: ../src/prefs/PrefsDialog.cpp:54
+#: prefs/AudioIOPrefs.cpp:172
+msgid "Length of preview:"
+msgstr "é¢è§é¿åº¦ï¼"
+
+#: prefs/AudioIOPrefs.cpp:180
+msgid "Preview before cut region:"
+msgstr "åªååºååé¢è§ï¼"
+
+#: prefs/AudioIOPrefs.cpp:182
+msgid "Preview after cut region:"
+msgstr "åªååºååé¢è§ï¼"
+
+#: prefs/AudioIOPrefs.cpp:204
+msgid "Seek Time when playing"
+msgstr "ææ¾æ¶çå¯»æ¾æ¶é´"
+
+#: prefs/PrefsDialog.cpp:94
msgid "Audacity Preferences"
-msgstr "Audacityåæ°éæ©"
+msgstr "Audacityå好é项"
+
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr "å·¥ç¨"
+
+#: prefs/FileFormatPrefs.cpp:148
+msgid "When saving a project that depends on other audio files"
+msgstr "ä½ä¿åä¸ä¸ªä¾èµå
¶å®é³é¢æä»¶çå·¥ç¨æ¶"
+
+#: prefs/FileFormatPrefs.cpp:151
+msgid "Always © all audio into project (safest)"
+msgstr "æ»æ¯æé³é¢å¤å¶å°å·¥ç¨(æå®å
¨)(&C)"
+
+#: prefs/FileFormatPrefs.cpp:152
+msgid "&Do not copy any audio"
+msgstr "ä¸è¦å¤å¶ä»»ä½é³é¢(&D)"
+
+#: prefs/FileFormatPrefs.cpp:153
+msgid "&Ask user"
+msgstr "é®ç¨æ·(&A)"
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr "èªå¨ä¿å"
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr "èªå¨ä¿åå¨ä¸ä¸ªå离çç®å½"
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr "èªå¨ä¿åé´éï¼"
-#: ../src/prefs/QualityPrefs.cpp:168
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr "å"
+
+#: prefs/QualityPrefs.cpp:73
msgid "Rectangle"
msgstr "ç©å½¢"
-#: ../src/prefs/QualityPrefs.cpp:169
+#: prefs/QualityPrefs.cpp:74
msgid "Triangle"
msgstr "ä¸è§å½¢"
-#: ../src/prefs/QualityPrefs.cpp:170
+#: prefs/QualityPrefs.cpp:75
msgid "Shaped"
msgstr "ç»å®å½¢"
-#: ../src/prefs/QualityPrefs.cpp:85
+#: prefs/QualityPrefs.cpp:122
msgid "Sampling"
-msgstr "æ£å¨éæ ·"
+msgstr "éæ ·"
-#: ../src/prefs/QualityPrefs.cpp:92
+#: prefs/QualityPrefs.cpp:125
msgid "Default Sample Rate:"
-msgstr "缺çéæ ·ç:"
+msgstr "é»è®¤éæ ·çï¼"
-#: ../src/prefs/QualityPrefs.cpp:125
+#: prefs/QualityPrefs.cpp:127
msgid "Default Sample Format:"
-msgstr "缺çéæ ·æ ¼å¼:"
+msgstr "é»è®¤éæ ·æ ¼å¼ï¼"
-#: ../src/prefs/QualityPrefs.cpp:145
-msgid "Real-time sample rate converter:"
-msgstr "宿¶éæ ·ç转æ¢å¨:"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr "宿¶è½¬æ¢"
-#: ../src/prefs/QualityPrefs.cpp:154
-msgid "High-quality sample rate converter:"
-msgstr "é«åè´¨éæ ·ç转æ¢å¨:"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+msgid "Sample Rate Converter:"
+msgstr "éæ ·ç转æ¢å¨ï¼"
-#: ../src/prefs/QualityPrefs.cpp:176
-msgid "Real-time dither:"
-msgstr "宿¶æå¨:"
+#: prefs/QualityPrefs.cpp:164
+msgid "Dither"
+msgstr "æå¨"
-#: ../src/prefs/QualityPrefs.cpp:189
-msgid "High-quality dither:"
-msgstr "é«åè´¨æå¨"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr "é«è´¨é转æ¢"
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
-msgstr ""
+#: prefs/AudioIOPrefs.cpp:150
+msgid "Overdub: &Play other tracks while recording new one"
+msgstr "éå å½å¶ï¼å¨å½å¶æ°è½¨æ¶ææ¾å
¶å®ç轨é(&P)"
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
-msgstr ""
+#: prefs/AudioIOPrefs.cpp:153
+msgid "&Hardware Playthrough: Play new track while recording it"
+msgstr "硬件éæï¼å¨å½å¶å®æ¶ææ¾æ°è½¨é(&H)"
-#: prefs/QualityPrefs.cpp:164
-msgid "Dither"
-msgstr ""
+#: prefs/AudioIOPrefs.cpp:158
+msgid "&Software Playthrough: Play new track while recording or monitoring"
+msgstr "软件éæï¼å¨å½å¶æçè§æ¶ææ¾æ°è½¨é(&S)"
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
-msgstr ""
+#: prefs/AudioIOPrefs.cpp:161
+msgid "(uncheck when recording \"stereo mix\")"
+msgstr "(å½å¶\"ç«ä½å£°æ··å\"æ¶ä¸è¦é)"
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
-msgstr ""
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
+msgstr "æ¯«ç§ (è¶é«è¡¨ç¤ºå»¶è¿è¶å¤§ï¼"
-#: prefs/SmartRecordPrefs.cpp:54 prefs/SmartRecordPrefs.cpp:55
-msgid "Smart Recording"
-msgstr ""
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
+msgstr "æ¯«ç§ (è´æ°è¡¨ç¤ºååï¼"
#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
msgid "Sound Activated Recording"
-msgstr ""
+msgstr "声é³å¯å¨å½å¶"
#: prefs/SmartRecordPrefs.cpp:71
msgid "Sound Activation Level (dB):"
-msgstr ""
+msgstr "声é³å¯å¨å£°å¼ºçº§(dB):"
-#: ../src/prefs/PrefsDialog.cpp:86
+#: prefs/SpectrumPrefs.cpp:41 prefs/SpectrumPrefs.cpp:42
msgid "Spectrograms"
msgstr "é¢è°±å¾"
-#: ../src/prefs/SpectrumPrefs.cpp:74
-msgid "FFT Size"
-msgstr "FFT(å¿«éå
ç«å¶åæ¢)çéæ ·ç¹æ°"
-
-#: ../src/prefs/SpectrumPrefs.cpp:39
+#: prefs/SpectrumPrefs.cpp:94
msgid "8 - most wideband"
msgstr "8 - æå®½å¸¦"
-#: ../src/prefs/SpectrumPrefs.cpp:44
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr "16"
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr "32"
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr "64"
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr "128"
+
+#: prefs/SpectrumPrefs.cpp:99
msgid "256 - default"
-msgstr "256 - 缺ç"
+msgstr "256 - é»è®¤"
+
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr "512"
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr "1024"
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr "2048"
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr "4096"
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr "8192"
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr "16384"
#: prefs/SpectrumPrefs.cpp:107
msgid "32768 - most narrowband"
-msgstr ""
+msgstr "32768 - æçªå¸¦"
-#: ../src/prefs/SpectrumPrefs.cpp:48
+#: prefs/SpectrumPrefs.cpp:109
msgid "4096 - most narrowband"
msgstr "4096 - æçªå¸¦"
-#: prefs/SpectrumPrefs.cpp:90
-msgid "Window type:"
-msgstr ""
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
+msgstr "FFT(å¿«éå
ç«å¶åæ¢) çªå£"
+
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
+msgstr "çªå£å¤§å°"
+
+#: prefs/SpectrumPrefs.cpp:93
+msgid "Window type"
+msgstr "çªå£ç±»å"
#: prefs/SpectrumPrefs.cpp:125
msgid "FFT Skip Points"
-msgstr ""
+msgstr "FFT(å¿«éå
ç«å¶åæ¢)è·³è¿ç¹"
-#: ../src/prefs/SpectrumPrefs.cpp:99
-msgid "Display"
-msgstr "æ¾ç¤º"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
+msgstr "è·³è¿ç¹"
-#: prefs/SpectrumPrefs.cpp:100
-msgid "&Grayscale"
-msgstr ""
-
-#: prefs/SpectrumPrefs.cpp:103
+#: prefs/SpectrumPrefs.cpp:147
msgid "Minimum Frequency (Hz):"
-msgstr ""
+msgstr "æä½é¢ç(Hz)ï¼"
-#: ../src/prefs/SpectrumPrefs.cpp:112
+#: prefs/SpectrumPrefs.cpp:152
msgid "Maximum Frequency (Hz):"
-msgstr "æé«é¢ç (Hz):"
+msgstr "æé«é¢ç (Hz)ï¼"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
-msgstr ""
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
+msgstr "ç¨ç°åº¦æ¾ç¤ºé¢è°±(&G)"
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
-msgstr ""
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
+msgstr "æ¾ç¤ºæ²¿Yè½´çç½æ ¼"
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
-msgstr ""
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
+msgstr "FFT(å¿«éå
ç«å¶åæ¢)寻æ¾é³ç¬¦"
#: prefs/SpectrumPrefs.cpp:165
msgid "Minimum Amplitude (dB):"
-msgstr ""
+msgstr "æå°æ¯å¹
(dB)ï¼"
#: prefs/SpectrumPrefs.cpp:170
msgid "Max. Number of Notes (1..128):"
-msgstr ""
+msgstr "æå¤§é³ç¬¦æ°(1..128)ï¼"
+
+#: prefs/SpectrumPrefs.cpp:161
+msgid "&Find Notes"
+msgstr "寻æ¾é³ç¬¦(&F)"
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Quantize Notes"
+msgstr "éåé³ç¬¦S(&Q)"
-#: ../src/prefs/SpectrumPrefs.cpp:158
+#: prefs/SpectrumPrefs.cpp:197
msgid "The maximum frequency must be an integer"
-msgstr "æå¤§é¢çå¼å¿
é¡»æ¯æ´æ°"
+msgstr "æé«é¢çå¼å¿
é¡»æ¯æ´æ°"
-#: ../src/prefs/SpectrumPrefs.cpp:162
+#: prefs/SpectrumPrefs.cpp:201
msgid "Maximum frequency must be in the range 100 Hz - 100,000 Hz"
-msgstr "æé«é¢çå¿
é¡»å¨ 100 Hz è³ 100,000 Hz ä¹é´"
+msgstr "æé«é¢çå¿
é¡»å¨ 100 Hz è³ 100ï¼000 Hz ä¹é´"
-#: prefs/SpectrumPrefs.cpp:146
+#: prefs/SpectrumPrefs.cpp:209
msgid "The minimum frequency must be an integer"
-msgstr ""
+msgstr "æä½é¢çå¼å¿
é¡»æ¯æ´æ°"
-#: prefs/SpectrumPrefs.cpp:150
+#: prefs/SpectrumPrefs.cpp:213
msgid "Minimum frequency must be at least 0 Hz"
-msgstr ""
+msgstr "æä½é¢çè³å°æ¯0Hz"
+
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr "æä½é¢çå¿
é¡»å°äºæé«é¢ç"
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
-msgstr ""
+msgstr "æå°æ¯å¹
(dB)å¿
é¡»æ¯æ´æ°"
-#: prefs/SpectrumPrefs.cpp:226 prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
-msgstr ""
+#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr "æå¤§é³ç¬¦æ°å¿
é¡»æ¯æ´æ°"
+
+#: prefs/SpectrumPrefs.cpp:230
+msgid "The maximum number of notes must be in the range 1..128"
+msgstr "æå¤§é³ç¬¦æ°å¿
é¡»å¨1~128ç´æ¥"
-#: prefs/ThemePrefs.cpp:61 prefs/ThemePrefs.cpp:62
+#: prefs/ThemePrefs.cpp:62 prefs/ThemePrefs.cpp:63
msgid "Theme"
+msgstr "主é¢"
+
+#: prefs/ThemePrefs.cpp:126
+msgid "Info"
+msgstr "ä¿¡æ¯"
+
+#: prefs/ThemePrefs.cpp:91
+
+msgid ""
+"Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr ""
+"䏻颿¯å®éªæ§çç¹æ§ã\n"
+"\n"
+"è¦å°è¯ä¸ä¸ï¼ç¹å»\"ä¿å主é¢ç¼å\"ï¼ç¶å\n"
+"æ¾å°å¹¶ç¨å¦Gimpä¿®æ¹\n"
+"ImageCacheVxx.pngçå¾çåé¢è²\n"
+"\n"
+"ç¹å»\"载人主é¢ç¼å\"ææ¹åè¿ç\n"
+"å¾çåé¢è²å¯¼å
¥åAudacity\n"
+"\n"
+"ï¼»ç®åä»
ææ§å¶å·¥å
·æ åæ³¢å½¢è½¨çé¢è²\n"
+"忤影åï¼å°½ç®¡å
¶å®å¾çä¹å¨imageæä»¶ä¸ãï¼½"
+
+#: prefs/ThemePrefs.cpp:96
+msgid ""
+"You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
msgstr ""
+"ä½ ç¼è¯äºæé¢å¤æé®çAudacitï¼'è¾åºæºæä»¶'.è¿ä¼ä¿åä¸ä¸ª \n"
+"è½è¢«é»è®¤ç¼è¯å
¥çå¾çç¼åçCçæ¬ã"
-#: prefs/ThemePrefs.cpp:90
-msgid "Theme Cache - Images && Color"
+#: prefs/ThemePrefs.cpp:101
+msgid ""
+"If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
msgstr ""
+"妿'å¯å¨æ¶è½½å
¥ä¸»é¢'被éä¸ï¼ é£ä¹ä¸»é¢ç¼å\n"
+"å°±ä¼å¨ç¨åºå¯å¨æ¯è¢«è½½å
¥ã"
-#: prefs/ThemePrefs.cpp:92
-msgid "Save Theme Cache"
+#: prefs/ThemePrefs.cpp:104
+msgid ""
+"Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
msgstr ""
+"ä¿ååè½½å
¥ç¬ç«çä¸»é¢æä»¶ä½¿ç¨å离çæä»¶\n"
+"ä¿åæ¯ä¸ªå¾çï¼ä½ä¹æ¯åä¸ä¸ªæ³æ³ã"
+#. i18n-hint: && in here is an escape character to get a single & on screen,
+#. * so keep it as is
#: prefs/ThemePrefs.cpp:93
+msgid "Theme Cache - Images && Color"
+msgstr "主é¢ç¼å - å¾çåé¢è²"
+
+#: prefs/ThemePrefs.cpp:95
+msgid "Save Theme Cache"
+msgstr "ä¿å主é¢ç¼å"
+
+#: prefs/ThemePrefs.cpp:96
msgid "Load Theme Cache"
-msgstr ""
+msgstr "è½½å
¥ä¸»é¢ç¼å"
-#: prefs/ThemePrefs.cpp:103
+#: prefs/ThemePrefs.cpp:106
msgid "Load Theme Cache At Startup"
-msgstr ""
+msgstr "å¯å¨æ¶è½½å
¥ä¸»é¢ç¼å"
-#: prefs/ThemePrefs.cpp:115
+#: prefs/ThemePrefs.cpp:118
msgid "Individual Theme Files"
-msgstr ""
+msgstr "ç¬ç«ç䏻颿件"
-#: prefs/ThemePrefs.cpp:117
+#: prefs/ThemePrefs.cpp:120
msgid "Save Files"
-msgstr ""
+msgstr "ä¿åæä»¶"
-#: prefs/ThemePrefs.cpp:118
+#: prefs/ThemePrefs.cpp:121
msgid "Load Files"
-msgstr ""
+msgstr "è½½å
¥æä»¶"
-#: prefs/ThemePrefs.cpp:123
-msgid "Info"
-msgstr ""
+#: prefs/GUIPrefs.cpp:50
+msgid "Simple"
+msgstr "ç®å"
-#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
-msgstr ""
+#: prefs/GUIPrefs.cpp:94
+msgid "&Update display while playing"
+msgstr "ææ¾æ¶æ´æ°æ¾ç¤º(%U)"
-#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
-msgstr ""
+#: prefs/GUIPrefs.cpp:102
+msgid "Automatically &fit tracks vertically zoomed"
+msgstr "èªå¨éåºåç´ç¼©æ¾ç轨é(&F)"
-#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
-msgstr ""
+#: prefs/TracksPrefs.cpp:88
+msgid "Default View Mode:"
+msgstr "é»è®¤è§å¾æ¨¡å¼ï¼"
-#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
-msgstr ""
+#: prefs/GUIPrefs.cpp:108
+msgid "&Select all audio in project, if none selected"
+msgstr "å¦ææ²¡æéä¸é³é¢æ¶éæ©å·¥ç¨ä¸ææçé³é¢(&S)"
-#: ../src/ControlToolBar.cpp:519
-#: ../src/ControlToolBar.cpp:528
-msgid "Pause"
-msgstr "æå"
+#: prefs/GUIPrefs.cpp:116
+msgid "Enable cut &lines"
+msgstr "å¼å¯'åªå线'(&L)"
-#: ../src/ControlToolBar.cpp:516
-msgid "Play"
-msgstr "ææ¾"
+#: prefs/GUIPrefs.cpp:98
+msgid "Enable &dragging of left and right selection edges"
+msgstr "å
许æå¨é段çå·¦å³è¾¹(&D)"
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
-msgstr ""
+#: prefs/GUIPrefs.cpp:104
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+msgstr "\"ç§»å¨è½¨éç¦ç¹\"å¨è½¨éé´å¾ªç¯(&Y)"
+
+#: prefs/GUIPrefs.cpp:106
+msgid "Editing a &clip can move other clips"
+msgstr "ç¼è¯ä¸ä¸ªç段ä¼ç§»å¨å
¶å®ç段(&C)"
+
+#: prefs/GUIPrefs.cpp:168
+msgid "Solo Button:"
+msgstr "ç¬å¥æé®ï¼"
+
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
+msgstr "è¦å"
+
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr "æ¾ç¤ºè¦åï¼æç¤º"
+
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr "å½ä¿åå·¥ç¨æ¶(&P)"
+
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr "å½ä¿åç©ºå·¥ç¨æ¶(&E)"
+
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr "å½ç£ç空é´å¾ä½æ¶(&D)"
+
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr "å½å¯¼åºæ¶æ··é³å°ç«ä½å£°æ¶(&S)"
+
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
+msgstr "å½å¯¼åºæ¶æ··é³å°å声æ¶(&S)"
-#: ../src/ControlToolBar.cpp:520
-#: ../src/ControlToolBar.cpp:529
+#: Menus.cpp:999
+msgid "Pause"
+msgstr "æå"
+
+#: Menus.cpp:998
msgid "Stop"
msgstr "忢"
-#: ../src/ControlToolBar.cpp:524
-msgid "Skip to Start"
-msgstr "è·³è³å¼å§ä½ç½®"
+#: toolbars/ControlToolBar.cpp:195
+msgid "Clean Speech"
+msgstr "æ¸
æ°è¯é³"
-#: ../src/ControlToolBar.cpp:530
-msgid "Skip to End"
-msgstr "è·³è³ç»æä½ç½®"
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play (Shift for Loop Play)"
+msgstr "ææ¾ (Shifté®å¾ªç¯ææ¾)"
#: toolbars/ControlToolBar.cpp:192
msgid "Record (Shift for Append Record)"
-msgstr ""
+msgstr "å½å¶(Shifté®è¿½å å½å¶)"
-#: ../src/ControlToolBar.cpp:517
-#: ../src/ControlToolBar.cpp:527
-msgid "Clean Speech"
-msgstr "æ¸
æ°è¯é³"
-
-#: toolbars/ControlToolBar.cpp:524 toolbars/ControlToolBar.cpp:776
+#: toolbars/ControlToolBar.cpp:540 toolbars/ControlToolBar.cpp:869
msgid "Error while opening sound device. "
-msgstr ""
+msgstr "æå¼å£°é³è®¾å¤æ¶å¨åã"
-#: toolbars/ControlToolBar.cpp:696
+#: toolbars/ControlToolBar.cpp:706
msgid "Recording in CleanSpeech mode is not possible when a track, or more than one project, is already open."
-msgstr ""
+msgstr "å½è½¨éæå¤ä¸ªå·¥ç¨æå¼æ¶ï¼ä¸è½ä»¥æ¸
æ°è¯é³æ¨¡å¼å½å¶ã"
-#: ../src/ControlToolBar.cpp:884
+#: toolbars/ControlToolBar.cpp:707
msgid "Recording not permitted"
-msgstr "ä¸å
许å½é³"
+msgstr "ä¸å
许å½å¶"
#: toolbars/DeviceToolBar.cpp:113 toolbars/DeviceToolBar.cpp:115
msgid "Output Device"
-msgstr ""
+msgstr "è¾åºè®¾å¤"
#: toolbars/DeviceToolBar.cpp:134 toolbars/DeviceToolBar.cpp:136
msgid "Input Device"
-msgstr ""
+msgstr "è¾å
¥è®¾å¤"
-#: ../src/EditToolBar.cpp:152
+#: toolbars/EditToolBar.cpp:139
msgid "Trim outside selection"
msgstr "ä¿®åªééæ®µé¨å"
-#: ../src/EditToolBar.cpp:154
+#: toolbars/EditToolBar.cpp:141
msgid "Silence selection"
msgstr "éé³é段"
#: toolbars/EditToolBar.cpp:150
msgid "Link Tracks"
-msgstr ""
+msgstr "龿¥è½¨é"
-#: ../src/EditToolBar.cpp:162
+#: toolbars/EditToolBar.cpp:155
msgid "Zoom In"
msgstr "æ¾å¤§"
-#: ../src/EditToolBar.cpp:164
+#: toolbars/EditToolBar.cpp:157
msgid "Zoom Out"
msgstr "缩å°"
-#: ../src/EditToolBar.cpp:168
-msgid "Zoom Toggle"
-msgstr "缩æ¾åæ¢"
-
-#: ../src/EditToolBar.cpp:172
-msgid "Fit Selection"
-msgstr "éåºé段"
-
-#: ../src/EditToolBar.cpp:172
+#: toolbars/EditToolBar.cpp:165
msgid "Fit selection in window"
msgstr "éæ®µå¡«å
çªå£æ¾ç¤º"
-#: ../src/EditToolBar.cpp:174
-msgid "Fit Project"
-msgstr "éåºå·¥ç¨"
-
-#: ../src/EditToolBar.cpp:174
+#: toolbars/EditToolBar.cpp:167
msgid "Fit project in window"
msgstr "å·¥ç¨å¡«å
çªå£æ¾ç¤º"
-#: ../src/MeterToolBar.cpp:54
-msgid "Meter"
-msgstr "仪表æç¤º"
+#: toolbars/EditToolBar.cpp:165
+msgid "Fit Selection"
+msgstr "éåºé段"
-#: toolbars/MeterToolBar.cpp:79
-msgid "Play Meter"
-msgstr ""
+#: toolbars/EditToolBar.cpp:167
+msgid "Fit Project"
+msgstr "éåºå·¥ç¨"
#: toolbars/MeterToolBar.cpp:80
+msgid "Play Meter"
+msgstr "ææ¾æç¤º"
+
+#: toolbars/MeterToolBar.cpp:81
msgid "Meter-Play"
-msgstr ""
+msgstr "æç¤º-ææ¾"
-#: toolbars/MeterToolBar.cpp:88
+#: toolbars/MeterToolBar.cpp:89
msgid "Record Meter"
-msgstr ""
+msgstr "å½å¶æç¤º"
-#: toolbars/MeterToolBar.cpp:89
+#: toolbars/MeterToolBar.cpp:90
msgid "Meter-Record"
-msgstr ""
+msgstr "æç¤º-å½å¶"
-#: ../src/MeterToolBar.cpp:67
+#: toolbars/MeterToolBar.cpp:94
msgid "Output level meter"
msgstr "è¾åºé³éæç¤º"
-#: ../src/MeterToolBar.cpp:68
+#: toolbars/MeterToolBar.cpp:95
msgid "Input level meter - click to monitor input"
msgstr "è¾å
¥é³éæç¤º - ç¹å»çè§è¾å
¥"
-#: ../src/MixerToolBar.cpp:136
+#: toolbars/MixerToolBar.cpp:90
msgid "Output Volume"
msgstr "è¾åºé³é"
#: toolbars/MixerToolBar.cpp:92
msgid "Slider Output"
-msgstr ""
+msgstr "è¾åºæ»å¨"
-#: ../src/MixerToolBar.cpp:139
+#: toolbars/MixerToolBar.cpp:101 widgets/Meter.cpp:870
msgid "Input Volume"
msgstr "è¾å
¥é³é"
#: toolbars/MixerToolBar.cpp:103
msgid "Slider Input"
-msgstr ""
+msgstr "è¾å
¥æ»å¨"
-#: toolbars/MixerToolBar.cpp:119
+#: toolbars/MixerToolBar.cpp:134
msgid "Input Source"
-msgstr ""
+msgstr "è¾å
¥æº"
+
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr "ä¸è½æä¾è¾å
¥æºä¿¡æ¯ã"
-#: toolbars/SelectionBar.cpp:75
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr "éæ©è¾å
¥æº"
+
+#: toolbars/SelectionBar.cpp:86
msgid "Selection"
-msgstr ""
+msgstr "éæ®µ"
-#: ../src/SelectionBar.cpp:87
+#: toolbars/SelectionBar.cpp:135 toolbars/SelectionBar.cpp:194
msgid "Project Rate (Hz):"
-msgstr "å·¥ç¨éæ ·ç (Hz):"
+msgstr "å·¥ç¨éæ ·ç (Hz)ï¼"
-#: ../src/SelectionBar.cpp:92
+#: toolbars/SelectionBar.cpp:149 toolbars/SelectionBar.cpp:255
msgid "Selection Start:"
-msgstr "éæ®µçèµ·ç¹:"
+msgstr "éæ®µçèµ·ç¹ï¼"
-#: effects/ToneGen.cpp:300 effects/ToneGen.cpp:338
-#: toolbars/SelectionBar.cpp:135 toolbars/SelectionBar.cpp:225
+#: toolbars/SelectionBar.cpp:163 toolbars/SelectionBar.cpp:164
+#: toolbars/SelectionBar.cpp:261
msgid "Length"
-msgstr ""
+msgstr "é¿åº¦"
-#: toolbars/SelectionBar.cpp:145
+#: toolbars/SelectionBar.cpp:174
msgid "hidden"
-msgstr ""
+msgstr "éè"
-#: ../src/SelectionBar.cpp:115
+#: toolbars/SelectionBar.cpp:184 toolbars/SelectionBar.cpp:272
msgid "Audio Position:"
-msgstr "é³é¢ä½ç½®:"
+msgstr "é³é¢ä½ç½®ï¼"
-#: toolbars/SelectionBar.cpp:217 toolbars/SelectionBar.cpp:222
+#: toolbars/SelectionBar.cpp:236 toolbars/SelectionBar.cpp:241
msgid "Snap To"
-msgstr ""
+msgstr "å¸éå°"
-#: toolbars/SelectionBar.cpp:224
+#: toolbars/SelectionBar.cpp:260
msgid "Selection "
-msgstr ""
+msgstr "éæ®µ"
-#: toolbars/SelectionBar.cpp:289
+#: toolbars/SelectionBar.cpp:325
msgid "Selection Length"
-msgstr ""
+msgstr "éæ®µé¿åº¦"
-#: toolbars/SelectionBar.cpp:297
+#: toolbars/SelectionBar.cpp:333
msgid "Selection End"
-msgstr ""
+msgstr "éæ®µç»æ"
-#: toolbars/ToolBar.cpp:96
+#: toolbars/ToolBar.cpp:98
#, c-format
msgid "Audacity %s ToolBar"
-msgstr ""
+msgstr "Audacity %så·¥å
·æ "
#: toolbars/ToolDock.cpp:74 toolbars/ToolDock.cpp:75
msgid "ToolDock"
-msgstr ""
+msgstr "å·¥å
·åé "
-#: ../src/ControlToolBar.cpp:77
+#: toolbars/ToolsToolBar.cpp:63
msgid "Click and drag to select audio"
msgstr "åå»å¹¶æå¨éæ©é³é¢"
-#: ../src/ControlToolBar.cpp:78
+#: toolbars/ToolsToolBar.cpp:64
msgid "Click and drag to edit the amplitude envelope"
msgstr "åå»å¹¶æå¨ç¼è¾æ¯å¹
å
ç»çº¿"
-#: ../src/ControlToolBar.cpp:79
+#: toolbars/ToolsToolBar.cpp:65
msgid "Click and drag to edit the samples"
msgstr "åå»å¹¶æå¨ç¼è¾éæ ·"
-#: ../src/ControlToolBar.cpp:81
+#: toolbars/ToolsToolBar.cpp:67
msgid "Click to Zoom In, Shift-Click to Zoom Out"
msgstr "å廿¾å¤§ï¼æä½Shifté®åå»ç¼©å°"
-#: ../src/ControlToolBar.cpp:83
+#: toolbars/ToolsToolBar.cpp:69
msgid "Drag to Zoom Into Region, Right-Click to Zoom Out"
msgstr "æå
¥æ¾å¤§åºåï¼å³å»ç¼©å°"
-#: ../src/ControlToolBar.cpp:85
+#: toolbars/ToolsToolBar.cpp:71
msgid "Left=Zoom In, Right=Zoom Out, Middle=Normal"
-msgstr "é¼ æ å·¦é®=æ¾å¤§, å³é®=缩å°, ä¸é®=æ£å¸¸"
+msgstr "é¼ æ å·¦é®=æ¾å¤§ï¼ å³é®=缩å°ï¼ ä¸é®=æ£å¸¸"
-#: ../src/ControlToolBar.cpp:87
+#: toolbars/ToolsToolBar.cpp:73
msgid "Click and drag to move a track in time"
msgstr "åå»å¹¶æå¨å¨æ¶é´èå´å
ç轨é"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr ""
-
-#: ../src/ControlToolBar.cpp:363
-msgid "Selection Tool"
-msgstr "鿩工å
·"
-
-#: ../src/ControlToolBar.cpp:364
-msgid "Envelope Tool"
-msgstr "å
ç»çº¿å·¥å
·"
-
-#: ../src/ControlToolBar.cpp:365
-msgid "Time Shift Tool"
-msgstr "æ¶é´ç§»å¨å·¥å
·"
-
-#: ../src/ControlToolBar.cpp:366
-msgid "Zoom Tool"
-msgstr "缩æ¾å·¥å
·"
-
-#: ../src/ControlToolBar.cpp:367
-msgid "Draw Tool"
-msgstr "ç»å¾å·¥å
·"
-
-#: ../src/ControlToolBar.cpp:368
+#: toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
-msgstr "å¤éå·¥å
·(Multi-Tool)模å¼"
+msgstr "å¤åè½å·¥å
·(Multi-Tool)模å¼"
#: toolbars/ToolsToolBar.cpp:186
msgid "Slide Tool"
-msgstr ""
-
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr ""
-
-#: ../src/TranscriptionToolBar.cpp:110
-msgid "Transcription"
-msgstr "å½é³è®°å½"
+msgstr "æ»å¨å·¥å
·"
-#: ../src/TranscriptionToolBar.cpp:207
+#: toolbars/TranscriptionToolBar.cpp:171
msgid "Play at selected speed"
msgstr "以éå®çéåº¦ææ¾"
-#: ../src/TranscriptionToolBar.cpp:208
-msgid "Play-at-speed"
-msgstr "æå®æ°åº¦ææ¾"
-
-#: ../src/TranscriptionToolBar.cpp:212
-#: ../src/TranscriptionToolBar.cpp:216
+#: toolbars/TranscriptionToolBar.cpp:178 toolbars/TranscriptionToolBar.cpp:183
msgid "Playback Speed"
msgstr "éæ¾é度"
-#: toolbars/TranscriptionToolBar.cpp:200
-#, fuzzy
+#: toolbars/TranscriptionToolBar.cpp:196
msgid "Adjust left selection to next onset"
-msgstr "è°æ´å·¦é段è³ä¸ä¸ä¸ªé³åèµ·ç¹(onset)"
+msgstr "è°æ´å·¦é段è³ä¸ä¸ä¸ªå£°é³èµ·ç¹"
-#: ../src/TranscriptionToolBar.cpp:222
-msgid "Left-to-On"
-msgstr "åå·¦-æå¼"
-
-#: ../src/TranscriptionToolBar.cpp:224
-#, fuzzy
+#: toolbars/TranscriptionToolBar.cpp:199
msgid "Adjust right selection to previous offset"
-msgstr "è°æ´å³é段è³ä¸ä¸ä¸ªé³åç»ç¹(offset)"
+msgstr "è°æ´å³é段è³ä¸ä¸ä¸ªå£°é³ç»ç¹"
-#: ../src/TranscriptionToolBar.cpp:225
-msgid "Right-to-Off"
-msgstr "åå³-å
³é"
-
-#: ../src/TranscriptionToolBar.cpp:227
-#, fuzzy
+#: toolbars/TranscriptionToolBar.cpp:202
msgid "Adjust left selection to next offset"
-msgstr "è°æ´å·¦é段è³ä¸ä¸ä¸ªé³åç»ç¹(offset)"
+msgstr "è°æ´å·¦é段è³ä¸ä¸ä¸ªå£°é³ç»ç¹"
-#: ../src/TranscriptionToolBar.cpp:228
-msgid "Left-to-Off"
-msgstr "åå·¦-å
³é"
-
-#: ../src/TranscriptionToolBar.cpp:230
-#, fuzzy
+#: toolbars/TranscriptionToolBar.cpp:205
msgid "Adjust right selection to previous onset"
-msgstr "è°æ´å³é段è³ä¸ä¸ä¸ªé³åèµ·ç¹(onset)"
+msgstr "è°æ´å³é段è³ä¸ä¸ä¸ªå£°é³èµ·ç¹"
-#: ../src/TranscriptionToolBar.cpp:231
-msgid "Right-to-On"
-msgstr "åå³-æå¼"
-
-#: ../src/TranscriptionToolBar.cpp:234
+#: toolbars/TranscriptionToolBar.cpp:208
msgid "Select region of sound around cursor"
-msgstr "éæ©æ¸¸æ éè¿çé³é¢åºå"
+msgstr "éæ©å
æ éè¿çé³é¢åºå"
-#: ../src/TranscriptionToolBar.cpp:235
-msgid "Select-Sound"
-msgstr "鿩声é³"
-
-#: ../src/TranscriptionToolBar.cpp:238
+#: toolbars/TranscriptionToolBar.cpp:211
msgid "Select region of silence around cursor"
-msgstr "éæ©æ¸¸æ éè¿çéé³åºå"
-
-#: ../src/TranscriptionToolBar.cpp:239
-msgid "Select-Silence"
-msgstr "éæ©éé³"
+msgstr "éæ©å
æ éè¿çéé³åºå"
-#: ../src/TranscriptionToolBar.cpp:242
-#, fuzzy
+#: toolbars/TranscriptionToolBar.cpp:214
msgid "Automatically make labels from words"
msgstr "èªå¨ä»åè¯çææ ç¾"
-#: ../src/TranscriptionToolBar.cpp:243
-msgid "Make Labels"
-msgstr "å¶ä½æ ç¾"
-
-#: ../src/TranscriptionToolBar.cpp:245
+#: toolbars/TranscriptionToolBar.cpp:217
msgid "Add label at selection"
msgstr "ç»é³é¢é段å 䏿 ç¾"
-#: ../src/TranscriptionToolBar.cpp:246
-msgid "Add Label"
-msgstr "å¢å æ ç¾"
-
-#: ../src/TranscriptionToolBar.cpp:249
+#: toolbars/TranscriptionToolBar.cpp:220
msgid "Calibrate voicekey"
msgstr "æ ¡åè¯é³åºè°"
-#: ../src/TranscriptionToolBar.cpp:250
-msgid "Calibrate"
-msgstr "æ ¡å"
-
-#: ../src/TranscriptionToolBar.cpp:252
+#: toolbars/TranscriptionToolBar.cpp:225
msgid "Adjust Sensitivity"
msgstr "è°æ´ææåº¦"
-#: ../src/TranscriptionToolBar.cpp:255
+#: toolbars/TranscriptionToolBar.cpp:230
msgid "Sensitivity"
msgstr "ææåº¦"
-#: ../src/TranscriptionToolBar.cpp:263
-#, fuzzy
+#: toolbars/TranscriptionToolBar.cpp:235
msgid "Energy"
msgstr "è½é"
-#: ../src/TranscriptionToolBar.cpp:264
-#, fuzzy
+#: toolbars/TranscriptionToolBar.cpp:236
msgid "Sign Changes (Low Threshold)"
-msgstr "æ¹åææ§ (ä½éå¼)"
+msgstr "æ¹åç¬¦å· (ä½éå¼)"
-#: ../src/TranscriptionToolBar.cpp:265
-#, fuzzy
+#: toolbars/TranscriptionToolBar.cpp:237
msgid "Sign Changes (High Threshold)"
-msgstr "æ¹åææ§ (é«éå¼)"
+msgstr "æ¹å符å (é«éå¼)"
-#: ../src/TranscriptionToolBar.cpp:266
-#, fuzzy
+#: toolbars/TranscriptionToolBar.cpp:238
msgid "Direction Changes (Low Threshold)"
msgstr "æ¹åæ¹å (ä½éå¼)"
-#: ../src/TranscriptionToolBar.cpp:267
-#, fuzzy
+#: toolbars/TranscriptionToolBar.cpp:239
msgid "Direction Changes (High Threshold)"
msgstr "æ¹åæ¹å (é«éå¼)"
-#: toolbars/TranscriptionToolBar.cpp:251
+#: toolbars/TranscriptionToolBar.cpp:247
msgid "Key type"
-msgstr ""
+msgstr "é®ç±»å"
+
+#: toolbars/TranscriptionToolBar.cpp:172
+msgid "Play-at-speed"
+msgstr "以æå®éåº¦ææ¾"
+
+#: toolbars/TranscriptionToolBar.cpp:197
+msgid "Left-to-On"
+msgstr "åå·¦-æå¼"
+
+#: toolbars/TranscriptionToolBar.cpp:200
+msgid "Right-to-Off"
+msgstr "åå³-å
³é"
+
+#: toolbars/TranscriptionToolBar.cpp:203
+msgid "Left-to-Off"
+msgstr "åå·¦-å
³é"
-#: ../src/widgets/AButton.cpp:181
+#: toolbars/TranscriptionToolBar.cpp:206
+msgid "Right-to-On"
+msgstr "åå³-æå¼"
+
+#: toolbars/TranscriptionToolBar.cpp:209
+msgid "Select-Sound"
+msgstr "鿩声é³"
+
+#: toolbars/TranscriptionToolBar.cpp:212
+msgid "Select-Silence"
+msgstr "éæ©éé³"
+
+#: toolbars/TranscriptionToolBar.cpp:215
+msgid "Make Labels"
+msgstr "å¶ä½æ ç¾"
+
+#: toolbars/TranscriptionToolBar.cpp:218
+msgid "Add Label"
+msgstr "å¢å æ ç¾"
+
+#: toolbars/TranscriptionToolBar.cpp:221
+msgid "Calibrate"
+msgstr "æ ¡å"
+
+#: widgets/AButton.cpp:303
msgid " (disabled)"
msgstr "(æ æ)"
-#: widgets/AButton.cpp:443
+#: widgets/AButton.cpp:461
msgid "Press"
-msgstr ""
+msgstr "æ"
-#: widgets/AButton.cpp:522
+#: widgets/AButton.cpp:540
msgid "Button"
-msgstr ""
+msgstr "æé®"
+#. i18n-hint: One-letter abbreviation for Left, in VU Meter
#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
-#: ../src/widgets/ASlider.cpp:444
-#: ../src/widgets/Meter.cpp:187
+#: widgets/ASlider.cpp:612 widgets/Meter.cpp:248
msgid "L"
msgstr "å·¦"
+#. i18n-hint: One-letter abbreviation for Right, in VU Meter
#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
-#: ../src/widgets/ASlider.cpp:447
-#: ../src/widgets/Meter.cpp:189
+#: widgets/ASlider.cpp:615 widgets/Meter.cpp:250
msgid "R"
msgstr "å³"
-#: ../src/widgets/ASlider.cpp:600
+#: widgets/ASlider.cpp:678
msgid "Center"
msgstr "ä¸å¤®"
-#: ../src/widgets/ASlider.cpp:604
+#: widgets/ASlider.cpp:682
msgid "Left"
msgstr "å·¦"
-#: ../src/widgets/ASlider.cpp:607
+#: widgets/ASlider.cpp:685
msgid "Right"
msgstr "å³"
-#: widgets/ErrorDialog.cpp:73 widgets/ErrorDialog.cpp:97
+#: widgets/ErrorDialog.cpp:98
msgid "Help"
-msgstr ""
+msgstr "帮å©"
#: widgets/ErrorDialog.cpp:137
msgid "<"
-msgstr ""
+msgstr "<"
#: widgets/ErrorDialog.cpp:138
msgid ">"
-msgstr ""
+msgstr ">"
#: widgets/ErrorDialog.cpp:142
msgid "Forwards"
-msgstr ""
+msgstr "åè¿"
#: widgets/ErrorDialog.cpp:143
msgid "Backwards"
-msgstr ""
+msgstr "åé"
-#: widgets/ErrorDialog.cpp:190
+#: widgets/ErrorDialog.cpp:255
msgid "Help on the Internet"
-msgstr ""
+msgstr "äºèç½ä¸ç帮å©"
-#: widgets/Grabber.cpp:61
+#: widgets/Grabber.cpp:62
msgid "Grabber"
-msgstr ""
+msgstr "è·åå¨"
-#: widgets/Grid.cpp:616
+#: widgets/Grid.cpp:708
#, c-format
msgid "%d rows, %d columns"
-msgstr ""
+msgstr "%d è¡, %d æ "
-#: widgets/Grid.cpp:622 widgets/Grid.cpp:749
+#: widgets/Grid.cpp:714 widgets/Grid.cpp:841
#, c-format
msgid "Row %d"
-msgstr ""
+msgstr "%dè¡"
-#: widgets/Grid.cpp:764
+#: widgets/Grid.cpp:856
msgid "Empty"
-msgstr ""
+msgstr "空"
-#: ../src/widgets/Meter.cpp:323
+#: widgets/Meter.cpp:392
msgid "Enable Meter"
-msgstr "å¯ç¨ä»ªè¡¨æç¤º"
+msgstr "å¯ç¨æç¤ºè¡¨"
-#: ../src/widgets/Meter.cpp:325
+#: widgets/Meter.cpp:394
msgid "Disable Meter"
-msgstr "ç¦ç¨ä»ªè¡¨æç¤º"
+msgstr "ç¦ç¨æç¤ºè¡¨"
-#: ../src/widgets/Meter.cpp:328
+#: widgets/Meter.cpp:397
msgid "Stop Monitoring"
msgstr "忢çè§"
-#: ../src/widgets/Meter.cpp:330
+#: widgets/Meter.cpp:399
msgid "Start Monitoring"
msgstr "å¼å§çè§"
-#: ../src/widgets/Meter.cpp:334
+#: widgets/Meter.cpp:403
msgid "Horizontal Stereo"
msgstr "æ°´å¹³ç«ä½å£°"
-#: ../src/widgets/Meter.cpp:335
+#: widgets/Meter.cpp:404
msgid "Vertical Stereo"
msgstr "åç´ç«ä½å£°"
-#: ../src/widgets/Meter.cpp:352
+#: widgets/Meter.cpp:421
msgid "Preferences..."
-msgstr "åæ°è®¾å®..."
+msgstr "å好é项..."
-#: widgets/Meter.cpp:876
+#: widgets/Meter.cpp:872
msgid "Mix Volume"
-msgstr ""
+msgstr "æ··åé³é"
-#: ../src/widgets/Meter.cpp:1043
-msgid "This determines how often the meter is refreshed.\n"
+#: widgets/Meter.cpp:1141
+msgid ""
+"This determines how often the meter is refreshed.\n"
"If you have a slower PC you may want to select a\n"
"lower refresh rate (30 per second or lower), so that\n"
"audio qualtiy is not affected by the meter display."
-msgstr "è¿å³å®äºä»ªè¡¨æç¤ºçå·æ°é¢çã\n"
+msgstr ""
+"è¿å³å®äºæç¤ºè¡¨çå·æ°é¢çã\n"
"妿æ¨ççµèé
ç½®è¾ä½ï¼æ¨å¯ä»¥éæ©\n"
"æ¯è¾ä½çå·æ°ç(æ¯ç§30æ¬¡ææ´ä½)ï¼\n"
"以å
å½±åé³é¢è´¨éã"
-#: ../src/widgets/Meter.cpp:1044
+#: widgets/Meter.cpp:1142
msgid "Meter refresh rate per second [1-100]: "
-msgstr "仪表æç¤ºçæ¯ç§å·æ°ç [1-100]:"
+msgstr "æç¤ºè¡¨çæ¯ç§å·æ°ç [1-100]ï¼"
-#: widgets/Meter.cpp:1063
+#: widgets/Meter.cpp:1143
msgid "Meter Preferences"
-msgstr ""
+msgstr "æç¤ºè¡¨å好é项"
#: widgets/MultiDialog.cpp:82
msgid " Please select an action "
-msgstr ""
+msgstr "è¯·éæ©ä¸ä¸ªå¨ä½"
#: widgets/MultiDialog.cpp:86
msgid "Please select an action"
-msgstr ""
+msgstr "è¯·éæ©ä¸ä¸ªå¨ä½"
-#: widgets/ProgressDialog.cpp:97
+#: widgets/ProgressDialog.cpp:1058
msgid "Elapsed Time:"
-msgstr ""
+msgstr "å·²ç¨æ¶é´ï¼"
-#: widgets/ProgressDialog.cpp:117
+#: widgets/ProgressDialog.cpp:1078
msgid "Remaining Time:"
-msgstr ""
+msgstr "å©ä½æ¶é´ï¼"
-#: widgets/ProgressDialog.cpp:134
+#: widgets/ProgressDialog.cpp:1095
msgid "Cancel"
-msgstr ""
+msgstr "åæ¶"
-#: widgets/Ruler.cpp:1110 widgets/Ruler.cpp:1111
+#: widgets/Ruler.cpp:1316 widgets/Ruler.cpp:1317
msgid "Vertical Ruler"
-msgstr ""
+msgstr "æ°´å¹³æ å°º"
-#: widgets/TimeTextCtrl.cpp:198
+#. i18n-hint: Format string for displaying time in seconds. Change the comma
+#. * in the middle to the 1000s separator for your locale, and the 'seconds'
+#. * on the end to the word for seconds. Don't change the numbers.
+#: widgets/TimeTextCtrl.cpp:267
msgid "01000,01000 seconds"
-msgstr ""
-
-#: widgets/TimeTextCtrl.cpp:200
+msgstr "01000,01000 ç§"
+
+#. i18n-hint: Format string for displaying time in hours, minutes and
+#. * seconds. Change the 'h' to the abbreviation for hours, 'm' to the
+#. * abbreviation for minutes and 's' to the abbreviation for seconds. Don't
+#. * change the numbers unless there aren't 60 seconds in a minute in your
+#. * locale
+#: widgets/TimeTextCtrl.cpp:276
msgid "0100 h 060 m 060 s"
-msgstr ""
+msgstr "0100 æ¶ 060 å 060 ç§"
-#: widgets/TimeTextCtrl.cpp:201
+#. i18n-hint: Name of time display format that shows time in days, hours,
+#. * minutes and seconds
+#: widgets/TimeTextCtrl.cpp:279
msgid "dd:hh:mm:ss"
-msgstr ""
-
-#: widgets/TimeTextCtrl.cpp:202
+msgstr "æ¥:æ¶:å:ç§"
+
+#. i18n-hint: Format string for displaying time in days, hours, minutes and
+#. * seconds. Change the 'days' to the word for days, 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes and 's' to the
+#. * abbreviation for seconds. Don't change the numbers unless there aren't
+#. * 24 hours in a day in your locale
+#: widgets/TimeTextCtrl.cpp:285
msgid "0100 days 024 h 060 m 060 s"
-msgstr ""
+msgstr "0100 æ¥ 024 æ¶ 060 å 060 ç§"
#. i18n-hint: Name of time display format that shows time in hours,
#. * minutes, seconds and hundreths of a second (1/100 second)
#: widgets/TimeTextCtrl.cpp:288
msgid "hh:mm:ss + hundredths"
-msgstr ""
+msgstr "æ¶ï¼åï¼ç§ + ç¾åä¹ä¸ç§"
#. i18n-hint: Format string for displaying time in hours, minutes, seconds
#. * and hundredths of a second. Change the 'h' to the abbreviation for hours,
@@ -8711,128 +9292,211 @@ msgstr ""
#. * unless there aren't 60 minutes in an hour in your locale
#: widgets/TimeTextCtrl.cpp:294
msgid "0100 h 060 m 060.0100 s"
-msgstr ""
+msgstr "0100 æ¶ 060 å 060.0100 ç§"
-#: ../src/widgets/TimeTextCtrl.cpp:153
+#. i18n-hint: Name of time display format that shows time in hours,
+#. * minutes, seconds and milliseconds (1/1000 second)
+#: widgets/TimeTextCtrl.cpp:297
msgid "hh:mm:ss + milliseconds"
-msgstr "æ¶:å:ç§ + 毫ç§"
+msgstr "æ¶ï¼åï¼ç§ + 毫ç§"
-#: widgets/TimeTextCtrl.cpp:204
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and milliseconds. Change the 'h' to the abbreviation for hours, 'm' to the
+#. * abbreviation for minutes and 's' to the abbreviation for seconds (the
+#. * milliseconds are shown as decimal seconds) . Don't change the numbers
+#. * unless there aren't 60 minutes in an hour in your locale
+#: widgets/TimeTextCtrl.cpp:303
msgid "0100 h 060 m 060.01000 s"
-msgstr ""
+msgstr "0100 æ¶ 060 å 060.01000 ç§"
-#: ../src/widgets/TimeTextCtrl.cpp:155
+#. i18n-hint: Name of time display format that shows time in hours,
+#. * minutes, seconds and samples (at the current project sample rate)
+#: widgets/TimeTextCtrl.cpp:306
msgid "hh:mm:ss + samples"
-msgstr "æ¶:å:ç§ + éæ ·ç¹"
+msgstr "æ¶ï¼åï¼ç§ + éæ ·ç¹"
-#: widgets/TimeTextCtrl.cpp:206
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and samples. Change the 'h' to the abbreviation for hours, 'm' to the
+#. * abbreviation for minutes, 's' to the abbreviation for seconds and
+#. * translate samples . Don't change the numbers
+#. * unless there aren't 60 seconds in a minute in your locale
+#: widgets/TimeTextCtrl.cpp:312
msgid "0100 h 060 m 060 s+.# samples"
-msgstr ""
+msgstr "0100 æ¶ 060 å 060 ç§+.# éæ ·"
-#: ../src/widgets/TimeTextCtrl.cpp:163
+#. i18n-hint: Name of time display format that shows time in samples (at the
+#. * current project sample rate)
+#: widgets/TimeTextCtrl.cpp:315
msgid "samples"
msgstr "éæ ·"
-#: widgets/TimeTextCtrl.cpp:208
+#. i18n-hint: Format string for displaying time in samples (lots of samples).
+#. * Change the ',' to the 1000s separator for your locale, and translate
+#. * samples. If 1000s aren't a base multiple for your number system, then you
+#. * can change the numbers to an appropriate one, and put a 0 on the front
+#: widgets/TimeTextCtrl.cpp:320
msgid "01000,01000,01000 samples|#"
-msgstr ""
+msgstr "01000,01000,01000 æ ·æ¬|#"
-#: ../src/widgets/TimeTextCtrl.cpp:157
+#. i18n-hint: Name of time display format that shows time in hours, minutes,
+#. * seconds and frames at 24 frames per second (commonly used for films)
+#: widgets/TimeTextCtrl.cpp:323
msgid "hh:mm:ss + film frames (24 fps)"
-msgstr "æ¶:å:ç§ + çµå½±å¸§ (24 fps)"
+msgstr "æ¶ï¼åï¼ç§ + çµå½±å¸§ (24 fps)"
-#: widgets/TimeTextCtrl.cpp:210
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and frames at 24 frames per second. Change the 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
+#. * for seconds and translate 'frames' . Don't change the numbers
+#. * unless there aren't 60 seconds in a minute in your locale
+#: widgets/TimeTextCtrl.cpp:329
msgid "0100 h 060 m 060 s+.24 frames"
-msgstr ""
+msgstr "0100 æ¶ 060 å 060 ç§+.24 帧"
-#: widgets/TimeTextCtrl.cpp:211
+#. i18n-hint: Name of time display format that shows time in frames (lots of
+#. * frames) at 24 frames per second (commonly used for films)
+#: widgets/TimeTextCtrl.cpp:332
msgid "film frames (24 fps)"
-msgstr ""
+msgstr "çµå½±å¸§ (24 fps)"
-#: widgets/TimeTextCtrl.cpp:212
+#. i18n-hint: Format string for displaying time in frames at 24 frames per
+#. * second. Translate 'frames' and leave the rest alone
+#: widgets/TimeTextCtrl.cpp:335
msgid "01000,01000 frames|24"
-msgstr ""
+msgstr "01000,01000 帧|24"
-#: widgets/TimeTextCtrl.cpp:213
+#. i18n-hint: Name of time display format that shows time in hours, minutes,
+#. * seconds and frames at NTSC TV drop-frame rate (used for American /
+#. * Japananese TV, and very odd)
+#: widgets/TimeTextCtrl.cpp:339
msgid "hh:mm:ss + NTSC drop frames"
-msgstr ""
+msgstr "æ¶:å:ç§ + NTSC 丢帧"
-#: widgets/TimeTextCtrl.cpp:214
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and frames with NTSC drop frames. Change the 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
+#. * for seconds and translate 'frames'. Leave the |N alone, it's important!
+#: widgets/TimeTextCtrl.cpp:344
msgid "0100 h 060 m 060 s+.30 frames|N"
-msgstr ""
+msgstr "0100 æ¶ 060 å 060 ç§+.30 帧|N"
-#: widgets/TimeTextCtrl.cpp:215
+#. i18n-hint: Name of time display format that shows time in hours, minutes,
+#. * seconds and frames at NTSC TV non-drop-frame rate (used for American /
+#. * Japananese TV, and doesn't quite match wall time
+#: widgets/TimeTextCtrl.cpp:348
msgid "hh:mm:ss + NTSC non-drop frames"
-msgstr ""
+msgstr "æ¶:å:ç§ + NTSC æ 丢帧"
-#: widgets/TimeTextCtrl.cpp:216
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and frames with NTSC drop frames. Change the 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
+#. * for seconds and translate 'frames'. Leave the | .999000999 alone,
+#. * the whole things really is slightly off-speed!
+#: widgets/TimeTextCtrl.cpp:354
msgid "0100 h 060 m 060 s+.030 frames| .999000999"
-msgstr ""
+msgstr "0100 h 060 m 060 s+.030 帧| .999000999"
-#: ../src/widgets/TimeTextCtrl.cpp:165
+#. i18n-hint: Name of time display format that shows time in frames at NTSC
+#. * TV frame rate (used for American / Japananese TV
+#: widgets/TimeTextCtrl.cpp:357
msgid "NTSC frames"
msgstr "NTSC帧"
-#: widgets/TimeTextCtrl.cpp:218
+#. i18n-hint: Format string for displaying time in frames with NTSC frames.
+#. * Translate 'frames' and leave the rest alone. That really is the frame
+#. * rate!
+#: widgets/TimeTextCtrl.cpp:361
msgid "01000,01000 frames|29.97002997"
-msgstr ""
+msgstr "01000,01000 帧|29.97002997"
-#: widgets/TimeTextCtrl.cpp:219
+#. i18n-hint: Name of time display format that shows time in hours, minutes,
+#. * seconds and frames at PAL TV frame rate (used for European TV)
+#: widgets/TimeTextCtrl.cpp:364
msgid "hh:mm:ss + PAL frames (25 fps)"
-msgstr ""
+msgstr "æ¶:å:ç§ + PAL 帧(25fps)"
-#: widgets/TimeTextCtrl.cpp:220
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and frames with PAL TV frames. Change the 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
+#. * for seconds and translate 'frames'. Nice simple time code!
+#: widgets/TimeTextCtrl.cpp:369
msgid "0100 h 060 m 060 s+.25 frames"
-msgstr ""
+msgstr "0100 æ¶ 060 å 060 ç§+.25 帧"
-#: widgets/TimeTextCtrl.cpp:221
+#. i18n-hint: Name of time display format that shows time in frames at PAL
+#. * TV frame rate (used for European TV
+#: widgets/TimeTextCtrl.cpp:372
msgid "PAL frames (25 fps)"
-msgstr ""
+msgstr "PAL 帧(25fps)"
-#: widgets/TimeTextCtrl.cpp:222
+#. i18n-hint: Format string for displaying time in frames with NTSC frames.
+#. * Translate 'frames' and leave the rest alone.
+#: widgets/TimeTextCtrl.cpp:375
msgid "01000,01000 frames|25"
-msgstr ""
+msgstr "01000,01000 帧|25"
-#: ../src/widgets/TimeTextCtrl.cpp:159
+#. i18n-hint: Name of time display format that shows time in hours, minutes,
+#. * seconds and frames at CD Audio frame rate (75 frames per second)
+#: widgets/TimeTextCtrl.cpp:378
msgid "hh:mm:ss + CDDA frames (75 fps)"
-msgstr "æ¶:å:ç§ + CDMA帧 (75 fps)"
+msgstr "æ¶ï¼åï¼ç§ + CDDA帧 (75 fps)"
-#: widgets/TimeTextCtrl.cpp:224
+#. i18n-hint: Format string for displaying time in hours, minutes, seconds
+#. * and frames with CD Audio frames. Change the 'h' to the abbreviation
+#. * for hours, 'm' to the abbreviation for minutes, 's' to the abbreviation
+#. * for seconds and translate 'frames'.
+#: widgets/TimeTextCtrl.cpp:383
msgid "0100 h 060 m 060 s+.75 frames"
-msgstr ""
+msgstr "0100 æ¶ 060 å 060 ç§+.75 帧"
-#: widgets/TimeTextCtrl.cpp:225
+#. i18n-hint: Name of time display format that shows time in frames at CD
+#. * Audio frame rate (75 frames per second)
+#: widgets/TimeTextCtrl.cpp:386
msgid "CDDA frames (75 fps)"
-msgstr ""
+msgstr "CDDA帧 (75 fps)"
-#: widgets/TimeTextCtrl.cpp:226
+#. i18n-hint: Format string for displaying time in frames with CD Audio
+#. * frames. Translate 'frames' and leave the rest alone
+#: widgets/TimeTextCtrl.cpp:389
msgid "01000,01000 frames|75"
-msgstr ""
+msgstr "01000,01000 帧|75"
-#: widgets/TimeTextCtrl.cpp:363
+#: widgets/TimeTextCtrl.cpp:461
msgid "Use right mouse button or context key to change format"
-msgstr ""
+msgstr "使ç¨é¼ æ å³é®æcontext鮿¹åæ ¼å¼"
-#: widgets/TimeTextCtrl.cpp:1376
+#: widgets/TimeTextCtrl.cpp:1495
msgid "Time Control"
-msgstr ""
+msgstr "æ¶é´æ§å¶"
-#: ../src/widgets/Warning.cpp:53
+#: widgets/Warning.cpp:64
msgid "Don't show this warning again"
msgstr "䏿¬¡ä¸åæ¾ç¤ºæ¤è¦å"
-#: ../src/xml/XMLFileReader.cpp:45
+#: xml/XMLFileReader.cpp:49
#, c-format
msgid "Could not open file: \"%s\""
-msgstr "æ æ³æå¼æä»¶: \"%s\""
+msgstr "æ æ³æå¼æä»¶ï¼ \"%s\""
#: xml/XMLFileReader.cpp:63
#, c-format
msgid "Error: %hs at line %lu"
-msgstr ""
+msgstr "éè¯¯ï¼ %hs (%lu è¡)"
#: xml/XMLFileReader.cpp:79
#, c-format
msgid "Could not load file: \"%s\""
-msgstr ""
+msgstr "ä¸è½è½½å
¥æä»¶ï¼ \"%s\""
+
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr "岿´æä»¶é误"
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr "å
³éæä»¶é误"
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr "åå
¥æä»¶é误"
diff --git a/locale/zh_TW.po b/locale/zh_TW.po
index 4384622..0de1005 100644
--- a/locale/zh_TW.po
+++ b/locale/zh_TW.po
@@ -12,9 +12,7 @@ msgstr "Project-Id-Version: zh-TW\n"
"X-Poedit-Language: Chinese\n"
"X-Poedit-Country: TAIWAN\n"
-#: AboutDialog.cpp:142
-#: AudacityApp.cpp:749
-#: Menus.cpp:745
+#: AboutDialog.cpp:142 AudacityApp.cpp:749 Menus.cpp:745
msgid "&About Audacity..."
msgstr "éæ¼&Audacityâ¦"
@@ -27,11 +25,11 @@ msgid "Audacity is a free program written by a team of volunteer <a href=\"http:
msgstr ""
#: AboutDialog.cpp:179
-msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#: AboutDialog.cpp:182
-msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
+msgid "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>."
msgstr ""
#. i18n-hint: The translation of "translator_credits" will appear
@@ -40,8 +38,7 @@ msgstr ""
#.
#. For example: "English translation by Dominic Mazzoni."
#.
-#: AboutDialog.cpp:192
-#: AboutDialog.cpp:194
+#: AboutDialog.cpp:192 AboutDialog.cpp:194
msgid "translator_credits"
msgstr "Chinese(Traditional) translation by Chido, Milo"
@@ -84,7 +81,7 @@ msgid "Special thanks:"
msgstr "ç¹å¥æè¬ï¼"
#: AboutDialog.cpp:250
-msgid "<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
+msgid "<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni."
msgstr ""
#: AboutDialog.cpp:254
@@ -92,14 +89,11 @@ msgid "Audacity"
msgstr "Audacity"
#. i18n-hint: Information about when audacity was compiled
-#: AboutDialog.cpp:299
-#: AboutDialog.cpp:312
-#: AboutDialog.cpp:468
+#: AboutDialog.cpp:299 AboutDialog.cpp:312 AboutDialog.cpp:468
msgid "Build Information"
msgstr "ç·¨è¯è³è¨"
-#: AboutDialog.cpp:305
-#: effects/AvcCompressor.cpp:674
+#: AboutDialog.cpp:305 effects/AvcCompressor.cpp:674
msgid "Enabled"
msgstr "åç¨"
@@ -112,33 +106,27 @@ msgid "File Format Support"
msgstr "æªæ¡æ ¼å¼æ¯æ´"
#. i18n-hint: This is what the library (libmad) does - imports MP3 files
-#: AboutDialog.cpp:326
-#: AboutDialog.cpp:328
+#: AboutDialog.cpp:326 AboutDialog.cpp:328
msgid "MP3 Importing"
msgstr "MP3å¯å
¥"
-#: AboutDialog.cpp:335
-#: AboutDialog.cpp:338
+#: AboutDialog.cpp:335 AboutDialog.cpp:338
msgid "Ogg Vorbis Import and Export"
msgstr "Ogg Vorbiså¯å
¥åå¯åº"
-#: AboutDialog.cpp:342
-#: AboutDialog.cpp:345
+#: AboutDialog.cpp:342 AboutDialog.cpp:345
msgid "ID3 tag support"
msgstr "ID3 tagæ¯æ´"
-#: AboutDialog.cpp:352
-#: AboutDialog.cpp:355
+#: AboutDialog.cpp:352 AboutDialog.cpp:355
msgid "FLAC import and export"
msgstr "FLACå¯å
¥åå¯åº"
-#: AboutDialog.cpp:360
-#: AboutDialog.cpp:363
+#: AboutDialog.cpp:360 AboutDialog.cpp:363
msgid "MP2 export"
msgstr "MP2å¯åº"
-#: AboutDialog.cpp:368
-#: AboutDialog.cpp:371
+#: AboutDialog.cpp:368 AboutDialog.cpp:371
msgid "Import via QuickTime"
msgstr "ééQuickTimeå¯å
¥"
@@ -147,15 +135,12 @@ msgstr "ééQuickTimeå¯å
¥"
msgid "Core Libraries"
msgstr "æ ¸å¿ç¨å¼åº«"
-#: AboutDialog.cpp:384
-#: AboutDialog.cpp:387
-#: AboutDialog.cpp:390
+#: AboutDialog.cpp:384 AboutDialog.cpp:387 AboutDialog.cpp:390
#: AboutDialog.cpp:392
msgid "Sample rate conversion"
msgstr "忍£é »çè½æ"
-#: AboutDialog.cpp:397
-#: AboutDialog.cpp:400
+#: AboutDialog.cpp:397 AboutDialog.cpp:400
msgid "Audio playback and recording"
msgstr "é³è¨ææ¾èéé³"
@@ -163,24 +148,17 @@ msgstr "é³è¨ææ¾èéé³"
msgid "Features"
msgstr "ç¹è²"
-#: AboutDialog.cpp:417
-#: AboutDialog.cpp:420
-#: AboutDialog.cpp:425
-#: AboutDialog.cpp:428
-#: AboutDialog.cpp:433
-#: AboutDialog.cpp:436
-#: AboutDialog.cpp:441
-#: AboutDialog.cpp:444
+#: AboutDialog.cpp:417 AboutDialog.cpp:420 AboutDialog.cpp:425
+#: AboutDialog.cpp:428 AboutDialog.cpp:433 AboutDialog.cpp:436
+#: AboutDialog.cpp:441 AboutDialog.cpp:444
msgid "Plug-in support"
msgstr "Plug-inæ¯æ´"
-#: AboutDialog.cpp:449
-#: AboutDialog.cpp:452
+#: AboutDialog.cpp:449 AboutDialog.cpp:452
msgid "Sound card mixer support"
msgstr "æ¯æ´é³æå¡æ··é³"
-#: AboutDialog.cpp:457
-#: AboutDialog.cpp:460
+#: AboutDialog.cpp:457 AboutDialog.cpp:460
msgid "Pitch and Tempo Change support"
msgstr "æ¯æ´è®æ´é³é«åç¯æ"
@@ -188,8 +166,7 @@ msgstr "æ¯æ´è®æ´é³é«åç¯æ"
msgid "Program build date: "
msgstr "ç¨å¼ç·¨è¯æ¥æï¼"
-#: AboutDialog.cpp:475
-#: AboutDialog.cpp:477
+#: AboutDialog.cpp:475 AboutDialog.cpp:477
msgid "Build type:"
msgstr "ç·¨è¯é¡åï¼"
@@ -214,16 +191,12 @@ msgstr "è¨å®è³æå¤¾ï¼"
msgid "GPL License"
msgstr "GPL許å¯è"
-#: AudacityApp.cpp:468
-#: Project.cpp:1761
+#: AudacityApp.cpp:468 Project.cpp:1761
#, c-format
msgid "%s is already open in another window."
msgstr "%så·²å¨å
¶ä»è¦çªéå"
-#: AudacityApp.cpp:470
-#: Project.cpp:1763
-#: Project.cpp:1868
-#: Project.cpp:2012
+#: AudacityApp.cpp:470 Project.cpp:1763 Project.cpp:1868 Project.cpp:2012
#: Project.cpp:2114
msgid "Error opening project"
msgstr "éåå°æ¡é¯èª¤"
@@ -249,21 +222,28 @@ msgstr "輸å
¥å表"
msgid "Output Meter"
msgstr "輸åºå表"
-#. i18n-hint: Mac OS X shortcut should be Ctrl+,
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
-#: AudacityApp.cpp:751
-#: Menus.cpp:478
-msgid "&Preferences...\tCtrl+,"
-msgstr "å好è¨å®(&P)...\tCtrl+,"
+#: Menus.cpp:164
+msgid "&New"
+msgstr "éæ°æªæ¡(&N)"
+
+#: Menus.cpp:166
+msgid "&Open..."
+msgstr "éåèæª(&O)..."
-#: AudacityApp.cpp:833
-#: AudacityApp.cpp:910
+#: AudacityApp.cpp:805
+msgid "Open &Recent..."
+msgstr ""
+
+#: AudacityApp.cpp:751 Menus.cpp:478
+msgid "&Preferences..."
+msgstr "å好è¨å®(&P)..."
+
+#: AudacityApp.cpp:833 AudacityApp.cpp:910
#, c-format
msgid "Using block size of %ld\n"
msgstr "使ç¨å¡å¤§å°çº %ld\n"
-#: AudacityApp.cpp:855
-#: AudacityApp.cpp:925
+#: AudacityApp.cpp:855 AudacityApp.cpp:925
#, c-format
msgid "Unknown command line option: %s\n"
msgstr "䏿¯æ´çå½ä»¤åé¸é
: %s\n"
@@ -379,18 +359,16 @@ msgstr "é¯èª¤ï¼"
msgid "Error Initializing Audio"
msgstr "è²é³åå§åé¯èª¤"
+#: AudioIO.cpp:1225
+msgid "Latency Correction setting has caused the recorded audio to be hidden before zero.\n"
+"Audacity has brought it back to start at zero.\n"
+"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
+msgstr ""
+
#: AudioIO.cpp:1208
msgid "Latency problem"
msgstr "å»¶é²åé¡"
-#: AudioIO.cpp:1208
-msgid "Latency setting has caused the recorded audio to be hidden before zero.\n"
-"Audacity has brought it back to start at zero.\n"
-"You may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."
-msgstr "å»¶é²è¨å®å°è´éé³ä¸æå¾é¶æééå§ã\n"
-"Audacityæå°é鳿鿏é¶ã\n"
-"ä½ ä¹å¯ä»¥ä½¿ç¨æéä½ç§»å·¥å
· (<--->æF5) 便æ³é³è»çæéè³æ£ç¢ºçä½ç½®ã"
-
#: AutoRecovery.cpp:54
msgid "Automatic Crash Recovery"
msgstr "ç¶æ©èªåå復"
@@ -405,8 +383,7 @@ msgstr "ä¸ä¸æ¬¡å·è¡Audacityææé¨ä»½å·¥ç¨æ²æé©ç¶çå²åã\n"
msgid "Recoverable projects"
msgstr "å¯å復çå·¥ç¨"
-#: AutoRecovery.cpp:78
-#: Tags.cpp:2032
+#: AutoRecovery.cpp:78 Tags.cpp:2032
msgid "Name"
msgstr "å½å"
@@ -436,38 +413,25 @@ msgstr "ä½ ç¢ºå®ä¸è¦å¾©åæ¤å·¥ç¨ï¼\n"
msgid "Confirm?"
msgstr "確å®ï¼"
-#: AutoRecovery.cpp:146
-#: AutoRecovery.cpp:183
+#: AutoRecovery.cpp:146 AutoRecovery.cpp:183
msgid "Could not enumerate files in auto save directory"
msgstr "ç¡æ³è¨ç®èªåå²åè³æå¤¾å
§çæªæ¡"
-#: AutoRecovery.cpp:147
-#: AutoRecovery.cpp:184
-#: Menus.cpp:2575
-#: Menus.cpp:4514
-#: Project.cpp:1971
-#: Project.cpp:3343
-#: Project.cpp:3422
-#: WaveTrack.cpp:556
-#: WaveTrack.cpp:575
-#: WaveTrack.cpp:1689
-#: effects/Effect.cpp:436
-#: export/ExportMP2.cpp:230
-#: prefs/DirectoriesPrefs.cpp:189
-#: prefs/KeyConfigPrefs.cpp:245
-#: toolbars/ControlToolBar.cpp:532
+#: AutoRecovery.cpp:147 AutoRecovery.cpp:184 Menus.cpp:2575 Menus.cpp:4514
+#: Project.cpp:1971 Project.cpp:3343 Project.cpp:3422 WaveTrack.cpp:556
+#: WaveTrack.cpp:575 WaveTrack.cpp:1689 effects/Effect.cpp:436
+#: export/ExportMP2.cpp:230 prefs/DirectoriesPrefs.cpp:189
+#: prefs/KeyConfigPrefs.cpp:245 toolbars/ControlToolBar.cpp:532
#: toolbars/ControlToolBar.cpp:846
msgid "Error"
msgstr "ç¼çé¯èª¤"
-#: BatchCommandDialog.cpp:56
-#: BatchCommandDialog.cpp:60
+#: BatchCommandDialog.cpp:56 BatchCommandDialog.cpp:60
#: BatchCommandDialog.cpp:61
msgid "Select Command"
msgstr "鏿å½ä»¤"
-#: BatchCommandDialog.cpp:80
-#: BatchProcessDialog.cpp:454
+#: BatchCommandDialog.cpp:80 BatchProcessDialog.cpp:454
#: prefs/KeyConfigPrefs.cpp:142
msgid "&Command"
msgstr "å½ä»¤(&C)"
@@ -476,8 +440,7 @@ msgstr "å½ä»¤(&C)"
msgid "&Edit Parameters"
msgstr "ç·¨è¼¯åæ¸(&E)"
-#: BatchCommandDialog.cpp:89
-#: BatchProcessDialog.cpp:455
+#: BatchCommandDialog.cpp:89 BatchProcessDialog.cpp:455
msgid "&Parameters"
msgstr "忏(&P)"
@@ -523,8 +486,7 @@ msgstr "以忏å¥ç¨è³%s\n"
"\n"
"%s"
-#: BatchCommands.cpp:675
-#: BatchCommands.cpp:680
+#: BatchCommands.cpp:675 BatchCommands.cpp:680
msgid "Test Mode"
msgstr "測試模å¼"
@@ -533,8 +495,7 @@ msgstr "測試模å¼"
msgid "Apply %s"
msgstr "å¥ç¨ %s"
-#: BatchProcessDialog.cpp:60
-#: BatchProcessDialog.cpp:70
+#: BatchProcessDialog.cpp:60 BatchProcessDialog.cpp:70
#: BatchProcessDialog.cpp:71
msgid "Apply Chain"
msgstr "å¥ç¨é£éæä»¤ä¸"
@@ -559,24 +520,15 @@ msgstr "å¥ç¨è³ç®åå·¥ç¨(&P)"
msgid "Apply to &Files..."
msgstr "å¥ç¨è³æªæ¡(&F)..."
-#: BatchProcessDialog.cpp:108
-#: BatchProcessDialog.cpp:247
-#: Tags.cpp:2071
-#: Tags.cpp:2075
-#: Tags.cpp:2375
-#: Tags.cpp:2379
-#: UploadDialog.cpp:180
-#: effects/AvcCompressor.cpp:732
-#: effects/ChangeLength.cpp:183
-#: effects/SpikeCleaner.cpp:188
-#: effects/VST/VSTEffect.cpp:446
-#: effects/audiounits/AudioUnitEffect.cpp:882
-#: effects/vamp/VampEffect.cpp:411
+#: BatchProcessDialog.cpp:108 BatchProcessDialog.cpp:247 Tags.cpp:2071
+#: Tags.cpp:2075 Tags.cpp:2375 Tags.cpp:2379 UploadDialog.cpp:180
+#: effects/AvcCompressor.cpp:732 effects/ChangeLength.cpp:183
+#: effects/SpikeCleaner.cpp:188 effects/VST/VSTEffect.cpp:446
+#: effects/audiounits/AudioUnitEffect.cpp:882 effects/vamp/VampEffect.cpp:411
msgid "&Cancel"
msgstr "åæ¶(&C)"
-#: BatchProcessDialog.cpp:146
-#: BatchProcessDialog.cpp:191
+#: BatchProcessDialog.cpp:146 BatchProcessDialog.cpp:191
msgid "No chain selected"
msgstr "æ²æé¸åé£éæä»¤"
@@ -613,8 +565,7 @@ msgstr "å¥ç¨ä¸..."
msgid "File"
msgstr "æªæ¡"
-#: BatchProcessDialog.cpp:356
-#: BatchProcessDialog.cpp:360
+#: BatchProcessDialog.cpp:356 BatchProcessDialog.cpp:360
#: BatchProcessDialog.cpp:361
msgid "Edit Chains"
msgstr "編輯é£éæä»¤"
@@ -623,19 +574,12 @@ msgstr "編輯é£éæä»¤"
msgid "&Chains"
msgstr "é£éæä»¤(&C)"
-#: BatchProcessDialog.cpp:435
-#: Tags.cpp:815
-#: Tags.cpp:1455
-#: Tags.cpp:2055
+#: BatchProcessDialog.cpp:435 Tags.cpp:815 Tags.cpp:1455 Tags.cpp:2055
msgid "&Add"
msgstr "æ°å¢(&A)"
-#: BatchProcessDialog.cpp:436
-#: LabelDialog.cpp:126
-#: Tags.cpp:816
-#: Tags.cpp:1456
-#: Tags.cpp:2056
-#: TrackPanel.cpp:4201
+#: BatchProcessDialog.cpp:436 LabelDialog.cpp:126 Tags.cpp:816 Tags.cpp:1456
+#: Tags.cpp:2056 TrackPanel.cpp:4201
msgid "&Remove"
msgstr "ç§»é¤(&R)"
@@ -649,8 +593,8 @@ msgstr "é£éæä»¤(&H) (éææ»é¼ ææç©ºç½éµç·¨è¼¯)"
#. i18n-hint: This is the number of the command in the list
#: BatchProcessDialog.cpp:453
-msgid "No"
-msgstr "ç¡"
+msgid "Num"
+msgstr ""
# 波形ä¸ä¸åè½
#: BatchProcessDialog.cpp:459
@@ -740,8 +684,7 @@ msgstr "ç£ç¢ç©ºé"
msgid "Copy Selected Audio Into Project"
msgstr "è¤è£½é¸åçé³è¨è³å·¥ç¨å
§"
-#: Dependencies.cpp:304
-#: Dependencies.cpp:410
+#: Dependencies.cpp:304 Dependencies.cpp:410
msgid "Cancel Save"
msgstr "åæ¶å²å"
@@ -753,8 +696,7 @@ msgstr "ä¸è¦è¤è£½ä»»ä½é³è¨"
msgid "Copy All Audio into Project (Safer)"
msgstr "è¤è£½ææé³è¨è³å·¥ç¨å
§(è¼å®å
¨)"
-#: Dependencies.cpp:317
-#: Dependencies.cpp:322
+#: Dependencies.cpp:317 Dependencies.cpp:322
msgid "Ask me"
msgstr "è©¢åæ"
@@ -787,9 +729,7 @@ msgid "Warning: there is very little free disk space left on this volume.\n"
"Please select another temporary directory in your preferences."
msgstr "è¦åï¼ç£ç¢å©é¤ç©ºéä¸è¶³ãè«æ¼å好è¨å®ä¸è¨å®å
¶ä»æ«åç®éã"
-#: DirManager.cpp:221
-#: DirManager.cpp:251
-#: DirManager.cpp:332
+#: DirManager.cpp:221 DirManager.cpp:251 DirManager.cpp:332
msgid "Progress"
msgstr "é²è¡"
@@ -844,8 +784,7 @@ msgstr "å°'%s'æ´åçº'%s'"
msgid "Changed block %s to new alias name\n"
msgstr ""
-#: DirManager.cpp:1115
-#: DirManager.cpp:1403
+#: DirManager.cpp:1115 DirManager.cpp:1403
msgid "Inspecting project file data..."
msgstr "檢æ¥å·¥ç¨æªæ¡è³æ..."
@@ -896,14 +835,9 @@ msgstr "ä¸åªé¤ç¹¼çºï¼æçºå
¶ä»çæªæ¡"
msgid "Close project immediately with no changes"
msgstr "ä¸å²åèééå·¥ç¨"
-#: DirManager.cpp:1228
-#: DirManager.cpp:1263
-#: DirManager.cpp:1309
-#: DirManager.cpp:1351
-#: export/Export.cpp:490
-#: export/Export.cpp:507
-#: export/Export.cpp:526
-#: widgets/Warning.cpp:55
+#: DirManager.cpp:1228 DirManager.cpp:1263 DirManager.cpp:1309
+#: DirManager.cpp:1351 export/Export.cpp:490 export/Export.cpp:507
+#: export/Export.cpp:526 widgets/Warning.cpp:55
msgid "Warning"
msgstr "è¦å"
@@ -925,14 +859,11 @@ msgstr "å·¥ç¨æª¢æ¥ç¼ç¾éºå¤±('alias files')使ç¨ç%d輸å
¥æªæ¡ã\n"
msgid "Replace missing data with silence [permanent upon save]"
msgstr "ç¨éé³å代éºå¤±çæªæ¡[è¥æªå²åï¼å¯å¾©å]"
-#: DirManager.cpp:1260
-#: DirManager.cpp:1348
+#: DirManager.cpp:1260 DirManager.cpp:1348
msgid "Temporarily replace missing data with silence [this session only]"
msgstr "æ«æç¨éé³å代éºå¤±çæªæ¡[å
æ¤å·¥ç¨]"
-#: DirManager.cpp:1261
-#: DirManager.cpp:1307
-#: DirManager.cpp:1349
+#: DirManager.cpp:1261 DirManager.cpp:1307 DirManager.cpp:1349
msgid "Close project immediately with no further changes"
msgstr "ç«å³ééç¨å¼"
@@ -1000,11 +931,11 @@ msgstr "ç©å½¢"
msgid "FFmpeg support not compiled in"
msgstr ""
-#: FFmpeg.cpp:101
+#: FFmpeg.cpp:103
msgid "FFmpeg was configured in Preferences and successfully loaded before, \n"
"but this time Audacity failed to load it at startup. \n"
"\n"
-"You may want to go back to Preferences > Import/Export and re-configure it."
+"You may want to go back to Preferences > Libraries and re-configure it."
msgstr ""
#: FFmpeg.cpp:104
@@ -1062,11 +993,12 @@ msgstr ""
msgid "FFmpeg not found"
msgstr ""
-#: FFmpeg.h:101
-msgid "Audacity attempted to use FFmpeg libraries to import an audio file,\n"
-"but libraries were not found.\n"
-"If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n"
-"and tell Audacity where to look for the libraries."
+#: FFmpeg.h:111
+msgid "Audacity attempted to use FFmpeg to import an audio file,\n"
+"but the libraries were not found.\n"
+"\n"
+"To use FFmpeg import, go to Preferences > Libraries\n"
+"to download or locate the FFmpeg libraries."
msgstr ""
#: FFmpeg.h:109
@@ -1089,8 +1021,7 @@ msgstr ""
msgid "Frequency Analysis"
msgstr "é »çåæ"
-#: FreqWindow.cpp:140
-#: TrackPanel.cpp:563
+#: FreqWindow.cpp:140 TrackPanel.cpp:563
msgid "Spectrum"
msgstr "é »è"
@@ -1118,8 +1049,7 @@ msgstr "Cepstrum"
msgid "Algorithm"
msgstr "æ¼ç®æ³ï¼"
-#: FreqWindow.cpp:168
-#: HistoryWindow.cpp:79
+#: FreqWindow.cpp:168 HistoryWindow.cpp:79
msgid "Size"
msgstr "大å°"
@@ -1145,10 +1075,7 @@ msgstr "å°æ¸é »ç"
msgid "Axis"
msgstr ""
-#: FreqWindow.cpp:206
-#: LabelDialog.cpp:128
-#: Menus.cpp:204
-#: Menus.cpp:233
+#: FreqWindow.cpp:206 LabelDialog.cpp:128 Menus.cpp:204 Menus.cpp:233
msgid "&Export..."
msgstr "å¯åº(&E)..."
@@ -1156,47 +1083,56 @@ msgstr "å¯åº(&E)..."
msgid "Export"
msgstr "å¯åº"
-#: FreqWindow.cpp:209
-#: widgets/ErrorDialog.cpp:159
+#: FreqWindow.cpp:240
+msgid "&Replot"
+msgstr ""
+
+#: FreqWindow.cpp:241
+msgid "Replot"
+msgstr ""
+
+#: FreqWindow.cpp:209 widgets/ErrorDialog.cpp:159
msgid "Close"
msgstr "éé"
+#: FreqWindow.cpp:247 FreqWindow.cpp:250 effects/Equalization.cpp:1303
+#: effects/Equalization.cpp:1306
+msgid "Grids"
+msgstr ""
+
# åè²
-#: FreqWindow.cpp:272
-#: FreqWindow.cpp:402
-#: effects/AutoDuck.cpp:489
-#: effects/AutoDuck.cpp:523
-#: effects/AutoDuck.cpp:791
-#: effects/Compressor.cpp:352
-#: effects/Compressor.cpp:360
-#: effects/Equalization.cpp:1109
-#: effects/Equalization.cpp:1111
-#: effects/Equalization.cpp:1119
-#: effects/Equalization.cpp:1185
-#: effects/Equalization.cpp:1394
-#: effects/Equalization.cpp:1405
-#: effects/Normalize.cpp:365
-#: widgets/Meter.cpp:380
+#: FreqWindow.cpp:272 FreqWindow.cpp:402 effects/AutoDuck.cpp:489
+#: effects/AutoDuck.cpp:523 effects/AutoDuck.cpp:791
+#: effects/Compressor.cpp:352 effects/Compressor.cpp:360
+#: effects/Equalization.cpp:1109 effects/Equalization.cpp:1111
+#: effects/Equalization.cpp:1119 effects/Equalization.cpp:1185
+#: effects/Equalization.cpp:1394 effects/Equalization.cpp:1405
+#: effects/Normalize.cpp:365 widgets/Meter.cpp:380
msgid "dB"
msgstr "dB"
# 赫è²
#. i18n-hint: This is the abbreviation for "Hertz", or
#. cycles per second.
-#: FreqWindow.cpp:287
-#: FreqWindow.cpp:442
-#: effects/Equalization.cpp:1150
-#: effects/Equalization.cpp:1181
-#: import/ImportRaw.cpp:416
+#: FreqWindow.cpp:287 FreqWindow.cpp:442 effects/Equalization.cpp:1150
+#: effects/Equalization.cpp:1181 import/ImportRaw.cpp:416
msgid "Hz"
msgstr "Hz"
+#: Menus.cpp:3425
+msgid "To plot the spectrum, all selected tracks must be the same sample rate."
+msgstr "çºäºæç¹ªé »èï¼ææé¸å®çé³è»å¿
é å
·æç¸åç忍£é »çã"
+
+#: Menus.cpp:3451
+#, c-format
+msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
+msgstr "鏿çè²é³éå¤ãåªæéå§ %.1f ç§çè²é³æè¢«åæã"
+
#: FreqWindow.cpp:386
msgid "Not enough data selected."
msgstr "æ²æé¸åè¶³å¤ çæ¸æã"
-#: FreqWindow.cpp:450
-#: effects/AutoDuck.cpp:793
+#: FreqWindow.cpp:450 effects/AutoDuck.cpp:793
msgid "s"
msgstr "s"
@@ -1218,12 +1154,8 @@ msgstr "spectrum.txt"
msgid "Export Spectral Data As:"
msgstr "å°é »èæ¸æå¯åºçºï¼"
-#: FreqWindow.cpp:1079
-#: LabelDialog.cpp:599
-#: Menus.cpp:2207
-#: Project.cpp:2441
-#: Project.cpp:3395
-#: prefs/KeyConfigPrefs.cpp:180
+#: FreqWindow.cpp:1079 LabelDialog.cpp:599 Menus.cpp:2207 Project.cpp:2441
+#: Project.cpp:3395 prefs/KeyConfigPrefs.cpp:180
msgid "Couldn't write to file: "
msgstr "ç¡æ³å¯«å
¥æªæ¡ï¼"
@@ -1235,6 +1167,21 @@ msgstr "é »ç(Hz)\tLevel (dB)"
msgid "Lag (seconds)\tFrequency (Hz)\tLevel"
msgstr "å»¶é² (ç§)\té »ç (Hz)\tæ°´å¹³"
+#: GStreamerLoader.cpp:195
+#, c-format
+msgid "GStreamer %s: %s"
+msgstr ""
+
+#: GStreamerLoader.cpp:212
+msgid "GStreamer was configured in preferences and successfully loaded before,\n"
+" but this time Audacity failed to load it at startup.\n"
+" You may want to go back to Preferences > Libraries and re-configure it."
+msgstr ""
+
+#: GStreamerLoader.cpp:215
+msgid "GStreamer startup failed"
+msgstr ""
+
#: HelpText.cpp:85
msgid "To [[welcome|Welcome screen]]"
msgstr "åå°[[welcome|æ¡è¿é é¢]]"
@@ -1313,7 +1260,7 @@ msgid "<p><b>To record:</b> Set the recording device and input source, adjust th
msgstr ""
#: HelpText.cpp:221
-msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after conecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
+msgid "<p>The input device is the actual physical sound device you are recording from. This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. On a Mac, they in the <i>Audacity</i> Menu. You can also conveniently select Recording Device in the <i>Device Toolbar</i>, which can be enabled at <i>View > Toolbars...</i>. </p><p> By default, Audacity uses the device currently being used by the system, (usually your inbuilt sound device), so it is often not necessary to change the input device. On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". If you are recording from an external USB or Firewire device such as a USB turntable, select it explicitly by name as recording device after connecting it. </p><p> Back to [[record|Recording Audio]] <br></p>"
msgstr ""
#: HelpText.cpp:244
@@ -1338,7 +1285,7 @@ msgid "To hear your work in other media programs, export it to an audio file suc
msgstr ""
#: HelpText.cpp:359
-msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
+msgid "<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> or most other proprietary formats, due to licensing and patent restrictions. On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. Files protected by any kind of Digital Rights Management (DRM), including most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> If you can't import your file into Audacity, then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> to convert it to WAV or AIFF. If it is protected, burn it to an audio CD in the program licensed to play it, then extract the CD track to WAV or AIFF using iTunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or Windows Media Player 11. You could also <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. <i>To export to an unsupported format, export to WAV or AIFF and convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. </i></p><p>"
msgstr ""
#: HelpText.cpp:383
@@ -1373,15 +1320,9 @@ msgstr "æ¨æ£ççç´"
msgid "&Discard"
msgstr "æ¨æ£(&D)"
-#: HistoryWindow.cpp:111
-#: Tags.cpp:2072
-#: Tags.cpp:2074
-#: Tags.cpp:2376
-#: Tags.cpp:2378
-#: effects/ChangeLength.cpp:186
-#: effects/SpikeCleaner.cpp:191
-#: effects/vamp/VampEffect.cpp:414
-#: export/ExportCL.cpp:398
+#: HistoryWindow.cpp:111 Tags.cpp:2072 Tags.cpp:2074 Tags.cpp:2376
+#: Tags.cpp:2378 effects/ChangeLength.cpp:186 effects/SpikeCleaner.cpp:191
+#: effects/vamp/VampEffect.cpp:414 export/ExportCL.cpp:398
msgid "&OK"
msgstr "確å®(&O)"
@@ -1389,8 +1330,7 @@ msgstr "確å®(&O)"
msgid "Unable to determine"
msgstr "ç¡æ³é©è"
-#: Internat.cpp:195
-#: import/ImportRaw.cpp:392
+#: Internat.cpp:195 import/ImportRaw.cpp:392
msgid "bytes"
msgstr "ä½å
çµ"
@@ -1406,13 +1346,19 @@ msgstr "MB"
msgid "GB"
msgstr "GB"
+#: Internat.cpp:181
+msgid "The specified filename could not be converted due to Unicode character use."
+msgstr ""
+
+#: Internat.cpp:183
+msgid "Specify New Filename:"
+msgstr ""
+
#: LabelDialog.cpp:52
msgid "Track"
msgstr "é³è»"
-#: LabelDialog.cpp:53
-#: Menus.cpp:4057
-#: Menus.cpp:4085
+#: LabelDialog.cpp:53 Menus.cpp:4057 Menus.cpp:4085
msgid "Label"
msgstr "æ¨ç±¤"
@@ -1424,8 +1370,7 @@ msgstr "éå§æé"
msgid "End Time"
msgstr "çµææé"
-#: LabelDialog.cpp:98
-#: Menus.cpp:627
+#: LabelDialog.cpp:98 Menus.cpp:627
msgid "&Edit Labels"
msgstr "編輯æ¨ç±¤(&E)"
@@ -1441,8 +1386,7 @@ msgstr "æå
¥ä¸ä¸å(&A)"
msgid "Insert &Before"
msgstr "æå
¥ä¸ä¸å(&B)"
-#: LabelDialog.cpp:127
-#: Menus.cpp:194
+#: LabelDialog.cpp:127 Menus.cpp:194
msgid "&Import..."
msgstr "å¯å
¥(&I)..."
@@ -1464,20 +1408,15 @@ msgstr "æ¨è®æ¨ç±¤å稱空ç½ãéæ\n"
msgid "Confirm"
msgstr "確èª"
-#: LabelDialog.cpp:514
-#: Menus.cpp:3555
+#: LabelDialog.cpp:514 Menus.cpp:3555
msgid "Select a text file containing labels..."
msgstr "鏿å
嫿¨ç±¤çæåæªæ¡..."
-#: LabelDialog.cpp:518
-#: Menus.cpp:3559
+#: LabelDialog.cpp:518 Menus.cpp:3559
msgid "Text files (*.txt)|*.txt|All files (*.*)|*.*"
msgstr "æåæªæ¡ (*.txt)|*.txt|æææªæ¡ (*.*)|*.*"
-#: LabelDialog.cpp:532
-#: Menus.cpp:3571
-#: Project.cpp:1831
-#: Project.cpp:1839
+#: LabelDialog.cpp:532 Menus.cpp:3571 Project.cpp:1831 Project.cpp:1839
#: import/ImportMIDI.cpp:31
msgid "Could not open file: "
msgstr "ç¡æ³éåæªæ¡ï¼"
@@ -1486,13 +1425,11 @@ msgstr "ç¡æ³éåæªæ¡ï¼"
msgid "No labels to export."
msgstr "æ²ææ¨ç±¤é³è»å¯åºã"
-#: LabelDialog.cpp:564
-#: Menus.cpp:2172
+#: LabelDialog.cpp:564 Menus.cpp:2172
msgid "Export Labels As:"
msgstr "å°æ¨ç±¤å¯åºçºï¼"
-#: LabelDialog.cpp:566
-#: Menus.cpp:2170
+#: LabelDialog.cpp:566 Menus.cpp:2170
msgid "labels.txt"
msgstr "labels.txt"
@@ -1504,10 +1441,7 @@ msgstr "æ°æ¨ç±¤è»"
msgid "Enter track name"
msgstr "輸å
¥é³è»å稱çº"
-#: LabelDialog.cpp:701
-#: LabelDialog.h:52
-#: LabelTrack.cpp:89
-#: Menus.cpp:555
+#: LabelDialog.cpp:701 LabelDialog.h:52 LabelTrack.cpp:89 Menus.cpp:555
msgid "&Label Track"
msgstr "æ¨ç±¤è»(&L)"
@@ -1534,24 +1468,15 @@ msgstr "éåAudacityæé³å·¥ç¨"
msgid "&File"
msgstr "æªæ¡(&F)"
-#: Menus.cpp:164
-msgid "&New\tCtrl+N"
-msgstr "éæ°æªæ¡(&N)\tCtrl+N"
-
-#: Menus.cpp:166
-msgid "&Open...\tCtrl+O"
-msgstr "éåèæª(&O)...\tCtrl+O"
-
#: Menus.cpp:171
-msgid "&Close\tCtrl+W"
-msgstr "éé(&C)\tCtrl+W"
+msgid "&Close"
+msgstr "éé(&C)"
#: Menus.cpp:174
-msgid "&Save Project\tCtrl+S"
-msgstr "å²åæé³å·¥ç¨(&S)\tCtrl+S"
+msgid "&Save Project"
+msgstr "å²åæé³å·¥ç¨(&S)"
-#: Menus.cpp:178
-#: Project.cpp:2690
+#: Menus.cpp:178 Project.cpp:2690
msgid "Save Project &As..."
msgstr "å¦åæé³å·¥ç¨çº(&A)..."
@@ -1572,8 +1497,8 @@ msgid "&Import"
msgstr "å¯å
¥(&I)"
#: Menus.cpp:196
-msgid "&Audio...\tCtrl+Shift+I"
-msgstr "è²é³æªæ¡(&I)...\tCtrl+Shift+I"
+msgid "&Audio..."
+msgstr "è²é³æªæ¡(&I)..."
#: Menus.cpp:197
msgid "&Labels..."
@@ -1587,8 +1512,7 @@ msgstr "MIDI(&M)..."
msgid "&Raw Data..."
msgstr "Raw Data(&R)..."
-#: Menus.cpp:210
-#: Menus.cpp:239
+#: Menus.cpp:210 Menus.cpp:239
msgid "Expo&rt Selection..."
msgstr "å°é¸åç¯åå¯åº(&R)..."
@@ -1604,12 +1528,11 @@ msgstr "å¯åºå¤åæªæ¡(&M)..."
msgid "Export MIDI..."
msgstr ""
-#: Menus.cpp:247
-msgid "CleanSpeech C&hain..."
-msgstr "æ¸
é¤äººè²é£éæä»¤(&H)â¦"
+#: Menus.cpp:260
+msgid "Appl&y Chain..."
+msgstr "å¥ç¨é£éæä»¤(&Y)..."
-#: Menus.cpp:248
-#: Menus.cpp:262
+#: Menus.cpp:248 Menus.cpp:262
msgid "Edit C&hains..."
msgstr "編輯é£éæä»¤(&H)..."
@@ -1621,10 +1544,6 @@ msgstr "å¯åºæ¸
é¤äººè²è¨å®(&P)â¦"
msgid "I&mport CleanSpeech Presets..."
msgstr "å¯å
¥æ¸
é¤äººè²è¨å®(&M)â¦"
-#: Menus.cpp:260
-msgid "Appl&y Chain..."
-msgstr "å¥ç¨é£éæä»¤(&Y)..."
-
#: Menus.cpp:267
msgid "&Upload File..."
msgstr "ä¸å³æªæ¡(&U)..."
@@ -1638,75 +1557,72 @@ msgid "&Print..."
msgstr "åå°(&P)..."
#: Menus.cpp:287
-msgid "E&xit\tCtrl+Q"
-msgstr "çµæ(&X)\tCtrl+Q"
+msgid "E&xit"
+msgstr "çµæ(&X)"
-#: Menus.cpp:295
-#: toolbars/EditToolBar.cpp:76
+#: Menus.cpp:295 toolbars/EditToolBar.cpp:76
msgid "&Edit"
msgstr "編輯 (&E)"
#: Menus.cpp:299
-msgid "&Undo\tCtrl+Z"
-msgstr "復å(&U)\tCtrl+Z"
+msgid "&Undo"
+msgstr "復å(&U)"
-#: Menus.cpp:307
-#: prefs/KeyConfigPrefs.cpp:369
-#: toolbars/EditToolBar.cpp:146
+#: Menus.cpp:307 prefs/KeyConfigPrefs.cpp:369 toolbars/EditToolBar.cpp:146
msgid "&Redo"
msgstr "éå(&R)"
#: Menus.cpp:320
-msgid "Cu&t\tCtrl+X"
-msgstr "åªä¸(&T)\tCtrl+X"
+msgid "Cu&t"
+msgstr "åªä¸(&T)"
#: Menus.cpp:324
-msgid "Spl&it Cut\tCtrl+Alt+X"
-msgstr "é¸åç¯åè®çºç©ºç½ä¸¦åªä¸(&I)\tCtrl+Alt+X"
+msgid "Spl&it Cut"
+msgstr "é¸åç¯åè®çºç©ºç½ä¸¦åªä¸(&I)"
#: Menus.cpp:325
-msgid "&Copy\tCtrl+C"
-msgstr "è¤è£½(&C)\tCtrl+C"
+msgid "&Copy"
+msgstr "è¤è£½(&C)"
#: Menus.cpp:329
-msgid "&Paste\tCtrl+V"
-msgstr "è²¼ä¸(&P)\tCtrl+V"
+msgid "&Paste"
+msgstr "è²¼ä¸(&P)"
#: Menus.cpp:333
-msgid "Tri&m\tCtrl+T"
-msgstr "ä¿çé¸åç¯å(&M)\tCtrl+T"
+msgid "Tri&m"
+msgstr "ä¿çé¸åç¯å(&M)"
#: Menus.cpp:335
-msgid "&Delete\tCtrl+K"
-msgstr "åªé¤(&D)\tCtrl+K"
+msgid "&Delete"
+msgstr "åªé¤(&D)"
#: Menus.cpp:336
-msgid "Split D&elete\tCtrl+Alt+K"
-msgstr "é¸åç¯åè®çºç©ºç½ä¸¦åªé¤(&E)\tCtrl+Alt+K"
+msgid "Split D&elete"
+msgstr "é¸åç¯åè®çºç©ºç½ä¸¦åªé¤(&E)"
#: Menus.cpp:380
-msgid "Silence Audi&o\tCtrl+L"
+msgid "Silence Audi&o"
msgstr ""
#: Menus.cpp:339
-msgid "Sp&lit\tCtrl+I"
-msgstr "åé¢(&L)\tCtrl+I"
+msgid "Sp&lit"
+msgstr "åé¢(&L)"
#: Menus.cpp:344
-msgid "Split Ne&w\tCtrl+Alt+I"
-msgstr "å颿°ç(&W)\tCtrl+Alt+I"
+msgid "Split Ne&w"
+msgstr "å颿°ç(&W)"
#: Menus.cpp:349
-msgid "&Join\tCtrl+J"
-msgstr "å°ç©ºç½ç¯åè®çºéé³(&J)\tCtrl+J"
+msgid "&Join"
+msgstr "å°ç©ºç½ç¯åè®çºéé³(&J)"
#: Menus.cpp:393
-msgid "Detac&h at Silences\tCtrl+Alt+J"
+msgid "Detac&h at Silences"
msgstr ""
#: Menus.cpp:352
-msgid "Duplic&ate\tCtrl+D"
-msgstr "è¤è£½å
¨é¨ä¸¦è²¼ä¸(&A)\tCtrl+D"
+msgid "Duplic&ate"
+msgstr "è¤è£½å
¨é¨ä¸¦è²¼ä¸(&A)"
#: Menus.cpp:400 Menus.cpp:639
msgid "Stereo Trac&k to Mono"
@@ -1718,80 +1634,65 @@ msgstr ""
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:367
-msgid "&Cut\tAlt+X"
-msgstr "åªä¸(&C)\tAlt+X"
+msgid "&Cut"
+msgstr "åªä¸(&C)"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:372
-msgid "&Split Cut\tShift+Alt+X"
-msgstr "é¸åç¯åè®çºç©ºç½ä¸¦åªä¸(&S)\tShift+Alt+X"
+msgid "&Split Cut"
+msgstr "é¸åç¯åè®çºç©ºç½ä¸¦åªä¸(&S)"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:377
-msgid "Co&py\tShift+Alt+C"
-msgstr "è¤è£½(&P)\tShift+Alt+C"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:383
-msgid "&Delete\tAlt+K"
-msgstr "åªé¤(&D)\tAlt+K"
+msgid "Co&py"
+msgstr "è¤è£½(&P)"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:388
-msgid "Sp&lit Delete\tShift+Alt+K"
-msgstr "é¸åç¯åè®çºç©ºç½ä¸¦åªé¤(&L)\tShift+Alt+K"
+msgid "Sp&lit Delete"
+msgstr "é¸åç¯åè®çºç©ºç½ä¸¦åªé¤(&L)"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:393
-msgid "Sile&nce\tAlt+L"
-msgstr "éé³(&N)\tAlt+L"
+msgid "Sile&nce"
+msgstr "éé³(&N)"
#. i18n-hint: Labeled Regions submenu
#: Menus.cpp:399
-msgid "Spli&t\tAlt+I"
-msgstr "åé¢(&T)\tAlt+I"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:404
-msgid "&Join\tAlt+J"
-msgstr "å°ç©ºç½ç¯åè®çºéé³(&J)\tAlt+J"
-
-#. i18n-hint: Labeled Regions submenu
-#: Menus.cpp:451
-msgid "Detac&h at Silences\tShift+Alt+J"
-msgstr ""
+msgid "Spli&t"
+msgstr "åé¢(&T)"
#: Menus.cpp:456
msgid "&Select"
msgstr ""
#: Menus.cpp:416
-msgid "&All\tCtrl+A"
-msgstr "å
¨é¸(&A)\tCtrl+A"
+msgid "&All"
+msgstr "å
¨é¸(&A)"
#: Menus.cpp:417
-msgid "&None\tCtrl+Shift+A"
-msgstr "å
¨ä¸é¸(&N)\tCtrl+N"
+msgid "&None"
+msgstr "å
¨ä¸é¸(&N)"
#: Menus.cpp:421
-msgid "&Left at Playback Position\t["
-msgstr "ææ¾ä½ç½®å·¦å´(&L)\t["
+msgid "&Left at Playback Position"
+msgstr "ææ¾ä½ç½®å·¦å´(&L)"
#: Menus.cpp:422
-msgid "&Right at Playback Position\t]"
-msgstr "ææ¾ä½ç½®å³å´(&R)\t]"
+msgid "&Right at Playback Position"
+msgstr "ææ¾ä½ç½®å³å´(&R)"
#: Menus.cpp:426
-msgid "Track &Start to Cursor\tShift+J"
-msgstr "å¾èµ·é»è³æ¸¸æ¨ä½ç½®(&S)\tShift+J"
+msgid "Track &Start to Cursor"
+msgstr "å¾èµ·é»è³æ¸¸æ¨ä½ç½®(&S)"
#: Menus.cpp:427
-msgid "Cursor to Track &End\tShift+K"
-msgstr "徿¸¸æ¨ä½ç½®è³çµæé»(&E)\tShift+J"
+msgid "Cursor to Track &End"
+msgstr "徿¸¸æ¨ä½ç½®è³çµæé»(&E)"
#: Menus.cpp:433
-msgid "Find &Zero Crossings\tZ"
-msgstr "å°æ¾é¶äº¤é»(&Z)\tZ"
+msgid "Find &Zero Crossings"
+msgstr "å°æ¾é¶äº¤é»(&Z)"
#: Menus.cpp:476
msgid "Mo&ve Cursor"
@@ -1806,12 +1707,12 @@ msgid "to Selection En&d"
msgstr "è³é¸åç¯åçµæé»(&D)"
#: Menus.cpp:442
-msgid "to Track &Start\tJ"
-msgstr "è³é³è»èµ·å§é»(&S)\tJ"
+msgid "to Track &Start"
+msgstr "è³é³è»èµ·å§é»(&S)"
#: Menus.cpp:443
-msgid "to Track &End\tK"
-msgstr "è³é³è»çµæé»(&E)\tK"
+msgid "to Track &End"
+msgstr "è³é³è»çµæé»(&E)"
#: Menus.cpp:450
msgid "Re&gion Save"
@@ -1833,29 +1734,8 @@ msgstr "Lock(&L)"
msgid "&Unlock"
msgstr "Unlock(&U)"
-#: Menus.cpp:470
-msgid "Turn Snap-To On"
-msgstr "éåæ»æ£åè½"
-
-#: Menus.cpp:471
-msgid "Turn Snap-To Off"
-msgstr "ééæ»æ£åè½"
-
-#: Menus.cpp:472
-msgid "Turn Grid Snap On"
-msgstr "éåæ ¼ç·æ»æ£åè½"
-
-#: Menus.cpp:473
-msgid "Turn Grid Snap Off"
-msgstr "ééæ ¼ç·æ»æ£åè½"
-
-#. i18n-hint: Mac OS X Preferences shortcut should be Ctrl+,
#: Menus.cpp:519
-msgid "Pre&ferences...\tCtrl+,"
-msgstr ""
-
-#: Menus.cpp:523
-msgid "Pre&ferences...\tCtrl+P"
+msgid "Pre&ferences..."
msgstr ""
#: Menus.cpp:492
@@ -1863,36 +1743,36 @@ msgid "&View"
msgstr "檢è¦(&V)"
#: Menus.cpp:494
-msgid "Zoom &In\tCtrl+1"
-msgstr "æ¾å¤§(&I)\tCtrl+1"
+msgid "Zoom &In"
+msgstr "æ¾å¤§(&I)"
#: Menus.cpp:497
-msgid "Zoom &Normal\tCtrl+2"
-msgstr "ä¸è¬(&N)\tCtrl+2"
+msgid "Zoom &Normal"
+msgstr "ä¸è¬(&N)"
#: Menus.cpp:498
-msgid "Zoom &Out\tCtrl+3"
-msgstr "縮å°(&O)\tCtrl+3"
+msgid "Zoom &Out"
+msgstr "縮å°(&O)"
#: Menus.cpp:501
-msgid "&Fit in Window\tCtrl+F"
-msgstr "æé³å·¥ç¨é©åè¦çªå¤§å°(&F)\tCtrl+F"
+msgid "&Fit in Window"
+msgstr "æé³å·¥ç¨é©åè¦çªå¤§å°(&F)"
#: Menus.cpp:502
-msgid "Fit &Vertically\tCtrl+Shift+F"
-msgstr "é©ååç´å¤§å°(&V)\tCtrl+Shift+F"
+msgid "Fit &Vertically"
+msgstr "é©ååç´å¤§å°(&V)"
#: Menus.cpp:503
-msgid "&Zoom to Selection\tCtrl+E"
-msgstr "縮æ¾é¸åç¯å符åè¦çª(&Z)\tCtrl+E"
+msgid "&Zoom to Selection"
+msgstr "縮æ¾é¸åç¯å符åè¦çª(&Z)"
#: Menus.cpp:506
-msgid "&Collapse All Tracks\tCtrl+Shift+C"
-msgstr "æºçææè»é(&C)\tCtrl+Shift+C"
+msgid "&Collapse All Tracks"
+msgstr "æºçææè»é(&C)"
#: Menus.cpp:507
-msgid "E&xpand All Tracks\tCtrl+Shift+X"
-msgstr "å±éææè»é\tCtrl+Shift+X"
+msgid "E&xpand All Tracks"
+msgstr "å±éææè»é"
#: Menus.cpp:510
msgid "&Show Clipping"
@@ -1953,40 +1833,40 @@ msgstr "!ç°¡ææª¢è¦"
msgid "T&ransport"
msgstr ""
-#: Menus.cpp:591
-msgid "Play\tSpace"
-msgstr ""
+#: toolbars/ControlToolBar.cpp:177
+msgid "Play"
+msgstr "ææ¾"
#: Menus.cpp:593
-msgid "&Loop Play\tShift+Space"
+msgid "&Loop Play"
msgstr ""
#: Menus.cpp:593
-msgid "&Pause\tP"
+msgid "&Pause"
msgstr ""
#: Menus.cpp:596
-msgid "&Stop\tSpace"
+msgid "&Stop"
msgstr ""
#: Menus.cpp:799
-msgid "Skip to Start\tHome"
-msgstr "è·³è³èµ·å§é»\tHome"
+msgid "Skip to Start"
+msgstr "è·³è³èµ·å§é»"
#: Menus.cpp:800
-msgid "Skip to End\tEnd"
-msgstr "è·³è³çµæé»\tEnd"
+msgid "Skip to End"
+msgstr "è·³è³çµæé»"
#: Menus.cpp:600
-msgid "&Record\tR"
+msgid "&Record"
msgstr ""
#: Menus.cpp:602
-msgid "&Timer Record...\tShift+T"
+msgid "&Timer Record..."
msgstr ""
#: Menus.cpp:604
-msgid "Append Record\tShift+R"
+msgid "Append Record"
msgstr ""
#: Menus.cpp:607
@@ -2014,15 +1894,14 @@ msgid "Add &New"
msgstr ""
#: Menus.cpp:553
-msgid "&Audio Track\tCtrl+Shift+N"
-msgstr "é³è»(&A)\tCtrl+Shift+N"
+msgid "&Audio Track"
+msgstr "é³è»(&A)"
#: Menus.cpp:554
msgid "&Stereo Track"
msgstr "ç«é«è²é³è»(&S)"
-#: Menus.cpp:556
-#: TimeTrack.cpp:44
+#: Menus.cpp:556 TimeTrack.cpp:44
msgid "&Time Track"
msgstr "æéè»(&T)"
@@ -2031,8 +1910,8 @@ msgid "Mi&x and Render"
msgstr "æ··é³ä¸å·è¡(&X)"
#: Menus.cpp:572
-msgid "Mix and Render to New Track\tCtrl+Shift+M"
-msgstr "æ··é³è³æ°è»é\tCtrl+Shift+X"
+msgid "Mix and Render to New Track"
+msgstr "æ··é³è³æ°è»é"
#: Menus.cpp:576
msgid "&Resample..."
@@ -2043,12 +1922,12 @@ msgid "Remo&ve Tracks"
msgstr "ç§»é¤è»é(&V)"
#: Menus.cpp:592
-msgid "&Mute All Tracks\tCtrl+U"
-msgstr "ææè»ééé³(&M)\tCtrl+U"
+msgid "&Mute All Tracks"
+msgstr "ææè»ééé³(&M)"
#: Menus.cpp:593
-msgid "&UnMute All Tracks\tCtrl+Shift+U"
-msgstr "ææè»éä¸éé³(&U)\tCtrl+Shift+U"
+msgid "&UnMute All Tracks"
+msgstr "ææè»éä¸éé³(&U)"
#: Menus.cpp:597
msgid "Align with &Zero"
@@ -2094,17 +1973,17 @@ msgstr ""
msgid "Synchronize MIDI with Audio"
msgstr ""
-#: Menus.cpp:706
-msgid "Link Audio and Label Tracks"
+#: Menus.cpp:686
+msgid "&Link Audio and Label Tracks"
msgstr ""
-#: Menus.cpp:623
-msgid "Add &Label At Selection\tCtrl+B"
-msgstr "å¨é¸åç¯åå 䏿¨ç±¤(&L)\tCtrl+B"
+#: Menus.cpp:690
+msgid "Add Label At &Selection"
+msgstr ""
#: Menus.cpp:624
-msgid "Add Label At &Playback Position\tCtrl+M"
-msgstr "卿æ¾é»å 䏿¨ç±¤(&P)\tCtrl+M"
+msgid "Add Label At &Playback Position"
+msgstr "卿æ¾é»å 䏿¨ç±¤(&P)"
#: Menus.cpp:716
msgid "S&ort tracks"
@@ -2130,20 +2009,19 @@ msgstr ""
msgid "Effe&ct"
msgstr "ææ(&C)"
-#: Menus.cpp:670
-msgid "Repeat Last Effect\tCtrl+R"
-msgstr "éè¤æè¿ä¸æ¬¡ææ\tCtrl+R"
-
#: Menus.cpp:702
msgid "&Analyze"
msgstr "åæ(&A)"
+#: Menus.cpp:874
+msgid "Contrast..."
+msgstr ""
+
#: Menus.cpp:704
msgid "Plot Spectrum..."
msgstr "æç¹ªé »èâ¦"
-#: Menus.cpp:737
-#: Menus.cpp:740
+#: Menus.cpp:737 Menus.cpp:740
msgid "&Help"
msgstr "說æ(&H)"
@@ -2155,9 +2033,9 @@ msgstr "éæ¼Audacityæ¸
é¤äººè²(&A)..."
msgid "&Show Welcome Message..."
msgstr "顯示æ¡è¿è¨æ¯(&S)â¦"
-#: Menus.cpp:748
-msgid "&Index..."
-msgstr "ç´¢å¼(&I)..."
+#: Menus.cpp:958
+msgid "&Help..."
+msgstr ""
#: Menus.cpp:959
msgid "Show &Log..."
@@ -2175,181 +2053,149 @@ msgstr "å·è¡Benchmark(&R)..."
msgid "&Audio Device Info..."
msgstr "é³è¨è£ç½®è³è¨(&A)â¦"
-#: Menus.cpp:983
-msgid "Cycle backward through toolbars and Track View\tCtrl+Shift+F6"
+#: Menus.cpp:986
+msgid "Move backward from toolbars to tracks"
msgstr ""
-#: Menus.cpp:984
-msgid "Cycle forward through toolbars and Track View\tCtrl+F6"
+#: Menus.cpp:987
+msgid "Move forward from toolbars to tracks"
msgstr ""
#: Menus.cpp:774
-msgid "Selection Tool\tF1"
-msgstr "é¸åå·¥å
·\tF1"
+msgid "Selection Tool"
+msgstr "é¸åå·¥å
·"
#: Menus.cpp:775
-msgid "Envelope Tool\tF2"
-msgstr "æ³¢å°å·¥å
·\tF2"
+msgid "Envelope Tool"
+msgstr "æ³¢å°å·¥å
·"
#: Menus.cpp:776
-msgid "Draw Tool\tF3"
-msgstr "ææå·¥å
·\tF3"
+msgid "Draw Tool"
+msgstr "ææå·¥å
·"
#: Menus.cpp:777
-msgid "Zoom Tool\tF4"
-msgstr "縮æ¾å·¥å
·\tF4"
+msgid "Zoom Tool"
+msgstr "縮æ¾å·¥å
·"
#: Menus.cpp:778
-msgid "Time Shift Tool\tF5"
-msgstr "æéç§»ä½å·¥å
·\tF5"
+msgid "Time Shift Tool"
+msgstr "æéç§»ä½å·¥å
·"
#: Menus.cpp:779
-msgid "Multi Tool\tF6"
-msgstr "è¤åå·¥å
·\tF6"
+msgid "Multi Tool"
+msgstr "è¤åå·¥å
·"
#: Menus.cpp:781
-msgid "Next Tool\tD"
-msgstr "\"ä¸ä¸å(Next)\"å·¥å
·\tD"
+msgid "Next Tool"
+msgstr "\"ä¸ä¸å(Next)\"å·¥å
·"
#: Menus.cpp:782
-msgid "Previous Tool\tA"
-msgstr "ä¸ä¸åå·¥å
·\tA"
+msgid "Previous Tool"
+msgstr "ä¸ä¸åå·¥å
·"
#: Menus.cpp:997
-msgid "Play/Stop\tSpace"
+msgid "Play/Stop"
msgstr ""
-#: Menus.cpp:785
-msgid "Stop\tS"
-msgstr "忢\tS"
-
-#: Menus.cpp:786
-msgid "Pause\tP"
-msgstr "æ«å\tP"
-
-#: Menus.cpp:787
-msgid "Record\tR"
-msgstr "éé³\tR"
-
-#: Menus.cpp:788
-msgid "Record Append\tShift+R"
-msgstr "éå éé³\tShift+R"
-
#: Menus.cpp:790
-msgid "Play/Stop and Set Cursor\tShift+A"
-msgstr "ææ¾/忢䏦è¨å®æ¸¸æ¨\tShift+A"
+msgid "Play/Stop and Set Cursor"
+msgstr "ææ¾/忢䏦è¨å®æ¸¸æ¨"
#: Menus.cpp:793
-msgid "Play One Second\t1"
-msgstr "ææ¾ä¸ç§\t1"
+msgid "Play One Second"
+msgstr "ææ¾ä¸ç§"
#: Menus.cpp:794
-msgid "Play To Selection\tB"
-msgstr "ææ¾è³é¸åé¸å\tB"
-
-#: Menus.cpp:795
-msgid "Play Looped\tL"
-msgstr "å¾ªç°ææ¾\tL"
-
-#: Menus.cpp:1009
-msgid "Play Looped\tShift+Space"
-msgstr ""
+msgid "Play To Selection"
+msgstr "ææ¾è³é¸åé¸å"
#: Menus.cpp:797
-msgid "Play Cut Preview\tC"
-msgstr "ææ¾åªè¼¯è©¦è½\tC"
+msgid "Play Cut Preview"
+msgstr "ææ¾åªè¼¯è©¦è½"
#: Menus.cpp:802
-msgid "Selection to Start\tShift+Home"
-msgstr "ç§»è³èµ·å§é»\tShift+Home"
+msgid "Selection to Start"
+msgstr "ç§»è³èµ·å§é»"
#: Menus.cpp:803
-msgid "Selection to End\tShift+End"
-msgstr "ç§»è³çµæé»\tShift+End"
+msgid "Selection to End"
+msgstr "ç§»è³çµæé»"
#: Menus.cpp:805
-msgid "DeleteKey\tBackspace"
-msgstr "åªé¤éµ\tBackspace"
+msgid "DeleteKey"
+msgstr "åªé¤éµ"
#: Menus.cpp:810
-msgid "DeleteKey2\tDelete"
-msgstr "åªé¤éµäº\tDelete"
+msgid "DeleteKey2"
+msgstr "åªé¤éµäº"
-#: Menus.cpp:816
-msgid "Seek left short period during playback\tLeft"
-msgstr "å¨ææ¾æå左尿¾ççæ®µ\tLeft"
+#: Menus.cpp:1018
+msgid "Short seek left during playback"
+msgstr ""
-#: Menus.cpp:817
-msgid "Seek right short period during playback\tRight"
-msgstr "å¨ææ¾æåå³å°æ¾ççæ®µ\tRight"
+#: Menus.cpp:1019
+msgid "Short seek right during playback"
+msgstr ""
-#: Menus.cpp:818
-msgid "Seek left long period during playback\tShift+Left"
-msgstr "å¨ææ¾æå左尿¾é·ç段\tShift+Left"
+#: Menus.cpp:1020
+msgid "Long seek left during playback"
+msgstr ""
-#: Menus.cpp:819
-msgid "Seek right long period during playback\tShift+Right"
-msgstr "å¨ææ¾æåå³å°æ¾é·ç段\tShift+Right"
+#: Menus.cpp:1021
+msgid "Long Seek right during playback"
+msgstr ""
#: Menus.cpp:823
-msgid "Move Focus to Previous Track\tUp"
-msgstr "鏿åä¸åé³è»\tUp"
+msgid "Move Focus to Previous Track"
+msgstr "鏿åä¸åé³è»"
-#: Menus.cpp:824
-msgid "Move Focus to Previous and Change Selection\tShift+Up"
-msgstr "ç§»åèç¦é³è»è³åä¸åé³è»ä¸¦è®æ´é¸æé³è»\tShift+Up"
+#: Menus.cpp:1027
+msgid "Move Focus to Previous and Select"
+msgstr ""
#: Menus.cpp:825
-msgid "Move Focus to Next Track\tDown"
-msgstr "åä¸ç§»åèç¦é³è»\tDown"
+msgid "Move Focus to Next Track"
+msgstr "åä¸ç§»åèç¦é³è»"
-#: Menus.cpp:826
-msgid "Move Focus to Next and Change Selection\tShift+Down"
-msgstr "ç§»åèç¦é³è»è³ä¸ä¸åé³è»ä¸¦è®æ´é¸æé³è»\tShift+Down"
+#: Menus.cpp:1029
+msgid "Move Focus to Next and Select"
+msgstr ""
#: Menus.cpp:827
-msgid "Toggle Focused Track\tReturn"
-msgstr "觸ç¼èç¦é³è»\tENTER"
-
-#: Menus.cpp:828
-msgid "Toggle Focused Track\tNUMPAD_ENTER"
-msgstr "觸ç¼èç¦é³è»\tæ¸åç¤_ENTER"
-
-#: Menus.cpp:1042
-msgid "Toggle Focused Track\tCtrl+Space"
-msgstr ""
+msgid "Toggle Focused Track"
+msgstr "觸ç¼èç¦é³è»"
#: Menus.cpp:831
-msgid "Cursor Left\tLeft"
-msgstr "游æ¨å·¦ç§»\tLeft"
+msgid "Cursor Left"
+msgstr "游æ¨å·¦ç§»"
#: Menus.cpp:832
-msgid "Cursor Right\tRight"
-msgstr "游æ¨å³ç§»\tRight"
+msgid "Cursor Right"
+msgstr "游æ¨å³ç§»"
#: Menus.cpp:833
-msgid "Cursor Short Jump Left\t,"
-msgstr "游æ¨ç左移\tLeft,"
+msgid "Cursor Short Jump Left"
+msgstr "游æ¨ç左移"
#: Menus.cpp:834
-msgid "Cursor Short Jump Right\t."
-msgstr "游æ¨çå³ç§»\tRight."
+msgid "Cursor Short Jump Right"
+msgstr "游æ¨çå³ç§»"
#: Menus.cpp:835
-msgid "Cursor Long Jump Left\tShift+,"
-msgstr "游æ¨é·å·¦ç§»\tShift+,"
+msgid "Cursor Long Jump Left"
+msgstr "游æ¨é·å·¦ç§»"
#: Menus.cpp:836
-msgid "Cursor Long Jump Right\tShift+."
-msgstr "游æ¨é·å³ç§»\tShift+."
+msgid "Cursor Long Jump Right"
+msgstr "游æ¨é·å³ç§»"
#: Menus.cpp:838
-msgid "Selection Extend Left\tShift+Left"
-msgstr "é¸å左端延伸\tShift+Left"
+msgid "Selection Extend Left"
+msgstr "é¸å左端延伸"
#: Menus.cpp:839
-msgid "Selection Extend Right\tShift+Right"
-msgstr "é¸åå³ç«¯å»¶ä¼¸\tShift+Right"
+msgid "Selection Extend Right"
+msgstr "é¸åå³ç«¯å»¶ä¼¸"
#: Menus.cpp:841
msgid "Set (or Extend) Left Selection"
@@ -2360,52 +2206,52 @@ msgid "Set (or Extend) Right Selection"
msgstr "è¨å®(å»¶å±)é¸åç¯åå³éç"
#: Menus.cpp:844
-msgid "Selection Contract Left\tCtrl+Shift+Right"
-msgstr "é¸å左端縮æ¸\tCtrl+Shift+Right"
+msgid "Selection Contract Left"
+msgstr "é¸å左端縮æ¸"
#: Menus.cpp:845
-msgid "Selection Contract Right\tCtrl+Shift+Left"
-msgstr "é¸åå³ç«¯ç¸®æ¸\tCtrl+Shift+Left"
+msgid "Selection Contract Right"
+msgstr "é¸åå³ç«¯ç¸®æ¸"
#: Menus.cpp:847
-msgid "Change pan on focused track\tShift+P"
-msgstr "è®æ´èç¦é³è»ç¯©é¸\tShift+P"
+msgid "Change pan on focused track"
+msgstr "è®æ´èç¦é³è»ç¯©é¸"
#: Menus.cpp:848
-msgid "Pan left on focused track\tAlt+Shift+Left"
-msgstr "å左篩é¸èç¦é³è»\tAlt+Shift+Left"
+msgid "Pan left on focused track"
+msgstr "å左篩é¸èç¦é³è»"
#: Menus.cpp:849
-msgid "Pan right on focused track\tAlt+Shift+Right"
-msgstr "åå³ç¯©é¸èç¦é³è»\tAlt+Shift+Right"
+msgid "Pan right on focused track"
+msgstr "åå³ç¯©é¸èç¦é³è»"
#: Menus.cpp:850
-msgid "Change gain on focused track\tShift+G"
-msgstr "æ¹è®èç¦é³è»çå¢ç\tShift+G"
+msgid "Change gain on focused track"
+msgstr "æ¹è®èç¦é³è»çå¢ç"
#: Menus.cpp:851
-msgid "Increase gain on focused track\tAlt+Shift+Up"
-msgstr "å¢å èç¦é³è»çå¢ç\tAlt+Shift+Up"
+msgid "Increase gain on focused track"
+msgstr "å¢å èç¦é³è»çå¢ç"
#: Menus.cpp:852
-msgid "Decrease gain on focused track\tAlt+Shift+Down"
-msgstr "æ¸å°èç¦é³è»çå¢ç\tAlt+Shift+Down"
+msgid "Decrease gain on focused track"
+msgstr "æ¸å°èç¦é³è»çå¢ç"
#: Menus.cpp:853
-msgid "Open menu on focused track\tShift+M"
-msgstr "éåèç¦é³è»é¸å®\tShift+M"
+msgid "Open menu on focused track"
+msgstr "éåèç¦é³è»é¸å®"
#: Menus.cpp:854
-msgid "Mute/Unmute focused track\tShift+U"
-msgstr "è®é¸æé³è»ç¡è²/æè²\tShift+U"
+msgid "Mute/Unmute focused track"
+msgstr "è®é¸æé³è»ç¡è²/æè²"
#: Menus.cpp:855
-msgid "Solo/Unsolo focused track\tShift+S"
-msgstr "è®é¸æé³è»ç¨å±/åå±\tShift+S"
+msgid "Solo/Unsolo focused track"
+msgstr "è®é¸æé³è»ç¨å±/åå±"
#: Menus.cpp:856
-msgid "Close focused track\tShift+C"
-msgstr "éé鏿é³è»\tShift+C"
+msgid "Close focused track"
+msgstr "éé鏿é³è»"
#: Menus.cpp:858
msgid "Snap To On"
@@ -2416,7 +2262,35 @@ msgid "Snap To Off"
msgstr "ééæ»æ£åè½"
#: Menus.cpp:1071
-msgid "Full screen on/off\tF11"
+msgid "Full screen on/off"
+msgstr ""
+
+#: Menus.cpp:1067
+msgid "Adjust output gain"
+msgstr ""
+
+#: Menus.cpp:1068
+msgid "Increase output gain"
+msgstr ""
+
+#: Menus.cpp:1069
+msgid "Decrease output gain"
+msgstr ""
+
+#: Menus.cpp:1070
+msgid "Adjust input gain"
+msgstr ""
+
+#: Menus.cpp:1071
+msgid "Increase input gain"
+msgstr ""
+
+#: Menus.cpp:1072
+msgid "Decrease input gain"
+msgstr ""
+
+#: Menus.cpp:1074
+msgid "Adjust input source"
msgstr ""
#. i18n-hint: This is the name of the menu item on Mac OS X only
@@ -2477,8 +2351,8 @@ msgstr "å¿
é å
é¸åé³è»ã"
#: Menus.cpp:2035
#, c-format
-msgid "Repeat %s\tCtrl+R"
-msgstr "éè¤%s\tCtrl+R"
+msgid "Repeat %s"
+msgstr "éè¤%s"
#: Menus.cpp:2166
msgid "There are no label tracks to export."
@@ -2509,9 +2383,7 @@ msgstr "æ²æå¯å¾©åçæä½"
msgid "Nothing to redo"
msgstr "æ²æå¯éåçæä½"
-#: Menus.cpp:2366
-#: TrackPanel.cpp:605
-#: toolbars/EditToolBar.cpp:133
+#: Menus.cpp:2366 TrackPanel.cpp:605 toolbars/EditToolBar.cpp:133
msgid "Cut"
msgstr "åªä¸"
@@ -2527,10 +2399,7 @@ msgstr "é¸åç¯åè®çºç©ºç½ä¸¦åªä¸"
msgid "Split-cut to the clipboard"
msgstr "é¸åç¯åè®çºç©ºç½ä¸¦åªä¸è³åªè²¼ç°¿"
-#: Menus.cpp:2469
-#: Menus.cpp:2540
-#: Menus.cpp:2634
-#: TrackPanel.cpp:607
+#: Menus.cpp:2469 Menus.cpp:2540 Menus.cpp:2634 TrackPanel.cpp:607
#: toolbars/EditToolBar.cpp:137
msgid "Paste"
msgstr "è²¼ä¸"
@@ -2539,8 +2408,7 @@ msgstr "è²¼ä¸"
msgid "Pasted text from the clipboard"
msgstr "å¾åªè²¼ç°¿è²¼ä¸æå"
-#: Menus.cpp:2540
-#: Menus.cpp:2634
+#: Menus.cpp:2540 Menus.cpp:2634
msgid "Pasted from the clipboard"
msgstr "å¾åªè²¼ç°¿è²¼ä¸"
@@ -2552,8 +2420,7 @@ msgstr ""
msgid "Copying stereo audio into a mono track is not allowed."
msgstr "ä¸å
許å°ç«é«è²é³è¨è¤è£½è³å®è²éé³è»ã"
-#: Menus.cpp:2670
-#: toolbars/EditToolBar.cpp:139
+#: Menus.cpp:2670 toolbars/EditToolBar.cpp:139
msgid "Trim"
msgstr "ä¿çé¸åç¯å"
@@ -2593,8 +2460,7 @@ msgstr "å°ç©ºç½ç¯åè®çºéé³"
msgid "Silenced selected tracks for %.2f seconds at %.2f"
msgstr "使é¸å®é³è»éé³%.2f ç§ï¼ä½ç½®å¨ %.2f ç§è"
-#: Menus.cpp:2771
-#: toolbars/EditToolBar.cpp:141
+#: Menus.cpp:2771 toolbars/EditToolBar.cpp:141
msgid "Silence"
msgstr "éé³"
@@ -2678,8 +2544,7 @@ msgstr "å°æ¨ç±¤éé³ç¯åè®çºç©ºç½"
msgid "Disjoined labeled regions"
msgstr "å°æ¨ç±¤ååéé³ç¯åè®çºç©ºç½"
-#: Menus.cpp:2947
-#: TrackPanel.cpp:6121
+#: Menus.cpp:2947 TrackPanel.cpp:6121
msgid "Split"
msgstr "åé¢"
@@ -2695,15 +2560,6 @@ msgstr "åé¢è³æ°çé³è»"
msgid "Split at labels"
msgstr "ææ¨ç±¤åé¢"
-#: Menus.cpp:3425
-msgid "To plot the spectrum, all selected tracks must be the same sample rate."
-msgstr "çºäºæç¹ªé »èï¼ææé¸å®çé³è»å¿
é å
·æç¸åç忍£é »çã"
-
-#: Menus.cpp:3451
-#, c-format
-msgid "Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."
-msgstr "鏿çè²é³éå¤ãåªæéå§ %.1f ç§çè²é³æè¢«åæã"
-
#: Menus.cpp:3584
#, c-format
msgid "Imported labels from '%s'"
@@ -2742,8 +2598,7 @@ msgstr "æææªæ¡(*)|*"
msgid "Edit the metadata tags"
msgstr "編輯æ¨é æªæ¨ç±¤"
-#: Menus.cpp:3669
-#: export/Export.cpp:298
+#: Menus.cpp:3669 export/Export.cpp:298
msgid "Edit Metadata"
msgstr "編輯æ¨é æª"
@@ -2770,8 +2625,7 @@ msgstr "æ··é³è®%dé³è»è®æä¸åæ°çç«é«è²é³è»"
msgid "Mixed and rendered %d tracks into one new mono track"
msgstr "æ··é³è®%dé³è»è®æä¸åæ°çå®è²éé³è»"
-#: Menus.cpp:3736
-#: Mix.cpp:120
+#: Menus.cpp:3736 Mix.cpp:120
msgid "&Mix and Render"
msgstr "æ··é³ä¸å·è¡(&M)"
@@ -2823,10 +2677,7 @@ msgstr ""
msgid "Created new audio track"
msgstr "å·²æ°å»ºé³è»"
-#: Menus.cpp:3950
-#: Menus.cpp:3973
-#: Menus.cpp:3988
-#: Menus.cpp:4008
+#: Menus.cpp:3950 Menus.cpp:3973 Menus.cpp:3988 Menus.cpp:4008
msgid "New Track"
msgstr "æ°å¢é³è»"
@@ -2862,8 +2713,7 @@ msgstr "å¦åæ¸
é¤äººè²è¨å®æªè³ï¼"
msgid "CleanSpeech Presets (*.csp)|*.csp"
msgstr "æ¸
é¤äººè²è¨å®(*.csp)|*.csp"
-#: Menus.cpp:4123
-#: export/Export.cpp:515
+#: Menus.cpp:4123 export/Export.cpp:515
msgid "Sorry, pathnames longer than 256 characters not supported."
msgstr "æ±æï¼è·¯å¾åä¸è½è¶
é256ååå
ã"
@@ -2871,8 +2721,7 @@ msgstr "æ±æï¼è·¯å¾åä¸è½è¶
é256ååå
ã"
msgid "Problem encountered exporting presets."
msgstr "å¯åºpresetç¼çåé¡ã"
-#: Menus.cpp:4170
-#: export/Export.cpp:408
+#: Menus.cpp:4170 export/Export.cpp:408
msgid "Unable to export"
msgstr "ç¡æ³å¯åº"
@@ -2884,9 +2733,7 @@ msgstr "ç§»é¤é³è»"
msgid "Removed audio track(s)"
msgstr "ç§»é¤é³è¨é³è»"
-#: Menus.cpp:4508
-#: Menus.cpp:4527
-#: export/ExportMP3.cpp:1926
+#: Menus.cpp:4508 Menus.cpp:4527 export/ExportMP3.cpp:1926
msgid "Resample"
msgstr "é忍£"
@@ -2911,8 +2758,7 @@ msgstr "鿰忍£é³è»"
msgid "Resampled audio track(s)"
msgstr "鿰忍£é³è¨é³è»"
-#: Mix.cpp:94
-#: Mix.cpp:101
+#: Mix.cpp:94 Mix.cpp:101
msgid "Mix"
msgstr "æ··é³"
@@ -2932,6 +2778,10 @@ msgstr "åå°ç¼çé¯èª¤ã"
msgid "Print"
msgstr "åå°"
+#: Project.cpp:669
+msgid "Repeat Last Effect"
+msgstr ""
+
#: Project.cpp:636
msgid "Main Mix"
msgstr "主混é³"
@@ -2945,14 +2795,11 @@ msgstr "æ¡è¿ä½¿ç¨Audacity%sç"
msgid "(Recovered)"
msgstr "(å復)"
-#: Project.cpp:1482
-#: TrackPanel.cpp:804
-#: toolbars/ControlToolBar.cpp:191
+#: Menus.cpp:787
msgid "Record"
msgstr "éé³"
-#: Project.cpp:1482
-#: TrackPanel.cpp:804
+#: Project.cpp:1482 TrackPanel.cpp:804
msgid "Recorded Audio"
msgstr "å·²é製é³è¨"
@@ -2979,9 +2826,9 @@ msgstr "\n"
msgid "Save changes?"
msgstr "å²åè®æ´ï¼"
-#: Project.cpp:1694
-msgid "All files|*.*|All supported files|"
-msgstr "æææªæ¡|*.*|æææ¯æ´æªæ¡|"
+#: Project.cpp:1925
+msgid "All files|*|All supported files|"
+msgstr ""
#: Project.cpp:1719
msgid "Select one or more audio files..."
@@ -2991,8 +2838,7 @@ msgstr "é¸åä¸åæå¤åè²é³æªæ¡..."
msgid "Audacity projects|*.aup|"
msgstr "Audacityæé³å·¥ç¨æªæ¡ |*.aup|"
-#: Project.cpp:1799
-#: Project.cpp:2186
+#: Project.cpp:1799 Project.cpp:2186
#, c-format
msgid "This file was saved by Audacity %s, a much\n"
"older version. The format has changed.\n"
@@ -3012,13 +2858,22 @@ msgstr "æ¤æªæ¡æ ¼å¼æ¯ç±é常èçAudacity %så²åçï¼èæ¤æ ¼å¼\n"
msgid "1.0 or earlier"
msgstr "1.0æä¹å¾"
-#: Project.cpp:1806
-#: Project.cpp:2198
+#: Project.cpp:1806 Project.cpp:2198
msgid "Opening old project file"
msgstr "éåå
åå·¥ç¨æªæ¡"
-#: Project.cpp:1832
-#: Project.cpp:1840
+#: Project.cpp:2073
+msgid "You are trying to open an automatically created backup file.\n"
+"Doing this may result in severe data loss.\n"
+"\n"
+"Please open the actual Audacity project file instead."
+msgstr ""
+
+#: Project.cpp:2074
+msgid "Backup file detected"
+msgstr ""
+
+#: Project.cpp:1832 Project.cpp:1840
msgid "Error opening file"
msgstr "éåæªæ¡é¯èª¤"
@@ -3053,8 +2908,7 @@ msgstr "å復"
msgid "Project checker repaired file"
msgstr "å·¥ç¨æª¢æ¥å¨ä¿®å¾©æªæ¡"
-#: Project.cpp:2001
-#: effects/Repair.h:29
+#: Project.cpp:2001 effects/Repair.h:29
msgid "Repair"
msgstr "修復"
@@ -3076,18 +2930,15 @@ msgstr "éåæªæ¡æ¯ç±Audacity %s å²åçã\n"
msgid "Can't open project file"
msgstr "ç¡æ³éåæé³å·¥ç¨æªæ¡ã"
-#: Project.cpp:2193
+#: Project.cpp:2484
#, c-format
msgid "This file was saved by Audacity %s.\n"
-"You can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n"
-"\n"
-"Open this file now?"
-msgstr "æ¤æªæ¡æ ¼å¼æ¯ç±èçAudacity %så²åçã\n"
"\n"
-"ä½ å¯ä»¥éåæ¤æªæ¡ï¼ä½è¥æ¨ä½¿ç¨ç®åçæ¬çAudacityå²åæªæ¡å¾ï¼\n"
-"æ¨å°ç¡æ³ä½¿ç¨èççAudacityä¾éåã\n"
+"Audacity can open and save this file, but saving it in this version\n"
+"will then prevent any 1.2 or earlier version opening it.\n"
"\n"
-"æ¨è¦ç«å»éåæ¤æªæ¡åï¼"
+"Open this file now?"
+msgstr ""
#: Project.cpp:2537
msgid "Your project is now empty.\n"
@@ -3104,17 +2955,22 @@ msgstr ""
msgid "Warning empty project"
msgstr ""
-#: Project.cpp:2591
+#: Project.cpp:2792
#, c-format
msgid "Could not save project. Perhaps %s \n"
-"is not writeable or the disk is full."
+"is not writable or the disk is full."
msgstr ""
-#: Project.cpp:2428
-#: Project.cpp:2442
+#: Project.cpp:2428 Project.cpp:2442
msgid "Error saving project"
msgstr "å²åæé³å·¥ç¨é¯èª¤"
+#: Project.cpp:2818 Project.cpp:3919 Tags.cpp:1203
+#: effects/Equalization.cpp:1098
+#, c-format
+msgid "Couldn't write to file \"%s\": %s"
+msgstr ""
+
#: Project.cpp:2504
#, c-format
msgid "Saved %s"
@@ -3125,16 +2981,12 @@ msgstr "%så·²å²å"
msgid "Imported '%s'"
msgstr "'%s'å·²å¯å
¥"
-#: Menus.cpp:3649
-#: Project.cpp:2587
-#: Project.cpp:2612
-#: import/ImportPCM.cpp:440
+#: Menus.cpp:3649 Project.cpp:2587 Project.cpp:2612 import/ImportPCM.cpp:440
#: import/ImportPCM.cpp:484
msgid "Import"
msgstr "å¯å
¥"
-#: Project.cpp:2639
-#: Project.cpp:2647
+#: Project.cpp:2639 Project.cpp:2647
msgid "Error importing"
msgstr "å¯å
¥é¯èª¤"
@@ -3177,8 +3029,7 @@ msgstr "å·²æ°å»ºå°æ¡"
msgid "Deleted %.2f seconds at t=%.2f"
msgstr "åªé¤ %.2f ç§ (ä½ç½® t=%.2f)"
-#: Project.cpp:2859
-#: effects/Equalization.cpp:1262
+#: Project.cpp:2859 effects/Equalization.cpp:1262
#: effects/Equalization.cpp:2593
msgid "Delete"
msgstr "åªé¤"
@@ -3259,8 +3110,7 @@ msgstr "Libsamplerate(忍£ç庫ï¼Erik de Castro Lopoæä¾)"
msgid "Libsamplerate error: %d\n"
msgstr "Libsamplerate é¯èª¤ï¼%d\n"
-#: Resample.cpp:240
-#: Resample.cpp:250
+#: Resample.cpp:240 Resample.cpp:250
msgid "Resampling disabled."
msgstr "åç¨é忍£ã"
@@ -3279,6 +3129,163 @@ msgstr "24-bit PCM"
msgid "32-bit float"
msgstr "32-bit float"
+#: Screenshot.cpp:279
+msgid "Screen Capture Frame"
+msgstr ""
+
+#: Screenshot.cpp:316
+msgid "Choose location to save files"
+msgstr ""
+
+#: Screenshot.cpp:326
+msgid "Save images to:"
+msgstr ""
+
+#: export/ExportMultiple.cpp:216 prefs/DirectoriesPrefs.cpp:92
+msgid "Choose..."
+msgstr "鏿..."
+
+#: Screenshot.cpp:334
+msgid "Capture entire window or screen"
+msgstr ""
+
+#: Screenshot.cpp:338
+msgid "Resize Small"
+msgstr ""
+
+#: Screenshot.cpp:339
+msgid "Resize Large"
+msgstr ""
+
+#: Screenshot.cpp:342
+msgid "Blue Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:346
+msgid "White Bkgnd"
+msgstr ""
+
+#: Screenshot.cpp:353
+msgid "Capture Window Only"
+msgstr ""
+
+#: Screenshot.cpp:354
+msgid "Capture Full Window"
+msgstr ""
+
+#: Screenshot.cpp:355
+msgid "Capture Window Plus"
+msgstr ""
+
+#: Screenshot.cpp:361
+msgid "Capture Full Screen"
+msgstr ""
+
+#: Screenshot.cpp:368
+msgid "Wait 5 seconds and capture frontmost window/dialog"
+msgstr ""
+
+#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
+msgid "false"
+msgstr "é¯èª¤"
+
+#: Screenshot.cpp:375
+msgid "Capture part of a project window"
+msgstr ""
+
+#: Screenshot.cpp:379
+msgid "All Toolbars"
+msgstr ""
+
+#: Screenshot.cpp:380
+msgid "SelectionBar"
+msgstr ""
+
+#: toolbars/ToolsToolBar.cpp:90
+msgid "Tools"
+msgstr "å·¥å
·"
+
+#: toolbars/ControlToolBar.cpp:82
+msgid "Control"
+msgstr "æ§å¶"
+
+#: toolbars/MixerToolBar.cpp:60
+msgid "Mixer"
+msgstr "æ··é³å·¥å
·"
+
+#: toolbars/MeterToolBar.cpp:50
+msgid "Meter"
+msgstr "å表工å
·å"
+
+#: Screenshot.cpp:390 toolbars/EditToolBar.cpp:76 toolbars/EditToolBar.cpp:181
+msgid "Edit"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:119 prefs/AudioIOPrefs.cpp:137
+#: toolbars/DeviceToolBar.cpp:57
+msgid "Device"
+msgstr "è£ç½®"
+
+#: toolbars/TranscriptionToolBar.cpp:84
+msgid "Transcription"
+msgstr "éé³"
+
+#: TrackPanel.cpp:464 TrackPanel.cpp:465
+msgid "Track Panel"
+msgstr "é³è»é¢æ¿"
+
+#: Screenshot.cpp:399
+msgid "Ruler"
+msgstr ""
+
+#: export/ExportMultiple.cpp:258
+msgid "Tracks"
+msgstr "é³è»"
+
+#: Screenshot.cpp:401
+msgid "First Track"
+msgstr ""
+
+#: Screenshot.cpp:402
+msgid "Second Track"
+msgstr ""
+
+#: Screenshot.cpp:408
+msgid "Scale"
+msgstr ""
+
+#: Screenshot.cpp:412
+msgid "One Sec"
+msgstr ""
+
+#: Screenshot.cpp:413
+msgid "Ten Sec"
+msgstr ""
+
+#: Screenshot.cpp:414
+msgid "One Min"
+msgstr ""
+
+#: Screenshot.cpp:415
+msgid "Five Min"
+msgstr ""
+
+#: Screenshot.cpp:416
+msgid "One Hour"
+msgstr ""
+
+#: Screenshot.cpp:422
+msgid "Short Tracks"
+msgstr ""
+
+#: Screenshot.cpp:423
+msgid "Medium Tracks"
+msgstr ""
+
+#: Screenshot.cpp:424
+msgid "Tall Tracks"
+msgstr ""
+
#: Screenshot.cpp:384
msgid "Saved "
msgstr "å·²å²å"
@@ -3287,14 +3294,15 @@ msgstr "å·²å²å"
msgid "Error trying to save file: "
msgstr "å²åæªæ¡é¯èª¤ï¼"
-#: Sequence.cpp:732
-#: Sequence.cpp:742
-#: Sequence.cpp:749
+#: Screenshot.cpp:673
+msgid "Choose a location to save screenshot images"
+msgstr ""
+
+#: Sequence.cpp:732 Sequence.cpp:742 Sequence.cpp:749
msgid "Gap detected in project file\n"
msgstr "å·¥ç¨æªæ¡åµæ¸¬åºç¼ºå£\n"
-#: ShuttleGui.cpp:1852
-#: effects/Effect.cpp:342
+#: ShuttleGui.cpp:1852 effects/Effect.cpp:342
#: effects/audiounits/AudioUnitEffect.cpp:872
msgid "Pre&view"
msgstr "試è½(&V)"
@@ -3335,8 +3343,7 @@ msgstr "å°è¼¯æ¨é¡"
msgid "Track Number"
msgstr "é³è»ç·¨è"
-#: Tags.cpp:633
-#: Tags.cpp:2138
+#: Tags.cpp:633 Tags.cpp:2138
msgid "Year"
msgstr "年份"
@@ -3344,9 +3351,7 @@ msgstr "年份"
msgid "Genre"
msgstr "樣å¼"
-#: Tags.cpp:635
-#: Tags.cpp:2148
-#: prefs/MousePrefs.cpp:96
+#: Tags.cpp:635 Tags.cpp:2148 prefs/MousePrefs.cpp:96
msgid "Comments"
msgstr "註解"
@@ -3362,9 +3367,7 @@ msgstr "æ¨ç±¤å稱"
msgid "Tag Value"
msgstr "æ¨ç±¤å¼"
-#: Tags.cpp:818
-#: Tags.cpp:1476
-#: prefs/KeyConfigPrefs.cpp:116
+#: Tags.cpp:818 Tags.cpp:1476 prefs/KeyConfigPrefs.cpp:116
msgid "&Clear"
msgstr "æ¸
é¤(&C)"
@@ -3380,71 +3383,42 @@ msgstr ""
msgid "Rese&t..."
msgstr ""
-#: Tags.cpp:834
-#: Tags.cpp:1460
-#: Tags.cpp:1988
+#: Tags.cpp:834 Tags.cpp:1460 Tags.cpp:1988
msgid "Template"
msgstr "樣æ¿"
-#: Tags.cpp:838
-#: Tags.cpp:1464
-#: Tags.cpp:1992
-#: prefs/KeyConfigPrefs.cpp:126
+#: Tags.cpp:838 Tags.cpp:1464 Tags.cpp:1992 prefs/KeyConfigPrefs.cpp:126
msgid "&Load..."
msgstr "è¼å
¥(&L)..."
-#: Tags.cpp:839
-#: Tags.cpp:1465
-#: Tags.cpp:1993
-#: prefs/KeyConfigPrefs.cpp:125
+#: Tags.cpp:839 Tags.cpp:1465 Tags.cpp:1993 prefs/KeyConfigPrefs.cpp:125
msgid "&Save..."
msgstr "å²å(&S)..."
-#: Tags.cpp:841
-#: Tags.cpp:1467
-#: Tags.cpp:1995
+#: Tags.cpp:841 Tags.cpp:1467 Tags.cpp:1995
msgid "S&et Default"
msgstr "åå°é è¨å¼(&E)"
-#: Tags.cpp:991
-#: Tags.cpp:1630
-#: Tags.cpp:2359
+#: Tags.cpp:991 Tags.cpp:1630 Tags.cpp:2359
msgid "Edit Genres"
msgstr "編輯樣å¼"
-#: Tags.cpp:1024
-#: Tags.cpp:1036
-#: Tags.cpp:1052
-#: Tags.cpp:1065
-#: Tags.cpp:1668
-#: Tags.cpp:1680
-#: Tags.cpp:1696
-#: Tags.cpp:1709
-#: Tags.cpp:2402
-#: Tags.cpp:2414
-#: Tags.cpp:2430
-#: Tags.cpp:2443
+#: Tags.cpp:1024 Tags.cpp:1036 Tags.cpp:1052 Tags.cpp:1065 Tags.cpp:1668
+#: Tags.cpp:1680 Tags.cpp:1696 Tags.cpp:1709 Tags.cpp:2402 Tags.cpp:2414
+#: Tags.cpp:2430 Tags.cpp:2443
msgid "Reset Genres"
msgstr "éè¨æ¨£å¼"
-#: Tags.cpp:1024
-#: Tags.cpp:1065
-#: Tags.cpp:1668
-#: Tags.cpp:1709
-#: Tags.cpp:2402
+#: Tags.cpp:1024 Tags.cpp:1065 Tags.cpp:1668 Tags.cpp:1709 Tags.cpp:2402
#: Tags.cpp:2443
msgid "Unable to save genre file."
msgstr "ç¡æ³å²åæ¨£å¼æªæ¡ã"
-#: Tags.cpp:1035
-#: Tags.cpp:1679
-#: Tags.cpp:2413
+#: Tags.cpp:1035 Tags.cpp:1679 Tags.cpp:2413
msgid "Are you sure you want to reset the genre list to defaults?"
msgstr "æ¨ç¢ºèªè¦å°æ¨£å¼æ¸
å®å復çºé è¨å¼ï¼"
-#: Tags.cpp:1052
-#: Tags.cpp:1696
-#: Tags.cpp:2430
+#: Tags.cpp:1052 Tags.cpp:1696 Tags.cpp:2430
msgid "Unable to open genre file."
msgstr "ç¡æ³é忍£å¼æªæ¡ã"
@@ -3452,21 +3426,19 @@ msgstr "ç¡æ³é忍£å¼æªæ¡ã"
msgid "Load Metadata As:"
msgstr ""
-#: Tags.cpp:1112
-#: Tags.cpp:1763
-#: Tags.cpp:2486
+#: Tags.cpp:1112 Tags.cpp:1763 Tags.cpp:2486
msgid "Error loading metadata"
msgstr "è¼å
¥æ¨é æªé¯èª¤"
-#: Tags.cpp:1087
-#: Tags.cpp:1141
-#: Tags.cpp:1742
-#: Tags.cpp:1778
-#: Tags.cpp:2465
+#: Tags.cpp:1087 Tags.cpp:1141 Tags.cpp:1742 Tags.cpp:1778 Tags.cpp:2465
#: Tags.cpp:2501
msgid "Save Metadata As:"
msgstr "å¦åæ¨é æªçºï¼"
+#: Tags.cpp:1205
+msgid "Error saving tags file"
+msgstr ""
+
#: Theme.cpp:638
#, c-format
msgid "Audacity could not write file:\n"
@@ -3499,8 +3471,7 @@ msgstr "Audacityç¡æ³æ¾å°æªæ¡ï¼\n"
" %s.\n"
"æ²æè¼å
¥ä½æ¯ã"
-#: Theme.cpp:807
-#: Theme.cpp:896
+#: Theme.cpp:807 Theme.cpp:896
#, c-format
msgid "Audacity could not load file:\n"
" %s.\n"
@@ -3522,8 +3493,7 @@ msgid "None of the expected theme component files\n"
" %s."
msgstr "å¨%sæ¾ä¸å°æ³è¦ç使¯ã"
-#: Theme.cpp:942
-#: effects/NoiseRemoval.cpp:173
+#: Theme.cpp:942 effects/NoiseRemoval.cpp:173
#, c-format
msgid "Could not create directory:\n"
" %s"
@@ -3545,12 +3515,8 @@ msgid "All required files in:\n"
msgstr "å¨%sæéçæªæ¡\n"
"å·²ç¶æºå好äºã"
-#: SmartRecordDialog.cpp:226
-#: SmartRecordDialog.cpp:307
-#: TimeDialog.cpp:53
-#: effects/Noise.cpp:235
-#: effects/ToneGen.cpp:329
-#: effects/ToneGen.cpp:374
+#: SmartRecordDialog.cpp:226 SmartRecordDialog.cpp:307 TimeDialog.cpp:53
+#: effects/Noise.cpp:235 effects/ToneGen.cpp:329 effects/ToneGen.cpp:374
msgid "Duration"
msgstr "æçºæé"
@@ -3558,6 +3524,14 @@ msgstr "æçºæé"
msgid "Audacity Timer Record"
msgstr "Audacityé ç´éé³"
+#: TimerRecordDialog.cpp:205
+msgid "Duration is zero. Nothing will be recorded."
+msgstr ""
+
+#: TimerRecordDialog.cpp:206
+msgid "Error in Duration"
+msgstr ""
+
#: SmartRecordDialog.cpp:223
msgid "Recording start"
msgstr "éé³éå§"
@@ -3597,40 +3571,23 @@ msgstr "çå¾
éå§éé³ï¼éå§æ¼%s.\n"
msgid "Audacity Timer Record - Waiting for Start"
msgstr ""
-#: TrackPanel.cpp:464
-#: TrackPanel.cpp:465
-msgid "Track Panel"
-msgstr "é³è»é¢æ¿"
-
-#: TrackPanel.cpp:548
-#: export/ExportPCM.cpp:133
-#: prefs/QualityPrefs.cpp:97
+#: TrackPanel.cpp:548 export/ExportPCM.cpp:133 prefs/QualityPrefs.cpp:97
msgid "Other..."
msgstr "å
¶å®..."
-#: TrackPanel.cpp:556
-#: TrackPanel.cpp:580
-#: TrackPanel.cpp:589
-#: TrackPanel.cpp:597
+#: TrackPanel.cpp:556 TrackPanel.cpp:580 TrackPanel.cpp:589 TrackPanel.cpp:597
msgid "Name..."
msgstr "å½å..."
-#: TrackPanel.cpp:558
-#: TrackPanel.cpp:582
-#: TrackPanel.cpp:593
-#: TrackPanel.cpp:599
+#: TrackPanel.cpp:558 TrackPanel.cpp:582 TrackPanel.cpp:593 TrackPanel.cpp:599
msgid "Move Track Up"
msgstr "åä¸ç§»åè»é"
-#: TrackPanel.cpp:559
-#: TrackPanel.cpp:583
-#: TrackPanel.cpp:594
-#: TrackPanel.cpp:600
+#: TrackPanel.cpp:559 TrackPanel.cpp:583 TrackPanel.cpp:594 TrackPanel.cpp:600
msgid "Move Track Down"
msgstr "åä¸ç§»åè»é"
-#: TrackPanel.cpp:561
-#: effects/ToneGen.cpp:325
+#: TrackPanel.cpp:561 effects/ToneGen.cpp:325
msgid "Waveform"
msgstr "波形"
@@ -3646,18 +3603,15 @@ msgstr "é »èlog(f)"
msgid "Pitch (EAC)"
msgstr "é³é« (EAC)"
-#: TrackPanel.cpp:569
-#: TrackPanel.cpp:6091
+#: TrackPanel.cpp:569 TrackPanel.cpp:6091
msgid "Mono"
msgstr "å®è²é"
-#: TrackPanel.cpp:570
-#: TrackPanel.cpp:6090
+#: TrackPanel.cpp:570 TrackPanel.cpp:6090
msgid "Left Channel"
msgstr "å·¦è²é"
-#: TrackPanel.cpp:571
-#: TrackPanel.cpp:6090
+#: TrackPanel.cpp:571 TrackPanel.cpp:6090
msgid "Right Channel"
msgstr "å³è²é"
@@ -3669,12 +3623,15 @@ msgstr "åä½µçºç«é«è²é³è»"
msgid "Split Stereo Track"
msgstr "åé¢ç«é«è²é³è»çºå®è²é"
+#: TrackPanel.cpp:621
+msgid "Split Stereo to Mono"
+msgstr ""
+
#: TrackPanel.cpp:575
msgid "Set Sample Format"
msgstr "è¨å®åæ¨£æ ¼å¼"
-#: TrackPanel.cpp:577
-#: TrackPanel.cpp:6320
+#: TrackPanel.cpp:577 TrackPanel.cpp:6320
msgid "Set Rate"
msgstr "è¨å®åæ¨£é »ç"
@@ -3694,8 +3651,7 @@ msgstr "åå..."
msgid "Set Range..."
msgstr "è¨å®ç¯å..."
-#: TrackPanel.cpp:606
-#: toolbars/EditToolBar.cpp:135
+#: TrackPanel.cpp:606 toolbars/EditToolBar.cpp:135
msgid "Copy"
msgstr "è¤è£½"
@@ -3741,21 +3697,13 @@ msgstr "å®æææ³ä»¥é¸åç¯åå·¦éçã"
msgid "Click and drag to move right selection boundary."
msgstr "å®æææ³ä»¥é¸åç¯åå³éçã"
-#: TrackPanel.cpp:1702
-#: TrackPanel.cpp:3993
-#: TrackPanel.cpp:4025
-#: TrackPanel.cpp:4280
-#: TrackPanel.cpp:6432
-#: TrackPanel.cpp:6452
+#: TrackPanel.cpp:1702 TrackPanel.cpp:3993 TrackPanel.cpp:4025
+#: TrackPanel.cpp:4280 TrackPanel.cpp:6432 TrackPanel.cpp:6452
msgid "Modified Label"
msgstr "å·²ä¿®æ¹æ¨ç±¤"
-#: TrackPanel.cpp:1703
-#: TrackPanel.cpp:3994
-#: TrackPanel.cpp:4026
-#: TrackPanel.cpp:4281
-#: TrackPanel.cpp:6433
-#: TrackPanel.cpp:6453
+#: TrackPanel.cpp:1703 TrackPanel.cpp:3994 TrackPanel.cpp:4026
+#: TrackPanel.cpp:4281 TrackPanel.cpp:6433 TrackPanel.cpp:6453
msgid "Label Edit"
msgstr "æ¨ç±¤ç·¨è¼¯"
@@ -3763,8 +3711,7 @@ msgstr "æ¨ç±¤ç·¨è¼¯"
msgid "Adjusted envelope."
msgstr "å·²èª¿æ´æ³¢å°ç·ã"
-#: TrackPanel.cpp:1931
-#: prefs/MousePrefs.cpp:115
+#: TrackPanel.cpp:1931 prefs/MousePrefs.cpp:115
msgid "Envelope"
msgstr "æ³¢å°"
@@ -3786,9 +3733,7 @@ msgstr "å³"
msgid "Time shifted tracks/clips %s %.02f seconds"
msgstr "æéä½ç§»é³è»/çæ®µ %s %.02fç§"
-#: TrackPanel.cpp:2092
-#: prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:112
+#: TrackPanel.cpp:2092 prefs/MousePrefs.cpp:111 prefs/MousePrefs.cpp:112
#: prefs/MousePrefs.cpp:113
msgid "Time-Shift"
msgstr "æé-ä½ç§»"
@@ -3827,39 +3772,29 @@ msgid "Moved pan slider"
msgstr "已移å颿¿æ»æ¡¿"
#. i18n-hint: Title of the Gain slider, used to adjust the volume
-#: TrackPanel.cpp:3485
-#: TrackPanel.cpp:5726
-#: TrackPanel.cpp:7149
+#: TrackPanel.cpp:3485 TrackPanel.cpp:5726 TrackPanel.cpp:7149
msgid "Gain"
msgstr "å¢ç"
#. i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically
-#: TrackPanel.cpp:3485
-#: TrackPanel.cpp:5664
-#: TrackPanel.cpp:7156
+#: TrackPanel.cpp:3485 TrackPanel.cpp:5664 TrackPanel.cpp:7156
msgid "Pan"
msgstr "颿¿"
-#: TrackPanel.cpp:3610
-#: TrackPanel.cpp:6385
-#: effects/ChangePitch.cpp:284
+#: TrackPanel.cpp:3610 TrackPanel.cpp:6385 effects/ChangePitch.cpp:284
msgid "up"
msgstr "ä¸"
-#: TrackPanel.cpp:3614
-#: TrackPanel.cpp:6386
-#: effects/ChangePitch.cpp:284
+#: TrackPanel.cpp:3614 TrackPanel.cpp:6386 effects/ChangePitch.cpp:284
msgid "down"
msgstr "ä¸"
-#: TrackPanel.cpp:3621
-#: TrackPanel.cpp:6381
+#: TrackPanel.cpp:3621 TrackPanel.cpp:6381
#, c-format
msgid "Moved '%s' %s"
msgstr "已移å '%s' %s"
-#: TrackPanel.cpp:3624
-#: TrackPanel.cpp:6387
+#: TrackPanel.cpp:3624 TrackPanel.cpp:6387
msgid "Move Track"
msgstr "ç§»åé³è»"
@@ -3891,14 +3826,6 @@ msgstr "已調æ´ç¯©é¸"
msgid "Adjusted gain"
msgstr "已調æ´å¢ç"
-#: TrackPanel.cpp:5799
-msgid "Group with Wave Track"
-msgstr ""
-
-#: TrackPanel.cpp:5800
-msgid "Clear any grouping"
-msgstr ""
-
#: TrackPanel.cpp:5918
msgid "Can't delete track with active audio"
msgstr "ç¡æ³åªé¤æ£å¨ä½¿ç¨çé³è¨"
@@ -3919,8 +3846,7 @@ msgstr "å·¦è²éï¼"
msgid "Right, "
msgstr "å³è²éï¼"
-#: TrackPanel.cpp:6100
-#: TrackPanel.cpp:6225
+#: TrackPanel.cpp:6100 TrackPanel.cpp:6225
#, c-format
msgid "Changed '%s' to %s"
msgstr "å·²è®æ´ç'%s' è³ %s"
@@ -3934,6 +3860,11 @@ msgstr "è²é"
msgid "Split stereo track '%s'"
msgstr "åé¢ç«é«è²é³è»'%s'"
+#: TrackPanel.cpp:6253
+#, c-format
+msgid "Split Stereo to Mono '%s'"
+msgstr ""
+
#: TrackPanel.cpp:6139
#, c-format
msgid "Made '%s' a stereo track"
@@ -3960,8 +3891,7 @@ msgstr "è®æ´æ ¼å¼"
msgid "Change lower speed limit (%) to:"
msgstr "è®æ´æä½éçéå¶(%)çºï¼"
-#: TrackPanel.cpp:6350
-#: TrackPanel.cpp:6351
+#: TrackPanel.cpp:6350 TrackPanel.cpp:6351
msgid "Lower speed limit"
msgstr "æä½éçéå¶"
@@ -3969,8 +3899,7 @@ msgstr "æä½éçéå¶"
msgid "Change upper speed limit (%) to:"
msgstr "è®æ´æé«éçéå¶(%)çºï¼"
-#: TrackPanel.cpp:6357
-#: TrackPanel.cpp:6358
+#: TrackPanel.cpp:6357 TrackPanel.cpp:6358
msgid "Upper speed limit"
msgstr "æé«éçéå¶"
@@ -4012,6 +3941,10 @@ msgstr "å°é¢å稱"
msgid "Face size"
msgstr "å°é¢å¤§å°"
+#: TrackPanel.cpp:6941
+msgid "Stereo, 999999Hz"
+msgstr ""
+
# é鳿æ¾
#: TrackPanel.cpp:7076
msgid "Mute"
@@ -4047,10 +3980,7 @@ msgstr "ç¨å¥"
msgid " Select On"
msgstr " Select On"
-#: VoiceKey.cpp:88
-#: VoiceKey.cpp:238
-#: VoiceKey.cpp:376
-#: VoiceKey.cpp:517
+#: VoiceKey.cpp:88 VoiceKey.cpp:238 VoiceKey.cpp:376 VoiceKey.cpp:517
msgid "Selection is too small to use voice key."
msgstr "鏿®µå¤ªå°ä»¥è³æ¼ä¸è½ä½¿ç¨è²é³é°åã"
@@ -4077,8 +4007,7 @@ msgstr "Direction Changes -- mean: %1.4f sd: (%1.4f)\n"
msgid "Audio Track"
msgstr "é³è»"
-#: WaveTrack.cpp:555
-#: WaveTrack.cpp:574
+#: WaveTrack.cpp:555 WaveTrack.cpp:574
msgid "There is not enough room available to paste the selection"
msgstr "æ²æè¶³å¤ ç空åè²¼ä¸é¸åç¯å"
@@ -4096,10 +4025,10 @@ msgstr "夿ç¨å¼1 è³ %i"
msgid "Plugins %i to %i"
msgstr "夿ç¨å¼%i è³ %i"
-#: commands/CommandManager.cpp:857
-#, fuzzy
-msgid "Disallowed for some reason. Try selecting some audio first?"
-msgstr "å çºæäºåå åç¨ãè«åè©¦é¸æå
¶ä»çé³è¨ï¼"
+#: commands/CommandManager.cpp:923
+msgid "There was a problem with your last action. If you think\n"
+"this is a bug, please tell us exactly where it occurred."
+msgstr ""
#: commands/CommandManager.cpp:781
msgid "You can only do this when playing and recording are\n"
@@ -4164,9 +4093,7 @@ msgstr "æ°å¢å³°å¼æ¯å¹
(dB)ï¼"
msgid "Allow clipping"
msgstr "å
許åªè¼¯"
-#: effects/Amplify.cpp:237
-#: effects/Amplify.cpp:287
-#: effects/Amplify.cpp:353
+#: effects/Amplify.cpp:237 effects/Amplify.cpp:287 effects/Amplify.cpp:353
msgid "-Infinity"
msgstr "-ç¡é大"
@@ -4182,9 +4109,7 @@ msgstr "å¢å¹
èçä¸"
msgid "You selected a track which does not contain audio. AutoDuck can only process audio tracks."
msgstr "æ¨é¸æçé³è»æ²æä»»ä½é³è¨ãèªåéé¿åªè½èçæé³è¨çé³è»ã"
-#: effects/AutoDuck.cpp:126
-#: effects/AutoDuck.cpp:138
-#: effects/AutoDuck.cpp:453
+#: effects/AutoDuck.cpp:126 effects/AutoDuck.cpp:138 effects/AutoDuck.cpp:453
#: effects/AutoDuck.cpp:570
msgid "Auto Duck"
msgstr "èªåéé¿"
@@ -4206,17 +4131,11 @@ msgid "Maximum pause:"
msgstr "æå¤§æ«åï¼"
#. i18n-hint: Name of time display format that shows time in seconds
-#: effects/AutoDuck.cpp:494
-#: effects/AutoDuck.cpp:499
-#: effects/AutoDuck.cpp:504
-#: effects/AutoDuck.cpp:509
-#: effects/AutoDuck.cpp:514
-#: prefs/AudioIOPrefs.cpp:166
-#: prefs/AudioIOPrefs.cpp:174
-#: prefs/AudioIOPrefs.cpp:176
-#: prefs/AudioIOPrefs.cpp:201
-#: prefs/AudioIOPrefs.cpp:203
-#: widgets/TimeTextCtrl.cpp:263
+#: effects/AutoDuck.cpp:494 effects/AutoDuck.cpp:499 effects/AutoDuck.cpp:504
+#: effects/AutoDuck.cpp:509 effects/AutoDuck.cpp:514
+#: prefs/AudioIOPrefs.cpp:166 prefs/AudioIOPrefs.cpp:174
+#: prefs/AudioIOPrefs.cpp:176 prefs/AudioIOPrefs.cpp:201
+#: prefs/AudioIOPrefs.cpp:203 widgets/TimeTextCtrl.cpp:263
msgid "seconds"
msgstr "ç§"
@@ -4238,8 +4157,7 @@ msgstr "åå
§æ¼¸å¼·é·åº¦ï¼"
# å£ç¸®åä½çèµ·å§é»ï¼æçæ¯è¼¸å
¥é³éçå¼ã
# THRESHOLDæ¯ç¨ä¾æ±ºå®éå§å£ç¸®åä½çé³é ï¼ä¸ä½è¶
éæ¤èµ·å§é»ï¼å£ç¸®åä½å°±æéå§ã
-#: effects/AutoDuck.cpp:521
-#: effects/Compressor.cpp:484
+#: effects/AutoDuck.cpp:521 effects/Compressor.cpp:484
msgid "Threshold:"
msgstr "è¨çå¼ï¼"
@@ -4259,12 +4177,9 @@ msgstr "èªåéé¿..."
msgid "Processing Auto Duck..."
msgstr "èªåéé¿èçä¸..."
-#: effects/AvcCompressor.cpp:738
-#: effects/VST/VSTEffect.cpp:448
-#: effects/audiounits/AudioUnitEffect.cpp:877
-#: effects/nyquist/Nyquist.cpp:1042
-#: widgets/ErrorDialog.cpp:79
-#: widgets/ErrorDialog.cpp:105
+#: effects/AvcCompressor.cpp:738 effects/VST/VSTEffect.cpp:448
+#: effects/audiounits/AudioUnitEffect.cpp:877 effects/nyquist/Nyquist.cpp:1042
+#: widgets/ErrorDialog.cpp:79 widgets/ErrorDialog.cpp:105
#: widgets/Warning.cpp:67
msgid "OK"
msgstr "確å®"
@@ -4329,14 +4244,12 @@ msgstr "è®æ´é³é«ç¶æç¯æä¸è®"
#. i18n-hint: && in here is an escape character to get a single & on
#. * screen, so keep it as is
-#: effects/ChangePitch.cpp:254
-#: effects/ChangeSpeed.cpp:313
+#: effects/ChangePitch.cpp:254 effects/ChangeSpeed.cpp:313
#: effects/ChangeTempo.cpp:180
msgid "by Vaughan Johnson && Dominic Mazzoni"
msgstr "Vaughan Johnson && Dominic Mazzoniæä¾"
-#: effects/ChangePitch.cpp:259
-#: effects/ChangeTempo.cpp:185
+#: effects/ChangePitch.cpp:259 effects/ChangeTempo.cpp:185
msgid "using SoundTouch, by Olli Parviainen"
msgstr "使ç¨SoundTouch(Olli Parviainenæä¾)"
@@ -4385,10 +4298,8 @@ msgstr ""
msgid "From frequency in hertz"
msgstr ""
-#: effects/ChangePitch.cpp:291
-#: effects/ChangePitch.cpp:337
-#: effects/ChangeSpeed.cpp:377
-#: effects/ChangeTempo.cpp:239
+#: effects/ChangePitch.cpp:291 effects/ChangePitch.cpp:337
+#: effects/ChangeSpeed.cpp:377 effects/ChangeTempo.cpp:239
#: effects/ChangeTempo.cpp:270
msgid "to"
msgstr "è³"
@@ -4397,8 +4308,7 @@ msgstr "è³"
msgid "To frequency in seconds"
msgstr ""
-#: effects/ChangePitch.cpp:360
-#: effects/ChangeSpeed.cpp:331
+#: effects/ChangePitch.cpp:360 effects/ChangeSpeed.cpp:331
#: effects/ChangeTempo.cpp:198
msgid "Percent Change:"
msgstr "æ¹è®ç¾åæ¯(%)ï¼"
@@ -4416,8 +4326,7 @@ msgstr "è®æ´é³é«..."
msgid "Changing Pitch"
msgstr "è®æ´é³é«ä¸"
-#: effects/ChangeSpeed.cpp:53
-#: effects/ChangeTempo.cpp:55
+#: effects/ChangeSpeed.cpp:53 effects/ChangeTempo.cpp:55
#, c-format
msgid "Applied effect: %s %.1f%%"
msgstr "å·²å¥ç¨ææï¼ %s %.1f%%"
@@ -4573,12 +4482,11 @@ msgstr "è¡°æ¸æéï¼"
msgid "Decay Time"
msgstr ""
-#: effects/Compressor.cpp:516
-msgid "Normalize to 0dB after compressing"
-msgstr "å£ç¸®å¾å¥ç¨å¢ç"
+#: effects/Compressor.cpp:542
+msgid "Make-up gain for 0dB after compressing"
+msgstr ""
#: effects/Compressor.cpp:563
-#, c-format
#, fuzzy
msgid "Threshold %d dB"
msgstr "è¨çå¼ï¼%d dB"
@@ -4609,7 +4517,6 @@ msgid "%.1f:1"
msgstr ""
#: effects/Compressor.cpp:575
-#, c-format
#, fuzzy
msgid "Attack Time %.1f secs"
msgstr "ä¸åæéï¼ %.1f ç§"
@@ -4620,7 +4527,6 @@ msgid "%.1f secs"
msgstr ""
#: effects/Compressor.cpp:578
-#, c-format
#, fuzzy
msgid "Decay Time %.1f secs"
msgstr "è¡°æ¸æéï¼%.1fç§"
@@ -4633,6 +4539,10 @@ msgstr "å£ç¸®..."
msgid "Applying Dynamic Range Compression..."
msgstr "å¥ç¨åæ
ç¯åå£ç¸®ä¸..."
+#: effects/Contrast.cpp:64
+msgid "Contrast Analysis"
+msgstr ""
+
#: effects/Contrast.cpp:79
msgid "Contrast Tool Foreground"
msgstr ""
@@ -4652,19 +4562,6 @@ msgid "Times are not reasonable!\n"
"Please enter reasonable times."
msgstr ""
-#: effects/Contrast.cpp:120
-msgid "Hello.\n"
-msgstr ""
-
-#: effects/Contrast.cpp:245
-msgid "WCAG2 Audio Contrast Analyzer"
-msgstr ""
-
-#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
-#: effects/Contrast.cpp:289
-msgid "Measured"
-msgstr ""
-
#: effects/Contrast.cpp:231
msgid "Contrast Analyzer"
msgstr ""
@@ -4673,15 +4570,12 @@ msgstr ""
msgid "Parameters"
msgstr ""
-#: effects/ToneGen.cpp:361
-#: toolbars/ControlToolBar.cpp:185
+#: effects/ToneGen.cpp:361 toolbars/ControlToolBar.cpp:185
msgid "Start"
msgstr "éå§"
-#: effects/ToneGen.cpp:362
-#: toolbars/ControlToolBar.cpp:188
-#: toolbars/SelectionBar.cpp:149
-#: toolbars/SelectionBar.cpp:254
+#: effects/ToneGen.cpp:362 toolbars/ControlToolBar.cpp:188
+#: toolbars/SelectionBar.cpp:149 toolbars/SelectionBar.cpp:254
msgid "End"
msgstr "çµææé"
@@ -4701,6 +4595,11 @@ msgstr ""
msgid "Foreground end time"
msgstr ""
+#: effects/Contrast.cpp:193 effects/Contrast.cpp:204 effects/Contrast.cpp:266
+#: effects/Contrast.cpp:289
+msgid "Measured"
+msgstr ""
+
#: effects/Contrast.cpp:373 effects/Contrast.cpp:417
msgid "Use selection"
msgstr ""
@@ -4725,8 +4624,7 @@ msgstr ""
msgid "Contrast Result:"
msgstr ""
-#: Tags.cpp:829
-#: Tags.cpp:1981
+#: Tags.cpp:829 Tags.cpp:1981
msgid "Reset"
msgstr "éç½®"
@@ -4746,16 +4644,8 @@ msgstr ""
msgid "Help for WCAG2 Audio Contrast Analyzer"
msgstr ""
-#: toolbars/ControlToolBar.cpp:82
-msgid "Control"
-msgstr "æ§å¶"
-
-#: effects/Contrast.cpp:454
-msgid "Note: The 'OK' button resets time values."
-msgstr ""
-
-#: effects/Contrast.cpp:455
-msgid "Close but keep times"
+#: effects/Contrast.cpp:412
+msgid "Close (keeping times)"
msgstr ""
#: effects/Contrast.cpp:328 effects/Contrast.cpp:336 effects/Contrast.cpp:344
@@ -4866,18 +4756,6 @@ msgstr ""
msgid "Data gathered"
msgstr ""
-#: effects/Contrast.h:33
-msgid "Contrast...\tCtrl+Shift+T"
-msgstr ""
-
-#: effects/Contrast.h:51
-msgid "Measuring background"
-msgstr ""
-
-#: effects/Contrast.h:53
-msgid "Measuring foreground"
-msgstr ""
-
#: effects/DtmfGen.cpp:48
msgid "DTMF Tone Generator"
msgstr "DTMFç¢çå¨"
@@ -4890,9 +4768,7 @@ msgstr "by Salvo Ventura (2006)"
msgid "DTMF sequence:"
msgstr "DTMFåºåï¼"
-#: effects/DtmfGen.cpp:446
-#: effects/Noise.cpp:255
-#: effects/ToneGen.cpp:328
+#: effects/DtmfGen.cpp:446 effects/Noise.cpp:255 effects/ToneGen.cpp:328
#: effects/ToneGen.cpp:365
msgid "Amplitude (0-1)"
msgstr "æ¯å¹
(0-1)"
@@ -4913,9 +4789,7 @@ msgstr "è² è¼é±æï¼"
msgid "Tone duration:"
msgstr "åºé³æçºæéï¼"
-#: effects/DtmfGen.cpp:482
-#: effects/DtmfGen.cpp:484
-#: effects/DtmfGen.cpp:560
+#: effects/DtmfGen.cpp:482 effects/DtmfGen.cpp:484 effects/DtmfGen.cpp:560
#: effects/DtmfGen.cpp:561
msgid "ms"
msgstr "ms"
@@ -4997,8 +4871,7 @@ msgstr "é¤å¼¦"
msgid "Cubic"
msgstr "ç«æ¹é«"
-#: effects/Equalization.cpp:362
-#: effects/Equalization.cpp:412
+#: effects/Equalization.cpp:362 effects/Equalization.cpp:412
msgid "Equalization"
msgstr "çå"
@@ -5010,6 +4883,10 @@ msgstr "è¼å
¥çåå¨é¯èª¤"
msgid "custom"
msgstr "é¢¨æ ¼"
+#: effects/Equalization.cpp:1100
+msgid "Error saving equalization curves"
+msgstr ""
+
#. i18n-hint: && in here is an escape character to get a single &
#. * on screen, so keep it as is
#: effects/Equalization.cpp:1087
@@ -5049,8 +4926,7 @@ msgstr "濾波å¨é·åº¦ï¼"
msgid "Select curve:"
msgstr "é¸åæ²ç·ï¼"
-#: effects/Equalization.cpp:1259
-#: effects/Equalization.cpp:2498
+#: effects/Equalization.cpp:1259 effects/Equalization.cpp:2498
#: export/ExportMultiple.cpp:826
msgid "Save As..."
msgstr "å¦åæ°æª..."
@@ -5168,8 +5044,7 @@ msgstr "æé度"
msgid "by Lynn Allan"
msgstr "ç±Lynn Allanæä¾"
-#: effects/Leveller.cpp:226
-#: effects/Leveller.cpp:231
+#: effects/Leveller.cpp:226 effects/Leveller.cpp:231
msgid "Degree of Leveling"
msgstr "水平度æ¸"
@@ -5218,10 +5093,6 @@ msgstr ""
msgid "Analyser"
msgstr ""
-#: toolbars/MixerToolBar.cpp:60
-msgid "Mixer"
-msgstr "æ··é³å·¥å
·"
-
#: effects/LoadEffects.cpp:116
msgid "Simulator"
msgstr ""
@@ -5463,15 +5334,9 @@ msgstr "ç§»é¤éé³ä¸"
msgid "Applied effect: %s remove dc offset = %s, normalize amplitude = %s"
msgstr "å¥ç¨ææï¼%s ç§»é¤DCåç§» = %sï¼å®ä½åæ¯æ = %s"
-#: effects/Normalize.cpp:74
-#: effects/Normalize.cpp:75
-msgid "false"
-msgstr "é¯èª¤"
-
#. i18n-hint: true here means that the option was
#. * selected. Opposite false if not selected
-#: effects/Normalize.cpp:74
-#: effects/Normalize.cpp:75
+#: effects/Normalize.cpp:74 effects/Normalize.cpp:75
msgid "true"
msgstr "æ£ç¢º"
@@ -5529,8 +5394,7 @@ msgstr ""
msgid "Dry Wet"
msgstr ""
-#: effects/Phaser.cpp:264
-#: effects/Wahwah.cpp:221
+#: effects/Phaser.cpp:264 effects/Wahwah.cpp:221
msgid "LFO Frequency (Hz):"
msgstr "LFO é »ç (Hz)ï¼"
@@ -5538,8 +5402,7 @@ msgstr "LFO é »ç (Hz)ï¼"
msgid "LFO frequency in hertz"
msgstr ""
-#: effects/Phaser.cpp:280
-#: effects/Wahwah.cpp:237
+#: effects/Phaser.cpp:280 effects/Wahwah.cpp:237
msgid "LFO Start Phase (deg.):"
msgstr "LFO èµ·å§ç¸ä½ (è§åº¦)ï¼"
@@ -5600,8 +5463,7 @@ msgstr "éè¤%d次"
msgid "Tracks are too long to repeat the selection."
msgstr "é³è»å¤ªé·ï¼ç¡æ³éè¤é¸åç¯åã"
-#: effects/Repeat.cpp:76
-#: effects/Repeat.cpp:80
+#: effects/Repeat.cpp:76 effects/Repeat.cpp:80
msgid "Repeat"
msgstr "éè¤"
@@ -5614,8 +5476,7 @@ msgstr "éè¤æ¬¡æ¸ï¼"
msgid "New selection length: hh:mm:ss"
msgstr ""
-#: effects/Repeat.cpp:207
-#: effects/Repeat.cpp:237
+#: effects/Repeat.cpp:207 effects/Repeat.cpp:237
msgid "New selection length: "
msgstr "æ°çé¸åé·åº¦ï¼"
@@ -5690,9 +5551,7 @@ msgstr "çªåºæ¸
é¤å¨..."
msgid "Applying Spike Cleaner..."
msgstr "å¥ç¨çªåºæ¸
é¤å¨ä¸..."
-#: Menus.cpp:358
-#: Menus.cpp:564
-#: effects/StereoToMono.h:23
+#: Menus.cpp:358 Menus.cpp:564 effects/StereoToMono.h:23
msgid "&Stereo to Mono"
msgstr "ç«é«è²è³å®è²é(&S)"
@@ -5749,8 +5608,7 @@ msgstr ""
msgid "Applied effect: Generate %s wave %s, frequency = %.2f Hz, amplitude = %.2f, %.6lf seconds"
msgstr "å·²å¥ç¨ææï¼ ç¢ç%s %s æ³¢ï¼é »ç = %.2f Hzï¼æ¯å¹
=%.2fï¼%.6lfç§"
-#: effects/ToneGen.cpp:75
-#: widgets/Meter.cpp:379
+#: effects/ToneGen.cpp:75 widgets/Meter.cpp:379
msgid "Linear"
msgstr "ç·æ§"
@@ -5782,8 +5640,7 @@ msgstr "é¸é½æ³¢"
msgid "Square, no alias"
msgstr "å¹³æ¹ï¼ç¡å¥å"
-#: effects/ToneGen.cpp:327
-#: effects/ToneGen.cpp:363
+#: effects/ToneGen.cpp:327 effects/ToneGen.cpp:363
msgid "Frequency (Hz)"
msgstr "é »ç(Hz)"
@@ -5831,30 +5688,45 @@ msgstr "ç¢çåºé³ä¸"
msgid "All tracks must have the same sample rate"
msgstr "ææé¸å®çé³è»å¿
é å
·æç¸åç忍£é »ç"
-#: effects/TruncSilence.cpp:113
-#: effects/TruncSilence.cpp:322
+#: effects/TruncSilence.cpp:113 effects/TruncSilence.cpp:322
msgid "Truncate Silence"
msgstr "åªè£éé³"
-#: effects/TruncSilence.cpp:346
-msgid "Max silence duration:"
-msgstr "é鳿大æçºæéï¼"
+#: effects/TruncSilence.cpp:453
+msgid "by Lynn Allan && Philip Van Baren"
+msgstr ""
-#: effects/TruncSilence.cpp:349
-#: prefs/AudioIOPrefs.cpp:190
+#: effects/TruncSilence.cpp:467
+msgid "Min silence duration:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:349 prefs/AudioIOPrefs.cpp:190
#: prefs/AudioIOPrefs.cpp:193
msgid "milliseconds"
msgstr "毫ç§"
+#: effects/TruncSilence.cpp:346
+msgid "Max silence duration:"
+msgstr "é鳿大æçºæéï¼"
+
+#: effects/TruncSilence.cpp:475
+msgid "Silence compression:"
+msgstr ""
+
+#: effects/TruncSilence.cpp:478
+msgid ":1"
+msgstr ""
+
# å£ç¸®åä½çèµ·å§é»ï¼æçæ¯è¼¸å
¥é³éçå¼ã
# THRESHOLDæ¯ç¨ä¾æ±ºå®éå§å£ç¸®åä½çé³é ï¼ä¸ä½è¶
éæ¤èµ·å§é»ï¼å£ç¸®åä½å°±æéå§ã
#: effects/TruncSilence.cpp:351
msgid "Threshold for silence:"
msgstr "éé³è¨çå¼ï¼"
-#: effects/TruncSilence.cpp:376
-msgid " Duration must be at least 1 millisecond"
-msgstr " æçºæéæå°è¦ä¸æ¯«ç§"
+#: effects/TruncSilence.cpp:506
+msgid " Duration must be at least 1 millisecond\n"
+" Compress ratio must be at least 1:1"
+msgstr ""
#: effects/TruncSilence.h:28
msgid "Truncate Silence..."
@@ -5864,17 +5736,55 @@ msgstr "åªè£éé³..."
msgid "Truncating Silence..."
msgstr "åªè£éé³ä¸"
-#: effects/VST/VSTEffect.cpp:165
-msgid "Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
-msgstr "æ±æï¼ç¶ç«é«è²è»éä¸å¹é
æï¼ç¡æ³å·è¡VSTææã"
+#: effects/ladspa/LadspaEffect.cpp:608
+msgid "Effect Settings"
+msgstr "ææå¨è¨å®"
+
+#: effects/ladspa/LadspaEffect.cpp:573 effects/ladspa/LadspaEffect.cpp:581
+#: prefs/GUIPrefs.cpp:51 prefs/QualityPrefs.cpp:72
+msgid "None"
+msgstr "ç¡"
+
+#: effects/VST/VSTEffect.cpp:343
+msgid "Presets:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:355
+msgid "Load"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:358
+msgid "Save"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:458
+msgid "Load VST Program:"
+msgstr ""
-#: effects/VST/VSTEffect.cpp:180
-msgid "Can't process replacing"
-msgstr "ç¡æ³å·è¡å代"
+#: effects/VST/VSTEffect.cpp:476
+msgid "Error loading program"
+msgstr ""
-#: effects/VST/VSTEffect.cpp:403
-msgid "VST Plug-in parameters:"
-msgstr "VST 夿ç¨å¼åæ¸ï¼"
+#: effects/VST/VSTEffect.cpp:492
+msgid "Save VST Program As:"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:626
+#, c-format
+msgid "This parameter file was saved from %s. Continue?"
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:993
+msgid "Performing Effect: "
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1016
+msgid "Both channels of a stereo track must be the same sample rate."
+msgstr ""
+
+#: effects/VST/VSTEffect.cpp:1021
+msgid "Both channels of a stereo track must be the same length."
+msgstr ""
#: effects/Wahwah.cpp:61
#, c-format
@@ -5923,22 +5833,10 @@ msgstr "å·è¡ç¹æï¼%s"
msgid "Sorry, Plug-in Effects cannot be performed on stereo tracks where the individual channels of the track do not match."
msgstr "æ±æï¼ç¶ç«é«è²è»éä¸å¹é
æï¼ç¡æ³å·è¡å¤æç¨å¼ææã"
-#: effects/ladspa/LadspaEffect.cpp:573
-#: effects/ladspa/LadspaEffect.cpp:581
-#: prefs/GUIPrefs.cpp:51
-#: prefs/QualityPrefs.cpp:72
-msgid "None"
-msgstr "ç¡"
-
-#: effects/ladspa/LadspaEffect.cpp:575
-#: effects/vamp/VampEffect.cpp:384
+#: effects/ladspa/LadspaEffect.cpp:575 effects/vamp/VampEffect.cpp:384
msgid "Author: "
msgstr "ä½è
ï¼"
-#: effects/ladspa/LadspaEffect.cpp:608
-msgid "Effect Settings"
-msgstr "ææå¨è¨å®"
-
#: effects/ladspa/LadspaEffect.cpp:699
msgid "Length (seconds)"
msgstr "é·åº¦ (ç§)ï¼"
@@ -5959,8 +5857,7 @@ msgstr ""
msgid "Applying Nyquist Effect..."
msgstr "å¥ç¨Nyquistææä¸..."
-#: effects/nyquist/Nyquist.cpp:259
-#: effects/nyquist/Nyquist.cpp:321
+#: effects/nyquist/Nyquist.cpp:259 effects/nyquist/Nyquist.cpp:321
msgid "Nyquist Prompt..."
msgstr "Nyquist 表示å¼..."
@@ -5980,8 +5877,7 @@ msgstr "Nyquist 表示å¼"
msgid "Nyquist Output: "
msgstr "Nyquist 表示å¼"
-#: effects/nyquist/Nyquist.cpp:598
-#: effects/nyquist/Nyquist.cpp:609
+#: effects/nyquist/Nyquist.cpp:598 effects/nyquist/Nyquist.cpp:609
msgid "Nyquist returned the value:"
msgstr "Nyquist å³åå¼ï¼"
@@ -6089,8 +5985,7 @@ msgstr " - å³è²é"
msgid "Mixer Panel"
msgstr ""
-#: export/Export.cpp:976
-#: export/Export.cpp:1021
+#: export/Export.cpp:976 export/Export.cpp:1021
#, c-format
msgid "Output Channels: %2d"
msgstr "輸åºè²éï¼%2d"
@@ -6120,8 +6015,7 @@ msgstr "è³æå°æä¾åºæåã\"%f\"尿以鏿çè¼¸åºæªåä¾å代
msgid "(external program)"
msgstr "(å¤é¨ç¨å¼)"
-#: export/ExportCL.cpp:250
-#: export/ExportPCM.cpp:367
+#: export/ExportCL.cpp:250 export/ExportPCM.cpp:367
#, c-format
msgid "Cannot export audio to %s"
msgstr "ç¡æ³å¯åºè²é³è³%s"
@@ -6138,9 +6032,21 @@ msgstr "ç¨å½ä»¤å編碼å¨å¯åºå
¨é¨æé³å·¥ç¨"
msgid "Command Output"
msgstr "å½ä»¤è¼¸åº"
-#: export/ExportFFmpeg.cpp:59
+#: export/ExportFFmpeg.cpp:61
+msgid "Properly configured FFmpeg is required to proceed.\n"
+"You can configure it at Preferences > Libraries."
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
+msgid "AMR support not distributable"
+msgstr ""
+
+#: export/ExportFFmpeg.cpp:232
msgid "Properly configured FFmpeg is required to proceed.\n"
-"You can configure it in Preferences->Import/Export."
+"You can configure it at Preferences > Libraries.\n"
+"\n"
+"Note that AMR support is not available with our FFmpeg\n"
+"installer, but requires you compile FFmpeg yourself."
msgstr ""
#: export/ExportFFmpeg.cpp:394
@@ -6208,6 +6114,10 @@ msgstr ""
msgid "AAC Export Setup"
msgstr ""
+#: export/ExportOGG.cpp:86
+msgid "Quality:"
+msgstr "å質ï¼"
+
#: export/ExportFFmpegDialogs.cpp:217
msgid "Specify AMR-NB Options"
msgstr ""
@@ -6341,12 +6251,8 @@ msgid "Bit Rate (bits/second) - influences the resulting file size and quality\n
"Recommended - 192000"
msgstr ""
-#: export/ExportOGG.cpp:86
-msgid "Quality:"
-msgstr "å質ï¼"
-
-#: export/ExportFFmpegDialogs.cpp:941
-msgid "Overral quality, used differently by different codecs\n"
+#: export/ExportFFmpegDialogs.cpp:930
+msgid "Overall quality, used differently by different codecs\n"
"Required for vorbis\n"
"0 - automatic\n"
"-1 - off (use bitrate instead)"
@@ -6365,10 +6271,10 @@ msgstr ""
msgid "Cutoff Bandwidth:"
msgstr ""
-#: export/ExportFFmpegDialogs.cpp:947
+#: export/ExportFFmpegDialogs.cpp:936
msgid "Audio cutoff bandwidth (Hz)\n"
"Optional\n"
-"0 - automatic\n"
+"0 - automatic"
msgstr ""
#: export/ExportFFmpegDialogs.cpp:949
@@ -6557,12 +6463,12 @@ msgstr ""
msgid "AC3 Files (FFmpeg)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:55
-msgid "AMR (narrow band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:56
+msgid "AMR (narrow band) Files (FFmpeg, undistributable)"
msgstr ""
-#: export/ExportFFmpegDialogs.h:56
-msgid "AMR (wide band) Files (FFmpeg)"
+#: export/ExportFFmpegDialogs.h:57
+msgid "AMR (wide band) Files (FFmpeg, undistributable)"
msgstr ""
#: export/ExportFFmpegDialogs.h:57
@@ -6673,6 +6579,17 @@ msgstr "ä½å
深度ï¼"
msgid "FLAC Files"
msgstr "FLACæªæ¡"
+#: export/ExportFLAC.cpp:288
+#, c-format
+msgid "FLAC export couldn't open %s"
+msgstr ""
+
+#: export/ExportFLAC.cpp:297
+#, c-format
+msgid "FLAC encoder failed to initialize\n"
+"Status: %d"
+msgstr ""
+
#: export/ExportFLAC.cpp:310
msgid "Exporting the selected audio as FLAC"
msgstr "å°é¸å®çè²é³å¯åºçºFLAC"
@@ -6697,9 +6614,7 @@ msgstr "MP2æªæ¡"
msgid "Cannot export MP2 with this sample rate and bit rate"
msgstr "ç¡æ³ä»¥æ¤å樣çåä½å
çå¯åºMP2æªæ¡"
-#: export/ExportMP2.cpp:240
-#: export/ExportMP3.cpp:1768
-#: export/ExportOGG.cpp:183
+#: export/ExportMP2.cpp:240 export/ExportMP3.cpp:1768 export/ExportOGG.cpp:183
msgid "Unable to open target file for writing"
msgstr "ç¡æ³éåç®æ¨æªæ¡å¯«å
¥"
@@ -6713,9 +6628,7 @@ msgstr "å°é¸å®çé³è¨ä»¥%d kbpså¯åº"
msgid "Exporting entire file at %d kbps"
msgstr "å°å
¨é¨æé³å·¥ç¨ä»¥%d kbpså¯åº"
-#: export/ExportMP3.cpp:221
-#: export/ExportMP3.cpp:239
-#: export/ExportMP3.cpp:253
+#: export/ExportMP3.cpp:221 export/ExportMP3.cpp:239 export/ExportMP3.cpp:253
msgid "kbps"
msgstr "kbps"
@@ -6731,9 +6644,7 @@ msgstr "(è¼å°æªæ¡é«ç©)"
msgid "Fast"
msgstr "å¿«é"
-#: export/ExportMP3.cpp:244
-#: export/ExportMP3.cpp:250
-#: prefs/GUIPrefs.cpp:41
+#: export/ExportMP3.cpp:244 export/ExportMP3.cpp:250 prefs/GUIPrefs.cpp:41
#: prefs/GUIPrefs.cpp:49
msgid "Standard"
msgstr "æ¨æº"
@@ -6779,8 +6690,7 @@ msgstr "å¹³å"
msgid "Constant"
msgstr "常æ¸"
-#: export/ExportMP3.cpp:373
-#: prefs/QualityPrefs.cpp:42
+#: export/ExportMP3.cpp:373 prefs/QualityPrefs.cpp:42
#: prefs/QualityPrefs.cpp:43
msgid "Quality"
msgstr "å質"
@@ -6899,10 +6809,8 @@ msgstr "æ¤MP3æªæ¡æ ¼å¼ä¸æ¯æ´ç®åå·¥ç¨å樣éç(%d)åä½å
ç(%d k
msgid "MP3 export library not found"
msgstr ""
-#: export/ExportMultiple.cpp:95
-#: export/ExportMultiple.cpp:374
-#: export/ExportMultiple.cpp:598
-#: export/ExportMultiple.cpp:765
+#: export/ExportMultiple.cpp:95 export/ExportMultiple.cpp:374
+#: export/ExportMultiple.cpp:598 export/ExportMultiple.cpp:765
msgid "Export Multiple"
msgstr "å¯åºå¤åæªæ¡"
@@ -6932,11 +6840,6 @@ msgstr "é¸é
..."
msgid "Export location:"
msgstr "å¯åºæªæ¡ä½ç½®ï¼"
-#: export/ExportMultiple.cpp:216
-#: prefs/DirectoriesPrefs.cpp:92
-msgid "Choose..."
-msgstr "鏿..."
-
#: export/ExportMultiple.cpp:217
msgid "Create"
msgstr "建ç«"
@@ -6961,10 +6864,6 @@ msgstr "第ä¸åæªæ¡å稱ï¼"
msgid "First file name"
msgstr ""
-#: export/ExportMultiple.cpp:258
-msgid "Tracks"
-msgstr "é³è»"
-
#: export/ExportMultiple.cpp:265
msgid "Name files:"
msgstr "å½åæªæ¡ï¼"
@@ -6998,6 +6897,35 @@ msgstr "\"%s\" 建ç«å®æã"
msgid "Choose a location to save the exported files"
msgstr "鏿å²åå¯åºæªæ¡çä½ç½®"
+#: export/ExportMultiple.cpp:524
+#, c-format
+msgid "Successfully exported the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:525
+#, c-format
+msgid "Something went wrong after exporting the folliwing %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:526
+#, c-format
+msgid "Export canceled after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:527
+#, c-format
+msgid "Export stopped after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:528
+#, c-format
+msgid "Something went really wrong after exporting the following %ld file(s)."
+msgstr ""
+
+#: export/ExportMultiple.cpp:535
+msgid "ExportMultiple"
+msgstr ""
+
#: export/ExportMultiple.cpp:470
#, c-format
msgid "\"%s\" doesn't exist.\n"
@@ -7007,23 +6935,10 @@ msgstr "\"%s\" ä¸åå¨ã\n"
"\n"
"æ¨è¦å»ºç«å®åï¼"
-#: export/ExportMultiple.cpp:568
-#: export/ExportMultiple.cpp:703
+#: export/ExportMultiple.cpp:568 export/ExportMultiple.cpp:703
msgid "Edit metadata"
msgstr "編輯æ¨é æª"
-#: export/ExportMultiple.cpp:595
-#: export/ExportMultiple.cpp:762
-#, c-format
-msgid "Successfully exported %d file(s)."
-msgstr "%d æªæ¡å¯åºæåã"
-
-#: export/ExportMultiple.cpp:596
-#: export/ExportMultiple.cpp:763
-#, c-format
-msgid "Something went wrong after exporting %d file(s)."
-msgstr "å¯åº%dæªæ¡å¾ç¼çé¯èª¤ã"
-
#: export/ExportMultiple.cpp:825
#, c-format
msgid "Label %s is not a legal file name. You cannot use any of: %s\n"
@@ -7191,7 +7106,6 @@ msgstr "\"%s\"æ¯ Advanced Audio Codingæªæ¡ã\n"
"è«å試å°å®è½ææAudacityè½æ¯æ´çè²é³æ ¼å¼å¦WAVæAIFFã"
#: import/Import.cpp:271
-#, c-format
#, fuzzy
msgid "\"%s\" is an encrypted audio file. \n"
"These typically are from an online music store. \n"
@@ -7293,6 +7207,10 @@ msgstr ""
msgid "FLAC files"
msgstr "FLACæªæ¡"
+#: import/ImportGStreamer.cpp:33
+msgid "GStreamer-compatible files"
+msgstr ""
+
#: import/ImportLOF.cpp:92
msgid "List of Files in basic text format"
msgstr "åºæ¬æåæ ¼å¼çæªæ¡å表"
@@ -7303,9 +7221,7 @@ msgid "Invalid window offset in LOF file."
msgstr "LOF æªæ¡è¦çªåç§»ç¡æã"
#. i18n-hint: You do not need to translate "LOF"
-#: import/ImportLOF.cpp:320
-#: import/ImportLOF.cpp:341
-#: import/ImportLOF.cpp:415
+#: import/ImportLOF.cpp:320 import/ImportLOF.cpp:341 import/ImportLOF.cpp:415
#: import/ImportLOF.cpp:435
msgid "LOF Error"
msgstr "LOF é¯èª¤"
@@ -7361,8 +7277,7 @@ msgstr "Vorbisä½å
æµæ¨é ç¡æ"
msgid "Internal logic fault"
msgstr "å
§é¨èçé¯èª¤"
-#: export/ExportPCM.cpp:320
-#: import/ImportPCM.cpp:47
+#: export/ExportPCM.cpp:320 import/ImportPCM.cpp:47
msgid "WAV, AIFF, and other uncompressed types"
msgstr "WAVãAIFFåå
¶ä»éå£ç¸®æ ¼å¼"
@@ -7454,36 +7369,41 @@ msgstr ""
msgid "%s %2.0f%% complete. Click to change task focal point."
msgstr ""
-#: prefs/AudioIOPrefs.cpp:41
-#: prefs/AudioIOPrefs.cpp:42
-msgid "Audio I/O"
-msgstr "é³è¨ I/O"
+#: prefs/BatchPrefs.cpp:55 prefs/BatchPrefs.cpp:56
+msgid "Batch"
+msgstr "æ¹æ¬¡"
-#: prefs/AudioIOPrefs.cpp:100
-msgid "1 (Mono)"
-msgstr "1 (å®è²é)"
+#: prefs/BatchPrefs.cpp:77 prefs/GUIPrefs.cpp:92
+msgid "Behaviors"
+msgstr "è¡çº"
-#: prefs/AudioIOPrefs.cpp:101
-msgid "2 (Stereo)"
-msgstr "2 (ç«é«è²)"
+#: prefs/BatchPrefs.cpp:80 prefs/GUIPrefs.cpp:129
+msgid "&Don't apply effects in batch mode"
+msgstr "æ¹æ¬¡æ¨¡å¼ä¸ä¸å¥ç¨ææå¨(&D)"
-#: prefs/AudioIOPrefs.cpp:115
-msgid "Playback"
-msgstr "ææ¾è£ç½®"
+#: prefs/BatchPrefs.cpp:83 prefs/GUIPrefs.cpp:132
+msgid "Cl&eanSpeech Mode (Customized GUI)"
+msgstr "æ¸
é¤äººè²æ¨¡å¼(èªå®ä»é¢)(&E)"
-#: prefs/AudioIOPrefs.cpp:119
-#: prefs/AudioIOPrefs.cpp:137
-#: toolbars/DeviceToolBar.cpp:57
-msgid "Device"
-msgstr "è£ç½®"
+#: prefs/DevicePrefs.cpp:54
+msgid "Devices"
+msgstr ""
+
+#: prefs/GUIPrefs.cpp:34 prefs/GUIPrefs.cpp:35
+msgid "Interface"
+msgstr "ä»é¢"
+
+#: prefs/DevicePrefs.cpp:113
+msgid "Host"
+msgstr ""
#: prefs/AudioIOPrefs.cpp:122
msgid "Using:"
msgstr "使ç¨ï¼"
-#: prefs/AudioIOPrefs.cpp:123
-msgid "Portaudio v"
-msgstr "Portaudio v"
+#: prefs/AudioIOPrefs.cpp:115
+msgid "Playback"
+msgstr "ææ¾è£ç½®"
#: prefs/AudioIOPrefs.cpp:133
msgid "Recording"
@@ -7493,100 +7413,15 @@ msgstr "é製è£ç½®"
msgid "Channels"
msgstr "è²é"
-#: prefs/AudioIOPrefs.cpp:145
-msgid "Playthrough"
-msgstr "ææ¾"
-
-#: prefs/AudioIOPrefs.cpp:149
-msgid "Overdub: &Play other tracks while recording new one"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:150
-msgid "&Hardware Playthrough: Play new track while recording it"
-msgstr "ç¡¬é«ææ¾(&H)ï¼å¨éé³æææ¾æ°å»ºçé³è»"
-
-#: prefs/AudioIOPrefs.cpp:152
-msgid "&Software Playthrough: Play new track while recording it"
-msgstr "è»é«ææ¾(&S)ï¼å¨éé³æææ¾æ°å»ºçé³è»"
-
-#: prefs/AudioIOPrefs.cpp:157
-msgid "&Software Playthrough: Play new track while recording or monitoring"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:160
-msgid "(uncheck when recording \"stereo mix\")"
-msgstr ""
-
-#: prefs/AudioIOPrefs.cpp:162
-msgid "Effects Preview"
-msgstr "ææè©¦è½"
-
-#: prefs/AudioIOPrefs.cpp:165
-msgid "Length of preview:"
-msgstr "試è½é·åº¦ï¼"
-
-#: prefs/AudioIOPrefs.cpp:170
-msgid "Cut Preview"
-msgstr "åªè£åå試è½"
-
-#: prefs/AudioIOPrefs.cpp:173
-msgid "Preview before cut region:"
-msgstr "試è½åªè£åååçé¨åï¼"
-
-#: prefs/AudioIOPrefs.cpp:175
-msgid "Preview after cut region:"
-msgstr "試è½åªè£ååå¾çé¨åï¼"
-
-#: prefs/AudioIOPrefs.cpp:183
-msgid "Latency"
-msgstr "å»¶é²"
-
-#: prefs/AudioIOPrefs.cpp:189
-msgid "Audio to buffer:\n"
-"(higher = more latency)"
-msgstr "é³è¨ç·©è¡ï¼\n"
-"(è¶é« = å»¶é²è¶é·)"
-
-#: prefs/AudioIOPrefs.cpp:192
-msgid "Latency correction:\n"
-"(negative = backwards)"
-msgstr "å»¶é²ä¿®æ£ï¼\n"
-"(è² å¼ = å¾å)"
-
-#: prefs/AudioIOPrefs.cpp:197
-msgid "Seek Time when playing"
-msgstr "ææ¾ææç´¢æéè³è¨"
-
-#: prefs/AudioIOPrefs.cpp:200
-msgid "Short period:"
-msgstr "çåéï¼"
-
-#: prefs/AudioIOPrefs.cpp:202
-msgid "Long period:"
-msgstr "é·åéï¼"
-
-#: prefs/BatchPrefs.cpp:55
-#: prefs/BatchPrefs.cpp:56
-msgid "Batch"
-msgstr "æ¹æ¬¡"
-
-#: prefs/BatchPrefs.cpp:77
-#: prefs/GUIPrefs.cpp:92
-msgid "Behaviors"
-msgstr "è¡çº"
-
-#: prefs/BatchPrefs.cpp:80
-#: prefs/GUIPrefs.cpp:129
-msgid "&Don't apply effects in batch mode"
-msgstr "æ¹æ¬¡æ¨¡å¼ä¸ä¸å¥ç¨ææå¨(&D)"
+#: prefs/AudioIOPrefs.cpp:100
+msgid "1 (Mono)"
+msgstr "1 (å®è²é)"
-#: prefs/BatchPrefs.cpp:83
-#: prefs/GUIPrefs.cpp:132
-msgid "Cl&eanSpeech Mode (Customized GUI)"
-msgstr "æ¸
é¤äººè²æ¨¡å¼(èªå®ä»é¢)(&E)"
+#: prefs/AudioIOPrefs.cpp:101
+msgid "2 (Stereo)"
+msgstr "2 (ç«é«è²)"
-#: prefs/DirectoriesPrefs.cpp:55
-#: prefs/DirectoriesPrefs.cpp:56
+#: prefs/DirectoriesPrefs.cpp:55 prefs/DirectoriesPrefs.cpp:56
#: prefs/PrefsDialog.cpp:279
msgid "Directories"
msgstr "ç®éè·¯å¾"
@@ -7603,34 +7438,31 @@ msgstr "è·¯å¾ï¼"
msgid "Free Space:"
msgstr "å¯ç¨ç©ºéï¼"
-#: prefs/DirectoriesPrefs.cpp:99
-msgid "Auto save"
-msgstr "èªåå²å"
-
-#: prefs/DirectoriesPrefs.cpp:101
-msgid "Auto save a copy of the project in a separate folder"
-msgstr "èªåå°å·¥ç¨å¨ç¨ç«çè³æå¤¾å¦åä¸ä»½"
-
-#: prefs/DirectoriesPrefs.cpp:104
-msgid "Auto save interval:"
-msgstr "èªåå²ååéï¼"
-
-#: prefs/DirectoriesPrefs.cpp:105
-msgid "minutes"
-msgstr "åé"
-
#: prefs/DirectoriesPrefs.cpp:110
msgid "Audio cache"
msgstr "é³è»å¿«å"
-#: prefs/DirectoriesPrefs.cpp:112
-msgid "Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "Play and/or record using RAM (useful for slow drives)"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:111
+msgid "Minimum Free Memory (MB):"
+msgstr ""
+
+#: prefs/DirectoriesPrefs.cpp:118
+msgid "If the available system memory falls below this value, audio will no longer\n"
+"be cached in memory and will be written to disk."
msgstr ""
#: prefs/DirectoriesPrefs.cpp:121
msgid "Choose a location to place the temporary directory"
msgstr "鏿忾æ«åç®éçä½ç½®"
+#: prefs/DirectoriesPrefs.cpp:158
+msgid "unavailable - above location doesn't exist"
+msgstr ""
+
#: prefs/DirectoriesPrefs.cpp:166
#, c-format
msgid "Directory %s does not exist. Create it?"
@@ -7649,230 +7481,145 @@ msgstr "%sç®éç¡æ³å¯«å
¥"
msgid "Changes to temporary directory will not take effect until Audacity is restarted"
msgstr "Audacityééå¾ï¼ææè®æ´æ«åç®éã"
-#: prefs/FileFormatPrefs.cpp:48
-#: prefs/FileFormatPrefs.cpp:49
-msgid "Import / Export"
-msgstr "å¯å
¥/å¯åº"
-
-#: prefs/FileFormatPrefs.cpp:77
-msgid "MP3 Export Library"
-msgstr "MP3å¯åºç¨å¼åº«"
-
-#: prefs/FileFormatPrefs.cpp:80
-msgid "MP3 Library Version:"
-msgstr "MP3ç¨å¼åº«çæ¬:"
+#: prefs/GUIPrefs.cpp:42
+msgid "In Browser"
+msgstr "ç覽å¨"
-#: prefs/FileFormatPrefs.cpp:86
-msgid "MP3 Library:"
-msgstr "MP3ç¨å¼åº«ï¼"
+#: prefs/GUIPrefs.cpp:43
+msgid "From Internet"
+msgstr "網路ä¸ç說æ"
-#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
-msgid "&Locate..."
+#: prefs/GUIPrefs.cpp:54
+msgid "36"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:91
-msgid "LAME MP3 Library:"
-msgstr "LAME MP3ç¨å¼åº«ï¼"
-
-#: prefs/FileFormatPrefs.cpp:94
-msgid "&Download"
-msgstr "ä¸è¼(&D)"
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "FFmpeg Import/Export Library"
+#: prefs/GUIPrefs.cpp:55
+msgid "48"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:109
-msgid "FFmpeg Library Version:"
+#: prefs/GUIPrefs.cpp:56
+msgid "60"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
-msgid "FFmpeg Library:"
+#: prefs/GUIPrefs.cpp:57
+msgid "96"
msgstr ""
-#: prefs/FileFormatPrefs.cpp:136
-#, fuzzy
-msgid "Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"
-msgstr "注æï¼å¯åºå質é¸é
å¨å¯åºå°è©±æ¡çé¸é
æé裡ã\n"
-
-#: prefs/FileFormatPrefs.cpp:100
-msgid "When importing audio files"
-msgstr "ç¶Audacityå¯å
¥è²é³æªæ¡æ"
-
-#: prefs/FileFormatPrefs.cpp:103
-msgid "&Make a copy of uncompressed audio files before editing (safer)"
-msgstr "å¨ç·¨è¼¯åè£½ä½æªæ¡å份(è¼å®å
¨)(&M)"
-
-#: prefs/FileFormatPrefs.cpp:104
-msgid "&Read uncompressed audio files directly from the original (faster)"
-msgstr "å¾åå§æªæ¡ä¸ç´æ¥è®å(å¿«é)(&R)"
-
-#: prefs/FileFormatPrefs.cpp:106
-msgid "&Normalize all tracks in project"
-msgstr "å°å·¥ç¨å
§ææé³è»å®ä½å(&n)"
-
-#: prefs/FileFormatPrefs.cpp:111
-msgid "When saving a project that depends on other audio files"
-msgstr "ç¶è¦å²åç¸ä¾æ¼å
¶ä»é³è¨æªæ¡çå·¥ç¨æ"
+#: prefs/GUIPrefs.cpp:58
+msgid "120"
+msgstr ""
-#: prefs/FileFormatPrefs.cpp:114
-msgid "Always © all audio into project (safest)"
-msgstr "總æ¯è¤è£½ææé³è¨è³å·¥ç¨å
§(æå®å
¨)(&C)"
+#: prefs/GUIPrefs.cpp:59
+msgid "145"
+msgstr ""
-#: prefs/FileFormatPrefs.cpp:115
-msgid "&Do not copy any audio"
-msgstr "ä¸è¦è¤è£½ä»»ä½é³è¨(&D)"
+#: prefs/GUIPrefs.cpp:141
+msgid "-36 dB (shallow range for high-amplitude editing)"
+msgstr "-36 dB (å°ç¯åï¼é©ç¨å¤§æ¯å¹
編輯)"
-#: prefs/FileFormatPrefs.cpp:116
-msgid "&Ask user"
-msgstr "è©¢å使ç¨è
(&A)"
+#: prefs/GUIPrefs.cpp:142
+msgid "-48 dB (PCM range of 8 bit samples)"
+msgstr "-48 dB (PCM 8bit 忍£ç¯å)"
-#: prefs/FileFormatPrefs.cpp:120
-msgid "When exporting tracks to an audio file"
-msgstr "ç¶å¯åºé³è»çºé³è¨æªæ¡æ"
+#: prefs/GUIPrefs.cpp:143
+msgid "-60 dB (PCM range of 10 bit samples)"
+msgstr "-60 dB (PCM 10bit 忍£ç¯å)"
-#: prefs/FileFormatPrefs.cpp:123
-msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
-msgstr "總æ¯å°ææé³è»æ··é³æç«é«è²æå®è²éã"
+#: prefs/GUIPrefs.cpp:144
+msgid "-96 dB (PCM range of 16 bit samples)"
+msgstr "-96 dB (PCM 16bit 忍£ç¯å)"
-#: prefs/FileFormatPrefs.cpp:124
-msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
-msgstr "使ç¨èªè¨æ··é³(èä¾ä¾èªªï¼å¯åºä¸å5.1è²éæªæ¡)(&U)"
+#: prefs/GUIPrefs.cpp:145
+msgid "-120 dB (approximate limit of human hearing)"
+msgstr "-120 dB (æ¥è¿äººé¡è½åçæ¥µé)"
-#: prefs/FileFormatPrefs.cpp:126
-msgid "S&how Metadata Editor prior to export step"
-msgstr "å¨å¯åºå顯示æ¨é æªç·¨è¼¯å¨(&H)"
+#: prefs/GUIPrefs.cpp:146
+msgid "-145 dB (PCM range of 24 bit samples)"
+msgstr "-145 dB(PCM 24bit 忍£ç¯å)"
-#: prefs/GUIPrefs.cpp:34
-#: prefs/GUIPrefs.cpp:35
-msgid "Interface"
-msgstr "ä»é¢"
+#: prefs/SpectrumPrefs.cpp:140
+msgid "Display"
+msgstr "顯示"
-#: prefs/GUIPrefs.cpp:42
-msgid "In Browser"
-msgstr "ç覽å¨"
+#: prefs/GUIPrefs.cpp:100
+msgid "Er&gonomic order of audio I/O buttons"
+msgstr ""
-#: prefs/GUIPrefs.cpp:43
-msgid "From Internet"
-msgstr "網路ä¸ç說æ"
+#: prefs/GUIPrefs.cpp:101
+msgid "Show &welcome message at program start up"
+msgstr ""
-#: prefs/GUIPrefs.cpp:50
-msgid "Simple"
-msgstr "ç°¡å®"
+#: prefs/GUIPrefs.cpp:109
+msgid "Meter/Waveform dB range:"
+msgstr ""
-#: prefs/GUIPrefs.cpp:94
-msgid "&Update display while playing"
-msgstr "å¨ææ¾ææ´æ°é¡¯ç¤º(&U)"
+#: prefs/GUIPrefs.cpp:169
+msgid "Help:"
+msgstr "說æï¼"
#: prefs/GUIPrefs.cpp:96
#, fuzzy
msgid "Cl&osing last window quits Audacity"
msgstr "ééæå¾ä¸åè¦çªæçµæAudacity"
-#: prefs/GUIPrefs.cpp:98
-msgid "Enable &dragging of left and right selection edges"
-msgstr "å
許æåé¸åç¯åå·¦å³å
©ç«¯(&D)"
-
-#: prefs/GUIPrefs.cpp:100
-msgid "Er&gonomic order of audio I/O buttons"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:102
-msgid "Automatically &fit tracks vertically zoomed"
-msgstr "é³è»åç´ç¸®æ¾è³é©ç¶å¤§å°(&F)"
-
-#: prefs/GUIPrefs.cpp:104
-#, fuzzy
-msgid "\"Move track focus\" c&ycles repeatedly through tracks"
-msgstr "\"ç§»åèç¦é³è»\"循ç°ç§»åé³è»(&C)"
-
-#: prefs/GUIPrefs.cpp:106
-msgid "Editing a &clip can move other clips"
-msgstr "ç·¨è¼¯çæ®µä½¿ä¹å¯ç§»åå
¶ä»ç段(&C)"
-
-#: prefs/GUIPrefs.cpp:108
-msgid "&Select all audio in project, if none selected"
-msgstr "è¥æ²æé¸åä»»ä½é³è¨ï¼åé¸åå·¥ç¨å
§ææé³è¨(&S)"
-
#: prefs/GUIPrefs.cpp:110
msgid "&Beep on completion of longer activities"
msgstr "æä»¤å·è¡å®æå¾ç¼åºæç¤ºè²(&B)"
-#: prefs/GUIPrefs.cpp:114
-msgid "Show / Hide"
-msgstr "顯示/é±è"
-
-#: prefs/GUIPrefs.cpp:116
-msgid "Enable cut &lines"
-msgstr "éååªåç·(&L)"
-
-#: prefs/GUIPrefs.cpp:118
-msgid "Show warnings about &temp files"
-msgstr "é¡¯ç¤ºéæ¼æ«åæªæ¡çè¦å(&T)"
-
-#: prefs/GUIPrefs.cpp:120
-msgid "Show prompt to sa&ve, even if project is empty"
-msgstr ""
-
-#: prefs/GUIPrefs.cpp:122
-#, fuzzy
-msgid "Show &Welcome Message at program start up"
-msgstr "ç¨å¼ååæé¡¯ç¤ºæ¡è¿è¨æ¯"
-
#: prefs/GUIPrefs.cpp:126
msgid "Modes"
msgstr "模å¼"
+#: prefs/GUIPrefs.cpp:151
+msgid "Display VST effects in GUI mode"
+msgstr ""
+
#: prefs/GUIPrefs.cpp:129
msgid "Don't a&pply effects in batch mode"
msgstr ""
-#: prefs/GUIPrefs.cpp:138
-msgid "Display range minimum: meters and 'Waveform (dB)'"
-msgstr "æå°é¡¯ç¤ºç¯åï¼å表å\"波形(dB)\""
-
-#: prefs/GUIPrefs.cpp:141
-msgid "-36 dB (shallow range for high-amplitude editing)"
-msgstr "-36 dB (å°ç¯åï¼é©ç¨å¤§æ¯å¹
編輯)"
+#: prefs/FileFormatPrefs.cpp:48 prefs/FileFormatPrefs.cpp:49
+msgid "Import / Export"
+msgstr "å¯å
¥/å¯åº"
-#: prefs/GUIPrefs.cpp:142
-msgid "-48 dB (PCM range of 8 bit samples)"
-msgstr "-48 dB (PCM 8bit 忍£ç¯å)"
+#: prefs/FileFormatPrefs.cpp:100
+msgid "When importing audio files"
+msgstr "ç¶Audacityå¯å
¥è²é³æªæ¡æ"
-#: prefs/GUIPrefs.cpp:143
-msgid "-60 dB (PCM range of 10 bit samples)"
-msgstr "-60 dB (PCM 10bit 忍£ç¯å)"
+#: prefs/FileFormatPrefs.cpp:103
+msgid "&Make a copy of uncompressed audio files before editing (safer)"
+msgstr "å¨ç·¨è¼¯åè£½ä½æªæ¡å份(è¼å®å
¨)(&M)"
-#: prefs/GUIPrefs.cpp:144
-msgid "-96 dB (PCM range of 16 bit samples)"
-msgstr "-96 dB (PCM 16bit 忍£ç¯å)"
+#: prefs/FileFormatPrefs.cpp:104
+msgid "&Read uncompressed audio files directly from the original (faster)"
+msgstr "å¾åå§æªæ¡ä¸ç´æ¥è®å(å¿«é)(&R)"
-#: prefs/GUIPrefs.cpp:145
-msgid "-120 dB (approximate limit of human hearing)"
-msgstr "-120 dB (æ¥è¿äººé¡è½åçæ¥µé)"
+#: prefs/FileFormatPrefs.cpp:106
+msgid "&Normalize all tracks in project"
+msgstr "å°å·¥ç¨å
§ææé³è»å®ä½å(&n)"
-#: prefs/GUIPrefs.cpp:146
-msgid "-145 dB (PCM range of 24 bit samples)"
-msgstr "-145 dB(PCM 24bit 忍£ç¯å)"
+#: prefs/FileFormatPrefs.cpp:120
+msgid "When exporting tracks to an audio file"
+msgstr "ç¶å¯åºé³è»çºé³è¨æªæ¡æ"
-#: prefs/GUIPrefs.cpp:151
-msgid "Default View Mode"
-msgstr "é è¨æª¢è¦æ¨¡å¼"
+#: prefs/FileFormatPrefs.cpp:123
+msgid "A&lways mix all tracks down to Stereo or Mono channel(s)."
+msgstr "總æ¯å°ææé³è»æ··é³æç«é«è²æå®è²éã"
-#: prefs/GUIPrefs.cpp:166
-msgid "Other interface choices"
-msgstr "å
¶ä»ä»é¢é¸æ"
+#: prefs/FileFormatPrefs.cpp:124
+msgid "&Use custom mix (for example to export a 5.1 multichannel file)"
+msgstr "使ç¨èªè¨æ··é³(èä¾ä¾èªªï¼å¯åºä¸å5.1è²éæªæ¡)(&U)"
-#: prefs/GUIPrefs.cpp:169
-msgid "Help:"
-msgstr "說æï¼"
+#: prefs/FileFormatPrefs.cpp:126
+msgid "S&how Metadata Editor prior to export step"
+msgstr "å¨å¯åºå顯示æ¨é æªç·¨è¼¯å¨(&H)"
-#: prefs/GUIPrefs.cpp:170
-msgid "Solo Button:"
-msgstr "ç¨å¥æéï¼"
+#: prefs/ImportExportPrefs.cpp:84
+msgid "Note: Export quality options can be chosen by clicking the Options\n"
+"button in the Export dialog."
+msgstr ""
-#: prefs/KeyConfigPrefs.cpp:64
-#: prefs/KeyConfigPrefs.cpp:65
+#: prefs/KeyConfigPrefs.cpp:64 prefs/KeyConfigPrefs.cpp:65
msgid "Keyboard"
msgstr "éµç¤åè½è¨å®"
@@ -7896,22 +7643,26 @@ msgstr "è¨å®(&E)"
msgid "Note: Pressing Cmd+Q will quit. All other keys are valid."
msgstr "注æï¼æCmd+Qå°çµæãå
¶å®æææéµåææã"
-#: prefs/KeyConfigPrefs.cpp:124
-#: prefs/ThemePrefs.cpp:105
+#: prefs/KeyConfigPrefs.cpp:124 prefs/ThemePrefs.cpp:105
msgid "&Defaults"
msgstr "é è¨å¼(&D)"
+#: prefs/KeyConfigPrefs.cpp:171
+msgid "Command"
+msgstr ""
+
#: prefs/KeyConfigPrefs.cpp:143
msgid "Key Combination"
msgstr "æéµçµå"
-#: prefs/KeyConfigPrefs.cpp:163
-msgid "Export Keyboard Shortcuts As:"
-msgstr "å¯åºå¿«ééµçºï¼"
+#: prefs/KeyConfigPrefs.cpp:367 toolbars/EditToolBar.cpp:144
+msgid "Undo"
+msgstr "復å"
-#: prefs/KeyConfigPrefs.cpp:181
-msgid "Error saving keyboard shortcuts"
-msgstr "å²åå¿«ééµé¯èª¤"
+#: prefs/KeyConfigPrefs.cpp:199 toolbars/EditToolBar.cpp:145
+#: toolbars/EditToolBar.cpp:196
+msgid "Redo"
+msgstr ""
#: prefs/KeyConfigPrefs.cpp:196
msgid "Select an XML file containing Audacity keyboard shortcuts..."
@@ -7921,6 +7672,14 @@ msgstr "é¸åå
å«Audacityå¿«ééµå®ç¾©çXMLæªæ¡..."
msgid "Error loading keyboard shortcuts"
msgstr "è®åå¿«ééµé¯èª¤"
+#: prefs/KeyConfigPrefs.cpp:163
+msgid "Export Keyboard Shortcuts As:"
+msgstr "å¯åºå¿«ééµçºï¼"
+
+#: prefs/KeyConfigPrefs.cpp:181
+msgid "Error saving keyboard shortcuts"
+msgstr "å²åå¿«ééµé¯èª¤"
+
#: prefs/KeyConfigPrefs.cpp:241
#, c-format
msgid "The keyboard shortcut '%s' is already assigned to:\n"
@@ -7929,10 +7688,61 @@ msgid "The keyboard shortcut '%s' is already assigned to:\n"
msgstr "å¿«ééµ'%s'å·²ç¶æå®çºï¼\n"
"'%s'"
-#: prefs/KeyConfigPrefs.cpp:367
-#: toolbars/EditToolBar.cpp:144
-msgid "Undo"
-msgstr "復å"
+#: prefs/LibraryPrefs.cpp:46
+msgid "Libraries"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:77
+msgid "MP3 Export Library"
+msgstr "MP3å¯åºç¨å¼åº«"
+
+#: prefs/FileFormatPrefs.cpp:80
+msgid "MP3 Library Version:"
+msgstr "MP3ç¨å¼åº«çæ¬:"
+
+#: prefs/FileFormatPrefs.cpp:86
+msgid "MP3 Library:"
+msgstr "MP3ç¨å¼åº«ï¼"
+
+#: prefs/FileFormatPrefs.cpp:96 prefs/FileFormatPrefs.cpp:120
+msgid "&Locate..."
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:91
+msgid "LAME MP3 Library:"
+msgstr "LAME MP3ç¨å¼åº«ï¼"
+
+#: prefs/FileFormatPrefs.cpp:94
+msgid "&Download"
+msgstr "ä¸è¼(&D)"
+
+#: prefs/FileFormatPrefs.cpp:106
+msgid "FFmpeg Import/Export Library"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:109
+msgid "FFmpeg Library Version:"
+msgstr ""
+
+#: prefs/LibraryPrefs.cpp:112
+msgid "No compatible FFmpeg library was found"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:118 prefs/FileFormatPrefs.cpp:122
+msgid "FFmpeg Library:"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:41 prefs/AudioIOPrefs.cpp:42
+msgid "Audio I/O"
+msgstr "é³è¨ I/O"
+
+#: prefs/AudioIOPrefs.cpp:123
+msgid "Portaudio v"
+msgstr "Portaudio v"
+
+#: prefs/AudioIOPrefs.cpp:145
+msgid "Playthrough"
+msgstr "ææ¾"
#: prefs/AudioIOPrefs.cpp:147
msgid "&Play other tracks while recording new one"
@@ -7946,6 +7756,10 @@ msgstr ""
msgid "&Software Playthrough (Play new track while recording it)"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:170
+msgid "Cut Preview"
+msgstr "åªè£åå試è½"
+
#: prefs/MidiIOPrefs.cpp:160
msgid "Play before cut region:"
msgstr ""
@@ -7954,6 +7768,10 @@ msgstr ""
msgid "Play after cut region:"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:183
+msgid "Latency"
+msgstr "å»¶é²"
+
#: prefs/MidiIOPrefs.cpp:173
msgid "Audio to buffer:"
msgstr ""
@@ -7966,12 +7784,23 @@ msgstr ""
msgid "Seek Time"
msgstr ""
+#: prefs/AudioIOPrefs.cpp:200
+msgid "Short period:"
+msgstr "çåéï¼"
+
+#: prefs/AudioIOPrefs.cpp:202
+msgid "Long period:"
+msgstr "é·åéï¼"
+
+#: prefs/AudioIOPrefs.cpp:162
+msgid "Effects Preview"
+msgstr "ææè©¦è½"
+
#: prefs/MidiIOPrefs.cpp:196
msgid "Play when previewing:"
msgstr ""
-#: prefs/MousePrefs.cpp:55
-#: prefs/MousePrefs.cpp:56
+#: prefs/MousePrefs.cpp:55 prefs/MousePrefs.cpp:56
msgid "Mouse"
msgstr "æ»é¼ åè½è¡¨"
@@ -7991,37 +7820,26 @@ msgstr "å½ä»¤åä½"
msgid "Buttons"
msgstr "æé"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:117
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:117
#: prefs/MousePrefs.cpp:122
msgid "Left-Click"
msgstr "å·¦éµé»æ"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:100
-#: prefs/MousePrefs.cpp:101
-#: prefs/MousePrefs.cpp:102
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:100
+#: prefs/MousePrefs.cpp:101 prefs/MousePrefs.cpp:102
msgid "Select"
msgstr "é¸å"
-#: prefs/MousePrefs.cpp:98
-#: prefs/MousePrefs.cpp:122
+#: prefs/MousePrefs.cpp:98 prefs/MousePrefs.cpp:122
msgid "Set Selection Point"
msgstr "è¨å®é¸åä½ç½®"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:111
-#: prefs/MousePrefs.cpp:115
-#: prefs/MousePrefs.cpp:119
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:111
+#: prefs/MousePrefs.cpp:115 prefs/MousePrefs.cpp:119 prefs/MousePrefs.cpp:123
msgid "Left-Drag"
msgstr "左鵿æ³"
-#: prefs/MousePrefs.cpp:99
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:99 prefs/MousePrefs.cpp:123
msgid "Set Selection Range"
msgstr "è¨å®é¸åç¯å"
@@ -8049,12 +7867,8 @@ msgstr "æä½CTRLéµä¸¦ä»¥æ»é¼ å·¦éµé»æ"
msgid "Set Selection Point and Play"
msgstr "è¨å®é¸åä½ç½®ä¸¦ææ¾"
-#: prefs/MousePrefs.cpp:104
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:108
-#: prefs/MousePrefs.cpp:109
+#: prefs/MousePrefs.cpp:104 prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:106
+#: prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:108 prefs/MousePrefs.cpp:109
msgid "Zoom"
msgstr "縮æ¾å·¥å
·"
@@ -8062,9 +7876,7 @@ msgstr "縮æ¾å·¥å
·"
msgid "Zoom in on Point"
msgstr "以é»çºç®æ¨æ¾å¤§æª¢è¦"
-#: prefs/MousePrefs.cpp:105
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:105 prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:125
msgid "Zoom in on a Range"
msgstr "ç¯åæ¾å¤§"
@@ -8072,18 +7884,15 @@ msgstr "ç¯åæ¾å¤§"
msgid "same as right-drag"
msgstr "èå³éµææ³ç¸å"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:106 prefs/MousePrefs.cpp:124
msgid "Right-Click"
msgstr "å³éµé»é¸"
-#: prefs/MousePrefs.cpp:106
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:106 prefs/MousePrefs.cpp:124
msgid "Zoom out one step"
msgstr "縮å°ä¸ç´"
-#: prefs/MousePrefs.cpp:107
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:107 prefs/MousePrefs.cpp:125
msgid "Right-Drag"
msgstr "å³éµææ³"
@@ -8119,8 +7928,7 @@ msgstr "Shift-Left-ææ³"
msgid "Time shift all clips in track"
msgstr "ç§»åé³è»ä¸ææç段çæé"
-#: prefs/MousePrefs.cpp:113
-#: prefs/MousePrefs.cpp:120
+#: prefs/MousePrefs.cpp:113 prefs/MousePrefs.cpp:120
msgid "Ctrl-Left-Drag"
msgstr "Ctrl-Left-ææ³"
@@ -8136,9 +7944,7 @@ msgstr "è®æ´æ³¢å°ç·å¢å¹
"
msgid "Change Sample"
msgstr "è®æ´å樣é»"
-#: prefs/MousePrefs.cpp:117
-#: prefs/MousePrefs.cpp:118
-#: prefs/MousePrefs.cpp:119
+#: prefs/MousePrefs.cpp:117 prefs/MousePrefs.cpp:118 prefs/MousePrefs.cpp:119
#: prefs/MousePrefs.cpp:120
msgid "Pencil"
msgstr "繪製工å
·"
@@ -8159,26 +7965,20 @@ msgstr "è®æ´é¨å忍£é»"
msgid "Change ONE Sample only"
msgstr "å
è®æ´ä¸è忍£é»"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
-#: prefs/MousePrefs.cpp:124
+#: prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123 prefs/MousePrefs.cpp:124
#: prefs/MousePrefs.cpp:125
msgid "Multi"
msgstr "è¤åå·¥å
·"
-#: prefs/MousePrefs.cpp:122
-#: prefs/MousePrefs.cpp:123
+#: prefs/MousePrefs.cpp:122 prefs/MousePrefs.cpp:123
msgid "same as select tool"
msgstr "èé¸åå·¥å
·ç¸å"
-#: prefs/MousePrefs.cpp:124
-#: prefs/MousePrefs.cpp:125
+#: prefs/MousePrefs.cpp:124 prefs/MousePrefs.cpp:125
msgid "same as zoom tool"
msgstr "è縮æ¾å·¥å
·ç¸å"
-#: prefs/MousePrefs.cpp:127
-#: prefs/MousePrefs.cpp:128
-#: prefs/MousePrefs.cpp:129
+#: prefs/MousePrefs.cpp:127 prefs/MousePrefs.cpp:128 prefs/MousePrefs.cpp:129
msgid "Any"
msgstr "ä»»ä½å·¥å
·"
@@ -8206,10 +8006,62 @@ msgstr "Ctrl-滾輪"
msgid "Zoom in or out"
msgstr "æ¾å¤§æç¸®å°"
+#: prefs/AudioIOPrefs.cpp:165
+msgid "Length of preview:"
+msgstr "試è½é·åº¦ï¼"
+
+#: prefs/AudioIOPrefs.cpp:173
+msgid "Preview before cut region:"
+msgstr "試è½åªè£åååçé¨åï¼"
+
+#: prefs/AudioIOPrefs.cpp:175
+msgid "Preview after cut region:"
+msgstr "試è½åªè£ååå¾çé¨åï¼"
+
+#: prefs/AudioIOPrefs.cpp:197
+msgid "Seek Time when playing"
+msgstr "ææ¾ææç´¢æéè³è¨"
+
#: prefs/PrefsDialog.cpp:89
msgid "Audacity Preferences"
msgstr "Audacity å好è¨å®"
+#: prefs/ProjectsPrefs.cpp:31
+msgid "Projects"
+msgstr ""
+
+#: prefs/FileFormatPrefs.cpp:111
+msgid "When saving a project that depends on other audio files"
+msgstr "ç¶è¦å²åç¸ä¾æ¼å
¶ä»é³è¨æªæ¡çå·¥ç¨æ"
+
+#: prefs/FileFormatPrefs.cpp:114
+msgid "Always © all audio into project (safest)"
+msgstr "總æ¯è¤è£½ææé³è¨è³å·¥ç¨å
§(æå®å
¨)(&C)"
+
+#: prefs/FileFormatPrefs.cpp:115
+msgid "&Do not copy any audio"
+msgstr "ä¸è¦è¤è£½ä»»ä½é³è¨(&D)"
+
+#: prefs/FileFormatPrefs.cpp:116
+msgid "&Ask user"
+msgstr "è©¢å使ç¨è
(&A)"
+
+#: prefs/DirectoriesPrefs.cpp:99
+msgid "Auto save"
+msgstr "èªåå²å"
+
+#: prefs/DirectoriesPrefs.cpp:101
+msgid "Auto save a copy of the project in a separate folder"
+msgstr "èªåå°å·¥ç¨å¨ç¨ç«çè³æå¤¾å¦åä¸ä»½"
+
+#: prefs/DirectoriesPrefs.cpp:104
+msgid "Auto save interval:"
+msgstr "èªåå²ååéï¼"
+
+#: prefs/DirectoriesPrefs.cpp:105
+msgid "minutes"
+msgstr "åé"
+
#: prefs/QualityPrefs.cpp:73
msgid "Rectangle"
msgstr "ç©å½¢"
@@ -8234,46 +8086,46 @@ msgstr "é è¨åæ¨£é »çï¼"
msgid "Default Sample Format:"
msgstr "é è¨åæ¨£æ ¼å¼ï¼"
-#: prefs/QualityPrefs.cpp:136
-msgid "Real-time sample rate converter:"
-msgstr "峿忍£é »çè½æå¨ï¼"
-
-#: prefs/QualityPrefs.cpp:139
-msgid "High-quality sample rate converter:"
-msgstr "é«åè³ªåæ¨£é »çè½æå¨ï¼"
-
-#: prefs/QualityPrefs.cpp:142
-msgid "Real-time dither:"
-msgstr "峿æ¾å(dither)ï¼"
-
-#: prefs/QualityPrefs.cpp:145
-msgid "High-quality dither:"
-msgstr "é«å質æ¾åï¼"
-
-#: prefs/QualityPrefs.cpp:157
-msgid "Conversion"
-msgstr "è½æ"
+#: prefs/QualityPrefs.cpp:165
+msgid "Real-time Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:163
-msgid "Sample Rate Converter"
+#: prefs/QualityPrefs.cpp:171 prefs/QualityPrefs.cpp:193
+#, fuzzy
+msgid "Sample Rate Converter:"
msgstr "忍£é »çè½æå¨"
#: prefs/QualityPrefs.cpp:164
msgid "Dither"
msgstr "æ¾å"
-#: prefs/QualityPrefs.cpp:165
-msgid "Real-time:"
-msgstr "峿ï¼"
+#: prefs/QualityPrefs.cpp:189
+msgid "High-quality Conversion"
+msgstr ""
-#: prefs/QualityPrefs.cpp:171
-msgid "High-quality:"
-msgstr "é«å質ï¼"
+#: prefs/AudioIOPrefs.cpp:149
+msgid "Overdub: &Play other tracks while recording new one"
+msgstr ""
-#: prefs/SmartRecordPrefs.cpp:54
-#: prefs/SmartRecordPrefs.cpp:55
-msgid "Smart Recording"
-msgstr "æºæ
§é製"
+#: prefs/AudioIOPrefs.cpp:150
+msgid "&Hardware Playthrough: Play new track while recording it"
+msgstr "ç¡¬é«ææ¾(&H)ï¼å¨éé³æææ¾æ°å»ºçé³è»"
+
+#: prefs/AudioIOPrefs.cpp:157
+msgid "&Software Playthrough: Play new track while recording or monitoring"
+msgstr ""
+
+#: prefs/AudioIOPrefs.cpp:160
+msgid "(uncheck when recording \"stereo mix\")"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:86
+msgid "milliseconds (higher = more latency)"
+msgstr ""
+
+#: prefs/RecordingPrefs.cpp:92
+msgid "milliseconds (negative = backwards)"
+msgstr ""
#: prefs/SmartRecordPrefs.cpp:64 prefs/SmartRecordPrefs.cpp:66
msgid "Sound Activated Recording"
@@ -8283,23 +8135,58 @@ msgstr ""
msgid "Sound Activation Level (dB):"
msgstr ""
-#: prefs/SpectrumPrefs.cpp:41
-#: prefs/SpectrumPrefs.cpp:42
+#: prefs/SpectrumPrefs.cpp:41 prefs/SpectrumPrefs.cpp:42
msgid "Spectrograms"
msgstr "è²èå"
-#: prefs/SpectrumPrefs.cpp:91
-msgid "FFT Size"
-msgstr "FFTç忍£é»æ¸"
-
#: prefs/SpectrumPrefs.cpp:94
msgid "8 - most wideband"
msgstr "8 - é »å¯¬æå¯¬"
+#: prefs/SpectrumPrefs.cpp:42
+msgid "16"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:43
+msgid "32"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:44
+msgid "64"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:45
+msgid "128"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:99
msgid "256 - default"
msgstr "256 - é è¨å¼"
+#: prefs/SpectrumPrefs.cpp:47
+msgid "512"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:48
+msgid "1024"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:49
+msgid "2048"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:51
+msgid "4096"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:52
+msgid "8192"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:53
+msgid "16384"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:107
msgid "32768 - most narrowband"
msgstr "32768 - é »å¯¬æçª"
@@ -8308,21 +8195,26 @@ msgstr "32768 - é »å¯¬æçª"
msgid "4096 - most narrowband"
msgstr "4096 - é »å¯¬æçª"
-#: prefs/SpectrumPrefs.cpp:116
-msgid "Window type:"
+#: prefs/SpectrumPrefs.cpp:82
+msgid "FFT Window"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:86
+msgid "Window size"
+msgstr ""
+
+#: prefs/SpectrumPrefs.cpp:93
+#, fuzzy
+msgid "Window type"
msgstr "FFT Windowé¡åï¼"
#: prefs/SpectrumPrefs.cpp:125
msgid "FFT Skip Points"
msgstr "FFT忽ç¥é»"
-#: prefs/SpectrumPrefs.cpp:140
-msgid "Display"
-msgstr "顯示"
-
-#: prefs/SpectrumPrefs.cpp:144
-msgid "&Grayscale"
-msgstr "ç°é(&G)"
+#: prefs/SpectrumPrefs.cpp:117
+msgid "Skip Points"
+msgstr ""
#: prefs/SpectrumPrefs.cpp:147
msgid "Minimum Frequency (Hz):"
@@ -8332,17 +8224,17 @@ msgstr "æä½é »ç (Hz)ï¼"
msgid "Maximum Frequency (Hz):"
msgstr "æé«é »ç (Hz)ï¼"
-#: prefs/SpectrumPrefs.cpp:158
-msgid "&Y-Grid"
-msgstr "&Y-ç¶²æ ¼"
+#: prefs/SpectrumPrefs.cpp:147
+msgid "Show the spectrum using &grayscale colors"
+msgstr ""
-#: prefs/SpectrumPrefs.cpp:161
-msgid "&Find Notes"
-msgstr "å°æ¾è¨»è§£(&F)"
+#: prefs/SpectrumPrefs.cpp:152
+msgid "Show a grid along the &Y-axis"
+msgstr ""
-#: prefs/SpectrumPrefs.cpp:162
-msgid "&Quantize Notes"
-msgstr "éå註解(&Q)"
+#: prefs/SpectrumPrefs.cpp:160
+msgid "FFT Find Notes"
+msgstr ""
#: prefs/SpectrumPrefs.cpp:165
msgid "Minimum Amplitude (dB):"
@@ -8352,6 +8244,14 @@ msgstr "æä½æ¯å¹
(dB)ï¼"
msgid "Max. Number of Notes (1..128):"
msgstr "註解æå¤§æ¸ç®(1-128)ï¼"
+#: prefs/SpectrumPrefs.cpp:161
+msgid "&Find Notes"
+msgstr "å°æ¾è¨»è§£(&F)"
+
+#: prefs/SpectrumPrefs.cpp:162
+msgid "&Quantize Notes"
+msgstr "éå註解(&Q)"
+
#: prefs/SpectrumPrefs.cpp:197
msgid "The maximum frequency must be an integer"
msgstr "æå¤§é »çå¼å¿
é æ¯æ´æ¸ã"
@@ -8368,20 +8268,68 @@ msgstr "æä½é »çå¼å¿
é æ¯æ´æ¸ã"
msgid "Minimum frequency must be at least 0 Hz"
msgstr "æä½é »çæå°çº0 Hz"
+#: prefs/SpectrumPrefs.cpp:213
+msgid "Minimum frequency must be less than maximum frequency"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:220
msgid "The minimum amplitude (dB) must be an integer"
msgstr "æä½æ¯å¹
(dB)å¿
é æ¯æ´æ¸ã"
#: prefs/SpectrumPrefs.cpp:226
+msgid "The maximum number of notes must be an integer"
+msgstr ""
+
#: prefs/SpectrumPrefs.cpp:230
-msgid "The Maximum Number of Notes must be an integer in the range 1..128"
-msgstr "æå¤§é »çå¼å¿
é æ¯1-128ä¹éçæ´æ¸ã"
+msgid "The maximum number of notes must be in the range 1..128"
+msgstr ""
-#: prefs/ThemePrefs.cpp:62
-#: prefs/ThemePrefs.cpp:63
+#: prefs/ThemePrefs.cpp:62 prefs/ThemePrefs.cpp:63
msgid "Theme"
msgstr "使¯"
+#: prefs/ThemePrefs.cpp:126
+msgid "Info"
+msgstr "è³è¨"
+
+#: prefs/ThemePrefs.cpp:91
+#, fuzzy
+msgid "Themability is an experimental feature.\n"
+"\n"
+"To try it out, click \"Save Theme Cache\" then find and modify the images and colors in\n"
+"ImageCacheVxx.png using an image editor such as the Gimp.\n"
+"\n"
+"Click \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n"
+"\n"
+"[Only the control toolbar and the colors on the wavetrack are currently affected, even\n"
+"though the image file shows other icons too.]"
+msgstr "使¯æ¯ä¸å坦驿§çåè½ã\n"
+"\n"
+"é»\"å²å使¯å¿«å\"ï¼\n"
+"ç¶å¾ç¨å½±åèçè»é«ï¼å¦GIMPï¼\n"
+"ä¾å°æ¾ä¸¦ä¿®æ¹ImageCacheVxx.pngçå½±ååé¡è²ã\n"
+"\n"
+"é»\"è¼å
¥ä½æ¯å¿«å\"ï¼ä¾è¼å
¥ä¿®æ¹å¥½çå½±å\n"
+"åé¡è²ä¾åå°Audacityã\n"
+"\n"
+"[åªææ§å¶å·¥å
·ååé³è»çé¡è²å¯ä»¥æ¹è®ï¼\n"
+"è¥å½±åæªæ¡é¡¯ç¤ºå
¶ä»çå·¥å
·åå示ï¼ä»ç¶ç¡æã]"
+
+#: prefs/ThemePrefs.cpp:96
+msgid "You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\n"
+"C version of the image cache that can be compiled in as a default."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:101
+msgid "If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\n"
+"when the program starts up."
+msgstr ""
+
+#: prefs/ThemePrefs.cpp:104
+msgid "Saving and loading individual theme files uses a separate file for each image, but is\n"
+"otherwise the same idea."
+msgstr ""
+
#. i18n-hint: && in here is an escape character to get a single & on screen,
#. * so keep it as is
#: prefs/ThemePrefs.cpp:93
@@ -8412,96 +8360,97 @@ msgstr "å²åæªæ¡"
msgid "Load Files"
msgstr "è¼å
¥æªæ¡"
-#: prefs/ThemePrefs.cpp:126
-msgid "Info"
-msgstr "è³è¨"
+#: prefs/GUIPrefs.cpp:50
+msgid "Simple"
+msgstr "ç°¡å®"
-#: prefs/ThemePrefs.cpp:129
-msgid "Themability is an experimental feature.\n"
-"\n"
-"To try it out, click \"Save Theme Cache\" then\n"
-"find and modify the images and colors in \n"
-"ImageCacheVxx.png using an image editor such \n"
-"as the Gimp.\n"
-"\n"
-"Click \"Load Theme Cache\" to load the changed images\n"
-"and colors back into Audacity.\n"
-"\n"
-"[Only the control toolbar and the colors on the \n"
-"wavetrack are currently affected, even though the\n"
-"image file shows other icons too.]\n"
-msgstr "使¯æ¯ä¸å坦驿§çåè½ã\n"
-"\n"
-"é»\"å²å使¯å¿«å\"ï¼\n"
-"ç¶å¾ç¨å½±åèçè»é«ï¼å¦GIMPï¼\n"
-"ä¾å°æ¾ä¸¦ä¿®æ¹ImageCacheVxx.pngçå½±ååé¡è²ã\n"
-"\n"
-"é»\"è¼å
¥ä½æ¯å¿«å\"ï¼ä¾è¼å
¥ä¿®æ¹å¥½çå½±å\n"
-"åé¡è²ä¾åå°Audacityã\n"
-"\n"
-"[åªææ§å¶å·¥å
·ååé³è»çé¡è²å¯ä»¥æ¹è®ï¼\n"
-"è¥å½±åæªæ¡é¡¯ç¤ºå
¶ä»çå·¥å
·åå示ï¼ä»ç¶ç¡æã]\n"
-
-#: prefs/ThemePrefs.cpp:134
-msgid "You have compiled Audacity with an extra button, \n"
-"'Output Sourcery'. This will save a C version of \n"
-"the image cache that can be compiled in as a default.\n"
-msgstr "æ¨å°é¡å¤çæé'Output Sourcery'ç·¨è¯é²Audacityã\n"
-
-#: prefs/ThemePrefs.cpp:139
-msgid "If 'Load Theme Cache At Startup' is checked, then \n"
-"the Theme Cache will be loaded when the program \n"
-"starts up.\n"
-"\n"
-msgstr "è¥é¸æ'ååæè¼å
¥ä½æ¯å¿«å'ï¼\n"
-"åæ¯æ¬¡ç¶ç¨å¼éåæï¼\n"
-"齿è¼å
¥ä½æ¯å¿«åã\n"
-"\n"
+#: prefs/GUIPrefs.cpp:94
+msgid "&Update display while playing"
+msgstr "å¨ææ¾ææ´æ°é¡¯ç¤º(&U)"
-#: prefs/ThemePrefs.cpp:142
-msgid "Saving and loading individual theme files uses a \n"
-"separate file for each image, but is otherwise the \n"
-"same idea.\n"
-"\n"
-msgstr "å²ååè¼å
¥ä½æ¯æªæ¡çå½±å使ç¨\n"
-"åéçæªæ¡ï¼\n"
-"ä¸éæ¯ç¸åç主æã\n"
-"\n"
+#: prefs/GUIPrefs.cpp:102
+msgid "Automatically &fit tracks vertically zoomed"
+msgstr "é³è»åç´ç¸®æ¾è³é©ç¶å¤§å°(&F)"
-#: toolbars/ControlToolBar.cpp:174
-msgid "Pause"
-msgstr "æ«å"
+#: prefs/TracksPrefs.cpp:88
+#, fuzzy
+msgid "Default View Mode:"
+msgstr "é è¨æª¢è¦æ¨¡å¼"
-#: toolbars/ControlToolBar.cpp:177
-msgid "Play"
-msgstr "ææ¾"
+#: prefs/GUIPrefs.cpp:108
+msgid "&Select all audio in project, if none selected"
+msgstr "è¥æ²æé¸åä»»ä½é³è¨ï¼åé¸åå·¥ç¨å
§ææé³è¨(&S)"
-#: toolbars/ControlToolBar.cpp:178
-msgid "Play (Shift for Loop Play)"
+#: prefs/GUIPrefs.cpp:116
+msgid "Enable cut &lines"
+msgstr "éååªåç·(&L)"
+
+#: prefs/GUIPrefs.cpp:98
+msgid "Enable &dragging of left and right selection edges"
+msgstr "å
許æåé¸åç¯åå·¦å³å
©ç«¯(&D)"
+
+#: prefs/GUIPrefs.cpp:104
+#, fuzzy
+msgid "\"Move track focus\" c&ycles repeatedly through tracks"
+msgstr "\"ç§»åèç¦é³è»\"循ç°ç§»åé³è»(&C)"
+
+#: prefs/GUIPrefs.cpp:106
+msgid "Editing a &clip can move other clips"
+msgstr "ç·¨è¼¯çæ®µä½¿ä¹å¯ç§»åå
¶ä»ç段(&C)"
+
+#: prefs/GUIPrefs.cpp:170
+msgid "Solo Button:"
+msgstr "ç¨å¥æéï¼"
+
+#: prefs/WarningsPrefs.cpp:31
+msgid "Warnings"
msgstr ""
-#: toolbars/ControlToolBar.cpp:182
-msgid "Stop"
-msgstr "忢"
+#: prefs/WarningsPrefs.cpp:55
+msgid "Show Warnings/Prompts"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:185
-msgid "Skip to Start"
-msgstr "è·³è³èµ·å§é»"
+#: prefs/WarningsPrefs.cpp:57
+msgid "When saving &projects"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:188
-msgid "Skip to End"
-msgstr "è·³è³çµæé»"
+#: prefs/WarningsPrefs.cpp:60
+msgid "When saving &empty project"
+msgstr ""
-#: toolbars/ControlToolBar.cpp:192
-msgid "Record (Shift for Append Record)"
+#: prefs/WarningsPrefs.cpp:63
+msgid "When &disk space is getting low"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:66
+msgid "When mixing down to &stereo during export"
+msgstr ""
+
+#: prefs/WarningsPrefs.cpp:69
+msgid "When mixing down to &mono during export"
msgstr ""
+#: Menus.cpp:786
+msgid "Pause"
+msgstr "æ«å"
+
+#: Menus.cpp:785
+msgid "Stop"
+msgstr "忢"
+
#: toolbars/ControlToolBar.cpp:194
msgid "Clean Speech"
msgstr "æ¸
é¤äººè²"
-#: toolbars/ControlToolBar.cpp:530
-#: toolbars/ControlToolBar.cpp:844
+#: toolbars/ControlToolBar.cpp:178
+msgid "Play (Shift for Loop Play)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:192
+msgid "Record (Shift for Append Record)"
+msgstr ""
+
+#: toolbars/ControlToolBar.cpp:530 toolbars/ControlToolBar.cpp:844
msgid "Error while opening sound device. "
msgstr "éåé³è¨è£ç½®é¯èª¤ã"
@@ -8513,13 +8462,11 @@ msgstr "ç¶é³è»æä¸å以ä¸çå·¥ç¨éåæï¼ç¡æ³ä»¥æ¸
é¤äººè²ç模
msgid "Recording not permitted"
msgstr "ä¸å
許éé³"
-#: toolbars/DeviceToolBar.cpp:113
-#: toolbars/DeviceToolBar.cpp:115
+#: toolbars/DeviceToolBar.cpp:113 toolbars/DeviceToolBar.cpp:115
msgid "Output Device"
msgstr "輸åºè£ç½®"
-#: toolbars/DeviceToolBar.cpp:134
-#: toolbars/DeviceToolBar.cpp:136
+#: toolbars/DeviceToolBar.cpp:134 toolbars/DeviceToolBar.cpp:136
msgid "Input Device"
msgstr "輸å
¥è£ç½®"
@@ -8543,29 +8490,21 @@ msgstr "æ¾å¤§"
msgid "Zoom Out"
msgstr "縮å°"
-#: toolbars/EditToolBar.cpp:156
-msgid "Zoom Toggle"
-msgstr "éå®ç¸®æ¾åç"
-
-#: toolbars/EditToolBar.cpp:160
-msgid "Fit Selection"
-msgstr "é©åé¸åç¯å"
-
#: toolbars/EditToolBar.cpp:160
msgid "Fit selection in window"
msgstr "é¸åç¯åé©åè¦çªå¤§å°"
#: toolbars/EditToolBar.cpp:162
-msgid "Fit Project"
-msgstr "é©åå·¥ç¨"
-
-#: toolbars/EditToolBar.cpp:162
msgid "Fit project in window"
msgstr "æé³å·¥ç¨é©åè¦çªå¤§å°"
-#: toolbars/MeterToolBar.cpp:50
-msgid "Meter"
-msgstr "å表工å
·å"
+#: toolbars/EditToolBar.cpp:160
+msgid "Fit Selection"
+msgstr "é©åé¸åç¯å"
+
+#: toolbars/EditToolBar.cpp:162
+msgid "Fit Project"
+msgstr "é©åå·¥ç¨"
#: toolbars/MeterToolBar.cpp:80
msgid "Play Meter"
@@ -8613,22 +8552,27 @@ msgstr "æ·¡å
¥"
msgid "Input Source"
msgstr "輸å
¥ä¾æº"
+#: toolbars/MixerToolBar.cpp:299
+msgid "Input source information is not available."
+msgstr ""
+
+#: toolbars/MixerToolBar.cpp:306
+msgid "Select Input Source"
+msgstr ""
+
#: toolbars/SelectionBar.cpp:80
msgid "Selection"
msgstr "é¸åç¯å"
-#: toolbars/SelectionBar.cpp:128
-#: toolbars/SelectionBar.cpp:185
+#: toolbars/SelectionBar.cpp:128 toolbars/SelectionBar.cpp:185
msgid "Project Rate (Hz):"
msgstr "æé³å·¥ç¨éç(Hz)ï¼"
-#: toolbars/SelectionBar.cpp:142
-#: toolbars/SelectionBar.cpp:247
+#: toolbars/SelectionBar.cpp:142 toolbars/SelectionBar.cpp:247
msgid "Selection Start:"
msgstr "é¸åç¯åèµ·é»"
-#: toolbars/SelectionBar.cpp:155
-#: toolbars/SelectionBar.cpp:253
+#: toolbars/SelectionBar.cpp:155 toolbars/SelectionBar.cpp:253
msgid "Length"
msgstr "æéé·åº¦"
@@ -8636,13 +8580,11 @@ msgstr "æéé·åº¦"
msgid "hidden"
msgstr "é±è"
-#: toolbars/SelectionBar.cpp:175
-#: toolbars/SelectionBar.cpp:264
+#: toolbars/SelectionBar.cpp:175 toolbars/SelectionBar.cpp:264
msgid "Audio Position:"
msgstr "ææ¾æéä½ç½®ï¼"
-#: toolbars/SelectionBar.cpp:225
-#: toolbars/SelectionBar.cpp:230
+#: toolbars/SelectionBar.cpp:225 toolbars/SelectionBar.cpp:230
msgid "Snap To"
msgstr "æ»æ£è³"
@@ -8663,8 +8605,7 @@ msgstr "é¸åç¯åçµé»"
msgid "Audacity %s ToolBar"
msgstr "Audacity %s編輯工å
·å"
-#: toolbars/ToolDock.cpp:74
-#: toolbars/ToolDock.cpp:75
+#: toolbars/ToolDock.cpp:74 toolbars/ToolDock.cpp:75
msgid "ToolDock"
msgstr "å·¥å
·åé§"
@@ -8696,36 +8637,6 @@ msgstr "æ»é¼ å·¦éµ=æ¾å¤§ï¼å³éµ=縮å°ï¼ä¸éµ=æ£å¸¸"
msgid "Click and drag to move a track in time"
msgstr "å®æææ³ä»¥ç§»åæéç¯åå
§çé³è»ã"
-#: toolbars/ToolsToolBar.cpp:90
-msgid "Tools"
-msgstr "å·¥å
·"
-
-# æä¸æ¤æéå¾ï¼å¯ä»¥ç¨ææ³æ³å»ºç«é³æ³¢é¸ååï¼ä»¥é²è¡ç·¨è¼¯å·¥ä½ã
-#: toolbars/ToolsToolBar.cpp:147
-#: toolbars/ToolsToolBar.cpp:182
-msgid "Selection Tool"
-msgstr "é¸åå·¥å
·"
-
-#: toolbars/ToolsToolBar.cpp:148
-msgid "Envelope Tool"
-msgstr "æ³¢å°å·¥å
·"
-
-# æä¸æ¤æéå¾ï¼å¯ä»¥ç¨ææ³æ³å°æ´é³ææªçæéå¾å/å¾å¾ç§»åã
-#: toolbars/ToolsToolBar.cpp:149
-#: toolbars/ToolsToolBar.cpp:183
-msgid "Time Shift Tool"
-msgstr "æéç§»ä½å·¥å
·"
-
-#: toolbars/ToolsToolBar.cpp:150
-#: toolbars/ToolsToolBar.cpp:185
-msgid "Zoom Tool"
-msgstr "縮æ¾å·¥å
·"
-
-#: toolbars/ToolsToolBar.cpp:151
-#: toolbars/ToolsToolBar.cpp:184
-msgid "Draw Tool"
-msgstr "ææå·¥å
·"
-
#: toolbars/ToolsToolBar.cpp:152
msgid "Multi-Tool Mode"
msgstr "è¤åå·¥å
·æ¨¡å¼"
@@ -8735,24 +8646,11 @@ msgstr "è¤åå·¥å
·æ¨¡å¼"
msgid "Slide Tool"
msgstr "æ»åå·¥å
·"
-#: toolbars/ToolsToolBar.cpp:187
-msgid "Multi Tool"
-msgstr "è¤åå·¥å
·"
-
-#: toolbars/TranscriptionToolBar.cpp:84
-msgid "Transcription"
-msgstr "éé³"
-
#: toolbars/TranscriptionToolBar.cpp:171
msgid "Play at selected speed"
msgstr "以é¸å®éåº¦ææ¾"
-#: toolbars/TranscriptionToolBar.cpp:172
-msgid "Play-at-speed"
-msgstr "ææ¾é度"
-
-#: toolbars/TranscriptionToolBar.cpp:178
-#: toolbars/TranscriptionToolBar.cpp:183
+#: toolbars/TranscriptionToolBar.cpp:178 toolbars/TranscriptionToolBar.cpp:183
msgid "Playback Speed"
msgstr "ææ¾é度"
@@ -8760,74 +8658,38 @@ msgstr "ææ¾é度"
msgid "Adjust left selection to next onset"
msgstr "調æ´å·¦é¸æ®µè³ä¸ä¸åèµ·é»"
-#: toolbars/TranscriptionToolBar.cpp:197
-msgid "Left-to-On"
-msgstr "Left-to-On"
-
#: toolbars/TranscriptionToolBar.cpp:199
msgid "Adjust right selection to previous offset"
msgstr "調æ´å³é¸æ®µè³åä¸åçµæé»"
-#: toolbars/TranscriptionToolBar.cpp:200
-msgid "Right-to-Off"
-msgstr "Right-to-Off"
-
#: toolbars/TranscriptionToolBar.cpp:202
msgid "Adjust left selection to next offset"
msgstr "調æ´å·¦é¸æ®µè³ä¸ä¸åçµæé»"
-#: toolbars/TranscriptionToolBar.cpp:203
-msgid "Left-to-Off"
-msgstr "Left-to-Off"
-
#: toolbars/TranscriptionToolBar.cpp:205
msgid "Adjust right selection to previous onset"
msgstr "調æ´å³é¸æ®µè³åä¸åèµ·é»"
-#: toolbars/TranscriptionToolBar.cpp:206
-msgid "Right-to-On"
-msgstr "Right-to-On"
-
#: toolbars/TranscriptionToolBar.cpp:208
msgid "Select region of sound around cursor"
msgstr "é¸å游æ¨éè¿æè²é³çåå"
-#: toolbars/TranscriptionToolBar.cpp:209
-msgid "Select-Sound"
-msgstr "鏿è²é³"
-
#: toolbars/TranscriptionToolBar.cpp:211
msgid "Select region of silence around cursor"
msgstr "é¸å游æ¨éè¿ç¡è²é³çåå"
-#: toolbars/TranscriptionToolBar.cpp:212
-msgid "Select-Silence"
-msgstr "鏿éé³"
-
#: toolbars/TranscriptionToolBar.cpp:214
msgid "Automatically make labels from words"
msgstr "å°åè©èªåå å
¥æ¨ç±¤"
-#: toolbars/TranscriptionToolBar.cpp:215
-msgid "Make Labels"
-msgstr "ç¢çæ¨ç±¤"
-
#: toolbars/TranscriptionToolBar.cpp:217
msgid "Add label at selection"
msgstr "å¨é¸åç¯åå 䏿¨ç±¤"
-#: toolbars/TranscriptionToolBar.cpp:218
-msgid "Add Label"
-msgstr "æ°å¢æ¨ç±¤"
-
#: toolbars/TranscriptionToolBar.cpp:220
msgid "Calibrate voicekey"
msgstr "æ ¡æºé³èª¿"
-#: toolbars/TranscriptionToolBar.cpp:221
-msgid "Calibrate"
-msgstr "æ ¡æº"
-
#: toolbars/TranscriptionToolBar.cpp:225
msgid "Adjust Sensitivity"
msgstr "調æ´éæåº¦"
@@ -8860,6 +8722,46 @@ msgstr "ç´æ¥è®æ´(é«é檻)"
msgid "Key type"
msgstr "ééµé¡å"
+#: toolbars/TranscriptionToolBar.cpp:172
+msgid "Play-at-speed"
+msgstr "ææ¾é度"
+
+#: toolbars/TranscriptionToolBar.cpp:197
+msgid "Left-to-On"
+msgstr "Left-to-On"
+
+#: toolbars/TranscriptionToolBar.cpp:200
+msgid "Right-to-Off"
+msgstr "Right-to-Off"
+
+#: toolbars/TranscriptionToolBar.cpp:203
+msgid "Left-to-Off"
+msgstr "Left-to-Off"
+
+#: toolbars/TranscriptionToolBar.cpp:206
+msgid "Right-to-On"
+msgstr "Right-to-On"
+
+#: toolbars/TranscriptionToolBar.cpp:209
+msgid "Select-Sound"
+msgstr "鏿è²é³"
+
+#: toolbars/TranscriptionToolBar.cpp:212
+msgid "Select-Silence"
+msgstr "鏿éé³"
+
+#: toolbars/TranscriptionToolBar.cpp:215
+msgid "Make Labels"
+msgstr "ç¢çæ¨ç±¤"
+
+#: toolbars/TranscriptionToolBar.cpp:218
+msgid "Add Label"
+msgstr "æ°å¢æ¨ç±¤"
+
+#: toolbars/TranscriptionToolBar.cpp:221
+msgid "Calibrate"
+msgstr "æ ¡æº"
+
#: widgets/AButton.cpp:302
msgid " (disabled)"
msgstr " (åç¨)"
@@ -8874,15 +8776,13 @@ msgstr "æé"
#. i18n-hint: One-letter abbreviation for Left, in VU Meter
#. i18n-hint: One-letter abbreviation for Left, in the Pan slider
-#: widgets/ASlider.cpp:604
-#: widgets/Meter.cpp:212
+#: widgets/ASlider.cpp:604 widgets/Meter.cpp:212
msgid "L"
msgstr "å·¦"
#. i18n-hint: One-letter abbreviation for Right, in VU Meter
#. i18n-hint: One-letter abbreviation for Right, in the Pan slider
-#: widgets/ASlider.cpp:607
-#: widgets/Meter.cpp:214
+#: widgets/ASlider.cpp:607 widgets/Meter.cpp:214
msgid "R"
msgstr "å³"
@@ -8898,8 +8798,7 @@ msgstr "å·¦è²é"
msgid "Right"
msgstr "å³è²é"
-#: widgets/ErrorDialog.cpp:78
-#: widgets/ErrorDialog.cpp:102
+#: widgets/ErrorDialog.cpp:78 widgets/ErrorDialog.cpp:102
msgid "Help"
msgstr "說æ(&H)"
@@ -8932,8 +8831,7 @@ msgstr "æ·åå¨"
msgid "%d rows, %d columns"
msgstr "%dåï¼%dè¡"
-#: widgets/Grid.cpp:649
-#: widgets/Grid.cpp:776
+#: widgets/Grid.cpp:649 widgets/Grid.cpp:776
#, c-format
msgid "Row %d"
msgstr "å%d"
@@ -9012,8 +8910,7 @@ msgstr ""
msgid "Cancel"
msgstr ""
-#: widgets/Ruler.cpp:1478
-#: widgets/Ruler.cpp:1479
+#: widgets/Ruler.cpp:1478 widgets/Ruler.cpp:1479
msgid "Vertical Ruler"
msgstr "åç´å°ºè¦"
@@ -9257,3 +9154,15 @@ msgstr ""
msgid "Could not load file: \"%s\""
msgstr "ç¡æ³è¼å
¥æªæ¡ï¼ \"%s\""
+#: xml/XMLWriter.cpp:325
+msgid "Error flushing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:330
+msgid "Error closing file"
+msgstr ""
+
+#: xml/XMLWriter.cpp:340
+msgid "Error writing to file"
+msgstr ""
+
diff --git a/ltconfig b/ltconfig
deleted file mode 100755
index 65ec6f6..0000000
--- a/ltconfig
+++ /dev/null
@@ -1,3017 +0,0 @@
-#! /bin/sh
-
-# ltconfig - Create a system-specific libtool.
-# Copyright (C) 1996-1999 Free Software Foundation, Inc.
-# Originally by Gordon Matzigkeit <gord at gnu.ai.mit.edu>, 1996
-#
-# This file 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-# A lot of this script is taken from autoconf-2.10.
-
-# Check that we are running under the correct shell.
-SHELL=${CONFIG_SHELL-/bin/sh}
-echo=echo
-if test "X$1" = X--no-reexec; then
- # Discard the --no-reexec flag, and continue.
- shift
-elif test "X$1" = X--fallback-echo; then
- # Avoid inline document here, it may be left over
- :
-elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then
- # Yippee, $echo works!
- :
-else
- # Restart under the correct shell.
- exec "$SHELL" "$0" --no-reexec ${1+"$@"}
-fi
-
-if test "X$1" = X--fallback-echo; then
- # used as fallback echo
- shift
- cat <<EOF
-$*
-EOF
- exit 0
-fi
-
-# Find the correct PATH separator. Usually this is `:', but
-# DJGPP uses `;' like DOS.
-if test "X${PATH_SEPARATOR+set}" != "Xset"; then
- UNAME=${UNAME-`uname 2>/dev/null`}
- case X$UNAME in
- *-DOS) PATH_SEPARATOR=';' ;;
- *) PATH_SEPARATOR=':' ;;
- esac
-fi
-
-# The HP-UX ksh and POSIX shell print the target directory to stdout
-# if CDPATH is set.
-if test "${CDPATH+set}" = set; then CDPATH=; export CDPATH; fi
-
-if test "X${echo_test_string+set}" != "Xset"; then
- # find a string as large as possible, as long as the shell can cope with it
- for cmd in 'sed 50q "$0"' 'sed 20q "$0"' 'sed 10q "$0"' 'sed 2q "$0"' 'echo test'; do
- # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
- if (echo_test_string="`eval $cmd`") 2>/dev/null &&
- echo_test_string="`eval $cmd`" &&
- (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null; then
- break
- fi
- done
-fi
-
-if test "X`($echo '\t') 2>/dev/null`" != 'X\t' ||
- test "X`($echo "$echo_test_string") 2>/dev/null`" != X"$echo_test_string"; then
- # The Solaris, AIX, and Digital Unix default echo programs unquote
- # backslashes. This makes it impossible to quote backslashes using
- # echo "$something" | sed 's/\\/\\\\/g'
- #
- # So, first we look for a working echo in the user's PATH.
-
- IFS="${IFS= }"; save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
- for dir in $PATH /usr/ucb; do
- if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
- test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
- test "X`($dir/echo "$echo_test_string") 2>/dev/null`" = X"$echo_test_string"; then
- echo="$dir/echo"
- break
- fi
- done
- IFS="$save_ifs"
-
- if test "X$echo" = Xecho; then
- # We didn't find a better echo, so look for alternatives.
- if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' &&
- test "X`(print -r "$echo_test_string") 2>/dev/null`" = X"$echo_test_string"; then
- # This shell has a builtin print -r that does the trick.
- echo='print -r'
- elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) &&
- test "X$CONFIG_SHELL" != X/bin/ksh; then
- # If we have ksh, try running ltconfig again with it.
- ORIGINAL_CONFIG_SHELL="${CONFIG_SHELL-/bin/sh}"
- export ORIGINAL_CONFIG_SHELL
- CONFIG_SHELL=/bin/ksh
- export CONFIG_SHELL
- exec "$CONFIG_SHELL" "$0" --no-reexec ${1+"$@"}
- else
- # Try using printf.
- echo='printf "%s\n"'
- if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
- test "X`($echo "$echo_test_string") 2>/dev/null`" = X"$echo_test_string"; then
- # Cool, printf works
- :
- elif test "X`("$ORIGINAL_CONFIG_SHELL" "$0" --fallback-echo '\t') 2>/dev/null`" = 'X\t' &&
- test "X`("$ORIGINAL_CONFIG_SHELL" "$0" --fallback-echo "$echo_test_string") 2>/dev/null`" = X"$echo_test_string"; then
- CONFIG_SHELL="$ORIGINAL_CONFIG_SHELL"
- export CONFIG_SHELL
- SHELL="$CONFIG_SHELL"
- export SHELL
- echo="$CONFIG_SHELL $0 --fallback-echo"
- elif test "X`("$CONFIG_SHELL" "$0" --fallback-echo '\t') 2>/dev/null`" = 'X\t' &&
- test "X`("$CONFIG_SHELL" "$0" --fallback-echo "$echo_test_string") 2>/dev/null`" = X"$echo_test_string"; then
- echo="$CONFIG_SHELL $0 --fallback-echo"
- else
- # maybe with a smaller string...
- prev=:
-
- for cmd in 'echo test' 'sed 2q "$0"' 'sed 10q "$0"' 'sed 20q "$0"' 'sed 50q "$0"'; do
- if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null; then
- break
- fi
- prev="$cmd"
- done
-
- if test "$prev" != 'sed 50q "$0"'; then
- echo_test_string=`eval $prev`
- export echo_test_string
- exec "${ORIGINAL_CONFIG_SHELL}" "$0" ${1+"$@"}
- else
- # Oops. We lost completely, so just stick with echo.
- echo=echo
- fi
- fi
- fi
- fi
-fi
-
-# Sed substitution that helps us do robust quoting. It backslashifies
-# metacharacters that are still active within double-quoted strings.
-Xsed='sed -e s/^X//'
-sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g'
-
-# Same as above, but do not quote variable references.
-double_quote_subst='s/\([\\"\\`\\\\]\)/\\\1/g'
-
-# Sed substitution to delay expansion of an escaped shell variable in a
-# double_quote_subst'ed string.
-delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
-
-# The name of this program.
-progname=`$echo "X$0" | $Xsed -e 's%^.*/%%'`
-
-# Constants:
-PROGRAM=ltconfig
-PACKAGE=libtool
-VERSION=1.3.3
-TIMESTAMP=" (1.385.2.181 1999/07/02 15:49:11)"
-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.c 1>&5'
-ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.c $LIBS 1>&5'
-rm="rm -f"
-
-help="Try \`$progname --help' for more information."
-
-# Global variables:
-default_ofile=libtool
-can_build_shared=yes
-enable_shared=yes
-# All known linkers require a `.a' archive for static linking (except M$VC,
-# which needs '.lib').
-enable_static=yes
-enable_fast_install=yes
-enable_dlopen=unknown
-enable_win32_dll=no
-ltmain=
-silent=
-srcdir=
-ac_config_guess=
-ac_config_sub=
-host=
-nonopt=
-ofile="$default_ofile"
-verify_host=yes
-with_gcc=no
-with_gnu_ld=no
-need_locks=yes
-ac_ext=c
-objext=o
-libext=a
-exeext=
-cache_file=
-
-old_AR="$AR"
-old_CC="$CC"
-old_CFLAGS="$CFLAGS"
-old_CPPFLAGS="$CPPFLAGS"
-old_LDFLAGS="$LDFLAGS"
-old_LD="$LD"
-old_LN_S="$LN_S"
-old_LIBS="$LIBS"
-old_NM="$NM"
-old_RANLIB="$RANLIB"
-old_DLLTOOL="$DLLTOOL"
-old_OBJDUMP="$OBJDUMP"
-old_AS="$AS"
-
-# Parse the command line options.
-args=
-prev=
-for option
-do
- case "$option" in
- -*=*) optarg=`echo "$option" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
- *) optarg= ;;
- esac
-
- # If the previous option needs an argument, assign it.
- if test -n "$prev"; then
- eval "$prev=\$option"
- prev=
- continue
- fi
-
- case "$option" in
- --help) cat <<EOM
-Usage: $progname [OPTION]... [HOST [LTMAIN]]
-
-Generate a system-specific libtool script.
-
- --debug enable verbose shell tracing
- --disable-shared do not build shared libraries
- --disable-static do not build static libraries
- --disable-fast-install do not optimize for fast installation
- --enable-dlopen enable dlopen support
- --enable-win32-dll enable building dlls on win32 hosts
- --help display this help and exit
- --no-verify do not verify that HOST is a valid host type
--o, --output=FILE specify the output file [default=$default_ofile]
- --quiet same as \`--silent'
- --silent do not print informational messages
- --srcdir=DIR find \`config.guess' in DIR
- --version output version information and exit
- --with-gcc assume that the GNU C compiler will be used
- --with-gnu-ld assume that the C compiler uses the GNU linker
- --disable-lock disable file locking
- --cache-file=FILE configure cache file
-
-LTMAIN is the \`ltmain.sh' shell script fragment or \`ltmain.c' program
-that provides basic libtool functionality.
-
-HOST is the canonical host system name [default=guessed].
-EOM
- exit 0
- ;;
-
- --debug)
- echo "$progname: enabling shell trace mode"
- set -x
- ;;
-
- --disable-shared) enable_shared=no ;;
-
- --disable-static) enable_static=no ;;
-
- --disable-fast-install) enable_fast_install=no ;;
-
- --enable-dlopen) enable_dlopen=yes ;;
-
- --enable-win32-dll) enable_win32_dll=yes ;;
-
- --quiet | --silent) silent=yes ;;
-
- --srcdir) prev=srcdir ;;
- --srcdir=*) srcdir="$optarg" ;;
-
- --no-verify) verify_host=no ;;
-
- --output | -o) prev=ofile ;;
- --output=*) ofile="$optarg" ;;
-
- --version) echo "$PROGRAM (GNU $PACKAGE) $VERSION$TIMESTAMP"; exit 0 ;;
-
- --with-gcc) with_gcc=yes ;;
- --with-gnu-ld) with_gnu_ld=yes ;;
-
- --disable-lock) need_locks=no ;;
-
- --cache-file=*) cache_file="$optarg" ;;
-
- -*)
- echo "$progname: unrecognized option \`$option'" 1>&2
- echo "$help" 1>&2
- exit 1
- ;;
-
- *)
- if test -z "$ltmain"; then
- ltmain="$option"
- elif test -z "$host"; then
-# This generates an unnecessary warning for sparc-sun-solaris4.1.3_U1
-# if test -n "`echo $option| sed 's/[-a-z0-9.]//g'`"; then
-# echo "$progname: warning \`$option' is not a valid host type" 1>&2
-# fi
- host="$option"
- else
- echo "$progname: too many arguments" 1>&2
- echo "$help" 1>&2
- exit 1
- fi ;;
- esac
-done
-
-if test -z "$ltmain"; then
- echo "$progname: you must specify a LTMAIN file" 1>&2
- echo "$help" 1>&2
- exit 1
-fi
-
-if test ! -f "$ltmain"; then
- echo "$progname: \`$ltmain' does not exist" 1>&2
- echo "$help" 1>&2
- exit 1
-fi
-
-# Quote any args containing shell metacharacters.
-ltconfig_args=
-for arg
-do
- case "$arg" in
- *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*)
- ltconfig_args="$ltconfig_args '$arg'" ;;
- *) ltconfig_args="$ltconfig_args $arg" ;;
- esac
-done
-
-# A relevant subset of AC_INIT.
-
-# File descriptor usage:
-# 0 standard input
-# 1 file creation
-# 2 errors and warnings
-# 3 some systems may open it to /dev/tty
-# 4 used on the Kubota Titan
-# 5 compiler messages saved in config.log
-# 6 checking for... messages and results
-if test "$silent" = yes; then
- exec 6>/dev/null
-else
- exec 6>&1
-fi
-exec 5>>./config.log
-
-# NLS nuisances.
-# Only set LANG and LC_ALL to C if already set.
-# These must not be set unconditionally because not all systems understand
-# e.g. LANG=C (notably SCO).
-if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
-if test "${LANG+set}" = set; then LANG=C; export LANG; fi
-
-if test -n "$cache_file" && test -r "$cache_file"; then
- echo "loading cache $cache_file within ltconfig"
- . $cache_file
-fi
-
-if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
- # Stardent Vistra SVR4 grep lacks -e, says ghazi at caip.rutgers.edu.
- if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then
- ac_n= ac_c='
-' ac_t=' '
- else
- ac_n=-n ac_c= ac_t=
- fi
-else
- ac_n= ac_c='\c' ac_t=
-fi
-
-if test -z "$srcdir"; then
- # Assume the source directory is the same one as the path to LTMAIN.
- srcdir=`$echo "X$ltmain" | $Xsed -e 's%/[^/]*$%%'`
- test "$srcdir" = "$ltmain" && srcdir=.
-fi
-
-trap "$rm conftest*; exit 1" 1 2 15
-if test "$verify_host" = yes; then
- # Check for config.guess and config.sub.
- ac_aux_dir=
- for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
- if test -f $ac_dir/config.guess; then
- ac_aux_dir=$ac_dir
- break
- fi
- done
- if test -z "$ac_aux_dir"; then
- echo "$progname: cannot find config.guess in $srcdir $srcdir/.. $srcdir/../.." 1>&2
- echo "$help" 1>&2
- exit 1
- fi
- ac_config_guess=$ac_aux_dir/config.guess
- ac_config_sub=$ac_aux_dir/config.sub
-
- # Make sure we can run config.sub.
- if $SHELL $ac_config_sub sun4 >/dev/null 2>&1; then :
- else
- echo "$progname: cannot run $ac_config_sub" 1>&2
- echo "$help" 1>&2
- exit 1
- fi
-
- echo $ac_n "checking host system type""... $ac_c" 1>&6
-
- host_alias=$host
- case "$host_alias" in
- "")
- if host_alias=`$SHELL $ac_config_guess`; then :
- else
- echo "$progname: cannot guess host type; you must specify one" 1>&2
- echo "$help" 1>&2
- exit 1
- fi ;;
- esac
- host=`$SHELL $ac_config_sub $host_alias`
- echo "$ac_t$host" 1>&6
-
- # Make sure the host verified.
- test -z "$host" && exit 1
-
-elif test -z "$host"; then
- echo "$progname: you must specify a host type if you use \`--no-verify'" 1>&2
- echo "$help" 1>&2
- exit 1
-else
- host_alias=$host
-fi
-
-# Transform linux* to *-*-linux-gnu*, to support old configure scripts.
-case "$host_os" in
-linux-gnu*) ;;
-linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
-esac
-
-host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-
-case "$host_os" in
-aix3*)
- # AIX sometimes has problems with the GCC collect2 program. For some
- # reason, if we set the COLLECT_NAMES environment variable, the problems
- # vanish in a puff of smoke.
- if test "${COLLECT_NAMES+set}" != set; then
- COLLECT_NAMES=
- export COLLECT_NAMES
- fi
- ;;
-esac
-
-# Determine commands to create old-style static archives.
-old_archive_cmds='$AR cru $oldlib$oldobjs'
-old_postinstall_cmds='chmod 644 $oldlib'
-old_postuninstall_cmds=
-
-# Set a sane default for `AR'.
-test -z "$AR" && AR=ar
-
-# Set a sane default for `OBJDUMP'.
-test -z "$OBJDUMP" && OBJDUMP=objdump
-
-# If RANLIB is not set, then run the test.
-if test "${RANLIB+set}" != "set"; then
- result=no
-
- echo $ac_n "checking for ranlib... $ac_c" 1>&6
- IFS="${IFS= }"; save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
- for dir in $PATH; do
- test -z "$dir" && dir=.
- if test -f $dir/ranlib || test -f $dir/ranlib$ac_exeext; then
- RANLIB="ranlib"
- result="ranlib"
- break
- fi
- done
- IFS="$save_ifs"
-
- echo "$ac_t$result" 1>&6
-fi
-
-if test -n "$RANLIB"; then
- old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
- old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds"
-fi
-
-# Set sane defaults for `DLLTOOL', `OBJDUMP', and `AS', used on cygwin.
-test -z "$DLLTOOL" && DLLTOOL=dlltool
-test -z "$OBJDUMP" && OBJDUMP=objdump
-test -z "$AS" && AS=as
-
-# Check to see if we are using GCC.
-if test "$with_gcc" != yes || test -z "$CC"; then
- # If CC is not set, then try to find GCC or a usable CC.
- if test -z "$CC"; then
- echo $ac_n "checking for gcc... $ac_c" 1>&6
- IFS="${IFS= }"; save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
- for dir in $PATH; do
- test -z "$dir" && dir=.
- if test -f $dir/gcc || test -f $dir/gcc$ac_exeext; then
- CC="gcc"
- break
- fi
- done
- IFS="$save_ifs"
-
- if test -n "$CC"; then
- echo "$ac_t$CC" 1>&6
- else
- echo "$ac_t"no 1>&6
- fi
- fi
-
- # Not "gcc", so try "cc", rejecting "/usr/ucb/cc".
- if test -z "$CC"; then
- echo $ac_n "checking for cc... $ac_c" 1>&6
- IFS="${IFS= }"; save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
- cc_rejected=no
- for dir in $PATH; do
- test -z "$dir" && dir=.
- if test -f $dir/cc || test -f $dir/cc$ac_exeext; then
- if test "$dir/cc" = "/usr/ucb/cc"; then
- cc_rejected=yes
- continue
- fi
- CC="cc"
- break
- fi
- done
- IFS="$save_ifs"
- if test $cc_rejected = yes; then
- # We found a bogon in the path, so make sure we never use it.
- set dummy $CC
- shift
- if test $# -gt 0; then
- # We chose a different compiler from the bogus one.
- # However, it has the same name, so the bogon will be chosen
- # first if we set CC to just the name; use the full file name.
- shift
- set dummy "$dir/cc" "$@"
- shift
- CC="$@"
- fi
- fi
-
- if test -n "$CC"; then
- echo "$ac_t$CC" 1>&6
- else
- echo "$ac_t"no 1>&6
- fi
-
- if test -z "$CC"; then
- echo "$progname: error: no acceptable cc found in \$PATH" 1>&2
- exit 1
- fi
- fi
-
- # Now see if the compiler is really GCC.
- with_gcc=no
- echo $ac_n "checking whether we are using GNU C... $ac_c" 1>&6
- echo "$progname:581: checking whether we are using GNU C" >&5
-
- $rm conftest.c
- cat > conftest.c <<EOF
-#ifdef __GNUC__
- yes;
-#endif
-EOF
- if { ac_try='${CC-cc} -E conftest.c'; { (eval echo $progname:589: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
- with_gcc=yes
- fi
- $rm conftest.c
- echo "$ac_t$with_gcc" 1>&6
-fi
-
-# Allow CC to be a program name with arguments.
-set dummy $CC
-compiler="$2"
-
-echo $ac_n "checking for object suffix... $ac_c" 1>&6
-$rm conftest*
-echo 'int i = 1;' > conftest.c
-echo "$progname:603: checking for object suffix" >& 5
-if { (eval echo $progname:604: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; }; then
- # Append any warnings to the config.log.
- cat conftest.err 1>&5
-
- for ac_file in conftest.*; do
- case $ac_file in
- *.c) ;;
- *) objext=`echo $ac_file | sed -e s/conftest.//` ;;
- esac
- done
-else
- cat conftest.err 1>&5
- echo "$progname: failed program was:" >&5
- cat conftest.c >&5
-fi
-$rm conftest*
-echo "$ac_t$objext" 1>&6
-
-echo $ac_n "checking for executable suffix... $ac_c" 1>&6
-if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- ac_cv_exeext="no"
- $rm conftest*
- echo 'main () { return 0; }' > conftest.c
- echo "$progname:629: checking for executable suffix" >& 5
- if { (eval echo $progname:630: \"$ac_link\") 1>&5; (eval $ac_link) 2>conftest.err; }; then
- # Append any warnings to the config.log.
- cat conftest.err 1>&5
-
- for ac_file in conftest.*; do
- case $ac_file in
- *.c | *.err | *.$objext ) ;;
- *) ac_cv_exeext=.`echo $ac_file | sed -e s/conftest.//` ;;
- esac
- done
- else
- cat conftest.err 1>&5
- echo "$progname: failed program was:" >&5
- cat conftest.c >&5
- fi
- $rm conftest*
-fi
-if test "X$ac_cv_exeext" = Xno; then
- exeext=""
-else
- exeext="$ac_cv_exeext"
-fi
-echo "$ac_t$ac_cv_exeext" 1>&6
-
-echo $ac_n "checking for $compiler option to produce PIC... $ac_c" 1>&6
-pic_flag=
-special_shlib_compile_flags=
-wl=
-link_static_flag=
-no_builtin_flag=
-
-if test "$with_gcc" = yes; then
- wl='-Wl,'
- link_static_flag='-static'
-
- case "$host_os" in
- beos* | irix5* | irix6* | osf3* | osf4*)
- # PIC is the default for these OSes.
- ;;
- aix*)
- # Below there is a dirty hack to force normal static linking with -ldl
- # The problem is because libdl dynamically linked with both libc and
- # libC (AIX C++ library), which obviously doesn't included in libraries
- # list by gcc. This cause undefined symbols with -static flags.
- # This hack allows C programs to be linked with "-static -ldl", but
- # we not sure about C++ programs.
- link_static_flag="$link_static_flag ${wl}-lC"
- ;;
- cygwin* | mingw* | os2*)
- # We can build DLLs from non-PIC.
- ;;
- amigaos*)
- # FIXME: we need at least 68020 code to build shared libraries, but
- # adding the `-m68020' flag to GCC prevents building anything better,
- # like `-m68040'.
- pic_flag='-m68020 -resident32 -malways-restore-a4'
- ;;
- sysv4*MP*)
- if test -d /usr/nec; then
- pic_flag=-Kconform_pic
- fi
- ;;
- *)
- pic_flag='-fPIC'
- ;;
- esac
-else
- # PORTME Check for PIC flags for the system compiler.
- case "$host_os" in
- aix3* | aix4*)
- # All AIX code is PIC.
- link_static_flag='-bnso -bI:/lib/syscalls.exp'
- ;;
-
- hpux9* | hpux10* | hpux11*)
- # Is there a better link_static_flag that works with the bundled CC?
- wl='-Wl,'
- link_static_flag="${wl}-a ${wl}archive"
- pic_flag='+Z'
- ;;
-
- irix5* | irix6*)
- wl='-Wl,'
- link_static_flag='-non_shared'
- # PIC (with -KPIC) is the default.
- ;;
-
- cygwin* | mingw* | os2*)
- # We can build DLLs from non-PIC.
- ;;
-
- osf3* | osf4*)
- # All OSF/1 code is PIC.
- wl='-Wl,'
- link_static_flag='-non_shared'
- ;;
-
- sco3.2v5*)
- pic_flag='-Kpic'
- link_static_flag='-dn'
- special_shlib_compile_flags='-belf'
- ;;
-
- solaris*)
- pic_flag='-KPIC'
- link_static_flag='-Bstatic'
- wl='-Wl,'
- ;;
-
- sunos4*)
- pic_flag='-PIC'
- link_static_flag='-Bstatic'
- wl='-Qoption ld '
- ;;
-
- sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
- pic_flag='-KPIC'
- link_static_flag='-Bstatic'
- wl='-Wl,'
- ;;
-
- uts4*)
- pic_flag='-pic'
- link_static_flag='-Bstatic'
- ;;
- sysv4*MP*)
- if test -d /usr/nec ;then
- pic_flag='-Kconform_pic'
- link_static_flag='-Bstatic'
- fi
- ;;
- *)
- can_build_shared=no
- ;;
- esac
-fi
-
-if test -n "$pic_flag"; then
- echo "$ac_t$pic_flag" 1>&6
-
- # Check to make sure the pic_flag actually works.
- echo $ac_n "checking if $compiler PIC flag $pic_flag works... $ac_c" 1>&6
- $rm conftest*
- echo "int some_variable = 0;" > conftest.c
- save_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS $pic_flag -DPIC"
- echo "$progname:776: checking if $compiler PIC flag $pic_flag works" >&5
- if { (eval echo $progname:777: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.$objext; then
- # Append any warnings to the config.log.
- cat conftest.err 1>&5
-
- case "$host_os" in
- hpux9* | hpux10* | hpux11*)
- # On HP-UX, both CC and GCC only warn that PIC is supported... then they
- # create non-PIC objects. So, if there were any warnings, we assume that
- # PIC is not supported.
- if test -s conftest.err; then
- echo "$ac_t"no 1>&6
- can_build_shared=no
- pic_flag=
- else
- echo "$ac_t"yes 1>&6
- pic_flag=" $pic_flag"
- fi
- ;;
- *)
- echo "$ac_t"yes 1>&6
- pic_flag=" $pic_flag"
- ;;
- esac
- else
- # Append any errors to the config.log.
- cat conftest.err 1>&5
- can_build_shared=no
- pic_flag=
- echo "$ac_t"no 1>&6
- fi
- CFLAGS="$save_CFLAGS"
- $rm conftest*
-else
- echo "$ac_t"none 1>&6
-fi
-
-# Check to see if options -o and -c are simultaneously supported by compiler
-echo $ac_n "checking if $compiler supports -c -o file.o... $ac_c" 1>&6
-$rm -r conftest 2>/dev/null
-mkdir conftest
-cd conftest
-$rm conftest*
-echo "int some_variable = 0;" > conftest.c
-mkdir out
-# According to Tom Tromey, Ian Lance Taylor reported there are C compilers
-# that will create temporary files in the current directory regardless of
-# the output directory. Thus, making CWD read-only will cause this test
-# to fail, enabling locking or at least warning the user not to do parallel
-# builds.
-chmod -w .
-save_CFLAGS="$CFLAGS"
-CFLAGS="$CFLAGS -o out/conftest2.o"
-echo "$progname:829: checking if $compiler supports -c -o file.o" >&5
-if { (eval echo $progname:830: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.o; then
-
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings
- if test -s out/conftest.err; then
- echo "$ac_t"no 1>&6
- compiler_c_o=no
- else
- echo "$ac_t"yes 1>&6
- compiler_c_o=yes
- fi
-else
- # Append any errors to the config.log.
- cat out/conftest.err 1>&5
- compiler_c_o=no
- echo "$ac_t"no 1>&6
-fi
-CFLAGS="$save_CFLAGS"
-chmod u+w .
-$rm conftest* out/*
-rmdir out
-cd ..
-rmdir conftest
-$rm -r conftest 2>/dev/null
-
-if test x"$compiler_c_o" = x"yes"; then
- # Check to see if we can write to a .lo
- echo $ac_n "checking if $compiler supports -c -o file.lo... $ac_c" 1>&6
- $rm conftest*
- echo "int some_variable = 0;" > conftest.c
- save_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -c -o conftest.lo"
- echo "$progname:862: checking if $compiler supports -c -o file.lo" >&5
-if { (eval echo $progname:863: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.lo; then
-
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings
- if test -s conftest.err; then
- echo "$ac_t"no 1>&6
- compiler_o_lo=no
- else
- echo "$ac_t"yes 1>&6
- compiler_o_lo=yes
- fi
- else
- # Append any errors to the config.log.
- cat conftest.err 1>&5
- compiler_o_lo=no
- echo "$ac_t"no 1>&6
- fi
- CFLAGS="$save_CFLAGS"
- $rm conftest*
-else
- compiler_o_lo=no
-fi
-
-# Check to see if we can do hard links to lock some files if needed
-hard_links="nottested"
-if test "$compiler_c_o" = no && test "$need_locks" != no; then
- # do not overwrite the value of need_locks provided by the user
- echo $ac_n "checking if we can lock with hard links... $ac_c" 1>&6
- hard_links=yes
- $rm conftest*
- ln conftest.a conftest.b 2>/dev/null && hard_links=no
- touch conftest.a
- ln conftest.a conftest.b 2>&5 || hard_links=no
- ln conftest.a conftest.b 2>/dev/null && hard_links=no
- echo "$ac_t$hard_links" 1>&6
- $rm conftest*
- if test "$hard_links" = no; then
- echo "*** WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2
- need_locks=warn
- fi
-else
- need_locks=no
-fi
-
-if test "$with_gcc" = yes; then
- # Check to see if options -fno-rtti -fno-exceptions are supported by compiler
- echo $ac_n "checking if $compiler supports -fno-rtti -fno-exceptions ... $ac_c" 1>&6
- $rm conftest*
- echo "int some_variable = 0;" > conftest.c
- save_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -fno-rtti -fno-exceptions -c conftest.c"
- echo "$progname:914: checking if $compiler supports -fno-rtti -fno-exceptions" >&5
- if { (eval echo $progname:915: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.o; then
-
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings
- if test -s conftest.err; then
- echo "$ac_t"no 1>&6
- compiler_rtti_exceptions=no
- else
- echo "$ac_t"yes 1>&6
- compiler_rtti_exceptions=yes
- fi
- else
- # Append any errors to the config.log.
- cat conftest.err 1>&5
- compiler_rtti_exceptions=no
- echo "$ac_t"no 1>&6
- fi
- CFLAGS="$save_CFLAGS"
- $rm conftest*
-
- if test "$compiler_rtti_exceptions" = "yes"; then
- no_builtin_flag=' -fno-builtin -fno-rtti -fno-exceptions'
- else
- no_builtin_flag=' -fno-builtin'
- fi
-
-fi
-
-# Check for any special shared library compilation flags.
-if test -n "$special_shlib_compile_flags"; then
- echo "$progname: warning: \`$CC' requires \`$special_shlib_compile_flags' to build shared libraries" 1>&2
- if echo "$old_CC $old_CFLAGS " | egrep -e "[ ]$special_shlib_compile_flags[ ]" >/dev/null; then :
- else
- echo "$progname: add \`$special_shlib_compile_flags' to the CC or CFLAGS env variable and reconfigure" 1>&2
- can_build_shared=no
- fi
-fi
-
-echo $ac_n "checking if $compiler static flag $link_static_flag works... $ac_c" 1>&6
-$rm conftest*
-echo 'main(){return(0);}' > conftest.c
-save_LDFLAGS="$LDFLAGS"
-LDFLAGS="$LDFLAGS $link_static_flag"
-echo "$progname:958: checking if $compiler static flag $link_static_flag works" >&5
-if { (eval echo $progname:959: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
- echo "$ac_t$link_static_flag" 1>&6
-else
- echo "$ac_t"none 1>&6
- link_static_flag=
-fi
-LDFLAGS="$save_LDFLAGS"
-$rm conftest*
-
-if test -z "$LN_S"; then
- # Check to see if we can use ln -s, or we need hard links.
- echo $ac_n "checking whether ln -s works... $ac_c" 1>&6
- $rm conftest.dat
- if ln -s X conftest.dat 2>/dev/null; then
- $rm conftest.dat
- LN_S="ln -s"
- else
- LN_S=ln
- fi
- if test "$LN_S" = "ln -s"; then
- echo "$ac_t"yes 1>&6
- else
- echo "$ac_t"no 1>&6
- fi
-fi
-
-# Make sure LD is an absolute path.
-if test -z "$LD"; then
- ac_prog=ld
- if test "$with_gcc" = yes; then
- # Check if gcc -print-prog-name=ld gives a path.
- echo $ac_n "checking for ld used by GCC... $ac_c" 1>&6
- echo "$progname:991: checking for ld used by GCC" >&5
- ac_prog=`($CC -print-prog-name=ld) 2>&5`
- case "$ac_prog" in
- # Accept absolute paths.
- [\\/]* | [A-Za-z]:[\\/]*)
- re_direlt='/[^/][^/]*/\.\./'
- # Canonicalize the path of ld
- ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
- while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
- ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
- done
- test -z "$LD" && LD="$ac_prog"
- ;;
- "")
- # If it fails, then pretend we are not using GCC.
- ac_prog=ld
- ;;
- *)
- # If it is relative, then search for the first ld in PATH.
- with_gnu_ld=unknown
- ;;
- esac
- elif test "$with_gnu_ld" = yes; then
- echo $ac_n "checking for GNU ld... $ac_c" 1>&6
- echo "$progname:1015: checking for GNU ld" >&5
- else
- echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6
- echo "$progname:1018: checking for non-GNU ld" >&5
- fi
-
- if test -z "$LD"; then
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
- for ac_dir in $PATH; do
- test -z "$ac_dir" && ac_dir=.
- if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
- LD="$ac_dir/$ac_prog"
- # Check to see if the program is GNU ld. I'd rather use --version,
- # but apparently some GNU ld's only accept -v.
- # Break only if it was the GNU/non-GNU ld that we prefer.
- if "$LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
- test "$with_gnu_ld" != no && break
- else
- test "$with_gnu_ld" != yes && break
- fi
- fi
- done
- IFS="$ac_save_ifs"
- fi
-
- if test -n "$LD"; then
- echo "$ac_t$LD" 1>&6
- else
- echo "$ac_t"no 1>&6
- fi
-
- if test -z "$LD"; then
- echo "$progname: error: no acceptable ld found in \$PATH" 1>&2
- exit 1
- fi
-fi
-
-# Check to see if it really is or is not GNU ld.
-echo $ac_n "checking if the linker ($LD) is GNU ld... $ac_c" 1>&6
-# I'd rather use --version here, but apparently some GNU ld's only accept -v.
-if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
- with_gnu_ld=yes
-else
- with_gnu_ld=no
-fi
-echo "$ac_t$with_gnu_ld" 1>&6
-
-# See if the linker supports building shared libraries.
-echo $ac_n "checking whether the linker ($LD) supports shared libraries... $ac_c" 1>&6
-
-allow_undefined_flag=
-no_undefined_flag=
-need_lib_prefix=unknown
-need_version=unknown
-# when you set need_version to no, make sure it does not cause -set_version
-# flags to be left without arguments
-archive_cmds=
-archive_expsym_cmds=
-old_archive_from_new_cmds=
-export_dynamic_flag_spec=
-whole_archive_flag_spec=
-thread_safe_flag_spec=
-hardcode_libdir_flag_spec=
-hardcode_libdir_separator=
-hardcode_direct=no
-hardcode_minus_L=no
-hardcode_shlibpath_var=unsupported
-runpath_var=
-always_export_symbols=no
-export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols'
-# include_expsyms should be a list of space-separated symbols to be *always*
-# included in the symbol list
-include_expsyms=
-# exclude_expsyms can be an egrep regular expression of symbols to exclude
-# it will be wrapped by ` (' and `)$', so one must not match beginning or
-# end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
-# as well as any symbol that contains `d'.
-exclude_expsyms="_GLOBAL_OFFSET_TABLE_"
-# Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
-# platforms (ab)use it in PIC code, but their linkers get confused if
-# the symbol is explicitly referenced. Since portable code cannot
-# rely on this symbol name, it's probably fine to never include it in
-# preloaded symbol tables.
-
-case "$host_os" in
-cygwin* | mingw*)
- # FIXME: the MSVC++ port hasn't been tested in a loooong time
- # When not using gcc, we currently assume that we are using
- # Microsoft Visual C++.
- if test "$with_gcc" != yes; then
- with_gnu_ld=no
- fi
- ;;
-
-esac
-
-ld_shlibs=yes
-if test "$with_gnu_ld" = yes; then
- # If archive_cmds runs LD, not CC, wlarc should be empty
- wlarc='${wl}'
-
- # See if GNU ld supports shared libraries.
- case "$host_os" in
- aix3* | aix4*)
- # On AIX, the GNU linker is very broken
- ld_shlibs=no
- cat <<EOF 1>&2
-
-*** Warning: the GNU linker, at least up to release 2.9.1, is reported
-*** to be unable to reliably create shared libraries on AIX.
-*** Therefore, libtool is disabling shared libraries support. If you
-*** really care for shared libraries, you may want to modify your PATH
-*** so that a non-GNU linker is found, and then restart.
-
-EOF
- ;;
-
- amigaos*)
- archive_cmds='$rm $objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $objdir/a2ixlibrary.data~$AR cru $lib $libobjs~$RANLIB $lib~(cd $objdir && a2ixlibrary -32)'
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_minus_L=yes
-
- # Samuel A. Falvo II <kc5tja at dolphin.openprojects.net> reports
- # that the semantics of dynamic libraries on AmigaOS, at least up
- # to version 4, is to share data among multiple programs linked
- # with the same dynamic library. Since this doesn't match the
- # behavior of shared libraries on other platforms, we can use
- # them.
- ld_shlibs=no
- ;;
-
- beos*)
- if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
- allow_undefined_flag=unsupported
- # Joseph Beckenbach <jrb3 at best.com> says some releases of gcc
- # support --undefined. This deserves some investigation. FIXME
- archive_cmds='$CC -nostart $libobjs $deplibs $linkopts ${wl}-soname $wl$soname -o $lib'
- else
- ld_shlibs=no
- fi
- ;;
-
- cygwin* | mingw*)
- # hardcode_libdir_flag_spec is actually meaningless, as there is
- # no search path for DLLs.
- hardcode_libdir_flag_spec='-L$libdir'
- allow_undefined_flag=unsupported
- always_export_symbols=yes
-
- # Extract the symbol export list from an `--export-all' def file,
- # then regenerate the def file from the symbol export list, so that
- # the compiled dll only exports the symbol export list.
- export_symbols_cmds='test -f $objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $0 > $objdir/$soname-ltdll.c~
- test -f $objdir/$soname-ltdll.$objext || (cd $objdir && $CC -c $soname-ltdll.c)~
- $DLLTOOL --export-all --exclude-symbols DllMain at 12,_cygwin_dll_entry at 12,_cygwin_noncygwin_dll_entry at 12 --output-def $objdir/$soname-def $objdir/$soname-ltdll.$objext $libobjs $convenience~
- sed -e "1,/EXPORTS/d" -e "s/ @ [0-9]* ; *//" < $objdir/$soname-def > $export_symbols'
-
- archive_expsym_cmds='echo EXPORTS > $objdir/$soname-def~
- _lt_hint=1;
- for symbol in `cat $export_symbols`; do
- echo " \$symbol @ \$_lt_hint ; " >> $objdir/$soname-def;
- _lt_hint=`expr 1 + \$_lt_hint`;
- done~
- test -f $objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $0 > $objdir/$soname-ltdll.c~
- test -f $objdir/$soname-ltdll.$objext || (cd $objdir && $CC -c $soname-ltdll.c)~
- $CC -Wl,--base-file,$objdir/$soname-base -Wl,--dll -nostartfiles -Wl,-e,__cygwin_dll_entry at 12 -o $lib $objdir/$soname-ltdll.$objext $libobjs $deplibs $linkopts~
- $DLLTOOL --as=$AS --dllname $soname --exclude-symbols DllMain at 12,_cygwin_dll_entry at 12,_cygwin_noncygwin_dll_entry at 12 --def $objdir/$soname-def --base-file $objdir/$soname-base --output-exp $objdir/$soname-exp~
- $CC -Wl,--base-file,$objdir/$soname-base $objdir/$soname-exp -Wl,--dll -nostartfiles -Wl,-e,__cygwin_dll_entry at 12 -o $lib $objdir/$soname-ltdll.$objext $libobjs $deplibs $linkopts~
- $DLLTOOL --as=$AS --dllname $soname --exclude-symbols DllMain at 12,_cygwin_dll_entry at 12,_cygwin_noncygwin_dll_entry at 12 --def $objdir/$soname-def --base-file $objdir/$soname-base --output-exp $objdir/$soname-exp~
- $CC $objdir/$soname-exp -Wl,--dll -nostartfiles -Wl,-e,__cygwin_dll_entry at 12 -o $lib $objdir/$soname-ltdll.$objext $libobjs $deplibs $linkopts'
-
- old_archive_from_new_cmds='$DLLTOOL --as=$AS --dllname $soname --def $objdir/$soname-def --output-lib $objdir/$libname.a'
- ;;
-
- netbsd*)
- if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
- archive_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- else
- archive_cmds='$LD -Bshareable $libobjs $deplibs $linkopts -o $lib'
- # can we support soname and/or expsyms with a.out? -oliva
- fi
- ;;
-
- solaris*)
- if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then
- ld_shlibs=no
- cat <<EOF 1>&2
-
-*** Warning: The releases 2.8.* of the GNU linker cannot reliably
-*** create shared libraries on Solaris systems. Therefore, libtool
-*** is disabling shared libraries support. We urge you to upgrade GNU
-*** binutils to release 2.9.1 or newer. Another option is to modify
-*** your PATH or compiler configuration so that the native linker is
-*** used, and then restart.
-
-EOF
- elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
- archive_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- else
- ld_shlibs=no
- fi
- ;;
-
- sunos4*)
- archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linkopts'
- wlarc=
- hardcode_direct=yes
- hardcode_shlibpath_var=no
- ;;
-
- *)
- if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
- archive_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- else
- ld_shlibs=no
- fi
- ;;
- esac
-
- if test "$ld_shlibs" = yes; then
- runpath_var=LD_RUN_PATH
- hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir'
- export_dynamic_flag_spec='${wl}--export-dynamic'
- case $host_os in
- cygwin* | mingw*)
- # dlltool doesn't understand --whole-archive et. al.
- whole_archive_flag_spec=
- ;;
- *)
- whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
- ;;
- esac
- fi
-else
- # PORTME fill in a description of your system's linker (not GNU ld)
- case "$host_os" in
- aix3*)
- allow_undefined_flag=unsupported
- always_export_symbols=yes
- archive_expsym_cmds='$LD -o $objdir/$soname $libobjs $deplibs $linkopts -bE:$export_symbols -T512 -H512 -bM:SRE~$AR cru $lib $objdir/$soname'
- # Note: this linker hardcodes the directories in LIBPATH if there
- # are no directories specified by -L.
- hardcode_minus_L=yes
- if test "$with_gcc" = yes && test -z "$link_static_flag"; then
- # Neither direct hardcoding nor static linking is supported with a
- # broken collect2.
- hardcode_direct=unsupported
- fi
- ;;
-
- aix4*)
- hardcode_libdir_flag_spec='${wl}-b ${wl}nolibpath ${wl}-b ${wl}libpath:$libdir:/usr/lib:/lib'
- hardcode_libdir_separator=':'
- if test "$with_gcc" = yes; then
- collect2name=`${CC} -print-prog-name=collect2`
- if test -f "$collect2name" && \
- strings "$collect2name" | grep resolve_lib_name >/dev/null
- then
- # We have reworked collect2
- hardcode_direct=yes
- else
- # We have old collect2
- hardcode_direct=unsupported
- # It fails to find uninstalled libraries when the uninstalled
- # path is not listed in the libpath. Setting hardcode_minus_L
- # to unsupported forces relinking
- hardcode_minus_L=yes
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_libdir_separator=
- fi
- shared_flag='-shared'
- else
- shared_flag='${wl}-bM:SRE'
- hardcode_direct=yes
- fi
- allow_undefined_flag=' ${wl}-berok'
- archive_cmds="\$CC $shared_flag"' -o $objdir/$soname $libobjs $deplibs $linkopts ${wl}-bexpall ${wl}-bnoentry${allow_undefined_flag}'
- archive_expsym_cmds="\$CC $shared_flag"' -o $objdir/$soname $libobjs $deplibs $linkopts ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}'
- case "$host_os" in aix4.[01]|aix4.[01].*)
- # According to Greg Wooledge, -bexpall is only supported from AIX 4.2 on
- always_export_symbols=yes ;;
- esac
- ;;
-
- amigaos*)
- archive_cmds='$rm $objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $objdir/a2ixlibrary.data~$AR cru $lib $libobjs~$RANLIB $lib~(cd $objdir && a2ixlibrary -32)'
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_minus_L=yes
- # see comment about different semantics on the GNU ld section
- ld_shlibs=no
- ;;
-
- cygwin* | mingw*)
- # When not using gcc, we currently assume that we are using
- # Microsoft Visual C++.
- # hardcode_libdir_flag_spec is actually meaningless, as there is
- # no search path for DLLs.
- hardcode_libdir_flag_spec=' '
- allow_undefined_flag=unsupported
- # Tell ltmain to make .lib files, not .a files.
- libext=lib
- # FIXME: Setting linknames here is a bad hack.
- archive_cmds='$CC -o $lib $libobjs $linkopts `echo "$deplibs" | sed -e '\''s/ -lc$//'\''` -link -dll~linknames='
- # The linker will automatically build a .lib file if we build a DLL.
- old_archive_from_new_cmds='true'
- # FIXME: Should let the user specify the lib program.
- old_archive_cmds='lib /OUT:$oldlib$oldobjs'
- fix_srcfile_path='`cygpath -w $srcfile`'
- ;;
-
- freebsd1*)
- ld_shlibs=no
- ;;
-
- # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
- # support. Future versions do this automatically, but an explicit c++rt0.o
- # does not break anything, and helps significantly (at the cost of a little
- # extra space).
- freebsd2.2*)
- archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linkopts /usr/lib/c++rt0.o'
- hardcode_libdir_flag_spec='-R$libdir'
- hardcode_direct=yes
- hardcode_shlibpath_var=no
- ;;
-
- # Unfortunately, older versions of FreeBSD 2 do not have this feature.
- freebsd2*)
- archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linkopts'
- hardcode_direct=yes
- hardcode_minus_L=yes
- hardcode_shlibpath_var=no
- ;;
-
- # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
- freebsd*)
- archive_cmds='$CC -shared -o $lib $libobjs $deplibs $linkopts'
- hardcode_libdir_flag_spec='-R$libdir'
- hardcode_direct=yes
- hardcode_shlibpath_var=no
- ;;
-
- hpux9* | hpux10* | hpux11*)
- case "$host_os" in
- hpux9*) archive_cmds='$rm $objdir/$soname~$LD -b +b $install_libdir -o $objdir/$soname $libobjs $deplibs $linkopts~test $objdir/$soname = $lib || mv $objdir/$soname $lib' ;;
- *) archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linkopts' ;;
- esac
- hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
- hardcode_libdir_separator=:
- hardcode_direct=yes
- hardcode_minus_L=yes # Not in the search PATH, but as the default
- # location of the library.
- export_dynamic_flag_spec='${wl}-E'
- ;;
-
- irix5* | irix6*)
- if test "$with_gcc" = yes; then
- archive_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib'
- else
- archive_cmds='$LD -shared $libobjs $deplibs $linkopts -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib'
- fi
- hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
- hardcode_libdir_separator=:
- ;;
-
- netbsd*)
- if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
- archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linkopts' # a.out
- else
- archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linkopts' # ELF
- fi
- hardcode_libdir_flag_spec='${wl}-R$libdir'
- hardcode_direct=yes
- hardcode_shlibpath_var=no
- ;;
-
- openbsd*)
- archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linkopts'
- hardcode_libdir_flag_spec='-R$libdir'
- hardcode_direct=yes
- hardcode_shlibpath_var=no
- ;;
-
- os2*)
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_minus_L=yes
- allow_undefined_flag=unsupported
- archive_cmds='$echo "LIBRARY $libname INITINSTANCE" > $objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $objdir/$libname.def~$echo DATA >> $objdir/$libname.def~$echo " SINGLE NONSHARED" >> $objdir/$libname.def~$echo EXPORTS >> $objdir/$libname.def~emxexp $libobjs >> $objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $linkopts $objdir/$libname.def'
- old_archive_from_new_cmds='emximp -o $objdir/$libname.a $objdir/$libname.def'
- ;;
-
- osf3* | osf4*)
- if test "$with_gcc" = yes; then
- allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
- archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $linkopts ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib'
- else
- allow_undefined_flag=' -expect_unresolved \*'
- archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linkopts -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib'
- fi
- hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
- hardcode_libdir_separator=:
- ;;
-
- sco3.2v5*)
- archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts'
- hardcode_shlibpath_var=no
- runpath_var=LD_RUN_PATH
- hardcode_runpath_var=yes
- ;;
-
- solaris*)
- no_undefined_flag=' -z text'
- # $CC -shared without GNU ld will not create a library from C++
- # object files and a static libstdc++, better avoid it by now
- archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linkopts'
- archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
- $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linkopts~$rm $lib.exp'
- hardcode_libdir_flag_spec='-R$libdir'
- hardcode_shlibpath_var=no
- case "$host_os" in
- solaris2.[0-5] | solaris2.[0-5].*) ;;
- *) # Supported since Solaris 2.6 (maybe 2.5.1?)
- whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;;
- esac
- ;;
-
- sunos4*)
- archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linkopts'
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_direct=yes
- hardcode_minus_L=yes
- hardcode_shlibpath_var=no
- ;;
-
- sysv4)
- archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts'
- runpath_var='LD_RUN_PATH'
- hardcode_shlibpath_var=no
- hardcode_direct=no #Motorola manual says yes, but my tests say they lie
- ;;
-
- sysv4.3*)
- archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts'
- hardcode_shlibpath_var=no
- export_dynamic_flag_spec='-Bexport'
- ;;
-
- uts4*)
- archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts'
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_shlibpath_var=no
- ;;
-
- dgux*)
- archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts'
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_shlibpath_var=no
- ;;
-
- sysv4*MP*)
- if test -d /usr/nec ;then
- # archive_cmds='$LD -G -z text -h $soname -o $lib$libobjs$deplibs'
- archive_cmds='$LD -G -h $soname -o $lib$libobjs$deplibs'
- hardcode_shlibpath_var=no
- runpath_var=LD_RUN_PATH
- hardcode_runpath_var=yes
- ld_shlibs=yes
- fi
- ;;
-
- *)
- ld_shlibs=no
- ;;
- esac
-fi
-echo "$ac_t$ld_shlibs" 1>&6
-test "$ld_shlibs" = no && can_build_shared=no
-
-if test -z "$NM"; then
- echo $ac_n "checking for BSD-compatible nm... $ac_c" 1>&6
- case "$NM" in
- [\\/]* | [A-Za-z]:[\\/]*) ;; # Let the user override the test with a path.
- *)
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
- for ac_dir in $PATH /usr/ucb /usr/ccs/bin /bin; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/nm || test -f $ac_dir/nm$ac_exeext; then
- # Check to see if the nm accepts a BSD-compat flag.
- # Adding the `sed 1q' prevents false positives on HP-UX, which says:
- # nm: unknown option "B" ignored
- if ($ac_dir/nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
- NM="$ac_dir/nm -B"
- break
- elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
- NM="$ac_dir/nm -p"
- break
- else
- NM=${NM="$ac_dir/nm"} # keep the first match, but
- continue # so that we can try to find one that supports BSD flags
- fi
- fi
- done
- IFS="$ac_save_ifs"
- test -z "$NM" && NM=nm
- ;;
- esac
- echo "$ac_t$NM" 1>&6
-fi
-
-# Check for command to grab the raw symbol name followed by C symbol from nm.
-echo $ac_n "checking command to parse $NM output... $ac_c" 1>&6
-
-# These are sane defaults that work on at least a few old systems.
-# [They come from Ultrix. What could be older than Ultrix?!! ;)]
-
-# Character class describing NM global symbol codes.
-symcode='[BCDEGRST]'
-
-# Regexp to match symbols that can be accessed directly from C.
-sympat='\([_A-Za-z][_A-Za-z0-9]*\)'
-
-# Transform the above into a raw symbol and a C symbol.
-symxfrm='\1 \2\3 \3'
-
-# Transform an extracted symbol line into a proper C declaration
-global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern char \1;/p'"
-
-# Define system-specific variables.
-case "$host_os" in
-aix*)
- symcode='[BCDT]'
- ;;
-cygwin* | mingw*)
- symcode='[ABCDGISTW]'
- ;;
-hpux*) # Its linker distinguishes data from code symbols
- global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^. .* \(.*\)$/extern char \1;/p'"
- ;;
-irix*)
- symcode='[BCDEGRST]'
- ;;
-solaris*)
- symcode='[BDT]'
- ;;
-sysv4)
- symcode='[DFNSTU]'
- ;;
-esac
-
-# If we're using GNU nm, then use its standard symbol codes.
-if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then
- symcode='[ABCDGISTW]'
-fi
-
-# Try without a prefix undercore, then with it.
-for ac_symprfx in "" "_"; do
-
- # Write the raw and C identifiers.
- global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode\)[ ][ ]*\($ac_symprfx\)$sympat$/$symxfrm/p'"
-
- # Check to see that the pipe works correctly.
- pipe_works=no
- $rm conftest*
- cat > conftest.c <<EOF
-#ifdef __cplusplus
-extern "C" {
-#endif
-char nm_test_var;
-void nm_test_func(){}
-#ifdef __cplusplus
-}
-#endif
-main(){nm_test_var='a';nm_test_func();return(0);}
-EOF
-
- echo "$progname:1592: checking if global_symbol_pipe works" >&5
- if { (eval echo $progname:1593: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; } && test -s conftest.$objext; then
- # Now try to grab the symbols.
- nlist=conftest.nm
- if { echo "$progname:1596: eval \"$NM conftest.$objext | $global_symbol_pipe > $nlist\"" >&5; eval "$NM conftest.$objext | $global_symbol_pipe > $nlist 2>&5"; } && test -s "$nlist"; then
-
- # Try sorting and uniquifying the output.
- if sort "$nlist" | uniq > "$nlist"T; then
- mv -f "$nlist"T "$nlist"
- else
- rm -f "$nlist"T
- fi
-
- # Make sure that we snagged all the symbols we need.
- if egrep ' nm_test_var$' "$nlist" >/dev/null; then
- if egrep ' nm_test_func$' "$nlist" >/dev/null; then
- cat <<EOF > conftest.c
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-EOF
- # Now generate the symbol file.
- eval "$global_symbol_to_cdecl"' < "$nlist" >> conftest.c'
-
- cat <<EOF >> conftest.c
-#if defined (__STDC__) && __STDC__
-# define lt_ptr_t void *
-#else
-# define lt_ptr_t char *
-# define const
-#endif
-
-/* The mapping between symbol names and symbols. */
-const struct {
- const char *name;
- lt_ptr_t address;
-}
-lt_preloaded_symbols[] =
-{
-EOF
- sed 's/^. \(.*\) \(.*\)$/ {"\2", (lt_ptr_t) \&\2},/' < "$nlist" >> conftest.c
- cat <<\EOF >> conftest.c
- {0, (lt_ptr_t) 0}
-};
-
-#ifdef __cplusplus
-}
-#endif
-EOF
- # Now try linking the two files.
- mv conftest.$objext conftstm.$objext
- save_LIBS="$LIBS"
- save_CFLAGS="$CFLAGS"
- LIBS="conftstm.$objext"
- CFLAGS="$CFLAGS$no_builtin_flag"
- if { (eval echo $progname:1648: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
- pipe_works=yes
- else
- echo "$progname: failed program was:" >&5
- cat conftest.c >&5
- fi
- LIBS="$save_LIBS"
- else
- echo "cannot find nm_test_func in $nlist" >&5
- fi
- else
- echo "cannot find nm_test_var in $nlist" >&5
- fi
- else
- echo "cannot run $global_symbol_pipe" >&5
- fi
- else
- echo "$progname: failed program was:" >&5
- cat conftest.c >&5
- fi
- $rm conftest* conftst*
-
- # Do not use the global_symbol_pipe unless it works.
- if test "$pipe_works" = yes; then
- break
- else
- global_symbol_pipe=
- fi
-done
-if test "$pipe_works" = yes; then
- echo "${ac_t}ok" 1>&6
-else
- echo "${ac_t}failed" 1>&6
-fi
-
-if test -z "$global_symbol_pipe"; then
- global_symbol_to_cdecl=
-fi
-
-# Check hardcoding attributes.
-echo $ac_n "checking how to hardcode library paths into programs... $ac_c" 1>&6
-hardcode_action=
-if test -n "$hardcode_libdir_flag_spec" || \
- test -n "$runpath_var"; then
-
- # We can hardcode non-existant directories.
- if test "$hardcode_direct" != no &&
- # If the only mechanism to avoid hardcoding is shlibpath_var, we
- # have to relink, otherwise we might link with an installed library
- # when we should be linking with a yet-to-be-installed one
- ## test "$hardcode_shlibpath_var" != no &&
- test "$hardcode_minus_L" != no; then
- # Linking always hardcodes the temporary library directory.
- hardcode_action=relink
- else
- # We can link without hardcoding, and we can hardcode nonexisting dirs.
- hardcode_action=immediate
- fi
-else
- # We cannot hardcode anything, or else we can only hardcode existing
- # directories.
- hardcode_action=unsupported
-fi
-echo "$ac_t$hardcode_action" 1>&6
-
-
-reload_flag=
-reload_cmds='$LD$reload_flag -o $output$reload_objs'
-echo $ac_n "checking for $LD option to reload object files... $ac_c" 1>&6
-# PORTME Some linkers may need a different reload flag.
-reload_flag='-r'
-echo "$ac_t$reload_flag" 1>&6
-test -n "$reload_flag" && reload_flag=" $reload_flag"
-
-# PORTME Fill in your ld.so characteristics
-library_names_spec=
-libname_spec='lib$name'
-soname_spec=
-postinstall_cmds=
-postuninstall_cmds=
-finish_cmds=
-finish_eval=
-shlibpath_var=
-shlibpath_overrides_runpath=unknown
-version_type=none
-dynamic_linker="$host_os ld.so"
-sys_lib_dlsearch_path_spec="/lib /usr/lib"
-sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
-file_magic_cmd=
-file_magic_test_file=
-deplibs_check_method='unknown'
-# Need to set the preceding variable on all platforms that support
-# interlibrary dependencies.
-# 'none' -- dependencies not supported.
-# `unknown' -- same as none, but documents that we really don't know.
-# 'pass_all' -- all dependencies passed with no checks.
-# 'test_compile' -- check by making test program.
-# 'file_magic [regex]' -- check by looking for files in library path
-# which responds to the $file_magic_cmd with a given egrep regex.
-# If you have `file' or equivalent on your system and you're not sure
-# whether `pass_all' will *always* work, you probably want this one.
-echo $ac_n "checking dynamic linker characteristics... $ac_c" 1>&6
-case "$host_os" in
-aix3*)
- version_type=linux
- library_names_spec='${libname}${release}.so$versuffix $libname.a'
- shlibpath_var=LIBPATH
-
- # AIX has no versioning support, so we append a major version to the name.
- soname_spec='${libname}${release}.so$major'
- ;;
-
-aix4*)
- version_type=linux
- # AIX has no versioning support, so currently we can not hardcode correct
- # soname into executable. Probably we can add versioning support to
- # collect2, so additional links can be useful in future.
- # We preserve .a as extension for shared libraries though AIX4.2
- # and later linker supports .so
- library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.a'
- shlibpath_var=LIBPATH
- deplibs_check_method=pass_all
- ;;
-
-amigaos*)
- library_names_spec='$libname.ixlibrary $libname.a'
- # Create ${libname}_ixlibrary.a entries in /sys/libs.
- finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "(cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a)"; (cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a) || exit 1; done'
- ;;
-
-beos*)
- library_names_spec='${libname}.so'
- dynamic_linker="$host_os ld.so"
- shlibpath_var=LIBRARY_PATH
- deplibs_check_method=pass_all
- lt_cv_dlopen="load_add_on"
- lt_cv_dlopen_libs=
- lt_cv_dlopen_self=yes
- ;;
-
-bsdi4*)
- version_type=linux
- library_names_spec='${libname}.so$major ${libname}.so'
- soname_spec='${libname}.so'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'
- file_magic_cmd=/usr/bin/file
- file_magic_test_file=/shlib/libc.so
- sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
- sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
- # the default ld.so.conf also contains /usr/contrib/lib and
- # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
- # libtool to hard-code these into programs
- ;;
-
-cygwin* | mingw*)
- version_type=windows
- need_version=no
- need_lib_prefix=no
- if test "$with_gcc" = yes; then
- library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll $libname.a'
- else
- library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll $libname.lib'
- fi
- dynamic_linker='Win32 ld.exe'
- deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
- file_magic_cmd='${OBJDUMP} -f'
- # FIXME: first we should search . and the directory the executable is in
- shlibpath_var=PATH
- lt_cv_dlopen="LoadLibrary"
- lt_cv_dlopen_libs=
- ;;
-
-freebsd1*)
- dynamic_linker=no
- ;;
-
-freebsd*)
- objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
- version_type=freebsd-$objformat
- case "$version_type" in
- freebsd-elf*)
- deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB shared object'
- file_magic_cmd=/usr/bin/file
- file_magic_test_file=`echo /usr/lib/libc.so*`
- library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
- need_version=no
- need_lib_prefix=no
- ;;
- freebsd-*)
- deplibs_check_method=unknown
- library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix'
- need_version=yes
- ;;
- esac
- finish_cmds='PATH="\$PATH:/sbin" OBJFORMAT="'"$objformat"'" ldconfig -m $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- case "$host_os" in
- freebsd2* | freebsd3.[01]*)
- shlibpath_overrides_runpath=yes
- ;;
- *) # from 3.2 on
- shlibpath_overrides_runpath=no
- ;;
- esac
- ;;
-
-gnu*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so${major} ${libname}.so'
- soname_spec='${libname}${release}.so$major'
- shlibpath_var=LD_LIBRARY_PATH
- ;;
-
-hpux9* | hpux10* | hpux11*)
- # Give a soname corresponding to the major version so that dld.sl refuses to
- # link against other versions.
- dynamic_linker="$host_os dld.sl"
- version_type=sunos
- need_lib_prefix=no
- need_version=no
- shlibpath_var=SHLIB_PATH
- shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
- library_names_spec='${libname}${release}.sl$versuffix ${libname}${release}.sl$major $libname.sl'
- soname_spec='${libname}${release}.sl$major'
- # HP-UX runs *really* slowly unless shared libraries are mode 555.
- postinstall_cmds='chmod 555 $lib'
- ;;
-
-irix5* | irix6*)
- version_type=irix
- need_lib_prefix=no
- need_version=no
- soname_spec='${libname}${release}.so.$major'
- library_names_spec='${libname}${release}.so.$versuffix ${libname}${release}.so.$major ${libname}${release}.so $libname.so'
- case "$host_os" in
- irix5*)
- libsuff= shlibsuff=
- # this will be overridden with pass_all, but let us keep it just in case
- deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1"
- ;;
- *)
- case "$LD" in # libtool.m4 will add one of these switches to LD
- *-32|*"-32 ") libsuff= shlibsuff= libmagic=32-bit;;
- *-n32|*"-n32 ") libsuff=32 shlibsuff=N32 libmagic=N32;;
- *-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;;
- *) libsuff= shlibsuff= libmagic=never-match;;
- esac
- # this will be overridden with pass_all, but let us keep it just in case
- deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[1234] dynamic lib MIPS - version 1"
- ;;
- esac
- shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
- shlibpath_overrides_runpath=no
- sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
- sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
- file_magic_cmd=/usr/bin/file
- file_magic_test_file=`echo /lib${libsuff}/libc.so*`
- deplibs_check_method='pass_all'
- ;;
-
-# No shared lib support for Linux oldld, aout, or coff.
-linux-gnuoldld* | linux-gnuaout* | linux-gnucoff*)
- dynamic_linker=no
- ;;
-
-# This must be Linux ELF.
-linux-gnu*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
- soname_spec='${libname}${release}.so$major'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'
- file_magic_cmd=/usr/bin/file
- file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
-
- if test -f /lib/ld.so.1; then
- dynamic_linker='GNU ld.so'
- else
- # Only the GNU ld.so supports shared libraries on MkLinux.
- case "$host_cpu" in
- powerpc*) dynamic_linker=no ;;
- *) dynamic_linker='Linux ld.so' ;;
- esac
- fi
- ;;
-
-netbsd*)
- version_type=sunos
- if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
- library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
- dynamic_linker='NetBSD (a.out) ld.so'
- else
- library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so ${libname}.so'
- soname_spec='${libname}${release}.so$major'
- dynamic_linker='NetBSD ld.elf_so'
- fi
- shlibpath_var=LD_LIBRARY_PATH
- ;;
-
-openbsd*)
- version_type=sunos
- if test "$with_gnu_ld" = yes; then
- need_lib_prefix=no
- need_version=no
- fi
- library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- ;;
-
-os2*)
- libname_spec='$name'
- need_lib_prefix=no
- library_names_spec='$libname.dll $libname.a'
- dynamic_linker='OS/2 ld.exe'
- shlibpath_var=LIBPATH
- ;;
-
-osf3* | osf4*)
- version_type=osf
- need_version=no
- soname_spec='${libname}${release}.so'
- library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
- shlibpath_var=LD_LIBRARY_PATH
- # this will be overridden with pass_all, but let us keep it just in case
- deplibs_check_method='file_magic COFF format alpha shared library'
- file_magic_cmd=/usr/bin/file
- file_magic_test_file=/shlib/libc.so
- deplibs_check_method='pass_all'
- sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
- sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
- ;;
-
-sco3.2v5*)
- version_type=osf
- soname_spec='${libname}${release}.so$major'
- library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
- shlibpath_var=LD_LIBRARY_PATH
- ;;
-
-solaris*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
- soname_spec='${libname}${release}.so$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- # ldd complains unless libraries are executable
- postinstall_cmds='chmod +x $lib'
- deplibs_check_method="file_magic ELF [0-9][0-9]-bit [LM]SB dynamic lib"
- file_magic_cmd=/usr/bin/file
- file_magic_test_file=/lib/libc.so
- ;;
-
-sunos4*)
- version_type=sunos
- library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
- finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- if test "$with_gnu_ld" = yes; then
- need_lib_prefix=no
- fi
- need_version=yes
- ;;
-
-sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
- version_type=linux
- library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
- soname_spec='${libname}${release}.so$major'
- shlibpath_var=LD_LIBRARY_PATH
- case "$host_vendor" in
- ncr)
- deplibs_check_method='pass_all'
- ;;
- motorola)
- need_lib_prefix=no
- need_version=no
- shlibpath_overrides_runpath=no
- sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
- deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]'
- file_magic_cmd=/usr/bin/file
- file_magic_test_file=`echo /usr/lib/libc.so*`
- ;;
- esac
- ;;
-
-uts4*)
- version_type=linux
- library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
- soname_spec='${libname}${release}.so$major'
- shlibpath_var=LD_LIBRARY_PATH
- ;;
-
-dgux*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
- soname_spec='${libname}${release}.so$major'
- shlibpath_var=LD_LIBRARY_PATH
- ;;
-
-sysv4*MP*)
- if test -d /usr/nec ;then
- version_type=linux
- library_names_spec='$libname.so.$versuffix $libname.so.$major $libname.so'
- soname_spec='$libname.so.$major'
- shlibpath_var=LD_LIBRARY_PATH
- fi
- ;;
-
-*)
- dynamic_linker=no
- ;;
-esac
-echo "$ac_t$dynamic_linker" 1>&6
-test "$dynamic_linker" = no && can_build_shared=no
-
-# Report the final consequences.
-echo "checking if libtool supports shared libraries... $can_build_shared" 1>&6
-
-# Only try to build win32 dlls if AC_LIBTOOL_WIN32_DLL was used in
-# configure.in, otherwise build static only libraries.
-case "$host_os" in
-cygwin* | mingw* | os2*)
- if test x$can_build_shared = xyes; then
- test x$enable_win32_dll = xno && can_build_shared=no
- echo "checking if package supports dlls... $can_build_shared" 1>&6
- fi
-;;
-esac
-
-if test -n "$file_magic_test_file" && test -n "$file_magic_cmd"; then
- case "$deplibs_check_method" in
- "file_magic "*)
- file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`"
- if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
- egrep "$file_magic_regex" > /dev/null; then
- :
- else
- cat <<EOF 1>&2
-
-*** Warning: the command libtool uses to detect shared libraries,
-*** $file_magic_cmd, produces output that libtool cannot recognize.
-*** The result is that libtool may fail to recognize shared libraries
-*** as such. This will affect the creation of libtool libraries that
-*** depend on shared libraries, but programs linked with such libtool
-*** libraries will work regardless of this problem. Nevertheless, you
-*** may want to report the problem to your system manager and/or to
-*** bug-libtool at gnu.org
-
-EOF
- fi ;;
- esac
-fi
-
-echo $ac_n "checking whether to build shared libraries... $ac_c" 1>&6
-test "$can_build_shared" = "no" && enable_shared=no
-
-# On AIX, shared libraries and static libraries use the same namespace, and
-# are all built from PIC.
-case "$host_os" in
-aix3*)
- test "$enable_shared" = yes && enable_static=no
- if test -n "$RANLIB"; then
- archive_cmds="$archive_cmds~\$RANLIB \$lib"
- postinstall_cmds='$RANLIB $lib'
- fi
- ;;
-
-aix4*)
- test "$enable_shared" = yes && enable_static=no
- ;;
-esac
-
-echo "$ac_t$enable_shared" 1>&6
-
-# Make sure either enable_shared or enable_static is yes.
-test "$enable_shared" = yes || enable_static=yes
-
-echo "checking whether to build static libraries... $enable_static" 1>&6
-
-if test "$hardcode_action" = relink; then
- # Fast installation is not supported
- enable_fast_install=no
-elif test "$shlibpath_overrides_runpath" = yes ||
- test "$enable_shared" = no; then
- # Fast installation is not necessary
- enable_fast_install=needless
-fi
-
-echo $ac_n "checking for objdir... $ac_c" 1>&6
-rm -f .libs 2>/dev/null
-mkdir .libs 2>/dev/null
-if test -d .libs; then
- objdir=.libs
-else
- # MS-DOS does not allow filenames that begin with a dot.
- objdir=_libs
-fi
-rmdir .libs 2>/dev/null
-echo "$ac_t$objdir" 1>&6
-
-if test "x$enable_dlopen" != xyes; then
- enable_dlopen=unknown
- enable_dlopen_self=unknown
- enable_dlopen_self_static=unknown
-else
-if eval "test \"`echo '$''{'lt_cv_dlopen'+set}'`\" != set"; then
- lt_cv_dlopen=no lt_cv_dlopen_libs=
-echo $ac_n "checking for dlopen in -ldl""... $ac_c" 1>&6
-echo "$progname:2170: checking for dlopen in -ldl" >&5
-ac_lib_var=`echo dl'_'dlopen | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- ac_save_LIBS="$LIBS"
-LIBS="-ldl $LIBS"
-cat > conftest.$ac_ext <<EOF
-#line 2178 "ltconfig"
-/* Override any gcc2 internal prototype to avoid an error. */
-/* We use char because int might match the return type of a gcc2
- builtin and then its argument prototype would still apply. */
-char dlopen();
-
-int main() {
-dlopen()
-; return 0; }
-EOF
-if { (eval echo $progname:2188: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
-else
- echo "$progname: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=no"
-fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
-
-fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"
-else
- echo "$ac_t""no" 1>&6
-echo $ac_n "checking for dlopen""... $ac_c" 1>&6
-echo "$progname:2207: checking for dlopen" >&5
-if eval "test \"`echo '$''{'ac_cv_func_dlopen'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.$ac_ext <<EOF
-#line 2212 "ltconfig"
-/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char dlopen(); below. */
-#include <assert.h>
-/* Override any gcc2 internal prototype to avoid an error. */
-/* We use char because int might match the return type of a gcc2
- builtin and then its argument prototype would still apply. */
-char dlopen();
-
-int main() {
-
-/* The GNU C library defines this for functions which it implements
- to always fail with ENOSYS. Some functions are actually named
- something starting with __ and the normal name is an alias. */
-#if defined (__stub_dlopen) || defined (__stub___dlopen)
-choke me
-#else
-dlopen();
-#endif
-
-; return 0; }
-EOF
-if { (eval echo $progname:2234: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_dlopen=yes"
-else
- echo "$progname: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_func_dlopen=no"
-fi
-rm -f conftest*
-fi
-if eval "test \"`echo '$ac_cv_func_'dlopen`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- lt_cv_dlopen="dlopen"
-else
- echo "$ac_t""no" 1>&6
-echo $ac_n "checking for dld_link in -ldld""... $ac_c" 1>&6
-echo "$progname:2251: checking for dld_link in -ldld" >&5
-ac_lib_var=`echo dld'_'dld_link | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- ac_save_LIBS="$LIBS"
-LIBS="-ldld $LIBS"
-cat > conftest.$ac_ext <<EOF
-#line 2259 "ltconfig"
-/* Override any gcc2 internal prototype to avoid an error. */
-/* We use char because int might match the return type of a gcc2
- builtin and then its argument prototype would still apply. */
-char dld_link();
-
-int main() {
-dld_link()
-; return 0; }
-EOF
-if { (eval echo $progname:2269: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
-else
- echo "$progname: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=no"
-fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
-
-fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"
-else
- echo "$ac_t""no" 1>&6
-echo $ac_n "checking for shl_load""... $ac_c" 1>&6
-echo "$progname:2288: checking for shl_load" >&5
-if eval "test \"`echo '$''{'ac_cv_func_shl_load'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.$ac_ext <<EOF
-#line 2293 "ltconfig"
-/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char shl_load(); below. */
-#include <assert.h>
-/* Override any gcc2 internal prototype to avoid an error. */
-/* We use char because int might match the return type of a gcc2
- builtin and then its argument prototype would still apply. */
-char shl_load();
-
-int main() {
-
-/* The GNU C library defines this for functions which it implements
- to always fail with ENOSYS. Some functions are actually named
- something starting with __ and the normal name is an alias. */
-#if defined (__stub_shl_load) || defined (__stub___shl_load)
-choke me
-#else
-shl_load();
-#endif
-
-; return 0; }
-EOF
-if { (eval echo $progname:2315: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_shl_load=yes"
-else
- echo "$progname: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_func_shl_load=no"
-fi
-rm -f conftest*
-fi
-
-if eval "test \"`echo '$ac_cv_func_'shl_load`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- lt_cv_dlopen="shl_load"
-else
- echo "$ac_t""no" 1>&6
-echo $ac_n "checking for shl_load in -ldld""... $ac_c" 1>&6
-echo "$progname:2333: checking for shl_load in -ldld" >&5
-ac_lib_var=`echo dld'_'shl_load | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- ac_save_LIBS="$LIBS"
-LIBS="-ldld $LIBS"
-cat > conftest.$ac_ext <<EOF
-#line 2341 "ltconfig"
-#include "confdefs.h"
-/* Override any gcc2 internal prototype to avoid an error. */
-/* We use char because int might match the return type of a gcc2
- builtin and then its argument prototype would still apply. */
-char shl_load();
-
-int main() {
-shl_load()
-; return 0; }
-EOF
-if { (eval echo $progname:2352: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
-else
- echo "$progname: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=no"
-fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
-
-fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"
-else
- echo "$ac_t""no" 1>&6
-fi
-
-
-fi
-
-
-fi
-
-
-fi
-
-
-fi
-
-fi
-
- if test "x$lt_cv_dlopen" != xno; then
- enable_dlopen=yes
- fi
-
- case "$lt_cv_dlopen" in
- dlopen)
-for ac_hdr in dlfcn.h; do
-ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
-echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "$progname:2395: checking for $ac_hdr" >&5
-if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.$ac_ext <<EOF
-#line 2400 "ltconfig"
-#include <$ac_hdr>
-int fnord = 0;
-EOF
-ac_try="$ac_compile conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo $progname:2405: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
- rm -rf conftest*
- eval "ac_cv_header_$ac_safe=yes"
-else
- echo "$ac_err" >&5
- echo "$progname: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_header_$ac_safe=no"
-fi
-rm -f conftest*
-fi
-if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
- echo "$ac_t""yes" 1>&6
-else
- echo "$ac_t""no" 1>&6
-fi
-done
-
- if test "x$ac_cv_header_dlfcn_h" = xyes; then
- CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
- fi
- eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
- LIBS="$lt_cv_dlopen_libs $LIBS"
-
- echo $ac_n "checking whether a program can dlopen itself""... $ac_c" 1>&6
-echo "$progname:2433: checking whether a program can dlopen itself" >&5
-if test "${lt_cv_dlopen_self+set}" = set; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test "$cross_compiling" = yes; then
- lt_cv_dlopen_self=cross
- else
- cat > conftest.c <<EOF
-#line 2441 "ltconfig"
-
-#if HAVE_DLFCN_H
-#include <dlfcn.h>
-#endif
-
-#include <stdio.h>
-
-#ifdef RTLD_GLOBAL
-# define LTDL_GLOBAL RTLD_GLOBAL
-#else
-# ifdef DL_GLOBAL
-# define LTDL_GLOBAL DL_GLOBAL
-# else
-# define LTDL_GLOBAL 0
-# endif
-#endif
-
-/* We may have to define LTDL_LAZY_OR_NOW in the command line if we
- find out it does not work in some platform. */
-#ifndef LTDL_LAZY_OR_NOW
-# ifdef RTLD_LAZY
-# define LTDL_LAZY_OR_NOW RTLD_LAZY
-# else
-# ifdef DL_LAZY
-# define LTDL_LAZY_OR_NOW DL_LAZY
-# else
-# ifdef RTLD_NOW
-# define LTDL_LAZY_OR_NOW RTLD_NOW
-# else
-# ifdef DL_NOW
-# define LTDL_LAZY_OR_NOW DL_NOW
-# else
-# define LTDL_LAZY_OR_NOW 0
-# endif
-# endif
-# endif
-# endif
-#endif
-
-fnord() { int i=42;}
-main() { void *self, *ptr1, *ptr2; self=dlopen(0,LTDL_GLOBAL|LTDL_LAZY_OR_NOW);
- if(self) { ptr1=dlsym(self,"fnord"); ptr2=dlsym(self,"_fnord");
- if(ptr1 || ptr2) { dlclose(self); exit(0); } } exit(1); }
-
-EOF
-if { (eval echo $progname:2487: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
-then
- lt_cv_dlopen_self=yes
-else
- echo "$progname: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -fr conftest*
- lt_cv_dlopen_self=no
-fi
-rm -fr conftest*
-fi
-
-fi
-
-echo "$ac_t""$lt_cv_dlopen_self" 1>&6
-
- if test "$lt_cv_dlopen_self" = yes; then
- LDFLAGS="$LDFLAGS $link_static_flag"
- echo $ac_n "checking whether a statically linked program can dlopen itself""... $ac_c" 1>&6
-echo "$progname:2506: checking whether a statically linked program can dlopen itself" >&5
-if test "${lt_cv_dlopen_self_static+set}" = set; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- if test "$cross_compiling" = yes; then
- lt_cv_dlopen_self_static=cross
- else
- cat > conftest.c <<EOF
-#line 2514 "ltconfig"
-
-#if HAVE_DLFCN_H
-#include <dlfcn.h>
-#endif
-
-#include <stdio.h>
-
-#ifdef RTLD_GLOBAL
-# define LTDL_GLOBAL RTLD_GLOBAL
-#else
-# ifdef DL_GLOBAL
-# define LTDL_GLOBAL DL_GLOBAL
-# else
-# define LTDL_GLOBAL 0
-# endif
-#endif
-
-/* We may have to define LTDL_LAZY_OR_NOW in the command line if we
- find out it does not work in some platform. */
-#ifndef LTDL_LAZY_OR_NOW
-# ifdef RTLD_LAZY
-# define LTDL_LAZY_OR_NOW RTLD_LAZY
-# else
-# ifdef DL_LAZY
-# define LTDL_LAZY_OR_NOW DL_LAZY
-# else
-# ifdef RTLD_NOW
-# define LTDL_LAZY_OR_NOW RTLD_NOW
-# else
-# ifdef DL_NOW
-# define LTDL_LAZY_OR_NOW DL_NOW
-# else
-# define LTDL_LAZY_OR_NOW 0
-# endif
-# endif
-# endif
-# endif
-#endif
-
-fnord() { int i=42;}
-main() { void *self, *ptr1, *ptr2; self=dlopen(0,LTDL_GLOBAL|LTDL_LAZY_OR_NOW);
- if(self) { ptr1=dlsym(self,"fnord"); ptr2=dlsym(self,"_fnord");
- if(ptr1 || ptr2) { dlclose(self); exit(0); } } exit(1); }
-
-EOF
-if { (eval echo $progname:2560: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
-then
- lt_cv_dlopen_self_static=yes
-else
- echo "$progname: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -fr conftest*
- lt_cv_dlopen_self_static=no
-fi
-rm -fr conftest*
-fi
-
-fi
-
-echo "$ac_t""$lt_cv_dlopen_self_static" 1>&6
-fi
- ;;
- esac
-
- case "$lt_cv_dlopen_self" in
- yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
- *) enable_dlopen_self=unknown ;;
- esac
-
- case "$lt_cv_dlopen_self_static" in
- yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
- *) enable_dlopen_self_static=unknown ;;
- esac
-fi
-
-# Copy echo and quote the copy, instead of the original, because it is
-# used later.
-ltecho="$echo"
-if test "X$ltecho" = "X$CONFIG_SHELL $0 --fallback-echo"; then
- ltecho="$CONFIG_SHELL \$0 --fallback-echo"
-fi
-LTSHELL="$SHELL"
-
-LTCONFIG_VERSION="$VERSION"
-
-# Only quote variables if we're using ltmain.sh.
-case "$ltmain" in
-*.sh)
- # Now quote all the things that may contain metacharacters.
- for var in ltecho old_CC old_CFLAGS old_CPPFLAGS \
- old_LD old_LDFLAGS old_LIBS \
- old_NM old_RANLIB old_LN_S old_DLLTOOL old_OBJDUMP old_AS \
- AR CC LD LN_S NM LTSHELL LTCONFIG_VERSION \
- reload_flag reload_cmds wl \
- pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \
- thread_safe_flag_spec whole_archive_flag_spec libname_spec \
- library_names_spec soname_spec \
- RANLIB old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \
- old_postuninstall_cmds archive_cmds archive_expsym_cmds postinstall_cmds postuninstall_cmds \
- file_magic_cmd export_symbols_cmds deplibs_check_method allow_undefined_flag no_undefined_flag \
- finish_cmds finish_eval global_symbol_pipe global_symbol_to_cdecl \
- hardcode_libdir_flag_spec hardcode_libdir_separator \
- sys_lib_search_path_spec sys_lib_dlsearch_path_spec \
- compiler_c_o compiler_o_lo need_locks exclude_expsyms include_expsyms; do
-
- case "$var" in
- reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \
- old_postinstall_cmds | old_postuninstall_cmds | \
- export_symbols_cmds | archive_cmds | archive_expsym_cmds | \
- postinstall_cmds | postuninstall_cmds | \
- finish_cmds | sys_lib_search_path_spec | sys_lib_dlsearch_path_spec)
- # Double-quote double-evaled strings.
- eval "$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\""
- ;;
- *)
- eval "$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\""
- ;;
- esac
- done
-
- case "$ltecho" in
- *'\$0 --fallback-echo"')
- ltecho=`$echo "X$ltecho" | $Xsed -e 's/\\\\\\\$0 --fallback-echo"$/$0 --fallback-echo"/'`
- ;;
- esac
-
- trap "$rm \"$ofile\"; exit 1" 1 2 15
- echo "creating $ofile"
- $rm "$ofile"
- cat <<EOF > "$ofile"
-#! $SHELL
-
-# `$echo "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
-# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
-# NOTE: Changes made to this file will be lost: look at ltconfig or ltmain.sh.
-#
-# Copyright (C) 1996-1999 Free Software Foundation, Inc.
-# Gordon Matzigkeit <gord at gnu.ai.mit.edu>, 1996
-#
-# 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-# Sed that helps us avoid accidentally triggering echo(1) options like -n.
-Xsed="sed -e s/^X//"
-
-# The HP-UX ksh and POSIX shell print the target directory to stdout
-# if CDPATH is set.
-if test "\${CDPATH+set}" = set; then CDPATH=; export CDPATH; fi
-
-### BEGIN LIBTOOL CONFIG
-EOF
- cfgfile="$ofile"
- ;;
-
-*)
- # Double-quote the variables that need it (for aesthetics).
- for var in old_CC old_CFLAGS old_CPPFLAGS \
- old_LD old_LDFLAGS old_LIBS \
- old_NM old_RANLIB old_LN_S old_DLLTOOL old_OBJDUMP old_AS; do
- eval "$var=\\\"\$var\\\""
- done
-
- # Just create a config file.
- cfgfile="$ofile.cfg"
- trap "$rm \"$cfgfile\"; exit 1" 1 2 15
- echo "creating $cfgfile"
- $rm "$cfgfile"
- cat <<EOF > "$cfgfile"
-# `$echo "$cfgfile" | sed 's%^.*/%%'` - Libtool configuration file.
-# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
-EOF
- ;;
-esac
-
-cat <<EOF >> "$cfgfile"
-# Libtool was configured as follows, on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
-#
-# CC=$old_CC CFLAGS=$old_CFLAGS CPPFLAGS=$old_CPPFLAGS \\
-# LD=$old_LD LDFLAGS=$old_LDFLAGS LIBS=$old_LIBS \\
-# NM=$old_NM RANLIB=$old_RANLIB LN_S=$old_LN_S \\
-# DLLTOOL=$old_DLLTOOL OBJDUMP=$old_OBJDUMP AS=$old_AS \\
-# $0$ltconfig_args
-#
-# Compiler and other test output produced by $progname, useful for
-# debugging $progname, is in ./config.log if it exists.
-
-# The version of $progname that generated this script.
-LTCONFIG_VERSION=$LTCONFIG_VERSION
-
-# Shell to use when invoking shell scripts.
-SHELL=$LTSHELL
-
-# Whether or not to build shared libraries.
-build_libtool_libs=$enable_shared
-
-# Whether or not to build static libraries.
-build_old_libs=$enable_static
-
-# Whether or not to optimize for fast installation.
-fast_install=$enable_fast_install
-
-# The host system.
-host_alias=$host_alias
-host=$host
-
-# An echo program that does not interpret backslashes.
-echo=$ltecho
-
-# The archiver.
-AR=$AR
-
-# The default C compiler.
-CC=$CC
-
-# The linker used to build libraries.
-LD=$LD
-
-# Whether we need hard or soft links.
-LN_S=$LN_S
-
-# A BSD-compatible nm program.
-NM=$NM
-
-# Used on cygwin: DLL creation program.
-DLLTOOL="$DLLTOOL"
-
-# Used on cygwin: object dumper.
-OBJDUMP="$OBJDUMP"
-
-# Used on cygwin: assembler.
-AS="$AS"
-
-# The name of the directory that contains temporary libtool files.
-objdir=$objdir
-
-# How to create reloadable object files.
-reload_flag=$reload_flag
-reload_cmds=$reload_cmds
-
-# How to pass a linker flag through the compiler.
-wl=$wl
-
-# Object file suffix (normally "o").
-objext="$objext"
-
-# Old archive suffix (normally "a").
-libext="$libext"
-
-# Executable file suffix (normally "").
-exeext="$exeext"
-
-# Additional compiler flags for building library objects.
-pic_flag=$pic_flag
-
-# Does compiler simultaneously support -c and -o options?
-compiler_c_o=$compiler_c_o
-
-# Can we write directly to a .lo ?
-compiler_o_lo=$compiler_o_lo
-
-# Must we lock files when doing compilation ?
-need_locks=$need_locks
-
-# Do we need the lib prefix for modules?
-need_lib_prefix=$need_lib_prefix
-
-# Do we need a version for libraries?
-need_version=$need_version
-
-# Whether dlopen is supported.
-dlopen=$enable_dlopen
-
-# Whether dlopen of programs is supported.
-dlopen_self=$enable_dlopen_self
-
-# Whether dlopen of statically linked programs is supported.
-dlopen_self_static=$enable_dlopen_self_static
-
-# Compiler flag to prevent dynamic linking.
-link_static_flag=$link_static_flag
-
-# Compiler flag to turn off builtin functions.
-no_builtin_flag=$no_builtin_flag
-
-# Compiler flag to allow reflexive dlopens.
-export_dynamic_flag_spec=$export_dynamic_flag_spec
-
-# Compiler flag to generate shared objects directly from archives.
-whole_archive_flag_spec=$whole_archive_flag_spec
-
-# Compiler flag to generate thread-safe objects.
-thread_safe_flag_spec=$thread_safe_flag_spec
-
-# Library versioning type.
-version_type=$version_type
-
-# Format of library name prefix.
-libname_spec=$libname_spec
-
-# List of archive names. First name is the real one, the rest are links.
-# The last name is the one that the linker finds with -lNAME.
-library_names_spec=$library_names_spec
-
-# The coded name of the library, if different from the real name.
-soname_spec=$soname_spec
-
-# Commands used to build and install an old-style archive.
-RANLIB=$RANLIB
-old_archive_cmds=$old_archive_cmds
-old_postinstall_cmds=$old_postinstall_cmds
-old_postuninstall_cmds=$old_postuninstall_cmds
-
-# Create an old-style archive from a shared archive.
-old_archive_from_new_cmds=$old_archive_from_new_cmds
-
-# Commands used to build and install a shared archive.
-archive_cmds=$archive_cmds
-archive_expsym_cmds=$archive_expsym_cmds
-postinstall_cmds=$postinstall_cmds
-postuninstall_cmds=$postuninstall_cmds
-
-# Method to check whether dependent libraries are shared objects.
-deplibs_check_method=$deplibs_check_method
-
-# Command to use when deplibs_check_method == file_magic.
-file_magic_cmd=$file_magic_cmd
-
-# Flag that allows shared libraries with undefined symbols to be built.
-allow_undefined_flag=$allow_undefined_flag
-
-# Flag that forces no undefined symbols.
-no_undefined_flag=$no_undefined_flag
-
-# Commands used to finish a libtool library installation in a directory.
-finish_cmds=$finish_cmds
-
-# Same as above, but a single script fragment to be evaled but not shown.
-finish_eval=$finish_eval
-
-# Take the output of nm and produce a listing of raw symbols and C names.
-global_symbol_pipe=$global_symbol_pipe
-
-# Transform the output of nm in a proper C declaration
-global_symbol_to_cdecl=$global_symbol_to_cdecl
-
-# This is the shared library runtime path variable.
-runpath_var=$runpath_var
-
-# This is the shared library path variable.
-shlibpath_var=$shlibpath_var
-
-# Is shlibpath searched before the hard-coded library search path?
-shlibpath_overrides_runpath=$shlibpath_overrides_runpath
-
-# How to hardcode a shared library path into an executable.
-hardcode_action=$hardcode_action
-
-# Flag to hardcode \$libdir into a binary during linking.
-# This must work even if \$libdir does not exist.
-hardcode_libdir_flag_spec=$hardcode_libdir_flag_spec
-
-# Whether we need a single -rpath flag with a separated argument.
-hardcode_libdir_separator=$hardcode_libdir_separator
-
-# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the
-# resulting binary.
-hardcode_direct=$hardcode_direct
-
-# Set to yes if using the -LDIR flag during linking hardcodes DIR into the
-# resulting binary.
-hardcode_minus_L=$hardcode_minus_L
-
-# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into
-# the resulting binary.
-hardcode_shlibpath_var=$hardcode_shlibpath_var
-
-# Compile-time system search path for libraries
-sys_lib_search_path_spec=$sys_lib_search_path_spec
-
-# Run-time system search path for libraries
-sys_lib_dlsearch_path_spec=$sys_lib_dlsearch_path_spec
-
-# Fix the shell variable \$srcfile for the compiler.
-fix_srcfile_path="$fix_srcfile_path"
-
-# Set to yes if exported symbols are required.
-always_export_symbols=$always_export_symbols
-
-# The commands to list exported symbols.
-export_symbols_cmds=$export_symbols_cmds
-
-# Symbols that should not be listed in the preloaded symbols.
-exclude_expsyms=$exclude_expsyms
-
-# Symbols that must always be exported.
-include_expsyms=$include_expsyms
-
-EOF
-
-case "$ltmain" in
-*.sh)
- echo '### END LIBTOOL CONFIG' >> "$ofile"
- echo >> "$ofile"
- case "$host_os" in
- aix3*)
- cat <<\EOF >> "$ofile"
-
-# AIX sometimes has problems with the GCC collect2 program. For some
-# reason, if we set the COLLECT_NAMES environment variable, the problems
-# vanish in a puff of smoke.
-if test "${COLLECT_NAMES+set}" != set; then
- COLLECT_NAMES=
- export COLLECT_NAMES
-fi
-EOF
- ;;
- esac
-
- # Append the ltmain.sh script.
- sed '$q' "$ltmain" >> "$ofile" || (rm -f "$ofile"; exit 1)
-
- chmod +x "$ofile"
- ;;
-
-*)
- # Compile the libtool program.
- echo "FIXME: would compile $ltmain"
- ;;
-esac
-
-test -n "$cache_file" || exit 0
-
-# AC_CACHE_SAVE
-trap '' 1 2 15
-cat > confcache <<\EOF
-# This file is a shell script that caches the results of configure
-# tests run on this system so they can be shared between configure
-# scripts and configure runs. It is not useful on other systems.
-# If it contains results you don't want to keep, you may remove or edit it.
-#
-# By default, configure uses ./config.cache as the cache file,
-# creating it if it does not exist already. You can give configure
-# the --cache-file=FILE option to use a different cache file; that is
-# what configure does when it calls configure scripts in
-# subdirectories, so they share the cache.
-# Giving --cache-file=/dev/null disables caching, for debugging configure.
-# config.status only pays attention to the cache file if you give it the
-# --recheck option to rerun configure.
-#
-EOF
-# The following way of writing the cache mishandles newlines in values,
-# but we know of no workaround that is simple, portable, and efficient.
-# So, don't put newlines in cache variables' values.
-# Ultrix sh set writes to stderr and can't be redirected directly,
-# and sets the high bit in the cache file unless we assign to the vars.
-(set) 2>&1 |
- case `(ac_space=' '; set | grep ac_space) 2>&1` in
- *ac_space=\ *)
- # `set' does not quote correctly, so add quotes (double-quote substitution
- # turns \\\\ into \\, and sed turns \\ into \).
- sed -n \
- -e "s/'/'\\\\''/g" \
- -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p"
- ;;
- *)
- # `set' quotes correctly as required by POSIX, so do not add quotes.
- sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p'
- ;;
- esac >> confcache
-if cmp -s $cache_file confcache; then
- :
-else
- if test -w $cache_file; then
- echo "updating cache $cache_file"
- cat confcache > $cache_file
- else
- echo "not updating unwritable cache $cache_file"
- fi
-fi
-rm -f confcache
-
-exit 0
-
-# Local Variables:
-# mode:shell-script
-# sh-indentation:2
-# End:
diff --git a/ltmain.sh b/ltmain.sh
deleted file mode 100644
index e589475..0000000
--- a/ltmain.sh
+++ /dev/null
@@ -1,6975 +0,0 @@
-# ltmain.sh - Provide generalized library-building support services.
-# NOTE: Changing this file will not affect anything until you rerun configure.
-#
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006,
-# 2007, 2008 Free Software Foundation, Inc.
-# Originally by Gordon Matzigkeit <gord at gnu.ai.mit.edu>, 1996
-#
-# 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.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-basename="s,^.*/,,g"
-
-# Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh
-# is ksh but when the shell is invoked as "sh" and the current value of
-# the _XPG environment variable is not equal to 1 (one), the special
-# positional parameter $0, within a function call, is the name of the
-# function.
-progpath="$0"
-
-# The name of this program:
-progname=`echo "$progpath" | $SED $basename`
-modename="$progname"
-
-# Global variables:
-EXIT_SUCCESS=0
-EXIT_FAILURE=1
-
-PROGRAM=ltmain.sh
-PACKAGE=libtool
-VERSION=1.5.26
-TIMESTAMP=" (1.1220.2.493 2008/02/01 16:58:18)"
-
-# Be Bourne compatible (taken from Autoconf:_AS_BOURNE_COMPATIBLE).
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
- emulate sh
- NULLCMD=:
- # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
- # is contrary to our usage. Disable this feature.
- alias -g '${1+"$@"}'='"$@"'
- setopt NO_GLOB_SUBST
-else
- case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac
-fi
-BIN_SH=xpg4; export BIN_SH # for Tru64
-DUALCASE=1; export DUALCASE # for MKS sh
-
-# Check that we have a working $echo.
-if test "X$1" = X--no-reexec; then
- # Discard the --no-reexec flag, and continue.
- shift
-elif test "X$1" = X--fallback-echo; then
- # Avoid inline document here, it may be left over
- :
-elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then
- # Yippee, $echo works!
- :
-else
- # Restart under the correct shell, and then maybe $echo will work.
- exec $SHELL "$progpath" --no-reexec ${1+"$@"}
-fi
-
-if test "X$1" = X--fallback-echo; then
- # used as fallback echo
- shift
- cat <<EOF
-$*
-EOF
- exit $EXIT_SUCCESS
-fi
-
-default_mode=
-help="Try \`$progname --help' for more information."
-magic="%%%MAGIC variable%%%"
-mkdir="mkdir"
-mv="mv -f"
-rm="rm -f"
-
-# Sed substitution that helps us do robust quoting. It backslashifies
-# metacharacters that are still active within double-quoted strings.
-Xsed="${SED}"' -e 1s/^X//'
-sed_quote_subst='s/\([\\`\\"$\\\\]\)/\\\1/g'
-# test EBCDIC or ASCII
-case `echo X|tr X '\101'` in
- A) # ASCII based system
- # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
- SP2NL='tr \040 \012'
- NL2SP='tr \015\012 \040\040'
- ;;
- *) # EBCDIC based system
- SP2NL='tr \100 \n'
- NL2SP='tr \r\n \100\100'
- ;;
-esac
-
-# NLS nuisances.
-# Only set LANG and LC_ALL to C if already set.
-# These must not be set unconditionally because not all systems understand
-# e.g. LANG=C (notably SCO).
-# We save the old values to restore during execute mode.
-lt_env=
-for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
-do
- eval "if test \"\${$lt_var+set}\" = set; then
- save_$lt_var=\$$lt_var
- lt_env=\"$lt_var=\$$lt_var \$lt_env\"
- $lt_var=C
- export $lt_var
- fi"
-done
-
-if test -n "$lt_env"; then
- lt_env="env $lt_env"
-fi
-
-# Make sure IFS has a sensible default
-lt_nl='
-'
-IFS=" $lt_nl"
-
-if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then
- $echo "$modename: not configured to build any kind of library" 1>&2
- $echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
- exit $EXIT_FAILURE
-fi
-
-# Global variables.
-mode=$default_mode
-nonopt=
-prev=
-prevopt=
-run=
-show="$echo"
-show_help=
-execute_dlfiles=
-duplicate_deps=no
-preserve_args=
-lo2o="s/\\.lo\$/.${objext}/"
-o2lo="s/\\.${objext}\$/.lo/"
-extracted_archives=
-extracted_serial=0
-
-#####################################
-# Shell function definitions:
-# This seems to be the best place for them
-
-# func_mktempdir [string]
-# Make a temporary directory that won't clash with other running
-# libtool processes, and avoids race conditions if possible. If
-# given, STRING is the basename for that directory.
-func_mktempdir ()
-{
- my_template="${TMPDIR-/tmp}/${1-$progname}"
-
- if test "$run" = ":"; then
- # Return a directory name, but don't create it in dry-run mode
- my_tmpdir="${my_template}-$$"
- else
-
- # If mktemp works, use that first and foremost
- my_tmpdir=`mktemp -d "${my_template}-XXXXXXXX" 2>/dev/null`
-
- if test ! -d "$my_tmpdir"; then
- # Failing that, at least try and use $RANDOM to avoid a race
- my_tmpdir="${my_template}-${RANDOM-0}$$"
-
- save_mktempdir_umask=`umask`
- umask 0077
- $mkdir "$my_tmpdir"
- umask $save_mktempdir_umask
- fi
-
- # If we're not in dry-run mode, bomb out on failure
- test -d "$my_tmpdir" || {
- $echo "cannot create temporary directory \`$my_tmpdir'" 1>&2
- exit $EXIT_FAILURE
- }
- fi
-
- $echo "X$my_tmpdir" | $Xsed
-}
-
-
-# func_win32_libid arg
-# return the library type of file 'arg'
-#
-# Need a lot of goo to handle *both* DLLs and import libs
-# Has to be a shell function in order to 'eat' the argument
-# that is supplied when $file_magic_command is called.
-func_win32_libid ()
-{
- win32_libid_type="unknown"
- win32_fileres=`file -L $1 2>/dev/null`
- case $win32_fileres in
- *ar\ archive\ import\ library*) # definitely import
- win32_libid_type="x86 archive import"
- ;;
- *ar\ archive*) # could be an import, or static
- if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | \
- $EGREP -e 'file format pe-i386(.*architecture: i386)?' >/dev/null ; then
- win32_nmres=`eval $NM -f posix -A $1 | \
- $SED -n -e '1,100{
- / I /{
- s,.*,import,
- p
- q
- }
- }'`
- case $win32_nmres in
- import*) win32_libid_type="x86 archive import";;
- *) win32_libid_type="x86 archive static";;
- esac
- fi
- ;;
- *DLL*)
- win32_libid_type="x86 DLL"
- ;;
- *executable*) # but shell scripts are "executable" too...
- case $win32_fileres in
- *MS\ Windows\ PE\ Intel*)
- win32_libid_type="x86 DLL"
- ;;
- esac
- ;;
- esac
- $echo $win32_libid_type
-}
-
-
-# func_infer_tag arg
-# Infer tagged configuration to use if any are available and
-# if one wasn't chosen via the "--tag" command line option.
-# Only attempt this if the compiler in the base compile
-# command doesn't match the default compiler.
-# arg is usually of the form 'gcc ...'
-func_infer_tag ()
-{
- if test -n "$available_tags" && test -z "$tagname"; then
- CC_quoted=
- for arg in $CC; do
- case $arg in
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
- arg="\"$arg\""
- ;;
- esac
- CC_quoted="$CC_quoted $arg"
- done
- case $@ in
- # Blanks in the command may have been stripped by the calling shell,
- # but not from the CC environment variable when configure was run.
- " $CC "* | "$CC "* | " `$echo $CC` "* | "`$echo $CC` "* | " $CC_quoted"* | "$CC_quoted "* | " `$echo $CC_quoted` "* | "`$echo $CC_quoted` "*) ;;
- # Blanks at the start of $base_compile will cause this to fail
- # if we don't check for them as well.
- *)
- for z in $available_tags; do
- if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$progpath" > /dev/null; then
- # Evaluate the configuration.
- eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`"
- CC_quoted=
- for arg in $CC; do
- # Double-quote args containing other shell metacharacters.
- case $arg in
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
- arg="\"$arg\""
- ;;
- esac
- CC_quoted="$CC_quoted $arg"
- done
- # user sometimes does CC=<HOST>-gcc so we need to match that to 'gcc'
- trimedcc=`echo ${CC} | $SED -e "s/${host}-//g"`
- # and sometimes libtool has CC=<HOST>-gcc but user does CC=gcc
- extendcc=${host}-${CC}
- # and sometimes libtool has CC=<OLDHOST>-gcc but user has CC=<NEWHOST>-gcc
- # (Gentoo-specific hack because we always export $CHOST)
- mungedcc=${CHOST-${host}}-${trimedcc}
- case "$@ " in
- "cc "* | " cc "* | "${host}-cc "* | " ${host}-cc "*|\
- "gcc "* | " gcc "* | "${host}-gcc "* | " ${host}-gcc "*)
- tagname=CC
- break ;;
- "$trimedcc "* | " $trimedcc "* | "`$echo $trimedcc` "* | " `$echo $trimedcc` "*|\
- "$extendcc "* | " $extendcc "* | "`$echo $extendcc` "* | " `$echo $extendcc` "*|\
- "$mungedcc "* | " $mungedcc "* | "`$echo $mungedcc` "* | " `$echo $mungedcc` "*|\
- " $CC "* | "$CC "* | " `$echo $CC` "* | "`$echo $CC` "* | " $CC_quoted"* | "$CC_quoted "* | " `$echo $CC_quoted` "* | "`$echo $CC_quoted` "*)
- # The compiler in the base compile command matches
- # the one in the tagged configuration.
- # Assume this is the tagged configuration we want.
- tagname=$z
- break
- ;;
- esac
- fi
- done
- # If $tagname still isn't set, then no tagged configuration
- # was found and let the user know that the "--tag" command
- # line option must be used.
- if test -z "$tagname"; then
- $echo "$modename: unable to infer tagged configuration"
- $echo "$modename: specify a tag with \`--tag'" 1>&2
- exit $EXIT_FAILURE
-# else
-# $echo "$modename: using $tagname tagged configuration"
- fi
- ;;
- esac
- fi
-}
-
-
-# func_extract_an_archive dir oldlib
-func_extract_an_archive ()
-{
- f_ex_an_ar_dir="$1"; shift
- f_ex_an_ar_oldlib="$1"
-
- $show "(cd $f_ex_an_ar_dir && $AR x $f_ex_an_ar_oldlib)"
- $run eval "(cd \$f_ex_an_ar_dir && $AR x \$f_ex_an_ar_oldlib)" || exit $?
- if ($AR t "$f_ex_an_ar_oldlib" | sort | sort -uc >/dev/null 2>&1); then
- :
- else
- $echo "$modename: ERROR: object name conflicts: $f_ex_an_ar_dir/$f_ex_an_ar_oldlib" 1>&2
- exit $EXIT_FAILURE
- fi
-}
-
-# func_extract_archives gentop oldlib ...
-func_extract_archives ()
-{
- my_gentop="$1"; shift
- my_oldlibs=${1+"$@"}
- my_oldobjs=""
- my_xlib=""
- my_xabs=""
- my_xdir=""
- my_status=""
-
- $show "${rm}r $my_gentop"
- $run ${rm}r "$my_gentop"
- $show "$mkdir $my_gentop"
- $run $mkdir "$my_gentop"
- my_status=$?
- if test "$my_status" -ne 0 && test ! -d "$my_gentop"; then
- exit $my_status
- fi
-
- for my_xlib in $my_oldlibs; do
- # Extract the objects.
- case $my_xlib in
- [\\/]* | [A-Za-z]:[\\/]*) my_xabs="$my_xlib" ;;
- *) my_xabs=`pwd`"/$my_xlib" ;;
- esac
- my_xlib=`$echo "X$my_xlib" | $Xsed -e 's%^.*/%%'`
- my_xlib_u=$my_xlib
- while :; do
- case " $extracted_archives " in
- *" $my_xlib_u "*)
- extracted_serial=`expr $extracted_serial + 1`
- my_xlib_u=lt$extracted_serial-$my_xlib ;;
- *) break ;;
- esac
- done
- extracted_archives="$extracted_archives $my_xlib_u"
- my_xdir="$my_gentop/$my_xlib_u"
-
- $show "${rm}r $my_xdir"
- $run ${rm}r "$my_xdir"
- $show "$mkdir $my_xdir"
- $run $mkdir "$my_xdir"
- exit_status=$?
- if test "$exit_status" -ne 0 && test ! -d "$my_xdir"; then
- exit $exit_status
- fi
- case $host in
- *-darwin*)
- $show "Extracting $my_xabs"
- # Do not bother doing anything if just a dry run
- if test -z "$run"; then
- darwin_orig_dir=`pwd`
- cd $my_xdir || exit $?
- darwin_archive=$my_xabs
- darwin_curdir=`pwd`
- darwin_base_archive=`$echo "X$darwin_archive" | $Xsed -e 's%^.*/%%'`
- darwin_arches=`lipo -info "$darwin_archive" 2>/dev/null | $EGREP Architectures 2>/dev/null`
- if test -n "$darwin_arches"; then
- darwin_arches=`echo "$darwin_arches" | $SED -e 's/.*are://'`
- darwin_arch=
- $show "$darwin_base_archive has multiple architectures $darwin_arches"
- for darwin_arch in $darwin_arches ; do
- mkdir -p "unfat-$$/${darwin_base_archive}-${darwin_arch}"
- lipo -thin $darwin_arch -output "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}" "${darwin_archive}"
- cd "unfat-$$/${darwin_base_archive}-${darwin_arch}"
- func_extract_an_archive "`pwd`" "${darwin_base_archive}"
- cd "$darwin_curdir"
- $rm "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}"
- done # $darwin_arches
- ## Okay now we have a bunch of thin objects, gotta fatten them up :)
- darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print| xargs basename | sort -u | $NL2SP`
- darwin_file=
- darwin_files=
- for darwin_file in $darwin_filelist; do
- darwin_files=`find unfat-$$ -name $darwin_file -print | $NL2SP`
- lipo -create -output "$darwin_file" $darwin_files
- done # $darwin_filelist
- ${rm}r unfat-$$
- cd "$darwin_orig_dir"
- else
- cd "$darwin_orig_dir"
- func_extract_an_archive "$my_xdir" "$my_xabs"
- fi # $darwin_arches
- fi # $run
- ;;
- *)
- func_extract_an_archive "$my_xdir" "$my_xabs"
- ;;
- esac
- my_oldobjs="$my_oldobjs "`find $my_xdir -name \*.$objext -print -o -name \*.lo -print | $NL2SP`
- done
- func_extract_archives_result="$my_oldobjs"
-}
-# End of Shell function definitions
-#####################################
-
-# Darwin sucks
-eval std_shrext=\"$shrext_cmds\"
-
-disable_libs=no
-
-# Parse our command line options once, thoroughly.
-while test "$#" -gt 0
-do
- arg="$1"
- shift
-
- case $arg in
- -*=*) optarg=`$echo "X$arg" | $Xsed -e 's/[-_a-zA-Z0-9]*=//'` ;;
- *) optarg= ;;
- esac
-
- # If the previous option needs an argument, assign it.
- if test -n "$prev"; then
- case $prev in
- execute_dlfiles)
- execute_dlfiles="$execute_dlfiles $arg"
- ;;
- tag)
- tagname="$arg"
- preserve_args="${preserve_args}=$arg"
-
- # Check whether tagname contains only valid characters
- case $tagname in
- *[!-_A-Za-z0-9,/]*)
- $echo "$progname: invalid tag name: $tagname" 1>&2
- exit $EXIT_FAILURE
- ;;
- esac
-
- case $tagname in
- CC)
- # Don't test for the "default" C tag, as we know, it's there, but
- # not specially marked.
- ;;
- *)
- if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "$progpath" > /dev/null; then
- taglist="$taglist $tagname"
- # Evaluate the configuration.
- eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$tagname'$/,/^# ### END LIBTOOL TAG CONFIG: '$tagname'$/p' < $progpath`"
- else
- $echo "$progname: ignoring unknown tag $tagname" 1>&2
- fi
- ;;
- esac
- ;;
- *)
- eval "$prev=\$arg"
- ;;
- esac
-
- prev=
- prevopt=
- continue
- fi
-
- # Have we seen a non-optional argument yet?
- case $arg in
- --help)
- show_help=yes
- ;;
-
- --version)
- echo "\
-$PROGRAM (GNU $PACKAGE) $VERSION$TIMESTAMP
-
-Copyright (C) 2008 Free Software Foundation, Inc.
-This is free software; see the source for copying conditions. There is NO
-warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
- exit $?
- ;;
-
- --config)
- ${SED} -e '1,/^# ### BEGIN LIBTOOL CONFIG/d' -e '/^# ### END LIBTOOL CONFIG/,$d' $progpath
- # Now print the configurations for the tags.
- for tagname in $taglist; do
- ${SED} -n -e "/^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$/,/^# ### END LIBTOOL TAG CONFIG: $tagname$/p" < "$progpath"
- done
- exit $?
- ;;
-
- --debug)
- $echo "$progname: enabling shell trace mode"
- set -x
- preserve_args="$preserve_args $arg"
- ;;
-
- --dry-run | -n)
- run=:
- ;;
-
- --features)
- $echo "host: $host"
- if test "$build_libtool_libs" = yes; then
- $echo "enable shared libraries"
- else
- $echo "disable shared libraries"
- fi
- if test "$build_old_libs" = yes; then
- $echo "enable static libraries"
- else
- $echo "disable static libraries"
- fi
- exit $?
- ;;
-
- --finish) mode="finish" ;;
-
- --mode) prevopt="--mode" prev=mode ;;
- --mode=*) mode="$optarg" ;;
-
- --preserve-dup-deps) duplicate_deps="yes" ;;
-
- --quiet | --silent)
- show=:
- preserve_args="$preserve_args $arg"
- ;;
-
- --tag)
- prevopt="--tag"
- prev=tag
- preserve_args="$preserve_args --tag"
- ;;
- --tag=*)
- set tag "$optarg" ${1+"$@"}
- shift
- prev=tag
- preserve_args="$preserve_args --tag"
- ;;
-
- -dlopen)
- prevopt="-dlopen"
- prev=execute_dlfiles
- ;;
-
- -*)
- $echo "$modename: unrecognized option \`$arg'" 1>&2
- $echo "$help" 1>&2
- exit $EXIT_FAILURE
- ;;
-
- *)
- nonopt="$arg"
- break
- ;;
- esac
-done
-
-if test -n "$prevopt"; then
- $echo "$modename: option \`$prevopt' requires an argument" 1>&2
- $echo "$help" 1>&2
- exit $EXIT_FAILURE
-fi
-
-case $disable_libs in
-no)
- ;;
-shared)
- build_libtool_libs=no
- build_old_libs=yes
- ;;
-static)
- build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac`
- ;;
-esac
-
-# If this variable is set in any of the actions, the command in it
-# will be execed at the end. This prevents here-documents from being
-# left over by shells.
-exec_cmd=
-
-if test -z "$show_help"; then
-
- # Infer the operation mode.
- if test -z "$mode"; then
- $echo "*** Warning: inferring the mode of operation is deprecated." 1>&2
- $echo "*** Future versions of Libtool will require --mode=MODE be specified." 1>&2
- case $nonopt in
- *cc | cc* | *++ | gcc* | *-gcc* | g++* | xlc*)
- mode=link
- for arg
- do
- case $arg in
- -c)
- mode=compile
- break
- ;;
- esac
- done
- ;;
- *db | *dbx | *strace | *truss)
- mode=execute
- ;;
- *install*|cp|mv)
- mode=install
- ;;
- *rm)
- mode=uninstall
- ;;
- *)
- # If we have no mode, but dlfiles were specified, then do execute mode.
- test -n "$execute_dlfiles" && mode=execute
-
- # Just use the default operation mode.
- if test -z "$mode"; then
- if test -n "$nonopt"; then
- $echo "$modename: warning: cannot infer operation mode from \`$nonopt'" 1>&2
- else
- $echo "$modename: warning: cannot infer operation mode without MODE-ARGS" 1>&2
- fi
- fi
- ;;
- esac
- fi
-
- # Only execute mode is allowed to have -dlopen flags.
- if test -n "$execute_dlfiles" && test "$mode" != execute; then
- $echo "$modename: unrecognized option \`-dlopen'" 1>&2
- $echo "$help" 1>&2
- exit $EXIT_FAILURE
- fi
-
- # Change the help message to a mode-specific one.
- generic_help="$help"
- help="Try \`$modename --help --mode=$mode' for more information."
-
- # These modes are in order of execution frequency so that they run quickly.
- case $mode in
- # libtool compile mode
- compile)
- modename="$modename: compile"
- # Get the compilation command and the source file.
- base_compile=
- srcfile="$nonopt" # always keep a non-empty value in "srcfile"
- suppress_opt=yes
- suppress_output=
- arg_mode=normal
- libobj=
- later=
-
- for arg
- do
- case $arg_mode in
- arg )
- # do not "continue". Instead, add this to base_compile
- lastarg="$arg"
- arg_mode=normal
- ;;
-
- target )
- libobj="$arg"
- arg_mode=normal
- continue
- ;;
-
- normal )
- # Accept any command-line options.
- case $arg in
- -o)
- if test -n "$libobj" ; then
- $echo "$modename: you cannot specify \`-o' more than once" 1>&2
- exit $EXIT_FAILURE
- fi
- arg_mode=target
- continue
- ;;
-
- -static | -prefer-pic | -prefer-non-pic)
- later="$later $arg"
- continue
- ;;
-
- -no-suppress)
- suppress_opt=no
- continue
- ;;
-
- -Xcompiler)
- arg_mode=arg # the next one goes into the "base_compile" arg list
- continue # The current "srcfile" will either be retained or
- ;; # replaced later. I would guess that would be a bug.
-
- -Wc,*)
- args=`$echo "X$arg" | $Xsed -e "s/^-Wc,//"`
- lastarg=
- save_ifs="$IFS"; IFS=','
- for arg in $args; do
- IFS="$save_ifs"
-
- # Double-quote args containing other shell metacharacters.
- # Many Bourne shells cannot handle close brackets correctly
- # in scan sets, so we specify it separately.
- case $arg in
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
- arg="\"$arg\""
- ;;
- esac
- lastarg="$lastarg $arg"
- done
- IFS="$save_ifs"
- lastarg=`$echo "X$lastarg" | $Xsed -e "s/^ //"`
-
- # Add the arguments to base_compile.
- base_compile="$base_compile $lastarg"
- continue
- ;;
-
- * )
- # Accept the current argument as the source file.
- # The previous "srcfile" becomes the current argument.
- #
- lastarg="$srcfile"
- srcfile="$arg"
- ;;
- esac # case $arg
- ;;
- esac # case $arg_mode
-
- # Aesthetically quote the previous argument.
- lastarg=`$echo "X$lastarg" | $Xsed -e "$sed_quote_subst"`
-
- case $lastarg in
- # Double-quote args containing other shell metacharacters.
- # Many Bourne shells cannot handle close brackets correctly
- # in scan sets, and some SunOS ksh mistreat backslash-escaping
- # in scan sets (worked around with variable expansion),
- # and furthermore cannot handle '|' '&' '(' ')' in scan sets
- # at all, so we specify them separately.
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
- lastarg="\"$lastarg\""
- ;;
- esac
-
- base_compile="$base_compile $lastarg"
- done # for arg
-
- case $arg_mode in
- arg)
- $echo "$modename: you must specify an argument for -Xcompile"
- exit $EXIT_FAILURE
- ;;
- target)
- $echo "$modename: you must specify a target with \`-o'" 1>&2
- exit $EXIT_FAILURE
- ;;
- *)
- # Get the name of the library object.
- [ -z "$libobj" ] && libobj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%'`
- ;;
- esac
-
- # Recognize several different file suffixes.
- # If the user specifies -o file.o, it is replaced with file.lo
- xform='[cCFSifmso]'
- case $libobj in
- *.ada) xform=ada ;;
- *.adb) xform=adb ;;
- *.ads) xform=ads ;;
- *.asm) xform=asm ;;
- *.c++) xform=c++ ;;
- *.cc) xform=cc ;;
- *.ii) xform=ii ;;
- *.class) xform=class ;;
- *.cpp) xform=cpp ;;
- *.cxx) xform=cxx ;;
- *.[fF][09]?) xform=[fF][09]. ;;
- *.for) xform=for ;;
- *.java) xform=java ;;
- *.obj) xform=obj ;;
- *.sx) xform=sx ;;
- esac
-
- libobj=`$echo "X$libobj" | $Xsed -e "s/\.$xform$/.lo/"`
-
- case $libobj in
- *.lo) obj=`$echo "X$libobj" | $Xsed -e "$lo2o"` ;;
- *)
- $echo "$modename: cannot determine name of library object from \`$libobj'" 1>&2
- exit $EXIT_FAILURE
- ;;
- esac
-
- func_infer_tag $base_compile
-
- for arg in $later; do
- case $arg in
- -static)
- build_old_libs=yes
- continue
- ;;
-
- -prefer-pic)
- pic_mode=yes
- continue
- ;;
-
- -prefer-non-pic)
- pic_mode=no
- continue
- ;;
- esac
- done
-
- qlibobj=`$echo "X$libobj" | $Xsed -e "$sed_quote_subst"`
- case $qlibobj in
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
- qlibobj="\"$qlibobj\"" ;;
- esac
- test "X$libobj" != "X$qlibobj" \
- && $echo "X$libobj" | grep '[]~#^*{};<>?"'"'"' &()|`$[]' \
- && $echo "$modename: libobj name \`$libobj' may not contain shell special characters."
- objname=`$echo "X$obj" | $Xsed -e 's%^.*/%%'`
- xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'`
- if test "X$xdir" = "X$obj"; then
- xdir=
- else
- xdir=$xdir/
- fi
- lobj=${xdir}$objdir/$objname
-
- if test -z "$base_compile"; then
- $echo "$modename: you must specify a compilation command" 1>&2
- $echo "$help" 1>&2
- exit $EXIT_FAILURE
- fi
-
- # Delete any leftover library objects.
- if test "$build_old_libs" = yes; then
- removelist="$obj $lobj $libobj ${libobj}T"
- else
- removelist="$lobj $libobj ${libobj}T"
- fi
-
- $run $rm $removelist
- trap "$run $rm $removelist; exit $EXIT_FAILURE" 1 2 15
-
- # On Cygwin there's no "real" PIC flag so we must build both object types
- case $host_os in
- cygwin* | mingw* | pw32* | os2*)
- pic_mode=default
- ;;
- esac
- if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; then
- # non-PIC code in shared libraries is not supported
- pic_mode=default
- fi
-
- # Calculate the filename of the output object if compiler does
- # not support -o with -c
- if test "$compiler_c_o" = no; then
- output_obj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\.[^.]*$%%'`.${objext}
- lockfile="$output_obj.lock"
- removelist="$removelist $output_obj $lockfile"
- trap "$run $rm $removelist; exit $EXIT_FAILURE" 1 2 15
- else
- output_obj=
- need_locks=no
- lockfile=
- fi
-
- # Lock this critical section if it is needed
- # We use this script file to make the link, it avoids creating a new file
- if test "$need_locks" = yes; then
- until $run ln "$srcfile" "$lockfile" 2>/dev/null; do
- $show "Waiting for $lockfile to be removed"
- sleep 2
- done
- elif test "$need_locks" = warn; then
- if test -f "$lockfile"; then
- $echo "\
-*** ERROR, $lockfile exists and contains:
-`cat $lockfile 2>/dev/null`
-
-This indicates that another process is trying to use the same
-temporary object file, and libtool could not work around it because
-your compiler does not support \`-c' and \`-o' together. If you
-repeat this compilation, it may succeed, by chance, but you had better
-avoid parallel builds (make -j) in this platform, or get a better
-compiler."
-
- $run $rm $removelist
- exit $EXIT_FAILURE
- fi
- $echo "$srcfile" > "$lockfile"
- fi
-
- if test -n "$fix_srcfile_path"; then
- eval srcfile=\"$fix_srcfile_path\"
- fi
- qsrcfile=`$echo "X$srcfile" | $Xsed -e "$sed_quote_subst"`
- case $qsrcfile in
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
- qsrcfile="\"$qsrcfile\"" ;;
- esac
-
- $run $rm "$libobj" "${libobj}T"
-
- # Create a libtool object file (analogous to a ".la" file),
- # but don't create it if we're doing a dry run.
- test -z "$run" && cat > ${libobj}T <<EOF
-# $libobj - a libtool object file
-# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP
-#
-# Please DO NOT delete this file!
-# It is necessary for linking the library.
-
-# Name of the PIC object.
-EOF
-
- # Only build a PIC object if we are building libtool libraries.
- if test "$build_libtool_libs" = yes; then
- # Without this assignment, base_compile gets emptied.
- fbsd_hideous_sh_bug=$base_compile
-
- if test "$pic_mode" != no; then
- command="$base_compile $qsrcfile $pic_flag"
- else
- # Don't build PIC code
- command="$base_compile $qsrcfile"
- fi
-
- if test ! -d "${xdir}$objdir"; then
- $show "$mkdir ${xdir}$objdir"
- $run $mkdir ${xdir}$objdir
- exit_status=$?
- if test "$exit_status" -ne 0 && test ! -d "${xdir}$objdir"; then
- exit $exit_status
- fi
- fi
-
- if test -z "$output_obj"; then
- # Place PIC objects in $objdir
- command="$command -o $lobj"
- fi
-
- $run $rm "$lobj" "$output_obj"
-
- $show "$command"
- if $run eval $lt_env "$command"; then :
- else
- test -n "$output_obj" && $run $rm $removelist
- exit $EXIT_FAILURE
- fi
-
- if test "$need_locks" = warn &&
- test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then
- $echo "\
-*** ERROR, $lockfile contains:
-`cat $lockfile 2>/dev/null`
-
-but it should contain:
-$srcfile
-
-This indicates that another process is trying to use the same
-temporary object file, and libtool could not work around it because
-your compiler does not support \`-c' and \`-o' together. If you
-repeat this compilation, it may succeed, by chance, but you had better
-avoid parallel builds (make -j) in this platform, or get a better
-compiler."
-
- $run $rm $removelist
- exit $EXIT_FAILURE
- fi
-
- # Just move the object if needed, then go on to compile the next one
- if test -n "$output_obj" && test "X$output_obj" != "X$lobj"; then
- $show "$mv $output_obj $lobj"
- if $run $mv $output_obj $lobj; then :
- else
- error=$?
- $run $rm $removelist
- exit $error
- fi
- fi
-
- # Append the name of the PIC object to the libtool object file.
- test -z "$run" && cat >> ${libobj}T <<EOF
-pic_object='$objdir/$objname'
-
-EOF
-
- # Allow error messages only from the first compilation.
- if test "$suppress_opt" = yes; then
- suppress_output=' >/dev/null 2>&1'
- fi
- else
- # No PIC object so indicate it doesn't exist in the libtool
- # object file.
- test -z "$run" && cat >> ${libobj}T <<EOF
-pic_object=none
-
-EOF
- fi
-
- # Only build a position-dependent object if we build old libraries.
- if test "$build_old_libs" = yes; then
- if test "$pic_mode" != yes; then
- # Don't build PIC code
- command="$base_compile $qsrcfile"
- else
- command="$base_compile $qsrcfile $pic_flag"
- fi
- if test "$compiler_c_o" = yes; then
- command="$command -o $obj"
- fi
-
- # Suppress compiler output if we already did a PIC compilation.
- command="$command$suppress_output"
- $run $rm "$obj" "$output_obj"
- $show "$command"
- if $run eval $lt_env "$command"; then :
- else
- $run $rm $removelist
- exit $EXIT_FAILURE
- fi
-
- if test "$need_locks" = warn &&
- test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then
- $echo "\
-*** ERROR, $lockfile contains:
-`cat $lockfile 2>/dev/null`
-
-but it should contain:
-$srcfile
-
-This indicates that another process is trying to use the same
-temporary object file, and libtool could not work around it because
-your compiler does not support \`-c' and \`-o' together. If you
-repeat this compilation, it may succeed, by chance, but you had better
-avoid parallel builds (make -j) in this platform, or get a better
-compiler."
-
- $run $rm $removelist
- exit $EXIT_FAILURE
- fi
-
- # Just move the object if needed
- if test -n "$output_obj" && test "X$output_obj" != "X$obj"; then
- $show "$mv $output_obj $obj"
- if $run $mv $output_obj $obj; then :
- else
- error=$?
- $run $rm $removelist
- exit $error
- fi
- fi
-
- # Append the name of the non-PIC object the libtool object file.
- # Only append if the libtool object file exists.
- test -z "$run" && cat >> ${libobj}T <<EOF
-# Name of the non-PIC object.
-non_pic_object='$objname'
-
-EOF
- else
- # Append the name of the non-PIC object the libtool object file.
- # Only append if the libtool object file exists.
- test -z "$run" && cat >> ${libobj}T <<EOF
-# Name of the non-PIC object.
-non_pic_object=none
-
-EOF
- fi
-
- $run $mv "${libobj}T" "${libobj}"
-
- # Unlock the critical section if it was locked
- if test "$need_locks" != no; then
- $run $rm "$lockfile"
- fi
-
- exit $EXIT_SUCCESS
- ;;
-
- # libtool link mode
- link | relink)
- modename="$modename: link"
- case $host in
- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
- # It is impossible to link a dll without this setting, and
- # we shouldn't force the makefile maintainer to figure out
- # which system we are compiling for in order to pass an extra
- # flag for every libtool invocation.
- # allow_undefined=no
-
- # FIXME: Unfortunately, there are problems with the above when trying
- # to make a dll which has undefined symbols, in which case not
- # even a static library is built. For now, we need to specify
- # -no-undefined on the libtool link line when we can be certain
- # that all symbols are satisfied, otherwise we get a static library.
- allow_undefined=yes
- ;;
- *)
- allow_undefined=yes
- ;;
- esac
- libtool_args="$nonopt"
- base_compile="$nonopt $@"
- compile_command="$nonopt"
- finalize_command="$nonopt"
-
- compile_rpath=
- finalize_rpath=
- compile_shlibpath=
- finalize_shlibpath=
- convenience=
- old_convenience=
- deplibs=
- old_deplibs=
- compiler_flags=
- linker_flags=
- dllsearchpath=
- lib_search_path=`pwd`
- inst_prefix_dir=
-
- avoid_version=no
- dlfiles=
- dlprefiles=
- dlself=no
- export_dynamic=no
- export_symbols=
- export_symbols_regex=
- generated=
- libobjs=
- ltlibs=
- module=no
- no_install=no
- objs=
- non_pic_objects=
- notinst_path= # paths that contain not-installed libtool libraries
- precious_files_regex=
- prefer_static_libs=no
- preload=no
- prev=
- prevarg=
- release=
- rpath=
- xrpath=
- perm_rpath=
- temp_rpath=
- thread_safe=no
- vinfo=
- vinfo_number=no
- single_module="${wl}-single_module"
-
- func_infer_tag $base_compile
-
- # We need to know -static, to get the right output filenames.
- for arg
- do
- case $arg in
- -all-static | -static | -static-libtool-libs)
- case $arg in
- -all-static)
- if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then
- $echo "$modename: warning: complete static linking is impossible in this configuration" 1>&2
- fi
- if test -n "$link_static_flag"; then
- dlopen_self=$dlopen_self_static
- fi
- prefer_static_libs=yes
- ;;
- -static)
- if test -z "$pic_flag" && test -n "$link_static_flag"; then
- dlopen_self=$dlopen_self_static
- fi
- prefer_static_libs=built
- ;;
- -static-libtool-libs)
- if test -z "$pic_flag" && test -n "$link_static_flag"; then
- dlopen_self=$dlopen_self_static
- fi
- prefer_static_libs=yes
- ;;
- esac
- build_libtool_libs=no
- build_old_libs=yes
- break
- ;;
- esac
- done
-
- # See if our shared archives depend on static archives.
- test -n "$old_archive_from_new_cmds" && build_old_libs=yes
-
- # Go through the arguments, transforming them on the way.
- while test "$#" -gt 0; do
- arg="$1"
- shift
- case $arg in
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
- qarg=\"`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`\" ### testsuite: skip nested quoting test
- ;;
- *) qarg=$arg ;;
- esac
- libtool_args="$libtool_args $qarg"
-
- # If the previous option needs an argument, assign it.
- if test -n "$prev"; then
- case $prev in
- output)
- compile_command="$compile_command @OUTPUT@"
- finalize_command="$finalize_command @OUTPUT@"
- ;;
- esac
-
- case $prev in
- dlfiles|dlprefiles)
- if test "$preload" = no; then
- # Add the symbol object into the linking commands.
- compile_command="$compile_command @SYMFILE@"
- finalize_command="$finalize_command @SYMFILE@"
- preload=yes
- fi
- case $arg in
- *.la | *.lo) ;; # We handle these cases below.
- force)
- if test "$dlself" = no; then
- dlself=needless
- export_dynamic=yes
- fi
- prev=
- continue
- ;;
- self)
- if test "$prev" = dlprefiles; then
- dlself=yes
- elif test "$prev" = dlfiles && test "$dlopen_self" != yes; then
- dlself=yes
- else
- dlself=needless
- export_dynamic=yes
- fi
- prev=
- continue
- ;;
- *)
- if test "$prev" = dlfiles; then
- dlfiles="$dlfiles $arg"
- else
- dlprefiles="$dlprefiles $arg"
- fi
- prev=
- continue
- ;;
- esac
- ;;
- expsyms)
- export_symbols="$arg"
- if test ! -f "$arg"; then
- $echo "$modename: symbol file \`$arg' does not exist"
- exit $EXIT_FAILURE
- fi
- prev=
- continue
- ;;
- expsyms_regex)
- export_symbols_regex="$arg"
- prev=
- continue
- ;;
- inst_prefix)
- inst_prefix_dir="$arg"
- prev=
- continue
- ;;
- precious_regex)
- precious_files_regex="$arg"
- prev=
- continue
- ;;
- release)
- release="-$arg"
- prev=
- continue
- ;;
- objectlist)
- if test -f "$arg"; then
- save_arg=$arg
- moreargs=
- for fil in `cat $save_arg`
- do
-# moreargs="$moreargs $fil"
- arg=$fil
- # A libtool-controlled object.
-
- # Check to see that this really is a libtool object.
- if (${SED} -e '2q' $arg | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
- pic_object=
- non_pic_object=
-
- # Read the .lo file
- # If there is no directory component, then add one.
- case $arg in
- */* | *\\*) . $arg ;;
- *) . ./$arg ;;
- esac
-
- if test -z "$pic_object" || \
- test -z "$non_pic_object" ||
- test "$pic_object" = none && \
- test "$non_pic_object" = none; then
- $echo "$modename: cannot find name of object for \`$arg'" 1>&2
- exit $EXIT_FAILURE
- fi
-
- # Extract subdirectory from the argument.
- xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'`
- if test "X$xdir" = "X$arg"; then
- xdir=
- else
- xdir="$xdir/"
- fi
-
- if test "$pic_object" != none; then
- # Prepend the subdirectory the object is found in.
- pic_object="$xdir$pic_object"
-
- if test "$prev" = dlfiles; then
- if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then
- dlfiles="$dlfiles $pic_object"
- prev=
- continue
- else
- # If libtool objects are unsupported, then we need to preload.
- prev=dlprefiles
- fi
- fi
-
- # CHECK ME: I think I busted this. -Ossama
- if test "$prev" = dlprefiles; then
- # Preload the old-style object.
- dlprefiles="$dlprefiles $pic_object"
- prev=
- fi
-
- # A PIC object.
- libobjs="$libobjs $pic_object"
- arg="$pic_object"
- fi
-
- # Non-PIC object.
- if test "$non_pic_object" != none; then
- # Prepend the subdirectory the object is found in.
- non_pic_object="$xdir$non_pic_object"
-
- # A standard non-PIC object
- non_pic_objects="$non_pic_objects $non_pic_object"
- if test -z "$pic_object" || test "$pic_object" = none ; then
- arg="$non_pic_object"
- fi
- else
- # If the PIC object exists, use it instead.
- # $xdir was prepended to $pic_object above.
- non_pic_object="$pic_object"
- non_pic_objects="$non_pic_objects $non_pic_object"
- fi
- else
- # Only an error if not doing a dry-run.
- if test -z "$run"; then
- $echo "$modename: \`$arg' is not a valid libtool object" 1>&2
- exit $EXIT_FAILURE
- else
- # Dry-run case.
-
- # Extract subdirectory from the argument.
- xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'`
- if test "X$xdir" = "X$arg"; then
- xdir=
- else
- xdir="$xdir/"
- fi
-
- pic_object=`$echo "X${xdir}${objdir}/${arg}" | $Xsed -e "$lo2o"`
- non_pic_object=`$echo "X${xdir}${arg}" | $Xsed -e "$lo2o"`
- libobjs="$libobjs $pic_object"
- non_pic_objects="$non_pic_objects $non_pic_object"
- fi
- fi
- done
- else
- $echo "$modename: link input file \`$save_arg' does not exist"
- exit $EXIT_FAILURE
- fi
- arg=$save_arg
- prev=
- continue
- ;;
- rpath | xrpath)
- # We need an absolute path.
- case $arg in
- [\\/]* | [A-Za-z]:[\\/]*) ;;
- *)
- $echo "$modename: only absolute run-paths are allowed" 1>&2
- exit $EXIT_FAILURE
- ;;
- esac
- if test "$prev" = rpath; then
- case "$rpath " in
- *" $arg "*) ;;
- *) rpath="$rpath $arg" ;;
- esac
- else
- case "$xrpath " in
- *" $arg "*) ;;
- *) xrpath="$xrpath $arg" ;;
- esac
- fi
- prev=
- continue
- ;;
- xcompiler)
- compiler_flags="$compiler_flags $qarg"
- prev=
- compile_command="$compile_command $qarg"
- finalize_command="$finalize_command $qarg"
- continue
- ;;
- xlinker)
- linker_flags="$linker_flags $qarg"
- compiler_flags="$compiler_flags $wl$qarg"
- prev=
- compile_command="$compile_command $wl$qarg"
- finalize_command="$finalize_command $wl$qarg"
- continue
- ;;
- xcclinker)
- linker_flags="$linker_flags $qarg"
- compiler_flags="$compiler_flags $qarg"
- prev=
- compile_command="$compile_command $qarg"
- finalize_command="$finalize_command $qarg"
- continue
- ;;
- shrext)
- shrext_cmds="$arg"
- prev=
- continue
- ;;
- darwin_framework|darwin_framework_skip)
- test "$prev" = "darwin_framework" && compiler_flags="$compiler_flags $arg"
- compile_command="$compile_command $arg"
- finalize_command="$finalize_command $arg"
- prev=
- continue
- ;;
- *)
- eval "$prev=\"\$arg\""
- prev=
- continue
- ;;
- esac
- fi # test -n "$prev"
-
- prevarg="$arg"
-
- case $arg in
- -all-static)
- if test -n "$link_static_flag"; then
- compile_command="$compile_command $link_static_flag"
- finalize_command="$finalize_command $link_static_flag"
- fi
- continue
- ;;
-
- -allow-undefined)
- # FIXME: remove this flag sometime in the future.
- $echo "$modename: \`-allow-undefined' is deprecated because it is the default" 1>&2
- continue
- ;;
-
- -avoid-version)
- avoid_version=yes
- continue
- ;;
-
- -dlopen)
- prev=dlfiles
- continue
- ;;
-
- -dlpreopen)
- prev=dlprefiles
- continue
- ;;
-
- -export-dynamic)
- export_dynamic=yes
- continue
- ;;
-
- -export-symbols | -export-symbols-regex)
- if test -n "$export_symbols" || test -n "$export_symbols_regex"; then
- $echo "$modename: more than one -exported-symbols argument is not allowed"
- exit $EXIT_FAILURE
- fi
- if test "X$arg" = "X-export-symbols"; then
- prev=expsyms
- else
- prev=expsyms_regex
- fi
- continue
- ;;
-
- -framework|-arch|-isysroot)
- case " $CC " in
- *" ${arg} ${1} "* | *" ${arg} ${1} "*)
- prev=darwin_framework_skip ;;
- *) compiler_flags="$compiler_flags $arg"
- prev=darwin_framework ;;
- esac
- compile_command="$compile_command $arg"
- finalize_command="$finalize_command $arg"
- continue
- ;;
-
- -inst-prefix-dir)
- prev=inst_prefix
- continue
- ;;
-
- # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:*
- # so, if we see these flags be careful not to treat them like -L
- -L[A-Z][A-Z]*:*)
- case $with_gcc/$host in
- no/*-*-irix* | /*-*-irix*)
- compile_command="$compile_command $arg"
- finalize_command="$finalize_command $arg"
- ;;
- esac
- continue
- ;;
-
- -L*)
- dir=`$echo "X$arg" | $Xsed -e 's/^-L//'`
- # We need an absolute path.
- case $dir in
- [\\/]* | [A-Za-z]:[\\/]*) ;;
- *)
- absdir=`cd "$dir" && pwd`
- if test -z "$absdir"; then
- $echo "$modename: cannot determine absolute directory name of \`$dir'" 1>&2
- absdir="$dir"
- notinst_path="$notinst_path $dir"
- fi
- dir="$absdir"
- ;;
- esac
- case "$deplibs " in
- *" -L$dir "*) ;;
- *)
- deplibs="$deplibs -L$dir"
- lib_search_path="$lib_search_path $dir"
- ;;
- esac
- case $host in
- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
- testbindir=`$echo "X$dir" | $Xsed -e 's*/lib$*/bin*'`
- case :$dllsearchpath: in
- *":$dir:"*) ;;
- *) dllsearchpath="$dllsearchpath:$dir";;
- esac
- case :$dllsearchpath: in
- *":$testbindir:"*) ;;
- *) dllsearchpath="$dllsearchpath:$testbindir";;
- esac
- ;;
- esac
- continue
- ;;
-
- -l*)
- if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then
- case $host in
- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos*)
- # These systems don't actually have a C or math library (as such)
- continue
- ;;
- *-*-os2*)
- # These systems don't actually have a C library (as such)
- test "X$arg" = "X-lc" && continue
- ;;
- *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*)
- # Do not include libc due to us having libc/libc_r.
- test "X$arg" = "X-lc" && continue
- ;;
- *-*-rhapsody* | *-*-darwin1.[012])
- # Rhapsody C and math libraries are in the System framework
- deplibs="$deplibs -framework System"
- continue
- ;;
- *-*-sco3.2v5* | *-*-sco5v6*)
- # Causes problems with __ctype
- test "X$arg" = "X-lc" && continue
- ;;
- *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*)
- # Compiler inserts libc in the correct place for threads to work
- test "X$arg" = "X-lc" && continue
- ;;
- esac
- elif test "X$arg" = "X-lc_r"; then
- case $host in
- *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*)
- # Do not include libc_r directly, use -pthread flag.
- continue
- ;;
- esac
- fi
- deplibs="$deplibs $arg"
- continue
- ;;
-
- # Tru64 UNIX uses -model [arg] to determine the layout of C++
- # classes, name mangling, and exception handling.
- -model)
- compile_command="$compile_command $arg"
- compiler_flags="$compiler_flags $arg"
- finalize_command="$finalize_command $arg"
- prev=xcompiler
- continue
- ;;
-
- -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-threads)
- compiler_flags="$compiler_flags $arg"
- compile_command="$compile_command $arg"
- finalize_command="$finalize_command $arg"
- continue
- ;;
-
- -multi_module)
- single_module="${wl}-multi_module"
- continue
- ;;
-
- -module)
- module=yes
- continue
- ;;
-
- # -64, -mips[0-9] enable 64-bit mode on the SGI compiler
- # -r[0-9][0-9]* specifies the processor on the SGI compiler
- # -xarch=*, -xtarget=* enable 64-bit mode on the Sun compiler
- # +DA*, +DD* enable 64-bit mode on the HP compiler
- # -q* pass through compiler args for the IBM compiler
- # -m* pass through architecture-specific compiler args for GCC
- # -m*, -t[45]*, -txscale* pass through architecture-specific
- # compiler args for GCC
- # -p, -pg, --coverage, -fprofile-* pass through profiling flag for GCC
- # -F/path gives path to uninstalled frameworks, gcc on darwin
- # @file GCC response files
- -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \
- -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*)
-
- # Unknown arguments in both finalize_command and compile_command need
- # to be aesthetically quoted because they are evaled later.
- arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
- case $arg in
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
- arg="\"$arg\""
- ;;
- esac
- compile_command="$compile_command $arg"
- finalize_command="$finalize_command $arg"
- compiler_flags="$compiler_flags $arg"
- continue
- ;;
-
- -shrext)
- prev=shrext
- continue
- ;;
-
- -no-fast-install)
- fast_install=no
- continue
- ;;
-
- -no-install)
- case $host in
- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin*)
- # The PATH hackery in wrapper scripts is required on Windows
- # and Darwin in order for the loader to find any dlls it needs.
- $echo "$modename: warning: \`-no-install' is ignored for $host" 1>&2
- $echo "$modename: warning: assuming \`-no-fast-install' instead" 1>&2
- fast_install=no
- ;;
- *) no_install=yes ;;
- esac
- continue
- ;;
-
- -no-undefined)
- allow_undefined=no
- continue
- ;;
-
- -objectlist)
- prev=objectlist
- continue
- ;;
-
- -o) prev=output ;;
-
- -precious-files-regex)
- prev=precious_regex
- continue
- ;;
-
- -release)
- prev=release
- continue
- ;;
-
- -rpath)
- prev=rpath
- continue
- ;;
-
- -R)
- prev=xrpath
- continue
- ;;
-
- -R*)
- dir=`$echo "X$arg" | $Xsed -e 's/^-R//'`
- # We need an absolute path.
- case $dir in
- [\\/]* | [A-Za-z]:[\\/]*) ;;
- *)
- $echo "$modename: only absolute run-paths are allowed" 1>&2
- exit $EXIT_FAILURE
- ;;
- esac
- case "$xrpath " in
- *" $dir "*) ;;
- *) xrpath="$xrpath $dir" ;;
- esac
- continue
- ;;
-
- -static | -static-libtool-libs)
- # The effects of -static are defined in a previous loop.
- # We used to do the same as -all-static on platforms that
- # didn't have a PIC flag, but the assumption that the effects
- # would be equivalent was wrong. It would break on at least
- # Digital Unix and AIX.
- continue
- ;;
-
- -thread-safe)
- thread_safe=yes
- continue
- ;;
-
- -version-info)
- prev=vinfo
- continue
- ;;
- -version-number)
- prev=vinfo
- vinfo_number=yes
- continue
- ;;
-
- -Wc,*)
- args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wc,//'`
- arg=
- save_ifs="$IFS"; IFS=','
- for flag in $args; do
- IFS="$save_ifs"
- case $flag in
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
- flag="\"$flag\""
- ;;
- esac
- arg="$arg $wl$flag"
- compiler_flags="$compiler_flags $flag"
- done
- IFS="$save_ifs"
- arg=`$echo "X$arg" | $Xsed -e "s/^ //"`
- ;;
-
- -Wl,*)
- args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wl,//'`
- arg=
- save_ifs="$IFS"; IFS=','
- for flag in $args; do
- IFS="$save_ifs"
- case $flag in
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
- flag="\"$flag\""
- ;;
- esac
- arg="$arg $wl$flag"
- compiler_flags="$compiler_flags $wl$flag"
- linker_flags="$linker_flags $flag"
- done
- IFS="$save_ifs"
- arg=`$echo "X$arg" | $Xsed -e "s/^ //"`
- ;;
-
- -Xcompiler)
- prev=xcompiler
- continue
- ;;
-
- -Xlinker)
- prev=xlinker
- continue
- ;;
-
- -XCClinker)
- prev=xcclinker
- continue
- ;;
-
- # Some other compiler flag.
- -* | +*)
- # Unknown arguments in both finalize_command and compile_command need
- # to be aesthetically quoted because they are evaled later.
- arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
- case $arg in
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
- arg="\"$arg\""
- ;;
- esac
- ;;
-
- *.$objext)
- # A standard object.
- objs="$objs $arg"
- ;;
-
- *.lo)
- # A libtool-controlled object.
-
- # Check to see that this really is a libtool object.
- if (${SED} -e '2q' $arg | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
- pic_object=
- non_pic_object=
-
- # Read the .lo file
- # If there is no directory component, then add one.
- case $arg in
- */* | *\\*) . $arg ;;
- *) . ./$arg ;;
- esac
-
- if test -z "$pic_object" || \
- test -z "$non_pic_object" ||
- test "$pic_object" = none && \
- test "$non_pic_object" = none; then
- $echo "$modename: cannot find name of object for \`$arg'" 1>&2
- exit $EXIT_FAILURE
- fi
-
- # Extract subdirectory from the argument.
- xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'`
- if test "X$xdir" = "X$arg"; then
- xdir=
- else
- xdir="$xdir/"
- fi
-
- if test "$pic_object" != none; then
- # Prepend the subdirectory the object is found in.
- pic_object="$xdir$pic_object"
-
- if test "$prev" = dlfiles; then
- if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then
- dlfiles="$dlfiles $pic_object"
- prev=
- continue
- else
- # If libtool objects are unsupported, then we need to preload.
- prev=dlprefiles
- fi
- fi
-
- # CHECK ME: I think I busted this. -Ossama
- if test "$prev" = dlprefiles; then
- # Preload the old-style object.
- dlprefiles="$dlprefiles $pic_object"
- prev=
- fi
-
- # A PIC object.
- libobjs="$libobjs $pic_object"
- arg="$pic_object"
- fi
-
- # Non-PIC object.
- if test "$non_pic_object" != none; then
- # Prepend the subdirectory the object is found in.
- non_pic_object="$xdir$non_pic_object"
-
- # A standard non-PIC object
- non_pic_objects="$non_pic_objects $non_pic_object"
- if test -z "$pic_object" || test "$pic_object" = none ; then
- arg="$non_pic_object"
- fi
- else
- # If the PIC object exists, use it instead.
- # $xdir was prepended to $pic_object above.
- non_pic_object="$pic_object"
- non_pic_objects="$non_pic_objects $non_pic_object"
- fi
- else
- # Only an error if not doing a dry-run.
- if test -z "$run"; then
- $echo "$modename: \`$arg' is not a valid libtool object" 1>&2
- exit $EXIT_FAILURE
- else
- # Dry-run case.
-
- # Extract subdirectory from the argument.
- xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'`
- if test "X$xdir" = "X$arg"; then
- xdir=
- else
- xdir="$xdir/"
- fi
-
- pic_object=`$echo "X${xdir}${objdir}/${arg}" | $Xsed -e "$lo2o"`
- non_pic_object=`$echo "X${xdir}${arg}" | $Xsed -e "$lo2o"`
- libobjs="$libobjs $pic_object"
- non_pic_objects="$non_pic_objects $non_pic_object"
- fi
- fi
- ;;
-
- *.$libext)
- # An archive.
- deplibs="$deplibs $arg"
- old_deplibs="$old_deplibs $arg"
- continue
- ;;
-
- *.la)
- # A libtool-controlled library.
-
- if test "$prev" = dlfiles; then
- # This library was specified with -dlopen.
- dlfiles="$dlfiles $arg"
- prev=
- elif test "$prev" = dlprefiles; then
- # The library was specified with -dlpreopen.
- dlprefiles="$dlprefiles $arg"
- prev=
- else
- deplibs="$deplibs $arg"
- fi
- continue
- ;;
-
- # Some other compiler argument.
- *)
- # Unknown arguments in both finalize_command and compile_command need
- # to be aesthetically quoted because they are evaled later.
- arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
- case $arg in
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
- arg="\"$arg\""
- ;;
- esac
- ;;
- esac # arg
-
- # Now actually substitute the argument into the commands.
- if test -n "$arg"; then
- compile_command="$compile_command $arg"
- finalize_command="$finalize_command $arg"
- fi
- done # argument parsing loop
-
- if test -n "$prev"; then
- $echo "$modename: the \`$prevarg' option requires an argument" 1>&2
- $echo "$help" 1>&2
- exit $EXIT_FAILURE
- fi
-
- if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then
- eval arg=\"$export_dynamic_flag_spec\"
- compile_command="$compile_command $arg"
- finalize_command="$finalize_command $arg"
- fi
-
- oldlibs=
- # calculate the name of the file, without its directory
- outputname=`$echo "X$output" | $Xsed -e 's%^.*/%%'`
- libobjs_save="$libobjs"
-
- if test -n "$shlibpath_var"; then
- # get the directories listed in $shlibpath_var
- eval shlib_search_path=\`\$echo \"X\${$shlibpath_var}\" \| \$Xsed -e \'s/:/ /g\'\`
- else
- shlib_search_path=
- fi
- eval sys_lib_search_path=\"$sys_lib_search_path_spec\"
- eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\"
-
- output_objdir=`$echo "X$output" | $Xsed -e 's%/[^/]*$%%'`
- if test "X$output_objdir" = "X$output"; then
- output_objdir="$objdir"
- else
- output_objdir="$output_objdir/$objdir"
- fi
- # Create the object directory.
- if test ! -d "$output_objdir"; then
- $show "$mkdir $output_objdir"
- $run $mkdir $output_objdir
- exit_status=$?
- if test "$exit_status" -ne 0 && test ! -d "$output_objdir"; then
- exit $exit_status
- fi
- fi
-
- # Determine the type of output
- case $output in
- "")
- $echo "$modename: you must specify an output file" 1>&2
- $echo "$help" 1>&2
- exit $EXIT_FAILURE
- ;;
- *.$libext) linkmode=oldlib ;;
- *.lo | *.$objext) linkmode=obj ;;
- *.la) linkmode=lib ;;
- *) linkmode=prog ;; # Anything else should be a program.
- esac
-
- case $host in
- *cygwin* | *mingw* | *pw32*)
- # don't eliminate duplications in $postdeps and $predeps
- duplicate_compiler_generated_deps=yes
- ;;
- *)
- duplicate_compiler_generated_deps=$duplicate_deps
- ;;
- esac
- specialdeplibs=
-
- libs=
- # Find all interdependent deplibs by searching for libraries
- # that are linked more than once (e.g. -la -lb -la)
- for deplib in $deplibs; do
- if test "X$duplicate_deps" = "Xyes" ; then
- case "$libs " in
- *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
- esac
- fi
- libs="$libs $deplib"
- done
-
- if test "$linkmode" = lib; then
- libs="$predeps $libs $compiler_lib_search_path $postdeps"
-
- # Compute libraries that are listed more than once in $predeps
- # $postdeps and mark them as special (i.e., whose duplicates are
- # not to be eliminated).
- pre_post_deps=
- if test "X$duplicate_compiler_generated_deps" = "Xyes" ; then
- for pre_post_dep in $predeps $postdeps; do
- case "$pre_post_deps " in
- *" $pre_post_dep "*) specialdeplibs="$specialdeplibs $pre_post_deps" ;;
- esac
- pre_post_deps="$pre_post_deps $pre_post_dep"
- done
- fi
- pre_post_deps=
- fi
-
- deplibs=
- newdependency_libs=
- newlib_search_path=
- need_relink=no # whether we're linking any uninstalled libtool libraries
- notinst_deplibs= # not-installed libtool libraries
- case $linkmode in
- lib)
- passes="conv link"
- for file in $dlfiles $dlprefiles; do
- case $file in
- *.la) ;;
- *)
- $echo "$modename: libraries can \`-dlopen' only libtool libraries: $file" 1>&2
- exit $EXIT_FAILURE
- ;;
- esac
- done
- ;;
- prog)
- compile_deplibs=
- finalize_deplibs=
- alldeplibs=no
- newdlfiles=
- newdlprefiles=
- passes="conv scan dlopen dlpreopen link"
- ;;
- *) passes="conv"
- ;;
- esac
- for pass in $passes; do
- if test "$linkmode,$pass" = "lib,link" ||
- test "$linkmode,$pass" = "prog,scan"; then
- libs="$deplibs"
- deplibs=
- fi
- if test "$linkmode" = prog; then
- case $pass in
- dlopen) libs="$dlfiles" ;;
- dlpreopen) libs="$dlprefiles" ;;
- link) libs="$deplibs %DEPLIBS% $dependency_libs" ;;
- esac
- fi
- if test "$pass" = dlopen; then
- # Collect dlpreopened libraries
- save_deplibs="$deplibs"
- deplibs=
- fi
- for deplib in $libs; do
- lib=
- found=no
- case $deplib in
- -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-threads)
- if test "$linkmode,$pass" = "prog,link"; then
- compile_deplibs="$deplib $compile_deplibs"
- finalize_deplibs="$deplib $finalize_deplibs"
- else
- compiler_flags="$compiler_flags $deplib"
- fi
- continue
- ;;
- -l*)
- if test "$linkmode" != lib && test "$linkmode" != prog; then
- $echo "$modename: warning: \`-l' is ignored for archives/objects" 1>&2
- continue
- fi
- name=`$echo "X$deplib" | $Xsed -e 's/^-l//'`
- if test "$linkmode" = lib; then
- searchdirs="$newlib_search_path $lib_search_path $compiler_lib_search_dirs $sys_lib_search_path $shlib_search_path"
- else
- searchdirs="$newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path"
- fi
- for searchdir in $searchdirs; do
- for search_ext in .la $std_shrext .so .a; do
- # Search the libtool library
- lib="$searchdir/lib${name}${search_ext}"
- if test -f "$lib"; then
- if test "$search_ext" = ".la"; then
- found=yes
- else
- found=no
- fi
- break 2
- fi
- done
- done
- if test "$found" != yes; then
- # deplib doesn't seem to be a libtool library
- if test "$linkmode,$pass" = "prog,link"; then
- compile_deplibs="$deplib $compile_deplibs"
- finalize_deplibs="$deplib $finalize_deplibs"
- else
- deplibs="$deplib $deplibs"
- test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs"
- fi
- continue
- else # deplib is a libtool library
- # If $allow_libtool_libs_with_static_runtimes && $deplib is a stdlib,
- # We need to do some special things here, and not later.
- if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
- case " $predeps $postdeps " in
- *" $deplib "*)
- if (${SED} -e '2q' $lib |
- grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
- library_names=
- old_library=
- case $lib in
- */* | *\\*) . $lib ;;
- *) . ./$lib ;;
- esac
- for l in $old_library $library_names; do
- ll="$l"
- done
- if test "X$ll" = "X$old_library" ; then # only static version available
- found=no
- ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'`
- test "X$ladir" = "X$lib" && ladir="."
- lib=$ladir/$old_library
- if test "$linkmode,$pass" = "prog,link"; then
- compile_deplibs="$deplib $compile_deplibs"
- finalize_deplibs="$deplib $finalize_deplibs"
- else
- deplibs="$deplib $deplibs"
- test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs"
- fi
- continue
- fi
- fi
- ;;
- *) ;;
- esac
- fi
- fi
- ;; # -l
- -L*)
- case $linkmode in
- lib)
- deplibs="$deplib $deplibs"
- test "$pass" = conv && continue
- newdependency_libs="$deplib $newdependency_libs"
- newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`
- ;;
- prog)
- if test "$pass" = conv; then
- deplibs="$deplib $deplibs"
- continue
- fi
- if test "$pass" = scan; then
- deplibs="$deplib $deplibs"
- else
- compile_deplibs="$deplib $compile_deplibs"
- finalize_deplibs="$deplib $finalize_deplibs"
- fi
- newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`
- ;;
- *)
- $echo "$modename: warning: \`-L' is ignored for archives/objects" 1>&2
- ;;
- esac # linkmode
- continue
- ;; # -L
- -R*)
- if test "$pass" = link; then
- dir=`$echo "X$deplib" | $Xsed -e 's/^-R//'`
- # Make sure the xrpath contains only unique directories.
- case "$xrpath " in
- *" $dir "*) ;;
- *) xrpath="$xrpath $dir" ;;
- esac
- fi
- deplibs="$deplib $deplibs"
- continue
- ;;
- *.la) lib="$deplib" ;;
- *.$libext)
- if test "$pass" = conv; then
- deplibs="$deplib $deplibs"
- continue
- fi
- case $linkmode in
- lib)
- valid_a_lib=no
- case $deplibs_check_method in
- match_pattern*)
- set dummy $deplibs_check_method
- match_pattern_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"`
- if eval $echo \"$deplib\" 2>/dev/null \
- | $SED 10q \
- | $EGREP "$match_pattern_regex" > /dev/null; then
- valid_a_lib=yes
- fi
- ;;
- pass_all)
- valid_a_lib=yes
- ;;
- esac
- if test "$valid_a_lib" != yes; then
- $echo
- $echo "*** Warning: Trying to link with static lib archive $deplib."
- $echo "*** I have the capability to make that library automatically link in when"
- $echo "*** you link to this library. But I can only do this if you have a"
- $echo "*** shared version of the library, which you do not appear to have"
- $echo "*** because the file extensions .$libext of this argument makes me believe"
- $echo "*** that it is just a static archive that I should not used here."
- else
- $echo
- $echo "*** Warning: Linking the shared library $output against the"
- $echo "*** static library $deplib is not portable!"
- deplibs="$deplib $deplibs"
- fi
- continue
- ;;
- prog)
- if test "$pass" != link; then
- deplibs="$deplib $deplibs"
- else
- compile_deplibs="$deplib $compile_deplibs"
- finalize_deplibs="$deplib $finalize_deplibs"
- fi
- continue
- ;;
- esac # linkmode
- ;; # *.$libext
- *.lo | *.$objext)
- if test "$pass" = conv; then
- deplibs="$deplib $deplibs"
- elif test "$linkmode" = prog; then
- if test "$pass" = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then
- # If there is no dlopen support or we're linking statically,
- # we need to preload.
- newdlprefiles="$newdlprefiles $deplib"
- compile_deplibs="$deplib $compile_deplibs"
- finalize_deplibs="$deplib $finalize_deplibs"
- else
- newdlfiles="$newdlfiles $deplib"
- fi
- fi
- continue
- ;;
- %DEPLIBS%)
- alldeplibs=yes
- continue
- ;;
- esac # case $deplib
- if test "$found" = yes || test -f "$lib"; then :
- else
- $echo "$modename: cannot find the library \`$lib' or unhandled argument \`$deplib'" 1>&2
- exit $EXIT_FAILURE
- fi
-
- # Check to see that this really is a libtool archive.
- if (${SED} -e '2q' $lib | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
- else
- $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
- exit $EXIT_FAILURE
- fi
-
- ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'`
- test "X$ladir" = "X$lib" && ladir="."
-
- dlname=
- dlopen=
- dlpreopen=
- libdir=
- library_names=
- old_library=
- # If the library was installed with an old release of libtool,
- # it will not redefine variables installed, or shouldnotlink
- installed=yes
- shouldnotlink=no
- avoidtemprpath=
-
-
- # Read the .la file
- case $lib in
- */* | *\\*) . $lib ;;
- *) . ./$lib ;;
- esac
-
- if test "$linkmode,$pass" = "lib,link" ||
- test "$linkmode,$pass" = "prog,scan" ||
- { test "$linkmode" != prog && test "$linkmode" != lib; }; then
- test -n "$dlopen" && dlfiles="$dlfiles $dlopen"
- test -n "$dlpreopen" && dlprefiles="$dlprefiles $dlpreopen"
- fi
-
- if test "$pass" = conv; then
- # Only check for convenience libraries
- deplibs="$lib $deplibs"
- if test -z "$libdir"; then
- if test -z "$old_library"; then
- $echo "$modename: cannot find name of link library for \`$lib'" 1>&2
- exit $EXIT_FAILURE
- fi
- # It is a libtool convenience library, so add in its objects.
- convenience="$convenience $ladir/$objdir/$old_library"
- old_convenience="$old_convenience $ladir/$objdir/$old_library"
- tmp_libs=
- for deplib in $dependency_libs; do
- deplibs="$deplib $deplibs"
- if test "X$duplicate_deps" = "Xyes" ; then
- case "$tmp_libs " in
- *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
- esac
- fi
- tmp_libs="$tmp_libs $deplib"
- done
- elif test "$linkmode" != prog && test "$linkmode" != lib; then
- $echo "$modename: \`$lib' is not a convenience library" 1>&2
- exit $EXIT_FAILURE
- fi
- continue
- fi # $pass = conv
-
-
- # Get the name of the library we link against.
- linklib=
- for l in $old_library $library_names; do
- linklib="$l"
- done
- if test -z "$linklib"; then
- $echo "$modename: cannot find name of link library for \`$lib'" 1>&2
- exit $EXIT_FAILURE
- fi
-
- # This library was specified with -dlopen.
- if test "$pass" = dlopen; then
- if test -z "$libdir"; then
- $echo "$modename: cannot -dlopen a convenience library: \`$lib'" 1>&2
- exit $EXIT_FAILURE
- fi
- if test -z "$dlname" ||
- test "$dlopen_support" != yes ||
- test "$build_libtool_libs" = no; then
- # If there is no dlname, no dlopen support or we're linking
- # statically, we need to preload. We also need to preload any
- # dependent libraries so libltdl's deplib preloader doesn't
- # bomb out in the load deplibs phase.
- dlprefiles="$dlprefiles $lib $dependency_libs"
- else
- newdlfiles="$newdlfiles $lib"
- fi
- continue
- fi # $pass = dlopen
-
- # We need an absolute path.
- case $ladir in
- [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;;
- *)
- abs_ladir=`cd "$ladir" && pwd`
- if test -z "$abs_ladir"; then
- $echo "$modename: warning: cannot determine absolute directory name of \`$ladir'" 1>&2
- $echo "$modename: passing it literally to the linker, although it might fail" 1>&2
- abs_ladir="$ladir"
- fi
- ;;
- esac
- laname=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
-
- # Find the relevant object directory and library name.
- if test "X$installed" = Xyes; then
- if test ! -f "$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then
- $echo "$modename: warning: library \`$lib' was moved." 1>&2
- dir="$ladir"
- absdir="$abs_ladir"
- libdir="$abs_ladir"
- else
- dir="$libdir"
- absdir="$libdir"
- fi
- test "X$hardcode_automatic" = Xyes && avoidtemprpath=yes
- else
- if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$linklib"; then
- dir="$ladir"
- absdir="$abs_ladir"
- # Remove this search path later
- notinst_path="$notinst_path $abs_ladir"
- else
- dir="$ladir/$objdir"
- absdir="$abs_ladir/$objdir"
- # Remove this search path later
- notinst_path="$notinst_path $abs_ladir"
- fi
- fi # $installed = yes
- name=`$echo "X$laname" | $Xsed -e 's/\.la$//' -e 's/^lib//'`
-
- # This library was specified with -dlpreopen.
- if test "$pass" = dlpreopen; then
- if test -z "$libdir"; then
- $echo "$modename: cannot -dlpreopen a convenience library: \`$lib'" 1>&2
- exit $EXIT_FAILURE
- fi
- # Prefer using a static library (so that no silly _DYNAMIC symbols
- # are required to link).
- if test -n "$old_library"; then
- newdlprefiles="$newdlprefiles $dir/$old_library"
- # Otherwise, use the dlname, so that lt_dlopen finds it.
- elif test -n "$dlname"; then
- newdlprefiles="$newdlprefiles $dir/$dlname"
- else
- newdlprefiles="$newdlprefiles $dir/$linklib"
- fi
- fi # $pass = dlpreopen
-
- if test -z "$libdir"; then
- # Link the convenience library
- if test "$linkmode" = lib; then
- deplibs="$dir/$old_library $deplibs"
- elif test "$linkmode,$pass" = "prog,link"; then
- compile_deplibs="$dir/$old_library $compile_deplibs"
- finalize_deplibs="$dir/$old_library $finalize_deplibs"
- else
- deplibs="$lib $deplibs" # used for prog,scan pass
- fi
- continue
- fi
-
-
- if test "$linkmode" = prog && test "$pass" != link; then
- newlib_search_path="$newlib_search_path $ladir"
- deplibs="$lib $deplibs"
-
- linkalldeplibs=no
- if test "$link_all_deplibs" != no || test -z "$library_names" ||
- test "$build_libtool_libs" = no; then
- linkalldeplibs=yes
- fi
-
- tmp_libs=
- for deplib in $dependency_libs; do
- case $deplib in
- -L*) newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`;; ### testsuite: skip nested quoting test
- esac
- # Need to link against all dependency_libs?
- if test "$linkalldeplibs" = yes; then
- deplibs="$deplib $deplibs"
- else
- # Need to hardcode shared library paths
- # or/and link against static libraries
- newdependency_libs="$deplib $newdependency_libs"
- fi
- if test "X$duplicate_deps" = "Xyes" ; then
- case "$tmp_libs " in
- *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
- esac
- fi
- tmp_libs="$tmp_libs $deplib"
- done # for deplib
- continue
- fi # $linkmode = prog...
-
- if test "$linkmode,$pass" = "prog,link"; then
- if test -n "$library_names" &&
- { { test "$prefer_static_libs" = no ||
- test "$prefer_static_libs,$installed" = "built,yes"; } ||
- test -z "$old_library"; }; then
- # We need to hardcode the library path
- if test -n "$shlibpath_var" && test -z "$avoidtemprpath" ; then
- # Make sure the rpath contains only unique directories.
- case "$temp_rpath " in
- *" $dir "*) ;;
- *" $absdir "*) ;;
- *) temp_rpath="$temp_rpath $absdir" ;;
- esac
- fi
-
- # Hardcode the library path.
- # Skip directories that are in the system default run-time
- # search path.
- case " $sys_lib_dlsearch_path " in
- *" $absdir "*) ;;
- *)
- case "$compile_rpath " in
- *" $absdir "*) ;;
- *) compile_rpath="$compile_rpath $absdir"
- esac
- ;;
- esac
- case " $sys_lib_dlsearch_path " in
- *" $libdir "*) ;;
- *)
- case "$finalize_rpath " in
- *" $libdir "*) ;;
- *) finalize_rpath="$finalize_rpath $libdir"
- esac
- ;;
- esac
- fi # $linkmode,$pass = prog,link...
-
- if test "$alldeplibs" = yes &&
- { test "$deplibs_check_method" = pass_all ||
- { test "$build_libtool_libs" = yes &&
- test -n "$library_names"; }; }; then
- # We only need to search for static libraries
- continue
- fi
- fi
-
- link_static=no # Whether the deplib will be linked statically
- use_static_libs=$prefer_static_libs
- if test "$use_static_libs" = built && test "$installed" = yes ; then
- use_static_libs=no
- fi
- if test -n "$library_names" &&
- { test "$use_static_libs" = no || test -z "$old_library"; }; then
- if test "$installed" = no; then
- notinst_deplibs="$notinst_deplibs $lib"
- need_relink=yes
- fi
- # This is a shared library
-
- # Warn about portability, can't link against -module's on
- # some systems (darwin)
- if test "$shouldnotlink" = yes && test "$pass" = link ; then
- $echo
- if test "$linkmode" = prog; then
- $echo "*** Warning: Linking the executable $output against the loadable module"
- else
- $echo "*** Warning: Linking the shared library $output against the loadable module"
- fi
- $echo "*** $linklib is not portable!"
- fi
- if test "$linkmode" = lib &&
- test "$hardcode_into_libs" = yes; then
- # Hardcode the library path.
- # Skip directories that are in the system default run-time
- # search path.
- case " $sys_lib_dlsearch_path " in
- *" $absdir "*) ;;
- *)
- case "$compile_rpath " in
- *" $absdir "*) ;;
- *) compile_rpath="$compile_rpath $absdir"
- esac
- ;;
- esac
- case " $sys_lib_dlsearch_path " in
- *" $libdir "*) ;;
- *)
- case "$finalize_rpath " in
- *" $libdir "*) ;;
- *) finalize_rpath="$finalize_rpath $libdir"
- esac
- ;;
- esac
- fi
-
- if test -n "$old_archive_from_expsyms_cmds"; then
- # figure out the soname
- set dummy $library_names
- realname="$2"
- shift; shift
- libname=`eval \\$echo \"$libname_spec\"`
- # use dlname if we got it. it's perfectly good, no?
- if test -n "$dlname"; then
- soname="$dlname"
- elif test -n "$soname_spec"; then
- # bleh windows
- case $host in
- *cygwin* | mingw*)
- major=`expr $current - $age`
- versuffix="-$major"
- ;;
- esac
- eval soname=\"$soname_spec\"
- else
- soname="$realname"
- fi
-
- # Make a new name for the extract_expsyms_cmds to use
- soroot="$soname"
- soname=`$echo $soroot | ${SED} -e 's/^.*\///'`
- newlib="libimp-`$echo $soname | ${SED} 's/^lib//;s/\.dll$//'`.a"
-
- # If the library has no export list, then create one now
- if test -f "$output_objdir/$soname-def"; then :
- else
- $show "extracting exported symbol list from \`$soname'"
- save_ifs="$IFS"; IFS='~'
- cmds=$extract_expsyms_cmds
- for cmd in $cmds; do
- IFS="$save_ifs"
- eval cmd=\"$cmd\"
- $show "$cmd"
- $run eval "$cmd" || exit $?
- done
- IFS="$save_ifs"
- fi
-
- # Create $newlib
- if test -f "$output_objdir/$newlib"; then :; else
- $show "generating import library for \`$soname'"
- save_ifs="$IFS"; IFS='~'
- cmds=$old_archive_from_expsyms_cmds
- for cmd in $cmds; do
- IFS="$save_ifs"
- eval cmd=\"$cmd\"
- $show "$cmd"
- $run eval "$cmd" || exit $?
- done
- IFS="$save_ifs"
- fi
- # make sure the library variables are pointing to the new library
- dir=$output_objdir
- linklib=$newlib
- fi # test -n "$old_archive_from_expsyms_cmds"
-
- if test "$linkmode" = prog || test "$mode" != relink; then
- add_shlibpath=
- add_dir=
- add=
- lib_linked=yes
- case $hardcode_action in
- immediate | unsupported)
- if test "$hardcode_direct" = no; then
- add="$dir/$linklib"
- case $host in
- *-*-sco3.2v5.0.[024]*) add_dir="-L$dir" ;;
- *-*-sysv4*uw2*) add_dir="-L$dir" ;;
- *-*-sysv5OpenUNIX* | *-*-sysv5UnixWare7.[01].[10]* | \
- *-*-unixware7*) add_dir="-L$dir" ;;
- *-*-darwin* )
- # if the lib is a module then we can not link against
- # it, someone is ignoring the new warnings I added
- if /usr/bin/file -L $add 2> /dev/null |
- $EGREP ": [^:]* bundle" >/dev/null ; then
- $echo "** Warning, lib $linklib is a module, not a shared library"
- if test -z "$old_library" ; then
- $echo
- $echo "** And there doesn't seem to be a static archive available"
- $echo "** The link will probably fail, sorry"
- else
- add="$dir/$old_library"
- fi
- fi
- esac
- elif test "$hardcode_minus_L" = no; then
- case $host in
- *-*-sunos*) add_shlibpath="$dir" ;;
- esac
- add_dir="-L$dir"
- add="-l$name"
- elif test "$hardcode_shlibpath_var" = no; then
- add_shlibpath="$dir"
- add="-l$name"
- else
- lib_linked=no
- fi
- ;;
- relink)
- if test "$hardcode_direct" = yes; then
- add="$dir/$linklib"
- elif test "$hardcode_minus_L" = yes; then
- add_dir="-L$dir"
- # Try looking first in the location we're being installed to.
- if test -n "$inst_prefix_dir"; then
- case $libdir in
- [\\/]*)
- add_dir="$add_dir -L$inst_prefix_dir$libdir"
- ;;
- esac
- fi
- add="-l$name"
- elif test "$hardcode_shlibpath_var" = yes; then
- add_shlibpath="$dir"
- add="-l$name"
- else
- lib_linked=no
- fi
- ;;
- *) lib_linked=no ;;
- esac
-
- if test "$lib_linked" != yes; then
- $echo "$modename: configuration error: unsupported hardcode properties"
- exit $EXIT_FAILURE
- fi
-
- if test -n "$add_shlibpath"; then
- case :$compile_shlibpath: in
- *":$add_shlibpath:"*) ;;
- *) compile_shlibpath="$compile_shlibpath$add_shlibpath:" ;;
- esac
- fi
- if test "$linkmode" = prog; then
- test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs"
- test -n "$add" && compile_deplibs="$add $compile_deplibs"
- else
- test -n "$add_dir" && deplibs="$add_dir $deplibs"
- test -n "$add" && deplibs="$add $deplibs"
- if test "$hardcode_direct" != yes && \
- test "$hardcode_minus_L" != yes && \
- test "$hardcode_shlibpath_var" = yes; then
- case :$finalize_shlibpath: in
- *":$libdir:"*) ;;
- *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;;
- esac
- fi
- fi
- fi
-
- if test "$linkmode" = prog || test "$mode" = relink; then
- add_shlibpath=
- add_dir=
- add=
- # Finalize command for both is simple: just hardcode it.
- if test "$hardcode_direct" = yes; then
- add="$libdir/$linklib"
- elif test "$hardcode_minus_L" = yes; then
- add_dir="-L$libdir"
- add="-l$name"
- elif test "$hardcode_shlibpath_var" = yes; then
- case :$finalize_shlibpath: in
- *":$libdir:"*) ;;
- *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;;
- esac
- add="-l$name"
- elif test "$hardcode_automatic" = yes; then
- if test -n "$inst_prefix_dir" &&
- test -f "$inst_prefix_dir$libdir/$linklib" ; then
- add="$inst_prefix_dir$libdir/$linklib"
- else
- add="$libdir/$linklib"
- fi
- else
- # We cannot seem to hardcode it, guess we'll fake it.
- add_dir="-L$libdir"
- # Try looking first in the location we're being installed to.
- if test -n "$inst_prefix_dir"; then
- case $libdir in
- [\\/]*)
- add_dir="$add_dir -L$inst_prefix_dir$libdir"
- ;;
- esac
- fi
- add="-l$name"
- fi
-
- if test "$linkmode" = prog; then
- test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs"
- test -n "$add" && finalize_deplibs="$add $finalize_deplibs"
- else
- test -n "$add_dir" && deplibs="$add_dir $deplibs"
- test -n "$add" && deplibs="$add $deplibs"
- fi
- fi
- elif test "$linkmode" = prog; then
- # Here we assume that one of hardcode_direct or hardcode_minus_L
- # is not unsupported. This is valid on all known static and
- # shared platforms.
- if test "$hardcode_direct" != unsupported; then
- test -n "$old_library" && linklib="$old_library"
- compile_deplibs="$dir/$linklib $compile_deplibs"
- finalize_deplibs="$dir/$linklib $finalize_deplibs"
- else
- compile_deplibs="-l$name -L$dir $compile_deplibs"
- finalize_deplibs="-l$name -L$dir $finalize_deplibs"
- fi
- elif test "$build_libtool_libs" = yes; then
- # Not a shared library
- if test "$deplibs_check_method" != pass_all; then
- # We're trying link a shared library against a static one
- # but the system doesn't support it.
-
- # Just print a warning and add the library to dependency_libs so
- # that the program can be linked against the static library.
- $echo
- $echo "*** Warning: This system can not link to static lib archive $lib."
- $echo "*** I have the capability to make that library automatically link in when"
- $echo "*** you link to this library. But I can only do this if you have a"
- $echo "*** shared version of the library, which you do not appear to have."
- if test "$module" = yes; then
- $echo "*** But as you try to build a module library, libtool will still create "
- $echo "*** a static module, that should work as long as the dlopening application"
- $echo "*** is linked with the -dlopen flag to resolve symbols at runtime."
- if test -z "$global_symbol_pipe"; then
- $echo
- $echo "*** However, this would only work if libtool was able to extract symbol"
- $echo "*** lists from a program, using \`nm' or equivalent, but libtool could"
- $echo "*** not find such a program. So, this module is probably useless."
- $echo "*** \`nm' from GNU binutils and a full rebuild may help."
- fi
- if test "$build_old_libs" = no; then
- build_libtool_libs=module
- build_old_libs=yes
- else
- build_libtool_libs=no
- fi
- fi
- else
- deplibs="$dir/$old_library $deplibs"
- link_static=yes
- fi
- fi # link shared/static library?
-
- if test "$linkmode" = lib; then
- if test -n "$dependency_libs" &&
- { test "$hardcode_into_libs" != yes ||
- test "$build_old_libs" = yes ||
- test "$link_static" = yes; }; then
- # Extract -R from dependency_libs
- temp_deplibs=
- for libdir in $dependency_libs; do
- case $libdir in
- -R*) temp_xrpath=`$echo "X$libdir" | $Xsed -e 's/^-R//'`
- case " $xrpath " in
- *" $temp_xrpath "*) ;;
- *) xrpath="$xrpath $temp_xrpath";;
- esac;;
- *) temp_deplibs="$temp_deplibs $libdir";;
- esac
- done
- dependency_libs="$temp_deplibs"
- fi
-
- newlib_search_path="$newlib_search_path $absdir"
- # Link against this library
- test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs"
- # ... and its dependency_libs
- tmp_libs=
- for deplib in $dependency_libs; do
- newdependency_libs="$deplib $newdependency_libs"
- if test "X$duplicate_deps" = "Xyes" ; then
- case "$tmp_libs " in
- *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
- esac
- fi
- tmp_libs="$tmp_libs $deplib"
- done
-
- if test "$link_all_deplibs" != no; then
- # Add the search paths of all dependency libraries
- for deplib in $dependency_libs; do
- case $deplib in
- -L*) path="$deplib" ;;
- *.la)
- dir=`$echo "X$deplib" | $Xsed -e 's%/[^/]*$%%'`
- test "X$dir" = "X$deplib" && dir="."
- # We need an absolute path.
- case $dir in
- [\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;;
- *)
- absdir=`cd "$dir" && pwd`
- if test -z "$absdir"; then
- $echo "$modename: warning: cannot determine absolute directory name of \`$dir'" 1>&2
- absdir="$dir"
- fi
- ;;
- esac
- if grep "^installed=no" $deplib > /dev/null; then
- path="$absdir/$objdir"
- else
- eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
- if test -z "$libdir"; then
- $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
- exit $EXIT_FAILURE
- fi
- if test "$absdir" != "$libdir"; then
- $echo "$modename: warning: \`$deplib' seems to be moved" 1>&2
- fi
- path="$absdir"
- fi
- depdepl=
- case $host in
- *-*-darwin*)
- # we do not want to link against static libs,
- # but need to link against shared
- eval deplibrary_names=`${SED} -n -e 's/^library_names=\(.*\)$/\1/p' $deplib`
- eval deplibdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
- if test -n "$deplibrary_names" ; then
- for tmp in $deplibrary_names ; do
- depdepl=$tmp
- done
- if test -f "$deplibdir/$depdepl" ; then
- depdepl="$deplibdir/$depdepl"
- elif test -f "$path/$depdepl" ; then
- depdepl="$path/$depdepl"
- else
- # Can't find it, oh well...
- depdepl=
- fi
- # do not add paths which are already there
- case " $newlib_search_path " in
- *" $path "*) ;;
- *) newlib_search_path="$newlib_search_path $path";;
- esac
- fi
- path=""
- ;;
- *)
- path="-L$path"
- ;;
- esac
- ;;
- -l*)
- case $host in
- *-*-darwin*)
- # Again, we only want to link against shared libraries
- eval tmp_libs=`$echo "X$deplib" | $Xsed -e "s,^\-l,,"`
- for tmp in $newlib_search_path ; do
- if test -f "$tmp/lib$tmp_libs.dylib" ; then
- eval depdepl="$tmp/lib$tmp_libs.dylib"
- break
- fi
- done
- path=""
- ;;
- *) continue ;;
- esac
- ;;
- *) continue ;;
- esac
- case " $deplibs " in
- *" $path "*) ;;
- *) deplibs="$path $deplibs" ;;
- esac
- case " $deplibs " in
- *" $depdepl "*) ;;
- *) deplibs="$depdepl $deplibs" ;;
- esac
- done
- fi # link_all_deplibs != no
- fi # linkmode = lib
- done # for deplib in $libs
- dependency_libs="$newdependency_libs"
- if test "$pass" = dlpreopen; then
- # Link the dlpreopened libraries before other libraries
- for deplib in $save_deplibs; do
- deplibs="$deplib $deplibs"
- done
- fi
- if test "$pass" != dlopen; then
- if test "$pass" != conv; then
- # Make sure lib_search_path contains only unique directories.
- lib_search_path=
- for dir in $newlib_search_path; do
- case "$lib_search_path " in
- *" $dir "*) ;;
- *) lib_search_path="$lib_search_path $dir" ;;
- esac
- done
- newlib_search_path=
- fi
-
- if test "$linkmode,$pass" != "prog,link"; then
- vars="deplibs"
- else
- vars="compile_deplibs finalize_deplibs"
- fi
- for var in $vars dependency_libs; do
- # Add libraries to $var in reverse order
- eval tmp_libs=\"\$$var\"
- new_libs=
- for deplib in $tmp_libs; do
- # FIXME: Pedantically, this is the right thing to do, so
- # that some nasty dependency loop isn't accidentally
- # broken:
- #new_libs="$deplib $new_libs"
- # Pragmatically, this seems to cause very few problems in
- # practice:
- case $deplib in
- -L*) new_libs="$deplib $new_libs" ;;
- -R*) ;;
- *)
- # And here is the reason: when a library appears more
- # than once as an explicit dependence of a library, or
- # is implicitly linked in more than once by the
- # compiler, it is considered special, and multiple
- # occurrences thereof are not removed. Compare this
- # with having the same library being listed as a
- # dependency of multiple other libraries: in this case,
- # we know (pedantically, we assume) the library does not
- # need to be listed more than once, so we keep only the
- # last copy. This is not always right, but it is rare
- # enough that we require users that really mean to play
- # such unportable linking tricks to link the library
- # using -Wl,-lname, so that libtool does not consider it
- # for duplicate removal.
- case " $specialdeplibs " in
- *" $deplib "*) new_libs="$deplib $new_libs" ;;
- *)
- case " $new_libs " in
- *" $deplib "*) ;;
- *) new_libs="$deplib $new_libs" ;;
- esac
- ;;
- esac
- ;;
- esac
- done
- tmp_libs=
- for deplib in $new_libs; do
- case $deplib in
- -L*)
- case " $tmp_libs " in
- *" $deplib "*) ;;
- *) tmp_libs="$tmp_libs $deplib" ;;
- esac
- ;;
- *) tmp_libs="$tmp_libs $deplib" ;;
- esac
- done
- eval $var=\"$tmp_libs\"
- done # for var
- fi
- # Last step: remove runtime libs from dependency_libs
- # (they stay in deplibs)
- tmp_libs=
- for i in $dependency_libs ; do
- case " $predeps $postdeps $compiler_lib_search_path " in
- *" $i "*)
- i=""
- ;;
- esac
- if test -n "$i" ; then
- tmp_libs="$tmp_libs $i"
- fi
- done
- dependency_libs=$tmp_libs
- done # for pass
- if test "$linkmode" = prog; then
- dlfiles="$newdlfiles"
- dlprefiles="$newdlprefiles"
- fi
-
- case $linkmode in
- oldlib)
- case " $deplibs" in
- *\ -l* | *\ -L*)
- $echo "$modename: warning: \`-l' and \`-L' are ignored for archives" 1>&2 ;;
- esac
-
- if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
- $echo "$modename: warning: \`-dlopen' is ignored for archives" 1>&2
- fi
-
- if test -n "$rpath"; then
- $echo "$modename: warning: \`-rpath' is ignored for archives" 1>&2
- fi
-
- if test -n "$xrpath"; then
- $echo "$modename: warning: \`-R' is ignored for archives" 1>&2
- fi
-
- if test -n "$vinfo"; then
- $echo "$modename: warning: \`-version-info/-version-number' is ignored for archives" 1>&2
- fi
-
- if test -n "$release"; then
- $echo "$modename: warning: \`-release' is ignored for archives" 1>&2
- fi
-
- if test -n "$export_symbols" || test -n "$export_symbols_regex"; then
- $echo "$modename: warning: \`-export-symbols' is ignored for archives" 1>&2
- fi
-
- # Now set the variables for building old libraries.
- build_libtool_libs=no
- oldlibs="$output"
- objs="$objs$old_deplibs"
- ;;
-
- lib)
- # Make sure we only generate libraries of the form `libNAME.la'.
- case $outputname in
- lib*)
- name=`$echo "X$outputname" | $Xsed -e 's/\.la$//' -e 's/^lib//'`
- eval shared_ext=\"$shrext_cmds\"
- eval libname=\"$libname_spec\"
- ;;
- *)
- if test "$module" = no; then
- $echo "$modename: libtool library \`$output' must begin with \`lib'" 1>&2
- $echo "$help" 1>&2
- exit $EXIT_FAILURE
- fi
- if test "$need_lib_prefix" != no; then
- # Add the "lib" prefix for modules if required
- name=`$echo "X$outputname" | $Xsed -e 's/\.la$//'`
- eval shared_ext=\"$shrext_cmds\"
- eval libname=\"$libname_spec\"
- else
- libname=`$echo "X$outputname" | $Xsed -e 's/\.la$//'`
- fi
- ;;
- esac
-
- if test -n "$objs"; then
- if test "$deplibs_check_method" != pass_all; then
- $echo "$modename: cannot build libtool library \`$output' from non-libtool objects on this host:$objs" 2>&1
- exit $EXIT_FAILURE
- else
- $echo
- $echo "*** Warning: Linking the shared library $output against the non-libtool"
- $echo "*** objects $objs is not portable!"
- libobjs="$libobjs $objs"
- fi
- fi
-
- if test "$dlself" != no; then
- $echo "$modename: warning: \`-dlopen self' is ignored for libtool libraries" 1>&2
- fi
-
- set dummy $rpath
- if test "$#" -gt 2; then
- $echo "$modename: warning: ignoring multiple \`-rpath's for a libtool library" 1>&2
- fi
- install_libdir="$2"
-
- oldlibs=
- if test -z "$rpath"; then
- if test "$build_libtool_libs" = yes; then
- # Building a libtool convenience library.
- # Some compilers have problems with a `.al' extension so
- # convenience libraries should have the same extension an
- # archive normally would.
- oldlibs="$output_objdir/$libname.$libext $oldlibs"
- build_libtool_libs=convenience
- build_old_libs=yes
- fi
-
- if test -n "$vinfo"; then
- $echo "$modename: warning: \`-version-info/-version-number' is ignored for convenience libraries" 1>&2
- fi
-
- if test -n "$release"; then
- $echo "$modename: warning: \`-release' is ignored for convenience libraries" 1>&2
- fi
- else
-
- # Parse the version information argument.
- save_ifs="$IFS"; IFS=':'
- set dummy $vinfo 0 0 0
- IFS="$save_ifs"
-
- if test -n "$8"; then
- $echo "$modename: too many parameters to \`-version-info'" 1>&2
- $echo "$help" 1>&2
- exit $EXIT_FAILURE
- fi
-
- # convert absolute version numbers to libtool ages
- # this retains compatibility with .la files and attempts
- # to make the code below a bit more comprehensible
-
- case $vinfo_number in
- yes)
- number_major="$2"
- number_minor="$3"
- number_revision="$4"
- #
- # There are really only two kinds -- those that
- # use the current revision as the major version
- # and those that subtract age and use age as
- # a minor version. But, then there is irix
- # which has an extra 1 added just for fun
- #
- case $version_type in
- darwin|linux|osf|windows|none)
- current=`expr $number_major + $number_minor`
- age="$number_minor"
- revision="$number_revision"
- ;;
- freebsd-aout|freebsd-elf|sunos)
- current="$number_major"
- revision="$number_minor"
- age="0"
- ;;
- irix|nonstopux)
- current=`expr $number_major + $number_minor`
- age="$number_minor"
- revision="$number_minor"
- lt_irix_increment=no
- ;;
- esac
- ;;
- no)
- current="$2"
- revision="$3"
- age="$4"
- ;;
- esac
-
- # Check that each of the things are valid numbers.
- case $current in
- 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;;
- *)
- $echo "$modename: CURRENT \`$current' must be a nonnegative integer" 1>&2
- $echo "$modename: \`$vinfo' is not valid version information" 1>&2
- exit $EXIT_FAILURE
- ;;
- esac
-
- case $revision in
- 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;;
- *)
- $echo "$modename: REVISION \`$revision' must be a nonnegative integer" 1>&2
- $echo "$modename: \`$vinfo' is not valid version information" 1>&2
- exit $EXIT_FAILURE
- ;;
- esac
-
- case $age in
- 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;;
- *)
- $echo "$modename: AGE \`$age' must be a nonnegative integer" 1>&2
- $echo "$modename: \`$vinfo' is not valid version information" 1>&2
- exit $EXIT_FAILURE
- ;;
- esac
-
- if test "$age" -gt "$current"; then
- $echo "$modename: AGE \`$age' is greater than the current interface number \`$current'" 1>&2
- $echo "$modename: \`$vinfo' is not valid version information" 1>&2
- exit $EXIT_FAILURE
- fi
-
- # Calculate the version variables.
- major=
- versuffix=
- verstring=
- case $version_type in
- none) ;;
-
- darwin)
- # Like Linux, but with the current version available in
- # verstring for coding it into the library header
- major=.`expr $current - $age`
- versuffix="$major.$age.$revision"
- # Darwin ld doesn't like 0 for these options...
- minor_current=`expr $current + 1`
- xlcverstring="${wl}-compatibility_version ${wl}$minor_current ${wl}-current_version ${wl}$minor_current.$revision"
- verstring="-compatibility_version $minor_current -current_version $minor_current.$revision"
- ;;
-
- freebsd-aout)
- major=".$current"
- versuffix=".$current.$revision";
- ;;
-
- freebsd-elf)
- major=".$current"
- versuffix=".$current";
- ;;
-
- irix | nonstopux)
- if test "X$lt_irix_increment" = "Xno"; then
- major=`expr $current - $age`
- else
- major=`expr $current - $age + 1`
- fi
- case $version_type in
- nonstopux) verstring_prefix=nonstopux ;;
- *) verstring_prefix=sgi ;;
- esac
- verstring="$verstring_prefix$major.$revision"
-
- # Add in all the interfaces that we are compatible with.
- loop=$revision
- while test "$loop" -ne 0; do
- iface=`expr $revision - $loop`
- loop=`expr $loop - 1`
- verstring="$verstring_prefix$major.$iface:$verstring"
- done
-
- # Before this point, $major must not contain `.'.
- major=.$major
- versuffix="$major.$revision"
- ;;
-
- linux)
- major=.`expr $current - $age`
- versuffix="$major.$age.$revision"
- ;;
-
- osf)
- major=.`expr $current - $age`
- versuffix=".$current.$age.$revision"
- verstring="$current.$age.$revision"
-
- # Add in all the interfaces that we are compatible with.
- loop=$age
- while test "$loop" -ne 0; do
- iface=`expr $current - $loop`
- loop=`expr $loop - 1`
- verstring="$verstring:${iface}.0"
- done
-
- # Make executables depend on our current version.
- verstring="$verstring:${current}.0"
- ;;
-
- sunos)
- major=".$current"
- versuffix=".$current.$revision"
- ;;
-
- windows)
- # Use '-' rather than '.', since we only want one
- # extension on DOS 8.3 filesystems.
- major=`expr $current - $age`
- versuffix="-$major"
- ;;
-
- *)
- $echo "$modename: unknown library version type \`$version_type'" 1>&2
- $echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
- exit $EXIT_FAILURE
- ;;
- esac
-
- # Clear the version info if we defaulted, and they specified a release.
- if test -z "$vinfo" && test -n "$release"; then
- major=
- case $version_type in
- darwin)
- # we can't check for "0.0" in archive_cmds due to quoting
- # problems, so we reset it completely
- verstring=
- ;;
- *)
- verstring="0.0"
- ;;
- esac
- if test "$need_version" = no; then
- versuffix=
- else
- versuffix=".0.0"
- fi
- fi
-
- # Remove version info from name if versioning should be avoided
- if test "$avoid_version" = yes && test "$need_version" = no; then
- major=
- versuffix=
- verstring=""
- fi
-
- # Check to see if the archive will have undefined symbols.
- if test "$allow_undefined" = yes; then
- if test "$allow_undefined_flag" = unsupported; then
- $echo "$modename: warning: undefined symbols not allowed in $host shared libraries" 1>&2
- build_libtool_libs=no
- build_old_libs=yes
- fi
- else
- # Don't allow undefined symbols.
- allow_undefined_flag="$no_undefined_flag"
- fi
- fi
-
- if test "$mode" != relink; then
- # Remove our outputs, but don't remove object files since they
- # may have been created when compiling PIC objects.
- removelist=
- tempremovelist=`$echo "$output_objdir/*"`
- for p in $tempremovelist; do
- case $p in
- *.$objext)
- ;;
- $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/${libname}${release}.*)
- if test "X$precious_files_regex" != "X"; then
- if echo $p | $EGREP -e "$precious_files_regex" >/dev/null 2>&1
- then
- continue
- fi
- fi
- removelist="$removelist $p"
- ;;
- *) ;;
- esac
- done
- if test -n "$removelist"; then
- $show "${rm}r $removelist"
- $run ${rm}r $removelist
- fi
- fi
-
- # Now set the variables for building old libraries.
- if test "$build_old_libs" = yes && test "$build_libtool_libs" != convenience ; then
- oldlibs="$oldlibs $output_objdir/$libname.$libext"
-
- # Transform .lo files to .o files.
- oldobjs="$objs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e "$lo2o" | $NL2SP`
- fi
-
- # Eliminate all temporary directories.
- #for path in $notinst_path; do
- # lib_search_path=`$echo "$lib_search_path " | ${SED} -e "s% $path % %g"`
- # deplibs=`$echo "$deplibs " | ${SED} -e "s% -L$path % %g"`
- # dependency_libs=`$echo "$dependency_libs " | ${SED} -e "s% -L$path % %g"`
- #done
-
- if test -n "$xrpath"; then
- # If the user specified any rpath flags, then add them.
- temp_xrpath=
- for libdir in $xrpath; do
- temp_xrpath="$temp_xrpath -R$libdir"
- case "$finalize_rpath " in
- *" $libdir "*) ;;
- *) finalize_rpath="$finalize_rpath $libdir" ;;
- esac
- done
- if test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes; then
- dependency_libs="$temp_xrpath $dependency_libs"
- fi
- fi
-
- # Make sure dlfiles contains only unique files that won't be dlpreopened
- old_dlfiles="$dlfiles"
- dlfiles=
- for lib in $old_dlfiles; do
- case " $dlprefiles $dlfiles " in
- *" $lib "*) ;;
- *) dlfiles="$dlfiles $lib" ;;
- esac
- done
-
- # Make sure dlprefiles contains only unique files
- old_dlprefiles="$dlprefiles"
- dlprefiles=
- for lib in $old_dlprefiles; do
- case "$dlprefiles " in
- *" $lib "*) ;;
- *) dlprefiles="$dlprefiles $lib" ;;
- esac
- done
-
- if test "$build_libtool_libs" = yes; then
- if test -n "$rpath"; then
- case $host in
- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos*)
- # these systems don't actually have a c library (as such)!
- ;;
- *-*-rhapsody* | *-*-darwin1.[012])
- # Rhapsody C library is in the System framework
- deplibs="$deplibs -framework System"
- ;;
- *-*-netbsd*)
- # Don't link with libc until the a.out ld.so is fixed.
- ;;
- *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*)
- # Do not include libc due to us having libc/libc_r.
- ;;
- *-*-sco3.2v5* | *-*-sco5v6*)
- # Causes problems with __ctype
- ;;
- *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*)
- # Compiler inserts libc in the correct place for threads to work
- ;;
- *)
- # Add libc to deplibs on all other systems if necessary.
- if test "$build_libtool_need_lc" = "yes"; then
- deplibs="$deplibs -lc"
- fi
- ;;
- esac
- fi
-
- # Transform deplibs into only deplibs that can be linked in shared.
- name_save=$name
- libname_save=$libname
- release_save=$release
- versuffix_save=$versuffix
- major_save=$major
- # I'm not sure if I'm treating the release correctly. I think
- # release should show up in the -l (ie -lgmp5) so we don't want to
- # add it in twice. Is that correct?
- release=""
- versuffix=""
- major=""
- newdeplibs=
- droppeddeps=no
- case $deplibs_check_method in
- pass_all)
- # Don't check for shared/static. Everything works.
- # This might be a little naive. We might want to check
- # whether the library exists or not. But this is on
- # osf3 & osf4 and I'm not really sure... Just
- # implementing what was already the behavior.
- newdeplibs=$deplibs
- ;;
- test_compile)
- # This code stresses the "libraries are programs" paradigm to its
- # limits. Maybe even breaks it. We compile a program, linking it
- # against the deplibs as a proxy for the library. Then we can check
- # whether they linked in statically or dynamically with ldd.
- $rm conftest.c
- cat > conftest.c <<EOF
- int main() { return 0; }
-EOF
- $rm conftest
- if $LTCC $LTCFLAGS -o conftest conftest.c $deplibs; then
- ldd_output=`ldd conftest`
- for i in $deplibs; do
- name=`expr $i : '-l\(.*\)'`
- # If $name is empty we are operating on a -L argument.
- if test "$name" != "" && test "$name" != "0"; then
- if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
- case " $predeps $postdeps " in
- *" $i "*)
- newdeplibs="$newdeplibs $i"
- i=""
- ;;
- esac
- fi
- if test -n "$i" ; then
- libname=`eval \\$echo \"$libname_spec\"`
- deplib_matches=`eval \\$echo \"$library_names_spec\"`
- set dummy $deplib_matches
- deplib_match=$2
- if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then
- newdeplibs="$newdeplibs $i"
- else
- droppeddeps=yes
- $echo
- $echo "*** Warning: dynamic linker does not accept needed library $i."
- $echo "*** I have the capability to make that library automatically link in when"
- $echo "*** you link to this library. But I can only do this if you have a"
- $echo "*** shared version of the library, which I believe you do not have"
- $echo "*** because a test_compile did reveal that the linker did not use it for"
- $echo "*** its dynamic dependency list that programs get resolved with at runtime."
- fi
- fi
- else
- newdeplibs="$newdeplibs $i"
- fi
- done
- else
- # Error occurred in the first compile. Let's try to salvage
- # the situation: Compile a separate program for each library.
- for i in $deplibs; do
- name=`expr $i : '-l\(.*\)'`
- # If $name is empty we are operating on a -L argument.
- if test "$name" != "" && test "$name" != "0"; then
- $rm conftest
- if $LTCC $LTCFLAGS -o conftest conftest.c $i; then
- ldd_output=`ldd conftest`
- if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
- case " $predeps $postdeps " in
- *" $i "*)
- newdeplibs="$newdeplibs $i"
- i=""
- ;;
- esac
- fi
- if test -n "$i" ; then
- libname=`eval \\$echo \"$libname_spec\"`
- deplib_matches=`eval \\$echo \"$library_names_spec\"`
- set dummy $deplib_matches
- deplib_match=$2
- if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then
- newdeplibs="$newdeplibs $i"
- else
- droppeddeps=yes
- $echo
- $echo "*** Warning: dynamic linker does not accept needed library $i."
- $echo "*** I have the capability to make that library automatically link in when"
- $echo "*** you link to this library. But I can only do this if you have a"
- $echo "*** shared version of the library, which you do not appear to have"
- $echo "*** because a test_compile did reveal that the linker did not use this one"
- $echo "*** as a dynamic dependency that programs can get resolved with at runtime."
- fi
- fi
- else
- droppeddeps=yes
- $echo
- $echo "*** Warning! Library $i is needed by this library but I was not able to"
- $echo "*** make it link in! You will probably need to install it or some"
- $echo "*** library that it depends on before this library will be fully"
- $echo "*** functional. Installing it before continuing would be even better."
- fi
- else
- newdeplibs="$newdeplibs $i"
- fi
- done
- fi
- ;;
- file_magic*)
- set dummy $deplibs_check_method
- file_magic_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"`
- for a_deplib in $deplibs; do
- name=`expr $a_deplib : '-l\(.*\)'`
- # If $name is empty we are operating on a -L argument.
- if test "$name" != "" && test "$name" != "0"; then
- if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
- case " $predeps $postdeps " in
- *" $a_deplib "*)
- newdeplibs="$newdeplibs $a_deplib"
- a_deplib=""
- ;;
- esac
- fi
- if test -n "$a_deplib" ; then
- libname=`eval \\$echo \"$libname_spec\"`
- for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
- potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
- for potent_lib in $potential_libs; do
- # Follow soft links.
- if ls -lLd "$potent_lib" 2>/dev/null \
- | grep " -> " >/dev/null; then
- continue
- fi
- # The statement above tries to avoid entering an
- # endless loop below, in case of cyclic links.
- # We might still enter an endless loop, since a link
- # loop can be closed while we follow links,
- # but so what?
- potlib="$potent_lib"
- while test -h "$potlib" 2>/dev/null; do
- potliblink=`ls -ld $potlib | ${SED} 's/.* -> //'`
- case $potliblink in
- [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";;
- *) potlib=`$echo "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";;
- esac
- done
- if eval $file_magic_cmd \"\$potlib\" 2>/dev/null \
- | ${SED} 10q \
- | $EGREP "$file_magic_regex" > /dev/null; then
- newdeplibs="$newdeplibs $a_deplib"
- a_deplib=""
- break 2
- fi
- done
- done
- fi
- if test -n "$a_deplib" ; then
- droppeddeps=yes
- $echo
- $echo "*** Warning: linker path does not have real file for library $a_deplib."
- $echo "*** I have the capability to make that library automatically link in when"
- $echo "*** you link to this library. But I can only do this if you have a"
- $echo "*** shared version of the library, which you do not appear to have"
- $echo "*** because I did check the linker path looking for a file starting"
- if test -z "$potlib" ; then
- $echo "*** with $libname but no candidates were found. (...for file magic test)"
- else
- $echo "*** with $libname and none of the candidates passed a file format test"
- $echo "*** using a file magic. Last file checked: $potlib"
- fi
- fi
- else
- # Add a -L argument.
- newdeplibs="$newdeplibs $a_deplib"
- fi
- done # Gone through all deplibs.
- ;;
- match_pattern*)
- set dummy $deplibs_check_method
- match_pattern_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"`
- for a_deplib in $deplibs; do
- name=`expr $a_deplib : '-l\(.*\)'`
- # If $name is empty we are operating on a -L argument.
- if test -n "$name" && test "$name" != "0"; then
- if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
- case " $predeps $postdeps " in
- *" $a_deplib "*)
- newdeplibs="$newdeplibs $a_deplib"
- a_deplib=""
- ;;
- esac
- fi
- if test -n "$a_deplib" ; then
- libname=`eval \\$echo \"$libname_spec\"`
- for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
- potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
- for potent_lib in $potential_libs; do
- potlib="$potent_lib" # see symlink-check above in file_magic test
- if eval $echo \"$potent_lib\" 2>/dev/null \
- | ${SED} 10q \
- | $EGREP "$match_pattern_regex" > /dev/null; then
- newdeplibs="$newdeplibs $a_deplib"
- a_deplib=""
- break 2
- fi
- done
- done
- fi
- if test -n "$a_deplib" ; then
- droppeddeps=yes
- $echo
- $echo "*** Warning: linker path does not have real file for library $a_deplib."
- $echo "*** I have the capability to make that library automatically link in when"
- $echo "*** you link to this library. But I can only do this if you have a"
- $echo "*** shared version of the library, which you do not appear to have"
- $echo "*** because I did check the linker path looking for a file starting"
- if test -z "$potlib" ; then
- $echo "*** with $libname but no candidates were found. (...for regex pattern test)"
- else
- $echo "*** with $libname and none of the candidates passed a file format test"
- $echo "*** using a regex pattern. Last file checked: $potlib"
- fi
- fi
- else
- # Add a -L argument.
- newdeplibs="$newdeplibs $a_deplib"
- fi
- done # Gone through all deplibs.
- ;;
- none | unknown | *)
- newdeplibs=""
- tmp_deplibs=`$echo "X $deplibs" | $Xsed -e 's/ -lc$//' \
- -e 's/ -[LR][^ ]*//g'`
- if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
- for i in $predeps $postdeps ; do
- # can't use Xsed below, because $i might contain '/'
- tmp_deplibs=`$echo "X $tmp_deplibs" | ${SED} -e "1s,^X,," -e "s,$i,,"`
- done
- fi
- if $echo "X $tmp_deplibs" | $Xsed -e 's/[ ]//g' \
- | grep . >/dev/null; then
- $echo
- if test "X$deplibs_check_method" = "Xnone"; then
- $echo "*** Warning: inter-library dependencies are not supported in this platform."
- else
- $echo "*** Warning: inter-library dependencies are not known to be supported."
- fi
- $echo "*** All declared inter-library dependencies are being dropped."
- droppeddeps=yes
- fi
- ;;
- esac
- versuffix=$versuffix_save
- major=$major_save
- release=$release_save
- libname=$libname_save
- name=$name_save
-
- case $host in
- *-*-rhapsody* | *-*-darwin1.[012])
- # On Rhapsody replace the C library is the System framework
- newdeplibs=`$echo "X $newdeplibs" | $Xsed -e 's/ -lc / -framework System /'`
- ;;
- esac
-
- if test "$droppeddeps" = yes; then
- if test "$module" = yes; then
- $echo
- $echo "*** Warning: libtool could not satisfy all declared inter-library"
- $echo "*** dependencies of module $libname. Therefore, libtool will create"
- $echo "*** a static module, that should work as long as the dlopening"
- $echo "*** application is linked with the -dlopen flag."
- if test -z "$global_symbol_pipe"; then
- $echo
- $echo "*** However, this would only work if libtool was able to extract symbol"
- $echo "*** lists from a program, using \`nm' or equivalent, but libtool could"
- $echo "*** not find such a program. So, this module is probably useless."
- $echo "*** \`nm' from GNU binutils and a full rebuild may help."
- fi
- if test "$build_old_libs" = no; then
- oldlibs="$output_objdir/$libname.$libext"
- build_libtool_libs=module
- build_old_libs=yes
- else
- build_libtool_libs=no
- fi
- else
- $echo "*** The inter-library dependencies that have been dropped here will be"
- $echo "*** automatically added whenever a program is linked with this library"
- $echo "*** or is declared to -dlopen it."
-
- if test "$allow_undefined" = no; then
- $echo
- $echo "*** Since this library must not contain undefined symbols,"
- $echo "*** because either the platform does not support them or"
- $echo "*** it was explicitly requested with -no-undefined,"
- $echo "*** libtool will only create a static version of it."
- if test "$build_old_libs" = no; then
- oldlibs="$output_objdir/$libname.$libext"
- build_libtool_libs=module
- build_old_libs=yes
- else
- build_libtool_libs=no
- fi
- fi
- fi
- fi
- # Done checking deplibs!
- deplibs=$newdeplibs
- fi
-
-
- # move library search paths that coincide with paths to not yet
- # installed libraries to the beginning of the library search list
- new_libs=
- for path in $notinst_path; do
- case " $new_libs " in
- *" -L$path/$objdir "*) ;;
- *)
- case " $deplibs " in
- *" -L$path/$objdir "*)
- new_libs="$new_libs -L$path/$objdir" ;;
- esac
- ;;
- esac
- done
- for deplib in $deplibs; do
- case $deplib in
- -L*)
- case " $new_libs " in
- *" $deplib "*) ;;
- *) new_libs="$new_libs $deplib" ;;
- esac
- ;;
- *) new_libs="$new_libs $deplib" ;;
- esac
- done
- deplibs="$new_libs"
-
-
- # All the library-specific variables (install_libdir is set above).
- library_names=
- old_library=
- dlname=
-
- # Test again, we may have decided not to build it any more
- if test "$build_libtool_libs" = yes; then
- if test "$hardcode_into_libs" = yes; then
- # Hardcode the library paths
- hardcode_libdirs=
- dep_rpath=
- rpath="$finalize_rpath"
- test "$mode" != relink && rpath="$compile_rpath$rpath"
- for libdir in $rpath; do
- if test -n "$hardcode_libdir_flag_spec"; then
- if test -n "$hardcode_libdir_separator"; then
- if test -z "$hardcode_libdirs"; then
- hardcode_libdirs="$libdir"
- else
- # Just accumulate the unique libdirs.
- case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
- *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
- ;;
- *)
- hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir"
- ;;
- esac
- fi
- else
- eval flag=\"$hardcode_libdir_flag_spec\"
- dep_rpath="$dep_rpath $flag"
- fi
- elif test -n "$runpath_var"; then
- case "$perm_rpath " in
- *" $libdir "*) ;;
- *) perm_rpath="$perm_rpath $libdir" ;;
- esac
- fi
- done
- # Substitute the hardcoded libdirs into the rpath.
- if test -n "$hardcode_libdir_separator" &&
- test -n "$hardcode_libdirs"; then
- libdir="$hardcode_libdirs"
- if test -n "$hardcode_libdir_flag_spec_ld"; then
- case $archive_cmds in
- *\$LD*) eval dep_rpath=\"$hardcode_libdir_flag_spec_ld\" ;;
- *) eval dep_rpath=\"$hardcode_libdir_flag_spec\" ;;
- esac
- else
- eval dep_rpath=\"$hardcode_libdir_flag_spec\"
- fi
- fi
- if test -n "$runpath_var" && test -n "$perm_rpath"; then
- # We should set the runpath_var.
- rpath=
- for dir in $perm_rpath; do
- rpath="$rpath$dir:"
- done
- eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var"
- fi
- test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs"
- fi
-
- shlibpath="$finalize_shlibpath"
- test "$mode" != relink && shlibpath="$compile_shlibpath$shlibpath"
- if test -n "$shlibpath"; then
- eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var"
- fi
-
- # Get the real and link names of the library.
- eval shared_ext=\"$shrext_cmds\"
- eval library_names=\"$library_names_spec\"
- set dummy $library_names
- realname="$2"
- shift; shift
-
- if test -n "$soname_spec"; then
- eval soname=\"$soname_spec\"
- else
- soname="$realname"
- fi
- if test -z "$dlname"; then
- dlname=$soname
- fi
-
- lib="$output_objdir/$realname"
- linknames=
- for link
- do
- linknames="$linknames $link"
- done
-
- # Use standard objects if they are pic
- test -z "$pic_flag" && libobjs=`$echo "X$libobjs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
-
- # Prepare the list of exported symbols
- if test -z "$export_symbols"; then
- if test "$always_export_symbols" = yes || test -n "$export_symbols_regex"; then
- $show "generating symbol list for \`$libname.la'"
- export_symbols="$output_objdir/$libname.exp"
- $run $rm $export_symbols
- cmds=$export_symbols_cmds
- save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- eval cmd=\"$cmd\"
- if len=`expr "X$cmd" : ".*"` &&
- test "$len" -le "$max_cmd_len" || test "$max_cmd_len" -le -1; then
- $show "$cmd"
- $run eval "$cmd" || exit $?
- skipped_export=false
- else
- # The command line is too long to execute in one step.
- $show "using reloadable object file for export list..."
- skipped_export=:
- # Break out early, otherwise skipped_export may be
- # set to false by a later but shorter cmd.
- break
- fi
- done
- IFS="$save_ifs"
- if test -n "$export_symbols_regex"; then
- $show "$EGREP -e \"$export_symbols_regex\" \"$export_symbols\" > \"${export_symbols}T\""
- $run eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"'
- $show "$mv \"${export_symbols}T\" \"$export_symbols\""
- $run eval '$mv "${export_symbols}T" "$export_symbols"'
- fi
- fi
- fi
-
- if test -n "$export_symbols" && test -n "$include_expsyms"; then
- $run eval '$echo "X$include_expsyms" | $SP2NL >> "$export_symbols"'
- fi
-
- tmp_deplibs=
- for test_deplib in $deplibs; do
- case " $convenience " in
- *" $test_deplib "*) ;;
- *)
- tmp_deplibs="$tmp_deplibs $test_deplib"
- ;;
- esac
- done
- deplibs="$tmp_deplibs"
-
- if test -n "$convenience"; then
- if test -n "$whole_archive_flag_spec"; then
- save_libobjs=$libobjs
- eval libobjs=\"\$libobjs $whole_archive_flag_spec\"
- else
- gentop="$output_objdir/${outputname}x"
- generated="$generated $gentop"
-
- func_extract_archives $gentop $convenience
- libobjs="$libobjs $func_extract_archives_result"
- fi
- fi
-
- if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then
- eval flag=\"$thread_safe_flag_spec\"
- linker_flags="$linker_flags $flag"
- fi
-
- # Make a backup of the uninstalled library when relinking
- if test "$mode" = relink; then
- $run eval '(cd $output_objdir && $rm ${realname}U && $mv $realname ${realname}U)' || exit $?
- fi
-
- # Do each of the archive commands.
- if test "$module" = yes && test -n "$module_cmds" ; then
- if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then
- eval test_cmds=\"$module_expsym_cmds\"
- cmds=$module_expsym_cmds
- else
- eval test_cmds=\"$module_cmds\"
- cmds=$module_cmds
- fi
- else
- if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then
- eval test_cmds=\"$archive_expsym_cmds\"
- cmds=$archive_expsym_cmds
- else
- eval test_cmds=\"$archive_cmds\"
- cmds=$archive_cmds
- fi
- fi
-
- if test "X$skipped_export" != "X:" &&
- len=`expr "X$test_cmds" : ".*" 2>/dev/null` &&
- test "$len" -le "$max_cmd_len" || test "$max_cmd_len" -le -1; then
- :
- else
- # The command line is too long to link in one step, link piecewise.
- $echo "creating reloadable object files..."
-
- # Save the value of $output and $libobjs because we want to
- # use them later. If we have whole_archive_flag_spec, we
- # want to use save_libobjs as it was before
- # whole_archive_flag_spec was expanded, because we can't
- # assume the linker understands whole_archive_flag_spec.
- # This may have to be revisited, in case too many
- # convenience libraries get linked in and end up exceeding
- # the spec.
- if test -z "$convenience" || test -z "$whole_archive_flag_spec"; then
- save_libobjs=$libobjs
- fi
- save_output=$output
- output_la=`$echo "X$output" | $Xsed -e "$basename"`
-
- # Clear the reloadable object creation command queue and
- # initialize k to one.
- test_cmds=
- concat_cmds=
- objlist=
- delfiles=
- last_robj=
- k=1
- output=$output_objdir/$output_la-${k}.$objext
- # Loop over the list of objects to be linked.
- for obj in $save_libobjs
- do
- eval test_cmds=\"$reload_cmds $objlist $last_robj\"
- if test "X$objlist" = X ||
- { len=`expr "X$test_cmds" : ".*" 2>/dev/null` &&
- test "$len" -le "$max_cmd_len"; }; then
- objlist="$objlist $obj"
- else
- # The command $test_cmds is almost too long, add a
- # command to the queue.
- if test "$k" -eq 1 ; then
- # The first file doesn't have a previous command to add.
- eval concat_cmds=\"$reload_cmds $objlist $last_robj\"
- else
- # All subsequent reloadable object files will link in
- # the last one created.
- eval concat_cmds=\"\$concat_cmds~$reload_cmds $objlist $last_robj\"
- fi
- last_robj=$output_objdir/$output_la-${k}.$objext
- k=`expr $k + 1`
- output=$output_objdir/$output_la-${k}.$objext
- objlist=$obj
- len=1
- fi
- done
- # Handle the remaining objects by creating one last
- # reloadable object file. All subsequent reloadable object
- # files will link in the last one created.
- test -z "$concat_cmds" || concat_cmds=$concat_cmds~
- eval concat_cmds=\"\${concat_cmds}$reload_cmds $objlist $last_robj\"
-
- if ${skipped_export-false}; then
- $show "generating symbol list for \`$libname.la'"
- export_symbols="$output_objdir/$libname.exp"
- $run $rm $export_symbols
- libobjs=$output
- # Append the command to create the export file.
- eval concat_cmds=\"\$concat_cmds~$export_symbols_cmds\"
- fi
-
- # Set up a command to remove the reloadable object files
- # after they are used.
- i=0
- while test "$i" -lt "$k"
- do
- i=`expr $i + 1`
- delfiles="$delfiles $output_objdir/$output_la-${i}.$objext"
- done
-
- $echo "creating a temporary reloadable object file: $output"
-
- # Loop through the commands generated above and execute them.
- save_ifs="$IFS"; IFS='~'
- for cmd in $concat_cmds; do
- IFS="$save_ifs"
- $show "$cmd"
- $run eval "$cmd" || exit $?
- done
- IFS="$save_ifs"
-
- libobjs=$output
- # Restore the value of output.
- output=$save_output
-
- if test -n "$convenience" && test -n "$whole_archive_flag_spec"; then
- eval libobjs=\"\$libobjs $whole_archive_flag_spec\"
- fi
- # Expand the library linking commands again to reset the
- # value of $libobjs for piecewise linking.
-
- # Do each of the archive commands.
- if test "$module" = yes && test -n "$module_cmds" ; then
- if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then
- cmds=$module_expsym_cmds
- else
- cmds=$module_cmds
- fi
- else
- if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then
- cmds=$archive_expsym_cmds
- else
- cmds=$archive_cmds
- fi
- fi
-
- # Append the command to remove the reloadable object files
- # to the just-reset $cmds.
- eval cmds=\"\$cmds~\$rm $delfiles\"
- fi
- save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- eval cmd=\"$cmd\"
- $show "$cmd"
- $run eval "$cmd" || {
- lt_exit=$?
-
- # Restore the uninstalled library and exit
- if test "$mode" = relink; then
- $run eval '(cd $output_objdir && $rm ${realname}T && $mv ${realname}U $realname)'
- fi
-
- exit $lt_exit
- }
- done
- IFS="$save_ifs"
-
- # Restore the uninstalled library and exit
- if test "$mode" = relink; then
- $run eval '(cd $output_objdir && $rm ${realname}T && $mv $realname ${realname}T && $mv "$realname"U $realname)' || exit $?
-
- if test -n "$convenience"; then
- if test -z "$whole_archive_flag_spec"; then
- $show "${rm}r $gentop"
- $run ${rm}r "$gentop"
- fi
- fi
-
- exit $EXIT_SUCCESS
- fi
-
- # Create links to the real library.
- for linkname in $linknames; do
- if test "$realname" != "$linkname"; then
- $show "(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)"
- $run eval '(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)' || exit $?
- fi
- done
-
- # If -module or -export-dynamic was specified, set the dlname.
- if test "$module" = yes || test "$export_dynamic" = yes; then
- # On all known operating systems, these are identical.
- dlname="$soname"
- fi
- fi
- ;;
-
- obj)
- case " $deplibs" in
- *\ -l* | *\ -L*)
- $echo "$modename: warning: \`-l' and \`-L' are ignored for objects" 1>&2 ;;
- esac
-
- if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
- $echo "$modename: warning: \`-dlopen' is ignored for objects" 1>&2
- fi
-
- if test -n "$rpath"; then
- $echo "$modename: warning: \`-rpath' is ignored for objects" 1>&2
- fi
-
- if test -n "$xrpath"; then
- $echo "$modename: warning: \`-R' is ignored for objects" 1>&2
- fi
-
- if test -n "$vinfo"; then
- $echo "$modename: warning: \`-version-info' is ignored for objects" 1>&2
- fi
-
- if test -n "$release"; then
- $echo "$modename: warning: \`-release' is ignored for objects" 1>&2
- fi
-
- case $output in
- *.lo)
- if test -n "$objs$old_deplibs"; then
- $echo "$modename: cannot build library object \`$output' from non-libtool objects" 1>&2
- exit $EXIT_FAILURE
- fi
- libobj="$output"
- obj=`$echo "X$output" | $Xsed -e "$lo2o"`
- ;;
- *)
- libobj=
- obj="$output"
- ;;
- esac
-
- # Delete the old objects.
- $run $rm $obj $libobj
-
- # Objects from convenience libraries. This assumes
- # single-version convenience libraries. Whenever we create
- # different ones for PIC/non-PIC, this we'll have to duplicate
- # the extraction.
- reload_conv_objs=
- gentop=
- # reload_cmds runs $LD directly, so let us get rid of
- # -Wl from whole_archive_flag_spec and hope we can get by with
- # turning comma into space..
- wl=
-
- if test -n "$convenience"; then
- if test -n "$whole_archive_flag_spec"; then
- eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\"
- reload_conv_objs=$reload_objs\ `$echo "X$tmp_whole_archive_flags" | $Xsed -e 's|,| |g'`
- else
- gentop="$output_objdir/${obj}x"
- generated="$generated $gentop"
-
- func_extract_archives $gentop $convenience
- reload_conv_objs="$reload_objs $func_extract_archives_result"
- fi
- fi
-
- # Create the old-style object.
- reload_objs="$objs$old_deplibs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test
-
- output="$obj"
- cmds=$reload_cmds
- save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- eval cmd=\"$cmd\"
- $show "$cmd"
- $run eval "$cmd" || exit $?
- done
- IFS="$save_ifs"
-
- # Exit if we aren't doing a library object file.
- if test -z "$libobj"; then
- if test -n "$gentop"; then
- $show "${rm}r $gentop"
- $run ${rm}r $gentop
- fi
-
- exit $EXIT_SUCCESS
- fi
-
- if test "$build_libtool_libs" != yes; then
- if test -n "$gentop"; then
- $show "${rm}r $gentop"
- $run ${rm}r $gentop
- fi
-
- # Create an invalid libtool object if no PIC, so that we don't
- # accidentally link it into a program.
- # $show "echo timestamp > $libobj"
- # $run eval "echo timestamp > $libobj" || exit $?
- exit $EXIT_SUCCESS
- fi
-
- if test -n "$pic_flag" || test "$pic_mode" != default; then
- # Only do commands if we really have different PIC objects.
- reload_objs="$libobjs $reload_conv_objs"
- output="$libobj"
- cmds=$reload_cmds
- save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- eval cmd=\"$cmd\"
- $show "$cmd"
- $run eval "$cmd" || exit $?
- done
- IFS="$save_ifs"
- fi
-
- if test -n "$gentop"; then
- $show "${rm}r $gentop"
- $run ${rm}r $gentop
- fi
-
- exit $EXIT_SUCCESS
- ;;
-
- prog)
- case $host in
- *cygwin*) output=`$echo $output | ${SED} -e 's,.exe$,,;s,$,.exe,'` ;;
- esac
- if test -n "$vinfo"; then
- $echo "$modename: warning: \`-version-info' is ignored for programs" 1>&2
- fi
-
- if test -n "$release"; then
- $echo "$modename: warning: \`-release' is ignored for programs" 1>&2
- fi
-
- if test "$preload" = yes; then
- if test "$dlopen_support" = unknown && test "$dlopen_self" = unknown &&
- test "$dlopen_self_static" = unknown; then
- $echo "$modename: warning: \`AC_LIBTOOL_DLOPEN' not used. Assuming no dlopen support."
- fi
- fi
-
- case $host in
- *-*-rhapsody* | *-*-darwin1.[012])
- # On Rhapsody replace the C library is the System framework
- compile_deplibs=`$echo "X $compile_deplibs" | $Xsed -e 's/ -lc / -framework System /'`
- finalize_deplibs=`$echo "X $finalize_deplibs" | $Xsed -e 's/ -lc / -framework System /'`
- ;;
- esac
-
- case $host in
- *darwin*)
- # Don't allow lazy linking, it breaks C++ global constructors
- if test "$tagname" = CXX ; then
- compile_command="$compile_command ${wl}-bind_at_load"
- finalize_command="$finalize_command ${wl}-bind_at_load"
- fi
- ;;
- esac
-
-
- # move library search paths that coincide with paths to not yet
- # installed libraries to the beginning of the library search list
- new_libs=
- for path in $notinst_path; do
- case " $new_libs " in
- *" -L$path/$objdir "*) ;;
- *)
- case " $compile_deplibs " in
- *" -L$path/$objdir "*)
- new_libs="$new_libs -L$path/$objdir" ;;
- esac
- ;;
- esac
- done
- for deplib in $compile_deplibs; do
- case $deplib in
- -L*)
- case " $new_libs " in
- *" $deplib "*) ;;
- *) new_libs="$new_libs $deplib" ;;
- esac
- ;;
- *) new_libs="$new_libs $deplib" ;;
- esac
- done
- compile_deplibs="$new_libs"
-
-
- compile_command="$compile_command $compile_deplibs"
- finalize_command="$finalize_command $finalize_deplibs"
-
- if test -n "$rpath$xrpath"; then
- # If the user specified any rpath flags, then add them.
- for libdir in $rpath $xrpath; do
- # This is the magic to use -rpath.
- case "$finalize_rpath " in
- *" $libdir "*) ;;
- *) finalize_rpath="$finalize_rpath $libdir" ;;
- esac
- done
- fi
-
- # Now hardcode the library paths
- rpath=
- hardcode_libdirs=
- for libdir in $compile_rpath $finalize_rpath; do
- if test -n "$hardcode_libdir_flag_spec"; then
- if test -n "$hardcode_libdir_separator"; then
- if test -z "$hardcode_libdirs"; then
- hardcode_libdirs="$libdir"
- else
- # Just accumulate the unique libdirs.
- case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
- *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
- ;;
- *)
- hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir"
- ;;
- esac
- fi
- else
- eval flag=\"$hardcode_libdir_flag_spec\"
- rpath="$rpath $flag"
- fi
- elif test -n "$runpath_var"; then
- case "$perm_rpath " in
- *" $libdir "*) ;;
- *) perm_rpath="$perm_rpath $libdir" ;;
- esac
- fi
- case $host in
- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
- testbindir=`$echo "X$libdir" | $Xsed -e 's*/lib$*/bin*'`
- case :$dllsearchpath: in
- *":$libdir:"*) ;;
- *) dllsearchpath="$dllsearchpath:$libdir";;
- esac
- case :$dllsearchpath: in
- *":$testbindir:"*) ;;
- *) dllsearchpath="$dllsearchpath:$testbindir";;
- esac
- ;;
- esac
- done
- # Substitute the hardcoded libdirs into the rpath.
- if test -n "$hardcode_libdir_separator" &&
- test -n "$hardcode_libdirs"; then
- libdir="$hardcode_libdirs"
- eval rpath=\" $hardcode_libdir_flag_spec\"
- fi
- compile_rpath="$rpath"
-
- rpath=
- hardcode_libdirs=
- for libdir in $finalize_rpath; do
- if test -n "$hardcode_libdir_flag_spec"; then
- if test -n "$hardcode_libdir_separator"; then
- if test -z "$hardcode_libdirs"; then
- hardcode_libdirs="$libdir"
- else
- # Just accumulate the unique libdirs.
- case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
- *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
- ;;
- *)
- hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir"
- ;;
- esac
- fi
- else
- eval flag=\"$hardcode_libdir_flag_spec\"
- rpath="$rpath $flag"
- fi
- elif test -n "$runpath_var"; then
- case "$finalize_perm_rpath " in
- *" $libdir "*) ;;
- *) finalize_perm_rpath="$finalize_perm_rpath $libdir" ;;
- esac
- fi
- done
- # Substitute the hardcoded libdirs into the rpath.
- if test -n "$hardcode_libdir_separator" &&
- test -n "$hardcode_libdirs"; then
- libdir="$hardcode_libdirs"
- eval rpath=\" $hardcode_libdir_flag_spec\"
- fi
- finalize_rpath="$rpath"
-
- if test -n "$libobjs" && test "$build_old_libs" = yes; then
- # Transform all the library objects into standard objects.
- compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
- finalize_command=`$echo "X$finalize_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
- fi
-
- dlsyms=
- if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
- if test -n "$NM" && test -n "$global_symbol_pipe"; then
- dlsyms="${outputname}S.c"
- else
- $echo "$modename: not configured to extract global symbols from dlpreopened files" 1>&2
- fi
- fi
-
- if test -n "$dlsyms"; then
- case $dlsyms in
- "") ;;
- *.c)
- # Discover the nlist of each of the dlfiles.
- nlist="$output_objdir/${outputname}.nm"
-
- $show "$rm $nlist ${nlist}S ${nlist}T"
- $run $rm "$nlist" "${nlist}S" "${nlist}T"
-
- # Parse the name list into a source file.
- $show "creating $output_objdir/$dlsyms"
-
- test -z "$run" && $echo > "$output_objdir/$dlsyms" "\
-/* $dlsyms - symbol resolution table for \`$outputname' dlsym emulation. */
-/* Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP */
-
-#ifdef __cplusplus
-extern \"C\" {
-#endif
-
-/* Prevent the only kind of declaration conflicts we can make. */
-#define lt_preloaded_symbols some_other_symbol
-
-/* External symbol declarations for the compiler. */\
-"
-
- if test "$dlself" = yes; then
- $show "generating symbol list for \`$output'"
-
- test -z "$run" && $echo ': @PROGRAM@ ' > "$nlist"
-
- # Add our own program objects to the symbol list.
- progfiles=`$echo "X$objs$old_deplibs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
- for arg in $progfiles; do
- $show "extracting global C symbols from \`$arg'"
- $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'"
- done
-
- if test -n "$exclude_expsyms"; then
- $run eval '$EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T'
- $run eval '$mv "$nlist"T "$nlist"'
- fi
-
- if test -n "$export_symbols_regex"; then
- $run eval '$EGREP -e "$export_symbols_regex" "$nlist" > "$nlist"T'
- $run eval '$mv "$nlist"T "$nlist"'
- fi
-
- # Prepare the list of exported symbols
- if test -z "$export_symbols"; then
- export_symbols="$output_objdir/$outputname.exp"
- $run $rm $export_symbols
- $run eval "${SED} -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"'
- case $host in
- *cygwin* | *mingw* )
- $run eval "echo EXPORTS "'> "$output_objdir/$outputname.def"'
- $run eval 'cat "$export_symbols" >> "$output_objdir/$outputname.def"'
- ;;
- esac
- else
- $run eval "${SED} -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"'
- $run eval 'grep -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T'
- $run eval 'mv "$nlist"T "$nlist"'
- case $host in
- *cygwin* | *mingw* )
- $run eval "echo EXPORTS "'> "$output_objdir/$outputname.def"'
- $run eval 'cat "$nlist" >> "$output_objdir/$outputname.def"'
- ;;
- esac
- fi
- fi
-
- for arg in $dlprefiles; do
- $show "extracting global C symbols from \`$arg'"
- name=`$echo "$arg" | ${SED} -e 's%^.*/%%'`
- $run eval '$echo ": $name " >> "$nlist"'
- $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'"
- done
-
- if test -z "$run"; then
- # Make sure we have at least an empty file.
- test -f "$nlist" || : > "$nlist"
-
- if test -n "$exclude_expsyms"; then
- $EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T
- $mv "$nlist"T "$nlist"
- fi
-
- # Try sorting and uniquifying the output.
- if grep -v "^: " < "$nlist" |
- if sort -k 3 </dev/null >/dev/null 2>&1; then
- sort -k 3
- else
- sort +2
- fi |
- uniq > "$nlist"S; then
- :
- else
- grep -v "^: " < "$nlist" > "$nlist"S
- fi
-
- if test -f "$nlist"S; then
- eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$dlsyms"'
- else
- $echo '/* NONE */' >> "$output_objdir/$dlsyms"
- fi
-
- $echo >> "$output_objdir/$dlsyms" "\
-
-#undef lt_preloaded_symbols
-
-#if defined (__STDC__) && __STDC__
-# define lt_ptr void *
-#else
-# define lt_ptr char *
-# define const
-#endif
-
-/* The mapping between symbol names and symbols. */
-"
-
- case $host in
- *cygwin* | *mingw* )
- $echo >> "$output_objdir/$dlsyms" "\
-/* DATA imports from DLLs on WIN32 can't be const, because
- runtime relocations are performed -- see ld's documentation
- on pseudo-relocs */
-struct {
-"
- ;;
- * )
- $echo >> "$output_objdir/$dlsyms" "\
-const struct {
-"
- ;;
- esac
-
-
- $echo >> "$output_objdir/$dlsyms" "\
- const char *name;
- lt_ptr address;
-}
-lt_preloaded_symbols[] =
-{\
-"
-
- eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$dlsyms"
-
- $echo >> "$output_objdir/$dlsyms" "\
- {0, (lt_ptr) 0}
-};
-
-/* This works around a problem in FreeBSD linker */
-#ifdef FREEBSD_WORKAROUND
-static const void *lt_preloaded_setup() {
- return lt_preloaded_symbols;
-}
-#endif
-
-#ifdef __cplusplus
-}
-#endif\
-"
- fi
-
- pic_flag_for_symtable=
- case $host in
- # compiling the symbol table file with pic_flag works around
- # a FreeBSD bug that causes programs to crash when -lm is
- # linked before any other PIC object. But we must not use
- # pic_flag when linking with -static. The problem exists in
- # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1.
- *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*)
- case "$compile_command " in
- *" -static "*) ;;
- *) pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND";;
- esac;;
- *-*-hpux*)
- case "$compile_command " in
- *" -static "*) ;;
- *) pic_flag_for_symtable=" $pic_flag";;
- esac
- esac
-
- # Now compile the dynamic symbol file.
- $show "(cd $output_objdir && $LTCC $LTCFLAGS -c$no_builtin_flag$pic_flag_for_symtable \"$dlsyms\")"
- $run eval '(cd $output_objdir && $LTCC $LTCFLAGS -c$no_builtin_flag$pic_flag_for_symtable "$dlsyms")' || exit $?
-
- # Clean up the generated files.
- $show "$rm $output_objdir/$dlsyms $nlist ${nlist}S ${nlist}T"
- $run $rm "$output_objdir/$dlsyms" "$nlist" "${nlist}S" "${nlist}T"
-
- # Transform the symbol file into the correct name.
- case $host in
- *cygwin* | *mingw* )
- if test -f "$output_objdir/${outputname}.def" ; then
- compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}.def $output_objdir/${outputname}S.${objext}%" | $NL2SP`
- finalize_command=`$echo "X$finalize_command" | $SP2NL | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}.def $output_objdir/${outputname}S.${objext}%" | $NL2SP`
- else
- compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%" | $NL2SP`
- finalize_command=`$echo "X$finalize_command" | $SP2NL | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%" | $NL2SP`
- fi
- ;;
- * )
- compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%" | $NL2SP`
- finalize_command=`$echo "X$finalize_command" | $SP2NL | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%" | $NL2SP`
- ;;
- esac
- ;;
- *)
- $echo "$modename: unknown suffix for \`$dlsyms'" 1>&2
- exit $EXIT_FAILURE
- ;;
- esac
- else
- # We keep going just in case the user didn't refer to
- # lt_preloaded_symbols. The linker will fail if global_symbol_pipe
- # really was required.
-
- # Nullify the symbol file.
- compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "s% @SYMFILE@%%" | $NL2SP`
- finalize_command=`$echo "X$finalize_command" | $SP2NL | $Xsed -e "s% @SYMFILE@%%" | $NL2SP`
- fi
-
- if test "$need_relink" = no || test "$build_libtool_libs" != yes; then
- # Replace the output file specification.
- compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e 's%@OUTPUT@%'"$output"'%g' | $NL2SP`
- link_command="$compile_command$compile_rpath"
-
- # We have no uninstalled library dependencies, so finalize right now.
- $show "$link_command"
- $run eval "$link_command"
- exit_status=$?
-
- # Delete the generated files.
- if test -n "$dlsyms"; then
- $show "$rm $output_objdir/${outputname}S.${objext}"
- $run $rm "$output_objdir/${outputname}S.${objext}"
- fi
-
- exit $exit_status
- fi
-
- if test -n "$shlibpath_var"; then
- # We should set the shlibpath_var
- rpath=
- for dir in $temp_rpath; do
- case $dir in
- [\\/]* | [A-Za-z]:[\\/]*)
- # Absolute path.
- rpath="$rpath$dir:"
- ;;
- *)
- # Relative path: add a thisdir entry.
- rpath="$rpath\$thisdir/$dir:"
- ;;
- esac
- done
- temp_rpath="$rpath"
- fi
-
- if test -n "$compile_shlibpath$finalize_shlibpath"; then
- compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command"
- fi
- if test -n "$finalize_shlibpath"; then
- finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_var\" $finalize_command"
- fi
-
- compile_var=
- finalize_var=
- if test -n "$runpath_var"; then
- if test -n "$perm_rpath"; then
- # We should set the runpath_var.
- rpath=
- for dir in $perm_rpath; do
- rpath="$rpath$dir:"
- done
- compile_var="$runpath_var=\"$rpath\$$runpath_var\" "
- fi
- if test -n "$finalize_perm_rpath"; then
- # We should set the runpath_var.
- rpath=
- for dir in $finalize_perm_rpath; do
- rpath="$rpath$dir:"
- done
- finalize_var="$runpath_var=\"$rpath\$$runpath_var\" "
- fi
- fi
-
- if test "$no_install" = yes; then
- # We don't need to create a wrapper script.
- link_command="$compile_var$compile_command$compile_rpath"
- # Replace the output file specification.
- link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'`
- # Delete the old output file.
- $run $rm $output
- # Link the executable and exit
- $show "$link_command"
- $run eval "$link_command" || exit $?
- exit $EXIT_SUCCESS
- fi
-
- if test "$hardcode_action" = relink; then
- # Fast installation is not supported
- link_command="$compile_var$compile_command$compile_rpath"
- relink_command="$finalize_var$finalize_command$finalize_rpath"
-
- $echo "$modename: warning: this platform does not like uninstalled shared libraries" 1>&2
- $echo "$modename: \`$output' will be relinked during installation" 1>&2
- else
- if test "$fast_install" != no; then
- link_command="$finalize_var$compile_command$finalize_rpath"
- if test "$fast_install" = yes; then
- relink_command=`$echo "X$compile_var$compile_command$compile_rpath" | $SP2NL | $Xsed -e 's%@OUTPUT@%\$progdir/\$file%g' | $NL2SP`
- else
- # fast_install is set to needless
- relink_command=
- fi
- else
- link_command="$compile_var$compile_command$compile_rpath"
- relink_command="$finalize_var$finalize_command$finalize_rpath"
- fi
- fi
-
- # Replace the output file specification.
- link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'`
-
- # Delete the old output files.
- $run $rm $output $output_objdir/$outputname $output_objdir/lt-$outputname
-
- $show "$link_command"
- $run eval "$link_command" || exit $?
-
- # Now create the wrapper script.
- $show "creating $output"
-
- # Quote the relink command for shipping.
- if test -n "$relink_command"; then
- # Preserve any variables that may affect compiler behavior
- for var in $variables_saved_for_relink; do
- if eval test -z \"\${$var+set}\"; then
- relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command"
- elif eval var_value=\$$var; test -z "$var_value"; then
- relink_command="$var=; export $var; $relink_command"
- else
- var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"`
- relink_command="$var=\"$var_value\"; export $var; $relink_command"
- fi
- done
- relink_command="(cd `pwd`; $relink_command)"
- relink_command=`$echo "X$relink_command" | $SP2NL | $Xsed -e "$sed_quote_subst" | $NL2SP`
- fi
-
- # Quote $echo for shipping.
- if test "X$echo" = "X$SHELL $progpath --fallback-echo"; then
- case $progpath in
- [\\/]* | [A-Za-z]:[\\/]*) qecho="$SHELL $progpath --fallback-echo";;
- *) qecho="$SHELL `pwd`/$progpath --fallback-echo";;
- esac
- qecho=`$echo "X$qecho" | $Xsed -e "$sed_quote_subst"`
- else
- qecho=`$echo "X$echo" | $Xsed -e "$sed_quote_subst"`
- fi
-
- # Only actually do things if our run command is non-null.
- if test -z "$run"; then
- # win32 will think the script is a binary if it has
- # a .exe suffix, so we strip it off here.
- case $output in
- *.exe) output=`$echo $output|${SED} 's,.exe$,,'` ;;
- esac
- # test for cygwin because mv fails w/o .exe extensions
- case $host in
- *cygwin*)
- exeext=.exe
- outputname=`$echo $outputname|${SED} 's,.exe$,,'` ;;
- *) exeext= ;;
- esac
- case $host in
- *cygwin* | *mingw* )
- output_name=`basename $output`
- output_path=`dirname $output`
- cwrappersource="$output_path/$objdir/lt-$output_name.c"
- cwrapper="$output_path/$output_name.exe"
- $rm $cwrappersource $cwrapper
- trap "$rm $cwrappersource $cwrapper; exit $EXIT_FAILURE" 1 2 15
-
- cat > $cwrappersource <<EOF
-
-/* $cwrappersource - temporary wrapper executable for $objdir/$outputname
- Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP
-
- The $output program cannot be directly executed until all the libtool
- libraries that it depends on are installed.
-
- This wrapper executable should never be moved out of the build directory.
- If it is, it will not operate correctly.
-
- Currently, it simply execs the wrapper *script* "/bin/sh $output",
- but could eventually absorb all of the scripts functionality and
- exec $objdir/$outputname directly.
-*/
-EOF
- cat >> $cwrappersource<<"EOF"
-#include <stdio.h>
-#include <stdlib.h>
-#include <unistd.h>
-#include <malloc.h>
-#include <stdarg.h>
-#include <assert.h>
-#include <string.h>
-#include <ctype.h>
-#include <sys/stat.h>
-
-#if defined(PATH_MAX)
-# define LT_PATHMAX PATH_MAX
-#elif defined(MAXPATHLEN)
-# define LT_PATHMAX MAXPATHLEN
-#else
-# define LT_PATHMAX 1024
-#endif
-
-#ifndef DIR_SEPARATOR
-# define DIR_SEPARATOR '/'
-# define PATH_SEPARATOR ':'
-#endif
-
-#if defined (_WIN32) || defined (__MSDOS__) || defined (__DJGPP__) || \
- defined (__OS2__)
-# define HAVE_DOS_BASED_FILE_SYSTEM
-# ifndef DIR_SEPARATOR_2
-# define DIR_SEPARATOR_2 '\\'
-# endif
-# ifndef PATH_SEPARATOR_2
-# define PATH_SEPARATOR_2 ';'
-# endif
-#endif
-
-#ifndef DIR_SEPARATOR_2
-# define IS_DIR_SEPARATOR(ch) ((ch) == DIR_SEPARATOR)
-#else /* DIR_SEPARATOR_2 */
-# define IS_DIR_SEPARATOR(ch) \
- (((ch) == DIR_SEPARATOR) || ((ch) == DIR_SEPARATOR_2))
-#endif /* DIR_SEPARATOR_2 */
-
-#ifndef PATH_SEPARATOR_2
-# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR)
-#else /* PATH_SEPARATOR_2 */
-# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR_2)
-#endif /* PATH_SEPARATOR_2 */
-
-#define XMALLOC(type, num) ((type *) xmalloc ((num) * sizeof(type)))
-#define XFREE(stale) do { \
- if (stale) { free ((void *) stale); stale = 0; } \
-} while (0)
-
-/* -DDEBUG is fairly common in CFLAGS. */
-#undef DEBUG
-#if defined DEBUGWRAPPER
-# define DEBUG(format, ...) fprintf(stderr, format, __VA_ARGS__)
-#else
-# define DEBUG(format, ...)
-#endif
-
-const char *program_name = NULL;
-
-void * xmalloc (size_t num);
-char * xstrdup (const char *string);
-const char * base_name (const char *name);
-char * find_executable(const char *wrapper);
-int check_executable(const char *path);
-char * strendzap(char *str, const char *pat);
-void lt_fatal (const char *message, ...);
-
-int
-main (int argc, char *argv[])
-{
- char **newargz;
- int i;
-
- program_name = (char *) xstrdup (base_name (argv[0]));
- DEBUG("(main) argv[0] : %s\n",argv[0]);
- DEBUG("(main) program_name : %s\n",program_name);
- newargz = XMALLOC(char *, argc+2);
-EOF
-
- cat >> $cwrappersource <<EOF
- newargz[0] = (char *) xstrdup("$SHELL");
-EOF
-
- cat >> $cwrappersource <<"EOF"
- newargz[1] = find_executable(argv[0]);
- if (newargz[1] == NULL)
- lt_fatal("Couldn't find %s", argv[0]);
- DEBUG("(main) found exe at : %s\n",newargz[1]);
- /* we know the script has the same name, without the .exe */
- /* so make sure newargz[1] doesn't end in .exe */
- strendzap(newargz[1],".exe");
- for (i = 1; i < argc; i++)
- newargz[i+1] = xstrdup(argv[i]);
- newargz[argc+1] = NULL;
-
- for (i=0; i<argc+1; i++)
- {
- DEBUG("(main) newargz[%d] : %s\n",i,newargz[i]);
- ;
- }
-
-EOF
-
- case $host_os in
- mingw*)
- cat >> $cwrappersource <<EOF
- execv("$SHELL",(char const **)newargz);
-EOF
- ;;
- *)
- cat >> $cwrappersource <<EOF
- execv("$SHELL",newargz);
-EOF
- ;;
- esac
-
- cat >> $cwrappersource <<"EOF"
- return 127;
-}
-
-void *
-xmalloc (size_t num)
-{
- void * p = (void *) malloc (num);
- if (!p)
- lt_fatal ("Memory exhausted");
-
- return p;
-}
-
-char *
-xstrdup (const char *string)
-{
- return string ? strcpy ((char *) xmalloc (strlen (string) + 1), string) : NULL
-;
-}
-
-const char *
-base_name (const char *name)
-{
- const char *base;
-
-#if defined (HAVE_DOS_BASED_FILE_SYSTEM)
- /* Skip over the disk name in MSDOS pathnames. */
- if (isalpha ((unsigned char)name[0]) && name[1] == ':')
- name += 2;
-#endif
-
- for (base = name; *name; name++)
- if (IS_DIR_SEPARATOR (*name))
- base = name + 1;
- return base;
-}
-
-int
-check_executable(const char * path)
-{
- struct stat st;
-
- DEBUG("(check_executable) : %s\n", path ? (*path ? path : "EMPTY!") : "NULL!");
- if ((!path) || (!*path))
- return 0;
-
- if ((stat (path, &st) >= 0) &&
- (
- /* MinGW & native WIN32 do not support S_IXOTH or S_IXGRP */
-#if defined (S_IXOTH)
- ((st.st_mode & S_IXOTH) == S_IXOTH) ||
-#endif
-#if defined (S_IXGRP)
- ((st.st_mode & S_IXGRP) == S_IXGRP) ||
-#endif
- ((st.st_mode & S_IXUSR) == S_IXUSR))
- )
- return 1;
- else
- return 0;
-}
-
-/* Searches for the full path of the wrapper. Returns
- newly allocated full path name if found, NULL otherwise */
-char *
-find_executable (const char* wrapper)
-{
- int has_slash = 0;
- const char* p;
- const char* p_next;
- /* static buffer for getcwd */
- char tmp[LT_PATHMAX + 1];
- int tmp_len;
- char* concat_name;
-
- DEBUG("(find_executable) : %s\n", wrapper ? (*wrapper ? wrapper : "EMPTY!") : "NULL!");
-
- if ((wrapper == NULL) || (*wrapper == '\0'))
- return NULL;
-
- /* Absolute path? */
-#if defined (HAVE_DOS_BASED_FILE_SYSTEM)
- if (isalpha ((unsigned char)wrapper[0]) && wrapper[1] == ':')
- {
- concat_name = xstrdup (wrapper);
- if (check_executable(concat_name))
- return concat_name;
- XFREE(concat_name);
- }
- else
- {
-#endif
- if (IS_DIR_SEPARATOR (wrapper[0]))
- {
- concat_name = xstrdup (wrapper);
- if (check_executable(concat_name))
- return concat_name;
- XFREE(concat_name);
- }
-#if defined (HAVE_DOS_BASED_FILE_SYSTEM)
- }
-#endif
-
- for (p = wrapper; *p; p++)
- if (*p == '/')
- {
- has_slash = 1;
- break;
- }
- if (!has_slash)
- {
- /* no slashes; search PATH */
- const char* path = getenv ("PATH");
- if (path != NULL)
- {
- for (p = path; *p; p = p_next)
- {
- const char* q;
- size_t p_len;
- for (q = p; *q; q++)
- if (IS_PATH_SEPARATOR(*q))
- break;
- p_len = q - p;
- p_next = (*q == '\0' ? q : q + 1);
- if (p_len == 0)
- {
- /* empty path: current directory */
- if (getcwd (tmp, LT_PATHMAX) == NULL)
- lt_fatal ("getcwd failed");
- tmp_len = strlen(tmp);
- concat_name = XMALLOC(char, tmp_len + 1 + strlen(wrapper) + 1);
- memcpy (concat_name, tmp, tmp_len);
- concat_name[tmp_len] = '/';
- strcpy (concat_name + tmp_len + 1, wrapper);
- }
- else
- {
- concat_name = XMALLOC(char, p_len + 1 + strlen(wrapper) + 1);
- memcpy (concat_name, p, p_len);
- concat_name[p_len] = '/';
- strcpy (concat_name + p_len + 1, wrapper);
- }
- if (check_executable(concat_name))
- return concat_name;
- XFREE(concat_name);
- }
- }
- /* not found in PATH; assume curdir */
- }
- /* Relative path | not found in path: prepend cwd */
- if (getcwd (tmp, LT_PATHMAX) == NULL)
- lt_fatal ("getcwd failed");
- tmp_len = strlen(tmp);
- concat_name = XMALLOC(char, tmp_len + 1 + strlen(wrapper) + 1);
- memcpy (concat_name, tmp, tmp_len);
- concat_name[tmp_len] = '/';
- strcpy (concat_name + tmp_len + 1, wrapper);
-
- if (check_executable(concat_name))
- return concat_name;
- XFREE(concat_name);
- return NULL;
-}
-
-char *
-strendzap(char *str, const char *pat)
-{
- size_t len, patlen;
-
- assert(str != NULL);
- assert(pat != NULL);
-
- len = strlen(str);
- patlen = strlen(pat);
-
- if (patlen <= len)
- {
- str += len - patlen;
- if (strcmp(str, pat) == 0)
- *str = '\0';
- }
- return str;
-}
-
-static void
-lt_error_core (int exit_status, const char * mode,
- const char * message, va_list ap)
-{
- fprintf (stderr, "%s: %s: ", program_name, mode);
- vfprintf (stderr, message, ap);
- fprintf (stderr, ".\n");
-
- if (exit_status >= 0)
- exit (exit_status);
-}
-
-void
-lt_fatal (const char *message, ...)
-{
- va_list ap;
- va_start (ap, message);
- lt_error_core (EXIT_FAILURE, "FATAL", message, ap);
- va_end (ap);
-}
-EOF
- # we should really use a build-platform specific compiler
- # here, but OTOH, the wrappers (shell script and this C one)
- # are only useful if you want to execute the "real" binary.
- # Since the "real" binary is built for $host, then this
- # wrapper might as well be built for $host, too.
- $run $LTCC $LTCFLAGS -s -o $cwrapper $cwrappersource
- ;;
- esac
- $rm $output
- trap "$rm $output; exit $EXIT_FAILURE" 1 2 15
-
- $echo > $output "\
-#! $SHELL
-
-# $output - temporary wrapper script for $objdir/$outputname
-# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP
-#
-# The $output program cannot be directly executed until all the libtool
-# libraries that it depends on are installed.
-#
-# This wrapper script should never be moved out of the build directory.
-# If it is, it will not operate correctly.
-
-# Sed substitution that helps us do robust quoting. It backslashifies
-# metacharacters that are still active within double-quoted strings.
-Xsed='${SED} -e 1s/^X//'
-sed_quote_subst='$sed_quote_subst'
-
-# Be Bourne compatible (taken from Autoconf:_AS_BOURNE_COMPATIBLE).
-if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then
- emulate sh
- NULLCMD=:
- # Zsh 3.x and 4.x performs word splitting on \${1+\"\$@\"}, which
- # is contrary to our usage. Disable this feature.
- alias -g '\${1+\"\$@\"}'='\"\$@\"'
- setopt NO_GLOB_SUBST
-else
- case \`(set -o) 2>/dev/null\` in *posix*) set -o posix;; esac
-fi
-BIN_SH=xpg4; export BIN_SH # for Tru64
-DUALCASE=1; export DUALCASE # for MKS sh
-
-# The HP-UX ksh and POSIX shell print the target directory to stdout
-# if CDPATH is set.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-relink_command=\"$relink_command\"
-
-# This environment variable determines our operation mode.
-if test \"\$libtool_install_magic\" = \"$magic\"; then
- # install mode needs the following variable:
- notinst_deplibs='$notinst_deplibs'
-else
- # When we are sourced in execute mode, \$file and \$echo are already set.
- if test \"\$libtool_execute_magic\" != \"$magic\"; then
- echo=\"$qecho\"
- file=\"\$0\"
- # Make sure echo works.
- if test \"X\$1\" = X--no-reexec; then
- # Discard the --no-reexec flag, and continue.
- shift
- elif test \"X\`(\$echo '\t') 2>/dev/null\`\" = 'X\t'; then
- # Yippee, \$echo works!
- :
- else
- # Restart under the correct shell, and then maybe \$echo will work.
- exec $SHELL \"\$0\" --no-reexec \${1+\"\$@\"}
- fi
- fi\
-"
- $echo >> $output "\
-
- # Find the directory that this script lives in.
- thisdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*$%%'\`
- test \"x\$thisdir\" = \"x\$file\" && thisdir=.
-
- # Follow symbolic links until we get to the real thisdir.
- file=\`ls -ld \"\$file\" | ${SED} -n 's/.*-> //p'\`
- while test -n \"\$file\"; do
- destdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*\$%%'\`
-
- # If there was a directory component, then change thisdir.
- if test \"x\$destdir\" != \"x\$file\"; then
- case \"\$destdir\" in
- [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;;
- *) thisdir=\"\$thisdir/\$destdir\" ;;
- esac
- fi
-
- file=\`\$echo \"X\$file\" | \$Xsed -e 's%^.*/%%'\`
- file=\`ls -ld \"\$thisdir/\$file\" | ${SED} -n 's/.*-> //p'\`
- done
-
- # Try to get the absolute directory name.
- absdir=\`cd \"\$thisdir\" && pwd\`
- test -n \"\$absdir\" && thisdir=\"\$absdir\"
-"
-
- if test "$fast_install" = yes; then
- $echo >> $output "\
- program=lt-'$outputname'$exeext
- progdir=\"\$thisdir/$objdir\"
-
- if test ! -f \"\$progdir/\$program\" || \\
- { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | ${SED} 1q\`; \\
- test \"X\$file\" != \"X\$progdir/\$program\"; }; then
-
- file=\"\$\$-\$program\"
-
- if test ! -d \"\$progdir\"; then
- $mkdir \"\$progdir\"
- else
- $rm \"\$progdir/\$file\"
- fi"
-
- $echo >> $output "\
-
- # relink executable if necessary
- if test -n \"\$relink_command\"; then
- if relink_command_output=\`eval \$relink_command 2>&1\`; then :
- else
- $echo \"\$relink_command_output\" >&2
- $rm \"\$progdir/\$file\"
- exit $EXIT_FAILURE
- fi
- fi
-
- $mv \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null ||
- { $rm \"\$progdir/\$program\";
- $mv \"\$progdir/\$file\" \"\$progdir/\$program\"; }
- $rm \"\$progdir/\$file\"
- fi"
- else
- $echo >> $output "\
- program='$outputname'
- progdir=\"\$thisdir/$objdir\"
-"
- fi
-
- $echo >> $output "\
-
- if test -f \"\$progdir/\$program\"; then"
-
- # Export our shlibpath_var if we have one.
- if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
- $echo >> $output "\
- # Add our own library path to $shlibpath_var
- $shlibpath_var=\"$temp_rpath\$$shlibpath_var\"
-
- # Some systems cannot cope with colon-terminated $shlibpath_var
- # The second colon is a workaround for a bug in BeOS R4 sed
- $shlibpath_var=\`\$echo \"X\$$shlibpath_var\" | \$Xsed -e 's/::*\$//'\`
-
- export $shlibpath_var
-"
- fi
-
- # fixup the dll searchpath if we need to.
- if test -n "$dllsearchpath"; then
- $echo >> $output "\
- # Add the dll search path components to the executable PATH
- PATH=$dllsearchpath:\$PATH
-"
- fi
-
- $echo >> $output "\
- if test \"\$libtool_execute_magic\" != \"$magic\"; then
- # Run the actual program with our arguments.
-
- # Make sure env LD_LIBRARY_PATH does not mess us up
- if test -n \"\${LD_LIBRARY_PATH+set}\"; then
- export LD_LIBRARY_PATH=\$progdir:\$LD_LIBRARY_PATH
- fi
-"
- case $host in
- # Backslashes separate directories on plain windows
- *-*-mingw | *-*-os2*)
- $echo >> $output "\
- exec \"\$progdir\\\\\$program\" \${1+\"\$@\"}
-"
- ;;
-
- *)
- $echo >> $output "\
- exec \"\$progdir/\$program\" \${1+\"\$@\"}
-"
- ;;
- esac
- $echo >> $output "\
- \$echo \"\$0: cannot exec \$program \$*\"
- exit $EXIT_FAILURE
- fi
- else
- # The program doesn't exist.
- \$echo \"\$0: error: \\\`\$progdir/\$program' does not exist\" 1>&2
- \$echo \"This script is just a wrapper for \$program.\" 1>&2
- $echo \"See the $PACKAGE documentation for more information.\" 1>&2
- exit $EXIT_FAILURE
- fi
-fi\
-"
- chmod +x $output
- fi
- exit $EXIT_SUCCESS
- ;;
- esac
-
- # See if we need to build an old-fashioned archive.
- for oldlib in $oldlibs; do
-
- if test "$build_libtool_libs" = convenience; then
- oldobjs="$libobjs_save"
- addlibs="$convenience"
- build_libtool_libs=no
- else
- if test "$build_libtool_libs" = module; then
- oldobjs="$libobjs_save"
- build_libtool_libs=no
- else
- oldobjs="$old_deplibs $non_pic_objects"
- fi
- addlibs="$old_convenience"
- fi
-
- if test -n "$addlibs"; then
- gentop="$output_objdir/${outputname}x"
- generated="$generated $gentop"
-
- func_extract_archives $gentop $addlibs
- oldobjs="$oldobjs $func_extract_archives_result"
- fi
-
- # Do each command in the archive commands.
- if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then
- cmds=$old_archive_from_new_cmds
- else
- # POSIX demands no paths to be encoded in archives. We have
- # to avoid creating archives with duplicate basenames if we
- # might have to extract them afterwards, e.g., when creating a
- # static archive out of a convenience library, or when linking
- # the entirety of a libtool archive into another (currently
- # not supported by libtool).
- if (for obj in $oldobjs
- do
- $echo "X$obj" | $Xsed -e 's%^.*/%%'
- done | sort | sort -uc >/dev/null 2>&1); then
- :
- else
- $echo "copying selected object files to avoid basename conflicts..."
-
- if test -z "$gentop"; then
- gentop="$output_objdir/${outputname}x"
- generated="$generated $gentop"
-
- $show "${rm}r $gentop"
- $run ${rm}r "$gentop"
- $show "$mkdir $gentop"
- $run $mkdir "$gentop"
- exit_status=$?
- if test "$exit_status" -ne 0 && test ! -d "$gentop"; then
- exit $exit_status
- fi
- fi
-
- save_oldobjs=$oldobjs
- oldobjs=
- counter=1
- for obj in $save_oldobjs
- do
- objbase=`$echo "X$obj" | $Xsed -e 's%^.*/%%'`
- case " $oldobjs " in
- " ") oldobjs=$obj ;;
- *[\ /]"$objbase "*)
- while :; do
- # Make sure we don't pick an alternate name that also
- # overlaps.
- newobj=lt$counter-$objbase
- counter=`expr $counter + 1`
- case " $oldobjs " in
- *[\ /]"$newobj "*) ;;
- *) if test ! -f "$gentop/$newobj"; then break; fi ;;
- esac
- done
- $show "ln $obj $gentop/$newobj || cp $obj $gentop/$newobj"
- $run ln "$obj" "$gentop/$newobj" ||
- $run cp "$obj" "$gentop/$newobj"
- oldobjs="$oldobjs $gentop/$newobj"
- ;;
- *) oldobjs="$oldobjs $obj" ;;
- esac
- done
- fi
-
- eval cmds=\"$old_archive_cmds\"
-
- if len=`expr "X$cmds" : ".*"` &&
- test "$len" -le "$max_cmd_len" || test "$max_cmd_len" -le -1; then
- cmds=$old_archive_cmds
- else
- # the command line is too long to link in one step, link in parts
- $echo "using piecewise archive linking..."
- save_RANLIB=$RANLIB
- RANLIB=:
- objlist=
- concat_cmds=
- save_oldobjs=$oldobjs
-
- # Is there a better way of finding the last object in the list?
- for obj in $save_oldobjs
- do
- last_oldobj=$obj
- done
- for obj in $save_oldobjs
- do
- oldobjs="$objlist $obj"
- objlist="$objlist $obj"
- eval test_cmds=\"$old_archive_cmds\"
- if len=`expr "X$test_cmds" : ".*" 2>/dev/null` &&
- test "$len" -le "$max_cmd_len"; then
- :
- else
- # the above command should be used before it gets too long
- oldobjs=$objlist
- if test "$obj" = "$last_oldobj" ; then
- RANLIB=$save_RANLIB
- fi
- test -z "$concat_cmds" || concat_cmds=$concat_cmds~
- eval concat_cmds=\"\${concat_cmds}$old_archive_cmds\"
- objlist=
- fi
- done
- RANLIB=$save_RANLIB
- oldobjs=$objlist
- if test "X$oldobjs" = "X" ; then
- eval cmds=\"\$concat_cmds\"
- else
- eval cmds=\"\$concat_cmds~\$old_archive_cmds\"
- fi
- fi
- fi
- save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- eval cmd=\"$cmd\"
- IFS="$save_ifs"
- $show "$cmd"
- $run eval "$cmd" || exit $?
- done
- IFS="$save_ifs"
- done
-
- if test -n "$generated"; then
- $show "${rm}r$generated"
- $run ${rm}r$generated
- fi
-
- # Now create the libtool archive.
- case $output in
- *.la)
- old_library=
- test "$build_old_libs" = yes && old_library="$libname.$libext"
- $show "creating $output"
-
- # Preserve any variables that may affect compiler behavior
- for var in $variables_saved_for_relink; do
- if eval test -z \"\${$var+set}\"; then
- relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command"
- elif eval var_value=\$$var; test -z "$var_value"; then
- relink_command="$var=; export $var; $relink_command"
- else
- var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"`
- relink_command="$var=\"$var_value\"; export $var; $relink_command"
- fi
- done
- # Quote the link command for shipping.
- relink_command="(cd `pwd`; $SHELL $progpath $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)"
- relink_command=`$echo "X$relink_command" | $SP2NL | $Xsed -e "$sed_quote_subst" | $NL2SP`
- if test "$hardcode_automatic" = yes ; then
- relink_command=
- fi
-
-
- # Only create the output if not a dry run.
- if test -z "$run"; then
- for installed in no yes; do
- if test "$installed" = yes; then
- if test -z "$install_libdir"; then
- break
- fi
- output="$output_objdir/$outputname"i
- # Replace all uninstalled libtool libraries with the installed ones
- newdependency_libs=
- for deplib in $dependency_libs; do
- case $deplib in
- *.la)
- name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'`
- eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
- if test -z "$libdir"; then
- $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
- exit $EXIT_FAILURE
- fi
- newdependency_libs="$newdependency_libs $libdir/$name"
- ;;
- *) newdependency_libs="$newdependency_libs $deplib" ;;
- esac
- done
- dependency_libs="$newdependency_libs"
- newdlfiles=
- for lib in $dlfiles; do
- name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
- eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
- if test -z "$libdir"; then
- $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
- exit $EXIT_FAILURE
- fi
- newdlfiles="$newdlfiles $libdir/$name"
- done
- dlfiles="$newdlfiles"
- newdlprefiles=
- for lib in $dlprefiles; do
- name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
- eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
- if test -z "$libdir"; then
- $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
- exit $EXIT_FAILURE
- fi
- newdlprefiles="$newdlprefiles $libdir/$name"
- done
- dlprefiles="$newdlprefiles"
- else
- newdlfiles=
- for lib in $dlfiles; do
- case $lib in
- [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;;
- *) abs=`pwd`"/$lib" ;;
- esac
- newdlfiles="$newdlfiles $abs"
- done
- dlfiles="$newdlfiles"
- newdlprefiles=
- for lib in $dlprefiles; do
- case $lib in
- [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;;
- *) abs=`pwd`"/$lib" ;;
- esac
- newdlprefiles="$newdlprefiles $abs"
- done
- dlprefiles="$newdlprefiles"
- fi
- $rm $output
- # place dlname in correct position for cygwin
- tdlname=$dlname
- case $host,$output,$installed,$module,$dlname in
- *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;;
- esac
- $echo > $output "\
-# $outputname - a libtool library file
-# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP
-#
-# Please DO NOT delete this file!
-# It is necessary for linking the library.
-
-# The name that we can dlopen(3).
-dlname='$tdlname'
-
-# Names of this library.
-library_names='$library_names'
-
-# The name of the static archive.
-old_library='$old_library'
-
-# Libraries that this one depends upon.
-dependency_libs='$dependency_libs'
-
-# Version information for $libname.
-current=$current
-age=$age
-revision=$revision
-
-# Is this an already installed library?
-installed=$installed
-
-# Should we warn about portability when linking against -modules?
-shouldnotlink=$module
-
-# Files to dlopen/dlpreopen
-dlopen='$dlfiles'
-dlpreopen='$dlprefiles'
-
-# Directory that this library needs to be installed in:
-libdir='$install_libdir'"
- if test "$installed" = no && test "$need_relink" = yes; then
- $echo >> $output "\
-relink_command=\"$relink_command\""
- fi
- done
- fi
-
- # Do a symbolic link so that the libtool archive can be found in
- # LD_LIBRARY_PATH before the program is installed.
- $show "(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)"
- $run eval '(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)' || exit $?
- ;;
- esac
- exit $EXIT_SUCCESS
- ;;
-
- # libtool install mode
- install)
- modename="$modename: install"
-
- # There may be an optional sh(1) argument at the beginning of
- # install_prog (especially on Windows NT).
- if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh ||
- # Allow the use of GNU shtool's install command.
- $echo "X$nonopt" | grep shtool > /dev/null; then
- # Aesthetically quote it.
- arg=`$echo "X$nonopt" | $Xsed -e "$sed_quote_subst"`
- case $arg in
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
- arg="\"$arg\""
- ;;
- esac
- install_prog="$arg "
- arg="$1"
- shift
- else
- install_prog=
- arg=$nonopt
- fi
-
- # The real first argument should be the name of the installation program.
- # Aesthetically quote it.
- arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
- case $arg in
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
- arg="\"$arg\""
- ;;
- esac
- install_prog="$install_prog$arg"
-
- # We need to accept at least all the BSD install flags.
- dest=
- files=
- opts=
- prev=
- install_type=
- isdir=no
- stripme=
- for arg
- do
- if test -n "$dest"; then
- files="$files $dest"
- dest=$arg
- continue
- fi
-
- case $arg in
- -d) isdir=yes ;;
- -f)
- case " $install_prog " in
- *[\\\ /]cp\ *) ;;
- *) prev=$arg ;;
- esac
- ;;
- -g | -m | -o) prev=$arg ;;
- -s)
- stripme=" -s"
- continue
- ;;
- -*)
- ;;
- *)
- # If the previous option needed an argument, then skip it.
- if test -n "$prev"; then
- prev=
- else
- dest=$arg
- continue
- fi
- ;;
- esac
-
- # Aesthetically quote the argument.
- arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
- case $arg in
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
- arg="\"$arg\""
- ;;
- esac
- install_prog="$install_prog $arg"
- done
-
- if test -z "$install_prog"; then
- $echo "$modename: you must specify an install program" 1>&2
- $echo "$help" 1>&2
- exit $EXIT_FAILURE
- fi
-
- if test -n "$prev"; then
- $echo "$modename: the \`$prev' option requires an argument" 1>&2
- $echo "$help" 1>&2
- exit $EXIT_FAILURE
- fi
-
- if test -z "$files"; then
- if test -z "$dest"; then
- $echo "$modename: no file or destination specified" 1>&2
- else
- $echo "$modename: you must specify a destination" 1>&2
- fi
- $echo "$help" 1>&2
- exit $EXIT_FAILURE
- fi
-
- # Strip any trailing slash from the destination.
- dest=`$echo "X$dest" | $Xsed -e 's%/$%%'`
-
- # Check to see that the destination is a directory.
- test -d "$dest" && isdir=yes
- if test "$isdir" = yes; then
- destdir="$dest"
- destname=
- else
- destdir=`$echo "X$dest" | $Xsed -e 's%/[^/]*$%%'`
- test "X$destdir" = "X$dest" && destdir=.
- destname=`$echo "X$dest" | $Xsed -e 's%^.*/%%'`
-
- # Not a directory, so check to see that there is only one file specified.
- set dummy $files
- if test "$#" -gt 2; then
- $echo "$modename: \`$dest' is not a directory" 1>&2
- $echo "$help" 1>&2
- exit $EXIT_FAILURE
- fi
- fi
- case $destdir in
- [\\/]* | [A-Za-z]:[\\/]*) ;;
- *)
- for file in $files; do
- case $file in
- *.lo) ;;
- *)
- $echo "$modename: \`$destdir' must be an absolute directory name" 1>&2
- $echo "$help" 1>&2
- exit $EXIT_FAILURE
- ;;
- esac
- done
- ;;
- esac
-
- # This variable tells wrapper scripts just to set variables rather
- # than running their programs.
- libtool_install_magic="$magic"
-
- staticlibs=
- future_libdirs=
- current_libdirs=
- for file in $files; do
-
- # Do each installation.
- case $file in
- *.$libext)
- # Do the static libraries later.
- staticlibs="$staticlibs $file"
- ;;
-
- *.la)
- # Check to see that this really is a libtool archive.
- if (${SED} -e '2q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
- else
- $echo "$modename: \`$file' is not a valid libtool archive" 1>&2
- $echo "$help" 1>&2
- exit $EXIT_FAILURE
- fi
-
- library_names=
- old_library=
- relink_command=
- # If there is no directory component, then add one.
- case $file in
- */* | *\\*) . $file ;;
- *) . ./$file ;;
- esac
-
- # Add the libdir to current_libdirs if it is the destination.
- if test "X$destdir" = "X$libdir"; then
- case "$current_libdirs " in
- *" $libdir "*) ;;
- *) current_libdirs="$current_libdirs $libdir" ;;
- esac
- else
- # Note the libdir as a future libdir.
- case "$future_libdirs " in
- *" $libdir "*) ;;
- *) future_libdirs="$future_libdirs $libdir" ;;
- esac
- fi
-
- dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`/
- test "X$dir" = "X$file/" && dir=
- dir="$dir$objdir"
-
- if test -n "$relink_command"; then
- # Determine the prefix the user has applied to our future dir.
- inst_prefix_dir=`$echo "$destdir" | $SED "s%$libdir\$%%"`
-
- # Don't allow the user to place us outside of our expected
- # location b/c this prevents finding dependent libraries that
- # are installed to the same prefix.
- # At present, this check doesn't affect windows .dll's that
- # are installed into $libdir/../bin (currently, that works fine)
- # but it's something to keep an eye on.
- if test "$inst_prefix_dir" = "$destdir"; then
- $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
- exit $EXIT_FAILURE
- fi
-
- if test -n "$inst_prefix_dir"; then
- # Stick the inst_prefix_dir data into the link command.
- relink_command=`$echo "$relink_command" | $SP2NL | $SED "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%" | $NL2SP`
- else
- relink_command=`$echo "$relink_command" | $SP2NL | $SED "s%@inst_prefix_dir@%%" | $NL2SP`
- fi
-
- $echo "$modename: warning: relinking \`$file'" 1>&2
- $show "$relink_command"
- if $run eval "$relink_command"; then :
- else
- $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2
- exit $EXIT_FAILURE
- fi
- fi
-
- # See the names of the shared library.
- set dummy $library_names
- if test -n "$2"; then
- realname="$2"
- shift
- shift
-
- srcname="$realname"
- test -n "$relink_command" && srcname="$realname"T
-
- # Install the shared library and build the symlinks.
- $show "$install_prog $dir/$srcname $destdir/$realname"
- $run eval "$install_prog $dir/$srcname $destdir/$realname" || exit $?
- if test -n "$stripme" && test -n "$striplib"; then
- $show "$striplib $destdir/$realname"
- $run eval "$striplib $destdir/$realname" || exit $?
- fi
-
- if test "$#" -gt 0; then
- # Delete the old symlinks, and create new ones.
- # Try `ln -sf' first, because the `ln' binary might depend on
- # the symlink we replace! Solaris /bin/ln does not understand -f,
- # so we also need to try rm && ln -s.
- for linkname
- do
- if test "$linkname" != "$realname"; then
- $show "(cd $destdir && { $LN_S -f $realname $linkname || { $rm $linkname && $LN_S $realname $linkname; }; })"
- $run eval "(cd $destdir && { $LN_S -f $realname $linkname || { $rm $linkname && $LN_S $realname $linkname; }; })"
- fi
- done
- fi
-
- # Do each command in the postinstall commands.
- lib="$destdir/$realname"
- cmds=$postinstall_cmds
- save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- eval cmd=\"$cmd\"
- $show "$cmd"
- $run eval "$cmd" || {
- lt_exit=$?
-
- # Restore the uninstalled library and exit
- if test "$mode" = relink; then
- $run eval '(cd $output_objdir && $rm ${realname}T && $mv ${realname}U $realname)'
- fi
-
- exit $lt_exit
- }
- done
- IFS="$save_ifs"
- fi
-
- # Install the pseudo-library for information purposes.
- name=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
- instname="$dir/$name"i
- $show "$install_prog $instname $destdir/$name"
- $run eval "$install_prog $instname $destdir/$name" || exit $?
-
- # Maybe install the static library, too.
- test -n "$old_library" && staticlibs="$staticlibs $dir/$old_library"
- ;;
-
- *.lo)
- # Install (i.e. copy) a libtool object.
-
- # Figure out destination file name, if it wasn't already specified.
- if test -n "$destname"; then
- destfile="$destdir/$destname"
- else
- destfile=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
- destfile="$destdir/$destfile"
- fi
-
- # Deduce the name of the destination old-style object file.
- case $destfile in
- *.lo)
- staticdest=`$echo "X$destfile" | $Xsed -e "$lo2o"`
- ;;
- *.$objext)
- staticdest="$destfile"
- destfile=
- ;;
- *)
- $echo "$modename: cannot copy a libtool object to \`$destfile'" 1>&2
- $echo "$help" 1>&2
- exit $EXIT_FAILURE
- ;;
- esac
-
- # Install the libtool object if requested.
- if test -n "$destfile"; then
- $show "$install_prog $file $destfile"
- $run eval "$install_prog $file $destfile" || exit $?
- fi
-
- # Install the old object if enabled.
- if test "$build_old_libs" = yes; then
- # Deduce the name of the old-style object file.
- staticobj=`$echo "X$file" | $Xsed -e "$lo2o"`
-
- $show "$install_prog $staticobj $staticdest"
- $run eval "$install_prog \$staticobj \$staticdest" || exit $?
- fi
- exit $EXIT_SUCCESS
- ;;
-
- *)
- # Figure out destination file name, if it wasn't already specified.
- if test -n "$destname"; then
- destfile="$destdir/$destname"
- else
- destfile=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
- destfile="$destdir/$destfile"
- fi
-
- # If the file is missing, and there is a .exe on the end, strip it
- # because it is most likely a libtool script we actually want to
- # install
- stripped_ext=""
- case $file in
- *.exe)
- if test ! -f "$file"; then
- file=`$echo $file|${SED} 's,.exe$,,'`
- stripped_ext=".exe"
- fi
- ;;
- esac
-
- # Do a test to see if this is really a libtool program.
- case $host in
- *cygwin*|*mingw*)
- wrapper=`$echo $file | ${SED} -e 's,.exe$,,'`
- ;;
- *)
- wrapper=$file
- ;;
- esac
- if (${SED} -e '4q' $wrapper | grep "^# Generated by .*$PACKAGE")>/dev/null 2>&1; then
- notinst_deplibs=
- relink_command=
-
- # Note that it is not necessary on cygwin/mingw to append a dot to
- # foo even if both foo and FILE.exe exist: automatic-append-.exe
- # behavior happens only for exec(3), not for open(2)! Also, sourcing
- # `FILE.' does not work on cygwin managed mounts.
- #
- # If there is no directory component, then add one.
- case $wrapper in
- */* | *\\*) . ${wrapper} ;;
- *) . ./${wrapper} ;;
- esac
-
- # Check the variables that should have been set.
- if test -z "$notinst_deplibs"; then
- $echo "$modename: invalid libtool wrapper script \`$wrapper'" 1>&2
- exit $EXIT_FAILURE
- fi
-
- finalize=yes
- for lib in $notinst_deplibs; do
- # Check to see that each library is installed.
- libdir=
- if test -f "$lib"; then
- # If there is no directory component, then add one.
- case $lib in
- */* | *\\*) . $lib ;;
- *) . ./$lib ;;
- esac
- fi
- libfile="$libdir/"`$echo "X$lib" | $Xsed -e 's%^.*/%%g'` ### testsuite: skip nested quoting test
- if test -n "$libdir" && test ! -f "$libfile"; then
- $echo "$modename: warning: \`$lib' has not been installed in \`$libdir'" 1>&2
- finalize=no
- fi
- done
-
- relink_command=
- # Note that it is not necessary on cygwin/mingw to append a dot to
- # foo even if both foo and FILE.exe exist: automatic-append-.exe
- # behavior happens only for exec(3), not for open(2)! Also, sourcing
- # `FILE.' does not work on cygwin managed mounts.
- #
- # If there is no directory component, then add one.
- case $wrapper in
- */* | *\\*) . ${wrapper} ;;
- *) . ./${wrapper} ;;
- esac
-
- outputname=
- if test "$fast_install" = no && test -n "$relink_command"; then
- if test "$finalize" = yes && test -z "$run"; then
- tmpdir=`func_mktempdir`
- file=`$echo "X$file$stripped_ext" | $Xsed -e 's%^.*/%%'`
- outputname="$tmpdir/$file"
- # Replace the output file specification.
- relink_command=`$echo "X$relink_command" | $SP2NL | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g' | $NL2SP`
-
- $show "$relink_command"
- if $run eval "$relink_command"; then :
- else
- $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2
- ${rm}r "$tmpdir"
- continue
- fi
- file="$outputname"
- else
- $echo "$modename: warning: cannot relink \`$file'" 1>&2
- fi
- else
- # Install the binary that we compiled earlier.
- file=`$echo "X$file$stripped_ext" | $Xsed -e "s%\([^/]*\)$%$objdir/\1%"`
- fi
- fi
-
- # remove .exe since cygwin /usr/bin/install will append another
- # one anyway
- case $install_prog,$host in
- */usr/bin/install*,*cygwin*)
- case $file:$destfile in
- *.exe:*.exe)
- # this is ok
- ;;
- *.exe:*)
- destfile=$destfile.exe
- ;;
- *:*.exe)
- destfile=`$echo $destfile | ${SED} -e 's,.exe$,,'`
- ;;
- esac
- ;;
- esac
- $show "$install_prog$stripme $file $destfile"
- $run eval "$install_prog\$stripme \$file \$destfile" || exit $?
- test -n "$outputname" && ${rm}r "$tmpdir"
- ;;
- esac
- done
-
- for file in $staticlibs; do
- name=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
-
- # Set up the ranlib parameters.
- oldlib="$destdir/$name"
-
- $show "$install_prog $file $oldlib"
- $run eval "$install_prog \$file \$oldlib" || exit $?
-
- if test -n "$stripme" && test -n "$old_striplib"; then
- $show "$old_striplib $oldlib"
- $run eval "$old_striplib $oldlib" || exit $?
- fi
-
- # Do each command in the postinstall commands.
- cmds=$old_postinstall_cmds
- save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- eval cmd=\"$cmd\"
- $show "$cmd"
- $run eval "$cmd" || exit $?
- done
- IFS="$save_ifs"
- done
-
- if test -n "$future_libdirs"; then
- $echo "$modename: warning: remember to run \`$progname --finish$future_libdirs'" 1>&2
- fi
-
- if test -n "$current_libdirs"; then
- # Maybe just do a dry run.
- test -n "$run" && current_libdirs=" -n$current_libdirs"
- exec_cmd='$SHELL $progpath $preserve_args --finish$current_libdirs'
- else
- exit $EXIT_SUCCESS
- fi
- ;;
-
- # libtool finish mode
- finish)
- modename="$modename: finish"
- libdirs="$nonopt"
- admincmds=
-
- if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then
- for dir
- do
- libdirs="$libdirs $dir"
- done
-
- for libdir in $libdirs; do
- if test -n "$finish_cmds"; then
- # Do each command in the finish commands.
- cmds=$finish_cmds
- save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- eval cmd=\"$cmd\"
- $show "$cmd"
- $run eval "$cmd" || admincmds="$admincmds
- $cmd"
- done
- IFS="$save_ifs"
- fi
- if test -n "$finish_eval"; then
- # Do the single finish_eval.
- eval cmds=\"$finish_eval\"
- $run eval "$cmds" || admincmds="$admincmds
- $cmds"
- fi
- done
- fi
-
- # Exit here if they wanted silent mode.
- test "$show" = : && exit $EXIT_SUCCESS
-
- $echo "X----------------------------------------------------------------------" | $Xsed
- $echo "Libraries have been installed in:"
- for libdir in $libdirs; do
- $echo " $libdir"
- done
- $echo
- $echo "If you ever happen to want to link against installed libraries"
- $echo "in a given directory, LIBDIR, you must either use libtool, and"
- $echo "specify the full pathname of the library, or use the \`-LLIBDIR'"
- $echo "flag during linking and do at least one of the following:"
- if test -n "$shlibpath_var"; then
- $echo " - add LIBDIR to the \`$shlibpath_var' environment variable"
- $echo " during execution"
- fi
- if test -n "$runpath_var"; then
- $echo " - add LIBDIR to the \`$runpath_var' environment variable"
- $echo " during linking"
- fi
- if test -n "$hardcode_libdir_flag_spec"; then
- libdir=LIBDIR
- eval flag=\"$hardcode_libdir_flag_spec\"
-
- $echo " - use the \`$flag' linker flag"
- fi
- if test -n "$admincmds"; then
- $echo " - have your system administrator run these commands:$admincmds"
- fi
- if test -f /etc/ld.so.conf; then
- $echo " - have your system administrator add LIBDIR to \`/etc/ld.so.conf'"
- fi
- $echo
- $echo "See any operating system documentation about shared libraries for"
- $echo "more information, such as the ld(1) and ld.so(8) manual pages."
- $echo "X----------------------------------------------------------------------" | $Xsed
- exit $EXIT_SUCCESS
- ;;
-
- # libtool execute mode
- execute)
- modename="$modename: execute"
-
- # The first argument is the command name.
- cmd="$nonopt"
- if test -z "$cmd"; then
- $echo "$modename: you must specify a COMMAND" 1>&2
- $echo "$help"
- exit $EXIT_FAILURE
- fi
-
- # Handle -dlopen flags immediately.
- for file in $execute_dlfiles; do
- if test ! -f "$file"; then
- $echo "$modename: \`$file' is not a file" 1>&2
- $echo "$help" 1>&2
- exit $EXIT_FAILURE
- fi
-
- dir=
- case $file in
- *.la)
- # Check to see that this really is a libtool archive.
- if (${SED} -e '2q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
- else
- $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
- $echo "$help" 1>&2
- exit $EXIT_FAILURE
- fi
-
- # Read the libtool library.
- dlname=
- library_names=
-
- # If there is no directory component, then add one.
- case $file in
- */* | *\\*) . $file ;;
- *) . ./$file ;;
- esac
-
- # Skip this library if it cannot be dlopened.
- if test -z "$dlname"; then
- # Warn if it was a shared library.
- test -n "$library_names" && $echo "$modename: warning: \`$file' was not linked with \`-export-dynamic'"
- continue
- fi
-
- dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`
- test "X$dir" = "X$file" && dir=.
-
- if test -f "$dir/$objdir/$dlname"; then
- dir="$dir/$objdir"
- else
- if test ! -f "$dir/$dlname"; then
- $echo "$modename: cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" 1>&2
- exit $EXIT_FAILURE
- fi
- fi
- ;;
-
- *.lo)
- # Just add the directory containing the .lo file.
- dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`
- test "X$dir" = "X$file" && dir=.
- ;;
-
- *)
- $echo "$modename: warning \`-dlopen' is ignored for non-libtool libraries and objects" 1>&2
- continue
- ;;
- esac
-
- # Get the absolute pathname.
- absdir=`cd "$dir" && pwd`
- test -n "$absdir" && dir="$absdir"
-
- # Now add the directory to shlibpath_var.
- if eval "test -z \"\$$shlibpath_var\""; then
- eval "$shlibpath_var=\"\$dir\""
- else
- eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\""
- fi
- done
-
- # This variable tells wrapper scripts just to set shlibpath_var
- # rather than running their programs.
- libtool_execute_magic="$magic"
-
- # Check if any of the arguments is a wrapper script.
- args=
- for file
- do
- case $file in
- -*) ;;
- *)
- # Do a test to see if this is really a libtool program.
- if (${SED} -e '4q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
- # If there is no directory component, then add one.
- case $file in
- */* | *\\*) . $file ;;
- *) . ./$file ;;
- esac
-
- # Transform arg to wrapped name.
- file="$progdir/$program"
- fi
- ;;
- esac
- # Quote arguments (to preserve shell metacharacters).
- file=`$echo "X$file" | $Xsed -e "$sed_quote_subst"`
- args="$args \"$file\""
- done
-
- if test -z "$run"; then
- if test -n "$shlibpath_var"; then
- # Export the shlibpath_var.
- eval "export $shlibpath_var"
- fi
-
- # Restore saved environment variables
- for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
- do
- eval "if test \"\${save_$lt_var+set}\" = set; then
- $lt_var=\$save_$lt_var; export $lt_var
- fi"
- done
-
- # Now prepare to actually exec the command.
- exec_cmd="\$cmd$args"
- else
- # Display what would be done.
- if test -n "$shlibpath_var"; then
- eval "\$echo \"\$shlibpath_var=\$$shlibpath_var\""
- $echo "export $shlibpath_var"
- fi
- $echo "$cmd$args"
- exit $EXIT_SUCCESS
- fi
- ;;
-
- # libtool clean and uninstall mode
- clean | uninstall)
- modename="$modename: $mode"
- rm="$nonopt"
- files=
- rmforce=
- exit_status=0
-
- # This variable tells wrapper scripts just to set variables rather
- # than running their programs.
- libtool_install_magic="$magic"
-
- for arg
- do
- case $arg in
- -f) rm="$rm $arg"; rmforce=yes ;;
- -*) rm="$rm $arg" ;;
- *) files="$files $arg" ;;
- esac
- done
-
- if test -z "$rm"; then
- $echo "$modename: you must specify an RM program" 1>&2
- $echo "$help" 1>&2
- exit $EXIT_FAILURE
- fi
-
- rmdirs=
-
- origobjdir="$objdir"
- for file in $files; do
- dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`
- if test "X$dir" = "X$file"; then
- dir=.
- objdir="$origobjdir"
- else
- objdir="$dir/$origobjdir"
- fi
- name=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
- test "$mode" = uninstall && objdir="$dir"
-
- # Remember objdir for removal later, being careful to avoid duplicates
- if test "$mode" = clean; then
- case " $rmdirs " in
- *" $objdir "*) ;;
- *) rmdirs="$rmdirs $objdir" ;;
- esac
- fi
-
- # Don't error if the file doesn't exist and rm -f was used.
- if (test -L "$file") >/dev/null 2>&1 \
- || (test -h "$file") >/dev/null 2>&1 \
- || test -f "$file"; then
- :
- elif test -d "$file"; then
- exit_status=1
- continue
- elif test "$rmforce" = yes; then
- continue
- fi
-
- rmfiles="$file"
-
- case $name in
- *.la)
- # Possibly a libtool archive, so verify it.
- if (${SED} -e '2q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
- . $dir/$name
-
- # Delete the libtool libraries and symlinks.
- for n in $library_names; do
- rmfiles="$rmfiles $objdir/$n"
- done
- test -n "$old_library" && rmfiles="$rmfiles $objdir/$old_library"
-
- case "$mode" in
- clean)
- case " $library_names " in
- # " " in the beginning catches empty $dlname
- *" $dlname "*) ;;
- *) rmfiles="$rmfiles $objdir/$dlname" ;;
- esac
- test -n "$libdir" && rmfiles="$rmfiles $objdir/$name $objdir/${name}i"
- ;;
- uninstall)
- if test -n "$library_names"; then
- # Do each command in the postuninstall commands.
- cmds=$postuninstall_cmds
- save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- eval cmd=\"$cmd\"
- $show "$cmd"
- $run eval "$cmd"
- if test "$?" -ne 0 && test "$rmforce" != yes; then
- exit_status=1
- fi
- done
- IFS="$save_ifs"
- fi
-
- if test -n "$old_library"; then
- # Do each command in the old_postuninstall commands.
- cmds=$old_postuninstall_cmds
- save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- eval cmd=\"$cmd\"
- $show "$cmd"
- $run eval "$cmd"
- if test "$?" -ne 0 && test "$rmforce" != yes; then
- exit_status=1
- fi
- done
- IFS="$save_ifs"
- fi
- # FIXME: should reinstall the best remaining shared library.
- ;;
- esac
- fi
- ;;
-
- *.lo)
- # Possibly a libtool object, so verify it.
- if (${SED} -e '2q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
-
- # Read the .lo file
- . $dir/$name
-
- # Add PIC object to the list of files to remove.
- if test -n "$pic_object" \
- && test "$pic_object" != none; then
- rmfiles="$rmfiles $dir/$pic_object"
- fi
-
- # Add non-PIC object to the list of files to remove.
- if test -n "$non_pic_object" \
- && test "$non_pic_object" != none; then
- rmfiles="$rmfiles $dir/$non_pic_object"
- fi
- fi
- ;;
-
- *)
- if test "$mode" = clean ; then
- noexename=$name
- case $file in
- *.exe)
- file=`$echo $file|${SED} 's,.exe$,,'`
- noexename=`$echo $name|${SED} 's,.exe$,,'`
- # $file with .exe has already been added to rmfiles,
- # add $file without .exe
- rmfiles="$rmfiles $file"
- ;;
- esac
- # Do a test to see if this is a libtool program.
- if (${SED} -e '4q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
- relink_command=
- . $dir/$noexename
-
- # note $name still contains .exe if it was in $file originally
- # as does the version of $file that was added into $rmfiles
- rmfiles="$rmfiles $objdir/$name $objdir/${name}S.${objext}"
- if test "$fast_install" = yes && test -n "$relink_command"; then
- rmfiles="$rmfiles $objdir/lt-$name"
- fi
- if test "X$noexename" != "X$name" ; then
- rmfiles="$rmfiles $objdir/lt-${noexename}.c"
- fi
- fi
- fi
- ;;
- esac
- $show "$rm $rmfiles"
- $run $rm $rmfiles || exit_status=1
- done
- objdir="$origobjdir"
-
- # Try to remove the ${objdir}s in the directories where we deleted files
- for dir in $rmdirs; do
- if test -d "$dir"; then
- $show "rmdir $dir"
- $run rmdir $dir >/dev/null 2>&1
- fi
- done
-
- exit $exit_status
- ;;
-
- "")
- $echo "$modename: you must specify a MODE" 1>&2
- $echo "$generic_help" 1>&2
- exit $EXIT_FAILURE
- ;;
- esac
-
- if test -z "$exec_cmd"; then
- $echo "$modename: invalid operation mode \`$mode'" 1>&2
- $echo "$generic_help" 1>&2
- exit $EXIT_FAILURE
- fi
-fi # test -z "$show_help"
-
-if test -n "$exec_cmd"; then
- eval exec $exec_cmd
- exit $EXIT_FAILURE
-fi
-
-# We need to display help for each of the modes.
-case $mode in
-"") $echo \
-"Usage: $modename [OPTION]... [MODE-ARG]...
-
-Provide generalized library-building support services.
-
- --config show all configuration variables
- --debug enable verbose shell tracing
--n, --dry-run display commands without modifying any files
- --features display basic configuration information and exit
- --finish same as \`--mode=finish'
- --help display this help message and exit
- --mode=MODE use operation mode MODE [default=inferred from MODE-ARGS]
- --quiet same as \`--silent'
- --silent don't print informational messages
- --tag=TAG use configuration variables from tag TAG
- --version print version information
-
-MODE must be one of the following:
-
- clean remove files from the build directory
- compile compile a source file into a libtool object
- execute automatically set library path, then run a program
- finish complete the installation of libtool libraries
- install install libraries or executables
- link create a library or an executable
- uninstall remove libraries from an installed directory
-
-MODE-ARGS vary depending on the MODE. Try \`$modename --help --mode=MODE' for
-a more detailed description of MODE.
-
-Report bugs to <bug-libtool at gnu.org>."
- exit $EXIT_SUCCESS
- ;;
-
-clean)
- $echo \
-"Usage: $modename [OPTION]... --mode=clean RM [RM-OPTION]... FILE...
-
-Remove files from the build directory.
-
-RM is the name of the program to use to delete files associated with each FILE
-(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed
-to RM.
-
-If FILE is a libtool library, object or program, all the files associated
-with it are deleted. Otherwise, only FILE itself is deleted using RM."
- ;;
-
-compile)
- $echo \
-"Usage: $modename [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE
-
-Compile a source file into a libtool library object.
-
-This mode accepts the following additional options:
-
- -o OUTPUT-FILE set the output file name to OUTPUT-FILE
- -prefer-pic try to building PIC objects only
- -prefer-non-pic try to building non-PIC objects only
- -static always build a \`.o' file suitable for static linking
-
-COMPILE-COMMAND is a command to be used in creating a \`standard' object file
-from the given SOURCEFILE.
-
-The output file name is determined by removing the directory component from
-SOURCEFILE, then substituting the C source code suffix \`.c' with the
-library object suffix, \`.lo'."
- ;;
-
-execute)
- $echo \
-"Usage: $modename [OPTION]... --mode=execute COMMAND [ARGS]...
-
-Automatically set library path, then run a program.
-
-This mode accepts the following additional options:
-
- -dlopen FILE add the directory containing FILE to the library path
-
-This mode sets the library path environment variable according to \`-dlopen'
-flags.
-
-If any of the ARGS are libtool executable wrappers, then they are translated
-into their corresponding uninstalled binary, and any of their required library
-directories are added to the library path.
-
-Then, COMMAND is executed, with ARGS as arguments."
- ;;
-
-finish)
- $echo \
-"Usage: $modename [OPTION]... --mode=finish [LIBDIR]...
-
-Complete the installation of libtool libraries.
-
-Each LIBDIR is a directory that contains libtool libraries.
-
-The commands that this mode executes may require superuser privileges. Use
-the \`--dry-run' option if you just want to see what would be executed."
- ;;
-
-install)
- $echo \
-"Usage: $modename [OPTION]... --mode=install INSTALL-COMMAND...
-
-Install executables or libraries.
-
-INSTALL-COMMAND is the installation command. The first component should be
-either the \`install' or \`cp' program.
-
-The rest of the components are interpreted as arguments to that command (only
-BSD-compatible install options are recognized)."
- ;;
-
-link)
- $echo \
-"Usage: $modename [OPTION]... --mode=link LINK-COMMAND...
-
-Link object files or libraries together to form another library, or to
-create an executable program.
-
-LINK-COMMAND is a command using the C compiler that you would use to create
-a program from several object files.
-
-The following components of LINK-COMMAND are treated specially:
-
- -all-static do not do any dynamic linking at all
- -avoid-version do not add a version suffix if possible
- -dlopen FILE \`-dlpreopen' FILE if it cannot be dlopened at runtime
- -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols
- -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3)
- -export-symbols SYMFILE
- try to export only the symbols listed in SYMFILE
- -export-symbols-regex REGEX
- try to export only the symbols matching REGEX
- -LLIBDIR search LIBDIR for required installed libraries
- -lNAME OUTPUT-FILE requires the installed library libNAME
- -module build a library that can dlopened
- -no-fast-install disable the fast-install mode
- -no-install link a not-installable executable
- -no-undefined declare that a library does not refer to external symbols
- -o OUTPUT-FILE create OUTPUT-FILE from the specified objects
- -objectlist FILE Use a list of object files found in FILE to specify objects
- -precious-files-regex REGEX
- don't remove output files matching REGEX
- -release RELEASE specify package release information
- -rpath LIBDIR the created library will eventually be installed in LIBDIR
- -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries
- -static do not do any dynamic linking of uninstalled libtool libraries
- -static-libtool-libs
- do not do any dynamic linking of libtool libraries
- -version-info CURRENT[:REVISION[:AGE]]
- specify library version info [each variable defaults to 0]
-
-All other options (arguments beginning with \`-') are ignored.
-
-Every other argument is treated as a filename. Files ending in \`.la' are
-treated as uninstalled libtool libraries, other files are standard or library
-object files.
-
-If the OUTPUT-FILE ends in \`.la', then a libtool library is created,
-only library objects (\`.lo' files) may be specified, and \`-rpath' is
-required, except when creating a convenience library.
-
-If OUTPUT-FILE ends in \`.a' or \`.lib', then a standard library is created
-using \`ar' and \`ranlib', or on Windows using \`lib'.
-
-If OUTPUT-FILE ends in \`.lo' or \`.${objext}', then a reloadable object file
-is created, otherwise an executable program is created."
- ;;
-
-uninstall)
- $echo \
-"Usage: $modename [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE...
-
-Remove libraries from an installation directory.
-
-RM is the name of the program to use to delete files associated with each FILE
-(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed
-to RM.
-
-If FILE is a libtool library, all the files associated with it are deleted.
-Otherwise, only FILE itself is deleted using RM."
- ;;
-
-*)
- $echo "$modename: invalid operation mode \`$mode'" 1>&2
- $echo "$help" 1>&2
- exit $EXIT_FAILURE
- ;;
-esac
-
-$echo
-$echo "Try \`$modename --help' for more information about other modes."
-
-exit $?
-
-# The TAGs below are defined such that we never get into a situation
-# in which we disable both kinds of libraries. Given conflicting
-# choices, we go for a static library, that is the most portable,
-# since we can't tell whether shared libraries were disabled because
-# the user asked for that or because the platform doesn't support
-# them. This is particularly important on AIX, because we don't
-# support having both static and shared libraries enabled at the same
-# time on that platform, so we default to a shared-only configuration.
-# If a disable-shared tag is given, we'll fallback to a static-only
-# configuration. But we'll never go from static-only to shared-only.
-
-# ### BEGIN LIBTOOL TAG CONFIG: disable-shared
-disable_libs=shared
-# ### END LIBTOOL TAG CONFIG: disable-shared
-
-# ### BEGIN LIBTOOL TAG CONFIG: disable-static
-disable_libs=static
-# ### END LIBTOOL TAG CONFIG: disable-static
-
-# Local Variables:
-# mode:shell-script
-# sh-indentation:2
-# End:
diff --git a/m4/audacity_checklib_libnyquist.m4 b/m4/audacity_checklib_libnyquist.m4
index 226f63b..4eb7dad 100644
--- a/m4/audacity_checklib_libnyquist.m4
+++ b/m4/audacity_checklib_libnyquist.m4
@@ -22,18 +22,20 @@ AC_DEFUN([AUDACITY_CHECKLIB_LIBNYQUIST], [
dnl see if Nyquist is available locally
- AC_CHECK_FILE(${srcdir}/lib-src/libnyquist/nyx/nyx.h,
+ AC_CHECK_FILE(${srcdir}/lib-src/libnyquist/nyx.h,
nyx_h_found="yes",
nyx_h_found="no")
if test "x$nyx_h_found" = "xyes" ; then
LIBNYQUIST_LOCAL_AVAILABLE="yes"
LIBNYQUIST_LOCAL_LIBS="libnyquist.a"
- LIBNYQUIST_LOCAL_CXXFLAGS='-I$(top_srcdir)/lib-src/libnyquist/nyx'
+ LIBNYQUIST_LOCAL_CXXFLAGS='-I$(top_srcdir)/lib-src/libnyquist'
LIBNYQUIST_LOCAL_CPPSYMBOLS="USE_NYQUIST"
LIBNYQUIST_LOCAL_OPTOBJS="effects/nyquist/Nyquist.o"
LIBNYQUIST_LOCAL_OPTOBJS="$LIBNYQUIST_LOCAL_OPTOBJS effects/nyquist/LoadNyquist.o"
+ LIBNYQUIST_LOCAL_CONFIG_SUBDIRS="lib-src/libnyquist"
+
AC_MSG_NOTICE([nyquist libraries are available in the local tree])
else
LIBNYQUIST_LOCAL_AVAILABLE="no"
diff --git a/m4/audacity_checklib_libsndfile.m4 b/m4/audacity_checklib_libsndfile.m4
index c00dee9..0fe0e63 100644
--- a/m4/audacity_checklib_libsndfile.m4
+++ b/m4/audacity_checklib_libsndfile.m4
@@ -1,7 +1,7 @@
dnl Add audacity / libsndfile license?
dnl Please increment the serial number below whenever you alter this macro
dnl for the benefit of automatic macro update systems
-# audacity_checklib_libsndfile.m4 serial 1
+# audacity_checklib_libsndfile.m4 serial 2
AC_DEFUN([AUDACITY_CHECKLIB_LIBSNDFILE], [
@@ -45,7 +45,7 @@ AC_DEFUN([AUDACITY_CHECKLIB_LIBSNDFILE], [
dnl export SNDFILE_CFLAGS="'-I`pwd`/lib-src/libsndfile/src'"
dnl Temporary fix for bug #248
- ac_configure_args="$ac_configure_args --disable-sqlite --disable-flac --disable-alsa"
+ ac_configure_args="$ac_configure_args --disable-sqlite --disable-external-libs --disable-alsa"
else
LIBSNDFILE_LOCAL_AVAILABLE="no"
AC_MSG_NOTICE([libsndfile libraries are NOT available in this source tree])
diff --git a/mac/Audacity.xcodeproj/project.pbxproj b/mac/Audacity.xcodeproj/project.pbxproj
index 517d95b..ecf9584 100644
--- a/mac/Audacity.xcodeproj/project.pbxproj
+++ b/mac/Audacity.xcodeproj/project.pbxproj
@@ -265,8 +265,6 @@
174F73D4098D516D009CD6E0 /* AudacityOGG.icns in Resources */ = {isa = PBXBuildFile; fileRef = 174F73CD098D516D009CD6E0 /* AudacityOGG.icns */; };
174F73D5098D516D009CD6E0 /* AudacityProject.icns in Resources */ = {isa = PBXBuildFile; fileRef = 174F73CE098D516D009CD6E0 /* AudacityProject.icns */; };
174F73D6098D516D009CD6E0 /* AudacityWAV.icns in Resources */ = {isa = PBXBuildFile; fileRef = 174F73CF098D516D009CD6E0 /* AudacityWAV.icns */; };
- 176A1A55098B7AFB00DC73B4 /* cmdline.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BA14098B4FD700216F16 /* cmdline.c */; };
- 176A1A56098B7AFB00DC73B4 /* intgen.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BA15098B4FD700216F16 /* intgen.c */; };
176EE9DE09A2EC1000188F3B /* caf.c in Sources */ = {isa = PBXBuildFile; fileRef = 176EE9DB09A2EC1000188F3B /* caf.c */; };
176EE9DF09A2EC1000188F3B /* flac.c in Sources */ = {isa = PBXBuildFile; fileRef = 176EE9DC09A2EC1000188F3B /* flac.c */; };
176EE9E009A2EC1000188F3B /* g72x.c in Sources */ = {isa = PBXBuildFile; fileRef = 176EE9DD09A2EC1000188F3B /* g72x.c */; };
@@ -385,10 +383,8 @@
1790B17C09883BFD008A330A /* NoteTrack.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1790B0AF09883BFD008A330A /* NoteTrack.cpp */; };
1790B17D09883BFD008A330A /* PitchName.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1790B0B109883BFD008A330A /* PitchName.cpp */; };
1790B17E09883BFD008A330A /* PlatformCompatibility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1790B0B309883BFD008A330A /* PlatformCompatibility.cpp */; };
- 1790B17F09883BFD008A330A /* AudioIOPrefs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1790B0B609883BFD008A330A /* AudioIOPrefs.cpp */; };
1790B18009883BFD008A330A /* BatchPrefs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1790B0B809883BFD008A330A /* BatchPrefs.cpp */; };
1790B18109883BFD008A330A /* DirectoriesPrefs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1790B0BB09883BFD008A330A /* DirectoriesPrefs.cpp */; };
- 1790B18209883BFD008A330A /* FileFormatPrefs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1790B0BD09883BFD008A330A /* FileFormatPrefs.cpp */; };
1790B18309883BFD008A330A /* GUIPrefs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1790B0BF09883BFD008A330A /* GUIPrefs.cpp */; };
1790B18409883BFD008A330A /* KeyConfigPrefs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1790B0C109883BFD008A330A /* KeyConfigPrefs.cpp */; };
1790B18509883BFD008A330A /* MousePrefs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1790B0C309883BFD008A330A /* MousePrefs.cpp */; };
@@ -433,267 +429,6 @@
17C99D5E098971390041B1BC /* libsndfile.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1707401E0988EEAA008541CC /* libsndfile.a */; };
17C99D5F098971390041B1BC /* libsoundtouch.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1707407A0988F1BB008541CC /* libsoundtouch.a */; };
17C99D60098971390041B1BC /* libportmixer.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 170740960988F2F7008541CC /* libportmixer.a */; };
- 17CBAD40098B84E300575C58 /* cext.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BA1B098B502D00216F16 /* cext.c */; };
- 17CBAD41098B84E300575C58 /* cext.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BA1C098B502D00216F16 /* cext.h */; };
- 17CBAD42098B84E300575C58 /* cleanup.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BA1D098B502D00216F16 /* cleanup.c */; };
- 17CBAD43098B84E300575C58 /* cleanup.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BA1E098B502D00216F16 /* cleanup.h */; };
- 17CBAD44098B84E300575C58 /* cmdline.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BA1F098B502D00216F16 /* cmdline.c */; };
- 17CBAD45098B84E300575C58 /* cmdline.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BA20098B502D00216F16 /* cmdline.h */; };
- 17CBAD46098B84E300575C58 /* cmtcmd.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BA21098B502D00216F16 /* cmtcmd.c */; };
- 17CBAD47098B84E300575C58 /* cmtcmd.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BA22098B502D00216F16 /* cmtcmd.h */; };
- 17CBAD48098B84E300575C58 /* hash.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BA26098B502D00216F16 /* hash.h */; };
- 17CBAD49098B84E300575C58 /* hashrout.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BA27098B502D00216F16 /* hashrout.h */; };
- 17CBAD4A098B84E300575C58 /* mem.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BA28098B502D00216F16 /* mem.c */; };
- 17CBAD4B098B84E300575C58 /* mem.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BA29098B502D00216F16 /* mem.h */; };
- 17CBAD4C098B84E300575C58 /* mfmidi.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BA2A098B502D00216F16 /* mfmidi.h */; };
- 17CBAD4D098B84E300575C58 /* midibuff.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BA2B098B502D00216F16 /* midibuff.h */; };
- 17CBAD4E098B84E300575C58 /* midicode.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BA2C098B502D00216F16 /* midicode.h */; };
- 17CBAD4F098B84E300575C58 /* midierr.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BA2D098B502D00216F16 /* midierr.h */; };
- 17CBAD50098B84E300575C58 /* midifile.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BA2E098B502D00216F16 /* midifile.c */; };
- 17CBAD51098B84E300575C58 /* midifile.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BA2F098B502D00216F16 /* midifile.h */; };
- 17CBAD52098B84E300575C58 /* midifns.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BA30098B502D00216F16 /* midifns.c */; };
- 17CBAD53098B84E300575C58 /* midifns.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BA31098B502D00216F16 /* midifns.h */; };
- 17CBAD54098B84E300575C58 /* moxc.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BA34098B502D00216F16 /* moxc.c */; };
- 17CBAD55098B84E300575C58 /* moxc.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BA35098B502D00216F16 /* moxc.h */; };
- 17CBAD56098B84E300575C58 /* musiprog.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BA36098B502D00216F16 /* musiprog.h */; };
- 17CBAD57098B84E300575C58 /* pitch.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BA37098B502D00216F16 /* pitch.h */; };
- 17CBAD58098B84E300575C58 /* record.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BA38098B502D00216F16 /* record.c */; };
- 17CBAD59098B84E300575C58 /* record.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BA39098B502D00216F16 /* record.h */; };
- 17CBAD5A098B84E300575C58 /* seq.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BA3A098B502D00216F16 /* seq.c */; };
- 17CBAD5B098B84E300575C58 /* seq.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BA3B098B502D00216F16 /* seq.h */; };
- 17CBAD5C098B84E300575C58 /* seqdecls.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BA3C098B502D00216F16 /* seqdecls.h */; };
- 17CBAD5D098B84E300575C58 /* seqmread.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BA3D098B502D00216F16 /* seqmread.c */; };
- 17CBAD5E098B84E300575C58 /* seqmread.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BA3E098B502D00216F16 /* seqmread.h */; };
- 17CBAD5F098B84E300575C58 /* seqmwrite.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BA3F098B502D00216F16 /* seqmwrite.c */; };
- 17CBAD60098B84E300575C58 /* seqmwrite.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BA40098B502D00216F16 /* seqmwrite.h */; };
- 17CBAD61098B84E300575C58 /* seqread.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BA41098B502D00216F16 /* seqread.c */; };
- 17CBAD62098B84E300575C58 /* seqread.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BA42098B502D00216F16 /* seqread.h */; };
- 17CBAD63098B84E300575C58 /* seqwrite.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BA43098B502D00216F16 /* seqwrite.c */; };
- 17CBAD64098B84E300575C58 /* seqwrite.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BA44098B502D00216F16 /* seqwrite.h */; };
- 17CBAD65098B84E300575C58 /* swlogic.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BA45098B502D00216F16 /* swlogic.h */; };
- 17CBAD66098B84E300575C58 /* tempomap.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BA46098B502D00216F16 /* tempomap.c */; };
- 17CBAD67098B84E300575C58 /* tempomap.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BA47098B502D00216F16 /* tempomap.h */; };
- 17CBAD68098B84E300575C58 /* timebase.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BA48098B502D00216F16 /* timebase.c */; };
- 17CBAD69098B84E300575C58 /* timebase.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BA49098B502D00216F16 /* timebase.h */; };
- 17CBAD6A098B84E300575C58 /* userio.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BA4A098B502D00216F16 /* userio.c */; };
- 17CBAD6B098B84E300575C58 /* userio.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BA4B098B502D00216F16 /* userio.h */; };
- 17CBAD6C098B84E300575C58 /* fftn.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BA4F098B502D00216F16 /* fftn.c */; };
- 17CBAD6D098B84E300575C58 /* fftn.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BA50098B502D00216F16 /* fftn.h */; };
- 17CBAD6E098B84E300575C58 /* add.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BD32098B649900216F16 /* add.c */; };
- 17CBAD6F098B84E300575C58 /* add.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BD33098B649A00216F16 /* add.h */; };
- 17CBAD70098B84E300575C58 /* avg.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BD35098B649A00216F16 /* avg.c */; };
- 17CBAD71098B84E300575C58 /* avg.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BD36098B649A00216F16 /* avg.h */; };
- 17CBAD72098B84E300575C58 /* compose.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BD38098B649A00216F16 /* compose.c */; };
- 17CBAD73098B84E300575C58 /* compose.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BD39098B649A00216F16 /* compose.h */; };
- 17CBAD74098B84E300575C58 /* cque.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BD3B098B649A00216F16 /* cque.h */; };
- 17CBAD75098B84E300575C58 /* debug.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BD3D098B649A00216F16 /* debug.c */; };
- 17CBAD76098B84E300575C58 /* debug.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BD3E098B649A00216F16 /* debug.h */; };
- 17CBAD77098B84E300575C58 /* downsample.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BD40098B649A00216F16 /* downsample.c */; };
- 17CBAD78098B84E300575C58 /* downsample.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BD41098B649A00216F16 /* downsample.h */; };
- 17CBAD79098B84E300575C58 /* falloc.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BD43098B649A00216F16 /* falloc.c */; };
- 17CBAD7A098B84E300575C58 /* falloc.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BD44098B649A00216F16 /* falloc.h */; };
- 17CBAD7B098B84E300575C58 /* ffilterkit.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BD46098B649A00216F16 /* ffilterkit.c */; };
- 17CBAD7C098B84E300575C58 /* ffilterkit.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BD47098B649A00216F16 /* ffilterkit.h */; };
- 17CBAD7D098B84E300575C58 /* fft.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BD4A098B649A00216F16 /* fft.c */; };
- 17CBAD7E098B84E300575C58 /* fft.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BD4B098B649A00216F16 /* fft.h */; };
- 17CBAD7F098B84E300575C58 /* fftw.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BD4E098B649A00216F16 /* fftw.h */; };
- 17CBAD80098B84E300575C58 /* fresample.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BD4F098B649A00216F16 /* fresample.h */; };
- 17CBAD81098B84E300575C58 /* fsmallfilter.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BD50098B649A00216F16 /* fsmallfilter.h */; };
- 17CBAD82098B84E300575C58 /* handlers.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BD51098B649A00216F16 /* handlers.c */; };
- 17CBAD83098B84E300575C58 /* inverse.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BD53098B649A00216F16 /* inverse.c */; };
- 17CBAD84098B84E300575C58 /* inverse.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BD54098B649A00216F16 /* inverse.h */; };
- 17CBAD85098B84E300575C58 /* local.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BD56098B649A00216F16 /* local.c */; };
- 17CBAD86098B84E300575C58 /* localdefs.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BD58098B649A00216F16 /* localdefs.h */; };
- 17CBAD87098B84E300575C58 /* localptrs.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BD59098B649A00216F16 /* localptrs.h */; };
- 17CBAD88098B84E300575C58 /* multiread.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BD5A098B649A00216F16 /* multiread.c */; };
- 17CBAD89098B84E300575C58 /* multiread.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BD5B098B649A00216F16 /* multiread.h */; };
- 17CBAD8A098B84E300575C58 /* multiseq.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BD5D098B649A00216F16 /* multiseq.c */; };
- 17CBAD8B098B84E300575C58 /* multiseq.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BD5E098B649A00216F16 /* multiseq.h */; };
- 17CBAD8C098B84E300575C58 /* resamp.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BD64098B649A00216F16 /* resamp.c */; };
- 17CBAD8D098B84E300575C58 /* resamp.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BD65098B649A00216F16 /* resamp.h */; };
- 17CBAD8E098B84E300575C58 /* resampv.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BD67098B649A00216F16 /* resampv.c */; };
- 17CBAD8F098B84E300575C58 /* resampv.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BD68098B649A00216F16 /* resampv.h */; };
- 17CBAD90098B84E300575C58 /* rfftw.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BD6A098B649A00216F16 /* rfftw.h */; };
- 17CBAD91098B84E300575C58 /* samples.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BD6B098B649A00216F16 /* samples.c */; };
- 17CBAD92098B84E300575C58 /* samples.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BD6C098B649A00216F16 /* samples.h */; };
- 17CBAD93098B84E300575C58 /* seqext.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BD6E098B649A00216F16 /* seqext.c */; };
- 17CBAD94098B84E300575C58 /* seqext.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BD6F098B649A00216F16 /* seqext.h */; };
- 17CBAD95098B84E300575C58 /* seqfnint.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BD73098B649A00216F16 /* seqfnint.c */; };
- 17CBAD96098B84E300575C58 /* seqfnintdefs.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BD76098B649A00216F16 /* seqfnintdefs.h */; };
- 17CBAD97098B84E300575C58 /* seqfnintptrs.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BD77098B649A00216F16 /* seqfnintptrs.h */; };
- 17CBAD98098B84E300575C58 /* seqinterf.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BD78098B649A00216F16 /* seqinterf.c */; };
- 17CBAD99098B84E300575C58 /* seqinterf.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BD79098B649A00216F16 /* seqinterf.h */; };
- 17CBAD9A098B84E300575C58 /* sndfail.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BD7B098B649A00216F16 /* sndfail.c */; };
- 17CBAD9B098B84E300575C58 /* sndfnint.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BD7F098B649A00216F16 /* sndfnint.c */; };
- 17CBAD9C098B84E300575C58 /* sndfnintdefs.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BD82098B649A00216F16 /* sndfnintdefs.h */; };
- 17CBAD9D098B84E300575C58 /* sndfnintptrs.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BD83098B649A00216F16 /* sndfnintptrs.h */; };
- 17CBAD9E098B84E300575C58 /* sndmax.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BD84098B649A00216F16 /* sndmax.c */; };
- 17CBAD9F098B84E300575C58 /* sndmax.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BD85098B649A00216F16 /* sndmax.h */; };
- 17CBADA0098B84E300575C58 /* sndread.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BD87098B649A00216F16 /* sndread.c */; };
- 17CBADA1098B84E300575C58 /* sndread.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BD88098B649A00216F16 /* sndread.h */; };
- 17CBADA2098B84E300575C58 /* sndseq.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BD8A098B649A00216F16 /* sndseq.c */; };
- 17CBADA3098B84E300575C58 /* sndseq.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BD8B098B649A00216F16 /* sndseq.h */; };
- 17CBADA4098B84E300575C58 /* sndwrite.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BD8D098B649A00216F16 /* sndwrite.c */; };
- 17CBADA5098B84E300575C58 /* sndwrite.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BD8E098B649A00216F16 /* sndwrite.h */; };
- 17CBADA6098B84E300575C58 /* sound.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BD90098B649A00216F16 /* sound.c */; };
- 17CBADA7098B84E300575C58 /* sound.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BD91098B649A00216F16 /* sound.h */; };
- 17CBADA8098B84E300575C58 /* stats.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BD93098B649A00216F16 /* stats.c */; };
- 17CBADA9098B84E300575C58 /* stdefs.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BD95098B649A00216F16 /* stdefs.h */; };
- 17CBADAA098B84E300575C58 /* nyx.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BAC4098B502D00216F16 /* nyx.c */; };
- 17CBADAB098B84E300575C58 /* nyx.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BAC5098B502D00216F16 /* nyx.h */; };
- 17CBADAC098B84E300575C58 /* audionone.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BDF9098B654200216F16 /* audionone.c */; };
- 17CBADAD098B84E300575C58 /* ieeecvt.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BDFD098B654200216F16 /* ieeecvt.c */; };
- 17CBADAE098B84E300575C58 /* ieeecvt.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BDFE098B654200216F16 /* ieeecvt.h */; };
- 17CBADAF098B84E300575C58 /* snd.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BE01098B654200216F16 /* snd.c */; };
- 17CBADB0098B84E300575C58 /* snd.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE02098B654200216F16 /* snd.h */; };
- 17CBADB1098B84E300575C58 /* sndconfig.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE06098B654200216F16 /* sndconfig.h */; };
- 17CBADB2098B84E300575C58 /* sndcvt.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BE07098B654200216F16 /* sndcvt.c */; };
- 17CBADB3098B84E300575C58 /* sndfileio.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE0B098B654200216F16 /* sndfileio.h */; };
- 17CBADB4098B84E300575C58 /* sndfreebsd.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE0C098B654200216F16 /* sndfreebsd.h */; };
- 17CBADB5098B84E300575C58 /* sndhead.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE0D098B654200216F16 /* sndhead.h */; };
- 17CBADB6098B84E300575C58 /* sndheader.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BE0E098B654200216F16 /* sndheader.c */; };
- 17CBADB7098B84E300575C58 /* sndheader.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE0F098B654200216F16 /* sndheader.h */; };
- 17CBADB8098B84E300575C58 /* sndio.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BE11098B654200216F16 /* sndio.c */; };
- 17CBADB9098B84E300575C58 /* sndlinux.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BE13098B654200216F16 /* sndlinux.c */; };
- 17CBADBA098B84E300575C58 /* sndlinux.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE14098B654200216F16 /* sndlinux.h */; };
- 17CBADBB098B84E300575C58 /* sndwrite.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE1F098B654200216F16 /* sndwrite.h */; };
- 17CBADBC098B84E300575C58 /* switches.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE22098B654200216F16 /* switches.h */; };
- 17CBADBD098B84E300575C58 /* term.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BE24098B654200216F16 /* term.c */; };
- 17CBADBE098B84E300575C58 /* term.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE25098B654200216F16 /* term.h */; };
- 17CBADBF098B84E300575C58 /* alpass.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BE2C098B654200216F16 /* alpass.c */; };
- 17CBADC0098B84E300575C58 /* alpass.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE2D098B654200216F16 /* alpass.h */; };
- 17CBADC1098B84E300575C58 /* amosc.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BE39098B654200216F16 /* amosc.c */; };
- 17CBADC2098B84E300575C58 /* amosc.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE3A098B654200216F16 /* amosc.h */; };
- 17CBADC3098B84E300575C58 /* areson.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BE3D098B654200216F16 /* areson.c */; };
- 17CBADC4098B84E300575C58 /* areson.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE3E098B654200216F16 /* areson.h */; };
- 17CBADC5098B84E300575C58 /* aresoncv.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BE41098B654200216F16 /* aresoncv.c */; };
- 17CBADC6098B84E300575C58 /* aresoncv.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE42098B654200216F16 /* aresoncv.h */; };
- 17CBADC7098B84E300575C58 /* aresonvc.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BE45098B654200216F16 /* aresonvc.c */; };
- 17CBADC8098B84E300575C58 /* aresonvc.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE46098B654200216F16 /* aresonvc.h */; };
- 17CBADC9098B84E300575C58 /* aresonvv.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BE49098B654200216F16 /* aresonvv.c */; };
- 17CBADCA098B84E300575C58 /* aresonvv.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE4A098B654200216F16 /* aresonvv.h */; };
- 17CBADCB098B84E300575C58 /* atone.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BE4D098B654200216F16 /* atone.c */; };
- 17CBADCC098B84E300575C58 /* atone.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE4E098B654200216F16 /* atone.h */; };
- 17CBADCD098B84E300575C58 /* atonev.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BE51098B654200216F16 /* atonev.c */; };
- 17CBADCE098B84E300575C58 /* atonev.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE52098B654200216F16 /* atonev.h */; };
- 17CBADCF098B84E300575C58 /* biquad.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BE55098B654200216F16 /* biquad.c */; };
- 17CBADD0098B84E300575C58 /* biquad.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE56098B654200216F16 /* biquad.h */; };
- 17CBADD1098B84E300575C58 /* buzz.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BE59098B654200216F16 /* buzz.c */; };
- 17CBADD2098B84E300575C58 /* buzz.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE5A098B654200216F16 /* buzz.h */; };
- 17CBADD3098B84E300575C58 /* chase.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BE5D098B654200216F16 /* chase.c */; };
- 17CBADD4098B84E300575C58 /* chase.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE5E098B654200216F16 /* chase.h */; };
- 17CBADD5098B84E300575C58 /* clip.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BE61098B654200216F16 /* clip.c */; };
- 17CBADD6098B84E300575C58 /* clip.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE62098B654200216F16 /* clip.h */; };
- 17CBADD7098B84E300575C58 /* congen.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BE65098B654200216F16 /* congen.c */; };
- 17CBADD8098B84E300575C58 /* congen.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE66098B654200216F16 /* congen.h */; };
- 17CBADD9098B84E300575C58 /* const.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BE69098B654300216F16 /* const.c */; };
- 17CBADDA098B84E300575C58 /* const.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE6A098B654300216F16 /* const.h */; };
- 17CBADDB098B84E300575C58 /* convolve.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BE6D098B654300216F16 /* convolve.c */; };
- 17CBADDC098B84E300575C58 /* convolve.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE6E098B654300216F16 /* convolve.h */; };
- 17CBADDD098B84E300575C58 /* coterm.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BE71098B654300216F16 /* coterm.c */; };
- 17CBADDE098B84E300575C58 /* coterm.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE72098B654300216F16 /* coterm.h */; };
- 17CBADDF098B84E300575C58 /* delay.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BE76098B654300216F16 /* delay.c */; };
- 17CBADE0098B84E300575C58 /* delay.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE77098B654300216F16 /* delay.h */; };
- 17CBADE1098B84E300575C58 /* delaycv.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BE7A098B654300216F16 /* delaycv.c */; };
- 17CBADE2098B84E300575C58 /* delaycv.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE7B098B654300216F16 /* delaycv.h */; };
- 17CBADE3098B84E300575C58 /* exp.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BE83098B654300216F16 /* exp.c */; };
- 17CBADE4098B84E300575C58 /* exp.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE84098B654300216F16 /* exp.h */; };
- 17CBADE5098B84E300575C58 /* fmosc.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BE88098B654300216F16 /* fmosc.c */; };
- 17CBADE6098B84E300575C58 /* fmosc.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE89098B654300216F16 /* fmosc.h */; };
- 17CBADE7098B84E300575C58 /* follow.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BE8C098B654300216F16 /* follow.c */; };
- 17CBADE8098B84E300575C58 /* follow.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE8D098B654300216F16 /* follow.h */; };
- 17CBADE9098B84E300575C58 /* fromarraystream.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BE90098B654300216F16 /* fromarraystream.c */; };
- 17CBADEA098B84E300575C58 /* fromarraystream.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE91098B654300216F16 /* fromarraystream.h */; };
- 17CBADEB098B84E300575C58 /* fromobject.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BE94098B654300216F16 /* fromobject.c */; };
- 17CBADEC098B84E300575C58 /* fromobject.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE95098B654300216F16 /* fromobject.h */; };
- 17CBADED098B84E300575C58 /* gate.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BE98098B654300216F16 /* gate.c */; };
- 17CBADEE098B84E300575C58 /* gate.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE99098B654300216F16 /* gate.h */; };
- 17CBADEF098B84E300575C58 /* ifft.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BE9D098B654300216F16 /* ifft.c */; };
- 17CBADF0098B84E300575C58 /* ifft.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BE9E098B654300216F16 /* ifft.h */; };
- 17CBADF1098B84E300575C58 /* integrate.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BEA3098B654300216F16 /* integrate.c */; };
- 17CBADF2098B84E300575C58 /* integrate.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BEA4098B654300216F16 /* integrate.h */; };
- 17CBADF3098B84E300575C58 /* log.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BEA7098B654300216F16 /* log.c */; };
- 17CBADF4098B84E300575C58 /* log.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BEA8098B654300216F16 /* log.h */; };
- 17CBADF5098B84E300575C58 /* maxv.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BEAB098B654300216F16 /* maxv.c */; };
- 17CBADF6098B84E300575C58 /* maxv.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BEAC098B654300216F16 /* maxv.h */; };
- 17CBADF7098B84E300575C58 /* offset.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BEB1098B654300216F16 /* offset.c */; };
- 17CBADF8098B84E300575C58 /* offset.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BEB2098B654300216F16 /* offset.h */; };
- 17CBADF9098B84E300575C58 /* oneshot.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BEB5098B654300216F16 /* oneshot.c */; };
- 17CBADFA098B84E300575C58 /* oneshot.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BEB6098B654300216F16 /* oneshot.h */; };
- 17CBADFB098B84E300575C58 /* osc.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BEB9098B654300216F16 /* osc.c */; };
- 17CBADFC098B84E300575C58 /* osc.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BEBA098B654300216F16 /* osc.h */; };
- 17CBADFD098B84E300575C58 /* partial.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BEBD098B654300216F16 /* partial.c */; };
- 17CBADFE098B84E300575C58 /* partial.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BEBE098B654300216F16 /* partial.h */; };
- 17CBADFF098B84E300575C58 /* pluck.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BEC1098B654300216F16 /* pluck.c */; };
- 17CBAE00098B84E300575C58 /* pluck.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BEC2098B654300216F16 /* pluck.h */; };
- 17CBAE01098B84E300575C58 /* prod.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BEC5098B654300216F16 /* prod.c */; };
- 17CBAE02098B84E300575C58 /* prod.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BEC6098B654300216F16 /* prod.h */; };
- 17CBAE03098B84E300575C58 /* pwl.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BEC9098B654300216F16 /* pwl.c */; };
- 17CBAE04098B84E300575C58 /* pwl.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BECA098B654300216F16 /* pwl.h */; };
- 17CBAE05098B84E300575C58 /* quantize.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BECF098B654300216F16 /* quantize.c */; };
- 17CBAE06098B84E300575C58 /* quantize.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BED0098B654300216F16 /* quantize.h */; };
- 17CBAE07098B84E300575C58 /* recip.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BED3098B654300216F16 /* recip.c */; };
- 17CBAE08098B84E300575C58 /* recip.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BED4098B654300216F16 /* recip.h */; };
- 17CBAE09098B84E300575C58 /* reson.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BED7098B654300216F16 /* reson.c */; };
- 17CBAE0A098B84E300575C58 /* reson.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BED8098B654300216F16 /* reson.h */; };
- 17CBAE0B098B84E300575C58 /* resoncv.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BEDB098B654300216F16 /* resoncv.c */; };
- 17CBAE0C098B84E300575C58 /* resoncv.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BEDC098B654300216F16 /* resoncv.h */; };
- 17CBAE0D098B84E300575C58 /* resonvc.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BEDF098B654300216F16 /* resonvc.c */; };
- 17CBAE0E098B84E300575C58 /* resonvc.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BEE0098B654300216F16 /* resonvc.h */; };
- 17CBAE0F098B84E300575C58 /* resonvv.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BEE3098B654300216F16 /* resonvv.c */; };
- 17CBAE10098B84E300575C58 /* resonvv.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BEE4098B654300216F16 /* resonvv.h */; };
- 17CBAE11098B84E300575C58 /* sampler.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BEE7098B654300216F16 /* sampler.c */; };
- 17CBAE12098B84E300575C58 /* sampler.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BEE8098B654300216F16 /* sampler.h */; };
- 17CBAE13098B84E300575C58 /* scale.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BEEB098B654300216F16 /* scale.c */; };
- 17CBAE14098B84E300575C58 /* scale.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BEEC098B654300216F16 /* scale.h */; };
- 17CBAE15098B84E300575C58 /* shape.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BEEF098B654300216F16 /* shape.c */; };
- 17CBAE16098B84E300575C58 /* shape.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BEF0098B654300216F16 /* shape.h */; };
- 17CBAE17098B84E300575C58 /* sine.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BEF3098B654300216F16 /* sine.c */; };
- 17CBAE18098B84E300575C58 /* sine.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BEF4098B654300216F16 /* sine.h */; };
- 17CBAE19098B84E300575C58 /* siosc.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BEF7098B654300216F16 /* siosc.c */; };
- 17CBAE1A098B84E300575C58 /* siosc.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BEF8098B654300216F16 /* siosc.h */; };
- 17CBAE1B098B84E300575C58 /* slope.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BEFB098B654300216F16 /* slope.c */; };
- 17CBAE1C098B84E300575C58 /* slope.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BEFC098B654300216F16 /* slope.h */; };
- 17CBAE1D098B84E300575C58 /* tapv.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BF05098B654300216F16 /* tapv.c */; };
- 17CBAE1E098B84E300575C58 /* tapv.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BF06098B654300216F16 /* tapv.h */; };
- 17CBAE1F098B84E300575C58 /* tone.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BF09098B654300216F16 /* tone.c */; };
- 17CBAE20098B84E300575C58 /* tone.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BF0A098B654300216F16 /* tone.h */; };
- 17CBAE21098B84E300575C58 /* tonev.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BF0D098B654300216F16 /* tonev.c */; };
- 17CBAE22098B84E300575C58 /* tonev.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BF0E098B654300216F16 /* tonev.h */; };
- 17CBAE23098B84E300575C58 /* upsample.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BF12098B654300216F16 /* upsample.c */; };
- 17CBAE24098B84E300575C58 /* upsample.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BF13098B654300216F16 /* upsample.h */; };
- 17CBAE25098B84E300575C58 /* white.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BF16098B654300216F16 /* white.c */; };
- 17CBAE26098B84E300575C58 /* white.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BF17098B654300216F16 /* white.h */; };
- 17CBAE27098B84E300575C58 /* extern.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BF1E098B654300216F16 /* extern.c */; };
- 17CBAE28098B84E300575C58 /* extern.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BF1F098B654300216F16 /* extern.h */; };
- 17CBAE29098B84E300575C58 /* osdefs.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BF21098B654300216F16 /* osdefs.h */; };
- 17CBAE2A098B84E300575C58 /* osptrs.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BF22098B654300216F16 /* osptrs.h */; };
- 17CBAE2B098B84E300575C58 /* path.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BF23098B654300216F16 /* path.c */; };
- 17CBAE2C098B84E300575C58 /* xlbfun.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BF25098B654300216F16 /* xlbfun.c */; };
- 17CBAE2D098B84E300575C58 /* xlcont.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BF27098B654300216F16 /* xlcont.c */; };
- 17CBAE2E098B84E300575C58 /* xldbug.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BF29098B654300216F16 /* xldbug.c */; };
- 17CBAE2F098B84E300575C58 /* xldmem.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BF2B098B654300216F16 /* xldmem.c */; };
- 17CBAE30098B84E300575C58 /* xldmem.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BF2C098B654300216F16 /* xldmem.h */; };
- 17CBAE31098B84E300575C58 /* xleval.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BF2E098B654300216F16 /* xleval.c */; };
- 17CBAE32098B84E300575C58 /* xlfio.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BF31098B654300216F16 /* xlfio.c */; };
- 17CBAE33098B84E300575C58 /* xlftab.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BF33098B654300216F16 /* xlftab.c */; };
- 17CBAE34098B84E300575C58 /* xlglob.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BF35098B654300216F16 /* xlglob.c */; };
- 17CBAE35098B84E300575C58 /* xlimage.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BF37098B654300216F16 /* xlimage.c */; };
- 17CBAE36098B84E300575C58 /* xlinit.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BF39098B654300216F16 /* xlinit.c */; };
- 17CBAE37098B84E300575C58 /* xlio.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BF3B098B654300216F16 /* xlio.c */; };
- 17CBAE38098B84E300575C58 /* xlisp.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BF3D098B654300216F16 /* xlisp.c */; };
- 17CBAE39098B84E300575C58 /* xlisp.h in Headers */ = {isa = PBXBuildFile; fileRef = 17C8BF3E098B654300216F16 /* xlisp.h */; };
- 17CBAE3A098B84E300575C58 /* xljump.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BF40098B654300216F16 /* xljump.c */; };
- 17CBAE3B098B84E300575C58 /* xllist.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BF42098B654300216F16 /* xllist.c */; };
- 17CBAE3C098B84E300575C58 /* xlmath.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BF44098B654300216F16 /* xlmath.c */; };
- 17CBAE3D098B84E300575C58 /* xlobj.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BF46098B654300216F16 /* xlobj.c */; };
- 17CBAE3E098B84E300575C58 /* xlpp.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BF48098B654300216F16 /* xlpp.c */; };
- 17CBAE3F098B84E300575C58 /* xlprin.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BF4A098B654300216F16 /* xlprin.c */; };
- 17CBAE40098B84E300575C58 /* xlread.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BF4C098B654300216F16 /* xlread.c */; };
- 17CBAE41098B84E300575C58 /* xlstr.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BF4E098B654400216F16 /* xlstr.c */; };
- 17CBAE42098B84E300575C58 /* xlsubr.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BF50098B654400216F16 /* xlsubr.c */; };
- 17CBAE43098B84E300575C58 /* xlsym.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BF52098B654400216F16 /* xlsym.c */; };
- 17CBAE44098B84E300575C58 /* xlsys.c in Sources */ = {isa = PBXBuildFile; fileRef = 17C8BF54098B654400216F16 /* xlsys.c */; };
17CBAE4A098B85CD00575C58 /* libnyquist.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 176A1A5B098B7B8D00DC73B4 /* libnyquist.a */; };
17FDBCFE098BFF4E00BCEF32 /* config.h in Headers */ = {isa = PBXBuildFile; fileRef = 170731F30988D6AA008541CC /* config.h */; };
17FDBCFF098BFF4E00BCEF32 /* config_types.h in Headers */ = {isa = PBXBuildFile; fileRef = 170732F20988D6AB008541CC /* config_types.h */; };
@@ -701,17 +436,37 @@
17FDBD01098BFF4E00BCEF32 /* os_types.h in Headers */ = {isa = PBXBuildFile; fileRef = 170732F90988D6AB008541CC /* os_types.h */; };
17FDBD02098BFF4E00BCEF32 /* bitwise.c in Sources */ = {isa = PBXBuildFile; fileRef = 170733980988D6AC008541CC /* bitwise.c */; };
17FDBD03098BFF4E00BCEF32 /* framing.c in Sources */ = {isa = PBXBuildFile; fileRef = 1707339A0988D6AC008541CC /* framing.c */; };
+ 1818559A0FFE916C0026D190 /* ScreenshotCommand.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 181855950FFE916C0026D190 /* ScreenshotCommand.cpp */; };
1841B50A0E00AD6E00F386E9 /* ODComputeSummaryTask.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1841B5000E00AD6E00F386E9 /* ODComputeSummaryTask.cpp */; };
1841B50B0E00AD6E00F386E9 /* ODManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1841B5020E00AD6E00F386E9 /* ODManager.cpp */; };
1841B50C0E00AD6E00F386E9 /* ODTask.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1841B5040E00AD6E00F386E9 /* ODTask.cpp */; };
1841B50D0E00AD6E00F386E9 /* ODTaskThread.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1841B5060E00AD6E00F386E9 /* ODTaskThread.cpp */; };
1841B50E0E00AD6E00F386E9 /* ODWaveTrackTaskQueue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1841B5080E00AD6E00F386E9 /* ODWaveTrackTaskQueue.cpp */; };
1841B5110E00AD8D00F386E9 /* ODPCMAliasBlockFile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1841B50F0E00AD8D00F386E9 /* ODPCMAliasBlockFile.cpp */; };
+ 1865A9B81004490500946EE6 /* Lyrics.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1865A9B41004490400946EE6 /* Lyrics.cpp */; };
+ 1865A9B91004490500946EE6 /* LyricsWindow.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1865A9B61004490500946EE6 /* LyricsWindow.cpp */; };
186CCE6D0E51F47400659159 /* ODDecodeBlockFile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 186CCE6B0E51F47400659159 /* ODDecodeBlockFile.cpp */; };
186CCE720E51F48500659159 /* ODDecodeFlacTask.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 186CCE6E0E51F48500659159 /* ODDecodeFlacTask.cpp */; };
186CCE730E51F48500659159 /* ODDecodeTask.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 186CCE700E51F48500659159 /* ODDecodeTask.cpp */; };
186CCEA40E523C8E00659159 /* Profiler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 186CCEA30E523C8E00659159 /* Profiler.cpp */; };
+ 18A2840F0F79BCAB0013A1BE /* Generator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 18A2840E0F79BCAB0013A1BE /* Generator.cpp */; };
18D8314E0ED0F56300FD870D /* Contrast.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 18D8314C0ED0F56200FD870D /* Contrast.cpp */; };
+ 2800FE0D0FF32308005CA9E5 /* pminternal.h in Headers */ = {isa = PBXBuildFile; fileRef = 2800FDF40FF3225B005CA9E5 /* pminternal.h */; };
+ 2800FE0E0FF32308005CA9E5 /* pmutil.c in Sources */ = {isa = PBXBuildFile; fileRef = 2800FDF50FF3225B005CA9E5 /* pmutil.c */; };
+ 2800FE0F0FF32308005CA9E5 /* pmutil.h in Headers */ = {isa = PBXBuildFile; fileRef = 2800FDF60FF3225B005CA9E5 /* pmutil.h */; };
+ 2800FE100FF32308005CA9E5 /* portmidi.c in Sources */ = {isa = PBXBuildFile; fileRef = 2800FDF70FF3225B005CA9E5 /* portmidi.c */; };
+ 2800FE110FF32308005CA9E5 /* portmidi.h in Headers */ = {isa = PBXBuildFile; fileRef = 2800FDF80FF3225B005CA9E5 /* portmidi.h */; };
+ 2800FE120FF32308005CA9E5 /* finddefault.c in Sources */ = {isa = PBXBuildFile; fileRef = 2800FDF90FF3227F005CA9E5 /* finddefault.c */; };
+ 2800FE130FF32308005CA9E5 /* pmmac.c in Sources */ = {isa = PBXBuildFile; fileRef = 2800FDFA0FF3227F005CA9E5 /* pmmac.c */; };
+ 2800FE140FF32308005CA9E5 /* pmmac.h in Headers */ = {isa = PBXBuildFile; fileRef = 2800FDFB0FF3227F005CA9E5 /* pmmac.h */; };
+ 2800FE150FF32308005CA9E5 /* pmmacosxcm.c in Sources */ = {isa = PBXBuildFile; fileRef = 2800FDFC0FF3227F005CA9E5 /* pmmacosxcm.c */; };
+ 2800FE160FF32308005CA9E5 /* pmmacosxcm.h in Headers */ = {isa = PBXBuildFile; fileRef = 2800FDFD0FF3227F005CA9E5 /* pmmacosxcm.h */; };
+ 2800FE170FF32308005CA9E5 /* readbinaryplist.c in Sources */ = {isa = PBXBuildFile; fileRef = 2800FDFE0FF3227F005CA9E5 /* readbinaryplist.c */; };
+ 2800FE180FF32308005CA9E5 /* readbinaryplist.h in Headers */ = {isa = PBXBuildFile; fileRef = 2800FDFF0FF3227F005CA9E5 /* readbinaryplist.h */; };
+ 2800FE190FF32308005CA9E5 /* porttime.h in Headers */ = {isa = PBXBuildFile; fileRef = 2800FE000FF322A1005CA9E5 /* porttime.h */; };
+ 2800FE1A0FF32308005CA9E5 /* ptmacosx_mach.c in Sources */ = {isa = PBXBuildFile; fileRef = 2800FE010FF322A1005CA9E5 /* ptmacosx_mach.c */; };
+ 2800FE230FF32381005CA9E5 /* libportmidi.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 2800FE070FF322D4005CA9E5 /* libportmidi.a */; };
+ 2800FE370FF32566005CA9E5 /* MidiIOPrefs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2800FE350FF32566005CA9E5 /* MidiIOPrefs.cpp */; };
2801A6460BF9268700648258 /* ImportQT.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2801A6430BF9268700648258 /* ImportQT.cpp */; };
2801A6470BF9268700648258 /* ImportQTWrapper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2801A6450BF9268700648258 /* ImportQTWrapper.cpp */; };
280828550A75E0D0000002EF /* LabelDialog.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 280828530A75E0D0000002EF /* LabelDialog.cpp */; };
@@ -727,6 +482,150 @@
283135FF0DFBA2E80076D551 /* FFmpeg.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283135FD0DFBA2E80076D551 /* FFmpeg.cpp */; };
2835062D0A3A88ED00EB1EBD /* pa_unix_util.c in Sources */ = {isa = PBXBuildFile; fileRef = 283506280A3A88ED00EB1EBD /* pa_unix_util.c */; };
2835062E0A3A88ED00EB1EBD /* pa_unix_util.h in Headers */ = {isa = PBXBuildFile; fileRef = 283506290A3A88ED00EB1EBD /* pa_unix_util.h */; };
+ 283753FA0F4288BF00364787 /* mpegheader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753750F4286E100364787 /* mpegheader.cpp */; };
+ 283754070F4288EB00364787 /* apefooter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283752FD0F4286E000364787 /* apefooter.cpp */; };
+ 283754080F4288EB00364787 /* apefooter.h in Headers */ = {isa = PBXBuildFile; fileRef = 283752FE0F4286E000364787 /* apefooter.h */; };
+ 283754090F4288EB00364787 /* apeitem.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283752FF0F4286E000364787 /* apeitem.cpp */; };
+ 2837540A0F4288EB00364787 /* apeitem.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753000F4286E000364787 /* apeitem.h */; };
+ 2837540B0F4288EB00364787 /* apetag.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753010F4286E000364787 /* apetag.cpp */; };
+ 2837540C0F4288EB00364787 /* apetag.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753020F4286E000364787 /* apetag.h */; };
+ 2837540D0F4288EB00364787 /* asfattribute.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753070F4286E000364787 /* asfattribute.cpp */; };
+ 2837540E0F4288EB00364787 /* asfattribute.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753080F4286E000364787 /* asfattribute.h */; };
+ 2837540F0F4288EB00364787 /* asffile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753090F4286E000364787 /* asffile.cpp */; };
+ 283754100F4288EB00364787 /* asffile.h in Headers */ = {isa = PBXBuildFile; fileRef = 2837530A0F4286E000364787 /* asffile.h */; };
+ 283754110F4288EB00364787 /* asfproperties.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2837530B0F4286E000364787 /* asfproperties.cpp */; };
+ 283754120F4288EB00364787 /* asfproperties.h in Headers */ = {isa = PBXBuildFile; fileRef = 2837530C0F4286E000364787 /* asfproperties.h */; };
+ 283754130F4288EB00364787 /* asftag.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2837530D0F4286E000364787 /* asftag.cpp */; };
+ 283754140F4288EB00364787 /* asftag.h in Headers */ = {isa = PBXBuildFile; fileRef = 2837530E0F4286E000364787 /* asftag.h */; };
+ 283754150F4288EB00364787 /* flacfile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753190F4286E000364787 /* flacfile.cpp */; };
+ 283754160F4288EB00364787 /* flacfile.h in Headers */ = {isa = PBXBuildFile; fileRef = 2837531A0F4286E000364787 /* flacfile.h */; };
+ 283754170F4288EB00364787 /* flacproperties.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2837531B0F4286E000364787 /* flacproperties.cpp */; };
+ 283754180F4288EB00364787 /* flacproperties.h in Headers */ = {isa = PBXBuildFile; fileRef = 2837531C0F4286E000364787 /* flacproperties.h */; };
+ 283754190F4288EB00364787 /* mp4atom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753250F4286E000364787 /* mp4atom.cpp */; };
+ 2837541A0F4288EB00364787 /* mp4atom.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753260F4286E000364787 /* mp4atom.h */; };
+ 2837541B0F4288EB00364787 /* mp4file.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753270F4286E000364787 /* mp4file.cpp */; };
+ 2837541C0F4288EB00364787 /* mp4file.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753280F4286E000364787 /* mp4file.h */; };
+ 2837541D0F4288EB00364787 /* mp4item.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753290F4286E000364787 /* mp4item.cpp */; };
+ 2837541E0F4288EB00364787 /* mp4item.h in Headers */ = {isa = PBXBuildFile; fileRef = 2837532A0F4286E000364787 /* mp4item.h */; };
+ 2837541F0F4288EB00364787 /* mp4properties.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2837532B0F4286E000364787 /* mp4properties.cpp */; };
+ 283754200F4288EB00364787 /* mp4properties.h in Headers */ = {isa = PBXBuildFile; fileRef = 2837532C0F4286E000364787 /* mp4properties.h */; };
+ 283754210F4288EB00364787 /* mp4tag.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2837532D0F4286E000364787 /* mp4tag.cpp */; };
+ 283754220F4288EB00364787 /* mp4tag.h in Headers */ = {isa = PBXBuildFile; fileRef = 2837532E0F4286E000364787 /* mp4tag.h */; };
+ 283754230F4288EB00364787 /* mpcfile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753330F4286E000364787 /* mpcfile.cpp */; };
+ 283754240F4288EB00364787 /* mpcfile.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753340F4286E000364787 /* mpcfile.h */; };
+ 283754250F4288EB00364787 /* mpcproperties.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753350F4286E000364787 /* mpcproperties.cpp */; };
+ 283754260F4288EB00364787 /* mpcproperties.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753360F4286E000364787 /* mpcproperties.h */; };
+ 283754270F4288EB00364787 /* id3v1genres.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2837533B0F4286E000364787 /* id3v1genres.cpp */; };
+ 283754280F4288EB00364787 /* id3v1genres.h in Headers */ = {isa = PBXBuildFile; fileRef = 2837533C0F4286E100364787 /* id3v1genres.h */; };
+ 283754290F4288EB00364787 /* id3v1tag.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2837533D0F4286E100364787 /* id3v1tag.cpp */; };
+ 2837542A0F4288EB00364787 /* id3v1tag.h in Headers */ = {isa = PBXBuildFile; fileRef = 2837533E0F4286E100364787 /* id3v1tag.h */; };
+ 2837542B0F4288EB00364787 /* attachedpictureframe.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753440F4286E100364787 /* attachedpictureframe.cpp */; };
+ 2837542C0F4288EB00364787 /* attachedpictureframe.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753450F4286E100364787 /* attachedpictureframe.h */; };
+ 2837542D0F4288EB00364787 /* commentsframe.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753470F4286E100364787 /* commentsframe.cpp */; };
+ 2837542E0F4288EB00364787 /* commentsframe.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753480F4286E100364787 /* commentsframe.h */; };
+ 2837542F0F4288EB00364787 /* generalencapsulatedobjectframe.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753490F4286E100364787 /* generalencapsulatedobjectframe.cpp */; };
+ 283754300F4288EB00364787 /* generalencapsulatedobjectframe.h in Headers */ = {isa = PBXBuildFile; fileRef = 2837534A0F4286E100364787 /* generalencapsulatedobjectframe.h */; };
+ 283754310F4288EB00364787 /* popularimeterframe.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2837534D0F4286E100364787 /* popularimeterframe.cpp */; };
+ 283754320F4288EB00364787 /* popularimeterframe.h in Headers */ = {isa = PBXBuildFile; fileRef = 2837534E0F4286E100364787 /* popularimeterframe.h */; };
+ 283754330F4288EB00364787 /* privateframe.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2837534F0F4286E100364787 /* privateframe.cpp */; };
+ 283754340F4288EB00364787 /* privateframe.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753500F4286E100364787 /* privateframe.h */; };
+ 283754350F4288EB00364787 /* relativevolumeframe.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753510F4286E100364787 /* relativevolumeframe.cpp */; };
+ 283754360F4288EB00364787 /* relativevolumeframe.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753520F4286E100364787 /* relativevolumeframe.h */; };
+ 283754370F4288EB00364787 /* textidentificationframe.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753530F4286E100364787 /* textidentificationframe.cpp */; };
+ 283754380F4288EB00364787 /* textidentificationframe.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753540F4286E100364787 /* textidentificationframe.h */; };
+ 283754390F4288EB00364787 /* uniquefileidentifierframe.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753550F4286E100364787 /* uniquefileidentifierframe.cpp */; };
+ 2837543A0F4288EB00364787 /* uniquefileidentifierframe.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753560F4286E100364787 /* uniquefileidentifierframe.h */; };
+ 2837543B0F4288EB00364787 /* unknownframe.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753570F4286E100364787 /* unknownframe.cpp */; };
+ 2837543C0F4288EB00364787 /* unknownframe.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753580F4286E100364787 /* unknownframe.h */; };
+ 2837543D0F4288EB00364787 /* unsynchronizedlyricsframe.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753590F4286E100364787 /* unsynchronizedlyricsframe.cpp */; };
+ 2837543E0F4288EB00364787 /* unsynchronizedlyricsframe.h in Headers */ = {isa = PBXBuildFile; fileRef = 2837535A0F4286E100364787 /* unsynchronizedlyricsframe.h */; };
+ 2837543F0F4288EB00364787 /* urllinkframe.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2837535B0F4286E100364787 /* urllinkframe.cpp */; };
+ 283754400F4288EB00364787 /* urllinkframe.h in Headers */ = {isa = PBXBuildFile; fileRef = 2837535C0F4286E100364787 /* urllinkframe.h */; };
+ 283754410F4288EB00364787 /* id3v2extendedheader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753610F4286E100364787 /* id3v2extendedheader.cpp */; };
+ 283754420F4288EB00364787 /* id3v2extendedheader.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753620F4286E100364787 /* id3v2extendedheader.h */; };
+ 283754430F4288EB00364787 /* id3v2footer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753630F4286E100364787 /* id3v2footer.cpp */; };
+ 283754440F4288EB00364787 /* id3v2footer.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753640F4286E100364787 /* id3v2footer.h */; };
+ 283754450F4288EB00364787 /* id3v2frame.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753650F4286E100364787 /* id3v2frame.cpp */; };
+ 283754460F4288EB00364787 /* id3v2frame.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753660F4286E100364787 /* id3v2frame.h */; };
+ 283754470F4288EB00364787 /* id3v2framefactory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753670F4286E100364787 /* id3v2framefactory.cpp */; };
+ 283754480F4288EB00364787 /* id3v2framefactory.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753680F4286E100364787 /* id3v2framefactory.h */; };
+ 283754490F4288EB00364787 /* id3v2header.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753690F4286E100364787 /* id3v2header.cpp */; };
+ 2837544A0F4288EB00364787 /* id3v2header.h in Headers */ = {isa = PBXBuildFile; fileRef = 2837536A0F4286E100364787 /* id3v2header.h */; };
+ 2837544B0F4288EB00364787 /* id3v2synchdata.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2837536B0F4286E100364787 /* id3v2synchdata.cpp */; };
+ 2837544C0F4288EB00364787 /* id3v2synchdata.h in Headers */ = {isa = PBXBuildFile; fileRef = 2837536C0F4286E100364787 /* id3v2synchdata.h */; };
+ 2837544D0F4288EB00364787 /* id3v2tag.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2837536D0F4286E100364787 /* id3v2tag.cpp */; };
+ 2837544E0F4288EB00364787 /* id3v2tag.h in Headers */ = {isa = PBXBuildFile; fileRef = 2837536E0F4286E100364787 /* id3v2tag.h */; };
+ 2837544F0F4288EB00364787 /* mpegfile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753730F4286E100364787 /* mpegfile.cpp */; };
+ 283754500F4288EB00364787 /* mpegfile.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753740F4286E100364787 /* mpegfile.h */; };
+ 283754510F4288EB00364787 /* mpegheader.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753760F4286E100364787 /* mpegheader.h */; };
+ 283754520F4288EB00364787 /* mpegproperties.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753770F4286E100364787 /* mpegproperties.cpp */; };
+ 283754530F4288EB00364787 /* mpegproperties.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753780F4286E100364787 /* mpegproperties.h */; };
+ 283754540F4288EB00364787 /* xingheader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753790F4286E100364787 /* xingheader.cpp */; };
+ 283754550F4288EB00364787 /* xingheader.h in Headers */ = {isa = PBXBuildFile; fileRef = 2837537A0F4286E100364787 /* xingheader.h */; };
+ 283754560F4288EB00364787 /* oggflacfile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753810F4286E100364787 /* oggflacfile.cpp */; };
+ 283754570F4288EB00364787 /* oggflacfile.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753820F4286E100364787 /* oggflacfile.h */; };
+ 283754580F4288EB00364787 /* oggfile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753850F4286E100364787 /* oggfile.cpp */; };
+ 283754590F4288EB00364787 /* oggfile.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753860F4286E100364787 /* oggfile.h */; };
+ 2837545A0F4288EB00364787 /* oggpage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753870F4286E100364787 /* oggpage.cpp */; };
+ 2837545B0F4288EB00364787 /* oggpage.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753880F4286E100364787 /* oggpage.h */; };
+ 2837545C0F4288EB00364787 /* oggpageheader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753890F4286E100364787 /* oggpageheader.cpp */; };
+ 2837545D0F4288EB00364787 /* oggpageheader.h in Headers */ = {isa = PBXBuildFile; fileRef = 2837538A0F4286E100364787 /* oggpageheader.h */; };
+ 2837545E0F4288EB00364787 /* speexfile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2837538F0F4286E100364787 /* speexfile.cpp */; };
+ 2837545F0F4288EB00364787 /* speexfile.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753900F4286E100364787 /* speexfile.h */; };
+ 283754600F4288EB00364787 /* speexproperties.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753910F4286E100364787 /* speexproperties.cpp */; };
+ 283754610F4288EB00364787 /* speexproperties.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753920F4286E100364787 /* speexproperties.h */; };
+ 283754620F4288EB00364787 /* vorbisfile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753970F4286E100364787 /* vorbisfile.cpp */; };
+ 283754630F4288EB00364787 /* vorbisfile.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753980F4286E100364787 /* vorbisfile.h */; };
+ 283754640F4288EB00364787 /* vorbisproperties.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753990F4286E100364787 /* vorbisproperties.cpp */; };
+ 283754650F4288EB00364787 /* vorbisproperties.h in Headers */ = {isa = PBXBuildFile; fileRef = 2837539A0F4286E100364787 /* vorbisproperties.h */; };
+ 283754660F4288EB00364787 /* xiphcomment.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2837539B0F4286E100364787 /* xiphcomment.cpp */; };
+ 283754670F4288EB00364787 /* xiphcomment.h in Headers */ = {isa = PBXBuildFile; fileRef = 2837539C0F4286E100364787 /* xiphcomment.h */; };
+ 283754680F4288EB00364787 /* aifffile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2837539F0F4286E100364787 /* aifffile.cpp */; };
+ 283754690F4288EB00364787 /* aifffile.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753A00F4286E100364787 /* aifffile.h */; };
+ 2837546A0F4288EB00364787 /* aiffproperties.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753A10F4286E100364787 /* aiffproperties.cpp */; };
+ 2837546B0F4288EB00364787 /* aiffproperties.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753A20F4286E100364787 /* aiffproperties.h */; };
+ 2837546C0F4288EB00364787 /* rifffile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753A90F4286E100364787 /* rifffile.cpp */; };
+ 2837546D0F4288EB00364787 /* rifffile.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753AA0F4286E100364787 /* rifffile.h */; };
+ 2837546E0F4288EB00364787 /* wavfile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753AF0F4286E100364787 /* wavfile.cpp */; };
+ 2837546F0F4288EB00364787 /* wavfile.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753B00F4286E100364787 /* wavfile.h */; };
+ 283754700F4288EB00364787 /* wavproperties.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753B10F4286E100364787 /* wavproperties.cpp */; };
+ 283754710F4288EB00364787 /* wavproperties.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753B20F4286E100364787 /* wavproperties.h */; };
+ 283754720F4288EB00364787 /* audioproperties.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753120F4286E000364787 /* audioproperties.cpp */; };
+ 283754730F4288EB00364787 /* audioproperties.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753130F4286E000364787 /* audioproperties.h */; };
+ 283754740F4288EB00364787 /* fileref.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753150F4286E000364787 /* fileref.cpp */; };
+ 283754750F4288EB00364787 /* fileref.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753160F4286E000364787 /* fileref.h */; };
+ 283754760F4288EB00364787 /* tag.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753B30F4286E100364787 /* tag.cpp */; };
+ 283754770F4288EB00364787 /* tag.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753B40F4286E100364787 /* tag.h */; };
+ 283754780F4288EB00364787 /* taglib_export.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753B60F4286E100364787 /* taglib_export.h */; };
+ 283754790F4288EB00364787 /* tagunion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753B70F4286E100364787 /* tagunion.cpp */; };
+ 2837547A0F4288EB00364787 /* tagunion.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753B80F4286E100364787 /* tagunion.h */; };
+ 2837547B0F4288EB00364787 /* taglib.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753BD0F4286E100364787 /* taglib.h */; };
+ 2837547C0F4288EB00364787 /* tbytevector.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753BE0F4286E100364787 /* tbytevector.cpp */; };
+ 2837547D0F4288EB00364787 /* tbytevector.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753BF0F4286E100364787 /* tbytevector.h */; };
+ 2837547E0F4288EB00364787 /* tbytevectorlist.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753C00F4286E100364787 /* tbytevectorlist.cpp */; };
+ 2837547F0F4288EB00364787 /* tbytevectorlist.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753C10F4286E100364787 /* tbytevectorlist.h */; };
+ 283754800F4288EB00364787 /* tdebug.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753C20F4286E100364787 /* tdebug.cpp */; };
+ 283754810F4288EB00364787 /* tdebug.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753C30F4286E100364787 /* tdebug.h */; };
+ 283754820F4288EB00364787 /* tfile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753C40F4286E100364787 /* tfile.cpp */; };
+ 283754830F4288EB00364787 /* tfile.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753C50F4286E100364787 /* tfile.h */; };
+ 283754840F4288EB00364787 /* tlist.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753C60F4286E100364787 /* tlist.h */; };
+ 283754860F4288EB00364787 /* tmap.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753C80F4286E100364787 /* tmap.h */; };
+ 283754870F4288EB00364787 /* tstring.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753CA0F4286E100364787 /* tstring.cpp */; };
+ 283754880F4288EB00364787 /* tstring.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753CB0F4286E100364787 /* tstring.h */; };
+ 283754890F4288EB00364787 /* tstringlist.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753CC0F4286E100364787 /* tstringlist.cpp */; };
+ 2837548A0F4288EB00364787 /* tstringlist.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753CD0F4286E100364787 /* tstringlist.h */; };
+ 2837548B0F4288EB00364787 /* unicode.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753CE0F4286E100364787 /* unicode.cpp */; };
+ 2837548C0F4288EB00364787 /* unicode.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753CF0F4286E100364787 /* unicode.h */; };
+ 2837548D0F4288EB00364787 /* trueaudiofile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753D40F4286E100364787 /* trueaudiofile.cpp */; };
+ 2837548E0F4288EB00364787 /* trueaudiofile.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753D50F4286E100364787 /* trueaudiofile.h */; };
+ 2837548F0F4288EB00364787 /* trueaudioproperties.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753D60F4286E100364787 /* trueaudioproperties.cpp */; };
+ 283754900F4288EB00364787 /* trueaudioproperties.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753D70F4286E100364787 /* trueaudioproperties.h */; };
+ 283754910F4288EB00364787 /* wavpackfile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753DC0F4286E100364787 /* wavpackfile.cpp */; };
+ 283754920F4288EB00364787 /* wavpackfile.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753DD0F4286E100364787 /* wavpackfile.h */; };
+ 283754930F4288EB00364787 /* wavpackproperties.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283753DE0F4286E100364787 /* wavpackproperties.cpp */; };
+ 283754940F4288EB00364787 /* wavpackproperties.h in Headers */ = {isa = PBXBuildFile; fileRef = 283753DF0F4286E100364787 /* wavpackproperties.h */; };
+ 2837549C0F42898E00364787 /* libtaglib.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 283753E40F42875100364787 /* libtaglib.a */; };
+ 283754A60F428A8E00364787 /* config.h in Headers */ = {isa = PBXBuildFile; fileRef = 283754A50F428A8E00364787 /* config.h */; };
283A11A50A2C0DE7004372C4 /* broadcast.c in Sources */ = {isa = PBXBuildFile; fileRef = 283A11A40A2C0DE7004372C4 /* broadcast.c */; };
283A11AA0A2C0E15004372C4 /* ShuttleGui.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283A11A60A2C0E15004372C4 /* ShuttleGui.cpp */; };
283A11AB0A2C0E15004372C4 /* Theme.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 283A11A80A2C0E15004372C4 /* Theme.cpp */; };
@@ -780,6 +679,212 @@
2840CFA80AEB883500F49FC3 /* libtwolame.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 2840CF220AEB803C00F49FC3 /* libtwolame.a */; };
28456AC20A2C180E00C23C1E /* ThemePrefs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 28456AC00A2C180E00C23C1E /* ThemePrefs.cpp */; };
2849B4620A7444BE00ECF12D /* Dependencies.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2849B4600A7444BE00ECF12D /* Dependencies.cpp */; };
+ 284A7B920F31571C001D7A67 /* nyx.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A7B8F0F31571B001D7A67 /* nyx.c */; };
+ 284A7B930F31571C001D7A67 /* nyx.h in Headers */ = {isa = PBXBuildFile; fileRef = 284A7B900F31571B001D7A67 /* nyx.h */; };
+ 284A7B940F31571C001D7A67 /* xlextstart.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A7B910F31571B001D7A67 /* xlextstart.c */; };
+ 284A82990F3158A2001D7A67 /* cext.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A80380F3158A1001D7A67 /* cext.c */; };
+ 284A829B0F3158A2001D7A67 /* cleanup.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A803A0F3158A1001D7A67 /* cleanup.c */; };
+ 284A829D0F3158A2001D7A67 /* cmdline.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A803C0F3158A1001D7A67 /* cmdline.c */; };
+ 284A829F0F3158A2001D7A67 /* cmtcmd.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A803E0F3158A1001D7A67 /* cmtcmd.c */; };
+ 284A82A50F3158A2001D7A67 /* mem.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A80440F3158A1001D7A67 /* mem.c */; };
+ 284A82AB0F3158A2001D7A67 /* midifile.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A804A0F3158A1001D7A67 /* midifile.c */; };
+ 284A82AD0F3158A2001D7A67 /* midifns.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A804C0F3158A1001D7A67 /* midifns.c */; };
+ 284A82B10F3158A2001D7A67 /* moxc.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A80500F3158A1001D7A67 /* moxc.c */; };
+ 284A82B50F3158A2001D7A67 /* record.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A80540F3158A1001D7A67 /* record.c */; };
+ 284A82B70F3158A2001D7A67 /* seq.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A80560F3158A1001D7A67 /* seq.c */; };
+ 284A82BA0F3158A2001D7A67 /* seqmread.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A80590F3158A1001D7A67 /* seqmread.c */; };
+ 284A82BC0F3158A2001D7A67 /* seqmwrite.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A805B0F3158A1001D7A67 /* seqmwrite.c */; };
+ 284A82BE0F3158A2001D7A67 /* seqread.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A805D0F3158A1001D7A67 /* seqread.c */; };
+ 284A82C00F3158A2001D7A67 /* seqwrite.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A805F0F3158A1001D7A67 /* seqwrite.c */; };
+ 284A82C30F3158A2001D7A67 /* tempomap.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A80620F3158A1001D7A67 /* tempomap.c */; };
+ 284A82C50F3158A2001D7A67 /* timebase.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A80640F3158A1001D7A67 /* timebase.c */; };
+ 284A82C70F3158A2001D7A67 /* userio.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A80660F3158A1001D7A67 /* userio.c */; };
+ 284A82CB0F3158A2001D7A67 /* add.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A806C0F3158A1001D7A67 /* add.c */; };
+ 284A82CD0F3158A2001D7A67 /* avg.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A806E0F3158A1001D7A67 /* avg.c */; };
+ 284A82CF0F3158A2001D7A67 /* compose.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A80700F3158A1001D7A67 /* compose.c */; };
+ 284A82D10F3158A2001D7A67 /* convolve.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A80720F3158A1001D7A67 /* convolve.c */; };
+ 284A82D40F3158A2001D7A67 /* debug.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A80750F3158A1001D7A67 /* debug.c */; };
+ 284A82D60F3158A2001D7A67 /* downsample.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A80770F3158A1001D7A67 /* downsample.c */; };
+ 284A82DB0F3158A2001D7A67 /* falloc.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A807C0F3158A1001D7A67 /* falloc.c */; };
+ 284A82DD0F3158A2001D7A67 /* ffilterkit.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A807E0F3158A1001D7A67 /* ffilterkit.c */; };
+ 284A82E00F3158A2001D7A67 /* fft.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A80810F3158A1001D7A67 /* fft.c */; };
+ 284A82E60F3158A2001D7A67 /* handlers.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A80870F3158A1001D7A67 /* handlers.c */; };
+ 284A82E70F3158A2001D7A67 /* inverse.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A80880F3158A1001D7A67 /* inverse.c */; };
+ 284A82E90F3158A2001D7A67 /* local.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A808A0F3158A1001D7A67 /* local.c */; };
+ 284A82EC0F3158A2001D7A67 /* lpanal.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A808D0F3158A1001D7A67 /* lpanal.c */; };
+ 284A82EE0F3158A2001D7A67 /* multiread.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A808F0F3158A1001D7A67 /* multiread.c */; };
+ 284A82F00F3158A2001D7A67 /* multiseq.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A80910F3158A1001D7A67 /* multiseq.c */; };
+ 284A82F80F3158A2001D7A67 /* probe.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A80990F3158A1001D7A67 /* probe.c */; };
+ 284A82FA0F3158A2001D7A67 /* resamp.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A809B0F3158A1001D7A67 /* resamp.c */; };
+ 284A82FC0F3158A2001D7A67 /* resampv.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A809D0F3158A1001D7A67 /* resampv.c */; };
+ 284A82FF0F3158A2001D7A67 /* samples.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A80A00F3158A1001D7A67 /* samples.c */; };
+ 284A83010F3158A2001D7A67 /* seqext.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A80A20F3158A1001D7A67 /* seqext.c */; };
+ 284A83030F3158A2001D7A67 /* seqfnint.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A80A60F3158A1001D7A67 /* seqfnint.c */; };
+ 284A83060F3158A2001D7A67 /* seqinterf.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A80AA0F3158A1001D7A67 /* seqinterf.c */; };
+ 284A83080F3158A2001D7A67 /* sliders.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A80AC0F3158A1001D7A67 /* sliders.c */; };
+ 284A830C0F3158A2001D7A67 /* sndfnint.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A80B20F3158A1001D7A67 /* sndfnint.c */; };
+ 284A830F0F3158A2001D7A67 /* sndmax.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A80B60F3158A1001D7A67 /* sndmax.c */; };
+ 284A83110F3158A2001D7A67 /* sndread.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A80B80F3158A1001D7A67 /* sndread.c */; };
+ 284A83130F3158A2001D7A67 /* sndseq.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A80BA0F3158A1001D7A67 /* sndseq.c */; };
+ 284A83180F3158A2001D7A67 /* sndwritepa.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A80BF0F3158A1001D7A67 /* sndwritepa.c */; };
+ 284A83190F3158A2001D7A67 /* sound.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A80C00F3158A1001D7A67 /* sound.c */; };
+ 284A831B0F3158A2001D7A67 /* stats.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A80C20F3158A1001D7A67 /* stats.c */; };
+ 284A831D0F3158A2001D7A67 /* trigger.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A80C40F3158A1001D7A67 /* trigger.c */; };
+ 284A831F0F3158A2001D7A67 /* yin.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A80C60F3158A1001D7A67 /* yin.c */; };
+ 284A83490F3158A2001D7A67 /* instr.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A80F30F3158A1001D7A67 /* instr.cpp */; };
+ 284A834B0F3158A2001D7A67 /* ADSR.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A80F60F3158A1001D7A67 /* ADSR.cpp */; };
+ 284A834C0F3158A2001D7A67 /* BandedWG.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A80F70F3158A1001D7A67 /* BandedWG.cpp */; };
+ 284A834D0F3158A2001D7A67 /* BiQuad.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A80F80F3158A1001D7A67 /* BiQuad.cpp */; };
+ 284A834E0F3158A2001D7A67 /* Bowed.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A80F90F3158A1001D7A67 /* Bowed.cpp */; };
+ 284A834F0F3158A2001D7A67 /* BowTable.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A80FA0F3158A1001D7A67 /* BowTable.cpp */; };
+ 284A83500F3158A2001D7A67 /* Chorus.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A80FB0F3158A1001D7A67 /* Chorus.cpp */; };
+ 284A83510F3158A2001D7A67 /* Clarinet.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A80FC0F3158A1001D7A67 /* Clarinet.cpp */; };
+ 284A83520F3158A2001D7A67 /* Delay.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A80FD0F3158A1001D7A67 /* Delay.cpp */; };
+ 284A83530F3158A2001D7A67 /* DelayA.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A80FE0F3158A1001D7A67 /* DelayA.cpp */; };
+ 284A83540F3158A2001D7A67 /* DelayL.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A80FF0F3158A1001D7A67 /* DelayL.cpp */; };
+ 284A83550F3158A2001D7A67 /* Effect.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A81000F3158A1001D7A67 /* Effect.cpp */; };
+ 284A83560F3158A2001D7A67 /* Envelope.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A81010F3158A1001D7A67 /* Envelope.cpp */; };
+ 284A83570F3158A2001D7A67 /* FileRead.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A81020F3158A1001D7A67 /* FileRead.cpp */; };
+ 284A83580F3158A2001D7A67 /* FileWvIn.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A81030F3158A1001D7A67 /* FileWvIn.cpp */; };
+ 284A83590F3158A2001D7A67 /* Filter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A81040F3158A1001D7A67 /* Filter.cpp */; };
+ 284A835A0F3158A2001D7A67 /* Flute.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A81050F3158A1001D7A67 /* Flute.cpp */; };
+ 284A835B0F3158A2001D7A67 /* Function.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A81060F3158A1001D7A67 /* Function.cpp */; };
+ 284A835C0F3158A2001D7A67 /* Generator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A81070F3158A1001D7A67 /* Generator.cpp */; };
+ 284A835D0F3158A2001D7A67 /* Instrmnt.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A81080F3158A1001D7A67 /* Instrmnt.cpp */; };
+ 284A835E0F3158A2001D7A67 /* JCRev.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A81090F3158A1001D7A67 /* JCRev.cpp */; };
+ 284A835F0F3158A2001D7A67 /* JetTable.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A810A0F3158A1001D7A67 /* JetTable.cpp */; };
+ 284A83600F3158A2001D7A67 /* Mandolin.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A810B0F3158A1001D7A67 /* Mandolin.cpp */; };
+ 284A83610F3158A2001D7A67 /* Modal.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A810C0F3158A1001D7A67 /* Modal.cpp */; };
+ 284A83620F3158A2001D7A67 /* ModalBar.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A810D0F3158A1001D7A67 /* ModalBar.cpp */; };
+ 284A83630F3158A2001D7A67 /* Noise.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A810E0F3158A1001D7A67 /* Noise.cpp */; };
+ 284A83640F3158A2001D7A67 /* NRev.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A810F0F3158A1001D7A67 /* NRev.cpp */; };
+ 284A83650F3158A2001D7A67 /* OnePole.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A81100F3158A1001D7A67 /* OnePole.cpp */; };
+ 284A83660F3158A2001D7A67 /* OneZero.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A81110F3158A1001D7A67 /* OneZero.cpp */; };
+ 284A83670F3158A2001D7A67 /* PitShift.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A81120F3158A1001D7A67 /* PitShift.cpp */; };
+ 284A83680F3158A2001D7A67 /* PluckTwo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A81130F3158A1001D7A67 /* PluckTwo.cpp */; };
+ 284A83690F3158A2001D7A67 /* PoleZero.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A81140F3158A1001D7A67 /* PoleZero.cpp */; };
+ 284A836A0F3158A2001D7A67 /* PRCRev.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A81150F3158A1001D7A67 /* PRCRev.cpp */; };
+ 284A836B0F3158A2001D7A67 /* ReedTable.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A81160F3158A1001D7A67 /* ReedTable.cpp */; };
+ 284A836C0F3158A2001D7A67 /* Saxofony.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A81170F3158A1001D7A67 /* Saxofony.cpp */; };
+ 284A836D0F3158A2001D7A67 /* SineWave.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A81180F3158A1001D7A67 /* SineWave.cpp */; };
+ 284A836E0F3158A2001D7A67 /* Sitar.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A81190F3158A1001D7A67 /* Sitar.cpp */; };
+ 284A836F0F3158A2001D7A67 /* Stk.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A811A0F3158A1001D7A67 /* Stk.cpp */; };
+ 284A83700F3158A2001D7A67 /* WaveLoop.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A811B0F3158A1001D7A67 /* WaveLoop.cpp */; };
+ 284A83710F3158A2001D7A67 /* WvIn.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A811C0F3158A1001D7A67 /* WvIn.cpp */; };
+ 284A83720F3158A2001D7A67 /* stkinit.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A811D0F3158A1001D7A67 /* stkinit.cpp */; };
+ 284A83740F3158A2001D7A67 /* stkint.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284A811F0F3158A1001D7A67 /* stkint.cpp */; };
+ 284A83AE0F3158A2001D7A67 /* abs.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A817E0F3158A2001D7A67 /* abs.c */; };
+ 284A83B00F3158A2001D7A67 /* allpoles.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81810F3158A2001D7A67 /* allpoles.c */; };
+ 284A83B20F3158A2001D7A67 /* alpass.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81840F3158A2001D7A67 /* alpass.c */; };
+ 284A83B40F3158A2001D7A67 /* alpasscv.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81870F3158A2001D7A67 /* alpasscv.c */; };
+ 284A83B80F3158A2001D7A67 /* alpassvv.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A818D0F3158A2001D7A67 /* alpassvv.c */; };
+ 284A83BA0F3158A2001D7A67 /* amosc.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81900F3158A2001D7A67 /* amosc.c */; };
+ 284A83BC0F3158A2001D7A67 /* areson.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81930F3158A2001D7A67 /* areson.c */; };
+ 284A83BE0F3158A2001D7A67 /* aresoncv.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81960F3158A2001D7A67 /* aresoncv.c */; };
+ 284A83C00F3158A2001D7A67 /* aresonvc.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81990F3158A2001D7A67 /* aresonvc.c */; };
+ 284A83C20F3158A2001D7A67 /* aresonvv.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A819C0F3158A2001D7A67 /* aresonvv.c */; };
+ 284A83C40F3158A2001D7A67 /* atone.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A819F0F3158A2001D7A67 /* atone.c */; };
+ 284A83C60F3158A2001D7A67 /* atonev.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81A20F3158A2001D7A67 /* atonev.c */; };
+ 284A83C80F3158A2001D7A67 /* biquadfilt.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81A50F3158A2001D7A67 /* biquadfilt.c */; };
+ 284A83CA0F3158A2001D7A67 /* buzz.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81A80F3158A2001D7A67 /* buzz.c */; };
+ 284A83CC0F3158A2001D7A67 /* chase.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81AB0F3158A2001D7A67 /* chase.c */; };
+ 284A83CE0F3158A2001D7A67 /* clip.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81AE0F3158A2001D7A67 /* clip.c */; };
+ 284A83D00F3158A2001D7A67 /* congen.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81B10F3158A2001D7A67 /* congen.c */; };
+ 284A83D20F3158A2001D7A67 /* const.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81B40F3158A2001D7A67 /* const.c */; };
+ 284A83D40F3158A2001D7A67 /* coterm.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81B80F3158A2001D7A67 /* coterm.c */; };
+ 284A83D60F3158A2001D7A67 /* delaycc.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81BC0F3158A2001D7A67 /* delaycc.c */; };
+ 284A83D80F3158A2001D7A67 /* delaycv.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81BF0F3158A2001D7A67 /* delaycv.c */; };
+ 284A83DA0F3158A2001D7A67 /* eqbandvvv.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81C40F3158A2001D7A67 /* eqbandvvv.c */; };
+ 284A83DC0F3158A2001D7A67 /* exp.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81C70F3158A2001D7A67 /* exp.c */; };
+ 284A83DE0F3158A2001D7A67 /* fmfb.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81CB0F3158A2001D7A67 /* fmfb.c */; };
+ 284A83E00F3158A2001D7A67 /* fmfbv.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81CE0F3158A2001D7A67 /* fmfbv.c */; };
+ 284A83E20F3158A2001D7A67 /* fmosc.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81D10F3158A2001D7A67 /* fmosc.c */; };
+ 284A83E40F3158A2001D7A67 /* follow.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81D40F3158A2001D7A67 /* follow.c */; };
+ 284A83E60F3158A2001D7A67 /* fromarraystream.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81D70F3158A2001D7A67 /* fromarraystream.c */; };
+ 284A83E80F3158A2001D7A67 /* fromobject.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81DA0F3158A2001D7A67 /* fromobject.c */; };
+ 284A83EA0F3158A2001D7A67 /* gate.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81DD0F3158A2001D7A67 /* gate.c */; };
+ 284A83EC0F3158A2001D7A67 /* ifft.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81E10F3158A2001D7A67 /* ifft.c */; };
+ 284A83EE0F3158A2001D7A67 /* instrbanded.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81E60F3158A2001D7A67 /* instrbanded.c */; };
+ 284A83F00F3158A2001D7A67 /* instrbow.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81E90F3158A2001D7A67 /* instrbow.c */; };
+ 284A83F20F3158A2001D7A67 /* instrbowedfreq.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81EC0F3158A2001D7A67 /* instrbowedfreq.c */; };
+ 284A83F40F3158A2001D7A67 /* instrclar.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81EF0F3158A2001D7A67 /* instrclar.c */; };
+ 284A83F60F3158A2001D7A67 /* instrclarall.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81F20F3158A2001D7A67 /* instrclarall.c */; };
+ 284A83F80F3158A2001D7A67 /* instrclarfreq.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81F50F3158A2001D7A67 /* instrclarfreq.c */; };
+ 284A83FA0F3158A2001D7A67 /* instrflute.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81F80F3158A2001D7A67 /* instrflute.c */; };
+ 284A83FC0F3158A2001D7A67 /* instrfluteall.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81FB0F3158A2001D7A67 /* instrfluteall.c */; };
+ 284A83FE0F3158A2001D7A67 /* instrflutefreq.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A81FE0F3158A2001D7A67 /* instrflutefreq.c */; };
+ 284A84000F3158A2001D7A67 /* instrmandolin.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82010F3158A2001D7A67 /* instrmandolin.c */; };
+ 284A84020F3158A2001D7A67 /* instrmodalbar.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82040F3158A2001D7A67 /* instrmodalbar.c */; };
+ 284A84040F3158A2001D7A67 /* instrsax.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82070F3158A2001D7A67 /* instrsax.c */; };
+ 284A84060F3158A2001D7A67 /* instrsaxall.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A820A0F3158A2001D7A67 /* instrsaxall.c */; };
+ 284A84080F3158A2001D7A67 /* instrsaxfreq.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A820D0F3158A2001D7A67 /* instrsaxfreq.c */; };
+ 284A840A0F3158A2001D7A67 /* instrsitar.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82100F3158A2001D7A67 /* instrsitar.c */; };
+ 284A840C0F3158A2001D7A67 /* integrate.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82130F3158A2001D7A67 /* integrate.c */; };
+ 284A840E0F3158A2001D7A67 /* log.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82160F3158A2001D7A67 /* log.c */; };
+ 284A84100F3158A2001D7A67 /* lpreson.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82190F3158A2001D7A67 /* lpreson.c */; };
+ 284A84120F3158A2001D7A67 /* maxv.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A821C0F3158A2001D7A67 /* maxv.c */; };
+ 284A84140F3158A2001D7A67 /* offset.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A821F0F3158A2001D7A67 /* offset.c */; };
+ 284A84160F3158A2001D7A67 /* oneshot.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82220F3158A2001D7A67 /* oneshot.c */; };
+ 284A84180F3158A2001D7A67 /* osc.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82250F3158A2001D7A67 /* osc.c */; };
+ 284A841A0F3158A2001D7A67 /* partial.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82280F3158A2001D7A67 /* partial.c */; };
+ 284A841C0F3158A2001D7A67 /* pluck.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A822B0F3158A2001D7A67 /* pluck.c */; };
+ 284A841E0F3158A2001D7A67 /* prod.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A822E0F3158A2001D7A67 /* prod.c */; };
+ 284A84200F3158A2001D7A67 /* pwl.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82310F3158A2001D7A67 /* pwl.c */; };
+ 284A84220F3158A2001D7A67 /* quantize.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82340F3158A2001D7A67 /* quantize.c */; };
+ 284A84240F3158A2001D7A67 /* recip.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82370F3158A2001D7A67 /* recip.c */; };
+ 284A84260F3158A2001D7A67 /* reson.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A823A0F3158A2001D7A67 /* reson.c */; };
+ 284A84280F3158A2001D7A67 /* resoncv.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A823D0F3158A2001D7A67 /* resoncv.c */; };
+ 284A842A0F3158A2001D7A67 /* resonvc.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82400F3158A2001D7A67 /* resonvc.c */; };
+ 284A842C0F3158A2001D7A67 /* resonvv.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82430F3158A2001D7A67 /* resonvv.c */; };
+ 284A842E0F3158A2001D7A67 /* sampler.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82460F3158A2001D7A67 /* sampler.c */; };
+ 284A84300F3158A2001D7A67 /* scale.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82490F3158A2001D7A67 /* scale.c */; };
+ 284A84320F3158A2001D7A67 /* shape.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A824C0F3158A2001D7A67 /* shape.c */; };
+ 284A84340F3158A2001D7A67 /* sine.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A824F0F3158A2001D7A67 /* sine.c */; };
+ 284A84360F3158A2001D7A67 /* siosc.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82520F3158A2001D7A67 /* siosc.c */; };
+ 284A84380F3158A2001D7A67 /* slope.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82550F3158A2001D7A67 /* slope.c */; };
+ 284A843A0F3158A2001D7A67 /* sqrt.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82580F3158A2001D7A67 /* sqrt.c */; };
+ 284A843C0F3158A2001D7A67 /* stkchorus.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A825B0F3158A2001D7A67 /* stkchorus.c */; };
+ 284A843E0F3158A2001D7A67 /* stkpitshift.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A825E0F3158A2001D7A67 /* stkpitshift.c */; };
+ 284A84400F3158A2001D7A67 /* stkrev.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82610F3158A2001D7A67 /* stkrev.c */; };
+ 284A84420F3158A2001D7A67 /* tapf.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82640F3158A2001D7A67 /* tapf.c */; };
+ 284A84440F3158A2001D7A67 /* tapv.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82670F3158A2001D7A67 /* tapv.c */; };
+ 284A84460F3158A2001D7A67 /* tone.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A826A0F3158A2001D7A67 /* tone.c */; };
+ 284A84480F3158A2001D7A67 /* tonev.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A826D0F3158A2001D7A67 /* tonev.c */; };
+ 284A844A0F3158A2001D7A67 /* upsample.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82720F3158A2001D7A67 /* upsample.c */; };
+ 284A844C0F3158A2001D7A67 /* white.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82750F3158A2001D7A67 /* white.c */; };
+ 284A844E0F3158A2001D7A67 /* extern.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A827B0F3158A2001D7A67 /* extern.c */; };
+ 284A84520F3158A2001D7A67 /* path.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A827F0F3158A2001D7A67 /* path.c */; };
+ 284A84530F3158A2001D7A67 /* xlbfun.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82800F3158A2001D7A67 /* xlbfun.c */; };
+ 284A84540F3158A2001D7A67 /* xlcont.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82810F3158A2001D7A67 /* xlcont.c */; };
+ 284A84550F3158A2001D7A67 /* xldbug.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82820F3158A2001D7A67 /* xldbug.c */; };
+ 284A84560F3158A2001D7A67 /* xldmem.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82830F3158A2001D7A67 /* xldmem.c */; };
+ 284A84580F3158A2001D7A67 /* xleval.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82850F3158A2001D7A67 /* xleval.c */; };
+ 284A84590F3158A2001D7A67 /* xlfio.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82860F3158A2001D7A67 /* xlfio.c */; };
+ 284A845A0F3158A2001D7A67 /* xlftab.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82870F3158A2001D7A67 /* xlftab.c */; };
+ 284A845B0F3158A2001D7A67 /* xlglob.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82880F3158A2001D7A67 /* xlglob.c */; };
+ 284A845C0F3158A2001D7A67 /* xlimage.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82890F3158A2001D7A67 /* xlimage.c */; };
+ 284A845D0F3158A2001D7A67 /* xlinit.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A828A0F3158A2001D7A67 /* xlinit.c */; };
+ 284A845E0F3158A2001D7A67 /* xlio.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A828B0F3158A2001D7A67 /* xlio.c */; };
+ 284A845F0F3158A2001D7A67 /* xlisp.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A828C0F3158A2001D7A67 /* xlisp.c */; };
+ 284A84610F3158A2001D7A67 /* xljump.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A828E0F3158A2001D7A67 /* xljump.c */; };
+ 284A84620F3158A2001D7A67 /* xllist.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A828F0F3158A2001D7A67 /* xllist.c */; };
+ 284A84630F3158A2001D7A67 /* xlmath.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82900F3158A2001D7A67 /* xlmath.c */; };
+ 284A84640F3158A2001D7A67 /* xlobj.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82910F3158A2001D7A67 /* xlobj.c */; };
+ 284A84650F3158A2001D7A67 /* xlpp.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82920F3158A2001D7A67 /* xlpp.c */; };
+ 284A84660F3158A2001D7A67 /* xlprin.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82930F3158A2001D7A67 /* xlprin.c */; };
+ 284A84670F3158A2001D7A67 /* xlread.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82940F3158A2001D7A67 /* xlread.c */; };
+ 284A84680F3158A2001D7A67 /* xlstr.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82950F3158A2001D7A67 /* xlstr.c */; };
+ 284A84690F3158A2001D7A67 /* xlsubr.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82960F3158A2001D7A67 /* xlsubr.c */; };
+ 284A846A0F3158A2001D7A67 /* xlsym.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82970F3158A2001D7A67 /* xlsym.c */; };
+ 284A846B0F3158A2001D7A67 /* xlsys.c in Sources */ = {isa = PBXBuildFile; fileRef = 284A82980F3158A2001D7A67 /* xlsys.c */; };
+ 284B279A0FC66864005EAC96 /* DevicePrefs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284B278E0FC66863005EAC96 /* DevicePrefs.cpp */; };
+ 284B279B0FC66864005EAC96 /* ImportExportPrefs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284B27900FC66863005EAC96 /* ImportExportPrefs.cpp */; };
+ 284B279C0FC66864005EAC96 /* LibraryPrefs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284B27920FC66863005EAC96 /* LibraryPrefs.cpp */; };
+ 284B279D0FC66864005EAC96 /* PlaybackPrefs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284B27940FC66863005EAC96 /* PlaybackPrefs.cpp */; };
+ 284B279E0FC66864005EAC96 /* ProjectsPrefs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284B27960FC66863005EAC96 /* ProjectsPrefs.cpp */; };
+ 284B279F0FC66864005EAC96 /* RecordingPrefs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284B27980FC66863005EAC96 /* RecordingPrefs.cpp */; };
+ 284B27E40FC66CCD005EAC96 /* TracksPrefs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284B27E00FC66CCD005EAC96 /* TracksPrefs.cpp */; };
+ 284B27E50FC66CCD005EAC96 /* WarningsPrefs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 284B27E20FC66CCD005EAC96 /* WarningsPrefs.cpp */; };
28501EA10CEECEF80029ABAA /* HelpText.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 28501E9D0CEECEF80029ABAA /* HelpText.cpp */; };
28501EA20CEECEF80029ABAA /* SplashDialog.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 28501E9F0CEECEF80029ABAA /* SplashDialog.cpp */; };
28501EAA0CEED0670029ABAA /* LoadVamp.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 28501E970CEECE910029ABAA /* LoadVamp.cpp */; };
@@ -1036,12 +1141,19 @@
287BD9F40E25E02C00CB4467 /* value.c in Sources */ = {isa = PBXBuildFile; fileRef = 287BD9D00E25E02C00CB4467 /* value.c */; };
287BD9F50E25E02C00CB4467 /* values.c in Sources */ = {isa = PBXBuildFile; fileRef = 287BD9D10E25E02C00CB4467 /* values.c */; };
287BD9F60E25E02C00CB4467 /* world.c in Sources */ = {isa = PBXBuildFile; fileRef = 287BD9D20E25E02C00CB4467 /* world.c */; };
+ 287DBE890F3F6B2700C5BBED /* audio_detect.c in Sources */ = {isa = PBXBuildFile; fileRef = 287DBE830F3F6B2700C5BBED /* audio_detect.c */; };
+ 287DBE8A0F3F6B2700C5BBED /* chunk.c in Sources */ = {isa = PBXBuildFile; fileRef = 287DBE840F3F6B2700C5BBED /* chunk.c */; };
+ 287DBE8B0F3F6B2700C5BBED /* ima_oki_adpcm.c in Sources */ = {isa = PBXBuildFile; fileRef = 287DBE850F3F6B2700C5BBED /* ima_oki_adpcm.c */; };
+ 287DBE8C0F3F6B2700C5BBED /* ima_oki_adpcm.h in Headers */ = {isa = PBXBuildFile; fileRef = 287DBE860F3F6B2700C5BBED /* ima_oki_adpcm.h */; };
+ 287DBE8D0F3F6B2700C5BBED /* mpc2k.c in Sources */ = {isa = PBXBuildFile; fileRef = 287DBE870F3F6B2700C5BBED /* mpc2k.c */; };
+ 287DBE8E0F3F6B2700C5BBED /* rf64.c in Sources */ = {isa = PBXBuildFile; fileRef = 287DBE880F3F6B2700C5BBED /* rf64.c */; };
287F9F3D0A69748F00F025FA /* TimeDialog.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 287F9F3C0A69748F00F025FA /* TimeDialog.cpp */; };
288052870DEA69C900671EA4 /* PipeServer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 288052840DEA69C900671EA4 /* PipeServer.cpp */; };
288052880DEA69C900671EA4 /* ScripterCallback.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 288052850DEA69C900671EA4 /* ScripterCallback.cpp */; };
288052C20DEA73F500671EA4 /* NonGuiThread.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 288052BC0DEA72F300671EA4 /* NonGuiThread.cpp */; };
288053740DEA9E4C00671EA4 /* ScripterCallback.h in Headers */ = {isa = PBXBuildFile; fileRef = 288052860DEA69C900671EA4 /* ScripterCallback.h */; };
2882177B0A35D8730029AF41 /* ShuttlePrefs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 288217790A35D8730029AF41 /* ShuttlePrefs.cpp */; };
+ 2885BFF40FC108F800128165 /* LoadVST.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2885BFF20FC108F800128165 /* LoadVST.cpp */; };
2891B2870C531D2C0044FBE3 /* FindClipping.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2891B2850C531D2C0044FBE3 /* FindClipping.cpp */; };
2897F6F00AB3DB5A003C20C5 /* ControlToolBar.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2897F6DC0AB3DB5A003C20C5 /* ControlToolBar.cpp */; };
2897F6F10AB3DB5A003C20C5 /* EditToolBar.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2897F6DE0AB3DB5A003C20C5 /* EditToolBar.cpp */; };
@@ -1054,7 +1166,14 @@
2897F6F80AB3DB5A003C20C5 /* ToolsToolBar.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2897F6EC0AB3DB5A003C20C5 /* ToolsToolBar.cpp */; };
2897F6F90AB3DB5A003C20C5 /* TranscriptionToolBar.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2897F6EE0AB3DB5A003C20C5 /* TranscriptionToolBar.cpp */; };
2897F6FE0AB3DCD0003C20C5 /* Grabber.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2897F6FC0AB3DCD0003C20C5 /* Grabber.cpp */; };
+ 289E750A1006D0BD00CEF79B /* MixerBoard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 289E75081006D0BD00CEF79B /* MixerBoard.cpp */; };
289F9C7E0AC671BB00797DC1 /* DeviceToolBar.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 289F9C7C0AC671BB00797DC1 /* DeviceToolBar.cpp */; };
+ 28A4E2AC0F60319300E9E7F2 /* fftext.c in Sources */ = {isa = PBXBuildFile; fileRef = 28A4E2A40F60319300E9E7F2 /* fftext.c */; };
+ 28A4E2AD0F60319300E9E7F2 /* fftext.h in Headers */ = {isa = PBXBuildFile; fileRef = 28A4E2A50F60319300E9E7F2 /* fftext.h */; };
+ 28A4E2AE0F60319300E9E7F2 /* fftlib.c in Sources */ = {isa = PBXBuildFile; fileRef = 28A4E2A60F60319300E9E7F2 /* fftlib.c */; };
+ 28A4E2AF0F60319300E9E7F2 /* fftlib.h in Headers */ = {isa = PBXBuildFile; fileRef = 28A4E2A70F60319300E9E7F2 /* fftlib.h */; };
+ 28A4E2B00F60319300E9E7F2 /* matlib.c in Sources */ = {isa = PBXBuildFile; fileRef = 28A4E2AA0F60319300E9E7F2 /* matlib.c */; };
+ 28A4E2B10F60319300E9E7F2 /* matlib.h in Headers */ = {isa = PBXBuildFile; fileRef = 28A4E2AB0F60319300E9E7F2 /* matlib.h */; };
28A520550C12BE0300BF6811 /* pa_debugprint.c in Sources */ = {isa = PBXBuildFile; fileRef = 28A520510C12BE0300BF6811 /* pa_debugprint.c */; };
28A520560C12BE0300BF6811 /* pa_debugprint.h in Headers */ = {isa = PBXBuildFile; fileRef = 28A520520C12BE0300BF6811 /* pa_debugprint.h */; };
28A520570C12BE0300BF6811 /* pa_ringbuffer.c in Sources */ = {isa = PBXBuildFile; fileRef = 28A520530C12BE0300BF6811 /* pa_ringbuffer.c */; };
@@ -1071,45 +1190,13 @@
28A96DC10E28642200F3CE01 /* mfmidi.h in Headers */ = {isa = PBXBuildFile; fileRef = 28F3A3FF0E28289500729866 /* mfmidi.h */; };
28A96DC20E28642300F3CE01 /* strparse.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 28F3A4000E28289500729866 /* strparse.cpp */; };
28A96DC30E28642300F3CE01 /* strparse.h in Headers */ = {isa = PBXBuildFile; fileRef = 28F3A4010E28289500729866 /* strparse.h */; };
- 28AA28CD0F267F98008AED9E /* bug.lsp in Copy Nyquist Files */ = {isa = PBXBuildFile; fileRef = 28AA28330F267A6E008AED9E /* bug.lsp */; };
- 28AA28CE0F267F98008AED9E /* dspprims.lsp in Copy Nyquist Files */ = {isa = PBXBuildFile; fileRef = 28AA28340F267A6E008AED9E /* dspprims.lsp */; };
- 28AA28CF0F267F98008AED9E /* evalenv.lsp in Copy Nyquist Files */ = {isa = PBXBuildFile; fileRef = 28AA28350F267A6E008AED9E /* evalenv.lsp */; };
- 28AA28D00F267F98008AED9E /* follow.lsp in Copy Nyquist Files */ = {isa = PBXBuildFile; fileRef = 28AA28360F267A6E008AED9E /* follow.lsp */; };
- 28AA28D10F267F98008AED9E /* init.lsp in Copy Nyquist Files */ = {isa = PBXBuildFile; fileRef = 28AA28370F267A6E008AED9E /* init.lsp */; };
- 28AA28D20F267F98008AED9E /* misc.lsp in Copy Nyquist Files */ = {isa = PBXBuildFile; fileRef = 28AA28380F267A6E008AED9E /* misc.lsp */; };
- 28AA28D30F267F98008AED9E /* nyinit.lsp in Copy Nyquist Files */ = {isa = PBXBuildFile; fileRef = 28AA28390F267A6E008AED9E /* nyinit.lsp */; };
- 28AA28D40F267F98008AED9E /* nyqmisc.lsp in Copy Nyquist Files */ = {isa = PBXBuildFile; fileRef = 28AA283A0F267A6E008AED9E /* nyqmisc.lsp */; };
- 28AA28D50F267F98008AED9E /* nyquist.lsp in Copy Nyquist Files */ = {isa = PBXBuildFile; fileRef = 28AA283B0F267A6E008AED9E /* nyquist.lsp */; };
- 28AA28D60F267F98008AED9E /* printrec.lsp in Copy Nyquist Files */ = {isa = PBXBuildFile; fileRef = 28AA283C0F267A6E008AED9E /* printrec.lsp */; };
- 28AA28D70F267F98008AED9E /* profile.lsp in Copy Nyquist Files */ = {isa = PBXBuildFile; fileRef = 28AA283D0F267A6E008AED9E /* profile.lsp */; };
- 28AA28D80F267F98008AED9E /* seq.lsp in Copy Nyquist Files */ = {isa = PBXBuildFile; fileRef = 28AA283E0F267A6E008AED9E /* seq.lsp */; };
- 28AA28D90F267F98008AED9E /* seqfnint.lsp in Copy Nyquist Files */ = {isa = PBXBuildFile; fileRef = 28AA283F0F267A6E008AED9E /* seqfnint.lsp */; };
- 28AA28DA0F267F98008AED9E /* seqmidi.lsp in Copy Nyquist Files */ = {isa = PBXBuildFile; fileRef = 28AA28400F267A6E008AED9E /* seqmidi.lsp */; };
- 28AA28DB0F267F98008AED9E /* sndfnint.lsp in Copy Nyquist Files */ = {isa = PBXBuildFile; fileRef = 28AA28410F267A6E008AED9E /* sndfnint.lsp */; };
- 28AA28DC0F267F98008AED9E /* system.lsp in Copy Nyquist Files */ = {isa = PBXBuildFile; fileRef = 28AA28420F267A6E008AED9E /* system.lsp */; };
- 28AA28DD0F267F98008AED9E /* test.lsp in Copy Nyquist Files */ = {isa = PBXBuildFile; fileRef = 28AA28430F267A6E008AED9E /* test.lsp */; };
- 28AA28DE0F267F98008AED9E /* xlinit.lsp in Copy Nyquist Files */ = {isa = PBXBuildFile; fileRef = 28AA28440F267A6E008AED9E /* xlinit.lsp */; };
- 28AA28E00F267FD2008AED9E /* analyze.ny in Copy Plug-in Files */ = {isa = PBXBuildFile; fileRef = 28AA28120F267A2D008AED9E /* analyze.ny */; };
- 28AA28E10F267FD2008AED9E /* beat.ny in Copy Plug-in Files */ = {isa = PBXBuildFile; fileRef = 28AA28130F267A2D008AED9E /* beat.ny */; };
- 28AA28E20F267FD2008AED9E /* clicktrack.ny in Copy Plug-in Files */ = {isa = PBXBuildFile; fileRef = 28AA28140F267A2D008AED9E /* clicktrack.ny */; };
- 28AA28E30F267FD2008AED9E /* clipfix.ny in Copy Plug-in Files */ = {isa = PBXBuildFile; fileRef = 28AA28150F267A2D008AED9E /* clipfix.ny */; };
- 28AA28E40F267FD2008AED9E /* crossfadein.ny in Copy Plug-in Files */ = {isa = PBXBuildFile; fileRef = 28AA28160F267A2D008AED9E /* crossfadein.ny */; };
- 28AA28E50F267FD2008AED9E /* crossfadeout.ny in Copy Plug-in Files */ = {isa = PBXBuildFile; fileRef = 28AA28170F267A2D008AED9E /* crossfadeout.ny */; };
- 28AA28E60F267FD2008AED9E /* delay.ny in Copy Plug-in Files */ = {isa = PBXBuildFile; fileRef = 28AA28180F267A2D008AED9E /* delay.ny */; };
- 28AA28E70F267FD2008AED9E /* equalabel.ny in Copy Plug-in Files */ = {isa = PBXBuildFile; fileRef = 28AA28190F267A2D008AED9E /* equalabel.ny */; };
- 28AA28E80F267FD2008AED9E /* highpass.ny in Copy Plug-in Files */ = {isa = PBXBuildFile; fileRef = 28AA281A0F267A2D008AED9E /* highpass.ny */; };
- 28AA28E90F267FD2008AED9E /* lowpass.ny in Copy Plug-in Files */ = {isa = PBXBuildFile; fileRef = 28AA281B0F267A2D008AED9E /* lowpass.ny */; };
- 28AA28EA0F267FD2008AED9E /* pluck.ny in Copy Plug-in Files */ = {isa = PBXBuildFile; fileRef = 28AA281C0F267A2D008AED9E /* pluck.ny */; };
- 28AA28EB0F267FD2008AED9E /* rissetdrum.ny in Copy Plug-in Files */ = {isa = PBXBuildFile; fileRef = 28AA281D0F267A2D008AED9E /* rissetdrum.ny */; };
- 28AA28EC0F267FD2008AED9E /* SilenceMarker.ny in Copy Plug-in Files */ = {isa = PBXBuildFile; fileRef = 28AA281E0F267A2D008AED9E /* SilenceMarker.ny */; };
- 28AA28ED0F267FD2008AED9E /* tremolo.ny in Copy Plug-in Files */ = {isa = PBXBuildFile; fileRef = 28AA281F0F267A2D008AED9E /* tremolo.ny */; };
- 28AA28EE0F267FD2008AED9E /* vocalremover.ny in Copy Plug-in Files */ = {isa = PBXBuildFile; fileRef = 28AA28200F267A2D008AED9E /* vocalremover.ny */; };
- 28AA28EF0F267FD2008AED9E /* vocoder.ny in Copy Plug-in Files */ = {isa = PBXBuildFile; fileRef = 28AA28210F267A2D008AED9E /* vocoder.ny */; };
28B6ED8F0DE3D1B50046F0F3 /* LoadModules.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 28B6ED8D0DE3D1B50046F0F3 /* LoadModules.cpp */; };
- 28D0255B0AFDA53B0035F843 /* alpasscv.c in Sources */ = {isa = PBXBuildFile; fileRef = 28D025570AFDA53B0035F843 /* alpasscv.c */; };
- 28D0255C0AFDA53B0035F843 /* alpasscv.h in Headers */ = {isa = PBXBuildFile; fileRef = 28D025580AFDA53B0035F843 /* alpasscv.h */; };
- 28D0255D0AFDA53B0035F843 /* alpassvc.c in Sources */ = {isa = PBXBuildFile; fileRef = 28D025590AFDA53B0035F843 /* alpassvc.c */; };
- 28D0255E0AFDA53B0035F843 /* alpassvc.h in Headers */ = {isa = PBXBuildFile; fileRef = 28D0255A0AFDA53B0035F843 /* alpassvc.h */; };
+ 28B97B890FBF771A0076CF28 /* VSTEffect.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 28B97B850FBF771A0076CF28 /* VSTEffect.cpp */; };
+ 28CCDD000F939FD70081F2FC /* FileHistory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 28CCDCFF0F939FD70081F2FC /* FileHistory.cpp */; };
+ 28D540050FD1912A00FA7C75 /* AppCommandEvent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 28D53FFA0FD1912A00FA7C75 /* AppCommandEvent.cpp */; };
+ 28D540060FD1912A00FA7C75 /* CommandBuilder.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 28D53FFE0FD1912A00FA7C75 /* CommandBuilder.cpp */; };
+ 28D540070FD1912A00FA7C75 /* CommandHandler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 28D540000FD1912A00FA7C75 /* CommandHandler.cpp */; };
+ 28D540080FD1912A00FA7C75 /* ScriptCommandRelay.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 28D540030FD1912A00FA7C75 /* ScriptCommandRelay.cpp */; };
28D587CB0E264CF4009C7DEA /* LoadLV2.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 28D587C70E264CF3009C7DEA /* LoadLV2.cpp */; };
28D587CC0E264CF4009C7DEA /* LV2Effect.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 28D587C90E264CF4009C7DEA /* LV2Effect.cpp */; };
28D588030E265626009C7DEA /* sparql_lexer.c in Sources */ = {isa = PBXBuildFile; fileRef = 28D587DF0E2651C6009C7DEA /* sparql_lexer.c */; };
@@ -1117,6 +1204,8 @@
28D65C720B97E54B000E001A /* AutoDuck.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 28D65C700B97E54B000E001A /* AutoDuck.cpp */; };
28D65C760B97E573000E001A /* DtmfGen.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 28D65C740B97E573000E001A /* DtmfGen.cpp */; };
28DA07390E4F5CEC003933C5 /* ExportFFmpegDialogs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 28DA07380E4F5CEC003933C5 /* ExportFFmpegDialogs.cpp */; };
+ 28DABFBE0FF19DB100AC7848 /* RealFFTf.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 28DABFBC0FF19DB100AC7848 /* RealFFTf.cpp */; };
+ 28DB34790FDC2C5D0011F589 /* ResponseQueue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 28DB34780FDC2C5D0011F589 /* ResponseQueue.cpp */; };
28E2370D0E515D9200281398 /* audiomixerreader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ED05D1000E50AD5700CC4BD3 /* audiomixerreader.cpp */; };
28E2370E0E515D9300281398 /* audiomixerreader.h in Headers */ = {isa = PBXBuildFile; fileRef = ED05D1010E50AD5700CC4BD3 /* audiomixerreader.h */; };
28E2370F0E515D9400281398 /* audioreader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ED05D1020E50AD5700CC4BD3 /* audioreader.cpp */; };
@@ -1180,10 +1269,179 @@
28EA56650D9753B000C8D1B6 /* window.c in Sources */ = {isa = PBXBuildFile; fileRef = 28EA56620D9753B000C8D1B6 /* window.c */; };
28EA567D0D976E9500C8D1B6 /* pa_unix_hostapis.c in Sources */ = {isa = PBXBuildFile; fileRef = 28EA567C0D976E9500C8D1B6 /* pa_unix_hostapis.c */; };
28EA567F0D976EE700C8D1B6 /* pa_memorybarrier.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EA567E0D976EE700C8D1B6 /* pa_memorybarrier.h */; };
- 28EB47D40AFD542100502984 /* abs.c in Sources */ = {isa = PBXBuildFile; fileRef = 28EB47D30AFD542100502984 /* abs.c */; };
- 28EB47D60AFD547600502984 /* sqrt.c in Sources */ = {isa = PBXBuildFile; fileRef = 28EB47D50AFD547600502984 /* sqrt.c */; };
- 28EB47D90AFD54B800502984 /* abs.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB47D70AFD54B800502984 /* abs.h */; };
- 28EB47DA0AFD54B800502984 /* sqrt.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB47D80AFD54B800502984 /* sqrt.h */; };
+ 28EB74AD0FDC2DF60046D78E /* userio.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB749C0FDC2DF50046D78E /* userio.h */; };
+ 28EB74AE0FDC2DF60046D78E /* timebase.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB749D0FDC2DF50046D78E /* timebase.h */; };
+ 28EB74AF0FDC2DF60046D78E /* tempomap.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB749E0FDC2DF50046D78E /* tempomap.h */; };
+ 28EB74B00FDC2DF60046D78E /* seqwrite.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB749F0FDC2DF50046D78E /* seqwrite.h */; };
+ 28EB74B10FDC2DF60046D78E /* seqread.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74A00FDC2DF50046D78E /* seqread.h */; };
+ 28EB74B20FDC2DF60046D78E /* seqmwrite.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74A10FDC2DF50046D78E /* seqmwrite.h */; };
+ 28EB74B30FDC2DF60046D78E /* seqmread.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74A20FDC2DF50046D78E /* seqmread.h */; };
+ 28EB74B40FDC2DF60046D78E /* seq.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74A30FDC2DF50046D78E /* seq.h */; };
+ 28EB74B50FDC2DF60046D78E /* record.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74A40FDC2DF50046D78E /* record.h */; };
+ 28EB74B60FDC2DF60046D78E /* moxc.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74A50FDC2DF50046D78E /* moxc.h */; };
+ 28EB74B70FDC2DF60046D78E /* midifns.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74A60FDC2DF50046D78E /* midifns.h */; };
+ 28EB74B80FDC2DF60046D78E /* midifile.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74A70FDC2DF50046D78E /* midifile.h */; };
+ 28EB74B90FDC2DF60046D78E /* mem.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74A80FDC2DF50046D78E /* mem.h */; };
+ 28EB74BA0FDC2DF60046D78E /* cmtcmd.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74A90FDC2DF50046D78E /* cmtcmd.h */; };
+ 28EB74BB0FDC2DF60046D78E /* cmdline.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74AA0FDC2DF50046D78E /* cmdline.h */; };
+ 28EB74BC0FDC2DF60046D78E /* cleanup.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74AB0FDC2DF50046D78E /* cleanup.h */; };
+ 28EB74BD0FDC2DF60046D78E /* cext.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74AC0FDC2DF50046D78E /* cext.h */; };
+ 28EB74DF0FDC2EDF0046D78E /* add.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74BE0FDC2EDE0046D78E /* add.h */; };
+ 28EB74E00FDC2EDF0046D78E /* avg.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74BF0FDC2EDE0046D78E /* avg.h */; };
+ 28EB74E10FDC2EDF0046D78E /* compose.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74C00FDC2EDE0046D78E /* compose.h */; };
+ 28EB74E20FDC2EDF0046D78E /* convolve.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74C10FDC2EDE0046D78E /* convolve.h */; };
+ 28EB74E30FDC2EDF0046D78E /* cque.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74C20FDC2EDE0046D78E /* cque.h */; };
+ 28EB74E40FDC2EDF0046D78E /* debug.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74C30FDC2EDE0046D78E /* debug.h */; };
+ 28EB74E50FDC2EDF0046D78E /* downsample.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74C40FDC2EDE0046D78E /* downsample.h */; };
+ 28EB74E60FDC2EDF0046D78E /* falloc.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74C50FDC2EDE0046D78E /* falloc.h */; };
+ 28EB74E70FDC2EDF0046D78E /* ffilterkit.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74C60FDC2EDE0046D78E /* ffilterkit.h */; };
+ 28EB74E80FDC2EDF0046D78E /* fft.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74C70FDC2EDE0046D78E /* fft.h */; };
+ 28EB74E90FDC2EDF0046D78E /* inverse.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74C80FDC2EDE0046D78E /* inverse.h */; };
+ 28EB74EA0FDC2EDF0046D78E /* localdefs.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74C90FDC2EDE0046D78E /* localdefs.h */; };
+ 28EB74EB0FDC2EDF0046D78E /* localptrs.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74CA0FDC2EDE0046D78E /* localptrs.h */; };
+ 28EB74EC0FDC2EDF0046D78E /* lpanal.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74CB0FDC2EDE0046D78E /* lpanal.h */; };
+ 28EB74ED0FDC2EDF0046D78E /* multiread.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74CC0FDC2EDE0046D78E /* multiread.h */; };
+ 28EB74EE0FDC2EDF0046D78E /* multiseq.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74CD0FDC2EDE0046D78E /* multiseq.h */; };
+ 28EB74EF0FDC2EDF0046D78E /* probe.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74CE0FDC2EDE0046D78E /* probe.h */; };
+ 28EB74F00FDC2EDF0046D78E /* resamp.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74CF0FDC2EDE0046D78E /* resamp.h */; };
+ 28EB74F10FDC2EDF0046D78E /* resampv.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74D00FDC2EDE0046D78E /* resampv.h */; };
+ 28EB74F20FDC2EDF0046D78E /* samples.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74D10FDC2EDE0046D78E /* samples.h */; };
+ 28EB74F30FDC2EDF0046D78E /* seqext.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74D20FDC2EDE0046D78E /* seqext.h */; };
+ 28EB74F40FDC2EDF0046D78E /* seqfnintdefs.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74D30FDC2EDE0046D78E /* seqfnintdefs.h */; };
+ 28EB74F50FDC2EDF0046D78E /* seqfnintptrs.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74D40FDC2EDE0046D78E /* seqfnintptrs.h */; };
+ 28EB74F60FDC2EDF0046D78E /* seqinterf.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74D50FDC2EDE0046D78E /* seqinterf.h */; };
+ 28EB74F70FDC2EDF0046D78E /* sliders.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74D60FDC2EDE0046D78E /* sliders.h */; };
+ 28EB74F80FDC2EDF0046D78E /* sndfnintdefs.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74D70FDC2EDE0046D78E /* sndfnintdefs.h */; };
+ 28EB74F90FDC2EDF0046D78E /* sndfnintptrs.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74D80FDC2EDE0046D78E /* sndfnintptrs.h */; };
+ 28EB74FA0FDC2EDF0046D78E /* sndmax.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74D90FDC2EDE0046D78E /* sndmax.h */; };
+ 28EB74FB0FDC2EDF0046D78E /* sndread.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74DA0FDC2EDE0046D78E /* sndread.h */; };
+ 28EB74FC0FDC2EDF0046D78E /* sndseq.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74DB0FDC2EDE0046D78E /* sndseq.h */; };
+ 28EB74FD0FDC2EDF0046D78E /* sound.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74DC0FDC2EDE0046D78E /* sound.h */; };
+ 28EB74FE0FDC2EDF0046D78E /* trigger.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74DD0FDC2EDE0046D78E /* trigger.h */; };
+ 28EB74FF0FDC2EDF0046D78E /* yin.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB74DE0FDC2EDE0046D78E /* yin.h */; };
+ 28EB752F0FDC2FB20046D78E /* ADSR.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75040FDC2FB10046D78E /* ADSR.h */; };
+ 28EB75300FDC2FB20046D78E /* BandedWG.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75050FDC2FB10046D78E /* BandedWG.h */; };
+ 28EB75310FDC2FB20046D78E /* BiQuad.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75060FDC2FB10046D78E /* BiQuad.h */; };
+ 28EB75320FDC2FB20046D78E /* Bowed.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75070FDC2FB10046D78E /* Bowed.h */; };
+ 28EB75330FDC2FB20046D78E /* BowTable.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75080FDC2FB10046D78E /* BowTable.h */; };
+ 28EB75340FDC2FB20046D78E /* Chorus.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75090FDC2FB10046D78E /* Chorus.h */; };
+ 28EB75350FDC2FB20046D78E /* Clarinet.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB750A0FDC2FB10046D78E /* Clarinet.h */; };
+ 28EB75360FDC2FB20046D78E /* Delay.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB750B0FDC2FB10046D78E /* Delay.h */; };
+ 28EB75370FDC2FB20046D78E /* DelayA.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB750C0FDC2FB10046D78E /* DelayA.h */; };
+ 28EB75380FDC2FB20046D78E /* DelayL.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB750D0FDC2FB10046D78E /* DelayL.h */; };
+ 28EB75390FDC2FB20046D78E /* Effect.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB750E0FDC2FB10046D78E /* Effect.h */; };
+ 28EB753A0FDC2FB20046D78E /* Envelope.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB750F0FDC2FB10046D78E /* Envelope.h */; };
+ 28EB753B0FDC2FB20046D78E /* FileRead.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75100FDC2FB10046D78E /* FileRead.h */; };
+ 28EB753C0FDC2FB20046D78E /* FileWvIn.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75110FDC2FB10046D78E /* FileWvIn.h */; };
+ 28EB753D0FDC2FB20046D78E /* Filter.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75120FDC2FB10046D78E /* Filter.h */; };
+ 28EB753E0FDC2FB20046D78E /* Flute.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75130FDC2FB10046D78E /* Flute.h */; };
+ 28EB753F0FDC2FB20046D78E /* Function.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75140FDC2FB10046D78E /* Function.h */; };
+ 28EB75400FDC2FB20046D78E /* Generator.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75150FDC2FB10046D78E /* Generator.h */; };
+ 28EB75410FDC2FB20046D78E /* Instrmnt.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75160FDC2FB10046D78E /* Instrmnt.h */; };
+ 28EB75420FDC2FB20046D78E /* JCRev.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75170FDC2FB10046D78E /* JCRev.h */; };
+ 28EB75430FDC2FB20046D78E /* JetTable.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75180FDC2FB10046D78E /* JetTable.h */; };
+ 28EB75440FDC2FB20046D78E /* Mandolin.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75190FDC2FB10046D78E /* Mandolin.h */; };
+ 28EB75450FDC2FB20046D78E /* Modal.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB751A0FDC2FB10046D78E /* Modal.h */; };
+ 28EB75460FDC2FB20046D78E /* ModalBar.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB751B0FDC2FB10046D78E /* ModalBar.h */; };
+ 28EB75470FDC2FB20046D78E /* Noise.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB751C0FDC2FB10046D78E /* Noise.h */; };
+ 28EB75480FDC2FB20046D78E /* NRev.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB751D0FDC2FB10046D78E /* NRev.h */; };
+ 28EB75490FDC2FB20046D78E /* OnePole.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB751E0FDC2FB10046D78E /* OnePole.h */; };
+ 28EB754A0FDC2FB20046D78E /* OneZero.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB751F0FDC2FB10046D78E /* OneZero.h */; };
+ 28EB754B0FDC2FB20046D78E /* PitShift.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75200FDC2FB10046D78E /* PitShift.h */; };
+ 28EB754C0FDC2FB20046D78E /* PluckTwo.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75210FDC2FB10046D78E /* PluckTwo.h */; };
+ 28EB754D0FDC2FB20046D78E /* PoleZero.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75220FDC2FB10046D78E /* PoleZero.h */; };
+ 28EB754E0FDC2FB20046D78E /* PRCRev.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75230FDC2FB10046D78E /* PRCRev.h */; };
+ 28EB754F0FDC2FB20046D78E /* ReedTable.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75240FDC2FB10046D78E /* ReedTable.h */; };
+ 28EB75500FDC2FB20046D78E /* Saxofony.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75250FDC2FB10046D78E /* Saxofony.h */; };
+ 28EB75510FDC2FB20046D78E /* SineWave.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75260FDC2FB10046D78E /* SineWave.h */; };
+ 28EB75520FDC2FB20046D78E /* Sitar.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75270FDC2FB10046D78E /* Sitar.h */; };
+ 28EB75530FDC2FB20046D78E /* Stk.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75290FDC2FB10046D78E /* Stk.h */; };
+ 28EB75540FDC2FB20046D78E /* WaveLoop.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB752A0FDC2FB10046D78E /* WaveLoop.h */; };
+ 28EB75550FDC2FB20046D78E /* WvIn.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB752B0FDC2FB10046D78E /* WvIn.h */; };
+ 28EB75560FDC2FB20046D78E /* instr.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB752C0FDC2FB10046D78E /* instr.h */; };
+ 28EB75570FDC2FB20046D78E /* stkinit.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB752D0FDC2FB10046D78E /* stkinit.h */; };
+ 28EB75580FDC2FB20046D78E /* stkint.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB752E0FDC2FB10046D78E /* stkint.h */; };
+ 28EB75670FDC300C0046D78E /* abs.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75590FDC300C0046D78E /* abs.h */; };
+ 28EB75680FDC300C0046D78E /* allpoles.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB755A0FDC300C0046D78E /* allpoles.h */; };
+ 28EB75690FDC300C0046D78E /* alpass.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB755B0FDC300C0046D78E /* alpass.h */; };
+ 28EB756A0FDC300C0046D78E /* alpasscv.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB755C0FDC300C0046D78E /* alpasscv.h */; };
+ 28EB756B0FDC300C0046D78E /* alpassvv.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB755D0FDC300C0046D78E /* alpassvv.h */; };
+ 28EB756C0FDC300C0046D78E /* amosc.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB755E0FDC300C0046D78E /* amosc.h */; };
+ 28EB756D0FDC300C0046D78E /* areson.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB755F0FDC300C0046D78E /* areson.h */; };
+ 28EB756E0FDC300C0046D78E /* aresoncv.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75600FDC300C0046D78E /* aresoncv.h */; };
+ 28EB756F0FDC300C0046D78E /* aresonvc.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75610FDC300C0046D78E /* aresonvc.h */; };
+ 28EB75700FDC300C0046D78E /* aresonvv.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75620FDC300C0046D78E /* aresonvv.h */; };
+ 28EB75710FDC300C0046D78E /* atone.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75630FDC300C0046D78E /* atone.h */; };
+ 28EB75720FDC300C0046D78E /* atonev.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75640FDC300C0046D78E /* atonev.h */; };
+ 28EB75730FDC300C0046D78E /* biquadfilt.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75650FDC300C0046D78E /* biquadfilt.h */; };
+ 28EB75740FDC300C0046D78E /* buzz.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75660FDC300C0046D78E /* buzz.h */; };
+ 28EB75B60FDC30C70046D78E /* chase.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75750FDC30C60046D78E /* chase.h */; };
+ 28EB75B70FDC30C70046D78E /* clip.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75760FDC30C60046D78E /* clip.h */; };
+ 28EB75B80FDC30C70046D78E /* congen.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75770FDC30C60046D78E /* congen.h */; };
+ 28EB75B90FDC30C70046D78E /* const.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75780FDC30C60046D78E /* const.h */; };
+ 28EB75BA0FDC30C70046D78E /* coterm.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75790FDC30C60046D78E /* coterm.h */; };
+ 28EB75BB0FDC30C70046D78E /* delaycc.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB757A0FDC30C60046D78E /* delaycc.h */; };
+ 28EB75BC0FDC30C70046D78E /* delaycv.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB757B0FDC30C60046D78E /* delaycv.h */; };
+ 28EB75BD0FDC30C70046D78E /* eqbandvvv.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB757C0FDC30C60046D78E /* eqbandvvv.h */; };
+ 28EB75BE0FDC30C70046D78E /* exp.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB757D0FDC30C60046D78E /* exp.h */; };
+ 28EB75BF0FDC30C70046D78E /* fmfb.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB757E0FDC30C60046D78E /* fmfb.h */; };
+ 28EB75C00FDC30C70046D78E /* fmfbv.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB757F0FDC30C60046D78E /* fmfbv.h */; };
+ 28EB75C10FDC30C70046D78E /* fmosc.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75800FDC30C60046D78E /* fmosc.h */; };
+ 28EB75C20FDC30C70046D78E /* follow.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75810FDC30C60046D78E /* follow.h */; };
+ 28EB75C30FDC30C70046D78E /* fromarraystream.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75820FDC30C60046D78E /* fromarraystream.h */; };
+ 28EB75C40FDC30C70046D78E /* fromobject.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75830FDC30C60046D78E /* fromobject.h */; };
+ 28EB75C50FDC30C70046D78E /* gate.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75840FDC30C60046D78E /* gate.h */; };
+ 28EB75C60FDC30C70046D78E /* ifft.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75850FDC30C60046D78E /* ifft.h */; };
+ 28EB75C70FDC30C70046D78E /* instrbanded.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75860FDC30C60046D78E /* instrbanded.h */; };
+ 28EB75C80FDC30C70046D78E /* instrbow.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75870FDC30C60046D78E /* instrbow.h */; };
+ 28EB75C90FDC30C70046D78E /* instrbowedfreq.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75880FDC30C60046D78E /* instrbowedfreq.h */; };
+ 28EB75CA0FDC30C70046D78E /* instrclar.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75890FDC30C60046D78E /* instrclar.h */; };
+ 28EB75CB0FDC30C70046D78E /* instrclarall.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB758A0FDC30C60046D78E /* instrclarall.h */; };
+ 28EB75CC0FDC30C70046D78E /* instrclarfreq.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB758B0FDC30C60046D78E /* instrclarfreq.h */; };
+ 28EB75CD0FDC30C70046D78E /* instrflute.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB758C0FDC30C60046D78E /* instrflute.h */; };
+ 28EB75CE0FDC30C70046D78E /* instrfluteall.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB758D0FDC30C60046D78E /* instrfluteall.h */; };
+ 28EB75CF0FDC30C70046D78E /* instrflutefreq.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB758E0FDC30C60046D78E /* instrflutefreq.h */; };
+ 28EB75D00FDC30C70046D78E /* instrmandolin.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB758F0FDC30C60046D78E /* instrmandolin.h */; };
+ 28EB75D10FDC30C70046D78E /* instrmodalbar.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75900FDC30C60046D78E /* instrmodalbar.h */; };
+ 28EB75D20FDC30C70046D78E /* instrsax.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75910FDC30C60046D78E /* instrsax.h */; };
+ 28EB75D30FDC30C70046D78E /* instrsaxall.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75920FDC30C60046D78E /* instrsaxall.h */; };
+ 28EB75D40FDC30C70046D78E /* instrsaxfreq.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75930FDC30C60046D78E /* instrsaxfreq.h */; };
+ 28EB75D50FDC30C70046D78E /* instrsitar.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75940FDC30C60046D78E /* instrsitar.h */; };
+ 28EB75D60FDC30C70046D78E /* integrate.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75950FDC30C60046D78E /* integrate.h */; };
+ 28EB75D70FDC30C70046D78E /* log.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75960FDC30C60046D78E /* log.h */; };
+ 28EB75D80FDC30C70046D78E /* lpreson.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75970FDC30C60046D78E /* lpreson.h */; };
+ 28EB75D90FDC30C70046D78E /* maxv.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75980FDC30C60046D78E /* maxv.h */; };
+ 28EB75DA0FDC30C70046D78E /* offset.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75990FDC30C60046D78E /* offset.h */; };
+ 28EB75DB0FDC30C70046D78E /* oneshot.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB759A0FDC30C60046D78E /* oneshot.h */; };
+ 28EB75DC0FDC30C70046D78E /* osc.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB759B0FDC30C60046D78E /* osc.h */; };
+ 28EB75DD0FDC30C70046D78E /* partial.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB759C0FDC30C60046D78E /* partial.h */; };
+ 28EB75DE0FDC30C70046D78E /* pluck.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB759D0FDC30C60046D78E /* pluck.h */; };
+ 28EB75DF0FDC30C70046D78E /* prod.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB759E0FDC30C60046D78E /* prod.h */; };
+ 28EB75E00FDC30C70046D78E /* pwl.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB759F0FDC30C60046D78E /* pwl.h */; };
+ 28EB75E10FDC30C70046D78E /* quantize.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75A00FDC30C60046D78E /* quantize.h */; };
+ 28EB75E20FDC30C70046D78E /* recip.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75A10FDC30C60046D78E /* recip.h */; };
+ 28EB75E30FDC30C70046D78E /* reson.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75A20FDC30C60046D78E /* reson.h */; };
+ 28EB75E40FDC30C70046D78E /* resoncv.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75A30FDC30C60046D78E /* resoncv.h */; };
+ 28EB75E50FDC30C70046D78E /* resonvc.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75A40FDC30C60046D78E /* resonvc.h */; };
+ 28EB75E60FDC30C70046D78E /* resonvv.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75A50FDC30C60046D78E /* resonvv.h */; };
+ 28EB75E70FDC30C70046D78E /* sampler.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75A60FDC30C60046D78E /* sampler.h */; };
+ 28EB75E80FDC30C70046D78E /* scale.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75A70FDC30C60046D78E /* scale.h */; };
+ 28EB75E90FDC30C70046D78E /* shape.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75A80FDC30C60046D78E /* shape.h */; };
+ 28EB75EA0FDC30C70046D78E /* sine.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75A90FDC30C60046D78E /* sine.h */; };
+ 28EB75EB0FDC30C70046D78E /* siosc.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75AA0FDC30C60046D78E /* siosc.h */; };
+ 28EB75EC0FDC30C70046D78E /* slope.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75AB0FDC30C60046D78E /* slope.h */; };
+ 28EB75ED0FDC30C70046D78E /* sqrt.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75AC0FDC30C60046D78E /* sqrt.h */; };
+ 28EB75EE0FDC30C70046D78E /* stkchorus.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75AD0FDC30C60046D78E /* stkchorus.h */; };
+ 28EB75EF0FDC30C70046D78E /* stkpitshift.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75AE0FDC30C60046D78E /* stkpitshift.h */; };
+ 28EB75F00FDC30C70046D78E /* stkrev.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75AF0FDC30C60046D78E /* stkrev.h */; };
+ 28EB75F10FDC30C70046D78E /* tapf.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75B00FDC30C60046D78E /* tapf.h */; };
+ 28EB75F20FDC30C70046D78E /* tapv.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75B10FDC30C60046D78E /* tapv.h */; };
+ 28EB75F30FDC30C70046D78E /* tone.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75B20FDC30C60046D78E /* tone.h */; };
+ 28EB75F40FDC30C70046D78E /* tonev.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75B30FDC30C60046D78E /* tonev.h */; };
+ 28EB75F50FDC30C70046D78E /* upsample.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75B40FDC30C60046D78E /* upsample.h */; };
+ 28EB75F60FDC30C70046D78E /* white.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75B50FDC30C60046D78E /* white.h */; };
+ 28EB75F90FDC322A0046D78E /* xldmem.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75F70FDC322A0046D78E /* xldmem.h */; };
+ 28EB75FA0FDC322A0046D78E /* xlisp.h in Headers */ = {isa = PBXBuildFile; fileRef = 28EB75F80FDC322A0046D78E /* xlisp.h */; };
28EBA7FC0A78FADE00C8BB1F /* Repair.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 28EBA7FA0A78FADE00C8BB1F /* Repair.cpp */; };
28EBA8010A78FAF800C8BB1F /* InterpolateAudio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 28EBA7FD0A78FAF800C8BB1F /* InterpolateAudio.cpp */; };
28EBA8020A78FAF800C8BB1F /* Matrix.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 28EBA7FF0A78FAF800C8BB1F /* Matrix.cpp */; };
@@ -1193,7 +1451,6 @@
28F1D81E0A2D0019005506A7 /* ExpandingToolBar.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 28F1D8190A2D0018005506A7 /* ExpandingToolBar.cpp */; };
28F1D81F0A2D0019005506A7 /* ImageRoll.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 28F1D81B0A2D0019005506A7 /* ImageRoll.cpp */; };
28F5C1110BE5886A00D17341 /* FileDialogPrivate.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 28F5C10F0BE5886A00D17341 /* FileDialogPrivate.cpp */; };
- 28FB20350C415D9500F769E7 /* SmartRecordPrefs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 28FB20330C415D9500F769E7 /* SmartRecordPrefs.cpp */; };
28FC1AFB0A47762C00A188AE /* WrappedType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 28FC1AF90A47762C00A188AE /* WrappedType.cpp */; };
28FE4A080ABF4E960056F5C4 /* mmx_optimized.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 28FE4A060ABF4E960056F5C4 /* mmx_optimized.cpp */; };
28FE4A090ABF4E960056F5C4 /* sse_optimized.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 28FE4A070ABF4E960056F5C4 /* sse_optimized.cpp */; };
@@ -1254,13 +1511,6 @@
remoteGlobalIDString = 17072E880988BD39008541CC;
remoteInfo = Configure;
};
- 176A1B6B098B7C5900DC73B4 /* PBXContainerItemProxy */ = {
- isa = PBXContainerItemProxy;
- containerPortal = 1790ABE309883346008A330A /* Project object */;
- proxyType = 1;
- remoteGlobalIDString = 170741420988FDB3008541CC;
- remoteInfo = intgen;
- };
176A1B6D098B7C7200DC73B4 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 1790ABE309883346008A330A /* Project object */;
@@ -1352,6 +1602,20 @@
remoteGlobalIDString = 17073EE70988DBDD008541CC;
remoteInfo = allegro;
};
+ 2800FE270FF323C0005CA9E5 /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = 1790ABE309883346008A330A /* Project object */;
+ proxyType = 1;
+ remoteGlobalIDString = 2800FE060FF322D4005CA9E5;
+ remoteInfo = portmidi;
+ };
+ 283754970F42895700364787 /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = 1790ABE309883346008A330A /* Project object */;
+ proxyType = 1;
+ remoteGlobalIDString = 283753E30F42875100364787;
+ remoteInfo = taglib;
+ };
2840CF7F0AEB822100F49FC3 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 1790ABE309883346008A330A /* Project object */;
@@ -1366,6 +1630,13 @@
remoteGlobalIDString = 28501EAF0CEED1F00029ABAA;
remoteInfo = libvamp;
};
+ 28ABC8E90FD6441D00F9992A /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = 1790ABE309883346008A330A /* Project object */;
+ proxyType = 1;
+ remoteGlobalIDString = 2880527D0DEA694100671EA4;
+ remoteInfo = "mod-script-pipe";
+ };
28E237260E515E1300281398 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 1790ABE309883346008A330A /* Project object */;
@@ -1389,63 +1660,6 @@
};
/* End PBXContainerItemProxy section */
-/* Begin PBXCopyFilesBuildPhase section */
- 28AA28CA0F267E3E008AED9E /* Copy Nyquist Files */ = {
- isa = PBXCopyFilesBuildPhase;
- buildActionMask = 2147483647;
- dstPath = ../nyquist;
- dstSubfolderSpec = 1;
- files = (
- 28AA28CD0F267F98008AED9E /* bug.lsp in Copy Nyquist Files */,
- 28AA28CE0F267F98008AED9E /* dspprims.lsp in Copy Nyquist Files */,
- 28AA28CF0F267F98008AED9E /* evalenv.lsp in Copy Nyquist Files */,
- 28AA28D00F267F98008AED9E /* follow.lsp in Copy Nyquist Files */,
- 28AA28D10F267F98008AED9E /* init.lsp in Copy Nyquist Files */,
- 28AA28D20F267F98008AED9E /* misc.lsp in Copy Nyquist Files */,
- 28AA28D30F267F98008AED9E /* nyinit.lsp in Copy Nyquist Files */,
- 28AA28D40F267F98008AED9E /* nyqmisc.lsp in Copy Nyquist Files */,
- 28AA28D50F267F98008AED9E /* nyquist.lsp in Copy Nyquist Files */,
- 28AA28D60F267F98008AED9E /* printrec.lsp in Copy Nyquist Files */,
- 28AA28D70F267F98008AED9E /* profile.lsp in Copy Nyquist Files */,
- 28AA28D80F267F98008AED9E /* seq.lsp in Copy Nyquist Files */,
- 28AA28D90F267F98008AED9E /* seqfnint.lsp in Copy Nyquist Files */,
- 28AA28DA0F267F98008AED9E /* seqmidi.lsp in Copy Nyquist Files */,
- 28AA28DB0F267F98008AED9E /* sndfnint.lsp in Copy Nyquist Files */,
- 28AA28DC0F267F98008AED9E /* system.lsp in Copy Nyquist Files */,
- 28AA28DD0F267F98008AED9E /* test.lsp in Copy Nyquist Files */,
- 28AA28DE0F267F98008AED9E /* xlinit.lsp in Copy Nyquist Files */,
- );
- name = "Copy Nyquist Files";
- runOnlyForDeploymentPostprocessing = 0;
- };
- 28AA28F00F267FF0008AED9E /* Copy Plug-in Files */ = {
- isa = PBXCopyFilesBuildPhase;
- buildActionMask = 2147483647;
- dstPath = "../plug-ins";
- dstSubfolderSpec = 1;
- files = (
- 28AA28E00F267FD2008AED9E /* analyze.ny in Copy Plug-in Files */,
- 28AA28E10F267FD2008AED9E /* beat.ny in Copy Plug-in Files */,
- 28AA28E20F267FD2008AED9E /* clicktrack.ny in Copy Plug-in Files */,
- 28AA28E30F267FD2008AED9E /* clipfix.ny in Copy Plug-in Files */,
- 28AA28E40F267FD2008AED9E /* crossfadein.ny in Copy Plug-in Files */,
- 28AA28E50F267FD2008AED9E /* crossfadeout.ny in Copy Plug-in Files */,
- 28AA28E60F267FD2008AED9E /* delay.ny in Copy Plug-in Files */,
- 28AA28E70F267FD2008AED9E /* equalabel.ny in Copy Plug-in Files */,
- 28AA28E80F267FD2008AED9E /* highpass.ny in Copy Plug-in Files */,
- 28AA28E90F267FD2008AED9E /* lowpass.ny in Copy Plug-in Files */,
- 28AA28EA0F267FD2008AED9E /* pluck.ny in Copy Plug-in Files */,
- 28AA28EB0F267FD2008AED9E /* rissetdrum.ny in Copy Plug-in Files */,
- 28AA28EC0F267FD2008AED9E /* SilenceMarker.ny in Copy Plug-in Files */,
- 28AA28ED0F267FD2008AED9E /* tremolo.ny in Copy Plug-in Files */,
- 28AA28EE0F267FD2008AED9E /* vocalremover.ny in Copy Plug-in Files */,
- 28AA28EF0F267FD2008AED9E /* vocoder.ny in Copy Plug-in Files */,
- );
- name = "Copy Plug-in Files";
- runOnlyForDeploymentPostprocessing = 0;
- };
-/* End PBXCopyFilesBuildPhase section */
-
/* Begin PBXFileReference section */
17048267098C0F5F00824C66 /* mad.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = mad.h; sourceTree = "<group>"; };
17072F580988D6A9008541CC /* xmlparse.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = xmlparse.c; sourceTree = "<group>"; };
@@ -1697,7 +1911,6 @@
1707407A0988F1BB008541CC /* libsoundtouch.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libsoundtouch.a; sourceTree = BUILT_PRODUCTS_DIR; };
170740960988F2F7008541CC /* libportmixer.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libportmixer.a; sourceTree = BUILT_PRODUCTS_DIR; };
170740D40988F820008541CC /* libvorbis.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libvorbis.a; sourceTree = BUILT_PRODUCTS_DIR; };
- 170741430988FDB3008541CC /* intgen */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = intgen; sourceTree = BUILT_PRODUCTS_DIR; };
17190D78098A439D004583C6 /* cpu_detect_x86_gcc.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = cpu_detect_x86_gcc.cpp; sourceTree = "<group>"; };
174D9026098C78AF00D5909F /* CommandManager.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = CommandManager.cpp; sourceTree = "<group>"; };
174D9027098C78AF00D5909F /* CommandManager.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CommandManager.h; sourceTree = "<group>"; };
@@ -1927,14 +2140,10 @@
1790B0B209883BFD008A330A /* PitchName.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = PitchName.h; sourceTree = "<group>"; };
1790B0B309883BFD008A330A /* PlatformCompatibility.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = PlatformCompatibility.cpp; sourceTree = "<group>"; };
1790B0B409883BFD008A330A /* PlatformCompatibility.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = PlatformCompatibility.h; sourceTree = "<group>"; };
- 1790B0B609883BFD008A330A /* AudioIOPrefs.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = AudioIOPrefs.cpp; sourceTree = "<group>"; };
- 1790B0B709883BFD008A330A /* AudioIOPrefs.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AudioIOPrefs.h; sourceTree = "<group>"; };
1790B0B809883BFD008A330A /* BatchPrefs.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = BatchPrefs.cpp; sourceTree = "<group>"; };
1790B0B909883BFD008A330A /* BatchPrefs.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = BatchPrefs.h; sourceTree = "<group>"; };
1790B0BB09883BFD008A330A /* DirectoriesPrefs.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = DirectoriesPrefs.cpp; sourceTree = "<group>"; };
1790B0BC09883BFD008A330A /* DirectoriesPrefs.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = DirectoriesPrefs.h; sourceTree = "<group>"; };
- 1790B0BD09883BFD008A330A /* FileFormatPrefs.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = FileFormatPrefs.cpp; sourceTree = "<group>"; };
- 1790B0BE09883BFD008A330A /* FileFormatPrefs.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = FileFormatPrefs.h; sourceTree = "<group>"; };
1790B0BF09883BFD008A330A /* GUIPrefs.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = GUIPrefs.cpp; sourceTree = "<group>"; };
1790B0C009883BFD008A330A /* GUIPrefs.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = GUIPrefs.h; sourceTree = "<group>"; };
1790B0C109883BFD008A330A /* KeyConfigPrefs.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = KeyConfigPrefs.cpp; sourceTree = "<group>"; };
@@ -2007,270 +2216,11 @@
1790B11109883BFD008A330A /* XMLFileReader.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = XMLFileReader.h; sourceTree = "<group>"; };
1790B11209883BFD008A330A /* XMLTagHandler.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = XMLTagHandler.cpp; sourceTree = "<group>"; };
1790B11309883BFD008A330A /* XMLTagHandler.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = XMLTagHandler.h; sourceTree = "<group>"; };
- 17C8BA14098B4FD700216F16 /* cmdline.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = cmdline.c; sourceTree = "<group>"; };
- 17C8BA15098B4FD700216F16 /* intgen.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = intgen.c; sourceTree = "<group>"; };
- 17C8BA1B098B502D00216F16 /* cext.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = cext.c; sourceTree = "<group>"; };
- 17C8BA1C098B502D00216F16 /* cext.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cext.h; sourceTree = "<group>"; };
- 17C8BA1D098B502D00216F16 /* cleanup.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = cleanup.c; sourceTree = "<group>"; };
- 17C8BA1E098B502D00216F16 /* cleanup.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cleanup.h; sourceTree = "<group>"; };
- 17C8BA1F098B502D00216F16 /* cmdline.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = cmdline.c; sourceTree = "<group>"; };
- 17C8BA20098B502D00216F16 /* cmdline.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cmdline.h; sourceTree = "<group>"; };
- 17C8BA21098B502D00216F16 /* cmtcmd.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = cmtcmd.c; sourceTree = "<group>"; };
- 17C8BA22098B502D00216F16 /* cmtcmd.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cmtcmd.h; sourceTree = "<group>"; };
- 17C8BA26098B502D00216F16 /* hash.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = hash.h; sourceTree = "<group>"; };
- 17C8BA27098B502D00216F16 /* hashrout.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = hashrout.h; sourceTree = "<group>"; };
- 17C8BA28098B502D00216F16 /* mem.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = mem.c; sourceTree = "<group>"; };
- 17C8BA29098B502D00216F16 /* mem.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = mem.h; sourceTree = "<group>"; };
- 17C8BA2A098B502D00216F16 /* mfmidi.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = mfmidi.h; sourceTree = "<group>"; };
- 17C8BA2B098B502D00216F16 /* midibuff.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = midibuff.h; sourceTree = "<group>"; };
- 17C8BA2C098B502D00216F16 /* midicode.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = midicode.h; sourceTree = "<group>"; };
- 17C8BA2D098B502D00216F16 /* midierr.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = midierr.h; sourceTree = "<group>"; };
- 17C8BA2E098B502D00216F16 /* midifile.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = midifile.c; sourceTree = "<group>"; };
- 17C8BA2F098B502D00216F16 /* midifile.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = midifile.h; sourceTree = "<group>"; };
- 17C8BA30098B502D00216F16 /* midifns.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = midifns.c; sourceTree = "<group>"; };
- 17C8BA31098B502D00216F16 /* midifns.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = midifns.h; sourceTree = "<group>"; };
- 17C8BA34098B502D00216F16 /* moxc.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = moxc.c; sourceTree = "<group>"; };
- 17C8BA35098B502D00216F16 /* moxc.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = moxc.h; sourceTree = "<group>"; };
- 17C8BA36098B502D00216F16 /* musiprog.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = musiprog.h; sourceTree = "<group>"; };
- 17C8BA37098B502D00216F16 /* pitch.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = pitch.h; sourceTree = "<group>"; };
- 17C8BA38098B502D00216F16 /* record.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = record.c; sourceTree = "<group>"; };
- 17C8BA39098B502D00216F16 /* record.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = record.h; sourceTree = "<group>"; };
- 17C8BA3A098B502D00216F16 /* seq.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = seq.c; sourceTree = "<group>"; };
- 17C8BA3B098B502D00216F16 /* seq.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = seq.h; sourceTree = "<group>"; };
- 17C8BA3C098B502D00216F16 /* seqdecls.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = seqdecls.h; sourceTree = "<group>"; };
- 17C8BA3D098B502D00216F16 /* seqmread.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = seqmread.c; sourceTree = "<group>"; };
- 17C8BA3E098B502D00216F16 /* seqmread.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = seqmread.h; sourceTree = "<group>"; };
- 17C8BA3F098B502D00216F16 /* seqmwrite.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = seqmwrite.c; sourceTree = "<group>"; };
- 17C8BA40098B502D00216F16 /* seqmwrite.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = seqmwrite.h; sourceTree = "<group>"; };
- 17C8BA41098B502D00216F16 /* seqread.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = seqread.c; sourceTree = "<group>"; };
- 17C8BA42098B502D00216F16 /* seqread.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = seqread.h; sourceTree = "<group>"; };
- 17C8BA43098B502D00216F16 /* seqwrite.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = seqwrite.c; sourceTree = "<group>"; };
- 17C8BA44098B502D00216F16 /* seqwrite.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = seqwrite.h; sourceTree = "<group>"; };
- 17C8BA45098B502D00216F16 /* swlogic.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = swlogic.h; sourceTree = "<group>"; };
- 17C8BA46098B502D00216F16 /* tempomap.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = tempomap.c; sourceTree = "<group>"; };
- 17C8BA47098B502D00216F16 /* tempomap.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = tempomap.h; sourceTree = "<group>"; };
- 17C8BA48098B502D00216F16 /* timebase.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = timebase.c; sourceTree = "<group>"; };
- 17C8BA49098B502D00216F16 /* timebase.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = timebase.h; sourceTree = "<group>"; };
- 17C8BA4A098B502D00216F16 /* userio.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = userio.c; sourceTree = "<group>"; };
- 17C8BA4B098B502D00216F16 /* userio.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = userio.h; sourceTree = "<group>"; };
- 17C8BA4F098B502D00216F16 /* fftn.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = fftn.c; sourceTree = "<group>"; };
- 17C8BA50098B502D00216F16 /* fftn.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = fftn.h; sourceTree = "<group>"; };
- 17C8BAC4098B502D00216F16 /* nyx.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = nyx.c; sourceTree = "<group>"; };
- 17C8BAC5098B502D00216F16 /* nyx.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = nyx.h; sourceTree = "<group>"; };
- 17C8BD32098B649900216F16 /* add.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = add.c; sourceTree = "<group>"; };
- 17C8BD33098B649A00216F16 /* add.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = add.h; sourceTree = "<group>"; };
- 17C8BD35098B649A00216F16 /* avg.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = avg.c; sourceTree = "<group>"; };
- 17C8BD36098B649A00216F16 /* avg.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = avg.h; sourceTree = "<group>"; };
- 17C8BD38098B649A00216F16 /* compose.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = compose.c; sourceTree = "<group>"; };
- 17C8BD39098B649A00216F16 /* compose.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = compose.h; sourceTree = "<group>"; };
- 17C8BD3B098B649A00216F16 /* cque.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cque.h; sourceTree = "<group>"; };
- 17C8BD3D098B649A00216F16 /* debug.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = debug.c; sourceTree = "<group>"; };
- 17C8BD3E098B649A00216F16 /* debug.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = debug.h; sourceTree = "<group>"; };
- 17C8BD40098B649A00216F16 /* downsample.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = downsample.c; sourceTree = "<group>"; };
- 17C8BD41098B649A00216F16 /* downsample.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = downsample.h; sourceTree = "<group>"; };
- 17C8BD43098B649A00216F16 /* falloc.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = falloc.c; sourceTree = "<group>"; };
- 17C8BD44098B649A00216F16 /* falloc.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = falloc.h; sourceTree = "<group>"; };
- 17C8BD46098B649A00216F16 /* ffilterkit.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = ffilterkit.c; sourceTree = "<group>"; };
- 17C8BD47098B649A00216F16 /* ffilterkit.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = ffilterkit.h; sourceTree = "<group>"; };
- 17C8BD4A098B649A00216F16 /* fft.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = fft.c; sourceTree = "<group>"; };
- 17C8BD4B098B649A00216F16 /* fft.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = fft.h; sourceTree = "<group>"; };
- 17C8BD4E098B649A00216F16 /* fftw.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = fftw.h; sourceTree = "<group>"; };
- 17C8BD4F098B649A00216F16 /* fresample.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = fresample.h; sourceTree = "<group>"; };
- 17C8BD50098B649A00216F16 /* fsmallfilter.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = fsmallfilter.h; sourceTree = "<group>"; };
- 17C8BD51098B649A00216F16 /* handlers.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = handlers.c; sourceTree = "<group>"; };
- 17C8BD53098B649A00216F16 /* inverse.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = inverse.c; sourceTree = "<group>"; };
- 17C8BD54098B649A00216F16 /* inverse.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = inverse.h; sourceTree = "<group>"; };
- 17C8BD56098B649A00216F16 /* local.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = local.c; sourceTree = "<group>"; };
- 17C8BD58098B649A00216F16 /* localdefs.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = localdefs.h; sourceTree = "<group>"; };
- 17C8BD59098B649A00216F16 /* localptrs.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = localptrs.h; sourceTree = "<group>"; };
- 17C8BD5A098B649A00216F16 /* multiread.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = multiread.c; sourceTree = "<group>"; };
- 17C8BD5B098B649A00216F16 /* multiread.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = multiread.h; sourceTree = "<group>"; };
- 17C8BD5D098B649A00216F16 /* multiseq.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = multiseq.c; sourceTree = "<group>"; };
- 17C8BD5E098B649A00216F16 /* multiseq.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = multiseq.h; sourceTree = "<group>"; };
- 17C8BD64098B649A00216F16 /* resamp.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = resamp.c; sourceTree = "<group>"; };
- 17C8BD65098B649A00216F16 /* resamp.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = resamp.h; sourceTree = "<group>"; };
- 17C8BD67098B649A00216F16 /* resampv.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = resampv.c; sourceTree = "<group>"; };
- 17C8BD68098B649A00216F16 /* resampv.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = resampv.h; sourceTree = "<group>"; };
- 17C8BD6A098B649A00216F16 /* rfftw.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = rfftw.h; sourceTree = "<group>"; };
- 17C8BD6B098B649A00216F16 /* samples.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = samples.c; sourceTree = "<group>"; };
- 17C8BD6C098B649A00216F16 /* samples.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = samples.h; sourceTree = "<group>"; };
- 17C8BD6E098B649A00216F16 /* seqext.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = seqext.c; sourceTree = "<group>"; };
- 17C8BD6F098B649A00216F16 /* seqext.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = seqext.h; sourceTree = "<group>"; };
- 17C8BD73098B649A00216F16 /* seqfnint.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = seqfnint.c; sourceTree = "<group>"; };
- 17C8BD76098B649A00216F16 /* seqfnintdefs.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = seqfnintdefs.h; sourceTree = "<group>"; };
- 17C8BD77098B649A00216F16 /* seqfnintptrs.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = seqfnintptrs.h; sourceTree = "<group>"; };
- 17C8BD78098B649A00216F16 /* seqinterf.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = seqinterf.c; sourceTree = "<group>"; };
- 17C8BD79098B649A00216F16 /* seqinterf.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = seqinterf.h; sourceTree = "<group>"; };
- 17C8BD7B098B649A00216F16 /* sndfail.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = sndfail.c; sourceTree = "<group>"; };
- 17C8BD7F098B649A00216F16 /* sndfnint.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = sndfnint.c; sourceTree = "<group>"; };
- 17C8BD82098B649A00216F16 /* sndfnintdefs.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = sndfnintdefs.h; sourceTree = "<group>"; };
- 17C8BD83098B649A00216F16 /* sndfnintptrs.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = sndfnintptrs.h; sourceTree = "<group>"; };
- 17C8BD84098B649A00216F16 /* sndmax.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = sndmax.c; sourceTree = "<group>"; };
- 17C8BD85098B649A00216F16 /* sndmax.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = sndmax.h; sourceTree = "<group>"; };
- 17C8BD87098B649A00216F16 /* sndread.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = sndread.c; sourceTree = "<group>"; };
- 17C8BD88098B649A00216F16 /* sndread.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = sndread.h; sourceTree = "<group>"; };
- 17C8BD8A098B649A00216F16 /* sndseq.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = sndseq.c; sourceTree = "<group>"; };
- 17C8BD8B098B649A00216F16 /* sndseq.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = sndseq.h; sourceTree = "<group>"; };
- 17C8BD8D098B649A00216F16 /* sndwrite.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = sndwrite.c; sourceTree = "<group>"; };
- 17C8BD8E098B649A00216F16 /* sndwrite.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = sndwrite.h; sourceTree = "<group>"; };
- 17C8BD90098B649A00216F16 /* sound.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = sound.c; sourceTree = "<group>"; };
- 17C8BD91098B649A00216F16 /* sound.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = sound.h; sourceTree = "<group>"; };
- 17C8BD93098B649A00216F16 /* stats.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = stats.c; sourceTree = "<group>"; };
- 17C8BD95098B649A00216F16 /* stdefs.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = stdefs.h; sourceTree = "<group>"; };
- 17C8BDF9098B654200216F16 /* audionone.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = audionone.c; sourceTree = "<group>"; };
- 17C8BDFD098B654200216F16 /* ieeecvt.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = ieeecvt.c; sourceTree = "<group>"; };
- 17C8BDFE098B654200216F16 /* ieeecvt.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = ieeecvt.h; sourceTree = "<group>"; };
- 17C8BE01098B654200216F16 /* snd.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = snd.c; sourceTree = "<group>"; };
- 17C8BE02098B654200216F16 /* snd.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = snd.h; sourceTree = "<group>"; };
- 17C8BE06098B654200216F16 /* sndconfig.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = sndconfig.h; sourceTree = "<group>"; };
- 17C8BE07098B654200216F16 /* sndcvt.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = sndcvt.c; sourceTree = "<group>"; };
- 17C8BE0B098B654200216F16 /* sndfileio.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = sndfileio.h; sourceTree = "<group>"; };
- 17C8BE0C098B654200216F16 /* sndfreebsd.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = sndfreebsd.h; sourceTree = "<group>"; };
- 17C8BE0D098B654200216F16 /* sndhead.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = sndhead.h; sourceTree = "<group>"; };
- 17C8BE0E098B654200216F16 /* sndheader.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = sndheader.c; sourceTree = "<group>"; };
- 17C8BE0F098B654200216F16 /* sndheader.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = sndheader.h; sourceTree = "<group>"; };
- 17C8BE11098B654200216F16 /* sndio.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = sndio.c; sourceTree = "<group>"; };
- 17C8BE13098B654200216F16 /* sndlinux.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = sndlinux.c; sourceTree = "<group>"; };
- 17C8BE14098B654200216F16 /* sndlinux.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = sndlinux.h; sourceTree = "<group>"; };
- 17C8BE1F098B654200216F16 /* sndwrite.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = sndwrite.h; sourceTree = "<group>"; };
- 17C8BE22098B654200216F16 /* switches.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = switches.h; sourceTree = "<group>"; };
- 17C8BE24098B654200216F16 /* term.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = term.c; sourceTree = "<group>"; };
- 17C8BE25098B654200216F16 /* term.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = term.h; sourceTree = "<group>"; };
- 17C8BE2C098B654200216F16 /* alpass.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = alpass.c; sourceTree = "<group>"; };
- 17C8BE2D098B654200216F16 /* alpass.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = alpass.h; sourceTree = "<group>"; };
- 17C8BE39098B654200216F16 /* amosc.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = amosc.c; sourceTree = "<group>"; };
- 17C8BE3A098B654200216F16 /* amosc.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = amosc.h; sourceTree = "<group>"; };
- 17C8BE3D098B654200216F16 /* areson.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = areson.c; sourceTree = "<group>"; };
- 17C8BE3E098B654200216F16 /* areson.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = areson.h; sourceTree = "<group>"; };
- 17C8BE41098B654200216F16 /* aresoncv.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = aresoncv.c; sourceTree = "<group>"; };
- 17C8BE42098B654200216F16 /* aresoncv.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = aresoncv.h; sourceTree = "<group>"; };
- 17C8BE45098B654200216F16 /* aresonvc.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = aresonvc.c; sourceTree = "<group>"; };
- 17C8BE46098B654200216F16 /* aresonvc.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = aresonvc.h; sourceTree = "<group>"; };
- 17C8BE49098B654200216F16 /* aresonvv.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = aresonvv.c; sourceTree = "<group>"; };
- 17C8BE4A098B654200216F16 /* aresonvv.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = aresonvv.h; sourceTree = "<group>"; };
- 17C8BE4D098B654200216F16 /* atone.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = atone.c; sourceTree = "<group>"; };
- 17C8BE4E098B654200216F16 /* atone.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = atone.h; sourceTree = "<group>"; };
- 17C8BE51098B654200216F16 /* atonev.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = atonev.c; sourceTree = "<group>"; };
- 17C8BE52098B654200216F16 /* atonev.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = atonev.h; sourceTree = "<group>"; };
- 17C8BE55098B654200216F16 /* biquad.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = biquad.c; sourceTree = "<group>"; };
- 17C8BE56098B654200216F16 /* biquad.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = biquad.h; sourceTree = "<group>"; };
- 17C8BE59098B654200216F16 /* buzz.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = buzz.c; sourceTree = "<group>"; };
- 17C8BE5A098B654200216F16 /* buzz.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = buzz.h; sourceTree = "<group>"; };
- 17C8BE5D098B654200216F16 /* chase.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = chase.c; sourceTree = "<group>"; };
- 17C8BE5E098B654200216F16 /* chase.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = chase.h; sourceTree = "<group>"; };
- 17C8BE61098B654200216F16 /* clip.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = clip.c; sourceTree = "<group>"; };
- 17C8BE62098B654200216F16 /* clip.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = clip.h; sourceTree = "<group>"; };
- 17C8BE65098B654200216F16 /* congen.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = congen.c; sourceTree = "<group>"; };
- 17C8BE66098B654200216F16 /* congen.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = congen.h; sourceTree = "<group>"; };
- 17C8BE69098B654300216F16 /* const.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = const.c; sourceTree = "<group>"; };
- 17C8BE6A098B654300216F16 /* const.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = const.h; sourceTree = "<group>"; };
- 17C8BE6D098B654300216F16 /* convolve.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = convolve.c; sourceTree = "<group>"; };
- 17C8BE6E098B654300216F16 /* convolve.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = convolve.h; sourceTree = "<group>"; };
- 17C8BE71098B654300216F16 /* coterm.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = coterm.c; sourceTree = "<group>"; };
- 17C8BE72098B654300216F16 /* coterm.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = coterm.h; sourceTree = "<group>"; };
- 17C8BE76098B654300216F16 /* delay.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = delay.c; sourceTree = "<group>"; };
- 17C8BE77098B654300216F16 /* delay.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = delay.h; sourceTree = "<group>"; };
- 17C8BE7A098B654300216F16 /* delaycv.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = delaycv.c; sourceTree = "<group>"; };
- 17C8BE7B098B654300216F16 /* delaycv.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = delaycv.h; sourceTree = "<group>"; };
- 17C8BE83098B654300216F16 /* exp.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = exp.c; sourceTree = "<group>"; };
- 17C8BE84098B654300216F16 /* exp.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = exp.h; sourceTree = "<group>"; };
- 17C8BE88098B654300216F16 /* fmosc.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = fmosc.c; sourceTree = "<group>"; };
- 17C8BE89098B654300216F16 /* fmosc.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = fmosc.h; sourceTree = "<group>"; };
- 17C8BE8C098B654300216F16 /* follow.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = follow.c; sourceTree = "<group>"; };
- 17C8BE8D098B654300216F16 /* follow.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = follow.h; sourceTree = "<group>"; };
- 17C8BE90098B654300216F16 /* fromarraystream.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = fromarraystream.c; sourceTree = "<group>"; };
- 17C8BE91098B654300216F16 /* fromarraystream.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = fromarraystream.h; sourceTree = "<group>"; };
- 17C8BE94098B654300216F16 /* fromobject.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = fromobject.c; sourceTree = "<group>"; };
- 17C8BE95098B654300216F16 /* fromobject.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = fromobject.h; sourceTree = "<group>"; };
- 17C8BE98098B654300216F16 /* gate.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = gate.c; sourceTree = "<group>"; };
- 17C8BE99098B654300216F16 /* gate.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = gate.h; sourceTree = "<group>"; };
- 17C8BE9D098B654300216F16 /* ifft.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = ifft.c; sourceTree = "<group>"; };
- 17C8BE9E098B654300216F16 /* ifft.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = ifft.h; sourceTree = "<group>"; };
- 17C8BEA3098B654300216F16 /* integrate.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = integrate.c; sourceTree = "<group>"; };
- 17C8BEA4098B654300216F16 /* integrate.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = integrate.h; sourceTree = "<group>"; };
- 17C8BEA7098B654300216F16 /* log.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = log.c; sourceTree = "<group>"; };
- 17C8BEA8098B654300216F16 /* log.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = log.h; sourceTree = "<group>"; };
- 17C8BEAB098B654300216F16 /* maxv.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = maxv.c; sourceTree = "<group>"; };
- 17C8BEAC098B654300216F16 /* maxv.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = maxv.h; sourceTree = "<group>"; };
- 17C8BEB1098B654300216F16 /* offset.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = offset.c; sourceTree = "<group>"; };
- 17C8BEB2098B654300216F16 /* offset.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = offset.h; sourceTree = "<group>"; };
- 17C8BEB5098B654300216F16 /* oneshot.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = oneshot.c; sourceTree = "<group>"; };
- 17C8BEB6098B654300216F16 /* oneshot.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = oneshot.h; sourceTree = "<group>"; };
- 17C8BEB9098B654300216F16 /* osc.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = osc.c; sourceTree = "<group>"; };
- 17C8BEBA098B654300216F16 /* osc.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = osc.h; sourceTree = "<group>"; };
- 17C8BEBD098B654300216F16 /* partial.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = partial.c; sourceTree = "<group>"; };
- 17C8BEBE098B654300216F16 /* partial.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = partial.h; sourceTree = "<group>"; };
- 17C8BEC1098B654300216F16 /* pluck.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = pluck.c; sourceTree = "<group>"; };
- 17C8BEC2098B654300216F16 /* pluck.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = pluck.h; sourceTree = "<group>"; };
- 17C8BEC5098B654300216F16 /* prod.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = prod.c; sourceTree = "<group>"; };
- 17C8BEC6098B654300216F16 /* prod.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = prod.h; sourceTree = "<group>"; };
- 17C8BEC9098B654300216F16 /* pwl.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = pwl.c; sourceTree = "<group>"; };
- 17C8BECA098B654300216F16 /* pwl.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = pwl.h; sourceTree = "<group>"; };
- 17C8BECF098B654300216F16 /* quantize.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = quantize.c; sourceTree = "<group>"; };
- 17C8BED0098B654300216F16 /* quantize.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = quantize.h; sourceTree = "<group>"; };
- 17C8BED3098B654300216F16 /* recip.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = recip.c; sourceTree = "<group>"; };
- 17C8BED4098B654300216F16 /* recip.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = recip.h; sourceTree = "<group>"; };
- 17C8BED7098B654300216F16 /* reson.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = reson.c; sourceTree = "<group>"; };
- 17C8BED8098B654300216F16 /* reson.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = reson.h; sourceTree = "<group>"; };
- 17C8BEDB098B654300216F16 /* resoncv.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = resoncv.c; sourceTree = "<group>"; };
- 17C8BEDC098B654300216F16 /* resoncv.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = resoncv.h; sourceTree = "<group>"; };
- 17C8BEDF098B654300216F16 /* resonvc.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = resonvc.c; sourceTree = "<group>"; };
- 17C8BEE0098B654300216F16 /* resonvc.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = resonvc.h; sourceTree = "<group>"; };
- 17C8BEE3098B654300216F16 /* resonvv.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = resonvv.c; sourceTree = "<group>"; };
- 17C8BEE4098B654300216F16 /* resonvv.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = resonvv.h; sourceTree = "<group>"; };
- 17C8BEE7098B654300216F16 /* sampler.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = sampler.c; sourceTree = "<group>"; };
- 17C8BEE8098B654300216F16 /* sampler.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = sampler.h; sourceTree = "<group>"; };
- 17C8BEEB098B654300216F16 /* scale.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = scale.c; sourceTree = "<group>"; };
- 17C8BEEC098B654300216F16 /* scale.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = scale.h; sourceTree = "<group>"; };
- 17C8BEEF098B654300216F16 /* shape.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = shape.c; sourceTree = "<group>"; };
- 17C8BEF0098B654300216F16 /* shape.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = shape.h; sourceTree = "<group>"; };
- 17C8BEF3098B654300216F16 /* sine.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = sine.c; sourceTree = "<group>"; };
- 17C8BEF4098B654300216F16 /* sine.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = sine.h; sourceTree = "<group>"; };
- 17C8BEF7098B654300216F16 /* siosc.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = siosc.c; sourceTree = "<group>"; };
- 17C8BEF8098B654300216F16 /* siosc.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = siosc.h; sourceTree = "<group>"; };
- 17C8BEFB098B654300216F16 /* slope.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = slope.c; sourceTree = "<group>"; };
- 17C8BEFC098B654300216F16 /* slope.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = slope.h; sourceTree = "<group>"; };
- 17C8BF05098B654300216F16 /* tapv.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = tapv.c; sourceTree = "<group>"; };
- 17C8BF06098B654300216F16 /* tapv.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = tapv.h; sourceTree = "<group>"; };
- 17C8BF09098B654300216F16 /* tone.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = tone.c; sourceTree = "<group>"; };
- 17C8BF0A098B654300216F16 /* tone.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = tone.h; sourceTree = "<group>"; };
- 17C8BF0D098B654300216F16 /* tonev.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = tonev.c; sourceTree = "<group>"; };
- 17C8BF0E098B654300216F16 /* tonev.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = tonev.h; sourceTree = "<group>"; };
- 17C8BF12098B654300216F16 /* upsample.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = upsample.c; sourceTree = "<group>"; };
- 17C8BF13098B654300216F16 /* upsample.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = upsample.h; sourceTree = "<group>"; };
- 17C8BF16098B654300216F16 /* white.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = white.c; sourceTree = "<group>"; };
- 17C8BF17098B654300216F16 /* white.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = white.h; sourceTree = "<group>"; };
- 17C8BF1E098B654300216F16 /* extern.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = extern.c; sourceTree = "<group>"; };
- 17C8BF1F098B654300216F16 /* extern.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = extern.h; sourceTree = "<group>"; };
- 17C8BF21098B654300216F16 /* osdefs.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = osdefs.h; sourceTree = "<group>"; };
- 17C8BF22098B654300216F16 /* osptrs.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = osptrs.h; sourceTree = "<group>"; };
- 17C8BF23098B654300216F16 /* path.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = path.c; sourceTree = "<group>"; };
- 17C8BF25098B654300216F16 /* xlbfun.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = xlbfun.c; sourceTree = "<group>"; };
- 17C8BF27098B654300216F16 /* xlcont.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = xlcont.c; sourceTree = "<group>"; };
- 17C8BF29098B654300216F16 /* xldbug.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = xldbug.c; sourceTree = "<group>"; };
- 17C8BF2B098B654300216F16 /* xldmem.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = xldmem.c; sourceTree = "<group>"; };
- 17C8BF2C098B654300216F16 /* xldmem.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = xldmem.h; sourceTree = "<group>"; };
- 17C8BF2E098B654300216F16 /* xleval.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = xleval.c; sourceTree = "<group>"; };
- 17C8BF31098B654300216F16 /* xlfio.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = xlfio.c; sourceTree = "<group>"; };
- 17C8BF33098B654300216F16 /* xlftab.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = xlftab.c; sourceTree = "<group>"; };
- 17C8BF35098B654300216F16 /* xlglob.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = xlglob.c; sourceTree = "<group>"; };
- 17C8BF37098B654300216F16 /* xlimage.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = xlimage.c; sourceTree = "<group>"; };
- 17C8BF39098B654300216F16 /* xlinit.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = xlinit.c; sourceTree = "<group>"; };
- 17C8BF3B098B654300216F16 /* xlio.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = xlio.c; sourceTree = "<group>"; };
- 17C8BF3D098B654300216F16 /* xlisp.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = xlisp.c; sourceTree = "<group>"; };
- 17C8BF3E098B654300216F16 /* xlisp.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = xlisp.h; sourceTree = "<group>"; };
- 17C8BF40098B654300216F16 /* xljump.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = xljump.c; sourceTree = "<group>"; };
- 17C8BF42098B654300216F16 /* xllist.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = xllist.c; sourceTree = "<group>"; };
- 17C8BF44098B654300216F16 /* xlmath.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = xlmath.c; sourceTree = "<group>"; };
- 17C8BF46098B654300216F16 /* xlobj.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = xlobj.c; sourceTree = "<group>"; };
- 17C8BF48098B654300216F16 /* xlpp.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = xlpp.c; sourceTree = "<group>"; };
- 17C8BF4A098B654300216F16 /* xlprin.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = xlprin.c; sourceTree = "<group>"; };
- 17C8BF4C098B654300216F16 /* xlread.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = xlread.c; sourceTree = "<group>"; };
- 17C8BF4E098B654400216F16 /* xlstr.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = xlstr.c; sourceTree = "<group>"; };
- 17C8BF50098B654400216F16 /* xlsubr.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = xlsubr.c; sourceTree = "<group>"; };
- 17C8BF52098B654400216F16 /* xlsym.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = xlsym.c; sourceTree = "<group>"; };
- 17C8BF54098B654400216F16 /* xlsys.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = xlsys.c; sourceTree = "<group>"; };
17FC86F30994637C0061DC94 /* compile.txt */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = text; name = compile.txt; path = mac/compile.txt; sourceTree = "<group>"; };
+ 1818558F0FFE916C0026D190 /* CommandMisc.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CommandMisc.h; sourceTree = "<group>"; };
+ 181855900FFE916C0026D190 /* CommandTargets.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CommandTargets.h; sourceTree = "<group>"; };
+ 181855950FFE916C0026D190 /* ScreenshotCommand.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = ScreenshotCommand.cpp; sourceTree = "<group>"; };
+ 181855960FFE916C0026D190 /* ScreenshotCommand.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = ScreenshotCommand.h; sourceTree = "<group>"; };
1841B5000E00AD6E00F386E9 /* ODComputeSummaryTask.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = ODComputeSummaryTask.cpp; path = ondemand/ODComputeSummaryTask.cpp; sourceTree = "<group>"; };
1841B5010E00AD6E00F386E9 /* ODComputeSummaryTask.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = ODComputeSummaryTask.h; path = ondemand/ODComputeSummaryTask.h; sourceTree = "<group>"; };
1841B5020E00AD6E00F386E9 /* ODManager.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = ODManager.cpp; path = ondemand/ODManager.cpp; sourceTree = "<group>"; };
@@ -2283,6 +2233,10 @@
1841B5090E00AD6E00F386E9 /* ODWaveTrackTaskQueue.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = ODWaveTrackTaskQueue.h; path = ondemand/ODWaveTrackTaskQueue.h; sourceTree = "<group>"; };
1841B50F0E00AD8D00F386E9 /* ODPCMAliasBlockFile.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = ODPCMAliasBlockFile.cpp; sourceTree = "<group>"; };
1841B5100E00AD8D00F386E9 /* ODPCMAliasBlockFile.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = ODPCMAliasBlockFile.h; sourceTree = "<group>"; };
+ 1865A9B41004490400946EE6 /* Lyrics.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = Lyrics.cpp; sourceTree = "<group>"; };
+ 1865A9B51004490400946EE6 /* Lyrics.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = Lyrics.h; sourceTree = "<group>"; };
+ 1865A9B61004490500946EE6 /* LyricsWindow.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = LyricsWindow.cpp; sourceTree = "<group>"; };
+ 1865A9B71004490500946EE6 /* LyricsWindow.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = LyricsWindow.h; sourceTree = "<group>"; };
186CCE6B0E51F47400659159 /* ODDecodeBlockFile.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = ODDecodeBlockFile.cpp; sourceTree = "<group>"; };
186CCE6C0E51F47400659159 /* ODDecodeBlockFile.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = ODDecodeBlockFile.h; sourceTree = "<group>"; };
186CCE6E0E51F48500659159 /* ODDecodeFlacTask.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = ODDecodeFlacTask.cpp; path = ondemand/ODDecodeFlacTask.cpp; sourceTree = "<group>"; };
@@ -2291,11 +2245,70 @@
186CCE710E51F48500659159 /* ODDecodeTask.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = ODDecodeTask.h; path = ondemand/ODDecodeTask.h; sourceTree = "<group>"; };
186CCEA20E523C8D00659159 /* Profiler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Profiler.h; sourceTree = "<group>"; };
186CCEA30E523C8E00659159 /* Profiler.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Profiler.cpp; sourceTree = "<group>"; };
+ 18A2840D0F79BCAA0013A1BE /* Generator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Generator.h; sourceTree = "<group>"; };
+ 18A2840E0F79BCAB0013A1BE /* Generator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Generator.cpp; sourceTree = "<group>"; };
18D8314C0ED0F56200FD870D /* Contrast.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = Contrast.cpp; sourceTree = "<group>"; };
18D8314D0ED0F56200FD870D /* Contrast.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = Contrast.h; sourceTree = "<group>"; };
+ 2800FDF40FF3225B005CA9E5 /* pminternal.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; name = pminternal.h; path = portmidi/pm_common/pminternal.h; sourceTree = "<group>"; };
+ 2800FDF50FF3225B005CA9E5 /* pmutil.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; name = pmutil.c; path = portmidi/pm_common/pmutil.c; sourceTree = "<group>"; };
+ 2800FDF60FF3225B005CA9E5 /* pmutil.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; name = pmutil.h; path = portmidi/pm_common/pmutil.h; sourceTree = "<group>"; };
+ 2800FDF70FF3225B005CA9E5 /* portmidi.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; name = portmidi.c; path = portmidi/pm_common/portmidi.c; sourceTree = "<group>"; };
+ 2800FDF80FF3225B005CA9E5 /* portmidi.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; name = portmidi.h; path = portmidi/pm_common/portmidi.h; sourceTree = "<group>"; };
+ 2800FDF90FF3227F005CA9E5 /* finddefault.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; name = finddefault.c; path = portmidi/pm_mac/finddefault.c; sourceTree = "<group>"; };
+ 2800FDFA0FF3227F005CA9E5 /* pmmac.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; name = pmmac.c; path = portmidi/pm_mac/pmmac.c; sourceTree = "<group>"; };
+ 2800FDFB0FF3227F005CA9E5 /* pmmac.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; name = pmmac.h; path = portmidi/pm_mac/pmmac.h; sourceTree = "<group>"; };
+ 2800FDFC0FF3227F005CA9E5 /* pmmacosxcm.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; name = pmmacosxcm.c; path = portmidi/pm_mac/pmmacosxcm.c; sourceTree = "<group>"; };
+ 2800FDFD0FF3227F005CA9E5 /* pmmacosxcm.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; name = pmmacosxcm.h; path = portmidi/pm_mac/pmmacosxcm.h; sourceTree = "<group>"; };
+ 2800FDFE0FF3227F005CA9E5 /* readbinaryplist.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; name = readbinaryplist.c; path = portmidi/pm_mac/readbinaryplist.c; sourceTree = "<group>"; };
+ 2800FDFF0FF3227F005CA9E5 /* readbinaryplist.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; name = readbinaryplist.h; path = portmidi/pm_mac/readbinaryplist.h; sourceTree = "<group>"; };
+ 2800FE000FF322A1005CA9E5 /* porttime.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; name = porttime.h; path = portmidi/porttime/porttime.h; sourceTree = "<group>"; };
+ 2800FE010FF322A1005CA9E5 /* ptmacosx_mach.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; name = ptmacosx_mach.c; path = portmidi/porttime/ptmacosx_mach.c; sourceTree = "<group>"; };
+ 2800FE070FF322D4005CA9E5 /* libportmidi.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libportmidi.a; sourceTree = BUILT_PRODUCTS_DIR; };
+ 2800FE350FF32566005CA9E5 /* MidiIOPrefs.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = MidiIOPrefs.cpp; sourceTree = "<group>"; };
+ 2800FE360FF32566005CA9E5 /* MidiIOPrefs.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = MidiIOPrefs.h; sourceTree = "<group>"; };
2801A6430BF9268700648258 /* ImportQT.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = ImportQT.cpp; sourceTree = "<group>"; };
2801A6440BF9268700648258 /* ImportQT.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = ImportQT.h; sourceTree = "<group>"; };
2801A6450BF9268700648258 /* ImportQTWrapper.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = ImportQTWrapper.cpp; sourceTree = "<group>"; };
+ 2808025B0F32C11F0021001D /* bug.lsp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = text; name = bug.lsp; path = ../nyquist/bug.lsp; sourceTree = SOURCE_ROOT; };
+ 2808025C0F32C11F0021001D /* dspprims.lsp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = text; name = dspprims.lsp; path = ../nyquist/dspprims.lsp; sourceTree = SOURCE_ROOT; };
+ 2808025D0F32C11F0021001D /* envelopes.lsp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = text; name = envelopes.lsp; path = ../nyquist/envelopes.lsp; sourceTree = SOURCE_ROOT; };
+ 2808025E0F32C11F0021001D /* equalizer.lsp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = text; name = equalizer.lsp; path = ../nyquist/equalizer.lsp; sourceTree = SOURCE_ROOT; };
+ 2808025F0F32C11F0021001D /* evalenv.lsp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = text; name = evalenv.lsp; path = ../nyquist/evalenv.lsp; sourceTree = SOURCE_ROOT; };
+ 280802600F32C11F0021001D /* fileio.lsp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = text; name = fileio.lsp; path = ../nyquist/fileio.lsp; sourceTree = SOURCE_ROOT; };
+ 280802610F32C11F0021001D /* follow.lsp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = text; name = follow.lsp; path = ../nyquist/follow.lsp; sourceTree = SOURCE_ROOT; };
+ 280802620F32C11F0021001D /* init.lsp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = text; name = init.lsp; path = ../nyquist/init.lsp; sourceTree = SOURCE_ROOT; };
+ 280802630F32C11F0021001D /* misc.lsp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = text; name = misc.lsp; path = ../nyquist/misc.lsp; sourceTree = SOURCE_ROOT; };
+ 280802640F32C11F0021001D /* nyinit.lsp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = text; name = nyinit.lsp; path = ../nyquist/nyinit.lsp; sourceTree = SOURCE_ROOT; };
+ 280802650F32C11F0021001D /* nyqmisc.lsp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = text; name = nyqmisc.lsp; path = ../nyquist/nyqmisc.lsp; sourceTree = SOURCE_ROOT; };
+ 280802660F32C11F0021001D /* nyquist-plot.txt */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = text; name = "nyquist-plot.txt"; path = "../nyquist/nyquist-plot.txt"; sourceTree = SOURCE_ROOT; };
+ 280802670F32C11F0021001D /* nyquist.lsp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = text; name = nyquist.lsp; path = ../nyquist/nyquist.lsp; sourceTree = SOURCE_ROOT; };
+ 280802680F32C11F0021001D /* printrec.lsp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = text; name = printrec.lsp; path = ../nyquist/printrec.lsp; sourceTree = SOURCE_ROOT; };
+ 280802690F32C11F0021001D /* profile.lsp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = text; name = profile.lsp; path = ../nyquist/profile.lsp; sourceTree = SOURCE_ROOT; };
+ 2808026B0F32C11F0021001D /* mand1.raw */ = {isa = PBXFileReference; lastKnownFileType = file; path = mand1.raw; sourceTree = "<group>"; };
+ 2808026C0F32C11F0021001D /* mand10.raw */ = {isa = PBXFileReference; lastKnownFileType = file; path = mand10.raw; sourceTree = "<group>"; };
+ 2808026D0F32C11F0021001D /* mand11.raw */ = {isa = PBXFileReference; lastKnownFileType = file; path = mand11.raw; sourceTree = "<group>"; };
+ 2808026E0F32C11F0021001D /* mand12.raw */ = {isa = PBXFileReference; lastKnownFileType = file; path = mand12.raw; sourceTree = "<group>"; };
+ 2808026F0F32C11F0021001D /* mand2.raw */ = {isa = PBXFileReference; lastKnownFileType = file; path = mand2.raw; sourceTree = "<group>"; };
+ 280802700F32C11F0021001D /* mand3.raw */ = {isa = PBXFileReference; lastKnownFileType = file; path = mand3.raw; sourceTree = "<group>"; };
+ 280802710F32C11F0021001D /* mand4.raw */ = {isa = PBXFileReference; lastKnownFileType = file; path = mand4.raw; sourceTree = "<group>"; };
+ 280802720F32C11F0021001D /* mand5.raw */ = {isa = PBXFileReference; lastKnownFileType = file; path = mand5.raw; sourceTree = "<group>"; };
+ 280802730F32C11F0021001D /* mand6.raw */ = {isa = PBXFileReference; lastKnownFileType = file; path = mand6.raw; sourceTree = "<group>"; };
+ 280802740F32C11F0021001D /* mand7.raw */ = {isa = PBXFileReference; lastKnownFileType = file; path = mand7.raw; sourceTree = "<group>"; };
+ 280802750F32C11F0021001D /* mand8.raw */ = {isa = PBXFileReference; lastKnownFileType = file; path = mand8.raw; sourceTree = "<group>"; };
+ 280802760F32C11F0021001D /* mand9.raw */ = {isa = PBXFileReference; lastKnownFileType = file; path = mand9.raw; sourceTree = "<group>"; };
+ 280802770F32C11F0021001D /* mandpluk.raw */ = {isa = PBXFileReference; lastKnownFileType = file; path = mandpluk.raw; sourceTree = "<group>"; };
+ 280802780F32C11F0021001D /* marmstk1.raw */ = {isa = PBXFileReference; lastKnownFileType = file; path = marmstk1.raw; sourceTree = "<group>"; };
+ 280802790F32C11F0021001D /* sinewave.raw */ = {isa = PBXFileReference; lastKnownFileType = file; path = sinewave.raw; sourceTree = "<group>"; };
+ 2808027A0F32C11F0021001D /* sal-parse.lsp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = text; name = "sal-parse.lsp"; path = "../nyquist/sal-parse.lsp"; sourceTree = SOURCE_ROOT; };
+ 2808027B0F32C11F0021001D /* sal.lsp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = text; name = sal.lsp; path = ../nyquist/sal.lsp; sourceTree = SOURCE_ROOT; };
+ 2808027C0F32C11F0021001D /* seq.lsp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = text; name = seq.lsp; path = ../nyquist/seq.lsp; sourceTree = SOURCE_ROOT; };
+ 2808027D0F32C11F0021001D /* seqfnint.lsp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = text; name = seqfnint.lsp; path = ../nyquist/seqfnint.lsp; sourceTree = SOURCE_ROOT; };
+ 2808027E0F32C11F0021001D /* seqmidi.lsp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = text; name = seqmidi.lsp; path = ../nyquist/seqmidi.lsp; sourceTree = SOURCE_ROOT; };
+ 2808027F0F32C11F0021001D /* sndfnint.lsp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = text; name = sndfnint.lsp; path = ../nyquist/sndfnint.lsp; sourceTree = SOURCE_ROOT; };
+ 280802800F32C11F0021001D /* stk.lsp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = text; name = stk.lsp; path = ../nyquist/stk.lsp; sourceTree = SOURCE_ROOT; };
+ 280802810F32C11F0021001D /* system.lsp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = text; name = system.lsp; path = ../nyquist/system.lsp; sourceTree = SOURCE_ROOT; };
+ 280802820F32C11F0021001D /* xlinit.lsp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = text; name = xlinit.lsp; path = ../nyquist/xlinit.lsp; sourceTree = SOURCE_ROOT; };
+ 280802830F32C11F0021001D /* xm.lsp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = text; name = xm.lsp; path = ../nyquist/xm.lsp; sourceTree = SOURCE_ROOT; };
280828530A75E0D0000002EF /* LabelDialog.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = LabelDialog.cpp; sourceTree = "<group>"; };
280828540A75E0D0000002EF /* LabelDialog.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = LabelDialog.h; sourceTree = "<group>"; };
280828580A75E0EA000002EF /* Grid.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = Grid.cpp; sourceTree = "<group>"; };
@@ -2327,6 +2340,150 @@
283135FE0DFBA2E80076D551 /* FFmpeg.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = FFmpeg.h; sourceTree = "<group>"; };
283506280A3A88ED00EB1EBD /* pa_unix_util.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = pa_unix_util.c; sourceTree = "<group>"; };
283506290A3A88ED00EB1EBD /* pa_unix_util.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = pa_unix_util.h; sourceTree = "<group>"; };
+ 283752FD0F4286E000364787 /* apefooter.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = apefooter.cpp; sourceTree = "<group>"; };
+ 283752FE0F4286E000364787 /* apefooter.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = apefooter.h; sourceTree = "<group>"; };
+ 283752FF0F4286E000364787 /* apeitem.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = apeitem.cpp; sourceTree = "<group>"; };
+ 283753000F4286E000364787 /* apeitem.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = apeitem.h; sourceTree = "<group>"; };
+ 283753010F4286E000364787 /* apetag.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = apetag.cpp; sourceTree = "<group>"; };
+ 283753020F4286E000364787 /* apetag.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = apetag.h; sourceTree = "<group>"; };
+ 283753070F4286E000364787 /* asfattribute.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = asfattribute.cpp; sourceTree = "<group>"; };
+ 283753080F4286E000364787 /* asfattribute.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = asfattribute.h; sourceTree = "<group>"; };
+ 283753090F4286E000364787 /* asffile.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = asffile.cpp; sourceTree = "<group>"; };
+ 2837530A0F4286E000364787 /* asffile.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = asffile.h; sourceTree = "<group>"; };
+ 2837530B0F4286E000364787 /* asfproperties.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = asfproperties.cpp; sourceTree = "<group>"; };
+ 2837530C0F4286E000364787 /* asfproperties.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = asfproperties.h; sourceTree = "<group>"; };
+ 2837530D0F4286E000364787 /* asftag.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = asftag.cpp; sourceTree = "<group>"; };
+ 2837530E0F4286E000364787 /* asftag.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = asftag.h; sourceTree = "<group>"; };
+ 283753120F4286E000364787 /* audioproperties.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = audioproperties.cpp; sourceTree = "<group>"; };
+ 283753130F4286E000364787 /* audioproperties.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = audioproperties.h; sourceTree = "<group>"; };
+ 283753150F4286E000364787 /* fileref.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = fileref.cpp; sourceTree = "<group>"; };
+ 283753160F4286E000364787 /* fileref.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = fileref.h; sourceTree = "<group>"; };
+ 283753190F4286E000364787 /* flacfile.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = flacfile.cpp; sourceTree = "<group>"; };
+ 2837531A0F4286E000364787 /* flacfile.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = flacfile.h; sourceTree = "<group>"; };
+ 2837531B0F4286E000364787 /* flacproperties.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = flacproperties.cpp; sourceTree = "<group>"; };
+ 2837531C0F4286E000364787 /* flacproperties.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = flacproperties.h; sourceTree = "<group>"; };
+ 283753250F4286E000364787 /* mp4atom.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = mp4atom.cpp; sourceTree = "<group>"; };
+ 283753260F4286E000364787 /* mp4atom.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = mp4atom.h; sourceTree = "<group>"; };
+ 283753270F4286E000364787 /* mp4file.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = mp4file.cpp; sourceTree = "<group>"; };
+ 283753280F4286E000364787 /* mp4file.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = mp4file.h; sourceTree = "<group>"; };
+ 283753290F4286E000364787 /* mp4item.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = mp4item.cpp; sourceTree = "<group>"; };
+ 2837532A0F4286E000364787 /* mp4item.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = mp4item.h; sourceTree = "<group>"; };
+ 2837532B0F4286E000364787 /* mp4properties.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = mp4properties.cpp; sourceTree = "<group>"; };
+ 2837532C0F4286E000364787 /* mp4properties.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = mp4properties.h; sourceTree = "<group>"; };
+ 2837532D0F4286E000364787 /* mp4tag.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = mp4tag.cpp; sourceTree = "<group>"; };
+ 2837532E0F4286E000364787 /* mp4tag.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = mp4tag.h; sourceTree = "<group>"; };
+ 283753330F4286E000364787 /* mpcfile.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = mpcfile.cpp; sourceTree = "<group>"; };
+ 283753340F4286E000364787 /* mpcfile.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = mpcfile.h; sourceTree = "<group>"; };
+ 283753350F4286E000364787 /* mpcproperties.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = mpcproperties.cpp; sourceTree = "<group>"; };
+ 283753360F4286E000364787 /* mpcproperties.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = mpcproperties.h; sourceTree = "<group>"; };
+ 2837533B0F4286E000364787 /* id3v1genres.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = id3v1genres.cpp; sourceTree = "<group>"; };
+ 2837533C0F4286E100364787 /* id3v1genres.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = id3v1genres.h; sourceTree = "<group>"; };
+ 2837533D0F4286E100364787 /* id3v1tag.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = id3v1tag.cpp; sourceTree = "<group>"; };
+ 2837533E0F4286E100364787 /* id3v1tag.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = id3v1tag.h; sourceTree = "<group>"; };
+ 283753440F4286E100364787 /* attachedpictureframe.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = attachedpictureframe.cpp; sourceTree = "<group>"; };
+ 283753450F4286E100364787 /* attachedpictureframe.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = attachedpictureframe.h; sourceTree = "<group>"; };
+ 283753470F4286E100364787 /* commentsframe.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = commentsframe.cpp; sourceTree = "<group>"; };
+ 283753480F4286E100364787 /* commentsframe.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = commentsframe.h; sourceTree = "<group>"; };
+ 283753490F4286E100364787 /* generalencapsulatedobjectframe.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = generalencapsulatedobjectframe.cpp; sourceTree = "<group>"; };
+ 2837534A0F4286E100364787 /* generalencapsulatedobjectframe.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = generalencapsulatedobjectframe.h; sourceTree = "<group>"; };
+ 2837534D0F4286E100364787 /* popularimeterframe.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = popularimeterframe.cpp; sourceTree = "<group>"; };
+ 2837534E0F4286E100364787 /* popularimeterframe.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = popularimeterframe.h; sourceTree = "<group>"; };
+ 2837534F0F4286E100364787 /* privateframe.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = privateframe.cpp; sourceTree = "<group>"; };
+ 283753500F4286E100364787 /* privateframe.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = privateframe.h; sourceTree = "<group>"; };
+ 283753510F4286E100364787 /* relativevolumeframe.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = relativevolumeframe.cpp; sourceTree = "<group>"; };
+ 283753520F4286E100364787 /* relativevolumeframe.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = relativevolumeframe.h; sourceTree = "<group>"; };
+ 283753530F4286E100364787 /* textidentificationframe.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = textidentificationframe.cpp; sourceTree = "<group>"; };
+ 283753540F4286E100364787 /* textidentificationframe.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = textidentificationframe.h; sourceTree = "<group>"; };
+ 283753550F4286E100364787 /* uniquefileidentifierframe.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = uniquefileidentifierframe.cpp; sourceTree = "<group>"; };
+ 283753560F4286E100364787 /* uniquefileidentifierframe.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = uniquefileidentifierframe.h; sourceTree = "<group>"; };
+ 283753570F4286E100364787 /* unknownframe.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = unknownframe.cpp; sourceTree = "<group>"; };
+ 283753580F4286E100364787 /* unknownframe.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = unknownframe.h; sourceTree = "<group>"; };
+ 283753590F4286E100364787 /* unsynchronizedlyricsframe.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = unsynchronizedlyricsframe.cpp; sourceTree = "<group>"; };
+ 2837535A0F4286E100364787 /* unsynchronizedlyricsframe.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = unsynchronizedlyricsframe.h; sourceTree = "<group>"; };
+ 2837535B0F4286E100364787 /* urllinkframe.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = urllinkframe.cpp; sourceTree = "<group>"; };
+ 2837535C0F4286E100364787 /* urllinkframe.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = urllinkframe.h; sourceTree = "<group>"; };
+ 283753610F4286E100364787 /* id3v2extendedheader.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = id3v2extendedheader.cpp; sourceTree = "<group>"; };
+ 283753620F4286E100364787 /* id3v2extendedheader.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = id3v2extendedheader.h; sourceTree = "<group>"; };
+ 283753630F4286E100364787 /* id3v2footer.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = id3v2footer.cpp; sourceTree = "<group>"; };
+ 283753640F4286E100364787 /* id3v2footer.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = id3v2footer.h; sourceTree = "<group>"; };
+ 283753650F4286E100364787 /* id3v2frame.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = id3v2frame.cpp; sourceTree = "<group>"; };
+ 283753660F4286E100364787 /* id3v2frame.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = id3v2frame.h; sourceTree = "<group>"; };
+ 283753670F4286E100364787 /* id3v2framefactory.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = id3v2framefactory.cpp; sourceTree = "<group>"; };
+ 283753680F4286E100364787 /* id3v2framefactory.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = id3v2framefactory.h; sourceTree = "<group>"; };
+ 283753690F4286E100364787 /* id3v2header.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = id3v2header.cpp; sourceTree = "<group>"; };
+ 2837536A0F4286E100364787 /* id3v2header.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = id3v2header.h; sourceTree = "<group>"; };
+ 2837536B0F4286E100364787 /* id3v2synchdata.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = id3v2synchdata.cpp; sourceTree = "<group>"; };
+ 2837536C0F4286E100364787 /* id3v2synchdata.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = id3v2synchdata.h; sourceTree = "<group>"; };
+ 2837536D0F4286E100364787 /* id3v2tag.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = id3v2tag.cpp; sourceTree = "<group>"; };
+ 2837536E0F4286E100364787 /* id3v2tag.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = id3v2tag.h; sourceTree = "<group>"; };
+ 283753730F4286E100364787 /* mpegfile.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = mpegfile.cpp; sourceTree = "<group>"; };
+ 283753740F4286E100364787 /* mpegfile.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = mpegfile.h; sourceTree = "<group>"; };
+ 283753750F4286E100364787 /* mpegheader.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = mpegheader.cpp; sourceTree = "<group>"; };
+ 283753760F4286E100364787 /* mpegheader.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = mpegheader.h; sourceTree = "<group>"; };
+ 283753770F4286E100364787 /* mpegproperties.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = mpegproperties.cpp; sourceTree = "<group>"; };
+ 283753780F4286E100364787 /* mpegproperties.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = mpegproperties.h; sourceTree = "<group>"; };
+ 283753790F4286E100364787 /* xingheader.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = xingheader.cpp; sourceTree = "<group>"; };
+ 2837537A0F4286E100364787 /* xingheader.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = xingheader.h; sourceTree = "<group>"; };
+ 283753810F4286E100364787 /* oggflacfile.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = oggflacfile.cpp; sourceTree = "<group>"; };
+ 283753820F4286E100364787 /* oggflacfile.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = oggflacfile.h; sourceTree = "<group>"; };
+ 283753850F4286E100364787 /* oggfile.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = oggfile.cpp; sourceTree = "<group>"; };
+ 283753860F4286E100364787 /* oggfile.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = oggfile.h; sourceTree = "<group>"; };
+ 283753870F4286E100364787 /* oggpage.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = oggpage.cpp; sourceTree = "<group>"; };
+ 283753880F4286E100364787 /* oggpage.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = oggpage.h; sourceTree = "<group>"; };
+ 283753890F4286E100364787 /* oggpageheader.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = oggpageheader.cpp; sourceTree = "<group>"; };
+ 2837538A0F4286E100364787 /* oggpageheader.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = oggpageheader.h; sourceTree = "<group>"; };
+ 2837538F0F4286E100364787 /* speexfile.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = speexfile.cpp; sourceTree = "<group>"; };
+ 283753900F4286E100364787 /* speexfile.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = speexfile.h; sourceTree = "<group>"; };
+ 283753910F4286E100364787 /* speexproperties.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = speexproperties.cpp; sourceTree = "<group>"; };
+ 283753920F4286E100364787 /* speexproperties.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = speexproperties.h; sourceTree = "<group>"; };
+ 283753970F4286E100364787 /* vorbisfile.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = vorbisfile.cpp; sourceTree = "<group>"; };
+ 283753980F4286E100364787 /* vorbisfile.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = vorbisfile.h; sourceTree = "<group>"; };
+ 283753990F4286E100364787 /* vorbisproperties.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = vorbisproperties.cpp; sourceTree = "<group>"; };
+ 2837539A0F4286E100364787 /* vorbisproperties.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = vorbisproperties.h; sourceTree = "<group>"; };
+ 2837539B0F4286E100364787 /* xiphcomment.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = xiphcomment.cpp; sourceTree = "<group>"; };
+ 2837539C0F4286E100364787 /* xiphcomment.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = xiphcomment.h; sourceTree = "<group>"; };
+ 2837539F0F4286E100364787 /* aifffile.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = aifffile.cpp; sourceTree = "<group>"; };
+ 283753A00F4286E100364787 /* aifffile.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = aifffile.h; sourceTree = "<group>"; };
+ 283753A10F4286E100364787 /* aiffproperties.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = aiffproperties.cpp; sourceTree = "<group>"; };
+ 283753A20F4286E100364787 /* aiffproperties.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = aiffproperties.h; sourceTree = "<group>"; };
+ 283753A90F4286E100364787 /* rifffile.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = rifffile.cpp; sourceTree = "<group>"; };
+ 283753AA0F4286E100364787 /* rifffile.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = rifffile.h; sourceTree = "<group>"; };
+ 283753AF0F4286E100364787 /* wavfile.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = wavfile.cpp; sourceTree = "<group>"; };
+ 283753B00F4286E100364787 /* wavfile.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = wavfile.h; sourceTree = "<group>"; };
+ 283753B10F4286E100364787 /* wavproperties.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = wavproperties.cpp; sourceTree = "<group>"; };
+ 283753B20F4286E100364787 /* wavproperties.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = wavproperties.h; sourceTree = "<group>"; };
+ 283753B30F4286E100364787 /* tag.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = tag.cpp; sourceTree = "<group>"; };
+ 283753B40F4286E100364787 /* tag.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = tag.h; sourceTree = "<group>"; };
+ 283753B60F4286E100364787 /* taglib_export.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = taglib_export.h; sourceTree = "<group>"; };
+ 283753B70F4286E100364787 /* tagunion.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = tagunion.cpp; sourceTree = "<group>"; };
+ 283753B80F4286E100364787 /* tagunion.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = tagunion.h; sourceTree = "<group>"; };
+ 283753BD0F4286E100364787 /* taglib.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = taglib.h; sourceTree = "<group>"; };
+ 283753BE0F4286E100364787 /* tbytevector.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = tbytevector.cpp; sourceTree = "<group>"; };
+ 283753BF0F4286E100364787 /* tbytevector.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = tbytevector.h; sourceTree = "<group>"; };
+ 283753C00F4286E100364787 /* tbytevectorlist.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = tbytevectorlist.cpp; sourceTree = "<group>"; };
+ 283753C10F4286E100364787 /* tbytevectorlist.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = tbytevectorlist.h; sourceTree = "<group>"; };
+ 283753C20F4286E100364787 /* tdebug.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = tdebug.cpp; sourceTree = "<group>"; };
+ 283753C30F4286E100364787 /* tdebug.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = tdebug.h; sourceTree = "<group>"; };
+ 283753C40F4286E100364787 /* tfile.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = tfile.cpp; sourceTree = "<group>"; };
+ 283753C50F4286E100364787 /* tfile.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = tfile.h; sourceTree = "<group>"; };
+ 283753C60F4286E100364787 /* tlist.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = tlist.h; sourceTree = "<group>"; };
+ 283753C80F4286E100364787 /* tmap.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = tmap.h; sourceTree = "<group>"; };
+ 283753CA0F4286E100364787 /* tstring.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = tstring.cpp; sourceTree = "<group>"; };
+ 283753CB0F4286E100364787 /* tstring.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = tstring.h; sourceTree = "<group>"; };
+ 283753CC0F4286E100364787 /* tstringlist.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = tstringlist.cpp; sourceTree = "<group>"; };
+ 283753CD0F4286E100364787 /* tstringlist.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = tstringlist.h; sourceTree = "<group>"; };
+ 283753CE0F4286E100364787 /* unicode.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = unicode.cpp; sourceTree = "<group>"; };
+ 283753CF0F4286E100364787 /* unicode.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = unicode.h; sourceTree = "<group>"; };
+ 283753D40F4286E100364787 /* trueaudiofile.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = trueaudiofile.cpp; sourceTree = "<group>"; };
+ 283753D50F4286E100364787 /* trueaudiofile.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = trueaudiofile.h; sourceTree = "<group>"; };
+ 283753D60F4286E100364787 /* trueaudioproperties.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = trueaudioproperties.cpp; sourceTree = "<group>"; };
+ 283753D70F4286E100364787 /* trueaudioproperties.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = trueaudioproperties.h; sourceTree = "<group>"; };
+ 283753DC0F4286E100364787 /* wavpackfile.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = wavpackfile.cpp; sourceTree = "<group>"; };
+ 283753DD0F4286E100364787 /* wavpackfile.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = wavpackfile.h; sourceTree = "<group>"; };
+ 283753DE0F4286E100364787 /* wavpackproperties.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = wavpackproperties.cpp; sourceTree = "<group>"; };
+ 283753DF0F4286E100364787 /* wavpackproperties.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = wavpackproperties.h; sourceTree = "<group>"; };
+ 283753E40F42875100364787 /* libtaglib.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libtaglib.a; sourceTree = BUILT_PRODUCTS_DIR; };
+ 283754A50F428A8E00364787 /* config.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; name = config.h; path = taglib/config.h; sourceTree = "<group>"; };
283A11A40A2C0DE7004372C4 /* broadcast.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = broadcast.c; sourceTree = "<group>"; };
283A11A60A2C0E15004372C4 /* ShuttleGui.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = ShuttleGui.cpp; sourceTree = "<group>"; };
283A11A70A2C0E15004372C4 /* ShuttleGui.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = ShuttleGui.h; sourceTree = "<group>"; };
@@ -2388,6 +2545,220 @@
28456AC10A2C180E00C23C1E /* ThemePrefs.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = ThemePrefs.h; sourceTree = "<group>"; };
2849B4600A7444BE00ECF12D /* Dependencies.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = Dependencies.cpp; sourceTree = "<group>"; };
2849B4610A7444BE00ECF12D /* Dependencies.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = Dependencies.h; sourceTree = "<group>"; };
+ 284A7B8F0F31571B001D7A67 /* nyx.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = nyx.c; sourceTree = "<group>"; };
+ 284A7B900F31571B001D7A67 /* nyx.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = nyx.h; sourceTree = "<group>"; };
+ 284A7B910F31571B001D7A67 /* xlextstart.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = xlextstart.c; sourceTree = "<group>"; };
+ 284A80380F3158A1001D7A67 /* cext.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = cext.c; sourceTree = "<group>"; };
+ 284A803A0F3158A1001D7A67 /* cleanup.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = cleanup.c; sourceTree = "<group>"; };
+ 284A803C0F3158A1001D7A67 /* cmdline.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = cmdline.c; sourceTree = "<group>"; };
+ 284A803E0F3158A1001D7A67 /* cmtcmd.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = cmtcmd.c; sourceTree = "<group>"; };
+ 284A80440F3158A1001D7A67 /* mem.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = mem.c; sourceTree = "<group>"; };
+ 284A804A0F3158A1001D7A67 /* midifile.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = midifile.c; sourceTree = "<group>"; };
+ 284A804C0F3158A1001D7A67 /* midifns.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = midifns.c; sourceTree = "<group>"; };
+ 284A80500F3158A1001D7A67 /* moxc.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = moxc.c; sourceTree = "<group>"; };
+ 284A80540F3158A1001D7A67 /* record.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = record.c; sourceTree = "<group>"; };
+ 284A80560F3158A1001D7A67 /* seq.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = seq.c; sourceTree = "<group>"; };
+ 284A80590F3158A1001D7A67 /* seqmread.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = seqmread.c; sourceTree = "<group>"; };
+ 284A805B0F3158A1001D7A67 /* seqmwrite.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = seqmwrite.c; sourceTree = "<group>"; };
+ 284A805D0F3158A1001D7A67 /* seqread.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = seqread.c; sourceTree = "<group>"; };
+ 284A805F0F3158A1001D7A67 /* seqwrite.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = seqwrite.c; sourceTree = "<group>"; };
+ 284A80620F3158A1001D7A67 /* tempomap.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = tempomap.c; sourceTree = "<group>"; };
+ 284A80640F3158A1001D7A67 /* timebase.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = timebase.c; sourceTree = "<group>"; };
+ 284A80660F3158A1001D7A67 /* userio.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = userio.c; sourceTree = "<group>"; };
+ 284A806C0F3158A1001D7A67 /* add.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = add.c; sourceTree = "<group>"; };
+ 284A806E0F3158A1001D7A67 /* avg.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = avg.c; sourceTree = "<group>"; };
+ 284A80700F3158A1001D7A67 /* compose.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = compose.c; sourceTree = "<group>"; };
+ 284A80720F3158A1001D7A67 /* convolve.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = convolve.c; sourceTree = "<group>"; };
+ 284A80750F3158A1001D7A67 /* debug.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = debug.c; sourceTree = "<group>"; };
+ 284A80770F3158A1001D7A67 /* downsample.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = downsample.c; sourceTree = "<group>"; };
+ 284A807C0F3158A1001D7A67 /* falloc.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = falloc.c; sourceTree = "<group>"; };
+ 284A807E0F3158A1001D7A67 /* ffilterkit.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = ffilterkit.c; sourceTree = "<group>"; };
+ 284A80810F3158A1001D7A67 /* fft.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = fft.c; sourceTree = "<group>"; };
+ 284A80870F3158A1001D7A67 /* handlers.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = handlers.c; sourceTree = "<group>"; };
+ 284A80880F3158A1001D7A67 /* inverse.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = inverse.c; sourceTree = "<group>"; };
+ 284A808A0F3158A1001D7A67 /* local.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = local.c; sourceTree = "<group>"; };
+ 284A808D0F3158A1001D7A67 /* lpanal.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = lpanal.c; sourceTree = "<group>"; };
+ 284A808F0F3158A1001D7A67 /* multiread.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = multiread.c; sourceTree = "<group>"; };
+ 284A80910F3158A1001D7A67 /* multiseq.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = multiseq.c; sourceTree = "<group>"; };
+ 284A80990F3158A1001D7A67 /* probe.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = probe.c; sourceTree = "<group>"; };
+ 284A809B0F3158A1001D7A67 /* resamp.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = resamp.c; sourceTree = "<group>"; };
+ 284A809D0F3158A1001D7A67 /* resampv.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = resampv.c; sourceTree = "<group>"; };
+ 284A80A00F3158A1001D7A67 /* samples.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = samples.c; sourceTree = "<group>"; };
+ 284A80A20F3158A1001D7A67 /* seqext.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = seqext.c; sourceTree = "<group>"; };
+ 284A80A60F3158A1001D7A67 /* seqfnint.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = seqfnint.c; sourceTree = "<group>"; };
+ 284A80AA0F3158A1001D7A67 /* seqinterf.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = seqinterf.c; sourceTree = "<group>"; };
+ 284A80AC0F3158A1001D7A67 /* sliders.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = sliders.c; sourceTree = "<group>"; };
+ 284A80B20F3158A1001D7A67 /* sndfnint.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = sndfnint.c; sourceTree = "<group>"; };
+ 284A80B60F3158A1001D7A67 /* sndmax.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = sndmax.c; sourceTree = "<group>"; };
+ 284A80B80F3158A1001D7A67 /* sndread.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = sndread.c; sourceTree = "<group>"; };
+ 284A80BA0F3158A1001D7A67 /* sndseq.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = sndseq.c; sourceTree = "<group>"; };
+ 284A80BF0F3158A1001D7A67 /* sndwritepa.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = sndwritepa.c; sourceTree = "<group>"; };
+ 284A80C00F3158A1001D7A67 /* sound.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = sound.c; sourceTree = "<group>"; };
+ 284A80C20F3158A1001D7A67 /* stats.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = stats.c; sourceTree = "<group>"; };
+ 284A80C40F3158A1001D7A67 /* trigger.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = trigger.c; sourceTree = "<group>"; };
+ 284A80C60F3158A1001D7A67 /* yin.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = yin.c; sourceTree = "<group>"; };
+ 284A80F30F3158A1001D7A67 /* instr.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = instr.cpp; sourceTree = "<group>"; };
+ 284A80F60F3158A1001D7A67 /* ADSR.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = ADSR.cpp; sourceTree = "<group>"; };
+ 284A80F70F3158A1001D7A67 /* BandedWG.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = BandedWG.cpp; sourceTree = "<group>"; };
+ 284A80F80F3158A1001D7A67 /* BiQuad.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = BiQuad.cpp; sourceTree = "<group>"; };
+ 284A80F90F3158A1001D7A67 /* Bowed.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = Bowed.cpp; sourceTree = "<group>"; };
+ 284A80FA0F3158A1001D7A67 /* BowTable.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = BowTable.cpp; sourceTree = "<group>"; };
+ 284A80FB0F3158A1001D7A67 /* Chorus.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = Chorus.cpp; sourceTree = "<group>"; };
+ 284A80FC0F3158A1001D7A67 /* Clarinet.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = Clarinet.cpp; sourceTree = "<group>"; };
+ 284A80FD0F3158A1001D7A67 /* Delay.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = Delay.cpp; sourceTree = "<group>"; };
+ 284A80FE0F3158A1001D7A67 /* DelayA.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = DelayA.cpp; sourceTree = "<group>"; };
+ 284A80FF0F3158A1001D7A67 /* DelayL.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = DelayL.cpp; sourceTree = "<group>"; };
+ 284A81000F3158A1001D7A67 /* Effect.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = Effect.cpp; sourceTree = "<group>"; };
+ 284A81010F3158A1001D7A67 /* Envelope.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = Envelope.cpp; sourceTree = "<group>"; };
+ 284A81020F3158A1001D7A67 /* FileRead.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = FileRead.cpp; sourceTree = "<group>"; };
+ 284A81030F3158A1001D7A67 /* FileWvIn.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = FileWvIn.cpp; sourceTree = "<group>"; };
+ 284A81040F3158A1001D7A67 /* Filter.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = Filter.cpp; sourceTree = "<group>"; };
+ 284A81050F3158A1001D7A67 /* Flute.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = Flute.cpp; sourceTree = "<group>"; };
+ 284A81060F3158A1001D7A67 /* Function.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = Function.cpp; sourceTree = "<group>"; };
+ 284A81070F3158A1001D7A67 /* Generator.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = Generator.cpp; sourceTree = "<group>"; };
+ 284A81080F3158A1001D7A67 /* Instrmnt.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = Instrmnt.cpp; sourceTree = "<group>"; };
+ 284A81090F3158A1001D7A67 /* JCRev.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = JCRev.cpp; sourceTree = "<group>"; };
+ 284A810A0F3158A1001D7A67 /* JetTable.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = JetTable.cpp; sourceTree = "<group>"; };
+ 284A810B0F3158A1001D7A67 /* Mandolin.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = Mandolin.cpp; sourceTree = "<group>"; };
+ 284A810C0F3158A1001D7A67 /* Modal.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = Modal.cpp; sourceTree = "<group>"; };
+ 284A810D0F3158A1001D7A67 /* ModalBar.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = ModalBar.cpp; sourceTree = "<group>"; };
+ 284A810E0F3158A1001D7A67 /* Noise.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = Noise.cpp; sourceTree = "<group>"; };
+ 284A810F0F3158A1001D7A67 /* NRev.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = NRev.cpp; sourceTree = "<group>"; };
+ 284A81100F3158A1001D7A67 /* OnePole.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = OnePole.cpp; sourceTree = "<group>"; };
+ 284A81110F3158A1001D7A67 /* OneZero.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = OneZero.cpp; sourceTree = "<group>"; };
+ 284A81120F3158A1001D7A67 /* PitShift.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = PitShift.cpp; sourceTree = "<group>"; };
+ 284A81130F3158A1001D7A67 /* PluckTwo.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = PluckTwo.cpp; sourceTree = "<group>"; };
+ 284A81140F3158A1001D7A67 /* PoleZero.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = PoleZero.cpp; sourceTree = "<group>"; };
+ 284A81150F3158A1001D7A67 /* PRCRev.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = PRCRev.cpp; sourceTree = "<group>"; };
+ 284A81160F3158A1001D7A67 /* ReedTable.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = ReedTable.cpp; sourceTree = "<group>"; };
+ 284A81170F3158A1001D7A67 /* Saxofony.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = Saxofony.cpp; sourceTree = "<group>"; };
+ 284A81180F3158A1001D7A67 /* SineWave.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = SineWave.cpp; sourceTree = "<group>"; };
+ 284A81190F3158A1001D7A67 /* Sitar.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = Sitar.cpp; sourceTree = "<group>"; };
+ 284A811A0F3158A1001D7A67 /* Stk.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = Stk.cpp; sourceTree = "<group>"; };
+ 284A811B0F3158A1001D7A67 /* WaveLoop.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = WaveLoop.cpp; sourceTree = "<group>"; };
+ 284A811C0F3158A1001D7A67 /* WvIn.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = WvIn.cpp; sourceTree = "<group>"; };
+ 284A811D0F3158A1001D7A67 /* stkinit.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = stkinit.cpp; sourceTree = "<group>"; };
+ 284A811F0F3158A1001D7A67 /* stkint.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = stkint.cpp; sourceTree = "<group>"; };
+ 284A817E0F3158A2001D7A67 /* abs.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = abs.c; sourceTree = "<group>"; };
+ 284A81810F3158A2001D7A67 /* allpoles.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = allpoles.c; sourceTree = "<group>"; };
+ 284A81840F3158A2001D7A67 /* alpass.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = alpass.c; sourceTree = "<group>"; };
+ 284A81870F3158A2001D7A67 /* alpasscv.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = alpasscv.c; sourceTree = "<group>"; };
+ 284A818D0F3158A2001D7A67 /* alpassvv.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = alpassvv.c; sourceTree = "<group>"; };
+ 284A81900F3158A2001D7A67 /* amosc.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = amosc.c; sourceTree = "<group>"; };
+ 284A81930F3158A2001D7A67 /* areson.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = areson.c; sourceTree = "<group>"; };
+ 284A81960F3158A2001D7A67 /* aresoncv.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = aresoncv.c; sourceTree = "<group>"; };
+ 284A81990F3158A2001D7A67 /* aresonvc.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = aresonvc.c; sourceTree = "<group>"; };
+ 284A819C0F3158A2001D7A67 /* aresonvv.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = aresonvv.c; sourceTree = "<group>"; };
+ 284A819F0F3158A2001D7A67 /* atone.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = atone.c; sourceTree = "<group>"; };
+ 284A81A20F3158A2001D7A67 /* atonev.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = atonev.c; sourceTree = "<group>"; };
+ 284A81A50F3158A2001D7A67 /* biquadfilt.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = biquadfilt.c; sourceTree = "<group>"; };
+ 284A81A80F3158A2001D7A67 /* buzz.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = buzz.c; sourceTree = "<group>"; };
+ 284A81AB0F3158A2001D7A67 /* chase.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = chase.c; sourceTree = "<group>"; };
+ 284A81AE0F3158A2001D7A67 /* clip.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = clip.c; sourceTree = "<group>"; };
+ 284A81B10F3158A2001D7A67 /* congen.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = congen.c; sourceTree = "<group>"; };
+ 284A81B40F3158A2001D7A67 /* const.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = const.c; sourceTree = "<group>"; };
+ 284A81B80F3158A2001D7A67 /* coterm.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = coterm.c; sourceTree = "<group>"; };
+ 284A81BC0F3158A2001D7A67 /* delaycc.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = delaycc.c; sourceTree = "<group>"; };
+ 284A81BF0F3158A2001D7A67 /* delaycv.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = delaycv.c; sourceTree = "<group>"; };
+ 284A81C40F3158A2001D7A67 /* eqbandvvv.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = eqbandvvv.c; sourceTree = "<group>"; };
+ 284A81C70F3158A2001D7A67 /* exp.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = exp.c; sourceTree = "<group>"; };
+ 284A81CB0F3158A2001D7A67 /* fmfb.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = fmfb.c; sourceTree = "<group>"; };
+ 284A81CE0F3158A2001D7A67 /* fmfbv.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = fmfbv.c; sourceTree = "<group>"; };
+ 284A81D10F3158A2001D7A67 /* fmosc.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = fmosc.c; sourceTree = "<group>"; };
+ 284A81D40F3158A2001D7A67 /* follow.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = follow.c; sourceTree = "<group>"; };
+ 284A81D70F3158A2001D7A67 /* fromarraystream.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = fromarraystream.c; sourceTree = "<group>"; };
+ 284A81DA0F3158A2001D7A67 /* fromobject.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = fromobject.c; sourceTree = "<group>"; };
+ 284A81DD0F3158A2001D7A67 /* gate.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = gate.c; sourceTree = "<group>"; };
+ 284A81E10F3158A2001D7A67 /* ifft.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = ifft.c; sourceTree = "<group>"; };
+ 284A81E60F3158A2001D7A67 /* instrbanded.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = instrbanded.c; sourceTree = "<group>"; };
+ 284A81E90F3158A2001D7A67 /* instrbow.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = instrbow.c; sourceTree = "<group>"; };
+ 284A81EC0F3158A2001D7A67 /* instrbowedfreq.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = instrbowedfreq.c; sourceTree = "<group>"; };
+ 284A81EF0F3158A2001D7A67 /* instrclar.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = instrclar.c; sourceTree = "<group>"; };
+ 284A81F20F3158A2001D7A67 /* instrclarall.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = instrclarall.c; sourceTree = "<group>"; };
+ 284A81F50F3158A2001D7A67 /* instrclarfreq.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = instrclarfreq.c; sourceTree = "<group>"; };
+ 284A81F80F3158A2001D7A67 /* instrflute.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = instrflute.c; sourceTree = "<group>"; };
+ 284A81FB0F3158A2001D7A67 /* instrfluteall.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = instrfluteall.c; sourceTree = "<group>"; };
+ 284A81FE0F3158A2001D7A67 /* instrflutefreq.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = instrflutefreq.c; sourceTree = "<group>"; };
+ 284A82010F3158A2001D7A67 /* instrmandolin.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = instrmandolin.c; sourceTree = "<group>"; };
+ 284A82040F3158A2001D7A67 /* instrmodalbar.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = instrmodalbar.c; sourceTree = "<group>"; };
+ 284A82070F3158A2001D7A67 /* instrsax.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = instrsax.c; sourceTree = "<group>"; };
+ 284A820A0F3158A2001D7A67 /* instrsaxall.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = instrsaxall.c; sourceTree = "<group>"; };
+ 284A820D0F3158A2001D7A67 /* instrsaxfreq.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = instrsaxfreq.c; sourceTree = "<group>"; };
+ 284A82100F3158A2001D7A67 /* instrsitar.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = instrsitar.c; sourceTree = "<group>"; };
+ 284A82130F3158A2001D7A67 /* integrate.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = integrate.c; sourceTree = "<group>"; };
+ 284A82160F3158A2001D7A67 /* log.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = log.c; sourceTree = "<group>"; };
+ 284A82190F3158A2001D7A67 /* lpreson.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = lpreson.c; sourceTree = "<group>"; };
+ 284A821C0F3158A2001D7A67 /* maxv.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = maxv.c; sourceTree = "<group>"; };
+ 284A821F0F3158A2001D7A67 /* offset.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = offset.c; sourceTree = "<group>"; };
+ 284A82220F3158A2001D7A67 /* oneshot.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = oneshot.c; sourceTree = "<group>"; };
+ 284A82250F3158A2001D7A67 /* osc.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = osc.c; sourceTree = "<group>"; };
+ 284A82280F3158A2001D7A67 /* partial.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = partial.c; sourceTree = "<group>"; };
+ 284A822B0F3158A2001D7A67 /* pluck.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = pluck.c; sourceTree = "<group>"; };
+ 284A822E0F3158A2001D7A67 /* prod.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = prod.c; sourceTree = "<group>"; };
+ 284A82310F3158A2001D7A67 /* pwl.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = pwl.c; sourceTree = "<group>"; };
+ 284A82340F3158A2001D7A67 /* quantize.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = quantize.c; sourceTree = "<group>"; };
+ 284A82370F3158A2001D7A67 /* recip.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = recip.c; sourceTree = "<group>"; };
+ 284A823A0F3158A2001D7A67 /* reson.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = reson.c; sourceTree = "<group>"; };
+ 284A823D0F3158A2001D7A67 /* resoncv.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = resoncv.c; sourceTree = "<group>"; };
+ 284A82400F3158A2001D7A67 /* resonvc.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = resonvc.c; sourceTree = "<group>"; };
+ 284A82430F3158A2001D7A67 /* resonvv.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = resonvv.c; sourceTree = "<group>"; };
+ 284A82460F3158A2001D7A67 /* sampler.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = sampler.c; sourceTree = "<group>"; };
+ 284A82490F3158A2001D7A67 /* scale.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = scale.c; sourceTree = "<group>"; };
+ 284A824C0F3158A2001D7A67 /* shape.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = shape.c; sourceTree = "<group>"; };
+ 284A824F0F3158A2001D7A67 /* sine.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = sine.c; sourceTree = "<group>"; };
+ 284A82520F3158A2001D7A67 /* siosc.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = siosc.c; sourceTree = "<group>"; };
+ 284A82550F3158A2001D7A67 /* slope.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = slope.c; sourceTree = "<group>"; };
+ 284A82580F3158A2001D7A67 /* sqrt.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = sqrt.c; sourceTree = "<group>"; };
+ 284A825B0F3158A2001D7A67 /* stkchorus.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = stkchorus.c; sourceTree = "<group>"; };
+ 284A825E0F3158A2001D7A67 /* stkpitshift.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = stkpitshift.c; sourceTree = "<group>"; };
+ 284A82610F3158A2001D7A67 /* stkrev.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = stkrev.c; sourceTree = "<group>"; };
+ 284A82640F3158A2001D7A67 /* tapf.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = tapf.c; sourceTree = "<group>"; };
+ 284A82670F3158A2001D7A67 /* tapv.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = tapv.c; sourceTree = "<group>"; };
+ 284A826A0F3158A2001D7A67 /* tone.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = tone.c; sourceTree = "<group>"; };
+ 284A826D0F3158A2001D7A67 /* tonev.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = tonev.c; sourceTree = "<group>"; };
+ 284A82720F3158A2001D7A67 /* upsample.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = upsample.c; sourceTree = "<group>"; };
+ 284A82750F3158A2001D7A67 /* white.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = white.c; sourceTree = "<group>"; };
+ 284A827B0F3158A2001D7A67 /* extern.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = extern.c; sourceTree = "<group>"; };
+ 284A827F0F3158A2001D7A67 /* path.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = path.c; sourceTree = "<group>"; };
+ 284A82800F3158A2001D7A67 /* xlbfun.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = xlbfun.c; sourceTree = "<group>"; };
+ 284A82810F3158A2001D7A67 /* xlcont.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = xlcont.c; sourceTree = "<group>"; };
+ 284A82820F3158A2001D7A67 /* xldbug.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = xldbug.c; sourceTree = "<group>"; };
+ 284A82830F3158A2001D7A67 /* xldmem.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = xldmem.c; sourceTree = "<group>"; };
+ 284A82850F3158A2001D7A67 /* xleval.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = xleval.c; sourceTree = "<group>"; };
+ 284A82860F3158A2001D7A67 /* xlfio.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = xlfio.c; sourceTree = "<group>"; };
+ 284A82870F3158A2001D7A67 /* xlftab.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = xlftab.c; sourceTree = "<group>"; };
+ 284A82880F3158A2001D7A67 /* xlglob.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = xlglob.c; sourceTree = "<group>"; };
+ 284A82890F3158A2001D7A67 /* xlimage.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = xlimage.c; sourceTree = "<group>"; };
+ 284A828A0F3158A2001D7A67 /* xlinit.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = xlinit.c; sourceTree = "<group>"; };
+ 284A828B0F3158A2001D7A67 /* xlio.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = xlio.c; sourceTree = "<group>"; };
+ 284A828C0F3158A2001D7A67 /* xlisp.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = xlisp.c; sourceTree = "<group>"; };
+ 284A828E0F3158A2001D7A67 /* xljump.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = xljump.c; sourceTree = "<group>"; };
+ 284A828F0F3158A2001D7A67 /* xllist.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = xllist.c; sourceTree = "<group>"; };
+ 284A82900F3158A2001D7A67 /* xlmath.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = xlmath.c; sourceTree = "<group>"; };
+ 284A82910F3158A2001D7A67 /* xlobj.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = xlobj.c; sourceTree = "<group>"; };
+ 284A82920F3158A2001D7A67 /* xlpp.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = xlpp.c; sourceTree = "<group>"; };
+ 284A82930F3158A2001D7A67 /* xlprin.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = xlprin.c; sourceTree = "<group>"; };
+ 284A82940F3158A2001D7A67 /* xlread.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = xlread.c; sourceTree = "<group>"; };
+ 284A82950F3158A2001D7A67 /* xlstr.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = xlstr.c; sourceTree = "<group>"; };
+ 284A82960F3158A2001D7A67 /* xlsubr.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = xlsubr.c; sourceTree = "<group>"; };
+ 284A82970F3158A2001D7A67 /* xlsym.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = xlsym.c; sourceTree = "<group>"; };
+ 284A82980F3158A2001D7A67 /* xlsys.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = xlsys.c; sourceTree = "<group>"; };
+ 284B278E0FC66863005EAC96 /* DevicePrefs.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = DevicePrefs.cpp; sourceTree = "<group>"; };
+ 284B278F0FC66863005EAC96 /* DevicePrefs.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = DevicePrefs.h; sourceTree = "<group>"; };
+ 284B27900FC66863005EAC96 /* ImportExportPrefs.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = ImportExportPrefs.cpp; sourceTree = "<group>"; };
+ 284B27910FC66863005EAC96 /* ImportExportPrefs.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = ImportExportPrefs.h; sourceTree = "<group>"; };
+ 284B27920FC66863005EAC96 /* LibraryPrefs.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = LibraryPrefs.cpp; sourceTree = "<group>"; };
+ 284B27930FC66863005EAC96 /* LibraryPrefs.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = LibraryPrefs.h; sourceTree = "<group>"; };
+ 284B27940FC66863005EAC96 /* PlaybackPrefs.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = PlaybackPrefs.cpp; sourceTree = "<group>"; };
+ 284B27950FC66863005EAC96 /* PlaybackPrefs.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = PlaybackPrefs.h; sourceTree = "<group>"; };
+ 284B27960FC66863005EAC96 /* ProjectsPrefs.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = ProjectsPrefs.cpp; sourceTree = "<group>"; };
+ 284B27970FC66863005EAC96 /* ProjectsPrefs.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = ProjectsPrefs.h; sourceTree = "<group>"; };
+ 284B27980FC66863005EAC96 /* RecordingPrefs.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = RecordingPrefs.cpp; sourceTree = "<group>"; };
+ 284B27990FC66863005EAC96 /* RecordingPrefs.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = RecordingPrefs.h; sourceTree = "<group>"; };
+ 284B27E00FC66CCD005EAC96 /* TracksPrefs.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = TracksPrefs.cpp; sourceTree = "<group>"; };
+ 284B27E10FC66CCD005EAC96 /* TracksPrefs.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = TracksPrefs.h; sourceTree = "<group>"; };
+ 284B27E20FC66CCD005EAC96 /* WarningsPrefs.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = WarningsPrefs.cpp; sourceTree = "<group>"; };
+ 284B27E30FC66CCD005EAC96 /* WarningsPrefs.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = WarningsPrefs.h; sourceTree = "<group>"; };
28501E970CEECE910029ABAA /* LoadVamp.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; name = LoadVamp.cpp; path = vamp/LoadVamp.cpp; sourceTree = "<group>"; };
28501E980CEECE920029ABAA /* LoadVamp.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; name = LoadVamp.h; path = vamp/LoadVamp.h; sourceTree = "<group>"; };
28501E990CEECE920029ABAA /* VampEffect.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; name = VampEffect.cpp; path = vamp/VampEffect.cpp; sourceTree = "<group>"; };
@@ -2652,6 +3023,12 @@
287BD9D00E25E02C00CB4467 /* value.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; name = value.c; path = slv2/src/value.c; sourceTree = "<group>"; };
287BD9D10E25E02C00CB4467 /* values.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; name = values.c; path = slv2/src/values.c; sourceTree = "<group>"; };
287BD9D20E25E02C00CB4467 /* world.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; name = world.c; path = slv2/src/world.c; sourceTree = "<group>"; };
+ 287DBE830F3F6B2700C5BBED /* audio_detect.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = audio_detect.c; sourceTree = "<group>"; };
+ 287DBE840F3F6B2700C5BBED /* chunk.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = chunk.c; sourceTree = "<group>"; };
+ 287DBE850F3F6B2700C5BBED /* ima_oki_adpcm.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = ima_oki_adpcm.c; sourceTree = "<group>"; };
+ 287DBE860F3F6B2700C5BBED /* ima_oki_adpcm.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = ima_oki_adpcm.h; sourceTree = "<group>"; };
+ 287DBE870F3F6B2700C5BBED /* mpc2k.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = mpc2k.c; sourceTree = "<group>"; };
+ 287DBE880F3F6B2700C5BBED /* rf64.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = rf64.c; sourceTree = "<group>"; };
287F9F3B0A69748F00F025FA /* TimeDialog.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TimeDialog.h; sourceTree = "<group>"; };
287F9F3C0A69748F00F025FA /* TimeDialog.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TimeDialog.cpp; sourceTree = "<group>"; };
2880527E0DEA694100671EA4 /* mod-script-pipe.so */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; path = "mod-script-pipe.so"; sourceTree = BUILT_PRODUCTS_DIR; };
@@ -2662,6 +3039,9 @@
288052BC0DEA72F300671EA4 /* NonGuiThread.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; name = NonGuiThread.cpp; path = "lib-widget-extra/NonGuiThread.cpp"; sourceTree = "<group>"; };
288217790A35D8730029AF41 /* ShuttlePrefs.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = ShuttlePrefs.cpp; sourceTree = "<group>"; };
2882177A0A35D8730029AF41 /* ShuttlePrefs.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = ShuttlePrefs.h; sourceTree = "<group>"; };
+ 2885BFF10FC108F800128165 /* aeffectx.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; name = aeffectx.h; path = VST/aeffectx.h; sourceTree = "<group>"; };
+ 2885BFF20FC108F800128165 /* LoadVST.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; name = LoadVST.cpp; path = VST/LoadVST.cpp; sourceTree = "<group>"; };
+ 2885BFF30FC108F800128165 /* LoadVST.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; name = LoadVST.h; path = VST/LoadVST.h; sourceTree = "<group>"; };
2891B2850C531D2C0044FBE3 /* FindClipping.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = FindClipping.cpp; sourceTree = "<group>"; };
2891B2860C531D2C0044FBE3 /* FindClipping.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = FindClipping.h; sourceTree = "<group>"; };
2897F6DC0AB3DB5A003C20C5 /* ControlToolBar.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = ControlToolBar.cpp; sourceTree = "<group>"; };
@@ -2686,8 +3066,16 @@
2897F6EF0AB3DB5A003C20C5 /* TranscriptionToolBar.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = TranscriptionToolBar.h; sourceTree = "<group>"; };
2897F6FC0AB3DCD0003C20C5 /* Grabber.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = Grabber.cpp; sourceTree = "<group>"; };
2897F6FD0AB3DCD0003C20C5 /* Grabber.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = Grabber.h; sourceTree = "<group>"; };
+ 289E75081006D0BD00CEF79B /* MixerBoard.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = MixerBoard.cpp; sourceTree = "<group>"; };
+ 289E75091006D0BD00CEF79B /* MixerBoard.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = MixerBoard.h; sourceTree = "<group>"; };
289F9C7C0AC671BB00797DC1 /* DeviceToolBar.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = DeviceToolBar.cpp; sourceTree = "<group>"; };
289F9C7D0AC671BB00797DC1 /* DeviceToolBar.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = DeviceToolBar.h; sourceTree = "<group>"; };
+ 28A4E2A40F60319300E9E7F2 /* fftext.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; name = fftext.c; path = ffts/src/fftext.c; sourceTree = "<group>"; };
+ 28A4E2A50F60319300E9E7F2 /* fftext.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; name = fftext.h; path = ffts/src/fftext.h; sourceTree = "<group>"; };
+ 28A4E2A60F60319300E9E7F2 /* fftlib.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; name = fftlib.c; path = ffts/src/fftlib.c; sourceTree = "<group>"; };
+ 28A4E2A70F60319300E9E7F2 /* fftlib.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; name = fftlib.h; path = ffts/src/fftlib.h; sourceTree = "<group>"; };
+ 28A4E2AA0F60319300E9E7F2 /* matlib.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; name = matlib.c; path = ffts/src/matlib.c; sourceTree = "<group>"; };
+ 28A4E2AB0F60319300E9E7F2 /* matlib.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; name = matlib.h; path = ffts/src/matlib.h; sourceTree = "<group>"; };
28A520510C12BE0300BF6811 /* pa_debugprint.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = pa_debugprint.c; sourceTree = "<group>"; };
28A520520C12BE0300BF6811 /* pa_debugprint.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = pa_debugprint.h; sourceTree = "<group>"; };
28A520530C12BE0300BF6811 /* pa_ringbuffer.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = pa_ringbuffer.c; sourceTree = "<group>"; };
@@ -2708,30 +3096,23 @@
28AA281F0F267A2D008AED9E /* tremolo.ny */ = {isa = PBXFileReference; explicitFileType = file; fileEncoding = 5; name = tremolo.ny; path = "../plug-ins/tremolo.ny"; sourceTree = SOURCE_ROOT; };
28AA28200F267A2D008AED9E /* vocalremover.ny */ = {isa = PBXFileReference; explicitFileType = file; fileEncoding = 5; name = vocalremover.ny; path = "../plug-ins/vocalremover.ny"; sourceTree = SOURCE_ROOT; };
28AA28210F267A2D008AED9E /* vocoder.ny */ = {isa = PBXFileReference; explicitFileType = file; fileEncoding = 5; name = vocoder.ny; path = "../plug-ins/vocoder.ny"; sourceTree = SOURCE_ROOT; };
- 28AA28330F267A6E008AED9E /* bug.lsp */ = {isa = PBXFileReference; explicitFileType = file; fileEncoding = 5; name = bug.lsp; path = ../nyquist/bug.lsp; sourceTree = SOURCE_ROOT; };
- 28AA28340F267A6E008AED9E /* dspprims.lsp */ = {isa = PBXFileReference; explicitFileType = file; fileEncoding = 5; name = dspprims.lsp; path = ../nyquist/dspprims.lsp; sourceTree = SOURCE_ROOT; };
- 28AA28350F267A6E008AED9E /* evalenv.lsp */ = {isa = PBXFileReference; explicitFileType = file; fileEncoding = 5; name = evalenv.lsp; path = ../nyquist/evalenv.lsp; sourceTree = SOURCE_ROOT; };
- 28AA28360F267A6E008AED9E /* follow.lsp */ = {isa = PBXFileReference; explicitFileType = file; fileEncoding = 5; name = follow.lsp; path = ../nyquist/follow.lsp; sourceTree = SOURCE_ROOT; };
- 28AA28370F267A6E008AED9E /* init.lsp */ = {isa = PBXFileReference; explicitFileType = file; fileEncoding = 5; name = init.lsp; path = ../nyquist/init.lsp; sourceTree = SOURCE_ROOT; };
- 28AA28380F267A6E008AED9E /* misc.lsp */ = {isa = PBXFileReference; explicitFileType = file; fileEncoding = 5; name = misc.lsp; path = ../nyquist/misc.lsp; sourceTree = SOURCE_ROOT; };
- 28AA28390F267A6E008AED9E /* nyinit.lsp */ = {isa = PBXFileReference; explicitFileType = file; fileEncoding = 5; name = nyinit.lsp; path = ../nyquist/nyinit.lsp; sourceTree = SOURCE_ROOT; };
- 28AA283A0F267A6E008AED9E /* nyqmisc.lsp */ = {isa = PBXFileReference; explicitFileType = file; fileEncoding = 5; name = nyqmisc.lsp; path = ../nyquist/nyqmisc.lsp; sourceTree = SOURCE_ROOT; };
- 28AA283B0F267A6E008AED9E /* nyquist.lsp */ = {isa = PBXFileReference; explicitFileType = file; fileEncoding = 5; name = nyquist.lsp; path = ../nyquist/nyquist.lsp; sourceTree = SOURCE_ROOT; };
- 28AA283C0F267A6E008AED9E /* printrec.lsp */ = {isa = PBXFileReference; explicitFileType = file; fileEncoding = 5; name = printrec.lsp; path = ../nyquist/printrec.lsp; sourceTree = SOURCE_ROOT; };
- 28AA283D0F267A6E008AED9E /* profile.lsp */ = {isa = PBXFileReference; explicitFileType = file; fileEncoding = 5; name = profile.lsp; path = ../nyquist/profile.lsp; sourceTree = SOURCE_ROOT; };
- 28AA283E0F267A6E008AED9E /* seq.lsp */ = {isa = PBXFileReference; explicitFileType = file; fileEncoding = 5; name = seq.lsp; path = ../nyquist/seq.lsp; sourceTree = SOURCE_ROOT; };
- 28AA283F0F267A6E008AED9E /* seqfnint.lsp */ = {isa = PBXFileReference; explicitFileType = file; fileEncoding = 5; name = seqfnint.lsp; path = ../nyquist/seqfnint.lsp; sourceTree = SOURCE_ROOT; };
- 28AA28400F267A6E008AED9E /* seqmidi.lsp */ = {isa = PBXFileReference; explicitFileType = file; fileEncoding = 5; name = seqmidi.lsp; path = ../nyquist/seqmidi.lsp; sourceTree = SOURCE_ROOT; };
- 28AA28410F267A6E008AED9E /* sndfnint.lsp */ = {isa = PBXFileReference; explicitFileType = file; fileEncoding = 5; name = sndfnint.lsp; path = ../nyquist/sndfnint.lsp; sourceTree = SOURCE_ROOT; };
- 28AA28420F267A6E008AED9E /* system.lsp */ = {isa = PBXFileReference; explicitFileType = file; fileEncoding = 5; name = system.lsp; path = ../nyquist/system.lsp; sourceTree = SOURCE_ROOT; };
- 28AA28430F267A6E008AED9E /* test.lsp */ = {isa = PBXFileReference; explicitFileType = file; fileEncoding = 5; name = test.lsp; path = ../nyquist/test.lsp; sourceTree = SOURCE_ROOT; };
- 28AA28440F267A6E008AED9E /* xlinit.lsp */ = {isa = PBXFileReference; explicitFileType = file; fileEncoding = 5; name = xlinit.lsp; path = ../nyquist/xlinit.lsp; sourceTree = SOURCE_ROOT; };
28B6ED8D0DE3D1B50046F0F3 /* LoadModules.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = LoadModules.cpp; sourceTree = "<group>"; };
28B6ED8E0DE3D1B50046F0F3 /* LoadModules.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = LoadModules.h; sourceTree = "<group>"; };
- 28D025570AFDA53B0035F843 /* alpasscv.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = alpasscv.c; sourceTree = "<group>"; };
- 28D025580AFDA53B0035F843 /* alpasscv.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = alpasscv.h; sourceTree = "<group>"; };
- 28D025590AFDA53B0035F843 /* alpassvc.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = alpassvc.c; sourceTree = "<group>"; };
- 28D0255A0AFDA53B0035F843 /* alpassvc.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = alpassvc.h; sourceTree = "<group>"; };
+ 28B97B850FBF771A0076CF28 /* VSTEffect.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; name = VSTEffect.cpp; path = VST/VSTEffect.cpp; sourceTree = "<group>"; };
+ 28B97B860FBF771A0076CF28 /* VSTEffect.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; name = VSTEffect.h; path = VST/VSTEffect.h; sourceTree = "<group>"; };
+ 28CCDCFF0F939FD70081F2FC /* FileHistory.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = FileHistory.cpp; sourceTree = "<group>"; };
+ 28CCDD040F93A0B20081F2FC /* FileHistory.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = FileHistory.h; sourceTree = "<group>"; };
+ 28D53FFA0FD1912A00FA7C75 /* AppCommandEvent.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = AppCommandEvent.cpp; sourceTree = "<group>"; };
+ 28D53FFB0FD1912A00FA7C75 /* AppCommandEvent.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = AppCommandEvent.h; sourceTree = "<group>"; };
+ 28D53FFC0FD1912A00FA7C75 /* BatchEvalCommand.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = BatchEvalCommand.h; sourceTree = "<group>"; };
+ 28D53FFD0FD1912A00FA7C75 /* Command.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = Command.h; sourceTree = "<group>"; };
+ 28D53FFE0FD1912A00FA7C75 /* CommandBuilder.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = CommandBuilder.cpp; sourceTree = "<group>"; };
+ 28D53FFF0FD1912A00FA7C75 /* CommandBuilder.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = CommandBuilder.h; sourceTree = "<group>"; };
+ 28D540000FD1912A00FA7C75 /* CommandHandler.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = CommandHandler.cpp; sourceTree = "<group>"; };
+ 28D540010FD1912A00FA7C75 /* CommandHandler.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = CommandHandler.h; sourceTree = "<group>"; };
+ 28D540020FD1912A00FA7C75 /* DebugPrintCommand.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = DebugPrintCommand.h; sourceTree = "<group>"; };
+ 28D540030FD1912A00FA7C75 /* ScriptCommandRelay.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = ScriptCommandRelay.cpp; sourceTree = "<group>"; };
+ 28D540040FD1912A00FA7C75 /* ScriptCommandRelay.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = ScriptCommandRelay.h; sourceTree = "<group>"; };
28D587C70E264CF3009C7DEA /* LoadLV2.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; name = LoadLV2.cpp; path = lv2/LoadLV2.cpp; sourceTree = "<group>"; };
28D587C80E264CF3009C7DEA /* LoadLV2.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; name = LoadLV2.h; path = lv2/LoadLV2.h; sourceTree = "<group>"; };
28D587C90E264CF4009C7DEA /* LV2Effect.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; name = LV2Effect.cpp; path = lv2/LV2Effect.cpp; sourceTree = "<group>"; };
@@ -2744,6 +3125,10 @@
28D65C750B97E573000E001A /* DtmfGen.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = DtmfGen.h; sourceTree = "<group>"; };
28DA07370E4F5CEC003933C5 /* ExportFFmpegDialogs.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = ExportFFmpegDialogs.h; sourceTree = "<group>"; };
28DA07380E4F5CEC003933C5 /* ExportFFmpegDialogs.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = ExportFFmpegDialogs.cpp; sourceTree = "<group>"; };
+ 28DABFBC0FF19DB100AC7848 /* RealFFTf.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = RealFFTf.cpp; sourceTree = "<group>"; };
+ 28DABFBD0FF19DB100AC7848 /* RealFFTf.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = RealFFTf.h; sourceTree = "<group>"; };
+ 28DB34770FDC2C5D0011F589 /* ResponseQueue.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = ResponseQueue.h; sourceTree = "<group>"; };
+ 28DB34780FDC2C5D0011F589 /* ResponseQueue.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = ResponseQueue.cpp; sourceTree = "<group>"; };
28E237080E515D1D00281398 /* libscorealign.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libscorealign.a; sourceTree = BUILT_PRODUCTS_DIR; };
28E3E6E60A7C14CA00AB1361 /* ExportFLAC.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ExportFLAC.h; sourceTree = "<group>"; };
28E3E6E70A7C14CA00AB1361 /* ExportFLAC.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ExportFLAC.cpp; sourceTree = "<group>"; };
@@ -2786,10 +3171,180 @@
28EA56620D9753B000C8D1B6 /* window.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = window.c; sourceTree = "<group>"; };
28EA567C0D976E9500C8D1B6 /* pa_unix_hostapis.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = pa_unix_hostapis.c; sourceTree = "<group>"; };
28EA567E0D976EE700C8D1B6 /* pa_memorybarrier.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = pa_memorybarrier.h; sourceTree = "<group>"; };
- 28EB47D30AFD542100502984 /* abs.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = abs.c; sourceTree = "<group>"; };
- 28EB47D50AFD547600502984 /* sqrt.c */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.c; path = sqrt.c; sourceTree = "<group>"; };
- 28EB47D70AFD54B800502984 /* abs.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = abs.h; sourceTree = "<group>"; };
- 28EB47D80AFD54B800502984 /* sqrt.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = sqrt.h; sourceTree = "<group>"; };
+ 28EB749C0FDC2DF50046D78E /* userio.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = userio.h; sourceTree = "<group>"; };
+ 28EB749D0FDC2DF50046D78E /* timebase.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = timebase.h; sourceTree = "<group>"; };
+ 28EB749E0FDC2DF50046D78E /* tempomap.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = tempomap.h; sourceTree = "<group>"; };
+ 28EB749F0FDC2DF50046D78E /* seqwrite.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = seqwrite.h; sourceTree = "<group>"; };
+ 28EB74A00FDC2DF50046D78E /* seqread.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = seqread.h; sourceTree = "<group>"; };
+ 28EB74A10FDC2DF50046D78E /* seqmwrite.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = seqmwrite.h; sourceTree = "<group>"; };
+ 28EB74A20FDC2DF50046D78E /* seqmread.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = seqmread.h; sourceTree = "<group>"; };
+ 28EB74A30FDC2DF50046D78E /* seq.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = seq.h; sourceTree = "<group>"; };
+ 28EB74A40FDC2DF50046D78E /* record.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = record.h; sourceTree = "<group>"; };
+ 28EB74A50FDC2DF50046D78E /* moxc.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = moxc.h; sourceTree = "<group>"; };
+ 28EB74A60FDC2DF50046D78E /* midifns.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = midifns.h; sourceTree = "<group>"; };
+ 28EB74A70FDC2DF50046D78E /* midifile.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = midifile.h; sourceTree = "<group>"; };
+ 28EB74A80FDC2DF50046D78E /* mem.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = mem.h; sourceTree = "<group>"; };
+ 28EB74A90FDC2DF50046D78E /* cmtcmd.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = cmtcmd.h; sourceTree = "<group>"; };
+ 28EB74AA0FDC2DF50046D78E /* cmdline.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = cmdline.h; sourceTree = "<group>"; };
+ 28EB74AB0FDC2DF50046D78E /* cleanup.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = cleanup.h; sourceTree = "<group>"; };
+ 28EB74AC0FDC2DF50046D78E /* cext.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = cext.h; sourceTree = "<group>"; };
+ 28EB74BE0FDC2EDE0046D78E /* add.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = add.h; sourceTree = "<group>"; };
+ 28EB74BF0FDC2EDE0046D78E /* avg.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = avg.h; sourceTree = "<group>"; };
+ 28EB74C00FDC2EDE0046D78E /* compose.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = compose.h; sourceTree = "<group>"; };
+ 28EB74C10FDC2EDE0046D78E /* convolve.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = convolve.h; sourceTree = "<group>"; };
+ 28EB74C20FDC2EDE0046D78E /* cque.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = cque.h; sourceTree = "<group>"; };
+ 28EB74C30FDC2EDE0046D78E /* debug.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = debug.h; sourceTree = "<group>"; };
+ 28EB74C40FDC2EDE0046D78E /* downsample.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = downsample.h; sourceTree = "<group>"; };
+ 28EB74C50FDC2EDE0046D78E /* falloc.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = falloc.h; sourceTree = "<group>"; };
+ 28EB74C60FDC2EDE0046D78E /* ffilterkit.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = ffilterkit.h; sourceTree = "<group>"; };
+ 28EB74C70FDC2EDE0046D78E /* fft.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = fft.h; sourceTree = "<group>"; };
+ 28EB74C80FDC2EDE0046D78E /* inverse.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = inverse.h; sourceTree = "<group>"; };
+ 28EB74C90FDC2EDE0046D78E /* localdefs.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = localdefs.h; sourceTree = "<group>"; };
+ 28EB74CA0FDC2EDE0046D78E /* localptrs.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = localptrs.h; sourceTree = "<group>"; };
+ 28EB74CB0FDC2EDE0046D78E /* lpanal.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = lpanal.h; sourceTree = "<group>"; };
+ 28EB74CC0FDC2EDE0046D78E /* multiread.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = multiread.h; sourceTree = "<group>"; };
+ 28EB74CD0FDC2EDE0046D78E /* multiseq.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = multiseq.h; sourceTree = "<group>"; };
+ 28EB74CE0FDC2EDE0046D78E /* probe.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = probe.h; sourceTree = "<group>"; };
+ 28EB74CF0FDC2EDE0046D78E /* resamp.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = resamp.h; sourceTree = "<group>"; };
+ 28EB74D00FDC2EDE0046D78E /* resampv.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = resampv.h; sourceTree = "<group>"; };
+ 28EB74D10FDC2EDE0046D78E /* samples.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = samples.h; sourceTree = "<group>"; };
+ 28EB74D20FDC2EDE0046D78E /* seqext.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = seqext.h; sourceTree = "<group>"; };
+ 28EB74D30FDC2EDE0046D78E /* seqfnintdefs.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = seqfnintdefs.h; sourceTree = "<group>"; };
+ 28EB74D40FDC2EDE0046D78E /* seqfnintptrs.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = seqfnintptrs.h; sourceTree = "<group>"; };
+ 28EB74D50FDC2EDE0046D78E /* seqinterf.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = seqinterf.h; sourceTree = "<group>"; };
+ 28EB74D60FDC2EDE0046D78E /* sliders.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = sliders.h; sourceTree = "<group>"; };
+ 28EB74D70FDC2EDE0046D78E /* sndfnintdefs.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = sndfnintdefs.h; sourceTree = "<group>"; };
+ 28EB74D80FDC2EDE0046D78E /* sndfnintptrs.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = sndfnintptrs.h; sourceTree = "<group>"; };
+ 28EB74D90FDC2EDE0046D78E /* sndmax.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = sndmax.h; sourceTree = "<group>"; };
+ 28EB74DA0FDC2EDE0046D78E /* sndread.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = sndread.h; sourceTree = "<group>"; };
+ 28EB74DB0FDC2EDE0046D78E /* sndseq.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = sndseq.h; sourceTree = "<group>"; };
+ 28EB74DC0FDC2EDE0046D78E /* sound.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = sound.h; sourceTree = "<group>"; };
+ 28EB74DD0FDC2EDE0046D78E /* trigger.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = trigger.h; sourceTree = "<group>"; };
+ 28EB74DE0FDC2EDE0046D78E /* yin.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = yin.h; sourceTree = "<group>"; };
+ 28EB75040FDC2FB10046D78E /* ADSR.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = ADSR.h; sourceTree = "<group>"; };
+ 28EB75050FDC2FB10046D78E /* BandedWG.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = BandedWG.h; sourceTree = "<group>"; };
+ 28EB75060FDC2FB10046D78E /* BiQuad.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = BiQuad.h; sourceTree = "<group>"; };
+ 28EB75070FDC2FB10046D78E /* Bowed.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = Bowed.h; sourceTree = "<group>"; };
+ 28EB75080FDC2FB10046D78E /* BowTable.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = BowTable.h; sourceTree = "<group>"; };
+ 28EB75090FDC2FB10046D78E /* Chorus.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = Chorus.h; sourceTree = "<group>"; };
+ 28EB750A0FDC2FB10046D78E /* Clarinet.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = Clarinet.h; sourceTree = "<group>"; };
+ 28EB750B0FDC2FB10046D78E /* Delay.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = Delay.h; sourceTree = "<group>"; };
+ 28EB750C0FDC2FB10046D78E /* DelayA.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = DelayA.h; sourceTree = "<group>"; };
+ 28EB750D0FDC2FB10046D78E /* DelayL.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = DelayL.h; sourceTree = "<group>"; };
+ 28EB750E0FDC2FB10046D78E /* Effect.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = Effect.h; sourceTree = "<group>"; };
+ 28EB750F0FDC2FB10046D78E /* Envelope.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = Envelope.h; sourceTree = "<group>"; };
+ 28EB75100FDC2FB10046D78E /* FileRead.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = FileRead.h; sourceTree = "<group>"; };
+ 28EB75110FDC2FB10046D78E /* FileWvIn.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = FileWvIn.h; sourceTree = "<group>"; };
+ 28EB75120FDC2FB10046D78E /* Filter.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = Filter.h; sourceTree = "<group>"; };
+ 28EB75130FDC2FB10046D78E /* Flute.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = Flute.h; sourceTree = "<group>"; };
+ 28EB75140FDC2FB10046D78E /* Function.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = Function.h; sourceTree = "<group>"; };
+ 28EB75150FDC2FB10046D78E /* Generator.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = Generator.h; sourceTree = "<group>"; };
+ 28EB75160FDC2FB10046D78E /* Instrmnt.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = Instrmnt.h; sourceTree = "<group>"; };
+ 28EB75170FDC2FB10046D78E /* JCRev.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = JCRev.h; sourceTree = "<group>"; };
+ 28EB75180FDC2FB10046D78E /* JetTable.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = JetTable.h; sourceTree = "<group>"; };
+ 28EB75190FDC2FB10046D78E /* Mandolin.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = Mandolin.h; sourceTree = "<group>"; };
+ 28EB751A0FDC2FB10046D78E /* Modal.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = Modal.h; sourceTree = "<group>"; };
+ 28EB751B0FDC2FB10046D78E /* ModalBar.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = ModalBar.h; sourceTree = "<group>"; };
+ 28EB751C0FDC2FB10046D78E /* Noise.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = Noise.h; sourceTree = "<group>"; };
+ 28EB751D0FDC2FB10046D78E /* NRev.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = NRev.h; sourceTree = "<group>"; };
+ 28EB751E0FDC2FB10046D78E /* OnePole.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = OnePole.h; sourceTree = "<group>"; };
+ 28EB751F0FDC2FB10046D78E /* OneZero.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = OneZero.h; sourceTree = "<group>"; };
+ 28EB75200FDC2FB10046D78E /* PitShift.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = PitShift.h; sourceTree = "<group>"; };
+ 28EB75210FDC2FB10046D78E /* PluckTwo.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = PluckTwo.h; sourceTree = "<group>"; };
+ 28EB75220FDC2FB10046D78E /* PoleZero.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = PoleZero.h; sourceTree = "<group>"; };
+ 28EB75230FDC2FB10046D78E /* PRCRev.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = PRCRev.h; sourceTree = "<group>"; };
+ 28EB75240FDC2FB10046D78E /* ReedTable.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = ReedTable.h; sourceTree = "<group>"; };
+ 28EB75250FDC2FB10046D78E /* Saxofony.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = Saxofony.h; sourceTree = "<group>"; };
+ 28EB75260FDC2FB10046D78E /* SineWave.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = SineWave.h; sourceTree = "<group>"; };
+ 28EB75270FDC2FB10046D78E /* Sitar.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = Sitar.h; sourceTree = "<group>"; };
+ 28EB75280FDC2FB10046D78E /* SKINI.msg */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = text; path = SKINI.msg; sourceTree = "<group>"; };
+ 28EB75290FDC2FB10046D78E /* Stk.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = Stk.h; sourceTree = "<group>"; };
+ 28EB752A0FDC2FB10046D78E /* WaveLoop.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = WaveLoop.h; sourceTree = "<group>"; };
+ 28EB752B0FDC2FB10046D78E /* WvIn.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = WvIn.h; sourceTree = "<group>"; };
+ 28EB752C0FDC2FB10046D78E /* instr.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = instr.h; sourceTree = "<group>"; };
+ 28EB752D0FDC2FB10046D78E /* stkinit.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = stkinit.h; sourceTree = "<group>"; };
+ 28EB752E0FDC2FB10046D78E /* stkint.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = stkint.h; sourceTree = "<group>"; };
+ 28EB75590FDC300C0046D78E /* abs.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = abs.h; sourceTree = "<group>"; };
+ 28EB755A0FDC300C0046D78E /* allpoles.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = allpoles.h; sourceTree = "<group>"; };
+ 28EB755B0FDC300C0046D78E /* alpass.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = alpass.h; sourceTree = "<group>"; };
+ 28EB755C0FDC300C0046D78E /* alpasscv.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = alpasscv.h; sourceTree = "<group>"; };
+ 28EB755D0FDC300C0046D78E /* alpassvv.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = alpassvv.h; sourceTree = "<group>"; };
+ 28EB755E0FDC300C0046D78E /* amosc.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = amosc.h; sourceTree = "<group>"; };
+ 28EB755F0FDC300C0046D78E /* areson.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = areson.h; sourceTree = "<group>"; };
+ 28EB75600FDC300C0046D78E /* aresoncv.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = aresoncv.h; sourceTree = "<group>"; };
+ 28EB75610FDC300C0046D78E /* aresonvc.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = aresonvc.h; sourceTree = "<group>"; };
+ 28EB75620FDC300C0046D78E /* aresonvv.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = aresonvv.h; sourceTree = "<group>"; };
+ 28EB75630FDC300C0046D78E /* atone.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = atone.h; sourceTree = "<group>"; };
+ 28EB75640FDC300C0046D78E /* atonev.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = atonev.h; sourceTree = "<group>"; };
+ 28EB75650FDC300C0046D78E /* biquadfilt.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = biquadfilt.h; sourceTree = "<group>"; };
+ 28EB75660FDC300C0046D78E /* buzz.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = buzz.h; sourceTree = "<group>"; };
+ 28EB75750FDC30C60046D78E /* chase.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = chase.h; sourceTree = "<group>"; };
+ 28EB75760FDC30C60046D78E /* clip.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = clip.h; sourceTree = "<group>"; };
+ 28EB75770FDC30C60046D78E /* congen.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = congen.h; sourceTree = "<group>"; };
+ 28EB75780FDC30C60046D78E /* const.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = const.h; sourceTree = "<group>"; };
+ 28EB75790FDC30C60046D78E /* coterm.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = coterm.h; sourceTree = "<group>"; };
+ 28EB757A0FDC30C60046D78E /* delaycc.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = delaycc.h; sourceTree = "<group>"; };
+ 28EB757B0FDC30C60046D78E /* delaycv.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = delaycv.h; sourceTree = "<group>"; };
+ 28EB757C0FDC30C60046D78E /* eqbandvvv.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = eqbandvvv.h; sourceTree = "<group>"; };
+ 28EB757D0FDC30C60046D78E /* exp.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = exp.h; sourceTree = "<group>"; };
+ 28EB757E0FDC30C60046D78E /* fmfb.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = fmfb.h; sourceTree = "<group>"; };
+ 28EB757F0FDC30C60046D78E /* fmfbv.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = fmfbv.h; sourceTree = "<group>"; };
+ 28EB75800FDC30C60046D78E /* fmosc.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = fmosc.h; sourceTree = "<group>"; };
+ 28EB75810FDC30C60046D78E /* follow.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = follow.h; sourceTree = "<group>"; };
+ 28EB75820FDC30C60046D78E /* fromarraystream.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = fromarraystream.h; sourceTree = "<group>"; };
+ 28EB75830FDC30C60046D78E /* fromobject.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = fromobject.h; sourceTree = "<group>"; };
+ 28EB75840FDC30C60046D78E /* gate.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = gate.h; sourceTree = "<group>"; };
+ 28EB75850FDC30C60046D78E /* ifft.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = ifft.h; sourceTree = "<group>"; };
+ 28EB75860FDC30C60046D78E /* instrbanded.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = instrbanded.h; sourceTree = "<group>"; };
+ 28EB75870FDC30C60046D78E /* instrbow.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = instrbow.h; sourceTree = "<group>"; };
+ 28EB75880FDC30C60046D78E /* instrbowedfreq.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = instrbowedfreq.h; sourceTree = "<group>"; };
+ 28EB75890FDC30C60046D78E /* instrclar.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = instrclar.h; sourceTree = "<group>"; };
+ 28EB758A0FDC30C60046D78E /* instrclarall.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = instrclarall.h; sourceTree = "<group>"; };
+ 28EB758B0FDC30C60046D78E /* instrclarfreq.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = instrclarfreq.h; sourceTree = "<group>"; };
+ 28EB758C0FDC30C60046D78E /* instrflute.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = instrflute.h; sourceTree = "<group>"; };
+ 28EB758D0FDC30C60046D78E /* instrfluteall.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = instrfluteall.h; sourceTree = "<group>"; };
+ 28EB758E0FDC30C60046D78E /* instrflutefreq.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = instrflutefreq.h; sourceTree = "<group>"; };
+ 28EB758F0FDC30C60046D78E /* instrmandolin.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = instrmandolin.h; sourceTree = "<group>"; };
+ 28EB75900FDC30C60046D78E /* instrmodalbar.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = instrmodalbar.h; sourceTree = "<group>"; };
+ 28EB75910FDC30C60046D78E /* instrsax.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = instrsax.h; sourceTree = "<group>"; };
+ 28EB75920FDC30C60046D78E /* instrsaxall.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = instrsaxall.h; sourceTree = "<group>"; };
+ 28EB75930FDC30C60046D78E /* instrsaxfreq.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = instrsaxfreq.h; sourceTree = "<group>"; };
+ 28EB75940FDC30C60046D78E /* instrsitar.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = instrsitar.h; sourceTree = "<group>"; };
+ 28EB75950FDC30C60046D78E /* integrate.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = integrate.h; sourceTree = "<group>"; };
+ 28EB75960FDC30C60046D78E /* log.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = log.h; sourceTree = "<group>"; };
+ 28EB75970FDC30C60046D78E /* lpreson.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = lpreson.h; sourceTree = "<group>"; };
+ 28EB75980FDC30C60046D78E /* maxv.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = maxv.h; sourceTree = "<group>"; };
+ 28EB75990FDC30C60046D78E /* offset.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = offset.h; sourceTree = "<group>"; };
+ 28EB759A0FDC30C60046D78E /* oneshot.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = oneshot.h; sourceTree = "<group>"; };
+ 28EB759B0FDC30C60046D78E /* osc.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = osc.h; sourceTree = "<group>"; };
+ 28EB759C0FDC30C60046D78E /* partial.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = partial.h; sourceTree = "<group>"; };
+ 28EB759D0FDC30C60046D78E /* pluck.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = pluck.h; sourceTree = "<group>"; };
+ 28EB759E0FDC30C60046D78E /* prod.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = prod.h; sourceTree = "<group>"; };
+ 28EB759F0FDC30C60046D78E /* pwl.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = pwl.h; sourceTree = "<group>"; };
+ 28EB75A00FDC30C60046D78E /* quantize.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = quantize.h; sourceTree = "<group>"; };
+ 28EB75A10FDC30C60046D78E /* recip.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = recip.h; sourceTree = "<group>"; };
+ 28EB75A20FDC30C60046D78E /* reson.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = reson.h; sourceTree = "<group>"; };
+ 28EB75A30FDC30C60046D78E /* resoncv.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = resoncv.h; sourceTree = "<group>"; };
+ 28EB75A40FDC30C60046D78E /* resonvc.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = resonvc.h; sourceTree = "<group>"; };
+ 28EB75A50FDC30C60046D78E /* resonvv.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = resonvv.h; sourceTree = "<group>"; };
+ 28EB75A60FDC30C60046D78E /* sampler.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = sampler.h; sourceTree = "<group>"; };
+ 28EB75A70FDC30C60046D78E /* scale.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = scale.h; sourceTree = "<group>"; };
+ 28EB75A80FDC30C60046D78E /* shape.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = shape.h; sourceTree = "<group>"; };
+ 28EB75A90FDC30C60046D78E /* sine.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = sine.h; sourceTree = "<group>"; };
+ 28EB75AA0FDC30C60046D78E /* siosc.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = siosc.h; sourceTree = "<group>"; };
+ 28EB75AB0FDC30C60046D78E /* slope.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = slope.h; sourceTree = "<group>"; };
+ 28EB75AC0FDC30C60046D78E /* sqrt.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = sqrt.h; sourceTree = "<group>"; };
+ 28EB75AD0FDC30C60046D78E /* stkchorus.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = stkchorus.h; sourceTree = "<group>"; };
+ 28EB75AE0FDC30C60046D78E /* stkpitshift.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = stkpitshift.h; sourceTree = "<group>"; };
+ 28EB75AF0FDC30C60046D78E /* stkrev.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = stkrev.h; sourceTree = "<group>"; };
+ 28EB75B00FDC30C60046D78E /* tapf.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = tapf.h; sourceTree = "<group>"; };
+ 28EB75B10FDC30C60046D78E /* tapv.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = tapv.h; sourceTree = "<group>"; };
+ 28EB75B20FDC30C60046D78E /* tone.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = tone.h; sourceTree = "<group>"; };
+ 28EB75B30FDC30C60046D78E /* tonev.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = tonev.h; sourceTree = "<group>"; };
+ 28EB75B40FDC30C60046D78E /* upsample.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = upsample.h; sourceTree = "<group>"; };
+ 28EB75B50FDC30C60046D78E /* white.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = white.h; sourceTree = "<group>"; };
+ 28EB75F70FDC322A0046D78E /* xldmem.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = xldmem.h; sourceTree = "<group>"; };
+ 28EB75F80FDC322A0046D78E /* xlisp.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = xlisp.h; sourceTree = "<group>"; };
28EBA7FA0A78FADE00C8BB1F /* Repair.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = Repair.cpp; sourceTree = "<group>"; };
28EBA7FB0A78FADE00C8BB1F /* Repair.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = Repair.h; sourceTree = "<group>"; };
28EBA7FD0A78FAF800C8BB1F /* InterpolateAudio.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = InterpolateAudio.cpp; sourceTree = "<group>"; };
@@ -2826,8 +3381,6 @@
28F5C1100BE5886A00D17341 /* FileDialogPrivate.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = FileDialogPrivate.h; sourceTree = "<group>"; };
28FB121F0A3790A8006F0917 /* MacroMagic.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = MacroMagic.h; sourceTree = "<group>"; };
28FB12230A3790DF006F0917 /* AllThemeResources.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = AllThemeResources.h; sourceTree = "<group>"; };
- 28FB20330C415D9500F769E7 /* SmartRecordPrefs.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = SmartRecordPrefs.cpp; sourceTree = "<group>"; };
- 28FB20340C415D9500F769E7 /* SmartRecordPrefs.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = SmartRecordPrefs.h; sourceTree = "<group>"; };
28FC1AF90A47762C00A188AE /* WrappedType.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = WrappedType.cpp; sourceTree = "<group>"; };
28FC1AFA0A47762C00A188AE /* WrappedType.h */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.c.h; path = WrappedType.h; sourceTree = "<group>"; };
28FE4A060ABF4E960056F5C4 /* mmx_optimized.cpp */ = {isa = PBXFileReference; fileEncoding = 5; lastKnownFileType = sourcecode.cpp.cpp; path = mmx_optimized.cpp; sourceTree = "<group>"; };
@@ -2894,13 +3447,6 @@
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
- 170741410988FDB3008541CC /* Frameworks */ = {
- isa = PBXFrameworksBuildPhase;
- buildActionMask = 2147483647;
- files = (
- );
- runOnlyForDeploymentPostprocessing = 0;
- };
1790AFAE09883B6D008A330A /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
@@ -2922,6 +3468,22 @@
28501F330CEED8C70029ABAA /* libvamp.a in Frameworks */,
28E2373A0E5163A200281398 /* libscorealign.a in Frameworks */,
ED2707460EF9C550007D4FFD /* liblibsbsms.a in Frameworks */,
+ 2837549C0F42898E00364787 /* libtaglib.a in Frameworks */,
+ 2800FE230FF32381005CA9E5 /* libportmidi.a in Frameworks */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+ 2800FE050FF322D4005CA9E5 /* Frameworks */ = {
+ isa = PBXFrameworksBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+ 283753E20F42875100364787 /* Frameworks */ = {
+ isa = PBXFrameworksBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -2945,21 +3507,23 @@
17072F6A0988D6A9008541CC /* libid3tag */,
280DE5D80E163488006159ED /* liblrdf */,
17072FD10988D6A9008541CC /* libmad */,
+ 17C8BA11098B398C00216F16 /* libnyquist */,
170731EB0988D6AA008541CC /* libogg */,
170733DB0988D6AC008541CC /* libresample */,
ED05D0FF0E50AD5600CC4BD3 /* libscorealign */,
170733FC0988D6AC008541CC /* libsndfile */,
28501EAC0CEED0740029ABAA /* libvamp */,
1707357C0988D6AD008541CC /* libvorbis */,
- 17C8BA11098B398C00216F16 /* libnyquist */,
2844B48E0DEA66900087C656 /* mod-script-pipe */,
28E821F50A39FC1300DCE280 /* portaudio-v19 */,
+ 2800FDF00FF321DA005CA9E5 /* portmidi */,
170737B00988D6AF008541CC /* portmixer */,
28F3A3EF0E28280A00729866 /* portsmf */,
287BD6C70E25D65B00CB4467 /* redland */,
ED2706FA0EF9C436007D4FFD /* sbsms */,
287BD9AE0E25DFBB00CB4467 /* slv2 */,
170737D30988D6AF008541CC /* soundtouch */,
+ 283752F90F4286C100364787 /* taglib */,
2840CEC70AEB7E9D00F49FC3 /* twolame */,
);
name = "lib-src";
@@ -3162,9 +3726,11 @@
170734970988D6AD008541CC /* aiff.c */,
170734980988D6AD008541CC /* alaw.c */,
170734990988D6AD008541CC /* au.c */,
+ 287DBE830F3F6B2700C5BBED /* audio_detect.c */,
1707349C0988D6AD008541CC /* avr.c */,
283A11A40A2C0DE7004372C4 /* broadcast.c */,
176EE9DB09A2EC1000188F3B /* caf.c */,
+ 287DBE840F3F6B2700C5BBED /* chunk.c */,
1707349D0988D6AD008541CC /* command.c */,
1707349E0988D6AD008541CC /* common.c */,
1707349F0988D6AD008541CC /* common.h */,
@@ -3181,12 +3747,15 @@
170734EA0988D6AD008541CC /* gsm610.c */,
170734EB0988D6AD008541CC /* htk.c */,
170734EC0988D6AD008541CC /* ima_adpcm.c */,
+ 287DBE850F3F6B2700C5BBED /* ima_oki_adpcm.c */,
+ 287DBE860F3F6B2700C5BBED /* ima_oki_adpcm.h */,
170734ED0988D6AD008541CC /* interleave.c */,
170734EE0988D6AD008541CC /* ircam.c */,
170734F00988D6AD008541CC /* macbinary3.c */,
170734F10988D6AD008541CC /* macos.c */,
170734F50988D6AD008541CC /* mat4.c */,
170734F60988D6AD008541CC /* mat5.c */,
+ 287DBE870F3F6B2700C5BBED /* mpc2k.c */,
170734F70988D6AD008541CC /* ms_adpcm.c */,
170734F80988D6AD008541CC /* nist.c */,
170734F90988D6AD008541CC /* ogg.c */,
@@ -3194,6 +3763,7 @@
170734FB0988D6AD008541CC /* pcm.c */,
170734FC0988D6AD008541CC /* pvf.c */,
170734FD0988D6AD008541CC /* raw.c */,
+ 287DBE880F3F6B2700C5BBED /* rf64.c */,
170734FE0988D6AD008541CC /* rx2.c */,
170734FF0988D6AD008541CC /* sd2.c */,
170735000988D6AD008541CC /* sds.c */,
@@ -3426,10 +3996,27 @@
174D9025098C78AF00D5909F /* commands */ = {
isa = PBXGroup;
children = (
+ 28D53FFA0FD1912A00FA7C75 /* AppCommandEvent.cpp */,
+ 28D53FFB0FD1912A00FA7C75 /* AppCommandEvent.h */,
+ 28D53FFC0FD1912A00FA7C75 /* BatchEvalCommand.h */,
+ 28D53FFD0FD1912A00FA7C75 /* Command.h */,
+ 28D53FFE0FD1912A00FA7C75 /* CommandBuilder.cpp */,
+ 28D53FFF0FD1912A00FA7C75 /* CommandBuilder.h */,
+ 28D540000FD1912A00FA7C75 /* CommandHandler.cpp */,
+ 28D540010FD1912A00FA7C75 /* CommandHandler.h */,
174D9026098C78AF00D5909F /* CommandManager.cpp */,
174D9027098C78AF00D5909F /* CommandManager.h */,
+ 1818558F0FFE916C0026D190 /* CommandMisc.h */,
+ 181855900FFE916C0026D190 /* CommandTargets.h */,
+ 28D540020FD1912A00FA7C75 /* DebugPrintCommand.h */,
174D902A098C78AF00D5909F /* Keyboard.cpp */,
174D902B098C78AF00D5909F /* Keyboard.h */,
+ 28DB34770FDC2C5D0011F589 /* ResponseQueue.h */,
+ 28DB34780FDC2C5D0011F589 /* ResponseQueue.cpp */,
+ 181855950FFE916C0026D190 /* ScreenshotCommand.cpp */,
+ 181855960FFE916C0026D190 /* ScreenshotCommand.h */,
+ 28D540030FD1912A00FA7C75 /* ScriptCommandRelay.cpp */,
+ 28D540040FD1912A00FA7C75 /* ScriptCommandRelay.h */,
);
path = commands;
sourceTree = "<group>";
@@ -3566,7 +4153,6 @@
isa = PBXGroup;
children = (
1790AFB009883B6D008A330A /* Audacity.app */,
- 170741430988FDB3008541CC /* intgen */,
17073EE80988DBDD008541CC /* libportsmf.a */,
17073F480988E04A008541CC /* libexpat.a */,
176EEBEA09A2F16200188F3B /* libFLAC.a */,
@@ -3576,6 +4162,7 @@
176A1A5B098B7B8D00DC73B4 /* libnyquist.a */,
17073FFE0988EA60008541CC /* libogg.a */,
28E67F5F0A3A160D0021D89F /* libportaudio.a */,
+ 2800FE070FF322D4005CA9E5 /* libportmidi.a */,
170740960988F2F7008541CC /* libportmixer.a */,
1707400D0988EB90008541CC /* libresample.a */,
1707401E0988EEAA008541CC /* libsndfile.a */,
@@ -3591,6 +4178,7 @@
287BD9AA0E25DF2800CB4467 /* libslv2.a */,
28E237080E515D1D00281398 /* libscorealign.a */,
ED2706F40EF9C3C6007D4FFD /* liblibsbsms.a */,
+ 283753E40F42875100364787 /* libtaglib.a */,
);
name = Products;
sourceTree = "<group>";
@@ -3680,6 +4268,10 @@
1790B0A409883BFD008A330A /* Legacy.h */,
28B6ED8D0DE3D1B50046F0F3 /* LoadModules.cpp */,
28B6ED8E0DE3D1B50046F0F3 /* LoadModules.h */,
+ 1865A9B41004490400946EE6 /* Lyrics.cpp */,
+ 1865A9B51004490400946EE6 /* Lyrics.h */,
+ 1865A9B61004490500946EE6 /* LyricsWindow.cpp */,
+ 1865A9B71004490500946EE6 /* LyricsWindow.h */,
28FB121F0A3790A8006F0917 /* MacroMagic.h */,
28EBA7FF0A78FAF800C8BB1F /* Matrix.cpp */,
28EBA8000A78FAF800C8BB1F /* Matrix.h */,
@@ -3687,6 +4279,8 @@
1790B0A809883BFD008A330A /* Menus.h */,
1790B0AB09883BFD008A330A /* Mix.cpp */,
1790B0AC09883BFD008A330A /* Mix.h */,
+ 289E75081006D0BD00CEF79B /* MixerBoard.cpp */,
+ 289E75091006D0BD00CEF79B /* MixerBoard.h */,
1790B0AF09883BFD008A330A /* NoteTrack.cpp */,
1790B0B009883BFD008A330A /* NoteTrack.h */,
1790B0B109883BFD008A330A /* PitchName.cpp */,
@@ -3701,6 +4295,8 @@
186CCEA20E523C8D00659159 /* Profiler.h */,
1790B0D009883BFD008A330A /* Project.cpp */,
1790B0D109883BFD008A330A /* Project.h */,
+ 28DABFBC0FF19DB100AC7848 /* RealFFTf.cpp */,
+ 28DABFBD0FF19DB100AC7848 /* RealFFTf.h */,
1790B0D209883BFD008A330A /* Resample.cpp */,
1790B0D309883BFD008A330A /* Resample.h */,
1790B0D409883BFD008A330A /* RingBuffer.cpp */,
@@ -3791,6 +4387,7 @@
28D587C50E264CBB009C7DEA /* lv2 */,
1790B03409883BFD008A330A /* nyquist */,
28501E960CEECE4B0029ABAA /* vamp */,
+ 28B97B800FBF77030076CF28 /* vst */,
1790AFFE09883BFD008A330A /* Amplify.cpp */,
1790AFFF09883BFD008A330A /* Amplify.h */,
28D65C700B97E54B000E001A /* AutoDuck.cpp */,
@@ -3827,6 +4424,8 @@
1790B01E09883BFD008A330A /* Fade.h */,
2891B2850C531D2C0044FBE3 /* FindClipping.cpp */,
2891B2860C531D2C0044FBE3 /* FindClipping.h */,
+ 18A2840E0F79BCAB0013A1BE /* Generator.cpp */,
+ 18A2840D0F79BCAA0013A1BE /* Generator.h */,
1790B02109883BFD008A330A /* Invert.cpp */,
1790B02209883BFD008A330A /* Invert.h */,
1790B02A09883BFD008A330A /* Leveller.cpp */,
@@ -3979,31 +4578,43 @@
1790B0B509883BFD008A330A /* prefs */ = {
isa = PBXGroup;
children = (
- 1790B0B609883BFD008A330A /* AudioIOPrefs.cpp */,
- 1790B0B709883BFD008A330A /* AudioIOPrefs.h */,
1790B0B809883BFD008A330A /* BatchPrefs.cpp */,
1790B0B909883BFD008A330A /* BatchPrefs.h */,
+ 284B278E0FC66863005EAC96 /* DevicePrefs.cpp */,
+ 284B278F0FC66863005EAC96 /* DevicePrefs.h */,
1790B0BB09883BFD008A330A /* DirectoriesPrefs.cpp */,
1790B0BC09883BFD008A330A /* DirectoriesPrefs.h */,
- 1790B0BD09883BFD008A330A /* FileFormatPrefs.cpp */,
- 1790B0BE09883BFD008A330A /* FileFormatPrefs.h */,
1790B0BF09883BFD008A330A /* GUIPrefs.cpp */,
1790B0C009883BFD008A330A /* GUIPrefs.h */,
+ 284B27900FC66863005EAC96 /* ImportExportPrefs.cpp */,
+ 284B27910FC66863005EAC96 /* ImportExportPrefs.h */,
1790B0C109883BFD008A330A /* KeyConfigPrefs.cpp */,
1790B0C209883BFD008A330A /* KeyConfigPrefs.h */,
+ 284B27920FC66863005EAC96 /* LibraryPrefs.cpp */,
+ 284B27930FC66863005EAC96 /* LibraryPrefs.h */,
+ 2800FE350FF32566005CA9E5 /* MidiIOPrefs.cpp */,
+ 2800FE360FF32566005CA9E5 /* MidiIOPrefs.h */,
1790B0C309883BFD008A330A /* MousePrefs.cpp */,
1790B0C409883BFD008A330A /* MousePrefs.h */,
1790B0C509883BFD008A330A /* PrefsDialog.cpp */,
1790B0C609883BFD008A330A /* PrefsDialog.h */,
1790B0C709883BFD008A330A /* PrefsPanel.h */,
+ 284B27940FC66863005EAC96 /* PlaybackPrefs.cpp */,
+ 284B27950FC66863005EAC96 /* PlaybackPrefs.h */,
+ 284B27960FC66863005EAC96 /* ProjectsPrefs.cpp */,
+ 284B27970FC66863005EAC96 /* ProjectsPrefs.h */,
1790B0C809883BFD008A330A /* QualityPrefs.cpp */,
1790B0C909883BFD008A330A /* QualityPrefs.h */,
- 28FB20330C415D9500F769E7 /* SmartRecordPrefs.cpp */,
- 28FB20340C415D9500F769E7 /* SmartRecordPrefs.h */,
+ 284B27980FC66863005EAC96 /* RecordingPrefs.cpp */,
+ 284B27990FC66863005EAC96 /* RecordingPrefs.h */,
1790B0CA09883BFD008A330A /* SpectrumPrefs.cpp */,
1790B0CB09883BFD008A330A /* SpectrumPrefs.h */,
28456AC00A2C180E00C23C1E /* ThemePrefs.cpp */,
28456AC10A2C180E00C23C1E /* ThemePrefs.h */,
+ 284B27E00FC66CCD005EAC96 /* TracksPrefs.cpp */,
+ 284B27E10FC66CCD005EAC96 /* TracksPrefs.h */,
+ 284B27E20FC66CCD005EAC96 /* WarningsPrefs.cpp */,
+ 284B27E30FC66CCD005EAC96 /* WarningsPrefs.h */,
);
path = prefs;
sourceTree = "<group>";
@@ -4021,6 +4632,8 @@
283AA0EA0C56ED08002CBD34 /* ErrorDialog.h */,
28F1D8190A2D0018005506A7 /* ExpandingToolBar.cpp */,
28F1D81A0A2D0018005506A7 /* ExpandingToolBar.h */,
+ 28CCDCFF0F939FD70081F2FC /* FileHistory.cpp */,
+ 28CCDD040F93A0B20081F2FC /* FileHistory.h */,
2897F6FC0AB3DCD0003C20C5 /* Grabber.cpp */,
2897F6FD0AB3DCD0003C20C5 /* Grabber.h */,
280828580A75E0EA000002EF /* Grid.cpp */,
@@ -4063,373 +4676,102 @@
17C8BA11098B398C00216F16 /* libnyquist */ = {
isa = PBXGroup;
children = (
- 17C8BA1A098B502D00216F16 /* cmt */,
- 17C8BA4D098B502D00216F16 /* fft */,
- 17C8BA13098B4F6B00216F16 /* misc */,
- 17C8BD31098B645400216F16 /* nyqsrc */,
- 17C8BAC2098B502D00216F16 /* nyx */,
- 17C8BDF7098B654200216F16 /* snd */,
- 17C8BE20098B654200216F16 /* sys */,
- 17C8BE27098B654200216F16 /* tran */,
- 17C8BF1C098B654300216F16 /* xlisp */,
+ 284A7B8E0F3156B4001D7A67 /* nyquist */,
+ 284A7B8F0F31571B001D7A67 /* nyx.c */,
+ 284A7B900F31571B001D7A67 /* nyx.h */,
+ 284A7B910F31571B001D7A67 /* xlextstart.c */,
);
path = libnyquist;
sourceTree = "<group>";
};
- 17C8BA13098B4F6B00216F16 /* misc */ = {
+ 1841B4FD0E00AD3D00F386E9 /* ondemand */ = {
isa = PBXGroup;
children = (
- 17C8BA14098B4FD700216F16 /* cmdline.c */,
- 17C8BA15098B4FD700216F16 /* intgen.c */,
- );
- path = misc;
- sourceTree = "<group>";
- };
- 17C8BA1A098B502D00216F16 /* cmt */ = {
- isa = PBXGroup;
- children = (
- 17C8BA1B098B502D00216F16 /* cext.c */,
- 17C8BA1C098B502D00216F16 /* cext.h */,
- 17C8BA1D098B502D00216F16 /* cleanup.c */,
- 17C8BA1E098B502D00216F16 /* cleanup.h */,
- 17C8BA1F098B502D00216F16 /* cmdline.c */,
- 17C8BA20098B502D00216F16 /* cmdline.h */,
- 17C8BA21098B502D00216F16 /* cmtcmd.c */,
- 17C8BA22098B502D00216F16 /* cmtcmd.h */,
- 17C8BA26098B502D00216F16 /* hash.h */,
- 17C8BA27098B502D00216F16 /* hashrout.h */,
- 17C8BA28098B502D00216F16 /* mem.c */,
- 17C8BA29098B502D00216F16 /* mem.h */,
- 17C8BA2A098B502D00216F16 /* mfmidi.h */,
- 17C8BA2B098B502D00216F16 /* midibuff.h */,
- 17C8BA2C098B502D00216F16 /* midicode.h */,
- 17C8BA2D098B502D00216F16 /* midierr.h */,
- 17C8BA2E098B502D00216F16 /* midifile.c */,
- 17C8BA2F098B502D00216F16 /* midifile.h */,
- 17C8BA30098B502D00216F16 /* midifns.c */,
- 17C8BA31098B502D00216F16 /* midifns.h */,
- 17C8BA34098B502D00216F16 /* moxc.c */,
- 17C8BA35098B502D00216F16 /* moxc.h */,
- 17C8BA36098B502D00216F16 /* musiprog.h */,
- 17C8BA37098B502D00216F16 /* pitch.h */,
- 17C8BA38098B502D00216F16 /* record.c */,
- 17C8BA39098B502D00216F16 /* record.h */,
- 17C8BA3A098B502D00216F16 /* seq.c */,
- 17C8BA3B098B502D00216F16 /* seq.h */,
- 17C8BA3C098B502D00216F16 /* seqdecls.h */,
- 17C8BA3D098B502D00216F16 /* seqmread.c */,
- 17C8BA3E098B502D00216F16 /* seqmread.h */,
- 17C8BA3F098B502D00216F16 /* seqmwrite.c */,
- 17C8BA40098B502D00216F16 /* seqmwrite.h */,
- 17C8BA41098B502D00216F16 /* seqread.c */,
- 17C8BA42098B502D00216F16 /* seqread.h */,
- 17C8BA43098B502D00216F16 /* seqwrite.c */,
- 17C8BA44098B502D00216F16 /* seqwrite.h */,
- 17C8BA45098B502D00216F16 /* swlogic.h */,
- 17C8BA46098B502D00216F16 /* tempomap.c */,
- 17C8BA47098B502D00216F16 /* tempomap.h */,
- 17C8BA48098B502D00216F16 /* timebase.c */,
- 17C8BA49098B502D00216F16 /* timebase.h */,
- 17C8BA4A098B502D00216F16 /* userio.c */,
- 17C8BA4B098B502D00216F16 /* userio.h */,
+ 1841B5000E00AD6E00F386E9 /* ODComputeSummaryTask.cpp */,
+ 1841B5010E00AD6E00F386E9 /* ODComputeSummaryTask.h */,
+ 186CCE6E0E51F48500659159 /* ODDecodeFlacTask.cpp */,
+ 186CCE6F0E51F48500659159 /* ODDecodeFlacTask.h */,
+ 186CCE700E51F48500659159 /* ODDecodeTask.cpp */,
+ 186CCE710E51F48500659159 /* ODDecodeTask.h */,
+ 1841B5020E00AD6E00F386E9 /* ODManager.cpp */,
+ 1841B5030E00AD6E00F386E9 /* ODManager.h */,
+ 1841B5040E00AD6E00F386E9 /* ODTask.cpp */,
+ 1841B5050E00AD6E00F386E9 /* ODTask.h */,
+ 1841B5060E00AD6E00F386E9 /* ODTaskThread.cpp */,
+ 1841B5070E00AD6E00F386E9 /* ODTaskThread.h */,
+ 1841B5080E00AD6E00F386E9 /* ODWaveTrackTaskQueue.cpp */,
+ 1841B5090E00AD6E00F386E9 /* ODWaveTrackTaskQueue.h */,
);
- path = cmt;
+ name = ondemand;
sourceTree = "<group>";
};
- 17C8BA4D098B502D00216F16 /* fft */ = {
+ 2800FDF00FF321DA005CA9E5 /* portmidi */ = {
isa = PBXGroup;
children = (
- 17C8BA4F098B502D00216F16 /* fftn.c */,
- 17C8BA50098B502D00216F16 /* fftn.h */,
+ 2800FDF20FF321F2005CA9E5 /* pm_common */,
+ 2800FDF10FF321EC005CA9E5 /* pm_mac */,
+ 2800FDF30FF32204005CA9E5 /* porttime */,
);
- path = fft;
+ name = portmidi;
sourceTree = "<group>";
};
- 17C8BAC2098B502D00216F16 /* nyx */ = {
+ 2800FDF10FF321EC005CA9E5 /* pm_mac */ = {
isa = PBXGroup;
children = (
- 17C8BAC4098B502D00216F16 /* nyx.c */,
- 17C8BAC5098B502D00216F16 /* nyx.h */,
- );
- path = nyx;
- sourceTree = "<group>";
- };
- 17C8BD31098B645400216F16 /* nyqsrc */ = {
- isa = PBXGroup;
- children = (
- 17C8BD32098B649900216F16 /* add.c */,
- 17C8BD33098B649A00216F16 /* add.h */,
- 17C8BD35098B649A00216F16 /* avg.c */,
- 17C8BD36098B649A00216F16 /* avg.h */,
- 17C8BD38098B649A00216F16 /* compose.c */,
- 17C8BD39098B649A00216F16 /* compose.h */,
- 17C8BD3B098B649A00216F16 /* cque.h */,
- 17C8BD3D098B649A00216F16 /* debug.c */,
- 17C8BD3E098B649A00216F16 /* debug.h */,
- 17C8BD40098B649A00216F16 /* downsample.c */,
- 17C8BD41098B649A00216F16 /* downsample.h */,
- 17C8BD43098B649A00216F16 /* falloc.c */,
- 17C8BD44098B649A00216F16 /* falloc.h */,
- 17C8BD46098B649A00216F16 /* ffilterkit.c */,
- 17C8BD47098B649A00216F16 /* ffilterkit.h */,
- 17C8BD4A098B649A00216F16 /* fft.c */,
- 17C8BD4B098B649A00216F16 /* fft.h */,
- 17C8BD4E098B649A00216F16 /* fftw.h */,
- 17C8BD4F098B649A00216F16 /* fresample.h */,
- 17C8BD50098B649A00216F16 /* fsmallfilter.h */,
- 17C8BD51098B649A00216F16 /* handlers.c */,
- 17C8BD53098B649A00216F16 /* inverse.c */,
- 17C8BD54098B649A00216F16 /* inverse.h */,
- 17C8BD56098B649A00216F16 /* local.c */,
- 17C8BD58098B649A00216F16 /* localdefs.h */,
- 17C8BD59098B649A00216F16 /* localptrs.h */,
- 17C8BD5A098B649A00216F16 /* multiread.c */,
- 17C8BD5B098B649A00216F16 /* multiread.h */,
- 17C8BD5D098B649A00216F16 /* multiseq.c */,
- 17C8BD5E098B649A00216F16 /* multiseq.h */,
- 17C8BD64098B649A00216F16 /* resamp.c */,
- 17C8BD65098B649A00216F16 /* resamp.h */,
- 17C8BD67098B649A00216F16 /* resampv.c */,
- 17C8BD68098B649A00216F16 /* resampv.h */,
- 17C8BD6A098B649A00216F16 /* rfftw.h */,
- 17C8BD6B098B649A00216F16 /* samples.c */,
- 17C8BD6C098B649A00216F16 /* samples.h */,
- 17C8BD6E098B649A00216F16 /* seqext.c */,
- 17C8BD6F098B649A00216F16 /* seqext.h */,
- 17C8BD73098B649A00216F16 /* seqfnint.c */,
- 17C8BD76098B649A00216F16 /* seqfnintdefs.h */,
- 17C8BD77098B649A00216F16 /* seqfnintptrs.h */,
- 17C8BD78098B649A00216F16 /* seqinterf.c */,
- 17C8BD79098B649A00216F16 /* seqinterf.h */,
- 17C8BD7B098B649A00216F16 /* sndfail.c */,
- 17C8BD7F098B649A00216F16 /* sndfnint.c */,
- 17C8BD82098B649A00216F16 /* sndfnintdefs.h */,
- 17C8BD83098B649A00216F16 /* sndfnintptrs.h */,
- 17C8BD84098B649A00216F16 /* sndmax.c */,
- 17C8BD85098B649A00216F16 /* sndmax.h */,
- 17C8BD87098B649A00216F16 /* sndread.c */,
- 17C8BD88098B649A00216F16 /* sndread.h */,
- 17C8BD8A098B649A00216F16 /* sndseq.c */,
- 17C8BD8B098B649A00216F16 /* sndseq.h */,
- 17C8BD8D098B649A00216F16 /* sndwrite.c */,
- 17C8BD8E098B649A00216F16 /* sndwrite.h */,
- 17C8BD90098B649A00216F16 /* sound.c */,
- 17C8BD91098B649A00216F16 /* sound.h */,
- 17C8BD93098B649A00216F16 /* stats.c */,
- 17C8BD95098B649A00216F16 /* stdefs.h */,
- );
- path = nyqsrc;
- sourceTree = "<group>";
- };
- 17C8BDF7098B654200216F16 /* snd */ = {
- isa = PBXGroup;
- children = (
- 17C8BDF9098B654200216F16 /* audionone.c */,
- 17C8BDFD098B654200216F16 /* ieeecvt.c */,
- 17C8BDFE098B654200216F16 /* ieeecvt.h */,
- 17C8BE01098B654200216F16 /* snd.c */,
- 17C8BE02098B654200216F16 /* snd.h */,
- 17C8BE06098B654200216F16 /* sndconfig.h */,
- 17C8BE07098B654200216F16 /* sndcvt.c */,
- 17C8BE0B098B654200216F16 /* sndfileio.h */,
- 17C8BE0C098B654200216F16 /* sndfreebsd.h */,
- 17C8BE0D098B654200216F16 /* sndhead.h */,
- 17C8BE0E098B654200216F16 /* sndheader.c */,
- 17C8BE0F098B654200216F16 /* sndheader.h */,
- 17C8BE11098B654200216F16 /* sndio.c */,
- 17C8BE13098B654200216F16 /* sndlinux.c */,
- 17C8BE14098B654200216F16 /* sndlinux.h */,
- 17C8BE1F098B654200216F16 /* sndwrite.h */,
- );
- path = snd;
+ 2800FDF90FF3227F005CA9E5 /* finddefault.c */,
+ 2800FDFA0FF3227F005CA9E5 /* pmmac.c */,
+ 2800FDFB0FF3227F005CA9E5 /* pmmac.h */,
+ 2800FDFC0FF3227F005CA9E5 /* pmmacosxcm.c */,
+ 2800FDFD0FF3227F005CA9E5 /* pmmacosxcm.h */,
+ 2800FDFE0FF3227F005CA9E5 /* readbinaryplist.c */,
+ 2800FDFF0FF3227F005CA9E5 /* readbinaryplist.h */,
+ );
+ name = pm_mac;
sourceTree = "<group>";
};
- 17C8BE20098B654200216F16 /* sys */ = {
+ 2800FDF20FF321F2005CA9E5 /* pm_common */ = {
isa = PBXGroup;
children = (
- 17C8BE22098B654200216F16 /* switches.h */,
- 17C8BE24098B654200216F16 /* term.c */,
- 17C8BE25098B654200216F16 /* term.h */,
- );
- path = sys;
- sourceTree = "<group>";
- };
- 17C8BE27098B654200216F16 /* tran */ = {
- isa = PBXGroup;
- children = (
- 28EB47D30AFD542100502984 /* abs.c */,
- 28EB47D70AFD54B800502984 /* abs.h */,
- 17C8BE2C098B654200216F16 /* alpass.c */,
- 17C8BE2D098B654200216F16 /* alpass.h */,
- 28D025570AFDA53B0035F843 /* alpasscv.c */,
- 28D025580AFDA53B0035F843 /* alpasscv.h */,
- 28D025590AFDA53B0035F843 /* alpassvc.c */,
- 28D0255A0AFDA53B0035F843 /* alpassvc.h */,
- 17C8BE39098B654200216F16 /* amosc.c */,
- 17C8BE3A098B654200216F16 /* amosc.h */,
- 17C8BE3D098B654200216F16 /* areson.c */,
- 17C8BE3E098B654200216F16 /* areson.h */,
- 17C8BE41098B654200216F16 /* aresoncv.c */,
- 17C8BE42098B654200216F16 /* aresoncv.h */,
- 17C8BE45098B654200216F16 /* aresonvc.c */,
- 17C8BE46098B654200216F16 /* aresonvc.h */,
- 17C8BE49098B654200216F16 /* aresonvv.c */,
- 17C8BE4A098B654200216F16 /* aresonvv.h */,
- 17C8BE4D098B654200216F16 /* atone.c */,
- 17C8BE4E098B654200216F16 /* atone.h */,
- 17C8BE51098B654200216F16 /* atonev.c */,
- 17C8BE52098B654200216F16 /* atonev.h */,
- 17C8BE55098B654200216F16 /* biquad.c */,
- 17C8BE56098B654200216F16 /* biquad.h */,
- 17C8BE59098B654200216F16 /* buzz.c */,
- 17C8BE5A098B654200216F16 /* buzz.h */,
- 17C8BE5D098B654200216F16 /* chase.c */,
- 17C8BE5E098B654200216F16 /* chase.h */,
- 17C8BE61098B654200216F16 /* clip.c */,
- 17C8BE62098B654200216F16 /* clip.h */,
- 17C8BE65098B654200216F16 /* congen.c */,
- 17C8BE66098B654200216F16 /* congen.h */,
- 17C8BE69098B654300216F16 /* const.c */,
- 17C8BE6A098B654300216F16 /* const.h */,
- 17C8BE6D098B654300216F16 /* convolve.c */,
- 17C8BE6E098B654300216F16 /* convolve.h */,
- 17C8BE71098B654300216F16 /* coterm.c */,
- 17C8BE72098B654300216F16 /* coterm.h */,
- 17C8BE76098B654300216F16 /* delay.c */,
- 17C8BE77098B654300216F16 /* delay.h */,
- 17C8BE7A098B654300216F16 /* delaycv.c */,
- 17C8BE7B098B654300216F16 /* delaycv.h */,
- 17C8BE83098B654300216F16 /* exp.c */,
- 17C8BE84098B654300216F16 /* exp.h */,
- 17C8BE88098B654300216F16 /* fmosc.c */,
- 17C8BE89098B654300216F16 /* fmosc.h */,
- 17C8BE8C098B654300216F16 /* follow.c */,
- 17C8BE8D098B654300216F16 /* follow.h */,
- 17C8BE90098B654300216F16 /* fromarraystream.c */,
- 17C8BE91098B654300216F16 /* fromarraystream.h */,
- 17C8BE94098B654300216F16 /* fromobject.c */,
- 17C8BE95098B654300216F16 /* fromobject.h */,
- 17C8BE98098B654300216F16 /* gate.c */,
- 17C8BE99098B654300216F16 /* gate.h */,
- 17C8BE9D098B654300216F16 /* ifft.c */,
- 17C8BE9E098B654300216F16 /* ifft.h */,
- 17C8BEA3098B654300216F16 /* integrate.c */,
- 17C8BEA4098B654300216F16 /* integrate.h */,
- 17C8BEA7098B654300216F16 /* log.c */,
- 17C8BEA8098B654300216F16 /* log.h */,
- 17C8BEAB098B654300216F16 /* maxv.c */,
- 17C8BEAC098B654300216F16 /* maxv.h */,
- 17C8BEB1098B654300216F16 /* offset.c */,
- 17C8BEB2098B654300216F16 /* offset.h */,
- 17C8BEB5098B654300216F16 /* oneshot.c */,
- 17C8BEB6098B654300216F16 /* oneshot.h */,
- 17C8BEB9098B654300216F16 /* osc.c */,
- 17C8BEBA098B654300216F16 /* osc.h */,
- 17C8BEBD098B654300216F16 /* partial.c */,
- 17C8BEBE098B654300216F16 /* partial.h */,
- 17C8BEC1098B654300216F16 /* pluck.c */,
- 17C8BEC2098B654300216F16 /* pluck.h */,
- 17C8BEC5098B654300216F16 /* prod.c */,
- 17C8BEC6098B654300216F16 /* prod.h */,
- 17C8BEC9098B654300216F16 /* pwl.c */,
- 17C8BECA098B654300216F16 /* pwl.h */,
- 17C8BECF098B654300216F16 /* quantize.c */,
- 17C8BED0098B654300216F16 /* quantize.h */,
- 17C8BED3098B654300216F16 /* recip.c */,
- 17C8BED4098B654300216F16 /* recip.h */,
- 17C8BED7098B654300216F16 /* reson.c */,
- 17C8BED8098B654300216F16 /* reson.h */,
- 17C8BEDB098B654300216F16 /* resoncv.c */,
- 17C8BEDC098B654300216F16 /* resoncv.h */,
- 17C8BEDF098B654300216F16 /* resonvc.c */,
- 17C8BEE0098B654300216F16 /* resonvc.h */,
- 17C8BEE3098B654300216F16 /* resonvv.c */,
- 17C8BEE4098B654300216F16 /* resonvv.h */,
- 17C8BEE7098B654300216F16 /* sampler.c */,
- 17C8BEE8098B654300216F16 /* sampler.h */,
- 17C8BEEB098B654300216F16 /* scale.c */,
- 17C8BEEC098B654300216F16 /* scale.h */,
- 17C8BEEF098B654300216F16 /* shape.c */,
- 17C8BEF0098B654300216F16 /* shape.h */,
- 17C8BEF3098B654300216F16 /* sine.c */,
- 17C8BEF4098B654300216F16 /* sine.h */,
- 17C8BEF7098B654300216F16 /* siosc.c */,
- 17C8BEF8098B654300216F16 /* siosc.h */,
- 17C8BEFB098B654300216F16 /* slope.c */,
- 17C8BEFC098B654300216F16 /* slope.h */,
- 28EB47D50AFD547600502984 /* sqrt.c */,
- 28EB47D80AFD54B800502984 /* sqrt.h */,
- 17C8BF05098B654300216F16 /* tapv.c */,
- 17C8BF06098B654300216F16 /* tapv.h */,
- 17C8BF09098B654300216F16 /* tone.c */,
- 17C8BF0A098B654300216F16 /* tone.h */,
- 17C8BF0D098B654300216F16 /* tonev.c */,
- 17C8BF0E098B654300216F16 /* tonev.h */,
- 17C8BF12098B654300216F16 /* upsample.c */,
- 17C8BF13098B654300216F16 /* upsample.h */,
- 17C8BF16098B654300216F16 /* white.c */,
- 17C8BF17098B654300216F16 /* white.h */,
+ 2800FDF40FF3225B005CA9E5 /* pminternal.h */,
+ 2800FDF50FF3225B005CA9E5 /* pmutil.c */,
+ 2800FDF60FF3225B005CA9E5 /* pmutil.h */,
+ 2800FDF70FF3225B005CA9E5 /* portmidi.c */,
+ 2800FDF80FF3225B005CA9E5 /* portmidi.h */,
);
- path = tran;
+ name = pm_common;
sourceTree = "<group>";
};
- 17C8BF1C098B654300216F16 /* xlisp */ = {
- isa = PBXGroup;
- children = (
- 17C8BF1E098B654300216F16 /* extern.c */,
- 17C8BF1F098B654300216F16 /* extern.h */,
- 17C8BF21098B654300216F16 /* osdefs.h */,
- 17C8BF22098B654300216F16 /* osptrs.h */,
- 17C8BF23098B654300216F16 /* path.c */,
- 17C8BF25098B654300216F16 /* xlbfun.c */,
- 17C8BF27098B654300216F16 /* xlcont.c */,
- 17C8BF29098B654300216F16 /* xldbug.c */,
- 17C8BF2B098B654300216F16 /* xldmem.c */,
- 17C8BF2C098B654300216F16 /* xldmem.h */,
- 17C8BF2E098B654300216F16 /* xleval.c */,
- 17C8BF31098B654300216F16 /* xlfio.c */,
- 17C8BF33098B654300216F16 /* xlftab.c */,
- 17C8BF35098B654300216F16 /* xlglob.c */,
- 17C8BF37098B654300216F16 /* xlimage.c */,
- 17C8BF39098B654300216F16 /* xlinit.c */,
- 17C8BF3B098B654300216F16 /* xlio.c */,
- 17C8BF3D098B654300216F16 /* xlisp.c */,
- 17C8BF3E098B654300216F16 /* xlisp.h */,
- 17C8BF40098B654300216F16 /* xljump.c */,
- 17C8BF42098B654300216F16 /* xllist.c */,
- 17C8BF44098B654300216F16 /* xlmath.c */,
- 17C8BF46098B654300216F16 /* xlobj.c */,
- 17C8BF48098B654300216F16 /* xlpp.c */,
- 17C8BF4A098B654300216F16 /* xlprin.c */,
- 17C8BF4C098B654300216F16 /* xlread.c */,
- 17C8BF4E098B654400216F16 /* xlstr.c */,
- 17C8BF50098B654400216F16 /* xlsubr.c */,
- 17C8BF52098B654400216F16 /* xlsym.c */,
- 17C8BF54098B654400216F16 /* xlsys.c */,
+ 2800FDF30FF32204005CA9E5 /* porttime */ = {
+ isa = PBXGroup;
+ children = (
+ 2800FE000FF322A1005CA9E5 /* porttime.h */,
+ 2800FE010FF322A1005CA9E5 /* ptmacosx_mach.c */,
);
- path = xlisp;
+ name = porttime;
sourceTree = "<group>";
};
- 1841B4FD0E00AD3D00F386E9 /* ondemand */ = {
+ 2808026A0F32C11F0021001D /* rawwaves */ = {
isa = PBXGroup;
children = (
- 1841B5000E00AD6E00F386E9 /* ODComputeSummaryTask.cpp */,
- 1841B5010E00AD6E00F386E9 /* ODComputeSummaryTask.h */,
- 186CCE6E0E51F48500659159 /* ODDecodeFlacTask.cpp */,
- 186CCE6F0E51F48500659159 /* ODDecodeFlacTask.h */,
- 186CCE700E51F48500659159 /* ODDecodeTask.cpp */,
- 186CCE710E51F48500659159 /* ODDecodeTask.h */,
- 1841B5020E00AD6E00F386E9 /* ODManager.cpp */,
- 1841B5030E00AD6E00F386E9 /* ODManager.h */,
- 1841B5040E00AD6E00F386E9 /* ODTask.cpp */,
- 1841B5050E00AD6E00F386E9 /* ODTask.h */,
- 1841B5060E00AD6E00F386E9 /* ODTaskThread.cpp */,
- 1841B5070E00AD6E00F386E9 /* ODTaskThread.h */,
- 1841B5080E00AD6E00F386E9 /* ODWaveTrackTaskQueue.cpp */,
- 1841B5090E00AD6E00F386E9 /* ODWaveTrackTaskQueue.h */,
- );
- name = ondemand;
- sourceTree = "<group>";
+ 2808026B0F32C11F0021001D /* mand1.raw */,
+ 2808026C0F32C11F0021001D /* mand10.raw */,
+ 2808026D0F32C11F0021001D /* mand11.raw */,
+ 2808026E0F32C11F0021001D /* mand12.raw */,
+ 2808026F0F32C11F0021001D /* mand2.raw */,
+ 280802700F32C11F0021001D /* mand3.raw */,
+ 280802710F32C11F0021001D /* mand4.raw */,
+ 280802720F32C11F0021001D /* mand5.raw */,
+ 280802730F32C11F0021001D /* mand6.raw */,
+ 280802740F32C11F0021001D /* mand7.raw */,
+ 280802750F32C11F0021001D /* mand8.raw */,
+ 280802760F32C11F0021001D /* mand9.raw */,
+ 280802770F32C11F0021001D /* mandpluk.raw */,
+ 280802780F32C11F0021001D /* marmstk1.raw */,
+ 280802790F32C11F0021001D /* sinewave.raw */,
+ );
+ name = rawwaves;
+ path = ../nyquist/rawwaves;
+ sourceTree = SOURCE_ROOT;
};
280DE5D80E163488006159ED /* liblrdf */ = {
isa = PBXGroup;
@@ -4474,6 +4816,317 @@
path = unix;
sourceTree = "<group>";
};
+ 283752F90F4286C100364787 /* taglib */ = {
+ isa = PBXGroup;
+ children = (
+ 283752FA0F4286E000364787 /* taglib */,
+ 283754A50F428A8E00364787 /* config.h */,
+ );
+ name = taglib;
+ sourceTree = "<group>";
+ };
+ 283752FA0F4286E000364787 /* taglib */ = {
+ isa = PBXGroup;
+ children = (
+ 283752FB0F4286E000364787 /* ape */,
+ 283753060F4286E000364787 /* asf */,
+ 283753170F4286E000364787 /* flac */,
+ 283753210F4286E000364787 /* mp4 */,
+ 2837532F0F4286E000364787 /* mpc */,
+ 283753370F4286E000364787 /* mpeg */,
+ 2837537B0F4286E100364787 /* ogg */,
+ 2837539D0F4286E100364787 /* riff */,
+ 283753120F4286E000364787 /* audioproperties.cpp */,
+ 283753130F4286E000364787 /* audioproperties.h */,
+ 283753150F4286E000364787 /* fileref.cpp */,
+ 283753160F4286E000364787 /* fileref.h */,
+ 283753B30F4286E100364787 /* tag.cpp */,
+ 283753B40F4286E100364787 /* tag.h */,
+ 283753B60F4286E100364787 /* taglib_export.h */,
+ 283753B70F4286E100364787 /* tagunion.cpp */,
+ 283753B80F4286E100364787 /* tagunion.h */,
+ 283753B90F4286E100364787 /* toolkit */,
+ 283753D00F4286E100364787 /* trueaudio */,
+ 283753D80F4286E100364787 /* wavpack */,
+ );
+ name = taglib;
+ path = taglib/taglib;
+ sourceTree = "<group>";
+ };
+ 283752FB0F4286E000364787 /* ape */ = {
+ isa = PBXGroup;
+ children = (
+ 283752FD0F4286E000364787 /* apefooter.cpp */,
+ 283752FE0F4286E000364787 /* apefooter.h */,
+ 283752FF0F4286E000364787 /* apeitem.cpp */,
+ 283753000F4286E000364787 /* apeitem.h */,
+ 283753010F4286E000364787 /* apetag.cpp */,
+ 283753020F4286E000364787 /* apetag.h */,
+ );
+ path = ape;
+ sourceTree = "<group>";
+ };
+ 283753060F4286E000364787 /* asf */ = {
+ isa = PBXGroup;
+ children = (
+ 283753070F4286E000364787 /* asfattribute.cpp */,
+ 283753080F4286E000364787 /* asfattribute.h */,
+ 283753090F4286E000364787 /* asffile.cpp */,
+ 2837530A0F4286E000364787 /* asffile.h */,
+ 2837530B0F4286E000364787 /* asfproperties.cpp */,
+ 2837530C0F4286E000364787 /* asfproperties.h */,
+ 2837530D0F4286E000364787 /* asftag.cpp */,
+ 2837530E0F4286E000364787 /* asftag.h */,
+ );
+ path = asf;
+ sourceTree = "<group>";
+ };
+ 283753170F4286E000364787 /* flac */ = {
+ isa = PBXGroup;
+ children = (
+ 283753190F4286E000364787 /* flacfile.cpp */,
+ 2837531A0F4286E000364787 /* flacfile.h */,
+ 2837531B0F4286E000364787 /* flacproperties.cpp */,
+ 2837531C0F4286E000364787 /* flacproperties.h */,
+ );
+ path = flac;
+ sourceTree = "<group>";
+ };
+ 283753210F4286E000364787 /* mp4 */ = {
+ isa = PBXGroup;
+ children = (
+ 283753250F4286E000364787 /* mp4atom.cpp */,
+ 283753260F4286E000364787 /* mp4atom.h */,
+ 283753270F4286E000364787 /* mp4file.cpp */,
+ 283753280F4286E000364787 /* mp4file.h */,
+ 283753290F4286E000364787 /* mp4item.cpp */,
+ 2837532A0F4286E000364787 /* mp4item.h */,
+ 2837532B0F4286E000364787 /* mp4properties.cpp */,
+ 2837532C0F4286E000364787 /* mp4properties.h */,
+ 2837532D0F4286E000364787 /* mp4tag.cpp */,
+ 2837532E0F4286E000364787 /* mp4tag.h */,
+ );
+ path = mp4;
+ sourceTree = "<group>";
+ };
+ 2837532F0F4286E000364787 /* mpc */ = {
+ isa = PBXGroup;
+ children = (
+ 283753330F4286E000364787 /* mpcfile.cpp */,
+ 283753340F4286E000364787 /* mpcfile.h */,
+ 283753350F4286E000364787 /* mpcproperties.cpp */,
+ 283753360F4286E000364787 /* mpcproperties.h */,
+ );
+ path = mpc;
+ sourceTree = "<group>";
+ };
+ 283753370F4286E000364787 /* mpeg */ = {
+ isa = PBXGroup;
+ children = (
+ 283753390F4286E000364787 /* id3v1 */,
+ 283753410F4286E100364787 /* id3v2 */,
+ 283753730F4286E100364787 /* mpegfile.cpp */,
+ 283753740F4286E100364787 /* mpegfile.h */,
+ 283753750F4286E100364787 /* mpegheader.cpp */,
+ 283753760F4286E100364787 /* mpegheader.h */,
+ 283753770F4286E100364787 /* mpegproperties.cpp */,
+ 283753780F4286E100364787 /* mpegproperties.h */,
+ 283753790F4286E100364787 /* xingheader.cpp */,
+ 2837537A0F4286E100364787 /* xingheader.h */,
+ );
+ path = mpeg;
+ sourceTree = "<group>";
+ };
+ 283753390F4286E000364787 /* id3v1 */ = {
+ isa = PBXGroup;
+ children = (
+ 2837533B0F4286E000364787 /* id3v1genres.cpp */,
+ 2837533C0F4286E100364787 /* id3v1genres.h */,
+ 2837533D0F4286E100364787 /* id3v1tag.cpp */,
+ 2837533E0F4286E100364787 /* id3v1tag.h */,
+ );
+ path = id3v1;
+ sourceTree = "<group>";
+ };
+ 283753410F4286E100364787 /* id3v2 */ = {
+ isa = PBXGroup;
+ children = (
+ 283753430F4286E100364787 /* frames */,
+ 283753610F4286E100364787 /* id3v2extendedheader.cpp */,
+ 283753620F4286E100364787 /* id3v2extendedheader.h */,
+ 283753630F4286E100364787 /* id3v2footer.cpp */,
+ 283753640F4286E100364787 /* id3v2footer.h */,
+ 283753650F4286E100364787 /* id3v2frame.cpp */,
+ 283753660F4286E100364787 /* id3v2frame.h */,
+ 283753670F4286E100364787 /* id3v2framefactory.cpp */,
+ 283753680F4286E100364787 /* id3v2framefactory.h */,
+ 283753690F4286E100364787 /* id3v2header.cpp */,
+ 2837536A0F4286E100364787 /* id3v2header.h */,
+ 2837536B0F4286E100364787 /* id3v2synchdata.cpp */,
+ 2837536C0F4286E100364787 /* id3v2synchdata.h */,
+ 2837536D0F4286E100364787 /* id3v2tag.cpp */,
+ 2837536E0F4286E100364787 /* id3v2tag.h */,
+ );
+ path = id3v2;
+ sourceTree = "<group>";
+ };
+ 283753430F4286E100364787 /* frames */ = {
+ isa = PBXGroup;
+ children = (
+ 283753440F4286E100364787 /* attachedpictureframe.cpp */,
+ 283753450F4286E100364787 /* attachedpictureframe.h */,
+ 283753470F4286E100364787 /* commentsframe.cpp */,
+ 283753480F4286E100364787 /* commentsframe.h */,
+ 283753490F4286E100364787 /* generalencapsulatedobjectframe.cpp */,
+ 2837534A0F4286E100364787 /* generalencapsulatedobjectframe.h */,
+ 2837534D0F4286E100364787 /* popularimeterframe.cpp */,
+ 2837534E0F4286E100364787 /* popularimeterframe.h */,
+ 2837534F0F4286E100364787 /* privateframe.cpp */,
+ 283753500F4286E100364787 /* privateframe.h */,
+ 283753510F4286E100364787 /* relativevolumeframe.cpp */,
+ 283753520F4286E100364787 /* relativevolumeframe.h */,
+ 283753530F4286E100364787 /* textidentificationframe.cpp */,
+ 283753540F4286E100364787 /* textidentificationframe.h */,
+ 283753550F4286E100364787 /* uniquefileidentifierframe.cpp */,
+ 283753560F4286E100364787 /* uniquefileidentifierframe.h */,
+ 283753570F4286E100364787 /* unknownframe.cpp */,
+ 283753580F4286E100364787 /* unknownframe.h */,
+ 283753590F4286E100364787 /* unsynchronizedlyricsframe.cpp */,
+ 2837535A0F4286E100364787 /* unsynchronizedlyricsframe.h */,
+ 2837535B0F4286E100364787 /* urllinkframe.cpp */,
+ 2837535C0F4286E100364787 /* urllinkframe.h */,
+ );
+ path = frames;
+ sourceTree = "<group>";
+ };
+ 2837537B0F4286E100364787 /* ogg */ = {
+ isa = PBXGroup;
+ children = (
+ 2837537D0F4286E100364787 /* flac */,
+ 283753850F4286E100364787 /* oggfile.cpp */,
+ 283753860F4286E100364787 /* oggfile.h */,
+ 283753870F4286E100364787 /* oggpage.cpp */,
+ 283753880F4286E100364787 /* oggpage.h */,
+ 283753890F4286E100364787 /* oggpageheader.cpp */,
+ 2837538A0F4286E100364787 /* oggpageheader.h */,
+ 2837538B0F4286E100364787 /* speex */,
+ 283753930F4286E100364787 /* vorbis */,
+ 2837539B0F4286E100364787 /* xiphcomment.cpp */,
+ 2837539C0F4286E100364787 /* xiphcomment.h */,
+ );
+ path = ogg;
+ sourceTree = "<group>";
+ };
+ 2837537D0F4286E100364787 /* flac */ = {
+ isa = PBXGroup;
+ children = (
+ 283753810F4286E100364787 /* oggflacfile.cpp */,
+ 283753820F4286E100364787 /* oggflacfile.h */,
+ );
+ path = flac;
+ sourceTree = "<group>";
+ };
+ 2837538B0F4286E100364787 /* speex */ = {
+ isa = PBXGroup;
+ children = (
+ 2837538F0F4286E100364787 /* speexfile.cpp */,
+ 283753900F4286E100364787 /* speexfile.h */,
+ 283753910F4286E100364787 /* speexproperties.cpp */,
+ 283753920F4286E100364787 /* speexproperties.h */,
+ );
+ path = speex;
+ sourceTree = "<group>";
+ };
+ 283753930F4286E100364787 /* vorbis */ = {
+ isa = PBXGroup;
+ children = (
+ 283753970F4286E100364787 /* vorbisfile.cpp */,
+ 283753980F4286E100364787 /* vorbisfile.h */,
+ 283753990F4286E100364787 /* vorbisproperties.cpp */,
+ 2837539A0F4286E100364787 /* vorbisproperties.h */,
+ );
+ path = vorbis;
+ sourceTree = "<group>";
+ };
+ 2837539D0F4286E100364787 /* riff */ = {
+ isa = PBXGroup;
+ children = (
+ 2837539E0F4286E100364787 /* aiff */,
+ 283753A90F4286E100364787 /* rifffile.cpp */,
+ 283753AA0F4286E100364787 /* rifffile.h */,
+ 283753AB0F4286E100364787 /* wav */,
+ );
+ path = riff;
+ sourceTree = "<group>";
+ };
+ 2837539E0F4286E100364787 /* aiff */ = {
+ isa = PBXGroup;
+ children = (
+ 2837539F0F4286E100364787 /* aifffile.cpp */,
+ 283753A00F4286E100364787 /* aifffile.h */,
+ 283753A10F4286E100364787 /* aiffproperties.cpp */,
+ 283753A20F4286E100364787 /* aiffproperties.h */,
+ );
+ path = aiff;
+ sourceTree = "<group>";
+ };
+ 283753AB0F4286E100364787 /* wav */ = {
+ isa = PBXGroup;
+ children = (
+ 283753AF0F4286E100364787 /* wavfile.cpp */,
+ 283753B00F4286E100364787 /* wavfile.h */,
+ 283753B10F4286E100364787 /* wavproperties.cpp */,
+ 283753B20F4286E100364787 /* wavproperties.h */,
+ );
+ path = wav;
+ sourceTree = "<group>";
+ };
+ 283753B90F4286E100364787 /* toolkit */ = {
+ isa = PBXGroup;
+ children = (
+ 283753BD0F4286E100364787 /* taglib.h */,
+ 283753BE0F4286E100364787 /* tbytevector.cpp */,
+ 283753BF0F4286E100364787 /* tbytevector.h */,
+ 283753C00F4286E100364787 /* tbytevectorlist.cpp */,
+ 283753C10F4286E100364787 /* tbytevectorlist.h */,
+ 283753C20F4286E100364787 /* tdebug.cpp */,
+ 283753C30F4286E100364787 /* tdebug.h */,
+ 283753C40F4286E100364787 /* tfile.cpp */,
+ 283753C50F4286E100364787 /* tfile.h */,
+ 283753C60F4286E100364787 /* tlist.h */,
+ 283753C80F4286E100364787 /* tmap.h */,
+ 283753CA0F4286E100364787 /* tstring.cpp */,
+ 283753CB0F4286E100364787 /* tstring.h */,
+ 283753CC0F4286E100364787 /* tstringlist.cpp */,
+ 283753CD0F4286E100364787 /* tstringlist.h */,
+ 283753CE0F4286E100364787 /* unicode.cpp */,
+ 283753CF0F4286E100364787 /* unicode.h */,
+ );
+ path = toolkit;
+ sourceTree = "<group>";
+ };
+ 283753D00F4286E100364787 /* trueaudio */ = {
+ isa = PBXGroup;
+ children = (
+ 283753D40F4286E100364787 /* trueaudiofile.cpp */,
+ 283753D50F4286E100364787 /* trueaudiofile.h */,
+ 283753D60F4286E100364787 /* trueaudioproperties.cpp */,
+ 283753D70F4286E100364787 /* trueaudioproperties.h */,
+ );
+ path = trueaudio;
+ sourceTree = "<group>";
+ };
+ 283753D80F4286E100364787 /* wavpack */ = {
+ isa = PBXGroup;
+ children = (
+ 283753DC0F4286E100364787 /* wavpackfile.cpp */,
+ 283753DD0F4286E100364787 /* wavpackfile.h */,
+ 283753DE0F4286E100364787 /* wavpackproperties.cpp */,
+ 283753DF0F4286E100364787 /* wavpackproperties.h */,
+ );
+ path = wavpack;
+ sourceTree = "<group>";
+ };
283B3D3E0BC21EBE00FA01D5 /* FileDialog */ = {
isa = PBXGroup;
children = (
@@ -4560,6 +5213,392 @@
name = "mod-script-pipe";
sourceTree = "<group>";
};
+ 284A7B8E0F3156B4001D7A67 /* nyquist */ = {
+ isa = PBXGroup;
+ children = (
+ 284A80370F3158A1001D7A67 /* cmt */,
+ 28A4E29B0F6030F200E9E7F2 /* ffts */,
+ 284A806B0F3158A1001D7A67 /* nyqsrc */,
+ 284A80C80F3158A1001D7A67 /* nyqstk */,
+ 284A817C0F3158A2001D7A67 /* tran */,
+ 284A827A0F3158A2001D7A67 /* xlisp */,
+ );
+ path = nyquist;
+ sourceTree = "<group>";
+ };
+ 284A80370F3158A1001D7A67 /* cmt */ = {
+ isa = PBXGroup;
+ children = (
+ 284A80380F3158A1001D7A67 /* cext.c */,
+ 28EB74AC0FDC2DF50046D78E /* cext.h */,
+ 284A803A0F3158A1001D7A67 /* cleanup.c */,
+ 28EB74AB0FDC2DF50046D78E /* cleanup.h */,
+ 284A803C0F3158A1001D7A67 /* cmdline.c */,
+ 28EB74AA0FDC2DF50046D78E /* cmdline.h */,
+ 284A803E0F3158A1001D7A67 /* cmtcmd.c */,
+ 28EB74A90FDC2DF50046D78E /* cmtcmd.h */,
+ 284A80440F3158A1001D7A67 /* mem.c */,
+ 28EB74A80FDC2DF50046D78E /* mem.h */,
+ 284A804A0F3158A1001D7A67 /* midifile.c */,
+ 28EB74A70FDC2DF50046D78E /* midifile.h */,
+ 284A804C0F3158A1001D7A67 /* midifns.c */,
+ 28EB74A60FDC2DF50046D78E /* midifns.h */,
+ 284A80500F3158A1001D7A67 /* moxc.c */,
+ 28EB74A50FDC2DF50046D78E /* moxc.h */,
+ 284A80540F3158A1001D7A67 /* record.c */,
+ 28EB74A40FDC2DF50046D78E /* record.h */,
+ 284A80560F3158A1001D7A67 /* seq.c */,
+ 28EB74A30FDC2DF50046D78E /* seq.h */,
+ 284A80590F3158A1001D7A67 /* seqmread.c */,
+ 28EB74A20FDC2DF50046D78E /* seqmread.h */,
+ 284A805B0F3158A1001D7A67 /* seqmwrite.c */,
+ 28EB74A10FDC2DF50046D78E /* seqmwrite.h */,
+ 284A805D0F3158A1001D7A67 /* seqread.c */,
+ 28EB74A00FDC2DF50046D78E /* seqread.h */,
+ 284A805F0F3158A1001D7A67 /* seqwrite.c */,
+ 28EB749F0FDC2DF50046D78E /* seqwrite.h */,
+ 284A80620F3158A1001D7A67 /* tempomap.c */,
+ 28EB749E0FDC2DF50046D78E /* tempomap.h */,
+ 284A80640F3158A1001D7A67 /* timebase.c */,
+ 28EB749D0FDC2DF50046D78E /* timebase.h */,
+ 284A80660F3158A1001D7A67 /* userio.c */,
+ 28EB749C0FDC2DF50046D78E /* userio.h */,
+ );
+ path = cmt;
+ sourceTree = "<group>";
+ };
+ 284A806B0F3158A1001D7A67 /* nyqsrc */ = {
+ isa = PBXGroup;
+ children = (
+ 284A806C0F3158A1001D7A67 /* add.c */,
+ 28EB74BE0FDC2EDE0046D78E /* add.h */,
+ 284A806E0F3158A1001D7A67 /* avg.c */,
+ 28EB74BF0FDC2EDE0046D78E /* avg.h */,
+ 284A80700F3158A1001D7A67 /* compose.c */,
+ 28EB74C00FDC2EDE0046D78E /* compose.h */,
+ 284A80720F3158A1001D7A67 /* convolve.c */,
+ 28EB74C10FDC2EDE0046D78E /* convolve.h */,
+ 28EB74C20FDC2EDE0046D78E /* cque.h */,
+ 284A80750F3158A1001D7A67 /* debug.c */,
+ 28EB74C30FDC2EDE0046D78E /* debug.h */,
+ 284A80770F3158A1001D7A67 /* downsample.c */,
+ 28EB74C40FDC2EDE0046D78E /* downsample.h */,
+ 284A807C0F3158A1001D7A67 /* falloc.c */,
+ 28EB74C50FDC2EDE0046D78E /* falloc.h */,
+ 284A807E0F3158A1001D7A67 /* ffilterkit.c */,
+ 28EB74C60FDC2EDE0046D78E /* ffilterkit.h */,
+ 284A80810F3158A1001D7A67 /* fft.c */,
+ 28EB74C70FDC2EDE0046D78E /* fft.h */,
+ 284A80870F3158A1001D7A67 /* handlers.c */,
+ 284A80880F3158A1001D7A67 /* inverse.c */,
+ 28EB74C80FDC2EDE0046D78E /* inverse.h */,
+ 284A808A0F3158A1001D7A67 /* local.c */,
+ 28EB74C90FDC2EDE0046D78E /* localdefs.h */,
+ 28EB74CA0FDC2EDE0046D78E /* localptrs.h */,
+ 284A808D0F3158A1001D7A67 /* lpanal.c */,
+ 28EB74CB0FDC2EDE0046D78E /* lpanal.h */,
+ 284A808F0F3158A1001D7A67 /* multiread.c */,
+ 28EB74CC0FDC2EDE0046D78E /* multiread.h */,
+ 284A80910F3158A1001D7A67 /* multiseq.c */,
+ 28EB74CD0FDC2EDE0046D78E /* multiseq.h */,
+ 284A80990F3158A1001D7A67 /* probe.c */,
+ 28EB74CE0FDC2EDE0046D78E /* probe.h */,
+ 28EB74D20FDC2EDE0046D78E /* seqext.h */,
+ 28EB74D50FDC2EDE0046D78E /* seqinterf.h */,
+ 284A809B0F3158A1001D7A67 /* resamp.c */,
+ 28EB74CF0FDC2EDE0046D78E /* resamp.h */,
+ 284A809D0F3158A1001D7A67 /* resampv.c */,
+ 28EB74D00FDC2EDE0046D78E /* resampv.h */,
+ 284A80A00F3158A1001D7A67 /* samples.c */,
+ 28EB74D10FDC2EDE0046D78E /* samples.h */,
+ 284A80A20F3158A1001D7A67 /* seqext.c */,
+ 284A80A60F3158A1001D7A67 /* seqfnint.c */,
+ 28EB74D30FDC2EDE0046D78E /* seqfnintdefs.h */,
+ 28EB74D40FDC2EDE0046D78E /* seqfnintptrs.h */,
+ 284A80AA0F3158A1001D7A67 /* seqinterf.c */,
+ 284A80AC0F3158A1001D7A67 /* sliders.c */,
+ 28EB74D60FDC2EDE0046D78E /* sliders.h */,
+ 284A80B20F3158A1001D7A67 /* sndfnint.c */,
+ 28EB74D70FDC2EDE0046D78E /* sndfnintdefs.h */,
+ 28EB74D80FDC2EDE0046D78E /* sndfnintptrs.h */,
+ 284A80B60F3158A1001D7A67 /* sndmax.c */,
+ 28EB74D90FDC2EDE0046D78E /* sndmax.h */,
+ 284A80B80F3158A1001D7A67 /* sndread.c */,
+ 28EB74DA0FDC2EDE0046D78E /* sndread.h */,
+ 284A80BA0F3158A1001D7A67 /* sndseq.c */,
+ 28EB74DB0FDC2EDE0046D78E /* sndseq.h */,
+ 284A80BF0F3158A1001D7A67 /* sndwritepa.c */,
+ 284A80C00F3158A1001D7A67 /* sound.c */,
+ 28EB74DC0FDC2EDE0046D78E /* sound.h */,
+ 284A80C20F3158A1001D7A67 /* stats.c */,
+ 284A80C40F3158A1001D7A67 /* trigger.c */,
+ 28EB74DD0FDC2EDE0046D78E /* trigger.h */,
+ 284A80C60F3158A1001D7A67 /* yin.c */,
+ 28EB74DE0FDC2EDE0046D78E /* yin.h */,
+ );
+ path = nyqsrc;
+ sourceTree = "<group>";
+ };
+ 284A80C80F3158A1001D7A67 /* nyqstk */ = {
+ isa = PBXGroup;
+ children = (
+ 28EB75030FDC2FB10046D78E /* include */,
+ 284A80F50F3158A1001D7A67 /* src */,
+ 284A80F30F3158A1001D7A67 /* instr.cpp */,
+ 28EB752C0FDC2FB10046D78E /* instr.h */,
+ 284A811D0F3158A1001D7A67 /* stkinit.cpp */,
+ 28EB752D0FDC2FB10046D78E /* stkinit.h */,
+ 284A811F0F3158A1001D7A67 /* stkint.cpp */,
+ 28EB752E0FDC2FB10046D78E /* stkint.h */,
+ );
+ path = nyqstk;
+ sourceTree = "<group>";
+ };
+ 284A80F50F3158A1001D7A67 /* src */ = {
+ isa = PBXGroup;
+ children = (
+ 284A80F60F3158A1001D7A67 /* ADSR.cpp */,
+ 284A80F70F3158A1001D7A67 /* BandedWG.cpp */,
+ 284A80F80F3158A1001D7A67 /* BiQuad.cpp */,
+ 284A80F90F3158A1001D7A67 /* Bowed.cpp */,
+ 284A80FA0F3158A1001D7A67 /* BowTable.cpp */,
+ 284A80FB0F3158A1001D7A67 /* Chorus.cpp */,
+ 284A80FC0F3158A1001D7A67 /* Clarinet.cpp */,
+ 284A80FD0F3158A1001D7A67 /* Delay.cpp */,
+ 284A80FE0F3158A1001D7A67 /* DelayA.cpp */,
+ 284A80FF0F3158A1001D7A67 /* DelayL.cpp */,
+ 284A81000F3158A1001D7A67 /* Effect.cpp */,
+ 284A81010F3158A1001D7A67 /* Envelope.cpp */,
+ 284A81020F3158A1001D7A67 /* FileRead.cpp */,
+ 284A81030F3158A1001D7A67 /* FileWvIn.cpp */,
+ 284A81040F3158A1001D7A67 /* Filter.cpp */,
+ 284A81050F3158A1001D7A67 /* Flute.cpp */,
+ 284A81060F3158A1001D7A67 /* Function.cpp */,
+ 284A81070F3158A1001D7A67 /* Generator.cpp */,
+ 284A81080F3158A1001D7A67 /* Instrmnt.cpp */,
+ 284A81090F3158A1001D7A67 /* JCRev.cpp */,
+ 284A810A0F3158A1001D7A67 /* JetTable.cpp */,
+ 284A810B0F3158A1001D7A67 /* Mandolin.cpp */,
+ 284A810C0F3158A1001D7A67 /* Modal.cpp */,
+ 284A810D0F3158A1001D7A67 /* ModalBar.cpp */,
+ 284A810E0F3158A1001D7A67 /* Noise.cpp */,
+ 284A810F0F3158A1001D7A67 /* NRev.cpp */,
+ 284A81100F3158A1001D7A67 /* OnePole.cpp */,
+ 284A81110F3158A1001D7A67 /* OneZero.cpp */,
+ 284A81120F3158A1001D7A67 /* PitShift.cpp */,
+ 284A81130F3158A1001D7A67 /* PluckTwo.cpp */,
+ 284A81140F3158A1001D7A67 /* PoleZero.cpp */,
+ 284A81150F3158A1001D7A67 /* PRCRev.cpp */,
+ 284A81160F3158A1001D7A67 /* ReedTable.cpp */,
+ 284A81170F3158A1001D7A67 /* Saxofony.cpp */,
+ 284A81180F3158A1001D7A67 /* SineWave.cpp */,
+ 284A81190F3158A1001D7A67 /* Sitar.cpp */,
+ 284A811A0F3158A1001D7A67 /* Stk.cpp */,
+ 284A811B0F3158A1001D7A67 /* WaveLoop.cpp */,
+ 284A811C0F3158A1001D7A67 /* WvIn.cpp */,
+ );
+ path = src;
+ sourceTree = "<group>";
+ };
+ 284A817C0F3158A2001D7A67 /* tran */ = {
+ isa = PBXGroup;
+ children = (
+ 284A817E0F3158A2001D7A67 /* abs.c */,
+ 28EB75590FDC300C0046D78E /* abs.h */,
+ 284A81810F3158A2001D7A67 /* allpoles.c */,
+ 28EB755A0FDC300C0046D78E /* allpoles.h */,
+ 284A81840F3158A2001D7A67 /* alpass.c */,
+ 28EB755B0FDC300C0046D78E /* alpass.h */,
+ 284A81870F3158A2001D7A67 /* alpasscv.c */,
+ 28EB755C0FDC300C0046D78E /* alpasscv.h */,
+ 284A818D0F3158A2001D7A67 /* alpassvv.c */,
+ 28EB755D0FDC300C0046D78E /* alpassvv.h */,
+ 284A81900F3158A2001D7A67 /* amosc.c */,
+ 28EB755E0FDC300C0046D78E /* amosc.h */,
+ 284A81930F3158A2001D7A67 /* areson.c */,
+ 28EB755F0FDC300C0046D78E /* areson.h */,
+ 284A81960F3158A2001D7A67 /* aresoncv.c */,
+ 28EB75600FDC300C0046D78E /* aresoncv.h */,
+ 284A81990F3158A2001D7A67 /* aresonvc.c */,
+ 28EB75610FDC300C0046D78E /* aresonvc.h */,
+ 284A819C0F3158A2001D7A67 /* aresonvv.c */,
+ 28EB75620FDC300C0046D78E /* aresonvv.h */,
+ 284A819F0F3158A2001D7A67 /* atone.c */,
+ 28EB75630FDC300C0046D78E /* atone.h */,
+ 284A81A20F3158A2001D7A67 /* atonev.c */,
+ 28EB75640FDC300C0046D78E /* atonev.h */,
+ 284A81A50F3158A2001D7A67 /* biquadfilt.c */,
+ 28EB75650FDC300C0046D78E /* biquadfilt.h */,
+ 284A81A80F3158A2001D7A67 /* buzz.c */,
+ 28EB75660FDC300C0046D78E /* buzz.h */,
+ 284A81AB0F3158A2001D7A67 /* chase.c */,
+ 28EB75750FDC30C60046D78E /* chase.h */,
+ 284A81AE0F3158A2001D7A67 /* clip.c */,
+ 28EB75760FDC30C60046D78E /* clip.h */,
+ 284A81B10F3158A2001D7A67 /* congen.c */,
+ 28EB75770FDC30C60046D78E /* congen.h */,
+ 284A81B40F3158A2001D7A67 /* const.c */,
+ 28EB75780FDC30C60046D78E /* const.h */,
+ 284A81B80F3158A2001D7A67 /* coterm.c */,
+ 28EB75790FDC30C60046D78E /* coterm.h */,
+ 284A81BC0F3158A2001D7A67 /* delaycc.c */,
+ 28EB757A0FDC30C60046D78E /* delaycc.h */,
+ 284A81BF0F3158A2001D7A67 /* delaycv.c */,
+ 28EB757B0FDC30C60046D78E /* delaycv.h */,
+ 284A81C40F3158A2001D7A67 /* eqbandvvv.c */,
+ 28EB757C0FDC30C60046D78E /* eqbandvvv.h */,
+ 284A81C70F3158A2001D7A67 /* exp.c */,
+ 28EB757D0FDC30C60046D78E /* exp.h */,
+ 284A81CB0F3158A2001D7A67 /* fmfb.c */,
+ 28EB757E0FDC30C60046D78E /* fmfb.h */,
+ 284A81CE0F3158A2001D7A67 /* fmfbv.c */,
+ 28EB757F0FDC30C60046D78E /* fmfbv.h */,
+ 284A81D10F3158A2001D7A67 /* fmosc.c */,
+ 28EB75800FDC30C60046D78E /* fmosc.h */,
+ 284A81D40F3158A2001D7A67 /* follow.c */,
+ 28EB75810FDC30C60046D78E /* follow.h */,
+ 284A81D70F3158A2001D7A67 /* fromarraystream.c */,
+ 28EB75820FDC30C60046D78E /* fromarraystream.h */,
+ 284A81DA0F3158A2001D7A67 /* fromobject.c */,
+ 28EB75830FDC30C60046D78E /* fromobject.h */,
+ 284A81DD0F3158A2001D7A67 /* gate.c */,
+ 28EB75840FDC30C60046D78E /* gate.h */,
+ 284A81E10F3158A2001D7A67 /* ifft.c */,
+ 28EB75850FDC30C60046D78E /* ifft.h */,
+ 284A81E60F3158A2001D7A67 /* instrbanded.c */,
+ 28EB75860FDC30C60046D78E /* instrbanded.h */,
+ 284A81E90F3158A2001D7A67 /* instrbow.c */,
+ 28EB75870FDC30C60046D78E /* instrbow.h */,
+ 284A81EC0F3158A2001D7A67 /* instrbowedfreq.c */,
+ 28EB75880FDC30C60046D78E /* instrbowedfreq.h */,
+ 284A81EF0F3158A2001D7A67 /* instrclar.c */,
+ 28EB75890FDC30C60046D78E /* instrclar.h */,
+ 284A81F20F3158A2001D7A67 /* instrclarall.c */,
+ 28EB758A0FDC30C60046D78E /* instrclarall.h */,
+ 284A81F50F3158A2001D7A67 /* instrclarfreq.c */,
+ 28EB758B0FDC30C60046D78E /* instrclarfreq.h */,
+ 284A81F80F3158A2001D7A67 /* instrflute.c */,
+ 28EB758C0FDC30C60046D78E /* instrflute.h */,
+ 284A81FB0F3158A2001D7A67 /* instrfluteall.c */,
+ 28EB758D0FDC30C60046D78E /* instrfluteall.h */,
+ 284A81FE0F3158A2001D7A67 /* instrflutefreq.c */,
+ 28EB758E0FDC30C60046D78E /* instrflutefreq.h */,
+ 284A82010F3158A2001D7A67 /* instrmandolin.c */,
+ 28EB758F0FDC30C60046D78E /* instrmandolin.h */,
+ 284A82040F3158A2001D7A67 /* instrmodalbar.c */,
+ 28EB75900FDC30C60046D78E /* instrmodalbar.h */,
+ 284A82070F3158A2001D7A67 /* instrsax.c */,
+ 28EB75910FDC30C60046D78E /* instrsax.h */,
+ 284A820A0F3158A2001D7A67 /* instrsaxall.c */,
+ 28EB75920FDC30C60046D78E /* instrsaxall.h */,
+ 284A820D0F3158A2001D7A67 /* instrsaxfreq.c */,
+ 28EB75930FDC30C60046D78E /* instrsaxfreq.h */,
+ 284A82100F3158A2001D7A67 /* instrsitar.c */,
+ 28EB75940FDC30C60046D78E /* instrsitar.h */,
+ 284A82130F3158A2001D7A67 /* integrate.c */,
+ 28EB75950FDC30C60046D78E /* integrate.h */,
+ 284A82160F3158A2001D7A67 /* log.c */,
+ 28EB75960FDC30C60046D78E /* log.h */,
+ 284A82190F3158A2001D7A67 /* lpreson.c */,
+ 28EB75970FDC30C60046D78E /* lpreson.h */,
+ 284A821C0F3158A2001D7A67 /* maxv.c */,
+ 28EB75980FDC30C60046D78E /* maxv.h */,
+ 284A821F0F3158A2001D7A67 /* offset.c */,
+ 28EB75990FDC30C60046D78E /* offset.h */,
+ 284A82220F3158A2001D7A67 /* oneshot.c */,
+ 28EB759A0FDC30C60046D78E /* oneshot.h */,
+ 284A82250F3158A2001D7A67 /* osc.c */,
+ 28EB759B0FDC30C60046D78E /* osc.h */,
+ 284A82280F3158A2001D7A67 /* partial.c */,
+ 28EB759C0FDC30C60046D78E /* partial.h */,
+ 284A822B0F3158A2001D7A67 /* pluck.c */,
+ 28EB759D0FDC30C60046D78E /* pluck.h */,
+ 284A822E0F3158A2001D7A67 /* prod.c */,
+ 28EB759E0FDC30C60046D78E /* prod.h */,
+ 284A82310F3158A2001D7A67 /* pwl.c */,
+ 28EB759F0FDC30C60046D78E /* pwl.h */,
+ 284A82340F3158A2001D7A67 /* quantize.c */,
+ 28EB75A00FDC30C60046D78E /* quantize.h */,
+ 284A82370F3158A2001D7A67 /* recip.c */,
+ 28EB75A10FDC30C60046D78E /* recip.h */,
+ 284A823A0F3158A2001D7A67 /* reson.c */,
+ 28EB75A20FDC30C60046D78E /* reson.h */,
+ 284A823D0F3158A2001D7A67 /* resoncv.c */,
+ 28EB75A30FDC30C60046D78E /* resoncv.h */,
+ 284A82400F3158A2001D7A67 /* resonvc.c */,
+ 28EB75A40FDC30C60046D78E /* resonvc.h */,
+ 284A82430F3158A2001D7A67 /* resonvv.c */,
+ 28EB75A50FDC30C60046D78E /* resonvv.h */,
+ 284A82460F3158A2001D7A67 /* sampler.c */,
+ 28EB75A60FDC30C60046D78E /* sampler.h */,
+ 284A82490F3158A2001D7A67 /* scale.c */,
+ 28EB75A70FDC30C60046D78E /* scale.h */,
+ 284A824C0F3158A2001D7A67 /* shape.c */,
+ 28EB75A80FDC30C60046D78E /* shape.h */,
+ 284A824F0F3158A2001D7A67 /* sine.c */,
+ 28EB75A90FDC30C60046D78E /* sine.h */,
+ 284A82520F3158A2001D7A67 /* siosc.c */,
+ 28EB75AA0FDC30C60046D78E /* siosc.h */,
+ 284A82550F3158A2001D7A67 /* slope.c */,
+ 28EB75AB0FDC30C60046D78E /* slope.h */,
+ 284A82580F3158A2001D7A67 /* sqrt.c */,
+ 28EB75AC0FDC30C60046D78E /* sqrt.h */,
+ 284A825B0F3158A2001D7A67 /* stkchorus.c */,
+ 28EB75AD0FDC30C60046D78E /* stkchorus.h */,
+ 284A825E0F3158A2001D7A67 /* stkpitshift.c */,
+ 28EB75AE0FDC30C60046D78E /* stkpitshift.h */,
+ 284A82610F3158A2001D7A67 /* stkrev.c */,
+ 28EB75AF0FDC30C60046D78E /* stkrev.h */,
+ 284A82640F3158A2001D7A67 /* tapf.c */,
+ 28EB75B00FDC30C60046D78E /* tapf.h */,
+ 284A82670F3158A2001D7A67 /* tapv.c */,
+ 28EB75B10FDC30C60046D78E /* tapv.h */,
+ 284A826A0F3158A2001D7A67 /* tone.c */,
+ 284A826D0F3158A2001D7A67 /* tonev.c */,
+ 28EB75B20FDC30C60046D78E /* tone.h */,
+ 28EB75B30FDC30C60046D78E /* tonev.h */,
+ 284A82720F3158A2001D7A67 /* upsample.c */,
+ 28EB75B40FDC30C60046D78E /* upsample.h */,
+ 284A82750F3158A2001D7A67 /* white.c */,
+ 28EB75B50FDC30C60046D78E /* white.h */,
+ );
+ path = tran;
+ sourceTree = "<group>";
+ };
+ 284A827A0F3158A2001D7A67 /* xlisp */ = {
+ isa = PBXGroup;
+ children = (
+ 284A827B0F3158A2001D7A67 /* extern.c */,
+ 284A827F0F3158A2001D7A67 /* path.c */,
+ 284A82800F3158A2001D7A67 /* xlbfun.c */,
+ 284A82810F3158A2001D7A67 /* xlcont.c */,
+ 284A82820F3158A2001D7A67 /* xldbug.c */,
+ 284A82830F3158A2001D7A67 /* xldmem.c */,
+ 28EB75F70FDC322A0046D78E /* xldmem.h */,
+ 284A82850F3158A2001D7A67 /* xleval.c */,
+ 284A82860F3158A2001D7A67 /* xlfio.c */,
+ 284A82870F3158A2001D7A67 /* xlftab.c */,
+ 284A82880F3158A2001D7A67 /* xlglob.c */,
+ 284A82890F3158A2001D7A67 /* xlimage.c */,
+ 284A828A0F3158A2001D7A67 /* xlinit.c */,
+ 284A828B0F3158A2001D7A67 /* xlio.c */,
+ 284A828C0F3158A2001D7A67 /* xlisp.c */,
+ 28EB75F80FDC322A0046D78E /* xlisp.h */,
+ 284A828E0F3158A2001D7A67 /* xljump.c */,
+ 284A828F0F3158A2001D7A67 /* xllist.c */,
+ 284A82900F3158A2001D7A67 /* xlmath.c */,
+ 284A82910F3158A2001D7A67 /* xlobj.c */,
+ 284A82920F3158A2001D7A67 /* xlpp.c */,
+ 284A82930F3158A2001D7A67 /* xlprin.c */,
+ 284A82940F3158A2001D7A67 /* xlread.c */,
+ 284A82950F3158A2001D7A67 /* xlstr.c */,
+ 284A82960F3158A2001D7A67 /* xlsubr.c */,
+ 284A82970F3158A2001D7A67 /* xlsym.c */,
+ 284A82980F3158A2001D7A67 /* xlsys.c */,
+ );
+ path = xlisp;
+ sourceTree = "<group>";
+ };
28501E960CEECE4B0029ABAA /* vamp */ = {
isa = PBXGroup;
children = (
@@ -4927,6 +5966,19 @@
path = toolbars;
sourceTree = "<group>";
};
+ 28A4E29B0F6030F200E9E7F2 /* ffts */ = {
+ isa = PBXGroup;
+ children = (
+ 28A4E2A40F60319300E9E7F2 /* fftext.c */,
+ 28A4E2A50F60319300E9E7F2 /* fftext.h */,
+ 28A4E2A60F60319300E9E7F2 /* fftlib.c */,
+ 28A4E2A70F60319300E9E7F2 /* fftlib.h */,
+ 28A4E2AA0F60319300E9E7F2 /* matlib.c */,
+ 28A4E2AB0F60319300E9E7F2 /* matlib.h */,
+ );
+ name = ffts;
+ sourceTree = "<group>";
+ };
28AA28110F267957008AED9E /* plug-ins */ = {
isa = PBXGroup;
children = (
@@ -4953,29 +6005,49 @@
28AA28320F267A50008AED9E /* nyquist */ = {
isa = PBXGroup;
children = (
- 28AA28330F267A6E008AED9E /* bug.lsp */,
- 28AA28340F267A6E008AED9E /* dspprims.lsp */,
- 28AA28350F267A6E008AED9E /* evalenv.lsp */,
- 28AA28360F267A6E008AED9E /* follow.lsp */,
- 28AA28370F267A6E008AED9E /* init.lsp */,
- 28AA28380F267A6E008AED9E /* misc.lsp */,
- 28AA28390F267A6E008AED9E /* nyinit.lsp */,
- 28AA283A0F267A6E008AED9E /* nyqmisc.lsp */,
- 28AA283B0F267A6E008AED9E /* nyquist.lsp */,
- 28AA283C0F267A6E008AED9E /* printrec.lsp */,
- 28AA283D0F267A6E008AED9E /* profile.lsp */,
- 28AA283E0F267A6E008AED9E /* seq.lsp */,
- 28AA283F0F267A6E008AED9E /* seqfnint.lsp */,
- 28AA28400F267A6E008AED9E /* seqmidi.lsp */,
- 28AA28410F267A6E008AED9E /* sndfnint.lsp */,
- 28AA28420F267A6E008AED9E /* system.lsp */,
- 28AA28430F267A6E008AED9E /* test.lsp */,
- 28AA28440F267A6E008AED9E /* xlinit.lsp */,
+ 2808026A0F32C11F0021001D /* rawwaves */,
+ 2808025B0F32C11F0021001D /* bug.lsp */,
+ 2808025C0F32C11F0021001D /* dspprims.lsp */,
+ 2808025D0F32C11F0021001D /* envelopes.lsp */,
+ 2808025E0F32C11F0021001D /* equalizer.lsp */,
+ 2808025F0F32C11F0021001D /* evalenv.lsp */,
+ 280802600F32C11F0021001D /* fileio.lsp */,
+ 280802610F32C11F0021001D /* follow.lsp */,
+ 280802620F32C11F0021001D /* init.lsp */,
+ 280802630F32C11F0021001D /* misc.lsp */,
+ 280802640F32C11F0021001D /* nyinit.lsp */,
+ 280802650F32C11F0021001D /* nyqmisc.lsp */,
+ 280802660F32C11F0021001D /* nyquist-plot.txt */,
+ 280802670F32C11F0021001D /* nyquist.lsp */,
+ 280802680F32C11F0021001D /* printrec.lsp */,
+ 280802690F32C11F0021001D /* profile.lsp */,
+ 2808027A0F32C11F0021001D /* sal-parse.lsp */,
+ 2808027B0F32C11F0021001D /* sal.lsp */,
+ 2808027C0F32C11F0021001D /* seq.lsp */,
+ 2808027D0F32C11F0021001D /* seqfnint.lsp */,
+ 2808027E0F32C11F0021001D /* seqmidi.lsp */,
+ 2808027F0F32C11F0021001D /* sndfnint.lsp */,
+ 280802800F32C11F0021001D /* stk.lsp */,
+ 280802810F32C11F0021001D /* system.lsp */,
+ 280802820F32C11F0021001D /* xlinit.lsp */,
+ 280802830F32C11F0021001D /* xm.lsp */,
);
includeInIndex = 1;
name = nyquist;
sourceTree = "<group>";
};
+ 28B97B800FBF77030076CF28 /* vst */ = {
+ isa = PBXGroup;
+ children = (
+ 2885BFF10FC108F800128165 /* aeffectx.h */,
+ 2885BFF20FC108F800128165 /* LoadVST.cpp */,
+ 2885BFF30FC108F800128165 /* LoadVST.h */,
+ 28B97B850FBF771A0076CF28 /* VSTEffect.cpp */,
+ 28B97B860FBF771A0076CF28 /* VSTEffect.h */,
+ );
+ name = vst;
+ sourceTree = "<group>";
+ };
28D587C50E264CBB009C7DEA /* lv2 */ = {
isa = PBXGroup;
children = (
@@ -5080,6 +6152,53 @@
path = "portaudio-v19/src/os";
sourceTree = "<group>";
};
+ 28EB75030FDC2FB10046D78E /* include */ = {
+ isa = PBXGroup;
+ children = (
+ 28EB75040FDC2FB10046D78E /* ADSR.h */,
+ 28EB75050FDC2FB10046D78E /* BandedWG.h */,
+ 28EB75060FDC2FB10046D78E /* BiQuad.h */,
+ 28EB75070FDC2FB10046D78E /* Bowed.h */,
+ 28EB75080FDC2FB10046D78E /* BowTable.h */,
+ 28EB75090FDC2FB10046D78E /* Chorus.h */,
+ 28EB750A0FDC2FB10046D78E /* Clarinet.h */,
+ 28EB750B0FDC2FB10046D78E /* Delay.h */,
+ 28EB750C0FDC2FB10046D78E /* DelayA.h */,
+ 28EB750D0FDC2FB10046D78E /* DelayL.h */,
+ 28EB750E0FDC2FB10046D78E /* Effect.h */,
+ 28EB750F0FDC2FB10046D78E /* Envelope.h */,
+ 28EB75100FDC2FB10046D78E /* FileRead.h */,
+ 28EB75110FDC2FB10046D78E /* FileWvIn.h */,
+ 28EB75120FDC2FB10046D78E /* Filter.h */,
+ 28EB75130FDC2FB10046D78E /* Flute.h */,
+ 28EB75140FDC2FB10046D78E /* Function.h */,
+ 28EB75150FDC2FB10046D78E /* Generator.h */,
+ 28EB75160FDC2FB10046D78E /* Instrmnt.h */,
+ 28EB75170FDC2FB10046D78E /* JCRev.h */,
+ 28EB75180FDC2FB10046D78E /* JetTable.h */,
+ 28EB75190FDC2FB10046D78E /* Mandolin.h */,
+ 28EB751A0FDC2FB10046D78E /* Modal.h */,
+ 28EB751B0FDC2FB10046D78E /* ModalBar.h */,
+ 28EB751C0FDC2FB10046D78E /* Noise.h */,
+ 28EB751D0FDC2FB10046D78E /* NRev.h */,
+ 28EB751E0FDC2FB10046D78E /* OnePole.h */,
+ 28EB751F0FDC2FB10046D78E /* OneZero.h */,
+ 28EB75200FDC2FB10046D78E /* PitShift.h */,
+ 28EB75210FDC2FB10046D78E /* PluckTwo.h */,
+ 28EB75220FDC2FB10046D78E /* PoleZero.h */,
+ 28EB75230FDC2FB10046D78E /* PRCRev.h */,
+ 28EB75240FDC2FB10046D78E /* ReedTable.h */,
+ 28EB75250FDC2FB10046D78E /* Saxofony.h */,
+ 28EB75260FDC2FB10046D78E /* SineWave.h */,
+ 28EB75270FDC2FB10046D78E /* Sitar.h */,
+ 28EB75280FDC2FB10046D78E /* SKINI.msg */,
+ 28EB75290FDC2FB10046D78E /* Stk.h */,
+ 28EB752A0FDC2FB10046D78E /* WaveLoop.h */,
+ 28EB752B0FDC2FB10046D78E /* WvIn.h */,
+ );
+ path = include;
+ sourceTree = "<group>";
+ };
28F3A3EF0E28280A00729866 /* portsmf */ = {
isa = PBXGroup;
children = (
@@ -5315,6 +6434,7 @@
1707405C0988EEBA008541CC /* sfendian.h in Headers */,
1707405E0988EEBA008541CC /* sndfile.h in Headers */,
170740680988EEBA008541CC /* wav_w64.h in Headers */,
+ 287DBE8C0F3F6B2700C5BBED /* ima_oki_adpcm.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -5395,140 +6515,183 @@
isa = PBXHeadersBuildPhase;
buildActionMask = 2147483647;
files = (
- 17CBAD41098B84E300575C58 /* cext.h in Headers */,
- 17CBAD43098B84E300575C58 /* cleanup.h in Headers */,
- 17CBAD45098B84E300575C58 /* cmdline.h in Headers */,
- 17CBAD47098B84E300575C58 /* cmtcmd.h in Headers */,
- 17CBAD48098B84E300575C58 /* hash.h in Headers */,
- 17CBAD49098B84E300575C58 /* hashrout.h in Headers */,
- 17CBAD4B098B84E300575C58 /* mem.h in Headers */,
- 17CBAD4C098B84E300575C58 /* mfmidi.h in Headers */,
- 17CBAD4D098B84E300575C58 /* midibuff.h in Headers */,
- 17CBAD4E098B84E300575C58 /* midicode.h in Headers */,
- 17CBAD4F098B84E300575C58 /* midierr.h in Headers */,
- 17CBAD51098B84E300575C58 /* midifile.h in Headers */,
- 17CBAD53098B84E300575C58 /* midifns.h in Headers */,
- 17CBAD55098B84E300575C58 /* moxc.h in Headers */,
- 17CBAD56098B84E300575C58 /* musiprog.h in Headers */,
- 17CBAD57098B84E300575C58 /* pitch.h in Headers */,
- 17CBAD59098B84E300575C58 /* record.h in Headers */,
- 17CBAD5B098B84E300575C58 /* seq.h in Headers */,
- 17CBAD5C098B84E300575C58 /* seqdecls.h in Headers */,
- 17CBAD5E098B84E300575C58 /* seqmread.h in Headers */,
- 17CBAD60098B84E300575C58 /* seqmwrite.h in Headers */,
- 17CBAD62098B84E300575C58 /* seqread.h in Headers */,
- 17CBAD64098B84E300575C58 /* seqwrite.h in Headers */,
- 17CBAD65098B84E300575C58 /* swlogic.h in Headers */,
- 17CBAD67098B84E300575C58 /* tempomap.h in Headers */,
- 17CBAD69098B84E300575C58 /* timebase.h in Headers */,
- 17CBAD6B098B84E300575C58 /* userio.h in Headers */,
- 17CBAD6D098B84E300575C58 /* fftn.h in Headers */,
- 17CBAD6F098B84E300575C58 /* add.h in Headers */,
- 17CBAD71098B84E300575C58 /* avg.h in Headers */,
- 17CBAD73098B84E300575C58 /* compose.h in Headers */,
- 17CBAD74098B84E300575C58 /* cque.h in Headers */,
- 17CBAD76098B84E300575C58 /* debug.h in Headers */,
- 17CBAD78098B84E300575C58 /* downsample.h in Headers */,
- 17CBAD7A098B84E300575C58 /* falloc.h in Headers */,
- 17CBAD7C098B84E300575C58 /* ffilterkit.h in Headers */,
- 17CBAD7E098B84E300575C58 /* fft.h in Headers */,
- 17CBAD7F098B84E300575C58 /* fftw.h in Headers */,
- 17CBAD80098B84E300575C58 /* fresample.h in Headers */,
- 17CBAD81098B84E300575C58 /* fsmallfilter.h in Headers */,
- 17CBAD84098B84E300575C58 /* inverse.h in Headers */,
- 17CBAD86098B84E300575C58 /* localdefs.h in Headers */,
- 17CBAD87098B84E300575C58 /* localptrs.h in Headers */,
- 17CBAD89098B84E300575C58 /* multiread.h in Headers */,
- 17CBAD8B098B84E300575C58 /* multiseq.h in Headers */,
- 17CBAD8D098B84E300575C58 /* resamp.h in Headers */,
- 17CBAD8F098B84E300575C58 /* resampv.h in Headers */,
- 17CBAD90098B84E300575C58 /* rfftw.h in Headers */,
- 17CBAD92098B84E300575C58 /* samples.h in Headers */,
- 17CBAD94098B84E300575C58 /* seqext.h in Headers */,
- 17CBAD96098B84E300575C58 /* seqfnintdefs.h in Headers */,
- 17CBAD97098B84E300575C58 /* seqfnintptrs.h in Headers */,
- 17CBAD99098B84E300575C58 /* seqinterf.h in Headers */,
- 17CBAD9C098B84E300575C58 /* sndfnintdefs.h in Headers */,
- 17CBAD9D098B84E300575C58 /* sndfnintptrs.h in Headers */,
- 17CBAD9F098B84E300575C58 /* sndmax.h in Headers */,
- 17CBADA1098B84E300575C58 /* sndread.h in Headers */,
- 17CBADA3098B84E300575C58 /* sndseq.h in Headers */,
- 17CBADA5098B84E300575C58 /* sndwrite.h in Headers */,
- 17CBADA7098B84E300575C58 /* sound.h in Headers */,
- 17CBADA9098B84E300575C58 /* stdefs.h in Headers */,
- 17CBADAB098B84E300575C58 /* nyx.h in Headers */,
- 17CBADAE098B84E300575C58 /* ieeecvt.h in Headers */,
- 17CBADB0098B84E300575C58 /* snd.h in Headers */,
- 17CBADB1098B84E300575C58 /* sndconfig.h in Headers */,
- 17CBADB3098B84E300575C58 /* sndfileio.h in Headers */,
- 17CBADB4098B84E300575C58 /* sndfreebsd.h in Headers */,
- 17CBADB5098B84E300575C58 /* sndhead.h in Headers */,
- 17CBADB7098B84E300575C58 /* sndheader.h in Headers */,
- 17CBADBA098B84E300575C58 /* sndlinux.h in Headers */,
- 17CBADBB098B84E300575C58 /* sndwrite.h in Headers */,
- 17CBADBC098B84E300575C58 /* switches.h in Headers */,
- 17CBADBE098B84E300575C58 /* term.h in Headers */,
- 28EB47D90AFD54B800502984 /* abs.h in Headers */,
- 17CBADC0098B84E300575C58 /* alpass.h in Headers */,
- 17CBADC2098B84E300575C58 /* amosc.h in Headers */,
- 17CBADC4098B84E300575C58 /* areson.h in Headers */,
- 17CBADC6098B84E300575C58 /* aresoncv.h in Headers */,
- 17CBADC8098B84E300575C58 /* aresonvc.h in Headers */,
- 17CBADCA098B84E300575C58 /* aresonvv.h in Headers */,
- 17CBADCC098B84E300575C58 /* atone.h in Headers */,
- 17CBADCE098B84E300575C58 /* atonev.h in Headers */,
- 17CBADD0098B84E300575C58 /* biquad.h in Headers */,
- 17CBADD2098B84E300575C58 /* buzz.h in Headers */,
- 17CBADD4098B84E300575C58 /* chase.h in Headers */,
- 17CBADD6098B84E300575C58 /* clip.h in Headers */,
- 17CBADD8098B84E300575C58 /* congen.h in Headers */,
- 17CBADDA098B84E300575C58 /* const.h in Headers */,
- 17CBADDC098B84E300575C58 /* convolve.h in Headers */,
- 17CBADDE098B84E300575C58 /* coterm.h in Headers */,
- 17CBADE0098B84E300575C58 /* delay.h in Headers */,
- 17CBADE2098B84E300575C58 /* delaycv.h in Headers */,
- 17CBADE4098B84E300575C58 /* exp.h in Headers */,
- 17CBADE6098B84E300575C58 /* fmosc.h in Headers */,
- 17CBADE8098B84E300575C58 /* follow.h in Headers */,
- 17CBADEA098B84E300575C58 /* fromarraystream.h in Headers */,
- 17CBADEC098B84E300575C58 /* fromobject.h in Headers */,
- 17CBADEE098B84E300575C58 /* gate.h in Headers */,
- 17CBADF0098B84E300575C58 /* ifft.h in Headers */,
- 17CBADF2098B84E300575C58 /* integrate.h in Headers */,
- 17CBADF4098B84E300575C58 /* log.h in Headers */,
- 17CBADF6098B84E300575C58 /* maxv.h in Headers */,
- 17CBADF8098B84E300575C58 /* offset.h in Headers */,
- 17CBADFA098B84E300575C58 /* oneshot.h in Headers */,
- 17CBADFC098B84E300575C58 /* osc.h in Headers */,
- 17CBADFE098B84E300575C58 /* partial.h in Headers */,
- 17CBAE00098B84E300575C58 /* pluck.h in Headers */,
- 17CBAE02098B84E300575C58 /* prod.h in Headers */,
- 17CBAE04098B84E300575C58 /* pwl.h in Headers */,
- 17CBAE06098B84E300575C58 /* quantize.h in Headers */,
- 17CBAE08098B84E300575C58 /* recip.h in Headers */,
- 17CBAE0A098B84E300575C58 /* reson.h in Headers */,
- 17CBAE0C098B84E300575C58 /* resoncv.h in Headers */,
- 17CBAE0E098B84E300575C58 /* resonvc.h in Headers */,
- 17CBAE10098B84E300575C58 /* resonvv.h in Headers */,
- 17CBAE12098B84E300575C58 /* sampler.h in Headers */,
- 17CBAE14098B84E300575C58 /* scale.h in Headers */,
- 17CBAE16098B84E300575C58 /* shape.h in Headers */,
- 17CBAE18098B84E300575C58 /* sine.h in Headers */,
- 17CBAE1A098B84E300575C58 /* siosc.h in Headers */,
- 17CBAE1C098B84E300575C58 /* slope.h in Headers */,
- 28EB47DA0AFD54B800502984 /* sqrt.h in Headers */,
- 17CBAE1E098B84E300575C58 /* tapv.h in Headers */,
- 17CBAE20098B84E300575C58 /* tone.h in Headers */,
- 17CBAE22098B84E300575C58 /* tonev.h in Headers */,
- 17CBAE24098B84E300575C58 /* upsample.h in Headers */,
- 17CBAE26098B84E300575C58 /* white.h in Headers */,
- 17CBAE28098B84E300575C58 /* extern.h in Headers */,
- 17CBAE29098B84E300575C58 /* osdefs.h in Headers */,
- 17CBAE2A098B84E300575C58 /* osptrs.h in Headers */,
- 17CBAE30098B84E300575C58 /* xldmem.h in Headers */,
- 17CBAE39098B84E300575C58 /* xlisp.h in Headers */,
- 28D0255C0AFDA53B0035F843 /* alpasscv.h in Headers */,
- 28D0255E0AFDA53B0035F843 /* alpassvc.h in Headers */,
+ 284A7B930F31571C001D7A67 /* nyx.h in Headers */,
+ 28A4E2AD0F60319300E9E7F2 /* fftext.h in Headers */,
+ 28A4E2AF0F60319300E9E7F2 /* fftlib.h in Headers */,
+ 28A4E2B10F60319300E9E7F2 /* matlib.h in Headers */,
+ 28EB74AD0FDC2DF60046D78E /* userio.h in Headers */,
+ 28EB74AE0FDC2DF60046D78E /* timebase.h in Headers */,
+ 28EB74AF0FDC2DF60046D78E /* tempomap.h in Headers */,
+ 28EB74B00FDC2DF60046D78E /* seqwrite.h in Headers */,
+ 28EB74B10FDC2DF60046D78E /* seqread.h in Headers */,
+ 28EB74B20FDC2DF60046D78E /* seqmwrite.h in Headers */,
+ 28EB74B30FDC2DF60046D78E /* seqmread.h in Headers */,
+ 28EB74B40FDC2DF60046D78E /* seq.h in Headers */,
+ 28EB74B50FDC2DF60046D78E /* record.h in Headers */,
+ 28EB74B60FDC2DF60046D78E /* moxc.h in Headers */,
+ 28EB74B70FDC2DF60046D78E /* midifns.h in Headers */,
+ 28EB74B80FDC2DF60046D78E /* midifile.h in Headers */,
+ 28EB74B90FDC2DF60046D78E /* mem.h in Headers */,
+ 28EB74BA0FDC2DF60046D78E /* cmtcmd.h in Headers */,
+ 28EB74BB0FDC2DF60046D78E /* cmdline.h in Headers */,
+ 28EB74BC0FDC2DF60046D78E /* cleanup.h in Headers */,
+ 28EB74BD0FDC2DF60046D78E /* cext.h in Headers */,
+ 28EB74DF0FDC2EDF0046D78E /* add.h in Headers */,
+ 28EB74E00FDC2EDF0046D78E /* avg.h in Headers */,
+ 28EB74E10FDC2EDF0046D78E /* compose.h in Headers */,
+ 28EB74E20FDC2EDF0046D78E /* convolve.h in Headers */,
+ 28EB74E30FDC2EDF0046D78E /* cque.h in Headers */,
+ 28EB74E40FDC2EDF0046D78E /* debug.h in Headers */,
+ 28EB74E50FDC2EDF0046D78E /* downsample.h in Headers */,
+ 28EB74E60FDC2EDF0046D78E /* falloc.h in Headers */,
+ 28EB74E70FDC2EDF0046D78E /* ffilterkit.h in Headers */,
+ 28EB74E80FDC2EDF0046D78E /* fft.h in Headers */,
+ 28EB74E90FDC2EDF0046D78E /* inverse.h in Headers */,
+ 28EB74EA0FDC2EDF0046D78E /* localdefs.h in Headers */,
+ 28EB74EB0FDC2EDF0046D78E /* localptrs.h in Headers */,
+ 28EB74EC0FDC2EDF0046D78E /* lpanal.h in Headers */,
+ 28EB74ED0FDC2EDF0046D78E /* multiread.h in Headers */,
+ 28EB74EE0FDC2EDF0046D78E /* multiseq.h in Headers */,
+ 28EB74EF0FDC2EDF0046D78E /* probe.h in Headers */,
+ 28EB74F00FDC2EDF0046D78E /* resamp.h in Headers */,
+ 28EB74F10FDC2EDF0046D78E /* resampv.h in Headers */,
+ 28EB74F20FDC2EDF0046D78E /* samples.h in Headers */,
+ 28EB74F30FDC2EDF0046D78E /* seqext.h in Headers */,
+ 28EB74F40FDC2EDF0046D78E /* seqfnintdefs.h in Headers */,
+ 28EB74F50FDC2EDF0046D78E /* seqfnintptrs.h in Headers */,
+ 28EB74F60FDC2EDF0046D78E /* seqinterf.h in Headers */,
+ 28EB74F70FDC2EDF0046D78E /* sliders.h in Headers */,
+ 28EB74F80FDC2EDF0046D78E /* sndfnintdefs.h in Headers */,
+ 28EB74F90FDC2EDF0046D78E /* sndfnintptrs.h in Headers */,
+ 28EB74FA0FDC2EDF0046D78E /* sndmax.h in Headers */,
+ 28EB74FB0FDC2EDF0046D78E /* sndread.h in Headers */,
+ 28EB74FC0FDC2EDF0046D78E /* sndseq.h in Headers */,
+ 28EB74FD0FDC2EDF0046D78E /* sound.h in Headers */,
+ 28EB74FE0FDC2EDF0046D78E /* trigger.h in Headers */,
+ 28EB74FF0FDC2EDF0046D78E /* yin.h in Headers */,
+ 28EB752F0FDC2FB20046D78E /* ADSR.h in Headers */,
+ 28EB75300FDC2FB20046D78E /* BandedWG.h in Headers */,
+ 28EB75310FDC2FB20046D78E /* BiQuad.h in Headers */,
+ 28EB75320FDC2FB20046D78E /* Bowed.h in Headers */,
+ 28EB75330FDC2FB20046D78E /* BowTable.h in Headers */,
+ 28EB75340FDC2FB20046D78E /* Chorus.h in Headers */,
+ 28EB75350FDC2FB20046D78E /* Clarinet.h in Headers */,
+ 28EB75360FDC2FB20046D78E /* Delay.h in Headers */,
+ 28EB75370FDC2FB20046D78E /* DelayA.h in Headers */,
+ 28EB75380FDC2FB20046D78E /* DelayL.h in Headers */,
+ 28EB75390FDC2FB20046D78E /* Effect.h in Headers */,
+ 28EB753A0FDC2FB20046D78E /* Envelope.h in Headers */,
+ 28EB753B0FDC2FB20046D78E /* FileRead.h in Headers */,
+ 28EB753C0FDC2FB20046D78E /* FileWvIn.h in Headers */,
+ 28EB753D0FDC2FB20046D78E /* Filter.h in Headers */,
+ 28EB753E0FDC2FB20046D78E /* Flute.h in Headers */,
+ 28EB753F0FDC2FB20046D78E /* Function.h in Headers */,
+ 28EB75400FDC2FB20046D78E /* Generator.h in Headers */,
+ 28EB75410FDC2FB20046D78E /* Instrmnt.h in Headers */,
+ 28EB75420FDC2FB20046D78E /* JCRev.h in Headers */,
+ 28EB75430FDC2FB20046D78E /* JetTable.h in Headers */,
+ 28EB75440FDC2FB20046D78E /* Mandolin.h in Headers */,
+ 28EB75450FDC2FB20046D78E /* Modal.h in Headers */,
+ 28EB75460FDC2FB20046D78E /* ModalBar.h in Headers */,
+ 28EB75470FDC2FB20046D78E /* Noise.h in Headers */,
+ 28EB75480FDC2FB20046D78E /* NRev.h in Headers */,
+ 28EB75490FDC2FB20046D78E /* OnePole.h in Headers */,
+ 28EB754A0FDC2FB20046D78E /* OneZero.h in Headers */,
+ 28EB754B0FDC2FB20046D78E /* PitShift.h in Headers */,
+ 28EB754C0FDC2FB20046D78E /* PluckTwo.h in Headers */,
+ 28EB754D0FDC2FB20046D78E /* PoleZero.h in Headers */,
+ 28EB754E0FDC2FB20046D78E /* PRCRev.h in Headers */,
+ 28EB754F0FDC2FB20046D78E /* ReedTable.h in Headers */,
+ 28EB75500FDC2FB20046D78E /* Saxofony.h in Headers */,
+ 28EB75510FDC2FB20046D78E /* SineWave.h in Headers */,
+ 28EB75520FDC2FB20046D78E /* Sitar.h in Headers */,
+ 28EB75530FDC2FB20046D78E /* Stk.h in Headers */,
+ 28EB75540FDC2FB20046D78E /* WaveLoop.h in Headers */,
+ 28EB75550FDC2FB20046D78E /* WvIn.h in Headers */,
+ 28EB75560FDC2FB20046D78E /* instr.h in Headers */,
+ 28EB75570FDC2FB20046D78E /* stkinit.h in Headers */,
+ 28EB75580FDC2FB20046D78E /* stkint.h in Headers */,
+ 28EB75670FDC300C0046D78E /* abs.h in Headers */,
+ 28EB75680FDC300C0046D78E /* allpoles.h in Headers */,
+ 28EB75690FDC300C0046D78E /* alpass.h in Headers */,
+ 28EB756A0FDC300C0046D78E /* alpasscv.h in Headers */,
+ 28EB756B0FDC300C0046D78E /* alpassvv.h in Headers */,
+ 28EB756C0FDC300C0046D78E /* amosc.h in Headers */,
+ 28EB756D0FDC300C0046D78E /* areson.h in Headers */,
+ 28EB756E0FDC300C0046D78E /* aresoncv.h in Headers */,
+ 28EB756F0FDC300C0046D78E /* aresonvc.h in Headers */,
+ 28EB75700FDC300C0046D78E /* aresonvv.h in Headers */,
+ 28EB75710FDC300C0046D78E /* atone.h in Headers */,
+ 28EB75720FDC300C0046D78E /* atonev.h in Headers */,
+ 28EB75730FDC300C0046D78E /* biquadfilt.h in Headers */,
+ 28EB75740FDC300C0046D78E /* buzz.h in Headers */,
+ 28EB75B60FDC30C70046D78E /* chase.h in Headers */,
+ 28EB75B70FDC30C70046D78E /* clip.h in Headers */,
+ 28EB75B80FDC30C70046D78E /* congen.h in Headers */,
+ 28EB75B90FDC30C70046D78E /* const.h in Headers */,
+ 28EB75BA0FDC30C70046D78E /* coterm.h in Headers */,
+ 28EB75BB0FDC30C70046D78E /* delaycc.h in Headers */,
+ 28EB75BC0FDC30C70046D78E /* delaycv.h in Headers */,
+ 28EB75BD0FDC30C70046D78E /* eqbandvvv.h in Headers */,
+ 28EB75BE0FDC30C70046D78E /* exp.h in Headers */,
+ 28EB75BF0FDC30C70046D78E /* fmfb.h in Headers */,
+ 28EB75C00FDC30C70046D78E /* fmfbv.h in Headers */,
+ 28EB75C10FDC30C70046D78E /* fmosc.h in Headers */,
+ 28EB75C20FDC30C70046D78E /* follow.h in Headers */,
+ 28EB75C30FDC30C70046D78E /* fromarraystream.h in Headers */,
+ 28EB75C40FDC30C70046D78E /* fromobject.h in Headers */,
+ 28EB75C50FDC30C70046D78E /* gate.h in Headers */,
+ 28EB75C60FDC30C70046D78E /* ifft.h in Headers */,
+ 28EB75C70FDC30C70046D78E /* instrbanded.h in Headers */,
+ 28EB75C80FDC30C70046D78E /* instrbow.h in Headers */,
+ 28EB75C90FDC30C70046D78E /* instrbowedfreq.h in Headers */,
+ 28EB75CA0FDC30C70046D78E /* instrclar.h in Headers */,
+ 28EB75CB0FDC30C70046D78E /* instrclarall.h in Headers */,
+ 28EB75CC0FDC30C70046D78E /* instrclarfreq.h in Headers */,
+ 28EB75CD0FDC30C70046D78E /* instrflute.h in Headers */,
+ 28EB75CE0FDC30C70046D78E /* instrfluteall.h in Headers */,
+ 28EB75CF0FDC30C70046D78E /* instrflutefreq.h in Headers */,
+ 28EB75D00FDC30C70046D78E /* instrmandolin.h in Headers */,
+ 28EB75D10FDC30C70046D78E /* instrmodalbar.h in Headers */,
+ 28EB75D20FDC30C70046D78E /* instrsax.h in Headers */,
+ 28EB75D30FDC30C70046D78E /* instrsaxall.h in Headers */,
+ 28EB75D40FDC30C70046D78E /* instrsaxfreq.h in Headers */,
+ 28EB75D50FDC30C70046D78E /* instrsitar.h in Headers */,
+ 28EB75D60FDC30C70046D78E /* integrate.h in Headers */,
+ 28EB75D70FDC30C70046D78E /* log.h in Headers */,
+ 28EB75D80FDC30C70046D78E /* lpreson.h in Headers */,
+ 28EB75D90FDC30C70046D78E /* maxv.h in Headers */,
+ 28EB75DA0FDC30C70046D78E /* offset.h in Headers */,
+ 28EB75DB0FDC30C70046D78E /* oneshot.h in Headers */,
+ 28EB75DC0FDC30C70046D78E /* osc.h in Headers */,
+ 28EB75DD0FDC30C70046D78E /* partial.h in Headers */,
+ 28EB75DE0FDC30C70046D78E /* pluck.h in Headers */,
+ 28EB75DF0FDC30C70046D78E /* prod.h in Headers */,
+ 28EB75E00FDC30C70046D78E /* pwl.h in Headers */,
+ 28EB75E10FDC30C70046D78E /* quantize.h in Headers */,
+ 28EB75E20FDC30C70046D78E /* recip.h in Headers */,
+ 28EB75E30FDC30C70046D78E /* reson.h in Headers */,
+ 28EB75E40FDC30C70046D78E /* resoncv.h in Headers */,
+ 28EB75E50FDC30C70046D78E /* resonvc.h in Headers */,
+ 28EB75E60FDC30C70046D78E /* resonvv.h in Headers */,
+ 28EB75E70FDC30C70046D78E /* sampler.h in Headers */,
+ 28EB75E80FDC30C70046D78E /* scale.h in Headers */,
+ 28EB75E90FDC30C70046D78E /* shape.h in Headers */,
+ 28EB75EA0FDC30C70046D78E /* sine.h in Headers */,
+ 28EB75EB0FDC30C70046D78E /* siosc.h in Headers */,
+ 28EB75EC0FDC30C70046D78E /* slope.h in Headers */,
+ 28EB75ED0FDC30C70046D78E /* sqrt.h in Headers */,
+ 28EB75EE0FDC30C70046D78E /* stkchorus.h in Headers */,
+ 28EB75EF0FDC30C70046D78E /* stkpitshift.h in Headers */,
+ 28EB75F00FDC30C70046D78E /* stkrev.h in Headers */,
+ 28EB75F10FDC30C70046D78E /* tapf.h in Headers */,
+ 28EB75F20FDC30C70046D78E /* tapv.h in Headers */,
+ 28EB75F30FDC30C70046D78E /* tone.h in Headers */,
+ 28EB75F40FDC30C70046D78E /* tonev.h in Headers */,
+ 28EB75F50FDC30C70046D78E /* upsample.h in Headers */,
+ 28EB75F60FDC30C70046D78E /* white.h in Headers */,
+ 28EB75F90FDC322A0046D78E /* xldmem.h in Headers */,
+ 28EB75FA0FDC322A0046D78E /* xlisp.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -5559,6 +6722,101 @@
);
runOnlyForDeploymentPostprocessing = 0;
};
+ 2800FE030FF322D4005CA9E5 /* Headers */ = {
+ isa = PBXHeadersBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 2800FE0D0FF32308005CA9E5 /* pminternal.h in Headers */,
+ 2800FE0F0FF32308005CA9E5 /* pmutil.h in Headers */,
+ 2800FE110FF32308005CA9E5 /* portmidi.h in Headers */,
+ 2800FE140FF32308005CA9E5 /* pmmac.h in Headers */,
+ 2800FE160FF32308005CA9E5 /* pmmacosxcm.h in Headers */,
+ 2800FE180FF32308005CA9E5 /* readbinaryplist.h in Headers */,
+ 2800FE190FF32308005CA9E5 /* porttime.h in Headers */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+ 283753E00F42875100364787 /* Headers */ = {
+ isa = PBXHeadersBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 283754080F4288EB00364787 /* apefooter.h in Headers */,
+ 2837540A0F4288EB00364787 /* apeitem.h in Headers */,
+ 2837540C0F4288EB00364787 /* apetag.h in Headers */,
+ 2837540E0F4288EB00364787 /* asfattribute.h in Headers */,
+ 283754100F4288EB00364787 /* asffile.h in Headers */,
+ 283754120F4288EB00364787 /* asfproperties.h in Headers */,
+ 283754140F4288EB00364787 /* asftag.h in Headers */,
+ 283754160F4288EB00364787 /* flacfile.h in Headers */,
+ 283754180F4288EB00364787 /* flacproperties.h in Headers */,
+ 2837541A0F4288EB00364787 /* mp4atom.h in Headers */,
+ 2837541C0F4288EB00364787 /* mp4file.h in Headers */,
+ 2837541E0F4288EB00364787 /* mp4item.h in Headers */,
+ 283754200F4288EB00364787 /* mp4properties.h in Headers */,
+ 283754220F4288EB00364787 /* mp4tag.h in Headers */,
+ 283754240F4288EB00364787 /* mpcfile.h in Headers */,
+ 283754260F4288EB00364787 /* mpcproperties.h in Headers */,
+ 283754280F4288EB00364787 /* id3v1genres.h in Headers */,
+ 2837542A0F4288EB00364787 /* id3v1tag.h in Headers */,
+ 2837542C0F4288EB00364787 /* attachedpictureframe.h in Headers */,
+ 2837542E0F4288EB00364787 /* commentsframe.h in Headers */,
+ 283754300F4288EB00364787 /* generalencapsulatedobjectframe.h in Headers */,
+ 283754320F4288EB00364787 /* popularimeterframe.h in Headers */,
+ 283754340F4288EB00364787 /* privateframe.h in Headers */,
+ 283754360F4288EB00364787 /* relativevolumeframe.h in Headers */,
+ 283754380F4288EB00364787 /* textidentificationframe.h in Headers */,
+ 2837543A0F4288EB00364787 /* uniquefileidentifierframe.h in Headers */,
+ 2837543C0F4288EB00364787 /* unknownframe.h in Headers */,
+ 2837543E0F4288EB00364787 /* unsynchronizedlyricsframe.h in Headers */,
+ 283754400F4288EB00364787 /* urllinkframe.h in Headers */,
+ 283754420F4288EB00364787 /* id3v2extendedheader.h in Headers */,
+ 283754440F4288EB00364787 /* id3v2footer.h in Headers */,
+ 283754460F4288EB00364787 /* id3v2frame.h in Headers */,
+ 283754480F4288EB00364787 /* id3v2framefactory.h in Headers */,
+ 2837544A0F4288EB00364787 /* id3v2header.h in Headers */,
+ 2837544C0F4288EB00364787 /* id3v2synchdata.h in Headers */,
+ 2837544E0F4288EB00364787 /* id3v2tag.h in Headers */,
+ 283754500F4288EB00364787 /* mpegfile.h in Headers */,
+ 283754510F4288EB00364787 /* mpegheader.h in Headers */,
+ 283754530F4288EB00364787 /* mpegproperties.h in Headers */,
+ 283754550F4288EB00364787 /* xingheader.h in Headers */,
+ 283754570F4288EB00364787 /* oggflacfile.h in Headers */,
+ 283754590F4288EB00364787 /* oggfile.h in Headers */,
+ 2837545B0F4288EB00364787 /* oggpage.h in Headers */,
+ 2837545D0F4288EB00364787 /* oggpageheader.h in Headers */,
+ 2837545F0F4288EB00364787 /* speexfile.h in Headers */,
+ 283754610F4288EB00364787 /* speexproperties.h in Headers */,
+ 283754630F4288EB00364787 /* vorbisfile.h in Headers */,
+ 283754650F4288EB00364787 /* vorbisproperties.h in Headers */,
+ 283754670F4288EB00364787 /* xiphcomment.h in Headers */,
+ 283754690F4288EB00364787 /* aifffile.h in Headers */,
+ 2837546B0F4288EB00364787 /* aiffproperties.h in Headers */,
+ 2837546D0F4288EB00364787 /* rifffile.h in Headers */,
+ 2837546F0F4288EB00364787 /* wavfile.h in Headers */,
+ 283754710F4288EB00364787 /* wavproperties.h in Headers */,
+ 283754730F4288EB00364787 /* audioproperties.h in Headers */,
+ 283754750F4288EB00364787 /* fileref.h in Headers */,
+ 283754770F4288EB00364787 /* tag.h in Headers */,
+ 283754780F4288EB00364787 /* taglib_export.h in Headers */,
+ 2837547A0F4288EB00364787 /* tagunion.h in Headers */,
+ 2837547B0F4288EB00364787 /* taglib.h in Headers */,
+ 2837547D0F4288EB00364787 /* tbytevector.h in Headers */,
+ 2837547F0F4288EB00364787 /* tbytevectorlist.h in Headers */,
+ 283754810F4288EB00364787 /* tdebug.h in Headers */,
+ 283754830F4288EB00364787 /* tfile.h in Headers */,
+ 283754840F4288EB00364787 /* tlist.h in Headers */,
+ 283754860F4288EB00364787 /* tmap.h in Headers */,
+ 283754880F4288EB00364787 /* tstring.h in Headers */,
+ 2837548A0F4288EB00364787 /* tstringlist.h in Headers */,
+ 2837548C0F4288EB00364787 /* unicode.h in Headers */,
+ 2837548E0F4288EB00364787 /* trueaudiofile.h in Headers */,
+ 283754900F4288EB00364787 /* trueaudioproperties.h in Headers */,
+ 283754920F4288EB00364787 /* wavpackfile.h in Headers */,
+ 283754940F4288EB00364787 /* wavpackproperties.h in Headers */,
+ 283754A60F428A8E00364787 /* config.h in Headers */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
2840CECC0AEB803C00F49FC3 /* Headers */ = {
isa = PBXHeadersBuildPhase;
buildActionMask = 2147483647;
@@ -5953,24 +7211,6 @@
productReference = 170740D40988F820008541CC /* libvorbis.a */;
productType = "com.apple.product-type.library.static";
};
- 170741420988FDB3008541CC /* intgen */ = {
- isa = PBXNativeTarget;
- buildConfigurationList = 170741450988FDD2008541CC /* Build configuration list for PBXNativeTarget "intgen" */;
- buildPhases = (
- 170741400988FDB3008541CC /* Sources */,
- 170741410988FDB3008541CC /* Frameworks */,
- 17C8C08B098B68BF00216F16 /* Build sndfnint */,
- 28EB47C80AFD4C6C00502984 /* Build seqfnint */,
- );
- buildRules = (
- );
- dependencies = (
- );
- name = intgen;
- productName = intgen;
- productReference = 170741430988FDB3008541CC /* intgen */;
- productType = "com.apple.product-type.tool";
- };
176A1A5A098B7B8D00DC73B4 /* libnyquist */ = {
isa = PBXNativeTarget;
buildConfigurationList = 176A1B65098B7BDC00DC73B4 /* Build configuration list for PBXNativeTarget "libnyquist" */;
@@ -5981,7 +7221,6 @@
buildRules = (
);
dependencies = (
- 176A1B6C098B7C5900DC73B4 /* PBXTargetDependency */,
);
name = libnyquist;
productName = libnyquist;
@@ -6028,8 +7267,8 @@
1790AFAC09883B6D008A330A /* Resources */,
1790AFAD09883B6D008A330A /* Sources */,
1790AFAE09883B6D008A330A /* Frameworks */,
- 28AA28CA0F267E3E008AED9E /* Copy Nyquist Files */,
- 28AA28F00F267FF0008AED9E /* Copy Plug-in Files */,
+ 2878AF000F340F9E00396567 /* Copy nyquist */,
+ 2878AF020F340FE700396567 /* Copy plug-ins */,
);
buildRules = (
286D31370F264C38004E6E4A /* PBXBuildRule */,
@@ -6039,6 +7278,7 @@
17C99D51098970800041B1BC /* PBXTargetDependency */,
176EEC7109A2F54D00188F3B /* PBXTargetDependency */,
176EEC7309A2F55100188F3B /* PBXTargetDependency */,
+ 2800FE280FF323C0005CA9E5 /* PBXTargetDependency */,
17C99D4F098970800041B1BC /* PBXTargetDependency */,
17C99D4D098970800041B1BC /* PBXTargetDependency */,
176A1B6E098B7C7200DC73B4 /* PBXTargetDependency */,
@@ -6054,12 +7294,48 @@
17C99D45098970800041B1BC /* PBXTargetDependency */,
2840CF800AEB822100F49FC3 /* PBXTargetDependency */,
ED2707480EF9C55A007D4FFD /* PBXTargetDependency */,
+ 283754980F42895700364787 /* PBXTargetDependency */,
+ 28ABC8EA0FD6441D00F9992A /* PBXTargetDependency */,
);
name = Audacity;
productName = Audacity;
productReference = 1790AFB009883B6D008A330A /* Audacity.app */;
productType = "com.apple.product-type.application";
};
+ 2800FE060FF322D4005CA9E5 /* portmidi */ = {
+ isa = PBXNativeTarget;
+ buildConfigurationList = 2800FE1D0FF32326005CA9E5 /* Build configuration list for PBXNativeTarget "portmidi" */;
+ buildPhases = (
+ 2800FE030FF322D4005CA9E5 /* Headers */,
+ 2800FE040FF322D4005CA9E5 /* Sources */,
+ 2800FE050FF322D4005CA9E5 /* Frameworks */,
+ );
+ buildRules = (
+ );
+ dependencies = (
+ );
+ name = portmidi;
+ productName = portmidi;
+ productReference = 2800FE070FF322D4005CA9E5 /* libportmidi.a */;
+ productType = "com.apple.product-type.library.static";
+ };
+ 283753E30F42875100364787 /* taglib */ = {
+ isa = PBXNativeTarget;
+ buildConfigurationList = 283753EB0F42875A00364787 /* Build configuration list for PBXNativeTarget "taglib" */;
+ buildPhases = (
+ 283753E00F42875100364787 /* Headers */,
+ 283753E10F42875100364787 /* Sources */,
+ 283753E20F42875100364787 /* Frameworks */,
+ );
+ buildRules = (
+ );
+ dependencies = (
+ );
+ name = taglib;
+ productName = taglib;
+ productReference = 283753E40F42875100364787 /* libtaglib.a */;
+ productType = "com.apple.product-type.library.static";
+ };
2840CECB0AEB803C00F49FC3 /* twolame */ = {
isa = PBXNativeTarget;
buildConfigurationList = 2840CF1D0AEB803C00F49FC3 /* Build configuration list for PBXNativeTarget "twolame" */;
@@ -6265,11 +7541,11 @@
28501EAF0CEED1F00029ABAA /* libvamp */,
2880527D0DEA694100671EA4 /* mod-script-pipe */,
28E67F510A3A160D0021D89F /* portaudio-v19 */,
+ 2800FE060FF322D4005CA9E5 /* portmidi */,
170740950988F2F7008541CC /* portmixer */,
17073EE70988DBDD008541CC /* portsmf */,
170740790988F1BB008541CC /* soundtouch */,
2840CECB0AEB803C00F49FC3 /* twolame */,
- 170741420988FDB3008541CC /* intgen */,
287BD8870E25DA3700CB4467 /* raptor */,
287BD89D0E25DA5500CB4467 /* rasqal */,
287BD8A60E25DA6500CB4467 /* librdf */,
@@ -6277,6 +7553,7 @@
287BD9950E25DF2800CB4467 /* slv2 */,
28E236F40E515D1D00281398 /* libscorealign */,
ED2706F30EF9C3C6007D4FFD /* libsbsms */,
+ 283753E30F42875100364787 /* taglib */,
);
};
/* End PBXProject section */
@@ -6339,115 +7616,37 @@
shellPath = /bin/sh;
shellScript = "make -C $TOPLEVEL/lib-src/libmad mad.h\nexit $?\n";
};
- 17C8C08B098B68BF00216F16 /* Build sndfnint */ = {
+ 2878AF000F340F9E00396567 /* Copy nyquist */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputPaths = (
- "$(TOPLEVEL)/lib-src/libnyquist/snd/snd.h",
- "$(TOPLEVEL)/lib-src/libnyquist/nyqsrc/sound.h",
- "$(TOPLEVEL)/lib-src/libnyquist/nyqsrc/downsample.h",
- "$(TOPLEVEL)/lib-src/libnyquist/nyqsrc/sndread.h",
- "$(TOPLEVEL)/lib-src/libnyquist/nyqsrc/sndseq.h",
- "$(TOPLEVEL)/lib-src/libnyquist/nyqsrc/add.h",
- "$(TOPLEVEL)/lib-src/libnyquist/nyqsrc/multiseq.h",
- "$(TOPLEVEL)/lib-src/libnyquist/nyqsrc/samples.h",
- "$(TOPLEVEL)/lib-src/libnyquist/nyqsrc/sndwrite.h",
- "$(TOPLEVEL)/lib-src/libnyquist/nyqsrc/sndmax.h",
- "$(TOPLEVEL)/lib-src/libnyquist/nyqsrc/compose.h",
- "$(TOPLEVEL)/lib-src/libnyquist/nyqsrc/inverse.h",
- "$(TOPLEVEL)/lib-src/libnyquist/nyqsrc/resamp.h",
- "$(TOPLEVEL)/lib-src/libnyquist/nyqsrc/resampv.h",
- "$(TOPLEVEL)/lib-src/libnyquist/nyqsrc/fft.h",
- "$(TOPLEVEL)/lib-src/libnyquist/nyqsrc/avg.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/amosc.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/clip.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/const.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/fmosc.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/integrate.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/log.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/maxv.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/osc.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/prod.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/buzz.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/pwl.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/recip.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/upsample.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/scale.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/sine.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/partial.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/white.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/tone.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/tonev.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/atonev.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/atone.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/reson.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/areson.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/resonvc.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/resoncv.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/aresonvc.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/aresoncv.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/resonvv.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/aresonvv.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/offset.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/slope.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/delay.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/delaycv.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/shape.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/sampler.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/exp.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/siosc.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/follow.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/gate.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/quantize.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/ifft.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/congen.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/fromobject.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/fromarraystream.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/coterm.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/convolve.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/alpass.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/oneshot.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/chase.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/tapv.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/biquad.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/pluck.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/abs.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/sqrt.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/alpasscv.h",
- "$(TOPLEVEL)/lib-src/libnyquist/tran/alpassvc.h",
- );
- name = "Build sndfnint";
+ "$(TOPLEVEL)/nyquist",
+ );
+ name = "Copy nyquist";
outputPaths = (
- "$(TOPLEVEL)/lib-src/libnyquist/nyqsrc/sndfnint.c",
+ "$(TARGET_BUILD_DIR)/nyquist",
);
runOnlyForDeploymentPostprocessing = 0;
- shellPath = /bin/bash;
- shellScript = "cd $TOPLEVEL/lib-src/libnyquist\nNYQHDRS=\nfor (( i = 0; i < $SCRIPT_INPUT_FILE_COUNT; i++ ))\ndo\n\teval hdr=\\$SCRIPT_INPUT_FILE_$i\n\tNYQHDRS=\"$NYQHDRS $(basename $(dirname $hdr))/$(basename $hdr)\"\ndone\n\"$TARGET_BUILD_DIR/intgen\" nyqsrc/sndfnint $NYQHDRS\n";
+ shellPath = /bin/sh;
+ shellScript = "cp -r \"$TOPLEVEL/nyquist\" \"$TARGET_BUILD_DIR/nyquist\"";
};
- 28EB47C80AFD4C6C00502984 /* Build seqfnint */ = {
+ 2878AF020F340FE700396567 /* Copy plug-ins */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputPaths = (
- "$(TOPLEVEL)/lib-src/libnyquist/cmt/seqdecls.h",
- "$(TOPLEVEL)/lib-src/libnyquist/nyqsrc/seqext.h",
- "$(TOPLEVEL)/lib-src/libnyquist/cmt/seq.h",
- "$(TOPLEVEL)/lib-src/libnyquist/nyqsrc/seqinterf.h",
- "$(TOPLEVEL)/lib-src/libnyquist/cmt/seqread.h",
- "$(TOPLEVEL)/lib-src/libnyquist/cmt/seqmread.h",
- "$(TOPLEVEL)/lib-src/libnyquist/cmt/seqwrite.h",
- "$(TOPLEVEL)/lib-src/libnyquist/cmt/seqmwrite.h",
- );
- name = "Build seqfnint";
+ "$(TOPLEVEL)/plug-ins",
+ );
+ name = "Copy plug-ins";
outputPaths = (
- "$(TOPLEVEL)/lib-src/libnyquist/nyqsrc/seqfnint.c",
+ "$(TARGET_BUILD_DIR)/plug-ins",
);
runOnlyForDeploymentPostprocessing = 0;
- shellPath = /bin/bash;
- shellScript = "cd $TOPLEVEL/lib-src/libnyquist\nCMTHDRS=\nfor (( i = 0; i < $SCRIPT_INPUT_FILE_COUNT; i++ ))\ndo\n\teval hdr=\\$SCRIPT_INPUT_FILE_$i\n\tCMTHDRS=\"$CMTHDRS $(basename $(dirname $hdr))/$(basename $hdr)\"\ndone\n\"$TARGET_BUILD_DIR/intgen\" nyqsrc/seqfnint $CMTHDRS\n";
+ shellPath = /bin/sh;
+ shellScript = "set -x\npwd\ncp -r \"$TOPLEVEL/plug-ins\" \"$TARGET_BUILD_DIR/plug-ins\"\n";
};
/* End PBXShellScriptBuildPhase section */
@@ -6607,6 +7806,11 @@
176EE9DF09A2EC1000188F3B /* flac.c in Sources */,
176EE9E009A2EC1000188F3B /* g72x.c in Sources */,
283A11A50A2C0DE7004372C4 /* broadcast.c in Sources */,
+ 287DBE890F3F6B2700C5BBED /* audio_detect.c in Sources */,
+ 287DBE8A0F3F6B2700C5BBED /* chunk.c in Sources */,
+ 287DBE8B0F3F6B2700C5BBED /* ima_oki_adpcm.c in Sources */,
+ 287DBE8D0F3F6B2700C5BBED /* mpc2k.c in Sources */,
+ 287DBE8E0F3F6B2700C5BBED /* rf64.c in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -6664,154 +7868,210 @@
);
runOnlyForDeploymentPostprocessing = 0;
};
- 170741400988FDB3008541CC /* Sources */ = {
- isa = PBXSourcesBuildPhase;
- buildActionMask = 2147483647;
- files = (
- 176A1A55098B7AFB00DC73B4 /* cmdline.c in Sources */,
- 176A1A56098B7AFB00DC73B4 /* intgen.c in Sources */,
- );
- runOnlyForDeploymentPostprocessing = 0;
- };
176A1A58098B7B8D00DC73B4 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
- 17CBAD40098B84E300575C58 /* cext.c in Sources */,
- 17CBAD42098B84E300575C58 /* cleanup.c in Sources */,
- 17CBAD44098B84E300575C58 /* cmdline.c in Sources */,
- 17CBAD46098B84E300575C58 /* cmtcmd.c in Sources */,
- 17CBAD4A098B84E300575C58 /* mem.c in Sources */,
- 17CBAD50098B84E300575C58 /* midifile.c in Sources */,
- 17CBAD52098B84E300575C58 /* midifns.c in Sources */,
- 17CBAD54098B84E300575C58 /* moxc.c in Sources */,
- 17CBAD58098B84E300575C58 /* record.c in Sources */,
- 17CBAD5A098B84E300575C58 /* seq.c in Sources */,
- 17CBAD5D098B84E300575C58 /* seqmread.c in Sources */,
- 17CBAD5F098B84E300575C58 /* seqmwrite.c in Sources */,
- 17CBAD61098B84E300575C58 /* seqread.c in Sources */,
- 17CBAD63098B84E300575C58 /* seqwrite.c in Sources */,
- 17CBAD66098B84E300575C58 /* tempomap.c in Sources */,
- 17CBAD68098B84E300575C58 /* timebase.c in Sources */,
- 17CBAD6A098B84E300575C58 /* userio.c in Sources */,
- 17CBAD6C098B84E300575C58 /* fftn.c in Sources */,
- 17CBAD6E098B84E300575C58 /* add.c in Sources */,
- 17CBAD70098B84E300575C58 /* avg.c in Sources */,
- 17CBAD72098B84E300575C58 /* compose.c in Sources */,
- 17CBAD75098B84E300575C58 /* debug.c in Sources */,
- 17CBAD77098B84E300575C58 /* downsample.c in Sources */,
- 17CBAD79098B84E300575C58 /* falloc.c in Sources */,
- 17CBAD7B098B84E300575C58 /* ffilterkit.c in Sources */,
- 17CBAD7D098B84E300575C58 /* fft.c in Sources */,
- 17CBAD82098B84E300575C58 /* handlers.c in Sources */,
- 17CBAD83098B84E300575C58 /* inverse.c in Sources */,
- 17CBAD85098B84E300575C58 /* local.c in Sources */,
- 17CBAD88098B84E300575C58 /* multiread.c in Sources */,
- 17CBAD8A098B84E300575C58 /* multiseq.c in Sources */,
- 17CBAD8C098B84E300575C58 /* resamp.c in Sources */,
- 17CBAD8E098B84E300575C58 /* resampv.c in Sources */,
- 17CBAD91098B84E300575C58 /* samples.c in Sources */,
- 17CBAD93098B84E300575C58 /* seqext.c in Sources */,
- 17CBAD95098B84E300575C58 /* seqfnint.c in Sources */,
- 17CBAD98098B84E300575C58 /* seqinterf.c in Sources */,
- 17CBAD9A098B84E300575C58 /* sndfail.c in Sources */,
- 17CBAD9B098B84E300575C58 /* sndfnint.c in Sources */,
- 17CBAD9E098B84E300575C58 /* sndmax.c in Sources */,
- 17CBADA0098B84E300575C58 /* sndread.c in Sources */,
- 17CBADA2098B84E300575C58 /* sndseq.c in Sources */,
- 17CBADA4098B84E300575C58 /* sndwrite.c in Sources */,
- 17CBADA6098B84E300575C58 /* sound.c in Sources */,
- 17CBADA8098B84E300575C58 /* stats.c in Sources */,
- 17CBADAA098B84E300575C58 /* nyx.c in Sources */,
- 17CBADAC098B84E300575C58 /* audionone.c in Sources */,
- 17CBADAD098B84E300575C58 /* ieeecvt.c in Sources */,
- 17CBADAF098B84E300575C58 /* snd.c in Sources */,
- 17CBADB2098B84E300575C58 /* sndcvt.c in Sources */,
- 17CBADB6098B84E300575C58 /* sndheader.c in Sources */,
- 17CBADB8098B84E300575C58 /* sndio.c in Sources */,
- 17CBADB9098B84E300575C58 /* sndlinux.c in Sources */,
- 17CBADBD098B84E300575C58 /* term.c in Sources */,
- 28EB47D40AFD542100502984 /* abs.c in Sources */,
- 17CBADBF098B84E300575C58 /* alpass.c in Sources */,
- 17CBADC1098B84E300575C58 /* amosc.c in Sources */,
- 17CBADC3098B84E300575C58 /* areson.c in Sources */,
- 17CBADC5098B84E300575C58 /* aresoncv.c in Sources */,
- 17CBADC7098B84E300575C58 /* aresonvc.c in Sources */,
- 17CBADC9098B84E300575C58 /* aresonvv.c in Sources */,
- 17CBADCB098B84E300575C58 /* atone.c in Sources */,
- 17CBADCD098B84E300575C58 /* atonev.c in Sources */,
- 17CBADCF098B84E300575C58 /* biquad.c in Sources */,
- 17CBADD1098B84E300575C58 /* buzz.c in Sources */,
- 17CBADD3098B84E300575C58 /* chase.c in Sources */,
- 17CBADD5098B84E300575C58 /* clip.c in Sources */,
- 17CBADD7098B84E300575C58 /* congen.c in Sources */,
- 17CBADD9098B84E300575C58 /* const.c in Sources */,
- 17CBADDB098B84E300575C58 /* convolve.c in Sources */,
- 17CBADDD098B84E300575C58 /* coterm.c in Sources */,
- 17CBADDF098B84E300575C58 /* delay.c in Sources */,
- 17CBADE1098B84E300575C58 /* delaycv.c in Sources */,
- 17CBADE3098B84E300575C58 /* exp.c in Sources */,
- 17CBADE5098B84E300575C58 /* fmosc.c in Sources */,
- 17CBADE7098B84E300575C58 /* follow.c in Sources */,
- 17CBADE9098B84E300575C58 /* fromarraystream.c in Sources */,
- 17CBADEB098B84E300575C58 /* fromobject.c in Sources */,
- 17CBADED098B84E300575C58 /* gate.c in Sources */,
- 17CBADEF098B84E300575C58 /* ifft.c in Sources */,
- 17CBADF1098B84E300575C58 /* integrate.c in Sources */,
- 17CBADF3098B84E300575C58 /* log.c in Sources */,
- 17CBADF5098B84E300575C58 /* maxv.c in Sources */,
- 17CBADF7098B84E300575C58 /* offset.c in Sources */,
- 17CBADF9098B84E300575C58 /* oneshot.c in Sources */,
- 17CBADFB098B84E300575C58 /* osc.c in Sources */,
- 17CBADFD098B84E300575C58 /* partial.c in Sources */,
- 17CBADFF098B84E300575C58 /* pluck.c in Sources */,
- 17CBAE01098B84E300575C58 /* prod.c in Sources */,
- 17CBAE03098B84E300575C58 /* pwl.c in Sources */,
- 17CBAE05098B84E300575C58 /* quantize.c in Sources */,
- 17CBAE07098B84E300575C58 /* recip.c in Sources */,
- 17CBAE09098B84E300575C58 /* reson.c in Sources */,
- 17CBAE0B098B84E300575C58 /* resoncv.c in Sources */,
- 17CBAE0D098B84E300575C58 /* resonvc.c in Sources */,
- 17CBAE0F098B84E300575C58 /* resonvv.c in Sources */,
- 17CBAE11098B84E300575C58 /* sampler.c in Sources */,
- 17CBAE13098B84E300575C58 /* scale.c in Sources */,
- 17CBAE15098B84E300575C58 /* shape.c in Sources */,
- 17CBAE17098B84E300575C58 /* sine.c in Sources */,
- 17CBAE19098B84E300575C58 /* siosc.c in Sources */,
- 17CBAE1B098B84E300575C58 /* slope.c in Sources */,
- 28EB47D60AFD547600502984 /* sqrt.c in Sources */,
- 17CBAE1D098B84E300575C58 /* tapv.c in Sources */,
- 17CBAE1F098B84E300575C58 /* tone.c in Sources */,
- 17CBAE21098B84E300575C58 /* tonev.c in Sources */,
- 17CBAE23098B84E300575C58 /* upsample.c in Sources */,
- 17CBAE25098B84E300575C58 /* white.c in Sources */,
- 17CBAE27098B84E300575C58 /* extern.c in Sources */,
- 17CBAE2B098B84E300575C58 /* path.c in Sources */,
- 17CBAE2C098B84E300575C58 /* xlbfun.c in Sources */,
- 17CBAE2D098B84E300575C58 /* xlcont.c in Sources */,
- 17CBAE2E098B84E300575C58 /* xldbug.c in Sources */,
- 17CBAE2F098B84E300575C58 /* xldmem.c in Sources */,
- 17CBAE31098B84E300575C58 /* xleval.c in Sources */,
- 17CBAE32098B84E300575C58 /* xlfio.c in Sources */,
- 17CBAE33098B84E300575C58 /* xlftab.c in Sources */,
- 17CBAE34098B84E300575C58 /* xlglob.c in Sources */,
- 17CBAE35098B84E300575C58 /* xlimage.c in Sources */,
- 17CBAE36098B84E300575C58 /* xlinit.c in Sources */,
- 17CBAE37098B84E300575C58 /* xlio.c in Sources */,
- 17CBAE38098B84E300575C58 /* xlisp.c in Sources */,
- 17CBAE3A098B84E300575C58 /* xljump.c in Sources */,
- 17CBAE3B098B84E300575C58 /* xllist.c in Sources */,
- 17CBAE3C098B84E300575C58 /* xlmath.c in Sources */,
- 17CBAE3D098B84E300575C58 /* xlobj.c in Sources */,
- 17CBAE3E098B84E300575C58 /* xlpp.c in Sources */,
- 17CBAE3F098B84E300575C58 /* xlprin.c in Sources */,
- 17CBAE40098B84E300575C58 /* xlread.c in Sources */,
- 17CBAE41098B84E300575C58 /* xlstr.c in Sources */,
- 17CBAE42098B84E300575C58 /* xlsubr.c in Sources */,
- 17CBAE43098B84E300575C58 /* xlsym.c in Sources */,
- 17CBAE44098B84E300575C58 /* xlsys.c in Sources */,
- 28D0255B0AFDA53B0035F843 /* alpasscv.c in Sources */,
- 28D0255D0AFDA53B0035F843 /* alpassvc.c in Sources */,
+ 284A7B920F31571C001D7A67 /* nyx.c in Sources */,
+ 284A7B940F31571C001D7A67 /* xlextstart.c in Sources */,
+ 284A82990F3158A2001D7A67 /* cext.c in Sources */,
+ 284A829B0F3158A2001D7A67 /* cleanup.c in Sources */,
+ 284A829D0F3158A2001D7A67 /* cmdline.c in Sources */,
+ 284A829F0F3158A2001D7A67 /* cmtcmd.c in Sources */,
+ 284A82A50F3158A2001D7A67 /* mem.c in Sources */,
+ 284A82AB0F3158A2001D7A67 /* midifile.c in Sources */,
+ 284A82AD0F3158A2001D7A67 /* midifns.c in Sources */,
+ 284A82B10F3158A2001D7A67 /* moxc.c in Sources */,
+ 284A82B50F3158A2001D7A67 /* record.c in Sources */,
+ 284A82B70F3158A2001D7A67 /* seq.c in Sources */,
+ 284A82BA0F3158A2001D7A67 /* seqmread.c in Sources */,
+ 284A82BC0F3158A2001D7A67 /* seqmwrite.c in Sources */,
+ 284A82BE0F3158A2001D7A67 /* seqread.c in Sources */,
+ 284A82C00F3158A2001D7A67 /* seqwrite.c in Sources */,
+ 284A82C30F3158A2001D7A67 /* tempomap.c in Sources */,
+ 284A82C50F3158A2001D7A67 /* timebase.c in Sources */,
+ 284A82C70F3158A2001D7A67 /* userio.c in Sources */,
+ 284A82CB0F3158A2001D7A67 /* add.c in Sources */,
+ 284A82CD0F3158A2001D7A67 /* avg.c in Sources */,
+ 284A82CF0F3158A2001D7A67 /* compose.c in Sources */,
+ 284A82D10F3158A2001D7A67 /* convolve.c in Sources */,
+ 284A82D40F3158A2001D7A67 /* debug.c in Sources */,
+ 284A82D60F3158A2001D7A67 /* downsample.c in Sources */,
+ 284A82DB0F3158A2001D7A67 /* falloc.c in Sources */,
+ 284A82DD0F3158A2001D7A67 /* ffilterkit.c in Sources */,
+ 284A82E00F3158A2001D7A67 /* fft.c in Sources */,
+ 284A82E60F3158A2001D7A67 /* handlers.c in Sources */,
+ 284A82E70F3158A2001D7A67 /* inverse.c in Sources */,
+ 284A82E90F3158A2001D7A67 /* local.c in Sources */,
+ 284A82EC0F3158A2001D7A67 /* lpanal.c in Sources */,
+ 284A82EE0F3158A2001D7A67 /* multiread.c in Sources */,
+ 284A82F00F3158A2001D7A67 /* multiseq.c in Sources */,
+ 284A82F80F3158A2001D7A67 /* probe.c in Sources */,
+ 284A82FA0F3158A2001D7A67 /* resamp.c in Sources */,
+ 284A82FC0F3158A2001D7A67 /* resampv.c in Sources */,
+ 284A82FF0F3158A2001D7A67 /* samples.c in Sources */,
+ 284A83010F3158A2001D7A67 /* seqext.c in Sources */,
+ 284A83030F3158A2001D7A67 /* seqfnint.c in Sources */,
+ 284A83060F3158A2001D7A67 /* seqinterf.c in Sources */,
+ 284A83080F3158A2001D7A67 /* sliders.c in Sources */,
+ 284A830C0F3158A2001D7A67 /* sndfnint.c in Sources */,
+ 284A830F0F3158A2001D7A67 /* sndmax.c in Sources */,
+ 284A83110F3158A2001D7A67 /* sndread.c in Sources */,
+ 284A83130F3158A2001D7A67 /* sndseq.c in Sources */,
+ 284A83180F3158A2001D7A67 /* sndwritepa.c in Sources */,
+ 284A83190F3158A2001D7A67 /* sound.c in Sources */,
+ 284A831B0F3158A2001D7A67 /* stats.c in Sources */,
+ 284A831D0F3158A2001D7A67 /* trigger.c in Sources */,
+ 284A831F0F3158A2001D7A67 /* yin.c in Sources */,
+ 284A83490F3158A2001D7A67 /* instr.cpp in Sources */,
+ 284A834B0F3158A2001D7A67 /* ADSR.cpp in Sources */,
+ 284A834C0F3158A2001D7A67 /* BandedWG.cpp in Sources */,
+ 284A834D0F3158A2001D7A67 /* BiQuad.cpp in Sources */,
+ 284A834E0F3158A2001D7A67 /* Bowed.cpp in Sources */,
+ 284A834F0F3158A2001D7A67 /* BowTable.cpp in Sources */,
+ 284A83500F3158A2001D7A67 /* Chorus.cpp in Sources */,
+ 284A83510F3158A2001D7A67 /* Clarinet.cpp in Sources */,
+ 284A83520F3158A2001D7A67 /* Delay.cpp in Sources */,
+ 284A83530F3158A2001D7A67 /* DelayA.cpp in Sources */,
+ 284A83540F3158A2001D7A67 /* DelayL.cpp in Sources */,
+ 284A83550F3158A2001D7A67 /* Effect.cpp in Sources */,
+ 284A83560F3158A2001D7A67 /* Envelope.cpp in Sources */,
+ 284A83570F3158A2001D7A67 /* FileRead.cpp in Sources */,
+ 284A83580F3158A2001D7A67 /* FileWvIn.cpp in Sources */,
+ 284A83590F3158A2001D7A67 /* Filter.cpp in Sources */,
+ 284A835A0F3158A2001D7A67 /* Flute.cpp in Sources */,
+ 284A835B0F3158A2001D7A67 /* Function.cpp in Sources */,
+ 284A835C0F3158A2001D7A67 /* Generator.cpp in Sources */,
+ 284A835D0F3158A2001D7A67 /* Instrmnt.cpp in Sources */,
+ 284A835E0F3158A2001D7A67 /* JCRev.cpp in Sources */,
+ 284A835F0F3158A2001D7A67 /* JetTable.cpp in Sources */,
+ 284A83600F3158A2001D7A67 /* Mandolin.cpp in Sources */,
+ 284A83610F3158A2001D7A67 /* Modal.cpp in Sources */,
+ 284A83620F3158A2001D7A67 /* ModalBar.cpp in Sources */,
+ 284A83630F3158A2001D7A67 /* Noise.cpp in Sources */,
+ 284A83640F3158A2001D7A67 /* NRev.cpp in Sources */,
+ 284A83650F3158A2001D7A67 /* OnePole.cpp in Sources */,
+ 284A83660F3158A2001D7A67 /* OneZero.cpp in Sources */,
+ 284A83670F3158A2001D7A67 /* PitShift.cpp in Sources */,
+ 284A83680F3158A2001D7A67 /* PluckTwo.cpp in Sources */,
+ 284A83690F3158A2001D7A67 /* PoleZero.cpp in Sources */,
+ 284A836A0F3158A2001D7A67 /* PRCRev.cpp in Sources */,
+ 284A836B0F3158A2001D7A67 /* ReedTable.cpp in Sources */,
+ 284A836C0F3158A2001D7A67 /* Saxofony.cpp in Sources */,
+ 284A836D0F3158A2001D7A67 /* SineWave.cpp in Sources */,
+ 284A836E0F3158A2001D7A67 /* Sitar.cpp in Sources */,
+ 284A836F0F3158A2001D7A67 /* Stk.cpp in Sources */,
+ 284A83700F3158A2001D7A67 /* WaveLoop.cpp in Sources */,
+ 284A83710F3158A2001D7A67 /* WvIn.cpp in Sources */,
+ 284A83720F3158A2001D7A67 /* stkinit.cpp in Sources */,
+ 284A83740F3158A2001D7A67 /* stkint.cpp in Sources */,
+ 284A83AE0F3158A2001D7A67 /* abs.c in Sources */,
+ 284A83B00F3158A2001D7A67 /* allpoles.c in Sources */,
+ 284A83B20F3158A2001D7A67 /* alpass.c in Sources */,
+ 284A83B40F3158A2001D7A67 /* alpasscv.c in Sources */,
+ 284A83B80F3158A2001D7A67 /* alpassvv.c in Sources */,
+ 284A83BA0F3158A2001D7A67 /* amosc.c in Sources */,
+ 284A83BC0F3158A2001D7A67 /* areson.c in Sources */,
+ 284A83BE0F3158A2001D7A67 /* aresoncv.c in Sources */,
+ 284A83C00F3158A2001D7A67 /* aresonvc.c in Sources */,
+ 284A83C20F3158A2001D7A67 /* aresonvv.c in Sources */,
+ 284A83C40F3158A2001D7A67 /* atone.c in Sources */,
+ 284A83C60F3158A2001D7A67 /* atonev.c in Sources */,
+ 284A83C80F3158A2001D7A67 /* biquadfilt.c in Sources */,
+ 284A83CA0F3158A2001D7A67 /* buzz.c in Sources */,
+ 284A83CC0F3158A2001D7A67 /* chase.c in Sources */,
+ 284A83CE0F3158A2001D7A67 /* clip.c in Sources */,
+ 284A83D00F3158A2001D7A67 /* congen.c in Sources */,
+ 284A83D20F3158A2001D7A67 /* const.c in Sources */,
+ 284A83D40F3158A2001D7A67 /* coterm.c in Sources */,
+ 284A83D60F3158A2001D7A67 /* delaycc.c in Sources */,
+ 284A83D80F3158A2001D7A67 /* delaycv.c in Sources */,
+ 284A83DA0F3158A2001D7A67 /* eqbandvvv.c in Sources */,
+ 284A83DC0F3158A2001D7A67 /* exp.c in Sources */,
+ 284A83DE0F3158A2001D7A67 /* fmfb.c in Sources */,
+ 284A83E00F3158A2001D7A67 /* fmfbv.c in Sources */,
+ 284A83E20F3158A2001D7A67 /* fmosc.c in Sources */,
+ 284A83E40F3158A2001D7A67 /* follow.c in Sources */,
+ 284A83E60F3158A2001D7A67 /* fromarraystream.c in Sources */,
+ 284A83E80F3158A2001D7A67 /* fromobject.c in Sources */,
+ 284A83EA0F3158A2001D7A67 /* gate.c in Sources */,
+ 284A83EC0F3158A2001D7A67 /* ifft.c in Sources */,
+ 284A83EE0F3158A2001D7A67 /* instrbanded.c in Sources */,
+ 284A83F00F3158A2001D7A67 /* instrbow.c in Sources */,
+ 284A83F20F3158A2001D7A67 /* instrbowedfreq.c in Sources */,
+ 284A83F40F3158A2001D7A67 /* instrclar.c in Sources */,
+ 284A83F60F3158A2001D7A67 /* instrclarall.c in Sources */,
+ 284A83F80F3158A2001D7A67 /* instrclarfreq.c in Sources */,
+ 284A83FA0F3158A2001D7A67 /* instrflute.c in Sources */,
+ 284A83FC0F3158A2001D7A67 /* instrfluteall.c in Sources */,
+ 284A83FE0F3158A2001D7A67 /* instrflutefreq.c in Sources */,
+ 284A84000F3158A2001D7A67 /* instrmandolin.c in Sources */,
+ 284A84020F3158A2001D7A67 /* instrmodalbar.c in Sources */,
+ 284A84040F3158A2001D7A67 /* instrsax.c in Sources */,
+ 284A84060F3158A2001D7A67 /* instrsaxall.c in Sources */,
+ 284A84080F3158A2001D7A67 /* instrsaxfreq.c in Sources */,
+ 284A840A0F3158A2001D7A67 /* instrsitar.c in Sources */,
+ 284A840C0F3158A2001D7A67 /* integrate.c in Sources */,
+ 284A840E0F3158A2001D7A67 /* log.c in Sources */,
+ 284A84100F3158A2001D7A67 /* lpreson.c in Sources */,
+ 284A84120F3158A2001D7A67 /* maxv.c in Sources */,
+ 284A84140F3158A2001D7A67 /* offset.c in Sources */,
+ 284A84160F3158A2001D7A67 /* oneshot.c in Sources */,
+ 284A84180F3158A2001D7A67 /* osc.c in Sources */,
+ 284A841A0F3158A2001D7A67 /* partial.c in Sources */,
+ 284A841C0F3158A2001D7A67 /* pluck.c in Sources */,
+ 284A841E0F3158A2001D7A67 /* prod.c in Sources */,
+ 284A84200F3158A2001D7A67 /* pwl.c in Sources */,
+ 284A84220F3158A2001D7A67 /* quantize.c in Sources */,
+ 284A84240F3158A2001D7A67 /* recip.c in Sources */,
+ 284A84260F3158A2001D7A67 /* reson.c in Sources */,
+ 284A84280F3158A2001D7A67 /* resoncv.c in Sources */,
+ 284A842A0F3158A2001D7A67 /* resonvc.c in Sources */,
+ 284A842C0F3158A2001D7A67 /* resonvv.c in Sources */,
+ 284A842E0F3158A2001D7A67 /* sampler.c in Sources */,
+ 284A84300F3158A2001D7A67 /* scale.c in Sources */,
+ 284A84320F3158A2001D7A67 /* shape.c in Sources */,
+ 284A84340F3158A2001D7A67 /* sine.c in Sources */,
+ 284A84360F3158A2001D7A67 /* siosc.c in Sources */,
+ 284A84380F3158A2001D7A67 /* slope.c in Sources */,
+ 284A843A0F3158A2001D7A67 /* sqrt.c in Sources */,
+ 284A843C0F3158A2001D7A67 /* stkchorus.c in Sources */,
+ 284A843E0F3158A2001D7A67 /* stkpitshift.c in Sources */,
+ 284A84400F3158A2001D7A67 /* stkrev.c in Sources */,
+ 284A84420F3158A2001D7A67 /* tapf.c in Sources */,
+ 284A84440F3158A2001D7A67 /* tapv.c in Sources */,
+ 284A84460F3158A2001D7A67 /* tone.c in Sources */,
+ 284A84480F3158A2001D7A67 /* tonev.c in Sources */,
+ 284A844A0F3158A2001D7A67 /* upsample.c in Sources */,
+ 284A844C0F3158A2001D7A67 /* white.c in Sources */,
+ 284A844E0F3158A2001D7A67 /* extern.c in Sources */,
+ 284A84520F3158A2001D7A67 /* path.c in Sources */,
+ 284A84530F3158A2001D7A67 /* xlbfun.c in Sources */,
+ 284A84540F3158A2001D7A67 /* xlcont.c in Sources */,
+ 284A84550F3158A2001D7A67 /* xldbug.c in Sources */,
+ 284A84560F3158A2001D7A67 /* xldmem.c in Sources */,
+ 284A84580F3158A2001D7A67 /* xleval.c in Sources */,
+ 284A84590F3158A2001D7A67 /* xlfio.c in Sources */,
+ 284A845A0F3158A2001D7A67 /* xlftab.c in Sources */,
+ 284A845B0F3158A2001D7A67 /* xlglob.c in Sources */,
+ 284A845C0F3158A2001D7A67 /* xlimage.c in Sources */,
+ 284A845D0F3158A2001D7A67 /* xlinit.c in Sources */,
+ 284A845E0F3158A2001D7A67 /* xlio.c in Sources */,
+ 284A845F0F3158A2001D7A67 /* xlisp.c in Sources */,
+ 284A84610F3158A2001D7A67 /* xljump.c in Sources */,
+ 284A84620F3158A2001D7A67 /* xllist.c in Sources */,
+ 284A84630F3158A2001D7A67 /* xlmath.c in Sources */,
+ 284A84640F3158A2001D7A67 /* xlobj.c in Sources */,
+ 284A84650F3158A2001D7A67 /* xlpp.c in Sources */,
+ 284A84660F3158A2001D7A67 /* xlprin.c in Sources */,
+ 284A84670F3158A2001D7A67 /* xlread.c in Sources */,
+ 284A84680F3158A2001D7A67 /* xlstr.c in Sources */,
+ 284A84690F3158A2001D7A67 /* xlsubr.c in Sources */,
+ 284A846A0F3158A2001D7A67 /* xlsym.c in Sources */,
+ 284A846B0F3158A2001D7A67 /* xlsys.c in Sources */,
+ 28A4E2AC0F60319300E9E7F2 /* fftext.c in Sources */,
+ 28A4E2AE0F60319300E9E7F2 /* fftlib.c in Sources */,
+ 28A4E2B00F60319300E9E7F2 /* matlib.c in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -6936,10 +8196,8 @@
1790B17C09883BFD008A330A /* NoteTrack.cpp in Sources */,
1790B17D09883BFD008A330A /* PitchName.cpp in Sources */,
1790B17E09883BFD008A330A /* PlatformCompatibility.cpp in Sources */,
- 1790B17F09883BFD008A330A /* AudioIOPrefs.cpp in Sources */,
1790B18009883BFD008A330A /* BatchPrefs.cpp in Sources */,
1790B18109883BFD008A330A /* DirectoriesPrefs.cpp in Sources */,
- 1790B18209883BFD008A330A /* FileFormatPrefs.cpp in Sources */,
1790B18309883BFD008A330A /* GUIPrefs.cpp in Sources */,
1790B18409883BFD008A330A /* KeyConfigPrefs.cpp in Sources */,
1790B18509883BFD008A330A /* MousePrefs.cpp in Sources */,
@@ -7021,7 +8279,6 @@
285DE1FA0BF03C7800A20DF0 /* Screenshot.cpp in Sources */,
2801A6460BF9268700648258 /* ImportQT.cpp in Sources */,
2801A6470BF9268700648258 /* ImportQTWrapper.cpp in Sources */,
- 28FB20350C415D9500F769E7 /* SmartRecordPrefs.cpp in Sources */,
2891B2870C531D2C0044FBE3 /* FindClipping.cpp in Sources */,
283AA0EB0C56ED08002CBD34 /* ErrorDialog.cpp in Sources */,
28501EA10CEECEF80029ABAA /* HelpText.cpp in Sources */,
@@ -7102,6 +8359,119 @@
286D31340F264BEE004E6E4A /* vi.po in Sources */,
286D31350F264BEE004E6E4A /* zh.po in Sources */,
286D31360F264BEE004E6E4A /* zh_TW.po in Sources */,
+ 18A2840F0F79BCAB0013A1BE /* Generator.cpp in Sources */,
+ 28CCDD000F939FD70081F2FC /* FileHistory.cpp in Sources */,
+ 28B97B890FBF771A0076CF28 /* VSTEffect.cpp in Sources */,
+ 2885BFF40FC108F800128165 /* LoadVST.cpp in Sources */,
+ 284B279A0FC66864005EAC96 /* DevicePrefs.cpp in Sources */,
+ 284B279B0FC66864005EAC96 /* ImportExportPrefs.cpp in Sources */,
+ 284B279C0FC66864005EAC96 /* LibraryPrefs.cpp in Sources */,
+ 284B279D0FC66864005EAC96 /* PlaybackPrefs.cpp in Sources */,
+ 284B279E0FC66864005EAC96 /* ProjectsPrefs.cpp in Sources */,
+ 284B279F0FC66864005EAC96 /* RecordingPrefs.cpp in Sources */,
+ 284B27E40FC66CCD005EAC96 /* TracksPrefs.cpp in Sources */,
+ 284B27E50FC66CCD005EAC96 /* WarningsPrefs.cpp in Sources */,
+ 28D540050FD1912A00FA7C75 /* AppCommandEvent.cpp in Sources */,
+ 28D540060FD1912A00FA7C75 /* CommandBuilder.cpp in Sources */,
+ 28D540070FD1912A00FA7C75 /* CommandHandler.cpp in Sources */,
+ 28D540080FD1912A00FA7C75 /* ScriptCommandRelay.cpp in Sources */,
+ 28DB34790FDC2C5D0011F589 /* ResponseQueue.cpp in Sources */,
+ 28DABFBE0FF19DB100AC7848 /* RealFFTf.cpp in Sources */,
+ 2800FE370FF32566005CA9E5 /* MidiIOPrefs.cpp in Sources */,
+ 1818559A0FFE916C0026D190 /* ScreenshotCommand.cpp in Sources */,
+ 1865A9B81004490500946EE6 /* Lyrics.cpp in Sources */,
+ 1865A9B91004490500946EE6 /* LyricsWindow.cpp in Sources */,
+ 289E750A1006D0BD00CEF79B /* MixerBoard.cpp in Sources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+ 2800FE040FF322D4005CA9E5 /* Sources */ = {
+ isa = PBXSourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 2800FE0E0FF32308005CA9E5 /* pmutil.c in Sources */,
+ 2800FE100FF32308005CA9E5 /* portmidi.c in Sources */,
+ 2800FE120FF32308005CA9E5 /* finddefault.c in Sources */,
+ 2800FE130FF32308005CA9E5 /* pmmac.c in Sources */,
+ 2800FE150FF32308005CA9E5 /* pmmacosxcm.c in Sources */,
+ 2800FE170FF32308005CA9E5 /* readbinaryplist.c in Sources */,
+ 2800FE1A0FF32308005CA9E5 /* ptmacosx_mach.c in Sources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+ 283753E10F42875100364787 /* Sources */ = {
+ isa = PBXSourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 283753FA0F4288BF00364787 /* mpegheader.cpp in Sources */,
+ 283754070F4288EB00364787 /* apefooter.cpp in Sources */,
+ 283754090F4288EB00364787 /* apeitem.cpp in Sources */,
+ 2837540B0F4288EB00364787 /* apetag.cpp in Sources */,
+ 2837540D0F4288EB00364787 /* asfattribute.cpp in Sources */,
+ 2837540F0F4288EB00364787 /* asffile.cpp in Sources */,
+ 283754110F4288EB00364787 /* asfproperties.cpp in Sources */,
+ 283754130F4288EB00364787 /* asftag.cpp in Sources */,
+ 283754150F4288EB00364787 /* flacfile.cpp in Sources */,
+ 283754170F4288EB00364787 /* flacproperties.cpp in Sources */,
+ 283754190F4288EB00364787 /* mp4atom.cpp in Sources */,
+ 2837541B0F4288EB00364787 /* mp4file.cpp in Sources */,
+ 2837541D0F4288EB00364787 /* mp4item.cpp in Sources */,
+ 2837541F0F4288EB00364787 /* mp4properties.cpp in Sources */,
+ 283754210F4288EB00364787 /* mp4tag.cpp in Sources */,
+ 283754230F4288EB00364787 /* mpcfile.cpp in Sources */,
+ 283754250F4288EB00364787 /* mpcproperties.cpp in Sources */,
+ 283754270F4288EB00364787 /* id3v1genres.cpp in Sources */,
+ 283754290F4288EB00364787 /* id3v1tag.cpp in Sources */,
+ 2837542B0F4288EB00364787 /* attachedpictureframe.cpp in Sources */,
+ 2837542D0F4288EB00364787 /* commentsframe.cpp in Sources */,
+ 2837542F0F4288EB00364787 /* generalencapsulatedobjectframe.cpp in Sources */,
+ 283754310F4288EB00364787 /* popularimeterframe.cpp in Sources */,
+ 283754330F4288EB00364787 /* privateframe.cpp in Sources */,
+ 283754350F4288EB00364787 /* relativevolumeframe.cpp in Sources */,
+ 283754370F4288EB00364787 /* textidentificationframe.cpp in Sources */,
+ 283754390F4288EB00364787 /* uniquefileidentifierframe.cpp in Sources */,
+ 2837543B0F4288EB00364787 /* unknownframe.cpp in Sources */,
+ 2837543D0F4288EB00364787 /* unsynchronizedlyricsframe.cpp in Sources */,
+ 2837543F0F4288EB00364787 /* urllinkframe.cpp in Sources */,
+ 283754410F4288EB00364787 /* id3v2extendedheader.cpp in Sources */,
+ 283754430F4288EB00364787 /* id3v2footer.cpp in Sources */,
+ 283754450F4288EB00364787 /* id3v2frame.cpp in Sources */,
+ 283754470F4288EB00364787 /* id3v2framefactory.cpp in Sources */,
+ 283754490F4288EB00364787 /* id3v2header.cpp in Sources */,
+ 2837544B0F4288EB00364787 /* id3v2synchdata.cpp in Sources */,
+ 2837544D0F4288EB00364787 /* id3v2tag.cpp in Sources */,
+ 2837544F0F4288EB00364787 /* mpegfile.cpp in Sources */,
+ 283754520F4288EB00364787 /* mpegproperties.cpp in Sources */,
+ 283754540F4288EB00364787 /* xingheader.cpp in Sources */,
+ 283754560F4288EB00364787 /* oggflacfile.cpp in Sources */,
+ 283754580F4288EB00364787 /* oggfile.cpp in Sources */,
+ 2837545A0F4288EB00364787 /* oggpage.cpp in Sources */,
+ 2837545C0F4288EB00364787 /* oggpageheader.cpp in Sources */,
+ 2837545E0F4288EB00364787 /* speexfile.cpp in Sources */,
+ 283754600F4288EB00364787 /* speexproperties.cpp in Sources */,
+ 283754620F4288EB00364787 /* vorbisfile.cpp in Sources */,
+ 283754640F4288EB00364787 /* vorbisproperties.cpp in Sources */,
+ 283754660F4288EB00364787 /* xiphcomment.cpp in Sources */,
+ 283754680F4288EB00364787 /* aifffile.cpp in Sources */,
+ 2837546A0F4288EB00364787 /* aiffproperties.cpp in Sources */,
+ 2837546C0F4288EB00364787 /* rifffile.cpp in Sources */,
+ 2837546E0F4288EB00364787 /* wavfile.cpp in Sources */,
+ 283754700F4288EB00364787 /* wavproperties.cpp in Sources */,
+ 283754720F4288EB00364787 /* audioproperties.cpp in Sources */,
+ 283754740F4288EB00364787 /* fileref.cpp in Sources */,
+ 283754760F4288EB00364787 /* tag.cpp in Sources */,
+ 283754790F4288EB00364787 /* tagunion.cpp in Sources */,
+ 2837547C0F4288EB00364787 /* tbytevector.cpp in Sources */,
+ 2837547E0F4288EB00364787 /* tbytevectorlist.cpp in Sources */,
+ 283754800F4288EB00364787 /* tdebug.cpp in Sources */,
+ 283754820F4288EB00364787 /* tfile.cpp in Sources */,
+ 283754870F4288EB00364787 /* tstring.cpp in Sources */,
+ 283754890F4288EB00364787 /* tstringlist.cpp in Sources */,
+ 2837548B0F4288EB00364787 /* unicode.cpp in Sources */,
+ 2837548D0F4288EB00364787 /* trueaudiofile.cpp in Sources */,
+ 2837548F0F4288EB00364787 /* trueaudioproperties.cpp in Sources */,
+ 283754910F4288EB00364787 /* wavpackfile.cpp in Sources */,
+ 283754930F4288EB00364787 /* wavpackproperties.cpp in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -7371,11 +8741,6 @@
target = 17072E880988BD39008541CC /* Configure */;
targetProxy = 17072E930988C35B008541CC /* PBXContainerItemProxy */;
};
- 176A1B6C098B7C5900DC73B4 /* PBXTargetDependency */ = {
- isa = PBXTargetDependency;
- target = 170741420988FDB3008541CC /* intgen */;
- targetProxy = 176A1B6B098B7C5900DC73B4 /* PBXContainerItemProxy */;
- };
176A1B6E098B7C7200DC73B4 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
target = 176A1A5A098B7B8D00DC73B4 /* libnyquist */;
@@ -7441,6 +8806,16 @@
target = 17073EE70988DBDD008541CC /* portsmf */;
targetProxy = 17C99D52098970800041B1BC /* PBXContainerItemProxy */;
};
+ 2800FE280FF323C0005CA9E5 /* PBXTargetDependency */ = {
+ isa = PBXTargetDependency;
+ target = 2800FE060FF322D4005CA9E5 /* portmidi */;
+ targetProxy = 2800FE270FF323C0005CA9E5 /* PBXContainerItemProxy */;
+ };
+ 283754980F42895700364787 /* PBXTargetDependency */ = {
+ isa = PBXTargetDependency;
+ target = 283753E30F42875100364787 /* taglib */;
+ targetProxy = 283754970F42895700364787 /* PBXContainerItemProxy */;
+ };
2840CF800AEB822100F49FC3 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
target = 2840CECB0AEB803C00F49FC3 /* twolame */;
@@ -7451,6 +8826,11 @@
target = 28501EAF0CEED1F00029ABAA /* libvamp */;
targetProxy = 28501F520CEED9A80029ABAA /* PBXContainerItemProxy */;
};
+ 28ABC8EA0FD6441D00F9992A /* PBXTargetDependency */ = {
+ isa = PBXTargetDependency;
+ target = 2880527D0DEA694100671EA4 /* mod-script-pipe */;
+ targetProxy = 28ABC8E90FD6441D00F9992A /* PBXContainerItemProxy */;
+ };
28E237270E515E1300281398 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
target = 28E236F40E515D1D00281398 /* libscorealign */;
@@ -7543,14 +8923,6 @@
};
name = "Debug Static";
};
- 17CAEBAC098C9B8E00337968 /* Debug Static */ = {
- isa = XCBuildConfiguration;
- baseConfigurationReference = 2812A5B90DF63FF000576305 /* Debug_Static.xcconfig */;
- buildSettings = {
- PRODUCT_NAME = intgen;
- };
- name = "Debug Static";
- };
17CAEBAD098C9B8E00337968 /* Debug Static */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = 2812A5B90DF63FF000576305 /* Debug_Static.xcconfig */;
@@ -7559,7 +8931,10 @@
CMTSTUFF,
EXT,
);
+ HEADER_SEARCH_PATHS = "";
PRODUCT_NAME = nyquist;
+ USER_HEADER_SEARCH_PATHS = "$(TOPLEVEL)/lib-src/portaudio-v19/include $(TOPLEVEL)/lib-src/libsndfile/src $(TOPLEVEL)/lib-src/libnyquist $(TOPLEVEL)/lib-src/libnyquist/nyquist/cmt $(TOPLEVEL)/lib-src/libnyquist/nyquist/ffts/** $(TOPLEVEL)/lib-src/libnyquist/nyquist/nyqsrc $(TOPLEVEL)/lib-src/libnyquist/nyquist/nyqstk $(TOPLEVEL)/lib-src/libnyquist/nyquist/nyqstk/include $(TOPLEVEL)/lib-src/libnyquist/nyquist/sys/unix $(TOPLEVEL)/lib-src/libnyquist/nyquist/tran $(TOPLEVEL)/lib-src/libnyquist/nyquist/xlisp";
+ USE_HEADERMAP = "";
};
name = "Debug Static";
};
@@ -7663,6 +9038,8 @@
"-framework",
CoreAudio,
"-framework",
+ CoreMIDI,
+ "-framework",
AudioUnit,
"-framework",
AudioToolbox,
@@ -7673,7 +9050,7 @@
"-lFLAC",
);
PRODUCT_NAME = Audacity;
- USER_HEADER_SEARCH_PATHS = "$(TOPLEVEL)/mac $(TOPLEVEL)/src/** $(TOPLEVEL)/lib-src/expat $(TOPLEVEL)/lib-src/FileDialog $(TOPLEVEL)/lib-src/libflac/include $(TOPLEVEL)/lib-src/libid3tag $(TOPLEVEL)/lib-src/libmad $(TOPLEVEL)/lib-src/libogg/include $(TOPLEVEL)/lib-src/libnyquist/nyq $(TOPLEVEL)/lib-src/libresample/include $(TOPLEVEL)/lib-src/libsndfile/src $(TOPLEVEL)/lib-src/libvamp $(TOPLEVEL)/lib-src/libvorbis/include $(TOPLEVEL)/lib-src/liblrdf/src $(TOPLEVEL)/lib-src/portaudio-v19/include $(TOPLEVEL)/lib-src/portmixer/px_common $(TOPLEVEL)/lib-src/portsmf $(TOPLEVEL)/lib-src/redland/librdf $(TOPLEVEL)/lib-src/slv2 $(TOPLEVEL)/lib-src/soundtouch/include $(TOPLEVEL)/lib-src/twolame/libtwolame";
+ USER_HEADER_SEARCH_PATHS = "$(TOPLEVEL)/mac $(TOPLEVEL)/src/** $(TOPLEVEL)/lib-src/expat $(TOPLEVEL)/lib-src/FileDialog $(TOPLEVEL)/lib-src/libflac/include $(TOPLEVEL)/lib-src/libid3tag $(TOPLEVEL)/lib-src/libmad $(TOPLEVEL)/lib-src/libogg/include $(TOPLEVEL)/lib-src/libnyquist/nyq $(TOPLEVEL)/lib-src/libresample/include $(TOPLEVEL)/lib-src/libsndfile/src $(TOPLEVEL)/lib-src/libvamp $(TOPLEVEL)/lib-src/libvorbis/include $(TOPLEVEL)/lib-src/liblrdf/src $(TOPLEVEL)/lib-src/portaudio-v19/include $(TOPLEVEL)/lib-src/portmixer/px_common $(TOPLEVEL)/lib-src/portsmf $(TOPLEVEL)/lib-src/redland/librdf $(TOPLEVEL)/lib-src/slv2 $(TOPLEVEL)/lib-src/soundtouch/include $(TOPLEVEL/lib-src/taglib $(TOPLEVEL)/lib-src/twolame/libtwolame";
};
name = "Debug Static";
};
@@ -7706,6 +9083,66 @@
};
name = "Debug Static";
};
+ 2800FE080FF322D5005CA9E5 /* Debug Static */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ PRODUCT_NAME = portmidi;
+ };
+ name = "Debug Static";
+ };
+ 2800FE090FF322D5005CA9E5 /* Debug Shared */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ PRODUCT_NAME = portmidi;
+ };
+ name = "Debug Shared";
+ };
+ 2800FE0A0FF322D5005CA9E5 /* Release Static */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ PRODUCT_NAME = portmidi;
+ };
+ name = "Release Static";
+ };
+ 2800FE0B0FF322D5005CA9E5 /* Release Shared */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ PRODUCT_NAME = portmidi;
+ };
+ name = "Release Shared";
+ };
+ 283753E50F42875100364787 /* Debug Static */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ GCC_PREPROCESSOR_DEFINITIONS = HAVE_CONFIG_H;
+ PRODUCT_NAME = taglib;
+ };
+ name = "Debug Static";
+ };
+ 283753E60F42875100364787 /* Debug Shared */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ GCC_PREPROCESSOR_DEFINITIONS = HAVE_CONFIG_H;
+ PRODUCT_NAME = taglib;
+ };
+ name = "Debug Shared";
+ };
+ 283753E70F42875100364787 /* Release Static */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ GCC_PREPROCESSOR_DEFINITIONS = HAVE_CONFIG_H;
+ PRODUCT_NAME = taglib;
+ };
+ name = "Release Static";
+ };
+ 283753E80F42875100364787 /* Release Shared */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ GCC_PREPROCESSOR_DEFINITIONS = HAVE_CONFIG_H;
+ PRODUCT_NAME = taglib;
+ };
+ name = "Release Shared";
+ };
2840CF1F0AEB803C00F49FC3 /* Debug Static */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = 2812A5B90DF63FF000576305 /* Debug_Static.xcconfig */;
@@ -8023,33 +9460,15 @@
BUILDING_SCRIPT_PIPE,
CC_HASVISIBILITY,
);
- INSTALL_PATH = /usr/local/lib;
- MACH_O_TYPE = mh_bundle;
+ GENERATE_MASTER_OBJECT_FILE = YES;
+ KEEP_PRIVATE_EXTERNS = NO;
+ MACH_O_TYPE = mh_dylib;
OTHER_CFLAGS = "$(WX_CFLAGS)";
OTHER_CPLUSPLUSFLAGS = "$(WX_CXXFLAGS)";
OTHER_LDFLAGS = (
- "$(WX_LDFLAGS)",
- "-framework",
- QuickTime,
- "-framework",
- IOKit,
- "-framework",
- Carbon,
- "-framework",
- Cocoa,
- "-framework",
- System,
- "-framework",
- WebKit,
- "-framework",
- CoreAudio,
- "-framework",
- AudioUnit,
- "-framework",
- AudioToolbox,
- "-lz",
- "-lpthread",
- "-liconv",
+ "-flat_namespace",
+ "-undefined",
+ suppress,
);
PREBINDING = NO;
PRODUCT_NAME = "mod-script-pipe";
@@ -8070,32 +9489,15 @@
BUILDING_SCRIPT_PIPE,
CC_HASVISIBILITY,
);
- MACH_O_TYPE = mh_bundle;
+ GENERATE_MASTER_OBJECT_FILE = YES;
+ KEEP_PRIVATE_EXTERNS = NO;
+ MACH_O_TYPE = mh_dylib;
OTHER_CFLAGS = "$(WX_CFLAGS)";
OTHER_CPLUSPLUSFLAGS = "$(WX_CXXFLAGS)";
OTHER_LDFLAGS = (
- "$(WX_LDFLAGS)",
- "-framework",
- QuickTime,
- "-framework",
- IOKit,
- "-framework",
- Carbon,
- "-framework",
- Cocoa,
- "-framework",
- System,
- "-framework",
- WebKit,
- "-framework",
- CoreAudio,
- "-framework",
- AudioUnit,
- "-framework",
- AudioToolbox,
- "-lz",
- "-lpthread",
- "-liconv",
+ "-flat_namespace",
+ "-undefined",
+ suppress,
);
PREBINDING = NO;
PRODUCT_NAME = "mod-script-pipe";
@@ -8172,6 +9574,8 @@
"-framework",
CoreAudio,
"-framework",
+ CoreMIDI,
+ "-framework",
AudioUnit,
"-framework",
AudioToolbox,
@@ -8182,7 +9586,7 @@
"-lFLAC",
);
PRODUCT_NAME = Audacity;
- USER_HEADER_SEARCH_PATHS = "$(TOPLEVEL)/mac $(TOPLEVEL)/src/** $(TOPLEVEL)/lib-src/expat $(TOPLEVEL)/lib-src/FileDialog $(TOPLEVEL)/lib-src/libflac/include $(TOPLEVEL)/lib-src/libid3tag $(TOPLEVEL)/lib-src/libmad $(TOPLEVEL)/lib-src/libogg/include $(TOPLEVEL)/lib-src/libnyquist/nyq $(TOPLEVEL)/lib-src/libresample/include $(TOPLEVEL)/lib-src/libsndfile/src $(TOPLEVEL)/lib-src/libvamp $(TOPLEVEL)/lib-src/libvorbis/include $(TOPLEVEL)/lib-src/liblrdf/src $(TOPLEVEL)/lib-src/portaudio-v19/include $(TOPLEVEL)/lib-src/portmixer/px_common $(TOPLEVEL)/lib-src/portsmf $(TOPLEVEL)/lib-src/redland/librdf $(TOPLEVEL)/lib-src/slv2 $(TOPLEVEL)/lib-src/soundtouch/include $(TOPLEVEL)/lib-src/twolame/libtwolame";
+ USER_HEADER_SEARCH_PATHS = "$(TOPLEVEL)/mac $(TOPLEVEL)/src/** $(TOPLEVEL)/lib-src/expat $(TOPLEVEL)/lib-src/FileDialog $(TOPLEVEL)/lib-src/libflac/include $(TOPLEVEL)/lib-src/libid3tag $(TOPLEVEL)/lib-src/libmad $(TOPLEVEL)/lib-src/libogg/include $(TOPLEVEL)/lib-src/libnyquist/nyq $(TOPLEVEL)/lib-src/libresample/include $(TOPLEVEL)/lib-src/libsndfile/src $(TOPLEVEL)/lib-src/libvamp $(TOPLEVEL)/lib-src/libvorbis/include $(TOPLEVEL)/lib-src/liblrdf/src $(TOPLEVEL)/lib-src/portaudio-v19/include $(TOPLEVEL)/lib-src/portmixer/px_common $(TOPLEVEL)/lib-src/portsmf $(TOPLEVEL)/lib-src/redland/librdf $(TOPLEVEL)/lib-src/slv2 $(TOPLEVEL)/lib-src/soundtouch/include $(TOPLEVEL/lib-src/taglib $(TOPLEVEL)/lib-src/twolame/libtwolame";
};
name = "Debug Shared";
};
@@ -8269,6 +9673,7 @@
EXT,
);
PRODUCT_NAME = nyquist;
+ USER_HEADER_SEARCH_PATHS = "$(TOPLEVEL)/lib-src/libnyquist $(TOPLEVEL)/lib-src/libnyquist/nyquist/cmt $(TOPLEVEL)/lib-src/libnyquist/nyquist/fft $(TOPLEVEL)/lib-src/libnyquist/nyquist/nyqsrc $(TOPLEVEL)/lib-src/libnyquist/nyquist/nyqstk $(TOPLEVEL)/lib-src/libnyquist/nyquist/nyqstk/include $(TOPLEVEL)/lib-src/libnyquist/nyquist/sys/unix $(TOPLEVEL)/lib-src/libnyquist/nyquist/tran $(TOPLEVEL)/lib-src/libnyquist/nyquist/xlisp";
};
name = "Debug Shared";
};
@@ -8379,14 +9784,6 @@
};
name = "Debug Shared";
};
- 288052DD0DEA74F100671EA4 /* Debug Shared */ = {
- isa = XCBuildConfiguration;
- baseConfigurationReference = 2812A5B70DF63FE500576305 /* Debug_Shared.xcconfig */;
- buildSettings = {
- PRODUCT_NAME = intgen;
- };
- name = "Debug Shared";
- };
288052DE0DEA74F100671EA4 /* Debug Shared */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = 2812A5B70DF63FE500576305 /* Debug_Shared.xcconfig */;
@@ -8400,34 +9797,15 @@
BUILDING_SCRIPT_PIPE,
CC_HASVISIBILITY,
);
- INSTALL_PATH = /usr/local/lib;
+ GENERATE_MASTER_OBJECT_FILE = YES;
KEEP_PRIVATE_EXTERNS = NO;
- MACH_O_TYPE = mh_bundle;
+ MACH_O_TYPE = mh_dylib;
OTHER_CFLAGS = "$(WX_CFLAGS)";
OTHER_CPLUSPLUSFLAGS = "$(WX_CXXFLAGS)";
OTHER_LDFLAGS = (
- "$(WX_LDFLAGS)",
- "-framework",
- QuickTime,
- "-framework",
- IOKit,
- "-framework",
- Carbon,
- "-framework",
- Cocoa,
- "-framework",
- System,
- "-framework",
- WebKit,
- "-framework",
- CoreAudio,
- "-framework",
- AudioUnit,
- "-framework",
- AudioToolbox,
- "-lz",
- "-lpthread",
- "-liconv",
+ "-flat_namespace",
+ "-undefined",
+ suppress,
);
PREBINDING = NO;
PRODUCT_NAME = "mod-script-pipe";
@@ -8510,6 +9888,8 @@
"-framework",
CoreAudio,
"-framework",
+ CoreMIDI,
+ "-framework",
AudioUnit,
"-framework",
AudioToolbox,
@@ -8520,7 +9900,7 @@
"-lFLAC",
);
PRODUCT_NAME = Audacity;
- USER_HEADER_SEARCH_PATHS = "$(TOPLEVEL)/mac $(TOPLEVEL)/src/** $(TOPLEVEL)/lib-src/expat $(TOPLEVEL)/lib-src/FileDialog $(TOPLEVEL)/lib-src/libflac/include $(TOPLEVEL)/lib-src/libid3tag $(TOPLEVEL)/lib-src/libmad $(TOPLEVEL)/lib-src/libogg/include $(TOPLEVEL)/lib-src/libnyquist/nyq $(TOPLEVEL)/lib-src/libresample/include $(TOPLEVEL)/lib-src/libsndfile/src $(TOPLEVEL)/lib-src/libvamp $(TOPLEVEL)/lib-src/libvorbis/include $(TOPLEVEL)/lib-src/liblrdf/src $(TOPLEVEL)/lib-src/portaudio-v19/include $(TOPLEVEL)/lib-src/portmixer/px_common $(TOPLEVEL)/lib-src/portsmf $(TOPLEVEL)/lib-src/redland/librdf $(TOPLEVEL)/lib-src/slv2 $(TOPLEVEL)/lib-src/soundtouch/include $(TOPLEVEL)/lib-src/twolame/libtwolame";
+ USER_HEADER_SEARCH_PATHS = "$(TOPLEVEL)/mac $(TOPLEVEL)/src/** $(TOPLEVEL)/lib-src/expat $(TOPLEVEL)/lib-src/FileDialog $(TOPLEVEL)/lib-src/libflac/include $(TOPLEVEL)/lib-src/libid3tag $(TOPLEVEL)/lib-src/libmad $(TOPLEVEL)/lib-src/libogg/include $(TOPLEVEL)/lib-src/libnyquist/nyq $(TOPLEVEL)/lib-src/libresample/include $(TOPLEVEL)/lib-src/libsndfile/src $(TOPLEVEL)/lib-src/libvamp $(TOPLEVEL)/lib-src/libvorbis/include $(TOPLEVEL)/lib-src/liblrdf/src $(TOPLEVEL)/lib-src/portaudio-v19/include $(TOPLEVEL)/lib-src/portmixer/px_common $(TOPLEVEL)/lib-src/portsmf $(TOPLEVEL)/lib-src/redland/librdf $(TOPLEVEL)/lib-src/slv2 $(TOPLEVEL)/lib-src/soundtouch/include $(TOPLEVEL/lib-src/taglib $(TOPLEVEL)/lib-src/twolame/libtwolame";
};
name = "Release Shared";
};
@@ -8607,6 +9987,7 @@
EXT,
);
PRODUCT_NAME = nyquist;
+ USER_HEADER_SEARCH_PATHS = "$(TOPLEVEL)/lib-src/libnyquist $(TOPLEVEL)/lib-src/libnyquist/nyquist/cmt $(TOPLEVEL)/lib-src/libnyquist/nyquist/fft $(TOPLEVEL)/lib-src/libnyquist/nyquist/nyqsrc $(TOPLEVEL)/lib-src/libnyquist/nyquist/nyqstk $(TOPLEVEL)/lib-src/libnyquist/nyquist/nyqstk/include $(TOPLEVEL)/lib-src/libnyquist/nyquist/sys/unix $(TOPLEVEL)/lib-src/libnyquist/nyquist/tran $(TOPLEVEL)/lib-src/libnyquist/nyquist/xlisp";
};
name = "Release Shared";
};
@@ -8717,14 +10098,6 @@
};
name = "Release Shared";
};
- 288052F20DEA74FD00671EA4 /* Release Shared */ = {
- isa = XCBuildConfiguration;
- baseConfigurationReference = 2812A5BB0DF63FFD00576305 /* Release_Shared.xcconfig */;
- buildSettings = {
- PRODUCT_NAME = intgen;
- };
- name = "Release Shared";
- };
288052F30DEA74FD00671EA4 /* Release Shared */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = 2812A5BB0DF63FFD00576305 /* Release_Shared.xcconfig */;
@@ -8738,34 +10111,15 @@
BUILDING_SCRIPT_PIPE,
CC_HASVISIBILITY,
);
- INSTALL_PATH = /usr/local/lib;
+ GENERATE_MASTER_OBJECT_FILE = YES;
KEEP_PRIVATE_EXTERNS = NO;
- MACH_O_TYPE = mh_bundle;
+ MACH_O_TYPE = mh_dylib;
OTHER_CFLAGS = "$(WX_CFLAGS)";
OTHER_CPLUSPLUSFLAGS = "$(WX_CXXFLAGS)";
OTHER_LDFLAGS = (
- "$(WX_LDFLAGS)",
- "-framework",
- QuickTime,
- "-framework",
- IOKit,
- "-framework",
- Carbon,
- "-framework",
- Cocoa,
- "-framework",
- System,
- "-framework",
- WebKit,
- "-framework",
- CoreAudio,
- "-framework",
- AudioUnit,
- "-framework",
- AudioToolbox,
- "-lz",
- "-lpthread",
- "-liconv",
+ "-flat_namespace",
+ "-undefined",
+ suppress,
);
PREBINDING = NO;
PRODUCT_NAME = "mod-script-pipe";
@@ -8879,14 +10233,6 @@
};
name = "Release Static";
};
- 28E5DA300AC4CBA200E7F64C /* Release Static */ = {
- isa = XCBuildConfiguration;
- baseConfigurationReference = 2812A5BD0DF6400E00576305 /* Release_Static.xcconfig */;
- buildSettings = {
- PRODUCT_NAME = intgen;
- };
- name = "Release Static";
- };
28E5DA310AC4CBA200E7F64C /* Release Static */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = 2812A5BD0DF6400E00576305 /* Release_Static.xcconfig */;
@@ -8896,6 +10242,7 @@
EXT,
);
PRODUCT_NAME = nyquist;
+ USER_HEADER_SEARCH_PATHS = "$(TOPLEVEL)/lib-src/libnyquist $(TOPLEVEL)/lib-src/libnyquist/nyquist/cmt $(TOPLEVEL)/lib-src/libnyquist/nyquist/fft $(TOPLEVEL)/lib-src/libnyquist/nyquist/nyqsrc $(TOPLEVEL)/lib-src/libnyquist/nyquist/nyqstk $(TOPLEVEL)/lib-src/libnyquist/nyquist/nyqstk/include $(TOPLEVEL)/lib-src/libnyquist/nyquist/sys/unix $(TOPLEVEL)/lib-src/libnyquist/nyquist/tran $(TOPLEVEL)/lib-src/libnyquist/nyquist/xlisp";
};
name = "Release Static";
};
@@ -9028,6 +10375,8 @@
"-framework",
CoreAudio,
"-framework",
+ CoreMIDI,
+ "-framework",
AudioUnit,
"-framework",
AudioToolbox,
@@ -9038,7 +10387,7 @@
"-lFLAC",
);
PRODUCT_NAME = Audacity;
- USER_HEADER_SEARCH_PATHS = "$(TOPLEVEL)/mac $(TOPLEVEL)/src/** $(TOPLEVEL)/lib-src/expat $(TOPLEVEL)/lib-src/FileDialog $(TOPLEVEL)/lib-src/libflac/include $(TOPLEVEL)/lib-src/libid3tag $(TOPLEVEL)/lib-src/libmad $(TOPLEVEL)/lib-src/libogg/include $(TOPLEVEL)/lib-src/libnyquist/nyq $(TOPLEVEL)/lib-src/libresample/include $(TOPLEVEL)/lib-src/libsndfile/src $(TOPLEVEL)/lib-src/libvamp $(TOPLEVEL)/lib-src/libvorbis/include $(TOPLEVEL)/lib-src/liblrdf/src $(TOPLEVEL)/lib-src/portaudio-v19/include $(TOPLEVEL)/lib-src/portmixer/px_common $(TOPLEVEL)/lib-src/portsmf $(TOPLEVEL)/lib-src/redland/librdf $(TOPLEVEL)/lib-src/slv2 $(TOPLEVEL)/lib-src/soundtouch/include $(TOPLEVEL)/lib-src/twolame/libtwolame";
+ USER_HEADER_SEARCH_PATHS = "$(TOPLEVEL)/mac $(TOPLEVEL)/src/** $(TOPLEVEL)/lib-src/expat $(TOPLEVEL)/lib-src/FileDialog $(TOPLEVEL)/lib-src/libflac/include $(TOPLEVEL)/lib-src/libid3tag $(TOPLEVEL)/lib-src/libmad $(TOPLEVEL)/lib-src/libogg/include $(TOPLEVEL)/lib-src/libnyquist/nyq $(TOPLEVEL)/lib-src/libresample/include $(TOPLEVEL)/lib-src/libsndfile/src $(TOPLEVEL)/lib-src/libvamp $(TOPLEVEL)/lib-src/libvorbis/include $(TOPLEVEL)/lib-src/liblrdf/src $(TOPLEVEL)/lib-src/portaudio-v19/include $(TOPLEVEL)/lib-src/portmixer/px_common $(TOPLEVEL)/lib-src/portsmf $(TOPLEVEL)/lib-src/redland/librdf $(TOPLEVEL)/lib-src/slv2 $(TOPLEVEL)/lib-src/soundtouch/include $(TOPLEVEL/lib-src/taglib $(TOPLEVEL)/lib-src/twolame/libtwolame";
};
name = "Release Static";
};
@@ -9290,17 +10639,6 @@
defaultConfigurationIsVisible = 0;
defaultConfigurationName = "Debug Static";
};
- 170741450988FDD2008541CC /* Build configuration list for PBXNativeTarget "intgen" */ = {
- isa = XCConfigurationList;
- buildConfigurations = (
- 17CAEBAC098C9B8E00337968 /* Debug Static */,
- 288052DD0DEA74F100671EA4 /* Debug Shared */,
- 28E5DA300AC4CBA200E7F64C /* Release Static */,
- 288052F20DEA74FD00671EA4 /* Release Shared */,
- );
- defaultConfigurationIsVisible = 0;
- defaultConfigurationName = "Debug Static";
- };
176A1B65098B7BDC00DC73B4 /* Build configuration list for PBXNativeTarget "libnyquist" */ = {
isa = XCConfigurationList;
buildConfigurations = (
@@ -9356,6 +10694,28 @@
defaultConfigurationIsVisible = 0;
defaultConfigurationName = "Debug Static";
};
+ 2800FE1D0FF32326005CA9E5 /* Build configuration list for PBXNativeTarget "portmidi" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ 2800FE080FF322D5005CA9E5 /* Debug Static */,
+ 2800FE090FF322D5005CA9E5 /* Debug Shared */,
+ 2800FE0A0FF322D5005CA9E5 /* Release Static */,
+ 2800FE0B0FF322D5005CA9E5 /* Release Shared */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = "Debug Static";
+ };
+ 283753EB0F42875A00364787 /* Build configuration list for PBXNativeTarget "taglib" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ 283753E50F42875100364787 /* Debug Static */,
+ 283753E60F42875100364787 /* Debug Shared */,
+ 283753E70F42875100364787 /* Release Static */,
+ 283753E80F42875100364787 /* Release Shared */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = "Debug Static";
+ };
2840CF1D0AEB803C00F49FC3 /* Build configuration list for PBXNativeTarget "twolame" */ = {
isa = XCConfigurationList;
buildConfigurations = (
diff --git a/mac/configmac.h b/mac/configmac.h
index d423a94..d04fe06 100644
--- a/mac/configmac.h
+++ b/mac/configmac.h
@@ -7,6 +7,7 @@
#include <wx/defs.h>
#include "../src/configunix.h"
#define USE_AQUA_THEME 1
+#define USE_VST 1
// arch-tag: 1f1d80ef-d1b4-4c9e-8226-ec3b93dcb46c
diff --git a/nyquist/bug.lsp b/nyquist/bug.lsp
index 9ad483a..9a8a791 100644
--- a/nyquist/bug.lsp
+++ b/nyquist/bug.lsp
@@ -53,6 +53,3 @@
-
-; arch-tag: b256deed-7e59-4406-a423-2189f0bcc06a
-
diff --git a/nyquist/dspprims.lsp b/nyquist/dspprims.lsp
index a9d58f9..f4a0362 100644
--- a/nyquist/dspprims.lsp
+++ b/nyquist/dspprims.lsp
@@ -143,7 +143,7 @@
((< the-snd-srate feedback-srate)
(format t "Warning: down-sampling feedback in alpass~%")
(setf feedback (snd-down the-snd-srate feedback))))
- (display "snd-alpasscv-4 after cond" (snd-srate the-snd) (snd-srate feedback))
+ ;(display "snd-alpasscv-4 after cond" (snd-srate the-snd) (snd-srate feedback))
(snd-alpasscv the-snd delay feedback)))
@@ -159,9 +159,9 @@
(setf max-delay (/ 1.0 min-hz))
; make sure delay is between 0 and max-delay
; use clip function, which is symetric, with an offset
- (setf delay (snd-offset (clip (snd-offset delay (* max-delay 0.5))
- max-delay)
- (* max-delay -0.5)))
+ (setf delay (snd-offset (clip (snd-offset delay (* max-delay -0.5))
+ (* max-delay 0.5))
+ (* max-delay 0.5)))
; now delay is between 0 and max-delay, so we won't crash nyquist when
; we call snd-alpassvv, which doesn't test for out-of-range data
(cond ((> the-snd-srate feedback-srate)
@@ -174,7 +174,7 @@
((< the-snd-srate delay-srate)
(format t "Warning: down-sampling delay in alpass~%")
(setf delay (snd-down the-snd-srate delay))))
- ;(display "snd-alpassvv-4 after cond" (snd-srate the-snd) (snd-srate feedback))
+ (display "snd-alpassvv-4 after cond" (snd-srate the-snd) (snd-srate feedback))
(snd-alpassvv the-snd delay feedback max-delay)))
(setf alpass-implementations
@@ -189,6 +189,11 @@
(select-implementation-1-2 alpass-implementations
snd delay feedback min-hz))
+;; CONGEN -- contour generator, patterned after gated analog env gen
+;;
+(defun congen (gate rise fall) (multichan-expand #'snd-congen gate rise fall))
+
+
;; S-EXP -- exponentiate a sound
;;
(defun s-exp (s) (multichan-expand #'nyq:exp s))
@@ -262,6 +267,8 @@
;;
(defun rms (s &optional (rate 100.0) window-size)
(let (rslt step-size)
+ (cond ((not (eq (type-of s) 'SOUND))
+ (break "in RMS, first parameter must be a monophonic SOUND")))
(setf step-size (round (/ (snd-srate s) rate)))
(cond ((null window-size)
(setf window-size step-size)))
@@ -302,7 +309,7 @@
(defun nyq:slope (s)
(let* ((sr (snd-srate s))
(sr-inverse (/ sr)))
- (snd-xform (snd-slope s) sr (- sr-inverse) 0.0 MAX-STOP-TIME 1.0)))
+ (snd-xform (snd-slope s) sr 0 sr-inverse MAX-STOP-TIME 1.0)))
;; lp - lowpass filter
@@ -321,6 +328,8 @@
;;; fixed-parameter filters based on snd-biquad
+;;; note: snd-biquad is implemented in biquadfilt.[ch],
+;;; while BiQuad.{cpp,h} is part of STK
(setf Pi 3.14159265358979)
@@ -332,17 +341,29 @@
; than Matlab does.
; convenient biquad: normalize a0, and use zero initial conditions.
-(defun biquad (x b0 b1 b2 a0 a1 a2)
+(defun nyq:biquad (x b0 b1 b2 a0 a1 a2)
(let ((a0r (/ 1.0 a0)))
(snd-biquad x (* a0r b0) (* a0r b1) (* a0r b2)
(* a0r a1) (* a0r a2) 0 0)))
+
+(defun biquad (x b0 b1 b2 a0 a1 a2)
+ (multichan-expand #'nyq:biquad x b0 b1 b2 a0 a1 a2))
+
+
; biquad with Matlab sign conventions for a_i's.
(defun biquad-m (x b0 b1 b2 a0 a1 a2)
- (biquad x b0 b1 b2 a0 (- a1) (- a2)))
+ (multichan-expand #'nyq:biquad-m x b0 b1 b2 a0 a1 a2))
+
+(defun nyq:biquad-m (x b0 b1 b2 a0 a1 a2)
+ (nyq:biquad x b0 b1 b2 a0 (- a1) (- a2)))
; two-pole lowpass
(defun lowpass2 (x hz &optional (q 0.7071))
+ (multichan-expand #'nyq:lowpass2 x hz q))
+
+;; NYQ:LOWPASS2 -- operates on single channel
+(defun nyq:lowpass2 (x hz q)
(let* ((w (* 2.0 Pi (/ hz (snd-srate x))))
(cw (cos w))
(sw (sin w))
@@ -353,10 +374,13 @@
(b1 (- 1.0 cw))
(b0 (* 0.5 b1))
(b2 b0))
- (biquad-m x b0 b1 b2 a0 a1 a2)))
+ (nyq:biquad-m x b0 b1 b2 a0 a1 a2)))
; two-pole highpass
(defun highpass2 (x hz &optional (q 0.7071))
+ (multichan-expand #'nyq:highpass2 x hz q))
+
+(defun nyq:highpass2 (x hz q)
(let* ((w (* 2.0 Pi (/ hz (snd-srate x))))
(cw (cos w))
(sw (sin w))
@@ -367,10 +391,13 @@
(b1 (- -1.0 cw))
(b0 (* -0.5 b1))
(b2 b0))
- (biquad-m x b0 b1 b2 a0 a1 a2)))
+ (nyq:biquad-m x b0 b1 b2 a0 a1 a2)))
; two-pole bandpass. max gain is unity.
(defun bandpass2 (x hz q)
+ (multichan-expand #'nyq:bandpass2 x hz q))
+
+(defun nyq:bandpass2 (x hz q)
(let* ((w (* 2.0 Pi (/ hz (snd-srate x))))
(cw (cos w))
(sw (sin w))
@@ -381,10 +408,13 @@
(b0 alpha)
(b1 0.0)
(b2 (- alpha)))
- (biquad-m x b0 b1 b2 a0 a1 a2)))
+ (nyq:biquad-m x b0 b1 b2 a0 a1 a2)))
; two-pole notch.
(defun notch2 (x hz q)
+ (multichan-expand #'nyq:notch2 x hz q))
+
+(defun nyq:notch2 (x hz q)
(let* ((w (* 2.0 Pi (/ hz (snd-srate x))))
(cw (cos w))
(sw (sin w))
@@ -395,11 +425,14 @@
(b0 1.0)
(b1 (* -2.0 cw))
(b2 1.0))
- (biquad-m x b0 b1 b2 a0 a1 a2)))
+ (nyq:biquad-m x b0 b1 b2 a0 a1 a2)))
; two-pole allpass.
(defun allpass2 (x hz q)
+ (multichan-expand #'nyq:allpass x hz q))
+
+(defun nyq:allpass (x hz q)
(let* ((w (* 2.0 Pi (/ hz (snd-srate x))))
(cw (cos w))
(sw (sin w))
@@ -410,12 +443,15 @@
(b0 a2)
(b1 a1)
(b2 1.0))
- (biquad-m x b0 b1 b2 a0 a1 a2)))
+ (nyq:biquad-m x b0 b1 b2 a0 a1 a2)))
; bass shelving EQ. gain in dB; Fc is halfway point.
; response becomes peaky at slope > 1.
(defun eq-lowshelf (x hz gain &optional (slope 1.0))
+ (multichan-expand #'nyq:eq-lowshelf x hz gain slope))
+
+(defun nyq:eq-lowshelf (x hz gain slope)
(let* ((w (* 2.0 Pi (/ hz (snd-srate x))))
(sw (sin w))
(cw (cos w))
@@ -431,12 +467,15 @@
(a0 (+ A 1.0 amc bs ))
(a1 (* -2.0 (+ A -1.0 apc )))
(a2 (+ A 1.0 amc (- bs) )))
- (biquad-m x b0 b1 b2 a0 a1 a2)))
+ (nyq:biquad-m x b0 b1 b2 a0 a1 a2)))
; treble shelving EQ. gain in dB; Fc is halfway point.
; response becomes peaky at slope > 1.
(defun eq-highshelf (x hz gain &optional (slope 1.0))
+ (multichan-expand #'nyq:eq-highshelf x hz gain slope))
+
+(defun nyq:eq-highshelf (x hz gain slope)
(let* ((w (* 2.0 Pi (/ hz (snd-srate x))))
(sw (sin w))
(cw (cos w))
@@ -452,7 +491,7 @@
(a0 (+ A 1.0 (- amc) bs ))
(a1 (* 2.0 (+ A -1.0 (- apc) )))
(a2 (+ A 1.0 (- amc) (- bs) )))
- (biquad-m x b0 b1 b2 a0 a1 a2)))
+ (nyq:biquad-m x b0 b1 b2 a0 a1 a2)))
(defun nyq:eq-band (x hz gain width)
(cond ((and (numberp hz) (numberp gain) (numberp width))
@@ -519,5 +558,20 @@
hz 0.94276399)
hz 2.57900101))
-; arch-tag: bbfeeb79-b168-4209-8ae8-6a472602d155
+; YIN
+; maybe this should handle multiple channels, etc.
+(setfn yin snd-yin)
+
+
+; FOLLOW
+(defun follow (sound floor risetime falltime lookahead)
+ ;; use 10000s as "infinite" -- that's about 2^30 samples at 96K
+ (setf lookahead (round (* lookahead (snd-srate sound))))
+ (extract (/ lookahead (snd-srate sound)) 10000
+ (snd-follow sound floor risetime falltime lookahead)))
+(defun gate (sound floor risetime falltime lookahead threshold)
+ (setf lookahead (round (* lookahead (snd-srate sound))))
+ (setf lookahead (/ lookahead (snd-srate sound)))
+ (extract lookahead 10000
+ (snd-gate sound lookahead risetime falltime floor threshold)))
diff --git a/nyquist/evalenv.lsp b/nyquist/evalenv.lsp
index 7b5c074..155139f 100644
--- a/nyquist/evalenv.lsp
+++ b/nyquist/evalenv.lsp
@@ -34,6 +34,3 @@
(defmacro eval-env (arg) ; evaluate in current environment
`(evalhook ,arg nil nil (getenv)))
-
-; arch-tag: 4cdbf611-9e20-4404-bbd9-77e37398a65f
-
diff --git a/nyquist/follow.lsp b/nyquist/follow.lsp
index 19e692f..7332fa7 100644
--- a/nyquist/follow.lsp
+++ b/nyquist/follow.lsp
@@ -47,7 +47,7 @@
; take the square of the input to get power
(let ((in-squared (mult input input)))
; compute the time-average (sort of a low-pass) of the square
- (setf avg (snd-avg in-squared 1000 500))
+ (setf avg (snd-avg in-squared 1000 500 OP-AVERAGE))
; use follower to anticipate rise and trail off smoothly
(setf env (snd-follow avg 0.001 0.2 1.0 20))
; take logarithm to get dB instead of linear
@@ -68,6 +68,3 @@
; = (snd-srate input)
(mult (seq (s-rest (/ 20.0 88.2)) (cue input)) gain)))
-
-; arch-tag: e276f007-e894-4c2a-95b6-1fc4cbc74bfb
-
diff --git a/nyquist/init.lsp b/nyquist/init.lsp
index 0aa06e8..e2b905c 100644
--- a/nyquist/init.lsp
+++ b/nyquist/init.lsp
@@ -1,10 +1,8 @@
; init.lsp -- default Nyquist startup file
-(load "nyinit.lsp")
+(load "nyinit.lsp" :verbose nil)
; add your customizations here:
; e.g. (setf *default-sf-dir* "...")
; (load "test.lsp")
-; arch-tag: 12c6d5ab-0af7-41d7-a365-dc575265e4b1
-
diff --git a/nyquist/misc.lsp b/nyquist/misc.lsp
index da3466d..bd695d1 100644
--- a/nyquist/misc.lsp
+++ b/nyquist/misc.lsp
@@ -1,5 +1,35 @@
;## misc.lsp -- a collection of useful support functions
+;; Garbage collection "improvement" -- XLISP will GC without allocation
+;; as long as it does not run out of cells. This can make it very slow
+;; since GC does work proportional to the heap size. If there were
+;; always at least, say, 1/3 of the heap free after GC, then allocating
+;; cells would be more-or-less a constant time operation (amortized).
+;;
+;; So, after GC, we'll expand until we have 1/3 of the heap free.
+;;
+(defun ny:gc-hook (heap-size free-cells)
+ (cond ((< (* free-cells 2) heap-size) ;; free cells is < 1/3 heap
+ ;; expand. Each expansion unit is 2000 cons cells
+ (let* ((how-many-not-free (- heap-size free-cells))
+ (should-be-free (/ how-many-not-free 2))
+ (how-many-more (- should-be-free free-cells))
+ (expand-amount (/ how-many-more 2000)))
+ (cond ((> expand-amount 0)
+ (if *gc-flag*
+ (format t
+ "[ny:gc-hook allocating ~A more cells] "
+ (* expand-amount 2000)))
+ (expand expand-amount)))))))
+
+(setf *gc-hook* 'ny:gc-hook)
+
+
+; set global if not already set
+;
+(defmacro init-global (symb expr)
+ `(if (boundp ',symb) ,symb (setf ,symb ,expr)))
+
; enable or disable breaks
(defun bkon () (setq *breakenable* T))
(defun bkoff () (setq *breakenable* NIL))
@@ -10,6 +40,11 @@
;;
(defun grindef (e) (pprint (get-lambda-expression (symbol-function e))))
+;; (args 'name) - print function and its formal arguments
+;;
+(defun args (e)
+ (pprint (cons e (second (get-lambda-expression (symbol-function e))))))
+
;; (incf <place>), (decf <place>) - add/sub 1 to/from variable
;;
(defmacro incf (symbol) `(setf ,symbol (1+ ,symbol)))
@@ -19,7 +54,7 @@
;; (push val <place>) - cons val to list
;;
(defmacro push (val lis) `(setf ,lis (cons ,val ,lis)))
-(defmacro pop (lis) `(setf ,lis (cdr ,lis)))
+(defmacro pop (lis) `(prog1 (car ,lis) (setf ,lis (cdr ,lis))))
;; include this to use RBD's XLISP profiling hooks
;;(load "/afs/andrew/usr/rbd/lib/xlisp/profile.lsp")
@@ -47,8 +82,6 @@
(defmacro while (cond &rest stmts)
`(prog () loop (if ,cond () (return)) , at stmts (go loop)))
-(defmacro when (test action)
- (list 'cond (list test action)))
; when parens/quotes don't match, try this
;
@@ -68,28 +101,54 @@
(cond ((equal (char fullpath i) *file-separator*)
(setf n i))))
(setf fullpath (subseq fullpath 0 (1+ n)))
+
+;; REMOVED SUPPORT FOR MAC OS-9 AND BELOW -RBD
;; if this is a Mac, use ':' in place of empty path
- (cond ((and (equal fullpath "")
- (equal *file-separator* #\:))
- (setf fullpath ":")))
+;; (cond ((and (equal fullpath "")
+;; (equal *file-separator* #\:))
+;; (setf fullpath ":")))
+;; END MAC OS-9 CODE
+
+ ;; Here's an interesting problem: fullpath is now the path
+ ;; specified to LOAD, but it may be relative to the current
+ ;; directory. What if we want to load a sound file from the
+ ;; current directory? It seems that S-READ gives priority to
+ ;; the *DEFAULT-SF-DIR*, so it will follow fullpath STARTING
+ ;; FROM *DEFAULT-SF-DIR*. To fix this, we need to make sure
+ ;; that fullpath is either an absolute path or starts with
+ ;; and explicit ./ which tells s-read to look in the current
+ ;; directory.
+ (cond ((> (length fullpath) 0)
+ (cond ((full-name-p fullpath))
+ (t ; not absolute, make it explicitly relative
+ (setf fullpath (strcat "./" fullpath)))))
+ (t (setf fullpath "./"))) ; use current directory
fullpath)
(t nil))))
;; real-random -- pick a random real from a range
;;
(defun real-random (from to)
- (cond ((= from to) from)
- (t
- (+ from
- (* (random 10000)
- 0.0001
- (- to from))))))
+ (+ (* (rrandom) (- to from)) from))
;; power -- raise a number to some power x^y
;;
(defun power (x y)
(exp (* (log (float x)) y)))
-
-; arch-tag: 4c739a4e-1495-4b2a-aad0-85b3003e3291
+;; require-from -- load a file if a function is undefined
+;;
+;; fn-symbol -- the function defined when the file is loaded
+;; file-name -- the name of file to load if fn-symbol is undefined
+;; path -- if t, load from current-path; if a string, prepend string
+;; to file-name; if nil, ignore it
+;;
+(defmacro require-from (fn-symbol file-name &optional path)
+ (cond ((eq path t)
+ (setf file-name `(strcat (current-path) ,file-name)))
+ (path
+ (setf file-name `(strcat ,path ,file-name))))
+ `(if (fboundp (quote ,fn-symbol))
+ t
+ (load ,file-name)))
diff --git a/nyquist/nyinit.lsp b/nyquist/nyinit.lsp
index 4ea9733..c1ae2cd 100644
--- a/nyquist/nyinit.lsp
+++ b/nyquist/nyinit.lsp
@@ -11,13 +11,17 @@
(load "dspprims.lsp" :verbose NIL)
(load "nyquist.lsp" :verbose NIL)
-(load "follow.lsp")
+(load "follow.lsp" :verbose NIL)
(load "system.lsp" :verbose NIL)
(load "seqmidi.lsp" :verbose NIL)
(load "nyqmisc.lsp" :verbose NIL)
-
+(load "stk.lsp" :verbose NIL)
+(load "envelopes.lsp" :verbose NIL)
+(load "equalizer.lsp" :verbose NIL)
+(load "xm.lsp" :verbose NIL)
+(load "sal.lsp" :verbose NIL)
;; set to T to get ANSI headers and NIL to get antique headers
(setf *ANSI* NIL)
@@ -26,10 +30,9 @@
(setf *WATCH* NIL)
(format t "~%Nyquist -- A Language for Sound Synthesis and Composition~%")
-(format t " Copyright (c) 1991-2003 by Roger B. Dannenberg~%")
-(format t " Version 2.29~%~%")
+(format t " Copyright (c) 1991,1992,1995,2007-2009 by Roger B. Dannenberg~%")
+(format t " Version 3.03~%~%")
-(setf *gc-flag* t)
+;(setf *gc-flag* t)
-; arch-tag: f709df74-c08d-41a0-b11d-e84daaba1457
diff --git a/nyquist/nyqmisc.lsp b/nyquist/nyqmisc.lsp
index 9f12a39..3905d33 100644
--- a/nyquist/nyqmisc.lsp
+++ b/nyquist/nyqmisc.lsp
@@ -1,7 +1,7 @@
;; nyqmisc.lsp -- misc functions for nyquist
-(setf *snd-display-max-samples* 10000)
-(setf *snd-display-print-samples* 100)
+(init-global *snd-display-max-samples* 10000)
+(init-global *snd-display-print-samples* 100)
; (snd-display sound) -- describe a sound
@@ -25,6 +25,3 @@
(format t "~A: srate ~A, t0 ~A, extent ~A, dur ~A, ~A: ~A"
sound srate t0 extent dur samples (snd-samples sound nsamples))))
-
-; arch-tag: a2d8e495-b702-479f-9d4d-9b81c4199647
-
diff --git a/nyquist/nyquist.lsp b/nyquist/nyquist.lsp
index ab3779c..979ef0a 100644
--- a/nyquist/nyquist.lsp
+++ b/nyquist/nyquist.lsp
@@ -2,14 +2,10 @@
;;; ###########################################################
;;; ### NYQUIST-- A Language for Composition and Synthesis. ###
;;; ### ###
-;;; ### Copyright (c) 1994 by Roger B. Dannenberg ###
+;;; ### Copyright (c) 1994-2006 by Roger B. Dannenberg ###
;;; ###########################################################
;;;
-
-;;;
-;;; Modifications for using Nyquist within Audacity
-;;; by Dominic Mazzoni
-;;;
+(load "fileio.lsp" :verbose NIL)
(prog ()
(setq lppp -12.0) (setq lpp -9.0) (setq lp -6.0) (setq lmp -3.0)
@@ -23,8 +19,7 @@
(setq w 4.0) (setq wd 6.0) (setq wt (* st 16.0))
)
-(if (not (boundp '*A4-Hertz*))
- (setf *A4-Hertz* 440.0))
+(init-global *A4-Hertz* 440.0)
; next pitch, for initializations below
;
@@ -61,10 +56,8 @@
(set-pitch-names)
-(if (not (boundp '*DEFAULT-SOUND-SRATE*))
- (setf *DEFAULT-SOUND-SRATE* 44100.0))
-(if (not (boundp '*DEFAULT-CONTROL-SRATE*))
- (setf *DEFAULT-CONTROL-SRATE* 2205.0))
+(init-global *default-sound-srate* 44100.0)
+(init-global *default-control-srate* 2205.0)
(setf *environment-variables*
'(*WARP* *SUSTAIN* *START* *LOUD* *TRANSPOSE*
@@ -98,8 +91,15 @@
(nyq:environment-init)
(defun get-duration (dur)
- (- (local-to-global (* (get-sustain) dur))
- (setf *rslt* (local-to-global 0))))
+ (let ((duration
+ (- (local-to-global (* (get-sustain) dur))
+ (setf *rslt* (local-to-global 0)))))
+ (cond ((minusp duration)
+ (error
+"duration is less than zero: perhaps a warp or stretch
+is ill-formed. Nyquist cannot continue because synthesis
+functions assume durations are always positive.")))
+ duration))
(defun get-loud ()
@@ -203,6 +203,32 @@
phase)))) ; phase
+;; FMFB
+;;
+;; this code is based on FMOSC above
+;;
+(defun fmfb (pitch index &optional dur)
+ (let ((hz (step-to-hz (+ pitch (get-transpose)))))
+ (cond ((> hz (/ *SOUND-SRATE* 2))
+ (format "Warning: fmfb nominal frequency (~A hz) will alias at current sample rate (~A hz).~%"
+ hz *SOUND-SRATE*)))
+ (setf dur (get-duration dur))
+ (cond ((soundp index) (ny:fmfbv hz index))
+ (t
+ (scale-db (get-loud)
+ (snd-fmfb (local-to-global 0)
+ hz *SOUND-SRATE* index dur))))))
+
+;; private variable index version of fmfb
+(defun ny:fmfbv (hz index)
+ (let ((modulation-srate (snd-srate index)))
+ (cond ((< *SOUND-SRATE* modulation-srate)
+ (format t "Warning: down-sampling FM modulation in fmfb~%")
+ (setf index (snd-down *SOUND-SRATE* index))))
+ (scale-db (get-loud)
+ (snd-fmfbv (local-to-global 0) hz *SOUND-SRATE* index))))
+
+
;; BUZZ
;;
;; (ARGUMENTS ("long" "n") ("rate_type" "sr") ("double" "hz")
@@ -217,7 +243,7 @@
(cond ((> hz (/ *SOUND-SRATE* 2))
(format t "Warning: buzz nominal frequency (~A hz) will alias at current sample rate (~A hz).\n"
hz *SOUND-SRATE*)))
- (setf n (min n 1)) ; avoid divide by zero problem
+ (setf n (max n 1)) ; avoid divide by zero problem
(scale-db (get-loud)
(snd-buzz n ; number of harmonics
*SOUND-SRATE* ; output sample rate
@@ -333,16 +359,19 @@ loop
(let ((d (get-duration duration)))
(if (minusp d) (setf d 0))
(cond ((> freq (/ *CONTROL-SRATE* 2))
- (format t "Warning: lfo frequency (~A hz) will alias at current control rate (~A hz).\n"
- freq *CONTROL-SRATE*)))
- (snd-osc
- (car sound) ; samples for table
- (cadr sound) ; step represented by table
- *CONTROL-SRATE* ; output sample rate
- freq ; output hz
- *rslt* ; starting time
- d ; duration
- phase))) ; phase
+ (format t "Warning: lfo frequency (~A hz) will alias at current control rate (~A hz).\n"
+ freq *CONTROL-SRATE*)))
+ (set-logical-stop
+ (snd-osc
+ (car sound) ; samples for table
+ (cadr sound) ; step represented by table
+ *CONTROL-SRATE* ; output sample rate
+ freq ; output hz
+ *rslt* ; starting time
+ d ; duration
+ phase) ; phase
+ duration)))
+
;; FMLFO -- like LFO but uses frequency modulation
;;
@@ -358,77 +387,81 @@ loop
(t
(error "frequency must be a number or sound")))))
+
;; OSC - table lookup oscillator
;;
(defun osc (pitch &optional (duration 1.0)
- (sound *TABLE*) (phase 0.0))
- (let ((d (get-duration duration))
- (hz (step-to-hz (+ pitch (get-transpose)))))
+ (sound *TABLE*) (phase 0.0))
+ (let ((d (get-duration duration))
+ (hz (step-to-hz (+ pitch (get-transpose)))))
;(display "osc" *warp* global-start global-stop actual-dur
; (get-transpose))
(cond ((> hz (/ *SOUND-SRATE* 2))
- (format t "Warning: osc frequency (~A hz) will alias at current sample rate (~A hz).\n"
- hz *SOUND-SRATE*)))
- (set-logical-stop
- (scale-db (get-loud)
- (snd-osc
- (car sound) ; samples for table
- (cadr sound) ; step represented by table
- *SOUND-SRATE* ; output sample rate
- hz ; output hz
- *rslt* ; starting time
- d ; duration
- phase)) ; phase
- duration)))
+ (format t "Warning: osc frequency (~A hz) will alias at current sample rate (~A hz).\n"
+ hz *SOUND-SRATE*)))
+ (set-logical-stop
+ (scale-db (get-loud)
+ (snd-osc
+ (car sound) ; samples for table
+ (cadr sound) ; step represented by table
+ *SOUND-SRATE* ; output sample rate
+ hz ; output hz
+ *rslt* ; starting time
+ d ; duration
+ phase)) ; phase
+ duration)))
;; PARTIAL -- sine osc with built-in envelope scaling
;;
(defun partial (steps env)
(let ((hz (step-to-hz (+ steps (get-transpose)))))
- (cond ((> hz (/ *SOUND-SRATE* 2))
- (format t "Warning: partial frequency (~A hz) will alias at current sample rate (~A hz).\n"
- hz *SOUND-SRATE*)))
- (snd-partial *sound-srate*
- hz
- env)))
+ (cond ((> hz (/ *sound-srate* 2))
+ (format t "Warning: partial frequency (~A hz) will alias at current sample rate (~A hz).\n"
+ hz *sound-srate*)))
+ (scale-db (get-loud)
+ (snd-partial *sound-srate* hz
+ (force-srate *sound-srate* env)))))
;; SAMPLER -- simple attack + sustain sampler
;;
(defun sampler (pitch modulation
- &optional (sample *table*) (npoints 2))
+ &optional (sample *table*) (npoints 2))
(let ((samp (car sample))
(samp-pitch (cadr sample))
(samp-loop-start (caddr sample))
(hz (step-to-hz (+ pitch (get-transpose)))))
; make a waveform table look like a sample with no attack:
(cond ((not (numberp samp-loop-start))
- (setf samp-loop-start 0.0)))
+ (setf samp-loop-start 0.0)))
(cond ((> hz (/ *SOUND-SRATE* 2))
- (format t "Warning: sampler nominal frequency (~A hz) will alias at current sample rate (~A hz).\n"
- hz *SOUND-SRATE*)))
+ (format t "Warning: sampler nominal frequency (~A hz) will alias at current sample rate (~A hz).\n"
+ hz *SOUND-SRATE*)))
(scale-db (get-loud)
(snd-sampler
- samp ; samples for table
- samp-pitch ; step represented by table
- samp-loop-start ; time to start loop
- *SOUND-SRATE* ; output sample rate
- hz ; output hz
- (local-to-global 0) ; starting time
- modulation ; modulation
- npoints)))) ; number of interpolation points
+ samp ; samples for table
+ samp-pitch ; step represented by table
+ samp-loop-start ; time to start loop
+ *SOUND-SRATE* ; output sample rate
+ hz ; output hz
+ (local-to-global 0) ; starting time
+ modulation ; modulation
+ npoints)))) ; number of interpolation points
;; SINE -- simple sine oscillator
;;
(defun sine (steps &optional (duration 1.0))
(let ((hz (step-to-hz (+ steps (get-transpose))))
- (d (get-duration duration)))
+ (d (get-duration duration)))
(cond ((> hz (/ *SOUND-SRATE* 2))
- (format t "Warning: sine frequency (~A hz) will alias at current sample rate (~A hz).\n"
- hz *SOUND-SRATE*)))
- (snd-sine *rslt* hz *sound-srate* d)))
+ (format t "Warning: sine frequency (~A hz) will alias at current sample rate (~A hz).\n"
+ hz *SOUND-SRATE*)))
+ (set-logical-stop
+ (scale-db (get-loud)
+ (snd-sine *rslt* hz *sound-srate* d))
+ duration)))
;; PLUCK
@@ -440,44 +473,47 @@ loop
(let ((hz (step-to-hz (+ steps (get-transpose))))
(d (get-duration duration)))
(cond ((> hz (/ *SOUND-SRATE* 2))
- (format t "Warning: pluck frequency (~A hz) will alias at current sample rate (~A hz).\n"
- hz *SOUND-SRATE*)))
- (snd-pluck *SOUND-SRATE* hz *rslt* d final-amp)))
-
-
+ (format t "Warning: pluck frequency (~A hz) will alias at current sample rate (~A hz).\n"
+ hz *SOUND-SRATE*)))
+ (set-logical-stop
+ (scale-db (get-loud)
+ (snd-pluck *SOUND-SRATE* hz *rslt* d final-amp))
+ duration)))
;; abs-env -- restore the standard environment
;;
(defmacro abs-env (s)
`(progv '(*WARP* *LOUD* *TRANSPOSE* *SUSTAIN*
- *START* *STOP* *CONTROL-SRATE* *SOUND-SRATE*)
- (list '(0.0 1.0 NIL) 0.0 0.0 1.0
- -1e+9 1e+9 *DEFAULT-CONTROL-SRATE* *DEFAULT-SOUND-SRATE*)
- ,s))
+ *START* *STOP*
+ *CONTROL-SRATE* *SOUND-SRATE*)
+ (list '(0.0 1.0 NIL) 0.0 0.0 1.0
+ MIN-START-TIME MAX-STOP-TIME
+ *DEFAULT-CONTROL-SRATE* *DEFAULT-SOUND-SRATE*)
+ ,s))
; nyq:add2 - add two arguments
;
(defun nyq:add2 (s1 s2)
- (cond ((and (arrayp s1) (not (arrayp s2)))
- (setf s2 (vector s2)))
- ((and (arrayp s2) (not (arrayp s1)))
- (setf s1 (vector s1))))
- (cond ((arrayp s1)
- (sum-of-arrays s1 s2))
- (t
- (nyq:add-2-sounds s1 s2))))
+ (cond ((and (arrayp s1) (not (arrayp s2)))
+ (setf s2 (vector s2)))
+ ((and (arrayp s2) (not (arrayp s1)))
+ (setf s1 (vector s1))))
+ (cond ((arrayp s1)
+ (sum-of-arrays s1 s2))
+ (t
+ (nyq:add-2-sounds s1 s2))))
; (NYQ:ADD-2-SOUNDS S1 S2) - add two sound (or number) arguments
;
(defun nyq:add-2-sounds (s1 s2)
(cond ((numberp s1)
- (cond ((numberp s2)
+ (cond ((numberp s2)
(+ s1 s2))
- (t
- (snd-offset s2 s1))))
+ (t
+ (snd-offset s2 s1))))
((numberp s2)
(snd-offset s1 s2))
(t
@@ -485,13 +521,11 @@ loop
(s2sr (snd-srate s2)))
; (display "nyq:add-2-sounds" s1sr s2sr)
(cond ((> s1sr s2sr)
- (snd-add s1 (snd-up s1sr s2)))
- ((< s1sr s2sr)
- (snd-add (snd-up s2sr s1) s2))
- (t
- (snd-add s1 s2)))))))
-
-
+ (snd-add s1 (snd-up s1sr s2)))
+ ((< s1sr s2sr)
+ (snd-add (snd-up s2sr s1) s2))
+ (t
+ (snd-add s1 s2)))))))
(defmacro at (x s)
@@ -537,14 +571,15 @@ loop
(t
(snd-clip x v))))
+
;; (NYQ:COERCE-TO S1 S2) - expand sound s1 to type of s2
;
(defun nyq:coerce-to (s1 s2)
- (cond ((soundp s1)
- (cond ((arrayp s2)
- (nyq:sound-to-array s1 (length s2)))
- (t s1)))
- (t s1)))
+ (cond ((or (soundp s1) (numberp s1))
+ (cond ((arrayp s2)
+ (nyq:sound-to-array s1 (length s2)))
+ (t s1)))
+ (t s1)))
(defmacro continuous-control-warp (beh)
@@ -578,7 +613,7 @@ loop
(result (make-array len)))
(dotimes (i len)
(setf (aref result i)
- (snd-exp (snd-scale ln10over20 (aref snd i)))))
+ (snd-exp (snd-scale ln10over20 (aref x i)))))
result))
(t
(snd-exp (snd-scale ln10over20 x)))))
@@ -592,11 +627,44 @@ loop
(result (make-array len)))
(dotimes (i len)
(setf (aref result i)
- (snd-scale (/ 1.0 ln10over20) (snd-log (aref snd i)))))
+ (snd-scale (/ 1.0 ln10over20) (snd-log (aref x i)))))
result))
(t
(snd-scale (/ 1.0 ln10over20) (snd-log x)))))
+
+(cond ((not (fboundp 'scalar-step-to-hz))
+ (setfn scalar-step-to-hz step-to-hz)
+ (setfn scalar-hz-to-step hz-to-step)))
+
+
+(defun step-to-hz (x)
+ (cond ((numberp x)
+ (scalar-step-to-hz x))
+ ((arrayp x)
+ (let* ((len (length x))
+ (result (make-array len)))
+ (dotimes (i len)
+ (setf (aref result i) (step-to-hz (aref x i))))
+ result))
+ (t
+ (s-exp (snd-offset (snd-scale 0.0577622650466621 x)
+ 2.1011784386926213)))))
+
+(defun hz-to-step (x)
+ (cond ((numberp x)
+ (scalar-hz-to-step x))
+ ((arrayp x)
+ (let* ((len (length x))
+ (result (make-array len)))
+ (dotimes (i len)
+ (setf (aref result i) (hz-to-step (aref x i))))
+ result))
+ (t
+ (snd-scale 17.312340490667565
+ (snd-offset (s-log x) -2.1011784386926213)))))
+
+
; sref - access a sound at a given time point
; note that the time is transformed to global
(defun sref (sound point)
@@ -613,27 +681,6 @@ loop
(snd-xform sound (snd-srate sound) 0 start stop 1.0))
-;(defmacro extract (start stop sound)
-; `(let ($newsound)
-; (progv '(*START* *STOP*)
-; (list (local-to-global ,start)
-; (local-to-global ,stop))
-; (setf $newsound ,sound)
-; (setf $newsound
-; (loud-abs 0 (cue (set-logical-stop-abs $newsound *STOP*)))))
-; $newsound))
-
-
-;(defmacro extract-abs (start stop sound)
-; `(let ($newsound $newstart)
-; (progv '(*START* *STOP*)
-; (list ,start ,stop)
-; (setf $newstart *START*)
-; (setf $newsound ,sound)
-; (setf $newsound (set-logical-stop-abs $newsound *STOP*)))
-; (snd-xform $newsound (snd-srate $newsound) ,start ,stop 1.0)))
-
-
(defun local-to-global (local-time)
(let ((d (warp-time *WARP*))
(s (warp-stretch *WARP*))
@@ -672,32 +719,83 @@ loop
; s-plot -- compute and write n data points for plotting
-;
-(defun s-plot (snd &optional (n 1000))
- (prog ((points (snd-samples snd (1+ n)))
- (filename (soundfilename *default-plot-file*))
- outf
- (period (/ 1.0 (snd-srate snd)))
- len
- (maximum 1.0))
- (setf outf (open filename :direction :output))
- (cond ((null outf)
- (format t "s-plot: could not open ~A!~%" filename)
- (return nil)))
+;
+; dur is how many seconds of sound to plot. If necessary, cut the
+; sample rate to allow plotting dur seconds
+; n is the number of points to plot. If there are more than n points,
+; cut the sample rate. If there are fewer than n samples, just
+; plot the points that exist.
+;
+(defun s-plot (snd &optional (dur 2.0) (n 1000))
+ (prog* ((sr (snd-srate snd))
+ (t0 (snd-t0 snd))
+ (filename (soundfilename *default-plot-file*))
+ (s snd) ;; s is either snd or resampled copy of snd
+ (outf (open filename :direction :output)) ;; for plot data
+ (maximum -1000000.0) ;; maximum amplitude
+ (minimum 1000000.0) ;; minimum amplitude
+ actual-dur ;; is the actual-duration of snd
+ sample-count ;; is how many samples to get from s
+ period ;; is the period of samples to be plotted
+ truncation-flag ;; true if we didn't get whole sound
+ points) ;; is array of samples
+ ;; If we need more than n samples to get dur seconds, resample
+ (cond ((< n (* dur sr))
+ (setf s (force-srate (/ (float n) dur) snd))))
+ ;; Get samples from the signal
+ (setf points (snd-samples s (1+ n)))
+ ;; If we got fewer than n points, we can at least estimate the
+ ;; actual duration (we might not know exactly if we use a lowered
+ ;; sample rate). If the actual sample rate was lowered to avoid
+ ;; getting more than n samples, we can now raise the sample rate
+ ;; based on our estimate of the actual sample duration.
+ (display "test" (length points) n)
+ (cond ((< (length points) n)
+ ;; sound is shorter than dur, estimate actual length
+ (setf actual-dur (/ (length points) (snd-srate s)))
+ (setf sample-count (round (min n (* actual-dur sr))))
+ (cond ((< n (* actual-dur sr))
+ (setf s (force-srate (/ (float n) actual-dur) snd)))
+ (t ;; we can use original signal
+ (setf s snd)))
+ (setf points (snd-samples s sample-count))
+ ;; due to rounding, need to recalculate exact count
+ (setf sample-count (length points)))
+ ((= (length points) n)
+ (setf actual-dur dur)
+ (setf sample-count n))
+ (t ;; greater than n points, so we must have truncated sound
+ (setf actual-dur dur)
+ (setf sample-count n)
+ (setf truncation-flag t)))
+ ;; actual-dur is the duration of the plot
+ ;; sample-count is how many samples we have
+ (setf period (/ 1.0 (snd-srate s)))
+ (cond ((null outf)
+ (format t "s-plot: could not open ~A!~%" filename)
+ (return nil)))
(format t "s-plot: writing ~A ... ~%" filename)
- (setf len (length points))
- (cond ((> len n)
- (setf len n)
- (format t "WARNING: SOUND TRUNCATED TO ~A POINTS~%" len)))
- (dotimes (i len)
- (cond ((< (abs maximum) (abs (aref points i)))
- (setf maximum (aref points i))))
- (format outf "~A ~A~%" (* i period) (aref points i)))
+ (cond (truncation-flag
+ (format t " !!TRUNCATING SOUND TO ~As\n" actual-dur)))
+ (cond ((/= (snd-srate s) (snd-srate snd))
+ (format t " !!RESAMPLING SOUND FROM ~A to ~Ahz\n"
+ (snd-srate snd) (snd-srate s))))
+ (cond (truncation-flag
+ (format t " Plotting ~As, actual sound duration is greater\n"
+ actual-dur))
+ (t
+ (format t " Sound duration is ~As~%" actual-dur)))
+ (dotimes (i sample-count)
+ (setf maximum (max maximum (aref points i)))
+ (setf minimum (min minimum (aref points i)))
+ (format outf "~A ~A~%" (+ t0 (* i period)) (aref points i)))
(close outf)
- (cond ((> (abs maximum) 1.0)
- (format t "WARNING: MAXIMUM AMPLITUDE IS ~A~%" maximum)))
- (format t "~A points from ~A to ~A~%"
- len (snd-t0 snd) (+ (snd-t0 snd) (* len period)))))
+ (format t " Wrote ~A points from ~As to ~As~%"
+ sample-count t0 (+ t0 actual-dur))
+ (format t " Range of values ~A to ~A\n" minimum maximum)
+ (cond ((or (< minimum -1) (> maximum 1))
+ (format t " !!SIGNAL EXCEEDS +/-1~%")))))
+
; run something like this to plot the points:
; graph < points.dat | plot -Ttek
@@ -761,6 +859,46 @@ loop
,s))
+;; COMPUTE-DEFAULT-SOUND-FILE -- construct and set *default-sound-file*
+;;
+;; (this is harder than it might seem because the default place for
+;; sound files is in /tmp, which is shared by users, so we'd like to
+;; use a user-specific name to avoid collisions)
+;;
+(defun compute-default-sound-file ()
+ (let (inf user extension)
+ ; the reason for the user name is that if UserA creates a temp file,
+ ; then UserB will not be able to overwrite it. The user name is a
+ ; way to give each user a unique temp file name. Note that we don't
+ ; want each session to generate a unique name because Nyquist doesn't
+ ; delete the sound file at the end of the session.
+ (setf user (get-user))
+#|
+ (cond ((null user)
+ (format t
+"Please type your user-id so that I can construct a default
+sound-file name. To avoid this message in the future, add
+this to your .login file:
+ setenv USER <your id here>
+or add this to your init.lsp file:
+ (setf *default-sound-file* \"<your filename here>\")
+ (setf *default-sf-dir* \"<full pathname of desired directory here>\")
+
+Your id please: ")
+ (setf user (read))))
+|#
+ ; now compute the extension based on *default-sf-format*
+ (cond ((= *default-sf-format* snd-head-AIFF)
+ (setf extension ".aif"))
+ ((= *default-sf-format* snd-head-Wave)
+ (setf extension ".wav"))
+ (t
+ (setf extension ".snd")))
+ (setf *default-sound-file*
+ (strcat (string-downcase user) "-temp" extension))
+ (format t "Default sound file is ~A.~%" *default-sound-file*)))
+
+
;; CONTROL-WARP -- apply a warp function to a control function
;;
(defun control-warp (warp-fn control &optional wrate)
@@ -816,7 +954,7 @@ loop
;; = (snd-compose (scale-srate sound s) (snd-inverse (shift-time f (- d))
;; 0 *SOUND-SRATE*))
;;
-(defun sound (sound)
+(defun nyq:sound (sound)
(cond ((null (warp-function *WARP*))
(snd-xform sound (/ (snd-srate sound) (warp-stretch *WARP*))
(local-to-global 0)
@@ -827,6 +965,20 @@ loop
(- (warp-time *WARP*)))
0 *SOUND-SRATE*)))))
+(defun nyq:sound-of-array (sound)
+ (let* ((n (length sound))
+ (s (make-array n)))
+ (dotimes (i n)
+ (setf (aref s i) (nyq:sound (aref sound i))))
+ s))
+
+
+(defun sound (sound)
+ (cond ((arrayp sound)
+ (nyq:sound-of-array sound))
+ (t
+ (nyq:sound sound))))
+
;; (SCALE-SRATE SOUND SCALE)
;; multiplies the sample rate by scale
@@ -861,6 +1013,13 @@ loop
(setfn control sound)
+;; (cue-file string)
+;; Loads a sound file with the given name, returning a sound which is
+;; transformed to the current environment.
+(defun cue-file (name)
+ (cue (force-srate *SOUND-SRATE* (s-read name))))
+
+
;; (env t1 t2 t4 l1 l2 l3 &optional duration)
;; Creates a 4-phase envelope.
;; tN is the duration of phase N, and lN is the final level of
@@ -894,9 +1053,9 @@ loop
(t
(setf t3 (- actual-dur t1 t2 t4))))
(set-logical-stop
- (abs-env (at *rslt*
- (pwl t1 l1 (+ t1 t2) l2 (- actual-dur t4) l3 actual-dur)))
- duration)))
+ (abs-env (at *rslt*
+ (pwl t1 l1 (+ t1 t2) l2 (- actual-dur t4) l3 actual-dur)))
+ duration)))
(defun gate (sound lookahead risetime falltime floor threshold)
@@ -1204,10 +1363,12 @@ loop
;;
(defun ramp (&optional (x 1))
(let* ((duration (get-duration x)))
- (warp-abs nil
- (at *rslt*
- (sustain-abs 1
- (pwl duration 1 (+ duration (/ *control-srate*))))))))
+ (set-logical-stop
+ (warp-abs nil
+ (at *rslt*
+ (sustain-abs 1
+ (pwl duration 1 (+ duration (/ *control-srate*))))))
+ x)))
(defun resample (snd rate)
@@ -1301,24 +1462,24 @@ loop
(defun nyq:min-2-sounds (s1 s2)
(cond ((numberp s1)
- (cond ((numberp s2)
- (min s1 s2))
- (t
- (snd-minv
- (snd-const s1 (local-to-global 0.0)
- (snd-srate s2) (get-duration 1.0))))))
- ((numberp s2)
- (snd-minv (snd-const s2 (local-to-global 0.0)
- (snd-srate s1) (get-duration 1.0))))
- (t
- (let ((s1sr (snd-srate s1))
- (s2sr (snd-srate s2)))
- (cond ((> s1sr s2sr)
- (snd-minv s1 (snd-up s1sr s2)))
- ((< s1sr s2sr)
- (snd-minv (snd-up s2sr s1) s2))
- (t
- (snd-minv s1 s2)))))))
+ (cond ((numberp s2)
+ (min s1 s2))
+ (t
+ (snd-minv s2
+ (snd-const s1 (local-to-global 0.0)
+ (snd-srate s2) (get-duration 1.0))))))
+ ((numberp s2)
+ (snd-minv s1 (snd-const s2 (local-to-global 0.0)
+ (snd-srate s1) (get-duration 1.0))))
+ (t
+ (let ((s1sr (snd-srate s1))
+ (s2sr (snd-srate s2)))
+ (cond ((> s1sr s2sr)
+ (snd-minv s1 (snd-up s1sr s2)))
+ ((< s1sr s2sr)
+ (snd-minv (snd-up s2sr s1) s2))
+ (t
+ (snd-minv s1 s2)))))))
(defun snd-minv (s1 s2)
(scale -1.0 (snd-maxv (scale -1.0 s1) (scale -1.0 s2))))
@@ -1327,6 +1488,7 @@ loop
;
(load "seq" :verbose NIL)
+
; set-logical-stop - modify the sound and return it, time is shifted and
; stretched
(defun set-logical-stop (snd tim)
@@ -1351,20 +1513,25 @@ loop
(defun sim-list (snds)
(cond ((null snds)
- (snd-zero (local-to-global 0) *sound-srate*))
- ((null (cdr snds))
- (car snds))
- ((null (cddr snds))
- (nyq:add2 (car snds) (cadr snds)))
- (t
- (nyq:add2 (car snds) (sim-list (cdr snds))))))
+ (snd-zero (local-to-global 0) *sound-srate*))
+ ((null (cdr snds))
+ (car snds))
+ ((null (cddr snds))
+ (nyq:add2 (car snds) (cadr snds)))
+ (t
+ (nyq:add2 (car snds) (sim-list (cdr snds))))))
-;(defun rest (&optional (dur 1.0))
-; (cue (set-Logical-stop (* dur *stretch*) (s-create))))
-(defun s-rest (&optional (dur 1.0))
- (let ((d (get-duration dur)))
- (snd-const 0.0 *rslt* *SOUND-SRATE* d)))
+(defun s-rest (&optional (dur 1.0) (chans 1))
+ (let ((d (get-duration dur))
+ r)
+ (cond ((= chans 1)
+ (snd-const 0.0 *rslt* *SOUND-SRATE* d))
+ (t
+ (setf r (make-array chans))
+ (dotimes (i chans)
+ (setf (aref r i) (snd-const 0.0 *rslt* *SOUND-SRATE* d)))
+ r))))
(defun tempo (warpfn)
@@ -1515,7 +1682,9 @@ loop
;;; operations on sounds
-(defun diff (x y) (sum x (prod -1 y)))
+(defun diff (x &optional y)
+ (cond (y (sum x (prod -1 y)))
+ (t (prod -1 x))))
; compare-shape is a shape table -- origin 1.
(defun compare (x y &optional (compare-shape *step-shape*))
@@ -1531,8 +1700,9 @@ loop
; hz is a sound or scalar
(defun osc-pulse (hz bias &optional (compare-shape *step-shape*))
(compare bias (osc-tri hz) compare-shape))
+
+;;; tapped delays
-(setf NY:ALL 1000000000)
-
-; arch-tag: 3918083b-777d-4628-8b00-f47921a040da
-
+;(tapv snd offset vardelay maxdelay)
+(setfn tapv snd-tapv) ;; linear interpolation
+(setfn tapf snd-tapf) ;; no interpolation
diff --git a/nyquist/printrec.lsp b/nyquist/printrec.lsp
index 36badaf..4ca17bb 100644
--- a/nyquist/printrec.lsp
+++ b/nyquist/printrec.lsp
@@ -28,6 +28,3 @@
(printrec-list (cdr l))))))
nil)
; )
-
-; arch-tag: 3ebdbd65-06e3-4642-9b9e-8f796f177f0f
-
diff --git a/nyquist/profile.lsp b/nyquist/profile.lsp
index 0f02d5a..0f7038b 100644
--- a/nyquist/profile.lsp
+++ b/nyquist/profile.lsp
@@ -25,6 +25,3 @@
(setq *PROFILE* nil)
(profile t))
-
-; arch-tag: 5b61c530-fbbd-432e-b7a8-9e4a0fa6bfc3
-
diff --git a/nyquist/seq.lsp b/nyquist/seq.lsp
index 3a089e3..947c63e 100644
--- a/nyquist/seq.lsp
+++ b/nyquist/seq.lsp
@@ -156,6 +156,49 @@
(funcall seqrep%closure (local-to-global 0))))))
+(defmacro trigger (input beh)
+ `(let ((nyq%environment (nyq:the-environment)))
+ (snd-trigger ,input #'(lambda (t0) (with%environment nyq%environment
+ (at-abs t0 ,beh))))))
+
+;; EVENT-EXPRESSION -- the sound of the event
+;;
+(setfn event-expression caddr)
+
+
+;; EVENT-HAS-ATTR -- test if event has attribute
+;;
+(defun event-has-attr (note attr)
+ (expr-has-attr (event-expression note)))
+
+
+;; EXPR-SET-ATTR -- new expression with attribute = value
+;;
+(defun expr-set-attr (expr attr value)
+ (cons (car expr) (list-set-attr-value (cdr expr) attr value)))
+
+(defun list-set-attr-value (lis attr value)
+ (cond ((null lis) (list attr value))
+ ((eq (car lis) attr)
+ (cons attr (cons value (cddr lis))))
+ (t
+ (cons (car lis)
+ (cons (cadr lis)
+ (list-set-attr-value (cddr lis) attr value))))))
+
+
+;; EXPAND-AND-EVAL-EXPR -- evaluate a note, chord, or rest for timed-seq
+;;
+(defun expand-and-eval-expr (expr)
+ (let ((pitch (member :pitch expr)))
+ (cond ((and pitch (cdr pitch) (listp (cadr pitch)))
+ (setf pitch (cadr pitch))
+ (simrep (i (length pitch))
+ (eval (expr-set-attr expr :pitch (nth i pitch)))))
+ (t
+ (eval expr)))))
+
+
;; (timed-seq '((time1 stretch1 expr1) (time2 stretch2 expr2) ...))
;; a timed-seq takes a list of events as shown above
;; it sums the behaviors, similar to
@@ -176,6 +219,13 @@
(error (format nil "Negative stretch factor in TIMED-SEQ: ~A" event)))
(t
(setf start-time (car event)))))
+ ;; remove rests (a rest has a :pitch attribute of nil)
+ (setf score (score-select score #'(lambda (tim dur evt)
+ (expr-get-attr evt :pitch t))))
+ (cond ((and score (car score)
+ (eq (car (event-expression (car score))) 'score-begin-end))
+ (setf score (cdr score)))) ; skip score-begin-end data
+ ; (score-print score) ;; debugging
(cond ((null score) (s-rest 0))
(t
(at (caar score)
@@ -185,15 +235,18 @@
(prog1
(set-logical-stop
(stretch (cadar score)
- (setf event (eval (caddar score))))
- (- (caadr score) (caar score)))
-; (display "timed-seq" (caddar score) (local-to-global 0))
+ (setf event (expand-and-eval-expr
+ (caddar score))))
+ (- (caadr score) (caar score)))
+ ;(display "timed-seq" (caddar score)
+ ; (local-to-global 0)
+ ; (snd-t0 event)
+ ; (- (caadr score)
+ ; (caar score)))
(setf score (cdr score)))))
(t
- (stretch (cadar score) (eval (caddar score)))))))))))
-
-
+ (stretch (cadar score) (expand-and-eval-expr
+ (caddar score)))))))))))
-; arch-tag: 39a49091-74e4-4cd9-84de-19833f669735
diff --git a/nyquist/seqfnint.lsp b/nyquist/seqfnint.lsp
index 5b05340..269fbb7 100644
--- a/nyquist/seqfnint.lsp
+++ b/nyquist/seqfnint.lsp
@@ -29,6 +29,3 @@
(setf seq-bend-tag 6)
-
-; arch-tag: f0cfa041-b4fb-41e9-aad5-24568c5bc246
-
diff --git a/nyquist/seqmidi.lsp b/nyquist/seqmidi.lsp
index 844fea6..686f018 100644
--- a/nyquist/seqmidi.lsp
+++ b/nyquist/seqmidi.lsp
@@ -157,6 +157,3 @@ exit-loop ; here, we know time of next note
; (seq-next the-seq)
; (go loop)))
;
-
-; arch-tag: 9d4cc7f3-2a74-45f3-a809-0e22c5ef957e
-
diff --git a/nyquist/sndfnint.lsp b/nyquist/sndfnint.lsp
index d98496f..83c897c 100644
--- a/nyquist/sndfnint.lsp
+++ b/nyquist/sndfnint.lsp
@@ -1,7 +1,3 @@
- (SETF MAX-STOP-TIME 10E20)
-
- (SETF MIN-START-TIME -10E20)
-
(setf snd-head-none 0)
(setf snd-head-AIFF 1)
@@ -12,6 +8,38 @@
(setf snd-head-Wave 4)
+ (setf snd-head-PAF 5)
+
+ (setf snd-head-SVX 6)
+
+ (setf snd-head-NIST 7)
+
+ (setf snd-head-VOC 8)
+
+ (setf snd-head-W64 9)
+
+ (setf snd-head-MAT4 10)
+
+ (setf snd-head-MAT5 11)
+
+ (setf snd-head-PVF 12)
+
+ (setf snd-head-XI 13)
+
+ (setf snd-head-HTK 14)
+
+ (setf snd-head-SDS 15)
+
+ (setf snd-head-AVR 16)
+
+ (setf snd-head-SD2 17)
+
+ (setf snd-head-FLAC 18)
+
+ (setf snd-head-CAF 19)
+
+ (setf snd-head-raw 20)
+
(setf snd-head-channels 1)
(setf snd-head-mode 2)
@@ -22,20 +50,37 @@
(setf snd-head-dur 16)
- (setf snd-head-mode-adpcm 0)
+ (setf snd-head-latency 32)
+
+ (setf snd-head-type 64)
+
+ (setf snd-mode-adpcm 0)
+
+ (setf snd-mode-pcm 1)
- (setf snd-head-mode-pcm 1)
+ (setf snd-mode-ulaw 2)
- (setf snd-head-mode-ulaw 2)
+ (setf snd-mode-alaw 3)
- (setf snd-head-mode-alaw 3)
+ (setf snd-mode-float 4)
- (setf snd-head-mode-float 4)
+ (setf snd-mode-upcm 5)
- (setf snd-head-mode-upcm 5)
+ (setf snd-mode-unknown 6)
- (setf OP-AVERAGE 1) (setf OP-PEAK 2)
+ (setf snd-mode-double 7)
+ (setf snd-mode-GSM610 8)
+
+ (setf snd-mode-DWVW 9)
+
+ (setf snd-mode-DPCM 10)
+
+ (setf snd-mode-msadpcm 11)
+
+ (SETF MAX-STOP-TIME 10E20)
+
+ (SETF MIN-START-TIME -10E20)
-; arch-tag: b0e8c5cc-1257-4eba-8326-399fc1629ea2
+ (setf OP-AVERAGE 1) (setf OP-PEAK 2)
diff --git a/nyquist/system.lsp b/nyquist/system.lsp
index 62c3287..4a4c106 100644
--- a/nyquist/system.lsp
+++ b/nyquist/system.lsp
@@ -1,49 +1,25 @@
-; system.lsp -- machine/system-dependent definitions
+;; system.lsp -- system-dependent lisp code
-;; default behavior is to call SETUP-CONSOLE to get large white typescript
-;;
-;; set *setup-console* to nil in your personal init.lsp to override this behavior
-;; (this may be necessary to work with emacs)
-;;
-(if (not (boundp '*setup-console*)) (setf *setup-console* t))
-(if *setup-console* (setup-console))
-
-(setf ny:bigendianp nil)
+; local definition for play
+; this one is for Linux:
(if (not (boundp '*default-sf-format*))
- (setf *default-sf-format* snd-head-Wave))
+ (setf *default-sf-format* snd-head-wave))
-;(if (not (boundp '*default-sound-file*))
-; (setf *default-sound-file* "temp.wav"))
+(if (not (boundp '*default-sound-file*))
+ (compute-default-sound-file))
-;(if (not (boundp '*default-sf-dir*))
-; (setf *default-sf-dir* ""))
+(if (not (boundp '*default-sf-dir*))
+ (setf *default-sf-dir* "./"))
(if (not (boundp '*default-sf-mode*))
- (setf *default-sf-mode* snd-head-mode-pcm))
+ (setf *default-sf-mode* snd-mode-pcm))
(if (not (boundp '*default-sf-bits*))
(setf *default-sf-bits* 16))
-;(if (not (boundp '*default-plot-file*))
-; (setf *default-plot-file* "points.dat"))
-
-;(if (not (boundp '*plotscript-file*))
-; (setf *plotscript-file* "sys/unix/rs6k/plotscript"))
-
-; local definition for play
-;(defmacro play (expr)
-; `(s-save-autonorm ,expr NY:ALL *default-sound-file* :play *soundenable*))
-
-
-;(defun r ()
-; (s-save (s-read *default-sound-file*) NY:ALL "" :play t)
-;)
-
-
-; PLAY-FILE -- play a file
-;(defun play-file (name)
-; (s-save (s-read name) NY:ALL "" :play t))
+(if (not (boundp '*default-plot-file*))
+ (setf *default-plot-file* (strcat (get-user) "-points.dat")))
; FULL-NAME-P -- test if file name is a full path or relative path
@@ -51,70 +27,64 @@
; (otherwise the *default-sf-dir* will be prepended
;
(defun full-name-p (filename)
- (or (eq (char filename 0) #\\)
- (eq (char filename 0) #\.)
- (and (> (length filename) 2)
- (both-case-p (char filename 0))
- (equal (char filename 1) #\:))))
+ (or (eq (char filename 0) #\/)
+ (eq (char filename 0) #\.)))
-(setf *file-separator* #\\)
+; RELATIVE-PATH-P -- test if filename or path is a relative path
+;
+(defun relative-path-p (filename)
+ (not (eq (char filename 0) #\/)))
-;(defun ny:load-file () (load "*.*"))
-;(defun ny:reload-file () (load "*"))
+(setf *file-separator* #\/)
-; save the standard function to write points to a file
-;
-;(setfn s-plot-points s-plot)
-
-;(defun array-max-abs (points)
-; (let ((m 0.0))
-; (dotimes (i (length points))
-; (setf m (max m (abs (aref points i)))))
-; m))
-
-;(setf graph-width 600)
-;(setf graph-height 220)
-
-;(defun s-plot (snd &optional (n 600))
-; (show-graphics)
-; (clear-graphics)
-; (cond ((soundp snd)
-; (s-plot-2 snd n (/ graph-height 2) graph-height))
-; (t
-; (let ((gh (/ graph-height (length snd)))
-; hs)
-; (dotimes (i (length snd))
-; (setf hs (s-plot-2 (aref snd i) n (+ (/ gh 2) (* i gh)) gh hs)))))))
-;
-;
-;(defun s-plot-2 (snd n y-offset graph-height horizontal-scale)
-; (prog ((points (snd-samples snd n))
-; maxpoint horizontal-scale vertical-scale)
-; (setf maxpoint (array-max-abs points))
-; (moveto 0 y-offset)
-; (lineto graph-width y-offset)
-; (moveto 0 y-offset)
-; (cond ((null horizontal-scale)
-; (setf horizontal-scale (/ (float graph-width) (length points)))))
-; (setf vertical-scale (- (/ (float graph-height) 2 maxpoint)))
-; (dotimes (i (length points))
-; (lineto (truncate (* horizontal-scale i))
-; (+ y-offset (truncate (* vertical-scale (aref points i))))))
-; (format t "X Axis: ~A to ~A (seconds)\n" (snd-t0 snd) (/ (length points) (snd-srate snd)))
-; (format t "Y Axis: ~A to ~A\n" (- maxpoint) maxpoint)
-; (format t "~A samples plotted.\n" (length points))
-; (return horizontal-scale)
-; ))
-;
-; S-EDIT - run the audio editor on a sound
-;
-;(defmacro s-edit (&optional expr)
-; `(prog ()
-; (if ,expr (s-save ,expr 1000000000 *default-sound-file*))
-; (system (format nil "audio_editor ~A &"
-; (soundfilename *default-sound-file*)))))
+;; PLAY-FILE - play a sound file
+;;
+(defun play-file (name)
+;;
+;; WARNING: if you invoke an external program to play files,
+;; but Nyquist uses internal (portaudio) interface to
+;; play synthesized sound, Nyquist may fail to open the
+;; sound device while it is playing a sound file and then
+;; refuse to play anything. -RBD dec05
+;; (system (strcat "sndplay " (soundfilename name))))
+;; (system (strcat "play " (soundfilename name) )))
+;;
+ (play (s-read (soundfilename name))))
+
+;; R - replay last file written with PLAY
+(defun r () (play-file *default-sound-file*))
+
+;;;; use this old version if you want to use sndplay to play
+;;;; the result file rather than play the samples as they
+;;;; are computed. This version does not autonormalize.
+;; PLAY - write value of an expression to file and play it
+;;
+;(defmacro play (expr)
+; `(prog (specs)
+; (setf specs (s-save (force-srate *sound-srate* ,expr)
+; 1000000000 *default-sound-file*))
+; (r)))
+;;;;
+
+; local definition for play
+(defmacro play (expr)
+ `(s-save-autonorm ,expr NY:ALL *default-sound-file* :play *soundenable*))
+
+;; for Linux, modify s-plot (defined in nyquist.lsp) by saving s-plot
+;; in standard-s-plot, then call gnuplot to display the points.
+;;
+;; we also need to save the location of this file so we can find
+;; nyquist-plot.txt, the command file for gnuplot
+;;
+(setf *runtime-path* (current-path))
+(display "system.lsp" *runtime-path*)
+(setfn standard-s-plot s-plot)
-; arch-tag: 01c1817b-9da4-4a6a-8cd7-99231844ceca
+(defun s-plot (s &optional (n 1000) (dur 2.0))
+ (let (plot-file)
+ (standard-s-plot s n dur) ;; this calculates the data points
+ (setf plot-file (strcat *runtime-path* "nyquist-plot.txt"))
+ (system (strcat "gnuplot -persist " plot-file))))
diff --git a/nyquist/test.lsp b/nyquist/test.lsp
deleted file mode 100644
index 2cd948f..0000000
--- a/nyquist/test.lsp
+++ /dev/null
@@ -1,46 +0,0 @@
-
-(defun ss () (osc c5))
-
-(defun tt () (stretch 2 (snd-tapv (ss) 1.1 (scale *d* (lfo 10)) 2.2)))
-(setf *d* .01)
-
-(defun g () (play (tt)))
-
-;(set-sound-srate 10)
-;(set-control-srate 10)
-(defun rr () (stretch 10 (ramp)))
-(defun ll () (stretch 10 (lfo .5)))
-(defun xx () (snd-tapv (rr) 1.1 (ll) 2.2))
-(defun h () (snd-samples (xx) 150))
-
-(defun chorus (sound maxdepth depth rate saturation)
- (let ((modulation (prod depth (stretch-abs 10000.0 (general-lfo rate))))
- (offset (/ maxdepth 2.0))
- chor)
- (setf chor (snd-tapv sound offset modulation maxdepth))
- (sum (prod chor saturation) (prod (seq (s-rest offset) sound)
- (sum 1.0 (prod -1.0 saturation))))))
-
-
-(set-sound-srate 22050.0)
-
-(defun f ()
- (chorus (s-read "runtime\\ah.wav") .1 .1 1 .5))
-
-(defun e ()
- (seq (s-rest .05) (chorus (s-read "rpd.wav") .07 .07 .7 .5)))
-
-(defun d () (sum (e) (f)))
-
-(defun rou () (s-read "round.wav" :time-offset 1.18 :dur (- 8.378 1.18)))
-
-(defun rou4 () (sim (rou)
- (at *rd* (rou))
- (at (* *rd* 2) (rou))
- (at (* *rd* 3) (rou))))
-
-
-
-
-; arch-tag: cc0f4e63-9735-4b37-9c01-8440b2fe89b2
-
diff --git a/nyquist/xlinit.lsp b/nyquist/xlinit.lsp
index 80dfaac..42991e2 100644
--- a/nyquist/xlinit.lsp
+++ b/nyquist/xlinit.lsp
@@ -42,12 +42,12 @@
; (objectp expr) - object predicate
;
-(defun objectp (x) (eq (type x) 'OBJ))
+;this is built-in: (defun objectp (x) (eq (type-of x) 'OBJ))
; (filep expr) - file predicate
;
-(defun filep (x) (eq (type x) 'FPTR))
+(defun filep (x) (eq (type-of x) 'FPTR))
(load "profile.lsp" :verbose NIL)
@@ -65,6 +65,3 @@
(setq *gc-flag* t)
-
-; arch-tag: d0dc11a2-dab0-4e26-aa32-b1a90dacb09a
-
diff --git a/plug-ins/clicktrack.ny b/plug-ins/clicktrack.ny
index 233c8d2..a0c958e 100644
--- a/plug-ins/clicktrack.ny
+++ b/plug-ins/clicktrack.ny
@@ -1,42 +1,85 @@
;nyquist plug-in
-
;version 3
-
;type generate
-
;categories "http://lv2plug.in/ns/lv2core#GeneratorPlugin"
-
;name "Click Track..."
-
;action "Generating Click Track..."
+;info "by Dominic Mazzoni, modified by David R. Sky\nReleased under terms of the GNU General Public License version 2\nFor help, select one of two help screens in 'Action choice' below."
-;info "Written by Dominic Mazzoni, modified by David R. Sky\nReleased under terms of the GNU General Public License version 2\nGenerates a click track at the given tempo and beats per measure, using the\nclick sound type you choose below. To start the click track after time zero,\nenter the starting point in start-time-offset.\nTo create metronome-like click track, set beats-per-measure value to 1 or 2. \nPitches are set using MIDI numbers for example:\nC notes: 48, 60 [middle C], 72, 84, 96."
-
-
-
-;control tempo "Tempo [beats per minute]" int "" 120 30 300
-;control sig "Beats per measure [bar]" int "" 4 1 20
-;control measures "Number of measures [bars]" int "" 16 1 1000
-;control offset "Start time offset [seconds]" real "" 0 0 30
-;control click-type "Click sound type" choice "ping,noise,tick" 0
-;control q "Noise click resonance [q] [higher gives more defined pitch]" int "" 1 1 20
-;control high "MIDI pitch of strong click" int "" 92 18 116
-;control low "MIDI pitch of weak click" int "" 80 18 116
+;control action "Action choice" choice "Generate track, help screen 1, help screen 2" 0
+;control tempo "Tempo [beats per minute]" int "30 - 300 beats/minute" 120 30 300
+;control sig "Beats per measure [bar]" int "1 - 20 beats/measure" 4 1 20
+;control measures "Number of measures [bars]" int "1 - 1000 bars" 16 1 1000
+;control click-track-dur "Optional click track duration [minutes seconds]" string "" ""
+;control ticklen "Individual click duration [milliseconds]" int "1 - 100 ms" 10 1 100
+;control offset "Start time offset [seconds]" real "0 - 30 seconds" 0 0 30
+;control click-type "Click sound" choice "ping,noise,tick" 0
+;control q "Noise click resonance - discernable pitch [q]" int "1 - 20" 1 1 20
+;control high "MIDI pitch of strong click" int "18 - 116" 92 18 116
+;control low "MIDI pitch of weak click" int "18 - 116" 80 18 116
; original clicktrack.ny by Dominic Mazzoni,
-; modified by David R. Sky September 2007
+; modified by David R. Sky:
+; added click pitch [user request] and sound types fields September 2007
+; added optional total click track duration field [requested by Mike Mullins]
+; June 2009
+; added individual click duration field [requested by Quinto Milana]
+; June 2009]
; original code kept 'as is'.
; now includes:
; choice between click sounds [ping {sinewave}, noise or tick],
; user-set MIDI pitch values for strong and weak clicks,
; resonance of noise clicks
-; [higher resonance gives noise clicks more discernable pitch],
+; [higher resonance gives them more discernable pitch],
; time offset for start of click track,
; and error-checking code to generate error message
; for such things as negative value inputs
; Drip sound generator by Paul Beach,
; used with permission.
+;
+; Thanks very much to Gale Andrews, who gave extensive visual feedback
+; and suggestions!
+
+
+; view 1 of 2 help screens, or generate click track
+(cond ; 'master' cond
+((= action 1) ; display help screen 1
+(format nil
+"Click Track Generator help - screen 1 of 2
+
+Generates a click track at the selected tempo, beats per\nmeasure, and either number of measures or track duration,\nusing selected click sound.
+
+'Tempo': number of beats (clicks) per minute.
+
+'Beats per measure (bar)': For example, 3/4 time means one\nstrong click then two others to form one bar, repeated\ndepending on 'number of measures' or 'click track duration'.
+
+'Optional click track duration': if you enter a value into this\nfield [minutes seconds (separated by a space)] or [seconds],\nthe generated click track will be at or near this duration,\nbased on this rule: only when time gives an exact number\nof measures will this number of measures be generated,\notherwise one additional measure will be generated.
+
+If you enter a value into this field, the 'number of measures'\nvalue will be ignored.
+
+ To generate click track or view help screen 2,\n restart Click Track and select from 'Action choice'.") ; end format
+) ; end display help screen 1
+
+((= action 2) ; display help screen 2
+(format nil
+"Click Track Generator help - screen 2 of 2
+'Individual click duration': the duration of each individual\nclick, minimum of 1 millisecond (ms) to maximum of 100 ms.
+
+'Start time offset': makes the click track start at a later\ntime than the very beginning (zero seconds), maximum\nof 30 seconds.
+
+'Click sound': choose between ping, noise or tick sound\nfor clicks.
+
+'Noise click resonance': the higher this value, the more\nclearly noise clicks have a tone.
+
+'MIDI pitch of strong/weak click': MIDI values indicate\nwhat pitch to use. C-notes are:
+
+24, 36, 48, 60 (middle C), 72, 84, 96, 108.\nC# (C-sharp) above middle C is 61.
+
+ To generate click track or view help screen 1,\n restart Click Track and select from 'Action choice'.") ; end format
+) ; end display help screen 2
+
+(t ; perform clicktrack.ny
(setf click-type (+ click-type 1))
@@ -111,7 +154,8 @@ error-msg
; no error so generate click track
(t
-(setf ticklen 0.01) ; duration of 1 click
+; duration of 1 click, originally statically 0.01 s
+(setf ticklen (* (max 1 (min 100 ticklen)) 0.001))
(setf beatlen (/ 60.0 tempo))
@@ -169,6 +213,42 @@ error-msg
(setf measure (sim measure
(stretch-abs (* sig beatlen) (const 0.0))))
+
+; function to convert a string into a list
+(defun string-to-list (string)
+(read (make-string-input-stream (format nil "(~a)" string))))
+
+
+; convert minutes-seconds string to a list
+; for example, "4 30" becomes (4 30)
+(setf m-s (string-to-list click-track-dur))
+
+
+; convert click-track-dur to number of measures,
+; otherwise use user's measures value
+(setf measures (if (null m-s)
+measures
+(/
+(if ;2
+(= (length m-s) 1)
+(first m-s) ; just seconds
+(+ (* 60 (first m-s)) (second m-s) ; minutes and seconds
+) ; end +
+) ; end if2
+(* sig beatlen)) ; end /
+) ; end if
+) ; end setf measures
+
+
+; round up to next whole number of measures only if
+; measures > (truncate measures)
+(setf measures (if
+(> measures (truncate measures))
+(truncate (1+ measures))
+(truncate measures)
+)) ; end if, setf measures
+
+
; loop measure n [measures-1] times
(setf result measure)
(dotimes (x (- measures 1))
@@ -184,6 +264,9 @@ result
) ; end t
) ; end cond
+) ; end t perform clicktrack.ny
+) ; end 'master' cond
+
; from previous commit:
; arch-tag: 73fbc0e9-548b-4143-b8ac-13437b9154a7
diff --git a/src/AColor.cpp b/src/AColor.cpp
index f6d974b..6ce9015 100644
--- a/src/AColor.cpp
+++ b/src/AColor.cpp
@@ -67,6 +67,80 @@ wxBrush AColor::tooltipBrush;
wxPen AColor::sparePen;
wxBrush AColor::spareBrush;
+//
+// Draw an upward or downward pointing arrow.
+//
+void AColor::Arrow(wxDC & dc, wxCoord x, wxCoord y, int width, bool down)
+{
+ if (width & 0x01) {
+ width--;
+ }
+
+ wxPoint pt[3];
+ int half = width / 2;
+
+ if (down) {
+ pt[0].x = 0; pt[0].y = 0;
+ pt[1].x = width; pt[1].y = 0;
+ pt[2].x = half; pt[2].y = half;
+ }
+ else {
+ pt[0].x = 0; pt[0].y = half;
+ pt[1].x = half; pt[1].y = 0;
+ pt[2].x = width; pt[2].y = half;
+ }
+
+ dc.DrawPolygon(3, pt, x, y);
+}
+
+//
+// Draw a line while accounting for differences in wxWidgets versions
+//
+void AColor::Line(wxDC & dc, wxCoord x1, wxCoord y1, wxCoord x2, wxCoord y2)
+{
+ // As of 2.8.9 (possibly earlier), wxDC::DrawLine() on the Mac draws the
+ // last point since it is now based on the new wxGraphicsContext system.
+ // Make the other platforms do the same thing since the other platforms
+ // "may" follow they get wxGraphicsContext going.
+#if defined(__WXMAC__)
+ dc.DrawLine(x1, y1, x2, y2);
+#else
+ bool point = false;
+
+ if (x1 == x2) {
+ if (y1 < y2) {
+ y2++;
+ }
+ else if (y2 < y1) {
+ y1++;
+ }
+ else {
+ point = true;
+ }
+ }
+ else if (y1 == y2) {
+ if (x1 < x2) {
+ x2++;
+ }
+ else if (x2 < x1) {
+ x1++;
+ }
+ else {
+ point = true;
+ }
+ }
+ else {
+ dc.DrawPoint(x2, y2);
+ }
+
+ if (point) {
+ dc.DrawPoint(x2, y2);
+ }
+ else {
+ dc.DrawLine(x1, y1, x2, y2);
+ }
+#endif
+}
//
// Draws a focus rectangle (Taken directly from wxWidgets source)
@@ -113,16 +187,16 @@ void AColor::Bevel(wxDC & dc, bool up, wxRect & r)
else
AColor::Dark(&dc, false);
- dc.DrawLine(r.x, r.y, r.x + r.width, r.y);
- dc.DrawLine(r.x, r.y, r.x, r.y + r.height);
+ AColor::Line(dc, r.x, r.y, r.x + r.width, r.y);
+ AColor::Line(dc, r.x, r.y, r.x, r.y + r.height);
if (!up)
AColor::Light(&dc, false);
else
AColor::Dark(&dc, false);
- dc.DrawLine(r.x + r.width, r.y, r.x + r.width, r.y + r.height);
- dc.DrawLine(r.x, r.y + r.height, r.x + r.width + 1, r.y + r.height);
+ AColor::Line(dc, r.x + r.width, r.y, r.x + r.width, r.y + r.height);
+ AColor::Line(dc, r.x, r.y + r.height, r.x + r.width, r.y + r.height);
}
wxColour AColor::Blend( const wxColour & c1, const wxColour & c2 )
@@ -233,11 +307,11 @@ void AColor::CursorColor(wxDC * dc)
dc->SetPen(cursorPen);
}
-void AColor::IndicatorColor(wxDC * dc, bool recording)
+void AColor::IndicatorColor(wxDC * dc, bool bIsNotRecording)
{
if (!inited)
Init();
- int index = (int) recording;
+ int index = (int) bIsNotRecording;
dc->SetPen(indicatorPen[index]);
dc->SetBrush(indicatorBrush[index]);
}
diff --git a/src/AColor.h b/src/AColor.h
index fff62e1..629da48 100644
--- a/src/AColor.h
+++ b/src/AColor.h
@@ -25,6 +25,8 @@ class AColor {
static void Init();
static void ReInit();
+ static void Arrow(wxDC & dc, wxCoord x, wxCoord y, int width, bool down = true);
+ static void Line(wxDC & dc, wxCoord x1, wxCoord y1, wxCoord x2, wxCoord y2);
static void DrawFocus(wxDC & dc, wxRect & r);
static void Bevel(wxDC & dc, bool up, wxRect & r);
static void BevelTrackInfo(wxDC & dc, bool up, wxRect & r);
@@ -39,7 +41,7 @@ class AColor {
static void Dark(wxDC * dc, bool selected);
static void CursorColor(wxDC * dc);
- static void IndicatorColor(wxDC * dc, bool recording);
+ static void IndicatorColor(wxDC * dc, bool bIsNotRecording);
static void PlayRegionColor(wxDC * dc, bool locked);
static void Mute(wxDC * dc, bool on, bool selected, bool soloing);
diff --git a/src/AboutDialog.cpp b/src/AboutDialog.cpp
index 6edabbb..bf905b8 100644
--- a/src/AboutDialog.cpp
+++ b/src/AboutDialog.cpp
@@ -140,7 +140,7 @@ END_EVENT_TABLE()
IMPLEMENT_CLASS(AboutDialog, wxDialog)
AboutDialog::AboutDialog(wxWindow * parent)
- : wxDialog(parent, -1, _NoAcc("&About Audacity..."),
+ : wxDialog(parent, -1, _("About Audacity..."),
wxDefaultPosition, wxDefaultSize)
{
this->SetBackgroundColour(theTheme.Colour( clrAboutBoxBackground ));
@@ -176,10 +176,10 @@ void AboutDialog::PopulateAudacityPage( ShuttleGui & S )
#if 1 // Is this beta or not?
wxString par2Str = _(
- "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>.");
+ "This is a Beta version of the program. It may contain bugs and unfinished features. We depend on your feedback: please send bug reports and feature requests to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>.");
#else
wxString par2Str = _(
- "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to <b>feedback at audacityteam.org</b>. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>.");
+ "This is a stable, completed release of the program. However, if you find a bug or have a suggestion for us, please write to our <a href=\"mailto:feedback at audacityteam.org\">Feedback</a> address. For help using Audacity, please visit our <a href=\"http://audacityteam.org/forum/\">Forum</a>.");
#endif
wxString translatorCredits;
@@ -247,7 +247,7 @@ void AboutDialog::PopulateAudacityPage( ShuttleGui & S )
GetCreditsByRole(roleThanks) +
wxT("<p><br></center>") +
- _("<b>Audacity®</b> software is copyright © 1999-2008 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni.") +
+ _("<b>Audacity®</b> software is copyright © 1999-2009 Audacity Team. <br>The name <b>Audacity®</b> is a registered trademark of Dominic Mazzoni.") +
wxT("</font></body></html>");
@@ -396,14 +396,9 @@ void AboutDialog::PopulateInformationPage( ShuttleGui & S )
AddBuildinfoRow(&informationStr, wxT("libsamplerate"),
_("Sample rate conversion"), disabled);
#endif
-
- #if USE_PORTAUDIO_V19
+
AddBuildinfoRow(&informationStr, wxT("PortAudio"),
_("Audio playback and recording"), wxString(wxT("v19")));
- #else
- AddBuildinfoRow(&informationStr, wxT("PortAudio"),
- _("Audio playback and recording"), wxString(wxT("v18")));
- #endif
informationStr += wxT("<tr><td>"); // start new row
// wxWindows version:
@@ -820,7 +815,7 @@ wxString AboutDialog::GetCreditsByRole(AboutDialog::Role role)
{
wxString s;
- for (AboutDialogCreditItemsList::Node* p=creditItems.GetFirst(); p; p = p->GetNext())
+ for (AboutDialogCreditItemsList::compatibility_iterator p=creditItems.GetFirst(); p; p = p->GetNext())
{
AboutDialogCreditItem* item = p->GetData();
if (item->role == role)
diff --git a/src/AllThemeResources.h b/src/AllThemeResources.h
index c77a2f3..9b9174b 100644
--- a/src/AllThemeResources.h
+++ b/src/AllThemeResources.h
@@ -209,6 +209,9 @@ from there. Audacity will look for a file called "Pause.png".
#ifndef HAVE_AUDACITYLOGOWITHNAME
#define HAVE_AUDACITYLOGOWITHNAME
#include "../images/AudacityLogoWithName.xpm"
+#ifdef __WXGTK__
+ #include "../images/AudacityLogoAlpha.xpm"
+#endif
#endif
DEFINE_IMAGE( bmpAudacityLogo, wxImage( 215, 190 ), wxT("AudacityLogo")); //vvv
diff --git a/src/Audacity.h b/src/Audacity.h
index 9ea2268..fa8ce2d 100644
--- a/src/Audacity.h
+++ b/src/Audacity.h
@@ -12,17 +12,20 @@
\file Audacity.h
This is the main include file for Audacity. All files which need
- any Audacity-specific #defines or need to access any of Audacity's
- global functions should #include this file.
+ any Audacity-specific \#defines or need to access any of Audacity's
+ global functions should \#include this file.
*//********************************************************************/
+// Set to 0 for a release version and 1 for a beta version
+#define IS_BETA 1
+
// Increment as appropriate every time you release a new version
#define AUDACITY_VERSION 1
#define AUDACITY_RELEASE 3
-#define AUDACITY_REVISION 7
+#define AUDACITY_REVISION 8
#define AUDACITY_MODLEVEL 0
-#define AUDACITY_SUFFIX wxT("") // wxT("-alpha_") __TDATE__
+#define AUDACITY_SUFFIX wxT("")
#define AUDACITY_MAKESTR( x ) #x
#define AUDACITY_QUOTE( x ) AUDACITY_MAKESTR( x )
diff --git a/src/AudacityApp.cpp b/src/AudacityApp.cpp
index 1ec714e..afa8346 100644
--- a/src/AudacityApp.cpp
+++ b/src/AudacityApp.cpp
@@ -34,6 +34,7 @@ It handles initialization and termination by subclassing wxApp.
#include <wx/menu.h>
#include <wx/msgdlg.h>
#include <wx/snglinst.h>
+#include <wx/sysopt.h>
#include <wx/fontmap.h>
#include <wx/fs_zip.h>
@@ -60,8 +61,12 @@ It handles initialization and termination by subclassing wxApp.
#include "AudioIO.h"
#include "Benchmark.h"
#include "DirManager.h"
+#include "commands/CommandHandler.h"
+#include "commands/AppCommandEvent.h"
#include "effects/LoadEffects.h"
+#include "effects/Contrast.h"
#include "FFmpeg.h"
+#include "GStreamerLoader.h"
#include "FreqWindow.h"
#include "Internat.h"
#include "LangChoice.h"
@@ -149,6 +154,14 @@ It handles initialization and termination by subclassing wxApp.
# if defined(USE_MIDI)
# pragma comment(lib, "portsmf")
+# endif
+
+# if defined(EXPERIMENTAL_MIDI_OUT)
+# pragma comment(lib, "portmidi")
+# endif
+
+# if defined(EXPERIMENTAL_SCOREALIGN)
+# pragma comment(lib, "libscorealign")
# endif
# if defined(USE_NYQUIST)
@@ -159,10 +172,6 @@ It handles initialization and termination by subclassing wxApp.
# pragma comment(lib, "portmixer")
# endif
-# if defined(EXPERIMENTAL_SCOREALIGN)
-# pragma comment(lib, "libscorealign")
-# endif
-
# if defined(USE_SLV2)
# pragma comment(lib, "slv2")
# pragma comment(lib, "librdf")
@@ -244,7 +253,17 @@ void QuitAudacity(bool bForce)
// BG: unless force is true
// BG: Are there any projects open?
- if (!gAudacityProjects.IsEmpty())
+ //- if (!gAudacityProjects.IsEmpty())
+/*start+*/
+ if (gAudacityProjects.IsEmpty())
+ {
+#ifdef __WXMAC__
+ AudacityProject::DeleteClipboard();
+#endif
+ }
+ else
+/*end+*/
+
{
while (gAudacityProjects.Count())
{
@@ -263,6 +282,8 @@ void QuitAudacity(bool bForce)
}
}
+ ModuleManager::Dispatch(AppQuiting);
+
wxLogWindow *lw = wxGetApp().mLogger;
if (lw)
{
@@ -272,14 +293,11 @@ void QuitAudacity(bool bForce)
wxGetApp().mLogger = NULL;
}
- if (gFreqWindow)
- gFreqWindow->Destroy();
- gFreqWindow = NULL;
-
if (gParentFrame)
gParentFrame->Destroy();
gParentFrame = NULL;
+ CloseContrastDialog();
CloseScreenshotTools();
//release ODManager Threads
@@ -289,9 +307,6 @@ void QuitAudacity(bool bForce)
//temporarilly commented out till it is added to all projects
//delete Profiler::Instance();
- //Delete the clipboard
- AudacityProject::DeleteClipboard();
-
//delete the static lock for audacity projects
AudacityProject::DeleteAllProjectsDeleteLock();
@@ -306,6 +321,170 @@ void QuitAudacity()
QuitAudacity(false);
}
+#if defined(__WXGTK__) && defined(HAVE_GTK)
+
+///////////////////////////////////////////////////////////////////////////////
+// Provide the ability to receive notification from the session manager
+// when the user is logging out or shutting down.
+//
+// Most of this was taken from nsNativeAppSupportUnix.cpp from Mozilla.
+///////////////////////////////////////////////////////////////////////////////
+
+#include <dlfcn.h>
+#include <gtk/gtk.h>
+
+typedef struct _GnomeProgram GnomeProgram;
+typedef struct _GnomeModuleInfo GnomeModuleInfo;
+typedef struct _GnomeClient GnomeClient;
+
+typedef enum
+{
+ GNOME_SAVE_GLOBAL,
+ GNOME_SAVE_LOCAL,
+ GNOME_SAVE_BOTH
+} GnomeSaveStyle;
+
+typedef enum
+{
+ GNOME_INTERACT_NONE,
+ GNOME_INTERACT_ERRORS,
+ GNOME_INTERACT_ANY
+} GnomeInteractStyle;
+
+typedef enum
+{
+ GNOME_DIALOG_ERROR,
+ GNOME_DIALOG_NORMAL
+} GnomeDialogType;
+
+typedef GnomeProgram * (*_gnome_program_init_fn)(const char *,
+ const char *,
+ const GnomeModuleInfo *,
+ int,
+ char **,
+ const char *,
+ ...);
+typedef const GnomeModuleInfo * (*_libgnomeui_module_info_get_fn)();
+typedef GnomeClient * (*_gnome_master_client_fn)(void);
+typedef void (*GnomeInteractFunction)(GnomeClient *,
+ gint,
+ GnomeDialogType,
+ gpointer);
+typedef void (*_gnome_client_request_interaction_fn)(GnomeClient *,
+ GnomeDialogType,
+ GnomeInteractFunction,
+ gpointer);
+typedef void (*_gnome_interaction_key_return_fn)(gint, gboolean);
+
+static _gnome_client_request_interaction_fn gnome_client_request_interaction;
+static _gnome_interaction_key_return_fn gnome_interaction_key_return;
+
+void interact_cb(GnomeClient *client,
+ gint key,
+ GnomeDialogType type,
+ gpointer data)
+{
+ wxCloseEvent e(wxEVT_QUERY_END_SESSION, wxID_ANY);
+ e.SetEventObject(&wxGetApp());
+ e.SetCanVeto(true);
+
+ wxGetApp().ProcessEvent(e);
+
+ gnome_interaction_key_return(key, e.GetVeto());
+}
+
+gboolean save_yourself_cb(GnomeClient *client,
+ gint phase,
+ GnomeSaveStyle style,
+ gboolean shutdown,
+ GnomeInteractStyle interact,
+ gboolean fast,
+ gpointer user_data)
+{
+ if (!shutdown || interact != GNOME_INTERACT_ANY) {
+ return TRUE;
+ }
+
+ if (gAudacityProjects.IsEmpty()) {
+ return TRUE;
+ }
+
+ gnome_client_request_interaction(client,
+ GNOME_DIALOG_NORMAL,
+ interact_cb,
+ NULL);
+
+ return TRUE;
+}
+
+class GnomeShutdown
+{
+ public:
+ GnomeShutdown()
+ {
+ mArgv[0] = strdup("Audacity");
+
+ mGnomeui = dlopen("libgnomeui-2.so.0", RTLD_NOW);
+ if (!mGnomeui) {
+ return;
+ }
+
+ mGnome = dlopen("libgnome-2.so.0", RTLD_NOW);
+ if (!mGnome) {
+ return;
+ }
+
+ _gnome_program_init_fn gnome_program_init = (_gnome_program_init_fn)
+ dlsym(mGnome, "gnome_program_init");
+ _libgnomeui_module_info_get_fn libgnomeui_module_info_get = (_libgnomeui_module_info_get_fn)
+ dlsym(mGnomeui, "libgnomeui_module_info_get");
+ _gnome_master_client_fn gnome_master_client = (_gnome_master_client_fn)
+ dlsym(mGnomeui, "gnome_master_client");
+
+ gnome_client_request_interaction = (_gnome_client_request_interaction_fn)
+ dlsym(mGnomeui, "gnome_client_request_interaction");
+ gnome_interaction_key_return = (_gnome_interaction_key_return_fn)
+ dlsym(mGnomeui, "gnome_interaction_key_return");
+
+
+ if (!gnome_program_init || !libgnomeui_module_info_get) {
+ return;
+ }
+
+ gnome_program_init(mArgv[0],
+ "1.0",
+ libgnomeui_module_info_get(),
+ 1,
+ mArgv,
+ NULL);
+
+ mClient = gnome_master_client();
+ if (mClient == NULL) {
+ return;
+ }
+
+ g_signal_connect(mClient, "save-yourself", G_CALLBACK(save_yourself_cb), NULL);
+ }
+
+ virtual ~GnomeShutdown()
+ {
+ // Do not dlclose() the libraries here lest you want segfaults...
+
+ free(mArgv[0]);
+ }
+
+ private:
+
+ char *mArgv[1];
+ void *mGnomeui;
+ void *mGnome;
+ GnomeClient *mClient;
+};
+
+GnomeShutdown GnomeShutdownInstance;
+
+#endif
+
#if defined(__WXMSW__)
//
@@ -456,6 +635,8 @@ void AudacityApp::OnMacOpenFile(wxCommandEvent & event)
typedef int (AudacityApp::*SPECIALKEYEVENT)(wxKeyEvent&);
BEGIN_EVENT_TABLE(AudacityApp, wxApp)
+ EVT_QUERY_END_SESSION(AudacityApp::OnEndSession)
+
EVT_KEY_DOWN(AudacityApp::OnKeyDown)
EVT_CHAR(AudacityApp::OnChar)
EVT_KEY_UP(AudacityApp::OnKeyUp)
@@ -469,8 +650,12 @@ BEGIN_EVENT_TABLE(AudacityApp, wxApp)
EVT_COMMAND(wxID_ANY, EVT_OPEN_AUDIO_FILE, AudacityApp::OnMacOpenFile)
#endif
// Recent file event handlers.
+ EVT_MENU(wxID_FILE, AudacityApp::OnMRUClear)
EVT_MENU_RANGE(wxID_FILE1, wxID_FILE9, AudacityApp::OnMRUFile)
// EVT_MENU_RANGE(6050, 6060, AudacityApp::OnMRUProject)
+
+ // Handle AppCommandEvents (usually from a script)
+ EVT_APP_COMMAND(wxID_ANY, AudacityApp::OnReceiveCommand)
END_EVENT_TABLE()
// Backend for OnMRUFile and OnMRUProject
@@ -496,7 +681,7 @@ bool AudacityApp::MRUOpen(wxString fileName) {
newFileName.GetName().c_str()),
_("Error opening project"),
wxOK | wxCENTRE);
- continue;
+ return(true);
}
}
@@ -517,12 +702,6 @@ bool AudacityApp::MRUOpen(wxString fileName) {
// all relevant member variables are in their initial state,
// and it's okay to open a new project inside this window.
proj->OpenFile(fileName);
-
- // Add file to "recent files" list.
- proj->GetRecentFiles()->AddFileToHistory(fileName);
- gPrefs->SetPath(wxT("/RecentFiles"));
- proj->GetRecentFiles()->Save(*gPrefs);
- gPrefs->SetPath(wxT(".."));
}
else {
// File doesn't exist - remove file from history
@@ -534,18 +713,18 @@ bool AudacityApp::MRUOpen(wxString fileName) {
return(true);
}
-void AudacityApp::OnMRUFile(wxCommandEvent& event) {
- AudacityProject *proj = GetActiveProject();
+void AudacityApp::OnMRUClear(wxCommandEvent& event)
+{
+ mRecentFiles->Clear();
+}
+void AudacityApp::OnMRUFile(wxCommandEvent& event) {
int n = event.GetId() - wxID_FILE1;
- wxString fileName = proj->GetRecentFiles()->GetHistoryFile(n);
+ wxString fileName = mRecentFiles->GetHistoryFile(n);
bool opened = MRUOpen(fileName);
if(!opened) {
- proj->GetRecentFiles()->RemoveFileFromHistory(n);
- gPrefs->SetPath(wxT("/RecentFiles"));
- proj->GetRecentFiles()->Save(*gPrefs);
- gPrefs->SetPath(wxT(".."));
+ mRecentFiles->RemoveFileFromHistory(n);
}
}
@@ -620,6 +799,11 @@ void AudacityApp::InitLang( const wxString & lang )
// main frame
bool AudacityApp::OnInit()
{
+#if defined(__WXMAC__)
+ // Disable window animation
+ wxSystemOptions::SetOption( wxMAC_WINDOW_PLAIN_TRANSITION, 1 );
+#endif
+
mLogger = NULL;
#if USE_QUICKTIME
@@ -642,6 +826,10 @@ bool AudacityApp::OnInit()
this->AssociateFileTypes();
#endif
+ // TODO - read the number of files to store in history from preferences
+ mRecentFiles = new FileHistory(/* number of files */);
+ mRecentFiles->Load(*gPrefs, wxT("RecentFiles"));
+
//
// Paths: set search path and temp dir path
//
@@ -730,8 +918,11 @@ bool AudacityApp::OnInit()
// Initialize the ModuleManager
ModuleManager::Initialize();
+ // Initialize the CommandHandler
+ InitCommandHandler();
+
// load audacity plug-in modules
- LoadModules();
+ LoadModules(*mCmdHandler);
// Locale
// wxWindows 2.3 has a much nicer wxLocale API. We can make this code much
@@ -774,10 +965,6 @@ bool AudacityApp::OnInit()
LoadEffects();
-#ifdef EXPERIMENTAL_ONDEMAND
- //The On-Demand managerr initializes the first time its singleton is accessed
-// ODManager::Instance();
-#endif
#ifdef __WXMAC__
@@ -785,17 +972,21 @@ bool AudacityApp::OnInit()
// Create a menubar that will show when all project windows are closed.
wxMenu *fileMenu = new wxMenu();
- fileMenu->Append(wxID_NEW, wxT("&New\tCtrl+N"));
- fileMenu->Append(wxID_OPEN, wxT("&Open...\tCtrl+O"));
+ wxMenu *recentMenu = new wxMenu();
+ fileMenu->Append(wxID_NEW, wxString(_("&New")) + wxT("\tCtrl+N"));
+ fileMenu->Append(wxID_OPEN, wxString(_("&Open...")) + wxT("\tCtrl+O"));
+ fileMenu->AppendSubMenu(recentMenu, _("Open &Recent..."));
fileMenu->Append(wxID_ABOUT, _("&About Audacity..."));
- /* i18n-hint: Mac OS X shortcut should be Ctrl+, */
- fileMenu->Append(wxID_PREFERENCES, _("&Preferences...\tCtrl+,"));
+ fileMenu->Append(wxID_PREFERENCES, wxString(_("&Preferences...")) + wxT("\tCtrl+,"));
wxMenuBar *menuBar = new wxMenuBar();
menuBar->Append(fileMenu, wxT("&File"));
wxMenuBar::MacSetCommonMenuBar(menuBar);
+ mRecentFiles->UseMenu(recentMenu);
+ mRecentFiles->AddFilesToMenu(recentMenu);
+
// This invisibale frame will be the "root" of all other frames and will
// become the active frame when no projects are open.
gParentFrame = new wxFrame(NULL, -1, wxEmptyString, wxPoint(0, 0), wxSize(0, 0), 0);
@@ -805,6 +996,7 @@ bool AudacityApp::OnInit()
SetExitOnFrameDelete(true);
AudacityProject *project = CreateNewAudacityProject();
+ mCmdHandler->SetProject(project);
wxWindow * pWnd = MakeHijackPanel() ;
if( pWnd )
@@ -817,7 +1009,7 @@ bool AudacityApp::OnInit()
delete temporarywindow;
if( project->mShowSplashScreen )
- project->OnHelpWelcome();//ShowSplashScreen( project );
+ project->OnHelpWelcome();
// JKC 10-Sep-2007: Enable monitoring from the start.
// (recommended by lprod.org).
@@ -826,8 +1018,6 @@ bool AudacityApp::OnInit()
// So we also call StartMonitoring when STOP is called.
project->MayStartMonitoring();
- mImporter = new Importer;
-
mLogger = new wxLogWindow(NULL,wxT("Debug Log"),false,false);
mLogger->SetActiveTarget(mLogger);
mLogger->EnableLogging(true);
@@ -837,6 +1027,12 @@ bool AudacityApp::OnInit()
FFmpegStartup();
#endif
+ #ifdef USE_GSTREAMER
+ GStreamerStartup();
+ #endif
+
+ mImporter = new Importer;
+
//
// Auto-recovery
//
@@ -998,6 +1194,26 @@ bool AudacityApp::OnInit()
return TRUE;
}
+void AudacityApp::InitCommandHandler()
+{
+ mCmdHandler = new CommandHandler(*this);
+ //SetNextHandler(mCmdHandler);
+}
+
+void AudacityApp::DeInitCommandHandler()
+{
+ wxASSERT(NULL != mCmdHandler);
+ delete mCmdHandler;
+ mCmdHandler = NULL;
+}
+
+// AppCommandEvent callback - just pass the event on to the CommandHandler
+void AudacityApp::OnReceiveCommand(AppCommandEvent &event)
+{
+ wxASSERT(NULL != mCmdHandler);
+ mCmdHandler->OnReceiveCommand(event);
+}
+
bool AudacityApp::InitCleanSpeech()
{
wxString userdatadir = FileNames::DataDir();
@@ -1005,7 +1221,7 @@ bool AudacityApp::InitCleanSpeech()
wxString presets = wxT("");
#ifdef __WXGTK__
- if (presetsFromPrefs.GetChar(0) != wxT('/'))
+ if (presetsFromPrefs.Length() > 0 && presetsFromPrefs[0] != wxT('/'))
presetsFromPrefs = wxT("");
#endif //__WXGTK__
@@ -1057,7 +1273,7 @@ bool AudacityApp::InitTempDir()
wxString temp = wxT("");
#ifdef __WXGTK__
- if (tempFromPrefs.GetChar(0) != wxT('/'))
+ if (tempFromPrefs.Length() > 0 && tempFromPrefs[0] != wxT('/'))
tempFromPrefs = wxT("");
#endif
@@ -1252,21 +1468,42 @@ void AudacityApp::AddMultiPathsToPathList(wxString multiPathString,
}
// static
-void AudacityApp::FindFilesInPathList(wxString pattern,
- wxArrayString pathList,
- int flags,
- wxArrayString &results)
+void AudacityApp::FindFilesInPathList(const wxString & pattern,
+ const wxArrayString & pathList,
+ wxArrayString & results,
+ int flags)
{
wxLogNull nolog;
- if (pattern == wxT(""))
+ if (pattern == wxT("")) {
return;
+ }
wxFileName f;
- for(unsigned i=0; i<pathList.GetCount(); i++) {
+ for(size_t i = 0; i < pathList.GetCount(); i++) {
f = pathList[i] + wxFILE_SEP_PATH + pattern;
- wxDir::GetAllFiles(f.GetPath(), &results, f.GetFullName(), wxDIR_FILES);
+ wxDir::GetAllFiles(f.GetPath(), &results, f.GetFullName(), flags);
+ }
+}
+
+void AudacityApp::OnEndSession(wxCloseEvent & event)
+{
+ bool force = !event.CanVeto();
+
+ // Try to close each open window. If the user hits Cancel
+ // in a Save Changes dialog, don't continue.
+ if (!gAudacityProjects.IsEmpty()) {
+ while (gAudacityProjects.Count()) {
+ if (force) {
+ gAudacityProjects[0]->Close(true);
+ }
+ else if (!gAudacityProjects[0]->Close()) {
+ gIsQuitting = false;
+ event.Veto();
+ break;
+ }
+ }
}
}
@@ -1333,6 +1570,11 @@ void AudacityApp::OnKeyUp(wxKeyEvent & event)
event.Skip(false);
}
+void AudacityApp::AddFileToHistory(const wxString & name)
+{
+ mRecentFiles->AddFileToHistory(name);
+}
+
int AudacityApp::OnExit()
{
gIsQuitting = true;
@@ -1359,15 +1601,23 @@ int AudacityApp::OnExit()
}
}
+ DeInitCommandHandler();
+
+ mRecentFiles->Save(*gPrefs, wxT("RecentFiles"));
+ delete mRecentFiles;
+
FinishPreferences();
+ #ifdef USE_FFMPEG
+ DropFFmpegLibs();
+ #endif
+
UnloadEffects();
DeinitFFT();
BlockFile::Deinit();
DeinitAudioIO();
- Internat::CleanUp();// JKC
if (mLocale)
delete mLocale;
diff --git a/src/AudacityApp.h b/src/AudacityApp.h
index 0b9f86c..643e25a 100644
--- a/src/AudacityApp.h
+++ b/src/AudacityApp.h
@@ -17,13 +17,19 @@
#include "Audacity.h"
#include <wx/app.h>
+#include <wx/dir.h>
#include <wx/event.h>
+#include <wx/docview.h>
#include <wx/intl.h>
#include <wx/snglinst.h>
#include <wx/log.h>
+#include "widgets/FileHistory.h"
+
class IPCServ;
class Importer;
+class CommandHandler;
+class AppCommandEvent;
void SaveWindowSize();
@@ -44,7 +50,10 @@ DECLARE_EXPORTED_EVENT_TYPE(AUDACITY_DLL_API, EVT_CAPTURE_KEY, -1);
// These flags represent the majority of the states that affect
// whether or not items in menus are enabled or disabled.
-enum {
+enum
+{
+ AlwaysEnabledFlag = 0x00000000,
+
AudioIONotBusyFlag = 0x00000001,
TimeSelectedFlag = 0x00000002,
TracksSelectedFlag = 0x00000004,
@@ -70,7 +79,10 @@ enum {
CutCopyAvailableFlag = 0x00200000,
WaveTracksExistFlag = 0x00400000,
NoteTracksExistFlag = 0x00800000, //gsw
- NoteTracksSelectedFlag = 0x01000000 //gsw
+ NoteTracksSelectedFlag = 0x01000000, //gsw
+ HaveRecentFiles = 0x02000000,
+
+ NoFlagsSpecifed = 0xffffffff
};
class AudacityApp:public wxApp {
@@ -95,6 +107,8 @@ class AudacityApp:public wxApp {
void OnMenuPreferences(wxCommandEvent & event);
void OnMenuExit(wxCommandEvent & event);
+ void OnEndSession(wxCloseEvent & event);
+
void OnKeyDown(wxKeyEvent & event);
void OnChar(wxKeyEvent & event);
void OnKeyUp(wxKeyEvent & event);
@@ -103,11 +117,14 @@ class AudacityApp:public wxApp {
void OnReleaseKeyboard(wxCommandEvent & event);
// Most Recently Used File support (for all platforms).
+ void OnMRUClear(wxCommandEvent &event);
void OnMRUFile(wxCommandEvent &event);
// void OnMRUProject(wxCommandEvent &event);
// Backend for above - returns true for success, false for failure
bool MRUOpen(wxString fileName);
+ void OnReceiveCommand(AppCommandEvent &event);
+
#ifdef __WXMAC__
// In response to Apple Events
virtual void MacOpenFile(const wxString &fileName) ;
@@ -139,20 +156,28 @@ class AudacityApp:public wxApp {
wxArrayString &pathList);
static void AddMultiPathsToPathList(wxString multiPathString,
wxArrayString &pathList);
- static void FindFilesInPathList(wxString pattern,
- wxArrayString pathList,
- int flags, // wxFILE, wxDIR, or 0
- wxArrayString &results);
+ static void FindFilesInPathList(const wxString & pattern,
+ const wxArrayString & pathList,
+ wxArrayString &results,
+ int flags = wxDIR_FILES);
+
+ FileHistory *GetRecentFiles() {return mRecentFiles;}
+ void AddFileToHistory(const wxString & name);
Importer *mImporter;
wxLogWindow *mLogger;
private:
+ CommandHandler *mCmdHandler;
+ FileHistory *mRecentFiles;
wxLocale *mLocale;
wxSingleInstanceChecker *mChecker;
+ void InitCommandHandler();
+ void DeInitCommandHandler();
+
bool InitTempDir();
bool CreateSingleInstanceChecker(wxString dir);
diff --git a/src/AudioIO.cpp b/src/AudioIO.cpp
index 39e147e..3cfd12d 100644
--- a/src/AudioIO.cpp
+++ b/src/AudioIO.cpp
@@ -45,8 +45,6 @@ writing audio.
#include <math.h>
#include <stdlib.h>
-// MIDI_PLAYBACK:
-//#include <string.h>
#ifdef __WXMSW__
#include <malloc.h>
@@ -68,8 +66,15 @@ writing audio.
#include "AudacityApp.h"
#include "AudioIO.h"
#include "WaveTrack.h"
-// MIDI_PLAYBACK:
-//#include "NoteTrack.h"
+
+#ifdef EXPERIMENTAL_MIDI_OUT
+#define MIDI_BUFFER_AHEAD 1.0 /* secondds */
+#define ROUND(x) (int) ((x)+0.5)
+//#include <string.h>
+#include "portmidi.h"
+#include "NoteTrack.h"
+#endif
+
#include "Mix.h"
#include "Resample.h"
#include "RingBuffer.h"
@@ -89,8 +94,10 @@ int AudioIO::mNextStreamToken = 0;
const int AudioIO::StandardRates[] = {
8000,
+ 11025,
16000,
22050,
+ 32000,
44100,
48000,
96000
@@ -116,19 +123,14 @@ const int AudioIO::RatesToTry[] = {
const int AudioIO::NumRatesToTry = sizeof(AudioIO::RatesToTry) /
sizeof(AudioIO::RatesToTry[0]);
-#if USE_PORTAUDIO_V19
int audacityAudioCallback(const void *inputBuffer, void *outputBuffer,
unsigned long framesPerBuffer,
const PaStreamCallbackTimeInfo *timeInfo,
PaStreamCallbackFlags statusFlags, void *userData );
-#else
-int audacityAudioCallback(void *inputBuffer, void *outputBuffer,
- unsigned long framesPerBuffer,
- PaTimestamp outTime, void *userData );
-#endif
-// MIDI_PLAYBACK:
-//int compareTime( const void* a, const void* b );
+#ifdef EXPERIMENTAL_MIDI_OUT
+int compareTime( const void* a, const void* b );
+#endif
//////////////////////////////////////////////////////////////////////
//
@@ -205,28 +207,22 @@ void DeinitAudioIO()
wxString DeviceName(const PaDeviceInfo* info)
{
-#if USE_PORTAUDIO_V19
wxString hostapiName(Pa_GetHostApiInfo(info->hostApi)->name, wxConvLocal);
wxString infoName(info->name, wxConvLocal);
return wxString::Format(wxT("%s: %s"),
hostapiName.c_str(),
infoName.c_str());
-#else
- return wxString(info->name, wxConvLocal);
-#endif
}
bool AudioIO::ValidateDeviceNames(wxString play, wxString rec)
{
-#if USE_PORTAUDIO_V19
const PaDeviceInfo *pInfo = Pa_GetDeviceInfo(AudioIO::getPlayDevIndex(play));
const PaDeviceInfo *rInfo = Pa_GetDeviceInfo(AudioIO::getRecordDevIndex(rec));
if (!pInfo || !rInfo || pInfo->hostApi != rInfo->hostApi) {
return false;
}
-#endif
return true;
}
@@ -236,17 +232,14 @@ AudioIO::AudioIO()
mAudioThreadShouldCallFillBuffersOnce = false;
mAudioThreadFillBuffersLoopRunning = false;
mAudioThreadFillBuffersLoopActive = false;
-#if USE_PORTAUDIO_V19
mPortStreamV19 = NULL;
-#else
- mPortStreamV18 = NULL;
- mInCallbackFinishedState = false;
+
+#ifdef EXPERIMENTAL_MIDI_OUT
+ mMidiStream = NULL;
+ mMidiStreamActive = false;
+ mSendMidiState = false;
#endif
-// MIDI_PLAYBACK:
-// mMidiStream = NULL;
-// mMidiStreamActive = false;
-// mUpdateMidiTracks = false;
mStreamToken = 0;
mStopStreamCount = 0;
mTempFloats = new float[65536]; // TODO: out channels * PortAudio buffer size
@@ -280,21 +273,23 @@ AudioIO::AudioIO()
// but any attempt to play or record will simply fail.
}
-/* REQUIRES PORTMIDI */
-// PmError pmErr = Pm_Initialize();
-
-// if (pmErr != pmNoError) {
-// wxString errStr = _("There was an error initializing the midi i/o layer.\n");
-// errStr += _("You will not be able to play midi.\n\n");
-// wxString pmErrStr = LAT1CTOWX(Pm_GetErrorText(pmErr));
-// if (pmErrStr)
-// errStr += _("Error: ")+pmErrStr;
+#ifdef EXPERIMENTAL_MIDI_OUT
+ PmError pmErr = Pm_Initialize();
+
+ if (pmErr != pmNoError) {
+ wxString errStr =
+ _("There was an error initializing the midi i/o layer.\n");
+ errStr += _("You will not be able to play midi.\n\n");
+ wxString pmErrStr = LAT1CTOWX(Pm_GetErrorText(pmErr));
+ if (pmErrStr)
+ errStr += _("Error: ") + pmErrStr;
// XXX: we are in libaudacity, popping up dialogs not allowed! A
// long-term solution will probably involve exceptions
-// wxMessageBox(errStr, _("Error Initializing Midi"), wxICON_ERROR|wxOK);
+ wxMessageBox(errStr, _("Error Initializing Midi"), wxICON_ERROR|wxOK);
// Same logic for PortMidi as described above for PortAudio
-// }
+ }
+#endif
// Start thread
mThread = new AudioThread();
@@ -327,8 +322,9 @@ AudioIO::~AudioIO()
#endif
Pa_Terminate();
-/* REQUIRES PORTMIDI */
-// Pm_Terminate();
+#ifdef EXPERIMENTAL_MIDI_OUT
+ Pm_Terminate();
+#endif
/* Delete is a "graceful" way to stop the thread.
(Kill is the not-graceful way.) */
@@ -407,7 +403,11 @@ wxArrayString AudioIO::GetInputSourceNames()
{
int numSources = Px_GetNumInputSources(mPortMixer);
for( int source = 0; source < numSources; source++ )
- deviceNames.Add(LAT1CTOWX(Px_GetInputSourceName(mPortMixer, source)));
+ deviceNames.Add(wxString(Px_GetInputSourceName(mPortMixer, source), wxConvLocal));
+ }
+ else
+ {
+ wxLogDebug(wxT("AudioIO::GetInputSourceNames(): PortMixer not initialised!"));
}
return deviceNames;
@@ -473,8 +473,6 @@ void AudioIO::HandleDeviceChange()
// will be the highest available for play and record on the device, or
// 44.1kHz if the info cannot be fetched.
-#if USE_PORTAUDIO_V19
-
PaStream *stream;
PaStreamParameters playbackParameters;
@@ -515,24 +513,7 @@ void AudioIO::HandleDeviceChange()
paClipOff | paDitherOff,
audacityAudioCallback, NULL);
}
-
-#else
-
- PortAudioStream *stream;
-
- error = Pa_OpenStream(&stream, recDeviceNum, 2, paFloat32, NULL,
- playDeviceNum, 2, paFloat32, NULL,
- highestSampleRate, 512, 1, paClipOff | paDitherOff,
- audacityAudioCallback, NULL);
-
- if( error ) {
- error = Pa_OpenStream(&stream, recDeviceNum, 2, paFloat32, NULL,
- paNoDevice, 0, paFloat32, NULL,
- highestSampleRate, 512, 1, paClipOff | paDitherOff,
- audacityAudioCallback, NULL);
- }
-#endif
// if it's still not working, give up
if( error )
return;
@@ -620,7 +601,6 @@ bool AudioIO::StartPortAudioStream(double sampleRate,
mNumPlaybackChannels = numPlaybackChannels;
mNumCaptureChannels = numCaptureChannels;
-#if USE_PORTAUDIO_V19
PaStreamParameters *playbackParameters = NULL;
PaStreamParameters *captureParameters = NULL;
@@ -710,112 +690,13 @@ bool AudioIO::StartPortAudioStream(double sampleRate,
delete captureParameters;
delete playbackParameters;
-#else
-
- PaDeviceID captureDevice = paNoDevice,
- playbackDevice = paNoDevice;
- PaSampleFormat paCaptureFormat = paFloat32;
-
- if( numPlaybackChannels > 0 )
- {
- playbackDevice = Pa_GetDefaultOutputDeviceID();
- wxString playbackDeviceName = gPrefs->Read(wxT("/AudioIO/PlaybackDevice"), wxT(""));
-
- if( playbackDeviceName != wxT("") )
- {
- for( int i = 0; i < Pa_CountDevices(); i++)
- {
- const PaDeviceInfo* info = Pa_GetDeviceInfo(i);
-
- if(!info)
- continue;
-
- if (DeviceName(info) == playbackDeviceName && info->maxOutputChannels > 0)
- playbackDevice = i;
- }
- }
- }
-
- if( numCaptureChannels > 0 )
- {
- // For capture, every input channel gets its own track
- mCaptureFormat = captureFormat;
- captureDevice = Pa_GetDefaultInputDeviceID();
- wxString captureDeviceName = gPrefs->Read(wxT("/AudioIO/RecordingDevice"), wxT(""));
-
- if( captureDeviceName != wxT("") )
- {
- for( int i = 0; i < Pa_CountDevices(); i++)
- {
- const PaDeviceInfo* info = Pa_GetDeviceInfo(i);
-
- if(!info)
- continue;
-
- if (DeviceName(info) == captureDeviceName && info->maxInputChannels > 0)
- captureDevice = i;
- }
- }
-
- paCaptureFormat =
- AudacityToPortAudioSampleFormat(mCaptureFormat);
- }
-
- mPortStreamV18 = NULL;
-
- mLastPaError = Pa_OpenStream( &mPortStreamV18,
- /* capture parameters */
- captureDevice,
- mNumCaptureChannels,
- paCaptureFormat,
- NULL,
- /* playback parameters */
- playbackDevice,
- mNumPlaybackChannels,
- paFloat32,
- NULL,
- /* general parameters */
- mRate, 256, 0,
- paClipOff | paDitherOff,
- audacityAudioCallback, NULL );
-
-#if USE_PORTMIXER
- if (mPortStreamV18 != NULL && mLastPaError == paNoError) {
- #ifdef __WXMAC__
- if (mPortMixer) {
- if (Px_SupportsPlaythrough(mPortMixer)) {
- bool playthrough;
-
- mPreviousHWPlaythrough = Px_GetPlaythrough(mPortMixer);
-
- gPrefs->Read(wxT("/AudioIO/Playthrough"), &playthrough, false);
- if (playthrough)
- Px_SetPlaythrough(mPortMixer, 1.0);
- else
- Px_SetPlaythrough(mPortMixer, 0.0);
- }
- }
- #endif
- }
-
-#endif
-
- mInCallbackFinishedState = false; // v18 only
-
-#endif
-
return (mLastPaError == paNoError);
}
void AudioIO::StartMonitoring(double sampleRate)
{
-#if USE_PORTAUDIO_V19
if ( mPortStreamV19 || mStreamToken )
return;
-#else /* USE_PORTAUDIO_V19 */
- if ( mPortStreamV18 || mStreamToken )
- return;
-#endif /* USE_PORTAUDIO_V19 */
bool success;
long captureChannels;
@@ -833,17 +714,14 @@ void AudioIO::StartMonitoring(double sampleRate)
captureFormat);
// Now start the PortAudio stream!
-#if USE_PORTAUDIO_V19
mLastPaError = Pa_StartStream( mPortStreamV19 );
-#else /* USE_PORTAUDIO_V19 */
- mLastPaError = Pa_StartStream( mPortStreamV18 );
-#endif /* USE_PORTAUDIO_V19 */
}
int AudioIO::StartStream(WaveTrackArray playbackTracks,
WaveTrackArray captureTracks,
-/* REQUIRES PORTMIDI */
- //NoteTrackArray midiPlaybackTracks,
+#ifdef EXPERIMENTAL_MIDI_OUT
+ NoteTrackArray *midiPlaybackTracks,
+#endif
TimeTrack *timeTrack, double sampleRate,
double t0, double t1,
AudioIOListener* listener,
@@ -869,19 +747,11 @@ int AudioIO::StartStream(WaveTrackArray playbackTracks,
// captureChannels == mNumCaptureChannels &&
// captureFormat == mCaptureFormat) {
- #if USE_PORTAUDIO_V19
if (mPortStreamV19) {
StopStream();
while(mPortStreamV19)
wxMilliSleep( 50 );
}
- #else /* USE_PORTAUDIO_V19 */
- if (mPortStreamV18) {
- StopStream();
- while(mPortStreamV18)
- wxMilliSleep( 50 );
- }
- #endif /* USE_PORTAUDIO_V19 */
gPrefs->Read(wxT("/AudioIO/SWPlaythrough"), &mSoftwarePlaythrough, false);
gPrefs->Read(wxT("/AudioIO/SoundActivatedRecord"), &mPauseRec, false);
@@ -909,8 +779,9 @@ int AudioIO::StartStream(WaveTrackArray playbackTracks,
mLastRecordingOffset = 0;
mPlaybackTracks = playbackTracks;
mCaptureTracks = captureTracks;
-/* REQUIRES PORTMIDI */
-// mMidiPlaybackTracks = midiPlaybackTracks;
+#ifdef EXPERIMENTAL_MIDI_OUT
+ mMidiPlaybackTracks = midiPlaybackTracks;
+#endif
mPlayLooped = playLooped;
mCutPreviewGapStart = cutPreviewGapStart;
mCutPreviewGapLen = cutPreviewGapLen;
@@ -967,21 +838,31 @@ int AudioIO::StartStream(WaveTrackArray playbackTracks,
if (mListener)
mListener->OnAudioIOStartRecording();
}
-
+
bool successAudio;
-/* REQUIRES PORTMIDI */
-// bool successMidi;
+ successAudio = StartPortAudioStream(sampleRate, playbackChannels,
+ captureChannels, captureFormat);
-// if( !mMidiPlaybackTracks.IsEmpty() ){
-// successMidi = StartPortMidiStream();
-// }
+#ifdef EXPERIMENTAL_MIDI_OUT
+ // TODO: it may be that midi out will not work unless audio in or out is
+ // active -- this would be a bug and may require a change in the
+ // logic here.
-// if( !mPlaybackTracks.IsEmpty() ){
- successAudio = StartPortAudioStream(sampleRate, playbackChannels,
- captureChannels, captureFormat);
+ bool successMidi;
+
+ if(mMidiPlaybackTracks && !mMidiPlaybackTracks->IsEmpty()){
+ successMidi = StartPortMidiStream();
+ }
+
+ // On the other hand, if MIDI cannot be opened, we will not complain
+#endif
- if (!successAudio) {
+ if (!successAudio
+#ifdef EXPERIMENTAL_MIDI_OUT
+ && !successMidi
+#endif
+ ) {
if (mListener && captureChannels > 0)
mListener->OnAudioIOStopRecording();
mStreamToken = 0;
@@ -989,12 +870,11 @@ int AudioIO::StartStream(WaveTrackArray playbackTracks,
}
//
- // The stream has successfully been opened. We now proceed in allocating
- // the memory structures the stream will need.
+ // The (audio) stream has been opened successfully. We now proceed to
+ // allocate the memory structures the stream will need.
//
- if( mNumPlaybackChannels > 0 )
- {
+ if( mNumPlaybackChannels > 0 ) {
// Allocate output buffers. For every output track we allocate
// a ring buffer of five seconds
sampleCount playbackBufferSize =
@@ -1043,24 +923,33 @@ int AudioIO::StartStream(WaveTrackArray playbackTracks,
while( mAudioThreadShouldCallFillBuffersOnce == true )
wxMilliSleep( 50 );
- // Now start the PortAudio stream!
- PaError err;
-#if USE_PORTAUDIO_V19
- err = Pa_StartStream( mPortStreamV19 );
-#else
- err = Pa_StartStream( mPortStreamV18 );
+#ifdef EXPERIMENTAL_MIDI_OUT
+ // output MIDI control information up to the current cursor location
+ // MOTODO: output midi control changes and program changes up to cursor
+ // QUESTION: can we do that from this thread?
#endif
- if( err != paNoError )
- {
- // TODO
- // we'll need a more complete way to indicate error.
- // AND we need to delete the ring buffers and mixers, etc.
- if (mListener && mNumCaptureChannels > 0)
- mListener->OnAudioIOStopRecording();
- wxPrintf(wxT("%hs\n"), Pa_GetErrorText(err));
- mStreamToken = 0;
- return 0;
+ if(mNumPlaybackChannels > 0 || mNumCaptureChannels > 0
+#ifdef EXPERIMENTAL_MIDI_OUT
+ || !mMidiPlaybackTracks->IsEmpty()
+#endif
+ ) {
+
+ // Now start the PortAudio stream!
+ PaError err;
+ err = Pa_StartStream( mPortStreamV19 );
+
+ if( err != paNoError )
+ {
+ // TODO
+ // we'll need a more complete way to indicate error.
+ // AND we need to delete the ring buffers and mixers, etc.
+ if (mListener && mNumCaptureChannels > 0)
+ mListener->OnAudioIOStopRecording();
+ wxPrintf(wxT("%hs\n"), Pa_GetErrorText(err));
+ mStreamToken = 0;
+ return 0;
+ }
}
mAudioThreadFillBuffersLoopRunning = true;
@@ -1070,27 +959,33 @@ int AudioIO::StartStream(WaveTrackArray playbackTracks,
// clients accessing the AudioIO API, so they can query if
// are the ones who have reserved AudioIO or not.
//
-// MIDI_PLAYBACK:
-// }
-
mStreamToken = (++mNextStreamToken);
return mStreamToken;
}
-/* HCK MIDI PATCH START */
-/* REQUIRES PORTMIDI */
-//bool AudioIO::StartPortMidiStream()
-//{
-// #define TIME_PROC ((long (*)(void *)) Pt_Time)
-// int i, latency;
+#ifdef EXPERIMENTAL_MIDI_OUT
+
+#define TIME_PROC ((long (*)(void *)) Pt_Time)
+
+bool AudioIO::IsMidiActive()
+{
+ if (!mMidiStream) return false;
+ // find out if we have passed the last midi event
+ return mLastMidiTime + mMidiLatency <= TIME_PROC(NULL);
+}
+
+
+bool AudioIO::StartPortMidiStream()
+{
+ int i, latency;
// Only start MIDI stream if there is an open track
-// if (mMidiPlaybackTracks.GetCount() == 0)
-// return false;
+ if (mMidiPlaybackTracks->GetCount() == 0)
+ return false;
/* get latency from PortAudio */
-// int framesPerBuffer = 1102; // constant passed to Pa_OpenStream call
+ int framesPerBuffer = 1102; // constant passed to Pa_OpenStream call
// but not defined beforehand
/* HCK MIDI FIX ORG
int numBuffers = Pa_GetMinNumBuffers( framesPerBuffer, mRate );
@@ -1101,67 +996,78 @@ int AudioIO::StartStream(WaveTrackArray playbackTracks,
latency = 500;
HCK MIDI PATCH ORG */
-// latency = 500;
-
-// Pt_Start(1, 0, 0); /* timer started w/millisecond accuracy */
+ mMidiLatency = 100;
+ printf("StartPortMidiStream: mT0 %g mTime %g\n",
+ gAudioIO->mT0, gAudioIO->mTime);
+ if (Pt_Started()) Pt_Stop(); // start from zero
+ Pt_Start(1, 0, 0); /* timer started w/millisecond accuracy */
/* get midi playback device */
-// PmDeviceID playbackDevice = pmNoDevice;
-
-// playbackDevice = Pm_GetDefaultOutputDeviceID();
-// gPrefs->Write(wxT("/MidiIO/PlaybackDevice"), "ALSA, Midi Through Port-0" );
-// wxString playbackDeviceName = gPrefs->Read(wxT("/MidiIO/PlaybackDevice"), wxT(""));
-
-// if( playbackDeviceName != wxT("") )
-// {
-// for (i = 0; i < Pm_CountDevices(); i++) {
-// const PmDeviceInfo *info = Pm_GetDeviceInfo(i);
-
-// if (!info)
-// continue;
-
-// if (LAT1CTOWX(info->name) == playbackDeviceName)
-// playbackDevice = i;
-// }
-// }
-// else
-// {
-// playbackDevice = 0;
-// }
+ PmDeviceID playbackDevice = Pm_GetDefaultOutputDeviceID();
+ wxString playbackDeviceName = gPrefs->Read(wxT("/MidiIO/PlaybackDevice"),
+ wxT(""));
+
+ if (wxStrcmp(playbackDeviceName, wxT("")) != 0) {
+ for (i = 0; i < Pm_CountDevices(); i++) {
+ const PmDeviceInfo *info = Pm_GetDeviceInfo(i);
+ if (!info) continue;
+ wxString interf(info->interf, wxConvLocal);
+ wxString name(info->name, wxConvLocal);
+ wxString device = wxString::Format(wxT("%s: %s"),
+ interf.c_str(),
+ name.c_str());
+ if (wxStrcmp(device, playbackDeviceName) == 0) {
+ playbackDevice = i;
+ }
+ }
+ } // (else playback device has Pm_GetDefaultOuputDeviceID())
- // JUST FOR TEST : SET DEFAULT DEVICE
-// playbackDevice = 2;
/* open output device */
-// mLastPmError = Pm_OpenOutput(&mMidiStream,
-// playbackDevice,
-// NULL,
-// 0,
-// TIME_PROC,
-// NULL,
-// latency);
-
-// mCurrentMidiTime = TIME_PROC(NULL);
- //mLastMidiTime = mCurrentMidiTime;
-// mMidiWait = 0;
-
-// fprintf(stderr, "mT0: %f\n", mT0);
-// fprintf(stderr, "%li %li : STARTING\n", mCurrentMidiTime, mLastMidiTime );
+ mLastPmError = Pm_OpenOutput(&mMidiStream,
+ playbackDevice,
+ NULL,
+ 0,
+ TIME_PROC,
+ NULL,
+ mMidiLatency);
+ // DEBUGGING
+ const PmDeviceInfo *info = Pm_GetDeviceInfo(playbackDevice);
+ printf("Pm_OpenOutput on %s, return code %d\n",
+ info->name, mLastPmError);
+
+ mCurrentMidiTime = TIME_PROC(NULL);
+ mLastMidiTime = 0x7FFF0000; // a big number, adjusted when we play last
+ // midi event
+ mMidiWait = 0;
+
+ fprintf(stderr, "mT0: %f\n", mT0);
+ fprintf(stderr, "%li %li : STARTING\n", mCurrentMidiTime, mLastMidiTime );
+
+ mMidiStreamActive = true;
+ // mCnt = 0;
+
+ // for now, play only one track
+ mSeq = (*mMidiPlaybackTracks)[0]->GetSequence();
+ mVC = (*mMidiPlaybackTracks)[0]->GetVisibleChannels();
+
+ mIterator = new Alg_iterator(mSeq, true);
+ mIterator->begin();
+ GetNextEvent(); // prime the pump for FillMidiBuffers
-// mMidiStreamActive = true;
// Start MIDI from current cursor position
-// mUpdateMidiTracks = true;
-// memset( mMidiQueue, 0x00, sizeof( mMidiQueue ) );
-// mCnt = 0;
-
-// mSeq = mMidiPlaybackTracks[0]->GetSequence();
-// mVC = mMidiPlaybackTracks[0]->GetVisibleChannels();
-// mSeq->iteration_begin();
+ mSendMidiState = true;
+ while (mNextEvent &&
+ mNextEvent->time < mT0) {
+ OutputEvent();
+ GetNextEvent();
+ }
+ // MOTODO -- fix this to send updates immediately until t0 is reached
+ mSendMidiState = false;
-// return (mLastPmError == pmNoError);
-//}
-/* REQUIRES PORTMIDI END */
-/* HCK MIDI PATCH END */
+ return (mLastPmError == pmNoError);
+}
+#endif
void AudioIO::SetMeters(Meter *inputMeter, Meter *outputMeter)
{
@@ -1178,31 +1084,24 @@ void AudioIO::SetMeters(Meter *inputMeter, Meter *outputMeter)
void AudioIO::StopStream()
{
-// MIDI_PLAYBACK:
-// printf( "HCK StopStream\n" );
- #if USE_PORTAUDIO_V19
if( mPortStreamV19 == NULL
-/* REQUIRES PORTMIDI */
-// && mMidiStream == NULL
- )
+#ifdef EXPERIMENTAL_MIDI_OUT
+ && mMidiStream == NULL
+#endif
+ )
return;
if( Pa_IsStreamStopped( mPortStreamV19 )
-/* REQUIRES PORTMIDI */
-// && !mMidiStreamActive
- )
- return;
- #else
- if( mPortStreamV18 == NULL )
- return;
-
- if( IsStreamActive() == false && mInCallbackFinishedState == false )
+#ifdef EXPERIMENTAL_MIDI_OUT
+ && !mMidiStreamActive
+#endif
+ )
return;
- #endif
// Avoid race condition by making sure this function only
// gets called once at a time
- mStopStreamCount++;
+ mStopStreamCount++; // <- note that this is not atomic, therefore has
+ // a race condition -RBD
if (mStopStreamCount != 1)
return;
@@ -1257,44 +1156,38 @@ void AudioIO::StopStream()
}
#endif
-#if USE_PORTAUDIO_V19
if (mPortStreamV19) {
Pa_AbortStream( mPortStreamV19 );
Pa_CloseStream( mPortStreamV19 );
mPortStreamV19 = NULL;
}
-#else
- if (mPortStreamV18) {
- if (mInCallbackFinishedState)
- Pa_StopStream( mPortStreamV18 );
- else
- Pa_AbortStream( mPortStreamV18 );
- Pa_CloseStream( mPortStreamV18 );
- mPortStreamV18 = NULL;
- mInCallbackFinishedState = false;
- }
-#endif
-/* REQUIRES PORTMIDI */
+
+
+#ifdef EXPERIMENTAL_MIDI_OUT
/* Stop Midi playback */
-// if ( mMidiStream )
-// {
-// mMidiStreamActive = false;
-//
-// if (mInCallbackFinishedState)
-// {
-// Pm_Close(mMidiStream);
-// }
-// else
-// {
-// Pm_Abort(mMidiStream);
-// Pm_Close(mMidiStream);
-// }
+ // problem here -- if explicitly stopped, we'll hang here
+ // while (mLastMidiTime + mMidiLatency + 10 < TIME_PROC(NULL)) {
+ // wxMilliSleep( 50 );
+ // }
+
+ if ( mMidiStream ) {
+ mMidiStreamActive = false;
+ // MOTODO: if output in progress, send all off, etc.
+ for (int i = 0; i < 16; i++) {
+ Pm_WriteShort(mMidiStream, 0, Pm_Message(0xB0 + i, 0x7B, 0));
+ }
+ wxMilliSleep(40); // deliver the all-off messages before closing
+ Pm_Abort(mMidiStream); // MOTODO: only abort if output in progress
+ Pm_Close(mMidiStream);
+ printf("Pm_Close() called\n");
+ mMidiStream = NULL;
// Reset MIDI track positions this way for now
- //mMidiPlaybackTracks[0]->SetLastMidiPosition(0);
-// mLastMidiTime = 0;
-// mSeq->iteration_end();
-// }
+ // mMidiPlaybackTracks[0]->SetLastMidiPosition(0);
+ // mLastMidiTime = 0;
+ mIterator->end();
+ }
+#endif
// If there's no token, we were just monitoring, so we can
// skip this next part...
@@ -1351,6 +1244,7 @@ void AudioIO::StopStream()
for( unsigned int i = 0; i < mCaptureTracks.GetCount(); i++ )
{
delete mCaptureBuffers[i];
+ delete mResample[i];
WaveTrack* track = mCaptureTracks[i];
track->Flush();
@@ -1386,7 +1280,8 @@ void AudioIO::StopStream()
track->SetOffset(track->GetStartTime() + recordingOffset);
if(track->GetEndTime() < 0.)
{
- wxMessageDialog m(NULL, _("Latency Correction setting has caused the recorded audio to be hidden before zero.\nAudacity has brought it back to start at zero.\nYou may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."), _("Latency problem"), wxOK);
+ wxMessageDialog m(NULL, _("Latency Correction setting has caused the recorded audio to be hidden before zero.\nAudacity has brought it back to start at zero.\nYou may have to use the Time Shift Tool (<---> or F5) to drag the track to the right place."),
+ _("Latency problem"), wxOK);
m.ShowModal();
track->SetOffset(0.);
}
@@ -1395,6 +1290,7 @@ void AudioIO::StopStream()
}
delete[] mCaptureBuffers;
+ delete[] mResample;
}
}
@@ -1425,20 +1321,6 @@ bool AudioIO::IsPaused()
bool AudioIO::IsBusy()
{
- // dmazzoni: Old code...now it's safe to call StartStream if
- // PortAudio is open, just not if there's a token active
- #if 0
- if (IsStreamActive())
- return true;
- #if USE_PORTAUDIO_V19
- if (mPortStreamV19)
- return true;
- #else
- if (mPortStreamV18)
- return true;
- #endif
-#endif
-
if (mStreamToken != 0)
return true;
@@ -1448,18 +1330,10 @@ bool AudioIO::IsBusy()
bool AudioIO::IsStreamActive()
{
bool isActive = false;
-#if USE_PORTAUDIO_V19
if( mPortStreamV19 )
isActive = (Pa_IsStreamActive( mPortStreamV19 ) > 0);
else isActive = false;
-#else
- if( mPortStreamV18 &&
- Pa_StreamActive( mPortStreamV18 ) &&
- mInCallbackFinishedState == false )
- isActive = true;
- else
- isActive = false;
-#endif
+
/* REQUIRES PORTMIDI */
// if( mMidiStreamActive )
// isActive = true;
@@ -1481,11 +1355,7 @@ bool AudioIO::IsAudioTokenActive(int token)
bool AudioIO::IsMonitoring()
{
-#if USE_PORTAUDIO_V19
return ( mPortStreamV19 && mStreamToken==0 );
-#else
- return ( mPortStreamV18 && mStreamToken==0 );
-#endif
}
double AudioIO::NormalizeStreamTime(double absoluteTime) const
@@ -1541,15 +1411,15 @@ wxArrayLong AudioIO::GetSupportedPlaybackRates(int devIndex, double rate)
{ // weren't given a device index, get the prefs / default one
devIndex = getPlayDevIndex();
}
-
+ wxLogDebug(wxT("Getting supported playback rates for device %d"), devIndex);
devInfo = Pa_GetDeviceInfo(devIndex);
if (!devInfo)
{
+ wxLogDebug(wxT("GetSupportedPlaybackRates() Could not get device info!"));
return supported;
}
-#if USE_PORTAUDIO_V19
PaStreamParameters pars;
pars.device = devIndex;
@@ -1562,6 +1432,7 @@ wxArrayLong AudioIO::GetSupportedPlaybackRates(int devIndex, double rate)
{
if (Pa_IsFormatSupported(NULL, &pars, RatesToTry[i]) == 0)
{
+ wxLogDebug(wxT("Rate %ld Hz is supported"), RatesToTry[i]);
supported.Add(RatesToTry[i]);
}
}
@@ -1570,38 +1441,10 @@ wxArrayLong AudioIO::GetSupportedPlaybackRates(int devIndex, double rate)
{
if (Pa_IsFormatSupported(NULL, &pars, irate) == 0)
{
+ wxLogDebug(wxT("Suggested rate %ld Hz is supported"), irate);
supported.Add(irate);
}
}
-#else
- if (devInfo->numSampleRates == -1)
- {
- for (i = 0; i < NumRatesToTry; i++)
- {
- if (RatesToTry[i] >= devInfo->sampleRates[0] &&
- RatesToTry[i] <= devInfo->sampleRates[1])
- {
- supported.Add(RatesToTry[i]);
- }
- }
-
- if (irate != 0 && supported.Index(irate) == wxNOT_FOUND)
- {
- if (irate >= devInfo->sampleRates[0] &&
- irate <= devInfo->sampleRates[1])
- {
- supported.Add(irate);
- }
- }
- }
- else
- {
- for (i = 0; i < devInfo->numSampleRates; i++)
- {
- supported.Add((int)devInfo->sampleRates[i]);
- }
- }
-#endif
return supported;
}
@@ -1617,14 +1460,15 @@ wxArrayLong AudioIO::GetSupportedCaptureRates(int devIndex, double rate)
{ // not given a device, look up in prefs / default
devIndex = getRecordDevIndex();
}
+ wxLogDebug(wxT("Getting supported capture rates for device %d"), devIndex);
devInfo = Pa_GetDeviceInfo(devIndex);
if (!devInfo)
{
+ wxLogDebug(wxT("GetSupportedCaptureRates() Could not get device info!"));
return supported;
}
-#if USE_PORTAUDIO_V19
double latencyDuration = DEFAULT_LATENCY_DURATION;
long recordChannels = 1;
gPrefs->Read(wxT("/AudioIO/LatencyDuration"), &latencyDuration);
@@ -1642,6 +1486,7 @@ wxArrayLong AudioIO::GetSupportedCaptureRates(int devIndex, double rate)
{
if (Pa_IsFormatSupported(&pars, NULL, RatesToTry[i]) == 0)
{
+ wxLogDebug(wxT("Rate %ld Hz is supported"), RatesToTry[i]);
supported.Add(RatesToTry[i]);
}
}
@@ -1650,38 +1495,10 @@ wxArrayLong AudioIO::GetSupportedCaptureRates(int devIndex, double rate)
{
if (Pa_IsFormatSupported(&pars, NULL, irate) == 0)
{
+ wxLogDebug(wxT("Suggested rate %ld Hz is supported"), irate);
supported.Add(irate);
}
}
-#else
- if (devInfo->numSampleRates == -1)
- {
- for (i = 0; i < NumRatesToTry; i++)
- {
- if (RatesToTry[i] >= devInfo->sampleRates[0] &&
- RatesToTry[i] <= devInfo->sampleRates[1])
- {
- supported.Add(RatesToTry[i]);
- }
- }
-
- if (irate != 0 && supported.Index(irate) == wxNOT_FOUND)
- {
- if (irate >= devInfo->sampleRates[0] &&
- irate <= devInfo->sampleRates[1])
- {
- supported.Add(irate);
- }
- }
- }
- else
- {
- for (i = 0; i < devInfo->numSampleRates; i++)
- {
- supported.Add((int)devInfo->sampleRates[i]);
- }
- }
-#endif
return supported;
}
@@ -1820,11 +1637,13 @@ AudioThread::ExitCode AudioThread::Entry()
gAudioIO->FillBuffers();
}
-/* REQUIRES PORTMIDI */
-// if( gAudioIO->mMidiStreamActive )
-// {
-// gAudioIO->FillMidiBuffers();
-// }
+#ifdef EXPERIMENTAL_MIDI_OUT
+ if( gAudioIO->mMidiStreamActive &&
+ gAudioIO->mAudioThreadFillBuffersLoopRunning)
+ {
+ gAudioIO->FillMidiBuffers();
+ }
+#endif
Sleep(10);
}
@@ -1871,11 +1690,7 @@ int AudioIO::getRecordDevIndex(wxString devName)
}
int i;
-#if USE_PORTAUDIO_V19
for (i = 0; i < Pa_GetDeviceCount(); i++)
-#else
- for (i = 0; i < Pa_CountDevices(); i++)
-#endif
{
const PaDeviceInfo* info = Pa_GetDeviceInfo(i);
@@ -1889,11 +1704,8 @@ int AudioIO::getRecordDevIndex(wxString devName)
// landing here, we either don't have a value in the preferences, or
// the stored / supplied value doesn't exist on the system. So we need to
// use a default value
-#if USE_PORTAUDIO_V19
int recDeviceNum = Pa_GetDefaultInputDevice();
-#else
- int recDeviceNum = Pa_GetDefaultInputDeviceID();
-#endif
+
// Sometimes PortAudio returns -1 if it cannot find a suitable default
// device, so we just use the first one available
if (recDeviceNum < 0)
@@ -1910,11 +1722,7 @@ int AudioIO::getPlayDevIndex(wxString devName )
}
int i;
-#if USE_PORTAUDIO_V19
for (i = 0; i < Pa_GetDeviceCount(); i++)
-#else
- for (i = 0; i < Pa_CountDevices(); i++)
-#endif
{
const PaDeviceInfo* info = Pa_GetDeviceInfo(i);
@@ -1928,11 +1736,7 @@ int AudioIO::getPlayDevIndex(wxString devName )
// landing here, we either don't have a value in the preferences, or
// the stored / supplied value doesn't exist on the system. So we need to
// use a default value
-#if USE_PORTAUDIO_V19
int DeviceNum = Pa_GetDefaultOutputDevice();
-#else
- int DeviceNum = Pa_GetDefaultOutputDeviceID();
-#endif
// Sometimes PortAudio returns -1 if it cannot find a suitable default
// device, so we just use the first one available
if (DeviceNum < 0)
@@ -1951,19 +1755,12 @@ wxString AudioIO::GetDeviceInfo()
}
-#if USE_PORTAUDIO_V19
int recDeviceNum = Pa_GetDefaultInputDevice();
int playDeviceNum = Pa_GetDefaultOutputDevice();
-#else
- int recDeviceNum = Pa_GetDefaultInputDeviceID();
- int playDeviceNum = Pa_GetDefaultOutputDeviceID();
-#endif
-#if USE_PORTAUDIO_V19
int cnt = Pa_GetDeviceCount();
-#else
- int cnt = Pa_CountDevices();
-#endif
+
+ wxLogDebug(wxT("Portaudio reports %d audio devices"),cnt);
s << wxT("==============================") << e;
s << wxT("Default capture device number: ") << recDeviceNum << e;
@@ -1996,12 +1793,11 @@ wxString AudioIO::GetDeviceInfo()
s << wxT("Device name: ") << name << e;
s << wxT("Input channels: ") << info->maxInputChannels << e;
s << wxT("Output channels: ") << info->maxOutputChannels << e;
-#if USE_PORTAUDIO_V19
s << wxT("Low Input Latency: ") << info->defaultLowInputLatency << e;
s << wxT("Low Output Latency: ") << info->defaultLowOutputLatency << e;
s << wxT("High Input Latency: ") << info->defaultHighInputLatency << e;
s << wxT("High Output Latency: ") << info->defaultHighOutputLatency << e;
-#endif
+
wxArrayLong rates = GetSupportedPlaybackRates(j, 0.0);
s << wxT("Supported Rates:") << e;
@@ -2065,8 +1861,6 @@ wxString AudioIO::GetDeviceInfo()
int error;
-#if USE_PORTAUDIO_V19
-
PaStream *stream;
PaStreamParameters playbackParameters;
@@ -2109,24 +1903,6 @@ wxString AudioIO::GetDeviceInfo()
paClipOff | paDitherOff,
audacityAudioCallback, NULL);
}
-
-#else // PA v18
-
- PortAudioStream *stream;
-
- error = Pa_OpenStream(&stream, recDeviceNum, 2, paFloat32, NULL,
- playDeviceNum, 2, paFloat32, NULL,
- highestSampleRate, 512, 1, paClipOff | paDitherOff,
- audacityAudioCallback, NULL);
-
- if (error) {
- error = Pa_OpenStream(&stream, recDeviceNum, 2, paFloat32, NULL,
- paNoDevice, 0, paFloat32, NULL,
- highestSampleRate, 512, 1, paClipOff | paDitherOff,
- audacityAudioCallback, NULL);
- }
-
-#endif // PX v19/18
if (error) {
s << wxT("Recieved ") << error << wxT(" while opening devices") << e;
@@ -2196,12 +1972,12 @@ wxString AudioIO::GetDeviceInfo()
s << wxT("==============================") << e;
s << wxT("Capture volume is ") << (EmulateMixerInputVol? wxT("emulated"): wxT("native")) << e;
- s << wxT("Capture volume is ") << (EmulateMixerOutputVol? wxT("emulated"): wxT("native")) << e;
+ s << wxT("Playback volume is ") << (EmulateMixerOutputVol? wxT("emulated"): wxT("native")) << e;
Px_CloseMixer(PortMixer);
-#endif
} //end of massive if statement if a valid sample rate has been found
+#endif
return o.GetString();
}
@@ -2358,317 +2134,366 @@ void AudioIO::SetListener(AudioIOListener* listener)
mListener = listener;
}
-/* HCK MIDI PATCH START */
-/* REQUIRES PORTMIDI */
-//void AudioIO::FillMidiBuffers()
-//{
-// long now = TIME_PROC(NULL);
-
- // Buffering too quickly may cause a MIDI host buffer overflow
- // so after every 5 seconds of data is buffered, we wait until
- // just before that 5 seconds has been processed before buffering
- // again.
- //
- // A better way to do this would be to use PortMidi to query the
- // host's state and only buffer as many events as the host can handle.
-// if( mPlaybackTracks.IsEmpty() && !mUpdateMidiTracks )
-// {
+#ifdef EXPERIMENTAL_MIDI_OUT
+
+void AudioIO::OutputEvent()
+{
+ int channel = (mNextEvent->chan) & 0xF; // must be in [0..15]
+ int command = -1;
+ int data1 = -1;
+ int data2 = -1;
+
+ // printf("OutputEvent: now %d\n", TIME_PROC(NULL));
+
+ if (mVC & (1 << channel)) { // if mNextEvent's channel is visible, play it
+ // Note event
+ if (mNextEvent->is_note() && !mSendMidiState) {
+ // Pitch and velocity
+ data1 = mNextEvent->get_pitch();
+ if (mNextIsNoteOn) data2 = mNextEvent->get_loud(); // get velocity
+ else data2 = 0; // 0 velocity means "note off"
+ command = 0x90; // MIDI NOTE ON (or OFF when velocity == 0)
+ // Update event
+ } else if (mNextEvent->is_update()) {
+ // this code is based on allegrosmfwr.cpp -- it could be improved
+ // by comparing attribute pointers instead of string compares
+ Alg_update_ptr update = (Alg_update_ptr) mNextEvent;
+ const char *name = update->get_attribute();
+
+ if (!strcmp(name, "programi")) {
+ // Instrument change
+ data1 = update->parameter.i;
+ data2 = 0;
+ command = 0xC0; // MIDI PROGRAM CHANGE
+ } else if (!strncmp(name, "control", 7)) {
+ // Controller change
+
+ // The number of the controller being changed is embedded
+ // in the parameter name.
+ data1 = atoi(name + 7);
+ // Allegro normalizes controller values
+ data2 = ROUND(update->parameter.r * 127);
+ command = 0xB0;
+ } else if (!strcmp(name, "bendr")) {
+ // Bend change
+
+ // Reverse Allegro's post-processing of bend values
+ int temp = ROUND(0x2000 * (update->parameter.r + 1));
+ if (temp > 0x3fff) temp = 0x3fff; // 14 bits maximum
+ if (temp < 0) temp = 0;
+ data1 = temp & 0x7f; // low 7 bits
+ data2 = temp >> 7; // high 7 bits
+ command = 0xE0; // MIDI PITCH BEND
+ } else if (!strcmp(name, "pressurer")) {
+ // Pressure change
+ data1 = (int) (update->parameter.r * 127);
+ if (update->get_identifier() < 0) {
+ // Channel pressure
+ data2 = 0;
+ command = 0xD0; // MIDI CHANNEL PRESSURE
+ } else {
+ // Key pressure
+ data2 = data1;
+ data1 = update->get_identifier();
+ command = 0xA0; // MIDI POLY PRESSURE
+ }
+ }
+ }
+ if (command != -1) {
+ // MIDI time is relative to the start of playback, but note times
+ // are relative to the start of the track. mT0 is the correction
+ // factor, because it's the time offset where playback started.
+ double time = mNextEventTime - mT0;
+ if (time < 0) time = 0;
+ PmTimestamp timestamp = (PmTimestamp) (time * 1000); /* s to ms */
+ Pm_WriteShort(mMidiStream, timestamp,
+ Pm_Message((int) (command + channel),
+ (long) data1, (long) data2));
+ // printf("midi out: time %d msg %2x %3d %3d\n",
+ // (PmTimestamp) (mNextEventTime * 1000),
+ // (command + channel), (long) data1, (long) data2);
+ }
+ }
+}
+
+void AudioIO::GetNextEvent()
+{
+ mNextEvent = mIterator->next(&mNextIsNoteOn);
+ if (mNextEvent) {
+ if (mNextIsNoteOn) {
+ mNextEventTime = mNextEvent->time;
+ } else {
+ mNextEventTime = mNextEvent->get_end_time();
+ }
+ } else {
+ mLastMidiTime = (int) (mNextEventTime * 1000);
+ }
+ // printf("after GetNextEvent: time %g, event %p, mLastMidiTime %d\n",
+ // mNextEventTime, mNextEvent, mLastMidiTime);
+}
+
+void AudioIO::FillMidiBuffers()
+{
+// if (mPlaybackTracks.IsEmpty() && !mSendMidiState) {
// gAudioIO->mTime = (now - mCurrentMidiTime)/1000 + mT0;
// }
-// if (now < mMidiWait)
-// {
-// return;
-// }
+ // assume gAudioIO->mTime is the current time
+ // assume output MIDI data 1s in advance of real time (mTime)
+ // assume (for now) that midi time and sequence time are based at zero
+ // then we need to iterate and output Midi until next time > mTime + 1s
+
+ while (mNextEvent &&
+ mNextEvent->time < gAudioIO->mTime + MIDI_BUFFER_AHEAD) {
+ OutputEvent();
+ GetNextEvent();
+ }
+#ifdef OLD_CODE
+ if (now < mMidiWait) {
+ return;
+ }
+ int i, j, k, track, visibleChannels;
+ long channel, key, time;
+ float command, data1, data2;
+ double r;
+ char updateParameter[13];
+ bool forcedBreak = false;
+
+ visibleChannels = mVC;
+
+ if (mSeq) {
+ i = 0; // index of buffer
+ //testSeq->iteration_begin();
+
+ Alg_event_ptr currEvent;
+
+ while ( currEvent = mSeq->iteration_next() ) {
+ // TODO HCK : this loop has Russian painter problem
+ /*
+ // In Update mode, events should be delivered immediately
+ if (mSendMidiState) time = 0;
+ // Normal playback mode takes the given event times
+ else
+ //time = (currEvent->time - mT0) * 1000;
+ time = mCurrentMidiTime + ( currEvent->time - mT0 ) * 1000;
+ */
+
+ if (gAudioIO->mTime >= gAudioIO->mT1 && !gAudioIO->mPlayLooped) {
+ mMidiStreamActive = false;
+ // gAudioIO->mInCallbackFinishedState = true;
+ mStreamToken = 0;
+ }
+
+ if (currEvent->time < mLastMidiTime / 1000) {
+ continue;
+ }
+
+ if (currEvent->time >= mT0) {
+ time = ( currEvent->time - mT0 ) * 1000 + mCurrentMidiTime;
+ if (mSendMidiState) {
+ mSendMidiState = false;
+ mCurrentMidiTime = TIME_PROC(NULL);
+ }
+ } else {
+ time = 0;
+ }
-// Alg_seq *testSeq;
+ if (mCnt > 0) {
+ j = 0;
+ printf( "HCK : sorting...\n" );
+ qsort( mMidiQueue, mCnt, sizeof( PmEvent ), compareTime );
+ printf( "HCK : sorting...\n" );
+ for (int azaa = 0; azaa < mCnt; azaa++) {
+ printf( "HCK : SORT : %f %f\n", (float)mMidiQueue[azaa].timestamp, (float)time );
+ }
+ while (mMidiQueue[j].timestamp <= time) {
+ mMidiBuffer[i].timestamp = mMidiQueue[j].timestamp;
+ memcpy(&mMidiBuffer[i].message, &mMidiQueue[j].message,
+ sizeof(PmMessage));
+ printf( "HCK : QUEUE!!!! : mCnt : %d\n", mCnt );
+ printf( "HCK : QUEUE!!!! : j : %d\n", j );
+ printf( "HCK : QUEUE!!!! : timestampQ : %f\n", (float)mMidiQueue[j].timestamp );
+ printf( "HCK : QUEUE!!!! : timestampB : %f\n", (float)mMidiBuffer[i].timestamp );
+ printf( "HCK : QUEUE!!!! : data Q : %f\n", (float)mMidiQueue[j].message );
+ printf( "HCK : QUEUE!!!! : data B : %f\n", (float)mMidiBuffer[i].message );
+
+ i++;
+ j++;
+ mCnt--;
-// int i, j, k, track, visibleChannels;
-// long channel, key, time;
-// float command, data1, data2;
-// double r;
-// char updateParameter[13];
-// bool forcedBreak = false;
+ if (mCnt == 0) {
+ break;
+ }
+ }
-// visibleChannels = mVC;
-// testSeq = mSeq;
+ if (j > 0 && mCnt > 0) {
+ memmove(&mMidiQueue[0], &mMidiQueue[j],
+ sizeof( PmEvent ) * mCnt );
+ }
+ }
- /*
- for (track = 0; track < mMidiPlaybackTracks.GetCount(); track++)
- {
- testSeq = mMidiPlaybackTracks[track]->GetSequence();
- visibleChannels = mMidiPlaybackTracks[track]->GetVisibleChannels();
- */
-
-// if (testSeq)
-// {
-// i = 0; // index of buffer
- //testSeq->iteration_begin();
-
-// Alg_event_ptr currEvent;
-
-// while ( currEvent = testSeq->iteration_next() )
-// {
- // TODO HCK : this loop has Russian painter problem
- /*
- // In Update mode, events should be delivered immediately
- if (mUpdateMidiTracks)
- time = 0;
- // Normal playback mode takes the given event times
- else
- //time = (currEvent->time - mT0) * 1000;
- time = mCurrentMidiTime + ( currEvent->time - mT0 ) * 1000;
- */
-
-// if( gAudioIO->mTime >= gAudioIO->mT1 && !gAudioIO->mPlayLooped )
-// {
-// mMidiStreamActive = false;
-// gAudioIO->mInCallbackFinishedState = true;
-// mStreamToken = 0;
-// }
-
-// if( currEvent->time < mLastMidiTime / 1000 )
-// {
-// continue;
-// }
-
-// if( currEvent->time >= mT0 )
-// {
-// time = ( currEvent->time - mT0 ) * 1000 + mCurrentMidiTime;
-// if( mUpdateMidiTracks )
-// {
-// mUpdateMidiTracks = false;
-// mCurrentMidiTime = TIME_PROC(NULL);
-// }
-// }
-// else
-// {
-// time = 0;
-// }
-
-// if( mCnt > 0 )
-// {
-// j = 0;
-// printf( "HCK : sorting...\n" );
-// qsort( mMidiQueue, mCnt, sizeof( PmEvent ), compareTime );
-// printf( "HCK : sorting...\n" );
-// for( int azaa = 0; azaa < mCnt; azaa++ )
-// {
-// printf( "HCK : SORT : %f %f\n", (float)mMidiQueue[azaa].timestamp, (float)time );
-// }
-// while( mMidiQueue[j].timestamp <= time )
-// {
-// mMidiBuffer[i].timestamp = mMidiQueue[j].timestamp;
-// memcpy( &mMidiBuffer[i].message, &mMidiQueue[j].message,
-// sizeof( PmMessage ) );
-
-// printf( "HCK : QUEUE!!!! : mCnt : %d\n", mCnt );
-// printf( "HCK : QUEUE!!!! : j : %d\n", j );
-// printf( "HCK : QUEUE!!!! : timestampQ : %f\n", (float)mMidiQueue[j].timestamp );
-// printf( "HCK : QUEUE!!!! : timestampB : %f\n", (float)mMidiBuffer[i].timestamp );
-// printf( "HCK : QUEUE!!!! : data Q : %f\n", (float)mMidiQueue[j].message );
-// printf( "HCK : QUEUE!!!! : data B : %f\n", (float)mMidiBuffer[i].message );
-
-// i++;
-// j++;
-// mCnt--;
-
-// if( mCnt == 0 )
-// {
-// break;
-// }
-// }
-
-// if( j > 0 && mCnt > 0 )
-// {
-// memmove( &mMidiQueue[0], &mMidiQueue[j],
-// sizeof( PmEvent ) * mCnt );
-// }
-// }
-
-// channel = currEvent->chan;
-// command = data1 = data2 = -1;
-
-// if (visibleChannels & (1 << channel))
-// {
-// // Note event
-// if ( currEvent->get_type() == wxT('n') && mUpdateMidiTracks == false )
-// {
- // Pitch and velocity
-// data1 = currEvent->get_pitch();
-// data2 = currEvent->get_loud();
-// command = 0x90;
-// }
- // Update event
-// else if (currEvent->get_type() == wxT('u'))
-// {
- // Allegro update events are stored as name/value parameters
- // where names can also contain important MIDI values and the
- // value data type. To make this as easy as possible, we
- // only look at the first four characters of each name to
- // determine the command.
-// strcpy(updateParameter,
-// ((Alg_update_ptr)currEvent)->parameter.attr_name());
-// updateParameter[4] = 0;
-
-// if (strcmp(updateParameter, "prog") == 0)
-// {
- // Instrument change
-
-// data1 = ((Alg_update_ptr)currEvent)->parameter.i;
-// data2 = 0;
-// command = 0xC0;
-// }
-// else if(strcmp(updateParameter, "cont") == 0 && mUpdateMidiTracks == false)
-// {
- // Controller change
-
- // The number of the controller being changed is embedded
- // in the parameter name so we grab the whole name, set the
- // index value to the position just after "control"
-// strcpy(updateParameter,
-// ((Alg_update_ptr)currEvent)->parameter.attr_name());
-
-// k = 7;
-// data1 = 0;
-
-// while(updateParameter[k] != wxT('r'))
-// {
-// data1 = data1 * 10 + atoi(&updateParameter[k]);
-// k++;
-// }
-
- // Allegro normalizes controller values
-// data2 = ((Alg_update_ptr)currEvent)->parameter.r * 127;
-// command = 0xB0;
-// }
-// else if(strcmp(updateParameter, "bend") == 0 && mUpdateMidiTracks == false)
-// {
- // Bend change
-
- // Reverse Allegro's post-processing of bend values
-// r = (((Alg_update_ptr)currEvent)->parameter.r + 1) * 8192;
-
-// data1 = ((long)r) >> 7;
-// data2 = (((long)r) << 7) >> 7;
-// command = 0xE0;
-// }
-// else if(strcmp(updateParameter, "pres") == 0 && mUpdateMidiTracks == false)
-// {
- // Pressure change
-
- // Allegro normalizes pressures
-// r = ((Alg_update_ptr)currEvent)->parameter.r * 127;
-// key = currEvent->get_identifier();
-
- // Channel pressure
-// if (key == -1)
-// {
-// data1 = r;
-// data2 = 0;
-// command = 0xD0;
-// }
+ channel = currEvent->chan;
+ command = data1 = data2 = -1;
+
+ if (visibleChannels & (1 << channel)) {
+ // Note event
+ if (currEvent->is_note() && mSendMidiState == false) {
+ // Pitch and velocity
+ data1 = currEvent->get_pitch();
+ data2 = currEvent->get_loud();
+ command = 0x90;
+ }
+ // Update event
+ else if (currEvent->is_update()) {
+ // Allegro update events are stored as name/value parameters
+ // where names can also contain important MIDI values and the
+ // value data type. To make this as easy as possible, we
+ // only look at the first four characters of each name to
+ // determine the command.
+ strcpy(updateParameter,
+ ((Alg_update_ptr)currEvent)->parameter.attr_name());
+ updateParameter[4] = 0;
+
+ if (strcmp(updateParameter, "prog") == 0) {
+ // Instrument change
+
+ data1 = ((Alg_update_ptr)currEvent)->parameter.i;
+ data2 = 0;
+ command = 0xC0;
+ } else if (strcmp(updateParameter, "cont") == 0 &&
+ mSendMidiState == false) {
+ // Controller change
+
+ // The number of the controller being changed is embedded
+ // in the parameter name so we grab the whole name, set the
+ // index value to the position just after "control"
+ strcpy(updateParameter,
+ ((Alg_update_ptr)currEvent)->parameter.attr_name());
+
+ k = 7;
+ data1 = 0;
+
+ while (updateParameter[k] != wxT('r')) {
+ data1 = data1 * 10 + atoi(&updateParameter[k]);
+ k++;
+ }
+
+ // Allegro normalizes controller values
+ data2 = ((Alg_update_ptr)currEvent)->parameter.r * 127;
+ command = 0xB0;
+ } else if (strcmp(updateParameter, "bend") == 0 &&
+ mSendMidiState == false) {
+ // Bend change
+
+ // Reverse Allegro's post-processing of bend values
+ r = (((Alg_update_ptr)currEvent)->parameter.r + 1) * 8192;
+
+ data1 = ((long)r) >> 7;
+ data2 = (((long)r) << 7) >> 7;
+ command = 0xE0;
+ } else if (strcmp(updateParameter, "pres") == 0 &&
+ mSendMidiState == false) {
+ // Pressure change
+
+ // Allegro normalizes pressures
+ r = ((Alg_update_ptr)currEvent)->parameter.r * 127;
+ key = currEvent->get_identifier();
+
+ // Channel pressure
+ if (key == -1) {
+ data1 = r;
+ data2 = 0;
+ command = 0xD0;
+ } else {
// Key pressure
-// else
-// {
-// data1 = key;
-// data2 = r;
-// command = 0xA0;
-// }
-// }
-// }
-// }
-
-// if (command != -1)
-// {
-// mMidiBuffer[i].timestamp = time;
-// mMidiBuffer[i].message = Pm_Message((int)(command + channel), (long)data1, (long)data2);
-// printf( "HCK[%d]\n", i );
-// printf( "Command : %d\n", (int)command );
-// printf( "mTime : %f\n", (float)gAudioIO->mTime );
-// printf( "TimeStamp : %f\n", (float)mMidiBuffer[i].timestamp );
-// printf( "CurMidiTime : %f\n", (float)mCurrentMidiTime );
-// printf( "LastMidiTime: %f\n", (float)mLastMidiTime );
-// printf( "MidiWait : %f\n", (float)mMidiWait );
-// printf( "Time : %f\n", (float)TIME_PROC(NULL) );
-// i++;
-// if( command == 0x90 )
-// {
-// mMidiQueue[mCnt].timestamp = time + (long)currEvent->get_duration() * 1000;
-// mMidiQueue[mCnt].message = Pm_Message((int)(0x90 + channel), (long)data1, 0 );
-// printf( "HCK QUEUE[%d]\n", mCnt );
-// printf( "Command : OFF\n" );
-// printf( "mTime : %f\n", (float)gAudioIO->mTime );
-// printf( "TimeStamp : %f\n", (float)mMidiQueue[mCnt].timestamp );
-// printf( "CurMidiTime : %f\n", (float)mCurrentMidiTime );
-// printf( "LastMidiTime: %f\n", (float)mLastMidiTime );
-// printf( "MidiWait : %f\n", (float)mMidiWait );
-// printf( "Time : %f\n", (float)TIME_PROC(NULL) );
-// mCnt++;
-// }
-// else
-// fprintf(stderr, "command: %s\n", updateParameter);
-// }
-
- // Turn off updates when we reach the selection beginning
- /*
- if (mUpdateMidiTracks)
- {
- if (i == 0 && i > testSeq->seek_time(mT0, track))
- {
- // The first 1/10 of the file has been processed
- // so just to 5 seconds before cursor to avoid lag
- notesOn = true;
- i = testSeq->seek_time(mT0, track);
- fprintf(stderr, "%li: Stop processing updates\n", TIME_PROC(NULL));
+ data1 = key;
+ data2 = r;
+ command = 0xA0;
+ }
}
}
- */
- // Stop when:
- // 1. enough events are buffered
- // 2. there are no more events to buffer
- //if (i >= endIndex || i == testSeq->length())
-// if( i >= MAX_MIDI_BUFFER_SIZE - 1 )
-// {
-// if( !mUpdateMidiTracks )
-// {
-// printf( "HCK : Pm_Write : 111111111\n" );
- //qsort( mMidiBuffer, i, sizeof( PmEvent ), compareTime );
-// Pm_Write(mMidiStream, mMidiBuffer, i);
-// mMidiWait = time - 1000;
-// }
-// i = 0;
-// mLastMidiTime = currEvent->time * 1000;
-// forcedBreak = true;
-// break;
-// }
-// else if( currEvent->time * 1000 >= mLastMidiTime + 2000 )
-// {
-// if( !mUpdateMidiTracks )
-// {
-// printf( "HCK : Pm_Write : 222222222\n" );
- //qsort( mMidiBuffer, i, sizeof( PmEvent ), compareTime );
-// Pm_Write( mMidiStream, mMidiBuffer, i );
-// mMidiWait = time - 1000;
-// }
-// i = 0;
-// mLastMidiTime = currEvent->time * 1000;
-// forcedBreak = true;
-// break;
-// }
-// } // End of While
+ }
+
+ if (command != -1) {
+ mMidiBuffer[i].timestamp = time;
+ mMidiBuffer[i].message = Pm_Message((int)(command + channel),
+ (long)data1, (long)data2);
+ printf( "HCK[%d]\n", i );
+ printf( "Command : %d\n", (int)command );
+ printf( "mTime : %f\n", (float)gAudioIO->mTime );
+ printf( "TimeStamp : %f\n", (float)mMidiBuffer[i].timestamp );
+ printf( "CurMidiTime : %f\n", (float)mCurrentMidiTime );
+ printf( "LastMidiTime: %f\n", (float)mLastMidiTime );
+ printf( "MidiWait : %f\n", (float)mMidiWait );
+ printf( "Time : %f\n", (float)TIME_PROC(NULL) );
+ i++;
+ if (command == 0x90) {
+ mMidiQueue[mCnt].timestamp =
+ time + (long)currEvent->get_duration() * 1000;
+ mMidiQueue[mCnt].message = Pm_Message((int)(0x90 + channel),
+ (long)data1, 0 );
+ printf( "HCK QUEUE[%d]\n", mCnt );
+ printf( "Command : OFF\n" );
+ printf( "mTime : %f\n", (float)gAudioIO->mTime );
+ printf( "TimeStamp : %f\n", (float)mMidiQueue[mCnt].timestamp );
+ printf( "CurMidiTime : %f\n", (float)mCurrentMidiTime );
+ printf( "LastMidiTime: %f\n", (float)mLastMidiTime );
+ printf( "MidiWait : %f\n", (float)mMidiWait );
+ printf( "Time : %f\n", (float)TIME_PROC(NULL) );
+ mCnt++;
+ } else
+ fprintf(stderr, "command: %s\n", updateParameter);
+ }
+
+ // Turn off updates when we reach the selection beginning
+ /*
+ if (mSendMidiState) {
+ if (i == 0 && i > testSeq->seek_time(mT0, track)) {
+ // The first 1/10 of the file has been processed
+ // so just to 5 seconds before cursor to avoid lag
+ notesOn = true;
+ i = testSeq->seek_time(mT0, track);
+ fprintf(stderr, "%li: Stop processing updates\n", TIME_PROC(NULL));
+ }
+ }
+ */
+ // Stop when:
+ // 1. enough events are buffered
+ // 2. there are no more events to buffer
+ //if (i >= endIndex || i == testSeq->length())
+ if (i >= MAX_MIDI_BUFFER_SIZE - 1) {
+ if (!mSendMidiState) {
+ printf( "HCK : Pm_Write : 111111111\n" );
+ qsort( mMidiBuffer, i, sizeof( PmEvent ), compareTime );
+ Pm_Write(mMidiStream, mMidiBuffer, i);
+ mMidiWait = time - 1000;
+ }
+ i = 0;
+ mLastMidiTime = currEvent->time * 1000;
+ forcedBreak = true;
+ break;
+ } else if (currEvent->time * 1000 >= mLastMidiTime + 2000) {
+ if (!mSendMidiState) {
+ printf( "HCK : Pm_Write : 222222222\n" );
+ qsort( mMidiBuffer, i, sizeof( PmEvent ), compareTime );
+ Pm_Write( mMidiStream, mMidiBuffer, i );
+ mMidiWait = time - 1000;
+ }
+ i = 0;
+ mLastMidiTime = currEvent->time * 1000;
+ forcedBreak = true;
+ break;
+ }
+ } // End of While
//testSeq->iteration_end();
-// if( !forcedBreak ) // this means there are no more event in testSeq.
-// {
-// mMidiStreamActive = false;
-// gAudioIO->mInCallbackFinishedState = true;
-// }
-// } // End of if( testSeq )
- /*
- }
- */
-//}
-/* HCK MIDI PATCH END */
+ if (!forcedBreak ) { // this means there are no more event in testSeq.
+ mMidiStreamActive = false;
+ // gAudioIO->mInCallbackFinishedState = true;
+ }
+ } // End of if( mSeq )
+#endif // OLD_CODE
+}
+#endif
//////////////////////////////////////////////////////////////////////
//
@@ -2706,19 +2531,10 @@ void DoSoftwarePlaythrough(const void *inputBuffer,
}
-#if USE_PORTAUDIO_V19
int audacityAudioCallback(const void *inputBuffer, void *outputBuffer,
unsigned long framesPerBuffer,
const PaStreamCallbackTimeInfo *timeInfo,
const PaStreamCallbackFlags statusFlags, void *userData )
-#else
-
-#define paContinue 0
-
-int audacityAudioCallback(void *inputBuffer, void *outputBuffer,
- unsigned long framesPerBuffer,
- PaTimestamp outTime, void *userData )
-#endif
{
int numPlaybackChannels = gAudioIO->mNumPlaybackChannels;
int numPlaybackTracks = gAudioIO->mPlaybackTracks.GetCount();
@@ -2908,12 +2724,7 @@ int audacityAudioCallback(void *inputBuffer, void *outputBuffer,
if (len == 0 && gAudioIO->mTime >= gAudioIO->mT1 &&
!gAudioIO->mPlayLooped)
{
- #if USE_PORTAUDIO_V19
callbackReturn = paComplete;
- #else
- callbackReturn = 1;
- gAudioIO->mInCallbackFinishedState = true;
- #endif
}
if (vt->GetChannel() == Track::LeftChannel ||
@@ -3048,7 +2859,6 @@ int audacityAudioCallback(void *inputBuffer, void *outputBuffer,
// Record the reported latency from PortAudio.
// TODO: Don't recalculate this with every callback?
- #if USE_PORTAUDIO_V19
// 01/21/2009: Disabled until a better solution presents itself.
#if 0
// As of 06/17/2006, portaudio v19 returns inputBufferAdcTime set to
@@ -3073,12 +2883,6 @@ int audacityAudioCallback(void *inputBuffer, void *outputBuffer,
}
}
#endif
- #else
- if (numCaptureChannels > 0 && numPlaybackChannels > 0)
- gAudioIO->mLastRecordingOffset = (Pa_StreamTime(gAudioIO->mPortStreamV18) - outTime) / gAudioIO->mRate;
- else
- gAudioIO->mLastRecordingOffset = 0;
- #endif
} // if mStreamToken > 0
else {
// No tracks to play, but we should clear the output, and
@@ -3126,11 +2930,12 @@ int audacityAudioCallback(void *inputBuffer, void *outputBuffer,
return callbackReturn;
}
-/* REQUIRES PORTMIDI */
-//int compareTime( const void* a, const void* b )
-//{
-// return( (int)((*(PmEvent*)a).timestamp - (*(PmEvent*)b).timestamp ) );
-//}
+#ifdef EXPERIMENTAL_MIDI_OUT
+int compareTime( const void* a, const void* b )
+{
+ return( (int)((*(PmEvent*)a).timestamp - (*(PmEvent*)b).timestamp ) );
+}
+#endif
// Indentation settings for Vim and Emacs and unique identifier for Arch, a
// version control system. Please do not modify past this point.
@@ -3142,4 +2947,3 @@ int audacityAudioCallback(void *inputBuffer, void *outputBuffer,
//
// vim: et sts=3 sw=3
// arch-tag: 7ee3c9aa-b58b-4069-8a07-8866f2303963
-
diff --git a/src/AudioIO.h b/src/AudioIO.h
index 6c46c9a..3661ce8 100644
--- a/src/AudioIO.h
+++ b/src/AudioIO.h
@@ -15,10 +15,13 @@
#include "portaudio.h"
#include "Audacity.h"
+#include "Experimental.h"
#ifdef USE_MIDI
-//#include "portmidi.h"
-//#include "porttime.h"
+#ifdef EXPERIMENTAL_MIDI_OUT
+#include "portmidi.h"
+#include "porttime.h"
+#endif // EXPERIMENTAL_MIDI_OUT
#include "allegro.h"
#endif // USE_MIDI
@@ -41,7 +44,7 @@ class AudioThread;
class Meter;
class TimeTrack;
-extern AudioIO *gAudioIO;
+extern AUDACITY_DLL_API AudioIO *gAudioIO;
void InitAudioIO();
void DeinitAudioIO();
@@ -64,7 +67,7 @@ public:
#define DEFAULT_LATENCY_DURATION 100.0
#define DEFAULT_LATENCY_CORRECTION -130.0
-class AudioIO {
+class AUDACITY_DLL_API AudioIO {
public:
AudioIO();
@@ -89,8 +92,9 @@ class AudioIO {
* instance. For use with IsStreamActive() below */
int StartStream(WaveTrackArray playbackTracks, WaveTrackArray captureTracks,
-/* REQUIRES PORTMIDI */
- //NoteTrackArray midiTracks,
+#ifdef EXPERIMENTAL_MIDI_OUT
+ NoteTrackArray *midiTracks,
+#endif
TimeTrack *timeTrack, double sampleRate,
double t0, double t1,
AudioIOListener* listener,
@@ -123,6 +127,12 @@ class AudioIO {
bool IsStreamActive();
bool IsStreamActive(int token);
+#ifdef EXPERIMENTAL_MIDI_OUT
+ /** \brief Are any Note tracks playing MIDI?
+ */
+ bool IsMidiActive(); //
+#endif
+
/** \brief Returns true if the stream is active, or even if audio I/O is
* busy cleaning up its data or writing to disk.
*
@@ -155,7 +165,7 @@ class AudioIO {
* soundcard mixer (driven by PortMixer) */
wxArrayString GetInputSourceNames();
- /** \Brief update state after changing what audio devices are selected
+ /** \brief update state after changing what audio devices are selected
*
* Called when the devices stored in the preferences are changed to update
* the audio mixer capabilities
@@ -284,14 +294,14 @@ private:
unsigned int numPlaybackChannels,
unsigned int numCaptureChannels,
sampleFormat captureFormat);
-
-/* REQUIRES PORTMIDI */
-// bool StartPortMidiStream();
-
void FillBuffers();
-/* REQUIRES PORTMIDI */
-// void FillMidiBuffers();
+#ifdef EXPERIMENTAL_MIDI_OUT
+ bool StartPortMidiStream();
+ void OutputEvent();
+ void FillMidiBuffers();
+ void GetNextEvent();
+#endif
/** \brief Get the number of audio samples free in all of the playback
* buffers.
@@ -336,20 +346,32 @@ private:
double NormalizeStreamTime(double absoluteTime) const;
-// MIDI_PLAYBACK:
-// PmStream *mMidiStream;
-// PmEvent mMidiBuffer[MAX_MIDI_BUFFER_SIZE];
-// PmEvent mMidiQueue[MAX_MIDI_BUFFER_SIZE];
-// PmError mLastPmError;
-// long mCurrentMidiTime;
-// long mLastMidiTime;
-// Alg_seq *mSeq;
-// int mVC; // Visible Channel
-// int mCnt;
-// long mMidiWait;
-// bool mMidiStreamActive;
-// bool mUpdateMidiTracks;
+#ifdef EXPERIMENTAL_MIDI_OUT
+ // MIDI_PLAYBACK:
+ PmStream *mMidiStream;
+ // PmEvent mMidiBuffer[MAX_MIDI_BUFFER_SIZE];
+ // PmEvent mMidiQueue[MAX_MIDI_BUFFER_SIZE];
+ PmError mLastPmError;
+ long mCurrentMidiTime;
+ long mMidiLatency; // latency value for PortMidi
+ long mLastMidiTime; // timestamp of last midi message
+ Alg_seq_ptr mSeq;
+ Alg_iterator_ptr mIterator;
+ Alg_event_ptr mNextEvent; // the next event to play (or null)
+ double mNextEventTime; // the time of the next event
+ // (note that this could be a note's time+duration)
+ bool mNextIsNoteOn; // is the next event a note-off?
+ int mVC; // Visible Channel mask
+ // int mCnt;
+ long mMidiWait;
+ bool mMidiStreamActive;
+ // when true, mSendMidiState means send only updates, not note-on's,
+ // used to send state changes that precede the selected notes
+ bool mSendMidiState;
+ NoteTrackArray *mMidiPlaybackTracks;
+ // NoteTrackArray mMidiCaptureTracks;
+#endif
AudioThread *mThread;
Resample **mResample;
RingBuffer **mCaptureBuffers;
@@ -357,11 +379,6 @@ private:
RingBuffer **mPlaybackBuffers;
WaveTrackArray mPlaybackTracks;
-/* REQUIRES PORTMIDI */
-// NoteTrackArray mMidiPlaybackTracks;
-// RingBuffer **mMidiPlaybackBuffers;
-// NoteTrackArray mMidiCaptureTracks;
-
Mixer **mPlaybackMixers;
int mStreamToken;
int mStopStreamCount;
@@ -369,9 +386,9 @@ private:
double mFactor;
double mRate;
double mT;
- double mT0;
- double mT1;
- double mTime;
+ double mT0; // playback starts at offset of mT0
+ double mT1; // and ends at offset of mT1
+ double mTime; // current time position during playback
double mWarpedT1;
double mSeek;
double mPlaybackRingBufferSecs;
@@ -379,15 +396,7 @@ private:
double mMaxPlaybackSecsToCopy;
double mMinCaptureSecsToCopy;
bool mPaused;
-#if USE_PORTAUDIO_V19
PaStream *mPortStreamV19;
-/* REQUIRES PORTMIDI */
-// volatile bool mInCallbackFinishedState;
-
-#else /* USE_PORTAUDIO_V19 */
- PortAudioStream *mPortStreamV18;
- volatile bool mInCallbackFinishedState;
-#endif /* USE_PORTAUDIO_V19 */
bool mSoftwarePlaythrough;
bool mPauseRec;
float mSilenceLevel;
@@ -435,8 +444,7 @@ private:
friend void DeinitAudioIO();
TimeTrack *mTimeTrack;
-
-#if USE_PORTAUDIO_V19
+
/** brief The function which is called from PortAudio's callback thread
* context to collect and deliver audio for / from the sound device.
*
@@ -445,24 +453,25 @@ private:
* with the two buffers needs some care to ensure that the right things
* happen for all possible cases.
* @param inputBuffer Buffer of length framesPerBuffer containing samples
- * from the sound card, or null if not capturing audio.
+ * from the sound card, or null if not capturing audio. Note that the data
+ * type will depend on the format of audio data that was chosen when the
+ * stream was created (so could be floats or various integers)
* @param outputBuffer Uninitialised buffer of length framesPerBuffer which
* will be sent to the sound card after the callback, or null if not playing
* audio back.
* @param framesPerBuffer The length of the playback and recording buffers
+ * @param PaStreamCallbackTimeInfo Pointer to PortAudio time information
+ * structure, which tells us how long we have been playing / recording
+ * @param statusFlags PortAudio stream status flags
+ * @param userData pointer to user-defined data structure. Provided for
+ * flexibility by PortAudio, but not used by Audacity - the data is stored in
+ * the AudioIO class instead.
*/
friend int audacityAudioCallback(
const void *inputBuffer, void *outputBuffer,
unsigned long framesPerBuffer,
const PaStreamCallbackTimeInfo *timeInfo,
PaStreamCallbackFlags statusFlags, void *userData );
-#else /* USE_PORTAUDIO_V19 */
- friend int audacityAudioCallback(
- void *inputBuffer, void *outputBuffer,
- unsigned long framesPerBuffer,
- PaTimestamp outTime, void *userData );
-#endif /* USE_PORTAUDIO_V19 */
-
};
#endif
diff --git a/src/AutoRecovery.cpp b/src/AutoRecovery.cpp
index 5751832..63ef435 100644
--- a/src/AutoRecovery.cpp
+++ b/src/AutoRecovery.cpp
@@ -158,7 +158,7 @@ static bool RemoveAllAutoSaveFiles()
{
wxArrayString files;
wxDir::GetAllFiles(FileNames::AutoSaveDir(), &files,
- _T("*.autosave"), wxDIR_FILES);
+ wxT("*.autosave"), wxDIR_FILES);
for (unsigned int i = 0; i < files.GetCount(); i++)
{
@@ -191,7 +191,7 @@ static bool RecoverAllProjects(AudacityProject** pproj)
wxArrayString files;
wxDir::GetAllFiles(FileNames::AutoSaveDir(), &files,
- _T("*.autosave"), wxDIR_FILES);
+ wxT("*.autosave"), wxDIR_FILES);
for (unsigned int i = 0; i < files.GetCount(); i++)
{
@@ -209,7 +209,7 @@ static bool RecoverAllProjects(AudacityProject** pproj)
// Open project. When an auto-save file has been opened successfully,
// the opened auto-save file is automatically deleted and a new one
// is created.
- proj->OpenFile(files[i]);
+ proj->OpenFile(files[i], false);
}
return true;
diff --git a/src/BatchCommands.cpp b/src/BatchCommands.cpp
index 5d70589..f56d01d 100644
--- a/src/BatchCommands.cpp
+++ b/src/BatchCommands.cpp
@@ -251,7 +251,7 @@ void BatchCommands::SetWavToMp3Chain()
// Gets all commands that are valid for this mode.
wxArrayString BatchCommands::GetAllCommands()
{
- wxArrayString commands(true);
+ wxArrayString commands;
wxString command;
commands.Clear();
@@ -315,7 +315,6 @@ bool BatchCommands::PromptForParamsFor(wxString command)
//mFactory = factory;
//mProjectRate = projectRate;
f->mParent = NULL;
- f->mWaveTracks = NULL;
//mTracks = list;
return f->PromptUser();
}
@@ -514,13 +513,10 @@ bool BatchCommands::SetCurrentParametersFor( Effect * f, const wxString command,
bool BatchCommands::ApplyEffectCommand( Effect * f, const wxString command, const wxString params)
{
- if( !SetCurrentParametersFor( f, command, params ))
- return false;
//Possibly end processing here, if in batch-debug
if( ReportAndSkip(command, params))
return true;
- //Parmeters are set, nearly ready to apply the effect...
AudacityProject *project = GetActiveProject();
//FIX-ME: for later versions may want to not select-all in batch mode.
@@ -529,7 +525,7 @@ bool BatchCommands::ApplyEffectCommand( Effect * f, const wxString command, co
project->SelectAllIfNone();
// NOW actually apply the effect.
- return project->OnEffect(ALL_EFFECTS | CONFIGURED_EFFECT , f);
+ return project->OnEffect(ALL_EFFECTS | CONFIGURED_EFFECT , f, params, false);
}
bool BatchCommands::ApplyMenuCommand(const wxString command, const wxString params)
@@ -596,8 +592,34 @@ bool BatchCommands::ApplyChain(const wxString & filename)
}
mFileName.Empty();
+ AudacityProject *proj = GetActiveProject();
- return res;
+ if (!res)
+ {
+ // Chain failed or was cancelled; revert to the previous state
+ UndoManager *um = proj->GetUndoManager();
+ proj->SetStateTo(um->GetCurrentState());
+ return false;
+ }
+
+ // Chain was successfully applied; save the new project state
+ wxString longDesc, shortDesc;
+ wxString name = gPrefs->Read(wxT("/Batch/ActiveChain"), wxEmptyString);
+ if (name.IsEmpty())
+ {
+ longDesc = wxT("Applied batch chain");
+ shortDesc = wxT("Apply chain");
+ }
+ else
+ {
+ longDesc = wxString::Format(wxT("Applied batch chain '%s'"), name.c_str());
+ shortDesc = wxString::Format(wxT("Apply '%s'"), name.c_str());
+ }
+
+ if (!proj)
+ return false;
+ proj->PushState(longDesc, shortDesc);
+ return true;
}
// AbortBatch() allows a premature terminatation of a batch.
diff --git a/src/BatchProcessDialog.cpp b/src/BatchProcessDialog.cpp
index a40e2b3..3498404 100644
--- a/src/BatchProcessDialog.cpp
+++ b/src/BatchProcessDialog.cpp
@@ -40,6 +40,7 @@
#include "effects/Effect.h"
#include "../images/Arrow.xpm"
#include "BatchCommands.h"
+#include "UndoManager.h"
#include "Theme.h"
#include "AllThemeResources.h"
@@ -178,8 +179,6 @@ void BatchProcessDialog::OnApplyToProject(wxCommandEvent &event)
if (!mBatchCommands.ApplyChain()) {
return;
}
-
- EndModal(true);
}
void BatchProcessDialog::OnApplyToFiles(wxCommandEvent &event)
@@ -293,10 +292,10 @@ void BatchProcessDialog::OnApplyToFiles(wxCommandEvent &event)
if (!d.IsShown() || mAbort) {
break;
}
+ UndoManager *um = project->GetUndoManager();
+ um->ClearStates();
}
project->OnRemoveTracks();
-
- EndModal(true);
}
void BatchProcessDialog::OnCancel(wxCommandEvent &event)
@@ -450,9 +449,9 @@ void EditChainsDialog::PopulateOrExchange(ShuttleGui & S)
//can't be right aligned.
mList->InsertColumn(BlankColumn, wxT(""), wxLIST_FORMAT_LEFT);
/* i18n-hint: This is the number of the command in the list */
- mList->InsertColumn(ItemNumberColumn, _("No"), wxLIST_FORMAT_RIGHT);
- mList->InsertColumn(ActionColumn, _NoAcc("&Command"), wxLIST_FORMAT_RIGHT);
- mList->InsertColumn(ParamsColumn, _NoAcc("&Parameters"), wxLIST_FORMAT_LEFT);
+ mList->InsertColumn(ItemNumberColumn, _("Num"), wxLIST_FORMAT_RIGHT);
+ mList->InsertColumn(ActionColumn, _("Command"), wxLIST_FORMAT_RIGHT);
+ mList->InsertColumn(ParamsColumn, _("Parameters"), wxLIST_FORMAT_LEFT);
S.StartHorizontalLay(wxCENTER, false);
{
diff --git a/src/CrossFade.cpp b/src/CrossFade.cpp
index 5045233..0664015 100644
--- a/src/CrossFade.cpp
+++ b/src/CrossFade.cpp
@@ -77,7 +77,7 @@ bool CrossFader::CrossFadeMix(samplePtr buffer, sampleFormat format, sampleCount
WaveClip * tmpclip = NULL;
Sequence * tmp = NULL;
- WaveClipList::Node * it;
+ WaveClipList::compatibility_iterator it;
//Go through each clip, adding it to the total in the appropriate way.
diff --git a/src/Dependencies.cpp b/src/Dependencies.cpp
index fd6371e..01f989b 100644
--- a/src/Dependencies.cpp
+++ b/src/Dependencies.cpp
@@ -52,7 +52,7 @@ void GetAllSeqBlocks(AudacityProject *project,
while (t) {
if (t->GetKind() == Track::Wave) {
WaveTrack *waveTrack = (WaveTrack *)t;
- WaveClipList::Node* node = waveTrack->GetClipIterator();
+ WaveClipList::compatibility_iterator node = waveTrack->GetClipIterator();
while(node) {
WaveClip *clip = node->GetData();
Sequence *sequence = clip->GetSequence();
@@ -156,6 +156,7 @@ bool RemoveDependencies(AudacityProject *project,
BlockArray blocks;
GetAllSeqBlocks(project, &blocks);
+ int updateResult = eProgressSuccess;
for(i=0; i<blocks.GetCount(); i++) {
BlockFile *f = blocks[i]->f;
if (f->IsAlias() && !blockFileHash[f]) {
@@ -185,7 +186,9 @@ bool RemoveDependencies(AudacityProject *project,
cancelled = !mProgress->Update(i, fileTotalFrames);
if (cancelled)
break;*/
- progress->Update(completedBytes, totalBytesToProcess);
+ updateResult = progress->Update(completedBytes, totalBytesToProcess);
+ if (updateResult != eProgressSuccess)
+ break;
}
}
diff --git a/src/DirManager.cpp b/src/DirManager.cpp
index b3dac23..17115d3 100644
--- a/src/DirManager.cpp
+++ b/src/DirManager.cpp
@@ -122,20 +122,18 @@ DirManager::DirManager()
for(i=0; i< 256; i++) dirTopPool[i]=0;
}
+ //create a temporary null log to capture the log dialog
+ //that wxGetDiskSpace creates. It gets destroyed when
+ //it goes out of context.
+ //JKC: Please explain why.
+ wxLogNull logNo;
+
// Make sure there is plenty of space for temp files
wxLongLong freeSpace = 0;
-
- {
- //create a temporary null log to capture the log dialog
- //that wxGetDiskSpace creates. It gets destroyed when
- //it goes out of context.
- //JKC: Please explain why.
- wxLogNull logNo;
- if (wxGetDiskSpace(globaltemp, NULL, &freeSpace)) {
- if (freeSpace < 1048576) {
- ShowWarningDialog(NULL, wxT("DiskSpaceWarning"),
- _("Warning: there is very little free disk space left on this volume.\nPlease select another temporary directory in your preferences."));
- }
+ if (wxGetDiskSpace(globaltemp, NULL, &freeSpace)) {
+ if (freeSpace < wxLongLong(wxLL(100 * 1048576))) {
+ ShowWarningDialog(NULL, wxT("DiskSpaceWarning"),
+ _("There is very little free disk space left on this volume.\nPlease select another temporary directory in Preferences."));
}
}
}
@@ -806,6 +804,10 @@ BlockFile *DirManager::CopyBlockFile(BlockFile *b)
{
if (!b->IsLocked()) {
b->Ref();
+ //mchinen:July 13 2009 - not sure about this, but it needs to be added to the hash to be able to save if not locked.
+ //note that this shouldn't hurt blockFileHash's that already contain the filename, since it should just overwrite.
+ //but it's something to watch out for.
+ blockFileHash[b->GetFileName().GetName()]=b;
return b;
}
@@ -1565,6 +1567,12 @@ void DirManager::FillBlockfilesCache()
if (!cacheBlockFiles)
return; // user opted not to cache block files
+ int lowMem = gPrefs->Read(wxT("/Directories/CacheLowMem"), 16l);
+ if (lowMem < 16) {
+ lowMem = 16;
+ }
+ lowMem <<= 20;
+
BlockHash::iterator i;
int numNeed = 0;
@@ -1588,8 +1596,10 @@ void DirManager::FillBlockfilesCache()
while (i != blockFileHash.end())
{
BlockFile *b = i->second;
- if (b->GetNeedFillCache())
+ if (b->GetNeedFillCache() && (wxGetFreeMemory() > lowMem)) {
b->FillCache();
+ }
+
if (!progress.Update(current, numNeed))
break; // user cancelled progress dialog, stop caching
i++;
diff --git a/src/Dither.cpp b/src/Dither.cpp
index fe4e66c..c87faf6 100644
--- a/src/Dither.cpp
+++ b/src/Dither.cpp
@@ -187,17 +187,6 @@ void Dither::Apply(enum DitherType ditherType,
}
}
- if (destFormat == floatSample)
- {
- // Only float samples can contain a value that
- // must be clipped.
- float* p = (float*)dest;
- for (i = 0; i < len; i++, p++)
- if (*p > 1.0)
- *p = 1.0;
- else if (*p < -1.0)
- *p = -1.0;
- }
} else
if (destFormat == floatSample)
{
diff --git a/src/Envelope.cpp b/src/Envelope.cpp
index 509ec77..08e5001 100644
--- a/src/Envelope.cpp
+++ b/src/Envelope.cpp
@@ -158,22 +158,15 @@ double Envelope::fromDB(double value) const
return pow(10.0, ((fabs(value) * envdBRange) - envdBRange) / 20.0)*sign;;
}
-void DrawPoint(wxDC & dc, wxRect & r, int x, int y, bool top, bool contour)
+void DrawPoint(wxDC & dc, const wxRect & r, int x, int y, bool top)
{
if (y >= 0 && y <= r.height) {
- if(contour){
- wxRect circle(r.x + x - 2, r.y + y - 2,
- 4, 4);
- dc.DrawEllipse(circle);
- }else{
- wxRect circle(r.x + x - 2, r.y + (top? y-1: y-4),
- 4, 4);
- dc.DrawEllipse(circle);
- }
+ wxRect circle(r.x + x, r.y + (top ? y - 1: y - 2), 4, 4);
+ dc.DrawEllipse(circle);
}
}
-void Envelope::Draw(wxDC & dc, wxRect & r, double h, double pps, bool dB,
+void Envelope::Draw(wxDC & dc, const wxRect & r, double h, double pps, bool dB,
float zoomMin, float zoomMax)
{
h -= mOffset;
@@ -193,25 +186,36 @@ void Envelope::Draw(wxDC & dc, wxRect & r, double h, double pps, bool dB,
double v = mEnv[i]->val;
int x = int ((mEnv[i]->t - h) * pps);
- int y,y2;
+ int y, y2;
- y = GetWaveYPosNew(v, zoomMin, zoomMax, r.height, dB,
- true, dBr, false);
- DrawPoint(dc, r, x, y, true, false);
+ y = GetWaveYPos(v, zoomMin, zoomMax, r.height, dB,
+ true, dBr, false);
+ if (!mMirror) {
+ DrawPoint(dc, r, x, y, true);
+ }
+ else {
+ y2 = GetWaveYPos(-v-.000000001, zoomMin, zoomMax, r.height, dB,
+ true, dBr, false);
+
+ // This follows the same logic as the envelop drawing in
+ // TrackArtist::DrawEnvelope().
+ if (y2 - y < 9) {
+ int value = (int)((zoomMax / (zoomMax - zoomMin)) * r.height);
+ y = value - 4;
+ y2 = value + 4;
+ }
- if (mMirror) {
- y2 = GetWaveYPosNew(-v-.000000001, zoomMin, zoomMax, r.height, dB,
- true, dBr, false);
- DrawPoint(dc, r, x, y2, false, false);
+ DrawPoint(dc, r, x, y, true);
+ DrawPoint(dc, r, x, y2, false);
- // Contour
- y = GetWaveYPosNew(v, zoomMin, zoomMax, r.height, dB,
- false, dBr, false);
- y2 = GetWaveYPosNew(-v-.000000001, zoomMin, zoomMax, r.height, dB,
- false, dBr, false);
- if(y<=y2){
- DrawPoint(dc, r, x, y, true, true);
- DrawPoint(dc, r, x, y2, false, true);
+ // Contour
+ y = GetWaveYPos(v, zoomMin, zoomMax, r.height, dB,
+ false, dBr, false);
+ y2 = GetWaveYPos(-v-.000000001, zoomMin, zoomMax, r.height, dB,
+ false, dBr, false);
+ if (y <= y2) {
+ DrawPoint(dc, r, x, y, true);
+ DrawPoint(dc, r, x, y2, false);
}
}
@@ -344,15 +348,15 @@ bool Envelope::HandleMouseButtonDown(wxMouseEvent & event, wxRect & r,
int numControlPoints;
// Outer control points
- y[0] = GetWaveYPosNew( mEnv[i]->val, zoomMin, zoomMax, r.height,
+ y[0] = GetWaveYPos( mEnv[i]->val, zoomMin, zoomMax, r.height,
dB, true, dBr, false);
- y[1] = GetWaveYPosNew( -mEnv[i]->val, zoomMin, zoomMax, r.height,
+ y[1] = GetWaveYPos( -mEnv[i]->val, zoomMin, zoomMax, r.height,
dB, true, dBr, false);
// Inner control points(contour)
- y[2] = GetWaveYPosNew( mEnv[i]->val, zoomMin, zoomMax, r.height,
+ y[2] = GetWaveYPos( mEnv[i]->val, zoomMin, zoomMax, r.height,
dB, false, dBr, false);
- y[3] = GetWaveYPosNew( -mEnv[i]->val-.00000001, zoomMin, zoomMax,
+ y[3] = GetWaveYPos( -mEnv[i]->val-.00000001, zoomMin, zoomMax,
r.height, dB, false, dBr, false);
numControlPoints = 4;
@@ -387,14 +391,14 @@ bool Envelope::HandleMouseButtonDown(wxMouseEvent & event, wxRect & r,
double v = GetValueAtX( event.m_x, r, h, pps );
- int ct = GetWaveYPosNew( v, zoomMin, zoomMax, r.height, dB,
+ int ct = GetWaveYPos( v, zoomMin, zoomMax, r.height, dB,
false, dBr, false) ;
- int cb = GetWaveYPosNew( -v-.000000001, zoomMin, zoomMax, r.height, dB,
+ int cb = GetWaveYPos( -v-.000000001, zoomMin, zoomMax, r.height, dB,
false, dBr, false) ;
if( ct <= cb || !mMirror ){
- int t = GetWaveYPosNew( v, zoomMin, zoomMax, r.height, dB,
+ int t = GetWaveYPos( v, zoomMin, zoomMax, r.height, dB,
true, dBr, false) ;
- int b = GetWaveYPosNew( -v, zoomMin, zoomMax, r.height, dB,
+ int b = GetWaveYPos( -v, zoomMin, zoomMax, r.height, dB,
true, dBr, false) ;
ct = (t + ct) / 2;
@@ -662,7 +666,7 @@ Cases:
}
}
- // In theses statement, remember we subtracted mOffset from t0
+ // In these statements, remember we subtracted mOffset from t0
if( t0 < mTrackEpsilon )
atStart = true;
if( (mTrackLen - t0) < mTrackEpsilon )
@@ -732,9 +736,17 @@ Cases:
mTrackLen += deltat;
}
else { // Case 10:
- mTrackLen = e->mTrackLen;
- mOffset = e->mOffset;
- //wxLogDebug(wxT("Case 10: mTrackLen %f mOffset %f t0 %f"), mTrackLen, mOffset, t0);
+ if( mTrackLen == 0 ) // creating a new envelope
+ {
+ mTrackLen = e->mTrackLen;
+ mOffset = e->mOffset;
+ //wxLogDebug(wxT("Case 10, new env/clip: mTrackLen %f mOffset %f t0 %f"), mTrackLen, mOffset, t0);
+ }
+ else
+ {
+ mTrackLen += e->mTrackLen;
+ //wxLogDebug(wxT("Case 10, paste into current env: mTrackLen %f mOffset %f t0 %f"), mTrackLen, mOffset, t0);
+ }
}
// Copy points from inside the selection
@@ -751,7 +763,12 @@ Cases:
e->Delete(0); // they were not there when we entered this
}
-void Envelope::RemoveUnneededPoints(double tolerence)
+// Deletes 'unneeded' points, starting from the left.
+// If 'time' is set and positive, just deletes points in a small region
+// around that value.
+// 'Unneeded' means that the envelope doesn't change by more than
+// 'tolerence' without the point being there.
+void Envelope::RemoveUnneededPoints(double time, double tolerence)
{
unsigned int len = mEnv.Count();
unsigned int i;
@@ -762,11 +779,26 @@ void Envelope::RemoveUnneededPoints(double tolerence)
for (i = 0; i < len; i++) {
when = mEnv[i]->t;
+ if(time >= 0)
+ {
+ if(fabs(when + mOffset - time) > 0.00025) // 2 samples at 8kHz, 11 at 44.1kHz
+ continue;
+ }
val = mEnv[i]->val;
Delete(i); // try it to see if it's doing anything
val1 = GetValue(when + mOffset);
if( fabs(val -val1) > tolerence )
+ {
Insert(when,val); // put it back, we needed it
+
+ //Insert may have modified instead of inserting, if two points were at the same time.
+ // in which case len needs to shrink i and len, because the array size decreased.
+ if(mEnv.Count()!=len)
+ {
+ len--;
+ i--;
+ }
+ }
else { // it made no difference so leave it out
len--;
i--;
@@ -837,15 +869,36 @@ void Envelope::GetPoints(double *bufferWhen,
// Although this renders the name a slight misnomer, a duplicate
// 'replaces' the current control point.
-// Envelopes start at zero and are offset by other things by mOffset.
-// This is worth remembering.
-// If you call 'Insert' from WaveClip, subtract mOffset from the time.
-// If you call it from Envelope, don't. Kind of makes sense. MJS.
+/** @brief Add a control point to the envelope
+ *
+ * Control point positions start at zero and are measured in seconds from the
+ * start of the envelope. The position of the envelope on the project-wide
+ * time scale is store in seconds in Envelope::mOffset.
+ * This is worth remembering.
+ * If you call Envelope::Insert() from WaveClip, or anywhere else outside the
+ * Envelope class that is using project timing, subtract the envelope's mOffset
+ * from the time.
+ * If you call Envelope::Insert() from within Envelope, don't subtract mOffset
+ * because you are working in relative time inside the envelope
+ * @param when the time in seconds when the envelope point should be created.
+ * @param value the envelope value to use at the given point.
+ * @return the index of the new envelope point within array of envelope points.
+ */
int Envelope::Insert(double when, double value)
{
// in debug builds, do a spot of argument checking
- wxASSERT(when <= (mTrackLen));
- wxASSERT(when >= 0);
+ if(when > mTrackLen)
+ {
+ wxString msg;
+ msg = wxString::Format(wxT("when %.20f mTrackLen %.20f diff %.20f"), when, mTrackLen, when-mTrackLen);
+ wxASSERT_MSG(when <= (mTrackLen), msg);
+ }
+ if(when < 0)
+ {
+ wxString msg;
+ msg = wxString::Format(wxT("when %.20f mTrackLen %.20f"), when);
+ wxASSERT_MSG(when >= 0, msg);
+ }
int len = mEnv.Count();
@@ -902,6 +955,7 @@ void Envelope::SetTrackLen(double trackLen)
delete mEnv[i];
mEnv.RemoveAt(i);
len--;
+ i--;
}
}
@@ -915,11 +969,11 @@ double Envelope::GetValue(double t) const
}
// 'X' is in pixels and relative to track.
-double Envelope::GetValueAtX( int x, wxRect & r, double h, double pps )
+double Envelope::GetValueAtX(int x, const wxRect & r, double h, double pps)
{
// Convert x to time.
double t = (x - r.x) / pps + h ;//-mOffset;
- return GetValue( t );
+ return GetValue(t);
}
@@ -935,8 +989,18 @@ void Envelope::GetValues(double *buffer, int bufferLen,
double tprev, vprev, tnext = 0, vnext, vstep = 0;
// in debug builds, do a spot of argument checking
- wxASSERT(t0 <= (mTrackLen));
- wxASSERT(t0 >= 0);
+ if(t0 > mTrackLen)
+ {
+ wxString msg;
+ msg = wxString::Format(wxT("t0 %.20f mTrackLen %.20f diff %.20f"), t0, mTrackLen, t0-mTrackLen);
+ wxASSERT_MSG(t0 <= mTrackLen, msg);
+ }
+ if(t0 < 0)
+ {
+ wxString msg;
+ msg = wxString::Format(wxT("t0 %.20f"), t0);
+ wxASSERT_MSG(t0 >= 0, msg);
+ }
for (int b = 0; b < bufferLen; b++) {
if (len <= 0) {
diff --git a/src/Envelope.h b/src/Envelope.h
index c9588a9..78bb908 100644
--- a/src/Envelope.h
+++ b/src/Envelope.h
@@ -95,7 +95,7 @@ class Envelope : public XMLTagHandler {
// Event Handlers
- void Draw(wxDC & dc, wxRect & r, double h, double pps, bool dB,
+ void Draw(wxDC & dc, const wxRect & r, double h, double pps, bool dB,
float zoomMin=-1.0, float zoomMax=1.0);
// Each ofthese returns true if parents needs to be redrawn
@@ -123,7 +123,7 @@ class Envelope : public XMLTagHandler {
void CopyFrom(const Envelope * e, double t0, double t1);
void Paste(double t0, Envelope *e);
void InsertSpace(double t0, double tlen);
- void RemoveUnneededPoints(double tolerence = 0.001);
+ void RemoveUnneededPoints(double time = -1, double tolerence = 0.001);
// Control
@@ -134,7 +134,7 @@ class Envelope : public XMLTagHandler {
/** \brief Get envelope value at time t */
double GetValue(double t) const;
/** \brief Get envelope value at pixel X */
- double GetValueAtX( int x, wxRect & r, double h, double pps);
+ double GetValueAtX(int x, const wxRect & r, double h, double pps);
/** \brief Get many envelope points at once.
*
diff --git a/src/Experimental.h b/src/Experimental.h
index 791d59c..58eb7d5 100644
--- a/src/Experimental.h
+++ b/src/Experimental.h
@@ -33,18 +33,8 @@
// Comment out the next two lines if you want to disable 'experimental theming'
// Work in progress, June-2008.
//#define EXPERIMENTAL_THEMING
+#if IS_BETA
#define EXPERIMENTAL_THEME_PREFS
-
-//The next few enable different kinds of label/wavetrack pairing.
-//You should probably only enable one at a time.
-//The next line enables a menu-based system
-//#define EXPERIMENTAL_STICKY_TRACKS
-//The next block enables a positional-based system.
-//LABEL_LINKING only links label tracks, while FULL_LINKING links wave and label tracks
-#define EXPERIMENTAL_POSITION_LINKING
-#ifdef EXPERIMENTAL_POSITION_LINKING
- #define EXPERIMENTAL_FULL_LINKING
- //#define EXPERIMENTAL_LABEL_LINKING
#endif
//Next line enables Mic monitoring at times when it was previously off.
@@ -56,16 +46,6 @@
//#define RIGHT_ALIGNED_TEXTBOXES
//#define EXPERIMENTAL_VOICE_DETECTION
-//uncomment this line to enable On-Demand loading of PCM files.
-//for now it is incomplete so it will load instantly but
-//the display of summary data will not be there (one can still see sample data if zoomed in)
-#define EXPERIMENTAL_ONDEMAND
-
-//FFmpeg integration. Some FFmpeg-related changes are NOT ifdef'ed,
-//as they are harmless (like - a few mockup methods in Import* classes)
-// To enable ffmpeg support #define USE_FFMPEG in config*.h, as for any other
-// optional importer library (windows users: edit win/configwin.h)
-
// Effect categorisation. Adds support for arranging effects in categories
// and displaying those categories as submenus in the Effect menu.
// This was a 2008 GSoC project that was making good progress at the half-way point
@@ -89,9 +69,25 @@
// A Frequency Grid for the Spectrum Log(f) & Find Notes modes
//#define EXPERIMENTAL_FFT_Y_GRID
-// AM, 22.Nov 2007:
-// Saves the default view mode for wave tracks.
-#define EXPERIMENTAL_SAVE_DEFAULT_VIEW
+// Andy Coder, 03.Mar 2009:
+// Allow keyboard seeking before initial playback position
+//#define EXPERIMENTAL_SEEK_BEHIND_CURSOR
+
+// Philip Van Baren 01 July 2009
+// Replace RealFFT() and PowerSpectrum function to use (faster) RealFFTf function
+#define EXPERIMENTAL_USE_REALFFTF
+
+// RBD, 1 Sep 2008
+// Enables MIDI Output of NoteTrack (MIDI) data during playback
+// USE_MIDI must be defined in order for EXPERIMENTAL_MIDI_OUT to work
+#ifdef USE_MIDI
+//#define EXPERIMENTAL_MIDI_OUT
+#endif
+
+// USE_MIDI must be defined in order for EXPERIMENTAL_SCOREALIGN to work
+#ifdef USE_MIDI
+//#define EXPERIMENTAL_SCOREALIGN
+#endif
#ifdef EXPERIMENTAL_FEATURES
// The first experimental feature is a notebook that adds
@@ -133,6 +129,9 @@ extern void AddPages( AudacityProject * pProj, GuiFactory & Factory, wxNotebo
#ifdef EXPERIMENTAL_AUDACITY_TESTER
#endif
+#define EXPERIMENTAL_LYRICS_WINDOW //vvv Vaughan, 2009-07-06
+#define EXPERIMENTAL_MIXER_BOARD //vvv Vaughan, 2009-07-07
+
#endif
// Indentation settings for Vim and Emacs and unique identifier for Arch, a
diff --git a/src/FFT.cpp b/src/FFT.cpp
index d9444b8..ab0bb34 100644
--- a/src/FFT.cpp
+++ b/src/FFT.cpp
@@ -108,6 +108,10 @@ void InitFFT()
}
}
+#ifdef EXPERIMENTAL_USE_REALFFTF
+#include "RealFFTf.h"
+#endif
+
void DeinitFFT()
{
if (gFFTBitTable) {
@@ -116,6 +120,10 @@ void DeinitFFT()
}
delete[] gFFTBitTable;
}
+#ifdef EXPERIMENTAL_USE_REALFFTF
+ // Deallocate any unused RealFFTf tables
+ CleanupFFT();
+#endif
}
inline int FastReverseBits(int i, int NumBits)
@@ -149,7 +157,7 @@ void FFT(int NumSamples,
if (!gFFTBitTable)
InitFFT();
- if (InverseTransform)
+ if (!InverseTransform)
angle_numerator = -angle_numerator;
NumBits = NumberOfBitsNeeded(NumSamples);
@@ -242,6 +250,37 @@ void FFT(int NumSamples,
void RealFFT(int NumSamples, float *RealIn, float *RealOut, float *ImagOut)
{
+#ifdef EXPERIMENTAL_USE_REALFFTF
+ // Remap to RealFFTf() function
+ int i;
+ HFFT hFFT = GetFFT(NumSamples);
+ float *pFFT = new float[NumSamples];
+ // Copy the data into the processing buffer
+ for(i=0; i<NumSamples; i++)
+ pFFT[i] = RealIn[i];
+
+ // Perform the FFT
+ RealFFTf(pFFT, hFFT);
+
+ // Copy the data into the real and imaginary outputs
+ for(i=1;i<(NumSamples/2);i++) {
+ RealOut[i]=pFFT[hFFT->BitReversed[i] ];
+ ImagOut[i]=pFFT[hFFT->BitReversed[i]+1];
+ }
+ // Handle the (real-only) DC and Fs/2 bins
+ RealOut[0] = pFFT[0];
+ RealOut[i] = pFFT[1];
+ ImagOut[0] = ImagOut[i] = 0;
+ // Fill in the upper half using symmetry properties
+ for(i++ ; i<NumSamples; i++) {
+ RealOut[i] = RealOut[NumSamples-i];
+ ImagOut[i] = -ImagOut[NumSamples-i];
+ }
+ delete [] pFFT;
+ ReleaseFFT(hFFT);
+
+#else
+
int Half = NumSamples / 2;
int i;
@@ -260,7 +299,7 @@ void RealFFT(int NumSamples, float *RealIn, float *RealOut, float *ImagOut)
float wtemp = float (sin(0.5 * theta));
float wpr = -2.0 * wtemp * wtemp;
- float wpi = float (sin(theta));
+ float wpi = -1.0 * float (sin(theta));
float wr = 1.0 + wpr;
float wi = wpi;
@@ -291,8 +330,49 @@ void RealFFT(int NumSamples, float *RealIn, float *RealOut, float *ImagOut)
delete[]tmpReal;
delete[]tmpImag;
+#endif EXPERIMENTAL_USE_REALFFTF
}
+#ifdef EXPERIMENTAL_USE_REALFFTF
+/*
+ * InverseRealFFT
+ *
+ * This function computes the inverse of RealFFT, above.
+ * The RealIn and ImagIn is assumed to be conjugate-symmetric
+ * and as a result the output is purely real.
+ * Only the first half of RealIn and ImagIn are used due to this
+ * symmetry assumption.
+ */
+void InverseRealFFT(int NumSamples, float *RealIn, float *ImagIn, float *RealOut)
+{
+ // Remap to RealFFTf() function
+ int i;
+ HFFT hFFT = GetFFT(NumSamples);
+ float *pFFT = new float[NumSamples];
+ // Copy the data into the processing buffer
+ for(i=0; i<(NumSamples/2); i++)
+ pFFT[2*i ] = RealIn[i];
+ if(ImagIn == NULL) {
+ for(i=0; i<(NumSamples/2); i++)
+ pFFT[2*i+1] = 0;
+ } else {
+ for(i=0; i<(NumSamples/2); i++)
+ pFFT[2*i+1] = ImagIn[i];
+ }
+ // Put the fs/2 component in the imaginary part of the DC bin
+ pFFT[1] = RealIn[i];
+
+ // Perform the FFT
+ InverseRealFFTf(pFFT, hFFT);
+
+ // Copy the data to the (purely real) output buffer
+ ReorderToTime(hFFT, pFFT, RealOut);
+
+ delete [] pFFT;
+ ReleaseFFT(hFFT);
+}
+#endif // EXPERIMENTAL_USE_REALFFTF
+
/*
* PowerSpectrum
*
@@ -307,6 +387,31 @@ void RealFFT(int NumSamples, float *RealIn, float *RealOut, float *ImagOut)
void PowerSpectrum(int NumSamples, float *In, float *Out)
{
+#ifdef EXPERIMENTAL_USE_REALFFTF
+ // Remap to RealFFTf() function
+ int i;
+ HFFT hFFT = GetFFT(NumSamples);
+ float *pFFT = new float[NumSamples];
+ // Copy the data into the processing buffer
+ for(i=0; i<NumSamples; i++)
+ pFFT[i] = In[i];
+
+ // Perform the FFT
+ RealFFTf(pFFT, hFFT);
+
+ // Copy the data into the real and imaginary outputs
+ for(i=1;i<NumSamples/2;i++) {
+ Out[i]= (pFFT[hFFT->BitReversed[i] ]*pFFT[hFFT->BitReversed[i] ])
+ + (pFFT[hFFT->BitReversed[i]+1]*pFFT[hFFT->BitReversed[i]+1]);
+ }
+ // Handle the (real-only) DC and Fs/2 bins
+ Out[0] = pFFT[0]*pFFT[0];
+ Out[i] = pFFT[1]*pFFT[1];
+ delete [] pFFT;
+ ReleaseFFT(hFFT);
+
+#else // EXPERIMENTAL_USE_REALFFTF
+
int Half = NumSamples / 2;
int i;
@@ -327,7 +432,7 @@ void PowerSpectrum(int NumSamples, float *In, float *Out)
float wtemp = float (sin(0.5 * theta));
float wpr = -2.0 * wtemp * wtemp;
- float wpi = float (sin(theta));
+ float wpi = -1.0 * float (sin(theta));
float wr = 1.0 + wpr;
float wi = wpi;
@@ -370,6 +475,7 @@ void PowerSpectrum(int NumSamples, float *In, float *Out)
delete[]tmpImag;
delete[]RealOut;
delete[]ImagOut;
+#endif // EXPERIMENTAL_USE_REALFFTF
}
/*
diff --git a/src/FFT.h b/src/FFT.h
index 1ccaa84..7dfe0c1 100644
--- a/src/FFT.h
+++ b/src/FFT.h
@@ -57,15 +57,27 @@ void PowerSpectrum(int NumSamples, float *In, float *Out);
/*
* Computes an FFT when the input data is real but you still
- * want complex data as output. The output arrays are half
- * the length of the input, and NumSamples must be a power of
- * two.
+ * want complex data as output. The output arrays are the
+ * same length as the input, but will be conjugate-symmetric
+ * NumSamples must be a power of two.
*/
void RealFFT(int NumSamples,
float *RealIn, float *RealOut, float *ImagOut);
/*
+ * Computes an Inverse FFT when the input data is conjugate symmetric
+ * so the output is purely real. NumSamples must be a power of
+ * two.
+ * Requires: EXPERIMENTAL_USE_REALFFTF
+ */
+#include "Experimental.h"
+#ifdef EXPERIMENTAL_USE_REALFFTF
+void InverseRealFFT(int NumSamples,
+ float *RealIn, float *ImagIn, float *RealOut);
+#endif
+
+/*
* Computes a FFT of complex input and returns complex output.
* Currently this is the only function here that supports the
* inverse transform as well.
@@ -111,9 +123,3 @@ void DeinitFFT();
//
// Local Variables:
// c-basic-offset: 3
-// indent-tabs-mode: nil
-// End:
-//
-// vim: et sts=3 sw=3
-// arch-tag: 91e23340-889b-4c2d-89b0-0173315a0b32
-
diff --git a/src/FFmpeg.cpp b/src/FFmpeg.cpp
index 7662280..7b0f088 100644
--- a/src/FFmpeg.cpp
+++ b/src/FFmpeg.cpp
@@ -4,7 +4,7 @@ Audacity: A Digital Audio Editor
FFmpeg.cpp
-Audacity(R) is copyright (c) 1999-2008 Audacity Team.
+Audacity(R) is copyright (c) 1999-2009 Audacity Team.
License: GPL v2. See License.txt.
******************************************************************//**
@@ -20,6 +20,8 @@ License: GPL v2. See License.txt.
#include "FFmpeg.h"
#include "AudacityApp.h"
+#include <wx/file.h>
+
#ifdef _DEBUG
#ifdef _MSC_VER
#undef THIS_FILE
@@ -100,7 +102,7 @@ void FFmpegStartup()
{
wxMessageBox(_("FFmpeg was configured in Preferences and successfully loaded before, \
\nbut this time Audacity failed to load it at startup. \
- \n\nYou may want to go back to Preferences > Import/Export and re-configure it."),
+ \n\nYou may want to go back to Preferences > Libraries and re-configure it."),
_("FFmpeg startup failed"));
}
}
@@ -154,6 +156,240 @@ void av_log_wx_callback(void* ptr, int level, const char* fmt, va_list vl)
wxLogMessage(wxT("%s: %s"),cpt.c_str(),printstring.c_str());
}
+//======================= Unicode aware uri protocol for FFmpeg
+// Code inspired from ffmpeg-users mailing list sample
+
+static int ufile_open(URLContext *h, const char *filename, int flags)
+{
+ wxFile *f;
+ wxFile::OpenMode mode;
+
+ f = new wxFile;
+ if (!f) {
+ return AVERROR(ENOMEM);
+ }
+
+ if (flags & URL_RDWR) {
+ mode = wxFile::read_write;
+ } else if (flags & URL_WRONLY) {
+ mode = wxFile::write;
+ } else {
+ mode = wxFile::read;
+ }
+
+ if (!f->Open((const wxChar *) filename, mode)) {
+ delete f;
+ return AVERROR(ENOENT);
+ }
+
+ h->priv_data = (void *)f;
+
+ return 0;
+}
+
+static int ufile_read(URLContext *h, unsigned char *buf, int size)
+{
+ //return (int) ((wxFile *) h->priv_data)->Read(buf, size);
+ static int totalret = 0;
+ int ret = (int) ((wxFile *) h->priv_data)->Read(buf, size);
+ totalret += ret;
+ return ret;
+}
+
+static int ufile_write(URLContext *h, unsigned char *buf, int size)
+{
+ return (int) ((wxFile *) h->priv_data)->Write(buf, size);
+}
+
+#if LIBAVFORMAT_VERSION_MAJOR >= 52
+static int64_t ufile_seek(URLContext *h, int64_t pos, int whence)
+#else
+static offset_t ufile_seek(URLContext *h, offset_t pos, int whence)
+#endif
+{
+ wxSeekMode mode;
+
+ switch (whence)
+ {
+ case (SEEK_SET):
+ mode = wxFromStart;
+ break;
+ case (SEEK_CUR):
+ mode = wxFromCurrent;
+ break;
+ case (SEEK_END):
+ mode = wxFromEnd;
+ break;
+ case (AVSEEK_SIZE):
+ return ((wxFile *) h->priv_data)->Length();
+ }
+
+ return ((wxFile *) h->priv_data)->Seek(pos, mode);
+}
+
+static int ufile_close(URLContext *h)
+{
+ wxFile *f = (wxFile *) h->priv_data;
+
+ if (f) {
+ f->Close();
+ delete f;
+ }
+
+ return 0;
+}
+
+URLProtocol ufile_protocol = {
+ "ufile",
+ ufile_open,
+ ufile_read,
+ ufile_write,
+ ufile_seek,
+ ufile_close,
+};
+
+// Open a file with a (possibly) Unicode filename
+int ufile_fopen(ByteIOContext **s, const wxString & name, int flags)
+{
+ URLContext *h;
+ int err;
+
+ // Open the file using our custom protocol and passing the (possibly) Unicode
+ // filename. This is playing a slight trick since our ufile_open() routine above
+ // knows that the "char *" name may actually be wide characters.
+ err = FFmpegLibsInst->url_open_protocol(&h, &ufile_protocol, (const char *) name.c_str(), flags);
+ if (err < 0) {
+ return err;
+ }
+
+ // Associate the file with a context
+ err = FFmpegLibsInst->url_fdopen(s, h);
+ if (err < 0) {
+ FFmpegLibsInst->url_close(h);
+ return err;
+ }
+
+ return 0;
+}
+
+
+// Size of probe buffer, for guessing file type from file contents
+#define PROBE_BUF_MIN 2048
+#define PROBE_BUF_MAX (1<<20)
+
+// Detect type of input file and open it if recognized. Routine
+// based on the av_open_input_file() libavformat function.
+int ufile_fopen_input(AVFormatContext **ic_ptr, wxString & name)
+{
+ wxFileName f(name);
+ wxCharBuffer fname;
+ const char *filename;
+ AVProbeData pd;
+ ByteIOContext *pb = NULL;
+ AVInputFormat *fmt = NULL;
+ AVInputFormat *fmt1;
+ int probe_size;
+ int err;
+
+ // Create a dummy file name using the extension from the original
+ f.SetName(wxT("ufile"));
+ fname = f.GetFullName().mb_str();
+ filename = (const char *) fname;
+
+ // Initialize probe data...go ahead and preallocate the maximum buffer size.
+ pd.filename = filename;
+ pd.buf_size = 0;
+ pd.buf = (unsigned char *) FFmpegLibsInst->av_malloc(PROBE_BUF_MAX + AVPROBE_PADDING_SIZE);
+ if (pd.buf == NULL) {
+ err = AVERROR_NOMEM;
+ goto fail;
+ }
+
+ // Open the file to prepare for probing
+ if ((err = ufile_fopen(&pb, name, URL_RDONLY)) < 0) {
+ goto fail;
+ }
+
+ for (probe_size = PROBE_BUF_MIN; probe_size <= PROBE_BUF_MAX && !fmt; probe_size <<= 1) {
+ int score_max = probe_size < PROBE_BUF_MAX ? AVPROBE_SCORE_MAX / 4 : 0;
+
+ // Read up to a "probe_size" worth of data
+ pd.buf_size = FFmpegLibsInst->get_buffer(pb, pd.buf, probe_size);
+
+ // Clear up to a "AVPROBE_PADDING_SIZE" worth of unused buffer
+ memset(pd.buf + pd.buf_size, 0, AVPROBE_PADDING_SIZE);
+
+ // Reposition file for succeeding scan
+ if (FFmpegLibsInst->url_fseek(pb, 0, SEEK_SET) < 0) {
+ err = AVERROR(EIO);
+ goto fail;
+ }
+
+ // Scan all input formats
+ fmt = NULL;
+ for (fmt1 = FFmpegLibsInst->av_iformat_next(NULL); fmt1 != NULL; fmt1 = FFmpegLibsInst->av_iformat_next(fmt1)) {
+ int score = 0;
+
+ // Ignore the ones that are not file based
+ if (fmt1->flags & AVFMT_NOFILE) {
+ continue;
+ }
+
+ // If the format can probe the file then try that first
+ if (fmt1->read_probe) {
+ score = fmt1->read_probe(&pd);
+ }
+ // Otherwize, resort to extension matching if available
+ else if (fmt1->extensions) {
+ if (FFmpegLibsInst->match_ext(filename, fmt1->extensions)) {
+ score = 50;
+ }
+ }
+
+ // Remember this format if it scored higher than a previous match
+ if (score > score_max) {
+ score_max = score;
+ fmt = fmt1;
+ }
+ else if (score == score_max) {
+ fmt = NULL;
+ }
+ }
+ }
+
+ // Didn't find a suitable format, so bail
+ if (!fmt) {
+ err = AVERROR_NOFMT;
+ goto fail;
+ }
+
+ // And finally, attempt to associate an input stream with the file
+ err = FFmpegLibsInst->av_open_input_stream(ic_ptr, pb, filename, fmt, NULL);
+ if (err) {
+ goto fail;
+ }
+
+ // Done with the probe buffer
+ FFmpegLibsInst->av_freep(&pd.buf);
+
+ return 0;
+
+fail:
+ if (pd.buf) {
+ FFmpegLibsInst->av_freep(&pd.buf);
+ }
+
+ if (pb) {
+ FFmpegLibsInst->url_fclose(pb);
+ }
+
+ *ic_ptr = NULL;
+
+ return err;
+}
+
+/*******************************************************/
+
class FFmpegNotFoundDialog;
//----------------------------------------------------------------------------
@@ -555,19 +791,34 @@ bool FFmpegLibs::InitLibs(wxString libpath_format, bool showerr)
INITDYN(avformat,av_iformat_next);
INITDYN(avformat,av_oformat_next);
INITDYN(avformat,av_set_parameters);
+#if LIBAVFORMAT_VERSION_MAJOR < 53
+ INITDYN(avformat,register_protocol);
+ av_register_protocol = register_protocol;
+#else
+ INITDYN(avformat,av_register_protocol);
+#endif
+ INITDYN(avformat,url_open_protocol);
+ INITDYN(avformat,url_fdopen);
+ INITDYN(avformat,url_close);
INITDYN(avformat,url_fopen);
+ INITDYN(avformat,url_fseek);
INITDYN(avformat,url_fclose);
INITDYN(avformat,url_fsize);
INITDYN(avformat,av_new_stream);
INITDYN(avformat,av_alloc_format_context);
INITDYN(avformat,guess_format);
INITDYN(avformat,av_write_trailer);
- INITDYN(avformat,av_init_packet);
INITDYN(avformat,av_codec_get_id);
INITDYN(avformat,av_codec_get_tag);
INITDYN(avformat,avformat_version);
+ INITDYN(avformat,av_open_input_file);
+ INITDYN(avformat,av_open_input_stream);
+ INITDYN(avformat,get_buffer);
+ INITDYN(avformat,match_ext);
INITDYN(codec,avcodec_init);
+ INITDYN(codec,av_init_packet);
+ INITDYN(codec,av_free_packet);
INITDYN(codec,avcodec_find_encoder);
INITDYN(codec,avcodec_find_encoder_by_name);
INITDYN(codec,avcodec_find_decoder);
@@ -592,15 +843,16 @@ bool FFmpegLibs::InitLibs(wxString libpath_format, bool showerr)
INITDYN(util,av_free);
INITDYN(util,av_log_set_callback);
INITDYN(util,av_log_default_callback);
- INITDYN(util,av_fifo_init);
+ INITDYN(util,av_fifo_alloc);
INITDYN(util,av_fifo_free);
- INITDYN(util,av_fifo_read);
+ INITDYN(util,av_fifo_generic_read);
INITDYN(util,av_fifo_size);
INITDYN(util,av_fifo_generic_write);
- INITDYN(util,av_fifo_realloc);
+ INITDYN(util,av_fifo_realloc2);
INITDYN(util,av_malloc);
INITDYN(util,av_freep);
INITDYN(util,av_rescale_q);
+ INITDYN(util,av_strstart);
INITDYN(util,avutil_version);
//FFmpeg initialization
@@ -633,6 +885,9 @@ bool FFmpegLibs::InitLibs(wxString libpath_format, bool showerr)
wxLogMessage(wxT("Version mismatch! Libraries are unusable."));
return false;
}
+
+ av_register_protocol(&ufile_protocol);
+
return true;
}
diff --git a/src/FFmpeg.h b/src/FFmpeg.h
index 9593fb2..15bf171 100644
--- a/src/FFmpeg.h
+++ b/src/FFmpeg.h
@@ -4,7 +4,7 @@ Audacity: A Digital Audio Editor
FFmpeg.h
-Audacity(R) is copyright (c) 1999-2008 Audacity Team.
+Audacity(R) is copyright (c) 1999-2009 Audacity Team.
License: GPL v2. See License.txt.
******************************************************************//**
@@ -31,6 +31,10 @@ Describes shared object that is used to access FFmpeg libraries.
#if defined(USE_FFMPEG)
extern "C" {
+ // Include errno.h before the ffmpeg includes since they depend on
+ // knowing the value of EINVAL...see bottom of avcodec.h. Not doing
+ // so will produce positive error returns when they should be < 0.
+ #include <errno.h>
#include <libavcodec/avcodec.h>
#include <libavformat/avformat.h>
#include <libavutil/fifo.h>
@@ -68,6 +72,12 @@ wxString GetFFmpegVersion(wxWindow *parent);
/* from here on in, this stuff only applies when ffmpeg is available */
#if defined(USE_FFMPEG)
+int ufile_fopen(ByteIOContext **s, const wxString & name, int flags);
+
+#if defined(__WXMSW__)
+int modify_file_url_to_utf8(char* buffer, size_t buffer_size, const char* url);
+int modify_file_url_to_utf8(char* buffer, size_t buffer_size, const wchar_t* url);
+#endif
//----------------------------------------------------------------------------
// Attempt to load and enable/disable FFmpeg at startup
@@ -98,10 +108,10 @@ public:
S.StartVerticalLay(true);
{
S.AddFixedText(_(
-"Audacity attempted to use FFmpeg libraries to import an audio file,\n\
-but libraries were not found.\n\
-If you want to use the FFmpeg import feature, please go to Preferences->Import/Export\n\
-and tell Audacity where to look for the libraries."
+"Audacity attempted to use FFmpeg to import an audio file,\n\
+but the libraries were not found.\n\n\
+To use FFmpeg import, go to Preferences > Libraries\n\
+to download or locate the FFmpeg libraries."
));
int dontShowDlg = 0;
@@ -175,7 +185,14 @@ public:
int (*av_get_bits_per_sample_format) (enum SampleFormat sample_fmt);
void* (*av_fast_realloc) (void *ptr, unsigned int *size, unsigned int min_size);
int (*av_open_input_file) (AVFormatContext **ic_ptr, const char *filename, AVInputFormat *fmt, int buf_size, AVFormatParameters *ap);
+ int (*av_open_input_stream) (AVFormatContext **ic_ptr, ByteIOContext *pb, const char *filename, AVInputFormat *fmt, AVFormatParameters *ap);
+ int (*get_buffer) (ByteIOContext *s, unsigned char *buf, int size);
void (*av_register_all) (void);
+#if LIBAVFORMAT_VERSION_MAJOR < 53
+ int (*register_protocol) (URLProtocol *protocol);
+#endif
+ int (*av_register_protocol) (URLProtocol *protocol);
+ int (*av_strstart) (const char *str, const char *pfx, const char **ptr);
int (*av_find_stream_info) (AVFormatContext *ic);
int (*av_read_frame) (AVFormatContext *s, AVPacket *pkt);
int (*av_seek_frame) (AVFormatContext *s, int stream_index, int64_t timestamp, int flags);
@@ -186,22 +203,31 @@ public:
AVOutputFormat* (*av_oformat_next) (AVOutputFormat *f);
AVCodec* (*av_codec_next) (AVCodec *c);
int (*av_set_parameters) (AVFormatContext *s, AVFormatParameters *ap);
+ int (*url_open_protocol) (URLContext **puc, struct URLProtocol *up, const char *filename, int flags);
+ int (*url_fdopen) (ByteIOContext **s, URLContext *h);
+ int (*url_close) (URLContext *h);
int (*url_fopen) (ByteIOContext **s, const char *filename, int flags);
+ int64_t (*url_fseek) (ByteIOContext *s, int64_t offset, int whence);
int (*url_fclose) (ByteIOContext *s);
int (*url_fsize) (ByteIOContext *s);
AVStream* (*av_new_stream) (AVFormatContext *s, int id);
AVFormatContext* (*av_alloc_format_context) (void);
AVOutputFormat* (*guess_format) (const char *short_name, const char *filename, const char *mime_type);
+ int (*match_ext) (const char *filename, const char *extensions);
int (*av_write_trailer) (AVFormatContext *s);
int (*av_interleaved_write_frame) (AVFormatContext *s, AVPacket *pkt);
int (*av_write_frame) (AVFormatContext *s, AVPacket *pkt);
void (*av_init_packet) (AVPacket *pkt);
- int (*av_fifo_init) (AVFifoBuffer *f, int size);
+ void (*av_free_packet) (AVPacket *pkt);
+ //int (*av_fifo_init) (AVFifoBuffer *f, int size);
+ AVFifoBuffer* (*av_fifo_alloc) (unsigned int size);
void (*av_fifo_free) (AVFifoBuffer *f);
- int (*av_fifo_read) (AVFifoBuffer *f, uint8_t *buf, int buf_size);
+// int (*av_fifo_read) (AVFifoBuffer *f, uint8_t *buf, int buf_size);
+ int (*av_fifo_generic_read) (AVFifoBuffer *f, uint8_t *buf, int buf_size, int (*func)(void*, void*, int));
int (*av_fifo_size) (AVFifoBuffer *f);
int (*av_fifo_generic_write) (AVFifoBuffer *f, void *src, int size, int (*func)(void*, void*, int));
- void (*av_fifo_realloc) (AVFifoBuffer *f, unsigned int size);
+// void (*av_fifo_realloc) (AVFifoBuffer *f, unsigned int size);
+ int (*av_fifo_realloc2) (AVFifoBuffer *f, unsigned int size);
void* (*av_malloc) (unsigned int size);
void (*av_freep) (void *ptr);
int64_t (*av_rescale_q) (int64_t a, AVRational bq, AVRational cq);
@@ -356,6 +382,9 @@ FFmpegLibs *PickFFmpegLibs();
///! anymore, or just decrements it's reference count
void DropFFmpegLibs();
+int ufile_fopen(ByteIOContext **s, const wxString & name, int flags);
+int ufile_fopen_input(AVFormatContext **ic_ptr, wxString & name);
+
#endif // USE_FFMPEG
#endif // __AUDACITY_FFMPEG__
diff --git a/src/FileFormats.h b/src/FileFormats.h
index 0a2caf3..1ce7caa 100644
--- a/src/FileFormats.h
+++ b/src/FileFormats.h
@@ -29,7 +29,8 @@ int sf_num_headers();
*
* Uses SFC_GET_FORMAT_MAJOR in the sf_command() interface. Resulting C string
* from libsndfile is converted to a wxString
- * @param format The libsndfile format number for the container format required
+ * @param format_num The libsndfile format number for the container format
+ * required
*/
wxString sf_header_index_name(int format_num);
@@ -61,7 +62,7 @@ wxString sf_header_name(int format);
*
* Do sf_header_name() then truncate the string at the first space in the name
* to get just the first word of the format name.
- * @Param format the libsndfile format to get the name for (only the container
+ * @param format the libsndfile format to get the name for (only the container
* part is used) */
wxString sf_header_shortname(int format);
/** @brief Get the most common file extension for the given format
@@ -73,10 +74,10 @@ wxString sf_header_shortname(int format);
wxString sf_header_extension(int format);
/** @brief Get the string name of the specified data encoding
*
- * AND format with SF_FORMAT_SUBMASK to get only the data encoding and
+ * AND encoding_num with SF_FORMAT_SUBMASK to get only the data encoding and
* then use SFC_GET_FORMAT_INFO to get the description
- * @param format the libsndfile format to get the name for (only the data
- * encoding is used) */
+ * @param encoding_num the libsndfile encoding to get the name for (only the
+ * data encoding is used) */
wxString sf_encoding_name(int encoding_num);
//
diff --git a/src/FileNames.cpp b/src/FileNames.cpp
index 3b00b59..a78b3ca 100644
--- a/src/FileNames.cpp
+++ b/src/FileNames.cpp
@@ -118,14 +118,19 @@ wxString FileNames::DataDir()
wxString FileNames::HtmlHelpDir()
{
- // FIX-ME uses DataDir(). Should use directory where we expect help to be.
- // Perhaps it's same directory as Audacity.exe?
- return FileNames::MkDir( wxFileName( DataDir(), wxT("Help") ).GetFullPath() );
+ // Use the Audacity.exe directory as a base (on Windows, others elsewhere)
+ wxString exeDir = wxStandardPaths::Get().GetDataDir();
+ return FileNames::MkDir( wxFileName( exeDir+wxT("/help/manual"), wxEmptyString ).GetFullPath() );
}
-wxString FileNames::HtmlHelpIndexFile()
+wxString FileNames::HtmlHelpIndexFile(bool quick)
{
- return wxFileName( HtmlHelpDir(), wxT("index.htm") ).GetFullPath();
+ wxString htmlHelpIndex;
+ if(quick)
+ htmlHelpIndex = wxFileName( HtmlHelpDir(), wxT("quick_help.html") ).GetFullPath();
+ else
+ htmlHelpIndex = wxFileName( HtmlHelpDir(), wxT("index.html") ).GetFullPath();
+ return htmlHelpIndex;
}
wxString FileNames::ChainDir()
diff --git a/src/FileNames.h b/src/FileNames.h
index d5ae833..ecff0c1 100644
--- a/src/FileNames.h
+++ b/src/FileNames.h
@@ -14,6 +14,7 @@
#include <wx/string.h>
class wxFileName;
+class wxArrayString;
// Uh, this is really a namespace rather than a class,
// since all the functions are static.
@@ -34,7 +35,7 @@ public:
static wxString DataDir();
static wxString AutoSaveDir();
static wxString HtmlHelpDir();
- static wxString HtmlHelpIndexFile();
+ static wxString HtmlHelpIndexFile(bool quick);
static wxString ChainDir();
static wxString NRPDir();
static wxString NRPFile();
diff --git a/src/FreqWindow.cpp b/src/FreqWindow.cpp
index 474d72f..41ad6c1 100644
--- a/src/FreqWindow.cpp
+++ b/src/FreqWindow.cpp
@@ -68,6 +68,9 @@ the mouse around.
#include "FFT.h"
#include "Internat.h"
#include "PitchName.h"
+#include "Prefs.h"
+#include "Project.h"
+#include "WaveClip.h"
#include "Theme.h"
#include "AllThemeResources.h"
@@ -80,11 +83,11 @@ enum {
FreqAlgChoiceID,
FreqSizeChoiceID,
FreqFuncChoiceID,
- FreqAxisChoiceID
+ FreqAxisChoiceID,
+ ReplotButtonID,
+ GridOnOffID
};
-FreqWindow *gFreqWindow = NULL;
-
// These specify the minimum plot window width
#define FREQ_WINDOW_WIDTH 480
@@ -92,15 +95,24 @@ FreqWindow *gFreqWindow = NULL;
void InitFreqWindow(wxWindow * parent)
{
- if (gFreqWindow)
+ AudacityProject* p = GetActiveProject();
+ if (!p)
return;
- wxPoint where;
+ if(!p->mFreqWindow)
+ {
+ wxPoint where;
- where.x = 150;
- where.y = 150;
+ where.x = 150;
+ where.y = 150;
- gFreqWindow = new FreqWindow(parent, -1, _("Frequency Analysis"), where);
+ p->mFreqWindow = new FreqWindow(parent, -1, _("Frequency Analysis"), where);
+ }
+ wxCommandEvent dummy;
+ p->mFreqWindow->OnReplot(dummy);
+ p->mFreqWindow->Show(true);
+ p->mFreqWindow->Raise();
+ p->mFreqWindow->SetFocus();
}
// FreqWindow
@@ -114,6 +126,8 @@ BEGIN_EVENT_TABLE(FreqWindow, wxDialog)
EVT_CHOICE(FreqSizeChoiceID, FreqWindow::OnSizeChoice)
EVT_CHOICE(FreqFuncChoiceID, FreqWindow::OnFuncChoice)
EVT_CHOICE(FreqAxisChoiceID, FreqWindow::OnAxisChoice)
+ EVT_BUTTON(ReplotButtonID, FreqWindow::OnReplot)
+ EVT_CHECKBOX(GridOnOffID, FreqWindow::OnGridOnOff)
END_EVENT_TABLE()
FreqWindow::FreqWindow(wxWindow * parent, wxWindowID id,
@@ -125,6 +139,9 @@ FreqWindow::FreqWindow(wxWindow * parent, wxWindowID id,
{
mMouseX = 0;
mMouseY = 0;
+ mRate = 0;
+ mDataLen = 0;
+ mBuffer = NULL;
mFreqFont = wxFont(fontSize, wxSWISS, wxNORMAL, wxNORMAL);
mArrowCursor = new wxCursor(wxCURSOR_ARROW);
@@ -133,6 +150,15 @@ FreqWindow::FreqWindow(wxWindow * parent, wxWindowID id,
mLeftMargin = 40;
mBottomMargin = 20;
+ gPrefs->Read(wxT("/FreqWindow/DrawGrid"), &mDrawGrid, true);
+ gPrefs->Read(wxT("/FreqWindow/SizeChoice"), &mSize, 2);
+ gPrefs->Read(wxT("/FreqWindow/AlgChoice"), &mAlg, 0);
+ gPrefs->Read(wxT("/FreqWindow/FuncChoice"), &mFunc, 3);
+ gPrefs->Read(wxT("/FreqWindow/AxisChoice"), &mAxis, 0);
+ gPrefs->Read(wxT("/GUI/EnvdBRange"), &dBRange, ENV_DB_RANGE);
+ if(dBRange < 90.)
+ dBRange = 90.;
+
mFreqPlot = new FreqPlot(this, 0,
wxDefaultPosition, wxDefaultSize);
@@ -153,7 +179,7 @@ FreqWindow::FreqWindow(wxWindow * parent, wxWindowID id,
5, algChoiceStrings);
mAlgChoice->SetName(_("Algorithm"));
- mAlgChoice->SetSelection(0);
+ mAlgChoice->SetSelection(mAlg);
wxString sizeChoiceStrings[8] = { wxT("128"),
wxT("256"),
@@ -172,7 +198,7 @@ FreqWindow::FreqWindow(wxWindow * parent, wxWindowID id,
8, sizeChoiceStrings);
mSizeChoice->SetName(_("Size"));
- mSizeChoice->SetSelection(2);
+ mSizeChoice->SetSelection(mSize);
int f = NumWindowFuncs();
@@ -190,7 +216,7 @@ FreqWindow::FreqWindow(wxWindow * parent, wxWindowID id,
f, funcChoiceStrings);
mFuncChoice->SetName(_("Function"));
- mFuncChoice->SetSelection(3);
+ mFuncChoice->SetSelection(mFunc);
delete[]funcChoiceStrings;
wxString axisChoiceStrings[2] = { _("Linear frequency"),
@@ -204,18 +230,28 @@ FreqWindow::FreqWindow(wxWindow * parent, wxWindowID id,
2, axisChoiceStrings);
mAxisChoice->SetName(_("Axis"));
- mAxisChoice->SetSelection(0);
+ mAxisChoice->SetSelection(mAxis);
- mLogAxis = false;
+ mLogAxis = mAxis?true:false;
mExportButton = new wxButton(this, FreqExportButtonID,
_("&Export..."));
mExportButton->SetName(_("Export"));
+ mReplotButton = new wxButton(this, ReplotButtonID,
+ _("&Replot"));
+ mReplotButton->SetName(_("Replot"));
+
mCloseButton = new wxButton(this, wxID_CANCEL,
_("Close"));
mCloseButton->SetName(_("Close"));
+ mGridOnOff = new wxCheckBox(this, GridOnOffID, _("Grids"),
+ wxDefaultPosition, wxDefaultSize,
+ wxALIGN_RIGHT);
+ mGridOnOff->SetName(_("Grids"));
+ mGridOnOff->SetValue(mDrawGrid);
+
#ifndef TARGET_CARBON
mCloseButton->SetDefault();
mCloseButton->SetFocus();
@@ -275,10 +311,11 @@ FreqWindow::FreqWindow(wxWindow * parent, wxWindowID id,
vRuler = new RulerPanel(this, wxID_ANY);
vRuler->ruler.SetBounds(0, 0, 100, 100); // Ruler can't handle small sizes
vRuler->ruler.SetOrientation(wxVERTICAL);
- vRuler->ruler.SetRange(10.0, -90.0);
+ vRuler->ruler.SetRange(10.0, -dBRange);
vRuler->ruler.SetFormat(Ruler::LinearDBFormat);
vRuler->ruler.SetUnits(_("dB"));
- vRuler->ruler.SetLabelEdges(true);
+ vRuler->ruler.SetLabelEdges(false);
+
int w, h;
vRuler->ruler.GetMaxSize(&w, NULL);
vRuler->SetSize(wxSize(w, 150)); // height needed for wxGTK
@@ -306,6 +343,8 @@ FreqWindow::FreqWindow(wxWindow * parent, wxWindowID id,
vs->Add( 1, 5, 0 );
+ wxFlexGridSizer *gs = new wxFlexGridSizer( 2 );
+
hs = new wxBoxSizer( wxHORIZONTAL );
hs->Add( algLabel, 0, wxALIGN_CENTER | wxLEFT | wxRIGHT, 5 );
hs->Add( mAlgChoice, 0, wxALIGN_CENTER | wxLEFT | wxRIGHT, 5 );
@@ -313,7 +352,8 @@ FreqWindow::FreqWindow(wxWindow * parent, wxWindowID id,
hs->Add( mSizeChoice, 0, wxALIGN_CENTER | wxLEFT | wxRIGHT, 5 );
hs->Add( 10, 1, 0 );
hs->Add( mExportButton, 0, wxALIGN_CENTER | wxALIGN_RIGHT | wxLEFT | wxRIGHT, 5 );
- vs->Add( hs, 0, wxALIGN_CENTER_HORIZONTAL | wxLEFT | wxRIGHT | wxBOTTOM, 5 );
+ gs->Add( hs, 0, wxALIGN_CENTER_HORIZONTAL | wxLEFT | wxRIGHT , 5 );
+ gs->Add( mReplotButton, 0, wxALIGN_CENTER | wxALIGN_RIGHT | wxLEFT | wxRIGHT | wxBOTTOM, 5 );
hs = new wxBoxSizer( wxHORIZONTAL );
hs->Add( funcLabel, 0, wxALIGN_CENTER | wxLEFT | wxRIGHT, 5 );
@@ -322,7 +362,9 @@ FreqWindow::FreqWindow(wxWindow * parent, wxWindowID id,
hs->Add( mAxisChoice, 0, wxALIGN_CENTER | wxLEFT | wxRIGHT, 5 );
hs->Add( 10, 1, 0 );
hs->Add( mCloseButton, 0, wxALIGN_CENTER | wxALIGN_RIGHT | wxLEFT | wxRIGHT, 5 );
- vs->Add( hs, 0, wxALIGN_CENTER_HORIZONTAL | wxLEFT | wxRIGHT | wxBOTTOM, 5 );
+ gs->Add( hs, 0, wxALIGN_CENTER_HORIZONTAL | wxLEFT | wxRIGHT | wxBOTTOM, 5 );
+ gs->Add( mGridOnOff, 0, wxALIGN_CENTER | wxALIGN_RIGHT | wxLEFT | wxRIGHT, 5 );
+ vs->Add( gs, 0, wxEXPAND | wxBOTTOM, 0 );
vs->Add( mInfo, 0, wxEXPAND | wxBOTTOM, 0 );
@@ -343,7 +385,73 @@ FreqWindow::~FreqWindow()
delete mArrowCursor;
delete mCrossCursor;
if (mData)
- delete[]mData;
+ delete[] mData;
+ if (mBuffer)
+ delete[] mBuffer;
+ if (mProcessed)
+ delete[] mProcessed;
+}
+
+void FreqWindow::GetAudio()
+{
+ int selcount = 0;
+ int i;
+ bool warning = false;
+ AudacityProject *p = GetActiveProject();
+ TrackListIterator iter(p->GetTracks());
+ Track *t = iter.First();
+ while (t) {
+ if (t->GetSelected() && t->GetKind() == Track::Wave) {
+ WaveTrack *track = (WaveTrack *)t;
+ if (selcount==0) {
+ mRate = track->GetRate();
+ sampleCount start, end;
+ start = track->TimeToLongSamples(p->mViewInfo.sel0);
+ end = track->TimeToLongSamples(p->mViewInfo.sel1);
+ mDataLen = (sampleCount)(end - start);
+ if (mDataLen > 10485760) {
+ warning = true;
+ mDataLen = 10485760;
+ }
+ if (mBuffer) {
+ delete [] mBuffer;
+ }
+ mBuffer = new float[mDataLen];
+ track->Get((samplePtr)mBuffer, floatSample, start, mDataLen);
+ }
+ else {
+ if (track->GetRate() != mRate) {
+ wxMessageBox(_("To plot the spectrum, all selected tracks must be the same sample rate."));
+ delete[] mBuffer;
+ mBuffer = NULL;
+ return;
+ }
+ sampleCount start;
+ start = track->TimeToLongSamples(p->mViewInfo.sel0);
+ float *buffer2 = new float[mDataLen];
+ track->Get((samplePtr)buffer2, floatSample, start, mDataLen);
+ for(i=0; i<mDataLen; i++)
+ mBuffer[i] += buffer2[i];
+ delete[] buffer2;
+ }
+ selcount++;
+ }
+ t = iter.Next();
+ }
+
+ if (selcount == 0)
+ return;
+
+ if (selcount > 1)
+ for(i=0; i<mDataLen; i++)
+ mBuffer[i] /= selcount;
+
+ if (warning) {
+ wxString msg;
+ msg.Printf(_("Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."),
+ (mDataLen / mRate));
+ wxMessageBox(msg);
+ }
}
void FreqWindow::OnSize(wxSizeEvent & event)
@@ -485,7 +593,7 @@ void FreqWindow::DrawPlot()
lineheight = r.height - 2;
if (ynorm > 0.0)
- memDC.DrawLine(r.x + 1 + i, r.y + r.height - 1 - lineheight,
+ AColor::Line(memDC, r.x + 1 + i, r.y + r.height - 1 - lineheight,
r.x + 1 + i, r.y + r.height - 1);
if (mLogAxis)
@@ -499,10 +607,15 @@ void FreqWindow::DrawPlot()
memDC.SetBrush(*wxTRANSPARENT_BRUSH);
memDC.DrawRectangle(r);
+ if(mDrawGrid)
+ {
+ hRuler->ruler.DrawGrid(memDC, r.height, true, true, 1, 1);
+ vRuler->ruler.DrawGrid(memDC, r.width, true, true, 1, 1);
+ }
+
memDC.SelectObject( wxNullBitmap );
mBitmap->SetMask( new wxMask( *mBitmap, wxColour(254, 254, 254) ) );
-
}
@@ -758,7 +871,7 @@ void FreqWindow::PlotPaint(wxPaintEvent & evt)
px = int ((bestpeak - xMin) * width / (xMax - xMin));
dc.SetPen(wxPen(wxColour(160,160,160), 1, wxSOLID));
- dc.DrawLine(r.x + 1 + px, r.y, r.x + 1 + px, r.y + r.height);
+ AColor::Line(dc, r.x + 1 + px, r.y, r.x + 1 + px, r.y + r.height);
// print out info about the cursor location
@@ -779,8 +892,8 @@ void FreqWindow::PlotPaint(wxPaintEvent & evt)
const wxChar *pp;
if (alg == 0) {
- xpitch = PitchName_Absolute(Freq2Pitch(xPos));
- peakpitch = PitchName_Absolute(Freq2Pitch(bestpeak));
+ xpitch = PitchName_Absolute(FreqToMIDInoteNumber(xPos));
+ peakpitch = PitchName_Absolute(FreqToMIDInoteNumber(bestpeak));
xp = xpitch.c_str();
pp = peakpitch.c_str();
@@ -789,8 +902,8 @@ void FreqWindow::PlotPaint(wxPaintEvent & evt)
int (value + 0.5), int (bestpeak + 0.5),
pp, bestValue);
} else if (xPos > 0.0 && bestpeak > 0.0) {
- xpitch = PitchName_Absolute(Freq2Pitch(1.0 / xPos));
- peakpitch = PitchName_Absolute(Freq2Pitch(1.0 / bestpeak));
+ xpitch = PitchName_Absolute(FreqToMIDInoteNumber(1.0 / xPos));
+ peakpitch = PitchName_Absolute(FreqToMIDInoteNumber(1.0 / bestpeak));
xp = xpitch.c_str();
pp = peakpitch.c_str();
info.Printf(_("Cursor: %.4f sec (%d Hz) (%s) = %f, Peak: %.4f sec (%d Hz) (%s) = %.3f"),
@@ -817,19 +930,28 @@ void FreqWindow::OnCloseWindow(wxCloseEvent & WXUNUSED(event))
void FreqWindow::OnCloseButton(wxCommandEvent & WXUNUSED(event))
{
+ gPrefs->Write(wxT("/FreqWindow/DrawGrid"), mDrawGrid);
+ gPrefs->Write(wxT("/FreqWindow/SizeChoice"), mSizeChoice->GetSelection());
+ gPrefs->Write(wxT("/FreqWindow/AlgChoice"), mAlgChoice->GetSelection());
+ gPrefs->Write(wxT("/FreqWindow/FuncChoice"), mFuncChoice->GetSelection());
+ gPrefs->Write(wxT("/FreqWindow/AxisChoice"), mAxisChoice->GetSelection());
this->Show(FALSE);
}
-void FreqWindow::Plot(int len, float *data, double rate)
+void FreqWindow::Plot()
{
- mRate = rate;
- mDataLen = len;
- if (mData)
+ if (mData) {
delete[]mData;
- mData = new float[len];
- for (int i = 0; i < len; i++)
- mData[i] = data[i];
+ mData = NULL;
+ }
+
+ if (mBuffer) {
+ mData = new float[mDataLen];
+ for (int i = 0; i < mDataLen; i++)
+ mData[i] = mBuffer[i];
+ }
Recalc();
+
wxSizeEvent dummy;
OnSize( dummy );
}
@@ -882,6 +1004,15 @@ void FreqWindow::Recalc()
for(int i=0; i<mWindowSize; i++)
win[i] = 1.0;
WindowFunc(windowFunc, mWindowSize, win);
+ // Scale window such that an amplitude of 1.0 in the time domain
+ // shows an amplitude of 0dB in the frequency domain
+ double wss = 0;
+ for(int i=0; i<mWindowSize; i++)
+ wss += win[i];
+ if(wss > 0)
+ wss = 4.0 / (wss*wss);
+ else
+ wss = 1.0;
int start = 0;
int windows = 0;
@@ -902,8 +1033,11 @@ void FreqWindow::Recalc()
case 3: // Autocorrelation, Cuberoot AC or Enhanced AC
// Take FFT
+#ifdef EXPERIMENTAL_USE_REALFFTF
+ RealFFT(mWindowSize, in, out, out2);
+#else
FFT(mWindowSize, false, in, NULL, out, out2);
-
+#endif
// Compute power
for (i = 0; i < mWindowSize; i++)
in[i] = (out[i] * out[i]) + (out2[i] * out2[i]);
@@ -920,7 +1054,11 @@ void FreqWindow::Recalc()
in[i] = pow(in[i], 1.0f / 3.0f);
}
// Take FFT
+#ifdef EXPERIMENTAL_USE_REALFFTF
+ RealFFT(mWindowSize, in, out, out2);
+#else
FFT(mWindowSize, false, in, NULL, out, out2);
+#endif
// Take real part of result
for (i = 0; i < half; i++)
@@ -928,20 +1066,30 @@ void FreqWindow::Recalc()
break;
case 4: // Cepstrum
+#ifdef EXPERIMENTAL_USE_REALFFTF
+ RealFFT(mWindowSize, in, out, out2);
+#else
FFT(mWindowSize, false, in, NULL, out, out2);
+#endif
// Compute log power
+ // Set a sane lower limit assuming maximum time amplitude of 1.0
float power;
+ float minpower = 1e-20*mWindowSize*mWindowSize;
for (i = 0; i < mWindowSize; i++)
{
power = (out[i] * out[i]) + (out2[i] * out2[i]);
- if(power <= 0.)
- in[i] = -100000.;
+ if(power < minpower)
+ in[i] = log(minpower);
else
- in[i] = log((out[i] * out[i]) + (out2[i] * out2[i]));
+ in[i] = log(power);
}
// Take IFFT
+#ifdef EXPERIMENTAL_USE_REALFFTF
+ InverseRealFFT(mWindowSize, in, NULL, out);
+#else
FFT(mWindowSize, true, in, NULL, out, out2);
+#endif
// Take real part of result
for (i = 0; i < half; i++)
@@ -955,21 +1103,26 @@ void FreqWindow::Recalc()
}
switch (alg) {
+ double scale;
case 0: // Spectrum
// Convert to decibels
mYMin = 1000000.;
mYMax = -1000000.;
+ scale = wss / (double)windows;
for (i = 0; i < half; i++)
{
- mProcessed[i] = 10 * log10(mProcessed[i] / mWindowSize / windows);
+ mProcessed[i] = 10 * log10(mProcessed[i] * scale);
if(mProcessed[i] > mYMax)
mYMax = mProcessed[i];
else if(mProcessed[i] < mYMin)
mYMin = mProcessed[i];
}
- if(mYMin < -90.)
- mYMin = -90.;
- mYMax += .5;
+ if(mYMin < -dBRange)
+ mYMin = -dBRange;
+ if(mYMax <= -dBRange)
+ mYMax = -dBRange + 10.; // it's all out of range, but show a scale.
+ else
+ mYMax += .5;
mProcessedSize = half;
mYStep = 10;
@@ -1109,10 +1262,40 @@ void FreqWindow::OnExport(wxCommandEvent & WXUNUSED(event))
f.Close();
}
+void FreqWindow::OnReplot(wxCommandEvent & WXUNUSED(event))
+{
+ gPrefs->Read(wxT("/GUI/EnvdBRange"), &dBRange, ENV_DB_RANGE);
+ if(dBRange < 90.)
+ dBRange = 90.;
+ GetAudio();
+
+ AudacityProject* p = GetActiveProject();
+ if (!p)
+ return;
+
+ if(p->mFreqWindow)
+ p->mFreqWindow->Plot();
+}
+
+void FreqWindow::OnGridOnOff(wxCommandEvent & WXUNUSED(event))
+{
+ if( mGridOnOff->IsChecked() )
+ mDrawGrid = true;
+ else
+ mDrawGrid = false;
+
+ AudacityProject* p = GetActiveProject();
+ if (!p)
+ return;
+
+ if(p->mFreqWindow)
+ p->mFreqWindow->Plot();
+}
BEGIN_EVENT_TABLE(FreqPlot, wxWindow)
- EVT_PAINT(FreqPlot::OnPaint)
- EVT_MOUSE_EVENTS(FreqPlot::OnMouseEvent)
+ EVT_ERASE_BACKGROUND(FreqPlot::OnErase)
+ EVT_PAINT(FreqPlot::OnPaint)
+ EVT_MOUSE_EVENTS(FreqPlot::OnMouseEvent)
END_EVENT_TABLE()
FreqPlot::FreqPlot(wxWindow * parent, wxWindowID id,
@@ -1122,6 +1305,11 @@ FreqPlot::FreqPlot(wxWindow * parent, wxWindowID id,
freqWindow = (FreqWindow *) parent;
}
+void FreqPlot::OnErase(wxEraseEvent &evt)
+{
+ // Ignore it to prevent flashing
+}
+
void FreqPlot::OnPaint(wxPaintEvent & evt)
{
freqWindow->PlotPaint(evt);
diff --git a/src/FreqWindow.h b/src/FreqWindow.h
index 34c7c2b..a4b8e96 100644
--- a/src/FreqWindow.h
+++ b/src/FreqWindow.h
@@ -14,6 +14,7 @@
#include <wx/brush.h>
#include <wx/frame.h>
#include <wx/panel.h>
+#include <wx/checkbox.h>
#include <wx/dialog.h>
#include <wx/gdicmn.h>
#include <wx/pen.h>
@@ -31,8 +32,6 @@ class FreqWindow;
class TrackList;
-extern FreqWindow *gFreqWindow;
-
void InitFreqWindow(wxWindow * parent);
class FreqWindow;
@@ -44,6 +43,7 @@ class FreqPlot:public wxWindow {
void OnMouseEvent(wxMouseEvent & event);
void OnPaint(wxPaintEvent & event);
+ void OnErase(wxEraseEvent & event);
private:
@@ -58,8 +58,9 @@ class FreqWindow:public wxDialog {
const wxString & title, const wxPoint & pos);
virtual ~ FreqWindow();
+ void GetAudio();
- void Plot(int len, float *data, double rate);
+ void Plot();
void PlotMouseEvent(wxMouseEvent & event);
void PlotPaint(wxPaintEvent & event);
@@ -72,11 +73,20 @@ class FreqWindow:public wxDialog {
void OnFuncChoice(wxCommandEvent & event);
void OnAxisChoice(wxCommandEvent & event);
void OnExport(wxCommandEvent & event);
+ void OnReplot(wxCommandEvent & event);
+ void OnGridOnOff(wxCommandEvent & event);
void Recalc();
void DrawPlot();
private:
+ float *mBuffer;
+ bool mDrawGrid;
+ int mSize;
+ int mAlg;
+ int mFunc;
+ int mAxis;
+ int dBRange;
#ifdef __WXMSW__
static const int fontSize = 8;
@@ -95,10 +105,12 @@ class FreqWindow:public wxDialog {
wxButton *mCloseButton;
wxButton *mExportButton;
+ wxButton *mReplotButton;
wxChoice *mAlgChoice;
wxChoice *mSizeChoice;
wxChoice *mFuncChoice;
wxChoice *mAxisChoice;
+ wxCheckBox *mGridOnOff;
wxRect mPlotRect;
wxRect mInfoRect;
diff --git a/src/HelpText.cpp b/src/HelpText.cpp
index faa6e28..24d8b9b 100644
--- a/src/HelpText.cpp
+++ b/src/HelpText.cpp
@@ -17,6 +17,8 @@
#include "Audacity.h"
#include "HelpText.h"
+#include "FileNames.h"
+
wxString WrapText( const wxString & Text )
@@ -48,6 +50,29 @@ wxString WikiLink( const wxString &Key, const wxString& Text )
wxT("</a>");
}
+wxString FileLink( const wxString &Key, const wxString& Text )
+{
+ return wxString(wxT("")) +
+ wxT("<a href='") +
+ wxT("file:") +
+ FileNames::HtmlHelpDir() +
+ Key +
+ wxT("'>") +
+ Text +
+ wxT("</a>");
+}
+
+wxString HttpLink( const wxString &Key, const wxString& Text )
+{
+ return wxString(wxT("")) +
+ wxT("<a href='") +
+ wxT("http:") +
+ Key +
+ wxT("'>") +
+ Text +
+ wxT("</a>");
+}
+
wxString LinkExpand( const wxString & Text )
{
wxString Temp = Text;
@@ -70,6 +95,14 @@ wxString LinkExpand( const wxString & Text )
{
Replacement = WikiLink( Key.Mid( 5 ), LinkText );
}
+ else if( Key.StartsWith( wxT("file:") ))
+ {
+ Replacement = FileLink( Key.Mid( 5 ), LinkText );
+ }
+ else if( Key.StartsWith( wxT("http:") ))
+ {
+ Replacement = HttpLink( Key.Mid( 5 ), LinkText );
+ }
else
{
Replacement = Link( Key, LinkText );
@@ -80,11 +113,6 @@ wxString LinkExpand( const wxString & Text )
return Temp;
}
-wxString ToWelcome( )
-{
- return _("To [[welcome|Welcome screen]]");
-}
-
wxString TitleText( const wxString & Key )
{
if(Key==wxT("welcome"))
@@ -144,266 +172,26 @@ wxString HelpTextBuiltIn( const wxString & Key )
if(Key==wxT("welcome"))
{
return WrapText(
-wxString(wxT("")) +
-_("</p><center><h3>Getting Started</h3></center><br>") +
-/** i18n-hint: where you see [[key|text]] translate 'text' and don't translate 'key' */
-_("Welcome to Audacity ") + AUDACITY_VERSION_STRING + wxT("! ") +
-_("Learn how to: \
-<ul><li>\
-[[play|play]] an existing audio file \
-<li>[[record|record]] your voice, LP or tape \
-<li>[[edit|edit]] sounds \
-<li>[[save|save or open an Audacity project]] \
-<li>[[export|export]] to an MP3 or other audio file, or [[burncd|burn to a CD]] \
-</ul></p><p>") +
-_("This screen can be viewed at any time \
-by clicking the <i>Help</i> menu, then <i>Show Welcome Message</i>. \
-For a detailed guide to all the Audacity menus and controls, click \
-<i>Help</i> menu then <i>Index</i>, or download our <a href=\"http://audacity.sourceforge.net/help/documentation/manual_1.4.pdf\">full Manual</a> \
-in PDF format.\
-</p>")
- );
+ wxString(wxT("")) +
+ _("<center><h3>How to get Help</h3></center>") +
+ _("Welcome to Audacity ") + AUDACITY_VERSION_STRING + wxT("!<p>") +
+ _("These are our support methods:") + wxT("</p>") + wxT("<ul><li>") +
+ _(" [[file:quick_help.html|Quick Help]] (should be installed locally, <a href=\"http://manual.audacityteam.org/index.php?title=Quick_Help\">internet version if it isn't</a>)") + wxT("</li><li>") +
+ _(" [[file:index.html|Manual]] (should be installed locally, <a href=\"http://manual.audacityteam.org/index.php\">internet version if it isn't</a>)") + wxT("</li><li>") +
+ _(" [[http://wiki.audacityteam.org/index.php|Wiki]] (the latest tips, tricks and tutorials, on the internet)") + wxT("</li><li>") +
+ _(" <a href=\"http://forum.audacityteam.org/\">Forum</a> (ask your question directly, on the internet)") + wxT("</li></ul></p><p>") +
+ _(" For even quicker answers, all the online resources above are <b>searchable</b>.") + wxT("</p>")
+ );
}
- if(Key ==wxT("play") )
- {
- return WrapText(
-wxString(wxT(""))+
-_("<p><b>Opening audio files:</b> \
-Either drag the files into the current project window, or click <i>File > Import > Audio</i>. \
-Files can be opened into a new project window with <i>File > Open</i>. \
-The main formats Audacity plays are <b>AIFF, AU, FLAC, M4A</b> (only on a \
-Mac), <b>MP2/MP3, OGG Vorbis</b> and <b>WAV</b>. Click [[wma-proprietary|here]] if your file is in some other format. \
-<b>To import a CD:</b> extract it to WAV or AIFF using iTunes, Windows Media Player 11 or similar. \
-See our online guide: [[wiki:How_to_import_CDs|importing CDs]].</p><p> \
-<p><b>Playing audio:</b> Press the green Play button to start playback. \
-Press the blue Pause button once to pause playback, and again to resume. \
-To stop, press the yellow Stop button. \
-Spacebar can be used to either play or stop. \
-After stopping, playback resumes from its last starting point. \
-To change the starting point, click in the track at your desired starting point. \
-The <b>|<<</b> and <b>>>|</b> buttons can be used to skip to the start or end of the track respectively. \
-</p><br><br>")+
-ToWelcome()
- );
- }
- if((Key ==wxT("record") ) || (Key ==wxT("norecord") ))
- {
- return WrapText(
-wxString(wxT(""))+
-_("<p><b>To record:</b> Set the recording device and input source, adjust the input level, \
-then press the red Record button.\
-</b></p><p> \
-1) [[inputdevice|Set Recording Device]] either in the <i>Audio I/O tab of Preferences</i> \
-or in <i>Device Toolbar</i>. Audio I/O Preferences lets you choose stereo recording if required.<br> \
-2) [[inputsource|Set input source]] for that device (for example, microphone or line-in) \
-in the dropdown selector of the <i>Mixer Toolbar</i>, \
-or (on some systems) at Recording Device in the <i>Audio I/O tab of Preferences</i> \
-or in <i>Device Toolbar</i>.<br> \
-3) [[inputlevel|Adjust input level]] using the right-hand slider \
-on the <i>Mixer Toolbar</i>. Correct adjustment of level before recording \
-is essential to avoid noise or distortion. \
-</p><p> \
-More help at: \"Recording\" <a href=\"http://audacity.sourceforge.net/help/faq\">FAQs</a>, \
-our Tutorial <a href=\"http://www.audacityteam.org/manual/index.php?title=Tutorial_-_Your_First_Recording\"> \
-Your First Recording</a> in the \
-<a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">Manual</a>, \
-and our Wiki [[wiki:Recording_Tips|Recording Tips]] and \
-[[wiki:Troubleshooting_Recordings|Troubleshooting Recordings]] pages. \
-</p><br><br>") +
-ToWelcome()
- );
- }
- if (Key ==wxT("inputdevice") )
- {
- return WrapText(
-wxString(wxT(""))+
-_("<p>The input device is the actual physical sound device you are recording from. \
-This is chosen at \"Recording Device\" in the <i>Audio I/O tab of Preferences</i>, \
-On Windows and Linux, Preferences are at the bottom of the <i>Edit</i> Menu. \
-On a Mac, they in the <i>Audacity</i> Menu. \
-You can also conveniently select Recording Device in the <i>Device Toolbar</i>, \
-which can be enabled at <i>View > Toolbars...</i>. \
-</p><p> \
-By default, Audacity uses the device currently being used by the system, \
-(usually your inbuilt sound device), \
-so it is often not necessary to change the input device. \
-On Windows, this current system device can be selected as \"Microsoft Sound Mapper\". \
-If you are recording from an external USB or Firewire device such as a USB turntable, \
-select it explicitly by name as recording device after conecting it. \
-</p><p> \
-Back to [[record|Recording Audio]] \
-<br></p>") +
-ToWelcome()
- );
- }
- if (Key ==wxT("inputsource") )
- {
- return WrapText(
-wxString(wxT(""))+
-_("<p>Select the input source (such as microphone or line-in) for your [[inputdevice|recording device]]:<br> \
-- <b>On Windows (except Vista)</b> and <b>Linux</b>, in the dropdown selector on the right of the <i>Mixer Toolbar</i>.<br> \
-- <b>On Windows Vista</b> and <b>Mac</b>, at Recording Device on the \
-<i>Audio I/O tab of Preferences</i>, or in <i>Device Toolbar</i>. \
-The source will be shown as part of the parent device \
-(for example, <i>High Def Audio Card: Microphone</i>). \
-If necessary, Mac users can choose the input source at Apple Audio MIDI Setup. \
-<br><i><b>Note:</b> many USB or Firewire recording devices don't have a choice of inputs, \
-so this step is not necessary. If in doubt, see the documentation for your device. \
-</i></p><p> \
-<b>Tip:</b> To <a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record audio playing on the computer</a>, \
-Windows and Linux users can choose the \"Stereo Mix\", \"Wave Out\", \"Sum\" \
-or comparable input source. \
-</p><p> \
-Back to [[record|Recording Audio]] \
-<br></p>") +
-ToWelcome()
- );
- }
- if(Key ==wxT("inputlevel") )
- {
- return WrapText(
-wxString(wxT(""))+
-_("<p>The input level must be set correctly. \
-If the level is too low, there will be background noise. \
-If the level is too high, there will be distortion in the loud parts. \
-</p><p>\
-To set the level, either see this [[wiki:Recording_levels|illustrated online guide]] \
-or follow these steps: \
-<ol><li>\
-Turn on <b>monitoring</b>. Double-click the right-hand of the two <i>VU Meters</i> \
-(or right-click over it) and click \"Start Monitoring\". \
-If the meters are not visible, click <i>View > Toolbars</i> and check \"Meter Toolbar\". \
-</li><li>Adjust the input slider on the <i>Mixer Toolbar</i> \
-(by the microphone symbol), so that the red bars in the meter come close to <b>but do not touch</b> \
-the right edge of the scale. \
-If you can't hear the monitored audio, go to the <i>Audio I/O tab of Preferences</i> \
-and check \"Software Playthrough\". \
-</li></ol></p><p> \
-Back to [[record|Recording Audio]] \
-<br></p>")+
-ToWelcome()
- );
- }
- if((Key ==wxT("edit") ) || (Key==wxT("grey")))
- {
- return WrapText(
-wxString(wxT(""))+
-_("<p>The main commands for editing audio are under the <i>Edit</i> menu (such \
-as cut, copy and paste) and the <i>Effect</i> menu (you can do things like \
-boost the bass, change pitch or tempo, or remove noise). </p><p> \
-Audacity applies edits to selected areas of the audio track. To select a \
-particular area, click in the track and drag the shaded area with the mouse. \
-If no audio is selected, Audacity selects all the audio in the project window.\
-</p><p> \
-When playing or recording, the Edit and Effect menus will appear greyed out, \
-because a moving track can't be edited. Commands can sometimes be unavailable \
-for other reasons too. For example, you can't run effects until you have audio \
-on the screen, and you can't paste audio until you've cut or copied it to \
-Audacity's clipboard. </p><br><br>")+
-ToWelcome()
- );
- }
- if(Key ==wxT("save") )
- {
- return WrapText(
-wxString(wxT(""))+
-_("<p>To return later to your unfinished work in Audacity \
-with all tracks and edits as you left them, save an Audacity project. \
-To play your current work in other media programs or send it to others, \
-[[export|export]] an audio file such as WAV or MP3. \
-</p><p> \
-<i>File > Save Project</i> saves an <b>.aup</b> project file and \
-a <b>_data</b> folder containing the actual audio. \
-To re-open a saved project, click <i>File > Open</i> and open the .aup file. \
-If you save and exit more than once, an .aup.bak backup file is created, \
-but the .aup file should always be opened if present. \
-When your final exported file is exactly as you want, delete the \
-project files and _data folder to save disc space. \
-</p><p><i>File > Save Project As...</i> is for saving an empty project. \
-It also lets you save an existing Project to a <b> new</b> name. \
-This is the only safe way to rename a project. The .aup file and _data folder \
-should not be moved or renamed manually. \
-</p><p>")+
-ToWelcome()
- );
- }
- if(Key ==wxT("export") )
- {
- return WrapText(
-wxString(wxT(""))+
-_("To hear your work in other media programs, export it to an audio file such as WAV or MP3 \
-(some formats are [[wma-proprietary|unsupported]]). \
-[[save|Saving an Audacity project]] creates a project file (and linked _data folder) \
-containing all your edited tracks, so you can return to your work later. \
-However, other programs can't read Audacity projects. </p><p> \
-To export, click <i>File > Export</i> then choose the file format you want to export to \
-in the \"Save as type\" dropdown. \
-To [[burncd|burn a CD]] for standalone CD players, choose WAV or AIFF. \
-To export as MP3, the [[wiki:Lame_Installation|Lame Encoder]] must be installed. \
-</p><p> \
-<i>File > Export Selection</i> exports only a selected area of audio. <i>Use File > Export Multiple</i> \
-to export multiple files at the same time, either \
-one for each audio track, or one for each labeled area in a single track. \
-<i>Tracks > Add Label At Selection</i> lets you \
-[[wiki:Splitting_recordings_into_separate_tracks|split the tracks]] \
-from an album for multiple export as separate files. \
-</p><br><br>")+
-ToWelcome()
- );
- }
- if(Key ==wxT("wma-proprietary") )
- {
- return WrapText(
- wxString(wxT(""))+
-_("<p>Audacity <b>cannot</b> [[play|play]] or [[export|export]] files in <b>WMA, RealAudio, Shorten (SHN)</b> \
-or most other proprietary formats, due to licensing and patent restrictions. \
-On a Mac computer, unprotected <b>AAC</b> formats such as <b>M4A</b> can be imported. \
-Some open formats are not yet supported, including <b>Ogg Speex</b> and <b>Musepack</b>. \
-Files protected by any kind of Digital Rights Management (DRM), including \
-most purchased online such as from iTunes or Napster, <b>cannot</b> be imported.</p><p> \
-If you can't import your file into Audacity, \
-then if it is not DRM-protected, use iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a> \
-to convert it to WAV or AIFF. \
-If it is protected, burn it to an audio CD in the program licensed to play it, \
-then extract the CD track to WAV or AIFF using \
-ITunes or (on Windows) <a href=\"http://cdexos.sourceforge.net/?q=download\">CDex</a> or \
-Windows Media Player 11. You could also \
-<a href=\"http://audacity.sourceforge.net/help/faq?s=recording&i=streaming\">record</a> the CD to your computer. \
-<i>To export to an unsupported format, export to WAV or AIFF and \
-convert it to the desired format in iTunes or <a href=\"http://www.erightsoft.com/SUPER.html#Dnload\">SUPER</a>. \
-</i></p><p>")+
-ToWelcome()
- );
- }
- if(Key ==wxT("burncd") )
- {
- return WrapText(
- wxString(wxT(""))+
-_("<p>To burn your work to an audio CD for standalone CD players, first \
-[[export|export]] it as WAV or AIFF. \
-The exported file should be stereo, 44100 Hz (set in the \"Project Rate\" button bottom left) \
-and 16 bit (set in the \"Options\" button in the file export dialog). \
-These are Audacity's default settings, \
-so normally you will not need to change these before exporting. \
-<p>Burn the exported file to an \"audio CD\" - not a \"data CD\" or \"MP3 CD\" - \
-with a CD burning program like iTunes or Windows Media Player. \
-For more help, see [[wiki:How_to_burn_CDs|How to burn CDs]] online. \
-</p><p>") +
-ToWelcome()
- );
- }
// Remote help allows us to link to a local copy of the help if it exists,
// or provide a message that takes you to the internet if it does not.
// It's used by the menu item Help > Index
if(Key == wxT("remotehelp") )
{
// *URL* will be replaced by whatever URL we are looking for.
- return WrapText(
-_("<p>Help for Audacity Beta is currently unfinished. \
-For now, a draft manual is available <a href=\"http://www.audacityteam.org/manual/index.php?title=Main_Page\">online</a>. \
-Alternatively, click <a href=\"http://www.audacityteam.org/manual/index.php?title=Temporary_HTML_Manual_Export\">here</a> \
-to download a single-page version of the manual which can be viewed in this window.")
+ return WrapText(_("<p>You do not appear to have 'help' installed on your computer.<br> \
+Please <a href=\"*URL*\">view or download it online</a>.")
);
}
return wxT("");
diff --git a/src/HistoryWindow.cpp b/src/HistoryWindow.cpp
index 0cf63a8..f2dc168 100644
--- a/src/HistoryWindow.cpp
+++ b/src/HistoryWindow.cpp
@@ -121,6 +121,7 @@ HistoryWindow::HistoryWindow(AudacityProject *parent, UndoManager *manager):
Fit();
SetMinSize(GetSize());
mList->SetColumnWidth(0, mList->GetClientSize().x - mList->GetColumnWidth(1));
+ mList->SetTextColour(wxSystemSettings::GetColour(wxSYS_COLOUR_WINDOWTEXT));
}
HistoryWindow::~HistoryWindow()
@@ -206,7 +207,6 @@ void HistoryWindow::OnItemSelected(wxListEvent &event)
for (i = 0; i < mList->GetItemCount(); i++) {
mList->SetItemImage(i, 0);
-
if (i > selected)
mList->SetItemTextColour(i, *wxLIGHT_GREY);
else
diff --git a/src/Internat.cpp b/src/Internat.cpp
index c4c3d6c..9e1455c 100644
--- a/src/Internat.cpp
+++ b/src/Internat.cpp
@@ -20,34 +20,25 @@ and on Mac OS X for the filesystem.
*//*******************************************************************/
-
-#include "Internat.h"
-
+#include <wx/msgdlg.h>
#include <wx/log.h>
#include <wx/intl.h>
#include <wx/filename.h>
-#ifdef __WXMAC__
-#include <wx/mac/private.h>
-#endif
-
#include <locale.h>
#include <math.h> // for pow()
+#include "Internat.h"
+#include "FileDialog.h"
+
// in order for the static member variables to exist, they must appear here
// (_outside_) the class definition, in order to be allocated some storage.
// Otherwise, you get link errors.
wxChar Internat::mDecimalSeparator = wxT('.'); // default
-wxMBConv *Internat::mConvLocal = NULL;
wxString Internat::forbid;
wxArrayString Internat::exclude;
-
-
-#ifdef __WXMAC__
-void *Internat::mTECToUTF = NULL;
-void *Internat::mTECFromUTF = NULL;
-#endif
+wxCharBuffer Internat::mFilename;
void Internat::Init()
{
@@ -58,50 +49,11 @@ void Internat::Init()
// wxLogDebug(wxT("Decimal separator set to '%c'"), mDecimalSeparator);
- #ifndef __WXMAC__
- // Set up character-set conversion for UTF-8 input and output.
- mConvLocal = new wxCSConv(wxLocale::GetSystemEncodingName());
- #else
- // Set up a special converter to/from the Mac-specific local
- // encoding (usually MacRoman)
- OSStatus status = noErr;
- TECObjectRef ec;
-
- TextEncoding MacEncoding = GetApplicationTextEncoding();
- TextEncoding UTF8 = CreateTextEncoding(kTextEncodingUnicodeDefault,
- kUnicodeNoSubset,
- kUnicodeUTF8Format);
- status = TECCreateConverter(&ec, MacEncoding, UTF8);
- if (status == noErr)
- mTECToUTF = (void *)ec;
- else
- mTECToUTF = NULL;
-
- status = TECCreateConverter(&ec, UTF8, MacEncoding);
- if (status == noErr)
- mTECFromUTF = (void *)ec;
- else
- mTECFromUTF = NULL;
-
- #endif
-
// Setup list of characters that aren't allowed in file names
wxFileName tmpFile;
forbid = tmpFile.GetForbiddenChars();
for(unsigned int i=0; i < forbid.Length(); i++)
exclude.Add( forbid.Mid(i, 1) );
-
-}
-
-// JKC: Added to fix a memory leak.
-void Internat::CleanUp()
-{
-#ifndef __WXMAC__
- if( mConvLocal != NULL )
- {
- delete mConvLocal;
- }
-#endif
}
wxChar Internat::GetDecimalSeparator()
@@ -207,97 +159,41 @@ wxString Internat::FormatSize(double size)
return sizeStr;
}
-#ifdef __WXMAC__IGNORE
-
-// wxMac 2.4.x doesn't support converting to/from Mac encodings yet,
-// so we use Mac OS X-specific code
-
-wxString MacConvertString(TECObjectRef ec,
- wxString input)
-{
- OSStatus status = noErr;
- ByteCount byteOutLen;
- ByteCount byteInLen = input.Length();
- ByteCount byteBufferLen = byteInLen * 8 + 1;
- char* buf = new char[byteBufferLen] ;
-
- status = TECConvertText(ec,
- (ConstTextPtr)input.c_str(),
- byteInLen,
- &byteInLen,
- (TextPtr)buf,
- byteBufferLen,
- &byteOutLen);
-
- if (status != noErr) {
- delete[] buf;
- return input;
- }
-
- buf[byteOutLen] = 0;
-
- wxString result = wxString(buf, wxConvLocal);
- delete[] buf;
-
- return result;
-}
-
-wxString Internat::LocalToUTF8(const wxString &s)
-{
- if (!mTECToUTF)
- return s;
-
- return MacConvertString((TECObjectRef)mTECToUTF, s);
-}
-
-wxString Internat::UTF8ToLocal(const wxString &s)
-{
- if (!mTECFromUTF)
- return s;
-
- return MacConvertString((TECObjectRef)mTECFromUTF, s);
-}
-
-wxString Internat::ToFilename(const wxString &s)
-{
- return LocalToUTF8(s);
-}
-
-wxString Internat::FromFilename(const wxString &s)
+#if defined(__WXMSW__)
+//
+// On Windows, wxString::mb_str() can return a NULL pointer if the
+// conversion to multi-byte fails. So, based on direction intent,
+// returns a pointer to an empty string or prompts for a new name.
+//
+char *Internat::VerifyFilename(const wxString &s, bool input)
{
- return UTF8ToLocal(s);
-}
+ static wxCharBuffer buf;
+ wxString name = s;
-#else
-
-wxString Internat::LocalToUTF8(const wxString &s)
-{
-#if defined(__WXMAC__)
- return wxString(s, wxConvUTF8);
-#else
- return wxString(s.wc_str(*mConvLocal), wxConvUTF8);
-#endif
-}
-
-wxString Internat::UTF8ToLocal(const wxString &s)
-{
-#if defined(__WXMAC__)
- return wxString(s, wxConvLocal);
-#else
- return wxString(s.wc_str(wxConvUTF8), *mConvLocal);
-#endif
-}
+ if (input) {
+ if ((char *) (const char *)name.mb_str() == NULL) {
+ name = wxEmptyString;
+ }
+ }
+ else {
+ wxFileName f(name);
+ while ((char *) (const char *)name.mb_str() == NULL) {
+ wxMessageBox(_("The specified filename could not be converted due to Unicode character use."));
+
+ name = FileSelector(_("Specify New Filename:"),
+ NULL,
+ name,
+ f.GetExt(),
+ wxT("*.") + f.GetExt(),
+ wxFD_SAVE | wxRESIZE_BORDER,
+ wxGetTopLevelParent(NULL));
+ }
+ }
-wxString Internat::ToFilename(const wxString &s)
-{
- return s;
-}
+ mFilename = name.mb_str();
-wxString Internat::FromFilename(const wxString &s)
-{
- return s;
+ return (char *) (const char *) mFilename;
}
-
#endif
wxString Internat::SanitiseFilename(const wxString &name, const wxString &sub)
diff --git a/src/Internat.h b/src/Internat.h
index 442ee65..da4272d 100644
--- a/src/Internat.h
+++ b/src/Internat.h
@@ -19,8 +19,6 @@
class Internat
{
public:
- static void CleanUp();
-
/** \brief Initialize internationalisation support. Call this once at
* program start. */
static void Init();
@@ -56,26 +54,11 @@ public:
static wxString FormatSize(wxLongLong size);
static wxString FormatSize(double size);
- /** \brief Convert string from UTF-8 to the local character encoding
- *
- * Used for XML files, which are always read in UTF-8 regardless of the
- * language settings on the host OS */
- static wxString UTF8ToLocal(const wxString &s);
- /** \brief Convert string from the local character encoding to UTF-8
- *
- * Used for XML files, which are always written in UTF-8 regardless of the
- * language settings on the host OS */
- static wxString LocalToUTF8(const wxString &s);
-
- /** \brief Convert file name to correct character encoding for host file
- * system
- *
- * On Mac it converts to UTF-8, on other platforms it does nothing.*/
- static wxString ToFilename(const wxString &s);
- /** \brief Convert file name from character encoding of host file system
- *
- * On Mac it converts from UTF-8, on other platforms it does nothing.*/
- static wxString FromFilename(const wxString &s);
+ /** \brief Protect against Unicode to multi-byte conversion failures
+ * on Windows */
+#if defined(__WXMSW__)
+ static char *VerifyFilename(const wxString &s, bool input = true);
+#endif
/** \brief Check a proposed file name string for illegal characters and
* remove them */
@@ -92,16 +75,12 @@ public:
private:
static wxChar mDecimalSeparator;
- static wxMBConv *mConvLocal;
- #ifdef __WXMAC__
- static void *mTECToUTF;
- static void *mTECFromUTF;
- #endif
// stuff for file name sanitisation
static wxString forbid;
static wxArrayString exclude;
+ static wxCharBuffer mFilename;
};
#define _NoAcc(X) Internat::StripAccelerators(_(X))
@@ -109,10 +88,19 @@ private:
// Use this macro to wrap all filenames and pathnames that get
// passed directly to a system call, like opening a file, creating
// a directory, checking to see that a file exists, etc...
-#if defined(__WXMAC__)
+#if defined(__WXMSW__)
+// Note, on Windows we don't define an OSFILENAME() to prevent accidental use.
+// See VerifyFilename() for an explanation.
+#define OSINPUT(X) Internat::VerifyFilename(X, true)
+#define OSOUTPUT(X) Internat::VerifyFilename(X, false)
+#elif defined(__WXMAC__)
#define OSFILENAME(X) ((char *) (const char *)(X).fn_str())
+#define OSINPUT(X) OSFILENAME(X)
+#define OSOUTPUT(X) OSFILENAME(X)
#else
#define OSFILENAME(X) ((char *) (const char *)(X).mb_str())
+#define OSINPUT(X) OSFILENAME(X)
+#define OSOUTPUT(X) OSFILENAME(X)
#endif
// Convert C strings to wxString
diff --git a/src/LabelDialog.cpp b/src/LabelDialog.cpp
index 647b4f0..3d64e71 100644
--- a/src/LabelDialog.cpp
+++ b/src/LabelDialog.cpp
@@ -97,7 +97,7 @@ LabelDialog::LabelDialog(wxWindow *parent,
double rate)
: wxDialog(parent,
wxID_ANY,
- _NoAcc("&Edit Labels"),
+ _("Edit Labels"),
wxDefaultPosition,
wxSize(800, 600),
wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER),
@@ -702,7 +702,7 @@ void LabelDialog::OnChangeTrack(wxGridEvent &event, int row, RowData *rd)
wxTextEntryDialog d(this,
_("New Label Track"),
_("Enter track name"),
- _NoAcc("&Label Track"));
+ _("Label Track"));
// User canceled so repopulating the grid will set the track
// name to the orignal value
diff --git a/src/LabelDialog.h b/src/LabelDialog.h
index 7210701..ee44b5e 100644
--- a/src/LabelDialog.h
+++ b/src/LabelDialog.h
@@ -49,7 +49,7 @@ class LabelDialog:public wxDialog
bool Validate();
void FindAllLabels();
void AddLabels(LabelTrack *t);
- wxString TrackName(int & index, wxString dflt = _NoAcc("&Label Track"));
+ wxString TrackName(int & index, wxString dflt = _("Label Track"));
void OnUpdate(wxCommandEvent &event);
void OnInsert(wxCommandEvent &event);
diff --git a/src/LabelTrack.cpp b/src/LabelTrack.cpp
index 8d637d4..9df71a2 100644
--- a/src/LabelTrack.cpp
+++ b/src/LabelTrack.cpp
@@ -82,22 +82,23 @@ LabelTrack *TrackFactory::NewLabelTrack()
LabelTrack::LabelTrack(DirManager * projDirManager):
Track(projDirManager),
+ mbHitCenter(false),
+ mOldEdge(-1),
+ mSelIndex(-1),
mMouseOverLabelLeft(-1),
mMouseOverLabelRight(-1),
mIsAdjustingLabel(false)
{
- SetDefaultName(_NoAcc("&Label Track"));
+ SetDefaultName(_("Label Track"));
SetName(GetDefaultName());
- ResetFont();
-
// Label tracks are narrow
// Default is to allow two rows so that new users get the
// idea that labels can 'stack' when they would overlap.
- mHeight = 73;
+ SetHeight(73);
+
+ ResetFont();
CreateCustomGlyphs();
- mSelIndex = -1;
- mStickyTrack = NULL;
// reset flags
ResetFlags();
@@ -105,6 +106,9 @@ LabelTrack::LabelTrack(DirManager * projDirManager):
LabelTrack::LabelTrack(const LabelTrack &orig) :
Track(orig),
+ mbHitCenter(false),
+ mOldEdge(-1),
+ mSelIndex(-1),
mMouseOverLabelLeft(-1),
mMouseOverLabelRight(-1),
mIsAdjustingLabel(false)
@@ -119,7 +123,6 @@ LabelTrack::LabelTrack(const LabelTrack &orig) :
mLabels.Add(l);
}
mSelIndex = orig.mSelIndex;
- mStickyTrack = NULL;
// reset flags
ResetFlags();
@@ -131,9 +134,6 @@ LabelTrack::~LabelTrack()
for (int i = 0; i < len; i++)
delete mLabels[i];
-#ifdef EXPERIMENTAL_STICKY_TRACKS
- if (mStickyTrack) mStickyTrack->SetStickyTrack(NULL);
-#endif
}
void LabelTrack::SetOffset(double dOffset)
@@ -149,6 +149,8 @@ void LabelTrack::SetOffset(double dOffset)
void LabelTrack::ShiftLabelsOnClear(double b, double e)
{
for (size_t i=0;i<mLabels.GetCount();i++){
+ double x = mLabels[i]->t;
+ double y = mLabels[i]->t1;
if (mLabels[i]->t >= e){//label is after deletion region
mLabels[i]->t = mLabels[i]->t - (e-b);
mLabels[i]->t1 = mLabels[i]->t1 - (e-b);
@@ -172,48 +174,62 @@ void LabelTrack::ShiftLabelsOnClear(double b, double e)
void LabelTrack::ShiftLabelsOnInsert(double length, double pt)
{
for (unsigned int i=0;i<mLabels.GetCount();i++){
- if (mLabels[i]->t > pt && mLabels[i]->t1 > pt) {
+ // label is after the insert point
+ if (mLabels[i]->t > pt) {
mLabels[i]->t = mLabels[i]->t + length;
mLabels[i]->t1 = mLabels[i]->t1 + length;
+ // label is before the insert point
}else if (mLabels[i]->t1 < pt) {
//nothing
+ // insert point is inside the label
}else if (mLabels[i]->t < pt && mLabels[i]->t1 > pt){
mLabels[i]->t1 = mLabels[i]->t1 + length;
}
}
}
-void LabelTrack::ShiftLabelsOnChangeSpeed(double b, double e, double change)
+void LabelTrack::ChangeLabelsOnReverse(double b, double e)
+{
+ for (size_t i=0; i<mLabels.GetCount(); i++) {
+ if (mLabels[i]->t >= b && mLabels[i]->t1 <= e) {//deletion region encloses label
+ double aux = b + (e - mLabels[i]->t1);
+ mLabels[i]->t1 = e - (mLabels[i]->t - b);
+ mLabels[i]->t = aux;
+ }
+ }
+}
+
+void LabelTrack::ScaleLabels(double b, double e, double change)
{
for (unsigned int i=0;i<mLabels.GetCount();i++){
- mLabels[i]->t = AdjustTimeStampForSpeedChange(mLabels[i]->t, b, e, change);
- mLabels[i]->t1 = AdjustTimeStampForSpeedChange(mLabels[i]->t1, b, e, change);
+ mLabels[i]->t = AdjustTimeStampOnScale(mLabels[i]->t, b, e, change);
+ mLabels[i]->t1 = AdjustTimeStampOnScale(mLabels[i]->t1, b, e, change);
}
}
-double LabelTrack::AdjustTimeStampForSpeedChange(double t, double b, double e, double change)
+double LabelTrack::AdjustTimeStampOnScale(double t, double b, double e, double change)
{
//t is the time stamp we'll be changing
//b and e are the selection start and end
-
- double percentChange = (100 + change)/100;
- //printf("t: %f\nb: %f\ne: %f\nchange: %f\n", t, b, e, change);
-
+
if (t < b){
return t;
}else if (t > e){
- double shift = (e-b) - ((e-b)/percentChange);
- return (t - shift);
+ double shift = (e-b)*change - (e-b);
+ return t + shift;
}else{
- double shift = (t-b) - ((t-b)/percentChange);
- return (t - shift);
+ double shift = (t-b)*change - (t-b);
+ return t + shift;
}
}
void LabelTrack::ResetFlags()
{
mMouseXPos = -1;
+ mXPos1 = -1;
+ mXPos2 = -1;
mDragXPos = -1;
+ mInitialCursorPos = 1;
mCurrentCursorPos = 1;
mResetCursorPos = false;
mRightDragging = false;
@@ -249,7 +265,7 @@ void LabelTrack::ResetFont()
/// take priority over the ones earlier, so because centering
/// is the first thing we do, it's the first thing we lose if
/// we can't do everything we want to.
-void LabelTrack::ComputeTextPosition(wxRect & r, int index)
+void LabelTrack::ComputeTextPosition(const wxRect & r, int index)
{
// xExtra is extra space
// between the text and the endpoints.
@@ -391,7 +407,7 @@ void LabelTrack::ComputeTextPosition(wxRect & r, int index)
/// ComputeLayout determines which row each label
/// should be placed on, and reserves space for it.
/// Function assumes that the labels are sorted.
-void LabelTrack::ComputeLayout( wxRect & r, double h, double pps)
+void LabelTrack::ComputeLayout(const wxRect & r, double h, double pps)
{
int i;
int iRow;
@@ -454,53 +470,70 @@ void LabelTrack::ComputeLayout( wxRect & r, double h, double pps)
}
}
-LabelStruct::LabelStruct() {
+LabelStruct::LabelStruct()
+{
changeInitialMouseXPos = true;
highlighted = false;
updated = false;
+ t = 0.0;
+ t1 = 0.0;
+ width = 0;
+ x = 0;
+ x1 = 0;
+ xText = 0;
+ y = 0;
}
/// Draw vertical lines that go exactly through the position
/// of the start or end of a label.
/// @param dc the device context
/// @param r the LabelTrack rectangle.
-void LabelStruct::DrawLines( wxDC & dc, wxRect & r)
+void LabelStruct::DrawLines(wxDC & dc, const wxRect & r)
{
// How far out from the centre line should the vertical lines
// start, i.e. what is the y position of the icon?
- // We addjust this slightly so that the line encroaches on
- // the icon slightly (there is white space in the design).
+ // We adjust this so that the line encroaches on the icon
+ // slightly (there is white space in the design).
const int yIconStart = y - (LabelTrack::mIconHeight /2)+1+(LabelTrack::mTextHeight+3)/2;
const int yIconEnd = yIconStart + LabelTrack::mIconHeight-2;
- if (y<0)
- return;
// If y is positive then it is the center line for the
// Label.
- if((x >= r.x) && (x <= (r.x+r.width)))
+ if( y >= 0 )
{
- // Draw line above and below left dragging widget.
- dc.DrawLine(x, r.y, x, yIconStart);
- dc.DrawLine(x, yIconEnd, x, r.y + r.height);
+ if((x >= r.x) && (x <= (r.x+r.width)))
+ {
+ // Draw line above and below left dragging widget.
+ AColor::Line(dc, x, r.y, x, yIconStart - 1);
+ AColor::Line(dc, x, yIconEnd, x, r.y + r.height);
+ }
+ if((x1 >= r.x) && (x1 <= (r.x+r.width)))
+ {
+ // Draw line above and below right dragging widget.
+ AColor::Line(dc, x1, r.y, x1, yIconStart - 1);
+ AColor::Line(dc, x1, yIconEnd, x1, r.y + r.height);
+ }
}
- if((x1 >= r.x) && (x1 <= (r.x+r.width)))
+ else
{
- // Draw line above and below right dragging widget.
- dc.DrawLine(x1, r.y, x1, yIconStart);
- dc.DrawLine(x1, yIconEnd, x1, r.y + r.height);
+ // Draw the line, even though the widget is off screen
+ AColor::Line(dc, x, r.y, x, r.y + r.height);
+ AColor::Line(dc, x1, r.y, x1, r.y + r.height);
}
}
/// DrawGlyphs draws the wxIcons at the start and end of a label.
/// @param dc the device context
/// @param r the LabelTrack rectangle.
-void LabelStruct::DrawGlyphs( wxDC & dc, wxRect & r, int GlyphLeft, int GlyphRight)
+void LabelStruct::DrawGlyphs(wxDC & dc, const wxRect & r, int GlyphLeft, int GlyphRight)
{
- if (y<0)
- return;
const int xHalfWidth=LabelTrack::mIconWidth/2;
const int yStart=y-LabelTrack::mIconHeight/2+(LabelTrack::mTextHeight+3)/2;
+ // If y == -1, nothing to draw
+ if( y == -1 )
+ return;
+
if((x >= r.x) && (x <= (r.x+r.width)))
dc.DrawBitmap(LabelTrack::GetGlyph(GlyphLeft), x-xHalfWidth,yStart, true);
// The extra test here suppresses right hand markers when they overlap
@@ -515,12 +548,14 @@ void LabelStruct::DrawGlyphs( wxDC & dc, wxRect & r, int GlyphLeft, int GlyphRig
/// behind the text itself.
/// @param dc the device context
/// @param r the LabelTrack rectangle.
-void LabelStruct::DrawText( wxDC & dc, wxRect & r)
+void LabelStruct::DrawText(wxDC & dc, const wxRect & r)
{
- if (y<0)
- return;
//If y is positive then it is the center line for the
//text we are about to draw.
+ //if it isn't, nothing to draw.
+
+ if( y == -1 )
+ return;
// Draw frame for the text...
// We draw it half an icon width left of the text itself.
@@ -535,17 +570,18 @@ void LabelStruct::DrawText( wxDC & dc, wxRect & r)
dc.DrawText(title, xText, y-LabelTrack::mTextHeight/2);
}
}
+
}
-void LabelStruct::DrawTextBox( wxDC & dc, wxRect & r)
+void LabelStruct::DrawTextBox(wxDC & dc, const wxRect & r)
{
- if (y<0)
- return;
//If y is positive then it is the center line for the
//text we are about to draw.
const int yBarHeight=3;
const int yFrameHeight = LabelTrack::mTextHeight+3;
const int xBarShorten = LabelTrack::mIconWidth+4;
+ if( y == -1 )
+ return;
{
const int xStart=wxMax(r.x,x+xBarShorten/2);
@@ -634,7 +670,7 @@ bool LabelTrack::CalcCursorX(wxWindow * parent, int * x)
/// Draw calls other functions to draw the LabelTrack.
/// @param dc the device context
/// @param r the LabelTrack rectangle.
-void LabelTrack::Draw(wxDC & dc, wxRect & r, double h, double pps,
+void LabelTrack::Draw(wxDC & dc, const wxRect & r, double h, double pps,
double sel0, double sel1)
{
if(msFont.Ok())
@@ -799,7 +835,9 @@ void LabelTrack::Draw(wxDC & dc, wxRect & r, double h, double pps,
const int CursorWidth=2;
if (mDrawCursor) {
currentPen.SetWidth(CursorWidth);
- dc.DrawLine(xPos-1, mLabels[i]->y - mFontHeight/2 + 1, xPos-1, mLabels[i]->y + mFontHeight/2);
+ AColor::Line(dc,
+ xPos-1, mLabels[i]->y - mFontHeight/2 + 1,
+ xPos-1, mLabels[i]->y + mFontHeight/2 - 1);
currentPen.SetWidth(1);
}
}
@@ -1346,6 +1384,7 @@ bool LabelTrack::CaptureKey(wxKeyEvent & event)
case WXK_LEFT:
case WXK_RIGHT:
case WXK_RETURN:
+ case WXK_NUMPAD_ENTER:
case WXK_ESCAPE:
case WXK_TAB:
return true;
@@ -1518,6 +1557,7 @@ bool LabelTrack::OnKeyDown(double & newSel0, double & newSel1, wxKeyEvent & even
break;
case WXK_RETURN:
+ case WXK_NUMPAD_ENTER:
case WXK_ESCAPE:
if (mLabels[mSelIndex]->title == wxT("")) {
@@ -1863,6 +1903,12 @@ bool LabelTrack::HandleXMLTag(const wxChar *tag, const wxChar **attrs)
mLabels.Clear();
mLabels.Alloc(nValue);
}
+ else if (!wxStrcmp(attr, wxT("height")) &&
+ XMLValueChecker::IsGoodInt(strValue) && strValue.ToLong(&nValue))
+ SetHeight(nValue);
+ else if (!wxStrcmp(attr, wxT("minimized")) &&
+ XMLValueChecker::IsGoodInt(strValue) && strValue.ToLong(&nValue))
+ SetMinimized(nValue != 0);
}
return true;
@@ -1887,6 +1933,8 @@ void LabelTrack::WriteXML(XMLWriter &xmlFile)
xmlFile.StartTag(wxT("labeltrack"));
xmlFile.WriteAttr(wxT("name"), mName);
xmlFile.WriteAttr(wxT("numlabels"), len);
+ xmlFile.WriteAttr(wxT("height"), this->GetActualHeight());
+ xmlFile.WriteAttr(wxT("minimized"), this->GetMinimized());
for (i = 0; i < len; i++) {
xmlFile.StartTag(wxT("label"));
@@ -2021,58 +2069,23 @@ bool LabelTrack::Paste(double t, Track * src)
bool LabelTrack::Clear(double t0, double t1)
{
-#ifdef EXPERIMENTAL_FULL_LINKING
AudacityProject *p = GetActiveProject();
if (p && p->IsSticky()){
- bool onlyLabelTrackSel = true;
- TrackListIterator iter(p->GetTracks());
- Track *t = iter.First();
- while (t){
- if (t!=this && t->GetSelected()){
- onlyLabelTrackSel = false;
- break;
- }
- t=iter.Next();
- }
- if (onlyLabelTrackSel){
- int editGroup = 0;
- t=iter.First();
- Track *n=t;
-
- while (t && t!= this){//find edit group number
- n=iter.Next();
- if (n && n->GetKind()==Track::Wave && t->GetKind()==Track::Label)
- editGroup++;
- t=n;
- }
-
- t=iter.First();
- for (int i=0; i<editGroup; i++){//go to first in edit group
- while (t && t->GetKind()==Track::Wave) t=iter.Next();
- while (t && t->GetKind()==Track::Label) t=iter.Next();
- }
-
- if (t && t->GetKind()==Track::Wave)
- ((WaveTrack*)t)->HandleGroupClear(t0, t1, false, false);
+ Track* t = NULL;
+ if (mNode) {
+ TrackListNode* n = mNode->prev;
+ if (n)
+ t = n->t;
}
- }else{
- ShiftLabelsOnClear(t0, t1);
+ // if it is part of a group
+ if (t && t->GetKind() != Track::Time && t->GetKind() != Track::Label)
+ t->Clear(t0, t1);
+ else
+ ShiftLabelsOnClear(t0, t1);
}
-#else
- int len = mLabels.Count();
+ else
+ ShiftLabelsOnClear(t0, t1);
- for (int i = 0; i < len; i++) {
- if (t0 <= mLabels[i]->t && mLabels[i]->t <= t1) {
- mLabels.RemoveAt(i);
- len--;
- i--;
- }
- else if (mLabels[i]->t > t1) {
- mLabels[i]->t -= (t1 - t0);
- mLabels[i]->t1 -= (t1 - t0);
- }
- }
-#endif
return true;
}
diff --git a/src/LabelTrack.h b/src/LabelTrack.h
index e1f7cd9..1e7d3c9 100644
--- a/src/LabelTrack.h
+++ b/src/LabelTrack.h
@@ -40,10 +40,10 @@ class LabelStruct
{
public:
LabelStruct();
- void DrawLines( wxDC & dc, wxRect & r);
- void DrawGlyphs( wxDC & dc, wxRect & r, int GlyphLeft, int GlyphRight);
- void DrawText( wxDC & dc, wxRect & r);
- void DrawTextBox( wxDC & dc, wxRect & r);
+ void DrawLines( wxDC & dc, const wxRect & r);
+ void DrawGlyphs( wxDC & dc, const wxRect & r, int GlyphLeft, int GlyphRight);
+ void DrawText( wxDC & dc, const wxRect & r);
+ void DrawTextBox( wxDC & dc, const wxRect & r);
void DrawHighlight( wxDC & dc, int xPos1, int xPos2, int charHeight);
void getXPos( wxDC & dc, int * xPos1, int cursorPos);
@@ -88,7 +88,7 @@ class LabelTrack:public Track {
static void ResetFont();
- void Draw(wxDC & dc, wxRect & r, double h, double pps,
+ void Draw(wxDC & dc, const wxRect & r, double h, double pps,
double sel0, double sel1);
int getSelectedIndex() const { return mSelIndex; }
@@ -169,13 +169,12 @@ class LabelTrack:public Track {
void ShiftLabelsOnClear(double b, double e);
void ShiftLabelsOnInsert(double length, double pt);
- void ShiftLabelsOnChangeSpeed(double b, double e, double change);
- double AdjustTimeStampForSpeedChange(double t, double b, double e, double change);
- WaveTrack* GetStickyTrack() { return mStickyTrack; }
- void SetStickyTrack(WaveTrack *track) { mStickyTrack = track; }
+ void ChangeLabelsOnReverse(double b, double e);
+ void ScaleLabels(double b, double e, double change);
+ double AdjustTimeStampOnScale(double t, double b, double e, double change);
public:
- void SortLabels();
+ void SortLabels();
//These two are used by a TrackPanel KLUDGE, which is why they are public.
bool mbHitCenter;
//The edge variable tells us what state the icon is in.
@@ -188,7 +187,6 @@ class LabelTrack:public Track {
int mMouseOverLabelRight; /// Keeps track of which right label the mouse is currently over.
int mxMouseDisplacement; /// Displacement of mouse cursor from the centre being dragged.
LabelArray mLabels;
- WaveTrack *mStickyTrack;
static int mIconHeight;
static int mIconWidth;
@@ -213,8 +211,8 @@ class LabelTrack:public Track {
// Used only for a LabelTrack on the clipboard
double mClipLen;
- void ComputeLayout(wxRect & r, double h, double pps);
- void ComputeTextPosition(wxRect & r, int index);
+ void ComputeLayout(const wxRect & r, double h, double pps);
+ void ComputeTextPosition(const wxRect & r, int index);
void SetCurrentCursorPosition(wxDC & dc, int xPos);
void calculateFontHeight(wxDC & dc);
diff --git a/src/LangChoice.cpp b/src/LangChoice.cpp
index cbbc1fa..64f9149 100644
--- a/src/LangChoice.cpp
+++ b/src/LangChoice.cpp
@@ -22,6 +22,7 @@ of languages for Audacity.
#include <wx/choice.h>
#include <wx/dialog.h>
#include <wx/intl.h>
+#include <wx/msgdlg.h>
#include <wx/sizer.h>
#include <wx/stattext.h>
@@ -102,7 +103,34 @@ LangChoiceDialog::LangChoiceDialog(wxWindow * parent,
void LangChoiceDialog::OnOk(wxCommandEvent & event)
{
- mLang = mLangCodes[mChoice->GetSelection()];
+ int ndx = mChoice->GetSelection();
+ mLang = mLangCodes[ndx];
+
+ wxString slang = GetSystemLanguageCode();
+ int sndx = mLangCodes.Index(slang);
+ wxString sname;
+
+ if (sndx == wxNOT_FOUND) {
+ const wxLanguageInfo *sinfo = wxLocale::FindLanguageInfo(slang);
+ if (sinfo) {
+ sname = sinfo->Description;
+ }
+ }
+ else {
+ sname = mLangNames[sndx];
+ }
+
+ if (mLang.Left(2) != slang.Left(2)) {
+ wxString msg;
+ msg.Printf(_("The language you have chosen, %s (%s), is not the same as the system language, %s (%s)."),
+ mLangNames[ndx].c_str(),
+ mLang.c_str(),
+ sname.c_str(),
+ slang.c_str());
+ if (wxMessageBox(msg, _("Confirm"), wxYES_NO) == wxNO) {
+ return;
+ }
+ }
EndModal(true);
}
diff --git a/src/Languages.cpp b/src/Languages.cpp
index 68b82f1..c91957b 100644
--- a/src/Languages.cpp
+++ b/src/Languages.cpp
@@ -48,13 +48,11 @@ bool TranslationExists(wxArrayString &audacityPathList, wxString code)
wxGetApp().FindFilesInPathList(wxString::Format(wxT("%s/audacity.mo"),
code.c_str()),
audacityPathList,
- wxFILE,
results);
wxGetApp().FindFilesInPathList(wxString::Format(wxT("%s/LC_MESSAGES/audacity.mo"),
code.c_str()),
audacityPathList,
- wxFILE,
results);
return (results.GetCount() > 0);
diff --git a/src/Legacy.cpp b/src/Legacy.cpp
index 487dd11..5b43c45 100644
--- a/src/Legacy.cpp
+++ b/src/Legacy.cpp
@@ -310,46 +310,62 @@ bool ConvertLegacyProjectFile(wxFileName filename)
wxString name = filename.GetFullPath();
- xmlFile.Open(name, wxT("wb"));
- if (!xmlFile.IsOpened())
+ try
+ {
+ xmlFile.Open(name, wxT("wb"));
+ }
+ catch (XMLFileWriterException* pException)
+ {
+ delete pException;
return false;
+ }
renamer.SetNewFile(xmlFile.fp());
- xmlFile.Write(wxT("<?xml version=\"1.0\"?>\n"));
+ try
+ {
+ xmlFile.Write(wxT("<?xml version=\"1.0\"?>\n"));
- wxString label;
- wxString value;
+ wxString label;
+ wxString value;
- if (f.GetFirstLine() != wxT("AudacityProject"))
- return false;
- if (f.GetNextLine() != wxT("Version"))
- return false;
- if (f.GetNextLine() != wxT("0.95"))
- return false;
- if (f.GetNextLine() != wxT("projName"))
- return false;
+ if (f.GetFirstLine() != wxT("AudacityProject"))
+ return false;
+ if (f.GetNextLine() != wxT("Version"))
+ return false;
+ if (f.GetNextLine() != wxT("0.95"))
+ return false;
+ if (f.GetNextLine() != wxT("projName"))
+ return false;
- xmlFile.StartTag(wxT("audacityproject"));
- xmlFile.WriteAttr(wxT("projname"), f.GetNextLine());
- xmlFile.WriteAttr(wxT("version"), wxT("1.1.0"));
- xmlFile.WriteAttr(wxT("audacityversion"),AUDACITY_VERSION_STRING);
+ xmlFile.StartTag(wxT("audacityproject"));
+ xmlFile.WriteAttr(wxT("projname"), f.GetNextLine());
+ xmlFile.WriteAttr(wxT("version"), wxT("1.1.0"));
+ xmlFile.WriteAttr(wxT("audacityversion"),AUDACITY_VERSION_STRING);
- label = f.GetNextLine();
- while (label != wxT("BeginTracks")) {
- xmlFile.WriteAttr(label, f.GetNextLine());
label = f.GetNextLine();
- }
+ while (label != wxT("BeginTracks")) {
+ xmlFile.WriteAttr(label, f.GetNextLine());
+ label = f.GetNextLine();
+ }
- label = f.GetNextLine();
- while (label != wxT("EndTracks")) {
- bool success = ConvertLegacyTrack(&f, xmlFile);
- if (!success)
- return false;
label = f.GetNextLine();
- }
+ while (label != wxT("EndTracks")) {
+ bool success = ConvertLegacyTrack(&f, xmlFile);
+ if (!success)
+ return false;
+ label = f.GetNextLine();
+ }
- xmlFile.EndTag(wxT("audacityproject"));
+ xmlFile.EndTag(wxT("audacityproject"));
+ xmlFile.Close();
+ }
+ catch (XMLFileWriterException* pException)
+ {
+ // Error writing XML file (e.g. disk full)
+ delete pException;
+ return false;
+ }
renamer.Finished();
diff --git a/src/LoadModules.cpp b/src/LoadModules.cpp
index 9b093af..c536180 100644
--- a/src/LoadModules.cpp
+++ b/src/LoadModules.cpp
@@ -26,7 +26,8 @@ i.e. an alternative to the usual interface, for Audacity.
#include "Audacity.h"
#include "AudacityApp.h"
#include "Internat.h"
-#include "BatchCommands.h"
+
+#include "commands/ScriptCommandRelay.h"
#include <NonGuiThread.h> // header from libwidgetextra
#include "LoadModules.h"
@@ -36,8 +37,8 @@ i.e. an alternative to the usual interface, for Audacity.
#define mainPanelFnName "MainPanelFunc"
typedef wxWindow * pwxWindow;
-typedef int AUDACITY_DLL_API (*tModuleInit)(int);
-typedef pwxWindow AUDACITY_DLL_API (*tPanelFn)(int);
+typedef int (*tModuleInit)(int);
+typedef pwxWindow (*tPanelFn)(int);
// This variable will hold the address of a subroutine in
// a DLL that can hijack the normal panel.
@@ -63,57 +64,9 @@ wxWindow * MakeHijackPanel()
return pPanelHijack(0);
}
-//------- Start of stuff related to invoking a batch command ----
-// Our DLL may call commands back in Audacity.
-// It will do that through the ExecCommand function.
-extern "C" {
-
-typedef int AUDACITY_DLL_API (*tpExecScriptServerFunc)( wxString * pOut, wxString * pIn);
-typedef int AUDACITY_DLL_API (*tpRegScriptServerFunc)(tpExecScriptServerFunc pFn);
-
-// This is the function which actually obeys one command.
-AUDACITY_DLL_API int ExecCommand( wxString * pOut, wxString * pIn )
-{
- // Create a Batch that will have just one command in it...
- BatchCommands Batch;
- bool rc;
-
- // Find the command name terminator...ingore line if not found
- int splitAt = pIn->Find(wxT(':'));
- if (splitAt < 0) {
- *pOut= wxT("BAD - Missing ':'?");
- return false;
- }
-
- // Parse and clean
- wxString cmd = pIn->Left(splitAt).Strip(wxString::both);
- wxString parm = pIn->Mid(splitAt + 1).Strip(wxString::trailing);
-
- rc = Batch.ApplyCommand( cmd, parm );
- if( rc )
- {
- *pOut = wxT("OK");
- return rc;
- }
- *pOut = wxT("FAILED to Execute");
- return rc;
-}
-}
-
-// This variable will hold the address of a subroutine in
-// a DLL that starts a thread and reads script commands.
-tpRegScriptServerFunc scriptFn = NULL;
-
-// We pass the ExecFunction to any scripting DLL that needs it
-// right here.
-void RegisterAndRun( )
-{
- wxASSERT( scriptFn != NULL );
- while( true )
- scriptFn(&ExecCommand);
-}
-
-//------- End of stuff related to invoking a batch command ----
+// This variable will hold the address of a subroutine in a DLL that
+// starts a thread and reads script commands.
+tpRegScriptServerFunc scriptFn;
void LoadModule(wxString fname)
{
@@ -148,7 +101,7 @@ void LoadModule(wxString fname)
::wxSetWorkingDirectory(saveOldCWD);
}
-void LoadModules()
+void LoadModules(CommandHandler &cmdHandler)
{
wxArrayString audacityPathList = wxGetApp().audacityPathList;
wxArrayString pathList;
@@ -176,17 +129,19 @@ void LoadModules()
}
#ifdef __WXMSW__
- wxGetApp().FindFilesInPathList(wxT("*.dll"), pathList, wxFILE, files);
+ wxGetApp().FindFilesInPathList(wxT("*.dll"), pathList, files);
#else
- wxGetApp().FindFilesInPathList(wxT("*.so"), pathList, wxFILE, files);
+ wxGetApp().FindFilesInPathList(wxT("*.so"), pathList, files);
#endif
for(i=0; i<files.GetCount(); i++)
LoadModule(files[i]);
// After loading all the modules, we may have a registered scripting function.
- if( scriptFn )
+ if(scriptFn)
{
- NonGuiThread::StartChild( &RegisterAndRun );
+ ScriptCommandRelay::SetCommandHandler(cmdHandler);
+ ScriptCommandRelay::SetRegScriptServerFunc(scriptFn);
+ NonGuiThread::StartChild(&ScriptCommandRelay::Run);
}
}
@@ -294,11 +249,11 @@ void ModuleManager::Initialize()
}
#if defined(__WXMSW__)
- wxGetApp().FindFilesInPathList(wxT("*.dll"), pathList, wxFILE, files);
+ wxGetApp().FindFilesInPathList(wxT("*.dll"), pathList, files);
// #elif defined(__WXMAC__)
-// wxGetApp().FindFilesInPathList(wxT("*.dylib"), pathList, wxFILE, files);
+// wxGetApp().FindFilesInPathList(wxT("*.dylib"), pathList, files);
#else
- wxGetApp().FindFilesInPathList(wxT("*.so"), pathList, wxFILE, files);
+ wxGetApp().FindFilesInPathList(wxT("*.so"), pathList, files);
#endif
for (i = 0; i < files.GetCount(); i++) {
diff --git a/src/LoadModules.h b/src/LoadModules.h
index f1bac91..be2aa0b 100644
--- a/src/LoadModules.h
+++ b/src/LoadModules.h
@@ -15,7 +15,11 @@
#include <wx/dynlib.h>
#include <wx/module.h>
-void LoadModules();
+class CommandHandler;
+
+void LoadModules(CommandHandler &cmdHandler);
+void LoadModule(wxString fname);
+
wxWindow * MakeHijackPanel();
//
@@ -30,10 +34,13 @@ typedef enum
ModuleInitialize,
ModuleTerminate,
AppInitialized,
- ProjectInitialized
+ AppQuiting,
+ ProjectInitialized,
+ ProjectClosing,
+ MenusRebuilt
} ModuleDispatchTypes;
-typedef int AUDACITY_DLL_API (*fnModuleDispatch)(ModuleDispatchTypes type);
+typedef int (*fnModuleDispatch)(ModuleDispatchTypes type);
class Module
{
diff --git a/src/Makefile.in b/src/Makefile.in
index 13440b2..36aa4de 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -74,14 +74,18 @@ OBJS = \
LangChoice.o \
Legacy.o \
LoadModules.o \
+ Lyrics.o \
+ LyricsWindow.o \
Matrix.o \
Menus.o \
Mix.o \
+ MixerBoard.o \
PitchName.o \
PlatformCompatibility.o \
Printing.o \
Profiler.o \
Project.o \
+ RealFFTf.o \
Resample.o \
RingBuffer.o \
Screenshot.o \
@@ -107,9 +111,16 @@ OBJS = \
WaveClip.o \
WaveTrack.o \
WrappedType.o \
+ commands/AppCommandEvent.o \
+ commands/CommandBuilder.o \
+ commands/CommandHandler.o \
commands/CommandManager.o \
commands/Keyboard.o \
+ commands/ResponseQueue.o \
+ commands/ScreenshotCommand.o \
+ commands/ScriptCommandRelay.o \
effects/Effect.o \
+ effects/Generator.o \
effects/EffectCategory.o \
effects/EffectManager.o \
effects/SimpleMono.o \
@@ -171,18 +182,24 @@ OBJS = \
ondemand/ODTask.o \
ondemand/ODTaskThread.o \
ondemand/ODWaveTrackTaskQueue.o \
- prefs/AudioIOPrefs.o \
- prefs/BatchPrefs.o \
- prefs/DirectoriesPrefs.o \
- prefs/FileFormatPrefs.o \
- prefs/GUIPrefs.o \
- prefs/KeyConfigPrefs.o \
- prefs/MousePrefs.o \
- prefs/PrefsDialog.o \
- prefs/QualityPrefs.o \
- prefs/SmartRecordPrefs.o \
- prefs/SpectrumPrefs.o \
- prefs/ThemePrefs.o \
+ prefs/BatchPrefs.o \
+ prefs/DevicePrefs.o \
+ prefs/DirectoriesPrefs.o \
+ prefs/GUIPrefs.o \
+ prefs/ImportExportPrefs.o \
+ prefs/KeyConfigPrefs.o \
+ prefs/LibraryPrefs.o \
+ prefs/MidiIOPrefs.o \
+ prefs/MousePrefs.o \
+ prefs/PlaybackPrefs.o \
+ prefs/PrefsDialog.o \
+ prefs/ProjectsPrefs.o \
+ prefs/QualityPrefs.o \
+ prefs/RecordingPrefs.o \
+ prefs/SpectrumPrefs.o \
+ prefs/ThemePrefs.o \
+ prefs/TracksPrefs.o \
+ prefs/WarningsPrefs.o \
toolbars/ControlToolBar.o \
toolbars/DeviceToolBar.o \
toolbars/EditToolBar.o \
@@ -199,6 +216,7 @@ OBJS = \
widgets/AttachableScrollBar.o \
widgets/ErrorDialog.o \
widgets/ExpandingToolBar.o \
+ widgets/FileHistory.o \
widgets/Grabber.o \
widgets/Grid.o \
widgets/HtmlWindow.o \
diff --git a/src/Menus.cpp b/src/Menus.cpp
index ead318f..2d16bf2 100644
--- a/src/Menus.cpp
+++ b/src/Menus.cpp
@@ -6,7 +6,7 @@
Dominic Mazzoni
Brian Gunlogson
- et. al.
+ et al.
*******************************************************************//**
@@ -63,9 +63,16 @@ simplifies construction of menu items.
#include "widgets/TimeTextCtrl.h"
#include "ShuttleGui.h"
#include "HistoryWindow.h"
+#ifdef EXPERIMENTAL_LYRICS_WINDOW
+ #include "LyricsWindow.h"
+#endif
+#ifdef EXPERIMENTAL_MIXER_BOARD
+ #include "MixerBoard.h"
+#endif
#include "Internat.h"
#include "FileFormats.h"
#include "FreqWindow.h"
+#include "LoadModules.h"
#include "Prefs.h"
#include "Printing.h"
#include "UploadDialog.h"
@@ -88,6 +95,8 @@ simplifies construction of menu items.
#include "toolbars/ControlToolBar.h"
#include "toolbars/ToolsToolBar.h"
#include "toolbars/EditToolBar.h"
+#include "toolbars/MixerToolBar.h"
+#include "toolbars/TranscriptionToolBar.h"
#include "Experimental.h"
#include "PlatformCompatibility.h"
@@ -96,6 +105,7 @@ simplifies construction of menu items.
#include "TimerRecordDialog.h"
#include "SoundActivatedRecord.h"
#include "LabelDialog.h"
+#include "effects/Contrast.h"
#include "FileDialog.h"
#include "SplashDialog.h"
@@ -182,492 +192,465 @@ void AudacityProject::CreateMenusAndCommands()
EffectArray *effects;
wxArrayString names;
wxArrayInt indices;
-#ifndef EFFECT_CATEGORIES
- unsigned int i;
-#endif
wxMenuBar *menubar = c->AddMenuBar(wxT("appmenu"));
- //
+ /////////////////////////////////////////////////////////////////////////////
// File menu
- //
+ /////////////////////////////////////////////////////////////////////////////
c->BeginMenu(_("&File"));
c->SetDefaultFlags(AudioIONotBusyFlag, AudioIONotBusyFlag);
- c->AddItem(wxT("New"), _("&New\tCtrl+N"), FN(OnNew));
- c->SetCommandFlags(wxT("New"), 0, 0);
- c->AddItem(wxT("Open"), _("&Open...\tCtrl+O"), FN(OnOpen));
- c->SetCommandFlags(wxT("Open"), 0, 0);
+
+ c->AddItem(wxT("New"), _("&New"), FN(OnNew), wxT("Ctrl+N"),
+ AlwaysEnabledFlag,
+ AlwaysEnabledFlag);
+
+ c->AddItem(wxT("Open"), _("&Open..."), FN(OnOpen), wxT("Ctrl+O"),
+ AlwaysEnabledFlag,
+ AlwaysEnabledFlag);
+
+ /////////////////////////////////////////////////////////////////////////////
CreateRecentFilesMenu(c);
- c->AddItem(wxT("Close"), _("&Close\tCtrl+W"), FN(OnClose));
- if( !mCleanSpeechMode )
- {
- c->AddItem(wxT("Save"), _("&Save Project\tCtrl+S"), FN(OnSave));
- c->SetCommandFlags(wxT("Save"),
- AudioIONotBusyFlag | UnsavedChangesFlag,
- AudioIONotBusyFlag | UnsavedChangesFlag);
- c->AddItem(wxT("SaveAs"), _("Save Project &As..."), FN(OnSaveAs));
- #ifdef USE_LIBVORBIS
- c->AddItem(wxT("SaveCompressed"), _("Save Compressed Copy of Project..."), FN(OnSaveCompressed));
- #endif
+ /////////////////////////////////////////////////////////////////////////////
+
+ c->AddSeparator();
+
+ c->AddItem(wxT("Close"), _("&Close"), FN(OnClose), wxT("Ctrl+W"));
+
+ if (!mCleanSpeechMode) {
+ c->AddItem(wxT("Save"), _("&Save Project"), FN(OnSave), wxT("Ctrl+S"),
+ AudioIONotBusyFlag | UnsavedChangesFlag,
+ AudioIONotBusyFlag | UnsavedChangesFlag);
+ c->AddItem(wxT("SaveAs"), _("Save Project &As..."), FN(OnSaveAs));
+#ifdef USE_LIBVORBIS
+ c->AddItem(wxT("SaveCompressed"), _("Save Compressed Copy of Project..."), FN(OnSaveCompressed));
+#endif
}
- c->AddItem(wxT("CheckDeps"), _("Chec&k Dependencies..."), FN(OnCheckDependencies));
+ c->AddItem(wxT("CheckDeps"), _("Chec&k Dependencies..."), FN(OnCheckDependencies));
c->AddSeparator();
- c->AddSeparator();
+
+ c->AddItem(wxT("EditMetaData"), _("Open Me&tadata Editor..."), FN(OnEditMetadata));
+
c->AddSeparator();
- c->AddItem(wxT("EditMetaData"), _("Open Me&tadata Editor..."), FN(OnEditMetadata));
- //c->SetCommandFlags(wxT("EditID3"), AudioIONotBusyFlag, AudioIONotBusyFlag);
+ /////////////////////////////////////////////////////////////////////////////
- if( !mCleanSpeechMode )
- {
- c->AddSeparator();
+ if (!mCleanSpeechMode) {
c->BeginSubMenu(_("&Import"));
- c->SetDefaultFlags(AudioIONotBusyFlag, AudioIONotBusyFlag);
- c->AddItem(wxT("ImportAudio"), _("&Audio...\tCtrl+Shift+I"), FN(OnImport));
- c->AddItem(wxT("ImportLabels"), _("&Labels..."), FN(OnImportLabels));
- #ifdef USE_MIDI
- c->AddItem(wxT("ImportMIDI"), _("&MIDI..."), FN(OnImportMIDI));
- #endif // USE_MIDI
- c->AddItem(wxT("ImportRaw"), _("&Raw Data..."), FN(OnImportRaw));
+
+ c->AddItem(wxT("ImportAudio"), _("&Audio..."), FN(OnImport), wxT("Ctrl+Shift+I"));
+ c->AddItem(wxT("ImportLabels"), _("&Labels..."), FN(OnImportLabels));
+#ifdef USE_MIDI
+ c->AddItem(wxT("ImportMIDI"), _("&MIDI..."), FN(OnImportMIDI));
+#endif // USE_MIDI
+ c->AddItem(wxT("ImportRaw"), _("&Raw Data..."), FN(OnImportRaw));
+
c->EndSubMenu();
-
- c->AddSeparator();
-
- c->AddItem(wxT("Export"), _("&Export..."), FN(OnExport));
- // Enable Export commands only when there are tracks
- c->SetCommandFlags(wxT("Export"),
- AudioIONotBusyFlag | WaveTracksExistFlag,
- AudioIONotBusyFlag | WaveTracksExistFlag);
-
- c->AddItem(wxT("ExportSel"), _("Expo&rt Selection..."), FN(OnExportSelection));
- // Enable Export Selection commands only when there's a selection
- c->SetCommandFlags(wxT("ExportSel"),
- AudioIONotBusyFlag | TimeSelectedFlag | WaveTracksSelectedFlag,
- AudioIONotBusyFlag | TimeSelectedFlag | WaveTracksSelectedFlag);
-
- c->AddSeparator();
- c->AddItem(wxT("ExportLabels"), _("Export &Labels..."), FN(OnExportLabels));
- c->AddItem(wxT("ExportMultiple"), _("Export &Multiple..."), FN(OnExportMultiple));
-#if defined(USE_MIDI)
- c->AddItem(wxT("ExportMIDI"), _("Export MIDI..."), FN(OnExportMIDI));
-#endif
- c->SetCommandFlags(wxT("ExportLabels"),
- AudioIONotBusyFlag | LabelTracksExistFlag,
- AudioIONotBusyFlag | LabelTracksExistFlag);
- c->SetCommandFlags(wxT("ExportMultiple"),
- AudioIONotBusyFlag | TracksExistFlag,
- AudioIONotBusyFlag | TracksExistFlag);
- c->SetCommandFlags(wxT("ExportMIDI"),
- AudioIONotBusyFlag | NoteTracksSelectedFlag,
- AudioIONotBusyFlag | NoteTracksSelectedFlag);
+ c->AddSeparator();
}
- c->AddSeparator();
+ /////////////////////////////////////////////////////////////////////////////
+
+ // Enable Export commands only when there are tracks
+ c->AddItem(wxT("Export"), _("&Export..."), FN(OnExport),
+ AudioIONotBusyFlag | WaveTracksExistFlag,
+ AudioIONotBusyFlag | WaveTracksExistFlag);
+
+ // Enable Export Selection commands only when there's a selection
+ c->AddItem(wxT("ExportSel"), _("Expo&rt Selection..."), FN(OnExportSelection),
+ AudioIONotBusyFlag | TimeSelectedFlag | WaveTracksSelectedFlag,
+ AudioIONotBusyFlag | TimeSelectedFlag | WaveTracksSelectedFlag);
+
+ if (!mCleanSpeechMode) {
- if( mCleanSpeechMode )
- {
-
- c->AddItem(wxT("Export"), _("&Export..."), FN(OnExport));
- // Enable Export commands only when there are tracks
- c->SetCommandFlags(wxT("Export"),
- AudioIONotBusyFlag | TracksExistFlag,
- AudioIONotBusyFlag | TracksExistFlag);
-
- c->AddItem(wxT("ExportSel"), _("Expo&rt Selection..."), FN(OnExportSelection));
- // Enable Export Selection commands only when there's a selection
- c->SetCommandFlags(wxT("ExportSel"),
- AudioIONotBusyFlag | TimeSelectedFlag | TracksSelectedFlag,
- AudioIONotBusyFlag | TimeSelectedFlag | TracksSelectedFlag);
-
c->AddSeparator();
- c->AddItem(wxT("ApplyChain"), _("CleanSpeech C&hain..."), FN(OnApplyChain));
- c->AddItem(wxT("EditChains"), _("Edit C&hains..."), FN(OnEditChains));
- c->AddItem(wxT("ExportCcSettings"), _("Export CleanSpeech &Presets..."), FN(OnExportCleanSpeechPresets));
- c->AddItem(wxT("ImportCcSettings"), _("I&mport CleanSpeech Presets..."), FN(OnImportCleanSpeechPresets));
- c->SetCommandFlags(wxT("BatchProcess"), AudioIONotBusyFlag, AudioIONotBusyFlag);
-#ifdef __WXDEBUG__
- gPrefs->Write(wxT("/Validate/DebugBuild"), "Y");
-#else
- gPrefs->Write(wxT("/Validate/DebugBuild"), "N");
+ c->AddItem(wxT("ExportLabels"), _("Export &Labels..."), FN(OnExportLabels),
+ AudioIONotBusyFlag | LabelTracksExistFlag,
+ AudioIONotBusyFlag | LabelTracksExistFlag);
+ c->AddItem(wxT("ExportMultiple"), _("Export &Multiple..."), FN(OnExportMultiple),
+ AudioIONotBusyFlag | TracksExistFlag,
+ AudioIONotBusyFlag | TracksExistFlag);
+#if defined(USE_MIDI)
+ c->AddItem(wxT("ExportMIDI"), _("Export MIDI..."), FN(OnExportMIDI),
+ AudioIONotBusyFlag | NoteTracksSelectedFlag,
+ AudioIONotBusyFlag | NoteTracksSelectedFlag);
#endif
- }
- else
- {
- c->AddItem(wxT("AppplyChain"), _("Appl&y Chain..."), FN(OnApplyChain));
- c->SetCommandFlags(wxT("BatchProcess"), AudioIONotBusyFlag, AudioIONotBusyFlag);
- c->AddItem(wxT("EditChains"), _("Edit C&hains..."), FN(OnEditChains));
}
+ c->AddItem(wxT("ApplyChain"), _("Appl&y Chain..."), FN(OnApplyChain),
+ AudioIONotBusyFlag,
+ AudioIONotBusyFlag);
+ c->AddItem(wxT("EditChains"), _("Edit C&hains..."), FN(OnEditChains));
+
+ if (mCleanSpeechMode) {
+ c->AddItem(wxT("ExportCcSettings"), _("Export CleanSpeech &Presets..."), FN(OnExportCleanSpeechPresets));
+ c->AddItem(wxT("ImportCcSettings"), _("I&mport CleanSpeech Presets..."), FN(OnImportCleanSpeechPresets));
+ }
+ else {
+
#ifdef EXPERIMENTAL_FTP
- c->AddSeparator();
- c->AddItem(wxT("Upload File"), _("&Upload File..."), FN(OnUpload));
+ c->AddSeparator();
+
+ c->AddItem(wxT("Upload File"), _("&Upload File..."), FN(OnUpload));
#endif
- if( !mCleanSpeechMode )
- {
c->AddSeparator();
- c->AddItem(wxT("PageSetup"), _("Pa&ge Setup..."), FN(OnPageSetup));
- c->AddItem(wxT("Print"), _("&Print..."), FN(OnPrint));
- c->SetCommandFlags(wxT("PageSetup"),
- AudioIONotBusyFlag | TracksExistFlag,
- AudioIONotBusyFlag | TracksExistFlag);
- c->SetCommandFlags(wxT("Print"),
- AudioIONotBusyFlag | TracksExistFlag,
- AudioIONotBusyFlag | TracksExistFlag);
- }
+
+ c->AddItem(wxT("PageSetup"), _("Pa&ge Setup..."), FN(OnPageSetup),
+ AudioIONotBusyFlag | TracksExistFlag,
+ AudioIONotBusyFlag | TracksExistFlag);
+ c->AddItem(wxT("Print"), _("&Print..."), FN(OnPrint),
+ AudioIONotBusyFlag | TracksExistFlag,
+ AudioIONotBusyFlag | TracksExistFlag);
+ }
c->AddSeparator();
// On the Mac, the Exit item doesn't actually go here...wxMac will pull it out
// and put it in the Audacity menu for us based on its ID.
- c->AddItem(wxT("Exit"), _("E&xit\tCtrl+Q"), FN(OnExit));
- c->SetCommandFlags(wxT("Exit"), 0, 0);
+ c->AddItem(wxT("Exit"), _("E&xit"), FN(OnExit), wxT("Ctrl+Q"),
+ AlwaysEnabledFlag,
+ AlwaysEnabledFlag);
+
c->EndMenu();
- //
+ /////////////////////////////////////////////////////////////////////////////
// Edit Menu
- //
+ /////////////////////////////////////////////////////////////////////////////
c->BeginMenu(_("&Edit"));
+
c->SetDefaultFlags(AudioIONotBusyFlag | TimeSelectedFlag | TracksSelectedFlag,
AudioIONotBusyFlag | TimeSelectedFlag | TracksSelectedFlag);
- c->AddItem(wxT("Undo"), _("&Undo\tCtrl+Z"), FN(OnUndo));
- c->SetCommandFlags(wxT("Undo"),
- AudioIONotBusyFlag | UndoAvailableFlag,
- AudioIONotBusyFlag | UndoAvailableFlag);
+ c->AddItem(wxT("Undo"), _("&Undo"), FN(OnUndo), wxT("Ctrl+Z"),
+ AudioIONotBusyFlag | UndoAvailableFlag,
+ AudioIONotBusyFlag | UndoAvailableFlag);
- // The default shortcut key for Redo is different
- // on different platforms.
-
- wxString redoLabel = _("&Redo");
- #ifdef __WXMSW__
- redoLabel += wxT("\tCtrl+Y");
- #else
- redoLabel += wxT("\tCtrl+Shift+Z");
- #endif
+ // The default shortcut key for Redo is different on different platforms.
+ wxString key =
+#ifdef __WXMSW__
+ wxT("Ctrl+Y");
+#else
+ wxT("Ctrl+Shift+Z");
+#endif
- c->AddItem(wxT("Redo"), redoLabel, FN(OnRedo));
- c->SetCommandFlags(wxT("Redo"),
- AudioIONotBusyFlag | RedoAvailableFlag,
- AudioIONotBusyFlag | RedoAvailableFlag);
+ c->AddItem(wxT("Redo"), _("&Redo"), FN(OnRedo), key,
+ AudioIONotBusyFlag | RedoAvailableFlag,
+ AudioIONotBusyFlag | RedoAvailableFlag);
c->AddSeparator();
- c->AddItem(wxT("Cut"), _("Cu&t\tCtrl+X"), FN(OnCut));
- c->SetCommandFlags(wxT("Cut"),
- AudioIONotBusyFlag | CutCopyAvailableFlag,
- AudioIONotBusyFlag | CutCopyAvailableFlag);
- c->AddItem(wxT("SplitCut"), _("Spl&it Cut\tCtrl+Alt+X"), FN(OnSplitCut));
- c->AddItem(wxT("Copy"), _("&Copy\tCtrl+C"), FN(OnCopy));
- c->SetCommandFlags(wxT("Copy"),
- AudioIONotBusyFlag | CutCopyAvailableFlag,
- AudioIONotBusyFlag | CutCopyAvailableFlag);
- c->AddItem(wxT("Paste"), _("&Paste\tCtrl+V"), FN(OnPaste));
- c->SetCommandFlags(wxT("Paste"),
- AudioIONotBusyFlag | ClipboardFlag,
- AudioIONotBusyFlag | ClipboardFlag);
- c->AddItem(wxT("Trim"), _("Tri&m\tCtrl+T"), FN(OnTrim));
+
+ c->AddItem(wxT("Cut"), _("Cu&t"), FN(OnCut), wxT("Ctrl+X"),
+ AudioIONotBusyFlag | CutCopyAvailableFlag,
+ AudioIONotBusyFlag | CutCopyAvailableFlag);
+ c->AddItem(wxT("SplitCut"), _("Spl&it Cut"), FN(OnSplitCut), wxT("Ctrl+Alt+X"));
+ c->AddItem(wxT("Copy"), _("&Copy"), FN(OnCopy), wxT("Ctrl+C"),
+ AudioIONotBusyFlag | CutCopyAvailableFlag,
+ AudioIONotBusyFlag | CutCopyAvailableFlag);
+ c->AddItem(wxT("Paste"), _("&Paste"), FN(OnPaste), wxT("Ctrl+V"),
+ AudioIONotBusyFlag | ClipboardFlag,
+ AudioIONotBusyFlag | ClipboardFlag);
+ c->AddItem(wxT("Trim"), _("Tri&m"), FN(OnTrim), wxT("Ctrl+T"));
+
c->AddSeparator();
- c->AddItem(wxT("Delete"), _("&Delete\tCtrl+K"), FN(OnDelete));
- c->AddItem(wxT("SplitDelete"), _("Split D&elete\tCtrl+Alt+K"), FN(OnSplitDelete));
- c->AddItem(wxT("Silence"), _("Silence Audi&o\tCtrl+L"), FN(OnSilence));
+
+ c->AddItem(wxT("Delete"), _("&Delete"), FN(OnDelete), wxT("Ctrl+K"));
+ c->AddItem(wxT("SplitDelete"), _("Split D&elete"), FN(OnSplitDelete), wxT("Ctrl+Alt+K"));
+ c->AddItem(wxT("Silence"), _("Silence Audi&o"), FN(OnSilence), wxT("Ctrl+L"));
+
c->AddSeparator();
- c->AddItem(wxT("Split"), _("Sp&lit\tCtrl+I"), FN(OnSplit));
- c->SetCommandFlags(wxT("Split"),
- AudioIONotBusyFlag | WaveTracksSelectedFlag,
- AudioIONotBusyFlag | WaveTracksSelectedFlag);
- c->AddItem(wxT("SplitNew"), _("Split Ne&w\tCtrl+Alt+I"), FN(OnSplitNew));
- c->SetCommandFlags(wxT("SplitNew"),
- AudioIONotBusyFlag | TimeSelectedFlag | WaveTracksSelectedFlag,
- AudioIONotBusyFlag | TimeSelectedFlag | WaveTracksSelectedFlag);
+ c->AddItem(wxT("Split"), _("Sp&lit"), FN(OnSplit), wxT("Ctrl+I"),
+ AudioIONotBusyFlag | WaveTracksSelectedFlag,
+ AudioIONotBusyFlag | WaveTracksSelectedFlag);
- c->AddItem(wxT("Join"), _("&Join\tCtrl+J"), FN(OnJoin));
- c->AddItem(wxT("Disjoin"), _("Detac&h at Silences\tCtrl+Alt+J"), FN(OnDisjoin));
- c->AddItem(wxT("Duplicate"), _("Duplic&ate\tCtrl+D"), FN(OnDuplicate));
+ c->AddItem(wxT("SplitNew"), _("Split Ne&w"), FN(OnSplitNew), wxT("Ctrl+Alt+I"),
+ AudioIONotBusyFlag | TimeSelectedFlag | WaveTracksSelectedFlag,
+ AudioIONotBusyFlag | TimeSelectedFlag | WaveTracksSelectedFlag);
+
+ c->AddItem(wxT("Join"), _("&Join"), FN(OnJoin), wxT("Ctrl+J"));
+ c->AddItem(wxT("Disjoin"), _("Detac&h at Silences"), FN(OnDisjoin), wxT("Ctrl+Alt+J"));
+ c->AddItem(wxT("Duplicate"), _("Duplic&ate"), FN(OnDuplicate), wxT("Ctrl+D"));
// An anomaly... StereoToMono is added here for CleanSpeech,
// which doesn't have a Tracks menu, but is under Tracks for normal Audacity.
- if( mCleanSpeechMode )
- {
- c->AddItem(wxT("Stereo to Mono"), _("Stereo Trac&k to Mono"), FN(OnStereoToMono));
- c->SetCommandFlags(wxT("Stereo to Mono"),
- AudioIONotBusyFlag | StereoRequiredFlag | WaveTracksSelectedFlag,
- AudioIONotBusyFlag | StereoRequiredFlag | WaveTracksSelectedFlag);
- }
+ if (mCleanSpeechMode) {
+ c->AddItem(wxT("Stereo to Mono"), _("Stereo Trac&k to Mono"), FN(OnStereoToMono),
+ AudioIONotBusyFlag | StereoRequiredFlag | WaveTracksSelectedFlag,
+ AudioIONotBusyFlag | StereoRequiredFlag | WaveTracksSelectedFlag);
+ }
+
c->AddSeparator();
- c->BeginSubMenu( _( "La&beled Regions" ) );
- /* i18n-hint: Labeled Regions submenu */
- c->AddItem( wxT( "CutLabels" ), _( "&Cut\tAlt+X" ),
- FN( OnCutLabels ) );
- c->SetCommandFlags( wxT( "CutLabels" ), LabelsSelectedFlag,
- LabelsSelectedFlag );
- /* i18n-hint: Labeled Regions submenu */
- c->AddItem( wxT( "SplitCutLabels" ), _( "&Split Cut\tShift+Alt+X" ),
- FN( OnSplitCutLabels ) );
- c->SetCommandFlags( wxT( "SplitCutLabels" ), LabelsSelectedFlag,
- LabelsSelectedFlag );
- /* i18n-hint: Labeled Regions submenu */
- c->AddItem( wxT( "CopyLabels" ), _( "Co&py\tShift+Alt+C" ),
- FN( OnCopyLabels ) );
- c->SetCommandFlags( wxT( "CopyLabels" ), LabelsSelectedFlag,
- LabelsSelectedFlag );
+ /////////////////////////////////////////////////////////////////////////////
+
+ c->BeginSubMenu(_("La&beled Regions"));
+ c->SetDefaultFlags(LabelsSelectedFlag, LabelsSelectedFlag);
+
+ c->AddItem(wxT("CutLabels"), _("&Cut"), FN(OnCutLabels), wxT("Alt+X"));
+ c->AddItem(wxT("SplitCutLabels"), _("&Split Cut"), FN(OnSplitCutLabels), wxT("Shift+Alt+X"));
+ c->AddItem(wxT("CopyLabels"), _("Co&py"), FN(OnCopyLabels), wxT("Shift+Alt+C"));
+
c->AddSeparator();
- /* i18n-hint: Labeled Regions submenu */
- c->AddItem( wxT( "DeleteLabels" ), _( "&Delete\tAlt+K" ),
- FN( OnDeleteLabels ) );
- c->SetCommandFlags( wxT( "DeleteLabels" ), LabelsSelectedFlag,
- LabelsSelectedFlag );
- /* i18n-hint: Labeled Regions submenu */
- c->AddItem( wxT( "SplitDeleteLabels" ), _( "Sp&lit Delete\tShift+Alt+K" ),
- FN( OnSplitDeleteLabels ) );
- c->SetCommandFlags( wxT( "SplitDeleteLabels" ), LabelsSelectedFlag,
- LabelsSelectedFlag );
- /* i18n-hint: Labeled Regions submenu */
- c->AddItem( wxT( "SilenceLabels" ), _( "Sile&nce\tAlt+L" ),
- FN( OnSilenceLabels ) );
- c->SetCommandFlags( wxT( "SilenceLabels" ), LabelsSelectedFlag,
- LabelsSelectedFlag );
+
+ c->AddItem(wxT("DeleteLabels"), _("&Delete"), FN(OnDeleteLabels), wxT("Alt+K"));
+ c->AddItem(wxT("SplitDeleteLabels"), _("Sp&lit Delete"), FN(OnSplitDeleteLabels), wxT("Shift+Alt+K"));
+ c->AddItem(wxT("SilenceLabels"), _("Sile&nce"), FN(OnSilenceLabels), wxT("Alt+L"));
+
c->AddSeparator();
- /* i18n-hint: Labeled Regions submenu */
- c->AddItem( wxT( "SplitLabels" ), _( "Spli&t\tAlt+I" ),
- FN( OnSplitLabels ) );
- c->SetCommandFlags( wxT( "SplitLabels" ), LabelsSelectedFlag,
- LabelsSelectedFlag );
- /* i18n-hint: Labeled Regions submenu */
- c->AddItem( wxT( "JoinLabels" ), _( "&Join\tAlt+J" ),
- FN( OnJoinLabels ) );
- c->SetCommandFlags( wxT( "JoinLabels" ), LabelsSelectedFlag,
- LabelsSelectedFlag );
- /* i18n-hint: Labeled Regions submenu */
- c->AddItem( wxT( "DisjoinLabels" ), _( "Detac&h at Silences\tShift+Alt+J" ), FN( OnDisjoinLabels ) );
- c->SetCommandFlags( wxT( "DisjoinLabels" ), LabelsSelectedFlag,
- LabelsSelectedFlag );
+
+ c->AddItem(wxT("SplitLabels"), _("Spli&t"), FN(OnSplitLabels), wxT("Alt+I"));
+ c->AddItem(wxT("JoinLabels"), _("&Join"), FN(OnJoinLabels), wxT("Alt+J"));
+ c->AddItem(wxT("DisjoinLabels"), _("Detac&h at Silences"), FN(OnDisjoinLabels), wxT("Shift+Alt+J"));
+
c->EndSubMenu();
-
+
+ /////////////////////////////////////////////////////////////////////////////
+
c->BeginSubMenu(_("&Select"));
- c->AddItem(wxT("SelectAll"), _("&All\tCtrl+A"), FN(OnSelectAll));
- c->AddItem(wxT("SelectNone"), _("&None\tCtrl+Shift+A"), FN(OnSelectNone));
- c->SetCommandFlags(TracksExistFlag, TracksExistFlag,
- wxT("SelectAll"), wxT("SelectNone"), NULL);
+ c->SetDefaultFlags(TracksExistFlag, TracksExistFlag);
+
+ c->AddItem(wxT("SelectAll"), _("&All"), FN(OnSelectAll), wxT("Ctrl+A"));
+ c->AddItem(wxT("SelectNone"), _("&None"), FN(OnSelectNone), wxT("Ctrl+Shift+A"));
+
+ c->AddItem(wxT("SetLeftSelection"), _("&Left at Playback Position"), FN(OnSetLeftSelection), wxT("["));
+ c->AddItem(wxT("SetRightSelection"), _("&Right at Playback Position"), FN(OnSetRightSelection), wxT("]"));
- c->AddItem(wxT("SetLeftSelection"),_("&Left at Playback Position\t["), FN(OnSetLeftSelection));
- c->AddItem(wxT("SetRightSelection"),_("&Right at Playback Position\t]"), FN(OnSetRightSelection));
- c->SetCommandFlags(TracksExistFlag, TracksExistFlag,
- wxT("SetLeftSelection"), wxT("SetRightSelection"), NULL);
+ c->SetDefaultFlags(TracksSelectedFlag, TracksSelectedFlag);
- c->AddItem(wxT("SelStartCursor"), _("Track &Start to Cursor\tShift+J"), FN(OnSelectStartCursor));
- c->AddItem(wxT("SelCursorEnd"), _("Cursor to Track &End\tShift+K"), FN(OnSelectCursorEnd));
- c->SetCommandFlags(TracksSelectedFlag, TracksSelectedFlag,
- wxT("SelStartCursor"), wxT("SelCursorEnd"), NULL);
+ c->AddItem(wxT("SelStartCursor"), _("Track &Start to Cursor"), FN(OnSelectStartCursor), wxT("Shift+J"));
+ c->AddItem(wxT("SelCursorEnd"), _("Cursor to Track &End"), FN(OnSelectCursorEnd), wxT("Shift+K"));
c->EndSubMenu();
- c->AddItem(wxT("ZeroCross"), _("Find &Zero Crossings\tZ"), FN(OnZeroCrossing));
- c->SetCommandFlags(wxT("ZeroCross"), TracksSelectedFlag, TracksSelectedFlag);
+ /////////////////////////////////////////////////////////////////////////////
+
+ c->AddItem(wxT("ZeroCross"), _("Find &Zero Crossings"), FN(OnZeroCrossing), wxT("Z"));
+
+ /////////////////////////////////////////////////////////////////////////////
c->BeginSubMenu(_("Mo&ve Cursor"));
- c->AddItem(wxT("CursSelStart"), _("to Selection Star&t"), FN(OnCursorSelStart));
- c->AddItem(wxT("CursSelEnd"), _("to Selection En&d"), FN(OnCursorSelEnd));
- c->SetCommandFlags(TimeSelectedFlag, TimeSelectedFlag,
- wxT("CursSelStart"), wxT("CursSelEnd"), NULL);
+ c->AddItem(wxT("CursSelStart"), _("to Selection Star&t"), FN(OnCursorSelStart));
+ c->AddItem(wxT("CursSelEnd"), _("to Selection En&d"), FN(OnCursorSelEnd));
- c->AddItem(wxT("CursTrackStart"), _("to Track &Start\tJ"), FN(OnCursorTrackStart));
- c->AddItem(wxT("CursTrackEnd"), _("to Track &End\tK"), FN(OnCursorTrackEnd));
- c->SetCommandFlags(TracksSelectedFlag, TracksSelectedFlag,
- wxT("CursTrackStart"), wxT("CursTrackEnd"), NULL);
+ c->AddItem(wxT("CursTrackStart"), _("to Track &Start"), FN(OnCursorTrackStart), wxT("J"));
+ c->AddItem(wxT("CursTrackEnd"), _("to Track &End"), FN(OnCursorTrackEnd), wxT("K"));
c->EndSubMenu();
+ /////////////////////////////////////////////////////////////////////////////
+
c->AddSeparator();
- c->AddItem(wxT("SelSave"), _("Re&gion Save"), FN(OnSelectionSave));
- c->AddItem(wxT("SelRestore"), _("Regio&n Restore"), FN(OnSelectionRestore));
- c->SetCommandFlags(wxT("SelSave"),
- TimeSelectedFlag | WaveTracksSelectedFlag,
- TimeSelectedFlag | WaveTracksSelectedFlag);
- c->SetCommandFlags(wxT("SelRestore"),
- TracksExistFlag,
- TracksExistFlag);
+ c->AddItem(wxT("SelSave"), _("Re&gion Save"), FN(OnSelectionSave),
+ TimeSelectedFlag | WaveTracksSelectedFlag,
+ TimeSelectedFlag | WaveTracksSelectedFlag);
+ c->AddItem(wxT("SelRestore"), _("Regio&n Restore"), FN(OnSelectionRestore),
+ TracksExistFlag,
+ TracksExistFlag);
c->AddSeparator();
+ /////////////////////////////////////////////////////////////////////////////
+
c->BeginSubMenu(_("Pla&y Region"));
- c->AddItem(wxT("LockPlayRegion"), _("&Lock"), FN(OnLockPlayRegion));
- c->AddItem(wxT("UnlockPlayRegion"), _("&Unlock"), FN(OnUnlockPlayRegion));
- c->SetCommandFlags(wxT("LockPlayRegion"), PlayRegionNotLockedFlag, PlayRegionNotLockedFlag);
- c->SetCommandFlags(wxT("UnlockPlayRegion"), PlayRegionLockedFlag, PlayRegionLockedFlag);
+
+ c->AddItem(wxT("LockPlayRegion"), _("&Lock"), FN(OnLockPlayRegion),
+ PlayRegionNotLockedFlag,
+ PlayRegionNotLockedFlag);
+ c->AddItem(wxT("UnlockPlayRegion"), _("&Unlock"), FN(OnUnlockPlayRegion),
+ PlayRegionLockedFlag,
+ PlayRegionLockedFlag);
+
c->EndSubMenu();
- // Alternate strings
- wxString dummy1 = _("Turn Snap-To On");
- wxString dummy2 = _("Turn Snap-To Off");
- wxString dummy3 = _("Turn Grid Snap On");
- wxString dummy4 = _("Turn Grid Snap Off");
-
- // Moved Preferences from File Menu 02/09/05 Richard Ash.
- #ifdef __WXMAC__
- /* i18n-hint: Mac OS X Preferences shortcut should be Ctrl+, */
- c->AddItem(wxT("Preferences"), _("Pre&ferences...\tCtrl+,"), FN(OnPreferences));
- #else
- /* i18n-hint: On Windows and Linux, the Preferences shortcut is usually Ctrl+P */
+ /////////////////////////////////////////////////////////////////////////////
+
+#ifndef __WXMAC__
c->AddSeparator();
- c->AddItem(wxT("Preferences"), _("Pre&ferences...\tCtrl+P"), FN(OnPreferences));
- #endif
- c->SetCommandFlags(wxT("Preferences"), AudioIONotBusyFlag, AudioIONotBusyFlag);
+#endif
+
+ // The default shortcut key for Preferences is different on different platforms.
+ key =
+#ifdef __WXMAC__
+ wxT("Ctrl+,");
+#else
+ wxT("Ctrl+P");
+#endif
+
+ c->AddItem(wxT("Preferences"), _("Pre&ferences..."), FN(OnPreferences), key,
+ AudioIONotBusyFlag,
+ AudioIONotBusyFlag);
c->EndMenu();
- //
+ /////////////////////////////////////////////////////////////////////////////
// View Menu
- //
+ /////////////////////////////////////////////////////////////////////////////
c->BeginMenu(_("&View"));
- c->SetDefaultFlags(0, 0);
- c->AddItem(wxT("ZoomIn"), _("Zoom &In\tCtrl+1"), FN(OnZoomIn));
- c->SetCommandFlags(wxT("ZoomIn"), ZoomInAvailableFlag, ZoomInAvailableFlag);
+ c->SetDefaultFlags(AudioIONotBusyFlag, AudioIONotBusyFlag);
- c->AddItem(wxT("ZoomNormal"), _("Zoom &Normal\tCtrl+2"), FN(OnZoomNormal));
- c->AddItem(wxT("ZoomOut"), _("Zoom &Out\tCtrl+3"), FN(OnZoomOut));
- c->SetCommandFlags(wxT("ZoomOut"), ZoomOutAvailableFlag, ZoomOutAvailableFlag);
+ c->AddItem(wxT("ZoomIn"), _("Zoom &In"), FN(OnZoomIn), wxT("Ctrl+1"),
+ ZoomInAvailableFlag,
+ ZoomInAvailableFlag);
+ c->AddItem(wxT("ZoomNormal"), _("Zoom &Normal"), FN(OnZoomNormal), wxT("Ctrl+2"));
+ c->AddItem(wxT("ZoomOut"), _("Zoom &Out"), FN(OnZoomOut), wxT("Ctrl+3"),
+ ZoomOutAvailableFlag,
+ ZoomOutAvailableFlag);
- c->AddItem(wxT("FitInWindow"), _("&Fit in Window\tCtrl+F"), FN(OnZoomFit));
- c->AddItem(wxT("FitV"), _("Fit &Vertically\tCtrl+Shift+F"), FN(OnZoomFitV));
- c->AddItem(wxT("ZoomSel"), _("&Zoom to Selection\tCtrl+E"), FN(OnZoomSel));
+ c->AddItem(wxT("FitInWindow"), _("&Fit in Window"), FN(OnZoomFit), wxT("Ctrl+F"));
+ c->AddItem(wxT("FitV"), _("Fit &Vertically"), FN(OnZoomFitV), wxT("Ctrl+Shift+F"));
+ c->AddItem(wxT("ZoomSel"), _("&Zoom to Selection"), FN(OnZoomSel), wxT("Ctrl+E"));
c->AddSeparator();
- c->AddItem(wxT("CollapseAllTracks"), _("&Collapse All Tracks\tCtrl+Shift+C"), FN(OnCollapseAllTracks));
- c->AddItem(wxT("ExpandAllTracks"), _("E&xpand All Tracks\tCtrl+Shift+X"), FN(OnExpandAllTracks));
-
+
+ c->AddItem(wxT("CollapseAllTracks"), _("&Collapse All Tracks"), FN(OnCollapseAllTracks), wxT("Ctrl+Shift+C"));
+ c->AddItem(wxT("ExpandAllTracks"), _("E&xpand All Tracks"), FN(OnExpandAllTracks), wxT("Ctrl+Shift+X"));
+
c->AddSeparator();
- c->AddItem(wxT("ShowClipping"), _("&Show Clipping"), FN(OnShowClipping),
- gPrefs->Read(wxT("/GUI/ShowClipping"), 0L));
+
+ c->AddCheck(wxT("ShowClipping"), _("&Show Clipping"), FN(OnShowClipping),
+ gPrefs->Read(wxT("/GUI/ShowClipping"), 0L));
c->AddSeparator();
-// c->BeginSubMenu(_("Set Selection Format"));
-// c->AddItemList(wxT("SelectionFormat"), GetSelectionFormats(), FN(OnSelectionFormat));
-// c->EndSubMenu();
-//
-// c->AddSeparator();
- c->AddItem(wxT("UndoHistory"), _("&History..."), FN(OnHistory));
- c->SetCommandFlags(wxT("UndoHistory"),
- AudioIONotBusyFlag | UndoAvailableFlag,
- AudioIONotBusyFlag | UndoAvailableFlag);
+
+ c->AddItem(wxT("UndoHistory"), _("&History..."), FN(OnHistory),
+ AudioIONotBusyFlag | UndoAvailableFlag,
+ AudioIONotBusyFlag | UndoAvailableFlag);
+
+ #ifdef EXPERIMENTAL_LYRICS_WINDOW
+ c->AddItem(wxT("Lyrics"), _("&Lyrics..."), FN(OnLyrics), LabelTracksExistFlag, LabelTracksExistFlag);
+ #endif
+ #ifdef EXPERIMENTAL_MIXER_BOARD
+ c->AddItem(wxT("MixerBoard"), _("&Mixer Board..."), FN(OnMixerBoard), WaveTracksExistFlag, WaveTracksExistFlag);
+ #endif
c->AddSeparator();
+
+ /////////////////////////////////////////////////////////////////////////////
+
c->BeginSubMenu(_("&Toolbars"));
- c->AddItem(wxT("ShowControlTB"), _("&Control Toolbar"), FN(OnShowControlToolBar), 0);
- c->AddItem(wxT("ShowDeviceTB"), _("&Device Toolbar"), FN(OnShowDeviceToolBar), 0);
- c->AddItem(wxT("ShowEditTB"), _("&Edit Toolbar"), FN(OnShowEditToolBar), 0);
- c->AddItem(wxT("ShowMeterTB"), _("&Meter Toolbar"), FN(OnShowMeterToolBar), 0);
- c->AddItem(wxT("ShowMixerTB"), _("Mi&xer Toolbar"), FN(OnShowMixerToolBar), 0);
- c->AddItem(wxT("ShowSelectionTB"), _("&Selection Toolbar"), FN(OnShowSelectionToolBar), 0);
- c->AddItem(wxT("ShowToolsTB"), _("T&ools Toolbar"), FN(OnShowToolsToolBar), 0);
- c->AddItem(wxT("ShowTranscriptionTB"), _("Transcri&ption Toolbar"), FN(OnShowTranscriptionToolBar), 0);
+
+ c->AddCheck(wxT("ShowControlTB"), _("&Control Toolbar"), FN(OnShowControlToolBar), 0);
+ c->AddCheck(wxT("ShowDeviceTB"), _("&Device Toolbar"), FN(OnShowDeviceToolBar), 0);
+ c->AddCheck(wxT("ShowEditTB"), _("&Edit Toolbar"), FN(OnShowEditToolBar), 0);
+ c->AddCheck(wxT("ShowMeterTB"), _("&Meter Toolbar"), FN(OnShowMeterToolBar), 0);
+ c->AddCheck(wxT("ShowMixerTB"), _("Mi&xer Toolbar"), FN(OnShowMixerToolBar), 0);
+ c->AddCheck(wxT("ShowSelectionTB"), _("&Selection Toolbar"), FN(OnShowSelectionToolBar), 0);
+ c->AddCheck(wxT("ShowToolsTB"), _("T&ools Toolbar"), FN(OnShowToolsToolBar), 0);
+ c->AddCheck(wxT("ShowTranscriptionTB"), _("Transcri&ption Toolbar"), FN(OnShowTranscriptionToolBar), 0);
+
c->AddSeparator();
- c->AddItem(wxT("ResetToolbars"), _("&Reset Toolbars"), FN(OnResetToolBars));
+
+ c->AddItem(wxT("ResetToolbars"), _("&Reset Toolbars"), FN(OnResetToolBars),
+ AudioIONotBusyFlag,
+ AudioIONotBusyFlag);
+
c->EndSubMenu();
- c->AddItem(wxT("SimplifiedView"), _("!Simplified View"), FN(OnSimplifiedView), mCommandManager.mbHideFlaggedItems ? 1:0);
+
+ /////////////////////////////////////////////////////////////////////////////
+
+ c->AddCheck(wxT("SimplifiedView"), _("!Simplified View"), FN(OnSimplifiedView),
+ mCommandManager.mbHideFlaggedItems ? 1 : 0);
+
c->EndMenu();
- //
+ /////////////////////////////////////////////////////////////////////////////
// Transport Menu
- //
+ /////////////////////////////////////////////////////////////////////////////
/*i18n-hint: 'Transport' is the name given to the set of controls that
play, record, pause etc. */
c->BeginMenu(_("T&ransport"));
- c->SetDefaultFlags(0, 0);
- c->AddItem(wxT("Play"), _("Play\tSpace"), FN(OnPlayStop));
- c->SetCommandFlags(wxT("Play"), AudioIONotBusyFlag, AudioIONotBusyFlag);
- c->AddItem(wxT("PlayLooped"), _("&Loop Play\tShift+Space"), FN(OnPlayLooped));
- c->SetCommandFlags(wxT("PlayLooped"), AudioIONotBusyFlag, AudioIONotBusyFlag);
- c->AddItem(wxT("Pause"), _("&Pause\tP"), FN(OnPause));
- c->AddItem(wxT("Stop"), _("&Stop\tSpace"), FN(OnStop));
- c->AddItem(wxT("SkipStart"), _("Skip to Start\tHome"), FN(OnSkipStart));
- c->SetCommandFlags(wxT("SkipStart"), AudioIONotBusyFlag, AudioIONotBusyFlag);
- c->AddItem(wxT("SkipEnd"), _("Skip to End\tEnd"), FN(OnSkipEnd));
- c->SetCommandFlags(wxT("SkipEnd"), AudioIONotBusyFlag, AudioIONotBusyFlag);
+ c->SetDefaultFlags(AudioIONotBusyFlag, AudioIONotBusyFlag);
+
+ c->AddItem(wxT("Play"), _("Play"), FN(OnPlayStop));
+ c->AddItem(wxT("PlayLooped"), _("&Loop Play"), FN(OnPlayLooped), wxT("Shift+Space"));
+ c->AddItem(wxT("Pause"), _("&Pause"), FN(OnPause), wxT("P"),
+ AudioIOBusyFlag,
+ AudioIOBusyFlag);
+ c->AddItem(wxT("Stop"), _("&Stop"), FN(OnStop),
+ AudioIOBusyFlag,
+ AudioIOBusyFlag);
+ c->AddItem(wxT("SkipStart"), _("Skip to Start"), FN(OnSkipStart), wxT("Home"));
+ c->AddItem(wxT("SkipEnd"), _("Skip to End"), FN(OnSkipEnd), wxT("End"));
+
c->AddSeparator();
- c->AddItem(wxT("Record"), _("&Record\tR"), FN(OnRecord));
- c->SetCommandFlags(wxT("Record"), AudioIONotBusyFlag, AudioIONotBusyFlag);
- c->AddItem(wxT("TimerRecord"), _("&Timer Record...\tShift+T"), FN(OnTimerRecord));
- c->SetCommandFlags(wxT("TimerRecord"), AudioIONotBusyFlag, AudioIONotBusyFlag);
- c->AddItem(wxT("RecordAppend"), _("Append Record\tShift+R"), FN(OnRecordAppend));
- c->SetCommandFlags(wxT("RecordAppend"), AudioIONotBusyFlag, AudioIONotBusyFlag);
+
+ c->AddItem(wxT("Record"), _("&Record"), FN(OnRecord), wxT("R"));
+ c->AddItem(wxT("TimerRecord"), _("&Timer Record..."), FN(OnTimerRecord), wxT("Shift+T"));
+ c->AddItem(wxT("RecordAppend"), _("Append Record"), FN(OnRecordAppend), wxT("Shift+R"));
+
c->AddSeparator();
- c->AddItem(wxT("Duplex"), _("Overdub (on/off)"), FN(OnTogglePlayRecording), 0);
- c->SetCommandFlags(wxT("Duplex"), AudioIONotBusyFlag, AudioIONotBusyFlag);
- c->AddItem(wxT("SWPlaythrough"), _("Software Playthrough (on/off)"), FN(OnToggleSWPlaythrough), 0);
- c->SetCommandFlags(wxT("SWPlaythrough"), AudioIONotBusyFlag, AudioIONotBusyFlag);
- // Sound Activated recording options
- c->AddItem(wxT("SoundActivation"), _("Sound Activated Recording (on/off)"), FN(OnToggleSoundActivated), 0);
- c->SetCommandFlags(wxT("SoundActivation"), AudioIONotBusyFlag, AudioIONotBusyFlag);
- c->AddItem(wxT("SoundActivationLevel"), _("Sound Activation Level..."), FN(OnSoundActivated));
- c->SetCommandFlags(wxT("SoundActivationLevel"), AudioIONotBusyFlag, AudioIONotBusyFlag);
- //
- // Tracks Menu (formerly Project Menu)
- //
- if( !mCleanSpeechMode )
- {
+ c->AddCheck(wxT("Duplex"), _("Overdub (on/off)"), FN(OnTogglePlayRecording), 0);
+ c->AddCheck(wxT("SWPlaythrough"), _("Software Playthrough (on/off)"), FN(OnToggleSWPlaythrough), 0);
+
+ // Sound Activated recording options
+ c->AddCheck(wxT("SoundActivation"), _("Sound Activated Recording (on/off)"), FN(OnToggleSoundActivated), 0);
+ c->AddItem(wxT("SoundActivationLevel"), _("Sound Activation Level..."), FN(OnSoundActivated));
+
+ if (!mCleanSpeechMode) {
+
+ //////////////////////////////////////////////////////////////////////////
+ // Tracks Menu (formerly Project Menu)
+ //////////////////////////////////////////////////////////////////////////
+
c->BeginMenu(_("&Tracks"));
c->SetDefaultFlags(AudioIONotBusyFlag, AudioIONotBusyFlag);
- /*c->BeginSubMenu(_("&Current Track..."));
- c->EndSubMenu();
-
- c->AddSeparator();*/
+ //////////////////////////////////////////////////////////////////////////
+
c->BeginSubMenu(_("Add &New"));
- c->AddItem(wxT("NewAudioTrack"), _("&Audio Track\tCtrl+Shift+N"), FN(OnNewWaveTrack));
- c->AddItem(wxT("NewStereoTrack"), _("&Stereo Track"), FN(OnNewStereoTrack));
- c->AddItem(wxT("NewLabelTrack"), _("&Label Track"), FN(OnNewLabelTrack));
- c->AddItem(wxT("NewTimeTrack"), _("&Time Track"), FN(OnNewTimeTrack));
+
+ c->AddItem(wxT("NewAudioTrack"), _("&Audio Track"), FN(OnNewWaveTrack), wxT("Ctrl+Shift+N"));
+ c->AddItem(wxT("NewStereoTrack"), _("&Stereo Track"), FN(OnNewStereoTrack));
+ c->AddItem(wxT("NewLabelTrack"), _("&Label Track"), FN(OnNewLabelTrack));
+ c->AddItem(wxT("NewTimeTrack"), _("&Time Track"), FN(OnNewTimeTrack));
+
c->EndSubMenu();
+ //////////////////////////////////////////////////////////////////////////
+
c->AddSeparator();
+
// StereoToMono moves to the Edit menu when in CleanSpeech mode.
// It belongs here normally, because it is a kind of mix-down.
- c->AddItem(wxT("Stereo to Mono"), _("Stereo Trac&k to Mono"), FN(OnStereoToMono));
- c->SetCommandFlags(wxT("Stereo to Mono"),
- AudioIONotBusyFlag | StereoRequiredFlag | WaveTracksSelectedFlag,
- AudioIONotBusyFlag | StereoRequiredFlag | WaveTracksSelectedFlag);
- c->AddItem(wxT("MixAndRender"), _("Mi&x and Render"), FN(OnMixAndRender));
- c->SetCommandFlags(wxT("MixAndRender"),
- AudioIONotBusyFlag | WaveTracksSelectedFlag,
- AudioIONotBusyFlag | WaveTracksSelectedFlag);
- c->AddCommand(wxT("MixAndRenderToNewTrack"), _("Mix and Render to New Track\tCtrl+Shift+M"), FN(OnMixAndRenderToNewTrack));
- c->SetCommandFlags(wxT("MixAndRenderToNewTrack"),
- AudioIONotBusyFlag | WaveTracksSelectedFlag,
- AudioIONotBusyFlag | WaveTracksSelectedFlag);
- c->AddItem(wxT("Resample"), _("&Resample..."), FN(OnResample));
- c->SetCommandFlags(wxT("Resample"),
- AudioIONotBusyFlag | WaveTracksSelectedFlag,
- AudioIONotBusyFlag | WaveTracksSelectedFlag);
+ c->AddItem(wxT("Stereo to Mono"), _("Stereo Trac&k to Mono"), FN(OnStereoToMono),
+ AudioIONotBusyFlag | StereoRequiredFlag | WaveTracksSelectedFlag,
+ AudioIONotBusyFlag | StereoRequiredFlag | WaveTracksSelectedFlag);
+ c->AddItem(wxT("MixAndRender"), _("Mi&x and Render"), FN(OnMixAndRender),
+ AudioIONotBusyFlag | WaveTracksSelectedFlag,
+ AudioIONotBusyFlag | WaveTracksSelectedFlag);
+ c->AddCommand(wxT("MixAndRenderToNewTrack"), _("Mix and Render to New Track"), FN(OnMixAndRenderToNewTrack), wxT("Ctrl+Shift+M"),
+ AudioIONotBusyFlag | WaveTracksSelectedFlag,
+ AudioIONotBusyFlag | WaveTracksSelectedFlag);
+ c->AddItem(wxT("Resample"), _("&Resample..."), FN(OnResample),
+ AudioIONotBusyFlag | WaveTracksSelectedFlag,
+ AudioIONotBusyFlag | WaveTracksSelectedFlag);
+
c->AddSeparator();
- /* c->AddItem(wxT("NewAudioTrack"), _("New &Audio Track\tShift+Ctrl+N"), FN(OnNewWaveTrack));
- c->AddItem(wxT("NewStereoTrack"), _("New &Stereo Track"), FN(OnNewStereoTrack));
- c->AddItem(wxT("NewLabelTrack"), _("New La&bel Track"), FN(OnNewLabelTrack));
- c->AddItem(wxT("NewTimeTrack"), _("New &Time Track"), FN(OnNewTimeTrack));
- c->AddSeparator();*/
- c->AddItem(wxT("RemoveTracks"), _("Remo&ve Tracks"), FN(OnRemoveTracks));
- c->SetCommandFlags(wxT("RemoveTracks"),
- AudioIONotBusyFlag | TracksSelectedFlag,
- AudioIONotBusyFlag | TracksSelectedFlag);
+
+ c->AddItem(wxT("RemoveTracks"), _("Remo&ve Tracks"), FN(OnRemoveTracks),
+ AudioIONotBusyFlag | TracksSelectedFlag,
+ AudioIONotBusyFlag | TracksSelectedFlag);
+
c->AddSeparator();
- c->AddItem(wxT("MuteAllTracks"), _("&Mute All Tracks\tCtrl+U"), FN(OnMuteAllTracks));
- c->AddItem(wxT("UnMuteAllTracks"), _("&UnMute All Tracks\tCtrl+Shift+U"), FN(OnUnMuteAllTracks));
+ c->AddItem(wxT("MuteAllTracks"), _("&Mute All Tracks"), FN(OnMuteAllTracks), wxT("Ctrl+U"));
+ c->AddItem(wxT("UnMuteAllTracks"), _("&UnMute All Tracks"), FN(OnUnMuteAllTracks), wxT("Ctrl+Shift+U"));
+
c->AddSeparator();
wxArrayString alignLabels;
@@ -681,67 +664,85 @@ void AudacityProject::CreateMenusAndCommands()
alignLabels.Add(_("Align Tracks To&gether"));
c->BeginSubMenu(_("&Align Tracks"));
+
c->AddItemList(wxT("Align"), alignLabels, FN(OnAlign));
c->SetCommandFlags(wxT("Align"),
AudioIONotBusyFlag | TracksSelectedFlag,
AudioIONotBusyFlag | TracksSelectedFlag);
+
c->EndSubMenu();
+ //////////////////////////////////////////////////////////////////////////
+
alignLabels.RemoveAt(7); // Can't align together and move cursor
+ //////////////////////////////////////////////////////////////////////////
+
c->BeginSubMenu(_("Ali&gn and Move Cursor"));
+
c->AddItemList(wxT("AlignMove"), alignLabels, FN(OnAlignMoveSel));
c->SetCommandFlags(wxT("AlignMove"),
AudioIONotBusyFlag | TracksSelectedFlag,
AudioIONotBusyFlag | TracksSelectedFlag);
+
c->EndSubMenu();
-#ifdef EXPERIMENTAL_SCOREALIGN
- c->AddItem(wxT("ScoreAlign"), _("Synchronize MIDI with Audio"), FN(OnScoreAlign));
- c->SetCommandFlags(wxT("ScoreAlign"),
- AudioIONotBusyFlag | NoteTracksSelectedFlag | WaveTracksSelectedFlag,
- AudioIONotBusyFlag | NoteTracksSelectedFlag | WaveTracksSelectedFlag);
+ //////////////////////////////////////////////////////////////////////////
+
+#ifdef EXPERIMENTAL_SCOREALIGN
+ c->AddItem(wxT("ScoreAlign"), _("Synchronize MIDI with Audio"), FN(OnScoreAlign),
+ AudioIONotBusyFlag | NoteTracksSelectedFlag | WaveTracksSelectedFlag,
+ AudioIONotBusyFlag | NoteTracksSelectedFlag | WaveTracksSelectedFlag);
#endif // EXPERIMENTAL_SCOREALIGN
- c->AddSeparator();
-#ifdef EXPERIMENTAL_POSITION_LINKING
- c->AddItem(wxT("StickyLabels"), _("Link Audio and Label Tracks"), FN(OnStickyLabel), 0);
- c->AddSeparator();
-#endif
- c->AddItem(wxT("AddLabel"), _("Add &Label At Selection\tCtrl+B"), FN(OnAddLabel));
- c->AddItem(wxT("AddLabelPlaying"), _("Add Label At &Playback Position\tCtrl+M"), FN(OnAddLabelPlaying));
- c->SetCommandFlags(wxT("AddLabel"), 0, 0);
- c->SetCommandFlags(wxT("AddLabelPlaying"), 0, AudioIONotBusyFlag);
- c->AddItem(wxT("EditLabels"), _("&Edit Labels"), FN(OnEditLabels));
+ c->AddSeparator();
+
+ c->AddCheck(wxT("StickyLabels"), _("&Link Audio and Label Tracks"), FN(OnStickyLabel), 0);
+
+ c->AddSeparator();
+
+ c->AddItem(wxT("AddLabel"), _("Add Label At &Selection"), FN(OnAddLabel), wxT("Ctrl+B"),
+ AlwaysEnabledFlag,
+ AlwaysEnabledFlag);
+ c->AddItem(wxT("AddLabelPlaying"), _("Add Label At &Playback Position"), FN(OnAddLabelPlaying), wxT("Ctrl+M"),
+ 0,
+ AudioIONotBusyFlag);
+ c->AddItem(wxT("EditLabels"), _("&Edit Labels"), FN(OnEditLabels));
c->AddSeparator();
+
+ //////////////////////////////////////////////////////////////////////////
+
c->BeginSubMenu(_("S&ort tracks"));
- c->AddItem(wxT("SortByTime"), _("by &Start time"), FN(OnSortTime));
- c->SetCommandFlags(wxT("SortByTime"), TracksExistFlag, TracksExistFlag);
- c->AddItem(wxT("SortByName"), _("by &Name"), FN(OnSortName));
- c->SetCommandFlags(wxT("SortByName"), TracksExistFlag, TracksExistFlag);
+
+ c->AddItem(wxT("SortByTime"), _("by &Start time"), FN(OnSortTime),
+ TracksExistFlag,
+ TracksExistFlag);
+ c->AddItem(wxT("SortByName"), _("by &Name"), FN(OnSortName),
+ TracksExistFlag,
+ TracksExistFlag);
+
c->EndSubMenu();
+ //////////////////////////////////////////////////////////////////////////
+
c->EndMenu();
-
- //
- // Generate, Effect & Analyze menus
- //
-
+
+ //////////////////////////////////////////////////////////////////////////
+ // Generate Menu
+ //////////////////////////////////////////////////////////////////////////
c->BeginMenu(_("&Generate"));
- c->SetDefaultFlags(AudioIONotBusyFlag,
- AudioIONotBusyFlag);
-
- // Add sound generators
-
+ c->SetDefaultFlags(AudioIONotBusyFlag, AudioIONotBusyFlag);
+
#ifndef EFFECT_CATEGORIES
effects = em.GetEffects(INSERT_EFFECT | BUILTIN_EFFECT);
- if(effects->GetCount()){
+ if (effects->GetCount()) {
names.Clear();
- for(i=0; i<effects->GetCount(); i++)
+ for (size_t i = 0; i < effects->GetCount(); i++) {
names.Add((*effects)[i]->GetEffectName());
+ }
c->AddItemList(wxT("Generate"), names, FN(OnGenerateEffect));
}
delete effects;
@@ -750,14 +751,15 @@ void AudacityProject::CreateMenusAndCommands()
if (effects->GetCount()) {
c->AddSeparator();
names.Clear();
- for(i=0; i<effects->GetCount(); i++)
+ for (size_t i = 0; i < effects->GetCount(); i++) {
names.Add((*effects)[i]->GetEffectName());
+ }
c->AddItemList(wxT("GeneratePlugin"), names, FN(OnGeneratePlugin), true);
}
delete effects;
#else
-
+
int flags;
flags = INSERT_EFFECT | BUILTIN_EFFECT | PLUGIN_EFFECT;
@@ -790,24 +792,25 @@ void AudacityProject::CreateMenusAndCommands()
#endif // EFFECT_CATEGORIES
-
c->EndMenu();
}
+ /////////////////////////////////////////////////////////////////////////////
+ // Effect Menu
+ /////////////////////////////////////////////////////////////////////////////
+
c->BeginMenu(_("Effe&ct"));
c->SetDefaultFlags(AudioIONotBusyFlag | TimeSelectedFlag | WaveTracksSelectedFlag,
AudioIONotBusyFlag | TimeSelectedFlag | WaveTracksSelectedFlag);
- c->AddItem(wxT("RepeatLastEffect"), _("Repeat Last Effect\tCtrl+R"), FN(OnRepeatLastEffect));
- c->SetCommandFlags(wxT("RepeatLastEffect"),
- AudioIONotBusyFlag | TimeSelectedFlag | WaveTracksSelectedFlag | HasLastEffectFlag,
- AudioIONotBusyFlag | TimeSelectedFlag | WaveTracksSelectedFlag | HasLastEffectFlag);
+ c->AddItem(wxT("RepeatLastEffect"), mLastEffectDesc, FN(OnRepeatLastEffect), wxT("Ctrl+R"),
+ AudioIONotBusyFlag | TimeSelectedFlag | WaveTracksSelectedFlag | HasLastEffectFlag,
+ AudioIONotBusyFlag | TimeSelectedFlag | WaveTracksSelectedFlag | HasLastEffectFlag);
+
c->AddSeparator();
- int additionalEffects=ADVANCED_EFFECT;
- // set additionalEffects to zero to exclude the advanced effects.
- if( mCleanSpeechMode )
- additionalEffects = 0;
+ // Cleanspeech doesn't have advanced effects
+ int additionalEffects = mCleanSpeechMode ? 0 : ADVANCED_EFFECT;
// this is really ugly but we need to keep all the old code to get any
// effects at all in the menu when EFFECT_CATEGORIES is undefined
@@ -815,27 +818,26 @@ void AudacityProject::CreateMenusAndCommands()
#ifndef EFFECT_CATEGORIES
effects = em.GetEffects(PROCESS_EFFECT | BUILTIN_EFFECT | additionalEffects);
- if(effects->GetCount()){
+ if (effects->GetCount()) {
names.Clear();
- for(i=0; i<effects->GetCount(); i++)
+ for (size_t i = 0; i < effects->GetCount(); i++) {
names.Add((*effects)[i]->GetEffectName());
+ }
c->AddItemList(wxT("Effect"), names, FN(OnProcessEffect));
}
delete effects;
-
- if( !mCleanSpeechMode ) {
-
+ if (!mCleanSpeechMode) {
effects = em.GetEffects(PROCESS_EFFECT | PLUGIN_EFFECT);
if (effects->GetCount()) {
c->AddSeparator();
names.Clear();
- for(i=0; i<effects->GetCount(); i++)
+ for (size_t i = 0; i < effects->GetCount(); i++) {
names.Add((*effects)[i]->GetEffectName());
+ }
c->AddItemList(wxT("EffectPlugin"), names, FN(OnProcessPlugin), true);
}
delete effects;
-
}
c->EndMenu();
@@ -845,9 +847,10 @@ void AudacityProject::CreateMenusAndCommands()
// We want plugins and builtins in the same menus, but we don't want plugins
// or "advanced" effects if we are building CleanSpeech
int flags = PROCESS_EFFECT | BUILTIN_EFFECT;
- if (!mCleanSpeechMode)
+ if (!mCleanSpeechMode) {
flags |= PLUGIN_EFFECT | ADVANCED_EFFECT;
-
+ }
+
// The categories form a DAG, so we start at the roots (the categories
// without incoming links)
CategorySet roots = em.GetRootCategories();
@@ -874,22 +877,29 @@ void AudacityProject::CreateMenusAndCommands()
#endif
- if( !mCleanSpeechMode ) {
+ if (!mCleanSpeechMode) {
+
+ //////////////////////////////////////////////////////////////////////////
+ // Effect Menu
+ //////////////////////////////////////////////////////////////////////////
c->BeginMenu(_("&Analyze"));
- /* plot spectrum moved from view */
- c->AddItem(wxT("PlotSpectrum"), _("Plot Spectrum..."), FN(OnPlotSpectrum));
- c->SetCommandFlags(wxT("PlotSpectrum"),
- AudioIONotBusyFlag | WaveTracksSelectedFlag | TimeSelectedFlag,
- AudioIONotBusyFlag | WaveTracksSelectedFlag | TimeSelectedFlag);
+
+ c->AddItem(wxT("ContrastAnalyser"), _("Contrast..."), FN(OnContrast), wxT("Ctrl+Shift+T"),
+ AudioIONotBusyFlag | WaveTracksSelectedFlag | TimeSelectedFlag,
+ AudioIONotBusyFlag | WaveTracksSelectedFlag | TimeSelectedFlag);
+ c->AddItem(wxT("PlotSpectrum"), _("Plot Spectrum..."), FN(OnPlotSpectrum),
+ AudioIONotBusyFlag | WaveTracksSelectedFlag | TimeSelectedFlag,
+ AudioIONotBusyFlag | WaveTracksSelectedFlag | TimeSelectedFlag);
#ifndef EFFECT_CATEGORIES
effects = em.GetEffects(ANALYZE_EFFECT | BUILTIN_EFFECT);
- if(effects->GetCount()){
+ if (effects->GetCount()) {
names.Clear();
- for(i=0; i<effects->GetCount(); i++)
+ for (size_t i = 0; i < effects->GetCount(); i++) {
names.Add((*effects)[i]->GetEffectName());
+ }
c->AddItemList(wxT("Analyze"), names, FN(OnAnalyzeEffect));
}
delete effects;
@@ -898,8 +908,9 @@ void AudacityProject::CreateMenusAndCommands()
if (effects->GetCount()) {
c->AddSeparator();
names.Clear();
- for(i=0; i<effects->GetCount(); i++)
+ for (size_t i = 0; i < effects->GetCount(); i++) {
names.Add((*effects)[i]->GetEffectName());
+ }
c->AddItemList(wxT("AnalyzePlugin"), names, FN(OnAnalyzePlugin), true);
}
delete effects;
@@ -938,145 +949,159 @@ void AudacityProject::CreateMenusAndCommands()
c->EndMenu();
}
-
- // Resolve from list of all effects,
- effects = em.GetEffects(ALL_EFFECTS);
- ResolveEffectIndices(effects);
- delete effects;
+ /////////////////////////////////////////////////////////////////////////////
+ // Help Menu
+ /////////////////////////////////////////////////////////////////////////////
#ifdef __WXMAC__
wxGetApp().s_macHelpMenuTitleName = _("&Help");
#endif
c->BeginMenu(_("&Help"));
- c->SetDefaultFlags(0, 0);
- if( mCleanSpeechMode )
- c->AddItem(wxT("About"), _("&About Audacity CleanSpeech..."), FN(OnAbout));
- else
- c->AddItem(wxT("About"), _("&About Audacity..."), FN(OnAbout));
+ c->SetDefaultFlags(AlwaysEnabledFlag, AlwaysEnabledFlag);
- c->AddItem(wxT("Welcome"), _("&Show Welcome Message..."), FN(OnHelpWelcome));
- c->AddItem(wxT("Help"), _("&Index..."), FN(OnHelp));
- c->AddItem(wxT("Log"), _("Show &Log..."), FN(OnLog));
+ if (mCleanSpeechMode) {
+ c->AddItem(wxT("About"), _("&About Audacity CleanSpeech..."), FN(OnAbout));
+ }
+ else {
+ c->AddItem(wxT("About"), _("&About Audacity..."), FN(OnAbout));
+ }
+ c->AddItem(wxT("QuickHelp"), _("&Quick Help (in web browser)"), FN(OnQuickHelp));
+ c->AddItem(wxT("Manual"), _("&Manual (in web browser)"), FN(OnManual));
+ c->AddItem(wxT("Log"), _("Show &Log..."), FN(OnLog));
+
+ if (!mCleanSpeechMode) {
-#if 1 // Debugging tools are enabled in unstable builds
- if( !mCleanSpeechMode )
- {
-#ifdef __WXDEBUG__
c->AddSeparator();
- c->AddItem(wxT("Screenshot"), _("&Screenshot Tools..."), FN(OnScreenshot));
-#endif
+
+ c->AddItem(wxT("Screenshot"), _("&Screenshot Tools..."), FN(OnScreenshot));
+
+#if IS_BETA
c->AddSeparator();
- c->AddItem(wxT("Benchmark"), _("&Run Benchmark..."), FN(OnBenchmark));
+
+ c->AddItem(wxT("Benchmark"), _("&Run Benchmark..."), FN(OnBenchmark));
+#endif
+
c->AddSeparator();
- c->AddItem(wxT("DeviceInfo"), _("&Audio Device Info..."), FN(OnAudioDeviceInfo));
+
+ c->AddItem(wxT("DeviceInfo"), _("&Audio Device Info..."), FN(OnAudioDeviceInfo));
}
-#endif
c->EndMenu();
+ /////////////////////////////////////////////////////////////////////////////
+
SetMenuBar(menubar);
- c->SetDefaultFlags(0, 0);
- c->AddCommand(wxT("PrevFrame"), _("Cycle backward through toolbars and Track View\tCtrl+Shift+F6"), FN(PrevFrame));
- c->AddCommand(wxT("NextFrame"), _("Cycle forward through toolbars and Track View\tCtrl+F6"), FN(NextFrame));
-
-// c->SetDefaultFlags(TrackPanelHasFocus, TrackPanelHasFocus);
- c->AddCommand(wxT("SelectTool"), _("Selection Tool\tF1"), FN(OnSelectTool));
- c->AddCommand(wxT("EnvelopeTool"),_("Envelope Tool\tF2"), FN(OnEnvelopeTool));
- c->AddCommand(wxT("DrawTool"), _("Draw Tool\tF3"), FN(OnDrawTool));
- c->AddCommand(wxT("ZoomTool"), _("Zoom Tool\tF4"), FN(OnZoomTool));
- c->AddCommand(wxT("TimeShiftTool"),_("Time Shift Tool\tF5"), FN(OnTimeShiftTool));
- c->AddCommand(wxT("MultiTool"), _("Multi Tool\tF6"), FN(OnMultiTool));
-
- c->AddCommand(wxT("NextTool"), _("Next Tool\tD"), FN(OnNextTool));
- c->AddCommand(wxT("PrevTool"), _("Previous Tool\tA"), FN(OnPrevTool));
-
- c->AddCommand(wxT("Play/Stop"), _("Play/Stop\tSpace"), FN(OnPlayStop));
- c->AddCommand(wxT("Stop"), _("Stop\tS"), FN(OnStop));
- c->AddCommand(wxT("Pause"), _("Pause\tP"), FN(OnPause));
- c->AddCommand(wxT("Record"), _("Record\tR"), FN(OnRecord));
- c->AddCommand(wxT("RecordAppend"), _("Record Append\tShift+R"), FN(OnRecordAppend));
-
- c->AddCommand(wxT("PlayStopSelect"), _("Play/Stop and Set Cursor\tShift+A"), FN(OnPlayStopSelect));
-// c->AddCommand(wxT("StopSelect"), _("Stop and Select\tShift+A"), FN(OnStopSelect));
+ c->SetDefaultFlags(AlwaysEnabledFlag, AlwaysEnabledFlag);
+
+ c->AddCommand(wxT("PrevFrame"), _("Move backward from toolbars to tracks"), FN(PrevFrame), wxT("Ctrl+Shift+F6"));
+ c->AddCommand(wxT("NextFrame"), _("Move forward from toolbars to tracks"), FN(NextFrame), wxT("Ctrl+F6"));
+
+ c->AddCommand(wxT("SelectTool"), _("Selection Tool"), FN(OnSelectTool), wxT("F1"));
+ c->AddCommand(wxT("EnvelopeTool"),_("Envelope Tool"), FN(OnEnvelopeTool), wxT("F2"));
+ c->AddCommand(wxT("DrawTool"), _("Draw Tool"), FN(OnDrawTool), wxT("F3"));
+ c->AddCommand(wxT("ZoomTool"), _("Zoom Tool"), FN(OnZoomTool), wxT("F4"));
+ c->AddCommand(wxT("TimeShiftTool"), _("Time Shift Tool"), FN(OnTimeShiftTool), wxT("F5"));
+ c->AddCommand(wxT("MultiTool"), _("Multi Tool"), FN(OnMultiTool), wxT("F6"));
- c->AddCommand(wxT("PlayOneSec"), _("Play One Second\t1"), FN(OnPlayOneSecond));
- c->AddCommand(wxT("PlayToSelection"),_("Play To Selection\tB"), FN(OnPlayToSelection));
- c->AddCommand(wxT("PlayLooped"), _("Play Looped\tL"), FN(OnPlayLooped));
- c->AddCommand(wxT("PlayLoopAlt"), _("Play Looped\tShift+Space"), FN(OnPlayLooped));
- c->AddCommand(wxT("PlayCutPreview"), _("Play Cut Preview\tC"), FN(OnPlayCutPreview));
+ c->AddCommand(wxT("NextTool"), _("Next Tool"), FN(OnNextTool), wxT("D"));
+ c->AddCommand(wxT("PrevTool"), _("Previous Tool"), FN(OnPrevTool), wxT("A"));
- c->AddCommand(wxT("SkipStart"), _("Skip to Start\tHome"), FN(OnSkipStart));
- c->AddCommand(wxT("SkipEnd"), _("Skip to End\tEnd"), FN(OnSkipEnd));
+ c->AddCommand(wxT("PlayStop"), _("Play/Stop"), FN(OnPlayStop), wxT("Space"));
+ c->AddCommand(wxT("PlayStopSelect"), _("Play/Stop and Set Cursor"), FN(OnPlayStopSelect), wxT("Shift+A"));
+ c->AddCommand(wxT("PlayOneSec"), _("Play One Second"), FN(OnPlayOneSecond), wxT("1"));
+ c->AddCommand(wxT("PlayToSelection"),_("Play To Selection"), FN(OnPlayToSelection), wxT("B"));
+ c->AddCommand(wxT("PlayCutPreview"), _("Play Cut Preview"), FN(OnPlayCutPreview), wxT("C"));
- c->AddCommand(wxT("SelStart"), _("Selection to Start\tShift+Home"), FN(OnSelToStart));
- c->AddCommand(wxT("SelEnd"), _("Selection to End\tShift+End"), FN(OnSelToEnd));
+ c->AddCommand(wxT("SelStart"), _("Selection to Start"), FN(OnSelToStart), wxT("Shift+Home"));
+ c->AddCommand(wxT("SelEnd"), _("Selection to End"), FN(OnSelToEnd), wxT("Shift+End"));
- c->AddCommand(wxT("DeleteKey"), _("DeleteKey\tBackspace"), FN(OnDelete));
- c->SetCommandFlags(wxT("DeleteKey"),
- AudioIONotBusyFlag | TracksSelectedFlag | TimeSelectedFlag,
- AudioIONotBusyFlag | TracksSelectedFlag | TimeSelectedFlag);
+ c->AddCommand(wxT("DeleteKey"), _("DeleteKey"), FN(OnDelete), wxT("Backspace"),
+ AudioIONotBusyFlag | TracksSelectedFlag | TimeSelectedFlag,
+ AudioIONotBusyFlag | TracksSelectedFlag | TimeSelectedFlag);
- c->AddCommand(wxT("DeleteKey2"), _("DeleteKey2\tDelete"), FN(OnDelete));
- c->SetCommandFlags(wxT("DeleteKey2"),
- AudioIONotBusyFlag | TracksSelectedFlag | TimeSelectedFlag,
- AudioIONotBusyFlag | TracksSelectedFlag | TimeSelectedFlag);
+ c->AddCommand(wxT("DeleteKey2"), _("DeleteKey2"), FN(OnDelete), wxT("Delete"),
+ AudioIONotBusyFlag | TracksSelectedFlag | TimeSelectedFlag,
+ AudioIONotBusyFlag | TracksSelectedFlag | TimeSelectedFlag);
c->SetDefaultFlags(AudioIOBusyFlag, AudioIOBusyFlag);
- c->AddCommand(wxT("SeekLeftShort"), _("Seek left short period during playback\tLeft"), FN(OnSeekLeftShort));
- c->AddCommand(wxT("SeekRightShort"),_("Seek right short period during playback\tRight"), FN(OnSeekRightShort));
- c->AddCommand(wxT("SeekLeftLong"), _("Seek left long period during playback\tShift+Left"), FN(OnSeekLeftLong));
- c->AddCommand(wxT("SeekRightLong"), _("Seek right long period during playback\tShift+Right"), FN(OnSeekRightLong));
-
+
+ c->AddCommand(wxT("SeekLeftShort"), _("Short seek left during playback"), FN(OnSeekLeftShort), wxT("Left\tallowdup"));
+ c->AddCommand(wxT("SeekRightShort"),_("Short seek right during playback"), FN(OnSeekRightShort), wxT("Right\tallowdup"));
+ c->AddCommand(wxT("SeekLeftLong"), _("Long seek left during playback"), FN(OnSeekLeftLong), wxT("Shift+Left\tallowdup"));
+ c->AddCommand(wxT("SeekRightLong"), _("Long Seek right during playback"), FN(OnSeekRightLong), wxT("Shift+Right\tallowdup"));
+
c->SetDefaultFlags(TracksExistFlag | TrackPanelHasFocus,
TracksExistFlag | TrackPanelHasFocus);
- c->AddCommand(wxT("PrevTrack"), _("Move Focus to Previous Track\tUp"), FN(OnCursorUp));
- c->AddCommand(wxT("ShiftUp"), _("Move Focus to Previous and Change Selection\tShift+Up"), FN(OnShiftUp));
- c->AddCommand(wxT("NextTrack"), _("Move Focus to Next Track\tDown"), FN(OnCursorDown));
- c->AddCommand(wxT("ShiftDown"), _("Move Focus to Next and Change Selection\tShift+Down"), FN(OnShiftDown));
- c->AddCommand(wxT("Toggle"), _("Toggle Focused Track\tReturn"), FN(OnToggle));
- c->AddCommand(wxT("Toggle1"), _("Toggle Focused Track\tNUMPAD_ENTER"), FN(OnToggle));
- c->AddCommand(wxT("Toggle2"), _("Toggle Focused Track\tCtrl+Space"), FN(OnToggle));
-
- c->AddCommand(wxT("CursorLeft"), _("Cursor Left\tLeft"), FN(OnCursorLeft));
- c->AddCommand(wxT("CursorRight"), _("Cursor Right\tRight"), FN(OnCursorRight));
- c->AddCommand(wxT("CursorShortJumpLeft"), _("Cursor Short Jump Left\t,"), FN(OnCursorShortJumpLeft));
- c->AddCommand(wxT("CursorShortJumpRight"), _("Cursor Short Jump Right\t."), FN(OnCursorShortJumpRight));
- c->AddCommand(wxT("CursorLongJumpLeft"), _("Cursor Long Jump Left\tShift+,"), FN(OnCursorLongJumpLeft));
- c->AddCommand(wxT("CursorLongJumpRight"), _("Cursor Long Jump Right\tShift+."), FN(OnCursorLongJumpRight));
-
- c->AddCommand(wxT("SelExtLeft"), _("Selection Extend Left\tShift+Left"), FN(OnSelExtendLeft));
- c->AddCommand(wxT("SelExtRight"), _("Selection Extend Right\tShift+Right"), FN(OnSelExtendRight));
-
- c->AddCommand(wxT("SelSetExtLeft"), _("Set (or Extend) Left Selection"), FN(OnSelSetExtendLeft));
- c->AddCommand(wxT("SelSetExtRight"), _("Set (or Extend) Right Selection"), FN(OnSelSetExtendRight));
-
- c->AddCommand(wxT("SelCntrLeft"), _("Selection Contract Left\tCtrl+Shift+Right"), FN(OnSelContractLeft));
- c->AddCommand(wxT("SelCntrRight"), _("Selection Contract Right\tCtrl+Shift+Left"), FN(OnSelContractRight));
-
- c->AddCommand(wxT("TrackPan"), _("Change pan on focused track\tShift+P"), FN(OnTrackPan));
- c->AddCommand(wxT("TrackPanLeft"), _("Pan left on focused track\tAlt+Shift+Left"), FN(OnTrackPanLeft));
- c->AddCommand(wxT("TrackPanRight"), _("Pan right on focused track\tAlt+Shift+Right"), FN(OnTrackPanRight));
- c->AddCommand(wxT("TrackGain"), _("Change gain on focused track\tShift+G"), FN(OnTrackGain));
- c->AddCommand(wxT("TrackGainInc"), _("Increase gain on focused track\tAlt+Shift+Up"), FN(OnTrackGainInc));
- c->AddCommand(wxT("TrackGainDec"), _("Decrease gain on focused track\tAlt+Shift+Down"), FN(OnTrackGainDec));
- c->AddCommand(wxT("TrackMenu"), _("Open menu on focused track\tShift+M"), FN(OnTrackMenu));
- c->AddCommand(wxT("TrackMute"), _("Mute/Unmute focused track\tShift+U"), FN(OnTrackMute));
- c->AddCommand(wxT("TrackSolo"), _("Solo/Unsolo focused track\tShift+S"), FN(OnTrackSolo));
- c->AddCommand(wxT("TrackClose"), _("Close focused track\tShift+C"), FN(OnTrackClose));
-
- c->AddCommand(wxT("SnapToOn"), _("Snap To On"), FN(OnSnapToOn));
- c->AddCommand(wxT("SnapToOff"), _("Snap To Off"), FN(OnSnapToOff));
- c->AddCommand(wxT("FullScreenOnOff"), _("Full screen on/off\tF11"), FN(OnFullScreen));
- c->SetCommandFlags(wxT("FullScreenOnOff"), 0, 0);
+
+ c->AddCommand(wxT("PrevTrack"), _("Move Focus to Previous Track"), FN(OnCursorUp), wxT("Up"));
+ c->AddCommand(wxT("ShiftUp"), _("Move Focus to Previous and Select"), FN(OnShiftUp), wxT("Shift+Up"));
+ c->AddCommand(wxT("NextTrack"), _("Move Focus to Next Track"), FN(OnCursorDown), wxT("Down"));
+ c->AddCommand(wxT("ShiftDown"), _("Move Focus to Next and Select"), FN(OnShiftDown), wxT("Shift+Down"));
+ c->AddCommand(wxT("Toggle"), _("Toggle Focused Track"), FN(OnToggle), wxT("Return"));
+ c->AddCommand(wxT("ToggleAlt"), _("Toggle Focused Track"), FN(OnToggle), wxT("NUMPAD_ENTER"));
+
+ c->AddCommand(wxT("CursorLeft"), _("Cursor Left"), FN(OnCursorLeft), wxT("Left\tallowdup"));
+ c->AddCommand(wxT("CursorRight"), _("Cursor Right"), FN(OnCursorRight), wxT("Right\tallowdup"));
+ c->AddCommand(wxT("CursorShortJumpLeft"), _("Cursor Short Jump Left"), FN(OnCursorShortJumpLeft), wxT(","));
+ c->AddCommand(wxT("CursorShortJumpRight"), _("Cursor Short Jump Right"), FN(OnCursorShortJumpRight), wxT("."));
+ c->AddCommand(wxT("CursorLongJumpLeft"), _("Cursor Long Jump Left"), FN(OnCursorLongJumpLeft), wxT("Shift+,"));
+ c->AddCommand(wxT("CursorLongJumpRight"), _("Cursor Long Jump Right"), FN(OnCursorLongJumpRight), wxT("Shift+."));
+
+ c->AddCommand(wxT("SelExtLeft"), _("Selection Extend Left"), FN(OnSelExtendLeft), wxT("Shift+Left\tallowdup"));
+ c->AddCommand(wxT("SelExtRight"), _("Selection Extend Right"), FN(OnSelExtendRight), wxT("Shift+Right\tallowdup"));
+
+ c->AddCommand(wxT("SelSetExtLeft"), _("Set (or Extend) Left Selection"), FN(OnSelSetExtendLeft));
+ c->AddCommand(wxT("SelSetExtRight"), _("Set (or Extend) Right Selection"), FN(OnSelSetExtendRight));
+
+ c->AddCommand(wxT("SelCntrLeft"), _("Selection Contract Left"), FN(OnSelContractLeft), wxT("Ctrl+Shift+Right"));
+ c->AddCommand(wxT("SelCntrRight"), _("Selection Contract Right"), FN(OnSelContractRight), wxT("Ctrl+Shift+Left"));
+
+ c->AddCommand(wxT("TrackPan"), _("Change pan on focused track"), FN(OnTrackPan), wxT("Shift+P"));
+ c->AddCommand(wxT("TrackPanLeft"), _("Pan left on focused track"), FN(OnTrackPanLeft), wxT("Alt+Shift+Left"));
+ c->AddCommand(wxT("TrackPanRight"), _("Pan right on focused track"), FN(OnTrackPanRight), wxT("Alt+Shift+Right"));
+ c->AddCommand(wxT("TrackGain"), _("Change gain on focused track"), FN(OnTrackGain), wxT("Shift+G"));
+ c->AddCommand(wxT("TrackGainInc"), _("Increase gain on focused track"), FN(OnTrackGainInc), wxT("Alt+Shift+Up"));
+ c->AddCommand(wxT("TrackGainDec"), _("Decrease gain on focused track"), FN(OnTrackGainDec), wxT("Alt+Shift+Down"));
+ c->AddCommand(wxT("TrackMenu"), _("Open menu on focused track"), FN(OnTrackMenu), wxT("Shift+M"));
+ c->AddCommand(wxT("TrackMute"), _("Mute/Unmute focused track"), FN(OnTrackMute), wxT("Shift+U"));
+ c->AddCommand(wxT("TrackSolo"), _("Solo/Unsolo focused track"), FN(OnTrackSolo), wxT("Shift+S"));
+ c->AddCommand(wxT("TrackClose"), _("Close focused track"), FN(OnTrackClose), wxT("Shift+C"));
+
+ c->AddCommand(wxT("SnapToOn"), _("Snap To On"), FN(OnSnapToOn));
+ c->AddCommand(wxT("SnapToOff"), _("Snap To Off"), FN(OnSnapToOff));
+
+ c->SetDefaultFlags(AlwaysEnabledFlag, AlwaysEnabledFlag);
+
+ c->AddCommand(wxT("FullScreenOnOff"), _("Full screen on/off"), FN(OnFullScreen), wxT("F11"));
+
+ c->AddCommand(wxT("OutputGain"), _("Adjust output gain"), FN(OnOutputGain));
+ c->AddCommand(wxT("OutputGainInc"), _("Increase output gain"), FN(OnOutputGainInc));
+ c->AddCommand(wxT("OutputGainDec"), _("Decrease output gain"), FN(OnOutputGainDec));
+ c->AddCommand(wxT("InputGain"), _("Adjust input gain"), FN(OnInputGain));
+ c->AddCommand(wxT("InputGainInc"), _("Increase input gain"), FN(OnInputGainInc));
+ c->AddCommand(wxT("InputGainDec"), _("Decrease input gain"), FN(OnInputGainDec));
+
+ c->AddCommand(wxT("InputSource"), _("Adjust input source"), FN(OnInputSource),
+ AudioIONotBusyFlag,
+ AudioIONotBusyFlag);
+
+ c->AddCommand(wxT("PlayAtSpeed"), _("Play at speed"), FN(OnPlayAtSpeed));
+ c->AddCommand(wxT("SetPlaySpeed"), _("Adjust playback speed"), FN(OnSetPlaySpeed));
+ c->AddCommand(wxT("PlaySpeedInc"), _("Increase playback speed"), FN(OnPlaySpeedInc));
+ c->AddCommand(wxT("PlaySpeedDec"), _("Decrease playback speed"), FN(OnPlaySpeedDec));
mLastFlags = 0;
mSel0save = 0;
mSel1save = 0;
+
+#if defined(__WXDEBUG__)
+ c->CheckDups();
+#endif
}
#ifdef EFFECT_CATEGORIES
@@ -1150,50 +1175,19 @@ void AudacityProject::CreateRecentFilesMenu(CommandManager *c)
{
// Recent Files and Recent Projects menus
- #ifdef __WXMAC__
- /* i18n-hint: This is the name of the menu item on Mac OS X only */
- wxMenu* pm = c->BeginSubMenu(_("Open Recent"));
- #else
- /* i18n-hint: This is the name of the menu item on Windows and Linux */
- wxMenu* pm = c->BeginSubMenu(_("Recent &Files"));
- #endif
+#ifdef __WXMAC__
+ /* i18n-hint: This is the name of the menu item on Mac OS X only */
+ mRecentFilesMenu = c->BeginSubMenu(_("Open Recent"));
+#else
+ /* i18n-hint: This is the name of the menu item on Windows and Linux */
+ mRecentFilesMenu = c->BeginSubMenu(_("Recent &Files"));
+#endif
- c->EndSubMenu();
- if( pm==NULL )
- return;
- // TODO - read the number of files to store in history from preferences
- mRecentFiles = new wxFileHistory();
- mRecentFiles->UseMenu(pm);
- gPrefs->SetPath(wxT("/RecentFiles"));
- mRecentFiles->Load(*gPrefs);
- gPrefs->SetPath(wxT(".."));
+ wxGetApp().GetRecentFiles()->UseMenu(mRecentFilesMenu);
+ wxGetApp().GetRecentFiles()->AddFilesToMenu(mRecentFilesMenu);
- c->AddSeparator();
-}
+ c->EndSubMenu();
-// TIDY-ME: Replace indices by function pointers.
-// This function is currently (July 2005) required because
-// menus get to effect functions in a messy way.
-// It would be much cleaner if each menu item already
-// stored both the function pointer and the class pointer.
-// so menus, and other dispatching, can dispatch to 'any'
-// function in 'any' class instance directly,
-// rather than having to look up the class via an index
-// when calling an effect.
-void AudacityProject::ResolveEffectIndices(EffectArray *effects)
-{
- mNormalizeIndex = -1;
- mStereoToMonoIndex = -1;
-
- for (unsigned int i = 0; i < effects->GetCount(); i++) {
- wxString effectIdentifier = (*effects)[i]->GetEffectIdentifier();
- if (effectIdentifier == wxT("Normalize")) {
- mNormalizeIndex = i;
- }
- else if (effectIdentifier == wxT("StereoToMono")) {
- mStereoToMonoIndex = i;
- }
- }
}
void AudacityProject::ModifyUndoMenus()
@@ -1285,10 +1279,19 @@ void AudacityProject::RebuildMenuBar()
*/
mCommandManager.PurgeData();
- delete mRecentFiles;
- mRecentFiles = NULL;
+
+ wxGetApp().GetRecentFiles()->RemoveMenu(mRecentFilesMenu);
CreateMenusAndCommands();
+
+ ModuleManager::Dispatch(MenusRebuilt);
+}
+
+void AudacityProject::RebuildOtherMenus()
+{
+ if (mTrackPanel) {
+ mTrackPanel->BuildMenus();
+ }
}
int AudacityProject::GetFocusedFrame()
@@ -1355,8 +1358,18 @@ wxUint32 AudacityProject::GetUpdateFlags()
flags |= CutCopyAvailableFlag;
}
- if (lt->IsTextClipSupported()) {
- flags |= TextClipFlag;
+ // See AudacityProject::OnUpdateUI() for an explanation
+ if (mInIdle) {
+ if (lt->IsTextClipSupported()) {
+ flags |= TextClipFlag;
+ mTextClipFlag = TextClipFlag;
+ }
+ else {
+ mTextClipFlag = 0;
+ }
+ }
+ else {
+ flags |= mTextClipFlag;
}
}
else if (t->GetKind() == Track::Wave) {
@@ -1392,7 +1405,7 @@ wxUint32 AudacityProject::GetUpdateFlags()
if (mUndoManager.UnsavedChanges())
flags |= UnsavedChangesFlag;
- if (EffectManager::Get().GetLastEffect() != NULL)
+ if (mLastEffect != NULL)
flags |= HasLastEffectFlag;
if (mUndoManager.UndoAvailable())
@@ -1422,19 +1435,28 @@ wxUint32 AudacityProject::GetUpdateFlags()
}
}
+ if (wxGetApp().GetRecentFiles()->GetCount() > 0)
+ flags |= HaveRecentFiles;
+
return flags;
}
void AudacityProject::SelectAllIfNone()
{
wxUint32 flags = GetUpdateFlags();
- if((flags & TracksSelectedFlag) ==0)
+ if(((flags & TracksSelectedFlag) ==0) || (mViewInfo.sel0 >= mViewInfo.sel1))
OnSelectAll();
}
void AudacityProject::ModifyToolbarMenus()
{
+ // Refreshes can occur during shutdown and the toolmanager may already
+ // be deleted, so protect against it.
+ if (!mToolManager) {
+ return;
+ }
+
mCommandManager.Check(wxT("ShowControlTB"),
mToolManager->IsVisible(ControlBarID));
mCommandManager.Check(wxT("ShowDeviceTB"),
@@ -1451,7 +1473,14 @@ void AudacityProject::ModifyToolbarMenus()
mToolManager->IsVisible(ToolsBarID));
mCommandManager.Check(wxT("ShowTranscriptionTB"),
mToolManager->IsVisible(TranscriptionBarID));
- mCommandManager.Check(wxT("StickyLabels"), mStickyFlag);
+
+ // Now, go through each toolbar, and call EnableDisableButtons()
+ for (int i = 0; i < ToolBarCount; i++) {
+ mToolManager->GetToolBar(i)->EnableDisableButtons();
+ }
+
+ // These don't really belong here, but it's easier and especially so for
+ // the Edit toolbar and the sticky menu item.
bool active;
gPrefs->Read(wxT("/AudioIO/SoundActivatedRecord"),&active, false);
mCommandManager.Check(wxT("SoundActivation"), active);
@@ -1459,6 +1488,7 @@ void AudacityProject::ModifyToolbarMenus()
mCommandManager.Check(wxT("Duplex"), active);
gPrefs->Read(wxT("/AudioIO/SWPlaythrough"),&active, false);
mCommandManager.Check(wxT("SWPlaythrough"), active);
+ mCommandManager.Check(wxT("StickyLabels"), mStickyFlag);
}
void AudacityProject::UpdateMenus()
@@ -1498,12 +1528,6 @@ void AudacityProject::UpdateMenus()
#endif
ModifyToolbarMenus();
-
- // Now, go through each toolbar, and call EnableDisableButtons()
- for( int i = 0; i < ToolBarCount; i++ )
- {
- mToolManager->GetToolBar( i )->EnableDisableButtons();
- }
}
//
@@ -2037,7 +2061,7 @@ void AudacityProject::OnSetLeftSelection()
{
wxString fmt = gPrefs->Read(wxT("/SelectionFormat"), wxT(""));
- TimeDialog D(this, wxID_ANY, _("Set Left Selection Bound"));
+ TimeDialog D(this, _("Set Left Selection Boundary"), _("Position"));
D.SetSampleRate(mRate);
D.SetFormatString(fmt);
D.SetTimeValue(mViewInfo.sel0);
@@ -2073,7 +2097,7 @@ void AudacityProject::OnSetRightSelection()
{
wxString fmt = gPrefs->Read(wxT("/SelectionFormat"), wxT(""));
- TimeDialog D(this, wxID_ANY, _("Set Right Selection Bound"));
+ TimeDialog D(this, _("Set Right Selection Boundary"), _("Position"));
D.SetSampleRate(mRate);
D.SetFormatString(fmt);
D.SetTimeValue(mViewInfo.sel1);
@@ -2206,6 +2230,93 @@ void AudacityProject::OnTrackClose()
mTrackPanel->OnTrackClose();
}
+void AudacityProject::OnOutputGain()
+{
+ MixerToolBar *tb = GetMixerToolBar();
+ if (tb) {
+ tb->ShowOutputGainDialog();
+ }
+}
+
+void AudacityProject::OnInputGain()
+{
+ MixerToolBar *tb = GetMixerToolBar();
+ if (tb) {
+ tb->ShowInputGainDialog();
+ }
+}
+
+void AudacityProject::OnInputSource()
+{
+ MixerToolBar *tb = GetMixerToolBar();
+ if (tb) {
+ tb->ShowInputSourceDialog();
+ }
+}
+
+void AudacityProject::OnOutputGainInc()
+{
+ MixerToolBar *tb = GetMixerToolBar();
+ if (tb) {
+ tb->AdjustOutputGain(1);
+ }
+}
+
+void AudacityProject::OnOutputGainDec()
+{
+ MixerToolBar *tb = GetMixerToolBar();
+ if (tb) {
+ tb->AdjustOutputGain(-1);
+ }
+}
+
+void AudacityProject::OnInputGainInc()
+{
+ MixerToolBar *tb = GetMixerToolBar();
+ if (tb) {
+ tb->AdjustInputGain(1);
+ }
+}
+
+void AudacityProject::OnInputGainDec()
+{
+ MixerToolBar *tb = GetMixerToolBar();
+ if (tb) {
+ tb->AdjustInputGain(-1);
+ }
+}
+
+void AudacityProject::OnPlayAtSpeed()
+{
+ TranscriptionToolBar *tb = GetTranscriptionToolBar();
+ if (tb) {
+ tb->PlayAtSpeed();
+ }
+}
+
+void AudacityProject::OnSetPlaySpeed()
+{
+ TranscriptionToolBar *tb = GetTranscriptionToolBar();
+ if (tb) {
+ tb->ShowPlaySpeedDialog();
+ }
+}
+
+void AudacityProject::OnPlaySpeedInc()
+{
+ TranscriptionToolBar *tb = GetTranscriptionToolBar();
+ if (tb) {
+ tb->AdjustPlaySpeed(0.1f);
+ }
+}
+
+void AudacityProject::OnPlaySpeedDec()
+{
+ TranscriptionToolBar *tb = GetTranscriptionToolBar();
+ if (tb) {
+ tb->AdjustPlaySpeed(-0.1f);
+ }
+}
double AudacityProject::NearestZeroCrossing(double t0)
{
@@ -2318,7 +2429,13 @@ void AudacityProject::OnEffect(int type, int index)
/// + Prompt
/// + Use previous values
/// + Parse from a string that is passed in
-bool AudacityProject::OnEffect(int type, Effect * f)
+///
+/// DanH: I've added the third option as a temporary measure. I think this
+/// should eventually be done by having effects as Command objects.
+bool AudacityProject::OnEffect(int type,
+ Effect * f,
+ wxString params,
+ bool saveState)
{
TrackListIterator iter(mTracks);
Track *t = iter.First();
@@ -2349,15 +2466,26 @@ bool AudacityProject::OnEffect(int type, Effect * f)
}
if (f->DoEffect(this, type, mRate, mTracks, mTrackFactory,
- &mViewInfo.sel0, &mViewInfo.sel1)) {
- wxString longDesc = f->GetEffectDescription();
- wxString shortDesc = f->GetEffectName();
+ &mViewInfo.sel0, &mViewInfo.sel1, params)) {
+ if (saveState)
+ {
+ wxString longDesc = f->GetEffectDescription();
+ wxString shortDesc = f->GetEffectName();
- if (shortDesc.Length() > 3 && shortDesc.Right(3)==wxT("..."))
- shortDesc = shortDesc.Left(shortDesc.Length()-3);
+ if (shortDesc.Length() > 3 && shortDesc.Right(3)==wxT("..."))
+ shortDesc = shortDesc.Left(shortDesc.Length()-3);
- PushState(longDesc, shortDesc);
-
+ PushState(longDesc, shortDesc);
+
+ // Only remember a successful effect, don't rmemeber insert,
+ // or analyze effects.
+ if ((f->GetEffectFlags() & (INSERT_EFFECT | ANALYZE_EFFECT))==0) {
+ mLastEffect = f;
+ mLastEffectType = type;
+ mLastEffectDesc.Printf(_("Repeat %s"), shortDesc.c_str());
+ mCommandManager.Modify(wxT("RepeatLastEffect"), mLastEffectDesc);
+ }
+ }
//STM:
//The following automatically re-zooms after sound was generated.
// IMO, it was disorienting, removing to try out without re-fitting
@@ -2372,20 +2500,12 @@ bool AudacityProject::OnEffect(int type, Effect * f)
focus->SetFocus();
}
mTrackPanel->EnsureVisible(mTrackPanel->GetFirstSelectedTrack());
-
- // Only remember a successful effect, don't rmemeber insert,
- // or analyze effects.
- if ((f->GetEffectFlags() & (INSERT_EFFECT | ANALYZE_EFFECT))==0) {
- EffectManager::Get().SetLastEffect( type, f );
- mCommandManager.Modify(wxT("RepeatLastEffect"),
- wxString::Format(_("Repeat %s\tCtrl+R"),
- shortDesc.c_str()));
- }
mTrackPanel->Refresh(false);
} else {
if (newTrack) {
mTracks->Remove(newTrack);
+ delete newTrack;
mTrackPanel->Refresh(false);
}
return false;
@@ -2405,13 +2525,10 @@ void AudacityProject::OnGeneratePlugin(int index)
void AudacityProject::OnRepeatLastEffect(int index)
{
- EffectManager& em = EffectManager::Get();
- Effect *f = em.GetLastEffect();
- if( f != NULL )
- {
+ if (mLastEffect != NULL) {
// Setting the CONFIGURED_EFFECT bit prevents
// prompting for parameters.
- OnEffect(em.GetLastEffectType() | CONFIGURED_EFFECT, f);
+ OnEffect(mLastEffectType | CONFIGURED_EFFECT, mLastEffect);
}
}
@@ -2432,8 +2549,8 @@ void AudacityProject::OnProcessEffect(int index)
void AudacityProject::OnStereoToMono(int index)
{
- if (mStereoToMonoIndex >= 0)
- OnEffect(ALL_EFFECTS, mStereoToMonoIndex);
+ OnEffect(ALL_EFFECTS,
+ EffectManager::Get().GetEffectByIdentifier(wxT("StereoToMono")));
}
void AudacityProject::OnProcessPlugin(int index)
@@ -2590,7 +2707,7 @@ void AudacityProject::OnExportMIDI(){
TrackListIterator iter(mTracks);
Track *t = iter.First();
int numNoteTracksSelected = 0;
- NoteTrack *nt;
+ NoteTrack *nt = NULL;
// Iterate through once to make sure that there is
// exactly one NoteTrack selected.
@@ -2691,18 +2808,20 @@ void AudacityProject::OnExportMultiple()
void AudacityProject::OnPreferences()
{
PrefsDialog dialog(this /* parent */ );
- dialog.ShowModal();
+
+ if (!dialog.ShowModal()) {
+ // Canceled
+ return;
+ }
// LL: Moved from PrefsDialog since wxWidgets on OSX can't deal with
// rebuilding the menus while the PrefsDialog is still in the modal
// state.
- for (unsigned int j = 0; j < gAudacityProjects.GetCount(); j++) {
- gAudacityProjects[j]->UpdatePrefsVariables();
- gAudacityProjects[j]->RebuildMenuBar();
- gAudacityProjects[j]->RebuildOtherMenus();
- if (gAudacityProjects[j]->GetSelectionBar()) {
- gAudacityProjects[j]->GetSelectionBar()->UpdateDisplay();
- }
+ for (size_t i = 0; i < gAudacityProjects.GetCount(); i++) {
+ AudacityProject *p = gAudacityProjects[i];
+
+ p->RebuildMenuBar();
+ p->RebuildOtherMenus();
}
}
@@ -2730,6 +2849,7 @@ void AudacityProject::OnUndo()
TrackList *l = mUndoManager.Undo(&mViewInfo.sel0, &mViewInfo.sel1);
PopState(l);
+ mTrackPanel->SetFocusedTrack(NULL);
mTrackPanel->EnsureVisible(mTrackPanel->GetFirstSelectedTrack());
RedrawProject();
@@ -2750,6 +2870,9 @@ void AudacityProject::OnRedo()
TrackList *l = mUndoManager.Redo(&mViewInfo.sel0, &mViewInfo.sel1);
PopState(l);
+ mTrackPanel->SetFocusedTrack(NULL);
+ mTrackPanel->EnsureVisible(mTrackPanel->GetFirstSelectedTrack());
+
RedrawProject();
if (mHistoryWindow)
@@ -2758,15 +2881,6 @@ void AudacityProject::OnRedo()
ModifyUndoMenus();
}
-void AudacityProject::OnHistory()
-{
- if (!mHistoryWindow)
- mHistoryWindow = new HistoryWindow(this, &mUndoManager);
-
- mHistoryWindow->Show(true);
- mHistoryWindow->UpdateDisplay();
-}
-
void AudacityProject::OnCut()
{
TrackListIterator iter(mTracks);
@@ -2809,7 +2923,6 @@ void AudacityProject::OnCut()
if (dest) {
dest->SetChannel(n->GetChannel());
- dest->SetTeamed(n->GetTeamed()); // do first
dest->SetLinked(n->GetLinked());
dest->SetName(n->GetName());
msClipboard->Add(dest);
@@ -2876,7 +2989,6 @@ void AudacityProject::OnSplitCut()
}
if (dest) {
dest->SetChannel(n->GetChannel());
- dest->SetTeamed(n->GetTeamed()); // do first
dest->SetLinked(n->GetLinked());
dest->SetName(n->GetName());
msClipboard->Add(dest);
@@ -2922,7 +3034,6 @@ void AudacityProject::OnCopy()
n->Copy(mViewInfo.sel0, mViewInfo.sel1, &dest);
if (dest) {
dest->SetChannel(n->GetChannel());
- dest->SetTeamed(n->GetTeamed()); // do first
dest->SetLinked(n->GetLinked());
dest->SetName(n->GetName());
msClipboard->Add(dest);
@@ -2940,18 +3051,20 @@ void AudacityProject::OnCopy()
void AudacityProject::OnPaste()
{
- // If nothing's selected, we just insert new tracks...so first
- // check to see if anything's selected
-
- TrackListIterator iter2(mTracks);
- Track *countTrack = iter2.First();
+ // Handle Label tracks first
+ TrackListOfKindIterator iterlt(Track::Label, mTracks);
- int numSelected =0;
+ LabelTrack *lt = (LabelTrack *) iterlt.First();
+ if (lt) {
- while (countTrack) {
- if (countTrack->GetSelected()) {
- if (countTrack->GetKind() == Track::Label) {
- LabelTrack *lt = (LabelTrack *) countTrack;
+ // Look for selected label tracks and active labels
+ bool selected = false;
+ while (lt) {
+
+ // Does this track have an active label?
+ if (lt->IsSelected()) {
+
+ // Yes, so try pasting into it
if (lt->PasteSelectedText(mViewInfo.sel0, mViewInfo.sel1)) {
PushState(_("Pasted text from the clipboard"), _("Paste"));
@@ -2961,10 +3074,83 @@ void AudacityProject::OnPaste()
mTrackPanel->ScrollIntoView(x);
}
+ // Redraw everyting (is that necessary???) and bail
RedrawProject();
return;
}
}
+
+ // Remember that we found a selected one
+ if (lt->GetSelected()) {
+ selected = true;
+ }
+
+ // Find the next one
+ lt = (LabelTrack *) iterlt.Next();
+ }
+
+ // Were any Label tracks without active labels selected?
+ if (selected) {
+ LabelTrack *plt = NULL;
+ bool pasted = false;
+
+ // Paste new labels into all selected label tracks
+ lt = (LabelTrack *) iterlt.First();
+ while (lt) {
+ if (lt->GetSelected()) {
+ // Ensure that the last pasted label gets unselected. This will
+ // leave only one "active" label when we're done.
+ if (plt) {
+ plt->Unselect();
+ }
+
+ // Add a new label
+ lt->AddLabel(mViewInfo.sel0, mViewInfo.sel1);
+
+ // Now paste the text into it
+ if (lt->PasteSelectedText(mViewInfo.sel0, mViewInfo.sel1)) {
+
+ // Remember that we pasted something
+ pasted = true;
+
+ // Make sure caret is in view
+ int x;
+ if (lt->CalcCursorX(this, &x)) {
+ mTrackPanel->ScrollIntoView(x);
+ }
+ }
+
+ // Remember this track so we can unselect the new label if its
+ // not the last one pasted
+ plt = lt;
+ }
+
+ // Find the next one
+ lt = (LabelTrack *) iterlt.Next();
+ }
+
+ // We're done if we pasted into any tracks
+ if (pasted) {
+ PushState(_("Pasted from the clipboard"), _("Paste"));
+
+ // Redraw everyting (is that necessary???) and bail
+ RedrawProject();
+ return;
+ }
+ }
+ }
+
+ // If nothing's selected, we just insert new tracks...so first
+ // check to see if anything's selected
+
+ TrackListIterator iter2(mTracks);
+ Track *countTrack = iter2.First();
+
+ int numSelected = 0;
+
+ // Pastes text into the first label track or counts selected wave tracks
+ while (countTrack) {
+ if (countTrack->GetSelected()) {
numSelected++;
}
countTrack = iter2.Next();
@@ -2974,6 +3160,8 @@ void AudacityProject::OnPaste()
if (numSelected == 0) {
TrackListIterator clipIter(msClipboard);
Track *c = clipIter.First();
+ if(c == NULL) // if there is no audio to paste...
+ return;
Track *n;
Track *f = NULL;
@@ -3007,7 +3195,6 @@ void AudacityProject::OnPaste()
if (!f)
f = n;
- n->SetTeamed(c->GetTeamed()); // do first
n->SetLinked(c->GetLinked());
n->SetChannel(c->GetChannel());
n->SetName(c->GetName());
@@ -3024,7 +3211,7 @@ void AudacityProject::OnPaste()
mViewInfo.sel0 = 0.0;
mViewInfo.sel1 = msClipLen;
-
+
PushState(_("Pasted from the clipboard"), _("Paste"));
RedrawProject();
@@ -3047,6 +3234,8 @@ void AudacityProject::OnPaste()
Track *n = iter.First();
Track *c = clipIter.First();
+ if(c == NULL) // if there is no audio to paste...
+ return;
Track *f = NULL;
Track *tmpSrc = NULL;
Track *tmpC = NULL;
@@ -3114,17 +3303,10 @@ void AudacityProject::OnPaste()
if (msClipProject != this && c->GetKind() == Track::Wave)
((WaveTrack *) c)->Lock();
- if (n->GetKind() == Track::Wave) {
- //printf("Checking to see if we need to pre-clear the track\n");
- if (!((WaveTrack *) n)->IsEmpty(t0, t1)) {
- ((WaveTrack *) n)->Clear(t0, t1);
- }
- }
- else {
- ((WaveTrack *) n)->Clear(t0, t1);
- }
-
- n->Paste(t0, c);
+ if (c->GetKind() == Track::Wave && n && n->GetKind() == Track::Wave)
+ ((WaveTrack*)n)->ClearAndPaste(t0, t1, (WaveTrack*)c);
+ else
+ n->Paste(t0, c);
pastedSomething = true;
@@ -3174,7 +3356,11 @@ void AudacityProject::OnPaste()
Track *prev = NULL;
c = clipIter.First();
Track *first = c;
-
+
+ // LL: There is an endless loop here if you paste only non-wave track
+ // data, like midi data. Not sure exactly what this is supposed
+ // to do in that case, but it seems that it's making an assumption
+ // that only wave data can be pasted.
while (!foundSrcTrack){
prev = c;
c = clipIter.Next();
@@ -3198,13 +3384,15 @@ void AudacityProject::OnPaste()
while (n){
if (n->GetSelected() && n->GetKind()==Track::Wave){
if (c && c->GetKind() == Track::Wave){
- tmp = (WaveTrack*)c;
+ ((WaveTrack *)n)->HandleClear(t0, t1, false, false);
+ ((WaveTrack *)n)->HandlePaste(t0, (WaveTrack *)c);
}else{
tmp = mTrackFactory->NewWaveTrack( ((WaveTrack*)n)->GetSampleFormat(), ((WaveTrack*)n)->GetRate());
tmp->InsertSilence(0.0, srcLength);
tmp->Flush();
+ ((WaveTrack *)n)->HandlePaste(t0, tmp);
+ delete tmp;
}
- ((WaveTrack *)n)->HandlePaste(t0, tmp);
}
n = iter.Next();
}
@@ -3340,16 +3528,10 @@ void AudacityProject::OnJoin()
void AudacityProject::OnSilence()
{
- TrackListIterator iter(mTracks);
+ SelectedTrackListOfKindIterator iter(Track::Wave, mTracks);
- Track *n = iter.First();
-
- while (n) {
- if (n->GetSelected())
- n->Silence(mViewInfo.sel0, mViewInfo.sel1);
-
- n = iter.Next();
- }
+ for (Track *n = iter.First(); n; n = iter.Next())
+ n->Silence(mViewInfo.sel0, mViewInfo.sel1);
PushState(wxString::
Format(_("Silenced selected tracks for %.2f seconds at %.2f"),
@@ -3363,29 +3545,25 @@ void AudacityProject::OnDuplicate()
{
TrackListIterator iter(mTracks);
+ Track *l = iter.Last();
Track *n = iter.First();
- Track *dest;
-
- TrackList newTracks;
while (n) {
if (n->GetSelected()) {
- dest = NULL;
+ Track *dest = NULL;
n->Copy(mViewInfo.sel0, mViewInfo.sel1, &dest);
if (dest) {
dest->Init(*n);
dest->SetOffset(wxMax(mViewInfo.sel0, n->GetOffset()));
- newTracks.Add(dest);
+ mTracks->Add(dest);
}
}
- n = iter.Next();
- }
- TrackListIterator nIter(&newTracks);
- n = nIter.First();
- while (n) {
- mTracks->Add(n);
- n = nIter.Next();
+ if (n == l) {
+ break;
+ }
+
+ n = iter.Next();
}
PushState(_("Duplicated"), _("Duplicate"));
@@ -3589,39 +3767,34 @@ void AudacityProject::OnSplit()
void AudacityProject::OnSplitNew()
{
TrackListIterator iter(mTracks);
- Track *n = iter.First();
- Track *dest;
-
- TrackList newTracks;
+ Track *l = iter.Last();
- n = iter.First();
- while (n) {
+ for (Track *n = iter.First(); n; n = iter.Next()) {
if (n->GetSelected()) {
- dest = NULL;
- if (n->GetKind() == Track::Wave)
- {
+ Track *dest = NULL;
+ double offset = n->GetOffset();
+ if (n->GetKind() == Track::Wave) {
((WaveTrack*)n)->SplitCut(mViewInfo.sel0, mViewInfo.sel1, &dest);
- } else
- {
+ }
+#if 0
+ // LL: For now, just skip all non-wave tracks since the other do not
+ // yet support proper splitting.
+ else {
n->Cut(mViewInfo.sel0, mViewInfo.sel1, &dest);
}
+#endif
if (dest) {
dest->SetChannel(n->GetChannel());
- dest->SetTeamed(n->GetTeamed()); // do first
dest->SetLinked(n->GetLinked());
dest->SetName(n->GetName());
- dest->SetOffset(wxMax(mViewInfo.sel0, n->GetOffset()));
- newTracks.Add(dest);
+ dest->SetOffset(wxMax(mViewInfo.sel0, offset));
+ mTracks->Add(dest);
}
}
- n = iter.Next();
- }
- TrackListIterator nIter(&newTracks);
- n = nIter.First();
- while (n) {
- mTracks->Add(n);
- n = nIter.Next();
+ if (n == l) {
+ break;
+ }
}
PushState(_("Split to new track"), _("Split New"));
@@ -3629,7 +3802,6 @@ void AudacityProject::OnSplitNew()
RedrawProject();
}
-
void AudacityProject::OnSplitLabelsToTracks()
{
TrackListIterator iter(mTracks);
@@ -3743,6 +3915,10 @@ void AudacityProject::OnSelectNone()
ModifyState();
mTrackPanel->Refresh(false);
+ #ifdef EXPERIMENTAL_MIXER_BOARD
+ if (mMixerBoard)
+ mMixerBoard->Refresh(false);
+ #endif
}
void AudacityProject::OnSelectCursorEnd()
@@ -3967,7 +4143,13 @@ void AudacityProject::OnZoomSel()
if (mViewInfo.sel1 <= mViewInfo.sel0)
return;
- Zoom(mViewInfo.zoom * mViewInfo.screen / (mViewInfo.sel1 - mViewInfo.sel0));
+ // LL: The "-1" is just a hack to get around an issue where zooming to
+ // selection doesn't actually get the entire selected region within the
+ // visible area. This causes a problem with scrolling at end of playback
+ // where the selected region may be scrolled off the left of the screen.
+ // I know this isn't right, but until the real rounding or 1-off issue is
+ // found, this will have to work.
+ Zoom(((mViewInfo.zoom * mViewInfo.screen) - 1) / (mViewInfo.sel1 - mViewInfo.sel0));
TP_ScrollWindow(mViewInfo.sel0);
}
@@ -3980,72 +4162,44 @@ void AudacityProject::OnShowClipping()
mTrackPanel->Refresh(false);
}
-void AudacityProject::OnPlotSpectrum()
+void AudacityProject::OnHistory()
{
- int selcount = 0;
- int i;
- double rate = 0;
- sampleCount len = 0;
- float *buffer = NULL;
- bool warning = false;
- TrackListIterator iter(mTracks);
- Track *t = iter.First();
- while (t) {
- if (t->GetSelected() && t->GetKind() == Track::Wave) {
- WaveTrack *track = (WaveTrack *)t;
- if (selcount==0) {
- rate = track->GetRate();
- sampleCount start, end;
- start = track->TimeToLongSamples(mViewInfo.sel0);
- end = track->TimeToLongSamples(mViewInfo.sel1);
- len = (sampleCount)(end - start);
- if (len > 1048576) {
- warning = true;
- len = 1048576;
- }
- buffer = new float[len];
- track->Get((samplePtr)buffer, floatSample, start, len);
- }
- else {
- if (track->GetRate() != rate) {
- wxMessageBox(_("To plot the spectrum, all selected tracks must be the same sample rate."));
- delete[] buffer;
- return;
- }
- sampleCount start;
- start = track->TimeToLongSamples(mViewInfo.sel0);
- float *buffer2 = new float[len];
- track->Get((samplePtr)buffer2, floatSample, start, len);
- for(i=0; i<len; i++)
- buffer[i] += buffer2[i];
- delete[] buffer2;
- }
- selcount++;
- }
- t = iter.Next();
- }
-
- if (selcount == 0)
- return;
-
- if (selcount > 1)
- for(i=0; i<len; i++)
- buffer[i] /= selcount;
-
- if (warning) {
- wxString msg;
- msg.Printf(_("Too much audio was selected. Only the first %.1f seconds of audio will be analyzed."),
- (len / rate));
- wxMessageBox(msg);
+ if (!mHistoryWindow)
+ mHistoryWindow = new HistoryWindow(this, &mUndoManager);
+
+ mHistoryWindow->Show(true);
+ mHistoryWindow->UpdateDisplay();
+}
+
+#ifdef EXPERIMENTAL_LYRICS_WINDOW
+ void AudacityProject::OnLyrics()
+ {
+ if (!mLyricsWindow)
+ mLyricsWindow = new LyricsWindow(this);
+ wxASSERT(mLyricsWindow);
+ mLyricsWindow->Show();
}
+#endif
+#ifdef EXPERIMENTAL_MIXER_BOARD
+ void AudacityProject::OnMixerBoard()
+ {
+ if (!mMixerBoardFrame)
+ {
+ mMixerBoardFrame = new MixerBoardFrame(this);
+ mMixerBoard = mMixerBoardFrame->mMixerBoard;
+ }
+ mMixerBoardFrame->Show();
+ }
+#endif
+void AudacityProject::OnPlotSpectrum()
+{
InitFreqWindow(NULL);
- gFreqWindow->Plot(len, buffer, rate);
- gFreqWindow->Show(true);
- gFreqWindow->Raise();
- gFreqWindow->SetFocus();
+}
- delete[] buffer;
+void AudacityProject::OnContrast()
+{
+ InitContrastDialog(NULL);
}
@@ -4135,14 +4289,10 @@ void AudacityProject::OnImport()
Import(fileName);
}
-
+
HandleResize(); // Adjust scrollers for new track sizes.
}
-
-
-
-
void AudacityProject::OnImportLabels()
{
wxString path = gPrefs->Read(wxT("/DefaultOpenPath"),::wxGetCwd());
@@ -4279,12 +4429,11 @@ void AudacityProject::HandleMixAndRender(bool toNewTrack)
// Add one to the count if it's an unlinked track, or if it's the first
// in a stereo pair
- if (t->GetLinked() || !mTracks->GetLink(t))
+ if (t->GetLinked() || !t->GetLink())
selectedCount++;
if (!toNewTrack) {
- delete t;
- t = iter.RemoveCurrent();
+ t = iter.RemoveCurrent(true);
} else {
t = iter.Next();
};
@@ -4320,7 +4469,7 @@ void AudacityProject::HandleMixAndRender(bool toNewTrack)
else
msg.Printf(_("Mixed and rendered %d tracks into one new mono track"),
selectedCount);
- PushState(msg, _NoAcc("&Mix and Render"));
+ PushState(msg, _("Mix and Render"));
}
mTrackPanel->SetFocusedTrack(newLeft);
@@ -4409,6 +4558,7 @@ void AudacityProject::OnCursorSelStart()
mViewInfo.sel1 = mViewInfo.sel0;
ModifyState();
mTrackPanel->ScrollIntoView(mViewInfo.sel0);
+ mTrackPanel->Refresh(false);
}
void AudacityProject::OnCursorSelEnd()
@@ -4416,6 +4566,7 @@ void AudacityProject::OnCursorSelEnd()
mViewInfo.sel0 = mViewInfo.sel1;
ModifyState();
mTrackPanel->ScrollIntoView(mViewInfo.sel1);
+ mTrackPanel->Refresh(false);
}
void AudacityProject::HandleAlign(int index, bool moveSel)
@@ -4584,6 +4735,7 @@ void AudacityProject::OnScoreAlign()
floatSample, // sampleFormat outFormat
true, // bool highQuality = true
NULL); // MixerSpec *mixerSpec = NULL
+ delete [] waveTracks;
// debugging/testing
//float *buffer;
@@ -4632,7 +4784,6 @@ void AudacityProject::OnNewStereoTrack()
mTracks->Add(t);
t->SetSelected(true);
- t->SetTeamed (true);
PushState(_("Created new stereo audio track"), _("New Track"));
@@ -4678,7 +4829,12 @@ void AudacityProject::OnNewTimeTrack()
void AudacityProject::OnTimerRecord()
{
TimerRecordDialog dialog(this /* parent */ );
- dialog.ShowModal();
+ int modalResult = dialog.ShowModal();
+ if (modalResult == eProgressCancelled)
+ {
+ // Cancelled while the recording, so throw out the fresh track.
+ OnUndo();
+ }
}
void AudacityProject::OnSoundActivated()
@@ -4735,7 +4891,7 @@ int AudacityProject::DoAddLabel(double left, double right)
void AudacityProject::OnStickyLabel()
{
- mStickyFlag = !mStickyFlag;
+ SetStickyFlag(!GetStickyFlag());
EditToolBar *toolbar = GetEditToolBar();
toolbar->EnableDisableButtons();
}
@@ -4987,7 +5143,7 @@ wxString AudacityProject::BuildCleanFileName(wxString fileName)
cleanedName += wxT("/");
cleanedName += justName;
cleanedName += wxT(".mp3");
- mRecentFiles->AddFileToHistory(cleanedName);
+ wxGetApp().AddFileToHistory(cleanedName);
return cleanedName;
}
@@ -5001,10 +5157,13 @@ void AudacityProject::OnRemoveTracks()
while (t) {
if (t->GetSelected()) {
+ #ifdef EXPERIMENTAL_MIXER_BOARD
+ if (mMixerBoard && (t->GetKind() == Track::Wave))
+ mMixerBoard->RemoveTrackCluster((WaveTrack*)t);
+ #endif
if (!f)
f = l; // Capture the track preceeding the first removed track
- delete t;
- t = iter.RemoveCurrent();
+ t = iter.RemoveCurrent(true);
}
else {
l = t;
@@ -5031,6 +5190,10 @@ void AudacityProject::OnRemoveTracks()
PushState(_("Removed audio track(s)"), _("Remove Track"));
mTrackPanel->Refresh(false);
+ #ifdef EXPERIMENTAL_MIXER_BOARD
+ if (mMixerBoard)
+ mMixerBoard->Refresh(true);
+ #endif
}
//
@@ -5046,17 +5209,22 @@ void AudacityProject::OnAbout()
void AudacityProject::OnHelpWelcome()
{
SplashDialog::Show2( this );
-// SplashDialog dlog(this);
-// dlog.ShowModal();
}
-void AudacityProject::OnHelp()
+void AudacityProject::OnQuickHelp()
+{
+ ShowHelpDialog(
+ this,
+ FileNames::HtmlHelpIndexFile(true),
+ wxT("http://manual.audacityteam.org/index.php?title=Quick_Help" ));
+}
+
+void AudacityProject::OnManual()
{
ShowHelpDialog(
this,
- FileNames::HtmlHelpIndexFile(),
- wxT("http://audacityteam.org/manual/index.php?title=Main_Page" ));
- //wxT("http://audacity.sourceforge.net/help/documentation" ));
+ FileNames::HtmlHelpIndexFile(false),
+ wxT("http://manual.audacityteam.org/index.php?title=Main_Page" ));
}
void AudacityProject::OnLog()
@@ -5197,6 +5365,7 @@ void AudacityProject::OnResample()
rates.Add(wxT("11025"));
rates.Add(wxT("16000"));
rates.Add(wxT("22050"));
+ rates.Add(wxT("32000"));
rates.Add(wxT("44100"));
rates.Add(wxT("48000"));
rates.Add(wxT("96000"));
diff --git a/src/Menus.h b/src/Menus.h
index 24e1827..0fede97 100644
--- a/src/Menus.h
+++ b/src/Menus.h
@@ -89,7 +89,7 @@ void OnPlayToSelection();
void OnPlayLooped();
void OnPlayCutPreview();
- //
+ // Wave track control
void OnTrackPan();
void OnTrackPanLeft();
@@ -102,6 +102,22 @@ void OnTrackMute();
void OnTrackSolo();
void OnTrackClose();
+ // Mixer control
+
+void OnOutputGain();
+void OnInputGain();
+void OnInputSource();
+void OnOutputGainInc();
+void OnOutputGainDec();
+void OnInputGainInc();
+void OnInputGainDec();
+
+ // Transcription control
+
+void OnPlayAtSpeed();
+void OnSetPlaySpeed();
+void OnPlaySpeedInc();
+void OnPlaySpeedDec();
// Selection-Editing Commands
@@ -176,7 +192,6 @@ void OnExit();
void OnUndo();
void OnRedo();
-void OnHistory();
void OnCut();
void OnSplitCut();
@@ -230,9 +245,17 @@ void OnUnMuteAllTracks();
void OnShowClipping();
-void OnSelectionFormat(int index);
+void OnHistory();
+
+#ifdef EXPERIMENTAL_LYRICS_WINDOW
+ void OnLyrics();
+#endif
+#ifdef EXPERIMENTAL_MIXER_BOARD
+ void OnMixerBoard();
+#endif
void OnPlotSpectrum();
+void OnContrast();
void OnShowControlToolBar();
void OnShowDeviceToolBar();
@@ -294,7 +317,7 @@ void OnEditLabels();
// Effect Menu
-bool OnEffect(int type, Effect * f);
+bool OnEffect(int type, Effect * f, wxString params = wxEmptyString, bool saveState = true);
void OnEffect(int type, int index);
void OnGenerateEffect(int index);
void OnGeneratePlugin(int index);
@@ -312,16 +335,13 @@ void OnEditChains();
void OnImportCleanSpeechPresets();
void OnExportCleanSpeechPresets();
void OnStereoToMono(int index);
-void ResolveEffectIndices(EffectArray *effects);
wxString BuildCleanFileName(wxString fileName);
-int mNormalizeIndex;
-int mStereoToMonoIndex;
-
// Help Menu
void OnAbout();
-void OnHelp();
+void OnQuickHelp();
+void OnManual();
void OnLog();
void OnHelpWelcome();
void OnBenchmark();
diff --git a/src/Mix.cpp b/src/Mix.cpp
index f6134e7..d2045a0 100644
--- a/src/Mix.cpp
+++ b/src/Mix.cpp
@@ -103,7 +103,6 @@ bool MixAndRender(TrackList *tracks, TrackFactory *trackFactory,
mixLeft->SetChannel(Track::LeftChannel);
mixRight->SetChannel(Track::RightChannel);
mixLeft->SetLinked(true);
- mixRight->SetTeamed(true);
}
int maxBlockLen = mixLeft->GetIdealBlockSize();
@@ -118,11 +117,11 @@ bool MixAndRender(TrackList *tracks, TrackFactory *trackFactory,
rate, format);
wxYield();
- ProgressDialog *progress = new ProgressDialog(_NoAcc("&Mix and Render"),
+ ProgressDialog *progress = new ProgressDialog(_("Mix and Render"),
_("Mixing and rendering tracks"));
- bool bCancel = false;
- while(!bCancel) {
+ int updateResult = eProgressSuccess;
+ while(updateResult == eProgressSuccess) {
sampleCount blockLen = mixer->Process(maxBlockLen);
if (blockLen == 0)
@@ -140,7 +139,7 @@ bool MixAndRender(TrackList *tracks, TrackFactory *trackFactory,
mixRight->Append(buffer, format, blockLen);
}
- bCancel = !progress->Update(mixer->MixGetCurrentTime(), totalTime);
+ updateResult = progress->Update(mixer->MixGetCurrentTime(), totalTime);
}
delete progress;
@@ -148,7 +147,7 @@ bool MixAndRender(TrackList *tracks, TrackFactory *trackFactory,
mixLeft->Flush();
if (!mono)
mixRight->Flush();
- if (bCancel)
+ if (updateResult == eProgressCancelled || updateResult == eProgressFailed)
{
delete mixLeft;
if (!mono)
@@ -175,7 +174,7 @@ bool MixAndRender(TrackList *tracks, TrackFactory *trackFactory,
delete[] waveArray;
delete mixer;
- return !bCancel;
+ return (updateResult == eProgressSuccess || updateResult == eProgressStopped);
}
Mixer::Mixer(int numInputTracks, WaveTrack **inputTracks,
@@ -263,6 +262,7 @@ Mixer::~Mixer()
DeleteSamples(mTemp[i]);
}
delete[] mBuffer;
+ delete[] mTemp;
delete[] mInputTrack;
delete[] mEnvValues;
delete[] mFloatBuffer;
@@ -335,7 +335,7 @@ sampleCount Mixer::MixVariableRates(int *channelFlags, WaveTrack *track,
// Find the last sample
sampleCount last = -1;
- WaveClipList::Node* it = track->GetClipIterator();
+ WaveClipList::compatibility_iterator it = track->GetClipIterator();
while (it) {
sampleCount end = it->GetData()->GetEndSample();
if (end > last) {
diff --git a/src/NoteTrack.cpp b/src/NoteTrack.cpp
index e525dac..c79b50e 100644
--- a/src/NoteTrack.cpp
+++ b/src/NoteTrack.cpp
@@ -56,6 +56,17 @@ Track(projDirManager)
mLastMidiPosition = 0;
}
+NoteTrack::~NoteTrack()
+{
+ if (mSerializationBuffer) {
+ delete [] mSerializationBuffer;
+ }
+
+ if (mSeq) {
+ delete mSeq;
+ }
+}
+
Track *NoteTrack::Duplicate()
{
NoteTrack *duplicate = new NoteTrack(mDirManager);
@@ -89,13 +100,14 @@ void NoteTrack::DrawLabelControls(wxDC & dc, wxRect & r)
int wid = 23;
int ht = 16;
- if (r.height < ht * 4)
+ if (r.height < ht * 4) {
return;
+ }
- int x = r.x + r.width / 2 - wid * 2;
- int y = r.y + 4;
+ int x = r.x + (r.width / 2 - wid * 2) + 2;
+ int y = r.y + 5;
- for (int row = 0; row < 4; row++)
+ for (int row = 0; row < 4; row++) {
for (int col = 0; col < 4; col++) {
int channel = row * 4 + col + 1;
@@ -110,23 +122,31 @@ void NoteTrack::DrawLabelControls(wxDC & dc, wxRect & r)
dc.DrawRectangle(box);
AColor::LightMIDIChannel(&dc, channel);
- dc.DrawLine(box.x, box.y, box.x + box.width - 1, box.y);
- dc.DrawLine(box.x, box.y, box.x, box.y + box.height - 1);
+ AColor::Line(dc, box.x, box.y, box.x + box.width - 1, box.y);
+ AColor::Line(dc, box.x, box.y, box.x, box.y + box.height - 1);
AColor::DarkMIDIChannel(&dc, channel);
- dc.DrawLine(box.x + box.width - 1, box.y,
- box.x + box.width - 1, box.y + box.height);
- dc.DrawLine(box.x, box.y + box.height - 1, box.x + box.width,
- box.y + box.height - 1);
+ AColor::Line(dc,
+ box.x + box.width - 1, box.y,
+ box.x + box.width - 1, box.y + box.height - 1);
+ AColor::Line(dc,
+ box.x, box.y + box.height - 1,
+ box.x + box.width - 1, box.y + box.height - 1);
} else {
AColor::MIDIChannel(&dc, 0);
dc.DrawRectangle(box);
}
- dc.DrawText(wxString::Format(wxT("%d"), channel), box.x + 5,
- box.y + 3);
- }
+ wxString t;
+ long w;
+ long h;
+ t.Printf(wxT("%d"), channel);
+ dc.GetTextExtent(t, &w, &h);
+
+ dc.DrawText(t, box.x + (box.width - w) / 2, box.y + (box.height - h) / 2);
+ }
+ }
}
bool NoteTrack::LabelClick(wxRect & r, int mx, int my, bool right)
@@ -137,8 +157,8 @@ bool NoteTrack::LabelClick(wxRect & r, int mx, int my, bool right)
if (r.height < ht * 4)
return false;
- int x = r.x + r.width / 2 - wid * 2;
- int y = r.y + 4;
+ int x = r.x + (r.width / 2 - wid * 2);
+ int y = r.y + 1;
int col = (mx - x) / wid;
int row = (my - y) / ht;
diff --git a/src/NoteTrack.h b/src/NoteTrack.h
index c5255cf..3364cd2 100644
--- a/src/NoteTrack.h
+++ b/src/NoteTrack.h
@@ -24,11 +24,12 @@ class wxRect;
class DirManager;
class Alg_seq; // from "allegro.h"
-class NoteTrack:public Track {
+class AUDACITY_DLL_API NoteTrack:public Track {
public:
friend class TrackArtist;
NoteTrack(DirManager * projDirManager);
+ virtual ~NoteTrack();
virtual Track *Duplicate();
diff --git a/src/PitchName.cpp b/src/PitchName.cpp
index 3a4064d..d534ce2 100644
--- a/src/PitchName.cpp
+++ b/src/PitchName.cpp
@@ -4,8 +4,8 @@
PitchName.cpp
- Dominic Mazzoni
- Vaughan Johnson
+ Copyright 2005-9, Vaughan Johnson and Dominic Mazzoni.
+ All rights reserved.
*******************************************************************//*!
@@ -23,19 +23,19 @@
#include "PitchName.h"
-// Freq2Pitch takes a frequency in Hz (exponential scale relative to
+// FreqToMIDInoteNumber takes a frequency in Hz (exponential scale relative to
// alphabetic pitch names) and returns a pitch ID number (linear
-// scale), such that A440 (A4) is 57, middle C (C4) is 48, etc.
-// The offset to 57 is used to determine the register.
+// scale), such that A440 (A4) is 69, middle C (C4) is 60, etc.
// Each register starts with C (e.g., for middle C and A440,
// it's register 4).
-double Freq2Pitch(double freq)
+double FreqToMIDInoteNumber(double freq)
{
- return double (57.0 + (12.0 * (log(freq / 440.0) / log(2.0))));
+ // Make the calculation relative to A440 (A4), note number 69.
+ return double (69.0 + (12.0 * (log(freq / 440.0) / log(2.0))));
}
// PitchIndex returns the [0,11] index for a double pitchNum,
-// as per result from Freq2Pitch, corresponding to modulo 12
+// as per result from FreqToMIDInoteNumber, corresponding to modulo 12
// of the integer part of (pitchNum + 0.5), so 0=C, 1=C#, etc.
unsigned int PitchIndex(double pitchNum)
{
@@ -44,85 +44,85 @@ unsigned int PitchIndex(double pitchNum)
wxChar gPitchName[10];
-wxChar * p_PitchName;
+wxChar * pPitchName;
// PitchName takes pitchNum (as per result from
-// Freq2Pitch) and returns a standard pitch/note name [C, C#, etc.).
+// FreqToMIDInoteNumber) and returns a standard pitch/note name [C, C#, etc.).
// Sharps are the default, unless, bWantFlats is true.
wxChar * PitchName(double pitchNum, bool bWantFlats /* = false */)
{
- p_PitchName = gPitchName;
+ pPitchName = gPitchName;
switch (PitchIndex(pitchNum)) {
case 0:
- *p_PitchName++ = wxT('C');
+ *pPitchName++ = wxT('C');
break;
case 1:
if (bWantFlats) {
- *p_PitchName++ = wxT('D');
- *p_PitchName++ = wxT('b');
+ *pPitchName++ = wxT('D');
+ *pPitchName++ = wxT('b');
} else {
- *p_PitchName++ = wxT('C');
- *p_PitchName++ = wxT('#');
+ *pPitchName++ = wxT('C');
+ *pPitchName++ = wxT('#');
}
break;
case 2:
- *p_PitchName++ = wxT('D');
+ *pPitchName++ = wxT('D');
break;
case 3:
if (bWantFlats) {
- *p_PitchName++ = wxT('E');
- *p_PitchName++ = wxT('b');
+ *pPitchName++ = wxT('E');
+ *pPitchName++ = wxT('b');
} else {
- *p_PitchName++ = wxT('D');
- *p_PitchName++ = wxT('#');
+ *pPitchName++ = wxT('D');
+ *pPitchName++ = wxT('#');
}
break;
case 4:
- *p_PitchName++ = wxT('E');
+ *pPitchName++ = wxT('E');
break;
case 5:
- *p_PitchName++ = wxT('F');
+ *pPitchName++ = wxT('F');
break;
case 6:
if (bWantFlats) {
- *p_PitchName++ = wxT('G');
- *p_PitchName++ = wxT('b');
+ *pPitchName++ = wxT('G');
+ *pPitchName++ = wxT('b');
} else {
- *p_PitchName++ = wxT('F');
- *p_PitchName++ = wxT('#');
+ *pPitchName++ = wxT('F');
+ *pPitchName++ = wxT('#');
}
break;
case 7:
- *p_PitchName++ = wxT('G');
+ *pPitchName++ = wxT('G');
break;
case 8:
if (bWantFlats) {
- *p_PitchName++ = wxT('A');
- *p_PitchName++ = wxT('b');
+ *pPitchName++ = wxT('A');
+ *pPitchName++ = wxT('b');
} else {
- *p_PitchName++ = wxT('G');
- *p_PitchName++ = wxT('#');
+ *pPitchName++ = wxT('G');
+ *pPitchName++ = wxT('#');
}
break;
case 9:
- *p_PitchName++ = wxT('A');
+ *pPitchName++ = wxT('A');
break;
case 10:
if (bWantFlats) {
- *p_PitchName++ = wxT('B');
- *p_PitchName++ = wxT('b');
+ *pPitchName++ = wxT('B');
+ *pPitchName++ = wxT('b');
} else {
- *p_PitchName++ = wxT('A');
- *p_PitchName++ = wxT('#');
+ *pPitchName++ = wxT('A');
+ *pPitchName++ = wxT('#');
}
break;
case 11:
- *p_PitchName++ = wxT('B');
+ *pPitchName++ = wxT('B');
break;
}
- *p_PitchName = wxT('\0');
+ *pPitchName = wxT('\0');
return gPitchName;
}
@@ -135,9 +135,9 @@ wxChar * PitchName_Absolute(double pitchNum, bool bWantFlats /* = false */)
{
PitchName(pitchNum, bWantFlats);
- // PitchName sets p_PitchName to the next available char in gPitchName,
+ // PitchName sets pPitchName to the next available char in gPitchName,
// so it's ready to append the register number.
- wxSnprintf(p_PitchName, 8, wxT("%d"), ((int)(pitchNum + 0.5) / 12));
+ wxSnprintf(pPitchName, 8, wxT("%d"), (((int)(pitchNum + 0.5) / 12) - 1));
return gPitchName;
}
diff --git a/src/PitchName.h b/src/PitchName.h
index 04e3bd6..b9a1a76 100644
--- a/src/PitchName.h
+++ b/src/PitchName.h
@@ -4,7 +4,8 @@
PitchName.h
- Dominic Mazzoni, Vaughan Johnson
+ Copyright 2005-9, Vaughan Johnson and Dominic Mazzoni.
+ All rights reserved.
Utilities for converting from frequency to pitch
and from pitch to absolute (e.g., C4 for middle C)
@@ -17,21 +18,20 @@
#include <wx/defs.h>
-// Freq2Pitch takes a frequency in Hz (exponential scale relative to
+// FreqToMIDInoteNumber takes a frequency in Hz (exponential scale relative to
// alphabetic pitch names) and returns a pitch ID number (linear
-// scale), such that A440 (A4) is 57, middle C (C4) is 48, etc.
-// The offset to 57 is used to determine the register.
+// scale), such that A440 (A4) is 69, middle C (C4) is 60, etc.
// Each register starts with C (e.g., for middle C and A440,
// it's register 4).
-double Freq2Pitch(double freq);
+double FreqToMIDInoteNumber(double freq);
// PitchIndex returns the [0,11] index for a double pitchNum,
-// as per result from Freq2Pitch, corresponding to modulo 12
+// as per result from FreqToMIDInoteNumber, corresponding to modulo 12
// of the integer part of (pitchNum + 0.5), so 0=C, 1=C#, etc.
unsigned int PitchIndex(double pitchNum);
// PitchName takes pitchNum (as per result from
-// Freq2Pitch) and returns a standard pitch/note name [C, C#, etc.).
+// FreqToMIDInoteNumber) and returns a standard pitch/note name [C, C#, etc.).
// Sharps are the default, unless, bWantFlats is true.
wxChar * PitchName(double pitchNum, bool bWantFlats = false);
diff --git a/src/Printing.cpp b/src/Printing.cpp
index fcd1057..84186ba 100644
--- a/src/Printing.cpp
+++ b/src/Printing.cpp
@@ -23,6 +23,7 @@
#include <wx/print.h>
#include <wx/printdlg.h>
+#include "AColor.h"
#include "Track.h"
#include "TrackArtist.h"
#include "ViewInfo.h"
@@ -96,43 +97,10 @@ bool AudacityPrintout::OnPrintPage(int page)
r.width = width;
r.height = (int)(n->GetHeight() * scale);
- switch(n->GetKind()) {
- case Track::Wave:
- switch (((WaveTrack *)n)->GetDisplay()) {
- case WaveTrack::WaveformDisplay:
- artist.DrawWaveform((WaveTrack *)n, *dc, r,
- &viewInfo, false, false, false, false, false);
- break;
- case WaveTrack::WaveformDBDisplay:
- artist.DrawWaveform((WaveTrack *)n, *dc, r,
- &viewInfo, false, false, false, true, false);
- break;
- case WaveTrack::SpectrumDisplay:
- artist.DrawSpectrum((WaveTrack *)n, *dc, r, &viewInfo, false, false);
- break;
- case WaveTrack::SpectrumLogDisplay:
- artist.DrawSpectrum((WaveTrack *)n, *dc, r, &viewInfo, false, true);
- break;
- case WaveTrack::PitchDisplay:
- artist.DrawSpectrum((WaveTrack *)n, *dc, r, &viewInfo, true, false);
- break;
- }
- break;
-#ifdef USE_MIDI
- case Track::Note:
- artist.DrawNoteTrack((NoteTrack *)n, *dc, r, &viewInfo);
- break;
-#endif // USE_MIDI
- case Track::Label:
- artist.DrawLabelTrack((LabelTrack *)n, *dc, r, &viewInfo);
- break;
- case Track::Time:
- artist.DrawTimeTrack((TimeTrack *)n, *dc, r, &viewInfo);
- break;
- }
+ artist.DrawTrack(n, *dc, r, &viewInfo, false, false, false, false);
dc->SetPen(*wxBLACK_PEN);
- dc->DrawLine(0, r.y, width, r.y);
+ AColor::Line(*dc, 0, r.y, width, r.y);
n = iter.Next();
y += r.height;
diff --git a/src/Profiler.cpp b/src/Profiler.cpp
index 64dbb72..7f20d9f 100644
--- a/src/Profiler.cpp
+++ b/src/Profiler.cpp
@@ -33,7 +33,7 @@ Profiler::~Profiler()
time(&now);
fprintf(log,"Audacity Profiler Run, Ended at ");
- fprintf(log,ctime(&now));
+ fprintf(log,"%s",ctime(&now));
fprintf(log,"****************************************\n");
//print out the tasks
for(int i=0;i<(int)mTasks.size();i++)
diff --git a/src/Project.cpp b/src/Project.cpp
index 08eccef..9ddff9c 100644
--- a/src/Project.cpp
+++ b/src/Project.cpp
@@ -97,6 +97,13 @@ scroll information. It also has some status flags.
#include "Dependencies.h"
#include "FreqWindow.h"
#include "HistoryWindow.h"
+#ifdef EXPERIMENTAL_LYRICS_WINDOW
+ #include "Lyrics.h"
+ #include "LyricsWindow.h"
+#endif
+#ifdef EXPERIMENTAL_MIXER_BOARD
+ #include "MixerBoard.h"
+#endif
#include "Internat.h"
#include "import/Import.h"
#include "LabelTrack.h"
@@ -193,6 +200,33 @@ private:
T mValExit;
};
+// This wrapper prevents the scrollbars from retaining focus after being
+// used. Otherwise, the only way back to the track panel is to click it
+// and that causes your original location to be lost.
+class ScrollBar:public wxScrollBar
+{
+public:
+ ScrollBar(wxWindow* parent, wxWindowID id, long style)
+ : wxScrollBar(parent, id, wxDefaultPosition, wxDefaultSize, style)
+ {
+ }
+
+ void OnSetFocus(wxFocusEvent & e)
+ {
+ wxWindow *w = e.GetWindow();
+ if (w != NULL) {
+ w->SetFocus();
+ }
+ }
+
+private:
+ DECLARE_EVENT_TABLE()
+};
+
+BEGIN_EVENT_TABLE(ScrollBar, wxScrollBar)
+ EVT_SET_FOCUS(ScrollBar::OnSetFocus)
+END_EVENT_TABLE()
+
/* Define Global Variables */
//The following global counts the number of documents that have been opened
//for the purpose of project placement (not to keep track of the number)
@@ -374,21 +408,52 @@ bool ImportXMLTagHandler::HandleXMLTag(const wxChar *tag, const wxChar **attrs)
{
if (wxStrcmp(tag, wxT("import")) || attrs==NULL || (*attrs)==NULL || wxStrcmp(*attrs++, wxT("filename")))
return false;
- wxString strPathName = *attrs;
- if (!XMLValueChecker::IsGoodPathName(strPathName))
+ wxString strAttr = *attrs;
+ if (!XMLValueChecker::IsGoodPathName(strAttr))
{
- // Maybe strPathName is just a fileName, not the full path. Try the project data directory.
- wxFileName fileName(mProject->GetDirManager()->GetProjectDataDir(), strPathName);
- if (XMLValueChecker::IsGoodFileName(strPathName, fileName.GetPath(wxPATH_GET_VOLUME)))
- strPathName = fileName.GetFullPath();
+ // Maybe strAttr is just a fileName, not the full path. Try the project data directory.
+ wxFileName fileName(mProject->GetDirManager()->GetProjectDataDir(), strAttr);
+ if (XMLValueChecker::IsGoodFileName(strAttr, fileName.GetPath(wxPATH_GET_VOLUME)))
+ strAttr = fileName.GetFullPath();
else
{
- wxLogWarning(wxT("Could not import file: %s"), strPathName.c_str());
+ wxLogWarning(wxT("Could not import file: %s"), strAttr.c_str());
return false;
}
}
- mProject->Import(strPathName);
- return true; //v result from Import?
+
+ WaveTrackArray trackArray;
+ mProject->Import(strAttr, &trackArray);
+ if (trackArray.IsEmpty())
+ return false;
+
+ // Handle other attributes, now that we have the tracks.
+ attrs++;
+ const wxChar** pAttr;
+ bool bSuccess = true;
+
+ for (size_t i = 0; i < trackArray.GetCount(); i++)
+ {
+ // Most of the "import" tag attributes are the same as for "wavetrack" tags,
+ // so apply them via WaveTrack::HandleXMLTag().
+ bSuccess = trackArray[i]->HandleXMLTag(wxT("wavetrack"), attrs);
+
+ // "offset" tag is ignored in WaveTrack::HandleXMLTag except for legacy projects,
+ // so handle it here.
+ double dblValue;
+ pAttr = attrs;
+ while (*pAttr)
+ {
+ const wxChar *attr = *pAttr++;
+ const wxChar *value = *pAttr++;
+ const wxString strValue = value;
+ if (!wxStrcmp(attr, wxT("offset")) &&
+ XMLValueChecker::IsGoodString(strValue) &&
+ Internat::CompatibleToDouble(strValue, &dblValue))
+ trackArray[i]->SetOffset(dblValue);
+ }
+ }
+ return bSuccess;
};
AudacityProject *CreateNewAudacityProject()
@@ -565,8 +630,8 @@ BEGIN_EVENT_TABLE(AudacityProject, wxFrame)
EVT_COMMAND_SCROLL(HSBarID, AudacityProject::OnScroll)
EVT_COMMAND_SCROLL(VSBarID, AudacityProject::OnScroll)
EVT_TIMER(AudacityProjectTimerID, AudacityProject::OnTimer)
- // Update menu method
- EVT_UPDATE_UI(1, AudacityProject::OnUpdateMenus)
+ // Fires for menu with ID #1...first menu defined
+ EVT_UPDATE_UI(1, AudacityProject::OnUpdateUI)
EVT_ICONIZE(AudacityProject::OnIconize)
EVT_COMMAND(wxID_ANY, EVT_OPEN_AUDIO_FILE, AudacityProject::OnOpenAudioFile)
EVT_COMMAND(wxID_ANY, EVT_TOOLBAR_UPDATED, AudacityProject::OnToolBarUpdate)
@@ -587,17 +652,27 @@ AudacityProject::AudacityProject(wxWindow * parent, wxWindowID id,
Read(wxT("/SamplingRate/DefaultProjectSampleFormat"), floatSample)),
mSnapTo(0),
mDirty(false),
+ mInIdle(false),
+ mTextClipFlag(0),
mTrackPanel(NULL),
mTrackFactory(NULL),
mAutoScrolling(false),
mActive(true),
mHistoryWindow(NULL),
+ #ifdef EXPERIMENTAL_LYRICS_WINDOW
+ mLyricsWindow(NULL),
+ #endif
+ #ifdef EXPERIMENTAL_MIXER_BOARD
+ mMixerBoard(NULL),
+ mMixerBoardFrame(NULL),
+ #endif
mToolManager(NULL),
mAudioIOToken(-1),
mIsDeleting(false),
mTracksFitVerticallyZoomed(false), //lda
mCleanSpeechMode(false), //lda
mShowId3Dialog(true), //lda
+ mLastFocusedWindow(NULL),
mKeyboardCaptured(false),
mImportXMLTagHandler(NULL),
mLastAutoSaveTime(0),
@@ -605,12 +680,12 @@ AudacityProject::AudacityProject(wxWindow * parent, wxWindowID id,
mIsRecovered(false),
mRecordingRecoveryHandler(NULL),
mImportedDependencies(false),
- mWantSaveCompressed(false)
+ mWantSaveCompressed(false),
+ mLastEffect(NULL),
+ mLastEffectType(0),
+ mLastEffectDesc(_("Repeat Last Effect")),
+ mFreqWindow(NULL)
{
-
-
-
-
int widths[] = {-1, 130};
mStatusBar = CreateStatusBar(2);
mStatusBar->SetStatusWidths(2, widths);
@@ -623,6 +698,12 @@ AudacityProject::AudacityProject(wxWindow * parent, wxWindowID id,
mTracks = new TrackList();
mLastSavedTracks = NULL;
+ // Register for tracklist updates
+ mTracks->Connect(EVT_TRACKLIST_UPDATED,
+ wxCommandEventHandler(AudacityProject::OnTrackListUpdated),
+ NULL,
+ this);
+
//
// Initialize view info (shared with TrackPanel)
//
@@ -639,6 +720,7 @@ AudacityProject::AudacityProject(wxWindow * parent, wxWindowID id,
mViewInfo.lastZoom = mViewInfo.zoom;
// Vertical scrollbar
+ mViewInfo.track = NULL;
mViewInfo.vpos = 0;
mViewInfo.scrollStep = 16;
@@ -655,7 +737,7 @@ AudacityProject::AudacityProject(wxWindow * parent, wxWindowID id,
mViewInfo.bRedrawWaveform = false;
mLockPlayRegion = false;
- mStickyFlag = true;
+ SetStickyFlag(true);
CreateMenusAndCommands();
@@ -735,17 +817,6 @@ AudacityProject::AudacityProject(wxWindow * parent, wxWindowID id,
SetSizer( bs );
bs->Layout();
- mHsbar = new wxScrollBar(pPage,
- HSBarID,
- wxDefaultPosition,
- wxDefaultSize,
- wxSB_HORIZONTAL);
- mVsbar = new wxScrollBar(pPage,
- VSBarID,
- wxDefaultPosition,
- wxDefaultSize,
- wxSB_VERTICAL);
-
mTrackPanel = new TrackPanel(pPage,
TrackPanelID,
wxDefaultPosition,
@@ -758,6 +829,14 @@ AudacityProject::AudacityProject(wxWindow * parent, wxWindowID id,
// LLL: When Audacity starts or becomes active after returning from
// another application, the first window that can accept focus
// will be given the focus even if we try to SetFocus(). By
+ // creating the scrollbars after the TrackPanel, we resolve
+ // several focus problems.
+ mHsbar = new ScrollBar(pPage, HSBarID, wxSB_HORIZONTAL);
+ mVsbar = new ScrollBar(pPage, VSBarID, wxSB_VERTICAL);
+
+ // LLL: When Audacity starts or becomes active after returning from
+ // another application, the first window that can accept focus
+ // will be given the focus even if we try to SetFocus(). By
// making the TrackPanel that first window, we resolve several
// keyboard focus problems.
pPage->MoveBeforeInTabOrder(mToolManager->GetTopDock());
@@ -807,7 +886,7 @@ AudacityProject::AudacityProject(wxWindow * parent, wxWindowID id,
InitialState();
FixScrollbars();
- mRuler->SetLeftOffset( mTrackPanel->GetLeftOffset() - 1 ); // bevel on AdornedRuler
+ mRuler->SetLeftOffset(mTrackPanel->GetLeftOffset()); // bevel on AdornedRuler
mRuler->SetProject(this);
//
@@ -816,8 +895,10 @@ AudacityProject::AudacityProject(wxWindow * parent, wxWindowID id,
// loads either the XPM or the windows resource, depending on the platform
#if !defined(__WXMAC__) && !defined(__WXX11__)
- #ifdef __WXMSW__
+ #if defined(__WXMSW__)
wxIcon ic(wxICON(AudacityLogo));
+ #elif defined(__WXGTK__)
+ wxIcon ic(wxICON(AudacityLogoAlpha));
#else
wxIcon ic;
ic.CopyFromBitmap(theTheme.Bitmap(bmpAudacityLogo48x48));
@@ -845,12 +926,11 @@ AudacityProject::AudacityProject(wxWindow * parent, wxWindowID id,
// mTrackPanel->SetDropTarget(new AudacityDropTarget(this));
mTrackPanel->SetDropTarget(new DropTarget(this));
#endif
-
-
}
AudacityProject::~AudacityProject()
{
+ wxGetApp().GetRecentFiles()->RemoveMenu(mRecentFilesMenu);
}
void AudacityProject::UpdatePrefsVariables()
@@ -861,12 +941,14 @@ void AudacityProject::UpdatePrefsVariables()
gPrefs->Read(wxT("/GUI/TracksFitVerticallyZoomed"), &mTracksFitVerticallyZoomed, false);
gPrefs->Read(wxT("/GUI/SelectAllOnNone"), &mSelectAllOnNone, true);
gPrefs->Read(wxT("/GUI/ShowSplashScreen"), &mShowSplashScreen, true);
- gPrefs->Read(wxT("/GUI/Help"), &mHelpPref, wxT("Standard") );
+ gPrefs->Read(wxT("/GUI/Help"), &mHelpPref, wxT("InBrowser") );
gPrefs->Read(wxT("/Batch/CleanSpeechMode"), &mCleanSpeechMode, false);
gPrefs->Read(wxT("/AudioFiles/ShowId3Dialog"), &mShowId3Dialog, true);
gPrefs->Read(wxT("/AudioFiles/NormalizeOnLoad"),&mNormalizeOnLoad, false);
+ gPrefs->Read(wxT("/SamplingRate/DefaultProjectSampleRate"), &mRate, AudioIO::GetOptimalSupportedSampleRate());
+ mDefaultFormat = (sampleFormat) gPrefs->Read(wxT("/SamplingRate/DefaultProjectSampleFormat"), floatSample);
}
void AudacityProject::UpdatePrefs()
@@ -875,40 +957,19 @@ void AudacityProject::UpdatePrefs()
SetProjectTitle();
- if (mTrackPanel)
+ if (mTrackPanel) {
mTrackPanel->UpdatePrefs();
-
- mRate = (double) gPrefs->Read(wxT("/SamplingRate/DefaultProjectSampleRate"), AudioIO::GetOptimalSupportedSampleRate());
- mDefaultFormat = (sampleFormat) gPrefs->
- Read(wxT("/SamplingRate/DefaultProjectSampleFormat"), floatSample);
+ }
SetSnapTo(gPrefs->Read(wxT("/SnapTo"), 0L)!=0);
-// mToolManager->LayoutToolBars(); // Just to add/remove the CleanSpeech button.
-
- if (GetSelectionBar()) {
- GetSelectionBar()->UpdateRates();
- GetSelectionBar()->SetRate(mRate);
+ if (mToolManager) {
+ mToolManager->UpdatePrefs();
}
- if (GetDeviceToolBar())
- GetDeviceToolBar()->UpdatePrefs();
-
- if (GetMixerToolBar())
- GetMixerToolBar()->UpdatePrefs();
-
- if( GetControlToolBar() )
- GetControlToolBar()->UpdatePrefs();
-
- if( GetMeterToolBar() )
- {
- Meter *playMeter, *recordMeter;
- GetMeterToolBar()->GetMeters(&playMeter, &recordMeter);
- playMeter->UpdatePrefs();
- playMeter->HandleLayout();
- recordMeter->UpdatePrefs();
- recordMeter->HandleLayout();
- }
+ // The toolbars will be recreated, so make sure we don't leave
+ // a stale pointer hanging around.
+ mLastFocusedWindow = NULL;
}
void AudacityProject::RedrawProject(const bool bForceWaveTracks /*= false*/)
@@ -923,7 +984,7 @@ void AudacityProject::RedrawProject(const bool bForceWaveTracks /*= false*/)
if (pTrack->GetKind() == Track::Wave)
{
WaveTrack* pWaveTrack = (WaveTrack*)pTrack;
- WaveClipList::Node* node = pWaveTrack->GetClipIterator();
+ WaveClipList::compatibility_iterator node = pWaveTrack->GetClipIterator();
while (node)
{
WaveClip *clip = node->GetData();
@@ -1184,6 +1245,7 @@ void AudacityProject::FixScrollbars()
if(!mTracks)
return;
+ bool refresh = false;
bool rescroll = false;
int totalHeight = (mTracks->GetHeight() + 32);
@@ -1208,6 +1270,7 @@ void AudacityProject::FixScrollbars()
mViewInfo.sbarScreen = (wxInt64) (mViewInfo.screen * mViewInfo.zoom);
mViewInfo.sbarH = (wxInt64) (mViewInfo.h * mViewInfo.zoom);
+ int lastv = mViewInfo.vpos;
mViewInfo.vpos = mVsbar->GetThumbPosition() * mViewInfo.scrollStep;
if (mViewInfo.vpos >= totalHeight)
@@ -1235,16 +1298,20 @@ void AudacityProject::FixScrollbars()
if (panelHeight >= totalHeight && mViewInfo.vpos != 0) {
mViewInfo.vpos = 0;
- mTrackPanel->Refresh(false);
+ refresh = true;
rescroll = false;
}
if (mViewInfo.screen >= mViewInfo.total && mViewInfo.sbarH != 0) {
mViewInfo.sbarH = 0;
- mTrackPanel->Refresh(false);
+ refresh = true;
rescroll = false;
}
-
+
+ if (lastv != mViewInfo.vpos) {
+ UpdateFirstVisible();
+ }
+
// wxScrollbar only supports int values but we need a greater range, so
// we scale the scrollbar coordinates on demand. We only do this if we
// would exceed the int range, so we can always use the maximum resolution
@@ -1274,7 +1341,7 @@ void AudacityProject::FixScrollbars()
mVsbar->Refresh();
mViewInfo.lastZoom = mViewInfo.zoom;
- if (rescroll && mViewInfo.screen < mViewInfo.total){
+ if (refresh || (rescroll && mViewInfo.screen < mViewInfo.total)) {
mTrackPanel->Refresh(false);
}
@@ -1285,6 +1352,53 @@ void AudacityProject::FixScrollbars()
}
}
+Track *AudacityProject::GetFirstVisible()
+{
+ if (!mViewInfo.track && mTracks) {
+ TrackListIterator iter(mTracks);
+ for (Track *t = iter.First(); t; t = iter.Next()) {
+ int y = t->GetY();
+ int h = t->GetHeight();
+ if (y >= mViewInfo.vpos || y + h >= mViewInfo.vpos) {
+ mViewInfo.track = t;
+ break;
+ }
+ }
+ }
+
+ return mViewInfo.track;
+}
+
+void AudacityProject::UpdateFirstVisible()
+{
+ if (!mViewInfo.track || !mTracks) {
+ return;
+ }
+
+ Track *t = mViewInfo.track;
+ mViewInfo.track = NULL;
+
+ if (t->GetY() > mViewInfo.vpos) {
+ Track *l = NULL;
+ while (t && t->GetY() > mViewInfo.vpos) {
+ l = t;
+ t = mTracks->GetPrev(t);
+ }
+ }
+
+ while (t) {
+ int y = t->GetY();
+ int h = t->GetHeight();
+ if (y >= mViewInfo.vpos || y + h >= mViewInfo.vpos) {
+ mViewInfo.track = t;
+ return;
+ }
+ t = mTracks->GetNext(t);
+ }
+
+ return;
+}
+
void AudacityProject::UpdateLayout()
{
if (!mTrackPanel)
@@ -1357,6 +1471,14 @@ void AudacityProject::OnToolBarUpdate(wxCommandEvent & event)
event.Skip(false); /* No need to propagate any further */
}
+// The projects tracklist has been updated
+void AudacityProject::OnTrackListUpdated(wxCommandEvent & event)
+{
+ mViewInfo.track = NULL;
+
+ event.Skip();
+}
+
///Prevents deletion of projects from outside threads.
void AudacityProject::AllProjectsDeleteLock()
{
@@ -1389,7 +1511,6 @@ void AudacityProject::OnODTaskComplete(wxCommandEvent & event)
void AudacityProject::OnScroll(wxScrollEvent & event)
{
wxInt64 hlast = mViewInfo.sbarH;
- wxInt64 hoffset = 0;
mViewInfo.sbarH = (wxInt64)
(mHsbar->GetThumbPosition() / mViewInfo.sbarScale);
@@ -1401,26 +1522,14 @@ void AudacityProject::OnScroll(wxScrollEvent & event)
mViewInfo.h = mViewInfo.total - mViewInfo.screen;
if (mViewInfo.h < 0.0)
mViewInfo.h = 0.0;
- hoffset = (mViewInfo.sbarH - hlast);
}
- int vlast = mViewInfo.vpos;
- int voffset = 0;
-
+ int lastv = mViewInfo.vpos;
mViewInfo.vpos = mVsbar->GetThumbPosition() * mViewInfo.scrollStep;
- voffset = mViewInfo.vpos - vlast;
-
- /* TODO: add back fast scrolling code
-
- // Track panel is updated either way, but it is smart and only redraws
- // what is needed
- TrackPanel->FastScroll(-hoffset, -voffset);
- // Ruler panel updated if we scroll horizontally
- if (hoffset) {
- REDRAW(rulerPanel);
- }
- */
+ if (lastv != mViewInfo.vpos) {
+ UpdateFirstVisible();
+ }
SetActiveProject(this);
@@ -1525,25 +1634,64 @@ void AudacityProject::OnMenu(wxCommandEvent & event)
event.Skip(true);
}
-//TODO: This function is still kinda hackish, clean up
-void AudacityProject::OnUpdateMenus(wxUpdateUIEvent & event)
+void AudacityProject::OnUpdateUI(wxUpdateUIEvent & event)
{
+ // As of wxGTK 2.8.9, there is a problem in the wxClipboard class that
+ // allows recursive event processing. This problem has been corrected
+ // by wxWidgets changeset #45180. However, this han't made it into a
+ // release yet, so we have to work around it.
+ //
+ // This is done by only checking the wxClipboard contents during an idle
+ // event, thus preventing possible recursion during other event processing.
+ //
+ mInIdle = true;
+
UpdateMenus();
+
+ mInIdle = false;
}
void AudacityProject::OnActivate(wxActivateEvent & event)
{
+ // Activate events can fire during window teardown, so just
+ // ignore them.
+ if (mIsDeleting) {
+ return;
+ }
+
mActive = event.GetActive();
- // LLL: Activate events can fire while closing project, so
- // protect against it.
- if (mActive && !mIsDeleting) {
+ // Under Windows, focus can be "lost" when returning to
+ // Audacity from a different application.
+ //
+ // This was observed by minimizing all windows using WINDOWS+M and
+ // then ALT+TAB to return to Audacity. Focus will be given to the
+ // project window frame which is not at all useful.
+ //
+ // So, when the project window receives a deactivate event, we
+ // remember which child had the focus. Then, when we receive the
+ // activate event, we restore that focus to the child or the track
+ // panel if no child had the focus (which probably should never happen).
+ if (!mActive) {
+ // We only want to remember the last focused window if FindFocus() returns
+ // a window within the current project frame.
+ wxWindow *w = FindFocus();
+ if (wxGetTopLevelParent(w) ==this) {
+ mLastFocusedWindow = w;
+ }
+ }
+ else {
SetActiveProject(this);
-
- // Under Windows, focus can be "lost" when returning to
- // Audacity from a different application. For keyboard
- // users, this is a major problem.
- mTrackPanel->SetFocus();
+ if (mLastFocusedWindow) {
+ mLastFocusedWindow->SetFocus();
+ }
+ else {
+ if (mTrackPanel) {
+ mTrackPanel->SetFocus();
+ }
+ }
+ // No longer need to remember the last focused window
+ mLastFocusedWindow = NULL;
}
event.Skip();
}
@@ -1565,7 +1713,12 @@ void AudacityProject::OnMouseEvent(wxMouseEvent & event)
// and/or attempts to delete objects twice.
void AudacityProject::OnCloseWindow(wxCloseEvent & event)
{
- if (gPrefsDialogVisible || wxIsBusy()) {
+ if (mFreqWindow) {
+ mFreqWindow->Destroy();
+ mFreqWindow = NULL;
+ }
+
+ if (wxIsBusy()) {
event.Veto();
return;
}
@@ -1635,6 +1788,8 @@ void AudacityProject::OnCloseWindow(wxCloseEvent & event)
}
}
+ ModuleManager::Dispatch(ProjectClosing);
+
// Stop the timer since there's no need to update anything anymore
delete mTimer;
mTimer = NULL;
@@ -1651,8 +1806,22 @@ void AudacityProject::OnCloseWindow(wxCloseEvent & event)
SaveWindowSize();
}
+ mLastFocusedWindow = NULL;
mIsDeleting = true;
+ bool quitOnClose;
+#ifdef __WXMAC__
+ bool defaultQuitOnClose = false;
+#else
+ bool defaultQuitOnClose = true;
+#endif
+ gPrefs->Read(wxT("/GUI/QuitOnClose"), &quitOnClose, defaultQuitOnClose);
+
+ // DanH: If we're definitely about to quit, delete the clipboard.
+ // Doing this after Deref'ing the DirManager causes problems.
+ if ((gAudacityProjects.GetCount() == 1) && (quitOnClose || gIsQuitting))
+ DeleteClipboard();
+
// JKC: For Win98 and Linux do not detach the menu bar.
// We want wxWindows to clean it up for us.
// TODO: Is there a Mac issue here??
@@ -1700,12 +1869,15 @@ void AudacityProject::OnCloseWindow(wxCloseEvent & event)
delete mTags;
mTags = NULL;
- delete mRecentFiles;
- mRecentFiles = NULL;
-
delete mImportXMLTagHandler;
mImportXMLTagHandler = NULL;
+ // Unregister for tracklist updates
+ mTracks->Disconnect(EVT_TRACKLIST_UPDATED,
+ wxCommandEventHandler(AudacityProject::OnTrackListUpdated),
+ NULL,
+ this);
+
// Delete all the tracks to free up memory and DirManager references.
mTracks->Clear(true);
delete mTracks;
@@ -1739,21 +1911,12 @@ void AudacityProject::OnCloseWindow(wxCloseEvent & event)
}
if (gAudacityProjects.IsEmpty() && !gIsQuitting) {
- bool quitOnClose;
// LL: On the Mac, we don't want the logger open after all projects
// have been closed since it's menu will show instead of the
// common menu.
wxGetApp().mLogger->Show(false);
-#ifdef __WXMAC__
- bool defaultQuitOnClose = false;
-#else
- bool defaultQuitOnClose = true;
-#endif
-
- gPrefs->Read(wxT("/GUI/QuitOnClose"), &quitOnClose, defaultQuitOnClose);
-
if (quitOnClose)
QuitAudacity();
else {
@@ -1803,7 +1966,7 @@ wxArrayString AudacityProject::ShowOpenDialog(wxString extra)
l.DeleteContents(true);
wxGetApp().mImporter->GetSupportedImportFormats(&l);
- for (FormatList::Node *n = l.GetFirst(); n; n = n->GetNext()) {
+ for (FormatList::compatibility_iterator n = l.GetFirst(); n; n = n->GetNext()) {
Format *f = n->GetData();
wxString newfilter = f->formatName + wxT("|");
@@ -1829,7 +1992,7 @@ wxArrayString AudacityProject::ShowOpenDialog(wxString extra)
all;
#endif
- wxString mask = _("All files|*.*|All supported files|") +
+ wxString mask = _("All files|*|All supported files|") +
all + wxT("|") +
extra +
filter;
@@ -1900,9 +2063,8 @@ void AudacityProject::OpenFiles(AudacityProject *proj)
for (size_t ff = 0; ff < selectedFiles.GetCount(); ff++) {
wxString fileName = selectedFiles[ff];
wxFileName newFileName(fileName);
+ bool skip = false;
- gPrefs->Write(wxT("/DefaultOpenPath"), wxPathOnly(fileName));
-
// Make sure it isn't already open
size_t numProjects = gAudacityProjects.Count();
for (size_t i = 0; i < numProjects; i++) {
@@ -1911,10 +2073,17 @@ void AudacityProject::OpenFiles(AudacityProject *proj)
newFileName.GetName().c_str()),
_("Error opening project"),
wxOK | wxCENTRE);
- continue;
+ skip = true;
+ break;
}
}
+ if (skip) {
+ continue;
+ }
+
+ gPrefs->Write(wxT("/DefaultOpenPath"), wxPathOnly(fileName));
+
// DMM: If the project is dirty, that means it's been touched at
// all, and it's not safe to open a new project directly in its
// place. Only if the project is brand-new clean and the user
@@ -1933,11 +2102,6 @@ void AudacityProject::OpenFiles(AudacityProject *proj)
// all relevant member variables are in their initial state,
// and it's okay to open a new project inside this window.
proj->OpenFile(fileName);
-
- proj->mRecentFiles->AddFileToHistory(fileName);
- gPrefs->SetPath(wxT("/RecentFiles"));
- proj->mRecentFiles->Save(*gPrefs);
- gPrefs->SetPath(wxT(".."));
}
}
@@ -1962,12 +2126,25 @@ bool AudacityProject::WarnOfLegacyFile( )
-void AudacityProject::OpenFile(wxString fileName)
+void AudacityProject::OpenFile(wxString fileName, bool addtohistory)
{
// On Win32, we may be given a short (DOS-compatible) file name on rare
// occassions (e.g. stuff like "C:\PROGRA~1\AUDACI~1\PROJEC~1.AUP"). We
// convert these to long file name first.
- fileName = PlatformCompatibility::ConvertSlashInFileName(PlatformCompatibility::GetLongFileName(fileName));
+ fileName = PlatformCompatibility::ConvertSlashInFileName(
+ PlatformCompatibility::GetLongFileName(fileName));
+
+ // Data loss may occur if users mistakenly try to open ".aup.bak" files
+ // left over from an unsuccessful save or by previous versions of Audacity.
+ // So we always refuse to open such files.
+ if (fileName.Lower().EndsWith(wxT(".aup.bak")))
+ {
+ wxMessageBox(
+ _("You are trying to open an automatically created backup file.\nDoing this may result in severe data loss.\n\nPlease open the actual Audacity project file instead."),
+ _("Backup file detected"),
+ wxOK | wxCENTRE, this);
+ return;
+ }
// We want to open projects using wxTextFile, but if it's NOT a project
// file (but actually a WAV file, for example), then wxTextFile will spin
@@ -2097,7 +2274,7 @@ void AudacityProject::OpenFile(wxString fileName)
mLastSavedTracks->Add(t->Duplicate());
t = iter.Next();
}
-
+
InitialState();
mTrackPanel->SetFocusedTrack(iter.First());
HandleResize();
@@ -2106,6 +2283,10 @@ void AudacityProject::OpenFile(wxString fileName)
// else any asynch calls into the blockfile code will not have
// finished logging errors (if any) before the call to ProjectFSCK()
+ if (addtohistory) {
+ wxGetApp().AddFileToHistory(fileName);
+ }
+
if (mIsRecovered)
{
// This project has been recovered, so write a new auto-save file
@@ -2141,7 +2322,7 @@ void AudacityProject::OpenFile(wxString fileName)
if (t->GetKind() == Track::Wave)
{
// Only wave tracks have a notion of "changed"
- for (WaveClipList::Node* it=((WaveTrack*)t)->GetClipIterator(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=((WaveTrack*)t)->GetClipIterator(); it; it=it->GetNext())
it->GetData()->MarkChanged();
}
t = iter.Next();
@@ -2170,41 +2351,36 @@ void AudacityProject::OpenFile(wxString fileName)
}
GetDirManager()->FillBlockfilesCache();
-
-
-#ifdef EXPERIMENTAL_ONDEMAND
- //check the ODManager to see if we should add the tracks to the ODManager.
- //this flag would have been set in the HandleXML calls from above, if there were
- //OD***Blocks.
- if(ODManager::HasLoadedODFlag())
- {
- Track *tr;
- TrackListIterator triter(mTracks);
- tr = triter.First();
-
- ODComputeSummaryTask* computeTask;
- bool odUsed = false;
- while (tr) {
- if (tr->GetKind() == Track::Wave)
+ //check the ODManager to see if we should add the tracks to the ODManager.
+ //this flag would have been set in the HandleXML calls from above, if there were
+ //OD***Blocks.
+ if(ODManager::HasLoadedODFlag())
+ {
+ Track *tr;
+ TrackListIterator triter(mTracks);
+ tr = triter.First();
+
+ ODComputeSummaryTask* computeTask;
+ bool odUsed = false;
+ while (tr) {
+ if (tr->GetKind() == Track::Wave)
+ {
+ if(!odUsed)
{
- if(!odUsed)
- {
- computeTask=new ODComputeSummaryTask;
- odUsed=true;
- }
- computeTask->AddWaveTrack((WaveTrack*)tr);
+ computeTask=new ODComputeSummaryTask;
+ odUsed=true;
}
- tr = triter.Next();
+ computeTask->AddWaveTrack((WaveTrack*)tr);
}
- if(odUsed)
- ODManager::Instance()->AddNewTask(computeTask);
-
- //release the flag.
- ODManager::UnmarkLoadedODFlag();
+ tr = triter.Next();
}
-#endif
-
+ if(odUsed)
+ ODManager::Instance()->AddNewTask(computeTask);
+
+ //release the flag.
+ ODManager::UnmarkLoadedODFlag();
+ }
}
bool AudacityProject::HandleXMLTag(const wxChar *tag, const wxChar **attrs)
@@ -2313,6 +2489,7 @@ bool AudacityProject::HandleXMLTag(const wxChar *tag, const wxChar **attrs)
long longVpos = 0;
if (!wxStrcmp(attr, wxT("vpos")))
wxString(value).ToLong(&longVpos);
+ mViewInfo.track = NULL;
mViewInfo.vpos = longVpos;
if (!wxStrcmp(attr, wxT("h")))
@@ -2374,7 +2551,7 @@ bool AudacityProject::HandleXMLTag(const wxChar *tag, const wxChar **attrs)
}
else
{
- msg.Printf(_("This file was saved by Audacity %s.\nYou can open the file with this version of Audacity, but if you save it with this version you will no longer be able to open it in older versions.\n\nOpen this file now?"),
+ msg.Printf(_("This file was saved by Audacity %s.\n\nAudacity can open and save this file, but saving it in this version\nwill then prevent any 1.2 or earlier version opening it.\n\nOpen this file now?"),
audacityVersion.c_str());
}
int action;
@@ -2510,6 +2687,7 @@ void AudacityProject::WriteXML(XMLWriter &xmlFile)
mTags->WriteXML(xmlFile);
Track *t;
+ WaveTrack* pWaveTrack;
TrackListIterator iter(mTracks);
t = iter.First();
unsigned int ndx = 0;
@@ -2518,6 +2696,23 @@ void AudacityProject::WriteXML(XMLWriter &xmlFile)
{
xmlFile.StartTag(wxT("import"));
xmlFile.WriteAttr(wxT("filename"), mStrOtherNamesArray[ndx]); // Assumes mTracks order hasn't changed!
+
+ // Don't store "channel" and "linked" tags because the importer can figure that out,
+ // e.g., from stereo Ogg files.
+ // xmlFile.WriteAttr(wxT("channel"), t->GetChannel());
+ // xmlFile.WriteAttr(wxT("linked"), t->GetLinked());
+
+ xmlFile.WriteAttr(wxT("offset"), t->GetOffset(), 8);
+ xmlFile.WriteAttr(wxT("mute"), t->GetMute());
+ xmlFile.WriteAttr(wxT("solo"), t->GetSolo());
+ xmlFile.WriteAttr(wxT("height"), t->GetActualHeight());
+ xmlFile.WriteAttr(wxT("minimized"), t->GetMinimized());
+
+ pWaveTrack = (WaveTrack*)t;
+ // Don't store "rate" tag because the importer can figure that out.
+ // xmlFile.WriteAttr(wxT("rate"), pWaveTrack->GetRate());
+ xmlFile.WriteAttr(wxT("gain"), (double)pWaveTrack->GetGain());
+ xmlFile.WriteAttr(wxT("pan"), (double)pWaveTrack->GetPan());
xmlFile.EndTag(wxT("import"));
ndx++;
@@ -2553,7 +2748,7 @@ bool AudacityProject::Save(bool overwrite /* = true */ ,
bool bHasTracks = (iter.First() != NULL);
if (!bHasTracks)
{
- if (mUndoManager.UnsavedChanges()) {
+ if (mUndoManager.UnsavedChanges() && mEmptyCanBeDirty) {
int result = wxMessageBox(_("Your project is now empty.\nIf saved, the project will have no tracks.\n\nTo save any previously open tracks:\nClick 'No', Edit > Undo until all tracks\nare open, then File > Save Project.\n\nSave anyway?"),
_("Warning empty project"),
wxYES_NO | wxICON_QUESTION, this);
@@ -2664,11 +2859,11 @@ bool AudacityProject::Save(bool overwrite /* = true */ ,
}
if (!success) {
- wxMessageBox(wxString::Format(_("Could not save project. Perhaps %s \nis not writeable or the disk is full."),
+ wxMessageBox(wxString::Format(_("Could not save project. Perhaps %s \nis not writable or the disk is full."),
project.c_str()),
_("Error saving project"),
- wxOK | wxCENTRE, this);
- if (safetyFileName)
+ wxICON_ERROR, this);
+ if (safetyFileName != wxT(""))
wxRename(safetyFileName, mFileName);
return false;
@@ -2678,29 +2873,44 @@ bool AudacityProject::Save(bool overwrite /* = true */ ,
// Write the AUP file.
XMLFileWriter saveFile;
- saveFile.Open(mFileName, wxT("wb"));
- if (!saveFile.IsOpened()) {
- wxMessageBox(_("Couldn't write to file: ") + mFileName,
- _("Error saving project"),
- wxOK | wxCENTRE, this);
+ try
+ {
+ saveFile.Open(mFileName, wxT("wb"));
+
+ WriteXMLHeader(saveFile);
+ WriteXML(saveFile);
+
+ saveFile.Close();
+ }
+ catch (XMLFileWriterException* pException)
+ {
+ wxMessageBox(wxString::Format(
+ _("Couldn't write to file \"%s\": %s"),
+ mFileName.c_str(), pException->GetMessage().c_str()),
+ _("Error saving project"), wxICON_ERROR);
- if (safetyFileName)
+ delete pException;
+
+ // When XMLWriter throws an exception, it tries to close it before,
+ // so we can at least try to delete the incomplete file and move the
+ // backup file over.
+ if (safetyFileName != wxT(""))
+ {
+ wxRemove(mFileName);
wxRename(safetyFileName, mFileName);
+ }
return false;
}
-
- WriteXMLHeader(saveFile);
- WriteXML(saveFile);
-
- saveFile.Close();
#ifdef __WXMAC__
wxFileName fn(mFileName);
fn.MacSetTypeAndCreator(AUDACITY_PROJECT_TYPE, AUDACITY_CREATOR);
#endif
- if (!bWantSaveCompressed)
+ if (bWantSaveCompressed)
+ mWantSaveCompressed = false; // Don't want this mode for AudacityProject::WriteXML() any more.
+ else
{
// Now that we have saved the file, we can delete the auto-saved version
DeleteCurrentAutoSaveFile();
@@ -2749,6 +2959,12 @@ bool AudacityProject::Save(bool overwrite /* = true */ ,
mUndoManager.StateSaved();
}
+ // If we get here, saving the project was successful, so we can delete
+ // the .bak file (because it now does not fit our block files anymore
+ // anyway).
+ if (safetyFileName != wxT(""))
+ wxRemoveFile(safetyFileName);
+
mStatusBar->SetStatusText(wxString::Format(_("Saved %s"),
mFileName.c_str()));
@@ -2761,32 +2977,52 @@ bool AudacityProject::Save(bool overwrite /* = true */ ,
// Some of this is similar to code in ExportMultiple::ExportMultipleByTrack
// but that code is really tied into the dialogs.
+ // Copy the tracks because we're going to do some state changes before exporting.
+ Track* pSavedTrack;
+ Track* pTrack;
+ WaveTrack* pWaveTrack;
+ TrackListOfKindIterator iter(Track::Wave, mTracks);
+ unsigned int numWaveTracks = 0;
+ TrackList* pSavedTrackList = new TrackList();
+ for (pTrack = iter.First(); pTrack != NULL; pTrack = iter.Next())
+ {
+ numWaveTracks++;
+ pWaveTrack = (WaveTrack*)pTrack;
+ pSavedTrack = mTrackFactory->DuplicateWaveTrack(*pWaveTrack);
+ pSavedTrackList->Add(pSavedTrack);
+ }
+
+ if (numWaveTracks == 0)
+ {
+ // Nothing to save compressed => success. Delete the copies and go.
+ delete pSavedTrackList;
+ return true;
+ }
+
+ // Okay, now some bold state-faking to default values.
+ for (pTrack = iter.First(); pTrack != NULL; pTrack = iter.Next())
+ {
+ pWaveTrack = (WaveTrack*)pTrack;
+ pWaveTrack->SetSelected(false);
+ pWaveTrack->SetMute(false);
+ pWaveTrack->SetSolo(false);
+
+ pWaveTrack->SetGain(1.0);
+ pWaveTrack->SetPan(0.0);
+ }
+
wxString strDataDirPathName = strProjectPathName + wxT("_data");
if (!wxFileName::DirExists(strDataDirPathName) &&
!wxFileName::Mkdir(strDataDirPathName, 0777, wxPATH_MKDIR_FULL))
return false;
strDataDirPathName += wxFileName::GetPathSeparator();
- TrackListIterator iter;
- Track* pTrack; // mono or left
-
- // Remember which tracks were selected, and set them to unselected.
- TrackList wereSelectedWaveTrackList;
- for (pTrack = iter.First(mTracks); pTrack != NULL; pTrack = iter.Next())
- {
- if ((pTrack->GetKind() == Track::Wave) && pTrack->GetSelected())
- {
- wereSelectedWaveTrackList.Add(pTrack);
- pTrack->SetSelected(false);
- }
- }
-
// Export all WaveTracks to OGG.
bool bSuccess = true;
Exporter theExporter;
Track* pRightTrack;
wxFileName uniqueTrackFileName;
- for (pTrack = iter.First(mTracks); ((pTrack != NULL) && bSuccess); pTrack = iter.Next())
+ for (pTrack = iter.First(); ((pTrack != NULL) && bSuccess); pTrack = iter.Next())
{
if (pTrack->GetKind() == Track::Wave)
{
@@ -2812,11 +3048,23 @@ bool AudacityProject::Save(bool overwrite /* = true */ ,
}
}
- // Restore the selection states.
- for (pTrack = iter.First(&wereSelectedWaveTrackList); pTrack != NULL; pTrack = iter.Next())
- pTrack->SetSelected(false);
+ // Restore the saved track states and clean up.
+ TrackListIterator savedTrackIter(pSavedTrackList);
+ for (pTrack = iter.First(), pSavedTrack = savedTrackIter.First();
+ ((pTrack != NULL) && (pSavedTrack != NULL));
+ pTrack = iter.Next(), pSavedTrack = savedTrackIter.Next())
+ {
+ pWaveTrack = (WaveTrack*)pTrack;
+ pWaveTrack->SetSelected(pSavedTrack->GetSelected());
+ pWaveTrack->SetMute(pSavedTrack->GetMute());
+ pWaveTrack->SetSolo(pSavedTrack->GetSolo());
+
+ pWaveTrack->SetGain(((WaveTrack*)pSavedTrack)->GetGain());
+ pWaveTrack->SetPan(((WaveTrack*)pSavedTrack)->GetPan());
+ }
- //// Write the AUP file.
+ pSavedTrackList->Clear(true);
+ delete pSavedTrackList;
return bSuccess;
}
@@ -2838,7 +3086,7 @@ void AudacityProject::AddImportedTracks(wxString fileName,
}
mTracks->Add(newTracks[i]);
newTracks[i]->SetSelected(true);
- if (numTracks > 2 || (numTracks > 1 && !newTracks[i]->GetTeamed())) {
+ if (numTracks > 2 || (numTracks > 1 && !newTracks[i]->GetLink())) {
newTracks[i]->SetName(trackNameBase + wxString::Format(wxT(" %d" ), i + 1));
}
else {
@@ -2888,7 +3136,8 @@ void AudacityProject::AddImportedTracks(wxString fileName,
// HandleResize();
}
-void AudacityProject::Import(wxString fileName)
+// If pNewTrackList is passed in non-NULL, it gets filled with the pointers to new tracks.
+void AudacityProject::Import(wxString fileName, WaveTrackArray* pTrackArray /*= NULL*/)
{
Track **newTracks;
int numTracks;
@@ -2901,13 +3150,6 @@ void AudacityProject::Import(wxString fileName)
errorMessage);
if (!errorMessage.IsEmpty()) {
-// Old code, without the help button.
-#if 0
- wxMessageBox(errorMessage,
- _("Error importing"),
- wxOK | wxCENTRE, this);
-#endif
-
// Version that goes to internet...
// ShowErrorDialog(this, _("Error importing"),
// errorMessage, wxT("http://audacity.sourceforge.net/help/faq?s=files&i=wma-proprietary"));
@@ -2915,15 +3157,27 @@ void AudacityProject::Import(wxString fileName)
ShowErrorDialog(this, _("Error importing"),
errorMessage, wxT("innerlink:wma-proprietary"));
}
- if( numTracks<=0)
+ if (numTracks <= 0)
return;
+ wxGetApp().AddFileToHistory(fileName);
+
// for LOF ("list of files") files, do not import the file as if it
// were an audio file itself
if (fileName.AfterLast('.').IsSameAs(wxT("lof"), false)) {
return;
}
+ // Have to set up newTrackList before calling AddImportedTracks,
+ // because AddImportedTracks deletes newTracks.
+ if (pTrackArray) {
+ for (int i = 0; i < numTracks; i++) {
+ if (newTracks[i]->GetKind() == Track::Wave) {
+ pTrackArray->Add((WaveTrack *)newTracks[i]);
+ }
+ }
+ }
+
AddImportedTracks(fileName, newTracks, numTracks);
int mode = gPrefs->Read(wxT("/AudioFiles/NormalizeOnLoad"), 0L);
@@ -2931,7 +3185,8 @@ void AudacityProject::Import(wxString fileName)
//TODO: All we want is a SelectAll()
SelectNone();
SelectAllIfNone();
- OnEffect(ALL_EFFECTS | CONFIGURED_EFFECT, mNormalizeIndex ); // gNormalize);
+ OnEffect(ALL_EFFECTS | CONFIGURED_EFFECT,
+ EffectManager::Get().GetEffectByIdentifier(wxT("Normalize")));
}
GetDirManager()->FillBlockfilesCache();
@@ -2960,7 +3215,7 @@ bool AudacityProject::SaveAs(bool bWantSaveCompressed /*= false*/)
ShowWarningDialog(this, wxT("FirstProjectSave"),
_("You are saving an Audacity project file (.aup).\n\nSaving a project creates a file that only Audacity can open.\n\nTo save an audio file for other programs, use one of the \"File > Export\" commands.\n"));
- fName = FileSelector(_NoAcc("Save Project &As...") + wxT(":"),
+ fName = FileSelector(_("Save Project As..."),
path, fName, wxT(""),
_("Audacity projects (*.aup)|*.aup"),
wxFD_SAVE | wxFD_OVERWRITE_PROMPT | wxRESIZE_BORDER, this);
@@ -2981,12 +3236,9 @@ bool AudacityProject::SaveAs(bool bWantSaveCompressed /*= false*/)
bool success = Save(false, true, bWantSaveCompressed);
if (success) {
- mRecentFiles->AddFileToHistory(mFileName);
- gPrefs->SetPath(wxT("/RecentFiles"));
- mRecentFiles->Save(*gPrefs);
- gPrefs->SetPath(wxT(".."));
+ wxGetApp().AddFileToHistory(mFileName);
}
- if (!success || bWantSaveCompressed) // bWantSaveCompressed doesn't change current project, so always reset.
+ if (!success || bWantSaveCompressed) // bWantSaveCompressed doesn't actually change current project.
{
// Reset file name on error
mFileName = oldFileName;
@@ -3013,11 +3265,8 @@ void AudacityProject::InitialState()
mUndoManager.ClearStates();
- TrackList *l = new TrackList(mTracks);
-
- mUndoManager.PushState(l, mViewInfo.sel0, mViewInfo.sel1,
+ mUndoManager.PushState(mTracks, mViewInfo.sel0, mViewInfo.sel1,
_("Created new project"), wxT(""));
- delete l;
mUndoManager.StateSaved();
@@ -3027,16 +3276,20 @@ void AudacityProject::InitialState()
ModifyUndoMenus();
UpdateMenus();
+ #ifdef EXPERIMENTAL_LYRICS_WINDOW
+ this->UpdateLyrics();
+ #endif
+ #ifdef EXPERIMENTAL_MIXER_BOARD
+ this->UpdateMixerBoard();
+ #endif
}
void AudacityProject::PushState(wxString desc,
wxString shortDesc,
bool consolidate)
{
- TrackList *l = new TrackList(mTracks);
- mUndoManager.PushState(l, mViewInfo.sel0, mViewInfo.sel1,
+ mUndoManager.PushState(mTracks, mViewInfo.sel0, mViewInfo.sel1,
desc, shortDesc, consolidate);
- delete l;
mDirty = true;
@@ -3047,6 +3300,21 @@ void AudacityProject::PushState(wxString desc,
UpdateMenus();
+ // Some state pushes, like changing a track gain control (& probably others),
+ // should not repopulate Lyrics Window and MixerBoard.
+ // Others, such as deleting a label or adding a wave track, obviously do.
+ // Could categorize these state changes, but for now...
+ // It's crucial to not do that repopulating during playback.
+ //vvv These can be combined in the same conditional when both features are made non-experimental.
+ #ifdef EXPERIMENTAL_LYRICS_WINDOW
+ if (!gAudioIO->IsStreamActive(GetAudioIOToken()))
+ this->UpdateLyrics();
+ #endif
+ #ifdef EXPERIMENTAL_MIXER_BOARD
+ if (!gAudioIO->IsStreamActive(GetAudioIOToken()))
+ this->UpdateMixerBoard();
+ #endif
+
if (GetTracksFitVerticallyZoomed())
this->DoZoomFitV();
@@ -3055,13 +3323,10 @@ void AudacityProject::PushState(wxString desc,
void AudacityProject::ModifyState()
{
- TrackList *l = new TrackList(mTracks);
-
- mUndoManager.ModifyState(l, mViewInfo.sel0, mViewInfo.sel1);
-
- delete l;
+ mUndoManager.ModifyState(mTracks, mViewInfo.sel0, mViewInfo.sel1);
}
+// LL: Is there a memory leak here as "l" and "t" are not deleted???
void AudacityProject::PopState(TrackList * l)
{
mTracks->Clear(true);
@@ -3078,8 +3343,6 @@ void AudacityProject::PopState(TrackList * l)
copyTrack=t->Duplicate();
mTracks->Add(copyTrack);
-
-#ifdef EXPERIMENTAL_ONDEMAND
//add the track to OD if the manager exists. later we might do a more rigorous check...
if (copyTrack->GetKind() == Track::Wave)
{
@@ -3095,8 +3358,6 @@ void AudacityProject::PopState(TrackList * l)
computeTask->AddWaveTrack((WaveTrack*)copyTrack);
}
}
-#endif
-
t = iter.Next();
}
@@ -3107,6 +3368,12 @@ void AudacityProject::PopState(TrackList * l)
HandleResize();
UpdateMenus();
+ #ifdef EXPERIMENTAL_LYRICS_WINDOW
+ this->UpdateLyrics();
+ #endif
+ #ifdef EXPERIMENTAL_MIXER_BOARD
+ this->UpdateMixerBoard();
+ #endif
}
void AudacityProject::SetStateTo(unsigned int n)
@@ -3119,8 +3386,48 @@ void AudacityProject::SetStateTo(unsigned int n)
mTrackPanel->SetFocusedTrack(NULL);
mTrackPanel->Refresh(false);
ModifyUndoMenus();
+ #ifdef EXPERIMENTAL_LYRICS_WINDOW
+ this->UpdateLyrics();
+ #endif
+ #ifdef EXPERIMENTAL_MIXER_BOARD
+ this->UpdateMixerBoard();
+ #endif
}
+#ifdef EXPERIMENTAL_LYRICS_WINDOW
+ void AudacityProject::UpdateLyrics()
+ {
+ TrackListOfKindIterator iter(Track::Label, mTracks);
+ LabelTrack* pLabelTrack = (LabelTrack*)(iter.First()); // Lyrics come from only the first label track.
+ if (!pLabelTrack)
+ return;
+
+ if (!mLyricsWindow)
+ {
+ mLyricsWindow = new LyricsWindow(this);
+ mLyricsWindow->Show(false); // Don't show it. Need to update content regardless.
+ }
+
+ Lyrics* pLyricsPanel = mLyricsWindow->GetLyricsPanel();
+ pLyricsPanel->Clear();
+ for (int i = 0; i < pLabelTrack->GetNumLabels(); i++)
+ pLyricsPanel->Add(pLabelTrack->GetLabel(i)->t,
+ pLabelTrack->GetLabel(i)->title);
+ pLyricsPanel->Finish(pLabelTrack->GetEndTime());
+ pLyricsPanel->Update(0.0);
+ }
+#endif
+
+#ifdef EXPERIMENTAL_MIXER_BOARD
+ void AudacityProject::UpdateMixerBoard()
+ {
+ if (!mMixerBoard)
+ return;
+ mMixerBoard->UpdateTrackClusters();
+ mMixerBoard->UpdateMeters(gAudioIO->GetStreamTime());
+ }
+#endif
+
//
// Clipboard methods
//
@@ -3147,28 +3454,27 @@ void AudacityProject::DeleteAllProjectsDeleteLock()
void AudacityProject::ClearClipboard()
{
- TrackListIterator iter(msClipboard);
- Track *n = iter.First();
- while (n) {
- delete n;
- n = iter.Next();
- }
-
msClipLen = 0.0;
msClipProject = NULL;
- msClipboard->Clear();
+ if (msClipboard) {
+ msClipboard->Clear(true);
+ }
}
void AudacityProject::Clear()
{
- TrackListIterator iter(mTracks);
+ TrackAndGroupIterator iter(mTracks);
Track *n = iter.First();
while (n) {
- if (n->GetSelected())
+ if (n->GetSelected()) {
n->Clear(mViewInfo.sel0, mViewInfo.sel1);
- n = iter.Next();
+ // Wave and Label tracks have group behaviour
+ if (IsSticky() && (n->GetKind() == Track::Wave || n->GetKind() == Track::Label)) n = iter.NextGroup();
+ else n = iter.Next();
+ }
+ else n = iter.Next();
}
double seconds = mViewInfo.sel1 - mViewInfo.sel0;
@@ -3538,7 +3844,6 @@ void AudacityProject::EditClipboardByLabel( WaveTrack::EditDestFunction action )
if( dest )
{
dest->SetChannel( wt->GetChannel() );
- dest->SetTeamed( wt->GetTeamed() ); // do first
dest->SetLinked( wt->GetLinked() );
dest->SetName( wt->GetName() );
if( !merged )
@@ -3590,6 +3895,13 @@ void AudacityProject::TP_DisplaySelection()
}
// TrackPanel callback method
+wxSize AudacityProject::TP_GetTracksUsableArea()
+{
+ wxSize s;
+ mTrackPanel->GetTracksUsableArea(&s.x, &s.y);
+ return s;
+}
+
int AudacityProject::TP_GetCurrentTool()
{
//ControlToolBar might be NULL--especially on shutdown.
@@ -3728,27 +4040,34 @@ void AudacityProject::AutoSave()
XMLFileWriter saveFile;
- saveFile.Open(fn + wxT(".tmp"), wxT("wb"));
- if (!saveFile.IsOpened())
+ try
{
- wxMessageBox(_("Couldn't write to file: ") + fn + wxT(".tmp"),
- _("Error writing autosave file"),
- wxICON_STOP, this);
- return;
- }
+ saveFile.Open(fn + wxT(".tmp"), wxT("wb"));
+ {
+ VarSetter<bool> setter(&mAutoSaving, true, false);
+ WriteXMLHeader(saveFile);
+ WriteXML(saveFile);
+ }
+
+ // JKC Calling XMLFileWriter::Close will close the <project> scope.
+ // We certainly don't want to do that, if we're doing recordingrecovery,
+ // because the recordingrecovery tags need to be inside <project></project>.
+ // So instead we do not call Close() but CloseWithoutEndingTags().
+ saveFile.CloseWithoutEndingTags();
+ }
+ catch (XMLFileWriterException* pException)
{
- VarSetter<bool> setter(&mAutoSaving, true, false);
- WriteXMLHeader(saveFile);
- WriteXML(saveFile);
+ wxMessageBox(wxString::Format(
+ _("Couldn't write to file \"%s\": %s"),
+ (fn + wxT(".tmp")).c_str(), pException->GetMessage().c_str()),
+ _("Error writing autosave file"), wxICON_ERROR, this);
+
+ delete pException;
+
+ return;
}
- // JKC Calling XMLFileWriter::Close will close the <project> scope.
- // We certainly don't want to do that, if we're doing recordingrecovery,
- // because the recordingrecovery tags need to be inside <project></project>
- // So instead we close the file directly.
- saveFile.wxFFile::Close();
-
// Now that we have a new auto-save file, delete the old one
DeleteCurrentAutoSaveFile();
@@ -3850,18 +4169,7 @@ bool AudacityProject::GetSnapTo()
bool AudacityProject::IsSticky()
{
- bool linked=false;
- TrackListIterator iter(mTracks);
- Track *t=iter.First();
- while(t){
- if (t->GetKind()==Track::Label){
- linked=true;
- break;
- }
- t=iter.Next();
- }
-
- return (mStickyFlag && linked);
+ return (GetStickyFlag() && (mLastFlags & LabelTracksExistFlag));
}
// Indentation settings for Vim and Emacs and unique identifier for Arch, a
diff --git a/src/Project.h b/src/Project.h
index 1c62df2..3190694 100644
--- a/src/Project.h
+++ b/src/Project.h
@@ -29,6 +29,7 @@
#include "effects/EffectManager.h"
#include "xml/XMLTagHandler.h"
#include "toolbars/SelectionBar.h"
+#include "FreqWindow.h"
#include <wx/defs.h>
#include <wx/event.h>
@@ -39,8 +40,6 @@
#include <wx/intl.h>
#include <wx/dcclient.h>
-class wxFileHistory;
-
const int AudacityProjectTimerID = 5200;
class wxWindow;
@@ -64,6 +63,13 @@ class TranscriptionToolBar;
class TrackList;
class Tags;
class HistoryWindow;
+#ifdef EXPERIMENTAL_LYRICS_WINDOW
+ class LyricsWindow;
+#endif
+#ifdef EXPERIMENTAL_MIXER_BOARD
+ class MixerBoard;
+ class MixerBoardFrame;
+#endif
class Importer;
class AdornedRulerPanel;
@@ -131,6 +137,9 @@ class AUDACITY_DLL_API AudacityProject: public wxFrame,
double GetSel0() { return mViewInfo.sel0; }
double GetSel1() { return mViewInfo.sel1; }
+ Track *GetFirstVisible();
+ void UpdateFirstVisible();
+
void GetPlayRegion(double* playRegionStart, double *playRegionEnd);
bool IsPlayRegionLocked() { return mLockPlayRegion; }
@@ -154,9 +163,12 @@ class AUDACITY_DLL_API AudacityProject: public wxFrame,
static wxArrayString ShowOpenDialog(wxString extra = wxEmptyString);
static void OpenFiles(AudacityProject *proj);
- void OpenFile(wxString fileName);
+ void OpenFile(wxString fileName, bool addtohistory = true);
bool WarnOfLegacyFile( );
- void Import(wxString fileName);
+
+ // If pNewTrackList is passed in non-NULL, it gets filled with the pointers to new tracks.
+ void Import(wxString fileName, WaveTrackArray *pTrackArray = NULL);
+
void AddImportedTracks(wxString fileName,
Track **newTracks, int numTracks);
bool Save(bool overwrite = true, bool fromSaveAs = false, bool bWantSaveCompressed = false);
@@ -171,7 +183,6 @@ class AUDACITY_DLL_API AudacityProject: public wxFrame,
void SetProjectTitle();
bool GetIsEmpty() { return mTracks->IsEmpty(); }
- wxFileHistory *GetRecentFiles() { return mRecentFiles; }
bool GetTracksFitVerticallyZoomed() { return mTracksFitVerticallyZoomed; } //lda
void SetTracksFitVerticallyZoomed(bool flag) { mTracksFitVerticallyZoomed = flag; } //lda
@@ -199,7 +210,7 @@ class AUDACITY_DLL_API AudacityProject: public wxFrame,
void OnMenuEvent(wxMenuEvent & event);
void OnMenu(wxCommandEvent & event);
- void OnUpdateMenus(wxUpdateUIEvent & event);
+ void OnUpdateUI(wxUpdateUIEvent & event);
void OnActivate(wxActivateEvent & event);
void OnMouseEvent(wxMouseEvent & event);
@@ -214,6 +225,7 @@ class AUDACITY_DLL_API AudacityProject: public wxFrame,
void OnReleaseKeyboard(wxCommandEvent & event);
void OnODTaskUpdate(wxCommandEvent & event);
void OnODTaskComplete(wxCommandEvent & event);
+ void OnTrackListUpdated(wxCommandEvent & event);
bool HandleKeyDown(wxKeyEvent & event);
bool HandleChar(wxKeyEvent & event);
bool HandleKeyUp(wxKeyEvent & event);
@@ -240,7 +252,8 @@ class AUDACITY_DLL_API AudacityProject: public wxFrame,
void EditByLabel( WaveTrack::EditFunction action );
void EditClipboardByLabel( WaveTrack::EditDestFunction action );
bool IsSticky();
- bool GetStickyFlag() { return mStickyFlag; }
+ bool GetStickyFlag() { return mStickyFlag; };
+ void SetStickyFlag(bool flag) { mStickyFlag = flag; };
// Snap To
@@ -260,6 +273,7 @@ class AUDACITY_DLL_API AudacityProject: public wxFrame,
// TrackPanel callback methods
+ virtual wxSize TP_GetTracksUsableArea();
virtual void TP_DisplayStatusMessage(wxString msg);
virtual void TP_DisplaySelection();
virtual int TP_GetCurrentTool();
@@ -287,6 +301,13 @@ class AUDACITY_DLL_API AudacityProject: public wxFrame,
ToolsToolBar *GetToolsToolBar();
TranscriptionToolBar *GetTranscriptionToolBar();
+ #ifdef EXPERIMENTAL_LYRICS_WINDOW
+ LyricsWindow* GetLyricsWindow() { return mLyricsWindow; };
+ #endif
+ #ifdef EXPERIMENTAL_MIXER_BOARD
+ MixerBoard* GetMixerBoard() { return mMixerBoard; };
+ #endif
+
public:
// SelectionBar callback methods
@@ -326,17 +347,25 @@ class AUDACITY_DLL_API AudacityProject: public wxFrame,
static void AllProjectsDeleteLock();
static void AllProjectsDeleteUnlock();
- private:
+ void PushState(wxString desc, wxString shortDesc,
+ bool consolidate = false);
+ FreqWindow *mFreqWindow;
- // Private Methods
+ private:
void ClearClipboard();
void InitialState();
- void PushState(wxString desc, wxString shortDesc,
- bool consolidate = false);
void ModifyState();
void PopState(TrackList * l);
+
+ #ifdef EXPERIMENTAL_LYRICS_WINDOW
+ void UpdateLyrics();
+ #endif
+ #ifdef EXPERIMENTAL_MIXER_BOARD
+ void UpdateMixerBoard();
+ #endif
+
void GetRegionsByLabel( Regions ®ions );
void AutoSaveIfNeeded();
@@ -347,35 +376,34 @@ class AUDACITY_DLL_API AudacityProject: public wxFrame,
static bool GetCacheBlockFiles();
// The project's name and file info
-
wxString mFileName;
DirManager *mDirManager; // MM: DirManager now created dynamically
+
double mRate;
sampleFormat mDefaultFormat;
- // Tags (artist name, song properties, MP3 ID3 info, etc.)
+ // Recent files
+ wxMenu *mRecentFilesMenu;
+ // Tags (artist name, song properties, MP3 ID3 info, etc.)
Tags *mTags;
// List of tracks and display info
-
TrackList *mTracks;
-// ViewInfo mViewInfo;
bool mSnapTo;
TrackList *mLastSavedTracks;
// Clipboard (static because it is shared by all projects)
-
static TrackList *msClipboard;
static AudacityProject *msClipProject;
static double msClipLen;
//shared by all projects
static ODLock *msAllProjectDeleteMutex;
- // History/Undo manager
+ // History/Undo manager
UndoManager mUndoManager;
bool mDirty;
@@ -384,9 +412,10 @@ class AUDACITY_DLL_API AudacityProject: public wxFrame,
CommandManager mCommandManager;
wxUint32 mLastFlags;
- int mLastToolBarCheckSum; //This finds the state of the toolbars:
- //Base three for each toolbar
- //0: unloaded, 1: docked, 2: floating
+
+ // see AudacityProject::OnUpdateUI() for explanation of next two
+ bool mInIdle;
+ wxUint32 mTextClipFlag;
// Window elements
@@ -404,7 +433,16 @@ class AUDACITY_DLL_API AudacityProject: public wxFrame,
bool mAutoScrolling;
bool mActive;
bool mIconized;
+
HistoryWindow *mHistoryWindow;
+ #ifdef EXPERIMENTAL_LYRICS_WINDOW
+ LyricsWindow* mLyricsWindow;
+ #endif
+ #ifdef EXPERIMENTAL_MIXER_BOARD
+ MixerBoard* mMixerBoard;
+ MixerBoardFrame* mMixerBoardFrame;
+ #endif
+
public:
ToolManager *mToolManager;
@@ -426,11 +464,11 @@ class AUDACITY_DLL_API AudacityProject: public wxFrame,
bool mLockPlayRegion;
+ // See AudacityProject::OnActivate() for an explanation of this.
+ wxWindow *mLastFocusedWindow;
+
wxWindow *mKeyboardCaptured;
- // Recent File and Project History
- wxFileHistory *mRecentFiles;
-
ImportXMLTagHandler* mImportXMLTagHandler;
// Last auto-save file name and path (empty if none)
@@ -458,11 +496,15 @@ class AUDACITY_DLL_API AudacityProject: public wxFrame,
bool mWantSaveCompressed;
wxArrayString mStrOtherNamesArray; // used to make sure compressed file names are unique
+ // Last effect applied to this project
+ Effect *mLastEffect;
+ int mLastEffectType;
+ wxString mLastEffectDesc;
private:
// The screenshot class needs to access internals
- friend class ScreenFrame;
+ friend class ScreenshotCommand;
public:
DECLARE_EVENT_TABLE()
diff --git a/src/Resample.cpp b/src/Resample.cpp
index 85fc041..50dffa9 100644
--- a/src/Resample.cpp
+++ b/src/Resample.cpp
@@ -28,6 +28,26 @@
#include <wx/intl.h>
+int Resample::GetFastMethod()
+{
+ return gPrefs->Read(GetFastMethodKey(), GetFastMethodDefault());
+}
+
+int Resample::GetBestMethod()
+{
+ return gPrefs->Read(GetBestMethodKey(), GetBestMethodDefault());
+}
+
+void Resample::SetFastMethod(int index)
+{
+ gPrefs->Write(GetFastMethodKey(), (long)index);
+}
+
+void Resample::SetBestMethod(int index)
+{
+ gPrefs->Write(GetBestMethodKey(), (long)index);
+}
+
#if USE_LIBRESAMPLE
#include "libresample.h"
@@ -51,32 +71,28 @@ wxString Resample::GetMethodName(int index)
{
if (index == 1)
return _("High-quality Sinc Interpolation");
- else
- return _("Fast Sinc Interpolation");
+
+ return _("Fast Sinc Interpolation");
}
-int Resample::GetFastMethod()
+const wxString Resample::GetFastMethodKey()
{
- return gPrefs->Read(wxT("/Quality/LibresampleSampleRateConverter"),
- (long)0);
+ return wxT("/Quality/LibresampleSampleRateConverter");
}
-int Resample::GetBestMethod()
+const wxString Resample::GetBestMethodKey()
{
- return gPrefs->Read(wxT("/Quality/LibresampleHQSampleRateConverter"),
- (long)1);
+ return wxT("/Quality/LibresampleHQSampleRateConverter");
}
-void Resample::SetFastMethod(int index)
+int Resample::GetFastMethodDefault()
{
- gPrefs->Write(wxT("/Quality/LibresampleSampleRateConverter"),
- (long)index);
+ return 0;
}
-void Resample::SetBestMethod(int index)
+int Resample::GetBestMethodDefault()
{
- gPrefs->Write(wxT("/Quality/LibresampleHQSampleRateConverter"),
- (long)index);
+ return 1;
}
Resample::Resample(bool useBestMethod, double minFactor, double maxFactor)
@@ -140,28 +156,24 @@ wxString Resample::GetMethodName(int index)
return wxString(wxString::FromAscii(src_get_name(index)));
}
-int Resample::GetFastMethod()
+const wxString Resample::GetFastMethodKey()
{
- return gPrefs->Read(wxT("/Quality/SampleRateConverter"),
- (long)SRC_SINC_FASTEST);
+ return wxT("/Quality/SampleRateConverter");
}
-int Resample::GetBestMethod()
+const wxString Resample::GetBestMethodKey()
{
- return gPrefs->Read(wxT("/Quality/HQSampleRateConverter"),
- (long)SRC_SINC_FASTEST);
+ return wxT("/Quality/HQSampleRateConverter");
}
-void Resample::SetFastMethod(int index)
+int Resample::GetFastMethodDefault()
{
- gPrefs->Write(wxT("/Quality/SampleRateConverter"),
- (long)index);
+ return SRC_SINC_FASTEST;
}
-void Resample::SetBestMethod(int index)
+int Resample::GetBestMethodDefault()
{
- gPrefs->Write(wxT("/Quality/HQSampleRateConverter"),
- (long)index);
+ return SRC_SINC_BEST_QUALITY;
}
Resample::Resample(bool useBestMethod, double minFactor, double maxFactor)
@@ -250,22 +262,24 @@ wxString Resample::GetMethodName(int index)
return _("Resampling disabled.");
}
-int Resample::GetFastMethod()
+const wxString Resample::GetFastMethodKey()
{
- return 0;
+ return wxT("/Quality/DisabledConverter");
}
-int Resample::GetBestMethod()
+const wxString Resample::GetBestMethodKey()
{
- return 0;
+ return wxT("/Quality/DisabledConverter");
}
-void Resample::SetFastMethod(int)
+int Resample::GetFastMethodDefault()
{
+ return 0;
}
-void Resample::SetBestMethod(int)
+int Resample::GetBestMethodDefault()
{
+ return 0;
}
Resample::Resample(bool, double, double)
diff --git a/src/Resample.h b/src/Resample.h
index 215bef9..ac2bd91 100644
--- a/src/Resample.h
+++ b/src/Resample.h
@@ -56,6 +56,11 @@ class Resample
static void SetFastMethod(int index);
static void SetBestMethod(int index);
+ static const wxString GetFastMethodKey();
+ static const wxString GetBestMethodKey();
+ static int GetFastMethodDefault();
+ static int GetBestMethodDefault();
+
/// Constructor.
/// The first parameter lets you select either the best method or
/// the fast method - the particular method used was set by
diff --git a/src/SampleFormat.cpp b/src/SampleFormat.cpp
index 11cb23f..886f9c5 100644
--- a/src/SampleFormat.cpp
+++ b/src/SampleFormat.cpp
@@ -62,13 +62,13 @@ const wxChar *GetSampleFormatStr(sampleFormat format)
{
switch(format) {
case int16Sample:
- /* i18n-hint: Audio data bit depth (precison): 16-bit integers */
+ /* i18n-hint: Audio data bit depth (precision): 16-bit integers */
return _("16-bit PCM");
case int24Sample:
- /* i18n-hint: Audio data bit depth (precison): 24-bit integers */
+ /* i18n-hint: Audio data bit depth (precision): 24-bit integers */
return _("24-bit PCM");
case floatSample:
- /* i18n-hint: Audio data bit depth (precison): 32-bit floating point */
+ /* i18n-hint: Audio data bit depth (precision): 32-bit floating point */
return _("32-bit float");
}
return wxT("Unknown format"); // compiler food
diff --git a/src/Screenshot.cpp b/src/Screenshot.cpp
index 7d299e5..4463234 100644
--- a/src/Screenshot.cpp
+++ b/src/Screenshot.cpp
@@ -9,162 +9,151 @@
*******************************************************************/
#include "Screenshot.h"
-
+#include "commands/ScreenshotCommand.h"
#include <wx/defs.h>
-#include <wx/bitmap.h>
+#include <wx/event.h>
+#include <wx/frame.h>
+
+#include "ShuttleGui.h"
#include <wx/button.h>
#include <wx/checkbox.h>
-#include <wx/dcmemory.h>
-#include <wx/dcscreen.h>
#include <wx/dirdlg.h>
-#include <wx/frame.h>
-#include <wx/event.h>
#include <wx/image.h>
#include <wx/intl.h>
#include <wx/panel.h>
-#include <wx/settings.h>
#include <wx/statusbr.h>
#include <wx/textctrl.h>
#include <wx/timer.h>
#include <wx/tglbtn.h>
#include <wx/window.h>
+#include "AudacityApp.h"
#include "Project.h"
#include "Prefs.h"
-#include "ShuttleGui.h"
-#include "TrackPanel.h"
#include "toolbars/ToolManager.h"
-#include "toolbars/ToolBar.h"
-#include "toolbars/ControlToolBar.h"
-#include "toolbars/DeviceToolBar.h"
-#include "toolbars/EditToolBar.h"
-#include "toolbars/MeterToolBar.h"
-#include "toolbars/MixerToolBar.h"
-#include "toolbars/SelectionBar.h"
-#include "toolbars/ToolsToolBar.h"
-#include "toolbars/TranscriptionToolBar.h"
-#include "widgets/Ruler.h"
-
-class StaticColorPanel : public wxWindow {
- public:
- StaticColorPanel(wxWindow* parent) :
- wxWindow(parent, -1)
- {
- }
- void SetColour(wxColour c) {
- mColour = c;
- }
-
- void OnPaint(wxPaintEvent& evt) {
- int width, height;
- GetClientSize(&width, &height);
- wxPaintDC dc(this);
- dc.SetBrush(wxBrush(mColour, wxSOLID));
- dc.SetPen(*wxTRANSPARENT_PEN);
- dc.DrawRectangle(0, 0, width, height);
- }
- DECLARE_EVENT_TABLE();
+////////////////////////////////////////////////////////////////////////////////
- wxColour mColour;
-};
-
-BEGIN_EVENT_TABLE(StaticColorPanel, wxWindow)
- EVT_PAINT(StaticColorPanel::OnPaint)
-END_EVENT_TABLE();
-
-class ScreenFrame : public wxFrame {
+class ScreenFrame:public wxFrame
+{
public:
// constructors and destructors
ScreenFrame(wxWindow *parent, wxWindowID id);
virtual ~ScreenFrame();
- virtual bool ProcessEvent(wxEvent& event);
+ virtual bool ProcessEvent(wxEvent & e);
private:
- wxTopLevelWindow *GetFrontWindow();
-
- void Capture(wxString basename,
- wxWindow *window,
- int x, int y, int width, int height,
- bool bg = false);
- void CaptureToolbar(int type, wxString name);
-
void Populate();
void PopulateOrExchange(ShuttleGui &S);
- void OnCloseWindow(wxCloseEvent& evt);
-
- void OnMainWindowSmall(wxCommandEvent& evt);
- void OnMainWindowLarge(wxCommandEvent& evt);
- void OnToggleBackgroundBlue(wxCommandEvent& evt);
- void OnToggleBackgroundWhite(wxCommandEvent& evt);
- void OnCaptureWindowContents(wxCommandEvent& evt);
- void OnCaptureWindowPlus(wxCommandEvent& evt);
- void OnCaptureFullScreen(wxCommandEvent& evt);
-
- void OnCaptureToolbars(wxCommandEvent& evt);
- void OnCaptureSelectionBar(wxCommandEvent& evt);
- void OnCaptureTools(wxCommandEvent& evt);
- void OnCaptureControl(wxCommandEvent& evt);
- void OnCaptureMixer(wxCommandEvent& evt);
- void OnCaptureMeter(wxCommandEvent& evt);
- void OnCaptureEdit(wxCommandEvent& evt);
- void OnCaptureDevice(wxCommandEvent& evt);
- void OnCaptureTranscription(wxCommandEvent& evt);
-
- void OnOneSec(wxCommandEvent& evt);
- void OnTenSec(wxCommandEvent& evt);
- void OnOneMin(wxCommandEvent& evt);
- void OnFiveMin(wxCommandEvent& evt);
- void OnOneHour(wxCommandEvent& evt);
-
- void OnShortTracks(wxCommandEvent& evt);
- void OnMedTracks(wxCommandEvent& evt);
- void OnTallTracks(wxCommandEvent& evt);
-
- void OnCaptureTrackPanel(wxCommandEvent& evt);
- void OnCaptureRuler(wxCommandEvent& evt);
- void OnCaptureTracks(wxCommandEvent& evt);
- void OnCaptureFirstTrack(wxCommandEvent& evt);
- void OnCaptureSecondTrack(wxCommandEvent& evt);
-
- void OnDirChoose(wxCommandEvent& evt);
+ void OnCloseWindow(wxCloseEvent & e);
+ void OnUIUpdate(wxUpdateUIEvent & e);
+ void OnDirChoose(wxCommandEvent & e);
+
+ void SizeMainWindow(int w, int h);
+ void OnMainWindowSmall(wxCommandEvent & e);
+ void OnMainWindowLarge(wxCommandEvent & e);
+ void OnToggleBackgroundBlue(wxCommandEvent & e);
+ void OnToggleBackgroundWhite(wxCommandEvent & e);
+
+ void DoCapture(wxString captureMode);
+ void OnCaptureWindowContents(wxCommandEvent & e);
+ void OnCaptureFullWindow(wxCommandEvent & e);
+ void OnCaptureWindowPlus(wxCommandEvent & e);
+ void OnCaptureFullScreen(wxCommandEvent & e);
+ void OnCaptureToolbars(wxCommandEvent & e);
+ void OnCaptureSelectionBar(wxCommandEvent & e);
+ void OnCaptureTools(wxCommandEvent & e);
+ void OnCaptureControl(wxCommandEvent & e);
+ void OnCaptureMixer(wxCommandEvent & e);
+ void OnCaptureMeter(wxCommandEvent & e);
+ void OnCaptureEdit(wxCommandEvent & e);
+ void OnCaptureDevice(wxCommandEvent & e);
+ void OnCaptureTranscription(wxCommandEvent & e);
+
+ void TimeZoom(double seconds);
+ void OnOneSec(wxCommandEvent & e);
+ void OnTenSec(wxCommandEvent & e);
+ void OnOneMin(wxCommandEvent & e);
+ void OnFiveMin(wxCommandEvent & e);
+ void OnOneHour(wxCommandEvent & e);
+
+ void SizeTracks(int h);
+ void OnShortTracks(wxCommandEvent & e);
+ void OnMedTracks(wxCommandEvent & e);
+ void OnTallTracks(wxCommandEvent & e);
+
+ void OnCaptureTrackPanel(wxCommandEvent & e);
+ void OnCaptureRuler(wxCommandEvent & e);
+ void OnCaptureTracks(wxCommandEvent & e);
+ void OnCaptureFirstTrack(wxCommandEvent & e);
+ void OnCaptureSecondTrack(wxCommandEvent & e);
+
+ ScreenshotCommand *CreateCommand();
wxCheckBox *mDelayCheckBox;
wxTextCtrl *mDirectoryTextBox;
wxToggleButton *mBlue;
wxToggleButton *mWhite;
wxStatusBar *mStatus;
- bool mBackground;
- wxColour mBackColor;
+
+ ScreenshotCommand *mCommand;
+ CommandExecutionContext mContext;
DECLARE_EVENT_TABLE()
};
static ScreenFrame *mFrame = NULL;
-void OpenScreenshotTools() {
+////////////////////////////////////////////////////////////////////////////////
+void OpenScreenshotTools()
+{
if (!mFrame) {
mFrame = new ScreenFrame(NULL, -1);
}
mFrame->Show();
mFrame->Raise();
- wxYield();
- wxMilliSleep(200);
- wxYield();
}
-void CloseScreenshotTools() {
-
+void CloseScreenshotTools()
+{
if (mFrame) {
mFrame->Destroy();
mFrame = NULL;
}
}
-enum {
+////////////////////////////////////////////////////////////////////////////////
+
+class ScreenFrameTimer:public wxTimer
+{
+ public:
+ ScreenFrameTimer(ScreenFrame *frame,
+ wxEvent & e)
+ {
+ screenFrame = frame;
+ evt = e.Clone();
+ }
+
+ virtual void Notify()
+ {
+ evt->SetEventObject(NULL);
+ screenFrame->ProcessEvent(*evt);
+ delete evt;
+ delete this;
+ }
+
+ private:
+ ScreenFrame *screenFrame;
+ wxEvent *evt;
+};
+
+////////////////////////////////////////////////////////////////////////////////
+
+enum
+{
IdMainWindowSmall = 19200,
IdMainWindowLarge,
@@ -206,224 +195,93 @@ enum {
IdAllDelayedEvents,
IdCaptureWindowContents,
+ IdCaptureFullWindow,
IdCaptureWindowPlus,
IdCaptureFullScreen,
IdLastDelayedEvent,
};
-ScreenFrame::ScreenFrame(wxWindow * parent, wxWindowID id):
- wxFrame(parent, id, wxT("Screen Capture Frame"),
- wxDefaultPosition, wxDefaultSize,
-#if !defined(__WXMSW__)
- wxFRAME_TOOL_WINDOW|
-#endif
- wxSYSTEM_MENU|wxCAPTION|wxCLOSE_BOX)
-{
- mDelayCheckBox = NULL;
- mDirectoryTextBox = NULL;
- mBackground = false;
+BEGIN_EVENT_TABLE(ScreenFrame, wxFrame)
+ EVT_CLOSE(ScreenFrame::OnCloseWindow)
- mStatus = CreateStatusBar();
+ EVT_UPDATE_UI(IdCaptureFullScreen, ScreenFrame::OnUIUpdate)
- // Reset the toolbars to a known state
- GetActiveProject()->mToolManager->Reset();
- wxYield();
- wxMilliSleep(200);
- wxYield();
+ EVT_BUTTON(IdMainWindowSmall, ScreenFrame::OnMainWindowSmall)
+ EVT_BUTTON(IdMainWindowLarge, ScreenFrame::OnMainWindowLarge)
+ EVT_TOGGLEBUTTON(IdToggleBackgroundBlue, ScreenFrame::OnToggleBackgroundBlue)
+ EVT_TOGGLEBUTTON(IdToggleBackgroundWhite, ScreenFrame::OnToggleBackgroundWhite)
+ EVT_BUTTON(IdCaptureWindowContents, ScreenFrame::OnCaptureWindowContents)
+ EVT_BUTTON(IdCaptureFullWindow, ScreenFrame::OnCaptureFullWindow)
+ EVT_BUTTON(IdCaptureWindowPlus, ScreenFrame::OnCaptureWindowPlus)
+ EVT_BUTTON(IdCaptureFullScreen, ScreenFrame::OnCaptureFullScreen)
- Populate();
-}
+ EVT_BUTTON(IdCaptureToolbars, ScreenFrame::OnCaptureToolbars)
+ EVT_BUTTON(IdCaptureSelectionBar, ScreenFrame::OnCaptureSelectionBar)
+ EVT_BUTTON(IdCaptureTools, ScreenFrame::OnCaptureTools)
+ EVT_BUTTON(IdCaptureControl, ScreenFrame::OnCaptureControl)
+ EVT_BUTTON(IdCaptureMixer, ScreenFrame::OnCaptureMixer)
+ EVT_BUTTON(IdCaptureMeter, ScreenFrame::OnCaptureMeter)
+ EVT_BUTTON(IdCaptureEdit, ScreenFrame::OnCaptureEdit)
+ EVT_BUTTON(IdCaptureDevice, ScreenFrame::OnCaptureDevice)
+ EVT_BUTTON(IdCaptureTranscription, ScreenFrame::OnCaptureTranscription)
-ScreenFrame::~ScreenFrame()
-{
-}
+ EVT_BUTTON(IdOneSec, ScreenFrame::OnOneSec)
+ EVT_BUTTON(IdTenSec, ScreenFrame::OnTenSec)
+ EVT_BUTTON(IdOneMin, ScreenFrame::OnOneMin)
+ EVT_BUTTON(IdFiveMin, ScreenFrame::OnFiveMin)
+ EVT_BUTTON(IdOneHour, ScreenFrame::OnOneHour)
-class ScreenFrameTimer : public wxTimer {
-public:
- ScreenFrameTimer(ScreenFrame *screenFrame,
- wxEvent& evt) {
- this->screenFrame = screenFrame;
- this->evt = evt.Clone();
- }
+ EVT_BUTTON(IdShortTracks, ScreenFrame::OnShortTracks)
+ EVT_BUTTON(IdMedTracks, ScreenFrame::OnMedTracks)
+ EVT_BUTTON(IdTallTracks, ScreenFrame::OnTallTracks)
- virtual void Notify() {
- evt->SetEventObject(NULL);
- screenFrame->ProcessEvent(*evt);
- delete evt;
- delete this;
- }
+ EVT_BUTTON(IdCaptureTrackPanel, ScreenFrame::OnCaptureTrackPanel)
+ EVT_BUTTON(IdCaptureRuler, ScreenFrame::OnCaptureRuler)
+ EVT_BUTTON(IdCaptureTracks, ScreenFrame::OnCaptureTracks)
+ EVT_BUTTON(IdCaptureFirstTrack, ScreenFrame::OnCaptureFirstTrack)
+ EVT_BUTTON(IdCaptureSecondTrack, ScreenFrame::OnCaptureSecondTrack)
- ScreenFrame *screenFrame;
- wxEvent *evt;
-};
+ EVT_BUTTON(IdDirChoose, ScreenFrame::OnDirChoose)
+END_EVENT_TABLE();
-bool ScreenFrame::ProcessEvent(wxEvent& event) {
- int id = event.GetId();
- if (mDelayCheckBox &&
- mDelayCheckBox->GetValue() &&
- event.IsCommandEvent() &&
- event.GetEventType() == wxEVT_COMMAND_BUTTON_CLICKED &&
- id >= IdAllDelayedEvents && id <= IdLastDelayedEvent &&
- event.GetEventObject() != NULL) {
- ScreenFrameTimer *timer = new ScreenFrameTimer(this, event);
- timer->Start(5000, true);
- return true;
- }
- else {
- if (event.IsCommandEvent() &&
- event.GetEventObject() == NULL) {
- event.SetEventObject(this);
- }
- return wxFrame::ProcessEvent(event);
- }
+// Must not be called before CreateStatusBar!
+ScreenshotCommand *ScreenFrame::CreateCommand()
+{
+ wxASSERT(mStatus != NULL);
+ CommandOutputTarget *output =
+ new CommandOutputTarget(new NullProgressTarget(),
+ new StatusBarTarget(*mStatus),
+ new MessageBoxTarget());
+ return new ScreenshotCommand(output, this);
}
-wxTopLevelWindow *ScreenFrame::GetFrontWindow() {
- wxWindow *front = NULL;
- wxWindow *proj = wxGetTopLevelParent(GetActiveProject());
-
- // This is kind of an odd hack. There's no method to enumerate all
- // possible windows, so we search the whole screen for any windows
- // that are not this one and not the frontmost Audacity project and
- // if we find anything, we assume that's the dialog the user wants
- // to capture.
-
- int width, height, x, y;
- wxDisplaySize(&width, &height);
- for(x = 0; x < width; x += 50) {
- for(y = 0; y < height; y += 50) {
- wxWindow *win = wxFindWindowAtPoint(wxPoint(x, y));
- if (win) {
- win = wxGetTopLevelParent(win);
- if (win != this && win != proj) {
- front = win;
- break;
- }
- }
- }
- }
-
- if (!front || !front->IsTopLevel()) {
- return (wxTopLevelWindow *)proj;
- }
- return (wxTopLevelWindow *)front;
-}
-
-void ScreenFrame::Capture(wxString basename,
- wxWindow *window,
- int x, int y, int width, int height,
- bool bg)
-{
- wxFileName prefixPath;
- prefixPath.AssignDir(mDirectoryTextBox->GetValue());
- wxString prefix = prefixPath.GetPath
- (wxPATH_GET_VOLUME|wxPATH_GET_SEPARATOR);
-
- wxString filename;
- int i = 0;
- do {
- filename.Printf(wxT("%s%s%03d.png"),
- prefix.c_str(), basename.c_str(), i);
- i++;
- } while (::wxFileExists(filename));
-
- wxFrame *frame = NULL;
- StaticColorPanel *panel = NULL;
- wxWindow *p = window->GetParent();
-
- if (p) {
- panel = new StaticColorPanel(p);
- panel->SetSize(x, y, width, height);
- panel->Hide();
- if (bg && mBackground) {
- panel->Show();
- }
- }
- else {
- frame = new wxFrame(NULL,
- wxID_ANY,
- wxT(""),
- wxDefaultPosition,
- wxDefaultSize,
- wxNO_BORDER|wxFRAME_NO_TASKBAR|wxFRAME_TOOL_WINDOW);
- panel = new StaticColorPanel(frame);
- panel->SetSize(x, y, width, height);
-
- frame->Move(x < 0 ? 0 : x, y < 0 ? 0 : y);
- frame->SetClientSize(width, height);
- frame->Hide();
- if (bg && mBackground) {
- frame->Show();
- }
- }
- panel->SetColour(mBackColor);
-
- window->Raise();
- Hide();
- wxYield();
- wxMilliSleep(200);
- wxYield();
-
- // Create the DCs here since the window to be captured MUST be
- // completely visible before creating the wxClientDC. (Under GTK,
- // at least.)
- wxDC *src;
- src = new wxScreenDC();
-
- wxRect r = panel->GetRect();
- r.SetPosition(panel->GetParent()->ClientToScreen(r.GetPosition()));
-
- wxBitmap bitmap(r.width, r.height);
- wxMemoryDC memDC;
- memDC.SelectObject(bitmap);
- memDC.Blit(0, 0, r.width, r.height, src, r.x, r.y, wxCOPY);
- wxImage image = bitmap.ConvertToImage();
-
- if (image.SaveFile(filename)) {
- mStatus->SetStatusText(_("Saved ") + filename);
- }
- else {
- wxMessageBox(_("Error trying to save file: ") + filename);
- }
+ScreenFrame::ScreenFrame(wxWindow * parent, wxWindowID id)
+: wxFrame(parent, id, _("Screen Capture Frame"),
+ wxDefaultPosition, wxDefaultSize,
+#if !defined(__WXMSW__)
+ wxFRAME_TOOL_WINDOW|
+#else
+ wxSTAY_ON_TOP|
+#endif
+ wxSYSTEM_MENU|wxCAPTION|wxCLOSE_BOX),
+ mContext(&wxGetApp(), GetActiveProject())
+{
+ mDelayCheckBox = NULL;
+ mDirectoryTextBox = NULL;
- if (frame) {
- delete frame;
- }
- else {
- delete panel;
- }
- delete src;
+ mStatus = CreateStatusBar();
+ mCommand = CreateCommand();
- ::wxBell();
+ Populate();
- Show();
+ // Reset the toolbars to a known state
+ mContext.proj->mToolManager->Reset();
}
-void ScreenFrame::CaptureToolbar(int type, wxString name)
+ScreenFrame::~ScreenFrame()
{
- AudacityProject *proj = GetActiveProject();
- ToolManager *man = proj->mToolManager;
-
- bool visible = man->IsVisible(type);
- if (!visible) {
- man->ShowHide(type);
- }
-
- wxWindow *w = man->GetToolBar(type);
- int x = 0, y = 0;
- int width, height;
-
- w->ClientToScreen(&x, &y);
- w->GetParent()->ScreenToClient(&x, &y);
- w->GetClientSize(&width, &height);
-
- Capture(name, w, x, y, width, height);
-
- if (!visible) {
- man->ShowHide(type);
- Raise();
- }
+ delete mCommand;
}
void ScreenFrame::Populate()
@@ -432,108 +290,126 @@ void ScreenFrame::Populate()
PopulateOrExchange(S);
}
-void ScreenFrame::PopulateOrExchange(ShuttleGui &S)
+void ScreenFrame::PopulateOrExchange(ShuttleGui & S)
{
wxPanel *p = S.StartPanel();
- S.SetBorder(2);
- S.StartVerticalLay(1);
-
- S.StartStatic(wxT("Choose location to save files"), true);
- S.StartMultiColumn(2, wxEXPAND);
- S.SetStretchyCol( 1 );// Column 1 is stretchy...
{
- wxString dir =
- gPrefs->Read(wxT("/ScreenshotPath"),
- wxFileName::GetHomeDir());
- mDirectoryTextBox =
- S.Id(IdDirectory).AddTextBox(wxT("Save images here:"),
- dir, 30);
- S.Id(IdDirChoose).AddButton(wxT("Choose Directory"));
- }
- S.EndMultiColumn();
- S.EndStatic();
+ S.SetBorder(3);
+
+ S.StartStatic(_("Choose location to save files"));
+ {
+ S.StartMultiColumn(3, wxEXPAND);
+ {
+ S.SetStretchyCol(1);
+
+ wxString dir =
+ gPrefs->Read(wxT("/ScreenshotPath"),
+ wxFileName::GetHomeDir());
+ mDirectoryTextBox =
+ S.Id(IdDirectory).AddTextBox(_("Save images to:"),
+ dir, 30);
+ S.Id(IdDirChoose).AddButton(_("Choose..."));
+ }
+ S.EndMultiColumn();
+ }
+ S.EndStatic();
+
+ S.StartStatic(_("Capture entire window or screen"));
+ {
+ S.StartHorizontalLay();
+ {
+ S.Id(IdMainWindowSmall).AddButton(_("Resize Small"));
+ S.Id(IdMainWindowLarge).AddButton(_("Resize Large"));
+ mBlue = new wxToggleButton(p,
+ IdToggleBackgroundBlue,
+ _("Blue Bkgnd"));
+ S.AddWindow(mBlue);
+ mWhite = new wxToggleButton(p,
+ IdToggleBackgroundWhite,
+ _("White Bkgnd"));
+ S.AddWindow(mWhite);
+ }
+ S.EndHorizontalLay();
- S.StartStatic(wxT("Capture entire window or screen"), true);
- S.StartHorizontalLay();
- {
- S.Id(IdMainWindowSmall).AddButton(wxT("Resize Small"));
- S.Id(IdMainWindowLarge).AddButton(wxT("Resize Large"));
- mBlue = new wxToggleButton(p,
- IdToggleBackgroundBlue,
- wxT("Blue Bkgnd"));
- S.AddWindow(mBlue);
- mWhite = new wxToggleButton(p,
- IdToggleBackgroundWhite,
- wxT("White Bkgnd"));
- S.AddWindow(mWhite);
- }
- S.EndHorizontalLay();
- S.StartHorizontalLay();
- {
- S.Id(IdCaptureWindowContents).AddButton(wxT("Capture Window Only"));
- S.Id(IdCaptureWindowPlus).AddButton(wxT("Capture Window Plus"));
- S.Id(IdCaptureFullScreen).AddButton(wxT("Capture Full Screen"));
- }
- S.EndHorizontalLay();
- S.StartHorizontalLay();
- {
- mDelayCheckBox = S.Id(IdDelayCheckBox).AddCheckBox
- (wxT("Wait 5 seconds and capture frontmost window/dialog"),
- wxT("false"));
- }
- S.EndHorizontalLay();
- S.EndStatic();
+ S.StartHorizontalLay();
+ {
+ S.Id(IdCaptureWindowContents).AddButton(_("Capture Window Only"));
+ S.Id(IdCaptureFullWindow).AddButton(_("Capture Full Window"));
+ S.Id(IdCaptureWindowPlus).AddButton(_("Capture Window Plus"));
+ }
+ S.EndHorizontalLay();
- S.StartStatic(wxT("Capture part of a project window"), true);
- S.StartHorizontalLay();
- {
- S.Id(IdCaptureToolbars).AddButton(wxT("All Toolbars"));
- S.Id(IdCaptureSelectionBar).AddButton(wxT("SelectionBar"));
- S.Id(IdCaptureTools).AddButton(wxT("Tools"));
- S.Id(IdCaptureControl).AddButton(wxT("Control"));
- }
- S.EndHorizontalLay();
- S.StartHorizontalLay();
- {
- S.Id(IdCaptureMixer).AddButton(wxT("Mixer"));
- S.Id(IdCaptureMeter).AddButton(wxT("Meter"));
- S.Id(IdCaptureEdit).AddButton(wxT("Edit"));
- S.Id(IdCaptureDevice).AddButton(wxT("Device"));
- S.Id(IdCaptureTranscription).AddButton(wxT("Transcription"));
- }
- S.EndHorizontalLay();
- S.StartHorizontalLay();
- {
- S.Id(IdCaptureTrackPanel).AddButton(wxT("Track Panel"));
- S.Id(IdCaptureRuler).AddButton(wxT("Ruler"));
- S.Id(IdCaptureTracks).AddButton(wxT("Tracks"));
- S.Id(IdCaptureFirstTrack).AddButton(wxT("First Track"));
- S.Id(IdCaptureSecondTrack).AddButton(wxT("Second Track"));
- }
- S.EndHorizontalLay();
+ S.StartHorizontalLay();
+ {
+ S.Id(IdCaptureFullScreen).AddButton(_("Capture Full Screen"));
+ }
+ S.EndHorizontalLay();
- S.EndStatic();
+ S.StartHorizontalLay();
+ {
+ mDelayCheckBox = S.Id(IdDelayCheckBox).AddCheckBox
+ (_("Wait 5 seconds and capture frontmost window/dialog"),
+ _("false"));
+ }
+ S.EndHorizontalLay();
+ }
+ S.EndStatic();
+
+ S.StartStatic(_("Capture part of a project window"));
+ {
+ S.StartHorizontalLay();
+ {
+ S.Id(IdCaptureToolbars).AddButton(_("All Toolbars"));
+ S.Id(IdCaptureSelectionBar).AddButton(_("SelectionBar"));
+ S.Id(IdCaptureTools).AddButton(_("Tools"));
+ S.Id(IdCaptureControl).AddButton(_("Control"));
+ }
+ S.EndHorizontalLay();
+
+ S.StartHorizontalLay();
+ {
+ S.Id(IdCaptureMixer).AddButton(_("Mixer"));
+ S.Id(IdCaptureMeter).AddButton(_("Meter"));
+ S.Id(IdCaptureEdit).AddButton(_("Edit"));
+ S.Id(IdCaptureDevice).AddButton(_("Device"));
+ S.Id(IdCaptureTranscription).AddButton(_("Transcription"));
+ }
+ S.EndHorizontalLay();
+
+ S.StartHorizontalLay();
+ {
+ S.Id(IdCaptureTrackPanel).AddButton(_("Track Panel"));
+ S.Id(IdCaptureRuler).AddButton(_("Ruler"));
+ S.Id(IdCaptureTracks).AddButton(_("Tracks"));
+ S.Id(IdCaptureFirstTrack).AddButton(_("First Track"));
+ S.Id(IdCaptureSecondTrack).AddButton(_("Second Track"));
+ }
+ S.EndHorizontalLay();
+ }
+ S.EndStatic();
+
+ S.StartStatic(_("Scale"));
+ {
+ S.StartHorizontalLay();
+ {
+ S.Id(IdOneSec).AddButton(_("One Sec"));
+ S.Id(IdTenSec).AddButton(_("Ten Sec"));
+ S.Id(IdOneMin).AddButton(_("One Min"));
+ S.Id(IdFiveMin).AddButton(_("Five Min"));
+ S.Id(IdOneHour).AddButton(_("One Hour"));
+ }
+ S.EndHorizontalLay();
- S.StartStatic(wxT("Scale"), true);
- S.StartHorizontalLay();
- {
- S.Id(IdOneSec).AddButton(wxT("One Sec"));
- S.Id(IdTenSec).AddButton(wxT("Ten Sec"));
- S.Id(IdOneMin).AddButton(wxT("One Min"));
- S.Id(IdFiveMin).AddButton(wxT("Five Min"));
- S.Id(IdOneHour).AddButton(wxT("One Hour"));
- }
- S.EndHorizontalLay();
- S.StartHorizontalLay();
- {
- S.Id(IdShortTracks).AddButton(wxT("Short Tracks"));
- S.Id(IdMedTracks).AddButton(wxT("Medium Tracks"));
- S.Id(IdTallTracks).AddButton(wxT("Tall Tracks"));
+ S.StartHorizontalLay();
+ {
+ S.Id(IdShortTracks).AddButton(_("Short Tracks"));
+ S.Id(IdMedTracks).AddButton(_("Medium Tracks"));
+ S.Id(IdTallTracks).AddButton(_("Tall Tracks"));
+ }
+ S.EndHorizontalLay();
+ }
+ S.EndStatic();
}
- S.EndHorizontalLay();
- S.EndStatic();
-
- S.EndVerticalLay();
S.EndPanel();
Layout();
@@ -541,441 +417,300 @@ void ScreenFrame::PopulateOrExchange(ShuttleGui &S)
SetMinSize(GetSize());
int top = 0;
- #ifdef __WXMAC__
+#ifdef __WXMAC__
+ // Allow for Mac menu bar
top += 20;
- #endif
+#endif
int width, height;
GetSize(&width, &height);
int displayWidth, displayHeight;
wxDisplaySize(&displayWidth, &displayHeight);
- if (width > 100)
+ if (width > 100) {
Move(displayWidth - width - 16, top + 16);
- else
+ }
+ else {
CentreOnParent();
-}
-
-BEGIN_EVENT_TABLE(ScreenFrame, wxFrame)
- EVT_CLOSE(ScreenFrame::OnCloseWindow)
-
- EVT_BUTTON(IdMainWindowSmall, ScreenFrame::OnMainWindowSmall)
- EVT_BUTTON(IdMainWindowLarge, ScreenFrame::OnMainWindowLarge)
- EVT_TOGGLEBUTTON(IdToggleBackgroundBlue, ScreenFrame::OnToggleBackgroundBlue)
- EVT_TOGGLEBUTTON(IdToggleBackgroundWhite, ScreenFrame::OnToggleBackgroundWhite)
- EVT_BUTTON(IdCaptureWindowContents, ScreenFrame::OnCaptureWindowContents)
- EVT_BUTTON(IdCaptureWindowPlus, ScreenFrame::OnCaptureWindowPlus)
-
- EVT_BUTTON(IdCaptureFullScreen, ScreenFrame::OnCaptureFullScreen)
-
- EVT_BUTTON(IdCaptureToolbars, ScreenFrame::OnCaptureToolbars)
- EVT_BUTTON(IdCaptureSelectionBar, ScreenFrame::OnCaptureSelectionBar)
- EVT_BUTTON(IdCaptureTools, ScreenFrame::OnCaptureTools)
- EVT_BUTTON(IdCaptureControl, ScreenFrame::OnCaptureControl)
- EVT_BUTTON(IdCaptureMixer, ScreenFrame::OnCaptureMixer)
- EVT_BUTTON(IdCaptureMeter, ScreenFrame::OnCaptureMeter)
- EVT_BUTTON(IdCaptureEdit, ScreenFrame::OnCaptureEdit)
- EVT_BUTTON(IdCaptureDevice, ScreenFrame::OnCaptureDevice)
- EVT_BUTTON(IdCaptureTranscription, ScreenFrame::OnCaptureTranscription)
-
- EVT_BUTTON(IdOneSec, ScreenFrame::OnOneSec)
- EVT_BUTTON(IdTenSec, ScreenFrame::OnTenSec)
- EVT_BUTTON(IdOneMin, ScreenFrame::OnOneMin)
- EVT_BUTTON(IdFiveMin, ScreenFrame::OnFiveMin)
- EVT_BUTTON(IdOneHour, ScreenFrame::OnOneHour)
+ }
- EVT_BUTTON(IdShortTracks, ScreenFrame::OnShortTracks)
- EVT_BUTTON(IdMedTracks, ScreenFrame::OnMedTracks)
- EVT_BUTTON(IdTallTracks, ScreenFrame::OnTallTracks)
+ SetIcon(mContext.proj->GetIcon());
+}
- EVT_BUTTON(IdCaptureTrackPanel, ScreenFrame::OnCaptureTrackPanel)
- EVT_BUTTON(IdCaptureRuler, ScreenFrame::OnCaptureRuler)
- EVT_BUTTON(IdCaptureTracks, ScreenFrame::OnCaptureTracks)
- EVT_BUTTON(IdCaptureFirstTrack, ScreenFrame::OnCaptureFirstTrack)
- EVT_BUTTON(IdCaptureSecondTrack, ScreenFrame::OnCaptureSecondTrack)
+bool ScreenFrame::ProcessEvent(wxEvent & e)
+{
+ int id = e.GetId();
- EVT_BUTTON(IdDirChoose, ScreenFrame::OnDirChoose)
+ if (mDelayCheckBox &&
+ mDelayCheckBox->GetValue() &&
+ e.IsCommandEvent() &&
+ e.GetEventType() == wxEVT_COMMAND_BUTTON_CLICKED &&
+ id >= IdAllDelayedEvents && id <= IdLastDelayedEvent &&
+ e.GetEventObject() != NULL) {
+ ScreenFrameTimer *timer = new ScreenFrameTimer(this, e);
+ timer->Start(5000, true);
+ return true;
+ }
-END_EVENT_TABLE();
+ if (e.IsCommandEvent() && e.GetEventObject() == NULL) {
+ e.SetEventObject(this);
+ }
+ return wxFrame::ProcessEvent(e);
+}
-void ScreenFrame::OnCloseWindow(wxCloseEvent & evt)
+void ScreenFrame::OnCloseWindow(wxCloseEvent & e)
{
mFrame = NULL;
Destroy();
}
-void ScreenFrame::OnMainWindowSmall(wxCommandEvent& evt)
+void ScreenFrame::OnUIUpdate(wxUpdateUIEvent & e)
{
- int top = 20;
+#ifdef __WXMAC__
+ wxTopLevelWindow *top = mCommand->GetFrontWindow(mContext.proj);
+ bool needupdate = false;
+ bool enable = false;
- AudacityProject *proj = GetActiveProject();
- proj->SetSize(16, 16 + top, 680, 450);
- proj->mToolManager->Reset();
+ if ((!top || top->IsIconized()) && mDirectoryTextBox->IsEnabled()) {
+ needupdate = true;
+ enable = false;
+ }
+ else if ((top && !top->IsIconized()) && !mDirectoryTextBox->IsEnabled()) {
+ needupdate = true;
+ enable = true;
+ }
+
+ if (needupdate) {
+ for (int i = IdMainWindowSmall; i < IdLastDelayedEvent; i++) {
+ wxWindow *w = wxWindow::FindWindowById(i, this);
+ if (w) {
+ w->Enable(enable);
+ }
+ }
+ }
+#endif
}
-void ScreenFrame::OnMainWindowLarge(wxCommandEvent& evt)
+void ScreenFrame::OnDirChoose(wxCommandEvent & e)
{
- int top = 20;
+ wxString current = mDirectoryTextBox->GetValue();
- AudacityProject *proj = GetActiveProject();
- proj->SetSize(16, 16 + top, 900, 600);
- proj->mToolManager->Reset();
+ wxDirDialog dlog(this,
+ _("Choose a location to save screenshot images"),
+ current);
+
+ dlog.ShowModal();
+ if (dlog.GetPath() != wxT("")) {
+ wxFileName tmpDirPath;
+ tmpDirPath.AssignDir(dlog.GetPath());
+ wxString path = tmpDirPath.GetPath(wxPATH_GET_VOLUME|wxPATH_GET_SEPARATOR);
+ mDirectoryTextBox->SetValue(path);
+ gPrefs->Write(wxT("/ScreenshotPath"), path);
+ }
}
-void ScreenFrame::OnToggleBackgroundBlue(wxCommandEvent& evt)
+void ScreenFrame::OnToggleBackgroundBlue(wxCommandEvent & e)
{
- mBackColor = wxColour(51, 102, 153);
- mBackground = mBlue->GetValue();
mWhite->SetValue(false);
+ mCommand->SetParameter(wxT("Background"),
+ mBlue->GetValue() ? wxT("Blue") : wxT("None"));
}
-void ScreenFrame::OnToggleBackgroundWhite(wxCommandEvent& evt)
+void ScreenFrame::OnToggleBackgroundWhite(wxCommandEvent & e)
{
- mBackColor = wxColour(255, 255, 255);
- mBackground = mWhite->GetValue();
mBlue->SetValue(false);
+ mCommand->SetParameter(wxT("Background"),
+ mWhite->GetValue() ? wxT("White") : wxT("None"));
}
-void ScreenFrame::OnCaptureWindowContents(wxCommandEvent& evt)
+void ScreenFrame::SizeMainWindow(int w, int h)
{
- wxTopLevelWindow *w = GetFrontWindow();
- int x = 0, y = 0;
- int width, height;
+ int top = 20;
- w->ClientToScreen(&x, &y);
- w->GetClientSize(&width, &height);
- wxWindow *p = w->GetParent();
+ mContext.proj->Maximize(false);
+ mContext.proj->SetSize(16, 16 + top, w, h);
+ mContext.proj->mToolManager->Reset();
+}
- if (p) {
- p->ScreenToClient(&x, &y);
- }
+void ScreenFrame::OnMainWindowSmall(wxCommandEvent & e)
+{
+ SizeMainWindow(680, 450);
+}
- wxString basename = wxT("window");
- if (w != GetActiveProject() && w->GetTitle() != wxT("")) {
- basename += (wxT("-") + w->GetTitle() + wxT("-"));
- }
+void ScreenFrame::OnMainWindowLarge(wxCommandEvent & e)
+{
+ SizeMainWindow(900, 600);
+}
- Capture(basename, w, x, y, width, height);
-}
-
-void ScreenFrame::OnCaptureWindowPlus(wxCommandEvent& evt)
-{
- wxTopLevelWindow *w = GetFrontWindow();
- wxWindow *p = w->GetParent();
- wxRect r = w->GetRect();
-
- int eh = 0;
- int ev = 0;
- #ifdef __WXMAC__
- int h = 16;
- int v = 16;
- #elif defined(__WXMSW__)
- int h = 16;
- int v = 16;
- #else
- int h = 12;
- int v = 24;
- eh = 6;
- ev = 24;
- #endif
-
- r.x -= h;
- r.y -= v;
- r.width += h * 2 + eh;
- r.height += v * 2 + ev;
-
- if (p) {
- p->ScreenToClient(&r.x, &r.y);
- }
+void ScreenFrame::DoCapture(wxString captureMode)
+{
+ Hide();
+ mCommand->SetParameter(wxT("FilePath"), mDirectoryTextBox->GetValue());
- wxString basename = wxT("windowplus");
- if (w != GetActiveProject() && w->GetTitle() != wxT("")) {
- basename += (wxT("-") + w->GetTitle() + wxT("-"));
- }
+ mCommand->SetParameter(wxT("CaptureMode"), captureMode);
+ if (!mCommand->Apply(mContext))
+ mStatus->SetStatusText(wxT("Capture failed!"));
+ Show();
+}
- Capture(basename, w, r.x, r.y, r.width, r.height, true);
+void ScreenFrame::OnCaptureWindowContents(wxCommandEvent & e)
+{
+ DoCapture(wxT("window"));
}
-void ScreenFrame::OnCaptureFullScreen(wxCommandEvent& evt)
+void ScreenFrame::OnCaptureFullWindow(wxCommandEvent & e)
{
- int width, height;
- wxDisplaySize(&width, &height);
+ DoCapture(wxT("fullwindow"));
+}
- Capture(wxT("fullscreen"), GetFrontWindow(), 0, 0, width, height);
+void ScreenFrame::OnCaptureWindowPlus(wxCommandEvent & e)
+{
+ DoCapture(wxT("windowplus"));
}
-void ScreenFrame::OnCaptureToolbars(wxCommandEvent& evt)
+void ScreenFrame::OnCaptureFullScreen(wxCommandEvent & e)
{
- AudacityProject *proj = GetActiveProject();
- wxWindow *w = proj->mToolManager->GetTopDock();
+ DoCapture(wxT("fullscreen"));
+}
- int x = 0, y = 0;
- int width, height;
+void ScreenFrame::OnCaptureToolbars(wxCommandEvent & e)
+{
+ DoCapture(wxT("toolbars"));
+}
- w->ClientToScreen(&x, &y);
- w->GetParent()->ScreenToClient(&x, &y);
- w->GetClientSize(&width, &height);
+void ScreenFrame::OnCaptureSelectionBar(wxCommandEvent & e)
+{
+ DoCapture(wxT("selectionbar"));
+}
- Capture(wxT("toolbars"), w, x, y, width, height);
+void ScreenFrame::OnCaptureTools(wxCommandEvent & e)
+{
+ DoCapture(wxT("tools"));
}
-void ScreenFrame::OnCaptureSelectionBar(wxCommandEvent& evt)
+void ScreenFrame::OnCaptureControl(wxCommandEvent & e)
{
- AudacityProject *proj = GetActiveProject();
- wxWindow *w = proj->mToolManager->GetBotDock();
+ DoCapture(wxT("control"));
+}
- int x = 0, y = 0;
- int width, height;
+void ScreenFrame::OnCaptureMixer(wxCommandEvent & e)
+{
+ DoCapture(wxT("mixer"));
+}
- w->ClientToScreen(&x, &y);
- w->GetParent()->ScreenToClient(&x, &y);
- w->GetClientSize(&width, &height);
+void ScreenFrame::OnCaptureMeter(wxCommandEvent & e)
+{
+ DoCapture(wxT("meter"));
+}
- Capture(wxT("selectionbar"), w, x, y, width, height);
+void ScreenFrame::OnCaptureEdit(wxCommandEvent & e)
+{
+ DoCapture(wxT("edit"));
}
-void ScreenFrame::OnCaptureTools(wxCommandEvent& evt)
+void ScreenFrame::OnCaptureDevice(wxCommandEvent & e)
{
- CaptureToolbar(ToolsBarID, wxT("tools"));
+ DoCapture(wxT("device"));
}
-void ScreenFrame::OnCaptureControl(wxCommandEvent& evt)
+void ScreenFrame::OnCaptureTranscription(wxCommandEvent & e)
{
- CaptureToolbar(ControlBarID, wxT("control"));
+ DoCapture(wxT("transcription"));
}
-void ScreenFrame::OnCaptureMixer(wxCommandEvent& evt)
+void ScreenFrame::OnCaptureTrackPanel(wxCommandEvent & e)
{
- CaptureToolbar(MixerBarID, wxT("mixer"));
+ DoCapture(wxT("trackpanel"));
}
-void ScreenFrame::OnCaptureMeter(wxCommandEvent& evt)
+void ScreenFrame::OnCaptureRuler(wxCommandEvent & e)
{
- CaptureToolbar(MeterBarID, wxT("meter"));
+ DoCapture(wxT("ruler"));
}
-void ScreenFrame::OnCaptureEdit(wxCommandEvent& evt)
+void ScreenFrame::OnCaptureTracks(wxCommandEvent & e)
{
- CaptureToolbar(EditBarID, wxT("edit"));
+ DoCapture(wxT("tracks"));
}
-void ScreenFrame::OnCaptureDevice(wxCommandEvent& evt)
+void ScreenFrame::OnCaptureFirstTrack(wxCommandEvent & e)
{
- CaptureToolbar(DeviceBarID, wxT("device"));
+ DoCapture(wxT("firsttrack"));
}
-void ScreenFrame::OnCaptureTranscription(wxCommandEvent& evt)
+void ScreenFrame::OnCaptureSecondTrack(wxCommandEvent & e)
{
- CaptureToolbar(TranscriptionBarID, wxT("transcription"));
+ DoCapture(wxT("secondtrack"));
}
-void ScreenFrame::OnOneSec(wxCommandEvent& evt)
+void ScreenFrame::TimeZoom(double seconds)
{
- AudacityProject *proj = GetActiveProject();
int width, height;
- proj->GetClientSize(&width, &height);
- proj->mViewInfo.zoom = (0.75 * width) / 1.0;
- proj->RedrawProject();
+ mContext.proj->GetClientSize(&width, &height);
+ mContext.proj->mViewInfo.zoom = (0.75 * width) / seconds;
+ mContext.proj->RedrawProject();
}
-void ScreenFrame::OnTenSec(wxCommandEvent& evt)
+void ScreenFrame::OnOneSec(wxCommandEvent & e)
{
- AudacityProject *proj = GetActiveProject();
- int width, height;
- proj->GetClientSize(&width, &height);
- proj->mViewInfo.zoom = (0.75 * width) / 10.0;
- proj->RedrawProject();
+ TimeZoom(1.0);
}
-void ScreenFrame::OnOneMin(wxCommandEvent& evt)
+void ScreenFrame::OnTenSec(wxCommandEvent & e)
{
- AudacityProject *proj = GetActiveProject();
- int width, height;
- proj->GetClientSize(&width, &height);
- proj->mViewInfo.zoom = (0.75 * width) / 60.0;
- proj->RedrawProject();
+ TimeZoom(10.0);
}
-void ScreenFrame::OnFiveMin(wxCommandEvent& evt)
+void ScreenFrame::OnOneMin(wxCommandEvent & e)
{
- AudacityProject *proj = GetActiveProject();
- int width, height;
- proj->GetClientSize(&width, &height);
- proj->mViewInfo.zoom = (0.75 * width) / 300.0;
- proj->RedrawProject();
+ TimeZoom(60.0);
}
-void ScreenFrame::OnOneHour(wxCommandEvent& evt)
+void ScreenFrame::OnFiveMin(wxCommandEvent & e)
{
- AudacityProject *proj = GetActiveProject();
- int width, height;
- proj->GetClientSize(&width, &height);
- proj->mViewInfo.zoom = (0.75 * width) / 3600.0;
- proj->RedrawProject();
+ TimeZoom(300.0);
}
-void ScreenFrame::OnShortTracks(wxCommandEvent& evt)
+void ScreenFrame::OnOneHour(wxCommandEvent & e)
{
- AudacityProject *proj = GetActiveProject();
- TrackListIterator iter(proj->GetTracks());
- for (Track * t = iter.First(); t; t = iter.Next()) {
- if (t->GetKind() == Track::Wave) {
- if (proj->GetTracks()->GetLink(t)) {
- t->SetHeight(48);
- }
- else {
- t->SetHeight(24);
- }
- }
- }
- proj->RedrawProject();
+ TimeZoom(3600.0);
}
-void ScreenFrame::OnMedTracks(wxCommandEvent& evt)
+void ScreenFrame::SizeTracks(int h)
{
- AudacityProject *proj = GetActiveProject();
- TrackListIterator iter(proj->GetTracks());
+ TrackListIterator iter(mContext.proj->GetTracks());
for (Track * t = iter.First(); t; t = iter.Next()) {
if (t->GetKind() == Track::Wave) {
- if (proj->GetTracks()->GetLink(t)) {
- t->SetHeight(60);
+ if (t->GetLink()) {
+ t->SetHeight(h);
}
else {
- t->SetHeight(120);
+ t->SetHeight(h*2);
}
}
}
- proj->RedrawProject();
+ mContext.proj->RedrawProject();
}
-void ScreenFrame::OnTallTracks(wxCommandEvent& evt)
+void ScreenFrame::OnShortTracks(wxCommandEvent & e)
{
- AudacityProject *proj = GetActiveProject();
- TrackListIterator iter(proj->GetTracks());
+ TrackListIterator iter(mContext.proj->GetTracks());
for (Track * t = iter.First(); t; t = iter.Next()) {
if (t->GetKind() == Track::Wave) {
- if (proj->GetTracks()->GetLink(t)) {
- t->SetHeight(85);
- }
- else {
- t->SetHeight(170);
- }
+ t->SetHeight(t->GetMinimizedHeight());
}
}
- proj->RedrawProject();
+ mContext.proj->RedrawProject();
}
-void ScreenFrame::OnCaptureTrackPanel(wxCommandEvent& evt)
+void ScreenFrame::OnMedTracks(wxCommandEvent & e)
{
- AudacityProject *proj = GetActiveProject();
- TrackPanel *panel = proj->mTrackPanel;
- AdornedRulerPanel *ruler = panel->mRuler;
-
- int h = ruler->GetRulerHeight();
- int x = 0, y = -h;
- int width, height;
-
- panel->ClientToScreen(&x, &y);
- panel->GetParent()->ScreenToClient(&x, &y);
- panel->GetClientSize(&width, &height);
-
- Capture(wxT("trackpanel"), panel, x, y, width, height + h);
-}
-
-void ScreenFrame::OnCaptureRuler(wxCommandEvent& evt)
-{
- AudacityProject *proj = GetActiveProject();
- TrackPanel *panel = proj->mTrackPanel;
- AdornedRulerPanel *ruler = panel->mRuler;
-
- int x = 0, y = 0;
- int width, height;
-
- ruler->ClientToScreen(&x, &y);
- ruler->GetParent()->ScreenToClient(&x, &y);
- ruler->GetClientSize(&width, &height);
- height = ruler->GetRulerHeight();
-
- Capture(wxT("ruler"), ruler, x, y, width, height);
-}
-
-void ScreenFrame::OnCaptureTracks(wxCommandEvent& evt)
-{
- AudacityProject *proj = GetActiveProject();
- TrackPanel *panel = proj->mTrackPanel;
-
- int x = 0, y = 0;
- int width, height;
-
- panel->ClientToScreen(&x, &y);
- panel->GetParent()->ScreenToClient(&x, &y);
- panel->GetClientSize(&width, &height);
-
- Capture(wxT("tracks"), panel, x, y, width, height);
-}
-
-void ScreenFrame::OnCaptureFirstTrack(wxCommandEvent& evt)
-{
- AudacityProject *proj = GetActiveProject();
- TrackPanel *panel = proj->mTrackPanel;
- TrackListIterator iter(proj->GetTracks());
- Track * t = iter.First();
- if (!t)
- return;
- wxRect r = panel->FindTrackRect(t, true);
-
- int x = 0, y = r.y - 3;
- int width, height;
-
- panel->ClientToScreen(&x, &y);
- panel->GetParent()->ScreenToClient(&x, &y);
- panel->GetClientSize(&width, &height);
-
- Capture(wxT("firsttrack"), panel, x, y, width, r.height + 6);
-}
-
-void ScreenFrame::OnCaptureSecondTrack(wxCommandEvent& evt)
-{
- AudacityProject *proj = GetActiveProject();
- TrackPanel *panel = proj->mTrackPanel;
- TrackListIterator iter(proj->GetTracks());
- Track * t = iter.First();
- if (!t)
- return;
- if (t->GetLinked())
- t = iter.Next();
- t = iter.Next();
- if (!t)
- return;
- wxRect r = panel->FindTrackRect(t, true);
-
- int x = 0, y = r.y - 3;
- int width, height;
-
- panel->ClientToScreen(&x, &y);
- panel->GetParent()->ScreenToClient(&x, &y);
- panel->GetClientSize(&width, &height);
-
- Capture(wxT("secondtrack"), panel, x, y, width, r.height + 6);
+ SizeTracks(60);
}
-void ScreenFrame::OnDirChoose(wxCommandEvent& evt)
+void ScreenFrame::OnTallTracks(wxCommandEvent & e)
{
- wxString current = mDirectoryTextBox->GetValue();
-
- wxDirDialog dlog(this,
- wxT("Choose a location to save screenshot images"),
- current);
-
- dlog.ShowModal();
- if (dlog.GetPath() != wxT("")) {
- wxFileName tmpDirPath;
- tmpDirPath.AssignDir(dlog.GetPath());
- mDirectoryTextBox->SetValue
- (tmpDirPath.GetPath(wxPATH_GET_VOLUME|wxPATH_GET_SEPARATOR));
- gPrefs->Write(wxT("/ScreenshotPath"),
- tmpDirPath.GetPath(wxPATH_GET_VOLUME|wxPATH_GET_SEPARATOR));
- }
+ SizeTracks(85);
}
// Indentation settings for Vim and Emacs.
diff --git a/src/Sequence.cpp b/src/Sequence.cpp
index f788fc8..6c3715c 100644
--- a/src/Sequence.cpp
+++ b/src/Sequence.cpp
@@ -619,14 +619,9 @@ bool Sequence::AppendAlias(wxString fullPath,
SeqBlock *newBlock = new SeqBlock();
newBlock->start = mNumSamples;
- newBlock->f =
-#ifdef EXPERIMENTAL_ONDEMAND
- useOD?
+ newBlock->f = useOD?
mDirManager->NewODAliasBlockFile(fullPath, start, len, channel):
mDirManager->NewAliasBlockFile(fullPath, start, len, channel);
-#else
- mDirManager->NewAliasBlockFile(fullPath, start, len, channel);
-#endif
mBlock->Add(newBlock);
mNumSamples += newBlock->f->GetLength();
@@ -1564,10 +1559,8 @@ bool Sequence::Delete(sampleCount start, sampleCount len)
} else {
// The sample where we begin deletion happens to fall
// right on the end of a block.
- if (b0 != b1) {
- mDirManager->Deref(mBlock->Item(b1)->f);
- delete mBlock->Item(b1);
- }
+ mDirManager->Deref(mBlock->Item(b1)->f);
+ delete mBlock->Item(b1);
}
// Copy the remaining blocks over from the old array
diff --git a/src/Sequence.h b/src/Sequence.h
index 155bcdc..8f6ffdd 100644
--- a/src/Sequence.h
+++ b/src/Sequence.h
@@ -151,9 +151,7 @@ class Sequence: public XMLTagHandler {
//
// This should only be used if you really, really know what
- // you're doing! Currently used by TrackList::GetSpaceUsage(),
- // Dependencies.cpp and by Project.cpp to check if the first
- // block of the sequence is aliased (for a warning message).
+ // you're doing!
//
BlockArray *GetBlockArray() {return mBlock;}
diff --git a/src/ShuttleGui.cpp b/src/ShuttleGui.cpp
index e85b4af..a19d8f4 100644
--- a/src/ShuttleGui.cpp
+++ b/src/ShuttleGui.cpp
@@ -1010,6 +1010,46 @@ wxCheckBox * ShuttleGuiBase::TieCheckBox(const wxString &Prompt, WrappedType & W
}
return pCheckBox;
}
+
+wxCheckBox * ShuttleGuiBase::TieCheckBoxOnRight(const wxString &Prompt, WrappedType & WrappedRef)
+{
+ // The Add function does a UseUpId(), so don't do it here in that case.
+ if( mShuttleMode == eIsCreating )
+ return AddCheckBoxOnRight( Prompt, WrappedRef.ReadAsString());
+
+ UseUpId();
+
+ wxWindow * pWnd = wxWindow::FindWindowById( miId, mpDlg);
+ wxCheckBox * pCheckBox = wxDynamicCast(pWnd, wxCheckBox);
+
+ switch( mShuttleMode )
+ {
+ // IF setting internal storage from the controls.
+ case eIsGettingFromDialog:
+ {
+ wxASSERT( pCheckBox );
+ WrappedRef.WriteToAsBool( pCheckBox->GetValue() );
+ }
+ break;
+ case eIsSettingToDialog:
+ {
+ wxASSERT( pCheckBox );
+ pCheckBox->SetValue( WrappedRef.ReadAsBool() );
+ }
+ break;
+ // IF Saving settings to external storage...
+ // or IF Getting settings from external storage.
+ case eIsSavingViaShuttle:
+ case eIsGettingViaShuttle:
+ DoDataShuttle( Prompt, WrappedRef );
+ break;
+ default:
+ wxASSERT( false );
+ break;
+ }
+ return pCheckBox;
+}
+
wxSpinCtrl * ShuttleGuiBase::TieSpinCtrl( const wxString &Prompt, WrappedType & WrappedRef, const int max, const int min )
{
// The Add function does a UseUpId(), so don't do it here in that case.
@@ -1468,16 +1508,38 @@ bool ShuttleGuiBase::DoStep( int iStep )
/// Variant of the standard TieCheckBox which does the two step exchange
/// between gui and stack variable and stack variable and shuttle.
-void ShuttleGuiBase::TieCheckBox(
+wxCheckBox * ShuttleGuiBase::TieCheckBox(
+ const wxString &Prompt,
+ const wxString &SettingName,
+ const bool bDefault)
+{
+ wxCheckBox * pCheck=NULL;
+
+ bool bValue=bDefault;
+ WrappedType WrappedRef( bValue );
+ if( DoStep(1) ) DoDataShuttle( SettingName, WrappedRef );
+ if( DoStep(2) ) pCheck = TieCheckBox( Prompt, WrappedRef );
+ if( DoStep(3) ) DoDataShuttle( SettingName, WrappedRef );
+
+ return pCheck;
+}
+
+/// Variant of the standard TieCheckBox which does the two step exchange
+/// between gui and stack variable and stack variable and shuttle.
+wxCheckBox * ShuttleGuiBase::TieCheckBoxOnRight(
const wxString &Prompt,
const wxString &SettingName,
const bool bDefault)
{
+ wxCheckBox * pCheck=NULL;
+
bool bValue=bDefault;
WrappedType WrappedRef( bValue );
if( DoStep(1) ) DoDataShuttle( SettingName, WrappedRef );
- if( DoStep(2) ) TieCheckBox( Prompt, WrappedRef );
+ if( DoStep(2) ) pCheck = TieCheckBoxOnRight( Prompt, WrappedRef );
if( DoStep(3) ) DoDataShuttle( SettingName, WrappedRef );
+
+ return pCheck;
}
/// Variant of the standard TieSlider which does the two step exchange
@@ -1605,7 +1667,7 @@ wxChoice * ShuttleGuiBase::TieChoice(
{
wxChoice * pChoice=(wxChoice*)NULL;
- int TempIndex;
+ int TempIndex=0;
int TranslatedInt = Default;
WrappedType WrappedRef( TranslatedInt );
// Get from prefs does 1 and 2.
@@ -2019,3 +2081,67 @@ void ShuttleGui::AddSpace( int width, int height )
mpSizer->Add( width, height, 0);
}
+
+void ShuttleGui::SetSizeHints( wxWindow *window, const wxArrayString & items )
+{
+ int maxw = 0;
+
+ for( size_t i = 0; i < items.GetCount(); i++ )
+ {
+ int x;
+ int y;
+
+ window->GetTextExtent(items[i], &x, &y );
+ if( x > maxw )
+ {
+ maxw = x;
+ }
+ }
+
+ // Would be nice to know the sizes of the button and borders, but this is
+ // the best we can do for now.
+#if defined(__WXMAC__)
+ maxw += 50;
+#elif defined(__WXMSW__)
+ maxw += 50;
+#elif defined(__WXGTK__)
+ maxw += 50;
+#else
+ maxw += 50;
+#endif
+
+ window->SetSizeHints( maxw, -1 );
+}
+
+void ShuttleGui::SetSizeHints( wxWindow *window, const wxArrayInt & items )
+{
+ wxArrayString strs;
+
+ for( size_t i = 0; i < items.GetCount(); i++ )
+ {
+ strs.Add( wxString::Format( wxT("%d"), items[i] ) );
+ }
+
+ SetSizeHints( window, strs );
+}
+
+void ShuttleGui::SetSizeHints( const wxArrayString & items )
+{
+ if( mShuttleMode != eIsCreating )
+ return;
+
+ SetSizeHints( mpLastWind, items );
+}
+
+void ShuttleGui::SetSizeHints( const wxArrayInt & items )
+{
+ if( mShuttleMode != eIsCreating )
+ return;
+
+ SetSizeHints( mpLastWind, items );
+}
+
+void ShuttleGui::SetSizeHints( int minX, int minY )
+{
+ ShuttleGuiBase::SetSizeHints( minX, minY );
+}
diff --git a/src/ShuttleGui.h b/src/ShuttleGui.h
index 4b0a14c..88713ca 100644
--- a/src/ShuttleGui.h
+++ b/src/ShuttleGui.h
@@ -15,6 +15,9 @@
#define SHUTTLE_GUI
#include "Audacity.h"
+
+#include <wx/string.h>
+
#include "WrappedType.h"
const int nMaxNestedSizers = 20;
@@ -152,9 +155,10 @@ public:
wxTextCtrl * TieTextBox( const wxString &Prompt, int &Selected, const int nChars=0);
wxTextCtrl * TieTextBox( const wxString &Prompt, double &Value, const int nChars=0);
- wxCheckBox * TieCheckBox( const wxString &Prompt, WrappedType & WrappedRef);
- wxCheckBox * TieCheckBox( const wxString &Prompt, const wxString &Selected);
+ wxCheckBox * TieCheckBox( const wxString &Prompt, WrappedType & WrappedRef );
+ wxCheckBox * TieCheckBox( const wxString &Prompt, const wxString &Selected );
wxCheckBox * TieCheckBox( const wxString &Prompt, bool & Var );
+ wxCheckBox * TieCheckBoxOnRight( const wxString & Prompt, WrappedType & WrappedRef );
wxCheckBox * TieCheckBoxOnRight( const wxString & Prompt, bool & Var );
wxChoice * TieChoice( const wxString &Prompt, WrappedType & WrappedRef, const wxArrayString * pChoices );
@@ -178,7 +182,14 @@ public:
// Note that unlike the other Tie functions, ALL the arguments are const.
// That's because the data is being exchanged between the dialog and mpShuttle
// so it doesn't need an argument that is writeable.
- void TieCheckBox( const wxString &Prompt, const wxString &SettingName, const bool bDefault);
+ wxCheckBox * TieCheckBox(
+ const wxString &Prompt,
+ const wxString &SettingName,
+ const bool bDefault);
+ wxCheckBox * TieCheckBoxOnRight(
+ const wxString &Prompt,
+ const wxString &SettingName,
+ const bool bDefault);
wxChoice * TieChoice(
const wxString &Prompt,
const wxString &SettingName,
@@ -312,7 +323,7 @@ enum
eDebugID = wxID_LOWEST - 2
};
-wxSizer *CreateStdButtonSizer( wxWindow *parent,
+AUDACITY_DLL_API wxSizer *CreateStdButtonSizer( wxWindow *parent,
long buttons = eOkButton | eCancelButton,
wxButton *extra = NULL );
@@ -333,5 +344,11 @@ public:
void AddSpace( int width, int height );
void AddSpace( int size ) { AddSpace( size, size ); };
int GetBorder() { return miBorder; };
+
+ void SetSizeHints( int minX = -1, int minY = -1 );
+ void SetSizeHints( const wxArrayString & items );
+ void SetSizeHints( const wxArrayInt & items );
+ static void SetSizeHints( wxWindow *window, const wxArrayString & items );
+ static void SetSizeHints( wxWindow *window, const wxArrayInt & items );
};
#endif
diff --git a/src/Snap.cpp b/src/Snap.cpp
index fc57a87..99f436d 100644
--- a/src/Snap.cpp
+++ b/src/Snap.cpp
@@ -53,7 +53,7 @@ SnapManager::SnapManager(TrackList *tracks, TrackClipArray *exclusions,
}
if (track->GetKind() == Track::Wave) {
WaveTrack *waveTrack = (WaveTrack *)track;
- WaveClipList::Node* it;
+ WaveClipList::compatibility_iterator it;
for (it=waveTrack->GetClipIterator(); it; it=it->GetNext()) {
WaveClip *clip = it->GetData();
if (exclusions) {
diff --git a/src/Spectrum.cpp b/src/Spectrum.cpp
index ea7677e..bc25014 100644
--- a/src/Spectrum.cpp
+++ b/src/Spectrum.cpp
@@ -65,8 +65,11 @@ bool ComputeSpectrum(float * data, int width,
if (autocorrelation) {
// Take FFT
+#ifdef EXPERIMENTAL_USE_REALFFTF
+ RealFFT(windowSize, in, out, out2);
+#else
FFT(windowSize, false, in, NULL, out, out2);
-
+#endif
// Compute power
for (i = 0; i < windowSize; i++)
in[i] = (out[i] * out[i]) + (out2[i] * out2[i]);
@@ -78,7 +81,11 @@ bool ComputeSpectrum(float * data, int width,
in[i] = pow(in[i], 1.0f / 3.0f);
// Take FFT
+#ifdef EXPERIMENTAL_USE_REALFFTF
+ RealFFT(windowSize, in, out, out2);
+#else
FFT(windowSize, false, in, NULL, out, out2);
+#endif
}
else
diff --git a/src/SplashDialog.cpp b/src/SplashDialog.cpp
index 94b8147..c0f8c44 100644
--- a/src/SplashDialog.cpp
+++ b/src/SplashDialog.cpp
@@ -57,7 +57,7 @@ END_EVENT_TABLE()
IMPLEMENT_CLASS(SplashDialog, wxDialog)
SplashDialog::SplashDialog(wxWindow * parent)
- : wxDialog(parent, -1, _NoAcc("&Welcome to Audacity!"),
+ : wxDialog(parent, -1, _("Welcome to Audacity!"),
wxPoint( -1, 60 ), // default x position, y position 60 pixels from top of screen.
wxDefaultSize, wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER)
{
diff --git a/src/SplashDialog.h b/src/SplashDialog.h
index 827be4d..b6b99fb 100644
--- a/src/SplashDialog.h
+++ b/src/SplashDialog.h
@@ -42,8 +42,6 @@ private:
static SplashDialog * pSelf;
};
-//void ShowSplashScreen( AudacityProject * pProj );
-
#endif
// Indentation settings for Vim and Emacs and unique identifier for Arch, a
diff --git a/src/Tags.cpp b/src/Tags.cpp
index 91526e9..0752d4e 100644
--- a/src/Tags.cpp
+++ b/src/Tags.cpp
@@ -71,6 +71,7 @@
#include <wx/textctrl.h>
#include <wx/textfile.h>
#include <wx/combobox.h>
+#include <wx/display.h>
#ifdef _DEBUG
#ifdef _MSC_VER
@@ -748,7 +749,11 @@ TagsEditor::TagsEditor(wxWindow * parent,
gPrefs->Read(wxT("/TagsEditor/y"), &r.y, r.y);
gPrefs->Read(wxT("/TagsEditor/width"), &r.width, r.width);
gPrefs->Read(wxT("/TagsEditor/height"), &r.height, r.height);
- Move(r.GetPosition());
+ //On multi-monitor systems, there's a chance the last saved window position is
+ //on a monitor that has been removed or is unavailable.
+ if (IsWindowRectValid(&r))
+ Move(r.GetPosition());
+
// SetSize(r.GetSize());
// Resize value column width based on width of columns and the vertical scrollbar
@@ -766,6 +771,12 @@ TagsEditor::TagsEditor(wxWindow * parent,
TagsEditor::~TagsEditor()
{
+ delete mGrid;
+// TODO: Need to figure out if these should be deleted. Looks like the wxGrid
+// code takes ownership and uses reference counting, but there's been
+// cases where they show up as memory leaks.
+// delete mStringRenderer;
+// delete mComboEditor;
}
void TagsEditor::PopulateOrExchange(ShuttleGui & S)
@@ -785,9 +796,10 @@ void TagsEditor::PopulateOrExchange(ShuttleGui & S)
wxDefaultSize,
wxSUNKEN_BORDER);
- mGrid->RegisterDataType(wxT("Combo"),
- new wxGridCellStringRenderer,
- new ComboEditor(wxArrayString(), true));
+ mStringRenderer = new wxGridCellStringRenderer;
+ mComboEditor = new ComboEditor(wxArrayString(), true);
+
+ mGrid->RegisterDataType(wxT("Combo"), mStringRenderer, mComboEditor);
mGrid->SetColLabelSize(mGrid->GetDefaultRowSize());
@@ -797,8 +809,8 @@ void TagsEditor::PopulateOrExchange(ShuttleGui & S)
mGrid->CreateGrid(0, 2);
mGrid->SetRowLabelSize(0);
mGrid->SetDefaultCellAlignment(wxALIGN_LEFT, wxALIGN_CENTER);
- mGrid->SetColLabelValue(0, _("Tag Name"));
- mGrid->SetColLabelValue(1, _("Tag Value"));
+ mGrid->SetColLabelValue(0, _("Tag"));
+ mGrid->SetColLabelValue(1, _("Value"));
// Resize the name column and set default row height.
wxComboBox tc(this, wxID_ANY, wxT(""), wxDefaultPosition, wxDefaultSize, cs);
@@ -813,7 +825,7 @@ void TagsEditor::PopulateOrExchange(ShuttleGui & S)
S.Id(AddID).AddButton(_("&Add"));
S.Id(RemoveID).AddButton(_("&Remove"));
S.AddTitle(wxT(" "));
- S.Id(ClearID).AddButton(_("&Clear"));
+ S.Id(ClearID).AddButton(_("Cl&ear"));
}
S.EndMultiColumn();
@@ -836,7 +848,7 @@ void TagsEditor::PopulateOrExchange(ShuttleGui & S)
S.Id(LoadID).AddButton(_("&Load..."));
S.Id(SaveID).AddButton(_("&Save..."));
S.AddTitle(wxT(" "));
- S.Id(SaveDefaultsID).AddButton(_("S&et Default"));
+ S.Id(SaveDefaultsID).AddButton(_("Set De&fault"));
}
S.EndMultiColumn();
}
@@ -1150,46 +1162,50 @@ void TagsEditor::OnSave(wxCommandEvent & event)
// Create/Open the file
XMLFileWriter writer;
- writer.Open(fn, wxT("wb"));
- // Complain if open failed
- if (!writer.IsOpened())
+ try
{
- // Constructor will emit message
- return;
- }
+ writer.Open(fn, wxT("wb"));
- // Remember title and track in case they're read only
- wxString title = mLocal.GetTag(TAG_TITLE);
- wxString track = mLocal.GetTag(TAG_TRACK);
+ // Remember title and track in case they're read only
+ wxString title = mLocal.GetTag(TAG_TITLE);
+ wxString track = mLocal.GetTag(TAG_TRACK);
- // Clear title
- if (!mEditTitle) {
- mLocal.SetTag(TAG_TITLE, wxEmptyString);
- }
+ // Clear title
+ if (!mEditTitle) {
+ mLocal.SetTag(TAG_TITLE, wxEmptyString);
+ }
- // Clear track
- if (!mEditTrack) {
- mLocal.SetTag(TAG_TRACK, wxEmptyString);
- }
+ // Clear track
+ if (!mEditTrack) {
+ mLocal.SetTag(TAG_TRACK, wxEmptyString);
+ }
- // Write the metadata
- mLocal.WriteXML(writer);
+ // Write the metadata
+ mLocal.WriteXML(writer);
- // Restore title
- if (!mEditTitle) {
- mLocal.SetTag(TAG_TITLE, title);
- }
+ // Restore title
+ if (!mEditTitle) {
+ mLocal.SetTag(TAG_TITLE, title);
+ }
- // Restore track
- if (!mEditTrack) {
- mLocal.SetTag(TAG_TRACK, track);
- }
+ // Restore track
+ if (!mEditTrack) {
+ mLocal.SetTag(TAG_TRACK, track);
+ }
- // Close the file
- writer.Close();
+ // Close the file
+ writer.Close();
+ }
+ catch (XMLFileWriterException* pException)
+ {
+ wxMessageBox(wxString::Format(
+ _("Couldn't write to file \"%s\": %s"),
+ fn.c_str(), pException->GetMessage().c_str()),
+ _("Error saving tags file"), wxICON_ERROR, this);
- return;
+ delete pException;
+ }
}
void TagsEditor::OnSaveDefaults(wxCommandEvent & event)
@@ -1323,6 +1339,26 @@ void TagsEditor::PopulateGenres()
mGrid->GetDefaultEditorForType(wxT("Combo"))->SetParameters(parm);
}
+bool TagsEditor::IsWindowRectValid(const wxRect *windowRect) const
+{
+ wxDisplay display;
+ wxPoint topLeft(windowRect->GetTopLeft().x, windowRect->GetTopLeft().y);
+ wxPoint topRight(windowRect->GetTopRight().x, windowRect->GetTopRight().y);
+ wxPoint bottomLeft(windowRect->GetBottomLeft().x, windowRect->GetBottomLeft().y);
+ wxPoint bottomRight(windowRect->GetBottomRight().x, windowRect->GetBottomRight().y);
+ display.GetFromPoint(topLeft);
+ if (display.GetFromPoint(topLeft) == -1 &&
+ display.GetFromPoint(topRight) == -1 &&
+ display.GetFromPoint(bottomLeft) == -1 &&
+ display.GetFromPoint(bottomRight) == -1) {
+ return false;
+ }
+
+ return true;
+}
+
+
+
// Indentation settings for Vim and Emacs and unique identifier for Arch, a
// version control system. Please do not modify past this point.
//
diff --git a/src/Tags.h b/src/Tags.h
index 9e683e7..101bf9f 100644
--- a/src/Tags.h
+++ b/src/Tags.h
@@ -48,6 +48,7 @@ class wxTextCtrl;
class Grid;
class ShuttleGui;
class TagsEditor;
+class ComboEditor;
WX_DECLARE_STRING_HASH_MAP(wxString, TagMap);
@@ -152,6 +153,8 @@ class TagsEditor: public wxDialog
void OnOk(wxCommandEvent & event);
void OnCancel(wxCommandEvent & event);
+
+ bool IsWindowRectValid(const wxRect *windowRect) const;
private:
Tags *mTags;
@@ -161,6 +164,8 @@ class TagsEditor: public wxDialog
Tags mLocal;
Grid *mGrid;
+ ComboEditor *mComboEditor;
+ wxGridCellStringRenderer *mStringRenderer;
DECLARE_EVENT_TABLE()
};
diff --git a/src/Theme.h b/src/Theme.h
index 264ddec..ce524e9 100644
--- a/src/Theme.h
+++ b/src/Theme.h
@@ -14,7 +14,7 @@
#ifndef __AUDACITY_THEME__
#define __AUDACITY_THEME__
-#include "../Audacity.h"
+#include "Audacity.h"
#include <wx/bitmap.h>
#include <wx/colour.h>
diff --git a/src/TimeDialog.cpp b/src/TimeDialog.cpp
index b4edd1d..936f618 100644
--- a/src/TimeDialog.cpp
+++ b/src/TimeDialog.cpp
@@ -29,17 +29,14 @@ BEGIN_EVENT_TABLE(TimeDialog, wxDialog)
END_EVENT_TABLE()
TimeDialog::TimeDialog(wxWindow *parent,
- wxWindowID id,
- const wxString &title,
- const wxPoint &pos,
- const wxSize &size,
- long style,
- const wxString &name)
-: wxDialog(parent, id, title, pos, size, style, name),
- mFormat(wxT("seconds")),
- mRate(44100),
- mTime(0.0),
- mTimeCtrl(NULL)
+ const wxString &title,
+ const wxString &prompt)
+: wxDialog(parent, wxID_ANY, title),
+ mPrompt(prompt),
+ mFormat(wxT("seconds")),
+ mRate(44100),
+ mTime(0.0),
+ mTimeCtrl(NULL)
{
ShuttleGui S(this, eIsCreating);
PopulateOrExchange(S);
@@ -50,7 +47,7 @@ void TimeDialog::PopulateOrExchange(ShuttleGui &S)
S.SetBorder(5);
S.StartVerticalLay(true);
{
- S.StartStatic(_("Duration"), true);
+ S.StartStatic(mPrompt, true);
{
mTimeCtrl = new
TimeTextCtrl(this,
@@ -61,7 +58,7 @@ void TimeDialog::PopulateOrExchange(ShuttleGui &S)
wxDefaultPosition,
wxDefaultSize,
true);
- mTimeCtrl->SetName(_("Duration"));
+ mTimeCtrl->SetName(mPrompt);
mTimeCtrl->SetFormatString(mTimeCtrl->GetBuiltinFormat(mFormat));
S.AddWindow(mTimeCtrl);
mTimeCtrl->EnableMenu();
diff --git a/src/TimeDialog.h b/src/TimeDialog.h
index 2d117bb..e33db57 100644
--- a/src/TimeDialog.h
+++ b/src/TimeDialog.h
@@ -25,12 +25,8 @@ class TimeDialog:public wxDialog
public:
TimeDialog(wxWindow *parent,
- wxWindowID id,
- const wxString &title,
- const wxPoint &pos = wxDefaultPosition,
- const wxSize &size = wxDefaultSize,
- long style = wxDEFAULT_DIALOG_STYLE,
- const wxString &name = wxDialogNameStr);
+ const wxString &title,
+ const wxString &prompt = _("Duration"));
void SetFormatString(wxString formatString);
void SetSampleRate(double sampleRate);
@@ -47,6 +43,7 @@ class TimeDialog:public wxDialog
private:
+ wxString mPrompt;
wxString mFormat;
double mRate;
double mTime;
diff --git a/src/TimeTrack.cpp b/src/TimeTrack.cpp
index b0aa58b..b5545f2 100644
--- a/src/TimeTrack.cpp
+++ b/src/TimeTrack.cpp
@@ -41,7 +41,7 @@ TimeTrack::TimeTrack(DirManager *projDirManager):
mEnvelope->SetInterpolateDB(false);
mEnvelope->Flatten(0.5);
mEnvelope->Mirror(false);
- SetDefaultName(_NoAcc("&Time Track"));
+ SetDefaultName(_("Time Track"));
SetName(GetDefaultName());
mRuler = new Ruler();
@@ -139,7 +139,12 @@ bool TimeTrack::HandleXMLTag(const wxChar *tag, const wxChar **attrs)
return false;
mChannel = nValue;
}
-
+ else if (!wxStrcmp(attr, wxT("height")) &&
+ XMLValueChecker::IsGoodInt(strValue) && strValue.ToLong(&nValue))
+ mHeight = nValue;
+ else if (!wxStrcmp(attr, wxT("minimized")) &&
+ XMLValueChecker::IsGoodInt(strValue) && strValue.ToLong(&nValue))
+ mMinimized = (nValue != 0);
} // while
return true;
@@ -163,13 +168,15 @@ void TimeTrack::WriteXML(XMLWriter &xmlFile)
xmlFile.WriteAttr(wxT("name"), mName);
xmlFile.WriteAttr(wxT("channel"), mChannel);
xmlFile.WriteAttr(wxT("offset"), mOffset, 8);
+ xmlFile.WriteAttr(wxT("height"), this->GetActualHeight());
+ xmlFile.WriteAttr(wxT("minimized"), this->GetMinimized());
mEnvelope->WriteXML(xmlFile);
xmlFile.EndTag(wxT("timetrack"));
}
-void TimeTrack::Draw(wxDC & dc, wxRect & r, double h, double pps)
+void TimeTrack::Draw(wxDC & dc, const wxRect & r, double h, double pps)
{
double tstep = 1.0 / pps; // Seconds per point
double t0 = h;
@@ -220,7 +227,7 @@ void TimeTrack::Draw(wxDC & dc, wxRect & r, double h, double pps)
for (x = 0; x < mid.width; x++)
{
int thisy = r.y + heights[x];
- dc.DrawLine(mid.x + x, thisy, mid.x + x, thisy+3);
+ AColor::Line(dc, mid.x + x, thisy, mid.x + x, thisy+3);
}
if (heights)
diff --git a/src/TimeTrack.h b/src/TimeTrack.h
index f6b0412..068865d 100644
--- a/src/TimeTrack.h
+++ b/src/TimeTrack.h
@@ -40,7 +40,7 @@ class TimeTrack: public Track {
virtual double GetStartTime() { return 0.0; };
virtual double GetEndTime() { return 0.0; };
- void Draw(wxDC & dc, wxRect & r, double h, double pps);
+ void Draw(wxDC & dc, const wxRect & r, double h, double pps);
// XMLTagHandler callback methods for loading and saving
diff --git a/src/TimerRecordDialog.cpp b/src/TimerRecordDialog.cpp
index 5cd3300..6170e4a 100644
--- a/src/TimerRecordDialog.cpp
+++ b/src/TimerRecordDialog.cpp
@@ -4,7 +4,7 @@
TimerRecordDialog.cpp
- Copyright 2006 by Vaughan Johnson
+ Copyright 2006-2009 by Vaughan Johnson
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
@@ -14,7 +14,7 @@
*******************************************************************//**
\class TimerRecordDialog
-\brief Dialog for Timer Record, i.e., timed or long recording, limited GUI.
+\brief Dialog for Timer Record, i.e., timed or long recording.
*//*******************************************************************/
@@ -27,6 +27,7 @@
#include <wx/sizer.h>
#include <wx/string.h>
#include <wx/timer.h>
+#include <wx/dynlib.h> //<! For windows.h
#include "TimerRecordDialog.h"
#include "Project.h"
@@ -67,7 +68,6 @@ END_EVENT_TABLE()
TimerRecordDialog::TimerRecordDialog(wxWindow* parent)
: wxDialog(parent, -1, _("Audacity Timer Record"), wxDefaultPosition,
wxDefaultSize, wxCAPTION)
-// wxDefaultSize, wxCAPTION | wxTHICK_FRAME)
{
m_DateTime_Start = wxDateTime::UNow();
m_TimeSpan_Duration = wxTimeSpan::Minutes(5); // default 5 minute duration
@@ -199,64 +199,63 @@ void TimerRecordDialog::OnTimeText_Duration(wxCommandEvent& event)
void TimerRecordDialog::OnOK(wxCommandEvent& event)
{
- m_timer.Stop(); // Don't need to keep updating m_DateTime_Start to prevent backdating.
-
this->TransferDataFromWindow();
+ if (!m_TimeSpan_Duration.IsPositive())
+ {
+ wxMessageBox(_("Duration is zero. Nothing will be recorded."),
+ _("Error in Duration"), wxICON_EXCLAMATION | wxOK);
+ return;
+ }
- bool bDidCancel = false;
+ m_timer.Stop(); // Don't need to keep updating m_DateTime_Start to prevent backdating.
+
+ int updateResult = eProgressSuccess;
if (m_DateTime_Start > wxDateTime::UNow())
- bDidCancel = !this->WaitForStart();
+ updateResult = this->WaitForStart();
- if (!bDidCancel)
+ if (updateResult != eProgressSuccess)
+ {
+ // Don't proceed, but don't treat it as canceled recording. User just canceled waiting.
+ this->EndModal(wxID_CANCEL);
+ return;
+ }
+ else
{
// Record for specified time.
AudacityProject* pProject = GetActiveProject();
pProject->OnRecord();
-
bool bIsRecording = true;
- /* Although inaccurate, use the wxProgressDialog wxPD_ELAPSED_TIME | wxPD_REMAINING_TIME
- instead of calculating and presenting it.
- wxTimeSpan remaining_TimeSpan;
- wxString strNewMsg;
- */
-
wxString strMsg =
_("Recording start") + (wxString)wxT(":\t\t")
- + GetDisplayDate(m_DateTime_Start) + wxT("\n") + _("Recording end")
- + wxT(":\t\t") + GetDisplayDate(m_DateTime_End) + wxT("\n")
- + _("Duration") + wxT(":\t\t") + m_TimeSpan_Duration.Format();
+ + GetDisplayDate(m_DateTime_Start) + wxT("\n") + _("Recording end")
+ + wxT(":\t\t") + GetDisplayDate(m_DateTime_End) + wxT("\n")
+ + _("Duration") + wxT(":\t\t") + m_TimeSpan_Duration.Format();
- ProgressDialog progress(
- _("Audacity Timer Record Progress"), // const wxString& title,
- strMsg); // const wxString& message
+ TimerProgressDialog
+ progress(m_TimeSpan_Duration.GetMilliseconds().GetValue(),
+ _("Audacity Timer Record Progress"),
+ strMsg);
// Make sure that start and end time are updated, so we always get the full
// duration, even if there's some delay getting here.
wxTimerEvent dummyTimerEvent;
this->OnTimer(dummyTimerEvent);
- wxDateTime dateTime_UNow;
- wxTimeSpan done_TimeSpan;
- while (bIsRecording && !bDidCancel) {
- // sit in this loop during the recording phase, i.e. from rec start to
- // recording end
+ // Loop for progress display during recording.
+ while (bIsRecording && updateResult == eProgressSuccess)
+ {
wxMilliSleep(kTimerInterval);
-
- dateTime_UNow = wxDateTime::UNow(); // get time now
- done_TimeSpan = dateTime_UNow - m_DateTime_Start;
- // work out how long we have been recording for
- // remaining_TimeSpan = m_DateTime_End - dateTime_UNow;
-
- // strNewMsg = strMsg + _("\nDone: ") + done_TimeSpan.Format() + _(" Remaining: ") + remaining_TimeSpan.Format();
- bDidCancel = !progress.Update(done_TimeSpan.GetSeconds(),
- m_TimeSpan_Duration.GetSeconds()); // , strNewMsg);
- bIsRecording = (wxDateTime::UNow() <= m_DateTime_End);
+ updateResult = progress.Update();
+ bIsRecording = (wxDateTime::UNow() <= m_DateTime_End); // Call UNow() again for extra accuracy...
}
pProject->OnStop();
}
-
- this->EndModal(wxID_OK);
+ // Let the caller handle cancellation or failure from recording progress.
+ if (updateResult == eProgressCancelled || updateResult == eProgressFailed)
+ this->EndModal(updateResult);
+ else
+ this->EndModal(wxID_OK);
}
wxString TimerRecordDialog::GetDisplayDate( wxDateTime & dt )
@@ -358,7 +357,7 @@ void TimerRecordDialog::PopulateOrExchange(ShuttleGui& S)
m_pTimeTextCtrl_Duration = new TimeTextCtrl(this, ID_TIMETEXT_DURATION, strFormat1);
m_pTimeTextCtrl_Duration->SetName(_("Duration"));
m_pTimeTextCtrl_Duration->SetTimeValue(
- Internat::CompatibleToDouble(m_TimeSpan_Duration.GetSeconds().ToString())); //v milliseconds?
+ Internat::CompatibleToDouble(m_TimeSpan_Duration.GetSeconds().ToString()));
S.AddWindow(m_pTimeTextCtrl_Duration);
m_pTimeTextCtrl_Duration->EnableMenu(false);
}
@@ -409,7 +408,7 @@ void TimerRecordDialog::UpdateDuration()
{
m_TimeSpan_Duration = m_DateTime_End - m_DateTime_Start;
m_pTimeTextCtrl_Duration->SetTimeValue(
- Internat::CompatibleToDouble(m_TimeSpan_Duration.GetSeconds().ToString())); //v milliseconds?
+ Internat::CompatibleToDouble(m_TimeSpan_Duration.GetSeconds().ToString()));
}
// Update m_DateTime_End and ctrls based on m_DateTime_Start and m_TimeSpan_Duration.
@@ -423,28 +422,28 @@ void TimerRecordDialog::UpdateEnd()
m_pTimeTextCtrl_End->SetTimeValue(wxDateTime_to_AudacityTime(m_DateTime_End));
}
-bool TimerRecordDialog::WaitForStart()
+int TimerRecordDialog::WaitForStart()
{
wxString strMsg;
/* i18n-hint: A time specification like "Sunday 28th October 2007 15:16:17 GMT"
* but hopefully translated by wxwidgets will be inserted into this */
- strMsg.Printf(_("Waiting to start recording at %s.\n"), GetDisplayDate(m_DateTime_Start).c_str());
- ProgressDialog progress(_("Audacity Timer Record - Waiting for Start"),
- strMsg);
+ strMsg.Printf(_("Waiting to start recording at %s.\n"),
+ GetDisplayDate(m_DateTime_Start).c_str());
wxDateTime startWait_DateTime = wxDateTime::UNow();
wxTimeSpan waitDuration = m_DateTime_Start - startWait_DateTime;
+ TimerProgressDialog
+ progress(waitDuration.GetMilliseconds().GetValue(),
+ _("Audacity Timer Record - Waiting for Start"),
+ strMsg,
+ pdlgHideStopButton);
- bool bDidCancel = false;
+ int updateResult = eProgressSuccess;
bool bIsRecording = false;
- wxTimeSpan done_TimeSpan;
- while (!bDidCancel && !bIsRecording) {
+ while (updateResult == eProgressSuccess && !bIsRecording)
+ {
wxMilliSleep(10);
-
- done_TimeSpan = wxDateTime::UNow() - startWait_DateTime;
- bDidCancel = !progress.Update(done_TimeSpan.GetSeconds(),
- waitDuration.GetSeconds());
-
+ updateResult = progress.Update();
bIsRecording = (m_DateTime_Start <= wxDateTime::UNow());
}
- return !bDidCancel;
+ return updateResult;
}
diff --git a/src/TimerRecordDialog.h b/src/TimerRecordDialog.h
index 7291f68..da2f573 100644
--- a/src/TimerRecordDialog.h
+++ b/src/TimerRecordDialog.h
@@ -48,7 +48,7 @@ private:
bool TransferDataFromWindow();
void UpdateDuration(); // Update m_TimeSpan_Duration and ctrl based on m_DateTime_Start and m_DateTime_End.
void UpdateEnd(); // Update m_DateTime_End and ctrls based on m_DateTime_Start and m_TimeSpan_Duration.
- bool WaitForStart();
+ int WaitForStart();
private:
wxDateTime m_DateTime_Start;
diff --git a/src/Track.cpp b/src/Track.cpp
index 3226195..c758352 100644
--- a/src/Track.cpp
+++ b/src/Track.cpp
@@ -13,12 +13,6 @@
Classes derived form it include the WaveTrack, NoteTrack, LabelTrack
and TimeTrack.
-*//****************************************************************//**
-
-\class ConstTrackListIterator
-\brief ConstTrackListIterator provides an iterator to iterate through
-a TrackList.
-
*//*******************************************************************/
#include <float.h>
@@ -30,6 +24,7 @@ a TrackList.
#include "WaveTrack.h"
#include "NoteTrack.h"
#include "LabelTrack.h"
+#include "Project.h"
#include "TimeTrack.h"
#include "DirManager.h"
@@ -41,24 +36,25 @@ a TrackList.
#ifdef __WXDEBUG__
// if we are in a debug build of audacity
/// Define this to do extended (slow) debuging of TrackListIterator
- #define DEBUG_TLI
+// #define DEBUG_TLI
#endif
Track::Track(DirManager * projDirManager)
- :
- vrulerSize(36,0),
+: vrulerSize(36,0),
mDirManager(projDirManager)
{
mDirManager->Ref();
+ mList = NULL;
+ mNode = NULL;
mSelected = false;
mLinked = false;
- mTeamed = false;
mMute = false;
mSolo = false;
- //mHeight = 136;
+ mY = 0;
mHeight = 150;
+ mIndex = 0;
mMinimized = false;
@@ -71,6 +67,11 @@ Track::Track(const Track &orig)
{
mDirManager = NULL;
+ mList = NULL;
+ mNode = NULL;
+ mY = 0;
+ mIndex = 0;
+
Init(orig);
mOffset = orig.mOffset;
}
@@ -81,10 +82,10 @@ void Track::Init(const Track &orig)
mDefaultName = orig.mDefaultName;
mName = orig.mName;
- if (mDirManager != orig.mDirManager)
- {
- if (mDirManager)
+ if (mDirManager != orig.mDirManager) {
+ if (mDirManager) {
mDirManager->Deref(); // MM: unreference old DirManager
+ }
// MM: Assign and ref new DirManager
mDirManager = orig.mDirManager;
@@ -93,7 +94,6 @@ void Track::Init(const Track &orig)
mSelected = orig.mSelected;
mLinked = orig.mLinked;
- mTeamed = orig.mTeamed;
mMute = orig.mMute;
mSolo = orig.mSolo;
mHeight = orig.mHeight;
@@ -113,214 +113,569 @@ Track::~Track()
mDirManager->Deref();
}
+
+const TrackListNode *Track::GetNode()
+{
+ return mNode;
+}
+
+// A track can only live on one list at a time, so if you're moving a
+// track from one list to another, you must call SetOwner() with NULL
+// pointers first and then with the real pointers.
+void Track::SetOwner(TrackList *list, TrackListNode *node)
+{
+ // Try to detect offenders while in development.
+ wxASSERT(list == NULL || mList == NULL);
+ wxASSERT(node == NULL || mNode == NULL);
+ wxASSERT((list != NULL && node != NULL) || (list == NULL && node == NULL));
+
+ mList = list;
+ mNode = node;
+}
+
int Track::GetMinimizedHeight() const
{
- if (mTeamed)
+ if (GetLink()) {
return 20;
- else
- return 40;
+ }
+
+ return 40;
+}
+
+int Track::GetIndex() const
+{
+ return mIndex;
+}
+
+void Track::SetIndex(int index)
+{
+ mIndex = index;
+}
+
+int Track::GetY() const
+{
+ return mY;
+}
+
+void Track::SetY(int y)
+{
+ mY = y;
}
int Track::GetHeight() const
{
- if (mMinimized)
+ if (mMinimized) {
return GetMinimizedHeight();
- else
- return mHeight;
+ }
+
+ return mHeight;
+}
+
+void Track::SetHeight(int h)
+{
+ mHeight = h;
+ mList->RecalcPositions(mNode);
+ mList->ResizedEvent(mNode);
+}
+
+bool Track::GetMinimized() const
+{
+ return mMinimized;
+}
+
+void Track::SetMinimized(bool isMinimized)
+{
+ mMinimized = isMinimized;
+ mList->RecalcPositions(mNode);
+ mList->ResizedEvent(mNode);
+}
+
+Track *Track::GetLink() const
+{
+ if (mNode) {
+ if (mNode->next && mLinked) {
+ return mNode->next->t;
+ }
+
+ if (mNode->prev && mNode->prev->t->GetLinked()) {
+ return mNode->prev->t;
+ }
+ }
+
+ return NULL;
}
// TrackListIterator
TrackListIterator::TrackListIterator(TrackList * val)
{
l = val;
+ cur = NULL;
}
-Track *TrackListIterator::Last()
+Track *TrackListIterator::StartWith(Track * val)
{
- if( l == NULL )
+ if (val == NULL) {
+ return First();
+ }
+
+ if (l == NULL) {
return NULL;
+ }
- cur = l->tail;
+ cur = (TrackListNode *) val->GetNode();
- if (cur)
+ if (cur) {
return cur->t;
- else
- return NULL;
+ }
+
+ return NULL;
}
Track *TrackListIterator::First(TrackList * val)
{
- if (val != NULL)
+ if (val != NULL) {
l = val;
+ }
- if (l == NULL)
+ if (l == NULL) {
return NULL;
+ }
cur = l->head;
- if (cur)
+ if (cur) {
return cur->t;
- else
+ }
+
+ return NULL;
+}
+
+Track *TrackListIterator::Last()
+{
+ if (l == NULL) {
return NULL;
+ }
+
+ cur = l->tail;
+
+ if (cur) {
+ return cur->t;
+ }
+
+ return NULL;
}
-Track *TrackListIterator::Next( bool SkipLinked )
+Track *TrackListIterator::Next(bool SkipLinked)
{
#ifdef DEBUG_TLI // if we are debugging this bit
wxASSERT_MSG((!cur || (*l).Contains((*cur).t)), wxT("cur invalid at start of Next(). List changed since iterator created?")); // check that cur is in the list
#endif
- if (SkipLinked && cur && cur->t->GetLinked())
+
+ if (SkipLinked && cur && cur->t->GetLinked()) {
cur = cur->next;
+ }
+
#ifdef DEBUG_TLI // if we are debugging this bit
wxASSERT_MSG((!cur || (*l).Contains((*cur).t)), wxT("cur invalid after skipping linked tracks.")); // check that cur is in the list
#endif
- if (cur)
+ if (cur) {
cur = cur->next;
+ }
#ifdef DEBUG_TLI // if we are debugging this bit
wxASSERT_MSG((!cur || (*l).Contains((*cur).t)), wxT("cur invalid after moving to next track.")); // check that cur is in the list if it is not null
#endif
- if (cur)
+ if (cur) {
return cur->t;
- else
- return NULL;
+ }
+
+ return NULL;
}
-Track *TrackListIterator::RemoveCurrent()
+Track *TrackListIterator::RemoveCurrent(bool deletetrack)
{
- TrackListNode *p = cur;
- TrackListNode *next = p->next;
-
- // Remove p from the linked list
- if (p->prev)
- p->prev->next = next;
- else
- l->head = next;
-
- if (next)
- next->prev = p->prev;
- else
- l->tail = p->prev;
-
- delete p;
+ TrackListNode *next = cur->next;
+ l->Remove(cur->t, deletetrack);
+
cur = next;
+
#ifdef DEBUG_TLI // if we are debugging this bit
wxASSERT_MSG((!cur || (*l).Contains((*cur).t)), wxT("cur invalid after deletion of track.")); // check that cur is in the list
#endif
- if (cur)
+ if (cur) {
return cur->t;
- else
+ }
+
+ return NULL;
+}
+
+Track *TrackListIterator::ReplaceCurrent(Track *t)
+{
+ Track *p = NULL;
+
+ if (cur) {
+ p = cur->t;
+ p->SetOwner(NULL, NULL);
+
+ cur->t = t;
+ t->SetOwner(l, cur);
+ l->RecalcPositions(cur);
+ l->UpdatedEvent(cur);
+ l->ResizedEvent(cur);
+ }
+
+ return p;
+}
+
+// TrackListOfKindIterator
+TrackListOfKindIterator::TrackListOfKindIterator(int kind, TrackList * val)
+: TrackListIterator(val)
+{
+ this->kind = kind;
+}
+
+Track *TrackListOfKindIterator::First(TrackList * val)
+{
+ Track *t = TrackListIterator::First(val);
+
+ while (t && (kind != Track::All && t->GetKind() != kind)) {
+ t = TrackListIterator::Next();
+ }
+
+ return t;
+}
+
+Track *TrackListOfKindIterator::Next(bool skiplinked)
+{
+ while (Track *t = TrackListIterator::Next(skiplinked)) {
+ if (t->GetKind() == kind || kind == Track::All) {
+ return t;
+ }
+ }
+
+ return NULL;
+}
+
+//SelectedTrackListOfKindIterator
+Track *SelectedTrackListOfKindIterator::First(TrackList * val)
+{
+ Track *t = TrackListOfKindIterator::First(val);
+
+ while (t && !t->GetSelected()) {
+ t = TrackListOfKindIterator::Next();
+ }
+
+ return t;
+}
+
+Track *SelectedTrackListOfKindIterator::Next(bool skiplinked)
+{
+ while (Track *t = TrackListOfKindIterator::Next(skiplinked)) {
+ if (t->GetSelected()) {
+ return t;
+ }
+ }
+
+ return NULL;
+}
+
+// VisibleTrackIterator
+//
+// Based on TrackListIterator returns only the currently visible tracks.
+//
+VisibleTrackIterator::VisibleTrackIterator(AudacityProject *project)
+: TrackListIterator(project->GetTracks())
+{
+ mProject = project;
+ mPanelRect.SetTop(mProject->mViewInfo.vpos);
+ mPanelRect.SetSize(mProject->TP_GetTracksUsableArea());
+}
+
+Track *VisibleTrackIterator::First()
+{
+ Track *t = mProject->GetFirstVisible();
+ if (!t) {
return NULL;
+ }
+
+ TrackListIterator::StartWith(t);
+
+ return t;
}
-// TrackList
-TrackList::TrackList()
+Track *VisibleTrackIterator::Next(bool skiplinked)
{
- head = 0;
- tail = 0;
+ Track *t = TrackListIterator::Next(skiplinked);
+ if (!t) {
+ return NULL;
+ }
+
+ wxRect r(0, t->GetY(), 1, t->GetHeight());
+ if (r.Intersects(mPanelRect)) {
+ return t;
+ }
+
+ return NULL;
+}
+
+// TrackGroupIterator
+//
+// Based on TrackListIterator returns only tracks belonging to the group
+// in which the starting track is a member.
+//
+TrackGroupIterator::TrackGroupIterator(TrackList * val)
+: TrackListIterator(val)
+{
+ mEndOfGroup = false;
}
-TrackList::TrackList(TrackList * list)
+Track *TrackGroupIterator::First(Track * member)
{
- head = 0;
- tail = 0;
+ Track *t = NULL;
+
+ // Scan forward for a label track
+ while (member && member->GetKind() == Track::Wave) {
+ member = l->GetNext(member);
+ }
- TrackListIterator iter(list);
+ // It's not part of a group if one wasn't found
+ if (!member || member->GetKind() != Track::Label) {
+ return NULL;
+ }
- Track *t = iter.First();
- while (t) {
- Add(t);
- t = iter.Next();
+ // Find first wave track in the group
+ member = l->GetPrev(member);
+ while (member && member->GetKind() == Track::Wave) {
+ t = member;
+ member = l->GetPrev(member);
}
+
+ // Make it current
+ if (t)
+ cur = (TrackListNode *) t->GetNode();
+
+ return t;
}
-TrackList::~TrackList()
+Track *TrackGroupIterator::Next(bool skiplinked)
{
- Clear();
+ Track *t = TrackListIterator::Next(skiplinked);
+
+ // End of the group has been reached
+ if (!t || mEndOfGroup) {
+ return NULL;
+ }
+
+ // Found the end of the group, so signal for next iteration
+ if (t->GetKind() == Track::Label) {
+ mEndOfGroup = true;
+ }
+
+ return t;
}
-double TrackList::GetMinOffset() const
+// TrackAndGroupIterator
+//
+// Based on TrackListIterator has methods to retrieve both tracks and groups
+//
+TrackAndGroupIterator::TrackAndGroupIterator(TrackList * val)
+: TrackListIterator(val)
{
- if (IsEmpty())
- return 0.0;
+}
- double len = head->t->GetOffset();
- ConstTrackListIterator iter(this);
+Track *TrackAndGroupIterator::NextGroup(bool skiplinked)
+{
+ if (!cur)
+ return NULL;
- for (Track *t = iter.First(); t; t = iter.Next()) {
- double l = t->GetOffset();
- if (l < len)
- len = l;
+ Track* t = cur->t;
+
+ if (t->GetKind() == Track::Label) {
+ // the next group when we have a LabelTrack is the next track
+ return TrackListIterator::Next(skiplinked);
}
- return len;
+ TrackGroupIterator git(l);
+ if (git.First(t) == NULL) {
+ //not part of a group
+ return TrackListIterator::Next(skiplinked);
+ }
+
+ //skip the remaining tracks of the current group
+ for (; t != NULL && t->GetKind() != Track::Label; t = TrackListIterator::Next(skiplinked) );
+
+ if (t) {
+ //Reached final Label track, let's go to the next group
+ t = TrackListIterator::Next(skiplinked);
+ }
+
+ return t;
}
-int TrackList::GetHeight() const
+// TrackList
+//
+// The TrackList sends itself events whenever an update occurs to the list it
+// is managing. Any other classes that may be interested in get these updates
+// should use TrackList::Connect() and TrackList::Disconnect().
+//
+DEFINE_EVENT_TYPE(EVT_TRACKLIST_RESIZED);
+DEFINE_EVENT_TYPE(EVT_TRACKLIST_UPDATED);
+
+TrackList::TrackList()
+: wxEvtHandler()
{
- int height = 0;
+ head = NULL;
+ tail = NULL;
+}
- ConstTrackListIterator iter(this);
+TrackList::~TrackList()
+{
+ Clear();
+}
- for (Track *t = iter.First(); t; t = iter.Next())
- height += t->GetHeight();
+void TrackList::RecalcPositions(const TrackListNode *node)
+{
+ Track *t;
+ int i = 0;
+ int y = 0;
- return height;
+ if (!node) {
+ return;
+ }
+
+ if (node->prev) {
+ t = node->prev->t;
+ i = t->GetIndex() + 1;
+ y = t->GetY() + t->GetHeight();
+ }
+
+ for (const TrackListNode *n = node; n; n = n->next) {
+ t = n->t;
+ t->SetIndex(i++);
+ t->SetY(y);
+ y += t->GetHeight();
+ }
+}
+
+void TrackList::UpdatedEvent(const TrackListNode *node)
+{
+ wxCommandEvent e(EVT_TRACKLIST_UPDATED);
+ if (node) {
+ e.SetClientData(node->t);
+ }
+ else {
+ e.SetClientData(NULL);
+ }
+ ProcessEvent(e);
+}
+
+void TrackList::ResizedEvent(const TrackListNode *node)
+{
+ if (node) {
+ wxCommandEvent e(EVT_TRACKLIST_RESIZED);
+ e.SetClientData(node->t);
+ ProcessEvent(e);
+ }
}
void TrackList::Add(Track * t)
{
TrackListNode *n = new TrackListNode();
+ t->SetOwner(this, n);
+
n->t = (Track *) t;
n->prev = tail;
- n->next = 0;
- if (tail)
+ n->next = NULL;
+
+ if (tail) {
tail->next = n;
+ }
tail = n;
- if (!head)
+
+ if (!head) {
head = n;
+ }
+
+ RecalcPositions(n);
+ UpdatedEvent(n);
}
void TrackList::AddToHead(Track * t)
{
TrackListNode *n = new TrackListNode();
+ t->SetOwner(this, n);
+
n->t = (Track *) t;
- n->prev = 0;
+ n->prev = NULL;
n->next = head;
- if (head)
+
+ if (head) {
head->prev = n;
+ }
head = n;
- if (!tail)
+
+ if (!tail) {
tail = n;
+ }
+
+ RecalcPositions(head);
+ UpdatedEvent(n);
+ ResizedEvent(n);
}
-// TODO: Removing a track does not free the track resources.
-void TrackList::Remove(Track * t)
+void TrackList::Replace(Track * t, Track * with, bool deletetrack)
{
- TrackListNode *p = head;
- while (p) {
- if (p->t == t) {
- // Remove p from the linked list
+ if (t && with) {
+ TrackListNode *node = (TrackListNode *) t->GetNode();
- if (p->prev)
- p->prev->next = p->next;
- else
- head = p->next;
+ t->SetOwner(NULL, NULL);
+ if (deletetrack) {
+ delete t;
+ }
- if (p->next)
- p->next->prev = p->prev;
- else
- tail = p->prev;
+ node->t = with;
+ with->SetOwner(this, node);
+ RecalcPositions(node);
+ UpdatedEvent(node);
+ ResizedEvent(node);
+ }
+}
- delete p;
+void TrackList::Remove(Track * t, bool deletetrack)
+{
+ if (t) {
+ TrackListNode *node = (TrackListNode *) t->GetNode();
- return;
+ t->SetOwner(NULL, NULL);
+ if (deletetrack) {
+ delete t;
+ }
+
+ if (node) {
+ if (node->prev) {
+ node->prev->next = node->next;
+ }
+ else {
+ head = node->next;
+ }
+
+ if (node->next) {
+ node->next->prev = node->prev;
+ RecalcPositions(node->next);
+ }
+ else {
+ tail = node->prev;
+ }
+
+ UpdatedEvent(NULL);
+ ResizedEvent(node->next);
+
+ delete node;
}
- p = p->next;
}
}
@@ -328,137 +683,122 @@ void TrackList::Clear(bool deleteTracks /* = false */)
{
while (head) {
TrackListNode *temp = head;
- if (deleteTracks)
- {
+
+ head->t->SetOwner(NULL, NULL);
+ if (deleteTracks) {
delete head->t;
}
+
head = head->next;
delete temp;
}
- tail = 0;
+ tail = NULL;
+
+ UpdatedEvent(NULL);
}
void TrackList::Select(Track * t, bool selected /* = true */ )
{
- TrackListNode *p = head;
- while (p) {
- if (p->t == t) {
+ if (t) {
+ const TrackListNode *node = t->GetNode();
+ if (node) {
t->SetSelected(selected);
- if (t->GetLinked() && p->next)
- p->next->t->SetSelected(selected);
- else if (p->prev && p->prev->t->GetLinked())
- p->prev->t->SetSelected(selected);
-
- return;
+ if (t->GetLinked() && node->next) {
+ node->next->t->SetSelected(selected);
+ }
+ else if (node->prev && node->prev->t->GetLinked()) {
+ node->prev->t->SetSelected(selected);
+ }
}
- p = p->next;
}
}
-
Track *TrackList::GetLink(Track * t) const
{
- TrackListNode *p = head;
- while (p) {
- if (p->t == t) {
- if (t->GetLinked() && p->next)
- return p->next->t;
- else if (p->prev && p->prev->t->GetLinked())
- return p->prev->t;
-
- return NULL;
- }
- p = p->next;
+ if (t) {
+ return t->GetLink();
}
+
return NULL;
}
-Track *TrackList::GetNext(Track * t, bool linked ) const
+Track *TrackList::GetNext(Track * t, bool linked) const
{
- TrackListNode *p = head;
- while (p) {
- if (p->t == t) {
- if (linked && t->GetLinked() && p->next)
- p = p->next;
- if (p && p->next)
- return p->next->t;
- else
- return NULL;
+ if (t) {
+ const TrackListNode *node = t->GetNode();
+ if (node) {
+ if (linked && t->GetLinked()) {
+ node = node->next;
+ }
+
+ if (node) {
+ node = node->next;
+ }
+
+ if (node) {
+ return node->t;
+ }
}
- p = p->next;
}
+
return NULL;
}
-Track *TrackList::GetPrev(Track * t, bool linked ) const
+Track *TrackList::GetPrev(Track * t, bool linked) const
{
- TrackListNode *p = head;
- while (p) {
- if (p->t == t) {
- if (linked && p->prev && p->prev->prev && p->prev->prev->t->GetLinked())
- p = p->prev;
- if (p && p->prev)
- return p->prev->t;
- else
- return NULL;
+ if (t) {
+ const TrackListNode *node = t->GetNode();
+ if (node) {
+ if (linked) {
+ // Input track second in team?
+ if (!t->GetLinked() && t->GetLink()) {
+ // Make it the first
+ node = node->prev;
+ }
+
+ // Get the previous node
+ node = node->prev;
+
+ // Bump back to start of team
+ if (node && node->t->GetLink()) {
+ node = node->prev;
+ }
+ }
+ else {
+ node = node->prev;
+ }
+
+ if (node) {
+ return node->t;
+ }
}
- p = p->next;
}
+
return NULL;
}
/// For mono track height of track
/// For stereo track combined height of track and linked track.
-/// Assumes we are on the first track of the pair.
-int TrackList::GetGroupHeight( Track*t ) const
+int TrackList::GetGroupHeight(Track * t) const
{
- wxASSERT( t );
- int height=t->GetHeight();
- if( !t->GetLinked() )
- return height;
+ int height = t->GetHeight();
- TrackListNode *p = head;
- while (p) {
- if (p->t == t) {
- if( p->next )
- return height + p->next->t->GetHeight();
- }
- p = p->next;
+ t = t->GetLink();
+ if (t) {
+ height += t->GetHeight();
}
- wxASSERT( false );
- return 0;
+
+ return height;
}
bool TrackList::CanMoveUp(Track * t) const
{
- TrackListNode *p = head;
- while (p) {
- if (p->t == t) {
- if (p->prev && p->prev->t->GetLinked())
- return CanMoveUp(p->prev->t);
- else if (p->prev)
- return true;
- else
- return false;
- }
- p = p->next;
- }
- return false;
+ return GetPrev(t, true) != NULL;
}
bool TrackList::CanMoveDown(Track * t) const
{
- TrackListNode *p = head;
- while (p) {
- if (p->t == t) {
- if (t->GetLinked())
- return (p->next != NULL && p->next->next != NULL);
- else
- return (p->next != NULL);
- }
- p = p->next;
- }
- return false;
+ return GetNext(t, true) != NULL;
}
// Precondition: if either of s1 or s2 are "linked", then
@@ -471,6 +811,7 @@ bool TrackList::CanMoveDown(Track * t) const
// in one of the tracks.
void TrackList::Swap(TrackListNode * s1, TrackListNode * s2)
{
+ Track *link;
Track *source[4];
TrackListNode *target[4];
@@ -478,12 +819,24 @@ void TrackList::Swap(TrackListNode * s1, TrackListNode * s2)
wxASSERT(s1);
wxASSERT(s2);
+ // Deal with firat track in each team
+ link = s1->t->GetLink();
+ if (!s1->t->GetLinked() && link) {
+ s1 = (TrackListNode *) link->GetNode();
+ }
+
+ link = s2->t->GetLink();
+ if (!s2->t->GetLinked() && link) {
+ s2 = (TrackListNode *) link->GetNode();
+ }
+
target[0] = s1;
source[0] = target[0]->t;
if (source[0]->GetLinked()) {
target[1] = target[0]->next;
source[1] = target[1]->t;
- } else {
+ }
+ else {
target[1] = NULL;
source[1] = NULL;
}
@@ -493,7 +846,8 @@ void TrackList::Swap(TrackListNode * s1, TrackListNode * s2)
if (source[2]->GetLinked()) {
target[3] = target[2]->next;
source[3] = target[3]->t;
- } else {
+ }
+ else {
target[3] = NULL;
source[3] = NULL;
}
@@ -502,81 +856,44 @@ void TrackList::Swap(TrackListNode * s1, TrackListNode * s2)
for (int t = 0; t < 4; t++) {
if (target[t]) {
target[t]->t = source[s];
+ target[t]->t->SetOwner(NULL, NULL);
+ target[t]->t->SetOwner(this, target[t]);
+
s = (s + 1) % 4;
- if (!source[s])
+ if (!source[s]) {
s = (s + 1) % 4;
+ }
}
}
+
+ RecalcPositions(s1);
+ UpdatedEvent(s1);
+ ResizedEvent(s1);
}
bool TrackList::MoveUp(Track * t)
{
- TrackListNode *p = head;
- while (p) {
- // iterate over all tracks in the list
- if (p->t == t) {
- // this is the track passed in
- TrackListNode *second = p;
- // handle the case where the track passed is second of a linked pair
- // by changing second to be the first of the pair
- if (second->prev && second->prev->t->GetLinked())
- second = second->prev;
-
- TrackListNode *first = second->prev;
- if (!first)
- return false; // if no previous track
- if (first->prev && first->prev->t->GetLinked())
- first = first->prev; // if previous is 2nd of linked pair, then
- // move before first of linked pair. Must always work because
- // previous can only be second of linked pair if there is a first
- // track in the linked pair.
- // swap the two tracks over in the list
- Swap(first, second);
-
+ if (t) {
+ Track *p = GetPrev(t, true);
+ if (p) {
+ Swap((TrackListNode *)p->GetNode(), (TrackListNode *)t->GetNode());
return true;
}
- p = p->next;
}
+
return false;
}
bool TrackList::MoveDown(Track * t)
{
- TrackListNode *p = head;
- while (p) {
- // this while loop iterates over all tracks looking for the passed
- // argument, t
- if (p->t == t) {
- // this if triggers when we find the track we were passed
- TrackListNode *first = p;
- // if there is a previous track, and that track is linked to this one,
- // move current track pointer back to that track. This avoids trying
- // to move the bottom track of a linked pair.
- if (first->prev && first->prev->t->GetLinked())
- first = first->prev;
-
- TrackListNode *second;
- if (!p->next)
- return false; // exit if there is no next track
- if (p->t->GetLinked())
- { // if next track is part of linked pair
- if (p->next->next)
- { // if track after next exists
- second = p->next->next; // use it
- }
- else
- { // there isn't anything after the linked track!
- return false;
- }
- }
- else
- second = p->next; // Just normal next track exists, so move down one
-
- Swap(first, second);
+ if (t) {
+ Track *n = GetNext(t, true);
+ if (n) {
+ Swap((TrackListNode *)t->GetNode(), (TrackListNode *)n->GetNode());
return true;
}
- p = p->next;
}
+
return false;
}
@@ -584,8 +901,9 @@ bool TrackList::Contains(Track * t) const
{
TrackListNode *p = head;
while (p) {
- if (p->t == t)
+ if (p->t == t) {
return true;
+ }
p = p->next;
}
return false;
@@ -596,12 +914,24 @@ bool TrackList::IsEmpty() const
return (head == NULL);
}
+int TrackList::GetCount() const
+{
+ int cnt = 0;
+
+ if (tail) {
+ cnt = tail->t->GetIndex() + 1;
+ }
+
+ return cnt;
+}
+
TimeTrack *TrackList::GetTimeTrack()
{
TrackListNode *p = head;
while (p) {
- if (p->t->GetKind() == Track::Time)
+ if (p->t->GetKind() == Track::Time) {
return (TimeTrack *)p->t;
+ }
p = p->next;
}
return NULL;
@@ -615,9 +945,9 @@ int TrackList::GetNumExportChannels(bool selectionOnly)
int numMono = 0;
/* track iteration kit */
Track *tr;
- TrackListIterator mIterator;
+ TrackListIterator iter;
- for (tr = mIterator.First(this); tr != NULL; tr = mIterator.Next()) {
+ for (tr = iter.First(this); tr != NULL; tr = iter.Next()) {
// Only want wave tracks
if (tr->GetKind() != Track::Wave) {
@@ -625,9 +955,9 @@ int TrackList::GetNumExportChannels(bool selectionOnly)
}
// do we only want selected ones?
- if ( selectionOnly && !(tr->GetSelected()))
- { //want selected but this one is not
- continue;
+ if (selectionOnly && !(tr->GetSelected())) {
+ //want selected but this one is not
+ continue;
}
// Found a left channel
@@ -660,14 +990,13 @@ int TrackList::GetNumExportChannels(bool selectionOnly)
}
}
}
+
// if there is stereo content, report 2, else report 1
if (numRight > 0 || numLeft > 0) {
return 2;
}
- else
- {
- return 1;
- }
+
+ return 1;
}
void TrackList::GetWaveTracks(bool selectionOnly,
@@ -679,8 +1008,9 @@ void TrackList::GetWaveTracks(bool selectionOnly,
TrackListNode *p = head;
while (p) {
if (p->t->GetKind() == Track::Wave && !(p->t->GetMute()) &&
- (p->t->GetSelected() || !selectionOnly))
+ (p->t->GetSelected() || !selectionOnly)) {
(*num)++;
+ }
p = p->next;
}
@@ -689,8 +1019,9 @@ void TrackList::GetWaveTracks(bool selectionOnly,
i = 0;
while (p) {
if (p->t->GetKind() == Track::Wave && !(p->t->GetMute()) &&
- (p->t->GetSelected() || !selectionOnly))
+ (p->t->GetSelected() || !selectionOnly)) {
(*tracks)[i++] = (WaveTrack *)p->t;
+ }
p = p->next;
}
}
@@ -702,11 +1033,13 @@ WaveTrackArray TrackList::GetWaveTrackArray(bool selectionOnly)
TrackListNode *p = head;
while (p) {
if (p->t->GetKind() == Track::Wave &&
- (p->t->GetSelected() || !selectionOnly))
+ (p->t->GetSelected() || !selectionOnly)) {
waveTrackArray.Add((WaveTrack*)p->t);
+ }
p = p->next;
}
+
return waveTrackArray;
}
@@ -718,125 +1051,62 @@ NoteTrackArray TrackList::GetNoteTrackArray(bool selectionOnly)
TrackListNode *p = head;
while (p) {
if (p->t->GetKind() == Track::Note &&
- (p->t->GetSelected() || !selectionOnly))
+ (p->t->GetSelected() || !selectionOnly)) {
noteTrackArray.Add((NoteTrack*)p->t);
+ }
p = p->next;
}
+
return noteTrackArray;
}
#endif
-#ifdef new
-#undef new
-#endif
+int TrackList::GetHeight() const
+{
+ int height = 0;
-#include <map>
-#include "BlockFile.h"
-#include "Sequence.h"
-
-// get the sum of the sizes of all blocks this track list
-// references. However, if a block is referred to multiple
-// times it is only counted once. Return value is in bytes
-wxLongLong TrackList::GetSpaceUsage()
-{
- // the map guarantees that I only count each block once
- std::map<BlockFile*,wxLongLong> blockFiles;
- for (TrackListNode *p = head; p; p = p->next) {
- if (p->t->GetKind() == Track::Wave) {
- WaveTrack* track = ((WaveTrack*)p->t);
- for (WaveClipList::Node* it=track->GetClipIterator(); it; it=it->GetNext())
- {
- WaveClip* clip = it->GetData();
- BlockArray *blocks = clip->GetSequenceBlockArray();
- for (unsigned int i = 0; i < blocks->GetCount(); i++)
- blockFiles[blocks->Item(i)->f] = blocks->Item(i)->f->GetSpaceUsage();
- }
- }
+ if (tail) {
+ const Track *t = tail->t;
+ height = t->GetY() + t->GetHeight();
}
- std::map<BlockFile*,wxLongLong>::const_iterator bfIter;
- wxLongLong bytes = 0;
- for (bfIter = blockFiles.begin(); bfIter != blockFiles.end(); bfIter++)
- bytes += bfIter->second;
-
- return bytes;
+ return height;
}
-#include <set>
-#include "UndoManager.h"
-// Find out how much additional space was used to execute
-// this operation.
-//
-// Computed by getting a list of all blocks referenced by
-// *this* TrackList and removing all blocks referenced by
-// any previous TrackList.
-wxLongLong TrackList::GetAdditionalSpaceUsage(UndoStack *stack)
-{
- TrackListNode *p;
- // get a map of all blocks referenced in this TrackList
- std::map<BlockFile*,wxLongLong> curBlockFiles;
- for (p = head; p; p = p->next) {
- if (p->t->GetKind() == Track::Wave) {
- WaveTrack* track = ((WaveTrack*)p->t);
- for (WaveClipList::Node* it=track->GetClipIterator(); it; it=it->GetNext())
- {
- WaveClip* clip = it->GetData();
- BlockArray *blocks = clip->GetSequenceBlockArray();
- for (unsigned int i = 0; i < blocks->GetCount(); i++)
- curBlockFiles[blocks->Item(i)->f] = blocks->Item(i)->f->GetSpaceUsage();
- }
- }
+double TrackList::GetMinOffset() const
+{
+ const TrackListNode *node = head;
+ if (!node) {
+ return 0.0;
}
- // get a set of all blocks referenced in all prev TrackList
- std::set<BlockFile*> prevBlockFiles;
- unsigned int undoStackIdx = 0;
- for (; undoStackIdx < stack->GetCount(); undoStackIdx++) {
- UndoStackElem *stackElem = stack->Item(undoStackIdx);
- if (stackElem->tracks == this)
- break;
- for (p = stackElem->tracks->head; p; p = p->next) {
- if (p->t->GetKind() == Track::Wave) {
- WaveTrack* track = ((WaveTrack*)p->t);
- for (WaveClipList::Node* it=track->GetClipIterator(); it; it=it->GetNext())
- {
- WaveClip* clip = it->GetData();
- BlockArray *blocks = clip->GetSequenceBlockArray();
- for (unsigned int i = 0; i < blocks->GetCount(); i++)
- prevBlockFiles.insert(blocks->Item(i)->f);
- }
- }
+ double len = node->t->GetOffset();
+
+ while (node = node->next) {
+ double l = node->t->GetOffset();
+ if (l < len) {
+ len = l;
}
}
-
- // remove all blocks in prevBlockFiles from curBlockFiles
- std::set<BlockFile*>::const_iterator prevIter = prevBlockFiles.begin();
- for (; prevIter != prevBlockFiles.end(); prevIter++)
- curBlockFiles.erase(*prevIter);
-
- // sum the sizes of the blocks remaining in curBlockFiles;
- std::map<BlockFile*,wxLongLong>::const_iterator curBfIter =
- curBlockFiles.begin();
- wxLongLong bytes = 0;
- for (;curBfIter != curBlockFiles.end(); curBfIter++)
- bytes += curBfIter->second;
-
- return bytes;
+
+ return len;
}
double TrackList::GetStartTime() const
{
- if (IsEmpty())
+ const TrackListNode *node = head;
+ if (!node) {
return 0.0;
-
- double min = head->t->GetStartTime(); // head->t should be APIfied
- ConstTrackListIterator iter(this);
-
- for (Track *t = iter.First(); t; t = iter.Next()) {
- double l = t->GetStartTime();
- if (l < min)
+ }
+
+ double min = node->t->GetStartTime();
+
+ while (node = node->next) {
+ double l = node->t->GetStartTime();
+ if (l < min) {
min = l;
+ }
}
return min;
@@ -844,18 +1114,20 @@ double TrackList::GetStartTime() const
double TrackList::GetEndTime() const
{
- if (IsEmpty())
+ const TrackListNode *node = head;
+ if (!node) {
return 0.0;
-
- double max = head->t->GetEndTime();
- ConstTrackListIterator iter(this);
-
- for (Track *t = iter.First(); t; t = iter.Next()) {
- double l = t->GetEndTime();
- if (l > max)
+ }
+
+ double max = node->t->GetEndTime();
+
+ while (node = node->next) {
+ double l = node->t->GetEndTime();
+ if (l > max) {
max = l;
+ }
}
-
+
return max;
}
diff --git a/src/Track.h b/src/Track.h
index 8037ae4..2ef1842 100644
--- a/src/Track.h
+++ b/src/Track.h
@@ -12,14 +12,16 @@
#define __AUDACITY_TRACK__
#include "Audacity.h"
-#include <wx/string.h>
+
#include <wx/dynarray.h>
+#include <wx/event.h>
+#include <wx/gdicmn.h>
#include <wx/longlong.h>
+#include <wx/string.h>
+#include "Experimental.h"
#include "SampleFormat.h"
#include "xml/XMLTagHandler.h"
-#include "Experimental.h"
-#include <wx/gdicmn.h>
#ifdef __WXMSW__
#pragma warning(disable:4284)
@@ -31,27 +33,35 @@ class UndoStack;
class LabelTrack;
class TimeTrack;
class WaveTrack;
+class AudacityProject;
-WX_DEFINE_ARRAY(WaveTrack*, WaveTrackArray);
+WX_DEFINE_USER_EXPORTED_ARRAY(WaveTrack*, WaveTrackArray, class AUDACITY_DLL_API);
#if defined(USE_MIDI)
class NoteTrack;
WX_DEFINE_ARRAY(NoteTrack*, NoteTrackArray);
#endif
-class AUDACITY_DLL_API Track: public XMLTagHandler {
+class TrackList;
+struct TrackListNode;
+
+class AUDACITY_DLL_API Track: public XMLTagHandler
+{
// To be TrackDisplay
protected:
- int mHeight;
- wxString mName;
- wxString mDefaultName;
+ TrackList *mList;
+ TrackListNode *mNode;
+ int mIndex;
+ int mY;
+ int mHeight;
+ wxString mName;
+ wxString mDefaultName;
- bool mSelected;
+ bool mSelected;
- bool mLinked;
- bool mTeamed;
- bool mMinimized;
+ bool mLinked;
+ bool mMinimized;
public:
wxSize vrulerSize;
@@ -59,11 +69,21 @@ class AUDACITY_DLL_API Track: public XMLTagHandler {
// This just returns a constant and can be overriden by subclasses
// to specify a different height for the case that the track is minimized.
virtual int GetMinimizedHeight() const;
-
+ int GetActualHeight() { return mHeight; };
+
+ int GetIndex() const;
+ void SetIndex(int index);
+ int GetY() const;
+ void SetY(int y);
int GetHeight() const;
- void SetHeight( int h ) { mHeight = h; }
- bool GetMinimized() const { return mMinimized; }
- void SetMinimized(bool isMinimized) { mMinimized = isMinimized; }
+ void SetHeight(int h);
+ bool GetMinimized() const;
+ void SetMinimized(bool isMinimized);
+
+ Track *GetLink() const;
+
+ const TrackListNode *GetNode();
+ void SetOwner(TrackList *list, TrackListNode *node);
// Keep in Track
@@ -77,20 +97,23 @@ class AUDACITY_DLL_API Track: public XMLTagHandler {
public:
- enum {
+ enum
+ {
LeftChannel = 0,
RightChannel = 1,
MonoChannel = 2
};
- enum {
+ enum
+ {
None,
Wave,
#if defined(USE_MIDI)
Note,
#endif
Label,
- Time
+ Time,
+ All
} TrackKindEnum;
Track(DirManager * projDirManager);
@@ -113,13 +136,11 @@ class AUDACITY_DLL_API Track: public XMLTagHandler {
bool GetSelected() const { return mSelected; }
bool GetMute () const { return mMute; }
bool GetLinked () const { return mLinked; }
- bool GetTeamed () const { return mTeamed; }
bool GetSolo () const { return mSolo; }
void SetSelected(bool s) { mSelected = s; }
void SetMute (bool m) { mMute = m; }
- void SetLinked (bool l) { mLinked = l; mTeamed = l; }
- void SetTeamed (bool l) { mTeamed = l; mLinked = false; }
+ void SetLinked (bool l) { mLinked = l; }
void SetSolo (bool s) { mSolo = s; }
int GetChannel() const { return mChannel; }
@@ -160,153 +181,230 @@ class AUDACITY_DLL_API Track: public XMLTagHandler {
virtual double GetEndTime() { return 0.0; }
};
-struct TrackListNode {
+struct TrackListNode
+{
Track *t;
TrackListNode *next;
TrackListNode *prev;
};
-class TrackList;
-
-class AUDACITY_DLL_API TrackListIterator {
+class AUDACITY_DLL_API TrackListIterator
+{
public:
- TrackListIterator(TrackList * val = NULL);
-
- // Iterate functions
- Track *First(TrackList * val = NULL);
- Track *Next(bool SkipLinked = false);
- Track *RemoveCurrent(); // returns next
+ TrackListIterator(TrackList * val = NULL);
+ virtual ~TrackListIterator() {};
- Track *Last();
+ // Iterate functions
+ virtual Track *First(TrackList * val = NULL);
+ virtual Track *StartWith(Track * val);
+ virtual Track *Next(bool skiplinked = false);
+ virtual Track *Last();
+
+ Track *ReplaceCurrent(Track *t); // returns original
+ Track *RemoveCurrent(bool deletetrack = false); // returns next
+ protected:
+ TrackList *l;
+ TrackListNode *cur;
+};
+
+//
+// TrackListOfKindIterator
+//
+// Based on TrackListIterator and returns only tracks of the specified type.
+//
+class AUDACITY_DLL_API TrackListOfKindIterator: public TrackListIterator
+{
+ public:
+ TrackListOfKindIterator(int kind, TrackList * val = NULL);
+ virtual ~TrackListOfKindIterator() {};
+
+ // Iterate functions
+ Track *First(TrackList * val = NULL);
+ Track *Next(bool skiplinked = false);
+
+ private:
+ int kind;
+};
+
+//
+// SelectedTrackListOfKindIterator
+//
+// Based on TrackListOfKindIterator and returns only tracks selected.
+//
+class AUDACITY_DLL_API SelectedTrackListOfKindIterator: public TrackListOfKindIterator
+{
+ public:
+ SelectedTrackListOfKindIterator(int kind, TrackList * val = NULL) : TrackListOfKindIterator(kind, val) {};
+ virtual ~SelectedTrackListOfKindIterator() {};
+
+ // Iterate functions
+ Track *First(TrackList * val = NULL);
+ Track *Next(bool skiplinked = false);
+
private:
- TrackList * l;
- TrackListNode *cur;
+ int kind;
+};
+
+//
+// VisibleTrackIterator
+//
+// Based on TrackListIterator returns only the currently visible tracks.
+//
+class AUDACITY_DLL_API VisibleTrackIterator: public TrackListIterator
+{
+ public:
+ VisibleTrackIterator(AudacityProject *project);
+ virtual ~VisibleTrackIterator() {};
+
+ // Iterate functions
+ Track *First();
+ Track *Next(bool skiplinked = false);
+
+ private:
+ AudacityProject *mProject;
+ wxRect mPanelRect;
+};
+
+//
+// TrackGroupIterator
+//
+// Based on TrackListIterator returns only tracks belonging to the group
+// in which the starting track is a member.
+//
+class AUDACITY_DLL_API TrackGroupIterator: public TrackListIterator
+{
+ public:
+ TrackGroupIterator(TrackList * val);
+ virtual ~TrackGroupIterator() {};
+
+ // Iterate functions
+ Track *First(Track *member);
+ Track *Next(bool skiplinked = false);
+
+ private:
+ bool mEndOfGroup;
+};
+
+//
+// TrackAndGroupIterator
+//
+// Based on TrackListIterator has methods to retrieve both tracks and groups
+//
+class AUDACITY_DLL_API TrackAndGroupIterator: public TrackListIterator
+{
+ public:
+ TrackAndGroupIterator(TrackList * val);
+
+ // Iterate functions
+ Track *NextGroup(bool skiplinked = false);
};
/** \brief TrackList is a flat linked list of tracks supporting Add, Remove,
* Clear, and Contains, plus serialization of the list of tracks.
*/
-class AUDACITY_DLL_API TrackList {
+
+// Posted when the horizontal positions within tracks have beed updated. The
+// wxCommandEvent::GetClientData() method can be used to retrieve the first
+// track that was updated. All positions following that track will have been
+// updated as well.
+DECLARE_EXPORTED_EVENT_TYPE(AUDACITY_DLL_API, EVT_TRACKLIST_RESIZED, -1);
+
+// Posted when tracks have been added or deleted from a tracklist. The pointer
+// wxCommandEvent::GetClientData() returns will be NULL for deletions or the
+// track that was added.
+DECLARE_EXPORTED_EVENT_TYPE(AUDACITY_DLL_API, EVT_TRACKLIST_UPDATED, -1);
+
+class AUDACITY_DLL_API TrackList:public wxEvtHandler
+{
public:
- // Create an empty TrackList
- TrackList();
-
- // Copy constructor
- TrackList(TrackList * t);
-
- // Destructor
- virtual ~TrackList();
-
- friend class TrackListIterator;
- friend class ConstTrackListIterator;
-
- /// Add a this Track or all children of this TrackGroup
- void Add(Track * t);
- void AddToHead(Track * t);
-
- /// Remove this Track or all children of this TrackGroup
- void Remove(Track * t);
-
- /// Make the list empty
- void Clear(bool deleteTracks = false);
-
- /** Select a track, and if it is linked to another track, select it, too. */
- void Select(Track * t, bool selected = true);
-
- /** If this track is linked to another track (the track immediately before or
+ // Create an empty TrackList
+ TrackList();
+
+ // Destructor
+ virtual ~TrackList();
+
+ friend class Track;
+ friend class TrackListIterator;
+
+ /// Add this Track or all children of this TrackGroup
+ void Add(Track * t);
+ void AddToHead(Track * t);
+
+ /// Replace first track with second track
+ void Replace(Track * t, Track * with, bool deletetrack = false);
+
+ /// Remove this Track or all children of this TrackGroup
+ void Remove(Track * t, bool deletetrack = false);
+
+ /// Make the list empty
+ void Clear(bool deleteTracks = false);
+
+ /** Select a track, and if it is linked to another track, select it, too. */
+ void Select(Track * t, bool selected = true);
+
+ /** If this track is linked to another track (the track immediately before or
* after it), return its partner. Otherwise return null. */
- Track *GetLink(Track * t) const;
-
- Track *GetPrev(Track * t, bool linked = false) const;
- Track *GetNext(Track * t, bool linked = false) const;
- int GetGroupHeight( Track*t ) const;
-
- bool CanMoveUp(Track * t) const;
- bool CanMoveDown(Track * t) const;
-
- bool MoveUp(Track * t);
- bool MoveDown(Track * t);
- bool Move(Track * t, bool up) { return up ? MoveUp(t) : MoveDown(t); }
+ Track *GetLink(Track * t) const;
+
+ Track *GetPrev(Track * t, bool linked = false) const;
+ Track *GetNext(Track * t, bool linked = false) const;
+ int GetGroupHeight(Track * t) const;
+
+ bool CanMoveUp(Track * t) const;
+ bool CanMoveDown(Track * t) const;
- TimeTrack *GetTimeTrack();
+ bool MoveUp(Track * t);
+ bool MoveDown(Track * t);
+ bool Move(Track * t, bool up) { return up ? MoveUp(t) : MoveDown(t); }
- /** \brief Find out how many channels this track list mixes to
+ TimeTrack *GetTimeTrack();
+
+ /** \brief Find out how many channels this track list mixes to
*
* This is used in exports of the tracks to work out whether to export in
* Mono, Stereo etc. @param selectionOnly Whether to consider the entire track
* list or only the selected members of it
*/
- int GetNumExportChannels(bool selectionOnly);
+ int GetNumExportChannels(bool selectionOnly);
- WaveTrackArray GetWaveTrackArray(bool selectionOnly);
- /** Consider this function depricated in favor of GetWaveTrackArray */
- void GetWaveTracks(bool selectionOnly, int *num, WaveTrack ***tracks);
+ WaveTrackArray GetWaveTrackArray(bool selectionOnly);
+ /** Consider this function depricated in favor of GetWaveTrackArray */
+ void GetWaveTracks(bool selectionOnly, int *num, WaveTrack ***tracks);
#if defined(USE_MIDI)
- NoteTrackArray GetNoteTrackArray(bool selectionOnly);
+ NoteTrackArray GetNoteTrackArray(bool selectionOnly);
#endif
- /// Mainly a test function. Uses a linear search, so could be slow.
- bool Contains(Track * t) const;
-
- bool IsEmpty() const;
-
- double GetStartTime() const;
- double GetEndTime() const;
+ /// Mainly a test function. Uses a linear search, so could be slow.
+ bool Contains(Track * t) const;
- double GetMinOffset() const;
- int GetHeight() const;
+ bool IsEmpty() const;
+ int GetCount() const;
-#if LEGACY_PROJECT_FILE_SUPPORT
- // File I/O
- virtual bool Load(wxTextFile * in, DirManager * dirManager);
- virtual bool Save(wxTextFile * out, bool overwrite);
-#endif
-
- wxLongLong GetSpaceUsage();
- wxLongLong GetAdditionalSpaceUsage(UndoStack *stack);
- private:
- void Swap(TrackListNode * s1, TrackListNode * s2);
-
- TrackListNode *head;
- TrackListNode *tail;
-};
+ double GetStartTime() const;
+ double GetEndTime() const;
-class AUDACITY_DLL_API ConstTrackListIterator {
- public:
- ConstTrackListIterator(const TrackList * val) : l(val), cur(NULL) {}
+ double GetMinOffset() const;
+ int GetHeight() const;
- // Iterate functions
- Track *First() const
- {
- cur = l->head;
+#if LEGACY_PROJECT_FILE_SUPPORT
+ // File I/O
+ virtual bool Load(wxTextFile * in, DirManager * dirManager);
+ virtual bool Save(wxTextFile * out, bool overwrite);
+#endif
- if (cur) return cur->t;
- return NULL;
- }
+ private:
+ void RecalcPositions(const TrackListNode *node);
+ void UpdatedEvent(const TrackListNode *node);
+ void ResizedEvent(const TrackListNode *node);
- Track *Next() const
- {
- if (cur) cur = cur->next;
- if (cur) return cur->t;
- return NULL;
- }
+ void Swap(TrackListNode * s1, TrackListNode * s2);
- private:
- const TrackList * l;
- /** \brief pointer to the current node of the track list
- *
- * This is used to keep track of where we are in the list. It is a mutable
- * member of the class because although the list and the iterator are
- * constant, the current position can change (and does change) without
- * affecting them. Without this keyword we would get compiler errors about
- * const methods altering member variables. See also
- * http://www.highprogrammer.com/alan/rants/mutable.html */
- mutable TrackListNode *cur;
+ TrackListNode *head;
+ TrackListNode *tail;
};
-
class AUDACITY_DLL_API TrackFactory
{
private:
diff --git a/src/TrackArtist.cpp b/src/TrackArtist.cpp
index edd319c..c08228e 100644
--- a/src/TrackArtist.cpp
+++ b/src/TrackArtist.cpp
@@ -69,10 +69,6 @@ double gWaveformTimeTotal = 0;
int gWaveformTimeCount = 0;
#endif
-#ifdef __WXMAC__
-#define BUFFERED_DRAWING 1
-#endif
-
#ifdef USE_MIDI
const int octaveHeight = 62;
const int blackPos[5] = { 6, 16, 32, 42, 52 };
@@ -142,6 +138,7 @@ void TrackArtist::SetInset(int left, int top, int right, int bottom)
}
void TrackArtist::DrawTracks(TrackList * tracks,
+ Track * start,
wxDC & dc,
wxRegion & reg,
wxRect & r,
@@ -151,7 +148,6 @@ void TrackArtist::DrawTracks(TrackList * tracks,
bool drawSamples,
bool drawSliders)
{
- SetColours();
wxRect trackRect = r;
wxRect stereoTrackRect;
@@ -179,27 +175,15 @@ void TrackArtist::DrawTracks(TrackList * tracks,
dc.DrawRectangle(clip);
#endif
- t = iter.First();
- bool linkFlag = false;
- bool muted = false;
-
+ t = iter.StartWith(start);
while (t) {
- if (t->GetKind() == Track::Wave)
- {
- WaveTrack* wt = (WaveTrack*)t;
- for (WaveClipList::Node* it=wt->GetClipIterator(); it; it=it->GetNext())
- it->GetData()->ClearDisplayRect();
- }
+ trackRect.y = t->GetY() - viewInfo->vpos;
+ trackRect.height = t->GetHeight();
- if (linkFlag) // Use the value from the previous (linked) track.
- linkFlag = false;
- else {
- muted = (hasSolo || t->GetMute()) && !t->GetSolo();
- linkFlag = t->GetLinked();
+ if (trackRect.y > clip.GetBottom() && !t->GetLinked()) {
+ break;
}
- trackRect.height = t->GetHeight();
-
#if defined(DEBUG_CLIENT_AREA)
// Filled rectangle to show the interior of the client area
wxRect zr = trackRect;
@@ -219,7 +203,7 @@ void TrackArtist::DrawTracks(TrackList * tracks,
// its linked partner, and see if any part of that rect is on-screen.
// If so, we draw both. Otherwise, we can safely draw neither.
- Track *link = tracks->GetLink(t);
+ Track *link = t->GetLink();
if (link) {
if (t->GetLinked()) {
// If we're the first track
@@ -232,235 +216,123 @@ void TrackArtist::DrawTracks(TrackList * tracks,
}
}
- if (stereoTrackRect.y < (clip.y + clip.height) &&
- stereoTrackRect.y + stereoTrackRect.height > clip.y
- && reg.Contains( stereoTrackRect )) {
-
+ if (stereoTrackRect.Intersects(clip) && reg.Contains(stereoTrackRect)) {
wxRect rr = trackRect;
rr.x += mInsetLeft;
rr.y += mInsetTop;
rr.width -= (mInsetLeft + mInsetRight);
rr.height -= (mInsetTop + mInsetBottom);
-
- switch (t->GetKind()) {
- case Track::Wave:
- ((WaveTrack*)t)->SetDisplayRect(rr);
-
- switch (((WaveTrack *)t)->GetDisplay()) {
- case WaveTrack::WaveformDisplay:
- DrawWaveform((WaveTrack *)t, dc, rr, viewInfo,
- drawEnvelope, drawSamples, drawSliders, false, muted);
- break;
- case WaveTrack::WaveformDBDisplay:
- DrawWaveform((WaveTrack *)t, dc, rr, viewInfo,
- drawEnvelope, drawSamples, drawSliders, true, muted);
- break;
- case WaveTrack::SpectrumDisplay:
- DrawSpectrum((WaveTrack *)t, dc, rr, viewInfo, false, false);
- break;
- case WaveTrack::SpectrumLogDisplay:
- DrawSpectrum((WaveTrack *)t, dc, rr, viewInfo, false, true);
- break;
- case WaveTrack::PitchDisplay:
- DrawSpectrum((WaveTrack *)t, dc, rr, viewInfo, true, false);
- break;
- }
- break; // case Wave
- #ifdef USE_MIDI
- case Track::Note:
- DrawNoteTrack((NoteTrack *)t, dc, rr, viewInfo);
- break;
- #endif // USE_MIDI
- case Track::Label:
- DrawLabelTrack((LabelTrack *)t, dc, rr, viewInfo);
- break;
- case Track::Time:
- DrawTimeTrack((TimeTrack *)t, dc, rr, viewInfo);
- break;
- }
+ DrawTrack(t, dc, rr, viewInfo,
+ drawEnvelope, drawSamples, drawSliders, hasSolo);
}
t = iter.Next();
- trackRect.y += trackRect.height;
+ }
+}
+
+void TrackArtist::DrawTrack(const Track * t,
+ wxDC & dc,
+ const wxRect & r,
+ const ViewInfo * viewInfo,
+ bool drawEnvelope,
+ bool drawSamples,
+ bool drawSliders,
+ bool hasSolo)
+{
+ switch (t->GetKind()) {
+ case Track::Wave:
+ {
+ WaveTrack* wt = (WaveTrack*)t;
+ for (WaveClipList::compatibility_iterator it=wt->GetClipIterator(); it; it=it->GetNext()) {
+ it->GetData()->ClearDisplayRect();
+ }
+
+ bool muted = (hasSolo || t->GetMute()) && !t->GetSolo();
+
+ switch (wt->GetDisplay()) {
+ case WaveTrack::WaveformDisplay:
+ DrawWaveform(wt, dc, r, viewInfo,
+ drawEnvelope, drawSamples, drawSliders, false, muted);
+ break;
+ case WaveTrack::WaveformDBDisplay:
+ DrawWaveform(wt, dc, r, viewInfo,
+ drawEnvelope, drawSamples, drawSliders, true, muted);
+ break;
+ case WaveTrack::SpectrumDisplay:
+ DrawSpectrum(wt, dc, r, viewInfo, false, false);
+ break;
+ case WaveTrack::SpectrumLogDisplay:
+ DrawSpectrum(wt, dc, r, viewInfo, false, true);
+ break;
+ case WaveTrack::PitchDisplay:
+ DrawSpectrum(wt, dc, r, viewInfo, true, false);
+ break;
+ }
+ break; // case Wave
+ }
+ #ifdef USE_MIDI
+ case Track::Note:
+ DrawNoteTrack((NoteTrack *)t, dc, r, viewInfo);
+ break;
+ #endif // USE_MIDI
+ case Track::Label:
+ DrawLabelTrack((LabelTrack *)t, dc, r, viewInfo);
+ break;
+ case Track::Time:
+ DrawTimeTrack((TimeTrack *)t, dc, r, viewInfo);
+ break;
}
}
void TrackArtist::DrawVRuler(Track *t, wxDC * dc, wxRect & r)
{
- // Label tracks do not have a vruler
- if (t->GetKind() == Track::Label) {
+ int kind = t->GetKind();
+
+ // Label and Time tracks do not have a vruler
+ // But give it a beveled area
+ if (kind == Track::Label || kind == Track::Time) {
+ wxRect bev = r;
+ bev.Inflate(-1, -1);
+ bev.width += 1;
+ AColor::BevelTrackInfo(*dc, true, bev);
+
return;
}
// All waves have a ruler in the info panel
// The ruler needs a bevelled surround.
- if (t->GetKind() == Track::Wave )
- {
+ if (kind == Track::Wave) {
wxRect bev = r;
bev.Inflate(-1, -1);
- bev.width +=1;
+ bev.width += 1;
AColor::BevelTrackInfo(*dc, true, bev);
- }
-
- if (t->GetKind() == Track::Wave
- && ((WaveTrack *) t)->GetDisplay() == WaveTrack::WaveformDisplay) {
- // Waveform
- float min, max;
-
- ((WaveTrack *)t)->GetDisplayBounds(&min, &max);
- vruler->SetBounds(r.x, r.y+1, r.x + r.width, r.y + r.height-1);
- vruler->SetOrientation(wxVERTICAL);
- vruler->SetRange(max, min);
- vruler->SetFormat(Ruler::RealFormat);
- vruler->SetUnits(wxT(""));
- vruler->SetLabelEdges(false);
- vruler->SetLog(false);
- vruler->Draw(*dc);
- }
- if (t->GetKind() == Track::Wave
- && ((WaveTrack *) t)->GetDisplay() == WaveTrack::WaveformDBDisplay) {
- // Waveform (db)
- vruler->SetUnits(wxT(""));
-
- float min, max;
- ((WaveTrack *)t)->GetDisplayBounds(&min, &max);
-
- if (max > 0) {
- int top = 0;
- float topval = 0;
- int bot = r.height;
- float botval = -mdBrange;
-
- if (min < 0) {
- bot = top + (int)((max / (max-min))*(bot-top));
- min = 0;
- }
-
- if (max > 1) {
- top += (int)((max-1)/(max-min) * (bot-top));
- max = 1;
- }
-
- if (max < 1)
- topval = -((1-max)*mdBrange);
-
- if (min > 0) {
- botval = -((1-min)*mdBrange);
- }
-
- if (topval > botval && bot > top+10) {
- vruler->SetBounds(r.x, r.y+top+1, r.x + r.width, r.y + bot-1);
- vruler->SetOrientation(wxVERTICAL);
- vruler->SetRange(topval, botval);
- vruler->SetFormat(Ruler::LinearDBFormat);
- vruler->SetLabelEdges(true);
- vruler->SetLog(false);
- vruler->Draw(*dc);
- }
- }
- }
-
- if (t->GetKind() == Track::Wave
- && ((WaveTrack *) t)->GetDisplay() == WaveTrack::SpectrumDisplay) {
- // Spectrum
- if (r.height < 60)
+ // Pitch doesn't have a ruler
+ if (((WaveTrack *)t)->GetDisplay() == WaveTrack::PitchDisplay) {
return;
-
- bool logF = ((WaveTrack *) t)->GetDisplay() == WaveTrack::SpectrumLogDisplay;
- double rate = ((WaveTrack *) t)->GetRate();
-#ifdef EXPERIMENTAL_FFT_SKIP_POINTS
- int fftSkipPoints = gPrefs->Read(wxT("/Spectrum/FFTSkipPoints"), 0L);
-#endif //EXPERIMENTAL_FFT_SKIP_POINTS
- int freq = lrint(rate/2.);
- int maxFreq = gPrefs->Read(wxT("/Spectrum/MaxFreq"), freq);
-#ifdef EXPERIMENTAL_FFT_SKIP_POINTS
- maxFreq/=(fftSkipPoints+1);
-#endif //EXPERIMENTAL_FFT_SKIP_POINTS
- if(maxFreq > freq)
- maxFreq = freq;
- int minFreq = gPrefs->Read(wxT("/Spectrum/MinFreq"), 0L);
-#ifdef EXPERIMENTAL_FFT_SKIP_POINTS
- minFreq/=(fftSkipPoints+1);
-#endif //EXPERIMENTAL_FFT_SKIP_POINTS
- if(minFreq < 0) {
- minFreq = 0;
- gPrefs->Write(wxT("/Spectrum/MinFreq"), 0L);
}
- /*
- draw the ruler
- we will use Hz if maxFreq is < 2000, otherwise we represent kHz,
- and append to the numbers a "k"
- */
- vruler->SetBounds(r.x, r.y+1, r.x + r.width, r.y + r.height-1);
- vruler->SetOrientation(wxVERTICAL);
- vruler->SetFormat(Ruler::RealFormat);
- vruler->SetLabelEdges(true);
- // use kHz in scale, if appropriate
- if (maxFreq>=2000) {
- vruler->SetRange((maxFreq/1000.), (minFreq/1000.));
- vruler->SetUnits(wxT("k"));
- } else {
- // use Hz
- vruler->SetRange(int(maxFreq), int(minFreq));
- vruler->SetUnits(wxT(""));
+ // Right align the ruler
+ wxRect rr = r;
+ rr.width--;
+ if (t->vrulerSize.GetWidth() < r.GetWidth()) {
+ int adj = rr.GetWidth() - t->vrulerSize.GetWidth();
+ rr.x += adj;
+ rr.width -= adj;
}
- vruler->SetLog(false);
- vruler->Draw(*dc);
- }
- if (t->GetKind() == Track::Wave
- && ((WaveTrack *) t)->GetDisplay() == WaveTrack::SpectrumLogDisplay)
- { // SpectrumLog
- if (r.height < 10)
- return;
- double rate = ((WaveTrack *) t)->GetRate();
-#ifdef EXPERIMENTAL_FFT_SKIP_POINTS
- int fftSkipPoints = gPrefs->Read(wxT("/Spectrum/FFTSkipPoints"), 0L);
-#endif //EXPERIMENTAL_FFT_SKIP_POINTS
- int freq = lrint(rate/2.);
- int maxFreq = gPrefs->Read(wxT("/SpectrumLog/MaxFreq"), freq);
-#ifdef EXPERIMENTAL_FFT_SKIP_POINTS
- maxFreq/=(fftSkipPoints+1);
-#endif //EXPERIMENTAL_FFT_SKIP_POINTS
- if(maxFreq > freq)
- maxFreq = freq;
- int minFreq = gPrefs->Read(wxT("/SpectrumLog/MinFreq"), freq/1000.0);
-#ifdef EXPERIMENTAL_FFT_SKIP_POINTS
- minFreq/=(fftSkipPoints+1);
-#endif //EXPERIMENTAL_FFT_SKIP_POINTS
- if(minFreq < 1) {
- minFreq = 1;
- gPrefs->Write(wxT("/SpectrumLog/MinFreq"), 1L);
- }
- /*
- draw the ruler
- we will use Hz if maxFreq is < 2000, otherwise we represent kHz,
- and append to the numbers a "k"
- */
- vruler->SetBounds(r.x, r.y+1, r.x + r.width, r.y + r.height-1);
- vruler->SetOrientation(wxVERTICAL);
- vruler->SetFormat(Ruler::IntFormat);
- vruler->SetLabelEdges(true);
- vruler->SetRange(maxFreq, minFreq);
- vruler->SetUnits(wxT(""));
- vruler->SetLog(true);
+ UpdateVRuler(t, rr);
+
vruler->Draw(*dc);
- }
- if (t->GetKind() == Track::Wave
- && ((WaveTrack *) t)->GetDisplay() == WaveTrack::PitchDisplay) {
- // Pitch
+ return;
}
- #ifdef USE_MIDI
+#ifdef USE_MIDI
// The note track isn't drawing a ruler at all!
// But it needs to!
- if (t->GetKind() == Track::Note) {
- vruler->SetBounds(r.x, r.y+1, r.x + 1, r.y + r.height-1);
- vruler->SetOrientation(wxVERTICAL);
- vruler->Draw(*dc);
+ if (kind == Track::Note) {
+ UpdateVRuler(t, r);
dc->SetPen(*wxTRANSPARENT_PEN);
dc->SetBrush(*wxWHITE_BRUSH);
@@ -502,7 +374,7 @@ void TrackArtist::DrawVRuler(Track *t, wxDC * dc, wxRect & r)
for (int white = 0; white < 7; white++)
if (r.y + obottom - whitePos[white] > r.y &&
r.y + obottom - whitePos[white] < r.y + r.height)
- dc->DrawLine(r.x, r.y + obottom - whitePos[white],
+ AColor::Line(*dc, r.x, r.y + obottom - whitePos[white],
r.x + r.width,
r.y + obottom - whitePos[white]);
@@ -516,9 +388,11 @@ void TrackArtist::DrawVRuler(Track *t, wxDC * dc, wxRect & r)
dc->SetPen(hilitePen);
dc->DrawRectangle(br);
dc->SetPen(*wxBLACK_PEN);
- dc->DrawLine(br.x + 1, br.y + br.height - 1,
- br.x + br.width, br.y + br.height - 1);
- dc->DrawLine(br.x + br.width - 1, br.y + 1,
+ AColor::Line(*dc,
+ br.x + 1, br.y + br.height - 1,
+ br.x + br.width - 1, br.y + br.height - 1);
+ AColor::Line(*dc,
+ br.x + br.width - 1, br.y + 1,
br.x + br.width - 1, br.y + br.height - 1);
}
}
@@ -537,36 +411,172 @@ void TrackArtist::DrawVRuler(Track *t, wxDC * dc, wxRect & r)
}
}
}
- #endif // USE_MIDI
+#endif // USE_MIDI
- t->vrulerSize = vruler->mRect.GetSize();
}
-// Takes a value between -1 and +1 and returns a value between
-// -height and height.
-// This function isn't used anymore. Use GetWaveYPosNew instead.
-int TrackArtist::GetWaveYPos(float value, int height, bool dB, float dBr)
+void TrackArtist::UpdateVRuler(Track *t, wxRect & r)
{
- float sign = (value >= 0 ? 1 : -1);
+ // Label tracks do not have a vruler
+ if (t->GetKind() == Track::Label) {
+ return;
+ }
- if (dB) {
- if (value == 0 || height == 0)
- return 0;
- float db = 20 * log10(fabs(value));
- float val = (db + dBr) / dBr;
- if (val < 0.0)
- val = float(0.0);
- if (val > 1.0)
- val = float(1.0);
-
- return (int) (sign * (height * val + 0.5));
- } else {
- if (value < -1.0)
- value = float(-1.0);
- if (value > 1.0)
- value = float(1.0);
- return (int) (value * height + sign * 0.5);
+ // All waves have a ruler in the info panel
+ // The ruler needs a bevelled surround.
+ if (t->GetKind() == Track::Wave) {
+ WaveTrack *wt = (WaveTrack *)t;
+ int display = wt->GetDisplay();
+
+ if (display == WaveTrack::WaveformDisplay) {
+ // Waveform
+
+ float min, max;
+ wt->GetDisplayBounds(&min, &max);
+
+ vruler->SetBounds(r.x, r.y+1, r.x + r.width, r.y + r.height-1);
+ vruler->SetOrientation(wxVERTICAL);
+ vruler->SetRange(max, min);
+ vruler->SetFormat(Ruler::RealFormat);
+ vruler->SetUnits(wxT(""));
+ vruler->SetLabelEdges(false);
+ vruler->SetLog(false);
+ }
+ else if (display == WaveTrack::WaveformDBDisplay) {
+ // Waveform (db)
+
+ vruler->SetUnits(wxT(""));
+
+ float min, max;
+ wt->GetDisplayBounds(&min, &max);
+
+ if (max > 0) {
+ int top = 0;
+ float topval = 0;
+ int bot = r.height;
+ float botval = -mdBrange;
+
+ if (min < 0) {
+ bot = top + (int)((max / (max-min))*(bot-top));
+ min = 0;
+ }
+
+ if (max > 1) {
+ top += (int)((max-1)/(max-min) * (bot-top));
+ max = 1;
+ }
+
+ if (max < 1)
+ topval = -((1-max)*mdBrange);
+
+ if (min > 0) {
+ botval = -((1-min)*mdBrange);
+ }
+
+ if (topval > botval && bot > top+10) {
+ vruler->SetBounds(r.x, r.y+top+1, r.x + r.width, r.y + bot-1);
+ vruler->SetOrientation(wxVERTICAL);
+ vruler->SetRange(topval, botval);
+ vruler->SetFormat(Ruler::LinearDBFormat);
+ vruler->SetLabelEdges(true);
+ vruler->SetLog(false);
+ }
+ }
+ }
+ else if (display == WaveTrack::SpectrumDisplay) {
+ // Spectrum
+
+ if (r.height < 60)
+ return;
+
+ double rate = wt->GetRate();
+ int freq = lrint(rate/2.);
+
+ int maxFreq = GetSpectrumMaxFreq(freq);
+#ifdef EXPERIMENTAL_FFT_SKIP_POINTS
+ maxFreq/=(mFftSkipPoints+1);
+#endif //EXPERIMENTAL_FFT_SKIP_POINTS
+ if(maxFreq > freq)
+ maxFreq = freq;
+
+ int minFreq = GetSpectrumMinFreq(0);
+#ifdef EXPERIMENTAL_FFT_SKIP_POINTS
+ minFreq/=(mFftSkipPoints+1);
+#endif //EXPERIMENTAL_FFT_SKIP_POINTS
+ if(minFreq < 0)
+ minFreq = 0;
+
+ /*
+ draw the ruler
+ we will use Hz if maxFreq is < 2000, otherwise we represent kHz,
+ and append to the numbers a "k"
+ */
+ vruler->SetBounds(r.x, r.y+1, r.x + r.width, r.y + r.height-1);
+ vruler->SetOrientation(wxVERTICAL);
+ vruler->SetFormat(Ruler::RealFormat);
+ vruler->SetLabelEdges(true);
+ // use kHz in scale, if appropriate
+ if (maxFreq>=2000) {
+ vruler->SetRange((maxFreq/1000.), (minFreq/1000.));
+ vruler->SetUnits(wxT("k"));
+ } else {
+ // use Hz
+ vruler->SetRange(int(maxFreq), int(minFreq));
+ vruler->SetUnits(wxT(""));
+ }
+ vruler->SetLog(false);
+ }
+ else if (display == WaveTrack::SpectrumLogDisplay) {
+ // SpectrumLog
+
+ if (r.height < 10)
+ return;
+
+ double rate = wt->GetRate();
+ int freq = lrint(rate/2.);
+
+ int maxFreq = GetSpectrumLogMaxFreq(freq);
+#ifdef EXPERIMENTAL_FFT_SKIP_POINTS
+ maxFreq/=(mFftSkipPoints+1);
+#endif //EXPERIMENTAL_FFT_SKIP_POINTS
+ if(maxFreq > freq)
+ maxFreq = freq;
+
+ int minFreq = GetSpectrumLogMinFreq(freq/1000.0);
+#ifdef EXPERIMENTAL_FFT_SKIP_POINTS
+ minFreq/=(mFftSkipPoints+1);
+#endif //EXPERIMENTAL_FFT_SKIP_POINTS
+ if(minFreq < 1)
+ minFreq = 1;
+
+ /*
+ draw the ruler
+ we will use Hz if maxFreq is < 2000, otherwise we represent kHz,
+ and append to the numbers a "k"
+ */
+ vruler->SetBounds(r.x, r.y+1, r.x + r.width, r.y + r.height-1);
+ vruler->SetOrientation(wxVERTICAL);
+ vruler->SetFormat(Ruler::IntFormat);
+ vruler->SetLabelEdges(true);
+ vruler->SetRange(maxFreq, minFreq);
+ vruler->SetUnits(wxT(""));
+ vruler->SetLog(true);
+ }
+ else if (display == WaveTrack::PitchDisplay) {
+ // Pitch
+ }
+ }
+
+#ifdef USE_MIDI
+ // The note track isn't drawing a ruler at all!
+ // But it needs to!
+ else if (t->GetKind() == Track::Note) {
+ vruler->SetBounds(r.x, r.y+1, r.x + 1, r.y + r.height-1);
+ vruler->SetOrientation(wxVERTICAL);
}
+#endif // USE_MIDI
+
+ vruler->GetMaxSize(&t->vrulerSize.x, &t->vrulerSize.y);
}
/// Takes a value between min and max and returns a value between
@@ -574,74 +584,85 @@ int TrackArtist::GetWaveYPos(float value, int height, bool dB, float dBr)
/// \todo Should this function move int GuiWaveTrack where it can
/// then use the zoomMin, zoomMax and height values without having
/// to have them passed in to it??
-int GetWaveYPosNew(float value, float min, float max,
- int height, bool dB, bool outer,
- float dBr, bool clip)
+int GetWaveYPos(float value, float min, float max,
+ int height, bool dB, bool outer,
+ float dBr, bool clip)
{
- float sign = (value >= 0 ? 1 : -1);
-
if (dB) {
- if (height == 0) return 0;
-
- if(value != 0.){
- float db = 20 * log10(fabs(value));
- value = (db + dBr) / dBr;
- if(!outer)value -= .5;
- if (value < 0.0)
- value = float(0.0);
- value *= sign;
- }
- }else
- if(!outer) {
- if( value >= 0.0)
+ if (height == 0) {
+ return 0;
+ }
+
+ float sign = (value >= 0 ? 1 : -1);
+
+ if (value != 0.) {
+ float db = 20.0 * log10(fabs(value));
+ value = (db + dBr) / dBr;
+ if (!outer) {
value -= 0.5;
- else
+ }
+ if (value < 0.0) {
+ value = 0.0;
+ }
+ value *= sign;
+ }
+ }
+ else {
+ if (!outer) {
+ if (value >= 0.0) {
+ value -= 0.5;
+ }
+ else {
value += 0.5;
+ }
}
+ }
if (clip) {
- if (value < min)
+ if (value < min) {
value = min;
- if (value > max)
+ }
+ if (value > max) {
value = max;
+ }
}
+
value = (max - value) / (max - min);
- return (int) (value * (height - 1.0) + 0.5);
+ return (int) (value * (height - 1) + 0.5);
}
-void TrackArtist::DrawNegativeOffsetTrackArrows(wxDC &dc, wxRect &r)
+void TrackArtist::DrawNegativeOffsetTrackArrows(wxDC &dc, const wxRect &r)
{
// Draws two black arrows on the left side of the track to
// indicate the user that the track has been time-shifted
// to the left beyond t=0.0.
dc.SetPen(*wxBLACK_PEN);
- dc.DrawLine(r.x + 2, r.y + 6, r.x + 8, r.y + 6);
- dc.DrawLine(r.x + 2, r.y + 6, r.x + 6, r.y + 2);
- dc.DrawLine(r.x + 2, r.y + 6, r.x + 6, r.y + 10);
-
- dc.DrawLine(r.x + 2, r.y + r.height - 8, r.x + 8,
- r.y + r.height - 8);
- dc.DrawLine(r.x + 2, r.y + r.height - 8, r.x + 6,
- r.y + r.height - 4);
- dc.DrawLine(r.x + 2, r.y + r.height - 8, r.x + 6,
- r.y + r.height - 12);
-}
-
-void GetColour(wxPen &pen, uchar *r, uchar *g, uchar *b)
-{
- wxColour colour = pen.GetColour();
- *r = colour.Red();
- *g = colour.Green();
- *b = colour.Blue();
+ AColor::Line(dc,
+ r.x + 2, r.y + 6,
+ r.x + 8, r.y + 6);
+ AColor::Line(dc,
+ r.x + 2, r.y + 6,
+ r.x + 6, r.y + 2);
+ AColor::Line(dc,
+ r.x + 2, r.y + 6,
+ r.x + 6, r.y + 10);
+ AColor::Line(dc,
+ r.x + 2, r.y + r.height - 8,
+ r.x + 8, r.y + r.height - 8);
+ AColor::Line(dc,
+ r.x + 2, r.y + r.height - 8,
+ r.x + 6, r.y + r.height - 4);
+ AColor::Line(dc,
+ r.x + 2, r.y + r.height - 8,
+ r.x + 6, r.y + r.height - 12);
}
-void TrackArtist::DrawWaveformBackground(wxDC &dc, wxRect r,
- uchar *imageBuffer,
- sampleCount *where, sampleCount ssel0, sampleCount ssel1,
- double *env,
- float zoomMin, float zoomMax,
- bool dB, bool drawEnvelope)
+void TrackArtist::DrawWaveformBackground(wxDC &dc, const wxRect &r, const double env[],
+ float zoomMin, float zoomMax, bool dB,
+ const sampleCount where[],
+ sampleCount ssel0, sampleCount ssel1,
+ bool drawEnvelope)
{
// Visually (one vertical slice of the waveform background, on its side;
// the "*" is the actual waveform background we're drawing
@@ -652,146 +673,236 @@ void TrackArtist::DrawWaveformBackground(wxDC &dc, wxRect r,
// | | | |
// maxtop maxbot mintop minbot
- int halfHeight = wxMax(r.height/2, 1);
- int *maxtop = new int[r.width];
- int *maxbot = new int[r.width];
- int *mintop = new int[r.width];
- int *minbot = new int[r.width];
- int x;
+ int h = r.height;
+ int halfHeight = wxMax(h / 2, 1);
+ int maxtop, lmaxtop = 0;
+ int mintop, lmintop = 0;
+ int maxbot, lmaxbot = 0;
+ int minbot, lminbot = 0;
+ bool sel, lsel = false;
+ int x, lx = 0;
+ int l, w;
- // First we compute the truncated shape of the waveform background.
- // If drawEnvelope is true, then we compute the lower border of the
- // envelope.
+ dc.SetPen(*wxTRANSPARENT_PEN);
+ dc.SetBrush(blankBrush);
+ dc.DrawRectangle(r);
for (x = 0; x < r.width; x++) {
- maxtop[x] = GetWaveYPosNew(env[x], zoomMin, zoomMax,
- r.height, dB, true, mdBrange, true);
- maxbot[x] = GetWaveYPosNew(env[x], zoomMin, zoomMax,
- r.height, dB, false, mdBrange, true);
-
- mintop[x] = GetWaveYPosNew(-env[x]-.000000001, zoomMin, zoomMax,
- r.height, dB, false, mdBrange, true);
- minbot[x] = GetWaveYPosNew(-env[x], zoomMin, zoomMax,
- r.height, dB, true, mdBrange, true);
-
- if (!drawEnvelope || maxbot[x] > mintop[x]) {
- maxbot[x] = halfHeight;
- mintop[x] = halfHeight;
+ // First we compute the truncated shape of the waveform background.
+ // If drawEnvelope is true, then we compute the lower border of the
+ // envelope.
+
+ maxtop = GetWaveYPos(env[x], zoomMin, zoomMax,
+ h, dB, true, mdBrange, true);
+ maxbot = GetWaveYPos(env[x], zoomMin, zoomMax,
+ h, dB, false, mdBrange, true);
+
+ mintop = GetWaveYPos(-env[x], zoomMin, zoomMax,
+ h, dB, false, mdBrange, true);
+ minbot = GetWaveYPos(-env[x], zoomMin, zoomMax,
+ h, dB, true, mdBrange, true);
+
+ // Make sure it's odd so that a that max and min mirror each other
+ mintop +=1;
+ minbot +=1;
+
+ if (!drawEnvelope || maxbot > mintop) {
+ maxbot = halfHeight;
+ mintop = halfHeight;
}
- }
- if (imageBuffer) {
- uchar r0, g0, b0, r1, g1, b1, r2, g2, b2;
- bool *sel;
- int y;
+ sel = (ssel0 <= where[x] && where[x + 1] < ssel1);
- sel = new bool[r.width];
- for(x=0; x<r.width; x++)
- sel[x] = (ssel0 <= where[x] && where[x + 1] < ssel1);
+ if (lmaxtop == maxtop &&
+ lmintop == mintop &&
+ lmaxbot == maxbot &&
+ lminbot == minbot &&
+ lsel == sel) {
+ continue;
+ }
- int mid = (int) ((zoomMax/(zoomMax-zoomMin))*r.height);
+ dc.SetBrush(lsel ? selectedBrush : unselectedBrush);
- GetColour(blankPen, &r0, &g0, &b0);
- GetColour(unselectedPen, &r1, &g1, &b1);
- GetColour(selectedPen, &r2, &g2, &b2);
- for(y=0; y<r.height; y++) {
- for(x=0; x<r.width; x++) {
- if (y == mid) {
- *imageBuffer++ = 0;
- *imageBuffer++ = 0;
- *imageBuffer++ = 0;
- }
- else if (y < maxtop[x] || y > minbot[x] ||
- (y > mintop[x] && y < maxbot[x])) {
- *imageBuffer++ = r0;
- *imageBuffer++ = g0;
- *imageBuffer++ = b0;
- }
- else if (sel[x]) {
- *imageBuffer++ = r2;
- *imageBuffer++ = g2;
- *imageBuffer++ = b2;
- }
- else {
- *imageBuffer++ = r1;
- *imageBuffer++ = g1;
- *imageBuffer++ = b1;
- }
- }
+ l = r.x + lx;
+ w = x - lx;
+ if (lmaxbot != lmintop - 1) {
+ dc.DrawRectangle(l, r.y + lmaxtop, w, lmaxbot - lmaxtop);
+ dc.DrawRectangle(l, r.y + lmintop, w, lminbot - lmintop);
+ }
+ else {
+ dc.DrawRectangle(l, r.y + lmaxtop, w, lminbot - lmaxtop);
}
- delete[] sel;
+ lmaxtop = maxtop;
+ lmintop = mintop;
+ lmaxbot = maxbot;
+ lminbot = minbot;
+ lsel = sel;
+ lx = x;
+ }
+
+ dc.SetBrush(lsel ? selectedBrush : unselectedBrush);
+ l = r.x + lx;
+ w = x - lx;
+ if (lmaxbot != lmintop - 1) {
+ dc.DrawRectangle(l, r.y + lmaxtop, w, lmaxbot - lmaxtop);
+ dc.DrawRectangle(l, r.y + lmintop, w, lminbot - lmintop);
}
else {
- // First drawing pass: draw everything that's background-colored:
- // above, below, and in the middle of the waveform.
-
- dc.SetPen(blankPen);
- for (x = 0; x < r.width; x++) {
- if (maxtop[x] > 0)
- dc.DrawLine(r.x + x, r.y, r.x + x, r.y + maxtop[x]);
- if (maxbot[x] != mintop[x])
- dc.DrawLine(r.x + x, r.y + maxbot[x],
- r.x + x, r.y + mintop[x]);
- if (minbot[x] < r.height)
- dc.DrawLine(r.x + x, r.y + minbot[x],
- r.x + x, r.y + r.height);
+ dc.DrawRectangle(l, r.y + lmaxtop, w, lminbot - lmaxtop);
+ }
+
+ //OK, the display bounds are between min and max, which
+ //is spread across r.height. Draw the line at the proper place.
+
+ if (zoomMin < 0 && zoomMax > 0) {
+ int half = (int)((zoomMax / (zoomMax - zoomMin)) * h);
+ dc.SetPen(*wxBLACK_PEN);
+ AColor::Line(dc, r.x, r.y + half, r.x + r.width, r.y + half);
+ }
+}
+
+void TrackArtist::DrawMinMaxRMS(wxDC &dc, const wxRect &r, const double env[],
+ float zoomMin, float zoomMax, bool dB,
+ const float min[], const float max[], const float rms[],
+ const int bl[], bool showProgress, bool muted)
+{
+ // Display a line representing the
+ // min and max of the samples in this region
+ int lasth1, h1;
+ int lasth2, h2;
+ int *r1 = new int[r.width];
+ int *r2 = new int[r.width];
+ int *clipped;
+ int clipcnt = 0;
+ int x;
+
+ if (mShowClipping) {
+ clipped = new int[r.width];
+ }
+
+ long pixAnimOffset = (long)fabs((double)(wxDateTime::Now().GetTicks() * -10)) +
+ wxDateTime::Now().GetMillisecond() / 100; //10 pixels a second
+
+ bool drawStripes = true;
+ bool drawWaveform = true;
+
+ dc.SetPen(muted ? muteSamplePen : samplePen);
+ for (x = 0; x < r.width; x++) {
+ int xx = r.x + x;
+ double v;
+
+ v = min[x] * env[x];
+ if (mShowClipping && v <= -MAX_AUDIO) {
+ if (clipcnt == 0 || clipped[clipcnt - 1] != xx) {
+ clipped[clipcnt++] = xx;
+ }
}
-
- // Finally draw the waveform background itself, using the selected
- // pen when we're between the selections.
-
- bool usingSelPen = false;
- dc.SetPen(unselectedPen);
- for (x = 0; x < r.width; x++) {
- bool sel = false;
- if (ssel0 <= where[x] && where[x + 1] < ssel1)
- sel = true;
+ h1 = GetWaveYPos(v, zoomMin, zoomMax,
+ r.height, dB, true, mdBrange, true);
+
+ v = max[x] * env[x];
+ if (mShowClipping && v >= MAX_AUDIO) {
+ if (clipcnt == 0 || clipped[clipcnt - 1] != xx) {
+ clipped[clipcnt++] = xx;
+ }
+ }
+ h2 = GetWaveYPos(v, zoomMin, zoomMax,
+ r.height, dB, true, mdBrange, true);
+
+ // JKC: This adjustment to h1 and h2 ensures that the drawn
+ // waveform is continuous.
+ if (x > 0) {
+ if (h1 < lasth2) {
+ h1 = lasth2 - 1;
+ }
+ if (h2 > lasth1) {
+ h2 = lasth1 + 1;
+ }
+ }
+ lasth1 = h1;
+ lasth2 = h2;
+
+ r1[x] = GetWaveYPos(-rms[x] * env[x], zoomMin, zoomMax,
+ r.height, dB, true, mdBrange, true);
+ r2[x] = GetWaveYPos(rms[x] * env[x], zoomMin, zoomMax,
+ r.height, dB, true, mdBrange, true);
+
+ // Make sure the rms isn't larger than the waveform min/max
+ if (r1[x] > h1 - 1) {
+ r1[x] = h1 - 1;
+ }
+ if (r2[x] < h2 + 1) {
+ r2[x] = h2 + 1;
+ }
+ if (r2[x] > r1[x]) {
+ r2[x] = r1[x];
+ }
+
+ if (bl[x] <= -1) {
+ if (drawStripes) {
+ // TODO:unify with buffer drawing.
+ dc.SetPen((bl[x] % 2) ? muteSamplePen : samplePen);
+ for (int y = 0; y < r.height / 25 + 1; y++) {
+ // we are drawing over the buffer, but I think DrawLine takes care of this.
+ AColor::Line(dc,
+ xx,
+ r.y + 25 * y + (x /*+pixAnimOffset*/) % 25,
+ xx,
+ r.y + 25 * y + (x /*+pixAnimOffset*/) % 25 + 6); //take the min so we don't draw past the edge
+ }
+ }
- if (sel && !usingSelPen)
- dc.SetPen(selectedPen);
- else if (!sel && usingSelPen)
- dc.SetPen(unselectedPen);
- usingSelPen = sel;
-
- if (maxbot[x] != mintop[x]) {
- dc.DrawLine(r.x + x, r.y + maxtop[x],
- r.x + x, r.y + maxbot[x]);
- dc.DrawLine(r.x + x, r.y + mintop[x],
- r.x + x, r.y + minbot[x] + 1);
+ // draw a dummy waveform - some kind of sinusoid. We want to animate it so the user knows it's a dummy. Use the second's unit of a get time function.
+ // Lets use a triangle wave for now since it's easier - I don't want to use sin() or make a wavetable just for this.
+ if (drawWaveform) {
+ int triX;
+ dc.SetPen(samplePen);
+ triX = fabs((double)((x + pixAnimOffset) % (2 * r.height)) - r.height) + r.height;
+ for (int y = 0; y < r.height; y++) {
+ if ((y + triX) % r.height == 0) {
+ dc.DrawPoint(xx, r.y + y);
+ }
+ }
}
- else
- dc.DrawLine(r.x + x, r.y + maxtop[x],
- r.x + x, r.y + minbot[x] + 1);
+ }
+ else {
+ AColor::Line(dc, xx, r.y + h2, xx, r.y + h1);
}
}
- delete[] maxtop;
- delete[] maxbot;
- delete[] mintop;
- delete[] minbot;
-}
+ dc.SetPen(muted ? muteRmsPen : rmsPen);
+ for (int x = 0; x < r.width; x++) {
+ int xx = r.x + x;
+ if (bl[x] <= -1) {
+ }
+ else if (r1[x] != r2[x]) {
+ AColor::Line(dc, xx, r.y + r2[x], xx, r.y + r1[x]);
+ }
+ }
-void TrackArtist::DrawIndividualSamples(wxDC &dc, wxRect r,
- WaveTrack *track,
- double t0, double pps, double h,
- float zoomMin, float zoomMax,
- bool dB,
- bool drawSamples,
- bool showPoints, bool muted)
-{
- for (WaveClipList::Node* it = track->GetClipIterator(); it; it = it->GetNext())
- DrawIndividualClipSamples(dc, r, it->GetData(), t0, pps, h,
- zoomMin, zoomMax, dB, drawSamples, showPoints, muted);
+ // Draw the clipping lines
+ if (clipcnt) {
+ dc.SetPen(muted ? muteClippedPen : clippedPen);
+ while (--clipcnt >= 0) {
+ int xx = clipped[clipcnt];
+ AColor::Line(dc, xx, r.y, xx, r.y + r.height);
+ }
+ }
+
+ if (mShowClipping) {
+ delete[] clipped;
+ }
+
+ delete [] r1;
+ delete [] r2;
}
-void TrackArtist::DrawIndividualClipSamples(wxDC &dc, wxRect r,
+void TrackArtist::DrawIndividualSamples(wxDC &dc, const wxRect &r,
+ float zoomMin, float zoomMax, bool dB,
WaveClip *clip,
double t0, double pps, double h,
- float zoomMin, float zoomMax,
- bool dB,
- bool drawSamples,
- bool showPoints, bool muted)
+ bool drawSamples, bool showPoints, bool muted)
{
double rate = clip->GetRate();
sampleCount s0 = (sampleCount) (t0 * rate + 0.5);
@@ -800,10 +911,13 @@ void TrackArtist::DrawIndividualClipSamples(wxDC &dc, wxRect r,
slen += 4;
- if( s0 > snSamples )
+ if (s0 > snSamples) {
return;
- if (s0 + slen > snSamples)
+ }
+
+ if (s0 + slen > snSamples) {
slen = snSamples - s0;
+ }
float *buffer = new float[slen];
clip->GetSamples((samplePtr)buffer, floatSample, s0, slen);
@@ -815,7 +929,7 @@ void TrackArtist::DrawIndividualClipSamples(wxDC &dc, wxRect r,
sampleCount s;
if (mShowClipping) {
- clipped = new int[slen];
+ clipped = new int[slen];
}
dc.SetPen(muted ? muteSamplePen : samplePen);
@@ -825,12 +939,14 @@ void TrackArtist::DrawIndividualClipSamples(wxDC &dc, wxRect r,
// MB: (s0/rate - t0) is the distance from the left edge of the screen
// to the first sample.
- int xx = (int)rint((tt + s0/rate - t0) * pps);
+ int xx = (int)rint((tt + s0 / rate - t0) * pps);
- if (xx < -10000)
+ if (xx < -10000) {
xx = -10000;
- if (xx > 10000)
+ }
+ if (xx > 10000) {
xx = 10000;
+ }
xpos[s] = xx;
@@ -838,19 +954,21 @@ void TrackArtist::DrawIndividualClipSamples(wxDC &dc, wxRect r,
if (mShowClipping && (tt <= -MAX_AUDIO || tt >= MAX_AUDIO)) {
clipped[clipcnt++] = xx;
}
- ypos[s] = GetWaveYPosNew(tt, zoomMin, zoomMax,
- r.height, dB, true, mdBrange, false);
- if (ypos[s] < -1)
+ ypos[s] = GetWaveYPos(tt, zoomMin, zoomMax,
+ r.height, dB, true, mdBrange, false);
+ if (ypos[s] < -1) {
ypos[s] = -1;
- if (ypos[s] > r.height)
+ }
+ if (ypos[s] > r.height) {
ypos[s] = r.height;
-
+ }
}
// Draw lines
for (s = 0; s < slen - 1; s++) {
- dc.DrawLine(r.x + xpos[s], r.y + ypos[s],
- r.x + xpos[s + 1], r.y + ypos[s + 1]);
+ AColor::Line(dc,
+ r.x + xpos[s], r.y + ypos[s],
+ r.x + xpos[s + 1], r.y + ypos[s + 1]);
}
if (showPoints) {
@@ -875,7 +993,7 @@ void TrackArtist::DrawIndividualClipSamples(wxDC &dc, wxRect r,
dc.SetPen(muted ? muteClippedPen : clippedPen);
while (--clipcnt >= 0) {
s = clipped[clipcnt];
- dc.DrawLine(r.x + s, r.y, r.x + s, r.y + r.height);
+ AColor::Line(dc, r.x + s, r.y, r.x + s, r.y + r.height);
}
}
@@ -888,377 +1006,124 @@ void TrackArtist::DrawIndividualClipSamples(wxDC &dc, wxRect r,
delete[]ypos;
}
-void TrackArtist::DrawMinMaxRMS(wxDC &dc, wxRect r, uchar *imageBuffer,
- float zoomMin, float zoomMax,
- double *envValues,
- float *min, float *max, float *rms,int* bl,
- bool dB, bool muted, bool showProgress)
+void TrackArtist::DrawEnvelope(wxDC &dc, const wxRect &r, const double env[],
+ float zoomMin, float zoomMax, bool dB)
{
- // Display a line representing the
- // min and max of the samples in this region
- int *h1 = new int[r.width];
- int *h2 = new int[r.width];
- int *r1 = new int[r.width];
- int *r2 = new int[r.width];
- int *clipped;
- int clipcnt = 0;
- int x;
- //int pBarHeight = 10;
+ int h = r.height;
- if (mShowClipping) {
- clipped = new int[r.width];
- }
+ dc.SetPen(AColor::envelopePen);
- for (x = 0; x < r.width; x++) {
- double v;
+ for (int x = 0; x < r.width; x++) {
+ int cenvTop = GetWaveYPos(env[x], zoomMin, zoomMax,
+ h, dB, true, mdBrange, true);
- v = min[x] * envValues[x];
- if (mShowClipping && v <= -MAX_AUDIO) {
- if (clipcnt == 0 || (clipcnt > 0 && clipped[clipcnt-1] != x)) {
- clipped[clipcnt++] = x;
- }
- }
- h1[x] = GetWaveYPosNew(v, zoomMin, zoomMax,
- r.height, dB, true, mdBrange, true);
+ int cenvBot = GetWaveYPos(-env[x], zoomMin, zoomMax,
+ h, dB, true, mdBrange, true);
- v = max[x] * envValues[x];
- if (mShowClipping && v >= MAX_AUDIO) {
- if (clipcnt == 0 || (clipcnt > 0 && clipped[clipcnt-1] != x)) {
- clipped[clipcnt++] = x;
- }
- }
- h2[x] = GetWaveYPosNew(v, zoomMin, zoomMax,
- r.height, dB, true, mdBrange, true);
+ int envTop = GetWaveYPos(env[x], zoomMin, zoomMax,
+ h, dB, true, mdBrange, false);
- r1[x] = GetWaveYPosNew(-rms[x] * envValues[x], zoomMin, zoomMax,
- r.height, dB, true, mdBrange, true);
- r2[x] = GetWaveYPosNew(rms[x] * envValues[x], zoomMin, zoomMax,
- r.height, dB, true, mdBrange, true);
+ int envBot = GetWaveYPos(-env[x], zoomMin, zoomMax,
+ h, dB, true, mdBrange, false);
- // JKC: This adjustment to h1[] and h2[] ensures that the drawn
- // waveform is continuous.
- if (x > 0) {
- if (h1[x] < h2[x-1])
- h1[x]=h2[x-1]-1;
- if (h2[x] > h1[x-1])
- h2[x]=h1[x-1]+1;
+ // Make the collision at zero actually look solid
+ if (cenvBot - cenvTop < 9) {
+ int value = (int)((zoomMax / (zoomMax - zoomMin)) * h);
+ cenvTop = value - 4;
+ cenvBot = value + 4;
}
- // Make sure the rms isn't larger than the waveform
- // min/max
- if (r1[x] > h1[x]-1)
- r1[x] = h1[x]-1;
- if (r2[x] < h2[x]+1)
- r2[x] = h2[x]+1;
- if (r2[x]>r1[x])
- r2[x] = r1[x];
+ DrawEnvLine(dc, r, x, envTop, cenvTop, true);
+ DrawEnvLine(dc, r, x, envBot, cenvBot, false);
}
- long pixAnimOffset;
-
- pixAnimOffset = (long)fabs( (double)(wxDateTime::Now().GetTicks()*-10) )+ wxDateTime::Now().GetMillisecond()/100; //10 pixels a second
-
- bool drawStripes = true;
- bool drawWaveform = true;
- if (imageBuffer) {
- uchar *clipBuffer = imageBuffer;
- uchar rs, gs, bs, rr, gr, br;
- int y;
-
- GetColour(muted ? muteSamplePen : samplePen, &rs, &gs, &bs);
- GetColour(muted ? muteRmsPen : rmsPen, &rr, &gr, &br);
-
-
-
- for(y=0; y<r.height; y++) {
- for(x=0; x<r.width; x++) {
- //Check to see if the block data is available for this pixel.
- //wxLogDebug(wxT("bl[x] value for x %i, val %i\n"),x,bl[x]);
- if(bl[x]<=-1)
- {
- //check to see if we should draw the progress bar.
- //x%pBar Height to ensure we have a square separated every 15 pixels.
- //if(showProgress && y<pBarHeight && x%pBarHeight)
- // {
- // //white square, TODO: use a max(255,x+100) scheme so that we keep the waveform there, just faded.
- // *imageBuffer++=255;
- // *imageBuffer++=255;
- // *imageBuffer++=255;
- // }
- // else
- // {
-
- //draw the waveform
-
-
- if(drawStripes)
- {
- //draw one stripe every 25 pixels
- if( (y+x/*+pixAnimOffset*/)%25 == 0)
- {
- *imageBuffer = (bl[x]%2?rs:rr) + *imageBuffer;
- imageBuffer += 3; //Move pen to next pixel
- }
- else {
- //have a gradient away from the stripe, alter light and dark every block
- float lineProximity;
- //we want half of the range to be zero, and the other half scaled from 0.0 to 1 as you approach the line
- lineProximity = fabs( ( ((y+x/*+pixAnimOffset*/)%25) - 12)/12.0) - 0.5;
- if(lineProximity<0.0)
- lineProximity = 0.0;
- lineProximity*=2;//scale back to 0.0-1.0
- *imageBuffer = (bl[x]%2?rs:rr)*lineProximity+ (1.0-lineProximity)* (*imageBuffer+(bl[x]%2?0:-30));
- ++imageBuffer;
-
- *imageBuffer = (bl[x]%2?gs:gr)*lineProximity+ (1.0-lineProximity)* (*imageBuffer+(bl[x]%2?0:-30));
- ++imageBuffer;
-
- *imageBuffer = (bl[x]%2?bs:br)*lineProximity+ (1.0-lineProximity)* (*imageBuffer+(bl[x]%2?0:-30));
- ++imageBuffer;
- }
- }
- if(drawWaveform)
- {
-
- //draw a dummy waveform - some kind of sinusoid. We want to animate it so the user knows it's a dummy. Use the second's unit of a get time function.
- //Lets use a triangle wave for now since it's easier - I don't want to use sin() or make a wavetable just for this.
- int triX;
- triX= fabs((double)((x+pixAnimOffset)%(2*r.height))-r.height)+r.height;
- if((y+triX)%r.height == 0)
- {
- if(drawStripes)
- imageBuffer-=3; //move the pen back to the beginning of the pixel
- *imageBuffer++ = rr; //(bl[x]%2?rs:rr) + *imageBuffer;
- *imageBuffer++ = gr;
- *imageBuffer++ = br;
- }
- else
- {
- if(!drawStripes)
- { *imageBuffer++;
- *imageBuffer++;
- *imageBuffer++;
- }
- }
-
- }
- }
- else
- {
- //we have valid summary or sample data, so commence regular waveform drawing
- if (y >= r2[x] && y < r1[x]) {
- *imageBuffer++ = /*(showProgress && y<pBarHeight && x%pBarHeight) ?rr/2+30: */ rr;
- *imageBuffer++ = /*(showProgress && y<pBarHeight && x%pBarHeight) ?gr/2+120: */gr;
- *imageBuffer++ = /*(showProgress && y<pBarHeight && x%pBarHeight) ?br/2+30: */br;
- }
- else if (y >= h2[x] && y < h1[x]+1) {
- *imageBuffer++ = /*(showProgress && y<pBarHeight && x%pBarHeight)?rs/2+30: */rs;
- *imageBuffer++ = /*(showProgress && y<pBarHeight && x%pBarHeight)?gs/2+120: */gs;
- *imageBuffer++ = /*(showProgress && y<pBarHeight && x%pBarHeight)?bs/2+30: */bs;
- }
- else {
- // *imageBuffer++ = /*(showProgress && y<pBarHeight && x%pBarHeight)?60: */*imageBuffer;
- // *imageBuffer++ = /*(showProgress && y<pBarHeight && x%pBarHeight)?240: */*imageBuffer;
- // *imageBuffer++ = /*(showProgress && y<pBarHeight && x%pBarHeight)?60: */*imageBuffer;
- imageBuffer += 3;
- }
-
- }
- }
- }
-
- if (clipcnt) {
- uchar rc, gc, bc;
- int c;
- int w = r.width * 3;
-
- GetColour(muted ? muteClippedPen : clippedPen, &rc, &gc, &bc);
-
- for (c = 0; c < clipcnt; c++) {
- x = clipped[c] * 3;
- for (y = 0; y < r.height; y++) {
- clipBuffer[x] = rc;
- clipBuffer[x + 1] = gc;
- clipBuffer[x + 2] = bc;
- x += w;
- }
- }
- }
- }
- else {
- // Draw the waveform min/max lines
- dc.SetPen(muted ? muteSamplePen : samplePen);
- for (x = 0; x < r.width; x++) {
- if(bl[x]<=-1)
- {
-
- if(drawStripes)
- {
-
- //TODO:unify with buffer drawing.
- dc.SetPen(bl[x]%2 ? muteSamplePen : samplePen);
- for(int y=0;y<(r.height)/25 +1;y++)
- {
- //we are drawing over the buffer, but I think DrawLine takes care of this.
- dc.DrawLine(r.x + x, r.y+ 25*y + (x/*+pixAnimOffset*/)%25, r.x+x,
- r.y+25*y+(x/*+pixAnimOffset*/)%25 + 6 ); //take the min so we don't draw past the edge
- }
-
-
- //draw a not yet progress bar
- /*
- if(showProgress && x%pBarHeight)
- {
- dc.SetPen(odProgressNotYetPen);
- dc.DrawLine(r.x + x, r.y, r.x + x, r.y + pBarHeight );
- }*/
- }
-
- //draw a dummy waveform - some kind of sinusoid. We want to animate it so the user knows it's a dummy. Use the second's unit of a get time function.
- //Lets use a triangle wave for now since it's easier - I don't want to use sin() or make a wavetable just for this.
- if(drawWaveform)
- {
- int triX;
- dc.SetPen(samplePen);
- triX= fabs((double)((x+pixAnimOffset)%(2*r.height))-r.height)+r.height;
- for(int y=0;y<r.height;y++)
- {
- if((y+triX)%r.height == 0)
- dc.DrawPoint(r.x + x, r.y+y);
- }
- }
-
- }
- else
- {
- dc.SetPen(muted ? muteSamplePen : samplePen);
- if (r1[x] != r2[x]) {
- dc.DrawLine(r.x + x, r.y + h2[x], r.x + x, r.y + r2[x] );
- dc.DrawLine(r.x + x, r.y + r1[x], r.x + x, r.y + h1[x]+1 );
- } else {
- // MM: DrawLine will not draw anything if startpoint == endpoint,
- // so in this case explicitely draw single point.
- if (h1[x]+1 == h2[x])
- dc.DrawPoint(r.x + x, r.y + h2[x]);
- else
- dc.DrawLine(r.x + x, r.y + h2[x], r.x + x, r.y + h1[x]+1 );
- }
-
- /*
- //draw a transparent Green progress bar
- if(showProgress && x%pBarHeight)
- {
- dc.SetPen(odProgressDonePen);
- dc.DrawLine(r.x + x, r.y, r.x + x, r.y + pBarHeight );
- }*/
- }
- }
-
- // Draw the waveform rms lines
- dc.SetPen(muted ? muteRmsPen : rmsPen);
- for (x = 0; x < r.width; x++) {
- if(bl[x]<=-1)
- {
- //TODO: should we draw more stuff here?
- }
- else
- {
- if (r1[x] != r2[x])
- dc.DrawLine(r.x + x, r.y + r2[x], r.x + x, r.y + r1[x]);
- }
- }
-
- // Draw the clipping lines
- if (clipcnt) {
- dc.SetPen(muted ? muteClippedPen : clippedPen);
- while (--clipcnt >= 0) {
- x = clipped[clipcnt];
- dc.DrawLine(r.x + x, r.y, r.x + x, r.y + r.height);
- }
- }
- }
-
- if (mShowClipping) {
- delete[] clipped;
- }
-
- delete[] h1;
- delete[] h2;
- delete[] r1;
- delete[] r2;
}
-void TrackArtist::DrawEnvLine(wxDC &dc, wxRect r, int x, int y, bool top)
+void TrackArtist::DrawEnvLine(wxDC &dc, const wxRect &r, int x, int y, int cy, bool top)
{
+ int xx = r.x + x;
+ int yy = r.y + cy;
+
if (y < 0) {
- if (x % 4 != 3)
- dc.DrawLine(r.x + x, r.y,
- r.x + x, r.y + 3);
+ if (x % 4 != 3) {
+ AColor::Line(dc, xx, yy, xx, yy + 3);
+ }
}
- else if (y >= r.height) {
- if (x % 4 != 3)
- dc.DrawLine(r.x + x, r.y + r.height - 3,
- r.x + x, r.y + r.height);
+ else if (y > r.height) {
+ if (x % 4 != 3) {
+ AColor::Line(dc, xx, yy - 3, xx, yy);
+ }
}
else {
- if (top)
- dc.DrawLine(r.x + x, r.y + y,
- r.x + x, r.y + y + 3);
- else
- dc.DrawLine(r.x + x, r.y + y - 3,
- r.x + x, r.y + y);
+ if (top) {
+ AColor::Line(dc, xx, yy, xx, yy + 3);
+ }
+ else {
+ AColor::Line(dc, xx, yy - 3, xx, yy);
+ }
}
}
void TrackArtist::DrawWaveform(WaveTrack *track,
- wxDC & dc, wxRect & r,
- ViewInfo * viewInfo,
+ wxDC & dc,
+ const wxRect & r,
+ const ViewInfo *viewInfo,
bool drawEnvelope,
bool drawSamples,
bool drawSliders,
- bool dB, bool muted)
+ bool dB,
+ bool muted)
{
// MM: Draw background. We should optimize that a bit more.
dc.SetPen(*wxTRANSPARENT_PEN);
dc.SetBrush(blankBrush);
dc.DrawRectangle(r);
- for (WaveClipList::Node* it=track->GetClipIterator(); it; it=it->GetNext())
- DrawClipWaveform(track, it->GetData(), dc, r, viewInfo, drawEnvelope, drawSamples,
- drawSliders, dB, muted);
+ for (WaveClipList::compatibility_iterator it = track->GetClipIterator(); it; it = it->GetNext())
+ DrawClipWaveform(track, it->GetData(), dc, r, viewInfo,
+ drawEnvelope, drawSamples, drawSliders,
+ dB, muted);
// Update cache for locations, e.g. cutlines and merge points
track->UpdateLocationsCache();
- for (int i=0; i<track->GetNumCachedLocations(); i++)
- {
+ for (int i = 0; i<track->GetNumCachedLocations(); i++) {
WaveTrack::Location loc = track->GetCachedLocation(i);
double x = (loc.pos - viewInfo->h) * viewInfo->zoom;
- if (x >= 0 && x < r.width)
- {
+ if (x >= 0 && x < r.width) {
dc.SetPen(*wxGREY_PEN);
- dc.DrawLine((int) (r.x + x-1), r.y, (int) (r.x + x-1), r.y+r.height);
- if (loc.typ == WaveTrack::locationCutLine)
+ AColor::Line(dc, (int) (r.x + x - 1), r.y, (int) (r.x + x - 1), r.y + r.height);
+ if (loc.typ == WaveTrack::locationCutLine) {
dc.SetPen(*wxRED_PEN);
- else
+ }
+ else {
dc.SetPen(*wxBLACK_PEN);
- dc.DrawLine((int) (r.x + x), r.y, (int) (r.x + x), r.y+r.height);
+ }
+ AColor::Line(dc, (int) (r.x + x), r.y, (int) (r.x + x), r.y + r.height);
dc.SetPen(*wxGREY_PEN);
- dc.DrawLine((int) (r.x + x+1), r.y, (int) (r.x + x+1), r.y+r.height);
+ AColor::Line(dc, (int) (r.x + x + 1), r.y, (int) (r.x + x + 1), r.y + r.height);
}
}
}
-void TrackArtist::DrawClipWaveform(WaveTrack* track, WaveClip* clip,
- wxDC & dc, wxRect & r,
- ViewInfo * viewInfo,
- bool drawEnvelope,
- bool drawSamples,
- bool drawSliders,
- bool dB, bool muted)
+void TrackArtist::DrawClipWaveform(WaveTrack *track,
+ WaveClip *clip,
+ wxDC & dc,
+ const wxRect & r,
+ const ViewInfo *viewInfo,
+ bool drawEnvelope,
+ bool drawSamples,
+ bool drawSliders,
+ bool dB,
+ bool muted)
{
#if PROFILE_WAVEFORM
+# ifdef __WXMSW__
+ __time64_t tv0, tv1;
+ _time64(&tv0);
+# else
struct timeval tv0, tv1;
gettimeofday(&tv0, NULL);
+# endif
#endif
double h = viewInfo->h; //The horizontal position in seconds
double pps = viewInfo->zoom; //points-per-second--the zoom level
@@ -1270,8 +1135,9 @@ void TrackArtist::DrawClipWaveform(WaveTrack* track, WaveClip* clip,
double sps = 1./rate; //seconds-per-sample
//If the track isn't selected, make the selection empty
- if (!track->GetSelected())
+ if (!track->GetSelected()) {
sel0 = sel1 = 0.0;
+ }
//Some bookkeeping time variables:
double tstep = 1.0 / pps; // Seconds per point
@@ -1289,18 +1155,22 @@ void TrackArtist::DrawClipWaveform(WaveTrack* track, WaveClip* clip,
// end of the track
double t0 = (tpre >= 0.0 ? tpre : 0.0);
- double t1 = (tpost < trackLen - sps*.99 ? tpost : trackLen - sps*.99);
- if(showIndividualSamples) t1+=2./pps; // adjustment so that the
- // last circular point doesn't appear to be hanging off the end
-
+ double t1 = (tpost < trackLen - sps * .99 ? tpost : trackLen - sps * .99);
+ if (showIndividualSamples) {
+ // adjustment so that the last circular point doesn't appear
+ // to be hanging off the end
+ t1 += 2. / pps;
+ }
// Make sure t1 (the right bound) is greater than 0
- if (t1 < 0.0)
+ if (t1 < 0.0) {
t1 = 0.0;
+ }
// Make sure t1 is greater than t0
- if (t0 > t1)
+ if (t0 > t1) {
t0 = t1;
+ }
// Calculate sample-based offset-corrected selection
@@ -1311,8 +1181,9 @@ void TrackArtist::DrawClipWaveform(WaveTrack* track, WaveClip* clip,
sampleCount ssel1 = wxMax(0, sampleCount((sel1 - tOffset) * rate + .99));
//trim selection so that it only contains the actual samples
- if (ssel0 != ssel1 && ssel1 > (sampleCount)(0.5+trackLen*rate))
- ssel1 = (sampleCount)(0.5+trackLen*rate);
+ if (ssel0 != ssel1 && ssel1 > (sampleCount)(0.5 + trackLen * rate)) {
+ ssel1 = (sampleCount)(0.5 + trackLen * rate);
+ }
// The variable "mid" will be the rectangle containing the
// actual waveform, as opposed to any blank area before
@@ -1326,8 +1197,9 @@ void TrackArtist::DrawClipWaveform(WaveTrack* track, WaveClip* clip,
// left of the track. Reduce the "mid"
if (tpre < 0) {
double delta = r.width;
- if (t0 < tpost)
+ if (t0 < tpost) {
delta = (int) ((t0 - tpre) * pps);
+ }
mid.x += (int)delta;
mid.width -= (int)delta;
}
@@ -1338,7 +1210,9 @@ void TrackArtist::DrawClipWaveform(WaveTrack* track, WaveClip* clip,
// size of the blank area.
if (tpost > t1) {
wxRect post = r;
- if (t1 > tpre) post.x += (int) ((t1 - tpre) * pps);
+ if (t1 > tpre) {
+ post.x += (int) ((t1 - tpre) * pps);
+ }
post.width = r.width - (post.x - r.x);
mid.width -= post.width;
}
@@ -1346,14 +1220,19 @@ void TrackArtist::DrawClipWaveform(WaveTrack* track, WaveClip* clip,
// The "mid" rect contains the part of the display actually
// containing the waveform. If it's empty, we're done.
if (mid.width <= 0) {
- #if PROFILE_WAVEFORM
+#if PROFILE_WAVEFORM
+# ifdef __WXMSW__
+ _time64(&tv1);
+ double elapsed = _difftime64(tv1, tv0);
+# else
gettimeofday(&tv1, NULL);
double elapsed =
(tv1.tv_sec + tv1.tv_usec*0.000001) -
(tv0.tv_sec + tv0.tv_usec*0.000001);
+# endif
gWaveformTimeTotal += elapsed;
gWaveformTimeCount++;
- #endif
+#endif
return;
}
@@ -1372,151 +1251,93 @@ void TrackArtist::DrawClipWaveform(WaveTrack* track, WaveClip* clip,
float *min = new float[mid.width];
float *max = new float[mid.width];
float *rms = new float[mid.width];
+ sampleCount *where = new sampleCount[mid.width + 1];
int *bl = new int[mid.width];
- sampleCount *where = new sampleCount[mid.width+1];
- bool isLoadingOD=false;//true if loading on demand block in sequence.
+ bool isLoadingOD = false;//true if loading on demand block in sequence.
+
// The WaveClip class handles the details of computing the shape
// of the waveform. The only way GetWaveDisplay will fail is if
// there's a serious error, like some of the waveform data can't
// be loaded. So if the function returns false, we can just exit.
- if (!clip->GetWaveDisplay(min, max, rms, bl,where,
- mid.width, t0, pps,isLoadingOD)) {
+ if (!clip->GetWaveDisplay(min, max, rms, bl, where,
+ mid.width, t0, pps, isLoadingOD)) {
delete[] min;
delete[] max;
delete[] rms;
- delete[] bl;
delete[] where;
+ delete[] bl;
return;
}
- // The following section of code may be optionally sped up
- // by drawing directly to an image buffer, then blitting it
- // to the screen.
-
- uchar *imageBuffer = NULL;
- wxRect drawRect = mid;
-
- #if BUFFERED_DRAWING
- drawRect.x = 0;
- drawRect.y = 0;
- wxImage *image = new wxImage(drawRect.width, drawRect.height);
- imageBuffer = image->GetData();
- #endif
-
// Get the values of the envelope corresponding to each pixel
// in the display, and use these to compute the height of the
// track at each pixel
- double *envValues = new double[drawRect.width];
- clip->GetEnvelope()->GetValues(envValues, drawRect.width,
- t0 + tOffset, tstep);
+ double *envValues = new double[mid.width];
+ clip->GetEnvelope()->GetValues(envValues, mid.width, t0 + tOffset, tstep);
// Draw the background of the track, outlining the shape of
// the envelope and using a colored pen for the selected
// part of the waveform
+ DrawWaveformBackground(dc, mid, envValues, zoomMin, zoomMax, dB,
+ where, ssel0, ssel1, drawEnvelope);
- DrawWaveformBackground(dc, drawRect, imageBuffer, where, ssel0, ssel1,
- envValues, zoomMin, zoomMax, dB, drawEnvelope);
-
- //OK, the display bounds are between min and max, which
- //is spread across r.height. Draw the line at the proper place.
-
- #if !BUFFERED_DRAWING
- if (zoomMin < 0 && zoomMax > 0) {
- float height = (zoomMax/(zoomMax-zoomMin))*mid.height;
- dc.SetPen(*wxBLACK_PEN);
- dc.DrawLine(mid.x, (int) (mid.y+height), mid.x+mid.width,
- (int) (mid.y+height));
+ if (!showIndividualSamples) {
+ DrawMinMaxRMS(dc, mid, envValues, zoomMin, zoomMax, dB,
+ min, max, rms, bl, isLoadingOD, muted);
}
- #endif
-
- if (!showIndividualSamples)
- DrawMinMaxRMS(dc, drawRect, imageBuffer, zoomMin, zoomMax,
- envValues, min, max, rms, bl, dB, muted, isLoadingOD);
-
- // Transfer any buffered drawing to the DC. Everything
- // from now on is drawn using ordinary wxWindows drawing code.
-
- #if BUFFERED_DRAWING
- wxBitmap *bitmap = new wxBitmap(*image);
- wxMemoryDC *bitmapDC = new wxMemoryDC();
- bitmapDC->SelectObject(*bitmap);
- dc.Blit(mid.x, mid.y, drawRect.width, drawRect.height,
- bitmapDC, 0, 0, wxCOPY);
- delete bitmapDC;
- delete bitmap;
- delete image;
- #endif
-
- if (showIndividualSamples)
- DrawIndividualClipSamples(dc, mid, clip, t0, pps, h,
- zoomMin, zoomMax,
- dB, drawSamples, showPoints, muted);
-
- if (drawEnvelope) {
- dc.SetPen(AColor::envelopePen);
- int x;
-
- for (x = 0; x < mid.width; x++) {
- int envTop, envBottom;
-
- envTop = GetWaveYPosNew(envValues[x], zoomMin, zoomMax,
- mid.height, dB, true, mdBrange, false);
-
- envBottom = GetWaveYPosNew(-envValues[x], zoomMin, zoomMax,
- mid.height, dB, true, mdBrange, false);
-
- /* make the collision at zero actually look solid */
- if(envBottom-envTop < 3){
- int value = (int)((zoomMax / (zoomMax - zoomMin)) * mid.height);
- envTop=value-1;
- envBottom=value+2;
- }
-
- DrawEnvLine(dc, mid, x, envTop, true);
- DrawEnvLine(dc, mid, x, envBottom, false);
- }
- }
-
-
-
- // Draw arrows on the left side if the track extends to the left of the
- // beginning of time. :)
- if (h == 0.0 && tOffset < 0.0) {
- DrawNegativeOffsetTrackArrows(dc, r);
+ else {
+ DrawIndividualSamples(dc, mid, zoomMin, zoomMax, dB,
+ clip, t0, pps, h,
+ drawSamples, showPoints, muted);
}
if (drawEnvelope) {
- wxRect envRect = r;
- clip->GetEnvelope()->Draw(dc, envRect, h, pps, dB,
- zoomMin, zoomMax);
+ DrawEnvelope(dc, mid, envValues, zoomMin, zoomMax, dB);
+ clip->GetEnvelope()->Draw(dc, r, h, pps, dB, zoomMin, zoomMax);
}
-
- delete[] bl;
+
delete[] envValues;
delete[] min;
delete[] max;
delete[] rms;
delete[] where;
+ delete[] bl;
- if( drawSliders )
- {
- DrawTimeSlider(track,dc, r, viewInfo, true); // directed right
- DrawTimeSlider(track,dc, r, viewInfo, false); // directed left
+ // Draw arrows on the left side if the track extends to the left of the
+ // beginning of time. :)
+ if (h == 0.0 && tOffset < 0.0) {
+ DrawNegativeOffsetTrackArrows(dc, r);
+ }
+
+ if (drawSliders) {
+ DrawTimeSlider(track, dc, r, viewInfo, true); // directed right
+ DrawTimeSlider(track, dc, r, viewInfo, false); // directed left
}
// Draw clip edges
dc.SetPen(*wxGREY_PEN);
- if (tpre < 0)
- dc.DrawLine(mid.x-1, mid.y, mid.x-1, mid.y+r.height);
- if (tpost > t1)
- dc.DrawLine(mid.x+mid.width, mid.y, mid.x+mid.width, mid.y+r.height);
+ if (tpre < 0) {
+ AColor::Line(dc,
+ mid.x - 1, mid.y,
+ mid.x - 1, mid.y + r.height);
+ }
+ if (tpost > t1) {
+ AColor::Line(dc,
+ mid.x + mid.width, mid.y,
+ mid.x + mid.width, mid.y + r.height);
+ }
#if PROFILE_WAVEFORM
+# ifdef __WXMSW__
+ _time64(&tv1);
+ double elapsed = _difftime64(tv1, tv0);
+# else
gettimeofday(&tv1, NULL);
double elapsed =
(tv1.tv_sec + tv1.tv_usec*0.000001) -
(tv0.tv_sec + tv0.tv_usec*0.000001);
+# endif
gWaveformTimeTotal += elapsed;
gWaveformTimeCount++;
wxPrintf(wxT("Avg waveform drawing time: %f\n"),
@@ -1526,69 +1347,77 @@ void TrackArtist::DrawClipWaveform(WaveTrack* track, WaveClip* clip,
void TrackArtist::DrawTimeSlider(WaveTrack *track,
- wxDC & dc, wxRect & r,
- ViewInfo * viewInfo, bool rightwards)
+ wxDC & dc,
+ const wxRect & r,
+ const ViewInfo *viewInfo,
+ bool rightwards)
{
- const int border=3; // 3 pixels all round.
- const int width=6; // width of the drag box.
- const int taper=6; // how much the box tapers by.
+ const int border = 3; // 3 pixels all round.
+ const int width = 6; // width of the drag box.
+ const int taper = 6; // how much the box tapers by.
const int barSpacing = 4; // how far apart the bars are.
const int barWidth = 3;
const int xFlat = 3;
//Enough space to draw in?
- if( r.height <= ((taper+border + barSpacing) * 2 ))
+ if (r.height <= ((taper+border + barSpacing) * 2)) {
return;
- if( r.width <= (width*2 + border * 3))
+ }
+ if (r.width <= (width * 2 + border * 3)) {
return;
+ }
// The draggable box is tapered towards the direction you drag it.
int leftTaper = rightwards ? 0 : 6;
int rightTaper = rightwards ? 6 : 0;
- int xLeft = rightwards ? (r.x +border -2) : (r.x + r.width + 1 - (border+width));
- int yTop = r.y+border;
- int yBot = r.y+r.height-border-1;
+ int xLeft = rightwards ? (r.x + border - 2)
+ : (r.x + r.width + 1 - (border + width));
+ int yTop = r.y + border;
+ int yBot = r.y + r.height - border - 1;
AColor::Light(&dc, false);
- dc.DrawLine( xLeft, yBot-leftTaper, xLeft, yTop+leftTaper );
- dc.DrawLine( xLeft, yTop+leftTaper, xLeft+xFlat, yTop );
- dc.DrawLine( xLeft+xFlat, yTop, xLeft+width, yTop+rightTaper );
+ AColor::Line(dc, xLeft, yBot - leftTaper, xLeft, yTop + leftTaper);
+ AColor::Line(dc, xLeft, yTop + leftTaper, xLeft + xFlat, yTop);
+ AColor::Line(dc, xLeft + xFlat, yTop, xLeft + width, yTop + rightTaper);
+
AColor::Dark(&dc, false);
- dc.DrawLine( xLeft+width, yTop+rightTaper, xLeft+width, yBot-rightTaper );
- dc.DrawLine( xLeft+width, yBot-rightTaper, xLeft+width-xFlat, yBot );
- dc.DrawLine( xLeft+width-xFlat, yBot, xLeft, yBot-leftTaper);
+ AColor::Line(dc, xLeft + width, yTop + rightTaper, xLeft + width, yBot - rightTaper);
+ AColor::Line(dc, xLeft + width, yBot - rightTaper, xLeft + width-xFlat, yBot);
+ AColor::Line(dc, xLeft + width - xFlat, yBot, xLeft, yBot - leftTaper);
- int firstBar = yTop + taper + taper/2;
- int nBars = (yBot-yTop-taper*3) / barSpacing +1;
- xLeft += (width-barWidth+1)/2;
+ int firstBar = yTop + taper + taper / 2;
+ int nBars = (yBot - yTop - taper * 3) / barSpacing + 1;
+ xLeft += (width - barWidth + 1) / 2;
int y;
int i;
AColor::Light(&dc, false);
- for(i=0;i<nBars;i++){
- y = firstBar + barSpacing*i;
- dc.DrawLine( xLeft, y, xLeft+barWidth, y);
+ for (i = 0;i < nBars; i++) {
+ y = firstBar + barSpacing * i;
+ AColor::Line(dc, xLeft, y, xLeft + barWidth, y);
}
AColor::Dark(&dc, false);
- for(i=0;i<nBars;i++){
- y = firstBar + barSpacing*i+1;
- dc.DrawLine( xLeft, y, xLeft+barWidth, y);
+ for(i = 0;i < nBars; i++){
+ y = firstBar + barSpacing * i + 1;
+ AColor::Line(dc, xLeft, y, xLeft + barWidth, y);
}
}
void TrackArtist::DrawSpectrum(WaveTrack *track,
- wxDC & dc, wxRect & r,
- ViewInfo * viewInfo, bool autocorrelation, bool logF)
+ wxDC & dc,
+ const wxRect & r,
+ const ViewInfo *viewInfo,
+ bool autocorrelation,
+ bool logF)
{
// MM: Draw background. We should optimize that a bit more.
dc.SetPen(*wxTRANSPARENT_PEN);
dc.SetBrush(blankBrush);
dc.DrawRectangle(r);
- if(!viewInfo->bUpdateTrackIndicator && viewInfo->bIsPlaying)
- {
+ if(!viewInfo->bUpdateTrackIndicator && viewInfo->bIsPlaying) {
// BG: Draw (undecorated) waveform instead of spectrum
DrawWaveform(track, dc, r, viewInfo, false, false, false, false, false);
/*
@@ -1600,8 +1429,9 @@ void TrackArtist::DrawSpectrum(WaveTrack *track,
return;
}
- for (WaveClipList::Node* it=track->GetClipIterator(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it = track->GetClipIterator(); it; it = it->GetNext()) {
DrawClipSpectrum(track, it->GetData(), dc, r, viewInfo, autocorrelation, logF);
+ }
}
float sumFreqValues(float *freq, int x0, float bin0, float bin1)
@@ -1624,10 +1454,23 @@ float sumFreqValues(float *freq, int x0, float bin0, float bin1)
return value;
}
-void TrackArtist::DrawClipSpectrum(WaveTrack* track, WaveClip *clip,
- wxDC & dc, wxRect & r,
- ViewInfo * viewInfo, bool autocorrelation, bool logF)
+void TrackArtist::DrawClipSpectrum(WaveTrack *track,
+ WaveClip *clip,
+ wxDC & dc,
+ const wxRect & r,
+ const ViewInfo *viewInfo,
+ bool autocorrelation,
+ bool logF)
{
+#if PROFILE_WAVEFORM
+# ifdef __WXMSW__
+ __time64_t tv0, tv1;
+ _time64(&tv0);
+# else
+ struct timeval tv0, tv1;
+ gettimeofday(&tv0, NULL);
+# endif
+#endif
double h = viewInfo->h;
double pps = viewInfo->zoom;
double sel0 = viewInfo->sel0;
@@ -1638,9 +1481,8 @@ void TrackArtist::DrawClipSpectrum(WaveTrack* track, WaveClip *clip,
double rate = clip->GetRate();
double sps = 1./rate;
- // if nothing is on the screen
- if ((sampleCount) (h * rate + 0.5) >= numSamples)
- return;
+ int range = gPrefs->Read(wxT("/Spectrum/Range"), 80L);
+ int gain = gPrefs->Read(wxT("/Spectrum/Gain"), 20L);
if (!track->GetSelected())
sel0 = sel1 = 0.0;
@@ -1712,16 +1554,20 @@ void TrackArtist::DrawClipSpectrum(WaveTrack* track, WaveClip *clip,
// The "mid" rect contains the part of the display actually
// containing the waveform. If it's empty, we're done.
if (mid.width <= 0) {
- #if PROFILE_WAVEFORM
+#if PROFILE_WAVEFORM
+# ifdef __WXMSW__
+ _time64(&tv1);
+ double elapsed = _difftime64(tv1, tv0);
+# else
gettimeofday(&tv1, NULL);
double elapsed =
(tv1.tv_sec + tv1.tv_usec*0.000001) -
(tv0.tv_sec + tv0.tv_usec*0.000001);
+# endif
gWaveformTimeTotal += elapsed;
gWaveformTimeCount++;
- #endif
-
- return;
+#endif
+ return;
}
// We draw directly to a bit image in memory,
@@ -1732,61 +1578,46 @@ void TrackArtist::DrawClipSpectrum(WaveTrack* track, WaveClip *clip,
if (!image)return;
unsigned char *data = image->GetData();
- int windowSize = gPrefs->Read(wxT("/Spectrum/FFTSize"), 256);
-#ifdef EXPERIMENTAL_FFT_SKIP_POINTS
- int fftSkipPoints = gPrefs->Read(wxT("/Spectrum/FFTSkipPoints"), 0L);
-#endif //EXPERIMENTAL_FFT_SKIP_POINTS
-#ifdef EXPERIMENTAL_FFT_Y_GRID
- bool fftYGrid = (gPrefs->Read(wxT("/Spectrum/FFTYGrid"), 0L) != 0);
-#endif //EXPERIMENTAL_FFT_Y_GRID
+ int windowSize = GetSpectrumWindowSize();
int half = windowSize/2;
float *freq = new float[mid.width * half];
sampleCount *where = new sampleCount[mid.width+1];
bool updated = clip->GetSpectrogram(freq, where, mid.width,
t0, pps, autocorrelation);
- bool isGrayscale = false;
- gPrefs->Read(wxT("/Spectrum/Grayscale"), &isGrayscale, false);
int ifreq = lrint(rate/2);
+
int maxFreq;
if (!logF)
- maxFreq = gPrefs->Read(wxT("/Spectrum/MaxFreq"), ifreq);
+ maxFreq = GetSpectrumMaxFreq(ifreq);
else
- maxFreq = gPrefs->Read(wxT("/SpectrumLog/MaxFreq"), ifreq);
+ maxFreq = GetSpectrumLogMaxFreq(ifreq);
if(maxFreq > ifreq)
maxFreq = ifreq;
+
int minFreq;
if (!logF) {
- minFreq = gPrefs->Read(wxT("/Spectrum/MinFreq"), 0L);
- if(minFreq < 0) {
+ minFreq = GetSpectrumMinFreq(0);
+ if(minFreq < 0)
minFreq = 0;
- gPrefs->Write(wxT("/Spectrum/MinFreq"), 0L);
- }
}
else {
- minFreq = gPrefs->Read(wxT("/SpectrumLog/MinFreq"), ifreq/1000.0);
- if(minFreq < 1) {
+ minFreq = GetSpectrumLogMinFreq(ifreq/1000.0);
+ if(minFreq < 1)
minFreq = ifreq/1000.0;
- gPrefs->Write(wxT("/SpectrumLog/MinFreq"), ifreq/1000.0);
- }
}
-#ifdef EXPERIMENTAL_FIND_NOTES
- bool fftFindNotes = (gPrefs->Read(wxT("/Spectrum/FFTFindNotes"), 0L) != 0);
- int findNotesMinA = gPrefs->Read(wxT("/Spectrum/FindNotesMinA"), -30.0);
- int numberOfMaxima = gPrefs->Read(wxT("/Spectrum/FindNotesN"), 5L);
- bool findNotesQuantize = (gPrefs->Read(wxT("/Spectrum/FindNotesQuantize"), 0L) != 0);
-#endif //EXPERIMENTAL_FIND_NOTES
+
bool usePxCache = false;
if( !updated && clip->mSpecPxCache->valid && (clip->mSpecPxCache->len == mid.height * mid.width)
#ifdef EXPERIMENTAL_FFT_Y_GRID
- && fftYGrid==fftYGridOld
+ && mFftYGrid==fftYGridOld
#endif //EXPERIMENTAL_FFT_Y_GRID
#ifdef EXPERIMENTAL_FIND_NOTES
- && fftFindNotes==fftFindNotesOld
- && findNotesMinA==findNotesMinAOld
- && numberOfMaxima==findNotesNOld
- && findNotesQuantize==findNotesQuantizeOld
+ && mFftFindNotes==fftFindNotesOld
+ && mFindNotesMinA==findNotesMinAOld
+ && mNumberOfMaxima==findNotesNOld
+ && mFindNotesQuantize==findNotesQuantizeOld
#endif
) {
usePxCache = true;
@@ -1797,10 +1628,10 @@ void TrackArtist::DrawClipSpectrum(WaveTrack* track, WaveClip *clip,
usePxCache = false;
clip->mSpecPxCache->valid = true;
#ifdef EXPERIMENTAL_FIND_NOTES
- fftFindNotesOld=fftFindNotes;
- findNotesMinAOld=findNotesMinA;
- findNotesNOld=numberOfMaxima;
- findNotesQuantizeOld=findNotesQuantize;
+ fftFindNotesOld=mFftFindNotes;
+ findNotesMinAOld=mFindNotesMinA;
+ findNotesNOld=mNumberOfMaxima;
+ findNotesQuantizeOld=mFindNotesQuantize;
#endif
}
@@ -1818,8 +1649,8 @@ void TrackArtist::DrawClipSpectrum(WaveTrack* track, WaveClip *clip,
lmin=log(float(minFreq)),
lmax=log(float(maxFreq)),
#ifdef EXPERIMENTAL_FFT_SKIP_POINTS
- lmins=log(float(minFreq)/(fftSkipPoints+1)),
- lmaxs=log(float(maxFreq)/(fftSkipPoints+1)),
+ lmins=log(float(minFreq)/(mFftSkipPoints+1)),
+ lmaxs=log(float(maxFreq)/(mFftSkipPoints+1)),
#else //!EXPERIMENTAL_FFT_SKIP_POINTS
lmins=lmin,
lmaxs=lmax,
@@ -1835,8 +1666,8 @@ void TrackArtist::DrawClipSpectrum(WaveTrack* track, WaveClip *clip,
for (int y = 0; y < mid.height; y++) {
float n =(float(y )/mid.height*scale2-lmin2)*12;
float n2=(float(y+1)/mid.height*scale2-lmin2)*12;
- float f =float(minFreq)/(fftSkipPoints+1)*pow(2.0f, n /12.0f+lmin2);
- float f2=float(minFreq)/(fftSkipPoints+1)*pow(2.0f, n2/12.0f+lmin2);
+ float f =float(minFreq)/(mFftSkipPoints+1)*pow(2.0f, n /12.0f+lmin2);
+ float f2=float(minFreq)/(mFftSkipPoints+1)*pow(2.0f, n2/12.0f+lmin2);
n =log(f /440)/log2*12;
n2=log(f2/440)/log2*12;
if (floor(n) < floor(n2))
@@ -1851,7 +1682,7 @@ void TrackArtist::DrawClipSpectrum(WaveTrack* track, WaveClip *clip,
float maxima0[128], maxima1[128];
const float
#ifdef EXPERIMENTAL_FFT_SKIP_POINTS
- f2bin = half/(rate/2.0f/(fftSkipPoints+1)),
+ f2bin = half/(rate/2.0f/(mFftSkipPoints+1)),
#else //!EXPERIMENTAL_FFT_SKIP_POINTS
f2bin = half/(rate/2.0f),
#endif //EXPERIMENTAL_FFT_SKIP_POINTS
@@ -1891,6 +1722,12 @@ void TrackArtist::DrawClipSpectrum(WaveTrack* track, WaveClip *clip,
value += freq[half * x + int (bin0)];
bin0 += 1.0;
}
+
+ // Do not reference past end of freq array.
+ if (int(bin1) >= half) {
+ bin1 -= 1.0;
+ }
+
value += freq[half * x + int (bin1)] * (bin1 - int (bin1));
value /= binwidth;
@@ -1898,7 +1735,7 @@ void TrackArtist::DrawClipSpectrum(WaveTrack* track, WaveClip *clip,
if (!autocorrelation) {
// Last step converts dB to a 0.0-1.0 range
- value = (value + 80.0) / 80.0;
+ value = (value + range + gain) / (double)range;
}
if (value > 1.0)
@@ -1910,7 +1747,7 @@ void TrackArtist::DrawClipSpectrum(WaveTrack* track, WaveClip *clip,
else
value = clip->mSpecPxCache->values[x * mid.height + yy];
- GetColorGradient(value, selflag, isGrayscale, &rv, &gv, &bv);
+ GetColorGradient(value, selflag, mIsGrayscale, &rv, &gv, &bv);
int px = ((mid.height - 1 - yy) * mid.width + x) * 3;
data[px++] = rv;
@@ -1927,14 +1764,14 @@ void TrackArtist::DrawClipSpectrum(WaveTrack* track, WaveClip *clip,
#ifdef EXPERIMENTAL_FIND_NOTES
int maximas=0;
- if (!usePxCache && fftFindNotes) {
+ if (!usePxCache && mFftFindNotes) {
for (int i = maxTableSize-1; i >= 0; i--)
indexes[i]=-1;
// Build a table of (most) values, put the index in it.
for (int i = int(i0); i < int(i1); i++) {
float freqi=freq[x0+int(i)];
- int value=int((freqi+80.0f)/80.0f*(maxTableSize-1));
+ int value=int((freqi+gain+range)/range*(maxTableSize-1));
if (value < 0)
value=0;
if (value >= maxTableSize)
@@ -1946,7 +1783,7 @@ void TrackArtist::DrawClipSpectrum(WaveTrack* track, WaveClip *clip,
int index=indexes[i];
if (index >= 0) {
float freqi=freq[x0+index];
- if (freqi < findNotesMinA)
+ if (freqi < mFindNotesMinA)
break;
bool ok=true;
@@ -1960,7 +1797,7 @@ void TrackArtist::DrawClipSpectrum(WaveTrack* track, WaveClip *clip,
}
if (ok) {
maxima[maximas++] = index;
- if (maximas >= numberOfMaxima)
+ if (maximas >= mNumberOfMaxima)
break;
}
}
@@ -1973,7 +1810,7 @@ void TrackArtist::DrawClipSpectrum(WaveTrack* track, WaveClip *clip,
for (int i=0; i < maximas; i++) {
int index=maxima[i];
float f = float(index)*bin2f;
- if (findNotesQuantize)
+ if (mFindNotesQuantize)
{ f = exp(int(log(f/440)/log2*12-0.5)/12.0f*log2)*440;
maxima[i] = f*f2bin;
}
@@ -2006,7 +1843,7 @@ void TrackArtist::DrawClipSpectrum(WaveTrack* track, WaveClip *clip,
float bin1 = float(yy3);
#ifdef EXPERIMENTAL_FIND_NOTES
- if (fftFindNotes) {
+ if (mFftFindNotes) {
if (it < maximas) {
float i0=maxima0[it];
if (yy >= i0)
@@ -2016,10 +1853,10 @@ void TrackArtist::DrawClipSpectrum(WaveTrack* track, WaveClip *clip,
float i1=maxima1[it];
if (yy+1 <= i1) {
value=sumFreqValues(freq, x0, bin0, bin1);
- if (value < findNotesMinA)
+ if (value < mFindNotesMinA)
value = minColor;
else
- value = (value + 80.0) / 80.0;
+ value = (value + gain + range) / (double)range;
} else {
it++;
inMaximum = false;
@@ -2036,7 +1873,7 @@ void TrackArtist::DrawClipSpectrum(WaveTrack* track, WaveClip *clip,
value=sumFreqValues(freq, x0, bin0, bin1);
if (!autocorrelation) {
// Last step converts dB to a 0.0-1.0 range
- value = (value + 80.0) / 80.0;
+ value = (value + gain + range) / (double)range;
}
}
if (value > 1.0)
@@ -2048,10 +1885,10 @@ void TrackArtist::DrawClipSpectrum(WaveTrack* track, WaveClip *clip,
else
value = clip->mSpecPxCache->values[x * mid.height + yy];
- GetColorGradient(value, selflag, isGrayscale, &rv, &gv, &bv);
+ GetColorGradient(value, selflag, mIsGrayscale, &rv, &gv, &bv);
#ifdef EXPERIMENTAL_FFT_Y_GRID
- if (fftYGrid && yGrid[yy]) {
+ if (mFftYGrid && yGrid[yy]) {
rv /= 1.1f;
gv /= 1.1f;
bv /= 1.1f;
@@ -2090,6 +1927,23 @@ void TrackArtist::DrawClipSpectrum(WaveTrack* track, WaveClip *clip,
#endif //EXPERIMENTAL_FIND_NOTES
}
+void TrackArtist::InvalidateSpectrumCache(TrackList *tracks)
+{
+ TrackListOfKindIterator iter(Track::Wave, tracks);
+ for (Track *t = iter.First(); t; t = iter.Next()) {
+ InvalidateSpectrumCache((WaveTrack *)t);
+ }
+}
+
+void TrackArtist::InvalidateSpectrumCache(WaveTrack *track)
+{
+ WaveClipList::compatibility_iterator it;
+ for (it = track->GetClipIterator(); it; it = it->GetNext()) {
+ it->GetData()->mSpecPxCache->valid = false;
+ }
+}
+
+
#ifdef USE_MIDI
/*
Note: recall that Allegro attributes end in a type identifying letter.
@@ -2268,8 +2122,9 @@ int PITCH_TO_Y(double p, int bottom)
}
void TrackArtist::DrawNoteTrack(NoteTrack *track,
- wxDC &dc, wxRect &r,
- ViewInfo *viewInfo)
+ wxDC & dc,
+ const wxRect & r,
+ const ViewInfo *viewInfo)
{
double h = viewInfo->h;
double pps = viewInfo->zoom;
@@ -2322,11 +2177,11 @@ void TrackArtist::DrawNoteTrack(NoteTrack *track,
if (obottom > r.y && obottom < r.y + r.height) {
dc.SetPen(*wxBLACK_PEN);
- dc.DrawLine(r.x, obottom, r.x + r.width, obottom);
+ AColor::Line(dc, r.x, obottom, r.x + r.width, obottom);
}
if (obottom - 26 > r.y && obottom - 26 < r.y + r.height) {
dc.SetPen(blackStripePen);
- dc.DrawLine(r.x, obottom - 26, r.x + r.width, obottom - 26);
+ AColor::Line(dc, r.x, obottom - 26, r.x + r.width, obottom - 26);
}
wxRect br = r;
@@ -2373,11 +2228,11 @@ void TrackArtist::DrawNoteTrack(NoteTrack *track,
if (obottom > selBG.y && obottom < selBG.y + selBG.height) {
dc.SetPen(*wxBLACK_PEN);
- dc.DrawLine(selBG.x, obottom, selBG.x + selBG.width, obottom);
+ AColor::Line(dc, selBG.x, obottom, selBG.x + selBG.width, obottom);
}
if (obottom - 26 > selBG.y && obottom - 26 < selBG.y + selBG.height) {
dc.SetPen(selectedBlackKeyPen);
- dc.DrawLine(selBG.x, obottom - 26, selBG.x + selBG.width, obottom - 26);
+ AColor::Line(dc, selBG.x, obottom - 26, selBG.x + selBG.width, obottom - 26);
}
wxRect bselBG = selBG;
@@ -2420,12 +2275,13 @@ void TrackArtist::DrawNoteTrack(NoteTrack *track,
// We want to draw in seconds, so we need to convert to seconds
seq->convert_to_seconds();
- seq->iteration_begin();
+ Alg_iterator iterator(seq, false);
+ iterator.begin();
//for every event
Alg_event_ptr evt;
printf ("go time\n");
- while ((evt = seq->iteration_next())) {
-
+ while (evt = iterator.next()) {
+
//printf ("one note");
//if the event is a note
@@ -2477,12 +2333,12 @@ void TrackArtist::DrawNoteTrack(NoteTrack *track,
// } else {
dc.DrawRectangle(nr);
AColor::LightMIDIChannel(&dc, note->chan + 1);
- dc.DrawLine(nr.x, nr.y, nr.x + nr.width-2, nr.y);
- dc.DrawLine(nr.x, nr.y, nr.x, nr.y + nr.height-2);
+ AColor::Line(dc, nr.x, nr.y, nr.x + nr.width-2, nr.y);
+ AColor::Line(dc, nr.x, nr.y, nr.x, nr.y + nr.height-2);
AColor::DarkMIDIChannel(&dc, note->chan + 1);
- dc.DrawLine(nr.x+nr.width-1, nr.y,
+ AColor::Line(dc, nr.x+nr.width-1, nr.y,
nr.x+nr.width-1, nr.y+nr.height-1);
- dc.DrawLine(nr.x, nr.y+nr.height-1,
+ AColor::Line(dc, nr.x, nr.y+nr.height-1,
nr.x+nr.width-1, nr.y+nr.height-1);
// }
}
@@ -2530,7 +2386,7 @@ void TrackArtist::DrawNoteTrack(NoteTrack *track,
y1 = int((y + (y1 - y) * (h1 - x) / (x1 - x)) + 0.5);
x1 = h1;
}
- dc.DrawLine(TIME_TO_X(x), y, TIME_TO_X(x1), y1);
+ AColor::Line(dc, TIME_TO_X(x), y, TIME_TO_X(x1), y1);
} else if (shape == rectangle) {
if (x < h) { // clip on left, leave 10 pixels to spare
x = h - (linethick + 10) / pps;
@@ -2617,7 +2473,7 @@ void TrackArtist::DrawNoteTrack(NoteTrack *track,
// now do justification
const char *s = LookupStringAttribute(note, texts, "");
#ifdef __WXMAC__
- long textWidth, textHeight;
+ long textWidth, textHeight;
#else
int textWidth, textHeight;
#endif
@@ -2651,15 +2507,16 @@ void TrackArtist::DrawNoteTrack(NoteTrack *track,
}
}
}
- seq->iteration_end();
+ iterator.end();
dc.DestroyClippingRegion();
}
#endif // USE_MIDI
void TrackArtist::DrawLabelTrack(LabelTrack *track,
- wxDC & dc, wxRect & r,
- ViewInfo * viewInfo)
+ wxDC & dc,
+ const wxRect & r,
+ const ViewInfo *viewInfo)
{
double sel0 = viewInfo->sel0;
double sel1 = viewInfo->sel1;
@@ -2671,8 +2528,9 @@ void TrackArtist::DrawLabelTrack(LabelTrack *track,
}
void TrackArtist::DrawTimeTrack(TimeTrack *track,
- wxDC & dc, wxRect & r,
- ViewInfo * viewInfo)
+ wxDC & dc,
+ const wxRect & r,
+ const ViewInfo *viewInfo)
{
track->Draw(dc, r, viewInfo->h, viewInfo->zoom);
wxRect envRect = r;
@@ -2685,6 +2543,83 @@ void TrackArtist::UpdatePrefs()
{
mdBrange = gPrefs->Read(wxT("/GUI/EnvdBRange"), mdBrange);
mShowClipping = gPrefs->Read(wxT("/GUI/ShowClipping"), mShowClipping);
+
+ mMaxFreq = gPrefs->Read(wxT("/Spectrum/MaxFreq"), -1);
+ mMinFreq = gPrefs->Read(wxT("/Spectrum/MinFreq"), -1);
+ mLogMaxFreq = gPrefs->Read(wxT("/SpectrumLog/MaxFreq"), -1);
+ mLogMinFreq = gPrefs->Read(wxT("/SpectrumLog/MinFreq"), -1);
+
+ mWindowSize = gPrefs->Read(wxT("/Spectrum/FFTSize"), 256);
+ mIsGrayscale = (gPrefs->Read(wxT("/Spectrum/Grayscale"), 0L) != 0);
+
+#ifdef EXPERIMENTAL_FFT_Y_GRID
+ mFftYGrid = (gPrefs->Read(wxT("/Spectrum/FFTYGrid"), 0L) != 0);
+#endif //EXPERIMENTAL_FFT_Y_GRID
+
+#ifdef EXPERIMENTAL_FIND_NOTES
+ mFftFindNotes = (gPrefs->Read(wxT("/Spectrum/FFTFindNotes"), 0L) != 0);
+ mFindNotesMinA = gPrefs->Read(wxT("/Spectrum/FindNotesMinA"), -30.0);
+ mNumberOfMaxima = gPrefs->Read(wxT("/Spectrum/FindNotesN"), 5L);
+ mFindNotesQuantize = (gPrefs->Read(wxT("/Spectrum/FindNotesQuantize"), 0L) != 0);
+#endif //EXPERIMENTAL_FIND_NOTES
+
+#ifdef EXPERIMENTAL_FFT_SKIP_POINTS
+ mFftSkipPoints = gPrefs->Read(wxT("/Spectrum/FFTSkipPoints"), 0L);
+#endif //EXPERIMENTAL_FFT_SKIP_POINTS
+}
+
+// Get various preference values
+int TrackArtist::GetSpectrumMinFreq(int deffreq)
+{
+ return mMinFreq < 0 ? deffreq : mMinFreq;
+}
+
+int TrackArtist::GetSpectrumMaxFreq(int deffreq)
+{
+ return mMaxFreq < 0 ? deffreq : mMaxFreq;
+}
+
+int TrackArtist::GetSpectrumLogMinFreq(int deffreq)
+{
+ return mLogMinFreq < 0 ? deffreq : mLogMinFreq;
+}
+
+int TrackArtist::GetSpectrumLogMaxFreq(int deffreq)
+{
+ return mLogMaxFreq < 0 ? deffreq : mLogMaxFreq;
+}
+
+int TrackArtist::GetSpectrumWindowSize()
+{
+ return mWindowSize;
+}
+
+#ifdef EXPERIMENTAL_FFT_SKIP_POINTS
+int TrackArtist::GetSpectrumFftSkipPoints()
+{
+ return mFftSkipPoints;
+}
+#endif
+
+// Set various preference values
+void TrackArtist::SetSpectrumMinFreq(int freq)
+{
+ mMinFreq = freq;
+}
+
+void TrackArtist::SetSpectrumMaxFreq(int freq)
+{
+ mMaxFreq = freq;
+}
+
+void TrackArtist::SetSpectrumLogMinFreq(int freq)
+{
+ mLogMinFreq = freq;
+}
+
+void TrackArtist::SetSpectrumLogMaxFreq(int freq)
+{
+ mLogMaxFreq = freq;
}
// Indentation settings for Vim and Emacs and unique identifier for Arch, a
diff --git a/src/TrackArtist.h b/src/TrackArtist.h
index b5f2986..73266f0 100644
--- a/src/TrackArtist.h
+++ b/src/TrackArtist.h
@@ -48,76 +48,142 @@ class AUDACITY_DLL_API TrackArtist {
~TrackArtist();
void SetColours();
- void DrawTracks(TrackList * tracks,
+ void DrawTracks(TrackList *tracks, Track *start,
wxDC & dc, wxRegion & reg,
- wxRect & r, wxRect & clip, ViewInfo * viewInfo,
- bool drawEnvelope,bool drawSamples,bool drawSliders);
+ wxRect & r, wxRect & clip, ViewInfo *viewInfo,
+ bool drawEnvelope, bool drawSamples, bool drawSliders);
- void DrawVRuler(Track * t, wxDC * dc, wxRect & r);
- int GetWaveYPos(float value, int height, bool dB, float dBr);
+ void DrawTrack(const Track *t,
+ wxDC & dc, const wxRect & r, const ViewInfo *viewInfo,
+ bool drawEnvelope, bool drawSamples, bool drawSliders,
+ bool hasSolo);
+
+ void DrawVRuler(Track *t, wxDC *dc, wxRect & r);
+
+ void UpdateVRuler(Track *t, wxRect & r);
void SetInset(int left, int top, int right, int bottom);
void UpdatePrefs();
+ void InvalidateSpectrumCache(TrackList *tracks);
+ void InvalidateSpectrumCache(WaveTrack *track);
+ int GetSpectrumMinFreq(int deffreq);
+ int GetSpectrumMaxFreq(int deffreq);
+ int GetSpectrumLogMinFreq(int deffreq);
+ int GetSpectrumLogMaxFreq(int deffreq);
+ int GetSpectrumWindowSize();
+
+#ifdef EXPERIMENTAL_FFT_SKIP_POINTS
+ int GetSpectrumFftSkipPoints();
+#endif
+
+ void SetSpectrumMinFreq(int freq);
+ void SetSpectrumMaxFreq(int freq);
+ void SetSpectrumLogMinFreq(int freq);
+ void SetSpectrumLogMaxFreq(int freq);
+
+ void SetBackgroundBrushes(wxBrush unselectedBrush, wxBrush selectedBrush,
+ wxPen unselectedPen, wxPen selectedPen) {
+ this->unselectedBrush = unselectedBrush;
+ this->selectedBrush = selectedBrush;
+ this->unselectedPen = unselectedPen;
+ this->selectedPen = selectedPen;
+ }
+
+ private:
+
//
// Lower-level drawing functions
//
void DrawWaveform(WaveTrack *track,
- wxDC & dc, wxRect & r,
- ViewInfo * viewInfo,
- bool drawEnvelope, bool drawSamples,
- bool drawSliders, bool dB, bool muted);
+ wxDC & dc, const wxRect & r, const ViewInfo *viewInfo,
+ bool drawEnvelope, bool drawSamples, bool drawSliders,
+ bool dB, bool muted);
void DrawSpectrum(WaveTrack *track,
- wxDC & dc, wxRect & r,
- ViewInfo * viewInfo, bool autocorrelation, bool logF);
+ wxDC & dc, const wxRect & r, const ViewInfo *viewInfo,
+ bool autocorrelation, bool logF);
#ifdef USE_MIDI
void DrawNoteTrack(NoteTrack *track,
- wxDC & dc, wxRect & r, ViewInfo * viewInfo);
+ wxDC & dc, const wxRect & r, const ViewInfo *viewInfo);
#endif // USE_MIDI
void DrawLabelTrack(LabelTrack *track,
- wxDC & dc, wxRect & r, ViewInfo * viewInfo);
+ wxDC & dc, const wxRect & r, const ViewInfo *viewInfo);
void DrawTimeTrack(TimeTrack *track,
- wxDC & dc, wxRect & r, ViewInfo * viewInfo);
+ wxDC & dc, const wxRect & r, const ViewInfo *viewInfo);
void DrawTimeSlider(WaveTrack *track,
- wxDC & dc, wxRect & r, ViewInfo * viewInfo,
+ wxDC & dc, const wxRect & r, const ViewInfo *viewInfo,
bool rightwards);
- void DrawClipWaveform(WaveTrack* track, WaveClip* clip,
- wxDC & dc, wxRect & r,
- ViewInfo * viewInfo,
- bool drawEnvelope,
- bool drawSamples,
- bool drawSliders,
+ void DrawClipWaveform(WaveTrack *track, WaveClip *clip,
+ wxDC & dc, const wxRect & r, const ViewInfo *viewInfo,
+ bool drawEnvelope, bool drawSamples, bool drawSliders,
bool dB, bool muted);
void DrawClipSpectrum(WaveTrack *track, WaveClip *clip,
- wxDC & dc, wxRect & r,
- ViewInfo * viewInfo, bool autocorrelation, bool logF);
+ wxDC & dc, const wxRect & r, const ViewInfo *viewInfo,
+ bool autocorrelation, bool logF);
- void SetBackgroundBrushes(wxBrush unselectedBrush, wxBrush selectedBrush,
- wxPen unselectedPen, wxPen selectedPen) {
- this->unselectedBrush = unselectedBrush;
- this->selectedBrush = selectedBrush;
- this->unselectedPen = unselectedPen;
- this->selectedPen = selectedPen;
- }
+ // Waveform utility functions
- private:
+ void DrawWaveformBackground(wxDC & dc, const wxRect &r, const double env[],
+ float zoomMin, float zoomMax, bool dB,
+ const sampleCount where[],
+ sampleCount ssel0, sampleCount ssel1,
+ bool drawEnvelope);
+ void DrawMinMaxRMS(wxDC & dc, const wxRect & r, const double env[],
+ float zoomMin, float zoomMax, bool dB,
+ const float min[], const float max[], const float rms[],
+ const int bl[], bool showProgress, bool muted);
+
+ void DrawIndividualSamples(wxDC & dc, const wxRect & r,
+ float zoomMin, float zoomMax, bool dB,
+ WaveClip *clip,
+ double t0, double pps, double h,
+ bool drawSamples, bool showPoints, bool muted);
+
+ void DrawNegativeOffsetTrackArrows(wxDC & dc, const wxRect & r);
+
+ void DrawEnvelope(wxDC & dc, const wxRect & r, const double env[],
+ float zoomMin, float zoomMax, bool dB);
+ void DrawEnvLine(wxDC & dc, const wxRect & r, int x, int y, int cy, bool top);
+
+ // Preference values
+ float mdBrange; // "/GUI/EnvdBRange"
+ long mShowClipping; // "/GUI/ShowClipping"
+ int mLogMaxFreq; // "/SpectrumLog/MaxFreq"
+ int mLogMinFreq; // "/SpectrumLog/MinFreq"
+ int mMaxFreq; // "/Spectrum/MaxFreq"
+ int mMinFreq; // "/Spectrum/MinFreq"
+ int mWindowSize; // "/Spectrum/FFTSize"
+ bool mIsGrayscale; // "/Spectrum/Grayscale"
+
+#ifdef EXPERIMENTAL_FFT_SKIP_POINTS
+ int mFftSkipPoints; // "/Spectrum/FFTSkipPoints"
+#endif //EXPERIMENTAL_FFT_SKIP_POINTS
+
+#ifdef EXPERIMENTAL_FFT_Y_GRID
+ bool mFftYGrid; // "/Spectrum/FFTYGrid"
+#endif //EXPERIMENTAL_FFT_Y_GRID
+
+#ifdef EXPERIMENTAL_FIND_NOTES
+ bool mFftFindNotes; // "/Spectrum/FFTFindNotes"
+ float mFindNotesMinA; // "/Spectrum/FindNotesMinA"
+ int mNumberOfMaxima; // "/Spectrum/FindNotesN"
+ bool mFindNotesQuantize; // "/Spectrum/FindNotesQuantize")
+#endif //EXPERIMENTAL_FIND_NOTES
+
int mInsetLeft;
int mInsetTop;
int mInsetRight;
int mInsetBottom;
- float mdBrange;
- long mShowClipping;
-
wxBrush blankBrush;
wxBrush unselectedBrush;
wxBrush selectedBrush;
@@ -151,49 +217,12 @@ class AUDACITY_DLL_API TrackArtist {
int findNotesNOld;
bool findNotesQuantizeOld;
#endif
-
- // Waveform utility functions
-
- void DrawWaveformBackground(wxDC &dc, wxRect r, uchar *imageBuffer,
- sampleCount *where, sampleCount ssel0, sampleCount ssel1,
- double *env,
- float zoomMin, float zoomMax,
- bool dB, bool drawEnvelope);
-
- void DrawIndividualSamples(wxDC &dc, wxRect r,
- WaveTrack *track,
- double t0, double pps, double h,
- float zoomMin, float zoomMax,
- bool dB,
- bool drawSamples,
- bool showPoints, bool muted);
-
- void DrawIndividualClipSamples(wxDC &dc, wxRect r,
- WaveClip *clip,
- double t0, double pps, double h,
- float zoomMin, float zoomMax,
- bool dB,
- bool drawSamples,
- bool showPoints, bool muted);
-
- void DrawMinMaxRMS(wxDC &dc, wxRect r, uchar *imageBuffer,
- float zoomMin, float zoomMax,
- double *envValues,
- float *min, float *max, float *rms,int* bl,
- bool dB, bool muted, bool showProgress);
-
- void DrawNegativeOffsetTrackArrows(wxDC &dc, wxRect &r);
-
- void DrawEnvLine(wxDC &dc, wxRect r, int x, int y, bool top);
-
};
-extern int GetWaveYPosNew(float value, float min, float max,
+extern int GetWaveYPos(float value, float min, float max,
int height, bool dB, bool outer, float dBr,
bool clip);
-
-
#endif // define __AUDACITY_TRACKARTIST__
// Indentation settings for Vim and Emacs and unique identifier for Arch, a
diff --git a/src/TrackPanel.cpp b/src/TrackPanel.cpp
index 8233d4c..4655769 100644
--- a/src/TrackPanel.cpp
+++ b/src/TrackPanel.cpp
@@ -153,13 +153,12 @@ is time to refresh some aspect of the screen.
#include "Audacity.h"
+#include "Experimental.h"
#include "TrackPanel.h"
#include <math.h>
-#if DEBUG_DRAW_TIMING
-#include <sys/time.h>
-#endif
+//#define DEBUG_DRAW_TIMING 1
#include <wx/combobox.h>
#include <wx/dcclient.h>
@@ -188,6 +187,14 @@ is time to refresh some aspect of the screen.
#include "float_cast.h"
#include "Internat.h"
#include "LabelTrack.h"
+#ifdef EXPERIMENTAL_LYRICS_WINDOW
+ #include "Lyrics.h"
+ #include "LyricsWindow.h"
+#endif
+#ifdef EXPERIMENTAL_MIXER_BOARD
+ #include "MixerBoard.h"
+#endif
+
#include "NoteTrack.h"
#include "Prefs.h"
#include "Project.h"
@@ -227,6 +234,7 @@ WX_DEFINE_OBJARRAY(TrackClipArray);
#define kLeftInset 4
#define kTopInset 4
+#define kTimerInterval 50 // milliseconds
// Is the distance between A and B less than D?
template < class A, class B, class DIST > bool within(A a, B b, DIST d)
@@ -260,18 +268,6 @@ template < class CLIPPEE, class CLIPVAL >
clippee = val;
}
-/// \todo Probably should move to 'Utils.cpp'.
-void SetTrackInfoFont(wxDC * dc)
-{
- int fontSize = 10;
-#if defined __WXMSW__ || __WXGTK__
- fontSize = 8;
-#endif
-
- wxFont labelFont(fontSize, wxSWISS, wxNORMAL, wxNORMAL);
- dc->SetFont(labelFont);
-}
-
enum {
TrackPanelFirstID = 2000,
OnSetNameID,
@@ -307,13 +303,13 @@ enum {
OnPitchID,
OnSplitStereoID,
+ OnSplitStereoMonoID,
OnMergeStereoID,
OnSetTimeTrackRangeID,
OnCutSelectedTextID,
OnCopySelectedTextID,
OnPasteSelectedTextID,
- OnStickySubmenuID = 12000,//leave 12000-12999 open for sticky tracks
};
BEGIN_EVENT_TABLE(TrackPanel, wxWindow)
@@ -341,12 +337,12 @@ BEGIN_EVENT_TABLE(TrackPanel, wxWindow)
EVT_MENU_RANGE(On16BitID, OnFloatID, TrackPanel::OnFormatChange)
EVT_MENU(OnRateOtherID, TrackPanel::OnRateOther)
EVT_MENU(OnSplitStereoID, TrackPanel::OnSplitStereo)
+ EVT_MENU(OnSplitStereoMonoID, TrackPanel::OnSplitStereoMono)
EVT_MENU(OnMergeStereoID, TrackPanel::OnMergeStereo)
EVT_MENU(OnCutSelectedTextID, TrackPanel::OnCutSelectedText)
EVT_MENU(OnCopySelectedTextID, TrackPanel::OnCopySelectedText)
EVT_MENU(OnPasteSelectedTextID, TrackPanel::OnPasteSelectedText)
- EVT_MENU_RANGE(OnStickySubmenuID, OnStickySubmenuID+999, TrackPanel::OnTrackSticky)
END_EVENT_TABLE()
/// Makes a cursor from an XPM, uses CursorId as a fallback.
@@ -410,9 +406,10 @@ wxCursor * MakeCursor( int CursorId, const char * pXpm[36], int HotX, int HotY
pCursor = new wxCursor((const char *)bits, w, h,
HotX-HotAdjust, HotY-HotAdjust,
- (const char *)maskBits,
- new wxColour(0, 0, 0),
- new wxColour(255, 255, 255));
+ (const char *)maskBits);
+
+ delete [] bits;
+ delete [] maskBits;
#else
Image.SetOption( wxIMAGE_OPTION_CUR_HOTSPOT_X, HotX-HotAdjust );
@@ -485,6 +482,12 @@ TrackPanel::TrackPanel(wxWindow * parent, wxWindowID id,
mAdjustLeftSelectionCursor = new wxCursor(wxCURSOR_POINT_LEFT);
mAdjustRightSelectionCursor = new wxCursor(wxCURSOR_POINT_RIGHT);
+ mWaveTrackMenu = NULL;
+ mNoteTrackMenu = NULL;
+ mLabelTrackMenu = NULL;
+ mLabelTrackInfoMenu = NULL;
+ mTimeTrackMenu = NULL;
+
BuildMenus();
mTrackArtist = new TrackArtist();
@@ -497,7 +500,7 @@ TrackPanel::TrackPanel(wxWindow * parent, wxWindowID id,
mTimeCount = 0;
mTimer.parent = this;
- mTimer.Start(50, FALSE);
+ mTimer.Start(kTimerInterval, FALSE);
//Initialize a member variable pointing to the current
//drawing track.
@@ -521,10 +524,74 @@ TrackPanel::TrackPanel(wxWindow * parent, wxWindowID id,
mLastCursor = -1;
mLastIndicator = -1;
+
+ // Register for tracklist updates
+ mTracks->Connect(EVT_TRACKLIST_RESIZED,
+ wxCommandEventHandler(TrackPanel::OnTrackListResized),
+ NULL,
+ this);
+ mTracks->Connect(EVT_TRACKLIST_UPDATED,
+ wxCommandEventHandler(TrackPanel::OnTrackListUpdated),
+ NULL,
+ this);
+}
+
+TrackPanel::~TrackPanel()
+{
+ mTimer.Stop();
+
+ // Unregister for tracklist updates
+ mTracks->Disconnect(EVT_TRACKLIST_UPDATED,
+ wxCommandEventHandler(TrackPanel::OnTrackListUpdated),
+ NULL,
+ this);
+ mTracks->Disconnect(EVT_TRACKLIST_RESIZED,
+ wxCommandEventHandler(TrackPanel::OnTrackListResized),
+ NULL,
+ this);
+
+ // This can happen if a label is being edited and the user presses
+ // ALT+F4 or Command+Q
+ if (HasCapture())
+ ReleaseMouse();
+
+ if (mBacking)
+ {
+ mBackingDC.SelectObject( wxNullBitmap );
+ delete mBacking;
+ }
+ delete mTrackArtist;
+
+ delete mArrowCursor;
+ delete mPencilCursor;
+ delete mSelectCursor;
+ delete mEnvelopeCursor;
+ delete mDisabledCursor;
+ delete mSlideCursor;
+ delete mResizeCursor;
+ delete mSmoothCursor;
+ delete mZoomInCursor;
+ delete mZoomOutCursor;
+ delete mLabelCursorLeft;
+ delete mLabelCursorRight;
+ delete mRearrangeCursor;
+ delete mAdjustLeftSelectionCursor;
+ delete mAdjustRightSelectionCursor;
+
+ delete mSnapManager;
+
+ DeleteMenus();
+
+#if !wxUSE_ACCESSIBILITY
+ delete mAx;
+#endif
}
void TrackPanel::BuildMenus(void)
{
+ // Get rid of existing menus
+ DeleteMenus();
+
// Use AppendCheckItem so we can have ticks beside the items.
// We would use AppendRadioItem but it only currently works on windows and GTK.
mRateMenu = new wxMenu();
@@ -559,6 +626,7 @@ void TrackPanel::BuildMenus(void)
mWaveTrackMenu->AppendCheckItem(OnChannelRightID, _("Right Channel"));
mWaveTrackMenu->Append(OnMergeStereoID, _("Make Stereo Track"));
mWaveTrackMenu->Append(OnSplitStereoID, _("Split Stereo Track"));
+ mWaveTrackMenu->Append(OnSplitStereoMonoID, _("Split Stereo to Mono"));
mWaveTrackMenu->AppendSeparator();
mWaveTrackMenu->Append(0, _("Set Sample Format"), mFormatMenu);
mWaveTrackMenu->AppendSeparator();
@@ -595,53 +663,34 @@ void TrackPanel::BuildMenus(void)
mLabelTrackInfoMenu->Append(OnPasteSelectedTextID, _("Paste"));
}
-void AudacityProject::RebuildOtherMenus()
-{
- mTrackPanel->BuildMenus();
-}
-
-TrackPanel::~TrackPanel()
+void TrackPanel::DeleteMenus(void)
{
- mTimer.Stop();
-
- // This can happen if a label is being edited and the user presses
- // ALT+F4 or Command+Q
- if (HasCapture())
- ReleaseMouse();
+ // Note that the submenus (mRateMenu, ...)
+ // are deleted by their parent
+ if (mWaveTrackMenu) {
+ delete mWaveTrackMenu;
+ mWaveTrackMenu = NULL;
+ }
- if (mBacking)
- {
- mBackingDC.SelectObject( wxNullBitmap );
- delete mBacking;
+ if (mNoteTrackMenu) {
+ delete mNoteTrackMenu;
+ mNoteTrackMenu = NULL;
}
-// delete mAx;
- delete mTrackArtist;
- delete mArrowCursor;
- delete mPencilCursor;
- delete mSelectCursor;
- delete mEnvelopeCursor;
- delete mDisabledCursor;
- delete mSlideCursor;
- delete mResizeCursor;
- delete mSmoothCursor;
- delete mZoomInCursor;
- delete mZoomOutCursor;
- delete mLabelCursorLeft;
- delete mLabelCursorRight;
- delete mRearrangeCursor;
- delete mAdjustLeftSelectionCursor;
- delete mAdjustRightSelectionCursor;
+ if (mLabelTrackMenu) {
+ delete mLabelTrackMenu;
+ mLabelTrackMenu = NULL;
+ }
- delete mSnapManager;
+ if (mLabelTrackInfoMenu) {
+ delete mLabelTrackInfoMenu;
+ mLabelTrackInfoMenu = NULL;
+ }
- // Note that the submenus (mRateMenu, ...)
- // are deleted by their parent
- delete mWaveTrackMenu;
- delete mNoteTrackMenu;
- delete mLabelTrackMenu;
- delete mLabelTrackInfoMenu;
- delete mTimeTrackMenu;
+ if (mTimeTrackMenu) {
+ delete mTimeTrackMenu;
+ mTimeTrackMenu = NULL;
+ }
}
void TrackPanel::UpdatePrefs()
@@ -662,6 +711,11 @@ void TrackPanel::UpdatePrefs()
if (mTrackArtist) {
mTrackArtist->UpdatePrefs();
}
+
+ // All vertical rulers must be recalculated since the minimum and maximum
+ // frequences may have been changed.
+ UpdateVRulers();
+ Refresh();
}
void TrackPanel::SetStop(bool bStopped)
@@ -675,14 +729,15 @@ void TrackPanel::SetStop(bool bStopped)
/// of the captured track, passing NULL as the track.
void TrackPanel::SetCapturedTrack( Track * t, enum MouseCaptureEnum MouseCapture )
{
- if( t== NULL )
- {
- wxASSERT( MouseCapture == IsUncaptured );
+#if defined(__WXDEBUG__)
+ if (t == NULL) {
+ wxASSERT(MouseCapture == IsUncaptured);
}
- else
- {
- wxASSERT( MouseCapture != IsUncaptured );
+ else {
+ wxASSERT(MouseCapture != IsUncaptured);
}
+#endif
+
mCapturedTrack = t;
mMouseCapture = MouseCapture;
}
@@ -764,12 +819,37 @@ void TrackPanel::OnTimer()
wxCommandEvent dummyEvent;
AudacityProject *p = GetProject();
+ #ifdef EXPERIMENTAL_LYRICS_WINDOW
+ if (p->GetAudioIOToken() > 0)
+ {
+ // Update lyrics display.
+ LyricsWindow* pLyricsWindow = p->GetLyricsWindow();
+ if (pLyricsWindow)
+ {
+ Lyrics* pLyricsPanel = pLyricsWindow->GetLyricsPanel();
+ pLyricsPanel->Update(gAudioIO->GetStreamTime());
+ }
+ }
+ #endif
+ #ifdef EXPERIMENTAL_MIXER_BOARD
+ MixerBoard* pMixerBoard = p->GetMixerBoard();
+ if (pMixerBoard && (p->GetAudioIOToken() > 0))
+ pMixerBoard->UpdateMeters(gAudioIO->GetStreamTime());
+ #endif
+
// Each time the loop, check to see if we were playing or
// recording audio, but the stream has stopped.
if (p->GetAudioIOToken()>0 &&
- !gAudioIO->IsStreamActive(p->GetAudioIOToken())) {
+ !gAudioIO->IsStreamActive(p->GetAudioIOToken())
+#ifdef EXPERIMENTAL_MIDI_OUT
+ && !gAudioIO->IsMidiActive()
+#endif
+ ) {
p->GetControlToolBar()->OnStop(dummyEvent);
- printf( "HCK OnTimer\n" );
+ #ifdef EXPERIMENTAL_MIXER_BOARD
+ if (pMixerBoard)
+ pMixerBoard->ResetMeters();
+ #endif
}
// Next, check to see if we were playing or recording
@@ -778,7 +858,11 @@ void TrackPanel::OnTimer()
// and flush the tracks once we've completely finished
// recording new state.
if (p->GetAudioIOToken()>0 &&
- !gAudioIO->IsAudioTokenActive(p->GetAudioIOToken())) {
+ !gAudioIO->IsAudioTokenActive(p->GetAudioIOToken())
+#ifdef EXPERIMENTAL_MIDI_OUT
+ && !gAudioIO->IsMidiActive()
+#endif
+ ) {
if (gAudioIO->GetNumCaptureChannels() > 0) {
// Tracks are buffered during recording. This flushes
@@ -825,15 +909,7 @@ void TrackPanel::OnTimer()
// Must tell OnPaint() to recreate the backing bitmap
// since we've not done a full refresh.
mRefreshBacking = true;
-
- // Refresh only the waveform area, not the labels
- // (This actually speeds up redrawing!)
- wxRect trackRect;
- GetSize(&trackRect.width, &trackRect.height);
- trackRect.x = GetLeftOffset();
- trackRect.y = 0;
- trackRect.width -= GetLeftOffset();
- Refresh(false, &trackRect);
+ Refresh( false );
}
}
}
@@ -918,7 +994,7 @@ void TrackPanel::DoDrawIndicator(wxDC & dc)
dc.Blit( x, 0, 1, mBacking->GetHeight(), &mBackingDC, x, 0 );
}
- // Nothing's every perfect...
+ // Nothing's ever perfect...
//
// Redraw the cursor since we may have just wiped it out
if( mLastCursor == mLastIndicator )
@@ -964,38 +1040,32 @@ void TrackPanel::DoDrawIndicator(wxDC & dc)
// Remember it
mLastIndicator = pos;
- // Get the size of the trackpanel region, so we know where to redraw
- wxRect panelarea = GetRect();
- panelarea.x = GetLeftOffset();
-
// Set play/record color
- bool rec = gAudioIO->GetNumCaptureChannels() ? false : true;
- AColor::IndicatorColor( &dc, rec );
-
- // Draw cursor in all visible tracks
- TrackListIterator iter( mTracks );
+ bool rec = (gAudioIO->GetNumCaptureChannels() > 0);
+ AColor::IndicatorColor( &dc, !rec);
- // Iterate through each track
+ // Calculate the horizontal position of the indicator
x = GetLeftOffset() + int ( ( pos - mViewInfo->h ) * mViewInfo->zoom );
- int y = -mViewInfo->vpos;
- Track *t;
- for( t = iter.First(); t; t = iter.Next() )
+
+ // Draw indicator in all visible tracks
+ VisibleTrackIterator iter( GetProject() );
+ for( Track *t = iter.First(); t; t = iter.Next() )
{
- int height = t->GetHeight();
- wxCoord top = y + kTopInset + 1;
- wxCoord bottom = y + height - 2;
- wxRect trackarea( x, top, 1, bottom - top );
-
- // Only want non-Label tracks that are visible
- if( ( panelarea.Intersects( trackarea ) ) &&
- ( t->GetKind() != Track::Label ) )
+ // Don't draw the indicator in label tracks
+ if( t->GetKind() == Track::Label )
{
- // Draw the new indicator in its new location
- dc.DrawLine( x, top, x, bottom );
+ continue;
}
- // Increment y so you draw on the proper track
- y += height;
+ // Convert virtual coordinate to physical
+ int y = t->GetY() - mViewInfo->vpos;
+
+ // Draw the new indicator in its new location
+ AColor::Line(dc,
+ x,
+ y + kTopInset + 1,
+ x,
+ y + t->GetHeight() - 3 );
}
mRuler->DrawIndicator( pos, rec );
@@ -1047,30 +1117,29 @@ void TrackPanel::DoDrawCursor(wxDC & dc)
x = GetLeftOffset() +
int ( ( mLastCursor - mViewInfo->h ) * mViewInfo->zoom );
- int y = -mViewInfo->vpos;
// Draw cursor in all selected tracks
- TrackListIterator iter(mTracks);
- Track *t;
- for( t = iter.First(); t; t = iter.Next() )
+ VisibleTrackIterator iter( GetProject() );
+ for( Track *t = iter.First(); t; t = iter.Next() )
{
- int height = t->GetHeight();
- wxCoord top = y + kTopInset + 1;
- wxCoord bottom = y + height - 2;
-
- if( t->GetSelected() && t->GetKind() == Track::Time )
+ if( t->GetSelected() || mAx->IsFocused( t ) )
{
- TimeTrack *tt = (TimeTrack *) t;
- double t0 = tt->warp( mLastCursor - mViewInfo->h );
- int warpedX = GetLeftOffset() + int ( t0 * mViewInfo->zoom );
- dc.DrawLine( warpedX, top, warpedX, bottom );
- }
- else if( t->GetSelected() || mAx->IsFocused( t ) )
- {
- dc.DrawLine( x, top, x, bottom ); // <-- The whole point of this routine.
- }
+ int y = t->GetY() - mViewInfo->vpos + 1;
+ wxCoord top = y + kTopInset;
+ wxCoord bottom = y + t->GetHeight() - kTopInset;
- y += height;
+ if( t->GetKind() == Track::Time )
+ {
+ TimeTrack *tt = (TimeTrack *) t;
+ double t0 = tt->warp( mLastCursor - mViewInfo->h );
+ int warpedX = GetLeftOffset() + int ( t0 * mViewInfo->zoom );
+ AColor::Line( dc, warpedX, top, warpedX, bottom );
+ }
+ else
+ {
+ AColor::Line( dc, x, top, x, bottom ); // <-- The whole point of this routine.
+ }
+ }
}
// AS: Ah, no, this is where we draw the blinky thing in the ruler.
@@ -1164,7 +1233,8 @@ void TrackPanel::OnPaint(wxPaintEvent & /* event */)
#if DEBUG_DRAW_TIMING
sw.Pause();
- wxLogDebug(wxT("Total: %d milliseconds"), sw.Time() );
+ wxLogDebug(wxT("Total: %d milliseconds"), sw.Time());
+ wxPrintf(wxT("Total: %d milliseconds\n"), sw.Time());
#endif
}
@@ -1208,6 +1278,15 @@ void TrackPanel::HandleCursorForLastMouseEvent()
HandleCursor(mLastMouseEvent);
}
+#ifdef EXPERIMENTAL_MIXER_BOARD
+ MixerBoard* TrackPanel::GetMixerBoard()
+ {
+ AudacityProject *p = GetProject();
+ wxASSERT(p);
+ return p->GetMixerBoard();
+ }
+#endif
+
/// Used to determine whether it is safe or not to perform certain
/// edits at the moment.
/// @return true if audio is being recorded or is playing.
@@ -1311,7 +1390,7 @@ void TrackPanel::SetCursorAndTipWhenInLabelTrack( LabelTrack * pLT,
if( edge != pLT->mOldEdge )
{
pLT->mOldEdge = edge;
- RefreshTrack( pLT, true );
+ RefreshTrack( pLT );
}
// IF edge!=0 THEN we've set the cursor and we're done.
// signal this by setting the tip.
@@ -1459,9 +1538,8 @@ void TrackPanel::HandleCursor(wxMouseEvent & event)
// (2) If we are not over a track at all, set the cursor to Arrow and
// clear the StatusBar,
wxRect r;
- int num;
- Track *label = FindTrack(event.m_x, event.m_y, true, true, &r, &num);
- Track *nonlabel = FindTrack(event.m_x, event.m_y, false, false, &r, &num);
+ Track *label = FindTrack(event.m_x, event.m_y, true, true, &r);
+ Track *nonlabel = FindTrack(event.m_x, event.m_y, false, false, &r);
Track *t = label ? label : nonlabel;
if (!t) {
@@ -1539,8 +1617,7 @@ void TrackPanel::HandleCursor(wxMouseEvent & event)
void TrackPanel::HandleSelect(wxMouseEvent & event)
{
wxRect r;
- int num;
- Track *t = FindTrack(event.m_x, event.m_y, false, false, &r, &num);
+ Track *t = FindTrack(event.m_x, event.m_y, false, false, &r);
// AS: Ok, did the user just click the mouse, release the mouse,
// or drag?
@@ -1549,7 +1626,7 @@ void TrackPanel::HandleSelect(wxMouseEvent & event)
// to extend the current selection or start a new selection,
// depending on the shift key. If not, cancel all selections.
if (t)
- SelectionHandleClick(event, t, r, num);
+ SelectionHandleClick(event, t, r);
else {
SelectNone();
Refresh(false);
@@ -1570,9 +1647,8 @@ void TrackPanel::HandleSelect(wxMouseEvent & event)
} else if (event.LeftDClick() && !event.ShiftDown()) {
if (!mCapturedTrack) {
wxRect r;
- int num;
mCapturedTrack =
- FindTrack(event.m_x, event.m_y, false, false, &r, &num);
+ FindTrack(event.m_x, event.m_y, false, false, &r);
if (!mCapturedTrack)
return;
}
@@ -1617,11 +1693,10 @@ void TrackPanel::HandleSelect(wxMouseEvent & event)
/// This function gets called when we're handling selection
/// and the mouse was just clicked.
void TrackPanel::SelectionHandleClick(wxMouseEvent & event,
- Track * pTrack, wxRect r, int num)
+ Track * pTrack, wxRect r)
{
mCapturedTrack = pTrack;
mCapturedRect = r;
- mCapturedNum = num;
mMouseClickX = event.m_x;
mMouseClickY = event.m_y;
@@ -1872,12 +1947,11 @@ void TrackPanel::SelectionHandleDrag(wxMouseEvent & event, Track *clickedTrack)
return;
wxRect r = mCapturedRect;
- int num = mCapturedNum;
Track *pTrack = mCapturedTrack;
- // AS: Note that FindTrack will replace r and num's values.
+ // AS: Note that FindTrack will replace r's value.
if (!pTrack)
- pTrack = FindTrack(event.m_x, event.m_y, false, false, &r, &num);
+ pTrack = FindTrack(event.m_x, event.m_y, false, false, &r);
// Also fuhggeddaboudit if not in a track.
if (!pTrack)
@@ -1894,30 +1968,31 @@ void TrackPanel::SelectionHandleDrag(wxMouseEvent & event, Track *clickedTrack)
const int minimumSizedSelection = 5; //measured in pixels
wxInt64 SelStart=TimeToPosition( mSelStart, r.x); //cvt time to pixels.
// Abandon this drag if selecting < 5 pixels.
- if(wxLongLong(SelStart-x).Abs() < minimumSizedSelection)
+ if (wxLongLong(SelStart-x).Abs() < minimumSizedSelection)
return;
// Handle which tracks are selected
- int num2;
- if (0 != FindTrack(x, y, false, false, NULL, &num2)) {
- // The tracks numbered num...num2 should be selected
+ if (Track *eTrack = FindTrack(x, y, false, false, NULL)) {
+ // Swap the track pointers if needed
+ if (eTrack->GetIndex() < pTrack->GetIndex()) {
+ Track *t = eTrack;
+ eTrack = pTrack;
+ pTrack = t;
+ }
TrackListIterator iter(mTracks);
- Track *t = iter.First();
- for (int i = 1; t; i++, t = iter.Next()) {
- if ((i >= num && i <= num2) || (i >= num2 && i <= num))
- mTracks->Select(t);
- }
+ pTrack = iter.StartWith(pTrack);
+ do {
+ mTracks->Select(pTrack);
+ if (pTrack == eTrack) {
+ break;
+ }
+
+ pTrack = iter.Next();
+ } while (pTrack);
}
ExtendSelection(x, r.x, clickedTrack);
-
-#ifdef __WXMAC__
-#if ((wxMAJOR_VERSION == 2) && (wxMINOR_VERSION <= 4))
- if (mAutoScrolling)
- MacUpdateImmediately();
-#endif
-#endif
}
/// Converts a position (mouse X coordinate) to
@@ -1946,8 +2021,7 @@ void TrackPanel::HandleEnvelope(wxMouseEvent & event)
{
if (event.LeftDown()) {
wxRect r;
- int num;
- mCapturedTrack = FindTrack(event.m_x, event.m_y, false, false, &r, &num);
+ mCapturedTrack = FindTrack(event.m_x, event.m_y, false, false, &r);
if (!mCapturedTrack)
return;
@@ -1963,7 +2037,6 @@ void TrackPanel::HandleEnvelope(wxMouseEvent & event)
mCapturedRect = r;
mCapturedRect.y += kTopInset;
mCapturedRect.height -= kTopInset;
- mCapturedNum = num;
}
// AS: if there's actually a selected track, then forward all of the
// mouse events to its envelope.
@@ -1995,10 +2068,8 @@ void TrackPanel::ForwardEventToTimeTrackEnvelope(wxMouseEvent & event)
event, envRect,
mViewInfo->h, mViewInfo->zoom,
false,0.,1.);
- if( needUpdate )
- {
- //ptimetrack->Draw();
- Refresh(false);
+ if (needUpdate) {
+ RefreshTrack(mCapturedTrack);
}
}
@@ -2017,13 +2088,13 @@ void TrackPanel::ForwardEventToWaveTrackEnvelope(wxMouseEvent & event)
// AS: WaveTracks can be displayed in several different formats.
// This asks which one is in use. (ie, Wave, Spectrum, etc)
int display = pwavetrack->GetDisplay();
- bool needUpdate = false;
// AS: If we're using the right type of display for envelope operations
// ie one of the Wave displays
if (display <= 1) {
bool dB = (display == 1);
-
+ bool needUpdate = false;
+
// AS: Then forward our mouse event to the envelope.
// It'll recalculate and then tell us whether or not to redraw.
wxRect envRect = mCapturedRect;
@@ -2038,7 +2109,7 @@ void TrackPanel::ForwardEventToWaveTrackEnvelope(wxMouseEvent & event)
// If this track is linked to another track, make the identical
// change to the linked envelope:
- WaveTrack *link = (WaveTrack *) mTracks->GetLink(mCapturedTrack);
+ WaveTrack *link = (WaveTrack *) mCapturedTrack->GetLink();
if (link) {
Envelope *e2 = link->GetEnvelopeAtX(event.GetX());
// There isn't necessarily an envelope there; no guarantee a
@@ -2070,9 +2141,10 @@ void TrackPanel::ForwardEventToWaveTrackEnvelope(wxMouseEvent & event)
}
}
}
- }
- if (needUpdate) {
- Refresh(false);
+
+ if (needUpdate) {
+ RefreshTrack(mCapturedTrack);
+ }
}
}
@@ -2143,12 +2215,11 @@ void TrackPanel::HandleSlide(wxMouseEvent & event)
void TrackPanel::StartSlide(wxMouseEvent & event)
{
wxRect r;
- int num;
mHSlideAmount = 0.0;
mDidSlideVertically = false;
- Track *vt = FindTrack(event.m_x, event.m_y, false, false, &r, &num);
+ Track *vt = FindTrack(event.m_x, event.m_y, false, false, &r);
if (!vt)
return;
@@ -2181,14 +2252,14 @@ void TrackPanel::StartSlide(wxMouseEvent & event)
mCapturedClipIsSelection = true;
- TrackListIterator iter(mTracks);
- Track *t = iter.First();
- while (t) {
- if (t->GetSelected()) {
+ TrackGroupIterator iter(mTracks);
+ Track *t;
+ if (GetProject()->IsSticky() && (t = iter.First(wt))) {
+ while (t) {
if (t->GetKind() == Track::Wave) {
WaveTrack *wt = (WaveTrack *)t;
- WaveClipList::Node* it;
- for(it=wt->GetClipIterator(); it; it=it->GetNext()) {
+ WaveClipList::compatibility_iterator it;
+ for (it = wt->GetClipIterator(); it; it = it->GetNext()) {
WaveClip *clip = it->GetData();
double clip0 = clip->GetStartTime();
double clip1 = clip->GetEndTime();
@@ -2197,28 +2268,75 @@ void TrackPanel::StartSlide(wxMouseEvent & event)
clip1 >= mViewInfo->sel0) {
mCapturedClipArray.Add(TrackClip(wt, clip));
}
- }
+ }
}
else {
mCapturedClipArray.Add(TrackClip(t, NULL));
}
+ t = iter.Next();
+ }
+ }
+ else {
+ TrackListIterator iter(mTracks);
+ Track *t = iter.First();
+ while (t) {
+ if (t->GetSelected()) {
+ if (t->GetKind() == Track::Wave) {
+ WaveTrack *wt = (WaveTrack *)t;
+ WaveClipList::compatibility_iterator it;
+ for (it = wt->GetClipIterator(); it; it = it->GetNext()) {
+ WaveClip *clip = it->GetData();
+ double clip0 = clip->GetStartTime();
+ double clip1 = clip->GetEndTime();
+
+ if (clip0 <= mViewInfo->sel1 &&
+ clip1 >= mViewInfo->sel0) {
+ mCapturedClipArray.Add(TrackClip(wt, clip));
+ }
+ }
+ }
+ else {
+ mCapturedClipArray.Add(TrackClip(t, NULL));
+ }
+ }
+ t = iter.Next();
}
- t = iter.Next();
}
}
else {
- // Only add mCapturedClip, and possibly its stereo partner,
- // to the list of clips to move.
-
mCapturedClipIsSelection = false;
+ TrackGroupIterator iter(mTracks);
+ Track *t;
+ if (GetProject()->IsSticky() && (t = iter.First(wt))) {
+ while (t) {
+ if (t->GetKind() == Track::Wave) {
+ WaveTrack *wt = (WaveTrack *)t;
+ WaveClipList::compatibility_iterator it;
+ for (it = wt->GetClipIterator(); it; it = it->GetNext()) {
+ WaveClip *clip = it->GetData();
+ mCapturedClipArray.Add(TrackClip(wt, clip));
+ }
+ }
+ else {
+ mCapturedClipArray.Add(TrackClip(t, NULL));
+ }
+ t = iter.Next();
+ }
+ }
+ else {
+ // Only add mCapturedClip, and possibly its stereo partner,
+ // to the list of clips to move.
- mCapturedClipArray.Add(TrackClip(wt, mCapturedClip));
+ mCapturedClipIsSelection = false;
- Track *partner = mTracks->GetLink(wt);
- if (partner && partner->GetKind()==Track::Wave) {
- WaveClip *clip = ((WaveTrack *)partner)->GetClipAtX(event.m_x);
- if (clip) {
- mCapturedClipArray.Add(TrackClip(partner, clip));
+ mCapturedClipArray.Add(TrackClip(wt, mCapturedClip));
+
+ Track *partner = mTracks->GetLink(wt);
+ if (partner && partner->GetKind()==Track::Wave) {
+ WaveClip *clip = ((WaveTrack *)partner)->GetClipAtX(event.m_x);
+ if (clip) {
+ mCapturedClipArray.Add(TrackClip(partner, clip));
+ }
}
}
}
@@ -2231,7 +2349,6 @@ void TrackPanel::StartSlide(wxMouseEvent & event)
mCapturedTrack = vt;
mCapturedRect = r;
- mCapturedNum = num;
mMouseClickX = event.m_x;
mMouseClickY = event.m_y;
@@ -2267,21 +2384,11 @@ void TrackPanel::DoSlide(wxMouseEvent & event)
// find which track the mouse is currently in (mouseTrack) -
// this may not be the same as the one we started in...
- WaveTrackArray tracks = mTracks->GetWaveTrackArray(false);
- WaveTrack* mouseTrack = NULL;
- for (i=0; i<tracks.GetCount(); i++)
- {
- WaveTrack* track = tracks.Item(i);
- wxRect r;
- track->GetDisplayRect(&r);
- if (event.m_y >= r.y && event.m_y < r.y+r.height)
- {
- mouseTrack = track;
- break;
- }
+ WaveTrack *mouseTrack =
+ (WaveTrack *)FindTrack(event.m_x, event.m_y, false, false, NULL);
+ if (!mouseTrack || mouseTrack->GetKind() != Track::Wave) {
+ return;
}
- if(i>=tracks.GetCount())
- return; // not in a track at all - probably between/above/below them
// Start by undoing the current slide amount; everything
// happens relative to the original horizontal position of
@@ -2498,7 +2605,7 @@ void TrackPanel::HandleZoomClick(wxMouseEvent & event)
return;
mCapturedTrack = FindTrack(event.m_x, event.m_y, false, false,
- &mCapturedRect, &mCapturedNum);
+ &mCapturedRect);
if (!mCapturedTrack)
return;
@@ -2619,7 +2726,7 @@ void TrackPanel::HandleVZoomClick( wxMouseEvent & event )
if (mCapturedTrack)
return;
mCapturedTrack = FindTrack(event.m_x, event.m_y, true, false,
- &mCapturedRect, &mCapturedNum);
+ &mCapturedRect);
if (!mCapturedTrack)
return;
@@ -2680,30 +2787,30 @@ void TrackPanel::HandleVZoomButtonUp( wxMouseEvent & event )
((WaveTrack *) track)->GetDisplay() == WaveTrack::SpectrumDisplay ? spectrum = true : spectrum = false;
spectrumLog=(((WaveTrack *) track)->GetDisplay() == WaveTrack::SpectrumLogDisplay);
if(spectrum) {
- min = gPrefs->Read(wxT("/Spectrum/MinFreq"), 0L);
+ min = mTrackArtist->GetSpectrumMinFreq(0);
if(min < 0)
min = 0;
- max = gPrefs->Read(wxT("/Spectrum/MaxFreq"), 8000L);
+ max = mTrackArtist->GetSpectrumMaxFreq(8000);
if(max > rate/2.)
max = rate/2.;
- windowSize = gPrefs->Read(wxT("/Spectrum/FFTSize"), 256);
+ windowSize = mTrackArtist->GetSpectrumWindowSize();
#ifdef EXPERIMENTAL_FFT_SKIP_POINTS
- fftSkipPoints = gPrefs->Read(wxT("/Spectrum/FFTSkipPoints"), 0L);
+ fftSkipPoints = mTrackArtist->GetSpectrumFftSkipPoints();
#endif //EXPERIMENTAL_FFT_SKIP_POINTS
binSize = rate / windowSize;
minBins = wxMin(10, windowSize/2); //minimum 10 freq bins, unless there are less
}
else
if(spectrumLog) {
- min = gPrefs->Read(wxT("/SpectrumLog/MinFreq"), (long)(rate/2000.0));
+ min = mTrackArtist->GetSpectrumLogMinFreq(lrint(rate/1000.0));
if(min < 1)
min = 1;
- max = gPrefs->Read(wxT("/SpectrumLog/MaxFreq"), (long)(rate/2.));
+ max = mTrackArtist->GetSpectrumLogMaxFreq(lrint(rate/2.));
if(max > rate/2.)
max = rate/2.;
- windowSize = gPrefs->Read(wxT("/Spectrum/FFTSize"), 256);
+ windowSize = mTrackArtist->GetSpectrumWindowSize();
#ifdef EXPERIMENTAL_FFT_SKIP_POINTS
- fftSkipPoints = gPrefs->Read(wxT("/Spectrum/FFTSkipPoints"), 0L);
+ fftSkipPoints = mTrackArtist->GetSpectrumFftSkipPoints();
#endif //EXPERIMENTAL_FFT_SKIP_POINTS
binSize = rate / windowSize;
minBins = wxMin(10, windowSize/2); //minimum 10 freq bins, unless there are less
@@ -2855,40 +2962,15 @@ void TrackPanel::HandleVZoomButtonUp( wxMouseEvent & event )
}
if(spectrum) {
- gPrefs->Write(wxT("/Spectrum/MaxFreq"), (long)max);
- gPrefs->Write(wxT("/Spectrum/MinFreq"), (long)min);
- TrackListIterator iter(mTracks);
- Track *t = iter.First();
- while (t) {
- if (t->GetKind() == Track::Wave) {
- WaveTrack *wt = (WaveTrack *)t;
- WaveClipList::Node* it;
- for(it=wt->GetClipIterator(); it; it=it->GetNext()) {
- WaveClip *clip = it->GetData();
- clip->mSpecPxCache->valid = false;
- }
- }
- t = iter.Next();
- }
+ mTrackArtist->SetSpectrumMaxFreq(max);
+ mTrackArtist->SetSpectrumMinFreq(min);
+ mTrackArtist->InvalidateSpectrumCache(mTracks);
+ }
+ else if(spectrumLog) {
+ mTrackArtist->SetSpectrumLogMaxFreq(max);
+ mTrackArtist->SetSpectrumLogMinFreq(min);
+ mTrackArtist->InvalidateSpectrumCache(mTracks);
}
- else
- if(spectrumLog) {
- gPrefs->Write(wxT("/SpectrumLog/MaxFreq"), (long)max);
- gPrefs->Write(wxT("/SpectrumLog/MinFreq"), (long)min);
- TrackListIterator iter(mTracks);
- Track *t = iter.First();
- while (t) {
- if (t->GetKind() == Track::Wave) {
- WaveTrack *wt = (WaveTrack *)t;
- WaveClipList::Node* it;
- for(it=wt->GetClipIterator(); it; it=it->GetNext()) {
- WaveClip *clip = it->GetData();
- clip->mSpecPxCache->valid = false;
- }
- }
- t = iter.Next();
- }
- }
else {
track->SetDisplayBounds(min, max);
if (partner)
@@ -2896,6 +2978,7 @@ void TrackPanel::HandleVZoomButtonUp( wxMouseEvent & event )
}
mZoomEnd = mZoomStart = 0;
+ UpdateVRuler(mCapturedTrack);
Refresh(false);
mCapturedTrack = NULL;
MakeParentModifyState();
@@ -2951,12 +3034,11 @@ void TrackPanel::HandleSampleEditingClick( wxMouseEvent & event )
{
//declare a rectangle to determine clicking position
wxRect r;
- int dummy;
Track *t;
//Get the track the mouse is over, and save it away for future events
mDrawingTrack = NULL;
- t = FindTrack(event.m_x, event.m_y, false, false, &r, &dummy);
+ t = FindTrack(event.m_x, event.m_y, false, false, &r);
if( !IsSampleEditingPossible( event, t ) )
{
@@ -2973,7 +3055,10 @@ void TrackPanel::HandleSampleEditingClick( wxMouseEvent & event )
//First, calculate the starting sample. To get this, we need the time
double t0 = PositionToTime(event.m_x, GetLeftOffset());
double rate = ((WaveTrack *)mDrawingTrack)->GetRate();
- float newLevel; //Declare this for use later
+
+ // Default to zero for ALT case, so it doesn't cause a runtime fault on MSVC in
+ // the mDrawingLastDragSampleValue assignment at the bottom of this method.
+ float newLevel = 0.0f; //Declare this for use later
//convert t0 to samples
mDrawingStartSample = (sampleCount) (double)(t0 * rate + 0.5 );
@@ -3093,7 +3178,7 @@ void TrackPanel::HandleSampleEditingClick( wxMouseEvent & event )
mDrawingLastDragSampleValue = newLevel;
//Redraw the region of the selected track
- Refresh(false);
+ RefreshTrack(mDrawingTrack);
}
void TrackPanel::HandleSampleEditingDrag( wxMouseEvent & event )
@@ -3196,7 +3281,7 @@ void TrackPanel::HandleSampleEditingDrag( wxMouseEvent & event )
mDrawingLastDragSampleValue = newLevel;
//Redraw the region of the selected track
- Refresh(false);
+ RefreshTrack(mDrawingTrack);
}
void TrackPanel::HandleSampleEditingButtonUp( wxMouseEvent & event )
@@ -3278,33 +3363,37 @@ void TrackPanel::HandleClosing(wxMouseEvent & event)
/// Removes the specified track. Called from HandleClosing.
void TrackPanel::RemoveTrack(Track * toRemove)
{
- TrackListIterator iter(mTracks);
- Track *t;
-
// If it was focused, reassign focus to the next or, if
// unavailable, the previous track.
if (GetFocusedTrack() == toRemove) {
- t = mTracks->GetNext(toRemove, true);
- if (t == NULL)
+ Track *t = mTracks->GetNext(toRemove, true);
+ if (t == NULL) {
t = mTracks->GetPrev( toRemove, true );
+ }
SetFocusedTrack(t); // It's okay if this is NULL
}
- Track *partner = mTracks->GetLink(toRemove);
- wxString name;
+ wxString name = toRemove->GetName();
+ Track *partner = toRemove->GetLink();
- t = iter.First();
- while (t) {
- if (t == toRemove || t == partner) {
- name = t->GetName();
- delete t;
- t = iter.RemoveCurrent();
- } else
- t = iter.Next();
+ #ifdef EXPERIMENTAL_MIXER_BOARD
+ if (toRemove->GetKind() == Track::Wave)
+ {
+ // Update mixer board displayed tracks.
+ MixerBoard* pMixerBoard = this->GetMixerBoard();
+ if (pMixerBoard)
+ pMixerBoard->RemoveTrackCluster((WaveTrack*)toRemove); // Will remove partner shown in same cluster.
+ }
+ #endif
+
+ mTracks->Remove(toRemove, true);
+ if (partner) {
+ mTracks->Remove(partner, true);
}
- if( iter.First() == NULL )
+ if (mTracks->IsEmpty()) {
SetFocusedTrack( NULL );
+ }
MakeParentPushState(
wxString::Format(_("Removed track '%s.'"),
@@ -3367,20 +3456,19 @@ void TrackPanel::HandleMutingSoloing(wxMouseEvent & event, bool solo)
solo, HasSoloButton());
}
else if (event.LeftUp() )
+ {
+ if (buttonRect.Contains(event.m_x, event.m_y))
{
-
- if (buttonRect.Contains(event.m_x, event.m_y))
- {
- if(solo)
-
- OnTrackSolo(event.ShiftDown(),t);
- else
- OnTrackMute(event.ShiftDown(),t);
- }
- SetCapturedTrack( NULL );
- // mTrackInfo.DrawMuteSolo(&dc, r, t, false, solo);
- Refresh(false);
- }
+ // For either, MakeParentPushState to make the track state dirty.
+ if(solo)
+ OnTrackSolo(event.ShiftDown(),t);
+ else
+ OnTrackMute(event.ShiftDown(),t);
+ }
+ SetCapturedTrack( NULL );
+ // mTrackInfo.DrawMuteSolo(&dc, r, t, false, solo);
+ Refresh(false);
+ }
}
void TrackPanel::HandleMinimizing(wxMouseEvent & event)
@@ -3388,8 +3476,8 @@ void TrackPanel::HandleMinimizing(wxMouseEvent & event)
Track *t = mCapturedTrack;
wxRect r = mCapturedRect;
- if( t==NULL ){
- SetCapturedTrack( NULL );
+ if (t == NULL) {
+ SetCapturedTrack(NULL);
return;
}
@@ -3402,8 +3490,7 @@ void TrackPanel::HandleMinimizing(wxMouseEvent & event)
mTrackInfo.DrawMinimize(&dc, r, t, buttonRect.Contains(event.m_x, event.m_y), t->GetMinimized());
}
else if (event.LeftUp()) {
- if (buttonRect.Contains(event.m_x, event.m_y))
- {
+ if (buttonRect.Contains(event.m_x, event.m_y)) {
t->SetMinimized(!t->GetMinimized());
if (mTracks->GetLink(t))
mTracks->GetLink(t)->SetMinimized(t->GetMinimized());
@@ -3411,7 +3498,7 @@ void TrackPanel::HandleMinimizing(wxMouseEvent & event)
MakeParentModifyState();
}
- SetCapturedTrack( NULL );
+ SetCapturedTrack(NULL);
mTrackInfo.DrawMinimize(&dc, r, t, false, t->GetMinimized());
Refresh(false);
@@ -3423,40 +3510,79 @@ void TrackPanel::HandleSliders(wxMouseEvent &event, bool pan)
LWSlider *slider;
if (pan)
- slider = mTrackInfo.mPans[mCapturedNum];
+ slider = mTrackInfo.mPans[mCapturedTrack->GetIndex()];
else
- slider = mTrackInfo.mGains[mCapturedNum];
+ slider = mTrackInfo.mGains[mCapturedTrack->GetIndex()];
slider->OnMouseEvent(event);
//If we have a double-click, do this...
- if(event.LeftDClick())
- {
- mMouseCapture = IsUncaptured;
- }
+ if (event.LeftDClick())
+ mMouseCapture = IsUncaptured;
float newValue = slider->Get();
WaveTrack *link = (WaveTrack *)mTracks->GetLink(mCapturedTrack);
+ #ifdef EXPERIMENTAL_MIXER_BOARD
+ MixerBoard* pMixerBoard = this->GetMixerBoard(); // Update mixer board, too.
+ #endif
if (pan) {
((WaveTrack *)mCapturedTrack)->SetPan(newValue);
if (link)
link->SetPan(newValue);
+
+ #ifdef EXPERIMENTAL_MIXER_BOARD
+ if (pMixerBoard)
+ pMixerBoard->UpdatePan((WaveTrack*)mCapturedTrack);
+ #endif
}
else {
((WaveTrack *)mCapturedTrack)->SetGain(newValue);
if (link)
link->SetGain(newValue);
+
+ #ifdef EXPERIMENTAL_MIXER_BOARD
+ if (pMixerBoard)
+ pMixerBoard->UpdateGain((WaveTrack*)mCapturedTrack);
+ #endif
}
-
+
+ RefreshTrack(mCapturedTrack);
+
if (event.ButtonUp()) {
MakeParentPushState(pan ? _("Moved pan slider") : _("Moved gain slider"),
pan ? _("Pan") : _("Gain"),
true /* consolidate */);
SetCapturedTrack( NULL );
}
+}
+
+// The tracks positions within the list have changed, so update the vertical
+// ruler size for the track that triggered the event.
+void TrackPanel::OnTrackListResized(wxCommandEvent & e)
+{
+ Track *t = (Track *) e.GetClientData();
+
+ UpdateVRuler(t);
+
+ e.Skip();
+}
+
+// Tracks have been added or removed from the list. Handle adds as if
+// a resize has taken place.
+void TrackPanel::OnTrackListUpdated(wxCommandEvent & e)
+{
+ // Tracks may have been deleted, so check to see if the focused track was on of them.
+ if (!mTracks->Contains(GetFocusedTrack())) {
+ SetFocusedTrack(NULL);
+ }
+
+ if (e.GetClientData()) {
+ OnTrackListResized(e);
+ return;
+ }
- this->Refresh(false);
+ e.Skip();
}
void TrackPanel::OnContextMenu(wxContextMenuEvent & event)
@@ -3470,17 +3596,21 @@ void TrackPanel::OnContextMenu(wxContextMenuEvent & event)
void TrackPanel::HandleLabelClick(wxMouseEvent & event)
{
// AS: If not a click, ignore the mouse event.
- if (!(event.LeftDown() || event.LeftDClick()))
+ if (!event.ButtonDown() && !event.ButtonDClick()) {
return;
+ }
+
+ // MIDI tracks use the right mouse button, but other tracks get confused
+ // if they see anything other than a left click.
+ bool isleft = event.Button(wxMOUSE_BTN_LEFT);
AudacityProject *p = GetProject();
bool unsafe = (p->GetAudioIOToken()>0 &&
gAudioIO->IsStreamActive(p->GetAudioIOToken()));
wxRect r;
- int num;
- Track *t = FindTrack(event.m_x, event.m_y, true, true, &r, &num);
+ Track *t = FindTrack(event.m_x, event.m_y, true, true, &r);
// AS: If the user clicked outside all tracks, make nothing
// selected.
@@ -3491,31 +3621,29 @@ void TrackPanel::HandleLabelClick(wxMouseEvent & event)
}
// LL: Check close box
- if (CloseFunc(t, r, event.m_x, event.m_y))
+ if (isleft && CloseFunc(t, r, event.m_x, event.m_y))
return;
// LL: Check title bar for popup
- if (PopupFunc(t, r, event.m_x, event.m_y))
+ if (isleft &&PopupFunc(t, r, event.m_x, event.m_y))
return;
// MM: Check minimize buttons on WaveTracks. Must be before
// solo/mute buttons, sliders etc.
- if (MinimizeFunc(t, r, event.m_x, event.m_y))
+ if (isleft && MinimizeFunc(t, r, event.m_x, event.m_y))
return;
- if (t->GetKind() == Track::Wave)
+ if (isleft && t->GetKind() == Track::Wave)
{
// DM: Check Mute and Solo buttons on WaveTracks:
if (MuteSoloFunc(t, r, event.m_x, event.m_y, false) ||
MuteSoloFunc(t, r, event.m_x, event.m_y, true))
return;
- if (GainFunc(t, r, event,
- num-1, event.m_x, event.m_y))
+ if (GainFunc(t, r, event, event.m_x, event.m_y))
return;
- if (PanFunc(t, r, event,
- num-1, event.m_x, event.m_y))
+ if (PanFunc(t, r, event, event.m_x, event.m_y))
return;
}
#ifdef USE_MIDI
@@ -3526,14 +3654,17 @@ void TrackPanel::HandleLabelClick(wxMouseEvent & event)
mTrackInfo.GetTrackControlsRect(r, midiRect);
if (midiRect.Contains(event.m_x, event.m_y)) {
((NoteTrack *) t)->LabelClick(midiRect, event.m_x, event.m_y,
- event.RightDown()
- || event.RightDClick());
+ event.Button(wxMOUSE_BTN_RIGHT));
Refresh(false);
return;
}
}
#endif // USE_MIDI
+ if (!isleft) {
+ return;
+ }
+
// DM: If they weren't clicking on a particular part of a track label,
// deselect other tracks and select this one.
@@ -3548,15 +3679,24 @@ void TrackPanel::HandleLabelClick(wxMouseEvent & event)
// the selection on this track.
if (event.ShiftDown()) {
mTracks->Select(t, !t->GetSelected());
- Refresh(false);
+ RefreshTrack(t);
return;
}
SelectNone();
mTracks->Select(t);
SetFocusedTrack(t);
- mViewInfo->sel0 = t->GetOffset();
- mViewInfo->sel1 = t->GetEndTime();
+ Track *t1 = t->GetLink();
+ if(t1)
+ {
+ mViewInfo->sel0 = wxMin(t->GetOffset(), t1->GetOffset());
+ mViewInfo->sel1 = wxMax(t->GetEndTime(), t1->GetEndTime());
+ }
+ else
+ {
+ mViewInfo->sel0 = t->GetOffset();
+ mViewInfo->sel1 = t->GetEndTime();
+ }
Refresh(false);
if (!unsafe)
@@ -3574,15 +3714,25 @@ void TrackPanel::HandleRearrange(wxMouseEvent & event)
return;
}
+ #ifdef EXPERIMENTAL_MIXER_BOARD
+ MixerBoard* pMixerBoard = this->GetMixerBoard(); // Update mixer board, too.
+ #endif
wxString dir;
-
- if (event.m_y < mMoveUpThreshold) {
+ if (event.m_y < mMoveUpThreshold || event.m_y < 0) {
mTracks->MoveUp(mCapturedTrack);
dir = _("up");
+ #ifdef EXPERIMENTAL_MIXER_BOARD
+ if (pMixerBoard)
+ pMixerBoard->MoveTrackCluster((WaveTrack*)mCapturedTrack, true);
+ #endif
}
- else if (event.m_y > mMoveDownThreshold) {
+ else if (event.m_y > mMoveDownThreshold || event.m_y > GetRect().GetHeight()) {
mTracks->MoveDown(mCapturedTrack);
dir = _("down");
+ #ifdef EXPERIMENTAL_MIXER_BOARD
+ if (pMixerBoard)
+ pMixerBoard->MoveTrackCluster((WaveTrack*)mCapturedTrack, false);
+ #endif
}
else
{
@@ -3594,9 +3744,10 @@ void TrackPanel::HandleRearrange(wxMouseEvent & event)
dir.c_str()),
_("Move Track"));
- // JH: if we moved up or down, recalculate the thresholds
+ // JH: if we moved up or down, recalculate the thresholds and make sure the
+ // track is fully on-screen.
TrackPanel::CalculateRearrangingThresholds(event);
- Refresh(false);
+ EnsureVisible(mCapturedTrack);
}
/// Figure out how far the user must drag the mouse up or down
@@ -3619,12 +3770,10 @@ void TrackPanel::CalculateRearrangingThresholds(wxMouseEvent & event)
event.m_y + mTracks->GetGroupHeight( mTracks->GetNext(mCapturedTrack,true) );
else
mMoveDownThreshold = INT_MAX;
-// wxLogDebug(wxT("Y:%i, Up:%i, Down:%i"),
-// event.m_y, mMoveUpThreshold-event.m_y, mMoveDownThreshold-event.m_y );
}
bool TrackPanel::GainFunc(Track * t, wxRect r, wxMouseEvent &event,
- int index, int x, int y)
+ int x, int y)
{
wxRect sliderRect;
mTrackInfo.GetGainRect(r, sliderRect);
@@ -3633,14 +3782,13 @@ bool TrackPanel::GainFunc(Track * t, wxRect r, wxMouseEvent &event,
SetCapturedTrack( t, IsGainSliding);
mCapturedRect = r;
- mCapturedNum = index;
HandleSliders(event, false);
return true;
}
bool TrackPanel::PanFunc(Track * t, wxRect r, wxMouseEvent &event,
- int index, int x, int y)
+ int x, int y)
{
wxRect sliderRect;
mTrackInfo.GetPanRect(r, sliderRect);
@@ -3649,7 +3797,6 @@ bool TrackPanel::PanFunc(Track * t, wxRect r, wxMouseEvent &event,
SetCapturedTrack( t, IsPanSliding);
mCapturedRect = r;
- mCapturedNum = index;
HandleSliders(event, true);
return true;
@@ -3728,64 +3875,46 @@ void TrackPanel::HandleResizeClick( wxMouseEvent & event )
{
wxRect r;
wxRect rLabel;
- int num;
// DM: Figure out what track is about to be resized
- Track *t = FindTrack(event.m_x, event.m_y, false, false, &r, &num);
- Track *label = FindTrack(event.m_x, event.m_y, true, true, &rLabel, &num);
-
- if (t && t->GetMinimized())
- {
- // Jump out of minimized mode when resizing.
- // Initial height will be height as a minimized track.
- t->SetHeight( t->GetHeight());
- t->SetMinimized(false);
- }
+ Track *t = FindTrack(event.m_x, event.m_y, false, false, &r);
+ Track *label = FindTrack(event.m_x, event.m_y, true, true, &rLabel);
// If the click is at the bottom of a non-linked track label, we
// treat it as a normal resize. If the label is of a linked track,
// we ignore the click.
- if (label && !label->GetLinked())
- {
+ if (label && !label->GetLinked()) {
t = label;
}
- if (!t)
+ if (!t) {
return;
+ }
Track *prev = mTracks->GetPrev(t);
Track *next = mTracks->GetNext(t);
- // DM: Capture the track so that we continue to resize
- // THIS track, no matter where the user moves the mouse
- SetCapturedTrack( t, IsResizing );
- //mCapturedRect = r;
- //mCapturedNum = num;
-
mMouseClickX = event.m_x;
mMouseClickY = event.m_y;
//STM: Determine whether we should rescale one or two tracks
-
- if (mTracks->GetLink(prev) == t) {
- if(prev->GetMinimized())
- {
- prev->SetHeight( prev->GetHeight());
- prev->SetMinimized(false);
- }
+ if (prev && prev->GetLink() == t) {
// mCapturedTrack is the lower track
mInitialTrackHeight = t->GetHeight();
mInitialUpperTrackHeight = prev->GetHeight();
- SetCapturedTrack( t, IsResizingBelowLinkedTracks );
- } else if (next && mTracks->GetLink(t) == next) {
+ SetCapturedTrack(t, IsResizingBelowLinkedTracks);
+ }
+ else if (next && t->GetLink() == next) {
// mCapturedTrack is the upper track
mInitialTrackHeight = next->GetHeight();
mInitialUpperTrackHeight = t->GetHeight();
- SetCapturedTrack( t, IsResizingBetweenLinkedTracks );
- } else {
+ SetCapturedTrack(t, IsResizingBetweenLinkedTracks);
+ }
+ else {
// DM: Save the initial mouse location and the initial height
mInitialTrackHeight = t->GetHeight();
+ SetCapturedTrack(t, IsResizing);
}
}
@@ -3810,6 +3939,34 @@ void TrackPanel::HandleResizeDrag(wxMouseEvent & event)
{
int delta = (event.m_y - mMouseClickY);
+ // On first drag, jump out of minimized mode. Initial height
+ // will be height of minimized track.
+ //
+ // This used to be in HandleResizeClick(), but simply clicking
+ // on a resize border would switch the minimized state.
+ if (mCapturedTrack->GetMinimized()) {
+ Track *link = mCapturedTrack->GetLink();
+
+ mCapturedTrack->SetHeight(mCapturedTrack->GetHeight());
+ mCapturedTrack->SetMinimized(false);
+
+ if (link) {
+ link->SetHeight(link->GetHeight());
+ link->SetMinimized(false);
+ }
+
+ // Initial values must be reset since they weren't based on the
+ // minimized heights.
+ if (mCapturedTrack->GetLinked()) {
+ mInitialUpperTrackHeight = mCapturedTrack->GetHeight();
+ mInitialTrackHeight = link->GetHeight();
+ }
+ else if (link) {
+ mInitialUpperTrackHeight = link->GetHeight();
+ mInitialTrackHeight = mCapturedTrack->GetHeight();
+ }
+ }
+
//STM: We may be dragging one or two (stereo) tracks.
// If two, resize proportionally if we are dragging the lower track, and
// adjust compensatively if we are dragging the upper track.
@@ -3976,7 +4133,7 @@ void TrackPanel::OnKeyDown(wxKeyEvent & event)
if( bkpSel0 != mViewInfo->sel0 || bkpSel1 != mViewInfo->sel1 )
Refresh( false );
else if (!event.GetSkipped())
- RefreshTrack(t, true);
+ RefreshTrack(t);
}
/// Allow typing into LabelTracks.
@@ -4002,7 +4159,7 @@ void TrackPanel::OnChar(wxKeyEvent & event)
if( bkpSel0 != mViewInfo->sel0 || bkpSel1 != mViewInfo->sel1 )
Refresh( false );
else if (!event.GetSkipped())
- RefreshTrack(t, true);
+ RefreshTrack(t);
}
/// Should handle the case when the mouse capture is lost.
@@ -4043,7 +4200,7 @@ void TrackPanel::OnMouseEvent(wxMouseEvent & event)
// When this timer fires, we call TrackPanel::OnTimer and
// possibly update the screen for offscreen scrolling.
mTimer.Stop();
- mTimer.Start(50, FALSE);
+ mTimer.Start(kTimerInterval, FALSE);
}
if (event.ButtonDown()) {
@@ -4104,9 +4261,8 @@ void TrackPanel::OnMouseEvent(wxMouseEvent & event)
//EnsureVisible should be called after the up-click.
if (event.ButtonUp()) {
wxRect r;
- int num;
- Track *t = FindTrack(event.m_x, event.m_y, false, false, &r, &num);
+ Track *t = FindTrack(event.m_x, event.m_y, false, false, &r);
if (t)
EnsureVisible(t);
}
@@ -4169,7 +4325,6 @@ bool TrackPanel::HandleTrackLocationMouseEvent(WaveTrack * track, wxRect &r, wxM
MakeParentPushState(_("Merged Clips"),_("Merge"), true );
handled = true;
}
- Refresh(false);
}
if (!handled && event.RightDown())
@@ -4178,7 +4333,7 @@ bool TrackPanel::HandleTrackLocationMouseEvent(WaveTrack * track, wxRect &r, wxM
WaveTrack* linked = (WaveTrack*)mTracks->GetLink(track);
if (linked)
linked->RemoveCutLine(mCapturedTrackLocation.pos);
- MakeParentPushState(_("Removed Cut Line"), _NoAcc("&Remove"), false );
+ MakeParentPushState(_("Removed Cut Line"), _("Remove"), false );
handled = true;
}
@@ -4186,7 +4341,7 @@ bool TrackPanel::HandleTrackLocationMouseEvent(WaveTrack * track, wxRect &r, wxM
{
SetCapturedTrack( NULL );
mMouseCapture = WasOverCutLine;
- Refresh(false);
+ RefreshTrack(track);
return true;
}
@@ -4265,7 +4420,7 @@ bool TrackPanel::HandleLabelTrackMouseEvent(LabelTrack * lTrack, wxRect &r, wxMo
if (event.RightDown()) {
// popup menu for editing
- Refresh(false);
+ RefreshTrack(lTrack);
if ((lTrack->getSelectedIndex() != -1) && lTrack->OverTextBox(lTrack->GetLabel(lTrack->getSelectedIndex()), event.m_x, event.m_y)) {
mPopupMenuTarget = lTrack;
@@ -4283,7 +4438,7 @@ bool TrackPanel::HandleLabelTrackMouseEvent(LabelTrack * lTrack, wxRect &r, wxMo
//that follows. Instead, redraw the track.
if(mMouseCapture == IsAdjustingLabel)
{
- Refresh(false);
+ RefreshTrack(lTrack);
return true;
}
@@ -4307,7 +4462,7 @@ bool TrackPanel::HandleLabelTrackMouseEvent(LabelTrack * lTrack, wxRect &r, wxMo
// if initial mouse position in the text box
// then only drag text
if (mLabelTrackStartYPos == -1) {
- Refresh(false);
+ RefreshTrack(lTrack);
return true;
}
}
@@ -4332,7 +4487,7 @@ bool TrackPanel::HandleLabelTrackMouseEvent(LabelTrack * lTrack, wxRect &r, wxMo
lTrack->SetInBox(true);
lTrack->SetDragXPos(event.m_x);
lTrack->SetResetCursorPos(true);
- Refresh(false);
+ RefreshTrack(lTrack);
return true;
}
}
@@ -4347,14 +4502,13 @@ void TrackPanel::HandleTrackSpecificMouseEvent(wxMouseEvent & event)
Track * pTrack;
wxRect r;
wxRect rLabel;
- int num;
AudacityProject *p = GetProject();
bool unsafe = (p->GetAudioIOToken()>0 &&
gAudioIO->IsStreamActive(p->GetAudioIOToken()));
- FindTrack(event.m_x, event.m_y, true, true, &rLabel, &num);
- pTrack = FindTrack(event.m_x, event.m_y, false, false, &r, &num);
+ FindTrack(event.m_x, event.m_y, true, true, &rLabel);
+ pTrack = FindTrack(event.m_x, event.m_y, false, false, &r);
//call HandleResize if I'm over the border area
if (event.LeftDown() &&
@@ -4461,9 +4615,8 @@ int TrackPanel::DetermineToolToUse( ToolsToolBar * pTtb, wxMouseEvent & event)
// So now we have to find out what we are near to..
wxRect r;
- int num;
- Track *pTrack = FindTrack(event.m_x, event.m_y, false, false, &r, &num);
+ Track *pTrack = FindTrack(event.m_x, event.m_y, false, false, &r);
if( !pTrack )
return currentTool;
@@ -4525,12 +4678,12 @@ bool TrackPanel::HitTestEnvelope(Track *track, wxRect &r, wxMouseEvent & event)
wavetrack->GetDisplayBounds(&zoomMin, &zoomMax);
// Get y position of envelope point.
- int yValue = GetWaveYPosNew( envValue,
+ int yValue = GetWaveYPos( envValue,
zoomMin, zoomMax,
r.height, dB, true, mdBr, false ) + r.y;
// Get y position of center line
- int ctr = GetWaveYPosNew( 0.0,
+ int ctr = GetWaveYPos( 0.0,
zoomMin, zoomMax,
r.height, dB, true, mdBr, false ) + r.y;
@@ -4599,7 +4752,7 @@ bool TrackPanel::HitTestSamples(Track *track, wxRect &r, wxMouseEvent & event)
if (env)
envValue = env->GetValue(tt);
- int yValue = GetWaveYPosNew( oneSample * envValue,
+ int yValue = GetWaveYPos( oneSample * envValue,
zoomMin, zoomMax,
r.height, dB, true, mdBr, false) + r.y;
@@ -4641,29 +4794,28 @@ double TrackPanel::GetMostRecentXPos()
void TrackPanel::RefreshTrack(Track *trk, bool refreshbacking)
{
- int y = -mViewInfo->vpos;
- TrackListIterator iter(mTracks);
- Track *t;
- for( t = iter.First(); t; t = iter.Next() )
- {
- int h = t->GetHeight();
+ Track *link = trk->GetLink();
- if( t == trk )
- {
- int x = GetLeftOffset();
- int w = GetRect().GetWidth() - x;
- wxRect trackarea( x, y + kTopInset + 1, w, h - 2 );
+ if (link && !trk->GetLinked()) {
+ trk = link;
+ link = trk->GetLink();
+ }
- if( refreshbacking )
- {
- mRefreshBacking = true;
- }
- Refresh( false, &trackarea );
- break;
- }
+ wxRect r(kLeftInset,
+ -mViewInfo->vpos + trk->GetY() + kTopInset,
+ GetRect().GetWidth() - kLeftInset * 2 - 1,
+ trk->GetHeight() - kTopInset - 1);
- y += h;
+ if (link) {
+ r.height += link->GetHeight();
}
+
+ if( refreshbacking )
+ {
+ mRefreshBacking = true;
+ }
+
+ Refresh( false, &r );
}
@@ -4696,8 +4848,9 @@ void TrackPanel::Refresh(bool eraseBackground /* = TRUE */,
/// actual contents of each track are drawn by the TrackArtist.
void TrackPanel::DrawTracks(wxDC * dc)
{
- wxRect clip;
- GetSize(&clip.width, &clip.height);
+ wxRegion region = GetUpdateRegion();
+
+ wxRect clip = GetRect();
wxRect panelRect = clip;
panelRect.y = -mViewInfo->vpos;
@@ -4713,35 +4866,72 @@ void TrackPanel::DrawTracks(wxDC * dc)
bool sliderFlag = bMultiToolDown;
// The track artist actually draws the stuff inside each track
- mTrackArtist->DrawTracks(mTracks, *dc, GetUpdateRegion(),
- tracksRect, clip, mViewInfo,
+ mTrackArtist->DrawTracks(mTracks, GetProject()->GetFirstVisible(),
+ *dc, region, tracksRect, clip, mViewInfo,
envelopeFlag, samplesFlag, sliderFlag);
- DrawEverythingElse(dc, panelRect, clip);
+ DrawEverythingElse(dc, region, panelRect, clip);
}
-
/// Draws 'Everything else'. In particular it draws:
/// - Drop shadow for tracks and vertical rulers.
/// - Zooming Indicators.
/// - Fills in space below the tracks.
-void TrackPanel::DrawEverythingElse(wxDC * dc, const wxRect panelRect,
+void TrackPanel::DrawEverythingElse(wxDC * dc,
+ const wxRegion region,
+ const wxRect panelRect,
const wxRect clip)
{
// We draw everything else
- TrackListIterator iter(mTracks);
- wxRect trackRect = panelRect;
- wxRect focusRect(-1, -1, 0, 0);
- wxRect r;
+ wxRect focusRect(-1, -1, 0, 0);
+ wxRect trackRect = clip;
+ trackRect.height = 0; // for drawing background in no tracks case.
- int i = 0;
- for (Track * t = iter.First(); t; t = iter.Next()) {
- DrawEverythingElse(t, dc, r, trackRect, i);
- if( mAx->IsFocused( t ) ) {
- focusRect = mLastDrawnTrackRect;
+ VisibleTrackIterator iter(GetProject());
+ for (Track *t = iter.First(); t; t = iter.Next()) {
+ trackRect.y = t->GetY() - mViewInfo->vpos;
+ trackRect.height = t->GetHeight();
+
+ // If this track is linked to the next one, display a common
+ // border for both, otherwise draw a normal border
+ wxRect r = trackRect;
+ bool skipBorder = false;
+ Track *l = t->GetLink();
+
+ if (t->GetLinked()) {
+ r.height += l->GetHeight();
+ }
+ else if (l && trackRect.y >= 0) {
+ skipBorder = true;
+ }
+
+ if (!skipBorder) {
+ if (mAx->IsFocused(t)) {
+ focusRect = r;
+ }
+
+ DrawOutside(t, dc, r, trackRect);
+ }
+
+ // Believe it or not, we can speed up redrawing if we don't
+ // redraw the vertical ruler when only the waveform data has
+ // changed. An example is during recording.
+
+#if DEBUG_DRAW_TIMING
+// wxRect rbox = region.GetBox();
+// wxPrintf(wxT("Update Region: %d %d %d %d\n"),
+// rbox.x, rbox.y, rbox.width, rbox.height);
+#endif
+
+ if (region.Contains(0, trackRect.y, GetLeftOffset(), trackRect.height)) {
+ wxRect r = trackRect;
+ r.x += GetVRulerOffset();
+ r.y += kTopInset;
+ r.width = GetVRulerWidth();
+ r.height -= (kTopInset + 2);
+ mTrackArtist->DrawVRuler(t, dc, r);
}
- i++;
}
if ((mMouseCapture == IsZooming || mMouseCapture == IsVZooming) &&
@@ -4750,9 +4940,14 @@ void TrackPanel::DrawEverythingElse(wxDC * dc, const wxRect panelRect,
}
// Paint over the part below the tracks
- GetSize(&trackRect.width, &trackRect.height);
- AColor::TrackPanelBackground(dc, false);
- dc->DrawRectangle(trackRect);
+ trackRect.y += trackRect.height;
+ if (trackRect.y < clip.GetBottom()) {
+ AColor::TrackPanelBackground(dc, false);
+ dc->DrawRectangle(trackRect.x,
+ trackRect.y,
+ trackRect.width,
+ clip.height - trackRect.y);
+ }
if (GetFocusedTrack() != NULL && wxWindow::FindFocus() == this) {
HighlightFocusedTrack(dc, focusRect);
@@ -4761,80 +4956,13 @@ void TrackPanel::DrawEverythingElse(wxDC * dc, const wxRect panelRect,
// Draw snap guidelines if we have any
if (mSnapManager && (mSnapLeft >= 0 || mSnapRight >= 0)) {
AColor::SnapGuidePen(dc);
- if (mSnapLeft >= 0)
- dc->DrawLine((int)mSnapLeft, 0, mSnapLeft, 30000);
- if (mSnapRight >= 0)
- dc->DrawLine((int)mSnapRight, 0, mSnapRight, 30000);
- }
-}
-
-/// Draws 'Everything else' for one particular track. Basically
-/// everything except the actual waveform.
-///
-/// Note that this is being called in a loop and that the parameter values
-/// are expected to be maintained each time through.
-void TrackPanel::DrawEverythingElse(Track * t, wxDC * dc, wxRect & r,
- wxRect & trackRect, int index)
-{
- trackRect.height = t->GetHeight();
-
- // Draw label area
- SetTrackInfoFont(dc);
- dc->SetTextForeground(theTheme.Colour( clrTrackPanelText ));
-
- int labelw = GetLabelWidth();
- int vrul = GetVRulerOffset();
-
- // If this track is linked to the next one, display a common
- // border for both, otherwise draw a normal border
- r = trackRect;
-
- bool skipBorder = false;
- if (t->GetLinked())
- r.height += mTracks->GetLink(t)->GetHeight();
- else if (mTracks->GetLink(t))
- skipBorder = true;
-
- if (!skipBorder)
- DrawOutside(t, dc, r, labelw, vrul, trackRect, index);
-
- // Believe it or not, we can speed up redrawing if we don't
- // redraw the vertical ruler when only the waveform data has
- // changed.
-
- int width, height;
- GetSize(&width, &height);
- wxRegion region = GetUpdateRegion();
-
-#if DEBUG_DRAW_TIMING
- wxRect rbox = region.GetBox();
- wxPrintf(wxT("Update Region: %d %d %d %d\n"),
- rbox.x, rbox.y, rbox.width, rbox.height);
-#endif
-
- wxRegionContain contain = region.Contains(0, 0, GetLeftOffset(), height);
- if (contain == wxPartRegion || contain == wxInRegion) {
- r = trackRect;
- r.x += GetVRulerOffset();
- r.y += kTopInset;
- r.width = GetVRulerWidth();
- r.height -= (kTopInset + 2);
- mTrackArtist->DrawVRuler(t, dc, r);
- UpdateVRulerRect();
+ if (mSnapLeft >= 0) {
+ AColor::Line(*dc, (int)mSnapLeft, 0, mSnapLeft, 30000);
+ }
+ if (mSnapRight >= 0) {
+ AColor::Line(*dc, (int)mSnapRight, 0, mSnapRight, 30000);
+ }
}
-
- trackRect.y += t->GetHeight();
-}
-
-/// Draw a three-level highlight gradient around the focused track.
-void TrackPanel::HighlightFocusedTrack(wxDC * dc, const wxRect r) {
- dc->SetBrush(*wxTRANSPARENT_BRUSH);
- AColor::TrackFocusPen(dc, 0);
- dc->DrawRectangle(r.x-1, r.y-1, r.width+2, r.height+2);
- AColor::TrackFocusPen(dc, 1);
- dc->DrawRectangle(r.x-2, r.y-2, r.width+4, r.height+4);
- AColor::TrackFocusPen(dc, 2);
- dc->DrawRectangle(r.x-3, r.y-3, r.width+6, r.height+6);
}
/// Draw zooming indicator that shows the region that will
@@ -4869,20 +4997,22 @@ void TrackPanel::DrawZooming(wxDC * dc, const wxRect clip)
void TrackPanel::DrawOutside(Track * t, wxDC * dc, const wxRect rec,
- const int labelw, const int vrul,
- const wxRect trackRect, int index)
+ const wxRect trackRect)
{
wxRect r = rec;
+ int labelw = GetLabelWidth();
+ int vrul = GetVRulerOffset();
DrawOutsideOfTrack(t, dc, r);
+
r.x += kLeftInset;
r.y += kTopInset;
r.width -= kLeftInset * 2;
r.height -= kTopInset;
- mLastDrawnTrackRect = r;
+ mTrackInfo.SetTrackInfoFont(dc);
+ dc->SetTextForeground(theTheme.Colour(clrTrackPanelText));
- dc->SetTextForeground(theTheme.Colour( clrTrackPanelText ));
bool bIsWave = (t->GetKind() == Track::Wave);
mTrackInfo.DrawBackground(dc, r, t->GetSelected(), bIsWave, labelw, vrul);
@@ -4891,35 +5021,33 @@ void TrackPanel::DrawOutside(Track * t, wxDC * dc, const wxRect rec,
DrawShadow(t, dc, r);
r.width = mTrackInfo.GetTitleWidth();
- mTrackInfo.DrawCloseBox(dc, r, (mMouseCapture==IsClosing));
- mTrackInfo.DrawTitleBar(dc, r, t, (mMouseCapture==IsPopping));
+ bool captured = (t == mCapturedTrack);
+ mTrackInfo.DrawCloseBox(dc, r, (captured && mMouseCapture==IsClosing));
+ mTrackInfo.DrawTitleBar(dc, r, t, (captured && mMouseCapture==IsPopping));
- mTrackInfo.DrawMinimize(dc, r, t, (mMouseCapture==IsMinimizing), t->GetMinimized());
+ mTrackInfo.DrawMinimize(dc, r, t, (captured && mMouseCapture==IsMinimizing), t->GetMinimized());
mTrackInfo.DrawBordersWithin( dc, r, bIsWave );
- if (t->GetKind() == Track::Wave) {
- mTrackInfo.DrawMuteSolo(dc, r, t, (mMouseCapture == IsMuting), false, HasSoloButton());
- mTrackInfo.DrawMuteSolo(dc, r, t, (mMouseCapture == IsSoloing), true, HasSoloButton());
-
- mTrackInfo.DrawSliders(dc, (WaveTrack *)t, r, index);
- }
-
- r = trackRect;
-
- if (t->GetKind() == Track::Wave && !t->GetMinimized()) {
- int offset;
+ if (bIsWave) {
+ mTrackInfo.DrawMuteSolo(dc, r, t, (captured && mMouseCapture == IsMuting), false, HasSoloButton());
+ mTrackInfo.DrawMuteSolo(dc, r, t, (captured && mMouseCapture == IsSoloing), true, HasSoloButton());
- offset = 8;
-
- if (r.y + 22 + 12 < rec.y + rec.height - 19)
- dc->DrawText(TrackSubText(t), r.x + offset, r.y + 22);
+ mTrackInfo.DrawSliders(dc, (WaveTrack *)t, r);
+ if (!t->GetMinimized()) {
+ int offset = 8;
- if (r.y + 38 + 12 < rec.y + rec.height - 19)
- dc->DrawText(GetSampleFormatStr
- (((WaveTrack *) t)->GetSampleFormat()), r.x + offset,
- r.y + 38);
-
+ if (r.y + 22 + 12 < rec.y + rec.height - 19)
+ dc->DrawText(TrackSubText(t),
+ trackRect.x + offset,
+ trackRect.y + 22);
+
+ if (r.y + 38 + 12 < rec.y + rec.height - 19)
+ dc->DrawText(GetSampleFormatStr(((WaveTrack *) t)->GetSampleFormat()),
+ trackRect.x + offset,
+ trackRect.y + 38);
+ }
}
+
#ifdef USE_MIDI
else if (t->GetKind() == Track::Note) {
wxRect midiRect;
@@ -4933,17 +5061,25 @@ void TrackPanel::DrawOutsideOfTrack(Track * t, wxDC * dc, const wxRect r)
{
// Fill in area outside of the track
AColor::TrackPanelBackground(dc, false);
- wxRect side = r;
+ wxRect side;
+
+ // Area between panel border and left track border
+ side = r;
side.width = kLeftInset;
dc->DrawRectangle(side);
+
+ // Area between panel border and top track border
side = r;
side.height = kTopInset;
dc->DrawRectangle(side);
+
+ // Area between panel border and right track border
side = r;
side.x += side.width - kTopInset;
side.width = kTopInset;
dc->DrawRectangle(side);
+ // Area between tracks of stereo group
if (t->GetLinked()) {
side = r;
side.y += t->GetHeight() - 1;
@@ -4952,26 +5088,78 @@ void TrackPanel::DrawOutsideOfTrack(Track * t, wxDC * dc, const wxRect r)
}
}
-void TrackPanel::UpdateVRulerRect()
+/// Draw a three-level highlight gradient around the focused track.
+void TrackPanel::HighlightFocusedTrack(wxDC * dc, const wxRect r)
+{
+ wxRect rect = r;
+ rect.x += kLeftInset;
+ rect.y += kTopInset;
+ rect.width -= kLeftInset * 2;
+ rect.height -= kTopInset;
+
+ dc->SetBrush(*wxTRANSPARENT_BRUSH);
+
+ AColor::TrackFocusPen(dc, 0);
+ dc->DrawRectangle(rect.x - 1, rect.y - 1, rect.width + 2, rect.height + 2);
+
+ AColor::TrackFocusPen(dc, 1);
+ dc->DrawRectangle(rect.x - 2, rect.y - 2, rect.width + 4, rect.height + 4);
+
+ AColor::TrackFocusPen(dc, 2);
+ dc->DrawRectangle(rect.x - 3, rect.y - 3, rect.width + 6, rect.height + 6);
+}
+
+void TrackPanel::UpdateVRulers()
+{
+ TrackListOfKindIterator iter(Track::Wave, mTracks);
+ for (Track *t = iter.First(); t; t = iter.Next()) {
+ UpdateTrackVRuler(t);
+ }
+
+ UpdateVRulerSize();
+}
+
+void TrackPanel::UpdateVRuler(Track *t)
+{
+ UpdateTrackVRuler(t);
+
+ UpdateVRulerSize();
+}
+
+void TrackPanel::UpdateTrackVRuler(Track *t)
+{
+ wxRect r(GetVRulerOffset(),
+ kTopInset,
+ GetVRulerWidth(),
+ t->GetHeight() - (kTopInset + 2));
+
+ if (t) {
+ mTrackArtist->UpdateVRuler(t, r);
+ Track *l = t->GetLink();
+ if (l) {
+ r.height = l->GetHeight() - (kTopInset + 2);
+ mTrackArtist->UpdateVRuler(l, r);
+ }
+ }
+}
+
+void TrackPanel::UpdateVRulerSize()
{
TrackListIterator iter(mTracks);
Track *t = iter.First();
if (t) {
- wxSize s=t->vrulerSize;
+ wxSize s = t->vrulerSize;
while (t) {
- if (s.x < t->vrulerSize.x)
- s.x = t->vrulerSize.x;
- if (s.y < t->vrulerSize.y)
- s.y = t->vrulerSize.y;
+ s.IncTo(t->vrulerSize);
t = iter.Next();
}
if (vrulerSize != s) {
vrulerSize = s;
- Refresh();
- mRuler->SetLeftOffset(GetLeftOffset()-1); // bevel on AdornedRuler
+ mRuler->SetLeftOffset(GetLeftOffset()); // bevel on AdornedRuler
mRuler->Refresh();
}
}
+ Refresh(false);
}
/// The following function moves to the previous track
@@ -5018,28 +5206,28 @@ void TrackPanel::OnPrevTrack( bool shift )
}
tSelected = t->GetSelected();
pSelected = p->GetSelected();
- if( tSelected & pSelected )
+ if( tSelected && pSelected )
{
mTracks->Select( t, false );
SetFocusedTrack( p ); // move focus to next track down
EnsureVisible( p );
return;
}
- if( tSelected & !pSelected )
+ if( tSelected && !pSelected )
{
mTracks->Select( p, true );
SetFocusedTrack( p ); // move focus to next track down
EnsureVisible( p );
return;
}
- if( !tSelected & pSelected )
+ if( !tSelected && pSelected )
{
mTracks->Select( p, false );
SetFocusedTrack( p ); // move focus to next track down
EnsureVisible( p );
return;
}
- if( !tSelected & !pSelected )
+ if( !tSelected && !pSelected )
{
mTracks->Select( t, true );
SetFocusedTrack( p ); // move focus to next track down
@@ -5117,28 +5305,28 @@ void TrackPanel::OnNextTrack( bool shift )
}
tSelected = t->GetSelected();
nSelected = n->GetSelected();
- if( tSelected & nSelected )
+ if( tSelected && nSelected )
{
mTracks->Select( t, false );
SetFocusedTrack( n ); // move focus to next track down
EnsureVisible( n );
return;
}
- if( tSelected & !nSelected )
+ if( tSelected && !nSelected )
{
mTracks->Select( n, true );
SetFocusedTrack( n ); // move focus to next track down
EnsureVisible( n );
return;
}
- if( !tSelected & nSelected )
+ if( !tSelected && nSelected )
{
mTracks->Select( n, false );
SetFocusedTrack( n ); // move focus to next track down
EnsureVisible( n );
return;
}
- if( !tSelected & !nSelected )
+ if( !tSelected && !nSelected )
{
mTracks->Select( t, true );
SetFocusedTrack( n ); // move focus to next track down
@@ -5435,7 +5623,7 @@ void TrackPanel::OnBoundaryMove(bool left, bool boundaryContract)
else
{
mViewInfo->sel1 = indicator;
- };
+ }
MakeParentModifyState();
Refresh(false);
@@ -5494,7 +5682,7 @@ void TrackPanel::OnBoundaryMove(bool left, bool boundaryContract)
{
mViewInfo->sel1 = end;
}
- };
+ }
}
// Make it happen
Refresh( false );
@@ -5502,12 +5690,12 @@ void TrackPanel::OnBoundaryMove(bool left, bool boundaryContract)
}
}
+// Move the cursor forward or backward, while paused or while playing.
+// forward=true: Move cursor forward; forward=false: Move cursor backwards
+// jump=false: Move cursor determined by zoom; jump=true: Use seek times
+// longjump=false: Use mSeekShort; longjump=true: Use mSeekLong
void TrackPanel::OnCursorMove(bool forward, bool jump, bool longjump )
- // Move the cursor forward or backward, while paused or while playing.
- // forward=true: Move cursor forward; forward=false: Move cursor backwards
- // jump=false: Move cursor determined by zoom; jump=true: Use seek times
- // longjump=false: Use mSeekShort; longjump=true: Use mSeekLong
- {
+{
// If the last adjustment was very recent, we are
// holding the key down and should move faster.
wxLongLong curtime = ::wxGetLocalTimeMillis();
@@ -5520,19 +5708,19 @@ void TrackPanel::OnCursorMove(bool forward, bool jump, bool longjump )
float direction = -1;
if (forward) {
- direction = 1;
- };
+ direction = 1;
+ }
float mSeek;
if (jump) {
- if (!longjump) {
- mSeek = mSeekShort;
- } else {
- mSeek = mSeekLong;
- };
+ if (!longjump) {
+ mSeek = mSeekShort;
+ } else {
+ mSeek = mSeekLong;
+ }
} else {
- mSeek = multiplier / mViewInfo->zoom;
- };
+ mSeek = multiplier / mViewInfo->zoom;
+ }
mSeek *= direction;
// If playing, reposition a short amount of time
@@ -5547,20 +5735,20 @@ void TrackPanel::OnCursorMove(bool forward, bool jump, bool longjump )
if( mViewInfo->sel0 == mViewInfo->sel1 )
{
// Move and constrain
- mViewInfo->sel0 += mSeek;
- if( !forward && mViewInfo->sel0 < 0.0 )
- {
+ mViewInfo->sel0 += mSeek;
+ if( !forward && mViewInfo->sel0 < 0.0 )
+ {
mViewInfo->sel0 = 0.0;
- }
- double end = mTracks->GetEndTime();
- if( forward && mViewInfo->sel0 > end)
- {
+ }
+ double end = mTracks->GetEndTime();
+ if( forward && mViewInfo->sel0 > end)
+ {
mViewInfo->sel0 = end;
- }
- mViewInfo->sel1 = mViewInfo->sel0;
+ }
+ mViewInfo->sel1 = mViewInfo->sel0;
- // Move the visual cursor
- DrawCursor();
+ // Move the visual cursor
+ DrawCursor();
}
else
{
@@ -5574,7 +5762,7 @@ void TrackPanel::OnCursorMove(bool forward, bool jump, bool longjump )
// Make sure it's visible
ScrollIntoView( mViewInfo->sel0 );
MakeParentModifyState();
- };
+ }
}
//The following functions operate controls on specified tracks,
@@ -5582,48 +5770,38 @@ void TrackPanel::OnCursorMove(bool forward, bool jump, bool longjump )
void TrackPanel::OnTrackPan()
{
Track *t = GetFocusedTrack();
- if (!t || (t->GetKind() != Track::Wave)) return;
+ if (!t || (t->GetKind() != Track::Wave)) {
+ return;
+ }
- //Find out which track we are on.
- int tracknum = FindTrackNum(t);
- if(tracknum)
- {
- LWSlider *slider = mTrackInfo.mPans[tracknum-1];
- if( slider->ShowDialog() )
- {
- SetTrackPan(t, slider);
- }
- }
+ LWSlider *slider = mTrackInfo.mPans[t->GetIndex()];
+ if (slider->ShowDialog()) {
+ SetTrackPan(t, slider);
+ }
}
void TrackPanel::OnTrackPanLeft()
{
Track *t = GetFocusedTrack();
- if (!t || (t->GetKind() != Track::Wave)) return;
+ if (!t || (t->GetKind() != Track::Wave)) {
+ return;
+ }
- //Find out which track we are on.
- int tracknum = FindTrackNum(t);
- if(tracknum)
- {
- LWSlider *slider = mTrackInfo.mPans[tracknum-1];
- slider->Decrease( 1 );
- SetTrackPan(t, slider);
- }
+ LWSlider *slider = mTrackInfo.mPans[t->GetIndex()];
+ slider->Decrease(1);
+ SetTrackPan(t, slider);
}
void TrackPanel::OnTrackPanRight()
{
Track *t = GetFocusedTrack();
- if (!t || (t->GetKind() != Track::Wave)) return;
+ if (!t || (t->GetKind() != Track::Wave)) {
+ return;
+ }
- //Find out which track we are on.
- int tracknum = FindTrackNum(t);
- if(tracknum)
- {
- LWSlider *slider = mTrackInfo.mPans[tracknum-1];
- slider->Increase( 1 );
- SetTrackPan(t, slider);
- }
+ LWSlider *slider = mTrackInfo.mPans[t->GetIndex()];
+ slider->Increase(1);
+ SetTrackPan(t, slider);
}
void TrackPanel::SetTrackPan(Track * t, LWSlider * s)
@@ -5637,55 +5815,45 @@ void TrackPanel::SetTrackPan(Track * t, LWSlider * s)
MakeParentPushState(_("Adjusted Pan"), _("Pan"), true );
- Refresh(false);
+ RefreshTrack(t);
}
/// This will pop up the track gain dialog for specified track
void TrackPanel::OnTrackGain()
{
Track *t = GetFocusedTrack();
- if (!t || (t->GetKind() != Track::Wave)) return;
+ if (!t || (t->GetKind() != Track::Wave)) {
+ return;
+ }
- //Find out which track we are on.
- int tracknum = FindTrackNum(t);
- if(tracknum)
- {
- LWSlider *slider = mTrackInfo.mGains[tracknum-1];
- if( slider->ShowDialog() )
- {
- SetTrackGain(t, slider);
- }
- }
+ LWSlider *slider = mTrackInfo.mGains[t->GetIndex()];
+ if (slider->ShowDialog()) {
+ SetTrackGain(t, slider);
+ }
}
void TrackPanel::OnTrackGainInc()
{
Track *t = GetFocusedTrack();
- if (!t || (t->GetKind() != Track::Wave)) return;
+ if (!t || (t->GetKind() != Track::Wave)) {
+ return;
+ }
- //Find out which track we are on.
- int tracknum = FindTrackNum(t);
- if(tracknum)
- {
- LWSlider *slider = mTrackInfo.mGains[tracknum-1];
- slider->Increase( 1 );
- SetTrackGain(t, slider);
- }
+ LWSlider *slider = mTrackInfo.mGains[t->GetIndex()];
+ slider->Increase(1);
+ SetTrackGain(t, slider);
}
void TrackPanel::OnTrackGainDec()
{
Track *t = GetFocusedTrack();
- if (!t || (t->GetKind() != Track::Wave)) return;
+ if (!t || (t->GetKind() != Track::Wave)) {
+ return;
+ }
- //Find out which track we are on.
- int tracknum = FindTrackNum(t);
- if(tracknum)
- {
- LWSlider *slider = mTrackInfo.mGains[tracknum-1];
- slider->Decrease( 1 );
- SetTrackGain(t, slider);
- }
+ LWSlider *slider = mTrackInfo.mGains[t->GetIndex()];
+ slider->Decrease(1);
+ SetTrackGain(t, slider);
}
void TrackPanel::SetTrackGain(Track * t, LWSlider * s)
@@ -5699,7 +5867,7 @@ void TrackPanel::SetTrackGain(Track * t, LWSlider * s)
MakeParentPushState(_("Adjusted gain"), _("Gain"), true );
- Refresh(false);
+ RefreshTrack(t);
}
void TrackPanel::OnTrackMenu(Track *t)
@@ -5727,6 +5895,7 @@ void TrackPanel::OnTrackMenu(Track *t)
theMenu->Enable(OnMergeStereoID, canMakeStereo);
theMenu->Enable(OnSplitStereoID, t->GetLinked());
+ theMenu->Enable(OnSplitStereoMonoID, t->GetLinked());
theMenu->Check(OnChannelMonoID, t->GetChannel() == Track::MonoChannel);
theMenu->Check(OnChannelLeftID, t->GetChannel() == Track::LeftChannel);
theMenu->Check(OnChannelRightID, t->GetChannel() == Track::RightChannel);
@@ -5759,43 +5928,6 @@ void TrackPanel::OnTrackMenu(Track *t)
#endif
if (t->GetKind() == Track::Label){
-#ifdef EXPERIMENTAL_STICKY_TRACKS
- delete mLabelTrackMenu;
- mLabelTrackMenu = new wxMenu();
-
- AudacityProject *p = GetActiveProject();
- if (!p) return;
- TrackListIterator iter(p->GetTracks());
- WaveTrack *wt = (WaveTrack *) iter.First();
- int count=1;
- mStickyLabelMenu = new wxMenu();
- while (wt) {
- if (wt->GetKind()==Track::Wave){
- wxString name;
- name = wt->GetName();
- if (name == wxT("Audio Track"))
- name.Printf(wxT("Wave Track #%d"), count);
- mStickyLabelMenu->AppendCheckItem(OnStickySubmenuID + count, name);
- if (wt->GetStickyTrack()){
- if (wt->GetStickyTrack() == t)
- mStickyLabelMenu->Check(OnStickySubmenuID + count, true);
- else
- mStickyLabelMenu->Enable(OnStickySubmenuID + count, false);
- }
- count++;
- }
- wt = (WaveTrack *) iter.Next();
- }
-
- mLabelTrackMenu->Append(OnSetNameID, _("Name..."));
- mLabelTrackMenu->AppendSeparator();
- mLabelTrackMenu->Append(OnSetFontID, _("Font..."));
- mLabelTrackMenu->AppendSeparator();
- mLabelTrackMenu->Append(OnMoveUpID, _("Move Track Up"));
- mLabelTrackMenu->Append(OnMoveDownID, _("Move Track Down"));
- mLabelTrackMenu->Append(0, _("Group with Wave Track"), mStickyLabelMenu);
- mLabelTrackMenu->Append(12999, _("Clear any grouping"));
-#endif
theMenu = mLabelTrackMenu;
}
@@ -5886,6 +6018,17 @@ void TrackPanel::OnTrackMute(bool shiftDown, Track *t)
}
}
+ #ifdef EXPERIMENTAL_MIXER_BOARD
+ // Update mixer board, too.
+ MixerBoard* pMixerBoard = this->GetMixerBoard();
+ if (pMixerBoard)
+ {
+ pMixerBoard->UpdateMute(); // Update for all tracks.
+ pMixerBoard->UpdateSolo(); // Update for all tracks.
+ }
+ #endif
+
+ mAx->Updated();
Refresh(false);
}
@@ -5949,6 +6092,18 @@ void TrackPanel::OnTrackSolo(bool shiftDown, Track *t)
i = iter.Next();
}
}
+
+ #ifdef EXPERIMENTAL_MIXER_BOARD
+ // Update mixer board, too.
+ MixerBoard* pMixerBoard = this->GetMixerBoard();
+ if (pMixerBoard)
+ {
+ pMixerBoard->UpdateMute(); // Update for all tracks.
+ pMixerBoard->UpdateSolo(); // Update for all tracks.
+ }
+ #endif
+
+ mAx->Updated();
Refresh(false);
}
@@ -6015,47 +6170,45 @@ void TrackPanel::EnsureVisible(Track * t)
TrackListIterator iter(mTracks);
Track *it = NULL;
Track *nt = NULL;
- //int i = 0;
SetFocusedTrack(t);
int trackTop = 0;
int trackHeight =0;
- for (it = iter.First(); it; it = iter.Next())
- {
+ for (it = iter.First(); it; it = iter.Next()) {
trackTop += trackHeight;
trackHeight = it->GetHeight();
-
//find the second track if this is stereo
- if (it->GetLinked())
- {
- nt = iter.Next();
- trackHeight += nt->GetHeight();
- }
- else
- {
- nt = it;
- }
-
+ if (it->GetLinked()) {
+ nt = iter.Next();
+ trackHeight += nt->GetHeight();
+ }
+ else {
+ nt = it;
+ }
//We have found the track we want to ensure is visible.
- if ((it == t) || (nt == t))
- {
-
- //Get the size of the trackpanel.
- int width, height;
- GetSize(&width, &height);
-
- // Debugging line: //std::cout << trackTop << " " << mViewInfo->vpos << " " << trackHeight << " " << height << std::endl;
- if( trackTop < mViewInfo->vpos || trackTop + trackHeight > mViewInfo->vpos + height)
- {
- mListener->TP_ScrollUpDown(-mViewInfo->vpos);
- mListener->TP_ScrollUpDown(trackTop / mViewInfo->scrollStep);
- break;
- }
+ if ((it == t) || (nt == t)) {
+
+ //Get the size of the trackpanel.
+ int width, height;
+ GetSize(&width, &height);
+
+ if (trackTop < mViewInfo->vpos) {
+ height = mViewInfo->vpos - trackTop + mViewInfo->scrollStep;
+ height /= mViewInfo->scrollStep;
+ mListener->TP_ScrollUpDown(-height);
+ }
+ else if (trackTop + trackHeight > mViewInfo->vpos + height) {
+ height = (trackTop + trackHeight) - (mViewInfo->vpos + height);
+ height = (height + mViewInfo->scrollStep + 1) / mViewInfo->scrollStep;
+ mListener->TP_ScrollUpDown(height);
}
+
+ break;
+ }
}
Refresh(false);
}
@@ -6064,43 +6217,42 @@ void TrackPanel::DrawBordersAroundTrack(Track * t, wxDC * dc,
const wxRect r, const int vrul,
const int labelw)
{
- int h1 = r.y + t->GetHeight() - kTopInset;
-
- // Borders around track and label area
+ // Border around track and label area
+ dc->SetBrush(*wxTRANSPARENT_BRUSH);
dc->SetPen(*wxBLACK_PEN);
- dc->DrawLine(r.x, r.y, r.x + r.width - 1, r.y); // top
- dc->DrawLine(r.x, r.y, r.x, r.y + r.height - 1); // left
- dc->DrawLine(r.x, r.y + r.height - 2, r.x + r.width - 1, r.y + r.height - 2); // bottom
- dc->DrawLine(r.x + r.width - 2, r.y, r.x + r.width - 2, r.y + r.height - 1); // right
- // LL: This is needed for label, time, and midi tracks
- dc->DrawLine(vrul, r.y, vrul, h1 - 2); // between vrulr and track.
- dc->DrawLine(labelw, r.y, labelw, r.y + r.height - 1); // between vruler and TrackInfo
+ dc->DrawRectangle(r.x, r.y, r.width - 1, r.height - 1);
+ AColor::Line(*dc, labelw, r.y, labelw, r.y + r.height - 1); // between vruler and TrackInfo
+
+ // The lines at bottom of 1st track and top of second track of stereo group
+ // Possibly replace with DrawRectangle to add left border.
if (t->GetLinked()) {
- dc->DrawLine(vrul, h1 - 2, r.x + r.width - 1, h1 - 2);
- dc->DrawLine(vrul, h1 + kTopInset, r.x + r.width - 1,
- h1 + kTopInset);
+ int h1 = r.y + t->GetHeight() - kTopInset;
+ AColor::Line(*dc, vrul, h1 - 2, r.x + r.width - 1, h1 - 2);
+ AColor::Line(*dc, vrul, h1 + kTopInset, r.x + r.width - 1, h1 + kTopInset);
}
}
void TrackPanel::DrawShadow(Track * /* t */ , wxDC * dc, const wxRect r)
{
- AColor::Dark(dc, false);
- // bottom
- dc->DrawLine(r.x + 0, r.y + r.height - 1,
- r.x + 1, r.y + r.height - 1);
- // right
- dc->DrawLine(r.x + r.width - 1, r.y + 0,
- r.x + r.width - 1, r.y + 1);
+ int right = r.x + r.width - 1;
+ int bottom = r.y + r.height - 1;
// shadow
dc->SetPen(*wxBLACK_PEN);
+
// bottom
- dc->DrawLine(r.x + 1, r.y + r.height - 1,
- r.x + r.width, r.y + r.height - 1);
+ AColor::Line(*dc, r.x, bottom, right, bottom);
// right
- dc->DrawLine(r.x + r.width - 1, r.y + 1,
- r.x + r.width - 1, r.y + r.height);
+ AColor::Line(*dc, right, r.y, right, bottom);
+
+ // background
+ AColor::Dark(dc, false);
+
+ // bottom
+ AColor::Line(*dc, r.x, bottom, r.x + 1, bottom);
+ // right
+ AColor::Line(*dc, right, r.y, right, r.y + 1);
}
/// Returns the string to be displayed in the track label
@@ -6142,11 +6294,9 @@ void TrackPanel::OnChannelChange(wxCommandEvent & event)
wxASSERT(mPopupMenuTarget);
mPopupMenuTarget->SetChannel(channels[id - OnChannelLeftID]);
MakeParentPushState(wxString::Format(_("Changed '%s' to %s"),
- mPopupMenuTarget->GetName().
- c_str(),
- channelmsgs[id -
- OnChannelLeftID]),
- _("Channel"));
+ mPopupMenuTarget->GetName().c_str(),
+ channelmsgs[id - OnChannelLeftID]),
+ _("Channel"));
mPopupMenuTarget = NULL;
Refresh(false);
}
@@ -6154,23 +6304,44 @@ void TrackPanel::OnChannelChange(wxCommandEvent & event)
/// Split a stereo track into two tracks...
void TrackPanel::OnSplitStereo(wxCommandEvent &event)
{
+ SplitStereo(true);
+}
+
+/// Split a stereo track into two mono tracks...
+void TrackPanel::OnSplitStereoMono(wxCommandEvent &event)
+{
+ SplitStereo(false);
+}
+
+/// Split a stereo track into two tracks...
+void TrackPanel::SplitStereo(bool stereo)
+{
wxASSERT(mPopupMenuTarget);
- Track *partner = mTracks->GetLink(mPopupMenuTarget);
+
+ if (!stereo)
+ mPopupMenuTarget->SetChannel(Track::MonoChannel);
+
+ Track *partner = mPopupMenuTarget->GetLink();
if (partner)
- partner->SetTeamed(false);
+ {
+ partner->SetName(mPopupMenuTarget->GetName());
+ if (!stereo)
+ partner->SetChannel(Track::MonoChannel); // Keep original stereo track name.
+
+ //On Demand - have each channel add it's own.
+ if (ODManager::IsInstanceCreated() && partner->GetKind() == Track::Wave)
+ ODManager::Instance()->MakeWaveTrackIndependent((WaveTrack*)partner);
+ }
+
mPopupMenuTarget->SetLinked(false);
-
-
- //On Demand - have each channel add it's own.
-#ifdef EXPERIMENTAL_ONDEMAND
- if(ODManager::IsInstanceCreated() && partner->GetKind() == Track::Wave)
- ODManager::Instance()->MakeWaveTrackIndependent((WaveTrack*)partner);
-#endif
-
- MakeParentPushState(wxString::Format(_("Split stereo track '%s'"),
- mPopupMenuTarget->GetName().
- c_str()),
- _("Split"));
+
+ wxString msg;
+ if(stereo)
+ msg.Printf(_("Split stereo track '%s'"), mPopupMenuTarget->GetName().c_str());
+ else
+ msg.Printf(_("Split Stereo to Mono '%s'"), mPopupMenuTarget->GetName().c_str());
+
+ MakeParentPushState(msg, _("Split"));
Refresh(false);
}
@@ -6180,20 +6351,17 @@ void TrackPanel::OnMergeStereo(wxCommandEvent &event)
{
wxASSERT(mPopupMenuTarget);
mPopupMenuTarget->SetLinked(true);
- Track *partner = mTracks->GetLink(mPopupMenuTarget);
+ Track *partner = mPopupMenuTarget->GetLink();
if (partner) {
// Set partner's parameters to match target.
partner->Merge(*mPopupMenuTarget);
mPopupMenuTarget->SetChannel(Track::LeftChannel);
partner->SetChannel(Track::RightChannel);
- partner->SetTeamed(true);
//On Demand - join the queues together.
-
-#ifdef EXPERIMENTAL_ONDEMAND
- if(ODManager::IsInstanceCreated() && partner->GetKind() == Track::Wave &&mPopupMenuTarget->GetKind() == Track::Wave )
+ if(ODManager::IsInstanceCreated() && partner->GetKind() == Track::Wave && mPopupMenuTarget->GetKind() == Track::Wave )
if(!ODManager::Instance()->MakeWaveTrackDependent((WaveTrack*)partner,(WaveTrack*)mPopupMenuTarget))
{
;
@@ -6203,8 +6371,6 @@ void TrackPanel::OnMergeStereo(wxCommandEvent &event)
//we will need to display this to the user.
}
-
-#endif
MakeParentPushState(wxString::Format(_("Made '%s' a stereo track"),
mPopupMenuTarget->GetName().
c_str()),
@@ -6226,18 +6392,20 @@ void TrackPanel::OnSetDisplay(wxCommandEvent & event)
wxASSERT(mPopupMenuTarget
&& mPopupMenuTarget->GetKind() == Track::Wave);
+ id -= OnWaveformID;
WaveTrack *wt = (WaveTrack *) mPopupMenuTarget;
- if (wt->GetDisplay()!= id - OnWaveformID) {
- WaveClipList::Node* it;
- for(it=wt->GetClipIterator(); it; it=it->GetNext()) {
- WaveClip *clip = it->GetData();
- clip->mSpecPxCache->valid = false;
- }
- wt->SetDisplay(id - OnWaveformID);
- }
- Track *partner = mTracks->GetLink(mPopupMenuTarget);
- if (partner)
- ((WaveTrack *) partner)->SetDisplay(id - OnWaveformID);
+ if (wt->GetDisplay() != id) {
+ wt->SetDisplay(id);
+ mTrackArtist->InvalidateSpectrumCache(wt);
+
+ WaveTrack *l = (WaveTrack *) wt->GetLink();
+ if (l) {
+ l->SetDisplay(id);
+ mTrackArtist->InvalidateSpectrumCache(l);
+ }
+
+ UpdateVRuler(wt);
+ }
MakeParentModifyState();
mPopupMenuTarget = NULL;
Refresh(false);
@@ -6324,7 +6492,7 @@ void TrackPanel::SetMenuCheck( wxMenu & menu, int newId )
wxMenuItem * item;
int id;
- for ( wxwxMenuItemListNode * node = list.GetFirst(); node; node = node->GetNext() )
+ for ( wxMenuItemList::compatibility_iterator node = list.GetFirst(); node; node = node->GetNext() )
{
item = node->GetData();
id = item->GetId();
@@ -6472,7 +6640,14 @@ void TrackPanel::OnSetTimeTrackRange(wxCommandEvent & /*event*/)
void TrackPanel::OnMoveTrack(wxCommandEvent & event)
{
wxASSERT(event.GetId() == OnMoveUpID || event.GetId() == OnMoveDownID);
- if (mTracks->Move(mPopupMenuTarget, OnMoveUpID == event.GetId())) {
+ bool bUp = (OnMoveUpID == event.GetId());
+ if (mTracks->Move(mPopupMenuTarget, bUp)) {
+ #ifdef EXPERIMENTAL_MIXER_BOARD
+ MixerBoard* pMixerBoard = this->GetMixerBoard(); // Update mixer board, too.
+ if (pMixerBoard)
+ pMixerBoard->MoveTrackCluster((WaveTrack*)mPopupMenuTarget, bUp);
+ #endif
+
MakeParentPushState(wxString::Format(_("Moved '%s' %s"),
mPopupMenuTarget->GetName().
c_str(),
@@ -6512,6 +6687,13 @@ void TrackPanel::OnSetName(wxCommandEvent &event)
_("Track Name"), defaultStr);
if (newName != wxT(""))
t->SetName(newName);
+
+ #ifdef EXPERIMENTAL_MIXER_BOARD
+ MixerBoard* pMixerBoard = this->GetMixerBoard();
+ if (pMixerBoard)
+ pMixerBoard->UpdateName((WaveTrack*)t);
+ #endif
+
MakeParentPushState(wxString::Format(_("Renamed '%s' to '%s'"),
defaultStr.c_str(),
newName.c_str()),
@@ -6530,7 +6712,7 @@ void TrackPanel::OnCutSelectedText(wxCommandEvent &event)
_("Label Edit"),
true /* consolidate */);
}
- RefreshTrack(lt, true);
+ RefreshTrack(lt);
}
/// Copy selected text if copy menu item is selected
@@ -6538,7 +6720,7 @@ void TrackPanel::OnCopySelectedText(wxCommandEvent &event)
{
LabelTrack *lt = (LabelTrack *)mPopupMenuTarget;
lt->CopySelectedText();
- RefreshTrack(lt, true);
+ RefreshTrack(lt);
}
/// paste selected text if p`aste menu item is selected
@@ -6550,42 +6732,7 @@ void TrackPanel::OnPasteSelectedText(wxCommandEvent &event)
_("Label Edit"),
true /* consolidate */);
}
- RefreshTrack(lt, true);
-}
-
-void TrackPanel::OnTrackSticky(wxCommandEvent & event)
-{
- wxASSERT(mPopupMenuTarget && mPopupMenuTarget->GetKind() == Track::Label);
- int id = event.GetId();
- int pos = id - 12000;
- int count = 1;
-
- AudacityProject *p = GetActiveProject();
- if (!p) return;
- TrackListIterator iter(p->GetTracks());
- WaveTrack *wt = (WaveTrack *) iter.First();
- while (wt && count!=pos) {
- if (wt->GetKind()==Track::Wave){
- count++;
- }
- wt = (WaveTrack *) iter.Next();
- }
- if (wt){
- if (event.IsChecked())
- wt->SetStickyTrack((LabelTrack *)mPopupMenuTarget);
- else
- wt->SetStickyTrack(NULL);
- }
- ((LabelTrack *)mPopupMenuTarget)->SetStickyTrack(wt);
- //TEMP CODE FOR REMOVAL OF ALL ASSOCIATIONS
- if (id==12999){
- wt = (WaveTrack *) iter.First();
- while (wt) {
- if (wt->GetKind()==Track::Wave)
- wt->SetStickyTrack(NULL);
- wt = (WaveTrack *) iter.Next();
- }
- }//END TEMP CODE
+ RefreshTrack(lt);
}
// Small helper class to enumerate all fonts in the system
@@ -6674,9 +6821,8 @@ void TrackPanel::OnSetFont(wxCommandEvent &event)
/// @param label - true iff the X Y position is relative to side-panel with the labels in it.
/// @param link - true iff we should consider a hit in any linked track as a hit.
/// @param *trackRect - returns track rectangle.
-/// @param *trackNum - returns track number.
Track *TrackPanel::FindTrack(int mouseX, int mouseY, bool label, bool link,
- wxRect * trackRect, int *trackNum)
+ wxRect * trackRect)
{
wxRect r;
r.x = 0;
@@ -6691,19 +6837,15 @@ Track *TrackPanel::FindTrack(int mouseX, int mouseY, bool label, bool link,
r.width -= GetLeftOffset();
}
- TrackListIterator iter(mTracks);
-
- int n = 1;
+ VisibleTrackIterator iter(GetProject());
- for (Track * t = iter.First(); t;
- r.y += t->GetHeight(), n++, t = iter.Next()) {
+ for (Track * t = iter.First(); t; t = iter.Next()) {
+ r.y = t->GetY() - mViewInfo->vpos + kTopInset;
r.height = t->GetHeight();
if (link && t->GetLinked()) {
- Track *link = mTracks->GetLink(t);
- r.height += link->GetHeight();
+ r.height += t->GetLink()->GetHeight();
}
-
//Determine whether the mouse is inside
//the current rectangle. If so, recalculate
@@ -6719,83 +6861,38 @@ Track *TrackPanel::FindTrack(int mouseX, int mouseY, bool label, bool link,
}
*trackRect = r;
}
- if (trackNum)
- *trackNum = n;
+
return t;
}
}
- if (mouseY >= r.y && trackNum)
- *trackNum = n - 1;
-
return NULL;
}
-
-/// This tells you the (1-based) index of the track you pass to it.
-int TrackPanel::FindTrackNum(Track * target)
-{
- if(!target) return 0;
-
- TrackListIterator iter(mTracks);
- int n = 1;
-
- for (Track * t = iter.First(); t;
- n++, t = iter.Next())
- {
- if(target == t)
- {
- return n;
- }
-
- }
-
- return 0;
-}
-
/// This finds the rectangle of a given track, either the
/// of the label 'adornment' or the track itself
wxRect TrackPanel::FindTrackRect(Track * target, bool label)
{
- if(!target) return wxRect(0,0,0,0);
-
- bool linked = target->GetLinked();
-
- wxRect r;
- r.x = 0;
- r.y = -mViewInfo->vpos;
- r.y += kTopInset;
- GetSize(&r.width, &r.height);
+ if (!target) {
+ return wxRect(0,0,0,0);
+ }
- TrackListIterator iter(mTracks);
+ wxRect r(0,
+ target->GetY() - mViewInfo->vpos,
+ GetSize().GetWidth(),
+ target->GetHeight());
- int n = 1;
+ if (target->GetLinked()) {
+ r.height += target->GetLink()->GetHeight();
+ }
- for (Track * t = iter.First(); t;
- r.y += t->GetHeight(), n++, t = iter.Next())
- {
- r.height = t->GetHeight();
-
- if (linked && t->GetLinked())
- {
- Track *link = mTracks->GetLink(t);
- r.height += link->GetHeight();
- }
-
- if ( t == target)
- {
- r.y -= kTopInset;
- if (label)
- {
- r.x += kLeftInset;
- r.width -= kLeftInset;
- r.y += kTopInset;
- r.height -= kTopInset;
- }
- return r;
- }
+ if (label) {
+ r.x += kLeftInset;
+ r.width -= kLeftInset;
+ r.y += kTopInset;
+ r.height -= kTopInset;
+ }
- }
return r;
}
@@ -6888,8 +6985,8 @@ Track *TrackPanel::GetFocusedTrack()
void TrackPanel::SetFocusedTrack( Track *t )
{
// Make sure we always have the first linked track of a stereo track
- if (t && !t->GetLinked() && mTracks->GetLink(t))
- t = (WaveTrack*)mTracks->GetLink(t);
+ if (t && !t->GetLinked() && t->GetLink())
+ t = (WaveTrack*)t->GetLink();
AudacityProject *p = GetActiveProject();
@@ -6933,8 +7030,25 @@ TrackInfo::TrackInfo(wxWindow * pParentIn)
//which won't ever be shown.
pParent = pParentIn;
int i;
- for(i=0; i<16; i++)
+ for (i = 0; i < 16; i++) {
MakeMoreSliders();
+ }
+
+ int fontSize = 10;
+ mFont.Create(fontSize, wxSWISS, wxNORMAL, wxNORMAL);
+
+ int allowableWidth = GetTitleWidth() - 2; // 2 to allow for left/right borders
+ int textWidth, textHeight;
+ do {
+ mFont.SetPointSize(fontSize);
+ pParent->GetTextExtent(_("Stereo, 999999Hz"),
+ &textWidth,
+ &textHeight,
+ NULL,
+ NULL,
+ &mFont);
+ fontSize--;
+ } while (textWidth >= allowableWidth);
}
TrackInfo::~TrackInfo()
@@ -7019,21 +7133,27 @@ void TrackInfo::GetMinimizeRect(const wxRect r, wxRect &dest, bool minimized) co
dest.height = 15;
}
+/// \todo Probably should move to 'Utils.cpp'.
+void TrackInfo::SetTrackInfoFont(wxDC * dc)
+{
+ dc->SetFont(mFont);
+}
+
void TrackInfo::DrawBordersWithin(wxDC * dc, const wxRect r, bool bHasMuteSolo )
{
dc->SetPen(*wxBLACK_PEN);
// These black lines are actually within TrackInfo...
- dc->DrawLine(r.x, r.y + 16, GetTitleWidth(), r.y + 16); // title bar
- dc->DrawLine(r.x + 16, r.y, r.x + 16, r.y + 16); // close box
+ AColor::Line(*dc, r.x, r.y + 16, GetTitleWidth(), r.y + 16); // title bar
+ AColor::Line(*dc, r.x + 16, r.y, r.x + 16, r.y + 16); // close box
if( bHasMuteSolo && (r.height > (66+18) ))
{
- dc->DrawLine(r.x, r.y + 50, GetTitleWidth(), r.y + 50); // bevel above mute/solo
- dc->DrawLine(r.x+48 , r.y+50, r.x+48, r.y + 66); // line between mute/solo
- dc->DrawLine(r.x, r.y + 66, GetTitleWidth(), r.y + 66); // bevel below mute/solo
+ AColor::Line(*dc, r.x, r.y + 50, GetTitleWidth(), r.y + 50); // bevel above mute/solo
+ AColor::Line(*dc, r.x+48 , r.y+50, r.x+48, r.y + 66); // line between mute/solo
+ AColor::Line(*dc, r.x, r.y + 66, GetTitleWidth(), r.y + 66); // bevel below mute/solo
}
- dc->DrawLine(r.x, r.y + r.height - 19, GetTitleWidth(), r.y + r.height - 19); // minimize bar
+ AColor::Line(*dc, r.x, r.y + r.height - 19, GetTitleWidth(), r.y + r.height - 19); // minimize bar
}
void TrackInfo::DrawBackground(wxDC * dc, const wxRect r, bool bSelected,
@@ -7076,8 +7196,8 @@ void TrackInfo::GetTrackControlsRect(const wxRect r, wxRect & dest) const
void TrackInfo::DrawCloseBox(wxDC * dc, const wxRect r, bool down)
{
- const int xSize=7;
- const int offset=5;
+ wxRect bev;
+ GetCloseBoxRect(r, bev);
#ifdef EXPERIMENTAL_THEMING
wxPen pen( theTheme.Colour( clrTrackPanelText ));
@@ -7086,13 +7206,19 @@ void TrackInfo::DrawCloseBox(wxDC * dc, const wxRect r, bool down)
dc->SetPen(*wxBLACK_PEN);
#endif
- // close "x"
- dc->DrawLine(r.x + offset , r.y + offset, r.x + offset+xSize , r.y + offset+xSize);
- dc->DrawLine(r.x + offset+1, r.y + offset, r.x + offset+xSize+1, r.y + offset+xSize);
- dc->DrawLine(r.x + xSize + offset , r.y + offset, r.x + offset, r.y + offset+xSize);
- dc->DrawLine(r.x + xSize + offset-1, r.y + offset, r.x + offset-1, r.y + offset+xSize);
- wxRect bev;
- GetCloseBoxRect(r, bev);
+ // Draw the "X"
+ const int s = 6;
+
+ int ls = bev.x + ((bev.width - s) / 2);
+ int ts = bev.y + ((bev.height - s) / 2);
+ int rs = ls + s;
+ int bs = ts + s;
+
+ AColor::Line(*dc, ls, ts, rs, bs);
+ AColor::Line(*dc, ls + 1, ts, rs + 1, bs);
+ AColor::Line(*dc, rs, ts, ls, bs);
+ AColor::Line(*dc, rs + 1, ts, ls + 1, bs);
+
bev.Inflate(-1, -1);
AColor::BevelTrackInfo(*dc, !down, bev);
}
@@ -7124,21 +7250,19 @@ void TrackInfo::DrawTitleBar(wxDC * dc, const wxRect r, Track * t,
// Pop-up triangle
#ifdef EXPERIMENTAL_THEMING
- wxPen pen( theTheme.Colour( clrTrackPanelText ));
- dc->SetPen( pen );
+ wxColour c = theTheme.Colour( clrTrackPanelText );
#else
- dc->SetPen(*wxBLACK_PEN);
+ wxColour c = *wxBLACK;
#endif
- int xx = r.x + GetTitleWidth() - 16 - kLeftInset;
- int yy = r.y + 5;
- int triWid = 11;
- while (triWid >= 1) {
- dc->DrawLine(xx, yy, xx + triWid, yy);
- xx++;
- yy++;
- triWid -= 2;
- }
+ dc->SetPen(c);
+ dc->SetBrush(c);
+
+ int s = 10; // Width of dropdown arrow...height is half of width
+ AColor::Arrow(*dc,
+ bev.GetRight() - s - 3, // 3 to offset from right border
+ bev.y + ((bev.height - (s / 2)) / 2),
+ s);
AColor::BevelTrackInfo(*dc, !down, bev);
}
@@ -7197,45 +7321,23 @@ void TrackInfo::DrawMinimize(wxDC * dc, const wxRect r, Track * t, bool down, bo
wxRect bev;
GetMinimizeRect(r, bev, minimized);
+ // Clear background to get rid of previous arrow
AColor::MediumTrackInfo(dc, t->GetSelected());
dc->DrawRectangle(bev);
-
- // Calculate center
- int x = bev.x + bev.width / 2;
- int y = bev.y + bev.height / 2;
-
- wxPoint pts[3];
-
- if (minimized)
- {
- pts[0].x = x - 4;
- pts[0].y = y - 3;
- pts[1].x = x + 4;
- pts[1].y = y - 3;
- pts[2].x = x;
- pts[2].y = y + 3;
-
- } else
- {
- pts[0].x = x;
- pts[0].y = y - 3;
- pts[1].x = x + 4;
- pts[1].y = y + 3;
- pts[2].x = x - 4;
- pts[2].y = y + 3;
- }
-
#ifdef EXPERIMENTAL_THEMING
- wxPen pen( theTheme.Colour( clrTrackPanelText ));
- wxBrush brush( theTheme.Colour( clrTrackPanelText ));
- dc->SetPen( pen );
- dc->SetBrush( brush );
+ wxColour c = theTheme.Colour(clrTrackPanelText);
+ dc->SetBrush(c);
+ dc->SetPen(c);
#else
AColor::Dark(dc, t->GetSelected());
#endif
-
- dc->DrawPolygon(3, pts);
+
+ AColor::Arrow(*dc,
+ bev.x - 5 + bev.width / 2,
+ bev.y - 2 + bev.height / 2,
+ 10,
+ minimized);
AColor::BevelTrackInfo(*dc, !down, bev);
}
@@ -7254,13 +7356,15 @@ void TrackInfo::MakeMoreSliders()
wxPoint(gainRect.x, gainRect.y),
wxSize(gainRect.width, gainRect.height),
DB_SLIDER);
+ slider->SetDefaultValue(1.0);
mGains.Add(slider);
- /* i18n-hint: Title of the Pan slider, used to move the sound left or right stereoscopically */
+ /* i18n-hint: Title of the Pan slider, used to move the sound left or right */
slider = new LWSlider(pParent, _("Pan"),
wxPoint(panRect.x, panRect.y),
wxSize(panRect.width, panRect.height),
PAN_SLIDER);
+ slider->SetDefaultValue(0.0);
mPans.Add(slider);
}
@@ -7271,10 +7375,11 @@ void TrackInfo::EnsureSufficientSliders(int index)
MakeMoreSliders();
}
-void TrackInfo::DrawSliders(wxDC *dc, WaveTrack *t, wxRect r, int index)
+void TrackInfo::DrawSliders(wxDC *dc, WaveTrack *t, wxRect r)
{
wxRect gainRect;
wxRect panRect;
+ int index = t->GetIndex();
EnsureSufficientSliders( index );
diff --git a/src/TrackPanel.h b/src/TrackPanel.h
index 9df0bc6..9aa3f09 100644
--- a/src/TrackPanel.h
+++ b/src/TrackPanel.h
@@ -26,18 +26,17 @@
class wxMenu;
class wxRect;
-class TrackList;
-class Track;
class TrackPanel;
class TrackArtist;
-class WaveTrack;
-class LabelTrack;
class Ruler;
class SnapManager;
class AdornedRulerPanel;
class LWSlider;
class ControlToolBar; //Needed because state of controls can affect what gets drawn.
class ToolsToolBar; //Needed because state of controls can affect what gets drawn.
+#ifdef EXPERIMENTAL_MIXER_BOARD
+ class MixerBoard;
+#endif
class AudacityProject;
class TrackPanelAx;
@@ -92,13 +91,14 @@ private:
void MakeMoreSliders();
void EnsureSufficientSliders(int index);
+ void SetTrackInfoFont(wxDC *dc);
void DrawBackground(wxDC * dc, const wxRect r, bool bSelected, bool bHasMuteSolo, const int labelw, const int vrul);
void DrawBordersWithin(wxDC * dc, const wxRect r, bool bHasMuteSolo );
void DrawCloseBox(wxDC * dc, const wxRect r, bool down);
void DrawTitleBar(wxDC * dc, const wxRect r, Track * t, bool down);
void DrawMuteSolo(wxDC * dc, const wxRect r, Track * t, bool down, bool solo, bool bHasSoloButton);
void DrawVRuler(wxDC * dc, const wxRect r, Track * t);
- void DrawSliders(wxDC *dc, WaveTrack *t, wxRect r, int index);
+ void DrawSliders(wxDC * dc, WaveTrack *t, wxRect r);
void DrawMinimize(wxDC * dc, const wxRect r, Track * t, bool down, bool minimized);
void GetTrackControlsRect(const wxRect r, wxRect &dest) const;
@@ -113,6 +113,7 @@ public:
LWSliderArray mGains;
LWSliderArray mPans;
wxWindow * pParent;
+ wxFont mFont;
friend class TrackPanel;
};
@@ -138,6 +139,8 @@ class TrackPanel:public wxPanel {
virtual ~ TrackPanel();
void BuildMenus(void);
+ void DeleteMenus(void);
+
void UpdatePrefs();
void OnSize(wxSizeEvent & event);
@@ -154,6 +157,9 @@ class TrackPanel:public wxPanel {
void OnContextMenu(wxContextMenuEvent & event);
+ void OnTrackListResized(wxCommandEvent & event);
+ void OnTrackListUpdated(wxCommandEvent & event);
+
double GetMostRecentXPos();
void OnTimer();
@@ -166,9 +172,9 @@ class TrackPanel:public wxPanel {
void SetStop(bool bStopped);
- virtual void Refresh(bool eraseBackground = TRUE,
+ virtual void Refresh(bool eraseBackground = true,
const wxRect *rect = (const wxRect *) NULL);
- void RefreshTrack(Track *trk, bool refreshbacking = false);
+ void RefreshTrack(Track *trk, bool refreshbacking = true);
void DisplaySelection();
@@ -206,14 +212,18 @@ class TrackPanel:public wxPanel {
Track *GetFocusedTrack();
void SetFocusedTrack(Track *t);
-
- void OnTrackSticky(wxCommandEvent & event);
void HandleCursorForLastMouseEvent();
- void UpdateVRulerRect();
- private:
+ void UpdateVRulers();
+ void UpdateVRuler(Track *t);
+ void UpdateTrackVRuler(Track *t);
+ void UpdateVRulerSize();
+ private:
+ #ifdef EXPERIMENTAL_MIXER_BOARD
+ MixerBoard* GetMixerBoard();
+ #endif
bool IsUnsafe();
bool HandleLabelTrackMouseEvent(LabelTrack * lTrack, wxRect &r, wxMouseEvent & event);
bool HandleTrackLocationMouseEvent(WaveTrack * track, wxRect &r, wxMouseEvent &event);
@@ -235,7 +245,7 @@ class TrackPanel:public wxPanel {
void HandleSelect(wxMouseEvent & event);
void SelectionHandleDrag(wxMouseEvent &event, Track *pTrack);
void SelectionHandleClick(wxMouseEvent &event,
- Track* pTrack, wxRect r, int num);
+ Track* pTrack, wxRect r);
void StartSelection (int mouseXCoordinate, int trackLeftEdge);
void ExtendSelection(int mouseXCoordinate, int trackLeftEdge,
Track *pTrack);
@@ -306,9 +316,9 @@ class TrackPanel:public wxPanel {
bool CloseFunc(Track * t, wxRect r, int x, int y);
bool PopupFunc(Track * t, wxRect r, int x, int y);
bool GainFunc(Track * t, wxRect r, wxMouseEvent &event,
- int index, int x, int y);
+ int x, int y);
bool PanFunc(Track * t, wxRect r, wxMouseEvent &event,
- int index, int x, int y);
+ int x, int y);
void MakeParentRedrawScrollbars();
// AS: Pushing the state preserves state for Undo operations.
@@ -336,6 +346,8 @@ class TrackPanel:public wxPanel {
void OnFormatChange(wxCommandEvent &event);
void OnSplitStereo(wxCommandEvent &event);
+ void OnSplitStereoMono(wxCommandEvent &event);
+ void SplitStereo(bool stereo);
void OnMergeStereo(wxCommandEvent &event);
void OnCutSelectedText(wxCommandEvent &event);
void OnCopySelectedText(wxCommandEvent &event);
@@ -348,9 +360,8 @@ class TrackPanel:public wxPanel {
// Find track info by coordinate
Track *FindTrack(int mouseX, int mouseY, bool label, bool link,
- wxRect * trackRect = NULL, int *trackNum = NULL);
+ wxRect * trackRect = NULL);
- int FindTrackNum(Track * target);
wxRect FindTrackRect(Track * target, bool label);
// int GetTitleWidth() const { return 100; }
@@ -364,11 +375,10 @@ class TrackPanel:public wxPanel {
private:
void DrawTracks(wxDC * dc);
- void DrawEverythingElse(wxDC *dc, const wxRect panelRect, const wxRect clip);
- void DrawEverythingElse(Track *t, wxDC *dc, wxRect &r, wxRect &wxTrackRect,
- int index);
- void DrawOutside(Track *t, wxDC *dc, const wxRect rec, const int labelw,
- const int vrul, const wxRect trackRect, int index);
+ void DrawEverythingElse(wxDC *dc, const wxRegion region,
+ const wxRect panelRect, const wxRect clip);
+ void DrawOutside(Track *t, wxDC *dc, const wxRect rec,
+ const wxRect trackRect);
void DrawZooming(wxDC* dc, const wxRect clip);
void HighlightFocusedTrack (wxDC* dc, const wxRect r);
@@ -437,7 +447,6 @@ private:
WaveTrack::Location mCapturedTrackLocation;
wxRect mCapturedTrackLocationRect;
wxRect mCapturedRect;
- int mCapturedNum;
// When sliding horizontally, the moving clip may automatically
// snap to the beginning and ending of other clips, or to label
@@ -487,7 +496,6 @@ private:
float mDrawingStartSampleValue; // value of last click-down
sampleCount mDrawingLastDragSample; // sample of last drag-over
float mDrawingLastDragSampleValue; // value of last drag-over
- wxRect mLastDrawnTrackRect;
double PositionToTime(wxInt64 mouseXCoordinate,
wxInt64 trackLeftEdge) const;
@@ -557,7 +565,6 @@ private:
wxMenu *mLabelTrackMenu;
wxMenu *mRateMenu;
wxMenu *mFormatMenu;
- wxMenu *mStickyLabelMenu;
wxMenu *mLabelTrackInfoMenu;
Track *mPopupMenuTarget;
@@ -571,7 +578,7 @@ private:
private:
// The screenshot class needs to access internals
- friend class ScreenFrame;
+ friend class ScreenshotCommand;
public:
wxSize vrulerSize;
diff --git a/src/TrackPanelAx.cpp b/src/TrackPanelAx.cpp
index 0de7d1b..0f8f093 100644
--- a/src/TrackPanelAx.cpp
+++ b/src/TrackPanelAx.cpp
@@ -110,7 +110,7 @@ bool TrackPanelAx::IsFocused( Track *track )
}
if( ( track == mFocusedTrack ) ||
- ( track == mTrackPanel->mTracks->GetLink( mFocusedTrack ) ) )
+ ( track == mFocusedTrack->GetLink() ) )
{
return true;
}
@@ -158,6 +158,18 @@ Track *TrackPanelAx::FindTrack( int num )
return t;
}
+void TrackPanelAx::Updated()
+{
+#if wxUSE_ACCESSIBILITY
+ Track *t = GetFocus();
+ NotifyEvent(wxACC_EVENT_OBJECT_NAMECHANGE,
+ mTrackPanel,
+ wxOBJID_CLIENT,
+ TrackNum(t));
+ SetFocus(t);
+#endif
+}
+
#if wxUSE_ACCESSIBILITY
// Retrieves the address of an IDispatch interface for the specified child.
@@ -187,7 +199,7 @@ wxAccStatus TrackPanelAx::GetChildCount( int* childCount )
{
cnt++;
- if( mTrackPanel->mTracks->GetLink( t ) != NULL )
+ if( t->GetLink() != NULL )
{
t = iter.Next();
}
diff --git a/src/TrackPanelAx.h b/src/TrackPanelAx.h
index 8766a4e..951a458 100644
--- a/src/TrackPanelAx.h
+++ b/src/TrackPanelAx.h
@@ -15,9 +15,6 @@
#include <wx/panel.h>
#if wxUSE_ACCESSIBILITY
-#if defined(__WXMSW__)
-#include <oleacc.h>
-#endif
#include <wx/access.h>
#endif
@@ -41,6 +38,9 @@ public:
// Returns TRUE if passed track has the focus
bool IsFocused( Track *track );
+ // Called to signal changes to a track
+ void Updated();
+
#if wxUSE_ACCESSIBILITY
// Retrieves the address of an IDispatch interface for the specified child.
// All objects must support this property.
diff --git a/src/UndoManager.cpp b/src/UndoManager.cpp
index 521a08f..0bd86cb 100644
--- a/src/UndoManager.cpp
+++ b/src/UndoManager.cpp
@@ -22,15 +22,17 @@ UndoManager
#include "Audacity.h"
-#include <wx/textctrl.h>
-#include <wx/log.h>
-
+#include "BlockFile.h"
#include "Internat.h"
-#include "UndoManager.h"
+#include "Sequence.h"
#include "Track.h"
-
#include "WaveTrack.h" // temp
+#include <map>
+#include <set>
+
+#include "UndoManager.h"
+
UndoManager::UndoManager()
{
current = -1;
@@ -44,6 +46,63 @@ UndoManager::~UndoManager()
ClearStates();
}
+// get the sum of the sizes of all blocks this track list
+// references. However, if a block is referred to multiple
+// times it is only counted once. Return value is in bytes.
+wxLongLong UndoManager::GetSpaceUsage(int index)
+{
+ TrackListOfKindIterator iter(Track::Wave);
+ WaveTrack *wt;
+ WaveClipList::compatibility_iterator it;
+ BlockArray *blocks;
+ unsigned int i;
+
+ // get a map of all blocks referenced in this TrackList
+ std::map<BlockFile*, wxLongLong> cur;
+
+ wt = (WaveTrack *) iter.First(stack[index]->tracks);
+ while (wt) {
+ for (it = wt->GetClipIterator(); it; it = it->GetNext()) {
+ blocks = it->GetData()->GetSequenceBlockArray();
+ for (i = 0; i < blocks->GetCount(); i++) {
+ cur[blocks->Item(i)->f] = blocks->Item(i)->f->GetSpaceUsage();
+ }
+ }
+ wt = (WaveTrack *) iter.Next();
+ }
+
+ if (index > 0) {
+ // get a set of all blocks referenced in all prev TrackList
+ std::set<BlockFile*> prev;
+ while (--index) {
+ wt = (WaveTrack *) iter.First(stack[index]->tracks);
+ while (wt) {
+ for (it = wt->GetClipIterator(); it; it = it->GetNext()) {
+ blocks = it->GetData()->GetSequenceBlockArray();
+ for (i = 0; i < blocks->GetCount(); i++) {
+ prev.insert(blocks->Item(i)->f);
+ }
+ }
+ wt = (WaveTrack *) iter.Next();
+ }
+ }
+
+ // remove all blocks in prevBlockFiles from curBlockFiles
+ std::set<BlockFile*>::const_iterator prevIter;
+ for (prevIter = prev.begin(); prevIter != prev.end(); prevIter++) {
+ cur.erase(*prevIter);
+ }
+ }
+
+ // sum the sizes of the blocks remaining in curBlockFiles;
+ wxLongLong bytes = 0;
+ std::map<BlockFile*, wxLongLong>::const_iterator curIter;
+ for (curIter = cur.begin(); curIter != cur.end(); curIter++) {
+ bytes += curIter->second;
+ }
+
+ return bytes;
+}
void UndoManager::GetLongDescription(unsigned int n, wxString *desc,
wxString *size)
@@ -51,17 +110,10 @@ void UndoManager::GetLongDescription(unsigned int n, wxString *desc,
n -= 1; // 1 based to zero based
wxASSERT(n < stack.Count());
- wxLongLong bytes;
*desc = stack[n]->description;
- if (n == 0)
- bytes = stack[n]->tracks->GetSpaceUsage();
- else {
- bytes = stack[n]->tracks->GetAdditionalSpaceUsage(&stack);
- }
-
- *size = Internat::FormatSize(bytes);
+ *size = Internat::FormatSize(GetSpaceUsage(n));
}
void UndoManager::GetShortDescription(unsigned int n, wxString *desc)
@@ -84,29 +136,23 @@ void UndoManager::SetLongDescription(unsigned int n, wxString desc)
void UndoManager::RemoveStateAt(int n)
{
- TrackListIterator iter(stack[n]->tracks);
- Track *t = iter.First();
- while(t)
- {
- delete t;
- t = iter.Next();
- }
-
+ stack[n]->tracks->Clear(true);
delete stack[n]->tracks;
UndoStackElem *tmpStackElem = stack[n];
stack.RemoveAt(n);
delete tmpStackElem;
-
- current -= 1;
- saved -= 1;
}
void UndoManager::RemoveStates(int num)
{
- for (int i = 0; i < num; i++)
+ for (int i = 0; i < num; i++) {
RemoveStateAt(0);
+
+ current -= 1;
+ saved -= 1;
+ }
}
void UndoManager::ClearStates()
@@ -137,26 +183,19 @@ bool UndoManager::RedoAvailable()
void UndoManager::ModifyState(TrackList * l, double sel0, double sel1)
{
// Delete current
-
- TrackListIterator iter(stack[current]->tracks);
- Track *t = iter.First();
- while (t) {
- delete t;
- t = iter.Next();
- }
+ stack[current]->tracks->Clear(true);
+ delete stack[current]->tracks;
// Duplicate
-
TrackList *tracksCopy = new TrackList();
- TrackListIterator iter2(l);
- t = iter2.First();
+ TrackListIterator iter(l);
+ Track *t = iter.First();
while (t) {
tracksCopy->Add(t->Duplicate());
- t = iter2.Next();
+ t = iter.Next();
}
// Replace
- delete stack[current]->tracks;
stack[current]->tracks = tracksCopy;
stack[current]->sel0 = sel0;
stack[current]->sel1 = sel1;
@@ -185,19 +224,11 @@ void UndoManager::PushState(TrackList * l, double sel0, double sel1,
consolidationCount = 0;
- for (i = current + 1; i < stack.Count(); i++) {
- TrackListIterator iter(stack[i]->tracks);
- Track *t = iter.First();
- while (t) {
- delete t;
- t = iter.Next();
- }
+ i = current + 1;
+ while (i < stack.Count()) {
+ RemoveStateAt(i);
}
-
- i = stack.Count() - 1;
- while (i > (unsigned int)current)
- stack.RemoveAt(i--);
-
+
TrackList *tracksCopy = new TrackList();
TrackListIterator iter(l);
Track *t = iter.First();
@@ -216,8 +247,9 @@ void UndoManager::PushState(TrackList * l, double sel0, double sel1,
stack.Add(push);
current++;
- if (saved >= current)
+ if (saved >= current) {
saved = -1;
+ }
lastAction = longDescription;
}
@@ -304,7 +336,6 @@ void UndoManager::StateSaved()
void UndoManager::Debug()
{
for (unsigned int i = 0; i < stack.Count(); i++) {
-
TrackListIterator iter(stack[i]->tracks);
WaveTrack *t = (WaveTrack *) (iter.First());
wxPrintf(wxT("*%d* %s %f\n"), i, (i == (unsigned int)current) ? wxT("-->") : wxT(" "),
@@ -319,6 +350,7 @@ void UndoManager::SetODChangesFlag()
mODChanges=true;
mODChangesMutex.Unlock();
}
+
bool UndoManager::HasODChangesFlag()
{
bool ret;
diff --git a/src/UndoManager.h b/src/UndoManager.h
index 9e57a4c..43437c3 100644
--- a/src/UndoManager.h
+++ b/src/UndoManager.h
@@ -102,6 +102,8 @@ class AUDACITY_DLL_API UndoManager {
void ResetODChangesFlag();
private:
+ wxLongLong GetSpaceUsage(int index);
+
int current;
int saved;
UndoStack stack;
diff --git a/src/UploadDialog.cpp b/src/UploadDialog.cpp
index 02bf2ae..578a09e 100644
--- a/src/UploadDialog.cpp
+++ b/src/UploadDialog.cpp
@@ -244,7 +244,7 @@ void UploadDialog::OnConnect(wxCommandEvent & WXUNUSED(event))
system = ftp->GetLastResult();
system = system.Lower();
- //wxMessageBox(system, _T("FTP Status"), wxOK | wxICON_INFORMATION, this);
+ //wxMessageBox(system, wxT("FTP Status"), wxOK | wxICON_INFORMATION, this);
if (system.Find(wxT("unix"))==-1 && system.Find(wxT("windows"))==-1)
{
@@ -897,10 +897,11 @@ void UploadDialog::DownloadFile (wxString src, wxString dest)
out->Write(chunk, size);
}
}
-
- if (!mProgress->Update(count, iterations, src))
+
+ int updateResult = mProgress->Update(count, iterations, src);
+ if (updateResult != eProgressSuccess)
{
- //wxMessageBox("ABORT", _T("FTP Status"), wxOK | wxICON_INFORMATION, NULL);
+ //wxMessageBox("ABORT", wxT("FTP Status"), wxOK | wxICON_INFORMATION, NULL);
abort = true;
break;
@@ -1308,7 +1309,7 @@ void UploadDialog::OnDeleteSite (wxCommandEvent &event)
wxString debug;
// debug.Printf("%d", index);
-// wxMessageBox(debug, _T("FTP Status"), wxOK | wxICON_INFORMATION, this);
+// wxMessageBox(debug, wxT("FTP Status"), wxOK | wxICON_INFORMATION, this);
wxFileName fn( FileNames::DataDir(), wxT("connections.ini") );
@@ -1352,7 +1353,7 @@ void UploadDialog::OnSelectSite (wxListEvent &event)
//wxString debug;
//debug.Printf("ftpIndex %d", ftpIndex);
- //wxMessageBox(debug, _T("FTP Status"), wxOK | wxICON_INFORMATION, NULL);
+ //wxMessageBox(debug, wxT("FTP Status"), wxOK | wxICON_INFORMATION, NULL);
}
@@ -1461,7 +1462,7 @@ void UploadDialog::UpdateSiteList (void)
while (count < ftpList->GetCount())
{
- //wxMessageBox(ftpList->Item(count), _T("Error"), wxOK, NULL);
+ //wxMessageBox(ftpList->Item(count), wxT("Error"), wxOK, NULL);
tmp = siteList->InsertItem(insert_count, ftpList->Item(count), 0);
siteList->SetItemData(tmp, insert_count);
diff --git a/src/ViewInfo.h b/src/ViewInfo.h
index 6728cce..a4bfeb6 100644
--- a/src/ViewInfo.h
+++ b/src/ViewInfo.h
@@ -14,6 +14,8 @@
const double gMaxZoom = 6000000,
gMinZoom = 0.001;
+class Track;
+
struct ViewInfo {
// Current selection (in seconds)
@@ -23,6 +25,7 @@ struct ViewInfo {
// Scroll info
+ Track *track; // first visible track
int vpos; // vertical scroll pos
double h; // h pos in secs
diff --git a/src/WaveClip.cpp b/src/WaveClip.cpp
index ce66504..28283cd 100644
--- a/src/WaveClip.cpp
+++ b/src/WaveClip.cpp
@@ -217,8 +217,13 @@ class SpecCache {
public:
SpecCache(int cacheLen, int half, bool autocorrelation)
{
+ minFreqOld = -1;
+ maxFreqOld = -1;
+ gainOld = -1;
+ rangeOld = -1;
windowTypeOld = -1;
windowSizeOld = -1;
+ frequencyGainOld = false;
#ifdef EXPERIMENTAL_FFT_SKIP_POINTS
fftSkipPointsOld = -1;
#endif //EXPERIMENTAL_FFT_SKIP_POINTS
@@ -237,8 +242,13 @@ public:
delete[] where;
}
+ int minFreqOld;
+ int maxFreqOld;
+ int gainOld;
+ int rangeOld;
int windowTypeOld;
int windowSizeOld;
+ int frequencyGainOld;
#ifdef EXPERIMENTAL_FFT_SKIP_POINTS
int fftSkipPointsOld;
#endif //EXPERIMENTAL_FFT_SKIP_POINTS
@@ -251,6 +261,35 @@ public:
float *freq;
};
+#ifdef EXPERIMENTAL_USE_REALFFTF
+#include "FFT.h"
+void ComputeSpectrumUsingRealFFTf(float *buffer, HFFT hFFT, float *window, int len, float *out)
+{
+ int i;
+ if(len > hFFT->Points*2)
+ len = hFFT->Points*2;
+ for(i=0; i<len; i++)
+ buffer[i] *= window[i];
+ for( ; i<(hFFT->Points*2); i++)
+ buffer[i]=0; // zero pad as needed
+ RealFFTf(buffer, hFFT);
+ // Handle the (real-only) DC
+ float power = buffer[0]*buffer[0];
+ if(power <= 0)
+ out[0] = -160.0;
+ else
+ out[0] = 10.0*log10(power);
+ for(i=1;i<hFFT->Points;i++) {
+ power = (buffer[hFFT->BitReversed[i] ]*buffer[hFFT->BitReversed[i] ])
+ + (buffer[hFFT->BitReversed[i]+1]*buffer[hFFT->BitReversed[i]+1]);
+ if(power <= 0)
+ out[i] = -160.0;
+ else
+ out[i] = 10.0*log10(power);
+ }
+}
+#endif // EXPERIMENTAL_USE_REALFFTF
+
WaveClip::WaveClip(DirManager *projDirManager, sampleFormat format, int rate)
{
mOffset = 0;
@@ -258,6 +297,12 @@ WaveClip::WaveClip(DirManager *projDirManager, sampleFormat format, int rate)
mSequence = new Sequence(projDirManager, format);
mEnvelope = new Envelope();
mWaveCache = new WaveCache(1);
+#ifdef EXPERIMENTAL_USE_REALFFTF
+ mWindowType = -1;
+ mWindowSize = -1;
+ hFFT = NULL;
+ mWindow = NULL;
+#endif
mSpecCache = new SpecCache(1, 1, false);
mSpecPxCache = new SpecPxCache(1);
mAppendBuffer = NULL;
@@ -279,10 +324,16 @@ WaveClip::WaveClip(WaveClip& orig, DirManager *projDirManager)
mEnvelope->SetOffset(orig.GetOffset());
mEnvelope->SetTrackLen(((double)orig.mSequence->GetNumSamples()) / orig.mRate);
mWaveCache = new WaveCache(1);
+#ifdef EXPERIMENTAL_USE_REALFFTF
+ mWindowType = -1;
+ mWindowSize = -1;
+ hFFT = NULL;
+ mWindow = NULL;
+#endif
mSpecCache = new SpecCache(1, 1, false);
mSpecPxCache = new SpecPxCache(1);
- for (WaveClipList::Node* it=orig.mCutLines.GetFirst(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=orig.mCutLines.GetFirst(); it; it=it->GetNext())
mCutLines.Append(new WaveClip(*it->GetData(), projDirManager));
mAppendBuffer = NULL;
@@ -297,6 +348,12 @@ WaveClip::~WaveClip()
delete mWaveCache;
delete mSpecCache;
delete mSpecPxCache;
+#ifdef EXPERIMENTAL_USE_REALFFTF
+ if(hFFT != NULL)
+ EndFFT(hFFT);
+ if(mWindow != NULL)
+ delete[] mWindow;
+#endif
if (mAppendBuffer)
DeleteSamples(mAppendBuffer);
@@ -645,6 +702,11 @@ bool WaveClip::GetSpectrogram(float *freq, sampleCount *where,
double t0, double pixelsPerSecond,
bool autocorrelation)
{
+ int minFreq = gPrefs->Read(wxT("/Spectrum/MinFreq"), 0L);
+ int maxFreq = gPrefs->Read(wxT("/Spectrum/MaxFreq"), 8000L);
+ int range = gPrefs->Read(wxT("/Spectrum/Range"), 80L);
+ int gain = gPrefs->Read(wxT("/Spectrum/Gain"), 20L);
+ int frequencygain = gPrefs->Read(wxT("/Spectrum/FrequencyGain"), 0L);
int windowType;
int windowSize = gPrefs->Read(wxT("/Spectrum/FFTSize"), 256);
#ifdef EXPERIMENTAL_FFT_SKIP_POINTS
@@ -654,9 +716,42 @@ bool WaveClip::GetSpectrogram(float *freq, sampleCount *where,
int half = windowSize/2;
gPrefs->Read(wxT("/Spectrum/WindowType"), &windowType, 3);
+#ifdef EXPERIMENTAL_USE_REALFFTF
+ // Update the FFT and window if necessary
+ if((mWindowType != windowType) || (mWindowSize != windowSize)
+ || (hFFT == NULL) || (mWindow == NULL) || (mWindowSize != hFFT->Points*2) ) {
+ mWindowType = windowType;
+ mWindowSize = windowSize;
+ if(hFFT != NULL)
+ EndFFT(hFFT);
+ hFFT = InitializeFFT(mWindowSize);
+ if(mWindow != NULL) delete[] mWindow;
+ // Create the requested window function
+ mWindow = new float[mWindowSize];
+ int i;
+ for(i=0; i<windowSize; i++)
+ mWindow[i]=1.0;
+ WindowFunc(mWindowType, mWindowSize, mWindow);
+ // Scale the window function to give 0dB spectrum for 0dB sine tone
+ double ws=0;
+ for(i=0; i<windowSize; i++)
+ ws += mWindow[i];
+ if(ws > 0) {
+ ws = 2.0/ws;
+ for(i=0; i<windowSize; i++)
+ mWindow[i] *= ws;
+ }
+ }
+#endif // EXPERIMENTAL_USE_REALFFTF
+
if (mSpecCache &&
+ mSpecCache->minFreqOld == minFreq &&
+ mSpecCache->maxFreqOld == maxFreq &&
+ mSpecCache->rangeOld == range &&
+ mSpecCache->gainOld == gain &&
mSpecCache->windowTypeOld == windowType &&
mSpecCache->windowSizeOld == windowSize &&
+ mSpecCache->frequencyGainOld == frequencygain &&
#ifdef EXPERIMENTAL_FFT_SKIP_POINTS
mSpecCache->fftSkipPointsOld == fftSkipPoints &&
#endif //EXPERIMENTAL_FFT_SKIP_POINTS
@@ -692,8 +787,13 @@ bool WaveClip::GetSpectrogram(float *freq, sampleCount *where,
// with the current one, re-use as much of the cache as
// possible
if (oldCache->dirty == mDirty &&
+ oldCache->minFreqOld == minFreq &&
+ oldCache->maxFreqOld == maxFreq &&
+ oldCache->rangeOld == range &&
+ oldCache->gainOld == gain &&
oldCache->windowTypeOld == windowType &&
oldCache->windowSizeOld == windowSize &&
+ oldCache->frequencyGainOld == frequencygain &&
#ifdef EXPERIMENTAL_FFT_SKIP_POINTS
oldCache->fftSkipPointsOld == fftSkipPoints &&
#endif //EXPERIMENTAL_FFT_SKIP_POINTS
@@ -728,8 +828,24 @@ bool WaveClip::GetSpectrogram(float *freq, sampleCount *where,
#else //!EXPERIMENTAL_FFT_SKIP_POINTS
float *buffer = new float[windowSize];
#endif //EXPERIMENTAL_FFT_SKIP_POINTS
+ mSpecCache->minFreqOld = minFreq;
+ mSpecCache->maxFreqOld = maxFreq;
+ mSpecCache->gainOld = gain;
+ mSpecCache->rangeOld = range;
mSpecCache->windowTypeOld = windowType;
mSpecCache->windowSizeOld = windowSize;
+ mSpecCache->frequencyGainOld = frequencygain;
+
+ float *gainfactor = NULL;
+ if(frequencygain > 0) {
+ // Compute a frequency-dependant gain factor
+ // scaled such that 1000 Hz gets a gain of 0dB
+ double factor = 0.001*(double)mRate/(double)windowSize;
+ gainfactor = new float[half];
+ for(x = 0; x < half; x++) {
+ gainfactor[x] = frequencygain*log10(factor * x);
+ }
+ }
for (x = 0; x < mSpecCache->len; x++)
if (recalc[x]) {
@@ -757,14 +873,15 @@ bool WaveClip::GetSpectrogram(float *freq, sampleCount *where,
}
#ifdef EXPERIMENTAL_FFT_SKIP_POINTS
if (start + len*fftSkipPoints1 > mSequence->GetNumSamples()) {
- len = (mSequence->GetNumSamples() - start)/fftSkipPoints1;
- for (i = len*fftSkipPoints1; i < (sampleCount)windowSize; i++)
+ int newlen = (mSequence->GetNumSamples() - start)/fftSkipPoints1;
+ for (i = newlen*fftSkipPoints1; i < (sampleCount)len*fftSkipPoints1; i++)
#else //!EXPERIMENTAL_FFT_SKIP_POINTS
if (start + len > mSequence->GetNumSamples()) {
- len = mSequence->GetNumSamples() - start;
- for (i = len; i < (sampleCount)windowSize; i++)
+ int newlen = mSequence->GetNumSamples() - start;
+ for (i = newlen; i < (sampleCount)len; i++)
#endif //EXPERIMENTAL_FFT_SKIP_POINTS
adj[i] = 0;
+ len = newlen;
}
if (len > 0)
@@ -782,12 +899,29 @@ bool WaveClip::GetSpectrogram(float *freq, sampleCount *where,
mSequence->Get((samplePtr)adj, floatSample, start, len);
#endif //EXPERIMENTAL_FFT_SKIP_POINTS
- ComputeSpectrum(buffer, windowSize, windowSize,
- mRate, &mSpecCache->freq[half * x],
- autocorrelation, windowType);
+#ifdef EXPERIMENTAL_USE_REALFFTF
+ if(autocorrelation) {
+ ComputeSpectrum(buffer, windowSize, windowSize,
+ mRate, &mSpecCache->freq[half * x],
+ autocorrelation, windowType);
+ } else {
+ ComputeSpectrumUsingRealFFTf(buffer, hFFT, mWindow, mWindowSize, &mSpecCache->freq[half * x]);
+ }
+#else // EXPERIMENTAL_USE_REALFFTF
+ ComputeSpectrum(buffer, windowSize, windowSize,
+ mRate, &mSpecCache->freq[half * x],
+ autocorrelation, windowType);
+#endif // EXPERIMENTAL_USE_REALFFTF
+ if(gainfactor) {
+ // Apply a frequency-dependant gain factor
+ for(i=0; i<half; i++)
+ mSpecCache->freq[half * x + i] += gainfactor[i];
+ }
}
}
+ if(gainfactor)
+ delete[] gainfactor;
delete[]buffer;
delete[]recalc;
delete oldCache;
@@ -1023,7 +1157,7 @@ void WaveClip::WriteXML(XMLWriter &xmlFile)
mSequence->WriteXML(xmlFile);
mEnvelope->WriteXML(xmlFile);
- for (WaveClipList::Node* it=mCutLines.GetFirst(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=mCutLines.GetFirst(); it; it=it->GetNext())
it->GetData()->WriteXML(xmlFile);
xmlFile.EndTag(wxT("waveclip"));
@@ -1088,7 +1222,7 @@ bool WaveClip::Paste(double t0, WaveClip* other)
OffsetCutLines(t0, other->GetEndTime()-other->GetStartTime());
// Paste cut lines contained in pasted clip
- for (WaveClipList::Node* it=other->mCutLines.GetFirst(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=other->mCutLines.GetFirst(); it; it=it->GetNext())
{
WaveClip* cutline = it->GetData();
WaveClip* newCutLine = new WaveClip(*cutline,
@@ -1155,9 +1289,9 @@ bool WaveClip::Clear(double t0, double t1)
if (clip_t1 > GetEndTime())
clip_t1 = GetEndTime();
- WaveClipList::Node* nextIt = (WaveClipList::Node*)-1;
+ WaveClipList::compatibility_iterator nextIt;
- for (WaveClipList::Node* it = mCutLines.GetFirst(); it; it=nextIt)
+ for (WaveClipList::compatibility_iterator it = mCutLines.GetFirst(); it; it=nextIt)
{
nextIt = it->GetNext();
WaveClip* clip = it->GetData();
@@ -1206,9 +1340,9 @@ bool WaveClip::ClearAndAddCutLine(double t0, double t1)
newClip->SetOffset(clip_t0-mOffset);
// Sort out cutlines that belong to the new cutline
- WaveClipList::Node* nextIt = (WaveClipList::Node*)-1;
+ WaveClipList::compatibility_iterator nextIt;
- for (WaveClipList::Node* it = mCutLines.GetFirst(); it; it=nextIt)
+ for (WaveClipList::compatibility_iterator it = mCutLines.GetFirst(); it; it=nextIt)
{
nextIt = it->GetNext();
WaveClip* clip = it->GetData();
@@ -1253,7 +1387,7 @@ bool WaveClip::FindCutLine(double cutLinePosition,
double* cutlineStart /* = NULL */,
double* cutlineEnd /* = NULL */)
{
- for (WaveClipList::Node* it = mCutLines.GetFirst(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it = mCutLines.GetFirst(); it; it=it->GetNext())
{
WaveClip* cutline = it->GetData();
if (fabs(mOffset + cutline->GetOffset() - cutLinePosition) < 0.0001)
@@ -1271,7 +1405,7 @@ bool WaveClip::FindCutLine(double cutLinePosition,
bool WaveClip::ExpandCutLine(double cutLinePosition)
{
- for (WaveClipList::Node* it = mCutLines.GetFirst(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it = mCutLines.GetFirst(); it; it=it->GetNext())
{
WaveClip* cutline = it->GetData();
if (fabs(mOffset + cutline->GetOffset() - cutLinePosition) < 0.0001)
@@ -1289,7 +1423,7 @@ bool WaveClip::ExpandCutLine(double cutLinePosition)
bool WaveClip::RemoveCutLine(double cutLinePosition)
{
- for (WaveClipList::Node* it = mCutLines.GetFirst(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it = mCutLines.GetFirst(); it; it=it->GetNext())
{
if (fabs(mOffset + it->GetData()->GetOffset() - cutLinePosition) < 0.0001)
{
@@ -1306,7 +1440,7 @@ void WaveClip::RemoveAllCutLines()
{
while (!mCutLines.IsEmpty())
{
- WaveClipList::Node* head = mCutLines.GetFirst();
+ WaveClipList::compatibility_iterator head = mCutLines.GetFirst();
delete head->GetData();
mCutLines.DeleteNode(head);
}
@@ -1314,7 +1448,7 @@ void WaveClip::RemoveAllCutLines()
void WaveClip::OffsetCutLines(double t0, double len)
{
- for (WaveClipList::Node* it = mCutLines.GetFirst(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it = mCutLines.GetFirst(); it; it=it->GetNext())
{
WaveClip* cutLine = it->GetData();
if (mOffset + cutLine->GetOffset() >= t0)
@@ -1325,21 +1459,21 @@ void WaveClip::OffsetCutLines(double t0, double len)
void WaveClip::Lock()
{
GetSequence()->Lock();
- for (WaveClipList::Node* it = mCutLines.GetFirst(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it = mCutLines.GetFirst(); it; it=it->GetNext())
it->GetData()->Lock();
}
void WaveClip::CloseLock()
{
GetSequence()->CloseLock();
- for (WaveClipList::Node* it = mCutLines.GetFirst(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it = mCutLines.GetFirst(); it; it=it->GetNext())
it->GetData()->Lock();
}
void WaveClip::Unlock()
{
GetSequence()->Unlock();
- for (WaveClipList::Node* it = mCutLines.GetFirst(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it = mCutLines.GetFirst(); it; it=it->GetNext())
it->GetData()->Unlock();
}
@@ -1396,7 +1530,8 @@ bool WaveClip::Resample(int rate, ProgressDialog *progress)
if (progress)
{
- error = !progress->Update(pos, numSamples);
+ int updateResult = progress->Update(pos, numSamples);
+ error = (updateResult != eProgressSuccess);
if (error)
{
break;
@@ -1424,6 +1559,10 @@ bool WaveClip::Resample(int rate, ProgressDialog *progress)
mWaveCache = NULL;
}
mWaveCache = new WaveCache(1);
+ // Invalidate the spectrum display cache
+ if (mSpecCache)
+ delete mSpecCache;
+ mSpecCache = new SpecCache(1, 1, false);
}
return !error;
diff --git a/src/WaveClip.h b/src/WaveClip.h
index dfc0a4f..ac79eb7 100644
--- a/src/WaveClip.h
+++ b/src/WaveClip.h
@@ -19,18 +19,19 @@
#include "ondemand/ODTaskThread.h"
#include "xml/XMLTagHandler.h"
+#include "Experimental.h"
+#ifdef EXPERIMENTAL_USE_REALFFTF
+#include "RealFFTf.h"
+#endif
+
#include <wx/gdicmn.h>
#include <wx/longlong.h>
#include <wx/list.h>
#include <wx/msgdlg.h>
-typedef wxLongLong_t sampleCount; /* 64-bit int */
-
class Envelope;
class WaveCache;
class SpecCache;
-class AUDACITY_DLL_API WaveClip;
-class AUDACITY_DLL_API WaveClipList;
class SpecPxCache {
public:
@@ -51,8 +52,10 @@ public:
bool valid;
};
-WX_DECLARE_LIST(WaveClip, WaveClipList);
-WX_DEFINE_ARRAY_PTR(WaveClip*, WaveClipArray);
+class WaveClip;
+
+WX_DECLARE_USER_EXPORTED_LIST(WaveClip, WaveClipList, AUDACITY_DLL_API);
+WX_DEFINE_USER_EXPORTED_ARRAY_PTR(WaveClip*, WaveClipArray, class AUDACITY_DLL_API);
class AUDACITY_DLL_API WaveClip: public XMLTagHandler
{
@@ -220,7 +223,13 @@ protected:
WaveCache *mWaveCache;
ODLock mWaveCacheMutex;
SpecCache *mSpecCache;
-
+#ifdef EXPERIMENTAL_USE_REALFFTF
+ // Variables used for computing the spectrum
+ HFFT hFFT;
+ float *mWindow;
+ int mWindowType;
+ int mWindowSize;
+#endif
samplePtr mAppendBuffer;
sampleCount mAppendBufferLen;
diff --git a/src/WaveTrack.cpp b/src/WaveTrack.cpp
index 9ea1266..98079d4 100644
--- a/src/WaveTrack.cpp
+++ b/src/WaveTrack.cpp
@@ -32,6 +32,7 @@ Track classes.
#include <wx/debug.h>
#include <math.h>
+#include <algorithm>
#include "float_cast.h"
@@ -50,6 +51,8 @@ Track classes.
#include "ondemand/ODManager.h"
+using std::max;
+
WaveTrack* TrackFactory::DuplicateWaveTrack(WaveTrack &orig)
{
return (WaveTrack*)(orig.Duplicate());
@@ -73,11 +76,7 @@ WaveTrack::WaveTrack(DirManager *projDirManager, sampleFormat format, double rat
rate = GetActiveProject()->GetRate();
}
-#ifdef EXPERIMENTAL_SAVE_DEFAULT_VIEW
gPrefs->Read(wxT("/GUI/DefaultViewMode"), &mDisplay, 0L);
-#else //!EXPERIMENTAL_SAVE_DEFAULT_VIEW
- mDisplay = 0; // Move to GUIWaveTrack
-#endif //EXPERIMENTAL_SAVE_DEFAULT_VIEW
mLegacyProjectFileOffset = 0;
@@ -92,23 +91,18 @@ WaveTrack::WaveTrack(DirManager *projDirManager, sampleFormat format, double rat
mDisplayNumLocations = 0;
mDisplayLocations = NULL;
mDisplayNumLocationsAllocated = 0;
- mStickyLabelTrack = NULL;
}
WaveTrack::WaveTrack(WaveTrack &orig):
Track(orig)
{
-#ifdef EXPERIMENTAL_SAVE_DEFAULT_VIEW
gPrefs->Read(wxT("/GUI/DefaultViewMode"), &mDisplay, 0L);
-#else //!EXPERIMENTAL_SAVE_DEFAULT_VIEW
- mDisplay = 0; // Move to GUIWaveTrack
-#endif //EXPERIMENTAL_SAVE_DEFAULT_VIEW
mLegacyProjectFileOffset = 0;
Init(orig);
- for (WaveClipList::Node *node = orig.mClips.GetFirst(); node; node = node->GetNext())
+ for (WaveClipList::compatibility_iterator node = orig.mClips.GetFirst(); node; node = node->GetNext())
mClips.Append(new WaveClip(*node->GetData(), mDirManager));
}
@@ -128,7 +122,6 @@ void WaveTrack::Init(const WaveTrack &orig)
mDisplayNumLocations = 0;
mDisplayLocations = NULL;
mDisplayNumLocationsAllocated = 0;
- mStickyLabelTrack = NULL;
}
void WaveTrack::Merge(const Track &orig)
@@ -142,16 +135,14 @@ WaveTrack::~WaveTrack()
{
//Let the ODManager know this WaveTrack is disappearing.
//Deschedules tasks associated with this track.
-#ifdef EXPERIMENTAL_ONDEMAND
if(ODManager::IsInstanceCreated())
ODManager::Instance()->RemoveWaveTrack(this);
-#endif
- for (WaveClipList::Node* it=GetClipIterator(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=GetClipIterator(); it; it=it->GetNext())
delete it->GetData();
mClips.Clear();
if (mDisplayLocations)
- delete mDisplayLocations;
+ delete [] mDisplayLocations;
}
@@ -164,7 +155,7 @@ void WaveTrack::SetOffset(double o)
{
double delta = o - GetOffset();
- for (WaveClipList::Node* it=GetClipIterator(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=GetClipIterator(); it; it=it->GetNext())
{
WaveClip* clip = it->GetData();
clip->SetOffset(clip->GetOffset() + delta);
@@ -198,7 +189,7 @@ double WaveTrack::GetRate() const
void WaveTrack::SetRate(double newRate)
{
mRate = (int) newRate;
- for (WaveClipList::Node* it=GetClipIterator(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=GetClipIterator(); it; it=it->GetNext())
it->GetData()->SetRate((int) newRate);
}
@@ -245,7 +236,7 @@ float WaveTrack::GetChannelGain(int channel)
bool WaveTrack::ConvertToSampleFormat(sampleFormat format)
{
- for (WaveClipList::Node* it=GetClipIterator(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=GetClipIterator(); it; it=it->GetNext())
it->GetData()->ConvertToSampleFormat(format);
mFormat = format;
@@ -254,7 +245,7 @@ bool WaveTrack::ConvertToSampleFormat(sampleFormat format)
bool WaveTrack::IsEmpty(double t0, double t1)
{
- WaveClipList::Node* it;
+ WaveClipList::compatibility_iterator it;
//printf("Searching for overlap in %.6f...%.6f\n", t0, t1);
for (it=GetClipIterator(); it; it=it->GetNext())
@@ -321,7 +312,7 @@ bool WaveTrack::Trim (double t0, double t1)
// the left selection t0.
double firstGreaterOffset = -1;
- WaveClipList::Node * it;
+ WaveClipList::compatibility_iterator it;
for(it = GetClipIterator(); it; it = it->GetNext())
{
@@ -382,7 +373,7 @@ bool WaveTrack::Copy(double t0, double t1, Track **dest)
newTrack->Init(*this);
- WaveClipList::Node* it;
+ WaveClipList::compatibility_iterator it;
for (it=GetClipIterator(); it; it=it->GetNext())
{
@@ -441,225 +432,206 @@ bool WaveTrack::Copy(double t0, double t1, Track **dest)
return true;
}
-#ifdef EXPERIMENTAL_FULL_LINKING
bool WaveTrack::Paste(double t0, Track *src)
{
+ return Paste(t0, src, NULL, false);
+}
+
+bool WaveTrack::Paste(double t0, Track *src, TrackList* tracks, bool relativeLabels)
+{
AudacityProject *p = GetActiveProject();
- if( p && p->IsSticky())
- return HandleGroupPaste(t0, src);
+ if( p && p->IsSticky() && GetNode() )
+ return HandleGroupPaste(t0, src, tracks, relativeLabels);
else
return HandlePaste(t0, src);
}
-#else
-bool WaveTrack::Paste(double t0, Track *src)
+bool WaveTrack::Clear(double t0, double t1)
{
- bool editClipCanMove = true;
- gPrefs->Read(wxT("/GUI/EditClipCanMove"), &editClipCanMove);
-
- //printf("paste: entering WaveTrack::Paste\n");
-
- // JKC Added...
- if( src == NULL )
- return false;
+ return Clear(t0, t1, NULL);
+}
- if (src->GetKind() != Track::Wave)
- return false;
-
- //printf("paste: we have a wave track\n");
+bool WaveTrack::Clear(double t0, double t1, TrackList* tracks)
+{
+ bool addCutLines = false;
+ bool split = false;
+ AudacityProject *p = GetActiveProject();
+ if( p && p->IsSticky() && GetNode() )
+ return HandleGroupClear(t0, t1, addCutLines, split, tracks);
+ else
+ return HandleClear(t0, t1, addCutLines, split);
+}
- WaveTrack* other = (WaveTrack*)src;
-
- //
- // Pasting is a bit complicated, because with the existence of multiclip mode,
- // we must guess the behaviour the user wants.
- //
- // Currently, two modes are implemented:
- //
- // - If a single clip should be pasted, and it should be pasted inside another
- // clip, no new clips are generated. The audio is simply inserted.
- // This resembles the old (pre-multiclip support) behaviour. However, if
- // the clip is pasted outside of any clip, a new clip is generated. This is
- // the only behaviour which is different to what was done before, but it
- // shouldn't confuse users too much.
- //
- // - If multiple clips should be pasted, these are always pasted as single
- // clips, and the current clip is splitted, when necessary. This may seem
- // strange at first, but it probably is better than trying to auto-merge
- // anything. The user can still merge the clips by hand (which should be
- // a simple command reachable by a hotkey or single mouse click).
- //
+bool WaveTrack::ClearAndAddCutLine(double t0, double t1)
+{
+ bool addCutLines = true;
+ bool split = false;
+ AudacityProject *p = GetActiveProject();
+ if( p && p->IsSticky() )
+ return HandleGroupClear(t0, t1, addCutLines, split);
+ else
+ return HandleClear(t0, t1, addCutLines, split);
+}
- if (other->GetNumClips() == 0)
- return false;
+//
+// ClearAndPaste() is a specialized version of HandleClear()
+// followed by HandlePaste() and is used mostly by effects that
+// can't replace track data directly using Get()/Set().
+//
+// HandleClear() removes any cut/split lines lines with the
+// cleared range, but, in most cases, effects want to preserve
+// the existing cut/split lines, so they are saved before the
+// HandleClear()/HandlePaste() and restored after.
+//
+// If the pasted track overlaps two or more clips, then it will
+// be pasted with visible split lines. Normally, effects do not
+// want these extra lines, so they may be merged out.
+//
+bool WaveTrack::ClearAndPaste(double t0, double t1, Track *src, bool preserve,
+ bool merge, TrackList* tracks, bool relativeLabels)
+{
+ WaveClipList::compatibility_iterator ic;
+ WaveClipList::compatibility_iterator it;
+ double dur = wxMin(t1 - t0, src->GetEndTime());
+ wxArrayDouble splits;
+ WaveClipArray cuts;
+ WaveClip *clip;
+
+ // If duration is 0, then it's just a plain paste
+ if (dur == 0.0) {
+ return Paste(t0, src, tracks, relativeLabels);
+ }
- //printf("paste: we have at least one clip\n");
+ // Align to a sample
+ t0 = LongSamplesToTime(TimeToLongSamples(t0));
+ t1 = LongSamplesToTime(TimeToLongSamples(t1));
- double insertDuration = other->GetEndTime();
- WaveClipList::Node* it;
+ // Save the cut/split lines whether preserving or not since merging
+ // needs to know if a clip boundary is being crossed since HandlePaste()
+ // will add split lines around the pasted clip if so.
+ for (ic = GetClipIterator(); ic; ic = ic->GetNext()) {
+ double st;
- #ifdef EXPERIMENTAL_STICKY_TRACKS
- if (mStickyLabelTrack) mStickyLabelTrack->ShiftLabelsOnInsert(insertDuration, t0);
- #endif
- #ifdef EXPERIMENTAL_LABEL_LINKING
- AudacityProject *p = GetActiveProject();
- if( p && p->IsSticky()){
- TrackListIterator iter(p->GetTracks());
- Track *t = iter.First();
-
- while (t && t!=this) t = iter.Next(true);
- while (t && t->GetKind()==Track::Wave) t = iter.Next();
+ clip = ic->GetData();
+ st = LongSamplesToTime(TimeToLongSamples(clip->GetStartTime()));
- while (t && t->GetKind()==Track::Label){
- //printf("t: %x\n", t);
- ((LabelTrack *)t)->ShiftLabelsOnInsert(insertDuration, t0);
- t = iter.Next();
+ // Remember split line
+ if (st >= t0 && st <= t1) {
+ splits.Add(st);
}
- }
- #endif
- //printf("Check if we need to make room for the pasted data\n");
-
- // Make room for the pasted data, unless the space being pasted in is empty of
- // any clips
- if (!IsEmpty(t0, t0+insertDuration-1.0/mRate) && editClipCanMove) {
- if (other->GetNumClips() > 1) {
- // We need to insert multiple clips, so split the current clip and
- // move everything to the right, then try to paste again
- Track *tmp = NULL;
- Cut(t0, GetEndTime()+1.0/mRate, &tmp);
- Paste(t0 + insertDuration, tmp);
- delete tmp;
- } else
- {
- // We only need to insert one single clip, so just move all clips
- // to the right of the paste point out of the way
- for (it=GetClipIterator(); it; it=it->GetNext())
- {
- WaveClip* clip = it->GetData();
- if (clip->GetStartTime() > t0-(1.0/mRate))
- clip->Offset(insertDuration);
+
+ // Search for cut lines
+ WaveClipList* cutlines = clip->GetCutLines();
+ it = cutlines->GetFirst();
+ while (it) {
+ WaveClipList::compatibility_iterator in = it->GetNext();
+ WaveClip *cut = it->GetData();
+ double cs = LongSamplesToTime(TimeToLongSamples(clip->GetOffset() +
+ cut->GetOffset()));
+
+ // Remember cut point
+ if (cs >= t0 && cs <= t1) {
+ // Remove cut point from this clips cutlines array, otherwise
+ // it will not be deleted when HandleClear() is called.
+ cutlines->DeleteNode(it);
+
+ // Remember the absolute offset and add to our cuts array.
+ cut->SetOffset(cs);
+ cuts.Add(cut);
}
+
+ it = in;
}
}
- if (other->GetNumClips() == 1)
- {
- // Single clip mode
- // printf("paste: checking for single clip mode!\n");
-
- WaveClip *insideClip = NULL;
+ // Now, clear the selection
+ if (HandleClear(t0, t1, false, false)) {
+ // And paste in the new data
+ if (Paste(t0, src, tracks, relativeLabels)) {
+ unsigned int i;
- for (it=GetClipIterator(); it; it=it->GetNext())
- {
- WaveClip *clip = it->GetData();
+ // First, merge the new clip(s) in with the existing clips
+ if (merge && splits.GetCount() > 0)
+ {
+ WaveClipArray clips;
- // The 1.0/mRate is the time for one sample - kind of a fudge factor,
- // because an overlap of less than a sample should not trigger
- // traditional behaviour.
+ // Now t1 represents the absolute end of the pasted data.
+ t1 = t0 + src->GetEndTime();
- if (editClipCanMove)
- {
- if (t0+src->GetEndTime()-1.0/mRate > clip->GetStartTime() &&
- t0 < clip->GetEndTime() - 1.0/mRate)
- {
- //printf("t0=%.6f: inside clip is %.6f ... %.6f\n",
- // t0, clip->GetStartTime(), clip->GetEndTime());
- insideClip = clip;
- break;
- }
- } else
- {
- if (t0 >= clip->GetStartTime() && t0 < clip->GetEndTime())
- {
- insideClip = clip;
- break;
- }
- }
- }
+ // Get a sorted array of the clips
+ FillSortedClipArray(clips);
- if (insideClip)
- {
- // Exhibit traditional behaviour
- //printf("paste: traditional behaviour\n");
- if (!editClipCanMove)
- {
- // We did not move other clips out of the way already, so
- // check if we can paste without having to move other clips
- for (it=GetClipIterator(); it; it=it->GetNext())
- {
- WaveClip *clip = it->GetData();
+ // Scan the sorted clips for the first clip whose start time
+ // exceeds the pasted regions end time.
+ for (i = 0; i < clips.GetCount(); i++) {
+ clip = clips[i];
- if (clip->GetStartTime() > insideClip->GetStartTime() &&
- insideClip->GetEndTime() + insertDuration >
- clip->GetStartTime())
- {
- wxMessageBox(
- _("There is not enough room available to paste the selection"),
- _("Error"), wxICON_STOP);
- return false;
+ // Merge this clip and the previous clip if the end time
+ // falls within it and this isn't the first clip in the track.
+ if (fabs(t1 - clip->GetStartTime()) < WAVETRACK_MERGE_POINT_TOLERANCE) {
+ if (i > 0) {
+ MergeClips(GetClipIndex(clips[i - 1]), GetClipIndex(clip));
+ }
+ break;
}
}
- }
-
- return insideClip->Paste(t0, other->GetClipByIndex(0));
- }
- // Just fall through and exhibit new behaviour
- }
+ // Refill the array since clips have changed.
+ FillSortedClipArray(clips);
- // Insert new clips
- //printf("paste: multi clip mode!\n");
+ // Scan the sorted clips to look for the start of the pasted
+ // region.
+ for (i = 0; i < clips.GetCount(); i++) {
+ clip = clips[i];
- if (!editClipCanMove && !IsEmpty(t0, t0+insertDuration-1.0/mRate))
- {
- wxMessageBox(
- _("There is not enough room available to paste the selection"),
- _("Error"), wxICON_STOP);
- return false;
- }
+ // Merge this clip and the next clip if the start time
+ // falls within it and this isn't the last clip in the track.
+ if (fabs(t0 - clip->GetEndTime()) < WAVETRACK_MERGE_POINT_TOLERANCE) {
+ if (i < clips.GetCount() - 1) {
+ MergeClips(GetClipIndex(clip), GetClipIndex(clips[i + 1]));
+ }
+ break;
+ }
+ }
+ }
- for (it=other->GetClipIterator(); it; it=it->GetNext())
- {
- WaveClip* clip = it->GetData();
+ // Restore cut/split lines
+ if (preserve) {
- WaveClip* newClip = new WaveClip(*clip, mDirManager);
- newClip->Resample(mRate);
- newClip->Offset(t0);
- newClip->MarkChanged();
- mClips.Append(newClip);
- }
- return true;
-}
-#endif
+ // Restore the split lines by simply resplitting at the saved time.
+ for (i = 0; i < splits.GetCount(); i++) {
+ SplitAt(splits[i]);
+ }
-bool WaveTrack::Clear(double t0, double t1)
-{
- bool addCutLines = false;
- bool split = false;
-#ifdef EXPERIMENTAL_FULL_LINKING
- AudacityProject *p = GetActiveProject();
- if( p && p->IsSticky())
- return HandleGroupClear(t0, t1, addCutLines, split);
- else
- return HandleClear(t0, t1, addCutLines, split);
-#else
- return HandleClear(t0, t1, addCutLines, split);
-#endif
-}
+ // Restore the saved cut lines
+ for (ic = GetClipIterator(); ic; ic = ic->GetNext()) {
+ double st;
+ double et;
+
+ clip = ic->GetData();
+ st = clip->GetStartTime();
+ et = clip->GetEndTime();
+
+ // Scan the cuts for any that live within this clip
+ for (i = 0; i < cuts.GetCount(); i++) {
+ WaveClip *cut = cuts[i];
+ double cs = cut->GetOffset();
+
+ // Offset the cut from the start of the clip and add it to
+ // this clips cutlines.
+ if (cs >= st && cs <= et) {
+ cut->SetOffset(cs - st);
+ clip->GetCutLines()->Append(cut);
+ cuts.RemoveAt(i);
+ i--;
+ }
+ }
+ }
+ }
+ }
+ }
-bool WaveTrack::ClearAndAddCutLine(double t0, double t1)
-{
- bool addCutLines = true;
- bool split = false;
-#ifdef EXPERIMENTAL_FULL_LINKING
- AudacityProject *p = GetActiveProject();
- if( p && p->IsSticky() )
- return HandleGroupClear(t0, t1, addCutLines, split);
- else
- return HandleClear(t0, t1, addCutLines, split);
-#else
- return HandleClear(t0, t1, addCutLines, split);
-#endif
+ return true;
}
bool WaveTrack::SplitDelete(double t0, double t1)
@@ -669,44 +641,33 @@ bool WaveTrack::SplitDelete(double t0, double t1)
return HandleClear(t0, t1, addCutLines, split);
}
-bool WaveTrack::HandleGroupClear(double t0, double t1, bool addCutLines, bool split)
+bool WaveTrack::HandleGroupClear(double t0, double t1, bool addCutLines, bool split, TrackList* tracks)
{
+ // get tracks
AudacityProject *p = GetActiveProject();
- if(p){
- TrackListIterator iter(p->GetTracks());
-
- int editGroup = 0;
- Track *t=iter.First();
- Track *n=t;
-
- while (t && t!= this){//find edit group number
- if (t->GetSelected()) return true;//multiple tracks have been selected, we only want to handle one
- n=iter.Next(true);//to skip handling the second channel of stereo
- if (n && n->GetKind()==Track::Wave && t->GetKind()==Track::Label)
- editGroup++;
- t=n;
- }
- if (!t) return true;//we didnt find the track because it's stereo
-
- t=iter.First();
- for (int i=0; i<editGroup; i++){//go to first in edit group
- while (t && t->GetKind()==Track::Wave) t=iter.Next();
- while (t && t->GetKind()==Track::Label) t=iter.Next();
- }
-
- while (t && t->GetKind()==Track::Wave){
- //printf ("t(w): %x\n", t);
- if ( !( ((WaveTrack *)t)->HandleClear(t0, t1, addCutLines, split)) ) return false;
- t=iter.Next();
+
+ if (p) {
+ if (!tracks) tracks = p->GetTracks();
+ }
+ else return false;
+
+ TrackGroupIterator it(tracks);
+ Track *t = it.First(this);
+ if (t == NULL)
+ // the present track is in a project with groups but doesn't belong to any of them
+ return HandleClear(t0, t1, addCutLines, split);
+
+ for( ; t; t = it.Next() ) {
+ if (t->GetKind() == Track::Wave) {
+ if ( !( ( (WaveTrack *) t)->HandleClear(t0, t1, addCutLines, split) ) )
+ return false;
}
-
- while (t && t->GetKind()==Track::Label && !split){
- //printf ("t(l): %x\n", t);
- ((LabelTrack *)t)->ShiftLabelsOnClear(t0, t1);
- t=iter.Next();
+ else if (t->GetKind() == Track::Label) {
+ if (!split)
+ ( (LabelTrack *)t )->ShiftLabelsOnClear(t0, t1);
}
- }else return false;
-
+ }
+
return true;
}
@@ -716,32 +677,10 @@ bool WaveTrack::HandleClear(double t0, double t1,
if (t1 < t0)
return false;
-#ifdef EXPERIMENTAL_STICKY_TRACKS
- if (!split){
- if (mStickyLabelTrack) mStickyLabelTrack->ShiftLabelsOnClear(t0, t1);
- }
-#endif
-#ifdef EXPERIMENTAL_LABEL_LINKING
- AudacityProject *p = GetActiveProject();
- if( p && p->IsSticky() && !split){
- TrackListIterator iter(p->GetTracks());
- Track *t = iter.First();
-
- while (t && t!=this) t = iter.Next(true);
- while (t && t->GetKind()==Track::Wave) t = iter.Next();
-
- while (t && t->GetKind()==Track::Label){
- //printf("t: %x\n", t);
- ((LabelTrack *)t)->ShiftLabelsOnClear(t0, t1);
- t = iter.Next();
- }
- }
-#endif
-
bool editClipCanMove = true;
gPrefs->Read(wxT("/GUI/EditClipCanMove"), &editClipCanMove);
- WaveClipList::Node* it;
+ WaveClipList::compatibility_iterator it;
WaveClipList clipsToDelete;
WaveClipList clipsToAdd;
@@ -817,21 +756,22 @@ bool WaveTrack::HandleClear(double t0, double t1,
* region being cleared. If one of the ends of the clip is inside
* the region, then one of the glue points will be redundant. */
// clip->Clear keeps points < t0 and >= t1 via Envelope::CollapseRegion
- double val;
- if (t0 > clip->GetStartTime())
- { // start of clip is before start of region to clear
- val = clip->GetEnvelope()->GetValue(t0);
- clip->GetEnvelope()->Insert(t0 - clip->GetOffset() - 1.0/clip->GetRate(), val);
- }
-
- if (t1 < clip->GetEndTime())
- { // end of clip is after end of region
- val = clip->GetEnvelope()->GetValue(t1);
- clip->GetEnvelope()->Insert(t1 - clip->GetOffset(), val);
- }
-
+ if (clip->GetEnvelope()->GetNumberOfPoints() > 0) { // don't insert env pts if none exist
+ double val;
+ if (t0 > clip->GetStartTime())
+ { // start of clip is before start of region to clear
+ val = clip->GetEnvelope()->GetValue(t0);
+ clip->GetEnvelope()->Insert(t0 - clip->GetOffset() - 1.0/clip->GetRate(), val);
+ }
+ if (t1 < clip->GetEndTime())
+ { // end of clip is after end of region
+ val = clip->GetEnvelope()->GetValue(t1);
+ clip->GetEnvelope()->Insert(t1 - clip->GetOffset(), val);
+ }
+ }
if (!clip->Clear(t0,t1))
return false;
+ clip->GetEnvelope()->RemoveUnneededPoints(t0);
}
}
} else
@@ -858,57 +798,62 @@ bool WaveTrack::HandleClear(double t0, double t1,
return true;
}
-bool WaveTrack::HandleGroupPaste(double t0, Track *src)
+bool WaveTrack::HandleGroupPaste(double t0, Track *src, TrackList* tracks, bool relativeLabels)
{
+ // get tracks
AudacityProject *p = GetActiveProject();
- if(p){
- double length = src->GetEndTime();
-
- TrackListIterator iter(p->GetTracks());
-
- int editGroup = 0;
- Track *t=iter.First();
- Track *n=t;
-
- while (t && t!= this){//find edit group number
- n=iter.Next();
- //we only add silence when we're on the first selected track
- //to avoid adding it multiple times, though we paste in still
- if (t->GetSelected()) return HandlePaste(t0, src);
- if (n && n->GetKind()==Track::Wave && t->GetKind()==Track::Label)
- editGroup++;
- t=n;
- }
-
- t=iter.First();
- for (int i=0; i<editGroup; i++){//go to first in edit group
- while (t && t->GetKind()==Track::Wave) t=iter.Next();
- while (t && t->GetKind()==Track::Label) t=iter.Next();
- }
-
- while (t && t->GetKind()==Track::Wave){
- if (t==this){//paste in the track
+
+ if (p) {
+ if (!tracks) tracks = p->GetTracks();
+ }
+ else return false;
+
+ double length = src->GetEndTime();
+ ViewInfo *info = &p->mViewInfo;
+ double sel_len = max(info->sel1 - max(info->sel0, t0), 0.0);
+
+ TrackGroupIterator it(tracks);
+ Track *t = it.First(this);
+ if (t == NULL)
+ // the present track is in a project with groups but doesn't belong to any of them
+ return HandlePaste(t0, src);
+
+ for( ; t; t = it.Next() ) {
+ if (t->GetKind() == Track::Wave) {
+ if (t==this) {
+ //paste in the track
if ( !( ((WaveTrack *)t)->HandlePaste(t0, src)) ) return false;
- if (t->GetLinked()) t=iter.Next();
- }else{//insert silence
- if (! (t->GetSelected()) ){
- TrackFactory *factory = p->GetTrackFactory();
- WaveTrack *tmp = factory->NewWaveTrack( ((WaveTrack*)t)->GetSampleFormat(), ((WaveTrack*)t)->GetRate());
- tmp->InsertSilence(0.0, length);
- tmp->Flush();
- if ( !( ((WaveTrack *)t)->HandlePaste(t0, tmp)) ) return false;
+ if (t->GetLinked()) t=it.Next();
+ }
+ else {
+ if (! (t->GetSelected()) ) {
+ if ( sel_len > length )
+ // if selection is bigger than the content to add then we need to clear the extra length in the group tracks
+ ((WaveTrack*)t)->HandleClear(t0+length, t0+sel_len, false, false);
+ else if (sel_len < length) {
+ // if selection is smaller than the content to add then we need to add extra silence in the group tracks
+ TrackFactory *factory = p->GetTrackFactory();
+ WaveTrack *tmp = factory->NewWaveTrack( ((WaveTrack*)t)->GetSampleFormat(), ((WaveTrack*)t)->GetRate());
+ tmp->InsertSilence(0.0, length-sel_len);
+ tmp->Flush();
+ if ( !( ((WaveTrack *)t)->HandlePaste(t0+sel_len, tmp)) ) return false;
+ }
}
}
- t=iter.Next();
}
-
- while (t && t->GetKind()==Track::Label){
- //printf ("t(l)(p): %x\n", t);
- ((LabelTrack *)t)->ShiftLabelsOnInsert(length, t0);
- t=iter.Next();
+ else if (t->GetKind() == Track::Label) {
+ LabelTrack *lt = (LabelTrack *)t;
+ if (relativeLabels && (sel_len != 0.0))
+ lt->ScaleLabels(info->sel0, info->sel1, length/sel_len);
+ else {
+ if ((length - sel_len) > 0.0)
+ lt->ShiftLabelsOnInsert(length-sel_len, t0);
+ else if ((length - sel_len) < 0.0)
+ lt->ShiftLabelsOnClear(info->sel0+length, info->sel1);
+ }
}
- }else return false;
-
+ }
+
return true;
}
@@ -956,27 +901,8 @@ bool WaveTrack::HandlePaste(double t0, Track *src)
//printf("paste: we have at least one clip\n");
double insertDuration = other->GetEndTime();
- WaveClipList::Node* it;
-
-#ifdef EXPERIMENTAL_STICKY_TRACKS
- if (mStickyLabelTrack) mStickyLabelTrack->ShiftLabelsOnInsert(insertDuration, t0);
-#endif
-#ifdef EXPERIMENTAL_LABEL_LINKING
- AudacityProject *p = GetActiveProject();
- if( p && p->IsSticky()){
- TrackListIterator iter(p->GetTracks());
- Track *t = iter.First();
-
- while (t && t!=this) t = iter.Next(true);
- while (t && t->GetKind()==Track::Wave) t = iter.Next();
+ WaveClipList::compatibility_iterator it;
- while (t && t->GetKind()==Track::Label){
- //printf("t: %x\n", t);
- ((LabelTrack *)t)->ShiftLabelsOnInsert(insertDuration, t0);
- t = iter.Next();
- }
- }
-#endif
//printf("Check if we need to make room for the pasted data\n");
// Make room for the pasted data, unless the space being pasted in is empty of
@@ -1100,7 +1026,7 @@ bool WaveTrack::Silence(double t0, double t1)
sampleCount len = (sampleCount)floor(t1 * mRate + 0.5) - start;
bool result = true;
- for (WaveClipList::Node* it=GetClipIterator(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=GetClipIterator(); it; it=it->GetNext())
{
WaveClip *clip = it->GetData();
@@ -1146,7 +1072,7 @@ bool WaveTrack::InsertSilence(double t, double len)
return clip->InsertSilence(0, len);
}
- for (WaveClipList::Node* it=GetClipIterator(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=GetClipIterator(); it; it=it->GetNext())
{
WaveClip *clip = it->GetData();
if (clip->GetStartTime() > t)
@@ -1171,7 +1097,7 @@ bool WaveTrack::Disjoin(double t0, double t1)
wxBusyCursor busy;
- for( WaveClipList::Node *it = GetClipIterator(); it; it = it->GetNext() )
+ for( WaveClipList::compatibility_iterator it = GetClipIterator(); it; it = it->GetNext() )
{
WaveClip *clip = it->GetData();
@@ -1249,7 +1175,7 @@ bool WaveTrack::Join(double t0, double t1)
{
// Merge all WaveClips overlapping selection into one
- WaveClipList::Node* it;
+ WaveClipList::compatibility_iterator it;
WaveClipList clipsToDelete;
WaveClip *newClip;
@@ -1320,7 +1246,7 @@ sampleCount WaveTrack::GetBestBlockSize(sampleCount s)
{
sampleCount bestBlockSize = GetMaxBlockSize();
- for (WaveClipList::Node* it=GetClipIterator(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=GetClipIterator(); it; it=it->GetNext())
{
WaveClip* clip = it->GetData();
sampleCount startSample = (sampleCount)floor(clip->GetStartTime()*mRate + 0.5);
@@ -1338,7 +1264,7 @@ sampleCount WaveTrack::GetBestBlockSize(sampleCount s)
sampleCount WaveTrack::GetMaxBlockSize()
{
int maxblocksize = 0;
- for (WaveClipList::Node* it=GetClipIterator(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=GetClipIterator(); it; it=it->GetNext())
{
WaveClip* clip = it->GetData();
if (clip->GetSequence()->GetMaxBlockSize() > maxblocksize)
@@ -1400,6 +1326,18 @@ bool WaveTrack::HandleXMLTag(const wxChar *tag, const wxChar **attrs)
// track is created.
mLegacyProjectFileOffset = dblValue;
}
+ else if (!wxStrcmp(attr, wxT("mute")) &&
+ XMLValueChecker::IsGoodInt(strValue) && strValue.ToLong(&nValue))
+ mMute = (nValue != 0);
+ else if (!wxStrcmp(attr, wxT("solo")) &&
+ XMLValueChecker::IsGoodInt(strValue) && strValue.ToLong(&nValue))
+ mSolo = (nValue != 0);
+ else if (!wxStrcmp(attr, wxT("height")) &&
+ XMLValueChecker::IsGoodInt(strValue) && strValue.ToLong(&nValue))
+ mHeight = nValue;
+ else if (!wxStrcmp(attr, wxT("minimized")) &&
+ XMLValueChecker::IsGoodInt(strValue) && strValue.ToLong(&nValue))
+ mMinimized = (nValue != 0);
else if (!wxStrcmp(attr, wxT("gain")) &&
XMLValueChecker::IsGoodString(strValue) &&
Internat::CompatibleToDouble(strValue, &dblValue))
@@ -1420,7 +1358,7 @@ bool WaveTrack::HandleXMLTag(const wxChar *tag, const wxChar **attrs)
}
else if (!wxStrcmp(attr, wxT("linked")) &&
XMLValueChecker::IsGoodInt(strValue) && strValue.ToLong(&nValue))
- mLinked = (nValue != 0);
+ SetLinked(nValue != 0);
} // while
return true;
@@ -1479,11 +1417,15 @@ void WaveTrack::WriteXML(XMLWriter &xmlFile)
xmlFile.WriteAttr(wxT("channel"), mChannel);
xmlFile.WriteAttr(wxT("linked"), mLinked);
xmlFile.WriteAttr(wxT("offset"), mOffset, 8);
+ xmlFile.WriteAttr(wxT("mute"), mMute);
+ xmlFile.WriteAttr(wxT("solo"), mSolo);
+ xmlFile.WriteAttr(wxT("height"), this->GetActualHeight());
+ xmlFile.WriteAttr(wxT("minimized"), this->GetMinimized());
xmlFile.WriteAttr(wxT("rate"), mRate);
xmlFile.WriteAttr(wxT("gain"), (double)mGain);
xmlFile.WriteAttr(wxT("pan"), (double)mPan);
- for (WaveClipList::Node* it=GetClipIterator(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=GetClipIterator(); it; it=it->GetNext())
{
it->GetData()->WriteXML(xmlFile);
}
@@ -1493,7 +1435,7 @@ void WaveTrack::WriteXML(XMLWriter &xmlFile)
bool WaveTrack::GetErrorOpening()
{
- for (WaveClipList::Node* it=GetClipIterator(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=GetClipIterator(); it; it=it->GetNext())
if (it->GetData()->GetSequence()->GetErrorOpening())
return true;
@@ -1502,7 +1444,7 @@ bool WaveTrack::GetErrorOpening()
bool WaveTrack::Lock()
{
- for (WaveClipList::Node* it=GetClipIterator(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=GetClipIterator(); it; it=it->GetNext())
it->GetData()->Lock();
return true;
@@ -1510,7 +1452,7 @@ bool WaveTrack::Lock()
bool WaveTrack::CloseLock()
{
- for (WaveClipList::Node* it=GetClipIterator(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=GetClipIterator(); it; it=it->GetNext())
it->GetData()->CloseLock();
return true;
@@ -1519,13 +1461,13 @@ bool WaveTrack::CloseLock()
bool WaveTrack::Unlock()
{
- for (WaveClipList::Node* it=GetClipIterator(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=GetClipIterator(); it; it=it->GetNext())
it->GetData()->Unlock();
return true;
}
-sampleCount WaveTrack::TimeToLongSamples(double t0)
+AUDACITY_DLL_API sampleCount WaveTrack::TimeToLongSamples(double t0) const
{
return (sampleCount)floor(t0 * mRate + 0.5);
}
@@ -1543,7 +1485,7 @@ double WaveTrack::GetStartTime()
if (mClips.IsEmpty())
return 0;
- for (WaveClipList::Node* it=GetClipIterator(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=GetClipIterator(); it; it=it->GetNext())
if (!found)
{
found = true;
@@ -1562,7 +1504,7 @@ double WaveTrack::GetEndTime()
if (mClips.IsEmpty())
return 0;
- for (WaveClipList::Node* it=GetClipIterator(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=GetClipIterator(); it; it=it->GetNext())
if (!found)
{
found = true;
@@ -1592,7 +1534,7 @@ bool WaveTrack::GetMinMax(float *min, float *max,
bool result = true;
- for (WaveClipList::Node* it=GetClipIterator(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=GetClipIterator(); it; it=it->GetNext())
{
WaveClip* clip = it->GetData();
@@ -1627,7 +1569,7 @@ bool WaveTrack::GetRMS(float *rms, double t0, double t1)
double sumsq = 0.0;
sampleCount length = 0;
- for (WaveClipList::Node* it=GetClipIterator(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=GetClipIterator(); it; it=it->GetNext())
{
WaveClip* clip = it->GetData();
@@ -1655,7 +1597,7 @@ bool WaveTrack::Get(samplePtr buffer, sampleFormat format,
// Simple optimization: When this buffer is completely contained within one clip,
// don't clear anything (because we never won't have to). Otherwise, just clear
// everything to be on the safe side.
- WaveClipList::Node* it;
+ WaveClipList::compatibility_iterator it;
bool doClear = true;
for (it=GetClipIterator(); it; it=it->GetNext())
@@ -1709,7 +1651,7 @@ bool WaveTrack::Set(samplePtr buffer, sampleFormat format,
{
bool result = true;
- for (WaveClipList::Node* it=GetClipIterator(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=GetClipIterator(); it; it=it->GetNext())
{
WaveClip *clip = it->GetData();
@@ -1752,7 +1694,7 @@ void WaveTrack::GetEnvelopeValues(double *buffer, int bufferLen,
double startTime = t0;
double endTime = t0+tstep*bufferLen;
- for (WaveClipList::Node* it=GetClipIterator(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=GetClipIterator(); it; it=it->GetNext())
{
WaveClip *clip = it->GetData();
@@ -1782,7 +1724,7 @@ void WaveTrack::GetEnvelopeValues(double *buffer, int bufferLen,
WaveClip* WaveTrack::GetClipAtX(int xcoord)
{
- for (WaveClipList::Node* it=GetClipIterator(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=GetClipIterator(); it; it=it->GetNext())
{
wxRect r;
it->GetData()->GetDisplayRect(&r);
@@ -1805,7 +1747,7 @@ Envelope* WaveTrack::GetEnvelopeAtX(int xcoord)
// Search for any active DragPoint on the current track
Envelope* WaveTrack::GetActiveEnvelope(void)
{
- for (WaveClipList::Node* it=GetClipIterator(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=GetClipIterator(); it; it=it->GetNext())
{
WaveClip* clip = it->GetData();
Envelope* env = clip->GetEnvelope() ;
@@ -1862,7 +1804,7 @@ int WaveTrack::GetNumClips() const
void WaveTrack::MoveClipToTrack(int clipIndex, WaveTrack* dest)
{
- WaveClipList::Node* node = mClips.Item(clipIndex);
+ WaveClipList::compatibility_iterator node = mClips.Item(clipIndex);
WaveClip* clip = node->GetData();
mClips.DeleteNode(node);
dest->mClips.Append(clip);
@@ -1870,7 +1812,7 @@ void WaveTrack::MoveClipToTrack(int clipIndex, WaveTrack* dest)
void WaveTrack::MoveClipToTrack(WaveClip *clip, WaveTrack* dest)
{
- for (WaveClipList::Node* it=GetClipIterator(); it; it=it->GetNext()) {
+ for (WaveClipList::compatibility_iterator it=GetClipIterator(); it; it=it->GetNext()) {
if (it->GetData() == clip) {
WaveClip* clip = it->GetData();
mClips.DeleteNode(it);
@@ -1886,7 +1828,7 @@ bool WaveTrack::CanOffsetClip(WaveClip* clip, double amount,
if (allowedAmount)
*allowedAmount = amount;
- for (WaveClipList::Node* it=GetClipIterator(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=GetClipIterator(); it; it=it->GetNext())
{
WaveClip* c = it->GetData();
if (c != clip && c->GetStartTime() < clip->GetEndTime()+amount &&
@@ -1930,7 +1872,7 @@ bool WaveTrack::CanOffsetClip(WaveClip* clip, double amount,
bool WaveTrack::CanInsertClip(WaveClip* clip)
{
- for (WaveClipList::Node* it=GetClipIterator(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=GetClipIterator(); it; it=it->GetNext())
{
WaveClip* c = it->GetData();
if (c->GetStartTime() < clip->GetEndTime() && c->GetEndTime() > clip->GetStartTime())
@@ -1950,7 +1892,7 @@ bool WaveTrack::Split( double t0, double t1 )
bool WaveTrack::SplitAt(double t)
{
- for (WaveClipList::Node* it=GetClipIterator(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=GetClipIterator(); it; it=it->GetNext())
{
WaveClip* c = it->GetData();
if (t > c->GetStartTime() && t < c->GetEndTime())
@@ -2024,7 +1966,7 @@ void WaveTrack::UpdateLocationsCache()
WaveClip* clip = clips.Item(i);
WaveClipList* cutlines = clip->GetCutLines();
- for (WaveClipList::Node* it = cutlines->GetFirst(); it;
+ for (WaveClipList::compatibility_iterator it = cutlines->GetFirst(); it;
it = it->GetNext())
{
// Add cut line expander point
@@ -2062,14 +2004,14 @@ bool WaveTrack::ExpandCutLine(double cutLinePosition, double* cutlineStart,
gPrefs->Read(wxT("/GUI/EditClipCanMove"), &editClipCanMove);
// Find clip which contains this cut line
- for (WaveClipList::Node* it=GetClipIterator(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=GetClipIterator(); it; it=it->GetNext())
{
WaveClip* clip = it->GetData();
double start = 0, end = 0;
if (clip->FindCutLine(cutLinePosition, &start, &end))
{
- WaveClipList::Node* it2;
+ WaveClipList::compatibility_iterator it2;
if (!editClipCanMove)
{
@@ -2120,7 +2062,7 @@ bool WaveTrack::ExpandCutLine(double cutLinePosition, double* cutlineStart,
bool WaveTrack::RemoveCutLine(double cutLinePosition)
{
- for (WaveClipList::Node* it=GetClipIterator(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=GetClipIterator(); it; it=it->GetNext())
if (it->GetData()->RemoveCutLine(cutLinePosition))
return true;
@@ -2148,7 +2090,7 @@ bool WaveTrack::MergeClips(int clipidx1, int clipidx2)
bool WaveTrack::Resample(int rate, ProgressDialog *progress)
{
- for (WaveClipList::Node* it=GetClipIterator(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=GetClipIterator(); it; it=it->GetNext())
if (!it->GetData()->Resample(rate, progress))
{
// FIXME: The track is now in an inconsistent state since some
@@ -2173,7 +2115,7 @@ void WaveTrack::FillSortedClipArray(WaveClipArray& clips)
{
clips.Empty();
- for (WaveClipList::Node *it=GetClipIterator(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=GetClipIterator(); it; it=it->GetNext())
clips.Add(it->GetData());
clips.Sort(SortClipArrayCmpFunc);
@@ -2182,14 +2124,14 @@ void WaveTrack::FillSortedClipArray(WaveClipArray& clips)
///Deletes all clips' wavecaches. Careful, This may not be threadsafe.
void WaveTrack::DeleteWaveCaches()
{
- for (WaveClipList::Node* it=GetClipIterator(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=GetClipIterator(); it; it=it->GetNext())
it->GetData()->DeleteWaveCache();
}
///Adds an invalid region to the wavecache so it redraws that portion only.
void WaveTrack::AddInvalidRegion(sampleCount startSample, sampleCount endSample)
{
- for (WaveClipList::Node* it=GetClipIterator(); it; it=it->GetNext())
+ for (WaveClipList::compatibility_iterator it=GetClipIterator(); it; it=it->GetNext())
it->GetData()->AddInvalidRegion(startSample,endSample);
}
diff --git a/src/WaveTrack.h b/src/WaveTrack.h
index 7d52239..791a7b2 100644
--- a/src/WaveTrack.h
+++ b/src/WaveTrack.h
@@ -126,7 +126,13 @@ class AUDACITY_DLL_API WaveTrack: public Track {
virtual bool Cut (double t0, double t1, Track **dest);
virtual bool Copy (double t0, double t1, Track **dest);
virtual bool Clear(double t0, double t1);
- virtual bool Paste(double t, Track *src);
+ virtual bool Paste(double t0, Track *src);
+ virtual bool ClearAndPaste(double t0, double t1,
+ Track *src,
+ bool preserve = true,
+ bool merge = true,
+ TrackList* tracks = NULL,
+ bool relativeLabels = false);
virtual bool Silence(double t0, double t1);
virtual bool InsertSilence(double t, double len);
@@ -146,11 +152,12 @@ class AUDACITY_DLL_API WaveTrack: public Track {
virtual bool Trim (double t0, double t1);
- bool HandleGroupClear(double t0, double t1, bool addCutLines, bool split);
- bool HandleClear(double t0, double t1,
- bool addCutLines, bool split);
-
- bool HandleGroupPaste(double t0, Track *src);
+ bool Clear(double t0, double t1, TrackList* tracks);
+ bool HandleGroupClear(double t0, double t1, bool addCutLines, bool split, TrackList* tracks = NULL);
+ bool HandleClear(double t0, double t1, bool addCutLines, bool split);
+
+ bool Paste(double t0, Track *src, TrackList* tracks, bool relativeLabels = false);
+ bool HandleGroupPaste(double t0, Track *src, TrackList* tracks, bool relativeLabels);
bool HandlePaste(double t0, Track *src);
// Returns true if there are no WaveClips in that region
@@ -236,13 +243,13 @@ class AUDACITY_DLL_API WaveTrack: public Track {
// Utility functions to convert between times in seconds
// and sample positions
- sampleCount TimeToLongSamples(double t0);
+ sampleCount TimeToLongSamples(double t0) const;
double LongSamplesToTime(sampleCount pos);
// Get access to the clips in the tracks. This is used by
// track artists and also by TrackPanel when sliding...it would
// be cleaner if this could be removed, though...
- WaveClipList::Node* GetClipIterator() { return mClips.GetFirst(); }
+ WaveClipList::compatibility_iterator GetClipIterator() { return mClips.GetFirst(); }
// Create new clip and add it to this track. Returns a pointer
// to the newly created clip.
@@ -289,11 +296,6 @@ class AUDACITY_DLL_API WaveTrack: public Track {
// clipidx1 and clipidx2 are indices into the clip list.
bool MergeClips(int clipidx1, int clipidx2);
- // Set/get rectangle that this WaveClip fills on screen. This is
- // called by TrackArtist while actually drawing the tracks and clips.
- void SetDisplayRect(const wxRect& r) { mDisplayRect = r; }
- void GetDisplayRect(wxRect* r) { *r = mDisplayRect; }
-
// Cache special locations (e.g. cut lines) for later speedy access
void UpdateLocationsCache();
@@ -314,9 +316,6 @@ class AUDACITY_DLL_API WaveTrack: public Track {
// Resample track (i.e. all clips in the track)
bool Resample(int rate, ProgressDialog *progress = NULL);
- void SetStickyTrack(LabelTrack *lt) { mStickyLabelTrack = lt; }
- LabelTrack* GetStickyTrack() { return mStickyLabelTrack; }
-
//
// The following code will eventually become part of a GUIWaveTrack
// and will be taken out of the WaveTrack class:
@@ -344,7 +343,6 @@ class AUDACITY_DLL_API WaveTrack: public Track {
WaveClipList mClips;
- wxRect mDisplayRect;
sampleFormat mFormat;
int mRate;
float mGain;
@@ -375,7 +373,6 @@ class AUDACITY_DLL_API WaveTrack: public Track {
wxCriticalSection mFlushCriticalSection;
wxCriticalSection mAppendCriticalSection;
double mLegacyProjectFileOffset;
- LabelTrack *mStickyLabelTrack;
};
diff --git a/src/audacity.desktop b/src/audacity.desktop
index 0274a3d..8c295cd 100644
--- a/src/audacity.desktop
+++ b/src/audacity.desktop
@@ -1,8 +1,6 @@
[Desktop Entry]
-Encoding=UTF-8
-
-Name=Audacity Sound Editor
-Name[de]=Audacity Audio-Editor
+Name=Audacity
+Name[de]=Audacity
Name[ru]=Audacity
GenericName=Sound Editor
GenericName[de]=Audio-Editor
@@ -11,10 +9,10 @@ Comment=Record and edit audio files
Comment[de]=Audio-Dateien aufnehmen und bearbeiten
Comment[ru]=ÐапиÑÑ Ð¸ ÑедакÑиÑование звÑковÑÑ
Ñайлов
-Icon=/usr/share/audacity/audacity.xpm
+Icon=audacity
Type=Application
-Categories=Application;AudioVideo;Audio;AudioVideoEditing;
+Categories=AudioVideo;Audio;AudioVideoEditing;
Exec=audacity
StartupNotify=false
diff --git a/src/blockfile/LegacyBlockFile.cpp b/src/blockfile/LegacyBlockFile.cpp
index 3bdd509..1d1a9ef 100644
--- a/src/blockfile/LegacyBlockFile.cpp
+++ b/src/blockfile/LegacyBlockFile.cpp
@@ -22,6 +22,7 @@
#include <math.h>
#include <wx/filefn.h>
+#include <wx/file.h>
#include <wx/ffile.h>
#include <wx/utils.h>
#include <wx/log.h>
@@ -205,7 +206,15 @@ int LegacyBlockFile::ReadData(samplePtr data, sampleFormat format,
info.frames = mLen + (mSummaryInfo.totalSummaryBytes /
SAMPLE_SIZE(mFormat));
- SNDFILE *sf=sf_open(OSFILENAME(mFileName.GetFullPath()), SFM_READ, &info);
+ wxFile f; // will be closed when it goes out of scope
+ SNDFILE *sf = NULL;
+
+ if (f.Open(mFileName.GetFullPath())) {
+ // Even though there is an sf_open() that takes a filename, use the one that
+ // takes a file descriptor since wxWidgets can open a file with a Unicode name and
+ // libsndfile can't (under Windows).
+ sf = sf_open_fd(f.fd(), SFM_READ, &info, FALSE);
+ }
wxLogNull *silence=0;
if(mSilentLog)silence= new wxLogNull();
diff --git a/src/blockfile/ODPCMAliasBlockFile.cpp b/src/blockfile/ODPCMAliasBlockFile.cpp
index d6c6835..0bafa2c 100644
--- a/src/blockfile/ODPCMAliasBlockFile.cpp
+++ b/src/blockfile/ODPCMAliasBlockFile.cpp
@@ -21,6 +21,7 @@ The summary is eventually computed and written to a file in a background thread.
#endif
#include "ODPCMAliasBlockFile.h"
+#include <wx/file.h>
#include <wx/utils.h>
#include <wx/wxchar.h>
#include <wx/log.h>
@@ -384,7 +385,6 @@ bool ODPCMAliasBlockFile::IsSummaryAvailable()
///Calls write summary, and makes sure it is only done once in a thread-safe fasion.
void ODPCMAliasBlockFile::DoWriteSummary()
{
- bool beenDone = false;
mWriteSummaryMutex.Lock();
if(!IsSummaryAvailable())
WriteSummary();
@@ -631,10 +631,18 @@ int ODPCMAliasBlockFile::ReadData(samplePtr data, sampleFormat format,
//there are thread-unsafe crashes here - not sure why. sf_open may be called on the same file
//from different threads, but this seems okay, unless it is implemented strangely..
static ODLock sfMutex;
- ODManager::LockLibSndFileMutex();
- SNDFILE *sf=sf_open(OSFILENAME(aliasPath),
- SFM_READ, &info);
- ODManager::UnlockLibSndFileMutex();
+
+ wxFile f; // will be closed when it goes out of scope
+ SNDFILE *sf = NULL;
+
+ if (f.Open(aliasPath)) {
+ // Even though there is an sf_open() that takes a filename, use the one that
+ // takes a file descriptor since wxWidgets can open a file with a Unicode name and
+ // libsndfile can't (under Windows).
+ ODManager::LockLibSndFileMutex();
+ sf = sf_open_fd(f.fd(), SFM_READ, &info, FALSE);
+ ODManager::UnlockLibSndFileMutex();
+ }
if (!sf){
diff --git a/src/blockfile/PCMAliasBlockFile.cpp b/src/blockfile/PCMAliasBlockFile.cpp
index 9fc0b59..bc6eca8 100644
--- a/src/blockfile/PCMAliasBlockFile.cpp
+++ b/src/blockfile/PCMAliasBlockFile.cpp
@@ -12,6 +12,7 @@
#include <windows.h>
#endif
+#include <wx/file.h>
#include <wx/utils.h>
#include <wx/wxchar.h>
#include <wx/log.h>
@@ -76,11 +77,18 @@ int PCMAliasBlockFile::ReadData(samplePtr data, sampleFormat format,
memset(&info, 0, sizeof(info));
- ODManager::LockLibSndFileMutex();
- SNDFILE *sf=sf_open(OSFILENAME(mAliasedFileName.GetFullPath()),
- SFM_READ, &info);
- ODManager::UnlockLibSndFileMutex();
-
+ wxFile f; // will be closed when it goes out of scope
+ SNDFILE *sf = NULL;
+
+ if (f.Open(mAliasedFileName.GetFullPath())) {
+ // Even though there is an sf_open() that takes a filename, use the one that
+ // takes a file descriptor since wxWidgets can open a file with a Unicode name and
+ // libsndfile can't (under Windows).
+ ODManager::LockLibSndFileMutex();
+ sf = sf_open_fd(f.fd(), SFM_READ, &info, FALSE);
+ ODManager::UnlockLibSndFileMutex();
+ }
+
if (!sf){
memset(data,0,SAMPLE_SIZE(format)*len);
diff --git a/src/blockfile/SimpleBlockFile.cpp b/src/blockfile/SimpleBlockFile.cpp
index 48a3761..68c998c 100644
--- a/src/blockfile/SimpleBlockFile.cpp
+++ b/src/blockfile/SimpleBlockFile.cpp
@@ -390,8 +390,17 @@ int SimpleBlockFile::ReadData(samplePtr data, sampleFormat format,
memset(&info, 0, sizeof(info));
- SNDFILE *sf=sf_open(OSFILENAME(mFileName.GetFullPath()), SFM_READ, &info);
- if (!sf){
+ wxFile f; // will be closed when it goes out of scope
+ SNDFILE *sf = NULL;
+
+ if (f.Open(mFileName.GetFullPath())) {
+ // Even though there is an sf_open() that takes a filename, use the one that
+ // takes a file descriptor since wxWidgets can open a file with a Unicode name and
+ // libsndfile can't (under Windows).
+ sf = sf_open_fd(f.fd(), SFM_READ, &info, FALSE);
+ }
+
+ if (!sf) {
memset(data,0,SAMPLE_SIZE(format)*len);
@@ -582,7 +591,14 @@ bool SimpleBlockFile::GetCache()
{
bool cacheBlockFiles = false;
gPrefs->Read(wxT("/Directories/CacheBlockFiles"), &cacheBlockFiles);
- return cacheBlockFiles;
+
+ int lowMem = gPrefs->Read(wxT("/Directories/CacheLowMem"), 16l);
+ if (lowMem < 16) {
+ lowMem = 16;
+ }
+ lowMem <<= 20;
+
+ return cacheBlockFiles && (wxGetFreeMemory() > lowMem);
}
// Indentation settings for Vim and Emacs and unique identifier for Arch, a
diff --git a/src/commands/CommandManager.cpp b/src/commands/CommandManager.cpp
index ce44ca6..68bd00c 100644
--- a/src/commands/CommandManager.cpp
+++ b/src/commands/CommandManager.cpp
@@ -105,6 +105,7 @@ CommandManager. It holds the callback for one command.
#define MAX_SUBMENU_LEN 1000
#endif
+#define COMMAND _("Command")
///
/// Standard Constructor
///
@@ -112,6 +113,7 @@ CommandManager::CommandManager():
mCurrentID(0),
mHiddenID(0),
mCurrentMenu(NULL),
+ mCurrentMenuName(COMMAND),
mOpenMenu(NULL),
mDefaultFlags(0),
mDefaultMask(0)
@@ -161,6 +163,7 @@ void CommandManager::PurgeData()
mCommandIDHash.clear();
mCurrentMenu = NULL;
+ mCurrentMenuName = COMMAND;
mCurrentID = 0;
}
@@ -234,6 +237,7 @@ void CommandManager::BeginMenu(wxString tNameIn)
wxMenu *tmpMenu = new wxMenu();
mCurrentMenu = tmpMenu;
+ mCurrentMenuName = tName;
CurrentMenuBar()->Append(mCurrentMenu, tName);
}
@@ -248,10 +252,10 @@ void CommandManager::EndMenu()
mHidingLevel--;
mCurrentMenu = NULL;
+ mCurrentMenuName = COMMAND;
}
-
///
/// This starts a new submenu, and names it according to
/// the function's argument.
@@ -359,8 +363,10 @@ void CommandManager::InsertItem(wxString name, wxString label_in,
{
wxString label = label_in;
- if (ItemShouldBeHidden(label))
+ if (ItemShouldBeHidden(label)) {
+ delete callback;
return;
+ }
wxMenuBar *bar = GetActiveProject()->GetMenuBar();
wxArrayString names = ::wxStringTokenize(after, wxT(":"));
@@ -437,19 +443,46 @@ void CommandManager::InsertItem(wxString name, wxString label_in,
mbSeparatorAllowed = true;
}
-///
-/// Add a menu item to the current menu. When the user selects it, the
-/// given functor will be called
-void CommandManager::AddItem(wxString name, wxString label_in,
- CommandFunctor *callback, int checkmark)
+void CommandManager::AddCheck(const wxChar *name,
+ const wxChar *label,
+ CommandFunctor *callback,
+ int checkmark)
{
- wxString label = label_in;
+ AddItem(name, label, callback, wxT(""), NoFlagsSpecifed, NoFlagsSpecifed, checkmark);
+}
- if( ItemShouldBeHidden( label ) )
+void CommandManager::AddItem(const wxChar *name,
+ const wxChar *label,
+ CommandFunctor *callback,
+ int flags,
+ int mask)
+{
+ AddItem(name, label, callback, wxT(""), flags, mask);
+}
+
+void CommandManager::AddItem(const wxChar *name,
+ const wxChar *label_in,
+ CommandFunctor *callback,
+ const wxChar *accel,
+ int flags,
+ int mask,
+ int checkmark)
+{
+ wxString label(label_in);
+ label += wxT("\t");
+ label += accel;
+
+ if (ItemShouldBeHidden(label)) {
+ delete callback;
return;
+ }
int ID = NewIdentifier(name, label, CurrentMenu(), callback, false, 0, 0);
+ if (flags != NoFlagsSpecifed || mask != NoFlagsSpecifed) {
+ SetCommandFlags(name, flags, mask);
+ }
+
// Replace the accel key with the one from the preferences
label = label.BeforeFirst(wxT('\t'));
@@ -460,20 +493,18 @@ void CommandManager::AddItem(wxString name, wxString label_in,
// made-up name (just an ID number string) but with the accelerator
// we want, then immediately change the label to the correct string.
// -DMM
- mHiddenID++;
- wxString dummy, newLabel;
- dummy.Printf(wxT("%s%08d"), label.c_str(), mHiddenID);
- newLabel = label;
+ wxString newLabel;
+ newLabel.Printf(wxT("%s%08d"), label.c_str(), ++mHiddenID);
if (checkmark >= 0) {
- CurrentMenu()->AppendCheckItem(ID, dummy);
- CurrentMenu()->Check(ID, checkmark !=0);
+ CurrentMenu()->AppendCheckItem(ID, newLabel);
+ CurrentMenu()->Check(ID, checkmark != 0);
}
else {
- CurrentMenu()->Append(ID, dummy);
+ CurrentMenu()->Append(ID, newLabel);
}
- CurrentMenu()->SetLabel(ID, newLabel);
+ CurrentMenu()->SetLabel(ID, label);
mbSeparatorAllowed = true;
}
@@ -538,10 +569,31 @@ void CommandManager::AddItemList(wxString name, wxArrayString labels,
///
/// Add a command that doesn't appear in a menu. When the key is pressed, the
/// given function pointer will be called (via the CommandManagerListener)
-void CommandManager::AddCommand(wxString name, wxString label,
- CommandFunctor *callback)
+void CommandManager::AddCommand(const wxChar *name,
+ const wxChar *label,
+ CommandFunctor *callback,
+ int flags,
+ int mask)
{
+ AddCommand(name, label, callback, wxT(""), flags, mask);
+}
+
+void CommandManager::AddCommand(const wxChar *name,
+ const wxChar *label_in,
+ CommandFunctor *callback,
+ const wxChar *accel,
+ int flags,
+ int mask)
+{
+ wxString label(label_in);
+ label += wxT("\t");
+ label += accel;
+
NewIdentifier(name, label, NULL, callback, false, 0, 0);
+
+ if (flags != NoFlagsSpecifed || mask != NoFlagsSpecifed) {
+ SetCommandFlags(name, flags, mask);
+ }
}
void CommandManager::AddSeparator()
@@ -576,9 +628,10 @@ int CommandManager::NewIdentifier(wxString name, wxString label, wxMenu *menu,
CommandListEntry *tmpEntry = new CommandListEntry;
wxString labelPrefix;
- if( !mSubMenuList.IsEmpty() )
- labelPrefix = mSubMenuList[ mSubMenuList.GetCount() - 1 ]->name;
-
+ if (!mSubMenuList.IsEmpty()) {
+ labelPrefix = mSubMenuList[mSubMenuList.GetCount() - 1]->name;
+ }
+
// wxMac 2.5 and higher will do special things with the
// Preferences, Exit (Quit), and About menu items,
// if we give them the right IDs.
@@ -590,7 +643,7 @@ int CommandManager::NewIdentifier(wxString name, wxString label, wxMenu *menu,
mCurrentID = NextIdentifier(mCurrentID);
tmpEntry->id = mCurrentID;
- tmpEntry->key = KeyStringNormalize(GetKey(label));
+ tmpEntry->key = GetKey(label);
#if defined(__WXMAC__)
if (name == wxT("Preferences"))
@@ -605,6 +658,7 @@ int CommandManager::NewIdentifier(wxString name, wxString label, wxMenu *menu,
tmpEntry->name = name;
tmpEntry->label = label;
tmpEntry->labelPrefix = labelPrefix;
+ tmpEntry->labelTop = wxMenuItem::GetLabelFromText(mCurrentMenuName);
tmpEntry->menu = menu;
tmpEntry->callback = callback;
tmpEntry->multi = multi;
@@ -624,27 +678,35 @@ int CommandManager::NewIdentifier(wxString name, wxString label, wxMenu *menu,
mCommandList.Add(tmpEntry);
mCommandIDHash[tmpEntry->id] = tmpEntry;
- if (index==0 || !multi)
+ if (index == 0 || !multi) {
+#if defined(__WXDEBUG__)
+ CommandListEntry *prev = mCommandNameHash[name];
+ if (prev) {
+ wxLogDebug(wxT("Command '%s' defined by '%s' and '%s'"),
+ name.c_str(),
+ prev->label.BeforeFirst(wxT('\t')).c_str(),
+ tmpEntry->label.BeforeFirst(wxT('\t')).c_str());
+ wxASSERT(!prev);
+ }
+#endif
mCommandNameHash[name] = tmpEntry;
+ }
- if (tmpEntry->key != wxT(""))
+ if (tmpEntry->key != wxT("")) {
mCommandKeyHash[tmpEntry->key] = tmpEntry;
+ }
return tmpEntry->id;
}
wxString CommandManager::GetKey(wxString label)
{
- int loc = -1;
-
- loc = label.Find(wxT('\t'));
- if (loc == -1)
- loc = label.Find(wxT("\\t"));
-
- if (loc == -1)
- return wxT("");
+ wxString key = label.AfterFirst(wxT('\t')).BeforeFirst(wxT('\t'));
+ if (key.IsEmpty()) {
+ return key;
+ }
- return label.Right(label.Length() - (loc+1));
+ return KeyStringNormalize(key);
}
///Enables or disables a menu item based on its name (not the
@@ -667,6 +729,7 @@ void CommandManager::Enable(CommandListEntry *entry, bool enabled)
// Only enabled if needed
if (entry->enabled != enabled) {
entry->menu->Enable(entry->id, enabled);
+ entry->enabled = entry->menu->IsEnabled(entry->id);
}
if (entry->multi) {
@@ -748,6 +811,14 @@ void CommandManager::Modify(wxString name, wxString newLabel)
}
}
+void CommandManager::SetKeyFromName(wxString name, wxString key)
+{
+ CommandListEntry *entry = mCommandNameHash[name];
+ if (entry) {
+ entry->key = KeyStringNormalize(key);
+ }
+}
+
void CommandManager::HandleMenuOpen(wxMenuEvent &evt)
{
// Ensure we have a menu and that it's a top-level menu.
@@ -854,7 +925,7 @@ void CommandManager::TellUserWhyDisallowed( wxUint32 flagsGot, wxUint32 flagsReq
{
// The default string for 'reason' is a catch all. I hope it won't ever be seen
// and that we will get something more specific.
- wxString reason = _("Disallowed for some reason. Try selecting some audio first?");
+ wxString reason = _("There was a problem with your last action. If you think\nthis is a bug, please tell us exactly where it occurred.");
wxUint32 missingFlags = flagsRequired & (~flagsGot );
if( missingFlags & AudioIONotBusyFlag )
@@ -878,7 +949,7 @@ void CommandManager::TellUserWhyDisallowed( wxUint32 flagsGot, wxUint32 flagsReq
///with the command's flags.
bool CommandManager::HandleCommandEntry(CommandListEntry * entry, wxUint32 flags, wxUint32 mask)
{
- if (!entry)
+ if (!entry || !entry->enabled)
return false;
wxUint32 combinedMask = (mask & entry->mask);
@@ -967,6 +1038,39 @@ bool CommandManager::HandleTextualCommand(wxString & Str, wxUint32 flags, wxUint
return false;
}
+void CommandManager::GetCategories(wxArrayString &cats)
+{
+ cats.Clear();
+
+ size_t cnt = mCommandList.GetCount();
+
+ for (size_t i = 0; i < cnt; i++) {
+ wxString cat = mCommandList[i]->labelTop;
+ if (cats.Index(cat) == wxNOT_FOUND) {
+ cats.Add(cat);
+ }
+ }
+#if 0
+ mCommandList.GetCount(); i++) {
+ if (includeMultis || !mCommandList[i]->multi)
+ names.Add(mCommandList[i]->name);
+ }
+
+ AudacityProject *p = GetActiveProject();
+ if (p == NULL) {
+ return;
+ }
+
+ wxMenuBar *bar = p->GetMenuBar();
+ size_t cnt = bar->GetMenuCount();
+ for (size_t i = 0; i < cnt; i++) {
+ cats.Add(bar->GetMenuLabelText(i));
+ }
+
+ cats.Add(COMMAND);
+#endif
+}
+
void CommandManager::GetAllCommandNames(wxArrayString &names,
bool includeMultis)
{
@@ -993,7 +1097,16 @@ wxString CommandManager::GetPrefixedLabelFromName(wxString name)
if (!entry)
return wxT("");
- return entry->labelPrefix + wxT(" ") + entry->label;
+ return wxString(entry->labelPrefix + wxT(" ") + entry->label).Trim(false).Trim(true);
+}
+
+wxString CommandManager::GetCategoryFromName(wxString name)
+{
+ CommandListEntry *entry = mCommandNameHash[name];
+ if (!entry)
+ return wxT("");
+
+ return entry->labelTop;
}
wxString CommandManager::GetKeyFromName(wxString name)
@@ -1001,7 +1114,7 @@ wxString CommandManager::GetKeyFromName(wxString name)
CommandListEntry *entry = mCommandNameHash[name];
if (!entry)
return wxT("");
-
+
return entry->key;
}
@@ -1010,7 +1123,7 @@ wxString CommandManager::GetDefaultKeyFromName(wxString name)
CommandListEntry *entry = mCommandNameHash[name];
if (!entry)
return wxT("");
-
+
return entry->defaultKey;
}
@@ -1030,11 +1143,11 @@ bool CommandManager::HandleXMLTag(const wxChar *tag, const wxChar **attrs)
if (!value)
break;
-
+
if (!wxStrcmp(attr, wxT("name")) && XMLValueChecker::IsGoodString(value))
name = value;
if (!wxStrcmp(attr, wxT("key")) && XMLValueChecker::IsGoodString(value))
- key = value;
+ key = KeyStringNormalize(value);
}
if (mCommandNameHash[name]) {
@@ -1126,6 +1239,37 @@ void CommandManager::SetCommandFlags(wxUint32 flags, wxUint32 mask, ...)
va_end(list);
}
+#if defined(__WXDEBUG__)
+void CommandManager::CheckDups()
+{
+ int cnt = mCommandList.GetCount();
+ for (size_t j = 0; (int)j < cnt; j++) {
+ if (mCommandList[j]->key.IsEmpty()) {
+ continue;
+ }
+
+ if (mCommandList[j]->label.AfterLast(wxT('\t')) == wxT("allowdup")) {
+ continue;
+ }
+
+ for (size_t i = 0; (int)i < cnt; i++) {
+ if (i == j) {
+ continue;
+ }
+
+ if (mCommandList[i]->key == mCommandList[j]->key) {
+ wxString msg;
+ msg.Printf(wxT("key combo '%s' assigned to '%s' and '%s'"),
+ mCommandList[i]->key.c_str(),
+ mCommandList[i]->label.BeforeFirst(wxT('\t')).c_str(),
+ mCommandList[j]->label.BeforeFirst(wxT('\t')).c_str());
+ wxASSERT_MSG(mCommandList[i]->key != mCommandList[j]->key, msg);
+ }
+ }
+ }
+}
+#endif
+
// Indentation settings for Vim and Emacs and unique identifier for Arch, a
// version control system. Please do not modify past this point.
//
diff --git a/src/commands/CommandManager.h b/src/commands/CommandManager.h
index 7d02d0d..a903683 100644
--- a/src/commands/CommandManager.h
+++ b/src/commands/CommandManager.h
@@ -17,6 +17,7 @@
#include <wx/menu.h>
#include <wx/hashmap.h>
+#include "../AudacityApp.h"
#include "../xml/XMLTagHandler.h"
class CommandFunctor
@@ -47,6 +48,7 @@ struct CommandListEntry
wxString defaultKey;
wxString label;
wxString labelPrefix;
+ wxString labelTop;
wxMenu *menu;
CommandFunctor *callback;
bool multi;
@@ -92,17 +94,44 @@ class AUDACITY_DLL_API CommandManager: public XMLTagHandler
void InsertItem(wxString name, wxString label, CommandFunctor *callback,
wxString after, int checkmark = -1);
- void AddItem(wxString name, wxString label, CommandFunctor *callback,
- int checkmark = -1);
void AddItemList(wxString name, wxArrayString labels,
CommandFunctor *callback, bool plugins = false);
+ void AddCheck(const wxChar *name,
+ const wxChar *label,
+ CommandFunctor *callback,
+ int checkmark = 0);
+
+ void AddItem(const wxChar *name,
+ const wxChar *label,
+ CommandFunctor *callback,
+ int flags = NoFlagsSpecifed,
+ int mask = NoFlagsSpecifed);
+
+ void AddItem(const wxChar *name,
+ const wxChar *label_in,
+ CommandFunctor *callback,
+ const wxChar *accel,
+ int flags = NoFlagsSpecifed,
+ int mask = NoFlagsSpecifed,
+ int checkmark = -1);
void AddSeparator();
// A command doesn't actually appear in a menu but might have a
// keyboard shortcut.
- void AddCommand(wxString name, wxString label, CommandFunctor *callback);
+ void AddCommand(const wxChar *name,
+ const wxChar *label,
+ CommandFunctor *callback,
+ int flags = NoFlagsSpecifed,
+ int mask = NoFlagsSpecifed);
+
+ void AddCommand(const wxChar *name,
+ const wxChar *label,
+ CommandFunctor *callback,
+ const wxChar *accel,
+ int flags = NoFlagsSpecifed,
+ int mask = NoFlagsSpecifed);
//
// Command masks
@@ -127,6 +156,11 @@ class AUDACITY_DLL_API CommandManager: public XMLTagHandler
void Modify(wxString name, wxString newLabel);
//
+ // Modifying accelerators
+ //
+ void SetKeyFromName(wxString name, wxString key);
+
+ //
// Displaying menus
//
void HandleMenuOpen(wxMenuEvent &evt);
@@ -139,18 +173,25 @@ class AUDACITY_DLL_API CommandManager: public XMLTagHandler
bool HandleMenuID(int id, wxUint32 flags, wxUint32 mask);
bool HandleKey(wxKeyEvent &evt, wxUint32 flags, wxUint32 mask);
bool HandleTextualCommand(wxString & Str, wxUint32 flags, wxUint32 mask);
- void TellUserWhyDisallowed( wxUint32 flagsGot, wxUint32 flagsRequired );
+ void TellUserWhyDisallowed(wxUint32 flagsGot, wxUint32 flagsRequired);
+
//
// Accessing
//
+ void GetCategories(wxArrayString &cats);
void GetAllCommandNames(wxArrayString &names, bool includeMultis);
wxString GetLabelFromName(wxString name);
- wxString GetPrefixedLabelFromName( wxString name );
+ wxString GetPrefixedLabelFromName(wxString name);
+ wxString GetCategoryFromName(wxString name);
wxString GetKeyFromName(wxString name);
wxString GetDefaultKeyFromName(wxString name);
+#if defined(__WXDEBUG__)
+ void CheckDups();
+#endif
+
//
// Loading/Saving
//
@@ -194,6 +235,7 @@ private:
bool mbSeparatorAllowed; // false at the start of a menu and immediately after a separator.
int mHidingLevel;
+ wxString mCurrentMenuName;
wxMenu * mCurrentMenu;
wxMenu * mOpenMenu;
diff --git a/src/configtemplate.h b/src/configtemplate.h
index 1c439f2..10ba839 100644
--- a/src/configtemplate.h
+++ b/src/configtemplate.h
@@ -13,6 +13,9 @@
/* Define to 1 if you have the `clock_gettime' function. */
#undef HAVE_CLOCK_GETTIME
+/* Define if GTK is available */
+#undef HAVE_GTK
+
/* Define to 1 if you have the <inttypes.h> header file. */
#undef HAVE_INTTYPES_H
@@ -90,10 +93,6 @@
/* Define if libid3tag is present */
#undef USE_LIBID3TAG
-/* Define if liblrdf (metadata for LADSPA plugins) support should be enabled
- */
-#undef USE_LIBLRDF
-
/* Define if mp3 support is implemented with the libmad library */
#undef USE_LIBMAD
@@ -115,18 +114,12 @@
/* Define if Nyquist support should be enabled */
#undef USE_NYQUIST
-/* Define if PortAudio v19 is being used (instead of v18) */
-#undef USE_PORTAUDIO_V19
-
/* Define if PortMixer support should be enabled */
#undef USE_PORTMIXER
/* Define if QuickTime importing is enabled (Mac OS X only) */
#undef USE_QUICKTIME
-/* Define if SLV2 (library for loading LV2 plugins) should be enabled */
-#undef USE_SLV2
-
/* Define if SBSMS support should be enabled */
#undef USE_SBSMS
@@ -136,6 +129,9 @@
/* Use system Expat library */
#undef USE_SYSTEM_EXPAT
+/* Define if TagLib (metadata export) support should be enabled */
+#undef USE_TAGLIB
+
/* Define if Vamp analysis plugin support should be enabled */
#undef USE_VAMP
diff --git a/src/effects/Amplify.cpp b/src/effects/Amplify.cpp
index 0fbb12f..d8dced5 100644
--- a/src/effects/Amplify.cpp
+++ b/src/effects/Amplify.cpp
@@ -45,6 +45,7 @@
EffectAmplify::EffectAmplify()
{
ratio = float(1.0);
+ peak = float(0.0);
}
wxString EffectAmplify::GetEffectDescription() {
@@ -57,23 +58,19 @@ bool EffectAmplify::Init()
{
peak = float(0.0);
- TrackListIterator iter(mWaveTracks);
- Track *t = iter.First();
- int count = 0;
- while(t) {
+ SelectedTrackListOfKindIterator iter(Track::Wave, mTracks);
+
+ for (Track *t = iter.First(); t; t = iter.Next()) {
float min, max;
((WaveTrack *)t)->GetMinMax(&min, &max, mT0, mT1);
float newpeak = (fabs(min) > fabs(max) ? fabs(min) : fabs(max));
- if (newpeak > peak)
+ if (newpeak > peak) {
peak = newpeak;
-
- t = iter.Next();
- count++;
+ }
}
-
- return true;
+ return true;
}
bool EffectAmplify::TransferParameters( Shuttle & shuttle )
diff --git a/src/effects/AutoDuck.cpp b/src/effects/AutoDuck.cpp
index 1f0d163..22272f7 100644
--- a/src/effects/AutoDuck.cpp
+++ b/src/effects/AutoDuck.cpp
@@ -75,6 +75,21 @@ EffectAutoDuck::EffectAutoDuck()
{
SetEffectFlags(BUILTIN_EFFECT | PROCESS_EFFECT | ADVANCED_EFFECT);
+ gPrefs->Read(wxT("/Effects/AutoDuck/DuckAmountDb"),
+ &mDuckAmountDb, PARAM_DEFAULT_DUCK_AMOUNT_DB);
+ gPrefs->Read(wxT("/Effects/AutoDuck/InnerFadeDownLen"),
+ &mInnerFadeDownLen, PARAM_DEFAULT_INNER_FADE_DOWN_LEN);
+ gPrefs->Read(wxT("/Effects/AutoDuck/InnerFadeUpLen"),
+ &mInnerFadeUpLen, PARAM_DEFAULT_INNER_FADE_UP_LEN);
+ gPrefs->Read(wxT("/Effects/AutoDuck/OuterFadeDownLen"),
+ &mOuterFadeDownLen, PARAM_DEFAULT_OUTER_FADE_DOWN_LEN);
+ gPrefs->Read(wxT("/Effects/AutoDuck/OuterFadeUpLen"),
+ &mOuterFadeUpLen, PARAM_DEFAULT_OUTER_FADE_UP_LEN);
+ gPrefs->Read(wxT("/Effects/AutoDuck/ThresholdDb"),
+ &mThresholdDb, PARAM_DEFAULT_THRESHOLD_DB);
+ gPrefs->Read(wxT("/Effects/AutoDuck/MaximumPause"),
+ &mMaximumPause, PARAM_DEFAULT_MAXIMUM_PAUSE);
+
mControlTrack = NULL;
}
@@ -140,7 +155,6 @@ bool EffectAutoDuck::Init()
}
mControlTrack = controlTrackCandidate;
- wxASSERT(mWaveTracks);
return true;
}
@@ -197,7 +211,7 @@ bool EffectAutoDuck::Process()
{
int i;
- if (!mWaveTracks || !mControlTrack)
+ if (GetNumWaveTracks() == 0 || !mControlTrack)
return false;
bool cancel = false;
@@ -324,8 +338,8 @@ bool EffectAutoDuck::Process()
if (!cancel)
{
- this->CopyInputWaveTracks(); // Set up mOutputWaveTracks.
- TrackListIterator iter(mOutputWaveTracks);
+ this->CopyInputTracks(); // Set up mOutputTracks.
+ SelectedTrackListOfKindIterator iter(Track::Wave, mOutputTracks);
Track *iterTrack = iter.First();
int trackNumber = 0;
@@ -354,7 +368,7 @@ bool EffectAutoDuck::Process()
}
}
- this->ReplaceProcessedWaveTracks(!cancel);
+ this->ReplaceProcessedTracks(!cancel);
return !cancel;
}
@@ -741,8 +755,8 @@ void EffectAutoDuckPanel::OnPaint(wxPaintEvent& evt)
dc.SetPen(wxPen(*wxBLACK, 1, wxDOT));
- dc.DrawLine(FADE_DOWN_START, 10, FADE_DOWN_START, clientHeight - 10);
- dc.DrawLine(FADE_UP_START, 10, FADE_UP_START, clientHeight - 10);
+ AColor::Line(dc, FADE_DOWN_START, 10, FADE_DOWN_START, clientHeight - 10);
+ AColor::Line(dc, FADE_UP_START, 10, FADE_UP_START, clientHeight - 10);
dc.SetPen(AColor::envelopePen);
dc.SetBrush(*wxWHITE_BRUSH);
diff --git a/src/effects/ChangeLength.cpp b/src/effects/ChangeLength.cpp
index 875d15d..7aa4170 100644
--- a/src/effects/ChangeLength.cpp
+++ b/src/effects/ChangeLength.cpp
@@ -79,7 +79,7 @@ bool EffectChangeLength::TransferParameters( Shuttle & shuttle )
bool EffectChangeLength::Process()
{
- TrackListIterator iter(mWaveTracks);
+ TrackListOfKindIterator iter(Track::Wave, mTracks);
mTrack = (WaveTrack *) iter.First();
return true;
diff --git a/src/effects/ChangePitch.cpp b/src/effects/ChangePitch.cpp
index 79d8498..6658428 100644
--- a/src/effects/ChangePitch.cpp
+++ b/src/effects/ChangePitch.cpp
@@ -70,7 +70,7 @@ void EffectChangePitch::DeduceFrequencies()
{
// As a neat trick, attempt to get the frequency of the note at the
// beginning of the selection.
- TrackListIterator iter(mWaveTracks);
+ SelectedTrackListOfKindIterator iter(Track::Wave, mTracks);
WaveTrack *track = (WaveTrack *) iter.First();
if (track) {
const int windowSize = 1024;
@@ -105,9 +105,9 @@ void EffectChangePitch::DeduceFrequencies()
m_ToFrequency = (m_FromFrequency * (100.0 + m_PercentChange)) / 100.0;
// Now we can set the pitch control values.
- m_FromPitchIndex = PitchIndex(Freq2Pitch(m_FromFrequency));
+ m_FromPitchIndex = PitchIndex(FreqToMIDInoteNumber(m_FromFrequency));
m_bWantPitchDown = (m_ToFrequency < m_FromFrequency);
- m_ToPitchIndex = PitchIndex(Freq2Pitch(m_ToFrequency));
+ m_ToPitchIndex = PitchIndex(FreqToMIDInoteNumber(m_ToFrequency));
}
}
@@ -588,7 +588,7 @@ void ChangePitchDialog::OnText_FromFrequency(wxCommandEvent & event)
str.ToDouble(&newDouble);
m_FromFrequency = newDouble;
- m_FromPitchIndex = PitchIndex(Freq2Pitch(m_FromFrequency));
+ m_FromPitchIndex = PitchIndex(FreqToMIDInoteNumber(m_FromFrequency));
this->Calc_ToFrequency();
m_bWantPitchDown = (m_ToFrequency < m_FromFrequency);
this->Calc_ToPitchIndex(); // Call *after* m_bWantPitchDown is updated.
diff --git a/src/effects/ChangePitch.h b/src/effects/ChangePitch.h
index ef52719..476b0fe 100644
--- a/src/effects/ChangePitch.h
+++ b/src/effects/ChangePitch.h
@@ -22,7 +22,7 @@
#include <wx/intl.h>
#include <wx/slider.h>
-class EffectChangePitch:public EffectSoundTouch {
+class EffectChangePitch : public EffectSoundTouch {
public:
EffectChangePitch();
@@ -58,6 +58,8 @@ class EffectChangePitch:public EffectSoundTouch {
virtual bool PromptUser();
virtual bool TransferParameters( Shuttle & shuttle );
+
+ virtual bool CheckWhetherSkipEffect() { return (m_PercentChange == 0.0); }
virtual bool Process();
private:
diff --git a/src/effects/ChangeSpeed.cpp b/src/effects/ChangeSpeed.cpp
index 67a0e6d..e6f598f 100644
--- a/src/effects/ChangeSpeed.cpp
+++ b/src/effects/ChangeSpeed.cpp
@@ -89,11 +89,17 @@ bool EffectChangeSpeed::Process()
// Similar to EffectSoundTouch::Process()
//Iterate over each track
- this->CopyInputWaveTracks(); // Set up mOutputWaveTracks.
+ //Track::All is needed because this effect needs to introduce silence in the group tracks to keep sync
+ this->CopyInputTracks(Track::All); // Set up mOutputTracks.
bool bGoodResult = true;
- TrackListIterator iter(mOutputWaveTracks);
- WaveTrack* pOutWaveTrack = (WaveTrack*)(iter.First());
+ TrackListIterator iter(mOutputTracks);
+ // go to first wavetrack
+ Track* t;
+ for (t = iter.First(); t->GetKind() != Track::Wave; t = iter.Next());
+ if (!t)
+ return false;
+ WaveTrack* pOutWaveTrack = (WaveTrack*)t;
mCurTrackNum = 0;
m_maxNewLength = 0.0;
@@ -107,50 +113,49 @@ bool EffectChangeSpeed::Process()
mCurT1 = wxMin(mT1, mCurT1);
double len = pOutWaveTrack->GetEndTime() - pOutWaveTrack->GetStartTime();
-
- while (pOutWaveTrack != NULL)
+
+ // we only do a "group change" in the first selected track of the group.
+ // ClearAndPaste has a call to Paste that does changes to the group tracks
+ bool first = true;
+
+ while (t != NULL)
{
- //Get start and end times from track
- mCurT0 = pOutWaveTrack->GetStartTime();
- mCurT1 = pOutWaveTrack->GetEndTime();
-
- //Set the current bounds to whichever left marker is
- //greater and whichever right marker is less:
- mCurT0 = wxMax(mT0, mCurT0);
- mCurT1 = wxMin(mT1, mCurT1);
-
- // Process only if the right marker is to the right of the left marker
- if (mCurT1 > mCurT0) {
- //Transform the marker timepoints to samples
- sampleCount start = pOutWaveTrack->TimeToLongSamples(mCurT0);
- sampleCount end = pOutWaveTrack->TimeToLongSamples(mCurT1);
-
- //ProcessOne() (implemented below) processes a single track
- if (!ProcessOne(pOutWaveTrack, start, end))
- {
- bGoodResult = false;
- break;
+ if (t->GetKind() == Track::Label)
+ first = true;
+ else if (t->GetKind() == Track::Wave && t->GetSelected()) {
+ pOutWaveTrack = (WaveTrack*)t;
+ //Get start and end times from track
+ mCurT0 = pOutWaveTrack->GetStartTime();
+ mCurT1 = pOutWaveTrack->GetEndTime();
+
+ //Set the current bounds to whichever left marker is
+ //greater and whichever right marker is less:
+ mCurT0 = wxMax(mT0, mCurT0);
+ mCurT1 = wxMin(mT1, mCurT1);
+
+ // Process only if the right marker is to the right of the left marker
+ if (mCurT1 > mCurT0) {
+ //Transform the marker timepoints to samples
+ sampleCount start = pOutWaveTrack->TimeToLongSamples(mCurT0);
+ sampleCount end = pOutWaveTrack->TimeToLongSamples(mCurT1);
+
+ //ProcessOne() (implemented below) processes a single track
+ if (!ProcessOne(pOutWaveTrack, start, end, first))
+ {
+ bGoodResult = false;
+ break;
+ }
+ first = false;
}
+ mCurTrackNum++;
}
//Iterate to the next track
- pOutWaveTrack = (WaveTrack*)(iter.Next());
- mCurTrackNum++;
+ t=iter.Next();
}
- this->ReplaceProcessedWaveTracks(bGoodResult);
-
-#ifdef EXPERIMENTAL_FULL_LINKING
- AudacityProject *p = (AudacityProject*)mParent;
- if( p && p->IsSticky() ){
- pOutWaveTrack = (WaveTrack*)(iter.First());
- double newLen = pOutWaveTrack->GetEndTime() - pOutWaveTrack->GetStartTime();
- double timeAdded = newLen-len;
- double sel = mCurT1-mCurT0;
- double percent = (sel/(timeAdded+sel))*100 - 100;
- if ( !(HandleGroupChangeSpeed(percent, mCurT0, mCurT1)) ) bGoodResult = false;
- }
-#endif
+ if (bGoodResult)
+ ReplaceProcessedTracks(bGoodResult);
mT1 = mT0 + m_maxNewLength; // Update selection.
@@ -160,7 +165,7 @@ bool EffectChangeSpeed::Process()
// ProcessOne() takes a track, transforms it to bunch of buffer-blocks,
// and calls libsamplerate code on these blocks.
bool EffectChangeSpeed::ProcessOne(WaveTrack * track,
- sampleCount start, sampleCount end)
+ sampleCount start, sampleCount end, bool first)
{
if (track == NULL)
return false;
@@ -243,8 +248,12 @@ bool EffectChangeSpeed::ProcessOne(WaveTrack * track,
// Take the output track and insert it in place of the original
// sample data
if (bLoopSuccess) {
- track->HandleClear(mCurT0, mCurT1, false, false);
- track->HandlePaste(mCurT0, outputTrack);
+ if (first)
+ track->ClearAndPaste(mCurT0, mCurT1, outputTrack, true, true, mOutputTracks, true);
+ else {
+ track->HandleClear(mCurT0, mCurT1, false, false);
+ track->HandlePaste(mCurT0, outputTrack);
+ }
}
double newLength = outputTrack->GetEndTime();
diff --git a/src/effects/ChangeSpeed.h b/src/effects/ChangeSpeed.h
index 5432993..a9c1b5e 100644
--- a/src/effects/ChangeSpeed.h
+++ b/src/effects/ChangeSpeed.h
@@ -52,11 +52,12 @@ class EffectChangeSpeed : public Effect {
protected:
virtual bool PromptUser();
virtual bool TransferParameters( Shuttle & shuttle );
+
+ virtual bool CheckWhetherSkipEffect() { return (m_PercentChange == 0.0); }
virtual bool Process();
private:
- bool ProcessOne(WaveTrack * t,
- sampleCount start, sampleCount end);
+ bool ProcessOne(WaveTrack * t, sampleCount start, sampleCount end, bool first);
private:
// track related
diff --git a/src/effects/ChangeTempo.h b/src/effects/ChangeTempo.h
index 112b818..46ab361 100644
--- a/src/effects/ChangeTempo.h
+++ b/src/effects/ChangeTempo.h
@@ -26,7 +26,7 @@ class wxString;
class wxTextCtrl;
-class EffectChangeTempo:public EffectSoundTouch {
+class EffectChangeTempo : public EffectSoundTouch {
public:
EffectChangeTempo();
@@ -56,6 +56,8 @@ class EffectChangeTempo:public EffectSoundTouch {
virtual bool PromptUser();
virtual bool TransferParameters( Shuttle & shuttle );
+
+ virtual bool CheckWhetherSkipEffect() { return (m_PercentChange == 0.0); }
virtual bool Process();
private:
diff --git a/src/effects/ClickRemoval.cpp b/src/effects/ClickRemoval.cpp
index c2c69a6..3fd8af3 100644
--- a/src/effects/ClickRemoval.cpp
+++ b/src/effects/ClickRemoval.cpp
@@ -124,10 +124,10 @@ bool EffectClickRemoval::TransferParameters( Shuttle & shuttle )
bool EffectClickRemoval::Process()
{
- this->CopyInputWaveTracks(); // Set up mOutputWaveTracks.
+ this->CopyInputTracks(); // Set up mOutputTracks.
bool bGoodResult = true;
- TrackListIterator iter(mOutputWaveTracks);
+ SelectedTrackListOfKindIterator iter(Track::Wave, mOutputTracks);
WaveTrack *track = (WaveTrack *) iter.First();
int count = 0;
while (track) {
@@ -151,7 +151,7 @@ bool EffectClickRemoval::Process()
track = (WaveTrack *) iter.Next();
count++;
}
- this->ReplaceProcessedWaveTracks(bGoodResult);
+ this->ReplaceProcessedTracks(bGoodResult);
return bGoodResult;
}
@@ -349,6 +349,10 @@ void ClickRemovalDialog::PopulateOrExchange(ShuttleGui & S)
MAX_THRESHOLD);
mThreshS->SetName(_("Select threshold"));
mThreshS->SetRange(MIN_THRESHOLD, MAX_THRESHOLD);
+#if defined(__WXGTK__)
+ // Force a minimum size since wxGTK allows it to go to zero
+ mThreshS->SetMinSize(wxSize(100, -1));
+#endif
// Click width
mWidthT = S.Id(ID_WIDTH_TEXT).AddTextBox(_("Max spike width (higher is more sensitive):"),
@@ -362,6 +366,10 @@ void ClickRemovalDialog::PopulateOrExchange(ShuttleGui & S)
MAX_CLICK_WIDTH);
mWidthS->SetName(_("Max spike width"));
mWidthS->SetRange(MIN_CLICK_WIDTH, MAX_CLICK_WIDTH);
+#if defined(__WXGTK__)
+ // Force a minimum size since wxGTK allows it to go to zero
+ mWidthS->SetMinSize(wxSize(100, -1));
+#endif
}
S.EndMultiColumn();
return;
diff --git a/src/effects/Compressor.cpp b/src/effects/Compressor.cpp
index 479adfd..0f37fc0 100644
--- a/src/effects/Compressor.cpp
+++ b/src/effects/Compressor.cpp
@@ -59,6 +59,14 @@ EffectCompressor::EffectCompressor()
mLevelCircle = NULL;
}
+EffectCompressor::~EffectCompressor()
+{
+ if (mCircle)
+ delete[] mCircle;
+ if (mLevelCircle)
+ delete[] mLevelCircle;
+}
+
bool EffectCompressor::TransferParameters( Shuttle & shuttle )
{
shuttle.TransferDouble( wxT("Threshold"), mThresholdDB, -12.0f );
@@ -404,10 +412,11 @@ void CompressorPanel::OnPaint(wxPaintEvent & evt)
// Yellow line for threshold
memDC.SetPen(wxPen(wxColour(220, 220, 0), 1, wxSOLID));
- memDC.DrawLine(mEnvRect.x,
- mEnvRect.y + mEnvRect.height - kneeY,
- mEnvRect.x + mEnvRect.width,
- mEnvRect.y + mEnvRect.height - kneeY);
+ AColor::Line(memDC,
+ mEnvRect.x,
+ mEnvRect.y + mEnvRect.height - kneeY,
+ mEnvRect.x + mEnvRect.width - 1,
+ mEnvRect.y + mEnvRect.height - kneeY);
// Was: Nice dark red line for the compression diagram
// memDC.SetPen(wxPen(wxColour(180, 40, 40), 3, wxSOLID));
@@ -415,15 +424,17 @@ void CompressorPanel::OnPaint(wxPaintEvent & evt)
// Nice blue line for compressor, same color as used in the waveform envelope.
memDC.SetPen( AColor::WideEnvelopePen) ;
- memDC.DrawLine(mEnvRect.x,
- mEnvRect.y + mEnvRect.height,
- mEnvRect.x + kneeX,
- mEnvRect.y + mEnvRect.height - kneeY);
+ AColor::Line(memDC,
+ mEnvRect.x,
+ mEnvRect.y + mEnvRect.height,
+ mEnvRect.x + kneeX - 1,
+ mEnvRect.y + mEnvRect.height - kneeY);
- memDC.DrawLine(mEnvRect.x + kneeX,
- mEnvRect.y + mEnvRect.height - kneeY,
- mEnvRect.x + mEnvRect.width,
- mEnvRect.y + mEnvRect.height - finalY);
+ AColor::Line(memDC,
+ mEnvRect.x + kneeX,
+ mEnvRect.y + mEnvRect.height - kneeY,
+ mEnvRect.x + mEnvRect.width - 1,
+ mEnvRect.y + mEnvRect.height - finalY);
// Paint border again
memDC.SetBrush(*wxTRANSPARENT_BRUSH);
@@ -489,8 +500,9 @@ void CompressorDialog::PopulateOrExchange(ShuttleGui & S)
}
S.EndHorizontalLay();
- S.StartMultiColumn(3, wxCENTER | wxALIGN_CENTER_VERTICAL);
+ S.StartMultiColumn(3, wxEXPAND | wxALIGN_CENTER_VERTICAL);
{
+ S.SetStretchyCol(1);
mThresholdLabel = S.AddVariableText(_("Threshold:"), true,
wxALIGN_RIGHT | wxALIGN_CENTER_VERTICAL);
S.SetStyle(wxSL_HORIZONTAL);
@@ -527,7 +539,7 @@ void CompressorDialog::PopulateOrExchange(ShuttleGui & S)
S.StartHorizontalLay(wxCENTER, false);
{
- mGainCheckBox = S.AddCheckBox(_("Normalize to 0dB after compressing"),
+ mGainCheckBox = S.AddCheckBox(_("Make-up gain for 0dB after compressing"),
wxT("true"));
}
S.EndHorizontalLay();
diff --git a/src/effects/Compressor.h b/src/effects/Compressor.h
index fc61aaa..c3299a1 100644
--- a/src/effects/Compressor.h
+++ b/src/effects/Compressor.h
@@ -31,6 +31,7 @@ class EffectCompressor: public EffectTwoPassSimpleMono {
public:
EffectCompressor();
+ virtual ~EffectCompressor();
virtual wxString GetEffectName() {
return wxString(_("Compressor..."));
diff --git a/src/effects/Contrast.cpp b/src/effects/Contrast.cpp
index 67df082..51a1fee 100644
--- a/src/effects/Contrast.cpp
+++ b/src/effects/Contrast.cpp
@@ -4,15 +4,8 @@
Contrast.cpp
-*******************************************************************//**
-
-\class EffectContrast
-\brief An effect to measure the difference between two sections of audio
-
-*//****************************************************************//**
-
\class ContrastDialog
-\brief Dialog used with EffectContrast
+\brief Dialog used for Contrast menu item
*//*******************************************************************/
@@ -57,24 +50,40 @@
#include "../PlatformCompatibility.h"
-EffectContrast::EffectContrast()
-{
- bFGset = false;
- bBGset = false;
-}
+static ContrastDialog *gContrastDialog = NULL;
-EffectContrast::~EffectContrast()
+void InitContrastDialog(wxWindow * parent)
{
- return;
-}
+ if(!gContrastDialog)
+ {
+ wxPoint where;
-bool EffectContrast::PromptUser()
-{
- if( !bFGset )
+ where.x = 150;
+ where.y = 150;
+
+ gContrastDialog = new ContrastDialog(parent, -1, _("Contrast Analysis"), where);
+
+
+ gContrastDialog->bFGset = false;
+ gContrastDialog->bBGset = false;
+ }
+
+ AudacityProject *p = GetActiveProject();
+ TrackListIterator iter(p->GetTracks());
+ Track *t = iter.First();
+ while (t) {
+ if (t->GetSelected() && t->GetKind() == Track::Wave) {
+ gContrastDialog->mT0 = p->mViewInfo.sel0;
+ gContrastDialog->mT1 = p->mViewInfo.sel1;
+ }
+ t = iter.Next();
+ }
+
+ if( !gContrastDialog->bFGset )
{
- SaveTimes(true, mT0, mT1);
- bFGset = true;
- if( !bBGset )
+ gContrastDialog->SaveTimes(true, gContrastDialog->mT0, gContrastDialog->mT1);
+ gContrastDialog->bFGset = true;
+ if( !gContrastDialog->bBGset )
{
wxMessageDialog m(NULL, _("Foreground times selected.\nNow select background and use Ctrl+Shift+T or menu again."), _("Contrast Tool Foreground"), wxOK);
m.ShowModal();
@@ -82,51 +91,59 @@ bool EffectContrast::PromptUser()
}
else
{
- if( !bBGset )
+ if( !gContrastDialog->bBGset )
{
- SaveTimes(false, mT0, mT1);
- bBGset = true;
+ gContrastDialog->SaveTimes(false, gContrastDialog->mT0, gContrastDialog->mT1);
+ gContrastDialog->bBGset = true;
}
}
- if( bFGset && bBGset )
+ if( gContrastDialog->bFGset && gContrastDialog->bBGset )
{
- ContrastDialog dlog(this, mParent);
-
- // Copy parameters into dialog from effect
- dlog.mForegroundStartT->SetTimeValue(mStartTimeF);
- dlog.mForegroundEndT->SetTimeValue(mEndTimeF);
- dlog.mBackgroundStartT->SetTimeValue(mStartTimeB);
- dlog.mBackgroundEndT->SetTimeValue(mEndTimeB);
+ // Copy parameters into dialog boxes
+ gContrastDialog->mForegroundStartT->SetTimeValue(gContrastDialog->mStartTimeF);
+ gContrastDialog->mForegroundEndT->SetTimeValue(gContrastDialog->mEndTimeF);
+ gContrastDialog->mBackgroundStartT->SetTimeValue(gContrastDialog->mStartTimeB);
+ gContrastDialog->mBackgroundEndT->SetTimeValue(gContrastDialog->mEndTimeB);
wxCommandEvent dummyEvt;
- dlog.OnGetForegroundDB(dummyEvt);
- dlog.OnGetBackgroundDB(dummyEvt);
+ gContrastDialog->OnGetForegroundDB(dummyEvt);
+ gContrastDialog->OnGetBackgroundDB(dummyEvt);
- dlog.CentreOnParent();
- dlog.ShowModal();
+ gContrastDialog->CentreOnParent();
+ gContrastDialog->Show();
- // Copy parameters from dialog back into effect
- mStartTimeF = dlog.mForegroundStartT->GetTimeValue();
- mEndTimeF = dlog.mForegroundEndT->GetTimeValue();
- mStartTimeB = dlog.mBackgroundStartT->GetTimeValue();
- mEndTimeB = dlog.mBackgroundEndT->GetTimeValue();
+ // Copy parameters back from dialog
+ gContrastDialog->mStartTimeF = gContrastDialog->mForegroundStartT->GetTimeValue();
+ gContrastDialog->mEndTimeF = gContrastDialog->mForegroundEndT->GetTimeValue();
+ gContrastDialog->mStartTimeB = gContrastDialog->mBackgroundStartT->GetTimeValue();
+ gContrastDialog->mEndTimeB = gContrastDialog->mBackgroundEndT->GetTimeValue();
}
+}
- return false;
+void CloseContrastDialog()
+{
+ if (gContrastDialog) {
+ delete gContrastDialog;
+ gContrastDialog = NULL;
+ }
}
-float EffectContrast::GetDB()
+float ContrastDialog::GetDB()
{
+// not good
+// why not?
+// what if more than one track?
float rms = float(0.0);
- TrackListIterator iter(mWaveTracks);
+ AudacityProject *p = GetActiveProject();
+ TrackListIterator iter(p->GetTracks());
Track *t = iter.First();
if(mT0 > mT1)
{
wxMessageDialog m(NULL, _("Start time after after end time!\nPlease enter reasonable times."), _("Error"), wxOK);
m.ShowModal();
- return 1234.0; // 'magic number', but the whole +ve dB range will never occur
+ return 1234.0; // 'magic number', but the whole +ve dB range will 'almost' never occur
}
if(mT0 < t->GetStartTime())
mT0 = t->GetStartTime();
@@ -150,27 +167,27 @@ float EffectContrast::GetDB()
return 20.0*log10(fabs(rms));
}
-double EffectContrast::GetStartTime()
+double ContrastDialog::GetStartTime()
{
return(mT0);
}
-void EffectContrast::SetStartTime(double t)
+void ContrastDialog::SetStartTime(double t)
{
mT0 = t;
}
-double EffectContrast::GetEndTime()
+double ContrastDialog::GetEndTime()
{
return(mT1);
}
-void EffectContrast::SetEndTime(double t)
+void ContrastDialog::SetEndTime(double t)
{
mT1 = t;
}
-void EffectContrast::SaveTimes(bool isForeground, double start, double end)
+void ContrastDialog::SaveTimes(bool isForeground, double start, double end)
{
if(isForeground)
{
@@ -185,17 +202,6 @@ void EffectContrast::SaveTimes(bool isForeground, double start, double end)
return;
}
-bool EffectContrast::Process()
-{
- wxMessageBox(_("Hello.\n")); // you should never see this!
- return true;
-}
-
-bool EffectContrast::CheckWhetherSkipEffect()
-{
- return true;
-}
-
// WDR: class implementations
//----------------------------------------------------------------------------
@@ -240,12 +246,15 @@ BEGIN_EVENT_TABLE(ContrastDialog,wxDialog)
END_EVENT_TABLE()
/* i18n-hint: WCAG2 is the 'Web Content Accessibility Guidelines (WCAG) 2.0', see http://www.w3.org/TR/WCAG20/ */
-ContrastDialog::ContrastDialog(EffectContrast * effect,
- wxWindow *parent) :
- EffectDialog( parent, _("WCAG2 Audio Contrast Analyzer"), ANALYZE_EFFECT)
+ContrastDialog::ContrastDialog(wxWindow * parent, wxWindowID id,
+ const wxString & title,
+ const wxPoint & pos):
+ wxDialog(parent, id, title, pos, wxDefaultSize,
+ wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER | wxMAXIMIZE_BOX )
{
- m_pEffect = effect;
-
+ foregrounddB = 1234.0;
+ backgrounddB = 1234.0;
+
// NULL out the control members until the controls are created.
m_pButton_GetForeground = NULL;
m_pButton_GetBackground = NULL;
@@ -253,66 +262,15 @@ ContrastDialog::ContrastDialog(EffectContrast * effect,
mForegroundEndT = NULL;
mBackgroundStartT = NULL;
mBackgroundEndT = NULL;
-
- mT0orig = m_pEffect->GetStartTime(); // keep copy of selection times
- mT1orig = m_pEffect->GetEndTime();
-
- Init();
-}
-
-ContrastDialog::~ContrastDialog()
-{
- mForegroundRMSText->Disconnect(wxEVT_KEY_DOWN, wxKeyEventHandler(ContrastDialog::OnChar));
- mBackgroundRMSText->Disconnect(wxEVT_KEY_DOWN, wxKeyEventHandler(ContrastDialog::OnChar));
- mPassFailText->Disconnect(wxEVT_KEY_DOWN, wxKeyEventHandler(ContrastDialog::OnChar));
- mDiffText->Disconnect(wxEVT_KEY_DOWN, wxKeyEventHandler(ContrastDialog::OnChar));
-}
-
-void ContrastDialog::OnGetForegroundDB( wxCommandEvent &event )
-{
- m_pEffect->SetStartTime(mForegroundStartT->GetTimeValue());
- m_pEffect->SetEndTime(mForegroundEndT->GetTimeValue());
- foregrounddB = m_pEffect->GetDB();
- m_pButton_GetForeground->Enable(false);
- m_pButton_GetForeground->SetLabel(_("Measured"));
- m_pButton_UseCurrentF->SetFocus();
- results();
-}
-
-void ContrastDialog::OnGetBackgroundDB( wxCommandEvent &event )
-{
- m_pEffect->SetStartTime(mBackgroundStartT->GetTimeValue());
- m_pEffect->SetEndTime(mBackgroundEndT->GetTimeValue());
- backgrounddB = m_pEffect->GetDB();
- m_pButton_GetBackground->Enable(false);
- m_pButton_GetBackground->SetLabel(_("Measured"));
- m_pButton_UseCurrentB->SetFocus();
- results();
-}
-
-void ContrastDialog::OnGetURL(wxCommandEvent &event)
-{
- wxString page = wxT("http://www.eramp.com/WCAG_2_audio_contrast_tool_help.htm");
- ::OpenInDefaultBrowser(page);
-}
-
-void ContrastDialog::OnOK(wxCommandEvent &event)
-{
- wxCommandEvent dummyEvt;
- OnReset(event);
- EndModal(0);
-}
-
-void ContrastDialog::OnCloseWithoutReset(wxCommandEvent &event)
-{
- EndModal(0);
-}
-
-void ContrastDialog::PopulateOrExchange(ShuttleGui & S)
-{
wxTextValidator vld(wxFILTER_NUMERIC);
wxString number;
+ AudacityProject *p = GetActiveProject();
+ mProjectRate = p->GetRate();
+
+ ShuttleGui S(this, eIsCreating);
+
+ S.SetBorder(5);
S.StartHorizontalLay(wxCENTER, false);
{
S.AddTitle(_("Contrast Analyzer"));
@@ -340,7 +298,7 @@ void ContrastDialog::PopulateOrExchange(ShuttleGui & S)
ID_FOREGROUNDSTART_T,
wxT(""),
0.0,
- m_pEffect->mProjectRate,
+ mProjectRate,
wxDefaultPosition,
wxDefaultSize,
true);
@@ -358,7 +316,7 @@ void ContrastDialog::PopulateOrExchange(ShuttleGui & S)
ID_FOREGROUNDEND_T,
wxT(""),
0.0,
- m_pEffect->mProjectRate,
+ mProjectRate,
wxDefaultPosition,
wxDefaultSize,
true);
@@ -384,7 +342,7 @@ void ContrastDialog::PopulateOrExchange(ShuttleGui & S)
ID_BACKGROUNDSTART_T,
wxT(""),
0.0,
- m_pEffect->mProjectRate,
+ mProjectRate,
wxDefaultPosition,
wxDefaultSize,
true);
@@ -402,7 +360,7 @@ void ContrastDialog::PopulateOrExchange(ShuttleGui & S)
ID_BACKGROUNDEND_T,
wxT(""),
0.0,
- m_pEffect->mProjectRate,
+ mProjectRate,
wxDefaultPosition,
wxDefaultSize,
true);
@@ -448,16 +406,66 @@ void ContrastDialog::PopulateOrExchange(ShuttleGui & S)
m_pButton_GetURL = S.Id(ID_BUTTON_GETURL).AddButton(_("Help for WCAG2 Audio Contrast Analyzer"));
}
S.EndStatic();
- //What happens when we close the dialog (OK button is standard and clears values)
+ //What happens when we close the dialog
S.StartStatic( _("Control"));
{
- S.AddFixedText(_("Note: The 'OK' button resets time values."));
- m_pButton_Close = S.Id(ID_BUTTON_CLOSE).AddButton(_("Close but keep times"));
+ m_pButton_Close = S.Id(ID_BUTTON_CLOSE).AddButton(_("Close (keeping times)"));
}
S.EndStatic();
}
S.EndHorizontalLay();
+ Layout();
Fit();
+ SetMinSize(GetSize());
+ Center();
+}
+
+ContrastDialog::~ContrastDialog()
+{
+ mForegroundRMSText->Disconnect(wxEVT_KEY_DOWN, wxKeyEventHandler(ContrastDialog::OnChar));
+ mBackgroundRMSText->Disconnect(wxEVT_KEY_DOWN, wxKeyEventHandler(ContrastDialog::OnChar));
+ mPassFailText->Disconnect(wxEVT_KEY_DOWN, wxKeyEventHandler(ContrastDialog::OnChar));
+ mDiffText->Disconnect(wxEVT_KEY_DOWN, wxKeyEventHandler(ContrastDialog::OnChar));
+}
+
+void ContrastDialog::OnGetForegroundDB( wxCommandEvent &event )
+{
+ SetStartTime(mForegroundStartT->GetTimeValue());
+ SetEndTime(mForegroundEndT->GetTimeValue());
+ foregrounddB = GetDB();
+ m_pButton_GetForeground->Enable(false);
+ m_pButton_GetForeground->SetLabel(_("Measured"));
+ m_pButton_UseCurrentF->SetFocus();
+ results();
+}
+
+void ContrastDialog::OnGetBackgroundDB( wxCommandEvent &event )
+{
+ SetStartTime(mBackgroundStartT->GetTimeValue());
+ SetEndTime(mBackgroundEndT->GetTimeValue());
+ backgrounddB = GetDB();
+ m_pButton_GetBackground->Enable(false);
+ m_pButton_GetBackground->SetLabel(_("Measured"));
+ m_pButton_UseCurrentB->SetFocus();
+ results();
+}
+
+void ContrastDialog::OnGetURL(wxCommandEvent &event)
+{
+ wxString page = wxT("http://www.eramp.com/WCAG_2_audio_contrast_tool_help.htm");
+ ::OpenInDefaultBrowser(page);
+}
+
+void ContrastDialog::OnOK(wxCommandEvent &event)
+{
+ wxCommandEvent dummyEvt;
+ OnReset(event);
+ EndModal(0);
+}
+
+void ContrastDialog::OnCloseWithoutReset(wxCommandEvent &event)
+{
+ Show(false);
}
void ContrastDialog::OnForegroundStartT(wxCommandEvent & event)
@@ -486,21 +494,33 @@ void ContrastDialog::OnBackgroundEndT(wxCommandEvent & event)
void ContrastDialog::OnUseSelectionF(wxCommandEvent & event)
{
- mForegroundStartT->SetTimeValue(mT0orig);
- mForegroundEndT->SetTimeValue(mT1orig);
-
- m_pEffect->SetStartTime(mT0orig);
- m_pEffect->SetEndTime(mT1orig);
+ AudacityProject *p = GetActiveProject();
+ TrackListIterator iter(p->GetTracks());
+ Track *t = iter.First();
+ while (t) {
+ if (t->GetSelected() && t->GetKind() == Track::Wave) {
+ mForegroundStartT->SetTimeValue(p->mViewInfo.sel0);
+ mForegroundEndT->SetTimeValue(p->mViewInfo.sel1);
+ break;
+ }
+ t = iter.Next();
+ }
OnGetForegroundDB(event);
}
void ContrastDialog::OnUseSelectionB(wxCommandEvent & event)
{
- mBackgroundStartT->SetTimeValue(mT0orig);
- mBackgroundEndT->SetTimeValue(mT1orig);
-
- m_pEffect->SetStartTime(mT0orig);
- m_pEffect->SetEndTime(mT1orig);
+ AudacityProject *p = GetActiveProject();
+ TrackListIterator iter(p->GetTracks());
+ Track *t = iter.First();
+ while (t) {
+ if (t->GetSelected() && t->GetKind() == Track::Wave) {
+ mBackgroundStartT->SetTimeValue(p->mViewInfo.sel0);
+ mBackgroundEndT->SetTimeValue(p->mViewInfo.sel1);
+ break;
+ }
+ t = iter.Next();
+ }
OnGetBackgroundDB(event);
}
@@ -642,8 +662,8 @@ void ContrastDialog::OnExport(wxCommandEvent & event)
void ContrastDialog::OnReset(wxCommandEvent & event)
{
- m_pEffect->bFGset = false;
- m_pEffect->bBGset = false;
+ bFGset = false;
+ bBGset = false;
mForegroundStartT->SetTimeValue(0.0);
mForegroundEndT->SetTimeValue(0.0);
diff --git a/src/effects/Contrast.h b/src/effects/Contrast.h
index 204eeb4..c6c4f2d 100644
--- a/src/effects/Contrast.h
+++ b/src/effects/Contrast.h
@@ -6,10 +6,9 @@
**********************************************************************/
-#ifndef __AUDACITY_EFFECT_CONTRAST__
-#define __AUDACITY_EFFECT_CONTRAST__
+#ifndef __AUDACITY_CONTRAST_DIALOG__
+#define __AUDACITY_CONTRAST_DIALOG__
-#include "Effect.h"
#include "../widgets/TimeTextCtrl.h"
#include <wx/dialog.h>
@@ -22,63 +21,8 @@ class wxString;
class Envelope;
class WaveTrack;
-class EffectContrast: public Effect {
-
-public:
-
- EffectContrast();
- virtual ~EffectContrast();
-
- virtual wxString GetEffectName() {
- return wxString(_("Contrast...\tCtrl+Shift+T"));
- }
-
- virtual int GetEffectFlags() {
- return BUILTIN_EFFECT | ANALYZE_EFFECT;
- }
-
- virtual std::set<wxString> GetEffectCategories() {
- std::set<wxString> result;
- result.insert(wxT("http://lv2plug.in/ns/lv2core#AnalyserPlugin"));
- return result;
- }
-
- virtual wxString GetEffectIdentifier() {
- return wxString(wxT("Contrast"));
- }
-
- virtual wxString GetEffectAction() {
- if (mDoBackground)
- return wxString(_("Measuring background"));
- else
- return wxString(_("Measuring foreground"));
- }
-
- virtual bool PromptUser();
-
- virtual bool CheckWhetherSkipEffect();
- virtual bool Process();
- void SaveTimes(bool, double, double);
- double length;
-
-private:
- bool mDoBackground;
- float GetDB();
- double GetStartTime();
- void SetStartTime(double);
- double GetEndTime();
- void SetEndTime(double);
- double mStartTimeF;
- double mEndTimeF;
- bool bFGset;
- double mStartTimeB;
- double mEndTimeB;
- bool bBGset;
-
-friend class ContrastDialog;
-};
-
-// WDR: class declarations
+void InitContrastDialog(wxWindow * parent);
+void CloseContrastDialog();
//----------------------------------------------------------------------------
// ContrastDialog
@@ -86,19 +30,42 @@ friend class ContrastDialog;
// Declare window functions
-class ContrastDialog: public EffectDialog
+class ContrastDialog:public wxDialog
{
public:
// constructors and destructors
- ContrastDialog(EffectContrast * effect,
- wxWindow *parent);
+ ContrastDialog(wxWindow * parent, wxWindowID id,
+ const wxString & title, const wxPoint & pos);
~ContrastDialog();
- void PopulateOrExchange(ShuttleGui & S);
-
void OnGetForegroundDB( wxCommandEvent &event );
void OnGetBackgroundDB( wxCommandEvent &event );
+ wxButton * m_pButton_GetBackground;
+ wxButton * m_pButton_GetForeground;
+ wxButton * m_pButton_UseCurrentF;
+ wxButton * m_pButton_UseCurrentB;
+ wxButton * m_pButton_GetURL;
+ wxButton * m_pButton_Export;
+ wxButton * m_pButton_Reset;
+ wxButton * m_pButton_Close;
+
+ TimeTextCtrl *mForegroundStartT;
+ TimeTextCtrl *mForegroundEndT;
+ TimeTextCtrl *mBackgroundStartT;
+ TimeTextCtrl *mBackgroundEndT;
+
+ bool bFGset;
+ bool bBGset;
+ double mT0;
+ double mT1;
+ double mProjectRate;
+ void SaveTimes(bool, double, double);
+ double mStartTimeF;
+ double mEndTimeF;
+ double mStartTimeB;
+ double mEndTimeB;
+
private:
// handlers
void OnGetURL(wxCommandEvent &event);
@@ -125,25 +92,15 @@ private:
double mT0orig;
double mT1orig;
- public:
-
- EffectContrast * m_pEffect;
-
- wxButton * m_pButton_GetBackground;
- wxButton * m_pButton_GetForeground;
- wxButton * m_pButton_UseCurrentF;
- wxButton * m_pButton_UseCurrentB;
- wxButton * m_pButton_GetURL;
- wxButton * m_pButton_Export;
- wxButton * m_pButton_Reset;
- wxButton * m_pButton_Close;
+ bool mDoBackground;
+ float GetDB();
+ double GetStartTime();
+ void SetStartTime(double);
+ double GetEndTime();
+ void SetEndTime(double);
- TimeTextCtrl *mForegroundStartT;
- TimeTextCtrl *mForegroundEndT;
- TimeTextCtrl *mBackgroundStartT;
- TimeTextCtrl *mBackgroundEndT;
+ double length;
-private:
DECLARE_EVENT_TABLE()
};
diff --git a/src/effects/DtmfGen.cpp b/src/effects/DtmfGen.cpp
index f4e1fba..1d3febb 100644
--- a/src/effects/DtmfGen.cpp
+++ b/src/effects/DtmfGen.cpp
@@ -65,11 +65,11 @@ bool EffectDtmf::PromptUser()
if (mT1 > mT0) {
// there is a selection: let's fit in there...
- dtmfDuration = mT1 - mT0;
+ mDuration = mT1 - mT0;
dlog.dIsSelection = true;
} else {
// retrieve last used values
- gPrefs->Read(wxT("/CsPresets/DtmfGen_SequenceDuration"), &dtmfDuration, 1L);
+ gPrefs->Read(wxT("/CsPresets/DtmfGen_SequenceDuration"), &mDuration, 1L);
dlog.dIsSelection = false;
}
/// \todo this code shouldn't be using /CsPresets - need to review its use
@@ -82,7 +82,7 @@ bool EffectDtmf::PromptUser()
// Initialize dialog locals
dlog.dString = dtmfString;
dlog.dDutyCycle = dtmfDutyCycle;
- dlog.dDuration = dtmfDuration;
+ dlog.dDuration = mDuration;
dlog.dAmplitude = dtmfAmplitude;
// start dialog
@@ -95,7 +95,7 @@ bool EffectDtmf::PromptUser()
// if there was an OK, retrieve values
dtmfString = dlog.dString;
dtmfDutyCycle = dlog.dDutyCycle;
- dtmfDuration = dlog.dDuration;
+ mDuration = dlog.dDuration;
dtmfAmplitude = dlog.dAmplitude;
dtmfNTones = dlog.dNTones;
@@ -240,159 +240,124 @@ bool EffectDtmf::MakeDtmfTone(float *buffer, sampleCount len, float fs, wxChar t
return true;
}
-bool EffectDtmf::Process()
+bool EffectDtmf::GenerateTrack(WaveTrack *tmp,
+ const WaveTrack &track,
+ int ntrack)
{
- if (dtmfDuration <= 0.0)
- return false;
-
-#ifdef EXPERIMENTAL_FULL_LINKING
- HandleLinkedTracksOnGenerate(dtmfDuration, mT0);
-#endif
-
- //Iterate over each track
- this->CopyInputWaveTracks(); // Set up mOutputWaveTracks.
bool bGoodResult = true;
- int ntrack = 0;
- TrackListIterator iter(mOutputWaveTracks);
- WaveTrack *track = (WaveTrack *)iter.First();
- while (track) {
- // new tmp track, to fill with dtmf sequence
- // we will build the track by adding a tone, then a silence, next tone, and so on...
- WaveTrack *tmp = mFactory->NewWaveTrack(track->GetSampleFormat(), track->GetRate());
-
- // all dtmf sequence durations in samples from seconds
- numSamplesSequence = (sampleCount)(dtmfDuration * track->GetRate() + 0.5);
- numSamplesTone = (sampleCount)(dtmfTone * track->GetRate() + 0.5);
- numSamplesSilence = (sampleCount)(dtmfSilence * track->GetRate() + 0.5);
-
- // recalculate the sum, and spread the difference - due to approximations.
- // Since diff should be in the order of "some" samples, a division (resulting in zero)
- // is not sufficient, so we add the additional remaining samples in each tone/silence block,
- // at least until available.
- int diff = numSamplesSequence - (dtmfNTones*numSamplesTone) - (dtmfNTones-1)*numSamplesSilence;
- if (diff>dtmfNTones) {
- // in this case, both these values would change, so it makes sense to recalculate diff
- // otherwise just keep the value we already have
-
- // should always be the case that dtmfNTones>1, as if 0, we don't even start processing,
- // and with 1 there is no difference to spread (no silence slot)...
- wxASSERT(dtmfNTones > 1);
- numSamplesTone += (diff/(dtmfNTones));
- numSamplesSilence += (diff/(dtmfNTones-1));
- diff = numSamplesSequence - (dtmfNTones*numSamplesTone) - (dtmfNTones-1)*numSamplesSilence;
- }
- // this var will be used as extra samples distributor
- int extra=0;
-
- sampleCount i = 0;
- sampleCount j = 0;
- int n=0; // pointer to string in dtmfString
- sampleCount block;
- bool isTone = true;
- float *data = new float[tmp->GetMaxBlockSize()];
-
- // for the whole dtmf sequence, we will be generating either tone or silence
- // according to a bool value, and this might be done in small chunks of size
- // 'block', as a single tone might sometimes be larger than the block
- // tone and silence generally have different duration, thus two generation blocks
- //
- // Note: to overcome a 'clicking' noise introduced by the abrupt transition from/to
- // silence, I added a fade in/out of 1/250th of a second (4ms). This can still be
- // tweaked but gives excellent results at 44.1kHz: I haven't tried other freqs.
- // A problem might be if the tone duration is very short (<10ms)... (?)
- //
- // One more problem is to deal with the approximations done when calculating the duration
- // of both tone and silence: in some cases the final sum might not be same as the initial
- // duration. So, to overcome this, we had a redistribution block up, and now we will spread
- // the remaining samples in every bin in order to achieve the full duration: test case was
- // to generate an 11 tone DTMF sequence, in 4 seconds, and with DutyCycle=75%: after generation
- // you ended up with 3.999s or in other units: 3 seconds and 44097 samples.
- //
- while ((i < numSamplesSequence) && bGoodResult) {
- if (isTone)
+
+ // all dtmf sequence durations in samples from seconds
+ numSamplesSequence = (sampleCount)(mDuration * track.GetRate() + 0.5);
+ numSamplesTone = (sampleCount)(dtmfTone * track.GetRate() + 0.5);
+ numSamplesSilence = (sampleCount)(dtmfSilence * track.GetRate() + 0.5);
+
+ // recalculate the sum, and spread the difference - due to approximations.
+ // Since diff should be in the order of "some" samples, a division (resulting in zero)
+ // is not sufficient, so we add the additional remaining samples in each tone/silence block,
+ // at least until available.
+ int diff = numSamplesSequence - (dtmfNTones*numSamplesTone) - (dtmfNTones-1)*numSamplesSilence;
+ if (diff>dtmfNTones) {
+ // in this case, both these values would change, so it makes sense to recalculate diff
+ // otherwise just keep the value we already have
+
+ // should always be the case that dtmfNTones>1, as if 0, we don't even start processing,
+ // and with 1 there is no difference to spread (no silence slot)...
+ wxASSERT(dtmfNTones > 1);
+ numSamplesTone += (diff/(dtmfNTones));
+ numSamplesSilence += (diff/(dtmfNTones-1));
+ diff = numSamplesSequence - (dtmfNTones*numSamplesTone) - (dtmfNTones-1)*numSamplesSilence;
+ }
+ // this var will be used as extra samples distributor
+ int extra=0;
+
+ sampleCount i = 0;
+ sampleCount j = 0;
+ int n=0; // pointer to string in dtmfString
+ sampleCount block;
+ bool isTone = true;
+ float *data = new float[tmp->GetMaxBlockSize()];
+
+ // for the whole dtmf sequence, we will be generating either tone or silence
+ // according to a bool value, and this might be done in small chunks of size
+ // 'block', as a single tone might sometimes be larger than the block
+ // tone and silence generally have different duration, thus two generation blocks
+ //
+ // Note: to overcome a 'clicking' noise introduced by the abrupt transition from/to
+ // silence, I added a fade in/out of 1/250th of a second (4ms). This can still be
+ // tweaked but gives excellent results at 44.1kHz: I haven't tried other freqs.
+ // A problem might be if the tone duration is very short (<10ms)... (?)
+ //
+ // One more problem is to deal with the approximations done when calculating the duration
+ // of both tone and silence: in some cases the final sum might not be same as the initial
+ // duration. So, to overcome this, we had a redistribution block up, and now we will spread
+ // the remaining samples in every bin in order to achieve the full duration: test case was
+ // to generate an 11 tone DTMF sequence, in 4 seconds, and with DutyCycle=75%: after generation
+ // you ended up with 3.999s or in other units: 3 seconds and 44097 samples.
+ //
+ while ((i < numSamplesSequence) && bGoodResult) {
+ if (isTone)
// generate tone
- {
- // the statement takes care of extracting one sample from the diff bin and
- // adding it into the tone block until depletion
- extra=(diff-- > 0?1:0);
- for(j=0; j < numSamplesTone+extra && bGoodResult; j+=block) {
- block = tmp->GetBestBlockSize(j);
- if (block > (numSamplesTone+extra - j))
- block = numSamplesTone+extra - j;
-
- // generate the tone and append
- MakeDtmfTone(data, block, track->GetRate(), dtmfString[n], j, numSamplesTone, dtmfAmplitude);
- tmp->Append((samplePtr)data, floatSample, block);
- //Update the Progress meter
- if (TrackProgress(ntrack, (double)(i+j) / numSamplesSequence))
- bGoodResult = false;
- }
- i += numSamplesTone;
- n++;
- if(n>=dtmfNTones)break;
+ {
+ // the statement takes care of extracting one sample from the diff bin and
+ // adding it into the tone block until depletion
+ extra=(diff-- > 0?1:0);
+ for(j=0; j < numSamplesTone+extra && bGoodResult; j+=block) {
+ block = tmp->GetBestBlockSize(j);
+ if (block > (numSamplesTone+extra - j))
+ block = numSamplesTone+extra - j;
+
+ // generate the tone and append
+ MakeDtmfTone(data, block, track.GetRate(), dtmfString[n], j, numSamplesTone, dtmfAmplitude);
+ tmp->Append((samplePtr)data, floatSample, block);
+ //Update the Progress meter
+ if (TrackProgress(ntrack, (double)(i+j) / numSamplesSequence))
+ bGoodResult = false;
}
- else
+ i += numSamplesTone;
+ n++;
+ if(n>=dtmfNTones)break;
+ }
+ else
// generate silence
- {
- // the statement takes care of extracting one sample from the diff bin and
- // adding it into the silence block until depletion
- extra=(diff-- > 0?1:0);
- for(j=0; j < numSamplesSilence+extra && bGoodResult; j+=block) {
- block = tmp->GetBestBlockSize(j);
- if (block > (numSamplesSilence+extra - j))
- block = numSamplesSilence+extra - j;
-
- // generate silence and append
- memset(data, 0, sizeof(float)*block);
- tmp->Append((samplePtr)data, floatSample, block);
- //Update the Progress meter
- if (TrackProgress(ntrack, (double)(i+j) / numSamplesSequence))
- bGoodResult = false;
- }
- i += numSamplesSilence;
+ {
+ // the statement takes care of extracting one sample from the diff bin and
+ // adding it into the silence block until depletion
+ extra=(diff-- > 0?1:0);
+ for(j=0; j < numSamplesSilence+extra && bGoodResult; j+=block) {
+ block = tmp->GetBestBlockSize(j);
+ if (block > (numSamplesSilence+extra - j))
+ block = numSamplesSilence+extra - j;
+
+ // generate silence and append
+ memset(data, 0, sizeof(float)*block);
+ tmp->Append((samplePtr)data, floatSample, block);
+ //Update the Progress meter
+ if (TrackProgress(ntrack, (double)(i+j) / numSamplesSequence))
+ bGoodResult = false;
}
- // flip flag
- isTone=!isTone;
-
- } // finished the whole dtmf sequence
-
- delete[] data;
-
- tmp->Flush();
- track->HandleClear(mT0, mT1, false, false);
- track->HandlePaste(mT0, tmp);
- delete tmp;
+ i += numSamplesSilence;
+ }
+ // flip flag
+ isTone=!isTone;
- if (!bGoodResult)
- break;
+ } // finished the whole dtmf sequence
- //Iterate to the next track
- ntrack++;
- track = (WaveTrack *)iter.Next();
- }
+ delete[] data;
+ return bGoodResult;
+}
- if (bGoodResult)
- {
- /*
- save last used values
- save duration unless value was got from selection, so we save only
- when user explicitely setup a value
+void EffectDtmf::Success()
+{
+ /* save last used values
+ save duration unless value was got from selection, so we save only
+ when user explicitely setup a value
*/
- if (mT1 == mT0)
- gPrefs->Write(wxT("/CsPresets/DtmfGen_SequenceDuration"), dtmfDuration);
-
- gPrefs->Write(wxT("/CsPresets/DtmfGen_String"), dtmfString);
- gPrefs->Write(wxT("/CsPresets/DtmfGen_DutyCycle"), dtmfDutyCycle);
- gPrefs->Write(wxT("/CsPresets/DtmfGen_Amplitude"), dtmfAmplitude);
+ if (mT1 == mT0)
+ gPrefs->Write(wxT("/CsPresets/DtmfGen_SequenceDuration"), mDuration);
- // Update selection: this is not accurate if my calculations are wrong.
- // To validate, once the effect is done, unselect, and select all, then
- // see what the selection length is being reported (in sec,ms,samples)
- mT1 = mT0 + dtmfDuration;
- }
-
- this->ReplaceProcessedWaveTracks(bGoodResult);
- return bGoodResult;
+ gPrefs->Write(wxT("/CsPresets/DtmfGen_String"), dtmfString);
+ gPrefs->Write(wxT("/CsPresets/DtmfGen_DutyCycle"), dtmfDutyCycle);
+ gPrefs->Write(wxT("/CsPresets/DtmfGen_Amplitude"), dtmfAmplitude);
}
//----------------------------------------------------------------------------
diff --git a/src/effects/DtmfGen.h b/src/effects/DtmfGen.h
index 053d053..cac8cf2 100644
--- a/src/effects/DtmfGen.h
+++ b/src/effects/DtmfGen.h
@@ -25,14 +25,15 @@
#include "../WaveTrack.h"
#include "../widgets/TimeTextCtrl.h"
-#include "Effect.h"
+#include "Generator.h"
#define __UNINITIALIZED__ (-1)
-class EffectDtmf:public Effect {
+class EffectDtmf : public Generator {
public:
EffectDtmf() {
+ SetEffectFlags(BUILTIN_EFFECT | INSERT_EFFECT);
}
virtual wxString GetEffectName() {
@@ -50,19 +51,14 @@ class EffectDtmf:public Effect {
}
virtual wxString GetEffectDescription() {
- return wxString::Format(_("Applied effect: Generate DTMF tones, %.6lf seconds"), dtmfDuration);
+ return wxString::Format(_("Applied effect: Generate DTMF tones, %.6lf seconds"), mDuration);
}
virtual wxString GetEffectAction() {
return wxString(_("Generating DTMF tones"));
}
- virtual int GetEffectFlags() {
- return BUILTIN_EFFECT | INSERT_EFFECT;
- }
-
virtual bool PromptUser();
- virtual bool Process();
virtual bool TransferParameters( Shuttle & shuttle );
private:
@@ -72,7 +68,6 @@ class EffectDtmf:public Effect {
int dtmfNTones; // total number of tones to generate
double dtmfTone; // duration of a single tone in ms
double dtmfSilence; // duration of silence between tones in ms
- double dtmfDuration; // duration of the whole dtmf tone sequence in seconds
double dtmfDutyCycle; // ratio of dtmfTone/(dtmfTone+dtmfSilence)
double dtmfAmplitude; // amplitude of dtmf tone sequence, restricted to (0-1)
@@ -80,6 +75,8 @@ class EffectDtmf:public Effect {
virtual bool MakeDtmfTone(float *buffer, sampleCount len, float fs,
wxChar tone, sampleCount last,
sampleCount total, float amplitude);
+ bool GenerateTrack(WaveTrack *tmp, const WaveTrack &track, int ntrack);
+ void Success();
// friendship ...
friend class DtmfDialog;
diff --git a/src/effects/Echo.cpp b/src/effects/Echo.cpp
index 349e9f3..36f8dca 100644
--- a/src/effects/Echo.cpp
+++ b/src/effects/Echo.cpp
@@ -75,10 +75,10 @@ bool EffectEcho::TransferParameters( Shuttle & shuttle )
bool EffectEcho::Process()
{
- this->CopyInputWaveTracks(); // Set up mOutputWaveTracks.
+ this->CopyInputTracks(); // Set up mOutputTracks.
bool bGoodResult = true;
- TrackListIterator iter(mOutputWaveTracks);
+ SelectedTrackListOfKindIterator iter(Track::Wave, mOutputTracks);
WaveTrack *track = (WaveTrack *) iter.First();
int count = 0;
while (track) {
@@ -103,7 +103,7 @@ bool EffectEcho::Process()
count++;
}
- this->ReplaceProcessedWaveTracks(bGoodResult);
+ this->ReplaceProcessedTracks(bGoodResult);
return bGoodResult;
}
diff --git a/src/effects/Effect.cpp b/src/effects/Effect.cpp
index d3b151b..c4ce1b3 100644
--- a/src/effects/Effect.cpp
+++ b/src/effects/Effect.cpp
@@ -29,6 +29,7 @@ greater use in future.
#include <wx/progdlg.h>
#include <wx/sizer.h>
#include <wx/timer.h>
+#include <wx/hashmap.h>
#include "Effect.h"
#include "../AudioIO.h"
@@ -38,6 +39,9 @@ greater use in future.
#include "../WaveTrack.h"
#include "../widgets/ProgressDialog.h"
#include "../ondemand/ODManager.h"
+
+WX_DECLARE_VOIDPTR_HASH_MAP( bool, t2bHash );
+
//
// public static methods
//
@@ -59,30 +63,29 @@ wxString Effect::StripAmpersand(const wxString& str)
Effect::Effect()
{
- mWaveTracks = NULL;
- mOutputWaveTracks = NULL;
+ mTracks = NULL;
+ mOutputTracks = NULL;
+ mOutputTracksType = Track::None;
+ mLength = 0;
+ mNumTracks = 0;
+ mNumGroups = 0;
// Can change effect flags later (this is the new way)
// OR using the old way, over-ride GetEffectFlags().
- mFlags = BUILTIN_EFFECT | PROCESS_EFFECT | ADVANCED_EFFECT ;
+ mFlags = BUILTIN_EFFECT | PROCESS_EFFECT | ADVANCED_EFFECT;
}
bool Effect::DoEffect(wxWindow *parent, int flags,
double projectRate,
TrackList *list,
TrackFactory *factory,
- double *t0, double *t1)
+ double *t0, double *t1, wxString params)
{
wxASSERT(*t0 <= *t1);
- if (mWaveTracks) {
- delete mWaveTracks;
- mWaveTracks = NULL;
- }
-
- if (mOutputWaveTracks) {
- delete mOutputWaveTracks;
- mOutputWaveTracks = NULL;
+ if (mOutputTracks) {
+ delete mOutputTracks;
+ mOutputTracks = NULL;
}
mFactory = factory;
@@ -93,9 +96,30 @@ bool Effect::DoEffect(wxWindow *parent, int flags,
mT1 = *t1;
CountWaveTracks();
+ // Note: Init may read parameters from preferences
if (!Init())
return false;
+ // If a parameter string was provided, it overrides any remembered settings
+ // (but if the user is to be prompted, that takes priority)
+ if (!params.IsEmpty())
+ {
+ ShuttleCli shuttle;
+ shuttle.mParams = params;
+ shuttle.mbStoreInClient=true;
+ if( !TransferParameters( shuttle ))
+ {
+ wxMessageBox(
+ wxString::Format(
+ _("Could not set parameters of effect %s\n to %s."),
+ GetEffectName().c_str(),
+ params.c_str()
+ )
+ );
+ return false;
+ }
+ }
+
// Don't prompt user if we are dealing with a
// effect that is already configured, e.g. repeating
// the last effect on a different selection.
@@ -116,11 +140,10 @@ bool Effect::DoEffect(wxWindow *parent, int flags,
End();
- delete mWaveTracks;
- if (mOutputWaveTracks != mWaveTracks) // If processing completed successfully, they should be the same.
- delete mOutputWaveTracks;
- mWaveTracks = NULL;
- mOutputWaveTracks = NULL;
+ if (mOutputTracks) {
+ delete mOutputTracks;
+ mOutputTracks = NULL;
+ }
if (returnVal) {
*t0 = mT0;
@@ -132,121 +155,186 @@ bool Effect::DoEffect(wxWindow *parent, int flags,
bool Effect::TotalProgress(double frac)
{
- return !mProgress->Update(frac);
+ int updateResult = mProgress->Update(frac);
+ if (updateResult == eProgressSuccess)
+ return false;
+ return true;
}
bool Effect::TrackProgress(int whichTrack, double frac)
{
- return !mProgress->Update(whichTrack + frac, (double) mNumTracks);
+ int updateResult = mProgress->Update(whichTrack + frac, (double) mNumTracks);
+ if (updateResult == eProgressSuccess)
+ return false;
+ return true;
}
bool Effect::TrackGroupProgress(int whichGroup, double frac)
{
- return !mProgress->Update(whichGroup + frac, (double) mNumGroups);
+ int updateResult = mProgress->Update(whichGroup + frac, (double) mNumGroups);
+ if (updateResult == eProgressSuccess)
+ return false;
+ return true;
+}
+
+void Effect::GetSamples(WaveTrack *track, sampleCount *start, sampleCount *len)
+{
+ double trackStart = track->GetStartTime();
+ double trackEnd = track->GetEndTime();
+ double t0 = mT0 < trackStart ? trackStart : mT0;
+ double t1 = mT1 > trackEnd ? trackEnd : mT1;
+
+ if (mFlags & INSERT_EFFECT) {
+ t1 = t0 + mLength;
+ if (mT0 == mT1) {
+ // Not really part of the calculation, but convenient to put here
+ track->InsertSilence(t0, t1);
+ }
+ }
+
+ if (t1 > t0) {
+ *start = track->TimeToLongSamples(t0);
+ sampleCount end = track->TimeToLongSamples(t1);
+ *len = (sampleCount)(end - *start);
+ }
+ else {
+ *start = 0;
+ *len = 0;
+ }
}
//
// private methods
//
-// Use these two methods to copy the input tracks to mOutputWaveTracks, if
+// Use these two methods to copy the input tracks to mOutputTracks, if
// doing the processing on them, and replacing the originals only on success (and not cancel).
-void Effect::CopyInputWaveTracks()
+// Copy the group tracks that have tracks selected
+void Effect::CopyInputTracks(int trackType)
{
- if (this->GetNumWaveTracks() <= 0)
- return;
+ // Reset map
+ mIMap.Clear();
+ mOMap.Clear();
- // Copy the mWaveTracks, to process the copies.
- TrackListIterator iterIn(mWaveTracks);
- WaveTrack* pInWaveTrack = (WaveTrack*)(iterIn.First());
- mOutputWaveTracks = new TrackList();
- WaveTrack* pOutWaveTrack = NULL;
- while (pInWaveTrack != NULL)
- {
- pOutWaveTrack = mFactory->DuplicateWaveTrack(*(WaveTrack*)pInWaveTrack);
- mOutputWaveTracks->Add(pOutWaveTrack);
- pInWaveTrack = (WaveTrack*)(iterIn.Next());
-
- //swap on demand tasks - they should now be processed on pOutWaveTrack.
- //need to undo this when the user hits cancel.
-#ifdef EXPERIMENTAL_ONDEMAND
- //TODO: this is complicated because concurrent tasks/effects will write over the same blockfile. Thus if the
-//compute summary task goes last the effect will be overwritten. we need a lot of mutexes.
- // ODManager::Instance()->ReplaceTaskWaveTrack(pInputTrack,pOutputTrack);
-#endif
- }
-}
+ mOutputTracks = new TrackList();
+ mOutputTracksType = trackType;
+ //iterate over tracks of type trackType (All types if Track::All)
+ TrackListOfKindIterator aIt(trackType, mTracks);
+ t2bHash added;
-// If bGoodResult, replace mWaveTracks tracks in mTracks with successfully processed
-// mOutputWaveTracks copies, get rid of old mWaveTracks, and set mWaveTracks to mOutputWaveTracks.
-// Else clear and delete mOutputWaveTracks copies.
-void Effect::ReplaceProcessedWaveTracks(const bool bGoodResult)
-{
- if (bGoodResult)
- {
- // Circular replacement of the input wave tracks with the processed mOutputWaveTracks tracks.
- // But mWaveTracks is temporary, so replace in mTracks. More bookkeeping.
- TrackListIterator iterIn(mWaveTracks);
- WaveTrack* pInWaveTrack = (WaveTrack*)(iterIn.First());
-
- wxASSERT(mOutputWaveTracks != NULL); // Make sure we at least did the CopyInputWaveTracks().
- TrackListIterator iterOut(mOutputWaveTracks);
- WaveTrack* pOutWaveTrack = (WaveTrack*)(iterOut.First());
-
- TrackListIterator iterAllTracks(mTracks);
- Track* pFirstTrack = iterAllTracks.First();
- Track* pTrack = pFirstTrack;
- do
- {
- if (pTrack == pInWaveTrack)
- {
- // Replace pInWaveTrack with processed pOutWaveTrack, at end of list.
- if (pOutWaveTrack != NULL) // Can be NULL as result of Tracks > Stereo to Mono.
- {
- mTracks->Add(pOutWaveTrack);
- if (pTrack == pFirstTrack)
- pFirstTrack = pOutWaveTrack; // We replaced the first track, so update stop condition.
-
- //swap the wavecache track the ondemand task uses, since now the new one will be kept in the project
-#ifdef EXPERIMENTAL_ONDEMAND
- if(ODManager::IsInstanceCreated())
- ODManager::Instance()->ReplaceWaveTrack(pInWaveTrack,pOutWaveTrack);
-#endif
- }
- delete pInWaveTrack;
+ //for each track that is selected
+ for (Track *aTrack = aIt.First(); aTrack; aTrack = aIt.Next()) {
+ if (!aTrack->GetSelected()) {
+ continue;
+ }
- pInWaveTrack = (WaveTrack*)(iterIn.Next());
- pOutWaveTrack = (WaveTrack*)(iterOut.Next());
+ TrackGroupIterator gIt(mTracks);
+ Track *gTrack = gIt.First(aTrack);
+
+ //if the track is part of a group
+ if (trackType == Track::All && gTrack != NULL) {
+ //go to the project tracks and add all the tracks in the same group
+ for( ; gTrack; gTrack = gIt.Next() ) {
+ // only add if the track was not added before
+ if (added.find(gTrack) == added.end()) {
+ added[gTrack]=true;
+ Track *o = gTrack->Duplicate();
+ mOutputTracks->Add(o);
+ mIMap.Add(gTrack);
+ mOMap.Add(o);
+ }
}
- else
- mTracks->Add(pTrack); // Add pTrack back to end of list.
+ }
+ //otherwise just add the track
+ else {
+ Track *o = aTrack->Duplicate();
+ mOutputTracks->Add(o);
+ mIMap.Add(aTrack);
+ mOMap.Add(o);
+ }
+ }
+}
- // Remove former pTrack from front of list and set pTrack to next.
- pTrack = iterAllTracks.RemoveCurrent();
- } while (pTrack != pFirstTrack);
+// If bGoodResult, replace mTracks tracks with successfully processed mOutputTracks copies.
+// Else clear and delete mOutputTracks copies.
+void Effect::ReplaceProcessedTracks(const bool bGoodResult)
+{
+ wxASSERT(mOutputTracks != NULL); // Make sure we at least did the CopyInputTracks().
- // Also need to clean up mWaveTracks, primarily because Preview uses it as the processed tracks.
- delete mWaveTracks;
- mWaveTracks = mOutputWaveTracks;
- }
- else
- {
+ if (!bGoodResult) {
// Processing failed or was cancelled so throw away the processed tracks.
- mOutputWaveTracks->Clear(true); // true => delete the tracks
+ mOutputTracks->Clear(true); // true => delete the tracks
+ // Reset map
+ mIMap.Clear();
+ mOMap.Clear();
+
//TODO:undo the non-gui ODTask transfer
+ return;
+ }
+
+ TrackListIterator iterOut(mOutputTracks);
+
+ Track *x;
+ size_t cnt = mOMap.GetCount();
+ size_t i = 0;
+
+ for (Track *o = iterOut.First(); o; o = x, i++) {
+ // If tracks were removed from mOutputTracks, then there will be
+ // tracks in the map that must be removed from mTracks.
+ while (i < cnt && mOMap[i] != o) {
+ mTracks->Remove((Track *)mIMap[i], true);
+ i++;
+ }
+
+ // This should never happen
+ wxASSERT(i < cnt);
+
+ // Remove the track from the output list...don't delete it
+ x = iterOut.RemoveCurrent(false);
+
+ // Replace mTracks entry with the new track...don't delete original track
+ Track *t = (Track *) mIMap[i];
+ mTracks->Replace(t, o, false);
+
+ // Swap the wavecache track the ondemand task uses, since now the new
+ // one will be kept in the project
+ if (ODManager::IsInstanceCreated()) {
+ ODManager::Instance()->ReplaceWaveTrack((WaveTrack *)t, (WaveTrack *)o);
+ }
+
+ // No longer need the original track
+ delete t;
+ }
+
+ // If tracks were removed from mOutputTracks, then there may be tracks
+ // left at the end of the map that must be removed from mTracks.
+ while (i < cnt) {
+ mTracks->Remove((Track *)mIMap[i], true);
+ i++;
}
+
+ // Reset map
+ mIMap.Clear();
+ mOMap.Clear();
+
+ // Make sure we processed everything
+ wxASSERT(iterOut.First() == NULL);
+
+ // The output list is no longer needed
+ delete mOutputTracks;
+ mOutputTracks = NULL;
+ mOutputTracksType = Track::None;
}
void Effect::CountWaveTracks()
{
mNumTracks = 0;
mNumGroups = 0;
- mWaveTracks = new TrackList();
-
- TrackListIterator iter(mTracks);
+
+ TrackListOfKindIterator iter(Track::Wave, mTracks);
Track *t = iter.First();
-
+
while(t) {
if (!t->GetSelected()) {
t = iter.Next();
@@ -254,7 +342,6 @@ void Effect::CountWaveTracks()
}
if (t->GetKind() == Track::Wave) {
- mWaveTracks->Add(t);
mNumTracks++;
if (!t->GetLinked())
mNumGroups++;
@@ -263,125 +350,6 @@ void Effect::CountWaveTracks()
}
}
-void Effect::HandleLinkedTracksOnGenerate(double length, double t0)
-{
- AudacityProject *p = (AudacityProject*)mParent;
- if ( !p || !(p->IsSticky()) || (mT1!=mT0) ) return;
-
- TrackListIterator iter(p->GetTracks());
-
- int editGroup = 0;
- bool handleGroup = false;
- Track *t=iter.First();
- Track *n=t;
-
- while (t){//find edit group number
- n=iter.Next();
- if (t->GetSelected()) handleGroup = true;
- if ( (n && n->GetKind()==Track::Wave && t->GetKind()==Track::Label)
- || (!n) ) {
- if (handleGroup){
- t=iter.First();
- for (int i=0; i<editGroup; i++){//go to first in edit group
- while (t && t->GetKind()==Track::Wave) t=iter.Next();
- while (t && t->GetKind()==Track::Label) t=iter.Next();
- }
- while (t && t->GetKind()==Track::Wave){
- if ( !(t->GetSelected()) ){
- //printf("t(w)(gen): %x\n", t);
- TrackFactory *factory = p->GetTrackFactory();
- WaveTrack *tmp = factory->NewWaveTrack( ((WaveTrack*)t)->GetSampleFormat(), ((WaveTrack*)t)->GetRate());
- tmp->InsertSilence(0.0, length);
- tmp->Flush();
- ((WaveTrack *)t)->HandlePaste(t0, tmp);
- }
- t=iter.Next();
- }
- while (t && t->GetKind()==Track::Label){
- //printf("t(l)(gen): %x\n", t);
- ((LabelTrack *)t)->ShiftLabelsOnInsert(length, t0);
- t=iter.Next();
- }
- }
- editGroup++;
- handleGroup = false;
- }
- t=n;
- }
-}
-
-bool Effect::HandleGroupChangeSpeed(double m_PercentChange, double mCurT0, double mCurT1)
-{
- AudacityProject *p = (AudacityProject*)mParent;
- if (mCurT1 < mCurT0) return false;
- TrackListIterator fullIter(p->GetTracks());
-
- int editGroup=0;
- bool insertSilence = false;
-
- double length = ( (mCurT1-mCurT0) / ((100 + m_PercentChange)/100) ) - (mCurT1-mCurT0);
- if (length < 0) length = -length;
-
- Track *t = fullIter.First();
- Track *n = t;
- while (t){//find edit group
- n=fullIter.Next();
- if (n && n->GetKind()==Track::Wave && t->GetKind()==Track::Label)
- editGroup++;
-
- if (t->GetSelected()){
- t=fullIter.First();
- for (int i=0; i<editGroup; i++){//go to first in edit group
- while (t && t->GetKind()==Track::Wave) t=fullIter.Next();
- while (t && t->GetKind()==Track::Label) t=fullIter.Next();
- }
- insertSilence = false;
- while (t && t->GetKind()==Track::Wave){
- if ( !(t->GetSelected()) ){
- if (m_PercentChange > 0) insertSilence = true;
- if (m_PercentChange < 0){
- TrackFactory *factory = p->GetTrackFactory();
- WaveTrack *tmp = factory->NewWaveTrack( ((WaveTrack*)t)->GetSampleFormat(), ((WaveTrack*)t)->GetRate());
- tmp->InsertSilence(0.0, length);
- tmp->Flush();
- if ( !( ((WaveTrack *)t)->HandlePaste(mCurT1, tmp)) ) return false;
- }
- }
- t=fullIter.Next();
- }
-
- if (insertSilence){
- t=fullIter.First();
- for (int i=0; i<editGroup; i++){//go to first in edit group
- while (t && t->GetKind()==Track::Wave) t=fullIter.Next();
- while (t && t->GetKind()==Track::Label) t=fullIter.Next();
- }
- while ( t && t->GetKind()==Track::Wave ){
- if (t->GetSelected()){
- TrackFactory *factory = p->GetTrackFactory();
- WaveTrack *tmp = factory->NewWaveTrack( ((WaveTrack*)t)->GetSampleFormat(), ((WaveTrack*)t)->GetRate());
- tmp->InsertSilence(0.0, length);
- tmp->Flush();
- double change = (100 + m_PercentChange)/100;
- double insertPt = mCurT1 - (mCurT1 - mCurT0) + ((mCurT1 - mCurT0)/change);
- if ( !( ((WaveTrack *)t)->HandlePaste(insertPt, tmp)) ) return false;
- }
- t=fullIter.Next();
- }
- }
-
- while (t && t->GetKind()==Track::Label && !insertSilence){
- ((LabelTrack *)t)->ShiftLabelsOnChangeSpeed(mCurT0, mCurT1, m_PercentChange);
- t=fullIter.Next();
- }
- n=t;
- editGroup++;//we've gone through a edit group
- }else
- t=n;
- }
- return true;
-}
-
float TrapFloat(float x, float min, float max)
{
if (x <= min)
@@ -419,10 +387,11 @@ wxString Effect::GetPreviewName()
void Effect::Preview()
{
+ wxWindow* FocusDialog = wxWindow::FindFocus();
if (gAudioIO->IsBusy())
return;
- // Mix the first 3 seconds of audio from all of the tracks
+ // Mix a few seconds of audio from all of the tracks
double previewLen = 3.0;
gPrefs->Read(wxT("/AudioIO/EffectsPreviewLen"), &previewLen);
@@ -438,20 +407,29 @@ void Effect::Preview()
if (t1 <= t0)
return;
- if (!::MixAndRender(mWaveTracks, mFactory, rate, floatSample, t0, t1,
- &mixLeft, &mixRight))
- {
+ bool success = ::MixAndRender(mTracks, mFactory, rate, floatSample, t0, t1,
+ &mixLeft, &mixRight);
+
+ if (!success) {
return;
}
- // Apply effect
+ // Save the original track list
+ TrackList *saveTracks = mTracks;
- TrackList *saveWaveTracks = mWaveTracks;
- mWaveTracks = new TrackList();
- mWaveTracks->Add(mixLeft);
- if (mixRight)
- mWaveTracks->Add(mixRight);
+ // Build new tracklist from rendering tracks
+ mTracks = new TrackList();
+ mixLeft->SetSelected(true);
+ mTracks->Add(mixLeft);
+ if (mixRight) {
+ mixRight->SetSelected(true);
+ mTracks->Add(mixRight);
+ }
+ // Update track/group counts
+ CountWaveTracks();
+
+ // Reset times
t0 = 0.0;
t1 = mixLeft->GetEndTime();
@@ -460,6 +438,8 @@ void Effect::Preview()
mT0 = t0;
mT1 = t1;
+ // Apply effect
+
// Effect is already inited; we call Process, End, and then Init
// again, so the state is exactly the way it was before Preview
// was called.
@@ -477,7 +457,7 @@ void Effect::Preview()
WaveTrackArray playbackTracks;
WaveTrackArray recordingTracks;
// Probably not the same tracks post-processing, so can't rely on previous values of mixLeft & mixRight.
- TrackListIterator iter(mWaveTracks);
+ TrackListOfKindIterator iter(Track::Wave, mTracks);
mixLeft = (WaveTrack*)(iter.First());
mixRight = (WaveTrack*)(iter.Next());
playbackTracks.Add(mixLeft);
@@ -485,18 +465,20 @@ void Effect::Preview()
playbackTracks.Add(mixRight);
// Start audio playing
-
int token =
gAudioIO->StartStream(playbackTracks, recordingTracks, NULL,
+#ifdef EXPERIMENTAL_MIDI_OUT
+ NULL,
+#endif
rate, t0, t1, NULL);
if (token) {
- bool previewing = true;
+ int previewing = eProgressSuccess;
mProgress = new ProgressDialog(StripAmpersand(GetEffectName()),
- _("Previewing"));
+ _("Previewing"), pdlgHideCancelButton);
- while (gAudioIO->IsStreamActive(token) && previewing) {
+ while (gAudioIO->IsStreamActive(token) && previewing == eProgressSuccess) {
::wxMilliSleep(100);
previewing = mProgress->Update(gAudioIO->GetStreamTime(), t1);
}
@@ -510,16 +492,21 @@ void Effect::Preview()
}
else {
wxMessageBox(_("Error while opening sound device. Please check the output device settings and the project sample rate."),
- _("Error"), wxOK | wxICON_EXCLAMATION, mParent);
+ _("Error"), wxOK | wxICON_EXCLAMATION, FocusDialog);
}
}
- if (mWaveTracks == mOutputWaveTracks) // typical case, but depends on descendant implementation
- mOutputWaveTracks = NULL;
- mWaveTracks->Clear(true); // true => delete the tracks
- delete mWaveTracks;
+ if (FocusDialog) {
+ FocusDialog->SetFocus();
+ }
+
+ delete mOutputTracks;
+ mOutputTracks = NULL;
+
+ mTracks->Clear(true); // true => delete the tracks
+ delete mTracks;
- mWaveTracks = saveWaveTracks;
+ mTracks = saveTracks;
}
EffectDialog::EffectDialog(wxWindow * parent,
diff --git a/src/effects/Effect.h b/src/effects/Effect.h
index 6a21c34..8bdcfbe 100644
--- a/src/effects/Effect.h
+++ b/src/effects/Effect.h
@@ -56,7 +56,6 @@ class wxWindow;
#define SKIP_EFFECT_MILLISECOND 99999
class AUDACITY_DLL_API Effect {
-
//
// public methods
//
@@ -106,6 +105,7 @@ class AUDACITY_DLL_API Effect {
// covers most built-in effects.
return mFlags;
}
+
virtual bool TransferParameters( Shuttle & shuttle ){
return true;
}
@@ -129,7 +129,7 @@ class AUDACITY_DLL_API Effect {
// have the "selected" flag set to true, which is consistent with
// Audacity's standard UI.
bool DoEffect(wxWindow *parent, int flags, double projectRate, TrackList *list,
- TrackFactory *factory, double *t0, double *t1);
+ TrackFactory *factory, double *t0, double *t1, wxString params);
wxString GetPreviewName();
@@ -138,8 +138,6 @@ class AUDACITY_DLL_API Effect {
// important for sorting.
static wxString StripAmpersand(const wxString& str);
- void HandleLinkedTracksOnGenerate(double length, double t0);
- bool HandleGroupChangeSpeed(double m_PercentChange, double mCurT0, double mCurT1);
//
// protected virtual methods
//
@@ -196,9 +194,7 @@ class AUDACITY_DLL_API Effect {
// be created with this rate...
TrackFactory *mFactory;
TrackList *mTracks; // the complete list of all tracks
- TrackList *mWaveTracks; // effects which do not add or remove tracks
- // should use this
- TrackList* mOutputWaveTracks; // used only if CopyInputWaveTracks() is called.
+ TrackList *mOutputTracks; // used only if CopyInputTracks() is called.
double mT0;
double mT1;
@@ -228,6 +224,9 @@ class AUDACITY_DLL_API Effect {
int GetNumWaveGroups() { return mNumGroups; }
+ // Calculates the start time and selection length in samples
+ void GetSamples(WaveTrack *track, sampleCount *start, sampleCount *len);
+
//
// protected static data
//
@@ -236,18 +235,22 @@ class AUDACITY_DLL_API Effect {
protected:
static double sDefaultGenerateLen;
int mFlags;
+ double mLength;
+
+ // type of the tracks on mOutputTracks
+ int mOutputTracksType;
//
// private methods
//
- // Use these two methods to copy the input tracks to mOutputWaveTracks, if
+ // Use these two methods to copy the input tracks to mOutputTracks, if
// doing the processing on them, and replacing the originals only on success (and not cancel).
- void CopyInputWaveTracks();
+ void CopyInputTracks(int trackType = Track::Wave);
// If bGoodResult, replace mWaveTracks tracks in mTracks with successfully processed
- // mOutputWaveTracks copies, get rid of old mWaveTracks, and set mWaveTracks to mOutputWaveTracks.
- // Else clear and delete mOutputWaveTracks copies.
- void ReplaceProcessedWaveTracks(const bool bGoodResult);
+ // mOutputTracks copies, get rid of old mWaveTracks, and set mWaveTracks to mOutputTracks.
+ // Else clear and delete mOutputTracks copies.
+ void ReplaceProcessedTracks(const bool bGoodResult);
// Used only by the base Effect class
//
@@ -260,6 +263,8 @@ class AUDACITY_DLL_API Effect {
// Used only by the base Effect class
//
private:
+ wxArrayPtrVoid mIMap;
+ wxArrayPtrVoid mOMap;
int mNumTracks; //v This is really mNumWaveTracks, per CountWaveTracks() and GetNumWaveTracks().
int mNumGroups;
@@ -271,6 +276,7 @@ class AUDACITY_DLL_API Effect {
};
+
// Base dialog for generate effect
#define ID_EFFECT_PREVIEW ePreviewID
diff --git a/src/effects/EffectManager.cpp b/src/effects/EffectManager.cpp
index 2911b7b..9c7ab06 100644
--- a/src/effects/EffectManager.cpp
+++ b/src/effects/EffectManager.cpp
@@ -25,18 +25,25 @@ EffectManager& EffectManager::Get() {
EffectManager::EffectManager()
- : mLastType(0),
- mLastIndex(0),
- mLastEffect(0),
- mNumEffects(0) {
-
+: mNumEffects(0)
+{
+#ifdef EFFECT_CATEGORIES
+ mCategories = new CategoryMap();
+ mRootCategories = new CategorySet();
+ mUnsorted = new EffectSet();
+#endif
}
-EffectManager::~EffectManager() {
+EffectManager::~EffectManager()
+{
#ifdef EFFECT_CATEGORIES
CategoryMap::iterator i;
- for (i = mCategories.begin(); i != mCategories.end(); ++i)
+ for (i = mCategories->begin(); i != mCategories->end(); ++i)
delete i->second;
+
+ delete mUnsorted;
+ delete mRootCategories;
+ delete mCategories;
#endif
}
@@ -74,7 +81,7 @@ void EffectManager::RegisterEffect(Effect *f, int NewFlags)
}
}
if (!oneValid)
- mUnsorted.insert(f);
+ mUnsorted->insert(f);
#endif
}
@@ -87,10 +94,10 @@ void EffectManager::UnregisterEffects()
mEffects.clear();
#ifdef EFFECT_CATEGORIES
- mUnsorted.clear();
+ mUnsorted->clear();
CategoryMap::iterator iter;
- for (iter = mCategories.begin(); iter != mCategories.end(); ++iter)
+ for (iter = mCategories->begin(); iter != mCategories->end(); ++iter)
iter->second->mEffects.clear();
#endif
}
@@ -140,18 +147,18 @@ EffectArray *EffectManager::GetEffects(int flags /* = ALL_EFFECTS */)
EffectCategory* EffectManager::AddCategory(const wxString& URI,
const wxString& name) {
- CategoryMap::const_iterator iter = mCategories.find(URI);
- if (iter != mCategories.end())
+ CategoryMap::const_iterator iter = mCategories->find(URI);
+ if (iter != mCategories->end())
return iter->second;
EffectCategory* cat = new EffectCategory(URI, name);
- mCategories.insert(std::make_pair(URI, cat));
- mRootCategories.insert(cat);
+ mCategories->insert(std::make_pair(URI, cat));
+ mRootCategories->insert(cat);
return cat;
}
EffectCategory* EffectManager::LookupCategory(const wxString& URI) {
- CategoryMap::const_iterator iter = mCategories.find(URI);
- if (iter != mCategories.end())
+ CategoryMap::const_iterator iter = mCategories->find(URI);
+ if (iter != mCategories->end())
return iter->second;
return 0;
}
@@ -161,30 +168,30 @@ bool EffectManager::AddCategoryParent(EffectCategory* child,
bool result = child->AddParent(parent);
if (!result)
return false;
- CategorySet::iterator iter = mRootCategories.find(child);
- if (iter != mRootCategories.end())
- mRootCategories.erase(iter);
+ CategorySet::iterator iter = mRootCategories->find(child);
+ if (iter != mRootCategories->end())
+ mRootCategories->erase(iter);
return true;
}
void EffectManager::FreezeCategories() {
CategoryMap::iterator iter;
- for (iter = mCategories.begin(); iter != mCategories.end(); ++iter)
+ for (iter = mCategories->begin(); iter != mCategories->end(); ++iter)
iter->second->FreezeParents();
}
const CategorySet& EffectManager::GetRootCategories() const {
- return mRootCategories;
+ return *mRootCategories;
}
EffectSet EffectManager::GetUnsortedEffects(int flags) const {
if (flags == ALL_EFFECTS)
- return mUnsorted;
+ return *mUnsorted;
EffectSet result;
EffectSet::const_iterator iter;
- for (iter = mUnsorted.begin(); iter != mUnsorted.end(); ++iter) {
+ for (iter = mUnsorted->begin(); iter != mUnsorted->end(); ++iter) {
int g = (*iter)->GetEffectFlags();
if ((flags & g) == g)
result.insert(*iter);
diff --git a/src/effects/EffectManager.h b/src/effects/EffectManager.h
index 7dbd02b..be60541 100644
--- a/src/effects/EffectManager.h
+++ b/src/effects/EffectManager.h
@@ -104,22 +104,6 @@ class AUDACITY_DLL_API EffectManager {
#endif
private:
- int mLastType;
- int mLastIndex;
- Effect * mLastEffect;
-
- public:
-
- void SetLastEffect(int type, Effect * pEffect){
- mLastType=type;
- mLastEffect = pEffect;
- }
-
- int GetLastEffectType(){ return mLastType;}
-
- Effect * GetLastEffect(){ return mLastEffect;}
-
- private:
EffectArray mEffects;
int mNumEffects;
@@ -128,14 +112,14 @@ class AUDACITY_DLL_API EffectManager {
// This maps URIs to EffectCategory pointers for all added categories.
// It is needed for fast lookup and easy deletion.
typedef std::map<wxString, EffectCategory*> CategoryMap;
- CategoryMap mCategories;
+ CategoryMap *mCategories;
// These are the root categories, i.e. the ones without parents.
- CategorySet mRootCategories;
+ CategorySet *mRootCategories;
// Special category that all effects with unknown category URIs
// are placed in.
- EffectSet mUnsorted;
+ EffectSet *mUnsorted;
#endif
};
diff --git a/src/effects/Equalization.cpp b/src/effects/Equalization.cpp
index b3aebb6..253d515 100644
--- a/src/effects/Equalization.cpp
+++ b/src/effects/Equalization.cpp
@@ -10,7 +10,7 @@
*******************************************************************//**
-\file EffectEqualization.cpp
+\file Equalization.cpp
\brief Implements EffectEqualiztaion, EqualizationDialog,
EqualizationPanel, EQCurve and EQPoint.
@@ -61,6 +61,7 @@ various graphing code, such as provided by FreqWindow and FilterPanel.
#include "../Audacity.h"
#include "Equalization.h"
+#include "../AColor.h"
#include "../ShuttleGui.h"
#include "../PlatformCompatibility.h"
#include "../FileNames.h"
@@ -212,7 +213,12 @@ const float EffectEqualization::curvey[][nCurvePoints] =
#pragma warning( default: 4305 )
#endif
-#ifdef __WXGTK__
+// LLL: This seem to have a strange interaction with wxWidgets 2.8.9. It's
+// possible that the wxSlider was fixed as it seems to work ok for me
+// under Ubuntu 8.10 with self build wxWidgets 2.8.9.
+//
+// Leaving here for now...just disabling
+#ifdef __WXGTK__disabled
/*
* wxSlider exhibits strange behaviour on wxGTK when wxSL_INVERSE and/or
* negative scale values are used. This affects at least SUSE 9.3 with
@@ -301,6 +307,8 @@ static wxString interpChoiceStrings[NUM_INTERP_CHOICES];
EffectEqualization::EffectEqualization()
{
+ hFFT = InitializeFFT(windowSize);
+ mFFTBuffer = new float[windowSize];
mFilterFuncR = new float[windowSize];
mFilterFuncI = new float[windowSize];
gPrefs->Read(wxT("/CsPresets/EQFilterLength"),
@@ -323,6 +331,7 @@ EffectEqualization::EffectEqualization()
}
gPrefs->Read(wxT("/CsPresets/EQDrawMode"), &mDrawMode, true);
gPrefs->Read(wxT("/CsPresets/EQInterp"), &mInterp, 0);
+ gPrefs->Read(wxT("/CsPresets/EQDrawGrid"), &mDrawGrid, true);
mPrompting = false;
@@ -334,6 +343,12 @@ EffectEqualization::EffectEqualization()
EffectEqualization::~EffectEqualization()
{
+ if(hFFT)
+ EndFFT(hFFT);
+ hFFT = NULL;
+ if(mFFTBuffer)
+ delete[] mFFTBuffer;
+ mFFTBuffer = NULL;
if(mFilterFuncR)
delete[] mFilterFuncR;
if(mFilterFuncI)
@@ -342,19 +357,16 @@ EffectEqualization::~EffectEqualization()
mFilterFuncI = NULL;
}
-void EffectEqualization::End()
-{
- mPrompting = false;
-}
-
bool EffectEqualization::Init()
{
- return(mPrompting = true);
+ if(!mPrompting)
+ DontPromptUser(); // not previewing, ie batch mode or initial setup
+ return(true);
}
bool EffectEqualization::PromptUser()
{
- TrackListIterator iter(mWaveTracks);
+ TrackListOfKindIterator iter(Track::Wave, mTracks);
WaveTrack *t = (WaveTrack *) iter.First();
float hiFreq;
if (t)
@@ -373,12 +385,12 @@ bool EffectEqualization::PromptUser()
dlog.dBMax = mdBMax;
dlog.drawMode = mDrawMode;
dlog.interp = mInterp;
- // not required here - called automatically
- // dlog.TransferDataToWindow();
+ dlog.drawGrid = mDrawGrid;
dlog.CentreOnParent();
- mPrompting = true;
+ mPrompting = true; // true when previewing, false in batch
dlog.ShowModal();
+ mPrompting = false;
if (!dlog.GetReturnCode())
return false;
@@ -390,6 +402,7 @@ bool EffectEqualization::PromptUser()
mdBMax = dlog.dBMax;
mDrawMode = dlog.drawMode;
mInterp = dlog.interp;
+ mDrawGrid = dlog.drawGrid;
gPrefs->Write(wxT("/CsPresets/EQFilterLength"),mM);
gPrefs->Write(wxT("/CsPresets/EQCurveName"),mCurveName);
@@ -398,13 +411,14 @@ bool EffectEqualization::PromptUser()
gPrefs->Write(wxT("/CsPresets/EQdBMax"),mdBMax);
gPrefs->Write(wxT("/CsPresets/EQDrawMode"),mDrawMode);
gPrefs->Write(wxT("/CsPresets/EQInterp"), mInterp);
+ gPrefs->Write(wxT("/CsPresets/EQDrawGrid"), mDrawGrid);
return true;
}
bool EffectEqualization::DontPromptUser()
{
- TrackListIterator iter(mWaveTracks);
+ TrackListOfKindIterator iter(Track::Wave, mTracks);
WaveTrack *t = (WaveTrack *) iter.First();
float hiFreq;
if (t)
@@ -421,7 +435,7 @@ bool EffectEqualization::DontPromptUser()
dlog.interp = mInterp;
// IS required here - no call to ShowModal!
dlog.TransferDataToWindow();
- dlog.CalcFilter();
+ dlog.CalcFilter(); // is needed here - the one done due to TransferDataToWindow->OnLinFreq isn't reliable
return true;
}
@@ -438,13 +452,10 @@ bool EffectEqualization::TransferParameters( Shuttle & shuttle )
bool EffectEqualization::Process()
{
- if (!mPrompting) {
- DontPromptUser();
- }
- this->CopyInputWaveTracks(); // Set up mOutputWaveTracks.
+ this->CopyInputTracks(); // Set up mOutputTracks.
bool bGoodResult = true;
- TrackListIterator iter(mOutputWaveTracks);
+ SelectedTrackListOfKindIterator iter(Track::Wave, mOutputTracks);
WaveTrack *track = (WaveTrack *) iter.First();
int count = 0;
while (track) {
@@ -469,7 +480,7 @@ bool EffectEqualization::Process()
count++;
}
- this->ReplaceProcessedWaveTracks(bGoodResult);
+ this->ReplaceProcessedTracks(bGoodResult);
return bGoodResult;
}
@@ -496,7 +507,7 @@ bool EffectEqualization::ProcessOne(int count, WaveTrack * t,
sampleCount originalLen = len;
- int i;
+ int i,j;
for(i=0; i<windowSize; i++)
lastWindow[i] = 0;
@@ -513,8 +524,6 @@ bool EffectEqualization::ProcessOne(int count, WaveTrack * t,
t->Get((samplePtr)buffer, floatSample, s, block);
- int j = 0;
-
for(i=0; i<block; i+=L) //go through block in lumps of length L
{
wcopy = L;
@@ -528,7 +537,7 @@ bool EffectEqualization::ProcessOne(int count, WaveTrack * t,
Filter(windowSize, thisWindow);
// Overlap - Add
- for(j=0; j<mM-1; j++)
+ for(j=0; (j<mM-1) && (j<wcopy); j++)
buffer[i+j] = thisWindow[j] + lastWindow[L + j];
for(j=mM-1; j<wcopy; j++)
buffer[i+j] = thisWindow[j];
@@ -552,8 +561,19 @@ bool EffectEqualization::ProcessOne(int count, WaveTrack * t,
if(bLoopSuccess)
{
// mM-1 samples of 'tail' left in lastWindow, get them now
- for(int j=0; j<mM-1; j++)
- buffer[j] = lastWindow[wcopy + j];
+ if(wcopy < (mM-1)) {
+ // Still have some overlap left to process
+ // (note that lastWindow and thisWindow have been exchanged at this point
+ // so that 'thisWindow' is really the window prior to 'lastWindow')
+ for(j=0; j<mM-1-wcopy; j++)
+ buffer[j] = lastWindow[wcopy + j] + thisWindow[L + wcopy + j];
+ // And fill in the remainder after the overlap
+ for( ; j<mM-1; j++)
+ buffer[j] = lastWindow[wcopy + j];
+ } else {
+ for(j=0; j<mM-1; j++)
+ buffer[j] = lastWindow[wcopy + j];
+ }
output->Append((samplePtr)buffer, floatSample, mM-1);
output->Flush();
@@ -568,6 +588,7 @@ bool EffectEqualization::ProcessOne(int count, WaveTrack * t,
delete[] buffer;
delete[] window1;
delete[] window2;
+ delete output;
return bLoopSuccess;
}
@@ -575,39 +596,28 @@ bool EffectEqualization::ProcessOne(int count, WaveTrack * t,
void EffectEqualization::Filter(sampleCount len,
float *buffer)
{
- float *inr = new float[len];
- float *ini = new float[len];
- float *outr = new float[len];
- float *outi = new float[len];
-
int i;
- float temp;
-
- for(i=0; i<len; i++)
- inr[i] = buffer[i];
-
+ float re,im;
// Apply FFT
- FFT(len, false, inr, NULL, outr, outi);
+ RealFFTf(buffer, hFFT);
+ //FFT(len, false, inr, NULL, outr, outi);
// Apply filter
- for(i=0; i<len; i++)
+ // DC component is purely real
+ mFFTBuffer[0] = buffer[0] * mFilterFuncR[0];
+ for(i=1; i<(len/2); i++)
{
- temp = outr[i]*mFilterFuncR[i] - outi[i]*mFilterFuncI[i];
- outi[i] = outr[i]*mFilterFuncI[i] + outi[i]*mFilterFuncR[i];
- outr[i] = temp;
+ re=buffer[hFFT->BitReversed[i] ];
+ im=buffer[hFFT->BitReversed[i]+1];
+ mFFTBuffer[2*i ] = re*mFilterFuncR[i] - im*mFilterFuncI[i];
+ mFFTBuffer[2*i+1] = re*mFilterFuncI[i] + im*mFilterFuncR[i];
}
-
+ // Fs/2 component is purely real
+ mFFTBuffer[1] = buffer[1] * mFilterFuncR[len/2];
// Inverse FFT and normalization
- FFT(len, true, outr, outi, inr, ini);
-
- for(i=0; i<len; i++)
- buffer[i] = float(inr[i]);
-
- delete[] inr;
- delete[] ini;
- delete[] outr;
- delete[] outi;
+ InverseRealFFTf(mFFTBuffer, hFFT);
+ ReorderToTime(hFFT, mFFTBuffer, buffer);
}
@@ -672,7 +682,11 @@ void EqualizationPanel::Recalc()
mOuti = new float[mWindowSize];
mParent->CalcFilter(); //to calculate the actual response
- FFT(mWindowSize,true,mFilterFuncR,mFilterFuncI,mOutr,mOuti); //work out FIR response
+#ifdef EXPERIMENTAL_USE_REALFFTF
+ InverseRealFFT(mWindowSize, mFilterFuncR, mFilterFuncI, mOutr);
+#else
+ FFT(mWindowSize,true,mFilterFuncR,mFilterFuncI,mOutr,mOuti); //work out FIR response - note mOuti will be all zeros
+#endif // EXPERIMENTAL_USE_REALFFTF
}
void EqualizationPanel::OnSize(wxSizeEvent & evt)
@@ -728,13 +742,14 @@ void EqualizationPanel::OnPaint(wxPaintEvent & evt)
memDC.DrawRectangle(border);
mEnvRect = border;
- mEnvRect.Deflate( 2, 2 );
+ mEnvRect.Deflate(2, 2);
// Pure blue x-axis line
memDC.SetPen(wxPen(theTheme.Colour( clrGraphLines ), 1, wxSOLID));
int center = (int) (mEnvRect.height * dBMax/(dBMax-dBMin) + .5);
- memDC.DrawLine(mEnvRect.x, mEnvRect.y + center,
- mEnvRect.x + mEnvRect.width, mEnvRect.y + center);
+ AColor::Line(memDC,
+ mEnvRect.GetLeft(), mEnvRect.y + center,
+ mEnvRect.GetRight(), mEnvRect.y + center);
// Med-blue envelope line
memDC.SetPen(wxPen(theTheme.Colour( clrGraphLines ), 3, wxSOLID));
@@ -748,9 +763,9 @@ void EqualizationPanel::OnPaint(wxPaintEvent & evt)
{
x = mEnvRect.x + i;
y = lrint(mEnvRect.height*((dBMax-values[i])/(dBMax-dBMin)) + .25 ); //needs more optimising, along with'what you get'?
- if( y > mEnvRect.height)
+ if( y >= mEnvRect.height)
{
- y = mEnvRect.height;
+ y = mEnvRect.height - 1;
off = true;
}
else
@@ -760,8 +775,8 @@ void EqualizationPanel::OnPaint(wxPaintEvent & evt)
}
if ( (i != 0) & (!off1) )
{
- memDC.DrawLine(xlast, ylast,
- x, mEnvRect.y + y);
+ AColor::Line(memDC, xlast, ylast,
+ x, mEnvRect.y + y);
}
off1 = off;
xlast = x;
@@ -815,14 +830,14 @@ void EqualizationPanel::OnPaint(wxPaintEvent & evt)
yF = dBMin;
yF = center-scale*yF;
if(yF>mEnvRect.height)
- yF = mEnvRect.height;
+ yF = mEnvRect.height - 1;
if(yF<0.)
yF=0.;
y = (int)(yF+.5);
if (i != 0)
{
- memDC.DrawLine(xlast, ylast, x, mEnvRect.y + y);
+ AColor::Line(memDC, xlast, ylast, x, mEnvRect.y + y);
}
xlast = x;
ylast = mEnvRect.y + y;
@@ -832,6 +847,12 @@ void EqualizationPanel::OnPaint(wxPaintEvent & evt)
if( mParent->mFaderOrDraw[0]->GetValue() )
mEnvelope->Draw(memDC, mEnvRect, 0.0, mEnvRect.width, false, dBMin, dBMax);
+ if( mParent->drawGrid )
+ {
+ mParent->freqRuler->ruler.DrawGrid(memDC, mEnvRect.height+2, true, true, 0, 1);
+ mParent->dBRuler->ruler.DrawGrid(memDC, mEnvRect.width+2, true, true, 1, 2);
+ }
+
dc.Blit(0, 0, mWidth, mHeight,
&memDC, 0, 0, wxCOPY, FALSE);
}
@@ -899,6 +920,7 @@ BEGIN_EVENT_TABLE(EqualizationDialog,wxDialog)
EVT_RADIOBUTTON(drawRadioID, EqualizationDialog::OnDrawRadio)
EVT_RADIOBUTTON(sliderRadioID, EqualizationDialog::OnSliderRadio)
EVT_CHECKBOX(ID_LIN_FREQ, EqualizationDialog::OnLinFreq)
+ EVT_CHECKBOX(GridOnOffID, EqualizationDialog::OnGridOnOff)
END_EVENT_TABLE()
EqualizationDialog::EqualizationDialog(EffectEqualization * effect,
@@ -961,6 +983,12 @@ EqualizationDialog::EqualizationDialog(EffectEqualization * effect,
m_EQVals[NUMBER_OF_BANDS] = 0.;
}
+EqualizationDialog::~EqualizationDialog()
+{
+ delete mLogEnvelope;
+ delete mLinEnvelope;
+}
+
//
// Load external curves with fallback to internal
//
@@ -1063,22 +1091,26 @@ void EqualizationDialog::SaveCurves()
// Create/Open the file
XMLFileWriter eqFile;
- eqFile.Open( fn.GetFullPath(), wxT("wb") );
- // Complain if open failed
- if( !eqFile.IsOpened() )
+ try
{
- // Constructor will emit message
- return;
- }
+ eqFile.Open( fn.GetFullPath(), wxT("wb") );
- // Write the curves
- WriteXML( eqFile );
+ // Write the curves
+ WriteXML( eqFile );
- // Close the file
- eqFile.Close();
+ // Close the file
+ eqFile.Close();
+ }
+ catch (XMLFileWriterException* pException)
+ {
+ wxMessageBox(wxString::Format(
+ _("Couldn't write to file \"%s\": %s"),
+ fn.GetFullPath().c_str(), pException->GetMessage().c_str()),
+ _("Error saving equalization curves"), wxICON_ERROR, this);
- return;
+ delete pException;
+ }
}
//
@@ -1278,6 +1310,11 @@ void EqualizationDialog::MakeEqualizationDialog()
btn = new wxButton( this, ID_CLEAR, _("Flat"));
szrC->Add( btn, 0, wxALIGN_CENTRE | wxALL, 4 );
+ mGridOnOff = new wxCheckBox(this, GridOnOffID, _("Grids"),
+ wxDefaultPosition, wxDefaultSize,
+ wxALIGN_RIGHT);
+ mGridOnOff->SetName(_("Grids"));
+ szrC->Add( mGridOnOff, 0, wxALIGN_CENTRE | wxALL, 4 );
szrV->Add( szrC, 0, wxALIGN_CENTER | wxALL, 0 );
@@ -1360,7 +1397,9 @@ bool EqualizationDialog::TransferDataToWindow()
// Set log or lin freq scale (affects interpolation as well)
mLinFreq->SetValue( linCheck );
wxCommandEvent dummyEvent;
- OnLinFreq(dummyEvent);
+ OnLinFreq(dummyEvent); // causes a CalcFilter
+
+ mGridOnOff->SetValue( drawGrid ); // checks/unchecks the box on the interface
MSlider->SetValue((M-1)/2);
M = 0; // force refresh in TransferDataFromWindow()
@@ -1517,7 +1556,11 @@ bool EqualizationDialog::CalcFilter()
//transfer to time domain to do the padding and windowing
float *outr = new float[mWindowSize];
float *outi = new float[mWindowSize];
+#ifdef EXPERIMENTAL_USE_REALFFTF
+ InverseRealFFT(mWindowSize, mFilterFuncR, NULL, outr); // To time domain
+#else
FFT(mWindowSize,true,mFilterFuncR,NULL,outr,outi); //To time domain
+#endif
for(i=0;i<=(M-1)/2;i++)
{ //Windowing - could give a choice, fixed for now - MJS
@@ -1552,7 +1595,7 @@ bool EqualizationDialog::CalcFilter()
}
//Back to the frequency domain so we can use it
- FFT(mWindowSize,false,outr,NULL,mFilterFuncR,mFilterFuncI);
+ RealFFT(mWindowSize,outr,mFilterFuncR,mFilterFuncI);
delete[] outr;
delete[] outi;
@@ -1572,7 +1615,7 @@ void EqualizationDialog::setCurve(int currentCurve)
wxASSERT( currentCurve < (int) mCurves.GetCount() );
bool changed = false;
- if( mFaderOrDraw[0]->GetValue() & mLinFreq->IsChecked() ) // linear freq mode?
+ if( mLinFreq->IsChecked() ) // linear freq mode?
{
Envelope *env = mLinEnvelope;
env->Flatten(0.);
@@ -2114,7 +2157,7 @@ void EqualizationDialog::GraphicEQ(Envelope *env)
case 2: // Cubic Spline
{
- double y2[NUMBER_OF_BANDS];
+ double y2[NUMBER_OF_BANDS+1];
m_EQVals[bandsInUse] = m_EQVals[bandsInUse-1];
spline(whenSliders, m_EQVals, bandsInUse+1, y2);
for(double xf=0; xf<1.; xf+=1./NUM_PTS)
@@ -2132,7 +2175,7 @@ void EqualizationDialog::GraphicEQ(Envelope *env)
void EqualizationDialog::spline(double x[], double y[], int n, double y2[])
{
int i;
- double p, sig, u[NUMBER_OF_BANDS];
+ double p, sig, *u = new double[n];
y2[0] = 0.; //
u[0] = 0.; //'natural' boundary conditions
@@ -2147,6 +2190,8 @@ void EqualizationDialog::spline(double x[], double y[], int n, double y2[])
y2[n-1] = 0.;
for(i=n-2;i>=0;i--)
y2[i] = y2[i]*y2[i+1] + u[i];
+
+ delete [] u;
}
double EqualizationDialog::splint(double x[], double y[], int n, double y2[], double xr)
@@ -2202,6 +2247,8 @@ void EqualizationDialog::OnDrawRadio(wxCommandEvent &evt)
}
}
}
+ delete [] when;
+ delete [] value;
if(mLinFreq->IsChecked())
{
@@ -2323,61 +2370,71 @@ void EqualizationDialog::OnLinFreq(wxCommandEvent &evt)
void EqualizationDialog::EnvLogToLin(void)
{
- int numPoints = mLogEnvelope->GetNumberOfPoints();
- double *when = new double[ numPoints ];
- double *value = new double[ numPoints ];
+ int numPoints = mLogEnvelope->GetNumberOfPoints();
+ if( numPoints == 0 )
+ {
+ return;
+ }
- mLinEnvelope->Flatten(0.);
- mLinEnvelope->SetTrackLen(1.0);
- mLogEnvelope->GetPoints( when, value, numPoints );
- mLinEnvelope->Move(0., value[0]);
- double loLog = log10(20.);
- double hiLog = log10(mHiFreq);
- double denom = hiLog - loLog;
+ double *when = new double[ numPoints ];
+ double *value = new double[ numPoints ];
+
+ mLinEnvelope->Flatten(0.);
+ mLinEnvelope->SetTrackLen(1.0);
+ mLogEnvelope->GetPoints( when, value, numPoints );
+ mLinEnvelope->Move(0., value[0]);
+ double loLog = log10(20.);
+ double hiLog = log10(mHiFreq);
+ double denom = hiLog - loLog;
- for( int i=0; i < numPoints; i++)
- mLinEnvelope->Insert(pow( 10., ((when[i] * denom) + loLog))/mHiFreq , value[i]);
- mLinEnvelope->Move(1., value[numPoints-1]);
+ for( int i=0; i < numPoints; i++)
+ mLinEnvelope->Insert(pow( 10., ((when[i] * denom) + loLog))/mHiFreq , value[i]);
+ mLinEnvelope->Move(1., value[numPoints-1]);
- delete [] when;
- delete [] value;
+ delete [] when;
+ delete [] value;
}
void EqualizationDialog::EnvLinToLog(void)
{
- int numPoints = mLinEnvelope->GetNumberOfPoints();
- double *when = new double[ numPoints ];
- double *value = new double[ numPoints ];
+ int numPoints = mLinEnvelope->GetNumberOfPoints();
+ if( numPoints == 0 )
+ {
+ return;
+ }
+
+ double *when = new double[ numPoints ];
+ double *value = new double[ numPoints ];
- mLogEnvelope->Flatten(0.);
- mLogEnvelope->SetTrackLen(1.0);
- mLinEnvelope->GetPoints( when, value, numPoints );
- mLogEnvelope->Move(0., value[0]);
- double loLog = log10(20.);
- double hiLog = log10(mHiFreq);
- double denom = hiLog - loLog;
- bool changed = false;
+ mLogEnvelope->Flatten(0.);
+ mLogEnvelope->SetTrackLen(1.0);
+ mLinEnvelope->GetPoints( when, value, numPoints );
+ mLogEnvelope->Move(0., value[0]);
+ double loLog = log10(20.);
+ double hiLog = log10(mHiFreq);
+ double denom = hiLog - loLog;
+ bool changed = false;
- for( int i=0; i < numPoints; i++)
+ for( int i=0; i < numPoints; i++)
+ {
+ if( when[i]*mHiFreq >= 20 )
{
- if( when[i]*mHiFreq >= 20 )
- {
- mLogEnvelope->Insert((log10(when[i]*mHiFreq)-loLog)/denom , value[i]);
- }
- else
- { //get the first point as close as we can to the last point requested
- changed = true;
- double v = value[i];
- mLogEnvelope->Insert(0., v);
- }
+ mLogEnvelope->Insert((log10(when[i]*mHiFreq)-loLog)/denom , value[i]);
+ }
+ else
+ { //get the first point as close as we can to the last point requested
+ changed = true;
+ double v = value[i];
+ mLogEnvelope->Insert(0., v);
}
- mLogEnvelope->Move(1., value[numPoints-1]);
+ }
+ mLogEnvelope->Move(1., value[numPoints-1]);
- delete [] when;
- delete [] value;
+ delete [] when;
+ delete [] value;
- if(changed)
- EnvelopeUpdated(mLogEnvelope, false);
+ if(changed)
+ EnvelopeUpdated(mLogEnvelope, false);
}
void EqualizationDialog::ErrMin(void)
@@ -2684,9 +2741,21 @@ void EqualizationDialog::OnPreview(wxCommandEvent &event)
{
TransferDataFromWindow();
m_pEffect->Preview();
+ mPanel->RecalcRequired = true;
+ wxPaintEvent dummyEvent;
+ OnPaint(dummyEvent);
//v Restore previous values?
}
+void EqualizationDialog::OnGridOnOff(wxCommandEvent & WXUNUSED(event))
+{
+ if( mGridOnOff->IsChecked() )
+ drawGrid = true;
+ else
+ drawGrid = false;
+ mPanel->Refresh(false);
+}
+
void EqualizationDialog::OnCancel(wxCommandEvent &event)
{
if(mLogEnvelope)
diff --git a/src/effects/Equalization.h b/src/effects/Equalization.h
index baf2fdf..c7a930f 100644
--- a/src/effects/Equalization.h
+++ b/src/effects/Equalization.h
@@ -29,9 +29,6 @@
#include <wx/checkbox.h>
#if wxUSE_ACCESSIBILITY
-#if defined(__WXMSW__)
-#include <oleacc.h>
-#endif
#include <wx/access.h>
#endif
@@ -40,6 +37,7 @@
#include "../WaveTrack.h"
#include "../xml/XMLTagHandler.h"
#include "../widgets/Ruler.h"
+#include "../RealFFTf.h"
class EqualizationDialog;
@@ -99,7 +97,6 @@ public:
}
virtual bool Init();
- virtual void End();
virtual bool PromptUser();
virtual bool DontPromptUser();
virtual bool TransferParameters( Shuttle & shuttle );
@@ -120,6 +117,8 @@ private:
void Filter(sampleCount len,
float *buffer);
+ HFFT hFFT;
+ float *mFFTBuffer;
float *mFilterFuncR;
float *mFilterFuncI;
int mM;
@@ -130,6 +129,7 @@ private:
bool mDrawMode;
int mInterp;
bool mPrompting;
+ bool mDrawGrid;
public:
enum curveType {
@@ -216,6 +216,7 @@ public:
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = wxDEFAULT_DIALOG_STYLE );
+ ~EqualizationDialog();
// WDR: method declarations for EqualizationDialog
virtual bool Validate();
@@ -239,6 +240,9 @@ public:
int bandsInUse;
bool drawMode;
int interp;
+ bool drawGrid;
+ RulerPanel *dBRuler;
+ RulerPanel *freqRuler;
private:
void MakeEqualizationDialog();
@@ -277,6 +281,7 @@ private:
sliderRadioID,
ID_INTERP,
ID_LIN_FREQ,
+ GridOnOffID,
ID_SLIDER // needs to come last
};
@@ -304,7 +309,7 @@ private:
void OnPreview(wxCommandEvent &event);
void OnOk( wxCommandEvent &event );
void OnCancel( wxCommandEvent &event );
-
+ void OnGridOnOff( wxCommandEvent &event );
private:
EffectEqualization * m_pEffect;
@@ -330,8 +335,6 @@ private:
wxSlider *MSlider;
wxSlider *dBMinSlider;
wxSlider *dBMaxSlider;
- RulerPanel *dBRuler;
- RulerPanel *freqRuler;
wxBoxSizer *szrC;
wxBoxSizer *szrG;
wxBoxSizer *szrV;
@@ -343,6 +346,7 @@ private:
wxBoxSizer *szr2;
wxFlexGridSizer *szr1;
wxSize size;
+ wxCheckBox *mGridOnOff;
EQCurveArray mCurves;
diff --git a/src/effects/FindClipping.cpp b/src/effects/FindClipping.cpp
index fd8a92e..aad1e25 100644
--- a/src/effects/FindClipping.cpp
+++ b/src/effects/FindClipping.cpp
@@ -40,6 +40,7 @@
EffectFindClipping::EffectFindClipping()
{
+ SetEffectFlags(BUILTIN_EFFECT | ANALYZE_EFFECT);
mStart = 3;
mStop = 3;
}
@@ -74,15 +75,16 @@ bool EffectFindClipping::Process()
LabelTrack *l = NULL;
Track *original = NULL;
- TrackListIterator iter(mTracks);
- for (Track *t = iter.First(); t && !l; t = iter.Next()) {
- if (t->GetKind() == Track::Label && t->GetName() == wxT("Clipping")) {
+ TrackListOfKindIterator iter(Track::Label, mTracks);
+ for (Track *t = iter.First(); t; t = iter.Next()) {
+ if (t->GetName() == wxT("Clipping")) {
l = (LabelTrack *) t;
// copy LabelTrack here, so it can be undone on cancel
l->Copy(l->GetStartTime(), l->GetEndTime(), &original);
original->SetOffset(l->GetStartTime());
original->SetName(wxT("Clipping"));
l->Clear(l->GetStartTime(), l->GetEndTime());
+ break;
}
}
@@ -94,7 +96,7 @@ bool EffectFindClipping::Process()
int count = 0;
- TrackListIterator waves(mWaveTracks);
+ TrackListOfKindIterator waves(Track::Wave, mTracks);
WaveTrack *t = (WaveTrack *) waves.First();
while (t) {
double trackStart = t->GetStartTime();
diff --git a/src/effects/FindClipping.h b/src/effects/FindClipping.h
index 1a50e64..579ed60 100644
--- a/src/effects/FindClipping.h
+++ b/src/effects/FindClipping.h
@@ -53,10 +53,6 @@ class EffectFindClipping:public Effect
{
return wxString(_("Detecting clipping"));
}
-
- virtual int GetEffectFlags() {
- return BUILTIN_EFFECT | ANALYZE_EFFECT;
- }
virtual wxString GetEffectDescription();
diff --git a/src/effects/LoadEffects.cpp b/src/effects/LoadEffects.cpp
index 34a25c8..e3b3fe6 100644
--- a/src/effects/LoadEffects.cpp
+++ b/src/effects/LoadEffects.cpp
@@ -21,7 +21,6 @@
#include "ChangeSpeed.h"
#include "ClickRemoval.h"
#include "Compressor.h"
-#include "Contrast.h"
#include "DtmfGen.h"
#include "Echo.h"
#include "Equalization.h"
@@ -59,8 +58,8 @@
#include "audiounits/LoadAudioUnits.h"
#endif
-#if defined(__WXMSW__) && !defined(__CYGWIN__)
-#include "VST/LoadVSTWin.h"
+#ifdef USE_VST
+#include "VST/LoadVST.h"
#endif
#ifdef USE_LADSPA
@@ -267,8 +266,7 @@ void LoadEffects()
em.RegisterEffect(new EffectWahwah());
// Analyze menu
- em.RegisterEffect(new EffectContrast(), ANALYZE_EFFECT);
- em.RegisterEffect(new EffectFindClipping(), ANALYZE_EFFECT);
+ em.RegisterEffect(new EffectFindClipping());
#ifdef USE_NYQUIST
LoadNyquistPlugins();
@@ -278,6 +276,10 @@ void LoadEffects()
LoadLadspaPlugins();
#endif
+#ifdef USE_VST
+ LoadVSTPlugins();
+#endif
+
#ifdef USE_SLV2
LoadLV2Plugins();
#endif
diff --git a/src/effects/Noise.cpp b/src/effects/Noise.cpp
index 2881e01..94ad85c 100644
--- a/src/effects/Noise.cpp
+++ b/src/effects/Noise.cpp
@@ -48,10 +48,10 @@ bool EffectNoise::PromptUser()
// replace selection with noise
//
if (mT1 > mT0) {
- noiseDuration = mT1 - mT0;
+ mDuration = mT1 - mT0;
dlog.nIsSelection = true;
} else {
- gPrefs->Read(wxT("/CsPresets/NoiseGen_Duration"), &noiseDuration, 1L);
+ gPrefs->Read(wxT("/CsPresets/NoiseGen_Duration"), &mDuration, 1L);
dlog.nIsSelection = false;
}
@@ -59,7 +59,7 @@ bool EffectNoise::PromptUser()
gPrefs->Read(wxT("/CsPresets/NoiseGen_Amp"), &noiseAmplitude, 0.8f);
// Initialize dialog locals
- dlog.nDuration = noiseDuration;
+ dlog.nDuration = mDuration;
dlog.nAmplitude = noiseAmplitude;
dlog.nType = noiseType;
dlog.nTypeList = &noiseTypeList;
@@ -75,7 +75,7 @@ bool EffectNoise::PromptUser()
// if there was an OK, retrieve values
noiseType = dlog.nType;
- noiseDuration = dlog.nDuration;
+ mDuration = dlog.nDuration;
noiseAmplitude = dlog.nAmplitude;
return true;
@@ -137,76 +137,24 @@ bool EffectNoise::MakeNoise(float *buffer, sampleCount len, float fs, float ampl
return true;
}
-bool EffectNoise::Process()
+void EffectNoise::GenerateBlock(float *data,
+ const WaveTrack &track,
+ sampleCount block)
{
- if (noiseDuration <= 0.0)
- noiseDuration = sDefaultGenerateLen;
-
- //Iterate over each track
- int ntrack = 0;
- this->CopyInputWaveTracks(); // Set up mOutputWaveTracks.
- bool bGoodResult = true;
-
-#ifdef EXPERIMENTAL_FULL_LINKING
- HandleLinkedTracksOnGenerate(noiseDuration, mT0);
-#endif
-
- TrackListIterator iter(mOutputWaveTracks);
- WaveTrack *track = (WaveTrack *)iter.First();
- while (track) {
- WaveTrack *tmp = mFactory->NewWaveTrack(track->GetSampleFormat(), track->GetRate());
- numSamples = track->TimeToLongSamples(noiseDuration);
- sampleCount i = 0;
- float *data = new float[tmp->GetMaxBlockSize()];
- sampleCount block;
-
- while ((i < numSamples) && bGoodResult) {
- block = tmp->GetBestBlockSize(i);
- if (block > (numSamples - i))
- block = numSamples - i;
-
- MakeNoise(data, block, track->GetRate(), noiseAmplitude);
-
- tmp->Append((samplePtr)data, floatSample, block);
- i += block;
-
- //Update the Progress meter
- if (TrackProgress(ntrack, (double)i / numSamples))
- bGoodResult = false;
- }
- delete[] data;
-
- tmp->Flush();
- track->HandleClear(mT0, mT1, false, false);
- track->HandlePaste(mT0, tmp);
- delete tmp;
-
- if (!bGoodResult)
- break;
-
- //Iterate to the next track
- ntrack++;
- track = (WaveTrack *)iter.Next();
- }
+ MakeNoise(data, block, track.GetRate(), noiseAmplitude);
+}
- if (bGoodResult)
- {
- /*
- save last used values
- save duration unless value was got from selection, so we save only
- when user explicitely setup a value
+void EffectNoise::Success()
+{
+ /* save last used values
+ save duration unless value was got from selection, so we save only
+ when user explicitely setup a value
*/
- if (mT1 == mT0)
- gPrefs->Write(wxT("/CsPresets/NoiseGen_Duration"), noiseDuration);
-
- gPrefs->Write(wxT("/CsPresets/NoiseGen_Type"), noiseType);
- gPrefs->Write(wxT("/CsPresets/NoiseGen_Amp"), noiseAmplitude);
-
- mT1 = mT0 + noiseDuration; // Update selection.
- }
+ if (mT1 == mT0)
+ gPrefs->Write(wxT("/CsPresets/NoiseGen_Duration"), mDuration);
- this->ReplaceProcessedWaveTracks(bGoodResult);
- return bGoodResult;
+ gPrefs->Write(wxT("/CsPresets/NoiseGen_Type"), noiseType);
+ gPrefs->Write(wxT("/CsPresets/NoiseGen_Amp"), noiseAmplitude);
}
//----------------------------------------------------------------------------
@@ -228,7 +176,7 @@ NoiseDialog::NoiseDialog(EffectNoise * effect, wxWindow * parent, const wxString
{
mNoiseDurationT = NULL;
/* // already initialized in EffectNoise::PromptUser
- nDuration = noiseDuration;
+ nDuration = mDuration;
nAmplitude = noiseAmplitude;
nType = noiseType;
*/
diff --git a/src/effects/Noise.h b/src/effects/Noise.h
index 8ab8266..e7c23bc 100644
--- a/src/effects/Noise.h
+++ b/src/effects/Noise.h
@@ -16,7 +16,7 @@
#include <wx/defs.h>
#include <wx/intl.h>
-#include "Effect.h"
+#include "Generator.h"
#include "../widgets/TimeTextCtrl.h"
class wxString;
@@ -29,12 +29,13 @@ class ShuttleGui;
class WaveTrack;
-class EffectNoise:public Effect {
+class EffectNoise : public BlockGenerator {
public:
EffectNoise() {
- noiseType=0;
- noiseAmplitude=1.0;
+ SetEffectFlags(BUILTIN_EFFECT | INSERT_EFFECT);
+ noiseType = 0;
+ noiseAmplitude = 1.0;
}
virtual wxString GetEffectName() {
@@ -52,24 +53,21 @@ class EffectNoise:public Effect {
}
virtual wxString GetEffectDescription() {
- return wxString::Format(_("Applied effect: Generate Noise, %.6lf seconds"), noiseDuration);
+ return wxString::Format(_("Applied effect: Generate Noise, %.6lf seconds"), mDuration);
}
virtual wxString GetEffectAction() {
return wxString(_("Generating Noise"));
}
- virtual int GetEffectFlags() {
- return BUILTIN_EFFECT | INSERT_EFFECT;
- }
-
virtual bool PromptUser();
- virtual bool Process();
virtual bool TransferParameters( Shuttle & shuttle );
+ void GenerateBlock(float *data, const WaveTrack &track, sampleCount block);
+ void Success();
+
private:
sampleCount numSamples;
- double noiseDuration;
int noiseType;
double noiseAmplitude;
diff --git a/src/effects/NoiseRemoval.cpp b/src/effects/NoiseRemoval.cpp
index 788ee9b..6fac77b 100644
--- a/src/effects/NoiseRemoval.cpp
+++ b/src/effects/NoiseRemoval.cpp
@@ -43,7 +43,6 @@
#include "NoiseRemoval.h"
#include "../Envelope.h"
-#include "../FFT.h"
#include "../WaveTrack.h"
#include "../Prefs.h"
#include "../Project.h"
@@ -228,10 +227,10 @@ bool EffectNoiseRemoval::PromptUser()
// We may want to twiddle the levels if we are setting
// from an automation dialog, the only case in which we can
// get here without any wavetracks.
- bool bAllowTwiddleSettings = (mWaveTracks==NULL);
+ bool bAllowTwiddleSettings = (GetNumWaveTracks() == 0);
- if (mHasProfile || bAllowTwiddleSettings ) {
- dlog.m_pButton_Preview->Enable(mWaveTracks != NULL);
+ if (mHasProfile || bAllowTwiddleSettings) {
+ dlog.m_pButton_Preview->Enable(GetNumWaveTracks() != 0);
dlog.m_pButton_RemoveNoise->SetDefault();
} else {
dlog.m_pButton_Preview->Enable(false);
@@ -282,10 +281,10 @@ bool EffectNoiseRemoval::Process()
// This same code will both remove noise and profile it,
// depending on 'mDoProfile'
- this->CopyInputWaveTracks(); // Set up mOutputWaveTracks.
+ this->CopyInputTracks(); // Set up mOutputTracks.
bool bGoodResult = true;
- TrackListIterator iter(mOutputWaveTracks);
+ SelectedTrackListOfKindIterator iter(Track::Wave, mOutputTracks);
WaveTrack *track = (WaveTrack *) iter.First();
int count = 0;
while (track) {
@@ -317,7 +316,7 @@ bool EffectNoiseRemoval::Process()
if (bGoodResult)
Cleanup();
- this->ReplaceProcessedWaveTracks(bGoodResult);
+ this->ReplaceProcessedTracks(bGoodResult);
return bGoodResult;
}
@@ -350,6 +349,7 @@ void EffectNoiseRemoval::Initialize()
mFreqSmoothingBins = (int)(mFreqSmoothingHz * mWindowSize / mSampleRate);
mAttackDecayBlocks = 1 +
(int)(mAttackDecayTime * mSampleRate / (mWindowSize / 2));
+ mNoiseAttenFactor = pow(10.0, mNoiseGain/20.0);
mOneBlockAttackDecay = (int)(mNoiseGain / (mAttackDecayBlocks - 1));
mMinSignalBlocks =
(int)(mMinSignalTime * mSampleRate / (mWindowSize / 2));
@@ -367,18 +367,26 @@ void EffectNoiseRemoval::Initialize()
for(i = 0; i < mHistoryLen; i++) {
mSpectrums[i] = new float[mSpectrumSize];
mGains[i] = new float[mSpectrumSize];
- mRealFFTs[i] = new float[mWindowSize];
- mImagFFTs[i] = new float[mWindowSize];
+ mRealFFTs[i] = new float[mSpectrumSize];
+ mImagFFTs[i] = new float[mSpectrumSize];
}
+ // Initialize the FFT
+ hFFT = InitializeFFT(mWindowSize);
+
+ mFFTBuffer = new float[mWindowSize];
mInWaveBuffer = new float[mWindowSize];
- mOutWaveBuffer = new float[mWindowSize];
+ mWindow = new float[mWindowSize];
mOutImagBuffer = new float[mWindowSize];
mOutOverlapBuffer = new float[mWindowSize];
+ // Create a Hanning window function
+ for(i=0; i<mWindowSize; i++)
+ mWindow[i] = 0.5 - 0.5 * cos((2.0*M_PI*i) / mWindowSize);
+
if (mDoProfile) {
for (i = 0; i < mSpectrumSize; i++)
- mNoiseThreshold[i] = -999.0;
+ mNoiseThreshold[i] = float(0);
}
}
@@ -386,6 +394,8 @@ void EffectNoiseRemoval::Cleanup()
{
int i;
+ EndFFT(hFFT);
+
if (mDoProfile) {
ApplyFreqSmoothing(mNoiseThreshold);
}
@@ -401,8 +411,9 @@ void EffectNoiseRemoval::Cleanup()
delete[] mRealFFTs;
delete[] mImagFFTs;
+ delete[] mFFTBuffer;
delete[] mInWaveBuffer;
- delete[] mOutWaveBuffer;
+ delete[] mWindow;
delete[] mOutImagBuffer;
delete[] mOutOverlapBuffer;
}
@@ -413,10 +424,8 @@ void EffectNoiseRemoval::StartNewTrack()
for(i = 0; i < mHistoryLen; i++) {
for(j = 0; j < mSpectrumSize; j++) {
- mSpectrums[i][j] = -999.0;
- mGains[i][j] = mNoiseGain;
- }
- for(j = 0; j < mWindowSize; j++) {
+ mSpectrums[i][j] = 0;
+ mGains[i][j] = mNoiseAttenFactor;
mRealFFTs[i][j] = 0.0;
mImagFFTs[i][j] = 0.0;
}
@@ -463,15 +472,20 @@ void EffectNoiseRemoval::FillFirstHistoryWindow()
{
int i;
- FFT(mWindowSize, false, mInWaveBuffer, NULL,
- mRealFFTs[0], mImagFFTs[0]);
- for(i = 0; i < mSpectrumSize; i++) {
- double power =
- mRealFFTs[0][i] * mRealFFTs[0][i] +
- mImagFFTs[0][i] * mImagFFTs[0][i];
- mSpectrums[0][i] = (float)(10.0 * log10(power));
- mGains[0][i] = mNoiseGain;
+ for(i=0; i < mWindowSize; i++)
+ mFFTBuffer[i] = mInWaveBuffer[i];
+ RealFFTf(mFFTBuffer, hFFT);
+ for(i = 1; i < (mSpectrumSize-1); i++) {
+ mRealFFTs[0][i] = mFFTBuffer[hFFT->BitReversed[i] ];
+ mImagFFTs[0][i] = mFFTBuffer[hFFT->BitReversed[i]+1];
+ mSpectrums[0][i] = mRealFFTs[0][i]*mRealFFTs[0][i] + mImagFFTs[0][i]*mImagFFTs[0][i];
+ mGains[0][i] = mNoiseAttenFactor;
}
+ // DC and Fs/2 bins need to be handled specially
+ mSpectrums[0][0] = mFFTBuffer[0]*mFFTBuffer[0];
+ mSpectrums[0][mSpectrumSize-1] = mFFTBuffer[1]*mFFTBuffer[1];
+ mGains[0][0] = mNoiseAttenFactor;
+ mGains[0][mSpectrumSize-1] = mNoiseAttenFactor;
}
void EffectNoiseRemoval::RotateHistoryWindows()
@@ -479,11 +493,11 @@ void EffectNoiseRemoval::RotateHistoryWindows()
int last = mHistoryLen - 1;
int i;
- // Delete last window
- delete[] mSpectrums[last];
- delete[] mGains[last];
- delete[] mRealFFTs[last];
- delete[] mImagFFTs[last];
+ // Remember the last window so we can reuse it
+ float *lastSpectrum = mSpectrums[last];
+ float *lastGain = mGains[last];
+ float *lastRealFFT = mRealFFTs[last];
+ float *lastImagFFT = mImagFFTs[last];
// Rotate each window forward
for(i = last; i >= 1; i--) {
@@ -493,11 +507,11 @@ void EffectNoiseRemoval::RotateHistoryWindows()
mImagFFTs[i] = mImagFFTs[i-1];
}
- // Create new first window
- mSpectrums[0] = new float[mSpectrumSize];
- mGains[0] = new float[mSpectrumSize];
- mRealFFTs[0] = new float[mWindowSize];
- mImagFFTs[0] = new float[mWindowSize];
+ // Reuse the last buffers as the new first window
+ mSpectrums[0] = lastSpectrum;
+ mGains[0] = lastGain;
+ mRealFFTs[0] = lastRealFFT;
+ mImagFFTs[0] = lastImagFFT;
}
void EffectNoiseRemoval::FinishTrack()
@@ -516,6 +530,8 @@ void EffectNoiseRemoval::FinishTrack()
while (mOutSampleCount < mInSampleCount) {
ProcessSamples(mWindowSize / 2, empty);
}
+
+ delete [] empty;
}
void EffectNoiseRemoval::GetProfile()
@@ -555,25 +571,25 @@ void EffectNoiseRemoval::RemoveNoise()
if (mSpectrums[i][j] < min)
min = mSpectrums[i][j];
}
- if (min > mNoiseThreshold[j] && mGains[center][j] < 0.0)
- mGains[center][j] = 0.0;
+ if (min > mNoiseThreshold[j] && mGains[center][j] < 1.0)
+ mGains[center][j] = 1.0;
}
// Decay the gain in both directions;
- // note that mOneBlockAttackDecay is a negative number, like -1.0
+ // note that mOneBlockAttackDecay is less than 1.0
// dB of attenuation per block
for (j = 0; j < mSpectrumSize; j++) {
for (i = center + 1; i < mHistoryLen; i++) {
- if (mGains[i][j] < mGains[i - 1][j] + mOneBlockAttackDecay)
- mGains[i][j] = mGains[i - 1][j] + mOneBlockAttackDecay;
- if (mGains[i][j] < mNoiseGain)
- mGains[i][j] = mNoiseGain;
+ if (mGains[i][j] < mGains[i - 1][j] * mOneBlockAttackDecay)
+ mGains[i][j] = mGains[i - 1][j] * mOneBlockAttackDecay;
+ if (mGains[i][j] < mNoiseAttenFactor)
+ mGains[i][j] = mNoiseAttenFactor;
}
for (i = center - 1; i >= 0; i--) {
- if (mGains[i][j] < mGains[i + 1][j] + mOneBlockAttackDecay)
- mGains[i][j] = mGains[i + 1][j] + mOneBlockAttackDecay;
- if (mGains[i][j] < mNoiseGain)
- mGains[i][j] = mNoiseGain;
+ if (mGains[i][j] < mGains[i + 1][j] * mOneBlockAttackDecay)
+ mGains[i][j] = mGains[i + 1][j] * mOneBlockAttackDecay;
+ if (mGains[i][j] < mNoiseAttenFactor)
+ mGains[i][j] = mNoiseAttenFactor;
}
}
@@ -583,27 +599,21 @@ void EffectNoiseRemoval::RemoveNoise()
ApplyFreqSmoothing(mGains[out]);
// Apply gain to FFT
- for (j = 0; j < mSpectrumSize; j++) {
- float mult = pow(10.0, mGains[out][j] / 20.0);
-
- mRealFFTs[out][j] *= mult;
- mImagFFTs[out][j] *= mult;
- if (j > 0 && j < mSpectrumSize - 1) {
- mRealFFTs[out][mWindowSize - j] *= mult;
- mImagFFTs[out][mWindowSize - j] *= mult;
- }
+ for (j = 0; j < (mSpectrumSize-1); j++) {
+ mFFTBuffer[j*2 ] = mRealFFTs[out][j] * mGains[out][j];
+ mFFTBuffer[j*2+1] = mImagFFTs[out][j] * mGains[out][j];
}
+ // The Fs/2 component is stored as the imaginary part of the DC component
+ mFFTBuffer[1] = mRealFFTs[out][mSpectrumSize-1] * mGains[out][mSpectrumSize-1];
// Invert the FFT into the output buffer
- FFT(mWindowSize, true, mRealFFTs[out], mImagFFTs[out],
- mOutWaveBuffer, mOutImagBuffer);
-
- // Hanning window
- WindowFunc(3, mWindowSize, mOutWaveBuffer);
+ InverseRealFFTf(mFFTBuffer, hFFT);
// Overlap-add
- for(j = 0; j < mWindowSize; j++)
- mOutOverlapBuffer[j] += mOutWaveBuffer[j];
+ for(j = 0; j < (mSpectrumSize-1); j++) {
+ mOutOverlapBuffer[j*2 ] += mFFTBuffer[hFFT->BitReversed[j] ] * mWindow[j*2 ];
+ mOutOverlapBuffer[j*2+1] += mFFTBuffer[hFFT->BitReversed[j]+1] * mWindow[j*2+1];
+ }
// Output the first half of the overlap buffer, they're done -
// and then shift the next half over.
@@ -669,10 +679,9 @@ bool EffectNoiseRemoval::ProcessOne(int count, WaveTrack * track,
// Take the output track and insert it in place of the original
// sample data
if (bLoopSuccess) {
- track->HandleClear(mT0, mT1, false, false);
// Filtering effects always end up with more data than they started with. Delete this 'tail'.
mOutputTrack->HandleClear(mT1 - mT0, mOutputTrack->GetEndTime(), false, false);
- track->HandlePaste(mT0, mOutputTrack);
+ track->ClearAndPaste(mT0, mT1, mOutputTrack);
}
// Delete the outputTrack now that its data is inserted in place
@@ -860,7 +869,7 @@ void NoiseRemovalDialog::PopulateOrExchange(ShuttleGui & S)
mFreqS->SetRange(FREQ_MIN, FREQ_MAX);
mFreqS->SetSizeHints(150, -1);
- mTimeT = S.Id(ID_FREQ_TEXT).AddTextBox(_("Attack/decay time (secs):"),
+ mTimeT = S.Id(ID_TIME_TEXT).AddTextBox(_("Attack/decay time (secs):"),
wxT(""),
0);
S.SetStyle(wxSL_HORIZONTAL);
@@ -876,45 +885,39 @@ void NoiseRemovalDialog::PopulateOrExchange(ShuttleGui & S)
bool NoiseRemovalDialog::TransferDataToWindow()
{
- mGainS->SetValue((int)mGain);
- mFreqS->SetValue((int)(mFreq / 10));
- mTimeS->SetValue((int)(mTime * 100));
-
mGainT->SetValue(wxString::Format(wxT("%d"), (int)mGain));
mFreqT->SetValue(wxString::Format(wxT("%d"), (int)mFreq));
mTimeT->SetValue(wxString::Format(wxT("%.2f"), mTime));
+ mGainS->SetValue(TrapLong(mGain, GAIN_MIN, GAIN_MAX));
+ mFreqS->SetValue(TrapLong(mFreq / 10, FREQ_MIN, FREQ_MAX));
+ mTimeS->SetValue(TrapLong(mTime / 0.01, TIME_MIN, TIME_MAX));
+
return true;
}
bool NoiseRemovalDialog::TransferDataFromWindow()
{
- mGain = mGainS->GetValue();
- mFreq = mFreqS->GetValue() * 10;
- mTime = mTimeS->GetValue() * 0.01;
-
+ // Nothing to do here
return true;
}
void NoiseRemovalDialog::OnGainText(wxCommandEvent & event)
{
- long val;
- mGainT->GetValue().ToLong(&val);
- mGainS->SetValue(TrapLong(val, GAIN_MIN, GAIN_MAX));
+ mGainT->GetValue().ToDouble(&mGain);
+ mGainS->SetValue(TrapLong(mGain, GAIN_MIN, GAIN_MAX));
}
void NoiseRemovalDialog::OnFreqText(wxCommandEvent & event)
{
- long val;
- mFreqT->GetValue().ToLong(&val);
- mFreqS->SetValue(TrapLong(val/10, FREQ_MIN, FREQ_MAX));
+ mFreqT->GetValue().ToDouble(&mFreq);
+ mFreqS->SetValue(TrapLong(mFreq / 10, FREQ_MIN, FREQ_MAX));
}
void NoiseRemovalDialog::OnTimeText(wxCommandEvent & event)
{
- long val;
- mTimeT->GetValue().ToLong(&val);
- mTimeS->SetValue(TrapLong(val*100, TIME_MIN, TIME_MAX));
+ mTimeT->GetValue().ToDouble(&mTime);
+ mTimeS->SetValue(TrapLong(mTime / 0.01, TIME_MIN, TIME_MAX));
}
void NoiseRemovalDialog::OnGainSlider(wxCommandEvent & event)
diff --git a/src/effects/NoiseRemoval.h b/src/effects/NoiseRemoval.h
index f678452..77016ed 100644
--- a/src/effects/NoiseRemoval.h
+++ b/src/effects/NoiseRemoval.h
@@ -24,6 +24,8 @@ class wxString;
class Envelope;
class WaveTrack;
+#include "../RealFFTf.h"
+
class EffectNoiseRemoval: public Effect {
public:
@@ -103,13 +105,17 @@ private:
sampleCount mOutSampleCount;
int mInputPos;
+ HFFT hFFT;
+ float *mFFTBuffer; // mWindowSize
+ float *mWindow; // mWindowSize
+
int mFreqSmoothingBins;
int mAttackDecayBlocks;
float mOneBlockAttackDecay;
+ float mNoiseAttenFactor;
int mMinSignalBlocks;
int mHistoryLen;
float *mInWaveBuffer; // mWindowSize
- float *mOutWaveBuffer; // mWindowSize
float *mOutImagBuffer; // mWindowSize
float *mOutOverlapBuffer; // mWindowSize
float **mSpectrums; // mHistoryLen x mSpectrumSize
@@ -172,9 +178,9 @@ private:
wxTextCtrl *mFreqT;
wxTextCtrl *mTimeT;
- float mGain;
- float mFreq;
- float mTime;
+ double mGain;
+ double mFreq;
+ double mTime;
private:
DECLARE_EVENT_TABLE()
diff --git a/src/effects/Normalize.cpp b/src/effects/Normalize.cpp
index d8434d5..b3c1c5e 100644
--- a/src/effects/Normalize.cpp
+++ b/src/effects/Normalize.cpp
@@ -139,11 +139,11 @@ bool EffectNormalize::Process()
return true;
//Iterate over each track
- this->CopyInputWaveTracks(); // Set up mOutputWaveTracks.
+ this->CopyInputTracks(); // Set up mOutputTracks.
bool bGoodResult = true;
- TrackListIterator iter(mOutputWaveTracks);
- WaveTrack *track = (WaveTrack *) iter.First();
+ SelectedTrackListOfKindIterator iter(Track::Wave, mOutputTracks);
+ WaveTrack *track = (WaveTrack *) iter.First();
mCurTrackNum = 0;
while (track) {
//Get start and end times from track
@@ -179,7 +179,7 @@ bool EffectNormalize::Process()
mCurTrackNum++;
}
- this->ReplaceProcessedWaveTracks(bGoodResult);
+ this->ReplaceProcessedTracks(bGoodResult);
return bGoodResult;
}
@@ -327,6 +327,10 @@ NormalizeDialog::NormalizeDialog(EffectNormalize *effect,
: EffectDialog(parent, _("Normalize"), PROCESS_EFFECT),
mEffect(effect)
{
+ mDC = false;
+ mGain = false;
+ mLevel = 0;
+
Init();
}
@@ -348,27 +352,27 @@ void NormalizeDialog::PopulateOrExchange(ShuttleGui & S)
{
S.StartVerticalLay(false);
{
- mDCCheckBox = S.AddCheckBox(_("Remove any DC offset (center on 0.0 vertically)"),
- mDC ? wxT("true") : wxT("false"));
-
- mGainCheckBox = S.Id(ID_NORMALIZE_AMPLITUDE).AddCheckBox(_("Normalize maximum amplitude to:"),
- mGain ? wxT("true") : wxT("false"));
-
- S.StartHorizontalLay(wxALIGN_LEFT, false);
- {
- wxCheckBox *c = S.AddCheckBox(wxT(""), wxT("false"));
- S.AddSpace(c->GetSize().GetWidth() + (S.GetBorder() * 2));
- c->Hide();
- mLevelMinux = S.AddVariableText(_("-"), false,
- wxALIGN_CENTER_VERTICAL | wxALIGN_RIGHT);
- mLevelTextCtrl = S.AddTextBox(wxT(""),
- Internat::ToString(mLevel, 1),
- 10);
- mLevelTextCtrl->SetName(_("Maximum amplitude dB"));
- mLeveldB = S.AddVariableText(_("dB"), false,
- wxALIGN_CENTER_VERTICAL | wxALIGN_LEFT);
- }
- S.EndHorizontalLay();
+ mDCCheckBox = S.AddCheckBox(_("Remove any DC offset (center on 0.0 vertically)"),
+ mDC ? wxT("true") : wxT("false"));
+
+ mGainCheckBox = S.Id(ID_NORMALIZE_AMPLITUDE).AddCheckBox(_("Normalize maximum amplitude to:"),
+ mGain ? wxT("true") : wxT("false"));
+
+ S.StartHorizontalLay(wxALIGN_LEFT, false);
+ {
+ wxCheckBox *c = S.AddCheckBox(wxT(""), wxT("false"));
+ S.AddSpace(c->GetSize().GetWidth() + (S.GetBorder() * 2));
+ c->Hide();
+ mLevelMinux = S.AddVariableText(_("-"), false,
+ wxALIGN_CENTER_VERTICAL | wxALIGN_RIGHT);
+ mLevelTextCtrl = S.AddTextBox(wxT(""),
+ Internat::ToString(mLevel, 1),
+ 10);
+ mLevelTextCtrl->SetName(_("Maximum amplitude dB"));
+ mLeveldB = S.AddVariableText(_("dB"), false,
+ wxALIGN_CENTER_VERTICAL | wxALIGN_LEFT);
+ }
+ S.EndHorizontalLay();
}
S.EndVerticalLay();
}
diff --git a/src/effects/Phaser.cpp b/src/effects/Phaser.cpp
index 19612ff..3251a6d 100644
--- a/src/effects/Phaser.cpp
+++ b/src/effects/Phaser.cpp
@@ -221,37 +221,57 @@ void PhaserDialog::PopulateOrExchange(ShuttleGui & S)
S.EndHorizontalLay();
S.SetBorder(5);
- S.StartMultiColumn(3, wxCENTER);
+ S.StartMultiColumn(3, wxEXPAND);
{
+ wxSlider *s;
+ S.SetStretchyCol(1);
S.Id(ID_PHASER_STAGESTEXT).AddTextBox(_("Stages:"), wxT(""), 12);
S.SetStyle(wxSL_HORIZONTAL);
- S.Id(ID_PHASER_STAGESSLIDER).AddSlider(wxT(""), 2, STAGES_MAX, STAGES_MIN)->
- SetName(_("Stages"));
+ s = S.Id(ID_PHASER_STAGESSLIDER).AddSlider(wxT(""), 2, STAGES_MAX, STAGES_MIN);
+ s->SetName(_("Stages"));
+#if defined(__WXGTK__)
+ s->SetMinSize(wxSize(100, -1));
+#endif
S.Id(ID_PHASER_DRYWETTEXT).AddTextBox(_("Dry/Wet:"), wxT(""), 12);
S.SetStyle(wxSL_HORIZONTAL);
- S.Id(ID_PHASER_DRYWETSLIDER).AddSlider(wxT(""), 0, DRYWET_MAX, DRYWET_MIN)->
- SetName(_("Dry Wet"));
+ s = S.Id(ID_PHASER_DRYWETSLIDER).AddSlider(wxT(""), 0, DRYWET_MAX, DRYWET_MIN);
+ s->SetName(_("Dry Wet"));
+#if defined(__WXGTK__)
+ s->SetMinSize(wxSize(100, -1));
+#endif
S.Id(ID_PHASER_FREQTEXT).AddTextBox(_("LFO Frequency (Hz):"), wxT(""), 12);
S.SetStyle(wxSL_HORIZONTAL);
- S.Id(ID_PHASER_FREQSLIDER).AddSlider(wxT(""), 100, FREQ_MAX, FREQ_MIN)->
- SetName(_("LFO frequency in hertz"));
+ s = S.Id(ID_PHASER_FREQSLIDER).AddSlider(wxT(""), 100, FREQ_MAX, FREQ_MIN);
+ s->SetName(_("LFO frequency in hertz"));
+#if defined(__WXGTK__)
+ s->SetMinSize(wxSize(100, -1));
+#endif
S.Id(ID_PHASER_PHASETEXT).AddTextBox(_("LFO Start Phase (deg.):"), wxT(""), 12);
S.SetStyle(wxSL_HORIZONTAL);
- S.Id(ID_PHASER_PHASESLIDER).AddSlider(wxT(""), 0, PHASE_MAX, PHASE_MIN)->
- SetName(_("LFO start phase in degrees"));
+ s = S.Id(ID_PHASER_PHASESLIDER).AddSlider(wxT(""), 0, PHASE_MAX, PHASE_MIN);
+ s->SetName(_("LFO start phase in degrees"));
+#if defined(__WXGTK__)
+ s->SetMinSize(wxSize(100, -1));
+#endif
S.Id(ID_PHASER_DEPTHTEXT).AddTextBox(_("Depth:"), wxT(""), 12);
S.SetStyle(wxSL_HORIZONTAL);
- S.Id(ID_PHASER_DEPTHSLIDER).AddSlider(wxT(""), 0, DEPTH_MAX, DEPTH_MIN)->
- SetName(_("Depth in percent"));
+ s = S.Id(ID_PHASER_DEPTHSLIDER).AddSlider(wxT(""), 0, DEPTH_MAX, DEPTH_MIN);
+ s->SetName(_("Depth in percent"));
+#if defined(__WXGTK__)
+ s->SetMinSize(wxSize(100, -1));
+#endif
S.Id(ID_PHASER_FEEDBACKTEXT).AddTextBox(_("Feedback (%):"), wxT(""), 12);
S.SetStyle(wxSL_HORIZONTAL);
- S.Id(ID_PHASER_FEEDBACKSLIDER).AddSlider(wxT(""), 0, FB_MAX, FB_MIN)->
- SetName(_("Feedback in percent"));
+ s = S.Id(ID_PHASER_FEEDBACKSLIDER).AddSlider(wxT(""), 0, FB_MAX, FB_MIN);
+ s->SetName(_("Feedback in percent"));
+#if defined(__WXGTK__)
+ s->SetMinSize(wxSize(100, -1));
+#endif
}
S.EndMultiColumn();
}
diff --git a/src/effects/Repair.cpp b/src/effects/Repair.cpp
index 13bc924..cacc8ae 100644
--- a/src/effects/Repair.cpp
+++ b/src/effects/Repair.cpp
@@ -56,10 +56,10 @@ bool EffectRepair::Process()
{
//v This may be too much copying for EffectRepair. To support Cancel, may be able to copy much less.
// But for now, Cancel isn't supported without this.
- this->CopyInputWaveTracks(); // Set up mOutputWaveTracks. //v This may be too much copying for EffectRepair.
+ this->CopyInputTracks(); // Set up mOutputTracks. //v This may be too much copying for EffectRepair.
bool bGoodResult = true;
- TrackListIterator iter(mOutputWaveTracks);
+ SelectedTrackListOfKindIterator iter(Track::Wave, mOutputTracks);
WaveTrack *track = (WaveTrack *) iter.First();
int count = 0;
while (track) {
@@ -118,7 +118,7 @@ bool EffectRepair::Process()
count++;
}
- this->ReplaceProcessedWaveTracks(bGoodResult);
+ this->ReplaceProcessedTracks(bGoodResult);
return bGoodResult;
}
diff --git a/src/effects/Repeat.cpp b/src/effects/Repeat.cpp
index 4d5e84a..27b23cb 100644
--- a/src/effects/Repeat.cpp
+++ b/src/effects/Repeat.cpp
@@ -57,7 +57,7 @@ bool EffectRepeat::PromptUser()
// could be repeated without overflowing any track
//
int maxCount = -1;
- TrackListIterator iter(mWaveTracks);
+ TrackListOfKindIterator iter(Track::Wave, mTracks);
WaveTrack *track = (WaveTrack *) iter.First();
while (track) {
sampleCount trackLen =
@@ -108,49 +108,75 @@ bool EffectRepeat::TransferParameters( Shuttle & shuttle )
bool EffectRepeat::Process()
{
- this->CopyInputWaveTracks(); // Set up mOutputWaveTracks.
- bool bGoodResult = true;
+ // Set up mOutputTracks. This effect needs Track::All because it uses Paste that needs to have label tracks.
+ this->CopyInputTracks(Track::All);
- TrackListIterator iter(mOutputWaveTracks);
- WaveTrack *track = (WaveTrack *) iter.First();
int nTrack = 0;
+ bool bGoodResult = true;
double maxDestLen = 0.0; // used to change selection to generated bit
- while ((track != NULL) && bGoodResult) {
- double trackStart = track->GetStartTime();
- double trackEnd = track->GetEndTime();
- double t0 = mT0 < trackStart? trackStart: mT0;
- double t1 = mT1 > trackEnd? trackEnd: mT1;
-
- if (t1 <= t0)
- continue;
-
- sampleCount start = track->TimeToLongSamples(t0);
- sampleCount end = track->TimeToLongSamples(t1);
- sampleCount len = (sampleCount)(end - start);
- double tLen = track->LongSamplesToTime(len);
- double tc = t0 + tLen;
-
- if (len <= 0)
- continue;
-
- Track *dest;
- track->Copy(t0, t1, &dest);
- for(int j=0; j<repeatCount; j++)
- {
- if (!track->Paste(tc, dest) ||
- TrackProgress(nTrack, j / repeatCount)) // TrackProgress returns true on Cancel.
+
+ TrackListIterator iter(mOutputTracks);
+ // go to first wavetrack
+ Track* t;
+ for (t = iter.First(); t->GetKind() != Track::Wave; t = iter.Next());
+ if (!t)
+ return false;
+
+ // we only do a "group change" in the first selected track of the group.
+ // Paste call does changes to the group tracks
+ bool first = true;
+
+ for (; t && bGoodResult; t = iter.Next()) {
+ if (t->GetKind() == Track::Label)
+ first = true;
+ else if (t->GetKind() == Track::Wave && t->GetSelected()) {
+ WaveTrack* track = (WaveTrack*)t;
+
+ double trackStart = track->GetStartTime();
+ double trackEnd = track->GetEndTime();
+ double t0 = mT0 < trackStart? trackStart: mT0;
+ double t1 = mT1 > trackEnd? trackEnd: mT1;
+
+ if (t1 <= t0)
+ continue;
+
+ sampleCount start = track->TimeToLongSamples(t0);
+ sampleCount end = track->TimeToLongSamples(t1);
+ sampleCount len = (sampleCount)(end - start);
+ double tLen = track->LongSamplesToTime(len);
+ double tc = t0 + tLen;
+
+ if (len <= 0)
+ continue;
+
+ Track *dest;
+ track->Copy(t0, t1, &dest);
+ for(int j=0; j<repeatCount; j++)
{
- bGoodResult = false;
- break;
+ if (first) {
+ if (!track->Paste(tc, dest, mOutputTracks) ||
+ TrackProgress(nTrack, j / repeatCount)) // TrackProgress returns true on Cancel.
+ {
+ bGoodResult = false;
+ break;
+ }
+ }
+ else {
+ if (!track->HandlePaste(tc, dest) ||
+ TrackProgress(nTrack, j / repeatCount)) // TrackProgress returns true on Cancel.
+ {
+ bGoodResult = false;
+ break;
+ }
+ }
+ tc += tLen;
}
- tc += tLen;
+ first = false;
+ if (tc > maxDestLen)
+ maxDestLen = tc;
+ delete dest;
+ nTrack++;
}
- if (tc > maxDestLen)
- maxDestLen = tc;
- delete dest;
-
- track = (WaveTrack *) iter.Next();
- nTrack++;
}
if (bGoodResult)
@@ -160,7 +186,7 @@ bool EffectRepeat::Process()
mT1 = maxDestLen;
}
- this->ReplaceProcessedWaveTracks(bGoodResult);
+ this->ReplaceProcessedTracks(bGoodResult);
return bGoodResult;
}
@@ -192,7 +218,7 @@ RepeatDialog::RepeatDialog(EffectRepeat *effect,
void RepeatDialog::PopulateOrExchange(ShuttleGui & S)
{
wxTextValidator vld(wxFILTER_INCLUDE_CHAR_LIST);
- vld.SetIncludes(wxArrayString(12, numbers));
+ vld.SetIncludes(wxArrayString(10, numbers));
S.StartHorizontalLay(wxCENTER, false);
{
diff --git a/src/effects/Reverse.cpp b/src/effects/Reverse.cpp
index 19ef3f7..c77baf1 100644
--- a/src/effects/Reverse.cpp
+++ b/src/effects/Reverse.cpp
@@ -19,7 +19,9 @@
#include <math.h>
#include "Reverse.h"
+#include "../Project.h"
#include "../WaveTrack.h"
+#include "../LabelTrack.h"
//
// EffectReverse
@@ -31,35 +33,74 @@ EffectReverse::EffectReverse()
bool EffectReverse::Process()
{
- this->CopyInputWaveTracks(); // Set up mOutputWaveTracks.
+ //Track::All is needed because Reverse should move the labels too
+ this->CopyInputTracks(Track::All); // Set up mOutputTracks.
bool bGoodResult = true;
- TrackListIterator iter(mOutputWaveTracks);
- WaveTrack *track = (WaveTrack *) iter.First();
+ TrackListIterator iter(mOutputTracks);
+ Track *t = iter.First();
int count = 0;
- while (track) {
- double trackStart = track->GetStartTime();
- double trackEnd = track->GetEndTime();
- double t0 = mT0 < trackStart? trackStart: mT0;
- double t1 = mT1 > trackEnd? trackEnd: mT1;
-
- if (t1 > t0) {
- sampleCount start = track->TimeToLongSamples(t0);
- sampleCount end = track->TimeToLongSamples(t1);
- sampleCount len = (sampleCount)(end - start);
-
- if (!ProcessOne(count, track, start, len))
- {
- bGoodResult = false;
- break;
+ double lt0 = -2.0; // -2.0 = not initialized yet; -1.0 = is not possible to reverse labels
+ double lt1 = -2.0;
+ while (t) {
+ if (t->GetKind() == Track::Wave) {
+ WaveTrack *track = (WaveTrack*)t;
+ double trackStart = track->GetStartTime();
+ double trackEnd = track->GetEndTime();
+ double t0 = mT0 < trackStart? trackStart: mT0;
+ double t1 = mT1 > trackEnd? trackEnd: mT1;
+
+ if (track->GetSelected()) {
+ if (t1 > t0) {
+ sampleCount start = track->TimeToLongSamples(t0);
+ sampleCount end = track->TimeToLongSamples(t1);
+ sampleCount len = (sampleCount)(end - start);
+
+ if (!ProcessOne(count, track, start, len))
+ {
+ bGoodResult = false;
+ break;
+ }
+
+ //if this is the first selected track in the group we can define the label
+ //region to be reversed without any more verifications
+ if (lt0 == -2.0) {
+ lt0 = t0;
+ lt1 = t1;
+ }
+ //track has not the same selection result (after checking start and end of the track as the first track)
+ //it's not possible to know how to reverse the label in this situation.
+ else if ((lt0 != t0) || (lt1 != t1)) {
+ lt0 = -1.0;
+ lt1 = -1.0;
+ }
+ }
+ }
+ //if the track is not selected but has no content inside the selected region, there is no problem.
+ //otherwise we should not change the labels.
+ else if (t1 > t0) {
+ lt0 = -1.0;
+ lt1 = -1.0;
}
}
-
- track = (WaveTrack *) iter.Next();
+ else if (t->GetKind() == Track::Label) {
+ AudacityProject *p = GetActiveProject();
+ //if we can reverse the label
+ if (lt0 != -1.0 && p && p->IsSticky()) {
+ LabelTrack *track = (LabelTrack*)t;
+ track->ChangeLabelsOnReverse(lt0, lt1);
+ }
+ //otherwise we set the region to the not initialized state -2.0 to begin the process in the next group
+ else {
+ lt0 = -2.0;
+ lt1 = -2.0;
+ }
+ }
+ t = iter.Next();
count++;
}
- this->ReplaceProcessedWaveTracks(bGoodResult);
+ this->ReplaceProcessedTracks(bGoodResult);
return bGoodResult;
}
diff --git a/src/effects/SBSMSEffect.cpp b/src/effects/SBSMSEffect.cpp
index b58f4fd..d55fefb 100644
--- a/src/effects/SBSMSEffect.cpp
+++ b/src/effects/SBSMSEffect.cpp
@@ -21,7 +21,40 @@ effect that uses SBSMS to do its processing (TimeScale)
#include "../WaveTrack.h"
#include "../Project.h"
-struct resampleBuf {
+class resampleBuf
+{
+public:
+ resampleBuf()
+ {
+ buf = NULL;
+ leftBuffer = NULL;
+ rightBuffer = NULL;
+
+ sbsmser = NULL;
+ pitch = NULL;
+ outBuf = NULL;
+ outputLeftBuffer = NULL;
+ outputRightBuffer = NULL;
+ outputLeftTrack = NULL;
+ outputRightTrack = NULL;
+ resampler = NULL;
+ }
+
+ ~resampleBuf()
+ {
+ if(buf) free(buf);
+ if(leftBuffer) free(leftBuffer);
+ if(rightBuffer) free(rightBuffer);
+ if(pitch) pitch_destroy(pitch);
+ if(sbsmser) sbsms_destroy(sbsmser);
+ if(outBuf) free(outBuf);
+ if(outputLeftBuffer) free(outputLeftBuffer);
+ if(outputRightBuffer) free(outputRightBuffer);
+ if(outputLeftTrack) delete outputLeftTrack;
+ if(outputRightTrack) delete outputRightTrack;
+ if(resampler) delete resampler;
+ }
+
audio *buf;
double ratio;
sampleCount block;
@@ -31,6 +64,16 @@ struct resampleBuf {
float *rightBuffer;
WaveTrack *leftTrack;
WaveTrack *rightTrack;
+
+ // Not required by callbacks, but makes for easier cleanup
+ sbsms *sbsmser;
+ pitcher *pitch;
+ audio *outBuf;
+ float *outputLeftBuffer;
+ float *outputRightBuffer;
+ WaveTrack *outputLeftTrack;
+ WaveTrack *outputRightTrack;
+ Resampler *resampler;
};
long samplesCB(audio *chdata, long numFrames, void *userData)
@@ -115,226 +158,228 @@ bool EffectSBSMS::Process()
bool bGoodResult = true;
//Iterate over each track
- this->CopyInputWaveTracks(); // Set up mOutputWaveTracks.
- TrackListIterator iter(mOutputWaveTracks);
- WaveTrack* leftTrack = (WaveTrack*)(iter.First());
+ //Track::All is needed because this effect needs to introduce silence in the group tracks to keep sync
+ this->CopyInputTracks(Track::All); // Set up mOutputTracks.
+ TrackListIterator iter(mOutputTracks);
+ // go to first wavetrack
+ Track* t;
+ for (t = iter.First(); t->GetKind() != Track::Wave; t = iter.Next());
+ if (!t)
+ return false;
+ WaveTrack* leftTrack = (WaveTrack*)t;
+ WaveTrack* saveLeft = leftTrack;
mCurTrackNum = 0;
double len = leftTrack->GetEndTime() - leftTrack->GetStartTime();
double maxDuration = 0.0;
- while (leftTrack != NULL) {
- //Get start and end times from track
- mCurT0 = leftTrack->GetStartTime();
- mCurT1 = leftTrack->GetEndTime();
-
- //Set the current bounds to whichever left marker is
- //greater and whichever right marker is less
- mCurT0 = wxMax(mT0, mCurT0);
- mCurT1 = wxMin(mT1, mCurT1);
-
- // Process only if the right marker is to the right of the left marker
- if (mCurT1 > mCurT0) {
- sampleCount start;
- sampleCount end;
- start = leftTrack->TimeToLongSamples(mCurT0);
- end = leftTrack->TimeToLongSamples(mCurT1);
+ // we only do a "group change" in the first selected track of the group.
+ // ClearAndPaste has a call to Paste that does changes to the group tracks
+ bool first = true;
+
+ while (t != NULL) {
+ if (t->GetKind() == Track::Label)
+ first = true;
+ else if (t->GetKind() == Track::Wave && t->GetSelected()) {
+ WaveTrack* leftTrack = (WaveTrack*)t;
+
+ //Get start and end times from track
+ mCurT0 = leftTrack->GetStartTime();
+ mCurT1 = leftTrack->GetEndTime();
- WaveTrack* rightTrack = NULL;
- if (leftTrack->GetLinked()) {
- double t;
- rightTrack = (WaveTrack*)(iter.Next());
-
- //Adjust bounds by the right tracks markers
- t = rightTrack->GetStartTime();
- t = wxMax(mT0, t);
- mCurT0 = wxMin(mCurT0, t);
- t = rightTrack->GetEndTime();
- t = wxMin(mT1, t);
- mCurT1 = wxMax(mCurT1, t);
-
- //Transform the marker timepoints to samples
+ //Set the current bounds to whichever left marker is
+ //greater and whichever right marker is less
+ mCurT0 = wxMax(mT0, mCurT0);
+ mCurT1 = wxMin(mT1, mCurT1);
+
+ // Process only if the right marker is to the right of the left marker
+ if (mCurT1 > mCurT0) {
+ sampleCount start;
+ sampleCount end;
start = leftTrack->TimeToLongSamples(mCurT0);
end = leftTrack->TimeToLongSamples(mCurT1);
- mCurTrackNum++; // Increment for rightTrack, too.
- }
-
- sampleCount trackEnd = leftTrack->TimeToLongSamples(leftTrack->GetEndTime());
+ WaveTrack* rightTrack = NULL;
+ if (leftTrack->GetLinked()) {
+ double t;
+ rightTrack = (WaveTrack*)(iter.Next());
+
+ //Adjust bounds by the right tracks markers
+ t = rightTrack->GetStartTime();
+ t = wxMax(mT0, t);
+ mCurT0 = wxMin(mCurT0, t);
+ t = rightTrack->GetEndTime();
+ t = wxMin(mT1, t);
+ mCurT1 = wxMax(mCurT1, t);
+
+ //Transform the marker timepoints to samples
+ start = leftTrack->TimeToLongSamples(mCurT0);
+ end = leftTrack->TimeToLongSamples(mCurT1);
+
+ mCurTrackNum++; // Increment for rightTrack, too.
+ }
+
+ sampleCount trackEnd = leftTrack->TimeToLongSamples(leftTrack->GetEndTime());
- // SBSMS has a fixed sample rate - we just convert to its sample rate and then convert back
- float srIn = leftTrack->GetRate();
- float srSBSMS = 44100.0;
-
- // the resampler needs a callback to supply its samples
- resampleBuf rb;
- sampleCount maxBlockSize = leftTrack->GetMaxBlockSize();
- rb.block = maxBlockSize;
- rb.buf = (audio*)calloc(rb.block,sizeof(audio));
- rb.leftTrack = leftTrack;
- rb.rightTrack = rightTrack?rightTrack:leftTrack;
- rb.leftBuffer = (float*)calloc(maxBlockSize,sizeof(float));
- rb.rightBuffer = (float*)calloc(maxBlockSize,sizeof(float));
- rb.offset = start;
- rb.end = trackEnd;
- rb.ratio = srSBSMS/srIn;
- Resampler *resampler = new Resampler(resampleCB, &rb);
-
- // Samples in selection
- sampleCount samplesIn = end-start;
-
- // Samples for SBSMS to process after resampling
- sampleCount samplesToProcess = (sampleCount) ((real)samplesIn*(srSBSMS/srIn));
-
- // Samples in output after resampling back
- real stretch2;
- if(rateStart == rateEnd)
- stretch2 = 1.0/rateStart;
- else
- stretch2 = 1.0/(rateEnd-rateStart)*log(rateEnd/rateStart);
- sampleCount samplesToGenerate = (sampleCount) ((real)samplesToProcess * stretch2);
- sampleCount samplesOut = (sampleCount) ((real)samplesIn * stretch2);
- double duration = (mCurT1-mCurT0) * stretch2;
- if(duration > maxDuration)
- maxDuration = duration;
-
- sbsmsInfo si;
- si.rs = resampler;
- si.samplesToProcess = samplesToProcess;
- si.samplesToGenerate = samplesToGenerate;
- si.stretch0 = rateStart;
- si.stretch1 = rateEnd;
- si.ratio0 = pitchStart;
- si.ratio1 = pitchEnd;
-
- sbsms *sbsmser = sbsms_create(&samplesCB,&stretchCB,&ratioCB,rightTrack?2:1,quality,bPreAnalyze,true);
- pitcher *pitch = pitch_create(sbsmser,&si,srIn/srSBSMS);
-
- WaveTrack* outputLeftTrack = mFactory->NewWaveTrack(leftTrack->GetSampleFormat(),
- leftTrack->GetRate());
- WaveTrack* outputRightTrack = rightTrack?mFactory->NewWaveTrack(rightTrack->GetSampleFormat(),
- rightTrack->GetRate()):NULL;
-
-
- sampleCount blockSize = SBSMS_FRAME_SIZE[quality];
- audio *outBuf = (audio*)calloc(blockSize,sizeof(audio));
- float *outputLeftBuffer = (float*)calloc(blockSize*2,sizeof(float));
- float *outputRightBuffer = rightTrack?(float*)calloc(blockSize*2,sizeof(float)):NULL;
-
- long pos = 0;
- long outputCount = -1;
-
- // pre analysis
- real fracPre = 0.0f;
- if(bPreAnalyze) {
- fracPre = 0.05f;
- Resampler *resamplerPre;
- resampleBuf rbPre;
- rbPre.block = maxBlockSize;
- rbPre.buf = (audio*)calloc(rb.block,sizeof(audio));
- rbPre.leftTrack = leftTrack;
- rbPre.rightTrack = rightTrack?rightTrack:leftTrack;
- rbPre.leftBuffer = (float*)calloc(maxBlockSize,sizeof(float));
- rbPre.rightBuffer = (float*)calloc(maxBlockSize,sizeof(float));
- rbPre.offset = start;
- rbPre.end = end;
- rbPre.ratio = srSBSMS/srIn;
- resamplerPre = new Resampler(resampleCB, &rbPre);
- si.rs = resamplerPre;
+ // SBSMS has a fixed sample rate - we just convert to its sample rate and then convert back
+ float srIn = leftTrack->GetRate();
+ float srSBSMS = 44100.0;
+
+ // the resampler needs a callback to supply its samples
+ resampleBuf rb;
+ sampleCount maxBlockSize = leftTrack->GetMaxBlockSize();
+ rb.block = maxBlockSize;
+ rb.buf = (audio*)calloc(rb.block,sizeof(audio));
+ rb.leftTrack = leftTrack;
+ rb.rightTrack = rightTrack?rightTrack:leftTrack;
+ rb.leftBuffer = (float*)calloc(maxBlockSize,sizeof(float));
+ rb.rightBuffer = (float*)calloc(maxBlockSize,sizeof(float));
+ rb.offset = start;
+ rb.end = trackEnd;
+ rb.ratio = srSBSMS/srIn;
+ rb.resampler = new Resampler(resampleCB, &rb);
+
+ // Samples in selection
+ sampleCount samplesIn = end-start;
+
+ // Samples for SBSMS to process after resampling
+ sampleCount samplesToProcess = (sampleCount) ((real)samplesIn*(srSBSMS/srIn));
+
+ // Samples in output after resampling back
+ real stretch2;
+ if(rateStart == rateEnd)
+ stretch2 = 1.0/rateStart;
+ else
+ stretch2 = 1.0/(rateEnd-rateStart)*log(rateEnd/rateStart);
+ sampleCount samplesToGenerate = (sampleCount) ((real)samplesToProcess * stretch2);
+ sampleCount samplesOut = (sampleCount) ((real)samplesIn * stretch2);
+ double duration = (mCurT1-mCurT0) * stretch2;
+ if(duration > maxDuration)
+ maxDuration = duration;
+
+ sbsmsInfo si;
+ si.rs = rb.resampler;
+ si.samplesToProcess = samplesToProcess;
+ si.samplesToGenerate = samplesToGenerate;
+ si.stretch0 = rateStart;
+ si.stretch1 = rateEnd;
+ si.ratio0 = pitchStart;
+ si.ratio1 = pitchEnd;
+
+ rb.sbsmser = sbsms_create(&samplesCB,&stretchCB,&ratioCB,rightTrack?2:1,quality,bPreAnalyze,true);
+ rb.pitch = pitch_create(rb.sbsmser,&si,srIn/srSBSMS);
+
+ rb.outputLeftTrack = mFactory->NewWaveTrack(leftTrack->GetSampleFormat(),
+ leftTrack->GetRate());
+ if(rightTrack)
+ rb.outputRightTrack = mFactory->NewWaveTrack(rightTrack->GetSampleFormat(),
+ rightTrack->GetRate());
+
+
+ sampleCount blockSize = SBSMS_FRAME_SIZE[quality];
+ rb.outBuf = (audio*)calloc(blockSize,sizeof(audio));
+ rb.outputLeftBuffer = (float*)calloc(blockSize*2,sizeof(float));
+ if(rightTrack)
+ rb.outputRightBuffer = (float*)calloc(blockSize*2,sizeof(float));
long pos = 0;
- long lastPos = 0;
- long ret = 0;
- while(lastPos<samplesToProcess) {
- ret = sbsms_pre_analyze(&samplesCB,&si,sbsmser);
- lastPos = pos;
- pos += ret;
- real completion = (real)lastPos/(real)samplesToProcess;
- if (TrackProgress(0,fracPre*completion))
- return false;
- }
- sbsms_pre_analyze_complete(sbsmser);
- free(rbPre.buf);
- free(rbPre.leftBuffer);
- free(rbPre.rightBuffer);
- sbsms_reset(sbsmser);
- si.rs = resampler;
- }
-
- // process
- while(pos<samplesOut && outputCount) {
- long frames;
- if(pos+blockSize>samplesOut) {
- frames = samplesOut - pos;
- } else {
- frames = blockSize;
+ long outputCount = -1;
+
+ // pre analysis
+ real fracPre = 0.0f;
+ if(bPreAnalyze) {
+ fracPre = 0.05f;
+ resampleBuf rbPre;
+ rbPre.block = maxBlockSize;
+ rbPre.buf = (audio*)calloc(rb.block,sizeof(audio));
+ rbPre.leftTrack = leftTrack;
+ rbPre.rightTrack = rightTrack?rightTrack:leftTrack;
+ rbPre.leftBuffer = (float*)calloc(maxBlockSize,sizeof(float));
+ rbPre.rightBuffer = (float*)calloc(maxBlockSize,sizeof(float));
+ rbPre.offset = start;
+ rbPre.end = end;
+ rbPre.ratio = srSBSMS/srIn;
+ rbPre.resampler = new Resampler(resampleCB, &rbPre);
+ si.rs = rbPre.resampler;
+
+ long pos = 0;
+ long lastPos = 0;
+ long ret = 0;
+ bool stopped = false;
+ while(lastPos<samplesToProcess) {
+ ret = sbsms_pre_analyze(&samplesCB,&si,rb.sbsmser);
+ lastPos = pos;
+ pos += ret;
+ real completion = (real)lastPos/(real)samplesToProcess;
+ if (TrackProgress(0,fracPre*completion))
+ return false;
+ }
+ sbsms_pre_analyze_complete(rb.sbsmser);
+ sbsms_reset(rb.sbsmser);
+ si.rs = rb.resampler;
}
- outputCount = pitch_process(outBuf, frames, pitch);
- for(int i = 0; i < outputCount; i++) {
- outputLeftBuffer[i] = outBuf[i][0];
- if(rightTrack) outputRightBuffer[i] = outBuf[i][1];
+ // process
+ while(pos<samplesOut && outputCount) {
+ long frames;
+ if(pos+blockSize>samplesOut) {
+ frames = samplesOut - pos;
+ } else {
+ frames = blockSize;
+ }
+
+ outputCount = pitch_process(rb.outBuf, frames, rb.pitch);
+ for(int i = 0; i < outputCount; i++) {
+ rb.outputLeftBuffer[i] = rb.outBuf[i][0];
+ if(rightTrack)
+ rb.outputRightBuffer[i] = rb.outBuf[i][1];
+ }
+ pos += outputCount;
+ rb.outputLeftTrack->Append((samplePtr)rb.outputLeftBuffer, floatSample, outputCount);
+ if(rightTrack)
+ rb.outputRightTrack->Append((samplePtr)rb.outputRightBuffer, floatSample, outputCount);
+
+ double frac = (double)pos/(double)samplesOut;
+ int nWhichTrack = mCurTrackNum;
+ if(rightTrack) {
+ nWhichTrack = 2*(mCurTrackNum/2);
+ if (frac < 0.5)
+ frac *= 2.0; // Show twice as far for each track, because we're doing 2 at once.
+ else {
+ nWhichTrack++;
+ frac -= 0.5;
+ frac *= 2.0; // Show twice as far for each track, because we're doing 2 at once.
+ }
+ }
+ if (TrackProgress(nWhichTrack, fracPre + (1.0-fracPre)*frac))
+ return false;
}
- pos += outputCount;
- outputLeftTrack->Append((samplePtr)outputLeftBuffer, floatSample, outputCount);
- if(rightTrack) outputRightTrack->Append((samplePtr)outputRightBuffer, floatSample, outputCount);
+ rb.outputLeftTrack->Flush();
+ if(rightTrack)
+ rb.outputRightTrack->Flush();
- double frac = (double)pos/(double)samplesOut;
- int nWhichTrack = mCurTrackNum;
+ if (first)
+ leftTrack->ClearAndPaste(mCurT0, mCurT1, rb.outputLeftTrack, true, true, NULL, true);
+ else {
+ leftTrack->HandleClear(mCurT0, mCurT1, false, false);
+ leftTrack->HandlePaste(mCurT0, rb.outputLeftTrack);
+ }
+
if(rightTrack) {
- nWhichTrack = 2*(mCurTrackNum/2);
- if (frac < 0.5)
- frac *= 2.0; // Show twice as far for each track, because we're doing 2 at once.
- else {
- nWhichTrack++;
- frac -= 0.5;
- frac *= 2.0; // Show twice as far for each track, because we're doing 2 at once.
- }
+ rightTrack->HandleClear(mCurT0, mCurT1, false, false);
+ rightTrack->HandlePaste(mCurT0, rb.outputRightTrack);
}
- if (TrackProgress(nWhichTrack, fracPre + (1.0-fracPre)*frac))
- return false;
- }
- outputLeftTrack->Flush();
- if(rightTrack) outputRightTrack->Flush();
-
- leftTrack->HandleClear(mCurT0, mCurT1, false, false);
- leftTrack->HandlePaste(mCurT0, outputLeftTrack);
- if(rightTrack) {
- rightTrack->HandleClear(mCurT0, mCurT1, false, false);
- rightTrack->HandlePaste(mCurT0, outputRightTrack);
+
+ first = false;
}
-
- delete outputLeftTrack;
- if(rightTrack) delete outputRightTrack;
- free(outputLeftBuffer);
- if(rightTrack) free(outputRightBuffer);
- free(outBuf);
- free(rb.leftBuffer);
- free(rb.rightBuffer);
- free(rb.buf);
- delete resampler;
- sbsms_destroy(sbsmser);
- pitch_destroy(pitch);
+ mCurTrackNum++;
}
-
//Iterate to the next track
- leftTrack = (WaveTrack*)(iter.Next());
- mCurTrackNum++;
+ t = iter.Next();
}
- this->ReplaceProcessedWaveTracks(bGoodResult);
-
-#ifdef EXPERIMENTAL_FULL_LINKING
- AudacityProject *p = (AudacityProject*)mParent;
- if( p && p->IsSticky() ){
- leftTrack = (WaveTrack*)(iter.First());
- double newLen = leftTrack->GetEndTime() - leftTrack->GetStartTime();
- double timeAdded = newLen-len;
- double sel = mCurT1-mCurT0;
- double percent = (sel/(timeAdded+sel))*100 - 100;
- if ( !(HandleGroupChangeSpeed(percent, mCurT0, mCurT1)) ) bGoodResult = false;
- }
-#endif
+ if (bGoodResult)
+ ReplaceProcessedTracks(bGoodResult);
// Update selection
mT0 = mCurT0;
diff --git a/src/effects/Silence.cpp b/src/effects/Silence.cpp
index ca1f9e4..5343415 100644
--- a/src/effects/Silence.cpp
+++ b/src/effects/Silence.cpp
@@ -29,53 +29,34 @@
bool EffectSilence::PromptUser()
{
- TimeDialog dlog(mParent, wxID_ANY, _("Silence Generator"));
+ TimeDialog dlog(mParent, _("Silence Generator"));
dlog.SetSampleRate(mProjectRate);
if (mT1 > mT0) {
// there is a selection: let's fit in there...
- length = mT1 - mT0;
+ mDuration = mT1 - mT0;
dlog.SetFormatString(wxT("hh:mm:ss + samples"));
} else {
// retrieve last used values
dlog.SetFormatString(wxT("seconds"));
}
- dlog.SetTimeValue(length);
+ dlog.SetTimeValue(mDuration);
if (dlog.ShowModal() == wxID_CANCEL)
return false;
- length = dlog.GetTimeValue();
+ mDuration = dlog.GetTimeValue();
return true;
}
-bool EffectSilence::Process()
+bool EffectSilence::GenerateTrack(WaveTrack *tmp,
+ const WaveTrack &track,
+ int ntrack)
{
- if (length <= 0.0)
- length = sDefaultGenerateLen;
-
-#ifdef EXPERIMENTAL_FULL_LINKING
- HandleLinkedTracksOnGenerate(length, mT0);
-#endif
-
- TrackListIterator iter(mWaveTracks);
- WaveTrack *track = (WaveTrack *)iter.First();
- while (track) {
- WaveTrack *tmp = mFactory->NewWaveTrack(track->GetSampleFormat(), track->GetRate());
- tmp->InsertSilence(0.0, length);
- tmp->Flush();
- track->HandleClear(mT0, mT1, false, false);
- track->HandlePaste(mT0, tmp);
- delete tmp;
-
- //Iterate to the next track
- track = (WaveTrack *)iter.Next();
- }
-
- mT1 = mT0 + length; // Update selection.
+ tmp->InsertSilence(0.0, mDuration);
return true;
}
diff --git a/src/effects/Silence.h b/src/effects/Silence.h
index f25374a..9c5f579 100644
--- a/src/effects/Silence.h
+++ b/src/effects/Silence.h
@@ -17,17 +17,17 @@
#include <wx/dialog.h>
#include <wx/intl.h>
-#include "Effect.h"
+#include "Generator.h"
#include "../widgets/TimeTextCtrl.h"
class wxSizer;
class wxTextCtrl;
-class EffectSilence:public Effect {
+class EffectSilence : public Generator {
public:
EffectSilence() {
- length = sDefaultGenerateLen;
+ SetEffectFlags(BUILTIN_EFFECT | INSERT_EFFECT);
}
virtual wxString GetEffectName() {
@@ -50,19 +50,12 @@ class EffectSilence:public Effect {
// Useful only after PromptUser values have been set.
virtual wxString GetEffectDescription() {
- return wxString::Format(_("Applied effect: Generate Silence, %.6lf seconds"), length);
+ return wxString::Format(_("Applied effect: Generate Silence, %.6lf seconds"), mDuration);
}
- virtual int GetEffectFlags() {
- return BUILTIN_EFFECT | INSERT_EFFECT;
- }
-
virtual bool PromptUser();
-
- virtual bool Process();
-
- private:
- double length;
+ protected:
+ bool GenerateTrack(WaveTrack *tmp, const WaveTrack &track, int ntrack);
};
#endif
diff --git a/src/effects/SimpleMono.cpp b/src/effects/SimpleMono.cpp
index f28acef..947c3a3 100644
--- a/src/effects/SimpleMono.cpp
+++ b/src/effects/SimpleMono.cpp
@@ -29,10 +29,10 @@
bool EffectSimpleMono::Process()
{
//Iterate over each track
- this->CopyInputWaveTracks(); // Set up mOutputWaveTracks.
+ this->CopyInputTracks(); // Set up mOutputTracks.
bool bGoodResult = true;
- TrackListIterator iter(mOutputWaveTracks);
+ SelectedTrackListOfKindIterator iter(Track::Wave, mOutputTracks);
WaveTrack* pOutWaveTrack = (WaveTrack*)(iter.First());
mCurTrackNum = 0;
while (pOutWaveTrack != NULL)
@@ -71,7 +71,7 @@ bool EffectSimpleMono::Process()
mCurTrackNum++;
}
- this->ReplaceProcessedWaveTracks(bGoodResult);
+ this->ReplaceProcessedTracks(bGoodResult);
return bGoodResult;
}
@@ -121,8 +121,10 @@ bool EffectSimpleMono::ProcessOne(WaveTrack * track,
s += block;
//Update the Progress meter
- if (TrackProgress(mCurTrackNum, (s - start) / len))
+ if (TrackProgress(mCurTrackNum, (s - start) / len)) {
+ delete[]buffer;
return false;
+ }
}
//Clean up the buffer
diff --git a/src/effects/SimplePairedTwoTrack.h b/src/effects/SimplePairedTwoTrack.h
index 6c34e43..2cd06e0 100644
--- a/src/effects/SimplePairedTwoTrack.h
+++ b/src/effects/SimplePairedTwoTrack.h
@@ -66,11 +66,6 @@ protected:
sampleCount rstart, sampleCount len);
// It is not usually necessary to override this method
- void GetSamples(WaveTrack *track,
- sampleCount *start,
- sampleCount *len);
-
- // It is not usually necessary to override this method
void End();
protected:
@@ -131,10 +126,10 @@ bool EffectSimplePairedTwoTrack<_DataType,_xxxSample>::Init()
template<class _DataType,sampleFormat _xxxSample>
bool EffectSimplePairedTwoTrack<_DataType,_xxxSample>::Process()
{
- this->CopyInputWaveTracks(); // Set up mOutputWaveTracks.
+ this->CopyInputTracks(); // Set up mOutputTracks.
bool bGoodResult = true;
- TrackListIterator iter(mOutputWaveTracks);
+ SelectedTrackListOfKindIterator iter(Track::Wave, mOutputTracks);
int count = 0;
WaveTrack *left = (WaveTrack*)(iter.First());
WaveTrack *right;
@@ -162,7 +157,7 @@ bool EffectSimplePairedTwoTrack<_DataType,_xxxSample>::Process()
count++;
}
- this->ReplaceProcessedWaveTracks(bGoodResult);
+ this->ReplaceProcessedTracks(bGoodResult);
return bGoodResult;
}
@@ -226,27 +221,6 @@ bool EffectSimplePairedTwoTrack<_DataType,_xxxSample>::ProcessTwo(int count,
}
template<class _DataType,sampleFormat _xxxSample>
-void EffectSimplePairedTwoTrack<_DataType,_xxxSample>::GetSamples(WaveTrack *track,
- sampleCount *start,
- sampleCount *len)
-{
- double trackStart = track->GetStartTime();
- double trackEnd = track->GetEndTime();
- double t0 = mT0 < trackStart? trackStart: mT0;
- double t1 = mT1 > trackEnd? trackEnd: mT1;
-
- if (t1 > t0) {
- *start = track->TimeToLongSamples(t0);
- sampleCount end = track->TimeToLongSamples(t1);
- *len = (sampleCount)(end - *start);
- }
- else {
- *start = 0;
- *len = 0;
- }
-}
-
-template<class _DataType,sampleFormat _xxxSample>
void EffectSimplePairedTwoTrack<_DataType,_xxxSample>::End()
{
if (mnBlockSize) {
diff --git a/src/effects/SoundTouchEffect.cpp b/src/effects/SoundTouchEffect.cpp
index c451beb..182e21c 100644
--- a/src/effects/SoundTouchEffect.cpp
+++ b/src/effects/SoundTouchEffect.cpp
@@ -29,91 +29,95 @@ bool EffectSoundTouch::Process()
// by the subclass for subclass-specific parameters.
//Iterate over each track
- this->CopyInputWaveTracks(); // Set up mOutputWaveTracks.
+ //Track::All is needed because this effect needs to introduce silence in the group tracks to keep sync
+ this->CopyInputTracks(Track::All); // Set up mOutputTracks.
bool bGoodResult = true;
- TrackListIterator iter(mOutputWaveTracks);
- WaveTrack* leftTrack = (WaveTrack*)(iter.First());
+ TrackListIterator iter(mOutputTracks);
+ // go to first wavetrack
+ Track* t;
+ for (t = iter.First(); t->GetKind() != Track::Wave; t = iter.Next());
+ if (!t)
+ return false;
+ WaveTrack* leftTrack = (WaveTrack*)t;
mCurTrackNum = 0;
m_maxNewLength = 0.0;
double len = leftTrack->GetEndTime() - leftTrack->GetStartTime();
-
- while (leftTrack != NULL) {
- //Get start and end times from track
- mCurT0 = leftTrack->GetStartTime();
- mCurT1 = leftTrack->GetEndTime();
-
- //Set the current bounds to whichever left marker is
- //greater and whichever right marker is less
- mCurT0 = wxMax(mT0, mCurT0);
- mCurT1 = wxMin(mT1, mCurT1);
-
- // Process only if the right marker is to the right of the left marker
- if (mCurT1 > mCurT0) {
- sampleCount start, end;
+
+ // we only do a "group change" in the first selected track of the group.
+ // ClearAndPaste has a call to Paste that does changes to the group tracks
+ bool first = true;
+
+ while (t != NULL) {
+ if (t->GetKind() == Track::Label)
+ first = true;
+ else if (t->GetKind() == Track::Wave && t->GetSelected()) {
+ WaveTrack* leftTrack = (WaveTrack*)t;
+ //Get start and end times from track
+ mCurT0 = leftTrack->GetStartTime();
+ mCurT1 = leftTrack->GetEndTime();
+
+ //Set the current bounds to whichever left marker is
+ //greater and whichever right marker is less
+ mCurT0 = wxMax(mT0, mCurT0);
+ mCurT1 = wxMin(mT1, mCurT1);
- if (leftTrack->GetLinked()) {
- double t;
- WaveTrack* rightTrack = (WaveTrack*)(iter.Next());
+ // Process only if the right marker is to the right of the left marker
+ if (mCurT1 > mCurT0) {
+ sampleCount start, end;
+
+ if (leftTrack->GetLinked()) {
+ double t;
+ WaveTrack* rightTrack = (WaveTrack*)(iter.Next());
- //Adjust bounds by the right tracks markers
- t = rightTrack->GetStartTime();
- t = wxMax(mT0, t);
- mCurT0 = wxMin(mCurT0, t);
- t = rightTrack->GetEndTime();
- t = wxMin(mT1, t);
- mCurT1 = wxMax(mCurT1, t);
+ //Adjust bounds by the right tracks markers
+ t = rightTrack->GetStartTime();
+ t = wxMax(mT0, t);
+ mCurT0 = wxMin(mCurT0, t);
+ t = rightTrack->GetEndTime();
+ t = wxMin(mT1, t);
+ mCurT1 = wxMax(mCurT1, t);
- //Transform the marker timepoints to samples
- start = leftTrack->TimeToLongSamples(mCurT0);
- end = leftTrack->TimeToLongSamples(mCurT1);
+ //Transform the marker timepoints to samples
+ start = leftTrack->TimeToLongSamples(mCurT0);
+ end = leftTrack->TimeToLongSamples(mCurT1);
- //Inform soundtouch there's 2 channels
- mSoundTouch->setChannels(2);
+ //Inform soundtouch there's 2 channels
+ mSoundTouch->setChannels(2);
- //ProcessStereo() (implemented below) processes a stereo track
- if (!ProcessStereo(leftTrack, rightTrack, start, end))
- {
- bGoodResult = false;
- break;
- }
- mCurTrackNum++; // Increment for rightTrack, too.
- } else {
- //Transform the marker timepoints to samples
- start = leftTrack->TimeToLongSamples(mCurT0);
- end = leftTrack->TimeToLongSamples(mCurT1);
+ //ProcessStereo() (implemented below) processes a stereo track
+ if (!ProcessStereo(leftTrack, rightTrack, start, end, first))
+ {
+ bGoodResult = false;
+ break;
+ }
+ mCurTrackNum++; // Increment for rightTrack, too.
+ } else {
+ //Transform the marker timepoints to samples
+ start = leftTrack->TimeToLongSamples(mCurT0);
+ end = leftTrack->TimeToLongSamples(mCurT1);
- //Inform soundtouch there's a single channel
- mSoundTouch->setChannels(1);
+ //Inform soundtouch there's a single channel
+ mSoundTouch->setChannels(1);
- //ProcessOne() (implemented below) processes a single track
- if (!ProcessOne(leftTrack, start, end))
- {
- bGoodResult = false;
- break;
+ //ProcessOne() (implemented below) processes a single track
+ if (!ProcessOne(leftTrack, start, end, first))
+ {
+ bGoodResult = false;
+ break;
+ }
}
+ first = false;
}
+ mCurTrackNum++;
}
-
//Iterate to the next track
- leftTrack = (WaveTrack*)(iter.Next());
- mCurTrackNum++;
+ t = iter.Next();
}
- this->ReplaceProcessedWaveTracks(bGoodResult);
-
-#ifdef EXPERIMENTAL_FULL_LINKING
- AudacityProject *p = (AudacityProject*)mParent;
- if( p && p->IsSticky() ){
- leftTrack = (WaveTrack*)(iter.First());
- double newLen = leftTrack->GetEndTime() - leftTrack->GetStartTime();
- double timeAdded = newLen-len;
- double sel = mCurT1-mCurT0;
- double percent = (sel/(timeAdded+sel))*100 - 100;
- if ( !(HandleGroupChangeSpeed(percent, mCurT0, mCurT1)) ) bGoodResult = false;
- }
-#endif
+ if (bGoodResult)
+ ReplaceProcessedTracks(bGoodResult);
delete mSoundTouch;
mSoundTouch = NULL;
@@ -127,7 +131,7 @@ bool EffectSoundTouch::Process()
//ProcessOne() takes a track, transforms it to bunch of buffer-blocks,
//and executes ProcessSoundTouch on these blocks
bool EffectSoundTouch::ProcessOne(WaveTrack *track,
- sampleCount start, sampleCount end)
+ sampleCount start, sampleCount end, bool first)
{
WaveTrack *outputTrack;
sampleCount s;
@@ -180,7 +184,7 @@ bool EffectSoundTouch::ProcessOne(WaveTrack *track,
}
// Tell SoundTouch to finish processing any remaining samples
- mSoundTouch->flush();
+ mSoundTouch->flush(); // this should only be used for changeTempo - it dumps data otherwise with pRateTransposer->clear();
unsigned int outputCount = mSoundTouch->numSamples();
if (outputCount > 0) {
@@ -198,9 +202,12 @@ bool EffectSoundTouch::ProcessOne(WaveTrack *track,
// Take the output track and insert it in place of the original
// sample data
-
- track->HandleClear(mCurT0, mCurT1, false, false);
- track->HandlePaste(mCurT0, outputTrack);
+ if (first)
+ track->ClearAndPaste(mCurT0, mCurT1, outputTrack, true, true, NULL, true);
+ else {
+ track->HandleClear(mCurT0, mCurT1, false, false);
+ track->HandlePaste(mCurT0, outputTrack);
+ }
double newLength = outputTrack->GetEndTime();
m_maxNewLength = wxMax(m_maxNewLength, newLength);
@@ -213,7 +220,7 @@ bool EffectSoundTouch::ProcessOne(WaveTrack *track,
}
bool EffectSoundTouch::ProcessStereo(WaveTrack* leftTrack, WaveTrack* rightTrack,
- sampleCount start, sampleCount end)
+ sampleCount start, sampleCount end, bool first)
{
mSoundTouch->setSampleRate((unsigned int)(leftTrack->GetRate()+0.5));
@@ -304,8 +311,12 @@ bool EffectSoundTouch::ProcessStereo(WaveTrack* leftTrack, WaveTrack* rightTrack
// Take the output tracks and insert in place of the original
// sample data.
- leftTrack->HandleClear(mCurT0, mCurT1, false, false);
- leftTrack->HandlePaste(mCurT0, outputLeftTrack);
+ if (first)
+ leftTrack->ClearAndPaste(mCurT0, mCurT1, outputLeftTrack, true, true, NULL, true);
+ else {
+ leftTrack->HandleClear(mCurT0, mCurT1, false, false);
+ leftTrack->HandlePaste(mCurT0, outputLeftTrack);
+ }
rightTrack->HandleClear(mCurT0, mCurT1, false, false);
rightTrack->HandlePaste(mCurT0, outputRightTrack);
diff --git a/src/effects/SoundTouchEffect.h b/src/effects/SoundTouchEffect.h
index 32aa2cd..fa5bc5d 100644
--- a/src/effects/SoundTouchEffect.h
+++ b/src/effects/SoundTouchEffect.h
@@ -42,9 +42,9 @@ class EffectSoundTouch:public Effect {
private:
bool ProcessOne(WaveTrack * t,
- sampleCount start, sampleCount end);
+ sampleCount start, sampleCount end, bool first);
bool ProcessStereo(WaveTrack* leftTrack, WaveTrack* rightTrack,
- sampleCount start, sampleCount end);
+ sampleCount start, sampleCount end, bool first);
bool ProcessStereoResults(const unsigned int outputCount,
WaveTrack* outputLeftTrack,
WaveTrack* outputRightTrack);
diff --git a/src/effects/SpikeCleaner.cpp b/src/effects/SpikeCleaner.cpp
index 5b7f165..abc33d4 100644
--- a/src/effects/SpikeCleaner.cpp
+++ b/src/effects/SpikeCleaner.cpp
@@ -102,7 +102,7 @@ bool EffectSpikeCleaner::ProcessSimpleMono(float *buffer, sampleCount len)
int firstNoiseFrame = 0;
int noiseLen = 0;
- TrackListIterator iter(mWaveTracks);
+ TrackListOfKindIterator iter(Track::Wave, mTracks);
WaveTrack *track = (WaveTrack *) iter.First();
double curRate = track->GetRate();
int spikeMaxDurationSamples = int((curRate / 1000.0) * double(mSpikeMaxDurationMs));
diff --git a/src/effects/StereoToMono.cpp b/src/effects/StereoToMono.cpp
index 83ca770..cf94535 100644
--- a/src/effects/StereoToMono.cpp
+++ b/src/effects/StereoToMono.cpp
@@ -50,7 +50,7 @@ void EffectStereoToMono::End()
// to see if it is stereo. Consolidate these
bool EffectStereoToMono::CheckWhetherSkipEffect()
{
- TrackListIterator iter(mWaveTracks);
+ TrackListOfKindIterator iter(Track::Wave, mTracks);
WaveTrack *t = (WaveTrack*)iter.First();
while (t) {
if (t->GetLinked()) {
@@ -69,18 +69,17 @@ bool EffectStereoToMono::ProcessOne(int count)
float curMonoFrame;
sampleCount idealBlockLen = mLeftTrack->GetMaxBlockSize() * 2;
- sampleCount index = 0;
- sampleCount outTrackOffset = 0;
+ sampleCount index = mStart;
float *leftBuffer = new float[idealBlockLen];
float *rightBuffer = new float[idealBlockLen];
bool rc;
- while (index < mLeftTrackLen) {
+ while (index < mEnd) {
rc = mLeftTrack->Get((samplePtr)leftBuffer, floatSample, index, idealBlockLen);
rc = mRightTrack->Get((samplePtr)rightBuffer, floatSample, index, idealBlockLen);
sampleCount limit = idealBlockLen;
- if ((index + idealBlockLen) > mLeftTrackLen) {
- limit = mLeftTrackLen - index;
+ if ((index + idealBlockLen) > mEnd) {
+ limit = mEnd - index;
}
for (sampleCount i = 0; i < limit; ++i) {
index++;
@@ -89,16 +88,19 @@ bool EffectStereoToMono::ProcessOne(int count)
curMonoFrame = (curLeftFrame + curRightFrame) / 2.0;
leftBuffer[i] = curMonoFrame;
}
- rc = mLeftTrack->Set((samplePtr)leftBuffer, floatSample, outTrackOffset, limit);
- outTrackOffset += limit;
- if (TrackProgress(count, 2.*((double)index / (double)mLeftTrackLen)))
+ rc = mOutTrack->Append((samplePtr)leftBuffer, floatSample, limit);
+ if (TrackProgress(count, 2.*((double)index / (double)(mEnd - mStart))))
return false;
}
+ double minStart = wxMin(mLeftTrack->GetStartTime(), mRightTrack->GetStartTime());
+ mLeftTrack->Clear(mLeftTrack->GetStartTime(), mLeftTrack->GetEndTime());
+ mOutTrack->Flush();
+ mLeftTrack->HandlePaste(minStart, mOutTrack);
mLeftTrack->SetLinked(false);
mRightTrack->SetLinked(false);
mLeftTrack->SetChannel(Track::MonoChannel);
- mOutputWaveTracks->Remove(mRightTrack);
+ mOutputTracks->Remove(mRightTrack);
delete mRightTrack;
delete [] leftBuffer;
@@ -111,30 +113,43 @@ bool EffectStereoToMono::Process()
{
// Do not use mWaveTracks here. We will possibly delete tracks,
// so we must use the "real" tracklist.
- this->CopyInputWaveTracks(); // Set up mOutputWaveTracks.
+ this->CopyInputTracks(); // Set up mOutputTracks.
bool bGoodResult = true;
- TrackListIterator iter(mOutputWaveTracks);
+ SelectedTrackListOfKindIterator iter(Track::Wave, mOutputTracks);
mLeftTrack = (WaveTrack *)iter.First();
bool refreshIter = false;
+ if(mLeftTrack)
+ {
+ // create a new WaveTrack to hold all of the output
+ AudacityProject *p = GetActiveProject();
+ mOutTrack = p->GetTrackFactory()->NewWaveTrack(floatSample, mLeftTrack->GetRate());
+ }
+
int count = 0;
while (mLeftTrack) {
if (mLeftTrack->GetKind() == Track::Wave &&
- mLeftTrack->GetSelected() &&
- mLeftTrack->GetLinked()) {
+ mLeftTrack->GetSelected() &&
+ mLeftTrack->GetLinked()) {
mRightTrack = (WaveTrack *)iter.Next();
- mLeftTrackLen = mLeftTrack->TimeToLongSamples(mLeftTrack->GetEndTime());
- mRightTrackLen = mRightTrack->TimeToLongSamples(mRightTrack->GetEndTime());
- long diff = abs((long)mRightTrackLen - (long)mLeftTrackLen);
-
- if ((diff <= 2) && (mLeftTrack->GetRate() == mRightTrack->GetRate())) {
+ if ((mLeftTrack->GetRate() == mRightTrack->GetRate())) {
+ sampleCount leftTrackStart = mLeftTrack->TimeToLongSamples(mLeftTrack->GetStartTime());
+ sampleCount rightTrackStart = mRightTrack->TimeToLongSamples(mRightTrack->GetStartTime());
+ mStart = wxMin(leftTrackStart, rightTrackStart);
+
+ sampleCount leftTrackEnd = mLeftTrack->TimeToLongSamples(mLeftTrack->GetEndTime());
+ sampleCount rightTrackEnd = mRightTrack->TimeToLongSamples(mRightTrack->GetEndTime());
+ mEnd = wxMax(leftTrackEnd, rightTrackEnd);
+
bGoodResult = ProcessOne(count);
if (!bGoodResult)
break;
+ mOutTrack->Clear(mOutTrack->GetStartTime(), mOutTrack->GetEndTime());
+
// The right channel has been deleted, so we must restart from the beginning
refreshIter = true;
}
@@ -149,7 +164,9 @@ bool EffectStereoToMono::Process()
}
count++;
}
-
- this->ReplaceProcessedWaveTracks(bGoodResult);
+
+ if(mOutTrack)
+ delete mOutTrack;
+ this->ReplaceProcessedTracks(bGoodResult);
return bGoodResult;
}
diff --git a/src/effects/StereoToMono.h b/src/effects/StereoToMono.h
index 1cf6db4..bb72151 100644
--- a/src/effects/StereoToMono.h
+++ b/src/effects/StereoToMono.h
@@ -20,7 +20,7 @@ public:
EffectStereoToMono();
virtual wxString GetEffectName() {
- return wxString(_NoAcc("&Stereo to Mono"));
+ return wxString(_("Stereo to Mono"));
}
virtual std::set<wxString> GetEffectCategories() {
@@ -46,10 +46,11 @@ public:
private:
bool ProcessOne(int);
- sampleCount mLeftTrackLen;
- sampleCount mRightTrackLen;
+ sampleCount mStart;
+ sampleCount mEnd;
WaveTrack *mLeftTrack;
WaveTrack *mRightTrack;
+ WaveTrack *mOutTrack;
};
diff --git a/src/effects/ToneGen.cpp b/src/effects/ToneGen.cpp
index 26031b9..00a0d60 100644
--- a/src/effects/ToneGen.cpp
+++ b/src/effects/ToneGen.cpp
@@ -42,15 +42,15 @@ frequency changes smoothly during the tone.
EffectToneGen::EffectToneGen()
{
- mbChirp=false;
- mbLogInterpolation=false;
+ SetEffectFlags(BUILTIN_EFFECT | INSERT_EFFECT);
+ mbChirp = false;
+ mbLogInterpolation = false;
waveform = 0; //sine
frequency[0] = float(440.0); //Hz
frequency[1] = float(1320.0); //Hz
amplitude[0] = float(0.8);
amplitude[1] = float(0.8);
- length = sDefaultGenerateLen;
- interpolation=0;
+ interpolation = 0;
}
wxString EffectToneGen::GetEffectDescription() {
@@ -59,7 +59,7 @@ wxString EffectToneGen::GetEffectDescription() {
const wxChar* waveformNames[] = {wxT("sine"), wxT("square"), wxT("sawtooth"), wxT("square, no alias")};
const wxChar* interpolationNames[] = {wxT("linear"), wxT("logarithmic")};
return wxString::Format(_("Applied effect: Generate %s wave %s, frequency = %.2f Hz, amplitude = %.2f, %.6lf seconds"),
- waveformNames[waveform], mbChirp ? wxT("chirp") : wxT("tone"), frequency[0], amplitude[0], length);
+ waveformNames[waveform], mbChirp ? wxT("chirp") : wxT("tone"), frequency[0], amplitude[0], mDuration);
}
bool EffectToneGen::PromptUser()
@@ -76,7 +76,7 @@ bool EffectToneGen::PromptUser()
dlog.isSelection= false;
if (mT1 > mT0) {
- length = mT1 - mT0;
+ mDuration = mT1 - mT0;
dlog.isSelection= true;
}
@@ -86,7 +86,7 @@ bool EffectToneGen::PromptUser()
dlog.frequency[1] = frequency[1];
dlog.amplitude[0] = amplitude[0];
dlog.amplitude[1] = amplitude[1];
- dlog.length = length;
+ dlog.mDuration = mDuration;
dlog.waveforms = &waveforms;
dlog.interpolation = interpolation;
dlog.interpolations = &interpolations;
@@ -113,7 +113,7 @@ bool EffectToneGen::PromptUser()
frequency[1] = frequency[0];
amplitude[1] = amplitude[0];
}
- length = dlog.length;
+ mDuration = dlog.mDuration;
return true;
}
@@ -227,66 +227,22 @@ bool EffectToneGen::MakeTone(float *buffer, sampleCount len)
return true;
}
-
-
-bool EffectToneGen::Process()
+void EffectToneGen::BeforeGenerate()
{
- if (length <= 0.0)
- length = sDefaultGenerateLen;
-
mPositionInCycles = 0.0;
- //Iterate over each track
- int ntrack = 0;
- this->CopyInputWaveTracks(); // Set up mOutputWaveTracks.
- bool bGoodResult = true;
-
-#ifdef EXPERIMENTAL_FULL_LINKING
- HandleLinkedTracksOnGenerate(length, mT0);
-#endif
-
- TrackListIterator iter(mOutputWaveTracks);
- WaveTrack *track = (WaveTrack *)iter.First();
- while (track) {
- mSample = 0;
- mCurRate = track->GetRate();
- WaveTrack *tmp = mFactory->NewWaveTrack(track->GetSampleFormat(), mCurRate);
- numSamples = tmp->TimeToLongSamples(length);
- sampleCount i = 0;
- float *data = new float[tmp->GetMaxBlockSize()];
- sampleCount block;
-
- while ((i < numSamples) && bGoodResult) {
- block = tmp->GetBestBlockSize(i);
- if (block > (numSamples - i))
- block = numSamples - i;
- MakeTone(data, block);
- tmp->Append((samplePtr)data, floatSample, block);
- i += block;
-
- //Update the Progress meter
- if (TrackProgress(ntrack, (double)i / numSamples))
- bGoodResult = false;
- }
- delete[] data;
-
- tmp->Flush();
- track->HandleClear(mT0, mT1, false, false);
- track->HandlePaste(mT0, tmp);
- delete tmp;
-
- if (!bGoodResult)
- break;
-
- //Iterate to the next track
- ntrack++;
- track = (WaveTrack *)iter.Next();
- }
+}
- if (bGoodResult)
- mT1 = mT0 + length; // Update selection.
+void EffectToneGen::GenerateBlock(float *data,
+ const WaveTrack &track,
+ sampleCount block)
+{
+ MakeTone(data, block);
+}
- this->ReplaceProcessedWaveTracks(bGoodResult);
- return bGoodResult;
+void EffectToneGen::BeforeTrack(const WaveTrack &track)
+{
+ mSample = 0;
+ mCurRate = track.GetRate();
}
// WDR: class implementations
@@ -327,7 +283,7 @@ void ToneGenDialog::PopulateOrExchangeStandard( ShuttleGui & S )
TimeTextCtrl(this,
wxID_ANY,
wxT(""),
- length,
+ mDuration,
mEffect->mProjectRate,
wxDefaultPosition,
wxDefaultSize,
@@ -371,7 +327,7 @@ void ToneGenDialog::PopulateOrExchangeExtended( ShuttleGui & S )
TimeTextCtrl(this,
wxID_ANY,
wxT(""),
- length,
+ mDuration,
mEffect->mProjectRate,
wxDefaultPosition,
wxDefaultSize,
@@ -398,7 +354,7 @@ bool ToneGenDialog::TransferDataToWindow()
EffectDialog::TransferDataToWindow();
// Must handle this ourselves since ShuttleGui doesn't know about it
- mToneDurationT->SetTimeValue(length);
+ mToneDurationT->SetTimeValue(mDuration);
return true;
}
@@ -413,7 +369,7 @@ bool ToneGenDialog::TransferDataFromWindow()
frequency[1] = TrapDouble(frequency[1], FREQ_MIN, (float)(GetActiveProject()->GetRate())/2.);
// Must handle this ourselves since ShuttleGui doesn't know about it
- length = mToneDurationT->GetTimeValue();
+ mDuration = mToneDurationT->GetTimeValue();
return true;
}
diff --git a/src/effects/ToneGen.h b/src/effects/ToneGen.h
index 76231fc..59d2f23 100644
--- a/src/effects/ToneGen.h
+++ b/src/effects/ToneGen.h
@@ -13,7 +13,7 @@
#ifndef __AUDACITY_EFFECT_TONEGEN__
#define __AUDACITY_EFFECT_TONEGEN__
-#include "Effect.h"
+#include "Generator.h"
#include "../widgets/TimeTextCtrl.h"
#include "../Experimental.h"
@@ -29,7 +29,7 @@ class ShuttleGui;
class WaveTrack;
-class EffectToneGen:public Effect {
+class EffectToneGen : public BlockGenerator {
public:
EffectToneGen();
@@ -57,21 +57,18 @@ class EffectToneGen:public Effect {
// Useful only after PromptUser values have been set.
virtual wxString GetEffectDescription();
- virtual int GetEffectFlags() {
- return BUILTIN_EFFECT | INSERT_EFFECT;
- }
-
virtual bool PromptUser();
virtual bool TransferParameters( Shuttle & shuttle );
- virtual bool Process();
+ void GenerateBlock(float *data, const WaveTrack &track, sampleCount block);
+ void BeforeGenerate();
+ void BeforeTrack(const WaveTrack &track);
protected:
virtual bool MakeTone(float *buffer, sampleCount len);
private:
- sampleCount numSamples;
bool mbChirp;
bool mbLogInterpolation;
@@ -82,7 +79,6 @@ class EffectToneGen:public Effect {
int waveform;
float frequency[2];
float amplitude[2];
- double length;
float logFrequency[2];
double mCurRate;
int interpolation;
@@ -124,7 +120,7 @@ class ToneGenDialog:public EffectDialog {
int waveform;
double frequency[2];
double amplitude[2];
- double length;
+ double mDuration;
bool isSelection;
int interpolation;
wxArrayString *interpolations;
diff --git a/src/effects/TruncSilence.cpp b/src/effects/TruncSilence.cpp
index a114895..54967fd 100644
--- a/src/effects/TruncSilence.cpp
+++ b/src/effects/TruncSilence.cpp
@@ -5,6 +5,7 @@
TruncSilence.cpp
Lynn Allan (from DM's Normalize)
+ Philip Van Baren (more options and boundary fixes)
*******************************************************************//**
@@ -38,11 +39,20 @@ EffectTruncSilence::EffectTruncSilence()
bool EffectTruncSilence::Init()
{
- mTruncLongestAllowedSilentMs = gPrefs->Read(wxT("/CsPresets/TruncLongestAllowedSilentMs"), 200L);
+ mTruncInitialAllowedSilentMs = gPrefs->Read(wxT("/CsPresets/TruncInitialAllowedSilentMs"), 200L);
+ if ((mTruncInitialAllowedSilentMs < 0) || (mTruncInitialAllowedSilentMs >= 9999999)) { // corrupted Prefs?
+ mTruncInitialAllowedSilentMs = 200L;
+ gPrefs->Write(wxT("/CsPresets/TruncInitialAllowedSilentMs"), mTruncInitialAllowedSilentMs);
+ }
+ mTruncLongestAllowedSilentMs = gPrefs->Read(wxT("/CsPresets/TruncLongestAllowedSilentMs"), 1000L);
if ((mTruncLongestAllowedSilentMs < 0) || (mTruncLongestAllowedSilentMs >= 9999999)) { // corrupted Prefs?
- mTruncLongestAllowedSilentMs = SKIP_EFFECT_MILLISECOND;
+ mTruncLongestAllowedSilentMs = 1000L;
gPrefs->Write(wxT("/CsPresets/TruncLongestAllowedSilentMs"), mTruncLongestAllowedSilentMs);
}
+
+ if( mTruncLongestAllowedSilentMs < mTruncInitialAllowedSilentMs )
+ mTruncInitialAllowedSilentMs = mTruncLongestAllowedSilentMs;
+
mTruncDbChoiceIndex = gPrefs->Read(wxT("/CsPresets/TruncDbChoiceIndex"), 4L);
if ((mTruncDbChoiceIndex < 0) || (mTruncDbChoiceIndex >= Enums::NumDbChoices)) { // corrupted Prefs?
mTruncDbChoiceIndex = Enums::NumDbChoices - 1; // Off-Skip
@@ -55,6 +65,11 @@ bool EffectTruncSilence::Init()
mBlendFrameCount = 100;
gPrefs->Write(wxT("/CsPresets/BlendFrameCount"), 100);
}
+ mSilenceCompressRatio = 0.1*gPrefs->Read(wxT("/CsPresets/SilenceCompressRatio"), 40L);
+ if ((mSilenceCompressRatio < 1.0) || (mSilenceCompressRatio > 20.0)) { // corrupted Prefs?
+ mSilenceCompressRatio = 4.0;
+ gPrefs->Write(wxT("/CsPresets/SilenceCompressRatio"), 40L);
+ }
return true;
}
@@ -78,28 +93,33 @@ bool EffectTruncSilence::PromptUser()
if (dlog.GetReturnCode() == wxID_CANCEL)
return false;
+ gPrefs->Write(wxT("/CsPresets/TruncInitialAllowedSilentMs"), mTruncInitialAllowedSilentMs);
gPrefs->Write(wxT("/CsPresets/TruncLongestAllowedSilentMs"), mTruncLongestAllowedSilentMs);
gPrefs->Write(wxT("/CsPresets/TruncDbChoiceIndex"), mTruncDbChoiceIndex);
-
+ gPrefs->Write(wxT("/CsPresets/SilenceCompressRatio"), (int)floor(10.0*mSilenceCompressRatio+0.5));
+
return true;
}
bool EffectTruncSilence::TransferParameters( Shuttle & shuttle )
{
shuttle.TransferEnum(wxT("Db"), mTruncDbChoiceIndex, Enums::NumDbChoices, Enums::GetDbChoices());
- shuttle.TransferInt(wxT("Duration"), mTruncLongestAllowedSilentMs, 200);
+ shuttle.TransferInt(wxT("Minimum"), mTruncInitialAllowedSilentMs, 200);
+ shuttle.TransferInt(wxT("Duration"), mTruncLongestAllowedSilentMs, 1000);
+ shuttle.TransferDouble(wxT("Compress"), mSilenceCompressRatio, 4.0f);
return true;
}
#define QUARTER_SECOND_MS 250
bool EffectTruncSilence::Process()
{
- TrackListIterator iter(mWaveTracks);
+ TrackListOfKindIterator iter(Track::Wave, mTracks);
WaveTrack *t;
double t0 = mT0;
double t1 = mT1;
int tndx;
int tcount = 0;
+ int fr;
// Init using first track
t = (WaveTrack *) iter.First();
@@ -129,19 +149,19 @@ bool EffectTruncSilence::Process()
t = (WaveTrack*) iter.Next();
}
+ // Just a sanity check, really it should be much higher
+ if(blockLen < 4*mBlendFrameCount)
+ blockLen = 4*mBlendFrameCount;
+
// Transform the marker timepoints to samples
t = (WaveTrack *) iter.First();
sampleCount start = t->TimeToLongSamples(t0);
sampleCount end = t->TimeToLongSamples(t1);
// Bigger buffers reduce 'reset'
- blockLen *= 8;
-
- // Allocate buffers
- float **buffer = new float*[tcount];
- for (tndx = 0; tndx < tcount; tndx++) {
- buffer[tndx] = new float[blockLen];
- }
+ //blockLen *= 8;
+ // Stress-test the logic for cutting samples through block endpoints
+ //blockLen /= 8;
// Set thresholds
// We have a lower bound on the amount of silence we chop out at a time
@@ -149,48 +169,79 @@ bool EffectTruncSilence::Process()
// if we use 100ms.
const float minTruncMs = 1.0f;
double truncDbSilenceThreshold = Enums::Db2Signal[mTruncDbChoiceIndex];
+ int truncInitialAllowedSilentSamples =
+ int((wxMax( mTruncInitialAllowedSilentMs, minTruncMs) * rate) / 1000.0);
int truncLongestAllowedSilentSamples =
int((wxMax( mTruncLongestAllowedSilentMs, minTruncMs) * rate) / 1000.0);
-
+ // Don't allow either value to be less than the cross-fade length
+ if(truncInitialAllowedSilentSamples < mBlendFrameCount)
+ truncInitialAllowedSilentSamples = mBlendFrameCount;
+ if(truncLongestAllowedSilentSamples < mBlendFrameCount)
+ truncLongestAllowedSilentSamples = mBlendFrameCount;
- // Figure out number of frames for ramping
- int quarterSecondFrames = int((rate * QUARTER_SECOND_MS) / 1000.0);
- int rampInFrames = (truncLongestAllowedSilentSamples / 4);
- if (rampInFrames > quarterSecondFrames) {
- rampInFrames = quarterSecondFrames;
+ // For sake of efficiency, don't let blockLen be less than double the longest silent samples
+ // up until a sane limit of 1Meg samples
+ while((blockLen > 0) && (blockLen < truncLongestAllowedSilentSamples*2) && (blockLen < 1048576)) {
+ blockLen *= 2;
+ }
+ // Don't allow either value to be more than half of the block length
+ if(truncLongestAllowedSilentSamples > blockLen/2)
+ truncLongestAllowedSilentSamples = blockLen/2;
+ if(truncInitialAllowedSilentSamples > truncLongestAllowedSilentSamples)
+ truncInitialAllowedSilentSamples = truncLongestAllowedSilentSamples;
+
+ // We use the 'longest' variable as additive to the 'initial' variable
+ truncLongestAllowedSilentSamples -= truncInitialAllowedSilentSamples;
+
+ // Perform the crossfade half-way through the minimum removed silence duration
+ int rampInFrames = (truncInitialAllowedSilentSamples + mBlendFrameCount) / 2;
+ if(rampInFrames > truncInitialAllowedSilentSamples)
+ rampInFrames = truncInitialAllowedSilentSamples;
+
+ // Allocate buffers
+ float **buffer = new float*[tcount];
+ for (tndx = 0; tndx < tcount; tndx++) {
+ buffer[tndx] = new float[blockLen];
}
// Start processing
- this->CopyInputWaveTracks(); // Set up mOutputWaveTracks.
- TrackListIterator iterOut(mOutputWaveTracks);
+ //Track::All is needed because this effect has clear functionality
+ this->CopyInputTracks(Track::All); // Set up mOutputTracks.
+ SelectedTrackListOfKindIterator iterOut(Track::Wave, mOutputTracks);
sampleCount index = start;
sampleCount outTrackOffset = start;
bool cancelled = false;
+ // Reset
+ bool ignoringFrames = false;
+ bool truncToMinimum = true; // Ignore the initial samples until we get above the noise floor
+ sampleCount consecutiveSilentFrames = 0;
+ sampleCount truncIndex = 0;
+ sampleCount i = 0;
+ sampleCount keep;
+
while (index < end) {
// Limit size of current block if we've reached the end
- sampleCount limit = blockLen;
- if ((index + blockLen) > end) {
- limit = end - index;
+ sampleCount count = blockLen-i;
+ if ((index + count) > end) {
+ count = end - index;
}
// Fill the buffers
tndx = 0;
t = (WaveTrack *) iter.First();
while (t) {
- t->Get((samplePtr)buffer[tndx++], floatSample, index, blockLen);
+ t->Get((samplePtr)(buffer[tndx++]+i), floatSample, index, count);
t = (WaveTrack *) iter.Next();
}
- // Reset
- bool ignoringFrames = false;
- sampleCount consecutiveSilentFrames = 0;
- sampleCount truncIndex = 0;
+ // Shift over to account for samples remaining from prior block
+ sampleCount limit = count+i;
// Look for silences in current block
- for (sampleCount i = 0; i < limit; i++) {
+ for ( ; i < limit; i++) {
// Is current frame in all tracks below threshold
bool below = true;
@@ -200,6 +251,13 @@ bool EffectTruncSilence::Process()
break;
}
}
+ // Make sure we cross-fade and output the last silence
+ // so we get a smooth transition into whatever follows the selected region
+ // Also set the 'truncToMinimum' flag so that the last silence is truncated to the minimum amount
+ if(below && ((index+i+1) == end)) {
+ below = false;
+ truncToMinimum = true;
+ }
// Count frame if it's below threshold
if (below) {
@@ -207,31 +265,68 @@ bool EffectTruncSilence::Process()
// Ignore this frame (equivalent to cutting it)
// otherwise, keep sample to be part of allowed silence
- if (consecutiveSilentFrames > truncLongestAllowedSilentSamples) {
+ if (consecutiveSilentFrames > truncInitialAllowedSilentSamples) {
ignoringFrames = true;
continue;
}
}
else {
if (ignoringFrames == true) {
- sampleCount curOffset = i - rampInFrames;
- truncIndex -= rampInFrames; // backup into ignored frames
+ // Scale the consectiveSilentFrames so we keep a silence duration
+ // which is proportional to the original silence up to the limit
+ keep = consecutiveSilentFrames - truncInitialAllowedSilentSamples;
+ keep /= mSilenceCompressRatio;
+
+ // The first and last samples always get truncated to the minimum amount
+ if(truncToMinimum == true)
+ keep = 0;
+ if(keep > truncLongestAllowedSilentSamples)
+ keep = truncLongestAllowedSilentSamples;
+ if(keep < 0)
+ keep = 0;
+
+ // Compute the location of the cross-fade to be halfway through the silence
+ // with restriction to the samples we still have available to use
+ rampInFrames = (truncInitialAllowedSilentSamples - keep + mBlendFrameCount) / 2;
+ if(rampInFrames > truncInitialAllowedSilentSamples)
+ rampInFrames = truncInitialAllowedSilentSamples;
+ if(rampInFrames < mBlendFrameCount)
+ rampInFrames = mBlendFrameCount;
+
+ // Include the cross-fade samples in the count to make the loop logic easier
+ keep += rampInFrames;
+ truncIndex -= rampInFrames;
+
+ // back up for cross-fade
+ sampleCount curOffset = i - keep;
+
+ if(curOffset < 0) {
+ // This should never happen, but just in case...
+ keep += curOffset - rampInFrames;
+ if(keep < mBlendFrameCount)
+ keep = mBlendFrameCount;
+ curOffset = 0;
+ }
+ if(truncIndex < 0) {
+ // This should never happen, but just in case...
+ truncIndex = 0;
+ }
for (tndx = 0; tndx < tcount; tndx++) {
- sampleCount trunci = truncIndex;
- for (int fr = 0; fr < rampInFrames; fr++) {
- buffer[tndx][trunci++] = buffer[tndx][curOffset + fr];
+ // Cross fade the cut point
+ for (fr = 0; fr < mBlendFrameCount; fr++) {
+ buffer[tndx][truncIndex+fr] = ((mBlendFrameCount-fr)*buffer[tndx][truncIndex+fr] + fr*buffer[tndx][curOffset + fr]) / mBlendFrameCount;
}
- if(((trunci - rampInFrames) - mBlendFrameCount) >= 0) {
- BlendFrames(buffer[tndx], mBlendFrameCount,
- ((trunci - rampInFrames) - mBlendFrameCount),
- ((i - rampInFrames) - mBlendFrameCount));
+ // Append the 'keep' samples, if any
+ for ( ; fr < keep; fr++) {
+ buffer[tndx][truncIndex+fr] = buffer[tndx][curOffset + fr];
}
}
- truncIndex += rampInFrames;
+ truncIndex += keep;
}
consecutiveSilentFrames = 0;
ignoringFrames = false;
+ truncToMinimum = false;
}
// Can get here either because > dbThreshold
@@ -253,8 +348,32 @@ bool EffectTruncSilence::Process()
}
}
- // Maintain output index
- outTrackOffset += truncIndex;
+ // If currently in a silent section, retain samples for the next pass
+ if(ignoringFrames) {
+ keep = consecutiveSilentFrames - truncInitialAllowedSilentSamples;
+ if(keep > (truncLongestAllowedSilentSamples+mBlendFrameCount))
+ keep = truncLongestAllowedSilentSamples+mBlendFrameCount;
+ for (tndx = 0; tndx < tcount; tndx++) {
+ for(fr = 0; fr < truncInitialAllowedSilentSamples; fr++) {
+ buffer[tndx][fr] = buffer[tndx][truncIndex-truncInitialAllowedSilentSamples+fr];
+ }
+ for(fr = 0; fr < keep; fr++) {
+ buffer[tndx][truncInitialAllowedSilentSamples+fr] = buffer[tndx][i-keep+fr];
+ }
+ }
+ // Update the output index, less what we are retaining for next time
+ outTrackOffset += truncIndex - truncInitialAllowedSilentSamples;
+ // Append the following buffer to the existing data
+ i = consecutiveSilentFrames = truncInitialAllowedSilentSamples + keep;
+ truncIndex = truncInitialAllowedSilentSamples;
+ } else {
+ // Maintain output index
+ outTrackOffset += truncIndex;
+ // Reset the buffer pointers to the beginning
+ i = 0;
+ truncIndex = 0;
+ consecutiveSilentFrames = 0;
+ }
// Update progress and bail if user cancelled
cancelled = TrackProgress(0, ((double)index / (double)end));
@@ -263,14 +382,14 @@ bool EffectTruncSilence::Process()
}
// Bump to next block
- index += limit;
+ index += count;
}
// Remove stale data at end of output tracks.
if (!cancelled && (outTrackOffset < end)) {
t = (WaveTrack *) iterOut.First();
while (t) {
- t->Clear(outTrackOffset / rate, t1);
+ t->Clear(outTrackOffset / rate, t1, mOutputTracks);
t = (WaveTrack *) iterOut.Next();
}
t1 = outTrackOffset / rate;
@@ -285,7 +404,7 @@ bool EffectTruncSilence::Process()
mT0 = t0;
mT1 = t1;
- this->ReplaceProcessedWaveTracks(!cancelled);
+ this->ReplaceProcessedTracks(!cancelled);
return !cancelled;
}
@@ -308,12 +427,16 @@ void EffectTruncSilence::BlendFrames(float* buffer, int blendFrameCount, int lef
// TruncSilenceDialog
//----------------------------------------------------------------------------
-#define ID_LONGEST_SILENCE_TEXT 7000
-#define ID_DB_SILENCE_THRESHOLD_CHOICE 7001
+#define ID_SHORTEST_SILENCE_TEXT 7000
+#define ID_LONGEST_SILENCE_TEXT 7001
+#define ID_COMPRESS_FACTOR 7002
+#define ID_DB_SILENCE_THRESHOLD_CHOICE 7003
BEGIN_EVENT_TABLE(TruncSilenceDialog, EffectDialog)
EVT_BUTTON(ID_EFFECT_PREVIEW, TruncSilenceDialog::OnPreview)
+ EVT_TEXT( ID_SHORTEST_SILENCE_TEXT, TruncSilenceDialog::OnDurationChange )
EVT_TEXT( ID_LONGEST_SILENCE_TEXT, TruncSilenceDialog::OnDurationChange )
+ EVT_TEXT( ID_COMPRESS_FACTOR, TruncSilenceDialog::OnDurationChange )
END_EVENT_TABLE()
TruncSilenceDialog::TruncSilenceDialog(EffectTruncSilence * effect,
@@ -328,7 +451,7 @@ void TruncSilenceDialog::PopulateOrExchange(ShuttleGui & S)
{
S.StartHorizontalLay(wxCENTER, false);
{
- S.AddTitle(_("by Lynn Allan"));
+ S.AddTitle(_("by Lynn Allan && Philip Van Baren"));
}
S.EndHorizontalLay();
@@ -342,10 +465,18 @@ void TruncSilenceDialog::PopulateOrExchange(ShuttleGui & S)
{
wxArrayString choices(Enums::NumDbChoices, Enums::GetDbChoices());
+ S.Id( ID_SHORTEST_SILENCE_TEXT ).TieTextBox(_("Min silence duration:"),
+ mEffect->mTruncInitialAllowedSilentMs,
+ 10);
+ S.AddUnits( _("milliseconds") );
S.Id( ID_LONGEST_SILENCE_TEXT ).TieTextBox(_("Max silence duration:"),
mEffect->mTruncLongestAllowedSilentMs,
10);
S.AddUnits( _("milliseconds") );
+ S.Id( ID_COMPRESS_FACTOR ).TieTextBox(_("Silence compression:"),
+ mEffect->mSilenceCompressRatio,
+ 10);
+ S.AddUnits( _(":1") );
//S.AddUnits(_("(9999999 or greater is off)"));
S.TieChoice(_("Threshold for silence:"),
mEffect->mTruncDbChoiceIndex,
@@ -368,10 +499,12 @@ void TruncSilenceDialog::OnDurationChange(wxCommandEvent & event)
if( !IsShown() )
return;
TransferDataFromWindow();
- bool bOk = mEffect->mTruncLongestAllowedSilentMs > 0.9f ;
+ bool bOk = (mEffect->mTruncInitialAllowedSilentMs > 0.9f)
+ && (mEffect->mTruncLongestAllowedSilentMs > 0.9f)
+ && (mEffect->mSilenceCompressRatio >= 1.0f);
pWarning->SetLabel( bOk ?
wxT("") :
- _(" Duration must be at least 1 millisecond")
+ _(" Duration must be at least 1 millisecond\n Compress ratio must be at least 1:1")
);
wxWindow *pWnd;
pWnd = FindWindowById( wxID_OK, this );
diff --git a/src/effects/TruncSilence.h b/src/effects/TruncSilence.h
index f819793..0b054f5 100644
--- a/src/effects/TruncSilence.h
+++ b/src/effects/TruncSilence.h
@@ -10,6 +10,7 @@
//ToDo ... BlendFrames on "fade-out"
//ToDo ... BlendFrameCount is a user-selectable parameter
//ToDo ... Detect transient signals that are too short to interrupt the TruncatableSilence
+ Philip Van Baren (more options and boundary fixes)
**********************************************************************/
@@ -55,8 +56,10 @@ public:
private:
sampleCount mBlendFrameCount;
+ int mTruncInitialAllowedSilentMs;
int mTruncLongestAllowedSilentMs;
int mTruncDbChoiceIndex;
+ double mSilenceCompressRatio;
friend class TruncSilenceDialog;
};
@@ -80,6 +83,10 @@ private:
EffectTruncSilence *mEffect;
wxStaticText * pWarning;
+ wxStaticText *mRatioLabel;
+ wxSlider *mRatioSlider;
+ wxStaticText *mRatioText;
+
private:
DECLARE_EVENT_TABLE()
};
diff --git a/src/effects/TwoPassSimpleMono.cpp b/src/effects/TwoPassSimpleMono.cpp
index 8036177..8e344ab 100644
--- a/src/effects/TwoPassSimpleMono.cpp
+++ b/src/effects/TwoPassSimpleMono.cpp
@@ -28,7 +28,7 @@ bool EffectTwoPassSimpleMono::Process()
mSecondPassDisabled = false;
InitPass1();
- this->CopyInputWaveTracks(); // Set up mOutputWaveTracks.
+ this->CopyInputTracks(); // Set up mOutputTracks.
bool bGoodResult = ProcessPass();
if (bGoodResult && !mSecondPassDisabled)
@@ -38,14 +38,14 @@ bool EffectTwoPassSimpleMono::Process()
bGoodResult = ProcessPass();
}
- this->ReplaceProcessedWaveTracks(bGoodResult);
+ this->ReplaceProcessedTracks(bGoodResult);
return bGoodResult;
}
bool EffectTwoPassSimpleMono::ProcessPass()
{
//Iterate over each track
- TrackListIterator iter(mOutputWaveTracks);
+ SelectedTrackListOfKindIterator iter(Track::Wave, mOutputTracks);
WaveTrack *track = (WaveTrack *) iter.First();
mCurTrackNum = 0;
while (track) {
diff --git a/src/effects/TwoPassSimpleMono.h b/src/effects/TwoPassSimpleMono.h
index ac29045..9783320 100644
--- a/src/effects/TwoPassSimpleMono.h
+++ b/src/effects/TwoPassSimpleMono.h
@@ -30,7 +30,7 @@ class EffectTwoPassSimpleMono:public Effect {
// Override these methods if you need to initialize something
// before each pass. Return None if processing should stop.
- // These should not depend on mOutputWaveTracks having been set up via CopyInputWaveTracks().
+ // These should not depend on mOutputTracks having been set up via CopyInputTracks().
virtual bool InitPass1();
virtual bool InitPass2();
diff --git a/src/effects/VST/LoadVSTMac.cpp b/src/effects/VST/LoadVSTMac.cpp
deleted file mode 100644
index 805745d..0000000
--- a/src/effects/VST/LoadVSTMac.cpp
+++ /dev/null
@@ -1,191 +0,0 @@
-/**********************************************************************
-
- Audacity: A Digital Audio Editor
-
- LoadVSTMac.cpp
-
- Dominic Mazzoni
-
-**********************************************************************/
-
-#include "../../Audacity.h"
-
-#if USE_VST
-
-#define __MOVIES__ /* Apple's Movies.h not compatible with Audacity */
-/* #define __MACHELP__ */
-
-#include <wx/mac/private.h>
-
-#ifdef __MACOS9__
-#include <Resources.h>
-#include <Files.h>
-#include <Memory.h>
-#include <CodeFragments.h>
-#endif
-
-#ifdef __MACOSX__
-#include <CoreServices/CoreServices.h>
-#endif
-
-#include "AEffect.h"
-#include "AudioEffect.hpp" // VST API
-
-#include "VSTEffect.h"
-#include "LoadVSTMac.h"
-#include "../../AudacityApp.h"
-#include "../../Internat.h"
-#include "../EffectManager.h"
-
-int audacityVSTID = 1;
-
-extern "C" {
-
- long audioMaster(AEffect * effect, long opcode, long index,
- long value, void *ptr, float opt)
- {
- switch (opcode) {
- case audioMasterVersion:
- return 2;
- case audioMasterCurrentId:
- return audacityVSTID;
- default:
- return 0;
- }
- }
-
- typedef AEffect *(*vstPluginMain)(audioMasterCallback audioMaster);
-
- void LoadVSTPlugins()
- {
-#ifdef __MACOSX__
- audioMasterCallback audioMasterFPtr =
- (audioMasterCallback)NewCFMFromMachO(audioMaster);
-#else
- // What is the corrct way of creating an audioMasterCallback
- // in OS 9/Carbon???
- // audioMasterCallback audioMasterFPtr = NULL;
- audioMasterCallback audioMasterFPtr = audioMaster;
-#endif
-
- wxArrayString audacityPathList = wxGetApp().audacityPathList;
- wxArrayString pathList;
- wxArrayString files;
- unsigned int i;
-
- for(i=0; i<audacityPathList.GetCount(); i++) {
- wxString prefix = audacityPathList[i] + wxFILE_SEP_PATH;
- wxGetApp().AddUniquePathToPathList(prefix + "VST",
- pathList);
- wxGetApp().AddUniquePathToPathList(prefix + "Plugins",
- pathList);
- wxGetApp().AddUniquePathToPathList(prefix + "Plug-Ins",
- pathList);
- }
-
- #ifdef __MACOSX__
- wxGetApp().AddUniquePathToPathList("/Library/Audio/Plug-Ins/VST",
- pathList);
- wxString vstPath;
- vstPath.Printf("/Users/%s/Library/Audio/Plug-Ins/VST",
- wxGetenv("USER"));
- wxGetApp().AddUniquePathToPathList(vstPath,
- pathList);
- #endif
-
- wxGetApp().FindFilesInPathList("*", pathList, wxFILE, files);
-
- for(i=0; i<files.GetCount(); i++) {
- short resFileID;
- FSSpec spec;
-
- wxMacFilename2FSSpec(FILENAME(files[i]), &spec);
- resFileID = FSpOpenResFile(&spec, fsRdPerm);
- short cResCB = Count1Resources('aEff');
-
- for (int i = 0; i < cResCB; i++) {
- Handle codeH;
- CFragConnectionID connID;
- Ptr mainAddr;
- Str255 errName;
- Str255 fragName;
- char fragNameCStr[256];
- short resID;
- OSType resType;
- OSErr err;
-
- codeH = Get1IndResource('aEff', short(i+1));
- if (!codeH)
- continue;
-
- GetResInfo(codeH, &resID, &resType, fragName);
- DetachResource(codeH);
- HLock(codeH);
-
- err = GetMemFragment(*codeH,
- GetHandleSize(codeH),
- fragName,
- kPrivateCFragCopy,
- &connID, (Ptr *) & mainAddr, errName);
-
- if (!err) {
- vstPluginMain pluginMain;
- AEffect *theEffect;
-
- #ifdef __MACOSX__
- pluginMain = (vstPluginMain)NewMachOFromCFM(mainAddr);
- #else
- pluginMain = (vstPluginMain)mainAddr;
- #endif
-
- theEffect = pluginMain(audioMasterFPtr);
-
- if (theEffect->magic == kEffectMagic) {
-
- memcpy(fragNameCStr, &fragName[1], fragName[0]);
- fragNameCStr[fragName[0]] = 0;
-
- VSTEffect *vst =
- new VSTEffect(wxString(fragNameCStr), theEffect);
- EffectManager::Get().RegisterEffect(vst);
- }
-
- #ifdef __MACOSX__
- DisposeMachOFromCFM(pluginMain);
- #endif
-
- audacityVSTID++;
- }
- }
-
- CloseResFile(resFileID);
-
- }
-
-#ifdef __MACOSX__
- DisposeCFMFromMachO(audioMasterFPtr);
-#endif // __MACOSX__
- }
-
-}; // extern "C"
-
-#else
-
-extern "C" {
- void LoadVSTPlugins() {}
-}
-
-#endif // USE_VST
-
-
-// Indentation settings for Vim and Emacs and unique identifier for Arch, a
-// version control system. Please do not modify past this point.
-//
-// Local Variables:
-// c-basic-offset: 3
-// indent-tabs-mode: nil
-// End:
-//
-// vim: et sts=3 sw=3
-// arch-tag: d75c9c59-4f9b-4398-b4e8-11ffddc283cf
-
diff --git a/src/effects/VST/LoadVSTMac.h b/src/effects/VST/LoadVSTMac.h
deleted file mode 100644
index 758b326..0000000
--- a/src/effects/VST/LoadVSTMac.h
+++ /dev/null
@@ -1,27 +0,0 @@
-/**********************************************************************
-
- Audacity: A Digital Audio Editor
-
- LoadVSTMac.h
-
- Dominic Mazzoni
-
-**********************************************************************/
-
-extern "C" {
-
- void LoadVSTPlugins();
-
-};
-
-// Indentation settings for Vim and Emacs and unique identifier for Arch, a
-// version control system. Please do not modify past this point.
-//
-// Local Variables:
-// c-basic-offset: 3
-// indent-tabs-mode: nil
-// End:
-//
-// vim: et sts=3 sw=3
-// arch-tag: dbb07871-e39e-4ff0-a73d-58209159aea7
-
diff --git a/src/effects/VST/LoadVSTWin.cpp b/src/effects/VST/LoadVSTWin.cpp
deleted file mode 100644
index 552f40f..0000000
--- a/src/effects/VST/LoadVSTWin.cpp
+++ /dev/null
@@ -1,118 +0,0 @@
-/**********************************************************************
-
- Audacity: A Digital Audio Editor
-
- LoadVSTWin.cpp
-
- Dominic Mazzoni
- Mark Tomlinson
-
-**********************************************************************/
-
-#include "../../Audacity.h"
-
-#if USE_VST
-
-#include "AudioEffect.hpp" // VST API
-
-#include "VSTEffect.h"
-#include "../../AudacityApp.h"
-#include "../EffectManager.h"
-#include "LoadVSTWin.h"
-
-#include <windows.h>
-
-int audacityVSTID = 1;
-
-extern "C" {
-
- long audioMaster(AEffect * effect, long opcode, long index,
- long value, void *ptr, float opt) {
- switch (opcode) {
- case audioMasterVersion:
- return 2;
- case audioMasterCurrentId:return audacityVSTID;
- default:return 0;
- }
- }
-
- typedef AEffect *(*vstPluginMain) (audioMasterCallback audioMaster);
-
- void LoadVSTPlugin(wxString fname) {
- HANDLE hLib = LoadLibrary(fname);
-
- if (hLib != NULL) {
-
- // get the address of the main() function
-
- vstPluginMain pDllMain =
- (vstPluginMain) GetProcAddress((HINSTANCE) hLib, "main");
-
- if (pDllMain != NULL) {
-
- AEffect *theEffect;
-
- theEffect = (pDllMain) (audioMaster);
-
- if (theEffect->magic == kEffectMagic) {
- wxString title = wxFileNameFromPath(fname);
- int len = title.Len();
- if (len > 4 && (title.Mid(len - 4, 1) == "."))
- title = title.Mid(0, len - 4);
-
- VSTEffect *vst = new VSTEffect(title, theEffect);
- EffectManager::Get().RegisterEffect(vst);
- }
- }
-
- audacityVSTID++;
- } else {
- FreeLibrary((HINSTANCE) hLib);
- }
- }
-
- void LoadVSTPlugins() {
- wxArrayString audacityPathList = wxGetApp().audacityPathList;
- wxArrayString pathList;
- wxArrayString files;
- unsigned int i;
-
- for(i=0; i<audacityPathList.GetCount(); i++) {
- wxString prefix = audacityPathList[i] + wxFILE_SEP_PATH;
- wxGetApp().AddUniquePathToPathList(prefix + "VST",
- pathList);
- wxGetApp().AddUniquePathToPathList(prefix + "plugins",
- pathList);
- wxGetApp().AddUniquePathToPathList(prefix + "plug-ins",
- pathList);
- }
-
- wxGetApp().FindFilesInPathList("*.dll", pathList, wxFILE, files);
-
- for(i=0; i<files.GetCount(); i++)
- LoadVSTPlugin(files[i]);
- }
-
-
-}; // extern "C"
-
-#else
-
-extern "C" {
- void LoadVSTPlugins() {}
-}
-
-#endif // USE_VST
-
-
-// Indentation settings for Vim and Emacs and unique identifier for Arch, a
-// version control system. Please do not modify past this point.
-//
-// Local Variables:
-// c-basic-offset: 3
-// indent-tabs-mode: nil
-// End:
-//
-// vim: et sts=3 sw=3
-// arch-tag: 9f1d7f8b-23a6-4e16-80cd-f5f976f5b213
-
diff --git a/src/effects/VST/LoadVSTWin.h b/src/effects/VST/LoadVSTWin.h
deleted file mode 100644
index fcd4d04..0000000
--- a/src/effects/VST/LoadVSTWin.h
+++ /dev/null
@@ -1,27 +0,0 @@
-/**********************************************************************
-
- Audacity: A Digital Audio Editor
-
- LoadVSTWin.h
-
- Mark Tomlinson
-
-**********************************************************************/
-
-extern "C" {
-
- void LoadVSTPlugins();
-
-};
-
-// Indentation settings for Vim and Emacs and unique identifier for Arch, a
-// version control system. Please do not modify past this point.
-//
-// Local Variables:
-// c-basic-offset: 3
-// indent-tabs-mode: nil
-// End:
-//
-// vim: et sts=3 sw=3
-// arch-tag: 3a891fd3-bbb4-430f-8486-f2e31bc8da78
-
diff --git a/src/effects/VST/VSTEffect.cpp b/src/effects/VST/VSTEffect.cpp
index b3d8ace..81063f3 100644
--- a/src/effects/VST/VSTEffect.cpp
+++ b/src/effects/VST/VSTEffect.cpp
@@ -18,650 +18,1247 @@
#if USE_VST
-#include "AEffect.h" // VST API
-#include "AEffEditor.hpp"
-
#include <wx/defs.h>
#include <wx/button.h>
+#include <wx/combobox.h>
#include <wx/dialog.h>
+#include <wx/filename.h>
#include <wx/frame.h>
-#include <wx/slider.h>
-#include <wx/sizer.h>
#include <wx/msgdlg.h>
+#include <wx/sizer.h>
+#include <wx/slider.h>
+#include <wx/scrolwin.h>
+#include <wx/stattext.h>
-#include "../Effect.h" // Audacity Effect base class
-#include "VSTEffect.h" // This class's header file
-
-#ifdef __MACOSX__
-#include <Carbon/Carbon.h>
+#if defined(__WXMAC__)
+#include <wx/mac/private.h>
+#else
+#include <wx/dynlib.h>
#endif
-const int VSTEFFECT_SLIDER_ID = 13100;
-const int PREVIEW_ID = 13101;
+#include "../../FileNames.h"
+#include "../../Prefs.h"
+#include "../../xml/XMLFileReader.h"
+#include "../../xml/XMLWriter.h"
+#include "FileDialog.h"
+
+#include "VSTEffect.h"
-class VSTEffectGUIDialog : public wxDialog
+///////////////////////////////////////////////////////////////////////////////
+//
+// VSTEffectDialog
+//
+///////////////////////////////////////////////////////////////////////////////
+
+class VSTEffectDialog:public wxDialog, XMLTagHandler
{
-public:
- VSTEffectGUIDialog(wxWindow * parent, wxWindowID id,
- const wxString & title,
- VSTEffect *effect, AEffect *aEffect);
+ public:
+ VSTEffectDialog(wxWindow * parent,
+ const wxString & title,
+ VSTEffect *effect,
+ AEffect *aeffect);
+ virtual ~VSTEffectDialog();
+
+ void OnIdle(wxIdleEvent & evt);
+
+ void OnProgram(wxCommandEvent & evt);
+ void OnProgramText(wxCommandEvent & evt);
+ void OnLoad(wxCommandEvent & evt);
+ void OnSave(wxCommandEvent & evt);
+
+ void OnSlider(wxCommandEvent &event);
- void OnOk(wxCommandEvent &event);
- void OnCancel(wxCommandEvent &event);
- void OnPreview(wxCommandEvent &event);
+ void OnOk(wxCommandEvent & evt);
+ void OnCancel(wxCommandEvent & evt);
+ void OnPreview(wxCommandEvent & evt);
- void OnIdle(wxIdleEvent &event);
+ private:
+
+ void BuildPlain();
+ void BuildFancy();
+ wxSizer *BuildProgramBar();
+ void RefreshParameters(int skip = -1);
+
+ virtual bool HandleXMLTag(const wxChar *tag, const wxChar **attrs);
+ virtual void HandleXMLEndTag(const wxChar *tag);
+ virtual void HandleXMLContent(const wxString & content);
+ virtual XMLTagHandler *HandleXMLChild(const wxChar *tag);
+ wxString b64encode(const void *in, int len);
+ int b64decode(wxString in, void *out);
-private:
VSTEffect *mEffect;
- AEffect *mAEffect;
+ AEffect *mAEffect;
+
+ bool mGui;
+
+ wxComboBox *mProgram;
+ wxStaticText **mNames;
+ wxSlider **mSliders;
+ wxStaticText **mDisplays;
+ wxStaticText **mLabels;
+
+ bool mInChunk;
+ wxString mChunk;
DECLARE_EVENT_TABLE()
};
-BEGIN_EVENT_TABLE(VSTEffectGUIDialog,wxDialog)
- EVT_BUTTON( wxID_OK, VSTEffectGUIDialog::OnOk )
- EVT_BUTTON( wxID_CANCEL, VSTEffectGUIDialog::OnCancel )
- EVT_BUTTON( ID_EFFECT_PREVIEW, VSTEffectGUIDialog::OnPreview )
- EVT_IDLE( VSTEffectGUIDialog::OnIdle )
+enum
+{
+ ID_VST_PROGRAM = 11000,
+ ID_VST_LOAD,
+ ID_VST_SAVE,
+ ID_VST_SLIDERS
+};
+
+BEGIN_EVENT_TABLE(VSTEffectDialog, wxDialog)
+ EVT_IDLE(VSTEffectDialog::OnIdle)
+ EVT_BUTTON(wxID_OK, VSTEffectDialog::OnOk)
+ EVT_BUTTON(wxID_CANCEL, VSTEffectDialog::OnCancel)
+ EVT_BUTTON(ID_EFFECT_PREVIEW, VSTEffectDialog::OnPreview)
+
+ EVT_COMBOBOX(ID_VST_PROGRAM, VSTEffectDialog::OnProgram)
+ EVT_TEXT(ID_VST_PROGRAM, VSTEffectDialog::OnProgramText)
+ EVT_BUTTON(ID_VST_LOAD, VSTEffectDialog::OnLoad)
+ EVT_BUTTON(ID_VST_SAVE, VSTEffectDialog::OnSave)
+
+ EVT_SLIDER(wxID_ANY, VSTEffectDialog::OnSlider)
END_EVENT_TABLE()
-VSTEffectGUIDialog::VSTEffectGUIDialog(wxWindow *parent, wxWindowID id,
+VSTEffectDialog::VSTEffectDialog(wxWindow *parent,
const wxString & title,
VSTEffect *effect,
- AEffect *aEffect):
- wxDialog(parent, id, title, wxDefaultPosition, wxDefaultSize,
- wxRESIZE_BORDER | wxSYSTEM_MENU | wxCAPTION),
+ AEffect *aeffect)
+: wxDialog(parent, wxID_ANY, title),
mEffect(effect),
- mAEffect(aEffect)
+ mAEffect(aeffect)
{
- ERect *rect;
-
- mEffect->callDispatcher(mAEffect, effEditGetRect, 0, 0, &rect, 0.0);
- mEffect->callDispatcher(mAEffect, effEditOpen, 0, 0, (void *)GetHWND(), 0.0);
-
- wxBoxSizer *mainSizer = new wxBoxSizer(wxVERTICAL);
+ mNames = NULL;
+ mSliders = NULL;
+ mDisplays = NULL;
+ mLabels = NULL;
+
+ // Determine if the VST editor is supposed to be used or not
+ mGui = (gPrefs->Read(wxT("/VST/GUI"), (long) true) != 0) &&
+ mAEffect->flags & effFlagsHasEditor;
+
+ // Build the appropriate dialog type
+ if (mGui) {
+ BuildFancy();
+ }
+ else {
+ BuildPlain();
+ }
+}
- mainSizer->Add(rect->right-rect->left, rect->bottom-rect->top);
+VSTEffectDialog::~VSTEffectDialog()
+{
+ if (mNames) {
+ delete [] mNames;
+ }
- // Preview, OK, & Cancel buttons
- mainSizer->Add(CreateStdButtonSizer(this, ePreviewButton|eCancelButton|eOkButton), 0, wxEXPAND);
+ if (mSliders) {
+ delete [] mSliders;
+ }
- SetAutoLayout(true);
- SetSizer(mainSizer);
- mainSizer->Fit(this);
- mainSizer->SetSizeHints(this);
+ if (mDisplays) {
+ delete [] mDisplays;
+ }
- mEffect->SetDialog(this);
+ if (mLabels) {
+ delete [] mLabels;
+ }
}
-void VSTEffectGUIDialog::OnIdle(wxIdleEvent &event)
+void VSTEffectDialog::BuildFancy()
{
- mEffect->callDispatcher(mAEffect, effEditIdle, 0, 0, NULL, 0.0);
-}
+#if defined(__WXMAC__)
+ ControlRef view;
+ WindowRef win = (WindowRef) MacGetTopLevelWindowRef();
+ OSStatus status = HIViewFindByID(HIViewGetRoot(win), kHIViewWindowContentID, &view);
+ wxASSERT(status == 0);
-void VSTEffectGUIDialog::OnPreview(wxCommandEvent &event)
-{
- mEffect->Preview();
+ mEffect->callDispatcher(effEditOpen, 0, 0, win, 0.0);
+
+ HIViewRef subview = HIViewGetFirstSubview(view);
+ wxASSERT(subview != NULL);
+
+#elif defined(__WXMSW__)
+ mEffect->callDispatcher(effEditOpen, 0, 0, GetHWND(), 0.0);
+
+ HWND child = FindWindowEx((HWND) GetHWND(), NULL, NULL, NULL);
+#else
+#endif
+
+ struct
+ {
+ short top, left, bottom, right;
+ } *rect;
+
+ mEffect->callDispatcher(effEditGetRect, 0, 0, &rect, 0.0);
+
+ wxBoxSizer *vs = new wxBoxSizer(wxVERTICAL);
+ wxBoxSizer *hs = new wxBoxSizer(wxHORIZONTAL);
+ wxSizerItem *si;
+
+ vs->Add(BuildProgramBar(), 0, wxCENTER);
+
+ si = hs->Add(rect->right - rect->left, rect->bottom - rect->top);
+ vs->Add(hs, 0, wxCENTER);
+
+ vs->Add(CreateStdButtonSizer(this, ePreviewButton|eCancelButton|eOkButton), 0, wxEXPAND);
+
+ SetSizerAndFit(vs);
+
+ wxPoint pos = si->GetPosition();
+
+#if defined(__WXMAC__)
+ HIViewPlaceInSuperviewAt(subview, pos.x, pos.y);
+
+ // LL: Some VST effects do not work unless this is done. But, it must be
+ // done last since proper window sizing will not occur otherwise.
+ ::RemoveEventHandler((EventHandlerRef)MacGetEventHandler());
+
+#elif defined(__WXMSW__)
+ SetWindowPos(child, NULL, pos.x, pos.y, 0, 0, SWP_NOSIZE | SWP_NOZORDER);
+#else
+#endif
}
-void VSTEffectGUIDialog::OnOk(wxCommandEvent &event)
+void VSTEffectDialog::BuildPlain()
{
- mEffect->callDispatcher(mAEffect, effEditClose, 0, 0, NULL, 0.0);
- EndModal(true);
+ mNames = new wxStaticText *[mAEffect->numParams];
+ mSliders = new wxSlider *[mAEffect->numParams];
+ mDisplays = new wxStaticText *[mAEffect->numParams];
+ mLabels = new wxStaticText *[mAEffect->numParams];
+
+ wxBoxSizer *vSizer = new wxBoxSizer(wxVERTICAL);
+ vSizer->Add(BuildProgramBar(), 0, wxALIGN_CENTER);
+
+ wxScrolledWindow *sw = new wxScrolledWindow(this,
+ wxID_ANY,
+ wxDefaultPosition,
+ wxDefaultSize,
+ wxVSCROLL | wxTAB_TRAVERSAL);
+
+ // Try to give the window a sensible default/minimum size
+ wxSize sz = GetParent()->GetSize();
+ sw->SetMinSize(wxSize(wxMax(600, sz.GetWidth() * 2 / 3), sz.GetHeight() / 2));
+
+ sw->SetScrollRate(0, 20);
+ vSizer->Add(sw, 1, wxEXPAND | wxALL, 5);
+
+ // Preview, OK, & Cancel buttons
+ vSizer->Add(CreateStdButtonSizer(this, ePreviewButton|eCancelButton|eOkButton), 0, wxEXPAND);
+
+ SetSizer(vSizer);
+
+ wxSizer *paramSizer = new wxStaticBoxSizer(wxVERTICAL, sw, _("Effect Settings"));
+
+ wxFlexGridSizer *gridSizer = new wxFlexGridSizer(4, 0, 0);
+ gridSizer->AddGrowableCol(1);
+
+ // Find the longest parameter name.
+ int namew = 0;
+ int w;
+ int h;
+ for (int i = 0; i < mAEffect->numParams; i++) {
+ wxString text = mEffect->GetString(effGetParamName, i);
+ if (text.Right(1) != wxT(':')) {
+ text += wxT(':');
+ }
+ GetTextExtent(text, &w, &h);
+ if (w > namew) {
+ namew = w;
+ }
+ }
+
+ GetTextExtent(wxT("HHHHHHHH"), &w, &h);
+
+ for (int i = 0; i < mAEffect->numParams; i++) {
+ mNames[i] = new wxStaticText(sw,
+ wxID_ANY,
+ wxEmptyString,
+ wxDefaultPosition,
+ wxSize(namew, -1),
+ wxALIGN_RIGHT | wxST_NO_AUTORESIZE);
+ gridSizer->Add(mNames[i], 0, wxALIGN_CENTER_VERTICAL | wxALIGN_RIGHT | wxALL, 5);
+
+ mSliders[i] = new wxSlider(sw,
+ ID_VST_SLIDERS + i,
+ 0,
+ 0,
+ 1000,
+ wxDefaultPosition,
+ wxSize(200, -1));
+ gridSizer->Add(mSliders[i], 0, wxALIGN_CENTER_VERTICAL | wxEXPAND | wxALL, 5);
+
+ mDisplays[i] = new wxStaticText(sw,
+ wxID_ANY,
+ wxEmptyString,
+ wxDefaultPosition,
+ wxSize(w, -1),
+ wxALIGN_RIGHT | wxST_NO_AUTORESIZE);
+ gridSizer->Add(mDisplays[i], 0, wxALIGN_CENTER_VERTICAL | wxALIGN_RIGHT | wxALL, 5);
+
+ mLabels[i] = new wxStaticText(sw,
+ wxID_ANY,
+ wxEmptyString,
+ wxDefaultPosition,
+ wxSize(w, -1),
+ wxALIGN_LEFT | wxST_NO_AUTORESIZE);
+ gridSizer->Add(mLabels[i], 0, wxALIGN_CENTER_VERTICAL | wxALIGN_LEFT | wxALL, 5);
+ }
+
+ paramSizer->Add(gridSizer, 1, wxEXPAND | wxALL, 5);
+ sw->SetSizer(paramSizer);
+
+ Layout();
+ Fit();
+ SetSizeHints(GetSize());
+ RefreshParameters();
+
+ mSliders[0]->SetFocus();
}
-void VSTEffectGUIDialog::OnCancel(wxCommandEvent &event)
+wxSizer *VSTEffectDialog::BuildProgramBar()
{
- mEffect->callDispatcher(mAEffect, effEditClose, 0, 0, NULL, 0.0);
- EndModal(false);
-}
+ wxArrayString progs;
+ for (int i = 0; i < mAEffect->numPrograms; i++) {
+ wxString name = mEffect->GetString(effGetProgramNameIndexed, i);
+ if (!name.IsEmpty()) {
+ progs.Add(name);
+ }
+ }
-VSTEffect::VSTEffect(wxString pluginName, AEffect * aEffect)
-{
- this->aEffect = aEffect;
- this->pluginName = pluginName;
+ if (progs.GetCount() == 0) {
+ progs.Add(_("None"));
+ }
+
+ int progn = mEffect->callDispatcher(effGetProgram, 0, 0, NULL, 0.0);
+
+ wxBoxSizer *hs = new wxBoxSizer(wxHORIZONTAL);
+
+ wxStaticText *st = new wxStaticText(this, wxID_ANY, _("Presets:"));
+ hs->Add(st, 0, wxALIGN_CENTER_VERTICAL | wxALL, 5);
- buffer = NULL;
- fInBuffer = NULL;
- fOutBuffer = NULL;
+ mProgram = new wxComboBox(this,
+ ID_VST_PROGRAM,
+ progs[progn],
+ wxDefaultPosition,
+ wxSize(200, -1),
+ progs
+ );
+ hs->Add(mProgram, 0, wxALIGN_CENTER_VERTICAL | wxALL, 5);
- isOpened = false;
+ wxButton *bt = new wxButton(this, ID_VST_LOAD, _("Load"));
+ hs->Add(bt, 0, wxALIGN_CENTER_VERTICAL | wxALL, 5);
+
+ bt = new wxButton(this, ID_VST_SAVE, _("Save"));
+ hs->Add(bt, 0, wxALIGN_CENTER_VERTICAL | wxALL, 5);
+
+ return hs;
}
-VSTEffect::~VSTEffect()
+void VSTEffectDialog::RefreshParameters(int skip)
{
+ if (!mGui) {
+ for (int i = 0; i < mAEffect->numParams; i++) {
+ wxString text = mEffect->GetString(effGetParamName, i).Trim(true).Trim(false);
+ wxString name = text;
+
+ if (text.Right(1) != wxT(':')) {
+ text += wxT(':');
+ }
+ mNames[i]->SetLabel(text);
+
+ // For some parameters types like on/off, setting the slider value has
+ // a side effect that causes it to only move when the parameter changes
+ // from off to on. However, this prevents changing the value using the
+ // keyboard, so we skip the active slider if any.
+ if (i != skip) {
+ mSliders[i]->SetValue(mEffect->callGetParameter(i) * 1000);
+ }
+ name = text;
+
+ text = mEffect->GetString(effGetParamDisplay, i);
+ if (text.IsEmpty()) {
+ text.Printf(wxT("%.5g"),mEffect->callGetParameter(i));
+ }
+ mDisplays[i]->SetLabel(wxString::Format(wxT("%8s"), text.c_str()));
+ name += wxT(' ') + text;
+
+ text = mEffect->GetString(effGetParamDisplay, i);
+ if (!text.IsEmpty()) {
+ text.Printf(wxT("%-8s"), mEffect->GetString(effGetParamLabel, i).c_str());
+ mLabels[i]->SetLabel(wxString::Format(wxT("%8s"), text.c_str()));
+ name += wxT(' ') + text;
+ }
+
+ mSliders[i]->SetName(name);
+ }
+ }
}
-wxString VSTEffect::GetEffectName()
+void VSTEffectDialog::OnIdle(wxIdleEvent & evt)
{
- return pluginName + "...";
+ if (mGui) {
+ mEffect->callDispatcher(effEditIdle, 0, 0, NULL, 0.0);
+ }
}
-wxString VSTEffect::GetEffectCategories()
+void VSTEffectDialog::OnSlider(wxCommandEvent & evt)
{
- return std::set<wxString>();
+ wxSlider *s = (wxSlider *) evt.GetEventObject();
+ int i = s->GetId() - ID_VST_SLIDERS;
+
+ mEffect->callSetParameter(i, s->GetValue() / 1000.0);
+
+ RefreshParameters(i);
}
-wxString VSTEffect::GetEffectAction()
+void VSTEffectDialog::OnProgram(wxCommandEvent & evt)
{
- return "Performing VST Effect: \""+pluginName+"\"";
+ mEffect->callDispatcher(effSetProgram, 0, evt.GetInt(), NULL, 0.0);
+ RefreshParameters();
}
-bool VSTEffect::Init()
+void VSTEffectDialog::OnProgramText(wxCommandEvent & evt)
{
- inputs = aEffect->numInputs;
- outputs = aEffect->numOutputs;
-
- mBlockSize = 0;
+ wxString name = mProgram->GetValue();
+ int i = mEffect->callDispatcher(effGetProgram, 0, 0, NULL, 0.0);
+ int ip = mProgram->GetInsertionPoint();
- if (inputs > 1) {
- TrackListIterator iter(mWaveTracks);
- Track *left = iter.First();
- while(left) {
- longSampleCount lstart, rstart;
- sampleCount llen, rlen;
- GetSamples((WaveTrack *)left, &lstart, &llen);
-
- if (left->GetLinked()) {
- Track *right = iter.Next();
- GetSamples((WaveTrack *)right, &rstart, &rlen);
-
- if (llen != rlen || ((WaveTrack *)left)->GetRate() != ((WaveTrack *)right)->GetRate()) {
- wxMessageBox(_("Sorry, VST Effects cannot be performed on stereo tracks where the individual channels of the track do not match."));
- return false;
- }
- }
-
- left = iter.Next();
- }
+ // Limit the length of the string
+ if (name.Length() > 24) {
+ name = name.Left(24);
}
- return true;
+ mEffect->SetString(effSetProgramName, name, i);
+ mProgram->SetString(i, name);
+
+ // On Windows, must reselect after doing a SetString()...at least that's
+ // what seems to be required.
+ mProgram->SetStringSelection(name);
+
+ // Which also means we have to reposition the caret.
+ if (ip >= 0) {
+ mProgram->SetInsertionPoint(ip);
+ }
+
+ RefreshParameters();
}
-bool VSTEffect::PromptUser()
+void VSTEffectDialog::OnLoad(wxCommandEvent & evt)
{
- if (!(aEffect->flags & effFlagsCanReplacing)) {
- wxMessageBox(_("Can't process replacing"));
- return false;
+ wxString fn;
+
+ // Ask the user for the real name
+ fn = FileSelector(_("Load VST Program:"),
+ FileNames::DataDir(),
+ wxEmptyString,
+ wxT("xml"),
+ wxT("*.xml"),
+ wxFD_OPEN | wxRESIZE_BORDER,
+ this);
+
+ // User canceled...
+ if (fn.IsEmpty()) {
+ return;
}
- if (aEffect->flags & effFlagsHasEditor) {
- // Show native GUI
- VSTEffectGUIDialog dlog(mParent, -1, pluginName, this, aEffect);
- dlog.CentreOnParent();
- dlog.ShowModal();
+ // Load the program
+ XMLFileReader reader;
+ if (!reader.Parse(this, fn)) {
+ // Inform user of load failure
+ wxMessageBox(reader.GetErrorStr(),
+ _("Error loading program"),
+ wxOK | wxCENTRE,
+ this);
+ }
- return dlog.GetReturnCode();
+ RefreshParameters();
+
+ return;
+}
+
+void VSTEffectDialog::OnSave(wxCommandEvent & evt)
+{
+ int i = mProgram->GetCurrentSelection();
+ wxString fn;
+
+ // Ask the user for the real name
+ fn = FileSelector(_("Save VST Program As:"),
+ FileNames::DataDir(),
+ mProgram->GetValue() + wxT(".xml"),
+ wxT("xml"),
+ wxT("*.xml"),
+ wxFD_SAVE | wxFD_OVERWRITE_PROMPT | wxRESIZE_BORDER,
+ this);
+
+ // User canceled...
+ if (fn.IsEmpty()) {
+ return;
}
- // Try to figure out how many parameters it takes by seeing how
- // many parameters have names
- char temp[8][256];
- numParameters = 0;
- do {
- long result;
+ XMLFileWriter xmlFile;
- temp[numParameters][0] = 0;
- result = callDispatcher(aEffect, effGetParamName, numParameters, 0,
- (void *) temp[numParameters], 0.0);
+ // Create/Open the file
+ xmlFile.Open(fn, wxT("wb"));
- if (temp[numParameters][0]==0)
- break;
- if (strstr(temp[numParameters], "ABOUT"))
- break;
- if (numParameters > 0
- && !strcmp(temp[numParameters], temp[numParameters - 1]))
- break;
+ xmlFile.StartTag(wxT("vstprogrampersistence"));
+ xmlFile.WriteAttr(wxT("version"), wxT("1"));
- numParameters++;
- } while (temp[0] != 0 && numParameters < 8);
+ i = mEffect->callDispatcher(effGetVendorVersion, 0, 0, NULL, 0.0);
+ xmlFile.StartTag(wxT("effect"));
+ xmlFile.WriteAttr(wxT("name"), mEffect->GetEffectIdentifier());
+ xmlFile.WriteAttr(wxT("version"), i);
- if (numParameters > 0) {
- VSTEffectDialog dlog(mParent, pluginName, numParameters, this, aEffect);
- dlog.CentreOnParent();
- dlog.ShowModal();
+ xmlFile.StartTag(wxT("program"));
+ xmlFile.WriteAttr(wxT("name"), mProgram->GetValue());
- if (!dlog.GetReturnCode())
- return false;
+ long clen = 0;
+ if (mAEffect->flags & effFlagsProgramChunks) {
+ void *chunk = NULL;
+
+ clen = mEffect->callDispatcher(effGetChunk, 1, 0, &chunk, 0.0);
+ if (clen != 0) {
+ xmlFile.StartTag(wxT("chunk"));
+ xmlFile.WriteSubTree(b64encode(chunk, clen) + wxT('\n'));
+ xmlFile.EndTag(wxT("chunk"));
+ }
}
- return true;
+ if (clen == 0) {
+ for (i = 0; i < mAEffect->numParams; i++) {
+ xmlFile.StartTag(wxT("param"));
+
+ xmlFile.WriteAttr(wxT("index"), i);
+ xmlFile.WriteAttr(wxT("name"),
+ mEffect->GetString(effGetParamName, i));
+ xmlFile.WriteAttr(wxT("value"),
+ wxString::Format(wxT("%f"),
+ mEffect->callGetParameter(i)));
+
+ xmlFile.EndTag(wxT("param"));
+ }
+ }
+
+ xmlFile.EndTag(wxT("program"));
+
+ xmlFile.EndTag(wxT("effect"));
+
+ xmlFile.EndTag(wxT("vstprogrampersistence"));
+
+ // Close the file
+ xmlFile.Close();
}
-void VSTEffect::GetSamples(WaveTrack *track,
- longSampleCount *start,
- sampleCount *len)
+void VSTEffectDialog::OnPreview(wxCommandEvent & evt)
{
- double trackStart = track->GetStartTime();
- double trackEnd = track->GetEndTime();
- double t0 = mT0 < trackStart? trackStart: mT0;
- double t1 = mT1 > trackEnd? trackEnd: mT1;
-
- if (t1 > t0) {
- *start = track->TimeToLongSamples(t0);
- longSampleCount end = track->TimeToLongSamples(t1);
- *len = (sampleCount)(end - *start);
+ mEffect->Preview();
+}
+
+void VSTEffectDialog::OnOk(wxCommandEvent & evt)
+{
+ if (mGui) {
+ mEffect->callDispatcher(effEditClose, 0, 0, NULL, 0.0);
}
- else {
- *start = 0;
- *len = 0;
+
+ EndModal(true);
+}
+
+void VSTEffectDialog::OnCancel(wxCommandEvent & evt)
+{
+ if (mGui) {
+ mEffect->callDispatcher(effEditClose, 0, 0, NULL, 0.0);
}
+
+ EndModal(false);
}
-bool VSTEffect::Process()
+bool VSTEffectDialog::HandleXMLTag(const wxChar *tag, const wxChar **attrs)
{
- this->CopyInputWaveTracks(); // Set up m_pOutputWaveTracks.
- bool bGoodResult = true;
+ if (wxStrcmp(tag, wxT("vstprogrampersistence")) == 0) {
+ while (*attrs) {
+ const wxChar *attr = *attrs++;
+ const wxChar *value = *attrs++;
+
+ if (!value) {
+ break;
+ }
- TrackListIterator iter(m_pOutputWaveTracks);
- int count = 0;
- Track *left = iter.First();
- Track *right;
- while(left) {
- longSampleCount lstart, rstart;
- sampleCount len;
- GetSamples((WaveTrack *)left, &lstart, &len);
+ const wxString strValue = value;
- right = NULL;
- if (left->GetLinked() && inputs>1) {
- right = iter.Next();
- GetSamples((WaveTrack *)right, &rstart, &len);
+ if (wxStrcmp(attr, wxT("version")) == 0) {
+ if (!XMLValueChecker::IsGoodInt(strValue)) {
+ return false;
+ }
+ // Nothing to do with it for now
+ }
+ else {
+ return false;
+ }
}
- // Reset the effect
- callDispatcher(aEffect, effOpen, 0, 0, NULL, 0.0);
-
- bGoodResult = ProcessStereo(count,
- (WaveTrack *)left, (WaveTrack *)right,
- lstart, rstart, len);
-
- if (!bGoodResult)
- break;
-
- left = iter.Next();
- count++;
+ return true;
}
-
- this->ReplaceProcessedWaveTracks(bGoodResult);
- return bGoodResult;
-}
-bool VSTEffect::ProcessStereo(int count, WaveTrack *left, WaveTrack *right,
- longSampleCount lstart,
- longSampleCount rstart, sampleCount len)
-{
- bool rc = true;
- if (mBlockSize == 0) {
- mBlockSize = left->GetMaxBlockSize() * 2;
+ if (wxStrcmp(tag, wxT("effect")) == 0) {
+ while (*attrs) {
+ const wxChar *attr = *attrs++;
+ const wxChar *value = *attrs++;
+
+ if (!value) {
+ break;
+ }
+
+ const wxString strValue = value;
+
+ if (wxStrcmp(attr, wxT("name")) == 0) {
+ if (!XMLValueChecker::IsGoodString(strValue)) {
+ return false;
+ }
- buffer = new float[mBlockSize];
- fInBuffer = new float *[inputs];
- int i;
- for (i = 0; i < inputs; i++)
- fInBuffer[i] = new float[mBlockSize];
- fOutBuffer = new float *[outputs];
- for (i = 0; i < outputs; i++)
- fOutBuffer[i] = new float[mBlockSize];
+ if (value != mEffect->GetEffectIdentifier()) {
+ wxString msg;
+ msg.Printf(_("This parameter file was saved from %s. Continue?"), value);
+ int result = wxMessageBox(msg, wxT("Confirm"), wxYES_NO, this);
+ if (result == wxNO) {
+ return false;
+ }
+ }
+ }
+ else if (wxStrcmp(attr, wxT("version")) == 0) {
+ if (!XMLValueChecker::IsGoodInt(strValue)) {
+ return false;
+ }
+ // Nothing to do with it for now
+ }
+ else {
+ return false;
+ }
+ }
+ return true;
}
+
+ if (wxStrcmp(tag, wxT("program")) == 0) {
+ while (*attrs) {
+ const wxChar *attr = *attrs++;
+ const wxChar *value = *attrs++;
+
+ if (!value) {
+ break;
+ }
- callDispatcher(aEffect, effSetSampleRate, 0, 0, NULL,
- (float) left->GetRate());
- callDispatcher(aEffect, effSetBlockSize, 0, mBlockSize * 2, NULL, 0.0);
+ const wxString strValue = value;
- // Actually perform the effect here
+ if (wxStrcmp(attr, wxT("name")) == 0) {
+ if (!XMLValueChecker::IsGoodString(strValue)) {
+ return false;
+ }
- sampleCount originalLen = len;
- longSampleCount ls = lstart;
- longSampleCount rs = rstart;
- while (len) {
- int i;
- int block = mBlockSize;
- if (block > len)
- block = len;
+ if (strValue.Length() > 24) {
+ return false;
+ }
- left->Get((samplePtr)buffer, floatSample, ls, block);
- for (i = 0; i < block; i++)
- fInBuffer[0][i] = buffer[i];
- if (right) {
- right->Get((samplePtr)buffer, floatSample, rs, block);
- for (i = 0; i < block; i++)
- fInBuffer[1][i] = buffer[i];
+ int ndx = mProgram->GetCurrentSelection();
+ mProgram->SetString(ndx, strValue);
+ mProgram->SetValue(strValue);
+
+ mEffect->SetString(effSetProgramName, strValue, ndx);
+ }
+ else {
+ return false;
+ }
}
- callProcessReplacing(aEffect, fInBuffer, fOutBuffer, block);
+ mInChunk = false;
- for (i = 0; i < block; i++)
- buffer[i] = fOutBuffer[0][i];
- left->Set((samplePtr)buffer, floatSample, ls, block);
-
- if (right) {
- for (i = 0; i < block; i++)
- buffer[i] = fOutBuffer[1][i];
- right->Set((samplePtr)buffer, floatSample, rs, block);
- }
+ return true;
+ }
- len -= block;
- ls += block;
- rs += block;
-
- if (inputs > 1) {
- if (TrackGroupProgress(count, (ls-lstart)/(double)originalLen)) {
- rc = false;
+ if (wxStrcmp(tag, wxT("param")) == 0) {
+ long ndx = -1;
+ double val = -1.0;
+ while (*attrs) {
+ const wxChar *attr = *attrs++;
+ const wxChar *value = *attrs++;
+
+ if (!value) {
break;
}
- }
- else {
- if (TrackProgress(count, (ls-lstart)/(double)originalLen)) {
- rc = false;
- break;
+
+ const wxString strValue = value;
+
+ if (wxStrcmp(attr, wxT("index")) == 0) {
+ if (!XMLValueChecker::IsGoodInt(strValue) || !strValue.ToLong(&ndx)) {
+ return false;
+ }
+
+ if (ndx < 1 || ndx > mAEffect->numParams) {
+ // Could be a different version of the effect...probably should
+ // tell the user
+ return false;
+ }
+ }
+ else if (wxStrcmp(attr, wxT("name")) == 0) {
+ if (!XMLValueChecker::IsGoodString(strValue)) {
+ return false;
+ }
+ // Nothing to do with it for now
+ }
+ else if (wxStrcmp(attr, wxT("value")) == 0) {
+ if (!XMLValueChecker::IsGoodInt(strValue) ||
+ !Internat::CompatibleToDouble(strValue, &val)) {
+ return false;
+ }
+
+ if (val < 0.0 || val > 1.0) {
+ return false;
+ }
}
}
+
+ if (ndx == -1 || val == -1.0) {
+ return false;
+ }
+
+ mEffect->callSetParameter(ndx, val);
+
+ return true;
}
- return rc;
+ if (wxStrcmp(tag, wxT("chunk")) == 0) {
+ mInChunk = true;
+ return true;
+ }
+
+ return false;
}
-void VSTEffect::End()
+void VSTEffectDialog::HandleXMLEndTag(const wxChar *tag)
{
- if (buffer) {
- int i;
+ if (wxStrcmp(tag, wxT("chunk")) == 0) {
+ if (mChunk.Length()) {
+ char *buf = new char[mChunk.Length() / 4 * 3];
- delete[]buffer;
- for (i = 0; i < inputs; i++)
- delete fInBuffer[i];
- for (i = 0; i < outputs; i++)
- delete fOutBuffer[i];
- delete[]fInBuffer;
- delete[]fOutBuffer;
+ int len = b64decode(mChunk, buf);
+ if (len) {
+ mEffect->callDispatcher(effSetChunk, 1, len, buf, 0.0);
+ }
+ delete [] buf;
+ mChunk.Clear();
+ }
+ mInChunk = false;
}
- buffer = NULL;
- fInBuffer = NULL;
- fOutBuffer = NULL;
}
-BEGIN_EVENT_TABLE(VSTEffectDialog, wxDialog)
- EVT_BUTTON(wxID_OK, VSTEffectDialog::OnOK)
- EVT_BUTTON(wxID_CANCEL, VSTEffectDialog::OnCancel)
- EVT_BUTTON(PREVIEW_ID, VSTEffectDialog::OnPreview)
- EVT_COMMAND_SCROLL(VSTEFFECT_SLIDER_ID, VSTEffectDialog::OnSlider)
- EVT_SLIDER(VSTEFFECT_SLIDER_ID, VSTEffectDialog::OnSliderCmd)
-END_EVENT_TABLE()
+void VSTEffectDialog::HandleXMLContent(const wxString & content)
+{
+ if (mInChunk) {
+ mChunk += wxString(content).Trim(true).Trim(false);
+ }
+}
-VSTEffectDialog::VSTEffectDialog(wxWindow * parent,
- wxString effectName,
- int numParams,
- VSTEffect * vst,
- AEffect * aEffect,
- const wxPoint & pos)
-:wxDialog(parent, -1, effectName, pos, wxSize(320, 430),
- wxDEFAULT_DIALOG_STYLE)
+XMLTagHandler *VSTEffectDialog::HandleXMLChild(const wxChar *tag)
{
- this->vst = vst;
- this->aEffect = aEffect;
- this->numParams = numParams;
+ if (wxStrcmp(tag, wxT("vstprogrampersistence")) == 0) {
+ return this;
+ }
- int y = 10;
+ if (wxStrcmp(tag, wxT("effect")) == 0) {
+ return this;
+ }
- new wxStaticText(this, 0, _("VST Plug-in parameters:"), wxPoint(10, y),
- wxSize(300, 15));
- y += 20;
+ if (wxStrcmp(tag, wxT("program")) == 0) {
+ return this;
+ }
- sliders = new wxSlider *[numParams];
- labels = new wxStaticText *[numParams];
+ if (wxStrcmp(tag, wxT("param")) == 0) {
+ return this;
+ }
- for (int p = 0; p < numParams; p++) {
+ if (wxStrcmp(tag, wxT("chunk")) == 0) {
+ return this;
+ }
- char paramName[256];
- vst->callDispatcher(aEffect, effGetParamName, p, 0,
- (void *) paramName, 0.0);
- new wxStaticText(this, 0, wxString(paramName), wxPoint(10, y),
- wxSize(85, 15));
+ return NULL;
+}
- float val = vst->callGetParameter(aEffect, p);
+////////////////////////////////////////////////////////////////////////////////
+// Base64 en/decoding
+//
+// Original routines marked as public domain and found at:
+//
+// http://en.wikibooks.org/wiki/Algorithm_implementation/Miscellaneous/Base64
+//
+////////////////////////////////////////////////////////////////////////////////
- sliders[p] =
- new wxSlider(this, VSTEFFECT_SLIDER_ID,
- 1000 * val, 0, 1000,
- wxPoint(100, y + 5), wxSize(200, 25));
+// Lookup table for encoding
+const static wxChar cset[] = wxT("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/");
+const static char padc = wxT('=');
- char label[256];
- vst->callDispatcher(aEffect, effGetParamDisplay, p, 0,
- (void *) label, 0.0);
- char units[256];
- vst->callDispatcher(aEffect, effGetParamLabel, p, 0, (void *) units,
- 0.0);
+wxString VSTEffectDialog::b64encode(const void *in, int len)
+{
+ unsigned char *p = (unsigned char *) in;
+ wxString out;
+
+ unsigned long temp;
+ for (int i = 0; i < len / 3; i++) {
+ temp = (*p++) << 16; //Convert to big endian
+ temp += (*p++) << 8;
+ temp += (*p++);
+ out += cset[(temp & 0x00FC0000) >> 18];
+ out += cset[(temp & 0x0003F000) >> 12];
+ out += cset[(temp & 0x00000FC0) >> 6];
+ out += cset[(temp & 0x0000003F)];
+ }
+
+ switch (len % 3)
+ {
+ case 1:
+ temp = (*p++) << 16; //Convert to big endian
+ out += cset[(temp & 0x00FC0000) >> 18];
+ out += cset[(temp & 0x0003F000) >> 12];
+ out += padc;
+ out += padc;
+ break;
- labels[p] =
- new wxStaticText(this, 0,
- wxString::Format("%s %s", label, units),
- wxPoint(10, y + 15), wxSize(85, 15));
+ case 2:
+ temp = (*p++) << 16; //Convert to big endian
+ temp += (*p++) << 8;
+ out += cset[(temp & 0x00FC0000) >> 18];
+ out += cset[(temp & 0x0003F000) >> 12];
+ out += cset[(temp & 0x00000FC0) >> 6];
+ out += padc;
+ break;
+ }
- y += 35;
- }
+ return out;
+}
- y += 20;
- wxButton *preview =
- new wxButton(this, PREVIEW_ID,
- vst->GetPreviewName(),
- wxPoint(10, y), wxSize(80, 30));
- wxButton *cancel =
- new wxButton(this, wxID_CANCEL, _("&Cancel"), wxPoint(130, y), wxSize(80, 30));
- wxButton *ok =
- new wxButton(this, wxID_OK, _("OK"), wxPoint(220, y), wxSize(80, 30));
+int VSTEffectDialog::b64decode(wxString in, void *out)
+{
+ int len = in.Length();
+ unsigned char *p = (unsigned char *) out;
- y += 40;
+ if (len % 4) { //Sanity check
+ return 0;
+ }
- wxSize size;
- size.x = 320;
- size.y = y;
+ int padding = 0;
+ if (len) {
+ if (in[len - 1] == padc) {
+ padding++;
+ }
-#ifdef __WXMSW__
- size.y += 20;
-#endif
+ if (in[len - 2] == padc) {
+ padding++;
+ }
+ }
- Centre(wxBOTH | wxCENTER_FRAME);
+ const char *a = in.mb_str();
+ //Setup a vector to hold the result
+ unsigned long temp = 0; //Holds decoded quanta
+ int i = 0;
+ while (i < len) {
+ for (int quantumPosition = 0; quantumPosition < 4; quantumPosition++) {
+ unsigned char c = in[i];
+ temp <<= 6;
+
+ if (c >= 0x41 && c <= 0x5A) {
+ temp |= c - 0x41;
+ }
+ else if (c >= 0x61 && c <= 0x7A) {
+ temp |= c - 0x47;
+ }
+ else if (c >= 0x30 && c <= 0x39) {
+ temp |= c + 0x04;
+ }
+ else if (c == 0x2B) {
+ temp |= 0x3E;
+ }
+ else if (c == 0x2F) {
+ temp |= 0x3F;
+ }
+ else if (c == padc) {
+ switch (len - i)
+ {
+ case 1: //One pad character
+ *p++ = (temp >> 16) & 0x000000FF;
+ *p++ = (temp >> 8) & 0x000000FF;
+ return (p - (unsigned char *) out) - 1;
+ case 2: //Two pad characters
+ *p++ = (temp >> 10) & 0x000000FF;
+ return (p - (unsigned char *) out) - 1;
+ }
+ }
+ i++;
+ }
+ *p++ = (temp >> 16) & 0x000000FF;
+ *p++ = (temp >> 8) & 0x000000FF;
+ *p++ = temp & 0x000000FF;
+ }
- SetSize(size);
- vst->SetDialog(this);
+ return (p - (unsigned char *) out) - 1;
}
-VSTEffectDialog::~VSTEffectDialog()
+///////////////////////////////////////////////////////////////////////////////
+//
+// VSTEffect
+//
+///////////////////////////////////////////////////////////////////////////////
+
+VSTEffect::VSTEffect(const wxString & path, void *module, AEffect * aeffect)
+: mPath(path),
+ mModule(module),
+ mAEffect(aeffect)
{
- // TODO: proper disposal here
+ mBlockSize = 0;
+ mInBuffer = NULL;
+ mOutBuffer = NULL;
+ mInputs = 0;
+ mOutputs = 0;
+ mChannels = 0;
- delete[]sliders;
- delete[]labels;
-}
+ mAEffect->user = this;
-void VSTEffectDialog::OnSlider(wxScrollEvent & WXUNUSED(event))
-{
- for (int p = 0; p < numParams; p++) {
- float val;
+ callDispatcher(effOpen, 0, 0, NULL, 0.0);
- val = sliders[p]->GetValue() / 1000.;
- vst->callSetParameter(aEffect, p, val);
+ mVendor = GetString(effGetVendorString);
+ mName = GetString(effGetProductString);
- char label[256];
- vst->callDispatcher(aEffect, effGetParamDisplay, p, 0,
- (void *) label, 0.0);
- char units[256];
- vst->callDispatcher(aEffect, effGetParamLabel, p, 0, (void *) units,
- 0.0);
- labels[p]->SetLabel(wxString::Format("%s %s", label, units));
+ if (mVendor.IsEmpty()) {
+ mVendor = wxT("VST");
}
-}
-void VSTEffectDialog::OnSliderCmd(wxCommandEvent & WXUNUSED(event))
-{
- for (int p = 0; p < numParams; p++) {
- float val;
+ if (mName.IsEmpty()) {
+ wxFileName fn(mPath);
+ mName = fn.GetName();
+ }
- val = sliders[p]->GetValue() / 1000.;
- vst->callSetParameter(aEffect, p, val);
+ mInputs = mAEffect->numInputs;
+ mOutputs = mAEffect->numOutputs;
- char label[256];
- vst->callDispatcher(aEffect, effGetParamDisplay, p, 0,
- (void *) label, 0.0);
- char units[256];
- vst->callDispatcher(aEffect, effGetParamLabel, p, 0, (void *) units,
- 0.0);
- labels[p]->SetLabel(wxString::Format("%s %s", label, units));
+ int flags = PLUGIN_EFFECT;
+ if (mInputs == 0) {
+ flags |= INSERT_EFFECT;
+ }
+ else if (mOutputs == 0) {
+ flags |= ANALYZE_EFFECT;
+ }
+ else {
+ flags |= PROCESS_EFFECT;
}
+
+ SetEffectFlags(flags);
}
-void VSTEffectDialog::OnOK(wxCommandEvent & WXUNUSED(event))
+VSTEffect::~VSTEffect()
{
- EndModal(TRUE);
+ callDispatcher(effClose, 0, 0, NULL, 0.0);
+
+#if defined(__WXMAC__)
+ CFRelease((CFBundleRef) mModule);
+#else
+ delete (wxDynamicLibrary *) mModule;
+#endif
}
-void VSTEffectDialog::OnCancel(wxCommandEvent & WXUNUSED(event))
+wxString VSTEffect::GetEffectName()
{
- EndModal(FALSE);
+ if (mVendor.IsEmpty()) {
+ return mName + wxT("...");
+ }
+
+ return mVendor + wxT(": ") + mName + wxT("...");
}
-void VSTEffectDialog::OnPreview(wxCommandEvent & WXUNUSED(event))
+wxString VSTEffect::GetEffectIdentifier()
{
- vst->Preview();
+ return mName;
}
-#ifdef __MACOSX__
-
-// Mac OS X methods
-//
-// Cross-platform VST plug-ins on the Mac are compiled as Carbon,
-// CFM code. Audacity is compiled as Carbon, Mach-O code. Special care
-// must be taken when calling funtions in the other mode - these
-// functions make it easier.
-//
-
-// MachOFunctionPointerForCFMFunctionPointer(void *cfmfp)
-//
-// Borrowed from the Apple Sample Code file "CFM_MachO_CFM.c"
-// This function allocates a block of CFM glue code which contains
-// the instructions to call CFM routines
-
-void *NewMachOFromCFM(void *cfmfp)
+std::set<wxString> VSTEffect::GetEffectCategories()
{
- UInt32 CFMTemplate[6] = {0x3D800000, 0x618C0000, 0x800C0000,
- 0x804C0004, 0x7C0903A6, 0x4E800420};
- UInt32 *mfp = (UInt32*)NewPtr(sizeof(CFMTemplate));
-
- mfp[0] = CFMTemplate[0] | ((UInt32)cfmfp >> 16);
- mfp[1] = CFMTemplate[1] | ((UInt32)cfmfp & 0xFFFF);
- mfp[2] = CFMTemplate[2];
- mfp[3] = CFMTemplate[3];
- mfp[4] = CFMTemplate[4];
- mfp[5] = CFMTemplate[5];
- MakeDataExecutable(mfp, sizeof(CFMTemplate));
-
- return(mfp);
+ return std::set<wxString>();
}
-void DisposeMachOFromCFM(void *ptr)
+wxString VSTEffect::GetEffectAction()
{
- DisposePtr((Ptr)ptr);
+ return _("Performing Effect: ") + mName;
}
-void *NewCFMFromMachO(void *machofp)
+bool VSTEffect::Init()
{
- void *result = NewPtr(8);
- ((void **)result)[0] = machofp;
- ((void **)result)[1] = result;
+ mBlockSize = 0;
+
+ TrackListIterator iter(mOutputTracks);
+ WaveTrack *left = (WaveTrack *) iter.First();
+ while (left) {
+ sampleCount lstart;
+ sampleCount llen;
- return result;
+ GetSamples(left, &lstart, &llen);
+
+ if (left->GetLinked()) {
+ WaveTrack *right = (WaveTrack *) iter.Next();
+ sampleCount rstart;
+ sampleCount rlen;
+
+ GetSamples(right, &rstart, &rlen);
+
+ if (left->GetRate() != right->GetRate()) {
+ wxMessageBox(_("Both channels of a stereo track must be the same sample rate."));
+ return false;
+ }
+
+ if (llen != rlen) {
+ wxMessageBox(_("Both channels of a stereo track must be the same length."));
+ return false;
+ }
+ }
+
+ left = (WaveTrack *) iter.Next();
+ }
+
+ return true;
}
-void DisposeCFMFromMachO(void *ptr)
+bool VSTEffect::PromptUser()
{
- DisposePtr((Ptr)ptr);
+ VSTEffectDialog dlog(mParent, mName, this, mAEffect);
+ dlog.CentreOnParent();
+ dlog.ShowModal();
+
+ return dlog.GetReturnCode() != 0;
}
-long VSTEffect::callDispatcher(AEffect * effect, long opCode,
- long index, long value, void *ptr,
- float opt)
+bool VSTEffect::Process()
{
- long rval;
+ CopyInputTracks();
+ bool bGoodResult = true;
+
+ mInBuffer = NULL;
+ mOutBuffer = NULL;
+
+ TrackListIterator iter(mOutputTracks);
+ int count = 0;
+ bool clear = false;
+ WaveTrack *left = (WaveTrack *) iter.First();
+ while (left) {
+ WaveTrack *right;
+ sampleCount len;
+ sampleCount lstart;
+ sampleCount rstart;
+
+ GetSamples(left, &lstart, &len);
+
+ mChannels = 1;
+
+ right = NULL;
+ rstart = 0;
+ if (left->GetLinked() && mInputs>1) {
+ right = (WaveTrack *) iter.Next();
+ GetSamples(right, &rstart, &len);
+ clear = false;
+ mChannels = 2;
+ }
+
+ if (mBlockSize == 0) {
+ mBlockSize = left->GetMaxBlockSize() * 2;
+
+ mInBuffer = new float *[mInputs];
+ for (int i = 0; i < mInputs; i++) {
+ mInBuffer[i] = new float[mBlockSize];
+ }
+
+ mOutBuffer = new float *[mOutputs];
+ for (int i = 0; i < mOutputs; i++) {
+ mOutBuffer[i] = new float[mBlockSize];
+ }
+
+ // Turn the power off
+ callDispatcher(effMainsChanged, 0, 0, NULL, 0.0);
+
+ // Set processing parameters
+ callDispatcher(effSetSampleRate, 0, 0, NULL, left->GetRate());
+ callDispatcher(effSetBlockSize, 0, mBlockSize, NULL, 0.0);
+ }
+
+ // Clear unused input buffers
+ if (!right && !clear) {
+ for (int i = 1; i < mInputs; i++) {
+ for (int j = 0; j < mBlockSize; j++) {
+ mInBuffer[i][j] = 0.0;
+ }
+ }
+ clear = true;
+ }
+
+ bGoodResult = ProcessStereo(count, left, right, lstart, rstart, len);
+ if (!bGoodResult) {
+ break;
+ }
+
+ left = (WaveTrack *) iter.Next();
+ count++;
+ }
+
+ if (mOutBuffer) {
+ for (int i = 0; i < mOutputs; i++) {
+ delete mOutBuffer[i];
+ }
+ delete [] mOutBuffer;
+ mOutBuffer = NULL;
+ }
- dispatcherFn fp = (dispatcherFn)NewMachOFromCFM(effect->dispatcher);
- rval = fp(effect, opCode, index, value, ptr, opt);
- DisposeMachOFromCFM(fp);
+ if (mInBuffer) {
+ for (int i = 0; i < mInputs; i++) {
+ delete mInBuffer[i];
+ }
+ delete [] mInBuffer;
+ mInBuffer = NULL;
+ }
- return rval;
+ ReplaceProcessedTracks(bGoodResult);
+ return bGoodResult;
}
-void VSTEffect::callProcess(AEffect * effect, float **inputs,
- float **outputs, long sampleframes)
+bool VSTEffect::ProcessStereo(int count,
+ WaveTrack *left, WaveTrack *right,
+ sampleCount lstart, sampleCount rstart,
+ sampleCount len)
{
- processFn fp = (processFn)NewMachOFromCFM(effect->process);
- fp(effect, inputs, outputs, sampleframes);
- DisposeMachOFromCFM(fp);
+ bool rc = true;
+
+ // Turn the power on
+ callDispatcher(effMainsChanged, 0, 1, NULL, 0.0);
+
+ // Actually perform the effect here
+ sampleCount originalLen = len;
+ sampleCount ls = lstart;
+ sampleCount rs = rstart;
+ while (len) {
+ int block = mBlockSize;
+ if (block > len) {
+ block = len;
+ }
+
+ left->Get((samplePtr)mInBuffer[0], floatSample, ls, block);
+ if (right) {
+ right->Get((samplePtr)mInBuffer[1], floatSample, rs, block);
+ }
+
+ callProcessReplacing(mInBuffer, mOutBuffer, block);
+
+ left->Set((samplePtr)mOutBuffer[0], floatSample, ls, block);
+ if (right) {
+ right->Set((samplePtr)mOutBuffer[1], floatSample, rs, block);
+ }
+
+ len -= block;
+ ls += block;
+ rs += block;
+
+ if (mInputs > 1) {
+ if (TrackGroupProgress(count, (ls - lstart) / (double)originalLen)) {
+ rc = false;
+ break;
+ }
+ }
+ else {
+ if (TrackProgress(count, (ls - lstart) / (double)originalLen)) {
+ rc = false;
+ break;
+ }
+ }
+ }
+
+ // Turn the power off
+ callDispatcher(effMainsChanged, 0, 0, NULL, 0.0);
+
+ return rc;
}
-void VSTEffect::callProcessReplacing(AEffect * effect, float **inputs,
- float **outputs, long sampleframes)
+void VSTEffect::End()
{
- processFn fp = (processFn)NewMachOFromCFM(effect->processReplacing);
- fp(effect, inputs, outputs, sampleframes);
- DisposeMachOFromCFM(fp);
}
-void VSTEffect::callSetParameter(AEffect * effect, long index,
- float parameter)
+wxString VSTEffect::GetString(int opcode, int index)
{
- setParameterFn fp = (setParameterFn)NewMachOFromCFM(effect->setParameter);
- fp(effect, index, parameter);
- DisposeMachOFromCFM(fp);
+ char buf[256];
+
+ buf[0] = '\0';
+
+ callDispatcher(opcode, index, 0, buf, 0.0);
+
+ return LAT1CTOWX(buf);
}
-float VSTEffect::callGetParameter(AEffect * effect, long index)
+void VSTEffect::SetString(int opcode, const wxString & str, int index)
{
- float rval;
+ char buf[256];
- getParameterFn fp = (getParameterFn)NewMachOFromCFM(effect->getParameter);
- rval = fp(effect, index);
- DisposeMachOFromCFM(fp);
+ strcpy(buf, str.Left(255).mb_str());
- return rval;
+ callDispatcher(opcode, index, 0, buf, 0.0);
}
-#else // ifdef __MACOSX__
-
-long VSTEffect::callDispatcher(AEffect * effect, long opCode,
- long index, long value, void *ptr,
- float opt)
+long VSTEffect::callDispatcher(long opcode,
+ long index, long value, void *ptr, float opt)
{
- return effect->dispatcher(effect, opCode, index, value, ptr, opt);
+ return mAEffect->dispatcher(mAEffect, opcode, index, value, ptr, opt);
}
-void VSTEffect::callProcess(AEffect * effect, float **inputs,
- float **outputs, long sampleframes)
+void VSTEffect::callProcess(float **inputs, float **outputs, long sampleframes)
{
- effect->process(effect, inputs, outputs, sampleframes);
+ mAEffect->process(mAEffect, inputs, outputs, sampleframes);
}
-void VSTEffect::callProcessReplacing(AEffect * effect, float **inputs,
+void VSTEffect::callProcessReplacing(float **inputs,
float **outputs, long sampleframes)
{
- effect->processReplacing(effect, inputs, outputs, sampleframes);
+ mAEffect->processReplacing(mAEffect, inputs, outputs, sampleframes);
}
-void VSTEffect::callSetParameter(AEffect * effect, long index,
- float parameter)
+void VSTEffect::callSetParameter(long index, float parameter)
{
- effect->setParameter(effect, index, parameter);
+ mAEffect->setParameter(mAEffect, index, parameter);
}
-float VSTEffect::callGetParameter(AEffect * effect, long index)
+float VSTEffect::callGetParameter(long index)
{
- return effect->getParameter(effect, index);
+ return mAEffect->getParameter(mAEffect, index);
}
-#endif // MACOSX
+long int VSTEffect::audioMaster(AEffect * effect,
+ long int opcode,
+ long int index,
+ long int value,
+ void * ptr,
+ float opt)
+{
+ switch (opcode)
+ {
+ case audioMasterPinConnected:
+ return (index < mChannels ? 0 : 1);
+
+ default:
+#if 0
+#if defined(__WXDEBUG__)
+ wxPrintf(wxT("effect: %p opcode: %d index: %d value: %d ptr: %p opt: %f user: %p\n"),
+ effect, opcode, index, value, ptr, opt, effect->user);
+#endif
+#endif
+ return 0;
+ }
+
+}
#endif // USE_VST
diff --git a/src/effects/VST/VSTEffect.h b/src/effects/VST/VSTEffect.h
index d66d753..d316e80 100644
--- a/src/effects/VST/VSTEffect.h
+++ b/src/effects/VST/VSTEffect.h
@@ -12,15 +12,11 @@
#if USE_VST
-#include "AudioEffect.hpp" // VST API
-
-class wxSlider;
-class labels;
+#include "../Effect.h"
-#include <wx/dialog.h>
-#include <wx/stattext.h>
+#include "aeffectx.h"
-#include "../Effect.h"
+#define audacityVSTID CCONST('a', 'u', 'D', 'y');
typedef long (*dispatcherFn)(AEffect * effect, long opCode,
long index, long value, void *ptr,
@@ -34,23 +30,22 @@ typedef void (*setParameterFn)(AEffect * effect, long index,
typedef float (*getParameterFn)(AEffect * effect, long index);
-class VSTEffect:public Effect {
+typedef AEffect *(*vstPluginMain)(audioMasterCallback audioMaster);
+class VSTEffect:public Effect
+{
public:
- VSTEffect(wxString pluginName, AEffect * aEffect);
-
+ VSTEffect(const wxString & path, void *module, AEffect * aeffect);
virtual ~VSTEffect();
virtual wxString GetEffectName();
-
+
+ virtual wxString GetEffectIdentifier();
+
virtual std::set<wxString> GetEffectCategories();
virtual wxString GetEffectAction();
-
- virtual int GetEffectFlags() {
- return PLUGIN_EFFECT | PROCESS_EFFECT;
- }
virtual bool Init();
@@ -60,76 +55,49 @@ class VSTEffect:public Effect {
virtual void End();
- // VST methods
-
- long callDispatcher(AEffect * effect, long opCode,
- long index, long value, void *ptr,
- float opt);
- void callProcess(AEffect * effect, float **inputs,
- float **outputs, long sampleframes);
- void callProcessReplacing(AEffect * effect, float **inputs,
- float **outputs, long sampleframes);
- void callSetParameter(AEffect * effect, long index,
- float parameter);
- float callGetParameter(AEffect * effect, long index);
+ // Utility methods
- private:
- bool ProcessStereo(int count, WaveTrack * left, WaveTrack *right,
- longSampleCount lstart,
- longSampleCount rstart, sampleCount len);
-
- void GetSamples(WaveTrack *track,
- longSampleCount *start,
- sampleCount *len);
-
- bool isOpened;
- wxString pluginName;
- AEffect *aEffect;
-
- sampleCount mBlockSize;
- float *buffer;
- float **fInBuffer;
- float **fOutBuffer;
- int inputs;
- int outputs;
- int numParameters;
-};
-
-class VSTEffectDialog:public wxDialog {
- public:
- VSTEffectDialog(wxWindow * parent,
- wxString effectName,
- int numParams,
- VSTEffect * vst,
- AEffect * aEffect,
- const wxPoint & pos = wxDefaultPosition);
+ wxString GetString(int opcode, int index = 0);
+ void SetString(int opcode, const wxString & str, int index = 0);
- ~VSTEffectDialog();
+ // VST methods
- void OnSlider(wxScrollEvent & event);
- void OnSliderCmd(wxCommandEvent & event);
- void OnOK(wxCommandEvent & event);
- void OnCancel(wxCommandEvent & event);
- void OnPreview(wxCommandEvent & event);
+ long callDispatcher(long opcode, long index, long value, void *ptr, float opt);
+ void callProcess(float **inputs, float **outputs, long sampleframes);
+ void callProcessReplacing(float **inputs, float **outputs, long sampleframes);
+ void callSetParameter(long index, float parameter);
+ float callGetParameter(long index);
- DECLARE_EVENT_TABLE()
+ // VST callback
+ long int audioMaster(AEffect * effect,
+ long int opcode,
+ long int index,
+ long int value,
+ void * ptr,
+ float opt);
private:
- VSTEffect * vst;
- AEffect * aEffect;
- wxSlider **sliders;
- wxStaticText **labels;
- int numParams;
-};
+ bool ProcessStereo(int count,
+ WaveTrack *left,
+ WaveTrack *right,
+ sampleCount lstart,
+ sampleCount rstart,
+ sampleCount len);
-#if defined(__WXMAC__) && defined(__UNIX__)
+ wxString mPath;
+ void *mModule;
+ AEffect *mAEffect;
-void *NewMachOFromCFM(void *cfmfp);
-void DisposeMachOFromCFM(void *ptr);
-void *NewCFMFromMachO(void *machofp);
-void DisposeCFMFromMachO(void *ptr);
+ wxString mVendor;
+ wxString mName;
-#endif
+ sampleCount mBlockSize;
+ float **mInBuffer;
+ float **mOutBuffer;
+ int mInputs;
+ int mOutputs;
+ int mChannels;
+};
#endif // USE_VST
diff --git a/src/effects/Wahwah.cpp b/src/effects/Wahwah.cpp
index fe8c887..20c3002 100644
--- a/src/effects/Wahwah.cpp
+++ b/src/effects/Wahwah.cpp
@@ -218,30 +218,46 @@ void WahwahDialog::PopulateOrExchange(ShuttleGui & S)
S.StartMultiColumn(3, wxCENTER);
{
+ wxSlider *s;
S.Id(ID_FREQTEXT).AddTextBox(_("LFO Frequency (Hz):"), wxT(""), 12);
S.SetStyle(wxSL_HORIZONTAL);
- S.Id(ID_FREQSLIDER).AddSlider(wxT(""), 100, FREQ_MAX, FREQ_MIN)->
- SetName(_("LFO frequency in hertz"));
+ s = S.Id(ID_FREQSLIDER).AddSlider(wxT(""), 100, FREQ_MAX, FREQ_MIN);
+ s->SetName(_("LFO frequency in hertz"));
+#if defined(__WXGTK__)
+ s->SetMinSize(wxSize(100, -1));
+#endif
S.Id(ID_PHASETEXT).AddTextBox(_("LFO Start Phase (deg.):"), wxT(""), 12);
S.SetStyle(wxSL_HORIZONTAL);
- S.Id(ID_PHASESLIDER).AddSlider(wxT(""), 0, PHASE_MAX, PHASE_MIN)->
- SetName(_("LFO start phase in degrees"));
+ s = S.Id(ID_PHASESLIDER).AddSlider(wxT(""), 0, PHASE_MAX, PHASE_MIN);
+ s->SetName(_("LFO start phase in degrees"));
+#if defined(__WXGTK__)
+ s->SetMinSize(wxSize(100, -1));
+#endif
S.Id(ID_DEPTHTEXT).AddTextBox(_("Depth (%):"), wxT(""), 12);
S.SetStyle(wxSL_HORIZONTAL);
- S.Id(ID_DEPTHSLIDER).AddSlider(wxT(""), 0, DEPTH_MAX, DEPTH_MIN)->
- SetName(_("Depth in percent"));
+ s = S.Id(ID_DEPTHSLIDER).AddSlider(wxT(""), 0, DEPTH_MAX, DEPTH_MIN);
+ s->SetName(_("Depth in percent"));
+#if defined(__WXGTK__)
+ s->SetMinSize(wxSize(100, -1));
+#endif
S.Id(ID_RESONANCETEXT).AddTextBox(_("Resonance:"), wxT(""), 12);
S.SetStyle(wxSL_HORIZONTAL);
- S.Id(ID_RESONANCESLIDER).AddSlider(wxT(""), 0, RES_MAX, RES_MIN)->
- SetName(_("Resonance"));
+ s = S.Id(ID_RESONANCESLIDER).AddSlider(wxT(""), 0, RES_MAX, RES_MIN);
+ s->SetName(_("Resonance"));
+#if defined(__WXGTK__)
+ s->SetMinSize(wxSize(100, -1));
+#endif
S.Id(ID_FREQOFFTEXT).AddTextBox(_("Wah Frequency Offset (%):"), wxT(""), 12);
S.SetStyle(wxSL_HORIZONTAL);
- S.Id(ID_FREQOFFSLIDER).AddSlider(wxT(""), 0, FREQOFF_MAX, FREQOFF_MIN)->
- SetName(_("Wah frequency offset in percent"));
+ s =S.Id(ID_FREQOFFSLIDER).AddSlider(wxT(""), 0, FREQOFF_MAX, FREQOFF_MIN);
+ s->SetName(_("Wah frequency offset in percent"));
+#if defined(__WXGTK__)
+ s->SetMinSize(wxSize(100, -1));
+#endif
}
S.EndMultiColumn();
}
diff --git a/src/effects/audiounits/AudioUnitEffect.cpp b/src/effects/audiounits/AudioUnitEffect.cpp
index 028a170..40df49f 100644
--- a/src/effects/audiounits/AudioUnitEffect.cpp
+++ b/src/effects/audiounits/AudioUnitEffect.cpp
@@ -95,6 +95,7 @@ AudioUnitEffect::AudioUnitEffect(wxString name, Component component):
mName(name),
mComponent(component)
{
+ SetEffectFlags(PLUGIN_EFFECT | PROCESS_EFFECT);
OSErr result;
mUnit = NULL;
@@ -139,13 +140,6 @@ wxString AudioUnitEffect::GetEffectAction()
mName.c_str());
}
-int AudioUnitEffect::GetEffectFlags()
-{
- int flags = PLUGIN_EFFECT | PROCESS_EFFECT;
-
- return flags;
-}
-
bool AudioUnitEffect::Init()
{
ComponentResult auResult;
@@ -200,7 +194,7 @@ bool AudioUnitEffect::PromptUser()
bool AudioUnitEffect::Process()
{
- TrackListIterator iter(mWaveTracks);
+ TrackListOfKindIterator iter(Track::Wave, mTracks);
int count = 0;
Track *left = iter.First();
Track *right;
@@ -244,26 +238,6 @@ void AudioUnitEffect::End()
AudioUnitUninitialize(mUnit);
}
-void AudioUnitEffect::GetSamples(WaveTrack *track,
- sampleCount *start,
- sampleCount *len)
-{
- double trackStart = track->GetStartTime();
- double trackEnd = track->GetEndTime();
- double t0 = mT0 < trackStart? trackStart: mT0;
- double t1 = mT1 > trackEnd? trackEnd: mT1;
-
- if (t1 > t0) {
- *start = track->TimeToLongSamples(t0);
- sampleCount end = track->TimeToLongSamples(t1);
- *len = (sampleCount)(end - *start);
- }
- else {
- *start = 0;
- *len = 0;
- }
-}
-
bool AudioUnitEffect::SetRateAndChannels(AudioUnit unit,
int numChannels,
Float64 sampleRate)
diff --git a/src/effects/audiounits/AudioUnitEffect.h b/src/effects/audiounits/AudioUnitEffect.h
index 0b9de3d..30849ca 100644
--- a/src/effects/audiounits/AudioUnitEffect.h
+++ b/src/effects/audiounits/AudioUnitEffect.h
@@ -34,8 +34,6 @@ class AudioUnitEffect:public Effect {
virtual wxString GetEffectAction();
- virtual int GetEffectFlags();
-
virtual bool Init();
virtual bool PromptUser();
@@ -48,10 +46,6 @@ class AudioUnitEffect:public Effect {
bool SetRateAndChannels(AudioUnit unit,
int numChannels, Float64 sampleRate);
- void GetSamples(WaveTrack *track,
- sampleCount *start,
- sampleCount *len);
-
bool ProcessStereo(int count, WaveTrack * left, WaveTrack *right,
sampleCount lstart, sampleCount rstart,
sampleCount len);
diff --git a/src/effects/ladspa/LadspaEffect.cpp b/src/effects/ladspa/LadspaEffect.cpp
index 4ac5573..1848aa0 100644
--- a/src/effects/ladspa/LadspaEffect.cpp
+++ b/src/effects/ladspa/LadspaEffect.cpp
@@ -126,13 +126,15 @@ LadspaEffect::LadspaEffect(const LADSPA_Descriptor *data,
}
}
- flags = PLUGIN_EFFECT;
+ int flags = PLUGIN_EFFECT;
if (inputs == 0)
flags |= INSERT_EFFECT;
else if (outputs == 0)
flags |= ANALYZE_EFFECT;
else
flags |= PROCESS_EFFECT;
+
+ SetEffectFlags(flags);
}
LadspaEffect::~LadspaEffect()
@@ -182,7 +184,7 @@ bool LadspaEffect::Init()
mBlockSize = 0;
mainRate = 0;
- TrackListIterator iter(mWaveTracks);
+ TrackListOfKindIterator iter(Track::Wave, mTracks);
Track *left = iter.First();
while(left) {
if (mainRate == 0)
@@ -224,39 +226,12 @@ bool LadspaEffect::PromptUser()
return true;
}
-void LadspaEffect::GetSamples(WaveTrack *track,
- sampleCount *start,
- sampleCount *len)
-{
- double trackStart = track->GetStartTime();
- double trackEnd = track->GetEndTime();
- double t0 = mT0 < trackStart? trackStart: mT0;
- double t1 = mT1 > trackEnd? trackEnd: mT1;
-
- if (flags & INSERT_EFFECT) {
- t1 = t0 + mLength;
- if (mT0 == mT1) {
- track->InsertSilence(t0, t1);
- }
- }
-
- if (t1 > t0) {
- *start = track->TimeToLongSamples(t0);
- sampleCount end = track->TimeToLongSamples(t1);
- *len = (sampleCount)(end - *start);
- }
- else {
- *start = 0;
- *len = 0;
- }
-}
-
bool LadspaEffect::Process()
{
- this->CopyInputWaveTracks(); // Set up mOutputWaveTracks.
+ this->CopyInputTracks(); // Set up mOutputTracks.
bool bGoodResult = true;
- TrackListIterator iter(mOutputWaveTracks);
+ TrackListIterator iter(mOutputTracks);
int count = 0;
Track *left = iter.First();
Track *right;
@@ -289,7 +264,7 @@ bool LadspaEffect::Process()
count++;
}
- this->ReplaceProcessedWaveTracks(bGoodResult);
+ this->ReplaceProcessedTracks(bGoodResult);
return bGoodResult;
}
@@ -733,9 +708,11 @@ LadspaEffectDialog::LadspaEffectDialog(LadspaEffect *eff,
LadspaEffectDialog::~LadspaEffectDialog()
{
+ delete[]toggles;
delete[]sliders;
delete[]fields;
delete[]labels;
+ delete[]ports;
}
void LadspaEffectDialog::OnCheckBox(wxCommandEvent &event)
diff --git a/src/effects/ladspa/LadspaEffect.h b/src/effects/ladspa/LadspaEffect.h
index 94d0cae..c5ad884 100644
--- a/src/effects/ladspa/LadspaEffect.h
+++ b/src/effects/ladspa/LadspaEffect.h
@@ -36,10 +36,6 @@ class LadspaEffect:public Effect {
virtual wxString GetEffectAction();
- virtual int GetEffectFlags() {
- return flags;
- }
-
virtual bool Init();
virtual bool PromptUser();
@@ -53,12 +49,7 @@ class LadspaEffect:public Effect {
sampleCount lstart, sampleCount rstart,
sampleCount len);
- void GetSamples(WaveTrack *track,
- sampleCount *start,
- sampleCount *len);
-
wxString pluginName;
- int flags;
const LADSPA_Descriptor *mData;
sampleCount mBlockSize;
@@ -72,7 +63,6 @@ class LadspaEffect:public Effect {
float *inputControls;
float *outputControls;
int mainRate;
- double mLength;
std::set<wxString> mCategories;
};
diff --git a/src/effects/ladspa/LoadLadspa.cpp b/src/effects/ladspa/LoadLadspa.cpp
index 0ee855e..5336372 100644
--- a/src/effects/ladspa/LoadLadspa.cpp
+++ b/src/effects/ladspa/LoadLadspa.cpp
@@ -214,9 +214,8 @@ void LoadLadspaPlugins()
rdfPathList);
}
- wxGetApp().FindFilesInPathList(wxT("*.rdf"), rdfPathList, wxFILE, rdfFiles);
- wxGetApp().FindFilesInPathList(wxT("*.rdfs"),
- rdfPathList, wxFILE, rdfFiles);
+ wxGetApp().FindFilesInPathList(wxT("*.rdf"), rdfPathList, rdfFiles);
+ wxGetApp().FindFilesInPathList(wxT("*.rdfs"), rdfPathList, rdfFiles);
for(size_t i = 0; i < rdfFiles.GetCount(); ++i) {
wxString fileUri(wxT("file://"));
fileUri += rdfFiles[i];
@@ -280,6 +279,7 @@ void LoadLadspaPlugins()
#ifdef __WXGTK__
wxGetApp().AddUniquePathToPathList(wxT(INSTALL_PREFIX) wxT("/ladspa"), pathList);
wxGetApp().AddUniquePathToPathList(wxT("/usr/local/lib/ladspa"), pathList);
+ wxGetApp().AddUniquePathToPathList(wxT("/usr/lib/ladspa"), pathList);
wxGetApp().AddUniquePathToPathList(wxT(LIBDIR) wxT("/ladspa"), pathList);
#endif
@@ -299,9 +299,9 @@ void LoadLadspaPlugins()
}
#ifdef __WXMSW__
- wxGetApp().FindFilesInPathList(wxT("*.dll"), pathList, wxFILE, files);
+ wxGetApp().FindFilesInPathList(wxT("*.dll"), pathList, files);
#else
- wxGetApp().FindFilesInPathList(wxT("*.so"), pathList, wxFILE, files);
+ wxGetApp().FindFilesInPathList(wxT("*.so"), pathList, files);
#endif
for(i=0; i<files.GetCount(); i++)
diff --git a/src/effects/lv2/LV2Effect.cpp b/src/effects/lv2/LV2Effect.cpp
index 1bd32d6..bb34e04 100644
--- a/src/effects/lv2/LV2Effect.cpp
+++ b/src/effects/lv2/LV2Effect.cpp
@@ -143,14 +143,15 @@ LV2Effect::LV2Effect(SLV2Plugin data,
// Determine whether the plugin is a generator, effect or analyser
// depending on the number of ports of each type (not completely accurate,
// but works most of the time)
- flags = PLUGIN_EFFECT;
+ int flags = PLUGIN_EFFECT;
if (mAudioInputs.size() == 0)
flags |= INSERT_EFFECT;
else if (mAudioOutputs.size() == 0)
flags |= ANALYZE_EFFECT;
else
flags |= PROCESS_EFFECT;
-
+
+ SetEffectFlags(flags);
}
LV2Effect::~LV2Effect()
@@ -198,7 +199,7 @@ bool LV2Effect::Init()
mBlockSize = 0;
mainRate = 0;
- TrackListIterator iter(mWaveTracks);
+ TrackListOfKindIterator iter(Track::Wave, mTracks);
Track *left = iter.First();
while(left) {
if (mainRate == 0)
@@ -247,33 +248,6 @@ bool LV2Effect::PromptUser()
return true;
}
-void LV2Effect::GetSamples(WaveTrack *track,
- sampleCount *start,
- sampleCount *len)
-{
- double trackStart = track->GetStartTime();
- double trackEnd = track->GetEndTime();
- double t0 = mT0 < trackStart? trackStart: mT0;
- double t1 = mT1 > trackEnd? trackEnd: mT1;
-
- if (flags & INSERT_EFFECT) {
- t1 = t0 + mLength;
- if (mT0 == mT1) {
- track->InsertSilence(t0, t1);
- }
- }
-
- if (t1 > t0) {
- *start = track->TimeToLongSamples(t0);
- sampleCount end = track->TimeToLongSamples(t1);
- *len = (sampleCount)(end - *start);
- }
- else {
- *start = 0;
- *len = 0;
- }
-}
-
bool LV2Effect::Process()
{
this->CopyInputWaveTracks(); // Set up mOutputWaveTracks.
diff --git a/src/effects/lv2/LV2Effect.h b/src/effects/lv2/LV2Effect.h
index 72d2a92..51bca7f 100644
--- a/src/effects/lv2/LV2Effect.h
+++ b/src/effects/lv2/LV2Effect.h
@@ -71,11 +71,6 @@ class LV2Effect:public Effect {
/** Get the action string. */
virtual wxString GetEffectAction();
- /** Get the flags that describe the type of the effect. */
- virtual int GetEffectFlags() {
- return flags;
- }
-
virtual bool Init();
virtual bool PromptUser();
@@ -106,20 +101,14 @@ class LV2Effect:public Effect {
sampleCount lstart, sampleCount rstart,
sampleCount len);
- void GetSamples(WaveTrack *track,
- sampleCount *start,
- sampleCount *len);
-
bool mValid;
wxString pluginName;
- int flags;
SLV2Plugin mData;
sampleCount mBlockSize;
float **fInBuffer;
float **fOutBuffer;
int mainRate;
- double mLength;
std::set<wxString> mCategories;
diff --git a/src/effects/nyquist/LoadNyquist.cpp b/src/effects/nyquist/LoadNyquist.cpp
index 8cf0d2a..eea0ed9 100644
--- a/src/effects/nyquist/LoadNyquist.cpp
+++ b/src/effects/nyquist/LoadNyquist.cpp
@@ -50,7 +50,7 @@ void LoadNyquistPlugins()
pathList);
}
- wxGetApp().FindFilesInPathList(wxT("*.ny"), pathList, wxFILE, files);
+ wxGetApp().FindFilesInPathList(wxT("*.ny"), pathList, files);
for(i=0; i<files.GetCount(); i++)
LoadNyquistEffect(files[i]);
diff --git a/src/effects/nyquist/Nyquist.cpp b/src/effects/nyquist/Nyquist.cpp
index 79e7f7c..36509c9 100644
--- a/src/effects/nyquist/Nyquist.cpp
+++ b/src/effects/nyquist/Nyquist.cpp
@@ -61,34 +61,64 @@ effects from this one class.
#endif
#include <locale.h>
+#include <iostream>
+#include <ostream>
+#include <sstream>
#include <wx/arrimpl.cpp>
WX_DEFINE_OBJARRAY(NyqControlArray);
-wxString EffectNyquist::mXlispPath;
+EffectNyquist::EffectNyquist(wxString fName)
+{
+ mAction = _("Applying Nyquist Effect...");
+ mCmd = wxEmptyString;
+ SetEffectFlags(HIDDEN_EFFECT);
+ mInteractive = false;
+ mExternal = false;
+ mCompiler = false;
+ mDebug = false;
+ mIsSal = false;
+ mOK = false;
-#define NYQ_CTRL_INT 0
-#define NYQ_CTRL_REAL 1
-#define NYQ_CTRL_STRING 2
-#define NYQ_CTRL_CHOICE 3
+ mStop = false;
+ mBreak = false;
+ mCont = false;
-extern "C" {
- extern void set_xlisp_path(const char *p);
+ if (fName == wxT("")) {
+ // Interactive Nyquist
+ mOK = true;
+ mInteractive = true;
+ mName = _("Nyquist Prompt...");
+ SetEffectFlags(PROCESS_EFFECT | BUILTIN_EFFECT | ADVANCED_EFFECT);
+ return;
+ }
+
+ wxLogNull dontLog;
+
+ mName = wxFileName(fName).GetName();
+ mFileName = wxFileName(fName);
+ mFileModified = mFileName.GetModificationTime();
+ ParseFile();
}
-#if defined(USE_NYQUIST) && defined(__WXMSW__) && !defined(__CYGWIN__)
-// Nyquist needs a random function and non-Cygwin MSW doesn't provide one...
-extern "C" {
- long random_seed = 1534781L;
- short random(short lo, short hi)
- {
- random_seed *= 13L;
- random_seed += 1874351L;
- return((short)(lo + (((hi + 1 - lo) * ((0x00ffff00 & random_seed) >> 8)) >> 16)));
- }
+EffectNyquist::~EffectNyquist()
+{
}
-#endif
+void EffectNyquist::Break()
+{
+ mBreak = true;
+}
+
+void EffectNyquist::Continue()
+{
+ mCont = true;
+}
+
+void EffectNyquist::Stop()
+{
+ mStop = true;
+}
#define UNINITIALIZED_CONTROL ((double)99999999.99)
@@ -97,21 +127,21 @@ wxString EffectNyquist::UnQuote(wxString s)
wxString out;
int len = s.Length();
- if (len>=2 && s.GetChar(0)==wxT('\"') && s.GetChar(len-1)==wxT('\"'))
- return s.Mid(1, len-2);
- else
- return s;
+ if (len >= 2 && s[0] == wxT('\"') && s[len - 1] == wxT('\"')) {
+ return s.Mid(1, len - 2);
+ }
+
+ return s;
}
double EffectNyquist::GetCtrlValue(wxString s)
{
if (s == wxT("rate")) {
- TrackListIterator iter(mWaveTracks);
+ TrackListOfKindIterator iter(Track::Wave, mTracks);
return ((WaveTrack *)iter.First())->GetRate();
}
- else {
- return Internat::CompatibleToDouble(s);
- }
+
+ return Internat::CompatibleToDouble(s);
}
void EffectNyquist::Parse(wxString line)
@@ -123,76 +153,114 @@ void EffectNyquist::Parse(wxString line)
bool sl = false;
bool q = false;
wxString tok = wxT("");
- for(i=1; i<len; i++) {
- if (line.GetChar(i)==wxT('\\'))
+
+ for (i = 1; i < len; i++) {
+ wxChar c = line[i];
+
+ if (c == wxT('\\')) {
sl = true;
- else if (line.GetChar(i)==wxT('"'))
+ }
+ else if (c == wxT('"')) {
q = !q;
+ }
else {
- if ((!q && !sl && line.GetChar(i)==wxT(' ')) || line.GetChar(i)==wxT('\t')) {
+ if ((!q && !sl && c == wxT(' ')) || c == wxT('\t')) {
tokens.Add(tok);
tok = wxT("");
}
- else if (sl && line.GetChar(i)==wxT('n'))
+ else if (sl && c == wxT('n')) {
tok += wxT('\n');
- else
- tok += line.GetChar(i);
+ }
+ else {
+ tok += c;
+ }
sl = false;
}
}
- if (tok != wxT(""))
+
+ if (tok != wxT("")) {
tokens.Add(tok);
+ }
len = tokens.GetCount();
- if (len < 1)
+ if (len < 1) {
return;
+ }
- if (len==2 && tokens[0]==wxT("nyquist") && tokens[1]==wxT("plug-in")) {
+ if (len == 2 && tokens[0] == wxT("nyquist") && tokens[1] == wxT("plug-in")) {
mOK = true;
return;
}
- if (len>=2 && tokens[0]==wxT("type")) {
- if (tokens[1]==wxT("process"))
- mFlags = PROCESS_EFFECT | PLUGIN_EFFECT;
- if (tokens[1]==wxT("generate"))
- mFlags = INSERT_EFFECT | PLUGIN_EFFECT;
- if (tokens[1]==wxT("analyze"))
- mFlags = ANALYZE_EFFECT | PLUGIN_EFFECT;
+ if (len >= 2 && tokens[0] == wxT("type")) {
+ if (tokens[1] == wxT("process")) {
+ SetEffectFlags(PROCESS_EFFECT | PLUGIN_EFFECT);
+ }
+ else if (tokens[1] == wxT("generate")) {
+ SetEffectFlags(INSERT_EFFECT | PLUGIN_EFFECT);
+ }
+ else if (tokens[1] == wxT("analyze")) {
+ SetEffectFlags(ANALYZE_EFFECT | PLUGIN_EFFECT);
+ }
+ return;
+ }
+
+ if (len == 2 && tokens[0] == wxT("codetype")) {
+ if (tokens[1] == wxT("lisp")) {
+ mIsSal = false;
+ }
+ else if (tokens[1] == wxT("sal")) {
+ mIsSal = true;
+ }
+ return;
+ }
+
+ if (len >= 2 && tokens[0] == wxT("debugflags")) {
+ for (int i = 1; i < len; i++) {
+ if (tokens[i] == wxT("trace")) {
+ mDebug = true;
+ }
+ else if (tokens[i] == wxT("notrace")) {
+ mDebug = false;
+ }
+ else if (tokens[i] == wxT("compiler")) {
+ mCompiler = true;
+ }
+ else if (tokens[i] == wxT("nocompiler")) {
+ mCompiler = false;
+ }
+ }
return;
}
// We support versions 1, 2 and 3
// (Version 2 added support for string parameters.)
// (Version 3 added support for choice parameters.)
- if (len>=2 && tokens[0]==wxT("version")) {
- if (tokens[1]==wxT("1") || tokens[1]==wxT("2") || tokens[1]==wxT("3")) {
- // We're okay
- }
- else {
+ if (len >= 2 && tokens[0] == wxT("version")) {
+ if (tokens[1] != wxT("1") && tokens[1] != wxT("2") && tokens[1] != wxT("3")) {
// This is an unsupported plug-in version
mOK = false;
return;
}
}
- if (len>=2 && tokens[0]==wxT("name")) {
+ if (len >= 2 && tokens[0] == wxT("name")) {
mName = UnQuote(tokens[1]);
return;
}
- if (len>=2 && tokens[0]==wxT("action")) {
+ if (len >= 2 && tokens[0] == wxT("action")) {
mAction = UnQuote(tokens[1]);
return;
}
- if (len>=2 && tokens[0]==wxT("info")) {
+ if (len >= 2 && tokens[0] == wxT("info")) {
mInfo = UnQuote(tokens[1]);
return;
}
- if (len>=6 && tokens[0]==wxT("control")) {
+ if (len >= 6 && tokens[0] == wxT("control")) {
NyqControl ctrl;
ctrl.var = tokens[1];
@@ -200,18 +268,23 @@ void EffectNyquist::Parse(wxString line)
ctrl.label = tokens[4];
ctrl.valStr = tokens[5];
- if (tokens[3]==wxT("string"))
+ if (tokens[3] == wxT("string")) {
ctrl.type = NYQ_CTRL_STRING;
- else if( tokens[ 3 ] == wxT( "choice" ) )
+ }
+ else if (tokens[ 3 ] == wxT("choice")) {
ctrl.type = NYQ_CTRL_CHOICE;
+ }
else {
- if (len < 8)
+ if (len < 8) {
return;
+ }
- if (tokens[3]==wxT("real"))
+ if (tokens[3] == wxT("real")) {
ctrl.type = NYQ_CTRL_REAL;
- else
+ }
+ else {
ctrl.type = NYQ_CTRL_INT;
+ }
ctrl.lowStr = tokens[6];
ctrl.highStr = tokens[7];
@@ -222,9 +295,10 @@ void EffectNyquist::Parse(wxString line)
mControls.Add(ctrl);
}
- if (len>=2 && tokens[0]==wxT("categories")) {
- for (size_t i = 1; i < tokens.GetCount(); ++i)
- mCategories.insert(tokens[i]);
+ if (len >= 2 && tokens[0] == wxT("categories")) {
+ for (size_t i = 1; i < tokens.GetCount(); ++i) {
+ mCategories.Add(tokens[i]);
+ }
}
}
@@ -235,47 +309,46 @@ void EffectNyquist::ParseFile()
return;
mCmd = wxT("");
- mFlags = PROCESS_EFFECT | PLUGIN_EFFECT;
+ SetEffectFlags(PROCESS_EFFECT | PLUGIN_EFFECT);
mOK = false;
+ mIsSal = false;
mControls.Clear();
int i;
int len = f.GetLineCount();
wxString line;
- for(i=0; i<len; i++) {
+ for (i = 0; i < len; i++) {
line = f[i];
- if (line.Length()>1 && line.GetChar(0)==wxT(';'))
+ if (line.Length() > 1 && line[0] == wxT(';')) {
Parse(line);
- else
+ }
+ else {
mCmd += line + wxT("\n");
+ }
}
}
-EffectNyquist::EffectNyquist(wxString fName)
+void EffectNyquist::SetCommand(wxString cmd)
{
+ mExternal = true;
mInteractive = false;
- mAction = _("Applying Nyquist Effect...");
+ mCmd = wxT("");
+ SetEffectFlags(INSERT_EFFECT | HIDDEN_EFFECT);
+ mOK = false;
+ mIsSal = false;
+ mControls.Clear();
- if (fName == wxT("")) {
- // Interactive Nyquist
- mOK = true;
- mInteractive = true;
- mCmd = wxT("");
- mName = _("Nyquist Prompt...");
- mFlags = PROCESS_EFFECT | BUILTIN_EFFECT | ADVANCED_EFFECT;
- return;
+ wxStringTokenizer lines(cmd, wxT("\n"));
+ while (lines.HasMoreTokens()) {
+ wxString line = lines.GetNextToken();
+
+ if (line.Length() > 1 && line[0] == wxT(';')) {
+ Parse(line);
+ }
+ else {
+ mCmd += line + wxT("\n");
+ }
}
-
- wxLogNull dontLog;
-
- mName = wxFileName(fName).GetName();
- mFileName = wxFileName(fName);
- mFileModified = mFileName.GetModificationTime();
- ParseFile();
-}
-
-EffectNyquist::~EffectNyquist()
-{
}
bool EffectNyquist::SetXlispPath()
@@ -283,8 +356,9 @@ bool EffectNyquist::SetXlispPath()
wxString fname;
fname = mXlispPath + wxFILE_SEP_PATH + wxT("nyinit.lsp");
- if (!(::wxFileExists(fname)))
+ if (!(::wxFileExists(fname))) {
mXlispPath = wxT("");
+ }
if (mXlispPath == wxT("")) {
wxArrayString audacityPathList = wxGetApp().audacityPathList;
@@ -292,25 +366,25 @@ bool EffectNyquist::SetXlispPath()
wxArrayString files;
unsigned int i;
- for(i=0; i<audacityPathList.GetCount(); i++) {
+ for (i = 0; i < audacityPathList.GetCount(); i++) {
wxString prefix = audacityPathList[i] + wxFILE_SEP_PATH;
wxGetApp().AddUniquePathToPathList(prefix + wxT("nyquist"),
pathList);
}
- wxGetApp().FindFilesInPathList(wxT("nyquist.lsp"), pathList, wxFILE, files);
+ wxGetApp().FindFilesInPathList(wxT("nyquist.lsp"), pathList, files);
if (files.GetCount() > 0) {
mXlispPath = ::wxPathOnly(files[0]);
}
}
- #ifdef _UNICODE
- /* set_xlisp_path doesn't handle fn_Str() in Unicode build. May or may not actually work. */
- set_xlisp_path(mXlispPath.mb_str());
- #else // ANSI
- set_xlisp_path(mXlispPath.fn_str());
- #endif // Unicode/ANSI
+#ifdef _UNICODE
+ /* set_xlisp_path doesn't handle fn_Str() in Unicode build. May or may not actually work. */
+ nyx_set_xlisp_path(mXlispPath.mb_str());
+#else // ANSI
+ nyx_set_xlisp_path(mXlispPath.fn_str());
+#endif // Unicode/ANSI
fname = mXlispPath + wxFILE_SEP_PATH + wxT("nyinit.lsp");
return ::wxFileExists(fname);
@@ -318,79 +392,90 @@ bool EffectNyquist::SetXlispPath()
bool EffectNyquist::PromptUser()
{
- if (!SetXlispPath())
+ if (!SetXlispPath()) {
return false;
+ }
if (mInteractive) {
- NyquistInputDialog dlog(mParent, -1,
- _NoAcc("Nyquist Prompt..."),
+ NyquistInputDialog dlog(wxGetTopLevelParent(NULL), -1,
+ _("Nyquist Prompt..."),
_("Enter Nyquist Command: "),
mCmd);
dlog.CentreOnParent();
int result = dlog.ShowModal();
- if (result == wxID_CANCEL)
+ if (result == wxID_CANCEL) {
return false;
+ }
- if (result == eDebugID)
+ if (result == eDebugID) {
mDebug = true;
- else
- mDebug = false;
-
+ }
+
mCmd = dlog.GetCommand();
return true;
}
- if (mFileName.GetModificationTime().IsLaterThan(mFileModified)) {
- ParseFile();
- mFileModified = mFileName.GetModificationTime();
+ if (!mExternal) {
+ if (mFileName.GetModificationTime().IsLaterThan(mFileModified)) {
+ ParseFile();
+ mFileModified = mFileName.GetModificationTime();
+ }
}
if (mControls.GetCount() == 0) {
- mDebug = false;
return true;
}
- for(unsigned int i=0; i<mControls.GetCount(); i++) {
+ for (unsigned int i = 0; i < mControls.GetCount(); i++) {
NyqControl *ctrl = &mControls[i];
- if (ctrl->type == NYQ_CTRL_STRING)
+ if (ctrl->type == NYQ_CTRL_STRING) {
continue;
+ }
- if (ctrl->val == UNINITIALIZED_CONTROL)
+ if (ctrl->val == UNINITIALIZED_CONTROL) {
ctrl->val = GetCtrlValue(ctrl->valStr);
+ }
- if( ctrl->type == NYQ_CTRL_CHOICE )
+ if (ctrl->type == NYQ_CTRL_CHOICE) {
continue;
+ }
ctrl->low = GetCtrlValue(ctrl->lowStr);
ctrl->high = GetCtrlValue(ctrl->highStr);
- if (ctrl->high < ctrl->low)
+ if (ctrl->high < ctrl->low) {
ctrl->high = ctrl->low + 1;
- if (ctrl->val < ctrl->low)
+ }
+
+ if (ctrl->val < ctrl->low) {
ctrl->val = ctrl->low;
- if (ctrl->val > ctrl->high)
+ }
+
+ if (ctrl->val > ctrl->high) {
ctrl->val = ctrl->high;
+ }
ctrl->ticks = 1000;
- if (ctrl->type==NYQ_CTRL_INT &&
- (ctrl->high - ctrl->low < ctrl->ticks))
+ if (ctrl->type == NYQ_CTRL_INT &&
+ (ctrl->high - ctrl->low < ctrl->ticks)) {
ctrl->ticks = (int)(ctrl->high - ctrl->low);
+ }
}
NyquistDialog dlog(mParent, -1, mName, mInfo, &mControls);
dlog.CentreOnParent();
int result = dlog.ShowModal();
- if (result == wxID_CANCEL)
+ if (result == wxID_CANCEL) {
return false;
+ }
- if (result == eDebugID)
+ if (result == eDebugID) {
mDebug = true;
- else
- mDebug = false;
+ }
return true;
}
@@ -398,18 +483,27 @@ bool EffectNyquist::PromptUser()
bool EffectNyquist::Process()
{
bool success = true;
-
- this->CopyInputWaveTracks(); // Set up mOutputWaveTracks.
- TrackListIterator iter(mOutputWaveTracks);
+
+ if (mExternal) {
+ mProgress->Hide();
+ }
+
+ this->CopyInputTracks(); // Set up mOutputTracks.
+ TrackListIterator iter(mOutputTracks);
mCurTrack[0] = (WaveTrack *) iter.First();
mOutputTime = mT1 - mT0;
mCount = 0;
mProgressIn = 0;
mProgressOut = 0;
mProgressTot = 0;
- mScale = (mFlags & PROCESS_EFFECT ? 0.5 : 1.0) / GetNumWaveGroups();
+ mScale = (GetEffectFlags() & PROCESS_EFFECT ? 0.5 : 1.0) / GetNumWaveGroups();
+
+ mStop = false;
+ mBreak = false;
+ mCont = false;
+
+ mDebugOutput = "";
- mDebugOutput = wxT("");
while (mCurTrack[0]) {
mCurNumChannels = 1;
if (mT1 >= mT0) {
@@ -433,9 +527,20 @@ bool EffectNyquist::Process()
mProgressIn = 0.0;
mProgressOut = 0.0;
+
+ nyx_init();
+ nyx_set_os_callback(StaticOSCallback, (void *)this);
+ nyx_capture_output(StaticOutputCallback, (void *)this);
+
success = ProcessOne();
- if (!success)
+
+ nyx_capture_output(NULL, (void *)NULL);
+ nyx_set_os_callback(NULL, (void *)NULL);
+ nyx_cleanup();
+
+ if (!success) {
goto finish;
+ }
mProgressTot += mProgressIn + mProgressOut;
}
@@ -447,167 +552,102 @@ bool EffectNyquist::Process()
finish:
- if (mDebug) {
+ if (mDebug && !mExternal) {
NyquistOutputDialog dlog(mParent, -1,
_("Nyquist"),
_("Nyquist Output: "),
- mDebugOutput);
+ wxString(mDebugOutput.c_str(), wxConvISO8859_1));
dlog.CentreOnParent();
dlog.ShowModal();
}
- this->ReplaceProcessedWaveTracks(success);
- return success;
-}
-
-
-int EffectNyquist::GetCallback(float *buffer, int ch,
- long start, long len, long totlen)
-{
- if (mCurBuffer[ch]) {
- if ((mCurStart[ch] + start) < mCurBufferStart[ch] ||
- (mCurStart[ch] + start)+len >
- mCurBufferStart[ch]+mCurBufferLen[ch]) {
- delete[] mCurBuffer[ch];
- mCurBuffer[ch] = NULL;
- }
- }
-
- if (!mCurBuffer[ch]) {
- mCurBufferStart[ch] = (mCurStart[ch] + start);
- mCurBufferLen[ch] = mCurTrack[ch]->GetBestBlockSize(mCurBufferStart[ch]);
- if (mCurBufferLen[ch] < len)
- mCurBufferLen[ch] = mCurTrack[ch]->GetIdealBlockSize();
- if (mCurBufferStart[ch] + mCurBufferLen[ch] > mCurStart[ch] + mCurLen)
- mCurBufferLen[ch] = mCurStart[ch] + mCurLen - mCurBufferStart[ch];
- mCurBuffer[ch] = NewSamples(mCurBufferLen[ch], floatSample);
- if (!mCurTrack[ch]->Get(mCurBuffer[ch], floatSample,
- mCurBufferStart[ch], mCurBufferLen[ch])) {
-
- wxPrintf(wxT("GET error\n"));
-
- return -1;
- }
- }
-
- long offset = (mCurStart[ch] + start) - mCurBufferStart[ch];
- CopySamples(mCurBuffer[ch] + offset*SAMPLE_SIZE(floatSample), floatSample,
- (samplePtr)buffer, floatSample,
- len);
-
- if (ch==0) {
- double progress = mScale*(((float)start+len)/mCurLen);
- if (progress > mProgressIn)
- mProgressIn = progress;
- if (TotalProgress(mProgressIn+mProgressTot))
- return -1;
- }
-
- return 0;
-}
-
-int EffectNyquist::PutCallback(float *buffer, int channel,
- long start, long len, long totlen)
-{
- if (channel==0) {
- double progress = mScale*((float)(start+len)/totlen);
- if (progress > mProgressOut)
- mProgressOut = progress;
- if (TotalProgress(mProgressIn+mProgressOut+mProgressTot))
- return -1;
- }
-
- if (mOutputTrack[channel]->Append((samplePtr)buffer, floatSample, len))
- return 0; // success
- else
- return -1; // failure
-}
+ this->ReplaceProcessedTracks(success);
-int EffectNyquist::StaticGetCallback(float *buffer, int channel,
- long start, long len, long totlen,
- void *userdata)
-{
- EffectNyquist *This = (EffectNyquist *)userdata;
- return This->GetCallback(buffer, channel, start, len, totlen);
-}
+ mDebug = false;
-int EffectNyquist::StaticPutCallback(float *buffer, int channel,
- long start, long len, long totlen,
- void *userdata)
-{
- EffectNyquist *This = (EffectNyquist *)userdata;
- return This->PutCallback(buffer, channel, start, len, totlen);
+ return success;
}
bool EffectNyquist::ProcessOne()
{
- // libnyquist breaks except in LC_NUMERIC=="C".
- //
- // MB: setlocale is not thread-safe. Should use uselocale()
- // if available, or fix libnyquist to be locale-independent.
- setlocale(LC_NUMERIC, "C");
-
nyx_rval rval;
- nyx_init();
-
- if (mDebug)
- nyx_capture_output(65536);
+ if (GetEffectFlags() & INSERT_EFFECT) {
+ nyx_set_audio_params(mCurTrack[0]->GetRate(), 0);
+ }
+ else {
+ nyx_set_audio_params(mCurTrack[0]->GetRate(), mCurLen);
- if( !( mFlags & INSERT_EFFECT ) )
nyx_set_input_audio(StaticGetCallback, (void *)this,
mCurNumChannels,
mCurLen, mCurTrack[0]->GetRate());
- else
- nyx_set_audio_params( mCurTrack[0]->GetRate() );
+ }
wxString cmd;
if (mDebug) {
- cmd = cmd + wxT("(setf *tracenable* T)\n");
+ cmd += wxT("(setf *tracenable* T)\n");
+ if (mExternal) {
+ cmd += wxT("(setf *breakenable* T)\n");
+ }
}
- for(unsigned int j=0; j<mControls.GetCount(); j++) {
- if (mControls[j].type==NYQ_CTRL_REAL)
- cmd = cmd+wxString::Format(wxT("(setf %s %f)\n"),
- mControls[j].var.c_str(),
- mControls[j].val);
- else if (mControls[j].type==NYQ_CTRL_INT ||
- mControls[j].type == NYQ_CTRL_CHOICE)
- cmd = cmd+wxString::Format(wxT("(setf %s %d)\n"),
- mControls[j].var.c_str(),
- (int)(mControls[j].val));
- else if (mControls[j].type==NYQ_CTRL_STRING) {
+ for (unsigned int j = 0; j < mControls.GetCount(); j++) {
+ if (mControls[j].type == NYQ_CTRL_REAL) {
+ cmd += wxString::Format(wxT("(setf %s %f)\n"),
+ mControls[j].var.c_str(),
+ mControls[j].val);
+ }
+ else if (mControls[j].type == NYQ_CTRL_INT ||
+ mControls[j].type == NYQ_CTRL_CHOICE) {
+ cmd += wxString::Format(wxT("(setf %s %d)\n"),
+ mControls[j].var.c_str(),
+ (int)(mControls[j].val));
+ }
+ else if (mControls[j].type == NYQ_CTRL_STRING) {
wxString str = mControls[j].valStr;
str.Replace(wxT("\""), wxT("'"));
- cmd = cmd+wxString::Format(wxT("(setf %s \"%s\")\n"),
- mControls[j].var.c_str(),
- str.c_str());
+ cmd += wxString::Format(wxT("(setf %s \"%s\")\n"),
+ mControls[j].var.c_str(),
+ str.c_str());
}
}
-
- cmd += mCmd;
-
- //wxMessageBox(cmd);
-
+
+ if (mIsSal) {
+ wxString str = mCmd;
+ str.Replace(wxT("\""), wxT("\\\""));
+
+ if (mCompiler) {
+ cmd += wxT("(setf *sal-compiler-debug* t)\n");
+ }
+
+ cmd += wxT("(setf *sal-call-stack* nil)\n");
+ cmd += wxT("(sal-compile \"\n") + str + wxT("\n\" t t nil)\n");
+ cmd += wxT("(main)\n");
+ }
+ else {
+ cmd += mCmd;
+ }
+
int i;
- for (i = 0; i < mCurNumChannels; i++)
+ for (i = 0; i < mCurNumChannels; i++) {
mCurBuffer[i] = NULL;
- rval = nyx_eval_expression(cmd.mb_str());
+ }
- if (mDebug) {
- int len;
- const char *str;
+ // libnyquist breaks except in LC_NUMERIC=="C".
+ //
+ // MB: setlocale is not thread-safe. Should use uselocale()
+ // if available, or fix libnyquist to be locale-independent.
+ char *prevlocale = setlocale(LC_NUMERIC, NULL);
+ setlocale(LC_NUMERIC, "C");
- nyx_get_captured_output(&len, &str);
- mDebugOutput += wxString(str, wxConvISO8859_1, len);
- }
+ rval = nyx_eval_expression(cmd.mb_str());
+
+ setlocale(LC_NUMERIC, prevlocale);
if (rval == nyx_string) {
wxMessageBox(wxString(nyx_get_string(), wxConvISO8859_1), wxT("Nyquist"),
wxOK | wxCENTRE, mParent);
- nyx_cleanup();
- setlocale(LC_NUMERIC, "");
return true;
}
@@ -617,8 +657,6 @@ bool EffectNyquist::ProcessOne()
nyx_get_double());
wxMessageBox(str, wxT("Nyquist"),
wxOK | wxCENTRE, mParent);
- nyx_cleanup();
- setlocale(LC_NUMERIC, "");
return true;
}
@@ -628,22 +666,20 @@ bool EffectNyquist::ProcessOne()
nyx_get_int());
wxMessageBox(str, wxT("Nyquist"),
wxOK | wxCENTRE, mParent);
- nyx_cleanup();
- setlocale(LC_NUMERIC, "");
return true;
}
if (rval == nyx_labels) {
- int numLabels = nyx_get_num_labels();
- int l;
+ unsigned int numLabels = nyx_get_num_labels();
+ unsigned int l;
LabelTrack *ltrack = NULL;
TrackListIterator iter(mTracks);
- Track *t = iter.First();
- while(t && !ltrack) {
- if (t->GetKind() == Track::Label)
+ for (Track *t = iter.First(); t; t = iter.Next()) {
+ if (t->GetKind() == Track::Label) {
ltrack = (LabelTrack *)t;
- t = iter.Next();
+ break;
+ }
}
if (!ltrack) {
@@ -651,7 +687,7 @@ bool EffectNyquist::ProcessOne()
mTracks->Add((Track *)ltrack);
}
- for(l=0; l<numLabels; l++) {
+ for (l = 0; l < numLabels; l++) {
double t0, t1;
const char *str;
@@ -659,17 +695,12 @@ bool EffectNyquist::ProcessOne()
ltrack->AddLabel(t0 + mT0, t1 + mT0, LAT1CTOWX(str));
}
-
- nyx_cleanup();
- setlocale(LC_NUMERIC, "");
return true;
}
if (rval != nyx_audio) {
wxMessageBox(_("Nyquist did not return audio.\n"), wxT("Nyquist"),
wxOK | wxCENTRE, mParent);
- nyx_cleanup();
- setlocale(LC_NUMERIC, "");
return false;
}
@@ -680,17 +711,16 @@ bool EffectNyquist::ProcessOne()
wxMessageBox(_("Nyquist returned too many audio channels.\n"),
wxT("Nyquist"),
wxOK | wxCENTRE, mParent);
- nyx_cleanup();
- setlocale(LC_NUMERIC, "");
return false;
}
double rate = mCurTrack[0]->GetRate();
- for(i=0; i<outChannels; i++) {
+ for (i = 0; i < outChannels; i++) {
sampleFormat format = mCurTrack[i]->GetSampleFormat();
- if (outChannels == mCurNumChannels)
+ if (outChannels == mCurNumChannels) {
rate = mCurTrack[i]->GetRate();
+ }
mOutputTrack[i] = mFactory->NewWaveTrack(format, rate);
mCurBuffer[i] = NULL;
@@ -699,48 +729,172 @@ bool EffectNyquist::ProcessOne()
int success = nyx_get_audio(StaticPutCallback, (void *)this);
if (!success) {
- for(i=0; i<outChannels; i++) {
+ for(i = 0; i < outChannels; i++) {
delete mOutputTrack[i];
mOutputTrack[i] = NULL;
}
-
- nyx_cleanup();
- setlocale(LC_NUMERIC, "");
return false;
}
- for(i=0; i<outChannels; i++) {
+ for (i = 0; i < outChannels; i++) {
mOutputTrack[i]->Flush();
- if (mCurBuffer[i])
+ if (mCurBuffer[i]) {
DeleteSamples(mCurBuffer[i]);
+ }
mOutputTime = mOutputTrack[i]->GetEndTime();
}
- for(i=0; i<mCurNumChannels; i++) {
+ for (i = 0; i < mCurNumChannels; i++) {
WaveTrack *out;
- if (outChannels == mCurNumChannels)
+ if (outChannels == mCurNumChannels) {
out = mOutputTrack[i];
- else
+ }
+ else {
out = mOutputTrack[0];
+ }
- mCurTrack[i]->HandleClear(mT0, mT1, false, false);
- mCurTrack[i]->HandlePaste(mT0, out);
+ mCurTrack[i]->ClearAndPaste(mT0, mT1, out);
}
- for(i=0; i<outChannels; i++) {
+ for (i = 0; i < outChannels; i++) {
delete mOutputTrack[i];
mOutputTrack[i] = NULL;
}
- nyx_cleanup();
-
- // Reset locale
- setlocale(LC_NUMERIC, "");
-
return true;
}
+int EffectNyquist::StaticGetCallback(float *buffer, int channel,
+ long start, long len, long totlen,
+ void *userdata)
+{
+ EffectNyquist *This = (EffectNyquist *)userdata;
+ return This->GetCallback(buffer, channel, start, len, totlen);
+}
+
+int EffectNyquist::GetCallback(float *buffer, int ch,
+ long start, long len, long totlen)
+{
+ if (mCurBuffer[ch]) {
+ if ((mCurStart[ch] + start) < mCurBufferStart[ch] ||
+ (mCurStart[ch] + start)+len >
+ mCurBufferStart[ch]+mCurBufferLen[ch]) {
+ delete[] mCurBuffer[ch];
+ mCurBuffer[ch] = NULL;
+ }
+ }
+
+ if (!mCurBuffer[ch]) {
+ mCurBufferStart[ch] = (mCurStart[ch] + start);
+ mCurBufferLen[ch] = mCurTrack[ch]->GetBestBlockSize(mCurBufferStart[ch]);
+
+ if (mCurBufferLen[ch] < len) {
+ mCurBufferLen[ch] = mCurTrack[ch]->GetIdealBlockSize();
+ }
+
+ if (mCurBufferStart[ch] + mCurBufferLen[ch] > mCurStart[ch] + mCurLen) {
+ mCurBufferLen[ch] = mCurStart[ch] + mCurLen - mCurBufferStart[ch];
+ }
+
+ mCurBuffer[ch] = NewSamples(mCurBufferLen[ch], floatSample);
+ if (!mCurTrack[ch]->Get(mCurBuffer[ch], floatSample,
+ mCurBufferStart[ch], mCurBufferLen[ch])) {
+
+ wxPrintf(wxT("GET error\n"));
+
+ return -1;
+ }
+ }
+
+ long offset = (mCurStart[ch] + start) - mCurBufferStart[ch];
+ CopySamples(mCurBuffer[ch] + offset*SAMPLE_SIZE(floatSample), floatSample,
+ (samplePtr)buffer, floatSample,
+ len);
+
+ if (ch == 0) {
+ double progress = mScale*(((float)start+len)/mCurLen);
+
+ if (progress > mProgressIn) {
+ mProgressIn = progress;
+ }
+
+ if (TotalProgress(mProgressIn+mProgressTot)) {
+ return -1;
+ }
+ }
+
+ return 0;
+}
+
+int EffectNyquist::StaticPutCallback(float *buffer, int channel,
+ long start, long len, long totlen,
+ void *userdata)
+{
+ EffectNyquist *This = (EffectNyquist *)userdata;
+ return This->PutCallback(buffer, channel, start, len, totlen);
+}
+
+int EffectNyquist::PutCallback(float *buffer, int channel,
+ long start, long len, long totlen)
+{
+ if (channel == 0) {
+ double progress = mScale*((float)(start+len)/totlen);
+
+ if (progress > mProgressOut) {
+ mProgressOut = progress;
+ }
+
+ if (TotalProgress(mProgressIn+mProgressOut+mProgressTot)) {
+ return -1;
+ }
+ }
+
+ if (mOutputTrack[channel]->Append((samplePtr)buffer, floatSample, len)) {
+ return 0; // success
+ }
+
+ return -1; // failure
+}
+
+void EffectNyquist::StaticOutputCallback(int c, void *This)
+{
+ ((EffectNyquist *)This)->OutputCallback(c);
+}
+
+void EffectNyquist::OutputCallback(int c)
+{
+ if (mDebug && !mExternal) {
+ mDebugOutput += (char)c;
+ return;
+ }
+
+ std::cout << (char)c;
+}
+
+void EffectNyquist::StaticOSCallback(void *This)
+{
+ ((EffectNyquist *)This)->OSCallback();
+}
+
+void EffectNyquist::OSCallback()
+{
+ if (mStop) {
+ mStop = false;
+ nyx_stop();
+ }
+ else if (mBreak) {
+ mBreak = false;
+ nyx_break();
+ }
+ else if (mCont) {
+ mCont = false;
+ nyx_continue();
+ }
+
+ wxYieldIfNeeded();
+}
+
/**********************************************************/
#define ID_NYQ_SLIDER 2000
@@ -778,13 +932,12 @@ NyquistDialog::NyquistDialog(wxWindow * parent, wxWindowID id,
wxFlexGridSizer *grid = new wxFlexGridSizer(4, 0, 0);
- for(unsigned int i=0; i<mControls->GetCount(); i++) {
+ for (size_t i = 0; i < mControls->GetCount(); i++) {
wxControl *item;
NyqControl *ctrl = &((*mControls)[i]);
item = new wxStaticText(this, -1, ctrl->name + wxT(":"));
- grid->Add(item, 0, wxALIGN_RIGHT |
- wxALIGN_CENTER_VERTICAL | wxALL, 5);
+ grid->Add(item, 0, wxALIGN_RIGHT | wxALIGN_CENTER_VERTICAL | wxALL, 5);
if (ctrl->type == NYQ_CTRL_STRING) {
grid->Add(10, 10);
@@ -792,76 +945,70 @@ NyquistDialog::NyquistDialog(wxWindow * parent, wxWindowID id,
item = new wxTextCtrl(this, ID_NYQ_TEXT+i, ctrl->valStr,
wxDefaultPosition, wxSize(150, -1));
item->SetName(ctrl->name);
- grid->Add(item, 0, wxALIGN_CENTRE |
- wxALIGN_CENTER_VERTICAL | wxALL, 5);
+ grid->Add(item, 0, wxALIGN_CENTRE | wxALIGN_CENTER_VERTICAL | wxALL, 5);
}
- else if( ctrl->type == NYQ_CTRL_CHOICE )
- {
+ else if (ctrl->type == NYQ_CTRL_CHOICE) {
//str is coma separated labels for each choice
wxString str = ctrl->label;
wxArrayString choices;
- while( 1 )
- {
+ while (1) {
int ci = str.Find( ',' ); //coma index
-
- if( ci == -1 )
- {
+
+ if (ci == -1) {
choices.Add( str );
break;
}
- else
- choices.Add( str.Left( ci ) );
+ else {
+ choices.Add(str.Left(ci));
+ }
- str = str.Right( str.length() - ci - 1 );
+ str = str.Right(str.length() - ci - 1);
}
- wxChoice *choice = new wxChoice( this, ID_NYQ_CHOICE + i,
- wxDefaultPosition, wxSize( 150, -1 ), choices );
+ wxChoice *choice = new wxChoice(this, ID_NYQ_CHOICE + i,
+ wxDefaultPosition, wxSize(150, -1), choices);
choice->SetName(ctrl->name);
- int val = ( int )ctrl->val;
- if( val >= 0 && val < (int)choice->GetCount() )
- choice->SetSelection( val );
+ int val = (int)ctrl->val;
+ if (val >= 0 && val < (int)choice->GetCount()) {
+ choice->SetSelection(val);
+ }
- grid->Add( 10, 10 );
- grid->Add( choice, 0, wxALIGN_CENTRE |
- wxALIGN_CENTER_VERTICAL | wxALL, 5 );
+ grid->Add(10, 10);
+ grid->Add(choice, 0, wxALIGN_CENTRE | wxALIGN_CENTER_VERTICAL | wxALL, 5);
}
else {
// Integer or Real
- int val = (int)(0.5 + ctrl->ticks * (ctrl->val - ctrl->low)/
+ int val = (int)(0.5 + ctrl->ticks * (ctrl->val - ctrl->low) /
(ctrl->high - ctrl->low));
item = new wxTextCtrl(this, ID_NYQ_TEXT+i, wxT(""),
wxDefaultPosition, wxSize(60, -1));
item->SetName(ctrl->name);
- grid->Add(item, 0, wxALIGN_CENTRE |
- wxALIGN_CENTER_VERTICAL | wxALL, 5);
+ grid->Add(item, 0, wxALIGN_CENTRE | wxALIGN_CENTER_VERTICAL | wxALL, 5);
item = new wxSlider(this, ID_NYQ_SLIDER+i, val, 0, ctrl->ticks,
wxDefaultPosition, wxSize(150, -1));
item->SetName(ctrl->name);
- grid->Add(item, 0, wxALIGN_CENTRE |
- wxALIGN_CENTER_VERTICAL | wxALL, 5);
+ grid->Add(item, 0, wxALIGN_CENTRE | wxALIGN_CENTER_VERTICAL | wxALL, 5);
}
- if( ctrl->type == NYQ_CTRL_CHOICE )
- {
+ if (ctrl->type == NYQ_CTRL_CHOICE) {
grid->Add( 10, 10 );
}
- else
- {
+ else {
item = new wxStaticText(this, -1, ctrl->label);
- grid->Add(item, 0, wxALIGN_LEFT |
- wxALIGN_CENTER_VERTICAL | wxALL, 5);
+ grid->Add(item, 0, wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL | wxALL, 5);
}
}
mainSizer->Add(grid, 0, wxALIGN_CENTRE | wxALL, 5);
- mainSizer->Add(CreateStdButtonSizer(this, eDebugButton|eCancelButton|eOkButton), 0, wxEXPAND);
+ mainSizer->Add(CreateStdButtonSizer(this, eDebugButton | eCancelButton | eOkButton),
+ 0,
+ wxEXPAND);
mInHandler = false;
@@ -876,15 +1023,18 @@ NyquistDialog::NyquistDialog(wxWindow * parent, wxWindowID id,
void NyquistDialog::OnSlider(wxCommandEvent & /* event */)
{
- if (mInHandler)
+ if (mInHandler) {
return; // prevent recursing forever
+ }
+
mInHandler = true;
- for(unsigned int i=0; i<mControls->GetCount(); i++) {
+ for (size_t i = 0; i < mControls->GetCount(); i++) {
NyqControl *ctrl = &((*mControls)[i]);
- if (ctrl->type == NYQ_CTRL_STRING || ctrl->type == NYQ_CTRL_CHOICE )
+ if (ctrl->type == NYQ_CTRL_STRING || ctrl->type == NYQ_CTRL_CHOICE) {
continue;
+ }
wxSlider *slider = (wxSlider *)FindWindow(ID_NYQ_SLIDER + i);
wxTextCtrl *text = (wxTextCtrl *)FindWindow(ID_NYQ_TEXT + i);
@@ -896,20 +1046,26 @@ void NyquistDialog::OnSlider(wxCommandEvent & /* event */)
wxString valStr;
if (ctrl->type == NYQ_CTRL_REAL) {
- if (ctrl->high - ctrl->low < 1)
+ if (ctrl->high - ctrl->low < 1) {
valStr = Internat::ToDisplayString(ctrl->val, 3);
- else if (ctrl->high - ctrl->low < 10)
+ }
+ else if (ctrl->high - ctrl->low < 10) {
valStr = Internat::ToDisplayString(ctrl->val, 2);
- else if (ctrl->high - ctrl->low < 100)
+ }
+ else if (ctrl->high - ctrl->low < 100) {
valStr = Internat::ToDisplayString(ctrl->val, 1);
- else
+ }
+ else {
valStr.Printf(wxT("%d"), (int)floor(ctrl->val + 0.5));
+ }
}
- else if (ctrl->type == NYQ_CTRL_INT)
+ else if (ctrl->type == NYQ_CTRL_INT) {
valStr.Printf(wxT("%d"), (int)floor(ctrl->val + 0.5));
+ }
- if (valStr != wxT(""))
+ if (valStr != wxT("")) {
text->SetValue(valStr);
+ }
}
mInHandler = false;
@@ -917,16 +1073,17 @@ void NyquistDialog::OnSlider(wxCommandEvent & /* event */)
void NyquistDialog::OnChoice( wxCommandEvent &event )
{
- if( mInHandler )
+ if (mInHandler) {
return; // prevent recursing forever
+ }
mInHandler = true;
unsigned int ctrlId = event.GetId() - ID_NYQ_CHOICE;
- wxASSERT( ctrlId >= 0 && ctrlId < mControls->GetCount() );
+ wxASSERT(ctrlId >= 0 && ctrlId < mControls->GetCount());
- NyqControl *ctrl = &( mControls->Item( ctrlId ) );
- wxChoice *choice = ( wxChoice * )FindWindow( ID_NYQ_CHOICE + ctrlId );
- wxASSERT( choice );
+ NyqControl *ctrl = &(mControls->Item(ctrlId));
+ wxChoice *choice = (wxChoice *)FindWindow(ID_NYQ_CHOICE + ctrlId);
+ wxASSERT(choice);
ctrl->val = choice->GetSelection();
@@ -935,32 +1092,35 @@ void NyquistDialog::OnChoice( wxCommandEvent &event )
void NyquistDialog::OnText(wxCommandEvent &event)
{
- if (mInHandler)
+ if (mInHandler) {
return; // prevent recursing forever
+ }
+
mInHandler = true;
unsigned int ctrlId = event.GetId() - ID_NYQ_TEXT;
- wxASSERT( ctrlId >= 0 && ctrlId < mControls->GetCount() );
+ wxASSERT(ctrlId >= 0 && ctrlId < mControls->GetCount());
- NyqControl *ctrl = &((*mControls)[ ctrlId ]);
+ NyqControl *ctrl = &((*mControls)[ctrlId]);
wxTextCtrl *text = (wxTextCtrl *)FindWindow(ID_NYQ_TEXT + ctrlId);
wxASSERT(text);
ctrl->valStr = text->GetValue();
- if( ctrl->type != NYQ_CTRL_STRING )
- {
+ if (ctrl->type != NYQ_CTRL_STRING) {
wxSlider *slider = (wxSlider *)FindWindow(ID_NYQ_SLIDER + ctrlId);
wxASSERT(slider);
- if (ctrl->valStr.ToDouble(&ctrl->val))
- {
+ if (ctrl->valStr.ToDouble(&ctrl->val)) {
int pos = (int)floor((ctrl->val - ctrl->low) /
(ctrl->high - ctrl->low) * ctrl->ticks + 0.5);
- if (pos < 0)
+ if (pos < 0) {
pos = 0;
- if (pos > ctrl->ticks)
+ }
+ else if (pos > ctrl->ticks) {
pos = ctrl->ticks;
+ }
+
slider->SetValue(pos);
}
}
@@ -999,14 +1159,13 @@ NyquistInputDialog::NyquistInputDialog(wxWindow * parent, wxWindowID id,
const wxString & title,
const wxString & prompt,
wxString initialCommand)
- :wxDialog(parent, id, title)
+: wxDialog(parent, id, title)
{
wxBoxSizer *mainSizer = new wxBoxSizer(wxVERTICAL);
wxControl *item;
item = new wxStaticText(this, -1, prompt);
- mainSizer->Add(item, 0, wxALIGN_LEFT |
- wxLEFT | wxTOP | wxRIGHT, 10);
+ mainSizer->Add(item, 0, wxALIGN_LEFT | wxLEFT | wxTOP | wxRIGHT, 10);
mCommandText = new wxTextCtrl(this, -1, initialCommand,
wxDefaultPosition, wxSize(400, 200),
@@ -1058,7 +1217,7 @@ NyquistOutputDialog::NyquistOutputDialog(wxWindow * parent, wxWindowID id,
const wxString & title,
const wxString & prompt,
wxString message)
- :wxDialog(parent, id, title)
+: wxDialog(parent, id, title)
{
wxBoxSizer *mainSizer = new wxBoxSizer(wxVERTICAL);
wxBoxSizer *hSizer;
@@ -1066,8 +1225,7 @@ NyquistOutputDialog::NyquistOutputDialog(wxWindow * parent, wxWindowID id,
wxControl *item;
item = new wxStaticText(this, -1, prompt);
- mainSizer->Add(item, 0, wxALIGN_LEFT |
- wxLEFT | wxTOP | wxRIGHT, 10);
+ mainSizer->Add(item, 0, wxALIGN_LEFT | wxLEFT | wxTOP | wxRIGHT, 10);
item = new wxTextCtrl(this, -1, message,
wxDefaultPosition, wxSize(400, 200),
@@ -1080,8 +1238,7 @@ NyquistOutputDialog::NyquistOutputDialog(wxWindow * parent, wxWindowID id,
button->SetDefault();
hSizer->Add(button, 0, wxALIGN_CENTRE | wxALL, 5);
- mainSizer->Add(hSizer, 0, wxALIGN_CENTRE |
- wxLEFT | wxBOTTOM | wxRIGHT, 5);
+ mainSizer->Add(hSizer, 0, wxALIGN_CENTRE | wxLEFT | wxBOTTOM | wxRIGHT, 5);
SetAutoLayout(true);
SetSizer(mainSizer);
diff --git a/src/effects/nyquist/Nyquist.h b/src/effects/nyquist/Nyquist.h
index 33ab20f..efa971d 100644
--- a/src/effects/nyquist/Nyquist.h
+++ b/src/effects/nyquist/Nyquist.h
@@ -26,9 +26,10 @@
#include "nyx.h"
-class WaveTrack;
+#include <string>
-class NyqControl {
+class NyqControl
+{
public:
wxString var;
wxString name;
@@ -42,12 +43,16 @@ class NyqControl {
double high;
int ticks;
};
+#define NYQ_CTRL_INT 0
+#define NYQ_CTRL_REAL 1
+#define NYQ_CTRL_STRING 2
+#define NYQ_CTRL_CHOICE 3
-WX_DECLARE_OBJARRAY(NyqControl, NyqControlArray);
+WX_DECLARE_USER_EXPORTED_OBJARRAY(NyqControl, NyqControlArray, AUDACITY_DLL_API);
-class EffectNyquist: public Effect {
-
-public:
+class AUDACITY_DLL_API EffectNyquist:public Effect
+{
+ public:
EffectNyquist(wxString fname);
virtual ~EffectNyquist();
@@ -58,12 +63,23 @@ public:
return mOK;
}
+ void Continue();
+ void Break();
+ void Stop();
+
+ void SetCommand(wxString cmd);
+ wxString GetOutput();
+
virtual wxString GetEffectName() {
return mName;
}
virtual std::set<wxString> GetEffectCategories() {
- return mCategories;
+ std::set<wxString> cats;
+ for (size_t i = 0; i < mCategories.GetCount(); i++) {
+ cats.insert(mCategories[i]);
+ }
+ return cats;
}
virtual wxString GetEffectIdentifier() {
@@ -92,13 +108,10 @@ public:
virtual bool PromptUser();
virtual bool Process();
-
-private:
-
- int GetCallback(float *buffer, int channel,
- long start, long len, long totlen);
- int PutCallback(float *buffer, int channel,
- long start, long len, long totlen);
+
+ private:
+
+ bool ProcessOne();
static int StaticGetCallback(float *buffer, int channel,
long start, long len, long totlen,
@@ -106,52 +119,68 @@ private:
static int StaticPutCallback(float *buffer, int channel,
long start, long len, long totlen,
void *userdata);
+ static void StaticOutputCallback(int c, void *userdata);
+ static void StaticOSCallback(void *userdata);
- bool ProcessOne();
-
- void Parse(wxString line);
- void ParseFile();
- wxString UnQuote(wxString s);
- double GetCtrlValue(wxString s);
-
- static wxString mXlispPath;
-
- wxFileName mFileName;
- wxDateTime mFileModified;
-
- bool mInteractive;
- bool mOK;
- wxString mCmd;
- wxString mName;
- wxString mAction;
- wxString mInfo;
- bool mDebug;
- wxString mDebugOutput;
-
- NyqControlArray mControls;
-
- int mCurNumChannels;
- WaveTrack *mCurTrack[2];
- sampleCount mCurStart[2];
- sampleCount mCurLen;
- double mOutputTime;
- int mCount;
- double mProgressIn;
- double mProgressOut;
- double mProgressTot;
- double mScale;
-
- samplePtr mCurBuffer[2];
- sampleCount mCurBufferStart[2];
- sampleCount mCurBufferLen[2];
-
- WaveTrack *mOutputTrack[2];
-
- std::set<wxString> mCategories;
-
+ int GetCallback(float *buffer, int channel,
+ long start, long len, long totlen);
+ int PutCallback(float *buffer, int channel,
+ long start, long len, long totlen);
+ void OutputCallback(int c);
+ void OSCallback();
+
+ void Parse(wxString line);
+ void ParseFile();
+ wxString UnQuote(wxString s);
+ double GetCtrlValue(wxString s);
+
+ private:
+
+ wxString mXlispPath;
+
+ wxFileName mFileName;
+ wxDateTime mFileModified;
+
+ bool mStop;
+ bool mBreak;
+ bool mCont;
+
+ bool mCompiler;
+ bool mIsSal;
+ bool mExternal;
+ bool mInteractive;
+ bool mOK;
+ wxString mCmd;
+ wxString mName;
+ wxString mAction;
+ wxString mInfo;
+ bool mDebug;
+ std::string mDebugOutput;
+
+ NyqControlArray mControls;
+
+ int mCurNumChannels;
+ WaveTrack *mCurTrack[2];
+ sampleCount mCurStart[2];
+ sampleCount mCurLen;
+ double mOutputTime;
+ int mCount;
+ double mProgressIn;
+ double mProgressOut;
+ double mProgressTot;
+ double mScale;
+
+ samplePtr mCurBuffer[2];
+ sampleCount mCurBufferStart[2];
+ sampleCount mCurBufferLen[2];
+
+ WaveTrack *mOutputTrack[2];
+
+ wxArrayString mCategories;
};
-class NyquistDialog:public wxDialog {
+class NyquistDialog:public wxDialog
+{
public:
// constructors and destructors
NyquistDialog(wxWindow * parent, wxWindowID id,
@@ -175,7 +204,8 @@ class NyquistDialog:public wxDialog {
};
-class NyquistInputDialog:public wxDialog {
+class NyquistInputDialog:public wxDialog
+{
public:
NyquistInputDialog(wxWindow * parent, wxWindowID id,
const wxString & title,
@@ -195,7 +225,8 @@ class NyquistInputDialog:public wxDialog {
DECLARE_EVENT_TABLE()
};
-class NyquistOutputDialog:public wxDialog {
+class NyquistOutputDialog:public wxDialog
+{
public:
NyquistOutputDialog(wxWindow * parent, wxWindowID id,
const wxString & title,
diff --git a/src/effects/vamp/VampEffect.cpp b/src/effects/vamp/VampEffect.cpp
index 070c2e6..a621da9 100644
--- a/src/effects/vamp/VampEffect.cpp
+++ b/src/effects/vamp/VampEffect.cpp
@@ -42,14 +42,15 @@ VampEffect::VampEffect(Vamp::HostExt::PluginLoader::PluginKey key,
mName(name),
mRate(0),
mCategory(category),
- mPlugin(0)
+ mPlugin(NULL)
{
+ SetEffectFlags(PLUGIN_EFFECT | ANALYZE_EFFECT);
}
VampEffect::~VampEffect()
{
delete mPlugin;
- mPlugin = 0;
+ mPlugin = NULL;
}
wxString VampEffect::GetEffectName()
@@ -81,11 +82,6 @@ wxString VampEffect::GetEffectAction()
GetEffectName().c_str());
}
-int VampEffect::GetEffectFlags()
-{
- return PLUGIN_EFFECT | ANALYZE_EFFECT;
-}
-
bool VampEffect::Init()
{
Vamp::HostExt::PluginLoader *loader =
@@ -94,7 +90,7 @@ bool VampEffect::Init()
delete mPlugin;
mPlugin = 0;
- TrackListIterator iter(mWaveTracks);
+ TrackListOfKindIterator iter(Track::Wave, mTracks);
WaveTrack *left = (WaveTrack *)iter.First();
mRate = 0.0;
@@ -143,31 +139,11 @@ bool VampEffect::PromptUser()
return true;
}
-void VampEffect::GetSamples(WaveTrack *track,
- sampleCount *start,
- sampleCount *len)
-{
- double trackStart = track->GetStartTime();
- double trackEnd = track->GetEndTime();
- double t0 = mT0 < trackStart ? trackStart : mT0;
- double t1 = mT1 > trackEnd ? trackEnd : mT1;
-
- if (t1 > t0) {
- *start = track->TimeToLongSamples(t0);
- sampleCount end = track->TimeToLongSamples(t1);
- *len = (sampleCount)(end - *start);
- }
- else {
- *start = 0;
- *len = 0;
- }
-}
-
bool VampEffect::Process()
{
if (!mPlugin) return false;
- TrackListIterator iter(mWaveTracks);
+ TrackListOfKindIterator iter(Track::Wave, mTracks);
int count = 0;
@@ -176,9 +152,7 @@ bool VampEffect::Process()
bool multiple = false;
int prevTrackChannels = 0;
- TrackListIterator scooter(iter);
- if (left->GetLinked()) scooter.Next();
- if (scooter.Next()) {
+ if (GetNumWaveGroups() > 1) {
// if there is another track beyond this one and any linked one,
// then we're processing more than one track. That means we
// should use the originating track name in each new label
@@ -188,7 +162,7 @@ bool VampEffect::Process()
while (left) {
- sampleCount lstart, rstart;
+ sampleCount lstart, rstart = 0;
sampleCount len;
GetSamples(left, &lstart, &len);
diff --git a/src/effects/vamp/VampEffect.h b/src/effects/vamp/VampEffect.h
index 1390e8e..f0f128d 100644
--- a/src/effects/vamp/VampEffect.h
+++ b/src/effects/vamp/VampEffect.h
@@ -45,8 +45,6 @@ class VampEffect : public Effect {
virtual wxString GetEffectAction();
- virtual int GetEffectFlags();
-
virtual bool Init();
virtual bool PromptUser();
@@ -69,10 +67,6 @@ class VampEffect : public Effect {
Vamp::Plugin *mPlugin;
- void GetSamples(WaveTrack *track,
- sampleCount *start,
- sampleCount *len);
-
void AddFeatures(LabelTrack *track,
Vamp::Plugin::FeatureSet &features);
};
diff --git a/src/export/Export.cpp b/src/export/Export.cpp
index 42bdad1..8ede51f 100644
--- a/src/export/Export.cpp
+++ b/src/export/Export.cpp
@@ -85,6 +85,7 @@ static void ExportCallback(void *cbdata, int index)
#include <wx/arrimpl.cpp>
WX_DEFINE_OBJARRAY(ExportPluginArray);
+WX_DEFINE_OBJARRAY(FormatInfoArray);
ExportPlugin::ExportPlugin()
{
@@ -93,7 +94,7 @@ ExportPlugin::ExportPlugin()
ExportPlugin::~ExportPlugin()
{
- mFormatInfos.Empty();
+ mFormatInfos.Clear();
}
bool ExportPlugin::CheckFileName(wxFileName &filename, int format)
@@ -110,7 +111,7 @@ bool ExportPlugin::CheckFileName(wxFileName &filename, int format)
*/
int ExportPlugin::AddFormat()
{
- FormatInfo *nf = new FormatInfo();
+ FormatInfo nf;
mFormatInfos.Add(nf);
return mFormatInfos.Count();
}
@@ -131,63 +132,63 @@ void ExportPlugin::Destroy()
*/
void ExportPlugin::SetFormat(const wxString & format, int index)
{
- mFormatInfos[index]->mFormat = format;
+ mFormatInfos[index].mFormat = format;
}
void ExportPlugin::SetDescription(const wxString & description, int index)
{
- mFormatInfos[index]->mDescription = description;
+ mFormatInfos[index].mDescription = description;
}
void ExportPlugin::AddExtension(const wxString &extension,int index)
{
- mFormatInfos[index]->mExtensions.Add(extension);
+ mFormatInfos[index].mExtensions.Add(extension);
}
void ExportPlugin::SetExtensions(const wxArrayString & extensions, int index)
{
- mFormatInfos[index]->mExtensions = extensions;
+ mFormatInfos[index].mExtensions = extensions;
}
void ExportPlugin::SetMask(const wxString & mask, int index)
{
- mFormatInfos[index]->mMask = mask;
+ mFormatInfos[index].mMask = mask;
}
void ExportPlugin::SetMaxChannels(int maxchannels, int index)
{
- mFormatInfos[index]->mMaxChannels = maxchannels;
+ mFormatInfos[index].mMaxChannels = maxchannels;
}
void ExportPlugin::SetCanMetaData(bool canmetadata, int index)
{
- mFormatInfos[index]->mCanMetaData = canmetadata;
+ mFormatInfos[index].mCanMetaData = canmetadata;
}
wxString ExportPlugin::GetFormat(int index)
{
- return mFormatInfos[index]->mFormat;
+ return mFormatInfos[index].mFormat;
}
wxString ExportPlugin::GetDescription(int index)
{
- return mFormatInfos[index]->mDescription;
+ return mFormatInfos[index].mDescription;
}
wxString ExportPlugin::GetExtension(int index)
{
- return mFormatInfos[index]->mExtensions[0];
+ return mFormatInfos[index].mExtensions[0];
}
wxArrayString ExportPlugin::GetExtensions(int index)
{
- return mFormatInfos[index]->mExtensions;
+ return mFormatInfos[index].mExtensions;
}
wxString ExportPlugin::GetMask(int index)
{
- if (!mFormatInfos[index]->mMask.IsEmpty()) {
- return mFormatInfos[index]->mMask;
+ if (!mFormatInfos[index].mMask.IsEmpty()) {
+ return mFormatInfos[index].mMask;
}
wxString mask = GetDescription(index) + wxT("|");
@@ -207,12 +208,12 @@ wxString ExportPlugin::GetMask(int index)
int ExportPlugin::GetMaxChannels(int index)
{
- return mFormatInfos[index]->mMaxChannels;
+ return mFormatInfos[index].mMaxChannels;
}
bool ExportPlugin::GetCanMetaData(int index)
{
- return mFormatInfos[index]->mCanMetaData;
+ return mFormatInfos[index].mCanMetaData;
}
bool ExportPlugin::IsExtension(wxString & ext, int index)
@@ -234,7 +235,7 @@ bool ExportPlugin::DisplayOptions(wxWindow *parent, int format)
return false;
}
-bool ExportPlugin::Export(AudacityProject *project,
+int ExportPlugin::Export(AudacityProject *project,
int channels,
wxString fName,
bool selectedOnly,
@@ -251,7 +252,7 @@ bool ExportPlugin::Export(AudacityProject *project,
return DoExport(project, channels, fName, selectedOnly, t0, t1, mixerSpec, subformat);
}
-bool ExportPlugin::DoExport(AudacityProject *project,
+int ExportPlugin::DoExport(AudacityProject *project,
int channels,
wxString fName,
bool selectedOnly,
@@ -267,8 +268,6 @@ bool ExportPlugin::DoExport(AudacityProject *project,
// Export
//----------------------------------------------------------------------------
-WX_DEFINE_OBJARRAY(FormatInfoArray);
-
Exporter::Exporter()
{
mMixerSpec = NULL;
@@ -414,8 +413,8 @@ bool Exporter::ExamineTracks()
// Tally how many are right, left, mono, and make sure at
// least one track is selected (if selectedOnly==true)
- float earliestBegin = mT1;
- float latestEnd = mT0;
+ double earliestBegin = mT1;
+ double latestEnd = mT0;
TrackList *tracks = mProject->GetTracks();
TrackListIterator iter1(tracks);
@@ -748,7 +747,7 @@ bool Exporter::CheckMix()
bool Exporter::ExportTracks()
{
- bool success;
+ int success;
// Keep original in case of failure
if (mActualName != mFilename) {
@@ -767,7 +766,7 @@ bool Exporter::ExportTracks()
if (mActualName != mFilename) {
// Remove backup
- if (success) {
+ if (success == eProgressSuccess || success == eProgressStopped) {
::wxRemoveFile(mFilename.GetFullPath());
}
else {
@@ -777,7 +776,7 @@ bool Exporter::ExportTracks()
}
}
- return success;
+ return (success == eProgressSuccess || success == eProgressStopped);
}
//----------------------------------------------------------------------------
@@ -810,6 +809,10 @@ ExportMixerPanel::~ExportMixerPanel()
{
delete[] mTrackRects;
delete[] mChannelRects;
+
+ if (mBitmap) {
+ delete mBitmap;
+ }
}
//set the font on memDC such that text can fit in specified width and height
@@ -947,7 +950,7 @@ void ExportMixerPanel::OnPaint(wxPaintEvent & evt)
for( int i = 0; i < mMixerSpec->GetNumTracks(); i++ )
for( int j = 0; j < mMixerSpec->GetNumChannels(); j++ )
if( mMixerSpec->mMap[ i ][ j ] )
- memDC.DrawLine( mTrackRects[ i ].x + mBoxWidth,
+ AColor::Line(memDC, mTrackRects[ i ].x + mBoxWidth,
mTrackRects[ i ].y + mTrackHeight / 2, mChannelRects[ j ].x,
mChannelRects[ j ].y + mChannelHeight / 2 );
@@ -1045,19 +1048,16 @@ ExportMixerDialog::ExportMixerDialog( TrackList *tracks, bool selectedOnly,
{
int numTracks = 0;
TrackListIterator iter( tracks );
-
+
for( Track *t = iter.First(); t; t = iter.Next() )
{
- if( t->GetKind() == Track::Wave && ( t->GetSelected() || !selectedOnly ) )
+ if( t->GetKind() == Track::Wave && ( t->GetSelected() || !selectedOnly ) && !t->GetMute() )
{
numTracks++;
if( t->GetChannel() == Track::LeftChannel )
- {
mTrackNames.Add( t->GetName() + _( " - Left" ) );
+ else if( t->GetChannel() == Track::RightChannel )
mTrackNames.Add( t->GetName() + _( " - Right" ) );
- t = iter.Next();
- numTracks++;
- }
else
mTrackNames.Add( t->GetName() );
}
diff --git a/src/export/Export.h b/src/export/Export.h
index 3df3408..ee50838 100644
--- a/src/export/Export.h
+++ b/src/export/Export.h
@@ -40,7 +40,7 @@ class FormatInfo
bool mCanMetaData;
};
-WX_DECLARE_OBJARRAY(FormatInfo *, FormatInfoArray);
+WX_DECLARE_OBJARRAY(FormatInfo, FormatInfoArray);
//----------------------------------------------------------------------------
// ExportPlugin
@@ -95,7 +95,7 @@ public:
* libsndfile export plug-in, but with subformat set to 0, 1, and 2
* respectively.
*/
- virtual bool Export(AudacityProject *project,
+ virtual int Export(AudacityProject *project,
int channels,
wxString fName,
bool selectedOnly,
@@ -105,7 +105,7 @@ public:
Tags *metadata = NULL,
int subformat = 0);
- virtual bool DoExport(AudacityProject *project,
+ virtual int DoExport(AudacityProject *project,
int channels,
wxString fName,
bool selectedOnly,
@@ -114,7 +114,7 @@ public:
MixerSpec *mixerSpec,
int subformat);
-protected:
+private:
FormatInfoArray mFormatInfos;
};
diff --git a/src/export/ExportCL.cpp b/src/export/ExportCL.cpp
index defb850..02dbf2f 100644
--- a/src/export/ExportCL.cpp
+++ b/src/export/ExportCL.cpp
@@ -120,7 +120,7 @@ static void Drain(wxInputStream *s, wxString *o)
char buffer[4096];
s->Read(buffer, WXSIZEOF(buffer) - 1);
- buffer[s->LastRead()] = _T('\0');
+ buffer[s->LastRead()] = wxT('\0');
*o += LAT1CTOWX(buffer);
}
}
@@ -198,7 +198,7 @@ public:
// Required
bool DisplayOptions(wxWindow *parent, int format = 0);
- bool Export(AudacityProject *project,
+ int Export(AudacityProject *project,
int channels,
wxString fName,
bool selectedOnly,
@@ -225,7 +225,7 @@ void ExportCL::Destroy()
delete this;
}
-bool ExportCL::Export(AudacityProject *project,
+int ExportCL::Export(AudacityProject *project,
int channels,
wxString fName,
bool selectionOnly,
@@ -352,7 +352,7 @@ bool ExportCL::Export(AudacityProject *project,
size_t numBytes = 0;
samplePtr mixed;
- bool cancelling = false;
+ int updateResult = eProgressSuccess;
// Prepare the progress display
ProgressDialog *progress = new ProgressDialog(_("Export"),
@@ -361,7 +361,7 @@ bool ExportCL::Export(AudacityProject *project,
_("Exporting the entire project using command-line encoder"));
// Start piping the mixed data to the command
- while (!cancelling && p->IsActive() && os->IsOk()) {
+ while (updateResult == eProgressSuccess && p->IsActive() && os->IsOk()) {
// Capture any stdout and stderr from the command
Drain(p->GetInputStream(), &output);
Drain(p->GetErrorStream(), &output);
@@ -401,7 +401,7 @@ bool ExportCL::Export(AudacityProject *project,
}
// Update the progress display
- cancelling = !progress->Update(mixer->MixGetCurrentTime()-t0, t1-t0);
+ updateResult = progress->Update(mixer->MixGetCurrentTime()-t0, t1-t0);
}
// Done with the progress display
@@ -444,7 +444,7 @@ bool ExportCL::Export(AudacityProject *project,
delete[] waveTracks;
delete p;
- return true;
+ return updateResult;
}
bool ExportCL::DisplayOptions(wxWindow *parent, int format)
diff --git a/src/export/ExportFFmpeg.cpp b/src/export/ExportFFmpeg.cpp
index b1d8b5a..34161bb 100644
--- a/src/export/ExportFFmpeg.cpp
+++ b/src/export/ExportFFmpeg.cpp
@@ -4,7 +4,7 @@
ExportFFmpeg.cpp
- Audacity(R) is copyright (c) 1999-2008 Audacity Team.
+ Audacity(R) is copyright (c) 1999-2009 Audacity Team.
License: GPL v2. See License.txt.
LRN
@@ -54,12 +54,30 @@ extern FFmpegLibs *FFmpegLibsInst;
bool CheckFFmpegPresence()
{
+ bool result = true;
+ PickFFmpegLibs();
if (!FFmpegLibsInst->ValidLibsLoaded())
{
- wxMessageBox(_("Properly configured FFmpeg is required to proceed.\nYou can configure it in Preferences->Import/Export."));
- return false;
+ wxMessageBox(_("Properly configured FFmpeg is required to proceed.\nYou can configure it at Preferences > Libraries."));
+ result = false;
}
- return true;
+ DropFFmpegLibs();
+ return result;
+}
+
+int AdjustFormatIndex(int format)
+{
+ int subFormat = -1;
+ for (int i = 0; i <= FMT_OTHER; i++)
+ {
+ if (fmts[i].compiledIn) subFormat++;
+ if (subFormat == format || i == FMT_OTHER)
+ {
+ subFormat = i;
+ break;
+ }
+ }
+ return subFormat;
}
//----------------------------------------------------------------------------
@@ -111,7 +129,7 @@ public:
///\param metadata tags to write into file
///\param subformat index of export type
///\return true if export succeded
- bool Export(AudacityProject *project,
+ int Export(AudacityProject *project,
int channels,
wxString fName,
bool selectedOnly,
@@ -130,10 +148,9 @@ private:
AVCodecContext * mEncAudioCodecCtx; // the encoder for the output audio stream
uint8_t * mEncAudioEncodedBuf; // buffer to hold frames encoded by the encoder
int mEncAudioEncodedBufSiz;
- AVFifoBuffer mEncAudioFifo; // FIFO to write incoming audio samples into
+ AVFifoBuffer * mEncAudioFifo; // FIFO to write incoming audio samples into
uint8_t * mEncAudioFifoOutBuf; // buffer to read _out_ of the FIFO into
- bool mCancelled;
wxString mName;
int mSubFormat;
@@ -146,11 +163,35 @@ private:
ExportFFmpeg::ExportFFmpeg()
: ExportPlugin()
{
- PickFFmpegLibs();
+ mEncFormatCtx = NULL; // libavformat's context for our output file
+ mEncFormatDesc = NULL; // describes our output file to libavformat
+ mEncAudioStream = NULL; // the output audio stream (may remain NULL)
+ mEncAudioCodecCtx = NULL; // the encoder for the output audio stream
+ mEncAudioEncodedBuf = NULL; // buffer to hold frames encoded by the encoder
+ #define MAX_AUDIO_PACKET_SIZE (128 * 1024)
+ mEncAudioEncodedBufSiz = 4*MAX_AUDIO_PACKET_SIZE;
+ mEncAudioFifoOutBuf = NULL; // buffer to read _out_ of the FIFO into
+ mSampleRate = 0;
+ mSupportsUTF8 = true;
+
+ PickFFmpegLibs(); // DropFFmpegLibs() call is in ExportFFmpeg::Destroy()
int newfmt;
// Adds export types from the export type list
for (newfmt = 0; newfmt < FMT_LAST; newfmt++)
{
+ wxString shortname(fmts[newfmt].shortname);
+ //Don't hide export types when there's no av-libs, and don't hide FMT_OTHER
+ if (newfmt < FMT_OTHER && FFmpegLibsInst->ValidLibsLoaded())
+ {
+ // Format/Codec support is compiled in?
+ AVOutputFormat *avoformat = FFmpegLibsInst->guess_format(shortname.mb_str(), NULL, NULL);
+ AVCodec *avcodec = FFmpegLibsInst->avcodec_find_encoder(fmts[newfmt].codecid);
+ if (avoformat == NULL || avcodec == NULL)
+ {
+ fmts[newfmt].compiledIn = false;
+ continue;
+ }
+ }
int fmtindex = AddFormat() - 1;
SetFormat(fmts[newfmt].name,fmtindex);
AddExtension(fmts[newfmt].extension,fmtindex);
@@ -159,6 +200,7 @@ ExportFFmpeg::ExportFFmpeg()
{
case FMT_M4A:
AddExtension(wxString(wxT("3gp")),fmtindex);
+ AddExtension(wxString(wxT("m4r")),fmtindex);
AddExtension(wxString(wxT("mp4")),fmtindex);
break;
case FMT_WMA2:
@@ -173,17 +215,6 @@ ExportFFmpeg::ExportFFmpeg()
SetCanMetaData(fmts[newfmt].canmetadata,fmtindex);
SetDescription(fmts[newfmt].description,fmtindex);
}
-
- mEncFormatCtx = NULL; // libavformat's context for our output file
- mEncFormatDesc = NULL; // describes our output file to libavformat
- mEncAudioStream = NULL; // the output audio stream (may remain NULL)
- mEncAudioCodecCtx = NULL; // the encoder for the output audio stream
- mEncAudioEncodedBuf = NULL; // buffer to hold frames encoded by the encoder
- #define MAX_AUDIO_PACKET_SIZE (128 * 1024)
- mEncAudioEncodedBufSiz = 4*MAX_AUDIO_PACKET_SIZE;
- mEncAudioFifoOutBuf = NULL; // buffer to read _out_ of the FIFO into
- mSampleRate = 0;
- mSupportsUTF8 = true;
}
void ExportFFmpeg::Destroy()
@@ -194,9 +225,13 @@ void ExportFFmpeg::Destroy()
bool ExportFFmpeg::CheckFileName(wxFileName &filename, int format)
{
+ bool result = true;
+ int subFormat = AdjustFormatIndex(format);
if (!CheckFFmpegPresence())
- return false;
- return true;
+ {
+ result = false;
+ }
+ return result;
}
bool ExportFFmpeg::Init(const char *shortname, AudacityProject *project, Tags *metadata)
@@ -213,7 +248,7 @@ bool ExportFFmpeg::Init(const char *shortname, AudacityProject *project, Tags *m
// See if libavformat has modules that can write our output format. If so, mEncFormatDesc
// will describe the functions used to write the format (used internally by libavformat)
// and the default video/audio codecs that the format uses.
- if ((mEncFormatDesc = FFmpegLibsInst->guess_format(shortname, OSFILENAME(mName), NULL)) == NULL)
+ if ((mEncFormatDesc = FFmpegLibsInst->guess_format(shortname, OSINPUT(mName), NULL)) == NULL)
{
wxLogMessage(wxT("FFmpeg : ERROR - Can't determine format description for file \"%s\"."), mName.c_str());
return false;
@@ -228,8 +263,7 @@ bool ExportFFmpeg::Init(const char *shortname, AudacityProject *project, Tags *m
// Initialise the output format context.
mEncFormatCtx->oformat = mEncFormatDesc;
- wxString tName(mName);
- memcpy(mEncFormatCtx->filename,OSFILENAME(mName),strlen(OSFILENAME(mName))+1);
+ memcpy(mEncFormatCtx->filename, OSINPUT(mName), strlen(OSINPUT(mName))+1);
// At the moment Audacity can export only one audio stream
if ((mEncAudioStream = FFmpegLibsInst->av_new_stream(mEncFormatCtx, 1)) == NULL)
@@ -244,7 +278,7 @@ bool ExportFFmpeg::Init(const char *shortname, AudacityProject *project, Tags *m
// Open the output file.
if (!(mEncFormatDesc->flags & AVFMT_NOFILE))
{
- if ((err = FFmpegLibsInst->url_fopen(&mEncFormatCtx->pb, mEncFormatCtx->filename, URL_WRONLY)) < 0)
+ if ((err = ufile_fopen(&mEncFormatCtx->pb, mName, URL_WRONLY)) < 0)
{
wxLogMessage(wxT("FFmpeg : ERROR - Can't open output file \"%s\" to write. Error code is %d."), mName.c_str(),err);
return false;
@@ -310,7 +344,7 @@ bool ExportFFmpeg::InitCodecs(AudacityProject *project)
mSampleRate = (int)project->GetRate();
mEncAudioCodecCtx->global_quality = -99999; //quality mode is off by default;
- // Each export type has it's own settings
+ // Each export type has its own settings
switch (mSubFormat)
{
case FMT_M4A:
@@ -331,10 +365,10 @@ bool ExportFFmpeg::InitCodecs(AudacityProject *project)
mSampleRate = 8000;
mEncAudioCodecCtx->bit_rate = gPrefs->Read(wxT("/FileFormats/AMRNBBitRate"), 12200);
break;
- case FMT_AMRWB:
+/* case FMT_AMRWB:
mSampleRate = 16000;
mEncAudioCodecCtx->bit_rate = gPrefs->Read(wxT("/FileFormats/AMRWBBitRate"), 23850);
- break;
+ break;*/
case FMT_WMA2:
mEncAudioCodecCtx->bit_rate = gPrefs->Read(wxT("/FileFormats/WMABitRate"), 198000);
if (!CheckSampleRate(mSampleRate,ExportFFmpegWMAOptions::iWMASampleRates[0], ExportFFmpegWMAOptions::iWMASampleRates[4], &ExportFFmpegWMAOptions::iWMASampleRates[0]))
@@ -424,7 +458,8 @@ bool ExportFFmpeg::InitCodecs(AudacityProject *project)
// The encoder may require a minimum number of raw audio samples for each encoding but we can't
// guarantee we'll get this minimum each time an audio frame is decoded from the input file so
// we use a FIFO to store up incoming raw samples until we have enough for one call to the codec.
- FFmpegLibsInst->av_fifo_init(&mEncAudioFifo, 1024);
+ //FFmpegLibsInst->av_fifo_init(&mEncAudioFifo, 1024);
+ mEncAudioFifo = FFmpegLibsInst->av_fifo_alloc(1024);
// Allocate a buffer to read OUT of the FIFO into. The FIFO maintains its own buffer internally.
if ((mEncAudioFifoOutBuf = (uint8_t*)FFmpegLibsInst->av_malloc(2*MAX_AUDIO_PACKET_SIZE)) == NULL)
@@ -444,7 +479,7 @@ bool ExportFFmpeg::Finalize()
for (;;)
{
AVPacket pkt;
- int nFifoBytes = FFmpegLibsInst->av_fifo_size(&mEncAudioFifo); // any bytes left in audio FIFO?
+ int nFifoBytes = FFmpegLibsInst->av_fifo_size(mEncAudioFifo); // any bytes left in audio FIFO?
nEncodedBytes = 0;
int nAudioFrameSizeOut = mEncAudioCodecCtx->frame_size * mEncAudioCodecCtx->channels * sizeof(int16_t);
@@ -481,7 +516,7 @@ bool ExportFFmpeg::Finalize()
nFifoBytes, mEncAudioCodecCtx->frame_size);
// Pull the bytes out from the FIFO and feed them to the encoder.
- if (FFmpegLibsInst->av_fifo_read(&mEncAudioFifo, mEncAudioFifoOutBuf, nFifoBytes) == 0)
+ if (FFmpegLibsInst->av_fifo_generic_read(mEncAudioFifo, mEncAudioFifoOutBuf, nFifoBytes, NULL) == 0)
{
if (mEncAudioCodecCtx->frame_size != 1)
nEncodedBytes = FFmpegLibsInst->avcodec_encode_audio(mEncAudioCodecCtx, mEncAudioEncodedBuf, mEncAudioEncodedBufSiz, (int16_t*)mEncAudioFifoOutBuf);
@@ -545,7 +580,8 @@ bool ExportFFmpeg::Finalize()
if (mEncAudioFifoOutBuf != NULL)
FFmpegLibsInst->av_free(mEncAudioFifoOutBuf);
- FFmpegLibsInst->av_fifo_free(&mEncAudioFifo);
+ FFmpegLibsInst->av_fifo_free(mEncAudioFifo);
+ mEncAudioFifo = NULL;
return true;
}
@@ -560,15 +596,15 @@ bool ExportFFmpeg::EncodeAudioFrame(int16_t *pFrame, int frameSize)
nBytesToWrite = frameSize;
pRawSamples = (uint8_t*)pFrame;
- FFmpegLibsInst->av_fifo_realloc(&mEncAudioFifo, FFmpegLibsInst->av_fifo_size(&mEncAudioFifo) + frameSize);
+ FFmpegLibsInst->av_fifo_realloc2(mEncAudioFifo, FFmpegLibsInst->av_fifo_size(mEncAudioFifo) + frameSize);
// Put the raw audio samples into the FIFO.
- ret = FFmpegLibsInst->av_fifo_generic_write(&mEncAudioFifo, pRawSamples, nBytesToWrite,NULL);
+ ret = FFmpegLibsInst->av_fifo_generic_write(mEncAudioFifo, pRawSamples, nBytesToWrite,NULL);
wxASSERT(ret == nBytesToWrite);
// Read raw audio samples out of the FIFO in nAudioFrameSizeOut byte-sized groups to encode.
- while ((ret = FFmpegLibsInst->av_fifo_size(&mEncAudioFifo)) >= nAudioFrameSizeOut)
+ while ((ret = FFmpegLibsInst->av_fifo_size(mEncAudioFifo)) >= nAudioFrameSizeOut)
{
- ret = FFmpegLibsInst->av_fifo_read(&mEncAudioFifo, mEncAudioFifoOutBuf, nAudioFrameSizeOut);
+ ret = FFmpegLibsInst->av_fifo_generic_read(mEncAudioFifo, mEncAudioFifoOutBuf, nAudioFrameSizeOut, NULL);
FFmpegLibsInst->av_init_packet(&pkt);
pkt.size = FFmpegLibsInst->avcodec_encode_audio(mEncAudioCodecCtx,
@@ -601,21 +637,22 @@ bool ExportFFmpeg::EncodeAudioFrame(int16_t *pFrame, int frameSize)
}
-bool ExportFFmpeg::Export(AudacityProject *project,
+int ExportFFmpeg::Export(AudacityProject *project,
int channels, wxString fName,
bool selectionOnly, double t0, double t1, MixerSpec *mixerSpec, Tags *metadata, int subformat)
{
if (!CheckFFmpegPresence())
return false;
mChannels = channels;
- if (channels > fmts[subformat].maxchannels)
+ // subformat index may not correspond directly to fmts[] index, convert it
+ mSubFormat = AdjustFormatIndex(subformat);
+ if (channels > fmts[mSubFormat].maxchannels)
{
- wxLogMessage(wxT("Attempted to export %d channels, but max. channels = %d"),channels,fmts[subformat].maxchannels);
- wxMessageBox(wxString::Format(_("Attempted to export %d channels, but max. channels for selected output format is %d"),channels,fmts[subformat].maxchannels),_("Error"));
+ wxLogMessage(wxT("Attempted to export %d channels, but max. channels = %d"),channels,fmts[mSubFormat].maxchannels);
+ wxMessageBox(wxString::Format(_("Attempted to export %d channels, but max. channels for selected output format is %d"),channels,fmts[mSubFormat].maxchannels),_("Error"));
return false;
}
mName = fName;
- mSubFormat = subformat;
TrackList *tracks = project->GetTracks();
bool ret = true;
@@ -637,15 +674,16 @@ bool ExportFFmpeg::Export(AudacityProject *project,
t0, t1,
channels, pcmBufferSize, true,
mSampleRate, int16Sample, true, mixerSpec);
+ delete [] waveTracks;
ProgressDialog *progress = new ProgressDialog(wxFileName(fName).GetName(),
selectionOnly ?
wxString::Format(_("Exporting selected audio as %s"), fmts[mSubFormat].description) :
wxString::Format(_("Exporting entire file as %s"), fmts[mSubFormat].description));
- bool cancelling = false;
+ int updateResult = eProgressSuccess;
- while(!cancelling) {
+ while(updateResult == eProgressSuccess) {
sampleCount pcmNumSamples = mixer->Process(pcmBufferSize);
if (pcmNumSamples == 0)
@@ -655,7 +693,7 @@ bool ExportFFmpeg::Export(AudacityProject *project,
EncodeAudioFrame(pcmBuffer,(pcmNumSamples)*sizeof(int16_t)*mChannels);
- cancelling = !progress->Update(mixer->MixGetCurrentTime()-t0, t1-t0);
+ updateResult = progress->Update(mixer->MixGetCurrentTime()-t0, t1-t0);
}
delete progress;
@@ -664,7 +702,7 @@ bool ExportFFmpeg::Export(AudacityProject *project,
Finalize();
- return !cancelling;
+ return updateResult;
}
void AddStringTagUTF8(char field[], int size, wxString value)
@@ -780,37 +818,39 @@ bool ExportFFmpeg::DisplayOptions(wxWindow *parent, int format)
{
if (!CheckFFmpegPresence())
return false;
- if (format == FMT_M4A)
+ // subformat index may not correspond directly to fmts[] index, convert it
+ mSubFormat = AdjustFormatIndex(format);
+ if (mSubFormat == FMT_M4A)
{
ExportFFmpegAACOptions od(parent);
od.ShowModal();
return true;
}
- else if (format == FMT_AC3)
+ else if (mSubFormat == FMT_AC3)
{
ExportFFmpegAC3Options od(parent);
od.ShowModal();
return true;
}
- else if (format == FMT_AMRNB)
+ else if (mSubFormat == FMT_AMRNB)
{
ExportFFmpegAMRNBOptions od(parent);
od.ShowModal();
return true;
}
- else if (format == FMT_AMRWB)
+/* else if (mSubFormat == FMT_AMRWB)
{
ExportFFmpegAMRWBOptions od(parent);
od.ShowModal();
return true;
- }
- else if (format == FMT_WMA2)
+ }*/
+ else if (mSubFormat == FMT_WMA2)
{
ExportFFmpegWMAOptions od(parent);
od.ShowModal();
return true;
}
- else if (format == FMT_OTHER)
+ else if (mSubFormat == FMT_OTHER)
{
ExportFFmpegOptions od(parent);
od.ShowModal();
diff --git a/src/export/ExportFFmpegDialogs.cpp b/src/export/ExportFFmpegDialogs.cpp
index dfd877d..f461775 100644
--- a/src/export/ExportFFmpegDialogs.cpp
+++ b/src/export/ExportFFmpegDialogs.cpp
@@ -169,7 +169,7 @@ void ExportFFmpegAACOptions::PopulateOrExchange(ShuttleGui & S)
{
S.StartTwoColumn();
{
- S.TieSlider(wxT("Quality:"),wxT("/FileFormats/AACQuality"),100,500,10);
+ S.TieSlider(_("Quality:"),wxT("/FileFormats/AACQuality"),100,500,10);
}
S.EndTwoColumn();
}
@@ -411,6 +411,7 @@ WX_DEFINE_LIST(FFmpegPresetList);
FFmpegPresets::FFmpegPresets()
{
mPresets = new FFmpegPresetList();
+ mPresets->DeleteContents(true);
XMLFileReader xmlfile;
wxFileName xmlFileName(FileNames::DataDir(), wxT("ffmpeg_presets.xml"));
xmlfile.Parse(this,xmlFileName.GetFullPath());
@@ -419,6 +420,7 @@ FFmpegPresets::FFmpegPresets()
FFmpegPresets::~FFmpegPresets()
{
XMLFileWriter writer;
+ // FIXME: Catch XMLFileWriterException
wxFileName xmlFileName(FileNames::DataDir(), wxT("ffmpeg_presets.xml"));
writer.Open(xmlFileName.GetFullPath(),wxT("wb"));
WriteXMLHeader(writer);
@@ -435,6 +437,7 @@ void FFmpegPresets::ImportPresets(wxString &filename)
void FFmpegPresets::ExportPresets(wxString &filename)
{
XMLFileWriter writer;
+ // FIXME: Catch XMLFileWriterException
writer.Open(filename,wxT("wb"));
WriteXMLHeader(writer);
WriteXML(writer);
@@ -513,7 +516,6 @@ void FFmpegPresets::SavePreset(ExportFFmpegOptions *parent, wxString &name)
mPresets->push_front(preset);
}
- wxListBox *lb;
wxSpinCtrl *sc;
wxTextCtrl *tc;
wxCheckBox *cb;
@@ -925,13 +927,13 @@ void ExportFFmpegOptions::PopulateOrExchange(ShuttleGui & S)
mBitrateSpin->SetToolTip(_("Bit Rate (bits/second) - influences the resulting file size and quality\nSome codecs may only accept specific values (128k, 192k, 256k etc)\n0 - automatic\nRecommended - 192000"));
mQualitySpin = S.Id(FEQualityID).TieSpinCtrl(_("Quality:"), wxT("/FileFormats/FFmpegQuality"), 0,500,-1);
- mQualitySpin->SetToolTip(_("Overral quality, used differently by different codecs\nRequired for vorbis\n0 - automatic\n-1 - off (use bitrate instead)"));
+ mQualitySpin->SetToolTip(_("Overall quality, used differently by different codecs\nRequired for vorbis\n0 - automatic\n-1 - off (use bitrate instead)"));
mSampleRateSpin = S.Id(FESampleRateID).TieSpinCtrl(_("Sample Rate:"), wxT("/FileFormats/FFmpegSampleRate"), 0,200000,0);
mSampleRateSpin->SetToolTip(_("Sample rate (Hz)\n0 - don't change sample rate"));
mCutoffSpin = S.Id(FECutoffID).TieSpinCtrl(_("Cutoff Bandwidth:"), wxT("/FileFormats/FFmpegCutOff"), 0,10000000,0);
- mCutoffSpin->SetToolTip(_("Audio cutoff bandwidth (Hz)\nOptional\n0 - automatic\n"));
+ mCutoffSpin->SetToolTip(_("Audio cutoff bandwidth (Hz)\nOptional\n0 - automatic"));
mProfileChoice = S.Id(FEProfileID).TieChoice(_("Profile:"), wxT("/FileFormats/FFmpegAACProfile"),
mProfileLabels[0], mProfileNames, mProfileLabels);
@@ -966,7 +968,7 @@ void ExportFFmpegOptions::PopulateOrExchange(ShuttleGui & S)
mPredictionOrderMethodChoice = S.Id(FEPredOrderID).TieChoice(_("Prediction Order Method:"), wxT("/FileFormats/FFmpegPredOrderMethod"),
mPredictionOrderMethodLabels[4], mPredictionOrderMethodNames, mPredictionOrderMethodLabels);
- mProfileChoice->SetToolTip(_("Prediction Order Method\nEstimate - fastest, lower compression\nLog search - slowest, best compression\nFull search - default"));
+ mPredictionOrderMethodChoice->SetToolTip(_("Prediction Order Method\nEstimate - fastest, lower compression\nLog search - slowest, best compression\nFull search - default"));
mMinPartitionOrderSpin = S.Id(FEMinPartOrderID).TieSpinCtrl(_("Minimal partition order"), wxT("/FileFormats/FFmpegMinPartOrder"), -1,8,-1);
mMinPartitionOrderSpin->SetToolTip(_("Minimal partition order\nOptional\n-1 - default\nmin - 0\nmax - 8"));
diff --git a/src/export/ExportFFmpegDialogs.h b/src/export/ExportFFmpegDialogs.h
index afb06ed..4e09c1e 100644
--- a/src/export/ExportFFmpegDialogs.h
+++ b/src/export/ExportFFmpegDialogs.h
@@ -27,7 +27,7 @@ enum FFmpegExposedFormat
FMT_M4A,
FMT_AC3,
FMT_AMRNB,
- FMT_AMRWB,
+// FMT_AMRWB,
FMT_WMA2,
FMT_OTHER,
FMT_LAST
@@ -45,17 +45,18 @@ struct ExposedFormat
bool canutf8; //!< true if format supports metadata in UTF-8, false otherwise
const wxChar *description; //!< format description (will be shown in export dialog)
CodecID codecid; //!< codec ID (see libavcodec/avcodec.h)
+ bool compiledIn; //!< support for this codec/format is compiled in (checked at runtime)
};
/// List of export types
static ExposedFormat fmts[] =
{
- {FMT_M4A, wxT("M4A"), wxT("m4a"), wxT("ipod"), 48, true ,true ,_("M4A (AAC) Files (FFmpeg)"), CODEC_ID_AAC},
- {FMT_AC3, wxT("AC3"), wxT("ac3"), wxT("ac3"), 7, false,false,_("AC3 Files (FFmpeg)"), CODEC_ID_AC3},
- {FMT_AMRNB, wxT("AMRNB"), wxT("amr"), wxT("amr"), 1, false,false,_("AMR (narrow band) Files (FFmpeg)"), CODEC_ID_AMR_NB},
- {FMT_AMRWB, wxT("AMRWB"), wxT("amr"), wxT("amr"), 1, false,false,_("AMR (wide band) Files (FFmpeg)"), CODEC_ID_AMR_WB},
- {FMT_WMA2, wxT("WMA"), wxT("wma"), wxT("asf"), 2, true ,false,_("WMA (version 2) Files (FFmpeg)"), CODEC_ID_WMAV2},
- {FMT_OTHER, wxT("FFMPEG"), wxT(""), wxT(""), 255, true ,true ,_("Custom FFmpeg Export"), CODEC_ID_NONE}
+ {FMT_M4A, wxT("M4A"), wxT("m4a"), wxT("ipod"), 48, true ,true ,_("M4A (AAC) Files (FFmpeg)"), CODEC_ID_AAC, true},
+ {FMT_AC3, wxT("AC3"), wxT("ac3"), wxT("ac3"), 7, false,false,_("AC3 Files (FFmpeg)"), CODEC_ID_AC3, true},
+ {FMT_AMRNB, wxT("AMRNB"), wxT("amr"), wxT("amr"), 1, false,false,_("AMR (narrow band) Files (FFmpeg)"), CODEC_ID_AMR_NB, true},
+// {FMT_AMRWB, wxT("AMRWB"), wxT("amr"), wxT("amr"), 1, false,false,_("AMR (wide band) Files (FFmpeg)"), CODEC_ID_AMR_WB, true},
+ {FMT_WMA2, wxT("WMA"), wxT("wma"), wxT("asf"), 2, true ,false,_("WMA (version 2) Files (FFmpeg)"), CODEC_ID_WMAV2, true},
+ {FMT_OTHER, wxT("FFMPEG"), wxT(""), wxT(""), 255, true ,true ,_("Custom FFmpeg Export"), CODEC_ID_NONE, true}
};
/// Describes format-codec compatibility
diff --git a/src/export/ExportFLAC.cpp b/src/export/ExportFLAC.cpp
index 16c65b8..0927fce 100644
--- a/src/export/ExportFLAC.cpp
+++ b/src/export/ExportFLAC.cpp
@@ -177,7 +177,7 @@ public:
// Required
bool DisplayOptions(wxWindow *parent, int format = 0);
- bool Export(AudacityProject *project,
+ int Export(AudacityProject *project,
int channels,
wxString fName,
bool selectedOnly,
@@ -212,7 +212,7 @@ void ExportFLAC::Destroy()
delete this;
}
-bool ExportFLAC::Export(AudacityProject *project,
+int ExportFLAC::Export(AudacityProject *project,
int numChannels,
wxString fName,
bool selectionOnly,
@@ -226,7 +226,7 @@ bool ExportFLAC::Export(AudacityProject *project,
TrackList *tracks = project->GetTracks();
wxLogNull logNo; // temporarily disable wxWindows error messages
- bool cancelling = false;
+ int updateResult = eProgressSuccess;
int levelPref;
gPrefs->Read(wxT("/FileFormats/FLACLevel"), &levelPref, 5);
@@ -237,7 +237,7 @@ bool ExportFLAC::Export(AudacityProject *project,
FLAC::Encoder::File encoder;
#ifdef LEGACY_FLAC
- encoder.set_filename(OSFILENAME(fName));
+ encoder.set_filename(OSOUTPUT(fName));
#endif
encoder.set_channels(numChannels);
encoder.set_sample_rate(lrint(rate));
@@ -245,7 +245,7 @@ bool ExportFLAC::Export(AudacityProject *project,
// See note in GetMetadata() about a bug in libflac++ 1.1.2
if (!GetMetadata(project, metadata)) {
return false;
- }
+ }
if (mMetadata) {
encoder.set_metadata(&mMetadata, 1);
@@ -283,7 +283,20 @@ bool ExportFLAC::Export(AudacityProject *project,
#ifdef LEGACY_FLAC
encoder.init();
#else
- encoder.init(OSFILENAME(fName));
+ wxFFile f; // will be closed when it goes out of scope
+ if (!f.Open(fName, wxT("w+b"))) {
+ wxMessageBox(wxString::Format(_("FLAC export couldn't open %s"), fName.c_str()));
+ return false;
+ }
+
+ // Even though there is an init() method that takes a filename, use the one that
+ // takes a file handle because wxWidgets can open a file with a Unicode name and
+ // libflac can't (under Windows).
+ int status = encoder.init(f.fp());
+ if (status != FLAC__STREAM_ENCODER_INIT_STATUS_OK) {
+ wxMessageBox(wxString::Format(_("FLAC encoder failed to initialize\nStatus: %d"), status));
+ return false;
+ }
#endif
if (mMetadata) {
@@ -298,6 +311,7 @@ bool ExportFLAC::Export(AudacityProject *project,
t0, t1,
numChannels, SAMPLES_PER_RUN, false,
rate, format, true, mixerSpec);
+ delete [] waveTracks;
int i, j;
FLAC__int32 **tmpsmplbuf = new FLAC__int32*[numChannels];
@@ -310,7 +324,7 @@ bool ExportFLAC::Export(AudacityProject *project,
_("Exporting the selected audio as FLAC") :
_("Exporting the entire project as FLAC"));
- while (!cancelling) {
+ while (updateResult == eProgressSuccess) {
sampleCount samplesThisRun = mixer->Process(SAMPLES_PER_RUN);
if (samplesThisRun == 0) { //stop encoding
break;
@@ -331,8 +345,9 @@ bool ExportFLAC::Export(AudacityProject *project,
}
encoder.process(tmpsmplbuf, samplesThisRun);
}
- cancelling = !progress->Update(mixer->MixGetCurrentTime()-t0, t1-t0);
+ updateResult = progress->Update(mixer->MixGetCurrentTime()-t0, t1-t0);
}
+ f.Detach(); // libflac closes the file
encoder.finish();
delete progress;
@@ -344,7 +359,7 @@ bool ExportFLAC::Export(AudacityProject *project,
delete[] tmpsmplbuf;
- return !cancelling;
+ return updateResult;
}
bool ExportFLAC::DisplayOptions(wxWindow *parent, int format)
@@ -370,8 +385,6 @@ bool ExportFLAC::GetMetadata(AudacityProject *project, Tags *tags)
mMetadata = ::FLAC__metadata_object_new(FLAC__METADATA_TYPE_VORBIS_COMMENT);
- FLAC::Metadata::VorbisComment::Entry entry;
-
wxString n, v;
for (bool cont = tags->GetFirst(n, v); cont; cont = tags->GetNext(n, v)) {
if (n == TAG_YEAR) {
diff --git a/src/export/ExportMP2.cpp b/src/export/ExportMP2.cpp
index 4bebf2e..2d77cb6 100644
--- a/src/export/ExportMP2.cpp
+++ b/src/export/ExportMP2.cpp
@@ -173,7 +173,7 @@ public:
// Required
bool DisplayOptions(wxWindow *parent, int format = 0);
- bool Export(AudacityProject *project,
+ int Export(AudacityProject *project,
int channels,
wxString fName,
bool selectedOnly,
@@ -205,7 +205,7 @@ void ExportMP2::Destroy()
delete this;
}
-bool ExportMP2::Export(AudacityProject *project,
+int ExportMP2::Export(AudacityProject *project,
int channels, wxString fName,
bool selectionOnly, double t0, double t1, MixerSpec *mixerSpec, Tags *metadata,
int subformat)
@@ -266,14 +266,15 @@ bool ExportMP2::Export(AudacityProject *project,
t0, t1,
stereo? 2: 1, pcmBufferSize, true,
rate, int16Sample, true, mixerSpec);
+ delete [] waveTracks;
ProgressDialog *progress = new ProgressDialog(wxFileName(fName).GetName(),
selectionOnly ?
wxString::Format(_("Exporting selected audio at %d kbps"), bitrate) :
wxString::Format(_("Exporting entire file at %d kbps"), bitrate));
- bool cancelling = false;
- while(!cancelling) {
+ int updateResult = eProgressSuccess;
+ while(updateResult == eProgressSuccess) {
sampleCount pcmNumSamples = mixer->Process(pcmBufferSize);
if (pcmNumSamples == 0)
@@ -290,7 +291,7 @@ bool ExportMP2::Export(AudacityProject *project,
outFile.Write(mp2Buffer, mp2BufferNumBytes);
- cancelling = !progress->Update(mixer->MixGetCurrentTime()-t0, t1-t0);
+ updateResult = progress->Update(mixer->MixGetCurrentTime()-t0, t1-t0);
}
delete progress;
@@ -322,7 +323,7 @@ bool ExportMP2::Export(AudacityProject *project,
outFile.Close();
- return !cancelling;
+ return updateResult;
}
bool ExportMP2::DisplayOptions(wxWindow *parent, int format)
diff --git a/src/export/ExportMP3.cpp b/src/export/ExportMP3.cpp
index 40696f1..ec8c217 100644
--- a/src/export/ExportMP3.cpp
+++ b/src/export/ExportMP3.cpp
@@ -1291,7 +1291,8 @@ void MP3Exporter::PutInfoTag(wxFFile & f, wxFileOffset off)
#if defined(__WXMSW__)
else if (beWriteInfoTag) {
f.Flush();
- beWriteInfoTag(mGF, OSFILENAME(f.GetName()));
+ beWriteInfoTag(mGF, OSOUTPUT(f.GetName()));
+ mGF = NULL;
}
#endif
else if (lame_mp3_tags_fid) {
@@ -1468,7 +1469,7 @@ public:
// Required
bool DisplayOptions(wxWindow *parent, int format = 0);
- bool Export(AudacityProject *project,
+ int Export(AudacityProject *project,
int channels,
wxString fName,
bool selectedOnly,
@@ -1504,7 +1505,7 @@ void ExportMP3::Destroy()
delete this;
}
-bool ExportMP3::Export(AudacityProject *project,
+int ExportMP3::Export(AudacityProject *project,
int channels,
wxString fName,
bool selectionOnly,
@@ -1628,7 +1629,7 @@ bool ExportMP3::Export(AudacityProject *project,
}
wxFileOffset pos = outFile.Tell();
- bool cancelling = false;
+ int updateResult = eProgressSuccess;
long bytes;
int bufferSize = exporter.GetOutBufferSize();
@@ -1643,6 +1644,7 @@ bool ExportMP3::Export(AudacityProject *project,
t0, t1,
channels, inSamples, true,
rate, int16Sample, true, mixerSpec);
+ delete [] waveTracks;
wxString title;
if (rmode == MODE_SET) {
@@ -1666,7 +1668,7 @@ bool ExportMP3::Export(AudacityProject *project,
ProgressDialog *progress = new ProgressDialog(wxFileName(fName).GetName(), title);
- while (!cancelling) {
+ while (updateResult == eProgressSuccess) {
sampleCount blockLen = mixer->Process(inSamples);
if (blockLen == 0) {
@@ -1701,7 +1703,7 @@ bool ExportMP3::Export(AudacityProject *project,
outFile.Write(buffer, bytes);
- cancelling = !progress->Update(mixer->MixGetCurrentTime()-t0, t1-t0);
+ updateResult = progress->Update(mixer->MixGetCurrentTime()-t0, t1-t0);
}
delete progress;
@@ -1726,6 +1728,9 @@ bool ExportMP3::Export(AudacityProject *project,
// Always write the info (Xing/Lame) tag. Until we stop supporting Lame
// versions before 3.98, we must do this after the MP3 file has been
// closed.
+ //
+ // Also, if beWriteInfoTag() is used, mGF will no longer be valid after
+ // this call, so do not use it.
exporter.PutInfoTag(outFile, pos);
// Close the file
@@ -1733,7 +1738,7 @@ bool ExportMP3::Export(AudacityProject *project,
delete [] buffer;
- return !cancelling;
+ return updateResult;
}
bool ExportMP3::DisplayOptions(wxWindow *parent, int format)
diff --git a/src/export/ExportMultiple.cpp b/src/export/ExportMultiple.cpp
index a73973c..6295cd9 100644
--- a/src/export/ExportMultiple.cpp
+++ b/src/export/ExportMultiple.cpp
@@ -505,7 +505,8 @@ void ExportMultiple::OnExport(wxCommandEvent& event)
}
// bool overwrite = mOverwrite->GetValue();
- bool ok;
+ int ok;
+ mExported.Empty();
if (mLabel->GetValue()) {
ok = ExportMultipleByLabel(mByName->GetValue(),
@@ -516,11 +517,42 @@ void ExportMultiple::OnExport(wxCommandEvent& event)
mPrefix->GetValue());
}
- if (!ok) {
- return;
+ // Give 'em the result
+ {
+ wxString msg;
+ msg.Printf(
+ ok == eProgressSuccess ? _("Successfully exported the following %ld file(s).")
+ : (ok == eProgressFailed ? _("Something went wrong after exporting the following %ld file(s).")
+ : (ok == eProgressCancelled ? _("Export canceled after exporting the following %ld file(s).")
+ : (ok == eProgressStopped ? _("Export stopped after exporting the following %ld file(s).")
+ : _("Something went really wrong after exporting the following %ld file(s).")
+ )
+ )
+ ), mExported.GetCount());
+
+ wxDialog dlg(this,
+ wxID_ANY,
+ wxString(_("ExportMultiple")));
+ ShuttleGui S(&dlg, eIsCreating);
+ S.StartVerticalLay();
+ {
+ S.AddTitle(msg);
+ S.SetStyle(wxLC_LIST | wxLC_SINGLE_SEL | wxLC_HRULES | wxSUNKEN_BORDER);
+ wxListCtrl *l = S.AddListControl();
+ for (size_t i = 0; i < mExported.GetCount(); i++) {
+ l->InsertItem(i, mExported[i]);
+ }
+
+ S.AddStandardButtons(eOkButton);
+ }
+ dlg.Fit();
+ dlg.Center();
+ dlg.ShowModal();
}
- EndModal(1);
+ if (ok == eProgressSuccess || ok == eProgressStopped) {
+ EndModal(1);
+ }
}
bool ExportMultiple::DirOk()
@@ -548,7 +580,7 @@ bool ExportMultiple::DirOk()
return fn.Mkdir(0777, wxPATH_MKDIR_FULL);
}
-bool ExportMultiple::ExportMultipleByLabel(bool byName, wxString prefix)
+int ExportMultiple::ExportMultipleByLabel(bool byName, wxString prefix)
{
wxASSERT(mProject);
bool tagsPrompt = mProject->GetShowId3Dialog();
@@ -620,11 +652,6 @@ bool ExportMultiple::ExportMultipleByLabel(bool byName, wxString prefix)
// store sanitised and user checjed name in object
setting.destfile.SetName(MakeFileName(name));
- if (setting.destfile.GetName().IsEmpty())
- { // user cancelled dialogue, or deleted everything in feild.
- // either way, cancel
- return false;
- }
wxASSERT(setting.destfile.IsOk()); // scream if file name is broke
// Make sure the (final) file name is unique within the set of exports
@@ -646,35 +673,27 @@ bool ExportMultiple::ExportMultipleByLabel(bool byName, wxString prefix)
l++; // next label, count up one
}
- bool ok = true; // did it work?
+ int ok = eProgressSuccess; // did it work?
int count = 0; // count the number of sucessful runs
ExportKit activeSetting; // pointer to the settings in use for this export
/* Go round again and do the exporting (so this run is slow but
* non-interactive) */
- for(count = 0; count < (numFiles); count++) {
+ for (count = 0; count < numFiles; count++) {
/* get the settings to use for the export from the array */
activeSetting = exportSettings[count];
// Export it
ok = DoExport(channels, activeSetting.destfile, false, activeSetting.t0, activeSetting.t1, activeSetting.filetags);
- if (!ok) {
+ if (ok != eProgressSuccess && ok != eProgressStopped) {
break;
}
}
- // Give 'em the result
- ::wxMessageBox(wxString::Format(ok
- ? _("Successfully exported %d file(s).")
- : _("Something went wrong after exporting %d file(s)."),
- count),
- _("Export Multiple"),
- wxOK | wxCENTRE, this);
-
return ok;
}
-bool ExportMultiple::ExportMultipleByTrack(bool byName,
- wxString prefix)
+int ExportMultiple::ExportMultipleByTrack(bool byName,
+ wxString prefix)
{
wxASSERT(mProject);
bool tagsPrompt = mProject->GetShowId3Dialog();
@@ -682,7 +701,7 @@ bool ExportMultiple::ExportMultipleByTrack(bool byName,
int channels = 0; // how many channels export?
int l = 0; // track counter
int numTracks = 0;
- bool ok = true;
+ int ok = eProgressSuccess;
wxArrayString otherNames;
wxArrayPtrVoid selected; /**< Array of pointers to the tracks which were
selected when we started */
@@ -826,7 +845,7 @@ bool ExportMultiple::ExportMultipleByTrack(bool byName,
}
// Stop if an error occurred
- if (!ok) {
+ if (ok != eProgressSuccess && ok != eProgressStopped) {
break;
}
// increment export counter
@@ -839,18 +858,10 @@ bool ExportMultiple::ExportMultipleByTrack(bool byName,
((Track *) selected[i])->SetSelected(true);
}
- // Give 'em the result
- ::wxMessageBox(wxString::Format(ok
- ? _("Successfully exported %d file(s).")
- : _("Something went wrong after exporting %d file(s)."),
- count),
- _("Export Multiple"),
- wxOK | wxCENTRE, this);
-
return ok;
}
-bool ExportMultiple::DoExport(int channels,
+int ExportMultiple::DoExport(int channels,
wxFileName name,
bool selectedOnly,
double t0,
@@ -862,8 +873,17 @@ bool ExportMultiple::DoExport(int channels,
if (selectedOnly) wxLogDebug(wxT("Selected Region Only"));
else wxLogDebug(wxT("Whole Project"));
- // Generate a unique name if we're not allowed to overwrite
- if (!mOverwrite->GetValue()) {
+ if (name.GetName().IsEmpty()) {
+ name.SetName(wxT("untitled"));
+ }
+
+ if (mOverwrite->GetValue()) {
+ // Make sure we don't overwrite (corrupt) alias files
+ if (!mProject->GetDirManager()->EnsureSafeFilename(name)) {
+ return false;
+ }
+ }
+ else {
int i = 2;
wxString base(name.GetName());
while (name.FileExists()) {
@@ -872,16 +892,21 @@ bool ExportMultiple::DoExport(int channels,
}
// Call the format export routine
- bool rc = mPlugins[mPluginIndex]->Export(mProject,
- channels,
- name.GetFullPath(),
- selectedOnly,
- t0,
- t1,
- NULL,
- &tags,
- mSubFormatIndex);
- return rc;
+ int success = mPlugins[mPluginIndex]->Export(mProject,
+ channels,
+ name.GetFullPath(),
+ selectedOnly,
+ t0,
+ t1,
+ NULL,
+ &tags,
+ mSubFormatIndex);
+
+ if (success == eProgressSuccess || success == eProgressStopped) {
+ mExported.Add(name.GetFullPath());
+ }
+
+ return success;
}
wxString ExportMultiple::MakeFileName(wxString input)
diff --git a/src/export/ExportMultiple.h b/src/export/ExportMultiple.h
index 45ab5c2..adf2778 100644
--- a/src/export/ExportMultiple.h
+++ b/src/export/ExportMultiple.h
@@ -51,7 +51,7 @@ private:
* labels that define them (true), or just numbered (false).
* @param prefix The string used to prefix the file number if files are being
* numbered rather than named */
- bool ExportMultipleByLabel(bool byName, wxString prefix);
+ int ExportMultipleByLabel(bool byName, wxString prefix);
/** \brief Export each track in the project to a separate file
*
@@ -59,19 +59,19 @@ private:
* (true), or just numbered (false).
* @param prefix The string used to prefix the file number if files are being
* numbered rather than named */
- bool ExportMultipleByTrack(bool byName, wxString prefix);
+ int ExportMultipleByTrack(bool byName, wxString prefix);
/** Export one file of an export multiple set
*
* Called once for each file in the list to do a (non-interactive) export
* @param channels Number of channels to export
* @param name The file name (and path) to export to
- * @param selectecOnly Should we export the selected tracks only?
+ * @param selectedOnly Should we export the selected tracks only?
* @param t0 Start time for export
* @param t1 End time for export
* @param tags Metadata to include in the file (if possible).
*/
- bool DoExport(int channels,
+ int DoExport(int channels,
wxFileName name,
bool selectedOnly,
double t0,
@@ -122,6 +122,9 @@ private:
selected export plug-in set by mPluginIndex */
bool mInitialized;
+ // List of file actually exported
+ wxArrayString mExported;
+
/** Array of characters not allowed to be in file names on this platform */
wxArrayString exclude;
diff --git a/src/export/ExportOGG.cpp b/src/export/ExportOGG.cpp
index 864832e..1b56fff 100644
--- a/src/export/ExportOGG.cpp
+++ b/src/export/ExportOGG.cpp
@@ -129,7 +129,7 @@ public:
// Required
bool DisplayOptions(wxWindow *parent, int format = 0);
- bool Export(AudacityProject *project,
+ int Export(AudacityProject *project,
int channels,
wxString fName,
bool selectedOnly,
@@ -160,7 +160,7 @@ void ExportOGG::Destroy()
delete this;
}
-bool ExportOGG::Export(AudacityProject *project,
+int ExportOGG::Export(AudacityProject *project,
int numChannels,
wxString fName,
bool selectionOnly,
@@ -175,7 +175,7 @@ bool ExportOGG::Export(AudacityProject *project,
double quality = (gPrefs->Read(wxT("/FileFormats/OggExportQuality"), 50)/(float)100.0);
wxLogNull logNo; // temporarily disable wxWindows error messages
- bool cancelling = false;
+ int updateResult = eProgressSuccess;
int eos = 0;
FileIO outFile(fName, FileIO::Output);
@@ -249,13 +249,14 @@ bool ExportOGG::Export(AudacityProject *project,
t0, t1,
numChannels, SAMPLES_PER_RUN, false,
rate, floatSample, true, mixerSpec);
+ delete [] waveTracks;
ProgressDialog *progress = new ProgressDialog(wxFileName(fName).GetName(),
selectionOnly ?
_("Exporting the selected audio as Ogg Vorbis") :
_("Exporting the entire project as Ogg Vorbis"));
- while (!cancelling && !eos) {
+ while (updateResult == eProgressSuccess && !eos) {
float **vorbis_buffer = vorbis_analysis_buffer(&dsp, SAMPLES_PER_RUN);
sampleCount samplesThisRun = mixer->Process(SAMPLES_PER_RUN);
@@ -311,7 +312,7 @@ bool ExportOGG::Export(AudacityProject *project,
}
}
- cancelling = !progress->Update(mixer->MixGetCurrentTime()-t0, t1-t0);
+ updateResult = progress->Update(mixer->MixGetCurrentTime()-t0, t1-t0);
}
delete progress;;
@@ -327,7 +328,7 @@ bool ExportOGG::Export(AudacityProject *project,
outFile.Close();
- return !cancelling;
+ return updateResult;
}
bool ExportOGG::DisplayOptions(wxWindow *parent, int format)
diff --git a/src/export/ExportPCM.cpp b/src/export/ExportPCM.cpp
index f8b6afa..f898fc3 100644
--- a/src/export/ExportPCM.cpp
+++ b/src/export/ExportPCM.cpp
@@ -322,7 +322,7 @@ public:
// Required
bool DisplayOptions(wxWindow *parent, int format = 0);
- bool Export(AudacityProject *project,
+ int Export(AudacityProject *project,
int channels,
wxString fName,
bool selectedOnly,
@@ -412,7 +412,7 @@ void ExportPCM::Destroy()
* file type, or giving the user full control over libsndfile. Set to 0
* (default) gives full control, 1 gives 16-bit AIFF, 2 gives 16-bit WAV
* 3 gives a GSM 6.10 WAV file */
-bool ExportPCM::Export(AudacityProject *project,
+int ExportPCM::Export(AudacityProject *project,
int numChannels,
wxString fName,
bool selectionOnly,
@@ -477,9 +477,17 @@ bool ExportPCM::Export(AudacityProject *project,
return false;
}
- ODManager::LockLibSndFileMutex();
- sf = sf_open(OSFILENAME(fName), SFM_WRITE, &info);
- ODManager::UnlockLibSndFileMutex();
+ wxFile f; // will be closed when it goes out of scope
+
+ if (f.Open(fName, wxFile::write)) {
+ // Even though there is an sf_open() that takes a filename, use the one that
+ // takes a file descriptor since wxWidgets can open a file with a Unicode name and
+ // libsndfile can't (under Windows).
+ ODManager::LockLibSndFileMutex();
+ sf = sf_open_fd(f.fd(), SFM_WRITE, &info, FALSE);
+ ODManager::UnlockLibSndFileMutex();
+ }
+
if (!sf) {
wxMessageBox(wxString::Format(_("Cannot export audio to %s"),
fName.c_str()));
@@ -502,7 +510,7 @@ bool ExportPCM::Export(AudacityProject *project,
int maxBlockLen = 44100 * 5;
- bool cancelling = false;
+ int updateResult = eProgressSuccess;
int numWaveTracks;
WaveTrack **waveTracks;
@@ -520,7 +528,7 @@ bool ExportPCM::Export(AudacityProject *project,
wxString::Format(_("Exporting the entire project as %s"),
formatStr.c_str()));
- while(!cancelling) {
+ while(updateResult == eProgressSuccess) {
sampleCount numSamples = mixer->Process(maxBlockLen);
if (numSamples == 0)
@@ -535,7 +543,7 @@ bool ExportPCM::Export(AudacityProject *project,
sf_writef_float(sf, (float *)mixed, numSamples);
ODManager::UnlockLibSndFileMutex();
- cancelling = !progress->Update(mixer->MixGetCurrentTime()-t0, t1-t0);
+ updateResult = progress->Update(mixer->MixGetCurrentTime()-t0, t1-t0);
}
delete progress;
@@ -567,7 +575,7 @@ bool ExportPCM::Export(AudacityProject *project,
AUDACITY_CREATOR);
#endif
- return !cancelling;
+ return updateResult;
}
bool ExportPCM::AddStrings(AudacityProject *project, SNDFILE *sf, Tags *tags)
@@ -682,12 +690,16 @@ void ExportPCM::AddID3Chunk(wxString fName, Tags *tags)
id3_length_t len;
len = id3_tag_render(tp, 0);
- id3_byte_t *buffer = (id3_byte_t *)malloc(len + 1);
+ if (len == 0) {
+ id3_tag_delete(tp);
+ return;
+ }
+
+ id3_byte_t *buffer = (id3_byte_t *)malloc(len);
if (buffer == NULL) {
id3_tag_delete(tp);
return;
}
- buffer[len + 1] = '\0';
len = id3_tag_render(tp, buffer);
@@ -753,17 +765,16 @@ bool ExportPCM::DisplayOptions(wxWindow *parent, int format)
wxString ExportPCM::GetExtension(int index)
{
-if (index == 0)
- { // get extension libsndfile thinks is correct for currently selected
- // format
- wxString fileext = sf_header_extension(ReadExportFormatPref());
- return fileext;
+ if (index == 0) {
+ // get extension libsndfile thinks is correct for currently selected format
+ return sf_header_extension(ReadExportFormatPref());
}
-else
- { // do as the default in Export.cpp
- return mFormatInfos[index]->mExtensions[0];
+ else {
+ // return the default
+ return ExportPlugin::GetExtension(index);
}
}
+
//----------------------------------------------------------------------------
// Constructor
//----------------------------------------------------------------------------
diff --git a/src/import/Import.cpp b/src/import/Import.cpp
index 70fe615..fcdb9dc 100644
--- a/src/import/Import.cpp
+++ b/src/import/Import.cpp
@@ -55,6 +55,7 @@ and ImportLOF.cpp.
#include "ImportLOF.h"
#include "ImportFLAC.h"
#include "ImportFFmpeg.h"
+#include "ImportGStreamer.h"
#include "../Track.h"
#include "../Prefs.h"
@@ -82,6 +83,10 @@ Importer::Importer()
#if defined(USE_FFMPEG)
GetFFmpegImportPlugin(mImportPluginList, mUnusableImportPluginList);
#endif
+ #if defined(USE_GSTREAMER)
+ GetGStreamerImportPlugin(mImportPluginList, mUnusableImportPluginList);
+ #endif
+
}
Importer::~Importer()
@@ -94,7 +99,7 @@ Importer::~Importer()
void Importer::GetSupportedImportFormats(FormatList *formatList)
{
- ImportPluginList::Node *importPluginNode = mImportPluginList->GetFirst();
+ ImportPluginList::compatibility_iterator importPluginNode = mImportPluginList->GetFirst();
while(importPluginNode)
{
ImportPlugin *importPlugin = importPluginNode->GetData();
@@ -117,11 +122,11 @@ int Importer::Import(wxString fName,
wxString extension = fName.AfterLast(wxT('.'));
// This list is used to call plugins in correct order
- ImportPluginList *importPlugins = new ImportPluginList;
+ ImportPluginList importPlugins;
bool haveCompatiblePlugin = false;
- ImportPluginList::Node *importPluginNode;
+ ImportPluginList::compatibility_iterator importPluginNode;
// If user explicitly selected a filter,
// then we should try importing via corresponding plugin first
@@ -135,11 +140,11 @@ int Importer::Import(wxString fName,
if (plugin->GetPluginFormatDescription().CompareTo(type) == 0)
{
// This plugin corresponds to user-selected filter, try it first.
- importPlugins->Insert(plugin);
+ importPlugins.Insert(plugin);
}
else if (plugin->SupportsExtension(extension))
{
- importPlugins->Append(plugin);
+ importPlugins.Append(plugin);
}
if (plugin->SupportsExtension(extension))
haveCompatiblePlugin = true;
@@ -151,18 +156,18 @@ int Importer::Import(wxString fName,
while(importPluginNode)
{
ImportPlugin *plugin = importPluginNode->GetData();
- if (importPlugins->Find(plugin) == NULL)
+ if (importPlugins.Find(plugin) == NULL)
{
// Skip MP3 import plugin. Opens some non-mp3 audio files (ac3 for example) as garbage.
if (plugin->GetPluginFormatDescription().CompareTo( _("MP3 files") ) != 0)
{
- importPlugins->Append(plugin);
+ importPlugins.Append(plugin);
}
}
importPluginNode = importPluginNode->GetNext();
}
- importPluginNode = importPlugins->GetFirst();
+ importPluginNode = importPlugins.GetFirst();
while(importPluginNode)
{
ImportPlugin *plugin = importPluginNode->GetData();
@@ -191,7 +196,7 @@ int Importer::Import(wxString fName,
delete inFile;
- if (res == eImportSuccess)
+ if (res == eProgressSuccess || res == eProgressStopped)
{
// LOF ("list-of-files") has different semantics
if (extension.IsSameAs(wxT("lof"), false))
@@ -203,7 +208,7 @@ int Importer::Import(wxString fName,
}
}
- if (res == eImportCancelled)
+ if (res == eProgressCancelled || res == eProgressFailed)
{
return 0;
}
@@ -219,7 +224,7 @@ int Importer::Import(wxString fName,
// None of our plugins can handle this file. It might be that
// Audacity supports this format, but support was not compiled in.
// If so, notify the user of this fact
- UnusableImportPluginList::Node *unusableImporterNode
+ UnusableImportPluginList::compatibility_iterator unusableImporterNode
= mUnusableImportPluginList->GetFirst();
while(unusableImporterNode)
{
diff --git a/src/import/ImportFFmpeg.cpp b/src/import/ImportFFmpeg.cpp
index d0617fb..e57d61d 100644
--- a/src/import/ImportFFmpeg.cpp
+++ b/src/import/ImportFFmpeg.cpp
@@ -270,8 +270,12 @@ private:
int mNumStreams; //!< mNumstreams is less or equal to mFormatContext->nb_streams
streamContext **mScs; //!< Array of pointers to stream contexts. Length is mNumStreams.
wxArrayString *mStreamInfo; //!< Array of stream descriptions. Length is mNumStreams
+
+ wxInt64 mProgressPos; //!< Current timestamp, file position or whatever is used as first argument for Update()
+ wxInt64 mProgressLen; //!< Duration, total length or whatever is used as second argument for Update()
bool mCancelled; //!< True if importing was canceled by user
+ bool mStopped; //!< True if importing was stopped by user
wxString mName;
WaveTrack ***mChannels; //!< 2-dimentional array of WaveTrack's. First dimention - streams, second - channels of a stream. Length is mNumStreams
};
@@ -344,9 +348,12 @@ FFmpegImportFileHandle::FFmpegImportFileHandle(const wxString & name)
mFormatContext = NULL;
mNumStreams = 0;
mScs = NULL;
- mCancelled =false;
+ mCancelled = false;
+ mStopped = false;
mName = name;
mChannels = NULL;
+ mProgressPos = 0;
+ mProgressLen = 1;
}
bool FFmpegImportFileHandle::Init()
@@ -357,7 +364,7 @@ bool FFmpegImportFileHandle::Init()
FFmpegLibsInst->av_log_set_callback(av_log_wx_callback);
- int err = FFmpegLibsInst->av_open_input_file(&mFormatContext,OSFILENAME(mName),NULL,0, NULL);
+ int err = ufile_fopen_input(&mFormatContext, mName);
if (err < 0)
{
wxLogMessage(wxT("FFmpeg : av_open_input_file() failed for file %s"),mName.c_str());
@@ -496,7 +503,6 @@ int FFmpegImportFileHandle::Import(TrackFactory *trackFactory,
break;
case 1:
mChannels[s][c]->SetChannel(Track::RightChannel);
- mChannels[s][c]->SetTeamed(true);
break;
}
}
@@ -531,15 +537,15 @@ int FFmpegImportFileHandle::Import(TrackFactory *trackFactory,
// This is the heart of the importing process
streamContext *sc = NULL;
// The result of Import() to be returend. It will be something other than zero if user canceled or some error appears.
- int res = 0;
+ int res = eProgressSuccess;
// Read next frame.
- while ((sc = ReadNextFrame()) != NULL && (res == 0))
+ while ((sc = ReadNextFrame()) != NULL && (res == eProgressSuccess))
{
// ReadNextFrame returns 1 if stream is not to be imported
if (sc != (streamContext*)1)
{
// Decode frame until it is not possible to decode any further
- while (sc->m_pktRemainingSiz > 0 && (res == 0))
+ while (sc->m_pktRemainingSiz > 0 && (res == eProgressSuccess || res == eProgressStopped))
{
if (DecodeFrame(sc,false) < 0)
break;
@@ -552,14 +558,14 @@ int FFmpegImportFileHandle::Import(TrackFactory *trackFactory,
// Cleanup after frame decoding
if (sc->m_pktValid)
{
- av_free_packet(&sc->m_pkt);
+ FFmpegLibsInst->av_free_packet(&sc->m_pkt);
sc->m_pktValid = 0;
}
}
}
// Flush the decoders.
- if ((mNumStreams != 0) && (res == 0))
+ if ((mNumStreams != 0) && (res == eProgressSuccess || res == eProgressStopped))
{
for (int i = 0; i < mNumStreams; i++)
{
@@ -569,7 +575,7 @@ int FFmpegImportFileHandle::Import(TrackFactory *trackFactory,
if (mScs[i]->m_pktValid)
{
- av_free_packet(&mScs[i]->m_pkt);
+ FFmpegLibsInst->av_free_packet(&mScs[i]->m_pkt);
mScs[i]->m_pktValid = 0;
}
}
@@ -577,7 +583,7 @@ int FFmpegImportFileHandle::Import(TrackFactory *trackFactory,
}
// Something bad happened - destroy everything!
- if (res)
+ if (res == eProgressCancelled || res == eProgressFailed)
{
for (int s = 0; s < mNumStreams; s++)
{
@@ -585,11 +591,9 @@ int FFmpegImportFileHandle::Import(TrackFactory *trackFactory,
}
delete[] mChannels;
- if (mCancelled)
- return eImportCancelled;
- else
- return eImportFailed;
+ return res;
}
+ //else if (res == 2), we just stop the decoding as if the file has ended
*outNumTracks = 0;
for (int s = 0; s < mNumStreams; s++)
@@ -616,7 +620,7 @@ int FFmpegImportFileHandle::Import(TrackFactory *trackFactory,
// Save metadata
WriteMetadata(mFormatContext,tags);
- return eImportSuccess;
+ return res;
}
streamContext *FFmpegImportFileHandle::ReadNextFrame()
@@ -640,7 +644,7 @@ streamContext *FFmpegImportFileHandle::ReadNextFrame()
// When not all streams are selected for import this will happen very often.
if (sc == NULL)
{
- av_free_packet(&pkt);
+ FFmpegLibsInst->av_free_packet(&pkt);
return (streamContext*)1;
}
@@ -777,13 +781,28 @@ int FFmpegImportFileHandle::WriteData(streamContext *sc)
free(tmp);
// Try to update the progress indicator (and see if user wants to cancel)
- if (!mProgress->Update((wxLongLong)sc->m_pkt.pts * sc->m_stream->time_base.num / sc->m_stream->time_base.den,
- (wxLongLong)(mFormatContext->duration > 0 ? mFormatContext->duration / AV_TIME_BASE: 1))) {
- mCancelled = true;
- return 1;
+ int updateResult = eProgressSuccess;
+ // PTS (presentation time) is the proper way of getting current position
+ if (sc->m_pkt.pts != AV_NOPTS_VALUE && mFormatContext->duration != AV_NOPTS_VALUE)
+ {
+ mProgressPos = sc->m_pkt.pts * sc->m_stream->time_base.num / sc->m_stream->time_base.den;
+ mProgressLen = (mFormatContext->duration > 0 ? mFormatContext->duration / AV_TIME_BASE: 1);
+ }
+ // When PTS is not set, use number of frames and number of current frame
+ else if (sc->m_stream->nb_frames > 0 && sc->m_codecCtx->frame_number > 0 && sc->m_codecCtx->frame_number <= sc->m_stream->nb_frames)
+ {
+ mProgressPos = sc->m_codecCtx->frame_number;
+ mProgressLen = sc->m_stream->nb_frames;
}
+ // When number of frames is unknown, use position in file
+ else if (mFormatContext->file_size > 0 && sc->m_pkt.pos > 0 && sc->m_pkt.pos <= mFormatContext->file_size)
+ {
+ mProgressPos = sc->m_pkt.pos;
+ mProgressLen = mFormatContext->file_size;
+ }
+ updateResult = mProgress->Update(mProgressPos, mProgressLen != 0 ? mProgressLen : 1);
- return 0;
+ return updateResult;
}
void FFmpegImportFileHandle::WriteMetadata(AVFormatContext *avf,Tags *tags)
@@ -818,6 +837,9 @@ FFmpegImportFileHandle::~FFmpegImportFileHandle()
delete mScs[i];
}
+ free(mScs);
+
+ delete mStreamInfo;
DropFFmpegLibs();
}
diff --git a/src/import/ImportFLAC.cpp b/src/import/ImportFLAC.cpp
index 805f297..39c5676 100644
--- a/src/import/ImportFLAC.cpp
+++ b/src/import/ImportFLAC.cpp
@@ -40,6 +40,8 @@
#include "../Tags.h"
+#define FLAC_HEADER "fLaC"
+
#define DESC _("FLAC files")
static const wxChar *exts[] =
@@ -76,6 +78,12 @@ void GetFLACImportPlugin(ImportPluginList *importPluginList,
#include "../WaveTrack.h"
#include "ImportPlugin.h"
+#ifdef USE_LIBID3TAG
+extern "C" {
+#include <id3tag.h>
+}
+#endif
+
/* FLACPP_API_VERSION_CURRENT is 6 for libFLAC++ from flac-1.1.3 (see <FLAC++/export.h>) */
#if !defined FLACPP_API_VERSION_CURRENT || FLACPP_API_VERSION_CURRENT < 6
#define LEGACY_FLAC
@@ -151,13 +159,14 @@ public:
private:
sampleFormat mFormat;
MyFLACFile *mFile;
+ wxFFile mHandle;
unsigned long mSampleRate;
unsigned long mNumChannels;
unsigned long mBitsPerSample;
FLAC__uint64 mNumSamples;
FLAC__uint64 mSamplesDone;
bool mStreamInfoDone;
- bool mCancelled;
+ int mUpdateResult;
WaveTrack **mChannels;
};
@@ -250,8 +259,9 @@ FLAC__StreamDecoderWriteStatus MyFLACFile::write_callback(const FLAC__Frame *fra
mFile->mSamplesDone += frame->header.blocksize;
- if (!mFile->mProgress->Update((wxULongLong_t) mFile->mSamplesDone, mFile->mNumSamples != 0 ? (wxULongLong_t)mFile->mNumSamples : 1)) {
- mFile->mCancelled = true;
+ mFile->mUpdateResult = mFile->mProgress->Update((wxULongLong_t) mFile->mSamplesDone, mFile->mNumSamples != 0 ? (wxULongLong_t)mFile->mNumSamples : 1);
+ if (mFile->mUpdateResult != eProgressSuccess)
+ {
return FLAC__STREAM_DECODER_WRITE_STATUS_ABORT;
}
@@ -275,12 +285,29 @@ wxString FLACImportPlugin::GetPluginFormatDescription()
ImportFileHandle *FLACImportPlugin::Open(wxString filename)
{
// First check if it really is a FLAC file
-
+
+ int cnt;
wxFile binaryFile;
- if (!binaryFile.Open(filename))
+ if (!binaryFile.Open(filename)) {
return false; // File not found
+ }
+#ifdef USE_LIBID3TAG
+ // Skip any ID3 tags that might be present
+ id3_byte_t query[ID3_TAG_QUERYSIZE];
+ cnt = binaryFile.Read(query, sizeof(query));
+ cnt = id3_tag_query(query, cnt);
+ binaryFile.Seek(cnt);
+#endif
+
+ char buf[5];
+ cnt = binaryFile.Read(buf, 4);
binaryFile.Close();
+
+ if (cnt == wxInvalidOffset || strncmp(buf, FLAC_HEADER, 4) != 0) {
+ // File is not a FLAC file
+ return false;
+ }
// Open the file for import
FLACImportFileHandle *handle = new FLACImportFileHandle(filename);
@@ -299,7 +326,7 @@ FLACImportFileHandle::FLACImportFileHandle(const wxString & name)
: ImportFileHandle(name),
mSamplesDone(0),
mStreamInfoDone(false),
- mCancelled(false)
+ mUpdateResult(eProgressSuccess)
{
mFormat = (sampleFormat)
gPrefs->Read(wxT("/SamplingRate/DefaultProjectSampleFormat"), floatSample);
@@ -309,7 +336,7 @@ FLACImportFileHandle::FLACImportFileHandle(const wxString & name)
bool FLACImportFileHandle::Init()
{
#ifdef LEGACY_FLAC
- bool success = mFile->set_filename(OSFILENAME(mFilename));
+ bool success = mFile->set_filename(OSINPUT(mFilename));
if (!success) {
return false;
}
@@ -320,7 +347,20 @@ bool FLACImportFileHandle::Init()
return false;
}
#else
- if (mFile->init(OSFILENAME(mFilename)) != FLAC__STREAM_DECODER_INIT_STATUS_OK) {
+ if (!mHandle.Open(mFilename, wxT("rb"))) {
+ return false;
+ }
+
+ // Even though there is an init() method that takes a filename, use the one that
+ // takes a file handle because wxWidgets can open a file with a Unicode name and
+ // libflac can't (under Windows).
+ //
+ // Responsibility for closing the file is passed to libflac.
+ // (it happens when mFile->finish() is called)
+ bool result = mFile->init(mHandle.fp())?true:false;
+ mHandle.Detach();
+
+ if (result != FLAC__STREAM_DECODER_INIT_STATUS_OK) {
return false;
}
#endif
@@ -381,7 +421,6 @@ int FLACImportFileHandle::Import(TrackFactory *trackFactory,
break;
case 1:
mChannels[c]->SetChannel(Track::RightChannel);
- mChannels[c]->SetTeamed(true);
break;
}
}
@@ -396,13 +435,13 @@ int FLACImportFileHandle::Import(TrackFactory *trackFactory,
bool res = (mFile->process_until_end_of_stream() != 0);
#endif
- if (!res) {
+ if (mUpdateResult == eProgressFailed || mUpdateResult == eProgressCancelled) {
for(c = 0; c < mNumChannels; c++) {
delete mChannels[c];
}
delete[] mChannels;
- return (mCancelled ? eImportCancelled : eImportFailed);
+ return mUpdateResult;
}
*outNumTracks = mNumChannels;
@@ -427,7 +466,7 @@ int FLACImportFileHandle::Import(TrackFactory *trackFactory,
tags->SetTag(name, value);
}
- return eImportSuccess;
+ return mUpdateResult;
}
diff --git a/src/import/ImportLOF.cpp b/src/import/ImportLOF.cpp
index dfcffc3..cbb0609 100644
--- a/src/import/ImportLOF.cpp
+++ b/src/import/ImportLOF.cpp
@@ -231,7 +231,7 @@ int LOFImportFileHandle::Import(TrackFactory *trackFactory, Track ***outTracks,
if(mTextFile->Eof())
{
mTextFile->Close();
- return eImportFailed;
+ return eProgressFailed;
}
wxString line = mTextFile->GetFirstLine();
@@ -251,9 +251,9 @@ int LOFImportFileHandle::Import(TrackFactory *trackFactory, Track ***outTracks,
// exited ok
if(mTextFile->Close())
- return eImportSuccess;
+ return eProgressSuccess;
- return eImportFailed;
+ return eProgressFailed;
}
static int CountNumTracks(AudacityProject *proj)
diff --git a/src/import/ImportMP3.cpp b/src/import/ImportMP3.cpp
index db1c5c9..5e89de8 100644
--- a/src/import/ImportMP3.cpp
+++ b/src/import/ImportMP3.cpp
@@ -98,7 +98,7 @@ struct private_data {
WaveTrack **channels;
ProgressDialog *progress;
int numChannels;
- bool cancelled;
+ int updateResult;
bool id3checked;
};
@@ -214,7 +214,7 @@ int MP3ImportFileHandle::Import(TrackFactory *trackFactory, Track ***outTracks,
mPrivateData.inputBuffer = new unsigned char [INPUT_BUFFER_SIZE];
mPrivateData.progress = mProgress;
mPrivateData.channels = NULL;
- mPrivateData.cancelled = false;
+ mPrivateData.updateResult= eProgressSuccess;
mPrivateData.id3checked = false;
mPrivateData.numChannels = 0;
mPrivateData.trackFactory= trackFactory;
@@ -225,7 +225,8 @@ int MP3ImportFileHandle::Import(TrackFactory *trackFactory, Track ***outTracks,
bool res = (mad_decoder_run(&mDecoder, MAD_DECODER_MODE_SYNC) == 0) &&
(mPrivateData.numChannels > 0) &&
- (!mPrivateData.cancelled);
+ !(mPrivateData.updateResult == eProgressCancelled) &&
+ !(mPrivateData.updateResult == eProgressFailed);
mad_decoder_finish(&mDecoder);
@@ -241,7 +242,7 @@ int MP3ImportFileHandle::Import(TrackFactory *trackFactory, Track ***outTracks,
}
delete[] mPrivateData.channels;
- return (mPrivateData.cancelled ? eImportCancelled : eImportFailed);
+ return (mPrivateData.updateResult);
}
/* success */
@@ -260,7 +261,7 @@ int MP3ImportFileHandle::Import(TrackFactory *trackFactory, Track ***outTracks,
/* Read in any metadata */
ImportID3(tags);
- return eImportSuccess;
+ return mPrivateData.updateResult;
}
MP3ImportFileHandle::~MP3ImportFileHandle()
@@ -275,12 +276,24 @@ MP3ImportFileHandle::~MP3ImportFileHandle()
void MP3ImportFileHandle::ImportID3(Tags *tags)
{
-#ifdef USE_LIBID3TAG
- struct id3_file *fp = id3_file_open(OSFILENAME(mFilename), ID3_FILE_MODE_READONLY);
+#ifdef USE_LIBID3TAG
+ wxFile f; // will be closed when it goes out of scope
+ struct id3_file *fp = NULL;
+
+ if (f.Open(mFilename)) {
+ // Use id3_file_fdopen() instead of id3_file_open since wxWidgets can open a
+ // file with a Unicode name and id3_file_open() can't (under Windows).
+ fp = id3_file_fdopen(f.fd(), ID3_FILE_MODE_READONLY);
+ }
+
if (!fp) {
return;
}
+ // The file descriptor is now owned by "fp", so we must tell "f" to forget
+ // about it.
+ f.Detach();
+
struct id3_tag *tp = id3_file_tag(fp);
if (!tp) {
id3_file_close(fp);
@@ -391,13 +404,12 @@ enum mad_flow input_cb(void *_data, struct mad_stream *stream)
{
struct private_data *data = (struct private_data *)_data;
- data->cancelled = !data->progress->Update((wxULongLong_t)data->file->Tell(),
+ data->updateResult = data->progress->Update((wxULongLong_t)data->file->Tell(),
(wxULongLong_t)data->file->Length());
- if(data->cancelled)
+ if(data->updateResult != eProgressSuccess)
return MAD_FLOW_STOP;
if(data->file->Eof()) {
- data->cancelled = false;
return MAD_FLOW_STOP;
}
@@ -406,7 +418,7 @@ enum mad_flow input_cb(void *_data, struct mad_stream *stream)
data->file->Read(data->inputBuffer, ID3_TAG_QUERYSIZE);
int len = id3_tag_query(data->inputBuffer, ID3_TAG_QUERYSIZE);
if (len > 0) {
- data->file->Seek(len, wxFromCurrent);
+ data->file->Seek(len, wxFromStart);
}
else {
data->file->Seek(0);
@@ -477,7 +489,6 @@ enum mad_flow output_cb(void *_data,
data->channels[0]->SetChannel(Track::LeftChannel);
data->channels[1]->SetChannel(Track::RightChannel);
data->channels[0]->SetLinked(true);
- data->channels[1]->SetTeamed(true);
}
data->numChannels = channels;
}
diff --git a/src/import/ImportOGG.cpp b/src/import/ImportOGG.cpp
index 2c8674d..1c79d4a 100644
--- a/src/import/ImportOGG.cpp
+++ b/src/import/ImportOGG.cpp
@@ -257,7 +257,6 @@ int OggImportFileHandle::Import(TrackFactory *trackFactory, Track ***outTracks,
break;
case 1:
mChannels[i][c]->SetChannel(Track::RightChannel);
- mChannels[i][c]->SetTeamed(true);
break;
}
}
@@ -285,7 +284,7 @@ int OggImportFileHandle::Import(TrackFactory *trackFactory, Track ***outTracks,
endian = 1; // big endian
/* number of samples currently in each channel's buffer */
- bool cancelled = false;
+ int updateResult = eProgressSuccess;
long bytesRead = 0;
long samplesRead = 0;
int bitstream = 0;
@@ -327,18 +326,20 @@ int OggImportFileHandle::Import(TrackFactory *trackFactory, Track ***outTracks,
samplesSinceLastCallback += samplesRead;
if (samplesSinceLastCallback > SAMPLES_PER_CALLBACK) {
- cancelled = !mProgress->Update(ov_time_tell(mVorbisFile),
+ updateResult = mProgress->Update(ov_time_tell(mVorbisFile),
ov_time_total(mVorbisFile, bitstream));
samplesSinceLastCallback -= SAMPLES_PER_CALLBACK;
}
- } while (!cancelled && bytesRead != 0);
+ } while (updateResult == eProgressSuccess && bytesRead != 0);
delete[]mainBuffer;
- bool res = (!cancelled && bytesRead >= 0);
+ int res = updateResult;
+ if (bytesRead < 0)
+ res = eProgressFailed;
- if (!res) {
+ if (res == eProgressFailed || res == eProgressCancelled) {
for (i = 0; i < mVorbisFile->links; i++)
{
if (mChannels[i])
@@ -351,7 +352,7 @@ int OggImportFileHandle::Import(TrackFactory *trackFactory, Track ***outTracks,
}
}
delete[] mChannels;
- return (cancelled ? eImportCancelled : eImportFailed);
+ return res;
}
*outNumTracks = 0;
@@ -394,7 +395,7 @@ int OggImportFileHandle::Import(TrackFactory *trackFactory, Track ***outTracks,
}
}
- return eImportSuccess;
+ return res;
}
OggImportFileHandle::~OggImportFileHandle()
diff --git a/src/import/ImportPCM.cpp b/src/import/ImportPCM.cpp
index 4abb67c..2c75daa 100644
--- a/src/import/ImportPCM.cpp
+++ b/src/import/ImportPCM.cpp
@@ -118,11 +118,24 @@ wxString PCMImportPlugin::GetPluginFormatDescription()
ImportFileHandle *PCMImportPlugin::Open(wxString filename)
{
SF_INFO info;
- SNDFILE *file;
+ SNDFILE *file = NULL;
memset(&info, 0, sizeof(info));
- file = sf_open(OSFILENAME(filename), SFM_READ, &info);
+ wxFile f; // will be closed when it goes out of scope
+
+ if (f.Open(filename)) {
+ // Even though there is an sf_open() that takes a filename, use the one that
+ // takes a file descriptor since wxWidgets can open a file with a Unicode name and
+ // libsndfile can't (under Windows).
+ file = sf_open_fd(f.fd(), SFM_READ, &info, TRUE);
+ }
+
+ // The file descriptor is now owned by "file", so we must tell "f" to leave
+ // it alone. The file descriptor is closed by sf_open_fd() even if an error
+ // occurs.
+ f.Detach();
+
if (!file) {
// TODO: Handle error
//char str[1000];
@@ -196,12 +209,11 @@ int PCMImportFileHandle::Import(TrackFactory *trackFactory,
if (mInfo.channels == 2) {
channels[0]->SetLinked(true);
- channels[1]->SetTeamed(true);
}
sampleCount fileTotalFrames = (sampleCount)mInfo.frames;
sampleCount maxBlockSize = channels[0]->GetMaxBlockSize();
- bool cancelled = false;
+ int updateResult = false;
wxString copyEdit =
gPrefs->Read(wxT("/FileFormats/CopyOrEditUncompressedData"), wxT("edit"));
@@ -246,12 +258,11 @@ int PCMImportFileHandle::Import(TrackFactory *trackFactory,
for (c = 0; c < mInfo.channels; c++)
channels[c]->AppendAlias(mFilename, i, blockLen, c,useOD);
- cancelled = !mProgress->Update(i, fileTotalFrames);
- if (cancelled)
+ updateResult = mProgress->Update(i, fileTotalFrames);
+ if (updateResult != eProgressSuccess)
break;
}
-#ifdef EXPERIMENTAL_ONDEMAND
//now go over the wavetrack/waveclip/sequence and load all the blockfiles into a ComputeSummaryTask.
//Add this task to the ODManager and the Track itself.
wxLogDebug(wxT("Importing PCM \n"));
@@ -274,8 +285,6 @@ int PCMImportFileHandle::Import(TrackFactory *trackFactory,
if(!moreThanStereo)
ODManager::Instance()->AddNewTask(computeTask);
}
-#endif
-
}
else {
// Otherwise, we're in the "copy" mode, where we read in the actual
@@ -315,20 +324,23 @@ int PCMImportFileHandle::Import(TrackFactory *trackFactory,
framescompleted += block;
}
- cancelled = !mProgress->Update((long long unsigned)framescompleted,
+ updateResult = mProgress->Update((long long unsigned)framescompleted,
(long long unsigned)fileTotalFrames);
- if (cancelled)
+ if (updateResult != eProgressSuccess)
break;
} while (block > 0);
+
+ DeleteSamples(buffer);
+ DeleteSamples(srcbuffer);
}
- if (cancelled) {
+ if (updateResult == eProgressFailed || updateResult == eProgressCancelled) {
for (c = 0; c < mInfo.channels; c++)
delete channels[c];
delete[] channels;
- return eImportCancelled;
+ return updateResult;
}
*outNumTracks = mInfo.channels;
@@ -382,8 +394,11 @@ int PCMImportFileHandle::Import(TrackFactory *trackFactory,
f.Seek(12); // Skip filetype, length, and formtype
- while (!f.Eof()) {
+ while (!f.Error()) {
f.Read(id, 4); // Get chunk type
+ if (f.Eof()) {
+ break;
+ }
f.Read(&len, 4);
len = wxUINT32_SWAP_ON_LE(len);
@@ -506,7 +521,7 @@ int PCMImportFileHandle::Import(TrackFactory *trackFactory,
//comment out to undo profiling.
//END_TASK_PROFILING("Pre-GSOC (PCMAliasBlockFile) open an 80 mb wav stereo file");
- return eImportSuccess;
+ return updateResult;
}
PCMImportFileHandle::~PCMImportFileHandle()
diff --git a/src/import/ImportPlugin.h b/src/import/ImportPlugin.h
index aba199c..e7e1297 100644
--- a/src/import/ImportPlugin.h
+++ b/src/import/ImportPlugin.h
@@ -68,13 +68,6 @@ class Tags;
class ImportFileHandle;
-enum
-{
- eImportSuccess,
- eImportCancelled,
- eImportFailed
-};
-
class ImportPlugin
{
public:
diff --git a/src/import/ImportQT.cpp b/src/import/ImportQT.cpp
index 92ac562..71f73c9 100644
--- a/src/import/ImportQT.cpp
+++ b/src/import/ImportQT.cpp
@@ -397,7 +397,7 @@ int QTImportFileHandle::Import(TrackFactory *trackFactory, Track ***outTracks,
fillBufferUPP = NewSoundConverterFillBufferDataUPP(SoundConverterFillBufferCallback);
bool done = false;
- bool cancelled = false;
+ int updateResult = eProgressSuccess;
sampleCount samplesSinceLastCallback = 0;
UInt32 outputFrames;
UInt32 outputBytes;
@@ -405,7 +405,7 @@ int QTImportFileHandle::Import(TrackFactory *trackFactory, Track ***outTracks,
#define SAMPLES_PER_CALLBACK 10000
- while(!done && !cancelled)
+ while(!done && updateResult == eProgressSuccess)
{
err = SoundConverterFillBuffer(soundConverter, // a sound converter
fillBufferUPP, // the callback
@@ -430,8 +430,8 @@ int QTImportFileHandle::Import(TrackFactory *trackFactory, Track ***outTracks,
samplesSinceLastCallback += outputFrames;
if( samplesSinceLastCallback > SAMPLES_PER_CALLBACK )
{
- cancelled = !mProgress->Update((wxULongLong_t)cbData.getMediaAtThisTime,
- (wxULongLong_t)cbData.sourceDuration);
+ updateResult = mProgress->Update((wxULongLong_t)cbData.getMediaAtThisTime,
+ (wxULongLong_t)cbData.sourceDuration);
samplesSinceLastCallback -= SAMPLES_PER_CALLBACK;
}
}
@@ -453,7 +453,7 @@ int QTImportFileHandle::Import(TrackFactory *trackFactory, Track ***outTracks,
channels[c]->Flush();
}
- bool res = (!cancelled && err == noErr);
+ bool res = (updateResult == eProgressSuccess && err == noErr);
//
// Extract any metadata
@@ -472,7 +472,7 @@ int QTImportFileHandle::Import(TrackFactory *trackFactory, Track ***outTracks,
delete channels[c];
delete[] channels;
- return (cancelled ? eImportCancelled : eImportFailed);
+ return (updateResult == eProgressCancelled ? eProgressCancelled : eProgressFailed);
}
*outNumTracks = outputFormat.numChannels;
@@ -481,7 +481,7 @@ int QTImportFileHandle::Import(TrackFactory *trackFactory, Track ***outTracks,
(*outTracks)[c] = channels[c];
delete[] channels;
- return eImportSuccess;
+ return eProgressSuccess;
}
static const struct
diff --git a/src/import/ImportRaw.cpp b/src/import/ImportRaw.cpp
index 15bd5cb..ed70637 100644
--- a/src/import/ImportRaw.cpp
+++ b/src/import/ImportRaw.cpp
@@ -98,7 +98,7 @@ int ImportRaw(wxWindow *parent, wxString fileName,
sampleCount totalFrames;
double rate = 44100.0;
double percent = 100.0;
- SNDFILE *sndFile;
+ SNDFILE *sndFile = NULL;
SF_INFO sndInfo;
int result;
@@ -130,8 +130,16 @@ int ImportRaw(wxWindow *parent, wxString fileName,
sndInfo.channels = (int)numChannels;
sndInfo.format = encoding | SF_FORMAT_RAW;
- sndFile = sf_open(OSFILENAME(fileName), SFM_READ, &sndInfo);
- if (!sndFile) {
+ wxFile f; // will be closed when it goes out of scope
+
+ if (f.Open(fileName)) {
+ // Even though there is an sf_open() that takes a filename, use the one that
+ // takes a file descriptor since wxWidgets can open a file with a Unicode name and
+ // libsndfile can't (under Windows).
+ sndFile = sf_open_fd(f.fd(), SFM_READ, &sndInfo, FALSE);
+ }
+
+ if (!sndFile){
// TODO: Handle error
char str[1000];
sf_error_str((SNDFILE *)NULL, str, 1000);
@@ -187,11 +195,10 @@ int ImportRaw(wxWindow *parent, wxString fileName,
if (numChannels == 2) {
channels[0]->SetLinked(true);
- channels[1]->SetTeamed(true);
}
sampleCount maxBlockSize = channels[0]->GetMaxBlockSize();
- bool cancelled = false;
+ int updateResult = eProgressSuccess;
samplePtr srcbuffer = NewSamples(maxBlockSize * numChannels, format);
samplePtr buffer = NewSamples(maxBlockSize, format);
@@ -234,22 +241,25 @@ int ImportRaw(wxWindow *parent, wxString fileName,
framescompleted += block;
}
- cancelled = !progress.Update((wxULongLong_t)framescompleted,
+ updateResult = progress.Update((wxULongLong_t)framescompleted,
(wxULongLong_t)totalFrames);
- if (cancelled)
+ if (updateResult != eProgressSuccess)
break;
} while (block > 0 && framescompleted < totalFrames);
sf_close(sndFile);
- bool res = (!cancelled && block >= 0);
+ int res = updateResult;
+ if (block < 0)
+ res = eProgressFailed;
- if (!res) {
+ if (res == eProgressFailed || res == eProgressCancelled) {
for (c = 0; c < numChannels; c++)
delete channels[c];
delete[] channels;
+ // It's a shame we can't return proper error code
return 0;
}
diff --git a/src/ondemand/ODComputeSummaryTask.cpp b/src/ondemand/ODComputeSummaryTask.cpp
index 4eba640..c1ea0b6 100644
--- a/src/ondemand/ODComputeSummaryTask.cpp
+++ b/src/ondemand/ODComputeSummaryTask.cpp
@@ -186,7 +186,7 @@ void ODComputeSummaryTask::Update()
Sequence *seq;
//gather all the blockfiles that we should process in the wavetrack.
- WaveClipList::Node* node = mWaveTracks[j]->GetClipIterator();
+ WaveClipList::compatibility_iterator node = mWaveTracks[j]->GetClipIterator();
int numBlocksDone;
while(node) {
diff --git a/src/ondemand/ODDecodeTask.cpp b/src/ondemand/ODDecodeTask.cpp
index 5e46c14..2d8470e 100644
--- a/src/ondemand/ODDecodeTask.cpp
+++ b/src/ondemand/ODDecodeTask.cpp
@@ -113,7 +113,7 @@ void ODDecodeTask::Update()
Sequence *seq;
//gather all the blockfiles that we should process in the wavetrack.
- WaveClipList::Node* node = mWaveTracks[j]->GetClipIterator();
+ WaveClipList::compatibility_iterator node = mWaveTracks[j]->GetClipIterator();
int numBlocksDone;
while(node) {
diff --git a/src/ondemand/ODManager.cpp b/src/ondemand/ODManager.cpp
index 214bd94..699c929 100644
--- a/src/ondemand/ODManager.cpp
+++ b/src/ondemand/ODManager.cpp
@@ -37,7 +37,6 @@ int CompareODFileName(const wxString& first, const wxString& second)
bool firstIsOD = false;
bool secondIsOD = false;
-#ifdef EXPERIMENTAL_ONDEMAND
if(first.EndsWith(wxT("wav"))||first.EndsWith(wxT("WAV"))||
first.EndsWith(wxT("wave"))||first.EndsWith(wxT("WAVE"))||
first.EndsWith(wxT("Wav"))||first.EndsWith(wxT("Wave"))||
@@ -56,8 +55,6 @@ int CompareODFileName(const wxString& first, const wxString& second)
{
secondIsOD=true;
}
-
-#endif
if(firstIsOD && !secondIsOD)
return 1;
@@ -73,7 +70,6 @@ int CompareODFirstFileName(const wxString& first, const wxString& second)
bool firstIsOD = false;
bool secondIsOD = false;
-#ifdef EXPERIMENTAL_ONDEMAND
if(first.EndsWith(wxT("wav"))||first.EndsWith(wxT("WAV"))||
first.EndsWith(wxT("wave"))||first.EndsWith(wxT("WAVE"))||
first.EndsWith(wxT("Wav"))||first.EndsWith(wxT("Wave"))||
@@ -92,8 +88,6 @@ int CompareODFirstFileName(const wxString& first, const wxString& second)
{
secondIsOD=true;
}
-
-#endif
if(firstIsOD && !secondIsOD)
return -1;
@@ -254,8 +248,6 @@ void ODManager::DecrementCurrentThreads()
///Main loop for managing threads and tasks.
void ODManager::Start()
{
-
- ODTask* task;
ODTaskThread* thread;
bool tasksInArray;
@@ -287,21 +279,22 @@ void ODManager::Start()
mCurrentThreadsMutex.Unlock();
//remove the head
mTasksMutex.Lock();
- task = mTasks[0];
+ //task = mTasks[0];
//the thread will add it back to the array if the job is not yet done at the end of the thread's run.
- mTasks.erase(mTasks.begin());
+ //mTasks.erase(mTasks.begin());
mTasksMutex.Unlock();
//detach a new thread.
- thread = new ODTaskThread(task);
+ thread = new ODTaskThread(mTasks[0]);//task);
// thread->SetPriority(10);//default is 50.
thread->Create();
thread->Run();
- mTasksMutex.Lock();
+ mTasks.erase(mTasks.begin());
tasksInArray = mTasks.size()>0;
+
mTasksMutex.Unlock();
mCurrentThreadsMutex.Lock();
diff --git a/src/ondemand/ODTask.cpp b/src/ondemand/ODTask.cpp
index 8a216f5..6c8017a 100644
--- a/src/ondemand/ODTask.cpp
+++ b/src/ondemand/ODTask.cpp
@@ -44,6 +44,7 @@ ODTask::ODTask()
mDemandSample=0;
}
+//outside code must ensure this task is not scheduled again.
void ODTask::TerminateAndBlock()
{
//one mutex pair for the value of mTerminate
@@ -57,7 +58,7 @@ void ODTask::TerminateAndBlock()
//TODO lock mTerminate?
mBlockUntilTerminateMutex.Unlock();
- //wait till we are out of doSome() to terminate.
+ //wait till we are out of doSome() to terminate.
Terminate();
}
@@ -82,9 +83,9 @@ void ODTask::DoSome(float amountWork)
mTerminateMutex.Lock();
if(mTerminate)
{
- mBlockUntilTerminateMutex.Unlock();
mTerminateMutex.Unlock();
SetIsRunning(false);
+ mBlockUntilTerminateMutex.Unlock();
return;
}
mTerminateMutex.Unlock();
@@ -168,9 +169,8 @@ void ODTask::DoSome(float amountWork)
// printf("%s %i complete\n", GetTaskName(),GetTaskNumber());
}
mTerminateMutex.Unlock();
- mBlockUntilTerminateMutex.Unlock();
SetIsRunning(false);
-
+ mBlockUntilTerminateMutex.Unlock();
}
bool ODTask::IsTaskAssociatedWithProject(AudacityProject* proj)
@@ -262,7 +262,7 @@ bool ODTask::IsComplete()
WaveTrack* ODTask::GetWaveTrack(int i)
{
- WaveTrack* track;
+ WaveTrack* track = NULL;
mWaveTrackMutex.Lock();
if(i<(int)mWaveTracks.size())
track = mWaveTracks[i];
diff --git a/src/ondemand/ODTaskThread.h b/src/ondemand/ODTaskThread.h
index b3aa976..1f804b2 100644
--- a/src/ondemand/ODTaskThread.h
+++ b/src/ondemand/ODTaskThread.h
@@ -54,7 +54,12 @@ class ODTaskThread {
}
static void *callback(void *p) {
ODTaskThread *th = (ODTaskThread *)p;
- /* return (void *)*/th->Entry();
+#if defined(__WXMAC__)
+ /*return (void *)*/ th->Entry();
+ return NULL;
+#else
+ return (void *) th->Entry();
+#endif
}
void Run() {
pthread_create(&mThread, NULL, callback, this);
diff --git a/src/prefs/AudioIOPrefs.cpp b/src/prefs/AudioIOPrefs.cpp
deleted file mode 100644
index 5253bfc..0000000
--- a/src/prefs/AudioIOPrefs.cpp
+++ /dev/null
@@ -1,285 +0,0 @@
-/**********************************************************************
-
- Audacity: A Digital Audio Editor
-
- AudioIOPrefs.cpp
-
- Joshua Haberman
- Dominic Mazzoni
- James Crook
-
-*******************************************************************//**
-
-\class AudioIOPrefs
-\brief A PrefsPanel used to select recording and playback devices and
-other settings.
-
- Presents interface for user to select the recording device and
- playback device, from the list of choices that PortAudio
- makes available.
-
- Also lets user decide whether or not to record in stereo, and
- whether or not to play other tracks while recording one (duplex).
-
-*//********************************************************************/
-
-#include "../Audacity.h"
-#include <wx/defs.h>
-#include <wx/choice.h>
-#include <wx/intl.h>
-
-#include "../Prefs.h"
-#include "../AudioIO.h"
-#include "../Project.h"
-#include "../Internat.h"
-#include "../ShuttleGui.h"
-#include "portaudio.h"
-#include "AudioIOPrefs.h"
-
-AudioIOPrefs::AudioIOPrefs(wxWindow * parent):
- PrefsPanel(parent)
-{
- SetLabel(_("Audio I/O")); // Provide visual label
- SetName(_("Audio I/O")); // Provide audible label
- Populate();
-}
-
-void AudioIOPrefs::Populate( )
-{
- // First any pre-processing for constructing the GUI.
- GetNamesAndLabels();
- //------------------------- Main section --------------------
- // Now construct the GUI itself.
- // Use 'eIsCreatingFromPrefs' so that the GUI is
- // initialised with values from gPrefs.
- ShuttleGui S(this, eIsCreatingFromPrefs);
- PopulateOrExchange(S);
- // ----------------------- End of main section --------------
- // GUI is built, now do any post processing of it.
-
- // Fit(); // JKC: Doesn't seem to make any difference...
-}
-
-/// Gets the lists of names and lists of labels which are
-/// used in the choice controls.
-/// The names are what the user sees in the wxChoice.
-/// The corresponding labels are what gets stored.
-void AudioIOPrefs::GetNamesAndLabels()
-{
- // Get lists of devices both for play and record.
- int j;
- wxString Name;
- wxString Label;
-
-#if USE_PORTAUDIO_V19
- int nDevices = Pa_GetDeviceCount();
-#else
- int nDevices = Pa_CountDevices();
-#endif
-
-// int numChannels = 0; // find max no. of record channels available
- for(j=0; j<nDevices; j++) {
- const PaDeviceInfo* info = Pa_GetDeviceInfo(j);
- Name = DeviceName(info);
- Label = Name;
- if (info->maxOutputChannels > 0) {
- mmPlayNames.Add( Name );
- mmPlayLabels.Add( Label );
- }
- if (info->maxInputChannels > 0) {
- mmRecordNames.Add( Name );
- mmRecordLabels.Add( Label );
-// if (info->maxInputChannels > numChannels)
-// numChannels = info->maxInputChannels;
- }
- }
-
- // Channel counts, mono, stereo etc...
- const int numChannels = 16;
- for(int c=0; c<numChannels; c++)
- {
- mmChannelNames.Add( wxString::Format(wxT("%d"), c+1));
- mmChannelLabels.Add( c+1 );
- }
- mmChannelNames[0] = wxString::Format(_("1 (Mono)"));
- mmChannelNames[1] = wxString::Format(_("2 (Stereo)"));
-}
-
-void AudioIOPrefs::PopulateOrExchange( ShuttleGui & S )
-{
- /// \todo
- /// JKC: I think setting paths in gPrefs is bad practice.
- /// Suppose we are using gPrefs from elsewhere at the same time?
- /// Change these all to full paths?
- gPrefs->SetPath(wxT("/AudioIO"));
-
- S.SetBorder( 2 );
-
- S.StartHorizontalLay(wxEXPAND, 0 );
- S.StartStatic( _("Playback"),1 );
- {
- S.StartMultiColumn(2, wxEXPAND);
- S.SetStretchyCol(1);
- mPlay = S.TieChoice( _("Device") + wxString(wxT(":")), wxT("PlaybackDevice"),
- wxT(""), mmPlayNames, mmPlayLabels );
-
- S.AddPrompt( _("Using:") );
- wxString ver = _("Portaudio v");
-#if USE_PORTAUDIO_V19
- ver += wxT("19");
-#else
- ver += wxT("18");
-#endif
- S.AddFixedText( ver );
- S.EndMultiColumn();
- }
- S.EndStatic();
- S.StartStatic( _("Recording"), 1 );
- {
- S.StartMultiColumn(2, wxEXPAND);
- S.SetStretchyCol(1);
- mRec = S.TieChoice( _("Device") + wxString(wxT(":")), wxT("RecordingDevice"),
- wxT(""), mmRecordNames, mmRecordLabels );
- S.TieChoice( _("Channels") + wxString(wxT(":")), wxT("RecordChannels"),
- 2, mmChannelNames, mmChannelLabels );
- S.EndMultiColumn();
- }
- S.EndStatic();
- S.EndHorizontalLay();
- S.StartStatic( _("Playthrough") );
- {
- S.TieCheckBox( _("Overdub: &Play other tracks while recording new one"),
- wxT("Duplex"),true);
-#ifdef __WXMAC__
- S.TieCheckBox( _("&Hardware Playthrough: Play new track while recording it"),
- wxT("Playthrough"),false);
- S.TieCheckBox( _("&Software Playthrough: Play new track while recording it"),
- wxT("SWPlaythrough"),false);
-#else
- S.TieCheckBox( _("&Software Playthrough: Play new track while recording or monitoring"),
- wxT("SWPlaythrough"),false);
- wxString Temp = wxT(" ");
- Temp += _("(uncheck when recording \"stereo mix\")");
- // AddUnits abused here to get left aligned text.
- S.AddUnits(Temp);
-#endif
-
- }
- S.EndStatic();
- S.StartHorizontalLay( wxEXPAND, 0 );
- S.StartStatic( _("Effects Preview"),1 );
- {
- S.StartThreeColumn();
- S.TieTextBox( _("Length of preview:"), wxT("EffectsPreviewLen"), 3.0,9);
- S.AddUnits( _("seconds") );
- S.EndThreeColumn();
- }
- S.EndStatic();
- S.StartStatic( _("Cut Preview"),1 );
- {
- S.StartThreeColumn();
- S.TieTextBox( _("Preview before cut region:"), wxT("CutPreviewBeforeLen"),1.0,9);
- S.AddUnits( _("seconds") );
- S.TieTextBox( _("Preview after cut region:"),wxT("CutPreviewAfterLen"), 1.0,9);
- S.AddUnits( _("seconds") );
- S.EndThreeColumn();
- }
- S.EndStatic();
- S.EndHorizontalLay();
- S.StartHorizontalLay( wxEXPAND, 0 );
-
- S.StartStatic( _("Latency"),1 );
- {
- S.StartThreeColumn();
-#if USE_PORTAUDIO_V19
- // only show the following controls if we use Portaudio v19, because
- // for Portaudio v18 we always use default buffer sizes
- S.TieTextBox( _("Audio to buffer:\n(higher = more latency)"),wxT("LatencyDuration"),
- DEFAULT_LATENCY_DURATION,9);
- S.AddUnits( _("milliseconds") );
-#endif
- S.TieTextBox( _("Latency correction:\n(negative = backwards)"),wxT("LatencyCorrection"),
- DEFAULT_LATENCY_CORRECTION,9);
- S.AddUnits( _("milliseconds") );
- S.EndThreeColumn();
- }
- S.EndStatic();
- S.StartStatic( _("Seek Time when playing"),1 );
- {
- S.StartThreeColumn();
- S.TieTextBox( _("Short period:"), wxT("SeekShortPeriod"),1.0,9);
- S.AddUnits( _("seconds") );
- S.TieTextBox( _("Long period:"),wxT("SeekLongPeriod"), 15.0,9);
- S.AddUnits( _("seconds") );
- S.EndThreeColumn();
- }
- S.EndStatic();
-
- gPrefs->SetPath(wxT("/"));
-}
-
-
-// JKC: This is some old code that was sizing control labels all the same,
-// even if in different static controls. It made for a nicer layout.
-// We might want to do something like that again in future.
-#if 0
-
- // find out the biggest minimum size of labels
- int maxIndex = 0,r;
- wxSize maxMinSize = textSizer[0]->GetMinSize();
- for (r = 1; r < 3; r++) {
- if (textSizer[r]->GetMinSize().GetWidth() > maxMinSize.GetWidth()) {
- maxMinSize = textSizer[r]->GetMinSize();
- maxIndex = r;
- }
- }
-
- // set small minimum sizes to max minumum size
- for (r = 0; r < 3; r++) {
- if (r != maxIndex)
- textSizer[r]->SetMinSize( maxMinSize );
- }
-#endif
-
-
-AudioIOPrefs::~AudioIOPrefs()
-{
-}
-
-bool AudioIOPrefs::Apply()
-{
-#if USE_PORTAUDIO_V19
- if (!AudioIO::ValidateDeviceNames(mPlay->GetStringSelection(), mRec->GetStringSelection())) {
- wxMessageBox(_("Playback and Recording device must use the same type, i.e., MME, DirectSound, etc."));
- return false;
- }
-#endif
-
- ShuttleGui S( this, eIsSavingToPrefs );
- PopulateOrExchange( S );
-
- double latencyDuration = DEFAULT_LATENCY_DURATION;
- gPrefs->Read(wxT("/AudioIO/LatencyDuration"), &latencyDuration);
- if (latencyDuration < 0)
- gPrefs->Write(wxT("/AudioIO/LatencyDuration"), DEFAULT_LATENCY_DURATION);
-
-#if USE_PORTMIXER
- if (gAudioIO)
- gAudioIO->HandleDeviceChange();
-#endif // USE_PORTMIXER
-
- return true;
-}
-
-
-// Indentation settings for Vim and Emacs and unique identifier for Arch, a
-// version control system. Please do not modify past this point.
-//
-// Local Variables:
-// c-basic-offset: 3
-// indent-tabs-mode: nil
-// End:
-//
-// vim: et sts=3 sw=3
-// arch-tag: d6904b91-a320-4194-8d60-caa9175b6bb4
-
diff --git a/src/prefs/AudioIOPrefs.h b/src/prefs/AudioIOPrefs.h
deleted file mode 100644
index f2c84ae..0000000
--- a/src/prefs/AudioIOPrefs.h
+++ /dev/null
@@ -1,65 +0,0 @@
-/**********************************************************************
-
- Audacity: A Digital Audio Editor
-
- AudioIOPrefs.h
-
- Joshua Haberman
- James Crook
-
-**********************************************************************/
-
-#ifndef __AUDACITY_AUDIO_IO_PREFS__
-#define __AUDACITY_AUDIO_IO_PREFS__
-
-#include <wx/string.h>
-
-#include "PrefsPanel.h"
-
-class wxWindow;
-class wxCheckBox;
-class wxChoice;
-#include <wx/defs.h>
-#include <wx/string.h>
-
-#include "PrefsPanel.h"
-
-class wxWindow;
-class ShuttleGui;
-
-class AudioIOPrefs:public PrefsPanel
-{
-public:
- AudioIOPrefs(wxWindow * parent);
- ~AudioIOPrefs();
- virtual bool Apply();
-
-private:
- void Populate();
- void PopulateOrExchange( ShuttleGui & S );
- void GetNamesAndLabels();
-
- wxArrayString mmPlayNames;
- wxArrayString mmPlayLabels;
- wxArrayString mmRecordNames;
- wxArrayString mmRecordLabels;
- wxArrayString mmChannelNames;
- wxArrayInt mmChannelLabels;
-
- wxChoice *mPlay;
- wxChoice *mRec;
-};
-
-#endif
-
-// Indentation settings for Vim and Emacs and unique identifier for Arch, a
-// version control system. Please do not modify past this point.
-//
-// Local Variables:
-// c-basic-offset: 3
-// indent-tabs-mode: nil
-// End:
-//
-// vim: et sts=3 sw=3
-// arch-tag: df22b108-e989-4ec4-a8b6-dddbcc7be6a7
-
diff --git a/src/prefs/BatchPrefs.cpp b/src/prefs/BatchPrefs.cpp
index 5f7608b..210c8f5 100644
--- a/src/prefs/BatchPrefs.cpp
+++ b/src/prefs/BatchPrefs.cpp
@@ -50,10 +50,8 @@ enum { CleanSpeechID,
/// Constructor
BatchPrefs::BatchPrefs(wxWindow * parent):
- PrefsPanel(parent)
+ PrefsPanel(parent, _("Batch"))
{
- SetLabel(_("Batch")); // Provide visual label
- SetName(_("Batch")); // Provide audible label
Populate();
}
diff --git a/src/prefs/BatchPrefs.h b/src/prefs/BatchPrefs.h
index e3f0819..de81668 100644
--- a/src/prefs/BatchPrefs.h
+++ b/src/prefs/BatchPrefs.h
@@ -13,12 +13,12 @@
#define __AUDACITY_BATCH_PREFS__
#include <wx/defs.h>
-#include <wx/string.h>
-#include <wx/button.h>
-#include "PrefsPanel.h"
+#include <wx/window.h>
+
+#include "../ShuttleGui.h"
-class ShuttleGui;
+#include "PrefsPanel.h"
class BatchPrefs : public PrefsPanel
{
@@ -29,7 +29,7 @@ public:
private:
void Populate();
- void PopulateOrExchange( ShuttleGui & S );
+ void PopulateOrExchange(ShuttleGui & S);
DECLARE_EVENT_TABLE();
};
@@ -46,4 +46,3 @@ private:
//
// vim: et sts=3 sw=3
// arch-tag: 57018e2b-d264-4f93-bfa7-06752ebf631e
-
diff --git a/src/prefs/DirectoriesPrefs.cpp b/src/prefs/DirectoriesPrefs.cpp
index fe91974..127a65d 100644
--- a/src/prefs/DirectoriesPrefs.cpp
+++ b/src/prefs/DirectoriesPrefs.cpp
@@ -43,31 +43,26 @@ enum {
ChooseButtonID
};
-BEGIN_EVENT_TABLE(DirectoriesPrefs, wxPanel)
+BEGIN_EVENT_TABLE(DirectoriesPrefs, PrefsPanel)
EVT_TEXT(TempDirID, DirectoriesPrefs::UpdateFreeSpace)
EVT_BUTTON(ChooseButtonID, DirectoriesPrefs::OnChooseTempDir)
END_EVENT_TABLE()
-DirectoriesPrefs::DirectoriesPrefs(wxWindow * parent):
- PrefsPanel(parent),
- mTempDirText( NULL ) // JKC: Must be initialised, ready for UpdateFreeSpace to look at.
+DirectoriesPrefs::DirectoriesPrefs(wxWindow * parent)
+: PrefsPanel(parent, _("Directories")),
+ mTempDir(NULL),
+ mFreeSpace(NULL)
{
- SetLabel(_("Directories")); // Provide visual label
- SetName(_("Directories")); // Provide audible label
Populate();
}
+DirectoriesPrefs::~DirectoriesPrefs()
+{
+}
+
/// Creates the dialog and its contents.
-void DirectoriesPrefs::Populate( )
+void DirectoriesPrefs::Populate()
{
- // First any pre-processing for constructing the GUI.
-
- mTempDir = gPrefs->Read(wxT("/Directories/TempDir"), wxT(""));
- mOldTempDir = mTempDir;
- //BG: wxWindows 2.3.2 and higher claim to support this, through a function called wxGetDiskSpace
- wxLongLong freeSpace;
- wxGetDiskSpace(mTempDir, NULL, &freeSpace);
- mStrFreeSpace = Internat::FormatSize(freeSpace);
//------------------------- Main section --------------------
// Now construct the GUI itself.
// Use 'eIsCreatingFromPrefs' so that the GUI is
@@ -75,52 +70,62 @@ void DirectoriesPrefs::Populate( )
ShuttleGui S(this, eIsCreatingFromPrefs);
PopulateOrExchange(S);
// ----------------------- End of main section --------------
+
+ wxCommandEvent e;
+ UpdateFreeSpace(e);
}
-/// Places controls on the panel and also exchanges data with them.
-/// As of Jun/2006 the only gPrefs value, mTempDir is
-/// actually retrieved from gPrefs earlier, so the exchange is
-/// with that variable rather than with gPrefs.
-void DirectoriesPrefs::PopulateOrExchange( ShuttleGui & S )
+void DirectoriesPrefs::PopulateOrExchange(ShuttleGui & S)
{
- S.SetBorder( 2 );
- S.StartStatic( _("Temporary files directory"),0);
+ S.SetBorder(2);
+
+ S.StartStatic(_("Temporary files directory"));
{
S.StartMultiColumn(3, wxEXPAND);
- S.SetStretchyCol( 1 );// Column 1 is stretchy...
- mTempDirText = S.Id( TempDirID ).AddTextBox( _("Location:"), mTempDir, 30);
- S.Id( ChooseButtonID ).AddButton( _("Choose..."));
- S.AddFixedText( _("Free Space:"));
- mFreeSpace = S.AddVariableText( mStrFreeSpace );
+ {
+ S.SetStretchyCol(1);
+
+ S.Id(TempDirID);
+ mTempDir = S.TieTextBox(_("Location:"),
+ wxT("/Directories/TempDir"),
+ wxT(""),
+ 30);
+ S.Id(ChooseButtonID);
+ S.AddButton(_("Choose..."));
+
+ S.AddFixedText(_("Free Space:"));
+ mFreeSpace = S.AddVariableText(wxT(""));
+ }
S.EndMultiColumn();
}
S.EndStatic();
- S.StartStatic( _("Auto save"),0);
- {
- S.TieCheckBox( _("Auto save a copy of the project in a separate folder"),
- wxT("/Directories/AutoSaveEnabled"), true);
- S.StartThreeColumn();
- S.TieTextBox( _("Auto save interval:"), wxT("/Directories/AutoSaveMinutes"), 2.0, 9);
- S.AddUnits( _("minutes") );
- S.EndThreeColumn();
- }
- S.EndStatic();
-
- S.StartStatic( _("Audio cache"),0);
+ S.StartStatic(_("Audio cache"));
{
- S.TieCheckBox( _("Play and/or record using RAM (useful for slow drives, but could crash with long files or recordings)"),
- wxT("/Directories/CacheBlockFiles"), false);
+ S.TieCheckBox(_("Play and/or record using RAM (useful for slow drives)"),
+ wxT("/Directories/CacheBlockFiles"),
+ false);
+
+ S.StartTwoColumn();
+ {
+ S.TieTextBox(_("Minimum Free Memory (MB):"),
+ wxT("/Directories/CacheLowMem"),
+ 16,
+ 9);
+ }
+ S.EndTwoColumn();
+
+ S.AddVariableText(_("If the available system memory falls below this value, audio will no longer\nbe cached in memory and will be written to disk."))->Wrap(600);
}
S.EndStatic();
}
-void DirectoriesPrefs::OnChooseTempDir(wxCommandEvent &event)
+void DirectoriesPrefs::OnChooseTempDir(wxCommandEvent & e)
{
wxDirDialog dlog(this,
- _("Choose a location to place the temporary directory"),
- gPrefs->Read(wxT("/Directories/TempDir"),
- wxGetApp().defaultTempDir));
+ _("Choose a location to place the temporary directory"),
+ gPrefs->Read(wxT("/Directories/TempDir"),
+ wxGetApp().defaultTempDir));
dlog.ShowModal();
if (dlog.GetPath() != wxT("")) {
wxFileName tmpDirPath;
@@ -130,83 +135,89 @@ void DirectoriesPrefs::OnChooseTempDir(wxCommandEvent &event)
#else
tmpDirPath.AppendDir(wxT(".audacity_temp"));
#endif
- mTempDirText->SetValue(tmpDirPath.GetPath(wxPATH_GET_VOLUME|wxPATH_GET_SEPARATOR));
- UpdateFreeSpace(event);
+ mTempDir->SetValue(tmpDirPath.GetPath(wxPATH_GET_VOLUME|wxPATH_GET_SEPARATOR));
+ UpdateFreeSpace(e);
}
}
-void DirectoriesPrefs::UpdateFreeSpace(wxCommandEvent &event)
+void DirectoriesPrefs::UpdateFreeSpace(wxCommandEvent & e)
{
- static wxLongLong space;
- static wxString tempDir;
+ wxString tempDir;
+ wxString label;
- if (!mTempDirText)
- return;
-
- tempDir = mTempDirText->GetValue();
+ if (mTempDir != NULL) {
+ tempDir = mTempDir->GetValue();
+ }
- /* Try to be smart: if the directory doesn't exist, go up the
- * directory path until one is, because that's the volume that
- * the new directory would be created on */
- while(!wxDirExists(tempDir) && tempDir.Find(wxFILE_SEP_PATH) != -1)
- tempDir = tempDir.BeforeLast(wxFILE_SEP_PATH);
+ if (wxDirExists(tempDir)) {
+ wxLongLong space;
+ wxGetDiskSpace(tempDir, NULL, &space);
+ label = Internat::FormatSize(space);
+ }
+ else {
+ label = _("unavailable - above location doesn't exist");
+ }
- //BG: wxWindows 2.3.2 and higher claim to support this, through a function called wxGetDiskSpace
- wxLogNull nolog;
- wxGetDiskSpace(tempDir, NULL, &space);
- mFreeSpace->SetLabel(Internat::FormatSize(space));
+ if( mFreeSpace != NULL ) {
+ mFreeSpace->SetLabel(label);
+ }
}
-
-bool DirectoriesPrefs::Apply()
+
+bool DirectoriesPrefs::Validate()
{
- mTempDir = mTempDirText->GetValue();
+ wxFileName tempDir;
+ tempDir.SetPath(mTempDir->GetValue());
- if(!wxDirExists(mTempDir)) {
+ if (!tempDir.DirExists()) {
int ans = wxMessageBox(
- wxString::Format(_("Directory %s does not exist. Create it?"),
- mTempDir.c_str()),
- _("New Temporary Directory"),
- wxYES_NO|wxCENTRE|wxICON_EXCLAMATION);
-
- if(ans == wxYES) {
- if(!wxMkdir(mTempDir, 0755)) {
- /* wxWindows throws up a decent looking dialog */
- return false;
- }
- }
- else {
+ wxString::Format(_("Directory %s does not exist. Create it?"),
+ tempDir.GetPath().c_str()),
+ _("New Temporary Directory"),
+ wxYES_NO | wxCENTRE | wxICON_EXCLAMATION);
+
+ if (ans != wxYES) {
+ return false;
+ }
+
+ if (!tempDir.Mkdir(0755, wxPATH_MKDIR_FULL)) {
+ /* wxWindows throws up a decent looking dialog */
return false;
}
}
else {
/* If the directory already exists, make sure it is writable */
wxLogNull logNo;
- wxString tempDir = mTempDir + wxFILE_SEP_PATH + wxT("canicreate");
- if(!wxMkdir(tempDir, 0755)) {
+ tempDir.AppendDir(wxT("canicreate"));
+ if (!tempDir.Mkdir(0755)) {
wxMessageBox(
- wxString::Format(_("Directory %s is not writable"),
- mTempDir.c_str()),
- _("Error"), wxOK|wxICON_ERROR);
+ wxString::Format(_("Directory %s is not writable"),
+ tempDir.GetPath().c_str()),
+ _("Error"),
+ wxOK | wxICON_ERROR);
return false;
}
- wxRmdir(tempDir);
+ tempDir.Rmdir();
+ tempDir.RemoveLastDir();
}
- gPrefs->Write(wxT("/Directories/TempDir"), mTempDir);
-
- if (mTempDir != mOldTempDir)
+ wxFileName oldDir;
+ oldDir.SetPath(gPrefs->Read(wxT("/Directories/TempDir")));
+ if (tempDir != oldDir) {
wxMessageBox(
- _("Changes to temporary directory will not take effect until Audacity is restarted"),
- wxT("Temp Directory Update"), wxOK|wxCENTRE|wxICON_INFORMATION);
-
- ShuttleGui S( this, eIsSavingToPrefs );
- PopulateOrExchange( S );
+ _("Changes to temporary directory will not take effect until Audacity is restarted"),
+ wxT("Temp Directory Update"),
+ wxOK | wxCENTRE | wxICON_INFORMATION);
+ }
return true;
}
-DirectoriesPrefs::~DirectoriesPrefs()
+bool DirectoriesPrefs::Apply()
{
+ ShuttleGui S(this, eIsSavingToPrefs);
+ PopulateOrExchange(S);
+
+ return true;
}
// Indentation settings for Vim and Emacs and unique identifier for Arch, a
diff --git a/src/prefs/DirectoriesPrefs.h b/src/prefs/DirectoriesPrefs.h
index 2955bed..065e91b 100644
--- a/src/prefs/DirectoriesPrefs.h
+++ b/src/prefs/DirectoriesPrefs.h
@@ -11,42 +11,30 @@
#ifndef __AUDACITY_DIRECTORIES_PREFS__
#define __AUDACITY_DIRECTORIES_PREFS__
-#include <wx/string.h>
-#include <wx/longlong.h>
+#include <wx/stattext.h>
+#include <wx/textctrl.h>
-#include "PrefsPanel.h"
+#include "../ShuttleGui.h"
-class wxStaticBox;
-class wxStaticText;
-class wxTextCtrl;
-class ShuttleGui;
+#include "PrefsPanel.h"
class DirectoriesPrefs:public PrefsPanel
{
-
-public:
+ public:
DirectoriesPrefs(wxWindow * parent);
~DirectoriesPrefs();
virtual bool Apply();
+ virtual bool Validate();
-private:
+ private:
void Populate();
- void PopulateOrExchange( ShuttleGui & S );
- void UpdateFreeSpace(wxCommandEvent &event);
- void OnChooseTempDir(wxCommandEvent &event);
-
- wxString mStrFreeSpace;
- wxStaticBox *mEnclosingBox;
+ void PopulateOrExchange(ShuttleGui & S);
+ void UpdateFreeSpace(wxCommandEvent & e);
+ void OnChooseTempDir(wxCommandEvent & e);
- wxStaticText *mTempDirLabel;
- wxTextCtrl *mTempDirText;
- wxStaticText *mFreeSpaceLabel;
wxStaticText *mFreeSpace;
-
- wxString mOldTempDir;
- wxString mTempDir;
+ wxTextCtrl *mTempDir;
-public:
DECLARE_EVENT_TABLE();
};
diff --git a/src/prefs/FileFormatPrefs.cpp b/src/prefs/FileFormatPrefs.cpp
deleted file mode 100644
index e69a651..0000000
--- a/src/prefs/FileFormatPrefs.cpp
+++ /dev/null
@@ -1,264 +0,0 @@
-/**********************************************************************
-
- Audacity: A Digital Audio Editor
-
- FileFormatPrefs.cpp
-
- Joshua Haberman
- Dominic Mazzoni
- James Crook
-
-
-*******************************************************************//**
-
-\class FileFormatPrefs
-\brief A PrefsPanel used to select file format preferences and to
-locate the MP3 encoding library. Now called 'Import/Export' in the
-preferences. Later we will rename this panel and source files.
-
-*//*******************************************************************/
-
-
-
-#include "../Audacity.h"
-#include "../FFmpeg.h" // always needs to go before wx headers
-
-#include <wx/defs.h>
-#include <wx/intl.h>
-#include <wx/stattext.h>
-#include <wx/button.h>
-
-#include "../export/ExportMP3.h"
-#include "../Prefs.h"
-#include "../ShuttleGui.h"
-#include "../widgets/LinkingHtmlWindow.h"
-
-#include "FileFormatPrefs.h"
-
-#define ID_MP3_FIND_BUTTON 7001
-#define ID_MP3_DOWN_BUTTON 7002
-#define ID_FFMPEG_FIND_BUTTON 7003
-#define ID_FFMPEG_DOWN_BUTTON 7004
-
-BEGIN_EVENT_TABLE(FileFormatPrefs, wxPanel)
- EVT_BUTTON(ID_MP3_FIND_BUTTON, FileFormatPrefs::OnMP3FindButton)
- EVT_BUTTON(ID_MP3_DOWN_BUTTON, FileFormatPrefs::OnMP3DownButton)
- EVT_BUTTON(ID_FFMPEG_FIND_BUTTON, FileFormatPrefs::OnFFmpegFindButton)
- EVT_BUTTON(ID_FFMPEG_DOWN_BUTTON, FileFormatPrefs::OnFFmpegDownButton)
-END_EVENT_TABLE()
-
-FileFormatPrefs::FileFormatPrefs(wxWindow * parent):
- PrefsPanel(parent)
-{
- SetLabel(_("Import / Export")); // Provide visual label
- SetName(_("Import / Export")); // Provide audible label
- Populate( );
-}
-
-/// Creates the dialog and its contents.
-void FileFormatPrefs::Populate( )
-{
- // First any pre-processing for constructing the GUI.
-
- //------------------------- Main section --------------------
- // Now construct the GUI itself.
- // Use 'eIsCreatingFromPrefs' so that the GUI is
- // initialised with values from gPrefs.
- ShuttleGui S(this, eIsCreatingFromPrefs);
- PopulateOrExchange(S);
- // ----------------------- End of main section --------------
- // Set the MP3 Version string.
- SetMP3VersionText();
- SetFFmpegVersionText();
-}
-
-/// This PopulateOrExchange function is a good example of mixing the fully
-/// automatic style of reading/writing from GUI to prefs with the partial form.
-///
-/// You'll notice that some of the Tie functions have Prefs identifiers in them
-/// and others don't.
-void FileFormatPrefs::PopulateOrExchange( ShuttleGui & S )
-{
- S.SetBorder( 2 );
- S.StartHorizontalLay(wxEXPAND,0);
- S.StartStatic( _("MP3 Export Library"),1);
- {
- S.StartTwoColumn();
- S.AddVariableText( _("MP3 Library Version:"),
- true,
- wxALL | wxALIGN_RIGHT | wxALIGN_CENTRE_VERTICAL );
- mMP3Version = S.AddVariableText( wxT("9.99"),
- true,
- wxALL | wxALIGN_LEFT | wxALIGN_CENTRE_VERTICAL );
- S.AddVariableText( _("MP3 Library:"),
- true,
- wxALL | wxALIGN_RIGHT | wxALIGN_CENTRE_VERTICAL );
- S.Id( ID_MP3_FIND_BUTTON ).AddButton( _("&Locate..."),
- wxALL | wxALIGN_LEFT | wxALIGN_CENTRE_VERTICAL );
- S.AddVariableText( _("LAME MP3 Library:"),
- true,
- wxALL | wxALIGN_RIGHT | wxALIGN_CENTRE_VERTICAL );
- S.Id( ID_MP3_DOWN_BUTTON ).AddButton( _("&Download"),
- wxALL | wxALIGN_LEFT | wxALIGN_CENTRE_VERTICAL );
- S.EndTwoColumn();
- }
- S.EndStatic();
- S.StartStatic( _("FFmpeg Import/Export Library"),1);
- {
- S.StartTwoColumn();
- S.AddVariableText( _("FFmpeg Library Version:"),
- true, wxALL | wxALIGN_RIGHT | wxALIGN_CENTRE_VERTICAL );
-#if defined(USE_FFMPEG)
- mFFmpegVersion = S.AddVariableText( wxT("No compatible FFmpeg library was found"),
- true, wxALL | wxALIGN_LEFT | wxALIGN_CENTRE_VERTICAL );
-#else
- mFFmpegVersion = S.AddVariableText( wxT("FFmpeg support is not compiled in"),
- true, wxALL | wxALIGN_LEFT | wxALIGN_CENTRE_VERTICAL );
-#endif
- S.AddVariableText( _("FFmpeg Library:"),
- true, wxALL | wxALIGN_RIGHT | wxALIGN_CENTRE_VERTICAL );
- wxButton *bfnd = S.Id( ID_FFMPEG_FIND_BUTTON ).AddButton( _("&Locate..."),
- wxALL | wxALIGN_LEFT | wxALIGN_CENTRE_VERTICAL );
- S.AddVariableText( _("FFmpeg Library:"),
- true,
- wxALL | wxALIGN_RIGHT | wxALIGN_CENTRE_VERTICAL );
- wxButton *bdwn = S.Id( ID_FFMPEG_DOWN_BUTTON ).AddButton( _("&Download"),
- wxALL | wxALIGN_LEFT | wxALIGN_CENTRE_VERTICAL );
- S.EndTwoColumn();
-#if !defined(USE_FFMPEG)
- bdwn->Enable(FALSE);
- bfnd->Enable(FALSE);
-#endif
- }
- S.EndStatic();
- S.EndHorizontalLay();
-
- S.AddFixedText( _("Note: Export quality options can be chosen by clicking the Options button in the Export dialog.\n"));
- S.StartStatic( _("When importing audio files"));
- {
- S.StartRadioButtonGroup(wxT("/FileFormats/CopyOrEditUncompressedData"),wxT("edit"));
- S.TieRadioButton( _("&Make a copy of uncompressed audio files before editing (safer)"),wxT("copy"));
- S.TieRadioButton( _("&Read uncompressed audio files directly from the original (faster)"),wxT("edit"));
- S.EndRadioButtonGroup();
- S.TieCheckBox( _("&Normalize all tracks in project"),
- wxT("/AudioFiles/NormalizeOnLoad"), false );
- }
- S.EndStatic();
-
- S.StartStatic( _("When saving a project that depends on other audio files"));
- {
- S.StartRadioButtonGroup(wxT("/FileFormats/SaveProjectWithDependencies"),wxT("ask"));
- S.TieRadioButton( _("Always © all audio into project (safest)"), wxT("copy"));
- S.TieRadioButton( _("&Do not copy any audio"), wxT("never"));
- S.TieRadioButton( _("&Ask user"), wxT("ask"));
- S.EndRadioButtonGroup();
- }
- S.EndStatic();
- S.StartStatic( _("When exporting tracks to an audio file"));
- {
- S.StartRadioButtonGroup( wxT("/FileFormats/ExportDownMix" ), true );
- S.TieRadioButton( _("A&lways mix all tracks down to Stereo or Mono channel(s)."), true);
- S.TieRadioButton( _("&Use custom mix (for example to export a 5.1 multichannel file)"),false );
- S.EndRadioButtonGroup();
- S.TieCheckBox( _("S&how Metadata Editor prior to export step"),
- wxT("/AudioFiles/ShowId3Dialog"), true);
- }
- S.EndStatic();
-}
-
-/// Sets the a text area on the dialog to have the name
-/// of the MP3 Library version.
-void FileFormatPrefs::SetMP3VersionText(bool prompt)
-{
- mMP3Version->SetLabel(GetMP3Version(this, prompt));
-}
-
-/// Opens a file-finder dialog so that the user can
-/// tell us where the MP3 library is.
-void FileFormatPrefs::OnMP3FindButton(wxCommandEvent& evt)
-{
- SetMP3VersionText(true);
-}
-
-/// Opens a file-finder dialog so that the user can
-/// tell us where the MP3 library is.
-void FileFormatPrefs::OnMP3DownButton(wxCommandEvent& evt)
-{
- wxString url = wxT("http://www.audacityteam.org/manual/index.php?title=FAQ:Installation_and_Plug-Ins%23How_do_I_download_and_install_the_LAME_MP3_encoder.3F");
- ::OpenInDefaultBrowser(url);
-}
-
-void FileFormatPrefs::SetFFmpegVersionText()
-{
- mFFmpegVersion->SetLabel(GetFFmpegVersion(this));
-}
-
-
-void FileFormatPrefs::OnFFmpegFindButton(wxCommandEvent& evt)
-{
-#ifdef USE_FFMPEG
- FFmpegLibs* FFmpegLibsInst = PickFFmpegLibs();
- bool showerrs =
-#if defined(__WXDEBUG__)
- true;
-#else
- false;
-#endif
-
- FFmpegLibsInst->FreeLibs();
- // Load the libs ('true' means that all errors will be shown)
- bool locate = !LoadFFmpeg(showerrs);
-
- // Libs are fine, don't show "locate" dialog unless user really wants it
- if (!locate)
- {
- int response = wxMessageBox(wxT("Audacity has automatically detected valid FFmpeg libraries.\
- \nDo you still want to locate them manually?"),wxT("Success"),wxCENTRE | wxYES_NO | wxNO_DEFAULT |wxICON_QUESTION);
- if (response == wxYES)
- locate = true;
- }
- if (locate)
- {
- // Show "Locate FFmpeg" dialog
- FFmpegLibsInst->FindLibs(this);
- FFmpegLibsInst->FreeLibs();
- LoadFFmpeg(showerrs);
- }
- SetFFmpegVersionText();
-
- DropFFmpegLibs();
-#endif
-}
-
-void FileFormatPrefs::OnFFmpegDownButton(wxCommandEvent& evt)
-{
- wxString url = wxT("http://www.audacityteam.org/manual/index.php?title=FAQ:Installation_and_Plug-Ins%23installffmpeg");
- ::OpenInDefaultBrowser(url);
-}
-
-/// Takes the settings from the dialog and puts them into prefs.
-/// Most of the preferences are set by the ShuttleGui, but for some
-/// specially handled ones we need to do this ourselves.
-bool FileFormatPrefs::Apply()
-{
- ShuttleGui S( this, eIsSavingToPrefs );
- PopulateOrExchange( S );
-
- return true;
-}
-
-FileFormatPrefs::~FileFormatPrefs()
-{
-}
-
-// Indentation settings for Vim and Emacs and unique identifier for Arch, a
-// version control system. Please do not modify past this point.
-//
-// Local Variables:
-// c-basic-offset: 3
-// indent-tabs-mode: nil
-// End:
-//
-// vim: et sts=3 sw=3
-// arch-tag: 427b9e64-3fc6-40ef-bbf8-e6fff1d442f0
-
diff --git a/src/prefs/FileFormatPrefs.h b/src/prefs/FileFormatPrefs.h
deleted file mode 100644
index a9fed04..0000000
--- a/src/prefs/FileFormatPrefs.h
+++ /dev/null
@@ -1,59 +0,0 @@
-/**********************************************************************
-
- Audacity: A Digital Audio Editor
-
- FileFormatPrefs.h
-
- Joshua Haberman
- Dominic Mazzoni
- James Crook
-
-**********************************************************************/
-
-#ifndef __AUDACITY_FILE_FORMAT_PREFS__
-#define __AUDACITY_FILE_FORMAT_PREFS__
-
-#include "PrefsPanel.h"
-
-class wxCommandEvent;
-class wxStaticText;
-class wxWindow;
-class ShuttleGui;
-
-class FileFormatPrefs:public PrefsPanel
-{
-public:
- FileFormatPrefs(wxWindow * parent);
- ~FileFormatPrefs();
- virtual bool Apply();
-
-private:
- void Populate();
- void PopulateOrExchange(ShuttleGui & S);
- void OnMP3FindButton(wxCommandEvent& evt);
- void OnMP3DownButton(wxCommandEvent& evt);
- void SetMP3VersionText(bool prompt = false);
- void OnFFmpegFindButton(wxCommandEvent& evt);
- void OnFFmpegDownButton(wxCommandEvent& evt);
- void SetFFmpegVersionText();
-
- wxStaticText *mMP3Version;
- wxStaticText *mFFmpegVersion;
-
-public:
- DECLARE_EVENT_TABLE();
-};
-
-#endif
-
-// Indentation settings for Vim and Emacs and unique identifier for Arch, a
-// version control system. Please do not modify past this point.
-//
-// Local Variables:
-// c-basic-offset: 3
-// indent-tabs-mode: nil
-// End:
-//
-// vim: et sts=3 sw=3
-// arch-tag: 300a00cc-0770-45a1-8ab5-88cfb7ae1239
-
diff --git a/src/prefs/GUIPrefs.cpp b/src/prefs/GUIPrefs.cpp
index 9801afe..560598c 100644
--- a/src/prefs/GUIPrefs.cpp
+++ b/src/prefs/GUIPrefs.cpp
@@ -17,54 +17,57 @@
*//*******************************************************************/
-#include <wx/defs.h>
#include "../Audacity.h"
+
+#include <wx/defs.h>
+
#include "../AudacityApp.h"
-#include "../Envelope.h"
#include "../Languages.h"
#include "../Prefs.h"
-#include "../Project.h"
#include "../ShuttleGui.h"
#include "GUIPrefs.h"
-GUIPrefs::GUIPrefs(wxWindow * parent):
- PrefsPanel(parent)
+GUIPrefs::GUIPrefs(wxWindow * parent)
+: PrefsPanel(parent, _("Interface"))
+{
+ Populate();
+}
+
+GUIPrefs::~GUIPrefs()
+{
+}
+
+void GUIPrefs::Populate()
{
- SetLabel(_("Interface")); // Provide visual label
- SetName(_("Interface")); // Provide audible label
+ // First any pre-processing for constructing the GUI.
+ GetLanguages(mLangCodes, mLangNames);
- mHtmlHelpCodes.Add(wxT("Standard"));
- mHtmlHelpCodes.Add(wxT("InBrowser"));
+ mHtmlHelpCodes.Add(wxT("Local"));
mHtmlHelpCodes.Add(wxT("FromInternet"));
- mHtmlHelpChoices.Add(_("Standard"));
- mHtmlHelpChoices.Add(_("In Browser"));
+ mHtmlHelpChoices.Add(_("Local"));
mHtmlHelpChoices.Add(_("From Internet"));
- mSoloCodes.Add( wxT("Standard") );
- mSoloCodes.Add( wxT("Simple") );
- mSoloCodes.Add( wxT("None") );
+ mRangeCodes.Add(_("36"));
+ mRangeCodes.Add(_("48"));
+ mRangeCodes.Add(_("60"));
+ mRangeCodes.Add(_("96"));
+ mRangeCodes.Add(_("120"));
+ mRangeCodes.Add(_("145"));
- mSoloChoices.Add(_("Standard") );
- mSoloChoices.Add(_("Simple") );
- mSoloChoices.Add(_("None") );
+ mRangeChoices.Add(_("-36 dB (shallow range for high-amplitude editing)"));
+ mRangeChoices.Add(_("-48 dB (PCM range of 8 bit samples)"));
+ mRangeChoices.Add(_("-60 dB (PCM range of 10 bit samples)"));
+ mRangeChoices.Add(_("-96 dB (PCM range of 16 bit samples)"));
+ mRangeChoices.Add(_("-120 dB (approximate limit of human hearing)"));
+ mRangeChoices.Add(_("-145 dB (PCM range of 24 bit samples)"));
- Populate( );
-}
-
-void GUIPrefs::Populate( )
-{
- // First any pre-processing for constructing the GUI.
- GetLanguages(mLangCodes, mLangNames);
#if 0
// only for testing...
mLangCodes.Add("kg"); mLangNames.Add("Klingon");
mLangCodes.Add("ep"); mLangNames.Add("Esperanto");
#endif
-#ifdef EXPERIMENTAL_SAVE_DEFAULT_VIEW
- gPrefs->Read(wxT("/GUI/DefaultViewMode"), &mDefaultViewMode, 0L);
-#endif //EXPERIMENTAL_SAVE_DEFAULT_VIEW
//------------------------- Main section --------------------
// Now construct the GUI itself.
@@ -84,110 +87,90 @@ void GUIPrefs::Populate( )
#endif
// End code duplication warning
-void GUIPrefs::PopulateOrExchange( ShuttleGui & S )
+void GUIPrefs::PopulateOrExchange(ShuttleGui & S)
{
- S.SetBorder( 2 );
- S.StartHorizontalLay( wxEXPAND, 1 );
- S.StartVerticalLay();
- S.StartStatic( _("Behaviors"),1 );
+ S.SetBorder(2);
+
+ S.StartStatic(_("Display"));
{
- S.TieCheckBox( _("&Update display while playing"),
- wxT("/GUI/AutoScroll"), true);
- S.TieCheckBox( _("Cl&osing last window quits Audacity"),
- wxT("/GUI/QuitOnClose"), bQuitOnCloseDefault );
- S.TieCheckBox( _("Enable &dragging of left and right selection edges"),
- wxT("/GUI/AdjustSelectionEdges"), true);
- S.TieCheckBox( _("Er&gonomic order of audio I/O buttons"),
- wxT("/GUI/ErgonomicTransportButtons"), true);
- S.TieCheckBox( _("Automatically &fit tracks vertically zoomed"),
- wxT("/GUI/TracksFitVerticallyZoomed"), false );
- S.TieCheckBox( _("\"Move track focus\" c&ycles repeatedly through tracks"),
- wxT("/GUI/CircularTrackNavigation"), false );
- S.TieCheckBox( _("Editing a &clip can move other clips"),
- wxT("/GUI/EditClipCanMove"), true );
- S.TieCheckBox( _("&Select all audio in project, if none selected"),
- wxT("/GUI/SelectAllOnNone"), true );
- S.TieCheckBox( _("&Beep on completion of longer activities"),
- wxT("/GUI/BeepOnCompletion"), false );
+ S.TieCheckBox(_("Er&gonomic order of audio I/O buttons"),
+ wxT("/GUI/ErgonomicTransportButtons"),
+ true);
+ S.TieCheckBox(_("Show '&How to get Help' message at program start up"),
+ wxT("/GUI/ShowSplashScreen"),
+ true);
+
+ S.AddSpace(10);
+
+ S.StartMultiColumn(2);
+ {
+ S.TieChoice(_("Meter/Waveform dB range:"),
+ wxT("/GUI/EnvdBRange"),
+ wxT("60"),
+ mRangeChoices,
+ mRangeCodes);
+ S.SetSizeHints(mRangeChoices);
+
+ S.TieChoice(_("Language:"),
+ wxT("/Locale/Language"),
+ wxT("en"),
+ mLangNames,
+ mLangCodes);
+ S.SetSizeHints(mLangNames);
+
+ S.TieChoice(_("Location of Manual:"),
+ wxT("/GUI/Help"),
+ wxT("Local"),
+ mHtmlHelpChoices,
+ mHtmlHelpCodes);
+ S.SetSizeHints(mHtmlHelpChoices);
+ }
+ S.EndMultiColumn();
}
S.EndStatic();
- S.StartStatic( _("Show / Hide"),0 );
+
+ S.StartStatic(_("Behaviors"));
{
- S.TieCheckBox( _("Enable cut &lines"),
- wxT("/GUI/EnableCutLines"), false);
- S.TieCheckBox( _("Show warnings about &temp files"),
- wxT("/GUI/WarnAboutTempFiles"), true );
- S.TieCheckBox( _("Show prompt to sa&ve, even if project is empty"),
- wxT("/GUI/EmptyCanBeDirty"), true );
- S.TieCheckBox( _("Show &Welcome Message at program start up"),
- wxT("/GUI/ShowSplashScreen"), true );
+ S.TieCheckBox(_("Cl&osing last window quits Audacity"),
+ wxT("/GUI/QuitOnClose"),
+ bQuitOnCloseDefault);
+ S.TieCheckBox(_("&Beep on completion of longer activities"),
+ wxT("/GUI/BeepOnCompletion"),
+ false);
}
S.EndStatic();
- S.StartStatic( _("Modes"),0 );
+
+ S.StartStatic(_("Modes"));
{
+ S.TieCheckBox(_("Cl&eanSpeech Mode (Customized GUI)"),
+ wxT("/Batch/CleanSpeechMode"),
+ false);
+#if USE_VST
+ S.TieCheckBox(_("Display VST effects in GUI mode"),
+ wxT("/VST/GUI"),
+ true);
+#endif
#ifdef __WXDEBUG__
- S.TieCheckBox( _("Don't a&pply effects in batch mode"),
- wxT("/Batch/Debug"), false);
+ S.TieCheckBox(_("Don't a&pply effects in batch mode"),
+ wxT("/Batch/Debug"),
+ false);
#endif
- S.TieCheckBox( _("Cl&eanSpeech Mode (Customized GUI)"),
- wxT("/Batch/CleanSpeechMode"), false);
}
S.EndStatic();
- S.EndVerticalLay();
- S.StartVerticalLay();
- S.StartStatic( _("Display range minimum: meters and 'Waveform (dB)'"),0 );
- {
- S.StartRadioButtonGroup( wxT("/GUI/EnvdBRange"), ENV_DB_RANGE );
- S.TieRadioButton( _("-36 dB (shallow range for high-amplitude editing)"),36);
- S.TieRadioButton( _("-48 dB (PCM range of 8 bit samples)"),48);
- S.TieRadioButton( _("-60 dB (PCM range of 10 bit samples)"),60);
- S.TieRadioButton( _("-96 dB (PCM range of 16 bit samples)"),96);
- S.TieRadioButton( _("-120 dB (approximate limit of human hearing)"),120);
- S.TieRadioButton( _("-145 dB (PCM range of 24 bit samples)"),145);
- S.EndRadioButtonGroup();
- }
- S.EndStatic();
-#ifdef EXPERIMENTAL_SAVE_DEFAULT_VIEW
- S.StartStatic( _("Default View Mode") );
- {
- S.StartRadioButtonGroup( wxT("/GUI/DefaultViewMode"), mDefaultViewMode );
- S.TieRadioButton( _("Waveform"), 0);
- S.TieRadioButton( _("Waveform (dB)"), 1);
- S.TieRadioButton( _("Spectrum"), 2);
- S.TieRadioButton( _("Spectrum log(f)"), 3);
- S.TieRadioButton( _("Pitch (EAC)"), 4);
- S.EndRadioButtonGroup();
- }
- S.EndStatic();
-#endif //EXPERIMENTAL_SAVE_DEFAULT_VIEW
-
- S.StartStatic( _("Other interface choices"),1 );
- S.StartTwoColumn();
- S.TieChoice(_("Language:"), wxT("/Locale/Language"),wxT("en"),mLangNames, mLangCodes );
- S.TieChoice(_("Help:"), wxT("/GUI/Help"),wxT("Standard"),mHtmlHelpChoices, mHtmlHelpCodes );
- S.TieChoice(_("Solo Button:"),wxT("/GUI/Solo"),wxT("Standard"),mSoloChoices, mSoloCodes );
- S.EndTwoColumn();
- S.EndStatic();
-
- S.EndVerticalLay();
- S.EndHorizontalLay();
}
bool GUIPrefs::Apply()
{
- ShuttleGui S( this, eIsSavingToPrefs );
- PopulateOrExchange( S );
+ ShuttleGui S(this, eIsSavingToPrefs);
+ PopulateOrExchange(S);
// If language has changed, we want to change it now, not on the next reboot.
wxString lang = gPrefs->Read(wxT("/Locale/Language"), wxT(""));
- wxGetApp().InitLang( lang );
+ wxGetApp().InitLang(lang);
return true;
}
-GUIPrefs::~GUIPrefs()
-{
-}
// Indentation settings for Vim and Emacs and unique identifier for Arch, a
// version control system. Please do not modify past this point.
@@ -199,4 +182,3 @@ GUIPrefs::~GUIPrefs()
//
// vim: et sts=3 sw=3
// arch-tag: 7e997d04-6b94-4abb-b3d6-748400f86598
-
diff --git a/src/prefs/GUIPrefs.h b/src/prefs/GUIPrefs.h
index 8fc6fce..e87ab6c 100644
--- a/src/prefs/GUIPrefs.h
+++ b/src/prefs/GUIPrefs.h
@@ -14,23 +14,24 @@
#define __AUDACITY_GUI_PREFS__
#include <wx/defs.h>
-#include <wx/string.h>
-#include "PrefsPanel.h"
+#include <wx/arrstr.h>
+#include <wx/window.h>
+
+#include "../ShuttleGui.h"
-class wxWindow;
-class ShuttleGui;
+#include "PrefsPanel.h"
-class GUIPrefs : public PrefsPanel
+class GUIPrefs:public PrefsPanel
{
-public:
+ public:
GUIPrefs(wxWindow * parent);
~GUIPrefs();
virtual bool Apply();
-private:
+ private:
void Populate();
- void PopulateOrExchange( ShuttleGui & S );
+ void PopulateOrExchange(ShuttleGui & S);
wxArrayString mLangCodes;
wxArrayString mLangNames;
@@ -38,12 +39,8 @@ private:
wxArrayString mHtmlHelpCodes;
wxArrayString mHtmlHelpChoices;
- wxArrayString mSoloCodes;
- wxArrayString mSoloChoices;
-
-#ifdef EXPERIMENTAL_SAVE_DEFAULT_VIEW
- int mDefaultViewMode;
-#endif //EXPERIMENTAL_SAVE_DEFAULT_VIEW
+ wxArrayString mRangeCodes;
+ wxArrayString mRangeChoices;
};
#endif
@@ -58,4 +55,3 @@ private:
//
// vim: et sts=3 sw=3
// arch-tag: 57018e2b-d264-4f93-bfa7-06752ebf631e
-
diff --git a/src/prefs/KeyConfigPrefs.cpp b/src/prefs/KeyConfigPrefs.cpp
index 8e8002a..c836980 100644
--- a/src/prefs/KeyConfigPrefs.cpp
+++ b/src/prefs/KeyConfigPrefs.cpp
@@ -27,6 +27,7 @@ KeyConfigPrefs and MousePrefs use.
#include <wx/filedlg.h>
#include "../Prefs.h"
+#include "../Project.h"
#include "../commands/CommandManager.h"
#include "../commands/Keyboard.h"
#include "../xml/XMLFileReader.h"
@@ -37,48 +38,57 @@ KeyConfigPrefs and MousePrefs use.
#include "FileDialog.h"
-#define AssignDefaultsButtonID 7001
-#define CurrentComboID 7002
-#define SetButtonID 7003
-#define ClearButtonID 7004
-#define CommandsListID 7005
-#define SaveButtonID 7006
-#define LoadButtonID 7007
+//
+// KeyConfigPrefs
+//
+#define AssignDefaultsButtonID 17001
+#define CurrentComboID 17002
+#define SetButtonID 17003
+#define ClearButtonID 17004
+#define CommandsListID 17005
+#define SaveButtonID 17006
+#define LoadButtonID 17007
+#define CategoryID 17008
// The numbers of the columns of the mList.
-enum { BlankColumn=0, CommandColumn=1, KeyComboColumn=2};
+enum
+{
+ CommandColumn,
+ KeyComboColumn
+};
-BEGIN_EVENT_TABLE(KeyConfigPrefs, wxPanel)
+BEGIN_EVENT_TABLE(KeyConfigPrefs, PrefsPanel)
EVT_BUTTON(AssignDefaultsButtonID, KeyConfigPrefs::OnDefaults)
EVT_BUTTON(SetButtonID, KeyConfigPrefs::OnSet)
EVT_BUTTON(ClearButtonID, KeyConfigPrefs::OnClear)
EVT_BUTTON(SaveButtonID, KeyConfigPrefs::OnSave)
EVT_BUTTON(LoadButtonID, KeyConfigPrefs::OnLoad)
+ EVT_CHOICE(CategoryID, KeyConfigPrefs::OnCategory)
EVT_LIST_ITEM_SELECTED(CommandsListID, KeyConfigPrefs::OnItemSelected)
EVT_LIST_KEY_DOWN(CommandsListID, KeyConfigPrefs::OnKeyDown)
END_EVENT_TABLE()
-KeyConfigPrefs::KeyConfigPrefs(wxWindow * parent):
-PrefsPanel(parent)
+KeyConfigPrefs::KeyConfigPrefs(wxWindow * parent)
+: PrefsPanel(parent, _("Keyboard")),
+ mKey(NULL)
{
- SetLabel(_("Keyboard")); // Provide visual label
- SetName(_("Keyboard")); // Provide audible label
- Populate( );
+ Populate();
}
-void KeyConfigPrefs::Populate( )
+KeyConfigPrefs::~KeyConfigPrefs()
{
- //------------------------- Main section --------------------
- // Now construct the GUI itself.
- // Use 'eIsCreatingFromPrefs' so that the GUI is
- // initialised with values from gPrefs.
- ShuttleGui S(this, eIsCreatingFromPrefs);
+ mKey->Disconnect(wxEVT_KEY_DOWN,
+ wxKeyEventHandler(KeyConfigPrefs::OnCaptureKeyDown));
+ mKey->Disconnect(wxEVT_CHAR,
+ wxKeyEventHandler(KeyConfigPrefs::OnCaptureChar));
+}
- // First any pre-processing for constructing the GUI.
- // These steps set up the pointer to the command manager...
+void KeyConfigPrefs::Populate()
+{
+ ShuttleGui S(this, eIsCreatingFromPrefs);
AudacityProject *project = GetActiveProject();
- if (!project) {
+ if (!project) {
S.StartVerticalLay(true);
{
S.StartStatic(wxEmptyString, true);
@@ -92,10 +102,13 @@ void KeyConfigPrefs::Populate( )
return;
}
+
mManager = project->GetCommandManager();
+ mManager->GetCategories(mCats);
+ mCats.Insert(_("All"), 0);
PopulateOrExchange(S);
- // ----------------------- End of main section --------------
+
CreateList();
mCommandSelected = -1;
}
@@ -104,179 +117,282 @@ void KeyConfigPrefs::Populate( )
/// is used both to populate the panel and to exchange data with it.
/// With KeyConfigPrefs all the exchanges are handled specially,
/// so this is only used in populating the panel.
-void KeyConfigPrefs::PopulateOrExchange( ShuttleGui & S )
+void KeyConfigPrefs::PopulateOrExchange(ShuttleGui & S)
{
- S.StartStatic( _("Key Bindings"), 1 );
- mList = S.Id( CommandsListID ).AddListControlReportMode();
- S.StartHorizontalLay( wxALIGN_LEFT, 0);
+ S.SetBorder(2);
+
+ S.StartStatic(_("Key Bindings"), 1);
{
- // LLL: Moved here from Populate. On the Mac, the control
- // would not accept focus when using the mouse, but it
- // would when tabbing to the field. Not really sure
- // why...just glad it works now. :-)
-
- // The SysKeyText ctrl is so special that we aren't
- // going to include it into Audacity's version of ShuttleGui.
- // So instead we create it here, and we can add it into
- // the sizer scheme later...
- mCurrentComboText = new SysKeyTextCtrl(
- this, CurrentComboID, wxT(""),
- wxDefaultPosition, wxSize(300, -1), 0 );
-
- // AddWindow is a generic 'Add' for ShuttleGui.
- // It allows us to add 'foreign' controls.
- S.AddWindow( mCurrentComboText )->MoveAfterInTabOrder( mList );
- S.Id( SetButtonID ).AddButton( _("S&et"));
- S.Id( ClearButtonID ).AddButton( _("&Clear"));
- }
- S.EndHorizontalLay();
+ S.StartHorizontalLay(wxALIGN_CENTRE, false);
+ {
+ S.Id(CategoryID);
+ mCat = S.AddChoice(_("Category:"),
+ mCats[0],
+ &mCats);
+ }
+ S.EndHorizontalLay();
+
+ mList = S.Id(CommandsListID).AddListControlReportMode();
+
+ S.StartThreeColumn();
+ {
+ if (!mKey) {
+ mKey = new wxTextCtrl(this,
+ CurrentComboID,
+ wxT(""),
+ wxDefaultPosition,
+#if defined(__WXMAC__)
+ wxSize(300, -1));
+#else
+ wxSize(210, -1));
+#endif
+ mKey->Connect(wxEVT_KEY_DOWN,
+ wxKeyEventHandler(KeyConfigPrefs::OnCaptureKeyDown));
+ mKey->Connect(wxEVT_CHAR,
+ wxKeyEventHandler(KeyConfigPrefs::OnCaptureChar));
+ }
+ S.AddWindow(mKey);
+
+ S.Id(SetButtonID).AddButton(_("S&et"));
+ S.Id(ClearButtonID).AddButton(_("&Clear"));
+ }
+ S.EndThreeColumn();
#if defined(__WXMAC__)
- S.AddFixedText( _("Note: Pressing Cmd+Q will quit. All other keys are valid."));
+ S.AddFixedText(_("Note: Pressing Cmd+Q will quit. All other keys are valid."));
#endif
- S.StartHorizontalLay( wxALIGN_LEFT, 0);
- {
- S.Id( AssignDefaultsButtonID ).AddButton( _("&Defaults"));
- S.Id( SaveButtonID ).AddButton( _("&Save..."));
- S.Id( LoadButtonID ).AddButton( _("&Load..."));
+ S.StartThreeColumn();
+ {
+ S.Id(LoadButtonID).AddButton(_("&Load..."));
+ S.Id(SaveButtonID).AddButton(_("&Save..."));
+ S.Id(AssignDefaultsButtonID).AddButton(_("&Defaults"));
+ }
+ S.EndThreeColumn();
}
- S.EndHorizontalLay();
S.EndStatic();
- return;
}
/// Sets up mList with the right number of columns, titles,
/// fills the contents and sets column widths.
void KeyConfigPrefs::CreateList()
{
- wxASSERT( mList );
-
- //An empty first column is a workaround - under Win98 the first column
- //can't be right aligned.
- mList->InsertColumn(BlankColumn, wxT(""), wxLIST_FORMAT_LEFT );
- mList->InsertColumn(CommandColumn, _NoAcc("&Command"), wxLIST_FORMAT_LEFT );
- mList->InsertColumn(KeyComboColumn, _("Key Combination"), wxLIST_FORMAT_LEFT );
+ mList->InsertColumn(CommandColumn, _("Command"), wxLIST_FORMAT_LEFT);
+ mList->InsertColumn(KeyComboColumn, _("Key Combination"), wxLIST_FORMAT_LEFT);
RepopulateBindingsList();
- mList->SetColumnWidth( BlankColumn, 0 ); // First column width is zero, to hide it.
- mList->SetColumnWidth( CommandColumn, wxLIST_AUTOSIZE );
- mList->SetColumnWidth( KeyComboColumn, 250 );
+ mList->SetColumnWidth(CommandColumn, wxLIST_AUTOSIZE);
+ mList->SetColumnWidth(KeyComboColumn, 250);
}
-void KeyConfigPrefs::OnSave(wxCommandEvent& event)
+int wxCALLBACK SortCallback(long item1, long item2, long sortData)
{
- Apply();
+ wxArrayString *names = (wxArrayString *) sortData;
- wxString fName = wxT("Audacity-keys.xml");
- wxString path = gPrefs->Read(wxT("/DefaultExportPath"),
- ::wxGetCwd());
+ if (names->Item(item1) < names->Item(item2)) {
+ return -1;
+ }
- fName = FileSelector(_("Export Keyboard Shortcuts As:"),
- NULL,
- fName,
- wxT("xml"),
- wxT("*.xml"),
- wxFD_SAVE | wxFD_OVERWRITE_PROMPT | wxRESIZE_BORDER,
- this);
+ if (names->Item(item1) > names->Item(item2)) {
+ return 1;
+ }
- if (!fName)
- return;
+ return 0;
+}
- path = wxPathOnly(fName);
- gPrefs->Write(wxT("/DefaultExportPath"), path);
+void KeyConfigPrefs::RepopulateBindingsList()
+{
+ wxString cat = mCat->GetStringSelection();
- XMLFileWriter prefFile;
-
- prefFile.Open(fName, wxT("wb"));
+ mList->DeleteAllItems(); // Delete contents, but not the column headers.
+ mNames.Clear();
+ mManager->GetAllCommandNames(mNames, false);
+ bool save = (mKeys.GetCount() == 0);
- if (!prefFile.IsOpened()) {
- wxMessageBox(_("Couldn't write to file: ") + fName,
- _("Error saving keyboard shortcuts"),
- wxOK | wxCENTRE, this);
- return;
- }
+ size_t ndx = 0;
+ int color = 0;
+ for (size_t i = 0; i < mNames.GetCount(); i++) {
+ wxString name = mNames[i];
+ wxString key = KeyStringDisplay(mManager->GetKeyFromName(name));
+
+ // Save the original key value to support canceling
+ if (save) {
+ mKeys.Add(key);
+ }
+
+ if (cat != _("All") && mManager->GetCategoryFromName(name) != cat) {
+ continue;
+ }
+
+ wxString label;
+
+ // Labels for undo and redo change according to the last command
+ // which can be undone/redone, so give them a special check in order
+ // not to confuse users
+ if (name == wxT("Undo")) {
+ label = _("Undo");
+ }
+ else if (name == wxT("Redo")) {
+ label = _("Redo");
+ }
+ else {
+ label = mManager->GetPrefixedLabelFromName(name);
+ }
+
+ label = wxMenuItem::GetLabelFromText(label.BeforeFirst(wxT('\t')));
- mManager->WriteXML(prefFile);
+ mList->InsertItem(ndx, label);
+ mList->SetItem(ndx, KeyComboColumn, key);
+ mList->SetItemData(ndx, i);
+ mList->SetItemBackgroundColour(ndx, color ? wxColour(240, 240, 240) : *wxWHITE);
+ color = 1 - color;
- prefFile.Close();
+ ndx++;
+ }
+
+// mList->SortItems(SortCallback, (long) &mNames);
}
-void KeyConfigPrefs::OnLoad(wxCommandEvent& event)
+void KeyConfigPrefs::OnLoad(wxCommandEvent & e)
{
+ wxString file = wxT("Audacity-keys.xml");
wxString path = gPrefs->Read(wxT("/DefaultOpenPath"),
::wxGetCwd());
- wxString fileName = FileSelector(_("Select an XML file containing Audacity keyboard shortcuts..."),
- path, // Path
- wxT(""), // Name
- wxT(""), // Extension
- _("XML files (*.xml)|*.xml|All files (*.*)|*.*"),
- wxRESIZE_BORDER, // Flags
- this); // Parent
+ file = FileSelector(_("Select an XML file containing Audacity keyboard shortcuts..."),
+ path,
+ file,
+ wxT(""),
+ _("XML files (*.xml)|*.xml|All files (*.*)|*.*"),
+ wxRESIZE_BORDER,
+ this);
- if (!fileName)
+ if (!file) {
return;
+ }
- path = wxPathOnly(fileName);
+ path = wxPathOnly(file);
gPrefs->Write(wxT("/DefaultOpenPath"), path);
XMLFileReader reader;
- if (!reader.Parse(mManager, fileName))
+ if (!reader.Parse(mManager, file)) {
wxMessageBox(reader.GetErrorStr(),
_("Error loading keyboard shortcuts"),
wxOK | wxCENTRE, this);
+ }
RepopulateBindingsList();
}
-void KeyConfigPrefs::OnSet(wxCommandEvent& event)
+void KeyConfigPrefs::OnSave(wxCommandEvent & e)
{
- if (mCommandSelected < 0 || mCommandSelected >= (int)mNames.GetCount())
+ wxString file = wxT("Audacity-keys.xml");
+ wxString path = gPrefs->Read(wxT("/DefaultExportPath"),
+ ::wxGetCwd());
+
+ file = FileSelector(_("Export Keyboard Shortcuts As:"),
+ path,
+ file,
+ wxT("xml"),
+ _("XML files (*.xml)|*.xml|All files (*.*)|*.*"),
+ wxFD_SAVE | wxFD_OVERWRITE_PROMPT | wxRESIZE_BORDER,
+ this);
+
+ if (!file) {
return;
- wxString newKey = mCurrentComboText->GetValue();
+ }
+
+ path = wxPathOnly(file);
+ gPrefs->Write(wxT("/DefaultExportPath"), path);
+
+ XMLFileWriter prefFile;
- // Check if shortcut has already been assigned
- for (int i = 0; i < mList->GetItemCount(); i++)
+ try
+ {
+ prefFile.Open(file, wxT("wb"));
+ mManager->WriteXML(prefFile);
+ prefFile.Close();
+ }
+ catch (XMLFileWriterException* pException)
{
+ wxMessageBox(_("Couldn't write to file: ") + file,
+ _("Error saving keyboard shortcuts"),
+ wxOK | wxCENTRE, this);
+
+ delete pException;
+ }
+}
+
+void KeyConfigPrefs::OnDefaults(wxCommandEvent & e)
+{
+ for (size_t i = 0; i < mNames.GetCount(); i++) {
+ mManager->SetKeyFromName(mNames[i],
+ mManager->GetDefaultKeyFromName(mNames[i]));
+ }
+ RepopulateBindingsList();
+}
+
+void KeyConfigPrefs::OnCaptureKeyDown(wxKeyEvent & e)
+{
+ wxTextCtrl *t = (wxTextCtrl *)e.GetEventObject();
+ t->SetValue(KeyStringDisplay(KeyEventToKeyString(e)));
+}
+
+void KeyConfigPrefs::OnCaptureChar(wxKeyEvent & e)
+{
+}
+
+void KeyConfigPrefs::OnSet(wxCommandEvent & e)
+{
+ if (mCommandSelected < 0 || mCommandSelected >= mNames.GetCount()) {
+ return;
+ }
+
+ wxString newKey = mKey->GetValue();
+
+ // Check if shortcut has already been assigned
+ for (int i = 0; i < mList->GetItemCount(); i++) {
wxListItem item;
- item.m_col = KeyComboColumn;
- item.m_mask = wxLIST_MASK_TEXT;
+
+ item.SetColumn(KeyComboColumn);
+ item.SetMask(wxLIST_MASK_TEXT);
item.SetId(i);
mList->GetItem(item);
- if (item.m_text == newKey)
- {
- wxListItem item;
- item.m_col = CommandColumn;
- item.m_mask = wxLIST_MASK_TEXT;
- item.SetId(i);
+
+ if (item.GetText() == newKey) {
+ item.SetColumn(CommandColumn);
mList->GetItem(item);
- wxString prompt = wxString::Format(
- _("The keyboard shortcut '%s' is already assigned to:\n\n'%s'"),
- newKey.c_str(),
- item.m_text.c_str());
+
+ wxString prompt;
+ prompt = wxString::Format(_("The keyboard shortcut '%s' is already assigned to:\n\n'%s'"),
+ newKey.c_str(),
+ item.GetText().c_str());
wxMessageBox(prompt, _("Error"), wxICON_STOP | wxCENTRE, this);
return;
}
}
-
- mList->SetItem( mCommandSelected, KeyComboColumn, newKey);
+
+ mList->SetItem(mCommandSelected, KeyComboColumn, newKey);
+ mManager->SetKeyFromName(mNames[mList->GetItemData(mCommandSelected)], newKey);
}
void KeyConfigPrefs::OnClear(wxCommandEvent& event)
{
- mCurrentComboText->Clear();
- if (mCommandSelected < 0 || mCommandSelected >= (int)mNames.GetCount())
+ mKey->Clear();
+ if (mCommandSelected < 0 || mCommandSelected >= mNames.GetCount()) {
return;
- mList->SetItem( mCommandSelected, KeyComboColumn, wxT("") );
+ }
+
+ mList->SetItem(mCommandSelected, KeyComboColumn, wxT(""));
+ mManager->SetKeyFromName(mNames[mList->GetItemData(mCommandSelected)], wxT(""));
}
-void KeyConfigPrefs::OnKeyDown(wxListEvent &event)
+void KeyConfigPrefs::OnKeyDown(wxListEvent & e)
{
- int keycode = event.GetKeyCode();
+ int keycode = e.GetKeyCode();
int selected = mList->GetNextItem(-1, wxLIST_NEXT_ALL, wxLIST_STATE_SELECTED);
int cnt = mList->GetItemCount();
wxListItem item;
@@ -291,8 +407,8 @@ void KeyConfigPrefs::OnKeyDown(wxListEvent &event)
mList->GetItem(item);
- if (item.m_text.Left(1).IsSameAs(keycode, false)) {
- mList->SetItemState(event.GetIndex(),
+ if (item.GetText().Left(1).IsSameAs(keycode, false)) {
+ mList->SetItemState(e.GetIndex(),
0,
wxLIST_STATE_FOCUSED | wxLIST_STATE_SELECTED);
@@ -315,8 +431,8 @@ void KeyConfigPrefs::OnKeyDown(wxListEvent &event)
mList->GetItem(item);
- if (item.m_text.Left(1).IsSameAs(keycode, false)) {
- mList->SetItemState(event.GetIndex(),
+ if (item.GetText().Left(1).IsSameAs(keycode, false)) {
+ mList->SetItemState(e.GetIndex(),
0,
wxLIST_STATE_FOCUSED | wxLIST_STATE_SELECTED);
@@ -331,161 +447,62 @@ void KeyConfigPrefs::OnKeyDown(wxListEvent &event)
}
}
-void KeyConfigPrefs::OnItemSelected(wxListEvent &event)
+void KeyConfigPrefs::OnCategory(wxCommandEvent & e)
{
- mCommandSelected = event.GetIndex();
- if (mCommandSelected < 0 || mCommandSelected >= (int)mNames.GetCount()) {
- mCurrentComboText->SetLabel(wxT(""));
- return;
- }
-
- wxListItem item;
- item.m_col = KeyComboColumn;
- item.m_mask = wxLIST_MASK_TEXT;
- item.SetId( mCommandSelected );
- mList->GetItem(item);
-
- mCurrentComboText->Clear();
- mCurrentComboText->AppendText(item.m_text);
- // JKC: July-2004
- // Under Windows 98 setting the focus to the combo box whilst
- // we are still processing an OnItemSelected event can lead
- // to a crash (try clicking on an item in the list and dragging it).
- // It's OK under WinXP. TODO: Is there a #define that only excludes
- // WIN_98 that we could use here instead??
-#ifndef __WXMSW__
- // LLL: Removed since the focus would jump away from the listctrl when
- // using the keyboard to move up and down the list. Every time
- // the up/down arrows are pressed, the focus jumps aways and you have
- // to tab back to the listctrl.
- //mCurrentComboText->SetFocus();
-#else
- //JKC Something like the following might do what we want under Win98?
- //mCurrentComboText->GetEventHandler()->AddPendingEvent( wxFocusEvent(wxEVT_SET_FOCUS));
-#endif
+ RepopulateBindingsList();
}
-void KeyConfigPrefs::RepopulateBindingsList()
+void KeyConfigPrefs::OnItemSelected(wxListEvent & e)
{
- mList->DeleteAllItems(); // Delete contents, but not the column headers.
- mNames.Clear();
- mManager->GetAllCommandNames(mNames, false);
- unsigned int i;
- for(i=0; i<mNames.GetCount(); i++) {
- mList->InsertItem( i, wxT("") );
- wxString label;
-
- // Labels for undo and redo change according to the last command
- // which can be undone/redone, so give them a special check in order
- // not to confuse users
- if (mNames[i] == wxT("Undo"))
- label = _("Undo");
- else if (mNames[i] == wxT("Redo"))
- label = _NoAcc("&Redo");
- else
- label = mManager->GetPrefixedLabelFromName(mNames[i]);
-
- label = wxMenuItem::GetLabelFromText(label.BeforeFirst('\t'));
- wxString key = KeyStringDisplay(mManager->GetKeyFromName(mNames[i]));
-
- mList->SetItem( i, CommandColumn, label );
- mList->SetItem( i, KeyComboColumn, key );
+ mCommandSelected = e.GetIndex();
+ if (mCommandSelected < 0 || mCommandSelected >= mNames.GetCount()) {
+ mKey->SetLabel(wxT(""));
+ return;
}
-}
-void KeyConfigPrefs::OnDefaults(wxCommandEvent& event)
-{
- unsigned int i;
-
- for (i=0; i<mNames.GetCount(); i++) {
- mList->SetItem(i,
- KeyComboColumn,
- KeyStringDisplay(mManager->GetDefaultKeyFromName(mNames[i])));
- }
+ wxListItem item;
+ item.SetColumn(KeyComboColumn);
+ item.SetMask(wxLIST_MASK_TEXT);
+ item.SetId(mCommandSelected);
+ mList->GetItem(item);
+
+ mKey->Clear();
+ mKey->AppendText(item.GetText());
}
bool KeyConfigPrefs::Apply()
{
- unsigned int i;
- wxListItem item;
-
- /// \todo
- /// gPrefs SetPath is dodgy as we might be using gPrefs
- /// elsewhere.
- gPrefs->SetPath(wxT("/NewKeys"));
-
- //
- // Only store the key in the preferences if it's different
- // than the default value.
- //
-
- item.m_col = KeyComboColumn;
- item.m_mask = wxLIST_MASK_TEXT;
- for(i=0; i<mNames.GetCount(); i++) {
- item.SetId( i );
- mList->GetItem(item);
- wxString name = mNames[i];
- wxString key = KeyStringNormalize(item.m_text);
-
- wxString defaultKey = KeyStringNormalize(mManager->GetDefaultKeyFromName(name));
+ for (size_t i = 0; i < mNames.GetCount(); i++) {
+ wxString dkey = KeyStringNormalize(mManager->GetDefaultKeyFromName(mNames[i]));
+ wxString name = wxT("/NewKeys/") + mNames[i];
+ wxString key = KeyStringNormalize(mManager->GetKeyFromName(mNames[i]));
if (gPrefs->HasEntry(name)) {
- wxString oldKey = KeyStringNormalize(gPrefs->Read(name, key));
- if (oldKey != key) {
+ if (key != KeyStringNormalize(gPrefs->Read(name, key))) {
gPrefs->Write(name, key);
}
- if (key == defaultKey) {
+ if (key == dkey) {
gPrefs->DeleteEntry(name);
}
}
else {
- if (key != defaultKey){
+ if (key != dkey) {
gPrefs->Write(name, key);
}
}
}
- gPrefs->SetPath(wxT("/"));
-
return true;
}
-KeyConfigPrefs::~KeyConfigPrefs()
-{
-}
-
-
-//BG: A quick and dirty override of wxTextCtrl to capture keys like Ctrl, Alt
-BEGIN_EVENT_TABLE(SysKeyTextCtrl, wxTextCtrl)
- EVT_KEY_DOWN(SysKeyTextCtrl::OnKey)
- EVT_CHAR(SysKeyTextCtrl::OnChar)
-END_EVENT_TABLE()
-
-SysKeyTextCtrl::SysKeyTextCtrl(wxWindow *parent, wxWindowID id,
- const wxString& value,
- const wxPoint& pos,
- const wxSize& size,
- long style,
- const wxValidator& validator,
- const wxString& name)
-: wxTextCtrl(parent, id, value, pos, size, style, validator, name)
-{
-}
-
-SysKeyTextCtrl::~SysKeyTextCtrl()
-{
-}
-
-//BG: It works on Windows, but we need to trap WM_CHAR
-//DM: On Linux, now it works except for Ctrl+3...Ctrl+8 (April/2003)
-void SysKeyTextCtrl::OnKey(wxKeyEvent& event)
+void KeyConfigPrefs::Cancel()
{
- SetValue(KeyStringDisplay(KeyEventToKeyString(event)));
-}
+ // Restore original key values
+ for (size_t i = 0; i < mNames.GetCount(); i++) {
+ mManager->SetKeyFromName(mNames[i], mKeys[i]);
+ }
-//BG: Trap WM_CHAR
-void SysKeyTextCtrl::OnChar(wxKeyEvent& event)
-{
+ return;
}
// Indentation settings for Vim and Emacs and unique identifier for Arch, a
diff --git a/src/prefs/KeyConfigPrefs.h b/src/prefs/KeyConfigPrefs.h
index 0c5e236..b904df2 100644
--- a/src/prefs/KeyConfigPrefs.h
+++ b/src/prefs/KeyConfigPrefs.h
@@ -13,78 +13,54 @@
#define __AUDACITY_KEY_CONFIG_PREFS__
#include <wx/defs.h>
+#include <wx/listctrl.h>
#include <wx/textctrl.h>
#include <wx/string.h>
-#include "PrefsPanel.h"
-#include "../Project.h"
-
-class wxChoice;
-class wxCharEvent;
-class wxStaticText;
-class wxListCtrl;
-class wxListEvent;
-class wxWindow;
+#include "../ShuttleGui.h"
+#include "../commands/CommandManager.h"
-class SysKeyTextCtrl;
-class CommandManager;
-class ShuttleGui;
+#include "PrefsPanel.h"
class KeyConfigPrefs:public PrefsPanel
{
-
-public:
+ public:
KeyConfigPrefs(wxWindow * parent);
~KeyConfigPrefs();
virtual bool Apply();
+ virtual void Cancel();
-private:
+ private:
void Populate();
- void PopulateOrExchange( ShuttleGui & S );
+ void PopulateOrExchange(ShuttleGui & S);
void CreateList();
-
- void OnDefaults(wxCommandEvent& event);
- void OnLoad(wxCommandEvent& event);
- void OnSave(wxCommandEvent& event);
- void OnSet(wxCommandEvent& event);
- void OnClear(wxCommandEvent& event);
- void OnItemSelected(wxListEvent &event);
- void OnKeyDown(wxListEvent &event);
void RepopulateBindingsList();
- SysKeyTextCtrl *mCurrentComboText;
- wxListCtrl * mList;
+ void OnDefaults(wxCommandEvent & e);
+ void OnLoad(wxCommandEvent & e);
+ void OnSave(wxCommandEvent & e);
+ void OnSet(wxCommandEvent & e);
+ void OnClear(wxCommandEvent & e);
+ void OnCategory(wxCommandEvent & e);
+ void OnItemSelected(wxListEvent & e);
+ void OnKeyDown(wxListEvent & e);
+
+ void OnCaptureKeyDown(wxKeyEvent & e);
+ void OnCaptureChar(wxKeyEvent & e);
+
+ wxChoice *mCat;
+ wxTextCtrl *mKey;
+ wxListCtrl *mList;
+
CommandManager *mManager;
- int mCommandSelected;
+ size_t mCommandSelected;
+
+ wxArrayString mCats;
wxArrayString mNames;
+ wxArrayString mKeys;
-public:
DECLARE_EVENT_TABLE();
};
-
-/// \brief BG: A quick and dirty override of wxTextCtrl to capture keys like Ctrl, Alt
-///
-/// This is only ever used by KeyConfigPrefs.
-class SysKeyTextCtrl:public wxTextCtrl
-{
-public:
- SysKeyTextCtrl(wxWindow *parent, wxWindowID id,
- const wxString& value = wxEmptyString,
- const wxPoint& pos = wxDefaultPosition,
- const wxSize& size = wxDefaultSize,
- long style = 0,
- const wxValidator& validator = wxDefaultValidator,
- const wxString& name = wxTextCtrlNameStr);
- ~SysKeyTextCtrl();
-
-private:
- void OnKey(wxKeyEvent& event);
- void OnChar(wxKeyEvent& event);
-
-protected:
- DECLARE_EVENT_TABLE()
-};
-
#endif
// Indentation settings for Vim and Emacs and unique identifier for Arch, a
diff --git a/src/prefs/MidiIOPrefs.cpp b/src/prefs/MidiIOPrefs.cpp
index f380c66..ec8f8d7 100644
--- a/src/prefs/MidiIOPrefs.cpp
+++ b/src/prefs/MidiIOPrefs.cpp
@@ -1,6 +1,3 @@
-#include "../Experimental.h"
-
-#ifdef EXPERIMENTAL_NOTE_TRACK
/**********************************************************************
Audacity: A Digital Audio Editor
@@ -18,7 +15,7 @@
other settings.
Presents interface for user to select the recording device and
- playback device, from the list of choices that PortAudio
+ playback device, from the list of choices that PortMidi
makes available.
Also lets user decide whether or not to record in stereo, and
@@ -27,29 +24,56 @@ other settings.
*//********************************************************************/
#include "../Audacity.h"
+#include "../Experimental.h"
+#ifdef EXPERIMENTAL_MIDI_OUT
+
#include <wx/defs.h>
+
+#include <wx/choice.h>
#include <wx/intl.h>
-#include "../Prefs.h"
+#include "portmidi.h"
+
#include "../AudioIO.h"
-#include "../Project.h"
#include "../Internat.h"
+#include "../Prefs.h"
+#include "../Project.h"
#include "../ShuttleGui.h"
-#include "portmidi.h"
+
#include "MidiIOPrefs.h"
-MidiIOPrefs::MidiIOPrefs(wxWindow * parent):
- PrefsPanel(parent)
+enum {
+ HostID = 10000,
+ PlayID,
+ RecordID,
+ ChannelsID
+};
+
+BEGIN_EVENT_TABLE(MidiIOPrefs, PrefsPanel)
+ EVT_CHOICE(HostID, MidiIOPrefs::OnHost)
+// EVT_CHOICE(RecordID, MidiIOPrefs::OnDevice)
+END_EVENT_TABLE()
+
+MidiIOPrefs::MidiIOPrefs(wxWindow * parent)
+: PrefsPanel(parent, _("MIDI Devices"))
{
- SetLabel(_("Audio I/O")); // Provide visual label
- SetName(_("Audio I/O")); // Provide audible label
Populate();
}
-void MidiIOPrefs::Populate( )
+MidiIOPrefs::~MidiIOPrefs()
+{
+}
+
+void MidiIOPrefs::Populate()
{
// First any pre-processing for constructing the GUI.
GetNamesAndLabels();
+
+ // Get current setting for devices
+ mPlayDevice = gPrefs->Read(wxT("/MidiIO/PlaybackDevice"), wxT(""));
+ mRecordDevice = gPrefs->Read(wxT("/MidiIO/RecordingDevice"), wxT(""));
+// mRecordChannels = gPrefs->Read(wxT("/MidiIO/RecordChannels"), 2L);
+
//------------------------- Main section --------------------
// Now construct the GUI itself.
// Use 'eIsCreatingFromPrefs' so that the GUI is
@@ -57,90 +81,90 @@ void MidiIOPrefs::Populate( )
ShuttleGui S(this, eIsCreatingFromPrefs);
PopulateOrExchange(S);
// ----------------------- End of main section --------------
- // GUI is built, now do any post processing of it.
- // Fit(); // JKC: Doesn't seem to make any difference...
+ wxCommandEvent e;
+ OnHost(e);
}
/// Gets the lists of names and lists of labels which are
/// used in the choice controls.
/// The names are what the user sees in the wxChoice.
/// The corresponding labels are what gets stored.
-void MidiIOPrefs::GetNamesAndLabels()
-{
- // Get lists of devices both for play and record.
- int j;
- wxString Name;
- wxString Label;
-
+void MidiIOPrefs::GetNamesAndLabels() {
+ // Gather list of hosts. Only added hosts that have devices attached.
int nDevices = Pm_CountDevices();
-
- for(j=0; j<nDevices; j++) {
- const PmDeviceInfo* info = Pm_GetDeviceInfo(j);
- Name = wxString( info->name, wxConvLocal );
- Label = Name;
- if (info->input > 0) {
- mmPlayNames.Add( Name );
- mmPlayLabels.Add( Label );
+ for (int i = 0; i < nDevices; i++) {
+ const PmDeviceInfo *info = Pm_GetDeviceInfo(i);
+ if (info->output || info->input) { //should always happen
+ wxString name(info->interf, wxConvLocal);
+ if (mHostNames.Index(name) == wxNOT_FOUND) {
+ mHostNames.Add(name);
+ mHostLabels.Add(name);
+ }
}
- if (info->output > 0) {
- mmRecordNames.Add( Name );
- mmRecordLabels.Add( Label );
- }
- }
-
- // Channel counts, mono, stereo etc...
- const int numChannels = 16;
- for(int c=0; c<numChannels; c++)
- {
- mmChannelNames.Add( wxString::Format(wxT("%d"), c+1));
- mmChannelLabels.Add( c+1 );
}
- mmChannelNames[0] = wxString::Format(_("1 (Mono)"));
- mmChannelNames[1] = wxString::Format(_("2 (Stereo)"));
}
-void MidiIOPrefs::PopulateOrExchange( ShuttleGui & S )
-{
- /// \todo
- /// JKC: I think setting paths in gPrefs is bad practice.
- /// Suppose we are using gPrefs from elsewhere at the same time?
- /// Change these all to full paths?
- gPrefs->SetPath(wxT("/MidiIO"));
+void MidiIOPrefs::PopulateOrExchange( ShuttleGui & S ) {
+ wxArrayString empty;
- S.SetBorder( 2 );
+ S.SetBorder(2);
- S.StartHorizontalLay(wxEXPAND, 0 );
- S.StartStatic( _("Playback"),1 );
+ S.StartStatic(_("Interface"));
{
- S.StartMultiColumn(2, wxEXPAND);
- S.SetStretchyCol(1);
- S.TieChoice( _("Device") + wxString(wxT(":")), wxT("PlaybackDevice"),
- wxT(""), mmPlayNames, mmPlayLabels );
-
- S.AddPrompt( _("Using:") );
- wxString ver = _("Portaudio v");
-#if USE_PORTAUDIO_V19
- ver += wxT("19");
-#else
- ver += wxT("18");
-#endif
- S.AddFixedText( ver );
+ S.StartMultiColumn(2);
+ {
+ S.Id(HostID);
+ mHost = S.TieChoice(_("Host") + wxString(wxT(":")),
+ wxT("/MidiIO/Host"),
+ wxT(""),
+ mHostNames,
+ mHostLabels);
+ S.SetSizeHints(mHostNames);
+
+ S.AddPrompt(_("Using:"));
+ S.AddFixedText(wxString(Pa_GetVersionText(), wxConvLocal));
+ }
S.EndMultiColumn();
}
S.EndStatic();
- S.StartStatic( _("Recording"), 1 );
+
+ S.StartStatic(_("Playback"));
{
- S.StartMultiColumn(2, wxEXPAND);
- S.SetStretchyCol(1);
- S.TieChoice( _("Device") + wxString(wxT(":")), wxT("RecordingDevice"),
- wxT(""), mmRecordNames, mmRecordLabels );
- S.TieChoice( _("Channels") + wxString(wxT(":")), wxT("RecordChannels"),
- 2, mmChannelNames, mmChannelLabels );
+ S.StartMultiColumn(2);
+ {
+ S.Id(PlayID);
+ mPlay = S.AddChoice(_("Device") + wxString(wxT(":")),
+ wxEmptyString,
+ &empty);
+ }
S.EndMultiColumn();
}
S.EndStatic();
- S.EndHorizontalLay();
+
+ S.StartStatic(_("Recording"));
+ {
+ S.StartMultiColumn(2);
+ {
+ S.Id(RecordID);
+ mRecord = S.AddChoice(_("Device") + wxString(wxT(":")),
+ wxEmptyString,
+ &empty);
+
+ S.Id(ChannelsID);
+ /*
+ mChannels = S.AddChoice(_("Channels") + wxString(wxT(":")),
+ wxEmptyString,
+ &empty);
+ */
+ }
+ S.EndMultiColumn();
+ }
+ S.EndStatic();
+}
+
+// Not sure that these settings are needed right now.
+#if 0
S.StartStatic( _("Playthrough") );
{
S.TieCheckBox( _("&Play other tracks while recording new one"),
@@ -167,12 +191,10 @@ void MidiIOPrefs::PopulateOrExchange( ShuttleGui & S )
S.StartStatic( _("Latency"),1 );
{
S.StartThreeColumn();
-#if USE_PORTAUDIO_V19
// only show the following controls if we use Portaudio v19, because
// for Portaudio v19 we always use default buffer sizes
S.TieTextBox( _("Audio to buffer:"),wxT("LatencyDuration"),100.0,9);
S.AddUnits( _("milliseconds") );
-#endif
S.TieTextBox( _("Latency correction:"),wxT("LatencyCorrection"),0.0,9);
S.AddUnits( _("milliseconds") );
S.EndThreeColumn();
@@ -199,8 +221,7 @@ void MidiIOPrefs::PopulateOrExchange( ShuttleGui & S )
}
gPrefs->SetPath(wxT("/"));
-}
-
+#endif
// JKC: This is some old code that was sizing control labels all the same,
// even if in different static controls. It made for a nicer layout.
@@ -224,25 +245,172 @@ void MidiIOPrefs::PopulateOrExchange( ShuttleGui & S )
}
#endif
+void MidiIOPrefs::OnHost(wxCommandEvent & e)
+{
+ int index = mHost->GetCurrentSelection();
+ wxString itemAtIndex = mHostNames.Item(index);
+ int nDevices = Pm_CountDevices();
+
+ if (nDevices == 0) {
+ mHost->Clear();
+ mHost->Append(_("No MIDI interfaces"), (void *) NULL);
+ mHost->SetSelection(0);
+ }
-MidiIOPrefs::~MidiIOPrefs()
+ mPlay->Clear();
+ mRecord->Clear();
+
+ wxArrayString playnames;
+ wxArrayString recordnames;
+
+ for (int i = 0; i < nDevices; i++) {
+ const PmDeviceInfo *info = Pm_GetDeviceInfo(i);
+ wxString interf(info->interf, wxConvLocal);
+ if (itemAtIndex.IsSameAs(interf)) {
+ wxString name(info->name, wxConvLocal);
+ wxString device = wxString::Format(wxT("%s: %s"),
+ interf.c_str(),
+ name.c_str());
+ int index;
+
+ if (info->output) {
+ playnames.Add(name);
+ index = mPlay->Append(name, (void *) info);
+ if (device == mPlayDevice) {
+ mPlay->SetSelection(index);
+ }
+ }
+
+ if (info->input) {
+ recordnames.Add(name);
+ index = mRecord->Append(name, (void *) info);
+ if (device == mRecordDevice) {
+ mRecord->SetSelection(index);
+ }
+ }
+ }
+ }
+
+ if (mPlay->GetCount() == 0) {
+ playnames.Add(_("No devices found"));
+ mPlay->Append(playnames[0], (void *) NULL);
+ }
+
+ if (mRecord->GetCount() == 0) {
+ recordnames.Add(_("No devices found"));
+ mRecord->Append(recordnames[0], (void *) NULL);
+ }
+
+ if (mPlay->GetCount() && mPlay->GetSelection() == wxNOT_FOUND) {
+ mPlay->SetSelection(0);
+ }
+
+ if (mRecord->GetCount() && mRecord->GetSelection() == wxNOT_FOUND) {
+ mRecord->SetSelection(0);
+ }
+
+ ShuttleGui S(this, eIsCreating);
+ S.SetSizeHints(mPlay, playnames);
+ S.SetSizeHints(mRecord, recordnames);
+// OnDevice(e);
+}
+
+/*
+void MidiIOPrefs::OnDevice(wxCommandEvent & e)
{
+ int ndx = mRecord->GetCurrentSelection();
+ if (ndx == wxNOT_FOUND) {
+ ndx = 0;
+ }
+
+ int sel = mChannels->GetSelection();
+ int cnt = 0;
+
+ const PmDeviceInfo *info = (const PmDeviceInfo *) mRecord->GetClientData(ndx);
+ if (info != NULL) {
+ cnt = info->input;
+ }
+
+ if (sel != wxNOT_FOUND) {
+ mRecordChannels = sel + 1;
+ }
+
+ mChannels->Clear();
+
+ // Limit cnt
+ cnt = cnt <= 0 ? 16 : cnt;
+ cnt = cnt > 256 ? 256 : cnt;
+
+ wxArrayString channelnames;
+
+ // Channel counts, mono, stereo etc...
+ for (int i = 0; i < cnt; i++) {
+ wxString name;
+
+ if (i == 0) {
+ name = _("1 (Mono)");
+ }
+ else if (i == 1) {
+ name = _("2 (Stereo)");
+ }
+ else {
+ name = wxString::Format(wxT("%d"), i + 1);
+ }
+
+ channelnames.Add(name);
+ int index = mChannels->Append(name);
+ if (i == mRecordChannels - 1) {
+ mChannels->SetSelection(index);
+ }
+ }
+
+ if (mChannels->GetCount() && mChannels->GetCurrentSelection() == wxNOT_FOUND) {
+ mChannels->SetSelection(0);
+ }
+
+ ShuttleGui S(this, eIsCreating);
+ S.SetSizeHints(mChannels, channelnames);
+ Layout();
}
+*/
bool MidiIOPrefs::Apply()
{
- ShuttleGui S( this, eIsSavingToPrefs );
- PopulateOrExchange( S );
+ ShuttleGui S(this, eIsSavingToPrefs);
+ PopulateOrExchange(S);
+
+ const PmDeviceInfo *info;
-#if USE_PORTMIXER
+ info = (const PmDeviceInfo *) mPlay->GetClientData(mPlay->GetSelection());
+ if (info) {
+ gPrefs->Write(wxT("/MidiIO/PlaybackDevice"),
+ wxString::Format(wxT("%s: %s"),
+ wxString(info->interf, wxConvLocal).c_str(),
+ wxString(info->name, wxConvLocal).c_str()));
+ }
+
+ info = (const PmDeviceInfo *) mRecord->GetClientData(mRecord->GetSelection());
+ if (info) {
+ gPrefs->Write(wxT("/MidiIO/RecordingDevice"),
+ wxString::Format(wxT("%s: %s"),
+ wxString(info->interf, wxConvLocal).c_str(),
+ wxString(info->name, wxConvLocal).c_str()));
+ }
+
+/*
+ gPrefs->Write(wxT("/MidiIO/RecordChannels"),
+ wxString::Format(wxT("%d"),
+ mChannels->GetSelection() + 1));
+*/
+
+ #if USE_PORTMIXER
if (gAudioIO)
gAudioIO->HandleDeviceChange();
-#endif // USE_PORTMIXER
+ #endif // USE_PORTMIXER
return true;
}
-
// Indentation settings for Vim and Emacs and unique identifier for Arch, a
// version control system. Please do not modify past this point.
//
diff --git a/src/prefs/MidiIOPrefs.h b/src/prefs/MidiIOPrefs.h
index 047cbc4..5ada528 100644
--- a/src/prefs/MidiIOPrefs.h
+++ b/src/prefs/MidiIOPrefs.h
@@ -1,6 +1,3 @@
-#include "../Experimental.h"
-
-#ifdef EXPERIMENTAL_NOTE_TRACK
/**********************************************************************
Audacity: A Digital Audio Editor
@@ -12,46 +9,56 @@
**********************************************************************/
+#include "../Experimental.h"
+#ifdef EXPERIMENTAL_MIDI_OUT
+
#ifndef __AUDACITY_MIDI_IO_PREFS__
#define __AUDACITY_MIDI_IO_PREFS__
-#include <wx/string.h>
-
-#include "PrefsPanel.h"
-
-class wxWindow;
-class wxCheckBox;
-class wxChoice;
#include <wx/defs.h>
+
+#include <wx/choice.h>
#include <wx/string.h>
+#include <wx/window.h>
-#include "PrefsPanel.h"
+#include "../ShuttleGui.h"
-class wxWindow;
-class ShuttleGui;
+#include "PrefsPanel.h"
-class MidiIOPrefs:public PrefsPanel
+class MidiIOPrefs:public PrefsPanel
{
-public:
+ public:
MidiIOPrefs(wxWindow * parent);
- ~MidiIOPrefs();
+ virtual ~MidiIOPrefs();
virtual bool Apply();
-private:
+ private:
void Populate();
- void PopulateOrExchange( ShuttleGui & S );
+ void PopulateOrExchange(ShuttleGui & S);
void GetNamesAndLabels();
- wxArrayString mmPlayNames;
- wxArrayString mmPlayLabels;
- wxArrayString mmRecordNames;
- wxArrayString mmRecordLabels;
- wxArrayString mmChannelNames;
- wxArrayInt mmChannelLabels;
+ void OnHost(wxCommandEvent & e);
+// void OnDevice(wxCommandEvent & e);
+
+ wxArrayString mHostNames;
+ wxArrayString mHostLabels;
+
+ wxString mPlayDevice;
+ wxString mRecordDevice;
+// long mRecordChannels;
+
+ wxChoice *mHost;
+ wxChoice *mPlay;
+ wxChoice *mRecord;
+// wxChoice *mChannels;
+
+ DECLARE_EVENT_TABLE();
};
#endif
+#endif
+
// Indentation settings for Vim and Emacs and unique identifier for Arch, a
// version control system. Please do not modify past this point.
//
@@ -62,5 +69,3 @@ private:
//
// vim: et sts=3 sw=3
// arch-tag: df22b108-e989-4ec4-a8b6-dddbcc7be6a7
-
-#endif
diff --git a/src/prefs/MousePrefs.cpp b/src/prefs/MousePrefs.cpp
index 7897df1..00af13a 100644
--- a/src/prefs/MousePrefs.cpp
+++ b/src/prefs/MousePrefs.cpp
@@ -43,24 +43,29 @@
#include "MousePrefs.h"
// The numbers of the columns of the mList.
-enum { BlankColumn=0, ToolColumn=1, ActionColumn=2, ButtonsColumn=3, CommentColumn=4};
-
-BEGIN_EVENT_TABLE(MousePrefs, wxPanel)
-END_EVENT_TABLE()
+enum
+{
+ BlankColumn,
+ ToolColumn,
+ ActionColumn,
+ ButtonsColumn,
+ CommentColumn
+};
/// Constructor
-MousePrefs::MousePrefs(wxWindow * parent):
-PrefsPanel(parent)
+MousePrefs::MousePrefs(wxWindow * parent)
+: PrefsPanel(parent, _("Mouse"))
{
- SetLabel(_("Mouse")); // Provide visual label
- SetName(_("Mouse")); // Provide audible label
Populate();
}
+MousePrefs::~MousePrefs()
+{
+}
+
/// Creates the dialog and its contents.
-void MousePrefs::Populate( )
+void MousePrefs::Populate()
{
- // First any pre-processing for constructing the GUI.
//------------------------- Main section --------------------
// Now construct the GUI itself.
// Use 'eIsCreatingFromPrefs' so that the GUI is
@@ -72,12 +77,13 @@ void MousePrefs::Populate( )
}
/// Places controls on the panel and also exchanges data with them.
-void MousePrefs::PopulateOrExchange( ShuttleGui & S )
+void MousePrefs::PopulateOrExchange(ShuttleGui & S)
{
- S.SetBorder( 2 );
- S.StartStatic( _("Mouse Bindings (default values, not configurable)"),1);
+ S.SetBorder(2);
+
+ S.StartStatic(_("Mouse Bindings (default values, not configurable)"), 1);
{
- mList = S.AddListControlReportMode( );
+ mList = S.AddListControlReportMode();
}
S.EndStatic();
}
@@ -85,79 +91,72 @@ void MousePrefs::PopulateOrExchange( ShuttleGui & S )
/// Creates the contents of mList
void MousePrefs::CreateList()
{
- wxASSERT( mList );
-
//An empty first column is a workaround - under Win98 the first column
//can't be right aligned.
- mList->InsertColumn(BlankColumn, wxT(""), wxLIST_FORMAT_LEFT );
- mList->InsertColumn(ToolColumn, _("Tool"), wxLIST_FORMAT_RIGHT );
- mList->InsertColumn(ActionColumn, _("Command Action"), wxLIST_FORMAT_RIGHT );
- mList->InsertColumn(ButtonsColumn, _("Buttons"), wxLIST_FORMAT_LEFT );
- mList->InsertColumn(CommentColumn, _("Comments"), wxLIST_FORMAT_LEFT );
-
- AddItem( _("Left-Click"), _("Select"), _("Set Selection Point") );
- AddItem( _("Left-Drag"), _("Select"), _("Set Selection Range") );
- AddItem( _("Shift-Left-Click"), _("Select"), _("Extend Selection Range") );
- AddItem( _("Left-Double-Click"), _("Select"), _("Select Clip or Entire Track") );
- AddItem( _("Ctrl-Left-Click"), _("Select"), _("Set Selection Point and Play") );
-
- AddItem( _("Left-Click"), _("Zoom"), _("Zoom in on Point") );
- AddItem( _("Left-Drag"), _("Zoom"), _("Zoom in on a Range"), _("same as right-drag") );
- AddItem( _("Right-Click"), _("Zoom"), _("Zoom out one step") );
- AddItem( _("Right-Drag"), _("Zoom"), _("Zoom in on a Range"), _("same as left-drag") );
- AddItem( _("Shift-Drag"), _("Zoom"), _("Zoom out on a Range"));
- AddItem( _("Middle-Click"), _("Zoom"), _("Zoom default"));
-
- AddItem( _("Left-Drag"), _("Time-Shift"),_("Time shift clip or move up/down between tracks") );
- AddItem( _("Shift-Left-Drag"), _("Time-Shift"),_("Time shift all clips in track") );
- AddItem( _("Ctrl-Left-Drag"), _("Time-Shift"),_("Move clip up/down between tracks") );
+ mList->InsertColumn(BlankColumn, wxT(""), wxLIST_FORMAT_LEFT);
+ mList->InsertColumn(ToolColumn, _("Tool"), wxLIST_FORMAT_RIGHT);
+ mList->InsertColumn(ActionColumn, _("Command Action"), wxLIST_FORMAT_RIGHT);
+ mList->InsertColumn(ButtonsColumn, _("Buttons"), wxLIST_FORMAT_LEFT);
+ mList->InsertColumn(CommentColumn, _("Comments"), wxLIST_FORMAT_LEFT);
+
+ AddItem(_("Left-Click"), _("Select"), _("Set Selection Point"));
+ AddItem(_("Left-Drag"), _("Select"), _("Set Selection Range"));
+ AddItem(_("Shift-Left-Click"), _("Select"), _("Extend Selection Range"));
+ AddItem(_("Left-Double-Click"), _("Select"), _("Select Clip or Entire Track"));
+ AddItem(_("Ctrl-Left-Click"), _("Select"), _("Set Selection Point and Play"));
+
+ AddItem(_("Left-Click"), _("Zoom"), _("Zoom in on Point"));
+ AddItem(_("Left-Drag"), _("Zoom"), _("Zoom in on a Range"), _("same as right-drag"));
+ AddItem(_("Right-Click"), _("Zoom"), _("Zoom out one step"));
+ AddItem(_("Right-Drag"), _("Zoom"), _("Zoom in on a Range"), _("same as left-drag"));
+ AddItem(_("Shift-Drag"), _("Zoom"), _("Zoom out on a Range"));
+ AddItem(_("Middle-Click"), _("Zoom"), _("Zoom default"));
+
+ AddItem(_("Left-Drag"), _("Time-Shift"),_("Time shift clip or move up/down between tracks"));
+ AddItem(_("Shift-Left-Drag"), _("Time-Shift"),_("Time shift all clips in track"));
+ AddItem(_("Ctrl-Left-Drag"), _("Time-Shift"),_("Move clip up/down between tracks"));
- AddItem( _("Left-Drag"), _("Envelope"), _("Change Amplification Envelope") );
-
- AddItem( _("Left-Click"), _("Pencil"), _("Change Sample") );
- AddItem( _("Alt-Left-Click"), _("Pencil"), _("Smooth at Sample") );
- AddItem( _("Left-Drag"), _("Pencil"), _("Change Several Samples") );
- AddItem( _("Ctrl-Left-Drag"), _("Pencil"), _("Change ONE Sample only") );
-
- AddItem( _("Left-Click"), _("Multi"), _("Set Selection Point"), _("same as select tool") );
- AddItem( _("Left-Drag"), _("Multi"), _("Set Selection Range"), _("same as select tool") );
- AddItem( _("Right-Click"), _("Multi"), _("Zoom out one step"), _("same as zoom tool") );
- AddItem( _("Right-Drag"), _("Multi"), _("Zoom in on a Range"), _("same as zoom tool") );
-
- AddItem( _("Wheel-Rotate"), _("Any"), _("Scroll up or down") );
- AddItem( _("Shift-Wheel-Rotate"),_("Any"), _("Scroll left or right") );
- AddItem( _("Ctrl-Wheel-Rotate"), _("Any"), _("Zoom in or out") );
-
- mList->SetColumnWidth( BlankColumn, 0 ); // First column width is zero, to hide it.
- mList->SetColumnWidth( ToolColumn, wxLIST_AUTOSIZE );
- mList->SetColumnWidth( ActionColumn, wxLIST_AUTOSIZE );
- mList->SetColumnWidth( ButtonsColumn, wxLIST_AUTOSIZE );
+ AddItem(_("Left-Drag"), _("Envelope"), _("Change Amplification Envelope"));
+
+ AddItem(_("Left-Click"), _("Pencil"), _("Change Sample"));
+ AddItem(_("Alt-Left-Click"), _("Pencil"), _("Smooth at Sample"));
+ AddItem(_("Left-Drag"), _("Pencil"), _("Change Several Samples"));
+ AddItem(_("Ctrl-Left-Drag"), _("Pencil"), _("Change ONE Sample only"));
+
+ AddItem(_("Left-Click"), _("Multi"), _("Set Selection Point"), _("same as select tool"));
+ AddItem(_("Left-Drag"), _("Multi"), _("Set Selection Range"), _("same as select tool"));
+ AddItem(_("Right-Click"), _("Multi"), _("Zoom out one step"), _("same as zoom tool"));
+ AddItem(_("Right-Drag"), _("Multi"), _("Zoom in on a Range"), _("same as zoom tool"));
+
+ AddItem(_("Wheel-Rotate"), _("Any"), _("Scroll up or down"));
+ AddItem(_("Shift-Wheel-Rotate"),_("Any"), _("Scroll left or right"));
+ AddItem(_("Ctrl-Wheel-Rotate"), _("Any"), _("Zoom in or out"));
+
+ mList->SetColumnWidth(BlankColumn, 0);
+ mList->SetColumnWidth(ToolColumn, wxLIST_AUTOSIZE);
+ mList->SetColumnWidth(ActionColumn, wxLIST_AUTOSIZE);
+ mList->SetColumnWidth(ButtonsColumn, wxLIST_AUTOSIZE);
+
// Not sure if this extra column is a good idea or not.
// Anyway, 5 pixels wide is wide enough that some people who are curious will drag it
// wider to see what's there (the comments show that the duplication of functions
// is for a reason, and not just random).
- mList->SetColumnWidth( CommentColumn, 5 );
-}
-
-MousePrefs::~MousePrefs()
-{
+ mList->SetColumnWidth(CommentColumn, 5);
}
/// Adds an item to mList
-void MousePrefs::AddItem( wxString const & MouseButtons, wxString const & Tool,
- wxString const & Action, wxString const & Comment )
+void MousePrefs::AddItem(wxString const & buttons, wxString const & tool,
+ wxString const & action, wxString const & comment)
{
- int i=mList->GetItemCount();
- mList->InsertItem( i, wxT("") );
- mList->SetItem( i, ToolColumn, Tool );
- mList->SetItem( i, ActionColumn, Action );
- mList->SetItem( i, ButtonsColumn, MouseButtons );
+ int i = mList->GetItemCount();
+ mList->InsertItem(i, wxT(""));
+ mList->SetItem(i, ToolColumn, tool);
+ mList->SetItem(i, ActionColumn, action);
+ mList->SetItem(i, ButtonsColumn, buttons);
// Add a space before the text to work around a minor bug in the
// list control when showing narrow columns.
- wxString Temp(wxT(" "));
- Temp+=Comment;
- mList->SetItem( i, CommentColumn, Temp );
+ mList->SetItem(i, CommentColumn, wxT(" ") + comment);
}
@@ -166,8 +165,8 @@ void MousePrefs::AddItem( wxString const & MouseButtons, wxString const & Tool,
bool MousePrefs::Apply()
{
// Not yet required...
-// ShuttleGui S( this, eIsSavingToPrefs );
-// PopulateOrExchange( S );
+// ShuttleGui S(this, eIsSavingToPrefs);
+// PopulateOrExchange(S);
return true;
}
diff --git a/src/prefs/MousePrefs.h b/src/prefs/MousePrefs.h
index b85f25d..a7554a6 100644
--- a/src/prefs/MousePrefs.h
+++ b/src/prefs/MousePrefs.h
@@ -9,33 +9,33 @@
#ifndef __AUDACITY_MOUSE_PREFS__
#define __AUDACITY_MOUSE_PREFS__
-#include <wx/string.h>
+#include <wx/defs.h>
-#include "PrefsPanel.h"
+#include <wx/listctrl.h>
+#include <wx/string.h>
+#include <wx/window.h>
-class wxWindow;
-class wxListCtrl;
-class ShuttleGui;
+#include "../ShuttleGui.h"
-class MousePrefs:public PrefsPanel {
+#include "PrefsPanel.h"
-public:
+class MousePrefs:public PrefsPanel
+{
+ public:
MousePrefs(wxWindow * parent);
~MousePrefs();
virtual bool Apply();
-private:
+ private:
void Populate();
- void PopulateOrExchange( ShuttleGui & S );
+ void PopulateOrExchange(ShuttleGui & S);
void CreateList();
- void AddItem( wxString const & MouseButtons,
- wxString const & Tool,
- wxString const & Action,
- wxString const & Comment = wxString(wxT("")));
+ void AddItem(wxString const & buttons,
+ wxString const & tool,
+ wxString const & action,
+ wxString const & comment = wxEmptyString);
wxListCtrl * mList;
-public:
- DECLARE_EVENT_TABLE()
};
#endif
diff --git a/src/prefs/PrefsDialog.cpp b/src/prefs/PrefsDialog.cpp
index 868c961..7f518fd 100644
--- a/src/prefs/PrefsDialog.cpp
+++ b/src/prefs/PrefsDialog.cpp
@@ -14,7 +14,6 @@
*//*******************************************************************/
-#include "../Experimental.h"
#include "../Audacity.h"
#include <wx/defs.h>
@@ -25,243 +24,193 @@
#include <wx/gdicmn.h>
#include <wx/intl.h>
#include <wx/listbox.h>
-#include <wx/imaglist.h>
#include <wx/msgdlg.h>
-#include <wx/notebook.h>
-//#include <wx/choicebk.h>
-#include <wx/listbook.h>
-#include <wx/listctrl.h>
#include <wx/sizer.h>
+#include <wx/listbook.h>
+
#if wxCHECK_VERSION(2, 8, 4)
#include <wx/treebook.h>
#else
#include "../widgets/treebook.h"
#endif
+#include "../Experimental.h"
#include "../Project.h"
-
#include "../Prefs.h"
#include "PrefsDialog.h"
#include "PrefsPanel.h"
-#include "AudioIOPrefs.h"
-#include "SmartRecordPrefs.h"
-
-/* REQUIRES PORTMIDI */
-//#include "MidiIOPrefs.h"
-
+#include "BatchPrefs.h"
+#include "DevicePrefs.h"
#include "DirectoriesPrefs.h"
-#include "FileFormatPrefs.h"
#include "GUIPrefs.h"
-#include "ThemePrefs.h"
-#include "BatchPrefs.h"
+#include "ImportExportPrefs.h"
#include "KeyConfigPrefs.h"
+#include "LibraryPrefs.h"
+#include "MousePrefs.h"
+#include "PlaybackPrefs.h"
+#include "ProjectsPrefs.h"
#include "QualityPrefs.h"
+#include "RecordingPrefs.h"
#include "SpectrumPrefs.h"
-#include "MousePrefs.h"
-#include "../Experimental.h"
-
-//JKC: Experimental treebook, backported from wxWidgets 2.7.x
-//#include "../widgets/treebook.h"
-
+#include "ThemePrefs.h"
+#include "TracksPrefs.h"
+#include "WarningsPrefs.h"
-enum {
- CategoriesID = 1000
-};
+#ifdef EXPERIMENTAL_MIDI_OUT
+#include "MidiIOPrefs.h"
+#endif
BEGIN_EVENT_TABLE(PrefsDialog, wxDialog)
EVT_BUTTON(wxID_OK, PrefsDialog::OnOK)
EVT_BUTTON(wxID_CANCEL, PrefsDialog::OnCancel)
END_EVENT_TABLE()
-bool gPrefsDialogVisible = false;
-
-// wxListBook doesn't let you use report mode for the list.
-// We don't want images, we do want a single column,
-// so we work around the limitations by defining a thin and empty image.
-static const char * TrialImage[] = {
-"64 1 3 1",
-"+ c #004010",
-". c None", // mask color = RGB:255,0,0
-"# c #00AA30",
-"................................................................"};
-
-
-
-PrefsDialog::PrefsDialog(wxWindow * parent):
- wxDialog(parent, -1, _("Audacity Preferences"), wxDefaultPosition,
- wxDefaultSize, wxCAPTION)
-// wxDefaultSize, wxDIALOG_MODAL | wxCAPTION | wxTHICK_FRAME)
+PrefsDialog::PrefsDialog(wxWindow * parent)
+: wxDialog(parent, wxID_ANY, wxString(_("Audacity Preferences")),
+ wxDefaultPosition,
+ wxDefaultSize,
+ wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER)
{
- gPrefsDialogVisible = true;
-
- wxRect rect = GetRect();
- if(rect.x < 0) rect.x = 0;
- if(rect.y < 0) rect.y = 0;
- SetSize(rect);
-
- wxBoxSizer *topSizer = new wxBoxSizer(wxVERTICAL);
-// mCategories = new wxNotebook(this, -1, wxDefaultPosition, wxDefaultSize
-// mCategories = new wxChoicebook(this, -1, wxDefaultPosition, wxDefaultSize
-// mCategories = new wxListbook(this, -1, wxDefaultPosition, wxDefaultSize
- mCategories = new wxTreebook(this, -1, wxDefaultPosition, wxDefaultSize
-#ifdef __WXGTK__
- ,wxNB_LEFT
-#endif
- );
-
-#if !wxCHECK_VERSION(2, 8, 4)
- // The list width is determined by the width of the images.
- // If you don't add some images the list will be too narrow.
- wxImageList *pImages = new wxImageList(64,1);
- wxBitmap bmpTrial(TrialImage);
- pImages->Add( bmpTrial );
- mCategories->SetImageList(pImages);
-#endif
+ ShuttleGui S(this, eIsCreating);
- //These two lines were an attempt to size the list correctly.
- //They don't work (in wxWidgets 2.6.1/XP)
-// wxListView * pList = mCategories->GetListView();
- // Can't use wxLC_REPORT because of limitations in wxListBook.
-// pList->SetWindowStyleFlag(wxLC_ICON | wxLC_SINGLE_SEL );//| wxLC_ALIGN_LEFT);
- //pList->SetMinSize( wxSize(300,100));
-
- topSizer->Add(mCategories, 1, wxGROW | wxALL, 0);
-
- /* All panel additions belong here */
- wxWindow *w;
-
- // Parameters are: AppPage( page, name, IsSelected, imageId)
- w = new AudioIOPrefs(mCategories); mCategories->AddPage(w, w->GetName(),false,0);
-/* REQUIRES PORTMIDI */
-// w = new MidiIOPrefs(mCategories); mCategories->AddPage(w, w->GetName(),false,0);
- w = new QualityPrefs(mCategories); mCategories->AddPage(w, w->GetName(),false,0);
- w = new FileFormatPrefs(mCategories); mCategories->AddPage(w, w->GetName(),false,0);
- w = new GUIPrefs(mCategories); mCategories->AddPage(w, w->GetName(),false,0);
- w = new SpectrumPrefs(mCategories); mCategories->AddPage(w, w->GetName(),false,0);
- w = new DirectoriesPrefs(mCategories); mCategories->AddPage(w, w->GetName(),false,0);
- w = new SmartRecordPrefs(mCategories); mCategories->AddPage(w, w->GetName(),false,0);
+ S.StartVerticalLay(true);
+ {
+ S.StartHorizontalLay(wxALIGN_LEFT | wxEXPAND, true);
+ {
+ mCategories = new wxTreebook(this, wxID_ANY);
+ S.Prop(1);
+ S.AddWindow(mCategories, wxEXPAND);
+
+ wxWindow *w;
+ // Parameters are: AppPage( page, name, IsSelected, imageId)
+ w = new DevicePrefs(mCategories); mCategories->AddPage(w, w->GetName(), false, 0);
+ w = new PlaybackPrefs(mCategories); mCategories->AddPage(w, w->GetName(), false, 0);
+ w = new RecordingPrefs(mCategories); mCategories->AddPage(w, w->GetName(), false, 0);
+#ifdef EXPERIMENTAL_MIDI_OUT
+ w = new MidiIOPrefs(mCategories); mCategories->AddPage(w, w->GetName(), false, 0);
+#endif
+ w = new QualityPrefs(mCategories); mCategories->AddPage(w, w->GetName(), false, 0);
+ w = new GUIPrefs(mCategories); mCategories->AddPage(w, w->GetName(), false, 0);
+ w = new TracksPrefs(mCategories); mCategories->AddPage(w, w->GetName(), false, 0);
+ w = new ImportExportPrefs(mCategories);mCategories->AddPage(w, w->GetName(), false, 0);
+ w = new ProjectsPrefs(mCategories); mCategories->AddPage(w, w->GetName(), false, 0);
+ w = new LibraryPrefs(mCategories); mCategories->AddPage(w, w->GetName(), false, 0);
+ w = new SpectrumPrefs(mCategories); mCategories->AddPage(w, w->GetName(), false, 0);
+ w = new DirectoriesPrefs(mCategories); mCategories->AddPage(w, w->GetName(), false, 0);
+ w = new WarningsPrefs(mCategories); mCategories->AddPage(w, w->GetName(), false, 0);
#ifdef EXPERIMENTAL_THEME_PREFS
- w = new ThemePrefs(mCategories); mCategories->AddPage(w, w->GetName(),false,0);
+ w = new ThemePrefs(mCategories); mCategories->AddPage(w, w->GetName(), false, 0);
#endif
-// w = new BatchPrefs(mCategories); mCategories->AddPage(w, w->GetName(),false,0);
- w = new KeyConfigPrefs(mCategories); mCategories->AddPage(w, w->GetName(),false,0);
- w = new MousePrefs(mCategories); mCategories->AddPage(w, w->GetName(),false,0);
-
- long selected = gPrefs->Read(wxT("/Prefs/PrefsCategory"), 0L);
- if (selected < 0 || selected >= (int)mCategories->GetPageCount())
- mSelected = 0;
-
+// w = new BatchPrefs(mCategories); mCategories->AddPage(w, w->GetName(), false, 0);
+ w = new KeyConfigPrefs(mCategories); mCategories->AddPage(w, w->GetName(), false, 0);
+ w = new MousePrefs(mCategories); mCategories->AddPage(w, w->GetName(), false, 0);
+ }
+ S.EndHorizontalLay();
+ }
+ S.EndVerticalLay();
-// This code to hide the roots of the tree doesn't work...
-#if 0
- wxTreeCtrl * pTree = mCategories->GetTreeCtrl();
- long Style = pTree->GetWindowStyle();
- Style |= wxTR_HIDE_ROOT;
- pTree->SetWindowStyle(Style);
-#endif
+ S.AddStandardButtons(eOkButton | eCancelButton);
+ size_t selected = gPrefs->Read(wxT("/Prefs/PrefsCategory"), 0L);
+ if (selected < 0 || selected >= mCategories->GetPageCount()) {
+ selected = 0;
+ }
mCategories->SetSelection(selected);
#if defined(__WXGTK__)
mCategories->GetTreeCtrl()->EnsureVisible(mCategories->GetTreeCtrl()->GetRootItem());
#endif
-
- topSizer->Add(CreateStdButtonSizer(this, eCancelButton|eOkButton), 0, wxEXPAND);
- wxBoxSizer *outSizer = new wxBoxSizer( wxVERTICAL );
- outSizer->Add(topSizer, 1, wxGROW|wxTOP, TOP_LEVEL_BORDER);
+// mCategories->SetSizeHints(-1, -1, 790, 600); // 790 = 800 - (border * 2)
+ Layout();
+ Fit();
+ wxSize sz = GetSize();
- SetAutoLayout(true);
- SetSizerAndFit(outSizer);
- outSizer->FitInside(this);
- outSizer->SetSizeHints(this);
+ wxASSERT_MSG(sz.x <= 800 && sz.y <= 600, wxT("Preferences dialog exceeds max size"));
- #ifdef __WXMAC__
- // Until sizing works properly on the Mac
- SetSize(620, 350);
- #endif
+ if (sz.x > 800) {
+ sz.x = 800;
+ }
- #ifdef __WXMSW__
- // Because it looks nice (tm) (you can see all the tabs at once)
- //SetSize(525, 363);
- #endif
+ if (sz.y > 600) {
+ sz.y = 600;
+ }
+
+ SetSizeHints(sz.x, sz.y, 800, 600);
-
// Center after all that resizing, but make sure it doesn't end up
// off-screen
CentreOnParent();
+}
- #ifdef __WXMAC__
- wxPoint where = GetPosition();
- if (where.x < 2)
- where.x = 2;
- if (where.y < 44)
- where.y = 44;
- if (where != GetPosition())
- Move(where);
- #endif
+PrefsDialog::~PrefsDialog()
+{
}
void PrefsDialog::OnCancel(wxCommandEvent & event)
{
- int i;
-
- for (i = 0; i < (int)mCategories->GetPageCount(); i++) {
+ for (size_t i = 0; i < mCategories->GetPageCount(); i++) {
((PrefsPanel *) mCategories->GetPage(i))->Cancel();
}
- EndModal(0);
+ EndModal(false);
}
void PrefsDialog::OnOK(wxCommandEvent & event)
{
- int i;
- unsigned int j;
-
- gPrefs->Write(wxT("/Prefs/PrefsCategory"), (long)mCategories->GetSelection());
- for (i = 0; i < (int)mCategories->GetPageCount(); i++) {
+ // Validate all pages first
+ for (size_t i = 0; i < mCategories->GetPageCount(); i++) {
PrefsPanel *panel = (PrefsPanel *) mCategories->GetPage(i);
- /* The dialog doesn't end until all the input is valid */
- if (!panel->Apply()) {
+ // The dialog doesn't end until all the input is valid
+ if (!panel->Validate()) {
mCategories->SetSelection(i);
- mSelected = i;
return;
}
}
- // BG: Send all Audacity projects a preference update notification
- for(j = 0; j < gAudacityProjects.GetCount(); j++)
- {
- gAudacityProjects[j]->UpdatePrefs();
+ // Now apply the changes
+ for (size_t i = 0; i < mCategories->GetPageCount(); i++) {
+ PrefsPanel *panel = (PrefsPanel *) mCategories->GetPage(i);
+
+ panel->Apply();
}
- EndModal(0);
-}
-PrefsDialog::~PrefsDialog()
-{
- gPrefsDialogVisible = false;
+ gPrefs->Write(wxT("/Prefs/PrefsCategory"), (long)mCategories->GetSelection());
+
+#if USE_PORTMIXER
+ if (gAudioIO) {
+ gAudioIO->HandleDeviceChange();
+ }
+#endif
+
+ // LL: wxMac can't handle recreating the menus when this dialog is still active,
+ // so AudacityProject::UpdatePrefs() or any of the routines it calls must
+ // not cause AudacityProject::RebuildMenuBar() to be executed.
+ for (size_t i = 0; i < gAudacityProjects.GetCount(); i++) {
+ gAudacityProjects[i]->UpdatePrefs();
+ }
+
+ EndModal(true);
}
void PrefsDialog::SelectPageByName(wxString pageName)
{
- int n = mCategories->GetPageCount();
+ size_t n = mCategories->GetPageCount();
- int i;
-
- for(i=0; i<n; i++)
+ for (size_t i = 0; i < n; i++) {
if (mCategories->GetPageText(i) == pageName) {
mCategories->SetSelection(i);
return;
}
+ }
}
-
void PrefsDialog::ShowTempDirPage()
{
SelectPageByName(_("Directories"));
diff --git a/src/prefs/PrefsDialog.h b/src/prefs/PrefsDialog.h
index 13674ce..2e71d07 100644
--- a/src/prefs/PrefsDialog.h
+++ b/src/prefs/PrefsDialog.h
@@ -12,47 +12,30 @@
#ifndef __AUDACITY_PREFS_DIALOG__
#define __AUDACITY_PREFS_DIALOG__
+#include <wx/button.h>
+#include <wx/event.h>
#include <wx/dialog.h>
#include <wx/string.h>
+#include <wx/treebook.h>
+#include <wx/window.h>
-class wxNotebook;
-class wxListbook;
-class wxTreebook;
-class wxChoicebook;
-class wxWindow;
-class wxButton;
-class wxCommandEvent;
-class wxFrame;
-
-extern bool gPrefsDialogVisible;
-
-class PrefsDialog:public wxDialog {
-
+class PrefsDialog:public wxDialog
+{
public:
PrefsDialog(wxWindow * parent);
- ~PrefsDialog();
+ virtual ~PrefsDialog();
- void OnCategoryChange(wxCommandEvent & event);
- void OnOK(wxCommandEvent & event);
- void OnCancel(wxCommandEvent & event);
+ void OnCategoryChange(wxCommandEvent & e);
+ void OnOK(wxCommandEvent & e);
+ void OnCancel(wxCommandEvent & e);
void SelectPageByName(wxString pageName);
void ShowTempDirPage();
private:
-// wxListbook *mCategories;
wxTreebook *mCategories;
- wxButton *mOK;
- wxButton *mCancel;
- int mSelected;
-
- #ifdef __WXMAC__
- wxFrame *mMacHiddenFrame;
- #endif
-
- public:
- DECLARE_EVENT_TABLE()
+ DECLARE_EVENT_TABLE()
};
#endif
diff --git a/src/prefs/PrefsPanel.h b/src/prefs/PrefsPanel.h
index eb71e92..5d0b8c6 100644
--- a/src/prefs/PrefsPanel.h
+++ b/src/prefs/PrefsPanel.h
@@ -29,10 +29,7 @@ ThemePrefs.
#define __AUDACITY_PREFS_PANEL__
#include <wx/panel.h>
-
-class wxWindow;
-class wxStaticBoxSizer;
-class wxBoxSizer;
+#include <wx/window.h>
/* A few constants for an attempt at semi-uniformity */
#define PREFS_FONT_SIZE 8
@@ -45,21 +42,23 @@ class wxBoxSizer;
class PrefsPanel:public wxPanel
{
-
-public:
- PrefsPanel(wxWindow * parent):wxPanel(parent, -1) {
- /* I'm not sure if we should be setting this... I'll play around
- * and see what looks best on different platforms under
- * differing circumstances...*/
-// SetFont(wxFont(PREFS_FONT_SIZE, wxDEFAULT, wxNORMAL, wxNORMAL));
+ public:
+ PrefsPanel(wxWindow * parent, wxString title)
+ : wxPanel(parent, wxID_ANY)
+ {
+ SetLabel(title); // Provide visual label
+ SetName(title); // Provide audible label
}
- virtual ~ PrefsPanel() {}
+ virtual ~PrefsPanel()
+ {
+ }
+
virtual bool Apply() = 0;
- virtual void Cancel() {};
-protected:
- wxBoxSizer *topSizer;
- wxBoxSizer *outSizer;
+
+ virtual void Cancel()
+ {
+ }
};
#endif
diff --git a/src/prefs/QualityPrefs.cpp b/src/prefs/QualityPrefs.cpp
index 482ff24..9f161c6 100644
--- a/src/prefs/QualityPrefs.cpp
+++ b/src/prefs/QualityPrefs.cpp
@@ -18,9 +18,6 @@
#include "../Audacity.h"
#include <wx/defs.h>
-#include <wx/choice.h>
-#include <wx/textctrl.h>
-#include <wx/intl.h>
#include "../AudioIO.h"
#include "../Dither.h"
@@ -28,29 +25,33 @@
#include "../Resample.h"
#include "../SampleFormat.h"
#include "../ShuttleGui.h"
+
#include "QualityPrefs.h"
#define ID_SAMPLE_RATE_CHOICE 7001
-BEGIN_EVENT_TABLE(QualityPrefs, wxPanel)
- EVT_CHOICE(ID_SAMPLE_RATE_CHOICE, QualityPrefs::OnSampleRateChoice)
+BEGIN_EVENT_TABLE(QualityPrefs, PrefsPanel)
+ EVT_CHOICE(ID_SAMPLE_RATE_CHOICE, QualityPrefs::OnSampleRateChoice)
END_EVENT_TABLE()
-QualityPrefs::QualityPrefs(wxWindow * parent):
- PrefsPanel(parent)
+QualityPrefs::QualityPrefs(wxWindow * parent)
+: PrefsPanel(parent, _("Quality"))
+{
+ Populate();
+}
+
+QualityPrefs::~QualityPrefs()
{
- SetLabel(_("Quality")); // Provide visual label
- SetName(_("Quality")); // Provide audible label
- mSampleRates = NULL; // Pointers to controls.
- mOtherSampleRate = NULL;
- Populate( );
}
-void QualityPrefs::Populate( )
+void QualityPrefs::Populate()
{
// First any pre-processing for constructing the GUI.
GetNamesAndLabels();
- gPrefs->Read( wxT("/SamplingRate/DefaultProjectSampleRate"), &mOtherSampleRateValue, 44100 );
+ gPrefs->Read(wxT("/SamplingRate/DefaultProjectSampleRate"),
+ &mOtherSampleRateValue,
+ 44100);
+
//------------------------- Main section --------------------
// Now construct the GUI itself.
// Use 'eIsCreatingFromPrefs' so that the GUI is
@@ -58,6 +59,7 @@ void QualityPrefs::Populate( )
ShuttleGui S(this, eIsCreatingFromPrefs);
PopulateOrExchange(S);
// ----------------------- End of main section --------------
+
wxCommandEvent e;
OnSampleRateChoice(e); // Enable/disable the control.
}
@@ -69,10 +71,10 @@ void QualityPrefs::Populate( )
void QualityPrefs::GetNamesAndLabels()
{
//------------ Dither Names
- mmDitherNames.Add( _("None") ); mmDitherLabels.Add( Dither::none );
- mmDitherNames.Add( _("Rectangle") ); mmDitherLabels.Add( Dither::rectangle );
- mmDitherNames.Add( _("Triangle") ); mmDitherLabels.Add( Dither::triangle );
- mmDitherNames.Add( _("Shaped") ); mmDitherLabels.Add( Dither::shaped );
+ mDitherNames.Add(_("None")); mDitherLabels.Add(Dither::none);
+ mDitherNames.Add(_("Rectangle")); mDitherLabels.Add(Dither::rectangle);
+ mDitherNames.Add(_("Triangle")); mDitherLabels.Add(Dither::triangle);
+ mDitherNames.Add(_("Shaped")); mDitherLabels.Add(Dither::shaped);
//------------ Sample Rate Names
// JKC: I don't understand the following comment.
@@ -88,20 +90,21 @@ void QualityPrefs::GetNamesAndLabels()
//
// GetSupportedSampleRates() allows passing in device names, but
// how do you get at them as they are on the Audio I/O page????
- for (int i=0; i<AudioIO::NumStandardRates; i++)
- {
- int iRate = (int)AudioIO::StandardRates[i];
- mmSampleRateLabels.Add( iRate );
- mmSampleRateNames.Add( wxString::Format(wxT("%i Hz"), iRate ));
+ for (int i = 0; i < AudioIO::NumStandardRates; i++) {
+ int iRate = AudioIO::StandardRates[i];
+ mSampleRateLabels.Add(iRate);
+ mSampleRateNames.Add(wxString::Format(wxT("%i Hz"), iRate));
}
- mmSampleRateNames.Add( _("Other..."));
+
+ mSampleRateNames.Add(_("Other..."));
+
// The label for the 'Other...' case can be any value at all.
- mmSampleRateLabels.Add( 44100 ); // If chosen, this value will be overwritten
+ mSampleRateLabels.Add(44100); // If chosen, this value will be overwritten
//------------- Sample Format Names
- mmSampleFormatNames.Add( wxT("16-bit") );mmSampleFormatLabels.Add(int16Sample);
- mmSampleFormatNames.Add( wxT("24-bit") );mmSampleFormatLabels.Add(int24Sample);
- mmSampleFormatNames.Add( wxT("32-bit float") );mmSampleFormatLabels.Add(floatSample);
+ mSampleFormatNames.Add(wxT("16-bit")); mSampleFormatLabels.Add(int16Sample);
+ mSampleFormatNames.Add(wxT("24-bit")); mSampleFormatLabels.Add(int24Sample);
+ mSampleFormatNames.Add(wxT("32-bit float")); mSampleFormatLabels.Add(floatSample);
//------------- Converter Names
// We used to set and get best/fast method via Resample.cpp.
@@ -109,135 +112,127 @@ void QualityPrefs::GetNamesAndLabels()
// int converterHQ = Resample::GetBestMethod();
// int converter = Resample::GetFastMethod();
int numConverters = Resample::GetNumMethods();
- for(int i=0; i<numConverters; i++)
- {
- mConverterNames.Add( Resample::GetMethodName(i) );
- mConverterLabels.Add( i );
+ for (int i = 0; i < numConverters; i++) {
+ mConverterNames.Add(Resample::GetMethodName(i));
+ mConverterLabels.Add(i);
}
}
-void QualityPrefs::PopulateOrExchange( ShuttleGui & S )
+void QualityPrefs::PopulateOrExchange(ShuttleGui & S)
{
- S.SetBorder( 2 );
- S.StartStatic(_("Sampling"),0 );
+ S.SetBorder(2);
+
+ S.StartStatic(_("Sampling"));
{
- S.StartTwoColumn();
- S.AddPrompt( _("Default Sample Rate:") );
- DefineSampleRateControl( S ); // A tricky control.
- S.TieChoice(_("Default Sample Format:"),
- wxT("/SamplingRate/DefaultProjectSampleFormat"),
- floatSample, mmSampleFormatNames, mmSampleFormatLabels );
-
-// JKC For the old style of layout, uncomment the next line.
-// #define OLD_STYLE_LAYOUT
-// Once we've chosen which layout to use we'll remove the
-// other one. (June/2006).
-#ifdef OLD_STYLE_LAYOUT
- S.TieChoice(_("Real-time sample rate converter:"),
- wxT("/Quality/LibresampleSampleRateConverter"),
- (int)0, mConverterNames, mConverterLabels),
- S.TieChoice(_("High-quality sample rate converter:"),
- wxT("/Quality/LibresampleHQSampleRateConverter"),
- (int)1, mConverterNames, mConverterLabels),
- S.TieChoice(_("Real-time dither:"),
- wxT("/Quality/DitherAlgorithm"),
- Dither::none, mmDitherNames, mmDitherLabels );
- S.TieChoice(_("High-quality dither:"),
- wxT("/Quality/HQDitherAlgorithm"),
- Dither::shaped, mmDitherNames, mmDitherLabels );
-#endif
- S.EndTwoColumn();
+ S.StartMultiColumn(2);
+ {
+ S.AddPrompt(_("Default Sample Rate:"));
+
+ S.StartMultiColumn(2);
+ {
+ // If the value in Prefs isn't in the list, then we want
+ // the last item, 'Other...' to be shown.
+ S.SetNoMatchSelector(mSampleRateNames.GetCount() - 1);
+ // First the choice...
+ // We make sure it uses the ID we want, so that we get changes
+ S.Id(ID_SAMPLE_RATE_CHOICE);
+ // We make sure we have a pointer to it, so that we can drive it.
+ mSampleRates = S.TieChoice(wxT(""),
+ wxT("/SamplingRate/DefaultProjectSampleRate"),
+ AudioIO::GetOptimalSupportedSampleRate(),
+ mSampleRateNames,
+ mSampleRateLabels);
+ S.SetSizeHints(mSampleRateNames);
+
+ // Now do the edit box...
+ mOtherSampleRate = S.TieTextBox(wxT(""),
+ mOtherSampleRateValue,
+ 15);
+ }
+ S.EndHorizontalLay();
+
+ S.TieChoice(_("Default Sample Format:"),
+ wxT("/SamplingRate/DefaultProjectSampleFormat"),
+ floatSample,
+ mSampleFormatNames,
+ mSampleFormatLabels);
+ S.SetSizeHints(mSampleFormatNames);
+ }
+ S.EndMultiColumn();
}
S.EndStatic();
-// The new style of layout has
-// - columns for converter and dither.
-// - rows for Real-time and High-quality.
-#ifndef OLD_STYLE_LAYOUT
- S.StartStatic( _("Conversion") );
+ S.StartStatic(_("Real-time Conversion"));
{
- // We use blank labels here and there to end up with
- // a three column layout.
- S.StartMultiColumn(3);
- S.AddFixedText(wxT(""));
- S.AddTitle(_("Sample Rate Converter" ));
- S.AddTitle(_("Dither"));
- S.TieChoice(_("Real-time:"),
- wxT("/Quality/LibresampleSampleRateConverter"),
- (int)0, mConverterNames, mConverterLabels),
- S.TieChoice(wxT(""),
- wxT("/Quality/DitherAlgorithm"),
- Dither::none, mmDitherNames, mmDitherLabels );
- S.TieChoice(_("High-quality:"),
- wxT("/Quality/LibresampleHQSampleRateConverter"),
- (int)1, mConverterNames, mConverterLabels),
- S.TieChoice(wxT(""),
- wxT("/Quality/HQDitherAlgorithm"),
- Dither::shaped, mmDitherNames, mmDitherLabels );
+ S.StartMultiColumn(2, wxEXPAND);
+ {
+ S.SetStretchyCol(2);
+
+ S.TieChoice(_("Sample Rate Converter:"),
+ Resample::GetFastMethodKey(),
+ Resample::GetFastMethodDefault(),
+ mConverterNames,
+ mConverterLabels),
+ S.SetSizeHints(mConverterNames);
+
+ S.TieChoice(_("Dither"),
+ wxT("/Quality/DitherAlgorithm"),
+ Dither::none,
+ mDitherNames,
+ mDitherLabels);
+ S.SetSizeHints(mDitherNames);
+ }
S.EndMultiColumn();
}
S.EndStatic();
-#endif
-}
-
-/// Add a compound control made up from a choice and an edit
-/// box.
-void QualityPrefs::DefineSampleRateControl( ShuttleGui & S )
-{
- // We use a sizer within a sizer to get the effect we want.
- // We also use the SetIfCreated idiom to get pointers to
- // the controls, so that we can drive them from
- // our own code.
- S.SetBorder(2);
- S.StartHorizontalLay(wxALIGN_LEFT );
- // If the value in Prefs isn't in the list, then we want
- // the last item, 'Other...' to be shown.
- S.SetNoMatchSelector( mmSampleRateNames.GetCount()-1 );
- // First the choice...
- // We make sure it uses the ID we want, so that we get changes
- S.Id( ID_SAMPLE_RATE_CHOICE );
- // We make sure we have a pointer to it, so that we can drive it.
- mSampleRates = S.TieChoice( wxT(""),
- wxT("/SamplingRate/DefaultProjectSampleRate"),
- AudioIO::GetOptimalSupportedSampleRate(),
- mmSampleRateNames, mmSampleRateLabels );
- // Now do the edit box...
- mOtherSampleRate = S.TieTextBox(wxT(""),
- mOtherSampleRateValue, 9);
- S.EndHorizontalLay();
-}
-
-bool QualityPrefs::Apply()
-{
- ShuttleGui S( this, eIsSavingToPrefs );
- PopulateOrExchange( S );
-
- // The complex compound control may have value 'other' in which case the
- // value in prefs comes from the second field.
- if( mOtherSampleRate->IsEnabled() )
+ S.StartStatic(_("High-quality Conversion"));
{
- gPrefs->Write( wxT("/SamplingRate/DefaultProjectSampleRate"), mOtherSampleRateValue );
+ S.StartMultiColumn(2);
+ {
+ S.TieChoice(_("Sample Rate Converter:"),
+ Resample::GetBestMethodKey(),
+ Resample::GetBestMethodDefault(),
+ mConverterNames,
+ mConverterLabels),
+ S.SetSizeHints(mConverterNames);
+
+ S.TieChoice(_("Dither"),
+ wxT("/Quality/HQDitherAlgorithm"),
+ Dither::shaped,
+ mDitherNames,
+ mDitherLabels);
+ S.SetSizeHints(mDitherNames);
+ }
+ S.EndMultiColumn();
}
- // Tell CopySamples() to use these ditherers now
- InitDitherers();
- return true;
+ S.EndStatic();
}
/// Enables or disables the Edit box depending on
/// whether we selected 'Other...' or not.
-void QualityPrefs::OnSampleRateChoice(wxCommandEvent& evt)
+void QualityPrefs::OnSampleRateChoice(wxCommandEvent & e)
{
int sel = mSampleRates->GetSelection();
mOtherSampleRate->Enable(sel == (int)mSampleRates->GetCount() - 1);
}
-
-QualityPrefs::~QualityPrefs()
+bool QualityPrefs::Apply()
{
-}
+ ShuttleGui S(this, eIsSavingToPrefs);
+ PopulateOrExchange(S);
+
+ // The complex compound control may have value 'other' in which case the
+ // value in prefs comes from the second field.
+ if (mOtherSampleRate->IsEnabled()) {
+ gPrefs->Write(wxT("/SamplingRate/DefaultProjectSampleRate"), mOtherSampleRateValue);
+ }
+ // Tell CopySamples() to use these ditherers now
+ InitDitherers();
+ return true;
+}
// Indentation settings for Vim and Emacs and unique identifier for Arch, a
// version control system. Please do not modify past this point.
diff --git a/src/prefs/QualityPrefs.h b/src/prefs/QualityPrefs.h
index e267681..0181b23 100644
--- a/src/prefs/QualityPrefs.h
+++ b/src/prefs/QualityPrefs.h
@@ -12,40 +12,44 @@
#ifndef __AUDACITY_QUALITY_PREFS__
#define __AUDACITY_QUALITY_PREFS__
-#include "PrefsPanel.h"
+#include <wx/defs.h>
+
+#include <wx/arrstr.h>
+#include <wx/choice.h>
+#include <wx/dynarray.h>
+#include <wx/textctrl.h>
-class wxChoice;
-class wxTextCtrl;
+#include "../ShuttleGui.h"
-class ShuttleGui;
+#include "PrefsPanel.h"
class QualityPrefs:public PrefsPanel
{
-public:
+ public:
QualityPrefs(wxWindow * parent);
- ~QualityPrefs();
+ virtual ~QualityPrefs();
- void OnSampleRateChoice(wxCommandEvent& evt);
virtual bool Apply();
-private:
+
+ private:
void Populate();
- void PopulateOrExchange( ShuttleGui & S );
- void DefineSampleRateControl( ShuttleGui & S );
+ void PopulateOrExchange(ShuttleGui & S);
void GetNamesAndLabels();
+ void OnSampleRateChoice(wxCommandEvent & e);
- wxArrayString mmDitherNames;
- wxArrayInt mmDitherLabels;
- wxArrayString mmSampleRateNames;
- wxArrayInt mmSampleRateLabels;
- wxArrayString mmSampleFormatNames;
- wxArrayInt mmSampleFormatLabels;
+ wxArrayString mDitherNames;
+ wxArrayInt mDitherLabels;
+ wxArrayString mSampleRateNames;
+ wxArrayInt mSampleRateLabels;
+ wxArrayString mSampleFormatNames;
+ wxArrayInt mSampleFormatLabels;
wxArrayString mConverterNames;
wxArrayInt mConverterLabels;
wxChoice *mSampleRates;
wxTextCtrl *mOtherSampleRate;
int mOtherSampleRateValue;
-public:
+
DECLARE_EVENT_TABLE();
};
@@ -61,4 +65,3 @@ public:
//
// vim: et sts=3 sw=3
// arch-tag: ccb794d2-45d5-4f7b-ba0c-6a4d2438ac93
-
diff --git a/src/prefs/SmartRecordPrefs.cpp b/src/prefs/SmartRecordPrefs.cpp
deleted file mode 100644
index 192a6b4..0000000
--- a/src/prefs/SmartRecordPrefs.cpp
+++ /dev/null
@@ -1,84 +0,0 @@
-/**********************************************************************
-
- Audacity: A Digital Audio Editor
-
- SmartRecordPrefs.cpp
-
- Martyn Shaw
-
- Audacity is free software.
- This file is licensed under the wxWindows license, see License.txt
-
-********************************************************************//**
-
-\class SmartRecord
-\brief A PrefsPanel that configures record-pause on silence.
-
-Provides:
- - Button to to turn the mode on and off.
- - Slider to set the 'silence' level on the meter.
-
-*//********************************************************************/
-
-#include "../Audacity.h"
-
-#include <wx/wxprec.h>
-#include "../Prefs.h"
-#include "../Theme.h"
-#include "../Project.h"
-#include "../ShuttleGui.h"
-#include "SmartRecordPrefs.h"
-#include "../AColor.h"
-#include "../Envelope.h"
-
-SmartRecordPrefs::SmartRecordPrefs(wxWindow * parent) :
- PrefsPanel(parent)
-{
- SetLabel(_("Smart Recording")); // Provide visual label
- SetName(_("Smart Recording")); // Provide audible label
-
- Populate();
-}
-
-SmartRecordPrefs::~SmartRecordPrefs(void)
-{
-}
-
-/// Creates the dialog and its contents.
-void SmartRecordPrefs::Populate( )
-{
- // First any pre-processing for constructing the GUI.
-
- //------------------------- Main section --------------------
- // Now construct the GUI itself.
- // Use 'eIsCreatingFromPrefs' so that the GUI is
- // initialised with values from gPrefs.
- ShuttleGui S(this, eIsCreatingFromPrefs);
- PopulateOrExchange(S);
- // ----------------------- End of main section --------------
-}
-
-/// Create the dialog contents, or exchange data with it.
-void SmartRecordPrefs::PopulateOrExchange( ShuttleGui & S)
-{
- S.StartStatic( _("Sound Activated Recording") );
- {
- S.TieCheckBox( _("Sound Activated Recording"), wxT("/AudioIO/SoundActivatedRecord"),false);
- S.StartMultiColumn(2, wxEXPAND);
- S.SetStretchyCol(1);
- int dBRange;
- dBRange = gPrefs->Read(wxT("/GUI/EnvdBRange"), ENV_DB_RANGE);
- S.TieSlider(_("Sound Activation Level (dB):"), wxT("/AudioIO/SilenceLevel"), -50, 0, -dBRange);
- S.EndMultiColumn();
- }
- S.EndStatic();
-}
-
-/// Update the preferences stored on disk.
-bool SmartRecordPrefs::Apply()
-{
- ShuttleGui S( this, eIsSavingToPrefs );
- PopulateOrExchange( S );
-
- return true;
-}
diff --git a/src/prefs/SmartRecordPrefs.h b/src/prefs/SmartRecordPrefs.h
deleted file mode 100644
index 05ffd6c..0000000
--- a/src/prefs/SmartRecordPrefs.h
+++ /dev/null
@@ -1,34 +0,0 @@
-/**********************************************************************
-
- Audacity: A Digital Audio Editor
-
- SmartRecordPrefs.h
-
- Martyn Shaw
-
- Audacity is free software.
- This file is licensed under the wxWindows license, see License.txt
-
-**********************************************************************/
-
-#ifndef __AUDACITY_SMARTRECORDING_PREFS__
-#define __AUDACITY_SMARTRECORDING_PREFS__
-
-#include "PrefsPanel.h"
-
-class ShuttleGui;
-
-class SmartRecordPrefs : public PrefsPanel
-{
-public:
- SmartRecordPrefs(wxWindow * parent);
- ~SmartRecordPrefs(void);
- virtual bool Apply();
-
-private:
- void Populate();
- void PopulateOrExchange(ShuttleGui & S);
-
-// DECLARE_EVENT_TABLE();
-};
-#endif
diff --git a/src/prefs/SpectrumPrefs.cpp b/src/prefs/SpectrumPrefs.cpp
index 0c59505..f12cea3 100644
--- a/src/prefs/SpectrumPrefs.cpp
+++ b/src/prefs/SpectrumPrefs.cpp
@@ -26,51 +26,46 @@
#include "SpectrumPrefs.h"
#include "../FFT.h"
-enum {
- ID_MINFREQUENCY = 8000,
- ID_MAXFREQUENCY,
-#ifdef EXPERIMENTAL_FIND_NOTES
- ID_FIND_NOTES_MIN_A,
- ID_FIND_NOTES_N,
- ID_FIND_NOTES_QUANTIZE,
-#endif //EXPERIMENTAL_FIND_NOTES
-};
+SpectrumPrefs::SpectrumPrefs(wxWindow * parent)
+: PrefsPanel(parent, _("Spectrograms"))
+{
+ Populate();
+}
-SpectrumPrefs::SpectrumPrefs(wxWindow * parent):
- PrefsPanel(parent)
+SpectrumPrefs::~SpectrumPrefs()
{
- SetLabel(_("Spectrograms")); // Provide visual label
- SetName(_("Spectrograms")); // Provide audible label
- Populate( );
}
-void SpectrumPrefs::Populate( )
+void SpectrumPrefs::Populate()
{
- int minFreq;
- int maxFreq;
-
- // First any pre-processing for constructing the GUI.
- // Unusual handling of maxFreqStr because it is a validated input.
- gPrefs->Read(wxT("/Spectrum/MaxFreq"), &maxFreq, 8000L);
- gPrefs->Read(wxT("/Spectrum/MinFreq"), &minFreq, 0L);
- gPrefs->Read(wxT("/Spectrum/WindowType"), &windowType, 3L);
-#ifdef EXPERIMENTAL_FFT_SKIP_POINTS
- gPrefs->Read(wxT("/Spectrum/FFTSkipPoints"), &fftSkipPoints, 0L);
-#endif //EXPERIMENTAL_FFT_SKIP_POINTS
-#ifdef EXPERIMENTAL_FFT_Y_GRID
- gPrefs->Read(wxT("/Spectrum/FFTYGrid"), &fftYGrid, false);
-#endif //EXPERIMENTAL_FFT_Y_GRID
+ mSizeChoices.Add(_("8 - most wideband"));
+ mSizeChoices.Add(_("16"));
+ mSizeChoices.Add(_("32"));
+ mSizeChoices.Add(_("64"));
+ mSizeChoices.Add(_("128"));
+ mSizeChoices.Add(_("256 - default"));
+ mSizeChoices.Add(_("512"));
+ mSizeChoices.Add(_("1024"));
+ mSizeChoices.Add(_("2048"));
#ifdef EXPERIMENTAL_FIND_NOTES
- gPrefs->Read(wxT("/Spectrum/FFTFindNotes"), &fftFindNotes, false);
- gPrefs->Read(wxT("/Spectrum/FindNotesMinA"), &findNotesMinA, -30L);
- findNotesMinAStr.Printf(wxT("%d"), findNotesMinA);
- gPrefs->Read(wxT("/Spectrum/FindNotesN"), &findNotesN, 5L);
- findNotesNStr.Printf(wxT("%d"), findNotesN);
- gPrefs->Read(wxT("/Spectrum/FindNotes"), &findNotesQuantize, false);
-#endif //EXPERIMENTAL_FIND_NOTES
+ mSizeChoices.Add(_("4096"));
+ mSizeChoices.Add(_("8192"));
+ mSizeChoices.Add(_("16384"));
+ mSizeChoices.Add(_("32768 - most narrowband"));
+#else
+ mSizeChoices.Add(_("4096 - most narrowband"));
+#endif //LOGARITHMIC_SPECTRUM
+
+ for (size_t i = 0; i < mSizeChoices.GetCount(); i++) {
+ mSizeCodes.Add(1 << (i + 3));
+ }
+
+ for (int i = 0; i < NumWindowFuncs(); i++) {
+ mTypeChoices.Add(WindowFuncName(i));
+ mTypeCodes.Add(i);
+ }
+
- minFreqStr.Printf(wxT("%d"), minFreq);
- maxFreqStr.Printf(wxT("%d"), maxFreq);
//------------------------- Main section --------------------
// Now construct the GUI itself.
// Use 'eIsCreatingFromPrefs' so that the GUI is
@@ -80,121 +75,140 @@ void SpectrumPrefs::Populate( )
// ----------------------- End of main section --------------
}
-void SpectrumPrefs::PopulateOrExchange( ShuttleGui & S )
+void SpectrumPrefs::PopulateOrExchange(ShuttleGui & S)
{
- wxArrayString windowTypeList;
-
- for(int i=0; i<NumWindowFuncs(); i++)
- windowTypeList.Add(WindowFuncName(i));
+ S.SetBorder(2);
- S.SetBorder( 2 );
- S.StartHorizontalLay(wxEXPAND, 0 );
- S.StartStatic( _("FFT Size"), 0 );
+ S.StartStatic(_("FFT Window"));
{
- S.StartRadioButtonGroup( wxT("/Spectrum/FFTSize"), 256 );
- S.TieRadioButton( _("8 - most wideband"), 8);
- S.TieRadioButton( wxT("16"), 16);
- S.TieRadioButton( wxT("32"), 32);
- S.TieRadioButton( wxT("64"), 64);
- S.TieRadioButton( wxT("128"), 128);
- S.TieRadioButton( _("256 - default"), 256);
- S.TieRadioButton( wxT("512"), 512);
- S.TieRadioButton( wxT("1024"), 1024);
- S.TieRadioButton( wxT("2048"), 2048);
-#ifdef EXPERIMENTAL_FIND_NOTES
- S.TieRadioButton( wxT("4096"), 4096);
- S.TieRadioButton( wxT("8192"), 8192);
- S.TieRadioButton( wxT("16384"), 16384);
- S.TieRadioButton( _("32768 - most narrowband"),32768);
-#else
- S.TieRadioButton( _("4096 - most narrowband"),4096);
-#endif //LOGARITHMIC_SPECTRUM
- S.EndRadioButtonGroup();
-
- // add choice for windowtype
- S.StartMultiColumn(2, wxCENTER);
+ S.StartMultiColumn(2);
{
- S.TieChoice( _("Window type:"), windowType, &windowTypeList);
- S.SetSizeHints(-1,-1);
+ S.TieChoice(_("Window size") + wxString(wxT(":")),
+ wxT("/Spectrum/FFTSize"),
+ 256,
+ mSizeChoices,
+ mSizeCodes);
+ S.SetSizeHints(mSizeChoices);
+
+ S.TieChoice(_("Window type") + wxString(wxT(":")),
+ wxT("/Spectrum/WindowType"),
+ 3,
+ mTypeChoices,
+ mTypeCodes);
+ S.SetSizeHints(mTypeChoices);
}
S.EndMultiColumn();
}
S.EndStatic();
#ifdef EXPERIMENTAL_FFT_SKIP_POINTS
- S.StartHorizontalLay(wxEXPAND, 0 );
- S.StartStatic( _("FFT Skip Points"), 0 );
+ wxArrayString wskipn;
+ wxArrayInt wskipv;
+
+ for (size_t i = 0; i < 7; i++) {
+ wskipn.Add(wxString::Format(wxT("%d"), (1 << i) - 1));
+ wskipv.Add((1 << i) - 1);
+ }
+
+ S.StartStatic(_("FFT Skip Points"));
{
- S.StartRadioButtonGroup(wxT("/Spectrum/FFTSkipPoints"), 0);
- S.TieRadioButton(wxT("0"), 0);
- S.TieRadioButton(wxT("1"), 1);
- S.TieRadioButton(wxT("3"), 3);
- S.TieRadioButton(wxT("7"), 7);
- S.TieRadioButton(wxT("15"), 15);
- S.TieRadioButton(wxT("31"), 31);
- S.TieRadioButton(wxT("63"), 63);
- S.EndRadioButtonGroup();
+ S.StartMultiColumn(2);
+ {
+ S.TieChoice(_("Skip Points") + wxString(wxT(":")),
+ wxT("/Spectrum/FFTSkipPoints"),
+ 0,
+ wskipn,
+ wskipv);
+ S.SetSizeHints(wskipn);
+ }
+ S.EndMultiColumn();
}
S.EndStatic();
#endif //EXPERIMENTAL_FFT_SKIP_POINTS
- S.StartStatic( _("Display"),1 );
+ S.StartStatic(_("Display"));
{
- // JC: For layout of mixtures of controls I prefer checkboxes on the right,
- // with everything in two columns over what we have here.
- S.TieCheckBox( _("&Grayscale"), wxT("/Spectrum/Grayscale"), false);
- S.StartTwoColumn(); // 2 cols because we have a control with a separate label.
- S.Id(ID_MINFREQUENCY).TieTextBox(
- _("Minimum Frequency (Hz):"), // prompt
- minFreqStr, // String to exchange with
- 12 // max number of characters (used to size the control).
- );
- S.Id(ID_MAXFREQUENCY).TieTextBox(
- _("Maximum Frequency (Hz):"), // prompt
- maxFreqStr, // String to exchange with
- 12 // max number of characters (used to size the control).
- );
+ S.StartTwoColumn();
+ {
+ mMinFreq =
+ S.TieTextBox(_("Minimum Frequency (Hz):"),
+ wxT("/Spectrum/MinFreq"),
+ 0,
+ 12);
+
+ mMaxFreq =
+ S.TieTextBox(_("Maximum Frequency (Hz):"),
+ wxT("/Spectrum/MaxFreq"),
+ 8000,
+ 12);
+
+ mGain =
+ S.TieTextBox(_("Gain (dB):"),
+ wxT("/Spectrum/Gain"),
+ 20,
+ 8);
+
+ mRange =
+ S.TieTextBox(_("Range (dB):"),
+ wxT("/Spectrum/Range"),
+ 80,
+ 8);
+
+ mFrequencyGain =
+ S.TieTextBox(_("Frequency gain: (dB/dec)"),
+ wxT("/Spectrum/FrequencyGain"),
+ 0,
+ 4);
+ }
S.EndTwoColumn();
+
+ S.TieCheckBox(_("Show the spectrum using &grayscale colors"),
+ wxT("/Spectrum/Grayscale"),
+ false);
+
#ifdef EXPERIMENTAL_FFT_Y_GRID
- S.TieCheckBox( _("&Y-Grid"), wxT("/Spectrum/FFTYGrid"), false);
+ S.TieCheckBox(_("Show a grid along the &Y-axis"),
+ wxT("/Spectrum/FFTYGrid"),
+ false);
#endif //EXPERIMENTAL_FFT_Y_GRID
+ }
+ S.EndStatic();
+
#ifdef EXPERIMENTAL_FIND_NOTES
- S.TieCheckBox( _("&Find Notes"), wxT("/Spectrum/FFTFindNotes"), false);
- S.TieCheckBox( _("&Quantize Notes"), wxT("/Spectrum/FindNotesQuantize"), false);
- S.StartTwoColumn(); // 2 cols because we have a control with a separate label.
- S.Id(ID_FIND_NOTES_MIN_A).TieTextBox(
- _("Minimum Amplitude (dB):"), // prompt
- findNotesMinAStr, // String to exchange with
- 8 // max number of characters (used to size the control).
- );
- S.Id(ID_FIND_NOTES_N).TieTextBox(
- _("Max. Number of Notes (1..128):"), // prompt
- findNotesNStr, // String to exchange with
- 8 // max number of characters (used to size the control).
- );
+ S.StartStatic(_("FFT Find Notes"));
+ {
+ S.StartTwoColumn();
+ {
+ mFindNotesMinA =
+ S.TieTextBox(_("Minimum Amplitude (dB):"),
+ wxT("/Spectrum/FindNotesMinA"),
+ -30L,
+ 8);
+
+ mFindNotesN =
+ S.TieTextBox(_("Max. Number of Notes (1..128):"),
+ wxT("/Spectrum/FindNotesN"),
+ 5L,
+ 8);
+ }
S.EndTwoColumn();
-#endif //EXPERIMENTAL_FIND_NOTES
+
+ S.TieCheckBox(_("&Find Notes"),
+ wxT("/Spectrum/FFTFindNotes"),
+ false);
+
+ S.TieCheckBox(_("&Quantize Notes"),
+ wxT("/Spectrum/FindNotesQuantize"),
+ false);
}
S.EndStatic();
- S.EndHorizontalLay();
+#endif //EXPERIMENTAL_FIND_NOTES
}
-
-bool SpectrumPrefs::Apply()
+bool SpectrumPrefs::Validate()
{
- ShuttleGui S( this, eIsSavingToPrefs );
- PopulateOrExchange( S );
-
- // max/minFreqStr are input fields that have validation.
- // We've handled them slightly differently to all the
- // other fields, which just go straight through to gPrefs.
- // Instead ShuttleGui has been told to only do a one step
- // exchange with them, not including gPrefs.. so we now
- // need to validate them and possibly write them back to gPrefs.
-
- //---- Validation of maxFreqStr
long maxFreq;
- if (!maxFreqStr.ToLong(&maxFreq)) {
+ if (!mMaxFreq->GetValue().ToLong(&maxFreq)) {
wxMessageBox(_("The maximum frequency must be an integer"));
return false;
}
@@ -202,11 +216,9 @@ bool SpectrumPrefs::Apply()
wxMessageBox(_("Maximum frequency must be in the range 100 Hz - 100,000 Hz"));
return false;
}
- //---- End of validation of maxFreqStr.
- //---- Validation of minFreqStr
long minFreq;
- if (!minFreqStr.ToLong(&minFreq)) {
+ if (!mMinFreq->GetValue().ToLong(&minFreq)) {
wxMessageBox(_("The minimum frequency must be an integer"));
return false;
}
@@ -214,42 +226,67 @@ bool SpectrumPrefs::Apply()
wxMessageBox(_("Minimum frequency must be at least 0 Hz"));
return false;
}
- //---- End of validation of maxFreqStr.
+
+ if (maxFreq < minFreq) {
+ wxMessageBox(_("Minimum frequency must be less than maximum frequency"));
+ return false;
+ }
+
+ long gain;
+ if (!mGain->GetValue().ToLong(&gain)) {
+ wxMessageBox(_("The gain must be an integer"));
+ return false;
+ }
+ long range;
+ if (!mRange->GetValue().ToLong(&range)) {
+ wxMessageBox(_("The range must be a positive integer"));
+ return false;
+ }
+ if (range <= 0) {
+ wxMessageBox(_("The range must be at least 1 dB"));
+ return false;
+ }
+
+ long frequencygain;
+ if (!mFrequencyGain->GetValue().ToLong(&frequencygain)) {
+ wxMessageBox(_("The frequency gain must be an integer"));
+ return false;
+ }
+ if (frequencygain < 0) {
+ wxMessageBox(_("The frequency gain cannot be negative"));
+ return false;
+ }
+ if (frequencygain > 60) {
+ wxMessageBox(_("The frequency gain must be no more than 60 dB/dec"));
+ return false;
+ }
#ifdef EXPERIMENTAL_FIND_NOTES
long findNotesMinA;
- if (!findNotesMinAStr.ToLong(&findNotesMinA)) {
+ if (!mFindNotesMinA->GetValue().ToLong(&findNotesMinA)) {
wxMessageBox(_("The minimum amplitude (dB) must be an integer"));
return false;
}
- gPrefs->Write(wxT("/Spectrum/FindNotesMinA"), findNotesMinA);
+
long findNotesN;
- if (!findNotesNStr.ToLong(&findNotesN)) {
- wxMessageBox(_("The Maximum Number of Notes must be an integer in the range 1..128"));
+ if (!mFindNotesN->GetValue().ToLong(&findNotesN)) {
+ wxMessageBox(_("The maximum number of notes must be an integer"));
return false;
}
if (findNotesN < 1 || findNotesN > 128) {
- wxMessageBox(_("The Maximum Number of Notes must be an integer in the range 1..128"));
+ wxMessageBox(_("The maximum number of notes must be in the range 1..128"));
return false;
}
- gPrefs->Write(wxT("/Spectrum/FindNotesN"), findNotesN);
#endif //EXPERIMENTAL_FIND_NOTES
- gPrefs->Write(wxT("/Spectrum/MinFreq"), minFreq);
- gPrefs->Write(wxT("/Spectrum/MaxFreq"), maxFreq);
- gPrefs->Write(wxT("/Spectrum/WindowType"), windowType);
-
- // TODO: Force all projects to repaint themselves
- //v? Or just the active project, voila?
- // Update the TrackPanel correspondingly.
- // Calling RedrawProject is inefficient relative to sending a msg to TrackPanel
- // for a particular track and control, but not a real performance hit.
- GetActiveProject()->RedrawProject(true);
-
return true;
}
-SpectrumPrefs::~SpectrumPrefs()
+bool SpectrumPrefs::Apply()
{
+ ShuttleGui S(this, eIsSavingToPrefs);
+ PopulateOrExchange(S);
+
+ return true;
}
// Indentation settings for Vim and Emacs and unique identifier for Arch, a
diff --git a/src/prefs/SpectrumPrefs.h b/src/prefs/SpectrumPrefs.h
index 48236ed..fd6b715 100644
--- a/src/prefs/SpectrumPrefs.h
+++ b/src/prefs/SpectrumPrefs.h
@@ -23,40 +23,41 @@
#include <wx/defs.h>
#include <wx/string.h>
+#include <wx/window.h>
-#include "PrefsPanel.h"
#include "../Experimental.h"
+#include "../ShuttleGui.h"
-class wxWindow;
-class ShuttleGui;
+#include "PrefsPanel.h"
class SpectrumPrefs:public PrefsPanel
{
-public:
+ public:
SpectrumPrefs(wxWindow * parent);
- ~SpectrumPrefs();
+ virtual ~SpectrumPrefs();
virtual bool Apply();
+ virtual bool Validate();
-private:
+ private:
void Populate();
- void PopulateOrExchange( ShuttleGui & S );
- wxString minFreqStr;
- wxString maxFreqStr;
- int windowType;
-
-#ifdef EXPERIMENTAL_FFT_SKIP_POINTS
- int fftSkipPoints;
-#endif //EXPERIMENTAL_FFT_SKIP_POINTS
-#ifdef EXPERIMENTAL_FFT_Y_GRID
- bool fftYGrid;
-#endif //EXPERIMENTAL_FFT_Y_GRID
+ void PopulateOrExchange(ShuttleGui & S);
+
+ wxTextCtrl *mMinFreq;
+ wxTextCtrl *mMaxFreq;
+ wxTextCtrl *mGain;
+ wxTextCtrl *mRange;
+ wxTextCtrl *mFrequencyGain;
+
+ wxArrayString mSizeChoices;
+ wxArrayInt mSizeCodes;
+
+ wxArrayString mTypeChoices;
+ wxArrayInt mTypeCodes;
+
+
#ifdef EXPERIMENTAL_FIND_NOTES
- bool fftFindNotes;
- bool findNotesQuantize;
- wxString findNotesMinAStr;
- int findNotesMinA;
- wxString findNotesNStr;
- int findNotesN;
+ wxTextCtrl *mFindNotesMinA;
+ wxTextCtrl *mFindNotesN;
#endif
};
diff --git a/src/prefs/ThemePrefs.cpp b/src/prefs/ThemePrefs.cpp
index e07ece2..4089084 100644
--- a/src/prefs/ThemePrefs.cpp
+++ b/src/prefs/ThemePrefs.cpp
@@ -47,21 +47,18 @@ enum eThemePrefsIds {
idSaveThemeAsCode
};
-BEGIN_EVENT_TABLE(ThemePrefs, wxPanel)
- EVT_BUTTON( idLoadThemeCache, ThemePrefs::OnLoadThemeCache)
- EVT_BUTTON( idSaveThemeCache, ThemePrefs::OnSaveThemeCache)
- EVT_BUTTON( idLoadThemeComponents, ThemePrefs::OnLoadThemeComponents)
- EVT_BUTTON( idSaveThemeComponents, ThemePrefs::OnSaveThemeComponents)
- EVT_BUTTON( idReadThemeInternal, ThemePrefs::OnReadThemeInternal)
- EVT_BUTTON( idSaveThemeAsCode, ThemePrefs::OnSaveThemeAsCode)
+BEGIN_EVENT_TABLE(ThemePrefs, PrefsPanel)
+ EVT_BUTTON(idLoadThemeCache, ThemePrefs::OnLoadThemeCache)
+ EVT_BUTTON(idSaveThemeCache, ThemePrefs::OnSaveThemeCache)
+ EVT_BUTTON(idLoadThemeComponents, ThemePrefs::OnLoadThemeComponents)
+ EVT_BUTTON(idSaveThemeComponents, ThemePrefs::OnSaveThemeComponents)
+ EVT_BUTTON(idReadThemeInternal, ThemePrefs::OnReadThemeInternal)
+ EVT_BUTTON(idSaveThemeAsCode, ThemePrefs::OnSaveThemeAsCode)
END_EVENT_TABLE()
-ThemePrefs::ThemePrefs(wxWindow * parent) :
- PrefsPanel(parent)
+ThemePrefs::ThemePrefs(wxWindow * parent)
+: PrefsPanel(parent, _("Theme"))
{
- SetLabel(_("Theme")); // Provide visual label
- SetName(_("Theme")); // Provide audible label
-
Populate();
}
@@ -70,7 +67,7 @@ ThemePrefs::~ThemePrefs(void)
}
/// Creates the dialog and its contents.
-void ThemePrefs::Populate( )
+void ThemePrefs::Populate()
{
// First any pre-processing for constructing the GUI.
@@ -84,27 +81,58 @@ void ThemePrefs::Populate( )
}
/// Create the dialog contents, or exchange data with it.
-void ThemePrefs::PopulateOrExchange( ShuttleGui & S)
+void ThemePrefs::PopulateOrExchange(ShuttleGui & S)
{
- S.StartHorizontalLay(wxEXPAND,1);
- S.StartVerticalLay(0);
+ S.SetBorder(2);
+
+ S.StartStatic(_("Info"));
+ {
+ S.AddFixedText(
+ _("Themability is an experimental feature.\n\nTo try it out, click \"Save Theme Cache\" then find and modify the images and colors in\nImageCacheVxx.png using an image editor such as the Gimp.\n\nClick \"Load Theme Cache\" to load the changed images and colors back into Audacity.\n\n[Only the control toolbar and the colors on the wavetrack are currently affected, even\nthough the image file shows other icons too.]")
+ );
+
+#ifdef __WXDEBUG__
+ S.AddFixedText(
+ _("You have compiled Audacity with an extra button, 'Output Sourcery'. This will save a\nC version of the image cache that can be compiled in as a default.")
+ );
+#endif
+
+ S.AddFixedText(
+ _("If 'Load Theme Cache At Startup' is checked, then the Theme Cache will be loaded\nwhen the program starts up.")
+ );
+ S.AddFixedText(
+ _("Saving and loading individual theme files uses a separate file for each image, but is\notherwise the same idea.")
+ );
+ }
+ S.EndStatic();
+
/* i18n-hint: && in here is an escape character to get a single & on screen,
* so keep it as is */
- S.StartStatic( _("Theme Cache - Images && Color"));
+ S.StartStatic( _("Theme Cache - Images && Color"));
{
- S.Id( idSaveThemeCache ).AddButton( _("Save Theme Cache"));
- S.Id( idLoadThemeCache ).AddButton( _("Load Theme Cache"));
-// This next button is only provided in Debug mode.
-// It is for developers who are compiling Audacity themselves
-// and who who wish to generate a new ThemeAsCeeCode.h and compile it in.
+ S.StartHorizontalLay(wxALIGN_LEFT);
+ {
+ S.Id(idSaveThemeCache).AddButton(_("Save Theme Cache"));
+ S.Id(idLoadThemeCache).AddButton(_("Load Theme Cache"));
+
+ // This next button is only provided in Debug mode.
+ // It is for developers who are compiling Audacity themselves
+ // and who who wish to generate a new ThemeAsCeeCode.h and compile it in.
#ifdef __WXDEBUG__
-// S.Id( idSaveThemeAsCode ).AddButton( wxT("Save Code" ));
- S.Id( idSaveThemeAsCode ).AddButton( wxT("Output Sourcery" ));
+ S.Id(idSaveThemeAsCode).AddButton(wxT("Output Sourcery"));
#endif
- S.Id( idReadThemeInternal ).AddButton( _("&Defaults" ));
- S.TieCheckBox( _("Load Theme Cache At Startup"),
- wxT("/Theme/LoadAtStart"), false);
+ S.Id(idReadThemeInternal).AddButton(_("&Defaults"));
+ }
+ S.EndHorizontalLay();
+
+ S.StartHorizontalLay(wxALIGN_LEFT);
+ {
+ S.TieCheckBox(_("Load Theme Cache At Startup"),
+ wxT("/Theme/LoadAtStart"),
+ false);
+ }
+ S.EndHorizontalLay();
}
S.EndStatic();
@@ -117,58 +145,31 @@ void ThemePrefs::PopulateOrExchange( ShuttleGui & S)
// buttons smaller and less tempting to click.
S.StartStatic( _("Individual Theme Files"),1);
{
- S.Id( idSaveThemeComponents ).AddButton( _("Save Files"));
- S.Id( idLoadThemeComponents ).AddButton( _("Load Files"));
- }
- S.EndStatic();
- S.EndVerticalLay();
-
- S.StartStatic( _("Info"), 1 );
- {
- S.AddFixedText(
- _("Themability is an experimental feature.\n\nTo try it out, click \"Save Theme Cache\" then\nfind and modify the images and colors in \nImageCacheVxx.png using an image editor such \nas the Gimp.\n\nClick \"Load Theme Cache\" to load the changed images\nand colors back into Audacity.\n\n[Only the control toolbar and the colors on the \nwavetrack are currently affected, even though the\nimage file shows other icons too.]\n")
- );
-
-#ifdef __WXDEBUG__
- S.AddFixedText(
- _("You have compiled Audacity with an extra button, \n'Output Sourcery'. This will save a C version of \nthe image cache that can be compiled in as a default.\n")
- );
-#endif
-
- S.AddFixedText(
- _("If 'Load Theme Cache At Startup' is checked, then \nthe Theme Cache will be loaded when the program \nstarts up.\n\n")
- );
- S.AddFixedText(
- _("Saving and loading individual theme files uses a \nseparate file for each image, but is otherwise the \nsame idea.\n\n")
- );
+ S.StartHorizontalLay(wxALIGN_LEFT);
+ {
+ S.Id(idSaveThemeComponents).AddButton( _("Save Files"));
+ S.Id(idLoadThemeComponents).AddButton( _("Load Files"));
+ }
+ S.EndHorizontalLay();
}
S.EndStatic();
}
-/// Update the preferences stored on disk.
-bool ThemePrefs::Apply()
-{
- ShuttleGui S( this, eIsSavingToPrefs );
- PopulateOrExchange( S );
-
- return true;
-}
-
/// Load Theme from multiple png files.
-void ThemePrefs::OnLoadThemeComponents(wxCommandEvent &event)
+void ThemePrefs::OnLoadThemeComponents(wxCommandEvent & e)
{
theTheme.LoadComponents();
theTheme.ApplyUpdatedImages();
}
/// Save Theme to multiple png files.
-void ThemePrefs::OnSaveThemeComponents(wxCommandEvent &event)
+void ThemePrefs::OnSaveThemeComponents(wxCommandEvent & e)
{
theTheme.SaveComponents();
}
/// Load Theme from single png file.
-void ThemePrefs::OnLoadThemeCache(wxCommandEvent &event)
+void ThemePrefs::OnLoadThemeCache(wxCommandEvent & e)
{
theTheme.ReadImageCache();
AColor::ReInit();
@@ -176,23 +177,42 @@ void ThemePrefs::OnLoadThemeCache(wxCommandEvent &event)
}
/// Save Theme to single png file.
-void ThemePrefs::OnSaveThemeCache(wxCommandEvent &event)
+void ThemePrefs::OnSaveThemeCache(wxCommandEvent & e)
{
theTheme.CreateImageCache();
- theTheme.WriteImageMap( );// bonus - give them the html version.
+ theTheme.WriteImageMap();// bonus - give them the html version.
}
/// Read Theme from internal storage.
-void ThemePrefs::OnReadThemeInternal( wxCommandEvent &event)
+void ThemePrefs::OnReadThemeInternal(wxCommandEvent & e)
{
theTheme.ReadThemeInternal();
theTheme.ApplyUpdatedImages();
}
/// Save Theme as C source code.
-void ThemePrefs::OnSaveThemeAsCode(wxCommandEvent &event)
+void ThemePrefs::OnSaveThemeAsCode(wxCommandEvent & e)
{
theTheme.SaveThemeAsCode();
- theTheme.WriteImageDefs( );// bonus - give them the Defs too.
+ theTheme.WriteImageDefs();// bonus - give them the Defs too.
+}
+
+/// Update the preferences stored on disk.
+bool ThemePrefs::Apply()
+{
+ ShuttleGui S(this, eIsSavingToPrefs);
+ PopulateOrExchange(S);
+
+ return true;
}
+// Indentation settings for Vim and Emacs and unique identifier for Arch, a
+// version control system. Please do not modify past this point.
+//
+// Local Variables:
+// c-basic-offset: 3
+// indent-tabs-mode: nil
+// End:
+//
+// vim: et sts=3 sw=3
+// arch-tag: f09afeeb-9805-463a-b3ca-e3e3bfe05549
diff --git a/src/prefs/ThemePrefs.h b/src/prefs/ThemePrefs.h
index e166c3e..ab929c2 100644
--- a/src/prefs/ThemePrefs.h
+++ b/src/prefs/ThemePrefs.h
@@ -14,28 +14,42 @@
#ifndef __AUDACITY_THEME_PREFS__
#define __AUDACITY_THEME_PREFS__
-#include "PrefsPanel.h"
+#include <wx/defs.h>
+#include <wx/window.h>
+
+#include "../ShuttleGui.h"
-class ShuttleGui;
+#include "PrefsPanel.h"
-class ThemePrefs : public PrefsPanel
+class ThemePrefs:public PrefsPanel
{
-public:
+ public:
ThemePrefs(wxWindow * parent);
~ThemePrefs(void);
virtual bool Apply();
-private:
+ private:
void Populate();
void PopulateOrExchange(ShuttleGui & S);
- void OnLoadThemeComponents(wxCommandEvent &event);
- void OnSaveThemeComponents(wxCommandEvent &event);
- void OnLoadThemeCache(wxCommandEvent &event);
- void OnSaveThemeCache(wxCommandEvent &event);
- void OnReadThemeInternal( wxCommandEvent &event);
- void OnSaveThemeAsCode(wxCommandEvent &event);
-
+ void OnLoadThemeComponents(wxCommandEvent & e);
+ void OnSaveThemeComponents(wxCommandEvent & e);
+ void OnLoadThemeCache(wxCommandEvent & e);
+ void OnSaveThemeCache(wxCommandEvent & e);
+ void OnReadThemeInternal(wxCommandEvent & e);
+ void OnSaveThemeAsCode(wxCommandEvent & e);
DECLARE_EVENT_TABLE();
};
+
#endif
+
+// Indentation settings for Vim and Emacs and unique identifier for Arch, a
+// version control system. Please do not modify past this point.
+//
+// Local Variables:
+// c-basic-offset: 3
+// indent-tabs-mode: nil
+// End:
+//
+// vim: et sts=3 sw=3
+// arch-tag: f09afeeb-9805-463a-b3ca-e3e3bfe05549
diff --git a/src/toolbars/ControlToolBar.cpp b/src/toolbars/ControlToolBar.cpp
index 4ce2dde..4d1ef7d 100644
--- a/src/toolbars/ControlToolBar.cpp
+++ b/src/toolbars/ControlToolBar.cpp
@@ -125,8 +125,7 @@ void ControlToolBar::Create(wxWindow * parent)
AButton *ControlToolBar::MakeButton(teBmps eFore, teBmps eDisabled,
int id,
bool processdownevents,
- const wxChar *label,
- const wxChar *tip)
+ const wxChar *label)
{
AButton *r = ToolBar::MakeButton(
bmpRecoloredUpLarge, bmpRecoloredDownLarge, bmpRecoloredHiliteLarge,
@@ -137,10 +136,6 @@ AButton *ControlToolBar::MakeButton(teBmps eFore, teBmps eDisabled,
r->SetLabel(label);
r->SetFocusRect( r->GetRect().Deflate( 12, 12 ) );
-#if wxUSE_TOOLTIPS
- r->SetToolTip(tip);
-#endif
-
return r;
}
@@ -172,30 +167,30 @@ void ControlToolBar::Populate()
MakeButtonBackgroundsLarge();
mPause = MakeButton(bmpPause,bmpPauseDisabled,
- ID_PAUSE_BUTTON, true, _("Pause"), _("Pause"));
+ ID_PAUSE_BUTTON, true, _("Pause"));
mPlay = MakeButton( bmpPlay, bmpPlayDisabled,
- ID_PLAY_BUTTON, true, _("Play"), _("Play (Shift for Loop Play)"));
+ ID_PLAY_BUTTON, true, _("Play"));
MakeLoopImage();
mStop = MakeButton( bmpStop, bmpStopDisabled ,
- ID_STOP_BUTTON, false, _("Stop"), _("Stop"));
+ ID_STOP_BUTTON, false, _("Stop"));
mRewind = MakeButton(bmpRewind, bmpRewindDisabled,
- ID_REW_BUTTON, false, _("Start"), _("Skip to Start"));
+ ID_REW_BUTTON, false, _("Start"));
mFF = MakeButton(bmpFFwd, bmpFFwdDisabled,
- ID_FF_BUTTON, false, _("End"), _("Skip to End"));
+ ID_FF_BUTTON, false, _("End"));
mRecord = MakeButton(bmpRecord, bmpRecordDisabled,
- ID_RECORD_BUTTON, true, _("Record"), _("Record (Shift for Append Record)"));
+ ID_RECORD_BUTTON, true, _("Record"));
mBatch = MakeButton(bmpCleanSpeech,bmpCleanSpeechDisabled,
- ID_BATCH_BUTTON, false, _("Clean Speech"), _("Clean Speech"));
+ ID_BATCH_BUTTON, false, _("Clean Speech"));
#if wxUSE_TOOLTIPS
-// MB: Should make this a pref
+ RegenerateToolsTooltips();
wxToolTip::Enable(true);
wxToolTip::SetDelay(1000);
#endif
@@ -204,11 +199,26 @@ void ControlToolBar::Populate()
ArrangeButtons();
}
+void ControlToolBar::RegenerateToolsTooltips()
+{
+#if wxUSE_TOOLTIPS
+ mPause->SetToolTip(_("Pause"));
+ mPlay->SetToolTip(_("Play (Shift for Loop Play)"));
+ mStop->SetToolTip(_("Stop"));
+ mRewind->SetToolTip(_("Skip to Start"));
+ mFF->SetToolTip(_("Skip to End"));
+ mRecord->SetToolTip(_("Record (Shift for Append Record)"));
+ mBatch->SetToolTip(_("Clean Speech"));
+#endif
+}
+
void ControlToolBar::UpdatePrefs()
{
bool updated = false;
bool active;
+ RegenerateToolsTooltips();
+
gPrefs->Read( wxT("/GUI/ErgonomicTransportButtons"), &active, true );
if( mErgonomicTransportButtons != active )
{
@@ -228,6 +238,12 @@ void ControlToolBar::UpdatePrefs()
ReCreateButtons();
Updated();
}
+
+ // Set label to pull in language change
+ SetLabel(_("Control"));
+
+ // Give base class a chance
+ ToolBar::UpdatePrefs();
}
void ControlToolBar::ArrangeButtons()
@@ -295,7 +311,7 @@ void ControlToolBar::ArrangeButtons()
void ControlToolBar::ReCreateButtons()
{
// ToolBar::ReCreateButtons() will get rid of its sizer and
- // since we've attach our sizer to it, ours will get deleted too
+ // since we've attached our sizer to it, ours will get deleted too
// so clean ours up first.
if( mSizer )
{
@@ -305,6 +321,8 @@ void ControlToolBar::ReCreateButtons()
}
ToolBar::ReCreateButtons();
+
+ RegenerateToolsTooltips();
}
void ControlToolBar::Repaint( wxDC *dc )
@@ -427,7 +445,11 @@ void ControlToolBar::PlayPlayRegion(double t0, double t1,
bool hasaudio = false;
TrackListIterator iter(t);
for (Track *trk = iter.First(); trk; trk = iter.Next()) {
- if (trk->GetKind() == Track::Wave) {
+ if (trk->GetKind() == Track::Wave
+#ifdef EXPERIMENTAL_MIDI_OUT
+ || trk->GetKind() == Track::Note
+#endif
+ ) {
hasaudio = true;
break;
}
@@ -439,7 +461,10 @@ void ControlToolBar::PlayPlayRegion(double t0, double t1,
}
double maxofmins,minofmaxs;
-
+#if defined(EXPERIMENTAL_SEEK_BEHIND_CURSOR)
+ double init_seek = 0.0;
+#endif
+
// JS: clarified how the final play region is computed;
if (t1 == t0) {
// msmeyer: When playing looped, we play the whole file, if
@@ -449,10 +474,18 @@ void ControlToolBar::PlayPlayRegion(double t0, double t1,
t0 = t->GetStartTime();
} else {
// move t0 to valid range
- if (t0 < 0)
+ if (t0 < 0) {
t0 = t->GetStartTime();
- if (t0 > t->GetEndTime())
+ }
+ else if (t0 > t->GetEndTime()) {
t0 = t->GetEndTime();
+ }
+#if defined(EXPERIMENTAL_SEEK_BEHIND_CURSOR)
+ else {
+ init_seek = t0; //AC: init_seek is where playback will 'start'
+ t0 = t->GetStartTime();
+ }
+#endif
}
// always play to end
@@ -504,10 +537,11 @@ void ControlToolBar::PlayPlayRegion(double t0, double t1,
{
token = gAudioIO->StartStream(
mCutPreviewTracks->GetWaveTrackArray(false),
- WaveTrackArray(),
-/* REQUIRES PORTMIDI */
-// NoteTrackArray(),
- NULL, p->GetRate(), tcp0, tcp1, p, false,
+ WaveTrackArray(),
+#ifdef EXPERIMENTAL_MIDI_OUT
+ &NoteTrackArray(),
+#endif
+ NULL, p->GetRate(), tcp0, tcp1, p, false,
t0, t1-t0);
} else
{
@@ -522,16 +556,21 @@ void ControlToolBar::PlayPlayRegion(double t0, double t1,
timetrack = t->GetTimeTrack();
}
token = gAudioIO->StartStream(t->GetWaveTrackArray(false),
- WaveTrackArray(),
-/* REQUIRES PORTMIDI */
-// t->GetNoteTrackArray(false),
- timetrack,
- p->GetRate(), t0, t1, p, looped);
+ WaveTrackArray(),
+#ifdef EXPERIMENTAL_MIDI_OUT
+ &(t->GetNoteTrackArray(false)),
+#endif
+ timetrack,
+ p->GetRate(), t0, t1, p, looped);
}
if (token != 0) {
success = true;
p->SetAudioIOToken(token);
mBusyProject = p;
+#if defined(EXPERIMENTAL_SEEK_BEHIND_CURSOR)
+ //AC: If init_seek was set, now's the time to make it happen.
+ gAudioIO->SeekStream(init_seek);
+#endif
SetVUMeters(p);
}
else {
@@ -567,6 +606,7 @@ void ControlToolBar::PlayCurrentRegion(bool looped /* = false */,
mPlay->SetAlternate(looped);
AudacityProject *p = GetActiveProject();
+
if (p)
{
if (looped)
@@ -576,7 +616,7 @@ void ControlToolBar::PlayCurrentRegion(bool looped /* = false */,
double playRegionStart, playRegionEnd;
p->GetPlayRegion(&playRegionStart, &playRegionEnd);
-
+
PlayPlayRegion(playRegionStart,
playRegionEnd,
looped, cutpreview);
@@ -631,6 +671,11 @@ void ControlToolBar::OnKeyUp(wxKeyEvent & event)
void ControlToolBar::OnPlay(wxCommandEvent &evt)
{
+ StopPlaying();
+
+ AudacityProject *p = GetActiveProject();
+ if (p) p->TP_DisplaySelection();
+
PlayDefault();
}
@@ -641,8 +686,6 @@ void ControlToolBar::OnStop(wxCommandEvent &evt)
void ControlToolBar::PlayDefault()
{
- StopPlaying();
-
if(mPlay->WasControlDown())
PlayCurrentRegion(false, true); /* play with cut preview */
else if(mPlay->WasShiftDown())
@@ -733,21 +776,23 @@ void ControlToolBar::OnRecord(wxCommandEvent &evt)
/* TODO: set up stereo tracks if that is how the user has set up
* their preferences, and choose sample format based on prefs */
WaveTrackArray newRecordingTracks, playbackTracks;
-/* REQUIRES PORTMIDI */
-// NoteTrackArray midiTracks;
-
+#ifdef EXPERIMENTAL_MIDI_OUT
+ NoteTrackArray midiTracks;
+#endif
bool duplex;
gPrefs->Read(wxT("/AudioIO/Duplex"), &duplex, true);
if(duplex){
playbackTracks = t->GetWaveTrackArray(false);
-/* REQUIRES PORTMIDI */
-// midiTracks = t->GetNoteTrackArray(false);
+#ifdef EXPERIMENTAL_MIDI_OUT
+ midiTracks = t->GetNoteTrackArray(false);
+#endif
}
else {
playbackTracks = WaveTrackArray();
-/* REQUIRES PORTMIDI */
-// midiTracks = NoteTrackArray();
+#ifdef EXPERIMENTAL_MIDI_OUT
+ midiTracks = NoteTrackArray();
+#endif
}
// If SHIFT key was down, the user wants append to tracks
@@ -825,7 +870,6 @@ void ControlToolBar::OnRecord(wxCommandEvent &evt)
}
else {
newTrack->SetChannel(Track::RightChannel);
- newTrack->SetTeamed(true);
}
}
else {
@@ -844,8 +888,9 @@ void ControlToolBar::OnRecord(wxCommandEvent &evt)
int token = gAudioIO->StartStream(playbackTracks,
newRecordingTracks,
-/* REQUIRES PORTMIDI */
-// midiTracks,
+#ifdef EXPERIMENTAL_MIDI_OUT
+ &midiTracks,
+#endif
t->GetTimeTrack(),
p->GetRate(), t0, t1, p);
@@ -931,13 +976,17 @@ void ControlToolBar::SetupCutPreviewTracks(double playStart, double cutStart,
if (t->GetKind() == Track::Wave && t->GetSelected())
{
track1 = t;
- track2 = p->GetTracks()->GetLink(track1);
+ track2 = t->GetLink();
break;
}
}
if (track1)
{
+ // Temporarily disable sticky track handling
+ bool sticky = p->GetStickyFlag();
+ p->SetStickyFlag(false);
+
// Duplicate and change tracks
track1 = track1->Duplicate();
track1->Clear(cutStart, cutEnd);
@@ -951,6 +1000,9 @@ void ControlToolBar::SetupCutPreviewTracks(double playStart, double cutStart,
mCutPreviewTracks->Add(track1);
if (track2)
mCutPreviewTracks->Add(track2);
+
+ // Reinstate sticky track handling
+ p->SetStickyFlag(sticky);
}
}
}
diff --git a/src/toolbars/ControlToolBar.h b/src/toolbars/ControlToolBar.h
index 6a48361..3a33d89 100644
--- a/src/toolbars/ControlToolBar.h
+++ b/src/toolbars/ControlToolBar.h
@@ -84,10 +84,10 @@ class ControlToolBar:public ToolBar {
AButton *MakeButton(teBmps eFore, teBmps eDisabled,
int id,
bool processdownevents,
- const wxChar *label,
- const wxChar *tip);
+ const wxChar *label);
void MakeLoopImage();
void ArrangeButtons();
+ void RegenerateToolsTooltips();
void SetupCutPreviewTracks(double playStart, double cutStart,
double cutEnd, double playEnd);
void ClearCutPreviewTracks();
diff --git a/src/toolbars/DeviceToolBar.cpp b/src/toolbars/DeviceToolBar.cpp
index 4e67b62..6e13e7f 100644
--- a/src/toolbars/DeviceToolBar.cpp
+++ b/src/toolbars/DeviceToolBar.cpp
@@ -79,11 +79,7 @@ void DeviceToolBar::Populate()
wxArrayString inputs;
wxArrayString outputs;
-#if USE_PORTAUDIO_V19
int nDevices = Pa_GetDeviceCount();
-#else
- int nDevices = Pa_CountDevices();
-#endif
for (i = 0; i < nDevices; i++) {
const PaDeviceInfo *info = Pa_GetDeviceInfo(i);
@@ -111,11 +107,8 @@ void DeviceToolBar::Populate()
wxDefaultSize,
outputs);
mOutput->SetName(_("Output Device"));
-#if wxUSE_TOOLTIPS
- mOutput->SetToolTip(_("Output Device"));
-#endif
- Add(mOutput, 0, wxALIGN_CENTER);
+ Add(mOutput, 0, wxALIGN_CENTER);
if (outputs.GetCount() == 0)
mOutput->Enable(false);
@@ -132,9 +125,7 @@ void DeviceToolBar::Populate()
wxDefaultSize,
inputs);
mInput->SetName(_("Input Device"));
-#if wxUSE_TOOLTIPS
- mInput->SetToolTip(_("Input Device"));
-#endif
+
Add(mInput, 0, wxALIGN_CENTER);
if (inputs.GetCount() == 0)
mInput->Enable(false);
@@ -197,8 +188,23 @@ void DeviceToolBar::OnCaptureKey(wxCommandEvent &event)
void DeviceToolBar::UpdatePrefs()
{
mInput->SetStringSelection(gPrefs->Read(wxT("/AudioIO/RecordingDevice"), wxT("")));
-
mOutput->SetStringSelection(gPrefs->Read(wxT("/AudioIO/PlaybackDevice"), wxT("")));
+
+ RegenerateTooltips();
+
+ // Set label to pull in language change
+ SetLabel(_("Device"));
+
+ // Give base class a chance
+ ToolBar::UpdatePrefs();
+}
+
+void DeviceToolBar::RegenerateTooltips()
+{
+#if wxUSE_TOOLTIPS
+ mOutput->SetToolTip(_("Output Device"));
+ mInput->SetToolTip(_("Input Device"));
+#endif
}
void DeviceToolBar::OnChoice(wxCommandEvent &event)
diff --git a/src/toolbars/DeviceToolBar.h b/src/toolbars/DeviceToolBar.h
index 8a492e7..cb235f1 100644
--- a/src/toolbars/DeviceToolBar.h
+++ b/src/toolbars/DeviceToolBar.h
@@ -40,6 +40,8 @@ class DeviceToolBar:public ToolBar {
void OnChoice(wxCommandEvent & event);
private:
+ void RegenerateTooltips();
+
wxBitmap *mPlayBitmap;
wxBitmap *mRecordBitmap;
diff --git a/src/toolbars/EditToolBar.cpp b/src/toolbars/EditToolBar.cpp
index 0914f75..0cbafc0 100644
--- a/src/toolbars/EditToolBar.cpp
+++ b/src/toolbars/EditToolBar.cpp
@@ -73,7 +73,7 @@ END_EVENT_TABLE()
//Standard contructor
EditToolBar::EditToolBar()
-: ToolBar(EditBarID, _NoAcc("&Edit"), wxT("Edit"))
+: ToolBar(EditBarID, _("Edit"), wxT("Edit"))
{
}
@@ -100,7 +100,7 @@ AButton *EditToolBar::AddButton(
teBmps eFore, teBmps eDisabled,
int id,
const wxChar *label,
- const wxChar *tip, bool toggle)
+ bool toggle)
{
AButton *&r = mButtons[id];
@@ -116,9 +116,6 @@ AButton *EditToolBar::AddButton(
// JKC: Unlike ControlToolBar, does not have a focus rect. Shouldn't it?
// r->SetFocusRect( r->GetRect().Deflate( 4, 4 ) );
-#if wxUSE_TOOLTIPS
- r->SetToolTip(tip);
-#endif
Add( r, 0, wxALIGN_CENTER );
return r;
@@ -130,54 +127,79 @@ void EditToolBar::Populate()
/* Buttons */
AddButton(bmpCut, bmpCutDisabled, ETBCutID,
- _("Cut"), _("Cut"));
+ _("Cut"));
AddButton(bmpCopy, bmpCopyDisabled, ETBCopyID,
- _("Copy"), _("Copy"));
+ _("Copy"));
AddButton(bmpPaste, bmpPasteDisabled, ETBPasteID,
- _("Paste"), _("Paste"));
+ _("Paste"));
AddButton(bmpTrim, bmpTrimDisabled, ETBTrimID,
- _("Trim outside selection"),_("Trim"));
+ _("Trim outside selection"));
AddButton(bmpSilence, bmpSilenceDisabled, ETBSilenceID,
- _("Silence selection"),_("Silence"));
+ _("Silence selection"));
+
AddSeparator();
+
AddButton(bmpUndo, bmpUndoDisabled, ETBUndoID,
- _("Undo"), _("Undo"));
+ _("Undo"));
AddButton(bmpRedo, bmpRedoDisabled, ETBRedoID,
- _NoAcc("&Redo"), _NoAcc("&Redo"));
+ _("Redo"));
+
AddSeparator();
AddButton(bmpLinkTracks, bmpLinkTracksDisabled, ETBLinkID,
- _("Link Tracks"), _("Link Tracks"), true);
+ _("Link Tracks"), true);
AddSeparator();
AddButton(bmpZoomIn, bmpZoomInDisabled, ETBZoomInID,
- _("Zoom In"),_("Zoom In"));
+ _("Zoom In"));
AddButton(bmpZoomOut, bmpZoomOutDisabled, ETBZoomOutID,
- _("Zoom Out"),_("Zoom Out"));
+ _("Zoom Out"));
- #if 0 // Disabled for version 1.2.0 since it doesn't work quite right...
- AddButton(bmpZoomToggle, bmpZoomToggleDisabled, ETBZoomToggleID,
- _("Zoom Toggle"),_("Zoom Toggle"));
- #endif
-
- AddButton(bmpZoomSel, bmpZoomSelDisabled, ETBZoomSelID,
- _("Fit selection in window"),_("Fit Selection"));
+ AddButton(bmpZoomSel, bmpZoomSelDisabled, ETBZoomSelID,
+ _("Fit selection in window"));
AddButton(bmpZoomFit, bmpZoomFitDisabled, ETBZoomFitID,
- _("Fit project in window"),_("Fit Project"));
+ _("Fit project in window"));
mButtons[ETBZoomInID]->SetEnabled(false);
mButtons[ETBZoomOutID]->SetEnabled(false);
- #if 0 // Disabled for version 1.2.0 since it doesn't work quite right...
- mButtons[ETBZoomToggleID]->SetEnabled(false);
- #endif
-
mButtons[ETBZoomSelID]->SetEnabled(false);
mButtons[ETBZoomFitID]->SetEnabled(false);
mButtons[ETBPasteID]->SetEnabled(false);
mButtons[ETBLinkID]->PushDown();
+
+ RegenerateTooltips();
+}
+
+void EditToolBar::UpdatePrefs()
+{
+ RegenerateTooltips();
+
+ // Set label to pull in language change
+ SetLabel(_("Edit"));
+
+ // Give base class a chance
+ ToolBar::UpdatePrefs();
+}
+
+void EditToolBar::RegenerateTooltips()
+{
+#if wxUSE_TOOLTIPS
+ mButtons[ETBCutID]->SetToolTip(_("Cut"));
+ mButtons[ETBCopyID]->SetToolTip(_("Copy"));
+ mButtons[ETBPasteID]->SetToolTip(_("Paste"));
+ mButtons[ETBTrimID]->SetToolTip(_("Trim"));
+ mButtons[ETBSilenceID]->SetToolTip(_("Silence"));
+ mButtons[ETBUndoID]->SetToolTip(_("Undo"));
+ mButtons[ETBRedoID]->SetToolTip(_("Redo"));
+ mButtons[ETBLinkID]->SetToolTip(_("Link Tracks"));
+ mButtons[ETBZoomInID]->SetToolTip(_("Zoom In"));
+ mButtons[ETBZoomOutID]->SetToolTip(_("Zoom Out"));
+ mButtons[ETBZoomSelID]->SetToolTip(_("Fit Selection"));
+ mButtons[ETBZoomFitID]->SetToolTip(_("Fit Project"));
+#endif
}
void EditToolBar::OnButton(wxCommandEvent &event)
diff --git a/src/toolbars/EditToolBar.h b/src/toolbars/EditToolBar.h
index e9bc1e6..1673924 100644
--- a/src/toolbars/EditToolBar.h
+++ b/src/toolbars/EditToolBar.h
@@ -65,15 +65,18 @@ class EditToolBar:public ToolBar {
void Populate();
void Repaint(wxDC *dc) {};
void EnableDisableButtons();
+ void UpdatePrefs();
private:
AButton *AddButton(teBmps eFore, teBmps eDisabled,
- int id, const wxChar *label, const wxChar *tip, bool toggle=false);
+ int id, const wxChar *label, bool toggle = false);
void AddSeparator();
void MakeButtons();
+
+ void RegenerateTooltips();
AButton *mButtons[ETBNumButtons];
diff --git a/src/toolbars/MeterToolBar.cpp b/src/toolbars/MeterToolBar.cpp
index 730366d..d943931 100644
--- a/src/toolbars/MeterToolBar.cpp
+++ b/src/toolbars/MeterToolBar.cpp
@@ -90,21 +90,54 @@ void MeterToolBar::Populate()
mRecordMeter->SetLabel( _("Meter-Record") );
mSizer->Add( mRecordMeter, wxGBPosition( 0, 1 ), wxDefaultSpan, wxEXPAND );
+ RegenerateTooltips();
+
+#if defined(THIS_PROBABY_SHOULD_NOT_BE_DONE_HERE)
+ // If AudioIO changes the meters while it's currently busy, then crashes are
+ // very likely.
+ if (gAudioIO && !gAudioIO->IsBusy()) {
+ gAudioIO->SetMeters(mRecordMeter, mPlayMeter);
+ }
+#endif
+}
+
+void MeterToolBar::UpdatePrefs()
+{
+ mPlayMeter->UpdatePrefs();
+ mPlayMeter->HandleLayout();
+ mRecordMeter->UpdatePrefs();
+ mRecordMeter->HandleLayout();
+
+ RegenerateTooltips();
+
+ // Set label to pull in language change
+ SetLabel(_("Meter"));
+
+ // Give base class a chance
+ ToolBar::UpdatePrefs();
+}
+
+void MeterToolBar::RegenerateTooltips()
+{
#if wxUSE_TOOLTIPS
mPlayMeter->SetToolTip( _("Output level meter") );
mRecordMeter->SetToolTip( _("Input level meter - click to monitor input") );
#endif
-
- if (gAudioIO) {
- gAudioIO->SetMeters(mRecordMeter, mPlayMeter);
- }
}
bool MeterToolBar::DestroyChildren()
{
mPlayMeter = NULL;
mRecordMeter = NULL;
- gAudioIO->SetMeters(NULL, NULL);
+
+#if defined(THIS_PROBABY_SHOULD_NOT_BE_DONE_HERE)
+ // If AudioIO changes the meters while it's currently busy, then crashes are
+ // very likely...especially in this case.
+ if (gAudioIO && !gAudioIO->IsBusy()) {
+ gAudioIO->SetMeters(NULL, NULL);
+ }
+#endif
+
return ToolBar::DestroyChildren();
}
diff --git a/src/toolbars/MeterToolBar.h b/src/toolbars/MeterToolBar.h
index 8b17bd7..c027974 100644
--- a/src/toolbars/MeterToolBar.h
+++ b/src/toolbars/MeterToolBar.h
@@ -36,6 +36,7 @@ class MeterToolBar:public ToolBar {
virtual void Populate();
virtual void Repaint(wxDC *dc) {};
virtual void EnableDisableButtons() {};
+ virtual void UpdatePrefs();
void GetMeters(Meter **playMeter, Meter **recordMeter);
void StartMonitoring();
@@ -43,6 +44,7 @@ class MeterToolBar:public ToolBar {
virtual void OnSize(wxSizeEvent & event);
private:
+ void RegenerateTooltips();
wxGridBagSizer *mSizer;
Meter *mPlayMeter;
diff --git a/src/toolbars/MixerToolBar.cpp b/src/toolbars/MixerToolBar.cpp
index 97b5b99..6e3faae 100644
--- a/src/toolbars/MixerToolBar.cpp
+++ b/src/toolbars/MixerToolBar.cpp
@@ -50,7 +50,6 @@ IMPLEMENT_CLASS(MixerToolBar, ToolBar);
BEGIN_EVENT_TABLE(MixerToolBar, ToolBar)
EVT_PAINT(MixerToolBar::OnPaint)
EVT_SLIDER(wxID_ANY, MixerToolBar::SetMixer)
- EVT_SLIDER(wxID_ANY, MixerToolBar::SetMixer)
EVT_CHOICE(wxID_ANY, MixerToolBar::SetMixer)
EVT_COMMAND(wxID_ANY, EVT_CAPTURE_KEY, MixerToolBar::OnCaptureKey)
END_EVENT_TABLE()
@@ -59,6 +58,7 @@ END_EVENT_TABLE()
MixerToolBar::MixerToolBar()
: ToolBar(MixerBarID, _("Mixer"), wxT("Mixer"))
{
+ mInputSourceChoice = NULL;
}
MixerToolBar::~MixerToolBar()
@@ -235,6 +235,12 @@ void MixerToolBar::UpdatePrefs()
// Notify someone that we've changed our size
Updated();
#endif
+
+ // Set label to pull in language change
+ SetLabel(_("Mixer"));
+
+ // Give base class a chance
+ ToolBar::UpdatePrefs();
}
void MixerToolBar::UpdateControls()
@@ -271,6 +277,86 @@ void MixerToolBar::SetMixer(wxCommandEvent &event)
#endif // USE_PORTMIXER
}
+void MixerToolBar::ShowOutputGainDialog()
+{
+ mOutputSlider->ShowDialog();
+ wxCommandEvent e;
+ SetMixer(e);
+ UpdateControls();
+}
+
+void MixerToolBar::ShowInputGainDialog()
+{
+ mInputSlider->ShowDialog();
+ wxCommandEvent e;
+ SetMixer(e);
+ UpdateControls();
+}
+
+void MixerToolBar::ShowInputSourceDialog()
+{
+ if (!mInputSourceChoice || mInputSourceChoice->GetCount() == 0) {
+ wxMessageBox(_("Input source information is not available."));
+ return;
+ }
+
+#if USE_PORTMIXER
+ wxArrayString inputSources = mInputSourceChoice->GetStrings();
+
+ wxDialog dlg(NULL, wxID_ANY, wxString(_("Select Input Source")));
+ ShuttleGui S(&dlg, eIsCreating);
+ wxChoice *c;
+
+ S.StartVerticalLay(true);
+ {
+ S.StartHorizontalLay(wxCENTER, false);
+ {
+ c = S.AddChoice(_("Input Source:"),
+ mInputSourceChoice->GetStringSelection(),
+ &inputSources);
+ }
+ S.EndHorizontalLay();
+ S.AddStandardButtons();
+ }
+ S.EndVerticalLay();
+
+ dlg.SetSize(dlg.GetSizer()->GetMinSize());
+ dlg.Center();
+
+ if (dlg.ShowModal() == wxID_OK)
+ {
+ // This will fire an event which will invoke SetMixer above.
+ mInputSourceChoice->SetSelection(c->GetSelection());
+ }
+#endif
+}
+
+void MixerToolBar::AdjustOutputGain(int adj)
+{
+ if (adj < 0) {
+ mOutputSlider->Decrease(-adj);
+ }
+ else {
+ mOutputSlider->Increase(adj);
+ }
+ wxCommandEvent e;
+ SetMixer(e);
+ UpdateControls();
+}
+
+void MixerToolBar::AdjustInputGain(int adj)
+{
+ if (adj < 0) {
+ mInputSlider->Decrease(-adj);
+ }
+ else {
+ mInputSlider->Increase(adj);
+ }
+ wxCommandEvent e;
+ SetMixer(e);
+ UpdateControls();
+}
+
// Indentation settings for Vim and Emacs and unique identifier for Arch, a
// version control system. Please do not modify past this point.
//
diff --git a/src/toolbars/MixerToolBar.h b/src/toolbars/MixerToolBar.h
index 4f9835f..55506c2 100644
--- a/src/toolbars/MixerToolBar.h
+++ b/src/toolbars/MixerToolBar.h
@@ -43,6 +43,13 @@ class MixerToolBar:public ToolBar {
void OnSlider(wxCommandEvent & event);
+ void ShowOutputGainDialog();
+ void ShowInputGainDialog();
+ void ShowInputSourceDialog();
+
+ void AdjustOutputGain(int adj);
+ void AdjustInputGain(int adj);
+
private:
void InitializeMixerToolBar();
diff --git a/src/toolbars/SelectionBar.cpp b/src/toolbars/SelectionBar.cpp
index c64cc8c..0613e00 100644
--- a/src/toolbars/SelectionBar.cpp
+++ b/src/toolbars/SelectionBar.cpp
@@ -201,7 +201,7 @@ void SelectionBar::Populate()
// We need to capture the SetFocus and KillFocus events to set up
// for keyboard capture. On Windows and GTK it's easy since the
// combobox is presented as one control to hook into.
- wxWindow *ctrl = mRateBox;
+ mRateText = mRateBox;
#if defined(__WXMAC__)
// The Mac uses a standard wxTextCtrl for the edit portion and that's
@@ -211,20 +211,20 @@ void SelectionBar::Populate()
for (unsigned int i = 0; i < kids.GetCount(); i++) {
wxClassInfo *ci = kids[i]->GetClassInfo();
if (ci->IsKindOf(CLASSINFO(wxTextCtrl))) {
- ctrl = kids[i];
+ mRateText = kids[i];
break;
}
}
#endif
- ctrl->Connect(wxEVT_SET_FOCUS,
- wxFocusEventHandler(SelectionBar::OnFocus),
- NULL,
- this);
- ctrl->Connect(wxEVT_KILL_FOCUS,
- wxFocusEventHandler(SelectionBar::OnFocus),
- NULL,
- this);
+ mRateText->Connect(wxEVT_SET_FOCUS,
+ wxFocusEventHandler(SelectionBar::OnFocus),
+ NULL,
+ this);
+ mRateText->Connect(wxEVT_KILL_FOCUS,
+ wxFocusEventHandler(SelectionBar::OnFocus),
+ NULL,
+ this);
mainSizer->Add(mRateBox, 0, wxALIGN_CENTER_VERTICAL | wxRIGHT, 5);
@@ -280,6 +280,21 @@ void SelectionBar::Populate()
SetMinSize( GetSizer()->GetMinSize() );
}
+void SelectionBar::UpdatePrefs()
+{
+ mRate = (double) gPrefs->Read(wxT("/SamplingRate/DefaultProjectSampleRate"), AudioIO::GetOptimalSupportedSampleRate());
+
+ wxCommandEvent e;
+ e.SetInt(mLeftTime->GetFormatIndex());
+ OnUpdate(e);
+
+ // Set label to pull in language change
+ SetLabel(_("Selection"));
+
+ // Give base class a chance
+ ToolBar::UpdatePrefs();
+}
+
void SelectionBar::SetListener(SelectionBarListener *l)
{
mListener = l;
@@ -349,7 +364,6 @@ void SelectionBar::OnUpdate(wxCommandEvent &evt)
* which as they have no effect on the object state, so we just use the first
* one to hand */
wxString formatName = mLeftTime->GetBuiltinName(index);
- wxString formatString = mLeftTime->GetBuiltinFormat(index);
gPrefs->Write(wxT("/SelectionFormat"), formatName);
@@ -363,11 +377,13 @@ void SelectionBar::OnUpdate(wxCommandEvent &evt)
mRightLengthButton = NULL;
mRateBox = NULL;
+ mRateText = NULL;
ToolBar::ReCreateButtons();
ValuesToControls();
+ wxString formatString = mLeftTime->GetBuiltinFormat(index);
mLeftTime->SetFormatString(formatString);
mRightTime->SetFormatString(formatString);
mAudioTime->SetFormatString(formatString);
@@ -385,13 +401,6 @@ void SelectionBar::OnUpdate(wxCommandEvent &evt)
Updated();
}
-void SelectionBar::UpdateDisplay()
-{
- wxCommandEvent e;
- e.SetInt(mLeftTime->GetFormatIndex());
- OnUpdate(e);
-}
-
void SelectionBar::ValuesToControls()
{
mLeftTime->SetTimeValue(mStart);
@@ -457,7 +466,7 @@ void SelectionBar::SetRate(double rate)
void SelectionBar::OnRate(wxCommandEvent &evt)
{
- if (evt.GetString().ToDouble(&mRate) && // is a numeric value
+ if (mRateBox->GetValue().ToDouble(&mRate) && // is a numeric value
(mRate != 0.0))
{
if (mLeftTime) mLeftTime->SetSampleRate(mRate);
@@ -512,8 +521,8 @@ void SelectionBar::OnCaptureKey(wxCommandEvent &event)
return;
}
- // UP/DOWN/LEFT/RIGHT for mRateBox
- if (w == mRateBox) {
+ // UP/DOWN/LEFT/RIGHT for mRateText
+ if (w == mRateText) {
switch (keyCode)
{
case WXK_LEFT:
diff --git a/src/toolbars/SelectionBar.h b/src/toolbars/SelectionBar.h
index 4bf5a69..f4afba2 100644
--- a/src/toolbars/SelectionBar.h
+++ b/src/toolbars/SelectionBar.h
@@ -50,6 +50,7 @@ class SelectionBar:public ToolBar {
virtual void Populate();
virtual void Repaint(wxDC *dc) {};
virtual void EnableDisableButtons() {};
+ virtual void UpdatePrefs();
void SetTimes(double start, double end, double audio);
double GetLeftTime();
@@ -59,15 +60,6 @@ class SelectionBar:public ToolBar {
void SetRate(double rate);
void SetListener(SelectionBarListener *l);
- // msmeyer: Call this to enable/disable menu items
- // in the "rate" menu, f.e. if sound card selection
- // has changed.
- void UpdateRates();
-
- // lll: Call this when something more drastic has changed
- // in the display, f.e. when the language has changed.
- void UpdateDisplay();
-
private:
void ValuesToControls();
@@ -89,6 +81,8 @@ class SelectionBar:public ToolBar {
void ModifySelection();
+ void UpdateRates();
+
SelectionBarListener * mListener;
double mRate;
double mStart, mEnd, mAudio;
@@ -102,6 +96,8 @@ class SelectionBar:public ToolBar {
wxComboBox *mRateBox;
wxCheckBox *mSnapTo;
+ wxWindow *mRateText;
+
public:
TimeTextCtrl *mLeftTime;
diff --git a/src/toolbars/ToolBar.cpp b/src/toolbars/ToolBar.cpp
index 22f1ff4..8a5622d 100644
--- a/src/toolbars/ToolBar.cpp
+++ b/src/toolbars/ToolBar.cpp
@@ -95,7 +95,6 @@ ToolBar::ToolBar( int type,
mType = type;
mLabel = label;
mSection = section;
- mTitle.Printf( _("Audacity %s ToolBar"), mLabel.c_str() );
mResizable = resizable;
// Initialize everything
@@ -118,7 +117,7 @@ ToolBar::~ToolBar()
//
wxString ToolBar::GetTitle()
{
- return mTitle;
+ return wxString::Format( _("Audacity %s ToolBar"), GetLabel().c_str() );
}
//
@@ -146,6 +145,14 @@ int ToolBar::GetType()
}
//
+// Set the toolbar label
+//
+void ToolBar::SetLabel(const wxString & label)
+{
+ mLabel = label;
+}
+
+//
// Returns whether the toolbar is resizable or not
//
bool ToolBar::IsResizable()
@@ -204,8 +211,8 @@ void ToolBar::Create( wxWindow *parent )
wxDefaultPosition,
wxDefaultSize,
wxNO_BORDER | wxTAB_TRAVERSAL,
- mTitle );
- SetLabel( mLabel );
+ GetTitle() );
+ wxPanel::SetLabel( GetLabel() );
// Go do the rest of the creation
ReCreateButtons();
@@ -262,10 +269,25 @@ void ToolBar::ReCreateButtons()
Layout();
}
+// The application preferences have changed, so update any elements that may
+// depend on them.
+void ToolBar::UpdatePrefs()
+{
+#if wxUSE_TOOLTIPS
+ // Change the tooltip of the grabber
+ mGrabber->SetToolTip( GetTitle() );
+#endif
+
+ return;
+}
+
+//
+// Return the pointer to the ToolBock where this bar lives
+//
ToolDock *ToolBar::GetDock()
{
return mDock;
-};
+}
//
// Toggle the docked/floating state
@@ -392,10 +414,15 @@ void ToolBar::MakeRecoloredImage( teBmps eBmpOut, teBmps eBmpIn )
{
wxImage * pPattern;
wxImage * pSrc = &theTheme.Image( eBmpIn );
- wxColour newColour = wxSystemSettings::GetColour(wxSYS_COLOUR_3DFACE);
- wxColour baseColour = wxColour(204, 204, 204);
+#if defined( __WXGTK__ )
+ wxColour newColour = wxSystemSettings::GetColour( wxSYS_COLOUR_BACKGROUND );
+#else
+ wxColour newColour = wxSystemSettings::GetColour( wxSYS_COLOUR_3DFACE );
+#endif
+ wxColour baseColour = wxColour( 204, 204, 204 );
+
+ pPattern = ChangeImageColour( pSrc, baseColour, newColour );
- pPattern = ChangeImageColour( pSrc, baseColour, newColour );
theTheme.ReplaceImage( eBmpOut, pPattern);
delete pPattern;
}
@@ -498,12 +525,14 @@ void ToolBar::OnPaint( wxPaintEvent & event )
// Start with a clean background
//
- // Under GTK, clearing will cause the background to be white and
- // rather than setting a background color, just bypass the clear.
-#if !defined(__WXGTK__)
- dc.Clear();
+ // Under GTK, we specifically set the toolbar background to the background
+ // colour in the system theme.
+#if defined( __WXGTK__ )
+ dc.SetBackground( wxBrush( wxSystemSettings::GetColour( wxSYS_COLOUR_BACKGROUND ) ) );
#endif
+ dc.Clear();
+
// EXPERIMENTAL_THEMING is set to not apply the gradient
// on wxMAC builds. on wxMAC we have the AQUA_THEME.
#ifdef USE_AQUA_THEME
@@ -540,7 +569,7 @@ void ToolBar::OnPaint( wxPaintEvent & event )
}
wxPen Pen( col );
dc.SetPen(Pen );
- dc.DrawLine( 0, y, sz.x, y );
+ AColor::Line(dc, 0, y, sz.x, y );
}
}
#endif
@@ -551,8 +580,8 @@ void ToolBar::OnPaint( wxPaintEvent & event )
wxSize sz = GetSize();
AColor::Dark( &dc, false );
- dc.DrawLine( sz.x - 4, 0, sz.x - 4, sz.y );
- dc.DrawLine( sz.x - 1, 0, sz.x - 1, sz.y );
+ AColor::Line(dc, sz.x - 4, 0, sz.x - 4, sz.y );
+ AColor::Line(dc, sz.x - 1, 0, sz.x - 1, sz.y );
}
}
diff --git a/src/toolbars/ToolBar.h b/src/toolbars/ToolBar.h
index a687e0c..e7d943a 100644
--- a/src/toolbars/ToolBar.h
+++ b/src/toolbars/ToolBar.h
@@ -81,16 +81,19 @@ class ToolBar:public wxPanel
virtual void Create(wxWindow *parent);
virtual void EnableDisableButtons() = 0;
virtual void ReCreateButtons();
-
- void SetDocked(ToolDock *dock, bool pushed);
+ virtual void UpdatePrefs();
int GetType();
wxString GetTitle();
wxString GetLabel();
wxString GetSection();
ToolDock *GetDock();
+
+ void SetLabel(const wxString & label);
void SetDock( ToolDock *dock);
+ void SetDocked(ToolDock *dock, bool pushed);
+
bool Expose(bool show = true);
bool IsResizable();
@@ -167,7 +170,6 @@ class ToolBar:public wxPanel
wxPoint mResizeStart;
- wxString mTitle;
wxString mLabel;
wxString mSection;
int mType;
diff --git a/src/toolbars/ToolDock.cpp b/src/toolbars/ToolDock.cpp
index d6312b3..41aec30 100644
--- a/src/toolbars/ToolDock.cpp
+++ b/src/toolbars/ToolDock.cpp
@@ -32,6 +32,7 @@
#include <wx/gdicmn.h>
#include <wx/intl.h>
#include <wx/panel.h>
+#include <wx/settings.h>
#include <wx/window.h>
#endif /* */
@@ -515,11 +516,12 @@ void ToolDock::OnPaint( wxPaintEvent & event )
// Start with a clean background
//
- // Under GTK, clearing will cause the background to be white and
- // rather than setting a background color, just bypass the clear.
-#if !defined(__WXGTK__)
- dc.Clear();
+ // Under GTK, we specifically set the toolbar background to the background
+ // colour in the system theme.
+#if defined( __WXGTK__ )
+ dc.SetBackground( wxBrush( wxSystemSettings::GetColour( wxSYS_COLOUR_BACKGROUND ) ) );
#endif
+ dc.Clear();
// Set the gap color
AColor::Dark( &dc, false );
@@ -527,8 +529,8 @@ void ToolDock::OnPaint( wxPaintEvent & event )
// Draw the initial horizontal and vertical gaps
wxSize sz = GetClientSize();
- dc.DrawLine( 0, 0, sz.GetWidth(), 0 );
- dc.DrawLine( 0, 0, 0, sz.GetHeight() );
+ AColor::Line(dc, 0, 0, sz.GetWidth(), 0 );
+ AColor::Line(dc, 0, 0, 0, sz.GetHeight() );
// Draw the gap between each bar
int ndx, cnt = mDockedBars.GetCount();
@@ -536,10 +538,11 @@ void ToolDock::OnPaint( wxPaintEvent & event )
{
wxRect r = ( (ToolBar *)mDockedBars[ ndx ] )->GetRect();
- dc.DrawLine( r.GetLeft(),
- r.GetBottom() + 1,
- sz.GetWidth(),
- r.GetBottom() + 1 );
+ AColor::Line( dc,
+ r.GetLeft(),
+ r.GetBottom() + 1,
+ sz.GetWidth(),
+ r.GetBottom() + 1 );
// For all bars but the last...
if( ndx < cnt - 1 )
@@ -548,7 +551,8 @@ void ToolDock::OnPaint( wxPaintEvent & event )
// horizontal gap line
if( r.y == ( (ToolBar *)mDockedBars[ ndx + 1 ] )->GetRect().y )
{
- dc.DrawLine( r.GetRight() + 1,
+ AColor::Line(dc,
+ r.GetRight() + 1,
r.GetTop(),
r.GetRight() + 1,
r.GetBottom() + 1 );
diff --git a/src/toolbars/ToolManager.cpp b/src/toolbars/ToolManager.cpp
index 1e3e86e..09105fc 100644
--- a/src/toolbars/ToolManager.cpp
+++ b/src/toolbars/ToolManager.cpp
@@ -101,8 +101,15 @@ class ToolFrame:public wxFrame
#if defined(__WXMAC__)
border = 0;
- // WXMAC doesn't support wxFRAME_FLOAT_ON_PARENT, so we do
- SetWindowClass( (WindowRef) MacGetWindowRef(), kFloatingWindowClass );
+ // WXMAC doesn't support wxFRAME_FLOAT_ON_PARENT, so we do
+ //
+ // LL: I've commented this out because if you have, for instance, the meter
+ // toolbar undocked and large and then you open a dialog like an effect,
+ // the dialog may appear behind the dialog and you can't move either one.
+ //
+ // However, I'm leaving it here because I don't remember why I'd included
+ // it in the first place.
+// SetWindowClass((WindowRef)d.MacGetWindowRef(), kFloatingWindowClass);
#endif
// Save parameters
@@ -189,10 +196,10 @@ class ToolFrame:public wxFrame
r.width = sizerW + 2;
r.height = sizerW + 2;
- dc.DrawLine( r.GetLeft(), r.GetBottom(), r.GetRight(), r.GetTop() );
- dc.DrawLine( r.GetLeft() + 3, r.GetBottom(), r.GetRight(), r.GetTop() + 3 );
- dc.DrawLine( r.GetLeft() + 6, r.GetBottom(), r.GetRight(), r.GetTop() + 6 );
- dc.DrawLine( r.GetLeft() + 9, r.GetBottom(), r.GetRight(), r.GetTop() + 9 );
+ AColor::Line(dc, r.GetLeft(), r.GetBottom(), r.GetRight(), r.GetTop() );
+ AColor::Line(dc, r.GetLeft() + 3, r.GetBottom(), r.GetRight(), r.GetTop() + 3 );
+ AColor::Line(dc, r.GetLeft() + 6, r.GetBottom(), r.GetRight(), r.GetTop() + 6 );
+ AColor::Line(dc, r.GetLeft() + 9, r.GetBottom(), r.GetRight(), r.GetTop() + 9 );
}
}
@@ -548,7 +555,7 @@ void ToolManager::ReadConfig()
ToolBar *bar = mBars[ ndx ];
// Change to the bar subkey
- gPrefs->SetPath( bar->GetLabel() );
+ gPrefs->SetPath( bar->GetSection() );
// Read in all the settings
gPrefs->Read( wxT("Dock"), &dock, ndx == SelectionBarID ? BotDockID : TopDockID );
@@ -703,7 +710,7 @@ void ToolManager::WriteConfig()
ToolBar *bar = mBars[ ndx ];
// Change to the bar subkey
- gPrefs->SetPath( bar->GetLabel() );
+ gPrefs->SetPath( bar->GetSection() );
// Search both docks for toolbar order
int to = mTopDock->GetOrder( bar );
@@ -847,6 +854,21 @@ void ToolManager::LayoutToolBars()
}
//
+// Tell the toolbars that preferences have been updated
+//
+void ToolManager::UpdatePrefs()
+{
+ for( int ndx = 0; ndx < ToolBarCount; ndx++ )
+ {
+ ToolBar *bar = mBars[ ndx ];
+ if( bar )
+ {
+ bar->UpdatePrefs();
+ }
+ }
+}
+
+//
// Handle toolbar dragging
//
void ToolManager::OnMouse( wxMouseEvent & event )
diff --git a/src/toolbars/ToolManager.h b/src/toolbars/ToolManager.h
index a0572d2..ff1b288 100644
--- a/src/toolbars/ToolManager.h
+++ b/src/toolbars/ToolManager.h
@@ -50,6 +50,7 @@ class ToolManager:public wxEvtHandler
~ToolManager();
void LayoutToolBars();
+ void UpdatePrefs();
bool IsDocked( int type );
diff --git a/src/toolbars/ToolsToolBar.cpp b/src/toolbars/ToolsToolBar.cpp
index 70c5219..994ff1a 100644
--- a/src/toolbars/ToolsToolBar.cpp
+++ b/src/toolbars/ToolsToolBar.cpp
@@ -156,6 +156,10 @@ void ToolsToolBar::RegenerateToolsTooltips()
return;
}
+void ToolsToolBar::UpdatePrefs()
+{
+ RegenerateToolsTooltips();
+}
AButton * ToolsToolBar::MakeTool( teBmps eTool,
int id, const wxChar *label)
diff --git a/src/toolbars/TranscriptionToolBar.cpp b/src/toolbars/TranscriptionToolBar.cpp
index 23b75af..61cfeec 100644
--- a/src/toolbars/TranscriptionToolBar.cpp
+++ b/src/toolbars/TranscriptionToolBar.cpp
@@ -84,6 +84,7 @@ TranscriptionToolBar::TranscriptionToolBar()
: ToolBar(TranscriptionBarID, _("Transcription"), wxT("Transcription"))
{
mPlaySpeed = 1.0;
+ mTimeTrack = NULL;
#ifdef EXPERIMENTAL_VOICE_DETECTION
mVk = new VoiceKey();
#endif
@@ -94,6 +95,9 @@ TranscriptionToolBar::~TranscriptionToolBar()
#ifdef EXPERIMENTAL_VOICE_DETECTION
delete mVk;
#endif
+ if (mTimeTrack) {
+ delete mTimeTrack;
+ }
}
void TranscriptionToolBar::Create(wxWindow * parent)
@@ -135,8 +139,7 @@ void TranscriptionToolBar::Create(wxWindow * parent)
AButton *TranscriptionToolBar::AddButton(
teBmps eFore, teBmps eDisabled,
int id,
- const wxChar *label,
- const wxChar *tip)
+ const wxChar *label)
{
AButton *&r = mButtons[id];
@@ -152,10 +155,6 @@ AButton *TranscriptionToolBar::AddButton(
// JKC: Unlike ControlToolBar, does not have a focus rect. Shouldn't it?
// r->SetFocusRect( r->GetRect().Deflate( 4, 4 ) );
-#if wxUSE_TOOLTIPS
- r->SetToolTip(tip);
-#endif
-
Add( r, 0, wxALIGN_CENTER );
return r;
@@ -168,8 +167,7 @@ void TranscriptionToolBar::Populate()
MakeButtonBackgroundsSmall();
AddButton(bmpPlay, bmpPlayDisabled, TTB_PlaySpeed,
- _("Play at selected speed"),
- _("Play-at-speed"));
+ _("Play at selected speed"));
//Add a slider that controls the speed of playback.
const int SliderWidth=100;
@@ -181,6 +179,7 @@ void TranscriptionToolBar::Populate()
SPEED_SLIDER);
mPlaySpeedSlider->Set(1.0);
mPlaySpeedSlider->SetLabel(_("Playback Speed"));
+ mPlaySpeedSlider->SetScroll(0.1f, 0.5f);
Add( mPlaySpeedSlider, 0, wxALIGN_CENTER );
mPlaySpeedSlider->Connect(wxEVT_SET_FOCUS,
wxFocusEventHandler(TranscriptionToolBar::OnFocus),
@@ -193,32 +192,23 @@ void TranscriptionToolBar::Populate()
#ifdef EXPERIMENTAL_VOICE_DETECTION
AddButton(bmpTnStartOn, bmpTnStartOnDisabled, TTB_StartOn,
- _("Adjust left selection to next onset"),
- _("Left-to-On"));
+ _("Adjust left selection to next onset"));
AddButton(bmpTnEndOn, bmpTnEndOnDisabled, TTB_EndOn,
- _("Adjust right selection to previous offset"),
- _("Right-to-Off"));
+ _("Adjust right selection to previous offset"));
AddButton(bmpTnStartOff, bmpTnStartOffDisabled, TTB_StartOff,
- _("Adjust left selection to next offset"),
- _("Left-to-Off"));
+ _("Adjust left selection to next offset"));
AddButton(bmpTnEndOff, bmpTnEndOffDisabled, TTB_EndOff,
- _("Adjust right selection to previous onset"),
- _("Right-to-On"));
+ _("Adjust right selection to previous onset"));
AddButton(bmpTnSelectSound, bmpTnSelectSoundDisabled, TTB_SelectSound,
- _("Select region of sound around cursor"),
- _("Select-Sound"));
+ _("Select region of sound around cursor"));
AddButton(bmpTnSelectSilence, bmpTnSelectSilenceDisabled, TTB_SelectSilence,
- _("Select region of silence around cursor"),
- _("Select-Silence"));
+ _("Select region of silence around cursor"));
AddButton(bmpTnAutomateSelection, bmpTnAutomateSelectionDisabled, TTB_AutomateSelection,
- _("Automatically make labels from words"),
- _("Make Labels"));
+ _("Automatically make labels from words"));
AddButton(bmpTnMakeTag, bmpTnMakeTagDisabled, TTB_MakeLabel,
- _("Add label at selection"),
- _("Add Label"));
+ _("Add label at selection"));
AddButton(bmpTnCalibrate, bmpTnCalibrateDisabled, TTB_Calibrate,
- _("Calibrate voicekey"),
- _("Calibrate"));
+ _("Calibrate voicekey"));
mSensitivitySlider = new ASlider(this,
TTB_SensitivitySlider,
@@ -251,6 +241,42 @@ void TranscriptionToolBar::Populate()
// Add a little space
Add(2, -1);
+
+ UpdatePrefs();
+}
+
+void TranscriptionToolBar::UpdatePrefs()
+{
+ RegenerateTooltips();
+
+ // Set label to pull in language change
+ SetLabel(_("Transcription"));
+
+ // Give base class a chance
+ ToolBar::UpdatePrefs();
+}
+
+void TranscriptionToolBar::RegenerateTooltips()
+{
+#if wxUSE_TOOLTIPS
+ mButtons[TTB_PlaySpeed]->SetToolTip(_("Play-at-speed"));
+ mPlaySpeedSlider->SetToolTip(_("Playback Speed"));
+
+#ifdef EXPERIMENTAL_VOICE_DETECTION
+ mButtons[TTB_StartOn]->SetToolTip(_("Left-to-On"));
+ mButtons[TTB_EndOn]->SetToolTip( _("Right-to-Off"));
+ mButtons[TTB_StartOff]->SetToolTip( _("Left-to-Off"));
+ mButtons[TTB_EndOff]->SetToolTip( _("Right-to-On"));
+ mButtons[TTB_SelectSound]->SetToolTip( _("Select-Sound"));
+ mButtons[TTB_SelectSilence]->SetToolTip( _("Select-Silence"));
+ mButtons[TTB_AutomateSelection]->SetToolTip( _("Make Labels"));
+ mButtons[TTB_MakeLabel]->SetToolTip( _("Add Label"));
+ mButtons[TTB_Calibrate]->SetToolTip( _("Calibrate"));
+
+ mSensitivitySlider->SetToolTip(_("Sensitivity"));
+ mKeyTypeChoice->SetToolTip(_("Key type"));
+#endif
+#endif
}
void TranscriptionToolBar::OnFocus(wxFocusEvent &event)
@@ -362,6 +388,14 @@ void TranscriptionToolBar::OnPlaySpeed(wxCommandEvent & event)
return;
}
+ // Create a TimeTrack if we haven't done so already
+ if (!mTimeTrack) {
+ mTimeTrack = new TimeTrack(p->GetDirManager());
+ if (!mTimeTrack) {
+ return;
+ }
+ }
+
// Pop up the button
SetButton(false, mButtons[TTB_PlaySpeed]);
@@ -370,15 +404,9 @@ void TranscriptionToolBar::OnPlaySpeed(wxCommandEvent & event)
p->GetControlToolBar()->StopPlaying();
}
- // Can't do anything without a time track
- // TODO: Yikes - Bad coding style.
- // A new time track will be created each time we
- // play-at-speed.
- TimeTrack *tt = new TimeTrack(p->GetDirManager());
-
// Set the speed range
- tt->SetRangeUpper((long int)mPlaySpeed);
- tt->SetRangeLower((long int)mPlaySpeed);
+ mTimeTrack->SetRangeUpper((long int)mPlaySpeed);
+ mTimeTrack->SetRangeLower((long int)mPlaySpeed);
// Get the current play region
double playRegionStart, playRegionEnd;
@@ -392,7 +420,7 @@ void TranscriptionToolBar::OnPlaySpeed(wxCommandEvent & event)
playRegionEnd,
false,
false,
- tt);
+ mTimeTrack);
}
}
@@ -840,6 +868,34 @@ void TranscriptionToolBar::SetKeyType(wxCommandEvent & event)
}
+void TranscriptionToolBar::PlayAtSpeed()
+{
+ wxCommandEvent e;
+ OnPlaySpeed(e);
+}
+
+void TranscriptionToolBar::ShowPlaySpeedDialog()
+{
+ mPlaySpeedSlider->ShowDialog();
+ mPlaySpeedSlider->Refresh();
+ wxCommandEvent e;
+ OnSpeedSlider(e);
+}
+
+void TranscriptionToolBar::AdjustPlaySpeed(float adj)
+{
+ if (adj < 0) {
+ mPlaySpeedSlider->Decrease(-adj);
+ }
+ else {
+ mPlaySpeedSlider->Increase(adj);
+ }
+ wxCommandEvent e;
+ OnSpeedSlider(e);
+}
+
+
+
// Indentation settings for Vim and Emacs and unique identifier for Arch, a
// version control system. Please do not modify past this point.
//
diff --git a/src/toolbars/TranscriptionToolBar.h b/src/toolbars/TranscriptionToolBar.h
index 4572c2c..f98a049 100644
--- a/src/toolbars/TranscriptionToolBar.h
+++ b/src/toolbars/TranscriptionToolBar.h
@@ -84,6 +84,7 @@ class TranscriptionToolBar:public ToolBar {
virtual void Populate();
virtual void Repaint(wxDC *dc) {};
virtual void EnableDisableButtons();
+ virtual void UpdatePrefs();
void OnFocus(wxFocusEvent &event);
void OnCaptureKey(wxCommandEvent &event);
@@ -91,15 +92,20 @@ class TranscriptionToolBar:public ToolBar {
virtual double GetSensitivity();
virtual void SetKeyType(wxCommandEvent & event);
+ void PlayAtSpeed();
+ void ShowPlaySpeedDialog();
+ void AdjustPlaySpeed(float adj);
+
private:
void InitializeTranscriptionToolBar();
AButton *AddButton(
teBmps eFore, teBmps eDisabled,
int id,
- const wxChar *label, const wxChar *tip);
+ const wxChar *label);
void GetSamples(WaveTrack *t, sampleCount *s0, sampleCount *slen);
void SetButton(bool newstate, AButton *button);
+ void RegenerateTooltips();
AButton *mButtons[TTBNumButtons];
wxImage *upImage;
diff --git a/src/widgets/AButton.cpp b/src/widgets/AButton.cpp
index c2e69ca..24df395 100644
--- a/src/widgets/AButton.cpp
+++ b/src/widgets/AButton.cpp
@@ -261,7 +261,6 @@ void AButton::OnMouseEvent(wxMouseEvent & event)
if (mEnabled && event.IsButton()) {
if (event.ButtonIsDown(wxMOUSE_BTN_ANY)) {
- SetFocus();
mIsClicking = true;
CaptureMouse();
}
@@ -272,8 +271,6 @@ void AButton::OnMouseEvent(wxMouseEvent & event)
ReleaseMouse();
if (mCursorIsInWindow && (mToggle || !mButtonIsDown)) {
- SetFocus();
-
if (mToggle)
mButtonIsDown = !mButtonIsDown;
else
diff --git a/src/widgets/AButton.h b/src/widgets/AButton.h
index f6e26df..e6fbe96 100644
--- a/src/widgets/AButton.h
+++ b/src/widgets/AButton.h
@@ -13,9 +13,6 @@
#define __AUDACITY_BUTTON__
#if wxUSE_ACCESSIBILITY
-#if defined(__WXMSW__)
-#include <oleacc.h>
-#endif
#include <wx/access.h>
#endif
diff --git a/src/widgets/ASlider.cpp b/src/widgets/ASlider.cpp
index 2538fb3..34076f7 100644
--- a/src/widgets/ASlider.cpp
+++ b/src/widgets/ASlider.cpp
@@ -19,7 +19,7 @@ the thumb.
\class LWSlider
\brief Lightweight version of ASlider. In other words it does not
-have a window permanaently associated with it.
+have a window permanently associated with it.
*//****************************************************************//**
@@ -89,6 +89,9 @@ of an LWSlider or ASlider.
//#include "../../images/SliderThumb.xpm"
//#include "../../images/SliderThumbAlpha.xpm"
+#include "../../images/SliderThumb_Vertical.xpm"
+
+
#if defined __WXMSW__
const int sliderFontSize = 10;
#else
@@ -263,35 +266,36 @@ SliderDialog::SliderDialog(wxWindow * parent, wxWindowID id,
wxPoint position,
wxSize size,
int style,
- float value):
+ float value,
+ float line,
+ float page):
wxDialog(parent,id,title,position),
mStyle(style)
{
- //Use a vertical sizer
- wxBoxSizer * vs = new wxBoxSizer(wxVERTICAL);
-
- //Add the text
- mTextCtrl = new wxTextCtrl(this,
- SLIDER_DIALOG_TEXTCTRL,
- wxT(""),
- wxDefaultPosition,
- wxDefaultSize,
- 0,
- wxTextValidator(wxFILTER_NUMERIC));
- vs->Add(mTextCtrl,0,wxEXPAND|wxALL,5);
-
- //Add a slider
- mSlider = new ASlider(this,wxID_ANY,title,wxDefaultPosition,size,style,false);
- vs->Add(mSlider, 0, wxEXPAND | wxLEFT | wxRIGHT, 5 );
+ ShuttleGui S(this, eIsCreating);
- //Create buttons
- vs->Add(CreateStdButtonSizer(this, eCancelButton|eOkButton), 0, wxEXPAND);
-
- //lay it out
- SetSizerAndFit(vs);
+ S.StartVerticalLay();
+ {
+ mTextCtrl = S.AddTextBox(wxEmptyString,
+ wxEmptyString,
+ 15);
+ mTextCtrl->SetValidator(wxTextValidator(wxFILTER_NUMERIC));
+
+ mSlider = new ASlider(this,
+ wxID_ANY,
+ title,
+ wxDefaultPosition,
+ size,
+ style,
+ false);
+ mSlider->SetScroll(line, page);
+ S.AddWindow(mSlider, wxEXPAND);
+ }
+ S.EndVerticalLay();
+
+ S.AddStandardButtons(eOkButton | eCancelButton);
- mTextCtrl->SetSelection(-1,-1);
- mTextCtrl->SetFocus();
+ Fit();
mSlider->Set(value);
}
@@ -303,6 +307,7 @@ SliderDialog::~SliderDialog()
bool SliderDialog::TransferDataToWindow()
{
mTextCtrl->SetValue(wxString::Format(wxT("%g"), mSlider->Get(false)));
+ mTextCtrl->SetSelection(-1, -1);
return true;
}
@@ -337,20 +342,20 @@ float SliderDialog::Get()
// Construct customizable slider
LWSlider::LWSlider(wxWindow * parent,
- wxString name,
- const wxPoint &pos,
- const wxSize &size,
- float minValue,
- float maxValue,
- float stepValue,
- bool canUseShift,
- int style,
- bool heavyweight /* = false */,
- bool popup /* = true */
- )
+ wxString name,
+ const wxPoint &pos,
+ const wxSize &size,
+ float minValue,
+ float maxValue,
+ float stepValue,
+ bool canUseShift,
+ int style,
+ bool heavyweight /* = false */,
+ bool popup /* = true */,
+ int orientation /* = wxHORIZONTAL */) // wxHORIZONTAL or wxVERTICAL. wxVERTICAL is currently only for DB_SLIDER.
{
Init(parent, name, pos, size, minValue, maxValue,
- stepValue, canUseShift, style, heavyweight, popup, 1.0);
+ stepValue, canUseShift, style, heavyweight, popup, 1.0, orientation);
}
// Construct predefined slider
@@ -360,7 +365,8 @@ LWSlider::LWSlider(wxWindow *parent,
const wxSize &size,
int style,
bool heavyweight /* = false */,
- bool popup /* = true */)
+ bool popup /* = true */,
+ int orientation /* = wxHORIZONTAL */) // wxHORIZONTAL or wxVERTICAL. wxVERTICAL is currently only for DB_SLIDER.
{
wxString leftLabel, rightLabel;
float minValue, maxValue, stepValue;
@@ -372,10 +378,14 @@ LWSlider::LWSlider(wxWindow *parent,
minValue = -1.0f;
maxValue = +1.0f;
stepValue = 0.1f;
+ orientation = wxHORIZONTAL; //v Vertical PAN_SLIDER currently not handled, forced to horizontal.
break;
case DB_SLIDER:
minValue = -36.0f;
- maxValue = 36.0f;
+ if (orientation == wxHORIZONTAL)
+ maxValue = 36.0f;
+ else
+ maxValue = 6.0f; // for MixerBoard
stepValue = 1.0f;
speed = 0.5;
break;
@@ -398,7 +408,7 @@ LWSlider::LWSlider(wxWindow *parent,
}
Init(parent, name, pos, size, minValue, maxValue, stepValue,
- true, style, heavyweight, popup, speed);
+ true, style, heavyweight, popup, speed, orientation);
}
void LWSlider::Init(wxWindow * parent,
@@ -412,11 +422,12 @@ void LWSlider::Init(wxWindow * parent,
int style,
bool heavyweight,
bool popup,
- float speed
- )
+ float speed,
+ int orientation /* = wxHORIZONTAL */) // wxHORIZONTAL or wxVERTICAL. wxVERTICAL is currently only for DB_SLIDER.
{
mName = name;
mStyle = style;
+ mOrientation = orientation;
mIsDragging = false;
mWidth = size.x;
mHeight = size.y;
@@ -430,17 +441,24 @@ void LWSlider::Init(wxWindow * parent,
mStepValue = stepValue;
mCanUseShift = canUseShift;
mCurrentValue = 0.0f;
+ mDefaultValue = 0.0f;
+ mDefaultShortcut = false;
mBitmap = NULL;
+ mScrollLine = 1.0f;
+ mScrollPage = 5.0f;
- // Get the Thumb bitmap. Generic version fo rnow...
-//#ifdef USE_AQUA
-// mThumbBitmap = &theTheme.Bitmap( bmpMacSliderThumb );
-//#else
- mThumbBitmap = &theTheme.Bitmap( bmpSliderThumb );
-//#endif
+ // Get the Thumb bitmap. Generic version for now...
+ if (mOrientation == wxHORIZONTAL)
+ mThumbBitmap = &theTheme.Bitmap( bmpSliderThumb );
+ else
+ //vvvvv \todo Convert this to an image in AllThemeResources, as bmpSliderThumb.
+ {
+ wxImage thumbImage(wxBitmap(SliderThumb_Vertical).ConvertToImage());
+ mThumbBitmap = new wxBitmap(thumbImage);
+ }
-// mThumbBitmap = new wxBitmap( SliderThumb );
-// mThumbBitmap->SetMask( new wxMask( wxBitmap( SliderThumbAlpha ), *wxBLACK ) );
+ // mThumbBitmap = new wxBitmap( SliderThumb );
+ // mThumbBitmap->SetMask( new wxMask( wxBitmap( SliderThumbAlpha ), *wxBLACK ) );
Draw();
@@ -452,7 +470,9 @@ void LWSlider::Init(wxWindow * parent,
LWSlider::~LWSlider()
{
delete mBitmap;
-// delete mThumbBitmap;
+ if (mOrientation == wxVERTICAL && mThumbBitmap) {
+ delete mThumbBitmap;
+ }
delete mPopWin;
}
@@ -466,6 +486,29 @@ void LWSlider::SetId(wxWindowID id)
mID = id;
}
+void LWSlider::SetDefaultValue(float value)
+{
+ SetDefaultShortcut(true);
+ mDefaultValue = value;
+}
+
+void LWSlider::SetDefaultShortcut(bool value)
+{
+ mDefaultShortcut = value;
+}
+
+void LWSlider::GetScroll(float & line, float & page)
+{
+ line = mScrollLine;
+ page = mScrollPage;
+}
+
+void LWSlider::SetScroll(float line, float page)
+{
+ mScrollLine = line;
+ mScrollPage = page;
+}
+
wxWindow* LWSlider::GetToolTipParent() const
{
wxWindow *top = mParent;
@@ -492,7 +535,11 @@ void LWSlider::CreatePopWin()
void LWSlider::SetPopWinPosition()
{
- wxPoint pt(mWidth/2 + mLeft, mHeight + mTop + 1);
+ wxPoint pt;
+ if (mOrientation == wxHORIZONTAL)
+ pt = wxPoint(mWidth/2 + mLeft, mHeight + mTop + 1);
+ else
+ pt = wxPoint(mWidth + mLeft + 1, mHeight/2 + mTop);
pt = mParent->ClientToScreen(pt);
#if !defined(__WXMAC__)
@@ -521,7 +568,11 @@ void LWSlider::OnPaint(wxDC &dc, bool selected)
{
//thumbPos should be in pixels
int thumbPos = ValueToPosition(mCurrentValue);
- int thumbY = mCenterY - (mThumbHeight/2);
+ int thumbOrtho; // position in axis orthogonal to mOrientation
+ if (mOrientation == wxHORIZONTAL)
+ thumbOrtho = mCenterY - (mThumbHeight/2);
+ else
+ thumbOrtho = mCenterX - (mThumbWidth/2);
#if defined(__WXMSW__)
if( mHW )
@@ -531,7 +582,10 @@ void LWSlider::OnPaint(wxDC &dc, bool selected)
#endif
dc.DrawBitmap(*mBitmap, mLeft, mTop, true);
- dc.DrawBitmap(*mThumbBitmap, mLeft+thumbPos, mTop+thumbY, true);
+ if (mOrientation == wxHORIZONTAL)
+ dc.DrawBitmap(*mThumbBitmap, mLeft+thumbPos, mTop+thumbOrtho, true);
+ else
+ dc.DrawBitmap(*mThumbBitmap, mLeft+thumbOrtho, mTop+thumbPos, true);
if (mPopWin)
mPopWin->Refresh();
@@ -555,13 +609,26 @@ void LWSlider::Draw()
mBitmap = NULL;
}
- mCenterY = mHeight - 9;
+ if (mOrientation == wxHORIZONTAL)
+ mCenterY = mHeight - 9;
+ else
+ mCenterX = mWidth - 9;
+
mThumbWidth = mThumbBitmap->GetWidth();
mThumbHeight = mThumbBitmap->GetHeight();
- mLeftX = mThumbWidth/2;
- mRightX = mWidth - mThumbWidth/2 - 1;
- mWidthX = mRightX - mLeftX;
+ if (mOrientation == wxHORIZONTAL)
+ {
+ mLeftX = mThumbWidth/2;
+ mRightX = mWidth - mThumbWidth/2 - 1;
+ mWidthX = mRightX - mLeftX;
+ }
+ else
+ {
+ mTopY = mThumbWidth/2;
+ mBottomY = mHeight - mThumbWidth/2 - 1;
+ mHeightY = mBottomY - mTopY;
+ }
wxMemoryDC *dc = new wxMemoryDC();
mBitmap = new wxBitmap(mWidth, mHeight);
@@ -583,11 +650,13 @@ void LWSlider::Draw()
dc->Clear();
AColor::Dark(dc, false);
- dc->DrawLine(mLeftX, mCenterY+1, mRightX+2, mCenterY+1);
+ AColor::Line(*dc, mLeftX, mCenterY+1, mRightX+2, mCenterY+1);
// Draw +/- or L/R first. We need to draw these before the tick marks.
if (mStyle == PAN_SLIDER)
{
+ //v Vertical PAN_SLIDER currently not handled, forced to horizontal.
+
// sliderFontSize is for the tooltip.
// we need something smaller here...
wxFont labelFont(sliderFontSize-3, wxSWISS, wxNORMAL, wxNORMAL);
@@ -622,24 +691,49 @@ void LWSlider::Draw()
#else
dc->SetPen(*wxBLACK_PEN);
#endif
- dc->DrawLine(mLeftX, mCenterY-10, mLeftX+5, mCenterY-10);
- dc->DrawLine(mRightX-5, mCenterY-10, mRightX, mCenterY-10);
- dc->DrawLine(mRightX-3, mCenterY-12, mRightX-3, mCenterY-7);
+ if (mOrientation == wxHORIZONTAL)
+ {
+ AColor::Line(*dc, mLeftX, mCenterY-10, mLeftX+4, mCenterY-10);
+ AColor::Line(*dc, mRightX-5, mCenterY-10, mRightX-1, mCenterY-10);
+ AColor::Line(*dc, mRightX-3, mCenterY-12, mRightX-3, mCenterY-8);
+ }
+ else
+ {
+ AColor::Line(*dc, mCenterX-12, mBottomY-3, mCenterX-8, mBottomY-3);
+ AColor::Line(*dc, mCenterX-12, mTopY+3, mCenterX-8, mTopY+3);
+ AColor::Line(*dc, mCenterX-10, mTopY, mCenterX-10, mTopY+5);
+ }
}
-
+ // tick marks
int divs = 10;
- double upp = divs / (double)(mWidthX-1);
- double d = 0;
+ double upp;
+ if (mOrientation == wxHORIZONTAL)
+ upp = divs / (double)(mWidthX-1);
+ else
+ {
+ if (mStyle == DB_SLIDER)
+ divs = (int)(mMaxValue - mMinValue);
+ upp = divs / (double)(mHeightY-1);
+ }
+ double d = 0.0;
int int_d = -1;
- for(int p=0; p<=mWidthX; p++) {
+ const int kMax = (mOrientation == wxHORIZONTAL) ? mWidthX : mHeightY;
+ for(int p = 0; p <= kMax; p++) {
if (((int)d) > int_d) {
int_d = (int)d;
- int ht = (int_d==0 || int_d==divs? 5: 3);
+ int tickLength = ((int_d == 0) || (int_d == divs)) ? 5: 3; // longer ticks at extremes
AColor::Light(dc, false);
- dc->DrawLine(mLeftX+p, mCenterY-ht, mLeftX+p, mCenterY);
+ if (mOrientation == wxHORIZONTAL)
+ AColor::Line(*dc, mLeftX+p, mCenterY-tickLength, mLeftX+p, mCenterY-1); // ticks above
+ else
+ AColor::Line(*dc, mCenterX-tickLength, mTopY+p, mCenterX-1, mTopY+p); // ticks at left
+
AColor::Dark(dc, false);
- dc->DrawLine(mLeftX+p+1, mCenterY-ht+1, mLeftX+p+1, mCenterY);
+ if (mOrientation == wxHORIZONTAL)
+ AColor::Line(*dc, mLeftX+p+1, mCenterY-tickLength+1, mLeftX+p+1, mCenterY-1); // ticks above
+ else
+ AColor::Line(*dc, mCenterX-tickLength+1, mTopY+p+1, mCenterX-1, mTopY+p+1); // ticks at left
}
d += upp;
}
@@ -699,23 +793,32 @@ bool LWSlider::ShowDialog()
return DoShowDialog( mParent->ClientToScreen(wxPoint( mLeft, mTop ) ) );
}
+bool LWSlider::ShowDialog(wxPoint pos)
+{
+ return DoShowDialog( pos );
+}
+
bool LWSlider::DoShowDialog(wxPoint pos)
{
float value;
bool changed = false;
- SliderDialog * dialog =
- new SliderDialog( mParent,
- wxID_ANY,
- mName,
- pos,
- wxSize( mWidth, mHeight ),
- mStyle,
- Get());
+ SliderDialog dlg( NULL,
+ wxID_ANY,
+ mName,
+ pos,
+ wxSize( mWidth, mHeight ),
+ mStyle,
+ Get(),
+ mScrollLine,
+ mScrollPage);
+ if (pos == wxPoint(-1, -1)) {
+ dlg.Center();
+ }
- if( dialog->ShowModal() == wxID_OK )
+ if( dlg.ShowModal() == wxID_OK )
{
- value = dialog->Get();
+ value = dlg.Get();
if( value != mCurrentValue )
{
mCurrentValue = value;
@@ -723,26 +826,23 @@ bool LWSlider::DoShowDialog(wxPoint pos)
}
}
- dialog->Destroy();
-
return changed;
}
void LWSlider::OnMouseEvent(wxMouseEvent & event)
{
- if( event.Entering() )
- {
-#if wxUSE_TOOLTIPS // Not available in wxX11
+ if (event.Entering()) {
+ #if wxUSE_TOOLTIPS // Not available in wxX11
// Display the tooltip in the status bar
- if( mParent->GetToolTip() )
+ if (mParent->GetToolTip())
{
wxString tip = mParent->GetToolTip()->GetTip();
GetActiveProject()->TP_DisplayStatusMessage(tip);
Refresh();
}
-#endif
+ #endif
}
- else if( event.Leaving() )
+ else if (event.Leaving())
{
GetActiveProject()->TP_DisplayStatusMessage(wxT(""));
Refresh();
@@ -752,8 +852,16 @@ void LWSlider::OnMouseEvent(wxMouseEvent & event)
// Figure out the thumb position
wxRect r;
- r.x = mLeft + ValueToPosition(mCurrentValue);
- r.y = mTop + (mCenterY - (mThumbHeight / 2));
+ if (mOrientation == wxHORIZONTAL)
+ {
+ r.x = mLeft + ValueToPosition(mCurrentValue);
+ r.y = mTop + (mCenterY - (mThumbHeight / 2));
+ }
+ else
+ {
+ r.x = mLeft + (mCenterX - (mThumbWidth / 2));
+ r.y = mTop + ValueToPosition(mCurrentValue);
+ }
r.width = mThumbWidth;
r.height = mThumbHeight;
@@ -768,7 +876,14 @@ void LWSlider::OnMouseEvent(wxMouseEvent & event)
}
else if( event.ButtonDown() )
{
- mParent->SetFocus();
+ if( mDefaultShortcut && event.CmdDown() )
+ {
+ mCurrentValue = mDefaultValue;
+ }
+
+ if( event.RightDown() ) {
+ mParent->SetFocus();
+ }
// Thumb clicked?
//
@@ -777,7 +892,7 @@ void LWSlider::OnMouseEvent(wxMouseEvent & event)
if( tolerantThumbRect.Contains( event.GetPosition() ) )
{
// Remember mouse position and current value
- mClickX = event.m_x;
+ mClickPos = (mOrientation == wxHORIZONTAL) ? event.m_x : event.m_y;
mClickValue = mCurrentValue;
mIsDragging = true;
@@ -785,10 +900,14 @@ void LWSlider::OnMouseEvent(wxMouseEvent & event)
// Clicked to set location?
else
{
- mCurrentValue = ClickPositionToValue(event.m_x, event.ShiftDown());
+ mCurrentValue =
+ ClickPositionToValue(
+ (mOrientation == wxHORIZONTAL) ? event.m_x : event.m_y,
+ event.ShiftDown());
}
mParent->CaptureMouse();
+ // wxSetCursor(wxCURSOR_BLANK);
FormatPopWin();
SetPopWinPosition();
@@ -801,19 +920,37 @@ void LWSlider::OnMouseEvent(wxMouseEvent & event)
mParent->ReleaseMouse();
mPopWin->Hide();
((TipPanel *)mPopWin)->SetPos(wxPoint(-1000, -1000));
+ // wxSetCursor(wxNullCursor);
}
- else if( event.Dragging() && mIsDragging )
+ else if (event.Dragging() && mIsDragging)
{
- if (event.m_y < (r.y - 2 * r.height) ||
- event.m_y > (r.y + 3 * r.height)) {
- // If the mouse y coordinate is relatively far from the slider,
- // snap back to the original position
- mCurrentValue = mClickValue;
+ if (mOrientation == wxHORIZONTAL)
+ {
+ if (event.m_y < (r.y - 2 * r.height) ||
+ event.m_y > (r.y + 3 * r.height)) {
+ // If the mouse y coordinate is relatively far from the slider,
+ // snap back to the original position
+ mCurrentValue = mClickValue;
+ }
+ else {
+ // Otherwise, move the slider to the right position based
+ // on the mouse position
+ mCurrentValue = DragPositionToValue(event.m_x, event.ShiftDown());
+ }
}
- else {
- // Otherwise, move the slider to the right position based
- // on the mouse position
- mCurrentValue = DragPositionToValue(event.m_x, event.ShiftDown());
+ else // (mOrientation == wxVERTICAL)
+ {
+ if (event.m_x < (r.x - 2 * r.width) ||
+ event.m_x > (r.x + 3 * r.width)) {
+ // If the mouse x coordinate is relatively far from the slider,
+ // snap back to the original position
+ mCurrentValue = mClickValue;
+ }
+ else {
+ // Otherwise, move the slider to the right position based
+ // on the mouse position
+ mCurrentValue = DragPositionToValue(event.m_y, event.ShiftDown());
+ }
}
}
else if( event.m_wheelRotation != 0 )
@@ -845,13 +982,13 @@ void LWSlider::OnKeyEvent(wxKeyEvent & event)
{
case WXK_RIGHT:
case WXK_UP:
- Increase( 1 );
+ Increase( mScrollLine );
SendUpdate( mCurrentValue );
break;
case WXK_LEFT:
case WXK_DOWN:
- Decrease( 1 );
+ Decrease( mScrollLine );
SendUpdate( mCurrentValue );
break;
@@ -859,7 +996,7 @@ void LWSlider::OnKeyEvent(wxKeyEvent & event)
#if !wxCHECK_VERSION(2,7,0)
case WXK_PRIOR:
#endif
- Increase( 5 );
+ Increase( mScrollPage );
SendUpdate( mCurrentValue );
break;
@@ -867,7 +1004,7 @@ void LWSlider::OnKeyEvent(wxKeyEvent & event)
#if !wxCHECK_VERSION(2,7,0)
case WXK_NEXT:
#endif
- Decrease( 5 );
+ Decrease( mScrollPage );
SendUpdate( mCurrentValue );
break;
@@ -927,7 +1064,12 @@ void LWSlider::SendUpdate( float newValue )
int LWSlider::ValueToPosition(float val)
{
- return (int)rint((val - mMinValue) * mWidthX / (mMaxValue - mMinValue));
+ float fRange = mMaxValue - mMinValue;
+ if (mOrientation == wxHORIZONTAL)
+ return (int)rint((val - mMinValue) * mWidthX / fRange);
+ else
+ // low values at bottom
+ return (int)rint((mMaxValue - val) * mHeightY / fRange);
}
void LWSlider::SetSpeed(float speed)
@@ -935,18 +1077,32 @@ void LWSlider::SetSpeed(float speed)
mSpeed = speed;
}
-// Given the mouse x coordinate in xPos, compute the new value
+// Given the mouse slider coordinate in fromPos, compute the new value
// of the slider when clicking to set a new position.
-float LWSlider::ClickPositionToValue(int xPos, bool shiftDown)
+float LWSlider::ClickPositionToValue(int fromPos, bool shiftDown)
{
- int pos = (xPos - mLeft - (mThumbWidth / 2));
+ int nSpan;
+ int pos;
+ if (mOrientation == wxHORIZONTAL)
+ {
+ pos = (fromPos - mLeft - (mThumbWidth / 2));
+ nSpan = mWidthX;
+ }
+ else
+ {
+ // wxVERTICAL => Low values at bottom.
+ pos = mBottomY - fromPos;
+ nSpan = mHeightY;
+ }
+ // MM: Special cases: If position is at the very left or the
+ // very right (or top/bottom for wxVERTICAL), set minimum/maximum value without other checks
if (pos <= 0)
return mMinValue;
- if (pos >= mWidthX)
+ if (pos >= nSpan)
return mMaxValue;
- float val = (pos / (float)mWidthX)
+ float val = (pos / (float)nSpan)
* (mMaxValue - mMinValue) + mMinValue;
if (val < mMinValue)
@@ -965,13 +1121,21 @@ float LWSlider::ClickPositionToValue(int xPos, bool shiftDown)
return val;
}
-// Given the mouse x coordinate in xPos, compute the new value
+// Given the mouse slider coordinate in fromPos, compute the new value
// of the slider during a drag.
-float LWSlider::DragPositionToValue(int xPos, bool shiftDown)
+float LWSlider::DragPositionToValue(int fromPos, bool shiftDown)
{
- int delta = (xPos - mClickX);
+ int delta = (fromPos - mClickPos);
+
+ float speed = mSpeed;
+ // Precision enhancement for Shift drags
+ if (mCanUseShift && shiftDown)
+ speed *= 0.4f;
+
+ // wxVERTICAL => Low values at bottom, so throw in the minus sign here with -mHeightY.
+ float denominator = (mOrientation == wxHORIZONTAL) ? mWidthX : -mHeightY;
float val = mClickValue +
- mSpeed * (delta / (float)mWidthX) * (mMaxValue - mMinValue);
+ speed * (delta / denominator) * (mMaxValue - mMinValue);
if (val < mMinValue)
val = mMinValue;
@@ -981,8 +1145,8 @@ float LWSlider::DragPositionToValue(int xPos, bool shiftDown)
if (!(mCanUseShift && shiftDown) && mStepValue != STEP_CONTINUOUS)
{
// MM: If shift is not down, or we don't allow usage
- // of shift key at all, trim value to steps of
- // provided size.
+ // of shift key at all, and the slider has not continuous values,
+ // trim value to steps of provided size.
val = (int)(val / mStepValue + 0.5 * (val>0?1.0f:-1.0f)) * mStepValue;
}
@@ -999,7 +1163,7 @@ float LWSlider::Get( bool convert )
void LWSlider::Set(float value)
{
- if(mIsDragging)
+ if (mIsDragging)
return;
if (mStyle == DB_SLIDER)
mCurrentValue = 20.0f*log10(value);
@@ -1014,22 +1178,22 @@ void LWSlider::Set(float value)
Refresh();
}
-void LWSlider::Increase(int steps)
+void LWSlider::Increase(float steps)
{
float stepValue = mStepValue;
- if( stepValue == 0.0 )
+ if ( stepValue == 0.0 )
{
stepValue = ( mMaxValue - mMinValue ) / 10.0;
}
mCurrentValue += ( steps * stepValue );
- if( mCurrentValue < mMinValue )
+ if ( mCurrentValue < mMinValue )
{
mCurrentValue = mMinValue;
}
- else if( mCurrentValue > mMaxValue )
+ else if ( mCurrentValue > mMaxValue )
{
mCurrentValue = mMaxValue;
}
@@ -1037,22 +1201,22 @@ void LWSlider::Increase(int steps)
Refresh();
}
-void LWSlider::Decrease(int steps)
+void LWSlider::Decrease(float steps)
{
- float stepValue = mStepValue;
+ float stepValue = mStepValue;
- if( stepValue == 0.0 )
+ if ( stepValue == 0.0 )
{
stepValue = ( mMaxValue - mMinValue ) / 10.0;
}
mCurrentValue -= ( steps * stepValue );
- if( mCurrentValue < mMinValue )
+ if ( mCurrentValue < mMinValue )
{
mCurrentValue = mMinValue;
}
- else if( mCurrentValue > mMaxValue )
+ else if ( mCurrentValue > mMaxValue )
{
mCurrentValue = mMaxValue;
}
@@ -1090,8 +1254,9 @@ ASlider::ASlider( wxWindow * parent,
int style,
bool popup,
bool canUseShift,
- float stepValue ):
- wxPanel( parent, id, pos, size, wxWANTS_CHARS )
+ float stepValue,
+ int orientation /*= wxHORIZONTAL*/)
+: wxPanel( parent, id, pos, size, wxWANTS_CHARS )
{
mLWSlider = new LWSlider( this,
name,
@@ -1099,7 +1264,8 @@ ASlider::ASlider( wxWindow * parent,
size,
style,
canUseShift,
- popup );
+ popup,
+ orientation);
mLWSlider->mStepValue = stepValue;
mLWSlider->SetId( id );
SetName( name );
@@ -1120,7 +1286,7 @@ ASlider::~ASlider()
void ASlider::OnSlider(wxCommandEvent &event)
{
- if( event.GetId() == mLWSlider->GetId() )
+ if ( event.GetId() == mLWSlider->GetId() )
{
#if wxUSE_ACCESSIBILITY
GetAccessible()->NotifyEvent( wxACC_EVENT_OBJECT_VALUECHANGE,
@@ -1154,7 +1320,7 @@ void ASlider::OnPaint(wxPaintEvent &event)
mLWSlider->OnPaint(dc, false);
- if( mSliderIsFocused )
+ if ( mSliderIsFocused )
{
wxRect r( 0, 0, mLWSlider->mWidth, mLWSlider->mHeight );
@@ -1197,6 +1363,16 @@ void ASlider::RecreateTipWin()
mLWSlider->RecreateTipWin();
}
+void ASlider::GetScroll(float & line, float & page)
+{
+ mLWSlider->GetScroll(line, page);
+}
+
+void ASlider::SetScroll(float line, float page)
+{
+ mLWSlider->SetScroll(line, page);
+}
+
float ASlider::Get( bool convert )
{
return mLWSlider->Get( convert );
@@ -1207,16 +1383,21 @@ void ASlider::Set(float value)
mLWSlider->Set(value);
}
-void ASlider::Increase(int steps)
+void ASlider::Increase(float steps)
{
mLWSlider->Increase(steps);
}
-void ASlider::Decrease(int steps)
+void ASlider::Decrease(float steps)
{
mLWSlider->Decrease(steps);
}
+bool ASlider::ShowDialog(wxPoint pos)
+{
+ return mLWSlider->ShowDialog(pos);
+}
+
void ASlider::SetSpeed(float speed)
{
mLWSlider->SetSpeed(speed);
@@ -1224,7 +1405,7 @@ void ASlider::SetSpeed(float speed)
#if wxUSE_ACCESSIBILITY
-ASliderAx::ASliderAx( wxWindow * window ):
+ASliderAx::ASliderAx( wxWindow * window ) :
wxWindowAccessible( window )
{
}
@@ -1237,7 +1418,7 @@ ASliderAx::~ASliderAx()
// All objects must support this property.
wxAccStatus ASliderAx::GetChild( int childId, wxAccessible** child )
{
- if( childId == wxACC_SELF )
+ if ( childId == wxACC_SELF )
{
*child = this;
}
@@ -1376,14 +1557,14 @@ wxAccStatus ASliderAx::GetState(int childId, long* state)
break;
case 1:
- if( as->mLWSlider->mCurrentValue == as->mLWSlider->mMinValue )
+ if ( as->mLWSlider->mCurrentValue == as->mLWSlider->mMinValue )
{
*state = wxACC_STATE_SYSTEM_INVISIBLE;
}
break;
case 3:
- if( as->mLWSlider->mCurrentValue == as->mLWSlider->mMaxValue )
+ if ( as->mLWSlider->mCurrentValue == as->mLWSlider->mMaxValue )
{
*state = wxACC_STATE_SYSTEM_INVISIBLE;
}
@@ -1403,7 +1584,7 @@ wxAccStatus ASliderAx::GetValue(int childId, wxString* strValue)
{
ASlider *as = wxDynamicCast( GetWindow(), ASlider );
- if( childId == 0 )
+ if ( childId == 0 )
{
switch( as->mLWSlider->mStyle )
{
diff --git a/src/widgets/ASlider.h b/src/widgets/ASlider.h
index d6713ba..ce3d469 100644
--- a/src/widgets/ASlider.h
+++ b/src/widgets/ASlider.h
@@ -19,13 +19,11 @@
#include <wx/panel.h>
#if wxUSE_ACCESSIBILITY
-#if defined(__WXMSW__)
-#include <oleacc.h>
-#endif
#include <wx/access.h>
#endif
class wxBitmap;
+class wxCursor;
class wxImage;
class wxSize;
class wxPoint;
@@ -33,7 +31,7 @@ class wxTextCtrl;
class wxButton;
//
-// Predefined slider types
+// Predefined slider types (mStyle)
//
#define FRAC_SLIDER 1 // 0.0...1.0
#define DB_SLIDER 2 // -36...36 dB
@@ -52,6 +50,7 @@ class wxButton;
// window (used inside Track Labels). The ASlider class,
// which uses this class, is below.
//
+
class LWSlider
{
friend class ASlider;
@@ -61,17 +60,17 @@ class LWSlider
// MM: Construct customizable slider
LWSlider(wxWindow * parent,
- wxString name,
- const wxPoint &pos,
- const wxSize &size,
- float minValue,
- float maxValue,
- float stepValue,
- bool canUseShift,
- int style,
- bool heavyweight=false,
- bool popup=true
- );
+ wxString name,
+ const wxPoint &pos,
+ const wxSize &size,
+ float minValue,
+ float maxValue,
+ float stepValue,
+ bool canUseShift,
+ int style,
+ bool heavyweight=false,
+ bool popup=true,
+ int orientation = wxHORIZONTAL); // wxHORIZONTAL or wxVERTICAL. wxVERTICAL is currently only for DB_SLIDER.
// Construct predefined slider
LWSlider(wxWindow * parent,
@@ -80,7 +79,8 @@ class LWSlider
const wxSize &size,
int style,
bool heavyweight=false,
- bool popup=true);
+ bool popup=true,
+ int orientation = wxHORIZONTAL); // wxHORIZONTAL or wxVERTICAL. wxVERTICAL is currently only for DB_SLIDER.
void Init(wxWindow * parent,
wxString name,
@@ -93,19 +93,25 @@ class LWSlider
int style,
bool heavyweight,
bool popup,
- float speed
- );
+ float speed,
+ int orientation = wxHORIZONTAL); // wxHORIZONTAL or wxVERTICAL. wxVERTICAL is currently only for DB_SLIDER.
virtual ~LWSlider();
wxWindowID GetId();
void SetId(wxWindowID id);
- float Get( bool convert = true );
+ void SetDefaultValue(float value);
+ void SetDefaultShortcut(bool value);
+
+ void GetScroll(float & line, float & page);
+ void SetScroll(float line, float page);
+
+ float Get(bool convert = true);
void Set(float value);
- void Increase(int steps);
- void Decrease(int steps);
+ void Increase(float steps);
+ void Decrease(float steps);
// If set to less than 1.0, moving the mouse one pixel will move
// the slider by less than 1 unit
@@ -122,6 +128,7 @@ class LWSlider
void RecreateTipWin();
bool ShowDialog();
+ bool ShowDialog(wxPoint pos);
private:
@@ -135,14 +142,15 @@ class LWSlider
void SendUpdate( float newValue );
int ValueToPosition(float val);
- float DragPositionToValue(int xPos, bool shiftDown);
- float ClickPositionToValue(int xPos, bool shiftDown);
+ float DragPositionToValue(int fromPos, bool shiftDown);
+ float ClickPositionToValue(int fromPos, bool shiftDown);
wxWindow* GetToolTipParent() const;
wxWindow *mParent;
int mStyle;
+ int mOrientation; // wxHORIZONTAL or wxVERTICAL. wxVERTICAL is currently only for DB_SLIDER.
bool mHW; // is it really heavyweight (in a window)
bool mPopup; // should display dialog on double click
@@ -153,25 +161,40 @@ class LWSlider
int mWidth; //In pixels
int mHeight; //In pixels
+ // for (mOrientation == wxHORIZONTAL)
int mCenterY;
int mLeftX;
int mRightX;
int mWidthX;
+ // for (mOrientation == wxVERTICAL) //v Vertical PAN_SLIDER currently not handled, forced to horizontal.
+ int mCenterX;
+
+ int mTopY;
+ int mBottomY; // low values at bottom
+ int mHeightY;
+
+
int mThumbWidth; //In pixels
int mThumbHeight; //In pixels
float mClickValue;
- int mClickX;
+ int mClickPos; // position in x if (mOrientation == wxHORIZONTAL), else in y
float mMinValue;
float mMaxValue;
float mStepValue;
float mSpeed;
-
+
+ float mScrollLine;
+ float mScrollPage;
+
float mCurrentValue;
+ bool mDefaultShortcut;
+ float mDefaultValue;
+
bool mCanUseShift;
wxWindowID mID;
@@ -202,14 +225,19 @@ class ASlider :public wxPanel
int style = FRAC_SLIDER,
bool popup = true,
bool canUseShift = true,
- float stepValue = STEP_CONTINUOUS );
+ float stepValue = STEP_CONTINUOUS,
+ int orientation = wxHORIZONTAL);
virtual ~ASlider();
+ void GetScroll(float & line, float & page);
+ void SetScroll(float line, float page);
+
float Get( bool convert = true );
void Set(float value);
- void Increase(int steps);
- void Decrease(int steps);
+ void Increase(float steps);
+ void Decrease(float steps);
+ bool ShowDialog(wxPoint pos = wxPoint(-1, -1));
void SetSpeed(float speed);
@@ -251,7 +279,9 @@ class SliderDialog: public wxDialog
wxPoint position,
wxSize size,
int style,
- float value);
+ float value,
+ float line,
+ float page);
~SliderDialog();
float Get();
diff --git a/src/widgets/ErrorDialog.cpp b/src/widgets/ErrorDialog.cpp
index daf553f..e03079e 100644
--- a/src/widgets/ErrorDialog.cpp
+++ b/src/widgets/ErrorDialog.cpp
@@ -33,6 +33,7 @@ Gives an Error message with an option for help.
#include "../HelpText.h"
#include "../Internat.h"
#include "../Project.h"
+#include "../Prefs.h"
class ErrorDialog : public wxDialog
{
@@ -51,8 +52,6 @@ private:
DECLARE_EVENT_TABLE()
};
-void ShowHtmlInBrowser( const wxString &Url );
-
BEGIN_EVENT_TABLE(ErrorDialog, wxDialog)
EVT_BUTTON( wxID_OK, ErrorDialog::OnOk)
@@ -120,12 +119,43 @@ void ErrorDialog::OnOk(wxCommandEvent &event)
EndModal(true);
}
-void ShowHtmlText( wxWindow * pParent, const wxString &Title, const wxString &HtmlText, bool bIsFile = false )
+// Helper class to make browser "simulate" a modal dialog
+class HtmlTextHelpDialog : public BrowserFrame
+{
+public:
+ HtmlTextHelpDialog() : BrowserFrame()
+ {
+ MakeModal( true );
+ }
+ virtual ~HtmlTextHelpDialog()
+ {
+ MakeModal( false );
+ // On Windows, for some odd reason, the Audacity window will be sent to
+ // the back. So, make sure that doesn't happen.
+ GetParent()->Raise();
+ }
+};
+
+void ShowHtmlText( wxWindow * pParent, const wxString &Title, const wxString &HtmlText, bool bIsFile = false, bool bModal = false )
{
LinkingHtmlWindow *html;
- BrowserFrame * pWnd = new BrowserFrame();
- pWnd->Create(pParent, wxID_ANY, Title, wxDefaultPosition, wxDefaultSize, wxDEFAULT_FRAME_STYLE);// & ~wxSYSTEM_MENU);
+ BrowserFrame * pWnd;
+ if( bModal )
+ pWnd = new HtmlTextHelpDialog();
+ else
+ pWnd = new BrowserFrame();
+
+ pWnd->Create(pParent, wxID_ANY, Title, wxDefaultPosition, wxDefaultSize,
+#if defined(__WXMAC__)
+ // On OSX, the html frame can go behind the help dialog and if the help
+ // html frame is modal, you can't get back to it. Pressing escape gets
+ // you out of this, but it's just easier to add the wxSTAY_ON_TOP flag
+ // to prevent it from falling behind the dialog. Not the perfect solution
+ // but acceptable in this case.
+ wxSTAY_ON_TOP |
+#endif
+ wxDEFAULT_FRAME_STYLE);
ShuttleGui S( pWnd, eIsCreating );
@@ -190,17 +220,6 @@ void ShowHtmlText( wxWindow * pParent, const wxString &Title, const wxString &Ht
return;
}
-
-
-void ShowHtmlInBrowser( const wxString &Url )
-{
-#if defined(__WXMSW__) || defined(__WXMAC__)
- OpenInDefaultBrowser(Url);
-#else
- wxLaunchDefaultBrowser(Url);
-#endif
-}
-
void ErrorDialog::OnHelp(wxCommandEvent &event)
{
if( dhelpURL.StartsWith(wxT("innerlink:")) )
@@ -208,10 +227,12 @@ void ErrorDialog::OnHelp(wxCommandEvent &event)
ShowHtmlText(
this,
TitleText(dhelpURL.Mid( 10 ) ),
- HelpText( dhelpURL.Mid( 10 )) );
+ HelpText( dhelpURL.Mid( 10 )),
+ false,
+ true );
return;
}
- ShowHtmlInBrowser( dhelpURL );
+ OpenInDefaultBrowser( dhelpURL );
EndModal(true);
}
@@ -231,17 +252,27 @@ void ShowHelpDialog(wxWindow *parent,
const wxString &remoteURL)
{
AudacityProject * pProj = GetActiveProject();
- wxString HelpMode = wxT("Standard");
+ wxString HelpMode = wxT("Local");
if( pProj )
{
HelpMode = pProj->mHelpPref;
+ // these next lines are for legacy cfg files (pre 2.0) where we had different modes
+ if( (HelpMode == wxT("Standard")) || (HelpMode == wxT("InBrowser")) )
+ {
+ HelpMode = wxT("Local");
+ pProj->mHelpPref = HelpMode;
+ gPrefs->Write(wxT("/GUI/Help"), HelpMode);
+ }
}
- if( (HelpMode == wxT("FromInternet")) && !remoteURL.IsEmpty() )
+ if( localFileName.Contains(wxT("Quick_Help")) )
+ // 'Quick_Help' is installed locally
+ OpenInDefaultBrowser( localFileName );
+ else if( (HelpMode == wxT("FromInternet")) && !remoteURL.IsEmpty() )
{
// Always go to remote URL. Use External browser.
- ShowHtmlInBrowser( remoteURL );
+ OpenInDefaultBrowser( remoteURL );
}
else if( !wxFileExists( localFileName ))
{
@@ -250,14 +281,15 @@ void ShowHelpDialog(wxWindow *parent,
wxASSERT( !remoteURL.IsEmpty() );
// I can't find it'.
// Use Built-in browser to suggest you use the remote url.
+//use the remote link
wxString Text = HelpText( wxT("remotehelp") );
Text.Replace( wxT("*URL*"), remoteURL );
ShowHtmlText( parent, _("Help on the Internet"), Text );
}
- else if( HelpMode == wxT("InBrowser") )
+ else if( HelpMode == wxT("Local") )
{
// Local file, External browser
- ShowHtmlInBrowser( wxString(wxT("file:"))+localFileName );
+ OpenInDefaultBrowser( wxString(wxT("file:"))+localFileName );
}
else
{
diff --git a/src/widgets/Grabber.cpp b/src/widgets/Grabber.cpp
index cdd7142..826c8f6 100644
--- a/src/widgets/Grabber.cpp
+++ b/src/widgets/Grabber.cpp
@@ -133,7 +133,7 @@ void Grabber::DrawGrabber( wxDC & dc )
// Cache
left = r.GetLeft();
- right = r.GetRight() + 1; //+1 for DrawLine()'s lack of not plotting last pixel
+ right = r.GetRight();
top = r.GetTop();
bottom = r.GetBottom();
@@ -146,7 +146,7 @@ void Grabber::DrawGrabber( wxDC & dc )
}
for (y = top; y < bottom; y += 4) {
- dc.DrawLine(left, y, right, y);
+ AColor::Line(dc, left, y, right, y);
}
// Draw the pushed bumps
@@ -158,7 +158,7 @@ void Grabber::DrawGrabber( wxDC & dc )
}
for (y = top + 1; y <= bottom; y += 4) {
- dc.DrawLine(left, y, right, y);
+ AColor::Line(dc, left, y, right, y);
}
}
diff --git a/src/widgets/Grid.cpp b/src/widgets/Grid.cpp
index 86f0aa3..05bce61 100644
--- a/src/widgets/Grid.cpp
+++ b/src/widgets/Grid.cpp
@@ -259,7 +259,7 @@ ChoiceEditor::ChoiceEditor(const wxArrayString &choices)
ChoiceEditor::~ChoiceEditor()
{
if (m_control)
- m_control->GetEventHandler()->Disconnect(wxEVT_KILL_FOCUS, wxFocusEventHandler(ChoiceEditor::OnKillFocus));
+ mHandler.DisconnectEvent(m_control);
}
wxGridCellEditor *ChoiceEditor::Clone() const
@@ -276,7 +276,7 @@ void ChoiceEditor::Create(wxWindow* parent, wxWindowID id, wxEvtHandler* evtHand
mChoices);
wxGridCellEditor::Create(parent, id, evtHandler);
- m_control->GetEventHandler()->Connect(wxEVT_KILL_FOCUS, wxFocusEventHandler(ChoiceEditor::OnKillFocus));
+ mHandler.ConnectEvent(m_control);
}
void ChoiceEditor::SetSize(const wxRect &rect)
@@ -331,16 +331,12 @@ wxString ChoiceEditor::GetValue() const
return mChoices[Choice()->GetSelection()];
}
-void ChoiceEditor::OnKillFocus(wxFocusEvent &event)
-{
- return;
-}
-
///
///
///
BEGIN_EVENT_TABLE(Grid, wxGrid)
+ EVT_SET_FOCUS(Grid::OnSetFocus)
EVT_KEY_DOWN(Grid::OnKeyDown)
EVT_GRID_SELECT_CELL(Grid::OnSelectCell)
END_EVENT_TABLE()
@@ -354,11 +350,8 @@ Grid::Grid(wxWindow *parent,
: wxGrid(parent, id, pos, size, style | wxWANTS_CHARS, name)
{
#if wxUSE_ACCESSIBILITY
- mAx = new GridAx(this, NULL, wxROLE_SYSTEM_TABLE, 0, 0);
- SetAccessible(mAx);
-
- mObjNdx = -1;
- mChildren.Clear();
+ mAx = new GridAx(this);
+ GetGridWindow()->SetAccessible(mAx);
#endif
RegisterDataType(GRID_VALUE_TIME,
@@ -382,6 +375,15 @@ Grid::~Grid()
#endif
}
+void Grid::OnSetFocus(wxFocusEvent &event)
+{
+ event.Skip();
+
+#if wxUSE_ACCESSIBILITY
+ mAx->SetCurrentCell(GetGridCursorRow(), GetGridCursorCol());
+#endif
+}
+
void Grid::OnSelectCell(wxGridEvent &event)
{
event.Skip();
@@ -425,6 +427,11 @@ void Grid::OnKeyDown(wxKeyEvent &event)
SetGridCursor(crow, ccol + 1);
}
}
+
+#if wxUSE_ACCESSIBILITY
+ // Make sure the new cell is made available to the screen reader
+ mAx->SetCurrentCell(GetGridCursorRow(), GetGridCursorCol());
+#endif
}
break;
@@ -441,6 +448,7 @@ void Grid::OnKeyDown(wxKeyEvent &event)
wxNavigationKeyEvent::IsBackward :
wxNavigationKeyEvent::IsForward );
Navigate(flags);
+ return;
}
else if (event.ShiftDown()) {
if (crow == 0 && ccol == 0) {
@@ -467,6 +475,11 @@ void Grid::OnKeyDown(wxKeyEvent &event)
}
}
MakeCellVisible(GetGridCursorRow(), GetGridCursorCol());
+
+#if wxUSE_ACCESSIBILITY
+ // Make sure the new cell is made available to the screen reader
+ mAx->SetCurrentCell(GetGridCursorRow(), GetGridCursorCol());
+#endif
}
break;
@@ -484,6 +497,11 @@ void Grid::OnKeyDown(wxKeyEvent &event)
}
else {
wxGrid::OnKeyDown(event);
+
+ // This looks strange, but what it does is selects the cell when
+ // enter is pressed after editing. Without it, Jaws and Window-Eyes
+ // do not speak the new cell contents (the one below the edited one).
+ SetGridCursor(GetGridCursorRow(), GetGridCursorCol());
}
break;
}
@@ -558,129 +576,78 @@ bool Grid::DeleteCols(int pos, int numCols, bool updateLabels)
return res;
}
-GridAx *Grid::GetNextAx(GridAx *parent, wxAccRole role, int row, int col)
-{
- mObjNdx = (mObjNdx + 1) & 0x3f;
-
- if (mObjNdx < (int)mChildren.GetCount()) {
- GridAx *ax = (GridAx *) mChildren[mObjNdx];
- delete ax;
-
- mChildren[mObjNdx] = new GridAx(this, parent, role, row, col);
- }
- else {
- mChildren.Add(new GridAx(this, parent, role, row, col));
- }
-
- return (GridAx *)mChildren[mObjNdx];
-}
-
-GridAx::GridAx(Grid *grid, GridAx *parent, wxAccRole role, int row, int col)
-: wxWindowAccessible(NULL)
+GridAx::GridAx(Grid *grid)
+: wxWindowAccessible(grid->GetGridWindow())
{
mGrid = grid;
- mParent = parent;
- mRole = role;
- mRow = row;
- mCol = col;
+ mLastId = -1;
}
void GridAx::TableUpdated()
{
NotifyEvent(wxACC_EVENT_OBJECT_REORDER,
- mGrid,
+ mGrid->GetGridWindow(),
wxOBJID_CLIENT,
0);
}
void GridAx::SetCurrentCell(int row, int col)
{
- int id = -(((row * mGrid->GetNumberCols()) + col) + 1);
+ int id = (((row * mGrid->GetNumberCols()) + col) + 1);
- NotifyEvent(wxACC_EVENT_OBJECT_SELECTION,
- mGrid,
+ if (mLastId != -1) {
+ NotifyEvent(wxACC_EVENT_OBJECT_SELECTIONREMOVE,
+ mGrid->GetGridWindow(),
wxOBJID_CLIENT,
- id);
+ mLastId);
+ }
NotifyEvent(wxACC_EVENT_OBJECT_FOCUS,
- mGrid,
+ mGrid->GetGridWindow(),
+ wxOBJID_CLIENT,
+ id);
+
+ NotifyEvent(wxACC_EVENT_OBJECT_SELECTION,
+ mGrid->GetGridWindow(),
wxOBJID_CLIENT,
id);
+
+ mLastId = id;
}
-// Retrieves the address of an IDispatch interface for the specified child.
-// All objects must support this property.
-wxAccStatus GridAx::GetChild(int childId, wxAccessible** child)
+bool GridAx::GetRowCol(int childId, int & row, int & col)
{
if (childId == wxACC_SELF) {
- *child = this;
- return wxACC_OK;
+ return false;
}
- if (childId < 0) {
- int cols = mGrid->GetNumberCols();
- int row;
- int col;
+ int cols = mGrid->GetNumberCols();
+ int id = childId - 1;
- childId *= -1;
- childId -= 1;
- row = childId / cols;
- col = childId % cols;
+ row = id / cols;
+ col = id % cols;
- *child = mGrid->GetNextAx(this, wxROLE_SYSTEM_CELL, row + 1, col + 1);
+ return true;
+}
- return wxACC_OK;
+// Retrieves the address of an IDispatch interface for the specified child.
+// All objects must support this property.
+wxAccStatus GridAx::GetChild(int childId, wxAccessible** child)
+{
+ if (childId == wxACC_SELF) {
+ *child = this;
}
-
- childId -= 1;
-
- switch (mRole)
- {
- case wxROLE_SYSTEM_TABLE:
- *child = mGrid->GetNextAx(this, wxROLE_SYSTEM_ROW, childId, 0);
- break;
-
- case wxROLE_SYSTEM_ROW:
- wxAccRole role;
-
- if (childId == 0) {
- role = wxROLE_SYSTEM_ROWHEADER;
- }
- else if (mRow == 0) {
- role = wxROLE_SYSTEM_COLUMNHEADER;
- }
- else {
- role = wxROLE_SYSTEM_CELL;
- }
-
- *child = mGrid->GetNextAx(this, role, mRow, childId);
- break;
-
- default:
- *child = NULL;
- break;
+ else {
+ *child = NULL;
}
return wxACC_OK;
}
// Gets the number of children.
-wxAccStatus GridAx::GetChildCount(int* childCount)
+wxAccStatus GridAx::GetChildCount(int *childCount)
{
- switch (mRole)
- {
- case wxROLE_SYSTEM_TABLE:
- *childCount = mGrid->GetNumberRows() + 1;
- break;
-
- case wxROLE_SYSTEM_ROW:
- *childCount = mGrid->GetNumberCols() + 1;
- break;
-
- default:
- *childCount = 0;
- break;
- }
+ *childCount = mGrid->GetNumberRows() * mGrid->GetNumberCols();
return wxACC_OK;
}
@@ -691,7 +658,7 @@ wxAccStatus GridAx::GetChildCount(int* childCount)
// The retrieved string describes the action that is performed on an object,
// not what the object does as a result. For example, a toolbar button that prints
// a document has a default action of "Press" rather than "Prints the current document."
-wxAccStatus GridAx::GetDefaultAction( int childId, wxString *actionName )
+wxAccStatus GridAx::GetDefaultAction(int childId, wxString *actionName)
{
actionName->Clear();
@@ -701,34 +668,9 @@ wxAccStatus GridAx::GetDefaultAction( int childId, wxString *actionName )
// Returns the description for this object or a child.
wxAccStatus GridAx::GetDescription(int childId, wxString *description)
{
- if (childId == wxACC_SELF) {
- switch (mRole)
- {
- case wxROLE_SYSTEM_TABLE:
- description->Printf(_("%d rows, %d columns"),
- mGrid->GetNumberRows(),
- mGrid->GetNumberCols());
- break;
-
- case wxROLE_SYSTEM_ROW:
- description->Printf(_("Row %d"),
- mRow);
- break;
-
- case wxROLE_SYSTEM_CELL:
- description->Printf(wxT("%d"),
- mCol);
- break;
-
- default:
- description->Printf(wxT("oh-oh...buggie"));
- break;
- }
-
- return wxACC_OK;
- }
+ description->Clear();
- return wxACC_NOT_IMPLEMENTED;
+ return wxACC_OK;
}
// Returns help text for this object or a child, similar to tooltip text.
@@ -750,146 +692,65 @@ wxAccStatus GridAx::GetKeyboardShortcut(int childId, wxString *shortcut)
// Returns the rectangle for this object (id = 0) or a child element (id > 0).
// rect is in screen coordinates.
-wxAccStatus GridAx::GetLocation(wxRect& rect, int elementId)
+wxAccStatus GridAx::GetLocation(wxRect & rect, int elementId)
{
wxRect r;
+ int row;
+ int col;
- wxASSERT_MSG((elementId == wxACC_SELF),
- wxString::Format(wxT("GridAx::GetLocation Unexpected elementId: %d"), elementId));
-
- switch (mRole)
- {
- case wxROLE_SYSTEM_TABLE:
- rect = mGrid->GetRect();
- r = mGrid->GetGridCornerLabelWindow()->GetRect();
- rect.x -= r.width;
- rect.y -= r.height;
- break;
-
- case wxROLE_SYSTEM_ROW:
- if (mRow == 0) {
- rect = mGrid->CellToRect(0, 0);
-
- r = mGrid->GetGridRowLabelWindow()->GetRect();
- rect.x -= r.width;
- rect.width = r.width;
-
- r = mGrid->GetGridColLabelWindow()->GetRect();
- rect.y -= r.height;
- rect.width += r.width;
- }
- else {
- rect = mGrid->CellToRect(mRow - 1, 0);
-
- r = mGrid->GetGridRowLabelWindow()->GetRect();
- rect.x -= r.width;
- rect.width = r.width;
-
- r = mGrid->GetGridColLabelWindow()->GetRect();
- rect.width += r.width;
- }
- break;
-
- case wxROLE_SYSTEM_ROWHEADER:
- r = mGrid->GetGridCornerLabelWindow()->GetRect();
- if (mRow == 0) {
- rect = mGrid->CellToRect(0, 0);
- rect.y -= r.height;
- }
- else {
- rect = mGrid->CellToRect(mRow - 1, 0);
- }
- rect.x -= r.width;
- rect.width = r.width;
- break;
-
- case wxROLE_SYSTEM_COLUMNHEADER:
- rect = mGrid->CellToRect(0, mCol - 1);
- r = mGrid->GetGridColLabelWindow()->GetRect();
- rect.y -= r.height;
- break;
-
- case wxROLE_SYSTEM_CELL:
- rect = mGrid->CellToRect(mRow - 1, mCol - 1);
- break;
-
- default:
- wxASSERT_MSG(0,
- wxString::Format(wxT("GridAx::GetLocation Unrecognized role: %d"),
- mRole));
- break;
+ if (GetRowCol(elementId, row, col)) {
+ rect = mGrid->CellToRect(row, col);
+ rect.SetPosition(mGrid->GetGridWindow()->ClientToScreen(rect.GetPosition()));
+ }
+ else {
+ rect = mGrid->GetRect();
+ rect.SetPosition(mGrid->GetParent()->ClientToScreen(rect.GetPosition()));
}
-
- rect.SetPosition(mGrid->GetGridWindow()->ClientToScreen(rect.GetPosition()));
return wxACC_OK;
}
// Gets the name of the specified object.
-wxAccStatus GridAx::GetName(int childId, wxString* name)
+wxAccStatus GridAx::GetName(int childId, wxString *name)
{
- wxASSERT_MSG((childId == wxACC_SELF),
- wxString::Format(wxT("GridAx::GetName Unexpected childId: %d"), childId));
-
- switch (mRole)
- {
- case wxROLE_SYSTEM_TABLE:
- *name = mGrid->GetName();
- break;
-
- case wxROLE_SYSTEM_ROW:
- name->Printf(_("Row %d"), mRow);
- break;
-
- case wxROLE_SYSTEM_ROWHEADER:
- *name = mGrid->GetRowLabelValue(mRow);
- break;
+ int row;
+ int col;
- case wxROLE_SYSTEM_COLUMNHEADER:
- *name = mGrid->GetColLabelValue(mCol - 1);
- break;
-
- case wxROLE_SYSTEM_CELL:
- {
- *name = mGrid->GetCellValue(mRow - 1, mCol - 1);
- if (name->IsEmpty()) {
- *name = _("Empty");
- }
-
- // Hack to provide a more intelligible response
- TimeEditor *d =
- (TimeEditor *)mGrid->GetDefaultEditorForType(GRID_VALUE_TIME);
- TimeEditor *c =
- (TimeEditor *)mGrid->GetCellEditor(mRow - 1, mCol - 1);
-
- if (c && d && c == d) {
- double value;
- name->ToDouble(&value);
-
- TimeTextCtrl tt(mGrid,
- wxID_ANY,
- wxT(""),
- value,
- c->GetRate(),
- wxPoint(10000, 10000), // create offscreen
- wxDefaultSize,
- true);
- tt.SetFormatString(tt.GetBuiltinFormat(c->GetFormat()));
- *name = tt.GetTimeString();
- }
+ if (GetRowCol(childId, row, col)) {
+ wxString n = mGrid->GetColLabelValue(col);
+ wxString v = mGrid->GetCellValue(row, col);
+ if (v.IsEmpty()) {
+ v = _("Empty");
+ }
- if (c)
- c->DecRef();
- if (d)
- d->DecRef();
+ // Hack to provide a more intelligible response
+ TimeEditor *d =
+ (TimeEditor *)mGrid->GetDefaultEditorForType(GRID_VALUE_TIME);
+ TimeEditor *c =
+ (TimeEditor *)mGrid->GetCellEditor(row, col);
+
+ if (c && d && c == d) {
+ double value;
+ v.ToDouble(&value);
+
+ TimeTextCtrl tt(mGrid,
+ wxID_ANY,
+ wxT(""),
+ value,
+ c->GetRate(),
+ wxPoint(10000, 10000), // create offscreen
+ wxDefaultSize,
+ true);
+ tt.SetFormatString(tt.GetBuiltinFormat(c->GetFormat()));
+ v = tt.GetTimeString();
}
- break;
- default:
- wxASSERT_MSG(0,
- wxString::Format(wxT("GridAx::GetName Unrecognized role: %d"),
- mRole));
- break;
+ if (c)
+ c->DecRef();
+ if (d)
+ d->DecRef();
+
+ *name = n + wxT(" ") + v;
}
return wxACC_OK;
@@ -897,18 +758,18 @@ wxAccStatus GridAx::GetName(int childId, wxString* name)
wxAccStatus GridAx::GetParent(wxAccessible **parent)
{
- *parent = mParent;
-
- return wxACC_OK;
+ return wxACC_NOT_IMPLEMENTED;
}
// Returns a role constant.
-wxAccStatus GridAx::GetRole(int childId, wxAccRole* role)
+wxAccStatus GridAx::GetRole(int childId, wxAccRole *role)
{
- wxASSERT_MSG((childId == wxACC_SELF),
- wxString::Format(wxT("GridAx::GetRole Unexpected childId: %d"), childId));
-
- *role = mRole;
+ if (childId == wxACC_SELF) {
+ *role = wxROLE_SYSTEM_TABLE;
+ }
+ else {
+ *role = wxROLE_SYSTEM_CELL;
+ }
return wxACC_OK;
}
@@ -921,98 +782,48 @@ wxAccStatus GridAx::GetRole(int childId, wxAccRole* role)
// - an integer representing the selected child element,
// or 0 if this object is selected (GetType() == wxT("long"))
// - a "void*" pointer to a wxAccessible child object
-wxAccStatus GridAx::GetSelections( wxVariant *selections )
+wxAccStatus GridAx::GetSelections(wxVariant *selections)
{
return wxACC_NOT_IMPLEMENTED;
}
// Returns a state constant.
-wxAccStatus GridAx::GetState( int childId, long* state )
-{
- int row = mGrid->GetGridCursorRow();
- int col = mGrid->GetGridCursorCol();
- int cols = mGrid->GetNumberCols();
- int flag;
-
- wxASSERT_MSG((childId == wxACC_SELF),
- wxString::Format(wxT("GridAx::GetState Unexpected childId: %d"), childId));
-
- *state = 0;
-
- switch (mRole)
- {
- case wxROLE_SYSTEM_TABLE:
- *state = wxACC_STATE_SYSTEM_FOCUSABLE | wxACC_STATE_SYSTEM_SELECTABLE;
- break;
-
- case wxROLE_SYSTEM_ROW:
- *state = wxACC_STATE_SYSTEM_FOCUSABLE | wxACC_STATE_SYSTEM_SELECTABLE;
-
- flag = wxACC_STATE_SYSTEM_INVISIBLE;
- for (col = 0; col < cols; col++) {
- if (mGrid->IsVisible(mRow, col)) {
- flag = 0;
- break;
- }
- }
- *state |= flag;
-
- break;
-
- case wxROLE_SYSTEM_ROWHEADER:
- case wxROLE_SYSTEM_COLUMNHEADER:
- *state = wxACC_STATE_SYSTEM_UNAVAILABLE;
- break;
-
- case wxROLE_SYSTEM_CELL:
- {
- int row = mGrid->GetGridCursorRow();
- int col = mGrid->GetGridCursorCol();
- int cols = mGrid->GetNumberCols();
-
- *state = wxACC_STATE_SYSTEM_FOCUSABLE | wxACC_STATE_SYSTEM_SELECTABLE;
-
- if (mRow - 1 == row) {
- *state |= wxACC_STATE_SYSTEM_FOCUSED;
- }
-
- flag = wxACC_STATE_SYSTEM_SELECTED;
- for (col = 0; col < cols; col++) {
- if (!mGrid->IsInSelection(row, col)) {
- flag = 0;
- break;
- }
- }
- *state |= flag;
+wxAccStatus GridAx::GetState(int childId, long *state)
+{
+ int flag = wxACC_STATE_SYSTEM_FOCUSABLE |
+ wxACC_STATE_SYSTEM_SELECTABLE |
+ wxACC_STATE_SYSTEM_FOCUSED |
+ wxACC_STATE_SYSTEM_SELECTED;
+ int col;
+ int row;
+
+ if (GetRowCol(childId, row, col)) {
+ if (mGrid->IsReadOnly(row, col)) {
+ flag = wxACC_STATE_SYSTEM_UNAVAILABLE;
}
- break;
-
- default:
- wxASSERT_MSG(0,
- wxString::Format(wxT("GridAx::GetState Unrecognized role: %d"),
- mRole));
- break;
}
+ *state = flag;
+
return wxACC_OK;
}
// Returns a localized string representing the value for the object
// or child.
-wxAccStatus GridAx::GetValue( int childId, wxString* strValue )
+wxAccStatus GridAx::GetValue(int childId, wxString *strValue)
{
- return wxACC_NOT_SUPPORTED;
+ strValue->Clear();
+
+ return wxACC_OK;
}
// Gets the window with the keyboard focus.
// If childId is 0 and child is NULL, no object in
// this subhierarchy has the focus.
// If this object has the focus, child should be 'this'.
-wxAccStatus GridAx::GetFocus( int *childId, wxAccessible **child )
+wxAccStatus GridAx::GetFocus(int *childId, wxAccessible **child)
{
- if (mGrid->FindFocus() == mGrid->GetGridWindow()) {
- *childId = mGrid->GetGridCursorRow() + 1;
- }
+ *child = this;
return wxACC_OK;
}
diff --git a/src/widgets/Grid.h b/src/widgets/Grid.h
index 628dfb6..1446b61 100644
--- a/src/widgets/Grid.h
+++ b/src/widgets/Grid.h
@@ -20,9 +20,6 @@
#include <wx/window.h>
#if wxUSE_ACCESSIBILITY
-#if defined(__WXMSW__)
-#include <oleacc.h>
-#endif
#include <wx/access.h>
class GridAx;
@@ -138,11 +135,28 @@ public:
protected:
- void OnKillFocus(wxFocusEvent &event);
wxChoice *Choice() const { return (wxChoice *)m_control; }
private:
+ // A whole separate class just to get rid of Visual C++ warning C4407
+ class FocusHandler:wxEvtHandler
+ {
+ public:
+ void ConnectEvent(wxWindow *w)
+ {
+ w->GetEventHandler()->Connect(wxEVT_KILL_FOCUS, wxFocusEventHandler(FocusHandler::OnKillFocus));
+ };
+ void DisconnectEvent(wxWindow *w)
+ {
+ w->GetEventHandler()->Disconnect(wxEVT_KILL_FOCUS, wxFocusEventHandler(FocusHandler::OnKillFocus));
+ };
+ void OnKillFocus(wxFocusEvent &event)
+ {
+ return;
+ };
+ } mHandler;
+
wxArrayString mChoices;
wxString mOld;
};
@@ -182,6 +196,7 @@ class Grid
protected:
+ void OnSetFocus(wxFocusEvent &event);
void OnSelectCell(wxGridEvent &event);
void OnKeyDown(wxKeyEvent &event);
@@ -211,17 +226,18 @@ class GridAx
public:
- GridAx(Grid *grid, GridAx *parent, wxAccRole role, int row, int col);
+ GridAx(Grid *grid);
void SetCurrentCell(int row, int col);
void TableUpdated();
+ bool GetRowCol(int childId, int & row, int & col);
// Retrieves the address of an IDispatch interface for the specified child.
// All objects must support this property.
- virtual wxAccStatus GetChild( int childId, wxAccessible** child );
+ virtual wxAccStatus GetChild(int childId, wxAccessible **child);
// Gets the number of children.
- virtual wxAccStatus GetChildCount(int* childCount);
+ virtual wxAccStatus GetChildCount(int *childCount);
// Gets the default action for this object (0) or > 0 (the action for a child).
// Return wxACC_OK even if there is no action. actionName is the action, or the empty
@@ -229,36 +245,36 @@ class GridAx
// The retrieved string describes the action that is performed on an object,
// not what the object does as a result. For example, a toolbar button that prints
// a document has a default action of "Press" rather than "Prints the current document."
- virtual wxAccStatus GetDefaultAction( int childId, wxString *actionName );
+ virtual wxAccStatus GetDefaultAction(int childId, wxString *actionName);
// Returns the description for this object or a child.
- virtual wxAccStatus GetDescription( int childId, wxString *description );
+ virtual wxAccStatus GetDescription(int childId, wxString *description);
// Gets the window with the keyboard focus.
// If childId is 0 and child is NULL, no object in
// this subhierarchy has the focus.
// If this object has the focus, child should be 'this'.
- virtual wxAccStatus GetFocus( int *childId, wxAccessible **child );
+ virtual wxAccStatus GetFocus(int *childId, wxAccessible **child);
// Returns help text for this object or a child, similar to tooltip text.
- virtual wxAccStatus GetHelpText( int childId, wxString *helpText );
+ virtual wxAccStatus GetHelpText(int childId, wxString *helpText);
// Returns the keyboard shortcut for this object or child.
// Return e.g. ALT+K
- virtual wxAccStatus GetKeyboardShortcut( int childId, wxString *shortcut );
+ virtual wxAccStatus GetKeyboardShortcut(int childId, wxString *shortcut);
// Returns the rectangle for this object (id = 0) or a child element (id > 0).
// rect is in screen coordinates.
- virtual wxAccStatus GetLocation( wxRect& rect, int elementId );
+ virtual wxAccStatus GetLocation(wxRect & rect, int elementId);
// Gets the name of the specified object.
- virtual wxAccStatus GetName( int childId, wxString *name );
+ virtual wxAccStatus GetName(int childId, wxString *name);
// Gets the parent, or NULL.
virtual wxAccStatus GetParent(wxAccessible **parent);
// Returns a role constant.
- virtual wxAccStatus GetRole( int childId, wxAccRole *role );
+ virtual wxAccStatus GetRole(int childId, wxAccRole *role);
// Gets a variant representing the selected children
// of this object.
@@ -277,11 +293,8 @@ class GridAx
// or child.
virtual wxAccStatus GetValue(int childId, wxString* strValue);
- GridAx *mParent;
Grid *mGrid;
- wxAccRole mRole;
- int mRow;
- int mCol;
+ int mLastId;
};
#endif
diff --git a/src/widgets/LinkingHtmlWindow.cpp b/src/widgets/LinkingHtmlWindow.cpp
index df7523e..06a8c49 100644
--- a/src/widgets/LinkingHtmlWindow.cpp
+++ b/src/widgets/LinkingHtmlWindow.cpp
@@ -13,6 +13,9 @@
**********************************************************************/
+// For compilers that support precompilation, includes "wx/wx.h".
+#include <wx/wxprec.h>
+
#include "../Audacity.h"
#include <wx/mimetype.h>
@@ -75,25 +78,8 @@ void BrowserFrame::UpdateButtons()
void OpenInDefaultBrowser(const wxHtmlLinkInfo& link)
{
- #ifdef __WXMAC__
- wxString openCmd = wxT("open ") + link.GetHref();
- ::wxExecute(openCmd);
- #else
- #ifdef __WXMSW__
- wxFileType* pFileType = wxTheMimeTypesManager->GetFileTypeFromExtension(wxT(".htm"));
- if (pFileType == NULL)
- return;
- wxString openCmd = pFileType->GetOpenCommand(link.GetHref());
- if (openCmd.Lower().Contains(wxT("iexplore.exe")))
- // GetOpenCommand is not quite right for Internet Explorer.
- openCmd.Replace(wxT("WWW_OpenURL#\"file://"), wxT("WWW_OpenURL#\""));
- ::wxExecute(openCmd);
- delete pFileType;
- #else
- wxLaunchDefaultBrowser(link.GetHref());
- #endif
- #endif
-};
+ wxLaunchDefaultBrowser(link.GetHref());
+}
LinkingHtmlWindow::LinkingHtmlWindow(wxWindow *parent, wxWindowID id /*= -1*/,
const wxPoint& pos /*= wxDefaultPosition*/,
@@ -121,6 +107,11 @@ void LinkingHtmlWindow::OnLinkClicked(const wxHtmlLinkInfo& link)
wxGetTopLevelParent(this)->SetLabel( TitleText( href.Mid( 10 )));
}
}
+ else if( href.StartsWith(wxT("mailto:")) || href.StartsWith(wxT("file:")) )
+ {
+ OpenInDefaultBrowser( link );
+ return;
+ }
else if( !href.StartsWith( wxT("http:")))
{
HtmlWindow::OnLinkClicked( link );
diff --git a/src/widgets/Meter.cpp b/src/widgets/Meter.cpp
index eb453de..03983a7 100644
--- a/src/widgets/Meter.cpp
+++ b/src/widgets/Meter.cpp
@@ -5,6 +5,7 @@
Meter.cpp
Dominic Mazzoni
+ Vaughan Johnson
2004.06.25 refresh rate limited to 30mS, by ChackoN
@@ -16,6 +17,10 @@
This is a bunch of common code that can display many different
forms of VU meters and other displays.
+ But note that a lot of later code here assumes these are
+ MeterToolBar meters, e.g., Meter::StartMonitoring,
+ so these are not as generic/common as originally intended.
+
*//****************************************************************//**
\class MeterBar
@@ -40,10 +45,7 @@
#include <wx/dcmemory.h>
#include <wx/image.h>
#include <wx/intl.h>
-#define WANT_METER_MENU 1 //vvv
-#if WANT_METER_MENU
- #include <wx/menu.h>
-#endif
+#include <wx/menu.h>
#include <wx/settings.h>
#include <wx/textdlg.h>
#include <wx/numdlg.h>
@@ -185,20 +187,18 @@ BEGIN_EVENT_TABLE(Meter, wxPanel)
EVT_ERASE_BACKGROUND(Meter::OnErase)
EVT_PAINT(Meter::OnPaint)
EVT_SIZE(Meter::OnSize)
- #if WANT_METER_MENU
- EVT_MENU(OnDisableMeterID, Meter::OnDisableMeter)
- EVT_MENU(OnHorizontalID, Meter::OnHorizontal)
- EVT_MENU(OnVerticalID, Meter::OnVertical)
- EVT_MENU(OnMultiID, Meter::OnMulti)
- EVT_MENU(OnEqualizerID, Meter::OnEqualizer)
- EVT_MENU(OnWaveformID, Meter::OnWaveform)
- EVT_MENU(OnLinearID, Meter::OnLinear)
- EVT_MENU(OnDBID, Meter::OnDB)
- EVT_MENU(OnClipID, Meter::OnClip)
- EVT_MENU(OnMonitorID, Meter::OnMonitor)
- EVT_MENU(OnFloatID, Meter::OnFloat)
- EVT_MENU(OnPreferencesID, Meter::OnPreferences)
- #endif
+ EVT_MENU(OnDisableMeterID, Meter::OnDisableMeter)
+ EVT_MENU(OnHorizontalID, Meter::OnHorizontal)
+ EVT_MENU(OnVerticalID, Meter::OnVertical)
+ EVT_MENU(OnMultiID, Meter::OnMulti)
+ EVT_MENU(OnEqualizerID, Meter::OnEqualizer)
+ EVT_MENU(OnWaveformID, Meter::OnWaveform)
+ EVT_MENU(OnLinearID, Meter::OnLinear)
+ EVT_MENU(OnDBID, Meter::OnDB)
+ EVT_MENU(OnClipID, Meter::OnClip)
+ EVT_MENU(OnMonitorID, Meter::OnMonitor)
+ EVT_MENU(OnFloatID, Meter::OnFloat)
+ EVT_MENU(OnPreferencesID, Meter::OnPreferences)
END_EVENT_TABLE()
IMPLEMENT_CLASS(Meter, wxPanel)
@@ -206,16 +206,18 @@ IMPLEMENT_CLASS(Meter, wxPanel)
Meter::Meter(wxWindow* parent, wxWindowID id,
bool isInput,
const wxPoint& pos /*= wxDefaultPosition*/,
- const wxSize& size /*= wxDefaultSize*/):
- wxPanel(parent, id, pos, size),
+ const wxSize& size /*= wxDefaultSize*/,
+ Style style /*= HorizontalStereo*/,
+ float fDecayRate /*= 60.0f*/)
+: wxPanel(parent, id, pos, size),
mQueue(1024),
mWidth(size.x), mHeight(size.y),
mIsInput(isInput),
- mStyle(HorizontalStereo),
+ mStyle(style),
mDB(true),
mDBRange(ENV_DB_RANGE),
mDecay(true),
- mDecayRate(60),
+ mDecayRate(fDecayRate),
mClip(true),
mNumPeakSamplesToClip(3),
mPeakHoldDuration(3),
@@ -232,14 +234,7 @@ Meter::Meter(wxWindow* parent, wxWindowID id,
wxSystemSettings::GetColour(wxSYS_COLOUR_3DFACE);
mBkgndBrush = wxBrush(backgroundColour, wxSOLID);
- mDBRange = gPrefs->Read(wxT("/GUI/EnvdBRange"), ENV_DB_RANGE);
- mMeterRefreshRate = gPrefs->Read(wxT("/Meter/MeterRefreshRate"), 30);
- if (mIsInput) {
- mMeterDisabled = gPrefs->Read(wxT("/Meter/MeterInputDisabled"), (long)0);
- }
- else {
- mMeterDisabled = gPrefs->Read(wxT("/Meter/MeterOutputDisabled"), (long)0);
- }
+ UpdatePrefs();
mPeakPeakPen = wxPen(theTheme.Colour( clrMeterPeak), 1, wxSOLID);
mDisabledPen = wxPen(theTheme.Colour( clrMeterDisabledPen), 1, wxSOLID);
@@ -283,7 +278,10 @@ Meter::Meter(wxWindow* parent, wxWindowID id,
mRMSBrush = mDisabledBkgndBrush;
}
- CreateIcon(2);
+ // MixerTrackCluster style has no menu, so disallows SetStyle, so never needs icon.
+ if (mStyle != MixerTrackCluster)
+ CreateIcon(2);
+
mRuler.SetFonts(GetFont(), GetFont(), GetFont());
mTimer.SetOwner(this, OnMeterUpdateID);
@@ -324,14 +322,16 @@ Meter::~Meter()
void Meter::UpdatePrefs()
{
- mDBRange = gPrefs->Read(wxT("/GUI/EnvdBRange"), 60);
+ mDBRange = gPrefs->Read(wxT("/GUI/EnvdBRange"), ENV_DB_RANGE);
mMeterRefreshRate = gPrefs->Read(wxT("/Meter/MeterRefreshRate"), 30);
- if (mIsInput) {
+
+ // MixerTrackCluster style has no menu, so disallows disabling the meter.
+ if (mStyle == MixerTrackCluster)
+ mMeterDisabled = 0L;
+ else if (mIsInput)
mMeterDisabled = gPrefs->Read(wxT("/Meter/MeterInputDisabled"), (long)0);
- }
- else {
+ else
mMeterDisabled = gPrefs->Read(wxT("/Meter/MeterOutputDisabled"), (long)0);
- }
}
void Meter::OnErase(wxEraseEvent &evt)
@@ -368,6 +368,9 @@ void Meter::OnSize(wxSizeEvent &evt)
void Meter::OnMouse(wxMouseEvent &evt)
{
+ if (mStyle == MixerTrackCluster) // MixerTrackCluster style has no menu.
+ return;
+
#if wxUSE_TOOLTIPS // Not available in wxX11
if (evt.Leaving()){
GetActiveProject()->TP_DisplayStatusMessage(wxT(""));
@@ -382,57 +385,51 @@ void Meter::OnMouse(wxMouseEvent &evt)
}
#endif
- #if WANT_METER_MENU
- if (evt.RightDown() ||
- (evt.ButtonDown() && mMenuRect.Contains(evt.m_x, evt.m_y)))
- {
- wxMenu *menu = new wxMenu();
- // Note: these should be kept in the same order as the enum
- if (mMeterDisabled)
- menu->Append(OnDisableMeterID, _("Enable Meter"));
+ if (evt.RightDown() ||
+ (evt.ButtonDown() && mMenuRect.Contains(evt.m_x, evt.m_y)))
+ {
+ wxMenu *menu = new wxMenu();
+ // Note: these should be kept in the same order as the enum
+ if (mMeterDisabled)
+ menu->Append(OnDisableMeterID, _("Enable Meter"));
+ else
+ menu->Append(OnDisableMeterID, _("Disable Meter"));
+ if (mIsInput) {
+ if (gAudioIO->IsMonitoring())
+ menu->Append(OnMonitorID, _("Stop Monitoring"));
else
- menu->Append(OnDisableMeterID, _("Disable Meter"));
- if (mIsInput) {
- if (gAudioIO->IsMonitoring())
- menu->Append(OnMonitorID, _("Stop Monitoring"));
- else
- menu->Append(OnMonitorID, _("Start Monitoring"));
- }
- menu->AppendSeparator();
-
- menu->Append(OnHorizontalID, _("Horizontal Stereo"));
- menu->Append(OnVerticalID, _("Vertical Stereo"));
- //menu->Append(OnMultiID, _("Vertical Multichannel"));
- //menu->Append(OnEqualizerID, _("Equalizer"));
- //menu->Append(OnWaveformID, _("Waveform"));
- //menu->Enable(OnHorizontalID + mStyle, false);
- menu->Enable(mStyle==VerticalStereo? OnVerticalID: OnHorizontalID, false);
- menu->AppendSeparator();
-
- menu->Append(OnLinearID, _("Linear"));
- menu->Append(OnDBID, _("dB"));
- menu->Enable(mDB? OnDBID: OnLinearID, false);
- //menu->AppendSeparator();
- //menu->Append(OnClipID, _("Turn on clipping"));
- //menu->AppendSeparator();
- //menu->Append(OnFloatID, _("Float Window"));
-
- menu->AppendSeparator();
- menu->Append(OnPreferencesID, _("Preferences..."));
-
-
- if (evt.RightDown())
- PopupMenu(menu, evt.m_x, evt.m_y);
- #if WANT_METER_MENU
- else
- PopupMenu(menu, mMenuRect.x + 1, mMenuRect.y + mMenuRect.height + 1);
- #endif // WANT_METER_MENU
- delete menu;
- }
- else
- #endif // WANT_METER_MENU
-
- if (evt.ButtonDown()) {
+ menu->Append(OnMonitorID, _("Start Monitoring"));
+ }
+ menu->AppendSeparator();
+
+ menu->Append(OnHorizontalID, _("Horizontal Stereo"));
+ menu->Append(OnVerticalID, _("Vertical Stereo"));
+ //menu->Append(OnMultiID, _("Vertical Multichannel"));
+ //menu->Append(OnEqualizerID, _("Equalizer"));
+ //menu->Append(OnWaveformID, _("Waveform"));
+ //menu->Enable(OnHorizontalID + mStyle, false);
+ menu->Enable(mStyle==VerticalStereo? OnVerticalID: OnHorizontalID, false);
+ menu->AppendSeparator();
+
+ menu->Append(OnLinearID, _("Linear"));
+ menu->Append(OnDBID, _("dB"));
+ menu->Enable(mDB? OnDBID: OnLinearID, false);
+ //menu->AppendSeparator();
+ //menu->Append(OnClipID, _("Turn on clipping"));
+ //menu->AppendSeparator();
+ //menu->Append(OnFloatID, _("Float Window"));
+
+ menu->AppendSeparator();
+ menu->Append(OnPreferencesID, _("Preferences..."));
+
+
+ if (evt.RightDown())
+ PopupMenu(menu, evt.m_x, evt.m_y);
+ else
+ PopupMenu(menu, mMenuRect.x + 1, mMenuRect.y + mMenuRect.height + 1);
+ delete menu;
+ }
+ else if (evt.ButtonDown()) {
if (mIsInput)
StartMonitoring();
}
@@ -440,6 +437,9 @@ void Meter::OnMouse(wxMouseEvent &evt)
void Meter::SetStyle(Meter::Style newStyle)
{
+ // MixerTrackCluster disallows style change.
+ if (mStyle == MixerTrackCluster)
+ return;
mStyle = newStyle;
mLayoutValid = false;
Refresh(true);
@@ -463,7 +463,7 @@ void Meter::Reset(double sampleRate, bool resetClipping)
while(mQueue.Get(msg)) {
}
- mTimer.Start(25); // every 25 ms -> ~40 updates per second
+ mTimer.Start(1000 / mMeterRefreshRate);
mLayoutValid = false;
Refresh(false);
@@ -554,6 +554,57 @@ void Meter::UpdateDisplay(int numChannels, int numFrames, float *sampleData)
mQueue.Put(msg);
}
+void Meter::UpdateDisplay(int numChannels, int numFrames,
+ // Need to make these double-indexed arrays if we handle more than 2 channels.
+ float* maxLeft, float* rmsLeft,
+ float* maxRight, float* rmsRight,
+ const sampleCount kSampleCount)
+{
+ int i, j;
+ int num = intmin(numChannels, mNumBars);
+ MeterUpdateMsg msg;
+
+ msg.numFrames = kSampleCount;
+ for(j=0; j<mNumBars; j++) {
+ msg.peak[j] = 0.0;
+ msg.rms[j] = 0.0;
+ msg.clipping[j] = false;
+ msg.headPeakCount[j] = 0;
+ msg.tailPeakCount[j] = 0;
+ }
+
+ for(i=0; i<numFrames; i++) {
+ for(j=0; j<num; j++) {
+ msg.peak[j] = floatMax(msg.peak[j], ((j == 0) ? maxLeft[i] : maxRight[i]));
+ msg.rms[j] = floatMax(msg.rms[j], ((j == 0) ? rmsLeft[i] : rmsRight[i]));
+
+ // In addition to looking for mNumPeakSamplesToClip peaked
+ // samples in a row, also send the number of peaked samples
+ // at the head and tail, in case there's a run
+ // of peaked samples that crosses block boundaries.
+ if (fabs((j == 0) ? maxLeft[i] : maxRight[i]) >= MAX_AUDIO)
+ {
+ if (msg.headPeakCount[j]==i)
+ msg.headPeakCount[j]++;
+ msg.tailPeakCount[j]++;
+ if (msg.tailPeakCount[j] > mNumPeakSamplesToClip)
+ msg.clipping[j] = true;
+ }
+ else
+ msg.tailPeakCount[j] = 0;
+ }
+ }
+
+ if (mDB) {
+ for(j=0; j<mNumBars; j++) {
+ msg.peak[j] = ToDB(msg.peak[j], mDBRange);
+ msg.rms[j] = ToDB(msg.rms[j], mDBRange);
+ }
+ }
+
+ mQueue.Put(msg);
+}
+
void Meter::OnMeterUpdate(wxTimerEvent &evt)
{
MeterUpdateMsg msg;
@@ -569,6 +620,8 @@ void Meter::OnMeterUpdate(wxTimerEvent &evt)
double deltaT = msg.numFrames / mRate;
int j;
+ // <Why is this in the loop, rather than top of the method?
+ // Or just a condition on the following, so we pop all the msgs while disabled?>
if (mMeterDisabled)
return;
//wxLogDebug(wxT("Pop: %s"), msg.toString().c_str());
@@ -592,7 +645,8 @@ void Meter::OnMeterUpdate(wxTimerEvent &evt)
mBar[j].peak = msg.peak[j];
// This smooths out the RMS signal
- mBar[j].rms = mBar[j].rms * 0.9 + msg.rms[j] * 0.1;
+ float smooth = pow(0.9, (double)msg.numFrames/1024.0);
+ mBar[j].rms = mBar[j].rms * smooth + msg.rms[j] * (1.0 - smooth);
if (mT - mBar[j].peakHoldTime > mPeakHoldDuration ||
mBar[j].peak > mBar[j].peakHold) {
@@ -652,10 +706,17 @@ void Meter::ResetBar(MeterBar *b, bool resetClipping)
void Meter::HandleLayout()
{
- int iconWidth = mIcon->GetWidth();
- int iconHeight = mIcon->GetHeight();
- int menuWidth = 17;
- int menuHeight = 14;
+ int iconWidth = 0;
+ int iconHeight = 0;
+ int menuWidth = 0;
+ int menuHeight = 0;
+ if (mStyle != MixerTrackCluster)
+ {
+ iconWidth = mIcon->GetWidth();
+ iconHeight = mIcon->GetHeight();
+ menuWidth = 17;
+ menuHeight = 11;
+ }
int width = mWidth;
int height = mHeight;
int left = 0, top = 0;
@@ -671,20 +732,25 @@ void Meter::HandleLayout()
wxPrintf(wxT("Style not handled yet!\n"));
break;
case VerticalStereo:
- #if WANT_METER_MENU
- mMenuRect = wxRect(mWidth - menuWidth - 5, mHeight - menuHeight - 2,
- menuWidth, menuHeight);
- if (mHeight < (menuHeight + iconHeight + 8))
- mIconPos = wxPoint(-999, -999); // Don't display
- else
- #endif // WANT_METER_MENU
- mIconPos = wxPoint(mWidth - iconWidth - 1, 1);
+ mMenuRect = wxRect(mWidth - menuWidth - 5, mHeight - menuHeight - 2,
+ menuWidth, menuHeight);
+ if (mHeight < (menuHeight + iconHeight + 8))
+ mIconPos = wxPoint(-999, -999); // Don't display
+ else
+ mIconPos = wxPoint(mWidth - iconWidth - 1, 1);
width = intmin(mWidth-(iconWidth+2), mWidth-(menuWidth+3));
+ case MixerTrackCluster:
+ // Doesn't show menu, icon, or L/R labels,
+ // but otherwise like VerticalStereo.
+
if (width >= mLeftSize.x + mRightSize.x + 24) {
- mLeftTextPos = wxPoint(2, height-2-mLeftSize.y);
+ if (mStyle != MixerTrackCluster)
+ {
+ mLeftTextPos = wxPoint(2, height-2-mLeftSize.y);
+ left += mLeftSize.x+4;
+ }
mRightTextPos = wxPoint(width-mLeftSize.x, height-2-mLeftSize.y);
- left += mLeftSize.x+4;
- width -= mLeftSize.x + mRightSize.x + 8;
+ width -= mLeftSize.x + mRightSize.x + 8; //vvvvv ...but then -8 in UmixIt? -- for vertical only?
}
barw = (width-2)/2;
barh = height - 4;
@@ -720,24 +786,19 @@ void Meter::HandleLayout()
mRuler.SetRange(1, 0);
mRuler.SetFormat(Ruler::RealFormat);
}
- #if WANT_METER_MENU
+ if (mStyle != MixerTrackCluster) // MixerTrackCluster style has no menu.
mRuler.OfflimitsPixels(mMenuRect.y-mBar[1].r.y, mBar[1].r.height);
- #endif // WANT_METER_MENU
break;
case HorizontalStereo:
if (mWidth < menuWidth + iconWidth + 8) {
mIconPos = wxPoint(-999, -999); // Don't display icon
- #if WANT_METER_MENU
- mMenuRect = wxRect(2, mHeight - menuHeight - 2,
- menuWidth, menuHeight);
- #endif // WANT_METER_MENU
+ mMenuRect = wxRect(2, mHeight - menuHeight - 2,
+ menuWidth, menuHeight);
}
else {
mIconPos = wxPoint(2, mHeight - iconHeight);
- #if WANT_METER_MENU
- mMenuRect = wxRect(iconWidth + 2, mHeight - menuHeight - 5,
- menuWidth, menuHeight);
- #endif // WANT_METER_MENU
+ mMenuRect = wxRect(iconWidth + 2, mHeight - menuHeight - 5,
+ menuWidth, menuHeight);
}
height = intmin(height-(menuHeight+3), height-iconHeight) - 2;
left = 2 + intmax(mLeftSize.x, mRightSize.x);
@@ -778,9 +839,7 @@ void Meter::HandleLayout()
mRuler.SetRange(0, 1);
mRuler.SetFormat(Ruler::RealFormat);
}
- #if WANT_METER_MENU
- mRuler.OfflimitsPixels(0, mMenuRect.x+mMenuRect.width-4);
- #endif // WANT_METER_MENU
+ mRuler.OfflimitsPixels(0, mMenuRect.x+mMenuRect.width-4);
break;
case Waveform:
mNumBars = 0;
@@ -808,7 +867,9 @@ void Meter::HandleLayout()
mAllBarsRect = wxRect(left, top, right-left+1, bottom-top+1);
}
- CreateIcon(mIconPos.y % 4);
+ // MixerTrackCluster style has no popup, so disallows SetStyle, so never needs icon.
+ //vvvvv There's an ASSERT failure if this: if (mStyle != MixerTrackCluster)
+ CreateIcon(mIconPos.y % 4);
mLayoutValid = true;
}
@@ -818,9 +879,21 @@ void Meter::HandlePaint(wxDC &dc)
int i;
dc.SetFont(GetFont());
- if (mLeftSize.x == 0) {
- dc.GetTextExtent(mLeftText, &mLeftSize.x, &mLeftSize.y);
- dc.GetTextExtent(mRightText, &mRightSize.x, &mRightSize.y);
+ if (mLeftSize.x == 0) { // Not yet initialized to dc.
+ if (mStyle != MixerTrackCluster) // MixerTrackCluster style has no L/R labels.
+ {
+ dc.GetTextExtent(mLeftText, &mLeftSize.x, &mLeftSize.y);
+ dc.GetTextExtent(mRightText, &mRightSize.x, &mRightSize.y);
+ }
+ if ((mStyle == VerticalStereo) || (mStyle == MixerTrackCluster)) // VerticalMulti?
+ {
+ // For any vertical style, also need mRightSize big enough for Ruler width.
+ int rulerWidth;
+ int rulerHeight;
+ dc.GetTextExtent(wxT("-88"), &rulerWidth, &rulerHeight); // -88 is nice and wide.
+ if (mRightSize.x < rulerWidth)
+ mRightSize.x = rulerWidth;
+ }
}
if (!mLayoutValid)
@@ -839,43 +912,36 @@ void Meter::HandlePaint(wxDC &dc)
dc.DrawRectangle(0, 0, mWidth, mHeight);
#endif
- dc.DrawBitmap(*mIcon, mIconPos.x, mIconPos.y, true);
+ // MixerTrackCluster style has no icon or menu.
+ if (mStyle != MixerTrackCluster)
+ {
+ dc.DrawBitmap(*mIcon, mIconPos.x, mIconPos.y, true);
- #if WANT_METER_MENU
// Draws a beveled button and a down pointing triangle.
// The style and sizing matches the ones in the title
// bar of the waveform left-hand-side panels.
- {
- wxRect r = mMenuRect;
- AColor::Bevel(dc, true, r);
- dc.SetPen(*wxBLACK_PEN);
- int triWid = 11;
- int xStart = r.x+3;
- int yStart = r.y+4;
- for(i=0;i<=triWid/2;i++){
- dc.DrawLine(xStart+i, yStart+i, xStart + triWid - i,yStart+i);
- }
- }
- if (mNumBars>0)
- mRuler.Draw(dc);
- #else
- // Label as "Mix Volume" and "Input Volume" for Camp Jam.
- int nFontSize = this->GetFont().GetPointSize();
- int nXPos = mIconPos.x + mIcon->GetWidth() + 8;
- int nYPos = mIconPos.y + (mIcon->GetHeight() - nFontSize - 6)/2;
- if (nYPos < 0)
- nYPos = 0;
- if (mIsInput)
- dc.DrawText(_("Input Volume"), nXPos, nYPos);
- else
- dc.DrawText(_("Mix Volume"), nXPos, nYPos);
- #endif // WANT_METER_MENU
-
- dc.SetFont(GetFont());
- dc.DrawText(mLeftText, mLeftTextPos.x, mLeftTextPos.y);
- dc.DrawText(mRightText, mRightTextPos.x, mRightTextPos.y);
+ wxRect r = mMenuRect;
+ AColor::Bevel(dc, true, r);
+ dc.SetBrush(*wxBLACK_BRUSH);
+ dc.SetPen(*wxBLACK_PEN);
+ AColor::Arrow(dc,
+ r.x + 3,
+ r.y + 5,
+ 10);
+ }
+
+ if (mNumBars>0)
+ mRuler.Draw(dc);
+ // MixerTrackCluster style has no L/R labels.
+ if (mStyle != MixerTrackCluster)
+ {
+ dc.SetFont(GetFont());
+ dc.DrawText(mLeftText, mLeftTextPos.x, mLeftTextPos.y);
+ dc.DrawText(mRightText, mRightTextPos.x, mRightTextPos.y);
+ }
+
for(i=0; i<mNumBars; i++)
DrawMeterBar(dc, &mBar[i]);
}
@@ -920,9 +986,9 @@ void Meter::DrawMeterBar(wxDC &dc, MeterBar *meterBar)
AColor::Dark(&dc, false);
for(i=0; i<mNumTicks; i++)
if (meterBar->vert)
- dc.DrawLine(r.x+r.width/2-1, mTick[i], r.x+r.width/2+1, mTick[i]);
+ AColor::Line(dc, r.x+r.width/2-1, mTick[i], r.x+r.width/2+1, mTick[i]);
else
- dc.DrawLine(mTick[i], r.y+r.height/2-1, mTick[i], r.y+r.height/2+1);
+ AColor::Line(dc, mTick[i], r.y+r.height/2-1, mTick[i], r.y+r.height/2+1);
*/
dc.SetBrush(*wxTRANSPARENT_BRUSH);
@@ -930,18 +996,18 @@ void Meter::DrawMeterBar(wxDC &dc, MeterBar *meterBar)
if (meterBar->vert) {
int ht = (int)(meterBar->peakHold * r.height + 0.5);
- dc.DrawLine(r.x+1, r.y + r.height - ht,
- r.x+r.width, r.y + r.height - ht);
+ AColor::Line(dc, r.x+1, r.y + r.height - ht,
+ r.x+r.width-1, r.y + r.height - ht);
if (ht > 1)
- dc.DrawLine(r.x+1, r.y + r.height - ht + 1,
- r.x+r.width, r.y + r.height - ht + 1);
+ AColor::Line(dc, r.x+1, r.y + r.height - ht + 1,
+ r.x+r.width-1, r.y + r.height - ht + 1);
dc.SetPen(mPeakPeakPen);
ht = (int)(meterBar->peakPeakHold * r.height + 0.5);
- dc.DrawLine(r.x+1, r.y + r.height - ht,
- r.x+r.width, r.y + r.height - ht);
+ AColor::Line(dc, r.x+1, r.y + r.height - ht,
+ r.x+r.width-1, r.y + r.height - ht);
if (ht > 1)
- dc.DrawLine(r.x+1, r.y + r.height - ht + 1,
- r.x+r.width, r.y + r.height - ht + 1);
+ AColor::Line(dc, r.x+1, r.y + r.height - ht + 1,
+ r.x+r.width-1, r.y + r.height - ht + 1);
dc.SetPen(mPen);
ht = (int)(meterBar->peak * r.height + 0.5);
@@ -954,15 +1020,15 @@ void Meter::DrawMeterBar(wxDC &dc, MeterBar *meterBar)
}
else {
int wd = (int)(meterBar->peakHold * r.width + 0.5);
- dc.DrawLine(r.x + wd, r.y + 1, r.x + wd, r.y + r.height);
+ AColor::Line(dc, r.x + wd, r.y + 1, r.x + wd, r.y + r.height - 1);
if (wd > 1)
- dc.DrawLine(r.x + wd - 1, r.y + 1, r.x + wd - 1, r.y + r.height);
+ AColor::Line(dc, r.x + wd - 1, r.y + 1, r.x + wd - 1, r.y + r.height - 1);
dc.SetPen(mPeakPeakPen);
wd = (int)(meterBar->peakPeakHold * r.width + 0.5);
- dc.DrawLine(r.x + wd, r.y + 1, r.x + wd, r.y + r.height);
+ AColor::Line(dc, r.x + wd, r.y + 1, r.x + wd, r.y + r.height - 1);
if (wd > 1)
- dc.DrawLine(r.x + wd - 1, r.y + 1, r.x + wd - 1, r.y + r.height);
+ AColor::Line(dc, r.x + wd - 1, r.y + 1, r.x + wd - 1, r.y + r.height - 1);
dc.SetPen(mPen);
wd = (int)(meterBar->peak * r.width + 0.5);
@@ -980,11 +1046,11 @@ void Meter::DrawMeterBar(wxDC &dc, MeterBar *meterBar)
dc.SetBrush(*wxTRANSPARENT_BRUSH);
dc.SetPen(mLightPen);
- dc.DrawLine(r.x, r.y, r.x + r.width, r.y);
- dc.DrawLine(r.x, r.y, r.x, r.y + r.height);
+ AColor::Line(dc, r.x, r.y, r.x + r.width, r.y);
+ AColor::Line(dc, r.x, r.y, r.x, r.y + r.height);
dc.SetPen(mDarkPen);
- dc.DrawLine(r.x + r.width, r.y, r.x + r.width, r.y + r.height);
- dc.DrawLine(r.x, r.y + r.height, r.x + r.width + 1, r.y + r.height);
+ AColor::Line(dc, r.x + r.width, r.y, r.x + r.width, r.y + r.height);
+ AColor::Line(dc, r.x, r.y + r.height, r.x + r.width, r.y + r.height);
if (mClip) {
if (meterBar->clipping)
@@ -1006,12 +1072,10 @@ void Meter::StartMonitoring()
if (gAudioIO->IsMonitoring())
gAudioIO->StopStream();
else {
- #if WANT_METER_MENU
- if (mMeterDisabled){
- wxCommandEvent dummy;
- OnDisableMeter(dummy);
- }
- #endif
+ if (mMeterDisabled){
+ wxCommandEvent dummy;
+ OnDisableMeter(dummy);
+ }
AudacityProject *p = GetActiveProject();
if (p) {
@@ -1028,7 +1092,6 @@ void Meter::StartMonitoring()
}
-#if WANT_METER_MENU
//
// Pop-up menu handlers
//
@@ -1138,7 +1201,7 @@ void Meter::OnPreferences(wxCommandEvent &evt)
{
wxNumberEntryDialog
d(this,
- _("This determines how often the meter is refreshed.\nIf you have a slower PC you may want to select a\nlower refresh rate (30 per second or lower), so that\naudio qualtiy is not affected by the meter display."),
+ _("Higher refresh rates make the meter show more frequent\nchanges. A rate of 30 per second or less should prevent\nthe meter affecting audio quality on slower machines."),
_("Meter refresh rate per second [1-100]: "),
_("Meter Preferences"),
mMeterRefreshRate,
@@ -1147,7 +1210,14 @@ void Meter::OnPreferences(wxCommandEvent &evt)
#if defined(__WXMAC__)
// WXMAC doesn't support wxFRAME_FLOAT_ON_PARENT, so we do
- SetWindowClass((WindowRef)d.MacGetWindowRef(), kFloatingWindowClass);
+ //
+ // LL: I've commented this out because if you have, for instance, the meter
+ // toolbar undocked and large and then you open a dialog like an effect,
+ // the dialog may appear behind the dialog and you can't move either one.
+ //
+ // However, I'm leaving it here because I don't remember why I'd included
+ // it in the first place.
+// SetWindowClass((WindowRef)d.MacGetWindowRef(), kFloatingWindowClass);
#endif
if (d.ShowModal() == wxID_OK) {
@@ -1158,8 +1228,6 @@ void Meter::OnPreferences(wxCommandEvent &evt)
mTimer.Start(1000 / mMeterRefreshRate);
}
-#endif // WANT_METER_MENU
-
// Indentation settings for Vim and Emacs.
// Please do not modify past this point.
//
diff --git a/src/widgets/Meter.h b/src/widgets/Meter.h
index 7cf85c3..b0a424a 100644
--- a/src/widgets/Meter.h
+++ b/src/widgets/Meter.h
@@ -1,4 +1,4 @@
-/**********************************************************************
+ /**********************************************************************
Audacity: A Digital Audio Editor
@@ -21,6 +21,7 @@
#include <wx/timer.h>
#include "../SampleFormat.h"
+#include "../Sequence.h"
#include "Ruler.h"
// Increase this when we add support for multichannel meters
@@ -84,15 +85,6 @@ class Meter : public wxPanel
DECLARE_DYNAMIC_CLASS(Meter)
public:
- Meter(wxWindow* parent, wxWindowID id,
- bool isInput,
- const wxPoint& pos = wxDefaultPosition,
- const wxSize& size = wxDefaultSize);
-
- ~Meter();
-
- void UpdatePrefs();
-
// These should be kept in the same order as they appear
// in the menu
enum Style {
@@ -100,9 +92,22 @@ class Meter : public wxPanel
VerticalStereo,
VerticalMulti,
Equalizer,
- Waveform
+ Waveform,
+ MixerTrackCluster // Doesn't show menu, icon, or L/R labels, but otherwise like VerticalStereo.
};
+
+ Meter(wxWindow* parent, wxWindowID id,
+ bool isInput,
+ const wxPoint& pos = wxDefaultPosition,
+ const wxSize& size = wxDefaultSize,
+ Style style = HorizontalStereo,
+ float fDecayRate = 60.0f);
+
+ ~Meter();
+
+ void UpdatePrefs();
+
Style GetStyle() { return mStyle; }
void SetStyle(Style newStyle);
@@ -112,6 +117,7 @@ class Meter : public wxPanel
* different thread (like from an audio I/O callback).
*/
void Reset(double sampleRate, bool resetClipping);
+
/** \brief Update the meters with a block of audio data
*
* Process the supplied block of audio data, extracting the peak and RMS
@@ -119,6 +125,8 @@ class Meter : public wxPanel
* clipping that lies on block boundaries.
* This method is thread-safe! Feel free to call from a different thread
* (like from an audio I/O callback).
+ *
+ * First overload:
* \param numChannels The number of channels of audio being played back or
* recorded.
* \param numFrames The number of frames (samples) in this data block. It is
@@ -129,9 +137,17 @@ class Meter : public wxPanel
* then the second sample of channel 1, second sample of channel 2, and so
* to the second sample of channel (numChannels). The last sample in the
* array will be the (numFrames) sample for channel (numChannels).
+ *
+ * The second overload is for ease of use in MixerBoard.
*/
void UpdateDisplay(int numChannels,
int numFrames, float *sampleData);
+ void UpdateDisplay(int numChannels, int numFrames,
+ // Need to make these double-indexed max and min arrays if we handle more than 2 channels.
+ float* maxLeft, float* rmsLeft,
+ float* maxRight, float* rmsRight,
+ const sampleCount kSampleCount);
+
/** \brief Find out if the level meter is disabled or not.
*
* This method is thread-safe! Feel free to call from a
diff --git a/src/widgets/ProgressDialog.cpp b/src/widgets/ProgressDialog.cpp
index ead58ad..2ffe5ea 100644
--- a/src/widgets/ProgressDialog.cpp
+++ b/src/widgets/ProgressDialog.cpp
@@ -3,8 +3,15 @@
Audacity: A Digital Audio Editor
ProgressDialog.cpp
+
+ Copyright
+ Leland Lucius
+ Vaughan Johnson
- Leland Lucius
+ 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.
*******************************************************************//**
@@ -981,12 +988,13 @@ static const unsigned char beep[] =
BEGIN_EVENT_TABLE(ProgressDialog, wxDialog)
EVT_BUTTON(wxID_CANCEL, ProgressDialog::OnCancel)
+ EVT_BUTTON(wxID_OK, ProgressDialog::OnStop)
END_EVENT_TABLE()
//
// Constructor
//
-ProgressDialog::ProgressDialog(const wxString & title, const wxString & message)
+ProgressDialog::ProgressDialog(const wxString & title, const wxString & message, ProgressDialogFlags flags)
: wxDialog(wxTheApp->GetTopWindow(),
wxID_ANY,
title,
@@ -1001,29 +1009,30 @@ ProgressDialog::ProgressDialog(const wxString & title, const wxString & message)
wxWindow *w;
wxSize ds;
- SetExtraStyle(GetExtraStyle() | wxWS_EX_TRANSIENT);
-
// There's a problem where the focus is not returned to the window that had
// it before creating this object. The reason is not entirely understood
// but if the dialog window never gets shown then the focus does not get
// returned to the original window. It seems to have something to do with
// wxWindowDisabler as the problem doesn't occur when it isn't created.
//
- // This only seems to be a problem on OSX and GTK.
- //
// This never used to be a problem for us because we didn't actually create
// the wxProgressDialog until after the elapsed time reached .5 seconds.
// This also meant that the app modal state was not established until .5
// seconds had passed. This left a small window where the user would be able
// to interact with the main window and possibly do things like get two
// effects running at the same time.
- //
- // The resolution (workaround...hackage) seems to be that this dialog MUST
- // have a parent and that we set the focus back to that parent when we're done.
- //
- // Therefore we use whatever wxApp::GetTopWindow() returns as the parent. The
- // only time this will be NULL is when Audacity is either starting or stopping.
- // In either case, it doesn't really matter where focus winds up.
+
+ mHadFocus = wxWindow::FindFocus();
+
+#if defined(__WXGTK__)
+ // Under GTK, when applying any effect that prompts the user, it's more than
+ // like that FindFocus() will return NULL. So, make sure something has focus.
+ if (GetParent()) {
+ GetParent()->SetFocus();
+ }
+#endif
+
+ SetExtraStyle(GetExtraStyle() | wxWS_EX_TRANSIENT);
v = new wxBoxSizer(wxVERTICAL);
@@ -1092,9 +1101,26 @@ ProgressDialog::ProgressDialog(const wxString & title, const wxString & message)
v->Add(g, 0, wxALIGN_CENTER | wxLEFT | wxRIGHT | wxBOTTOM, 10);
ds.y += mRemaining->GetSize().y + 10;
- w = new wxButton(this, wxID_CANCEL, _("Cancel"));
- v->Add(w, 0, wxALIGN_RIGHT | wxRIGHT | wxBOTTOM, 10);
+ wxBoxSizer *h = new wxBoxSizer(wxHORIZONTAL);
+
+ if (!(flags & pdlgHideStopButton))
+ {
+ w = new wxButton(this, wxID_OK, _("Stop"));
+ h->Add(w, 0, wxALIGN_RIGHT | wxRIGHT | wxBOTTOM, 10);
+ ds.x += w->GetSize().x + 10;
+ }
+
+ if (!(flags & pdlgHideCancelButton))
+ {
+ w = new wxButton(this, wxID_CANCEL, _("Cancel"));
+ h->Add(w, 0, wxALIGN_RIGHT | wxRIGHT | wxBOTTOM, 10);
+ ds.x += w->GetSize().x + 10;
+ }
+
+ v->Add(h, 0, wxALIGN_RIGHT | wxRIGHT | wxBOTTOM, 10);
+
ds.y += w->GetSize().y + 10;
+
SetSizerAndFit(v);
wxClientDC dc(this);
@@ -1109,6 +1135,7 @@ ProgressDialog::ProgressDialog(const wxString & title, const wxString & message)
mStartTime = wxGetLocalTimeMillis().GetValue();
mLastUpdate = mStartTime;
mCancel = false;
+ mStop = false;
Show(false);
@@ -1136,9 +1163,17 @@ ProgressDialog::~ProgressDialog()
}
+#if defined(__WXGTK__)
+ // Under GTK, when applying any effect that prompts the user, it's more than
+ // like that FindFocus() will return NULL. So, make sure something has focus.
if (GetParent()) {
GetParent()->SetFocus();
}
+#endif
+
+ if (mHadFocus) {
+ mHadFocus->SetFocus();
+ }
}
//
@@ -1177,12 +1212,17 @@ ProgressDialog::Show(bool show)
//
// Update the time and, optionally, the message
//
-bool
+int
ProgressDialog::Update(int value, const wxString & message)
{
if (mCancel)
{
- return false;
+ // for compatibility with old Update, that returned false on cancel
+ return eProgressCancelled;
+ }
+ else if (mStop)
+ {
+ return eProgressStopped;
}
SetMessage(message);
@@ -1227,13 +1267,13 @@ ProgressDialog::Update(int value, const wxString & message)
wxYieldIfNeeded();
- return true;
+ return eProgressSuccess;
}
//
// Update the time and, optionally, the message
//
-bool
+int
ProgressDialog::Update(double current, const wxString & message)
{
return Update((int)(current * 1000), message);
@@ -1242,7 +1282,7 @@ ProgressDialog::Update(double current, const wxString & message)
//
// Update the time and, optionally, the message
//
-bool
+int
ProgressDialog::Update(wxULongLong_t current, wxULongLong_t total, const wxString & message)
{
return Update((int)(current * 1000 / total), message);
@@ -1251,7 +1291,7 @@ ProgressDialog::Update(wxULongLong_t current, wxULongLong_t total, const wxStrin
//
// Update the time and, optionally, the message
//
-bool
+int
ProgressDialog::Update(wxLongLong current, wxLongLong total, const wxString & message)
{
return Update((int)(current.GetValue() * 1000ll / total.GetValue()), message);
@@ -1260,7 +1300,7 @@ ProgressDialog::Update(wxLongLong current, wxLongLong total, const wxString & me
//
// Update the time and, optionally, the message
//
-bool
+int
ProgressDialog::Update(wxLongLong_t current, wxLongLong_t total, const wxString & message)
{
return Update((int)(current * 1000ll / total), message);
@@ -1269,7 +1309,7 @@ ProgressDialog::Update(wxLongLong_t current, wxLongLong_t total, const wxString
//
// Update the time and, optionally, the message
//
-bool
+int
ProgressDialog::Update(int current, int total, const wxString & message)
{
return Update((int)(current * ((double)(1000.0 / total))), message);
@@ -1278,7 +1318,7 @@ ProgressDialog::Update(int current, int total, const wxString & message)
//
// Update the time and, optionally, the message
//
-bool
+int
ProgressDialog::Update(double current, double total, const wxString & message)
{
return Update((int)(current * 1000.0 / total), message);
@@ -1305,6 +1345,14 @@ ProgressDialog::OnCancel(wxCommandEvent & e)
}
void
+ProgressDialog::OnStop(wxCommandEvent & e)
+{
+ FindWindowById(wxID_OK, this)->Disable();
+ mCancel = false;
+ mStop = true;
+}
+
+void
ProgressDialog::Beep()
{
int after;
@@ -1334,6 +1382,64 @@ ProgressDialog::Beep()
}
}
+TimerProgressDialog::TimerProgressDialog(const wxLongLong_t duration,
+ const wxString & title,
+ const wxString & message /*= wxEmptyString*/,
+ ProgressDialogFlags flags /*= pdlgEmptyFlags*/)
+: ProgressDialog(title, message, flags)
+{
+ mDuration = duration;
+}
+
+int TimerProgressDialog::Update(const wxString & message /*= wxEmptyString*/)
+{
+ if (mCancel)
+ {
+ // for compatibility with old Update, that returned false on cancel
+ return eProgressCancelled;
+ }
+ else if (mStop)
+ {
+ return eProgressStopped;
+ }
+
+ SetMessage(message);
+
+ wxLongLong_t now = wxGetLocalTimeMillis().GetValue();
+ wxLongLong_t elapsed = now - mStartTime;
+ wxLongLong_t remains = mStartTime + mDuration - now;
+
+ if (!IsShown() && elapsed > 500)
+ {
+ Show(true);
+ }
+
+ int nGaugeValue = (1000 * elapsed) / mDuration; // range = [0,1000]
+ wxASSERT((nGaugeValue >= 0) && (nGaugeValue <= 1000));
+ if (nGaugeValue != mLastValue)
+ {
+ mGauge->SetValue(nGaugeValue);
+ mLastValue = nGaugeValue;
+ }
+
+ // Only update if a full second has passed.
+ if (now - mLastUpdate > 1000)
+ {
+ wxTimeSpan tsElapsed(0, 0, 0, elapsed);
+ wxTimeSpan tsRemains(0, 0, 0, remains);
+
+ mElapsed->SetLabel(tsElapsed.Format(wxT("%H:%M:%S")));
+ mRemaining->SetLabel(tsRemains.Format(wxT("%H:%M:%S")));
+
+ mLastUpdate = now;
+ }
+
+ wxYieldIfNeeded();
+
+ return eProgressSuccess;
+}
+
+
// Indentation settings for Vim and Emacs and unique identifier for Arch, a
// version control system. Please do not modify past this point.
//
diff --git a/src/widgets/ProgressDialog.h b/src/widgets/ProgressDialog.h
index e4b5e6d..afafec5 100644
--- a/src/widgets/ProgressDialog.h
+++ b/src/widgets/ProgressDialog.h
@@ -3,8 +3,15 @@
Audacity: A Digital Audio Editor
ProgressDialog.h
+
+ Copyright
+ Leland Lucius
+ Vaughan Johnson
- Leland Lucius
+ 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.
*************************************************************************/
@@ -19,6 +26,21 @@
#include <wx/stattext.h>
#include <wx/utils.h>
+enum
+{
+ eProgressCancelled = 0, //<! User says that whatever is happening is undesirable and shouldn't have happened at all
+ eProgressSuccess, //<! User says nothing, everything works fine, continue doing whatever we're doing
+ eProgressFailed, //<! Something has gone wrong, we should stop and cancel everything we did
+ eProgressStopped //<! Nothing is wrong, but user says we should stop now and leave things as they are now
+};
+
+enum ProgressDialogFlags
+{
+ pdlgEmptyFlags = 0x00000000,
+ pdlgHideStopButton = 0x00000001,
+ pdlgHideCancelButton = 0x00000002
+} ;
+
////////////////////////////////////////////////////////////
/// ProgressDialog Class
////////////////////////////////////////////////////////////
@@ -28,41 +50,58 @@ class AUDACITY_DLL_API ProgressDialog:public wxDialog
public:
- ProgressDialog(const wxString & title, const wxString & message = wxEmptyString);
+ ProgressDialog(const wxString & title, const wxString & message = wxEmptyString, ProgressDialogFlags flags = pdlgEmptyFlags);
virtual ~ProgressDialog();
bool Show(bool show = true);
- bool Update(int value, const wxString & message = wxEmptyString);
- bool Update(double current, const wxString & message = wxEmptyString);
- bool Update(double current, double total, const wxString & message = wxEmptyString);
- bool Update(wxULongLong_t current, wxULongLong_t total, const wxString & message = wxEmptyString);
- bool Update(wxLongLong current, wxLongLong total, const wxString & message = wxEmptyString);
- bool Update(wxLongLong_t current, wxLongLong_t total, const wxString & message = wxEmptyString);
- bool Update(int current, int total, const wxString & message = wxEmptyString);
+ int Update(int value, const wxString & message = wxEmptyString);
+ int Update(double current, const wxString & message = wxEmptyString);
+ int Update(double current, double total, const wxString & message = wxEmptyString);
+ int Update(wxULongLong_t current, wxULongLong_t total, const wxString & message = wxEmptyString);
+ int Update(wxLongLong current, wxLongLong total, const wxString & message = wxEmptyString);
+ int Update(wxLongLong_t current, wxLongLong_t total, const wxString & message = wxEmptyString);
+ int Update(int current, int total, const wxString & message = wxEmptyString);
void SetMessage(const wxString & message);
private:
void OnCancel(wxCommandEvent & e);
+ void OnStop(wxCommandEvent & e);
void Beep();
- private:
- wxGauge *mGauge;
- wxStaticText *mMessage;
+ protected:
wxStaticText *mElapsed;
wxStaticText *mRemaining;
- wxWindowDisabler *mDisable;
+ wxGauge *mGauge;
wxLongLong_t mStartTime;
- wxLongLong_t mLastTime;
wxLongLong_t mLastUpdate;
- int mLastValue;
+ int mLastValue; // gauge value, range = [0,1000]
bool mCancel;
+ bool mStop;
+
+ private:
+ wxWindow *mHadFocus;
+ wxStaticText *mMessage;
+ wxWindowDisabler *mDisable;
DECLARE_EVENT_TABLE();
};
+class AUDACITY_DLL_API TimerProgressDialog : public ProgressDialog
+{
+ public:
+ TimerProgressDialog(const wxLongLong_t duration,
+ const wxString & title,
+ const wxString & message = wxEmptyString,
+ ProgressDialogFlags flags = pdlgEmptyFlags);
+ int Update(const wxString & message = wxEmptyString);
+
+ protected:
+ wxLongLong_t mDuration;
+};
+
#endif
// Indentation settings for Vim and Emacs and unique identifier for Arch, a
diff --git a/src/widgets/Ruler.cpp b/src/widgets/Ruler.cpp
index 96681a1..9ac77c9 100644
--- a/src/widgets/Ruler.cpp
+++ b/src/widgets/Ruler.cpp
@@ -135,6 +135,13 @@ Ruler::Ruler()
mUserBitLen = 0;
mValid = false;
+
+ mCustom = false;
+ mbMinor = true;
+
+ mGridLineLength = 0;
+ mMajorGrid = false;
+ mMinorGrid = false;
}
Ruler::~Ruler()
@@ -253,6 +260,11 @@ void Ruler::SetFlip(bool flip)
}
}
+void Ruler::SetMinor(bool value)
+{
+ mbMinor = value;
+}
+
void Ruler::SetFonts(const wxFont &minorFont, const wxFont &majorFont, const wxFont &minorMinorFont)
{
*mMinorMinorFont = minorMinorFont;
@@ -638,7 +650,9 @@ wxString Ruler::LabelString(double d, bool major)
s += t;
}
else {
- int secs = (int)(d);
+ // The casting to float is working around an issue where 59 seconds
+ // would show up as 60 when using g++ (Ubuntu 4.3.3-5ubuntu4) 4.3.3.
+ int secs = (int)(float)(d);
wxString t1, t2, format;
if (secs >= 3600)
@@ -650,7 +664,9 @@ wxString Ruler::LabelString(double d, bool major)
format.Printf(wxT("%%0%d.%dlf"), mDigits+3, mDigits);
else
format.Printf(wxT("%%%d.%dlf"), mDigits+3, mDigits);
- t2.Printf(format.c_str(), fmod(d, 60.0));
+ // The casting to float is working around an issue where 59 seconds
+ // would show up as 60 when using g++ (Ubuntu 4.3.3-5ubuntu4) 4.3.3.
+ t2.Printf(format.c_str(), fmod((float)d, (float)60.0));
s += t1 + t2;
}
@@ -769,6 +785,121 @@ void Ruler::Tick(int pos, double d, bool major, bool minor)
wxRect r(strLeft, strTop, strW, strH);
mRect.Union(r);
+
+}
+
+void Ruler::TickCustom(int labelIdx, bool major, bool minor)
+{
+ //This should only used in the mCustom case
+ // Many code comes from 'Tick' method: this should
+ // be optimized.
+
+ int pos;
+ wxString l;
+ wxCoord strW, strH, strD, strL;
+ int strPos, strLen, strLeft, strTop;
+
+ // FIXME: We don't draw a tick if of end of our label arrays
+ // But we shouldn't have an array of labels.
+ if( mNumMinor >= mLength )
+ return;
+ if( mNumMajor >= mLength )
+ return;
+
+ Label *label;
+ if (major)
+ label = &mMajorLabels[labelIdx];
+ else if (minor)
+ label = &mMinorLabels[labelIdx];
+ else
+ label = &mMinorMinorLabels[labelIdx];
+
+ pos = label->pos; // already stored in label class
+ l = label->text;
+ label->lx = mLeft - 1000; // don't display
+ label->ly = mTop - 1000; // don't display
+
+ mDC->SetFont(major? *mMajorFont: minor? *mMinorFont : *mMinorMinorFont);
+
+ mDC->GetTextExtent(l, &strW, &strH, &strD, &strL);
+
+ if (mOrientation == wxHORIZONTAL) {
+ strLen = strW;
+ strPos = pos - strW/2;
+ if (strPos < 0)
+ strPos = 0;
+ if (strPos + strW >= mLength)
+ strPos = mLength - strW;
+ strLeft = mLeft + strPos;
+ if (mFlip) {
+ strTop = mTop + 4;
+ mMaxHeight = max(mMaxHeight, strH + 4);
+ }
+ else {
+
+ strTop =-strH-mLead;
+ strTop = mTop- mLead+4;// More space was needed...
+ mMaxHeight = max(mMaxHeight, strH + 6);
+ }
+ }
+ else {
+ strLen = strH;
+ strPos = pos - strH/2;
+ if (strPos < 0)
+ strPos = 0;
+ if (strPos + strH >= mLength)
+ strPos = mLength - strH;
+ strTop = mTop + strPos;
+ if (mFlip) {
+ strLeft = mLeft + 5;
+ mMaxWidth = max(mMaxWidth, strW + 5);
+ }
+ else {
+
+ strLeft =-strW-6;
+ }
+ }
+
+
+ // FIXME: we shouldn't even get here if strPos < 0.
+ // Ruler code currently does not handle very small or
+ // negative sized windows (i.e. don't draw) properly.
+ if( strPos < 0 )
+ return;
+
+ // See if any of the pixels we need to draw this
+ // label is already covered
+
+ int i;
+ for(i=0; i<strLen; i++)
+ if (mBits[strPos+i])
+ return;
+
+ // If not, position the label
+
+ label->lx = strLeft;
+ label->ly = strTop;
+
+ // And mark these pixels, plus some surrounding
+ // ones (the spacing between labels), as covered
+ int leftMargin = mSpacing;
+ if (strPos < leftMargin)
+ leftMargin = strPos;
+ strPos -= leftMargin;
+ strLen += leftMargin;
+
+ int rightMargin = mSpacing;
+ if (strPos + strLen > mLength - mSpacing)
+ rightMargin = mLength - strPos - strLen;
+ strLen += rightMargin;
+
+ for(i=0; i<strLen; i++)
+ mBits[strPos+i] = 1;
+
+
+ wxRect r(strLeft, strTop, strW, strH);
+ mRect.Union(r);
+
}
void Ruler::Update()
@@ -846,23 +977,27 @@ void Ruler::Update( Envelope *speedEnv, long minSpeed, long maxSpeed )
}
// FIXME: Surely we do not need to allocate storage for the labels?
- // We can just recompute them as we need them?
- mNumMajor = 0;
- mNumMinor = 0;
- mNumMinorMinor = 0;
- if (mLength!=mLengthOld) {
- if (mMajorLabels)
- delete[] mMajorLabels;
- mMajorLabels = new Label[mLength+1];
- if (mMinorLabels)
- delete[] mMinorLabels;
- mMinorLabels = new Label[mLength+1];
- if (mMinorMinorLabels)
- delete[] mMinorMinorLabels;
- mMinorMinorLabels = new Label[mLength+1];
- mLengthOld = mLength;
+ // We can just recompute them as we need them? Yes, but only if
+ // mCustom is false!!!!
+
+ if(!mCustom) {
+ mNumMajor = 0;
+ mNumMinor = 0;
+ mNumMinorMinor = 0;
+ if (mLength!=mLengthOld) {
+ if (mMajorLabels)
+ delete[] mMajorLabels;
+ mMajorLabels = new Label[mLength+1];
+ if (mMinorLabels)
+ delete[] mMinorLabels;
+ mMinorLabels = new Label[mLength+1];
+ if (mMinorMinorLabels)
+ delete[] mMinorMinorLabels;
+ mMinorMinorLabels = new Label[mLength+1];
+ mLengthOld = mLength;
+ }
}
-
+
if (mBits)
delete[] mBits;
mBits = new int[mLength+1];
@@ -873,10 +1008,24 @@ void Ruler::Update( Envelope *speedEnv, long minSpeed, long maxSpeed )
for(i=0; i<=mLength; i++)
mBits[i] = 0;
- if(mLog==false) {
+ // *************** Label calculation routine **************
+ if(mCustom == true) {
+
+ // SET PARAMETER IN MCUSTOM CASE
+ // Works only with major labels
+
+ int numLabel = mNumMajor;
+
+ i = 0;
+ while((i<numLabel) && (i<=mLength)) {
+
+ TickCustom(i, true, false);
+ i++;
+ }
+
+ } else if(mLog==false) {
double UPP = (mMax-mMin)/mLength; // Units per pixel
-
FindLinearTickSizes(UPP);
// Left and Right Edges
@@ -919,7 +1068,7 @@ void Ruler::Update( Envelope *speedEnv, long minSpeed, long maxSpeed )
Tick(i, sg * majorInt * mMajor, true, false);
}
}
-
+
// Minor ticks
d = mMin - UPP/2;
lastD = d;
@@ -1074,7 +1223,6 @@ void Ruler::Draw(wxDC& dc)
void Ruler::Draw(wxDC& dc, Envelope *speedEnv, long minSpeed, long maxSpeed)
{
mDC = &dc;
-
if( mLength <=0 )
return;
@@ -1145,37 +1293,36 @@ void Ruler::Draw(wxDC& dc, Envelope *speedEnv, long minSpeed, long maxSpeed)
mMajorLabels[i].ly);
}
- mDC->SetFont(*mMinorFont);
-
- for(i=0; i<mNumMinor; i++) {
- int pos = mMinorLabels[i].pos;
-
- if( mbTicksAtExtremes || ((pos!=0)&&(pos!=iMaxPos)))
- {
- if (mOrientation == wxHORIZONTAL)
- {
- if (mFlip)
- mDC->DrawLine(mLeft + pos, mTop,
- mLeft + pos, mTop + 2);
- else
- mDC->DrawLine(mLeft + pos, mBottom - 2,
- mLeft + pos, mBottom);
- }
- else
+ if(mbMinor == true) {
+ mDC->SetFont(*mMinorFont);
+ for(i=0; i<mNumMinor; i++) {
+ int pos = mMinorLabels[i].pos;
+ if( mbTicksAtExtremes || ((pos!=0)&&(pos!=iMaxPos)))
{
- if (mFlip)
- mDC->DrawLine(mLeft, mTop + pos,
- mLeft + 2, mTop + pos);
- else
- mDC->DrawLine(mRight - 2, mTop + pos,
- mRight, mTop + pos);
+ if (mOrientation == wxHORIZONTAL)
+ {
+ if (mFlip)
+ mDC->DrawLine(mLeft + pos, mTop,
+ mLeft + pos, mTop + 2);
+ else
+ mDC->DrawLine(mLeft + pos, mBottom - 2,
+ mLeft + pos, mBottom);
+ }
+ else
+ {
+ if (mFlip)
+ mDC->DrawLine(mLeft, mTop + pos,
+ mLeft + 2, mTop + pos);
+ else
+ mDC->DrawLine(mRight - 2, mTop + pos,
+ mRight, mTop + pos);
+ }
}
+ if (mMinorLabels[i].text != wxT(""))
+ mDC->DrawText(mMinorLabels[i].text,
+ mMinorLabels[i].lx,
+ mMinorLabels[i].ly);
}
-
- if (mMinorLabels[i].text != wxT(""))
- mDC->DrawText(mMinorLabels[i].text,
- mMinorLabels[i].lx,
- mMinorLabels[i].ly);
}
mDC->SetFont(*mMinorMinorFont);
@@ -1210,9 +1357,98 @@ void Ruler::Draw(wxDC& dc, Envelope *speedEnv, long minSpeed, long maxSpeed)
mMinorMinorLabels[i].lx,
mMinorMinorLabels[i].ly);
}
+ }
+}
+
+// ********** Draw grid ***************************
+void Ruler::DrawGrid(wxDC& dc, int length, bool minor, bool major, int xOffset, int yOffset)
+{
+ mGridLineLength = length;
+ mMajorGrid = major;
+ mMinorGrid = minor;
+ mDC = &dc;
+
+ Update();
+
+ int gridPos;
+ wxPen gridPen;
+
+ if(mbMinor && (mMinorGrid && (mGridLineLength != 0 ))) {
+ gridPen.SetColour(178, 178, 178); // very light grey
+ mDC->SetPen(gridPen);
+ for(int i=0; i<mNumMinor; i++) {
+ gridPos = mMinorLabels[i].pos;
+ if(mOrientation == wxHORIZONTAL) {
+ if((gridPos != 0) && (gridPos != mGridLineLength))
+ mDC->DrawLine(gridPos+xOffset, yOffset, gridPos+xOffset, mGridLineLength);
+ }
+ else {
+ if((gridPos != 0) && (gridPos != mGridLineLength))
+ mDC->DrawLine(xOffset, gridPos+yOffset, mGridLineLength+xOffset, gridPos+yOffset);
+ }
+ }
+ }
+
+ if(mMajorGrid && (mGridLineLength != 0 )) {
+ gridPen.SetColour(127, 127, 127); // light grey
+ mDC->SetPen(gridPen);
+ for(int i=0; i<mNumMajor; i++) {
+ gridPos = mMajorLabels[i].pos;
+ if(mOrientation == wxHORIZONTAL) {
+ if((gridPos != 0) && (gridPos != mGridLineLength))
+ mDC->DrawLine(gridPos+xOffset, yOffset, gridPos+xOffset, mGridLineLength+yOffset);
+ }
+ else {
+ if((gridPos != 0) && (gridPos != mGridLineLength))
+ mDC->DrawLine(xOffset, gridPos+yOffset, mGridLineLength+xOffset, gridPos+yOffset);
+ }
+ }
+
+ int zeroPosition = GetZeroPosition();
+ if(zeroPosition > 0) {
+ // Draw 'zero' grid line in black
+ mDC->SetPen(*wxBLACK_PEN);
+ if(mOrientation == wxHORIZONTAL) {
+ if(zeroPosition != mGridLineLength)
+ mDC->DrawLine(zeroPosition+xOffset, yOffset, zeroPosition+xOffset, mGridLineLength+yOffset);
+ }
+ else {
+ if(zeroPosition != mGridLineLength)
+ mDC->DrawLine(xOffset, zeroPosition+yOffset, mGridLineLength+xOffset, zeroPosition+yOffset);
+ }
+ }
}
}
+int Ruler::FindZero(Label * label, const int len)
+{
+ int i = 0;
+ double d = 1.0; // arbitrary
+ wxString s;
+
+ do {
+ s = label[i].text;
+ if(!s.IsEmpty())
+ s.ToDouble(&d);
+ else
+ d = 1.0; // arbitrary, looking for some text here
+ i++;
+ } while( (i < len) && (d != 0.0) );
+
+ if(d == 0.0)
+ return (label[i - 1].pos) ;
+ else
+ return -1;
+}
+
+int Ruler::GetZeroPosition()
+{
+ int zero;
+ if((zero = FindZero(mMajorLabels, mNumMajor)) < 0)
+ zero = FindZero(mMinorLabels, mNumMinor);
+ return zero;
+}
+
void Ruler::GetMaxSize(wxCoord *width, wxCoord *height)
{
@@ -1232,6 +1468,36 @@ void Ruler::GetMaxSize(wxCoord *width, wxCoord *height)
}
+void Ruler::SetCustomMode(bool value) { mCustom = value; }
+
+void Ruler::SetCustomMajorLabels(wxArrayString *label, int numLabel, int start, int step)
+{
+ int i;
+
+ mNumMajor = numLabel;
+ mMajorLabels = new Label[numLabel];
+
+ for(i=0; i<numLabel; i++) {
+ mMajorLabels[i].text = label->Item(i);
+ mMajorLabels[i].pos = start + i*step;
+ }
+ //Remember: delete majorlabels....
+}
+
+void Ruler::SetCustomMinorLabels(wxArrayString *label, int numLabel, int start, int step)
+{
+ int i;
+
+ mNumMinor = numLabel;
+ mMinorLabels = new Label[numLabel];
+
+ for(i=0; i<numLabel; i++) {
+ mMinorLabels[i].text = label->Item(i);
+ mMinorLabels[i].pos = start + i*step;
+ }
+ //Remember: delete majorlabels....
+}
+
//
// RulerPanel
//
@@ -1249,10 +1515,6 @@ RulerPanel::RulerPanel(wxWindow* parent, wxWindowID id,
const wxSize& size /*= wxDefaultSize*/):
wxPanel(parent, id, pos, size)
{
- int width, height;
- GetClientSize(&width, &height);
-
- ruler.SetBounds(0, 0, width-1, height-1);
}
RulerPanel::~RulerPanel()
@@ -1278,14 +1540,24 @@ void RulerPanel::OnPaint(wxPaintEvent &evt)
void RulerPanel::OnSize(wxSizeEvent &evt)
{
- int width, height;
- GetClientSize(&width, &height);
-
- ruler.SetBounds(0, 0, width-1, height-1);
-
Refresh(false);
}
+// LL: We're overloading DoSetSize so that we can update the ruler bounds immediately
+// instead of waiting for a wxEVT_SIZE to come through. This is needed by (at least)
+// FreqWindow since it needs to have an updated ruler before RulerPanel gets the
+// size event.
+void RulerPanel::DoSetSize(int x, int y,
+ int width, int height,
+ int sizeFlags)
+{
+ wxPanel::DoSetSize(x, y, width, height, sizeFlags);
+
+ int w, h;
+ GetClientSize(&w, &h);
+
+ ruler.SetBounds(0, 0, w-1, h-1);
+}
/**********************************************************************
@@ -1697,7 +1969,7 @@ void AdornedRulerPanel::DrawIndicator( double pos, bool rec )
return;
}
- mIndType = ( rec ? 1 : 0 );
+ mIndType = ( rec ? 0 : 1 );
Refresh(false);
}
diff --git a/src/widgets/Ruler.h b/src/widgets/Ruler.h
index 9d4aa64..3090083 100644
--- a/src/widgets/Ruler.h
+++ b/src/widgets/Ruler.h
@@ -80,6 +80,9 @@ class AUDACITY_DLL_API Ruler {
// and a horizontal ruler hug the top (instead of bottom)
void SetFlip(bool flip);
+ // Set it to false if you don't want minor labels.
+ void SetMinor(bool value);
+
// Good defaults are provided, but you can override here
void SetFonts(const wxFont &minorFont, const wxFont &majorFont, const wxFont &minorMinorFont);
@@ -94,6 +97,18 @@ class AUDACITY_DLL_API Ruler {
//
void GetMaxSize(wxCoord *width, wxCoord *height);
+
+ // The following functions should allow a custom ruler setup:
+ // autosize is a GREAT thing, but for some applications it's
+ // useful the definition of a label array and label step by
+ // the user.
+ void SetCustomMode(bool value);
+ // If this is the case, you should provide a wxString array of labels, start
+ // label position, and labels step. The range eventually specified will be
+ // ignored.
+ void SetCustomMajorLabels(wxArrayString *label, int numLabel, int start, int step);
+ void SetCustomMinorLabels(wxArrayString *label, int numLabel, int start, int step);
+
//
// Drawing
//
@@ -101,6 +116,10 @@ class AUDACITY_DLL_API Ruler {
// Note that it will not erase for you...
void Draw(wxDC& dc);
void Draw(wxDC& dc, Envelope *speedEnv, long minSpeed, long maxSpeed);
+ // If length <> 0, draws lines perpendiculars to ruler corresponding
+ // to selected ticks (major, minor, or both), in an adjacent window.
+ // You may need to use the offsets if you are using part of the dc for rulers, borders etc.
+ void DrawGrid(wxDC& dc, int length, bool minor = true, bool major = true, int xOffset = 0, int yOffset = 0);
// So we can have white ticks on black...
void SetTickColour( const wxColour & colour)
@@ -116,6 +135,9 @@ class AUDACITY_DLL_API Ruler {
void Tick(int pos, double d, bool major, bool minor);
+ // Another tick generator for custom ruler case (noauto) .
+ void TickCustom(int labelIdx, bool major, bool minor);
+
public:
bool mbTicksOnly;
bool mbTicksAtExtremes;
@@ -162,7 +184,13 @@ private:
int mNumMinorMinor;
Label *mMinorMinorLabels;
+ // Returns 'zero' label coordinate (for grid drawing)
+ int FindZero(Label * label, int len);
+
+ public:
+ int GetZeroPosition();
+ private:
int mOrientation;
int mSpacing;
bool mHasSetSpacing;
@@ -170,6 +198,11 @@ private:
RulerFormat mFormat;
bool mLog;
bool mFlip;
+ bool mCustom;
+ bool mbMinor;
+ bool mMajorGrid; // for grid drawing
+ bool mMinorGrid; // .
+ int mGridLineLength; // end
wxString mUnits;
};
@@ -183,6 +216,10 @@ class AUDACITY_DLL_API RulerPanel : public wxPanel {
~RulerPanel();
+ void DoSetSize(int x, int y,
+ int width, int height,
+ int sizeFlags = wxSIZE_AUTO);
+
void OnErase(wxEraseEvent &evt);
void OnPaint(wxPaintEvent &evt);
void OnSize(wxSizeEvent &evt);
diff --git a/src/widgets/TimeTextCtrl.cpp b/src/widgets/TimeTextCtrl.cpp
index 423ac5f..c4fb7bc 100644
--- a/src/widgets/TimeTextCtrl.cpp
+++ b/src/widgets/TimeTextCtrl.cpp
@@ -209,6 +209,7 @@ public:
int digits;
int pos; // Index of this field in the ValueString
int fieldX; // x-position of the field on-screen
+ int fieldW; // width of the field on-screen
int labelX; // x-position of the label on-screen
bool zeropad;
wxString label;
@@ -257,7 +258,8 @@ TimeTextCtrl::TimeTextCtrl(wxWindow *parent,
mDigitFont(NULL),
mLabelFont(NULL),
mFocusedDigit(0),
- mLastField(-1)
+ mLastField(1),
+ mAutoPos(autoPos)
{
/* i18n-hint: Name of time display format that shows time in seconds */
BuiltinFormatStrings[0].name = _("seconds");
@@ -284,7 +286,7 @@ TimeTextCtrl::TimeTextCtrl(wxWindow *parent,
* 24 hours in a day in your locale */
BuiltinFormatStrings[2].formatStr = _("0100 days 024 h 060 m 060 s");
/* i18n-hint: Name of time display format that shows time in hours,
- * minutes, seconds and hundreths of a second (1/100 second) */
+ * minutes, seconds and hundredths of a second (1/100 second) */
BuiltinFormatStrings[3].name = _("hh:mm:ss + hundredths");
/* i18n-hint: Format string for displaying time in hours, minutes, seconds
* and hundredths of a second. Change the 'h' to the abbreviation for hours,
@@ -335,7 +337,7 @@ TimeTextCtrl::TimeTextCtrl(wxWindow *parent,
BuiltinFormatStrings[8].formatStr = _("01000,01000 frames|24");
/* i18n-hint: Name of time display format that shows time in hours, minutes,
* seconds and frames at NTSC TV drop-frame rate (used for American /
- * Japananese TV, and very odd) */
+ * Japanese TV, and very odd) */
BuiltinFormatStrings[9].name = _("hh:mm:ss + NTSC drop frames");
/* i18n-hint: Format string for displaying time in hours, minutes, seconds
* and frames with NTSC drop frames. Change the 'h' to the abbreviation
@@ -344,7 +346,7 @@ TimeTextCtrl::TimeTextCtrl(wxWindow *parent,
BuiltinFormatStrings[9].formatStr = _("0100 h 060 m 060 s+.30 frames|N");
/* i18n-hint: Name of time display format that shows time in hours, minutes,
* seconds and frames at NTSC TV non-drop-frame rate (used for American /
- * Japananese TV, and doesn't quite match wall time */
+ * Japanese TV, and doesn't quite match wall time */
BuiltinFormatStrings[10].name = _("hh:mm:ss + NTSC non-drop frames");
/* i18n-hint: Format string for displaying time in hours, minutes, seconds
* and frames with NTSC drop frames. Change the 'h' to the abbreviation
@@ -353,7 +355,7 @@ TimeTextCtrl::TimeTextCtrl(wxWindow *parent,
* the whole things really is slightly off-speed! */
BuiltinFormatStrings[10].formatStr = _("0100 h 060 m 060 s+.030 frames| .999000999");
/* i18n-hint: Name of time display format that shows time in frames at NTSC
- * TV frame rate (used for American / Japananese TV */
+ * TV frame rate (used for American / Japanese TV */
BuiltinFormatStrings[11].name = _("NTSC frames");
/* i18n-hint: Format string for displaying time in frames with NTSC frames.
* Translate 'frames' and leave the rest alone. That really is the frame
@@ -398,17 +400,7 @@ TimeTextCtrl::TimeTextCtrl(wxWindow *parent,
Layout();
Fit();
ValueToControls();
-
- if (autoPos) {
- mFocusedDigit = 0;
- while (mFocusedDigit < ((int)mDigits.GetCount() - 1)) {
- wxChar dgt = mValueString[mDigits[mFocusedDigit].pos];
- if (dgt != '0') {
- break;
- }
- mFocusedDigit++;
- }
- }
+ ControlsToValue();
#if wxUSE_ACCESSIBILITY
SetLabel(wxT(""));
@@ -431,6 +423,23 @@ TimeTextCtrl::~TimeTextCtrl()
delete mLabelFont;
}
+// Set the focus to the first (left-most) non-zero digit
+// If all digits are zero, the right-most position is focused
+void TimeTextCtrl::UpdateAutoFocus()
+{
+ if (!mAutoPos)
+ return;
+
+ mFocusedDigit = 0;
+ while (mFocusedDigit < ((int)mDigits.GetCount() - 1)) {
+ wxChar dgt = mValueString[mDigits[mFocusedDigit].pos];
+ if (dgt != '0') {
+ break;
+ }
+ mFocusedDigit++;
+ }
+}
+
void TimeTextCtrl::SetFormatString(wxString formatString)
{
mFormatString = formatString;
@@ -438,6 +447,8 @@ void TimeTextCtrl::SetFormatString(wxString formatString)
Layout();
Fit();
ValueToControls();
+ ControlsToValue();
+ UpdateAutoFocus();
}
void TimeTextCtrl::SetSampleRate(double sampleRate)
@@ -447,12 +458,14 @@ void TimeTextCtrl::SetSampleRate(double sampleRate)
Layout();
Fit();
ValueToControls();
+ ControlsToValue();
}
void TimeTextCtrl::SetTimeValue(double newTime)
{
mTimeValue = newTime;
ValueToControls();
+ ControlsToValue();
}
void TimeTextCtrl::EnableMenu(bool enable)
@@ -786,6 +799,7 @@ bool TimeTextCtrl::Layout()
memDC.GetTextExtent(mFields[i].label, &strW, &strH);
pos += mFields[i].label.Length();
x += strW;
+ mFields[i].fieldW = x;
}
mWidth = x + mBorderRight;
@@ -827,13 +841,12 @@ bool TimeTextCtrl::Layout()
if (mMenuEnabled) {
wxRect r(mWidth, 0, mButtonWidth - 1, mHeight - 1);
AColor::Bevel(memDC, true, r);
+ memDC.SetBrush(*wxBLACK_BRUSH);
memDC.SetPen(*wxBLACK_PEN);
- int triWid = mButtonWidth - 2;
- int xStart = mWidth + 1;
- int yStart = (mHeight / 2) - 2;
- for (i = 0; i <= (unsigned int)(triWid / 2); i++) {
- memDC.DrawLine(xStart + i, yStart + i, xStart + triWid - i, yStart + i);
- }
+ AColor::Arrow(memDC,
+ mWidth + 1,
+ (mHeight / 2) - 2,
+ mButtonWidth - 2);
}
return true;
}
@@ -1029,6 +1042,7 @@ void TimeTextCtrl::OnCaptureKey(wxCommandEvent &event)
void TimeTextCtrl::OnKeyDown(wxKeyEvent &event)
{
+ event.Skip(false);
int keyCode = event.GetKeyCode();
int digit = mFocusedDigit;
@@ -1127,25 +1141,24 @@ void TimeTextCtrl::OnKeyDown(wxKeyEvent &event)
void TimeTextCtrl::SetFieldFocus(int digit)
{
#if wxUSE_ACCESSIBILITY
- if (mLastField != -1) {
- GetAccessible()->NotifyEvent(wxACC_EVENT_OBJECT_SELECTIONREMOVE,
- this,
- wxOBJID_CLIENT,
- mLastField);
- }
-
mFocusedDigit = digit;
mLastField = mDigits[mFocusedDigit].field + 1;
+ // This looks strange (and it is), but it was the only way I could come
+ // up with that allowed Jaws, Window-Eyes, and NVDA to read the control
+ // somewhat the same. See TimeTextCtrlAx below for even more odd looking
+ // hackery.
+ //
+ // If you change SetFieldFocus(), Updated(), or TimeTextCtrlAx, make sure
+ // you test with Jaws, Window-Eyes, and NVDA.
GetAccessible()->NotifyEvent(wxACC_EVENT_OBJECT_FOCUS,
- this,
- wxOBJID_CLIENT,
- mLastField);
-
- GetAccessible()->NotifyEvent(wxACC_EVENT_OBJECT_SELECTION,
- this,
- wxOBJID_CLIENT,
- mLastField);
+ this,
+ wxOBJID_CLIENT,
+ 0);
+ GetAccessible()->NotifyEvent(wxACC_EVENT_OBJECT_FOCUS,
+ this,
+ wxOBJID_CLIENT,
+ mFocusedDigit + 1);
#endif
}
@@ -1154,11 +1167,13 @@ void TimeTextCtrl::Updated()
wxCommandEvent event(wxEVT_COMMAND_TEXT_UPDATED, GetId());
event.SetEventObject(this);
GetEventHandler()->ProcessEvent(event);
+
#if wxUSE_ACCESSIBILITY
- GetAccessible()->NotifyEvent(wxACC_EVENT_OBJECT_VALUECHANGE,
+ GetAccessible()->NotifyEvent(wxACC_EVENT_OBJECT_NAMECHANGE,
this,
wxOBJID_CLIENT,
- mDigits[ mFocusedDigit ].field + 1);
+ mFocusedDigit + 1);
+ SetFieldFocus(mFocusedDigit);
#endif
}
@@ -1201,6 +1216,8 @@ void TimeTextCtrl::Increase(int steps)
}
steps--;
}
+
+ ControlsToValue();
}
void TimeTextCtrl::Decrease(int steps)
@@ -1242,6 +1259,8 @@ void TimeTextCtrl::Decrease(int steps)
}
steps--;
}
+
+ ControlsToValue();
}
void TimeTextCtrl::ValueToControls()
@@ -1352,10 +1371,12 @@ void TimeTextCtrl::ControlsToValue()
#if wxUSE_ACCESSIBILITY
-TimeTextCtrlAx::TimeTextCtrlAx( wxWindow *window ):
- wxWindowAccessible( window )
+TimeTextCtrlAx::TimeTextCtrlAx(TimeTextCtrl *ctrl)
+: wxWindowAccessible(ctrl)
{
- mCtrl = wxDynamicCast( window, TimeTextCtrl );
+ mCtrl = ctrl;
+ mLastField = -1;
+ mLastDigit = -1;
}
TimeTextCtrlAx::~TimeTextCtrlAx()
@@ -1373,14 +1394,12 @@ wxAccStatus TimeTextCtrlAx::DoDefaultAction(int childId)
// Retrieves the address of an IDispatch interface for the specified child.
// All objects must support this property.
-wxAccStatus TimeTextCtrlAx::GetChild( int childId, wxAccessible** child )
+wxAccStatus TimeTextCtrlAx::GetChild(int childId, wxAccessible **child)
{
- if( childId == wxACC_SELF )
- {
+ if (childId == wxACC_SELF) {
*child = this;
}
- else
- {
+ else {
*child = NULL;
}
@@ -1388,9 +1407,9 @@ wxAccStatus TimeTextCtrlAx::GetChild( int childId, wxAccessible** child )
}
// Gets the number of children.
-wxAccStatus TimeTextCtrlAx::GetChildCount(int* childCount)
+wxAccStatus TimeTextCtrlAx::GetChildCount(int *childCount)
{
- *childCount = mCtrl->mFields.GetCount();
+ *childCount = mCtrl->mDigits.GetCount();
return wxACC_OK;
}
@@ -1402,15 +1421,15 @@ wxAccStatus TimeTextCtrlAx::GetChildCount(int* childCount)
// object, not what the object does as a result. For example, a
// toolbar button that prints a document has a default action of
// "Press" rather than "Prints the current document."
-wxAccStatus TimeTextCtrlAx::GetDefaultAction(int childId, wxString* actionName)
+wxAccStatus TimeTextCtrlAx::GetDefaultAction(int childId, wxString *actionName)
{
- *actionName = wxT("");
+ actionName->Clear();
return wxACC_OK;
}
// Returns the description for this object or a child.
-wxAccStatus TimeTextCtrlAx::GetDescription( int childId, wxString *description )
+wxAccStatus TimeTextCtrlAx::GetDescription(int childId, wxString *description)
{
description->Clear();
@@ -1421,21 +1440,20 @@ wxAccStatus TimeTextCtrlAx::GetDescription( int childId, wxString *description )
// If childId is 0 and child is NULL, no object in
// this subhierarchy has the focus.
// If this object has the focus, child should be 'this'.
-wxAccStatus TimeTextCtrlAx::GetFocus(int* childId, wxAccessible** child)
+wxAccStatus TimeTextCtrlAx::GetFocus(int *childId, wxAccessible **child)
{
- *childId = mCtrl->mDigits[mCtrl->mFocusedDigit].field + 1;
+ *childId = mCtrl->GetFocusedDigit();
*child = this;
return wxACC_OK;
}
// Returns help text for this object or a child, similar to tooltip text.
-wxAccStatus TimeTextCtrlAx::GetHelpText( int childId, wxString *helpText )
+wxAccStatus TimeTextCtrlAx::GetHelpText(int childId, wxString *helpText)
{
-#if wxUSE_TOOLTIPS // Not available in wxX11
+#if wxUSE_TOOLTIPS
wxToolTip *pTip = mCtrl->GetToolTip();
- if( pTip )
- {
+ if (pTip) {
*helpText = pTip->GetTip();
}
@@ -1449,7 +1467,7 @@ wxAccStatus TimeTextCtrlAx::GetHelpText( int childId, wxString *helpText )
// Returns the keyboard shortcut for this object or child.
// Return e.g. ALT+K
-wxAccStatus TimeTextCtrlAx::GetKeyboardShortcut( int childId, wxString *shortcut )
+wxAccStatus TimeTextCtrlAx::GetKeyboardShortcut(int childId, wxString *shortcut)
{
shortcut->Clear();
@@ -1458,58 +1476,92 @@ wxAccStatus TimeTextCtrlAx::GetKeyboardShortcut( int childId, wxString *shortcut
// Returns the rectangle for this object (id = 0) or a child element (id > 0).
// rect is in screen coordinates.
-wxAccStatus TimeTextCtrlAx::GetLocation( wxRect& rect, int elementId )
+wxAccStatus TimeTextCtrlAx::GetLocation(wxRect & rect, int elementId)
{
- if( elementId == wxACC_SELF )
- {
- rect = mCtrl->GetRect();
- rect.SetPosition( mCtrl->GetParent()->ClientToScreen( rect.GetPosition() ) );
- }
- else
- {
- rect = mCtrl->mDigits[elementId - 1].digitBox;
- rect.SetPosition( mCtrl->ClientToScreen( rect.GetPosition() ) );
+ rect = mCtrl->GetRect();
+
+ if (elementId != wxACC_SELF) {
+// rect.x += mCtrl->mFields[elementId - 1].fieldX;
+// rect.width = mCtrl->mFields[elementId - 1].fieldW;
+ rect = mCtrl->mDigits[elementId - 1].digitBox;
}
+ rect.SetPosition(mCtrl->GetParent()->ClientToScreen(rect.GetPosition()));
+
return wxACC_OK;
}
// Gets the name of the specified object.
-wxAccStatus TimeTextCtrlAx::GetName(int childId, wxString* name)
+wxAccStatus TimeTextCtrlAx::GetName(int childId, wxString *name)
{
- if( childId == wxACC_SELF )
- {
+ wxString value = mCtrl->GetTimeString();
+ int field = mCtrl->GetFocusedField();
+
+ // Return the entire time string including the control label
+ // when the requested child ID is wxACC_SELF. (Mainly when
+ // the control gets the focus.)
+ if (childId == wxACC_SELF) {
*name = mCtrl->GetName();
- if( name->IsEmpty() )
- {
+ if (name->IsEmpty()) {
*name = mCtrl->GetLabel();
}
+
+ *name += wxT(" ") +
+ mCtrl->GetTimeString();
}
- else
- {
- *name = mCtrl->mFields[childId - 1].label;
- }
+ // The user has moved from one field of the time to another so
+ // report the value of the field and the field's label.
+ else if (mLastField != field) {
+ wxString label = mCtrl->mFields[field - 1].label;
+ int cnt = mCtrl->mFields.GetCount();
+ wxString decimal = wxLocale::GetInfo(wxLOCALE_DECIMAL_POINT, wxLOCALE_CAT_NUMBER);
+
+ // If the new field is the last field, then check it to see if
+ // it represents fractions of a second.
+ if (field > 1 && field == cnt) {
+ if (mCtrl->mFields[field - 2].label == decimal) {
+ int digits = mCtrl->mFields[field - 1].digits;
+ if (digits == 2) {
+ label = _("centiseconds");
+ }
+ else if (digits == 3) {
+ label = _("milliseconds");
+ }
+ }
+ }
+ // If the field following this one represents fractions of a
+ // second then use that label instead of the decimal point.
+ else if (label == decimal && field == cnt - 1) {
+ label = mCtrl->mFields[field].label;
+ }
- if( name->IsEmpty() )
- {
- *name = _("Time Control");
+ *name = mCtrl->mFields[field - 1].str +
+ wxT(" ") +
+ label +
+ wxT(" ") +
+ mCtrl->GetTimeString().at(mCtrl->mDigits[childId - 1].pos);
+ mLastField = field;
+ mLastDigit = childId;
+ }
+ // The user has moved from one digit to another within a field so
+ // just report the digit under the cursor.
+ else if (mLastDigit != childId) {
+ *name = mCtrl->GetTimeString().at(mCtrl->mDigits[childId - 1].pos);
+ mLastDigit = childId;
+ }
+ // The user has updated the value of a field, so report the field's
+ // value only.
+ else {
+ *name = mCtrl->mFields[field - 1].str;
}
return wxACC_OK;
}
// Returns a role constant.
-wxAccStatus TimeTextCtrlAx::GetRole(int childId, wxAccRole* role)
+wxAccStatus TimeTextCtrlAx::GetRole(int childId, wxAccRole *role)
{
- if( childId == wxACC_SELF )
- {
- *role = wxROLE_SYSTEM_STATICTEXT;
- }
- else
- {
- *role = wxROLE_SYSTEM_SPINBUTTON;
- }
-
+ *role = wxROLE_SYSTEM_STATICTEXT;
return wxACC_OK;
}
@@ -1521,35 +1573,25 @@ wxAccStatus TimeTextCtrlAx::GetRole(int childId, wxAccRole* role)
// - an integer representing the selected child element,
// or 0 if this object is selected (GetType() == wxT("long"))
// - a "void*" pointer to a wxAccessible child object
-wxAccStatus TimeTextCtrlAx::GetSelections( wxVariant *selections )
+wxAccStatus TimeTextCtrlAx::GetSelections(wxVariant *selections)
{
return wxACC_NOT_IMPLEMENTED;
}
// Returns a state constant.
-wxAccStatus TimeTextCtrlAx::GetState(int childId, long* state)
+wxAccStatus TimeTextCtrlAx::GetState(int childId, long *state)
{
*state = wxACC_STATE_SYSTEM_FOCUSABLE;
- *state |= ( mCtrl == wxWindow::FindFocus() ? wxACC_STATE_SYSTEM_FOCUSED : 0 );
+ *state |= (mCtrl == wxWindow::FindFocus() ? wxACC_STATE_SYSTEM_FOCUSED : 0);
return wxACC_OK;
}
// Returns a localized string representing the value for the object
// or child.
-wxAccStatus TimeTextCtrlAx::GetValue(int childId, wxString* strValue)
+wxAccStatus TimeTextCtrlAx::GetValue(int childId, wxString *strValue)
{
- if( childId == wxACC_SELF )
- {
- *strValue = mCtrl->GetTimeString();
- }
- else
- {
- mCtrl->ControlsToValue();
- *strValue = mCtrl->mFields[childId - 1].str;
- }
-
- return wxACC_OK;
+ return wxACC_NOT_IMPLEMENTED;
}
#endif
diff --git a/src/widgets/TimeTextCtrl.h b/src/widgets/TimeTextCtrl.h
index 66910c7..3d7f9dc 100644
--- a/src/widgets/TimeTextCtrl.h
+++ b/src/widgets/TimeTextCtrl.h
@@ -24,9 +24,6 @@
#include <wx/textctrl.h>
#if wxUSE_ACCESSIBILITY
-#if defined(__WXMSW__)
-#include <oleacc.h>
-#endif
#include <wx/access.h>
#endif
@@ -46,8 +43,7 @@ WX_DECLARE_OBJARRAY(TimeField, TimeFieldArray);
class DigitInfo;
WX_DECLARE_OBJARRAY(DigitInfo, DigitInfoArray);
-class TimeTextCtrl: public wxControl
-{
+class TimeTextCtrl: public wxControl{
friend class TimeTextCtrlAx;
public:
@@ -85,6 +81,9 @@ class TimeTextCtrl: public wxControl
void EnableMenu(bool enable = true);
+ int GetFocusedField() { return mLastField; };
+ int GetFocusedDigit() { return mFocusedDigit; };
+
private:
void OnCaptureKey(wxCommandEvent &event);
@@ -103,6 +102,9 @@ private:
void PrintDebugInfo();
+ // If autoPos was enabled, focus the first non-zero digit
+ void UpdateAutoFocus();
+
void Updated();
void Increase(int steps);
void Decrease(int steps);
@@ -143,6 +145,9 @@ private:
int mFocusedDigit;
int mLastField;
+ // If true, the focus will be set to the first non-zero digit
+ bool mAutoPos;
+
DigitInfoArray mDigits;
TimeFieldArray mFields;
@@ -157,7 +162,7 @@ private:
class TimeTextCtrlAx: public wxWindowAccessible
{
public:
- TimeTextCtrlAx(wxWindow * window);
+ TimeTextCtrlAx(TimeTextCtrl * ctrl);
virtual ~ TimeTextCtrlAx();
@@ -169,10 +174,10 @@ public:
// Retrieves the address of an IDispatch interface for the specified child.
// All objects must support this property.
- virtual wxAccStatus GetChild( int childId, wxAccessible** child );
+ virtual wxAccStatus GetChild(int childId, wxAccessible **child);
// Gets the number of children.
- virtual wxAccStatus GetChildCount(int* childCount);
+ virtual wxAccStatus GetChildCount(int *childCount);
// Gets the default action for this object (0) or > 0 (the action for a child).
// Return wxACC_OK even if there is no action. actionName is the action, or the empty
@@ -180,33 +185,33 @@ public:
// The retrieved string describes the action that is performed on an object,
// not what the object does as a result. For example, a toolbar button that prints
// a document has a default action of "Press" rather than "Prints the current document."
- virtual wxAccStatus GetDefaultAction( int childId, wxString *actionName );
+ virtual wxAccStatus GetDefaultAction(int childId, wxString *actionName);
// Returns the description for this object or a child.
- virtual wxAccStatus GetDescription( int childId, wxString *description );
+ virtual wxAccStatus GetDescription(int childId, wxString *description);
// Gets the window with the keyboard focus.
// If childId is 0 and child is NULL, no object in
// this subhierarchy has the focus.
// If this object has the focus, child should be 'this'.
- virtual wxAccStatus GetFocus( int *childId, wxAccessible **child );
+ virtual wxAccStatus GetFocus(int *childId, wxAccessible **child);
// Returns help text for this object or a child, similar to tooltip text.
- virtual wxAccStatus GetHelpText( int childId, wxString *helpText );
+ virtual wxAccStatus GetHelpText(int childId, wxString *helpText);
// Returns the keyboard shortcut for this object or child.
// Return e.g. ALT+K
- virtual wxAccStatus GetKeyboardShortcut( int childId, wxString *shortcut );
+ virtual wxAccStatus GetKeyboardShortcut(int childId, wxString *shortcut);
// Returns the rectangle for this object (id = 0) or a child element (id > 0).
// rect is in screen coordinates.
- virtual wxAccStatus GetLocation( wxRect& rect, int elementId );
+ virtual wxAccStatus GetLocation(wxRect & rect, int elementId);
// Gets the name of the specified object.
- virtual wxAccStatus GetName( int childId, wxString *name );
+ virtual wxAccStatus GetName(int childId, wxString *name);
// Returns a role constant.
- virtual wxAccStatus GetRole( int childId, wxAccRole *role );
+ virtual wxAccStatus GetRole(int childId, wxAccRole *role);
// Gets a variant representing the selected children
// of this object.
@@ -216,17 +221,19 @@ public:
// - an integer representing the selected child element,
// or 0 if this object is selected (GetType() == wxT("long"))
// - a "void*" pointer to a wxAccessible child object
- virtual wxAccStatus GetSelections( wxVariant *selections );
+ virtual wxAccStatus GetSelections(wxVariant *selections);
// Returns a state constant.
- virtual wxAccStatus GetState(int childId, long* state);
+ virtual wxAccStatus GetState(int childId, long *state);
// Returns a localized string representing the value for the object
// or child.
- virtual wxAccStatus GetValue(int childId, wxString* strValue);
+ virtual wxAccStatus GetValue(int childId, wxString *strValue);
private:
TimeTextCtrl *mCtrl;
+ int mLastField;
+ int mLastDigit;
};
#endif // wxUSE_ACCESSIBILITY
@@ -243,4 +250,3 @@ private:
//
// vim: et sts=3 sw=3
//
-
diff --git a/src/widgets/Warning.cpp b/src/widgets/Warning.cpp
index c24437a..4300f1a 100644
--- a/src/widgets/Warning.cpp
+++ b/src/widgets/Warning.cpp
@@ -36,8 +36,6 @@ class WarningDialog : public wxDialog
// constructors and destructors
WarningDialog(wxWindow *parent,
wxString message);
-
- bool dontShow;
private:
void OnOK(wxCommandEvent& event);
@@ -52,8 +50,7 @@ BEGIN_EVENT_TABLE(WarningDialog, wxDialog)
END_EVENT_TABLE()
WarningDialog::WarningDialog(wxWindow *parent, wxString message)
-: wxDialog(parent, wxID_ANY, (wxString)_("Warning")),
- dontShow( false )
+: wxDialog(parent, wxID_ANY, (wxString)_("Warning"))
{
ShuttleGui S(this, eIsCreating);
@@ -61,44 +58,33 @@ WarningDialog::WarningDialog(wxWindow *parent, wxString message)
S.StartVerticalLay(false);
{
S.AddUnits(message);
- mCheckBox = S.TieCheckBox(_("Don't show this warning again"), dontShow);
+ mCheckBox = S.AddCheckBox(_("Don't show this warning again"), wxT("false"));
}
S.SetBorder(0);
S.AddStandardButtons(eOkButton);
Fit();
+ CentreOnParent();
}
void WarningDialog::OnOK(wxCommandEvent& event)
{
- dontShow = mCheckBox->GetValue();
-
- EndModal(wxID_OK);
+ EndModal(mCheckBox->GetValue() == false);
}
void ShowWarningDialog(wxWindow *parent,
wxString internalDialogName,
wxString message)
{
- bool dontShow = false;
-
- gPrefs->SetPath(wxT("/Warnings"));
- gPrefs->Read(internalDialogName, &dontShow, false);
- gPrefs->SetPath(wxT("/"));
-
- if (dontShow)
+ wxString key(wxT("/Warnings/") + internalDialogName);
+ if (!gPrefs->Read(key, (long) true)) {
return;
+ }
WarningDialog dlog(parent, message);
- dlog.CentreOnParent();
- dlog.ShowModal();
- if (dlog.dontShow) {
- gPrefs->SetPath(wxT("/Warnings"));
- gPrefs->Write(internalDialogName, true);
- gPrefs->SetPath(wxT("/"));
- }
+ gPrefs->Write(key, dlog.ShowModal());
}
// Indentation settings for Vim and Emacs and unique identifier for Arch, a
diff --git a/src/xml/XMLFileReader.cpp b/src/xml/XMLFileReader.cpp
index 5b09101..a7cc718 100644
--- a/src/xml/XMLFileReader.cpp
+++ b/src/xml/XMLFileReader.cpp
@@ -27,7 +27,7 @@ XMLFileReader::XMLFileReader()
mParser = XML_ParserCreate(NULL);
XML_SetUserData(mParser, (void *)this);
XML_SetElementHandler(mParser, startElement, endElement);
-
+ XML_SetCharacterDataHandler(mParser, charHandler);
mBaseHandler = NULL;
mMaxDepth = 128;
mHandler = new XMLTagHandler*[mMaxDepth];
@@ -128,6 +128,15 @@ void XMLFileReader::endElement(void *userData, const char *name)
This->mDepth--;
}
+// static
+void XMLFileReader::charHandler(void *userData, const char *s, int len)
+{
+ XMLFileReader *This = (XMLFileReader *)userData;
+
+ if (This->mHandler[This->mDepth])
+ This->mHandler[This->mDepth]->ReadXMLContent(s, len);
+}
+
// Indentation settings for Vim and Emacs and unique identifier for Arch, a
// version control system. Please do not modify past this point.
//
diff --git a/src/xml/XMLFileReader.h b/src/xml/XMLFileReader.h
index 1d15627..3364b18 100644
--- a/src/xml/XMLFileReader.h
+++ b/src/xml/XMLFileReader.h
@@ -31,6 +31,8 @@ class XMLFileReader {
static void endElement(void *userData, const char *name);
+ static void charHandler(void *userData, const char *s, int len);
+
private:
XML_Parser mParser;
int mMaxDepth;
diff --git a/src/xml/XMLTagHandler.cpp b/src/xml/XMLTagHandler.cpp
index 4c8487c..7bfa1b4 100644
--- a/src/xml/XMLTagHandler.cpp
+++ b/src/xml/XMLTagHandler.cpp
@@ -150,40 +150,6 @@ bool XMLValueChecker::IsValidSampleFormat(const int nValue)
return (nValue == int16Sample) || (nValue == int24Sample) || (nValue == floatSample);
}
-
-// See http://www.w3.org/TR/REC-xml for reference
-wxString XMLTagHandler::XMLEsc(wxString s)
-{
- wxString result;
- int len = s.Length();
-
- for(int i=0; i<len; i++) {
- wxChar c = s.GetChar(i);
-
- switch (c) {
- case wxT('\''):
- result += wxT("'");
- break;
- case wxT('"'):
- result += wxT(""");
- break;
- case wxT('&'):
- result += wxT("&");
- break;
- case wxT('<'):
- result += wxT("<");
- break;
- case wxT('>'):
- result += wxT(">");
- break;
- default:
- result += c;
- }
- }
-
- return result;
-}
-
bool XMLTagHandler::ReadXMLTag(const char *tag, const char **attrs)
{
wxArrayString tmp_attrs;
@@ -214,6 +180,11 @@ void XMLTagHandler::ReadXMLEndTag(const char *tag)
HandleXMLEndTag(UTF8CTOWX(tag).c_str());
}
+void XMLTagHandler::ReadXMLContent(const char *s, int len)
+{
+ HandleXMLContent(wxString(s, wxConvUTF8, len));
+}
+
XMLTagHandler *XMLTagHandler::ReadXMLChild(const char *tag)
{
return HandleXMLChild(UTF8CTOWX(tag).c_str());
diff --git a/src/xml/XMLTagHandler.h b/src/xml/XMLTagHandler.h
index 0429a74..08ac888 100644
--- a/src/xml/XMLTagHandler.h
+++ b/src/xml/XMLTagHandler.h
@@ -65,6 +65,11 @@ class AUDACITY_DLL_API XMLTagHandler {
// It is optional to override this method.
virtual void HandleXMLEndTag(const wxChar *tag) {}
+ // This method will be called when element content has been
+ // encountered.
+ // It is optional to override this method.
+ virtual void HandleXMLContent(const wxString & content) {}
+
// If the XML document has children of your tag, this method
// should be called. Typically you should construct a new
// object for the child, insert it into your own local data
@@ -72,24 +77,11 @@ class AUDACITY_DLL_API XMLTagHandler {
// handle this child, return NULL and it will be ignored.
virtual XMLTagHandler *HandleXMLChild(const wxChar *tag) = 0;
- // When this method is called, write your own tag and tags for
- // all of your children to the file. One tag should appear
- // per line, and each tag should be preceded with [depth]
- // tab characters.
- virtual void WriteXML(XMLWriter &xmlFile) = 0;
-
- //
- // Utility methods you should call
- //
-
- // Escape a string, replacing certain characters with their
- // XML encoding, i.e. '<' becomes '<'
- static wxString XMLEsc(wxString s);
-
// These functions recieve data from expat. They do charset
// conversion and then pass the data to the handlers above.
bool ReadXMLTag(const char *tag, const char **attrs);
void ReadXMLEndTag(const char *tag);
+ void ReadXMLContent(const char *s, int len);
XMLTagHandler *ReadXMLChild(const char *tag);
};
diff --git a/src/xml/XMLWriter.cpp b/src/xml/XMLWriter.cpp
index 2bad0d8..6f1c811 100644
--- a/src/xml/XMLWriter.cpp
+++ b/src/xml/XMLWriter.cpp
@@ -103,7 +103,7 @@ void XMLWriter::WriteAttr(const wxString &name, const wxString &value)
{
Write(wxString::Format(wxT(" %s=\"%s\""),
name.c_str(),
- XMLTagHandler::XMLEsc(value).c_str()));
+ XMLEsc(value).c_str()));
}
void XMLWriter::WriteAttr(const wxChar *name, const wxChar *value)
@@ -213,7 +213,7 @@ void XMLWriter::WriteData(const wxString &value)
Write(wxT("\t"));
}
- Write(XMLTagHandler::XMLEsc(value));
+ Write(XMLEsc(value));
}
void XMLWriter::WriteData(const wxChar *value)
@@ -242,6 +242,50 @@ void XMLWriter::Write(const wxChar *value)
Write(wxString(value));
}
+// See http://www.w3.org/TR/REC-xml for reference
+wxString XMLWriter::XMLEsc(const wxString & s)
+{
+ wxString result;
+ int len = s.Length();
+
+ for(int i=0; i<len; i++) {
+ wxUChar c = s.GetChar(i);
+
+ switch (c) {
+ case wxT('\''):
+ result += wxT("'");
+ break;
+
+ case wxT('"'):
+ result += wxT(""");
+ break;
+
+ case wxT('&'):
+ result += wxT("&");
+ break;
+
+ case wxT('<'):
+ result += wxT("<");
+ break;
+
+ case wxT('>'):
+ result += wxT(">");
+ break;
+
+ default:
+ if (!wxIsprint(c)) {
+ result += wxString::Format(wxT("&#x%04x;"), c);
+ }
+ else {
+ result += c;
+ }
+ break;
+ }
+ }
+
+ return result;
+}
+
///
/// XMLFileWriter class
///
@@ -256,23 +300,45 @@ XMLFileWriter::~XMLFileWriter()
}
}
-bool XMLFileWriter::Open(const wxString &name, const wxString &mode)
+void XMLFileWriter::Open(const wxString &name, const wxString &mode)
{
- return wxFFile::Open(name, mode);
+ if (!wxFFile::Open(name, mode))
+ throw new XMLFileWriterException(_("Error opening file"));
}
-bool XMLFileWriter::Close()
+void XMLFileWriter::Close()
{
while (mTagstack.GetCount()) {
EndTag(mTagstack[0]);
}
- return wxFFile::Close();
+ CloseWithoutEndingTags();
+}
+
+void XMLFileWriter::CloseWithoutEndingTags()
+{
+ // Before closing, we first flush it, because if Flush() fails because of a
+ // "disk full" condition, we can still at least try to close the file.
+ if (!wxFFile::Flush())
+ {
+ wxFFile::Close();
+ throw new XMLFileWriterException(_("Error flushing file"));
+ }
+
+ // Note that this should never fail if flushing worked.
+ if (!wxFFile::Close())
+ throw new XMLFileWriterException(_("Error closing file"));
}
void XMLFileWriter::Write(const wxString &data)
{
- wxFFile::Write(data);
+ if (!wxFFile::Write(data, wxConvUTF8))
+ {
+ // When writing fails, we try to close the file before throwing the
+ // exception, so it can at least be deleted.
+ wxFFile::Close();
+ throw new XMLFileWriterException(_("Error writing to file"));
+ }
}
///
diff --git a/src/xml/XMLWriter.h b/src/xml/XMLWriter.h
index 40f122b..2e1b64f 100644
--- a/src/xml/XMLWriter.h
+++ b/src/xml/XMLWriter.h
@@ -56,6 +56,10 @@ class XMLWriter {
virtual void Write(const wxString &data) = 0;
+ // Escape a string, replacing certain characters with their
+ // XML encoding, i.e. '<' becomes '<'
+ wxString XMLEsc(const wxString & s);
+
protected:
bool mInTag;
@@ -75,9 +79,17 @@ class XMLFileWriter:public wxFFile, public XMLWriter {
XMLFileWriter();
virtual ~XMLFileWriter();
- bool Open(const wxString &name, const wxString &mode);
- bool Close();
+ /// Open the file. Might throw XMLFileWriterException.
+ void Open(const wxString &name, const wxString &mode);
+
+ /// Close file. Might throw XMLFileWriterException.
+ void Close();
+
+ /// Close file without automatically ending tags.
+ /// Might throw XMLFileWriterException.
+ void CloseWithoutEndingTags(); // for auto-save files
+ /// Write to file. Might throw XMLFileWriterException.
void Write(const wxString &data);
private:
@@ -85,6 +97,19 @@ class XMLFileWriter:public wxFFile, public XMLWriter {
};
///
+/// Exception thrown by various XMLFileWriter methods
+///
+class XMLFileWriterException
+{
+public:
+ XMLFileWriterException(const wxString& message) { mMessage = message; }
+ wxString GetMessage() const { return mMessage; }
+
+protected:
+ wxString mMessage;
+};
+
+///
/// XMLStringWriter
///
class XMLStringWriter:public wxString, public XMLWriter {
diff --git a/src/xml/audacityproject.dtd b/src/xml/audacityproject.dtd
index 12b04b5..db26d1d 100644
--- a/src/xml/audacityproject.dtd
+++ b/src/xml/audacityproject.dtd
@@ -44,6 +44,8 @@
<!ATTLIST wavetrack rate CDATA #REQUIRED>
<!ATTLIST wavetrack gain CDATA #REQUIRED>
<!ATTLIST wavetrack pan CDATA #REQUIRED>
+<!ATTLIST wavetrack mute CDATA "0">
+<!ATTLIST wavetrack solo CDATA "0">
<!ELEMENT waveclip (sequence, envelope)>
<!ATTLIST waveclip offset CDATA #REQUIRED>
diff --git a/win/Projects/Audacity/Audacity.vcproj b/win/Projects/Audacity/Audacity.vcproj
index 3d6aa29..03caf80 100644
--- a/win/Projects/Audacity/Audacity.vcproj
+++ b/win/Projects/Audacity/Audacity.vcproj
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
- Version="8.00"
+ Version="9.00"
Name="Audacity"
ProjectGUID="{1D64095C-F936-4FCF-B609-56E9DDF941FA}"
RootNamespace="Audacity"
+ TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
@@ -12,6 +13,9 @@
/>
</Platforms>
<ToolFiles>
+ <ToolFile
+ RelativePath="..\..\ny.rules"
+ />
</ToolFiles>
<Configurations>
<Configuration
@@ -29,6 +33,9 @@
Name="VCCustomBuildTool"
/>
<Tool
+ Name="copy"
+ />
+ <Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
@@ -39,7 +46,8 @@
/>
<Tool
Name="VCCLCompilerTool"
- AdditionalIncludeDirectories=""$(WXWIN)\lib\vc_dll\mswu";"$(WXWIN)\include";..\..;..\..\..\src\include\win32;..\..\..\src\include;"..\..\..\lib-src\FileDialog";"..\..\..\lib-src\expat";"..\..\..\lib-src\ffmpeg\win32";"..\..\..\lib-src\ffmpeg";"..\..\..\lib-src\lib-widget-extra";"..\..\..\lib-src\libflac\include";"..\..\..\lib-src\libid3tag";"..\..\..\lib-src\liblrdf";"..\..\..\lib-src\libmad";"..\..\..\lib-src\libnyquist\nyx";"..\..\..\lib-src\libogg\include";"..\..\..\lib-src\libresample\include";"..\..\..\lib-src\libsamplerate\src";"..\..\..\lib-src\libscorealign";"..\..\..\lib-src\libsndfile\Win32";"..\..\..\lib-src\libsndfile\src";"..\..\..\lib-src\libvamp";"..\..\..\lib-src\libvorbis\include";"..\..\..\lib-src\portaudio-v19\include";"..\..\..\lib-src\portmixer\include";"..\..\..\lib-src\portsmf";"..\..\..\lib-src\redland\raptor\src";"..\..\..\lib-src\slv2";"..\..\..\lib-src\sbsms\include";"..\..\..\lib-src\soundtouch\include";"..\..\..\lib-src\twolame\libtwolame""
+ Optimization="2"
+ AdditionalIncludeDirectories=""$(WXWIN)\lib\vc_dll\mswu";"$(WXWIN)\include";..\..;..\..\..\src\include\win32;..\..\..\src\include;"..\..\..\lib-src\FileDialog";"..\..\..\lib-src\expat";"..\..\..\lib-src\ffmpeg\win32";"..\..\..\lib-src\ffmpeg";"..\..\..\lib-src\lib-widget-extra";"..\..\..\lib-src\libflac\include";"..\..\..\lib-src\libid3tag";"..\..\..\lib-src\liblrdf";"..\..\..\lib-src\libmad";"..\..\..\lib-src\libnyquist";"..\..\..\lib-src\libogg\include";"..\..\..\lib-src\libresample\include";"..\..\..\lib-src\libsamplerate\src";"..\..\..\lib-src\libscorealign";..\libsndfile;"..\..\..\lib-src\libvamp";"..\..\..\lib-src\libvorbis\include";"..\..\..\lib-src\portaudio-v19\include";"..\..\..\lib-src\portmixer\include";"..\..\..\lib-src\portsmf";"..\..\..\lib-src\redland\raptor\src";"..\..\..\lib-src\slv2";"..\..\..\lib-src\sbsms\include";"..\..\..\lib-src\soundtouch\include";"..\..\..\lib-src\twolame\libtwolame";"..\..\..\lib-src\portmidi\pm_common";"..\..\..\lib-src\portmidi\pm_win";"..\..\..\lib-src\portmidi\porttime""
PreprocessorDefinitions="BUILDING_AUDACITY;FLAC__NO_DLL;__STDC_CONSTANT_MACROS;WXUSINGDLL;__WXMSW__;NDEBUG;WIN32;STRICT"
StringPooling="true"
RuntimeLibrary="2"
@@ -65,10 +73,13 @@
<Tool
Name="VCLinkerTool"
LinkLibraryDependencies="false"
- AdditionalDependencies="filedialog.lib libsndfile.lib wxbase28u.lib wxbase28u_net.lib wxmsw28u_adv.lib wxmsw28u_core.lib wxmsw28u_html.lib wxexpat.lib wxpng.lib wxzlib.lib wxjpeg.lib wxtiff.lib comctl32.lib rpcrt4.lib wsock32.lib winmm.lib oleacc.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib"
+ AdditionalDependencies="filedialog.lib libsndfile.lib portaudio-v19.lib wxbase28u.lib wxbase28u_net.lib wxmsw28u_adv.lib wxmsw28u_core.lib wxmsw28u_html.lib wxexpat.lib wxpng.lib wxzlib.lib wxjpeg.lib wxtiff.lib comctl32.lib rpcrt4.lib wsock32.lib winmm.lib oleacc.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib"
AdditionalLibraryDirectories=""$(OutDir)";"$(WXWIN)\lib\vc_dll""
IgnoreDefaultLibraryNames="dsound.lib"
SubSystem="2"
+ StackReserveSize="8388608"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="1"
/>
<Tool
@@ -90,9 +101,6 @@
Name="VCAppVerifierTool"
/>
<Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
@@ -111,6 +119,9 @@
Name="VCCustomBuildTool"
/>
<Tool
+ Name="copy"
+ />
+ <Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
@@ -122,7 +133,7 @@
<Tool
Name="VCCLCompilerTool"
Optimization="0"
- AdditionalIncludeDirectories=""$(WXWIN)\lib\vc_dll\mswud";"$(WXWIN)\include";..\..;..\..\..\src\include\win32;..\..\..\src\include;"..\..\..\lib-src\FileDialog";"..\..\..\lib-src\expat";"..\..\..\lib-src\ffmpeg\win32";"..\..\..\lib-src\ffmpeg";"..\..\..\lib-src\lib-widget-extra";"..\..\..\lib-src\libflac\include";"..\..\..\lib-src\libid3tag";"..\..\..\lib-src\liblrdf";"..\..\..\lib-src\libmad";"..\..\..\lib-src\libnyquist\nyx";"..\..\..\lib-src\libogg\include";"..\..\..\lib-src\libresample\include";"..\..\..\lib-src\libsamplerate\src";"..\..\..\lib-src\libscorealign";"..\..\..\lib-src\libsndfile\Win32";"..\..\..\lib-src\libsndfile\src";"..\..\..\lib-src\libvamp";"..\..\..\lib-src\libvorbis\include";"..\..\..\lib-src\portaudio-v19\include";"..\..\..\lib-src\portmixer\include";"..\..\..\lib-src\portsmf";"..\..\..\lib-src\redland\raptor\src";"..\..\..\lib-src\slv2";"..\..\..\lib-src\sbsms\include";"..\..\..\lib-src\soundtouch\include";"..\..\..\lib-src\twolame\libtwolame""
+ AdditionalIncludeDirectories=""$(WXWIN)\lib\vc_dll\mswud";"$(WXWIN)\include";..\..;..\..\..\src\include\win32;..\..\..\src\include;"..\..\..\lib-src\FileDialog";"..\..\..\lib-src\expat";"..\..\..\lib-src\ffmpeg\win32";"..\..\..\lib-src\ffmpeg";"..\..\..\lib-src\lib-widget-extra";"..\..\..\lib-src\libflac\include";"..\..\..\lib-src\libid3tag";"..\..\..\lib-src\liblrdf";"..\..\..\lib-src\libmad";"..\..\..\lib-src\libnyquist";"..\..\..\lib-src\libogg\include";"..\..\..\lib-src\libresample\include";"..\..\..\lib-src\libsamplerate\src";"..\..\..\lib-src\libscorealign";..\libsndfile;"..\..\..\lib-src\libvamp";"..\..\..\lib-src\libvorbis\include";"..\..\..\lib-src\portaudio-v19\include";"..\..\..\lib-src\portmixer\include";"..\..\..\lib-src\portsmf";"..\..\..\lib-src\redland\raptor\src";"..\..\..\lib-src\slv2";"..\..\..\lib-src\sbsms\include";"..\..\..\lib-src\soundtouch\include";"..\..\..\lib-src\twolame\libtwolame";"..\..\..\lib-src\portmidi\pm_common";"..\..\..\lib-src\portmidi\pm_win";"..\..\..\lib-src\portmidi\porttime""
PreprocessorDefinitions="BUILDING_AUDACITY;FLAC__NO_DLL;__STDC_CONSTANT_MACROS;WXUSINGDLL;__WXMSW__;__WXDEBUG__;_DEBUG;WIN32;STRICT"
StringPooling="true"
BasicRuntimeChecks="3"
@@ -151,12 +162,15 @@
<Tool
Name="VCLinkerTool"
LinkLibraryDependencies="false"
- AdditionalDependencies="filedialog.lib libsndfile.lib wxbase28ud.lib wxbase28ud_net.lib wxmsw28ud_adv.lib wxmsw28ud_core.lib wxmsw28ud_html.lib wxexpatd.lib wxpngd.lib wxzlibd.lib wxjpegd.lib wxtiffd.lib comctl32.lib rpcrt4.lib wsock32.lib winmm.lib oleacc.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib"
+ AdditionalDependencies="filedialog.lib libsndfile.lib portaudio-v19.lib wxbase28ud.lib wxbase28ud_net.lib wxmsw28ud_adv.lib wxmsw28ud_core.lib wxmsw28ud_html.lib wxexpatd.lib wxpngd.lib wxzlibd.lib wxjpegd.lib wxtiffd.lib comctl32.lib rpcrt4.lib wsock32.lib winmm.lib oleacc.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib"
LinkIncremental="2"
AdditionalLibraryDirectories=""$(OutDir)";"$(WXWIN)\lib\vc_dll""
IgnoreDefaultLibraryNames="dsound.lib"
GenerateDebugInformation="true"
SubSystem="2"
+ StackReserveSize="8388608"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="1"
/>
<Tool
@@ -178,9 +192,6 @@
Name="VCAppVerifierTool"
/>
<Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
@@ -199,6 +210,9 @@
Name="VCCustomBuildTool"
/>
<Tool
+ Name="copy"
+ />
+ <Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
@@ -210,7 +224,7 @@
<Tool
Name="VCCLCompilerTool"
Optimization="0"
- AdditionalIncludeDirectories=""$(WXWIN)\lib\vc_dll\mswd";"$(WXWIN)\include";..\..;..\..\..\src\include\win32;..\..\..\src\include;"..\..\..\lib-src\FileDialog";"..\..\..\lib-src\expat";"..\..\..\lib-src\ffmpeg\win32";"..\..\..\lib-src\ffmpeg";"..\..\..\lib-src\lib-widget-extra";"..\..\..\lib-src\libflac\include";"..\..\..\lib-src\libid3tag";"..\..\..\lib-src\liblrdf";"..\..\..\lib-src\libmad";"..\..\..\lib-src\libnyquist\nyx";"..\..\..\lib-src\libogg\include";"..\..\..\lib-src\libresample\include";"..\..\..\lib-src\libsamplerate\src";"..\..\..\lib-src\libscorealign";"..\..\..\lib-src\libsndfile\Win32";"..\..\..\lib-src\libsndfile\src";"..\..\..\lib-src\libvamp";"..\..\..\lib-src\libvorbis\include";"..\..\..\lib-src\portaudio-v19\include";"..\..\..\lib-src\portmixer\include";"..\..\..\lib-src\portsmf";"..\..\..\lib-src\redland\raptor\src";"..\..\..\lib-src\slv2";"..\..\..\lib-src\sbsms\include";"..\..\..\lib-src\soundtouch\include";"..\..\..\lib-src\twolame\libtwolame""
+ AdditionalIncludeDirectories=""$(WXWIN)\lib\vc_dll\mswd";"$(WXWIN)\include";..\..;..\..\..\src\include\win32;..\..\..\src\include;"..\..\..\lib-src\FileDialog";"..\..\..\lib-src\expat";"..\..\..\lib-src\ffmpeg\win32";"..\..\..\lib-src\ffmpeg";"..\..\..\lib-src\lib-widget-extra";"..\..\..\lib-src\libflac\include";"..\..\..\lib-src\libid3tag";"..\..\..\lib-src\liblrdf";"..\..\..\lib-src\libmad";"..\..\..\lib-src\libnyquist";"..\..\..\lib-src\libogg\include";"..\..\..\lib-src\libresample\include";"..\..\..\lib-src\libsamplerate\src";"..\..\..\lib-src\libscorealign";..\\libsndfile;"..\..\..\lib-src\libvamp";"..\..\..\lib-src\libvorbis\include";"..\..\..\lib-src\portaudio-v19\include";"..\..\..\lib-src\portmixer\include";"..\..\..\lib-src\portsmf";"..\..\..\lib-src\redland\raptor\src";"..\..\..\lib-src\slv2";"..\..\..\lib-src\sbsms\include";"..\..\..\lib-src\soundtouch\include";"..\..\..\lib-src\twolame\libtwolame";"..\..\..\lib-src\portmidi\pm_common";"..\..\..\lib-src\portmidi\pm_win";"..\..\..\lib-src\portmidi\porttime";"..\..\..\lib-src\portmidi\pm_common";"..\..\..\lib-src\portmidi\pm_win";"..\..\..\lib-src\portmidi\porttime""
PreprocessorDefinitions="BUILDING_AUDACITY;FLAC__NO_DLL;__STDC_CONSTANT_MACROS;WXUSINGDLL;__WXMSW__;__WXDEBUG__;_DEBUG;WIN32;STRICT"
StringPooling="true"
BasicRuntimeChecks="3"
@@ -239,12 +253,15 @@
<Tool
Name="VCLinkerTool"
LinkLibraryDependencies="false"
- AdditionalDependencies="filedialog.lib libsndfile.lib wxbase28d.lib wxbase28d_net.lib wxmsw28d_adv.lib wxmsw28d_core.lib wxmsw28d_html.lib wxexpatd.lib wxpngd.lib wxzlibd.lib wxjpegd.lib wxtiffd.lib comctl32.lib rpcrt4.lib wsock32.lib winmm.lib oleacc.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib"
+ AdditionalDependencies="filedialog.lib libsndfile.lib portaudio-v19.lib wxbase28d.lib wxbase28d_net.lib wxmsw28d_adv.lib wxmsw28d_core.lib wxmsw28d_html.lib wxexpatd.lib wxpngd.lib wxzlibd.lib wxjpegd.lib wxtiffd.lib comctl32.lib rpcrt4.lib wsock32.lib winmm.lib oleacc.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib"
LinkIncremental="2"
AdditionalLibraryDirectories=""$(OutDir)";"$(WXWIN)\lib\vc_dll""
IgnoreDefaultLibraryNames="dsound.lib"
GenerateDebugInformation="true"
SubSystem="2"
+ StackReserveSize="8388608"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="1"
/>
<Tool
@@ -266,9 +283,6 @@
Name="VCAppVerifierTool"
/>
<Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
@@ -287,6 +301,9 @@
Name="VCCustomBuildTool"
/>
<Tool
+ Name="copy"
+ />
+ <Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
@@ -297,7 +314,8 @@
/>
<Tool
Name="VCCLCompilerTool"
- AdditionalIncludeDirectories=""$(WXWIN)\lib\vc_dll\msw";"$(WXWIN)\include";..\..;..\..\..\src\include\win32;..\..\..\src\include;"..\..\..\lib-src\FileDialog";"..\..\..\lib-src\expat";"..\..\..\lib-src\ffmpeg\win32";"..\..\..\lib-src\ffmpeg";"..\..\..\lib-src\lib-widget-extra";"..\..\..\lib-src\libflac\include";"..\..\..\lib-src\libid3tag";"..\..\..\lib-src\liblrdf";"..\..\..\lib-src\libmad";"..\..\..\lib-src\libnyquist\nyx";"..\..\..\lib-src\libogg\include";"..\..\..\lib-src\libresample\include";"..\..\..\lib-src\libsamplerate\src";"..\..\..\lib-src\libscorealign";"..\..\..\lib-src\libsndfile\Win32";"..\..\..\lib-src\libsndfile\src";"..\..\..\lib-src\libvamp";"..\..\..\lib-src\libvorbis\include";"..\..\..\lib-src\portaudio-v19\include";"..\..\..\lib-src\portmixer\include";"..\..\..\lib-src\portsmf";"..\..\..\lib-src\redland\raptor\src";"..\..\..\lib-src\slv2";"..\..\..\lib-src\sbsms\include";"..\..\..\lib-src\soundtouch\include";"..\..\..\lib-src\twolame\libtwolame""
+ Optimization="2"
+ AdditionalIncludeDirectories=""$(WXWIN)\lib\vc_dll\msw";"$(WXWIN)\include";..\..;..\..\..\src\include\win32;..\..\..\src\include;"..\..\..\lib-src\FileDialog";"..\..\..\lib-src\expat";"..\..\..\lib-src\ffmpeg\win32";"..\..\..\lib-src\ffmpeg";"..\..\..\lib-src\lib-widget-extra";"..\..\..\lib-src\libflac\include";"..\..\..\lib-src\libid3tag";"..\..\..\lib-src\liblrdf";"..\..\..\lib-src\libmad";"..\..\..\lib-src\libnyquist";"..\..\..\lib-src\libogg\include";"..\..\..\lib-src\libresample\include";"..\..\..\lib-src\libsamplerate\src";"..\..\..\lib-src\libscorealign";..\libsndfile;"..\..\..\lib-src\libvamp";"..\..\..\lib-src\libvorbis\include";"..\..\..\lib-src\portaudio-v19\include";"..\..\..\lib-src\portmixer\include";"..\..\..\lib-src\portsmf";"..\..\..\lib-src\redland\raptor\src";"..\..\..\lib-src\slv2";"..\..\..\lib-src\sbsms\include";"..\..\..\lib-src\soundtouch\include";"..\..\..\lib-src\twolame\libtwolame";"..\..\..\lib-src\portmidi\pm_common";"..\..\..\lib-src\portmidi\pm_win";"..\..\..\lib-src\portmidi\porttime""
PreprocessorDefinitions="BUILDING_AUDACITY;FLAC__NO_DLL;__STDC_CONSTANT_MACROS;WXUSINGDLL;__WXMSW__;NDEBUG;WIN32;STRICT"
StringPooling="true"
RuntimeLibrary="2"
@@ -323,10 +341,13 @@
<Tool
Name="VCLinkerTool"
LinkLibraryDependencies="false"
- AdditionalDependencies="filedialog.lib libsndfile.lib wxbase28.lib wxbase28_net.lib wxmsw28_adv.lib wxmsw28_core.lib wxmsw28_html.lib wxexpat.lib wxpng.lib wxzlib.lib wxjpeg.lib wxtiff.lib comctl32.lib rpcrt4.lib wsock32.lib winmm.lib oleacc.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib"
+ AdditionalDependencies="filedialog.lib libsndfile.lib portaudio-v19.lib wxbase28.lib wxbase28_net.lib wxmsw28_adv.lib wxmsw28_core.lib wxmsw28_html.lib wxexpat.lib wxpng.lib wxzlib.lib wxjpeg.lib wxtiff.lib comctl32.lib rpcrt4.lib wsock32.lib winmm.lib oleacc.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib"
AdditionalLibraryDirectories=""$(OutDir)";"$(WXWIN)\lib\vc_dll""
IgnoreDefaultLibraryNames="dsound.lib"
SubSystem="2"
+ StackReserveSize="8388608"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="1"
/>
<Tool
@@ -348,9 +369,6 @@
Name="VCAppVerifierTool"
/>
<Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
@@ -646,6 +664,22 @@
>
</File>
<File
+ RelativePath="..\..\..\src\Lyrics.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\src\Lyrics.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\src\LyricsWindow.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\src\LyricsWindow.h"
+ >
+ </File>
+ <File
RelativePath="..\..\..\src\MacroMagic.h"
>
</File>
@@ -674,6 +708,14 @@
>
</File>
<File
+ RelativePath="..\..\..\src\MixerBoard.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\src\MixerBoard.h"
+ >
+ </File>
+ <File
RelativePath="..\..\..\lib-src\lib-widget-extra\NonGuiThread.cpp"
>
</File>
@@ -742,6 +784,14 @@
>
</File>
<File
+ RelativePath="..\..\..\src\RealFFTf.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\src\RealFFTf.h"
+ >
+ </File>
+ <File
RelativePath="..\..\..\src\Resample.cpp"
>
</File>
@@ -1138,6 +1188,14 @@
>
</File>
<File
+ RelativePath="..\..\..\src\effects\Generator.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\src\effects\Generator.h"
+ >
+ </File>
+ <File
RelativePath="..\..\..\src\effects\Invert.cpp"
>
</File>
@@ -1318,11 +1376,11 @@
Name="src/effects/VST"
>
<File
- RelativePath="..\..\..\src\effects\VST\LoadVSTWin.cpp"
+ RelativePath="..\..\..\src\effects\VST\LoadVST.cpp"
>
</File>
<File
- RelativePath="..\..\..\src\effects\VST\LoadVSTWin.h"
+ RelativePath="..\..\..\src\effects\VST\LoadVST.h"
>
</File>
<File
@@ -1510,19 +1568,19 @@
Name="src/prefs"
>
<File
- RelativePath="..\..\..\src\prefs\AudioIOPrefs.cpp"
+ RelativePath="..\..\..\src\prefs\BatchPrefs.cpp"
>
</File>
<File
- RelativePath="..\..\..\src\prefs\AudioIOPrefs.h"
+ RelativePath="..\..\..\src\prefs\BatchPrefs.h"
>
</File>
<File
- RelativePath="..\..\..\src\prefs\BatchPrefs.cpp"
+ RelativePath="..\..\..\src\prefs\DevicePrefs.cpp"
>
</File>
<File
- RelativePath="..\..\..\src\prefs\BatchPrefs.h"
+ RelativePath="..\..\..\src\prefs\DevicePrefs.h"
>
</File>
<File
@@ -1534,19 +1592,19 @@
>
</File>
<File
- RelativePath="..\..\..\src\prefs\FileFormatPrefs.cpp"
+ RelativePath="..\..\..\src\prefs\GUIPrefs.cpp"
>
</File>
<File
- RelativePath="..\..\..\src\prefs\FileFormatPrefs.h"
+ RelativePath="..\..\..\src\prefs\GUIPrefs.h"
>
</File>
<File
- RelativePath="..\..\..\src\prefs\GUIPrefs.cpp"
+ RelativePath="..\..\..\src\prefs\ImportExportPrefs.cpp"
>
</File>
<File
- RelativePath="..\..\..\src\prefs\GUIPrefs.h"
+ RelativePath="..\..\..\src\prefs\ImportExportPrefs.h"
>
</File>
<File
@@ -1558,6 +1616,22 @@
>
</File>
<File
+ RelativePath="..\..\..\src\prefs\LibraryPrefs.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\src\prefs\LibraryPrefs.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\src\prefs\MidiIOPrefs.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\src\prefs\MidiIOPrefs.h"
+ >
+ </File>
+ <File
RelativePath="..\..\..\src\prefs\MousePrefs.cpp"
>
</File>
@@ -1566,6 +1640,14 @@
>
</File>
<File
+ RelativePath="..\..\..\src\prefs\PlaybackPrefs.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\src\prefs\PlaybackPrefs.h"
+ >
+ </File>
+ <File
RelativePath="..\..\..\src\prefs\PrefsDialog.cpp"
>
</File>
@@ -1578,6 +1660,14 @@
>
</File>
<File
+ RelativePath="..\..\..\src\prefs\ProjectsPrefs.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\src\prefs\ProjectsPrefs.h"
+ >
+ </File>
+ <File
RelativePath="..\..\..\src\prefs\QualityPrefs.cpp"
>
</File>
@@ -1586,11 +1676,11 @@
>
</File>
<File
- RelativePath="..\..\..\src\prefs\SmartRecordPrefs.cpp"
+ RelativePath="..\..\..\src\prefs\RecordingPrefs.cpp"
>
</File>
<File
- RelativePath="..\..\..\src\prefs\SmartRecordPrefs.h"
+ RelativePath="..\..\..\src\prefs\RecordingPrefs.h"
>
</File>
<File
@@ -1609,6 +1699,22 @@
RelativePath="..\..\..\src\prefs\ThemePrefs.h"
>
</File>
+ <File
+ RelativePath="..\..\..\src\prefs\TracksPrefs.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\src\prefs\TracksPrefs.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\src\prefs\WarningsPrefs.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\src\prefs\WarningsPrefs.h"
+ >
+ </File>
</Filter>
<Filter
Name="src/widgets"
@@ -1654,6 +1760,14 @@
>
</File>
<File
+ RelativePath="..\..\..\src\widgets\FileHistory.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\src\widgets\FileHistory.h"
+ >
+ </File>
+ <File
RelativePath="..\..\..\src\widgets\Grabber.cpp"
>
</File>
@@ -1806,6 +1920,38 @@
Name="src/commands"
>
<File
+ RelativePath="..\..\..\src\commands\AppCommandEvent.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\src\commands\AppCommandEvent.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\src\commands\BatchEvalCommand.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\src\commands\Command.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\src\commands\CommandBuilder.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\src\commands\CommandBuilder.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\src\commands\CommandHandler.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\src\commands\CommandHandler.h"
+ >
+ </File>
+ <File
RelativePath="..\..\..\src\commands\CommandManager.cpp"
>
</File>
@@ -1814,6 +1960,14 @@
>
</File>
<File
+ RelativePath="..\..\..\src\commands\CommandMisc.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\src\commands\DebugPrintCommand.h"
+ >
+ </File>
+ <File
RelativePath="..\..\..\src\commands\Keyboard.cpp"
>
</File>
@@ -1821,6 +1975,30 @@
RelativePath="..\..\..\src\commands\Keyboard.h"
>
</File>
+ <File
+ RelativePath="..\..\..\src\commands\ResponseQueue.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\src\commands\ResponseQueue.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\src\commands\ScreenshotCommand.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\src\commands\ScreenshotCommand.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\src\commands\ScriptCommandRelay.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\src\commands\ScriptCommandRelay.h"
+ >
+ </File>
</Filter>
<Filter
Name="src/blockfile"
@@ -2078,6 +2256,730 @@
>
</File>
</Filter>
+ <Filter
+ Name="plug-ins"
+ >
+ <File
+ RelativePath="..\..\..\plug-ins\analyze.ny"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\plug-ins\beat.ny"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\plug-ins\clicktrack.ny"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\plug-ins\clipfix.ny"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\plug-ins\crossfadein.ny"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\plug-ins\crossfadeout.ny"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\plug-ins\delay.ny"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\plug-ins\equalabel.ny"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\plug-ins\highpass.ny"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\plug-ins\lowpass.ny"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\plug-ins\pluck.ny"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\plug-ins\rissetdrum.ny"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\plug-ins\SilenceMarker.ny"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\plug-ins\tremolo.ny"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\plug-ins\vocalremover.ny"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\plug-ins\vocoder.ny"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="nyquist"
+ >
+ <File
+ RelativePath="..\..\..\nyquist\bug.lsp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\dspprims.lsp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\envelopes.lsp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\equalizer.lsp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\evalenv.lsp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\fileio.lsp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\follow.lsp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\init.lsp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\misc.lsp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\nyinit.lsp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\nyqmisc.lsp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\nyquist-plot.txt"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\nyquist.lsp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\printrec.lsp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\profile.lsp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\sal-parse.lsp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\sal.lsp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\seq.lsp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\seqfnint.lsp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\seqmidi.lsp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\sndfnint.lsp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\stk.lsp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\sys\win\msvc\system.lsp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\xlinit.lsp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\xm.lsp"
+ >
+ </File>
+ <Filter
+ Name="rawwaves"
+ >
+ <File
+ RelativePath="..\..\..\nyquist\rawwaves\mand1.raw"
+ >
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Unicode Debug|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\rawwaves\mand10.raw"
+ >
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Unicode Debug|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\rawwaves\mand11.raw"
+ >
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Unicode Debug|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\rawwaves\mand12.raw"
+ >
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Unicode Debug|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\rawwaves\mand2.raw"
+ >
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Unicode Debug|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\rawwaves\mand3.raw"
+ >
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Unicode Debug|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\rawwaves\mand4.raw"
+ >
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Unicode Debug|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\rawwaves\mand5.raw"
+ >
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Unicode Debug|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\rawwaves\mand6.raw"
+ >
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Unicode Debug|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\rawwaves\mand7.raw"
+ >
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Unicode Debug|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\rawwaves\mand8.raw"
+ >
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Unicode Debug|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\rawwaves\mand9.raw"
+ >
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Unicode Debug|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\rawwaves\mandpluk.raw"
+ >
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Unicode Debug|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\rawwaves\marmstk1.raw"
+ >
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Unicode Debug|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath="..\..\..\nyquist\rawwaves\sinewave.raw"
+ >
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Unicode Debug|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="copy"
+ OutputName=""$(OutDir)\nyquist\$(ParentName)\$(InputFileName)""
+ />
+ </FileConfiguration>
+ </File>
+ </Filter>
+ </Filter>
+ <File
+ RelativePath="..\..\ny.rules"
+ >
+ </File>
+ <File
+ RelativePath="..\..\po.rules"
+ >
+ </File>
</Files>
<Globals>
</Globals>
diff --git a/win/Projects/expat/expat.vcproj b/win/Projects/expat/expat.vcproj
index 7604cd3..3ae26ef 100644
--- a/win/Projects/expat/expat.vcproj
+++ b/win/Projects/expat/expat.vcproj
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
- Version="8.00"
+ Version="9.00"
Name="expat"
ProjectGUID="{38C2C6B1-FBF8-4C5C-BB90-63F996083F56}"
RootNamespace="expat"
+ TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
@@ -39,6 +40,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories="..\..\..\lib-src\expat\xmltok"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
StringPooling="true"
@@ -234,6 +236,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories="..\..\..\lib-src\expat\xmltok"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
StringPooling="true"
diff --git a/win/Projects/filedialog/filedialog.vcproj b/win/Projects/filedialog/filedialog.vcproj
index 43175fd..7c1bb55 100644
--- a/win/Projects/filedialog/filedialog.vcproj
+++ b/win/Projects/filedialog/filedialog.vcproj
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
- Version="8.00"
+ Version="9.00"
Name="filedialog"
ProjectGUID="{5284D863-3813-479F-BBF0-AC234E216BC6}"
RootNamespace="filedialog"
Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
@@ -40,6 +41,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories=""$(WXWIN)\lib\vc_dll\mswu";"$(WXWIN)\include""
PreprocessorDefinitions="WXUSINGDLL;WIN32;NDEBUG;_LIB"
StringPooling="true"
@@ -235,6 +237,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories=""$(WXWIN)\lib\vc_dll\msw";"$(WXWIN)\include""
PreprocessorDefinitions="WXUSINGDLL;WIN32;NDEBUG;_LIB"
StringPooling="true"
diff --git a/win/Projects/libflac++/libflac++.vcproj b/win/Projects/libflac++/libflac++.vcproj
index 99af442..70ea377 100644
--- a/win/Projects/libflac++/libflac++.vcproj
+++ b/win/Projects/libflac++/libflac++.vcproj
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
- Version="8.00"
+ Version="9.00"
Name="libflac++"
ProjectGUID="{B28C9F3F-FF0E-4FEC-844C-685390B8AC06}"
RootNamespace="libflac++"
+ TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
@@ -39,6 +40,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories="..\..\..\lib-src\libflac\include"
PreprocessorDefinitions="FLAC__NO_DLL;WIN32;NDEBUG;_LIB"
StringPooling="true"
@@ -231,6 +233,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories="..\..\..\lib-src\libflac\include"
PreprocessorDefinitions="FLAC__NO_DLL;WIN32;NDEBUG;_LIB"
StringPooling="true"
diff --git a/win/Projects/libflac/libflac.vcproj b/win/Projects/libflac/libflac.vcproj
index 90b4873..1d57080 100644
--- a/win/Projects/libflac/libflac.vcproj
+++ b/win/Projects/libflac/libflac.vcproj
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
- Version="8.00"
+ Version="9.00"
Name="libflac"
ProjectGUID="{6C7DC635-26FB-419A-B69A-7ECBBB068245}"
RootNamespace="libflac"
+ TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
@@ -39,6 +40,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories=""..\..\..\lib-src\libflac\src\libFLAC\include";"..\..\..\lib-src\libflac\include""
PreprocessorDefinitions="FLAC__NO_DLL;NDEBUG;WIN32;_LIB;VERSION=\"1.0.4\";FLAC__CPU_IA32"
StringPooling="true"
@@ -234,6 +236,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories=""..\..\..\lib-src\libflac\src\libFLAC\include";"..\..\..\lib-src\libflac\include""
PreprocessorDefinitions="FLAC__NO_DLL;NDEBUG;WIN32;_LIB;VERSION=\"1.0.4\";FLAC__CPU_IA32"
StringPooling="true"
diff --git a/win/Projects/libid3tag/libid3tag.vcproj b/win/Projects/libid3tag/libid3tag.vcproj
index b38de8f..ef48e43 100644
--- a/win/Projects/libid3tag/libid3tag.vcproj
+++ b/win/Projects/libid3tag/libid3tag.vcproj
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
- Version="8.00"
+ Version="9.00"
Name="libid3tag"
ProjectGUID="{D96C7BE1-E3F1-4767-BBBB-320E082CE425}"
RootNamespace="libid3tag"
+ TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
@@ -39,6 +40,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories="$(WXWIN)\src\zlib"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
StringPooling="true"
@@ -234,6 +236,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories="$(WXWIN)\src\zlib"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
StringPooling="true"
diff --git a/win/Projects/liblrdf/liblrdf.vcproj b/win/Projects/liblrdf/liblrdf.vcproj
index 312a215..e871f93 100644
--- a/win/Projects/liblrdf/liblrdf.vcproj
+++ b/win/Projects/liblrdf/liblrdf.vcproj
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
- Version="8.00"
+ Version="9.00"
Name="liblrdf"
ProjectGUID="{7BAFA434-3257-408A-AAC0-A8D352B2CE54}"
RootNamespace="liblrdf"
+ TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
@@ -39,6 +40,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories=""..\..\..\lib-src\liblrdf";"..\..\..\lib-src\liblrdf\src";..\raptor;"..\..\..\lib-src\libraptor\src""
PreprocessorDefinitions="WIN32;NDEBUG;_LIB;RAPTOR_STATIC=1"
StringPooling="true"
@@ -234,6 +236,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories=""..\..\..\lib-src\liblrdf";"..\..\..\lib-src\liblrdf\src";..\raptor;"..\..\..\lib-src\libraptor\src""
PreprocessorDefinitions="WIN32;NDEBUG;_LIB;RAPTOR_STATIC=1"
StringPooling="true"
diff --git a/win/Projects/libmad/libmad.vcproj b/win/Projects/libmad/libmad.vcproj
index f54c4e0..3aa750d 100644
--- a/win/Projects/libmad/libmad.vcproj
+++ b/win/Projects/libmad/libmad.vcproj
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
- Version="8.00"
+ Version="9.00"
Name="libmad"
ProjectGUID="{A52BBEA5-8B02-4147-8734-5D9BBF4D1177}"
RootNamespace="libmad"
+ TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
@@ -39,6 +40,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories="..\..\..\lib-src\libmad\msvc++"
PreprocessorDefinitions="NDEBUG;__WX__;WIN32;_WINDOWS;__WINDOWS__;__WXMSW__;__WIN95__;__WIN32__;_LIB;HAVE_CONFIG_H;FPM_INTEL"
StringPooling="true"
@@ -234,6 +236,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories="..\..\..\lib-src\libmad\msvc++"
PreprocessorDefinitions="NDEBUG;__WX__;WIN32;_WINDOWS;__WINDOWS__;__WXMSW__;__WIN95__;__WIN32__;_LIB;HAVE_CONFIG_H;FPM_INTEL"
StringPooling="true"
diff --git a/win/Projects/libnyquist/libnyquist.vcproj b/win/Projects/libnyquist/libnyquist.vcproj
index d1990cf..961ce4d 100644
--- a/win/Projects/libnyquist/libnyquist.vcproj
+++ b/win/Projects/libnyquist/libnyquist.vcproj
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
- Version="8.00"
+ Version="9.00"
Name="libnyquist"
ProjectGUID="{7AA41BED-41B0-427A-9148-DEA40549D158}"
RootNamespace="libnyquist"
+ TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
@@ -24,7 +25,7 @@
>
<Tool
Name="VCPreBuildEventTool"
- CommandLine="set OUTDIR=$(InputDir)
set INTGEN="$(InputDir)/$(ConfigurationName)/intgen.exe"
cd ..\..\..\lib-src\libnyquist
cl /Fe%INTGEN% /D WIN32 /D NDEBUG /I win /I cmt misc\intgen.c misc\cmdline.c
%INTGEN% "%OUTDIR%/sndfnint" snd/snd.h nyqsrc/sound.h nyqsrc/downsample.h nyqsrc/sndread.h nyqsrc/sndseq.h nyqsrc/add.h nyqsrc/multiseq.h nyqsrc/samples.h nyqsrc/sndwrite.h nyqsrc/sndmax.h nyqsrc/compose.h nyqsrc/inverse.h nyqsrc/resamp.h nyqsrc/resampv.h nyqsrc/fft.h nyqsrc/avg.h tran/amosc.h tran/clip.h tran/const.h tran/fmosc.h tran/integrate.h tran/log.h tran/maxv.h tran/osc.h tran/prod.h tran/buzz.h tran/pwl.h tran/recip.h tran/upsample.h tran/scale.h tran/sine.h tran/partial.h tran/white.h tran/tone.h tran/tonev.h tran/atonev.h tran/atone.h tran/reson.h tran/areson.h tran/resonvc.h tran/resoncv.h tran/aresonvc.h tran/aresoncv.h tran/resonvv.h tran/aresonvv.h tran/offset.h tran/slope.h tran/delay.h tran/delaycv.h tran/shape.h tran/sampler.h tran/exp.h tran/siosc.h tran/follow.h tran/gate.h tran/quantize.h tran/ifft.h tran/congen.h tran/fromobject.h tran/fromarraystream.h tran/coterm.h tran/convolve.h tran/alpass.h tran/oneshot.h tran/chase.h tran/tapv.h tran/biquad.h tran/pluck.h tran/abs.h tran/sqrt.h tran/alpasscv.h tran/alpassvc.h
%INTGEN% "%OUTDIR%/seqfnint" cmt/seqdecls.h nyqsrc/seqext.h cmt/seq.h nyqsrc/seqinterf.h cmt/seqread.h cmt/seqmread.h cmt/seqwrite.h cmt/seqmwrite.h
"
+ CommandLine=""
/>
<Tool
Name="VCCustomBuildTool"
@@ -40,7 +41,8 @@
/>
<Tool
Name="VCCLCompilerTool"
- AdditionalIncludeDirectories=""$(ConfigurationName)";"..\..\..\lib-src\libnyquist";"..\..\..\lib-src\libnyquist\win";"..\..\..\lib-src\libnyquist\xlisp";"..\..\..\lib-src\libnyquist\nyqsrc";"..\..\..\lib-src\libnyquist\cmt";"..\..\..\lib-src\libnyquist\fft";"..\..\..\lib-src\libnyquist\tran";"..\..\..\lib-src\libnyquist\snd";"..\..\..\lib-src\libnyquist\sys""
+ Optimization="2"
+ AdditionalIncludeDirectories=""..\..\..\lib-src\libnyquist";"..\..\..\lib-src\libnyquist\nyquist";"..\..\..\lib-src\libnyquist\nyquist\cmt";"..\..\..\lib-src\libnyquist\nyquist\ffts\src";"..\..\..\lib-src\libnyquist\nyquist\nyqsrc";"..\..\..\lib-src\libnyquist\nyquist\nyqstk";"..\..\..\lib-src\libnyquist\nyquist\nyqstk\include";"..\..\..\lib-src\libnyquist\nyquist\snd";"..\..\..\lib-src\libnyquist\nyquist\tran";"..\..\..\lib-src\libnyquist\nyquist\sys\win\msvc";"..\..\..\lib-src\libnyquist\nyquist\xlisp";"..\..\..\lib-src\libnyquist\nyquist\win";..\libsndfile;"..\..\..\lib-src\portaudio-v19\include""
PreprocessorDefinitions="NDEBUG;WIN32;_LIB"
StringPooling="true"
RuntimeLibrary="2"
@@ -88,7 +90,7 @@
>
<Tool
Name="VCPreBuildEventTool"
- CommandLine="set OUTDIR=$(InputDir)
set INTGEN="$(InputDir)/$(ConfigurationName)/intgen.exe"
cd ..\..\..\lib-src\libnyquist
cl /Fe%INTGEN% /D WIN32 /D NDEBUG /I win /I cmt misc\intgen.c misc\cmdline.c
%INTGEN% "%OUTDIR%/sndfnint" snd/snd.h nyqsrc/sound.h nyqsrc/downsample.h nyqsrc/sndread.h nyqsrc/sndseq.h nyqsrc/add.h nyqsrc/multiseq.h nyqsrc/samples.h nyqsrc/sndwrite.h nyqsrc/sndmax.h nyqsrc/compose.h nyqsrc/inverse.h nyqsrc/resamp.h nyqsrc/resampv.h nyqsrc/fft.h nyqsrc/avg.h tran/amosc.h tran/clip.h tran/const.h tran/fmosc.h tran/integrate.h tran/log.h tran/maxv.h tran/osc.h tran/prod.h tran/buzz.h tran/pwl.h tran/recip.h tran/upsample.h tran/scale.h tran/sine.h tran/partial.h tran/white.h tran/tone.h tran/tonev.h tran/atonev.h tran/atone.h tran/reson.h tran/areson.h tran/resonvc.h tran/resoncv.h tran/aresonvc.h tran/aresoncv.h tran/resonvv.h tran/aresonvv.h tran/offset.h tran/slope.h tran/delay.h tran/delaycv.h tran/shape.h tran/sampler.h tran/exp.h tran/siosc.h tran/follow.h tran/gate.h tran/quantize.h tran/ifft.h tran/congen.h tran/fromobject.h tran/fromarraystream.h tran/coterm.h tran/convolve.h tran/alpass.h tran/oneshot.h tran/chase.h tran/tapv.h tran/biquad.h tran/pluck.h tran/abs.h tran/sqrt.h tran/alpasscv.h tran/alpassvc.h
%INTGEN% "%OUTDIR%/seqfnint" cmt/seqdecls.h nyqsrc/seqext.h cmt/seq.h nyqsrc/seqinterf.h cmt/seqread.h cmt/seqmread.h cmt/seqwrite.h cmt/seqmwrite.h
"
+ CommandLine=""
/>
<Tool
Name="VCCustomBuildTool"
@@ -105,7 +107,7 @@
<Tool
Name="VCCLCompilerTool"
Optimization="0"
- AdditionalIncludeDirectories=""$(ConfigurationName)";"..\..\..\lib-src\libnyquist";"..\..\..\lib-src\libnyquist\win";"..\..\..\lib-src\libnyquist\xlisp";"..\..\..\lib-src\libnyquist\nyqsrc";"..\..\..\lib-src\libnyquist\cmt";"..\..\..\lib-src\libnyquist\fft";"..\..\..\lib-src\libnyquist\tran";"..\..\..\lib-src\libnyquist\snd";"..\..\..\lib-src\libnyquist\sys""
+ AdditionalIncludeDirectories=""..\..\..\lib-src\libnyquist";"..\..\..\lib-src\libnyquist\nyquist";"..\..\..\lib-src\libnyquist\nyquist\cmt";"..\..\..\lib-src\libnyquist\nyquist\ffts\src";"..\..\..\lib-src\libnyquist\nyquist\nyqsrc";"..\..\..\lib-src\libnyquist\nyquist\nyqstk";"..\..\..\lib-src\libnyquist\nyquist\nyqstk\include";"..\..\..\lib-src\libnyquist\nyquist\snd";"..\..\..\lib-src\libnyquist\nyquist\tran";"..\..\..\lib-src\libnyquist\nyquist\sys\win\msvc";"..\..\..\lib-src\libnyquist\nyquist\xlisp";"..\..\..\lib-src\libnyquist\nyquist\win";..\libsndfile;"..\..\..\lib-src\portaudio-v19\include""
PreprocessorDefinitions="_DEBUG;WIN32;_LIB"
StringPooling="true"
BasicRuntimeChecks="3"
@@ -155,7 +157,7 @@
>
<Tool
Name="VCPreBuildEventTool"
- CommandLine="set OUTDIR=$(InputDir)
set INTGEN="$(InputDir)/$(ConfigurationName)/intgen.exe"
cd ..\..\..\lib-src\libnyquist
cl /Fe%INTGEN% /D WIN32 /D NDEBUG /I win /I cmt misc\intgen.c misc\cmdline.c
%INTGEN% "%OUTDIR%/sndfnint" snd/snd.h nyqsrc/sound.h nyqsrc/downsample.h nyqsrc/sndread.h nyqsrc/sndseq.h nyqsrc/add.h nyqsrc/multiseq.h nyqsrc/samples.h nyqsrc/sndwrite.h nyqsrc/sndmax.h nyqsrc/compose.h nyqsrc/inverse.h nyqsrc/resamp.h nyqsrc/resampv.h nyqsrc/fft.h nyqsrc/avg.h tran/amosc.h tran/clip.h tran/const.h tran/fmosc.h tran/integrate.h tran/log.h tran/maxv.h tran/osc.h tran/prod.h tran/buzz.h tran/pwl.h tran/recip.h tran/upsample.h tran/scale.h tran/sine.h tran/partial.h tran/white.h tran/tone.h tran/tonev.h tran/atonev.h tran/atone.h tran/reson.h tran/areson.h tran/resonvc.h tran/resoncv.h tran/aresonvc.h tran/aresoncv.h tran/resonvv.h tran/aresonvv.h tran/offset.h tran/slope.h tran/delay.h tran/delaycv.h tran/shape.h tran/sampler.h tran/exp.h tran/siosc.h tran/follow.h tran/gate.h tran/quantize.h tran/ifft.h tran/congen.h tran/fromobject.h tran/fromarraystream.h tran/coterm.h tran/convolve.h tran/alpass.h tran/oneshot.h tran/chase.h tran/tapv.h tran/biquad.h tran/pluck.h tran/abs.h tran/sqrt.h tran/alpasscv.h tran/alpassvc.h
%INTGEN% "%OUTDIR%/seqfnint" cmt/seqdecls.h nyqsrc/seqext.h cmt/seq.h nyqsrc/seqinterf.h cmt/seqread.h cmt/seqmread.h cmt/seqwrite.h cmt/seqmwrite.h
"
+ CommandLine=""
/>
<Tool
Name="VCCustomBuildTool"
@@ -172,7 +174,7 @@
<Tool
Name="VCCLCompilerTool"
Optimization="0"
- AdditionalIncludeDirectories=""$(ConfigurationName)";"..\..\..\lib-src\libnyquist";"..\..\..\lib-src\libnyquist\win";"..\..\..\lib-src\libnyquist\xlisp";"..\..\..\lib-src\libnyquist\nyqsrc";"..\..\..\lib-src\libnyquist\cmt";"..\..\..\lib-src\libnyquist\fft";"..\..\..\lib-src\libnyquist\tran";"..\..\..\lib-src\libnyquist\snd";"..\..\..\lib-src\libnyquist\sys""
+ AdditionalIncludeDirectories=""..\..\..\lib-src\libnyquist";"..\..\..\lib-src\libnyquist\nyquist";"..\..\..\lib-src\libnyquist\nyquist\cmt";"..\..\..\lib-src\libnyquist\nyquist\ffts\src";"..\..\..\lib-src\libnyquist\nyquist\nyqsrc";"..\..\..\lib-src\libnyquist\nyquist\nyqstk";"..\..\..\lib-src\libnyquist\nyquist\nyqstk\include";"..\..\..\lib-src\libnyquist\nyquist\snd";"..\..\..\lib-src\libnyquist\nyquist\tran";"..\..\..\lib-src\libnyquist\nyquist\sys\win\msvc";"..\..\..\lib-src\libnyquist\nyquist\xlisp";"..\..\..\lib-src\libnyquist\nyquist\win";..\libsndfile;"..\..\..\lib-src\portaudio-v19\include""
PreprocessorDefinitions="_DEBUG;WIN32;_LIB"
StringPooling="true"
BasicRuntimeChecks="3"
@@ -222,7 +224,7 @@
>
<Tool
Name="VCPreBuildEventTool"
- CommandLine="set OUTDIR=$(InputDir)
set INTGEN="$(InputDir)/$(ConfigurationName)/intgen.exe"
cd ..\..\..\lib-src\libnyquist
cl /Fe%INTGEN% /D WIN32 /D NDEBUG /I win /I cmt misc\intgen.c misc\cmdline.c
%INTGEN% "%OUTDIR%/sndfnint" snd/snd.h nyqsrc/sound.h nyqsrc/downsample.h nyqsrc/sndread.h nyqsrc/sndseq.h nyqsrc/add.h nyqsrc/multiseq.h nyqsrc/samples.h nyqsrc/sndwrite.h nyqsrc/sndmax.h nyqsrc/compose.h nyqsrc/inverse.h nyqsrc/resamp.h nyqsrc/resampv.h nyqsrc/fft.h nyqsrc/avg.h tran/amosc.h tran/clip.h tran/const.h tran/fmosc.h tran/integrate.h tran/log.h tran/maxv.h tran/osc.h tran/prod.h tran/buzz.h tran/pwl.h tran/recip.h tran/upsample.h tran/scale.h tran/sine.h tran/partial.h tran/white.h tran/tone.h tran/tonev.h tran/atonev.h tran/atone.h tran/reson.h tran/areson.h tran/resonvc.h tran/resoncv.h tran/aresonvc.h tran/aresoncv.h tran/resonvv.h tran/aresonvv.h tran/offset.h tran/slope.h tran/delay.h tran/delaycv.h tran/shape.h tran/sampler.h tran/exp.h tran/siosc.h tran/follow.h tran/gate.h tran/quantize.h tran/ifft.h tran/congen.h tran/fromobject.h tran/fromarraystream.h tran/coterm.h tran/convolve.h tran/alpass.h tran/oneshot.h tran/chase.h tran/tapv.h tran/biquad.h tran/pluck.h tran/abs.h tran/sqrt.h tran/alpasscv.h tran/alpassvc.h
%INTGEN% "%OUTDIR%/seqfnint" cmt/seqdecls.h nyqsrc/seqext.h cmt/seq.h nyqsrc/seqinterf.h cmt/seqread.h cmt/seqmread.h cmt/seqwrite.h cmt/seqmwrite.h
"
+ CommandLine=""
/>
<Tool
Name="VCCustomBuildTool"
@@ -238,7 +240,8 @@
/>
<Tool
Name="VCCLCompilerTool"
- AdditionalIncludeDirectories=""$(ConfigurationName)";"..\..\..\lib-src\libnyquist";"..\..\..\lib-src\libnyquist\win";"..\..\..\lib-src\libnyquist\xlisp";"..\..\..\lib-src\libnyquist\nyqsrc";"..\..\..\lib-src\libnyquist\cmt";"..\..\..\lib-src\libnyquist\fft";"..\..\..\lib-src\libnyquist\tran";"..\..\..\lib-src\libnyquist\snd";"..\..\..\lib-src\libnyquist\sys""
+ Optimization="2"
+ AdditionalIncludeDirectories=""..\..\..\lib-src\libnyquist";"..\..\..\lib-src\libnyquist\nyquist";"..\..\..\lib-src\libnyquist\nyquist\cmt";"..\..\..\lib-src\libnyquist\nyquist\ffts\src";"..\..\..\lib-src\libnyquist\nyquist\nyqsrc";"..\..\..\lib-src\libnyquist\nyquist\nyqstk";"..\..\..\lib-src\libnyquist\nyquist\nyqstk\include";"..\..\..\lib-src\libnyquist\nyquist\snd";"..\..\..\lib-src\libnyquist\nyquist\tran";"..\..\..\lib-src\libnyquist\nyquist\sys\win\msvc";"..\..\..\lib-src\libnyquist\nyquist\xlisp";"..\..\..\lib-src\libnyquist\nyquist\win";..\libsndfile;"..\..\..\lib-src\portaudio-v19\include""
PreprocessorDefinitions="NDEBUG;WIN32;_LIB"
StringPooling="true"
RuntimeLibrary="2"
@@ -281,601 +284,901 @@
</References>
<Files>
<Filter
- Name="nyqsrc"
+ Name="nyquist"
>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\nyqsrc\add.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\nyqsrc\avg.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\nyqsrc\compose.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\nyqsrc\debug.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\nyqsrc\downsample.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\nyqsrc\falloc.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\nyqsrc\ffilterkit.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\nyqsrc\fft.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\nyqsrc\handlers.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\nyqsrc\inverse.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\nyqsrc\local.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\nyqsrc\multiread.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\nyqsrc\multiseq.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\nyqsrc\probe.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\nyqsrc\resamp.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\nyqsrc\resampv.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\nyqsrc\samples.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\nyqsrc\seqext.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\nyqsrc\seqinterf.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\nyqsrc\sndfail.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\nyqsrc\sndmax.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\nyqsrc\sndread.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\nyqsrc\sndseq.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\nyqsrc\sndwrite.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\nyqsrc\sound.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\nyqsrc\stats.c"
- >
- </File>
+ <Filter
+ Name="cmt"
+ >
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\cmt\cext.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\cmt\cleanup.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\cmt\cmdline.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\cmt\cmtcmd.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\cmt\mem.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\cmt\midifile.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\cmt\midifns.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\cmt\moxc.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\cmt\record.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\cmt\seq.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\cmt\seqmread.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\cmt\seqmwrite.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\cmt\seqread.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\cmt\seqwrite.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\cmt\tempomap.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\cmt\timebase.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\cmt\userio.c"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="ffts"
+ >
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\ffts\src\fftext.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\ffts\src\fftext.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\ffts\src\fftlib.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\ffts\src\fftlib.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\ffts\src\matlib.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\ffts\src\matlib.h"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="nyqsrc"
+ >
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqsrc\add.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqsrc\avg.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqsrc\compose.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqsrc\convolve.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqsrc\debug.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqsrc\downsample.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqsrc\falloc.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqsrc\ffilterkit.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqsrc\fft.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqsrc\handlers.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqsrc\inverse.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqsrc\local.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqsrc\lpanal.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqsrc\multiread.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqsrc\multiseq.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqsrc\resamp.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqsrc\resampv.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqsrc\samples.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqsrc\seqext.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqsrc\seqfnint.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqsrc\seqinterf.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqsrc\sliders.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqsrc\sndfnint.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqsrc\sndmax.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqsrc\sndread.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqsrc\sndseq.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqsrc\sndwritepa.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqsrc\sound.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqsrc\stats.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqsrc\trigger.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqsrc\yin.c"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="sys"
+ >
+ <Filter
+ Name="win"
+ >
+ <Filter
+ Name="msvc"
+ >
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\sys\win\msvc\winfun.c"
+ >
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Unicode Debug|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ />
+ </FileConfiguration>
+ </File>
+ </Filter>
+ </Filter>
+ </Filter>
+ <Filter
+ Name="tran"
+ >
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\abs.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\allpoles.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\alpass.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\alpasscv.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\alpassvc.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\alpassvv.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\amosc.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\areson.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\aresoncv.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\aresonvc.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\aresonvv.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\atone.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\atonev.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\biquadfilt.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\buzz.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\chase.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\clip.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\congen.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\const.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\coterm.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\delaycc.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\delaycv.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\eqbandvvv.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\exp.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\fmfb.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\fmfbv.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\fmosc.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\follow.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\fromarraystream.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\fromobject.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\gate.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\ifft.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\instrbanded.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\instrbow.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\instrbowedfreq.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\instrclar.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\instrclarall.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\instrclarfreq.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\instrflute.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\instrfluteall.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\instrflutefreq.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\instrmandolin.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\instrmodalbar.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\instrsax.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\instrsaxall.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\instrsaxfreq.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\instrsitar.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\integrate.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\log.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\lpreson.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\maxv.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\offset.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\oneshot.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\osc.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\partial.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\pluck.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\prod.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\pwl.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\quantize.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\recip.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\reson.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\resoncv.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\resonvc.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\resonvv.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\sampler.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\scale.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\shape.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\sine.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\siosc.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\slope.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\sqrt.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\stkchorus.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\stkpitshift.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\stkrev.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\tapf.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\tapv.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\tone.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\tonev.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\upsample.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\tran\white.c"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="xlisp"
+ >
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\xlisp\extern.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\xlisp\path.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\xlisp\xlbfun.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\xlisp\xlcont.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\xlisp\xldbug.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\xlisp\xldmem.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\xlisp\xleval.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\xlisp\xlfio.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\xlisp\xlftab.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\xlisp\xlglob.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\xlisp\xlimage.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\xlisp\xlinit.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\xlisp\xlio.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\xlisp\xlisp.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\xlisp\xljump.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\xlisp\xllist.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\xlisp\xlmath.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\xlisp\xlobj.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\xlisp\xlpp.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\xlisp\xlprin.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\xlisp\xlread.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\xlisp\xlstr.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\xlisp\xlsubr.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\xlisp\xlsym.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\xlisp\xlsys.c"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="nyqstk"
+ >
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\instr.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\stkinit.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\stkint.cpp"
+ >
+ </File>
+ <Filter
+ Name="src"
+ >
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\ADSR.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\BandedWG.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\BiQuad.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\Bowed.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\BowTable.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\Chorus.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\Clarinet.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\Delay.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\DelayA.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\DelayL.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\Effect.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\Envelope.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\FileRead.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\FileWvIn.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\Filter.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\Flute.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\Function.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\Generator.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\Instrmnt.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\JCRev.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\JetTable.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\Mandolin.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\Modal.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\ModalBar.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\Noise.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\NRev.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\OnePole.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\OneZero.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\PitShift.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\PluckTwo.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\PoleZero.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\PRCRev.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\ReedTable.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\Saxofony.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\SineWave.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\Sitar.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\Stk.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\WaveLoop.cpp"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyquist\nyqstk\src\WvIn.cpp"
+ >
+ </File>
+ </Filter>
+ </Filter>
</Filter>
- <Filter
- Name="xlisp"
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyx.c"
>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\xlisp\extern.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\xlisp\path.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\xlisp\xlbfun.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\xlisp\xlcont.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\xlisp\xldbug.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\xlisp\xldmem.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\xlisp\xleval.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\xlisp\xlextstart.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\xlisp\xlfio.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\xlisp\xlftab.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\xlisp\xlglob.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\xlisp\xlimage.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\xlisp\xlinit.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\xlisp\xlio.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\xlisp\xlisp.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\xlisp\xljump.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\xlisp\xllist.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\xlisp\xlmath.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\xlisp\xlobj.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\xlisp\xlpp.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\xlisp\xlprin.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\xlisp\xlread.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\xlisp\xlstr.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\xlisp\xlsubr.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\xlisp\xlsym.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\xlisp\xlsys.c"
- >
- </File>
- </Filter>
- <Filter
- Name="cmt"
- >
- <File
- RelativePath="..\..\..\lib-src\libnyquist\cmt\cext.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\cmt\cleanup.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\cmt\cmdline.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\cmt\cmtcmd.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\cmt\mem.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\cmt\midifile.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\cmt\midifns.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\cmt\moxc.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\cmt\record.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\cmt\seq.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\cmt\seqmread.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\cmt\seqmwrite.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\cmt\seqread.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\cmt\seqwrite.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\cmt\tempomap.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\cmt\timebase.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\cmt\userio.c"
- >
- </File>
- </Filter>
- <Filter
- Name="fft"
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\nyx.h"
>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\fft\fftn.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\fft\fftn.h"
- >
- </File>
- </Filter>
- <Filter
- Name="nyx"
+ </File>
+ <File
+ RelativePath="..\..\..\lib-src\libnyquist\xlextstart.c"
>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\nyx\nyx.c"
- >
- </File>
- </Filter>
- <Filter
- Name="tran"
- >
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\abs.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\alpass.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\alpasscv.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\alpassvc.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\amosc.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\areson.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\aresoncv.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\aresonvc.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\aresonvv.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\atone.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\atonev.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\biquad.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\buzz.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\chase.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\clip.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\congen.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\const.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\convolve.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\coterm.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\delay.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\delaycv.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\exp.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\fmosc.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\follow.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\fromarraystream.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\fromobject.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\gate.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\ifft.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\integrate.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\log.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\maxv.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\offset.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\oneshot.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\osc.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\partial.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\pluck.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\prod.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\pwl.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\quant.c.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\quantize.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\recip.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\reson.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\resoncv.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\resonvc.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\resonvv.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\sampler.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\scale.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\shape.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\sine.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\siosc.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\slope.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\sqrt.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\tapv.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\tone.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\tonev.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\upsample.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\tran\white.c"
- >
- </File>
- </Filter>
- <Filter
- Name="snd"
- >
- <File
- RelativePath="..\..\..\lib-src\libnyquist\snd\audionone.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\snd\ieeecvt.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\snd\snd.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\snd\sndcvt.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\snd\sndheader.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\snd\sndio.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\snd\sndwin32.c"
- >
- </File>
- </Filter>
- <Filter
- Name="sys"
- >
- <File
- RelativePath="..\..\..\lib-src\libnyquist\sys\term.c"
- >
- </File>
- <File
- RelativePath="..\..\..\lib-src\libnyquist\win\winfun.c"
- >
- </File>
- </Filter>
- <Filter
- Name="gen"
- >
- <File
- RelativePath=".\seqfnint.c"
- >
- </File>
- <File
- RelativePath=".\sndfnint.c"
- >
- </File>
- </Filter>
+ </File>
</Files>
<Globals>
</Globals>
diff --git a/win/Projects/libogg/libogg.vcproj b/win/Projects/libogg/libogg.vcproj
index c885bf8..207606f 100644
--- a/win/Projects/libogg/libogg.vcproj
+++ b/win/Projects/libogg/libogg.vcproj
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
- Version="8.00"
+ Version="9.00"
Name="libogg"
ProjectGUID="{A939AAF8-44F1-4CE7-9DD0-7A6E99814857}"
RootNamespace="libogg"
+ TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
@@ -39,6 +40,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories="..\..\..\lib-src\libogg\include"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
StringPooling="true"
@@ -234,6 +236,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories="..\..\..\lib-src\libogg\include"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
StringPooling="true"
diff --git a/win/Projects/librdf/librdf.vcproj b/win/Projects/librdf/librdf.vcproj
index 883bf42..73060d4 100644
--- a/win/Projects/librdf/librdf.vcproj
+++ b/win/Projects/librdf/librdf.vcproj
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
- Version="8.00"
+ Version="9.00"
Name="librdf"
ProjectGUID="{F1E127C2-58B1-4CBF-B91F-0CF6DB9CC6DD}"
RootNamespace="librdf"
+ TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
@@ -39,6 +40,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories=""..\..\..\lib-src\redland\librdf";..\raptor;"..\..\..\lib-src\redland\raptor\src";..\rasqal;"..\..\..\lib-src\redland\rasqal\src""
PreprocessorDefinitions="WIN32;NDEBUG;_LIB;LIBRDF_INTERNAL=1;PKGDATADIR=\".\""
StringPooling="true"
@@ -234,6 +236,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories=""..\..\..\lib-src\redland\librdf";..\raptor;"..\..\..\lib-src\redland\raptor\src";..\rasqal;"..\..\..\lib-src\redland\rasqal\src""
PreprocessorDefinitions="WIN32;NDEBUG;_LIB;LIBRDF_INTERNAL=1;PKGDATADIR=\".\""
StringPooling="true"
diff --git a/win/Projects/libresample/libresample.vcproj b/win/Projects/libresample/libresample.vcproj
index 34618e2..8621351 100644
--- a/win/Projects/libresample/libresample.vcproj
+++ b/win/Projects/libresample/libresample.vcproj
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
- Version="8.00"
+ Version="9.00"
Name="libresample"
ProjectGUID="{F00717F2-67C8-44E1-AF00-541DFA9CB7F2}"
RootNamespace="libresample"
+ TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
@@ -39,6 +40,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
StringPooling="true"
RuntimeLibrary="2"
@@ -231,6 +233,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
StringPooling="true"
RuntimeLibrary="2"
diff --git a/win/Projects/libsamplerate/libsamplerate.vcproj b/win/Projects/libsamplerate/libsamplerate.vcproj
index c04d3c7..80f1f08 100644
--- a/win/Projects/libsamplerate/libsamplerate.vcproj
+++ b/win/Projects/libsamplerate/libsamplerate.vcproj
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
- Version="8.00"
+ Version="9.00"
Name="libsamplerate"
ProjectGUID="{3DDDCAA9-276D-4FC3-A15C-485F7B9B24CC}"
RootNamespace="libsamplerate"
+ TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
@@ -39,6 +40,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories="..\..\..\lib-src\libsamplerate\Win32"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
StringPooling="true"
@@ -234,6 +236,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories="..\..\..\lib-src\libsamplerate\Win32"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
StringPooling="true"
diff --git a/win/Projects/libscorealign/libscorealign.vcproj b/win/Projects/libscorealign/libscorealign.vcproj
index cb7452d..a404775 100644
--- a/win/Projects/libscorealign/libscorealign.vcproj
+++ b/win/Projects/libscorealign/libscorealign.vcproj
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
- Version="8.00"
+ Version="9.00"
Name="libscorealign"
ProjectGUID="{C0FE933B-4AF7-4ACD-95E8-ACD3A73F1400}"
RootNamespace="libscorealign"
+ TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
@@ -39,6 +40,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories=""..\..\..\lib-src\portsmf""
PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
StringPooling="true"
@@ -234,6 +236,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories=""..\..\..\lib-src\portsmf""
PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
StringPooling="true"
diff --git a/win/Projects/libsndfile/libsndfile.vcproj b/win/Projects/libsndfile/libsndfile.vcproj
index 647b8e7..2b86ac9 100644
--- a/win/Projects/libsndfile/libsndfile.vcproj
+++ b/win/Projects/libsndfile/libsndfile.vcproj
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
- Version="8.00"
+ Version="9.00"
Name="libsndfile"
ProjectGUID="{F4B4A272-4ED3-4951-A6EE-B7BAAC1C4952}"
RootNamespace="libsndfile"
+ TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
@@ -39,8 +40,9 @@
/>
<Tool
Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="..\..\..\lib-src\libsndfile\Win32;..\..\..\lib-src\libsndfile\include;..\..\..\lib-src\libsndfile\src"
- PreprocessorDefinitions="WIN32;NDEBUG;_LIB;inline=__inline"
+ Optimization="2"
+ AdditionalIncludeDirectories=".;"..\..\..\lib-src\libsndfile\include";"..\..\..\lib-src\libsndfile\src""
+ PreprocessorDefinitions="WIN32;NDEBUG;_LIB;inline=__inline;LIBSNDFILE_PRIVATE_CONFIG"
StringPooling="true"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
@@ -103,8 +105,8 @@
<Tool
Name="VCCLCompilerTool"
Optimization="0"
- AdditionalIncludeDirectories="..\..\..\lib-src\libsndfile\Win32;..\..\..\lib-src\libsndfile\include;..\..\..\lib-src\libsndfile\src"
- PreprocessorDefinitions="WIN32;_DEBUG;_LIB;inline=__inline"
+ AdditionalIncludeDirectories=".;"..\..\..\lib-src\libsndfile\include";"..\..\..\lib-src\libsndfile\src""
+ PreprocessorDefinitions="WIN32;_DEBUG;_LIB;inline=__inline;LIBSNDFILE_PRIVATE_CONFIG"
StringPooling="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
@@ -169,8 +171,8 @@
<Tool
Name="VCCLCompilerTool"
Optimization="0"
- AdditionalIncludeDirectories="..\..\..\lib-src\libsndfile\Win32;..\..\..\lib-src\libsndfile\include;..\..\..\lib-src\libsndfile\src"
- PreprocessorDefinitions="WIN32;_DEBUG;_LIB;inline=__inline"
+ AdditionalIncludeDirectories=".;"..\..\..\lib-src\libsndfile\include";"..\..\..\lib-src\libsndfile\src""
+ PreprocessorDefinitions="WIN32;_DEBUG;_LIB;inline=__inline;LIBSNDFILE_PRIVATE_CONFIG"
StringPooling="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
@@ -234,8 +236,9 @@
/>
<Tool
Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="..\..\..\lib-src\libsndfile\Win32;..\..\..\lib-src\libsndfile\include;..\..\..\lib-src\libsndfile\src"
- PreprocessorDefinitions="WIN32;NDEBUG;_LIB;inline=__inline"
+ Optimization="2"
+ AdditionalIncludeDirectories=".;"..\..\..\lib-src\libsndfile\include";"..\..\..\lib-src\libsndfile\src""
+ PreprocessorDefinitions="WIN32;NDEBUG;_LIB;inline=__inline;LIBSNDFILE_PRIVATE_CONFIG"
StringPooling="true"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
@@ -292,6 +295,10 @@
>
</File>
<File
+ RelativePath="..\..\..\lib-src\libsndfile\src\audio_detect.c"
+ >
+ </File>
+ <File
RelativePath="..\..\..\lib-src\libsndfile\src\avr.c"
>
</File>
@@ -304,6 +311,10 @@
>
</File>
<File
+ RelativePath="..\..\..\lib-src\libsndfile\src\chunk.c"
+ >
+ </File>
+ <File
RelativePath="..\..\..\lib-src\libsndfile\src\command.c"
>
</File>
@@ -356,6 +367,10 @@
>
</File>
<File
+ RelativePath="..\..\..\lib-src\libsndfile\src\ima_oki_adpcm.c"
+ >
+ </File>
+ <File
RelativePath="..\..\..\lib-src\libsndfile\src\interleave.c"
>
</File>
@@ -380,6 +395,10 @@
>
</File>
<File
+ RelativePath="..\..\..\lib-src\libsndfile\src\mpc2k.c"
+ >
+ </File>
+ <File
RelativePath="..\..\..\lib-src\libsndfile\src\ms_adpcm.c"
>
</File>
@@ -408,6 +427,10 @@
>
</File>
<File
+ RelativePath="..\..\..\lib-src\libsndfile\src\rf64.c"
+ >
+ </File>
+ <File
RelativePath="..\..\..\lib-src\libsndfile\src\rx2.c"
>
</File>
@@ -476,10 +499,18 @@
>
</File>
<File
+ RelativePath=".\config.h"
+ >
+ </File>
+ <File
RelativePath="..\..\..\lib-src\libsndfile\src\float_cast.h"
>
</File>
<File
+ RelativePath="..\..\..\lib-src\libsndfile\src\ima_oki_adpcm.h"
+ >
+ </File>
+ <File
RelativePath="..\..\..\lib-src\libsndfile\src\sf_unistd.h"
>
</File>
@@ -492,6 +523,10 @@
>
</File>
<File
+ RelativePath=".\sndfile.h"
+ >
+ </File>
+ <File
RelativePath="..\..\..\lib-src\libsndfile\src\wav_w64.h"
>
</File>
diff --git a/win/Projects/libvamp/libvamp.vcproj b/win/Projects/libvamp/libvamp.vcproj
index 83fd41f..85dceef 100644
--- a/win/Projects/libvamp/libvamp.vcproj
+++ b/win/Projects/libvamp/libvamp.vcproj
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
- Version="8.00"
+ Version="9.00"
Name="libvamp"
ProjectGUID="{A61E2BF1-21AA-4118-B0D8-FD3D53DB892E}"
RootNamespace="libnyquist"
+ TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
@@ -39,6 +40,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories="..\..\..\lib-src\libvamp"
PreprocessorDefinitions="NDEBUG;WIN32;_LIB"
StringPooling="true"
@@ -234,6 +236,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories="..\..\..\lib-src\libvamp"
PreprocessorDefinitions="NDEBUG;WIN32;_LIB"
StringPooling="true"
diff --git a/win/Projects/libvorbis/libvorbis.vcproj b/win/Projects/libvorbis/libvorbis.vcproj
index 5bb562e..ee29417 100644
--- a/win/Projects/libvorbis/libvorbis.vcproj
+++ b/win/Projects/libvorbis/libvorbis.vcproj
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
- Version="8.00"
+ Version="9.00"
Name="libvorbis"
ProjectGUID="{727D6675-67EE-4D0B-9DC1-177A0AF741F0}"
RootNamespace="libvorbis"
+ TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
@@ -39,6 +40,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories="..\..\..\lib-src\libvorbis\include;..\..\..\lib-src\libogg\include"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
StringPooling="true"
@@ -234,6 +236,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories="..\..\..\lib-src\libvorbis\include;..\..\..\lib-src\libogg\include"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
StringPooling="true"
diff --git a/win/Projects/locale/locale.vcproj b/win/Projects/locale/locale.vcproj
index 47aa990..3e5ddef 100644
--- a/win/Projects/locale/locale.vcproj
+++ b/win/Projects/locale/locale.vcproj
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
- Version="8.00"
+ Version="9.00"
Name="locale"
ProjectGUID="{BE9F28C5-058A-45F5-B2C1-D077BC058AAE}"
RootNamespace="locale"
+ TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
@@ -21,63 +22,21 @@
Name="Unicode Release|Win32"
OutputDirectory="$(SolutionDir)$(ConfigurationName)"
IntermediateDirectory="$(ConfigurationName)"
- ConfigurationType="1"
+ ConfigurationType="10"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
- Name="VCCustomBuildTool"
- />
- <Tool
Name="msgfmt"
/>
<Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
+ Name="VCCustomBuildTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
- Name="VCCLCompilerTool"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
@@ -85,63 +44,21 @@
Name="Unicode Debug|Win32"
OutputDirectory="$(SolutionDir)$(ConfigurationName)"
IntermediateDirectory="$(ConfigurationName)"
- ConfigurationType="1"
+ ConfigurationType="10"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
- Name="VCCustomBuildTool"
- />
- <Tool
Name="msgfmt"
/>
<Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
+ Name="VCCustomBuildTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
- Name="VCCLCompilerTool"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
@@ -149,63 +66,21 @@
Name="Debug|Win32"
OutputDirectory="$(SolutionDir)$(ConfigurationName)"
IntermediateDirectory="$(ConfigurationName)"
- ConfigurationType="1"
+ ConfigurationType="10"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
- Name="VCCustomBuildTool"
- />
- <Tool
Name="msgfmt"
/>
<Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
+ Name="VCCustomBuildTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
- Name="VCCLCompilerTool"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
@@ -213,63 +88,21 @@
Name="Release|Win32"
OutputDirectory="$(SolutionDir)$(ConfigurationName)"
IntermediateDirectory="$(ConfigurationName)"
- ConfigurationType="1"
+ ConfigurationType="10"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
- Name="VCCustomBuildTool"
- />
- <Tool
Name="msgfmt"
/>
<Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
+ Name="VCCustomBuildTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
- Name="VCCLCompilerTool"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
@@ -283,182 +116,1127 @@
<File
RelativePath="..\..\..\locale\af.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\ar.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\bg.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\bn.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\bs.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\ca.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\ca at valencia.po"
>
- </File>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ </File>
<File
RelativePath="..\..\..\locale\cs.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\cy.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\da.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\de.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\el.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\es.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\eu.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\fa.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\fi.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\fr.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\ga.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\gl.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\he.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\hu.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\id.po"
>
- </File>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ </File>
<File
RelativePath="..\..\..\locale\it.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\ja.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\ka.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\km.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\ko.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\lt.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\mk.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\nb.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\nl.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\oc.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\pl.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\pt_BR.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\ro.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\ru.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\sk.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\sl.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\sv.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\tg.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\tr.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\uk.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\vi.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\zh.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
<File
RelativePath="..\..\..\locale\zh_TW.po"
>
+ <FileConfiguration
+ Name="Unicode Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ >
+ <Tool
+ Name="msgfmt"
+ />
+ </FileConfiguration>
</File>
</Filter>
</Files>
diff --git a/win/Projects/mod-script-pipe/mod-script-pipe.vcproj b/win/Projects/mod-script-pipe/mod-script-pipe.vcproj
index 764ddb3..d49aaf0 100644
--- a/win/Projects/mod-script-pipe/mod-script-pipe.vcproj
+++ b/win/Projects/mod-script-pipe/mod-script-pipe.vcproj
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
- Version="8.00"
+ Version="9.00"
Name="mod-script-pipe"
ProjectGUID="{85774A29-EA2F-4A40-994F-6BE593D847A5}"
RootNamespace="mod-script-pipe"
+ TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
@@ -39,6 +40,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories=""$(WXWIN)\lib\vc_dll\mswu";"$(WXWIN)\include";"$(SolutionDir)""
PreprocessorDefinitions="BUILDING_SCRIPT_PIPE;WXUSINGDLL;__WXMSW__;NDEBUG;_USRDLL;WIN32"
StringPooling="true"
@@ -62,6 +64,8 @@
AdditionalDependencies="wxmsw28u_core.lib wxbase28u.lib odbc32.lib odbccp32.lib oldnames.lib comctl32.lib rpcrt4.lib wsock32.lib netapi32.lib"
OutputFile="$(OutDir)\modules\$(ProjectName).dll"
AdditionalLibraryDirectories=""$(WXWIN)\lib\vc_dll""
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
/>
<Tool
Name="VCALinkTool"
@@ -82,9 +86,6 @@
Name="VCAppVerifierTool"
/>
<Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
@@ -140,6 +141,8 @@
OutputFile="$(OutDir)\modules\$(ProjectName).dll"
AdditionalLibraryDirectories=""$(WXWIN)\lib\vc_dll""
GenerateDebugInformation="true"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
/>
<Tool
Name="VCALinkTool"
@@ -160,9 +163,6 @@
Name="VCAppVerifierTool"
/>
<Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
@@ -218,6 +218,8 @@
OutputFile="$(OutDir)\modules\$(ProjectName).dll"
AdditionalLibraryDirectories=""$(WXWIN)\lib\vc_dll""
GenerateDebugInformation="true"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
/>
<Tool
Name="VCALinkTool"
@@ -238,9 +240,6 @@
Name="VCAppVerifierTool"
/>
<Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
@@ -269,6 +268,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories=""$(WXWIN)\lib\vc_dll\msw";"$(WXWIN)\include";"$(SolutionDir)""
PreprocessorDefinitions="BUILDING_SCRIPT_PIPE;WXUSINGDLL;__WXMSW__;NDEBUG;_USRDLL;WIN32"
StringPooling="true"
@@ -292,6 +292,8 @@
AdditionalDependencies="wxmsw28_core.lib wxbase28.lib odbc32.lib odbccp32.lib oldnames.lib comctl32.lib rpcrt4.lib wsock32.lib netapi32.lib"
OutputFile="$(OutDir)\modules\$(ProjectName).dll"
AdditionalLibraryDirectories=""$(WXWIN)\lib\vc_dll""
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
/>
<Tool
Name="VCALinkTool"
@@ -312,9 +314,6 @@
Name="VCAppVerifierTool"
/>
<Tool
- Name="VCWebDeploymentTool"
- />
- <Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
diff --git a/win/Projects/portaudio-v19/portaudio-v19.vcproj b/win/Projects/portaudio-v19/portaudio-v19.vcproj
index fb1be4a..7ce9425 100644
--- a/win/Projects/portaudio-v19/portaudio-v19.vcproj
+++ b/win/Projects/portaudio-v19/portaudio-v19.vcproj
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
- Version="8.00"
+ Version="9.00"
Name="portaudio-v19"
ProjectGUID="{7ABA0F80-94AE-4E82-AB89-2E1258212D59}"
RootNamespace="portaudio-v19"
+ TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
@@ -40,6 +41,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories="..\..\..\lib-src\portaudio-v19\include;..\..\..\lib-src\portaudio-v19\src\common"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
StringPooling="true"
@@ -244,6 +246,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories="..\..\..\lib-src\portaudio-v19\include;..\..\..\lib-src\portaudio-v19\src\common"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
StringPooling="true"
diff --git a/win/Projects/portmixer/portmixer.vcproj b/win/Projects/portmixer/portmixer.vcproj
index 9de0097..5c48010 100644
--- a/win/Projects/portmixer/portmixer.vcproj
+++ b/win/Projects/portmixer/portmixer.vcproj
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
- Version="8.00"
+ Version="9.00"
Name="portmixer"
ProjectGUID="{3A76129B-55AB-4D54-BAA7-08F63ED52569}"
RootNamespace="portmixer"
+ TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
@@ -40,6 +41,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories="..\..\..\lib-src\portmixer\include;..\..\..\lib-src\portaudio-v19\include;"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB;PX_USE_WIN_MME"
StringPooling="true"
@@ -244,6 +246,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories="..\..\..\lib-src\portmixer\include;..\..\..\lib-src\portaudio-v19\include;"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB;PX_USE_WIN_MME"
StringPooling="true"
diff --git a/win/Projects/portsmf/portsmf.vcproj b/win/Projects/portsmf/portsmf.vcproj
index 360f348..32decd9 100644
--- a/win/Projects/portsmf/portsmf.vcproj
+++ b/win/Projects/portsmf/portsmf.vcproj
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
- Version="8.00"
+ Version="9.00"
Name="portsmf"
ProjectGUID="{8A1C2514-85DD-4AE2-9CF3-3183B66C537D}"
RootNamespace="portsmf"
+ TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
@@ -39,6 +40,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
StringPooling="true"
RuntimeLibrary="2"
@@ -231,6 +233,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
StringPooling="true"
RuntimeLibrary="2"
diff --git a/win/Projects/raptor/raptor.vcproj b/win/Projects/raptor/raptor.vcproj
index 8246488..0897a91 100644
--- a/win/Projects/raptor/raptor.vcproj
+++ b/win/Projects/raptor/raptor.vcproj
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
- Version="8.00"
+ Version="9.00"
Name="raptor"
ProjectGUID="{7E111491-6A07-4661-90CD-6DEBB83CE755}"
RootNamespace="raptor"
+ TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
@@ -39,6 +40,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories="..\raptor;"..\..\..\lib-src\redland\raptor\src";"..\..\..\lib-src\redland\raptor\librdfa";..\..\..\src\include"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB;RAPTOR_INTERNAL=1;RAPTOR_STATIC=1;LIBRDFA_IN_RAPTOR=1"
StringPooling="true"
@@ -234,6 +236,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories="..\raptor;"..\..\..\lib-src\redland\raptor\src";"..\..\..\lib-src\redland\raptor\librdfa";..\..\..\src\include"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB;RAPTOR_INTERNAL=1;RAPTOR_STATIC=1;LIBRDFA_IN_RAPTOR=1"
StringPooling="true"
diff --git a/win/Projects/rasqal/rasqal.vcproj b/win/Projects/rasqal/rasqal.vcproj
index e4546d6..dd3108d 100644
--- a/win/Projects/rasqal/rasqal.vcproj
+++ b/win/Projects/rasqal/rasqal.vcproj
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
- Version="8.00"
+ Version="9.00"
Name="rasqal"
ProjectGUID="{BEF965EB-6330-4D18-858C-3B9F66CA9F18}"
RootNamespace="rasqal"
+ TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
@@ -39,6 +40,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories="..\rasqal;"..\..\..\lib-src\redland\rasqal\src";..\raptor;"..\..\..\lib-src\redland\raptor\src""
PreprocessorDefinitions="WIN32;NDEBUG;_LIB;RASQAL_INTERNAL=1"
StringPooling="true"
@@ -234,6 +236,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories="..\rasqal;"..\..\..\lib-src\redland\rasqal\src";..\raptor;"..\..\..\lib-src\redland\raptor\src""
PreprocessorDefinitions="WIN32;NDEBUG;_LIB;RASQAL_INTERNAL=1"
StringPooling="true"
diff --git a/win/Projects/sbsms/sbsms.vcproj b/win/Projects/sbsms/sbsms.vcproj
index a18b1d8..fffa286 100644
--- a/win/Projects/sbsms/sbsms.vcproj
+++ b/win/Projects/sbsms/sbsms.vcproj
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
- Version="8.00"
+ Version="9.00"
Name="sbsms"
ProjectGUID="{A64FFB5D-0CF0-43EE-9DE3-C72260864BFF}"
RootNamespace="sbsms"
+ TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
@@ -104,6 +105,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
WholeProgramOptimization="true"
AdditionalIncludeDirectories="..\..\..\lib-src\sbsms\include;..\..\..\lib-src\sbsms\win"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
@@ -233,6 +235,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
WholeProgramOptimization="true"
AdditionalIncludeDirectories="..\..\..\lib-src\sbsms\include;..\..\..\lib-src\sbsms\win"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
diff --git a/win/Projects/slv2/slv2.vcproj b/win/Projects/slv2/slv2.vcproj
index 1327a66..479d2e1 100644
--- a/win/Projects/slv2/slv2.vcproj
+++ b/win/Projects/slv2/slv2.vcproj
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
- Version="8.00"
+ Version="9.00"
Name="slv2"
ProjectGUID="{0FEC8848-E24E-4FA5-9ACD-E4582DC4CBBE}"
RootNamespace="slv2"
+ TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
@@ -39,6 +40,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories="..\slv2;"..\..\..\lib-src\slv2";"..\..\..\lib-src\slv2\src";"..\..\..\lib-src\redland\librdf";..\raptor;"..\..\..\lib-src\redland\raptor\src";"..\..\..\lib-src\ffmpeg\win32""
PreprocessorDefinitions="WIN32;NDEBUG;_LIB;LIBSLV2_SOURCE=1;CONFIG_H_PATH=\"win32_config.h\""
StringPooling="true"
@@ -234,6 +236,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories="..\slv2;"..\..\..\lib-src\slv2";"..\..\..\lib-src\slv2\src";"..\..\..\lib-src\redland\librdf";..\raptor;"..\..\..\lib-src\redland\raptor\src";"..\..\..\lib-src\ffmpeg\win32""
PreprocessorDefinitions="WIN32;NDEBUG;_LIB;LIBSLV2_SOURCE=1;CONFIG_H_PATH=\"win32_config.h\""
StringPooling="true"
diff --git a/win/Projects/soundtouch/soundtouch.vcproj b/win/Projects/soundtouch/soundtouch.vcproj
index b42c7b0..aac3c2b 100644
--- a/win/Projects/soundtouch/soundtouch.vcproj
+++ b/win/Projects/soundtouch/soundtouch.vcproj
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
- Version="8.00"
+ Version="9.00"
Name="soundtouch"
ProjectGUID="{EC3F5835-C486-4970-8A6B-A0700F4B3637}"
RootNamespace="soundtouch"
+ TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
@@ -39,6 +40,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories="..\..\..\lib-src\soundtouch\include"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
StringPooling="true"
@@ -231,6 +233,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
AdditionalIncludeDirectories="..\..\..\lib-src\soundtouch\include"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
StringPooling="true"
diff --git a/win/Projects/twolame/twolame.vcproj b/win/Projects/twolame/twolame.vcproj
index 881877e..5160804 100644
--- a/win/Projects/twolame/twolame.vcproj
+++ b/win/Projects/twolame/twolame.vcproj
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
- Version="8.00"
+ Version="9.00"
Name="twolame"
ProjectGUID="{8C69F7B6-684F-48D9-9057-8912CA3DAA8B}"
RootNamespace="twolame"
Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
@@ -40,6 +41,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB;LIBTWOLAME_STATIC"
StringPooling="true"
RuntimeLibrary="2"
@@ -232,6 +234,7 @@
/>
<Tool
Name="VCCLCompilerTool"
+ Optimization="2"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB;LIBTWOLAME_STATIC"
StringPooling="true"
RuntimeLibrary="2"
diff --git a/win/audacity.iss b/win/audacity.iss
index d8a98f4..0a60191 100644
--- a/win/audacity.iss
+++ b/win/audacity.iss
@@ -3,7 +3,7 @@
[Setup]
; compiler-related directives
-OutputBaseFilename=audacity-win-1.3.6
+OutputBaseFilename=audacity-1.3.8a-win
SetupIconFile=audacity.ico
WizardImageFile=audacity_InnoWizardImage.bmp
@@ -12,20 +12,21 @@ WizardSmallImageFile=audacity_InnoWizardSmallImage.bmp
SolidCompression=yes
; installer-related directives
-AppName=Audacity 1.3 Beta
-AppVerName=Audacity 1.3.6
+AppName=Audacity 1.3 Alpha
+AppVerName=Audacity 1.3.8
AppPublisher=Audacity Team
AppPublisherURL=http://audacity.sourceforge.net
AppSupportURL=http://audacity.sourceforge.net
AppUpdatesURL=http://audacity.sourceforge.net
ChangesAssociations=yes
-DefaultDirName={pf}\Audacity 1.3 Beta
+DefaultDirName={pf}\Audacity 1.3 Alpha
; Always warn if dir exists, because we'll overwrite previous Audacity.
DirExistsWarning=yes
DisableProgramGroupPage=yes
UninstallDisplayIcon="{app}\audacity.exe"
-LicenseFile=..\LICENSE.txt
-InfoBeforeFile=..\README.txt
+; No longer force them to accept the license, just display it. LicenseFile=..\LICENSE.txt
+InfoBeforeFile=..\LICENSE.txt
+InfoAfterFile=..\README.txt
; min versions: Win95, NT 4.0
MinVersion=4.0,4.0
@@ -53,15 +54,24 @@ Name: "spanish"; MessagesFile: "compiler:Languages\Spanish.isl"
[Tasks]
Name: desktopicon; Description: "Create a &desktop icon"; GroupDescription: "Additional icons:"; MinVersion: 4,4
-Name: associate_aup; Description: "&Associate Audacity project files"; GroupDescription: "Other tasks:"; Flags: checkedonce; MinVersion: 4,4
+; No longer allow user to choose whether to associate AUP file type with Audacity.
+; Name: associate_aup; Description: "&Associate Audacity project files"; GroupDescription: "Other tasks:"; Flags: checkedonce; MinVersion: 4,4
[Files]
+; Don't display in separate window, rather as InfoAfterFile. Source: "..\README.txt"; DestDir: "{app}"; Flags: ignoreversion isreadme
Source: "..\README.txt"; DestDir: "{app}"; Flags: ignoreversion
+
Source: "..\LICENSE.txt"; DestDir: "{app}"; Flags: ignoreversion
Source: "..\win\Release\audacity.exe"; DestDir: "{app}"; Flags: ignoreversion
+; Manual, which should be got from the manual wiki using ..\scripts\mw2html_audacity\wiki2htm.bat
+Source: "..\help\manual\*"; DestDir: "{app}\help\manual\"; Flags: ignoreversion recursesubdirs
+
; wxWidgets DLLs. Be specific (not *.dll) so we don't accidentally distribute avformat.dll, for example.
+; Don't use the WXWIN environment variable, because...
+; 1) Can't get the documented {%WXWIN|default dir} parsing to work.
+; 2) Need the DLL's in the release dir for testing, anyway.
Source: "..\win\Release\wxbase28_net_vc_custom.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "..\win\Release\wxbase28_vc_custom.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "..\win\Release\wxmsw28_adv_vc_custom.dll"; DestDir: "{app}"; Flags: ignoreversion
@@ -73,19 +83,18 @@ Source: "..\win\Release\wxmsw28_html_vc_custom.dll"; DestDir: "{app}"; Flags: ig
; This is not an ideal solution, but should need the least tech support.
; We'll know we have the right version, don't step on anybody else's older version, and
; it's easy to make the zip (and they match better).
-Source: "C:\Program Files\Microsoft Visual Studio 8\VC\redist\x86\Microsoft.VC80.CRT\Microsoft.VC80.CRT.manifest"; DestDir: "{app}"; Flags: ignoreversion
-Source: "C:\Program Files\Microsoft Visual Studio 8\VC\redist\x86\Microsoft.VC80.CRT\msvcp80.dll"; DestDir: "{app}"; Flags: ignoreversion
-Source: "C:\Program Files\Microsoft Visual Studio 8\VC\redist\x86\Microsoft.VC80.CRT\msvcr80.dll"; DestDir: "{app}"; Flags: ignoreversion
+Source: "C:\Program Files\Microsoft Visual Studio 9.0\VC\redist\x86\Microsoft.VC90.CRT\Microsoft.VC90.CRT.manifest"; DestDir: "{app}"; Flags: ignoreversion
+Source: "C:\Program Files\Microsoft Visual Studio 9.0\VC\redist\x86\Microsoft.VC90.CRT\msvcp90.dll"; DestDir: "{app}"; Flags: ignoreversion
+Source: "C:\Program Files\Microsoft Visual Studio 9.0\VC\redist\x86\Microsoft.VC90.CRT\msvcr90.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "..\win\Release\languages\*"; DestDir: "{app}\Languages\"; Flags: ignoreversion recursesubdirs
Source: "..\win\Release\modules\*"; DestDir: "{app}\Modules\"; Flags: ignoreversion recursesubdirs skipifsourcedoesntexist
Source: "..\win\Release\nyquist\*"; DestDir: "{app}\Nyquist\"; Flags: ignoreversion
Source: "..\win\Release\plug-ins\*"; DestDir: "{app}\Plug-Ins\"; Excludes: "analyze.ny, fadein.ny, fadeout.ny, undcbias.ny"; Flags: ignoreversion
-
[Icons]
-Name: "{commonprograms}\Audacity 1.3 Beta"; Filename: "{app}\audacity.exe"
-Name: "{userdesktop}\Audacity 1.3 Beta"; Filename: "{app}\audacity.exe"; MinVersion: 4,4; Tasks: desktopicon
+Name: "{commonprograms}\Audacity 1.3 Alpha"; Filename: "{app}\audacity.exe"
+Name: "{userdesktop}\Audacity 1.3 Alpha"; Filename: "{app}\audacity.exe"; MinVersion: 4,4; Tasks: desktopicon
[InstallDelete]
; Get rid of Audacity 1.0.0 stuff that's no longer used.
@@ -101,11 +110,15 @@ Type: files; Name: "{commonprograms}\Audacity\unins000.exe"
Type: dirifempty; Name: "{commonprograms}\Audacity"
[Registry]
-Root: HKCR; Subkey: ".AUP"; ValueType: string; ValueData: "Audacity.Project"; Flags: createvalueifdoesntexist uninsdeletekey; Tasks: associate_aup
-Root: HKCR; Subkey: "Audacity.Project"; ValueType: string; ValueData: "Audacity Project File"; Flags: createvalueifdoesntexist uninsdeletekey; Tasks: associate_aup
-Root: HKCR; Subkey: "Audacity.Project\shell"; ValueType: string; ValueData: ""; Flags: createvalueifdoesntexist uninsdeletekey; Tasks: associate_aup
-Root: HKCR; Subkey: "Audacity.Project\shell\open"; Flags: createvalueifdoesntexist uninsdeletekey; Tasks: associate_aup
-Root: HKCR; Subkey: "Audacity.Project\shell\open\command"; ValueType: string; ValueData: """{app}\audacity.exe"" ""%1"""; Flags: createvalueifdoesntexist uninsdeletekey; Tasks: associate_aup
+; No longer allow user to choose whether to associate AUP file type with Audacity.
+; Leaving this one commented out example of the old way.
+; Root: HKCR; Subkey: ".AUP"; ValueType: string; ValueData: "Audacity.Project"; Flags: createvalueifdoesntexist uninsdeletekey; Tasks: associate_aup
+Root: HKCR; Subkey: ".AUP"; ValueType: string; ValueData: "Audacity.Project"; Flags: createvalueifdoesntexist uninsdeletekey;
+Root: HKCR; Subkey: "Audacity.Project\OpenWithList\audacity.exe"; Flags: createvalueifdoesntexist uninsdeletekey;
+Root: HKCR; Subkey: "Audacity.Project"; ValueType: string; ValueData: "Audacity Project File"; Flags: createvalueifdoesntexist uninsdeletekey;
+Root: HKCR; Subkey: "Audacity.Project\shell"; ValueType: string; ValueData: ""; Flags: createvalueifdoesntexist uninsdeletekey;
+Root: HKCR; Subkey: "Audacity.Project\shell\open"; Flags: createvalueifdoesntexist uninsdeletekey;
+Root: HKCR; Subkey: "Audacity.Project\shell\open\command"; ValueType: string; ValueData: """{app}\audacity.exe"" ""%1"""; Flags: createvalueifdoesntexist uninsdeletekey;
[Run]
Filename: "{app}\audacity.exe"; Description: "Launch Audacity"; Flags: nowait postinstall skipifsilent
diff --git a/win/audacity.sln b/win/audacity.sln
index c662fed..4d5bf0f 100644
--- a/win/audacity.sln
+++ b/win/audacity.sln
@@ -1,31 +1,32 @@
-Microsoft Visual Studio Solution File, Format Version 9.00
-# Visual C++ Express 2005
+Microsoft Visual Studio Solution File, Format Version 10.00
+# Visual C++ Express 2008
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Audacity", "Projects\Audacity\Audacity.vcproj", "{1D64095C-F936-4FCF-B609-56E9DDF941FA}"
ProjectSection(ProjectDependencies) = postProject
- {A64FFB5D-0CF0-43EE-9DE3-C72260864BFF} = {A64FFB5D-0CF0-43EE-9DE3-C72260864BFF}
{8A1C2514-85DD-4AE2-9CF3-3183B66C537D} = {8A1C2514-85DD-4AE2-9CF3-3183B66C537D}
- {5F04DE5D-0A34-496E-8A34-BE30BA9C70A1} = {5F04DE5D-0A34-496E-8A34-BE30BA9C70A1}
- {BEF965EB-6330-4D18-858C-3B9F66CA9F18} = {BEF965EB-6330-4D18-858C-3B9F66CA9F18}
- {A939AAF8-44F1-4CE7-9DD0-7A6E99814857} = {A939AAF8-44F1-4CE7-9DD0-7A6E99814857}
- {F00717F2-67C8-44E1-AF00-541DFA9CB7F2} = {F00717F2-67C8-44E1-AF00-541DFA9CB7F2}
- {A61E2BF1-21AA-4118-B0D8-FD3D53DB892E} = {A61E2BF1-21AA-4118-B0D8-FD3D53DB892E}
- {7AA41BED-41B0-427A-9148-DEA40549D158} = {7AA41BED-41B0-427A-9148-DEA40549D158}
- {D96C7BE1-E3F1-4767-BBBB-320E082CE425} = {D96C7BE1-E3F1-4767-BBBB-320E082CE425}
- {8C69F7B6-684F-48D9-9057-8912CA3DAA8B} = {8C69F7B6-684F-48D9-9057-8912CA3DAA8B}
- {38C2C6B1-FBF8-4C5C-BB90-63F996083F56} = {38C2C6B1-FBF8-4C5C-BB90-63F996083F56}
- {3DDDCAA9-276D-4FC3-A15C-485F7B9B24CC} = {3DDDCAA9-276D-4FC3-A15C-485F7B9B24CC}
- {A52BBEA5-8B02-4147-8734-5D9BBF4D1177} = {A52BBEA5-8B02-4147-8734-5D9BBF4D1177}
- {3A76129B-55AB-4D54-BAA7-08F63ED52569} = {3A76129B-55AB-4D54-BAA7-08F63ED52569}
- {7ABA0F80-94AE-4E82-AB89-2E1258212D59} = {7ABA0F80-94AE-4E82-AB89-2E1258212D59}
- {727D6675-67EE-4D0B-9DC1-177A0AF741F0} = {727D6675-67EE-4D0B-9DC1-177A0AF741F0}
- {F4B4A272-4ED3-4951-A6EE-B7BAAC1C4952} = {F4B4A272-4ED3-4951-A6EE-B7BAAC1C4952}
- {5284D863-3813-479F-BBF0-AC234E216BC6} = {5284D863-3813-479F-BBF0-AC234E216BC6}
- {B28C9F3F-FF0E-4FEC-844C-685390B8AC06} = {B28C9F3F-FF0E-4FEC-844C-685390B8AC06}
- {6C7DC635-26FB-419A-B69A-7ECBBB068245} = {6C7DC635-26FB-419A-B69A-7ECBBB068245}
- {EC3F5835-C486-4970-8A6B-A0700F4B3637} = {EC3F5835-C486-4970-8A6B-A0700F4B3637}
- {7BAFA434-3257-408A-AAC0-A8D352B2CE54} = {7BAFA434-3257-408A-AAC0-A8D352B2CE54}
- {F1E127C2-58B1-4CBF-B91F-0CF6DB9CC6DD} = {F1E127C2-58B1-4CBF-B91F-0CF6DB9CC6DD}
+ {A64FFB5D-0CF0-43EE-9DE3-C72260864BFF} = {A64FFB5D-0CF0-43EE-9DE3-C72260864BFF}
+ {D5AB2D87-51DC-4277-A9AB-2A6018D0E947} = {D5AB2D87-51DC-4277-A9AB-2A6018D0E947}
+ {C0FE933B-4AF7-4ACD-95E8-ACD3A73F1400} = {C0FE933B-4AF7-4ACD-95E8-ACD3A73F1400}
{7E111491-6A07-4661-90CD-6DEBB83CE755} = {7E111491-6A07-4661-90CD-6DEBB83CE755}
+ {F1E127C2-58B1-4CBF-B91F-0CF6DB9CC6DD} = {F1E127C2-58B1-4CBF-B91F-0CF6DB9CC6DD}
+ {7BAFA434-3257-408A-AAC0-A8D352B2CE54} = {7BAFA434-3257-408A-AAC0-A8D352B2CE54}
+ {EC3F5835-C486-4970-8A6B-A0700F4B3637} = {EC3F5835-C486-4970-8A6B-A0700F4B3637}
+ {6C7DC635-26FB-419A-B69A-7ECBBB068245} = {6C7DC635-26FB-419A-B69A-7ECBBB068245}
+ {B28C9F3F-FF0E-4FEC-844C-685390B8AC06} = {B28C9F3F-FF0E-4FEC-844C-685390B8AC06}
+ {5284D863-3813-479F-BBF0-AC234E216BC6} = {5284D863-3813-479F-BBF0-AC234E216BC6}
+ {F4B4A272-4ED3-4951-A6EE-B7BAAC1C4952} = {F4B4A272-4ED3-4951-A6EE-B7BAAC1C4952}
+ {727D6675-67EE-4D0B-9DC1-177A0AF741F0} = {727D6675-67EE-4D0B-9DC1-177A0AF741F0}
+ {7ABA0F80-94AE-4E82-AB89-2E1258212D59} = {7ABA0F80-94AE-4E82-AB89-2E1258212D59}
+ {3A76129B-55AB-4D54-BAA7-08F63ED52569} = {3A76129B-55AB-4D54-BAA7-08F63ED52569}
+ {A52BBEA5-8B02-4147-8734-5D9BBF4D1177} = {A52BBEA5-8B02-4147-8734-5D9BBF4D1177}
+ {3DDDCAA9-276D-4FC3-A15C-485F7B9B24CC} = {3DDDCAA9-276D-4FC3-A15C-485F7B9B24CC}
+ {38C2C6B1-FBF8-4C5C-BB90-63F996083F56} = {38C2C6B1-FBF8-4C5C-BB90-63F996083F56}
+ {8C69F7B6-684F-48D9-9057-8912CA3DAA8B} = {8C69F7B6-684F-48D9-9057-8912CA3DAA8B}
+ {D96C7BE1-E3F1-4767-BBBB-320E082CE425} = {D96C7BE1-E3F1-4767-BBBB-320E082CE425}
+ {7AA41BED-41B0-427A-9148-DEA40549D158} = {7AA41BED-41B0-427A-9148-DEA40549D158}
+ {A61E2BF1-21AA-4118-B0D8-FD3D53DB892E} = {A61E2BF1-21AA-4118-B0D8-FD3D53DB892E}
+ {F00717F2-67C8-44E1-AF00-541DFA9CB7F2} = {F00717F2-67C8-44E1-AF00-541DFA9CB7F2}
+ {A939AAF8-44F1-4CE7-9DD0-7A6E99814857} = {A939AAF8-44F1-4CE7-9DD0-7A6E99814857}
+ {BEF965EB-6330-4D18-858C-3B9F66CA9F18} = {BEF965EB-6330-4D18-858C-3B9F66CA9F18}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "expat", "Projects\expat\expat.vcproj", "{38C2C6B1-FBF8-4C5C-BB90-63F996083F56}"
@@ -52,6 +53,12 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "portsmf", "Projects\portsmf
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sbsms", "Projects\sbsms\sbsms.vcproj", "{A64FFB5D-0CF0-43EE-9DE3-C72260864BFF}"
EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "taglib", "Projects\taglib\taglib.vcproj", "{D912E7BF-61FE-4D17-9D1B-3F1D268429D6}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "portmidi", "Projects\portmidi\portmidi.vcproj", "{D5AB2D87-51DC-4277-A9AB-2A6018D0E947}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "help", "Projects\help\help.vcproj", "{02F94A40-586A-4403-8464-13B50801FFEC}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
@@ -256,14 +263,6 @@ Global
{8A1C2514-85DD-4AE2-9CF3-3183B66C537D}.Unicode Debug|Win32.Build.0 = Unicode Debug|Win32
{8A1C2514-85DD-4AE2-9CF3-3183B66C537D}.Unicode Release|Win32.ActiveCfg = Unicode Release|Win32
{8A1C2514-85DD-4AE2-9CF3-3183B66C537D}.Unicode Release|Win32.Build.0 = Unicode Release|Win32
- {5F04DE5D-0A34-496E-8A34-BE30BA9C70A1}.Debug|Win32.ActiveCfg = Debug|Win32
- {5F04DE5D-0A34-496E-8A34-BE30BA9C70A1}.Debug|Win32.Build.0 = Debug|Win32
- {5F04DE5D-0A34-496E-8A34-BE30BA9C70A1}.Release|Win32.ActiveCfg = Release|Win32
- {5F04DE5D-0A34-496E-8A34-BE30BA9C70A1}.Release|Win32.Build.0 = Release|Win32
- {5F04DE5D-0A34-496E-8A34-BE30BA9C70A1}.Unicode Debug|Win32.ActiveCfg = Unicode Debug|Win32
- {5F04DE5D-0A34-496E-8A34-BE30BA9C70A1}.Unicode Debug|Win32.Build.0 = Unicode Debug|Win32
- {5F04DE5D-0A34-496E-8A34-BE30BA9C70A1}.Unicode Release|Win32.ActiveCfg = Unicode Release|Win32
- {5F04DE5D-0A34-496E-8A34-BE30BA9C70A1}.Unicode Release|Win32.Build.0 = Unicode Release|Win32
{A64FFB5D-0CF0-43EE-9DE3-C72260864BFF}.Debug|Win32.ActiveCfg = Debug|Win32
{A64FFB5D-0CF0-43EE-9DE3-C72260864BFF}.Debug|Win32.Build.0 = Debug|Win32
{A64FFB5D-0CF0-43EE-9DE3-C72260864BFF}.Release|Win32.ActiveCfg = Release|Win32
@@ -272,6 +271,38 @@ Global
{A64FFB5D-0CF0-43EE-9DE3-C72260864BFF}.Unicode Debug|Win32.Build.0 = Unicode Debug|Win32
{A64FFB5D-0CF0-43EE-9DE3-C72260864BFF}.Unicode Release|Win32.ActiveCfg = Unicode Release|Win32
{A64FFB5D-0CF0-43EE-9DE3-C72260864BFF}.Unicode Release|Win32.Build.0 = Unicode Release|Win32
+ {D912E7BF-61FE-4D17-9D1B-3F1D268429D6}.Debug|Win32.ActiveCfg = Debug|Win32
+ {D912E7BF-61FE-4D17-9D1B-3F1D268429D6}.Debug|Win32.Build.0 = Debug|Win32
+ {D912E7BF-61FE-4D17-9D1B-3F1D268429D6}.Release|Win32.ActiveCfg = Release|Win32
+ {D912E7BF-61FE-4D17-9D1B-3F1D268429D6}.Release|Win32.Build.0 = Release|Win32
+ {D912E7BF-61FE-4D17-9D1B-3F1D268429D6}.Unicode Debug|Win32.ActiveCfg = Unicode Debug|Win32
+ {D912E7BF-61FE-4D17-9D1B-3F1D268429D6}.Unicode Debug|Win32.Build.0 = Unicode Debug|Win32
+ {D912E7BF-61FE-4D17-9D1B-3F1D268429D6}.Unicode Release|Win32.ActiveCfg = Unicode Release|Win32
+ {D912E7BF-61FE-4D17-9D1B-3F1D268429D6}.Unicode Release|Win32.Build.0 = Unicode Release|Win32
+ {C0FE933B-4AF7-4ACD-95E8-ACD3A73F1400}.Debug|Win32.ActiveCfg = Debug|Win32
+ {C0FE933B-4AF7-4ACD-95E8-ACD3A73F1400}.Debug|Win32.Build.0 = Debug|Win32
+ {C0FE933B-4AF7-4ACD-95E8-ACD3A73F1400}.Release|Win32.ActiveCfg = Release|Win32
+ {C0FE933B-4AF7-4ACD-95E8-ACD3A73F1400}.Release|Win32.Build.0 = Release|Win32
+ {C0FE933B-4AF7-4ACD-95E8-ACD3A73F1400}.Unicode Debug|Win32.ActiveCfg = Unicode Debug|Win32
+ {C0FE933B-4AF7-4ACD-95E8-ACD3A73F1400}.Unicode Debug|Win32.Build.0 = Unicode Debug|Win32
+ {C0FE933B-4AF7-4ACD-95E8-ACD3A73F1400}.Unicode Release|Win32.ActiveCfg = Unicode Release|Win32
+ {C0FE933B-4AF7-4ACD-95E8-ACD3A73F1400}.Unicode Release|Win32.Build.0 = Unicode Release|Win32
+ {D5AB2D87-51DC-4277-A9AB-2A6018D0E947}.Debug|Win32.ActiveCfg = Debug|Win32
+ {D5AB2D87-51DC-4277-A9AB-2A6018D0E947}.Debug|Win32.Build.0 = Debug|Win32
+ {D5AB2D87-51DC-4277-A9AB-2A6018D0E947}.Release|Win32.ActiveCfg = Release|Win32
+ {D5AB2D87-51DC-4277-A9AB-2A6018D0E947}.Release|Win32.Build.0 = Release|Win32
+ {D5AB2D87-51DC-4277-A9AB-2A6018D0E947}.Unicode Debug|Win32.ActiveCfg = Unicode Debug|Win32
+ {D5AB2D87-51DC-4277-A9AB-2A6018D0E947}.Unicode Debug|Win32.Build.0 = Unicode Debug|Win32
+ {D5AB2D87-51DC-4277-A9AB-2A6018D0E947}.Unicode Release|Win32.ActiveCfg = Unicode Release|Win32
+ {D5AB2D87-51DC-4277-A9AB-2A6018D0E947}.Unicode Release|Win32.Build.0 = Unicode Release|Win32
+ {02F94A40-586A-4403-8464-13B50801FFEC}.Debug|Win32.ActiveCfg = Debug|Win32
+ {02F94A40-586A-4403-8464-13B50801FFEC}.Debug|Win32.Build.0 = Debug|Win32
+ {02F94A40-586A-4403-8464-13B50801FFEC}.Release|Win32.ActiveCfg = Release|Win32
+ {02F94A40-586A-4403-8464-13B50801FFEC}.Release|Win32.Build.0 = Release|Win32
+ {02F94A40-586A-4403-8464-13B50801FFEC}.Unicode Debug|Win32.ActiveCfg = Unicode Debug|Win32
+ {02F94A40-586A-4403-8464-13B50801FFEC}.Unicode Debug|Win32.Build.0 = Unicode Debug|Win32
+ {02F94A40-586A-4403-8464-13B50801FFEC}.Unicode Release|Win32.ActiveCfg = Unicode Release|Win32
+ {02F94A40-586A-4403-8464-13B50801FFEC}.Unicode Release|Win32.Build.0 = Unicode Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/win/audacity_unicode.iss b/win/audacity_unicode.iss
index 320ae56..54526cf 100644
--- a/win/audacity_unicode.iss
+++ b/win/audacity_unicode.iss
@@ -3,7 +3,7 @@
[Setup]
; compiler-related directives
-OutputBaseFilename=audacity-win-unicode-1.3.6
+OutputBaseFilename=audacity-1.3.8a-win-unicode
SetupIconFile=audacity.ico
WizardImageFile=audacity_InnoWizardImage.bmp
@@ -12,20 +12,21 @@ WizardSmallImageFile=audacity_InnoWizardSmallImage.bmp
SolidCompression=yes
; installer-related directives
-AppName=Audacity 1.3 Beta (Unicode)
-AppVerName=Audacity 1.3.6 (Unicode)
+AppName=Audacity 1.3 Alpha (Unicode)
+AppVerName=Audacity 1.3.8 (Unicode)
AppPublisher=Audacity Team
AppPublisherURL=http://audacity.sourceforge.net
AppSupportURL=http://audacity.sourceforge.net
AppUpdatesURL=http://audacity.sourceforge.net
ChangesAssociations=yes
-DefaultDirName={pf}\Audacity 1.3 Beta (Unicode)
+DefaultDirName={pf}\Audacity 1.3 Alpha (Unicode)
; Always warn if dir exists, because we'll overwrite previous Audacity.
DirExistsWarning=yes
DisableProgramGroupPage=yes
UninstallDisplayIcon="{app}\audacity.exe"
-LicenseFile=..\LICENSE.txt
-InfoBeforeFile=..\README.txt
+; No longer force them to accept the license, just display it. LicenseFile=..\LICENSE.txt
+InfoBeforeFile=..\LICENSE.txt
+InfoAfterFile=..\README.txt
; min versions: Win95, NT 4.0
MinVersion=4.0,4.0
@@ -53,14 +54,20 @@ Name: "spanish"; MessagesFile: "compiler:Languages\Spanish.isl"
[Tasks]
Name: desktopicon; Description: "Create a &desktop icon"; GroupDescription: "Additional icons:"; MinVersion: 4,4
-Name: associate_aup; Description: "&Associate Audacity project files"; GroupDescription: "Other tasks:"; Flags: checkedonce; MinVersion: 4,4
+; No longer allow user to choose whether to associate AUP file type with Audacity.
+; Name: associate_aup; Description: "&Associate Audacity project files"; GroupDescription: "Other tasks:"; Flags: checkedonce; MinVersion: 4,4
[Files]
+; Don't display in separate window, rather as InfoAfterFile. Source: "..\README.txt"; DestDir: "{app}"; Flags: ignoreversion isreadme
Source: "..\README.txt"; DestDir: "{app}"; Flags: ignoreversion
+
Source: "..\LICENSE.txt"; DestDir: "{app}"; Flags: ignoreversion
Source: "..\win\unicode release\audacity.exe"; DestDir: "{app}"; Flags: ignoreversion
+; Manual, which should be got from the manual wiki using ..\scripts\mw2html_audacity\wiki2htm.bat
+Source: "..\help\manual\*"; DestDir: "{app}\help\manual\"; Flags: ignoreversion recursesubdirs
+
; wxWidgets DLLs. Be specific (not *.dll) so we don't accidentally distribute avformat.dll, for example.
; Don't use the WXWIN environment variable, because...
; 1) Can't get the documented {%WXWIN|default dir} parsing to work.
@@ -76,20 +83,18 @@ Source: "..\win\unicode release\wxmsw28u_html_vc_custom.dll"; DestDir: "{app}";
; This is not an ideal solution, but should need the least tech support.
; We'll know we have the right version, don't step on anybody else's older version, and
; it's easy to make the zip (and they match better).
-Source: "C:\Program Files\Microsoft Visual Studio 8\VC\redist\x86\Microsoft.VC80.CRT\Microsoft.VC80.CRT.manifest"; DestDir: "{app}"; Flags: ignoreversion
-Source: "C:\Program Files\Microsoft Visual Studio 8\VC\redist\x86\Microsoft.VC80.CRT\msvcp80.dll"; DestDir: "{app}"; Flags: ignoreversion
-Source: "C:\Program Files\Microsoft Visual Studio 8\VC\redist\x86\Microsoft.VC80.CRT\msvcr80.dll"; DestDir: "{app}"; Flags: ignoreversion
+Source: "C:\Program Files\Microsoft Visual Studio 9.0\VC\redist\x86\Microsoft.VC90.CRT\Microsoft.VC90.CRT.manifest"; DestDir: "{app}"; Flags: ignoreversion
+Source: "C:\Program Files\Microsoft Visual Studio 9.0\VC\redist\x86\Microsoft.VC90.CRT\msvcp90.dll"; DestDir: "{app}"; Flags: ignoreversion
+Source: "C:\Program Files\Microsoft Visual Studio 9.0\VC\redist\x86\Microsoft.VC90.CRT\msvcr90.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "..\win\unicode release\languages\*"; DestDir: "{app}\Languages\"; Flags: ignoreversion recursesubdirs
Source: "..\win\unicode release\modules\*"; DestDir: "{app}\Modules\"; Flags: ignoreversion recursesubdirs skipifsourcedoesntexist
Source: "..\win\unicode release\nyquist\*"; DestDir: "{app}\Nyquist\"; Flags: ignoreversion
Source: "..\win\unicode release\plug-ins\*"; DestDir: "{app}\Plug-Ins\"; Excludes: "analyze.ny, fadein.ny, fadeout.ny, undcbias.ny"; Flags: ignoreversion
-
-
[Icons]
-Name: "{commonprograms}\Audacity 1.3 Beta (Unicode)"; Filename: "{app}\audacity.exe"
-Name: "{userdesktop}\Audacity 1.3 Beta (Unicode)"; Filename: "{app}\audacity.exe"; MinVersion: 4,4; Tasks: desktopicon
+Name: "{commonprograms}\Audacity 1.3 Alpha (Unicode)"; Filename: "{app}\audacity.exe"
+Name: "{userdesktop}\Audacity 1.3 Alpha (Unicode)"; Filename: "{app}\audacity.exe"; MinVersion: 4,4; Tasks: desktopicon
[InstallDelete]
; Get rid of Audacity 1.0.0 stuff that's no longer used.
@@ -105,11 +110,17 @@ Type: files; Name: "{commonprograms}\Audacity\unins000.exe"
Type: dirifempty; Name: "{commonprograms}\Audacity"
[Registry]
-Root: HKCR; Subkey: ".AUP"; ValueType: string; ValueData: "Audacity.Project"; Flags: createvalueifdoesntexist uninsdeletekey; Tasks: associate_aup
-Root: HKCR; Subkey: "Audacity.Project"; ValueType: string; ValueData: "Audacity Project File"; Flags: createvalueifdoesntexist uninsdeletekey; Tasks: associate_aup
-Root: HKCR; Subkey: "Audacity.Project\shell"; ValueType: string; ValueData: ""; Flags: createvalueifdoesntexist uninsdeletekey; Tasks: associate_aup
-Root: HKCR; Subkey: "Audacity.Project\shell\open"; Flags: createvalueifdoesntexist uninsdeletekey; Tasks: associate_aup
-Root: HKCR; Subkey: "Audacity.Project\shell\open\command"; ValueType: string; ValueData: """{app}\audacity.exe"" ""%1"""; Flags: createvalueifdoesntexist uninsdeletekey; Tasks: associate_aup
+; No longer allow user to choose whether to associate AUP file type with Audacity.
+; Leaving this one commented out example of the old way.
+; Root: HKCR; Subkey: ".AUP"; ValueType: string; ValueData: "Audacity.Project"; Flags: createvalueifdoesntexist uninsdeletekey; Tasks: associate_aup
+Root: HKCR; Subkey: ".AUP"; ValueType: string; ValueData: "Audacity.Project"; Flags: createvalueifdoesntexist uninsdeletekey;
+Root: HKCR; Subkey: "Audacity.Project\OpenWithList\audacity.exe"; Flags: createvalueifdoesntexist uninsdeletekey;
+Root: HKCR; Subkey: "Audacity.Project"; ValueType: string; ValueData: "Audacity Project File"; Flags: createvalueifdoesntexist uninsdeletekey;
+Root: HKCR; Subkey: "Audacity.Project\shell"; ValueType: string; ValueData: ""; Flags: createvalueifdoesntexist uninsdeletekey;
+Root: HKCR; Subkey: "Audacity.Project\shell\open"; Flags: createvalueifdoesntexist uninsdeletekey;
+Root: HKCR; Subkey: "Audacity.Project\shell\open\command"; ValueType: string; ValueData: """{app}\audacity.exe"" ""%1"""; Flags: createvalueifdoesntexist uninsdeletekey;
+;The following would allow a following 'help' installer to know where to put the 'help' files.
+;Root: HKCR; Subkey: "Audacity.Project\Path"; ValueType: string; ValueData: {app}; Flags: createvalueifdoesntexist uninsdeletekey;
[Run]
Filename: "{app}\audacity.exe"; Description: "Launch Audacity"; Flags: nowait postinstall skipifsilent
diff --git a/win/compile.txt b/win/compile.txt
index fa55d6d..8c03fd5 100644
--- a/win/compile.txt
+++ b/win/compile.txt
@@ -1,5 +1,5 @@
Compiling Audacity(R) for Microsoft Windows(TM)
-copyright (c) 1999-2008 Audacity Team
+copyright (c) 1999-2009 Audacity Team
Authors:
Asger Ottar Alstrup
@@ -11,25 +11,23 @@ Authors:
Markus Meyer
Shane Mueller
Lynn Allan
+ Martyn Shaw
========================================================================
-This version is currently accurate for Audacity version 1.3.6.
+This version is currently accurate for Audacity version 1.3.8.
If the advice here is inaccurate or incomplete, please
email audacity-devel at lists.sourceforge.net.
See also
"http://audacityteam.org/wiki/index.php?title=Developing_On_Windows".
========================================================================
-Audacity releases are now built with Microsoft Visual C++ 8
-(a.k.a Visual C++ 2005), generically known as "VC8".
+Audacity releases are now built with Microsoft Visual C++ 9
+(a.k.a Visual C++ 2008) generically known as "VC9".
For instructions on compiling Audacity under the Cygwin
UNIX Emulation Layer, see the "Compiling Audacity under
Cygwin" section below. This is not maintained.
-Previous Audacity releases have been built with Visual C++ 6.0,
-with Service Pack 5. This is no longer actively supported.
-
Note that Audacity uses VC++'s multithreaded DLL runtime libraries.
If you have MSVC installed, these are in your PATH, but users to
whom you distribute your builds may not have them, so you may have
@@ -48,7 +46,7 @@ attempting to compile Audacity, or nothing will work!
wxWidgets is available at "http://www.wxwidgets.org/".
-Audacity 1.3.6 requires wxWidgets 2.8.9.
+Audacity 1.3.8 requires wxWidgets 2.8.10.
To build on Windows only, download the wxMSW package
(installer or zip).
@@ -60,31 +58,23 @@ MSVC++ STEP 2: Build wxWidgets
When you have downloaded and installed wxWidgets, you must
build it.
-Audacity previously required different build settings than
-are shipped with the wxWidgets projects, to use the
-multithreaded statically-linked runtime libraries instead
-of the multithreaded DLL runtime libraries.
-We NO LONGER build that way, so this process is
-now much simpler. To build previous versions, refer
-to the corresponding previous version of this file.
-
For wxWidgets' instructions on compilation
(and details about static versus dll linkage), see
-"C:\wxWidgets-2.8.9\docs\msw\install.txt".
+"C:\wxWidgets-2.8.10\docs\msw\install.txt".
Note therein that wx_dll.dsw adds the dependencies to
force the correct build order for DLLs, which wx.dsw
does not. Because of this, wx_dll.dsw doesn't work for
static libraries.
-1. Open "C:\wxWidgets-2.8.9\build\msw\wx_dll.dsw" with
- Visual Studio 2005 (for VC8).
+1. Open "C:\wxWidgets-2.8.10\build\msw\wx_dll.dsw" with
+ Visual Studio 2008 (for VC9).
Make sure to use wx_dll.dsw, not wx.dsw, because wx.dsw
does not have the correct dependencies for the DLL builds.
When you open wx_dll.dsw, Visual Studio will prompt whether
to convert. Click "Yes To All". Next time you open a Visual
Studio session, you can avoid this prompt by opening
- "C\wxWidgets-2.8.9\build\msw\wx_dll.sln" instead of wx_dll.dsw.
+ "C\wxWidgets-2.8.10\build\msw\wx_dll.sln" instead of wx_dll.dsw.
2. If you want to use the accessibility features, we have modified a
@@ -95,9 +85,9 @@ static libraries.
You may want to make backups of the wxWidgets originals of these,
in case you also build without these accessibility features.
- * Copy access.cpp to "C:\wxWidgets-2.8.9\src\msw\ole\".
+ * Copy access.cpp to "C:\wxWidgets-2.8.10\src\msw\ole\".
- * Copy setup.h to "C:\wxWidgets-2.8.9\include\wx\msw\".
+ * Copy setup.h to "C:\wxWidgets-2.8.10\include\wx\msw\".
Audacity releases are built with these accessibility features.
@@ -134,7 +124,7 @@ static libraries.
wxbase28*_odbc*.* dbgrid.
-4. Note the directory "C\wxWidgets-2.8.9\lib\vc_dll". For each
+4. Note the directory "C\wxWidgets-2.8.10\lib\vc_dll". For each
build of WxWidgets you made, you will need from here five DLLs
appropriate to that build to go in the corresponding Audacity
build directory. The DLLs required are noted at "Provide access
@@ -157,9 +147,9 @@ MSVC++ STEP 4: Set wxWidgets location for Audacity
Before you can start the build process, you must update the
project settings to tell Visual C++ where to find wxWidgets.
There are three settings that need changing:
- 1. Include Directory (e.g., "C:\wxWidgets-2.8.9\include")
- 2. Resource Directory (e.g., "C:\wxWidgets-2.8.9\include")
- 3. Library Directory (e.g., "C:\wxWidgets-2.8.9\lib")
+ 1. Include Directory (e.g., "C:\wxWidgets-2.8.10\include")
+ 2. Resource Directory (e.g., "C:\wxWidgets-2.8.10\include")
+ 3. Library Directory (e.g., "C:\wxWidgets-2.8.10\lib")
Fortunately, this is parameterized, using a Windows system
environment variable. There are various ways to set these, so
@@ -168,7 +158,7 @@ environment variable WXWIN, set to the top-level directory
where you installed wxWidgets. For example,
in your "autoexec.bat" file, you might have a line:
- set WXWIN=C:\wxWidgets-2.8.9
+ set WXWIN=C:\wxWidgets-2.8.10
Note that you don't want a trailing backslash on that.
@@ -181,7 +171,7 @@ In the Audacity project file, there are declarations like
$(WXWIN)\include
-that get interpreted as, e.g., "C:\wxWidgets-2.8.9\include".
+that get interpreted as, e.g., "C:\wxWidgets-2.8.10\include".
Once you have set the WXWIN environment variable correctly,
the Audacity project file's declarations will do the rest.
@@ -200,6 +190,12 @@ Run Visual C++ and load the Audacity solution,
Optional Features
+Local help (optional, but required for a full 'release ready' version).
+Build the 'help' project. This will download a copy of the manual wiki
+onto your machine and copy it to the correct place for the build that
+you are doing. If the local copy needs updating at any time, run
+audacity\scripts\mw2html_audacity\wiki2htm.bat and re-run the 'help' project.
+
Some functionality in Audacity is currently turned on its default
configuration, but requires that extra libraries be downloaded
separately to use it.
@@ -244,23 +240,8 @@ If you wish ASIO support, install the ASIO SDK from Steinberg
Developers), then define an environment variable called
ASIOSDK_DIR, as you did for WXWIN, above. The value should be
the full path to the base directory of the ASIO SDK, e.g.,
- set ASIOSDK_DIR=C:\ASIOSDK2
-
-
-PortAudio (http://www.portaudio.com/) is a cross-platform OSS library
-that Audacity uses for recording and playback. The default build
-settings use PortAudio v19, but v18 is still supported. If you want
-to build with v18:
-
- 1) Change the Audacity Project Dependencies to have PAStaticWMME
- checked and PAStaticWMMEv19 unchecked.
- 2) In "audacity\win\portaudio.h", change
- #define USE_PORTAUDIO_V19 1
- to
- #define USE_PORTAUDIO_V19 0
- 3) In the Configuration Manager, for each configuration, check
- PAStaticWMME and uncheck PAStaticWMMEv19.
+ set ASIOSDK_DIR=C:\ASIOSDK2
Build Audacity
@@ -285,7 +266,7 @@ Each Audacity executable needs access to five specific wxWidgets
DLLs from those you built in "MSVC++ STEP 2: Build wxWidgets"
above. You can copy them to your Windows PATH, or more simply,
to the same directory as the executable. The ones required are at
-"C:\wxWidgets-2.8.9\lib\vc_dll":
+"C:\wxWidgets-2.8.10\lib\vc_dll":
wxbase28*_net_vc_custom.dll
wxbase28*_vc_custom.dll
@@ -334,7 +315,7 @@ process you get a bunch of error messages like this:
This is usually caused by conflicting runtime library settings.
Audacity is now linked with DLL linkage.
-In VC8, select the Audacity project. Then
+In VC9, select the Audacity project. Then
Project > Properties > C/C++ > Code Generation > Runtime Library
should be
"Multi-threaded Debug DLL (/MDd)" for Debug or Unicode Debug builds,
@@ -368,21 +349,6 @@ Note that if you have configured all libraries correctly,
none of the above should actually be necessary.
------------------------
-MSVC++ (OPTIONAL) STEP 6: Add VST support
------------------------
-
-Audacity does not support VST plug-ins by default, but
-here is how to enable it.
-
-1. Download and install the current "VST Enabler" from the
- Audacity website, at http://audacityteam.org/vst/.
-
-2. Put the "vst-bridge.dll" file in the Audacity Plug-ins folder.
-
-3. Run Audacity and the plug-ins should appear in the
- Generate, Effect, and/or Analyze menus.
-
========================================================================
-------------------------------
@@ -447,7 +413,7 @@ Cygwin STEP 1: Installing Cygwin
Cygwin STEP 2: Download and install wxWidgets
---------------------------------------
-1. Go to http://www.wxwidgets.org/ and download wxWidgets v2.8.9 or greater. Make
+1. Go to http://www.wxwidgets.org/ and download wxWidgets v2.8.10 or greater. Make
sure you download the "wxAll" package that contains source code for all ports. The
Win32 port will not work for compiling audacity, since it was compiled and installed
to work with MS Visual C++.
diff --git a/win/configwin.h b/win/configwin.h
index e0a27fd..8ff3ce9 100644
--- a/win/configwin.h
+++ b/win/configwin.h
@@ -17,9 +17,8 @@
#define USE_SBSMS 1
#define USE_SOUNDTOUCH 1
#define USE_VAMP 1
-#undef USE_VST
-#define USE_MIDI 1 // define this to use portSMF for midi file support
-//#define EXPERIMENTAL_SCOREALIGN 1
+#define USE_VST 1
+#define USE_MIDI 1 // define this to use portSMF and PortMidi for midi file support
#define INSTALL_PREFIX "."
diff --git a/win/portaudio.h b/win/portaudio.h
deleted file mode 100644
index 531b9b8..0000000
--- a/win/portaudio.h
+++ /dev/null
@@ -1,16 +0,0 @@
-
-// Set to 0 for version 1.8 or 1 for version 1.9
-#define USE_PORTAUDIO_V19 1
-
-// Don't change anything below here
-#if USE_PORTAUDIO_V19
-
-# include "../../../lib-src/portaudio-v19/include/portaudio.h"
-# pragma comment(lib, "portaudio-v19")
-
-#else
-
-# include "../../../lib-src/portaudio/pa_common/portaudio.h"
-# pragma comment(lib, "portaudio")
-
-#endif
diff --git a/win/release.txt b/win/release.txt
index 607c3c6..bfb6ba0 100644
--- a/win/release.txt
+++ b/win/release.txt
@@ -1,9 +1,9 @@
How to Build Audacity(R) Releases for Microsoft Windows(R)
-Vaughan Johnson
+Copyright 2007-2009, Vaughan Johnson
22 October 2007
========================================================================
-This version is currently accurate for Audacity version 1.3.4.
+This version is currently accurate for Audacity version 1.3.8.
If the advice here is inaccurate or incomplete, please
email audacity-devel at lists.sourceforge.net.
See also "http://audacityteam.org/wiki/index.php?title=Developing_On_Windows".
@@ -25,11 +25,14 @@ either one, but example values are for Unicode_Release.
We cannot publicly post a build that supports ASIO, for
licensing reasons (more detail in compile.txt).
- c. It's a good idea to not only do a Build > Clean Solution
+ c. If building the 'Release' build (rather than a Beta), set IS_BETA to 0
+ in Audacity.h.
+
+ d. It's a good idea to not only do a Build > Clean Solution
beforehand, but to also delete the directory
(e.g., audacity\win\unicode_release).
- d. Make sure to build the "locale" project, either
+ e. Make sure to build the "locale" project, either
separately or as part of Build > Batch Build. You will need
msgfmt.zip in your PATH for that. Get it from
http://audacity.sourceforge.net/files/msgfmt.zip
@@ -37,11 +40,7 @@ either one, but example values are for Unicode_Release.
2. Copy other necessities to release build folder.
- a. Copy the audacity\nyquist and audacity\plug-ins folders to
- the build folder, e.g., audacity\win\unicode_release.
- Don't copy the hidden CVS subfolders.
-
- b. We are still keeping some of the LADSPA plug-ins in the
+ a. We are still keeping some of the LADSPA plug-ins in the
Audacity installer, even though we are now offering a
separate installer that includes all the LADSPA plug-ins
built from version 0.4.15. These are the ones we include
@@ -58,12 +57,19 @@ either one, but example values are for Unicode_Release.
Once you have these DLL files, put them in the plug-ins
folder, e.g., audacity\win\unicode_release\plug-ins.
-
- <Not including Help file for 1.3.4, so no instructions
- for that.>
+ b. Copy the audacity\LICENSE.txt and audacity\README.txt files
+ to the build folder.
+
+3. Get the manual
+
+ Make sure you have python installed and on your path.
+ Delete audacity\help\manual if it exists.
+ Go to audacity\scripts\mw2html_audacity.
+ Run wiki2htm and wait for it to complete.
+ The manual should have been built in audacity\help\manual.
-3. Build the Installer.
+4. Build the Installer.
a. Install the latest Inno Setup
(http://www.jrsoftware.org/isinfo.php).
@@ -75,13 +81,13 @@ either one, but example values are for Unicode_Release.
c. Change the version strings as necessary.
These are current for Unicode_Release:
- * OutputBaseFilename=audacity-win-unicode-1.3.4
+ * OutputBaseFilename=audacity-1.3.8-win-unicode
* AppName=Audacity 1.3 Beta (Unicode)
For stable releases, this should just be
"Audacity (Unicode)"
- * AppVerName=Audacity 1.3.4 (Unicode)
+ * AppVerName=Audacity 1.3.8 (Unicode)
* DefaultDirName={pf}\Audacity 1.3 Beta (Unicode)
For stable releases, this should just be
@@ -91,10 +97,10 @@ either one, but example values are for Unicode_Release.
The result appears in audacity\win\Output.
e. Rename it as necessary, e.g.,
- "audacity-win-unicode-1.3.4rc0.1.exe".
+ "audacity-1.3.8rc0.1-win-unicode.exe".
-4. To create the zip version, go to the installed version,
+5. To create the zip version, go to the installed version,
e.g., "C:\Program Files\Audacity 1.3 Beta (Unicode)",
and remove the unins*.* files, then zip and rename that folder.
diff --git a/win/sandbox.txt b/win/sandbox.txt
index 0a5b844..ffb3b3a 100644
--- a/win/sandbox.txt
+++ b/win/sandbox.txt
@@ -1,6 +1,6 @@
sandbox.txt
-Instructions for comiling audacity with Visual C++ 8.0 are contained in the file:
+Instructions for compiling audacity with Visual C++ 8.0 are contained in the file:
[install-dir]\win\compile.txt
There are wiki pages with more information at:
diff --git a/win/wxWidgets_additions/setup.h b/win/wxWidgets_additions/setup.h
index 829fb74..63c34ab 100644
--- a/win/wxWidgets_additions/setup.h
+++ b/win/wxWidgets_additions/setup.h
@@ -1,10 +1,10 @@
/////////////////////////////////////////////////////////////////////////////
-// Name: wx/msw/setup.h
+// Name: include/wx/msw/setup.h
// Purpose: Configuration for the library
// Author: Julian Smart
// Modified by:
// Created: 01/02/97
-// RCS-ID: $Id: setup.h,v 1.2 2008/06/09 07:12:18 vjohnson Exp $
+// RCS-ID: $Id: setup.h,v 1.3 2009/07/06 02:42:42 windinthew Exp $
// Copyright: (c) Julian Smart
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
--
Audacity debian packaging
More information about the pkg-multimedia-commits
mailing list